From 9e709d5cb7e587d52c8ee0e51d76cdbd5363da29 Mon Sep 17 00:00:00 2001 From: Nikolay Bryskin Date: Sat, 11 Mar 2023 20:31:53 +0200 Subject: [PATCH] chore: next patch for Twitter Bot + huge refactoring for vcr and tests --- config-test.yaml | 14 +- donate4fun/api.py | 8 +- donate4fun/api_donation.py | 4 +- donate4fun/api_twitter.py | 54 +- donate4fun/db_models.py | 5 +- donate4fun/db_other.py | 25 +- donate4fun/db_twitter.py | 27 +- donate4fun/donation.py | 13 +- donate4fun/jobs.py | 7 +- donate4fun/lnd.py | 155 +- donate4fun/models.py | 52 +- donate4fun/pubsub.py | 2 +- donate4fun/social.py | 3 + donate4fun/twitter.py | 395 +- donate4fun/twitter_bot.py | 249 +- donate4fun/twitter_cli.py | 36 + donate4fun/twitter_models.py | 79 + donate4fun/twitter_provider.py | 12 +- poetry.lock | 3320 +- pyproject.toml | 6 + tests/autofixtures/donate_twitter_author.yaml | 1 + tests/autofixtures/donate_twitter_tweet.yaml | 1 + .../autofixtures/donate_youtube_channel.yaml | 1 + tests/autofixtures/donate_youtube_video.yaml | 1 + .../donate_youtube_video_on_website.yaml | 1 + tests/autofixtures/donation-invoice.yaml | 2 + .../donator-donations-received.yaml | 1 + .../autofixtures/donator-donations-sent.yaml | 1 + tests/autofixtures/donator-donations.yaml | 1 + tests/autofixtures/get-donation.yaml | 1 + tests/autofixtures/latest-donations.yaml | 1 + ...h-flow-github-login-via-oauth-relogin.code | 1 - .../oauth-flow-github-login-via-oauth.code | 1 - ...-flow-twitter-login-via-oauth-relogin.code | 1 - .../oauth-flow-twitter-login-via-oauth.code | 1 - tests/autofixtures/query-donations.yaml | 3 +- .../twitter-login-via-oauth1-relogin.code | 1 - .../twitter-login-via-oauth1.code | 1 - tests/autofixtures/twitter_oauth_tokens.yaml | 29 + .../test_api/test_donation_invoice_api.yaml | 129 + .../test_login_via_oauth[-donator-me].yaml | 114 +- .../test_twitter/test_donate_author.yaml | 37 +- ...to_lightning_address[sondreb@ln.tips].yaml | 32 +- .../test_twitter/test_donate_tweet.yaml | 25 +- .../test_twitter/test_donate_via_mention.yaml | 1590 + ...test_handle_twitter_mention[100-None].yaml | 257 +- .../test_handle_twitter_mention[200-100].yaml | 263 +- .../test_handle_twitter_mention[300-400].yaml | 152 +- .../test_twitter/test_login_via_oauth1.yaml | 260 +- .../test_login_via_oauth[-donator-me].yaml | 188 +- ...ery_or_fetch_twitter_account[params0].yaml | 37 +- ...ery_or_fetch_twitter_account[params1].yaml | 28 +- ...ery_or_fetch_twitter_account[params2].yaml | 24 +- .../test_refetch_twitter_authors[None].yaml | 3514 +- ...tch_twitter_authors[last_fetched_at1].yaml | 36 +- .../test_web/test_donate_redirect.yaml | 12104 +- .../test_youtube/test_cancel_donation.yaml | 23406 +- .../test_cancel_donation_fail.yaml | 23597 +- tests/cassettes/test_youtube/test_donate.yaml | 24076 +- .../test_donate_from_balance.yaml | 22995 +- .../test_youtube/test_donate_full.yaml | 24558 +- .../test_youtube/test_donate_video.yaml | 23458 +- ...y_or_fetch_youtube_video[VOG-fFhq7kk].yaml | 23948 +- ...y_or_fetch_youtube_video[tOu3f-j4ukY].yaml | 23351 +- .../test_refetch_youtube_channels[None].yaml | 11754 +- ...ch_youtube_channels[last_fetched_at1].yaml | 295257 +-------------- tests/fixtures.py | 114 +- tests/test_api.py | 26 +- tests/test_github.py | 6 +- tests/test_twitter.py | 160 +- tests/test_util.py | 177 +- tests/test_web.py | 1 + tests/test_youtube.py | 8 +- 73 files changed, 117658 insertions(+), 402540 deletions(-) create mode 100644 donate4fun/twitter_cli.py create mode 100644 donate4fun/twitter_models.py create mode 100644 tests/autofixtures/donation-invoice.yaml delete mode 100644 tests/autofixtures/oauth-flow-github-login-via-oauth-relogin.code delete mode 100644 tests/autofixtures/oauth-flow-github-login-via-oauth.code delete mode 100644 tests/autofixtures/oauth-flow-twitter-login-via-oauth-relogin.code delete mode 100644 tests/autofixtures/oauth-flow-twitter-login-via-oauth.code delete mode 100644 tests/autofixtures/twitter-login-via-oauth1-relogin.code delete mode 100644 tests/autofixtures/twitter-login-via-oauth1.code create mode 100644 tests/autofixtures/twitter_oauth_tokens.yaml create mode 100644 tests/cassettes/test_api/test_donation_invoice_api.yaml create mode 100644 tests/cassettes/test_twitter/test_donate_via_mention.yaml diff --git a/config-test.yaml b/config-test.yaml index 96a564a7..dd296b79 100644 --- a/config-test.yaml +++ b/config-test.yaml @@ -15,10 +15,16 @@ twitter: greeting: "" mentions_bot: enabled: false - oauth: null + oauth: + consumer_key: JqyhuOUhGJNO4GLeb3t3PcySP + consumer_secret: secret + # @bryskin2 + client_id: MWlyTVlGbUdXRkY2Q09ncGxkbzc6MTpjaQ + client_secret: secret linking_oauth: + # @bryskin2 bearer_token: bearer_token - client_id: client_id + client_id: MWlyTVlGbUdXRkY2Q09ncGxkbzc6MTpjaQ client_secret: client_secret consumer_key: consumer_key consumer_secret: consumer_secret @@ -36,7 +42,7 @@ lnd: macaroon_by_path: polar/volumes/lnd/alice/data/chain/bitcoin/regtest/admin.macaroon lnurl_base_url: http://localhost:5173 github: - client_id: xxx + client_id: Iv1.47885cc7f2eb65ae client_secret: yyy db: url: postgresql+asyncpg://donate4fun@localhost/donate4fun @@ -101,7 +107,7 @@ log: asgi_testclient: level: DEBUG vcr: - level: WARNING + level: DEBUG sqlalchemy.engine.Engine: level: WARNING sqlalchemy.pool: diff --git a/donate4fun/api.py b/donate4fun/api.py index b69e6c85..4b9c9570 100644 --- a/donate4fun/api.py +++ b/donate4fun/api.py @@ -18,9 +18,9 @@ from jwt import InvalidTokenError from .models import ( - Donation, Donator, Invoice, SocialAccount, + Donation, Donator, SocialAccount, WithdrawalToken, BaseModel, Notification, Credentials, SubscribeEmailRequest, - DonatorStats, PayInvoiceResult, Donatee, OAuthState, Toast, SocialProviderId, + DonatorStats, Donatee, OAuthState, Toast, SocialProviderId, ) from .types import ValidationError, PaymentRequest, OAuthError, LnurlpError, AccountAlreadyLinked from .core import to_base64 @@ -32,7 +32,9 @@ get_donator, load_donator, get_db_session, task_group, only_me, make_redirect, get_donations_db, sha256hash, oauth_success_messages, signin_success_message, ) -from .lnd import PayInvoiceError, LnurlWithdrawResponse, lnd, lightning_payment_metadata, LndIsNotReady +from .lnd import ( + Invoice, PayInvoiceResult, PayInvoiceError, LnurlWithdrawResponse, lnd, lightning_payment_metadata, LndIsNotReady, +) from .pubsub import pubsub from . import api_twitter, api_youtube, api_github, api_social, api_donation diff --git a/donate4fun/api_donation.py b/donate4fun/api_donation.py index 015d7088..e3cc5dbf 100644 --- a/donate4fun/api_donation.py +++ b/donate4fun/api_donation.py @@ -9,7 +9,7 @@ from sqlalchemy import select from .models import ( - Donation, Donator, Invoice, DonateResponse, DonateRequest, DonationPaidRequest, RequestHash + Donation, Donator, DonateResponse, DonateRequest, DonationPaidRequest, RequestHash ) from .types import ValidationError from .social import SocialProviderId, SocialProvider @@ -20,7 +20,7 @@ from .db_donations import sent_donations_subquery, received_donations_subquery from .db_models import DonationDb from .db_social import SocialDbWrapper -from .lnd import lnd +from .lnd import lnd, Invoice from .settings import settings from .donation import donate, make_memo diff --git a/donate4fun/api_twitter.py b/donate4fun/api_twitter.py index ca16fced..8b10d584 100644 --- a/donate4fun/api_twitter.py +++ b/donate4fun/api_twitter.py @@ -8,8 +8,9 @@ from .models import TwitterAccount, Donator, TwitterAccountOwned, OAuthState, OAuthResponse, Toast from .types import ValidationError, OAuthError, AccountAlreadyLinked, Satoshi from .api_utils import get_donator, make_absolute_uri, make_redirect, signin_success_message, oauth_success_messages -from .twitter import make_oauth1_client, make_oauth2_client, TwitterApiClient +from .twitter import TwitterApiClient from .twitter_bot import make_prove_message +from .twitter_models import OAuth1Token from .core import app from .db_twitter import TwitterDbLib from .db import db @@ -26,13 +27,13 @@ async def twitter_ownership_message(me=Depends(get_donator)): @router.get('/oauth1', response_model=OAuthResponse) async def login_via_twitter_oauth1(request: Request, donator=Depends(get_donator)): - oauth1_ctx = make_oauth1_client( + oauth1_ctx = TwitterApiClient.create_oauth1( oauth=settings.twitter.linking_oauth, redirect_uri=make_absolute_uri(request.url_for('oauth1_callback')), ) async with oauth1_ctx as client: - await client.fetch_request_token('https://api.twitter.com/oauth/request_token') - auth_url: str = client.create_authorization_url('https://api.twitter.com/oauth/authorize') + await client.client.fetch_request_token('https://api.twitter.com/oauth/request_token') + auth_url: str = client.client.create_authorization_url('https://api.twitter.com/oauth/authorize') return OAuthResponse(url=auth_url) @@ -46,22 +47,22 @@ async def oauth1_callback( raise ValidationError("oauth_token and oauth_verifier parameters must be present") try: token = dict(oauth_token=oauth_token, oauth_verifier=oauth_verifier) - async with make_oauth1_client(oauth=settings.twitter.linking_oauth, token=token) as client: - token: dict = await client.fetch_access_token('https://api.twitter.com/oauth/access_token', verifier=oauth_verifier) - client.token = token - try: + logger.debug("authorizing using oauth1. token: %s", token) + token: OAuth1Token = await TwitterApiClient.fetch_access_token(oauth_token=oauth_token, oauth_verifier=oauth_verifier) + try: + async with TwitterApiClient.create_oauth1(oauth=settings.twitter.linking_oauth, token=token) as client: transferred_amount, linked_account = await login_or_link_twitter_account(client, donator) - except AccountAlreadyLinked as exc: - if not donator.connected: - linked_account = exc.args[0] - request.session['donator'] = str(linked_account.owner_id) - request.session['connected'] = True - return make_redirect('donator/me', [signin_success_message(linked_account)]) - else: - raise OAuthError("Could not link an already linked account") from exc - else: + except AccountAlreadyLinked as exc: + if not donator.connected: + linked_account = exc.args[0] + request.session['donator'] = str(linked_account.owner_id) request.session['connected'] = True - return make_redirect('donator/me', oauth_success_messages(linked_account, transferred_amount)) + return make_redirect('donator/me', [signin_success_message(linked_account)]) + else: + raise OAuthError("Could not link an already linked account") from exc + else: + request.session['connected'] = True + return make_redirect('donator/me', oauth_success_messages(linked_account, transferred_amount)) except OAuthError as exc: logger.exception("OAuth error") return make_redirect('settings', [Toast("error", exc.args[0], exc.__cause__)]) @@ -81,26 +82,22 @@ async def login_via_twitter(request: Request, return_to: str, expected_account: if len(encrypted_state) > 500: raise ValidationError(f"State is too long for Twitter: {len(encrypted_state)} chars") async with make_link_oauth2_client() as client: - url, state = client.create_authorization_url( - url='https://twitter.com/i/oauth2/authorize', code_verifier=code_verifier, - state=encrypted_state, - ) + url = client.create_authorization_url(code_verifier=code_verifier, state=encrypted_state) return OAuthResponse(url=url) async def finish_twitter_oauth(code: str, donator: Donator, code_verifier: str) -> tuple[Satoshi, TwitterAccountOwned]: async with make_link_oauth2_client() as client: try: - token: dict = await client.fetch_token(code=code, code_verifier=code_verifier) + await client.fetch_token(code=code, code_verifier=code_verifier) except Exception as exc: raise OAuthError("Failed to fetch OAuth token") from exc - client.token = token return await login_or_link_twitter_account(client, donator) -async def login_or_link_twitter_account(client, donator: Donator) -> tuple[Satoshi, TwitterAccountOwned]: +async def login_or_link_twitter_account(client: TwitterApiClient, donator: Donator) -> tuple[Satoshi, TwitterAccountOwned]: try: - account: TwitterAccount = await TwitterApiClient(client).get_me() + account: TwitterAccount = await client.get_me() except Exception as exc: raise OAuthError("Failed to fetch user's account") from exc @@ -118,13 +115,12 @@ async def login_or_link_twitter_account(client, donator: Donator) -> tuple[Satos raise AccountAlreadyLinked(owned_account) -def make_link_oauth2_client(token=None): +def make_link_oauth2_client(): """ This client is used to link Twitter account to donator (OAuth2 flow) """ - return make_oauth2_client( + return TwitterApiClient.create_oauth2( settings.twitter.linking_oauth, scope='tweet.read users.read', - token=token, redirect_uri=make_absolute_uri(app.url_path_for('oauth_redirect', provider='twitter')), ) diff --git a/donate4fun/db_models.py b/donate4fun/db_models.py index e3c3923d..a8ef24fd 100644 --- a/donate4fun/db_models.py +++ b/donate4fun/db_models.py @@ -155,6 +155,7 @@ class DonationDb(Base): cancelled_at = Column(TIMESTAMP) claimed_at = Column(TIMESTAMP) + # FIXME: split this table to multiple tables one for each social provider receiver_id = Column(Uuid(as_uuid=True), ForeignKey(DonatorDb.id)) receiver = relationship(DonatorDb, lazy='joined', foreign_keys=[receiver_id]) @@ -168,7 +169,9 @@ class DonationDb(Base): twitter_account = relationship(TwitterAuthorDb, lazy='joined', foreign_keys=[twitter_account_id]) twitter_tweet_id = Column(Uuid(as_uuid=True), ForeignKey(TwitterTweetDb.id)) - twitter_tweet = relationship(TwitterTweetDb, lazy='joined') + twitter_tweet = relationship(TwitterTweetDb, lazy='joined', foreign_keys=[twitter_tweet_id]) + + twitter_invoice_tweet_id = Column(BigInteger) github_user_id = Column(Uuid(as_uuid=True), ForeignKey(GithubUserDb.id)) github_user = relationship(GithubUserDb, lazy='joined') diff --git a/donate4fun/db_other.py b/donate4fun/db_other.py index a6f1c6e2..0201ef3a 100644 --- a/donate4fun/db_other.py +++ b/donate4fun/db_other.py @@ -1,4 +1,5 @@ from datetime import datetime +from typing import Any from uuid import UUID from sqlalchemy import select, desc, union, literal_column @@ -6,12 +7,12 @@ from .models import Donatee from .db import DbSessionWrapper -from .db_models import EmailNotificationDb -from .db_libs import YoutubeDbLib, TwitterDbLib, GithubDbLib +from .db_models import EmailNotificationDb, OAuthTokenDb class OtherDbLib(DbSessionWrapper): def donatees_subquery(self): + from .db_libs import YoutubeDbLib, TwitterDbLib, GithubDbLib return union(*[ select( db_lib.db_model.id, @@ -53,3 +54,23 @@ async def save_email(self, email: str) -> UUID | None: .returning(EmailNotificationDb.id) ) return resp.scalar() + + +class OAuthDbLib(DbSessionWrapper): + async def query_oauth_token(self, name: str) -> dict[str, Any]: + result = await self.execute( + select(OAuthTokenDb.token) + .where(OAuthTokenDb.name == name) + ) + return result.scalars().one() + + async def save_oauth_token(self, name: str, token: dict[str, Any]): + await self.execute( + insert(OAuthTokenDb) + .values(name=name, token=token) + .on_conflict_do_update( + index_elements=[OAuthTokenDb.name], + set_=dict(token=token), + where=OAuthTokenDb.name == name, + ) + ) diff --git a/donate4fun/db_twitter.py b/donate4fun/db_twitter.py index 84cd299e..ea338ced 100644 --- a/donate4fun/db_twitter.py +++ b/donate4fun/db_twitter.py @@ -1,12 +1,12 @@ -from typing import Any from uuid import UUID -from sqlalchemy import select +from sqlalchemy import select, update from sqlalchemy.dialects.postgresql import insert -from .models import TwitterAccount, TwitterTweet, TwitterAccountOwned -from .db_models import TwitterAuthorDb, TwitterTweetDb, OAuthTokenDb, TwitterAuthorLink +from .models import TwitterAccount, TwitterTweet, TwitterAccountOwned, Donation +from .db_models import TwitterAuthorDb, TwitterTweetDb, TwitterAuthorLink, DonationDb from .db_social import SocialDbWrapper +from .twitter_models import Tweet class TwitterDbLib(SocialDbWrapper): @@ -35,20 +35,9 @@ async def get_or_create_tweet(self, tweet: TwitterTweet) -> TwitterAuthorDb: id_ = resp.scalar() tweet.id = id_ - async def query_oauth_token(self, name: str) -> dict[str, Any]: - result = await self.execute( - select(OAuthTokenDb.token) - .where(OAuthTokenDb.name == name) - ) - return result.scalars().one() - - async def save_oauth_token(self, name: str, token: dict[str, Any]): + async def add_invoice_tweet_to_donation(self, donation: Donation, tweet: Tweet): await self.execute( - insert(OAuthTokenDb) - .values(name=name, token=token) - .on_conflict_do_update( - index_elements=[OAuthTokenDb.name], - set_=dict(token=token), - where=OAuthTokenDb.name == name, - ) + update(DonationDb) + .values(twitter_invoice_tweet_id=tweet.id) + .where(DonationDb.id == donation.id) ) diff --git a/donate4fun/donation.py b/donate4fun/donation.py index b86ae9d3..e947886c 100644 --- a/donate4fun/donation.py +++ b/donate4fun/donation.py @@ -4,16 +4,23 @@ import httpx from lnpayencode import LnAddr -from .models import Donation, PaymentRequest, Invoice, PayInvoiceResult +from .models import Donation, PaymentRequest from .db import DbSession from .db_donations import DonationsDbLib from .types import LnurlpError, RequestHash, Satoshi from .api_utils import load_donator, auto_transfer_donations, track_donation, HttpClient, sha256hash - -from .lnd import lnd +from .lnd import lnd, Invoice, PayInvoiceResult async def donate(donation: Donation, db_session: DbSession, expiry: int = None) -> (PaymentRequest, Donation): + """ + Takes pre-filled Donation object and do one of the following: + - if receiver is a Donate4.Fun account and sender has enough balance then just transfers money without lightning + - if receievr has a lightning address and sender has enough money then pays from balance to a lightning address + - if receiver has no lightning address (just a social account) then transfers money from sender balance + or create a payment request to send money from a lightning wallet + In the end money from social accounts are automatically transferred to linked Donate4.Fun account if they exist. + """ donator = await load_donator(db_session, donation.donator.id) # If donator has enough money (and not fulfilling his own balance) - try to pay donation instantly use_balance = ( diff --git a/donate4fun/jobs.py b/donate4fun/jobs.py index 025152e8..13b42661 100644 --- a/donate4fun/jobs.py +++ b/donate4fun/jobs.py @@ -7,7 +7,7 @@ from .db_models import TwitterAuthorDb, YoutubeChannelDb from .db_libs import TwitterDbLib, YoutubeDbLib from .settings import settings -from .twitter import TwitterApiClient, make_apponly_client +from .twitter import TwitterApiClient from .youtube import fetch_youtube_channel from .api_utils import register_app_command @@ -22,11 +22,10 @@ async def refetch_twitter_authors(): | TwitterAuthorDb.last_fetched_at.is_(None) ) logger.info("refetching %d authors", len(accounts)) - async with make_apponly_client(token=settings.twitter.linking_oauth.bearer_token) as client: - api = TwitterApiClient(client) + async with TwitterApiClient.create_apponly(token=settings.twitter.linking_oauth.bearer_token) as client: for account in accounts: try: - account: TwitterAccount = await api.get_user_by(user_id=account.user_id) + account: TwitterAccount = await client.get_user_by(user_id=account.user_id) except Exception: logger.exception("Failed to fetch twitter account %s", account) else: diff --git a/donate4fun/lnd.py b/donate4fun/lnd.py index 10e98a51..d464ca95 100644 --- a/donate4fun/lnd.py +++ b/donate4fun/lnd.py @@ -4,27 +4,29 @@ import json import logging import math +from datetime import datetime from functools import cached_property from typing import Literal from contextlib import asynccontextmanager +from collections.abc import AsyncIterator +from typing import Any import httpx from lnpayencode import LnAddr from lnurl.helpers import _lnurl_decode from lnurl.models import LnurlResponseModel from lnurl.types import MilliSatoshi -from pydantic import Field, AnyUrl +from pydantic import Field, AnyUrl, BaseModel +from pydantic.datetime_parse import parse_datetime from .settings import LndSettings, settings from .types import RequestHash, PaymentRequest -from .models import Invoice, Donator, PayInvoiceResult, Donation, SocialAccount +from .models import Donator, Donation, SocialAccount from .core import as_task, ContextualObject, from_base64, to_base64 from .api_utils import track_donation, auto_transfer_donations, register_app_command from .db_donations import DonationsDbLib logger = logging.getLogger(__name__) - - State = str @@ -36,6 +38,44 @@ class LndIsNotReady(Exception): pass +class NaiveDatetime(datetime): + @classmethod + def __get_validators__(cls): + yield cls.validate + + @classmethod + def validate(cls, v: Any) -> str: + return parse_datetime(int(v)).replace(tzinfo=None) + + +class Invoice(BaseModel): + """ + This model is replica of lnd's Invoice message + https://github.com/lightningnetwork/lnd/blob/master/lnrpc/lightning.proto#L3314 + """ + r_hash: RequestHash + payment_request: PaymentRequest + value: int | None + memo: str | None + settle_date: NaiveDatetime | None + amt_paid_sat: int | None + state: str | None + + +class PayInvoiceResult(BaseModel): + creation_date: NaiveDatetime + fee: float + fee_msat: int + fee_sat: float + payment_hash: RequestHash + payment_preimage: RequestHash + status: str + failure_reason: str + value: float + value_msat: int + value_sat: float + + class LnurlWithdrawResponse(LnurlResponseModel): """ Override default lnurl model to allow http:// callback urls @@ -97,32 +137,37 @@ async def request(self, api: str, method: str, **kwargs): resp.raise_for_status() yield resp - async def subscribe(self, api: str, **request: dict): - # WORKAROUND: This should be after the request but - # lnd does not return headers until the first event, so it deadlocks + @asynccontextmanager + async def subscribe_to_invoices(self): + async with self.subscribe('/v1/invoices/subscribe') as subscription: + yield self.generate_invoices(subscription) + + @asynccontextmanager + async def subscribe_to_invoice(self, r_hash: RequestHash): + async with self.subscribe(f'/v2/invoices/subscribe/{r_hash.as_base64}') as subscription: + yield self.generate_invoices(subscription) + + @asynccontextmanager + async def subscribe(self, api: str, **request: dict) -> AsyncIterator[AsyncIterator[Invoice]]: logger.trace("subscribe %s %s", api, request) + # FIXME: instead of this we should wait for a connection to be established, but httpx has no such event + await self.check_ready() + yield self.generate_events(api, request) - @as_task - @asynccontextmanager - async def request_impl(queue): - # FIXME: instead of this we should wait for a connection to be established, but httpx has no such event - await self.query_info() - yield - async with self.request(api, method='GET', json=request, timeout=None) as resp: - async for line in resp.aiter_lines(): - logger.trace("subscribe line %s", line) - await queue.put(json.loads(line)) - - queue = asyncio.Queue() - async with request_impl(queue): - # FIXME: instead of this we should wait for a connection to be established, but httpx has no such event - await asyncio.sleep(0.2) - yield - while result := await queue.get(): - yield result + async def generate_events(self, api: str, request: dict) -> AsyncIterator[Invoice]: + # WORKAROUND: self.request(...) should be called inside subscribe() but + # lnd does not return headers until the first event, so it deadlocks + async with self.request(api, method='GET', json=request, timeout=None) as resp: + async for line in resp.aiter_lines(): + logger.trace("subscribe line %s", line) + yield json.loads(line) + + async def generate_invoices(self, event_generator): + async for event in event_generator: + yield Invoice(**event['result']) async def create_invoice(self, expiry: int = None, **kwargs) -> Invoice: - await self.ensure_ready() + await self.check_ready() resp = await self.query( 'POST', '/v1/invoices', @@ -151,7 +196,7 @@ async def cancel_invoice(self, r_hash: RequestHash): await self.query("POST", "/v2/invoices/cancel", data=dict(payment_hash=r_hash.as_base64)) async def pay_invoice(self, payment_request: PaymentRequest) -> PayInvoiceResult: - await self.ensure_ready() + await self.check_ready() try: decoded: LnAddr = payment_request.decode() logger.debug(f"Sending payment to {decoded}") @@ -180,11 +225,15 @@ async def query_state(self) -> State: async def query_info(self) -> dict: return await self.query('GET', '/v1/getinfo') - async def ensure_ready(self): - info: dict = await self.query_info() - is_ready = info['synced_to_chain'] is True and info['synced_to_graph'] is True and info['num_active_channels'] > 0 - if not is_ready: - raise LndIsNotReady(info) + async def check_ready(self): + try: + info: dict = await self.query_info() + except httpx.HTTPStatusError as exc: + raise LndIsNotReady(str(exc)) from exc + else: + is_ready = info['synced_to_chain'] is True and info['synced_to_graph'] is True and info['num_active_channels'] > 0 + if not is_ready: + raise LndIsNotReady(info) lnd = ContextualObject('lnd') @@ -207,28 +256,26 @@ async def monitor_invoices_step(lnd_client, db): logger.debug("Start monitoring invoices") # FIXME: monitor only invoices created by this web worker to avoid conflicts between workers try: - async for data in lnd_client.subscribe("/v1/invoices/subscribe"): - if data is None: - logger.debug("Connected to LND") - yield - continue - logger.debug("monitor_invoices %s", data) - invoice: Invoice = Invoice(**data['result']) - if invoice.state == 'SETTLED': - logger.debug(f"donation paid {data}") - try: - async with db.session() as db_session: - donations_db = DonationsDbLib(db_session) - donation: Donation = await donations_db.lock_donation(r_hash=invoice.r_hash) - await donations_db.donation_paid( - donation_id=donation.id, - paid_at=invoice.settle_date, - amount=invoice.amt_paid_sat, - ) - track_donation(donation) - await auto_transfer_donations(db_session, donation) - except Exception: - logger.exception("Error while handling donation notification from lnd") + async with lnd_client.subscribe_to_invoices() as subscription: + logger.debug("Connected to LND") + yield + async for invoice in subscription: + logger.trace("monitor_invoices %s", invoice) + if invoice.state == 'SETTLED': + logger.debug("donation paid %s", invoice) + try: + async with db.session() as db_session: + donations_db = DonationsDbLib(db_session) + donation: Donation = await donations_db.lock_donation(r_hash=invoice.r_hash) + await donations_db.donation_paid( + donation_id=donation.id, + paid_at=invoice.settle_date, + amount=invoice.amt_paid_sat, + ) + track_donation(donation) + await auto_transfer_donations(db_session, donation) + except Exception: + logger.exception("Error while handling donation notification from lnd") finally: logger.debug("Stopped monitoring invoices") diff --git a/donate4fun/models.py b/donate4fun/models.py index dcbc2e9b..713fbc71 100644 --- a/donate4fun/models.py +++ b/donate4fun/models.py @@ -4,12 +4,11 @@ from enum import Enum from uuid import uuid4, UUID from datetime import datetime -from typing import Any +from typing import Any, TypeVar, Type from functools import lru_cache import jwt from pydantic import BaseModel as PydanticBaseModel, validator, HttpUrl, Field, root_validator, EmailStr, AnyUrl -from pydantic.datetime_parse import parse_datetime from funkybob import UniqueRandomNameGenerator from multiavatar.multiavatar import multiavatar from jwskate import Jwk, Jwt @@ -19,6 +18,10 @@ from .settings import settings from .core import to_datauri, from_base64, to_base64 from .types import Url, RequestHash, PaymentRequest, LightningAddress +from .twitter_models import TweetId + + +Model = TypeVar('Model', bound='BaseModel') class BaseModel(PydanticBaseModel): @@ -39,10 +42,14 @@ def to_jwt(self) -> str: return jwt.encode(self.to_jwt_payload(), settings.jwt_secret, algorithm="HS256") @classmethod - def from_jwt(cls, token: str) -> BaseModel: + def from_jwt(cls: Type[Model], token: str) -> Model: data: dict = jwt.decode(token, settings.jwt_secret, algorithms=["HS256"]) return cls(**data) + @classmethod + def from_json(cls: Type[Model], data: str) -> Model: + return cls(**json.loads(data)) + def to_encrypted_jwt(self) -> str: """ Difference with to_jwe: @@ -112,44 +119,6 @@ class DonateRequest(BaseModel): message: str | None -class NaiveDatetime(datetime): - @classmethod - def __get_validators__(cls): - yield cls.validate - - @classmethod - def validate(cls, v: Any) -> str: - return parse_datetime(int(v)).replace(tzinfo=None) - - -class Invoice(BaseModel): - """ - This model is replica of lnd's Invoice message - https://github.com/lightningnetwork/lnd/blob/master/lnrpc/lightning.proto#L3314 - """ - r_hash: RequestHash - payment_request: PaymentRequest - value: int | None - memo: str | None - settle_date: NaiveDatetime | None - amt_paid_sat: int | None - state: str | None - - -class PayInvoiceResult(BaseModel): - creation_date: NaiveDatetime - fee: float - fee_msat: int - fee_sat: float - payment_hash: RequestHash - payment_preimage: RequestHash - status: str - failure_reason: str - value: float - value_msat: int - value_sat: float - - class IdModel(BaseModel): id: UUID = Field(default_factory=uuid4) @@ -332,6 +301,7 @@ class Donation(IdModel): youtube_video: YoutubeVideo | None twitter_account: TwitterAccount | None twitter_tweet: TwitterTweet | None + twitter_invoice_tweet_id: TweetId | None github_user: GithubUser | None lightning_address: LightningAddress | None diff --git a/donate4fun/pubsub.py b/donate4fun/pubsub.py index bbfa4eac..f18e06a4 100644 --- a/donate4fun/pubsub.py +++ b/donate4fun/pubsub.py @@ -31,7 +31,7 @@ def __str__(self): return f'{type(self).__name__}<{hex(id(self))}>' @asynccontextmanager - async def subscribe(self, channel: str, callback: Callable): + async def subscribe(self, channel: str, callback: Callable[list[str], None]): wrapped_callback = partial(callback_wrapper, callback) async with self.lock, self.asyncpg_connection.transaction(): await self.asyncpg_connection.add_listener(channel, wrapped_callback) diff --git a/donate4fun/social.py b/donate4fun/social.py index 133ae3bd..504d3a5d 100644 --- a/donate4fun/social.py +++ b/donate4fun/social.py @@ -75,3 +75,6 @@ def from_slug(cls, slug: SocialProviderSlug): return cls.create(SocialProviderId.donate4fun) case _: raise UnsupportedTarget("Slug is invalid") + + async def notify(self, donation: Donation): + pass diff --git a/donate4fun/twitter.py b/donate4fun/twitter.py index 0eef9974..fe2ffb99 100644 --- a/donate4fun/twitter.py +++ b/donate4fun/twitter.py @@ -1,8 +1,13 @@ -import logging import asyncio +import json +import logging import re +import secrets from contextlib import asynccontextmanager +from collections.abc import AsyncIterator from datetime import datetime +from dataclasses import dataclass +from enum import Enum from functools import partial from io import BytesIO from typing import Any @@ -11,31 +16,16 @@ from authlib.integrations.httpx_client import AsyncOAuth1Client, AsyncOAuth2Client from .db import db -from .db_twitter import TwitterDbLib +from .db_other import OAuthDbLib from .models import TwitterAccount -from .types import ValidationError -from .settings import settings, TwitterOAuth -from .api_utils import scrape_lightning_address, register_app_command +from .types import Url +from .settings import TwitterOAuth +from .api_utils import scrape_lightning_address, register_app_command, HttpClient +from .twitter_models import APIError, InvalidResponse, MediaID, TweetId, Tweet, TwitterHandle, OAuth1Token logger = logging.getLogger(__name__) -class APIError(Exception): - pass - - -MediaID = int -TwitterHandle = str - - -class UnsupportedTwitterUrl(ValidationError): - pass - - -class InvalidResponse(Exception): - pass - - def parse_twitter_profile_url(url: str) -> str: """ Returns Twitter handle (username) if matches @@ -45,10 +35,56 @@ def parse_twitter_profile_url(url: str) -> str: class TwitterApiClient: + DEFAULT_TWEET_FIELDS = ( + 'created_at,attachments,author_id,context_annotations,conversation_id,' + 'entities,source,text,referenced_tweets,id,in_reply_to_user_id' + ) + def __init__(self, client: httpx.AsyncClient): self.client: httpx.AsyncClient = client self.get = partial(self.request, 'GET') self.post = partial(self.request, 'POST') + self.delete = partial(self.request, 'DELETE') + + @classmethod + @asynccontextmanager + async def create_oauth2( + cls, oauth: TwitterOAuth, scope: str, token: OAuth1Token | None = None, update_token=None, redirect_uri=None, + ) -> AsyncIterator['TwitterApiClient']: + async with AsyncOAuth2Client( + client_id=oauth.client_id, + client_secret=oauth.client_secret, + scope=scope, + token_endpoint='https://api.twitter.com/2/oauth2/token', + redirect_uri=redirect_uri, + code_challenge_method='S256', + token=token, + update_token=update_token, + base_url='https://api.twitter.com/2', + ) as client: + yield cls(client) + + @classmethod + @asynccontextmanager + async def create_oauth1(cls, oauth: TwitterOAuth, token: dict | None = None, **kwargs) -> AsyncIterator['TwitterApiClient']: + async with AsyncOAuth1Client( + client_id=oauth.consumer_key, + client_secret=oauth.consumer_secret, + base_url='https://api.twitter.com/2', + **kwargs, + ) as client: + if token: + client.token = token + yield cls(client) + + @classmethod + @asynccontextmanager + async def create_apponly(cls, token: str): + async with httpx.AsyncClient( + headers=dict(authorization=f'Bearer {token}'), + base_url='https://api.twitter.com/2', + ) as client: + yield cls(client) async def request_raw(self, method: str, api_path: str, **kwargs) -> httpx.Response: response = await self.client.request( @@ -59,13 +95,17 @@ async def request_raw(self, method: str, api_path: str, **kwargs) -> httpx.Respo try: response.raise_for_status() except httpx.HTTPStatusError as exc: - if self.is_json_content_type(exc.response): - body = exc.response.json() - else: - body = exc.response.content - raise APIError(body if body else exc.response.status_code) from exc + self.handle_http_status_error(exc) return response + def handle_http_status_error(self, exc: httpx.HTTPStatusError): + if self.is_json_content_type(exc.response): + body = exc.response.json() + message = body.get('detail') or json.dumps(body) + else: + body = message = exc.response.content + raise APIError(message=message, status_code=exc.response.status_code, body=body) from exc + def is_json_content_type(self, response): return response.headers.get('content-type', '').split(';', 1)[0] == 'application/json' @@ -81,25 +121,63 @@ async def request(self, method: str, api_path: str, **kwargs) -> dict[str, Any] @asynccontextmanager async def stream(self, method: str, api_path: str, **kwargs): async with self.client.stream(method, api_path, **kwargs) as response: + try: + response.raise_for_status() + except httpx.HTTPStatusError as exc: + # Read the body before closing .stream() context + await response.aread() + self.handle_http_status_error(exc) yield response - async def get_pages(self, api_path: str, limit: int, params: dict[str, Any], **kwargs) -> list[Any]: - results = [] + async def get_pages(self, api_path: str, params: dict, **kwargs) -> AsyncIterator[dict]: + """ + Iterates over pages of data. It expects that response is a list of items in 'data' field. + """ params_ = params.copy() while True: - response = await self.request_raw('GET', api_path, params=params_, **kwargs) - if response.status_code == 204: - break - elif response.headers['content-type'].split(';', 1)[0] == 'application/json': - data = response.json() - results.extend(data.get('data', [])) - if len(results) < limit: - params_['pagination_token'] = data['meta']['next_token'] - else: - break - else: + data: dict = await self.request('GET', api_path, params=params_, **kwargs) + if not isinstance(data, dict): raise InvalidResponse - return results + items = data.get('data', []) + if len(items) == 0: + break + for item in items: + yield item + params_['pagination_token'] = data['meta']['next_token'] + + @classmethod + async def fetch_access_token(self, oauth_token: str, oauth_verifier: str) -> OAuth1Token: + """ + According to https://developer.twitter.com/en/docs/authentication/api-reference/access_token + this API does not require auth, so we use plain httpx.AsyncClient + """ + async with HttpClient() as client: + try: + resp = await client.post( + 'https://api.twitter.com/oauth/access_token', + params=dict( + oauth_token=oauth_token, + oauth_verifier=oauth_verifier, + ), + ) + except httpx.HTTPStatusError as exc: + raise APIError( + "Failed to fetch access token", + body=exc.response.text, + status_code=exc.response.status_code, + ) from exc + return AsyncOAuth1Client(client_id='junk').parse_response_token(resp.status_code, resp.text) + + async def fetch_token(self, code: str, code_verifier: str): + token: dict = await self.client.fetch_token(code=code, code_verifier=code_verifier) + self.client.token = token + + def create_authorization_url(self, code_verifier: str, state: str): + url, state = self.client.create_authorization_url( + url='https://twitter.com/i/oauth2/authorize', code_verifier=code_verifier, + state=state, + ) + return url async def get_user_by(self, handle: str | None = None, user_id: int | None = None) -> TwitterAccount: if handle is not None: @@ -115,6 +193,12 @@ async def get_me(self) -> TwitterAccount: data: dict = await self.get('/users/me', params={'user.fields': get_user_fields()}) return api_data_to_twitter_account(data['data']) + async def get_profile_banner(self, screen_name: str) -> dict: + url = 'https://api.twitter.com/1.1/users/profile_banner.json' + data: dict = await self.get(url, params=dict(screen_name=screen_name)) + # FIXME: parse data + return data + async def upload_media(self, image: bytes, mime_type: str, category: str) -> MediaID: upload_url = 'https://upload.twitter.com/1.1/media/upload.json' params = dict( @@ -156,67 +240,169 @@ async def upload_media(self, image: bytes, mime_type: str, category: str) -> Med logger.trace("Media uploaded: %s", state_response) return media_id + async def send_tweet(self, reply_to: TweetId = None, text: str = None, media_id: int = None) -> Tweet: + body = {} + if reply_to is not None: + body['reply'] = dict(in_reply_to_tweet_id=str(reply_to)) + if text is not None: + body['text'] = text + if media_id is not None: + body['media'] = dict(media_ids=[str(media_id)]) + data = await self.post('/tweets', json=body) + tweet = Tweet(**data['data']) + logger.trace("tweeted https://twitter.com/status/%s: %s", tweet.id, tweet.text) + return tweet + + async def search_recent_tweets(self, query: str) -> AsyncIterator[Tweet]: + async for tweet in self.get_pages('/tweets/search/recent', params=dict(query=query)): + yield Tweet(**tweet) + + def get_tweets_by_user(self, *, handle: TwitterHandle) -> AsyncIterator[Tweet]: + return self.search_recent_tweets(query=f'from:{handle}') + + def get_replies(self, *, tweet_id: TweetId) -> AsyncIterator[Tweet]: + return self.search_recent_tweets(query=f'in_reply_to_tweet_id:{tweet_id}') -@register_app_command -async def fetch_and_save_twitter_account(handle: str): - async with db.session() as db_session, make_apponly_client(token=settings.twitter.linking_oauth.bearer_token) as client: - account: TwitterAccount = await TwitterApiClient(client).get_user_by(handle=handle) - await db_session.save_twitter_account(account) + @asynccontextmanager + async def stream_tweets(self, query: str) -> AsyncIterator[AsyncIterator[Tweet]]: + current_rules: list = (await self.get('/tweets/search/stream/rules')).get('data', []) + logger.debug("current rules: %s", current_rules) + expected_rules = [dict(value=query)] + if [dict(value=rule['value']) for rule in current_rules] != expected_rules: + logger.debug("current rules differ with expected, overriding with %s", expected_rules) + if current_rules: + current_rule_ids = [rule['id'] for rule in current_rules] + await self.post('/tweets/search/stream/rules', json=dict( + delete=dict(ids=current_rule_ids) + )) + await self.post('/tweets/search/stream/rules', json=dict( + add=expected_rules, + )) + params = { + 'tweet.fields': self.DEFAULT_TWEET_FIELDS, + 'expansions': 'author_id,referenced_tweets.id,in_reply_to_user_id,referenced_tweets.id.author_id', + } + async with self.stream('GET', '/tweets/search/stream', params=params, timeout=3600) as response: + yield self.generate_tweets(response) + + async def generate_tweets(self, response: httpx.Response) -> AsyncIterator[Tweet]: + async for chunk in response.aiter_lines(): + chunk = chunk.strip() + if chunk: + data: dict = json.loads(chunk) + yield Tweet(**data['data']) + + async def get_tweet(self, tweet_id: TweetId): + data = await self.get(f'/tweets/{tweet_id}', params={ + 'tweet.fields': self.DEFAULT_TWEET_FIELDS, + }) + return Tweet(**data['data']) + + async def delete_tweet(self, tweet_id: TweetId): + await self.delete(f'/tweets/{tweet_id}') + + +# TODO: make class derived from pydantic.BaseModel +OAuthToken = dict + + +class OAuthTokenKind(str, Enum): + oauth1 = 'oauth1' + oauth2 = 'oauth2' + + +@dataclass(frozen=True) +class OAuthManager: + settings: TwitterOAuth + scope: str + name_prefix: str + suggested_account: str | None = None + + # TODO: move this methods to derived class TwitterOauthManager + async def obtain_oauth1_token(self) -> OAuthToken: + async with TwitterApiClient.create_oauth1(oauth=self.settings, redirect_uri='oob') as client: + await client.client.fetch_request_token('https://api.twitter.com/oauth/request_token') + auth_url: Url = client.client.create_authorization_url('https://api.twitter.com/oauth/authorize') + if self.suggested_account is None: + pin: str = input(f"Open this url {auth_url} and paste here PIN:\n") + else: + pin: str = input(f"Switch to {self.suggested_account}, authorize {auth_url} and paste here PIN:\n") + token: OAuthToken = await client.client.fetch_access_token('https://api.twitter.com/oauth/access_token', verifier=pin) + await self.save(OAuthTokenKind.oauth1, token) + return token + + async def obtain_oauth2_token(self) -> OAuthToken: + client_ctx = TwitterApiClient.create_oauth2( + scope=self.scope, oauth=self.settings, redirect_uri='http://localhost', + ) + async with client_ctx as client: + code_verifier = secrets.token_urlsafe(43) + url, state = client.client.create_authorization_url( + url='https://twitter.com/i/oauth2/authorize', code_verifier=code_verifier, + ) + if self.suggested_account is None: + prompt = f"Follow this url and enter resulting url after redirect: {url}\n" + else: + prompt = f"Login to {self.suggested_account}, then authorize and enter resulting url after redirect: {url}\n" + authorization_response = input(prompt) + token: OAuthToken = OAuthToken(await client.client.fetch_token( + authorization_response=authorization_response, + code_verifier=code_verifier, + )) + await self.save(OAuthTokenKind.oauth2, token) + return token + + async def obtain_token(self, token_kind: OAuthTokenKind) -> OAuthToken: + match token_kind: + case OAuthTokenKind.oauth1: + return await self.obtain_oauth1_token() + case OAuthTokenKind.oauth2: + return await self.obtain_oauth2_token() + + def _get_db_key(self, kind: OAuthTokenKind) -> str: + return f'{self.name_prefix}_{kind.value}' + + async def load(self, kind: OAuthTokenKind) -> OAuthToken: + async with db.session() as db_session: + return await OAuthDbLib(db_session).query_oauth_token(self._get_db_key(kind.value)) + async def save(self, kind: OAuthTokenKind, token: OAuthToken): + async with db.session() as db_session: + await OAuthDbLib(db_session).save_oauth_token(self._get_db_key(kind.value), token) -class OAuthTokenLoader: - def __init__(self, name: str): - self.name = name + @asynccontextmanager + async def create_oauth1_client(self): + token: OAuthToken = await self.load(OAuthTokenKind.oauth1) + async with TwitterApiClient.create_oauth1(oauth=self.settings, token=token) as client: + yield client - @property - def settings(self): - return self.settings_getter() + async def _update_token(self, token: dict, refresh_token: str): + logger.debug("Save refreshed oauth2 token for %s", self.name_prefix) + await self.save(OAuthTokenKind.oauth2, token) - async def load(self) -> dict: - async with db.session() as db_session: - return await TwitterDbLib(db_session).query_oauth_token(self.name) + @asynccontextmanager + async def create_oauth2_client(self): + token: OAuthToken = await self.load(OAuthTokenKind.oauth2) + client_context = TwitterApiClient.create_oauth2( + scope=self.scope, oauth=self.settings, token=token, update_token=self._update_token, + ) + async with client_context as client: + yield client - async def save(self, token: dict): - async with db.session() as db_session: - await TwitterDbLib(db_session).save_oauth_token(self.name, token) - - -@asynccontextmanager -async def make_oauth2_client(oauth: TwitterOAuth, scope: str, token: dict | None = None, update_token=None, redirect_uri=None): - async with AsyncOAuth2Client( - client_id=oauth.client_id, - client_secret=oauth.client_secret, - scope=scope, - token_endpoint='https://api.twitter.com/2/oauth2/token', - redirect_uri=redirect_uri, - code_challenge_method='S256', - token=token, - update_token=update_token, - base_url='https://api.twitter.com/2', - ) as client: - yield client - - -@asynccontextmanager -async def make_oauth1_client(oauth: TwitterOAuth, token: dict | None = None, **kwargs): - async with AsyncOAuth1Client( - client_id=oauth.consumer_key, - client_secret=oauth.consumer_secret, - base_url='https://api.twitter.com/2', - **kwargs, - ) as client: - if token: - client.token = token - yield client - - -@asynccontextmanager -async def make_apponly_client(token: str): - async with httpx.AsyncClient( - headers=dict(authorization=f'Bearer {token}'), - base_url='https://api.twitter.com/2', - ) as client: - yield client + @asynccontextmanager + async def create_apponly_client(self): + async with TwitterApiClient.create_apponly(token=self.settings.bearer_token) as client: + yield client + + +@register_app_command +async def obtain_token(path: str, token_kind: OAuthTokenKind): + parts = path.split('.') + module = parts[0] + obj = __import__(f'donate4fun.{module}') + for part in parts[1:]: + obj = obj[part] + await obj.obtain_token(token_kind) def get_user_fields(): @@ -232,22 +418,3 @@ def api_data_to_twitter_account(data: dict): lightning_address=scrape_lightning_address(data['description']), last_fetched_at=datetime.utcnow(), ) - - -@register_app_command -async def get_profile_banner(): - """ - Does it work? - """ - async with db.session() as db_session: - token: dict = await db_session.query_oauth_token('twitter_oauth1') - async with make_oauth1_client() as client: - client.token = token - url = 'https://api.twitter.com/1.1/users/profile_banner.json' - try: - response = await client.get(url, params=dict(screen_name='elonmusk')) - except httpx.HTTPStatusError as exc: - auth_header = exc.request.headers['authorization'] - logger.exception("Failed to get banner image:\n%s\n%s\n%s", auth_header, exc.request.headers, exc.response.json()) - else: - print(response.json()) diff --git a/donate4fun/twitter_bot.py b/donate4fun/twitter_bot.py index b833b490..06881960 100644 --- a/donate4fun/twitter_bot.py +++ b/donate4fun/twitter_bot.py @@ -1,16 +1,15 @@ import asyncio import logging import time -import json import re import io import os -import secrets +from abc import abstractmethod +from collections import defaultdict from contextlib import asynccontextmanager, AsyncExitStack from dataclasses import dataclass from datetime import datetime, timedelta -from functools import wraps -from itertools import groupby +from functools import wraps, cache from typing import AsyncIterator from urllib.parse import quote_plus, urljoin from uuid import UUID @@ -25,17 +24,18 @@ from starlette.datastructures import URL from .db import NoResultFound, db -from .models import TwitterAccount, Donator, WithdrawalToken, Donation, TwitterAccountOwned, TwitterTweet, PaymentRequest +from .db_donations import DonationsDbLib +from .models import ( + TwitterAccount, Donator, WithdrawalToken, Donation, TwitterAccountOwned, TwitterTweet, PaymentRequest, Notification, +) from .core import as_task, catch_exceptions from .settings import settings -from .twitter import ( - make_oauth2_client, TwitterHandle, - make_oauth1_client, OAuthTokenLoader, TwitterApiClient, make_apponly_client, -) +from .twitter import TwitterHandle, OAuthManager, TwitterApiClient, Tweet from .twitter_provider import TwitterProvider from .donation import donate from .api_utils import make_absolute_uri, register_app_command from .lnd import lnd, LndClient +from .pubsub import pubsub logger = logging.getLogger(__name__) @@ -50,47 +50,20 @@ class DirectMessage: class BaseTwitterBot: provider = TwitterProvider() + @property + @abstractmethod + def oauth_manager(self): + ... + @classmethod @asynccontextmanager async def create(cls) -> AsyncIterator['BaseTwitterBot']: async with AsyncExitStack() as stack: - obj = cls() - if cls.oauth1_token: - oauth1_token: dict = await cls.oauth1_token.load() - oauth1_ctx = make_oauth1_client(oauth=cls.oauth_settings, token=oauth1_token) - obj.client = TwitterApiClient(await stack.enter_async_context(oauth1_ctx)) - if cls.oauth2_token: - oauth2_token: dict = await cls.oauth2_token.load() - oauth2_ctx = make_oauth2_client(scope=cls.oauth2_scope, oauth=cls.oauth_settings, token=oauth2_token) - obj.oauth2_client = TwitterApiClient(await stack.enter_async_context(oauth2_ctx)) - if cls.oauth_settings.bearer_token: - apponly_ctx = make_apponly_client(token=cls.oauth_settings.bearer_token) - obj.apponly_client = TwitterApiClient(await stack.enter_async_context(apponly_ctx)) - yield obj - - @classmethod - async def obtain_oauth1_token(cls): - async with make_oauth1_client(oauth=cls.oauth_settings, redirect_uri='oob') as client: - await client.fetch_request_token('https://api.twitter.com/oauth/request_token') - auth_url = client.create_authorization_url('https://api.twitter.com/oauth/authorize') - pin: str = input(f"Open this url {auth_url} and paste here PIN:\n") - data: dict = await client.fetch_access_token('https://api.twitter.com/oauth/access_token', verifier=pin) - await cls.oauth1_token.save(data) - - @classmethod - async def obtain_oauth2_token(cls): - client_ctx = make_oauth2_client(scope=cls.oauth2_scope, oauth=cls.oauth_settings, redirect_uri='http://localhost') - async with client_ctx as client: - code_verifier = secrets.token_urlsafe(43) - url, state = client.create_authorization_url( - url='https://twitter.com/i/oauth2/authorize', code_verifier=code_verifier, - ) - authorization_response = input(f"Follow this url and enter resulting url after redirect: {url}\n") - token: dict = await client.fetch_token( - authorization_response=authorization_response, - code_verifier=code_verifier, - ) - await cls.oauth2_token.save(token) + self_ = cls() + self_.oauth1_client = await stack.enter_async_context(self_.oauth_manager.create_oauth1_client()) + self_.oauth2_client = await stack.enter_async_context(self_.oauth_manager.create_oauth2_client()) + self_.apponly_client = await stack.enter_async_context(self_.oauth_manager.create_apponly_client()) + yield self_ @classmethod async def validate_tokens(cls): @@ -220,14 +193,15 @@ async def answer_withdraw(self): class ConversationsBot(BaseTwitterBot): - oauth1_token = OAuthTokenLoader('twitter_converstaions_oauth1') - oauth2_token = OAuthTokenLoader('twitter_converstaions_oauth2') - oauth2_scope = "tweet.read users.read dm.read dm.write offline.access" - @classmethod @property - def oauth_settings(cls): - return settings.twitter.conversations_bot.oauth + @cache + def oauth_manager(cls): + return OAuthManager( + name_prefix='twitter_converstaions', + settings=settings.twitter.conversations_bot.oauth, + scope="tweet.read users.read dm.read dm.write offline.access", + ) async def run_loop(self): conversations = {} @@ -251,13 +225,13 @@ async def fetch_conversations(self): 'dm_event.fields': 'sender_id,created_at,dm_conversation_id', 'max_results': 100, } - events: list[dict] = await self.oauth2_client.get_pages('dm_events', limit=100, params=params) - logger.trace("Fetched direct messages %s", events) + conversations = defaultdict(list) + async for event in self.oauth2_client.get_pages('dm_events', params=params): + conversations[event['dm_conversation_id']].append(event) + logger.trace("Fetched direct messages: %s", conversations) self_id = settings.twitter.self_id - def keyfunc(event): - return event['dm_conversation_id'] - for dm_conversation_id, conversation_events in groupby(sorted(events, key=keyfunc), keyfunc): + for dm_conversation_id, conversation_events in conversations: sorted_events = sorted(conversation_events, key=lambda event: event['created_at']) last_message = sorted_events[-1] created_at = datetime.fromisoformat(last_message['created_at'][:-1]) # Remove trailing Z @@ -267,57 +241,63 @@ def keyfunc(event): yield dm_conversation_id -register_app_command(ConversationsBot.obtain_oauth1_token, 'obtain_conversations_bot_oauth1_token') -register_app_command(ConversationsBot.obtain_oauth2_token, 'obtain_conversations_bot_oauth2_token') - - class MentionsBot(BaseTwitterBot): - oauth1_token = OAuthTokenLoader('twitter_mentions_bot_oauth1') - oauth2_token = OAuthTokenLoader('twitter_mentions_bot_oauth2') - oauth2_scope = "tweet.read tweet.write users.read dm.read dm.write offline.access" - @classmethod @property - def oauth_settings(cls): - return settings.twitter.mentions_bot.oauth + @cache + def oauth_manager(self): + return OAuthManager( + name_prefix='twitter_mentions_bot', + scope="tweet.read tweet.write users.read dm.read dm.write offline.access", + settings=settings.twitter.mentions_bot.oauth, + suggested_account='tip4fun', + ) - async def run_loop(self, handle: TwitterHandle): + @classmethod + @asynccontextmanager + async def create(cls): + async with super().create() as self_: + me: TwitterAccount = await self_.oauth2_client.get_me() + self_.handle = me.handle + yield self_ + + async def run_loop(self): try: async with anyio.create_task_group() as tg: - async for mention in self.fetch_mentions(handle): - tg.start_soon(self.handle_mention, mention) + async with self.fetch_mentions() as mentions: + async for mention in mentions: + tg.start_soon(self.handle_mention, mention) except httpx.HTTPStatusError as exc: print(exc.response.json()) raise - async def handle_mention(self, mention: dict): + async def handle_mention(self, mention: Tweet) -> Donation: logger.trace("handling mention %s", mention) - receiver_user_id: int = int(mention['in_reply_to_user_id']) - donator_user_id: int = int(mention['author_id']) - referenced_tweet_id: int = int(mention['referenced_tweets'][0]['id']) - tweet_id: int = int(mention['id']) - text: str = mention['text'] async with db.session() as db_session: twitter_db = self.provider.wrap_db(db_session) - donator_account_: TwitterAccount = await self.provider.query_or_fetch_account(db=twitter_db, user_id=donator_user_id) + donator_account_: TwitterAccount = await self.provider.query_or_fetch_account( + db=twitter_db, user_id=mention.author_id, + ) donator_account: TwitterAccountOwned = await twitter_db.query_account(id=donator_account_.id) if donator_account.owner_id is None: donator = Donator() else: donator = Donator(id=donator_account.owner_id) - receiver_account: TwitterAccount = await self.provider.query_or_fetch_account(db=twitter_db, user_id=receiver_user_id) - if match := re.search(r' (?P\d+) ?(?P[kK])?', text): + receiver_account: TwitterAccount = await self.provider.query_or_fetch_account( + db=twitter_db, user_id=mention.in_reply_to_user_id, + ) + if match := re.search(r' (?P\d+) ?(?P[kK])?', mention.text): amount = int(match['amount']) if match['has_k']: amount *= 1000 else: - await self.do_not_understand(tweet_id) + await self.do_not_understand(mention.id) return logger.debug( "handling donation from @%s to @%s for %d sats via tweet %d", - donator_account.handle, receiver_account.handle, amount, tweet_id, + donator_account.handle, receiver_account.handle, amount, mention.id, ) - tweet: TwitterTweet = TwitterTweet(tweet_id=referenced_tweet_id) + tweet: TwitterTweet = TwitterTweet(tweet_id=mention.referenced_tweets[0].id) await twitter_db.get_or_create_tweet(tweet) donation = Donation( donator=donator, @@ -325,16 +305,21 @@ async def handle_mention(self, mention: dict): twitter_tweet=tweet, donator_twitter_account=donator_account, amount=amount, + lightning_address=receiver_account.lightning_address, ) with lnd.assign(LndClient(settings.lnd)): - # Long expiry because this will be posted in Twitter - pay_req, donation = await donate(donation, db_session, expiry=3600) - if pay_req: - await self.send_payreq(tweet_id, receiver_account.handle, donation, pay_req) - elif donation.paid_at: - await self.share_donation_preview(tweet_id, donation) - else: - raise RuntimeError("invalid state") + # Long expiry because this will be posted on Twitter + pay_req, donation = await donate(donation, db_session, expiry=3600 * 24) + if pay_req: + invoice_tweet = await self.send_payreq(mention.id, receiver_account.handle, donation, pay_req) + async with db.session() as db_session: + twitter_db = self.provider.wrap_db(db_session) + await twitter_db.add_invoice_tweet_to_donation(donation=donation, tweet=invoice_tweet) + elif donation.paid_at: + await self.share_donation_preview(mention.id, donation) + else: + raise RuntimeError("invalid state") + return donation async def invite_new_user(self, tweet_id: int): print("inviting new user") @@ -343,65 +328,42 @@ async def do_not_understand(self, tweet_id: int): print("i do not understand") async def share_donation_preview(self, tweet_id: int, donation: Donation): - await self.send_tweet(reply_to=tweet_id, text=make_absolute_uri(f'/donation/{donation.id}')) + await self.oauth2_client.send_tweet(reply_to=tweet_id, text=make_absolute_uri(f'/donation/{donation.id}')) - async def send_payreq(self, tweet_id: int, handle: TwitterHandle, donation: Donation, pay_req: PaymentRequest): + async def send_payreq(self, tweet_id: int, handle: TwitterHandle, donation: Donation, pay_req: PaymentRequest) -> Tweet: qrcode: bytes = make_qr_code(pay_req, ERROR_CORRECT_M) - media_id: int = await self.client.upload_media(qrcode, 'image/png', category='tweet_image') + media_id: int = await self.oauth1_client.upload_media(qrcode, 'image/png', category='tweet_image') invoice_url = make_absolute_uri(f'/api/v1/donation/{donation.id}/invoice') - await self.send_tweet(text=f"Invoice: {invoice_url}", reply_to=tweet_id, media_id=media_id) - - async def fetch_mentions(self, handle: TwitterHandle) -> AsyncIterator[dict]: - logger.info("fetching new mentions for @%s", handle) - current_rules: list = (await self.apponly_client.get('/tweets/search/stream/rules')).get('data', []) - logger.debug("current rules: %s", current_rules) - expected_rules = [dict(value=f'@{handle} is:reply -from:{handle}')] - if [dict(value=rule['value']) for rule in current_rules] != expected_rules: - logger.debug("current rules differ with expected, overriding with %s", expected_rules) - if current_rules: - current_rule_ids = [rule['id'] for rule in current_rules] - await self.apponly_client.post('/tweets/search/stream/rules', json=dict( - delete=dict(ids=current_rule_ids) - )) - await self.apponly_client.post('/tweets/search/stream/rules', json=dict( - add=expected_rules, - )) - params = { - 'tweet.fields': 'created_at', - 'expansions': 'author_id,referenced_tweets.id,in_reply_to_user_id,referenced_tweets.id.author_id', - } - async with self.apponly_client.stream('GET', '/tweets/search/stream', params=params, timeout=3600) as response: - try: - response.raise_for_status() - except httpx.HTTPStatusError: - await response.aread() - raise - async for chunk in response.aiter_text(): - chunk = chunk.strip() - if chunk: - data: dict = json.loads(chunk) - yield data['data'] - - async def send_tweet(self, reply_to: int = None, text: str = None, media_id: int = None): - body = {} - if reply_to is not None: - body['reply'] = dict(in_reply_to_tweet_id=str(reply_to)) - if text is not None: - body['text'] = text - if media_id is not None: - body['media'] = dict(media_ids=[str(media_id)]) - tweet = (await self.client.post('/tweets', json=body))['data'] - logger.trace("tweeted https://twitter.com/status/%s: %s", tweet['id'], tweet['text']) - - -register_app_command(MentionsBot.obtain_oauth1_token, 'obtain_mentions_bot_oauth1_token') -register_app_command(MentionsBot.obtain_oauth2_token, 'obtain_mentions_bot_oauth2_token') -register_app_command(MentionsBot.validate_tokens, 'validate_mentions_bot_tokens') + return await self.oauth2_client.send_tweet(text=f"Invoice: {invoice_url}", reply_to=tweet_id, media_id=media_id) + + def fetch_mentions(self) -> AsyncIterator[AsyncIterator[Tweet]]: + logger.info("fetching new mentions for @%s", self.handle) + return self.apponly_client.stream_tweets(query=f'@{self.handle} is:reply -from:{self.handle}') + + @asynccontextmanager + async def monitor_invoices(self) -> AsyncIterator[AsyncIterator[Donation]]: + queue = asyncio.Queue() + async with pubsub.subscribe('donations', queue.put): + yield self.process_invoices(queue) + + async def process_invoices(self, queue: asyncio.Queue) -> AsyncIterator[Donation]: + while True: + data: str = await queue.get() + notification = Notification.from_json(data) + async with db.session() as db_session: + donation: Donation = await DonationsDbLib(db_session).query_donation(id=notification.id) + logger.trace("received notifiaction about %s", donation) + if donation.twitter_invoice_tweet_id is not None: + # TODO: use task group + invoice_tweet: Tweet = await self.oauth2_client.get_tweet(donation.twitter_invoice_tweet_id) + await self.oauth2_client.delete_tweet(donation.twitter_invoice_tweet_id) + await self.share_donation_preview(tweet_id=invoice_tweet.replied_to, donation=donation) + yield donation @register_app_command async def test_upload_media(): - async with make_oauth1_client(token=await MentionsBot.oauth1_token.load()) as client: + async with TwitterApiClient.create_oauth1(token=await MentionsBot.oauth1_token.load()) as client: try: with open('frontend/public/static/D-16.png', 'rb') as f: await client.upload_media(f.read(), 'image/png', category='tweet_image') @@ -486,5 +448,4 @@ async def run_conversations_bot(): @restarting async def run_mentions_bot(): async with MentionsBot.create() as bot: - me: TwitterAccount = await bot.client.get_me() - await bot.run_loop(me.handle) + await bot.run_loop() diff --git a/donate4fun/twitter_cli.py b/donate4fun/twitter_cli.py new file mode 100644 index 00000000..acfe9d4b --- /dev/null +++ b/donate4fun/twitter_cli.py @@ -0,0 +1,36 @@ +import logging + +import httpx + +from .settings import settings +from .db import db +from .twitter import TwitterApiClient +from .models import TwitterAccount +from .api_utils import register_app_command + +logger = logging.getLogger(__name__) + + +@register_app_command +async def fetch_and_save_twitter_account(handle: str): + token = settings.twitter.linking_oauth.bearer_token + async with db.session() as db_session, TwitterApiClient.create_apponly(token=token) as client: + account: TwitterAccount = await TwitterApiClient(client).get_user_by(handle=handle) + await db_session.save_twitter_account(account) + + +@register_app_command +async def get_profile_banner(): + """ + Does it work? + """ + async with db.session() as db_session: + token: dict = await db_session.query_oauth_token('twitter_oauth1') + async with TwitterApiClient.create_oauth1(token=token) as client: + try: + data: dict = await client.get_profile_branner(screen_name='elonmusk') + except httpx.HTTPStatusError as exc: + auth_header = exc.request.headers['authorization'] + logger.exception("Failed to get banner image:\n%s\n%s\n%s", auth_header, exc.request.headers, exc.response.json()) + else: + print(data) diff --git a/donate4fun/twitter_models.py b/donate4fun/twitter_models.py new file mode 100644 index 00000000..c6564b9e --- /dev/null +++ b/donate4fun/twitter_models.py @@ -0,0 +1,79 @@ +from datetime import datetime +from typing import Any + +from pydantic import BaseModel, AnyUrl + +from .types import ValidationError + + +class APIError(Exception): + def __init__(self, message: str, *, status_code: int, body: Any): + super().__init__(message) + self.status_code = status_code + self.body = body + + def __str__(self) -> str: + return f"{self.args[0]}: {self.body} [{self.status_code}]" + + +MediaID = int +TwitterHandle = str + + +class UnsupportedTwitterUrl(ValidationError): + pass + + +class InvalidResponse(Exception): + pass + + +TweetId = int +AuthorId = int +ConversationId = int +TwitterHandle = str +MediaKey = str +OAuth1Token = dict + + +class TweetReference(BaseModel): + id: TweetId + type: str # replied_to | ... + + +class BaseEntity(BaseModel): + start: int + end: int + + +class MentionEntity(BaseEntity): + id: TweetId + username: TwitterHandle + + +class UrlEntity(BaseEntity): + display_url: str # It actually lacks a scheme + url: AnyUrl + expanded_url: AnyUrl + media_key: MediaKey + + +class TweetEntities(BaseModel): + mentions: list[MentionEntity] = [] + urls: list[UrlEntity] = [] + + +class Tweet(BaseModel): + id: TweetId + text: str + conversation_id: ConversationId | None = None + author_id: AuthorId | None = None + created_at: datetime | None = None + in_reply_to_user_id: AuthorId | None = None + referenced_tweets: list[TweetReference] = [] + edit_history_tweet_ids: list[TweetId] = [] + entities: TweetEntities | None = None + + @property + def replied_to(self) -> TweetId: + return next((ref.id for ref in self.referenced_tweets if ref.type == 'replied_to'), None) diff --git a/donate4fun/twitter_provider.py b/donate4fun/twitter_provider.py index 0616f075..cef1b0df 100644 --- a/donate4fun/twitter_provider.py +++ b/donate4fun/twitter_provider.py @@ -9,7 +9,8 @@ from .social import SocialProvider from .models import TwitterAccount, Donation, TwitterTweet from .types import EntityTooOld -from .twitter import make_apponly_client, TwitterApiClient, UnsupportedTwitterUrl +from .twitter import TwitterApiClient +from .twitter_models import UnsupportedTwitterUrl class TwitterProvider(SocialProvider): @@ -23,8 +24,8 @@ async def query_or_fetch_account(self, db: TwitterDbLib, **params) -> TwitterAcc if account.last_fetched_at is None or account.last_fetched_at < datetime.utcnow() - settings.twitter.refresh_timeout: raise EntityTooOld except (NoResultFound, EntityTooOld): - async with make_apponly_client(token=settings.twitter.linking_oauth.bearer_token) as client: - account: TwitterAccount = await TwitterApiClient(client).get_user_by(**params) + async with TwitterApiClient.create_apponly(token=settings.twitter.linking_oauth.bearer_token) as client: + account: TwitterAccount = await client.get_user_by(**params) await db.save_account(account) return account @@ -53,3 +54,8 @@ async def apply_target(self, donation: Donation, target: furl, db_session: DbSes def set_donation_receiver(self, donation: Donation, receiver: TwitterAccount): donation.twitter_account = receiver + + async def notify(self, donation: Donation): + if donation.twitter_tweet is not None and donation.twitter_invoice_tweet: + from .twitter_bot import MentionsBot + MentionsBot.donation_paid(donation) diff --git a/poetry.lock b/poetry.lock index 0f7dce18..5a7e24ce 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,3 +1,5 @@ +# This file is automatically @generated by Poetry and should not be changed by hand. + [[package]] name = "aiofiles" version = "22.1.0" @@ -5,6 +7,10 @@ description = "File support for asyncio." category = "main" optional = false python-versions = ">=3.7,<4.0" +files = [ + {file = "aiofiles-22.1.0-py3-none-any.whl", hash = "sha256:1142fa8e80dbae46bb6339573ad4c8c0841358f79c6eb50a493dceca14621bad"}, + {file = "aiofiles-22.1.0.tar.gz", hash = "sha256:9107f1ca0b2a5553987a94a3c9959fe5b491fdf731389aa5b7b1bd0733e32de6"}, +] [[package]] name = "aiogoogle" @@ -13,6 +19,10 @@ description = "Async Google API client" category = "main" optional = false python-versions = "*" +files = [ + {file = "aiogoogle-4.5.0-py3-none-any.whl", hash = "sha256:0a86b933ebfe264726374231d43807137a52853b008eb1b9503c02a3f41500ce"}, + {file = "aiogoogle-4.5.0.tar.gz", hash = "sha256:a5c227b6d609da118e7784f874ba63f044366191b3133f2ab6167dd5c3ae7f99"}, +] [package.dependencies] aiofiles = "*" @@ -32,6 +42,95 @@ description = "Async http client/server framework (asyncio)" category = "main" optional = false python-versions = ">=3.6" +files = [ + {file = "aiohttp-3.8.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ba71c9b4dcbb16212f334126cc3d8beb6af377f6703d9dc2d9fb3874fd667ee9"}, + {file = "aiohttp-3.8.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d24b8bb40d5c61ef2d9b6a8f4528c2f17f1c5d2d31fed62ec860f6006142e83e"}, + {file = "aiohttp-3.8.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f88df3a83cf9df566f171adba39d5bd52814ac0b94778d2448652fc77f9eb491"}, + {file = "aiohttp-3.8.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b97decbb3372d4b69e4d4c8117f44632551c692bb1361b356a02b97b69e18a62"}, + {file = "aiohttp-3.8.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:309aa21c1d54b8ef0723181d430347d7452daaff93e8e2363db8e75c72c2fb2d"}, + {file = "aiohttp-3.8.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ad5383a67514e8e76906a06741febd9126fc7c7ff0f599d6fcce3e82b80d026f"}, + {file = "aiohttp-3.8.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:20acae4f268317bb975671e375493dbdbc67cddb5f6c71eebdb85b34444ac46b"}, + {file = "aiohttp-3.8.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:05a3c31c6d7cd08c149e50dc7aa2568317f5844acd745621983380597f027a18"}, + {file = "aiohttp-3.8.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d6f76310355e9fae637c3162936e9504b4767d5c52ca268331e2756e54fd4ca5"}, + {file = "aiohttp-3.8.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:256deb4b29fe5e47893fa32e1de2d73c3afe7407738bd3c63829874661d4822d"}, + {file = "aiohttp-3.8.3-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:5c59fcd80b9049b49acd29bd3598cada4afc8d8d69bd4160cd613246912535d7"}, + {file = "aiohttp-3.8.3-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:059a91e88f2c00fe40aed9031b3606c3f311414f86a90d696dd982e7aec48142"}, + {file = "aiohttp-3.8.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:2feebbb6074cdbd1ac276dbd737b40e890a1361b3cc30b74ac2f5e24aab41f7b"}, + {file = "aiohttp-3.8.3-cp310-cp310-win32.whl", hash = "sha256:5bf651afd22d5f0c4be16cf39d0482ea494f5c88f03e75e5fef3a85177fecdeb"}, + {file = "aiohttp-3.8.3-cp310-cp310-win_amd64.whl", hash = "sha256:653acc3880459f82a65e27bd6526e47ddf19e643457d36a2250b85b41a564715"}, + {file = "aiohttp-3.8.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:86fc24e58ecb32aee09f864cb11bb91bc4c1086615001647dbfc4dc8c32f4008"}, + {file = "aiohttp-3.8.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:75e14eac916f024305db517e00a9252714fce0abcb10ad327fb6dcdc0d060f1d"}, + {file = "aiohttp-3.8.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d1fde0f44029e02d02d3993ad55ce93ead9bb9b15c6b7ccd580f90bd7e3de476"}, + {file = "aiohttp-3.8.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4ab94426ddb1ecc6a0b601d832d5d9d421820989b8caa929114811369673235c"}, + {file = "aiohttp-3.8.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:89d2e02167fa95172c017732ed7725bc8523c598757f08d13c5acca308e1a061"}, + {file = "aiohttp-3.8.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:02f9a2c72fc95d59b881cf38a4b2be9381b9527f9d328771e90f72ac76f31ad8"}, + {file = "aiohttp-3.8.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9c7149272fb5834fc186328e2c1fa01dda3e1fa940ce18fded6d412e8f2cf76d"}, + {file = "aiohttp-3.8.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:512bd5ab136b8dc0ffe3fdf2dfb0c4b4f49c8577f6cae55dca862cd37a4564e2"}, + {file = "aiohttp-3.8.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:7018ecc5fe97027214556afbc7c502fbd718d0740e87eb1217b17efd05b3d276"}, + {file = "aiohttp-3.8.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:88c70ed9da9963d5496d38320160e8eb7e5f1886f9290475a881db12f351ab5d"}, + {file = "aiohttp-3.8.3-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:da22885266bbfb3f78218dc40205fed2671909fbd0720aedba39b4515c038091"}, + {file = "aiohttp-3.8.3-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:e65bc19919c910127c06759a63747ebe14f386cda573d95bcc62b427ca1afc73"}, + {file = "aiohttp-3.8.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:08c78317e950e0762c2983f4dd58dc5e6c9ff75c8a0efeae299d363d439c8e34"}, + {file = "aiohttp-3.8.3-cp311-cp311-win32.whl", hash = "sha256:45d88b016c849d74ebc6f2b6e8bc17cabf26e7e40c0661ddd8fae4c00f015697"}, + {file = "aiohttp-3.8.3-cp311-cp311-win_amd64.whl", hash = "sha256:96372fc29471646b9b106ee918c8eeb4cca423fcbf9a34daa1b93767a88a2290"}, + {file = "aiohttp-3.8.3-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:c971bf3786b5fad82ce5ad570dc6ee420f5b12527157929e830f51c55dc8af77"}, + {file = "aiohttp-3.8.3-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ff25f48fc8e623d95eca0670b8cc1469a83783c924a602e0fbd47363bb54aaca"}, + {file = "aiohttp-3.8.3-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e381581b37db1db7597b62a2e6b8b57c3deec95d93b6d6407c5b61ddc98aca6d"}, + {file = "aiohttp-3.8.3-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:db19d60d846283ee275d0416e2a23493f4e6b6028825b51290ac05afc87a6f97"}, + {file = "aiohttp-3.8.3-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:25892c92bee6d9449ffac82c2fe257f3a6f297792cdb18ad784737d61e7a9a85"}, + {file = "aiohttp-3.8.3-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:398701865e7a9565d49189f6c90868efaca21be65c725fc87fc305906be915da"}, + {file = "aiohttp-3.8.3-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:4a4fbc769ea9b6bd97f4ad0b430a6807f92f0e5eb020f1e42ece59f3ecfc4585"}, + {file = "aiohttp-3.8.3-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:b29bfd650ed8e148f9c515474a6ef0ba1090b7a8faeee26b74a8ff3b33617502"}, + {file = "aiohttp-3.8.3-cp36-cp36m-musllinux_1_1_ppc64le.whl", hash = "sha256:1e56b9cafcd6531bab5d9b2e890bb4937f4165109fe98e2b98ef0dcfcb06ee9d"}, + {file = "aiohttp-3.8.3-cp36-cp36m-musllinux_1_1_s390x.whl", hash = "sha256:ec40170327d4a404b0d91855d41bfe1fe4b699222b2b93e3d833a27330a87a6d"}, + {file = "aiohttp-3.8.3-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:2df5f139233060578d8c2c975128fb231a89ca0a462b35d4b5fcf7c501ebdbe1"}, + {file = "aiohttp-3.8.3-cp36-cp36m-win32.whl", hash = "sha256:f973157ffeab5459eefe7b97a804987876dd0a55570b8fa56b4e1954bf11329b"}, + {file = "aiohttp-3.8.3-cp36-cp36m-win_amd64.whl", hash = "sha256:437399385f2abcd634865705bdc180c8314124b98299d54fe1d4c8990f2f9494"}, + {file = "aiohttp-3.8.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:09e28f572b21642128ef31f4e8372adb6888846f32fecb288c8b0457597ba61a"}, + {file = "aiohttp-3.8.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6f3553510abdbec67c043ca85727396ceed1272eef029b050677046d3387be8d"}, + {file = "aiohttp-3.8.3-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e168a7560b7c61342ae0412997b069753f27ac4862ec7867eff74f0fe4ea2ad9"}, + {file = "aiohttp-3.8.3-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:db4c979b0b3e0fa7e9e69ecd11b2b3174c6963cebadeecfb7ad24532ffcdd11a"}, + {file = "aiohttp-3.8.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e164e0a98e92d06da343d17d4e9c4da4654f4a4588a20d6c73548a29f176abe2"}, + {file = "aiohttp-3.8.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e8a78079d9a39ca9ca99a8b0ac2fdc0c4d25fc80c8a8a82e5c8211509c523363"}, + {file = "aiohttp-3.8.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:21b30885a63c3f4ff5b77a5d6caf008b037cb521a5f33eab445dc566f6d092cc"}, + {file = "aiohttp-3.8.3-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:4b0f30372cef3fdc262f33d06e7b411cd59058ce9174ef159ad938c4a34a89da"}, + {file = "aiohttp-3.8.3-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:8135fa153a20d82ffb64f70a1b5c2738684afa197839b34cc3e3c72fa88d302c"}, + {file = "aiohttp-3.8.3-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:ad61a9639792fd790523ba072c0555cd6be5a0baf03a49a5dd8cfcf20d56df48"}, + {file = "aiohttp-3.8.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:978b046ca728073070e9abc074b6299ebf3501e8dee5e26efacb13cec2b2dea0"}, + {file = "aiohttp-3.8.3-cp37-cp37m-win32.whl", hash = "sha256:0d2c6d8c6872df4a6ec37d2ede71eff62395b9e337b4e18efd2177de883a5033"}, + {file = "aiohttp-3.8.3-cp37-cp37m-win_amd64.whl", hash = "sha256:21d69797eb951f155026651f7e9362877334508d39c2fc37bd04ff55b2007091"}, + {file = "aiohttp-3.8.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:2ca9af5f8f5812d475c5259393f52d712f6d5f0d7fdad9acdb1107dd9e3cb7eb"}, + {file = "aiohttp-3.8.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1d90043c1882067f1bd26196d5d2db9aa6d268def3293ed5fb317e13c9413ea4"}, + {file = "aiohttp-3.8.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:d737fc67b9a970f3234754974531dc9afeea11c70791dcb7db53b0cf81b79784"}, + {file = "aiohttp-3.8.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ebf909ea0a3fc9596e40d55d8000702a85e27fd578ff41a5500f68f20fd32e6c"}, + {file = "aiohttp-3.8.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5835f258ca9f7c455493a57ee707b76d2d9634d84d5d7f62e77be984ea80b849"}, + {file = "aiohttp-3.8.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:da37dcfbf4b7f45d80ee386a5f81122501ec75672f475da34784196690762f4b"}, + {file = "aiohttp-3.8.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:87f44875f2804bc0511a69ce44a9595d5944837a62caecc8490bbdb0e18b1342"}, + {file = "aiohttp-3.8.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:527b3b87b24844ea7865284aabfab08eb0faf599b385b03c2aa91fc6edd6e4b6"}, + {file = "aiohttp-3.8.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:d5ba88df9aa5e2f806650fcbeedbe4f6e8736e92fc0e73b0400538fd25a4dd96"}, + {file = "aiohttp-3.8.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:e7b8813be97cab8cb52b1375f41f8e6804f6507fe4660152e8ca5c48f0436017"}, + {file = "aiohttp-3.8.3-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:2dea10edfa1a54098703cb7acaa665c07b4e7568472a47f4e64e6319d3821ccf"}, + {file = "aiohttp-3.8.3-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:713d22cd9643ba9025d33c4af43943c7a1eb8547729228de18d3e02e278472b6"}, + {file = "aiohttp-3.8.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2d252771fc85e0cf8da0b823157962d70639e63cb9b578b1dec9868dd1f4f937"}, + {file = "aiohttp-3.8.3-cp38-cp38-win32.whl", hash = "sha256:66bd5f950344fb2b3dbdd421aaa4e84f4411a1a13fca3aeb2bcbe667f80c9f76"}, + {file = "aiohttp-3.8.3-cp38-cp38-win_amd64.whl", hash = "sha256:84b14f36e85295fe69c6b9789b51a0903b774046d5f7df538176516c3e422446"}, + {file = "aiohttp-3.8.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:16c121ba0b1ec2b44b73e3a8a171c4f999b33929cd2397124a8c7fcfc8cd9e06"}, + {file = "aiohttp-3.8.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8d6aaa4e7155afaf994d7924eb290abbe81a6905b303d8cb61310a2aba1c68ba"}, + {file = "aiohttp-3.8.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:43046a319664a04b146f81b40e1545d4c8ac7b7dd04c47e40bf09f65f2437346"}, + {file = "aiohttp-3.8.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:599418aaaf88a6d02a8c515e656f6faf3d10618d3dd95866eb4436520096c84b"}, + {file = "aiohttp-3.8.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:92a2964319d359f494f16011e23434f6f8ef0434acd3cf154a6b7bec511e2fb7"}, + {file = "aiohttp-3.8.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:73a4131962e6d91109bca6536416aa067cf6c4efb871975df734f8d2fd821b37"}, + {file = "aiohttp-3.8.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:598adde339d2cf7d67beaccda3f2ce7c57b3b412702f29c946708f69cf8222aa"}, + {file = "aiohttp-3.8.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:75880ed07be39beff1881d81e4a907cafb802f306efd6d2d15f2b3c69935f6fb"}, + {file = "aiohttp-3.8.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:a0239da9fbafd9ff82fd67c16704a7d1bccf0d107a300e790587ad05547681c8"}, + {file = "aiohttp-3.8.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:4e3a23ec214e95c9fe85a58470b660efe6534b83e6cbe38b3ed52b053d7cb6ad"}, + {file = "aiohttp-3.8.3-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:47841407cc89a4b80b0c52276f3cc8138bbbfba4b179ee3acbd7d77ae33f7ac4"}, + {file = "aiohttp-3.8.3-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:54d107c89a3ebcd13228278d68f1436d3f33f2dd2af5415e3feaeb1156e1a62c"}, + {file = "aiohttp-3.8.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:c37c5cce780349d4d51739ae682dec63573847a2a8dcb44381b174c3d9c8d403"}, + {file = "aiohttp-3.8.3-cp39-cp39-win32.whl", hash = "sha256:f178d2aadf0166be4df834c4953da2d7eef24719e8aec9a65289483eeea9d618"}, + {file = "aiohttp-3.8.3-cp39-cp39-win_amd64.whl", hash = "sha256:88e5be56c231981428f4f506c68b6a46fa25c4123a2e86d156c58a8369d31ab7"}, + {file = "aiohttp-3.8.3.tar.gz", hash = "sha256:3828fb41b7203176b82fe5d699e0d845435f2374750a44b480ea6b930f6be269"}, +] [package.dependencies] aiosignal = ">=1.1.2" @@ -52,6 +151,10 @@ description = "aiosignal: a list of registered asynchronous callbacks" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "aiosignal-1.3.1-py3-none-any.whl", hash = "sha256:f8376fb07dd1e86a584e4fcdec80b36b7f81aac666ebc724e2c090300dd83b17"}, + {file = "aiosignal-1.3.1.tar.gz", hash = "sha256:54cd96e15e1649b75d6c87526a6ff0b6c1b0dd3459f43d9ca11d48c339b68cfc"}, +] [package.dependencies] frozenlist = ">=1.1.0" @@ -63,6 +166,10 @@ description = "A database migration tool for SQLAlchemy." category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "alembic-1.9.1-py3-none-any.whl", hash = "sha256:a9781ed0979a20341c2cbb56bd22bd8db4fc1913f955e705444bd3a97c59fa32"}, + {file = "alembic-1.9.1.tar.gz", hash = "sha256:f9f76e41061f5ebe27d4fe92600df9dd612521a7683f904dab328ba02cffa5a2"}, +] [package.dependencies] Mako = "*" @@ -78,6 +185,10 @@ description = "High level compatibility layer for multiple asynchronous event lo category = "main" optional = false python-versions = ">=3.6.2" +files = [ + {file = "anyio-3.6.2-py3-none-any.whl", hash = "sha256:fbbe32bd270d2a2ef3ed1c5d45041250284e31fc0a4df4a5a6071842051a51e3"}, + {file = "anyio-3.6.2.tar.gz", hash = "sha256:25ea0d673ae30af41a0c442f81cf3b38c7e79fdc7b60335a4c14e05eb0947421"}, +] [package.dependencies] idna = ">=2.8" @@ -95,6 +206,10 @@ description = "Disable App Nap on macOS >= 10.9" category = "dev" optional = false python-versions = "*" +files = [ + {file = "appnope-0.1.3-py2.py3-none-any.whl", hash = "sha256:265a455292d0bd8a72453494fa24df5a11eb18373a60c7c0430889f22548605e"}, + {file = "appnope-0.1.3.tar.gz", hash = "sha256:02bd91c4de869fbb1e1c50aafc4098827a7a54ab2f39d9dcba6c9547ed920e24"}, +] [[package]] name = "asgi-testclient" @@ -103,6 +218,7 @@ description = "Test Clietn for ASGI web applications" category = "dev" optional = false python-versions = "^3.7" +files = [] develop = false [package.source] @@ -118,6 +234,10 @@ description = "ASGI specs, helper code, and adapters" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "asgiref-3.6.0-py3-none-any.whl", hash = "sha256:71e68008da809b957b7ee4b43dbccff33d1b23519fb8344e33f049897077afac"}, + {file = "asgiref-3.6.0.tar.gz", hash = "sha256:9567dfe7bd8d3c8c892227827c41cce860b368104c3431da67a0c5a65a949506"}, +] [package.extras] tests = ["mypy (>=0.800)", "pytest", "pytest-asyncio"] @@ -129,6 +249,10 @@ description = "Annotate AST trees with source code positions" category = "dev" optional = false python-versions = "*" +files = [ + {file = "asttokens-2.2.1-py2.py3-none-any.whl", hash = "sha256:6b0ac9e93fb0335014d382b8fa9b3afa7df546984258005da0b9e7095b3deb1c"}, + {file = "asttokens-2.2.1.tar.gz", hash = "sha256:4622110b2a6f30b77e1473affaa97e711bc2f07d3f10848420ff1898edbe94f3"}, +] [package.dependencies] six = "*" @@ -143,6 +267,10 @@ description = "Simple lru_cache for asyncio" category = "main" optional = false python-versions = ">=3.6" +files = [ + {file = "async-lru-1.0.3.tar.gz", hash = "sha256:c2cb9b2915eb14e6cf3e717154b40f715bf90e596d73623677affd0d1fbcd32a"}, + {file = "async_lru-1.0.3-py3-none-any.whl", hash = "sha256:ea692c303feb6211ff260d230dae1583636f13e05c9ae616eada77855b7f415c"}, +] [[package]] name = "async-timeout" @@ -151,6 +279,10 @@ description = "Timeout context manager for asyncio programs" category = "main" optional = false python-versions = ">=3.6" +files = [ + {file = "async-timeout-4.0.2.tar.gz", hash = "sha256:2163e1640ddb52b7a8c80d0a67a08587e5d245cc9c553a74a847056bc2976b15"}, + {file = "async_timeout-4.0.2-py3-none-any.whl", hash = "sha256:8ca1e4fcf50d07413d66d1a5e416e42cfdf5851c981d679a09851a6853383b3c"}, +] [[package]] name = "asyncpg" @@ -159,6 +291,34 @@ description = "An asyncio PostgreSQL driver" category = "main" optional = false python-versions = ">=3.6.0" +files = [ + {file = "asyncpg-0.25.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:bf5e3408a14a17d480f36ebaf0401a12ff6ae5457fdf45e4e2775c51cc9517d3"}, + {file = "asyncpg-0.25.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:2bc197fc4aca2fd24f60241057998124012469d2e414aed3f992579db0c88e3a"}, + {file = "asyncpg-0.25.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:1a70783f6ffa34cc7dd2de20a873181414a34fd35a4a208a1f1a7f9f695e4ec4"}, + {file = "asyncpg-0.25.0-cp310-cp310-win32.whl", hash = "sha256:43cde84e996a3afe75f325a68300093425c2f47d340c0fc8912765cf24a1c095"}, + {file = "asyncpg-0.25.0-cp310-cp310-win_amd64.whl", hash = "sha256:56d88d7ef4341412cd9c68efba323a4519c916979ba91b95d4c08799d2ff0c09"}, + {file = "asyncpg-0.25.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:a84d30e6f850bac0876990bcd207362778e2208df0bee8be8da9f1558255e634"}, + {file = "asyncpg-0.25.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:beaecc52ad39614f6ca2e48c3ca15d56e24a2c15cbfdcb764a4320cc45f02fd5"}, + {file = "asyncpg-0.25.0-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:6f8f5fc975246eda83da8031a14004b9197f510c41511018e7b1bedde6968e92"}, + {file = "asyncpg-0.25.0-cp36-cp36m-win32.whl", hash = "sha256:ddb4c3263a8d63dcde3d2c4ac1c25206bfeb31fa83bd70fd539e10f87739dee4"}, + {file = "asyncpg-0.25.0-cp36-cp36m-win_amd64.whl", hash = "sha256:bf6dc9b55b9113f39eaa2057337ce3f9ef7de99a053b8a16360395ce588925cd"}, + {file = "asyncpg-0.25.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:acb311722352152936e58a8ee3c5b8e791b24e84cd7d777c414ff05b3530ca68"}, + {file = "asyncpg-0.25.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:0a61fb196ce4dae2f2fa26eb20a778db21bbee484d2e798cb3cc988de13bdd1b"}, + {file = "asyncpg-0.25.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:2633331cbc8429030b4f20f712f8d0fbba57fa8555ee9b2f45f981b81328b256"}, + {file = "asyncpg-0.25.0-cp37-cp37m-win32.whl", hash = "sha256:863d36eba4a7caa853fd7d83fad5fd5306f050cc2fe6e54fbe10cdb30420e5e9"}, + {file = "asyncpg-0.25.0-cp37-cp37m-win_amd64.whl", hash = "sha256:fe471ccd915b739ca65e2e4dbd92a11b44a5b37f2e38f70827a1c147dafe0fa8"}, + {file = "asyncpg-0.25.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:72a1e12ea0cf7c1e02794b697e3ca967b2360eaa2ce5d4bfdd8604ec2d6b774b"}, + {file = "asyncpg-0.25.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:4327f691b1bdb222df27841938b3e04c14068166b3a97491bec2cb982f49f03e"}, + {file = "asyncpg-0.25.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:739bbd7f89a2b2f6bc44cb8bf967dab12c5bc714fcbe96e68d512be45ecdf962"}, + {file = "asyncpg-0.25.0-cp38-cp38-win32.whl", hash = "sha256:18d49e2d93a7139a2fdbd113e320cc47075049997268a61bfbe0dde680c55471"}, + {file = "asyncpg-0.25.0-cp38-cp38-win_amd64.whl", hash = "sha256:191fe6341385b7fdea7dbdcf47fd6db3fd198827dcc1f2b228476d13c05a03c6"}, + {file = "asyncpg-0.25.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:52fab7f1b2c29e187dd8781fce896249500cf055b63471ad66332e537e9b5f7e"}, + {file = "asyncpg-0.25.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:a738f1b2876f30d710d3dc1e7858160a0afe1603ba16bf5f391f5316eb0ed855"}, + {file = "asyncpg-0.25.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5e4105f57ad1e8fbc8b1e535d8fcefa6ce6c71081228f08680c6dea24384ff0e"}, + {file = "asyncpg-0.25.0-cp39-cp39-win32.whl", hash = "sha256:f55918ded7b85723a5eaeb34e86e7b9280d4474be67df853ab5a7fa0cc7c6bf2"}, + {file = "asyncpg-0.25.0-cp39-cp39-win_amd64.whl", hash = "sha256:649e2966d98cc48d0646d9a4e29abecd8b59d38d55c256d5c857f6b27b7407ac"}, + {file = "asyncpg-0.25.0.tar.gz", hash = "sha256:63f8e6a69733b285497c2855464a34de657f2cccd25aeaeeb5071872e9382540"}, +] [package.extras] dev = ["Cython (>=0.29.24,<0.30.0)", "Sphinx (>=4.1.2,<4.2.0)", "flake8 (>=3.9.2,<3.10.0)", "pycodestyle (>=2.7.0,<2.8.0)", "pytest (>=6.0)", "sphinx-rtd-theme (>=0.5.2,<0.6.0)", "sphinxcontrib-asyncio (>=0.3.0,<0.4.0)", "uvloop (>=0.15.3)"] @@ -172,6 +332,10 @@ description = "Classes Without Boilerplate" category = "main" optional = false python-versions = ">=3.6" +files = [ + {file = "attrs-22.2.0-py3-none-any.whl", hash = "sha256:29e95c7f6778868dbd49170f98f8818f78f3dc5e0e37c0b1f474e3561b240836"}, + {file = "attrs-22.2.0.tar.gz", hash = "sha256:c9227bfc2f01993c03f68db37d1d15c9690188323c067c641f1a35ca58185f99"}, +] [package.extras] cov = ["attrs[tests]", "coverage-enable-subprocess", "coverage[toml] (>=5.3)"] @@ -187,6 +351,7 @@ description = "The ultimate Python library in building OAuth and OpenID Connect category = "main" optional = false python-versions = "*" +files = [] develop = false [package.dependencies] @@ -205,6 +370,10 @@ description = "Specifications for callback functions passed in to an API" category = "dev" optional = false python-versions = "*" +files = [ + {file = "backcall-0.2.0-py2.py3-none-any.whl", hash = "sha256:fbbce6a29f263178a1f7915c1940bde0ec2b2a967566fe1c65c1dfb7422bd255"}, + {file = "backcall-0.2.0.tar.gz", hash = "sha256:5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e"}, +] [[package]] name = "backoff" @@ -213,6 +382,10 @@ description = "Function decoration for backoff and retry" category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "backoff-1.11.1-py2.py3-none-any.whl", hash = "sha256:61928f8fa48d52e4faa81875eecf308eccfb1016b018bb6bd21e05b5d90a96c5"}, + {file = "backoff-1.11.1.tar.gz", hash = "sha256:ccb962a2378418c667b3c979b504fdeb7d9e0d29c0579e3b13b86467177728cb"}, +] [[package]] name = "backports-cached-property" @@ -221,6 +394,10 @@ description = "cached_property() - computed once per instance, cached as attribu category = "main" optional = false python-versions = ">=3.6.0" +files = [ + {file = "backports.cached-property-1.0.2.tar.gz", hash = "sha256:9306f9eed6ec55fd156ace6bc1094e2c86fae5fb2bf07b6a9c00745c656e75dd"}, + {file = "backports.cached_property-1.0.2-py3-none-any.whl", hash = "sha256:baeb28e1cd619a3c9ab8941431fe34e8490861fb998c6c4590693d50171db0cc"}, +] [[package]] name = "base58" @@ -229,6 +406,10 @@ description = "Base58 and Base58Check implementation." category = "main" optional = false python-versions = ">=3.5" +files = [ + {file = "base58-2.1.1-py3-none-any.whl", hash = "sha256:11a36f4d3ce51dfc1043f3218591ac4eb1ceb172919cebe05b52a5bcc8d245c2"}, + {file = "base58-2.1.1.tar.gz", hash = "sha256:c5d0cb3f5b6e81e8e35da5754388ddcc6d0d14b6c6a132cb93d69ed580a7278c"}, +] [package.extras] tests = ["PyHamcrest (>=2.0.2)", "mypy", "pytest (>=4.6)", "pytest-benchmark", "pytest-cov", "pytest-flake8"] @@ -240,6 +421,10 @@ description = "Reference implementation for Bech32 and segwit addresses." category = "main" optional = false python-versions = ">=3.5" +files = [ + {file = "bech32-1.2.0-py3-none-any.whl", hash = "sha256:990dc8e5a5e4feabbdf55207b5315fdd9b73db40be294a19b3752cde9e79d981"}, + {file = "bech32-1.2.0.tar.gz", hash = "sha256:7d6db8214603bd7871fcfa6c0826ef68b85b0abd90fa21c285a9c5e21d2bd899"}, +] [[package]] name = "binapy" @@ -248,6 +433,10 @@ description = "Binary Data manipulation, for humans." category = "main" optional = false python-versions = ">=3.7,<4.0" +files = [ + {file = "binapy-0.6.0-py3-none-any.whl", hash = "sha256:6ffc2812df7f43a50ed45f451af8a6f851c87e347e3a071bb0f423a1a60d8a39"}, + {file = "binapy-0.6.0.tar.gz", hash = "sha256:1054b0ef1e6eccd941d4b23167ba4c5b1f5938960750686c421edc71af543fa7"}, +] [package.dependencies] typing-extensions = ">=4.3.0,<5.0.0" @@ -259,6 +448,11 @@ description = "Simple construction, analysis and modification of binary data." category = "main" optional = false python-versions = "*" +files = [ + {file = "bitstring-3.1.9-py2-none-any.whl", hash = "sha256:e3e340e58900a948787a05e8c08772f1ccbe133f6f41fe3f0fa19a18a22bbf4f"}, + {file = "bitstring-3.1.9-py3-none-any.whl", hash = "sha256:0de167daa6a00c9386255a7cac931b45e6e24e0ad7ea64f1f92a64ac23ad4578"}, + {file = "bitstring-3.1.9.tar.gz", hash = "sha256:a5848a3f63111785224dca8bb4c0a75b62ecdef56a042c8d6be74b16f7e860e7"}, +] [[package]] name = "boltons" @@ -267,6 +461,10 @@ description = "When they're not builtins, they're boltons." category = "main" optional = false python-versions = "*" +files = [ + {file = "boltons-21.0.0-py2.py3-none-any.whl", hash = "sha256:b9bb7b58b2b420bbe11a6025fdef6d3e5edc9f76a42fb467afe7ca212ef9948b"}, + {file = "boltons-21.0.0.tar.gz", hash = "sha256:65e70a79a731a7fe6e98592ecfb5ccf2115873d01dbc576079874629e5c90f13"}, +] [[package]] name = "bugsnag" @@ -275,6 +473,10 @@ description = "Automatic error monitoring for django, flask, etc." category = "main" optional = false python-versions = ">=3.5, <4" +files = [ + {file = "bugsnag-4.3.0-py3-none-any.whl", hash = "sha256:bf4ca75d85d9ffd18fa844570cd1ad56b2175810dbb7c6f214417b750debf7db"}, + {file = "bugsnag-4.3.0.tar.gz", hash = "sha256:f6ae82a7fade5092775c6313f4157ee33e40c4974ff22cdfce08cea52f38fd37"}, +] [package.dependencies] webob = "*" @@ -289,6 +491,10 @@ description = "Extensible memoizing collections and decorators" category = "main" optional = false python-versions = "~=3.7" +files = [ + {file = "cachetools-5.2.0-py3-none-any.whl", hash = "sha256:f9f17d2aec496a9aa6b76f53e3b614c965223c061982d434d160f930c698a9db"}, + {file = "cachetools-5.2.0.tar.gz", hash = "sha256:6a94c6402995a99c3970cc7e4884bb60b4a8639938157eeed436098bf9831757"}, +] [[package]] name = "cairocffi" @@ -297,6 +503,9 @@ description = "cffi-based cairo bindings for Python" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "cairocffi-1.4.0.tar.gz", hash = "sha256:509339b32ccd8d7b00c2204c32736cde78db53a32e6a162d312478d25626cd9a"}, +] [package.dependencies] cffi = ">=1.1.0" @@ -313,6 +522,10 @@ description = "A Simple SVG Converter based on Cairo" category = "main" optional = false python-versions = ">=3.5" +files = [ + {file = "CairoSVG-2.6.0-py3-none-any.whl", hash = "sha256:05069d5316e9f02f33028942f96929e01782db41e6ff07d8454c8d021b5b52f3"}, + {file = "CairoSVG-2.6.0.tar.gz", hash = "sha256:d5ec93e90101b3b6e82aa245d0546ee9b016cfda0b6344675159830d853d5d04"}, +] [package.dependencies] cairocffi = "*" @@ -332,6 +545,10 @@ description = "Python package for providing Mozilla's CA Bundle." category = "main" optional = false python-versions = ">=3.6" +files = [ + {file = "certifi-2022.12.7-py3-none-any.whl", hash = "sha256:4ad3232f5e926d6718ec31cfc1fcadfde020920e278684144551c91769c7bc18"}, + {file = "certifi-2022.12.7.tar.gz", hash = "sha256:35824b4c3a97115964b408844d64aa14db1cc518f6562e8d7261699d1350a9e3"}, +] [[package]] name = "cffi" @@ -340,6 +557,72 @@ description = "Foreign Function Interface for Python calling C code." category = "main" optional = false python-versions = "*" +files = [ + {file = "cffi-1.15.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:a66d3508133af6e8548451b25058d5812812ec3798c886bf38ed24a98216fab2"}, + {file = "cffi-1.15.1-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:470c103ae716238bbe698d67ad020e1db9d9dba34fa5a899b5e21577e6d52ed2"}, + {file = "cffi-1.15.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:9ad5db27f9cabae298d151c85cf2bad1d359a1b9c686a275df03385758e2f914"}, + {file = "cffi-1.15.1-cp27-cp27m-win32.whl", hash = "sha256:b3bbeb01c2b273cca1e1e0c5df57f12dce9a4dd331b4fa1635b8bec26350bde3"}, + {file = "cffi-1.15.1-cp27-cp27m-win_amd64.whl", hash = "sha256:e00b098126fd45523dd056d2efba6c5a63b71ffe9f2bbe1a4fe1716e1d0c331e"}, + {file = "cffi-1.15.1-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:d61f4695e6c866a23a21acab0509af1cdfd2c013cf256bbf5b6b5e2695827162"}, + {file = "cffi-1.15.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:ed9cb427ba5504c1dc15ede7d516b84757c3e3d7868ccc85121d9310d27eed0b"}, + {file = "cffi-1.15.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:39d39875251ca8f612b6f33e6b1195af86d1b3e60086068be9cc053aa4376e21"}, + {file = "cffi-1.15.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:285d29981935eb726a4399badae8f0ffdff4f5050eaa6d0cfc3f64b857b77185"}, + {file = "cffi-1.15.1-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3eb6971dcff08619f8d91607cfc726518b6fa2a9eba42856be181c6d0d9515fd"}, + {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:21157295583fe8943475029ed5abdcf71eb3911894724e360acff1d61c1d54bc"}, + {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5635bd9cb9731e6d4a1132a498dd34f764034a8ce60cef4f5319c0541159392f"}, + {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2012c72d854c2d03e45d06ae57f40d78e5770d252f195b93f581acf3ba44496e"}, + {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd86c085fae2efd48ac91dd7ccffcfc0571387fe1193d33b6394db7ef31fe2a4"}, + {file = "cffi-1.15.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:fa6693661a4c91757f4412306191b6dc88c1703f780c8234035eac011922bc01"}, + {file = "cffi-1.15.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:59c0b02d0a6c384d453fece7566d1c7e6b7bae4fc5874ef2ef46d56776d61c9e"}, + {file = "cffi-1.15.1-cp310-cp310-win32.whl", hash = "sha256:cba9d6b9a7d64d4bd46167096fc9d2f835e25d7e4c121fb2ddfc6528fb0413b2"}, + {file = "cffi-1.15.1-cp310-cp310-win_amd64.whl", hash = "sha256:ce4bcc037df4fc5e3d184794f27bdaab018943698f4ca31630bc7f84a7b69c6d"}, + {file = "cffi-1.15.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3d08afd128ddaa624a48cf2b859afef385b720bb4b43df214f85616922e6a5ac"}, + {file = "cffi-1.15.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3799aecf2e17cf585d977b780ce79ff0dc9b78d799fc694221ce814c2c19db83"}, + {file = "cffi-1.15.1-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a591fe9e525846e4d154205572a029f653ada1a78b93697f3b5a8f1f2bc055b9"}, + {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3548db281cd7d2561c9ad9984681c95f7b0e38881201e157833a2342c30d5e8c"}, + {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91fc98adde3d7881af9b59ed0294046f3806221863722ba7d8d120c575314325"}, + {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:94411f22c3985acaec6f83c6df553f2dbe17b698cc7f8ae751ff2237d96b9e3c"}, + {file = "cffi-1.15.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:03425bdae262c76aad70202debd780501fabeaca237cdfddc008987c0e0f59ef"}, + {file = "cffi-1.15.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:cc4d65aeeaa04136a12677d3dd0b1c0c94dc43abac5860ab33cceb42b801c1e8"}, + {file = "cffi-1.15.1-cp311-cp311-win32.whl", hash = "sha256:a0f100c8912c114ff53e1202d0078b425bee3649ae34d7b070e9697f93c5d52d"}, + {file = "cffi-1.15.1-cp311-cp311-win_amd64.whl", hash = "sha256:04ed324bda3cda42b9b695d51bb7d54b680b9719cfab04227cdd1e04e5de3104"}, + {file = "cffi-1.15.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50a74364d85fd319352182ef59c5c790484a336f6db772c1a9231f1c3ed0cbd7"}, + {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e263d77ee3dd201c3a142934a086a4450861778baaeeb45db4591ef65550b0a6"}, + {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cec7d9412a9102bdc577382c3929b337320c4c4c4849f2c5cdd14d7368c5562d"}, + {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4289fc34b2f5316fbb762d75362931e351941fa95fa18789191b33fc4cf9504a"}, + {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:173379135477dc8cac4bc58f45db08ab45d228b3363adb7af79436135d028405"}, + {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:6975a3fac6bc83c4a65c9f9fcab9e47019a11d3d2cf7f3c0d03431bf145a941e"}, + {file = "cffi-1.15.1-cp36-cp36m-win32.whl", hash = "sha256:2470043b93ff09bf8fb1d46d1cb756ce6132c54826661a32d4e4d132e1977adf"}, + {file = "cffi-1.15.1-cp36-cp36m-win_amd64.whl", hash = "sha256:30d78fbc8ebf9c92c9b7823ee18eb92f2e6ef79b45ac84db507f52fbe3ec4497"}, + {file = "cffi-1.15.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:198caafb44239b60e252492445da556afafc7d1e3ab7a1fb3f0584ef6d742375"}, + {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5ef34d190326c3b1f822a5b7a45f6c4535e2f47ed06fec77d3d799c450b2651e"}, + {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8102eaf27e1e448db915d08afa8b41d6c7ca7a04b7d73af6514df10a3e74bd82"}, + {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5df2768244d19ab7f60546d0c7c63ce1581f7af8b5de3eb3004b9b6fc8a9f84b"}, + {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a8c4917bd7ad33e8eb21e9a5bbba979b49d9a97acb3a803092cbc1133e20343c"}, + {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0e2642fe3142e4cc4af0799748233ad6da94c62a8bec3a6648bf8ee68b1c7426"}, + {file = "cffi-1.15.1-cp37-cp37m-win32.whl", hash = "sha256:e229a521186c75c8ad9490854fd8bbdd9a0c9aa3a524326b55be83b54d4e0ad9"}, + {file = "cffi-1.15.1-cp37-cp37m-win_amd64.whl", hash = "sha256:a0b71b1b8fbf2b96e41c4d990244165e2c9be83d54962a9a1d118fd8657d2045"}, + {file = "cffi-1.15.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:320dab6e7cb2eacdf0e658569d2575c4dad258c0fcc794f46215e1e39f90f2c3"}, + {file = "cffi-1.15.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1e74c6b51a9ed6589199c787bf5f9875612ca4a8a0785fb2d4a84429badaf22a"}, + {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a5c84c68147988265e60416b57fc83425a78058853509c1b0629c180094904a5"}, + {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3b926aa83d1edb5aa5b427b4053dc420ec295a08e40911296b9eb1b6170f6cca"}, + {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:87c450779d0914f2861b8526e035c5e6da0a3199d8f1add1a665e1cbc6fc6d02"}, + {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4f2c9f67e9821cad2e5f480bc8d83b8742896f1242dba247911072d4fa94c192"}, + {file = "cffi-1.15.1-cp38-cp38-win32.whl", hash = "sha256:8b7ee99e510d7b66cdb6c593f21c043c248537a32e0bedf02e01e9553a172314"}, + {file = "cffi-1.15.1-cp38-cp38-win_amd64.whl", hash = "sha256:00a9ed42e88df81ffae7a8ab6d9356b371399b91dbdf0c3cb1e84c03a13aceb5"}, + {file = "cffi-1.15.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:54a2db7b78338edd780e7ef7f9f6c442500fb0d41a5a4ea24fff1c929d5af585"}, + {file = "cffi-1.15.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:fcd131dd944808b5bdb38e6f5b53013c5aa4f334c5cad0c72742f6eba4b73db0"}, + {file = "cffi-1.15.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7473e861101c9e72452f9bf8acb984947aa1661a7704553a9f6e4baa5ba64415"}, + {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6c9a799e985904922a4d207a94eae35c78ebae90e128f0c4e521ce339396be9d"}, + {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3bcde07039e586f91b45c88f8583ea7cf7a0770df3a1649627bf598332cb6984"}, + {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:33ab79603146aace82c2427da5ca6e58f2b3f2fb5da893ceac0c42218a40be35"}, + {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d598b938678ebf3c67377cdd45e09d431369c3b1a5b331058c338e201f12b27"}, + {file = "cffi-1.15.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:db0fbb9c62743ce59a9ff687eb5f4afbe77e5e8403d6697f7446e5f609976f76"}, + {file = "cffi-1.15.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:98d85c6a2bef81588d9227dde12db8a7f47f639f4a17c9ae08e773aa9c697bf3"}, + {file = "cffi-1.15.1-cp39-cp39-win32.whl", hash = "sha256:40f4774f5a9d4f5e344f31a32b5096977b5d48560c5592e2f3d2c4374bd543ee"}, + {file = "cffi-1.15.1-cp39-cp39-win_amd64.whl", hash = "sha256:70df4e3b545a17496c9b3f41f5115e69a4f2e77e94e1d2a8e1070bc0c38c8a3c"}, + {file = "cffi-1.15.1.tar.gz", hash = "sha256:d400bfb9a37b1351253cb402671cea7e89bdecc294e8016a707f6d1d8ac934f9"}, +] [package.dependencies] pycparser = "*" @@ -351,6 +634,10 @@ description = "The Real First Universal Charset Detector. Open, modern and activ category = "main" optional = false python-versions = ">=3.6.0" +files = [ + {file = "charset-normalizer-2.1.1.tar.gz", hash = "sha256:5a3d016c7c547f69d6f81fb0db9449ce888b418b5b9952cc5e6e66843e9dd845"}, + {file = "charset_normalizer-2.1.1-py3-none-any.whl", hash = "sha256:83e9a75d1911279afd89352c68b45348559d1fc0506b054b346651b5e7fee29f"}, +] [package.extras] unicode-backport = ["unicodedata2"] @@ -362,6 +649,10 @@ description = "Composable command line interface toolkit" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "click-8.1.3-py3-none-any.whl", hash = "sha256:bb4d8133cb15a609f44e8213d9b391b0809795062913b383c62be0ee95b1db48"}, + {file = "click-8.1.3.tar.gz", hash = "sha256:7682dc8afb30297001674575ea00d1814d808d6a36af415a82bd481d37ba7b8e"}, +] [package.dependencies] colorama = {version = "*", markers = "platform_system == \"Windows\""} @@ -373,6 +664,10 @@ description = "Cross-platform colored terminal text." category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" +files = [ + {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, + {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, +] [[package]] name = "coverage" @@ -381,6 +676,59 @@ description = "Code coverage measurement for Python" category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "coverage-7.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c1f02d016b9b6b5ad21949a21646714bfa7b32d6041a30f97674f05d6d6996e3"}, + {file = "coverage-7.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a2d4f68e4fa286fb6b00d58a1e87c79840e289d3f6e5dcb912ad7b0fbd9629fb"}, + {file = "coverage-7.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:426895ac9f2938bec193aa998e7a77a3e65d3e46903f348e794b4192b9a5b61e"}, + {file = "coverage-7.0.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dcb708ab06f3f4dfc99e9f84821c9120e5f12113b90fad132311a2cb97525379"}, + {file = "coverage-7.0.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8217f73faf08623acb25fb2affd5d20cbcd8185213db308e46a37e6fd6a56a49"}, + {file = "coverage-7.0.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:bcb57d175ff0cb4ff97fc547c74c1cb8d4c9612003f6d267ee78dad8f23d8b30"}, + {file = "coverage-7.0.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:7d47d666e17e57ef65fefc87229fde262bd5c9039ae8424bc53aa2d8f07dc178"}, + {file = "coverage-7.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:321316a7b979892a13c148a9d37852b5a76f26717e4b911b606a649394629532"}, + {file = "coverage-7.0.2-cp310-cp310-win32.whl", hash = "sha256:420f10c852b9a489cf5a764534669a19f49732a0576c76d9489ebf287f81af6d"}, + {file = "coverage-7.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:a27a8dca0dc6f0944ed9fd83c556d862e227a5cd4220e62af5d4c750389938f0"}, + {file = "coverage-7.0.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ac1033942851bf01f28c76318155ea92d6648aecb924cab81fa23781d095e9ab"}, + {file = "coverage-7.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:36c1a1b6d38ebf8a4335f65226ec36b5d6fd67743fdcbad5c52bdcd46c4f5842"}, + {file = "coverage-7.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c5e1874c601128cf54c1d4b471e915658a334fbc56d7b3c324ddc7511597ea82"}, + {file = "coverage-7.0.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8e133ca2f8141b415ff396ba789bdeffdea8ff9a5c7fc9996ccf591d7d40ee93"}, + {file = "coverage-7.0.2-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4e97b21482aa5c21e049e4755c95955ad71fb54c9488969e2f17cf30922aa5f6"}, + {file = "coverage-7.0.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:8bd466135fb07f693dbdd999a5569ffbc0590e9c64df859243162f0ebee950c8"}, + {file = "coverage-7.0.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:38f281bb9bdd4269c451fed9451203512dadefd64676f14ed1e82c77eb5644fc"}, + {file = "coverage-7.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:7c669be1b01e4b2bf23aa49e987d9bedde0234a7da374a9b77ca5416d7c57002"}, + {file = "coverage-7.0.2-cp311-cp311-win32.whl", hash = "sha256:80583c536e7e010e301002088919d4ea90566d1789ee02551574fdf3faa275ae"}, + {file = "coverage-7.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:a7b018811a0e1d3869d8d0600849953acd355a3a29c6bee0fbd24d7772bcc0a2"}, + {file = "coverage-7.0.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:e8931af864bd599c6af626575a02103ae626f57b34e3af5537d40b040d33d2ad"}, + {file = "coverage-7.0.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a613d60be1a02c7a5184ea5c4227f48c08e0635608b9c17ae2b17efef8f2501"}, + {file = "coverage-7.0.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3fbb59f84c8549113dcdce7c6d16c5731fe53651d0b46c0a25a5ebc7bb655869"}, + {file = "coverage-7.0.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3d40ad86a348c79c614e2b90566267dd6d45f2e6b4d2bfb794d78ea4a4b60b63"}, + {file = "coverage-7.0.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:7e184aa18f921b612ea08666c25dd92a71241c8ed40917f2824219c92289b8c7"}, + {file = "coverage-7.0.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:fd22ee7bff4b5c37bb6385efee1c501b75e29ca40286f037cb91c2182d1348ce"}, + {file = "coverage-7.0.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:3d72e3d20b03e63bd27b1c4d6b754cd93eca82ecc5dd77b99262d5f64862ca35"}, + {file = "coverage-7.0.2-cp37-cp37m-win32.whl", hash = "sha256:5f44ba7c07e0aa4a7a2723b426c254e952da82a33d65b4a52afae4bef74a4203"}, + {file = "coverage-7.0.2-cp37-cp37m-win_amd64.whl", hash = "sha256:efa9d943189321f67f71070c309aa6f6130fa1ec35c9dfd0da0ed238938ce573"}, + {file = "coverage-7.0.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:da458bdc9b0bcd9b8ca85bc73148631b18cc8ba03c47f29f4c017809990351aa"}, + {file = "coverage-7.0.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:87d95eea58fb71f69b4f1c761099a19e0e9cb27d45dc1cc7042523128ee56337"}, + {file = "coverage-7.0.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dfafc350f43fd7dc67df18c940c3b7ed208ebb797abe9fb3047f0c65be8e4c0f"}, + {file = "coverage-7.0.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:46db409fc0c3ee5c859b84c7de9cb507166287d588390889fdf06a1afe452e16"}, + {file = "coverage-7.0.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c8805673b1953313adfc487d5323b4c87864e77057944a0888c98dd2f7a6052f"}, + {file = "coverage-7.0.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:62e5b942378d5f0b87caace567a70dc634ddd4d219a236fa221dc97d2fc412c8"}, + {file = "coverage-7.0.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:a99b2f2dd1236e8d9dc35974a3dc298a408cdfd512b0bb2451798cff1ce63408"}, + {file = "coverage-7.0.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:04691b8e832a900ed15f5bcccc2008fc2d1c8e7411251fd7d1422a84e1d72841"}, + {file = "coverage-7.0.2-cp38-cp38-win32.whl", hash = "sha256:b6936cd38757dd323fefc157823e46436610328f0feb1419a412316f24b77f36"}, + {file = "coverage-7.0.2-cp38-cp38-win_amd64.whl", hash = "sha256:483e120ea324c7fced6126bb9bf0535c71e9233d29cbc7e2fc4560311a5f8a32"}, + {file = "coverage-7.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:4438ba539bef21e288092b30ea2fc30e883d9af5b66ebeaf2fd7c25e2f074e39"}, + {file = "coverage-7.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:3a2d81c95d3b02638ee6ae647edc79769fd29bf5e9e5b6b0c29040579f33c260"}, + {file = "coverage-7.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c40aaf7930680e0e5f3bd6d3d3dc97a7897f53bdce925545c4b241e0c5c3ca6a"}, + {file = "coverage-7.0.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2b31f7f246dbff339b3b76ee81329e3eca5022ce270c831c65e841dbbb40115f"}, + {file = "coverage-7.0.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a6e1c77ff6f10eab496fbbcdaa7dfae84968928a0aadc43ce3c3453cec29bd79"}, + {file = "coverage-7.0.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:8e6c0ca447b557a32642f22d0987be37950eda51c4f19fc788cebc99426284b6"}, + {file = "coverage-7.0.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9de96025ce25b9f4e744fbe558a003e673004af255da9b1f6ec243720ac5deeb"}, + {file = "coverage-7.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:312fd77258bf1044ef4faa82091f2e88216e4b62dcf1a461d3e917144c8b09b7"}, + {file = "coverage-7.0.2-cp39-cp39-win32.whl", hash = "sha256:4d7be755d7544dac2b9814e98366a065d15a16e13847eb1f5473bb714483391e"}, + {file = "coverage-7.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:b6eab230b18458707b5c501548e997e42934b1c189fb4d1b78bf5aacc1c6a137"}, + {file = "coverage-7.0.2-pp37.pp38.pp39-none-any.whl", hash = "sha256:1d732b5dcafed67d81c5b5a0c404c31a61e13148946a3b910a340f72fdd1ec95"}, + {file = "coverage-7.0.2.tar.gz", hash = "sha256:405d8528a0ea07ca516d9007ecad4e1bd10e2eeef27411c6188d78c4e2dfcddc"}, +] [package.extras] toml = ["tomli"] @@ -392,6 +740,31 @@ description = "cryptography is a package which provides cryptographic recipes an category = "main" optional = false python-versions = ">=3.6" +files = [ + {file = "cryptography-39.0.0-cp36-abi3-macosx_10_12_universal2.whl", hash = "sha256:c52a1a6f81e738d07f43dab57831c29e57d21c81a942f4602fac7ee21b27f288"}, + {file = "cryptography-39.0.0-cp36-abi3-macosx_10_12_x86_64.whl", hash = "sha256:80ee674c08aaef194bc4627b7f2956e5ba7ef29c3cc3ca488cf15854838a8f72"}, + {file = "cryptography-39.0.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:887cbc1ea60786e534b00ba8b04d1095f4272d380ebd5f7a7eb4cc274710fad9"}, + {file = "cryptography-39.0.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6f97109336df5c178ee7c9c711b264c502b905c2d2a29ace99ed761533a3460f"}, + {file = "cryptography-39.0.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1a6915075c6d3a5e1215eab5d99bcec0da26036ff2102a1038401d6ef5bef25b"}, + {file = "cryptography-39.0.0-cp36-abi3-manylinux_2_24_x86_64.whl", hash = "sha256:76c24dd4fd196a80f9f2f5405a778a8ca132f16b10af113474005635fe7e066c"}, + {file = "cryptography-39.0.0-cp36-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:bae6c7f4a36a25291b619ad064a30a07110a805d08dc89984f4f441f6c1f3f96"}, + {file = "cryptography-39.0.0-cp36-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:875aea1039d78557c7c6b4db2fe0e9d2413439f4676310a5f269dd342ca7a717"}, + {file = "cryptography-39.0.0-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:f6c0db08d81ead9576c4d94bbb27aed8d7a430fa27890f39084c2d0e2ec6b0df"}, + {file = "cryptography-39.0.0-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:f3ed2d864a2fa1666e749fe52fb8e23d8e06b8012e8bd8147c73797c506e86f1"}, + {file = "cryptography-39.0.0-cp36-abi3-win32.whl", hash = "sha256:f671c1bb0d6088e94d61d80c606d65baacc0d374e67bf895148883461cd848de"}, + {file = "cryptography-39.0.0-cp36-abi3-win_amd64.whl", hash = "sha256:e324de6972b151f99dc078defe8fb1b0a82c6498e37bff335f5bc6b1e3ab5a1e"}, + {file = "cryptography-39.0.0-pp38-pypy38_pp73-macosx_10_12_x86_64.whl", hash = "sha256:754978da4d0457e7ca176f58c57b1f9de6556591c19b25b8bcce3c77d314f5eb"}, + {file = "cryptography-39.0.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1ee1fd0de9851ff32dbbb9362a4d833b579b4a6cc96883e8e6d2ff2a6bc7104f"}, + {file = "cryptography-39.0.0-pp38-pypy38_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:fec8b932f51ae245121c4671b4bbc030880f363354b2f0e0bd1366017d891458"}, + {file = "cryptography-39.0.0-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:407cec680e811b4fc829de966f88a7c62a596faa250fc1a4b520a0355b9bc190"}, + {file = "cryptography-39.0.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:7dacfdeee048814563eaaec7c4743c8aea529fe3dd53127313a792f0dadc1773"}, + {file = "cryptography-39.0.0-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:ad04f413436b0781f20c52a661660f1e23bcd89a0e9bb1d6d20822d048cf2856"}, + {file = "cryptography-39.0.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:50386acb40fbabbceeb2986332f0287f50f29ccf1497bae31cf5c3e7b4f4b34f"}, + {file = "cryptography-39.0.0-pp39-pypy39_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:e5d71c5d5bd5b5c3eebcf7c5c2bb332d62ec68921a8c593bea8c394911a005ce"}, + {file = "cryptography-39.0.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:844ad4d7c3850081dffba91cdd91950038ee4ac525c575509a42d3fc806b83c8"}, + {file = "cryptography-39.0.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:e0a05aee6a82d944f9b4edd6a001178787d1546ec7c6223ee9a848a7ade92e39"}, + {file = "cryptography-39.0.0.tar.gz", hash = "sha256:f964c7dcf7802d133e8dbd1565914fa0194f9d683d82411989889ecd701e8adf"}, +] [package.dependencies] cffi = ">=1.12" @@ -411,6 +784,10 @@ description = "CSS selectors for Python ElementTree" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "cssselect2-0.7.0-py3-none-any.whl", hash = "sha256:fd23a65bfd444595913f02fc71f6b286c29261e354c41d722ca7a261a49b5969"}, + {file = "cssselect2-0.7.0.tar.gz", hash = "sha256:1ccd984dab89fc68955043aca4e1b03e0cf29cad9880f6e28e3ba7a74b14aa5a"}, +] [package.dependencies] tinycss2 = "*" @@ -427,6 +804,10 @@ description = "Async database support for Python." category = "main" optional = false python-versions = ">=3.6" +files = [ + {file = "databases-0.5.5-py3-none-any.whl", hash = "sha256:97d9b9647216d1ab53ca61c059412b5c7b6e1f0bf8ce985477982ebcc7f278f3"}, + {file = "databases-0.5.5.tar.gz", hash = "sha256:02c6b016c1c951c21cca281dc8e2e002c60dc44026c0084aabbd8c37514aeb37"}, +] [package.dependencies] sqlalchemy = ">=1.4,<1.5" @@ -445,6 +826,10 @@ description = "Decorators for Humans" category = "dev" optional = false python-versions = ">=3.5" +files = [ + {file = "decorator-5.1.1-py3-none-any.whl", hash = "sha256:b8c3f85900b9dc423225913c5aace94729fe1fa9763b38939a95226f02d37186"}, + {file = "decorator-5.1.1.tar.gz", hash = "sha256:637996211036b6385ef91435e4fae22989472f9d571faba8927ba8253acbc330"}, +] [[package]] name = "defusedxml" @@ -453,6 +838,10 @@ description = "XML bomb protection for Python stdlib modules" category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "defusedxml-0.7.1-py2.py3-none-any.whl", hash = "sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61"}, + {file = "defusedxml-0.7.1.tar.gz", hash = "sha256:1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69"}, +] [[package]] name = "deprecated" @@ -461,6 +850,10 @@ description = "Python @deprecated decorator to deprecate old python classes, fun category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "Deprecated-1.2.13-py2.py3-none-any.whl", hash = "sha256:64756e3e14c8c5eea9795d93c524551432a0be75629f8f29e67ab8caf076c76d"}, + {file = "Deprecated-1.2.13.tar.gz", hash = "sha256:43ac5335da90c31c24ba028af536a91d41d53f9e6901ddb021bcc572ce44e38d"}, +] [package.dependencies] wrapt = ">=1.10,<2" @@ -475,6 +868,10 @@ description = "DNS toolkit" category = "main" optional = false python-versions = ">=3.6,<4.0" +files = [ + {file = "dnspython-2.2.1-py3-none-any.whl", hash = "sha256:a851e51367fb93e9e1361732c1d60dab63eff98712e503ea7d92e6eccb109b4f"}, + {file = "dnspython-2.2.1.tar.gz", hash = "sha256:0f7569a4a6ff151958b64304071d370daa3243d15941a7beedf0c9fe5105603e"}, +] [package.extras] curio = ["curio (>=1.2,<2.0)", "sniffio (>=1.1,<2.0)"] @@ -491,6 +888,10 @@ description = "ECDSA cryptographic signature library (pure python)" category = "main" optional = false python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" +files = [ + {file = "ecdsa-0.17.0-py2.py3-none-any.whl", hash = "sha256:5cf31d5b33743abe0dfc28999036c849a69d548f994b535e527ee3cb7f3ef676"}, + {file = "ecdsa-0.17.0.tar.gz", hash = "sha256:b9f500bb439e4153d0330610f5d26baaf18d17b8ced1bc54410d189385ea68aa"}, +] [package.dependencies] six = ">=1.9.0" @@ -506,6 +907,10 @@ description = "A robust email address syntax and deliverability validation libra category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" +files = [ + {file = "email_validator-1.3.0-py2.py3-none-any.whl", hash = "sha256:816073f2a7cffef786b29928f58ec16cdac42710a53bb18aa94317e3e145ec5c"}, + {file = "email_validator-1.3.0.tar.gz", hash = "sha256:553a66f8be2ec2dea641ae1d3f29017ab89e9d603d4a25cdaac39eefa283d769"}, +] [package.dependencies] dnspython = ">=1.15.0" @@ -518,6 +923,10 @@ description = "Backport of PEP 654 (exception groups)" category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "exceptiongroup-1.1.0-py3-none-any.whl", hash = "sha256:327cbda3da756e2de031a3107b81ab7b3770a602c4d16ca618298c526f4bec1e"}, + {file = "exceptiongroup-1.1.0.tar.gz", hash = "sha256:bcb67d800a4497e1b404c2dd44fca47d3b7a5e5433dbab67f96c1a685cdfdf23"}, +] [package.extras] test = ["pytest (>=6)"] @@ -529,6 +938,10 @@ description = "Get the currently executing AST node of a frame, and other inform category = "dev" optional = false python-versions = "*" +files = [ + {file = "executing-1.2.0-py2.py3-none-any.whl", hash = "sha256:0314a69e37426e3608aada02473b4161d4caf5a4b244d1d0c48072b8fee7bacc"}, + {file = "executing-1.2.0.tar.gz", hash = "sha256:19da64c18d2d851112f09c287f8d3dbbdf725ab0e569077efb6cdcbd3497c107"}, +] [package.extras] tests = ["asttokens", "littleutils", "pytest", "rich"] @@ -540,6 +953,10 @@ description = "A command-line application framework (and CLI parser). Friendly f category = "main" optional = false python-versions = "*" +files = [ + {file = "face-22.0.0-py3-none-any.whl", hash = "sha256:344fe31562d0f6f444a45982418f3793d4b14f9abb98ccca1509d22e0a3e7e35"}, + {file = "face-22.0.0.tar.gz", hash = "sha256:d5d692f90bc8f5987b636e47e36384b9bbda499aaf0a77aa0b0bbe834c76923d"}, +] [package.dependencies] boltons = ">=20.0.0" @@ -551,6 +968,10 @@ description = "FastAPI framework, high performance, easy to learn, fast to code, category = "main" optional = false python-versions = ">=3.6.1" +files = [ + {file = "fastapi-0.77.1-py3-none-any.whl", hash = "sha256:041d8935a13c8f22a7ef80c76d8eea54953c44476d7057e7734138ee8951b9dc"}, + {file = "fastapi-0.77.1.tar.gz", hash = "sha256:6dfa715a334d1fafedcea33d74c7382afd2ce123093f83be2f4e322e89d45e22"}, +] [package.dependencies] pydantic = ">=1.6.2,<1.7 || >1.7,<1.7.1 || >1.7.1,<1.7.2 || >1.7.2,<1.7.3 || >1.7.3,<1.8 || >1.8,<1.8.1 || >1.8.1,<2.0.0" @@ -569,6 +990,10 @@ description = "A debug toolbar for FastAPI." category = "main" optional = false python-versions = ">=3.6.2,<4.0.0" +files = [ + {file = "fastapi-debug-toolbar-0.2.1.tar.gz", hash = "sha256:2b331f15da2275c1371322d5288e591db7ae4b37e4f1beedc1c3e1ee05160874"}, + {file = "fastapi_debug_toolbar-0.2.1-py3-none-any.whl", hash = "sha256:084ca80c7abc97fb240d88f4d9da34360538531a4992a7251df71611fcb2f6a5"}, +] [package.dependencies] aiofiles = ">=0.2.1" @@ -585,6 +1010,10 @@ description = "the modular source code checker: pep8 pyflakes and co" category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "flake8-4.0.1-py2.py3-none-any.whl", hash = "sha256:479b1304f72536a55948cb40a32dce8bb0ffe3501e26eaf292c7e60eb5e0428d"}, + {file = "flake8-4.0.1.tar.gz", hash = "sha256:806e034dda44114815e23c16ef92f95c91e4c71100ff52813adf7132a6ad870d"}, +] [package.dependencies] mccabe = ">=0.6.0,<0.7.0" @@ -598,6 +1027,10 @@ description = "Let your Python tests travel through time" category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "freezegun-1.2.2-py3-none-any.whl", hash = "sha256:ea1b963b993cb9ea195adbd893a48d573fda951b0da64f60883d7e988b606c9f"}, + {file = "freezegun-1.2.2.tar.gz", hash = "sha256:cd22d1ba06941384410cd967d8a99d5ae2442f57dfafeff2fda5de8dc5c05446"}, +] [package.dependencies] python-dateutil = ">=2.7" @@ -609,6 +1042,82 @@ description = "A list-like structure which implements collections.abc.MutableSeq category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "frozenlist-1.3.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ff8bf625fe85e119553b5383ba0fb6aa3d0ec2ae980295aaefa552374926b3f4"}, + {file = "frozenlist-1.3.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:dfbac4c2dfcc082fcf8d942d1e49b6aa0766c19d3358bd86e2000bf0fa4a9cf0"}, + {file = "frozenlist-1.3.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:b1c63e8d377d039ac769cd0926558bb7068a1f7abb0f003e3717ee003ad85530"}, + {file = "frozenlist-1.3.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7fdfc24dcfce5b48109867c13b4cb15e4660e7bd7661741a391f821f23dfdca7"}, + {file = "frozenlist-1.3.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2c926450857408e42f0bbc295e84395722ce74bae69a3b2aa2a65fe22cb14b99"}, + {file = "frozenlist-1.3.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1841e200fdafc3d51f974d9d377c079a0694a8f06de2e67b48150328d66d5483"}, + {file = "frozenlist-1.3.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f470c92737afa7d4c3aacc001e335062d582053d4dbe73cda126f2d7031068dd"}, + {file = "frozenlist-1.3.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:783263a4eaad7c49983fe4b2e7b53fa9770c136c270d2d4bbb6d2192bf4d9caf"}, + {file = "frozenlist-1.3.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:924620eef691990dfb56dc4709f280f40baee568c794b5c1885800c3ecc69816"}, + {file = "frozenlist-1.3.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:ae4dc05c465a08a866b7a1baf360747078b362e6a6dbeb0c57f234db0ef88ae0"}, + {file = "frozenlist-1.3.3-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:bed331fe18f58d844d39ceb398b77d6ac0b010d571cba8267c2e7165806b00ce"}, + {file = "frozenlist-1.3.3-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:02c9ac843e3390826a265e331105efeab489ffaf4dd86384595ee8ce6d35ae7f"}, + {file = "frozenlist-1.3.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:9545a33965d0d377b0bc823dcabf26980e77f1b6a7caa368a365a9497fb09420"}, + {file = "frozenlist-1.3.3-cp310-cp310-win32.whl", hash = "sha256:d5cd3ab21acbdb414bb6c31958d7b06b85eeb40f66463c264a9b343a4e238642"}, + {file = "frozenlist-1.3.3-cp310-cp310-win_amd64.whl", hash = "sha256:b756072364347cb6aa5b60f9bc18e94b2f79632de3b0190253ad770c5df17db1"}, + {file = "frozenlist-1.3.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:b4395e2f8d83fbe0c627b2b696acce67868793d7d9750e90e39592b3626691b7"}, + {file = "frozenlist-1.3.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:14143ae966a6229350021384870458e4777d1eae4c28d1a7aa47f24d030e6678"}, + {file = "frozenlist-1.3.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5d8860749e813a6f65bad8285a0520607c9500caa23fea6ee407e63debcdbef6"}, + {file = "frozenlist-1.3.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:23d16d9f477bb55b6154654e0e74557040575d9d19fe78a161bd33d7d76808e8"}, + {file = "frozenlist-1.3.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:eb82dbba47a8318e75f679690190c10a5e1f447fbf9df41cbc4c3afd726d88cb"}, + {file = "frozenlist-1.3.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9309869032abb23d196cb4e4db574232abe8b8be1339026f489eeb34a4acfd91"}, + {file = "frozenlist-1.3.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a97b4fe50b5890d36300820abd305694cb865ddb7885049587a5678215782a6b"}, + {file = "frozenlist-1.3.3-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c188512b43542b1e91cadc3c6c915a82a5eb95929134faf7fd109f14f9892ce4"}, + {file = "frozenlist-1.3.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:303e04d422e9b911a09ad499b0368dc551e8c3cd15293c99160c7f1f07b59a48"}, + {file = "frozenlist-1.3.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:0771aed7f596c7d73444c847a1c16288937ef988dc04fb9f7be4b2aa91db609d"}, + {file = "frozenlist-1.3.3-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:66080ec69883597e4d026f2f71a231a1ee9887835902dbe6b6467d5a89216cf6"}, + {file = "frozenlist-1.3.3-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:41fe21dc74ad3a779c3d73a2786bdf622ea81234bdd4faf90b8b03cad0c2c0b4"}, + {file = "frozenlist-1.3.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:f20380df709d91525e4bee04746ba612a4df0972c1b8f8e1e8af997e678c7b81"}, + {file = "frozenlist-1.3.3-cp311-cp311-win32.whl", hash = "sha256:f30f1928162e189091cf4d9da2eac617bfe78ef907a761614ff577ef4edfb3c8"}, + {file = "frozenlist-1.3.3-cp311-cp311-win_amd64.whl", hash = "sha256:a6394d7dadd3cfe3f4b3b186e54d5d8504d44f2d58dcc89d693698e8b7132b32"}, + {file = "frozenlist-1.3.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:8df3de3a9ab8325f94f646609a66cbeeede263910c5c0de0101079ad541af332"}, + {file = "frozenlist-1.3.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0693c609e9742c66ba4870bcee1ad5ff35462d5ffec18710b4ac89337ff16e27"}, + {file = "frozenlist-1.3.3-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd4210baef299717db0a600d7a3cac81d46ef0e007f88c9335db79f8979c0d3d"}, + {file = "frozenlist-1.3.3-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:394c9c242113bfb4b9aa36e2b80a05ffa163a30691c7b5a29eba82e937895d5e"}, + {file = "frozenlist-1.3.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6327eb8e419f7d9c38f333cde41b9ae348bec26d840927332f17e887a8dcb70d"}, + {file = "frozenlist-1.3.3-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2e24900aa13212e75e5b366cb9065e78bbf3893d4baab6052d1aca10d46d944c"}, + {file = "frozenlist-1.3.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:3843f84a6c465a36559161e6c59dce2f2ac10943040c2fd021cfb70d58c4ad56"}, + {file = "frozenlist-1.3.3-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:84610c1502b2461255b4c9b7d5e9c48052601a8957cd0aea6ec7a7a1e1fb9420"}, + {file = "frozenlist-1.3.3-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:c21b9aa40e08e4f63a2f92ff3748e6b6c84d717d033c7b3438dd3123ee18f70e"}, + {file = "frozenlist-1.3.3-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:efce6ae830831ab6a22b9b4091d411698145cb9b8fc869e1397ccf4b4b6455cb"}, + {file = "frozenlist-1.3.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:40de71985e9042ca00b7953c4f41eabc3dc514a2d1ff534027f091bc74416401"}, + {file = "frozenlist-1.3.3-cp37-cp37m-win32.whl", hash = "sha256:180c00c66bde6146a860cbb81b54ee0df350d2daf13ca85b275123bbf85de18a"}, + {file = "frozenlist-1.3.3-cp37-cp37m-win_amd64.whl", hash = "sha256:9bbbcedd75acdfecf2159663b87f1bb5cfc80e7cd99f7ddd9d66eb98b14a8411"}, + {file = "frozenlist-1.3.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:034a5c08d36649591be1cbb10e09da9f531034acfe29275fc5454a3b101ce41a"}, + {file = "frozenlist-1.3.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ba64dc2b3b7b158c6660d49cdb1d872d1d0bf4e42043ad8d5006099479a194e5"}, + {file = "frozenlist-1.3.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:47df36a9fe24054b950bbc2db630d508cca3aa27ed0566c0baf661225e52c18e"}, + {file = "frozenlist-1.3.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:008a054b75d77c995ea26629ab3a0c0d7281341f2fa7e1e85fa6153ae29ae99c"}, + {file = "frozenlist-1.3.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:841ea19b43d438a80b4de62ac6ab21cfe6827bb8a9dc62b896acc88eaf9cecba"}, + {file = "frozenlist-1.3.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e235688f42b36be2b6b06fc37ac2126a73b75fb8d6bc66dd632aa35286238703"}, + {file = "frozenlist-1.3.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ca713d4af15bae6e5d79b15c10c8522859a9a89d3b361a50b817c98c2fb402a2"}, + {file = "frozenlist-1.3.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9ac5995f2b408017b0be26d4a1d7c61bce106ff3d9e3324374d66b5964325448"}, + {file = "frozenlist-1.3.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:a4ae8135b11652b08a8baf07631d3ebfe65a4c87909dbef5fa0cdde440444ee4"}, + {file = "frozenlist-1.3.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:4ea42116ceb6bb16dbb7d526e242cb6747b08b7710d9782aa3d6732bd8d27649"}, + {file = "frozenlist-1.3.3-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:810860bb4bdce7557bc0febb84bbd88198b9dbc2022d8eebe5b3590b2ad6c842"}, + {file = "frozenlist-1.3.3-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:ee78feb9d293c323b59a6f2dd441b63339a30edf35abcb51187d2fc26e696d13"}, + {file = "frozenlist-1.3.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:0af2e7c87d35b38732e810befb9d797a99279cbb85374d42ea61c1e9d23094b3"}, + {file = "frozenlist-1.3.3-cp38-cp38-win32.whl", hash = "sha256:899c5e1928eec13fd6f6d8dc51be23f0d09c5281e40d9cf4273d188d9feeaf9b"}, + {file = "frozenlist-1.3.3-cp38-cp38-win_amd64.whl", hash = "sha256:7f44e24fa70f6fbc74aeec3e971f60a14dde85da364aa87f15d1be94ae75aeef"}, + {file = "frozenlist-1.3.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:2b07ae0c1edaa0a36339ec6cce700f51b14a3fc6545fdd32930d2c83917332cf"}, + {file = "frozenlist-1.3.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ebb86518203e12e96af765ee89034a1dbb0c3c65052d1b0c19bbbd6af8a145e1"}, + {file = "frozenlist-1.3.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5cf820485f1b4c91e0417ea0afd41ce5cf5965011b3c22c400f6d144296ccbc0"}, + {file = "frozenlist-1.3.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c11e43016b9024240212d2a65043b70ed8dfd3b52678a1271972702d990ac6d"}, + {file = "frozenlist-1.3.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8fa3c6e3305aa1146b59a09b32b2e04074945ffcfb2f0931836d103a2c38f936"}, + {file = "frozenlist-1.3.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:352bd4c8c72d508778cf05ab491f6ef36149f4d0cb3c56b1b4302852255d05d5"}, + {file = "frozenlist-1.3.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:65a5e4d3aa679610ac6e3569e865425b23b372277f89b5ef06cf2cdaf1ebf22b"}, + {file = "frozenlist-1.3.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b1e2c1185858d7e10ff045c496bbf90ae752c28b365fef2c09cf0fa309291669"}, + {file = "frozenlist-1.3.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f163d2fd041c630fed01bc48d28c3ed4a3b003c00acd396900e11ee5316b56bb"}, + {file = "frozenlist-1.3.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:05cdb16d09a0832eedf770cb7bd1fe57d8cf4eaf5aced29c4e41e3f20b30a784"}, + {file = "frozenlist-1.3.3-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:8bae29d60768bfa8fb92244b74502b18fae55a80eac13c88eb0b496d4268fd2d"}, + {file = "frozenlist-1.3.3-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:eedab4c310c0299961ac285591acd53dc6723a1ebd90a57207c71f6e0c2153ab"}, + {file = "frozenlist-1.3.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:3bbdf44855ed8f0fbcd102ef05ec3012d6a4fd7c7562403f76ce6a52aeffb2b1"}, + {file = "frozenlist-1.3.3-cp39-cp39-win32.whl", hash = "sha256:efa568b885bca461f7c7b9e032655c0c143d305bf01c30caf6db2854a4532b38"}, + {file = "frozenlist-1.3.3-cp39-cp39-win_amd64.whl", hash = "sha256:cfe33efc9cb900a4c46f91a5ceba26d6df370ffddd9ca386eb1d4f0ad97b9ea9"}, + {file = "frozenlist-1.3.3.tar.gz", hash = "sha256:58bcc55721e8a90b88332d6cd441261ebb22342e238296bb330968952fbb3a6a"}, +] [[package]] name = "funkybob" @@ -617,6 +1126,7 @@ description = "" category = "main" optional = false python-versions = "*" +files = [] develop = false [package.source] @@ -632,6 +1142,10 @@ description = "URL manipulation made simple." category = "main" optional = false python-versions = "*" +files = [ + {file = "furl-2.1.3-py2.py3-none-any.whl", hash = "sha256:9ab425062c4217f9802508e45feb4a83e54324273ac4b202f1850363309666c0"}, + {file = "furl-2.1.3.tar.gz", hash = "sha256:5a6188fe2666c484a12159c18be97a1977a71d632ef5bb867ef15f54af39cc4e"}, +] [package.dependencies] orderedmultidict = ">=1.0.1" @@ -644,6 +1158,10 @@ description = "A declarative object transformer and formatter, for conglomeratin category = "main" optional = false python-versions = "*" +files = [ + {file = "glom-22.1.0-py2.py3-none-any.whl", hash = "sha256:5339da206bf3532e01a83a35aca202960ea885156986d190574b779598e9e772"}, + {file = "glom-22.1.0.tar.gz", hash = "sha256:1510c6587a8f9c64a246641b70033cbc5ebde99f02ad245693678038e821aeb5"}, +] [package.dependencies] attrs = "*" @@ -660,6 +1178,10 @@ description = "Google API client core library" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "google-api-core-2.11.0.tar.gz", hash = "sha256:4b9bb5d5a380a0befa0573b302651b8a9a89262c1730e37bf423cec511804c22"}, + {file = "google_api_core-2.11.0-py3-none-any.whl", hash = "sha256:ce222e27b0de0d7bc63eb043b956996d6dccab14cc3b690aaea91c9cc99dc16e"}, +] [package.dependencies] google-auth = ">=2.14.1,<3.0dev" @@ -687,6 +1209,10 @@ description = "Google Authentication Library" category = "main" optional = false python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*" +files = [ + {file = "google-auth-2.15.0.tar.gz", hash = "sha256:72f12a6cfc968d754d7bdab369c5c5c16032106e52d32c6dfd8484e4c01a6d1f"}, + {file = "google_auth-2.15.0-py2.py3-none-any.whl", hash = "sha256:6897b93556d8d807ad70701bb89f000183aea366ca7ed94680828b37437a4994"}, +] [package.dependencies] cachetools = ">=2.0.0,<6.0" @@ -707,6 +1233,10 @@ description = "Google Cloud Appengine Logging API client library" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "google-cloud-appengine-logging-1.2.0.tar.gz", hash = "sha256:a6f6a8e76d9d7e7471e8925ee28b11814faad4ba41bdd3933f85bd5155593626"}, + {file = "google_cloud_appengine_logging-1.2.0-py2.py3-none-any.whl", hash = "sha256:8257fe68d0c2f4eb1085fde875e2929196e4ded9cb522c3faaddf14307e8e588"}, +] [package.dependencies] google-api-core = {version = ">=1.34.0,<2.0.0 || >=2.11.0,<3.0.0dev", extras = ["grpc"]} @@ -720,6 +1250,10 @@ description = "Google Cloud Audit Protos" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "google-cloud-audit-log-0.2.4.tar.gz", hash = "sha256:aabe5543671e4f8a9c7a4c0e3ea9a87ba2ba2b96f9ffad6faa02209900e1f308"}, + {file = "google_cloud_audit_log-0.2.4-py2.py3-none-any.whl", hash = "sha256:29ed77fe0b21eb2d5dfb998edb59ee2adc65fea5d5ac9fcf17828d60d25b58b3"}, +] [package.dependencies] googleapis-common-protos = ">=1.56.2,<2.0dev" @@ -732,6 +1266,10 @@ description = "Google Cloud API client core library" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "google-cloud-core-2.3.2.tar.gz", hash = "sha256:b9529ee7047fd8d4bf4a2182de619154240df17fbe60ead399078c1ae152af9a"}, + {file = "google_cloud_core-2.3.2-py2.py3-none-any.whl", hash = "sha256:8417acf6466be2fa85123441696c4badda48db314c607cf1e5d543fa8bdc22fe"}, +] [package.dependencies] google-api-core = ">=1.31.6,<2.0.0 || >2.3.0,<3.0.0dev" @@ -747,6 +1285,10 @@ description = "Stackdriver Logging API client library" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "google-cloud-logging-3.4.0.tar.gz", hash = "sha256:cde0f59fadb917468746252baf4b11ea00f6d686ef02139183eaf921f3aee6b4"}, + {file = "google_cloud_logging-3.4.0-py2.py3-none-any.whl", hash = "sha256:afe1d558346e4a6ff8203bfb4266cff8f5fb46816ad0930a9af0d3956a218838"}, +] [package.dependencies] google-api-core = {version = ">=1.33.2,<2.0.0 || >=2.8.0,<3.0.0dev", extras = ["grpc"]} @@ -764,6 +1306,10 @@ description = "Common protobufs used in Google APIs" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "googleapis-common-protos-1.57.0.tar.gz", hash = "sha256:27a849d6205838fb6cc3c1c21cb9800707a661bb21c6ce7fb13e99eb1f8a0c46"}, + {file = "googleapis_common_protos-1.57.0-py2.py3-none-any.whl", hash = "sha256:a9f4a1d7f6d9809657b7f1316a1aa527f6664891531bcfcc13b6696e685f443c"}, +] [package.dependencies] grpcio = {version = ">=1.44.0,<2.0.0dev", optional = true, markers = "extra == \"grpc\""} @@ -779,33 +1325,146 @@ description = "Lightweight in-process concurrent programming" category = "main" optional = false python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*" - -[package.extras] -docs = ["Sphinx", "docutils (<0.18)"] -test = ["faulthandler", "objgraph", "psutil"] - -[[package]] -name = "grpc-google-iam-v1" -version = "0.12.4" -description = "IAM API client library" -category = "main" -optional = false -python-versions = ">=3.6" - -[package.dependencies] -googleapis-common-protos = {version = ">=1.56.0,<2.0.0dev", extras = ["grpc"]} -grpcio = ">=1.0.0,<2.0.0dev" - -[[package]] -name = "grpcio" -version = "1.51.1" -description = "HTTP/2-based RPC framework" -category = "main" -optional = false -python-versions = ">=3.7" - -[package.extras] -protobuf = ["grpcio-tools (>=1.51.1)"] +files = [ + {file = "greenlet-2.0.1-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:9ed358312e63bf683b9ef22c8e442ef6c5c02973f0c2a939ec1d7b50c974015c"}, + {file = "greenlet-2.0.1-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:4f09b0010e55bec3239278f642a8a506b91034f03a4fb28289a7d448a67f1515"}, + {file = "greenlet-2.0.1-cp27-cp27m-win32.whl", hash = "sha256:1407fe45246632d0ffb7a3f4a520ba4e6051fc2cbd61ba1f806900c27f47706a"}, + {file = "greenlet-2.0.1-cp27-cp27m-win_amd64.whl", hash = "sha256:3001d00eba6bbf084ae60ec7f4bb8ed375748f53aeaefaf2a37d9f0370558524"}, + {file = "greenlet-2.0.1-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:d566b82e92ff2e09dd6342df7e0eb4ff6275a3f08db284888dcd98134dbd4243"}, + {file = "greenlet-2.0.1-cp310-cp310-macosx_10_15_x86_64.whl", hash = "sha256:0722c9be0797f544a3ed212569ca3fe3d9d1a1b13942d10dd6f0e8601e484d26"}, + {file = "greenlet-2.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d37990425b4687ade27810e3b1a1c37825d242ebc275066cfee8cb6b8829ccd"}, + {file = "greenlet-2.0.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:be35822f35f99dcc48152c9839d0171a06186f2d71ef76dc57fa556cc9bf6b45"}, + {file = "greenlet-2.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c140e7eb5ce47249668056edf3b7e9900c6a2e22fb0eaf0513f18a1b2c14e1da"}, + {file = "greenlet-2.0.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d21681f09e297a5adaa73060737e3aa1279a13ecdcfcc6ef66c292cb25125b2d"}, + {file = "greenlet-2.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fb412b7db83fe56847df9c47b6fe3f13911b06339c2aa02dcc09dce8bbf582cd"}, + {file = "greenlet-2.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:c6a08799e9e88052221adca55741bf106ec7ea0710bca635c208b751f0d5b617"}, + {file = "greenlet-2.0.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:9e112e03d37987d7b90c1e98ba5e1b59e1645226d78d73282f45b326f7bddcb9"}, + {file = "greenlet-2.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56961cfca7da2fdd178f95ca407fa330c64f33289e1804b592a77d5593d9bd94"}, + {file = "greenlet-2.0.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:13ba6e8e326e2116c954074c994da14954982ba2795aebb881c07ac5d093a58a"}, + {file = "greenlet-2.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1bf633a50cc93ed17e494015897361010fc08700d92676c87931d3ea464123ce"}, + {file = "greenlet-2.0.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:9f2c221eecb7ead00b8e3ddb913c67f75cba078fd1d326053225a3f59d850d72"}, + {file = "greenlet-2.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:13ebf93c343dd8bd010cd98e617cb4c1c1f352a0cf2524c82d3814154116aa82"}, + {file = "greenlet-2.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:6f61d71bbc9b4a3de768371b210d906726535d6ca43506737682caa754b956cd"}, + {file = "greenlet-2.0.1-cp35-cp35m-macosx_10_14_x86_64.whl", hash = "sha256:2d0bac0385d2b43a7bd1d651621a4e0f1380abc63d6fb1012213a401cbd5bf8f"}, + {file = "greenlet-2.0.1-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:f6327b6907b4cb72f650a5b7b1be23a2aab395017aa6f1adb13069d66360eb3f"}, + {file = "greenlet-2.0.1-cp35-cp35m-win32.whl", hash = "sha256:81b0ea3715bf6a848d6f7149d25bf018fd24554a4be01fcbbe3fdc78e890b955"}, + {file = "greenlet-2.0.1-cp35-cp35m-win_amd64.whl", hash = "sha256:38255a3f1e8942573b067510f9611fc9e38196077b0c8eb7a8c795e105f9ce77"}, + {file = "greenlet-2.0.1-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:04957dc96669be041e0c260964cfef4c77287f07c40452e61abe19d647505581"}, + {file = "greenlet-2.0.1-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:4aeaebcd91d9fee9aa768c1b39cb12214b30bf36d2b7370505a9f2165fedd8d9"}, + {file = "greenlet-2.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:974a39bdb8c90a85982cdb78a103a32e0b1be986d411303064b28a80611f6e51"}, + {file = "greenlet-2.0.1-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8dca09dedf1bd8684767bc736cc20c97c29bc0c04c413e3276e0962cd7aeb148"}, + {file = "greenlet-2.0.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a4c0757db9bd08470ff8277791795e70d0bf035a011a528ee9a5ce9454b6cba2"}, + {file = "greenlet-2.0.1-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:5067920de254f1a2dee8d3d9d7e4e03718e8fd2d2d9db962c8c9fa781ae82a39"}, + {file = "greenlet-2.0.1-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:5a8e05057fab2a365c81abc696cb753da7549d20266e8511eb6c9d9f72fe3e92"}, + {file = "greenlet-2.0.1-cp36-cp36m-win32.whl", hash = "sha256:3d75b8d013086b08e801fbbb896f7d5c9e6ccd44f13a9241d2bf7c0df9eda928"}, + {file = "greenlet-2.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:097e3dae69321e9100202fc62977f687454cd0ea147d0fd5a766e57450c569fd"}, + {file = "greenlet-2.0.1-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:cb242fc2cda5a307a7698c93173d3627a2a90d00507bccf5bc228851e8304963"}, + {file = "greenlet-2.0.1-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:72b00a8e7c25dcea5946692a2485b1a0c0661ed93ecfedfa9b6687bd89a24ef5"}, + {file = "greenlet-2.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d5b0ff9878333823226d270417f24f4d06f235cb3e54d1103b71ea537a6a86ce"}, + {file = "greenlet-2.0.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:be9e0fb2ada7e5124f5282d6381903183ecc73ea019568d6d63d33f25b2a9000"}, + {file = "greenlet-2.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b493db84d124805865adc587532ebad30efa68f79ad68f11b336e0a51ec86c2"}, + {file = "greenlet-2.0.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:0459d94f73265744fee4c2d5ec44c6f34aa8a31017e6e9de770f7bcf29710be9"}, + {file = "greenlet-2.0.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:a20d33124935d27b80e6fdacbd34205732660e0a1d35d8b10b3328179a2b51a1"}, + {file = "greenlet-2.0.1-cp37-cp37m-win32.whl", hash = "sha256:ea688d11707d30e212e0110a1aac7f7f3f542a259235d396f88be68b649e47d1"}, + {file = "greenlet-2.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:afe07421c969e259e9403c3bb658968702bc3b78ec0b6fde3ae1e73440529c23"}, + {file = "greenlet-2.0.1-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:cd4ccc364cf75d1422e66e247e52a93da6a9b73cefa8cad696f3cbbb75af179d"}, + {file = "greenlet-2.0.1-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:4c8b1c43e75c42a6cafcc71defa9e01ead39ae80bd733a2608b297412beede68"}, + {file = "greenlet-2.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:659f167f419a4609bc0516fb18ea69ed39dbb25594934bd2dd4d0401660e8a1e"}, + {file = "greenlet-2.0.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:356e4519d4dfa766d50ecc498544b44c0249b6de66426041d7f8b751de4d6b48"}, + {file = "greenlet-2.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:811e1d37d60b47cb8126e0a929b58c046251f28117cb16fcd371eed61f66b764"}, + {file = "greenlet-2.0.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:d38ffd0e81ba8ef347d2be0772e899c289b59ff150ebbbbe05dc61b1246eb4e0"}, + {file = "greenlet-2.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:0109af1138afbfb8ae647e31a2b1ab030f58b21dd8528c27beaeb0093b7938a9"}, + {file = "greenlet-2.0.1-cp38-cp38-win32.whl", hash = "sha256:88c8d517e78acdf7df8a2134a3c4b964415b575d2840a2746ddb1cc6175f8608"}, + {file = "greenlet-2.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:d6ee1aa7ab36475035eb48c01efae87d37936a8173fc4d7b10bb02c2d75dd8f6"}, + {file = "greenlet-2.0.1-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:b1992ba9d4780d9af9726bbcef6a1db12d9ab1ccc35e5773685a24b7fb2758eb"}, + {file = "greenlet-2.0.1-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:b5e83e4de81dcc9425598d9469a624826a0b1211380ac444c7c791d4a2137c19"}, + {file = "greenlet-2.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:505138d4fa69462447a562a7c2ef723c6025ba12ac04478bc1ce2fcc279a2db5"}, + {file = "greenlet-2.0.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cce1e90dd302f45716a7715517c6aa0468af0bf38e814ad4eab58e88fc09f7f7"}, + {file = "greenlet-2.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e9744c657d896c7b580455e739899e492a4a452e2dd4d2b3e459f6b244a638d"}, + {file = "greenlet-2.0.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:662e8f7cad915ba75d8017b3e601afc01ef20deeeabf281bd00369de196d7726"}, + {file = "greenlet-2.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:41b825d65f31e394b523c84db84f9383a2f7eefc13d987f308f4663794d2687e"}, + {file = "greenlet-2.0.1-cp39-cp39-win32.whl", hash = "sha256:db38f80540083ea33bdab614a9d28bcec4b54daa5aff1668d7827a9fc769ae0a"}, + {file = "greenlet-2.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:b23d2a46d53210b498e5b701a1913697671988f4bf8e10f935433f6e7c332fb6"}, + {file = "greenlet-2.0.1.tar.gz", hash = "sha256:42e602564460da0e8ee67cb6d7236363ee5e131aa15943b6670e44e5c2ed0f67"}, +] + +[package.extras] +docs = ["Sphinx", "docutils (<0.18)"] +test = ["faulthandler", "objgraph", "psutil"] + +[[package]] +name = "grpc-google-iam-v1" +version = "0.12.4" +description = "IAM API client library" +category = "main" +optional = false +python-versions = ">=3.6" +files = [ + {file = "grpc-google-iam-v1-0.12.4.tar.gz", hash = "sha256:3f0ac2c940b9a855d7ce7e31fde28bddb0d9ac362d32d07c67148306931a0e30"}, + {file = "grpc_google_iam_v1-0.12.4-py2.py3-none-any.whl", hash = "sha256:312801ae848aeb8408c099ea372b96d253077e7851aae1a9e745df984f81f20c"}, +] + +[package.dependencies] +googleapis-common-protos = {version = ">=1.56.0,<2.0.0dev", extras = ["grpc"]} +grpcio = ">=1.0.0,<2.0.0dev" + +[[package]] +name = "grpcio" +version = "1.51.1" +description = "HTTP/2-based RPC framework" +category = "main" +optional = false +python-versions = ">=3.7" +files = [ + {file = "grpcio-1.51.1-cp310-cp310-linux_armv7l.whl", hash = "sha256:cc2bece1737b44d878cc1510ea04469a8073dbbcdd762175168937ae4742dfb3"}, + {file = "grpcio-1.51.1-cp310-cp310-macosx_12_0_x86_64.whl", hash = "sha256:e223a9793522680beae44671b9ed8f6d25bbe5ddf8887e66aebad5e0686049ef"}, + {file = "grpcio-1.51.1-cp310-cp310-manylinux_2_17_aarch64.whl", hash = "sha256:24ac1154c4b2ab4a0c5326a76161547e70664cd2c39ba75f00fc8a2170964ea2"}, + {file = "grpcio-1.51.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e4ef09f8997c4be5f3504cefa6b5c6cc3cf648274ce3cede84d4342a35d76db6"}, + {file = "grpcio-1.51.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a8a0b77e992c64880e6efbe0086fe54dfc0bbd56f72a92d9e48264dcd2a3db98"}, + {file = "grpcio-1.51.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:eacad297ea60c72dd280d3353d93fb1dcca952ec11de6bb3c49d12a572ba31dd"}, + {file = "grpcio-1.51.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:16c71740640ba3a882f50b01bf58154681d44b51f09a5728180a8fdc66c67bd5"}, + {file = "grpcio-1.51.1-cp310-cp310-win32.whl", hash = "sha256:29cb97d41a4ead83b7bcad23bdb25bdd170b1e2cba16db6d3acbb090bc2de43c"}, + {file = "grpcio-1.51.1-cp310-cp310-win_amd64.whl", hash = "sha256:9ff42c5620b4e4530609e11afefa4a62ca91fa0abb045a8957e509ef84e54d30"}, + {file = "grpcio-1.51.1-cp311-cp311-linux_armv7l.whl", hash = "sha256:bc59f7ba87972ab236f8669d8ca7400f02a0eadf273ca00e02af64d588046f02"}, + {file = "grpcio-1.51.1-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:3c2b3842dcf870912da31a503454a33a697392f60c5e2697c91d133130c2c85d"}, + {file = "grpcio-1.51.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:22b011674090594f1f3245960ced7386f6af35485a38901f8afee8ad01541dbd"}, + {file = "grpcio-1.51.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:49d680356a975d9c66a678eb2dde192d5dc427a7994fb977363634e781614f7c"}, + {file = "grpcio-1.51.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:094e64236253590d9d4075665c77b329d707b6fca864dd62b144255e199b4f87"}, + {file = "grpcio-1.51.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:257478300735ce3c98d65a930bbda3db172bd4e00968ba743e6a1154ea6edf10"}, + {file = "grpcio-1.51.1-cp311-cp311-win32.whl", hash = "sha256:5a6ebcdef0ef12005d56d38be30f5156d1cb3373b52e96f147f4a24b0ddb3a9d"}, + {file = "grpcio-1.51.1-cp311-cp311-win_amd64.whl", hash = "sha256:3f9b0023c2c92bebd1be72cdfca23004ea748be1813a66d684d49d67d836adde"}, + {file = "grpcio-1.51.1-cp37-cp37m-linux_armv7l.whl", hash = "sha256:cd3baccea2bc5c38aeb14e5b00167bd4e2373a373a5e4d8d850bd193edad150c"}, + {file = "grpcio-1.51.1-cp37-cp37m-macosx_10_10_x86_64.whl", hash = "sha256:17ec9b13cec4a286b9e606b48191e560ca2f3bbdf3986f91e480a95d1582e1a7"}, + {file = "grpcio-1.51.1-cp37-cp37m-manylinux_2_17_aarch64.whl", hash = "sha256:fbdbe9a849854fe484c00823f45b7baab159bdd4a46075302281998cb8719df5"}, + {file = "grpcio-1.51.1-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:31bb6bc7ff145e2771c9baf612f4b9ebbc9605ccdc5f3ff3d5553de7fc0e0d79"}, + {file = "grpcio-1.51.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e473525c28251558337b5c1ad3fa969511e42304524a4e404065e165b084c9e4"}, + {file = "grpcio-1.51.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:6f0b89967ee11f2b654c23b27086d88ad7bf08c0b3c2a280362f28c3698b2896"}, + {file = "grpcio-1.51.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:7942b32a291421460d6a07883033e392167d30724aa84987e6956cd15f1a21b9"}, + {file = "grpcio-1.51.1-cp37-cp37m-win32.whl", hash = "sha256:f96ace1540223f26fbe7c4ebbf8a98e3929a6aa0290c8033d12526847b291c0f"}, + {file = "grpcio-1.51.1-cp37-cp37m-win_amd64.whl", hash = "sha256:f1fec3abaf274cdb85bf3878167cfde5ad4a4d97c68421afda95174de85ba813"}, + {file = "grpcio-1.51.1-cp38-cp38-linux_armv7l.whl", hash = "sha256:0e1a9e1b4a23808f1132aa35f968cd8e659f60af3ffd6fb00bcf9a65e7db279f"}, + {file = "grpcio-1.51.1-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:6df3b63538c362312bc5fa95fb965069c65c3ea91d7ce78ad9c47cab57226f54"}, + {file = "grpcio-1.51.1-cp38-cp38-manylinux_2_17_aarch64.whl", hash = "sha256:172405ca6bdfedd6054c74c62085946e45ad4d9cec9f3c42b4c9a02546c4c7e9"}, + {file = "grpcio-1.51.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:506b9b7a4cede87d7219bfb31014d7b471cfc77157da9e820a737ec1ea4b0663"}, + {file = "grpcio-1.51.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0fb93051331acbb75b49a2a0fd9239c6ba9528f6bdc1dd400ad1cb66cf864292"}, + {file = "grpcio-1.51.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:5dca372268c6ab6372d37d6b9f9343e7e5b4bc09779f819f9470cd88b2ece3c3"}, + {file = "grpcio-1.51.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:471d39d3370ca923a316d49c8aac66356cea708a11e647e3bdc3d0b5de4f0a40"}, + {file = "grpcio-1.51.1-cp38-cp38-win32.whl", hash = "sha256:75e29a90dc319f0ad4d87ba6d20083615a00d8276b51512e04ad7452b5c23b04"}, + {file = "grpcio-1.51.1-cp38-cp38-win_amd64.whl", hash = "sha256:f1158bccbb919da42544a4d3af5d9296a3358539ffa01018307337365a9a0c64"}, + {file = "grpcio-1.51.1-cp39-cp39-linux_armv7l.whl", hash = "sha256:59dffade859f157bcc55243714d57b286da6ae16469bf1ac0614d281b5f49b67"}, + {file = "grpcio-1.51.1-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:dad6533411d033b77f5369eafe87af8583178efd4039c41d7515d3336c53b4f1"}, + {file = "grpcio-1.51.1-cp39-cp39-manylinux_2_17_aarch64.whl", hash = "sha256:4c4423ea38a7825b8fed8934d6d9aeebdf646c97e3c608c3b0bcf23616f33877"}, + {file = "grpcio-1.51.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0dc5354e38e5adf2498312f7241b14c7ce3484eefa0082db4297189dcbe272e6"}, + {file = "grpcio-1.51.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:97d67983189e2e45550eac194d6234fc38b8c3b5396c153821f2d906ed46e0ce"}, + {file = "grpcio-1.51.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:538d981818e49b6ed1e9c8d5e5adf29f71c4e334e7d459bf47e9b7abb3c30e09"}, + {file = "grpcio-1.51.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:9235dcd5144a83f9ca6f431bd0eccc46b90e2c22fe27b7f7d77cabb2fb515595"}, + {file = "grpcio-1.51.1-cp39-cp39-win32.whl", hash = "sha256:aacb54f7789ede5cbf1d007637f792d3e87f1c9841f57dd51abf89337d1b8472"}, + {file = "grpcio-1.51.1-cp39-cp39-win_amd64.whl", hash = "sha256:2b170eaf51518275c9b6b22ccb59450537c5a8555326fd96ff7391b5dd75303c"}, + {file = "grpcio-1.51.1.tar.gz", hash = "sha256:e6dfc2b6567b1c261739b43d9c59d201c1b89e017afd9e684d85aa7a186c9f7a"}, +] + +[package.extras] +protobuf = ["grpcio-tools (>=1.51.1)"] [[package]] name = "grpcio-status" @@ -814,6 +1473,10 @@ description = "Status proto mapping for gRPC" category = "main" optional = false python-versions = ">=3.6" +files = [ + {file = "grpcio-status-1.51.1.tar.gz", hash = "sha256:ac2617a3095935ebd785e2228958f24b10a0d527a0c9eb5a0863c784f648a816"}, + {file = "grpcio_status-1.51.1-py3-none-any.whl", hash = "sha256:a52cbdc4b18f325bfc13d319ae7c7ae7a0fee07f3d9a005504d6097896d7a495"}, +] [package.dependencies] googleapis-common-protos = ">=1.5.5" @@ -827,6 +1490,10 @@ description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "h11-0.14.0-py3-none-any.whl", hash = "sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761"}, + {file = "h11-0.14.0.tar.gz", hash = "sha256:8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d"}, +] [[package]] name = "h2" @@ -835,6 +1502,10 @@ description = "HTTP/2 State-Machine based protocol implementation" category = "main" optional = false python-versions = ">=3.6.1" +files = [ + {file = "h2-4.1.0-py3-none-any.whl", hash = "sha256:03a46bcf682256c95b5fd9e9a99c1323584c3eec6440d379b9903d709476bc6d"}, + {file = "h2-4.1.0.tar.gz", hash = "sha256:a83aca08fbe7aacb79fec788c9c0bac936343560ed9ec18b82a13a12c28d2abb"}, +] [package.dependencies] hpack = ">=4.0,<5" @@ -847,6 +1518,10 @@ description = "Pure-Python HPACK header compression" category = "main" optional = false python-versions = ">=3.6.1" +files = [ + {file = "hpack-4.0.0-py3-none-any.whl", hash = "sha256:84a076fad3dc9a9f8063ccb8041ef100867b1878b25ef0ee63847a5d53818a6c"}, + {file = "hpack-4.0.0.tar.gz", hash = "sha256:fc41de0c63e687ebffde81187a948221294896f6bdc0ae2312708df339430095"}, +] [[package]] name = "httpcore" @@ -855,6 +1530,10 @@ description = "A minimal low-level HTTP client." category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "httpcore-0.16.3-py3-none-any.whl", hash = "sha256:da1fb708784a938aa084bde4feb8317056c55037247c787bd7e19eb2c2949dc0"}, + {file = "httpcore-0.16.3.tar.gz", hash = "sha256:c5d6f04e2fc530f39e0c077e6a30caa53f1451096120f1f38b954afd0b17c0cb"}, +] [package.dependencies] anyio = ">=3.0,<5.0" @@ -873,6 +1552,10 @@ description = "The next generation HTTP client." category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "httpx-0.23.2-py3-none-any.whl", hash = "sha256:106cded342a44e443060fab70ef327139248c61939e77d73964560c8d8b57069"}, + {file = "httpx-0.23.2.tar.gz", hash = "sha256:e824a6fa18ffaa6423c6f3a32d5096fc15bd8dff43663a223f06242fc69451a8"}, +] [package.dependencies] certifi = "*" @@ -893,6 +1576,10 @@ description = "WebSockets support for HTTPX" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "httpx_ws-0.3.0-py3-none-any.whl", hash = "sha256:68c53208076c5414ff7eadbd559ec4a10f1b399865220bb4bbdbc06eb9444b0d"}, + {file = "httpx_ws-0.3.0.tar.gz", hash = "sha256:694cf6d52622167cfc611c854312039dad03e470abbaf2efcfdbb08a3c29f1eb"}, +] [package.dependencies] anyio = "*" @@ -907,6 +1594,7 @@ description = "A ASGI Server based on Hyper libraries and inspired by Gunicorn" category = "main" optional = false python-versions = ">=3.7" +files = [] develop = false [package.dependencies] @@ -935,6 +1623,10 @@ description = "HTTP/2 framing layer for Python" category = "main" optional = false python-versions = ">=3.6.1" +files = [ + {file = "hyperframe-6.0.1-py3-none-any.whl", hash = "sha256:0ec6bafd80d8ad2195c4f03aacba3a8265e57bc4cff261e802bf39970ed02a15"}, + {file = "hyperframe-6.0.1.tar.gz", hash = "sha256:ae510046231dc8e9ecb1a6586f63d2347bf4c8905914aa84ba585ae85f28a914"}, +] [[package]] name = "icdiff" @@ -943,6 +1635,9 @@ description = "improved colored diff" category = "dev" optional = false python-versions = "*" +files = [ + {file = "icdiff-2.0.6.tar.gz", hash = "sha256:a2673b335d671e64fc73c44e1eaa0aa01fd0e68354e58ee17e863ab29912a79a"}, +] [[package]] name = "idna" @@ -951,6 +1646,10 @@ description = "Internationalized Domain Names in Applications (IDNA)" category = "main" optional = false python-versions = ">=3.5" +files = [ + {file = "idna-3.4-py3-none-any.whl", hash = "sha256:90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2"}, + {file = "idna-3.4.tar.gz", hash = "sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4"}, +] [[package]] name = "iniconfig" @@ -959,6 +1658,10 @@ description = "iniconfig: brain-dead simple config-ini parsing" category = "dev" optional = false python-versions = "*" +files = [ + {file = "iniconfig-1.1.1-py2.py3-none-any.whl", hash = "sha256:011e24c64b7f47f6ebd835bb12a743f2fbe9a26d4cecaa7f53bc4f35ee9da8b3"}, + {file = "iniconfig-1.1.1.tar.gz", hash = "sha256:bc3af051d7d14b2ee5ef9969666def0cd1a000e121eaea580d4a313df4b37f32"}, +] [[package]] name = "ipython" @@ -967,6 +1670,10 @@ description = "IPython: Productive Interactive Computing" category = "dev" optional = false python-versions = ">=3.8" +files = [ + {file = "ipython-8.7.0-py3-none-any.whl", hash = "sha256:352042ddcb019f7c04e48171b4dd78e4c4bb67bf97030d170e154aac42b656d9"}, + {file = "ipython-8.7.0.tar.gz", hash = "sha256:882899fe78d5417a0aa07f995db298fa28b58faeba2112d2e3a4c95fe14bb738"}, +] [package.dependencies] appnope = {version = "*", markers = "sys_platform == \"darwin\""} @@ -1002,6 +1709,10 @@ description = "Safely pass data to untrusted environments and back." category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "itsdangerous-2.1.2-py3-none-any.whl", hash = "sha256:2c2349112351b88699d8d4b6b075022c0808887cb7ad10069318a8b0bc88db44"}, + {file = "itsdangerous-2.1.2.tar.gz", hash = "sha256:5dbbc68b317e5e42f327f9021763545dc3fc3bfe22e6deb96aaf1fc38874156a"}, +] [[package]] name = "jedi" @@ -1010,6 +1721,10 @@ description = "An autocompletion tool for Python that can be used for text edito category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "jedi-0.18.2-py2.py3-none-any.whl", hash = "sha256:203c1fd9d969ab8f2119ec0a3342e0b49910045abe6af0a3ae83a5764d54639e"}, + {file = "jedi-0.18.2.tar.gz", hash = "sha256:bae794c30d07f6d910d32a7048af09b5a39ed740918da923c6b780790ebac612"}, +] [package.dependencies] parso = ">=0.8.0,<0.9.0" @@ -1026,6 +1741,10 @@ description = "A very fast and expressive template engine." category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "Jinja2-3.1.2-py3-none-any.whl", hash = "sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61"}, + {file = "Jinja2-3.1.2.tar.gz", hash = "sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852"}, +] [package.dependencies] MarkupSafe = ">=2.0" @@ -1040,6 +1759,9 @@ description = "Implementation of JOSE Web standards" category = "main" optional = false python-versions = ">= 3.6" +files = [ + {file = "jwcrypto-1.4.2.tar.gz", hash = "sha256:80a35e9ed1b3b2c43ce03d92c5d48e6d0b6647e2aa2618e4963448923d78a37b"}, +] [package.dependencies] cryptography = ">=2.3" @@ -1052,6 +1774,10 @@ description = "A Pythonic implementation of Json Web Signature, Keys, Algorithms category = "main" optional = false python-versions = ">=3.7,<4.0" +files = [ + {file = "jwskate-0.5.0-py3-none-any.whl", hash = "sha256:05623c7425a11073850237841d404f515413d8ed67cf6fca093f8a91a449e055"}, + {file = "jwskate-0.5.0.tar.gz", hash = "sha256:b8708003dcfdfbc578893ffc27bd28522c5c3fe45725b624fdf4534b647cba76"}, +] [package.dependencies] "backports.cached-property" = ">=1,<2" @@ -1066,6 +1792,7 @@ description = "" category = "main" optional = false python-versions = "^3.10" +files = [] develop = false [package.dependencies] @@ -1086,6 +1813,10 @@ description = "LNURL implementation for Python." category = "main" optional = false python-versions = ">=3.6" +files = [ + {file = "lnurl-0.3.6-py3-none-any.whl", hash = "sha256:579982fd8c4d25bc84c61c74ec45cb7999fa1fa2426f5d5aeb0160ba333b9c92"}, + {file = "lnurl-0.3.6.tar.gz", hash = "sha256:8af07460115a48f3122a5a9c9a6062bee3897d5f6ab4c9a60f6561a83a8234f6"}, +] [package.dependencies] bech32 = "*" @@ -1098,6 +1829,10 @@ description = "A super-fast templating language that borrows the best ideas from category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "Mako-1.2.4-py3-none-any.whl", hash = "sha256:c97c79c018b9165ac9922ae4f32da095ffd3c4e6872b45eded42926deea46818"}, + {file = "Mako-1.2.4.tar.gz", hash = "sha256:d60a3903dc3bb01a18ad6a89cdbe2e4eadc69c0bc8ef1e3773ba53d44c3f7a34"}, +] [package.dependencies] MarkupSafe = ">=0.9.2" @@ -1114,6 +1849,48 @@ description = "Safely add untrusted strings to HTML/XML markup." category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "MarkupSafe-2.1.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:86b1f75c4e7c2ac2ccdaec2b9022845dbb81880ca318bb7a0a01fbf7813e3812"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f121a1420d4e173a5d96e47e9a0c0dcff965afdf1626d28de1460815f7c4ee7a"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a49907dd8420c5685cfa064a1335b6754b74541bbb3706c259c02ed65b644b3e"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:10c1bfff05d95783da83491be968e8fe789263689c02724e0c691933c52994f5"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b7bd98b796e2b6553da7225aeb61f447f80a1ca64f41d83612e6139ca5213aa4"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:b09bf97215625a311f669476f44b8b318b075847b49316d3e28c08e41a7a573f"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:694deca8d702d5db21ec83983ce0bb4b26a578e71fbdbd4fdcd387daa90e4d5e"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:efc1913fd2ca4f334418481c7e595c00aad186563bbc1ec76067848c7ca0a933"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-win32.whl", hash = "sha256:4a33dea2b688b3190ee12bd7cfa29d39c9ed176bda40bfa11099a3ce5d3a7ac6"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:dda30ba7e87fbbb7eab1ec9f58678558fd9a6b8b853530e176eabd064da81417"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:671cd1187ed5e62818414afe79ed29da836dde67166a9fac6d435873c44fdd02"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3799351e2336dc91ea70b034983ee71cf2f9533cdff7c14c90ea126bfd95d65a"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e72591e9ecd94d7feb70c1cbd7be7b3ebea3f548870aa91e2732960fa4d57a37"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6fbf47b5d3728c6aea2abb0589b5d30459e369baa772e0f37a0320185e87c980"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:d5ee4f386140395a2c818d149221149c54849dfcfcb9f1debfe07a8b8bd63f9a"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:bcb3ed405ed3222f9904899563d6fc492ff75cce56cba05e32eff40e6acbeaa3"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:e1c0b87e09fa55a220f058d1d49d3fb8df88fbfab58558f1198e08c1e1de842a"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-win32.whl", hash = "sha256:8dc1c72a69aa7e082593c4a203dcf94ddb74bb5c8a731e4e1eb68d031e8498ff"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-win_amd64.whl", hash = "sha256:97a68e6ada378df82bc9f16b800ab77cbf4b2fada0081794318520138c088e4a"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:e8c843bbcda3a2f1e3c2ab25913c80a3c5376cd00c6e8c4a86a89a28c8dc5452"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0212a68688482dc52b2d45013df70d169f542b7394fc744c02a57374a4207003"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e576a51ad59e4bfaac456023a78f6b5e6e7651dcd383bcc3e18d06f9b55d6d1"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b9fe39a2ccc108a4accc2676e77da025ce383c108593d65cc909add5c3bd601"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:96e37a3dc86e80bf81758c152fe66dbf60ed5eca3d26305edf01892257049925"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6d0072fea50feec76a4c418096652f2c3238eaa014b2f94aeb1d56a66b41403f"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:089cf3dbf0cd6c100f02945abeb18484bd1ee57a079aefd52cffd17fba910b88"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:6a074d34ee7a5ce3effbc526b7083ec9731bb3cbf921bbe1d3005d4d2bdb3a63"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-win32.whl", hash = "sha256:421be9fbf0ffe9ffd7a378aafebbf6f4602d564d34be190fc19a193232fd12b1"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-win_amd64.whl", hash = "sha256:fc7b548b17d238737688817ab67deebb30e8073c95749d55538ed473130ec0c7"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:e04e26803c9c3851c931eac40c695602c6295b8d432cbe78609649ad9bd2da8a"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b87db4360013327109564f0e591bd2a3b318547bcef31b468a92ee504d07ae4f"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:99a2a507ed3ac881b975a2976d59f38c19386d128e7a9a18b7df6fff1fd4c1d6"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:56442863ed2b06d19c37f94d999035e15ee982988920e12a5b4ba29b62ad1f77"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3ce11ee3f23f79dbd06fb3d63e2f6af7b12db1d46932fe7bd8afa259a5996603"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:33b74d289bd2f5e527beadcaa3f401e0df0a89927c1559c8566c066fa4248ab7"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:43093fb83d8343aac0b1baa75516da6092f58f41200907ef92448ecab8825135"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8e3dcf21f367459434c18e71b2a9532d96547aef8a871872a5bd69a715c15f96"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-win32.whl", hash = "sha256:d4306c36ca495956b6d568d276ac11fdd9c30a36f1b6eb928070dc5360b22e1c"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:46d00d6cfecdde84d40e572d63735ef81423ad31184100411e6e3388d405e247"}, + {file = "MarkupSafe-2.1.1.tar.gz", hash = "sha256:7f91197cc9e48f989d12e4e6fbc46495c446636dfc81b9ccf50bb0ec74b91d4b"}, +] [[package]] name = "matplotlib-inline" @@ -1122,6 +1899,10 @@ description = "Inline Matplotlib backend for Jupyter" category = "dev" optional = false python-versions = ">=3.5" +files = [ + {file = "matplotlib-inline-0.1.6.tar.gz", hash = "sha256:f887e5f10ba98e8d2b150ddcf4702c1e5f8b3a20005eb0f74bfdbd360ee6f304"}, + {file = "matplotlib_inline-0.1.6-py3-none-any.whl", hash = "sha256:f1f41aab5328aa5aaea9b16d083b128102f8712542f819fe7e6a420ff581b311"}, +] [package.dependencies] traitlets = "*" @@ -1133,6 +1914,10 @@ description = "McCabe checker, plugin for flake8" category = "dev" optional = false python-versions = "*" +files = [ + {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, + {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, +] [[package]] name = "monotonic" @@ -1141,6 +1926,10 @@ description = "An implementation of time.monotonic() for Python 2 & < 3.3" category = "main" optional = false python-versions = "*" +files = [ + {file = "monotonic-1.6-py2.py3-none-any.whl", hash = "sha256:68687e19a14f11f26d140dd5c86f3dba4bf5df58003000ed467e0e2a69bca96c"}, + {file = "monotonic-1.6.tar.gz", hash = "sha256:3a55207bcfed53ddd5c5bae174524062935efed17792e9de2ad0205ce9ad63f7"}, +] [[package]] name = "multiavatar" @@ -1149,6 +1938,10 @@ description = "Multicultural Avatar Generator in Python" category = "main" optional = false python-versions = ">=3.6" +files = [ + {file = "multiavatar-1.0.3-py3-none-any.whl", hash = "sha256:12e6637d0ec2d42a2a04fe4ccdcbae626851277ee4498d01bc2e1c49a8b9c1f4"}, + {file = "multiavatar-1.0.3.tar.gz", hash = "sha256:c8a63cb8fbd9be7ff06cc4d4eb6e6ea08aa9bd3137a70595bb9af02e88d5934a"}, +] [[package]] name = "multidict" @@ -1157,17 +1950,97 @@ description = "multidict implementation" category = "main" optional = false python-versions = ">=3.7" - -[[package]] -name = "orderedmultidict" -version = "1.0.1" -description = "Ordered Multivalue Dictionary" -category = "main" -optional = false -python-versions = "*" - -[package.dependencies] -six = ">=1.8.0" +files = [ + {file = "multidict-6.0.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b1a97283e0c85772d613878028fec909f003993e1007eafa715b24b377cb9b8"}, + {file = "multidict-6.0.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:eeb6dcc05e911516ae3d1f207d4b0520d07f54484c49dfc294d6e7d63b734171"}, + {file = "multidict-6.0.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d6d635d5209b82a3492508cf5b365f3446afb65ae7ebd755e70e18f287b0adf7"}, + {file = "multidict-6.0.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c048099e4c9e9d615545e2001d3d8a4380bd403e1a0578734e0d31703d1b0c0b"}, + {file = "multidict-6.0.4-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ea20853c6dbbb53ed34cb4d080382169b6f4554d394015f1bef35e881bf83547"}, + {file = "multidict-6.0.4-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:16d232d4e5396c2efbbf4f6d4df89bfa905eb0d4dc5b3549d872ab898451f569"}, + {file = "multidict-6.0.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:36c63aaa167f6c6b04ef2c85704e93af16c11d20de1d133e39de6a0e84582a93"}, + {file = "multidict-6.0.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:64bdf1086b6043bf519869678f5f2757f473dee970d7abf6da91ec00acb9cb98"}, + {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:43644e38f42e3af682690876cff722d301ac585c5b9e1eacc013b7a3f7b696a0"}, + {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:7582a1d1030e15422262de9f58711774e02fa80df0d1578995c76214f6954988"}, + {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ddff9c4e225a63a5afab9dd15590432c22e8057e1a9a13d28ed128ecf047bbdc"}, + {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ee2a1ece51b9b9e7752e742cfb661d2a29e7bcdba2d27e66e28a99f1890e4fa0"}, + {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a2e4369eb3d47d2034032a26c7a80fcb21a2cb22e1173d761a162f11e562caa5"}, + {file = "multidict-6.0.4-cp310-cp310-win32.whl", hash = "sha256:574b7eae1ab267e5f8285f0fe881f17efe4b98c39a40858247720935b893bba8"}, + {file = "multidict-6.0.4-cp310-cp310-win_amd64.whl", hash = "sha256:4dcbb0906e38440fa3e325df2359ac6cb043df8e58c965bb45f4e406ecb162cc"}, + {file = "multidict-6.0.4-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:0dfad7a5a1e39c53ed00d2dd0c2e36aed4650936dc18fd9a1826a5ae1cad6f03"}, + {file = "multidict-6.0.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:64da238a09d6039e3bd39bb3aee9c21a5e34f28bfa5aa22518581f910ff94af3"}, + {file = "multidict-6.0.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ff959bee35038c4624250473988b24f846cbeb2c6639de3602c073f10410ceba"}, + {file = "multidict-6.0.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:01a3a55bd90018c9c080fbb0b9f4891db37d148a0a18722b42f94694f8b6d4c9"}, + {file = "multidict-6.0.4-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c5cb09abb18c1ea940fb99360ea0396f34d46566f157122c92dfa069d3e0e982"}, + {file = "multidict-6.0.4-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:666daae833559deb2d609afa4490b85830ab0dfca811a98b70a205621a6109fe"}, + {file = "multidict-6.0.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:11bdf3f5e1518b24530b8241529d2050014c884cf18b6fc69c0c2b30ca248710"}, + {file = "multidict-6.0.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7d18748f2d30f94f498e852c67d61261c643b349b9d2a581131725595c45ec6c"}, + {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:458f37be2d9e4c95e2d8866a851663cbc76e865b78395090786f6cd9b3bbf4f4"}, + {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:b1a2eeedcead3a41694130495593a559a668f382eee0727352b9a41e1c45759a"}, + {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:7d6ae9d593ef8641544d6263c7fa6408cc90370c8cb2bbb65f8d43e5b0351d9c"}, + {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:5979b5632c3e3534e42ca6ff856bb24b2e3071b37861c2c727ce220d80eee9ed"}, + {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:dcfe792765fab89c365123c81046ad4103fcabbc4f56d1c1997e6715e8015461"}, + {file = "multidict-6.0.4-cp311-cp311-win32.whl", hash = "sha256:3601a3cece3819534b11d4efc1eb76047488fddd0c85a3948099d5da4d504636"}, + {file = "multidict-6.0.4-cp311-cp311-win_amd64.whl", hash = "sha256:81a4f0b34bd92df3da93315c6a59034df95866014ac08535fc819f043bfd51f0"}, + {file = "multidict-6.0.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:67040058f37a2a51ed8ea8f6b0e6ee5bd78ca67f169ce6122f3e2ec80dfe9b78"}, + {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:853888594621e6604c978ce2a0444a1e6e70c8d253ab65ba11657659dcc9100f"}, + {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:39ff62e7d0f26c248b15e364517a72932a611a9b75f35b45be078d81bdb86603"}, + {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:af048912e045a2dc732847d33821a9d84ba553f5c5f028adbd364dd4765092ac"}, + {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b1e8b901e607795ec06c9e42530788c45ac21ef3aaa11dbd0c69de543bfb79a9"}, + {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:62501642008a8b9871ddfccbf83e4222cf8ac0d5aeedf73da36153ef2ec222d2"}, + {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:99b76c052e9f1bc0721f7541e5e8c05db3941eb9ebe7b8553c625ef88d6eefde"}, + {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:509eac6cf09c794aa27bcacfd4d62c885cce62bef7b2c3e8b2e49d365b5003fe"}, + {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:21a12c4eb6ddc9952c415f24eef97e3e55ba3af61f67c7bc388dcdec1404a067"}, + {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:5cad9430ab3e2e4fa4a2ef4450f548768400a2ac635841bc2a56a2052cdbeb87"}, + {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:ab55edc2e84460694295f401215f4a58597f8f7c9466faec545093045476327d"}, + {file = "multidict-6.0.4-cp37-cp37m-win32.whl", hash = "sha256:5a4dcf02b908c3b8b17a45fb0f15b695bf117a67b76b7ad18b73cf8e92608775"}, + {file = "multidict-6.0.4-cp37-cp37m-win_amd64.whl", hash = "sha256:6ed5f161328b7df384d71b07317f4d8656434e34591f20552c7bcef27b0ab88e"}, + {file = "multidict-6.0.4-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:5fc1b16f586f049820c5c5b17bb4ee7583092fa0d1c4e28b5239181ff9532e0c"}, + {file = "multidict-6.0.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1502e24330eb681bdaa3eb70d6358e818e8e8f908a22a1851dfd4e15bc2f8161"}, + {file = "multidict-6.0.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b692f419760c0e65d060959df05f2a531945af31fda0c8a3b3195d4efd06de11"}, + {file = "multidict-6.0.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:45e1ecb0379bfaab5eef059f50115b54571acfbe422a14f668fc8c27ba410e7e"}, + {file = "multidict-6.0.4-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ddd3915998d93fbcd2566ddf9cf62cdb35c9e093075f862935573d265cf8f65d"}, + {file = "multidict-6.0.4-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:59d43b61c59d82f2effb39a93c48b845efe23a3852d201ed2d24ba830d0b4cf2"}, + {file = "multidict-6.0.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cc8e1d0c705233c5dd0c5e6460fbad7827d5d36f310a0fadfd45cc3029762258"}, + {file = "multidict-6.0.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d6aa0418fcc838522256761b3415822626f866758ee0bc6632c9486b179d0b52"}, + {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6748717bb10339c4760c1e63da040f5f29f5ed6e59d76daee30305894069a660"}, + {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:4d1a3d7ef5e96b1c9e92f973e43aa5e5b96c659c9bc3124acbbd81b0b9c8a951"}, + {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:4372381634485bec7e46718edc71528024fcdc6f835baefe517b34a33c731d60"}, + {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:fc35cb4676846ef752816d5be2193a1e8367b4c1397b74a565a9d0389c433a1d"}, + {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:4b9d9e4e2b37daddb5c23ea33a3417901fa7c7b3dee2d855f63ee67a0b21e5b1"}, + {file = "multidict-6.0.4-cp38-cp38-win32.whl", hash = "sha256:e41b7e2b59679edfa309e8db64fdf22399eec4b0b24694e1b2104fb789207779"}, + {file = "multidict-6.0.4-cp38-cp38-win_amd64.whl", hash = "sha256:d6c254ba6e45d8e72739281ebc46ea5eb5f101234f3ce171f0e9f5cc86991480"}, + {file = "multidict-6.0.4-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:16ab77bbeb596e14212e7bab8429f24c1579234a3a462105cda4a66904998664"}, + {file = "multidict-6.0.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:bc779e9e6f7fda81b3f9aa58e3a6091d49ad528b11ed19f6621408806204ad35"}, + {file = "multidict-6.0.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:4ceef517eca3e03c1cceb22030a3e39cb399ac86bff4e426d4fc6ae49052cc60"}, + {file = "multidict-6.0.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:281af09f488903fde97923c7744bb001a9b23b039a909460d0f14edc7bf59706"}, + {file = "multidict-6.0.4-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:52f2dffc8acaba9a2f27174c41c9e57f60b907bb9f096b36b1a1f3be71c6284d"}, + {file = "multidict-6.0.4-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b41156839806aecb3641f3208c0dafd3ac7775b9c4c422d82ee2a45c34ba81ca"}, + {file = "multidict-6.0.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d5e3fc56f88cc98ef8139255cf8cd63eb2c586531e43310ff859d6bb3a6b51f1"}, + {file = "multidict-6.0.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8316a77808c501004802f9beebde51c9f857054a0c871bd6da8280e718444449"}, + {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f70b98cd94886b49d91170ef23ec5c0e8ebb6f242d734ed7ed677b24d50c82cf"}, + {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:bf6774e60d67a9efe02b3616fee22441d86fab4c6d335f9d2051d19d90a40063"}, + {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:e69924bfcdda39b722ef4d9aa762b2dd38e4632b3641b1d9a57ca9cd18f2f83a"}, + {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:6b181d8c23da913d4ff585afd1155a0e1194c0b50c54fcfe286f70cdaf2b7176"}, + {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:52509b5be062d9eafc8170e53026fbc54cf3b32759a23d07fd935fb04fc22d95"}, + {file = "multidict-6.0.4-cp39-cp39-win32.whl", hash = "sha256:27c523fbfbdfd19c6867af7346332b62b586eed663887392cff78d614f9ec313"}, + {file = "multidict-6.0.4-cp39-cp39-win_amd64.whl", hash = "sha256:33029f5734336aa0d4c0384525da0387ef89148dc7191aae00ca5fb23d7aafc2"}, + {file = "multidict-6.0.4.tar.gz", hash = "sha256:3666906492efb76453c0e7b97f2cf459b0682e7402c0489a95484965dbc1da49"}, +] + +[[package]] +name = "orderedmultidict" +version = "1.0.1" +description = "Ordered Multivalue Dictionary" +category = "main" +optional = false +python-versions = "*" +files = [ + {file = "orderedmultidict-1.0.1-py2.py3-none-any.whl", hash = "sha256:43c839a17ee3cdd62234c47deca1a8508a3f2ca1d0678a3bf791c87cf84adbf3"}, + {file = "orderedmultidict-1.0.1.tar.gz", hash = "sha256:04070bbb5e87291cc9bfa51df413677faf2141c73c61d2a5f7b26bea3cd882ad"}, +] + +[package.dependencies] +six = ">=1.8.0" [[package]] name = "packaging" @@ -1176,6 +2049,10 @@ description = "Core utilities for Python packages" category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "packaging-22.0-py3-none-any.whl", hash = "sha256:957e2148ba0e1a3b282772e791ef1d8083648bc131c8ab0c1feba110ce1146c3"}, + {file = "packaging-22.0.tar.gz", hash = "sha256:2198ec20bd4c017b8f9717e00f0c8714076fc2fd93816750ab48e2c41de2cfd3"}, +] [[package]] name = "parso" @@ -1184,6 +2061,10 @@ description = "A Python Parser" category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "parso-0.8.3-py2.py3-none-any.whl", hash = "sha256:c001d4636cd3aecdaf33cbb40aebb59b094be2a74c556778ef5576c175e19e75"}, + {file = "parso-0.8.3.tar.gz", hash = "sha256:8c07be290bb59f03588915921e29e8a50002acaf2cdc5fa0e0114f91709fafa0"}, +] [package.extras] qa = ["flake8 (==3.8.3)", "mypy (==0.782)"] @@ -1196,6 +2077,10 @@ description = "Pexpect allows easy control of interactive console applications." category = "dev" optional = false python-versions = "*" +files = [ + {file = "pexpect-4.8.0-py2.py3-none-any.whl", hash = "sha256:0b48a55dcb3c05f3329815901ea4fc1537514d6ba867a152b581d69ae3710937"}, + {file = "pexpect-4.8.0.tar.gz", hash = "sha256:fc65a43959d153d0114afe13997d439c22823a27cefceb5ff35c2178c6784c0c"}, +] [package.dependencies] ptyprocess = ">=0.5" @@ -1207,6 +2092,10 @@ description = "Tiny 'shelve'-like database with concurrency support" category = "dev" optional = false python-versions = "*" +files = [ + {file = "pickleshare-0.7.5-py2.py3-none-any.whl", hash = "sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56"}, + {file = "pickleshare-0.7.5.tar.gz", hash = "sha256:87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca"}, +] [[package]] name = "pillow" @@ -1215,6 +2104,71 @@ description = "Python Imaging Library (Fork)" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "Pillow-9.4.0-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:2968c58feca624bb6c8502f9564dd187d0e1389964898f5e9e1fbc8533169157"}, + {file = "Pillow-9.4.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c5c1362c14aee73f50143d74389b2c158707b4abce2cb055b7ad37ce60738d47"}, + {file = "Pillow-9.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bd752c5ff1b4a870b7661234694f24b1d2b9076b8bf337321a814c612665f343"}, + {file = "Pillow-9.4.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9a3049a10261d7f2b6514d35bbb7a4dfc3ece4c4de14ef5876c4b7a23a0e566d"}, + {file = "Pillow-9.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:16a8df99701f9095bea8a6c4b3197da105df6f74e6176c5b410bc2df2fd29a57"}, + {file = "Pillow-9.4.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:94cdff45173b1919350601f82d61365e792895e3c3a3443cf99819e6fbf717a5"}, + {file = "Pillow-9.4.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:ed3e4b4e1e6de75fdc16d3259098de7c6571b1a6cc863b1a49e7d3d53e036070"}, + {file = "Pillow-9.4.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d5b2f8a31bd43e0f18172d8ac82347c8f37ef3e0b414431157718aa234991b28"}, + {file = "Pillow-9.4.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:09b89ddc95c248ee788328528e6a2996e09eaccddeeb82a5356e92645733be35"}, + {file = "Pillow-9.4.0-cp310-cp310-win32.whl", hash = "sha256:f09598b416ba39a8f489c124447b007fe865f786a89dbfa48bb5cf395693132a"}, + {file = "Pillow-9.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:f6e78171be3fb7941f9910ea15b4b14ec27725865a73c15277bc39f5ca4f8391"}, + {file = "Pillow-9.4.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:3fa1284762aacca6dc97474ee9c16f83990b8eeb6697f2ba17140d54b453e133"}, + {file = "Pillow-9.4.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:eaef5d2de3c7e9b21f1e762f289d17b726c2239a42b11e25446abf82b26ac132"}, + {file = "Pillow-9.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a4dfdae195335abb4e89cc9762b2edc524f3c6e80d647a9a81bf81e17e3fb6f0"}, + {file = "Pillow-9.4.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6abfb51a82e919e3933eb137e17c4ae9c0475a25508ea88993bb59faf82f3b35"}, + {file = "Pillow-9.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:451f10ef963918e65b8869e17d67db5e2f4ab40e716ee6ce7129b0cde2876eab"}, + {file = "Pillow-9.4.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:6663977496d616b618b6cfa43ec86e479ee62b942e1da76a2c3daa1c75933ef4"}, + {file = "Pillow-9.4.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:60e7da3a3ad1812c128750fc1bc14a7ceeb8d29f77e0a2356a8fb2aa8925287d"}, + {file = "Pillow-9.4.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:19005a8e58b7c1796bc0167862b1f54a64d3b44ee5d48152b06bb861458bc0f8"}, + {file = "Pillow-9.4.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:f715c32e774a60a337b2bb8ad9839b4abf75b267a0f18806f6f4f5f1688c4b5a"}, + {file = "Pillow-9.4.0-cp311-cp311-win32.whl", hash = "sha256:b222090c455d6d1a64e6b7bb5f4035c4dff479e22455c9eaa1bdd4c75b52c80c"}, + {file = "Pillow-9.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:ba6612b6548220ff5e9df85261bddc811a057b0b465a1226b39bfb8550616aee"}, + {file = "Pillow-9.4.0-cp37-cp37m-macosx_10_10_x86_64.whl", hash = "sha256:5f532a2ad4d174eb73494e7397988e22bf427f91acc8e6ebf5bb10597b49c493"}, + {file = "Pillow-9.4.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5dd5a9c3091a0f414a963d427f920368e2b6a4c2f7527fdd82cde8ef0bc7a327"}, + {file = "Pillow-9.4.0-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ef21af928e807f10bf4141cad4746eee692a0dd3ff56cfb25fce076ec3cc8abe"}, + {file = "Pillow-9.4.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:847b114580c5cc9ebaf216dd8c8dbc6b00a3b7ab0131e173d7120e6deade1f57"}, + {file = "Pillow-9.4.0-cp37-cp37m-manylinux_2_28_aarch64.whl", hash = "sha256:653d7fb2df65efefbcbf81ef5fe5e5be931f1ee4332c2893ca638c9b11a409c4"}, + {file = "Pillow-9.4.0-cp37-cp37m-manylinux_2_28_x86_64.whl", hash = "sha256:46f39cab8bbf4a384ba7cb0bc8bae7b7062b6a11cfac1ca4bc144dea90d4a9f5"}, + {file = "Pillow-9.4.0-cp37-cp37m-win32.whl", hash = "sha256:7ac7594397698f77bce84382929747130765f66406dc2cd8b4ab4da68ade4c6e"}, + {file = "Pillow-9.4.0-cp37-cp37m-win_amd64.whl", hash = "sha256:46c259e87199041583658457372a183636ae8cd56dbf3f0755e0f376a7f9d0e6"}, + {file = "Pillow-9.4.0-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:0e51f608da093e5d9038c592b5b575cadc12fd748af1479b5e858045fff955a9"}, + {file = "Pillow-9.4.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:765cb54c0b8724a7c12c55146ae4647e0274a839fb6de7bcba841e04298e1011"}, + {file = "Pillow-9.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:519e14e2c49fcf7616d6d2cfc5c70adae95682ae20f0395e9280db85e8d6c4df"}, + {file = "Pillow-9.4.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d197df5489004db87d90b918033edbeee0bd6df3848a204bca3ff0a903bef837"}, + {file = "Pillow-9.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0845adc64fe9886db00f5ab68c4a8cd933ab749a87747555cec1c95acea64b0b"}, + {file = "Pillow-9.4.0-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:e1339790c083c5a4de48f688b4841f18df839eb3c9584a770cbd818b33e26d5d"}, + {file = "Pillow-9.4.0-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:a96e6e23f2b79433390273eaf8cc94fec9c6370842e577ab10dabdcc7ea0a66b"}, + {file = "Pillow-9.4.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:7cfc287da09f9d2a7ec146ee4d72d6ea1342e770d975e49a8621bf54eaa8f30f"}, + {file = "Pillow-9.4.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:d7081c084ceb58278dd3cf81f836bc818978c0ccc770cbbb202125ddabec6628"}, + {file = "Pillow-9.4.0-cp38-cp38-win32.whl", hash = "sha256:df41112ccce5d47770a0c13651479fbcd8793f34232a2dd9faeccb75eb5d0d0d"}, + {file = "Pillow-9.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:7a21222644ab69ddd9967cfe6f2bb420b460dae4289c9d40ff9a4896e7c35c9a"}, + {file = "Pillow-9.4.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:0f3269304c1a7ce82f1759c12ce731ef9b6e95b6df829dccd9fe42912cc48569"}, + {file = "Pillow-9.4.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cb362e3b0976dc994857391b776ddaa8c13c28a16f80ac6522c23d5257156bed"}, + {file = "Pillow-9.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a2e0f87144fcbbe54297cae708c5e7f9da21a4646523456b00cc956bd4c65815"}, + {file = "Pillow-9.4.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:28676836c7796805914b76b1837a40f76827ee0d5398f72f7dcc634bae7c6264"}, + {file = "Pillow-9.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0884ba7b515163a1a05440a138adeb722b8a6ae2c2b33aea93ea3118dd3a899e"}, + {file = "Pillow-9.4.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:53dcb50fbdc3fb2c55431a9b30caeb2f7027fcd2aeb501459464f0214200a503"}, + {file = "Pillow-9.4.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:e8c5cf126889a4de385c02a2c3d3aba4b00f70234bfddae82a5eaa3ee6d5e3e6"}, + {file = "Pillow-9.4.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:6c6b1389ed66cdd174d040105123a5a1bc91d0aa7059c7261d20e583b6d8cbd2"}, + {file = "Pillow-9.4.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:0dd4c681b82214b36273c18ca7ee87065a50e013112eea7d78c7a1b89a739153"}, + {file = "Pillow-9.4.0-cp39-cp39-win32.whl", hash = "sha256:6d9dfb9959a3b0039ee06c1a1a90dc23bac3b430842dcb97908ddde05870601c"}, + {file = "Pillow-9.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:54614444887e0d3043557d9dbc697dbb16cfb5a35d672b7a0fcc1ed0cf1c600b"}, + {file = "Pillow-9.4.0-pp38-pypy38_pp73-macosx_10_10_x86_64.whl", hash = "sha256:b9b752ab91e78234941e44abdecc07f1f0d8f51fb62941d32995b8161f68cfe5"}, + {file = "Pillow-9.4.0-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d3b56206244dc8711f7e8b7d6cad4663917cd5b2d950799425076681e8766286"}, + {file = "Pillow-9.4.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:aabdab8ec1e7ca7f1434d042bf8b1e92056245fb179790dc97ed040361f16bfd"}, + {file = "Pillow-9.4.0-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:db74f5562c09953b2c5f8ec4b7dfd3f5421f31811e97d1dbc0a7c93d6e3a24df"}, + {file = "Pillow-9.4.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:e9d7747847c53a16a729b6ee5e737cf170f7a16611c143d95aa60a109a59c336"}, + {file = "Pillow-9.4.0-pp39-pypy39_pp73-macosx_10_10_x86_64.whl", hash = "sha256:b52ff4f4e002f828ea6483faf4c4e8deea8d743cf801b74910243c58acc6eda3"}, + {file = "Pillow-9.4.0-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:575d8912dca808edd9acd6f7795199332696d3469665ef26163cd090fa1f8bfa"}, + {file = "Pillow-9.4.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c3c4ed2ff6760e98d262e0cc9c9a7f7b8a9f61aa4d47c58835cdaf7b0b8811bb"}, + {file = "Pillow-9.4.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:e621b0246192d3b9cb1dc62c78cfa4c6f6d2ddc0ec207d43c0dedecb914f152a"}, + {file = "Pillow-9.4.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:8f127e7b028900421cad64f51f75c051b628db17fb00e099eb148761eed598c9"}, + {file = "Pillow-9.4.0.tar.gz", hash = "sha256:a1c2d7780448eb93fbcc3789bf3916aa5720d942e37945f4056680317f1cd23e"}, +] [package.extras] docs = ["furo", "olefile", "sphinx (>=2.4)", "sphinx-copybutton", "sphinx-inline-tabs", "sphinx-issues (>=3.0.1)", "sphinx-removed-in", "sphinxext-opengraph"] @@ -1227,6 +2181,15 @@ description = "A high-level API to automate web browsers" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "playwright-1.29.0-py3-none-macosx_10_13_x86_64.whl", hash = "sha256:c7a4fc12f15fb24fdb810503a6e08db81d38805f739b252645c3eede357e9918"}, + {file = "playwright-1.29.0-py3-none-macosx_11_0_arm64.whl", hash = "sha256:b8c2317789ae2cbca1e345f421dfa6082dac0910a4d0f57f345a395cb9e57197"}, + {file = "playwright-1.29.0-py3-none-macosx_11_0_universal2.whl", hash = "sha256:84ae9f999d57463d6450fd4fb3e9e70695fb2b87c4ca76f4459f054ab6fa6583"}, + {file = "playwright-1.29.0-py3-none-manylinux1_x86_64.whl", hash = "sha256:f9849cb83041a8bff69c7899ab1aef8066e3eb422b437c9c7a3772c22f432323"}, + {file = "playwright-1.29.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2ef51608b56fe7699b7e1e3b7e8484d3677e2bc9054afc78d28489e060300e2b"}, + {file = "playwright-1.29.0-py3-none-win32.whl", hash = "sha256:9203d2977ec9e6716ff5611eb786e838c15742cca1dea4cc1d85de3e699ad25a"}, + {file = "playwright-1.29.0-py3-none-win_amd64.whl", hash = "sha256:8a283d52d1d10a636ba7ce4f90d0d6fd611ee45c8c8f3eaae03b27596439c7fd"}, +] [package.dependencies] greenlet = "2.0.1" @@ -1239,6 +2202,10 @@ description = "plugin and hook calling mechanisms for python" category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "pluggy-1.0.0-py2.py3-none-any.whl", hash = "sha256:74134bbf457f031a36d68416e1509f34bd5ccc019f0bcc952c7b909d06b37bd3"}, + {file = "pluggy-1.0.0.tar.gz", hash = "sha256:4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159"}, +] [package.extras] dev = ["pre-commit", "tox"] @@ -1251,6 +2218,10 @@ description = "Integrate PostHog into any python application." category = "main" optional = false python-versions = "*" +files = [ + {file = "posthog-2.2.0-py2.py3-none-any.whl", hash = "sha256:cf3561a23d6770991f0b890fbe09e20c488e54efe65f9202ffd4e37dd6a90f8a"}, + {file = "posthog-2.2.0.tar.gz", hash = "sha256:1f450a20f7bed217874ded234f6ffc24ae73da37a16aa5bf76335249b34a9f60"}, +] [package.dependencies] backoff = ">=1.10.0,<2.0.0" @@ -1271,6 +2242,10 @@ description = "A drop-in replacement for pprint that's actually pretty" category = "dev" optional = false python-versions = "*" +files = [ + {file = "pprintpp-0.4.0-py2.py3-none-any.whl", hash = "sha256:b6b4dcdd0c0c0d75e4d7b2f21a9e933e5b2ce62b26e1a54537f9651ae5a5c01d"}, + {file = "pprintpp-0.4.0.tar.gz", hash = "sha256:ea826108e2c7f49dc6d66c752973c3fc9749142a798d6b254e1e301cfdbc6403"}, +] [[package]] name = "priority" @@ -1279,6 +2254,10 @@ description = "A pure-Python implementation of the HTTP/2 priority tree" category = "main" optional = false python-versions = ">=3.6.1" +files = [ + {file = "priority-2.0.0-py3-none-any.whl", hash = "sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa"}, + {file = "priority-2.0.0.tar.gz", hash = "sha256:c965d54f1b8d0d0b19479db3924c7c36cf672dbf2aec92d43fbdaf4492ba18c0"}, +] [[package]] name = "prompt-toolkit" @@ -1287,6 +2266,10 @@ description = "Library for building powerful interactive command lines in Python category = "dev" optional = false python-versions = ">=3.6.2" +files = [ + {file = "prompt_toolkit-3.0.36-py3-none-any.whl", hash = "sha256:aa64ad242a462c5ff0363a7b9cfe696c20d55d9fc60c11fd8e632d064804d305"}, + {file = "prompt_toolkit-3.0.36.tar.gz", hash = "sha256:3e163f254bef5a03b146397d7c1963bd3e2812f0964bb9a24e6ec761fd28db63"}, +] [package.dependencies] wcwidth = "*" @@ -1298,6 +2281,10 @@ description = "Beautiful, Pythonic protocol buffers." category = "main" optional = false python-versions = ">=3.6" +files = [ + {file = "proto-plus-1.22.1.tar.gz", hash = "sha256:6c7dfd122dfef8019ff654746be4f5b1d9c80bba787fe9611b508dd88be3a2fa"}, + {file = "proto_plus-1.22.1-py3-none-any.whl", hash = "sha256:ea8982669a23c379f74495bc48e3dcb47c822c484ce8ee1d1d7beb339d4e34c5"}, +] [package.dependencies] protobuf = ">=3.19.0,<5.0.0dev" @@ -1312,6 +2299,22 @@ description = "" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "protobuf-4.21.12-cp310-abi3-win32.whl", hash = "sha256:b135410244ebe777db80298297a97fbb4c862c881b4403b71bac9d4107d61fd1"}, + {file = "protobuf-4.21.12-cp310-abi3-win_amd64.whl", hash = "sha256:89f9149e4a0169cddfc44c74f230d7743002e3aa0b9472d8c28f0388102fc4c2"}, + {file = "protobuf-4.21.12-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:299ea899484ee6f44604deb71f424234f654606b983cb496ea2a53e3c63ab791"}, + {file = "protobuf-4.21.12-cp37-abi3-manylinux2014_aarch64.whl", hash = "sha256:d1736130bce8cf131ac7957fa26880ca19227d4ad68b4888b3be0dea1f95df97"}, + {file = "protobuf-4.21.12-cp37-abi3-manylinux2014_x86_64.whl", hash = "sha256:78a28c9fa223998472886c77042e9b9afb6fe4242bd2a2a5aced88e3f4422aa7"}, + {file = "protobuf-4.21.12-cp37-cp37m-win32.whl", hash = "sha256:3d164928ff0727d97022957c2b849250ca0e64777ee31efd7d6de2e07c494717"}, + {file = "protobuf-4.21.12-cp37-cp37m-win_amd64.whl", hash = "sha256:f45460f9ee70a0ec1b6694c6e4e348ad2019275680bd68a1d9314b8c7e01e574"}, + {file = "protobuf-4.21.12-cp38-cp38-win32.whl", hash = "sha256:6ab80df09e3208f742c98443b6166bcb70d65f52cfeb67357d52032ea1ae9bec"}, + {file = "protobuf-4.21.12-cp38-cp38-win_amd64.whl", hash = "sha256:1f22ac0ca65bb70a876060d96d914dae09ac98d114294f77584b0d2644fa9c30"}, + {file = "protobuf-4.21.12-cp39-cp39-win32.whl", hash = "sha256:27f4d15021da6d2b706ddc3860fac0a5ddaba34ab679dc182b60a8bb4e1121cc"}, + {file = "protobuf-4.21.12-cp39-cp39-win_amd64.whl", hash = "sha256:237216c3326d46808a9f7c26fd1bd4b20015fb6867dc5d263a493ef9a539293b"}, + {file = "protobuf-4.21.12-py2.py3-none-any.whl", hash = "sha256:a53fd3f03e578553623272dc46ac2f189de23862e68565e83dde203d41b76fc5"}, + {file = "protobuf-4.21.12-py3-none-any.whl", hash = "sha256:b98d0148f84e3a3c569e19f52103ca1feacdac0d2df8d6533cf983d1fda28462"}, + {file = "protobuf-4.21.12.tar.gz", hash = "sha256:7cd532c4566d0e6feafecc1059d04c7915aec8e182d1cf7adee8b24ef1e2e6ab"}, +] [[package]] name = "psutil" @@ -1320,6 +2323,22 @@ description = "Cross-platform lib for process and system monitoring in Python." category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "psutil-5.9.4-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:c1ca331af862803a42677c120aff8a814a804e09832f166f226bfd22b56feee8"}, + {file = "psutil-5.9.4-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:68908971daf802203f3d37e78d3f8831b6d1014864d7a85937941bb35f09aefe"}, + {file = "psutil-5.9.4-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:3ff89f9b835100a825b14c2808a106b6fdcc4b15483141482a12c725e7f78549"}, + {file = "psutil-5.9.4-cp27-cp27m-win32.whl", hash = "sha256:852dd5d9f8a47169fe62fd4a971aa07859476c2ba22c2254d4a1baa4e10b95ad"}, + {file = "psutil-5.9.4-cp27-cp27m-win_amd64.whl", hash = "sha256:9120cd39dca5c5e1c54b59a41d205023d436799b1c8c4d3ff71af18535728e94"}, + {file = "psutil-5.9.4-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:6b92c532979bafc2df23ddc785ed116fced1f492ad90a6830cf24f4d1ea27d24"}, + {file = "psutil-5.9.4-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:efeae04f9516907be44904cc7ce08defb6b665128992a56957abc9b61dca94b7"}, + {file = "psutil-5.9.4-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:54d5b184728298f2ca8567bf83c422b706200bcbbfafdc06718264f9393cfeb7"}, + {file = "psutil-5.9.4-cp36-abi3-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:16653106f3b59386ffe10e0bad3bb6299e169d5327d3f187614b1cb8f24cf2e1"}, + {file = "psutil-5.9.4-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:54c0d3d8e0078b7666984e11b12b88af2db11d11249a8ac8920dd5ef68a66e08"}, + {file = "psutil-5.9.4-cp36-abi3-win32.whl", hash = "sha256:149555f59a69b33f056ba1c4eb22bb7bf24332ce631c44a319cec09f876aaeff"}, + {file = "psutil-5.9.4-cp36-abi3-win_amd64.whl", hash = "sha256:fd8522436a6ada7b4aad6638662966de0d61d241cb821239b2ae7013d41a43d4"}, + {file = "psutil-5.9.4-cp38-abi3-macosx_11_0_arm64.whl", hash = "sha256:6001c809253a29599bc0dfd5179d9f8a5779f9dffea1da0f13c53ee568115e1e"}, + {file = "psutil-5.9.4.tar.gz", hash = "sha256:3d7f9739eb435d4b1338944abe23f49584bde5395f27487d2ee25ad9a8774a62"}, +] [package.extras] test = ["enum34", "ipaddress", "mock", "pywin32", "wmi"] @@ -1331,6 +2350,10 @@ description = "Run a subprocess in a pseudo terminal" category = "dev" optional = false python-versions = "*" +files = [ + {file = "ptyprocess-0.7.0-py2.py3-none-any.whl", hash = "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35"}, + {file = "ptyprocess-0.7.0.tar.gz", hash = "sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220"}, +] [[package]] name = "pure-eval" @@ -1339,6 +2362,10 @@ description = "Safely evaluate AST nodes without side effects" category = "dev" optional = false python-versions = "*" +files = [ + {file = "pure_eval-0.2.2-py3-none-any.whl", hash = "sha256:01eaab343580944bc56080ebe0a674b39ec44a945e6d09ba7db3cb8cec289350"}, + {file = "pure_eval-0.2.2.tar.gz", hash = "sha256:2b45320af6dfaa1750f543d714b6d1c520a1688dec6fd24d339063ce0aaa9ac3"}, +] [package.extras] tests = ["pytest"] @@ -1350,6 +2377,10 @@ description = "library with cross-python path, ini-parsing, io, code, log facili category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "py-1.11.0-py2.py3-none-any.whl", hash = "sha256:607c53218732647dff4acdfcd50cb62615cedf612e72d1724fb1a0cc6405b378"}, + {file = "py-1.11.0.tar.gz", hash = "sha256:51c75c4126074b472f746a24399ad32f6053d1b34b68d2fa41e558e6f4a98719"}, +] [[package]] name = "pyasn1" @@ -1358,6 +2389,21 @@ description = "ASN.1 types and codecs" category = "main" optional = false python-versions = "*" +files = [ + {file = "pyasn1-0.4.8-py2.4.egg", hash = "sha256:fec3e9d8e36808a28efb59b489e4528c10ad0f480e57dcc32b4de5c9d8c9fdf3"}, + {file = "pyasn1-0.4.8-py2.5.egg", hash = "sha256:0458773cfe65b153891ac249bcf1b5f8f320b7c2ce462151f8fa74de8934becf"}, + {file = "pyasn1-0.4.8-py2.6.egg", hash = "sha256:5c9414dcfede6e441f7e8f81b43b34e834731003427e5b09e4e00e3172a10f00"}, + {file = "pyasn1-0.4.8-py2.7.egg", hash = "sha256:6e7545f1a61025a4e58bb336952c5061697da694db1cae97b116e9c46abcf7c8"}, + {file = "pyasn1-0.4.8-py2.py3-none-any.whl", hash = "sha256:39c7e2ec30515947ff4e87fb6f456dfc6e84857d34be479c9d4a4ba4bf46aa5d"}, + {file = "pyasn1-0.4.8-py3.1.egg", hash = "sha256:78fa6da68ed2727915c4767bb386ab32cdba863caa7dbe473eaae45f9959da86"}, + {file = "pyasn1-0.4.8-py3.2.egg", hash = "sha256:08c3c53b75eaa48d71cf8c710312316392ed40899cb34710d092e96745a358b7"}, + {file = "pyasn1-0.4.8-py3.3.egg", hash = "sha256:03840c999ba71680a131cfaee6fab142e1ed9bbd9c693e285cc6aca0d555e576"}, + {file = "pyasn1-0.4.8-py3.4.egg", hash = "sha256:7ab8a544af125fb704feadb008c99a88805126fb525280b2270bb25cc1d78a12"}, + {file = "pyasn1-0.4.8-py3.5.egg", hash = "sha256:e89bf84b5437b532b0803ba5c9a5e054d21fec423a89952a74f87fa2c9b7bce2"}, + {file = "pyasn1-0.4.8-py3.6.egg", hash = "sha256:014c0e9976956a08139dc0712ae195324a75e142284d5f87f1a87ee1b068a359"}, + {file = "pyasn1-0.4.8-py3.7.egg", hash = "sha256:99fcc3c8d804d1bc6d9a099921e39d827026409a58f2a720dcdb89374ea0c776"}, + {file = "pyasn1-0.4.8.tar.gz", hash = "sha256:aef77c9fb94a3ac588e87841208bdec464471d9871bd5050a287cc9a475cd0ba"}, +] [[package]] name = "pyasn1-modules" @@ -1366,18 +2412,37 @@ description = "A collection of ASN.1-based protocols modules." category = "main" optional = false python-versions = "*" - -[package.dependencies] -pyasn1 = ">=0.4.6,<0.5.0" - -[[package]] -name = "pycodestyle" -version = "2.8.0" -description = "Python style guide checker" -category = "dev" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" - +files = [ + {file = "pyasn1-modules-0.2.8.tar.gz", hash = "sha256:905f84c712230b2c592c19470d3ca8d552de726050d1d1716282a1f6146be65e"}, + {file = "pyasn1_modules-0.2.8-py2.4.egg", hash = "sha256:0fe1b68d1e486a1ed5473f1302bd991c1611d319bba158e98b106ff86e1d7199"}, + {file = "pyasn1_modules-0.2.8-py2.5.egg", hash = "sha256:fe0644d9ab041506b62782e92b06b8c68cca799e1a9636ec398675459e031405"}, + {file = "pyasn1_modules-0.2.8-py2.6.egg", hash = "sha256:a99324196732f53093a84c4369c996713eb8c89d360a496b599fb1a9c47fc3eb"}, + {file = "pyasn1_modules-0.2.8-py2.7.egg", hash = "sha256:0845a5582f6a02bb3e1bde9ecfc4bfcae6ec3210dd270522fee602365430c3f8"}, + {file = "pyasn1_modules-0.2.8-py2.py3-none-any.whl", hash = "sha256:a50b808ffeb97cb3601dd25981f6b016cbb3d31fbf57a8b8a87428e6158d0c74"}, + {file = "pyasn1_modules-0.2.8-py3.1.egg", hash = "sha256:f39edd8c4ecaa4556e989147ebf219227e2cd2e8a43c7e7fcb1f1c18c5fd6a3d"}, + {file = "pyasn1_modules-0.2.8-py3.2.egg", hash = "sha256:b80486a6c77252ea3a3e9b1e360bc9cf28eaac41263d173c032581ad2f20fe45"}, + {file = "pyasn1_modules-0.2.8-py3.3.egg", hash = "sha256:65cebbaffc913f4fe9e4808735c95ea22d7a7775646ab690518c056784bc21b4"}, + {file = "pyasn1_modules-0.2.8-py3.4.egg", hash = "sha256:15b7c67fabc7fc240d87fb9aabf999cf82311a6d6fb2c70d00d3d0604878c811"}, + {file = "pyasn1_modules-0.2.8-py3.5.egg", hash = "sha256:426edb7a5e8879f1ec54a1864f16b882c2837bfd06eee62f2c982315ee2473ed"}, + {file = "pyasn1_modules-0.2.8-py3.6.egg", hash = "sha256:cbac4bc38d117f2a49aeedec4407d23e8866ea4ac27ff2cf7fb3e5b570df19e0"}, + {file = "pyasn1_modules-0.2.8-py3.7.egg", hash = "sha256:c29a5e5cc7a3f05926aff34e097e84f8589cd790ce0ed41b67aed6857b26aafd"}, +] + +[package.dependencies] +pyasn1 = ">=0.4.6,<0.5.0" + +[[package]] +name = "pycodestyle" +version = "2.8.0" +description = "Python style guide checker" +category = "dev" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "pycodestyle-2.8.0-py2.py3-none-any.whl", hash = "sha256:720f8b39dde8b293825e7ff02c475f3077124006db4f440dcbc9a20b76548a20"}, + {file = "pycodestyle-2.8.0.tar.gz", hash = "sha256:eddd5847ef438ea1c7870ca7eb78a9d47ce0cdb4851a5523949f2601d0cbbe7f"}, +] + [[package]] name = "pycparser" version = "2.21" @@ -1385,6 +2450,10 @@ description = "C parser in Python" category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "pycparser-2.21-py2.py3-none-any.whl", hash = "sha256:8ee45429555515e1f6b185e78100aea234072576aa43ab53aefcae078162fca9"}, + {file = "pycparser-2.21.tar.gz", hash = "sha256:e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206"}, +] [[package]] name = "pydantic" @@ -1393,6 +2462,44 @@ description = "Data validation and settings management using python type hints" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "pydantic-1.10.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b5635de53e6686fe7a44b5cf25fcc419a0d5e5c1a1efe73d49d48fe7586db854"}, + {file = "pydantic-1.10.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6dc1cc241440ed7ca9ab59d9929075445da6b7c94ced281b3dd4cfe6c8cff817"}, + {file = "pydantic-1.10.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:51bdeb10d2db0f288e71d49c9cefa609bca271720ecd0c58009bd7504a0c464c"}, + {file = "pydantic-1.10.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:78cec42b95dbb500a1f7120bdf95c401f6abb616bbe8785ef09887306792e66e"}, + {file = "pydantic-1.10.4-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:8775d4ef5e7299a2f4699501077a0defdaac5b6c4321173bcb0f3c496fbadf85"}, + {file = "pydantic-1.10.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:572066051eeac73d23f95ba9a71349c42a3e05999d0ee1572b7860235b850cc6"}, + {file = "pydantic-1.10.4-cp310-cp310-win_amd64.whl", hash = "sha256:7feb6a2d401f4d6863050f58325b8d99c1e56f4512d98b11ac64ad1751dc647d"}, + {file = "pydantic-1.10.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:39f4a73e5342b25c2959529f07f026ef58147249f9b7431e1ba8414a36761f53"}, + {file = "pydantic-1.10.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:983e720704431a6573d626b00662eb78a07148c9115129f9b4351091ec95ecc3"}, + {file = "pydantic-1.10.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:75d52162fe6b2b55964fbb0af2ee58e99791a3138588c482572bb6087953113a"}, + {file = "pydantic-1.10.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fdf8d759ef326962b4678d89e275ffc55b7ce59d917d9f72233762061fd04a2d"}, + {file = "pydantic-1.10.4-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:05a81b006be15655b2a1bae5faa4280cf7c81d0e09fcb49b342ebf826abe5a72"}, + {file = "pydantic-1.10.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d88c4c0e5c5dfd05092a4b271282ef0588e5f4aaf345778056fc5259ba098857"}, + {file = "pydantic-1.10.4-cp311-cp311-win_amd64.whl", hash = "sha256:6a05a9db1ef5be0fe63e988f9617ca2551013f55000289c671f71ec16f4985e3"}, + {file = "pydantic-1.10.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:887ca463c3bc47103c123bc06919c86720e80e1214aab79e9b779cda0ff92a00"}, + {file = "pydantic-1.10.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fdf88ab63c3ee282c76d652fc86518aacb737ff35796023fae56a65ced1a5978"}, + {file = "pydantic-1.10.4-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a48f1953c4a1d9bd0b5167ac50da9a79f6072c63c4cef4cf2a3736994903583e"}, + {file = "pydantic-1.10.4-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:a9f2de23bec87ff306aef658384b02aa7c32389766af3c5dee9ce33e80222dfa"}, + {file = "pydantic-1.10.4-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:cd8702c5142afda03dc2b1ee6bc358b62b3735b2cce53fc77b31ca9f728e4bc8"}, + {file = "pydantic-1.10.4-cp37-cp37m-win_amd64.whl", hash = "sha256:6e7124d6855b2780611d9f5e1e145e86667eaa3bd9459192c8dc1a097f5e9903"}, + {file = "pydantic-1.10.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0b53e1d41e97063d51a02821b80538053ee4608b9a181c1005441f1673c55423"}, + {file = "pydantic-1.10.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:55b1625899acd33229c4352ce0ae54038529b412bd51c4915349b49ca575258f"}, + {file = "pydantic-1.10.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:301d626a59edbe5dfb48fcae245896379a450d04baeed50ef40d8199f2733b06"}, + {file = "pydantic-1.10.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b6f9d649892a6f54a39ed56b8dfd5e08b5f3be5f893da430bed76975f3735d15"}, + {file = "pydantic-1.10.4-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d7b5a3821225f5c43496c324b0d6875fde910a1c2933d726a743ce328fbb2a8c"}, + {file = "pydantic-1.10.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:f2f7eb6273dd12472d7f218e1fef6f7c7c2f00ac2e1ecde4db8824c457300416"}, + {file = "pydantic-1.10.4-cp38-cp38-win_amd64.whl", hash = "sha256:4b05697738e7d2040696b0a66d9f0a10bec0efa1883ca75ee9e55baf511909d6"}, + {file = "pydantic-1.10.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a9a6747cac06c2beb466064dda999a13176b23535e4c496c9d48e6406f92d42d"}, + {file = "pydantic-1.10.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:eb992a1ef739cc7b543576337bebfc62c0e6567434e522e97291b251a41dad7f"}, + {file = "pydantic-1.10.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:990406d226dea0e8f25f643b370224771878142155b879784ce89f633541a024"}, + {file = "pydantic-1.10.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2e82a6d37a95e0b1b42b82ab340ada3963aea1317fd7f888bb6b9dfbf4fff57c"}, + {file = "pydantic-1.10.4-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9193d4f4ee8feca58bc56c8306bcb820f5c7905fd919e0750acdeeeef0615b28"}, + {file = "pydantic-1.10.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:2b3ce5f16deb45c472dde1a0ee05619298c864a20cded09c4edd820e1454129f"}, + {file = "pydantic-1.10.4-cp39-cp39-win_amd64.whl", hash = "sha256:9cbdc268a62d9a98c56e2452d6c41c0263d64a2009aac69246486f01b4f594c4"}, + {file = "pydantic-1.10.4-py3-none-any.whl", hash = "sha256:4948f264678c703f3877d1c8877c4e3b2e12e549c57795107f08cf70c6ec7774"}, + {file = "pydantic-1.10.4.tar.gz", hash = "sha256:b9a3859f24eb4e097502a3be1fb4b2abb79b6103dd9e2e0edb70613a4459a648"}, +] [package.dependencies] typing-extensions = ">=4.2.0" @@ -1408,6 +2515,10 @@ description = "A port of node.js's EventEmitter to python." category = "main" optional = false python-versions = "*" +files = [ + {file = "pyee-9.0.4-py2.py3-none-any.whl", hash = "sha256:9f066570130c554e9cc12de5a9d86f57c7ee47fece163bbdaa3e9c933cfbdfa5"}, + {file = "pyee-9.0.4.tar.gz", hash = "sha256:2770c4928abc721f46b705e6a72b0c59480c4a69c9a83ca0b00bb994f1ea4b32"}, +] [package.dependencies] typing-extensions = "*" @@ -1419,6 +2530,10 @@ description = "passive checker of Python programs" category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "pyflakes-2.4.0-py2.py3-none-any.whl", hash = "sha256:3bb3a3f256f4b7968c9c788781e4ff07dce46bdf12339dcda61053375426ee2e"}, + {file = "pyflakes-2.4.0.tar.gz", hash = "sha256:05a85c2872edf37a4ed30b0cce2f6093e1d0581f8c19d7393122da7e25b2b24c"}, +] [[package]] name = "pygments" @@ -1427,6 +2542,10 @@ description = "Pygments is a syntax highlighting package written in Python." category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "Pygments-2.14.0-py3-none-any.whl", hash = "sha256:fa7bd7bd2771287c0de303af8bfdfc731f51bd2c6a47ab69d117138893b82717"}, + {file = "Pygments-2.14.0.tar.gz", hash = "sha256:b3ed06a9e8ac9a9aae5a6f5dbe78a8a58655d17b43b93c078f094ddc476ae297"}, +] [package.extras] plugins = ["importlib-metadata"] @@ -1438,6 +2557,58 @@ description = "Call stack profiler for Python. Shows you why your code is slow!" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "pyinstrument-4.4.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:8874f8f58cfcb1ff134dc8e4a2b31ab9175adb271a4423596ed7ac8183592cf8"}, + {file = "pyinstrument-4.4.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e5f4d6e1c395f259f67a923a9c54dc3eaccd5f02540598da4f865c4bb3545762"}, + {file = "pyinstrument-4.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d70fed48ddd0078e287fb580daaeede4d8703a9edc8bf4f703308a77920bac37"}, + {file = "pyinstrument-4.4.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9fda1bd596e81ecd2b6a976eb9b930a757a5dd04071583d0141d059e34eed83f"}, + {file = "pyinstrument-4.4.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2f57b61d39d3b1a4d773da16baa8456aa66102d6016ce1f39817051550cbe47e"}, + {file = "pyinstrument-4.4.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:5a9aead0ca5579473f66fed4c449c693feee464802b5ba9b98772e64e02c575c"}, + {file = "pyinstrument-4.4.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:375a340c3fbebd922a35b0834de1c82d1b4fea681df49f99729439a6cb5e6ad4"}, + {file = "pyinstrument-4.4.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b9cbaf3bcda5ad9af4c9a7bf4f1b8f15bb32c4cadf554d0a2c723892c898021b"}, + {file = "pyinstrument-4.4.0-cp310-cp310-win32.whl", hash = "sha256:97cbeb5f5a048dc6eb047495f73db90c9e2ec97606e65298c7ea2c61fa52de38"}, + {file = "pyinstrument-4.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:73edbce7fda1b3d8cab0b6c39c43b012167d783c072f40928600c3357d1a5dc5"}, + {file = "pyinstrument-4.4.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:7db8cb55182883be48520eb915bd1769f176a4813ce0cc38243aa2d1182e7ce7"}, + {file = "pyinstrument-4.4.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:7c614e2c241fb558a25973019ff43ce027ba4958bcb87383f0b0789af9c4d03b"}, + {file = "pyinstrument-4.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3c012422c851f0457c3cb82d8b1259d96fa0dcddc0f1e8bf4d97f0b2efe54485"}, + {file = "pyinstrument-4.4.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e4f5ad100710dda68f9f345961780bf4f0cbb9fd3e46295d099bb9ad65b179ea"}, + {file = "pyinstrument-4.4.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9a4a053cd67102c6fcc313366ea6be97cfce7eae2b9e57e62c9be8adbbdebc17"}, + {file = "pyinstrument-4.4.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:1d2a1e53615c8ef210286e4d2d93be0d3e8296995b090df29a0b7ddeae5d874b"}, + {file = "pyinstrument-4.4.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:b2a6609ef74ad8ba292a11fbd975660bc86466c7eaab1ff11360d24e0300800b"}, + {file = "pyinstrument-4.4.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3643084ee8ad22d9ea2adb13d65d4b6e18810113e4176b19d026a011957f8c7c"}, + {file = "pyinstrument-4.4.0-cp311-cp311-win32.whl", hash = "sha256:fcd717910a8ab6deca353aded890403bbaea14a6dd99a87c3367f24721d2d6aa"}, + {file = "pyinstrument-4.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:be9ac54a4dd07d969d5941e4dcba67d5aef5f6826f43b9ddda65553816f6abca"}, + {file = "pyinstrument-4.4.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:39584c0fec147e3bbfa7b28454332f9801af5f93331f4143f24a4b0f9e3cb470"}, + {file = "pyinstrument-4.4.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5491a5cb3ae5e88436d48b4b3de8328286e843e7307116dc2cca397c9c2ffe21"}, + {file = "pyinstrument-4.4.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d66fcc94f0ebaab6bcbbdfa2482f833dd634352a20295616ea45286e990f7446"}, + {file = "pyinstrument-4.4.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b72bde0b1a03d1b2dc9b9d79546f551df6f67673cca816614e98ea0aebd3bc50"}, + {file = "pyinstrument-4.4.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:0bbd169b92147ec5d67ed160c300dda504059cfd81e953ed5b059e8ef92bb482"}, + {file = "pyinstrument-4.4.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:e5233022ba511ef7ecfef2e07d162c0817048c995f0940f9aa2f6a1936afcb9c"}, + {file = "pyinstrument-4.4.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:5e750fc3afb9acc288ad84b183a5ccd863e9185c435b445fcc62e0c133af9b7f"}, + {file = "pyinstrument-4.4.0-cp37-cp37m-win32.whl", hash = "sha256:2d131b98f116fb895d759dfb8c1078e0e9fa8987a9f44f566d29221545f75bd4"}, + {file = "pyinstrument-4.4.0-cp37-cp37m-win_amd64.whl", hash = "sha256:de83152bafc9eed4e5469e340b6002be825151f0654c32bbb9a3a7e31708d227"}, + {file = "pyinstrument-4.4.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:a7c774c4b8df21664b082d3e72fa8cbc0631fe9bb222bb9d285ccfe9cd9b4909"}, + {file = "pyinstrument-4.4.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:7526f0b1dab721ddc19920fa1f4eeaa5bcb658a4d18ac9c50868e84f911f794b"}, + {file = "pyinstrument-4.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:59f5f479db277b3dbeb0c6843a7e9a38ee8b7c23d75b9ef764d96cb522d96212"}, + {file = "pyinstrument-4.4.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ffeeaa0d036a8bef31da6fc13c4ea097160f913d86319897314113bb9271af4c"}, + {file = "pyinstrument-4.4.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bfc4e2fd670a570ea847f6897283d10d4b9606170e491f01b75488ed1aa37a81"}, + {file = "pyinstrument-4.4.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:ffd9a9fa73fd83a40252430c6ebf8dfff7c668cc68eab4a92562b8b27c302598"}, + {file = "pyinstrument-4.4.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:09167ece8802bc03a63e97536dcefd9c1a340dae686f40914cf995099bc0d0af"}, + {file = "pyinstrument-4.4.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:9e7d1cc3affef4a7e4695bb87c6cfcd577e2dac508624a91481f24217ef78c57"}, + {file = "pyinstrument-4.4.0-cp38-cp38-win32.whl", hash = "sha256:b50cf50513a5318738c3c7147f02596cda4891089acf2f627bb65954fc5bcbfd"}, + {file = "pyinstrument-4.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:dd9625cf136eb6684d9ca555a5088f21a7ac6c6cb2ece3ae45d09772906ceba8"}, + {file = "pyinstrument-4.4.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:a8afee175335005d2964848b77579bfc18f011ea74b59b79ab6d5b35433bf3e3"}, + {file = "pyinstrument-4.4.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ebc63b70845e3a44b673f7dcdc78ac2c475684db41b0402eea370f194da2a287"}, + {file = "pyinstrument-4.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bb89033e41e74dc2ac4fd882269e91ddf677588efa665d2be8b718e96ea4cec6"}, + {file = "pyinstrument-4.4.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9b2bcd803d273c8addf01eaf75a42ae0a2a9196a58fb0ebb8d29be75abb88701"}, + {file = "pyinstrument-4.4.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:50727b686a0961a11eba2fe6205d0899f3479c983bcf34abb114d6da70bc1b93"}, + {file = "pyinstrument-4.4.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:4f07941bb5dd5cd730fc84eef6497ef9f0807c686e68d0c6b1f464589646a3b7"}, + {file = "pyinstrument-4.4.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:30f5ce299c3219559870117c5b0825f33243808be375be9c3525572ba050c2db"}, + {file = "pyinstrument-4.4.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:9a13c75b24bf8eed5a4356ffa8a419cc534284a529f2b314f3e10275a820420f"}, + {file = "pyinstrument-4.4.0-cp39-cp39-win32.whl", hash = "sha256:e5583b0d23f87631af06bb9f3c184190c889c194b02553eed132de966324bdf9"}, + {file = "pyinstrument-4.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:a19784a898133b7e0ffe4489155bacd2d07ec48ea059f9bf50033dc2b814c273"}, + {file = "pyinstrument-4.4.0.tar.gz", hash = "sha256:be34a2e8118c14a616a64538e02430d9099d5d67d8a370f2888e4ac71e52bbb7"}, +] [package.extras] jupyter = ["ipython"] @@ -1449,6 +2620,10 @@ description = "JSON Web Token implementation in Python" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "PyJWT-2.6.0-py3-none-any.whl", hash = "sha256:d83c3d892a77bbb74d3e1a2cfa90afaadb60945205d1095d9221f04466f64c14"}, + {file = "PyJWT-2.6.0.tar.gz", hash = "sha256:69285c7e31fc44f68a1feb309e948e0df53259d579295e6cfe2b1792329f05fd"}, +] [package.extras] crypto = ["cryptography (>=3.4.0)"] @@ -1463,6 +2638,7 @@ description = "Pure Python imaging library." category = "main" optional = false python-versions = "*" +files = [] develop = false [package.source] @@ -1478,6 +2654,7 @@ description = "PNG support for Pymaging" category = "main" optional = false python-versions = "*" +files = [] develop = false [package.dependencies] @@ -1496,6 +2673,10 @@ description = "pytest: simple powerful testing with Python" category = "dev" optional = false python-versions = ">=3.7" +files = [ + {file = "pytest-7.2.0-py3-none-any.whl", hash = "sha256:892f933d339f068883b6fd5a459f03d85bfcb355e4981e146d2c7616c21fef71"}, + {file = "pytest-7.2.0.tar.gz", hash = "sha256:c4014eb40e10f11f355ad4e3c2fb2c6c6d1919c73f3b5a433de4708202cade59"}, +] [package.dependencies] attrs = ">=19.2.0" @@ -1516,6 +2697,7 @@ description = "Pytest support for asyncio" category = "dev" optional = false python-versions = ">=3.7" +files = [] develop = false [package.dependencies] @@ -1537,6 +2719,10 @@ description = "Wrap tests with fixtures in freeze_time" category = "dev" optional = false python-versions = "*" +files = [ + {file = "pytest-freezegun-0.4.2.zip", hash = "sha256:19c82d5633751bf3ec92caa481fb5cffaac1787bd485f0df6436fd6242176949"}, + {file = "pytest_freezegun-0.4.2-py2.py3-none-any.whl", hash = "sha256:5318a6bfb8ba4b709c8471c94d0033113877b3ee02da5bfcd917c1889cde99a7"}, +] [package.dependencies] freezegun = ">0.3" @@ -1549,6 +2735,9 @@ description = "use icdiff for better error messages in pytest assertions" category = "dev" optional = false python-versions = ">=3.6" +files = [ + {file = "pytest-icdiff-0.5.tar.gz", hash = "sha256:3a14097f4385665cb04330e6ae09a3dd430375f717e94482af6944470ad5f100"}, +] [package.dependencies] icdiff = "*" @@ -1562,6 +2751,10 @@ description = "It helps to use fixtures in pytest.mark.parametrize" category = "dev" optional = false python-versions = "*" +files = [ + {file = "pytest-lazy-fixture-0.6.3.tar.gz", hash = "sha256:0e7d0c7f74ba33e6e80905e9bfd81f9d15ef9a790de97993e34213deb5ad10ac"}, + {file = "pytest_lazy_fixture-0.6.3-py3-none-any.whl", hash = "sha256:e0b379f38299ff27a653f03eaa69b08a6fd4484e46fd1c9907d984b9f9daeda6"}, +] [package.dependencies] pytest = ">=3.2.5" @@ -1573,6 +2766,10 @@ description = "A pytest plugin that allows you recording of network interactions category = "dev" optional = false python-versions = ">=3.5" +files = [ + {file = "pytest-recording-0.12.1.tar.gz", hash = "sha256:0d1f36d10dea5090cab8ecd230e5dc937c97b9fed193874b330d2926ddea028f"}, + {file = "pytest_recording-0.12.1-py3-none-any.whl", hash = "sha256:6b5546b822b270b8d7338f70950453be45e4aa5bfd884d97583dfa47288380f9"}, +] [package.dependencies] attrs = "*" @@ -1586,6 +2783,10 @@ description = "Extensions to the standard Python datetime module" category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" +files = [ + {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"}, + {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"}, +] [package.dependencies] six = ">=1.5" @@ -1597,6 +2798,9 @@ description = "A streaming multipart parser for Python" category = "main" optional = false python-versions = "*" +files = [ + {file = "python-multipart-0.0.5.tar.gz", hash = "sha256:f7bb5f611fc600d15fa47b3974c8aa16e93724513b49b5f95c81e6624c83fa43"}, +] [package.dependencies] six = ">=1.4.0" @@ -1608,6 +2812,41 @@ description = "YAML parser and emitter for Python" category = "main" optional = false python-versions = ">=3.6" +files = [ + {file = "PyYAML-6.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53"}, + {file = "PyYAML-6.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9df7ed3b3d2e0ecfe09e14741b857df43adb5a3ddadc919a2d94fbdf78fea53c"}, + {file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:77f396e6ef4c73fdc33a9157446466f1cff553d979bd00ecb64385760c6babdc"}, + {file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a80a78046a72361de73f8f395f1f1e49f956c6be882eed58505a15f3e430962b"}, + {file = "PyYAML-6.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5"}, + {file = "PyYAML-6.0-cp310-cp310-win32.whl", hash = "sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513"}, + {file = "PyYAML-6.0-cp310-cp310-win_amd64.whl", hash = "sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a"}, + {file = "PyYAML-6.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86"}, + {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f"}, + {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92"}, + {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:98c4d36e99714e55cfbaaee6dd5badbc9a1ec339ebfc3b1f52e293aee6bb71a4"}, + {file = "PyYAML-6.0-cp36-cp36m-win32.whl", hash = "sha256:0283c35a6a9fbf047493e3a0ce8d79ef5030852c51e9d911a27badfde0605293"}, + {file = "PyYAML-6.0-cp36-cp36m-win_amd64.whl", hash = "sha256:07751360502caac1c067a8132d150cf3d61339af5691fe9e87803040dbc5db57"}, + {file = "PyYAML-6.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:819b3830a1543db06c4d4b865e70ded25be52a2e0631ccd2f6a47a2822f2fd7c"}, + {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:473f9edb243cb1935ab5a084eb238d842fb8f404ed2193a915d1784b5a6b5fc0"}, + {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0ce82d761c532fe4ec3f87fc45688bdd3a4c1dc5e0b4a19814b9009a29baefd4"}, + {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:231710d57adfd809ef5d34183b8ed1eeae3f76459c18fb4a0b373ad56bedcdd9"}, + {file = "PyYAML-6.0-cp37-cp37m-win32.whl", hash = "sha256:c5687b8d43cf58545ade1fe3e055f70eac7a5a1a0bf42824308d868289a95737"}, + {file = "PyYAML-6.0-cp37-cp37m-win_amd64.whl", hash = "sha256:d15a181d1ecd0d4270dc32edb46f7cb7733c7c508857278d3d378d14d606db2d"}, + {file = "PyYAML-6.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0b4624f379dab24d3725ffde76559cff63d9ec94e1736b556dacdfebe5ab6d4b"}, + {file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:213c60cd50106436cc818accf5baa1aba61c0189ff610f64f4a3e8c6726218ba"}, + {file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9fa600030013c4de8165339db93d182b9431076eb98eb40ee068700c9c813e34"}, + {file = "PyYAML-6.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:277a0ef2981ca40581a47093e9e2d13b3f1fbbeffae064c1d21bfceba2030287"}, + {file = "PyYAML-6.0-cp38-cp38-win32.whl", hash = "sha256:d4eccecf9adf6fbcc6861a38015c2a64f38b9d94838ac1810a9023a0609e1b78"}, + {file = "PyYAML-6.0-cp38-cp38-win_amd64.whl", hash = "sha256:1e4747bc279b4f613a09eb64bba2ba602d8a6664c6ce6396a4d0cd413a50ce07"}, + {file = "PyYAML-6.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:055d937d65826939cb044fc8c9b08889e8c743fdc6a32b33e2390f66013e449b"}, + {file = "PyYAML-6.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e61ceaab6f49fb8bdfaa0f92c4b57bcfbea54c09277b1b4f7ac376bfb7a7c174"}, + {file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d67d839ede4ed1b28a4e8909735fc992a923cdb84e618544973d7dfc71540803"}, + {file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cba8c411ef271aa037d7357a2bc8f9ee8b58b9965831d9e51baf703280dc73d3"}, + {file = "PyYAML-6.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:40527857252b61eacd1d9af500c3337ba8deb8fc298940291486c465c8b46ec0"}, + {file = "PyYAML-6.0-cp39-cp39-win32.whl", hash = "sha256:b5b9eccad747aabaaffbc6064800670f0c297e52c12754eb1d976c57e4f74dcb"}, + {file = "PyYAML-6.0-cp39-cp39-win_amd64.whl", hash = "sha256:b3d267842bf12586ba6c734f89d1f5b871df0273157918b0ccefa29deb05c21c"}, + {file = "PyYAML-6.0.tar.gz", hash = "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2"}, +] [[package]] name = "qrcode" @@ -1616,6 +2855,9 @@ description = "QR Code image generator" category = "main" optional = false python-versions = ">=3.6" +files = [ + {file = "qrcode-7.3.1.tar.gz", hash = "sha256:375a6ff240ca9bd41adc070428b5dfc1dcfbb0f2507f1ac848f6cded38956578"}, +] [package.dependencies] colorama = {version = "*", markers = "platform_system == \"Windows\""} @@ -1635,6 +2877,10 @@ description = "Python HTTP for Humans." category = "main" optional = false python-versions = ">=3.7, <4" +files = [ + {file = "requests-2.28.1-py3-none-any.whl", hash = "sha256:8fefa2a1a1365bf5520aac41836fbee479da67864514bdb821f31ce07ce65349"}, + {file = "requests-2.28.1.tar.gz", hash = "sha256:7c5599b102feddaa661c826c56ab4fee28bfd17f5abca1ebbe3e7f19d7c97983"}, +] [package.dependencies] certifi = ">=2017.4.17" @@ -1653,6 +2899,10 @@ description = "Validating URI References per RFC 3986" category = "main" optional = false python-versions = "*" +files = [ + {file = "rfc3986-1.5.0-py2.py3-none-any.whl", hash = "sha256:a86d6e1f5b1dc238b218b012df0aa79409667bb209e58da56d0b94704e712a97"}, + {file = "rfc3986-1.5.0.tar.gz", hash = "sha256:270aaf10d87d0d4e095063c65bf3ddbc6ee3d0b226328ce21e036f946e421835"}, +] [package.dependencies] idna = {version = "*", optional = true, markers = "extra == \"idna2008\""} @@ -1667,6 +2917,10 @@ description = "Easy and powerful exception tracking with Rollbar. Send messages category = "main" optional = false python-versions = "*" +files = [ + {file = "rollbar-0.16.3-py3-none-any.whl", hash = "sha256:f06e23b36d7d1b547f32f287da9367b9bf53319f611da0ec9e891859507ac94e"}, + {file = "rollbar-0.16.3.tar.gz", hash = "sha256:02313dfc60710ec736ab033d0f8c969d857a8b991cd67e0c1a91620e8a04ede2"}, +] [package.dependencies] requests = {version = ">=0.12.1", markers = "python_version >= \"3.6\""} @@ -1679,6 +2933,10 @@ description = "Pure-Python RSA implementation" category = "main" optional = false python-versions = ">=3.6,<4" +files = [ + {file = "rsa-4.9-py3-none-any.whl", hash = "sha256:90260d9058e514786967344d0ef75fa8727eed8a7d2e43ce9f4bcf1b536174f7"}, + {file = "rsa-4.9.tar.gz", hash = "sha256:e38464a49c6c85d7f1351b0126661487a7e0a14a50f1675ec50eb34d4f20ef21"}, +] [package.dependencies] pyasn1 = ">=0.1.3" @@ -1690,6 +2948,31 @@ description = "FFI bindings to libsecp256k1" category = "main" optional = false python-versions = "*" +files = [ + {file = "secp256k1-0.14.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:f666c67dcf1dc69e1448b2ede5e12aaf382b600204a61dbc65e4f82cea444405"}, + {file = "secp256k1-0.14.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:fcabb3c3497a902fb61eec72d1b69bf72747d7bcc2a732d56d9319a1e8322262"}, + {file = "secp256k1-0.14.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:7a27c479ab60571502516a1506a562d0a9df062de8ad645313fabfcc97252816"}, + {file = "secp256k1-0.14.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:f4b9306bff6dde020444dfee9ca9b9f5b20ca53a2c0b04898361a3f43d5daf2e"}, + {file = "secp256k1-0.14.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:72735da6cb28273e924431cd40aa607e7f80ef09608c8c9300be2e0e1d2417b4"}, + {file = "secp256k1-0.14.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:87f4ad42a370f768910585989a301d1d65de17dcd86f6e8def9b021364b34d5c"}, + {file = "secp256k1-0.14.0-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:130f119b06142e597c10eb4470b5a38eae865362d01aaef06b113478d77f728d"}, + {file = "secp256k1-0.14.0-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:3aedcfe6eb1c5fa7c6be25b7cc91c76d8eb984271920ba0f7a934ae41ed56f51"}, + {file = "secp256k1-0.14.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:c91dd3154f6c46ac798d9a41166120e1751222587f54516cc3f378f56ce4ac82"}, + {file = "secp256k1-0.14.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:fec790cb6d0d37129ca0ce5b3f8e85692d5fb618d1c440f189453d18694035df"}, + {file = "secp256k1-0.14.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:63eb148196b8f646922d4be6739b17fbbf50ebb3a020078c823e2445d88b7a81"}, + {file = "secp256k1-0.14.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:adc23a4c5d24c95191638eb2ca313097827f07db102e77b59faed15d50c98cae"}, + {file = "secp256k1-0.14.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:ce0314788d3248b275426501228969fd32f6501c9d1837902ee0e7bd8264a36f"}, + {file = "secp256k1-0.14.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:bc761894b3634021686714278fc62b73395fa3eded33453eadfd8a00a6c44ef3"}, + {file = "secp256k1-0.14.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:373dc8bca735f3c2d73259aa2711a9ecea2f3c7edbb663555fe3422e3dd76102"}, + {file = "secp256k1-0.14.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:fe3f503c9dfdf663b500d3e0688ad842e116c2907ad3f1e1d685812df3f56290"}, + {file = "secp256k1-0.14.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:4b1bf09953cde181132cf5e9033065615e5c2694e803165e2db763efa47695e5"}, + {file = "secp256k1-0.14.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:6af07be5f8612628c3638dc7b208f6cc78d0abae3e25797eadb13890c7d5da81"}, + {file = "secp256k1-0.14.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:a8dbd75a9fb6f42de307f3c5e24573fe59c3374637cbf39136edc66c200a4029"}, + {file = "secp256k1-0.14.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:97a30c8dae633cb18135c76b6517ae99dc59106818e8985be70dbc05dcc06c0d"}, + {file = "secp256k1-0.14.0-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:f4062d8c101aa63b9ecb3709f1f075ad9c01b6672869bbaa1bd77271816936a7"}, + {file = "secp256k1-0.14.0-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c9e7c024ff17e9b9d7c392bb2a917da231d6cb40ab119389ff1f51dca10339a4"}, + {file = "secp256k1-0.14.0.tar.gz", hash = "sha256:82c06712d69ef945220c8b53c1a0d424c2ff6a1f64aee609030df79ad8383397"}, +] [package.dependencies] cffi = ">=1.3.0" @@ -1701,6 +2984,10 @@ description = "Python client for Sentry (https://sentry.io)" category = "main" optional = false python-versions = "*" +files = [ + {file = "sentry-sdk-1.13.0.tar.gz", hash = "sha256:72da0766c3069a3941eadbdfa0996f83f5a33e55902a19ba399557cfee1dddcc"}, + {file = "sentry_sdk-1.13.0-py2.py3-none-any.whl", hash = "sha256:b7ff6318183e551145b5c4766eb65b59ad5b63ff234dffddc5fb50340cad6729"}, +] [package.dependencies] certifi = "*" @@ -1736,12 +3023,28 @@ description = "Easily download, build, install, upgrade, and uninstall Python pa category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "setuptools-65.5.1-py3-none-any.whl", hash = "sha256:d0b9a8433464d5800cbe05094acf5c6d52a91bfac9b52bcfc4d41382be5d5d31"}, + {file = "setuptools-65.5.1.tar.gz", hash = "sha256:e197a19aa8ec9722928f2206f8de752def0e4c9fc6953527360d1c36d94ddb2f"}, +] [package.extras] docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-hoverxref (<2)", "sphinx-inline-tabs", "sphinx-notfound-page (==0.8.3)", "sphinx-reredirects", "sphinxcontrib-towncrier"] testing = ["build[virtualenv]", "filelock (>=3.4.0)", "flake8 (<5)", "flake8-2020", "ini2toml[lite] (>=0.9)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pip (>=19.1)", "pip-run (>=8.8)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)", "pytest-perf", "pytest-timeout", "pytest-xdist", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"] testing-integration = ["build[virtualenv]", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"] +[[package]] +name = "shellous" +version = "0.22.0" +description = "Async Processes and Pipelines" +category = "main" +optional = false +python-versions = ">=3.9,<4.0" +files = [ + {file = "shellous-0.22.0-py3-none-any.whl", hash = "sha256:b7f7a2af5a177e0677659c06f24aa2b7f91f36eae9bfee0e2b3045bddbc3a954"}, + {file = "shellous-0.22.0.tar.gz", hash = "sha256:d184344d717687c2190ce35c74a6fccad8ddcf89ec17b3a1d5cf890785407904"}, +] + [[package]] name = "six" version = "1.16.0" @@ -1749,6 +3052,10 @@ description = "Python 2 and 3 compatibility utilities" category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" +files = [ + {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, + {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, +] [[package]] name = "sniffio" @@ -1757,6 +3064,10 @@ description = "Sniff out which async library your code is running under" category = "main" optional = false python-versions = ">=3.7" +files = [ + {file = "sniffio-1.3.0-py3-none-any.whl", hash = "sha256:eecefdce1e5bbfb7ad2eeaabf7c1eeb404d7757c379bd1f7e5cce9d8bf425384"}, + {file = "sniffio-1.3.0.tar.gz", hash = "sha256:e60305c5e5d314f5389259b7f22aaa33d8f7dee49763119234af3755c55b9101"}, +] [[package]] name = "sqlalchemy" @@ -1765,1589 +3076,7 @@ description = "Database Abstraction Library" category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" - -[package.dependencies] -greenlet = {version = "!=0.4.17", markers = "python_version >= \"3\" and (platform_machine == \"aarch64\" or platform_machine == \"ppc64le\" or platform_machine == \"x86_64\" or platform_machine == \"amd64\" or platform_machine == \"AMD64\" or platform_machine == \"win32\" or platform_machine == \"WIN32\")"} - -[package.extras] -aiomysql = ["aiomysql", "greenlet (!=0.4.17)"] -aiosqlite = ["aiosqlite", "greenlet (!=0.4.17)", "typing_extensions (!=3.10.0.1)"] -asyncio = ["greenlet (!=0.4.17)"] -asyncmy = ["asyncmy (>=0.2.3,!=0.2.4)", "greenlet (!=0.4.17)"] -mariadb-connector = ["mariadb (>=1.0.1,!=1.1.2)"] -mssql = ["pyodbc"] -mssql-pymssql = ["pymssql"] -mssql-pyodbc = ["pyodbc"] -mypy = ["mypy (>=0.910)", "sqlalchemy2-stubs"] -mysql = ["mysqlclient (>=1.4.0)", "mysqlclient (>=1.4.0,<2)"] -mysql-connector = ["mysql-connector-python"] -oracle = ["cx_oracle (>=7)", "cx_oracle (>=7,<8)"] -postgresql = ["psycopg2 (>=2.7)"] -postgresql-asyncpg = ["asyncpg", "greenlet (!=0.4.17)"] -postgresql-pg8000 = ["pg8000 (>=1.16.6,!=1.29.0)"] -postgresql-psycopg2binary = ["psycopg2-binary"] -postgresql-psycopg2cffi = ["psycopg2cffi"] -pymysql = ["pymysql", "pymysql (<1)"] -sqlcipher = ["sqlcipher3_binary"] - -[[package]] -name = "sqlalchemy-utils" -version = "0.38.3" -description = "Various utility functions for SQLAlchemy." -category = "dev" -optional = false -python-versions = "~=3.6" - -[package.dependencies] -SQLAlchemy = ">=1.3" - -[package.extras] -arrow = ["arrow (>=0.3.4)"] -babel = ["Babel (>=1.3)"] -color = ["colour (>=0.0.4)"] -encrypted = ["cryptography (>=0.6)"] -intervals = ["intervals (>=0.7.1)"] -password = ["passlib (>=1.6,<2.0)"] -pendulum = ["pendulum (>=2.0.5)"] -phone = ["phonenumbers (>=5.9.2)"] -test = ["Jinja2 (>=2.3)", "Pygments (>=1.2)", "backports.zoneinfo", "docutils (>=0.10)", "flake8 (>=2.4.0)", "flexmock (>=0.9.7)", "isort (>=4.2.2)", "pg8000 (>=1.12.4)", "psycopg2 (>=2.5.1)", "psycopg2cffi (>=2.8.1)", "pymysql", "pyodbc", "pytest (>=2.7.1)", "python-dateutil (>=2.6)", "pytz (>=2014.2)"] -test-all = ["Babel (>=1.3)", "Jinja2 (>=2.3)", "Pygments (>=1.2)", "arrow (>=0.3.4)", "backports.zoneinfo", "colour (>=0.0.4)", "cryptography (>=0.6)", "docutils (>=0.10)", "flake8 (>=2.4.0)", "flexmock (>=0.9.7)", "furl (>=0.4.1)", "intervals (>=0.7.1)", "isort (>=4.2.2)", "passlib (>=1.6,<2.0)", "pendulum (>=2.0.5)", "pg8000 (>=1.12.4)", "phonenumbers (>=5.9.2)", "psycopg2 (>=2.5.1)", "psycopg2cffi (>=2.8.1)", "pymysql", "pyodbc", "pytest (>=2.7.1)", "python-dateutil", "python-dateutil (>=2.6)", "pytz (>=2014.2)"] -timezone = ["python-dateutil"] -url = ["furl (>=0.4.1)"] - -[[package]] -name = "sqlparse" -version = "0.4.3" -description = "A non-validating SQL parser." -category = "main" -optional = false -python-versions = ">=3.5" - -[[package]] -name = "stack-data" -version = "0.6.2" -description = "Extract data from python stack frames and tracebacks for informative displays" -category = "dev" -optional = false -python-versions = "*" - -[package.dependencies] -asttokens = ">=2.1.0" -executing = ">=1.2.0" -pure-eval = "*" - -[package.extras] -tests = ["cython", "littleutils", "pygments", "pytest", "typeguard"] - -[[package]] -name = "starlette" -version = "0.19.1" -description = "The little ASGI library that shines." -category = "main" -optional = false -python-versions = ">=3.6" - -[package.dependencies] -anyio = ">=3.4.0,<5" - -[package.extras] -full = ["itsdangerous", "jinja2", "python-multipart", "pyyaml", "requests"] - -[[package]] -name = "starlette-authlib" -version = "0.1.20" -description = "A drop-in replacement for Starlette session middleware, using authlib's jwt" -category = "main" -optional = false -python-versions = ">=3.7,<4.0" - -[package.dependencies] -authlib = "<1.3" -starlette = "<0.24" - -[[package]] -name = "tinycss2" -version = "1.2.1" -description = "A tiny CSS parser" -category = "main" -optional = false -python-versions = ">=3.7" - -[package.dependencies] -webencodings = ">=0.4" - -[package.extras] -doc = ["sphinx", "sphinx_rtd_theme"] -test = ["flake8", "isort", "pytest"] - -[[package]] -name = "toml" -version = "0.10.2" -description = "Python Library for Tom's Obvious, Minimal Language" -category = "main" -optional = false -python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" - -[[package]] -name = "tomli" -version = "2.0.1" -description = "A lil' TOML parser" -category = "dev" -optional = false -python-versions = ">=3.7" - -[[package]] -name = "tonyg-rfc3339" -version = "0.1" -description = "Python implementation of RFC 3339" -category = "main" -optional = false -python-versions = "*" - -[[package]] -name = "traitlets" -version = "5.8.0" -description = "Traitlets Python configuration system" -category = "dev" -optional = false -python-versions = ">=3.7" - -[package.extras] -docs = ["myst-parser", "pydata-sphinx-theme", "sphinx"] -test = ["argcomplete (>=2.0)", "pre-commit", "pytest", "pytest-mock"] - -[[package]] -name = "typing-extensions" -version = "4.4.0" -description = "Backported and Experimental Type Hints for Python 3.7+" -category = "main" -optional = false -python-versions = ">=3.7" - -[[package]] -name = "urllib3" -version = "1.26.13" -description = "HTTP library with thread-safe connection pooling, file post, and more." -category = "main" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" - -[package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] - -[[package]] -name = "uvicorn" -version = "0.17.6" -description = "The lightning-fast ASGI server." -category = "main" -optional = false -python-versions = ">=3.7" - -[package.dependencies] -asgiref = ">=3.4.0" -click = ">=7.0" -h11 = ">=0.8" - -[package.extras] -standard = ["PyYAML (>=5.1)", "colorama (>=0.4)", "httptools (>=0.4.0)", "python-dotenv (>=0.13)", "uvloop (>=0.14.0,!=0.15.0,!=0.15.1)", "watchgod (>=0.6)", "websockets (>=10.0)"] - -[[package]] -name = "vcrpy" -version = "4.1.1" -description = "Automatically mock your HTTP interactions to simplify and speed up testing" -category = "main" -optional = false -python-versions = ">=3.7" -develop = false - -[package.dependencies] -PyYAML = "*" -six = ">=1.5" -wrapt = "*" -yarl = "*" - -[package.source] -type = "git" -url = "https://github.com/nikicat/vcrpy" -reference = "fix-httpx-stub" -resolved_reference = "e3eedae31498d264018531e856737c5d82941460" - -[[package]] -name = "watchfiles" -version = "0.18.1" -description = "Simple, modern and high performance file watching and code reload in python." -category = "dev" -optional = false -python-versions = ">=3.7" - -[package.dependencies] -anyio = ">=3.0.0" - -[[package]] -name = "wcwidth" -version = "0.2.5" -description = "Measures the displayed width of unicode strings in a terminal" -category = "dev" -optional = false -python-versions = "*" - -[[package]] -name = "webencodings" -version = "0.5.1" -description = "Character encoding aliases for legacy web content" -category = "main" -optional = false -python-versions = "*" - -[[package]] -name = "webob" -version = "1.8.7" -description = "WSGI request and response object" -category = "main" -optional = false -python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*" - -[package.extras] -docs = ["Sphinx (>=1.7.5)", "pylons-sphinx-themes"] -testing = ["coverage", "pytest (>=3.1.0)", "pytest-cov", "pytest-xdist"] - -[[package]] -name = "wrapt" -version = "1.14.1" -description = "Module for decorators, wrappers and monkey patching." -category = "main" -optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" - -[[package]] -name = "wsproto" -version = "1.2.0" -description = "WebSockets state-machine based protocol implementation" -category = "main" -optional = false -python-versions = ">=3.7.0" - -[package.dependencies] -h11 = ">=0.9.0,<1" - -[[package]] -name = "yarl" -version = "1.8.2" -description = "Yet another URL library" -category = "main" -optional = false -python-versions = ">=3.7" - -[package.dependencies] -idna = ">=2.0" -multidict = ">=4.0" - -[metadata] -lock-version = "1.1" -python-versions = "^3.10" -content-hash = "2b9374d0b162054e28c27b1cba68ed56174c9306e322f4e83afbaaabe85a7c3b" - -[metadata.files] -aiofiles = [ - {file = "aiofiles-22.1.0-py3-none-any.whl", hash = "sha256:1142fa8e80dbae46bb6339573ad4c8c0841358f79c6eb50a493dceca14621bad"}, - {file = "aiofiles-22.1.0.tar.gz", hash = "sha256:9107f1ca0b2a5553987a94a3c9959fe5b491fdf731389aa5b7b1bd0733e32de6"}, -] -aiogoogle = [ - {file = "aiogoogle-4.5.0-py3-none-any.whl", hash = "sha256:0a86b933ebfe264726374231d43807137a52853b008eb1b9503c02a3f41500ce"}, - {file = "aiogoogle-4.5.0.tar.gz", hash = "sha256:a5c227b6d609da118e7784f874ba63f044366191b3133f2ab6167dd5c3ae7f99"}, -] -aiohttp = [ - {file = "aiohttp-3.8.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ba71c9b4dcbb16212f334126cc3d8beb6af377f6703d9dc2d9fb3874fd667ee9"}, - {file = "aiohttp-3.8.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d24b8bb40d5c61ef2d9b6a8f4528c2f17f1c5d2d31fed62ec860f6006142e83e"}, - {file = "aiohttp-3.8.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f88df3a83cf9df566f171adba39d5bd52814ac0b94778d2448652fc77f9eb491"}, - {file = "aiohttp-3.8.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b97decbb3372d4b69e4d4c8117f44632551c692bb1361b356a02b97b69e18a62"}, - {file = "aiohttp-3.8.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:309aa21c1d54b8ef0723181d430347d7452daaff93e8e2363db8e75c72c2fb2d"}, - {file = "aiohttp-3.8.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ad5383a67514e8e76906a06741febd9126fc7c7ff0f599d6fcce3e82b80d026f"}, - {file = "aiohttp-3.8.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:20acae4f268317bb975671e375493dbdbc67cddb5f6c71eebdb85b34444ac46b"}, - {file = "aiohttp-3.8.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:05a3c31c6d7cd08c149e50dc7aa2568317f5844acd745621983380597f027a18"}, - {file = "aiohttp-3.8.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d6f76310355e9fae637c3162936e9504b4767d5c52ca268331e2756e54fd4ca5"}, - {file = "aiohttp-3.8.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:256deb4b29fe5e47893fa32e1de2d73c3afe7407738bd3c63829874661d4822d"}, - {file = "aiohttp-3.8.3-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:5c59fcd80b9049b49acd29bd3598cada4afc8d8d69bd4160cd613246912535d7"}, - {file = "aiohttp-3.8.3-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:059a91e88f2c00fe40aed9031b3606c3f311414f86a90d696dd982e7aec48142"}, - {file = "aiohttp-3.8.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:2feebbb6074cdbd1ac276dbd737b40e890a1361b3cc30b74ac2f5e24aab41f7b"}, - {file = "aiohttp-3.8.3-cp310-cp310-win32.whl", hash = "sha256:5bf651afd22d5f0c4be16cf39d0482ea494f5c88f03e75e5fef3a85177fecdeb"}, - {file = "aiohttp-3.8.3-cp310-cp310-win_amd64.whl", hash = "sha256:653acc3880459f82a65e27bd6526e47ddf19e643457d36a2250b85b41a564715"}, - {file = "aiohttp-3.8.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:86fc24e58ecb32aee09f864cb11bb91bc4c1086615001647dbfc4dc8c32f4008"}, - {file = "aiohttp-3.8.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:75e14eac916f024305db517e00a9252714fce0abcb10ad327fb6dcdc0d060f1d"}, - {file = "aiohttp-3.8.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d1fde0f44029e02d02d3993ad55ce93ead9bb9b15c6b7ccd580f90bd7e3de476"}, - {file = "aiohttp-3.8.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4ab94426ddb1ecc6a0b601d832d5d9d421820989b8caa929114811369673235c"}, - {file = "aiohttp-3.8.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:89d2e02167fa95172c017732ed7725bc8523c598757f08d13c5acca308e1a061"}, - {file = "aiohttp-3.8.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:02f9a2c72fc95d59b881cf38a4b2be9381b9527f9d328771e90f72ac76f31ad8"}, - {file = "aiohttp-3.8.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9c7149272fb5834fc186328e2c1fa01dda3e1fa940ce18fded6d412e8f2cf76d"}, - {file = "aiohttp-3.8.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:512bd5ab136b8dc0ffe3fdf2dfb0c4b4f49c8577f6cae55dca862cd37a4564e2"}, - {file = "aiohttp-3.8.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:7018ecc5fe97027214556afbc7c502fbd718d0740e87eb1217b17efd05b3d276"}, - {file = "aiohttp-3.8.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:88c70ed9da9963d5496d38320160e8eb7e5f1886f9290475a881db12f351ab5d"}, - {file = "aiohttp-3.8.3-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:da22885266bbfb3f78218dc40205fed2671909fbd0720aedba39b4515c038091"}, - {file = "aiohttp-3.8.3-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:e65bc19919c910127c06759a63747ebe14f386cda573d95bcc62b427ca1afc73"}, - {file = "aiohttp-3.8.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:08c78317e950e0762c2983f4dd58dc5e6c9ff75c8a0efeae299d363d439c8e34"}, - {file = "aiohttp-3.8.3-cp311-cp311-win32.whl", hash = "sha256:45d88b016c849d74ebc6f2b6e8bc17cabf26e7e40c0661ddd8fae4c00f015697"}, - {file = "aiohttp-3.8.3-cp311-cp311-win_amd64.whl", hash = "sha256:96372fc29471646b9b106ee918c8eeb4cca423fcbf9a34daa1b93767a88a2290"}, - {file = "aiohttp-3.8.3-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:c971bf3786b5fad82ce5ad570dc6ee420f5b12527157929e830f51c55dc8af77"}, - {file = "aiohttp-3.8.3-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ff25f48fc8e623d95eca0670b8cc1469a83783c924a602e0fbd47363bb54aaca"}, - {file = "aiohttp-3.8.3-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e381581b37db1db7597b62a2e6b8b57c3deec95d93b6d6407c5b61ddc98aca6d"}, - {file = "aiohttp-3.8.3-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:db19d60d846283ee275d0416e2a23493f4e6b6028825b51290ac05afc87a6f97"}, - {file = "aiohttp-3.8.3-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:25892c92bee6d9449ffac82c2fe257f3a6f297792cdb18ad784737d61e7a9a85"}, - {file = "aiohttp-3.8.3-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:398701865e7a9565d49189f6c90868efaca21be65c725fc87fc305906be915da"}, - {file = "aiohttp-3.8.3-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:4a4fbc769ea9b6bd97f4ad0b430a6807f92f0e5eb020f1e42ece59f3ecfc4585"}, - {file = "aiohttp-3.8.3-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:b29bfd650ed8e148f9c515474a6ef0ba1090b7a8faeee26b74a8ff3b33617502"}, - {file = "aiohttp-3.8.3-cp36-cp36m-musllinux_1_1_ppc64le.whl", hash = "sha256:1e56b9cafcd6531bab5d9b2e890bb4937f4165109fe98e2b98ef0dcfcb06ee9d"}, - {file = "aiohttp-3.8.3-cp36-cp36m-musllinux_1_1_s390x.whl", hash = "sha256:ec40170327d4a404b0d91855d41bfe1fe4b699222b2b93e3d833a27330a87a6d"}, - {file = "aiohttp-3.8.3-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:2df5f139233060578d8c2c975128fb231a89ca0a462b35d4b5fcf7c501ebdbe1"}, - {file = "aiohttp-3.8.3-cp36-cp36m-win32.whl", hash = "sha256:f973157ffeab5459eefe7b97a804987876dd0a55570b8fa56b4e1954bf11329b"}, - {file = "aiohttp-3.8.3-cp36-cp36m-win_amd64.whl", hash = "sha256:437399385f2abcd634865705bdc180c8314124b98299d54fe1d4c8990f2f9494"}, - {file = "aiohttp-3.8.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:09e28f572b21642128ef31f4e8372adb6888846f32fecb288c8b0457597ba61a"}, - {file = "aiohttp-3.8.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6f3553510abdbec67c043ca85727396ceed1272eef029b050677046d3387be8d"}, - {file = "aiohttp-3.8.3-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e168a7560b7c61342ae0412997b069753f27ac4862ec7867eff74f0fe4ea2ad9"}, - {file = "aiohttp-3.8.3-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:db4c979b0b3e0fa7e9e69ecd11b2b3174c6963cebadeecfb7ad24532ffcdd11a"}, - {file = "aiohttp-3.8.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e164e0a98e92d06da343d17d4e9c4da4654f4a4588a20d6c73548a29f176abe2"}, - {file = "aiohttp-3.8.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e8a78079d9a39ca9ca99a8b0ac2fdc0c4d25fc80c8a8a82e5c8211509c523363"}, - {file = "aiohttp-3.8.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:21b30885a63c3f4ff5b77a5d6caf008b037cb521a5f33eab445dc566f6d092cc"}, - {file = "aiohttp-3.8.3-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:4b0f30372cef3fdc262f33d06e7b411cd59058ce9174ef159ad938c4a34a89da"}, - {file = "aiohttp-3.8.3-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:8135fa153a20d82ffb64f70a1b5c2738684afa197839b34cc3e3c72fa88d302c"}, - {file = "aiohttp-3.8.3-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:ad61a9639792fd790523ba072c0555cd6be5a0baf03a49a5dd8cfcf20d56df48"}, - {file = "aiohttp-3.8.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:978b046ca728073070e9abc074b6299ebf3501e8dee5e26efacb13cec2b2dea0"}, - {file = "aiohttp-3.8.3-cp37-cp37m-win32.whl", hash = "sha256:0d2c6d8c6872df4a6ec37d2ede71eff62395b9e337b4e18efd2177de883a5033"}, - {file = "aiohttp-3.8.3-cp37-cp37m-win_amd64.whl", hash = "sha256:21d69797eb951f155026651f7e9362877334508d39c2fc37bd04ff55b2007091"}, - {file = "aiohttp-3.8.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:2ca9af5f8f5812d475c5259393f52d712f6d5f0d7fdad9acdb1107dd9e3cb7eb"}, - {file = "aiohttp-3.8.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1d90043c1882067f1bd26196d5d2db9aa6d268def3293ed5fb317e13c9413ea4"}, - {file = "aiohttp-3.8.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:d737fc67b9a970f3234754974531dc9afeea11c70791dcb7db53b0cf81b79784"}, - {file = "aiohttp-3.8.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ebf909ea0a3fc9596e40d55d8000702a85e27fd578ff41a5500f68f20fd32e6c"}, - {file = "aiohttp-3.8.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5835f258ca9f7c455493a57ee707b76d2d9634d84d5d7f62e77be984ea80b849"}, - {file = "aiohttp-3.8.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:da37dcfbf4b7f45d80ee386a5f81122501ec75672f475da34784196690762f4b"}, - {file = "aiohttp-3.8.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:87f44875f2804bc0511a69ce44a9595d5944837a62caecc8490bbdb0e18b1342"}, - {file = "aiohttp-3.8.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:527b3b87b24844ea7865284aabfab08eb0faf599b385b03c2aa91fc6edd6e4b6"}, - {file = "aiohttp-3.8.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:d5ba88df9aa5e2f806650fcbeedbe4f6e8736e92fc0e73b0400538fd25a4dd96"}, - {file = "aiohttp-3.8.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:e7b8813be97cab8cb52b1375f41f8e6804f6507fe4660152e8ca5c48f0436017"}, - {file = "aiohttp-3.8.3-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:2dea10edfa1a54098703cb7acaa665c07b4e7568472a47f4e64e6319d3821ccf"}, - {file = "aiohttp-3.8.3-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:713d22cd9643ba9025d33c4af43943c7a1eb8547729228de18d3e02e278472b6"}, - {file = "aiohttp-3.8.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2d252771fc85e0cf8da0b823157962d70639e63cb9b578b1dec9868dd1f4f937"}, - {file = "aiohttp-3.8.3-cp38-cp38-win32.whl", hash = "sha256:66bd5f950344fb2b3dbdd421aaa4e84f4411a1a13fca3aeb2bcbe667f80c9f76"}, - {file = "aiohttp-3.8.3-cp38-cp38-win_amd64.whl", hash = "sha256:84b14f36e85295fe69c6b9789b51a0903b774046d5f7df538176516c3e422446"}, - {file = "aiohttp-3.8.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:16c121ba0b1ec2b44b73e3a8a171c4f999b33929cd2397124a8c7fcfc8cd9e06"}, - {file = "aiohttp-3.8.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8d6aaa4e7155afaf994d7924eb290abbe81a6905b303d8cb61310a2aba1c68ba"}, - {file = "aiohttp-3.8.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:43046a319664a04b146f81b40e1545d4c8ac7b7dd04c47e40bf09f65f2437346"}, - {file = "aiohttp-3.8.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:599418aaaf88a6d02a8c515e656f6faf3d10618d3dd95866eb4436520096c84b"}, - {file = "aiohttp-3.8.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:92a2964319d359f494f16011e23434f6f8ef0434acd3cf154a6b7bec511e2fb7"}, - {file = "aiohttp-3.8.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:73a4131962e6d91109bca6536416aa067cf6c4efb871975df734f8d2fd821b37"}, - {file = "aiohttp-3.8.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:598adde339d2cf7d67beaccda3f2ce7c57b3b412702f29c946708f69cf8222aa"}, - {file = "aiohttp-3.8.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:75880ed07be39beff1881d81e4a907cafb802f306efd6d2d15f2b3c69935f6fb"}, - {file = "aiohttp-3.8.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:a0239da9fbafd9ff82fd67c16704a7d1bccf0d107a300e790587ad05547681c8"}, - {file = "aiohttp-3.8.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:4e3a23ec214e95c9fe85a58470b660efe6534b83e6cbe38b3ed52b053d7cb6ad"}, - {file = "aiohttp-3.8.3-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:47841407cc89a4b80b0c52276f3cc8138bbbfba4b179ee3acbd7d77ae33f7ac4"}, - {file = "aiohttp-3.8.3-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:54d107c89a3ebcd13228278d68f1436d3f33f2dd2af5415e3feaeb1156e1a62c"}, - {file = "aiohttp-3.8.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:c37c5cce780349d4d51739ae682dec63573847a2a8dcb44381b174c3d9c8d403"}, - {file = "aiohttp-3.8.3-cp39-cp39-win32.whl", hash = "sha256:f178d2aadf0166be4df834c4953da2d7eef24719e8aec9a65289483eeea9d618"}, - {file = "aiohttp-3.8.3-cp39-cp39-win_amd64.whl", hash = "sha256:88e5be56c231981428f4f506c68b6a46fa25c4123a2e86d156c58a8369d31ab7"}, - {file = "aiohttp-3.8.3.tar.gz", hash = "sha256:3828fb41b7203176b82fe5d699e0d845435f2374750a44b480ea6b930f6be269"}, -] -aiosignal = [ - {file = "aiosignal-1.3.1-py3-none-any.whl", hash = "sha256:f8376fb07dd1e86a584e4fcdec80b36b7f81aac666ebc724e2c090300dd83b17"}, - {file = "aiosignal-1.3.1.tar.gz", hash = "sha256:54cd96e15e1649b75d6c87526a6ff0b6c1b0dd3459f43d9ca11d48c339b68cfc"}, -] -alembic = [ - {file = "alembic-1.9.1-py3-none-any.whl", hash = "sha256:a9781ed0979a20341c2cbb56bd22bd8db4fc1913f955e705444bd3a97c59fa32"}, - {file = "alembic-1.9.1.tar.gz", hash = "sha256:f9f76e41061f5ebe27d4fe92600df9dd612521a7683f904dab328ba02cffa5a2"}, -] -anyio = [ - {file = "anyio-3.6.2-py3-none-any.whl", hash = "sha256:fbbe32bd270d2a2ef3ed1c5d45041250284e31fc0a4df4a5a6071842051a51e3"}, - {file = "anyio-3.6.2.tar.gz", hash = "sha256:25ea0d673ae30af41a0c442f81cf3b38c7e79fdc7b60335a4c14e05eb0947421"}, -] -appnope = [ - {file = "appnope-0.1.3-py2.py3-none-any.whl", hash = "sha256:265a455292d0bd8a72453494fa24df5a11eb18373a60c7c0430889f22548605e"}, - {file = "appnope-0.1.3.tar.gz", hash = "sha256:02bd91c4de869fbb1e1c50aafc4098827a7a54ab2f39d9dcba6c9547ed920e24"}, -] -asgi-testclient = [] -asgiref = [ - {file = "asgiref-3.6.0-py3-none-any.whl", hash = "sha256:71e68008da809b957b7ee4b43dbccff33d1b23519fb8344e33f049897077afac"}, - {file = "asgiref-3.6.0.tar.gz", hash = "sha256:9567dfe7bd8d3c8c892227827c41cce860b368104c3431da67a0c5a65a949506"}, -] -asttokens = [ - {file = "asttokens-2.2.1-py2.py3-none-any.whl", hash = "sha256:6b0ac9e93fb0335014d382b8fa9b3afa7df546984258005da0b9e7095b3deb1c"}, - {file = "asttokens-2.2.1.tar.gz", hash = "sha256:4622110b2a6f30b77e1473affaa97e711bc2f07d3f10848420ff1898edbe94f3"}, -] -async-lru = [ - {file = "async-lru-1.0.3.tar.gz", hash = "sha256:c2cb9b2915eb14e6cf3e717154b40f715bf90e596d73623677affd0d1fbcd32a"}, - {file = "async_lru-1.0.3-py3-none-any.whl", hash = "sha256:ea692c303feb6211ff260d230dae1583636f13e05c9ae616eada77855b7f415c"}, -] -async-timeout = [ - {file = "async-timeout-4.0.2.tar.gz", hash = "sha256:2163e1640ddb52b7a8c80d0a67a08587e5d245cc9c553a74a847056bc2976b15"}, - {file = "async_timeout-4.0.2-py3-none-any.whl", hash = "sha256:8ca1e4fcf50d07413d66d1a5e416e42cfdf5851c981d679a09851a6853383b3c"}, -] -asyncpg = [ - {file = "asyncpg-0.25.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:bf5e3408a14a17d480f36ebaf0401a12ff6ae5457fdf45e4e2775c51cc9517d3"}, - {file = "asyncpg-0.25.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:2bc197fc4aca2fd24f60241057998124012469d2e414aed3f992579db0c88e3a"}, - {file = "asyncpg-0.25.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:1a70783f6ffa34cc7dd2de20a873181414a34fd35a4a208a1f1a7f9f695e4ec4"}, - {file = "asyncpg-0.25.0-cp310-cp310-win32.whl", hash = "sha256:43cde84e996a3afe75f325a68300093425c2f47d340c0fc8912765cf24a1c095"}, - {file = "asyncpg-0.25.0-cp310-cp310-win_amd64.whl", hash = "sha256:56d88d7ef4341412cd9c68efba323a4519c916979ba91b95d4c08799d2ff0c09"}, - {file = "asyncpg-0.25.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:a84d30e6f850bac0876990bcd207362778e2208df0bee8be8da9f1558255e634"}, - {file = "asyncpg-0.25.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:beaecc52ad39614f6ca2e48c3ca15d56e24a2c15cbfdcb764a4320cc45f02fd5"}, - {file = "asyncpg-0.25.0-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:6f8f5fc975246eda83da8031a14004b9197f510c41511018e7b1bedde6968e92"}, - {file = "asyncpg-0.25.0-cp36-cp36m-win32.whl", hash = "sha256:ddb4c3263a8d63dcde3d2c4ac1c25206bfeb31fa83bd70fd539e10f87739dee4"}, - {file = "asyncpg-0.25.0-cp36-cp36m-win_amd64.whl", hash = "sha256:bf6dc9b55b9113f39eaa2057337ce3f9ef7de99a053b8a16360395ce588925cd"}, - {file = "asyncpg-0.25.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:acb311722352152936e58a8ee3c5b8e791b24e84cd7d777c414ff05b3530ca68"}, - {file = "asyncpg-0.25.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:0a61fb196ce4dae2f2fa26eb20a778db21bbee484d2e798cb3cc988de13bdd1b"}, - {file = "asyncpg-0.25.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:2633331cbc8429030b4f20f712f8d0fbba57fa8555ee9b2f45f981b81328b256"}, - {file = "asyncpg-0.25.0-cp37-cp37m-win32.whl", hash = "sha256:863d36eba4a7caa853fd7d83fad5fd5306f050cc2fe6e54fbe10cdb30420e5e9"}, - {file = "asyncpg-0.25.0-cp37-cp37m-win_amd64.whl", hash = "sha256:fe471ccd915b739ca65e2e4dbd92a11b44a5b37f2e38f70827a1c147dafe0fa8"}, - {file = "asyncpg-0.25.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:72a1e12ea0cf7c1e02794b697e3ca967b2360eaa2ce5d4bfdd8604ec2d6b774b"}, - {file = "asyncpg-0.25.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:4327f691b1bdb222df27841938b3e04c14068166b3a97491bec2cb982f49f03e"}, - {file = "asyncpg-0.25.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:739bbd7f89a2b2f6bc44cb8bf967dab12c5bc714fcbe96e68d512be45ecdf962"}, - {file = "asyncpg-0.25.0-cp38-cp38-win32.whl", hash = "sha256:18d49e2d93a7139a2fdbd113e320cc47075049997268a61bfbe0dde680c55471"}, - {file = "asyncpg-0.25.0-cp38-cp38-win_amd64.whl", hash = "sha256:191fe6341385b7fdea7dbdcf47fd6db3fd198827dcc1f2b228476d13c05a03c6"}, - {file = "asyncpg-0.25.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:52fab7f1b2c29e187dd8781fce896249500cf055b63471ad66332e537e9b5f7e"}, - {file = "asyncpg-0.25.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:a738f1b2876f30d710d3dc1e7858160a0afe1603ba16bf5f391f5316eb0ed855"}, - {file = "asyncpg-0.25.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5e4105f57ad1e8fbc8b1e535d8fcefa6ce6c71081228f08680c6dea24384ff0e"}, - {file = "asyncpg-0.25.0-cp39-cp39-win32.whl", hash = "sha256:f55918ded7b85723a5eaeb34e86e7b9280d4474be67df853ab5a7fa0cc7c6bf2"}, - {file = "asyncpg-0.25.0-cp39-cp39-win_amd64.whl", hash = "sha256:649e2966d98cc48d0646d9a4e29abecd8b59d38d55c256d5c857f6b27b7407ac"}, - {file = "asyncpg-0.25.0.tar.gz", hash = "sha256:63f8e6a69733b285497c2855464a34de657f2cccd25aeaeeb5071872e9382540"}, -] -attrs = [ - {file = "attrs-22.2.0-py3-none-any.whl", hash = "sha256:29e95c7f6778868dbd49170f98f8818f78f3dc5e0e37c0b1f474e3561b240836"}, - {file = "attrs-22.2.0.tar.gz", hash = "sha256:c9227bfc2f01993c03f68db37d1d15c9690188323c067c641f1a35ca58185f99"}, -] -Authlib = [] -backcall = [ - {file = "backcall-0.2.0-py2.py3-none-any.whl", hash = "sha256:fbbce6a29f263178a1f7915c1940bde0ec2b2a967566fe1c65c1dfb7422bd255"}, - {file = "backcall-0.2.0.tar.gz", hash = "sha256:5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e"}, -] -backoff = [ - {file = "backoff-1.11.1-py2.py3-none-any.whl", hash = "sha256:61928f8fa48d52e4faa81875eecf308eccfb1016b018bb6bd21e05b5d90a96c5"}, - {file = "backoff-1.11.1.tar.gz", hash = "sha256:ccb962a2378418c667b3c979b504fdeb7d9e0d29c0579e3b13b86467177728cb"}, -] -backports-cached-property = [ - {file = "backports.cached-property-1.0.2.tar.gz", hash = "sha256:9306f9eed6ec55fd156ace6bc1094e2c86fae5fb2bf07b6a9c00745c656e75dd"}, - {file = "backports.cached_property-1.0.2-py3-none-any.whl", hash = "sha256:baeb28e1cd619a3c9ab8941431fe34e8490861fb998c6c4590693d50171db0cc"}, -] -base58 = [ - {file = "base58-2.1.1-py3-none-any.whl", hash = "sha256:11a36f4d3ce51dfc1043f3218591ac4eb1ceb172919cebe05b52a5bcc8d245c2"}, - {file = "base58-2.1.1.tar.gz", hash = "sha256:c5d0cb3f5b6e81e8e35da5754388ddcc6d0d14b6c6a132cb93d69ed580a7278c"}, -] -bech32 = [ - {file = "bech32-1.2.0-py3-none-any.whl", hash = "sha256:990dc8e5a5e4feabbdf55207b5315fdd9b73db40be294a19b3752cde9e79d981"}, - {file = "bech32-1.2.0.tar.gz", hash = "sha256:7d6db8214603bd7871fcfa6c0826ef68b85b0abd90fa21c285a9c5e21d2bd899"}, -] -binapy = [ - {file = "binapy-0.6.0-py3-none-any.whl", hash = "sha256:6ffc2812df7f43a50ed45f451af8a6f851c87e347e3a071bb0f423a1a60d8a39"}, - {file = "binapy-0.6.0.tar.gz", hash = "sha256:1054b0ef1e6eccd941d4b23167ba4c5b1f5938960750686c421edc71af543fa7"}, -] -bitstring = [ - {file = "bitstring-3.1.9-py2-none-any.whl", hash = "sha256:e3e340e58900a948787a05e8c08772f1ccbe133f6f41fe3f0fa19a18a22bbf4f"}, - {file = "bitstring-3.1.9-py3-none-any.whl", hash = "sha256:0de167daa6a00c9386255a7cac931b45e6e24e0ad7ea64f1f92a64ac23ad4578"}, - {file = "bitstring-3.1.9.tar.gz", hash = "sha256:a5848a3f63111785224dca8bb4c0a75b62ecdef56a042c8d6be74b16f7e860e7"}, -] -boltons = [ - {file = "boltons-21.0.0-py2.py3-none-any.whl", hash = "sha256:b9bb7b58b2b420bbe11a6025fdef6d3e5edc9f76a42fb467afe7ca212ef9948b"}, - {file = "boltons-21.0.0.tar.gz", hash = "sha256:65e70a79a731a7fe6e98592ecfb5ccf2115873d01dbc576079874629e5c90f13"}, -] -bugsnag = [ - {file = "bugsnag-4.3.0-py3-none-any.whl", hash = "sha256:bf4ca75d85d9ffd18fa844570cd1ad56b2175810dbb7c6f214417b750debf7db"}, - {file = "bugsnag-4.3.0.tar.gz", hash = "sha256:f6ae82a7fade5092775c6313f4157ee33e40c4974ff22cdfce08cea52f38fd37"}, -] -cachetools = [ - {file = "cachetools-5.2.0-py3-none-any.whl", hash = "sha256:f9f17d2aec496a9aa6b76f53e3b614c965223c061982d434d160f930c698a9db"}, - {file = "cachetools-5.2.0.tar.gz", hash = "sha256:6a94c6402995a99c3970cc7e4884bb60b4a8639938157eeed436098bf9831757"}, -] -cairocffi = [ - {file = "cairocffi-1.4.0.tar.gz", hash = "sha256:509339b32ccd8d7b00c2204c32736cde78db53a32e6a162d312478d25626cd9a"}, -] -cairosvg = [ - {file = "CairoSVG-2.6.0-py3-none-any.whl", hash = "sha256:05069d5316e9f02f33028942f96929e01782db41e6ff07d8454c8d021b5b52f3"}, - {file = "CairoSVG-2.6.0.tar.gz", hash = "sha256:d5ec93e90101b3b6e82aa245d0546ee9b016cfda0b6344675159830d853d5d04"}, -] -certifi = [ - {file = "certifi-2022.12.7-py3-none-any.whl", hash = "sha256:4ad3232f5e926d6718ec31cfc1fcadfde020920e278684144551c91769c7bc18"}, - {file = "certifi-2022.12.7.tar.gz", hash = "sha256:35824b4c3a97115964b408844d64aa14db1cc518f6562e8d7261699d1350a9e3"}, -] -cffi = [ - {file = "cffi-1.15.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:a66d3508133af6e8548451b25058d5812812ec3798c886bf38ed24a98216fab2"}, - {file = "cffi-1.15.1-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:470c103ae716238bbe698d67ad020e1db9d9dba34fa5a899b5e21577e6d52ed2"}, - {file = "cffi-1.15.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:9ad5db27f9cabae298d151c85cf2bad1d359a1b9c686a275df03385758e2f914"}, - {file = "cffi-1.15.1-cp27-cp27m-win32.whl", hash = "sha256:b3bbeb01c2b273cca1e1e0c5df57f12dce9a4dd331b4fa1635b8bec26350bde3"}, - {file = "cffi-1.15.1-cp27-cp27m-win_amd64.whl", hash = "sha256:e00b098126fd45523dd056d2efba6c5a63b71ffe9f2bbe1a4fe1716e1d0c331e"}, - {file = "cffi-1.15.1-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:d61f4695e6c866a23a21acab0509af1cdfd2c013cf256bbf5b6b5e2695827162"}, - {file = "cffi-1.15.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:ed9cb427ba5504c1dc15ede7d516b84757c3e3d7868ccc85121d9310d27eed0b"}, - {file = "cffi-1.15.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:39d39875251ca8f612b6f33e6b1195af86d1b3e60086068be9cc053aa4376e21"}, - {file = "cffi-1.15.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:285d29981935eb726a4399badae8f0ffdff4f5050eaa6d0cfc3f64b857b77185"}, - {file = "cffi-1.15.1-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3eb6971dcff08619f8d91607cfc726518b6fa2a9eba42856be181c6d0d9515fd"}, - {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:21157295583fe8943475029ed5abdcf71eb3911894724e360acff1d61c1d54bc"}, - {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5635bd9cb9731e6d4a1132a498dd34f764034a8ce60cef4f5319c0541159392f"}, - {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2012c72d854c2d03e45d06ae57f40d78e5770d252f195b93f581acf3ba44496e"}, - {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd86c085fae2efd48ac91dd7ccffcfc0571387fe1193d33b6394db7ef31fe2a4"}, - {file = "cffi-1.15.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:fa6693661a4c91757f4412306191b6dc88c1703f780c8234035eac011922bc01"}, - {file = "cffi-1.15.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:59c0b02d0a6c384d453fece7566d1c7e6b7bae4fc5874ef2ef46d56776d61c9e"}, - {file = "cffi-1.15.1-cp310-cp310-win32.whl", hash = "sha256:cba9d6b9a7d64d4bd46167096fc9d2f835e25d7e4c121fb2ddfc6528fb0413b2"}, - {file = "cffi-1.15.1-cp310-cp310-win_amd64.whl", hash = "sha256:ce4bcc037df4fc5e3d184794f27bdaab018943698f4ca31630bc7f84a7b69c6d"}, - {file = "cffi-1.15.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3d08afd128ddaa624a48cf2b859afef385b720bb4b43df214f85616922e6a5ac"}, - {file = "cffi-1.15.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3799aecf2e17cf585d977b780ce79ff0dc9b78d799fc694221ce814c2c19db83"}, - {file = "cffi-1.15.1-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a591fe9e525846e4d154205572a029f653ada1a78b93697f3b5a8f1f2bc055b9"}, - {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3548db281cd7d2561c9ad9984681c95f7b0e38881201e157833a2342c30d5e8c"}, - {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91fc98adde3d7881af9b59ed0294046f3806221863722ba7d8d120c575314325"}, - {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:94411f22c3985acaec6f83c6df553f2dbe17b698cc7f8ae751ff2237d96b9e3c"}, - {file = "cffi-1.15.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:03425bdae262c76aad70202debd780501fabeaca237cdfddc008987c0e0f59ef"}, - {file = "cffi-1.15.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:cc4d65aeeaa04136a12677d3dd0b1c0c94dc43abac5860ab33cceb42b801c1e8"}, - {file = "cffi-1.15.1-cp311-cp311-win32.whl", hash = "sha256:a0f100c8912c114ff53e1202d0078b425bee3649ae34d7b070e9697f93c5d52d"}, - {file = "cffi-1.15.1-cp311-cp311-win_amd64.whl", hash = "sha256:04ed324bda3cda42b9b695d51bb7d54b680b9719cfab04227cdd1e04e5de3104"}, - {file = "cffi-1.15.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50a74364d85fd319352182ef59c5c790484a336f6db772c1a9231f1c3ed0cbd7"}, - {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e263d77ee3dd201c3a142934a086a4450861778baaeeb45db4591ef65550b0a6"}, - {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cec7d9412a9102bdc577382c3929b337320c4c4c4849f2c5cdd14d7368c5562d"}, - {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4289fc34b2f5316fbb762d75362931e351941fa95fa18789191b33fc4cf9504a"}, - {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:173379135477dc8cac4bc58f45db08ab45d228b3363adb7af79436135d028405"}, - {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:6975a3fac6bc83c4a65c9f9fcab9e47019a11d3d2cf7f3c0d03431bf145a941e"}, - {file = "cffi-1.15.1-cp36-cp36m-win32.whl", hash = "sha256:2470043b93ff09bf8fb1d46d1cb756ce6132c54826661a32d4e4d132e1977adf"}, - {file = "cffi-1.15.1-cp36-cp36m-win_amd64.whl", hash = "sha256:30d78fbc8ebf9c92c9b7823ee18eb92f2e6ef79b45ac84db507f52fbe3ec4497"}, - {file = "cffi-1.15.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:198caafb44239b60e252492445da556afafc7d1e3ab7a1fb3f0584ef6d742375"}, - {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5ef34d190326c3b1f822a5b7a45f6c4535e2f47ed06fec77d3d799c450b2651e"}, - {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8102eaf27e1e448db915d08afa8b41d6c7ca7a04b7d73af6514df10a3e74bd82"}, - {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5df2768244d19ab7f60546d0c7c63ce1581f7af8b5de3eb3004b9b6fc8a9f84b"}, - {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a8c4917bd7ad33e8eb21e9a5bbba979b49d9a97acb3a803092cbc1133e20343c"}, - {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0e2642fe3142e4cc4af0799748233ad6da94c62a8bec3a6648bf8ee68b1c7426"}, - {file = "cffi-1.15.1-cp37-cp37m-win32.whl", hash = "sha256:e229a521186c75c8ad9490854fd8bbdd9a0c9aa3a524326b55be83b54d4e0ad9"}, - {file = "cffi-1.15.1-cp37-cp37m-win_amd64.whl", hash = "sha256:a0b71b1b8fbf2b96e41c4d990244165e2c9be83d54962a9a1d118fd8657d2045"}, - {file = "cffi-1.15.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:320dab6e7cb2eacdf0e658569d2575c4dad258c0fcc794f46215e1e39f90f2c3"}, - {file = "cffi-1.15.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1e74c6b51a9ed6589199c787bf5f9875612ca4a8a0785fb2d4a84429badaf22a"}, - {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a5c84c68147988265e60416b57fc83425a78058853509c1b0629c180094904a5"}, - {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3b926aa83d1edb5aa5b427b4053dc420ec295a08e40911296b9eb1b6170f6cca"}, - {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:87c450779d0914f2861b8526e035c5e6da0a3199d8f1add1a665e1cbc6fc6d02"}, - {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4f2c9f67e9821cad2e5f480bc8d83b8742896f1242dba247911072d4fa94c192"}, - {file = "cffi-1.15.1-cp38-cp38-win32.whl", hash = "sha256:8b7ee99e510d7b66cdb6c593f21c043c248537a32e0bedf02e01e9553a172314"}, - {file = "cffi-1.15.1-cp38-cp38-win_amd64.whl", hash = "sha256:00a9ed42e88df81ffae7a8ab6d9356b371399b91dbdf0c3cb1e84c03a13aceb5"}, - {file = "cffi-1.15.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:54a2db7b78338edd780e7ef7f9f6c442500fb0d41a5a4ea24fff1c929d5af585"}, - {file = "cffi-1.15.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:fcd131dd944808b5bdb38e6f5b53013c5aa4f334c5cad0c72742f6eba4b73db0"}, - {file = "cffi-1.15.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7473e861101c9e72452f9bf8acb984947aa1661a7704553a9f6e4baa5ba64415"}, - {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6c9a799e985904922a4d207a94eae35c78ebae90e128f0c4e521ce339396be9d"}, - {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3bcde07039e586f91b45c88f8583ea7cf7a0770df3a1649627bf598332cb6984"}, - {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:33ab79603146aace82c2427da5ca6e58f2b3f2fb5da893ceac0c42218a40be35"}, - {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d598b938678ebf3c67377cdd45e09d431369c3b1a5b331058c338e201f12b27"}, - {file = "cffi-1.15.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:db0fbb9c62743ce59a9ff687eb5f4afbe77e5e8403d6697f7446e5f609976f76"}, - {file = "cffi-1.15.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:98d85c6a2bef81588d9227dde12db8a7f47f639f4a17c9ae08e773aa9c697bf3"}, - {file = "cffi-1.15.1-cp39-cp39-win32.whl", hash = "sha256:40f4774f5a9d4f5e344f31a32b5096977b5d48560c5592e2f3d2c4374bd543ee"}, - {file = "cffi-1.15.1-cp39-cp39-win_amd64.whl", hash = "sha256:70df4e3b545a17496c9b3f41f5115e69a4f2e77e94e1d2a8e1070bc0c38c8a3c"}, - {file = "cffi-1.15.1.tar.gz", hash = "sha256:d400bfb9a37b1351253cb402671cea7e89bdecc294e8016a707f6d1d8ac934f9"}, -] -charset-normalizer = [ - {file = "charset-normalizer-2.1.1.tar.gz", hash = "sha256:5a3d016c7c547f69d6f81fb0db9449ce888b418b5b9952cc5e6e66843e9dd845"}, - {file = "charset_normalizer-2.1.1-py3-none-any.whl", hash = "sha256:83e9a75d1911279afd89352c68b45348559d1fc0506b054b346651b5e7fee29f"}, -] -click = [ - {file = "click-8.1.3-py3-none-any.whl", hash = "sha256:bb4d8133cb15a609f44e8213d9b391b0809795062913b383c62be0ee95b1db48"}, - {file = "click-8.1.3.tar.gz", hash = "sha256:7682dc8afb30297001674575ea00d1814d808d6a36af415a82bd481d37ba7b8e"}, -] -colorama = [ - {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, - {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, -] -coverage = [ - {file = "coverage-7.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c1f02d016b9b6b5ad21949a21646714bfa7b32d6041a30f97674f05d6d6996e3"}, - {file = "coverage-7.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a2d4f68e4fa286fb6b00d58a1e87c79840e289d3f6e5dcb912ad7b0fbd9629fb"}, - {file = "coverage-7.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:426895ac9f2938bec193aa998e7a77a3e65d3e46903f348e794b4192b9a5b61e"}, - {file = "coverage-7.0.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dcb708ab06f3f4dfc99e9f84821c9120e5f12113b90fad132311a2cb97525379"}, - {file = "coverage-7.0.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8217f73faf08623acb25fb2affd5d20cbcd8185213db308e46a37e6fd6a56a49"}, - {file = "coverage-7.0.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:bcb57d175ff0cb4ff97fc547c74c1cb8d4c9612003f6d267ee78dad8f23d8b30"}, - {file = "coverage-7.0.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:7d47d666e17e57ef65fefc87229fde262bd5c9039ae8424bc53aa2d8f07dc178"}, - {file = "coverage-7.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:321316a7b979892a13c148a9d37852b5a76f26717e4b911b606a649394629532"}, - {file = "coverage-7.0.2-cp310-cp310-win32.whl", hash = "sha256:420f10c852b9a489cf5a764534669a19f49732a0576c76d9489ebf287f81af6d"}, - {file = "coverage-7.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:a27a8dca0dc6f0944ed9fd83c556d862e227a5cd4220e62af5d4c750389938f0"}, - {file = "coverage-7.0.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ac1033942851bf01f28c76318155ea92d6648aecb924cab81fa23781d095e9ab"}, - {file = "coverage-7.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:36c1a1b6d38ebf8a4335f65226ec36b5d6fd67743fdcbad5c52bdcd46c4f5842"}, - {file = "coverage-7.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c5e1874c601128cf54c1d4b471e915658a334fbc56d7b3c324ddc7511597ea82"}, - {file = "coverage-7.0.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8e133ca2f8141b415ff396ba789bdeffdea8ff9a5c7fc9996ccf591d7d40ee93"}, - {file = "coverage-7.0.2-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4e97b21482aa5c21e049e4755c95955ad71fb54c9488969e2f17cf30922aa5f6"}, - {file = "coverage-7.0.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:8bd466135fb07f693dbdd999a5569ffbc0590e9c64df859243162f0ebee950c8"}, - {file = "coverage-7.0.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:38f281bb9bdd4269c451fed9451203512dadefd64676f14ed1e82c77eb5644fc"}, - {file = "coverage-7.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:7c669be1b01e4b2bf23aa49e987d9bedde0234a7da374a9b77ca5416d7c57002"}, - {file = "coverage-7.0.2-cp311-cp311-win32.whl", hash = "sha256:80583c536e7e010e301002088919d4ea90566d1789ee02551574fdf3faa275ae"}, - {file = "coverage-7.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:a7b018811a0e1d3869d8d0600849953acd355a3a29c6bee0fbd24d7772bcc0a2"}, - {file = "coverage-7.0.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:e8931af864bd599c6af626575a02103ae626f57b34e3af5537d40b040d33d2ad"}, - {file = "coverage-7.0.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a613d60be1a02c7a5184ea5c4227f48c08e0635608b9c17ae2b17efef8f2501"}, - {file = "coverage-7.0.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3fbb59f84c8549113dcdce7c6d16c5731fe53651d0b46c0a25a5ebc7bb655869"}, - {file = "coverage-7.0.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3d40ad86a348c79c614e2b90566267dd6d45f2e6b4d2bfb794d78ea4a4b60b63"}, - {file = "coverage-7.0.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:7e184aa18f921b612ea08666c25dd92a71241c8ed40917f2824219c92289b8c7"}, - {file = "coverage-7.0.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:fd22ee7bff4b5c37bb6385efee1c501b75e29ca40286f037cb91c2182d1348ce"}, - {file = "coverage-7.0.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:3d72e3d20b03e63bd27b1c4d6b754cd93eca82ecc5dd77b99262d5f64862ca35"}, - {file = "coverage-7.0.2-cp37-cp37m-win32.whl", hash = "sha256:5f44ba7c07e0aa4a7a2723b426c254e952da82a33d65b4a52afae4bef74a4203"}, - {file = "coverage-7.0.2-cp37-cp37m-win_amd64.whl", hash = "sha256:efa9d943189321f67f71070c309aa6f6130fa1ec35c9dfd0da0ed238938ce573"}, - {file = "coverage-7.0.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:da458bdc9b0bcd9b8ca85bc73148631b18cc8ba03c47f29f4c017809990351aa"}, - {file = "coverage-7.0.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:87d95eea58fb71f69b4f1c761099a19e0e9cb27d45dc1cc7042523128ee56337"}, - {file = "coverage-7.0.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dfafc350f43fd7dc67df18c940c3b7ed208ebb797abe9fb3047f0c65be8e4c0f"}, - {file = "coverage-7.0.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:46db409fc0c3ee5c859b84c7de9cb507166287d588390889fdf06a1afe452e16"}, - {file = "coverage-7.0.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c8805673b1953313adfc487d5323b4c87864e77057944a0888c98dd2f7a6052f"}, - {file = "coverage-7.0.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:62e5b942378d5f0b87caace567a70dc634ddd4d219a236fa221dc97d2fc412c8"}, - {file = "coverage-7.0.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:a99b2f2dd1236e8d9dc35974a3dc298a408cdfd512b0bb2451798cff1ce63408"}, - {file = "coverage-7.0.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:04691b8e832a900ed15f5bcccc2008fc2d1c8e7411251fd7d1422a84e1d72841"}, - {file = "coverage-7.0.2-cp38-cp38-win32.whl", hash = "sha256:b6936cd38757dd323fefc157823e46436610328f0feb1419a412316f24b77f36"}, - {file = "coverage-7.0.2-cp38-cp38-win_amd64.whl", hash = "sha256:483e120ea324c7fced6126bb9bf0535c71e9233d29cbc7e2fc4560311a5f8a32"}, - {file = "coverage-7.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:4438ba539bef21e288092b30ea2fc30e883d9af5b66ebeaf2fd7c25e2f074e39"}, - {file = "coverage-7.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:3a2d81c95d3b02638ee6ae647edc79769fd29bf5e9e5b6b0c29040579f33c260"}, - {file = "coverage-7.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c40aaf7930680e0e5f3bd6d3d3dc97a7897f53bdce925545c4b241e0c5c3ca6a"}, - {file = "coverage-7.0.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2b31f7f246dbff339b3b76ee81329e3eca5022ce270c831c65e841dbbb40115f"}, - {file = "coverage-7.0.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a6e1c77ff6f10eab496fbbcdaa7dfae84968928a0aadc43ce3c3453cec29bd79"}, - {file = "coverage-7.0.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:8e6c0ca447b557a32642f22d0987be37950eda51c4f19fc788cebc99426284b6"}, - {file = "coverage-7.0.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9de96025ce25b9f4e744fbe558a003e673004af255da9b1f6ec243720ac5deeb"}, - {file = "coverage-7.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:312fd77258bf1044ef4faa82091f2e88216e4b62dcf1a461d3e917144c8b09b7"}, - {file = "coverage-7.0.2-cp39-cp39-win32.whl", hash = "sha256:4d7be755d7544dac2b9814e98366a065d15a16e13847eb1f5473bb714483391e"}, - {file = "coverage-7.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:b6eab230b18458707b5c501548e997e42934b1c189fb4d1b78bf5aacc1c6a137"}, - {file = "coverage-7.0.2-pp37.pp38.pp39-none-any.whl", hash = "sha256:1d732b5dcafed67d81c5b5a0c404c31a61e13148946a3b910a340f72fdd1ec95"}, - {file = "coverage-7.0.2.tar.gz", hash = "sha256:405d8528a0ea07ca516d9007ecad4e1bd10e2eeef27411c6188d78c4e2dfcddc"}, -] -cryptography = [ - {file = "cryptography-39.0.0-cp36-abi3-macosx_10_12_universal2.whl", hash = "sha256:c52a1a6f81e738d07f43dab57831c29e57d21c81a942f4602fac7ee21b27f288"}, - {file = "cryptography-39.0.0-cp36-abi3-macosx_10_12_x86_64.whl", hash = "sha256:80ee674c08aaef194bc4627b7f2956e5ba7ef29c3cc3ca488cf15854838a8f72"}, - {file = "cryptography-39.0.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:887cbc1ea60786e534b00ba8b04d1095f4272d380ebd5f7a7eb4cc274710fad9"}, - {file = "cryptography-39.0.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6f97109336df5c178ee7c9c711b264c502b905c2d2a29ace99ed761533a3460f"}, - {file = "cryptography-39.0.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1a6915075c6d3a5e1215eab5d99bcec0da26036ff2102a1038401d6ef5bef25b"}, - {file = "cryptography-39.0.0-cp36-abi3-manylinux_2_24_x86_64.whl", hash = "sha256:76c24dd4fd196a80f9f2f5405a778a8ca132f16b10af113474005635fe7e066c"}, - {file = "cryptography-39.0.0-cp36-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:bae6c7f4a36a25291b619ad064a30a07110a805d08dc89984f4f441f6c1f3f96"}, - {file = "cryptography-39.0.0-cp36-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:875aea1039d78557c7c6b4db2fe0e9d2413439f4676310a5f269dd342ca7a717"}, - {file = "cryptography-39.0.0-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:f6c0db08d81ead9576c4d94bbb27aed8d7a430fa27890f39084c2d0e2ec6b0df"}, - {file = "cryptography-39.0.0-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:f3ed2d864a2fa1666e749fe52fb8e23d8e06b8012e8bd8147c73797c506e86f1"}, - {file = "cryptography-39.0.0-cp36-abi3-win32.whl", hash = "sha256:f671c1bb0d6088e94d61d80c606d65baacc0d374e67bf895148883461cd848de"}, - {file = "cryptography-39.0.0-cp36-abi3-win_amd64.whl", hash = "sha256:e324de6972b151f99dc078defe8fb1b0a82c6498e37bff335f5bc6b1e3ab5a1e"}, - {file = "cryptography-39.0.0-pp38-pypy38_pp73-macosx_10_12_x86_64.whl", hash = "sha256:754978da4d0457e7ca176f58c57b1f9de6556591c19b25b8bcce3c77d314f5eb"}, - {file = "cryptography-39.0.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1ee1fd0de9851ff32dbbb9362a4d833b579b4a6cc96883e8e6d2ff2a6bc7104f"}, - {file = "cryptography-39.0.0-pp38-pypy38_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:fec8b932f51ae245121c4671b4bbc030880f363354b2f0e0bd1366017d891458"}, - {file = "cryptography-39.0.0-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:407cec680e811b4fc829de966f88a7c62a596faa250fc1a4b520a0355b9bc190"}, - {file = "cryptography-39.0.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:7dacfdeee048814563eaaec7c4743c8aea529fe3dd53127313a792f0dadc1773"}, - {file = "cryptography-39.0.0-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:ad04f413436b0781f20c52a661660f1e23bcd89a0e9bb1d6d20822d048cf2856"}, - {file = "cryptography-39.0.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:50386acb40fbabbceeb2986332f0287f50f29ccf1497bae31cf5c3e7b4f4b34f"}, - {file = "cryptography-39.0.0-pp39-pypy39_pp73-manylinux_2_24_x86_64.whl", hash = "sha256:e5d71c5d5bd5b5c3eebcf7c5c2bb332d62ec68921a8c593bea8c394911a005ce"}, - {file = "cryptography-39.0.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:844ad4d7c3850081dffba91cdd91950038ee4ac525c575509a42d3fc806b83c8"}, - {file = "cryptography-39.0.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:e0a05aee6a82d944f9b4edd6a001178787d1546ec7c6223ee9a848a7ade92e39"}, - {file = "cryptography-39.0.0.tar.gz", hash = "sha256:f964c7dcf7802d133e8dbd1565914fa0194f9d683d82411989889ecd701e8adf"}, -] -cssselect2 = [ - {file = "cssselect2-0.7.0-py3-none-any.whl", hash = "sha256:fd23a65bfd444595913f02fc71f6b286c29261e354c41d722ca7a261a49b5969"}, - {file = "cssselect2-0.7.0.tar.gz", hash = "sha256:1ccd984dab89fc68955043aca4e1b03e0cf29cad9880f6e28e3ba7a74b14aa5a"}, -] -databases = [ - {file = "databases-0.5.5-py3-none-any.whl", hash = "sha256:97d9b9647216d1ab53ca61c059412b5c7b6e1f0bf8ce985477982ebcc7f278f3"}, - {file = "databases-0.5.5.tar.gz", hash = "sha256:02c6b016c1c951c21cca281dc8e2e002c60dc44026c0084aabbd8c37514aeb37"}, -] -decorator = [ - {file = "decorator-5.1.1-py3-none-any.whl", hash = "sha256:b8c3f85900b9dc423225913c5aace94729fe1fa9763b38939a95226f02d37186"}, - {file = "decorator-5.1.1.tar.gz", hash = "sha256:637996211036b6385ef91435e4fae22989472f9d571faba8927ba8253acbc330"}, -] -defusedxml = [ - {file = "defusedxml-0.7.1-py2.py3-none-any.whl", hash = "sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61"}, - {file = "defusedxml-0.7.1.tar.gz", hash = "sha256:1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69"}, -] -deprecated = [ - {file = "Deprecated-1.2.13-py2.py3-none-any.whl", hash = "sha256:64756e3e14c8c5eea9795d93c524551432a0be75629f8f29e67ab8caf076c76d"}, - {file = "Deprecated-1.2.13.tar.gz", hash = "sha256:43ac5335da90c31c24ba028af536a91d41d53f9e6901ddb021bcc572ce44e38d"}, -] -dnspython = [ - {file = "dnspython-2.2.1-py3-none-any.whl", hash = "sha256:a851e51367fb93e9e1361732c1d60dab63eff98712e503ea7d92e6eccb109b4f"}, - {file = "dnspython-2.2.1.tar.gz", hash = "sha256:0f7569a4a6ff151958b64304071d370daa3243d15941a7beedf0c9fe5105603e"}, -] -ecdsa = [ - {file = "ecdsa-0.17.0-py2.py3-none-any.whl", hash = "sha256:5cf31d5b33743abe0dfc28999036c849a69d548f994b535e527ee3cb7f3ef676"}, - {file = "ecdsa-0.17.0.tar.gz", hash = "sha256:b9f500bb439e4153d0330610f5d26baaf18d17b8ced1bc54410d189385ea68aa"}, -] -email-validator = [ - {file = "email_validator-1.3.0-py2.py3-none-any.whl", hash = "sha256:816073f2a7cffef786b29928f58ec16cdac42710a53bb18aa94317e3e145ec5c"}, - {file = "email_validator-1.3.0.tar.gz", hash = "sha256:553a66f8be2ec2dea641ae1d3f29017ab89e9d603d4a25cdaac39eefa283d769"}, -] -exceptiongroup = [ - {file = "exceptiongroup-1.1.0-py3-none-any.whl", hash = "sha256:327cbda3da756e2de031a3107b81ab7b3770a602c4d16ca618298c526f4bec1e"}, - {file = "exceptiongroup-1.1.0.tar.gz", hash = "sha256:bcb67d800a4497e1b404c2dd44fca47d3b7a5e5433dbab67f96c1a685cdfdf23"}, -] -executing = [ - {file = "executing-1.2.0-py2.py3-none-any.whl", hash = "sha256:0314a69e37426e3608aada02473b4161d4caf5a4b244d1d0c48072b8fee7bacc"}, - {file = "executing-1.2.0.tar.gz", hash = "sha256:19da64c18d2d851112f09c287f8d3dbbdf725ab0e569077efb6cdcbd3497c107"}, -] -face = [ - {file = "face-22.0.0-py3-none-any.whl", hash = "sha256:344fe31562d0f6f444a45982418f3793d4b14f9abb98ccca1509d22e0a3e7e35"}, - {file = "face-22.0.0.tar.gz", hash = "sha256:d5d692f90bc8f5987b636e47e36384b9bbda499aaf0a77aa0b0bbe834c76923d"}, -] -fastapi = [ - {file = "fastapi-0.77.1-py3-none-any.whl", hash = "sha256:041d8935a13c8f22a7ef80c76d8eea54953c44476d7057e7734138ee8951b9dc"}, - {file = "fastapi-0.77.1.tar.gz", hash = "sha256:6dfa715a334d1fafedcea33d74c7382afd2ce123093f83be2f4e322e89d45e22"}, -] -fastapi-debug-toolbar = [ - {file = "fastapi-debug-toolbar-0.2.1.tar.gz", hash = "sha256:2b331f15da2275c1371322d5288e591db7ae4b37e4f1beedc1c3e1ee05160874"}, - {file = "fastapi_debug_toolbar-0.2.1-py3-none-any.whl", hash = "sha256:084ca80c7abc97fb240d88f4d9da34360538531a4992a7251df71611fcb2f6a5"}, -] -flake8 = [ - {file = "flake8-4.0.1-py2.py3-none-any.whl", hash = "sha256:479b1304f72536a55948cb40a32dce8bb0ffe3501e26eaf292c7e60eb5e0428d"}, - {file = "flake8-4.0.1.tar.gz", hash = "sha256:806e034dda44114815e23c16ef92f95c91e4c71100ff52813adf7132a6ad870d"}, -] -freezegun = [ - {file = "freezegun-1.2.2-py3-none-any.whl", hash = "sha256:ea1b963b993cb9ea195adbd893a48d573fda951b0da64f60883d7e988b606c9f"}, - {file = "freezegun-1.2.2.tar.gz", hash = "sha256:cd22d1ba06941384410cd967d8a99d5ae2442f57dfafeff2fda5de8dc5c05446"}, -] -frozenlist = [ - {file = "frozenlist-1.3.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ff8bf625fe85e119553b5383ba0fb6aa3d0ec2ae980295aaefa552374926b3f4"}, - {file = "frozenlist-1.3.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:dfbac4c2dfcc082fcf8d942d1e49b6aa0766c19d3358bd86e2000bf0fa4a9cf0"}, - {file = "frozenlist-1.3.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:b1c63e8d377d039ac769cd0926558bb7068a1f7abb0f003e3717ee003ad85530"}, - {file = "frozenlist-1.3.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7fdfc24dcfce5b48109867c13b4cb15e4660e7bd7661741a391f821f23dfdca7"}, - {file = "frozenlist-1.3.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2c926450857408e42f0bbc295e84395722ce74bae69a3b2aa2a65fe22cb14b99"}, - {file = "frozenlist-1.3.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1841e200fdafc3d51f974d9d377c079a0694a8f06de2e67b48150328d66d5483"}, - {file = "frozenlist-1.3.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f470c92737afa7d4c3aacc001e335062d582053d4dbe73cda126f2d7031068dd"}, - {file = "frozenlist-1.3.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:783263a4eaad7c49983fe4b2e7b53fa9770c136c270d2d4bbb6d2192bf4d9caf"}, - {file = "frozenlist-1.3.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:924620eef691990dfb56dc4709f280f40baee568c794b5c1885800c3ecc69816"}, - {file = "frozenlist-1.3.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:ae4dc05c465a08a866b7a1baf360747078b362e6a6dbeb0c57f234db0ef88ae0"}, - {file = "frozenlist-1.3.3-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:bed331fe18f58d844d39ceb398b77d6ac0b010d571cba8267c2e7165806b00ce"}, - {file = "frozenlist-1.3.3-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:02c9ac843e3390826a265e331105efeab489ffaf4dd86384595ee8ce6d35ae7f"}, - {file = "frozenlist-1.3.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:9545a33965d0d377b0bc823dcabf26980e77f1b6a7caa368a365a9497fb09420"}, - {file = "frozenlist-1.3.3-cp310-cp310-win32.whl", hash = "sha256:d5cd3ab21acbdb414bb6c31958d7b06b85eeb40f66463c264a9b343a4e238642"}, - {file = "frozenlist-1.3.3-cp310-cp310-win_amd64.whl", hash = "sha256:b756072364347cb6aa5b60f9bc18e94b2f79632de3b0190253ad770c5df17db1"}, - {file = "frozenlist-1.3.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:b4395e2f8d83fbe0c627b2b696acce67868793d7d9750e90e39592b3626691b7"}, - {file = "frozenlist-1.3.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:14143ae966a6229350021384870458e4777d1eae4c28d1a7aa47f24d030e6678"}, - {file = "frozenlist-1.3.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5d8860749e813a6f65bad8285a0520607c9500caa23fea6ee407e63debcdbef6"}, - {file = "frozenlist-1.3.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:23d16d9f477bb55b6154654e0e74557040575d9d19fe78a161bd33d7d76808e8"}, - {file = "frozenlist-1.3.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:eb82dbba47a8318e75f679690190c10a5e1f447fbf9df41cbc4c3afd726d88cb"}, - {file = "frozenlist-1.3.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9309869032abb23d196cb4e4db574232abe8b8be1339026f489eeb34a4acfd91"}, - {file = "frozenlist-1.3.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a97b4fe50b5890d36300820abd305694cb865ddb7885049587a5678215782a6b"}, - {file = "frozenlist-1.3.3-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c188512b43542b1e91cadc3c6c915a82a5eb95929134faf7fd109f14f9892ce4"}, - {file = "frozenlist-1.3.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:303e04d422e9b911a09ad499b0368dc551e8c3cd15293c99160c7f1f07b59a48"}, - {file = "frozenlist-1.3.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:0771aed7f596c7d73444c847a1c16288937ef988dc04fb9f7be4b2aa91db609d"}, - {file = "frozenlist-1.3.3-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:66080ec69883597e4d026f2f71a231a1ee9887835902dbe6b6467d5a89216cf6"}, - {file = "frozenlist-1.3.3-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:41fe21dc74ad3a779c3d73a2786bdf622ea81234bdd4faf90b8b03cad0c2c0b4"}, - {file = "frozenlist-1.3.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:f20380df709d91525e4bee04746ba612a4df0972c1b8f8e1e8af997e678c7b81"}, - {file = "frozenlist-1.3.3-cp311-cp311-win32.whl", hash = "sha256:f30f1928162e189091cf4d9da2eac617bfe78ef907a761614ff577ef4edfb3c8"}, - {file = "frozenlist-1.3.3-cp311-cp311-win_amd64.whl", hash = "sha256:a6394d7dadd3cfe3f4b3b186e54d5d8504d44f2d58dcc89d693698e8b7132b32"}, - {file = "frozenlist-1.3.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:8df3de3a9ab8325f94f646609a66cbeeede263910c5c0de0101079ad541af332"}, - {file = "frozenlist-1.3.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0693c609e9742c66ba4870bcee1ad5ff35462d5ffec18710b4ac89337ff16e27"}, - {file = "frozenlist-1.3.3-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd4210baef299717db0a600d7a3cac81d46ef0e007f88c9335db79f8979c0d3d"}, - {file = "frozenlist-1.3.3-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:394c9c242113bfb4b9aa36e2b80a05ffa163a30691c7b5a29eba82e937895d5e"}, - {file = "frozenlist-1.3.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6327eb8e419f7d9c38f333cde41b9ae348bec26d840927332f17e887a8dcb70d"}, - {file = "frozenlist-1.3.3-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2e24900aa13212e75e5b366cb9065e78bbf3893d4baab6052d1aca10d46d944c"}, - {file = "frozenlist-1.3.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:3843f84a6c465a36559161e6c59dce2f2ac10943040c2fd021cfb70d58c4ad56"}, - {file = "frozenlist-1.3.3-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:84610c1502b2461255b4c9b7d5e9c48052601a8957cd0aea6ec7a7a1e1fb9420"}, - {file = "frozenlist-1.3.3-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:c21b9aa40e08e4f63a2f92ff3748e6b6c84d717d033c7b3438dd3123ee18f70e"}, - {file = "frozenlist-1.3.3-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:efce6ae830831ab6a22b9b4091d411698145cb9b8fc869e1397ccf4b4b6455cb"}, - {file = "frozenlist-1.3.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:40de71985e9042ca00b7953c4f41eabc3dc514a2d1ff534027f091bc74416401"}, - {file = "frozenlist-1.3.3-cp37-cp37m-win32.whl", hash = "sha256:180c00c66bde6146a860cbb81b54ee0df350d2daf13ca85b275123bbf85de18a"}, - {file = "frozenlist-1.3.3-cp37-cp37m-win_amd64.whl", hash = "sha256:9bbbcedd75acdfecf2159663b87f1bb5cfc80e7cd99f7ddd9d66eb98b14a8411"}, - {file = "frozenlist-1.3.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:034a5c08d36649591be1cbb10e09da9f531034acfe29275fc5454a3b101ce41a"}, - {file = "frozenlist-1.3.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ba64dc2b3b7b158c6660d49cdb1d872d1d0bf4e42043ad8d5006099479a194e5"}, - {file = "frozenlist-1.3.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:47df36a9fe24054b950bbc2db630d508cca3aa27ed0566c0baf661225e52c18e"}, - {file = "frozenlist-1.3.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:008a054b75d77c995ea26629ab3a0c0d7281341f2fa7e1e85fa6153ae29ae99c"}, - {file = "frozenlist-1.3.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:841ea19b43d438a80b4de62ac6ab21cfe6827bb8a9dc62b896acc88eaf9cecba"}, - {file = "frozenlist-1.3.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e235688f42b36be2b6b06fc37ac2126a73b75fb8d6bc66dd632aa35286238703"}, - {file = "frozenlist-1.3.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ca713d4af15bae6e5d79b15c10c8522859a9a89d3b361a50b817c98c2fb402a2"}, - {file = "frozenlist-1.3.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9ac5995f2b408017b0be26d4a1d7c61bce106ff3d9e3324374d66b5964325448"}, - {file = "frozenlist-1.3.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:a4ae8135b11652b08a8baf07631d3ebfe65a4c87909dbef5fa0cdde440444ee4"}, - {file = "frozenlist-1.3.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:4ea42116ceb6bb16dbb7d526e242cb6747b08b7710d9782aa3d6732bd8d27649"}, - {file = "frozenlist-1.3.3-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:810860bb4bdce7557bc0febb84bbd88198b9dbc2022d8eebe5b3590b2ad6c842"}, - {file = "frozenlist-1.3.3-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:ee78feb9d293c323b59a6f2dd441b63339a30edf35abcb51187d2fc26e696d13"}, - {file = "frozenlist-1.3.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:0af2e7c87d35b38732e810befb9d797a99279cbb85374d42ea61c1e9d23094b3"}, - {file = "frozenlist-1.3.3-cp38-cp38-win32.whl", hash = "sha256:899c5e1928eec13fd6f6d8dc51be23f0d09c5281e40d9cf4273d188d9feeaf9b"}, - {file = "frozenlist-1.3.3-cp38-cp38-win_amd64.whl", hash = "sha256:7f44e24fa70f6fbc74aeec3e971f60a14dde85da364aa87f15d1be94ae75aeef"}, - {file = "frozenlist-1.3.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:2b07ae0c1edaa0a36339ec6cce700f51b14a3fc6545fdd32930d2c83917332cf"}, - {file = "frozenlist-1.3.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ebb86518203e12e96af765ee89034a1dbb0c3c65052d1b0c19bbbd6af8a145e1"}, - {file = "frozenlist-1.3.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5cf820485f1b4c91e0417ea0afd41ce5cf5965011b3c22c400f6d144296ccbc0"}, - {file = "frozenlist-1.3.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c11e43016b9024240212d2a65043b70ed8dfd3b52678a1271972702d990ac6d"}, - {file = "frozenlist-1.3.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8fa3c6e3305aa1146b59a09b32b2e04074945ffcfb2f0931836d103a2c38f936"}, - {file = "frozenlist-1.3.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:352bd4c8c72d508778cf05ab491f6ef36149f4d0cb3c56b1b4302852255d05d5"}, - {file = "frozenlist-1.3.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:65a5e4d3aa679610ac6e3569e865425b23b372277f89b5ef06cf2cdaf1ebf22b"}, - {file = "frozenlist-1.3.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b1e2c1185858d7e10ff045c496bbf90ae752c28b365fef2c09cf0fa309291669"}, - {file = "frozenlist-1.3.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f163d2fd041c630fed01bc48d28c3ed4a3b003c00acd396900e11ee5316b56bb"}, - {file = "frozenlist-1.3.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:05cdb16d09a0832eedf770cb7bd1fe57d8cf4eaf5aced29c4e41e3f20b30a784"}, - {file = "frozenlist-1.3.3-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:8bae29d60768bfa8fb92244b74502b18fae55a80eac13c88eb0b496d4268fd2d"}, - {file = "frozenlist-1.3.3-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:eedab4c310c0299961ac285591acd53dc6723a1ebd90a57207c71f6e0c2153ab"}, - {file = "frozenlist-1.3.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:3bbdf44855ed8f0fbcd102ef05ec3012d6a4fd7c7562403f76ce6a52aeffb2b1"}, - {file = "frozenlist-1.3.3-cp39-cp39-win32.whl", hash = "sha256:efa568b885bca461f7c7b9e032655c0c143d305bf01c30caf6db2854a4532b38"}, - {file = "frozenlist-1.3.3-cp39-cp39-win_amd64.whl", hash = "sha256:cfe33efc9cb900a4c46f91a5ceba26d6df370ffddd9ca386eb1d4f0ad97b9ea9"}, - {file = "frozenlist-1.3.3.tar.gz", hash = "sha256:58bcc55721e8a90b88332d6cd441261ebb22342e238296bb330968952fbb3a6a"}, -] -funkybob = [] -furl = [ - {file = "furl-2.1.3-py2.py3-none-any.whl", hash = "sha256:9ab425062c4217f9802508e45feb4a83e54324273ac4b202f1850363309666c0"}, - {file = "furl-2.1.3.tar.gz", hash = "sha256:5a6188fe2666c484a12159c18be97a1977a71d632ef5bb867ef15f54af39cc4e"}, -] -glom = [ - {file = "glom-22.1.0-py2.py3-none-any.whl", hash = "sha256:5339da206bf3532e01a83a35aca202960ea885156986d190574b779598e9e772"}, - {file = "glom-22.1.0.tar.gz", hash = "sha256:1510c6587a8f9c64a246641b70033cbc5ebde99f02ad245693678038e821aeb5"}, -] -google-api-core = [ - {file = "google-api-core-2.11.0.tar.gz", hash = "sha256:4b9bb5d5a380a0befa0573b302651b8a9a89262c1730e37bf423cec511804c22"}, - {file = "google_api_core-2.11.0-py3-none-any.whl", hash = "sha256:ce222e27b0de0d7bc63eb043b956996d6dccab14cc3b690aaea91c9cc99dc16e"}, -] -google-auth = [ - {file = "google-auth-2.15.0.tar.gz", hash = "sha256:72f12a6cfc968d754d7bdab369c5c5c16032106e52d32c6dfd8484e4c01a6d1f"}, - {file = "google_auth-2.15.0-py2.py3-none-any.whl", hash = "sha256:6897b93556d8d807ad70701bb89f000183aea366ca7ed94680828b37437a4994"}, -] -google-cloud-appengine-logging = [ - {file = "google-cloud-appengine-logging-1.2.0.tar.gz", hash = "sha256:a6f6a8e76d9d7e7471e8925ee28b11814faad4ba41bdd3933f85bd5155593626"}, - {file = "google_cloud_appengine_logging-1.2.0-py2.py3-none-any.whl", hash = "sha256:8257fe68d0c2f4eb1085fde875e2929196e4ded9cb522c3faaddf14307e8e588"}, -] -google-cloud-audit-log = [ - {file = "google-cloud-audit-log-0.2.4.tar.gz", hash = "sha256:aabe5543671e4f8a9c7a4c0e3ea9a87ba2ba2b96f9ffad6faa02209900e1f308"}, - {file = "google_cloud_audit_log-0.2.4-py2.py3-none-any.whl", hash = "sha256:29ed77fe0b21eb2d5dfb998edb59ee2adc65fea5d5ac9fcf17828d60d25b58b3"}, -] -google-cloud-core = [ - {file = "google-cloud-core-2.3.2.tar.gz", hash = "sha256:b9529ee7047fd8d4bf4a2182de619154240df17fbe60ead399078c1ae152af9a"}, - {file = "google_cloud_core-2.3.2-py2.py3-none-any.whl", hash = "sha256:8417acf6466be2fa85123441696c4badda48db314c607cf1e5d543fa8bdc22fe"}, -] -google-cloud-logging = [ - {file = "google-cloud-logging-3.4.0.tar.gz", hash = "sha256:cde0f59fadb917468746252baf4b11ea00f6d686ef02139183eaf921f3aee6b4"}, - {file = "google_cloud_logging-3.4.0-py2.py3-none-any.whl", hash = "sha256:afe1d558346e4a6ff8203bfb4266cff8f5fb46816ad0930a9af0d3956a218838"}, -] -googleapis-common-protos = [ - {file = "googleapis-common-protos-1.57.0.tar.gz", hash = "sha256:27a849d6205838fb6cc3c1c21cb9800707a661bb21c6ce7fb13e99eb1f8a0c46"}, - {file = "googleapis_common_protos-1.57.0-py2.py3-none-any.whl", hash = "sha256:a9f4a1d7f6d9809657b7f1316a1aa527f6664891531bcfcc13b6696e685f443c"}, -] -greenlet = [ - {file = "greenlet-2.0.1-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:9ed358312e63bf683b9ef22c8e442ef6c5c02973f0c2a939ec1d7b50c974015c"}, - {file = "greenlet-2.0.1-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:4f09b0010e55bec3239278f642a8a506b91034f03a4fb28289a7d448a67f1515"}, - {file = "greenlet-2.0.1-cp27-cp27m-win32.whl", hash = "sha256:1407fe45246632d0ffb7a3f4a520ba4e6051fc2cbd61ba1f806900c27f47706a"}, - {file = "greenlet-2.0.1-cp27-cp27m-win_amd64.whl", hash = "sha256:3001d00eba6bbf084ae60ec7f4bb8ed375748f53aeaefaf2a37d9f0370558524"}, - {file = "greenlet-2.0.1-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:d566b82e92ff2e09dd6342df7e0eb4ff6275a3f08db284888dcd98134dbd4243"}, - {file = "greenlet-2.0.1-cp310-cp310-macosx_10_15_x86_64.whl", hash = "sha256:0722c9be0797f544a3ed212569ca3fe3d9d1a1b13942d10dd6f0e8601e484d26"}, - {file = "greenlet-2.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d37990425b4687ade27810e3b1a1c37825d242ebc275066cfee8cb6b8829ccd"}, - {file = "greenlet-2.0.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:be35822f35f99dcc48152c9839d0171a06186f2d71ef76dc57fa556cc9bf6b45"}, - {file = "greenlet-2.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c140e7eb5ce47249668056edf3b7e9900c6a2e22fb0eaf0513f18a1b2c14e1da"}, - {file = "greenlet-2.0.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d21681f09e297a5adaa73060737e3aa1279a13ecdcfcc6ef66c292cb25125b2d"}, - {file = "greenlet-2.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fb412b7db83fe56847df9c47b6fe3f13911b06339c2aa02dcc09dce8bbf582cd"}, - {file = "greenlet-2.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:c6a08799e9e88052221adca55741bf106ec7ea0710bca635c208b751f0d5b617"}, - {file = "greenlet-2.0.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:9e112e03d37987d7b90c1e98ba5e1b59e1645226d78d73282f45b326f7bddcb9"}, - {file = "greenlet-2.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56961cfca7da2fdd178f95ca407fa330c64f33289e1804b592a77d5593d9bd94"}, - {file = "greenlet-2.0.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:13ba6e8e326e2116c954074c994da14954982ba2795aebb881c07ac5d093a58a"}, - {file = "greenlet-2.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1bf633a50cc93ed17e494015897361010fc08700d92676c87931d3ea464123ce"}, - {file = "greenlet-2.0.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:9f2c221eecb7ead00b8e3ddb913c67f75cba078fd1d326053225a3f59d850d72"}, - {file = "greenlet-2.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:13ebf93c343dd8bd010cd98e617cb4c1c1f352a0cf2524c82d3814154116aa82"}, - {file = "greenlet-2.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:6f61d71bbc9b4a3de768371b210d906726535d6ca43506737682caa754b956cd"}, - {file = "greenlet-2.0.1-cp35-cp35m-macosx_10_14_x86_64.whl", hash = "sha256:2d0bac0385d2b43a7bd1d651621a4e0f1380abc63d6fb1012213a401cbd5bf8f"}, - {file = "greenlet-2.0.1-cp35-cp35m-manylinux2010_x86_64.whl", hash = "sha256:f6327b6907b4cb72f650a5b7b1be23a2aab395017aa6f1adb13069d66360eb3f"}, - {file = "greenlet-2.0.1-cp35-cp35m-win32.whl", hash = "sha256:81b0ea3715bf6a848d6f7149d25bf018fd24554a4be01fcbbe3fdc78e890b955"}, - {file = "greenlet-2.0.1-cp35-cp35m-win_amd64.whl", hash = "sha256:38255a3f1e8942573b067510f9611fc9e38196077b0c8eb7a8c795e105f9ce77"}, - {file = "greenlet-2.0.1-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:04957dc96669be041e0c260964cfef4c77287f07c40452e61abe19d647505581"}, - {file = "greenlet-2.0.1-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:4aeaebcd91d9fee9aa768c1b39cb12214b30bf36d2b7370505a9f2165fedd8d9"}, - {file = "greenlet-2.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:974a39bdb8c90a85982cdb78a103a32e0b1be986d411303064b28a80611f6e51"}, - {file = "greenlet-2.0.1-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8dca09dedf1bd8684767bc736cc20c97c29bc0c04c413e3276e0962cd7aeb148"}, - {file = "greenlet-2.0.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a4c0757db9bd08470ff8277791795e70d0bf035a011a528ee9a5ce9454b6cba2"}, - {file = "greenlet-2.0.1-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:5067920de254f1a2dee8d3d9d7e4e03718e8fd2d2d9db962c8c9fa781ae82a39"}, - {file = "greenlet-2.0.1-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:5a8e05057fab2a365c81abc696cb753da7549d20266e8511eb6c9d9f72fe3e92"}, - {file = "greenlet-2.0.1-cp36-cp36m-win32.whl", hash = "sha256:3d75b8d013086b08e801fbbb896f7d5c9e6ccd44f13a9241d2bf7c0df9eda928"}, - {file = "greenlet-2.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:097e3dae69321e9100202fc62977f687454cd0ea147d0fd5a766e57450c569fd"}, - {file = "greenlet-2.0.1-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:cb242fc2cda5a307a7698c93173d3627a2a90d00507bccf5bc228851e8304963"}, - {file = "greenlet-2.0.1-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:72b00a8e7c25dcea5946692a2485b1a0c0661ed93ecfedfa9b6687bd89a24ef5"}, - {file = "greenlet-2.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d5b0ff9878333823226d270417f24f4d06f235cb3e54d1103b71ea537a6a86ce"}, - {file = "greenlet-2.0.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:be9e0fb2ada7e5124f5282d6381903183ecc73ea019568d6d63d33f25b2a9000"}, - {file = "greenlet-2.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b493db84d124805865adc587532ebad30efa68f79ad68f11b336e0a51ec86c2"}, - {file = "greenlet-2.0.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:0459d94f73265744fee4c2d5ec44c6f34aa8a31017e6e9de770f7bcf29710be9"}, - {file = "greenlet-2.0.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:a20d33124935d27b80e6fdacbd34205732660e0a1d35d8b10b3328179a2b51a1"}, - {file = "greenlet-2.0.1-cp37-cp37m-win32.whl", hash = "sha256:ea688d11707d30e212e0110a1aac7f7f3f542a259235d396f88be68b649e47d1"}, - {file = "greenlet-2.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:afe07421c969e259e9403c3bb658968702bc3b78ec0b6fde3ae1e73440529c23"}, - {file = "greenlet-2.0.1-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:cd4ccc364cf75d1422e66e247e52a93da6a9b73cefa8cad696f3cbbb75af179d"}, - {file = "greenlet-2.0.1-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:4c8b1c43e75c42a6cafcc71defa9e01ead39ae80bd733a2608b297412beede68"}, - {file = "greenlet-2.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:659f167f419a4609bc0516fb18ea69ed39dbb25594934bd2dd4d0401660e8a1e"}, - {file = "greenlet-2.0.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:356e4519d4dfa766d50ecc498544b44c0249b6de66426041d7f8b751de4d6b48"}, - {file = "greenlet-2.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:811e1d37d60b47cb8126e0a929b58c046251f28117cb16fcd371eed61f66b764"}, - {file = "greenlet-2.0.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:d38ffd0e81ba8ef347d2be0772e899c289b59ff150ebbbbe05dc61b1246eb4e0"}, - {file = "greenlet-2.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:0109af1138afbfb8ae647e31a2b1ab030f58b21dd8528c27beaeb0093b7938a9"}, - {file = "greenlet-2.0.1-cp38-cp38-win32.whl", hash = "sha256:88c8d517e78acdf7df8a2134a3c4b964415b575d2840a2746ddb1cc6175f8608"}, - {file = "greenlet-2.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:d6ee1aa7ab36475035eb48c01efae87d37936a8173fc4d7b10bb02c2d75dd8f6"}, - {file = "greenlet-2.0.1-cp39-cp39-macosx_10_15_x86_64.whl", hash = "sha256:b1992ba9d4780d9af9726bbcef6a1db12d9ab1ccc35e5773685a24b7fb2758eb"}, - {file = "greenlet-2.0.1-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:b5e83e4de81dcc9425598d9469a624826a0b1211380ac444c7c791d4a2137c19"}, - {file = "greenlet-2.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:505138d4fa69462447a562a7c2ef723c6025ba12ac04478bc1ce2fcc279a2db5"}, - {file = "greenlet-2.0.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cce1e90dd302f45716a7715517c6aa0468af0bf38e814ad4eab58e88fc09f7f7"}, - {file = "greenlet-2.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e9744c657d896c7b580455e739899e492a4a452e2dd4d2b3e459f6b244a638d"}, - {file = "greenlet-2.0.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:662e8f7cad915ba75d8017b3e601afc01ef20deeeabf281bd00369de196d7726"}, - {file = "greenlet-2.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:41b825d65f31e394b523c84db84f9383a2f7eefc13d987f308f4663794d2687e"}, - {file = "greenlet-2.0.1-cp39-cp39-win32.whl", hash = "sha256:db38f80540083ea33bdab614a9d28bcec4b54daa5aff1668d7827a9fc769ae0a"}, - {file = "greenlet-2.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:b23d2a46d53210b498e5b701a1913697671988f4bf8e10f935433f6e7c332fb6"}, - {file = "greenlet-2.0.1.tar.gz", hash = "sha256:42e602564460da0e8ee67cb6d7236363ee5e131aa15943b6670e44e5c2ed0f67"}, -] -grpc-google-iam-v1 = [ - {file = "grpc-google-iam-v1-0.12.4.tar.gz", hash = "sha256:3f0ac2c940b9a855d7ce7e31fde28bddb0d9ac362d32d07c67148306931a0e30"}, - {file = "grpc_google_iam_v1-0.12.4-py2.py3-none-any.whl", hash = "sha256:312801ae848aeb8408c099ea372b96d253077e7851aae1a9e745df984f81f20c"}, -] -grpcio = [ - {file = "grpcio-1.51.1-cp310-cp310-linux_armv7l.whl", hash = "sha256:cc2bece1737b44d878cc1510ea04469a8073dbbcdd762175168937ae4742dfb3"}, - {file = "grpcio-1.51.1-cp310-cp310-macosx_12_0_x86_64.whl", hash = "sha256:e223a9793522680beae44671b9ed8f6d25bbe5ddf8887e66aebad5e0686049ef"}, - {file = "grpcio-1.51.1-cp310-cp310-manylinux_2_17_aarch64.whl", hash = "sha256:24ac1154c4b2ab4a0c5326a76161547e70664cd2c39ba75f00fc8a2170964ea2"}, - {file = "grpcio-1.51.1-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e4ef09f8997c4be5f3504cefa6b5c6cc3cf648274ce3cede84d4342a35d76db6"}, - {file = "grpcio-1.51.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a8a0b77e992c64880e6efbe0086fe54dfc0bbd56f72a92d9e48264dcd2a3db98"}, - {file = "grpcio-1.51.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:eacad297ea60c72dd280d3353d93fb1dcca952ec11de6bb3c49d12a572ba31dd"}, - {file = "grpcio-1.51.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:16c71740640ba3a882f50b01bf58154681d44b51f09a5728180a8fdc66c67bd5"}, - {file = "grpcio-1.51.1-cp310-cp310-win32.whl", hash = "sha256:29cb97d41a4ead83b7bcad23bdb25bdd170b1e2cba16db6d3acbb090bc2de43c"}, - {file = "grpcio-1.51.1-cp310-cp310-win_amd64.whl", hash = "sha256:9ff42c5620b4e4530609e11afefa4a62ca91fa0abb045a8957e509ef84e54d30"}, - {file = "grpcio-1.51.1-cp311-cp311-linux_armv7l.whl", hash = "sha256:bc59f7ba87972ab236f8669d8ca7400f02a0eadf273ca00e02af64d588046f02"}, - {file = "grpcio-1.51.1-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:3c2b3842dcf870912da31a503454a33a697392f60c5e2697c91d133130c2c85d"}, - {file = "grpcio-1.51.1-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:22b011674090594f1f3245960ced7386f6af35485a38901f8afee8ad01541dbd"}, - {file = "grpcio-1.51.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:49d680356a975d9c66a678eb2dde192d5dc427a7994fb977363634e781614f7c"}, - {file = "grpcio-1.51.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:094e64236253590d9d4075665c77b329d707b6fca864dd62b144255e199b4f87"}, - {file = "grpcio-1.51.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:257478300735ce3c98d65a930bbda3db172bd4e00968ba743e6a1154ea6edf10"}, - {file = "grpcio-1.51.1-cp311-cp311-win32.whl", hash = "sha256:5a6ebcdef0ef12005d56d38be30f5156d1cb3373b52e96f147f4a24b0ddb3a9d"}, - {file = "grpcio-1.51.1-cp311-cp311-win_amd64.whl", hash = "sha256:3f9b0023c2c92bebd1be72cdfca23004ea748be1813a66d684d49d67d836adde"}, - {file = "grpcio-1.51.1-cp37-cp37m-linux_armv7l.whl", hash = "sha256:cd3baccea2bc5c38aeb14e5b00167bd4e2373a373a5e4d8d850bd193edad150c"}, - {file = "grpcio-1.51.1-cp37-cp37m-macosx_10_10_x86_64.whl", hash = "sha256:17ec9b13cec4a286b9e606b48191e560ca2f3bbdf3986f91e480a95d1582e1a7"}, - {file = "grpcio-1.51.1-cp37-cp37m-manylinux_2_17_aarch64.whl", hash = "sha256:fbdbe9a849854fe484c00823f45b7baab159bdd4a46075302281998cb8719df5"}, - {file = "grpcio-1.51.1-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:31bb6bc7ff145e2771c9baf612f4b9ebbc9605ccdc5f3ff3d5553de7fc0e0d79"}, - {file = "grpcio-1.51.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e473525c28251558337b5c1ad3fa969511e42304524a4e404065e165b084c9e4"}, - {file = "grpcio-1.51.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:6f0b89967ee11f2b654c23b27086d88ad7bf08c0b3c2a280362f28c3698b2896"}, - {file = "grpcio-1.51.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:7942b32a291421460d6a07883033e392167d30724aa84987e6956cd15f1a21b9"}, - {file = "grpcio-1.51.1-cp37-cp37m-win32.whl", hash = "sha256:f96ace1540223f26fbe7c4ebbf8a98e3929a6aa0290c8033d12526847b291c0f"}, - {file = "grpcio-1.51.1-cp37-cp37m-win_amd64.whl", hash = "sha256:f1fec3abaf274cdb85bf3878167cfde5ad4a4d97c68421afda95174de85ba813"}, - {file = "grpcio-1.51.1-cp38-cp38-linux_armv7l.whl", hash = "sha256:0e1a9e1b4a23808f1132aa35f968cd8e659f60af3ffd6fb00bcf9a65e7db279f"}, - {file = "grpcio-1.51.1-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:6df3b63538c362312bc5fa95fb965069c65c3ea91d7ce78ad9c47cab57226f54"}, - {file = "grpcio-1.51.1-cp38-cp38-manylinux_2_17_aarch64.whl", hash = "sha256:172405ca6bdfedd6054c74c62085946e45ad4d9cec9f3c42b4c9a02546c4c7e9"}, - {file = "grpcio-1.51.1-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:506b9b7a4cede87d7219bfb31014d7b471cfc77157da9e820a737ec1ea4b0663"}, - {file = "grpcio-1.51.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0fb93051331acbb75b49a2a0fd9239c6ba9528f6bdc1dd400ad1cb66cf864292"}, - {file = "grpcio-1.51.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:5dca372268c6ab6372d37d6b9f9343e7e5b4bc09779f819f9470cd88b2ece3c3"}, - {file = "grpcio-1.51.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:471d39d3370ca923a316d49c8aac66356cea708a11e647e3bdc3d0b5de4f0a40"}, - {file = "grpcio-1.51.1-cp38-cp38-win32.whl", hash = "sha256:75e29a90dc319f0ad4d87ba6d20083615a00d8276b51512e04ad7452b5c23b04"}, - {file = "grpcio-1.51.1-cp38-cp38-win_amd64.whl", hash = "sha256:f1158bccbb919da42544a4d3af5d9296a3358539ffa01018307337365a9a0c64"}, - {file = "grpcio-1.51.1-cp39-cp39-linux_armv7l.whl", hash = "sha256:59dffade859f157bcc55243714d57b286da6ae16469bf1ac0614d281b5f49b67"}, - {file = "grpcio-1.51.1-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:dad6533411d033b77f5369eafe87af8583178efd4039c41d7515d3336c53b4f1"}, - {file = "grpcio-1.51.1-cp39-cp39-manylinux_2_17_aarch64.whl", hash = "sha256:4c4423ea38a7825b8fed8934d6d9aeebdf646c97e3c608c3b0bcf23616f33877"}, - {file = "grpcio-1.51.1-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0dc5354e38e5adf2498312f7241b14c7ce3484eefa0082db4297189dcbe272e6"}, - {file = "grpcio-1.51.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:97d67983189e2e45550eac194d6234fc38b8c3b5396c153821f2d906ed46e0ce"}, - {file = "grpcio-1.51.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:538d981818e49b6ed1e9c8d5e5adf29f71c4e334e7d459bf47e9b7abb3c30e09"}, - {file = "grpcio-1.51.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:9235dcd5144a83f9ca6f431bd0eccc46b90e2c22fe27b7f7d77cabb2fb515595"}, - {file = "grpcio-1.51.1-cp39-cp39-win32.whl", hash = "sha256:aacb54f7789ede5cbf1d007637f792d3e87f1c9841f57dd51abf89337d1b8472"}, - {file = "grpcio-1.51.1-cp39-cp39-win_amd64.whl", hash = "sha256:2b170eaf51518275c9b6b22ccb59450537c5a8555326fd96ff7391b5dd75303c"}, - {file = "grpcio-1.51.1.tar.gz", hash = "sha256:e6dfc2b6567b1c261739b43d9c59d201c1b89e017afd9e684d85aa7a186c9f7a"}, -] -grpcio-status = [ - {file = "grpcio-status-1.51.1.tar.gz", hash = "sha256:ac2617a3095935ebd785e2228958f24b10a0d527a0c9eb5a0863c784f648a816"}, - {file = "grpcio_status-1.51.1-py3-none-any.whl", hash = "sha256:a52cbdc4b18f325bfc13d319ae7c7ae7a0fee07f3d9a005504d6097896d7a495"}, -] -h11 = [ - {file = "h11-0.14.0-py3-none-any.whl", hash = "sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761"}, - {file = "h11-0.14.0.tar.gz", hash = "sha256:8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d"}, -] -h2 = [ - {file = "h2-4.1.0-py3-none-any.whl", hash = "sha256:03a46bcf682256c95b5fd9e9a99c1323584c3eec6440d379b9903d709476bc6d"}, - {file = "h2-4.1.0.tar.gz", hash = "sha256:a83aca08fbe7aacb79fec788c9c0bac936343560ed9ec18b82a13a12c28d2abb"}, -] -hpack = [ - {file = "hpack-4.0.0-py3-none-any.whl", hash = "sha256:84a076fad3dc9a9f8063ccb8041ef100867b1878b25ef0ee63847a5d53818a6c"}, - {file = "hpack-4.0.0.tar.gz", hash = "sha256:fc41de0c63e687ebffde81187a948221294896f6bdc0ae2312708df339430095"}, -] -httpcore = [ - {file = "httpcore-0.16.3-py3-none-any.whl", hash = "sha256:da1fb708784a938aa084bde4feb8317056c55037247c787bd7e19eb2c2949dc0"}, - {file = "httpcore-0.16.3.tar.gz", hash = "sha256:c5d6f04e2fc530f39e0c077e6a30caa53f1451096120f1f38b954afd0b17c0cb"}, -] -httpx = [ - {file = "httpx-0.23.2-py3-none-any.whl", hash = "sha256:106cded342a44e443060fab70ef327139248c61939e77d73964560c8d8b57069"}, - {file = "httpx-0.23.2.tar.gz", hash = "sha256:e824a6fa18ffaa6423c6f3a32d5096fc15bd8dff43663a223f06242fc69451a8"}, -] -httpx-ws = [ - {file = "httpx_ws-0.3.0-py3-none-any.whl", hash = "sha256:68c53208076c5414ff7eadbd559ec4a10f1b399865220bb4bbdbc06eb9444b0d"}, - {file = "httpx_ws-0.3.0.tar.gz", hash = "sha256:694cf6d52622167cfc611c854312039dad03e470abbaf2efcfdbb08a3c29f1eb"}, -] -hypercorn = [] -hyperframe = [ - {file = "hyperframe-6.0.1-py3-none-any.whl", hash = "sha256:0ec6bafd80d8ad2195c4f03aacba3a8265e57bc4cff261e802bf39970ed02a15"}, - {file = "hyperframe-6.0.1.tar.gz", hash = "sha256:ae510046231dc8e9ecb1a6586f63d2347bf4c8905914aa84ba585ae85f28a914"}, -] -icdiff = [ - {file = "icdiff-2.0.6.tar.gz", hash = "sha256:a2673b335d671e64fc73c44e1eaa0aa01fd0e68354e58ee17e863ab29912a79a"}, -] -idna = [ - {file = "idna-3.4-py3-none-any.whl", hash = "sha256:90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2"}, - {file = "idna-3.4.tar.gz", hash = "sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4"}, -] -iniconfig = [ - {file = "iniconfig-1.1.1-py2.py3-none-any.whl", hash = "sha256:011e24c64b7f47f6ebd835bb12a743f2fbe9a26d4cecaa7f53bc4f35ee9da8b3"}, - {file = "iniconfig-1.1.1.tar.gz", hash = "sha256:bc3af051d7d14b2ee5ef9969666def0cd1a000e121eaea580d4a313df4b37f32"}, -] -ipython = [ - {file = "ipython-8.7.0-py3-none-any.whl", hash = "sha256:352042ddcb019f7c04e48171b4dd78e4c4bb67bf97030d170e154aac42b656d9"}, - {file = "ipython-8.7.0.tar.gz", hash = "sha256:882899fe78d5417a0aa07f995db298fa28b58faeba2112d2e3a4c95fe14bb738"}, -] -itsdangerous = [ - {file = "itsdangerous-2.1.2-py3-none-any.whl", hash = "sha256:2c2349112351b88699d8d4b6b075022c0808887cb7ad10069318a8b0bc88db44"}, - {file = "itsdangerous-2.1.2.tar.gz", hash = "sha256:5dbbc68b317e5e42f327f9021763545dc3fc3bfe22e6deb96aaf1fc38874156a"}, -] -jedi = [ - {file = "jedi-0.18.2-py2.py3-none-any.whl", hash = "sha256:203c1fd9d969ab8f2119ec0a3342e0b49910045abe6af0a3ae83a5764d54639e"}, - {file = "jedi-0.18.2.tar.gz", hash = "sha256:bae794c30d07f6d910d32a7048af09b5a39ed740918da923c6b780790ebac612"}, -] -jinja2 = [ - {file = "Jinja2-3.1.2-py3-none-any.whl", hash = "sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61"}, - {file = "Jinja2-3.1.2.tar.gz", hash = "sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852"}, -] -jwcrypto = [ - {file = "jwcrypto-1.4.2.tar.gz", hash = "sha256:80a35e9ed1b3b2c43ce03d92c5d48e6d0b6647e2aa2618e4963448923d78a37b"}, -] -jwskate = [ - {file = "jwskate-0.5.0-py3-none-any.whl", hash = "sha256:05623c7425a11073850237841d404f515413d8ed67cf6fca093f8a91a449e055"}, - {file = "jwskate-0.5.0.tar.gz", hash = "sha256:b8708003dcfdfbc578893ffc27bd28522c5c3fe45725b624fdf4534b647cba76"}, -] -lightning-payencode = [] -lnurl = [ - {file = "lnurl-0.3.6-py3-none-any.whl", hash = "sha256:579982fd8c4d25bc84c61c74ec45cb7999fa1fa2426f5d5aeb0160ba333b9c92"}, - {file = "lnurl-0.3.6.tar.gz", hash = "sha256:8af07460115a48f3122a5a9c9a6062bee3897d5f6ab4c9a60f6561a83a8234f6"}, -] -mako = [ - {file = "Mako-1.2.4-py3-none-any.whl", hash = "sha256:c97c79c018b9165ac9922ae4f32da095ffd3c4e6872b45eded42926deea46818"}, - {file = "Mako-1.2.4.tar.gz", hash = "sha256:d60a3903dc3bb01a18ad6a89cdbe2e4eadc69c0bc8ef1e3773ba53d44c3f7a34"}, -] -markupsafe = [ - {file = "MarkupSafe-2.1.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:86b1f75c4e7c2ac2ccdaec2b9022845dbb81880ca318bb7a0a01fbf7813e3812"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f121a1420d4e173a5d96e47e9a0c0dcff965afdf1626d28de1460815f7c4ee7a"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a49907dd8420c5685cfa064a1335b6754b74541bbb3706c259c02ed65b644b3e"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:10c1bfff05d95783da83491be968e8fe789263689c02724e0c691933c52994f5"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b7bd98b796e2b6553da7225aeb61f447f80a1ca64f41d83612e6139ca5213aa4"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:b09bf97215625a311f669476f44b8b318b075847b49316d3e28c08e41a7a573f"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:694deca8d702d5db21ec83983ce0bb4b26a578e71fbdbd4fdcd387daa90e4d5e"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:efc1913fd2ca4f334418481c7e595c00aad186563bbc1ec76067848c7ca0a933"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-win32.whl", hash = "sha256:4a33dea2b688b3190ee12bd7cfa29d39c9ed176bda40bfa11099a3ce5d3a7ac6"}, - {file = "MarkupSafe-2.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:dda30ba7e87fbbb7eab1ec9f58678558fd9a6b8b853530e176eabd064da81417"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:671cd1187ed5e62818414afe79ed29da836dde67166a9fac6d435873c44fdd02"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3799351e2336dc91ea70b034983ee71cf2f9533cdff7c14c90ea126bfd95d65a"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e72591e9ecd94d7feb70c1cbd7be7b3ebea3f548870aa91e2732960fa4d57a37"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6fbf47b5d3728c6aea2abb0589b5d30459e369baa772e0f37a0320185e87c980"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:d5ee4f386140395a2c818d149221149c54849dfcfcb9f1debfe07a8b8bd63f9a"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:bcb3ed405ed3222f9904899563d6fc492ff75cce56cba05e32eff40e6acbeaa3"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:e1c0b87e09fa55a220f058d1d49d3fb8df88fbfab58558f1198e08c1e1de842a"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-win32.whl", hash = "sha256:8dc1c72a69aa7e082593c4a203dcf94ddb74bb5c8a731e4e1eb68d031e8498ff"}, - {file = "MarkupSafe-2.1.1-cp37-cp37m-win_amd64.whl", hash = "sha256:97a68e6ada378df82bc9f16b800ab77cbf4b2fada0081794318520138c088e4a"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:e8c843bbcda3a2f1e3c2ab25913c80a3c5376cd00c6e8c4a86a89a28c8dc5452"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0212a68688482dc52b2d45013df70d169f542b7394fc744c02a57374a4207003"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e576a51ad59e4bfaac456023a78f6b5e6e7651dcd383bcc3e18d06f9b55d6d1"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b9fe39a2ccc108a4accc2676e77da025ce383c108593d65cc909add5c3bd601"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:96e37a3dc86e80bf81758c152fe66dbf60ed5eca3d26305edf01892257049925"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6d0072fea50feec76a4c418096652f2c3238eaa014b2f94aeb1d56a66b41403f"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:089cf3dbf0cd6c100f02945abeb18484bd1ee57a079aefd52cffd17fba910b88"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:6a074d34ee7a5ce3effbc526b7083ec9731bb3cbf921bbe1d3005d4d2bdb3a63"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-win32.whl", hash = "sha256:421be9fbf0ffe9ffd7a378aafebbf6f4602d564d34be190fc19a193232fd12b1"}, - {file = "MarkupSafe-2.1.1-cp38-cp38-win_amd64.whl", hash = "sha256:fc7b548b17d238737688817ab67deebb30e8073c95749d55538ed473130ec0c7"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:e04e26803c9c3851c931eac40c695602c6295b8d432cbe78609649ad9bd2da8a"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b87db4360013327109564f0e591bd2a3b318547bcef31b468a92ee504d07ae4f"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:99a2a507ed3ac881b975a2976d59f38c19386d128e7a9a18b7df6fff1fd4c1d6"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:56442863ed2b06d19c37f94d999035e15ee982988920e12a5b4ba29b62ad1f77"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3ce11ee3f23f79dbd06fb3d63e2f6af7b12db1d46932fe7bd8afa259a5996603"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:33b74d289bd2f5e527beadcaa3f401e0df0a89927c1559c8566c066fa4248ab7"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:43093fb83d8343aac0b1baa75516da6092f58f41200907ef92448ecab8825135"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8e3dcf21f367459434c18e71b2a9532d96547aef8a871872a5bd69a715c15f96"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-win32.whl", hash = "sha256:d4306c36ca495956b6d568d276ac11fdd9c30a36f1b6eb928070dc5360b22e1c"}, - {file = "MarkupSafe-2.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:46d00d6cfecdde84d40e572d63735ef81423ad31184100411e6e3388d405e247"}, - {file = "MarkupSafe-2.1.1.tar.gz", hash = "sha256:7f91197cc9e48f989d12e4e6fbc46495c446636dfc81b9ccf50bb0ec74b91d4b"}, -] -matplotlib-inline = [ - {file = "matplotlib-inline-0.1.6.tar.gz", hash = "sha256:f887e5f10ba98e8d2b150ddcf4702c1e5f8b3a20005eb0f74bfdbd360ee6f304"}, - {file = "matplotlib_inline-0.1.6-py3-none-any.whl", hash = "sha256:f1f41aab5328aa5aaea9b16d083b128102f8712542f819fe7e6a420ff581b311"}, -] -mccabe = [ - {file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"}, - {file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"}, -] -monotonic = [ - {file = "monotonic-1.6-py2.py3-none-any.whl", hash = "sha256:68687e19a14f11f26d140dd5c86f3dba4bf5df58003000ed467e0e2a69bca96c"}, - {file = "monotonic-1.6.tar.gz", hash = "sha256:3a55207bcfed53ddd5c5bae174524062935efed17792e9de2ad0205ce9ad63f7"}, -] -multiavatar = [ - {file = "multiavatar-1.0.3-py3-none-any.whl", hash = "sha256:12e6637d0ec2d42a2a04fe4ccdcbae626851277ee4498d01bc2e1c49a8b9c1f4"}, - {file = "multiavatar-1.0.3.tar.gz", hash = "sha256:c8a63cb8fbd9be7ff06cc4d4eb6e6ea08aa9bd3137a70595bb9af02e88d5934a"}, -] -multidict = [ - {file = "multidict-6.0.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0b1a97283e0c85772d613878028fec909f003993e1007eafa715b24b377cb9b8"}, - {file = "multidict-6.0.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:eeb6dcc05e911516ae3d1f207d4b0520d07f54484c49dfc294d6e7d63b734171"}, - {file = "multidict-6.0.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d6d635d5209b82a3492508cf5b365f3446afb65ae7ebd755e70e18f287b0adf7"}, - {file = "multidict-6.0.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c048099e4c9e9d615545e2001d3d8a4380bd403e1a0578734e0d31703d1b0c0b"}, - {file = "multidict-6.0.4-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ea20853c6dbbb53ed34cb4d080382169b6f4554d394015f1bef35e881bf83547"}, - {file = "multidict-6.0.4-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:16d232d4e5396c2efbbf4f6d4df89bfa905eb0d4dc5b3549d872ab898451f569"}, - {file = "multidict-6.0.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:36c63aaa167f6c6b04ef2c85704e93af16c11d20de1d133e39de6a0e84582a93"}, - {file = "multidict-6.0.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:64bdf1086b6043bf519869678f5f2757f473dee970d7abf6da91ec00acb9cb98"}, - {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:43644e38f42e3af682690876cff722d301ac585c5b9e1eacc013b7a3f7b696a0"}, - {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:7582a1d1030e15422262de9f58711774e02fa80df0d1578995c76214f6954988"}, - {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ddff9c4e225a63a5afab9dd15590432c22e8057e1a9a13d28ed128ecf047bbdc"}, - {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ee2a1ece51b9b9e7752e742cfb661d2a29e7bcdba2d27e66e28a99f1890e4fa0"}, - {file = "multidict-6.0.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a2e4369eb3d47d2034032a26c7a80fcb21a2cb22e1173d761a162f11e562caa5"}, - {file = "multidict-6.0.4-cp310-cp310-win32.whl", hash = "sha256:574b7eae1ab267e5f8285f0fe881f17efe4b98c39a40858247720935b893bba8"}, - {file = "multidict-6.0.4-cp310-cp310-win_amd64.whl", hash = "sha256:4dcbb0906e38440fa3e325df2359ac6cb043df8e58c965bb45f4e406ecb162cc"}, - {file = "multidict-6.0.4-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:0dfad7a5a1e39c53ed00d2dd0c2e36aed4650936dc18fd9a1826a5ae1cad6f03"}, - {file = "multidict-6.0.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:64da238a09d6039e3bd39bb3aee9c21a5e34f28bfa5aa22518581f910ff94af3"}, - {file = "multidict-6.0.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ff959bee35038c4624250473988b24f846cbeb2c6639de3602c073f10410ceba"}, - {file = "multidict-6.0.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:01a3a55bd90018c9c080fbb0b9f4891db37d148a0a18722b42f94694f8b6d4c9"}, - {file = "multidict-6.0.4-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c5cb09abb18c1ea940fb99360ea0396f34d46566f157122c92dfa069d3e0e982"}, - {file = "multidict-6.0.4-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:666daae833559deb2d609afa4490b85830ab0dfca811a98b70a205621a6109fe"}, - {file = "multidict-6.0.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:11bdf3f5e1518b24530b8241529d2050014c884cf18b6fc69c0c2b30ca248710"}, - {file = "multidict-6.0.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7d18748f2d30f94f498e852c67d61261c643b349b9d2a581131725595c45ec6c"}, - {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:458f37be2d9e4c95e2d8866a851663cbc76e865b78395090786f6cd9b3bbf4f4"}, - {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:b1a2eeedcead3a41694130495593a559a668f382eee0727352b9a41e1c45759a"}, - {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:7d6ae9d593ef8641544d6263c7fa6408cc90370c8cb2bbb65f8d43e5b0351d9c"}, - {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:5979b5632c3e3534e42ca6ff856bb24b2e3071b37861c2c727ce220d80eee9ed"}, - {file = "multidict-6.0.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:dcfe792765fab89c365123c81046ad4103fcabbc4f56d1c1997e6715e8015461"}, - {file = "multidict-6.0.4-cp311-cp311-win32.whl", hash = "sha256:3601a3cece3819534b11d4efc1eb76047488fddd0c85a3948099d5da4d504636"}, - {file = "multidict-6.0.4-cp311-cp311-win_amd64.whl", hash = "sha256:81a4f0b34bd92df3da93315c6a59034df95866014ac08535fc819f043bfd51f0"}, - {file = "multidict-6.0.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:67040058f37a2a51ed8ea8f6b0e6ee5bd78ca67f169ce6122f3e2ec80dfe9b78"}, - {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:853888594621e6604c978ce2a0444a1e6e70c8d253ab65ba11657659dcc9100f"}, - {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:39ff62e7d0f26c248b15e364517a72932a611a9b75f35b45be078d81bdb86603"}, - {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:af048912e045a2dc732847d33821a9d84ba553f5c5f028adbd364dd4765092ac"}, - {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b1e8b901e607795ec06c9e42530788c45ac21ef3aaa11dbd0c69de543bfb79a9"}, - {file = "multidict-6.0.4-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:62501642008a8b9871ddfccbf83e4222cf8ac0d5aeedf73da36153ef2ec222d2"}, - {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:99b76c052e9f1bc0721f7541e5e8c05db3941eb9ebe7b8553c625ef88d6eefde"}, - {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:509eac6cf09c794aa27bcacfd4d62c885cce62bef7b2c3e8b2e49d365b5003fe"}, - {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:21a12c4eb6ddc9952c415f24eef97e3e55ba3af61f67c7bc388dcdec1404a067"}, - {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:5cad9430ab3e2e4fa4a2ef4450f548768400a2ac635841bc2a56a2052cdbeb87"}, - {file = "multidict-6.0.4-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:ab55edc2e84460694295f401215f4a58597f8f7c9466faec545093045476327d"}, - {file = "multidict-6.0.4-cp37-cp37m-win32.whl", hash = "sha256:5a4dcf02b908c3b8b17a45fb0f15b695bf117a67b76b7ad18b73cf8e92608775"}, - {file = "multidict-6.0.4-cp37-cp37m-win_amd64.whl", hash = "sha256:6ed5f161328b7df384d71b07317f4d8656434e34591f20552c7bcef27b0ab88e"}, - {file = "multidict-6.0.4-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:5fc1b16f586f049820c5c5b17bb4ee7583092fa0d1c4e28b5239181ff9532e0c"}, - {file = "multidict-6.0.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1502e24330eb681bdaa3eb70d6358e818e8e8f908a22a1851dfd4e15bc2f8161"}, - {file = "multidict-6.0.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b692f419760c0e65d060959df05f2a531945af31fda0c8a3b3195d4efd06de11"}, - {file = "multidict-6.0.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:45e1ecb0379bfaab5eef059f50115b54571acfbe422a14f668fc8c27ba410e7e"}, - {file = "multidict-6.0.4-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ddd3915998d93fbcd2566ddf9cf62cdb35c9e093075f862935573d265cf8f65d"}, - {file = "multidict-6.0.4-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:59d43b61c59d82f2effb39a93c48b845efe23a3852d201ed2d24ba830d0b4cf2"}, - {file = "multidict-6.0.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cc8e1d0c705233c5dd0c5e6460fbad7827d5d36f310a0fadfd45cc3029762258"}, - {file = "multidict-6.0.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d6aa0418fcc838522256761b3415822626f866758ee0bc6632c9486b179d0b52"}, - {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6748717bb10339c4760c1e63da040f5f29f5ed6e59d76daee30305894069a660"}, - {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:4d1a3d7ef5e96b1c9e92f973e43aa5e5b96c659c9bc3124acbbd81b0b9c8a951"}, - {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:4372381634485bec7e46718edc71528024fcdc6f835baefe517b34a33c731d60"}, - {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:fc35cb4676846ef752816d5be2193a1e8367b4c1397b74a565a9d0389c433a1d"}, - {file = "multidict-6.0.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:4b9d9e4e2b37daddb5c23ea33a3417901fa7c7b3dee2d855f63ee67a0b21e5b1"}, - {file = "multidict-6.0.4-cp38-cp38-win32.whl", hash = "sha256:e41b7e2b59679edfa309e8db64fdf22399eec4b0b24694e1b2104fb789207779"}, - {file = "multidict-6.0.4-cp38-cp38-win_amd64.whl", hash = "sha256:d6c254ba6e45d8e72739281ebc46ea5eb5f101234f3ce171f0e9f5cc86991480"}, - {file = "multidict-6.0.4-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:16ab77bbeb596e14212e7bab8429f24c1579234a3a462105cda4a66904998664"}, - {file = "multidict-6.0.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:bc779e9e6f7fda81b3f9aa58e3a6091d49ad528b11ed19f6621408806204ad35"}, - {file = "multidict-6.0.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:4ceef517eca3e03c1cceb22030a3e39cb399ac86bff4e426d4fc6ae49052cc60"}, - {file = "multidict-6.0.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:281af09f488903fde97923c7744bb001a9b23b039a909460d0f14edc7bf59706"}, - {file = "multidict-6.0.4-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:52f2dffc8acaba9a2f27174c41c9e57f60b907bb9f096b36b1a1f3be71c6284d"}, - {file = "multidict-6.0.4-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b41156839806aecb3641f3208c0dafd3ac7775b9c4c422d82ee2a45c34ba81ca"}, - {file = "multidict-6.0.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d5e3fc56f88cc98ef8139255cf8cd63eb2c586531e43310ff859d6bb3a6b51f1"}, - {file = "multidict-6.0.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8316a77808c501004802f9beebde51c9f857054a0c871bd6da8280e718444449"}, - {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f70b98cd94886b49d91170ef23ec5c0e8ebb6f242d734ed7ed677b24d50c82cf"}, - {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:bf6774e60d67a9efe02b3616fee22441d86fab4c6d335f9d2051d19d90a40063"}, - {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:e69924bfcdda39b722ef4d9aa762b2dd38e4632b3641b1d9a57ca9cd18f2f83a"}, - {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:6b181d8c23da913d4ff585afd1155a0e1194c0b50c54fcfe286f70cdaf2b7176"}, - {file = "multidict-6.0.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:52509b5be062d9eafc8170e53026fbc54cf3b32759a23d07fd935fb04fc22d95"}, - {file = "multidict-6.0.4-cp39-cp39-win32.whl", hash = "sha256:27c523fbfbdfd19c6867af7346332b62b586eed663887392cff78d614f9ec313"}, - {file = "multidict-6.0.4-cp39-cp39-win_amd64.whl", hash = "sha256:33029f5734336aa0d4c0384525da0387ef89148dc7191aae00ca5fb23d7aafc2"}, - {file = "multidict-6.0.4.tar.gz", hash = "sha256:3666906492efb76453c0e7b97f2cf459b0682e7402c0489a95484965dbc1da49"}, -] -orderedmultidict = [ - {file = "orderedmultidict-1.0.1-py2.py3-none-any.whl", hash = "sha256:43c839a17ee3cdd62234c47deca1a8508a3f2ca1d0678a3bf791c87cf84adbf3"}, - {file = "orderedmultidict-1.0.1.tar.gz", hash = "sha256:04070bbb5e87291cc9bfa51df413677faf2141c73c61d2a5f7b26bea3cd882ad"}, -] -packaging = [ - {file = "packaging-22.0-py3-none-any.whl", hash = "sha256:957e2148ba0e1a3b282772e791ef1d8083648bc131c8ab0c1feba110ce1146c3"}, - {file = "packaging-22.0.tar.gz", hash = "sha256:2198ec20bd4c017b8f9717e00f0c8714076fc2fd93816750ab48e2c41de2cfd3"}, -] -parso = [ - {file = "parso-0.8.3-py2.py3-none-any.whl", hash = "sha256:c001d4636cd3aecdaf33cbb40aebb59b094be2a74c556778ef5576c175e19e75"}, - {file = "parso-0.8.3.tar.gz", hash = "sha256:8c07be290bb59f03588915921e29e8a50002acaf2cdc5fa0e0114f91709fafa0"}, -] -pexpect = [ - {file = "pexpect-4.8.0-py2.py3-none-any.whl", hash = "sha256:0b48a55dcb3c05f3329815901ea4fc1537514d6ba867a152b581d69ae3710937"}, - {file = "pexpect-4.8.0.tar.gz", hash = "sha256:fc65a43959d153d0114afe13997d439c22823a27cefceb5ff35c2178c6784c0c"}, -] -pickleshare = [ - {file = "pickleshare-0.7.5-py2.py3-none-any.whl", hash = "sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56"}, - {file = "pickleshare-0.7.5.tar.gz", hash = "sha256:87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca"}, -] -pillow = [ - {file = "Pillow-9.4.0-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:2968c58feca624bb6c8502f9564dd187d0e1389964898f5e9e1fbc8533169157"}, - {file = "Pillow-9.4.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c5c1362c14aee73f50143d74389b2c158707b4abce2cb055b7ad37ce60738d47"}, - {file = "Pillow-9.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bd752c5ff1b4a870b7661234694f24b1d2b9076b8bf337321a814c612665f343"}, - {file = "Pillow-9.4.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9a3049a10261d7f2b6514d35bbb7a4dfc3ece4c4de14ef5876c4b7a23a0e566d"}, - {file = "Pillow-9.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:16a8df99701f9095bea8a6c4b3197da105df6f74e6176c5b410bc2df2fd29a57"}, - {file = "Pillow-9.4.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:94cdff45173b1919350601f82d61365e792895e3c3a3443cf99819e6fbf717a5"}, - {file = "Pillow-9.4.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:ed3e4b4e1e6de75fdc16d3259098de7c6571b1a6cc863b1a49e7d3d53e036070"}, - {file = "Pillow-9.4.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d5b2f8a31bd43e0f18172d8ac82347c8f37ef3e0b414431157718aa234991b28"}, - {file = "Pillow-9.4.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:09b89ddc95c248ee788328528e6a2996e09eaccddeeb82a5356e92645733be35"}, - {file = "Pillow-9.4.0-cp310-cp310-win32.whl", hash = "sha256:f09598b416ba39a8f489c124447b007fe865f786a89dbfa48bb5cf395693132a"}, - {file = "Pillow-9.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:f6e78171be3fb7941f9910ea15b4b14ec27725865a73c15277bc39f5ca4f8391"}, - {file = "Pillow-9.4.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:3fa1284762aacca6dc97474ee9c16f83990b8eeb6697f2ba17140d54b453e133"}, - {file = "Pillow-9.4.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:eaef5d2de3c7e9b21f1e762f289d17b726c2239a42b11e25446abf82b26ac132"}, - {file = "Pillow-9.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a4dfdae195335abb4e89cc9762b2edc524f3c6e80d647a9a81bf81e17e3fb6f0"}, - {file = "Pillow-9.4.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6abfb51a82e919e3933eb137e17c4ae9c0475a25508ea88993bb59faf82f3b35"}, - {file = "Pillow-9.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:451f10ef963918e65b8869e17d67db5e2f4ab40e716ee6ce7129b0cde2876eab"}, - {file = "Pillow-9.4.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:6663977496d616b618b6cfa43ec86e479ee62b942e1da76a2c3daa1c75933ef4"}, - {file = "Pillow-9.4.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:60e7da3a3ad1812c128750fc1bc14a7ceeb8d29f77e0a2356a8fb2aa8925287d"}, - {file = "Pillow-9.4.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:19005a8e58b7c1796bc0167862b1f54a64d3b44ee5d48152b06bb861458bc0f8"}, - {file = "Pillow-9.4.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:f715c32e774a60a337b2bb8ad9839b4abf75b267a0f18806f6f4f5f1688c4b5a"}, - {file = "Pillow-9.4.0-cp311-cp311-win32.whl", hash = "sha256:b222090c455d6d1a64e6b7bb5f4035c4dff479e22455c9eaa1bdd4c75b52c80c"}, - {file = "Pillow-9.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:ba6612b6548220ff5e9df85261bddc811a057b0b465a1226b39bfb8550616aee"}, - {file = "Pillow-9.4.0-cp37-cp37m-macosx_10_10_x86_64.whl", hash = "sha256:5f532a2ad4d174eb73494e7397988e22bf427f91acc8e6ebf5bb10597b49c493"}, - {file = "Pillow-9.4.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5dd5a9c3091a0f414a963d427f920368e2b6a4c2f7527fdd82cde8ef0bc7a327"}, - {file = "Pillow-9.4.0-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ef21af928e807f10bf4141cad4746eee692a0dd3ff56cfb25fce076ec3cc8abe"}, - {file = "Pillow-9.4.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:847b114580c5cc9ebaf216dd8c8dbc6b00a3b7ab0131e173d7120e6deade1f57"}, - {file = "Pillow-9.4.0-cp37-cp37m-manylinux_2_28_aarch64.whl", hash = "sha256:653d7fb2df65efefbcbf81ef5fe5e5be931f1ee4332c2893ca638c9b11a409c4"}, - {file = "Pillow-9.4.0-cp37-cp37m-manylinux_2_28_x86_64.whl", hash = "sha256:46f39cab8bbf4a384ba7cb0bc8bae7b7062b6a11cfac1ca4bc144dea90d4a9f5"}, - {file = "Pillow-9.4.0-cp37-cp37m-win32.whl", hash = "sha256:7ac7594397698f77bce84382929747130765f66406dc2cd8b4ab4da68ade4c6e"}, - {file = "Pillow-9.4.0-cp37-cp37m-win_amd64.whl", hash = "sha256:46c259e87199041583658457372a183636ae8cd56dbf3f0755e0f376a7f9d0e6"}, - {file = "Pillow-9.4.0-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:0e51f608da093e5d9038c592b5b575cadc12fd748af1479b5e858045fff955a9"}, - {file = "Pillow-9.4.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:765cb54c0b8724a7c12c55146ae4647e0274a839fb6de7bcba841e04298e1011"}, - {file = "Pillow-9.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:519e14e2c49fcf7616d6d2cfc5c70adae95682ae20f0395e9280db85e8d6c4df"}, - {file = "Pillow-9.4.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d197df5489004db87d90b918033edbeee0bd6df3848a204bca3ff0a903bef837"}, - {file = "Pillow-9.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0845adc64fe9886db00f5ab68c4a8cd933ab749a87747555cec1c95acea64b0b"}, - {file = "Pillow-9.4.0-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:e1339790c083c5a4de48f688b4841f18df839eb3c9584a770cbd818b33e26d5d"}, - {file = "Pillow-9.4.0-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:a96e6e23f2b79433390273eaf8cc94fec9c6370842e577ab10dabdcc7ea0a66b"}, - {file = "Pillow-9.4.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:7cfc287da09f9d2a7ec146ee4d72d6ea1342e770d975e49a8621bf54eaa8f30f"}, - {file = "Pillow-9.4.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:d7081c084ceb58278dd3cf81f836bc818978c0ccc770cbbb202125ddabec6628"}, - {file = "Pillow-9.4.0-cp38-cp38-win32.whl", hash = "sha256:df41112ccce5d47770a0c13651479fbcd8793f34232a2dd9faeccb75eb5d0d0d"}, - {file = "Pillow-9.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:7a21222644ab69ddd9967cfe6f2bb420b460dae4289c9d40ff9a4896e7c35c9a"}, - {file = "Pillow-9.4.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:0f3269304c1a7ce82f1759c12ce731ef9b6e95b6df829dccd9fe42912cc48569"}, - {file = "Pillow-9.4.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cb362e3b0976dc994857391b776ddaa8c13c28a16f80ac6522c23d5257156bed"}, - {file = "Pillow-9.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a2e0f87144fcbbe54297cae708c5e7f9da21a4646523456b00cc956bd4c65815"}, - {file = "Pillow-9.4.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:28676836c7796805914b76b1837a40f76827ee0d5398f72f7dcc634bae7c6264"}, - {file = "Pillow-9.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0884ba7b515163a1a05440a138adeb722b8a6ae2c2b33aea93ea3118dd3a899e"}, - {file = "Pillow-9.4.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:53dcb50fbdc3fb2c55431a9b30caeb2f7027fcd2aeb501459464f0214200a503"}, - {file = "Pillow-9.4.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:e8c5cf126889a4de385c02a2c3d3aba4b00f70234bfddae82a5eaa3ee6d5e3e6"}, - {file = "Pillow-9.4.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:6c6b1389ed66cdd174d040105123a5a1bc91d0aa7059c7261d20e583b6d8cbd2"}, - {file = "Pillow-9.4.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:0dd4c681b82214b36273c18ca7ee87065a50e013112eea7d78c7a1b89a739153"}, - {file = "Pillow-9.4.0-cp39-cp39-win32.whl", hash = "sha256:6d9dfb9959a3b0039ee06c1a1a90dc23bac3b430842dcb97908ddde05870601c"}, - {file = "Pillow-9.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:54614444887e0d3043557d9dbc697dbb16cfb5a35d672b7a0fcc1ed0cf1c600b"}, - {file = "Pillow-9.4.0-pp38-pypy38_pp73-macosx_10_10_x86_64.whl", hash = "sha256:b9b752ab91e78234941e44abdecc07f1f0d8f51fb62941d32995b8161f68cfe5"}, - {file = "Pillow-9.4.0-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d3b56206244dc8711f7e8b7d6cad4663917cd5b2d950799425076681e8766286"}, - {file = "Pillow-9.4.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:aabdab8ec1e7ca7f1434d042bf8b1e92056245fb179790dc97ed040361f16bfd"}, - {file = "Pillow-9.4.0-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:db74f5562c09953b2c5f8ec4b7dfd3f5421f31811e97d1dbc0a7c93d6e3a24df"}, - {file = "Pillow-9.4.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:e9d7747847c53a16a729b6ee5e737cf170f7a16611c143d95aa60a109a59c336"}, - {file = "Pillow-9.4.0-pp39-pypy39_pp73-macosx_10_10_x86_64.whl", hash = "sha256:b52ff4f4e002f828ea6483faf4c4e8deea8d743cf801b74910243c58acc6eda3"}, - {file = "Pillow-9.4.0-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:575d8912dca808edd9acd6f7795199332696d3469665ef26163cd090fa1f8bfa"}, - {file = "Pillow-9.4.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c3c4ed2ff6760e98d262e0cc9c9a7f7b8a9f61aa4d47c58835cdaf7b0b8811bb"}, - {file = "Pillow-9.4.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:e621b0246192d3b9cb1dc62c78cfa4c6f6d2ddc0ec207d43c0dedecb914f152a"}, - {file = "Pillow-9.4.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:8f127e7b028900421cad64f51f75c051b628db17fb00e099eb148761eed598c9"}, - {file = "Pillow-9.4.0.tar.gz", hash = "sha256:a1c2d7780448eb93fbcc3789bf3916aa5720d942e37945f4056680317f1cd23e"}, -] -playwright = [ - {file = "playwright-1.29.0-py3-none-macosx_10_13_x86_64.whl", hash = "sha256:c7a4fc12f15fb24fdb810503a6e08db81d38805f739b252645c3eede357e9918"}, - {file = "playwright-1.29.0-py3-none-macosx_11_0_arm64.whl", hash = "sha256:b8c2317789ae2cbca1e345f421dfa6082dac0910a4d0f57f345a395cb9e57197"}, - {file = "playwright-1.29.0-py3-none-macosx_11_0_universal2.whl", hash = "sha256:84ae9f999d57463d6450fd4fb3e9e70695fb2b87c4ca76f4459f054ab6fa6583"}, - {file = "playwright-1.29.0-py3-none-manylinux1_x86_64.whl", hash = "sha256:f9849cb83041a8bff69c7899ab1aef8066e3eb422b437c9c7a3772c22f432323"}, - {file = "playwright-1.29.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2ef51608b56fe7699b7e1e3b7e8484d3677e2bc9054afc78d28489e060300e2b"}, - {file = "playwright-1.29.0-py3-none-win32.whl", hash = "sha256:9203d2977ec9e6716ff5611eb786e838c15742cca1dea4cc1d85de3e699ad25a"}, - {file = "playwright-1.29.0-py3-none-win_amd64.whl", hash = "sha256:8a283d52d1d10a636ba7ce4f90d0d6fd611ee45c8c8f3eaae03b27596439c7fd"}, -] -pluggy = [ - {file = "pluggy-1.0.0-py2.py3-none-any.whl", hash = "sha256:74134bbf457f031a36d68416e1509f34bd5ccc019f0bcc952c7b909d06b37bd3"}, - {file = "pluggy-1.0.0.tar.gz", hash = "sha256:4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159"}, -] -posthog = [ - {file = "posthog-2.2.0-py2.py3-none-any.whl", hash = "sha256:cf3561a23d6770991f0b890fbe09e20c488e54efe65f9202ffd4e37dd6a90f8a"}, - {file = "posthog-2.2.0.tar.gz", hash = "sha256:1f450a20f7bed217874ded234f6ffc24ae73da37a16aa5bf76335249b34a9f60"}, -] -pprintpp = [ - {file = "pprintpp-0.4.0-py2.py3-none-any.whl", hash = "sha256:b6b4dcdd0c0c0d75e4d7b2f21a9e933e5b2ce62b26e1a54537f9651ae5a5c01d"}, - {file = "pprintpp-0.4.0.tar.gz", hash = "sha256:ea826108e2c7f49dc6d66c752973c3fc9749142a798d6b254e1e301cfdbc6403"}, -] -priority = [ - {file = "priority-2.0.0-py3-none-any.whl", hash = "sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa"}, - {file = "priority-2.0.0.tar.gz", hash = "sha256:c965d54f1b8d0d0b19479db3924c7c36cf672dbf2aec92d43fbdaf4492ba18c0"}, -] -prompt-toolkit = [ - {file = "prompt_toolkit-3.0.36-py3-none-any.whl", hash = "sha256:aa64ad242a462c5ff0363a7b9cfe696c20d55d9fc60c11fd8e632d064804d305"}, - {file = "prompt_toolkit-3.0.36.tar.gz", hash = "sha256:3e163f254bef5a03b146397d7c1963bd3e2812f0964bb9a24e6ec761fd28db63"}, -] -proto-plus = [ - {file = "proto-plus-1.22.1.tar.gz", hash = "sha256:6c7dfd122dfef8019ff654746be4f5b1d9c80bba787fe9611b508dd88be3a2fa"}, - {file = "proto_plus-1.22.1-py3-none-any.whl", hash = "sha256:ea8982669a23c379f74495bc48e3dcb47c822c484ce8ee1d1d7beb339d4e34c5"}, -] -protobuf = [ - {file = "protobuf-4.21.12-cp310-abi3-win32.whl", hash = "sha256:b135410244ebe777db80298297a97fbb4c862c881b4403b71bac9d4107d61fd1"}, - {file = "protobuf-4.21.12-cp310-abi3-win_amd64.whl", hash = "sha256:89f9149e4a0169cddfc44c74f230d7743002e3aa0b9472d8c28f0388102fc4c2"}, - {file = "protobuf-4.21.12-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:299ea899484ee6f44604deb71f424234f654606b983cb496ea2a53e3c63ab791"}, - {file = "protobuf-4.21.12-cp37-abi3-manylinux2014_aarch64.whl", hash = "sha256:d1736130bce8cf131ac7957fa26880ca19227d4ad68b4888b3be0dea1f95df97"}, - {file = "protobuf-4.21.12-cp37-abi3-manylinux2014_x86_64.whl", hash = "sha256:78a28c9fa223998472886c77042e9b9afb6fe4242bd2a2a5aced88e3f4422aa7"}, - {file = "protobuf-4.21.12-cp37-cp37m-win32.whl", hash = "sha256:3d164928ff0727d97022957c2b849250ca0e64777ee31efd7d6de2e07c494717"}, - {file = "protobuf-4.21.12-cp37-cp37m-win_amd64.whl", hash = "sha256:f45460f9ee70a0ec1b6694c6e4e348ad2019275680bd68a1d9314b8c7e01e574"}, - {file = "protobuf-4.21.12-cp38-cp38-win32.whl", hash = "sha256:6ab80df09e3208f742c98443b6166bcb70d65f52cfeb67357d52032ea1ae9bec"}, - {file = "protobuf-4.21.12-cp38-cp38-win_amd64.whl", hash = "sha256:1f22ac0ca65bb70a876060d96d914dae09ac98d114294f77584b0d2644fa9c30"}, - {file = "protobuf-4.21.12-cp39-cp39-win32.whl", hash = "sha256:27f4d15021da6d2b706ddc3860fac0a5ddaba34ab679dc182b60a8bb4e1121cc"}, - {file = "protobuf-4.21.12-cp39-cp39-win_amd64.whl", hash = "sha256:237216c3326d46808a9f7c26fd1bd4b20015fb6867dc5d263a493ef9a539293b"}, - {file = "protobuf-4.21.12-py2.py3-none-any.whl", hash = "sha256:a53fd3f03e578553623272dc46ac2f189de23862e68565e83dde203d41b76fc5"}, - {file = "protobuf-4.21.12-py3-none-any.whl", hash = "sha256:b98d0148f84e3a3c569e19f52103ca1feacdac0d2df8d6533cf983d1fda28462"}, - {file = "protobuf-4.21.12.tar.gz", hash = "sha256:7cd532c4566d0e6feafecc1059d04c7915aec8e182d1cf7adee8b24ef1e2e6ab"}, -] -psutil = [ - {file = "psutil-5.9.4-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:c1ca331af862803a42677c120aff8a814a804e09832f166f226bfd22b56feee8"}, - {file = "psutil-5.9.4-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:68908971daf802203f3d37e78d3f8831b6d1014864d7a85937941bb35f09aefe"}, - {file = "psutil-5.9.4-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:3ff89f9b835100a825b14c2808a106b6fdcc4b15483141482a12c725e7f78549"}, - {file = "psutil-5.9.4-cp27-cp27m-win32.whl", hash = "sha256:852dd5d9f8a47169fe62fd4a971aa07859476c2ba22c2254d4a1baa4e10b95ad"}, - {file = "psutil-5.9.4-cp27-cp27m-win_amd64.whl", hash = "sha256:9120cd39dca5c5e1c54b59a41d205023d436799b1c8c4d3ff71af18535728e94"}, - {file = "psutil-5.9.4-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:6b92c532979bafc2df23ddc785ed116fced1f492ad90a6830cf24f4d1ea27d24"}, - {file = "psutil-5.9.4-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:efeae04f9516907be44904cc7ce08defb6b665128992a56957abc9b61dca94b7"}, - {file = "psutil-5.9.4-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:54d5b184728298f2ca8567bf83c422b706200bcbbfafdc06718264f9393cfeb7"}, - {file = "psutil-5.9.4-cp36-abi3-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:16653106f3b59386ffe10e0bad3bb6299e169d5327d3f187614b1cb8f24cf2e1"}, - {file = "psutil-5.9.4-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:54c0d3d8e0078b7666984e11b12b88af2db11d11249a8ac8920dd5ef68a66e08"}, - {file = "psutil-5.9.4-cp36-abi3-win32.whl", hash = "sha256:149555f59a69b33f056ba1c4eb22bb7bf24332ce631c44a319cec09f876aaeff"}, - {file = "psutil-5.9.4-cp36-abi3-win_amd64.whl", hash = "sha256:fd8522436a6ada7b4aad6638662966de0d61d241cb821239b2ae7013d41a43d4"}, - {file = "psutil-5.9.4-cp38-abi3-macosx_11_0_arm64.whl", hash = "sha256:6001c809253a29599bc0dfd5179d9f8a5779f9dffea1da0f13c53ee568115e1e"}, - {file = "psutil-5.9.4.tar.gz", hash = "sha256:3d7f9739eb435d4b1338944abe23f49584bde5395f27487d2ee25ad9a8774a62"}, -] -ptyprocess = [ - {file = "ptyprocess-0.7.0-py2.py3-none-any.whl", hash = "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35"}, - {file = "ptyprocess-0.7.0.tar.gz", hash = "sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220"}, -] -pure-eval = [ - {file = "pure_eval-0.2.2-py3-none-any.whl", hash = "sha256:01eaab343580944bc56080ebe0a674b39ec44a945e6d09ba7db3cb8cec289350"}, - {file = "pure_eval-0.2.2.tar.gz", hash = "sha256:2b45320af6dfaa1750f543d714b6d1c520a1688dec6fd24d339063ce0aaa9ac3"}, -] -py = [ - {file = "py-1.11.0-py2.py3-none-any.whl", hash = "sha256:607c53218732647dff4acdfcd50cb62615cedf612e72d1724fb1a0cc6405b378"}, - {file = "py-1.11.0.tar.gz", hash = "sha256:51c75c4126074b472f746a24399ad32f6053d1b34b68d2fa41e558e6f4a98719"}, -] -pyasn1 = [ - {file = "pyasn1-0.4.8-py2.4.egg", hash = "sha256:fec3e9d8e36808a28efb59b489e4528c10ad0f480e57dcc32b4de5c9d8c9fdf3"}, - {file = "pyasn1-0.4.8-py2.5.egg", hash = "sha256:0458773cfe65b153891ac249bcf1b5f8f320b7c2ce462151f8fa74de8934becf"}, - {file = "pyasn1-0.4.8-py2.6.egg", hash = "sha256:5c9414dcfede6e441f7e8f81b43b34e834731003427e5b09e4e00e3172a10f00"}, - {file = "pyasn1-0.4.8-py2.7.egg", hash = "sha256:6e7545f1a61025a4e58bb336952c5061697da694db1cae97b116e9c46abcf7c8"}, - {file = "pyasn1-0.4.8-py2.py3-none-any.whl", hash = "sha256:39c7e2ec30515947ff4e87fb6f456dfc6e84857d34be479c9d4a4ba4bf46aa5d"}, - {file = "pyasn1-0.4.8-py3.1.egg", hash = "sha256:78fa6da68ed2727915c4767bb386ab32cdba863caa7dbe473eaae45f9959da86"}, - {file = "pyasn1-0.4.8-py3.2.egg", hash = "sha256:08c3c53b75eaa48d71cf8c710312316392ed40899cb34710d092e96745a358b7"}, - {file = "pyasn1-0.4.8-py3.3.egg", hash = "sha256:03840c999ba71680a131cfaee6fab142e1ed9bbd9c693e285cc6aca0d555e576"}, - {file = "pyasn1-0.4.8-py3.4.egg", hash = "sha256:7ab8a544af125fb704feadb008c99a88805126fb525280b2270bb25cc1d78a12"}, - {file = "pyasn1-0.4.8-py3.5.egg", hash = "sha256:e89bf84b5437b532b0803ba5c9a5e054d21fec423a89952a74f87fa2c9b7bce2"}, - {file = "pyasn1-0.4.8-py3.6.egg", hash = "sha256:014c0e9976956a08139dc0712ae195324a75e142284d5f87f1a87ee1b068a359"}, - {file = "pyasn1-0.4.8-py3.7.egg", hash = "sha256:99fcc3c8d804d1bc6d9a099921e39d827026409a58f2a720dcdb89374ea0c776"}, - {file = "pyasn1-0.4.8.tar.gz", hash = "sha256:aef77c9fb94a3ac588e87841208bdec464471d9871bd5050a287cc9a475cd0ba"}, -] -pyasn1-modules = [ - {file = "pyasn1-modules-0.2.8.tar.gz", hash = "sha256:905f84c712230b2c592c19470d3ca8d552de726050d1d1716282a1f6146be65e"}, - {file = "pyasn1_modules-0.2.8-py2.4.egg", hash = "sha256:0fe1b68d1e486a1ed5473f1302bd991c1611d319bba158e98b106ff86e1d7199"}, - {file = "pyasn1_modules-0.2.8-py2.5.egg", hash = "sha256:fe0644d9ab041506b62782e92b06b8c68cca799e1a9636ec398675459e031405"}, - {file = "pyasn1_modules-0.2.8-py2.6.egg", hash = "sha256:a99324196732f53093a84c4369c996713eb8c89d360a496b599fb1a9c47fc3eb"}, - {file = "pyasn1_modules-0.2.8-py2.7.egg", hash = "sha256:0845a5582f6a02bb3e1bde9ecfc4bfcae6ec3210dd270522fee602365430c3f8"}, - {file = "pyasn1_modules-0.2.8-py2.py3-none-any.whl", hash = "sha256:a50b808ffeb97cb3601dd25981f6b016cbb3d31fbf57a8b8a87428e6158d0c74"}, - {file = "pyasn1_modules-0.2.8-py3.1.egg", hash = "sha256:f39edd8c4ecaa4556e989147ebf219227e2cd2e8a43c7e7fcb1f1c18c5fd6a3d"}, - {file = "pyasn1_modules-0.2.8-py3.2.egg", hash = "sha256:b80486a6c77252ea3a3e9b1e360bc9cf28eaac41263d173c032581ad2f20fe45"}, - {file = "pyasn1_modules-0.2.8-py3.3.egg", hash = "sha256:65cebbaffc913f4fe9e4808735c95ea22d7a7775646ab690518c056784bc21b4"}, - {file = "pyasn1_modules-0.2.8-py3.4.egg", hash = "sha256:15b7c67fabc7fc240d87fb9aabf999cf82311a6d6fb2c70d00d3d0604878c811"}, - {file = "pyasn1_modules-0.2.8-py3.5.egg", hash = "sha256:426edb7a5e8879f1ec54a1864f16b882c2837bfd06eee62f2c982315ee2473ed"}, - {file = "pyasn1_modules-0.2.8-py3.6.egg", hash = "sha256:cbac4bc38d117f2a49aeedec4407d23e8866ea4ac27ff2cf7fb3e5b570df19e0"}, - {file = "pyasn1_modules-0.2.8-py3.7.egg", hash = "sha256:c29a5e5cc7a3f05926aff34e097e84f8589cd790ce0ed41b67aed6857b26aafd"}, -] -pycodestyle = [ - {file = "pycodestyle-2.8.0-py2.py3-none-any.whl", hash = "sha256:720f8b39dde8b293825e7ff02c475f3077124006db4f440dcbc9a20b76548a20"}, - {file = "pycodestyle-2.8.0.tar.gz", hash = "sha256:eddd5847ef438ea1c7870ca7eb78a9d47ce0cdb4851a5523949f2601d0cbbe7f"}, -] -pycparser = [ - {file = "pycparser-2.21-py2.py3-none-any.whl", hash = "sha256:8ee45429555515e1f6b185e78100aea234072576aa43ab53aefcae078162fca9"}, - {file = "pycparser-2.21.tar.gz", hash = "sha256:e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206"}, -] -pydantic = [ - {file = "pydantic-1.10.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b5635de53e6686fe7a44b5cf25fcc419a0d5e5c1a1efe73d49d48fe7586db854"}, - {file = "pydantic-1.10.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6dc1cc241440ed7ca9ab59d9929075445da6b7c94ced281b3dd4cfe6c8cff817"}, - {file = "pydantic-1.10.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:51bdeb10d2db0f288e71d49c9cefa609bca271720ecd0c58009bd7504a0c464c"}, - {file = "pydantic-1.10.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:78cec42b95dbb500a1f7120bdf95c401f6abb616bbe8785ef09887306792e66e"}, - {file = "pydantic-1.10.4-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:8775d4ef5e7299a2f4699501077a0defdaac5b6c4321173bcb0f3c496fbadf85"}, - {file = "pydantic-1.10.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:572066051eeac73d23f95ba9a71349c42a3e05999d0ee1572b7860235b850cc6"}, - {file = "pydantic-1.10.4-cp310-cp310-win_amd64.whl", hash = "sha256:7feb6a2d401f4d6863050f58325b8d99c1e56f4512d98b11ac64ad1751dc647d"}, - {file = "pydantic-1.10.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:39f4a73e5342b25c2959529f07f026ef58147249f9b7431e1ba8414a36761f53"}, - {file = "pydantic-1.10.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:983e720704431a6573d626b00662eb78a07148c9115129f9b4351091ec95ecc3"}, - {file = "pydantic-1.10.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:75d52162fe6b2b55964fbb0af2ee58e99791a3138588c482572bb6087953113a"}, - {file = "pydantic-1.10.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fdf8d759ef326962b4678d89e275ffc55b7ce59d917d9f72233762061fd04a2d"}, - {file = "pydantic-1.10.4-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:05a81b006be15655b2a1bae5faa4280cf7c81d0e09fcb49b342ebf826abe5a72"}, - {file = "pydantic-1.10.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d88c4c0e5c5dfd05092a4b271282ef0588e5f4aaf345778056fc5259ba098857"}, - {file = "pydantic-1.10.4-cp311-cp311-win_amd64.whl", hash = "sha256:6a05a9db1ef5be0fe63e988f9617ca2551013f55000289c671f71ec16f4985e3"}, - {file = "pydantic-1.10.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:887ca463c3bc47103c123bc06919c86720e80e1214aab79e9b779cda0ff92a00"}, - {file = "pydantic-1.10.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fdf88ab63c3ee282c76d652fc86518aacb737ff35796023fae56a65ced1a5978"}, - {file = "pydantic-1.10.4-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a48f1953c4a1d9bd0b5167ac50da9a79f6072c63c4cef4cf2a3736994903583e"}, - {file = "pydantic-1.10.4-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:a9f2de23bec87ff306aef658384b02aa7c32389766af3c5dee9ce33e80222dfa"}, - {file = "pydantic-1.10.4-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:cd8702c5142afda03dc2b1ee6bc358b62b3735b2cce53fc77b31ca9f728e4bc8"}, - {file = "pydantic-1.10.4-cp37-cp37m-win_amd64.whl", hash = "sha256:6e7124d6855b2780611d9f5e1e145e86667eaa3bd9459192c8dc1a097f5e9903"}, - {file = "pydantic-1.10.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0b53e1d41e97063d51a02821b80538053ee4608b9a181c1005441f1673c55423"}, - {file = "pydantic-1.10.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:55b1625899acd33229c4352ce0ae54038529b412bd51c4915349b49ca575258f"}, - {file = "pydantic-1.10.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:301d626a59edbe5dfb48fcae245896379a450d04baeed50ef40d8199f2733b06"}, - {file = "pydantic-1.10.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b6f9d649892a6f54a39ed56b8dfd5e08b5f3be5f893da430bed76975f3735d15"}, - {file = "pydantic-1.10.4-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d7b5a3821225f5c43496c324b0d6875fde910a1c2933d726a743ce328fbb2a8c"}, - {file = "pydantic-1.10.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:f2f7eb6273dd12472d7f218e1fef6f7c7c2f00ac2e1ecde4db8824c457300416"}, - {file = "pydantic-1.10.4-cp38-cp38-win_amd64.whl", hash = "sha256:4b05697738e7d2040696b0a66d9f0a10bec0efa1883ca75ee9e55baf511909d6"}, - {file = "pydantic-1.10.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a9a6747cac06c2beb466064dda999a13176b23535e4c496c9d48e6406f92d42d"}, - {file = "pydantic-1.10.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:eb992a1ef739cc7b543576337bebfc62c0e6567434e522e97291b251a41dad7f"}, - {file = "pydantic-1.10.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:990406d226dea0e8f25f643b370224771878142155b879784ce89f633541a024"}, - {file = "pydantic-1.10.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2e82a6d37a95e0b1b42b82ab340ada3963aea1317fd7f888bb6b9dfbf4fff57c"}, - {file = "pydantic-1.10.4-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9193d4f4ee8feca58bc56c8306bcb820f5c7905fd919e0750acdeeeef0615b28"}, - {file = "pydantic-1.10.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:2b3ce5f16deb45c472dde1a0ee05619298c864a20cded09c4edd820e1454129f"}, - {file = "pydantic-1.10.4-cp39-cp39-win_amd64.whl", hash = "sha256:9cbdc268a62d9a98c56e2452d6c41c0263d64a2009aac69246486f01b4f594c4"}, - {file = "pydantic-1.10.4-py3-none-any.whl", hash = "sha256:4948f264678c703f3877d1c8877c4e3b2e12e549c57795107f08cf70c6ec7774"}, - {file = "pydantic-1.10.4.tar.gz", hash = "sha256:b9a3859f24eb4e097502a3be1fb4b2abb79b6103dd9e2e0edb70613a4459a648"}, -] -pyee = [ - {file = "pyee-9.0.4-py2.py3-none-any.whl", hash = "sha256:9f066570130c554e9cc12de5a9d86f57c7ee47fece163bbdaa3e9c933cfbdfa5"}, - {file = "pyee-9.0.4.tar.gz", hash = "sha256:2770c4928abc721f46b705e6a72b0c59480c4a69c9a83ca0b00bb994f1ea4b32"}, -] -pyflakes = [ - {file = "pyflakes-2.4.0-py2.py3-none-any.whl", hash = "sha256:3bb3a3f256f4b7968c9c788781e4ff07dce46bdf12339dcda61053375426ee2e"}, - {file = "pyflakes-2.4.0.tar.gz", hash = "sha256:05a85c2872edf37a4ed30b0cce2f6093e1d0581f8c19d7393122da7e25b2b24c"}, -] -pygments = [ - {file = "Pygments-2.14.0-py3-none-any.whl", hash = "sha256:fa7bd7bd2771287c0de303af8bfdfc731f51bd2c6a47ab69d117138893b82717"}, - {file = "Pygments-2.14.0.tar.gz", hash = "sha256:b3ed06a9e8ac9a9aae5a6f5dbe78a8a58655d17b43b93c078f094ddc476ae297"}, -] -pyinstrument = [ - {file = "pyinstrument-4.4.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:8874f8f58cfcb1ff134dc8e4a2b31ab9175adb271a4423596ed7ac8183592cf8"}, - {file = "pyinstrument-4.4.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e5f4d6e1c395f259f67a923a9c54dc3eaccd5f02540598da4f865c4bb3545762"}, - {file = "pyinstrument-4.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d70fed48ddd0078e287fb580daaeede4d8703a9edc8bf4f703308a77920bac37"}, - {file = "pyinstrument-4.4.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9fda1bd596e81ecd2b6a976eb9b930a757a5dd04071583d0141d059e34eed83f"}, - {file = "pyinstrument-4.4.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2f57b61d39d3b1a4d773da16baa8456aa66102d6016ce1f39817051550cbe47e"}, - {file = "pyinstrument-4.4.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:5a9aead0ca5579473f66fed4c449c693feee464802b5ba9b98772e64e02c575c"}, - {file = "pyinstrument-4.4.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:375a340c3fbebd922a35b0834de1c82d1b4fea681df49f99729439a6cb5e6ad4"}, - {file = "pyinstrument-4.4.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b9cbaf3bcda5ad9af4c9a7bf4f1b8f15bb32c4cadf554d0a2c723892c898021b"}, - {file = "pyinstrument-4.4.0-cp310-cp310-win32.whl", hash = "sha256:97cbeb5f5a048dc6eb047495f73db90c9e2ec97606e65298c7ea2c61fa52de38"}, - {file = "pyinstrument-4.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:73edbce7fda1b3d8cab0b6c39c43b012167d783c072f40928600c3357d1a5dc5"}, - {file = "pyinstrument-4.4.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:7db8cb55182883be48520eb915bd1769f176a4813ce0cc38243aa2d1182e7ce7"}, - {file = "pyinstrument-4.4.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:7c614e2c241fb558a25973019ff43ce027ba4958bcb87383f0b0789af9c4d03b"}, - {file = "pyinstrument-4.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3c012422c851f0457c3cb82d8b1259d96fa0dcddc0f1e8bf4d97f0b2efe54485"}, - {file = "pyinstrument-4.4.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e4f5ad100710dda68f9f345961780bf4f0cbb9fd3e46295d099bb9ad65b179ea"}, - {file = "pyinstrument-4.4.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9a4a053cd67102c6fcc313366ea6be97cfce7eae2b9e57e62c9be8adbbdebc17"}, - {file = "pyinstrument-4.4.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:1d2a1e53615c8ef210286e4d2d93be0d3e8296995b090df29a0b7ddeae5d874b"}, - {file = "pyinstrument-4.4.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:b2a6609ef74ad8ba292a11fbd975660bc86466c7eaab1ff11360d24e0300800b"}, - {file = "pyinstrument-4.4.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3643084ee8ad22d9ea2adb13d65d4b6e18810113e4176b19d026a011957f8c7c"}, - {file = "pyinstrument-4.4.0-cp311-cp311-win32.whl", hash = "sha256:fcd717910a8ab6deca353aded890403bbaea14a6dd99a87c3367f24721d2d6aa"}, - {file = "pyinstrument-4.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:be9ac54a4dd07d969d5941e4dcba67d5aef5f6826f43b9ddda65553816f6abca"}, - {file = "pyinstrument-4.4.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:39584c0fec147e3bbfa7b28454332f9801af5f93331f4143f24a4b0f9e3cb470"}, - {file = "pyinstrument-4.4.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5491a5cb3ae5e88436d48b4b3de8328286e843e7307116dc2cca397c9c2ffe21"}, - {file = "pyinstrument-4.4.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d66fcc94f0ebaab6bcbbdfa2482f833dd634352a20295616ea45286e990f7446"}, - {file = "pyinstrument-4.4.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b72bde0b1a03d1b2dc9b9d79546f551df6f67673cca816614e98ea0aebd3bc50"}, - {file = "pyinstrument-4.4.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:0bbd169b92147ec5d67ed160c300dda504059cfd81e953ed5b059e8ef92bb482"}, - {file = "pyinstrument-4.4.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:e5233022ba511ef7ecfef2e07d162c0817048c995f0940f9aa2f6a1936afcb9c"}, - {file = "pyinstrument-4.4.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:5e750fc3afb9acc288ad84b183a5ccd863e9185c435b445fcc62e0c133af9b7f"}, - {file = "pyinstrument-4.4.0-cp37-cp37m-win32.whl", hash = "sha256:2d131b98f116fb895d759dfb8c1078e0e9fa8987a9f44f566d29221545f75bd4"}, - {file = "pyinstrument-4.4.0-cp37-cp37m-win_amd64.whl", hash = "sha256:de83152bafc9eed4e5469e340b6002be825151f0654c32bbb9a3a7e31708d227"}, - {file = "pyinstrument-4.4.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:a7c774c4b8df21664b082d3e72fa8cbc0631fe9bb222bb9d285ccfe9cd9b4909"}, - {file = "pyinstrument-4.4.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:7526f0b1dab721ddc19920fa1f4eeaa5bcb658a4d18ac9c50868e84f911f794b"}, - {file = "pyinstrument-4.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:59f5f479db277b3dbeb0c6843a7e9a38ee8b7c23d75b9ef764d96cb522d96212"}, - {file = "pyinstrument-4.4.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ffeeaa0d036a8bef31da6fc13c4ea097160f913d86319897314113bb9271af4c"}, - {file = "pyinstrument-4.4.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bfc4e2fd670a570ea847f6897283d10d4b9606170e491f01b75488ed1aa37a81"}, - {file = "pyinstrument-4.4.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:ffd9a9fa73fd83a40252430c6ebf8dfff7c668cc68eab4a92562b8b27c302598"}, - {file = "pyinstrument-4.4.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:09167ece8802bc03a63e97536dcefd9c1a340dae686f40914cf995099bc0d0af"}, - {file = "pyinstrument-4.4.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:9e7d1cc3affef4a7e4695bb87c6cfcd577e2dac508624a91481f24217ef78c57"}, - {file = "pyinstrument-4.4.0-cp38-cp38-win32.whl", hash = "sha256:b50cf50513a5318738c3c7147f02596cda4891089acf2f627bb65954fc5bcbfd"}, - {file = "pyinstrument-4.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:dd9625cf136eb6684d9ca555a5088f21a7ac6c6cb2ece3ae45d09772906ceba8"}, - {file = "pyinstrument-4.4.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:a8afee175335005d2964848b77579bfc18f011ea74b59b79ab6d5b35433bf3e3"}, - {file = "pyinstrument-4.4.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:ebc63b70845e3a44b673f7dcdc78ac2c475684db41b0402eea370f194da2a287"}, - {file = "pyinstrument-4.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bb89033e41e74dc2ac4fd882269e91ddf677588efa665d2be8b718e96ea4cec6"}, - {file = "pyinstrument-4.4.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9b2bcd803d273c8addf01eaf75a42ae0a2a9196a58fb0ebb8d29be75abb88701"}, - {file = "pyinstrument-4.4.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:50727b686a0961a11eba2fe6205d0899f3479c983bcf34abb114d6da70bc1b93"}, - {file = "pyinstrument-4.4.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:4f07941bb5dd5cd730fc84eef6497ef9f0807c686e68d0c6b1f464589646a3b7"}, - {file = "pyinstrument-4.4.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:30f5ce299c3219559870117c5b0825f33243808be375be9c3525572ba050c2db"}, - {file = "pyinstrument-4.4.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:9a13c75b24bf8eed5a4356ffa8a419cc534284a529f2b314f3e10275a820420f"}, - {file = "pyinstrument-4.4.0-cp39-cp39-win32.whl", hash = "sha256:e5583b0d23f87631af06bb9f3c184190c889c194b02553eed132de966324bdf9"}, - {file = "pyinstrument-4.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:a19784a898133b7e0ffe4489155bacd2d07ec48ea059f9bf50033dc2b814c273"}, - {file = "pyinstrument-4.4.0.tar.gz", hash = "sha256:be34a2e8118c14a616a64538e02430d9099d5d67d8a370f2888e4ac71e52bbb7"}, -] -pyjwt = [ - {file = "PyJWT-2.6.0-py3-none-any.whl", hash = "sha256:d83c3d892a77bbb74d3e1a2cfa90afaadb60945205d1095d9221f04466f64c14"}, - {file = "PyJWT-2.6.0.tar.gz", hash = "sha256:69285c7e31fc44f68a1feb309e948e0df53259d579295e6cfe2b1792329f05fd"}, -] -pymaging = [] -pymaging-png = [] -pytest = [ - {file = "pytest-7.2.0-py3-none-any.whl", hash = "sha256:892f933d339f068883b6fd5a459f03d85bfcb355e4981e146d2c7616c21fef71"}, - {file = "pytest-7.2.0.tar.gz", hash = "sha256:c4014eb40e10f11f355ad4e3c2fb2c6c6d1919c73f3b5a433de4708202cade59"}, -] -pytest-asyncio = [] -pytest-freezegun = [ - {file = "pytest-freezegun-0.4.2.zip", hash = "sha256:19c82d5633751bf3ec92caa481fb5cffaac1787bd485f0df6436fd6242176949"}, - {file = "pytest_freezegun-0.4.2-py2.py3-none-any.whl", hash = "sha256:5318a6bfb8ba4b709c8471c94d0033113877b3ee02da5bfcd917c1889cde99a7"}, -] -pytest-icdiff = [ - {file = "pytest-icdiff-0.5.tar.gz", hash = "sha256:3a14097f4385665cb04330e6ae09a3dd430375f717e94482af6944470ad5f100"}, -] -pytest-lazy-fixture = [ - {file = "pytest-lazy-fixture-0.6.3.tar.gz", hash = "sha256:0e7d0c7f74ba33e6e80905e9bfd81f9d15ef9a790de97993e34213deb5ad10ac"}, - {file = "pytest_lazy_fixture-0.6.3-py3-none-any.whl", hash = "sha256:e0b379f38299ff27a653f03eaa69b08a6fd4484e46fd1c9907d984b9f9daeda6"}, -] -pytest-recording = [ - {file = "pytest-recording-0.12.1.tar.gz", hash = "sha256:0d1f36d10dea5090cab8ecd230e5dc937c97b9fed193874b330d2926ddea028f"}, - {file = "pytest_recording-0.12.1-py3-none-any.whl", hash = "sha256:6b5546b822b270b8d7338f70950453be45e4aa5bfd884d97583dfa47288380f9"}, -] -python-dateutil = [ - {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"}, - {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"}, -] -python-multipart = [ - {file = "python-multipart-0.0.5.tar.gz", hash = "sha256:f7bb5f611fc600d15fa47b3974c8aa16e93724513b49b5f95c81e6624c83fa43"}, -] -pyyaml = [ - {file = "PyYAML-6.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53"}, - {file = "PyYAML-6.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9df7ed3b3d2e0ecfe09e14741b857df43adb5a3ddadc919a2d94fbdf78fea53c"}, - {file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:77f396e6ef4c73fdc33a9157446466f1cff553d979bd00ecb64385760c6babdc"}, - {file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a80a78046a72361de73f8f395f1f1e49f956c6be882eed58505a15f3e430962b"}, - {file = "PyYAML-6.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5"}, - {file = "PyYAML-6.0-cp310-cp310-win32.whl", hash = "sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513"}, - {file = "PyYAML-6.0-cp310-cp310-win_amd64.whl", hash = "sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a"}, - {file = "PyYAML-6.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86"}, - {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f"}, - {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92"}, - {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:98c4d36e99714e55cfbaaee6dd5badbc9a1ec339ebfc3b1f52e293aee6bb71a4"}, - {file = "PyYAML-6.0-cp36-cp36m-win32.whl", hash = "sha256:0283c35a6a9fbf047493e3a0ce8d79ef5030852c51e9d911a27badfde0605293"}, - {file = "PyYAML-6.0-cp36-cp36m-win_amd64.whl", hash = "sha256:07751360502caac1c067a8132d150cf3d61339af5691fe9e87803040dbc5db57"}, - {file = "PyYAML-6.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:819b3830a1543db06c4d4b865e70ded25be52a2e0631ccd2f6a47a2822f2fd7c"}, - {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:473f9edb243cb1935ab5a084eb238d842fb8f404ed2193a915d1784b5a6b5fc0"}, - {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0ce82d761c532fe4ec3f87fc45688bdd3a4c1dc5e0b4a19814b9009a29baefd4"}, - {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:231710d57adfd809ef5d34183b8ed1eeae3f76459c18fb4a0b373ad56bedcdd9"}, - {file = "PyYAML-6.0-cp37-cp37m-win32.whl", hash = "sha256:c5687b8d43cf58545ade1fe3e055f70eac7a5a1a0bf42824308d868289a95737"}, - {file = "PyYAML-6.0-cp37-cp37m-win_amd64.whl", hash = "sha256:d15a181d1ecd0d4270dc32edb46f7cb7733c7c508857278d3d378d14d606db2d"}, - {file = "PyYAML-6.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0b4624f379dab24d3725ffde76559cff63d9ec94e1736b556dacdfebe5ab6d4b"}, - {file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:213c60cd50106436cc818accf5baa1aba61c0189ff610f64f4a3e8c6726218ba"}, - {file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9fa600030013c4de8165339db93d182b9431076eb98eb40ee068700c9c813e34"}, - {file = "PyYAML-6.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:277a0ef2981ca40581a47093e9e2d13b3f1fbbeffae064c1d21bfceba2030287"}, - {file = "PyYAML-6.0-cp38-cp38-win32.whl", hash = "sha256:d4eccecf9adf6fbcc6861a38015c2a64f38b9d94838ac1810a9023a0609e1b78"}, - {file = "PyYAML-6.0-cp38-cp38-win_amd64.whl", hash = "sha256:1e4747bc279b4f613a09eb64bba2ba602d8a6664c6ce6396a4d0cd413a50ce07"}, - {file = "PyYAML-6.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:055d937d65826939cb044fc8c9b08889e8c743fdc6a32b33e2390f66013e449b"}, - {file = "PyYAML-6.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e61ceaab6f49fb8bdfaa0f92c4b57bcfbea54c09277b1b4f7ac376bfb7a7c174"}, - {file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d67d839ede4ed1b28a4e8909735fc992a923cdb84e618544973d7dfc71540803"}, - {file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cba8c411ef271aa037d7357a2bc8f9ee8b58b9965831d9e51baf703280dc73d3"}, - {file = "PyYAML-6.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:40527857252b61eacd1d9af500c3337ba8deb8fc298940291486c465c8b46ec0"}, - {file = "PyYAML-6.0-cp39-cp39-win32.whl", hash = "sha256:b5b9eccad747aabaaffbc6064800670f0c297e52c12754eb1d976c57e4f74dcb"}, - {file = "PyYAML-6.0-cp39-cp39-win_amd64.whl", hash = "sha256:b3d267842bf12586ba6c734f89d1f5b871df0273157918b0ccefa29deb05c21c"}, - {file = "PyYAML-6.0.tar.gz", hash = "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2"}, -] -qrcode = [ - {file = "qrcode-7.3.1.tar.gz", hash = "sha256:375a6ff240ca9bd41adc070428b5dfc1dcfbb0f2507f1ac848f6cded38956578"}, -] -requests = [ - {file = "requests-2.28.1-py3-none-any.whl", hash = "sha256:8fefa2a1a1365bf5520aac41836fbee479da67864514bdb821f31ce07ce65349"}, - {file = "requests-2.28.1.tar.gz", hash = "sha256:7c5599b102feddaa661c826c56ab4fee28bfd17f5abca1ebbe3e7f19d7c97983"}, -] -rfc3986 = [ - {file = "rfc3986-1.5.0-py2.py3-none-any.whl", hash = "sha256:a86d6e1f5b1dc238b218b012df0aa79409667bb209e58da56d0b94704e712a97"}, - {file = "rfc3986-1.5.0.tar.gz", hash = "sha256:270aaf10d87d0d4e095063c65bf3ddbc6ee3d0b226328ce21e036f946e421835"}, -] -rollbar = [ - {file = "rollbar-0.16.3-py3-none-any.whl", hash = "sha256:f06e23b36d7d1b547f32f287da9367b9bf53319f611da0ec9e891859507ac94e"}, - {file = "rollbar-0.16.3.tar.gz", hash = "sha256:02313dfc60710ec736ab033d0f8c969d857a8b991cd67e0c1a91620e8a04ede2"}, -] -rsa = [ - {file = "rsa-4.9-py3-none-any.whl", hash = "sha256:90260d9058e514786967344d0ef75fa8727eed8a7d2e43ce9f4bcf1b536174f7"}, - {file = "rsa-4.9.tar.gz", hash = "sha256:e38464a49c6c85d7f1351b0126661487a7e0a14a50f1675ec50eb34d4f20ef21"}, -] -secp256k1 = [ - {file = "secp256k1-0.14.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:f666c67dcf1dc69e1448b2ede5e12aaf382b600204a61dbc65e4f82cea444405"}, - {file = "secp256k1-0.14.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:fcabb3c3497a902fb61eec72d1b69bf72747d7bcc2a732d56d9319a1e8322262"}, - {file = "secp256k1-0.14.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:7a27c479ab60571502516a1506a562d0a9df062de8ad645313fabfcc97252816"}, - {file = "secp256k1-0.14.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:f4b9306bff6dde020444dfee9ca9b9f5b20ca53a2c0b04898361a3f43d5daf2e"}, - {file = "secp256k1-0.14.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:72735da6cb28273e924431cd40aa607e7f80ef09608c8c9300be2e0e1d2417b4"}, - {file = "secp256k1-0.14.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:87f4ad42a370f768910585989a301d1d65de17dcd86f6e8def9b021364b34d5c"}, - {file = "secp256k1-0.14.0-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:130f119b06142e597c10eb4470b5a38eae865362d01aaef06b113478d77f728d"}, - {file = "secp256k1-0.14.0-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:3aedcfe6eb1c5fa7c6be25b7cc91c76d8eb984271920ba0f7a934ae41ed56f51"}, - {file = "secp256k1-0.14.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:c91dd3154f6c46ac798d9a41166120e1751222587f54516cc3f378f56ce4ac82"}, - {file = "secp256k1-0.14.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:fec790cb6d0d37129ca0ce5b3f8e85692d5fb618d1c440f189453d18694035df"}, - {file = "secp256k1-0.14.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:63eb148196b8f646922d4be6739b17fbbf50ebb3a020078c823e2445d88b7a81"}, - {file = "secp256k1-0.14.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:adc23a4c5d24c95191638eb2ca313097827f07db102e77b59faed15d50c98cae"}, - {file = "secp256k1-0.14.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:ce0314788d3248b275426501228969fd32f6501c9d1837902ee0e7bd8264a36f"}, - {file = "secp256k1-0.14.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:bc761894b3634021686714278fc62b73395fa3eded33453eadfd8a00a6c44ef3"}, - {file = "secp256k1-0.14.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:373dc8bca735f3c2d73259aa2711a9ecea2f3c7edbb663555fe3422e3dd76102"}, - {file = "secp256k1-0.14.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:fe3f503c9dfdf663b500d3e0688ad842e116c2907ad3f1e1d685812df3f56290"}, - {file = "secp256k1-0.14.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:4b1bf09953cde181132cf5e9033065615e5c2694e803165e2db763efa47695e5"}, - {file = "secp256k1-0.14.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:6af07be5f8612628c3638dc7b208f6cc78d0abae3e25797eadb13890c7d5da81"}, - {file = "secp256k1-0.14.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:a8dbd75a9fb6f42de307f3c5e24573fe59c3374637cbf39136edc66c200a4029"}, - {file = "secp256k1-0.14.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:97a30c8dae633cb18135c76b6517ae99dc59106818e8985be70dbc05dcc06c0d"}, - {file = "secp256k1-0.14.0-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:f4062d8c101aa63b9ecb3709f1f075ad9c01b6672869bbaa1bd77271816936a7"}, - {file = "secp256k1-0.14.0-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c9e7c024ff17e9b9d7c392bb2a917da231d6cb40ab119389ff1f51dca10339a4"}, - {file = "secp256k1-0.14.0.tar.gz", hash = "sha256:82c06712d69ef945220c8b53c1a0d424c2ff6a1f64aee609030df79ad8383397"}, -] -sentry-sdk = [ - {file = "sentry-sdk-1.13.0.tar.gz", hash = "sha256:72da0766c3069a3941eadbdfa0996f83f5a33e55902a19ba399557cfee1dddcc"}, - {file = "sentry_sdk-1.13.0-py2.py3-none-any.whl", hash = "sha256:b7ff6318183e551145b5c4766eb65b59ad5b63ff234dffddc5fb50340cad6729"}, -] -setuptools = [ - {file = "setuptools-65.5.1-py3-none-any.whl", hash = "sha256:d0b9a8433464d5800cbe05094acf5c6d52a91bfac9b52bcfc4d41382be5d5d31"}, - {file = "setuptools-65.5.1.tar.gz", hash = "sha256:e197a19aa8ec9722928f2206f8de752def0e4c9fc6953527360d1c36d94ddb2f"}, -] -six = [ - {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, - {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, -] -sniffio = [ - {file = "sniffio-1.3.0-py3-none-any.whl", hash = "sha256:eecefdce1e5bbfb7ad2eeaabf7c1eeb404d7757c379bd1f7e5cce9d8bf425384"}, - {file = "sniffio-1.3.0.tar.gz", hash = "sha256:e60305c5e5d314f5389259b7f22aaa33d8f7dee49763119234af3755c55b9101"}, -] -sqlalchemy = [ +files = [ {file = "SQLAlchemy-1.4.45-cp27-cp27m-macosx_10_14_x86_64.whl", hash = "sha256:f1d3fb02a4d0b07d1351a4a52f159e5e7b3045c903468b7e9349ebf0020ffdb9"}, {file = "SQLAlchemy-1.4.45-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:9b7025d46aba946272f6b6b357a22f3787473ef27451f342df1a2a6de23743e3"}, {file = "SQLAlchemy-1.4.45-cp27-cp27m-win32.whl", hash = "sha256:26b8424b32eeefa4faad21decd7bdd4aade58640b39407bf43e7d0a7c1bc0453"}, @@ -3390,59 +3119,275 @@ sqlalchemy = [ {file = "SQLAlchemy-1.4.45-cp39-cp39-win_amd64.whl", hash = "sha256:2d6f178ff2923730da271c8aa317f70cf0df11a4d1812f1d7a704b1cf29c5fe3"}, {file = "SQLAlchemy-1.4.45.tar.gz", hash = "sha256:fd69850860093a3f69fefe0ab56d041edfdfe18510b53d9a2eaecba2f15fa795"}, ] -sqlalchemy-utils = [ + +[package.dependencies] +greenlet = {version = "!=0.4.17", markers = "python_version >= \"3\" and (platform_machine == \"aarch64\" or platform_machine == \"ppc64le\" or platform_machine == \"x86_64\" or platform_machine == \"amd64\" or platform_machine == \"AMD64\" or platform_machine == \"win32\" or platform_machine == \"WIN32\")"} + +[package.extras] +aiomysql = ["aiomysql", "greenlet (!=0.4.17)"] +aiosqlite = ["aiosqlite", "greenlet (!=0.4.17)", "typing_extensions (!=3.10.0.1)"] +asyncio = ["greenlet (!=0.4.17)"] +asyncmy = ["asyncmy (>=0.2.3,!=0.2.4)", "greenlet (!=0.4.17)"] +mariadb-connector = ["mariadb (>=1.0.1,!=1.1.2)"] +mssql = ["pyodbc"] +mssql-pymssql = ["pymssql"] +mssql-pyodbc = ["pyodbc"] +mypy = ["mypy (>=0.910)", "sqlalchemy2-stubs"] +mysql = ["mysqlclient (>=1.4.0)", "mysqlclient (>=1.4.0,<2)"] +mysql-connector = ["mysql-connector-python"] +oracle = ["cx_oracle (>=7)", "cx_oracle (>=7,<8)"] +postgresql = ["psycopg2 (>=2.7)"] +postgresql-asyncpg = ["asyncpg", "greenlet (!=0.4.17)"] +postgresql-pg8000 = ["pg8000 (>=1.16.6,!=1.29.0)"] +postgresql-psycopg2binary = ["psycopg2-binary"] +postgresql-psycopg2cffi = ["psycopg2cffi"] +pymysql = ["pymysql", "pymysql (<1)"] +sqlcipher = ["sqlcipher3_binary"] + +[[package]] +name = "sqlalchemy-utils" +version = "0.38.3" +description = "Various utility functions for SQLAlchemy." +category = "dev" +optional = false +python-versions = "~=3.6" +files = [ {file = "SQLAlchemy-Utils-0.38.3.tar.gz", hash = "sha256:9f9afba607a40455cf703adfa9846584bf26168a0c5a60a70063b70d65051f4d"}, {file = "SQLAlchemy_Utils-0.38.3-py3-none-any.whl", hash = "sha256:5c13b5d08adfaa85f3d4e8ec09a75136216fad41346980d02974a70a77988bf9"}, ] -sqlparse = [ + +[package.dependencies] +SQLAlchemy = ">=1.3" + +[package.extras] +arrow = ["arrow (>=0.3.4)"] +babel = ["Babel (>=1.3)"] +color = ["colour (>=0.0.4)"] +encrypted = ["cryptography (>=0.6)"] +intervals = ["intervals (>=0.7.1)"] +password = ["passlib (>=1.6,<2.0)"] +pendulum = ["pendulum (>=2.0.5)"] +phone = ["phonenumbers (>=5.9.2)"] +test = ["Jinja2 (>=2.3)", "Pygments (>=1.2)", "backports.zoneinfo", "docutils (>=0.10)", "flake8 (>=2.4.0)", "flexmock (>=0.9.7)", "isort (>=4.2.2)", "pg8000 (>=1.12.4)", "psycopg2 (>=2.5.1)", "psycopg2cffi (>=2.8.1)", "pymysql", "pyodbc", "pytest (>=2.7.1)", "python-dateutil (>=2.6)", "pytz (>=2014.2)"] +test-all = ["Babel (>=1.3)", "Jinja2 (>=2.3)", "Pygments (>=1.2)", "arrow (>=0.3.4)", "backports.zoneinfo", "colour (>=0.0.4)", "cryptography (>=0.6)", "docutils (>=0.10)", "flake8 (>=2.4.0)", "flexmock (>=0.9.7)", "furl (>=0.4.1)", "intervals (>=0.7.1)", "isort (>=4.2.2)", "passlib (>=1.6,<2.0)", "pendulum (>=2.0.5)", "pg8000 (>=1.12.4)", "phonenumbers (>=5.9.2)", "psycopg2 (>=2.5.1)", "psycopg2cffi (>=2.8.1)", "pymysql", "pyodbc", "pytest (>=2.7.1)", "python-dateutil", "python-dateutil (>=2.6)", "pytz (>=2014.2)"] +timezone = ["python-dateutil"] +url = ["furl (>=0.4.1)"] + +[[package]] +name = "sqlparse" +version = "0.4.3" +description = "A non-validating SQL parser." +category = "main" +optional = false +python-versions = ">=3.5" +files = [ {file = "sqlparse-0.4.3-py3-none-any.whl", hash = "sha256:0323c0ec29cd52bceabc1b4d9d579e311f3e4961b98d174201d5622a23b85e34"}, {file = "sqlparse-0.4.3.tar.gz", hash = "sha256:69ca804846bb114d2ec380e4360a8a340db83f0ccf3afceeb1404df028f57268"}, ] -stack-data = [ + +[[package]] +name = "stack-data" +version = "0.6.2" +description = "Extract data from python stack frames and tracebacks for informative displays" +category = "dev" +optional = false +python-versions = "*" +files = [ {file = "stack_data-0.6.2-py3-none-any.whl", hash = "sha256:cbb2a53eb64e5785878201a97ed7c7b94883f48b87bfb0bbe8b623c74679e4a8"}, {file = "stack_data-0.6.2.tar.gz", hash = "sha256:32d2dd0376772d01b6cb9fc996f3c8b57a357089dec328ed4b6553d037eaf815"}, ] -starlette = [ + +[package.dependencies] +asttokens = ">=2.1.0" +executing = ">=1.2.0" +pure-eval = "*" + +[package.extras] +tests = ["cython", "littleutils", "pygments", "pytest", "typeguard"] + +[[package]] +name = "starlette" +version = "0.19.1" +description = "The little ASGI library that shines." +category = "main" +optional = false +python-versions = ">=3.6" +files = [ {file = "starlette-0.19.1-py3-none-any.whl", hash = "sha256:5a60c5c2d051f3a8eb546136aa0c9399773a689595e099e0877704d5888279bf"}, {file = "starlette-0.19.1.tar.gz", hash = "sha256:c6d21096774ecb9639acad41b86b7706e52ba3bf1dc13ea4ed9ad593d47e24c7"}, ] -starlette-authlib = [ + +[package.dependencies] +anyio = ">=3.4.0,<5" + +[package.extras] +full = ["itsdangerous", "jinja2", "python-multipart", "pyyaml", "requests"] + +[[package]] +name = "starlette-authlib" +version = "0.1.20" +description = "A drop-in replacement for Starlette session middleware, using authlib's jwt" +category = "main" +optional = false +python-versions = ">=3.7,<4.0" +files = [ {file = "starlette_authlib-0.1.20-py3-none-any.whl", hash = "sha256:a3182ab8fe2fec6b79a15766e33ae6f69a653018e6a51940c198cb12c2c3893d"}, {file = "starlette_authlib-0.1.20.tar.gz", hash = "sha256:f6443c1d692c20c340fdaeb01ec99c1a0880b59bb91024d757c5c0484298caae"}, ] -tinycss2 = [ + +[package.dependencies] +authlib = "<1.3" +starlette = "<0.24" + +[[package]] +name = "tinycss2" +version = "1.2.1" +description = "A tiny CSS parser" +category = "main" +optional = false +python-versions = ">=3.7" +files = [ {file = "tinycss2-1.2.1-py3-none-any.whl", hash = "sha256:2b80a96d41e7c3914b8cda8bc7f705a4d9c49275616e886103dd839dfc847847"}, {file = "tinycss2-1.2.1.tar.gz", hash = "sha256:8cff3a8f066c2ec677c06dbc7b45619804a6938478d9d73c284b29d14ecb0627"}, ] -toml = [ + +[package.dependencies] +webencodings = ">=0.4" + +[package.extras] +doc = ["sphinx", "sphinx_rtd_theme"] +test = ["flake8", "isort", "pytest"] + +[[package]] +name = "toml" +version = "0.10.2" +description = "Python Library for Tom's Obvious, Minimal Language" +category = "main" +optional = false +python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" +files = [ {file = "toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"}, {file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"}, ] -tomli = [ + +[[package]] +name = "tomli" +version = "2.0.1" +description = "A lil' TOML parser" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ {file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"}, {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, ] -tonyg-rfc3339 = [ + +[[package]] +name = "tonyg-rfc3339" +version = "0.1" +description = "Python implementation of RFC 3339" +category = "main" +optional = false +python-versions = "*" +files = [ {file = "tonyg-rfc3339-0.1.tar.gz", hash = "sha256:e424e7b4ddf2a2f5c70d7317faecf9b69b7da099c9fc08d046c3ac679dd30d3d"}, ] -traitlets = [ + +[[package]] +name = "traitlets" +version = "5.8.0" +description = "Traitlets Python configuration system" +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ {file = "traitlets-5.8.0-py3-none-any.whl", hash = "sha256:c864831efa0ba6576d09b44884b34e41defc18c0d7e720b4a2d6698c842cab3e"}, {file = "traitlets-5.8.0.tar.gz", hash = "sha256:6cc57d6dc28c85d5365961726ffd19b538739347749e13ebe34e03323a0e8f84"}, ] -typing-extensions = [ + +[package.extras] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx"] +test = ["argcomplete (>=2.0)", "pre-commit", "pytest", "pytest-mock"] + +[[package]] +name = "typing-extensions" +version = "4.4.0" +description = "Backported and Experimental Type Hints for Python 3.7+" +category = "main" +optional = false +python-versions = ">=3.7" +files = [ {file = "typing_extensions-4.4.0-py3-none-any.whl", hash = "sha256:16fa4864408f655d35ec496218b85f79b3437c829e93320c7c9215ccfd92489e"}, {file = "typing_extensions-4.4.0.tar.gz", hash = "sha256:1511434bb92bf8dd198c12b1cc812e800d4181cfcb867674e0f8279cc93087aa"}, ] -urllib3 = [ + +[[package]] +name = "urllib3" +version = "1.26.13" +description = "HTTP library with thread-safe connection pooling, file post, and more." +category = "main" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +files = [ {file = "urllib3-1.26.13-py2.py3-none-any.whl", hash = "sha256:47cc05d99aaa09c9e72ed5809b60e7ba354e64b59c9c173ac3018642d8bb41fc"}, {file = "urllib3-1.26.13.tar.gz", hash = "sha256:c083dd0dce68dbfbe1129d5271cb90f9447dea7d52097c6e0126120c521ddea8"}, ] -uvicorn = [ + +[package.extras] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] +secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] +socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] + +[[package]] +name = "uvicorn" +version = "0.17.6" +description = "The lightning-fast ASGI server." +category = "main" +optional = false +python-versions = ">=3.7" +files = [ {file = "uvicorn-0.17.6-py3-none-any.whl", hash = "sha256:19e2a0e96c9ac5581c01eb1a79a7d2f72bb479691acd2b8921fce48ed5b961a6"}, {file = "uvicorn-0.17.6.tar.gz", hash = "sha256:5180f9d059611747d841a4a4c4ab675edf54c8489e97f96d0583ee90ac3bfc23"}, ] -vcrpy = [] -watchfiles = [ + +[package.dependencies] +asgiref = ">=3.4.0" +click = ">=7.0" +h11 = ">=0.8" + +[package.extras] +standard = ["PyYAML (>=5.1)", "colorama (>=0.4)", "httptools (>=0.4.0)", "python-dotenv (>=0.13)", "uvloop (>=0.14.0,!=0.15.0,!=0.15.1)", "watchgod (>=0.6)", "websockets (>=10.0)"] + +[[package]] +name = "vcrpy" +version = "4.1.1" +description = "Automatically mock your HTTP interactions to simplify and speed up testing" +category = "main" +optional = false +python-versions = ">=3.7" +files = [] +develop = false + +[package.dependencies] +PyYAML = "*" +six = ">=1.5" +wrapt = "*" +yarl = "*" + +[package.source] +type = "git" +url = "https://github.com/nikicat/vcrpy" +reference = "fix-httpx-stub" +resolved_reference = "73cea0f941a67eb70278033303363dbe9117aae1" + +[[package]] +name = "watchfiles" +version = "0.18.1" +description = "Simple, modern and high performance file watching and code reload in python." +category = "dev" +optional = false +python-versions = ">=3.7" +files = [ {file = "watchfiles-0.18.1-cp37-abi3-macosx_10_7_x86_64.whl", hash = "sha256:9891d3c94272108bcecf5597a592e61105279def1313521e637f2d5acbe08bc9"}, {file = "watchfiles-0.18.1-cp37-abi3-macosx_11_0_arm64.whl", hash = "sha256:7102342d60207fa635e24c02a51c6628bf0472e5fef067f78a612386840407fc"}, {file = "watchfiles-0.18.1-cp37-abi3-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:00ea0081eca5e8e695cffbc3a726bb90da77f4e3f78ce29b86f0d95db4e70ef7"}, @@ -3462,19 +3407,58 @@ watchfiles = [ {file = "watchfiles-0.18.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a868ce2c7565137f852bd4c863a164dc81306cae7378dbdbe4e2aca51ddb8857"}, {file = "watchfiles-0.18.1.tar.gz", hash = "sha256:4ec0134a5e31797eb3c6c624dbe9354f2a8ee9c720e0b46fc5b7bab472b7c6d4"}, ] -wcwidth = [ + +[package.dependencies] +anyio = ">=3.0.0" + +[[package]] +name = "wcwidth" +version = "0.2.5" +description = "Measures the displayed width of unicode strings in a terminal" +category = "dev" +optional = false +python-versions = "*" +files = [ {file = "wcwidth-0.2.5-py2.py3-none-any.whl", hash = "sha256:beb4802a9cebb9144e99086eff703a642a13d6a0052920003a230f3294bbe784"}, {file = "wcwidth-0.2.5.tar.gz", hash = "sha256:c4d647b99872929fdb7bdcaa4fbe7f01413ed3d98077df798530e5b04f116c83"}, ] -webencodings = [ + +[[package]] +name = "webencodings" +version = "0.5.1" +description = "Character encoding aliases for legacy web content" +category = "main" +optional = false +python-versions = "*" +files = [ {file = "webencodings-0.5.1-py2.py3-none-any.whl", hash = "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78"}, {file = "webencodings-0.5.1.tar.gz", hash = "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923"}, ] -webob = [ + +[[package]] +name = "webob" +version = "1.8.7" +description = "WSGI request and response object" +category = "main" +optional = false +python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*" +files = [ {file = "WebOb-1.8.7-py2.py3-none-any.whl", hash = "sha256:73aae30359291c14fa3b956f8b5ca31960e420c28c1bec002547fb04928cf89b"}, {file = "WebOb-1.8.7.tar.gz", hash = "sha256:b64ef5141be559cfade448f044fa45c2260351edcb6a8ef6b7e00c7dcef0c323"}, ] -wrapt = [ + +[package.extras] +docs = ["Sphinx (>=1.7.5)", "pylons-sphinx-themes"] +testing = ["coverage", "pytest (>=3.1.0)", "pytest-cov", "pytest-xdist"] + +[[package]] +name = "wrapt" +version = "1.14.1" +description = "Module for decorators, wrappers and monkey patching." +category = "main" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" +files = [ {file = "wrapt-1.14.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:1b376b3f4896e7930f1f772ac4b064ac12598d1c38d04907e696cc4d794b43d3"}, {file = "wrapt-1.14.1-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:903500616422a40a98a5a3c4ff4ed9d0066f3b4c951fa286018ecdf0750194ef"}, {file = "wrapt-1.14.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:5a9a0d155deafd9448baff28c08e150d9b24ff010e899311ddd63c45c2445e28"}, @@ -3540,11 +3524,30 @@ wrapt = [ {file = "wrapt-1.14.1-cp39-cp39-win_amd64.whl", hash = "sha256:dee60e1de1898bde3b238f18340eec6148986da0455d8ba7848d50470a7a32fb"}, {file = "wrapt-1.14.1.tar.gz", hash = "sha256:380a85cf89e0e69b7cfbe2ea9f765f004ff419f34194018a6827ac0e3edfed4d"}, ] -wsproto = [ + +[[package]] +name = "wsproto" +version = "1.2.0" +description = "WebSockets state-machine based protocol implementation" +category = "main" +optional = false +python-versions = ">=3.7.0" +files = [ {file = "wsproto-1.2.0-py3-none-any.whl", hash = "sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736"}, {file = "wsproto-1.2.0.tar.gz", hash = "sha256:ad565f26ecb92588a3e43bc3d96164de84cd9902482b130d0ddbaa9664a85065"}, ] -yarl = [ + +[package.dependencies] +h11 = ">=0.9.0,<1" + +[[package]] +name = "yarl" +version = "1.8.2" +description = "Yet another URL library" +category = "main" +optional = false +python-versions = ">=3.7" +files = [ {file = "yarl-1.8.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:bb81f753c815f6b8e2ddd2eef3c855cf7da193b82396ac013c661aaa6cc6b0a5"}, {file = "yarl-1.8.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:47d49ac96156f0928f002e2424299b2c91d9db73e08c4cd6742923a086f1c863"}, {file = "yarl-1.8.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:3fc056e35fa6fba63248d93ff6e672c096f95f7836938241ebc8260e062832fe"}, @@ -3620,3 +3623,12 @@ yarl = [ {file = "yarl-1.8.2-cp39-cp39-win_amd64.whl", hash = "sha256:6604711362f2dbf7160df21c416f81fac0de6dbcf0b5445a2ef25478ecc4c778"}, {file = "yarl-1.8.2.tar.gz", hash = "sha256:49d43402c6e3013ad0978602bf6bf5328535c48d192304b91b97a3c6790b1562"}, ] + +[package.dependencies] +idna = ">=2.0" +multidict = ">=4.0" + +[metadata] +lock-version = "2.0" +python-versions = "^3.10" +content-hash = "53d2df71b04f980ea88496bbc8de32ec4f3e2982859cd4e5ed691e23ff27e352" diff --git a/pyproject.toml b/pyproject.toml index c07afd46..d98ba50b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -56,6 +56,7 @@ cairosvg = "^2.6.0" bech32 = "^1.2.0" vcrpy = {git = "https://github.com/nikicat/vcrpy", rev = "fix-httpx-stub"} httpx-ws = "^0.3.0" +shellous = "^0.22.0" [tool.poetry.dev-dependencies] ipython = "^8.3.0" @@ -98,6 +99,11 @@ filterwarnings = [ "ignore:distutils Version classes are deprecated. Use packaging.version instead:DeprecationWarning", # Rollbar triggers warning in httpx "ignore:Use 'content=<...>' to upload raw bytes/text content.:DeprecationWarning", +# From shellous (remove after updating Python) + "ignore:Python 3.10.9 and Python 3.11.1 are unreliable with respect to asyncio subprocesses. Consider a newer Python release.*:RuntimeWarning", ] asyncio_mode = "auto" testpaths = ["tests"] +markers = [ + "freezed_vcr", +] diff --git a/tests/autofixtures/donate_twitter_author.yaml b/tests/autofixtures/donate_twitter_author.yaml index 3f4ca004..9109ee8f 100644 --- a/tests/autofixtures/donate_twitter_author.yaml +++ b/tests/autofixtures/donate_twitter_author.yaml @@ -34,6 +34,7 @@ json: provider: twitter total_donated: 0 user_id: '1572908920485576704' + twitter_invoice_tweet_id: null twitter_tweet: null youtube_channel: null youtube_video: null diff --git a/tests/autofixtures/donate_twitter_tweet.yaml b/tests/autofixtures/donate_twitter_tweet.yaml index 5f89c449..845c8eda 100644 --- a/tests/autofixtures/donate_twitter_tweet.yaml +++ b/tests/autofixtures/donate_twitter_tweet.yaml @@ -44,6 +44,7 @@ json: provider: twitter total_donated: 0 user_id: '1572908920485576704' + twitter_invoice_tweet_id: null twitter_tweet: id: 00000000-0000-0000-0000-000000000001 tweet_id: '1583074363787444225' diff --git a/tests/autofixtures/donate_youtube_channel.yaml b/tests/autofixtures/donate_youtube_channel.yaml index e00855e5..0711f1a8 100644 --- a/tests/autofixtures/donate_youtube_channel.yaml +++ b/tests/autofixtures/donate_youtube_channel.yaml @@ -24,6 +24,7 @@ json: receiver: null transient_r_hash: null twitter_account: null + twitter_invoice_tweet_id: null twitter_tweet: null youtube_channel: balance: 100 diff --git a/tests/autofixtures/donate_youtube_video.yaml b/tests/autofixtures/donate_youtube_video.yaml index 628b44fa..739d6d08 100644 --- a/tests/autofixtures/donate_youtube_video.yaml +++ b/tests/autofixtures/donate_youtube_video.yaml @@ -24,6 +24,7 @@ json: receiver: null transient_r_hash: null twitter_account: null + twitter_invoice_tweet_id: null twitter_tweet: null youtube_channel: balance: 100 diff --git a/tests/autofixtures/donate_youtube_video_on_website.yaml b/tests/autofixtures/donate_youtube_video_on_website.yaml index a44cd481..671cbfc3 100644 --- a/tests/autofixtures/donate_youtube_video_on_website.yaml +++ b/tests/autofixtures/donate_youtube_video_on_website.yaml @@ -24,6 +24,7 @@ json: receiver: null transient_r_hash: null twitter_account: null + twitter_invoice_tweet_id: null twitter_tweet: null youtube_channel: balance: 100 diff --git a/tests/autofixtures/donation-invoice.yaml b/tests/autofixtures/donation-invoice.yaml new file mode 100644 index 00000000..6e2402dc --- /dev/null +++ b/tests/autofixtures/donation-invoice.yaml @@ -0,0 +1,2 @@ +location: lightning:lnbcrt1u1pjqntm7pp5hures7kavh38trh4f6tm622q4f9s9zc8z2ymhjt8jvqrmnmr4r0sdpzg3hkuct5v56zuen4dcs8gmeqv9ekg7ncvvcqzpgxqrrsssp57ktsneen7pfeenq2s8sqyg2gdwwruxqfzzsywgvupcq0a324c4vs9qyyssqtdkgurvf9uqdfulydenxglcnl6tqpp4qvljel68kx7zm6jmutj7sqjzay4z33rfjlhxa07slg2ptx2ua39nwynj04rv9n46778azhucqs59wmu +status_code: 307 diff --git a/tests/autofixtures/donator-donations-received.yaml b/tests/autofixtures/donator-donations-received.yaml index 71490d32..8f08dbad 100644 --- a/tests/autofixtures/donator-donations-received.yaml +++ b/tests/autofixtures/donator-donations-received.yaml @@ -23,6 +23,7 @@ json: receiver: null transient_r_hash: null twitter_account: null + twitter_invoice_tweet_id: null twitter_tweet: null youtube_channel: balance: 20 diff --git a/tests/autofixtures/donator-donations-sent.yaml b/tests/autofixtures/donator-donations-sent.yaml index 71490d32..8f08dbad 100644 --- a/tests/autofixtures/donator-donations-sent.yaml +++ b/tests/autofixtures/donator-donations-sent.yaml @@ -23,6 +23,7 @@ json: receiver: null transient_r_hash: null twitter_account: null + twitter_invoice_tweet_id: null twitter_tweet: null youtube_channel: balance: 20 diff --git a/tests/autofixtures/donator-donations.yaml b/tests/autofixtures/donator-donations.yaml index 71490d32..8f08dbad 100644 --- a/tests/autofixtures/donator-donations.yaml +++ b/tests/autofixtures/donator-donations.yaml @@ -23,6 +23,7 @@ json: receiver: null transient_r_hash: null twitter_account: null + twitter_invoice_tweet_id: null twitter_tweet: null youtube_channel: balance: 20 diff --git a/tests/autofixtures/get-donation.yaml b/tests/autofixtures/get-donation.yaml index 3466835a..5d6fae53 100644 --- a/tests/autofixtures/get-donation.yaml +++ b/tests/autofixtures/get-donation.yaml @@ -24,6 +24,7 @@ json: receiver: null transient_r_hash: null twitter_account: null + twitter_invoice_tweet_id: null twitter_tweet: null youtube_channel: balance: 0 diff --git a/tests/autofixtures/latest-donations.yaml b/tests/autofixtures/latest-donations.yaml index 71490d32..8f08dbad 100644 --- a/tests/autofixtures/latest-donations.yaml +++ b/tests/autofixtures/latest-donations.yaml @@ -23,6 +23,7 @@ json: receiver: null transient_r_hash: null twitter_account: null + twitter_invoice_tweet_id: null twitter_tweet: null youtube_channel: balance: 20 diff --git a/tests/autofixtures/oauth-flow-github-login-via-oauth-relogin.code b/tests/autofixtures/oauth-flow-github-login-via-oauth-relogin.code deleted file mode 100644 index eca8d904..00000000 --- a/tests/autofixtures/oauth-flow-github-login-via-oauth-relogin.code +++ /dev/null @@ -1 +0,0 @@ -d6991aa5e47c4128492c \ No newline at end of file diff --git a/tests/autofixtures/oauth-flow-github-login-via-oauth.code b/tests/autofixtures/oauth-flow-github-login-via-oauth.code deleted file mode 100644 index ed1bd73e..00000000 --- a/tests/autofixtures/oauth-flow-github-login-via-oauth.code +++ /dev/null @@ -1 +0,0 @@ -d9cdafdcbd3ddc046351 \ No newline at end of file diff --git a/tests/autofixtures/oauth-flow-twitter-login-via-oauth-relogin.code b/tests/autofixtures/oauth-flow-twitter-login-via-oauth-relogin.code deleted file mode 100644 index f7110396..00000000 --- a/tests/autofixtures/oauth-flow-twitter-login-via-oauth-relogin.code +++ /dev/null @@ -1 +0,0 @@ -aEpQYVpPSy0yTUI1YTE5Y0NPbUQ2dGZvTUZKZDlYYjRFNDV3STZfdDdYaE9oOjE2NzUyNTQzODkxOTc6MTowOmFjOjE \ No newline at end of file diff --git a/tests/autofixtures/oauth-flow-twitter-login-via-oauth.code b/tests/autofixtures/oauth-flow-twitter-login-via-oauth.code deleted file mode 100644 index 3e06b96a..00000000 --- a/tests/autofixtures/oauth-flow-twitter-login-via-oauth.code +++ /dev/null @@ -1 +0,0 @@ -cnlyVlpwZ3EyejlISEtVVUo5dENRU1BmS1VMcHQzemNGVmhFQlljaFJMMXl6OjE2NzUyNTQzNzc5NzE6MToxOmFjOjE \ No newline at end of file diff --git a/tests/autofixtures/query-donations.yaml b/tests/autofixtures/query-donations.yaml index a44527d4..b637fc49 100644 --- a/tests/autofixtures/query-donations.yaml +++ b/tests/autofixtures/query-donations.yaml @@ -28,13 +28,14 @@ B+YCAhYWFgAAAA== r_hash: !!python/object/new:donate4fun.types.RequestHash args: - - b'\x85f\xe7\x12\xad\t\x12t\x1b\x8eUC}\x8fLw\xbcv\xf6\xd2\r\xdbq?\xec\xb1\xfc\r*\tW#' + - b'\x95"S\x81\xf6p\xb4\x13Ui\x06\xba\xa5u?\xf0\xbbh\xec\r!\xce0OC\x83\xea"j\xadY\x97' state: data: !!binary | aGFzaA== receiver: null transient_r_hash: null twitter_account: null + twitter_invoice_tweet_id: null twitter_tweet: null youtube_channel: balance: 20 diff --git a/tests/autofixtures/twitter-login-via-oauth1-relogin.code b/tests/autofixtures/twitter-login-via-oauth1-relogin.code deleted file mode 100644 index 7ba64d70..00000000 --- a/tests/autofixtures/twitter-login-via-oauth1-relogin.code +++ /dev/null @@ -1 +0,0 @@ -http://localhost:3000/api/v1/twitter/oauth1-callback?oauth_token=heLTqwAAAAABjBUFAAABhgzxp0o&oauth_verifier=Vl2uK9NtZq8tTOic3tE4OIswwbZaBdBC \ No newline at end of file diff --git a/tests/autofixtures/twitter-login-via-oauth1.code b/tests/autofixtures/twitter-login-via-oauth1.code deleted file mode 100644 index 059df3dc..00000000 --- a/tests/autofixtures/twitter-login-via-oauth1.code +++ /dev/null @@ -1 +0,0 @@ -http://localhost:3000/api/v1/twitter/oauth1-callback?oauth_token=Qp6wTAAAAAABjBUFAAABhgzxe6w&oauth_verifier=iJpFW8OYULSd0OyIdUwrsRFwUxfsL0Y2 \ No newline at end of file diff --git a/tests/autofixtures/twitter_oauth_tokens.yaml b/tests/autofixtures/twitter_oauth_tokens.yaml new file mode 100644 index 00000000..63584053 --- /dev/null +++ b/tests/autofixtures/twitter_oauth_tokens.yaml @@ -0,0 +1,29 @@ +donator_oauth2: !!python/object/new:authlib.oauth2.rfc6749.wrappers.OAuth2Token + dictitems: + access_token: YUFXNnVUQ2MzNU1ZUE5rYXNuQmZmdXUwcnc5TWNaalRTa3E0NGJfcUh6dldYOjE2Nzg1MzA0MzA2MDk6MToxOmF0OjE + expires_at: 1678537627 + expires_in: 7200 + refresh_token: SDl1N1EzdUN3YXBEd0g1bzlDeVNSQVRaRGdwM3RLMDdhckZhSDZjWHFqZlJnOjE2Nzg1MzA0MzA2MDk6MTowOnJ0OjE + scope: tweet.write users.read tweet.read offline.access + token_type: bearer +receiver_oauth2: !!python/object/new:authlib.oauth2.rfc6749.wrappers.OAuth2Token + dictitems: + access_token: cWFGb2NlWnp3d3U2RE5uMF8wZ1NjX0NSOEdzeXk1ck5yRzNIcS1SYXhGRW9VOjE2Nzg1MzA0MjkzMTU6MTowOmF0OjE + expires_at: 1678537627 + expires_in: 7200 + refresh_token: eVBqdmdIdGJTUTBIeTJqMnMwU2xxdW4xSHkyaFRfMHpNSThtaEVpY0pUSGhEOjE2Nzg1MzA0MjkzMTU6MToxOnJ0OjE + scope: tweet.write users.read tweet.read offline.access + token_type: bearer +twitter_mentions_bot_oauth1: + oauth_token: 1616757608299339776-W7WY8bQlKNegG8DrkzKOtLQWtzQTWs + oauth_token_secret: f0WVIUG4VDUXlkI6HlD3OYvyWNg5hP4vQjpSuZCzNJ2ut + screen_name: tip4fun + user_id: '1616757608299339776' +twitter_mentions_bot_oauth2: !!python/object/new:authlib.oauth2.rfc6749.wrappers.OAuth2Token + dictitems: + access_token: YlR0dFk3bkVSUHFRbnhDT1BnSnhTNE5XNXVMekVmVVlvUkF2S3V4NGw4cVBYOjE2Nzg1MzA0Mjk4ODk6MToxOmF0OjE + expires_at: 1678537627 + expires_in: 7200 + refresh_token: cTZWSE9mcGVrY01iWm5QbjY1SnBYVzZsb3cxOFFQZGsxRlBPYTVPOEZxeG5TOjE2Nzg1MzA0Mjk4ODk6MTowOnJ0OjE + scope: offline.access dm.read tweet.write users.read dm.write tweet.read + token_type: bearer diff --git a/tests/cassettes/test_api/test_donation_invoice_api.yaml b/tests/cassettes/test_api/test_donation_invoice_api.yaml new file mode 100644 index 00000000..4c1de3d3 --- /dev/null +++ b/tests/cassettes/test_api/test_donation_invoice_api.yaml @@ -0,0 +1,129 @@ +interactions: +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + grpc-metadata-macaroon: + - secret + host: + - localhost:8081 + user-agent: + - python-httpx/0.23.2 + method: GET + uri: https://localhost:8081/v1/getinfo + response: + content: '{"version": "0.15.1-beta commit=v0.15.1-beta", "commit_hash": "fd1a95bf322cdd1c743a1554f8e470fbf9a5e564", + "identity_pubkey": "03e803ff6eb04880c8c9644bb0acc78e4aceba87b3e4c6db9b6f57bb3f797f29d8", + "alias": "alice", "color": "#3399ff", "num_pending_channels": 0, "num_active_channels": + 2, "num_inactive_channels": 0, "num_peers": 1, "block_height": 148, "block_hash": + "0f3709aa5097d670f3de9766bc69bf7f879a159299e5f1a9f6405ebe6aeea3ed", "best_header_timestamp": + "1678355465", "synced_to_chain": true, "synced_to_graph": true, "testnet": false, + "chains": [{"chain": "bitcoin", "network": "regtest"}], "uris": ["03e803ff6eb04880c8c9644bb0acc78e4aceba87b3e4c6db9b6f57bb3f797f29d8@172.28.0.2:9735"], + "features": {"0": {"name": "data-loss-protect", "is_required": true, "is_known": + true}, "5": {"name": "upfront-shutdown-script", "is_required": false, "is_known": + true}, "7": {"name": "gossip-queries", "is_required": false, "is_known": true}, + "9": {"name": "tlv-onion", "is_required": false, "is_known": true}, "12": {"name": + "static-remote-key", "is_required": true, "is_known": true}, "14": {"name": + "payment-addr", "is_required": true, "is_known": true}, "17": {"name": "multi-path-payments", + "is_required": false, "is_known": true}, "23": {"name": "anchors-zero-fee-htlc-tx", + "is_required": false, "is_known": true}, "27": {"name": "shutdown-any-segwit", + "is_required": false, "is_known": true}, "30": {"name": "amp", "is_required": + true, "is_known": true}, "31": {"name": "amp", "is_required": false, "is_known": + true}, "45": {"name": "explicit-commitment-type", "is_required": false, "is_known": + true}, "2023": {"name": "script-enforced-lease", "is_required": false, "is_known": + true}}, "require_htlc_interceptor": false}' + headers: + Content-Length: + - '1589' + Content-Type: + - application/json + Date: + - Thu, 09 Mar 2023 10:05:50 GMT + Grpc-Metadata-Content-Type: + - application/grpc + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '{"memo": "Donate4.fun to asdzxc", "value": 100, "expiry": 3600, "private": + true}' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '80' + content-type: + - application/json + grpc-metadata-macaroon: + - secret + host: + - localhost:8081 + user-agent: + - python-httpx/0.23.2 + method: POST + uri: https://localhost:8081/v1/invoices + response: + content: '{"r_hash": "vweYet1l4nWO9U6XvSlAqksCiwcSibvJZ5MAPc9jqN8=", "payment_request": + "lnbcrt1u1pjqntm7pp5hures7kavh38trh4f6tm622q4f9s9zc8z2ymhjt8jvqrmnmr4r0sdpzg3hkuct5v56zuen4dcs8gmeqv9ekg7ncvvcqzpgxqrrsssp57ktsneen7pfeenq2s8sqyg2gdwwruxqfzzsywgvupcq0a324c4vs9qyyssqtdkgurvf9uqdfulydenxglcnl6tqpp4qvljel68kx7zm6jmutj7sqjzay4z33rfjlhxa07slg2ptx2ua39nwynj04rv9n46778azhucqs59wmu", + "add_index": "268", "payment_addr": "9ZcJ5zPwU5zMCoHgAiFIa5w+GAkQoEchnA4A/sVVxVk="}' + headers: + Content-Length: + - '449' + Content-Type: + - application/json + Date: + - Thu, 09 Mar 2023 10:05:50 GMT + Grpc-Metadata-Content-Type: + - application/grpc + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + grpc-metadata-macaroon: + - secret + host: + - localhost:8081 + user-agent: + - python-httpx/0.23.2 + method: GET + uri: https://localhost:8081/v1/invoice/bf07987add65e2758ef54e97bd2940aa4b028b071289bbc96793003dcf63a8df + response: + content: '{"memo": "Donate4.fun to asdzxc", "r_preimage": "adLJyOGyRa9w6iX2pXw90HhT5ppzQ3B/nuY7n3c6gp4=", + "r_hash": "vweYet1l4nWO9U6XvSlAqksCiwcSibvJZ5MAPc9jqN8=", "value": "100", "value_msat": + "100000", "settled": false, "creation_date": "1678356350", "settle_date": "0", + "payment_request": "lnbcrt1u1pjqntm7pp5hures7kavh38trh4f6tm622q4f9s9zc8z2ymhjt8jvqrmnmr4r0sdpzg3hkuct5v56zuen4dcs8gmeqv9ekg7ncvvcqzpgxqrrsssp57ktsneen7pfeenq2s8sqyg2gdwwruxqfzzsywgvupcq0a324c4vs9qyyssqtdkgurvf9uqdfulydenxglcnl6tqpp4qvljel68kx7zm6jmutj7sqjzay4z33rfjlhxa07slg2ptx2ua39nwynj04rv9n46778azhucqs59wmu", + "description_hash": "", "expiry": "3600", "fallback_addr": "", "cltv_expiry": + "40", "route_hints": [], "private": false, "add_index": "268", "settle_index": + "0", "amt_paid": "0", "amt_paid_sat": "0", "amt_paid_msat": "0", "state": "OPEN", + "htlcs": [], "features": {"9": {"name": "tlv-onion", "is_required": false, "is_known": + true}, "14": {"name": "payment-addr", "is_required": true, "is_known": true}, + "17": {"name": "multi-path-payments", "is_required": false, "is_known": true}}, + "is_keysend": false, "payment_addr": "9ZcJ5zPwU5zMCoHgAiFIa5w+GAkQoEchnA4A/sVVxVk=", + "is_amp": false, "amp_invoice_state": {}}' + headers: + Content-Length: + - '1114' + Content-Type: + - application/json + Date: + - Thu, 09 Mar 2023 10:05:50 GMT + Grpc-Metadata-Content-Type: + - application/grpc + http_version: HTTP/1.1 + status_code: 200 +version: 1 diff --git a/tests/cassettes/test_github/test_login_via_oauth[-donator-me].yaml b/tests/cassettes/test_github/test_login_via_oauth[-donator-me].yaml index ddb9e723..b8e5a4a0 100644 --- a/tests/cassettes/test_github/test_login_via_oauth[-donator-me].yaml +++ b/tests/cassettes/test_github/test_login_via_oauth[-donator-me].yaml @@ -1,7 +1,20 @@ interactions: +- request: + body: '' + headers: + name: + - github-login-via-oauth + prompt: + - 'Open this url, authorize and paste url after redirect here:' + method: GET + uri: https://github.com/login/oauth/authorize?allow_signup=False&client_id=Iv1.47885cc7f2eb65ae&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fapi%2Fv1%2Foauth-redirect%2Fgithub&state=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWNjZXNzX3BhdGgiOiIvZG9uYXRvci9tZSIsImVycm9yX3BhdGgiOiIiLCJkb25hdG9yX2lkIjoiMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAwIiwiYWxsb3dfc2lnbl9pbiI6dHJ1ZSwiY29kZV92ZXJpZmllciI6bnVsbCwiZXhwZWN0ZWRfYWNjb3VudCI6bnVsbCwiaWF0IjoxNjQzODQwNTQyLCJuYmYiOjE2NDM4NDA1NDIsImV4cCI6MTY0Mzg0MTE0Mn0.KpamaqgTwhRLGtU6d7G33t3Nq2y2Q-25HM4n_dj45kU + response: + headers: + location: http://localhost:3000/api/v1/oauth-redirect/github?code=8cddbd0eab2916876df5&state=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWNjZXNzX3BhdGgiOiIvZG9uYXRvci9tZSIsImVycm9yX3BhdGgiOiIiLCJkb25hdG9yX2lkIjoiMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAwIiwiYWxsb3dfc2lnbl9pbiI6dHJ1ZSwiY29kZV92ZXJpZmllciI6bnVsbCwiZXhwZWN0ZWRfYWNjb3VudCI6bnVsbCwiaWF0IjoxNjQzODQwNTQyLCJuYmYiOjE2NDM4NDA1NDIsImV4cCI6MTY0Mzg0MTE0Mn0.KpamaqgTwhRLGtU6d7G33t3Nq2y2Q-25HM4n_dj45kU + status_code: 307 - request: body: '{"client_id": "Iv1.47885cc7f2eb65ae", "client_secret": "secret", "code": - "d9cdafdcbd3ddc046351", "redirect_uri": "http://localhost:3000/api/v1/oauth-redirect/github"}' + "8cddbd0eab2916876df5", "redirect_uri": "http://localhost:3000/api/v1/oauth-redirect/github"}' headers: accept: - application/json @@ -21,7 +34,7 @@ interactions: uri: https://github.com/login/oauth/access_token response: content: '{"access_token": "secret", "expires_in": 28800, "refresh_token": "secret", - "refresh_token_expires_in": 15638399, "token_type": "bearer", "scope": ""}' + "refresh_token_expires_in": 15897600, "token_type": "bearer", "scope": ""}' headers: cache-control: - max-age=0, private, must-revalidate @@ -34,7 +47,10 @@ interactions: collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com cdn.optimizely.com logx.optimizely.com/v1/events - *.actions.githubusercontent.com wss://*.actions.githubusercontent.com online.visualstudio.com/api/v1/locations + *.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ + productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ + productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ + wss://*.actions.githubusercontent.com online.visualstudio.com/api/v1/locations github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com; font-src github.githubassets.com; form-action ''self'' github.com gist.github.com objects-origin.githubusercontent.com; @@ -42,18 +58,19 @@ interactions: img-src ''self'' data: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com objects-origin.githubusercontent.com - secured-user-images.githubusercontent.com/ opengraph.githubassets.com github-production-user-asset-6210df.s3.amazonaws.com + secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ + private-user-images.githubusercontent.com opengraph.githubassets.com github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com *.githubusercontent.com; manifest-src ''self''; media-src github.com user-images.githubusercontent.com/ - secured-user-images.githubusercontent.com/; script-src github.githubassets.com; - style-src ''unsafe-inline'' github.githubassets.com; worker-src github.com/assets-cdn/worker/ - gist.github.com/assets-cdn/worker/' + secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com; + script-src github.githubassets.com; style-src ''unsafe-inline'' github.githubassets.com; + worker-src github.com/assets-cdn/worker/ gist.github.com/assets-cdn/worker/' content-type: - application/json; charset=utf-8 date: - - Wed, 01 Feb 2023 12:10:04 GMT + - Sat, 11 Mar 2023 17:21:04 GMT etag: - - W/"09a8f0a82d6c0d1565be0cdbe49f0c1b" + - W/"14294b495460f1e8e41ed23bc68b1190" referrer-policy: - origin-when-cross-origin, strict-origin-when-cross-origin server: @@ -68,7 +85,7 @@ interactions: x-frame-options: - deny x-github-request-id: - - E572:ECA6:53E9A70:56CD7B1:63DA569B + - BE22:0F84:A0302C4:A568500:640CB880 x-xss-protection: - '0' http_version: HTTP/2 @@ -104,8 +121,8 @@ interactions: false, "name": "Nikolay Bryskin", "company": "Donate4.Fun", "blog": "https://donate4.fun", "location": "Vilnius", "email": "nbryskin@gmail.com", "hireable": true, "bio": "Full-stack developer, CTO, Donate4.Fun founder.", "twitter_username": "nbryskin", - "public_repos": 144, "public_gists": 17, "followers": 142, "following": 155, - "created_at": "2010-07-12T06:33:15Z", "updated_at": "2023-01-23T12:50:25Z"}' + "public_repos": 147, "public_gists": 17, "followers": 145, "following": 172, + "created_at": "2010-07-12T06:33:15Z", "updated_at": "2023-02-24T12:49:38Z"}' headers: access-control-allow-origin: - '*' @@ -123,13 +140,13 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Wed, 01 Feb 2023 12:10:04 GMT + - Sat, 11 Mar 2023 17:21:05 GMT etag: - - W/"5604e7bdff1891945b3ef0dec1efa13faf6383fedae86c5687de7edc5fbc540f" + - W/"215e5c63e587e014c5439db83d62fef7eee01c6a74daa258e00f2230223383e9" github-authentication-token-expiration: - - 2023-02-01 20:10:03 UTC + - 2023-03-12 01:21:04 UTC last-modified: - - Mon, 23 Jan 2023 12:50:25 GMT + - Fri, 24 Feb 2023 12:49:38 GMT referrer-policy: - origin-when-cross-origin, strict-origin-when-cross-origin server: @@ -150,7 +167,7 @@ interactions: x-github-media-type: - github.v3 x-github-request-id: - - BA34:7D39:10E4C55:112DD16:63DA569C + - 8D8E:85CC:63EE8BD:657CA3E:640CB880 x-oauth-client-id: - Iv1.47885cc7f2eb65ae x-oauth-scopes: @@ -158,20 +175,33 @@ interactions: x-ratelimit-limit: - '5000' x-ratelimit-remaining: - - '4993' + - '4999' x-ratelimit-reset: - - '1675256086' + - '1678558865' x-ratelimit-resource: - core x-ratelimit-used: - - '7' + - '1' x-xss-protection: - '0' http_version: HTTP/2 status_code: 200 +- request: + body: '' + headers: + name: + - github-login-via-oauth-relogin + prompt: + - 'Open this url, authorize and paste url after redirect here:' + method: GET + uri: https://github.com/login/oauth/authorize?allow_signup=False&client_id=Iv1.47885cc7f2eb65ae&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fapi%2Fv1%2Foauth-redirect%2Fgithub&state=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWNjZXNzX3BhdGgiOiIvZG9uYXRvci9tZSIsImVycm9yX3BhdGgiOiIiLCJkb25hdG9yX2lkIjoiMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAxIiwiYWxsb3dfc2lnbl9pbiI6dHJ1ZSwiY29kZV92ZXJpZmllciI6bnVsbCwiZXhwZWN0ZWRfYWNjb3VudCI6bnVsbCwiaWF0IjoxNjQzODQwNTQyLCJuYmYiOjE2NDM4NDA1NDIsImV4cCI6MTY0Mzg0MTE0Mn0.mSOtmjAsoxrsI5KNeUqU0l97MUa43mIUn0od12Upqz0 + response: + headers: + location: http://localhost:3000/api/v1/oauth-redirect/github?code=b8b79ceafd3d0093655d&state=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWNjZXNzX3BhdGgiOiIvZG9uYXRvci9tZSIsImVycm9yX3BhdGgiOiIiLCJkb25hdG9yX2lkIjoiMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAxIiwiYWxsb3dfc2lnbl9pbiI6dHJ1ZSwiY29kZV92ZXJpZmllciI6bnVsbCwiZXhwZWN0ZWRfYWNjb3VudCI6bnVsbCwiaWF0IjoxNjQzODQwNTQyLCJuYmYiOjE2NDM4NDA1NDIsImV4cCI6MTY0Mzg0MTE0Mn0.mSOtmjAsoxrsI5KNeUqU0l97MUa43mIUn0od12Upqz0 + status_code: 307 - request: body: '{"client_id": "Iv1.47885cc7f2eb65ae", "client_secret": "secret", "code": - "d6991aa5e47c4128492c", "redirect_uri": "http://localhost:3000/api/v1/oauth-redirect/github"}' + "b8b79ceafd3d0093655d", "redirect_uri": "http://localhost:3000/api/v1/oauth-redirect/github"}' headers: accept: - application/json @@ -191,7 +221,7 @@ interactions: uri: https://github.com/login/oauth/access_token response: content: '{"access_token": "secret", "expires_in": 28800, "refresh_token": "secret", - "refresh_token_expires_in": 15638400, "token_type": "bearer", "scope": ""}' + "refresh_token_expires_in": 15897600, "token_type": "bearer", "scope": ""}' headers: cache-control: - max-age=0, private, must-revalidate @@ -204,7 +234,10 @@ interactions: collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com cdn.optimizely.com logx.optimizely.com/v1/events - *.actions.githubusercontent.com wss://*.actions.githubusercontent.com online.visualstudio.com/api/v1/locations + *.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ + productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ + productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ + wss://*.actions.githubusercontent.com online.visualstudio.com/api/v1/locations github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com; font-src github.githubassets.com; form-action ''self'' github.com gist.github.com objects-origin.githubusercontent.com; @@ -212,18 +245,19 @@ interactions: img-src ''self'' data: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com objects-origin.githubusercontent.com - secured-user-images.githubusercontent.com/ opengraph.githubassets.com github-production-user-asset-6210df.s3.amazonaws.com + secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ + private-user-images.githubusercontent.com opengraph.githubassets.com github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com *.githubusercontent.com; manifest-src ''self''; media-src github.com user-images.githubusercontent.com/ - secured-user-images.githubusercontent.com/; script-src github.githubassets.com; - style-src ''unsafe-inline'' github.githubassets.com; worker-src github.com/assets-cdn/worker/ - gist.github.com/assets-cdn/worker/' + secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com; + script-src github.githubassets.com; style-src ''unsafe-inline'' github.githubassets.com; + worker-src github.com/assets-cdn/worker/ gist.github.com/assets-cdn/worker/' content-type: - application/json; charset=utf-8 date: - - Wed, 01 Feb 2023 12:10:09 GMT + - Sat, 11 Mar 2023 17:21:10 GMT etag: - - W/"b5f271eaa3b91e65bce39350fca95434" + - W/"0cc23541331c9ef0928591691b3bd10d" referrer-policy: - origin-when-cross-origin, strict-origin-when-cross-origin server: @@ -238,7 +272,7 @@ interactions: x-frame-options: - deny x-github-request-id: - - E57E:7909:5402EAA:56E6B78:63DA56A1 + - BE26:12398:4BE114F:4EAB556:640CB886 x-xss-protection: - '0' http_version: HTTP/2 @@ -274,8 +308,8 @@ interactions: false, "name": "Nikolay Bryskin", "company": "Donate4.Fun", "blog": "https://donate4.fun", "location": "Vilnius", "email": "nbryskin@gmail.com", "hireable": true, "bio": "Full-stack developer, CTO, Donate4.Fun founder.", "twitter_username": "nbryskin", - "public_repos": 144, "public_gists": 17, "followers": 142, "following": 155, - "created_at": "2010-07-12T06:33:15Z", "updated_at": "2023-01-23T12:50:25Z"}' + "public_repos": 147, "public_gists": 17, "followers": 145, "following": 172, + "created_at": "2010-07-12T06:33:15Z", "updated_at": "2023-02-24T12:49:38Z"}' headers: access-control-allow-origin: - '*' @@ -293,13 +327,13 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Wed, 01 Feb 2023 12:10:09 GMT + - Sat, 11 Mar 2023 17:21:10 GMT etag: - - W/"8335c28629cc0d13df81568b82a8a00b2579e59ef36bf48d110cec5eaf3d4b4a" + - W/"4db0c2a966ccaa0770ed090ce93dbc4b60516317ad53cdb6100d97734576e359" github-authentication-token-expiration: - - 2023-02-01 20:10:09 UTC + - 2023-03-12 01:21:10 UTC last-modified: - - Mon, 23 Jan 2023 12:50:25 GMT + - Fri, 24 Feb 2023 12:49:38 GMT referrer-policy: - origin-when-cross-origin, strict-origin-when-cross-origin server: @@ -320,7 +354,7 @@ interactions: x-github-media-type: - github.v3 x-github-request-id: - - BA3A:DA0E:22D38CC:237EA22:63DA56A1 + - 8D9E:E4F4:FFE4E7C:103CE12A:640CB886 x-oauth-client-id: - Iv1.47885cc7f2eb65ae x-oauth-scopes: @@ -328,13 +362,13 @@ interactions: x-ratelimit-limit: - '5000' x-ratelimit-remaining: - - '4992' + - '4998' x-ratelimit-reset: - - '1675256086' + - '1678558865' x-ratelimit-resource: - core x-ratelimit-used: - - '8' + - '2' x-xss-protection: - '0' http_version: HTTP/2 diff --git a/tests/cassettes/test_twitter/test_donate_author.yaml b/tests/cassettes/test_twitter/test_donate_author.yaml index 72ece421..2a2a2f2c 100644 --- a/tests/cassettes/test_twitter/test_donate_author.yaml +++ b/tests/cassettes/test_twitter/test_donate_author.yaml @@ -17,16 +17,15 @@ interactions: method: GET uri: https://api.twitter.com/2/users/by/username/donate4_fun?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities response: - content: '{"data": {"entities": {"url": {"urls": [{"start": 0, "end": 23, "url": - "https://t.co/xu5wqhAwa7", "expanded_url": "https://donate4.fun/", "display_url": - "donate4.fun"}]}, "description": {"hashtags": [{"start": 15, "end": 23, "tag": - "Bitcoin"}, {"start": 24, "end": 41, "tag": "LightningNetwork"}], "mentions": - [{"start": 78, "end": 88, "username": "Novaklim1"}, {"start": 93, "end": 102, - "username": "nbryskin"}]}}, "name": "Donate4.Fun \u26a1", "id": "1572908920485576704", - "profile_image_url": "https://pbs.twimg.com/profile_images/1574697734535348224/dzdW0yfs_normal.png", - "verified": false, "username": "donate4_fun", "description": "Donations with - #Bitcoin #LightningNetwork on Twitter and Youtube. \nCreated by @Novaklim1 and - @nbryskin."}}' + content: '{"data": {"id": "1572908920485576704", "entities": {"url": {"urls": + [{"start": 0, "end": 23, "url": "https://t.co/xu5wqhAwa7", "expanded_url": "https://donate4.fun/", + "display_url": "donate4.fun"}]}, "description": {"hashtags": [{"start": 15, + "end": 23, "tag": "Bitcoin"}, {"start": 24, "end": 41, "tag": "LightningNetwork"}], + "mentions": [{"start": 78, "end": 88, "username": "Novaklim1"}, {"start": 93, + "end": 102, "username": "nbryskin"}]}}, "name": "Donate4.Fun \u26a1", "description": + "Donations with #Bitcoin #LightningNetwork on Twitter and Youtube. \nCreated + by @Novaklim1 and @nbryskin.", "profile_image_url": "https://pbs.twimg.com/profile_images/1574697734535348224/dzdW0yfs_normal.png", + "username": "donate4_fun", "verified": false}}' headers: api-version: - '2.61' @@ -37,24 +36,24 @@ interactions: content-encoding: - gzip content-length: - - '416' + - '415' content-type: - application/json; charset=utf-8 date: - - Wed, 01 Feb 2023 12:26:06 UTC + - Mon, 06 Mar 2023 19:58:49 UTC perf: - '7626143928' server: - tsa_o set-cookie: - - guest_id=v1%3A167525436606720983; Max-Age=34214400; Expires=Sun, 03 Mar 2024 - 12:26:06 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167813272938806083; Max-Age=34214400; Expires=Fri, 05 Apr 2024 + 19:58:49 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None strict-transport-security: - max-age=631138519 x-access-level: - read x-connection-hash: - - 58f091b252efc6cee0a7ad126bf871af8a2a91fee8b45d287f3dbfe6941905a6 + - defc58d5616c23163f5d3d61fb0b5190beed765edbaffc7df1e09c6fe522e6fd x-content-type-options: - nosniff x-frame-options: @@ -62,13 +61,13 @@ interactions: x-rate-limit-limit: - '300' x-rate-limit-remaining: - - '279' + - '299' x-rate-limit-reset: - - '1675254515' + - '1678133629' x-response-time: - - '143' + - '141' x-transaction-id: - - 2dff2d0eb61a2c8e + - cd293f58733140ef x-xss-protection: - '0' http_version: HTTP/1.1 diff --git a/tests/cassettes/test_twitter/test_donate_to_lightning_address[sondreb@ln.tips].yaml b/tests/cassettes/test_twitter/test_donate_to_lightning_address[sondreb@ln.tips].yaml index 9e229873..e41e022f 100644 --- a/tests/cassettes/test_twitter/test_donate_to_lightning_address[sondreb@ln.tips].yaml +++ b/tests/cassettes/test_twitter/test_donate_to_lightning_address[sondreb@ln.tips].yaml @@ -17,15 +17,15 @@ interactions: method: GET uri: https://api.twitter.com/2/users/by/username/donate4_fun?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities response: - content: '{"data": {"name": "Donate4.Fun \u26a1", "entities": {"url": {"urls": - [{"start": 0, "end": 23, "url": "https://t.co/xu5wqhAwa7", "expanded_url": "https://donate4.fun/", - "display_url": "donate4.fun"}]}, "description": {"hashtags": [{"start": 15, - "end": 23, "tag": "Bitcoin"}, {"start": 24, "end": 41, "tag": "LightningNetwork"}], - "mentions": [{"start": 78, "end": 88, "username": "Novaklim1"}, {"start": 93, - "end": 102, "username": "nbryskin"}]}}, "username": "donate4_fun", "verified": - false, "profile_image_url": "https://pbs.twimg.com/profile_images/1574697734535348224/dzdW0yfs_normal.png", + content: '{"data": {"entities": {"url": {"urls": [{"start": 0, "end": 23, "url": + "https://t.co/xu5wqhAwa7", "expanded_url": "https://donate4.fun/", "display_url": + "donate4.fun"}]}, "description": {"hashtags": [{"start": 15, "end": 23, "tag": + "Bitcoin"}, {"start": 24, "end": 41, "tag": "LightningNetwork"}], "mentions": + [{"start": 78, "end": 88, "username": "Novaklim1"}, {"start": 93, "end": 102, + "username": "nbryskin"}]}}, "name": "Donate4.Fun \u26a1", "verified": false, "description": "Donations with #Bitcoin #LightningNetwork on Twitter and Youtube. - \nCreated by @Novaklim1 and @nbryskin.", "id": "1572908920485576704"}}' + \nCreated by @Novaklim1 and @nbryskin.", "profile_image_url": "https://pbs.twimg.com/profile_images/1574697734535348224/dzdW0yfs_normal.png", + "username": "donate4_fun", "id": "1572908920485576704"}}' headers: api-version: - '2.61' @@ -40,20 +40,20 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Wed, 01 Feb 2023 12:26:13 UTC + - Mon, 06 Mar 2023 19:59:01 UTC perf: - '7626143928' server: - tsa_o set-cookie: - - guest_id=v1%3A167525437338744298; Max-Age=34214400; Expires=Sun, 03 Mar 2024 - 12:26:13 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167813274192109962; Max-Age=34214400; Expires=Fri, 05 Apr 2024 + 19:59:01 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None strict-transport-security: - max-age=631138519 x-access-level: - read x-connection-hash: - - 4b975e7870429ee4a88348852f1d7a7331722241c3f2f42a6d985317af8ec0f8 + - 33224d8b79f88d7d9f6d23cb6a93832435a53f51257d697b97a92989b8dd8b46 x-content-type-options: - nosniff x-frame-options: @@ -61,13 +61,13 @@ interactions: x-rate-limit-limit: - '300' x-rate-limit-remaining: - - '275' + - '295' x-rate-limit-reset: - - '1675254515' + - '1678133629' x-response-time: - - '129' + - '154' x-transaction-id: - - 377c1d0e2a47426d + - 6bd62a9279e198a3 x-xss-protection: - '0' http_version: HTTP/1.1 diff --git a/tests/cassettes/test_twitter/test_donate_tweet.yaml b/tests/cassettes/test_twitter/test_donate_tweet.yaml index c5ea09d7..992ab871 100644 --- a/tests/cassettes/test_twitter/test_donate_tweet.yaml +++ b/tests/cassettes/test_twitter/test_donate_tweet.yaml @@ -22,11 +22,10 @@ interactions: "donate4.fun"}]}, "description": {"hashtags": [{"start": 15, "end": 23, "tag": "Bitcoin"}, {"start": 24, "end": 41, "tag": "LightningNetwork"}], "mentions": [{"start": 78, "end": 88, "username": "Novaklim1"}, {"start": 93, "end": 102, - "username": "nbryskin"}]}}, "id": "1572908920485576704", "profile_image_url": - "https://pbs.twimg.com/profile_images/1574697734535348224/dzdW0yfs_normal.png", + "username": "nbryskin"}]}}, "verified": false, "profile_image_url": "https://pbs.twimg.com/profile_images/1574697734535348224/dzdW0yfs_normal.png", + "username": "donate4_fun", "name": "Donate4.Fun \u26a1", "id": "1572908920485576704", "description": "Donations with #Bitcoin #LightningNetwork on Twitter and Youtube. - \nCreated by @Novaklim1 and @nbryskin.", "username": "donate4_fun", "verified": - false, "name": "Donate4.Fun \u26a1"}}' + \nCreated by @Novaklim1 and @nbryskin."}}' headers: api-version: - '2.61' @@ -37,24 +36,24 @@ interactions: content-encoding: - gzip content-length: - - '416' + - '415' content-type: - application/json; charset=utf-8 date: - - Wed, 01 Feb 2023 12:26:06 UTC + - Mon, 06 Mar 2023 19:58:50 UTC perf: - '7626143928' server: - tsa_o set-cookie: - - guest_id=v1%3A167525436694755865; Max-Age=34214400; Expires=Sun, 03 Mar 2024 - 12:26:06 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167813273057705755; Max-Age=34214400; Expires=Fri, 05 Apr 2024 + 19:58:50 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None strict-transport-security: - max-age=631138519 x-access-level: - read x-connection-hash: - - 27e1982a2f86f1a30c4f6899c62fb8b5b112007ca1e9e6e78bd8f772b4db1ef6 + - c3fa7871efd712ef1daff55a3122d429e44b4c85d90a2ffa002851eabf74dc67 x-content-type-options: - nosniff x-frame-options: @@ -62,13 +61,13 @@ interactions: x-rate-limit-limit: - '300' x-rate-limit-remaining: - - '278' + - '298' x-rate-limit-reset: - - '1675254515' + - '1678133629' x-response-time: - - '134' + - '135' x-transaction-id: - - e640170dac4f8b1a + - 201c822870d8c057 x-xss-protection: - '0' http_version: HTTP/1.1 diff --git a/tests/cassettes/test_twitter/test_donate_via_mention.yaml b/tests/cassettes/test_twitter/test_donate_via_mention.yaml new file mode 100644 index 00000000..6b30bb90 --- /dev/null +++ b/tests/cassettes/test_twitter/test_donate_via_mention.yaml @@ -0,0 +1,1590 @@ +interactions: +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + cookie: + - guest_id=v1%3A167853042929983025 + host: + - api.twitter.com + user-agent: + - python-httpx/0.23.2 + method: GET + uri: https://api.twitter.com/2/tweets/search/recent?query=from%3ABryskin2 + response: + content: '{"data": [{"edit_history_tweet_ids": ["1632746551872241674"], "id": + "1632746551872241674", "text": "some text that need to be changed each time + to avoid\n \"You are not allowed to create a Tweet with duplicate content.\" + error"}, {"edit_history_tweet_ids": ["1632723898797047808"], "id": "1632723898797047808", + "text": "@gunsnrosesgirl3 It''s easy - the probability of nails and box becoming + aligned is much higher than losing alignment. That''s it."}, {"edit_history_tweet_ids": + ["1632551788543868933"], "id": "1632551788543868933", "text": "some text that + need to be changed each time to avoid\n \"You are not allowed to create + a Tweet with duplicate content.\" error"}, {"edit_history_tweet_ids": ["1632550826160914432"], + "id": "1632550826160914432", "text": "some text"}], "meta": {"newest_id": "1632746551872241674", + "oldest_id": "1632550826160914432", "result_count": 4}}' + headers: + api-version: + - '2.61' + cache-control: + - no-cache, no-store, max-age=0 + content-disposition: + - attachment; filename=json.json + content-encoding: + - gzip + content-length: + - '367' + content-type: + - application/json; charset=utf-8 + date: + - Sat, 11 Mar 2023 10:27:09 UTC + perf: + - '7626143928' + server: + - tsa_o + strict-transport-security: + - max-age=631138519 + x-access-level: + - read-write + x-connection-hash: + - 42977f4625036e26500af3681204be76e788cb1306f85221af0495719ac16cb7 + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-rate-limit-limit: + - '180' + x-rate-limit-remaining: + - '179' + x-rate-limit-reset: + - '1678531329' + x-response-time: + - '174' + x-transaction-id: + - 86a452f4899cfa98 + x-xss-protection: + - '0' + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + cookie: + - guest_id=v1%3A167853042987578252 + host: + - api.twitter.com + user-agent: + - python-httpx/0.23.2 + method: GET + uri: https://api.twitter.com/2/users/me?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities + response: + content: '{"data": {"verified": false, "profile_image_url": "https://pbs.twimg.com/profile_images/1624461699909574663/ko3M0TUK_normal.jpg", + "entities": {"url": {"urls": [{"start": 0, "end": 23, "url": "https://t.co/jkmQZP2YbL", + "expanded_url": "https://donate4.fun", "display_url": "donate4.fun"}]}, "description": + {"mentions": [{"start": 59, "end": 71, "username": "donate4_fun"}]}}, "username": + "tip4fun", "description": "Bitcoin Lightning tips - mention me to send a tip. + Part of @donate4_fun service.", "id": "1616757608299339776", "name": "Tip4Fun"}}' + headers: + api-version: + - '2.61' + cache-control: + - no-cache, no-store, max-age=0 + content-disposition: + - attachment; filename=json.json + content-encoding: + - gzip + content-length: + - '332' + content-type: + - application/json; charset=utf-8 + date: + - Sat, 11 Mar 2023 10:27:10 UTC + perf: + - '7626143928' + server: + - tsa_o + strict-transport-security: + - max-age=631138519 + x-access-level: + - read-write-directmessages + x-connection-hash: + - 22942acade8c994800cb752383253715c20faa7b9ae77b32329b65a4773d207a + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-rate-limit-limit: + - '75' + x-rate-limit-remaining: + - '74' + x-rate-limit-reset: + - '1678531330' + x-response-time: + - '148' + x-transaction-id: + - ed6c47c053efa9ab + x-xss-protection: + - '0' + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + authorization: + - secret + connection: + - keep-alive + host: + - api.twitter.com + user-agent: + - python-httpx/0.23.2 + method: GET + uri: https://api.twitter.com/2/tweets/search/stream/rules + response: + content: '{"data": [{"id": "1632814729667268614", "value": "@tip4fun is:reply + -from:tip4fun"}], "meta": {"sent": "2023-03-11T10:27:11.387Z", "result_count": + 1}}' + headers: + cache-control: + - no-cache, no-store, max-age=0 + content-disposition: + - attachment; filename=json.json + content-encoding: + - gzip + content-length: + - '148' + content-type: + - application/json; charset=utf-8 + date: + - Sat, 11 Mar 2023 10:27:11 UTC + perf: + - '7626143928' + server: + - tsa_o + set-cookie: + - guest_id=v1%3A167853043136461771; Max-Age=34214400; Expires=Wed, 10 Apr 2024 + 10:27:11 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + strict-transport-security: + - max-age=631138519 + x-access-level: + - read + x-connection-hash: + - b67ef1d5884841127fbe5ed17bb349f10dd7594568e8e23ca00a437c05c19f96 + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-rate-limit-limit: + - '450' + x-rate-limit-remaining: + - '449' + x-rate-limit-reset: + - '1678531331' + x-response-time: + - '134' + x-transaction-id: + - 22d2cce356075b11 + x-xss-protection: + - '0' + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + authorization: + - secret + connection: + - keep-alive + cookie: + - guest_id=v1%3A167853043136461771 + host: + - api.twitter.com + user-agent: + - python-httpx/0.23.2 + method: GET + uri: https://api.twitter.com/2/tweets/search/stream?tweet.fields=created_at%2Cattachments%2Cauthor_id%2Ccontext_annotations%2Cconversation_id%2Centities%2Csource%2Ctext%2Creferenced_tweets%2Cid%2Cin_reply_to_user_id&expansions=author_id%2Creferenced_tweets.id%2Cin_reply_to_user_id%2Creferenced_tweets.id.author_id + response: + content: "{\"data\":{\"attachments\":{},\"author_id\":\"1616845331353993217\",\"conversation_id\":\"1632746551872241674\",\"created_at\":\"2023-03-11T10:27:12.000Z\",\"edit_history_tweet_ids\":[\"1634501216167231490\"],\"entities\":{\"mentions\":[{\"start\":0,\"end\":9,\"username\":\"Bryskin2\",\"id\":\"1591008723912343553\"},{\"start\":10,\"end\":18,\"username\":\"tip4fun\",\"id\":\"1616757608299339776\"}]},\"id\":\"1634501216167231490\",\"in_reply_to_user_id\":\"1591008723912343553\",\"referenced_tweets\":[{\"type\":\"replied_to\",\"id\":\"1632746551872241674\"}],\"text\":\"@Bryskin2 + @tip4fun 100 sats for this sir 1678530427.869123\"},\"includes\":{\"users\":[{\"id\":\"1616845331353993217\",\"name\":\"lntip\",\"username\":\"btclntip\"},{\"id\":\"1591008723912343553\",\"name\":\"Nikolay + Bryskin\",\"username\":\"Bryskin2\"},{\"id\":\"1616757608299339776\",\"name\":\"Tip4Fun\",\"username\":\"tip4fun\"}],\"tweets\":[{\"attachments\":{},\"author_id\":\"1616845331353993217\",\"conversation_id\":\"1632746551872241674\",\"created_at\":\"2023-03-11T10:27:12.000Z\",\"edit_history_tweet_ids\":[\"1634501216167231490\"],\"entities\":{\"mentions\":[{\"start\":0,\"end\":9,\"username\":\"Bryskin2\",\"id\":\"1591008723912343553\"},{\"start\":10,\"end\":18,\"username\":\"tip4fun\",\"id\":\"1616757608299339776\"}]},\"id\":\"1634501216167231490\",\"in_reply_to_user_id\":\"1591008723912343553\",\"referenced_tweets\":[{\"type\":\"replied_to\",\"id\":\"1632746551872241674\"}],\"text\":\"@Bryskin2 + @tip4fun 100 sats for this sir 1678530427.869123\"},{\"attachments\":{},\"author_id\":\"1591008723912343553\",\"context_annotations\":[{\"domain\":{\"id\":\"30\",\"name\":\"Entities + [Entity Service]\",\"description\":\"Entity Service top level domain, every + item that is in Entity Service should be in this domain\"},\"entity\":{\"id\":\"781974596752842752\",\"name\":\"Services\"}},{\"domain\":{\"id\":\"47\",\"name\":\"Brand\",\"description\":\"Brands + and Companies\"},\"entity\":{\"id\":\"10045225402\",\"name\":\"Twitter\"}}],\"conversation_id\":\"1632746551872241674\",\"created_at\":\"2023-03-06T14:14:47.000Z\",\"edit_history_tweet_ids\":[\"1632746551872241674\"],\"entities\":{},\"id\":\"1632746551872241674\",\"text\":\"some + text that need to be changed each time to avoid\\n \\\"You are not allowed + to create a Tweet with duplicate content.\\\" error\"}]},\"matching_rules\":[{\"id\":\"1632814729667268614\",\"tag\":\"\"}]}\r\n" + headers: + cache-control: + - no-cache, no-store, max-age=0 + content-encoding: + - gzip + date: + - Sat, 11 Mar 2023 10:27:11 UTC + perf: + - '7626143928' + server: + - tsa_o + strict-transport-security: + - max-age=631138519 + transfer-encoding: + - chunked + x-access-level: + - read + x-connection-hash: + - b67ef1d5884841127fbe5ed17bb349f10dd7594568e8e23ca00a437c05c19f96 + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-rate-limit-limit: + - '50' + x-rate-limit-remaining: + - '49' + x-rate-limit-reset: + - '1678531331' + x-response-time: + - '189' + x-transaction-id: + - 991f96dd25ae3310 + x-xss-protection: + - '0' + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '{"reply": {"in_reply_to_tweet_id": "1632746551872241674"}, "text": "@tip4fun + 100 sats for this sir 1678530427.869123"}' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '118' + content-type: + - application/json + cookie: + - guest_id=v1%3A167853043059298908 + host: + - api.twitter.com + user-agent: + - python-httpx/0.23.2 + method: POST + uri: https://api.twitter.com/2/tweets + response: + content: '{"data": {"edit_history_tweet_ids": ["1634501216167231490"], "id": "1634501216167231490", + "text": "@Bryskin2 @tip4fun 100 sats for this sir 1678530427.869123"}}' + headers: + api-version: + - '2.61' + cache-control: + - no-cache, no-store, max-age=0 + content-disposition: + - attachment; filename=json.json + content-encoding: + - gzip + content-length: + - '148' + content-type: + - application/json; charset=utf-8 + date: + - Sat, 11 Mar 2023 10:27:12 UTC + location: + - https://api.twitter.com/2/tweets/1634501216167231490 + perf: + - '7626143928' + server: + - tsa_o + strict-transport-security: + - max-age=631138519 + x-access-level: + - read-write + x-connection-hash: + - 5e2abd0f895ed95317641fb352c7ea0b968867ce035176e5e01bfb513e0230fa + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-rate-limit-limit: + - '200' + x-rate-limit-remaining: + - '199' + x-rate-limit-reset: + - '1678531332' + x-response-time: + - '241' + x-transaction-id: + - b294e2814c95b6e4 + x-xss-protection: + - '0' + http_version: HTTP/1.1 + status_code: 201 +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + authorization: + - secret + connection: + - keep-alive + host: + - api.twitter.com + user-agent: + - python-httpx/0.23.2 + method: GET + uri: https://api.twitter.com/2/tweets/search/stream/rules + response: + content: '{"data": [{"id": "1633617180322299905", "value": "in_reply_to_tweet_id:1633617146835075073"}], + "meta": {"sent": "2023-03-11T10:27:18.381Z", "result_count": 1}}' + headers: + cache-control: + - no-cache, no-store, max-age=0 + content-disposition: + - attachment; filename=json.json + content-encoding: + - gzip + content-length: + - '150' + content-type: + - application/json; charset=utf-8 + date: + - Sat, 11 Mar 2023 10:27:18 UTC + perf: + - '7626143928' + server: + - tsa_o + set-cookie: + - guest_id=v1%3A167853043836059554; Max-Age=34214400; Expires=Wed, 10 Apr 2024 + 10:27:18 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + strict-transport-security: + - max-age=631138519 + x-access-level: + - read + x-connection-hash: + - b05fe74ebc233331482a6c201918061ebfaae976f4c758e194363ee656757d9b + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-rate-limit-limit: + - '450' + x-rate-limit-remaining: + - '449' + x-rate-limit-reset: + - '1678531338' + x-response-time: + - '139' + x-transaction-id: + - 71b5e05d0ac300cf + x-xss-protection: + - '0' + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '{"delete": {"ids": ["1633617180322299905"]}}' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + authorization: + - secret + connection: + - keep-alive + content-length: + - '44' + content-type: + - application/json + cookie: + - guest_id=v1%3A167853043836059554 + host: + - api.twitter.com + user-agent: + - python-httpx/0.23.2 + method: POST + uri: https://api.twitter.com/2/tweets/search/stream/rules + response: + content: '{"meta": {"sent": "2023-03-11T10:27:20.068Z", "summary": {"deleted": + 1, "not_deleted": 0}}}' + headers: + cache-control: + - no-cache, no-store, max-age=0 + content-disposition: + - attachment; filename=json.json + content-encoding: + - gzip + content-length: + - '101' + content-type: + - application/json; charset=utf-8 + date: + - Sat, 11 Mar 2023 10:27:20 UTC + perf: + - '7626143928' + server: + - tsa_o + strict-transport-security: + - max-age=631138519 + x-access-level: + - read + x-connection-hash: + - b05fe74ebc233331482a6c201918061ebfaae976f4c758e194363ee656757d9b + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-rate-limit-limit: + - '25' + x-rate-limit-remaining: + - '24' + x-rate-limit-reset: + - '1678531338' + x-response-time: + - '1495' + x-transaction-id: + - a037ba01ba6cf7c6 + x-xss-protection: + - '0' + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '{"add": [{"value": "in_reply_to_tweet_id:1634501216167231490"}]}' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + authorization: + - secret + connection: + - keep-alive + content-length: + - '64' + content-type: + - application/json + cookie: + - guest_id=v1%3A167853043836059554 + host: + - api.twitter.com + user-agent: + - python-httpx/0.23.2 + method: POST + uri: https://api.twitter.com/2/tweets/search/stream/rules + response: + content: '{"data": [{"value": "in_reply_to_tweet_id:1634501216167231490", "id": + "1634501250027778048"}], "meta": {"sent": "2023-03-11T10:27:21.452Z", "summary": + {"created": 1, "not_created": 0, "valid": 1, "invalid": 0}}}' + headers: + cache-control: + - no-cache, no-store, max-age=0 + content-disposition: + - attachment; filename=json.json + content-encoding: + - gzip + content-length: + - '172' + content-type: + - application/json; charset=utf-8 + date: + - Sat, 11 Mar 2023 10:27:21 UTC + perf: + - '7626143928' + server: + - tsa_o + strict-transport-security: + - max-age=631138519 + x-access-level: + - read + x-connection-hash: + - b05fe74ebc233331482a6c201918061ebfaae976f4c758e194363ee656757d9b + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-rate-limit-limit: + - '25' + x-rate-limit-remaining: + - '23' + x-rate-limit-reset: + - '1678531338' + x-response-time: + - '1348' + x-transaction-id: + - 3c5225207125fa67 + x-xss-protection: + - '0' + http_version: HTTP/1.1 + status_code: 201 +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + authorization: + - secret + connection: + - keep-alive + cookie: + - guest_id=v1%3A167853043836059554 + host: + - api.twitter.com + user-agent: + - python-httpx/0.23.2 + method: GET + uri: https://api.twitter.com/2/tweets/search/stream?tweet.fields=created_at%2Cattachments%2Cauthor_id%2Ccontext_annotations%2Cconversation_id%2Centities%2Csource%2Ctext%2Creferenced_tweets%2Cid%2Cin_reply_to_user_id&expansions=author_id%2Creferenced_tweets.id%2Cin_reply_to_user_id%2Creferenced_tweets.id.author_id + response: + content: "{\"data\":{\"attachments\":{\"media_keys\":[\"3_1634501263671869441\"]},\"author_id\":\"1616757608299339776\",\"conversation_id\":\"1632746551872241674\",\"created_at\":\"2023-03-11T10:27:24.000Z\",\"edit_history_tweet_ids\":[\"1634501267744604160\"],\"entities\":{\"mentions\":[{\"start\":0,\"end\":9,\"username\":\"btclntip\",\"id\":\"1616845331353993217\"},{\"start\":10,\"end\":19,\"username\":\"Bryskin2\",\"id\":\"1591008723912343553\"}],\"urls\":[{\"start\":112,\"end\":135,\"url\":\"https://t.co/dfsgppFIGB\",\"expanded_url\":\"https://twitter.com/tip4fun/status/1634501267744604160/photo/1\",\"display_url\":\"pic.twitter.com/dfsgppFIGB\",\"media_key\":\"3_1634501263671869441\"}]},\"id\":\"1634501267744604160\",\"in_reply_to_user_id\":\"1616845331353993217\",\"referenced_tweets\":[{\"type\":\"replied_to\",\"id\":\"1634501216167231490\"}],\"text\":\"@btclntip + @Bryskin2 Invoice: http://localhost:3000/api/v1/donation/00000000-0000-0000-0000-000000000001/invoice + https://t.co/dfsgppFIGB\"},\"includes\":{\"users\":[{\"id\":\"1616757608299339776\",\"name\":\"Tip4Fun\",\"username\":\"tip4fun\"},{\"id\":\"1616845331353993217\",\"name\":\"lntip\",\"username\":\"btclntip\"},{\"id\":\"1591008723912343553\",\"name\":\"Nikolay + Bryskin\",\"username\":\"Bryskin2\"}],\"tweets\":[{\"attachments\":{\"media_keys\":[\"3_1634501263671869441\"]},\"author_id\":\"1616757608299339776\",\"conversation_id\":\"1632746551872241674\",\"created_at\":\"2023-03-11T10:27:24.000Z\",\"edit_history_tweet_ids\":[\"1634501267744604160\"],\"entities\":{\"mentions\":[{\"start\":0,\"end\":9,\"username\":\"btclntip\",\"id\":\"1616845331353993217\"},{\"start\":10,\"end\":19,\"username\":\"Bryskin2\",\"id\":\"1591008723912343553\"}],\"urls\":[{\"start\":112,\"end\":135,\"url\":\"https://t.co/dfsgppFIGB\",\"expanded_url\":\"https://twitter.com/tip4fun/status/1634501267744604160/photo/1\",\"display_url\":\"pic.twitter.com/dfsgppFIGB\",\"media_key\":\"3_1634501263671869441\"}]},\"id\":\"1634501267744604160\",\"in_reply_to_user_id\":\"1616845331353993217\",\"referenced_tweets\":[{\"type\":\"replied_to\",\"id\":\"1634501216167231490\"}],\"text\":\"@btclntip + @Bryskin2 Invoice: http://localhost:3000/api/v1/donation/00000000-0000-0000-0000-000000000001/invoice + https://t.co/dfsgppFIGB\"},{\"attachments\":{},\"author_id\":\"1616845331353993217\",\"conversation_id\":\"1632746551872241674\",\"created_at\":\"2023-03-11T10:27:12.000Z\",\"edit_history_tweet_ids\":[\"1634501216167231490\"],\"entities\":{\"mentions\":[{\"start\":0,\"end\":9,\"username\":\"Bryskin2\",\"id\":\"1591008723912343553\"},{\"start\":10,\"end\":18,\"username\":\"tip4fun\",\"id\":\"1616757608299339776\"}]},\"id\":\"1634501216167231490\",\"in_reply_to_user_id\":\"1591008723912343553\",\"referenced_tweets\":[{\"type\":\"replied_to\",\"id\":\"1632746551872241674\"}],\"text\":\"@Bryskin2 + @tip4fun 100 sats for this sir 1678530427.869123\"}]},\"matching_rules\":[{\"id\":\"1634501250027778048\",\"tag\":\"\"}]}\r\n{\"data\":{\"attachments\":{},\"author_id\":\"1616757608299339776\",\"conversation_id\":\"1632746551872241674\",\"created_at\":\"2023-03-11T10:27:31.000Z\",\"edit_history_tweet_ids\":[\"1634501296060264448\"],\"entities\":{\"mentions\":[{\"start\":0,\"end\":9,\"username\":\"btclntip\",\"id\":\"1616845331353993217\"},{\"start\":10,\"end\":19,\"username\":\"Bryskin2\",\"id\":\"1591008723912343553\"}]},\"id\":\"1634501296060264448\",\"in_reply_to_user_id\":\"1616845331353993217\",\"referenced_tweets\":[{\"type\":\"replied_to\",\"id\":\"1634501216167231490\"}],\"text\":\"@btclntip + @Bryskin2 http://localhost:3000/donation/00000000-0000-0000-0000-000000000001\"},\"includes\":{\"users\":[{\"id\":\"1616757608299339776\",\"name\":\"Tip4Fun\",\"username\":\"tip4fun\"},{\"id\":\"1616845331353993217\",\"name\":\"lntip\",\"username\":\"btclntip\"},{\"id\":\"1591008723912343553\",\"name\":\"Nikolay + Bryskin\",\"username\":\"Bryskin2\"}],\"tweets\":[{\"attachments\":{},\"author_id\":\"1616757608299339776\",\"conversation_id\":\"1632746551872241674\",\"created_at\":\"2023-03-11T10:27:31.000Z\",\"edit_history_tweet_ids\":[\"1634501296060264448\"],\"entities\":{\"mentions\":[{\"start\":0,\"end\":9,\"username\":\"btclntip\",\"id\":\"1616845331353993217\"},{\"start\":10,\"end\":19,\"username\":\"Bryskin2\",\"id\":\"1591008723912343553\"}]},\"id\":\"1634501296060264448\",\"in_reply_to_user_id\":\"1616845331353993217\",\"referenced_tweets\":[{\"type\":\"replied_to\",\"id\":\"1634501216167231490\"}],\"text\":\"@btclntip + @Bryskin2 http://localhost:3000/donation/00000000-0000-0000-0000-000000000001\"},{\"attachments\":{},\"author_id\":\"1616845331353993217\",\"conversation_id\":\"1632746551872241674\",\"created_at\":\"2023-03-11T10:27:12.000Z\",\"edit_history_tweet_ids\":[\"1634501216167231490\"],\"entities\":{\"mentions\":[{\"start\":0,\"end\":9,\"username\":\"Bryskin2\",\"id\":\"1591008723912343553\"},{\"start\":10,\"end\":18,\"username\":\"tip4fun\",\"id\":\"1616757608299339776\"}]},\"id\":\"1634501216167231490\",\"in_reply_to_user_id\":\"1591008723912343553\",\"referenced_tweets\":[{\"type\":\"replied_to\",\"id\":\"1632746551872241674\"}],\"text\":\"@Bryskin2 + @tip4fun 100 sats for this sir 1678530427.869123\"}]},\"matching_rules\":[{\"id\":\"1634501250027778048\",\"tag\":\"\"}]}\r\n" + headers: + cache-control: + - no-cache, no-store, max-age=0 + content-encoding: + - gzip + date: + - Sat, 11 Mar 2023 10:27:21 UTC + perf: + - '7626143928' + server: + - tsa_o + strict-transport-security: + - max-age=631138519 + transfer-encoding: + - chunked + x-access-level: + - read + x-connection-hash: + - b05fe74ebc233331482a6c201918061ebfaae976f4c758e194363ee656757d9b + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-rate-limit-limit: + - '50' + x-rate-limit-remaining: + - '49' + x-rate-limit-reset: + - '1678531341' + x-response-time: + - '174' + x-transaction-id: + - 28b0ac7887b54a3f + x-xss-protection: + - '0' + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + authorization: + - secret + connection: + - keep-alive + host: + - api.twitter.com + user-agent: + - python-httpx/0.23.2 + method: GET + uri: https://api.twitter.com/2/users/1616845331353993217?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities + response: + content: '{"data": {"profile_image_url": "https://abs.twimg.com/sticky/default_profile_images/default_profile_normal.png", + "username": "btclntip", "id": "1616845331353993217", "description": "", "verified": + false, "name": "lntip"}}' + headers: + api-version: + - '2.61' + cache-control: + - no-cache, no-store, max-age=0 + content-disposition: + - attachment; filename=json.json + content-encoding: + - gzip + content-length: + - '171' + content-type: + - application/json; charset=utf-8 + date: + - Sat, 11 Mar 2023 10:27:22 UTC + perf: + - '7626143928' + server: + - tsa_o + set-cookie: + - guest_id=v1%3A167853044227417900; Max-Age=34214400; Expires=Wed, 10 Apr 2024 + 10:27:22 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + strict-transport-security: + - max-age=631138519 + x-access-level: + - read + x-connection-hash: + - 1715983a3f781eb44844ec3adee38cf58cf80a1506e6c9cd33e2f280f097a3a1 + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-rate-limit-limit: + - '300' + x-rate-limit-remaining: + - '299' + x-rate-limit-reset: + - '1678531342' + x-response-time: + - '130' + x-transaction-id: + - 08419e253b3c21e6 + x-xss-protection: + - '0' + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + authorization: + - secret + connection: + - keep-alive + host: + - api.twitter.com + user-agent: + - python-httpx/0.23.2 + method: GET + uri: https://api.twitter.com/2/users/1591008723912343553?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities + response: + content: '{"data": {"username": "Bryskin2", "description": "", "id": "1591008723912343553", + "name": "Nikolay Bryskin", "verified": false, "profile_image_url": "https://abs.twimg.com/sticky/default_profile_images/default_profile_normal.png"}}' + headers: + api-version: + - '2.61' + cache-control: + - no-cache, no-store, max-age=0 + content-disposition: + - attachment; filename=json.json + content-encoding: + - gzip + content-length: + - '181' + content-type: + - application/json; charset=utf-8 + date: + - Sat, 11 Mar 2023 10:27:22 UTC + perf: + - '7626143928' + server: + - tsa_o + set-cookie: + - guest_id=v1%3A167853044267821255; Max-Age=34214400; Expires=Wed, 10 Apr 2024 + 10:27:22 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + strict-transport-security: + - max-age=631138519 + x-access-level: + - read + x-connection-hash: + - a85d8136d3811307af75239bfdd9e4e3002eb11ff01b5283edbcddac8fc7aeab + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-rate-limit-limit: + - '300' + x-rate-limit-remaining: + - '298' + x-rate-limit-reset: + - '1678531342' + x-response-time: + - '125' + x-transaction-id: + - ff48788c8e40b1f2 + x-xss-protection: + - '0' + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + grpc-metadata-macaroon: + - secret + host: + - localhost:8081 + user-agent: + - python-httpx/0.23.2 + method: GET + uri: https://localhost:8081/v1/getinfo + response: + content: '{"version": "0.15.1-beta commit=v0.15.1-beta", "commit_hash": "fd1a95bf322cdd1c743a1554f8e470fbf9a5e564", + "identity_pubkey": "03e803ff6eb04880c8c9644bb0acc78e4aceba87b3e4c6db9b6f57bb3f797f29d8", + "alias": "alice", "color": "#3399ff", "num_pending_channels": 0, "num_active_channels": + 2, "num_inactive_channels": 0, "num_peers": 1, "block_height": 148, "block_hash": + "7c834008f1ac8248d2dc342ef41b4e27998c479050071a60a788466eac9020db", "best_header_timestamp": + "1678527349", "synced_to_chain": true, "synced_to_graph": true, "testnet": false, + "chains": [{"chain": "bitcoin", "network": "regtest"}], "uris": ["03e803ff6eb04880c8c9644bb0acc78e4aceba87b3e4c6db9b6f57bb3f797f29d8@172.29.0.4:9735"], + "features": {"0": {"name": "data-loss-protect", "is_required": true, "is_known": + true}, "5": {"name": "upfront-shutdown-script", "is_required": false, "is_known": + true}, "7": {"name": "gossip-queries", "is_required": false, "is_known": true}, + "9": {"name": "tlv-onion", "is_required": false, "is_known": true}, "12": {"name": + "static-remote-key", "is_required": true, "is_known": true}, "14": {"name": + "payment-addr", "is_required": true, "is_known": true}, "17": {"name": "multi-path-payments", + "is_required": false, "is_known": true}, "23": {"name": "anchors-zero-fee-htlc-tx", + "is_required": false, "is_known": true}, "27": {"name": "shutdown-any-segwit", + "is_required": false, "is_known": true}, "30": {"name": "amp", "is_required": + true, "is_known": true}, "31": {"name": "amp", "is_required": false, "is_known": + true}, "45": {"name": "explicit-commitment-type", "is_required": false, "is_known": + true}, "2023": {"name": "script-enforced-lease", "is_required": false, "is_known": + true}}, "require_htlc_interceptor": false}' + headers: + Content-Length: + - '1589' + Content-Type: + - application/json + Date: + - Sat, 11 Mar 2023 10:27:22 GMT + Grpc-Metadata-Content-Type: + - application/grpc + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '{"memo": "Donate4.Fun donation to @Bryskin2", "value": 100, "expiry": 86400, + "private": true}' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '93' + content-type: + - application/json + grpc-metadata-macaroon: + - secret + host: + - localhost:8081 + user-agent: + - python-httpx/0.23.2 + method: POST + uri: https://localhost:8081/v1/invoices + response: + content: '{"r_hash": "wM/uhcVSvy89e8wd1G7QJIBODEO8C3b12AodCvDe7/o=", "payment_request": + "lnbcrt1u1pjqc4u2pp5cr87apw922lj70tmeswagmksyjqyurzrhs9hdawcpgws4ux7alaqdp4g3hkuct5v56zu3n4dcsxgmmwv96xjmmwyp6x7gzqgfe8jumtd9hrycqzpgxqyz5vqsp5e77tgwexmxtqea0qxme5z2mheq0w2yj6sz0g9vg2wddstv8f235s9qyyssqmrvx8wjsrscger0sh6g7vch2ufmvt4x9ean4nkaptez97f8nhmxy378lr04f6n6tuv6t5yffafg0jx5d3l5c8avqsglkq5egadetrfgp689k85", + "add_index": "287", "payment_addr": "z7y0OybZlgz14DbzQSt3yB7lElqAnoKxCnNbBbDpVGk="}' + headers: + Content-Length: + - '469' + Content-Type: + - application/json + Date: + - Sat, 11 Mar 2023 10:27:22 GMT + Grpc-Metadata-Content-Type: + - application/grpc + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '0' + host: + - upload.twitter.com + user-agent: + - python-httpx/0.23.2 + method: POST + uri: https://upload.twitter.com/1.1/media/upload.json?command=INIT&total_bytes=440&media_type=image%2Fpng&media_category=tweet_image + response: + content: '{"media_id": 1634501263671869441, "media_id_string": "1634501263671869441", + "expires_after_secs": 86400, "media_key": "3_1634501263671869441"}' + headers: + cache-control: + - no-cache, no-store, must-revalidate, pre-check=0, post-check=0 + content-disposition: + - attachment; filename=json.json + content-encoding: + - gzip + content-length: + - '111' + content-type: + - application/json;charset=utf-8 + date: + - Sat, 11 Mar 2023 10:27:23 GMT + expires: + - Tue, 31 Mar 1981 05:00:00 GMT + last-modified: + - Sat, 11 Mar 2023 10:27:23 GMT + perf: + - '7626143928' + pragma: + - no-cache + server: + - tsa_o + set-cookie: + - lang=en; Path=/ + - guest_id=v1%3A167853044346993100; Max-Age=34214400; Expires=Wed, 10 Apr 2024 + 10:27:23 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + status: + - 202 Accepted + strict-transport-security: + - max-age=631138519 + vary: + - Origin + x-access-level: + - read-write-directmessages + x-connection-hash: + - c8fa0c8c2960a724d3bdce76c8d0725e927900a1a50c66071c77fb0355c8978d + x-frame-options: + - SAMEORIGIN + x-mediaid: + - '1634501263671869441' + x-rate-limit-limit: + - '415' + x-rate-limit-remaining: + - '414' + x-rate-limit-reset: + - '1678534043' + x-response-time: + - '137' + x-transaction: + - 7b3740c0e516fecf + x-transaction-id: + - 7b3740c0e516fecf + x-twitter-response-tags: + - BouncerCompliant + x-xss-protection: + - 1; mode=block + http_version: HTTP/1.1 + status_code: 202 +- request: + body: !!binary | + LS1lNjc3MDZjNTUwZGUwNzExMjdhZDZiYWY2MGE5MTU1OA0KQ29udGVudC1EaXNwb3NpdGlvbjog + Zm9ybS1kYXRhOyBuYW1lPSJjb21tYW5kIg0KDQpBUFBFTkQNCi0tZTY3NzA2YzU1MGRlMDcxMTI3 + YWQ2YmFmNjBhOTE1NTgNCkNvbnRlbnQtRGlzcG9zaXRpb246IGZvcm0tZGF0YTsgbmFtZT0ibWVk + aWFfaWQiDQoNCjE2MzQ1MDEyNjM2NzE4Njk0NDENCi0tZTY3NzA2YzU1MGRlMDcxMTI3YWQ2YmFm + NjBhOTE1NTgNCkNvbnRlbnQtRGlzcG9zaXRpb246IGZvcm0tZGF0YTsgbmFtZT0ic2VnbWVudF9p + bmRleCINCg0KMA0KLS1lNjc3MDZjNTUwZGUwNzExMjdhZDZiYWY2MGE5MTU1OA0KQ29udGVudC1E + aXNwb3NpdGlvbjogZm9ybS1kYXRhOyBuYW1lPSJtZWRpYSI7IGZpbGVuYW1lPSJpbWFnZSINCkNv + bnRlbnQtVHlwZTogaW1hZ2UvcG5nDQoNColQTkcNChoKAAAADUlIRFIAAAEiAAABIgEAAAAAdcXi + GwAAAX9JREFUeJztmUFuhDAMRZ8LEktGmgPB1XqzcJTeAJYjBf0uEmboqFK7YTIi9i7Rk/Jlm8Q2 + Jv626eMfEDjllFNOOfXulGVrsZHVYNl2xqK6qqAGSdIMQCMbaSRJ+km9XlcV1LLl+HRZTQEws7a8 + rpoohaXFxheeWC/VPq0NmmhHnujUZpvvewELCNbk+n3T9a7qT0FNZmZ2ARuXTsCaypzSuk5Npbx/ + 5LjgZvkzKKmrBopUSg6K951G0EsMM7n4DO+q/gyUPq3LAUge/8rvgEJRXeemUt4rANIMCjRSeCS/ + 5/1h1O7OUegjOQqPeLjvD6Oyd+/jhJT3mhtJin7fH0ltvt9s98LmALjvj6LSm7rV8U0EmmiTAfQ3 + UyldFVG7OWZ/M+gjkLqsorqqoB5zTGth+Ook6ebz+5dSqcvqI0zWyev7A6nnOaZYroLlGm2YL8YQ + yuiqgXqeYyabRozpUlBXDRT7X4Opm43bXi+vMY+kfplj5pXP751yyimnzkR9A2+26v3Xfi9QAAAA + AElFTkSuQmCCDQotLWU2NzcwNmM1NTBkZTA3MTEyN2FkNmJhZjYwYTkxNTU4LS0NCg== + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '904' + content-type: + - multipart/form-data; boundary=e67706c550de071127ad6baf60a91558 + cookie: + - guest_id=v1%3A167853044346993100; lang=en + host: + - upload.twitter.com + user-agent: + - python-httpx/0.23.2 + method: POST + uri: https://upload.twitter.com/1.1/media/upload.json + response: + content: '' + headers: + cache-control: + - no-cache, no-store, must-revalidate, pre-check=0, post-check=0 + content-security-policy: + - default-src 'self'; connect-src 'self'; font-src 'self' https://*.twimg.com + https://twitter.com https://ton.twitter.com data:; frame-src 'self' https://*.twimg.com + https://twitter.com https://ton.twitter.com; img-src 'self' https://*.twimg.com + https://twitter.com https://ton.twitter.com data:; media-src 'self' https://*.twimg.com + https://twitter.com https://ton.twitter.com; object-src 'none'; script-src + 'self' https://*.twimg.com https://twitter.com https://ton.twitter.com; style-src + 'self' https://*.twimg.com https://twitter.com https://ton.twitter.com; report-uri + https://twitter.com/i/csp_report?a=OBZG6ZTJNRSWE2LSMQ%3D%3D%3D%3D%3D%3D&ro=false; + content-type: + - text/html;charset=utf-8 + date: + - Sat, 11 Mar 2023 10:27:23 GMT + expires: + - Tue, 31 Mar 1981 05:00:00 GMT + last-modified: + - Sat, 11 Mar 2023 10:27:23 GMT + perf: + - '7626143928' + pragma: + - no-cache + server: + - tsa_o + status: + - 204 No Content + strict-transport-security: + - max-age=631138519 + vary: + - Origin + x-access-level: + - read-write-directmessages + x-connection-hash: + - c8fa0c8c2960a724d3bdce76c8d0725e927900a1a50c66071c77fb0355c8978d + x-frame-options: + - SAMEORIGIN + x-mediaid: + - '1634501263671869441' + x-rate-limit-limit: + - '20000' + x-rate-limit-remaining: + - '19999' + x-rate-limit-reset: + - '1678534043' + x-response-time: + - '135' + x-segmentcount: + - '0' + x-totalbytes: + - '0' + x-transaction: + - ef9241ec4f01c68e + x-transaction-id: + - ef9241ec4f01c68e + x-twitter-response-tags: + - BouncerCompliant + x-xss-protection: + - 1; mode=block + http_version: HTTP/1.1 + status_code: 204 +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '0' + cookie: + - guest_id=v1%3A167853044346993100; lang=en + host: + - upload.twitter.com + user-agent: + - python-httpx/0.23.2 + method: POST + uri: https://upload.twitter.com/1.1/media/upload.json?command=FINALIZE&media_id=1634501263671869441 + response: + content: '{"media_id": 1634501263671869441, "media_id_string": "1634501263671869441", + "media_key": "3_1634501263671869441", "size": 440, "expires_after_secs": 86400, + "image": {"image_type": "image/png", "w": 290, "h": 290}}' + headers: + cache-control: + - no-cache, no-store, must-revalidate, pre-check=0, post-check=0 + content-disposition: + - attachment; filename=json.json + content-encoding: + - gzip + content-length: + - '150' + content-type: + - application/json;charset=utf-8 + date: + - Sat, 11 Mar 2023 10:27:24 GMT + expires: + - Tue, 31 Mar 1981 05:00:00 GMT + last-modified: + - Sat, 11 Mar 2023 10:27:24 GMT + perf: + - '7626143928' + pragma: + - no-cache + server: + - tsa_o + status: + - 201 Created + strict-transport-security: + - max-age=631138519 + vary: + - Origin + x-access-level: + - read-write-directmessages + x-connection-hash: + - c8fa0c8c2960a724d3bdce76c8d0725e927900a1a50c66071c77fb0355c8978d + x-frame-options: + - SAMEORIGIN + x-mediaid: + - '1634501263671869441' + x-rate-limit-limit: + - '615' + x-rate-limit-remaining: + - '614' + x-rate-limit-reset: + - '1678534044' + x-response-time: + - '249' + x-transaction: + - f9ccda73e1e09a22 + x-transaction-id: + - f9ccda73e1e09a22 + x-twitter-response-tags: + - BouncerCompliant + x-xss-protection: + - 1; mode=block + http_version: HTTP/1.1 + status_code: 201 +- request: + body: '{"reply": {"in_reply_to_tweet_id": "1634501216167231490"}, "text": "Invoice: + http://localhost:3000/api/v1/donation/00000000-0000-0000-0000-000000000001/invoice", + "media": {"media_ids": ["1634501263671869441"]}}' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '210' + content-type: + - application/json + cookie: + - guest_id=v1%3A167853042987578252 + host: + - api.twitter.com + user-agent: + - python-httpx/0.23.2 + method: POST + uri: https://api.twitter.com/2/tweets + response: + content: '{"data": {"edit_history_tweet_ids": ["1634501267744604160"], "id": "1634501267744604160", + "text": "@btclntip @Bryskin2 Invoice: http://localhost:3000/api/v1/donation/00000000-0000-0000-0000-000000000001/invoice + https://t.co/dfsgppFIGB"}}' + headers: + api-version: + - '2.61' + cache-control: + - no-cache, no-store, max-age=0 + content-disposition: + - attachment; filename=json.json + content-encoding: + - gzip + content-length: + - '183' + content-type: + - application/json; charset=utf-8 + date: + - Sat, 11 Mar 2023 10:27:24 UTC + location: + - https://api.twitter.com/2/tweets/1634501267744604160 + perf: + - '7626143928' + server: + - tsa_o + strict-transport-security: + - max-age=631138519 + x-access-level: + - read-write-directmessages + x-connection-hash: + - 22942acade8c994800cb752383253715c20faa7b9ae77b32329b65a4773d207a + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-rate-limit-limit: + - '200' + x-rate-limit-remaining: + - '199' + x-rate-limit-reset: + - '1678531344' + x-response-time: + - '304' + x-transaction-id: + - f3caa4613f7ec7b4 + x-xss-protection: + - '0' + http_version: HTTP/1.1 + status_code: 201 +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + grpc-metadata-macaroon: + - secret + host: + - localhost:8081 + user-agent: + - python-httpx/0.23.2 + method: GET + uri: https://localhost:8081/v1/invoice/c0cfee85c552bf2f3d7bcc1dd46ed024804e0c43bc0b76f5d80a1d0af0deeffa + response: + content: '{"memo": "Donate4.Fun donation to @Bryskin2", "r_preimage": "do9ucSMbjWVyGYnBdMmXgHV5mFqMl8Vmk1kx2J/jsx0=", + "r_hash": "wM/uhcVSvy89e8wd1G7QJIBODEO8C3b12AodCvDe7/o=", "value": "100", "value_msat": + "100000", "settled": false, "creation_date": "1678530442", "settle_date": "0", + "payment_request": "lnbcrt1u1pjqc4u2pp5cr87apw922lj70tmeswagmksyjqyurzrhs9hdawcpgws4ux7alaqdp4g3hkuct5v56zu3n4dcsxgmmwv96xjmmwyp6x7gzqgfe8jumtd9hrycqzpgxqyz5vqsp5e77tgwexmxtqea0qxme5z2mheq0w2yj6sz0g9vg2wddstv8f235s9qyyssqmrvx8wjsrscger0sh6g7vch2ufmvt4x9ean4nkaptez97f8nhmxy378lr04f6n6tuv6t5yffafg0jx5d3l5c8avqsglkq5egadetrfgp689k85", + "description_hash": "", "expiry": "86400", "fallback_addr": "", "cltv_expiry": + "40", "route_hints": [], "private": false, "add_index": "287", "settle_index": + "0", "amt_paid": "0", "amt_paid_sat": "0", "amt_paid_msat": "0", "state": "OPEN", + "htlcs": [], "features": {"9": {"name": "tlv-onion", "is_required": false, "is_known": + true}, "14": {"name": "payment-addr", "is_required": true, "is_known": true}, + "17": {"name": "multi-path-payments", "is_required": false, "is_known": true}}, + "is_keysend": false, "payment_addr": "z7y0OybZlgz14DbzQSt3yB7lElqAnoKxCnNbBbDpVGk=", + "is_amp": false, "amp_invoice_state": {}}' + headers: + Content-Length: + - '1147' + Content-Type: + - application/json + Date: + - Sat, 11 Mar 2023 10:27:29 GMT + Grpc-Metadata-Content-Type: + - application/grpc + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + grpc-metadata-macaroon: + - secret + host: + - localhost:8081 + user-agent: + - python-httpx/0.23.2 + method: GET + uri: https://localhost:8081/v1/getinfo + response: + content: '{"version": "0.15.1-beta commit=v0.15.1-beta", "commit_hash": "fd1a95bf322cdd1c743a1554f8e470fbf9a5e564", + "identity_pubkey": "03e803ff6eb04880c8c9644bb0acc78e4aceba87b3e4c6db9b6f57bb3f797f29d8", + "alias": "alice", "color": "#3399ff", "num_pending_channels": 0, "num_active_channels": + 2, "num_inactive_channels": 0, "num_peers": 1, "block_height": 148, "block_hash": + "7c834008f1ac8248d2dc342ef41b4e27998c479050071a60a788466eac9020db", "best_header_timestamp": + "1678527349", "synced_to_chain": true, "synced_to_graph": true, "testnet": false, + "chains": [{"chain": "bitcoin", "network": "regtest"}], "uris": ["03e803ff6eb04880c8c9644bb0acc78e4aceba87b3e4c6db9b6f57bb3f797f29d8@172.29.0.4:9735"], + "features": {"0": {"name": "data-loss-protect", "is_required": true, "is_known": + true}, "5": {"name": "upfront-shutdown-script", "is_required": false, "is_known": + true}, "7": {"name": "gossip-queries", "is_required": false, "is_known": true}, + "9": {"name": "tlv-onion", "is_required": false, "is_known": true}, "12": {"name": + "static-remote-key", "is_required": true, "is_known": true}, "14": {"name": + "payment-addr", "is_required": true, "is_known": true}, "17": {"name": "multi-path-payments", + "is_required": false, "is_known": true}, "23": {"name": "anchors-zero-fee-htlc-tx", + "is_required": false, "is_known": true}, "27": {"name": "shutdown-any-segwit", + "is_required": false, "is_known": true}, "30": {"name": "amp", "is_required": + true, "is_known": true}, "31": {"name": "amp", "is_required": false, "is_known": + true}, "45": {"name": "explicit-commitment-type", "is_required": false, "is_known": + true}, "2023": {"name": "script-enforced-lease", "is_required": false, "is_known": + true}}, "require_htlc_interceptor": false}' + headers: + Content-Length: + - '1589' + Content-Type: + - application/json + Date: + - Sat, 11 Mar 2023 10:27:29 GMT + Grpc-Metadata-Content-Type: + - application/grpc + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '{}' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '2' + content-type: + - application/json + grpc-metadata-macaroon: + - secret + host: + - localhost:8081 + user-agent: + - python-httpx/0.23.2 + method: GET + uri: https://localhost:8081/v1/invoices/subscribe + response: + content: '{"result": {"memo": "Donate4.Fun donation to @Bryskin2", "r_preimage": + "do9ucSMbjWVyGYnBdMmXgHV5mFqMl8Vmk1kx2J/jsx0=", "r_hash": "wM/uhcVSvy89e8wd1G7QJIBODEO8C3b12AodCvDe7/o=", + "value": "100", "value_msat": "100000", "settled": true, "creation_date": "1678530442", + "settle_date": "1678530449", "payment_request": "lnbcrt1u1pjqc4u2pp5cr87apw922lj70tmeswagmksyjqyurzrhs9hdawcpgws4ux7alaqdp4g3hkuct5v56zu3n4dcsxgmmwv96xjmmwyp6x7gzqgfe8jumtd9hrycqzpgxqyz5vqsp5e77tgwexmxtqea0qxme5z2mheq0w2yj6sz0g9vg2wddstv8f235s9qyyssqmrvx8wjsrscger0sh6g7vch2ufmvt4x9ean4nkaptez97f8nhmxy378lr04f6n6tuv6t5yffafg0jx5d3l5c8avqsglkq5egadetrfgp689k85", + "description_hash": "", "expiry": "86400", "fallback_addr": "", "cltv_expiry": + "40", "route_hints": [], "private": false, "add_index": "287", "settle_index": + "40", "amt_paid": "100000", "amt_paid_sat": "100", "amt_paid_msat": "100000", + "state": "SETTLED", "htlcs": [{"chan_id": "151732604698624", "htlc_index": "26", + "amt_msat": "100000", "accept_height": 148, "accept_time": "1678530449", "resolve_time": + "1678530449", "expiry_height": 191, "state": "SETTLED", "custom_records": {}, + "mpp_total_amt_msat": "100000", "amp": null}], "features": {"9": {"name": "tlv-onion", + "is_required": false, "is_known": true}, "14": {"name": "payment-addr", "is_required": + true, "is_known": true}, "17": {"name": "multi-path-payments", "is_required": + false, "is_known": true}}, "is_keysend": false, "payment_addr": "z7y0OybZlgz14DbzQSt3yB7lElqAnoKxCnNbBbDpVGk=", + "is_amp": false, "amp_invoice_state": {}}}' + headers: + Content-Type: + - application/json + Date: + - Sat, 11 Mar 2023 10:27:29 GMT + Grpc-Metadata-Content-Type: + - application/grpc + Transfer-Encoding: + - chunked + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + grpc-metadata-macaroon: + - secret + host: + - localhost:8083 + user-agent: + - python-httpx/0.23.2 + method: GET + uri: https://localhost:8083/v1/getinfo + response: + content: '{"version": "0.15.1-beta commit=v0.15.1-beta", "commit_hash": "fd1a95bf322cdd1c743a1554f8e470fbf9a5e564", + "identity_pubkey": "031815bada9500dd9fc6aa3b3d3c58c9a1d10b3d9b40d7f1159a17410e915c3789", + "alias": "carol", "color": "#3399ff", "num_pending_channels": 0, "num_active_channels": + 2, "num_inactive_channels": 0, "num_peers": 1, "block_height": 148, "block_hash": + "7c834008f1ac8248d2dc342ef41b4e27998c479050071a60a788466eac9020db", "best_header_timestamp": + "1678527349", "synced_to_chain": true, "synced_to_graph": true, "testnet": false, + "chains": [{"chain": "bitcoin", "network": "regtest"}], "uris": ["031815bada9500dd9fc6aa3b3d3c58c9a1d10b3d9b40d7f1159a17410e915c3789@172.29.0.2:9735"], + "features": {"0": {"name": "data-loss-protect", "is_required": true, "is_known": + true}, "5": {"name": "upfront-shutdown-script", "is_required": false, "is_known": + true}, "7": {"name": "gossip-queries", "is_required": false, "is_known": true}, + "9": {"name": "tlv-onion", "is_required": false, "is_known": true}, "12": {"name": + "static-remote-key", "is_required": true, "is_known": true}, "14": {"name": + "payment-addr", "is_required": true, "is_known": true}, "17": {"name": "multi-path-payments", + "is_required": false, "is_known": true}, "23": {"name": "anchors-zero-fee-htlc-tx", + "is_required": false, "is_known": true}, "27": {"name": "shutdown-any-segwit", + "is_required": false, "is_known": true}, "30": {"name": "amp", "is_required": + true, "is_known": true}, "31": {"name": "amp", "is_required": false, "is_known": + true}, "45": {"name": "explicit-commitment-type", "is_required": false, "is_known": + true}, "2023": {"name": "script-enforced-lease", "is_required": false, "is_known": + true}}, "require_htlc_interceptor": false}' + headers: + Content-Length: + - '1589' + Content-Type: + - application/json + Date: + - Sat, 11 Mar 2023 10:27:29 GMT + Grpc-Metadata-Content-Type: + - application/grpc + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '{"payment_request": "lnbcrt1u1pjqc4u2pp5cr87apw922lj70tmeswagmksyjqyurzrhs9hdawcpgws4ux7alaqdp4g3hkuct5v56zu3n4dcsxgmmwv96xjmmwyp6x7gzqgfe8jumtd9hrycqzpgxqyz5vqsp5e77tgwexmxtqea0qxme5z2mheq0w2yj6sz0g9vg2wddstv8f235s9qyyssqmrvx8wjsrscger0sh6g7vch2ufmvt4x9ean4nkaptez97f8nhmxy378lr04f6n6tuv6t5yffafg0jx5d3l5c8avqsglkq5egadetrfgp689k85", + "timeout_seconds": 10, "fee_limit_sat": 10}' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '378' + content-type: + - application/json + grpc-metadata-macaroon: + - secret + host: + - localhost:8083 + user-agent: + - python-httpx/0.23.2 + method: POST + uri: https://localhost:8083/v2/router/send + response: + content: '{"result":{"payment_hash":"c0cfee85c552bf2f3d7bcc1dd46ed024804e0c43bc0b76f5d80a1d0af0deeffa","value":"100","creation_date":"1678530449","fee":"0","payment_preimage":"0000000000000000000000000000000000000000000000000000000000000000","value_sat":"100","value_msat":"100000","payment_request":"lnbcrt1u1pjqc4u2pp5cr87apw922lj70tmeswagmksyjqyurzrhs9hdawcpgws4ux7alaqdp4g3hkuct5v56zu3n4dcsxgmmwv96xjmmwyp6x7gzqgfe8jumtd9hrycqzpgxqyz5vqsp5e77tgwexmxtqea0qxme5z2mheq0w2yj6sz0g9vg2wddstv8f235s9qyyssqmrvx8wjsrscger0sh6g7vch2ufmvt4x9ean4nkaptez97f8nhmxy378lr04f6n6tuv6t5yffafg0jx5d3l5c8avqsglkq5egadetrfgp689k85","status":"IN_FLIGHT","fee_sat":"0","fee_msat":"0","creation_time_ns":"1678530449324058948","htlcs":[],"payment_index":"3003","failure_reason":"FAILURE_REASON_NONE"}} + + {"result":{"payment_hash":"c0cfee85c552bf2f3d7bcc1dd46ed024804e0c43bc0b76f5d80a1d0af0deeffa","value":"100","creation_date":"1678530449","fee":"0","payment_preimage":"0000000000000000000000000000000000000000000000000000000000000000","value_sat":"100","value_msat":"100000","payment_request":"lnbcrt1u1pjqc4u2pp5cr87apw922lj70tmeswagmksyjqyurzrhs9hdawcpgws4ux7alaqdp4g3hkuct5v56zu3n4dcsxgmmwv96xjmmwyp6x7gzqgfe8jumtd9hrycqzpgxqyz5vqsp5e77tgwexmxtqea0qxme5z2mheq0w2yj6sz0g9vg2wddstv8f235s9qyyssqmrvx8wjsrscger0sh6g7vch2ufmvt4x9ean4nkaptez97f8nhmxy378lr04f6n6tuv6t5yffafg0jx5d3l5c8avqsglkq5egadetrfgp689k85","status":"IN_FLIGHT","fee_sat":"0","fee_msat":"0","creation_time_ns":"1678530449324058948","htlcs":[{"attempt_id":"3002","status":"IN_FLIGHT","route":{"total_time_lock":231,"total_fees":"1","total_amt":"101","hops":[{"chan_id":"145135534931968","chan_capacity":"250000","amt_to_forward":"100","fee":"1","expiry":191,"amt_to_forward_msat":"100000","fee_msat":"1000","pub_key":"034d3ccf73171473dcade1af4e9ce6bada4ff53d688404ef2ac5926362422a1a11","tlv_payload":true,"mpp_record":null,"amp_record":null,"custom_records":{},"metadata":""},{"chan_id":"151732604698624","chan_capacity":"250000","amt_to_forward":"100","fee":"0","expiry":191,"amt_to_forward_msat":"100000","fee_msat":"0","pub_key":"03e803ff6eb04880c8c9644bb0acc78e4aceba87b3e4c6db9b6f57bb3f797f29d8","tlv_payload":true,"mpp_record":{"payment_addr":"z7y0OybZlgz14DbzQSt3yB7lElqAnoKxCnNbBbDpVGk=","total_amt_msat":"100000"},"amp_record":null,"custom_records":{},"metadata":""}],"total_fees_msat":"1000","total_amt_msat":"101000"},"attempt_time_ns":"1678530449343927382","resolve_time_ns":"0","failure":null,"preimage":""}],"payment_index":"3003","failure_reason":"FAILURE_REASON_NONE"}} + + {"result":{"payment_hash":"c0cfee85c552bf2f3d7bcc1dd46ed024804e0c43bc0b76f5d80a1d0af0deeffa","value":"100","creation_date":"1678530449","fee":"1","payment_preimage":"768f6e71231b8d65721989c174c997807579985a8c97c566935931d89fe3b31d","value_sat":"100","value_msat":"100000","payment_request":"lnbcrt1u1pjqc4u2pp5cr87apw922lj70tmeswagmksyjqyurzrhs9hdawcpgws4ux7alaqdp4g3hkuct5v56zu3n4dcsxgmmwv96xjmmwyp6x7gzqgfe8jumtd9hrycqzpgxqyz5vqsp5e77tgwexmxtqea0qxme5z2mheq0w2yj6sz0g9vg2wddstv8f235s9qyyssqmrvx8wjsrscger0sh6g7vch2ufmvt4x9ean4nkaptez97f8nhmxy378lr04f6n6tuv6t5yffafg0jx5d3l5c8avqsglkq5egadetrfgp689k85","status":"SUCCEEDED","fee_sat":"1","fee_msat":"1000","creation_time_ns":"1678530449324058948","htlcs":[{"attempt_id":"3002","status":"SUCCEEDED","route":{"total_time_lock":231,"total_fees":"1","total_amt":"101","hops":[{"chan_id":"145135534931968","chan_capacity":"250000","amt_to_forward":"100","fee":"1","expiry":191,"amt_to_forward_msat":"100000","fee_msat":"1000","pub_key":"034d3ccf73171473dcade1af4e9ce6bada4ff53d688404ef2ac5926362422a1a11","tlv_payload":true,"mpp_record":null,"amp_record":null,"custom_records":{},"metadata":""},{"chan_id":"151732604698624","chan_capacity":"250000","amt_to_forward":"100","fee":"0","expiry":191,"amt_to_forward_msat":"100000","fee_msat":"0","pub_key":"03e803ff6eb04880c8c9644bb0acc78e4aceba87b3e4c6db9b6f57bb3f797f29d8","tlv_payload":true,"mpp_record":{"payment_addr":"z7y0OybZlgz14DbzQSt3yB7lElqAnoKxCnNbBbDpVGk=","total_amt_msat":"100000"},"amp_record":null,"custom_records":{},"metadata":""}],"total_fees_msat":"1000","total_amt_msat":"101000"},"attempt_time_ns":"1678530449343927382","resolve_time_ns":"1678530449546205854","failure":null,"preimage":"do9ucSMbjWVyGYnBdMmXgHV5mFqMl8Vmk1kx2J/jsx0="}],"payment_index":"3003","failure_reason":"FAILURE_REASON_NONE"}} + + ' + headers: + Content-Type: + - application/json + Date: + - Sat, 11 Mar 2023 10:27:29 GMT + Grpc-Metadata-Content-Type: + - application/grpc + Transfer-Encoding: + - chunked + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + cookie: + - guest_id=v1%3A167853042987578252 + host: + - api.twitter.com + user-agent: + - python-httpx/0.23.2 + method: GET + uri: https://api.twitter.com/2/tweets/1634501267744604160?tweet.fields=created_at%2Cattachments%2Cauthor_id%2Ccontext_annotations%2Cconversation_id%2Centities%2Csource%2Ctext%2Creferenced_tweets%2Cid%2Cin_reply_to_user_id + response: + content: '{"data": {"attachments": {"media_keys": ["3_1634501263671869441"]}, + "id": "1634501267744604160", "entities": {"mentions": [{"start": 0, "end": 9, + "username": "btclntip", "id": "1616845331353993217"}, {"start": 10, "end": 19, + "username": "Bryskin2", "id": "1591008723912343553"}], "urls": [{"start": 112, + "end": 135, "url": "https://t.co/dfsgppFIGB", "expanded_url": "https://twitter.com/tip4fun/status/1634501267744604160/photo/1", + "display_url": "pic.twitter.com/dfsgppFIGB", "media_key": "3_1634501263671869441"}]}, + "edit_history_tweet_ids": ["1634501267744604160"], "text": "@btclntip @Bryskin2 + Invoice: http://localhost:3000/api/v1/donation/00000000-0000-0000-0000-000000000001/invoice + https://t.co/dfsgppFIGB", "in_reply_to_user_id": "1616845331353993217", "conversation_id": + "1632746551872241674", "referenced_tweets": [{"type": "replied_to", "id": "1634501216167231490"}], + "created_at": "2023-03-11T10:27:24.000Z", "author_id": "1616757608299339776"}}' + headers: + api-version: + - '2.61' + cache-control: + - no-cache, no-store, max-age=0 + content-disposition: + - attachment; filename=json.json + content-encoding: + - gzip + content-length: + - '488' + content-type: + - application/json; charset=utf-8 + date: + - Sat, 11 Mar 2023 10:27:30 UTC + perf: + - '7626143928' + server: + - tsa_o + strict-transport-security: + - max-age=631138519 + x-access-level: + - read-write-directmessages + x-connection-hash: + - 22942acade8c994800cb752383253715c20faa7b9ae77b32329b65a4773d207a + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-rate-limit-limit: + - '900' + x-rate-limit-remaining: + - '899' + x-rate-limit-reset: + - '1678531350' + x-response-time: + - '162' + x-transaction-id: + - 604c1e515d70624e + x-xss-protection: + - '0' + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + cookie: + - guest_id=v1%3A167853042987578252 + host: + - api.twitter.com + user-agent: + - python-httpx/0.23.2 + method: DELETE + uri: https://api.twitter.com/2/tweets/1634501267744604160 + response: + content: '{"data": {"deleted": true}}' + headers: + api-version: + - '2.61' + cache-control: + - no-cache, no-store, max-age=0 + content-disposition: + - attachment; filename=json.json + content-encoding: + - gzip + content-length: + - '51' + content-type: + - application/json; charset=utf-8 + date: + - Sat, 11 Mar 2023 10:27:30 UTC + perf: + - '7626143928' + server: + - tsa_o + strict-transport-security: + - max-age=631138519 + x-access-level: + - read-write-directmessages + x-connection-hash: + - 22942acade8c994800cb752383253715c20faa7b9ae77b32329b65a4773d207a + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-rate-limit-limit: + - '50' + x-rate-limit-remaining: + - '49' + x-rate-limit-reset: + - '1678531350' + x-response-time: + - '160' + x-transaction-id: + - 4f0b38912075f95f + x-xss-protection: + - '0' + http_version: HTTP/1.1 + status_code: 200 +- request: + body: '{"reply": {"in_reply_to_tweet_id": "1634501216167231490"}, "text": "http://localhost:3000/donation/00000000-0000-0000-0000-000000000001"}' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '137' + content-type: + - application/json + cookie: + - guest_id=v1%3A167853042987578252 + host: + - api.twitter.com + user-agent: + - python-httpx/0.23.2 + method: POST + uri: https://api.twitter.com/2/tweets + response: + content: '{"data": {"edit_history_tweet_ids": ["1634501296060264448"], "id": "1634501296060264448", + "text": "@btclntip @Bryskin2 http://localhost:3000/donation/00000000-0000-0000-0000-000000000001"}}' + headers: + api-version: + - '2.61' + cache-control: + - no-cache, no-store, max-age=0 + content-disposition: + - attachment; filename=json.json + content-encoding: + - gzip + content-length: + - '151' + content-type: + - application/json; charset=utf-8 + date: + - Sat, 11 Mar 2023 10:27:31 UTC + location: + - https://api.twitter.com/2/tweets/1634501296060264448 + perf: + - '7626143928' + server: + - tsa_o + strict-transport-security: + - max-age=631138519 + x-access-level: + - read-write-directmessages + x-connection-hash: + - 22942acade8c994800cb752383253715c20faa7b9ae77b32329b65a4773d207a + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-rate-limit-limit: + - '200' + x-rate-limit-remaining: + - '198' + x-rate-limit-reset: + - '1678531344' + x-response-time: + - '235' + x-transaction-id: + - 9a6eee8818928a6c + x-xss-protection: + - '0' + http_version: HTTP/1.1 + status_code: 201 +recorded_at: '2023-03-11T10:27:07.869123' +version: 1 diff --git a/tests/cassettes/test_twitter/test_handle_twitter_mention[100-None].yaml b/tests/cassettes/test_twitter/test_handle_twitter_mention[100-None].yaml index 83449cdd..61e77fb1 100644 --- a/tests/cassettes/test_twitter/test_handle_twitter_mention[100-None].yaml +++ b/tests/cassettes/test_twitter/test_handle_twitter_mention[100-None].yaml @@ -1,4 +1,73 @@ interactions: +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + host: + - api.twitter.com + user-agent: + - python-httpx/0.23.2 + method: GET + uri: https://api.twitter.com/2/users/me?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities + response: + content: '{"data": {"entities": {"url": {"urls": [{"start": 0, "end": 23, "url": + "https://t.co/jkmQZP2YbL", "expanded_url": "https://donate4.fun", "display_url": + "donate4.fun"}]}, "description": {"mentions": [{"start": 59, "end": 71, "username": + "donate4_fun"}]}}, "name": "Tip4Fun", "id": "1616757608299339776", "verified": + false, "profile_image_url": "https://pbs.twimg.com/profile_images/1624461699909574663/ko3M0TUK_normal.jpg", + "username": "tip4fun", "description": "Bitcoin Lightning tips - mention me to + send a tip. Part of @donate4_fun service."}}' + headers: + api-version: + - '2.61' + cache-control: + - no-cache, no-store, max-age=0 + content-disposition: + - attachment; filename=json.json + content-encoding: + - gzip + content-length: + - '332' + content-type: + - application/json; charset=utf-8 + date: + - Thu, 09 Mar 2023 00:15:33 UTC + perf: + - '7626143928' + server: + - tsa_o + set-cookie: + - guest_id=v1%3A167832093336668513; Max-Age=34214400; Expires=Mon, 08 Apr 2024 + 00:15:33 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + strict-transport-security: + - max-age=631138519 + x-access-level: + - read-write-directmessages + x-connection-hash: + - 5a99160b410d620398bf762a8a54076e4d02f962647c70a4c72f26688ca20646 + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-rate-limit-limit: + - '75' + x-rate-limit-remaining: + - '70' + x-rate-limit-reset: + - '1678321546' + x-response-time: + - '146' + x-transaction-id: + - 5aebd9c6dc86645a + x-xss-protection: + - '0' + http_version: HTTP/1.1 + status_code: 200 - request: body: '' headers: @@ -17,9 +86,9 @@ interactions: method: GET uri: https://api.twitter.com/2/users/1591008723912343553?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities response: - content: '{"data": {"username": "Bryskin2", "verified": false, "name": "Nikolay - Bryskin", "id": "1591008723912343553", "profile_image_url": "https://abs.twimg.com/sticky/default_profile_images/default_profile_normal.png", - "description": ""}}' + content: '{"data": {"description": "", "username": "Bryskin2", "verified": false, + "id": "1591008723912343553", "name": "Nikolay Bryskin", "profile_image_url": + "https://abs.twimg.com/sticky/default_profile_images/default_profile_normal.png"}}' headers: api-version: - '2.61' @@ -30,24 +99,24 @@ interactions: content-encoding: - gzip content-length: - - '183' + - '181' content-type: - application/json; charset=utf-8 date: - - Sun, 19 Feb 2023 19:44:30 UTC + - Thu, 09 Mar 2023 00:15:33 UTC perf: - '7626143928' server: - tsa_o set-cookie: - - guest_id=v1%3A167683587032589662; Max-Age=34214400; Expires=Thu, 21 Mar 2024 - 19:44:30 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167832093370406785; Max-Age=34214400; Expires=Mon, 08 Apr 2024 + 00:15:33 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None strict-transport-security: - max-age=631138519 x-access-level: - read x-connection-hash: - - ef82efaf650d60f576b5ec2a13c27454754e0e67c0a0818441809aded54e7efc + - cd5d5b64215e6882ae50f67a35937b4df28fc83caeb6c160d2021e368f854a36 x-content-type-options: - nosniff x-frame-options: @@ -55,13 +124,13 @@ interactions: x-rate-limit-limit: - '300' x-rate-limit-remaining: - - '299' + - '297' x-rate-limit-reset: - - '1676836770' + - '1678321789' x-response-time: - - '134' + - '128' x-transaction-id: - - 70074242276c9831 + - c2d249d52feba3a6 x-xss-protection: - '0' http_version: HTTP/1.1 @@ -84,12 +153,12 @@ interactions: method: GET uri: https://api.twitter.com/2/users/1616757608299339776?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities response: - content: '{"data": {"verified": false, "description": "Bitcoin Lightning tips - - mention me to send a tip. Part of @donate4_fun service.", "id": "1616757608299339776", - "name": "Tip4Fun", "username": "tip4fun", "profile_image_url": "https://pbs.twimg.com/profile_images/1624461699909574663/ko3M0TUK_normal.jpg", - "entities": {"url": {"urls": [{"start": 0, "end": 23, "url": "https://t.co/jkmQZP2YbL", - "expanded_url": "https://donate4.fun", "display_url": "donate4.fun"}]}, "description": - {"mentions": [{"start": 59, "end": 71, "username": "donate4_fun"}]}}}}' + content: '{"data": {"entities": {"url": {"urls": [{"start": 0, "end": 23, "url": + "https://t.co/jkmQZP2YbL", "expanded_url": "https://donate4.fun", "display_url": + "donate4.fun"}]}, "description": {"mentions": [{"start": 59, "end": 71, "username": + "donate4_fun"}]}}, "description": "Bitcoin Lightning tips - mention me to send + a tip. Part of @donate4_fun service.", "name": "Tip4Fun", "verified": false, + "id": "1616757608299339776", "username": "tip4fun", "profile_image_url": "https://pbs.twimg.com/profile_images/1624461699909574663/ko3M0TUK_normal.jpg"}}' headers: api-version: - '2.61' @@ -100,24 +169,24 @@ interactions: content-encoding: - gzip content-length: - - '336' + - '330' content-type: - application/json; charset=utf-8 date: - - Sun, 19 Feb 2023 19:44:30 UTC + - Thu, 09 Mar 2023 00:15:33 UTC perf: - '7626143928' server: - tsa_o set-cookie: - - guest_id=v1%3A167683587066127388; Max-Age=34214400; Expires=Thu, 21 Mar 2024 - 19:44:30 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167832093397563556; Max-Age=34214400; Expires=Mon, 08 Apr 2024 + 00:15:33 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None strict-transport-security: - max-age=631138519 x-access-level: - read x-connection-hash: - - b6af3993f33b80d49f21d75c3fd544b86cacaa4ffef08e9ba306eced87a19d66 + - 7097ed2df937505334d0d1d8c04f2a466c6cad787caff808ba6ac18ee8e25d5f x-content-type-options: - nosniff x-frame-options: @@ -125,13 +194,13 @@ interactions: x-rate-limit-limit: - '300' x-rate-limit-remaining: - - '298' + - '296' x-rate-limit-reset: - - '1676836770' + - '1678321789' x-response-time: - - '126' + - '137' x-transaction-id: - - 0b47aec3c8d1f2bf + - 81bb71e9b6db549f x-xss-protection: - '0' http_version: HTTP/1.1 @@ -152,10 +221,10 @@ interactions: user-agent: - python-httpx/0.23.2 method: POST - uri: https://upload.twitter.com/1.1/media/upload.json?command=INIT&total_bytes=448&media_type=image%2Fpng&media_category=tweet_image + uri: https://upload.twitter.com/1.1/media/upload.json?command=INIT&total_bytes=440&media_type=image%2Fpng&media_category=tweet_image response: - content: '{"media_id": 1627393713390452737, "media_id_string": "1627393713390452737", - "expires_after_secs": 86400, "media_key": "3_1627393713390452737"}' + content: '{"media_id": 1633622520145362944, "media_id_string": "1633622520145362944", + "expires_after_secs": 86399, "media_key": "3_1633622520145362944"}' headers: cache-control: - no-cache, no-store, must-revalidate, pre-check=0, post-check=0 @@ -168,11 +237,11 @@ interactions: content-type: - application/json;charset=utf-8 date: - - Sun, 19 Feb 2023 19:44:31 GMT + - Thu, 09 Mar 2023 00:15:34 GMT expires: - Tue, 31 Mar 1981 05:00:00 GMT last-modified: - - Sun, 19 Feb 2023 19:44:31 GMT + - Thu, 09 Mar 2023 00:15:34 GMT perf: - '7626143928' pragma: @@ -181,8 +250,8 @@ interactions: - tsa_o set-cookie: - lang=en; Path=/ - - guest_id=v1%3A167683587142729293; Max-Age=34214400; Expires=Thu, 21 Mar 2024 - 19:44:31 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167832093468694088; Max-Age=34214400; Expires=Mon, 08 Apr 2024 + 00:15:34 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None status: - 202 Accepted strict-transport-security: @@ -192,23 +261,23 @@ interactions: x-access-level: - read-write-directmessages x-connection-hash: - - 5a42a5b826b080802cc50c7a5d93c270be5a60afb785d879fdedcdc216ac21e5 + - 47f438dd7077f106d9472ac7371b9686fa0fea2c520b980fa31274d135f5db26 x-frame-options: - SAMEORIGIN x-mediaid: - - '1627393713390452737' + - '1633622520145362944' x-rate-limit-limit: - '415' x-rate-limit-remaining: - - '411' + - '413' x-rate-limit-reset: - - '1676837494' + - '1678324490' x-response-time: - - '131' + - '128' x-transaction: - - c41c2255489b32fd + - 02264a49b07ee3f1 x-transaction-id: - - c41c2255489b32fd + - 02264a49b07ee3f1 x-twitter-response-tags: - BouncerCompliant x-xss-protection: @@ -217,22 +286,22 @@ interactions: status_code: 202 - request: body: !!binary | - LS1jMzBlZTdlZGZhMzQ5YjFkZGJiNzQ4YzhlODY1M2VlYg0KQ29udGVudC1EaXNwb3NpdGlvbjog - Zm9ybS1kYXRhOyBuYW1lPSJjb21tYW5kIg0KDQpBUFBFTkQNCi0tYzMwZWU3ZWRmYTM0OWIxZGRi - Yjc0OGM4ZTg2NTNlZWINCkNvbnRlbnQtRGlzcG9zaXRpb246IGZvcm0tZGF0YTsgbmFtZT0ibWVk - aWFfaWQiDQoNCjE2MjczOTM3MTMzOTA0NTI3MzcNCi0tYzMwZWU3ZWRmYTM0OWIxZGRiYjc0OGM4 - ZTg2NTNlZWINCkNvbnRlbnQtRGlzcG9zaXRpb246IGZvcm0tZGF0YTsgbmFtZT0ic2VnbWVudF9p - bmRleCINCg0KMA0KLS1jMzBlZTdlZGZhMzQ5YjFkZGJiNzQ4YzhlODY1M2VlYg0KQ29udGVudC1E + LS03MTZiODMyYTg0YTI5Mzc5YTEyYzk0YjM3NzBiNjIzNQ0KQ29udGVudC1EaXNwb3NpdGlvbjog + Zm9ybS1kYXRhOyBuYW1lPSJjb21tYW5kIg0KDQpBUFBFTkQNCi0tNzE2YjgzMmE4NGEyOTM3OWEx + MmM5NGIzNzcwYjYyMzUNCkNvbnRlbnQtRGlzcG9zaXRpb246IGZvcm0tZGF0YTsgbmFtZT0ibWVk + aWFfaWQiDQoNCjE2MzM2MjI1MjAxNDUzNjI5NDQNCi0tNzE2YjgzMmE4NGEyOTM3OWExMmM5NGIz + NzcwYjYyMzUNCkNvbnRlbnQtRGlzcG9zaXRpb246IGZvcm0tZGF0YTsgbmFtZT0ic2VnbWVudF9p + bmRleCINCg0KMA0KLS03MTZiODMyYTg0YTI5Mzc5YTEyYzk0YjM3NzBiNjIzNQ0KQ29udGVudC1E aXNwb3NpdGlvbjogZm9ybS1kYXRhOyBuYW1lPSJtZWRpYSI7IGZpbGVuYW1lPSJpbWFnZSINCkNv bnRlbnQtVHlwZTogaW1hZ2UvcG5nDQoNColQTkcNChoKAAAADUlIRFIAAAEiAAABIgEAAAAAdcXi - GwAAAYdJREFUeJztmcFtxCAQRf8ESzliKQVsKbizKJ3ZpaSASHC0hPVzALybtaLkwhqvh5vhSf6C - 4TMMQvzdppd/QIBSSimllFKtU5JblzplCKVn2FXXKShHkvQAph4AYEiS/Ek9XtcpqJBjXIYyct0G - 7as/JtVteoKACPX+qNRvFEeYbcq/v65npErcWwI52hchANyuQKvqj03h9kiFIZw3hPOlx5Hk2Kr6 - Y1Mp7q8xTiAib4M9dZ2KWkSGIAIEEY4AMGmeU5dKnsMxJfQRJCOQ3WcdbVX9sans944RcN6Qo81L - AVhS/b4iVfw+9ADsLHCfXRRYD06DlIOgVfXHplbPyal9ye+zBWncV6Ty3K8tuXyyf5+LOjr3dajk - OZK/TARgojjfC2BnUc+pT611TH5cYhkLr1rHrEnh6jTpSgusnqN+X5fa1jHtVyfOvwHTYDTuH0lx - LE4j737Rd6ua1KaO6bgIp8ss5QVrH11noO7rmKQvV1pYao5Zk7qvYwI2Quv3SimllFJPR30DyRHy - jwljaJQAAAAASUVORK5CYIINCi0tYzMwZWU3ZWRmYTM0OWIxZGRiYjc0OGM4ZTg2NTNlZWItLQ0K + GwAAAX9JREFUeJztmUFuhDAMRZ8LEktGmgPB1XqzcJTeAJYjBf0uEmboqFK7YTIi9i7Rk/Jlm8Q2 + Jv626eMfEDjllFNOOfXulGVrsZHVYNl2xqK6qqAGSdIMQCMbaSRJ+km9XlcV1LLl+HRZTQEws7a8 + rpoohaXFxheeWC/VPq0NmmhHnujUZpvvewELCNbk+n3T9a7qT0FNZmZ2ARuXTsCaypzSuk5Npbx/ + 5LjgZvkzKKmrBopUSg6K951G0EsMM7n4DO+q/gyUPq3LAUge/8rvgEJRXeemUt4rANIMCjRSeCS/ + 5/1h1O7OUegjOQqPeLjvD6Oyd+/jhJT3mhtJin7fH0ltvt9s98LmALjvj6LSm7rV8U0EmmiTAfQ3 + UyldFVG7OWZ/M+gjkLqsorqqoB5zTGth+Ook6ebz+5dSqcvqI0zWyev7A6nnOaZYroLlGm2YL8YQ + yuiqgXqeYyabRozpUlBXDRT7X4Opm43bXi+vMY+kfplj5pXP751yyimnzkR9A2+26v3Xfi9QAAAA + AElFTkSuQmCCDQotLTcxNmI4MzJhODRhMjkzNzlhMTJjOTRiMzc3MGI2MjM1LS0NCg== headers: accept: - '*/*' @@ -241,11 +310,11 @@ interactions: connection: - keep-alive content-length: - - '912' + - '904' content-type: - - multipart/form-data; boundary=c30ee7edfa349b1ddbb748c8e8653eeb + - multipart/form-data; boundary=716b832a84a29379a12c94b3770b6235 cookie: - - guest_id=v1%3A167683587142729293; lang=en + - guest_id=v1%3A167832093468694088; lang=en host: - upload.twitter.com user-agent: @@ -269,11 +338,11 @@ interactions: content-type: - text/html;charset=utf-8 date: - - Sun, 19 Feb 2023 19:44:31 GMT + - Thu, 09 Mar 2023 00:15:34 GMT expires: - Tue, 31 Mar 1981 05:00:00 GMT last-modified: - - Sun, 19 Feb 2023 19:44:31 GMT + - Thu, 09 Mar 2023 00:15:34 GMT perf: - '7626143928' pragma: @@ -289,17 +358,17 @@ interactions: x-access-level: - read-write-directmessages x-connection-hash: - - 5a42a5b826b080802cc50c7a5d93c270be5a60afb785d879fdedcdc216ac21e5 + - 47f438dd7077f106d9472ac7371b9686fa0fea2c520b980fa31274d135f5db26 x-frame-options: - SAMEORIGIN x-mediaid: - - '1627393713390452737' + - '1633622520145362944' x-rate-limit-limit: - '20000' x-rate-limit-remaining: - - '19997' + - '19998' x-rate-limit-reset: - - '1676837494' + - '1678324490' x-response-time: - '138' x-segmentcount: @@ -307,9 +376,9 @@ interactions: x-totalbytes: - '0' x-transaction: - - 97fdd1a0239bb425 + - a2dbe4dbbd09f498 x-transaction-id: - - 97fdd1a0239bb425 + - a2dbe4dbbd09f498 x-twitter-response-tags: - BouncerCompliant x-xss-protection: @@ -328,16 +397,16 @@ interactions: content-length: - '0' cookie: - - guest_id=v1%3A167683587142729293; lang=en + - guest_id=v1%3A167832093468694088; lang=en host: - upload.twitter.com user-agent: - python-httpx/0.23.2 method: POST - uri: https://upload.twitter.com/1.1/media/upload.json?command=FINALIZE&media_id=1627393713390452737 + uri: https://upload.twitter.com/1.1/media/upload.json?command=FINALIZE&media_id=1633622520145362944 response: - content: '{"media_id": 1627393713390452737, "media_id_string": "1627393713390452737", - "media_key": "3_1627393713390452737", "size": 448, "expires_after_secs": 86400, + content: '{"media_id": 1633622520145362944, "media_id_string": "1633622520145362944", + "media_key": "3_1633622520145362944", "size": 440, "expires_after_secs": 86400, "image": {"image_type": "image/png", "w": 290, "h": 290}}' headers: cache-control: @@ -351,11 +420,11 @@ interactions: content-type: - application/json;charset=utf-8 date: - - Sun, 19 Feb 2023 19:44:32 GMT + - Thu, 09 Mar 2023 00:15:35 GMT expires: - Tue, 31 Mar 1981 05:00:00 GMT last-modified: - - Sun, 19 Feb 2023 19:44:32 GMT + - Thu, 09 Mar 2023 00:15:35 GMT perf: - '7626143928' pragma: @@ -371,23 +440,23 @@ interactions: x-access-level: - read-write-directmessages x-connection-hash: - - 5a42a5b826b080802cc50c7a5d93c270be5a60afb785d879fdedcdc216ac21e5 + - 47f438dd7077f106d9472ac7371b9686fa0fea2c520b980fa31274d135f5db26 x-frame-options: - SAMEORIGIN x-mediaid: - - '1627393713390452737' + - '1633622520145362944' x-rate-limit-limit: - '615' x-rate-limit-remaining: - - '612' + - '613' x-rate-limit-reset: - - '1676837494' + - '1678324491' x-response-time: - - '305' + - '242' x-transaction: - - 5cd2ca86536bb126 + - b3fa582814b5e356 x-transaction-id: - - 5cd2ca86536bb126 + - b3fa582814b5e356 x-twitter-response-tags: - BouncerCompliant x-xss-protection: @@ -396,7 +465,8 @@ interactions: status_code: 201 - request: body: '{"reply": {"in_reply_to_tweet_id": "1623292724978896896"}, "text": "Invoice: - http://localhost:3000/lnurlp/twitter/tip4fun", "media": {"media_ids": ["1627393713390452737"]}}' + http://localhost:3000/api/v1/donation/18bff207-04cb-4fc4-ae22-2d3ca933a15d/invoice", + "media": {"media_ids": ["1633622520145362944"]}}' headers: accept: - '*/*' @@ -405,11 +475,11 @@ interactions: connection: - keep-alive content-length: - - '172' + - '210' content-type: - application/json cookie: - - guest_id=v1%3A167683587142729293 + - guest_id=v1%3A167832093336668513 host: - api.twitter.com user-agent: @@ -417,9 +487,9 @@ interactions: method: POST uri: https://api.twitter.com/2/tweets response: - content: '{"data": {"edit_history_tweet_ids": ["1627393718549467138"], "id": "1627393718549467138", - "text": "@Bryskin2 @donate4_fun Invoice: http://localhost:3000/lnurlp/twitter/tip4fun - https://t.co/7VPO7IzYgi"}}' + content: '{"data": {"edit_history_tweet_ids": ["1633622523412725760"], "id": "1633622523412725760", + "text": "@Bryskin2 @donate4_fun Invoice: http://localhost:3000/api/v1/donation/18bff207-04cb-4fc4-ae22-2d3ca933a15d/invoice + https://t.co/wQaSiNDRB3"}}' headers: api-version: - '2.61' @@ -430,13 +500,13 @@ interactions: content-encoding: - gzip content-length: - - '181' + - '208' content-type: - application/json; charset=utf-8 date: - - Sun, 19 Feb 2023 19:44:32 UTC + - Thu, 09 Mar 2023 00:15:36 UTC location: - - https://api.twitter.com/2/tweets/1627393718549467138 + - https://api.twitter.com/2/tweets/1633622523412725760 perf: - '7626143928' server: @@ -446,7 +516,7 @@ interactions: x-access-level: - read-write-directmessages x-connection-hash: - - a53756e5a01cce793e21ed201ad9a66b14421647462973f201425c67f65784ad + - 5a99160b410d620398bf762a8a54076e4d02f962647c70a4c72f26688ca20646 x-content-type-options: - nosniff x-frame-options: @@ -454,15 +524,16 @@ interactions: x-rate-limit-limit: - '200' x-rate-limit-remaining: - - '199' + - '198' x-rate-limit-reset: - - '1676836772' + - '1678321791' x-response-time: - - '362' + - '763' x-transaction-id: - - 41187a04f3e04b54 + - a202717268a4ecb9 x-xss-protection: - '0' http_version: HTTP/1.1 status_code: 201 +recorded_at: '2023-03-09T00:15:32.832829' version: 1 diff --git a/tests/cassettes/test_twitter/test_handle_twitter_mention[200-100].yaml b/tests/cassettes/test_twitter/test_handle_twitter_mention[200-100].yaml index cbec956b..d9523f03 100644 --- a/tests/cassettes/test_twitter/test_handle_twitter_mention[200-100].yaml +++ b/tests/cassettes/test_twitter/test_handle_twitter_mention[200-100].yaml @@ -1,4 +1,73 @@ interactions: +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + host: + - api.twitter.com + user-agent: + - python-httpx/0.23.2 + method: GET + uri: https://api.twitter.com/2/users/me?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities + response: + content: '{"data": {"profile_image_url": "https://pbs.twimg.com/profile_images/1624461699909574663/ko3M0TUK_normal.jpg", + "description": "Bitcoin Lightning tips - mention me to send a tip. Part of @donate4_fun + service.", "username": "tip4fun", "id": "1616757608299339776", "entities": {"url": + {"urls": [{"start": 0, "end": 23, "url": "https://t.co/jkmQZP2YbL", "expanded_url": + "https://donate4.fun", "display_url": "donate4.fun"}]}, "description": {"mentions": + [{"start": 59, "end": 71, "username": "donate4_fun"}]}}, "name": "Tip4Fun", + "verified": false}}' + headers: + api-version: + - '2.61' + cache-control: + - no-cache, no-store, max-age=0 + content-disposition: + - attachment; filename=json.json + content-encoding: + - gzip + content-length: + - '334' + content-type: + - application/json; charset=utf-8 + date: + - Thu, 09 Mar 2023 00:15:37 UTC + perf: + - '7626143928' + server: + - tsa_o + set-cookie: + - guest_id=v1%3A167832093706779178; Max-Age=34214400; Expires=Mon, 08 Apr 2024 + 00:15:37 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + strict-transport-security: + - max-age=631138519 + x-access-level: + - read-write-directmessages + x-connection-hash: + - 73a8887c60bb0dbbf7a3c7f3b2bfcbec857c4e6a06bcc07a0a8c0d95067c6063 + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-rate-limit-limit: + - '75' + x-rate-limit-remaining: + - '69' + x-rate-limit-reset: + - '1678321546' + x-response-time: + - '145' + x-transaction-id: + - 6b2d4209634a797d + x-xss-protection: + - '0' + http_version: HTTP/1.1 + status_code: 200 - request: body: '' headers: @@ -17,9 +86,9 @@ interactions: method: GET uri: https://api.twitter.com/2/users/1591008723912343553?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities response: - content: '{"data": {"description": "", "verified": false, "profile_image_url": - "https://abs.twimg.com/sticky/default_profile_images/default_profile_normal.png", - "id": "1591008723912343553", "username": "Bryskin2", "name": "Nikolay Bryskin"}}' + content: '{"data": {"name": "Nikolay Bryskin", "id": "1591008723912343553", "verified": + false, "profile_image_url": "https://abs.twimg.com/sticky/default_profile_images/default_profile_normal.png", + "username": "Bryskin2", "description": ""}}' headers: api-version: - '2.61' @@ -30,24 +99,24 @@ interactions: content-encoding: - gzip content-length: - - '182' + - '183' content-type: - application/json; charset=utf-8 date: - - Sun, 19 Feb 2023 19:44:33 UTC + - Thu, 09 Mar 2023 00:15:37 UTC perf: - '7626143928' server: - tsa_o set-cookie: - - guest_id=v1%3A167683587357561322; Max-Age=34214400; Expires=Thu, 21 Mar 2024 - 19:44:33 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167832093741992775; Max-Age=34214400; Expires=Mon, 08 Apr 2024 + 00:15:37 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None strict-transport-security: - max-age=631138519 x-access-level: - read x-connection-hash: - - e671c977ce744d34700eca273f3db9abc9ce40a0d4528c760ddd31f0441f9fa6 + - eab769975e5fd3c1be055dfa91bd41c9749f8f6d4d46ec28eb0d548e07ab80c1 x-content-type-options: - nosniff x-frame-options: @@ -55,13 +124,13 @@ interactions: x-rate-limit-limit: - '300' x-rate-limit-remaining: - - '297' + - '295' x-rate-limit-reset: - - '1676836770' + - '1678321789' x-response-time: - - '127' + - '120' x-transaction-id: - - df36471ad1967d71 + - 6acb5a2651490bcf x-xss-protection: - '0' http_version: HTTP/1.1 @@ -84,12 +153,12 @@ interactions: method: GET uri: https://api.twitter.com/2/users/1616757608299339776?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities response: - content: '{"data": {"verified": false, "description": "Bitcoin Lightning tips - - mention me to send a tip. Part of @donate4_fun service.", "id": "1616757608299339776", - "name": "Tip4Fun", "username": "tip4fun", "profile_image_url": "https://pbs.twimg.com/profile_images/1624461699909574663/ko3M0TUK_normal.jpg", - "entities": {"url": {"urls": [{"start": 0, "end": 23, "url": "https://t.co/jkmQZP2YbL", - "expanded_url": "https://donate4.fun", "display_url": "donate4.fun"}]}, "description": - {"mentions": [{"start": 59, "end": 71, "username": "donate4_fun"}]}}}}' + content: '{"data": {"entities": {"url": {"urls": [{"start": 0, "end": 23, "url": + "https://t.co/jkmQZP2YbL", "expanded_url": "https://donate4.fun", "display_url": + "donate4.fun"}]}, "description": {"mentions": [{"start": 59, "end": 71, "username": + "donate4_fun"}]}}, "verified": false, "profile_image_url": "https://pbs.twimg.com/profile_images/1624461699909574663/ko3M0TUK_normal.jpg", + "username": "tip4fun", "name": "Tip4Fun", "id": "1616757608299339776", "description": + "Bitcoin Lightning tips - mention me to send a tip. Part of @donate4_fun service."}}' headers: api-version: - '2.61' @@ -100,24 +169,24 @@ interactions: content-encoding: - gzip content-length: - - '336' + - '330' content-type: - application/json; charset=utf-8 date: - - Sun, 19 Feb 2023 19:44:33 UTC + - Thu, 09 Mar 2023 00:15:37 UTC perf: - '7626143928' server: - tsa_o set-cookie: - - guest_id=v1%3A167683587392717435; Max-Age=34214400; Expires=Thu, 21 Mar 2024 - 19:44:33 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167832093767217577; Max-Age=34214400; Expires=Mon, 08 Apr 2024 + 00:15:37 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None strict-transport-security: - max-age=631138519 x-access-level: - read x-connection-hash: - - 941b19b747d21616789a573486cd9e95276b584c73a8b7fb4a51489d7e161f38 + - 69625a7aa485ce3b8e855ccfcb7bca1cb25ce75fc77926d1c13aa5efeae89e36 x-content-type-options: - nosniff x-frame-options: @@ -125,13 +194,13 @@ interactions: x-rate-limit-limit: - '300' x-rate-limit-remaining: - - '296' + - '294' x-rate-limit-reset: - - '1676836770' + - '1678321789' x-response-time: - - '125' + - '138' x-transaction-id: - - 7edb65d707b375c8 + - 5d1d972b85d82e02 x-xss-protection: - '0' http_version: HTTP/1.1 @@ -152,10 +221,10 @@ interactions: user-agent: - python-httpx/0.23.2 method: POST - uri: https://upload.twitter.com/1.1/media/upload.json?command=INIT&total_bytes=448&media_type=image%2Fpng&media_category=tweet_image + uri: https://upload.twitter.com/1.1/media/upload.json?command=INIT&total_bytes=440&media_type=image%2Fpng&media_category=tweet_image response: - content: '{"media_id": 1627393725734199297, "media_id_string": "1627393725734199297", - "expires_after_secs": 86399, "media_key": "3_1627393725734199297"}' + content: '{"media_id": 1633622535559434240, "media_id_string": "1633622535559434240", + "expires_after_secs": 86399, "media_key": "3_1633622535559434240"}' headers: cache-control: - no-cache, no-store, must-revalidate, pre-check=0, post-check=0 @@ -164,15 +233,15 @@ interactions: content-encoding: - gzip content-length: - - '110' + - '111' content-type: - application/json;charset=utf-8 date: - - Sun, 19 Feb 2023 19:44:34 GMT + - Thu, 09 Mar 2023 00:15:38 GMT expires: - Tue, 31 Mar 1981 05:00:00 GMT last-modified: - - Sun, 19 Feb 2023 19:44:34 GMT + - Thu, 09 Mar 2023 00:15:38 GMT perf: - '7626143928' pragma: @@ -181,8 +250,8 @@ interactions: - tsa_o set-cookie: - lang=en; Path=/ - - guest_id=v1%3A167683587437614733; Max-Age=34214400; Expires=Thu, 21 Mar 2024 - 19:44:34 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167832093836178138; Max-Age=34214400; Expires=Mon, 08 Apr 2024 + 00:15:38 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None status: - 202 Accepted strict-transport-security: @@ -192,23 +261,23 @@ interactions: x-access-level: - read-write-directmessages x-connection-hash: - - 2a9d48621a9fa1956f7a8ea13c129d310db0b0439a5f171e9512acd4733d61c0 + - f0098bb213329abee8f9da860dcdb7a9307cb3fbbdb8ff53e168d2f5a81d9563 x-frame-options: - SAMEORIGIN x-mediaid: - - '1627393725734199297' + - '1633622535559434240' x-rate-limit-limit: - '415' x-rate-limit-remaining: - - '410' + - '412' x-rate-limit-reset: - - '1676837494' + - '1678324490' x-response-time: - - '130' + - '126' x-transaction: - - 819ec13e2b5211db + - 5baa4bcfd7944df6 x-transaction-id: - - 819ec13e2b5211db + - 5baa4bcfd7944df6 x-twitter-response-tags: - BouncerCompliant x-xss-protection: @@ -217,22 +286,22 @@ interactions: status_code: 202 - request: body: !!binary | - LS03Zjc1MDU5NDI3ZTFmMGFlODYyZDY3YmFlZmYzMDYzOA0KQ29udGVudC1EaXNwb3NpdGlvbjog - Zm9ybS1kYXRhOyBuYW1lPSJjb21tYW5kIg0KDQpBUFBFTkQNCi0tN2Y3NTA1OTQyN2UxZjBhZTg2 - MmQ2N2JhZWZmMzA2MzgNCkNvbnRlbnQtRGlzcG9zaXRpb246IGZvcm0tZGF0YTsgbmFtZT0ibWVk - aWFfaWQiDQoNCjE2MjczOTM3MjU3MzQxOTkyOTcNCi0tN2Y3NTA1OTQyN2UxZjBhZTg2MmQ2N2Jh - ZWZmMzA2MzgNCkNvbnRlbnQtRGlzcG9zaXRpb246IGZvcm0tZGF0YTsgbmFtZT0ic2VnbWVudF9p - bmRleCINCg0KMA0KLS03Zjc1MDU5NDI3ZTFmMGFlODYyZDY3YmFlZmYzMDYzOA0KQ29udGVudC1E + LS1jNjQ1Y2JlNmQ5OGU1YjFmMzc4NDI1NTI5NzExZTg4ZQ0KQ29udGVudC1EaXNwb3NpdGlvbjog + Zm9ybS1kYXRhOyBuYW1lPSJjb21tYW5kIg0KDQpBUFBFTkQNCi0tYzY0NWNiZTZkOThlNWIxZjM3 + ODQyNTUyOTcxMWU4OGUNCkNvbnRlbnQtRGlzcG9zaXRpb246IGZvcm0tZGF0YTsgbmFtZT0ibWVk + aWFfaWQiDQoNCjE2MzM2MjI1MzU1NTk0MzQyNDANCi0tYzY0NWNiZTZkOThlNWIxZjM3ODQyNTUy + OTcxMWU4OGUNCkNvbnRlbnQtRGlzcG9zaXRpb246IGZvcm0tZGF0YTsgbmFtZT0ic2VnbWVudF9p + bmRleCINCg0KMA0KLS1jNjQ1Y2JlNmQ5OGU1YjFmMzc4NDI1NTI5NzExZTg4ZQ0KQ29udGVudC1E aXNwb3NpdGlvbjogZm9ybS1kYXRhOyBuYW1lPSJtZWRpYSI7IGZpbGVuYW1lPSJpbWFnZSINCkNv bnRlbnQtVHlwZTogaW1hZ2UvcG5nDQoNColQTkcNChoKAAAADUlIRFIAAAEiAAABIgEAAAAAdcXi - GwAAAYdJREFUeJztmcFtxCAQRf8ESzliKQVsKbizKJ3ZpaSASHC0hPVzALybtaLkwhqvh5vhSf6C - 4TMMQvzdppd/QIBSSimllFKtU5JblzplCKVn2FXXKShHkvQAph4AYEiS/Ek9XtcpqJBjXIYyct0G - 7as/JtVteoKACPX+qNRvFEeYbcq/v65npErcWwI52hchANyuQKvqj03h9kiFIZw3hPOlx5Hk2Kr6 - Y1Mp7q8xTiAib4M9dZ2KWkSGIAIEEY4AMGmeU5dKnsMxJfQRJCOQ3WcdbVX9sans944RcN6Qo81L - AVhS/b4iVfw+9ADsLHCfXRRYD06DlIOgVfXHplbPyal9ye+zBWncV6Ty3K8tuXyyf5+LOjr3dajk - OZK/TARgojjfC2BnUc+pT611TH5cYhkLr1rHrEnh6jTpSgusnqN+X5fa1jHtVyfOvwHTYDTuH0lx - LE4j737Rd6ua1KaO6bgIp8ss5QVrH11noO7rmKQvV1pYao5Zk7qvYwI2Quv3SimllFJPR30DyRHy - jwljaJQAAAAASUVORK5CYIINCi0tN2Y3NTA1OTQyN2UxZjBhZTg2MmQ2N2JhZWZmMzA2MzgtLQ0K + GwAAAX9JREFUeJztmUFuhDAMRZ8LEktGmgPB1XqzcJTeAJYjBf0uEmboqFK7YTIi9i7Rk/Jlm8Q2 + Jv626eMfEDjllFNOOfXulGVrsZHVYNl2xqK6qqAGSdIMQCMbaSRJ+km9XlcV1LLl+HRZTQEws7a8 + rpoohaXFxheeWC/VPq0NmmhHnujUZpvvewELCNbk+n3T9a7qT0FNZmZ2ARuXTsCaypzSuk5Npbx/ + 5LjgZvkzKKmrBopUSg6K951G0EsMM7n4DO+q/gyUPq3LAUge/8rvgEJRXeemUt4rANIMCjRSeCS/ + 5/1h1O7OUegjOQqPeLjvD6Oyd+/jhJT3mhtJin7fH0ltvt9s98LmALjvj6LSm7rV8U0EmmiTAfQ3 + UyldFVG7OWZ/M+gjkLqsorqqoB5zTGth+Ook6ebz+5dSqcvqI0zWyev7A6nnOaZYroLlGm2YL8YQ + yuiqgXqeYyabRozpUlBXDRT7X4Opm43bXi+vMY+kfplj5pXP751yyimnzkR9A2+26v3Xfi9QAAAA + AElFTkSuQmCCDQotLWM2NDVjYmU2ZDk4ZTViMWYzNzg0MjU1Mjk3MTFlODhlLS0NCg== headers: accept: - '*/*' @@ -241,11 +310,11 @@ interactions: connection: - keep-alive content-length: - - '912' + - '904' content-type: - - multipart/form-data; boundary=7f75059427e1f0ae862d67baeff30638 + - multipart/form-data; boundary=c645cbe6d98e5b1f378425529711e88e cookie: - - guest_id=v1%3A167683587437614733; lang=en + - guest_id=v1%3A167832093836178138; lang=en host: - upload.twitter.com user-agent: @@ -269,11 +338,11 @@ interactions: content-type: - text/html;charset=utf-8 date: - - Sun, 19 Feb 2023 19:44:34 GMT + - Thu, 09 Mar 2023 00:15:38 GMT expires: - Tue, 31 Mar 1981 05:00:00 GMT last-modified: - - Sun, 19 Feb 2023 19:44:34 GMT + - Thu, 09 Mar 2023 00:15:38 GMT perf: - '7626143928' pragma: @@ -289,27 +358,27 @@ interactions: x-access-level: - read-write-directmessages x-connection-hash: - - 2a9d48621a9fa1956f7a8ea13c129d310db0b0439a5f171e9512acd4733d61c0 + - f0098bb213329abee8f9da860dcdb7a9307cb3fbbdb8ff53e168d2f5a81d9563 x-frame-options: - SAMEORIGIN x-mediaid: - - '1627393725734199297' + - '1633622535559434240' x-rate-limit-limit: - '20000' x-rate-limit-remaining: - - '19996' + - '19997' x-rate-limit-reset: - - '1676837494' + - '1678324490' x-response-time: - - '135' + - '139' x-segmentcount: - '0' x-totalbytes: - '0' x-transaction: - - 7dbe420600e4858a + - d04fc36295179192 x-transaction-id: - - 7dbe420600e4858a + - d04fc36295179192 x-twitter-response-tags: - BouncerCompliant x-xss-protection: @@ -328,16 +397,16 @@ interactions: content-length: - '0' cookie: - - guest_id=v1%3A167683587437614733; lang=en + - guest_id=v1%3A167832093836178138; lang=en host: - upload.twitter.com user-agent: - python-httpx/0.23.2 method: POST - uri: https://upload.twitter.com/1.1/media/upload.json?command=FINALIZE&media_id=1627393725734199297 + uri: https://upload.twitter.com/1.1/media/upload.json?command=FINALIZE&media_id=1633622535559434240 response: - content: '{"media_id": 1627393725734199297, "media_id_string": "1627393725734199297", - "media_key": "3_1627393725734199297", "size": 448, "expires_after_secs": 86400, + content: '{"media_id": 1633622535559434240, "media_id_string": "1633622535559434240", + "media_key": "3_1633622535559434240", "size": 440, "expires_after_secs": 86400, "image": {"image_type": "image/png", "w": 290, "h": 290}}' headers: cache-control: @@ -347,15 +416,15 @@ interactions: content-encoding: - gzip content-length: - - '151' + - '148' content-type: - application/json;charset=utf-8 date: - - Sun, 19 Feb 2023 19:44:35 GMT + - Thu, 09 Mar 2023 00:15:38 GMT expires: - Tue, 31 Mar 1981 05:00:00 GMT last-modified: - - Sun, 19 Feb 2023 19:44:35 GMT + - Thu, 09 Mar 2023 00:15:38 GMT perf: - '7626143928' pragma: @@ -371,23 +440,23 @@ interactions: x-access-level: - read-write-directmessages x-connection-hash: - - 2a9d48621a9fa1956f7a8ea13c129d310db0b0439a5f171e9512acd4733d61c0 + - f0098bb213329abee8f9da860dcdb7a9307cb3fbbdb8ff53e168d2f5a81d9563 x-frame-options: - SAMEORIGIN x-mediaid: - - '1627393725734199297' + - '1633622535559434240' x-rate-limit-limit: - '615' x-rate-limit-remaining: - - '611' + - '612' x-rate-limit-reset: - - '1676837494' + - '1678324491' x-response-time: - - '252' + - '258' x-transaction: - - 4ef4783f29b04021 + - 06ce3e365b1b3685 x-transaction-id: - - 4ef4783f29b04021 + - 06ce3e365b1b3685 x-twitter-response-tags: - BouncerCompliant x-xss-protection: @@ -396,7 +465,8 @@ interactions: status_code: 201 - request: body: '{"reply": {"in_reply_to_tweet_id": "1623292724978896896"}, "text": "Invoice: - http://localhost:3000/lnurlp/twitter/tip4fun", "media": {"media_ids": ["1627393725734199297"]}}' + http://localhost:3000/api/v1/donation/97ae46ae-edef-4026-943c-b47666af5986/invoice", + "media": {"media_ids": ["1633622535559434240"]}}' headers: accept: - '*/*' @@ -405,11 +475,11 @@ interactions: connection: - keep-alive content-length: - - '172' + - '210' content-type: - application/json cookie: - - guest_id=v1%3A167683587437614733 + - guest_id=v1%3A167832093706779178 host: - api.twitter.com user-agent: @@ -417,9 +487,9 @@ interactions: method: POST uri: https://api.twitter.com/2/tweets response: - content: '{"data": {"edit_history_tweet_ids": ["1627393729907638273"], "id": "1627393729907638273", - "text": "@Bryskin2 @donate4_fun Invoice: http://localhost:3000/lnurlp/twitter/tip4fun - https://t.co/FIQDjDWkvD"}}' + content: '{"data": {"edit_history_tweet_ids": ["1633622538998743043"], "id": "1633622538998743043", + "text": "@Bryskin2 @donate4_fun Invoice: http://localhost:3000/api/v1/donation/97ae46ae-edef-4026-943c-b47666af5986/invoice + https://t.co/afCIRq3eyo"}}' headers: api-version: - '2.61' @@ -430,13 +500,13 @@ interactions: content-encoding: - gzip content-length: - - '180' + - '205' content-type: - application/json; charset=utf-8 date: - - Sun, 19 Feb 2023 19:44:35 UTC + - Thu, 09 Mar 2023 00:15:40 UTC location: - - https://api.twitter.com/2/tweets/1627393729907638273 + - https://api.twitter.com/2/tweets/1633622538998743043 perf: - '7626143928' server: @@ -446,7 +516,7 @@ interactions: x-access-level: - read-write-directmessages x-connection-hash: - - 897d0a53038b1aaa4ad865294dc8c5ea1cf1c741afbfc0b2a1f5b48c206d156e + - 73a8887c60bb0dbbf7a3c7f3b2bfcbec857c4e6a06bcc07a0a8c0d95067c6063 x-content-type-options: - nosniff x-frame-options: @@ -454,15 +524,16 @@ interactions: x-rate-limit-limit: - '200' x-rate-limit-remaining: - - '198' + - '197' x-rate-limit-reset: - - '1676836772' + - '1678321791' x-response-time: - - '308' + - '987' x-transaction-id: - - fb3dab3dbc2d81f6 + - d03fb69559e8d3b4 x-xss-protection: - '0' http_version: HTTP/1.1 status_code: 201 +recorded_at: '2023-03-09T00:15:36.240496' version: 1 diff --git a/tests/cassettes/test_twitter/test_handle_twitter_mention[300-400].yaml b/tests/cassettes/test_twitter/test_handle_twitter_mention[300-400].yaml index 30e794ff..caf0b88f 100644 --- a/tests/cassettes/test_twitter/test_handle_twitter_mention[300-400].yaml +++ b/tests/cassettes/test_twitter/test_handle_twitter_mention[300-400].yaml @@ -1,4 +1,72 @@ interactions: +- request: + body: '' + headers: + accept: + - '*/*' + accept-encoding: + - gzip, deflate + connection: + - keep-alive + host: + - api.twitter.com + user-agent: + - python-httpx/0.23.2 + method: GET + uri: https://api.twitter.com/2/users/me?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities + response: + content: '{"data": {"id": "1616757608299339776", "description": "Bitcoin Lightning + tips - mention me to send a tip. Part of @donate4_fun service.", "username": + "tip4fun", "name": "Tip4Fun", "verified": false, "entities": {"url": {"urls": + [{"start": 0, "end": 23, "url": "https://t.co/jkmQZP2YbL", "expanded_url": "https://donate4.fun", + "display_url": "donate4.fun"}]}, "description": {"mentions": [{"start": 59, + "end": 71, "username": "donate4_fun"}]}}, "profile_image_url": "https://pbs.twimg.com/profile_images/1624461699909574663/ko3M0TUK_normal.jpg"}}' + headers: + api-version: + - '2.61' + cache-control: + - no-cache, no-store, max-age=0 + content-disposition: + - attachment; filename=json.json + content-encoding: + - gzip + content-length: + - '334' + content-type: + - application/json; charset=utf-8 + date: + - Thu, 09 Mar 2023 00:15:40 UTC + perf: + - '7626143928' + server: + - tsa_o + set-cookie: + - guest_id=v1%3A167832094082595452; Max-Age=34214400; Expires=Mon, 08 Apr 2024 + 00:15:40 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + strict-transport-security: + - max-age=631138519 + x-access-level: + - read-write-directmessages + x-connection-hash: + - 50f7221f08748f3fa1f6abef2c5eb009bbbfbe3977c0e103fcc4ffc081401a5a + x-content-type-options: + - nosniff + x-frame-options: + - SAMEORIGIN + x-rate-limit-limit: + - '75' + x-rate-limit-remaining: + - '68' + x-rate-limit-reset: + - '1678321546' + x-response-time: + - '154' + x-transaction-id: + - 615738d507120dcf + x-xss-protection: + - '0' + http_version: HTTP/1.1 + status_code: 200 - request: body: '' headers: @@ -17,9 +85,9 @@ interactions: method: GET uri: https://api.twitter.com/2/users/1591008723912343553?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities response: - content: '{"data": {"username": "Bryskin2", "verified": false, "name": "Nikolay - Bryskin", "id": "1591008723912343553", "profile_image_url": "https://abs.twimg.com/sticky/default_profile_images/default_profile_normal.png", - "description": ""}}' + content: '{"data": {"id": "1591008723912343553", "description": "", "verified": + false, "name": "Nikolay Bryskin", "username": "Bryskin2", "profile_image_url": + "https://abs.twimg.com/sticky/default_profile_images/default_profile_normal.png"}}' headers: api-version: - '2.61' @@ -30,24 +98,24 @@ interactions: content-encoding: - gzip content-length: - - '183' + - '178' content-type: - application/json; charset=utf-8 date: - - Sun, 19 Feb 2023 19:44:36 UTC + - Thu, 09 Mar 2023 00:15:41 UTC perf: - '7626143928' server: - tsa_o set-cookie: - - guest_id=v1%3A167683587631943113; Max-Age=34214400; Expires=Thu, 21 Mar 2024 - 19:44:36 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167832094128447249; Max-Age=34214400; Expires=Mon, 08 Apr 2024 + 00:15:41 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None strict-transport-security: - max-age=631138519 x-access-level: - read x-connection-hash: - - 86d563595032705bb7b9e20ea94d84f4f3e6ac461070a53910b980103fe666cc + - ee97fb0de03b42d5cc96121990aee1dd8f999afabe8e633f8c9f06c2113ec7ed x-content-type-options: - nosniff x-frame-options: @@ -55,13 +123,13 @@ interactions: x-rate-limit-limit: - '300' x-rate-limit-remaining: - - '295' + - '293' x-rate-limit-reset: - - '1676836770' + - '1678321789' x-response-time: - - '139' + - '133' x-transaction-id: - - 86130e0536e5ad20 + - 6c97c51622d757ea x-xss-protection: - '0' http_version: HTTP/1.1 @@ -84,13 +152,13 @@ interactions: method: GET uri: https://api.twitter.com/2/users/1616757608299339776?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities response: - content: '{"data": {"verified": false, "id": "1616757608299339776", "description": - "Bitcoin Lightning tips - mention me to send a tip. Part of @donate4_fun service.", - "profile_image_url": "https://pbs.twimg.com/profile_images/1624461699909574663/ko3M0TUK_normal.jpg", - "name": "Tip4Fun", "username": "tip4fun", "entities": {"url": {"urls": [{"start": - 0, "end": 23, "url": "https://t.co/jkmQZP2YbL", "expanded_url": "https://donate4.fun", - "display_url": "donate4.fun"}]}, "description": {"mentions": [{"start": 59, - "end": 71, "username": "donate4_fun"}]}}}}' + content: '{"data": {"entities": {"url": {"urls": [{"start": 0, "end": 23, "url": + "https://t.co/jkmQZP2YbL", "expanded_url": "https://donate4.fun", "display_url": + "donate4.fun"}]}, "description": {"mentions": [{"start": 59, "end": 71, "username": + "donate4_fun"}]}}, "name": "Tip4Fun", "verified": false, "description": "Bitcoin + Lightning tips - mention me to send a tip. Part of @donate4_fun service.", "profile_image_url": + "https://pbs.twimg.com/profile_images/1624461699909574663/ko3M0TUK_normal.jpg", + "username": "tip4fun", "id": "1616757608299339776"}}' headers: api-version: - '2.61' @@ -101,24 +169,24 @@ interactions: content-encoding: - gzip content-length: - - '335' + - '330' content-type: - application/json; charset=utf-8 date: - - Sun, 19 Feb 2023 19:44:36 UTC + - Thu, 09 Mar 2023 00:15:41 UTC perf: - '7626143928' server: - tsa_o set-cookie: - - guest_id=v1%3A167683587659109893; Max-Age=34214400; Expires=Thu, 21 Mar 2024 - 19:44:36 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167832094154595851; Max-Age=34214400; Expires=Mon, 08 Apr 2024 + 00:15:41 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None strict-transport-security: - max-age=631138519 x-access-level: - read x-connection-hash: - - bfbd4b3dd08d78ec685d40747332bd5db28a1dc276b8fb253b51d082ed9f7c79 + - fef7d4e1bc85a2321841631df3b1a3963b36e8bea285765f82b6a1fb3dbd1538 x-content-type-options: - nosniff x-frame-options: @@ -126,19 +194,19 @@ interactions: x-rate-limit-limit: - '300' x-rate-limit-remaining: - - '294' + - '292' x-rate-limit-reset: - - '1676836770' + - '1678321789' x-response-time: - - '133' + - '129' x-transaction-id: - - 474ed5eb28caf4d3 + - 5fdd5ed4169e4091 x-xss-protection: - '0' http_version: HTTP/1.1 status_code: 200 - request: - body: '{"reply": {"in_reply_to_tweet_id": "1623292724978896896"}, "text": "http://localhost:3000/donation/03d9613c-72af-440e-8ea1-bdc5fb5e8c2d"}' + body: '{"reply": {"in_reply_to_tweet_id": "1623292724978896896"}, "text": "http://localhost:3000/donation/9a725174-56ea-4a25-b60d-8ab61f3c621b"}' headers: accept: - '*/*' @@ -150,6 +218,8 @@ interactions: - '137' content-type: - application/json + cookie: + - guest_id=v1%3A167832094082595452 host: - api.twitter.com user-agent: @@ -157,8 +227,8 @@ interactions: method: POST uri: https://api.twitter.com/2/tweets response: - content: '{"data": {"edit_history_tweet_ids": ["1627393736819851264"], "id": "1627393736819851264", - "text": "@Bryskin2 @donate4_fun http://localhost:3000/donation/03d9613c-72af-440e-8ea1-bdc5fb5e8c2d"}}' + content: '{"data": {"edit_history_tweet_ids": ["1633622550252072960"], "id": "1633622550252072960", + "text": "@Bryskin2 @donate4_fun http://localhost:3000/donation/9a725174-56ea-4a25-b60d-8ab61f3c621b"}}' headers: api-version: - '2.61' @@ -169,26 +239,23 @@ interactions: content-encoding: - gzip content-length: - - '170' + - '169' content-type: - application/json; charset=utf-8 date: - - Sun, 19 Feb 2023 19:44:37 UTC + - Thu, 09 Mar 2023 00:15:42 UTC location: - - https://api.twitter.com/2/tweets/1627393736819851264 + - https://api.twitter.com/2/tweets/1633622550252072960 perf: - '7626143928' server: - tsa_o - set-cookie: - - guest_id=v1%3A167683587700387819; Max-Age=34214400; Expires=Thu, 21 Mar 2024 - 19:44:37 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None strict-transport-security: - max-age=631138519 x-access-level: - read-write-directmessages x-connection-hash: - - 18907e1506e12b4ca4d7e2be0be1002d302022f87eab80a0df68c7171c7cc4ea + - 50f7221f08748f3fa1f6abef2c5eb009bbbfbe3977c0e103fcc4ffc081401a5a x-content-type-options: - nosniff x-frame-options: @@ -196,15 +263,16 @@ interactions: x-rate-limit-limit: - '200' x-rate-limit-remaining: - - '197' + - '196' x-rate-limit-reset: - - '1676836772' + - '1678321791' x-response-time: - - '248' + - '981' x-transaction-id: - - 06c1323769d6b3d9 + - d6477dcb68736e3c x-xss-protection: - '0' http_version: HTTP/1.1 status_code: 201 +recorded_at: '2023-03-09T00:15:40.345081' version: 1 diff --git a/tests/cassettes/test_twitter/test_login_via_oauth1.yaml b/tests/cassettes/test_twitter/test_login_via_oauth1.yaml index eba1e939..c5133475 100644 --- a/tests/cassettes/test_twitter/test_login_via_oauth1.yaml +++ b/tests/cassettes/test_twitter/test_login_via_oauth1.yaml @@ -17,14 +17,14 @@ interactions: method: POST uri: https://api.twitter.com/oauth/request_token response: - content: oauth_token=secret&oauth_token_secret=secret&oauth_callback_confirmed=true + content: oauth_token=NMnSbgAAAAABjBUFAAABhtFpouU&oauth_token_secret=secret&oauth_callback_confirmed=true headers: cache-control: - no-cache, no-store, must-revalidate, pre-check=0, post-check=0 content-encoding: - gzip content-length: - - '128' + - '129' content-security-policy: - default-src 'none'; connect-src 'self'; font-src https://abs.twimg.com https://abs-0.twimg.com data:; frame-src 'self' twitter:; img-src https://abs.twimg.com https://*.twimg.com @@ -34,11 +34,11 @@ interactions: content-type: - text/html;charset=utf-8 date: - - Wed, 01 Feb 2023 12:26:38 GMT + - Sat, 11 Mar 2023 16:03:26 GMT expires: - Tue, 31 Mar 1981 05:00:00 GMT last-modified: - - Wed, 01 Feb 2023 12:26:38 GMT + - Sat, 11 Mar 2023 16:03:26 GMT ml: - A perf: @@ -48,24 +48,24 @@ interactions: server: - tsa_o set-cookie: - - guest_id=v1%3A167525439785682032; Max-Age=34214400; Expires=Sun, 03 Mar 2024 - 12:26:38 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167855060655031755; Max-Age=34214400; Expires=Wed, 10 Apr 2024 + 16:03:26 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None status: - 200 OK strict-transport-security: - max-age=631138519 x-connection-hash: - - ff2c6e934cbd6aea75e1ef2f664e2593cd8cb3d1b25824aa40d4ed544fb0d5b9 + - 6b4cfe59c0fe8eab38ad3a1e2e7fabb70bec8a9da6ee37b4073e6c49134895b4 x-content-type-options: - nosniff x-frame-options: - SAMEORIGIN x-response-time: - - '251' + - '257' x-transaction: - - 3531b1cfcc55e1be + - b10fd40d600104ca x-transaction-id: - - 3531b1cfcc55e1be + - b10fd40d600104ca x-twitter-response-tags: - BouncerCompliant x-ua-compatible: @@ -74,6 +74,19 @@ interactions: - '0' http_version: HTTP/1.1 status_code: 200 +- request: + body: '' + headers: + name: + - twitter-login-via-oauth1 + prompt: + - 'Open this url, authorize and paste resulting url here:' + method: GET + uri: https://api.twitter.com/oauth/authorize?oauth_callback=http%3A%2F%2Flocalhost%3A3000%2Fapi%2Fv1%2Ftwitter%2Foauth1-callback&oauth_token=NMnSbgAAAAABjBUFAAABhtFpouU + response: + headers: + location: http://localhost:3000/api/v1/twitter/oauth1-callback?oauth_token=NMnSbgAAAAABjBUFAAABhtFpouU&oauth_verifier=ZHqMly75rFtXzhpzuBgheOcVZVz8Pcmq + status_code: 307 - request: body: '' headers: @@ -90,18 +103,18 @@ interactions: user-agent: - python-httpx/0.23.2 method: POST - uri: https://api.twitter.com/oauth/access_token + uri: https://api.twitter.com/oauth/access_token?oauth_token=NMnSbgAAAAABjBUFAAABhtFpouU&oauth_verifier=ZHqMly75rFtXzhpzuBgheOcVZVz8Pcmq response: - content: oauth_token=secret&oauth_token_secret=secret&user_id=1572908920485576704&screen_name=donate4_fun + content: oauth_token=1591008723912343553-tcDL6zxOYgGnorhMfZJXuGaVWQVUJK&oauth_token_secret=secret&user_id=1591008723912343553&screen_name=Bryskin2 headers: att: - - 1-GemgTBmfIOqvZTRJBs7Pmf2aNSysvKadEHqcpoxT + - 1-1t4BEvvDq9RWXeWpRUmcbsbe5rAej0iFnTV7MOeF cache-control: - no-cache, no-store, must-revalidate, pre-check=0, post-check=0 content-encoding: - gzip content-length: - - '175' + - '173' content-security-policy: - default-src 'none'; connect-src 'self'; font-src https://abs.twimg.com https://abs-0.twimg.com data:; frame-src 'self' twitter:; img-src https://abs.twimg.com https://*.twimg.com @@ -111,11 +124,11 @@ interactions: content-type: - text/html;charset=utf-8 date: - - Wed, 01 Feb 2023 12:26:48 GMT + - Sat, 11 Mar 2023 16:03:58 GMT expires: - Tue, 31 Mar 1981 05:00:00 GMT last-modified: - - Wed, 01 Feb 2023 12:26:48 GMT + - Sat, 11 Mar 2023 16:03:58 GMT ml: - A perf: @@ -125,102 +138,31 @@ interactions: server: - tsa_o set-cookie: - - guest_id=v1%3A167525440792085666; Max-Age=34214400; Expires=Sun, 03 Mar 2024 - 12:26:48 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167855063807618889; Max-Age=34214400; Expires=Wed, 10 Apr 2024 + 16:03:58 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None status: - 200 OK strict-transport-security: - max-age=631138519 x-connection-hash: - - 1f3e6496decfe1fe1965cb7e993185d8774d5cd998405e7143f9eb2353aa6814 + - 14c3010b0ef9e48f22da8a95b58686c8fa7c144a1d706d7e5130a1c0195513af x-content-type-options: - nosniff x-frame-options: - SAMEORIGIN x-response-time: - - '826' + - '681' x-transaction: - - 49d71f844f0e4e90 + - ba6c88f59c82e9be x-transaction-id: - - 49d71f844f0e4e90 + - ba6c88f59c82e9be x-twitter-response-tags: - BouncerCompliant x-ua-compatible: - IE=edge,chrome=1 x-xss-protection: - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - cookie: - - guest_id=v1%3A167525440792085666 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/me?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"id": "1572908920485576704", "description": "Donations with - #Bitcoin #LightningNetwork on Twitter and Youtube. \nCreated by @Novaklim1 and - @nbryskin.", "verified": false, "name": "Donate4.Fun \u26a1", "profile_image_url": - "https://pbs.twimg.com/profile_images/1574697734535348224/dzdW0yfs_normal.png", - "username": "donate4_fun", "entities": {"url": {"urls": [{"start": 0, "end": - 23, "url": "https://t.co/xu5wqhAwa7", "expanded_url": "https://donate4.fun/", - "display_url": "donate4.fun"}]}, "description": {"hashtags": [{"start": 15, - "end": 23, "tag": "Bitcoin"}, {"start": 24, "end": 41, "tag": "LightningNetwork"}], - "mentions": [{"start": 78, "end": 88, "username": "Novaklim1"}, {"start": 93, - "end": 102, "username": "nbryskin"}]}}}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '419' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 01 Feb 2023 12:26:48 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 1f3e6496decfe1fe1965cb7e993185d8774d5cd998405e7143f9eb2353aa6814 - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '75' - x-rate-limit-remaining: - - '64' - x-rate-limit-reset: - - '1675254581' - x-response-time: - - '149' - x-transaction-id: - - b32839125e5d8be0 - x-xss-protection: - - '0' - http_version: HTTP/1.1 + http_version: HTTP/2 status_code: 200 - request: body: '' @@ -240,14 +182,14 @@ interactions: method: POST uri: https://api.twitter.com/oauth/request_token response: - content: oauth_token=secret&oauth_token_secret=secret&oauth_callback_confirmed=true + content: oauth_token=_kInZAAAAAABjBUFAAABhtFqIbg&oauth_token_secret=secret&oauth_callback_confirmed=true headers: cache-control: - no-cache, no-store, must-revalidate, pre-check=0, post-check=0 content-encoding: - gzip content-length: - - '129' + - '128' content-security-policy: - default-src 'none'; connect-src 'self'; font-src https://abs.twimg.com https://abs-0.twimg.com data:; frame-src 'self' twitter:; img-src https://abs.twimg.com https://*.twimg.com @@ -257,11 +199,11 @@ interactions: content-type: - text/html;charset=utf-8 date: - - Wed, 01 Feb 2023 12:26:49 GMT + - Sat, 11 Mar 2023 16:03:59 GMT expires: - Tue, 31 Mar 1981 05:00:00 GMT last-modified: - - Wed, 01 Feb 2023 12:26:49 GMT + - Sat, 11 Mar 2023 16:03:59 GMT ml: - A perf: @@ -271,24 +213,24 @@ interactions: server: - tsa_o set-cookie: - - guest_id=v1%3A167525440902319978; Max-Age=34214400; Expires=Sun, 03 Mar 2024 - 12:26:49 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167855063902119929; Max-Age=34214400; Expires=Wed, 10 Apr 2024 + 16:03:59 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None status: - 200 OK strict-transport-security: - max-age=631138519 x-connection-hash: - - b2ca9368e798eec4a7a6a55d13ea95146c88e242a5fa1e86404d1046382c4730 + - d8bc614fc23b666bbe7d3d942ae1927811282124dd0ccdf433b3fdc0f7cc60ce x-content-type-options: - nosniff x-frame-options: - SAMEORIGIN x-response-time: - - '263' + - '191' x-transaction: - - 369ef33b508abbf7 + - adc91a223ba90e58 x-transaction-id: - - 369ef33b508abbf7 + - adc91a223ba90e58 x-twitter-response-tags: - BouncerCompliant x-ua-compatible: @@ -297,6 +239,19 @@ interactions: - '0' http_version: HTTP/1.1 status_code: 200 +- request: + body: '' + headers: + name: + - twitter-login-via-oauth1-relogin + prompt: + - 'Open this url, authorize and paste resulting url here:' + method: GET + uri: https://api.twitter.com/oauth/authorize?oauth_callback=http%3A%2F%2Flocalhost%3A3000%2Fapi%2Fv1%2Ftwitter%2Foauth1-callback&oauth_token=_kInZAAAAAABjBUFAAABhtFqIbg + response: + headers: + location: http://localhost:3000/api/v1/twitter/oauth1-callback?oauth_token=_kInZAAAAAABjBUFAAABhtFqIbg&oauth_verifier=7a1gT4F2V1NHY109M49cS6cm9GgrTQ5J + status_code: 307 - request: body: '' headers: @@ -313,18 +268,18 @@ interactions: user-agent: - python-httpx/0.23.2 method: POST - uri: https://api.twitter.com/oauth/access_token + uri: https://api.twitter.com/oauth/access_token?oauth_token=_kInZAAAAAABjBUFAAABhtFqIbg&oauth_verifier=7a1gT4F2V1NHY109M49cS6cm9GgrTQ5J response: - content: oauth_token=secret&oauth_token_secret=secret&user_id=1572908920485576704&screen_name=donate4_fun + content: oauth_token=1591008723912343553-tcDL6zxOYgGnorhMfZJXuGaVWQVUJK&oauth_token_secret=secret&user_id=1591008723912343553&screen_name=Bryskin2 headers: att: - - 1-0Wdtxu35YPuCfnsa780WarO1Mgwiy7eUWHJc4Qy5 + - 1-MQhdLf2vBNkaJToYHve0loNOjYEv04xe0K0ICUM0 cache-control: - no-cache, no-store, must-revalidate, pre-check=0, post-check=0 content-encoding: - gzip content-length: - - '175' + - '173' content-security-policy: - default-src 'none'; connect-src 'self'; font-src https://abs.twimg.com https://abs-0.twimg.com data:; frame-src 'self' twitter:; img-src https://abs.twimg.com https://*.twimg.com @@ -334,11 +289,11 @@ interactions: content-type: - text/html;charset=utf-8 date: - - Wed, 01 Feb 2023 12:26:56 GMT + - Sat, 11 Mar 2023 16:04:04 GMT expires: - Tue, 31 Mar 1981 05:00:00 GMT last-modified: - - Wed, 01 Feb 2023 12:26:56 GMT + - Sat, 11 Mar 2023 16:04:04 GMT ml: - A perf: @@ -348,101 +303,30 @@ interactions: server: - tsa_o set-cookie: - - guest_id=v1%3A167525441641381996; Max-Age=34214400; Expires=Sun, 03 Mar 2024 - 12:26:56 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167855064458530475; Max-Age=34214400; Expires=Wed, 10 Apr 2024 + 16:04:04 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None status: - 200 OK strict-transport-security: - max-age=631138519 x-connection-hash: - - d6b049b7ca8bbfaaa74c2665013017983d81c787f2efe740622017de0e2c9cd5 + - ec4f0cea921808afc6c6b1f38c529d7bec0286b4a9261bbeaaf210f3c86bb201 x-content-type-options: - nosniff x-frame-options: - SAMEORIGIN x-response-time: - - '823' + - '390' x-transaction: - - d98f9418ac2720d4 + - e7dbf7ce63bbb84b x-transaction-id: - - d98f9418ac2720d4 + - e7dbf7ce63bbb84b x-twitter-response-tags: - BouncerCompliant x-ua-compatible: - IE=edge,chrome=1 x-xss-protection: - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - cookie: - - guest_id=v1%3A167525441641381996 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/me?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"entities": {"url": {"urls": [{"start": 0, "end": 23, "url": - "https://t.co/xu5wqhAwa7", "expanded_url": "https://donate4.fun/", "display_url": - "donate4.fun"}]}, "description": {"hashtags": [{"start": 15, "end": 23, "tag": - "Bitcoin"}, {"start": 24, "end": 41, "tag": "LightningNetwork"}], "mentions": - [{"start": 78, "end": 88, "username": "Novaklim1"}, {"start": 93, "end": 102, - "username": "nbryskin"}]}}, "id": "1572908920485576704", "profile_image_url": - "https://pbs.twimg.com/profile_images/1574697734535348224/dzdW0yfs_normal.png", - "description": "Donations with #Bitcoin #LightningNetwork on Twitter and Youtube. - \nCreated by @Novaklim1 and @nbryskin.", "username": "donate4_fun", "verified": - false, "name": "Donate4.Fun \u26a1"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '416' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 01 Feb 2023 12:26:57 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - d6b049b7ca8bbfaaa74c2665013017983d81c787f2efe740622017de0e2c9cd5 - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '75' - x-rate-limit-remaining: - - '63' - x-rate-limit-reset: - - '1675254581' - x-response-time: - - '139' - x-transaction-id: - - 30d3b8d5c4e8fcf7 - x-xss-protection: - - '0' - http_version: HTTP/1.1 + http_version: HTTP/2 status_code: 200 version: 1 diff --git a/tests/cassettes/test_twitter/test_login_via_oauth[-donator-me].yaml b/tests/cassettes/test_twitter/test_login_via_oauth[-donator-me].yaml index 8c644f3d..a87b49ea 100644 --- a/tests/cassettes/test_twitter/test_login_via_oauth[-donator-me].yaml +++ b/tests/cassettes/test_twitter/test_login_via_oauth[-donator-me].yaml @@ -1,6 +1,19 @@ interactions: - request: - body: grant_type=authorization_code&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fapi%2Fv1%2Foauth-redirect%2Ftwitter&code=cnlyVlpwZ3EyejlISEtVVUo5dENRU1BmS1VMcHQzemNGVmhFQlljaFJMMXl6OjE2NzUyNTQzNzc5NzE6MToxOmFjOjE&code_verifier=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%3D + body: '' + headers: + name: + - twitter-login-via-oauth + prompt: + - 'Open this url, authorize and paste url after redirect here:' + method: GET + uri: https://twitter.com/i/oauth2/authorize?client_id=MWlyTVlGbUdXRkY2Q09ncGxkbzc6MTpjaQ&code_challenge=UWQ-rJd3tjp7JoF00f1Cdtrt7JvJ6gvG5av2kEe8VPY&code_challenge_method=S256&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fapi%2Fv1%2Foauth-redirect%2Ftwitter&response_type=code&scope=tweet.read+users.read&state=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWNjZXNzX3BhdGgiOiIvZG9uYXRvci9tZSIsImVycm9yX3BhdGgiOiIiLCJkb25hdG9yX2lkIjoiMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAwIiwiYWxsb3dfc2lnbl9pbiI6dHJ1ZSwiY29kZV92ZXJpZmllciI6IkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUE9IiwiZXhwZWN0ZWRfYWNjb3VudCI6IjAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwMDAwMSIsImlhdCI6MTY0Mzg0MDU0MiwibmJmIjoxNjQzODQwNTQyLCJleHAiOjE2NDM4NDExNDJ9.KKR7D2R-MBYTYyJCEQFWg9qFLQFHVdG61N5qZrNe7B4 + response: + headers: + location: http://localhost:3000/api/v1/oauth-redirect/twitter?state=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWNjZXNzX3BhdGgiOiIvZG9uYXRvci9tZSIsImVycm9yX3BhdGgiOiIiLCJkb25hdG9yX2lkIjoiMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAwIiwiYWxsb3dfc2lnbl9pbiI6dHJ1ZSwiY29kZV92ZXJpZmllciI6IkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUE9IiwiZXhwZWN0ZWRfYWNjb3VudCI6IjAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwMDAwMSIsImlhdCI6MTY0Mzg0MDU0MiwibmJmIjoxNjQzODQwNTQyLCJleHAiOjE2NDM4NDExNDJ9.KKR7D2R-MBYTYyJCEQFWg9qFLQFHVdG61N5qZrNe7B4&code=d3M3TzVnNjMwQUVOS0F2WmE3QzdzdVNwSHBHcVJjbWtIak1fLXg0Sm9VTjJsOjE2Nzg1NTQ1OTc5NDI6MToxOmFjOjE + status_code: 307 +- request: + body: grant_type=authorization_code&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fapi%2Fv1%2Foauth-redirect%2Ftwitter&code=d3M3TzVnNjMwQUVOS0F2WmE3QzdzdVNwSHBHcVJjbWtIak1fLXg0Sm9VTjJsOjE2Nzg1NTQ1OTc5NDI6MToxOmFjOjE&code_verifier=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%3D headers: accept: - application/json @@ -33,11 +46,11 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Wed, 01 Feb 2023 12:26:24 GMT + - Sat, 11 Mar 2023 17:10:01 GMT expires: - Tue, 31 Mar 1981 05:00:00 GMT last-modified: - - Wed, 01 Feb 2023 12:26:25 GMT + - Sat, 11 Mar 2023 17:10:01 GMT perf: - '7626143928' pragma: @@ -45,20 +58,20 @@ interactions: server: - tsa_o set-cookie: - - guest_id=v1%3A167525438526745783; Max-Age=34214400; Expires=Sun, 03 Mar 2024 - 12:26:25 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167855460161768913; Max-Age=34214400; Expires=Wed, 10 Apr 2024 + 17:10:01 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None strict-transport-security: - max-age=631138519 x-connection-hash: - - 166353c1a46ce02a504de23e85919d54c90971c184886921c245f31ebc67c8f9 + - 1ecd61797f56d0e43cb0d3cd7aef710b2edd0b420193647c8ee9d035ef4d56a3 x-content-type-options: - nosniff x-frame-options: - SAMEORIGIN x-response-time: - - '399' + - '400' x-transaction-id: - - 121a54341f9f5b10 + - 4fcc06adfa89c997 x-twitter-response-tags: - BouncerCompliant x-xss-protection: @@ -68,75 +81,18 @@ interactions: - request: body: '' headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - cookie: - - guest_id=v1%3A167525438526745783 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 + name: + - twitter-login-via-oauth-relogin + prompt: + - 'Open this url, authorize and paste url after redirect here:' method: GET - uri: https://api.twitter.com/2/users/me?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities + uri: https://twitter.com/i/oauth2/authorize?client_id=MWlyTVlGbUdXRkY2Q09ncGxkbzc6MTpjaQ&code_challenge=UWQ-rJd3tjp7JoF00f1Cdtrt7JvJ6gvG5av2kEe8VPY&code_challenge_method=S256&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fapi%2Fv1%2Foauth-redirect%2Ftwitter&response_type=code&scope=tweet.read+users.read&state=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWNjZXNzX3BhdGgiOiIvZG9uYXRvci9tZSIsImVycm9yX3BhdGgiOiIiLCJkb25hdG9yX2lkIjoiMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAxIiwiYWxsb3dfc2lnbl9pbiI6dHJ1ZSwiY29kZV92ZXJpZmllciI6IkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUE9IiwiZXhwZWN0ZWRfYWNjb3VudCI6bnVsbCwiaWF0IjoxNjQzODQwNTQyLCJuYmYiOjE2NDM4NDA1NDIsImV4cCI6MTY0Mzg0MTE0Mn0.KoRkbnLcmSmMMm5UfS4Sh8z823OcLiayx0U43YPu2Z8 response: - content: '{"data": {"id": "1572908920485576704", "name": "Donate4.Fun \u26a1", - "description": "Donations with #Bitcoin #LightningNetwork on Twitter and Youtube. - \nCreated by @Novaklim1 and @nbryskin.", "entities": {"url": {"urls": [{"start": - 0, "end": 23, "url": "https://t.co/xu5wqhAwa7", "expanded_url": "https://donate4.fun/", - "display_url": "donate4.fun"}]}, "description": {"hashtags": [{"start": 15, - "end": 23, "tag": "Bitcoin"}, {"start": 24, "end": 41, "tag": "LightningNetwork"}], - "mentions": [{"start": 78, "end": 88, "username": "Novaklim1"}, {"start": 93, - "end": 102, "username": "nbryskin"}]}}, "profile_image_url": "https://pbs.twimg.com/profile_images/1574697734535348224/dzdW0yfs_normal.png", - "verified": false, "username": "donate4_fun"}}' headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '415' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 01 Feb 2023 12:26:25 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 166353c1a46ce02a504de23e85919d54c90971c184886921c245f31ebc67c8f9 - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '75' - x-rate-limit-remaining: - - '66' - x-rate-limit-reset: - - '1675254581' - x-response-time: - - '150' - x-transaction-id: - - 3d0264e5e5626523 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 + location: http://localhost:3000/api/v1/oauth-redirect/twitter?state=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWNjZXNzX3BhdGgiOiIvZG9uYXRvci9tZSIsImVycm9yX3BhdGgiOiIiLCJkb25hdG9yX2lkIjoiMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAxIiwiYWxsb3dfc2lnbl9pbiI6dHJ1ZSwiY29kZV92ZXJpZmllciI6IkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUE9IiwiZXhwZWN0ZWRfYWNjb3VudCI6bnVsbCwiaWF0IjoxNjQzODQwNTQyLCJuYmYiOjE2NDM4NDA1NDIsImV4cCI6MTY0Mzg0MTE0Mn0.KoRkbnLcmSmMMm5UfS4Sh8z823OcLiayx0U43YPu2Z8&code=aHQwbkktcl8zNm50VmlKRC16YXJ4blJHbUJrMVgyZGlEQmZnMUJOVTRJZ0w4OjE2Nzg1NTQ2MDM2NDA6MToxOmFjOjE + status_code: 307 - request: - body: grant_type=authorization_code&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fapi%2Fv1%2Foauth-redirect%2Ftwitter&code=aEpQYVpPSy0yTUI1YTE5Y0NPbUQ2dGZvTUZKZDlYYjRFNDV3STZfdDdYaE9oOjE2NzUyNTQzODkxOTc6MTowOmFjOjE&code_verifier=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%3D + body: grant_type=authorization_code&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fapi%2Fv1%2Foauth-redirect%2Ftwitter&code=aHQwbkktcl8zNm50VmlKRC16YXJ4blJHbUJrMVgyZGlEQmZnMUJOVTRJZ0w4OjE2Nzg1NTQ2MDM2NDA6MToxOmFjOjE&code_verifier=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%3D headers: accept: - application/json @@ -165,15 +121,15 @@ interactions: content-encoding: - gzip content-length: - - '187' + - '186' content-type: - application/json; charset=utf-8 date: - - Wed, 01 Feb 2023 12:26:36 GMT + - Sat, 11 Mar 2023 17:10:06 GMT expires: - Tue, 31 Mar 1981 05:00:00 GMT last-modified: - - Wed, 01 Feb 2023 12:26:36 GMT + - Sat, 11 Mar 2023 17:10:07 GMT perf: - '7626143928' pragma: @@ -181,94 +137,24 @@ interactions: server: - tsa_o set-cookie: - - guest_id=v1%3A167525439664878317; Max-Age=34214400; Expires=Sun, 03 Mar 2024 - 12:26:36 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167855460755166973; Max-Age=34214400; Expires=Wed, 10 Apr 2024 + 17:10:07 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None strict-transport-security: - max-age=631138519 x-connection-hash: - - b1277f89470f3bfc2240bf1758119d445c0ee2a6d50f2f3ee6f387d71e2da466 + - 052a916b5a9a496cc9abb68e4d6b1323f11daccb8731f30e8f908d07d1edfffe x-content-type-options: - nosniff x-frame-options: - SAMEORIGIN x-response-time: - - '405' + - '418' x-transaction-id: - - 7a4f2e7f6d47ee7a + - 8b6a464b331df3e6 x-twitter-response-tags: - BouncerCompliant x-xss-protection: - '0' http_version: HTTP/1.1 status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - connection: - - keep-alive - cookie: - - guest_id=v1%3A167525439664878317 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/me?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"verified": false, "profile_image_url": "https://pbs.twimg.com/profile_images/1574697734535348224/dzdW0yfs_normal.png", - "id": "1572908920485576704", "username": "donate4_fun", "entities": {"url": - {"urls": [{"start": 0, "end": 23, "url": "https://t.co/xu5wqhAwa7", "expanded_url": - "https://donate4.fun/", "display_url": "donate4.fun"}]}, "description": {"hashtags": - [{"start": 15, "end": 23, "tag": "Bitcoin"}, {"start": 24, "end": 41, "tag": - "LightningNetwork"}], "mentions": [{"start": 78, "end": 88, "username": "Novaklim1"}, - {"start": 93, "end": 102, "username": "nbryskin"}]}}, "name": "Donate4.Fun \u26a1", - "description": "Donations with #Bitcoin #LightningNetwork on Twitter and Youtube. - \nCreated by @Novaklim1 and @nbryskin."}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '414' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 01 Feb 2023 12:26:37 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - b1277f89470f3bfc2240bf1758119d445c0ee2a6d50f2f3ee6f387d71e2da466 - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '75' - x-rate-limit-remaining: - - '65' - x-rate-limit-reset: - - '1675254581' - x-response-time: - - '142' - x-transaction-id: - - 8975e05e6d242cab - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 version: 1 diff --git a/tests/cassettes/test_twitter/test_query_or_fetch_twitter_account[params0].yaml b/tests/cassettes/test_twitter/test_query_or_fetch_twitter_account[params0].yaml index e570a63c..6f5d128d 100644 --- a/tests/cassettes/test_twitter/test_query_or_fetch_twitter_account[params0].yaml +++ b/tests/cassettes/test_twitter/test_query_or_fetch_twitter_account[params0].yaml @@ -17,16 +17,15 @@ interactions: method: GET uri: https://api.twitter.com/2/users/by/username/donate4_fun?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities response: - content: '{"data": {"description": "Donations with #Bitcoin #LightningNetwork - on Twitter and Youtube. \nCreated by @Novaklim1 and @nbryskin.", "verified": - false, "id": "1572908920485576704", "name": "Donate4.Fun \u26a1", "profile_image_url": - "https://pbs.twimg.com/profile_images/1574697734535348224/dzdW0yfs_normal.png", - "entities": {"url": {"urls": [{"start": 0, "end": 23, "url": "https://t.co/xu5wqhAwa7", - "expanded_url": "https://donate4.fun/", "display_url": "donate4.fun"}]}, "description": - {"hashtags": [{"start": 15, "end": 23, "tag": "Bitcoin"}, {"start": 24, "end": - 41, "tag": "LightningNetwork"}], "mentions": [{"start": 78, "end": 88, "username": - "Novaklim1"}, {"start": 93, "end": 102, "username": "nbryskin"}]}}, "username": - "donate4_fun"}}' + content: '{"data": {"profile_image_url": "https://pbs.twimg.com/profile_images/1574697734535348224/dzdW0yfs_normal.png", + "verified": false, "name": "Donate4.Fun \u26a1", "id": "1572908920485576704", + "description": "Donations with #Bitcoin #LightningNetwork on Twitter and Youtube. + \nCreated by @Novaklim1 and @nbryskin.", "entities": {"url": {"urls": [{"start": + 0, "end": 23, "url": "https://t.co/xu5wqhAwa7", "expanded_url": "https://donate4.fun/", + "display_url": "donate4.fun"}]}, "description": {"hashtags": [{"start": 15, + "end": 23, "tag": "Bitcoin"}, {"start": 24, "end": 41, "tag": "LightningNetwork"}], + "mentions": [{"start": 78, "end": 88, "username": "Novaklim1"}, {"start": 93, + "end": 102, "username": "nbryskin"}]}}, "username": "donate4_fun"}}' headers: api-version: - '2.61' @@ -37,24 +36,24 @@ interactions: content-encoding: - gzip content-length: - - '417' + - '415' content-type: - application/json; charset=utf-8 date: - - Wed, 01 Feb 2023 12:26:11 UTC + - Mon, 06 Mar 2023 19:58:59 UTC perf: - '7626143928' server: - tsa_o set-cookie: - - guest_id=v1%3A167525437144188195; Max-Age=34214400; Expires=Sun, 03 Mar 2024 - 12:26:11 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167813273901887050; Max-Age=34214400; Expires=Fri, 05 Apr 2024 + 19:58:59 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None strict-transport-security: - max-age=631138519 x-access-level: - read x-connection-hash: - - a6902d44a4cef35dcf2af53f499178a2817ed746be795edbadb2195af8505bc1 + - 4d71a3602d65c37002ad9349758a15e49cf7c99ca3d03e80892498ac9412ab8f x-content-type-options: - nosniff x-frame-options: @@ -62,13 +61,13 @@ interactions: x-rate-limit-limit: - '300' x-rate-limit-remaining: - - '277' + - '297' x-rate-limit-reset: - - '1675254515' + - '1678133629' x-response-time: - - '126' + - '138' x-transaction-id: - - 70e79b96f34c451e + - 65daa17a281ce031 x-xss-protection: - '0' http_version: HTTP/1.1 diff --git a/tests/cassettes/test_twitter/test_query_or_fetch_twitter_account[params1].yaml b/tests/cassettes/test_twitter/test_query_or_fetch_twitter_account[params1].yaml index 42e7eaf9..200c696c 100644 --- a/tests/cassettes/test_twitter/test_query_or_fetch_twitter_account[params1].yaml +++ b/tests/cassettes/test_twitter/test_query_or_fetch_twitter_account[params1].yaml @@ -17,11 +17,11 @@ interactions: method: GET uri: https://api.twitter.com/2/users/12345?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities response: - content: '{"data": {"verified": false, "username": "harperreed", "description": - "ID 12345", "entities": {"url": {"urls": [{"start": 0, "end": 22, "url": "http://t.co/2H67IeuXKZ", - "expanded_url": "http://www.harperrules.com", "display_url": "harperrules.com"}]}}, - "name": "ID 12345", "profile_image_url": "https://pbs.twimg.com/profile_images/58849851/harper_4_normal.jpg", - "id": "12345"}}' + content: '{"data": {"profile_image_url": "https://pbs.twimg.com/profile_images/58849851/harper_4_normal.jpg", + "description": "ID 12345", "username": "harperreed", "id": "12345", "entities": + {"url": {"urls": [{"start": 0, "end": 22, "url": "http://t.co/2H67IeuXKZ", "expanded_url": + "http://www.harperrules.com", "display_url": "harperrules.com"}]}}, "name": + "ID 12345", "verified": false}}' headers: api-version: - '2.61' @@ -32,24 +32,24 @@ interactions: content-encoding: - gzip content-length: - - '248' + - '249' content-type: - application/json; charset=utf-8 date: - - Wed, 01 Feb 2023 12:26:11 UTC + - Mon, 06 Mar 2023 19:58:59 UTC perf: - '7626143928' server: - tsa_o set-cookie: - - guest_id=v1%3A167525437190362595; Max-Age=34214400; Expires=Sun, 03 Mar 2024 - 12:26:11 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167813273951931395; Max-Age=34214400; Expires=Fri, 05 Apr 2024 + 19:58:59 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None strict-transport-security: - max-age=631138519 x-access-level: - read x-connection-hash: - - a0c7ec48b887f6e7e1935eaf24811e5c8afeb77003f008fb4d8b7220a89b90b5 + - 40148d08e7675efa8c4b824b6ae26331625c952434385f654405bac128bd0f99 x-content-type-options: - nosniff x-frame-options: @@ -57,13 +57,13 @@ interactions: x-rate-limit-limit: - '300' x-rate-limit-remaining: - - '287' + - '299' x-rate-limit-reset: - - '1675254521' + - '1678133639' x-response-time: - - '130' + - '133' x-transaction-id: - - a8f918e36ba9b9e0 + - c7c2a77e21456c6f x-xss-protection: - '0' http_version: HTTP/1.1 diff --git a/tests/cassettes/test_twitter/test_query_or_fetch_twitter_account[params2].yaml b/tests/cassettes/test_twitter/test_query_or_fetch_twitter_account[params2].yaml index 3cdabd21..c9b63453 100644 --- a/tests/cassettes/test_twitter/test_query_or_fetch_twitter_account[params2].yaml +++ b/tests/cassettes/test_twitter/test_query_or_fetch_twitter_account[params2].yaml @@ -17,9 +17,9 @@ interactions: method: GET uri: https://api.twitter.com/2/users/by/username/twiteis?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities response: - content: '{"data": {"name": "twiteis", "id": "180438388", "profile_image_url": - "https://pbs.twimg.com/profile_images/1261863462591959040/3KXJQfH__normal.jpg", - "verified": false, "username": "twiteis", "description": "\u26a1\ufe0f flashypotato55@walletofsatoshi.com"}}' + content: '{"data": {"username": "twiteis", "description": "\u26a1\ufe0f flashypotato55@walletofsatoshi.com", + "id": "180438388", "profile_image_url": "https://pbs.twimg.com/profile_images/1261863462591959040/3KXJQfH__normal.jpg", + "verified": false, "name": "twiteis"}}' headers: api-version: - '2.61' @@ -30,24 +30,24 @@ interactions: content-encoding: - gzip content-length: - - '218' + - '220' content-type: - application/json; charset=utf-8 date: - - Wed, 01 Feb 2023 12:26:12 UTC + - Mon, 06 Mar 2023 19:59:00 UTC perf: - '7626143928' server: - tsa_o set-cookie: - - guest_id=v1%3A167525437244301150; Max-Age=34214400; Expires=Sun, 03 Mar 2024 - 12:26:12 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167813274000986546; Max-Age=34214400; Expires=Fri, 05 Apr 2024 + 19:59:00 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None strict-transport-security: - max-age=631138519 x-access-level: - read x-connection-hash: - - 4bf38cb94e4636797e7fa38d7a438e860377e7896cc359b56adedbfd38985779 + - ad35b770c789c6630fc01031266cb0a3cd5cbcb75e85713d0cb79a4af38f2658 x-content-type-options: - nosniff x-frame-options: @@ -55,13 +55,13 @@ interactions: x-rate-limit-limit: - '300' x-rate-limit-remaining: - - '276' + - '296' x-rate-limit-reset: - - '1675254515' + - '1678133629' x-response-time: - - '133' + - '139' x-transaction-id: - - a4eb1c4355ba054d + - 3639d760b7c33a8a x-xss-protection: - '0' http_version: HTTP/1.1 diff --git a/tests/cassettes/test_twitter/test_refetch_twitter_authors[None].yaml b/tests/cassettes/test_twitter/test_refetch_twitter_authors[None].yaml index 8eaa7786..4f6b508c 100644 --- a/tests/cassettes/test_twitter/test_refetch_twitter_authors[None].yaml +++ b/tests/cassettes/test_twitter/test_refetch_twitter_authors[None].yaml @@ -15,158 +15,17 @@ interactions: user-agent: - python-httpx/0.23.2 method: GET - uri: https://api.twitter.com/2/users/180438388?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"name": "twiteis", "verified": false, "id": "180438388", "username": - "twiteis", "profile_image_url": "https://pbs.twimg.com/profile_images/1261863462591959040/3KXJQfH__normal.jpg", - "description": "\u26a1\ufe0f flashypotato55@walletofsatoshi.com"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '219' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:05 UTC - perf: - - '7626143928' - server: - - tsa_o - set-cookie: - - guest_id=v1%3A167710404565894833; Max-Age=34214400; Expires=Sun, 24 Mar 2024 - 22:14:05 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '299' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '137' - x-transaction-id: - - 4e51eb1848ea81d1 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET uri: https://api.twitter.com/2/users/1572908920485576704?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities response: - content: '{"data": {"name": "Donate4.Fun \u26a1", "username": "donate4_fun", "profile_image_url": - "https://pbs.twimg.com/profile_images/1574697734535348224/dzdW0yfs_normal.png", - "verified": false, "id": "1572908920485576704", "description": "Donations with - #Bitcoin #LightningNetwork on Twitter and Youtube. \nCreated by @Novaklim1 and - @nbryskin.", "entities": {"url": {"urls": [{"start": 0, "end": 23, "url": "https://t.co/xu5wqhAwa7", - "expanded_url": "https://donate4.fun/", "display_url": "donate4.fun"}]}, "description": - {"hashtags": [{"start": 15, "end": 23, "tag": "Bitcoin"}, {"start": 24, "end": - 41, "tag": "LightningNetwork"}], "mentions": [{"start": 78, "end": 88, "username": - "Novaklim1"}, {"start": 93, "end": 102, "username": "nbryskin"}]}}}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '418' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:05 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '298' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '140' - x-transaction-id: - - 4ab4bf5163de73d7 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/2388075212?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"username": "Liveuamap", "entities": {"url": {"urls": [{"start": - 0, "end": 23, "url": "https://t.co/UQZ4EZ9jZe", "expanded_url": "http://liveuamap.com", - "display_url": "liveuamap.com"}]}, "description": {"urls": [{"start": 0, "end": - 23, "url": "https://t.co/GfM3LaCxj5", "expanded_url": "https://liveuamap.com", - "display_url": "liveuamap.com"}]}}, "name": "Liveuamap", "verified": true, "profile_image_url": - "https://pbs.twimg.com/profile_images/941334986313076736/681FnRJ0_normal.jpg", - "description": "https://t.co/GfM3LaCxj5 is platform that change the way you - receive news. Latest news on the map. Contact us info@liveuamap.com.\nTweets - sometimes op-ed", "id": "2388075212"}}' + content: '{"data": {"description": "Donations with #Bitcoin #LightningNetwork + on Twitter and Youtube. \nCreated by @Novaklim1 and @nbryskin.", "username": + "donate4_fun", "id": "1572908920485576704", "verified": false, "entities": {"url": + {"urls": [{"start": 0, "end": 23, "url": "https://t.co/xu5wqhAwa7", "expanded_url": + "https://donate4.fun/", "display_url": "donate4.fun"}]}, "description": {"hashtags": + [{"start": 15, "end": 23, "tag": "Bitcoin"}, {"start": 24, "end": 41, "tag": + "LightningNetwork"}], "mentions": [{"start": 78, "end": 88, "username": "Novaklim1"}, + {"start": 93, "end": 102, "username": "nbryskin"}]}}, "profile_image_url": "https://pbs.twimg.com/profile_images/1574697734535348224/dzdW0yfs_normal.png", + "name": "Donate4.Fun \u26a1"}}' headers: api-version: - '2.61' @@ -177,21 +36,24 @@ interactions: content-encoding: - gzip content-length: - - '355' + - '419' content-type: - application/json; charset=utf-8 date: - - Wed, 22 Feb 2023 22:14:06 UTC + - Sat, 11 Mar 2023 10:32:42 UTC perf: - '7626143928' server: - tsa_o + set-cookie: + - guest_id=v1%3A167853076296023382; Max-Age=34214400; Expires=Wed, 10 Apr 2024 + 10:32:42 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None strict-transport-security: - max-age=631138519 x-access-level: - read x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c + - 71cecedd82aef8c756c87774e130901626e8a16d84ac9b185eff9b9bf803412a x-content-type-options: - nosniff x-frame-options: @@ -201,3353 +63,11 @@ interactions: x-rate-limit-remaining: - '297' x-rate-limit-reset: - - '1677104945' - x-response-time: - - '128' - x-transaction-id: - - d47ca4c4760bc0a2 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/57315004?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"entities": {"url": {"urls": [{"start": 0, "end": 23, "url": - "https://t.co/0hF5KJiz1e", "expanded_url": "https://t.me/margaritasimonyan", - "display_url": "t.me/margaritasimon\u2026"}]}, "description": {"urls": [{"start": - 24, "end": 47, "url": "https://t.co/0hF5KJiz1e", "expanded_url": "https://t.me/margaritasimonyan", - "display_url": "t.me/margaritasimon\u2026"}]}}, "description": "\u0413\u043b\u0430\u0432\u043d\u044b\u0439 - \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440 RT. https://t.co/0hF5KJiz1e", - "id": "57315004", "username": "M_Simonyan", "profile_image_url": "https://pbs.twimg.com/profile_images/1362105206998204417/rpvrNmBC_normal.jpg", - "verified": true, "name": "\u041c\u0430\u0440\u0433\u0430\u0440\u0438\u0442\u0430 - \u0421\u0438\u043c\u043e\u043d\u044c\u044f\u043d"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '352' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:06 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '296' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '130' - x-transaction-id: - - cdbc5879cf31e709 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/44196397?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"verified": true, "profile_image_url": "https://pbs.twimg.com/profile_images/1590968738358079488/IY9Gx6Ok_normal.jpg", - "name": "Elon Musk", "username": "elonmusk", "description": "", "id": "44196397"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '183' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:06 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '295' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '127' - x-transaction-id: - - 699493f0d989281e - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/991745162274467840?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"name": "DeFi Dad \u27e0 defidad.eth \ud83e\udd87\ud83d\udd0a\ud83d\udc3c", - "username": "DeFi_Dad", "profile_image_url": "https://pbs.twimg.com/profile_images/1613764698775633921/72tL5YzB_normal.jpg", - "verified": false, "id": "991745162274467840", "description": "\u27e0 DeFi super-user - / educator \n\ud83d\udcab Investing at @4RCapital \n\ud83c\udfd7 Advising - teams such as @Zapper_fi, @pushprotocol, @defiantnews\n\ud83c\udf99\ufe0f Host - of The DeFi Podcast", "entities": {"url": {"urls": [{"start": 0, "end": 23, - "url": "https://t.co/OLJgM3U8e4", "expanded_url": "http://defidad.com", "display_url": - "defidad.com"}]}, "description": {"mentions": [{"start": 46, "end": 56, "username": - "4RCapital"}, {"start": 84, "end": 94, "username": "Zapper_fi"}, {"start": 96, - "end": 109, "username": "pushprotocol"}, {"start": 111, "end": 123, "username": - "defiantnews"}]}}}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '487' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:06 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '294' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '134' - x-transaction-id: - - 2eebe90311c6f7de - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/2977797587?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"verified": false, "id": "2977797587", "description": "Przedsi\u0119biorca, - naukowiec, publicysta", "profile_image_url": "https://pbs.twimg.com/profile_images/555298739842084864/7IRdRof1_normal.jpeg", - "name": "Tomasz Kasprowicz", "username": "KasprowiczT"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '222' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:07 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '293' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '132' - x-transaction-id: - - 31f4e22b79c2417e - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/108172903?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"name": "banteg", "description": "the bunny talisman of yearn", - "entities": {"url": {"urls": [{"start": 0, "end": 23, "url": "https://t.co/3ccy0hjS9k", - "expanded_url": "http://github.com/banteg", "display_url": "github.com/banteg"}]}}, - "verified": false, "profile_image_url": "https://pbs.twimg.com/profile_images/1406018339835678720/fLQOnMbp_normal.jpg", - "id": "108172903", "username": "bantg"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '270' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:07 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '292' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '127' - x-transaction-id: - - b636fc3432092ded - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/367890321?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"verified": false, "username": "Solent123", "description": - "", "name": "blossom stuff", "id": "367890321", "profile_image_url": "https://pbs.twimg.com/profile_images/444520869562314752/4LDpM0Ld_normal.jpeg"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '186' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:07 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '291' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '126' - x-transaction-id: - - c2b984a2c7ff4e10 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1128404185349861383?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"profile_image_url": "https://pbs.twimg.com/profile_images/1176738343679332353/zrMZ4UlN_normal.jpg", - "verified": false, "id": "1128404185349861383", "username": "KozicaJ", "description": - "I block everyone who swears at me.", "name": "Kozica_Jaca"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '215' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:07 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '290' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '131' - x-transaction-id: - - 955c00ba09c932a4 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1096359934017617920?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"verified": false, "profile_image_url": "https://pbs.twimg.com/profile_images/1584612947527143446/Q_rBiDL7_normal.jpg", - "entities": {"description": {"hashtags": [{"start": 98, "end": 122, "tag": "RussiaIsATerroristState"}]}}, - "name": "Paw_Cza\ud83c\uddf5\ud83c\uddf1", "username": "CzaPaw", "description": - "Hobby: PewPewPew - Because It''s Hard To Throw A Rock At 2800 Fps.\nMy pronouns - are: He/Hehe/Hehehe\n#RussiaIsATerroristState", "id": "1096359934017617920"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '343' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:08 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '289' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '127' - x-transaction-id: - - 764cdccbc9726a48 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/920459139968532481?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"id": "920459139968532481", "verified": false, "name": "PrimedCenturion", - "profile_image_url": "https://pbs.twimg.com/profile_images/1617682219820105731/UvZvjm5f_normal.jpg", - "description": "Yb is trash tbh, Marshmallow on \ud83d\udd1d", "username": "BbrightStar5"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '236' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:08 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '288' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '139' - x-transaction-id: - - 1bf3178ba37b0af3 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1126457016?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"entities": {"url": {"urls": [{"start": 0, "end": 23, "url": - "https://t.co/339PTlJkeM", "expanded_url": "http://suredbits.com", "display_url": - "suredbits.com"}]}}, "verified": false, "username": "Chris_Stewart_5", "profile_image_url": - "https://pbs.twimg.com/profile_images/1362838188079919117/zuXB9YwM_normal.png", - "name": "Chris Stewart", "description": "", "id": "1126457016"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '265' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:08 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '287' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '128' - x-transaction-id: - - 4021fc97efe3b7c0 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1170808615218929665?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"entities": {"description": {"mentions": [{"start": 10, "end": - 23, "username": "Geoconfirmed"}]}}, "name": "Neonhandrail", "verified": false, - "id": "1170808615218929665", "username": "neonhandrail", "profile_image_url": - "https://pbs.twimg.com/profile_images/1538547337919729665/Xv8sZDhN_normal.jpg", - "description": "Volunteer @Geoconfirmed"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '246' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:08 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '286' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '127' - x-transaction-id: - - 509c3235094ebe3c - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/16133530?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"name": "Ministry of Defence \ud83c\uddec\ud83c\udde7", "entities": - {"url": {"urls": [{"start": 0, "end": 23, "url": "https://t.co/MgFOOOTecw", - "expanded_url": "https://www.gov.uk", "display_url": "gov.uk"}]}}, "username": - "DefenceHQ", "id": "16133530", "profile_image_url": "https://pbs.twimg.com/profile_images/1592647961502269442/i7ugKfAC_normal.jpg", - "description": "DefenceHQ is the official corporate news channel of the UK Ministry - of Defence.", "verified": true}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '319' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:09 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '285' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '130' - x-transaction-id: - - acc5426307f8cb0c - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/349075469?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"verified": false, "name": "Eric Podwojski \ud83d\udfe0", - "description": "Depressed Engineer \u27a1\ufe0f Happy Bitcoiner | I help Bitcoin - companies hire talented bitcoiners | Sharing tips to land a BTC job + open roles - | prev. @bitcoinmagazine", "id": "349075469", "entities": {"url": {"urls": [{"start": - 0, "end": 23, "url": "https://t.co/I7Ik6nlMQG", "expanded_url": "https://bitcointalent.co/", - "display_url": "bitcointalent.co"}]}, "description": {"mentions": [{"start": - 144, "end": 160, "username": "bitcoinmagazine"}]}}, "username": "epodrulz", - "profile_image_url": "https://pbs.twimg.com/profile_images/1569311401847529474/NV2RMKZz_normal.jpg"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '419' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:09 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '284' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '141' - x-transaction-id: - - 46dfb5bd4515770d - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1591008723912343553?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"name": "Nikolay Bryskin", "username": "Bryskin2", "description": - "", "id": "1591008723912343553", "verified": false, "profile_image_url": "https://abs.twimg.com/sticky/default_profile_images/default_profile_normal.png"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '181' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:09 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '283' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '129' - x-transaction-id: - - 0d2e1cb1b6dd8292 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/9918032?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"errors": [{"value": "9918032", "detail": "Could not find user with - id: [9918032].", "title": "Not Found Error", "resource_type": "user", "parameter": - "id", "resource_id": "9918032", "type": "https://api.twitter.com/2/problems/resource-not-found"}]}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '189' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:09 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '282' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '128' - x-transaction-id: - - 0cd782fa567fb60a - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/35881669?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"id": "35881669", "name": "Breno Brito", "profile_image_url": - "https://pbs.twimg.com/profile_images/1362885656742133763/NROFQwDY_normal.jpg", - "verified": false, "username": "brenorb", "description": "\ud83d\uddfd #libertarianism\n\ud83d\udcb9 - #finance\n\u20bf \n\ud83e\udde0 #DataScience\n\ud83d\udca9 #shitposts\n\u26a1 - brenorb@zbd.gg", "entities": {"description": {"hashtags": [{"start": 2, "end": - 17, "tag": "libertarianism"}, {"start": 20, "end": 28, "tag": "finance"}, {"start": - 34, "end": 46, "tag": "DataScience"}, {"start": 49, "end": 59, "tag": "shitposts"}]}}}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '349' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:10 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '281' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '131' - x-transaction-id: - - 30ea6df1eb458f5b - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1119473516?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"name": "Felix Le Chat \u26a1 13cm", "verified": false, "id": - "1119473516", "username": "DerFlkz", "profile_image_url": "https://pbs.twimg.com/profile_images/3161229739/ac898b9a0f8f83b595703a3120cd398d_normal.jpeg", - "description": "Lightning fetzt - \ud83d\udfe0 #\u20bfitcoin only!"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '254' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:10 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '280' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '129' - x-transaction-id: - - b13a0665b70ca017 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/632528146?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"entities": {"url": {"urls": [{"start": 0, "end": 23, "url": - "https://t.co/noF1aliS0O", "expanded_url": "http://stacksats.how", "display_url": - "stacksats.how"}]}}, "description": "\u26a1\ufe0f", "id": "632528146", "username": - "kerooke", "profile_image_url": "https://pbs.twimg.com/profile_images/1090667005055627264/67EgQy25_normal.jpg", - "verified": false, "name": "Kevin Rooke"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '275' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:10 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '279' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '137' - x-transaction-id: - - 3b2c68ed99f83f43 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/2488514976?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"verified": false, "username": "VelekMatej", "description": - "", "name": "Matej Velek \ud83c\udde8\ud83c\uddff", "id": "2488514976", "profile_image_url": - "https://pbs.twimg.com/profile_images/1533878423826866181/f4j9t3wU_normal.jpg"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '201' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:10 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '278' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '131' - x-transaction-id: - - 3f3e14db2ab54ec6 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/47155116?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"id": "47155116", "profile_image_url": "https://pbs.twimg.com/profile_images/1524644158954033153/v8KW-FOi_normal.jpg", - "username": "dannydiekroeger", "name": "danny \u26a1\ufe0f deezy", "entities": - {"url": {"urls": [{"start": 0, "end": 23, "url": "https://t.co/XxDtUrdOCa", - "expanded_url": "http://deezy.io", "display_url": "deezy.io"}]}, "description": - {"urls": [{"start": 35, "end": 58, "url": "https://t.co/AZQsxmEpab", "expanded_url": - "http://nosft.xyz", "display_url": "nosft.xyz"}, {"start": 59, "end": 82, "url": - "https://t.co/XxDtUrdOCa", "expanded_url": "http://deezy.io", "display_url": - "deezy.io"}], "mentions": [{"start": 21, "end": 34, "username": "astral_babes"}, - {"start": 90, "end": 98, "username": "cashapp"}, {"start": 99, "end": 105, "username": - "bitgo"}, {"start": 106, "end": 116, "username": "cardinals"}, {"start": 117, - "end": 129, "username": "stanfordbsb"}]}}, "verified": false, "description": - "fallen maxi, creator @astral_babes https://t.co/AZQsxmEpab https://t.co/XxDtUrdOCa - - prev @cashapp @bitgo @cardinals @stanfordbsb - inscriborr"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '462' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:11 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '277' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '132' - x-transaction-id: - - 1b60b312c6bee422 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1486043775206322176?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"description": "One-way Tickets to live in El Salvador \ud83c\uddf8\ud83c\uddfb\nLife - & #Bitcoin Lightning\u26a1\ufe0f\n\u26a1\ufe0fnjelsalvador@pay.bbw.sv\n\n\ud83d\udc49Buy - Ebook Simple Guide to Move to El Salvador \ud83d\udcd4", "entities": {"url": - {"urls": [{"start": 0, "end": 23, "url": "https://t.co/EZGnMpLfyW", "expanded_url": - "https://vida.page/njelsalvador", "display_url": "vida.page/njelsalvador"}]}, - "description": {"hashtags": [{"start": 49, "end": 57, "tag": "Bitcoin"}]}}, - "id": "1486043775206322176", "username": "njelsalvador", "verified": false, - "name": "Nicki & James in El Salvador \ud83c\uddf8\ud83c\uddfb", "profile_image_url": - "https://pbs.twimg.com/profile_images/1604572350418243587/eMMa8fkB_normal.jpg"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '441' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:11 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '276' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '141' - x-transaction-id: - - 05f7a97037cb6588 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/262373482?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"verified": false, "username": "cfcalfee", "description": - "Paper slinger & host @45withcole", "name": "Cole", "id": "262373482", "entities": - {"url": {"urls": [{"start": 0, "end": 23, "url": "https://t.co/KPNJFCl0KE", - "expanded_url": "http://colecalfee.com", "display_url": "colecalfee.com"}]}, - "description": {"mentions": [{"start": 21, "end": 32, "username": "45withcole"}]}}, - "profile_image_url": "https://pbs.twimg.com/profile_images/1613276919436378118/pyaAChFQ_normal.jpg"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '302' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:11 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '275' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '132' - x-transaction-id: - - 3c58975d6428ba88 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1511061231729324041?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"description": "Bitcoin, privacy, and FOSS.\nRun your own - node. Avoid KYC. Take self custody. Learn to spend. Build a signing device.", - "entities": {"url": {"urls": [{"start": 0, "end": 23, "url": "https://t.co/cZBxvHiYQ8", - "expanded_url": "https://sovrnbitcoiner.com/buying-kyc-free-bitcoin-faq/", "display_url": - "sovrnbitcoiner.com/buying-kyc-fre\u2026"}]}}, "id": "1511061231729324041", - "username": "KyleOfTheCorn", "verified": false, "name": "Kyle Linkinbio", "profile_image_url": - "https://pbs.twimg.com/profile_images/1511330233802280970/4WJTUeT4_normal.jpg"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '392' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:12 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '274' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '130' - x-transaction-id: - - 1372604b4d1d7dba - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/4107939250?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"entities": {"description": {"mentions": [{"start": 14, "end": - 19, "username": "FPRI"}, {"start": 32, "end": 37, "username": "USMC"}, {"start": - 39, "end": 52, "username": "ColumbiaSIPA"}, {"start": 54, "end": 64, "username": - "CentreAST"}]}}, "description": "Senior Fellow @FPRI. Previously @USMC, @ColumbiaSIPA, - @CentreAST. Focused on Russian defense policy.", "id": "4107939250", "username": - "RALee85", "profile_image_url": "https://pbs.twimg.com/profile_images/964497068424249345/Y6ce6atF_normal.jpg", - "verified": false, "name": "Rob Lee"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '331' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:12 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '273' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '127' - x-transaction-id: - - fc1f1942e231842a - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/903345829603418113?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"profile_image_url": "https://pbs.twimg.com/profile_images/1565292892750479360/dbeHZBg4_normal.jpg", - "verified": false, "id": "903345829603418113", "username": "ahatan1970", "description": - "\u041d\u0415\u0422 \u0412\u041e\u0419\u041d\u0415!\n\u0421\u0412\u041e\u0411\u041e\u0414\u0423 - \ud83c\uddfa\ud83c\udde6!\n\u0421\u041c\u0415\u0420\u0422\u042c \u0425\u0423\u0419\u041b\u0423!", - "name": "\u0415\u041a\u0411 \u043c\u0456\u0441\u0442\u043e \u0441\u0443\u0432\u043e\u0440\u0438\u0445 - \u0434\u0430\u043c"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '299' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:12 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '272' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '137' - x-transaction-id: - - 45197af167c59f3e - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1457735949920702471?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"name": "SVTV NEWS", "entities": {"url": {"urls": [{"start": - 0, "end": 23, "url": "https://t.co/OYPafTcgjA", "expanded_url": "http://svtv.org", - "display_url": "svtv.org"}]}, "description": {"urls": [{"start": 50, "end": - 73, "url": "https://t.co/eHRAtolj6V", "expanded_url": "http://patreon.com/svtvnews", - "display_url": "patreon.com/svtvnews"}]}}, "username": "svtv_news", "id": "1457735949920702471", - "profile_image_url": "https://pbs.twimg.com/profile_images/1457737090364583936/_klouxwk_normal.jpg", - "description": "\u0412\u0430\u0448 \u0441\u043e\u044e\u0437\u043d\u0438\u043a - \u0432 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 - \u0432\u043e\u0439\u043d\u0435! \n\n\u041f\u043e\u0434\u0434\u0435\u0440\u0436\u0430\u0442\u044c: - https://t.co/eHRAtolj6V", "verified": false}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '394' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:13 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '271' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '132' - x-transaction-id: - - 75fdb2c849fbd64b - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1549988272092639232?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"entities": {"url": {"urls": [{"start": 0, "end": 23, "url": - "https://t.co/qH5ki7xf16", "expanded_url": "https://github.com/vaibhavgarg237", - "display_url": "github.com/vaibhavgarg237"}]}, "description": {"urls": [{"start": - 139, "end": 162, "url": "https://t.co/kQIswXoNlU", "expanded_url": "http://www.vaibhavgarg.tech", - "display_url": "vaibhavgarg.tech"}], "mentions": [{"start": 18, "end": 26, "username": - "Samsung"}]}}, "verified": false, "username": "vaibhavgarg1901", "profile_image_url": - "https://pbs.twimg.com/profile_images/1549988369102667776/B7KUsO5O_normal.jpg", - "name": "Vaibhav", "description": "Software Engineer @Samsung | SOB''21 | DTU''21 - | React Js, Javascript , Tailwind CSS, HTML, Github, C++ | ExpressJs NodeJs - | Full stack engg https://t.co/kQIswXoNlU", "id": "1549988272092639232"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '439' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:13 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '270' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '138' - x-transaction-id: - - 4a6c0074659503a2 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1483893386817986574?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"name": "Klaus Arminius", "entities": {"url": {"urls": [{"start": - 0, "end": 23, "url": "https://t.co/yXFKbVWqlT", "expanded_url": "https://solo.to/klaus_arminius", - "display_url": "solo.to/klaus_arminius"}]}}, "username": "Klaus_Arminius", "description": - "24 | Pan-European | \u2626\ufe0f | History Lover | Independent Reporter, Covering - Stories The Media Hides | Follow and Turn Notifications \ud83d\udd14 For More", - "id": "1483893386817986574", "verified": false, "profile_image_url": "https://pbs.twimg.com/profile_images/1483893509635592194/CR38yX4p_normal.jpg"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '390' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:13 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '269' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '143' - x-transaction-id: - - cac353882825852a - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1585822268654907392?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"verified": false, "profile_image_url": "https://pbs.twimg.com/profile_images/1585826073882697728/FhPJOtgZ_normal.jpg", - "entities": {"description": {"hashtags": [{"start": 0, "end": 18, "tag": "FreeJulianAssange"}, - {"start": 19, "end": 33, "tag": "FreePalestine"}, {"start": 34, "end": 38, "tag": - "BDS"}, {"start": 39, "end": 61, "tag": "IDontStandWithUkraine"}], "mentions": - [{"start": 108, "end": 119, "username": "fredbass33"}]}}, "name": "(fredbass33) - \ud83c\uddfa\ud83c\uddf8\ud83c\uddf5\ud83c\uddf8\ud83c\uddf7\ud83c\uddfa", "username": - "rapido_chris", "description": "#FreeJulianAssange #FreePalestine #BDS #IDontStandWithUkraine\nAnti-Zionism - IS NOT Anti-Semitism. Re-instate @fredbass33", "id": "1585822268654907392"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '403' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:13 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '268' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '132' - x-transaction-id: - - f24dc336858eb1d1 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/148300800?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"profile_image_url": "https://pbs.twimg.com/profile_images/3271710484/9b99fb1758ce64415e0c5f2eec10b5b3_normal.png", - "id": "148300800", "name": "hannes", "username": "escapedcat", "entities": {"description": - {"urls": [{"start": 49, "end": 72, "url": "https://t.co/LeGqY14ehK", "expanded_url": - "http://bit.ly/2NOAO0x", "display_url": "bit.ly/2NOAO0x"}]}}, "description": - "complaining about traffic in Hamburg and Beijing\nhttps://t.co/LeGqY14ehK\n@escapedcat@bitcoinhackers.org\n\u26a1\ufe0f - escapedcat@getalby.com", "verified": false}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '359' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:14 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '267' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '149' - x-transaction-id: - - 140eda6e5163ab57 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/279390084?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"entities": {"url": {"urls": [{"start": 0, "end": 23, "url": - "https://t.co/DxY6BYuY0u", "expanded_url": "http://nerdculture.de/@youranonnews", - "display_url": "nerdculture.de/@youranonnews"}]}, "description": {"hashtags": - [{"start": 135, "end": 145, "tag": "Anonymous"}, {"start": 146, "end": 160, - "tag": "HackThePlanet"}]}}, "name": "Anonymous", "verified": false, "id": "279390084", - "username": "YourAnonNews", "profile_image_url": "https://pbs.twimg.com/profile_images/1390018317864296450/bk21WUAT_normal.png", - "description": "We are Anonymous, we are legion, we do not forgive, we do not - forget. Expect us. \n\nPrepared to go forward w/it. Here live. Not a cat.\n\n#Anonymous - #HackThePlanet"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '400' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:14 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '266' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '130' - x-transaction-id: - - f7fe54c70ff340e9 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/3562121415?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"username": "RealSexyCyborg", "entities": {"url": {"urls": - [{"start": 0, "end": 23, "url": "https://t.co/dIR0XfOgFk", "expanded_url": "http://youtube.com/c/SexyCyborg", - "display_url": "youtube.com/c/SexyCyborg"}]}}, "name": "Naomi Wu \u673a\u68b0\u5996\u59ec", - "verified": true, "profile_image_url": "https://pbs.twimg.com/profile_images/763179688013377536/mbsD4Ptg_normal.jpg", - "description": "China''s #1 Tech & DIY YouTuber\nOpen Source, 3D Printing & - Digital Fabrication, Automation, Infosec\n1/18th synthetic\n''It''s all about - merit until merit has tits''", "id": "3562121415"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '410' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:14 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '265' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '143' - x-transaction-id: - - e907b8e53010abc3 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1433099062157398020?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"verified": false, "username": "Novaklim1", "description": - "Product UX/UI designer, Digital Artist. \nCo-founder @donate4_fun\nExp at @wargaming_net, - @Planner5D.\n#NFTs #Crypto #Bitcoin", "name": "Klim Nova \u26a1", "id": "1433099062157398020", - "entities": {"description": {"hashtags": [{"start": 100, "end": 105, "tag": - "NFTs"}, {"start": 106, "end": 113, "tag": "Crypto"}, {"start": 114, "end": - 122, "tag": "Bitcoin"}], "mentions": [{"start": 52, "end": 64, "username": "donate4_fun"}, - {"start": 72, "end": 86, "username": "wargaming_net"}, {"start": 88, "end": - 98, "username": "Planner5D"}]}}, "profile_image_url": "https://pbs.twimg.com/profile_images/1591878274224996353/iKwZmTTy_normal.jpg"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '412' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:15 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '264' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '128' - x-transaction-id: - - 76f8442b9e0248a0 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1412639513776635906?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"name": "IanMatveev", "username": "ian_matveev", "description": - "", "id": "1412639513776635906", "verified": false, "profile_image_url": "https://pbs.twimg.com/profile_images/1412643042696302592/jvQOVpA9_normal.jpg"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '190' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:15 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '263' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '125' - x-transaction-id: - - cc6e7d739fc63681 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/368968113?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"id": "368968113", "entities": {"url": {"urls": [{"start": - 0, "end": 23, "url": "https://t.co/WDXI2TkE0s", "expanded_url": "https://www.sheffield.ac.uk/seas/people/academic-staff/david-tobin", - "display_url": "sheffield.ac.uk/seas/people/ac\u2026"}]}, "description": {"urls": - [{"start": 124, "end": 147, "url": "https://t.co/WgtzBcIwJk", "expanded_url": - "https://bit.ly/3GWU2J1", "display_url": "bit.ly/3GWU2J1"}], "mentions": [{"start": - 29, "end": 41, "username": "ShefUniSEAS"}, {"start": 148, "end": 160, "username": - "CambridgeUP"}]}}, "verified": false, "name": "David Tobin", "profile_image_url": - "https://pbs.twimg.com/profile_images/378800000604259878/ea80c23deaf9958f6d80777944992435_normal.jpeg", - "description": "Lecturer, East Asian Studies @ShefUniSEAS. Author of Securing - China''s Northwest Frontier: Identity & Insecurity in Xinjiang https://t.co/WgtzBcIwJk - @CambridgeUP", "username": "ReasonablyRagin"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '509' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:15 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '262' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '126' - x-transaction-id: - - 46f375535f48cf32 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1616757608299339776?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"name": "Tip4Fun", "username": "tip4fun", "profile_image_url": - "https://pbs.twimg.com/profile_images/1624461699909574663/ko3M0TUK_normal.jpg", - "verified": false, "id": "1616757608299339776", "description": "Bitcoin Lightning - tips - mention me to send a tip. Part of @donate4_fun service.", "entities": - {"url": {"urls": [{"start": 0, "end": 23, "url": "https://t.co/jkmQZP2YbL", - "expanded_url": "https://donate4.fun", "display_url": "donate4.fun"}]}, "description": - {"mentions": [{"start": 59, "end": 71, "username": "donate4_fun"}]}}}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '336' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:15 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '261' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '128' - x-transaction-id: - - 68fcbdc2ddabbf64 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1616845331353993217?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"verified": false, "username": "btclntip", "profile_image_url": - "https://abs.twimg.com/sticky/default_profile_images/default_profile_normal.png", - "name": "lntip", "description": "", "id": "1616845331353993217"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '171' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:16 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '260' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '125' - x-transaction-id: - - 8539925dd82ece74 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1403287369932025858?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"profile_image_url": "https://pbs.twimg.com/profile_images/1421531707635904517/PSFSQdmP_normal.jpg", - "id": "1403287369932025858", "name": "Fountain", "username": "fountain_app", - "entities": {"url": {"urls": [{"start": 0, "end": 23, "url": "https://t.co/EOkgKGITzx", - "expanded_url": "https://www.fountain.fm/", "display_url": "fountain.fm"}]}}, - "description": "The podcast app that pays. \nPowered by the Lightning Network. - \nLive on iOS and Android.", "verified": false}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '334' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:16 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '259' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '123' - x-transaction-id: - - f10933da12b37557 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/36309919?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"entities": {"url": {"urls": [{"start": 0, "end": 23, "url": - "https://t.co/MftUXXtv67", "expanded_url": "http://nashacanada.com/nashacanada_english.htm", - "display_url": "nashacanada.com/nashacanada_en\u2026"}]}}, "description": "\ud83c\udde8\ud83c\udde6The - newspaper for those who can read ~ Toronto, Thornhill, Richmond Hill, Mississauga, - call or text: 1-647-435-8619 email: nashacanada@gmail.com", "profile_image_url": - "https://pbs.twimg.com/profile_images/1398126324439556096/cPtYTvBd_normal.jpg", - "verified": true, "username": "NashaCanada", "id": "36309919", "name": "Nasha - Canada\ud83c\udde8\ud83c\udde6\u041d\u0430\u0448\u0430 \u041a\u0430\u043d\u0430\u0434\u0430"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '420' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:16 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '258' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '129' - x-transaction-id: - - 78bf339160a3d3e0 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/228957664?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"verified": false, "id": "228957664", "description": "CTO - @AstariaXYZ, Former CTO https://t.co/joGhjflDCs\ud83c\udf63, Former @ethereum - Core Dev @ConsenSys", "entities": {"description": {"urls": [{"start": 28, "end": - 51, "url": "https://t.co/joGhjflDCs", "expanded_url": "http://Sushi.com", "display_url": - "Sushi.com"}], "mentions": [{"start": 4, "end": 15, "username": "AstariaXYZ"}, - {"start": 61, "end": 70, "username": "ethereum"}, {"start": 80, "end": 90, "username": - "ConsenSys"}]}}, "profile_image_url": "https://pbs.twimg.com/profile_images/1611048916375535617/zLZkhxNo_normal.png", - "name": "joseph.eth", "username": "josephdelong"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '364' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:17 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '257' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '132' - x-transaction-id: - - bb1a9d26be37b9ca - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1405917556318392324?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"description": "Produce & store your own energy with Solar - Roof, Solar Panels & Powerwall", "entities": {"url": {"urls": [{"start": 0, - "end": 23, "url": "https://t.co/RtFPhierGR", "expanded_url": "https://www.tesla.com/energy/design", - "display_url": "tesla.com/energy/design"}]}}, "id": "1405917556318392324", "username": - "TeslaSolar", "verified": true, "name": "Tesla Solar", "profile_image_url": - "https://pbs.twimg.com/profile_images/1448119048320032773/5ND1AMxW_normal.png"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '320' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:17 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '256' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '128' - x-transaction-id: - - 55f5f74a9e45487b - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/122360573?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"id": "122360573", "name": "Mudit Gupta", "profile_image_url": - "https://pbs.twimg.com/profile_images/1524098168496877570/y2CanBeT_normal.jpg", - "verified": false, "username": "Mudit__Gupta", "description": "CISO @0xPolygon - | Tech Partner @Deltabc_fund | Blockchain Security Researcher | Ethereum & Web3 - dev | Advisor & Angel Investor | Opinions are my own\n\n\ud83e\udd87\ud83d\udd0a", - "entities": {"url": {"urls": [{"start": 0, "end": 23, "url": "https://t.co/e2cjz0bR6Y", - "expanded_url": "https://mudit.blog", "display_url": "mudit.blog"}]}, "description": - {"mentions": [{"start": 5, "end": 15, "username": "0xPolygon"}, {"start": 31, - "end": 44, "username": "Deltabc_fund"}]}}}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '424' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:17 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '255' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '148' - x-transaction-id: - - 763172e11f5a6e5c - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1483139568702480386?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"description": "\"Twitter Expert\"\nApproved links: \nhttps://t.co/2WUYCyUCUQ\nhttps://t.co/eWWsJrR2FF", - "entities": {"url": {"urls": [{"start": 0, "end": 23, "url": "https://t.co/2WUYCyUCUQ", - "expanded_url": "https://linktr.ee/defmon3", "display_url": "linktr.ee/defmon3"}]}, - "description": {"urls": [{"start": 34, "end": 57, "url": "https://t.co/2WUYCyUCUQ", - "expanded_url": "https://linktr.ee/defmon3", "display_url": "linktr.ee/defmon3"}, - {"start": 58, "end": 81, "url": "https://t.co/eWWsJrR2FF", "expanded_url": "https://www.scribblemaps.com/maps/view/Sat4ukr/nBT8ffpeGH", - "display_url": "scribblemaps.com/maps/view/Sat4\u2026"}]}}, "id": "1483139568702480386", - "username": "DefMon3", "verified": false, "name": "Def Mon", "profile_image_url": - "https://pbs.twimg.com/profile_images/1591407515476152320/IxhLivU4_normal.jpg"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '391' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:17 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '254' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '128' - x-transaction-id: - - 664e973cf6e871ea - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/94543804?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"profile_image_url": "https://pbs.twimg.com/profile_images/1609096739314606082/E0hePo5z_normal.jpg", - "description": "''Personal account'' \ud83e\udd8b Follow me for videos #technology - #CICD #artificialIntelligence #viral #funny Author of the business book \u2018Shine\u2019", - "id": "94543804", "entities": {"url": {"urls": [{"start": 0, "end": 23, "url": - "https://t.co/4ArVpe23fc", "expanded_url": "https://yegentansu.com/", "display_url": - "yegentansu.com"}]}, "description": {"hashtags": [{"start": 42, "end": 53, "tag": - "technology"}, {"start": 54, "end": 59, "tag": "CICD"}, {"start": 60, "end": - 83, "tag": "artificialIntelligence"}, {"start": 84, "end": 90, "tag": "viral"}, - {"start": 91, "end": 97, "tag": "funny"}]}}, "name": "Tansu YE\u011eEN", "verified": - true, "username": "TansuYegen"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '455' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:18 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '253' - x-rate-limit-reset: - - '1677104945' + - '1678531342' x-response-time: - '135' x-transaction-id: - - 742704174989cc44 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/731415099181834240?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"entities": {"url": {"urls": [{"start": 0, "end": 23, "url": - "https://t.co/zytNlaDA0q", "expanded_url": "https://t.me/sotavisionmedia", "display_url": - "t.me/sotavisionmedia"}]}, "description": {"urls": [{"start": 22, "end": 45, - "url": "https://t.co/kF4zTWkeyz", "expanded_url": "https://teletype.in/@sotavision/whats_going_on_with_sota", - "display_url": "teletype.in/@sotavision/wh\u2026"}]}}, "description": "\u041d\u0430\u0448 - \u0442\u0433-\u043a\u0430\u043d\u0430\u043b \u0443\u043a\u0440\u0430\u0434\u0435\u043d: - https://t.co/kF4zTWkeyz \u0420\u043e\u0441\u0441\u0438\u0439\u0441\u043a\u043e\u0435 - \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0435 \u043c\u0443\u043b\u044c\u0442\u0438\u043c\u0435\u0434\u0438\u0439\u043d\u043e\u0435 - \u0421\u041c\u0418. \u041f\u043e\u0447\u0442\u0430 \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u0438: - sotavisiontv@gmail.com", "id": "731415099181834240", "username": "Sota_Vision", - "profile_image_url": "https://pbs.twimg.com/profile_images/1575539990217596930/59p3ilqK_normal.jpg", - "verified": false, "name": "SOTA"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '478' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:18 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '252' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '137' - x-transaction-id: - - 0d3dea60be2375b3 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1418481425729392642?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"profile_image_url": "https://pbs.twimg.com/profile_images/1616863348309508098/_gOAjYBg_normal.jpg", - "verified": false, "entities": {"url": {"urls": [{"start": 0, "end": 23, "url": - "https://t.co/yIgqxRLyHZ", "expanded_url": "https://www.youtube.com/c/PlanetaBitcoin", - "display_url": "youtube.com/c/PlanetaBitco\u2026"}]}}, "id": "1418481425729392642", - "username": "Jeff_Planeta", "description": "Bitcoin for life. Conhe\u00e7a o - Planeta Bitcoin, curta e se inscreva no canal.\n\nApoie \u26a1planetabitcoin@zbd.gg", - "name": "Jeff \ud83c\udf0e PLANETA BITCOIN"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '387' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:18 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '251' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '141' - x-transaction-id: - - c45e19ff7ad7060c - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/939032087239131136?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"id": "939032087239131136", "entities": {"url": {"urls": [{"start": - 0, "end": 23, "url": "https://t.co/igUHQIatoU", "expanded_url": "http://btcpayserver.org/", - "display_url": "btcpayserver.org"}]}, "description": {"hashtags": [{"start": - 19, "end": 27, "tag": "Bitcoin"}]}}, "verified": false, "name": "BTCPay Server", - "profile_image_url": "https://pbs.twimg.com/profile_images/1119931210048970752/7AD_1he__normal.png", - "description": "Best way to accept #Bitcoin. No fees, no intermediary. Free, - open source & self-hosted Bitcoin payment processor for self-sovereign individuals - and businesses.", "username": "BtcpayServer"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '399' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:18 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '250' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '125' - x-transaction-id: - - 206c26f2ba4a0068 - x-xss-protection: - - '0' - http_version: HTTP/1.1 - status_code: 200 -- request: - body: '' - headers: - accept: - - '*/*' - accept-encoding: - - gzip, deflate - authorization: - - secret - connection: - - keep-alive - cookie: - - guest_id=v1%3A167710404565894833 - host: - - api.twitter.com - user-agent: - - python-httpx/0.23.2 - method: GET - uri: https://api.twitter.com/2/users/1392864463204782082?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities - response: - content: '{"data": {"profile_image_url": "https://pbs.twimg.com/profile_images/1608578133166362627/_JEfnhKs_normal.jpg", - "description": "\ud83c\uddf1\ud83c\udde7 Semite || Breaking News || Geopolitics - || Backup Account: @WarfareBackup || Donate: https://t.co/CkqsdOqqhV", "id": - "1392864463204782082", "entities": {"url": {"urls": [{"start": 0, "end": 23, - "url": "https://t.co/q6hZO71ZPY", "expanded_url": "https://t.me/warmonitors", - "display_url": "t.me/warmonitors"}]}, "description": {"urls": [{"start": 87, - "end": 110, "url": "https://t.co/CkqsdOqqhV", "expanded_url": "http://ko-fi.com/warmonitor", - "display_url": "ko-fi.com/warmonitor"}], "mentions": [{"start": 61, "end": 75, - "username": "WarfareBackup"}]}}, "name": "War Monitor", "verified": false, "username": - "WarMonitors"}}' - headers: - api-version: - - '2.61' - cache-control: - - no-cache, no-store, max-age=0 - content-disposition: - - attachment; filename=json.json - content-encoding: - - gzip - content-length: - - '405' - content-type: - - application/json; charset=utf-8 - date: - - Wed, 22 Feb 2023 22:14:19 UTC - perf: - - '7626143928' - server: - - tsa_o - strict-transport-security: - - max-age=631138519 - x-access-level: - - read - x-connection-hash: - - 3f2e5a0fbe98f97d31fef595fa47f2dd491bebbe03396b45e83775960d36c16c - x-content-type-options: - - nosniff - x-frame-options: - - SAMEORIGIN - x-rate-limit-limit: - - '300' - x-rate-limit-remaining: - - '249' - x-rate-limit-reset: - - '1677104945' - x-response-time: - - '136' - x-transaction-id: - - d241c516b9de575b + - fdfa1bfab2a6807c x-xss-protection: - '0' http_version: HTTP/1.1 diff --git a/tests/cassettes/test_twitter/test_refetch_twitter_authors[last_fetched_at1].yaml b/tests/cassettes/test_twitter/test_refetch_twitter_authors[last_fetched_at1].yaml index c26bca76..b3f77d44 100644 --- a/tests/cassettes/test_twitter/test_refetch_twitter_authors[last_fetched_at1].yaml +++ b/tests/cassettes/test_twitter/test_refetch_twitter_authors[last_fetched_at1].yaml @@ -17,15 +17,15 @@ interactions: method: GET uri: https://api.twitter.com/2/users/1572908920485576704?user.fields=id%2Cname%2Cprofile_image_url%2Cdescription%2Cverified%2Centities response: - content: '{"data": {"name": "Donate4.Fun \u26a1", "entities": {"url": {"urls": - [{"start": 0, "end": 23, "url": "https://t.co/xu5wqhAwa7", "expanded_url": "https://donate4.fun/", - "display_url": "donate4.fun"}]}, "description": {"hashtags": [{"start": 15, - "end": 23, "tag": "Bitcoin"}, {"start": 24, "end": 41, "tag": "LightningNetwork"}], - "mentions": [{"start": 78, "end": 88, "username": "Novaklim1"}, {"start": 93, - "end": 102, "username": "nbryskin"}]}}, "username": "donate4_fun", "description": - "Donations with #Bitcoin #LightningNetwork on Twitter and Youtube. \nCreated - by @Novaklim1 and @nbryskin.", "id": "1572908920485576704", "verified": false, - "profile_image_url": "https://pbs.twimg.com/profile_images/1574697734535348224/dzdW0yfs_normal.png"}}' + content: '{"data": {"profile_image_url": "https://pbs.twimg.com/profile_images/1574697734535348224/dzdW0yfs_normal.png", + "username": "donate4_fun", "id": "1572908920485576704", "entities": {"url": + {"urls": [{"start": 0, "end": 23, "url": "https://t.co/xu5wqhAwa7", "expanded_url": + "https://donate4.fun/", "display_url": "donate4.fun"}]}, "description": {"hashtags": + [{"start": 15, "end": 23, "tag": "Bitcoin"}, {"start": 24, "end": 41, "tag": + "LightningNetwork"}], "mentions": [{"start": 78, "end": 88, "username": "Novaklim1"}, + {"start": 93, "end": 102, "username": "nbryskin"}]}}, "description": "Donations + with #Bitcoin #LightningNetwork on Twitter and Youtube. \nCreated by @Novaklim1 + and @nbryskin.", "verified": false, "name": "Donate4.Fun \u26a1"}}' headers: api-version: - '2.61' @@ -36,24 +36,24 @@ interactions: content-encoding: - gzip content-length: - - '413' + - '415' content-type: - application/json; charset=utf-8 date: - - Wed, 22 Feb 2023 22:17:54 UTC + - Sat, 11 Mar 2023 10:32:43 UTC perf: - '7626143928' server: - tsa_o set-cookie: - - guest_id=v1%3A167710427476072485; Max-Age=34214400; Expires=Sun, 24 Mar 2024 - 22:17:54 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None + - guest_id=v1%3A167853076375506248; Max-Age=34214400; Expires=Wed, 10 Apr 2024 + 10:32:43 GMT; Path=/; Domain=.twitter.com; Secure; SameSite=None strict-transport-security: - max-age=631138519 x-access-level: - read x-connection-hash: - - b2d5c248dd1ed30f91036430757dc6d7c356f6476ae4a3d44460213a2ee93827 + - 748620616f8173092be0f1c2bd897a583795e52585f8cfdf1b02c5394ea2d76d x-content-type-options: - nosniff x-frame-options: @@ -61,13 +61,13 @@ interactions: x-rate-limit-limit: - '300' x-rate-limit-remaining: - - '248' + - '296' x-rate-limit-reset: - - '1677104945' + - '1678531342' x-response-time: - - '126' + - '123' x-transaction-id: - - 9fdda1f38ec115d2 + - 99924bc18ecbc1a2 x-xss-protection: - '0' http_version: HTTP/1.1 diff --git a/tests/cassettes/test_web/test_donate_redirect.yaml b/tests/cassettes/test_web/test_donate_redirect.yaml index 07157056..8b05b426 100644 --- a/tests/cassettes/test_web/test_donate_redirect.yaml +++ b/tests/cassettes/test_web/test_donate_redirect.yaml @@ -10,3633 +10,933 @@ interactions: uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest response: body: - string: "{\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"basePath\": \"\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": - {\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n }\n }\n }\n },\n \"protocol\": \"rest\",\n - \ \"resources\": {\n \"superChatEvents\": {\n \"methods\": {\n \"list\": - {\n \"id\": \"youtube.superChatEvents.list\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/superChatEvents\",\n - \ \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - superChatEvent resource parts that the API response will include. This parameter - is currently not supported.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"hl\": - {\n \"description\": \"Return rendered funding amounts in specified - language.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"minimum\": \"1\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/videoCategories\",\n \"id\": - \"youtube.videoCategories.list\",\n \"parameters\": {\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Returns - the video categories with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true\n },\n \"hl\": {\n \"location\": \"query\",\n - \ \"default\": \"en-US\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"response\": - {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videoCategories\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\"\n }\n }\n },\n \"activities\": {\n \"methods\": - {\n \"list\": {\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/activities\",\n \"response\": {\n - \ \"$ref\": \"ActivityListResponse\"\n },\n \"id\": - \"youtube.activities.list\",\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"required\": - true\n },\n \"regionCode\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"publishedBefore\": {\n \"location\": - \"query\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\"\n },\n \"home\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"maximum\": \"50\",\n \"default\": \"5\",\n \"type\": - \"integer\",\n \"description\": \"The *maxResults* parameter - specifies the maximum number of items that should be returned in the result - set.\",\n \"location\": \"query\"\n },\n \"publishedAfter\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"format\": \"google-datetime\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n }\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"I18nRegionListResponse\"\n },\n \"flatPath\": - \"youtube/v3/i18nRegions\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/i18nRegions\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"hl\": {\n \"default\": - \"en_US\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - i18nRegion resource properties that the API response will include. Set the - parameter value to snippet.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.i18nRegions.list\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"response\": - {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"default\": \"en-US\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the videoCategory resource parts that the - API response will include. Supported values are id and snippet.\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"watermarks\": {\n \"methods\": {\n - \ \"set\": {\n \"supportsMediaUpload\": true,\n \"path\": - \"youtube/v3/watermarks/set\",\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"channelId\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.watermarks.set\",\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\",\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n - \ }\n }\n },\n \"description\": \"Allows - upload of watermark image and setting it for a channel.\"\n },\n \"unset\": - {\n \"parameters\": {\n \"channelId\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/watermarks/unset\",\n \"description\": - \"Allows removal of channel watermark.\",\n \"id\": \"youtube.watermarks.unset\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n - \ \"parameterOrder\": [\n \"channelId\"\n ]\n - \ }\n }\n },\n \"playlists\": {\n \"methods\": {\n \"update\": - {\n \"id\": \"youtube.playlists.update\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"description\": \"Updates an existing - resource.\",\n \"request\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"path\": \"youtube/v3/playlists\",\n \"response\": {\n - \ \"$ref\": \"Playlist\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"insert\": {\n \"id\": \"youtube.playlists.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n - \ },\n \"httpMethod\": \"POST\"\n },\n \"delete\": - {\n \"id\": \"youtube.playlists.delete\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"description\": - \"Deletes a resource.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlists\"\n },\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the playlists owned by the authenticated user.\"\n },\n - \ \"maxResults\": {\n \"location\": \"query\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\"\n },\n - \ \"channelId\": {\n \"description\": \"Return the - playlists owned by the specified channel ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"id\": \"youtube.playlists.list\",\n - \ \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"httpMethod\": \"GET\"\n - \ }\n }\n },\n \"comments\": {\n \"methods\": {\n \"markAsSpam\": - {\n \"description\": \"Expresses the caller's opinion that one or - more comments should be flagged as spam.\",\n \"httpMethod\": \"POST\",\n - \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.comments.markAsSpam\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"Flags the comments with the given IDs as - spam in the caller's opinion.\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/comments/markAsSpam\"\n - \ },\n \"setModerationStatus\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.comments.setModerationStatus\",\n \"description\": - \"Sets the moderation status of one or more comments.\",\n \"path\": - \"youtube/v3/comments/setModerationStatus\",\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ],\n \"parameters\": - {\n \"id\": {\n \"description\": \"Modifies the moderation - status of the comments with the given IDs\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true\n },\n \"moderationStatus\": - {\n \"required\": true,\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"banAuthor\": - {\n \"type\": \"boolean\",\n \"default\": \"false\",\n - \ \"location\": \"query\",\n \"description\": \"If - set to true the author of the comment gets added to the ban list. This means - all future comments of the author will autmomatically be rejected. Only valid - in combination with STATUS_REJECTED.\"\n }\n },\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\",\n \"httpMethod\": \"POST\"\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.delete\",\n \"flatPath\": \"youtube/v3/comments\"\n - \ },\n \"insert\": {\n \"path\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.comments.insert\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"response\": {\n \"$ref\": - \"Comment\"\n }\n },\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"CommentListResponse\"\n },\n \"id\": - \"youtube.comments.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"parentId\": {\n \"location\": \"query\",\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"type\": \"string\"\n - \ },\n \"textFormat\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": - \"html\",\n \"description\": \"The requested text format for - the returned comments.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ]\n - \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"maximum\": \"100\",\n - \ \"type\": \"integer\",\n \"minimum\": \"1\",\n - \ \"default\": \"20\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more comment resource properties that the API response will - include.\",\n \"repeated\": true,\n \"required\": - true\n },\n \"id\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Returns - the comments with the given IDs for One Platform.\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"update\": {\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"repeated\": true,\n \"required\": true\n }\n - \ },\n \"id\": \"youtube.comments.update\",\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/comments\"\n }\n }\n - \ },\n \"search\": {\n \"methods\": {\n \"list\": {\n \"id\": - \"youtube.search.list\",\n \"path\": \"youtube/v3/search\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"videoLicense\": {\n \"description\": - \"Filter on the license of the videos.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"location\": \"query\",\n - \ \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ]\n },\n \"forContentOwner\": - {\n \"description\": \"Search owned by a content owner.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Filter on resources published - after this date.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"relatedToVideoId\": {\n \"type\": - \"string\",\n \"description\": \"Search related to a resource.\",\n - \ \"location\": \"query\"\n },\n \"videoDuration\": - {\n \"enumDescriptions\": [\n \"\",\n \"Do - not filter video search results based on their duration. This is the default - value.\",\n \"Only include videos that are less than four minutes - long.\",\n \"Only include videos that are between four and - 20 minutes long (inclusive).\",\n \"Only include videos longer - than 20 minutes.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"location\": \"query\",\n - \ \"description\": \"Filter on the duration of the videos.\"\n - \ },\n \"topicId\": {\n \"description\": - \"Restrict results to a particular topic.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"relevanceLanguage\": {\n \"location\": - \"query\",\n \"description\": \"Return results relevant to this - language.\",\n \"type\": \"string\"\n },\n \"videoDimension\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"description\": \"Filter - on 3d videos.\",\n \"enumDescriptions\": [\n \"Include - both 3D and non-3D videos in returned results. This is the default value.\",\n - \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict - search results to only include 3D videos.\"\n ]\n },\n - \ \"order\": {\n \"type\": \"string\",\n \"default\": - \"relevance\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"location\": - \"query\",\n \"description\": \"Sort order of the results.\"\n - \ },\n \"videoCategoryId\": {\n \"type\": - \"string\",\n \"description\": \"Filter on videos in a specific - category.\",\n \"location\": \"query\"\n },\n \"videoEmbeddable\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos, embeddable or not.\",\n \"Only retrieve embeddable - videos.\"\n ],\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"description\": \"Filter on embeddable videos.\",\n - \ \"type\": \"string\"\n },\n \"channelType\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"description\": - \"Add a filter on the channel search.\"\n },\n \"locationRadius\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on distance from the location (specified above).\",\n \"type\": - \"string\"\n },\n \"videoCaption\": {\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"type\": - \"string\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ]\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"format\": - \"uint32\",\n \"location\": \"query\",\n \"minimum\": - \"0\"\n },\n \"location\": {\n \"description\": - \"Filter on location of the video\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"safeSearch\": - {\n \"type\": \"string\",\n \"description\": \"Indicates - whether the search results should include restricted content as well as standard - content.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ],\n \"default\": \"moderate\",\n - \ \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"regionCode\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Display the content as seen - by viewers in this country.\"\n },\n \"type\": {\n \"description\": - \"Restrict results to a particular set of resource types from One Platform.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"forMine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Search for the private videos of the authenticated user.\"\n },\n - \ \"publishedBefore\": {\n \"format\": \"google-datetime\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on resources published before this - date.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on resources belonging to this channelId.\"\n },\n \"q\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Textual search terms to match.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"videoSyndicated\": - {\n \"description\": \"Filter on syndicated videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"eventType\": - {\n \"description\": \"Filter on the livestream status of the - videos.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ]\n - \ },\n \"videoDefinition\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on the definition of the videos.\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ]\n - \ },\n \"videoType\": {\n \"enum\": [\n - \ \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Filter on videos of a specific type.\",\n \"location\": \"query\"\n - \ },\n \"forDeveloper\": {\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"description\": \"Retrieves - a list of search resources\",\n \"flatPath\": \"youtube/v3/search\"\n - \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"delete\": {\n \"description\": \"Deletes a resource.\",\n - \ \"parameters\": {\n \"type\": {\n \"description\": - \"Type of the link to be deleted.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"location\": - \"query\",\n \"required\": true,\n \"enum\": [\n - \ \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ]\n },\n \"part\": {\n \"description\": - \"Do not use. Required for compatibility.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"linkingToken\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Delete the partner links with the given linking token.\"\n }\n - \ },\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.delete\",\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ]\n },\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"parameters\": - {\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Get - a third party link with the given linking token.\"\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"type\": {\n \"description\": - \"Get a third party link of the given type.\",\n \"location\": - \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API response will include. Supported values are linkingToken, - status, and snippet.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.list\"\n },\n \"update\": - {\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"httpMethod\": - \"PUT\",\n \"id\": \"youtube.thirdPartyLinks.update\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"description\": \"Updates an existing - resource.\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API request and response will include. - Supported values are linkingToken, status, and snippet.\",\n \"repeated\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"insert\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.thirdPartyLinks.insert\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the thirdPartyLink resource parts that the API request - and response will include. Supported values are linkingToken, status, and - snippet.\",\n \"location\": \"query\"\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Inserts - a new resource into this collection.\"\n }\n }\n },\n \"playlistItems\": - {\n \"methods\": {\n \"insert\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"id\": \"youtube.playlistItems.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"path\": \"youtube/v3/playlistItems\"\n },\n \"update\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.update\",\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Updates an existing - resource.\",\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ }\n },\n \"delete\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"httpMethod\": \"DELETE\"\n },\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlistItems.list\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the playlist items within the given playlist.\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the playlist items associated with the given video ID.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"PlaylistItemListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"liveChatBans\": - {\n \"methods\": {\n \"delete\": {\n \"description\": - \"Deletes a chat ban.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"id\": \"youtube.liveChatBans.delete\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"DELETE\"\n },\n \"insert\": {\n \"parameters\": {\n - \ \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"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.\"\n }\n },\n \"id\": - \"youtube.liveChatBans.insert\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"request\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"LiveChatBan\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"liveChatMessages\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/liveChat/messages\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"id\": \"youtube.liveChatMessages.list\",\n \"parameters\": - {\n \"hl\": {\n \"location\": \"query\",\n \"description\": - \"Specifies the localization language in which the system messages should - be returned.\",\n \"type\": \"string\"\n },\n \"profileImageSize\": - {\n \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"maximum\": \"720\",\n \"description\": \"Specifies - the size of the profile image that should be returned for each user.\",\n - \ \"minimum\": \"16\",\n \"format\": \"uint32\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the liveChatComment resource parts that the API - response will include. Supported values are id and snippet.\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The - id of the live chat for which comments should be returned.\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"default\": - \"500\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"200\",\n - \ \"maximum\": \"2000\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ]\n },\n \"insert\": {\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.liveChatMessages.insert\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat message.\",\n \"id\": - \"youtube.liveChatMessages.delete\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"path\": \"youtube/v3/liveChat/messages\"\n }\n }\n - \ },\n \"subscriptions\": {\n \"methods\": {\n \"delete\": - {\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.subscriptions.delete\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"description\": \"Deletes a resource.\"\n },\n \"insert\": - {\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"request\": - {\n \"$ref\": \"Subscription\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\"\n }\n },\n \"path\": - \"youtube/v3/subscriptions\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"SubscriptionListResponse\"\n },\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.subscriptions.list\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"Return - the subscriptions with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the subscriptions of the given channel owner.\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"50\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"forChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\"\n },\n \"myRecentSubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"mySubscribers\": {\n \"location\": - \"query\",\n \"description\": \"Return the subscribers of the - given channel owner.\",\n \"type\": \"boolean\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"order\": {\n \"enum\": - [\n \"subscriptionOrderUnspecified\",\n \"relevance\",\n - \ \"unread\",\n \"alphabetical\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Sort - by relevance.\",\n \"Sort by order of activity.\",\n \"Sort - alphabetically.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The order of the returned subscriptions\",\n - \ \"location\": \"query\",\n \"default\": \"relevance\"\n - \ }\n },\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/subscriptions\"\n }\n }\n },\n \"captions\": - {\n \"methods\": {\n \"download\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"parameters\": {\n \"tfmt\": {\n \"location\": - \"query\",\n \"description\": \"Convert the captions into this - format. Supported options are sbv, srt, and vtt.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The ID of the caption track to download, required for One Platform.\",\n - \ \"location\": \"path\"\n },\n \"tlang\": - {\n \"description\": \"tlang is the language code; machine translate - the captions into this language.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"onBehalfOf\": {\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.captions.download\",\n - \ \"flatPath\": \"youtube/v3/captions/{id}\",\n \"httpMethod\": - \"GET\",\n \"useMediaDownloadService\": true,\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"supportsMediaDownload\": true,\n \"description\": - \"Downloads a caption track.\"\n },\n \"update\": {\n \"supportsMediaUpload\": - true,\n \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ },\n \"maxSize\": \"104857600\",\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/captions\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.captions.update\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"onBehalfOf\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"ID of - the Google+ Page for the channel that the request is on behalf of.\"\n },\n - \ \"sync\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"delete\": {\n \"id\": \"youtube.captions.delete\",\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n }\n },\n \"path\": - \"youtube/v3/captions\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"DELETE\"\n },\n \"insert\": {\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"supportsMediaUpload\": true,\n \"description\": \"Inserts - a new resource into this collection.\",\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"104857600\"\n },\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/captions\",\n \"id\": \"youtube.captions.insert\",\n - \ \"parameters\": {\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is be on behalf of\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the caption - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/captions\"\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/captions\",\n - \ \"id\": \"youtube.captions.list\",\n \"response\": {\n - \ \"$ref\": \"CaptionListResponse\"\n },\n \"flatPath\": - \"youtube/v3/captions\",\n \"parameters\": {\n \"videoId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the captions for the specified video.\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true,\n \"description\": - \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"Returns the captions with the given IDs - for Stubby or Apiary.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\"\n }\n }\n },\n \"abuseReports\": {\n - \ \"methods\": {\n \"insert\": {\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n - \ \"required\": true,\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.abuseReports.insert\",\n \"flatPath\": - \"youtube/v3/abuseReports\",\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"channelSections\": - {\n \"methods\": {\n \"update\": {\n \"path\": \"youtube/v3/channelSections\",\n - \ \"id\": \"youtube.channelSections.update\",\n \"httpMethod\": - \"PUT\",\n \"request\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\"\n - \ },\n \"list\": {\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.list\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"channelId\": {\n \"description\": \"Return the - ChannelSections owned by the specified channel ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the ChannelSections owned by the authenticated - user.\"\n },\n \"id\": {\n \"description\": - \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"hl\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Return - content in specified language\"\n }\n },\n \"response\": - {\n \"$ref\": \"ChannelSectionListResponse\"\n }\n },\n - \ \"delete\": {\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channelSections.insert\",\n \"path\": - \"youtube/v3/channelSections\"\n }\n }\n },\n \"liveStreams\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieve - the list of streams associated with the given channel. --\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"maxResults\": {\n \"default\": \"5\",\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"description\": - \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true\n }\n - \ },\n \"path\": \"youtube/v3/liveStreams\",\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": - \"youtube.liveStreams.list\"\n },\n \"delete\": {\n \"path\": - \"youtube/v3/liveStreams\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Deletes an existing - stream for the authenticated user.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.liveStreams.delete\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\"\n },\n \"update\": - {\n \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.update\",\n - \ \"httpMethod\": \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ }\n },\n \"insert\": {\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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, - content_details, and status.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.commentThreads.list\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"parameters\": {\n \"textFormat\": - {\n \"default\": \"html\",\n \"description\": \"The - requested text format for the returned comments.\",\n \"type\": - \"string\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ]\n },\n \"maxResults\": - {\n \"minimum\": \"1\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"20\",\n \"type\": \"integer\",\n \"maximum\": - \"100\",\n \"format\": \"uint32\"\n },\n \"moderationStatus\": - {\n \"default\": \"published\",\n \"enum\": [\n - \ \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Returns the comment threads for - all the channel comments (ie does not include comments left on videos).\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads of all videos of the channel and the channel comments - as well.\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"order\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Order - by time.\",\n \"Order by relevance.\"\n ],\n \"default\": - \"time\"\n },\n \"searchTerms\": {\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of the specified video.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads with the given IDs for Stubby or Apiary.\",\n - \ \"repeated\": true\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\"\n },\n \"insert\": - {\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.commentThreads.insert\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"required\": - true\n }\n }\n }\n }\n },\n \"i18nLanguages\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"I18nLanguageListResponse\"\n },\n \"flatPath\": - \"youtube/v3/i18nLanguages\",\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the i18nLanguage resource properties that the API - response will include. Set the parameter value to snippet.\"\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"en_US\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/i18nLanguages\",\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"liveChatModerators\": {\n \"methods\": {\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"id\": \"youtube.liveChatModerators.insert\"\n },\n \"delete\": - {\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.liveChatModerators.delete\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a chat moderator.\"\n },\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"id\": \"youtube.liveChatModerators.list\",\n \"parameters\": - {\n \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the liveChatModerator resource parts that the API response - will include. Supported values are id and snippet.\",\n \"repeated\": - true\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\"\n },\n \"liveChatId\": {\n \"description\": - \"The id of the live chat for which moderators should be returned.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n }\n }\n },\n \"members\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"hasAccessToLevel\": {\n \"location\": \"query\",\n - \ \"description\": \"Filter members in the results set to the - ones that have access to a level.\",\n \"type\": \"string\"\n - \ },\n \"mode\": {\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - only members that joined after the first call with this mode was made.\",\n - \ \"Return all current members, from newest to oldest.\"\n ],\n - \ \"type\": \"string\",\n \"default\": \"all_current\",\n - \ \"description\": \"Parameter that specifies which channel members - to return.\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"filterByMemberChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Comma separated list of channel - IDs. Only data about members that are part of this list will be included in - the response.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"maximum\": \"1000\",\n - \ \"minimum\": \"0\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n }\n },\n \"flatPath\": - \"youtube/v3/members\",\n \"id\": \"youtube.members.list\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Retrieves a list of members that match the request - criteria for a channel.\",\n \"path\": \"youtube/v3/members\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ }\n }\n }\n },\n \"channels\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"ChannelListResponse\"\n },\n \"parameters\": - {\n \"forUsername\": {\n \"description\": \"Return - the channel associated with a YouTube username.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\"\n },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the channels subscribed to the authenticated user\"\n },\n - \ \"mine\": {\n \"description\": \"Return the ids of - channels owned by the authenticated user.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"categoryId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the channels within the specified guide category ID.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"Return the channels with the specified IDs.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"managedByMe\": {\n \"location\": \"query\",\n \"description\": - \"Return the channels managed by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/channels\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"id\": \"youtube.channels.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/channels\"\n - \ },\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/channels\",\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/channels\",\n \"request\": - {\n \"$ref\": \"Channel\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n }\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"response\": - {\n \"$ref\": \"Channel\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.channels.update\"\n }\n }\n },\n - \ \"liveBroadcasts\": {\n \"methods\": {\n \"list\": {\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"default\": \"5\",\n \"location\": \"query\",\n - \ \"minimum\": \"0\"\n },\n \"id\": {\n - \ \"description\": \"Return broadcasts with the given ids from - Stubby or Apiary.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"broadcastStatus\": - {\n \"type\": \"string\",\n \"description\": \"Return - broadcasts with a certain status, e.g. active broadcasts.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"location\": \"query\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ]\n },\n \"part\": {\n \"description\": - \"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, status - and statistics.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"broadcastType\": - {\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"event\",\n \"location\": \"query\",\n \"description\": - \"Return only broadcasts with the selected type.\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.list\",\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\"\n },\n \"bind\": - {\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"description\": - \"Bind a broadcast to a stream.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": - \"Broadcast to bind to the stream\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true\n },\n \"streamId\": - {\n \"type\": \"string\",\n \"description\": \"Stream - to bind, if not set unbind the current one.\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"httpMethod\": \"POST\"\n },\n \"update\": {\n \"id\": - \"youtube.liveBroadcasts.update\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"description\": \"Updates an existing broadcast for the authenticated - user.\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"httpMethod\": - \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"transition\": {\n \"parameters\": {\n \"id\": - {\n \"description\": \"Broadcast to transition.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"broadcastStatus\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Start - testing the broadcast. YouTube transmits video to the broadcast's monitor - stream. Note that you can only transition a broadcast to the testing state - if its contentDetails.monitorStream.enableMonitorStream property is set to - true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The - broadcast is over. YouTube stops transmitting video.\"\n ],\n - \ \"description\": \"The status to which the broadcast is going - to transition.\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ]\n },\n \"onBehalfOfContentOwner\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n },\n \"path\": - \"youtube/v3/liveBroadcasts/transition\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Transition - a broadcast to a given status.\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n }\n },\n \"insertCuepoint\": {\n - \ \"parameterOrder\": [],\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Insert cuepoints in a broadcast\",\n - \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Broadcast to insert ads to, or equivalently - `external_video_id` for internal use.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\"\n },\n - \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"Inserts a new stream for the authenticated user.\"\n },\n \"delete\": - {\n \"id\": \"youtube.liveBroadcasts.delete\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Broadcast to delete.\"\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Delete a given broadcast.\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/liveBroadcasts\"\n }\n }\n },\n \"tests\": - {\n \"methods\": {\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.tests.insert\",\n \"response\": {\n \"$ref\": - \"TestItem\"\n },\n \"request\": {\n \"$ref\": - \"TestItem\"\n },\n \"flatPath\": \"youtube/v3/tests\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"POST method.\",\n - \ \"path\": \"youtube/v3/tests\",\n \"httpMethod\": \"POST\"\n - \ }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.channelBanners.insert\",\n - \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n - \ \"mediaUpload\": {\n \"maxSize\": \"6291456\",\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/channelBanners/insert\"\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n },\n \"channelId\": - {\n \"description\": \"Unused, channel_id is currently derived - from the security context of the requestor.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"parameterOrder\": [],\n \"supportsMediaUpload\": - true\n }\n }\n },\n \"youtube\": {\n \"resources\": - {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"parameterOrder\": - [],\n \"description\": \"Updates an existing resource.\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": \"query\"\n - \ }\n }\n }\n }\n }\n - \ }\n },\n \"thumbnails\": {\n \"methods\": {\n \"set\": - {\n \"id\": \"youtube.thumbnails.set\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/thumbnails/set\",\n \"httpMethod\": - \"POST\",\n \"mediaUpload\": {\n \"maxSize\": \"2097152\",\n - \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/thumbnails/set\"\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ }\n }\n },\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"Returns - the Thumbnail with the given video IDs for Stubby or Apiary.\"\n }\n - \ },\n \"description\": \"As this is not an insert in a strict - sense (it supports uploading/setting of a thumbnail for multiple videos, which - doesn't result in creation of a single resource), I use a custom verb here.\",\n - \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"supportsMediaUpload\": - true,\n \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/thumbnails/set\"\n }\n - \ }\n },\n \"videos\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/videos\",\n \"flatPath\": \"youtube/v3/videos\",\n \"parameters\": - {\n \"locale\": {\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"chart\": {\n \"location\": \"query\",\n - \ \"description\": \"Return the videos that are in the specified - chart.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ]\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"maxWidth\": {\n \"minimum\": \"72\",\n \"format\": - \"int32\",\n \"description\": \"Return the player with maximum - height specified in\",\n \"location\": \"query\",\n \"maximum\": - \"8192\",\n \"type\": \"integer\"\n },\n \"videoCategoryId\": - {\n \"type\": \"string\",\n \"description\": \"Use - chart that is specific to the specified video category\",\n \"location\": - \"query\",\n \"default\": \"0\"\n },\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - videos with the given ids.\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"description\": \"Use - a chart that is specific to the specified region\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"default\": \"5\",\n - \ \"minimum\": \"1\"\n },\n \"maxHeight\": - {\n \"format\": \"int32\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"minimum\": \"72\",\n - \ \"maximum\": \"8192\"\n },\n \"myRating\": - {\n \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"id\": \"youtube.videos.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"VideoListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\"\n },\n \"reportAbuse\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"request\": {\n \"$ref\": - \"VideoAbuseReport\"\n },\n \"id\": \"youtube.videos.reportAbuse\",\n - \ \"path\": \"youtube/v3/videos/reportAbuse\",\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\",\n \"parameterOrder\": [],\n \"description\": - \"Report abuse for a video.\",\n \"httpMethod\": \"POST\"\n },\n - \ \"update\": {\n \"path\": \"youtube/v3/videos\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\",\n \"id\": \"youtube.videos.update\",\n \"response\": - {\n \"$ref\": \"Video\"\n },\n \"request\": {\n - \ \"$ref\": \"Video\"\n },\n \"parameters\": {\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/videos\"\n - \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"notifySubscribers\": {\n \"description\": \"Notify - the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"location\": \"query\",\n \"default\": - \"true\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"autoLevels\": {\n \"location\": \"query\",\n \"description\": - \"Should auto-levels be applied to the upload.\",\n \"type\": - \"boolean\"\n },\n \"stabilize\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Should stabilize be applied to the upload.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"mediaUpload\": - {\n \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/videos\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ }\n },\n \"maxSize\": \"274877906944\"\n - \ },\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"path\": \"youtube/v3/videos\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.videos.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"response\": {\n - \ \"$ref\": \"Video\"\n },\n \"supportsMediaUpload\": - true\n },\n \"rate\": {\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"parameterOrder\": [\n \"id\",\n \"rating\"\n - \ ],\n \"path\": \"youtube/v3/videos/rate\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.rate\",\n \"parameters\": - {\n \"rating\": {\n \"location\": \"query\",\n \"required\": - true,\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true\n }\n - \ },\n \"description\": \"Adds a like or dislike rating to - a video or removes a rating from a video.\"\n },\n \"getRating\": - {\n \"path\": \"youtube/v3/videos/getRating\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves the ratings that the - authorized user gave to a list of specified videos.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/videos/getRating\",\n - \ \"id\": \"youtube.videos.getRating\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n }\n },\n \"delete\": {\n \"path\": - \"youtube/v3/videos\",\n \"description\": \"Deletes a resource.\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.delete\",\n \"httpMethod\": - \"DELETE\"\n }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"MembershipsLevelListResponse\"\n },\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the membershipsLevel resource parts that the API - response will include. Supported values are id and snippet.\"\n }\n - \ },\n \"httpMethod\": \"GET\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"id\": \"youtube.membershipsLevels.list\"\n }\n - \ }\n }\n },\n \"servicePath\": \"\",\n \"description\": \"The YouTube - Data API v3 is an API that provides access to YouTube data, such as videos, - playlists, and channels.\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"name\": \"youtube\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"kind\": \"discovery#restDescription\",\n - \ \"batchPath\": \"batch\",\n \"id\": \"youtube:v3\",\n \"fullyEncodeReservedExpansion\": - true,\n \"title\": \"YouTube Data API v3\",\n \"ownerDomain\": \"google.com\",\n - \ \"parameters\": {\n \"quotaUser\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n - \ \"location\": \"query\"\n },\n \"access_token\": {\n \"description\": - \"OAuth access token.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"uploadType\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Legacy upload protocol - for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n },\n \"key\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n - \ },\n \"upload_protocol\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", - \\\"multipart\\\").\"\n },\n \"prettyPrint\": {\n \"location\": - \"query\",\n \"default\": \"true\",\n \"type\": \"boolean\",\n \"description\": - \"Returns response with indentations and line breaks.\"\n },\n \"fields\": - {\n \"description\": \"Selector specifying which fields to include in - a partial response.\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"alt\": {\n \"enum\": [\n \"json\",\n \"media\",\n - \ \"proto\"\n ],\n \"type\": \"string\",\n \"default\": - \"json\",\n \"description\": \"Data format for response.\",\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"location\": \"query\"\n - \ },\n \"oauth_token\": {\n \"location\": \"query\",\n \"description\": - \"OAuth 2.0 token for the current user.\",\n \"type\": \"string\"\n },\n - \ \"$.xgafv\": {\n \"location\": \"query\",\n \"enum\": [\n \"1\",\n - \ \"2\"\n ],\n \"description\": \"V1 error format.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"v1 error format\",\n - \ \"v2 error format\"\n ]\n },\n \"callback\": {\n \"location\": - \"query\",\n \"description\": \"JSONP\",\n \"type\": \"string\"\n - \ }\n },\n \"schemas\": {\n \"LiveChatMessageListResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatMessageListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n - \ }\n },\n \"offlineAt\": {\n \"description\": - \"The date and time when the underlying stream went offline.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"visitorId\": {\n - \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": - \"string\"\n },\n \"pollingIntervalMillis\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The amount of time the client should wait before polling again.\"\n }\n - \ },\n \"id\": \"LiveChatMessageListResponse\",\n \"type\": - \"object\"\n },\n \"LiveChatModerator\": {\n \"description\": \"A - *liveChatModerator* resource represents a moderator for a YouTube live chat. - A chat moderator has the ability to ban/unban users from a chat, remove message, - etc.\",\n \"id\": \"LiveChatModerator\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"default\": \"youtube#liveChatModerator\"\n }\n }\n - \ },\n \"AbuseReport\": {\n \"id\": \"AbuseReport\",\n \"type\": - \"object\",\n \"properties\": {\n \"abuseTypes\": {\n \"items\": - {\n \"$ref\": \"AbuseType\"\n },\n \"type\": - \"array\"\n },\n \"relatedEntities\": {\n \"items\": - {\n \"$ref\": \"RelatedEntity\"\n },\n \"type\": - \"array\"\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n - \ },\n \"description\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"SearchResultSnippet\": {\n \"description\": \"Basic - details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"id\": \"SearchResultSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"A description - of the search result.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The title of the search result.\"\n - \ },\n \"liveBroadcastContent\": {\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"type\": - \"string\",\n \"description\": \"It indicates if the resource (video - or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" - if there is not any upcoming/active live broadcasts.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the search result. 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.\"\n },\n - \ \"channelTitle\": {\n \"description\": \"The title of the - channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The creation date and time of the resource that - the search result identifies.\",\n \"format\": \"date-time\"\n }\n - \ }\n },\n \"VideoMonetizationDetails\": {\n \"id\": \"VideoMonetizationDetails\",\n - \ \"description\": \"Details about monetization of a YouTube Video.\",\n - \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The value of access indicates whether the video - can be monetized or not.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"TestItemTestItemSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\"\n },\n - \ \"MonitorStreamInfo\": {\n \"properties\": {\n \"enableMonitorStream\": - {\n \"description\": \"This value determines whether the monitor - stream is enabled for the broadcast. If the monitor stream is enabled, then - YouTube will broadcast the event content on a special stream intended only - for the broadcaster's consumption. The broadcaster can use the stream to review - the event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"type\": \"boolean\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"broadcastStreamDelayMs\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"If you have set - the enableMonitorStream property to true, then this property determines the - length of the live broadcast delay.\"\n },\n \"embedHtml\": - {\n \"description\": \"HTML code that embeds a player that plays - the monitor stream.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Settings and Info of - the monitor stream\",\n \"id\": \"MonitorStreamInfo\"\n },\n \"PlaylistStatus\": - {\n \"properties\": {\n \"privacyStatus\": {\n \"description\": - \"The playlist's privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n }\n },\n \"id\": \"PlaylistStatus\",\n - \ \"type\": \"object\"\n },\n \"VideoSnippet\": {\n \"properties\": - {\n \"defaultLanguage\": {\n \"description\": \"The language - of the videos's default snippet.\",\n \"type\": \"string\"\n },\n - \ \"localized\": {\n \"$ref\": \"VideoLocalization\",\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"defaultAudioLanguage\": {\n - \ \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"liveBroadcastContent\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that the video was uploaded to.\",\n \"type\": \"string\"\n - \ },\n \"categoryId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube video category associated with the video.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the video was uploaded.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"tags\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of keyword tags associated with the video. Tags may contain spaces.\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the video - belongs to.\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n }\n },\n \"id\": \"VideoSnippet\",\n - \ \"description\": \"Basic details about a video, including title, description, - uploader, thumbnails and category.\",\n \"type\": \"object\"\n },\n - \ \"ThirdPartyLinkListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"kind\": - {\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"ChannelStatistics\": {\n \"properties\": {\n \"commentCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of comments for the channel.\",\n \"format\": \"uint64\"\n },\n - \ \"subscriberCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of subscribers that the - channel has.\"\n },\n \"hiddenSubscriberCount\": {\n \"description\": - \"Whether or not the number of subscribers is shown for this user.\",\n \"type\": - \"boolean\"\n },\n \"videoCount\": {\n \"description\": - \"The number of videos uploaded to the channel.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"viewCount\": - {\n \"description\": \"The number of times the channel has been viewed.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Statistics - about a channel: number of subscribers, number of videos in the channel, etc.\",\n - \ \"id\": \"ChannelStatistics\"\n },\n \"PlaylistPlayer\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistPlayer\",\n \"properties\": {\n - \ \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelConversionPing\": {\n - \ \"id\": \"ChannelConversionPing\",\n \"description\": \"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.\",\n - \ \"properties\": {\n \"context\": {\n \"type\": \"string\",\n - \ \"description\": \"Defines the context of the ping.\",\n \"enum\": - [\n \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"conversionUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"The url (without + string: "{\n \"canonicalName\": \"YouTube\",\n \"schemas\": {\n \"ChannelSectionListResponse\": + {\n \"id\": \"ChannelSectionListResponse\",\n \"properties\": {\n + \ \"kind\": {\n \"default\": \"youtube#channelSectionListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"description\": \"A list of ChannelSections + that match the request criteria.\",\n \"type\": \"array\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"I18nRegionSnippet\": {\n + \ \"id\": \"I18nRegionSnippet\",\n \"description\": \"Basic details + about an i18n region, such as region code and human-readable name.\",\n \"type\": + \"object\",\n \"properties\": {\n \"gl\": {\n \"description\": + \"The region code as a 2-letter ISO country code.\",\n \"type\": + \"string\"\n },\n \"name\": {\n \"description\": \"The + human-readable name of the region.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"LiveBroadcastStatus\": {\n \"type\": \"object\",\n + \ \"description\": \"Live broadcast state.\",\n \"properties\": {\n + \ \"recordingStatus\": {\n \"enumDescriptions\": [\n \"No + value or the value is unknown.\",\n \"The recording has not yet + been started.\",\n \"The recording is currently on.\",\n \"The + recording is completed, and cannot be started again.\"\n ],\n \"enum\": + [\n \"liveBroadcastRecordingStatusUnspecified\",\n \"notRecording\",\n + \ \"recording\",\n \"recorded\"\n ],\n \"type\": + \"string\",\n \"description\": \"The broadcast's recording status.\"\n + \ },\n \"madeForKids\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether the broadcast is made for kids or not, + decided by YouTube instead of the creator. This field is read only.\"\n },\n + \ \"liveBroadcastPriority\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"Low priority broadcast: for low view count + HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: + for regular HoAs and broadcasts.\",\n \"High priority broadcast: + for high profile HoAs, like PixelCorp ones.\"\n ],\n \"type\": + \"string\",\n \"description\": \"Priority of the live broadcast event + (internal state).\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n + \ \"low\",\n \"normal\",\n \"high\"\n ]\n + \ },\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"The broadcast's privacy status. Note that the + broadcast represents exactly one YouTube video, so the privacy settings are + identical to those supported for videos. In addition, you can set this field + by modifying the broadcast resource or by setting the privacyStatus field + of the corresponding video resource.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"lifeCycleStatus\": {\n + \ \"type\": \"string\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n + \ \"created\",\n \"ready\",\n \"testing\",\n + \ \"live\",\n \"complete\",\n \"revoked\",\n + \ \"testStarting\",\n \"liveStarting\"\n ],\n + \ \"enumDescriptions\": [\n \"No value or the value is + unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete + settings\",\n \"Visible only to partner, may need special UI treatment\",\n + \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n + \ \"The broadcast is finished.\",\n \"This broadcast + was removed by admin action\",\n \"Transition into TESTING has + been requested\",\n \"Transition into LIVE has been requested\"\n + \ ],\n \"description\": \"The broadcast's status. The status + can be updated using the API's liveBroadcasts.transition method.\"\n },\n + \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This field will be set to True if the creator + declares the broadcast to be kids only: go/live-cw-work.\"\n }\n },\n + \ \"id\": \"LiveBroadcastStatus\"\n },\n \"MemberSnippet\": {\n + \ \"properties\": {\n \"creatorChannelId\": {\n \"type\": + \"string\",\n \"description\": \"The id of the channel that's offering + memberships.\"\n },\n \"membershipsDetails\": {\n \"description\": + \"Details about the user's membership.\",\n \"$ref\": \"MembershipsDetails\"\n + \ },\n \"memberDetails\": {\n \"description\": \"Details + about the member.\",\n \"$ref\": \"ChannelProfileDetails\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"MemberSnippet\"\n },\n + \ \"ChannelConversionPing\": {\n \"type\": \"object\",\n \"id\": + \"ChannelConversionPing\",\n \"properties\": {\n \"conversionUrl\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SubscriptionListResponse\": {\n \"properties\": {\n \"items\": - {\n \"description\": \"A list of subscriptions that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Subscription\"\n }\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + for example) to this ping.\"\n },\n \"context\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"Defines the context + of the ping.\",\n \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n + \ \"cview\"\n ]\n }\n },\n \"description\": + \"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.\"\n },\n \"LiveBroadcastListResponse\": {\n \"properties\": + {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"default\": \"youtube#subscriptionListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"SubscriptionListResponse\"\n },\n \"ChannelBrandingSettings\": - {\n \"type\": \"object\",\n \"description\": \"Branding properties - of a YouTube channel.\",\n \"properties\": {\n \"channel\": {\n - \ \"description\": \"Branding properties for the channel view.\",\n - \ \"$ref\": \"ChannelSettings\"\n },\n \"image\": {\n - \ \"$ref\": \"ImageSettings\",\n \"description\": \"Branding - properties for branding images.\"\n },\n \"hints\": {\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n },\n \"type\": - \"array\",\n \"description\": \"Additional experimental branding - properties.\"\n },\n \"watch\": {\n \"$ref\": \"WatchSettings\",\n - \ \"description\": \"Branding properties for the watch page.\"\n }\n - \ },\n \"id\": \"ChannelBrandingSettings\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"id\": \"LiveChatNewSponsorDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"isUpgrade\": {\n \"type\": \"boolean\",\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\"\n }\n }\n - \ },\n \"CommentThread\": {\n \"id\": \"CommentThread\",\n \"type\": - \"object\",\n \"properties\": {\n \"replies\": {\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the comment thread and also the top level - comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the comment thread.\"\n },\n \"kind\": {\n \"default\": - \"youtube#commentThread\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\"\n - \ }\n },\n \"description\": \"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.\"\n },\n - \ \"PlaylistLocalization\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistLocalization\",\n \"description\": \"Playlist localization - setting\",\n \"properties\": {\n \"description\": {\n \"description\": - \"The localized strings for playlist's description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for playlist's title.\"\n - \ }\n }\n },\n \"VideoProcessingDetails\": {\n \"id\": - \"VideoProcessingDetails\",\n \"properties\": {\n \"tagSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether keyword (tag) suggestions are available for the video. Tags - can be added to a video's metadata to make it easier for other users to find - the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"editorSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether video editing suggestions, which might improve video quality - or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\"\n },\n \"processingProgress\": {\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"processingStatus\": {\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ],\n \"description\": \"The video's processing status. - This value indicates whether YouTube was able to process the video or if the - video is still being processed.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"fileDetailsAvailability\": {\n \"description\": - \"This value indicates whether file details are available for the uploaded - video. You can retrieve a video's file details by requesting the fileDetails - part in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"processingIssuesAvailability\": {\n \"description\": \"This - value indicates whether the video processing engine has generated suggestions - that might improve YouTube's ability to process the the video, warnings that - explain video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"processingFailureReason\": - {\n \"type\": \"string\",\n \"enum\": [\n \"uploadFailed\",\n - \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\"\n - \ },\n \"thumbnailsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\"\n }\n },\n \"description\": - \"Describes processing status and progress and availability of some other - Video resource parts.\",\n \"type\": \"object\"\n },\n \"VideoContentDetails\": - {\n \"properties\": {\n \"caption\": {\n \"enum\": [\n - \ \"true\",\n \"false\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The value of captions indicates - whether the video has captions or not.\"\n },\n \"dimension\": - {\n \"description\": \"The value of dimension indicates whether the - video is available in 3D or in 2D.\",\n \"type\": \"string\"\n },\n - \ \"hasCustomThumbnail\": {\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n },\n \"licensedContent\": {\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\",\n \"type\": \"boolean\"\n },\n \"regionRestriction\": - {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\"\n },\n - \ \"countryRestriction\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\"\n },\n - \ \"duration\": {\n \"description\": \"The length of the video. - The tag value is an ISO 8601 duration in the format PT#M#S, in which the letters - PT indicate that the value specifies a period of time, and the letters M and - S refer to length in minutes and seconds, respectively. The # characters preceding - the M and S letters are both integers that specify the number of minutes (or - seconds) of the video. For example, a value of PT15M51S indicates that the - video is 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n - \ },\n \"projection\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ],\n \"description\": - \"Specifies the projection format of the video.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ]\n },\n \"contentRating\": {\n \"$ref\": - \"ContentRating\",\n \"description\": \"Specifies the ratings that - the video received under various rating schemes.\"\n },\n \"definition\": - {\n \"enum\": [\n \"sd\",\n \"hd\"\n ],\n - \ \"description\": \"The value of definition indicates whether the - video is available in high definition or only in standard definition.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ]\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Details about the content of a YouTube Video.\",\n - \ \"id\": \"VideoContentDetails\"\n },\n \"TokenPagination\": {\n - \ \"type\": \"object\",\n \"id\": \"TokenPagination\",\n \"properties\": - {},\n \"description\": \"Stub token pagination template to suppress results.\"\n - \ },\n \"ActivityContentDetailsChannelItem\": {\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"description\": \"Details about a resource which was added - to a channel.\",\n \"type\": \"object\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of this abuse report secondary reason.\"\n - \ },\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label for this abuse report secondary reason.\"\n }\n - \ }\n },\n \"LiveChatMembershipGiftingDetails\": {\n \"id\": - \"LiveChatMembershipGiftingDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"giftMembershipsLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\"\n },\n - \ \"giftMembershipsCount\": {\n \"type\": \"integer\",\n \"format\": - \"int32\",\n \"description\": \"The number of gift memberships purchased - by the user.\"\n }\n }\n },\n \"ActivityContentDetailsFavorite\": - {\n \"id\": \"ActivityContentDetailsFavorite\",\n \"type\": \"object\",\n - \ \"description\": \"Information about a video that was marked as a favorite - video.\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"MembershipsDuration\": {\n \"properties\": {\n - \ \"memberSince\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the user became a continuous member across all levels.\"\n - \ },\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"description\": \"The cumulative time the user has - been a member across all levels in complete months (the time is rounded down - to the nearest integer).\",\n \"format\": \"int32\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"MembershipsDuration\"\n - \ },\n \"LiveBroadcastListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"description\": \"A list of broadcasts that - match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"pageInfo\": + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n + \ \"default\": \"youtube#liveBroadcastListResponse\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": \"General pagination information.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"default\": - \"youtube#liveBroadcastListResponse\"\n }\n },\n \"id\": - \"LiveBroadcastListResponse\"\n },\n \"LiveChatBanSnippet\": {\n \"properties\": - {\n \"type\": {\n \"enumDescriptions\": [\n \"An - invalid ban type.\",\n \"A permanent ban.\",\n \"A temporary - ban.\"\n ],\n \"description\": \"The type of ban.\",\n \"enum\": - [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"type\": \"string\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The chat this ban is pertinent to.\"\n },\n \"banDurationSeconds\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n },\n - \ \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatBanSnippet\"\n - \ },\n \"ChannelSectionListResponse\": {\n \"id\": \"ChannelSectionListResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of ChannelSections that match the request criteria.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#channelSectionListResponse\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsUpload\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsUpload\",\n \"properties\": {\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\"\n }\n - \ },\n \"description\": \"Information about the uploaded video.\"\n - \ },\n \"VideoSuggestions\": {\n \"id\": \"VideoSuggestions\",\n - \ \"properties\": {\n \"editorSuggestions\": {\n \"items\": - {\n \"enumDescriptions\": [\n \"Picture brightness - levels seem off and could be corrected.\",\n \"The video appears - shaky and could be stabilized.\",\n \"Margins (mattes) detected - around the picture could be cropped.\",\n \"The audio track appears - silent and could be swapped with a better quality one.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ]\n },\n \"type\": \"array\",\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\"\n },\n \"tagSuggestions\": - {\n \"description\": \"A list of keyword tags that could be added - to the video's metadata to increase the likelihood that users will locate - your video when searching or browsing on YouTube.\",\n \"items\": - {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n },\n - \ \"type\": \"array\"\n },\n \"processingErrors\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"enum\": - [\n \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n - \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n - \ \"unsupportedSpatialAudioLayout\"\n ],\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of errors that will prevent YouTube from - successfully processing the uploaded video video. These errors indicate that, - regardless of the video's current processing status, eventually, that status - will almost certainly be failed.\"\n },\n \"processingHints\": - {\n \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ]\n },\n \"description\": \"A list of suggestions - that may improve YouTube's ability to process the video.\"\n },\n \"processingWarnings\": - {\n \"items\": {\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"type\": - \"string\"\n },\n \"description\": \"A list of reasons why - YouTube may have difficulty transcoding the uploaded video or that might result - in an erroneous transcoding. These warnings are generated before YouTube actually - processes the uploaded video file. In addition, they identify issues that - are unlikely to cause the video processing to fail but that might cause problems - such as sync issues, video artifacts, or a missing audio track.\",\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Specifies suggestions on how to improve video content, including encoding - hints, tag suggestions, and editor suggestions.\"\n },\n \"SuperChatEventListResponse\": - {\n \"type\": \"object\",\n \"id\": \"SuperChatEventListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \"TokenPagination\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"nextPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the next page + in the result set.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"description\": \"A list of + broadcasts that match the request criteria.\",\n \"items\": {\n \"$ref\": + \"LiveBroadcast\"\n }\n },\n \"prevPageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n }\n },\n \"id\": \"LiveBroadcastListResponse\",\n + \ \"type\": \"object\"\n },\n \"I18nRegionListResponse\": {\n \"id\": + \"I18nRegionListResponse\",\n \"type\": \"object\",\n \"properties\": + {\n \"kind\": {\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n + \ \"default\": \"youtube#i18nRegionListResponse\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"I18nRegion\"\n },\n \"description\": \"A list of regions + where YouTube is available. In this map, the i18n region ID is the map key, + and its value is the corresponding i18nRegion resource.\",\n \"type\": + \"array\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of Super Chat purchases that - match the request criteria.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#superChatEventListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n - \ }\n }\n },\n \"ActivityContentDetailsSubscription\": {\n - \ \"description\": \"Information about a channel that a user subscribed - to.\",\n \"id\": \"ActivityContentDetailsSubscription\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": + resource.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"ActivityContentDetailsFavorite\": {\n \"description\": \"Information + about a video that was marked as a favorite video.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"resourceId\": {\n \"description\": \"The resourceId object contains information that identifies the resource - that the user subscribed to.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"memberMonth\": {\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"userComment\": {\n - \ \"description\": \"The comment added by the member to this Member - Milestone Chat. This field is empty for messages without a comment from the - member.\",\n \"type\": \"string\"\n },\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level at which the viever is a member. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n }\n },\n \"id\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"LiveStreamStatus\": {\n \"description\": \"Brief description - of the live stream status.\",\n \"properties\": {\n \"streamStatus\": - {\n \"enum\": [\n \"created\",\n \"ready\",\n - \ \"active\",\n \"inactive\",\n \"error\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"healthStatus\": {\n \"$ref\": - \"LiveStreamHealthStatus\",\n \"description\": \"The health status - of the stream.\"\n }\n },\n \"id\": \"LiveStreamStatus\",\n - \ \"type\": \"object\"\n },\n \"ThirdPartyLinkSnippet\": {\n \"properties\": - {\n \"type\": {\n \"description\": \"Type of the link named - after the entities that are being linked.\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"type\": \"string\"\n },\n \"channelToStoreLink\": - {\n \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n - \ }\n },\n \"id\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"Basic information about a third party account link, including its type and - type-specific information.\",\n \"type\": \"object\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"description\": \"Basic details about a video category, such as - its localized title.\",\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"secondaryReasons\": - {\n \"description\": \"The secondary reasons associated with this - reason, if any are available. (There might be 0 or more.)\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"type\": \"array\"\n },\n \"label\": {\n \"description\": - \"The localized label belonging to this abuse report reason.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ThirdPartyLink\": {\n \"type\": - \"object\",\n \"properties\": {\n \"linkingToken\": {\n \"type\": - \"string\",\n \"description\": \"The linking_token identifies a YouTube - account and channel with which the third party account is linked.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"ThirdPartyLinkSnippet\",\n \"description\": \"The snippet object - contains basic details about the third- party account link.\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the status of the link.\",\n \"$ref\": \"ThirdPartyLinkStatus\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLink\"\n - \ }\n },\n \"id\": \"ThirdPartyLink\",\n \"description\": - \"A *third party account link* resource represents a link between a YouTube - account or a channel and an account on a third-party service.\"\n },\n - \ \"ActivityContentDetailsBulletin\": {\n \"description\": \"Details - about a channel bulletin post.\",\n \"id\": \"ActivityContentDetailsBulletin\",\n + that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n + \ },\n \"id\": \"ActivityContentDetailsFavorite\"\n },\n \"ThirdPartyLinkListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"items\": + {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"type\": \"array\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n },\n \"id\": \"ThirdPartyLinkListResponse\"\n + \ },\n \"LiveChatMessageSnippet\": {\n \"id\": \"LiveChatMessageSnippet\",\n + \ \"description\": \"Next ID: 33\",\n \"properties\": {\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the message was orignally + published.\"\n },\n \"memberMilestoneChatDetails\": {\n \"$ref\": + \"LiveChatMemberMilestoneChatDetails\",\n \"description\": \"Details + about the Member Milestone Chat event, this is only set if the type is 'memberMilestoneChatEvent'.\"\n + \ },\n \"membershipGiftingDetails\": {\n \"description\": + \"Details about the Membership Gifting event, this is only set if the type + is 'membershipGiftingEvent'.\",\n \"$ref\": \"LiveChatMembershipGiftingDetails\"\n + \ },\n \"newSponsorDetails\": {\n \"description\": \"Details + about the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. + Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n + \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"messageRetractedDetails\": + {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"superChatDetails\": + {\n \"description\": \"Details about the Super Chat event, this is + only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n + \ },\n \"displayMessage\": {\n \"type\": \"string\",\n + \ \"description\": \"Contains a string that can be displayed to the + user. If this field is not present the message is silent, at the moment only + messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\"\n },\n + \ \"type\": {\n \"type\": \"string\",\n \"description\": + \"The type of message, this will always be present, it determines the contents + of the message as well as which fields will be present.\",\n \"enum\": + [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n + \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n + \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n + \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n + \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n + \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n + \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"liveChatId\": + {\n \"type\": \"string\"\n },\n \"authorChannelId\": + {\n \"description\": \"The ID of the user that authored this message, + this field is not always filled. textMessageEvent - the user that wrote the + message fanFundingEvent - the user that funded the broadcast newSponsorEvent + - the user that just became a sponsor memberMilestoneChatEvent - the member + that sent the message membershipGiftingEvent - the user that made the purchase + giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent + - the moderator that took the action messageRetractedEvent - the author that + retracted their message userBannedEvent - the moderator that took the action + superChatEvent - the user that made the purchase superStickerEvent - the user + that made the purchase\",\n \"type\": \"string\"\n },\n \"fanFundingEventDetails\": + {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n \"description\": + \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n + \ },\n \"giftMembershipReceivedDetails\": {\n \"$ref\": + \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": \"Details + about the Gift Membership Received event, this is only set if the type is + 'giftMembershipReceivedEvent'.\"\n },\n \"textMessageDetails\": + {\n \"description\": \"Details about the text message, this is only + set if the type is 'textMessageEvent'.\",\n \"$ref\": \"LiveChatTextMessageDetails\"\n + \ },\n \"superStickerDetails\": {\n \"description\": + \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n + \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"userBannedDetails\": + {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n + \ \"hasDisplayContent\": {\n \"type\": \"boolean\",\n \"description\": + \"Whether the message has display content that should be displayed to users.\"\n + \ },\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"VideoAgeGating\": + {\n \"type\": \"object\",\n \"id\": \"VideoAgeGating\",\n \"properties\": + {\n \"videoGameRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n + \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"description\": + \"Video game rating, if any.\"\n },\n \"alcoholContent\": {\n + \ \"description\": \"Indicates whether or not the video has alcoholic + beverage content. Only users of legal purchasing age in a particular country, + as identified by ICAP, can view the content.\",\n \"type\": \"boolean\"\n + \ },\n \"restricted\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Age-restricted trailers. For redband trailers + and adult-rated video-games. Only users aged 18+ can view the content. The + the field is true the content is restricted to viewers aged 18+. Otherwise + The field won't be present.\"\n }\n }\n },\n \"GeoPoint\": + {\n \"type\": \"object\",\n \"description\": \"Geographical coordinates + of a point, in WGS84.\",\n \"id\": \"GeoPoint\",\n \"properties\": + {\n \"latitude\": {\n \"description\": \"Latitude in degrees.\",\n + \ \"type\": \"number\",\n \"format\": \"double\"\n },\n + \ \"longitude\": {\n \"description\": \"Longitude in degrees.\",\n + \ \"type\": \"number\",\n \"format\": \"double\"\n },\n + \ \"altitude\": {\n \"type\": \"number\",\n \"format\": + \"double\",\n \"description\": \"Altitude above the reference ellipsoid, + in meters.\"\n }\n }\n },\n \"LiveChatMessage\": {\n \"type\": + \"object\",\n \"id\": \"LiveChatMessage\",\n \"properties\": {\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n + \ \"default\": \"youtube#liveChatMessage\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the message.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"authorDetails\": {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n + \ \"description\": \"The authorDetails object contains basic details + about the user that posted this message.\"\n },\n \"id\": {\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the message.\",\n \"type\": \"string\"\n }\n },\n \"description\": + \"A *liveChatMessage* resource represents a chat message in a YouTube Live + Chat.\"\n },\n \"ChannelToStoreLinkDetails\": {\n \"id\": \"ChannelToStoreLinkDetails\",\n + \ \"description\": \"Information specific to a store on a merchandising + platform linked to a YouTube channel.\",\n \"properties\": {\n \"storeUrl\": + {\n \"type\": \"string\",\n \"description\": \"Landing page + of the store.\"\n },\n \"storeName\": {\n \"description\": + \"Name of the store.\",\n \"type\": \"string\"\n },\n \"merchantId\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"Google Merchant Center id of the store.\"\n }\n },\n \"type\": + \"object\"\n },\n \"VideoStatus\": {\n \"description\": \"Basic + details about a video category, such as its localized title. Next Id: 18\",\n + \ \"id\": \"VideoStatus\",\n \"type\": \"object\",\n \"properties\": + {\n \"uploadStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"Video has been uploaded but not processed yet.\",\n \"Video + has been successfully processed.\",\n \"Processing has failed. + See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n + \ \"Video has been deleted.\"\n ],\n \"enum\": + [\n \"uploaded\",\n \"processed\",\n \"failed\",\n + \ \"rejected\",\n \"deleted\"\n ],\n \"description\": + \"The status of the uploaded video.\"\n },\n \"publishAt\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the video is scheduled + to publish. It can be set only if the privacy status of the video is private..\"\n + \ },\n \"license\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"youtube\",\n + \ \"creativeCommon\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's license. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"rejectionReason\": {\n \"type\": + \"string\",\n \"enum\": [\n \"copyright\",\n \"inappropriate\",\n + \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n + \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n + \ \"trademark\",\n \"legal\"\n ],\n \"enumDescriptions\": + [\n \"Copyright infringement.\",\n \"Inappropriate video + content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms + of use violation.\",\n \"Uploader account was suspended.\",\n \"Video + duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader + closed his/her account.\",\n \"Trademark infringement.\",\n \"An + unspecified legal reason.\"\n ],\n \"description\": \"This + value explains why YouTube rejected an uploaded video. This property is only + present if the uploadStatus property indicates that the upload was rejected.\"\n + \ },\n \"failureReason\": {\n \"enumDescriptions\": + [\n \"Unable to convert video content.\",\n \"Invalid + file format.\",\n \"Empty file.\",\n \"File was too + small.\",\n \"Unsupported codec.\",\n \"Upload wasn't + finished.\"\n ],\n \"type\": \"string\",\n \"description\": + \"This value explains why a video failed to upload. This property is only + present if the uploadStatus property indicates that the upload failed.\",\n + \ \"enum\": [\n \"conversion\",\n \"invalidFile\",\n + \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n + \ \"uploadAborted\"\n ]\n },\n \"embeddable\": + {\n \"type\": \"boolean\",\n \"description\": \"This value + indicates if the video can be embedded on another website. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"privacyStatus\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"type\": \"string\",\n \"description\": + \"The video's privacy status.\"\n },\n \"publicStatsViewable\": + {\n \"type\": \"boolean\",\n \"description\": \"This value + indicates if the extended video statistics on the watch page can be viewed + by everyone. Note that the view count, likes, etc will still be visible if + this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n + \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n + \ }\n }\n },\n \"InvideoBranding\": {\n \"properties\": + {\n \"timing\": {\n \"description\": \"The temporal position + within the video where watermark will be displayed.\",\n \"$ref\": + \"InvideoTiming\"\n },\n \"imageUrl\": {\n \"type\": + \"string\",\n \"description\": \"The url of the uploaded image. Only + used in apiary to api communication.\"\n },\n \"imageBytes\": + {\n \"format\": \"byte\",\n \"type\": \"string\",\n \"description\": + \"The bytes the uploaded image. Only used in api to youtube communication.\"\n + \ },\n \"position\": {\n \"description\": \"The spatial + position within the video where the branding watermark will be displayed.\",\n + \ \"$ref\": \"InvideoPosition\"\n },\n \"targetChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The channel + to which this branding links. If not present it defaults to the current channel.\"\n + \ }\n },\n \"description\": \"LINT.IfChange Describes an invideo + branding.\",\n \"type\": \"object\",\n \"id\": \"InvideoBranding\"\n + \ },\n \"VideoSuggestionsTagSuggestion\": {\n \"properties\": {\n + \ \"tag\": {\n \"type\": \"string\",\n \"description\": + \"The keyword tag suggested for the video.\"\n },\n \"categoryRestricts\": + {\n \"type\": \"array\",\n \"description\": \"A set of video + categories for which the tag is relevant. You can use this information to + display appropriate tag suggestions based on the video category that the video + uploader associates with the video. By default, tag suggestions are relevant + for all categories if there are no restricts defined for the keyword.\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n }\n + \ },\n \"description\": \"A single tag suggestion with it's relevance + information.\",\n \"id\": \"VideoSuggestionsTagSuggestion\",\n \"type\": + \"object\"\n },\n \"CommentThreadListResponse\": {\n \"properties\": + {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"items\": {\n \"description\": \"A list of comment threads + that match the request criteria.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"CommentThread\"\n }\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n + \ \"default\": \"youtube#commentThreadListResponse\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ }\n },\n \"id\": \"CommentThreadListResponse\",\n \"type\": + \"object\"\n },\n \"ActivityContentDetailsLike\": {\n \"id\": \"ActivityContentDetailsLike\",\n \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": \"The resourceId object contains information - that identifies the resource associated with a bulletin post. @mutable youtube.activities.insert\",\n - \ \"$ref\": \"ResourceId\"\n }\n }\n },\n \"PageInfo\": - {\n \"type\": \"object\",\n \"properties\": {\n \"totalResults\": - {\n \"format\": \"int32\",\n \"description\": \"The total - number of results in the result set.\",\n \"type\": \"integer\"\n - \ },\n \"resultsPerPage\": {\n \"format\": \"int32\",\n - \ \"description\": \"The number of results included in the API response.\",\n - \ \"type\": \"integer\"\n }\n },\n \"id\": \"PageInfo\",\n - \ \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\"\n },\n \"ChannelTopicDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"topicIds\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of Freebase topic IDs associated with - the channel. You can retrieve information about each topic using the Freebase - Topic API.\"\n },\n \"topicCategories\": {\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"id\": \"ChannelTopicDetails\",\n \"description\": - \"Freebase topic information related to the channel.\"\n },\n \"LiveChatTextMessageDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatTextMessageDetails\",\n - \ \"properties\": {\n \"messageText\": {\n \"type\": \"string\",\n - \ \"description\": \"The user's message.\"\n }\n }\n },\n - \ \"LiveStreamContentDetails\": {\n \"description\": \"Detailed settings - of a stream.\",\n \"type\": \"object\",\n \"id\": \"LiveStreamContentDetails\",\n - \ \"properties\": {\n \"isReusable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether the stream is reusable, which - means that it can be bound to multiple broadcasts. It is common for broadcasters - to reuse the same stream for many different broadcasts if those broadcasts - occur at different times. If you set this value to false, then the stream - will not be reusable, which means that it can only be bound to one broadcast. - Non-reusable streams differ from reusable streams in the following ways: - - A non-reusable stream can only be bound to one broadcast. - A non-reusable + that identifies the rated resource.\",\n \"$ref\": \"ResourceId\"\n + \ }\n },\n \"description\": \"Information about a resource + that received a positive (like) rating.\"\n },\n \"LiveStreamContentDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"isReusable\": + {\n \"description\": \"Indicates whether the stream is reusable, + which means that it can be bound to multiple broadcasts. It is common for + broadcasters to reuse the same stream for many different broadcasts if those + broadcasts occur at different times. If you set this value to false, then + the stream will not be reusable, which means that it can only be bound to + one broadcast. Non-reusable streams differ from reusable streams in the following + ways: - A non-reusable stream can only be bound to one broadcast. - A non-reusable stream might be deleted by an automated process after the broadcast ends. - The liveStreams.list method does not list non-reusable streams if you call the method and set the mine parameter to true. The only way to use that method to retrieve the resource for a non-reusable stream is to use the id parameter - to identify the stream. \"\n },\n \"closedCaptionsIngestionUrl\": - {\n \"description\": \"The ingestion URL where the closed captions - of this stream are sent.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveStream\": {\n \"type\": \"object\",\n \"id\": - \"LiveStream\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"default\": \"youtube#liveStream\",\n \"type\": \"string\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n - \ \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the stream.\"\n },\n \"cdn\": {\n - \ \"$ref\": \"CdnSettings\",\n \"description\": \"The cdn - object defines the live stream's content delivery network (CDN) settings. - These settings provide details about the manner in which you stream your content - to YouTube.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about live stream's status.\",\n \"$ref\": - \"LiveStreamStatus\"\n }\n },\n \"description\": \"A live - stream describes a live ingestion point.\"\n },\n \"ActivityContentDetailsComment\": - {\n \"description\": \"Information about a resource that received a comment.\",\n - \ \"id\": \"ActivityContentDetailsComment\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource associated with the comment.\"\n }\n }\n - \ },\n \"SearchListResponse\": {\n \"id\": \"SearchListResponse\",\n + to identify the stream. \",\n \"type\": \"boolean\"\n },\n + \ \"closedCaptionsIngestionUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The ingestion URL where the closed captions of + this stream are sent.\"\n }\n },\n \"id\": \"LiveStreamContentDetails\",\n + \ \"description\": \"Detailed settings of a stream.\"\n },\n \"TokenPagination\": + {\n \"description\": \"Stub token pagination template to suppress results.\",\n + \ \"type\": \"object\",\n \"properties\": {},\n \"id\": \"TokenPagination\"\n + \ },\n \"LiveStreamHealthStatus\": {\n \"properties\": {\n \"lastUpdateTimeSeconds\": + {\n \"description\": \"The last time this status was updated (in + seconds)\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n + \ },\n \"configurationIssues\": {\n \"type\": \"array\",\n + \ \"description\": \"The configurations issues on this stream\",\n + \ \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n + \ }\n },\n \"status\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The status code + of this stream\",\n \"enum\": [\n \"good\",\n \"ok\",\n + \ \"bad\",\n \"noData\",\n \"revoked\"\n ],\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LiveStreamHealthStatus\"\n },\n \"LiveStream\": {\n \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#searchListResponse\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#searchListResponse\\\".\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"SearchResult\"\n },\n \"description\": \"Pagination information - for token pagination.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"regionCode\": {\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"description\": + the fixed string \\\"youtube#liveStream\\\".\",\n \"type\": \"string\",\n + \ \"default\": \"youtube#liveStream\"\n },\n \"status\": + {\n \"$ref\": \"LiveStreamStatus\",\n \"description\": \"The + status object contains information about live stream's status.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"LiveStreamSnippet\",\n \"description\": + \"The snippet object contains basic details about the stream, including its + channel, title, and description.\"\n },\n \"id\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.update\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + assigns to uniquely identify the stream.\",\n \"type\": \"string\"\n + \ },\n \"cdn\": {\n \"description\": \"The cdn object + defines the live stream's content delivery network (CDN) settings. These settings + provide details about the manner in which you stream your content to YouTube.\",\n + \ \"$ref\": \"CdnSettings\"\n },\n \"contentDetails\": + {\n \"$ref\": \"LiveStreamContentDetails\",\n \"description\": + \"The content_details object contains information about the stream, including + the closed captions ingestion URL.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"LiveStream\",\n \"description\": \"A live stream describes + a live ingestion point.\"\n },\n \"CommentThreadSnippet\": {\n \"type\": + \"object\",\n \"description\": \"Basic details about a comment thread.\",\n + \ \"id\": \"CommentThreadSnippet\",\n \"properties\": {\n \"canReply\": + {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"totalReplyCount\": {\n \"description\": + \"The total number of replies (not including the top level comment).\",\n + \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n + \ \"isPublic\": {\n \"description\": \"Whether the thread (and + therefore all its comments) is visible to all YouTube users.\",\n \"type\": + \"boolean\"\n },\n \"videoId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the video the comments refer to, if + any. No video_id implies a channel discussion comment.\"\n },\n \"topLevelComment\": + {\n \"$ref\": \"Comment\",\n \"description\": \"The top + level comment of this thread.\"\n }\n }\n },\n \"LiveStreamListResponse\": + {\n \"id\": \"LiveStreamListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n }\n },\n \"I18nRegion\": {\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"default\": \"youtube#i18nRegion\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the i18n region, such as region code and - human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n region.\"\n }\n },\n \"id\": \"I18nRegion\",\n - \ \"description\": \"A *i18nRegion* resource identifies a region where - YouTube is available.\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"properties\": {\n \"playlistItemId\": {\n \"type\": - \"string\",\n \"description\": \"ID of the item within the playlist.\"\n - \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n },\n \"playlistId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Information about a new playlist item.\",\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamListResponse\": {\n \"type\": - \"object\",\n \"id\": \"LiveStreamListResponse\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStreamListResponse\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"description\": \"A list of live streams that match the request - criteria.\",\n \"type\": \"array\"\n },\n \"nextPageToken\": + \"TokenPagination\"\n },\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ChannelLocalization\": {\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel's title.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - description.\"\n }\n },\n \"id\": \"ChannelLocalization\",\n - \ \"description\": \"Channel localization setting\",\n \"type\": - \"object\"\n },\n \"LiveChatBan\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatBan\",\n \"description\": \"A `__liveChatBan__` - resource represents a ban for a YouTube live chat.\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"default\": \"youtube#liveChatBan\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelSectionLocalization\": {\n \"description\": - \"ChannelSection localization setting\",\n \"properties\": {\n \"title\": - {\n \"description\": \"The localized strings for channel section's - title.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ChannelSectionLocalization\",\n \"type\": \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"type\": \"object\",\n \"description\": \"Video processing - progress and completion time estimate.\",\n \"properties\": {\n \"partsProcessed\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\"\n - \ },\n \"timeLeftMs\": {\n \"type\": \"string\",\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\",\n \"format\": \"uint64\"\n },\n - \ \"partsTotal\": {\n \"format\": \"uint64\",\n \"description\": - \"An estimate of the total number of parts that need to be processed for the - video. The number may be updated with more precise estimates while YouTube - processes the video.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"VideoProcessingDetailsProcessingProgress\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"properties\": {\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatModeratorListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of moderators - that match the request criteria.\"\n },\n \"pageInfo\": {\n - \ \"$ref\": \"PageInfo\",\n \"description\": \"General pagination - information.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveChatModeratorListResponse\",\n \"type\": - \"object\"\n },\n \"LiveBroadcastStatistics\": {\n \"properties\": - {\n \"concurrentViewers\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\"\n },\n \"totalChatCount\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"Statistics about the live broadcast. These represent - a snapshot of the values at the time of the request. Statistics are only returned - for live broadcasts.\"\n },\n \"AbuseType\": {\n \"id\": \"AbuseType\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoListResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": + page in the result set.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveStreamListResponse\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"items\": {\n \"description\": + \"A list of live streams that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"LiveStream\"\n },\n \"type\": + \"array\"\n }\n }\n },\n \"LiveChatMessageDeletedDetails\": + {\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": + \"string\"\n }\n }\n },\n \"LiveChatFanFundingEventDetails\": + {\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"amountMicros\": {\n \"format\": + \"uint64\",\n \"description\": \"The amount of the fund.\",\n \"type\": + \"string\"\n },\n \"amountDisplayString\": {\n \"description\": + \"A rendered string that displays the fund amount and currency to the user.\",\n + \ \"type\": \"string\"\n },\n \"userComment\": {\n \"type\": + \"string\",\n \"description\": \"The comment added by the user to + this fan funding event.\"\n },\n \"currency\": {\n \"description\": + \"The currency in which the fund was made.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"ChannelListResponse\": {\n \"type\": + \"object\",\n \"id\": \"ChannelListResponse\",\n \"properties\": + {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Video\"\n }\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": + set.\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#channelListResponse\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#videoListResponse\",\n + \"PageInfo\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"nextPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the next page + in the result set.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"Channel\"\n }\n }\n }\n },\n \"PageInfo\": {\n + \ \"type\": \"object\",\n \"properties\": {\n \"totalResults\": + {\n \"format\": \"int32\",\n \"type\": \"integer\",\n \"description\": + \"The total number of results in the result set.\"\n },\n \"resultsPerPage\": + {\n \"description\": \"The number of results included in the API + response.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n + \ }\n },\n \"description\": \"Paging details for lists of + resources, including total number of items available and number of resources + returned in a single page.\",\n \"id\": \"PageInfo\"\n },\n \"PlaylistLocalization\": + {\n \"type\": \"object\",\n \"description\": \"Playlist localization + setting\",\n \"properties\": {\n \"description\": {\n \"description\": + \"The localized strings for playlist's description.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The localized strings for playlist's title.\"\n + \ }\n },\n \"id\": \"PlaylistLocalization\"\n },\n \"Activity\": + {\n \"type\": \"object\",\n \"id\": \"Activity\",\n \"properties\": + {\n \"id\": {\n \"description\": \"The ID that YouTube uses + to uniquely identify the activity.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": + \"ActivitySnippet\",\n \"description\": \"The snippet object contains + basic details about the activity, including the activity's type and group + ID.\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n + \ \"default\": \"youtube#activity\",\n \"type\": \"string\"\n + \ },\n \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n + \ \"description\": \"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.\"\n }\n },\n \"description\": \"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.\"\n + \ },\n \"VideoRecordingDetails\": {\n \"properties\": {\n \"location\": + {\n \"description\": \"The geolocation information associated with + the video.\",\n \"$ref\": \"GeoPoint\"\n },\n \"recordingDate\": + {\n \"format\": \"date-time\",\n \"description\": \"The + date and time when the video was recorded.\",\n \"type\": \"string\"\n + \ },\n \"locationDescription\": {\n \"type\": \"string\",\n + \ \"description\": \"The text description of the location where the + video was recorded.\"\n }\n },\n \"type\": \"object\",\n + \ \"description\": \"Recording information associated with the video.\",\n + \ \"id\": \"VideoRecordingDetails\"\n },\n \"PlaylistItem\": {\n + \ \"description\": \"A *playlistItem* resource identifies another resource, + such as a video, that is included in a playlist. In addition, the playlistItem + resource contains details about the included resource that pertain specifically + to how that resource is used in that playlist. YouTube uses playlists to identify + special collections of videos for a channel, such as: - uploaded videos - + favorite videos - positively rated (liked) videos - watch history - watch + later To be more specific, these lists are associated with a channel, which + is a collection of a person, group, or company's videos, playlists, and other + YouTube information. You can retrieve the playlist IDs for each of these lists + from the channel resource for a given channel. You can then use the playlistItems.list + method to retrieve any of those lists. You can also add or remove items from + those lists by calling the playlistItems.insert and playlistItems.delete methods. + For example, if a user gives a positive rating to a video, you would insert + that video into the liked videos playlist for that user's channel.\",\n \"type\": + \"object\",\n \"id\": \"PlaylistItem\",\n \"properties\": {\n \"contentDetails\": + {\n \"$ref\": \"PlaylistItemContentDetails\",\n \"description\": + \"The contentDetails object is included in the resource if the included item + is a YouTube video. The object contains additional information about the video.\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the playlist item, such as its title and + position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#playlistItem\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoListResponse\\\".\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoListResponse\"\n },\n \"VideoPlayer\": {\n \"id\": - \"VideoPlayer\",\n \"properties\": {\n \"embedWidth\": {\n \"type\": - \"string\",\n \"description\": \"The embed width\",\n \"format\": - \"int64\"\n },\n \"embedHeight\": {\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n },\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Player to be used for a video playback.\"\n },\n - \ \"LocalizedProperty\": {\n \"id\": \"LocalizedProperty\",\n \"type\": - \"object\",\n \"properties\": {\n \"localized\": {\n \"items\": - {\n \"$ref\": \"LocalizedString\"\n },\n \"type\": - \"array\"\n },\n \"default\": {\n \"type\": \"string\"\n - \ },\n \"defaultLanguage\": {\n \"$ref\": \"LanguageTag\",\n - \ \"description\": \"The language of the default property.\"\n }\n - \ }\n },\n \"SubscriptionContentDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"Details about the content to witch a subscription - refers.\",\n \"properties\": {\n \"newItemCount\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of new items in the subscription since its content was last read.\"\n - \ },\n \"totalItemCount\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The approximate - number of items that the subscription points to.\"\n },\n \"activityType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The type of activity - this subscription is for (only uploads, everything).\",\n \"type\": - \"string\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ]\n }\n },\n - \ \"id\": \"SubscriptionContentDetails\"\n },\n \"PlaylistListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"default\": \"youtube#playlistListResponse\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"description\": \"A list of playlists that match - the request criteria\",\n \"type\": \"array\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"PlaylistListResponse\"\n },\n - \ \"LiveChatMessage\": {\n \"type\": \"object\",\n \"description\": - \"A *liveChatMessage* resource represents a chat message in a YouTube Live - Chat.\",\n \"id\": \"LiveChatMessage\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"LiveChatMessageSnippet\",\n \"description\": - \"The snippet object contains basic details about the message.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the message.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatMessage\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n - \ \"type\": \"string\"\n },\n \"authorDetails\": {\n - \ \"description\": \"The authorDetails object contains basic details - about the user that posted this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n - \ }\n }\n },\n \"Entity\": {\n \"properties\": {\n \"typeId\": - {\n \"type\": \"string\"\n },\n \"url\": {\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Entity\"\n - \ },\n \"ContentRating\": {\n \"id\": \"ContentRating\",\n \"properties\": - {\n \"menaMpaaRating\": {\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The rating system - for MENA countries, a clone of MPAA. It is needed to prevent titles go live - w/o additional QC check, since some of them can be inappropriate for the countries - at all. See b/33408548 for more details.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ]\n },\n \"acbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"acbUnspecified\",\n - \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n - \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n - \ \"acbR18plus\",\n \"acbUnrated\"\n ]\n },\n - \ \"mdaRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ]\n },\n \"smaisRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n - \ \"smais12\",\n \"smais14\",\n \"smais16\",\n - \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"description\": - \"The video's rating in Iceland.\"\n },\n \"incaaRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"ATP (Apta - para todo publico)\",\n \"13 (Solo apta para mayores de 13 a\xF1os)\",\n - \ \"16 (Solo apta para mayores de 16 a\xF1os)\",\n \"18 - (Solo apta para mayores de 18 a\xF1os)\",\n \"X (Solo apta para - mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"description\": \"The video's INCAA (Instituto Nacional - de Cine y Artes Audiovisuales - Argentina) rating.\"\n },\n \"mccypRating\": - {\n \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Danish - Film Institute's (Det Danske Filminstitut) Media Council for Children and - Young People.\"\n },\n \"bbfcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's British Board of Film Classification (BBFC) rating.\",\n \"enum\": - [\n \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ]\n },\n \"bmukkRating\": {\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"enum\": + the fixed string \\\"youtube#playlistItem\\\".\",\n \"type\": \"string\"\n + \ },\n \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n + \ \"description\": \"The status object contains information about + the playlist item's privacy status.\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the playlist item.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"AbuseType\": {\n \"type\": \"object\",\n \"id\": \"AbuseType\",\n + \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n + \ }\n }\n },\n \"ActivityContentDetailsRecommendation\": + {\n \"description\": \"Information that identifies the recommended resource.\",\n + \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the recommended resource.\"\n },\n \"reason\": {\n + \ \"enum\": [\n \"reasonUnspecified\",\n \"videoFavorited\",\n + \ \"videoLiked\",\n \"videoWatched\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The reason that + the resource is recommended to the user.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"seedResourceId\": {\n \"description\": + \"The seedResourceId object contains information about the resource that caused + the recommendation.\",\n \"$ref\": \"ResourceId\"\n }\n },\n + \ \"id\": \"ActivityContentDetailsRecommendation\",\n \"type\": \"object\"\n + \ },\n \"LiveChatSuperStickerDetails\": {\n \"id\": \"LiveChatSuperStickerDetails\",\n + \ \"properties\": {\n \"currency\": {\n \"description\": + \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n + \ },\n \"amountDisplayString\": {\n \"description\": + \"A rendered string that displays the fund amount and currency to the user.\",\n + \ \"type\": \"string\"\n },\n \"tier\": {\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The tier in which the amount belongs. Lower amounts belong to lower tiers. + The lowest tier is 1.\"\n },\n \"amountMicros\": {\n \"description\": + \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n + \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n + \ \"superStickerMetadata\": {\n \"description\": \"Information + about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"VideoLocalization\": + {\n \"description\": \"Localized versions of certain video properties + (e.g. title).\",\n \"type\": \"object\",\n \"properties\": {\n \"title\": + {\n \"description\": \"Localized version of the video's title.\",\n + \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"Localized version of the video's + description.\"\n }\n },\n \"id\": \"VideoLocalization\"\n + \ },\n \"LiveStreamSnippet\": {\n \"type\": \"object\",\n \"id\": + \"LiveStreamSnippet\",\n \"properties\": {\n \"publishedAt\": + {\n \"description\": \"The date and time that the stream was created.\",\n + \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n + \ \"description\": {\n \"type\": \"string\",\n \"description\": + \"The stream's description. The value cannot be longer than 10000 characters.\"\n + \ },\n \"isDefaultStream\": {\n \"type\": \"boolean\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"description\": \"The stream's title. The value must be between + 1 and 128 characters long.\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that is transmitting + the stream.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"I18nLanguageSnippet\": {\n \"description\": \"Basic details about + an i18n language, such as language code and human-readable name.\",\n \"properties\": + {\n \"name\": {\n \"description\": \"The human-readable name + of the language in the language itself.\",\n \"type\": \"string\"\n + \ },\n \"hl\": {\n \"description\": \"A short BCP-47 + code that uniquely identifies a language.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"I18nLanguageSnippet\"\n + \ },\n \"ChannelConversionPings\": {\n \"properties\": {\n \"pings\": + {\n \"description\": \"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.\",\n \"items\": {\n \"$ref\": + \"ChannelConversionPing\"\n },\n \"type\": \"array\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"ChannelConversionPings\",\n + \ \"description\": \"The conversionPings object encapsulates information + about conversion pings that need to be respected by the channel.\"\n },\n + \ \"Cuepoint\": {\n \"id\": \"Cuepoint\",\n \"type\": \"object\",\n + \ \"description\": \"Note that there may be a 5-second end-point resolution + issue. For instance, if a cuepoint comes in for 22:03:27, we may stuff the + cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact of HLS.\",\n + \ \"properties\": {\n \"cueType\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n + \ ]\n },\n \"walltimeMs\": {\n \"format\": + \"uint64\",\n \"description\": \"The wall clock time at which the + cuepoint should be inserted. Only one of insertion_offset_time_ms and walltime_ms + may be set at a time.\",\n \"type\": \"string\"\n },\n \"insertionOffsetTimeMs\": + {\n \"description\": \"The time when the cuepoint should be inserted + by offset to the broadcast actual start time.\",\n \"format\": \"int64\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\"\n },\n \"id\": {\n \"description\": \"The + identifier for cuepoint resource.\",\n \"type\": \"string\"\n },\n + \ \"durationSecs\": {\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"description\": \"The duration of this cuepoint.\"\n + \ }\n }\n },\n \"ActivityContentDetailsPromotedItem\": {\n + \ \"properties\": {\n \"forecastingUrl\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"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.\"\n },\n \"descriptionText\": + {\n \"type\": \"string\",\n \"description\": \"The text + description to accompany the promoted item.\"\n },\n \"clickTrackingUrl\": + {\n \"description\": \"The URL the client should ping to indicate + that the user clicked through on this promoted item.\",\n \"type\": + \"string\"\n },\n \"destinationUrl\": {\n \"description\": + \"The URL the client should direct the user to, if the user chooses to visit + the advertiser's website.\",\n \"type\": \"string\"\n },\n + \ \"creativeViewUrl\": {\n \"type\": \"string\",\n \"description\": + \"The URL the client should ping to indicate that the user was shown this + promoted item.\"\n },\n \"impressionUrl\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"The list of impression URLs. The client should ping all of these URLs to + indicate that the user was shown this promoted item.\",\n \"type\": + \"array\"\n },\n \"adTag\": {\n \"description\": \"The + URL the client should fetch to request a promoted item.\",\n \"type\": + \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the promoted video.\"\n },\n \"ctaType\": {\n \"description\": + \"The type of call-to-action, a message to the user indicating action that + can be taken.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n + \ ]\n },\n \"customCtaButtonText\": {\n \"type\": + \"string\",\n \"description\": \"The custom call-to-action button + text. If specified, it will override the default button text for the cta_type.\"\n + \ }\n },\n \"id\": \"ActivityContentDetailsPromotedItem\",\n + \ \"type\": \"object\",\n \"description\": \"Details about a resource + which is being promoted.\"\n },\n \"MembershipsDetails\": {\n \"type\": + \"object\",\n \"properties\": {\n \"membershipsDuration\": {\n + \ \"description\": \"Data about memberships duration without taking + into consideration pricing levels.\",\n \"$ref\": \"MembershipsDuration\"\n + \ },\n \"membershipsDurationAtLevels\": {\n \"description\": + \"Data about memberships duration on particular pricing levels.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n + \ }\n },\n \"highestAccessibleLevelDisplayName\": {\n + \ \"description\": \"Display name for the highest level that the user + has access to at the moment.\",\n \"type\": \"string\"\n },\n + \ \"accessibleLevels\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\",\n \"description\": + \"Ids of all levels that the user has access to. This includes the currently + active level and all other levels that are included because of a higher purchase.\"\n + \ },\n \"highestAccessibleLevel\": {\n \"description\": + \"Id of the highest level that the user has access to at the moment.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"MembershipsDetails\"\n + \ },\n \"ContentRating\": {\n \"properties\": {\n \"fcbmRating\": + {\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n + \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n + \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n + \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n + \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n + \ \"18PL\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from Malaysia's + Film Censorship Board.\"\n },\n \"bmukkRating\": {\n \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n \"bmukk6\",\n \ \"bmukk8\",\n \"bmukk10\",\n \"bmukk12\",\n \ \"bmukk14\",\n \"bmukk16\",\n \"bmukkUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"rcnofRating\": - {\n \"description\": \"The video's rating from the Hungarian Nemzeti - Filmiroda, the Rating Committee of the National Office of Film.\",\n \"type\": - \"string\",\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"oflcRating\": - {\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\"\n },\n \"ilfilmRating\": {\n \"description\": - \"The video's rating in Israel.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ]\n },\n - \ \"cncRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"description\": \"Rating - system in France - Commission de classification cinematographique\"\n },\n - \ \"anatelRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n - \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n - \ ],\n \"description\": \"The video's Anatel (Asociaci\xF3n - Nacional de Televisi\xF3n) rating for Chilean television.\",\n \"enum\": - [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"egfilmRating\": - {\n \"description\": \"The video's rating in Egypt.\",\n \"type\": - \"string\",\n \"enum\": [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n - \ \"egfilm18\",\n \"egfilmBn\",\n \"egfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ]\n - \ },\n \"cceRating\": {\n \"description\": \"The video's - rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n - \ \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ]\n },\n \"rtcRating\": {\n \"enum\": [\n - \ \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ],\n \"description\": \"The - video's General Directorate of Radio, Television and Cinematography (Mexico) - rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ]\n },\n \"mocRating\": {\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"tvpgRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - TV Parental Guidelines (TVPG) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ]\n },\n \"nbcRating\": + \ ],\n \"description\": \"The video's rating from the Austrian + Board of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst + und Kultur).\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Unrestricted\",\n \"6+\",\n + \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n + \ \"16+\",\n \"\"\n ]\n },\n \"mcstRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12+\",\n \"15+\",\n - \ \"18+\",\n \"18+R\",\n \"PU\",\n \"\"\n - \ ],\n \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ],\n \"description\": \"The - video's rating from the Maldives National Bureau of Classification.\"\n },\n - \ \"lsfRating\": {\n \"enum\": [\n \"lsfUnspecified\",\n - \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n - \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n - \ \"lsfUnrated\"\n ],\n \"description\": \"The - video's rating from Indonesia's Lembaga Sensor Film.\",\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"fpbRatingReasons\": {\n \"description\": \"Reasons - that explain why the video received its FPB (South Africa) rating.\",\n \"items\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ]\n },\n - \ \"type\": \"array\"\n },\n \"moctwRating\": {\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n - \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ]\n },\n \"smsaRating\": {\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"All ages\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"icaaRating\": {\n \"description\": \"The video's - Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - Spain) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ],\n - \ \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"nbcplRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The video's rating in Poland.\",\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"resorteviolenciaRating\": - {\n \"description\": \"The video's rating in Venezuela.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ]\n },\n \"agcomRating\": {\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\",\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ]\n },\n \"fmocRating\": - {\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n + \ \"P\",\n \"0\",\n \"C13\",\n \"C16\",\n + \ \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n \"\"\n + \ ],\n \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n + \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n + \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n + \ \"mcstUnrated\"\n ],\n \"description\": \"The + video's rating system for Vietnam - MCST\"\n },\n \"acbRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n + \ \"Programs that have been given a P classification by the Australian + Communications and Media Authority. These programs are intended for preschool + children.\",\n \"Programs that have been given a C classification + by the Australian Communications and Media Authority. These programs are intended + for children (other than preschool children) who are younger than 14 years + of age.\",\n \"G\",\n \"PG\",\n \"M\",\n + \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n + \ \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n + \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n + \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n + \ \"acbUnrated\"\n ],\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"russiaRating\": + {\n \"description\": \"The video's National Film Registry of the + Russian Federation (MKRF - Russia) rating.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"0+\",\n + \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n + \ \"\"\n ],\n \"enum\": [\n \"russiaUnspecified\",\n + \ \"russia0\",\n \"russia6\",\n \"russia12\",\n + \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n + \ ]\n },\n \"fmocRating\": {\n \"description\": + \"This property has been deprecated. Use the contentDetails.contentRating.cncRating + instead.\",\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ]\n },\n \"cnaRating\": - {\n \"description\": \"The video's rating from Romania's CONSILIUL - NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"enumDescriptions\": [\n - \ \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ]\n },\n - \ \"catvRating\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"enum\": - [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"C\",\n - \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n - \ \"18+\",\n \"\",\n \"\"\n ]\n },\n - \ \"fpbRating\": {\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X18\",\n - \ \"XX\",\n \"\",\n \"10\"\n ]\n - \ },\n \"fcbmRating\": {\n \"enum\": [\n \"fcbmUnspecified\",\n - \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n - \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n - \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\"\n },\n - \ \"mpaatRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"GB\",\n \"RB\"\n ],\n \"enum\": - [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n - \ ],\n \"description\": \"The rating system for trailer, - DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\"\n },\n \"chfilmRating\": {\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"\"\n + \ ]\n },\n \"eefilmRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n + \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n + \ \"K-16\",\n \"\"\n ],\n \"description\": + \"The video's rating in Estonia.\",\n \"enum\": [\n \"eefilmUnspecified\",\n + \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n + \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n + \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"bbfcRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"R18\",\n \"\"\n ],\n + \ \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n + \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n + \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n + \ \"bbfcUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's British Board of Film Classification + (BBFC) rating.\"\n },\n \"mibacRating\": {\n \"description\": + \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali + e del Turismo (Italy).\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n + \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n + \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n + \ \"mibacUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"mccaaRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"U\",\n \"PG\",\n \"12A\",\n + \ \"12\",\n \"14 - this rating was removed from the new + classification structure introduced in 2013.\",\n \"15\",\n \"16 + - this rating was removed from the new classification structure introduced + in 2013.\",\n \"18\",\n \"\"\n ],\n \"description\": + \"The video's rating from Malta's Film Age-Classification Board.\",\n \"type\": + \"string\",\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n + \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n + \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n + \ \"mccaa18\",\n \"mccaaUnrated\"\n ]\n },\n + \ \"smsaRating\": {\n \"description\": \"The video's rating + from Statens medier\xE5d (Sweden's National Media Council).\",\n \"type\": + \"string\",\n \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n + \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n + \ \"smsaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ]\n },\n \"nmcRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n + \ \"18+\",\n \"18TC\",\n \"\"\n ],\n + \ \"description\": \"The National Media Council ratings system for + United Arab Emirates.\",\n \"enum\": [\n \"nmcUnspecified\",\n + \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n + \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n + \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"cccRating\": {\n \"enum\": [\n + \ \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n + \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n + \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Todo + espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n + \ \"14+\",\n \"18+\",\n \"18+ - contenido + excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n + \ \"\"\n ],\n \"description\": \"The video's Consejo + de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\"\n },\n \"catvfrRating\": + {\n \"description\": \"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.\",\n + \ \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n + \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n + \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n + \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n + \ ]\n },\n \"icaaRating\": {\n \"enum\": [\n + \ \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n + \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n + \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n + \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n + \ \"\"\n ],\n \"description\": \"The video's Instituto + de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - Spain) rating.\"\n + \ },\n \"czfilmRating\": {\n \"description\": \"The + video's rating in the Czech Republic.\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n + \ \"18\",\n \"\"\n ],\n \"enum\": [\n + \ \"czfilmUnspecified\",\n \"czfilmU\",\n \"czfilm12\",\n + \ \"czfilm14\",\n \"czfilm18\",\n \"czfilmUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"kfcbRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n + \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"kfcbUnspecified\",\n + \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n + \ \"kfcbR\",\n \"kfcbUnrated\"\n ],\n \"description\": + \"The video's rating from the Kenya Film Classification Board.\"\n },\n + \ \"chfilmRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n \ ],\n \"enumDescriptions\": [\n \"\",\n \"0\",\n \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"ifcoRating\": {\n \"enum\": - [\n \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n + \ \"\"\n ]\n },\n \"cncRating\": {\n \"enum\": + [\n \"cncUnspecified\",\n \"cncT\",\n \"cnc10\",\n + \ \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n \"cncE\",\n + \ \"cncInterdiction\",\n \"cncUnrated\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n + \ \"18\",\n \"E\",\n \"interdiction\",\n \"\"\n + \ ],\n \"description\": \"Rating system in France - Commission + de classification cinematographique\"\n },\n \"bfvcRating\": + {\n \"description\": \"The video's rating from Thailand's Board of + Film and Video Censors.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"E\",\n \"13\",\n \"15\",\n + \ \"18\",\n \"20\",\n \"B\",\n \"\"\n + \ ],\n \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n + \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n + \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n + \ \"bfvcUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"cscfRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"AL\",\n \"A\",\n \"6\",\n + \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from Luxembourg's Commission de surveillance de la classification des films + (CSCF).\",\n \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n + \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n + \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"moctwRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"moctwUnspecified\",\n + \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n + \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n + \ \"moctwR15\"\n ],\n \"description\": \"The video's + rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n + \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n + \ ]\n },\n \"mdaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n + \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from Singapore's + Media Development Authority (MDA) and, specifically, it's Board of Film Censors + (BFC).\",\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n + \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n + \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"cbfcRating\": + {\n \"type\": \"string\",\n \"description\": \"The video's + Central Board of Film Certification (CBFC - India) rating.\",\n \"enum\": + [\n \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n + \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n + \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n + \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n + \ ]\n },\n \"nbcplRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The video's rating in Poland.\",\n \"type\": \"string\",\n \"enum\": + [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n + \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n + \ \"nbcplUnrated\"\n ]\n },\n \"agcomRating\": + {\n \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n + \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The video's + rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\"\n + \ },\n \"nfrcRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n + \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Bulgarian + National Film Center.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A\",\n \"B\",\n \"C\",\n \"D\",\n + \ \"X\",\n \"\"\n ]\n },\n \"lsfRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n + \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n + \ \"17\",\n \"D\",\n \"21\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from Indonesia's + Lembaga Sensor Film.\",\n \"enum\": [\n \"lsfUnspecified\",\n + \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n + \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n + \ \"lsfUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"tvpgRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's TV Parental Guidelines (TVPG) rating.\",\n \"enum\": + [\n \"tvpgUnspecified\",\n \"tvpgY\",\n \"tvpgY7\",\n + \ \"tvpgY7Fv\",\n \"tvpgG\",\n \"tvpgPg\",\n + \ \"pg14\",\n \"tvpgMa\",\n \"tvpgUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n + \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n + \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n + \ ]\n },\n \"ifcoRating\": {\n \"enum\": [\n + \ \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n \ \"ifcoUnrated\"\n ],\n \"description\": \"The @@ -3644,2018 +944,2454 @@ interactions: IFCO website for more information.\",\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"kfcbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n - \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n - \ \"kfcbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Kenya Film Classification - Board.\"\n },\n \"mpaaRating\": {\n \"enum\": [\n \"mpaaUnspecified\",\n + \ \"18\",\n \"\"\n ]\n },\n \"rtcRating\": + {\n \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n + \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n + \ \"rtcD\",\n \"rtcUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n + \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n + \ \"D\",\n \"\"\n ],\n \"description\": + \"The video's General Directorate of Radio, Television and Cinematography + (Mexico) rating.\"\n },\n \"cceRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\",\n \"14\"\n + \ ],\n \"description\": \"The video's rating from Portugal's + Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enum\": + [\n \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n + \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n + \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"type\": + \"string\"\n },\n \"nkclvRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n + \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n + \ \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n + \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n + \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The video's + rating from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\"\n + \ },\n \"mpaaRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mpaaUnspecified\",\n \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n - \ \"mpaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\"\n },\n - \ \"nfrcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"B\",\n \"C\",\n \"D\",\n - \ \"X\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Bulgarian National - Film Center.\",\n \"enum\": [\n \"nfrcUnspecified\",\n - \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n - \ \"nfrcX\",\n \"nfrcUnrated\"\n ]\n },\n - \ \"czfilmRating\": {\n \"description\": \"The video's rating - in the Czech Republic.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"12\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"czfilmUnspecified\",\n \"czfilmU\",\n \"czfilm12\",\n - \ \"czfilm14\",\n \"czfilm18\",\n \"czfilmUnrated\"\n - \ ]\n },\n \"fskRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"FSK 0\",\n - \ \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"enum\": - [\n \"fskUnspecified\",\n \"fsk0\",\n \"fsk6\",\n - \ \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n \"fskUnrated\"\n - \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle - der Filmwirtschaft (FSK - Germany) rating.\"\n },\n \"cccRating\": - {\n \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n - \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Todo espectador\",\n \"6+ - Inconveniente para menores - de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n \"18+ - - contenido excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ]\n },\n \"csaRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from France's - Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\",\n - \ \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ]\n },\n - \ \"cicfRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n - \ \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n - \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ]\n - \ },\n \"pefilmRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"PT\",\n - \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Peru.\",\n - \ \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n - \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n - \ \"pefilmUnrated\"\n ]\n },\n \"mibacRating\": - {\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"mpaaUnrated\"\n ],\n \"description\": \"The + video's Motion Picture Association of America (MPAA) rating.\"\n },\n + \ \"egfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"GN\",\n \"18\",\n \"BN\",\n \"\"\n + \ ],\n \"enum\": [\n \"egfilmUnspecified\",\n + \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n + \ \"egfilmUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating in Egypt.\"\n },\n + \ \"menaMpaaRating\": {\n \"description\": \"The rating system + for MENA countries, a clone of MPAA. It is needed to prevent titles go live + w/o additional QC check, since some of them can be inappropriate for the countries + at all. See b/33408548 for more details.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To + keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n + \ \"enum\": [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n + \ \"menaMpaaPg\",\n \"menaMpaaPg13\",\n \"menaMpaaR\",\n + \ \"menaMpaaUnrated\"\n ]\n },\n \"ilfilmRating\": + {\n \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n + \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n + \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating in Israel.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"AA\",\n + \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n + \ \"\"\n ]\n },\n \"djctqRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n + \ \"14\",\n \"16\",\n \"18\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\"\n },\n \"kijkwijzerRating\": {\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\",\n \"enum\": - [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"djctqUnspecified\",\n + \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n + \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n + \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n + \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n + \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n + \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n + \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n + \ \"djctq1618\",\n \"djctqUnrated\"\n ],\n \"description\": + \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o + e T\xEDtulos (DJCQT - Brazil) rating.\"\n },\n \"oflcRating\": + {\n \"description\": \"The video's Office of Film and Literature + Classification (OFLC - New Zealand) rating.\",\n \"enum\": [\n \"oflcUnspecified\",\n + \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n + \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n + \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n + \ \"oflcRp16\",\n \"oflcRp18\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n + \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n + \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n + \ ],\n \"type\": \"string\"\n },\n \"resorteviolenciaRating\": + {\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n + \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n + \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The video's rating in Venezuela.\"\n },\n \"ytRating\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"A rating that + YouTube uses to identify age-restricted content.\",\n \"enum\": [\n + \ \"ytUnspecified\",\n \"ytAgeRestricted\"\n ]\n + \ },\n \"fskRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK + 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n + \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle + der Filmwirtschaft (FSK - Germany) rating.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n + \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n + \ \"fskUnrated\"\n ]\n },\n \"rcnofRating\": + {\n \"description\": \"The video's rating from the Hungarian Nemzeti + Filmiroda, the Rating Committee of the National Office of Film.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"rcnofUnspecified\",\n + \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n + \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n + \ \"rcnofUnrated\"\n ]\n },\n \"eirinRating\": + {\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n + \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n + \ \"eirinUnrated\"\n ],\n \"description\": \"The + video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"incaaRating\": + {\n \"description\": \"The video's INCAA (Instituto Nacional de Cine + y Artes Audiovisuales - Argentina) rating.\",\n \"enum\": [\n \"incaaUnspecified\",\n + \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n + \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"ATP + (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 + a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n + \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X + (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"kijkwijzerRating\": {\n \"enum\": [\n \"kijkwijzerUnspecified\",\n + \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n + \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n + \ \"kijkwijzerUnrated\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ]\n },\n \"catvfrRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"enum\": - [\n \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n - \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n - \ \"catvfrUnrated\",\n \"catvfrE\"\n ]\n },\n - \ \"chvrsRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating + from the Nederlands Instituut voor de Classificatie van Audiovisuele Media + (Netherlands).\",\n \"type\": \"string\"\n },\n \"mpaatRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"GB\",\n \"RB\"\n ],\n \"enum\": + [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n + \ ],\n \"description\": \"The rating system for trailer, + DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n + \ },\n \"mekuRating\": {\n \"enum\": [\n \"mekuUnspecified\",\n + \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n + \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"S\",\n + \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual + Institute).\",\n \"type\": \"string\"\n },\n \"catvRating\": + {\n \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n + \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n + \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n + \ \"catvE\"\n ],\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"C\",\n + \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n + \ \"18+\",\n \"\",\n \"\"\n ]\n },\n + \ \"anatelRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for + Chilean television.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n + \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n + \ ],\n \"enum\": [\n \"anatelUnspecified\",\n + \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n + \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n + \ \"anatelA\",\n \"anatelUnrated\"\n ]\n },\n + \ \"fpbRating\": {\n \"enum\": [\n \"fpbUnspecified\",\n + \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n + \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n + \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n + \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"description\": + \"The video's rating from South Africa's Film and Publication Board.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n + \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n + \ \"\",\n \"10\"\n ],\n \"type\": \"string\"\n + \ },\n \"ecbmctRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n + \ \"ecbmct7a\",\n \"ecbmct7plus\",\n \"ecbmct13a\",\n + \ \"ecbmct13plus\",\n \"ecbmct15a\",\n \"ecbmct15plus\",\n + \ \"ecbmct18plus\",\n \"ecbmctUnrated\"\n ],\n + \ \"description\": \"Rating system in Turkey - Evaluation and Classification + Board of the Ministry of Culture and Tourism\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n + \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n + \ \"18+\",\n \"\"\n ]\n },\n \"chvrsRating\": + {\n \"description\": \"The video's Canadian Home Video Rating System + (CHVRS) rating.\",\n \"enumDescriptions\": [\n \"\",\n \ \"G\",\n \"PG\",\n \"14A\",\n \"18A\",\n - \ \"R\",\n \"E\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Canadian Home Video - Rating System (CHVRS) rating.\",\n \"enum\": [\n \"chvrsUnspecified\",\n - \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n - \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n - \ \"chvrsUnrated\"\n ]\n },\n \"nkclvRating\": - {\n \"description\": \"The video's rating from the Nacion\xE3lais - Kino centrs (National Film Centre of Latvia).\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ]\n },\n \"skfilmRating\": {\n \"enum\": - [\n \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n - \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ],\n \"description\": - \"The video's rating in Slovakia.\"\n },\n \"cscfRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Luxembourg's Commission - de surveillance de la classification des films (CSCF).\",\n \"type\": - \"string\",\n \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ]\n },\n \"kmrbRating\": {\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"grfilmRating\": - {\n \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n - \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n - \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n - \ \"grfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Greece.\"\n },\n \"nfvcbRating\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"18\",\n \"RE\",\n \"\"\n - \ ],\n \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ],\n \"description\": \"The - video's rating from Nigeria's National Film and Video Censors Board.\"\n },\n - \ \"medietilsynetRating\": {\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + \ \"R\",\n \"E\",\n \"\"\n ],\n \"enum\": + [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n + \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n + \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"mccypRating\": {\n \"description\": + \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) + Media Council for Children and Young People.\",\n \"enum\": [\n \"mccypUnspecified\",\n + \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n + \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"medietilsynetRating\": {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Medietilsynet, the Norwegian Media Authority.\"\n - \ },\n \"russiaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"description\": \"The video's National Film Registry of the Russian - Federation (MKRF - Russia) rating.\",\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"ytRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"ytUnspecified\",\n - \ \"ytAgeRestricted\"\n ],\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\"\n },\n + \"The video's rating from Medietilsynet, the Norwegian Media Authority.\",\n + \ \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n + \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n + \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n + \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n + \ \"type\": \"string\"\n },\n \"fcoRating\": {\n \"enum\": + [\n \"fcoUnspecified\",\n \"fcoI\",\n \"fcoIia\",\n + \ \"fcoIib\",\n \"fcoIi\",\n \"fcoIii\",\n + \ \"fcoUnrated\"\n ],\n \"description\": \"The + video's rating from Hong Kong's Office for Film, Newspaper and Article Administration.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"I\",\n + \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"smaisRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating in Iceland.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"L\",\n \"7\",\n \"12\",\n \"14\",\n + \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n + \ \"smais7\",\n \"smais12\",\n \"smais14\",\n + \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n + \ ]\n },\n \"grfilmRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n + \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + in Greece.\",\n \"type\": \"string\",\n \"enum\": [\n \"grfilmUnspecified\",\n + \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n + \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n + \ \"grfilmK18\",\n \"grfilmUnrated\"\n ]\n },\n \ \"djctqRatingReasons\": {\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Brazil - rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia - (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n - \ \"Conte\xFAdo sexual (Sexual content)\",\n \"Nudez - (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo Expl\xEDcito - (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n + \"string\",\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ]\n },\n \"description\": \"Reasons that explain - why the video received its DJCQT (Brazil) rating.\",\n \"type\": - \"array\"\n },\n \"nmcRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ],\n \"description\": \"The - National Media Council ratings system for United Arab Emirates.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ]\n },\n \"mekuRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Finland's - Kansallinen Audiovisuaalinen Instituutti (National Audiovisual Institute).\"\n - \ },\n \"djctqRating\": {\n \"description\": \"The video's - Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos - (DJCQT - Brazil) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n - \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n - \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n - \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n - \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n - \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n - \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n - \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"fcoRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"fcoUnspecified\",\n - \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n - \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"I\",\n - \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Hong Kong's Office for Film, Newspaper and Article Administration.\"\n - \ },\n \"mtrcbRating\": {\n \"description\": \"The video's - rating from the Movie and Television Review and Classification Board (Philippines).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ],\n \"enumDescriptions\": + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"Brazil rating content descriptors. See http://go/brazilratings + section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema + (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n + \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo + Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas + L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n + \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos + Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting + content)\"\n ]\n },\n \"type\": \"array\",\n + \ \"description\": \"Reasons that explain why the video received its + DJCQT (Brazil) rating.\"\n },\n \"pefilmRating\": {\n \"description\": + \"The video's rating in Peru.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n + \ \"18\",\n \"\"\n ],\n \"enum\": [\n + \ \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n + \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n + \ ]\n },\n \"mocRating\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's Ministerio de Cultura (Colombia) + rating.\",\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n + \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n + \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n + \ \"mocUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n + \ \"Banned\",\n \"\"\n ]\n },\n \"cicfRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n + \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n + \ \"description\": \"The video's rating from the Commission de Contr\xF4le + des Films (Belgium).\",\n \"enum\": [\n \"cicfUnspecified\",\n + \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n + \ \"cicfUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"mtrcbRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n + \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n + \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Movie + and Television Review and Classification Board (Philippines).\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ]\n },\n \"mcstRating\": {\n \"enum\": [\n - \ \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n - \ \"description\": \"The video's rating system for Vietnam - MCST\",\n - \ \"type\": \"string\"\n },\n \"rteRating\": {\n \"enum\": + \ ]\n },\n \"nfvcbRating\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from Nigeria's National Film + and Video Censors Board.\",\n \"enum\": [\n \"nfvcbUnspecified\",\n + \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n + \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n + \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n + \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n + \ \"\"\n ]\n },\n \"cnaRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's rating from Romania's + CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"enumDescriptions\": + [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"18+\",\n \"\"\n ],\n + \ \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n + \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n + \ \"cnaUnrated\"\n ]\n },\n \"nbcRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"12+\",\n \"15+\",\n + \ \"18+\",\n \"18+R\",\n \"PU\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from the Maldives + National Bureau of Classification.\",\n \"enum\": [\n \"nbcUnspecified\",\n + \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n + \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n + \ \"nbcPu\",\n \"nbcUnrated\"\n ]\n },\n + \ \"skfilmRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating in Slovakia.\",\n \"enum\": [\n \"skfilmUnspecified\",\n + \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n + \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n + \ \"P8\",\n \"\"\n ]\n },\n \"csaRating\": + {\n \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n + \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n + \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n + \ \"description\": \"The video's rating from France's Conseil sup\xE9rieur + de l\u2019audiovisuel, which rates broadcast content.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"Interdiction\",\n \"\"\n ]\n },\n + \ \"fpbRatingReasons\": {\n \"items\": {\n \"enum\": + [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n + \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n + \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n + \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n + \ \"fpbImitativeActsTechniques\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"South Africa rating content descriptors.\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"type\": \"array\",\n \"description\": + \"Reasons that explain why the video received its FPB (South Africa) rating.\"\n + \ },\n \"rteRating\": {\n \"description\": \"The video's + rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ]\n },\n \"bfvcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ],\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Thailand's - Board of Film and Video Censors.\"\n },\n \"ecbmctRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"description\": \"Rating system in Turkey - Evaluation - and Classification Board of the Ministry of Culture and Tourism\",\n \"type\": - \"string\"\n },\n \"eefilmRating\": {\n \"description\": - \"The video's rating in Estonia.\",\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"mccaaRating\": - {\n \"description\": \"The video's rating from Malta's Film Age-Classification - Board.\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ]\n },\n \"eirinRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n - \ \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ]\n },\n \"cbfcRating\": - {\n \"description\": \"The video's Central Board of Film Certification - (CBFC - India) rating.\",\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ]\n }\n },\n \"type\": \"object\",\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\"\n },\n \"ChannelSnippet\": {\n \"properties\": - {\n \"customUrl\": {\n \"type\": \"string\",\n \"description\": - \"The custom url of the channel.\"\n },\n \"thumbnails\": {\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n + \ \"MA\",\n \"\"\n ]\n },\n \"kmrbRating\": + {\n \"type\": \"string\",\n \"description\": \"The video's + Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) + rating. The KMRB rates videos in South Korea.\",\n \"enum\": [\n + \ \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n + \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n + \ \"kmrbUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 + \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n + \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n + \ \"\"\n ]\n }\n },\n \"type\": \"object\",\n + \ \"description\": \"Ratings schemes. The country-specific ratings are + mostly for movies and shows. LINT.IfChange\",\n \"id\": \"ContentRating\"\n + \ },\n \"ActivitySnippet\": {\n \"description\": \"Basic details + about an activity, including title, description, thumbnails, activity type + and group. Next ID: 12\",\n \"properties\": {\n \"description\": + {\n \"description\": \"The description of the resource primarily + associated with the activity. @mutable youtube.activities.insert\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"description\": \"The + title of the resource primarily associated with the activity.\",\n \"type\": + \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel title for the channel responsible for + this activity\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel associated with + the activity.\",\n \"type\": \"string\"\n },\n \"groupId\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n + \ },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the video was uploaded.\",\n + \ \"format\": \"date-time\"\n },\n \"type\": {\n \"type\": + \"string\",\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n + \ \"like\",\n \"favorite\",\n \"comment\",\n + \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n + \ \"bulletin\",\n \"social\",\n \"channelItem\",\n + \ \"promotedItem\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The type of activity that the resource + describes.\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \ \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the channel's default title and description.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The channel's title.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the channel was created.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The description of the channel.\",\n \"type\": - \"string\"\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Basic details about a channel, including - title, description and thumbnails.\",\n \"id\": \"ChannelSnippet\",\n - \ \"type\": \"object\"\n },\n \"I18nLanguageListResponse\": {\n - \ \"id\": \"I18nLanguageListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nLanguageListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of supported i18n languages. In this map, the i18n language ID is the - map key, and its value is the corresponding i18nLanguage resource.\",\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n },\n \"type\": - \"array\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoAgeGating\": {\n \"properties\": - {\n \"restricted\": {\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\",\n \"type\": - \"boolean\"\n },\n \"videoGameRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"Video game rating, if any.\",\n \"enum\": [\n \"anyone\",\n - \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n - \ ]\n },\n \"alcoholContent\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether or not the video - has alcoholic beverage content. Only users of legal purchasing age in a particular - country, as identified by ICAP, can view the content.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"VideoAgeGating\"\n },\n \"ChannelSettings\": - {\n \"id\": \"ChannelSettings\",\n \"description\": \"Branding properties - for the channel view.\",\n \"properties\": {\n \"unsubscribedTrailer\": - {\n \"description\": \"The trailer of the channel, for users that - are not subscribers.\",\n \"type\": \"string\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the channel description.\"\n },\n - \ \"defaultTab\": {\n \"type\": \"string\",\n \"description\": - \"Which content tab users should see when viewing the channel.\"\n },\n - \ \"showRelatedChannels\": {\n \"description\": \"Whether related - channels should be proposed.\",\n \"type\": \"boolean\"\n },\n - \ \"moderateComments\": {\n \"description\": \"Whether user-submitted - comments left on the channel page need to be approved by the channel owner - to be publicly visible.\",\n \"type\": \"boolean\"\n },\n - \ \"featuredChannelsUrls\": {\n \"description\": \"The list - of featured channels.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"keywords\": - {\n \"type\": \"string\",\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\"\n },\n \"profileColor\": - {\n \"description\": \"A prominent color that can be rendered on - this channel page.\",\n \"type\": \"string\"\n },\n \"country\": - {\n \"description\": \"The country of the channel.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"Specifies - the channel title.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"showBrowseView\": - {\n \"description\": \"Whether the tab to browse the videos should - be displayed.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": - \"object\"\n },\n \"LanguageTag\": {\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LanguageTag\"\n },\n \"CommentThreadReplies\": {\n \"type\": - \"object\",\n \"id\": \"CommentThreadReplies\",\n \"properties\": - {\n \"comments\": {\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"description\": \"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.\",\n \"type\": \"array\"\n }\n },\n \"description\": - \"Comments written in (direct or indirect) reply to the top level comment.\"\n - \ },\n \"MembershipsLevel\": {\n \"description\": \"A *membershipsLevel* - resource represents an offer made by YouTube creators for their fans. Users - can become members of the channel by joining one of the available levels. - They will provide recurring monetary support and receives special benefits.\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevel\"\n },\n \"id\": + 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.\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"ActivitySnippet\"\n },\n \"LiveChatBan\": + {\n \"description\": \"A `__liveChatBan__` resource represents a ban + for a YouTube live chat.\",\n \"properties\": {\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n + \ \"default\": \"youtube#liveChatBan\",\n \"type\": \"string\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube assigns to uniquely identify the ban.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": + \"The `snippet` object contains basic details about the ban.\"\n }\n + \ },\n \"id\": \"LiveChatBan\",\n \"type\": \"object\"\n },\n + \ \"LiveStreamStatus\": {\n \"type\": \"object\",\n \"description\": + \"Brief description of the live stream status.\",\n \"id\": \"LiveStreamStatus\",\n + \ \"properties\": {\n \"healthStatus\": {\n \"description\": + \"The health status of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n + \ },\n \"streamStatus\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"created\",\n \"ready\",\n \"active\",\n + \ \"inactive\",\n \"error\"\n ]\n }\n + \ }\n },\n \"VideoRating\": {\n \"properties\": {\n \"rating\": + {\n \"enumDescriptions\": [\n \"\",\n \"The + entity is liked.\",\n \"The entity is disliked.\"\n ],\n + \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n + \ ],\n \"description\": \"Rating of a video.\",\n \"type\": + \"string\"\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"VideoRating\",\n \"type\": + \"object\",\n \"description\": \"Basic details about rating of a video.\"\n + \ },\n \"ChannelSectionContentDetails\": {\n \"id\": \"ChannelSectionContentDetails\",\n + \ \"properties\": {\n \"playlists\": {\n \"items\": {\n + \ \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"The playlist ids for type single_playlist and + multiple_playlists. For singlePlaylist, only one playlistId is allowed.\"\n + \ },\n \"channels\": {\n \"description\": \"The channel + ids for type multiple_channels.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n }\n },\n + \ \"type\": \"object\",\n \"description\": \"Details about a channelsection, + including playlists and channels.\"\n },\n \"ThumbnailDetails\": {\n + \ \"properties\": {\n \"medium\": {\n \"description\": + \"The medium quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n + \ },\n \"standard\": {\n \"$ref\": \"Thumbnail\",\n + \ \"description\": \"The standard quality image for this resource.\"\n + \ },\n \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": + \"The default image for this resource.\"\n },\n \"maxres\": + {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The maximum + resolution quality image for this resource.\"\n },\n \"high\": + {\n \"description\": \"The high quality image for this resource.\",\n + \ \"$ref\": \"Thumbnail\"\n }\n },\n \"description\": + \"Internal representation of thumbnails for a YouTube resource.\",\n \"id\": + \"ThumbnailDetails\",\n \"type\": \"object\"\n },\n \"ChannelContentDetails\": + {\n \"properties\": {\n \"relatedPlaylists\": {\n \"properties\": + {\n \"likes\": {\n \"description\": \"The ID of the + playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert + and playlistItems.delete to add or remove items from that list.\",\n \"type\": + \"string\"\n },\n \"watchHistory\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the playlist that + contains the channel\\\"s watch history. Use the playlistItems.insert and + playlistItems.delete to add or remove items from that list.\"\n },\n + \ \"watchLater\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the playlist that contains the channel\\\"s watch later playlist. + Use the playlistItems.insert and playlistItems.delete to add or remove items + from that list.\"\n },\n \"uploads\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the playlist that + contains the channel\\\"s uploaded videos. Use the videos.insert method to + upload new videos and the videos.delete method to delete previously uploaded + videos.\"\n },\n \"favorites\": {\n \"description\": + \"The ID of the playlist that contains the channel\\\"s favorite videos. Use + the playlistItems.insert and playlistItems.delete to add or remove items from + that list.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n }\n },\n \"id\": \"ChannelContentDetails\",\n + \ \"description\": \"Details about the content of a channel.\",\n \"type\": + \"object\"\n },\n \"LevelDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"displayName\": {\n \"description\": + \"The name that should be used when referring to this level.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"LevelDetails\"\n },\n + \ \"ActivityContentDetailsBulletin\": {\n \"properties\": {\n \"resourceId\": + {\n \"description\": \"The resourceId object contains information + that identifies the resource associated with a bulletin post. @mutable youtube.activities.insert\",\n + \ \"$ref\": \"ResourceId\"\n }\n },\n \"description\": + \"Details about a channel bulletin post.\",\n \"id\": \"ActivityContentDetailsBulletin\",\n + \ \"type\": \"object\"\n },\n \"ResourceId\": {\n \"id\": \"ResourceId\",\n + \ \"description\": \"A resource id is a generic reference that points + to another YouTube resource.\",\n \"type\": \"object\",\n \"properties\": + {\n \"playlistId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the referred resource, if that resource is a playlist. + This property is only present if the resourceId.kind value is youtube#playlist.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"The type of the API resource.\"\n + \ },\n \"videoId\": {\n \"description\": \"The ID that + YouTube uses to uniquely identify the referred resource, if that resource + is a video. This property is only present if the resourceId.kind value is + youtube#video.\",\n \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the memberships level.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"MembershipsLevelSnippet\",\n + YouTube uses to uniquely identify the referred resource, if that resource + is a channel. This property is only present if the resourceId.kind value is + youtube#channel.\"\n }\n }\n },\n \"Caption\": {\n \"id\": + \"Caption\",\n \"description\": \"A *caption* resource represents a YouTube + caption track. A caption track is associated with exactly one YouTube video.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"id\": {\n \"description\": \"The + ID that YouTube uses to uniquely identify the caption track.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.update\"\n + \ ]\n },\n \"type\": \"string\"\n },\n + \ \"snippet\": {\n \"$ref\": \"CaptionSnippet\",\n \"description\": + \"The snippet object contains basic details about the caption.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n \"default\": + \"youtube#caption\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"Video\": {\n \"properties\": {\n \"liveStreamingDetails\": + {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": + \"The liveStreamingDetails object contains metadata about a live video broadcast. + The object will only be present in a video resource if the video is an upcoming, + live, or completed live broadcast.\"\n },\n \"status\": {\n + \ \"description\": \"The status object contains information about + the video's uploading, processing, and privacy statuses.\",\n \"$ref\": + \"VideoStatus\"\n },\n \"suggestions\": {\n \"description\": + \"The suggestions object encapsulates suggestions that identify opportunities + to improve the video quality or the metadata for the uploaded video. This + data can only be retrieved by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n + \ },\n \"monetizationDetails\": {\n \"description\": + \"The monetizationDetails object encapsulates information about the monetization + status of the video.\",\n \"$ref\": \"VideoMonetizationDetails\"\n + \ },\n \"processingDetails\": {\n \"$ref\": \"VideoProcessingDetails\",\n + \ \"description\": \"The processingDetails object encapsulates information + about YouTube's progress in processing the uploaded video file. The properties + in the object identify the current processing status and an estimate of the + time remaining until YouTube finishes processing the video. This part also + indicates whether different types of data or content, such as file details + or thumbnail images, are available for the video. The processingProgress object + is designed to be polled so that the video uploaded can track the progress + that YouTube has made in processing the uploaded video file. This data can + only be retrieved by the video owner.\"\n },\n \"id\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.videos.update\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + uses to uniquely identify the video.\",\n \"type\": \"string\"\n + \ },\n \"contentDetails\": {\n \"$ref\": \"VideoContentDetails\",\n + \ \"description\": \"The contentDetails object contains information + about the video content, including the length of the video and its aspect + ratio.\"\n },\n \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n \ \"description\": \"The snippet object contains basic details about - the level.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"MembershipsLevel\"\n },\n \"I18nLanguageSnippet\": {\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\",\n \"id\": \"I18nLanguageSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"name\": {\n \"description\": \"The - human-readable name of the language in the language itself.\",\n \"type\": - \"string\"\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"A short BCP-47 code that uniquely identifies - a language.\"\n }\n }\n },\n \"InvideoBranding\": {\n \"description\": - \"LINT.IfChange Describes an invideo branding.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"imageBytes\": {\n \"type\": \"string\",\n - \ \"description\": \"The bytes the uploaded image. Only used in api - to youtube communication.\",\n \"format\": \"byte\"\n },\n - \ \"position\": {\n \"description\": \"The spatial position - within the video where the branding watermark will be displayed.\",\n \"$ref\": - \"InvideoPosition\"\n },\n \"targetChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The channel to which this branding - links. If not present it defaults to the current channel.\"\n },\n - \ \"timing\": {\n \"$ref\": \"InvideoTiming\",\n \"description\": - \"The temporal position within the video where watermark will be displayed.\"\n - \ },\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The url of the uploaded image. Only used in apiary to api communication.\"\n - \ }\n },\n \"id\": \"InvideoBranding\"\n },\n \"RelatedEntity\": - {\n \"id\": \"RelatedEntity\",\n \"type\": \"object\",\n \"properties\": - {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n }\n - \ },\n \"ChannelBannerResource\": {\n \"properties\": {\n \"url\": - {\n \"description\": \"The URL of this banner image.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A channel banner returned as - the response to a channel_banner.insert call.\",\n \"id\": \"ChannelBannerResource\",\n - \ \"type\": \"object\"\n },\n \"ActivityListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#activityListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n + the video, such as its title, description, and category.\"\n },\n \"topicDetails\": + {\n \"$ref\": \"VideoTopicDetails\",\n \"description\": + \"The topicDetails object encapsulates information about Freebase topics associated + with the video.\"\n },\n \"fileDetails\": {\n \"$ref\": + \"VideoFileDetails\",\n \"description\": \"The fileDetails object + encapsulates information about the video file that was uploaded to YouTube, + including the file's resolution, duration, audio and video codecs, stream + bitrates, and more. This data can only be retrieved by the video owner.\"\n + \ },\n \"localizations\": {\n \"additionalProperties\": + {\n \"$ref\": \"VideoLocalization\"\n },\n \"type\": + \"object\",\n \"description\": \"The localizations object contains + localized versions of the basic details about the video, such as its title + and description.\"\n },\n \"recordingDetails\": {\n \"$ref\": + \"VideoRecordingDetails\",\n \"description\": \"The recordingDetails + object encapsulates information about the location, date and address where + the video was recorded.\"\n },\n \"statistics\": {\n \"$ref\": + \"VideoStatistics\",\n \"description\": \"The statistics object contains + statistics about the video.\"\n },\n \"player\": {\n \"description\": + \"The player object contains information that you would use to play the video + in an embedded player.\",\n \"$ref\": \"VideoPlayer\"\n },\n + \ \"projectDetails\": {\n \"description\": \"The projectDetails + object contains information about the project specific video metadata. b/157517979: + This part was never populated after it was added. However, it sees non-zero + traffic because there is generated client code in the wild that refers to + it [1]. We keep this field and do NOT remove it because otherwise V3 would + return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"$ref\": \"VideoProjectDetails\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n + \ \"default\": \"youtube#video\"\n },\n \"etag\": {\n + \ \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n + \ \"description\": \"Age restriction details related to a video. This + data can only be retrieved by the video owner.\"\n }\n },\n \"id\": + \"Video\",\n \"type\": \"object\",\n \"description\": \"A *video* + resource represents a YouTube video.\"\n },\n \"ActivityContentDetailsSubscription\": + {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the resource that the user subscribed to.\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Information + about a channel that a user subscribed to.\",\n \"id\": \"ActivityContentDetailsSubscription\"\n + \ },\n \"VideoFileDetailsAudioStream\": {\n \"description\": \"Information + about an audio stream.\",\n \"type\": \"object\",\n \"id\": \"VideoFileDetailsAudioStream\",\n + \ \"properties\": {\n \"vendor\": {\n \"type\": \"string\",\n + \ \"description\": \"A value that uniquely identifies a video vendor. + Typically, the value is a four-letter vendor code.\"\n },\n \"channelCount\": + {\n \"description\": \"The number of audio channels that the stream + contains.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n + \ },\n \"bitrateBps\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"The audio stream's bitrate, in bits + per second.\"\n },\n \"codec\": {\n \"type\": \"string\",\n + \ \"description\": \"The audio codec that the stream uses.\"\n }\n + \ }\n },\n \"SearchListResponse\": {\n \"properties\": {\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"items\": {\n \"description\": \"Pagination + information for token pagination.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"SearchResult\"\n }\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n \"default\": + \"youtube#searchListResponse\",\n \"type\": \"string\"\n },\n \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"items\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Activity\"\n }\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n }\n },\n \"id\": \"ActivityListResponse\"\n - \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"banType\": - {\n \"type\": \"string\",\n \"description\": \"The type - of ban.\",\n \"enum\": [\n \"permanent\",\n \"temporary\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"The details of the - user that was banned.\"\n },\n \"banDurationSeconds\": {\n \"format\": - \"uint64\",\n \"description\": \"The duration of the ban. This property - is only present if the banType is temporary.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelToStoreLinkDetails\": {\n \"properties\": - {\n \"storeUrl\": {\n \"type\": \"string\",\n \"description\": - \"Landing page of the store.\"\n },\n \"storeName\": {\n \"description\": - \"Name of the store.\",\n \"type\": \"string\"\n },\n \"merchantId\": - {\n \"format\": \"uint64\",\n \"description\": \"Google - Merchant Center id of the store.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Information - specific to a store on a merchandising platform linked to a YouTube channel.\",\n - \ \"id\": \"ChannelToStoreLinkDetails\"\n },\n \"VideoLiveStreamingDetails\": - {\n \"id\": \"VideoLiveStreamingDetails\",\n \"type\": \"object\",\n - \ \"description\": \"Details about the live streaming metadata.\",\n \"properties\": - {\n \"actualStartTime\": {\n \"description\": \"The time that - the broadcast actually started. This value will not be available until the - broadcast begins.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"actualEndTime\": {\n \"type\": - \"string\",\n \"description\": \"The time that the broadcast actually - ended. This value will not be available until the broadcast is over.\",\n - \ \"format\": \"date-time\"\n },\n \"activeLiveChatId\": - {\n \"description\": \"The ID of the currently active live chat attached - to this video. This field is filled only if the video is a currently live - broadcast that has live chat. Once the broadcast transitions to complete this - field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\",\n \"type\": \"string\"\n - \ },\n \"concurrentViewers\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of viewers currently watching the - broadcast. The property and its value will be present if the broadcast has - current viewers and the broadcast owner has not hidden the viewcount for the - video. Note that YouTube stops tracking the number of concurrent viewers for - a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - time that the broadcast is scheduled to begin.\",\n \"type\": \"string\"\n - \ },\n \"scheduledEndTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast is scheduled to end. - If the value is empty or the property is not present, then the broadcast is - scheduled to contiue indefinitely.\",\n \"format\": \"date-time\"\n - \ }\n }\n },\n \"ActivityContentDetails\": {\n \"properties\": - {\n \"social\": {\n \"description\": \"The social object contains - details about a social network post. This property is only present if the - snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"favorite\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsFavorite\"\n },\n \"channelItem\": {\n - \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n },\n \"recommendation\": {\n \"$ref\": - \"ActivityContentDetailsRecommendation\",\n \"description\": \"The - recommendation object contains information about a recommended resource. This - property is only present if the snippet.type is recommendation.\"\n },\n - \ \"promotedItem\": {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\"\n },\n \"upload\": {\n \"$ref\": - \"ActivityContentDetailsUpload\",\n \"description\": \"The upload - object contains information about the uploaded video. This property is only - present if the snippet.type is upload.\"\n },\n \"subscription\": - {\n \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"like\": {\n \"$ref\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"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.\"\n },\n \"comment\": {\n \"description\": - \"The comment object contains information about a resource that received a - comment. This property is only present if the snippet.type is comment.\",\n - \ \"$ref\": \"ActivityContentDetailsComment\"\n },\n \"playlistItem\": - {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"The playlistItem object contains information about a new playlist item. - This property is only present if the snippet.type is playlistItem.\"\n }\n - \ },\n \"description\": \"Details about the content of an activity: - the video that was shared, the channel that was subscribed to, etc.\",\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetails\"\n },\n \"ChannelListResponse\": - {\n \"type\": \"object\",\n \"id\": \"ChannelListResponse\",\n \"properties\": - {\n \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelListResponse\"\n + the previous page in the result set.\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"regionCode\": {\n \"type\": \"string\"\n \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n \ \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Channel\"\n }\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"id\": \"SearchListResponse\",\n + \ \"type\": \"object\"\n },\n \"LiveChatBanSnippet\": {\n \"id\": + \"LiveChatBanSnippet\",\n \"type\": \"object\",\n \"properties\": + {\n \"banDurationSeconds\": {\n \"description\": \"The duration + of a ban, only filled if the ban has type TEMPORARY.\",\n \"format\": + \"uint64\",\n \"type\": \"string\"\n },\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"type\": + {\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n + \ \"temporary\"\n ],\n \"description\": \"The + type of ban.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n + \ \"A temporary ban.\"\n ]\n },\n \"liveChatId\": + {\n \"description\": \"The chat this ban is pertinent to.\",\n \"type\": + \"string\"\n }\n }\n },\n \"MembershipsLevelListResponse\": + {\n \"properties\": {\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"default\": \"youtube#membershipsLevelListResponse\",\n \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n }\n }\n },\n \"IngestionInfo\": {\n \"type\": - \"object\",\n \"description\": \"Describes information necessary for - ingesting an RTMP, HTTP, or SRT stream.\",\n \"properties\": {\n \"rtmpsBackupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of backupIngestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"backupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The backup - ingestion URL that you should use to stream video to YouTube. You have the - option of simultaneously streaming the content that you are sending to the - ingestionAddress to this URL.\"\n },\n \"ingestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The primary - ingestion URL that you should use to stream video to YouTube. You must stream - video to this URL. Depending on which application or tool you use to encode - your video stream, you may need to enter the stream URL and stream name separately - or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \"\n },\n \"streamName\": {\n \"type\": \"string\",\n - \ \"description\": \"The stream name that YouTube assigns to the video - stream.\"\n },\n \"rtmpsIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of ingestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"IngestionInfo\"\n },\n \"VideoCategory\": - {\n \"type\": \"object\",\n \"description\": \"A *videoCategory* - resource identifies a category that has been or could be associated with uploaded - videos.\",\n \"id\": \"VideoCategory\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video category.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#videoCategory\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the video category, including its title.\",\n - \ \"$ref\": \"VideoCategorySnippet\"\n }\n }\n },\n - \ \"CommentThreadSnippet\": {\n \"id\": \"CommentThreadSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a comment thread.\",\n \"properties\": {\n \"isPublic\": {\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\",\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"totalReplyCount\": {\n \"description\": - \"The total number of replies (not including the top level comment).\",\n + this response.\"\n },\n \"items\": {\n \"type\": \"array\",\n + \ \"description\": \"A list of pricing levels offered by a creator + to the fans.\",\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n + \ }\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"MembershipsLevelListResponse\"\n },\n \"VideoFileDetailsVideoStream\": + {\n \"type\": \"object\",\n \"properties\": {\n \"heightPixels\": + {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The encoded video content's height in pixels.\"\n },\n \"vendor\": + {\n \"type\": \"string\",\n \"description\": \"A value that + uniquely identifies a video vendor. Typically, the value is a four-letter + vendor code.\"\n },\n \"aspectRatio\": {\n \"type\": + \"number\",\n \"format\": \"double\",\n \"description\": + \"The video content's display aspect ratio, which specifies the aspect ratio + in which the video should be displayed.\"\n },\n \"widthPixels\": + {\n \"description\": \"The encoded video content's width in pixels. + You can calculate the video's encoding aspect ratio as width_pixels / height_pixels.\",\n \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"canReply\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"topLevelComment\": {\n \"description\": \"The - top level comment of this thread.\",\n \"$ref\": \"Comment\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\"\n }\n }\n },\n \"ThirdPartyLinkStatus\": - {\n \"id\": \"ThirdPartyLinkStatus\",\n \"properties\": {\n \"linkStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"The third-party - link status object contains information about the status of the link.\"\n - \ },\n \"CdnSettings\": {\n \"id\": \"CdnSettings\",\n \"properties\": - {\n \"format\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The format of the - video stream that you are sending to Youtube. \",\n \"type\": \"string\"\n - \ },\n \"frameRate\": {\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"description\": - \"The frame rate of the inbound video data.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"ingestionType\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"rtmp\",\n \"dash\",\n \"webrtc\",\n \"hls\"\n - \ ],\n \"description\": \" The method or protocol used to - transmit the video stream.\",\n \"type\": \"string\",\n \"annotations\": + \ \"rotation\": {\n \"enum\": [\n \"none\",\n \"clockwise\",\n + \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The amount that YouTube needs to + rotate the original source content to properly display the video.\"\n },\n + \ \"codec\": {\n \"description\": \"The video codec that the + stream uses.\",\n \"type\": \"string\"\n },\n \"frameRateFps\": + {\n \"format\": \"double\",\n \"type\": \"number\",\n \"description\": + \"The video stream's frame rate, in frames per second.\"\n },\n \"bitrateBps\": + {\n \"description\": \"The video stream's bitrate, in bits per second.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"VideoFileDetailsVideoStream\",\n \"description\": + \"Information about a video stream.\"\n },\n \"VideoProcessingDetailsProcessingProgress\": + {\n \"description\": \"Video processing progress and completion time + estimate.\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n + \ \"properties\": {\n \"partsTotal\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"An + estimate of the total number of parts that need to be processed for the video. + The number may be updated with more precise estimates while YouTube processes + the video.\"\n },\n \"timeLeftMs\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"An + estimate of the amount of time, in millseconds, that YouTube needs to finish + processing the video.\"\n },\n \"partsProcessed\": {\n \"type\": + \"string\",\n \"description\": \"The number of parts of the video + that YouTube has already processed. You can estimate the percentage of the + video that YouTube has already processed by calculating: 100 * parts_processed + / parts_total Note that since the estimated number of parts could increase + without a corresponding increase in the number of parts that have already + been processed, it is possible that the calculated progress could periodically + decrease while YouTube processes a video.\",\n \"format\": \"uint64\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"SuperChatEventListResponse\": + {\n \"properties\": {\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n + \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"SuperChatEvent\"\n },\n + \ \"description\": \"A list of Super Chat purchases that match the + request criteria.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ }\n },\n \"id\": \"SuperChatEventListResponse\",\n \"type\": + \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": {\n \"properties\": + {\n \"blocked\": {\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"A list of region codes that identify countries where the video is blocked. + If this property is present and a country is not listed in its value, then + the video is viewable in that country. If this property is present and contains + an empty list, the video is viewable in all countries.\"\n },\n \"allowed\": + {\n \"description\": \"A list of region codes that identify countries + where the video is viewable. If this property is present and a country is + not listed in its value, then the video is blocked from appearing in that + country. If this property is present and contains an empty list, the video + is blocked in all countries.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n }\n },\n + \ \"id\": \"VideoContentDetailsRegionRestriction\",\n \"type\": \"object\",\n + \ \"description\": \"DEPRECATED Region restriction of the video.\"\n },\n + \ \"VideoListResponse\": {\n \"id\": \"VideoListResponse\",\n \"properties\": + {\n \"eventId\": {\n \"description\": \"Serialized EventId + of the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n + \ \"default\": \"youtube#videoListResponse\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Video\"\n }\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n }\n },\n \"type\": \"object\"\n },\n \"MembershipsLevel\": + {\n \"id\": \"MembershipsLevel\",\n \"properties\": {\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"snippet\": {\n \"$ref\": \"MembershipsLevelSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the level.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the memberships level.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#membershipsLevel\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"A + *membershipsLevel* resource represents an offer made by YouTube creators for + their fans. Users can become members of the channel by joining one of the + available levels. They will provide recurring monetary support and receives + special benefits.\"\n },\n \"ActivityContentDetailsSocial\": {\n \"description\": + \"Details about a social network post.\",\n \"properties\": {\n \"author\": + {\n \"description\": \"The author of the social network post.\",\n + \ \"type\": \"string\"\n },\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object encapsulates + information that identifies the resource associated with a social network + post.\"\n },\n \"imageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"An image of the post's author.\"\n },\n + \ \"referenceUrl\": {\n \"type\": \"string\",\n \"description\": + \"The URL of the social network post.\"\n },\n \"type\": {\n + \ \"type\": \"string\",\n \"description\": \"The name of + the social network.\",\n \"enum\": [\n \"unspecified\",\n + \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n }\n },\n \"type\": + \"object\",\n \"id\": \"ActivityContentDetailsSocial\"\n },\n \"WatchSettings\": + {\n \"properties\": {\n \"backgroundColor\": {\n \"description\": + \"The text color for the video watch page's branded area.\",\n \"type\": + \"string\"\n },\n \"featuredPlaylistId\": {\n \"description\": + \"An ID that uniquely identifies a playlist that displays next to the video + player.\",\n \"type\": \"string\"\n },\n \"textColor\": + {\n \"type\": \"string\",\n \"description\": \"The background + color for the video watch page's branded area.\"\n }\n },\n \"description\": + \"Branding properties for the watch. All deprecated.\",\n \"type\": \"object\",\n + \ \"id\": \"WatchSettings\"\n },\n \"MonitorStreamInfo\": {\n \"id\": + \"MonitorStreamInfo\",\n \"description\": \"Settings and Info of the + monitor stream\",\n \"type\": \"object\",\n \"properties\": {\n + \ \"broadcastStreamDelayMs\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"If you have set the enableMonitorStream property + to true, then this property determines the length of the live broadcast delay.\",\n + \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n + \ \"embedHtml\": {\n \"description\": \"HTML code that embeds + a player that plays the monitor stream.\",\n \"type\": \"string\"\n + \ },\n \"enableMonitorStream\": {\n \"type\": \"boolean\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"This value determines + whether the monitor stream is enabled for the broadcast. If the monitor stream + is enabled, then YouTube will broadcast the event content on a special stream + intended only for the broadcaster's consumption. The broadcaster can use the + stream to review the event content and also to identify the optimal times + to insert cuepoints. You need to set this value to true if you intend to have + a broadcast delay for your event. *Note:* This property cannot be updated + once the broadcast is in the testing or live state.\"\n }\n }\n + \ },\n \"VideoGetRatingResponse\": {\n \"type\": \"object\",\n \"properties\": + {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"VideoRating\"\n },\n \"description\": \"A list of ratings + that match the request criteria.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#videoGetRatingResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"VideoGetRatingResponse\"\n + \ },\n \"VideoAbuseReportReasonListResponse\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"visitorId\": {\n \"description\": + \"The `visitorId` identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": + \"youtube#videoAbuseReportReasonListResponse\",\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"VideoAbuseReportReason\"\n },\n \"description\": + \"A list of valid abuse reasons that are used with `video.ReportAbuse`.\"\n + \ }\n },\n \"id\": \"VideoAbuseReportReasonListResponse\"\n + \ },\n \"VideoSnippet\": {\n \"description\": \"Basic details about + a video, including title, description, uploader, thumbnails and category.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"description\": + {\n \"description\": \"The video's description. @mutable youtube.videos.insert + youtube.videos.update\",\n \"type\": \"string\"\n },\n \"categoryId\": + {\n \"description\": \"The YouTube video category associated with + the video.\",\n \"type\": \"string\"\n },\n \"localized\": + {\n \"$ref\": \"VideoLocalization\",\n \"description\": + \"Localized snippet selected with the hl parameter. If no such localization + exists, this field is populated with the default snippet. (Read-only)\"\n + \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + video. 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.\"\n + \ },\n \"title\": {\n \"description\": \"The video's + title. @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the video was uploaded.\",\n + \ \"format\": \"date-time\"\n },\n \"channelId\": {\n + \ \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel that the video was uploaded + to.\"\n },\n \"defaultLanguage\": {\n \"type\": \"string\",\n + \ \"description\": \"The language of the videos's default snippet.\"\n + \ },\n \"channelTitle\": {\n \"description\": \"Channel + title for the channel that the video belongs to.\",\n \"type\": \"string\"\n + \ },\n \"liveBroadcastContent\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been completed.\"\n + \ ],\n \"description\": \"Indicates if the video is an upcoming/active + live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active + live broadcast.\"\n },\n \"defaultAudioLanguage\": {\n \"type\": + \"string\",\n \"description\": \"The default_audio_language property + specifies the language spoken in the video's default audio track.\"\n },\n + \ \"tags\": {\n \"description\": \"A list of keyword tags associated + with the video. Tags may contain spaces.\",\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n }\n + \ },\n \"id\": \"VideoSnippet\"\n },\n \"CdnSettings\": {\n + \ \"type\": \"object\",\n \"description\": \"Brief description of + the live stream cdn settings.\",\n \"id\": \"CdnSettings\",\n \"properties\": + {\n \"format\": {\n \"type\": \"string\",\n \"description\": + \"The format of the video stream that you are sending to Youtube. \",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"ingestionInfo\": {\n \"description\": \"The - ingestionInfo object contains information that YouTube provides that you need - to transmit your RTMP or HTTP stream to YouTube.\",\n \"$ref\": \"IngestionInfo\"\n - \ },\n \"resolution\": {\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Brief - description of the live stream cdn settings.\"\n },\n \"LiveBroadcastStatus\": - {\n \"properties\": {\n \"recordingStatus\": {\n \"enum\": - [\n \"liveBroadcastRecordingStatusUnspecified\",\n \"notRecording\",\n - \ \"recording\",\n \"recorded\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"description\": - \"The broadcast's recording status.\"\n },\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"lifeCycleStatus\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"No - value or the value is unknown.\",\n \"Incomplete settings, but - otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ]\n - \ },\n \"liveBroadcastPriority\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Low priority - broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ],\n \"description\": \"Priority of the live broadcast - event (internal state).\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ]\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the broadcast is made for kids or not, decided by YouTube instead of the creator. - This field is read only.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveBroadcastStatus\",\n \"description\": \"Live broadcast - state.\"\n },\n \"LiveBroadcastSnippet\": {\n \"description\": - \"Basic broadcast information.\",\n \"id\": \"LiveBroadcastSnippet\",\n - \ \"properties\": {\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the broadcast was added to YouTube's live broadcast schedule.\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that is publishing the - broadcast.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\"\n - \ },\n \"isDefaultBroadcast\": {\n \"description\": - \"Indicates whether this broadcast is the default broadcast. Internal only.\",\n - \ \"type\": \"boolean\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the broadcast. For each nested object in this object, the - key is the name of the thumbnail image, and the value is an object that contains - other information about the thumbnail.\"\n },\n \"scheduledStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"scheduledEndTime\": {\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the broadcast is scheduled to end.\"\n },\n - \ \"actualStartTime\": {\n \"description\": \"The date and - time that the broadcast actually started. This information is only available - once the broadcast's state is live.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"actualEndTime\": {\n - \ \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"liveChatId\": {\n \"description\": \"The id of the live - chat for this broadcast.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageDeletedDetails\"\n },\n \"MembershipsDetails\": {\n - \ \"properties\": {\n \"membershipsDurationAtLevels\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ },\n \"description\": \"Data about memberships duration - on particular pricing levels.\"\n },\n \"highestAccessibleLevel\": - {\n \"description\": \"Id of the highest level that the user has - access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"accessibleLevels\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Ids of all levels that - the user has access to. This includes the currently active level and all other - levels that are included because of a higher purchase.\",\n \"type\": - \"array\"\n },\n \"highestAccessibleLevelDisplayName\": {\n - \ \"description\": \"Display name for the highest level that the user - has access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"membershipsDuration\": {\n \"description\": \"Data about - memberships duration without taking into consideration pricing levels.\",\n - \ \"$ref\": \"MembershipsDuration\"\n }\n },\n \"id\": - \"MembershipsDetails\",\n \"type\": \"object\"\n },\n \"SuperStickerMetadata\": - {\n \"type\": \"object\",\n \"id\": \"SuperStickerMetadata\",\n - \ \"properties\": {\n \"altText\": {\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\",\n \"type\": \"string\"\n },\n \"altTextLanguage\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the alt text is returned.\"\n },\n - \ \"stickerId\": {\n \"description\": \"Unique identifier of - the Super Sticker. This is a shorter form of the alt_text that includes pack - name and a recognizable characteristic of the sticker.\",\n \"type\": - \"string\"\n }\n }\n },\n \"MemberListResponse\": {\n \"type\": - \"object\",\n \"id\": \"MemberListResponse\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Member\"\n },\n \"description\": - \"A list of members that match the request criteria.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#memberListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#memberListResponse\\\".\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n }\n },\n \"CaptionSnippet\": - {\n \"properties\": {\n \"isCC\": {\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\",\n \"type\": \"boolean\"\n - \ },\n \"isLarge\": {\n \"description\": \"Indicates - whether the caption track uses large text for the vision-impaired. The default - value is false.\",\n \"type\": \"boolean\"\n },\n \"status\": - {\n \"description\": \"The caption track's status.\",\n \"enumDescriptions\": + \ },\n \"frameRate\": {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ],\n \"type\": \"string\"\n },\n - \ \"failureReason\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The reason that YouTube failed to process the - caption track. This property is only present if the state property's value - is failed.\",\n \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ]\n },\n \"language\": + \ \"enum\": [\n \"30fps\",\n \"60fps\",\n \"variable\"\n + \ ],\n \"description\": \"The frame rate of the inbound video + data.\"\n },\n \"ingestionInfo\": {\n \"description\": + \"The ingestionInfo object contains information that YouTube provides that + you need to transmit your RTMP or HTTP stream to YouTube.\",\n \"$ref\": + \"IngestionInfo\"\n },\n \"ingestionType\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"enum\": [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n + \ \"hls\"\n ],\n \"type\": \"string\",\n \"description\": + \" The method or protocol used to transmit the video stream.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"resolution\": {\n \"description\": + \"The resolution of the inbound video data.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"240p\",\n \"360p\",\n + \ \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\",\n + \ \"2160p\",\n \"variable\"\n ],\n \"type\": + \"string\"\n }\n }\n },\n \"TestItemTestItemSnippet\": {\n + \ \"id\": \"TestItemTestItemSnippet\",\n \"properties\": {},\n \"type\": + \"object\"\n },\n \"LiveChatTextMessageDetails\": {\n \"type\": + \"object\",\n \"id\": \"LiveChatTextMessageDetails\",\n \"properties\": + {\n \"messageText\": {\n \"description\": \"The user's message.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"ThirdPartyLinkSnippet\": + {\n \"type\": \"object\",\n \"description\": \"Basic information + about a third party account link, including its type and type-specific information.\",\n + \ \"properties\": {\n \"type\": {\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or about to + connect) a channel with a store on a merchandising platform in order to enable + retail commerce capabilities for that channel on YouTube.\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"Type of the + link named after the entities that are being linked.\",\n \"enum\": + [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ]\n },\n \"channelToStoreLink\": {\n \"$ref\": + \"ChannelToStoreLinkDetails\",\n \"description\": \"Information specific + to a link between a channel and a store on a merchandising platform.\"\n }\n + \ },\n \"id\": \"ThirdPartyLinkSnippet\"\n },\n \"SuperChatEventSnippet\": + {\n \"properties\": {\n \"commentText\": {\n \"type\": + \"string\",\n \"description\": \"The text contents of the comment + left by the user.\"\n },\n \"amountMicros\": {\n \"description\": + \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented + as 1000000.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n + \ },\n \"currency\": {\n \"description\": \"The currency + in which the purchase was made. ISO 4217.\",\n \"type\": \"string\"\n + \ },\n \"displayString\": {\n \"type\": \"string\",\n + \ \"description\": \"A rendered string that displays the purchase + amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the + given language.\"\n },\n \"messageType\": {\n \"description\": + \"The tier for the paid message, which is based on the amount of money spent + to purchase the message.\",\n \"format\": \"uint32\",\n \"type\": + \"integer\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel id where the event occurred.\"\n },\n + \ \"supporterDetails\": {\n \"description\": \"Details about + the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n + \ \"isSuperStickerEvent\": {\n \"description\": \"True if this + event is a Super Sticker event.\",\n \"type\": \"boolean\"\n },\n + \ \"createdAt\": {\n \"type\": \"string\",\n \"format\": + \"date-time\",\n \"description\": \"The date and time when the event + occurred.\"\n },\n \"superStickerMetadata\": {\n \"$ref\": + \"SuperStickerMetadata\",\n \"description\": \"If this event is a + Super Sticker event, this field will contain metadata about the Super Sticker.\"\n + \ }\n },\n \"id\": \"SuperChatEventSnippet\",\n \"type\": + \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"type\": + \"object\",\n \"properties\": {\n \"userComment\": {\n \"type\": + \"string\",\n \"description\": \"The comment added by the member + to this Member Milestone Chat. This field is empty for messages without a + comment from the member.\"\n },\n \"memberLevelName\": {\n \"description\": + \"The name of the Level at which the viever is a member. The Level names are + defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\",\n \"type\": \"string\"\n },\n + \ \"memberMonth\": {\n \"description\": \"The total amount + of months (rounded up) the viewer has been a member that granted them this + Member Milestone Chat. This is the same number of months as is being displayed + to YouTube users.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n }\n },\n \"id\": \"LiveChatMemberMilestoneChatDetails\"\n + \ },\n \"AccessPolicy\": {\n \"type\": \"object\",\n \"id\": + \"AccessPolicy\",\n \"properties\": {\n \"allowed\": {\n \"description\": + \"The value of allowed indicates whether the access to the policy is allowed + or denied by default.\",\n \"type\": \"boolean\"\n },\n \"exception\": + {\n \"description\": \"A list of region codes that identify countries + where the default policy do not apply.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n }\n },\n + \ \"description\": \"Rights management policy for YouTube resources.\"\n + \ },\n \"VideoAbuseReport\": {\n \"properties\": {\n \"language\": + {\n \"description\": \"The language that the content was viewed in.\",\n + \ \"type\": \"string\"\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": + \"string\"\n },\n \"reasonId\": {\n \"type\": \"string\",\n + \ \"description\": \"The high-level, or primary, reason that the content + is abusive. The value is an abuse report reason ID.\"\n },\n \"comments\": + {\n \"description\": \"Additional comments regarding the abuse report.\",\n + \ \"type\": \"string\"\n },\n \"secondaryReasonId\": + {\n \"type\": \"string\",\n \"description\": \"The specific, + or secondary, reason that this content is abusive (if available). The value + is an abuse report reason ID that is a valid secondary reason for the primary + reason.\"\n }\n },\n \"id\": \"VideoAbuseReport\",\n \"type\": + \"object\"\n },\n \"CaptionSnippet\": {\n \"description\": \"Basic + details about a caption track, such as its language and name.\",\n \"properties\": + {\n \"isDraft\": {\n \"type\": \"boolean\",\n \"description\": + \"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. @mutable youtube.captions.insert + youtube.captions.update\"\n },\n \"audioTrackType\": {\n \"description\": + \"The type of audio track associated with the caption track.\",\n \"type\": + \"string\",\n \"enum\": [\n \"unknown\",\n \"primary\",\n + \ \"commentary\",\n \"descriptive\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"isAutoSynced\": {\n \"type\": + \"boolean\",\n \"description\": \"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.\"\n },\n + \ \"failureReason\": {\n \"type\": \"string\",\n \"enum\": + [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n + \ ],\n \"description\": \"The reason that YouTube failed + to process the caption track. This property is only present if the state property's + value is failed.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"language\": {\n \"description\": \"The language of the caption track. The property value is a BCP-47 language tag.\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"name\": {\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n + \ \"type\": \"string\"\n },\n \"name\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"description\": \"The name of the + caption track. The name is intended to be visible to the user as an option + during playback.\",\n \"type\": \"string\"\n },\n \"isLarge\": + {\n \"type\": \"boolean\",\n \"description\": \"Indicates + whether the caption track uses large text for the vision-impaired. The default + value is false.\"\n },\n \"isCC\": {\n \"description\": + \"Indicates whether the track contains closed captions for the deaf and hard + of hearing. The default value is false.\",\n \"type\": \"boolean\"\n + \ },\n \"lastUpdated\": {\n \"format\": \"date-time\",\n + \ \"type\": \"string\",\n \"description\": \"The date and + time when the caption track was last updated.\"\n },\n \"isEasyReader\": + {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n + \ },\n \"trackKind\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"description\": \"The caption track's type.\",\n \"enum\": + [\n \"standard\",\n \"ASR\",\n \"forced\"\n + \ ]\n },\n \"videoId\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n \ ]\n },\n \"description\": \"The ID that YouTube uses to uniquely identify the video associated with the caption track. @mutable - youtube.captions.insert\"\n },\n \"lastUpdated\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the caption - track was last updated.\",\n \"format\": \"date-time\"\n },\n - \ \"isEasyReader\": {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"trackKind\": {\n \"enum\": [\n - \ \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + youtube.captions.insert\",\n \"type\": \"string\"\n },\n \"status\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\"\n ],\n \"description\": \"The caption track's - type.\",\n \"type\": \"string\"\n },\n \"isDraft\": - {\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\",\n - \ \"type\": \"boolean\"\n },\n \"isAutoSynced\": {\n - \ \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"audioTrackType\": {\n \"description\": \"The - type of audio track associated with the caption track.\",\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"CaptionSnippet\",\n \"description\": \"Basic - details about a caption track, such as its language and name.\"\n },\n - \ \"VideoFileDetailsVideoStream\": {\n \"type\": \"object\",\n \"properties\": - {\n \"heightPixels\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The encoded video content's height - in pixels.\"\n },\n \"codec\": {\n \"type\": \"string\",\n - \ \"description\": \"The video codec that the stream uses.\"\n },\n - \ \"aspectRatio\": {\n \"type\": \"number\",\n \"format\": - \"double\",\n \"description\": \"The video content's display aspect - ratio, which specifies the aspect ratio in which the video should be displayed.\"\n - \ },\n \"rotation\": {\n \"description\": \"The amount - that YouTube needs to rotate the original source content to properly display - the video.\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"widthPixels\": {\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"frameRateFps\": - {\n \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"The video stream's frame rate, in frames per second.\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n },\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"description\": \"The video stream's bitrate, in bits - per second.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Information about a video stream.\",\n \"id\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"LiveStreamSnippet\": {\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The stream's - description. The value cannot be longer than 10000 characters.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The stream's title. The value must be between 1 and 128 characters long.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the stream was created.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"channelId\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is transmitting the stream.\",\n \"type\": \"string\"\n - \ },\n \"isDefaultStream\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveStreamSnippet\"\n - \ },\n \"PlaylistSnippet\": {\n \"properties\": {\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the playlist's default title and description.\"\n },\n \"tags\": - {\n \"description\": \"Keyword tags associated with the playlist.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"description\": {\n \"description\": - \"The playlist's description.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the playlist - was created.\"\n },\n \"channelTitle\": {\n \"description\": - \"The channel title of the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist. 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.\"\n },\n \"title\": {\n \"description\": - \"The playlist's title.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlists.insert\",\n \"youtube.playlists.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"thumbnailVideoId\": {\n \"description\": \"Note: if the - playlist has a custom thumbnail, this field will not be populated. The video - id selected by the user that will be used as the thumbnail of this playlist. - This field defaults to the first publicly viewable video in the playlist, - if: 1. The user has never selected a video to be the thumbnail of the playlist. - 2. The user selects a video to be the thumbnail, and then removes that video - from the playlist. 3. The user selects a non-owned video to be the thumbnail, - but that video becomes private, or gets deleted.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the playlist.\"\n },\n \"localized\": {\n \"$ref\": - \"PlaylistLocalization\",\n \"description\": \"Localized title and - description, read-only.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistSnippet\",\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails.\"\n },\n - \ \"VideoProjectDetails\": {\n \"description\": \"DEPRECATED. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"type\": \"object\",\n \"id\": \"VideoProjectDetails\",\n \"properties\": - {}\n },\n \"ChannelSectionTargeting\": {\n \"description\": \"ChannelSection - targeting setting.\",\n \"type\": \"object\",\n \"id\": \"ChannelSectionTargeting\",\n - \ \"properties\": {\n \"regions\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"description\": - \"The region the channel section is targeting.\",\n \"type\": \"array\"\n - \ },\n \"countries\": {\n \"description\": \"The country - the channel section is targeting.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"languages\": - {\n \"description\": \"The language the channel section is targeting.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n }\n },\n \"AccessPolicy\": - {\n \"type\": \"object\",\n \"id\": \"AccessPolicy\",\n \"properties\": - {\n \"allowed\": {\n \"description\": \"The value of allowed - indicates whether the access to the policy is allowed or denied by default.\",\n - \ \"type\": \"boolean\"\n },\n \"exception\": {\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"description\": - \"Rights management policy for YouTube resources.\"\n },\n \"TestItem\": - {\n \"type\": \"object\",\n \"id\": \"TestItem\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n },\n \"gaia\": - {\n \"type\": \"string\",\n \"format\": \"int64\"\n },\n - \ \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ }\n }\n },\n \"ActivityContentDetailsPromotedItem\": {\n - \ \"properties\": {\n \"descriptionText\": {\n \"description\": - \"The text description to accompany the promoted item.\",\n \"type\": - \"string\"\n },\n \"destinationUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should direct - the user to, if the user chooses to visit the advertiser's website.\"\n },\n - \ \"customCtaButtonText\": {\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\",\n \"type\": \"string\"\n },\n \"ctaType\": - {\n \"enum\": [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"description\": \"The type of call-to-action, a message - to the user indicating action that can be taken.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify the promoted video.\",\n \"type\": - \"string\"\n },\n \"forecastingUrl\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"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.\"\n },\n \"creativeViewUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user was shown this promoted item.\",\n \"type\": \"string\"\n - \ },\n \"clickTrackingUrl\": {\n \"description\": \"The - URL the client should ping to indicate that the user clicked through on this - promoted item.\",\n \"type\": \"string\"\n },\n \"adTag\": - {\n \"description\": \"The URL the client should fetch to request - a promoted item.\",\n \"type\": \"string\"\n },\n \"impressionUrl\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The list of impression - URLs. The client should ping all of these URLs to indicate that the user was - shown this promoted item.\"\n }\n },\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"type\": \"object\",\n \"description\": \"Details about a resource - which is being promoted.\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viewer is a member. This matches the - `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated - membership gifting message. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n - \ },\n \"gifterChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the user that made the membership gifting - purchase. This matches the `snippet.authorChannelId` of the associated membership - gifting message.\"\n }\n },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"type\": \"object\"\n },\n \"ResourceId\": {\n \"type\": - \"object\",\n \"description\": \"A resource id is a generic reference - that points to another YouTube resource.\",\n \"id\": \"ResourceId\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"The type of the API resource.\"\n },\n - \ \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the referred resource, if that resource is a video. This - property is only present if the resourceId.kind value is youtube#video.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsSocial\": - {\n \"id\": \"ActivityContentDetailsSocial\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object encapsulates information that identifies the resource associated with - a social network post.\",\n \"$ref\": \"ResourceId\"\n },\n - \ \"type\": {\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"description\": \"The name of the social network.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"author\": {\n \"type\": \"string\",\n \"description\": - \"The author of the social network post.\"\n },\n \"imageUrl\": - {\n \"type\": \"string\",\n \"description\": \"An image - of the post's author.\"\n },\n \"referenceUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL of the social network post.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Details - about a social network post.\"\n },\n \"Cuepoint\": {\n \"id\": - \"Cuepoint\",\n \"properties\": {\n \"insertionOffsetTimeMs\": - {\n \"format\": \"int64\",\n \"type\": \"string\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\"\n },\n \"cueType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ]\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The identifier for cuepoint resource.\"\n - \ },\n \"walltimeMs\": {\n \"type\": \"string\",\n \"description\": - \"The wall clock time at which the cuepoint should be inserted. Only one of - insertion_offset_time_ms and walltime_ms may be set at a time.\",\n \"format\": - \"uint64\"\n },\n \"durationSecs\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The duration - of this cuepoint.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n }\n },\n \"description\": \"Note that there - may be a 5-second end-point resolution issue. For instance, if a cuepoint - comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, - depending. This is an artifact of HLS.\",\n \"type\": \"object\"\n },\n - \ \"CommentSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"canRate\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the current viewer can rate this comment.\"\n },\n \"viewerRating\": - {\n \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the comment was originally published.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comment refers to, if any.\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"authorChannelId\": {\n - \ \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"textDisplay\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"likeCount\": {\n \"description\": - \"The total number of likes this comment has received.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"moderationStatus\": - {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"type\": \"string\"\n },\n \"authorDisplayName\": - {\n \"description\": \"The name of the user who posted the comment.\",\n - \ \"type\": \"string\"\n },\n \"updatedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the comment was last updated.\"\n },\n \"textOriginal\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"parentId\": {\n \"description\": - \"The unique id of the parent comment, only set for replies.\",\n \"type\": - \"string\"\n },\n \"authorProfileImageUrl\": {\n \"description\": - \"The URL for the avatar of the user who posted the comment.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"CommentSnippet\",\n \"description\": - \"Basic details about a comment, such as its author and text.\"\n },\n - \ \"InvideoTiming\": {\n \"description\": \"Describes a temporal position - of a visual widget inside a video.\",\n \"id\": \"InvideoTiming\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"offsetMs\": - {\n \"description\": \"Defines the time at which the promotion will - appear. Depending on the value of type the value of the offsetMs field will - represent a time offset from the start or from the end of the video, expressed - in milliseconds.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"durationMs\": {\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"Describes a timing type. If the - value is offsetFromStart, then the offsetMs field represents an offset from - the start of the video. If the value is offsetFromEnd, then the offsetMs field - represents an offset from the end of the video.\"\n }\n }\n },\n - \ \"SubscriptionSubscriberSnippet\": {\n \"type\": \"object\",\n \"id\": - \"SubscriptionSubscriberSnippet\",\n \"properties\": {\n \"thumbnails\": - {\n \"description\": \"Thumbnails for this subscriber.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelId\": {\n \"description\": - \"The channel ID of the subscriber.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the subscriber.\"\n },\n \"description\": {\n - \ \"description\": \"The description of the subscriber.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - a subscription's subscriber including title, description, channel ID and thumbnails.\"\n - \ },\n \"CaptionListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Caption\"\n },\n \"description\": - \"A list of captions that match the request criteria.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"CaptionListResponse\"\n },\n - \ \"Member\": {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n \"default\": - \"youtube#member\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the member.\",\n \"$ref\": \"MemberSnippet\"\n }\n },\n - \ \"description\": \"A *member* resource represents a member for a YouTube - channel. A member provides recurring monetary support to a creator and receives - special benefits.\",\n \"id\": \"Member\",\n \"type\": \"object\"\n - \ },\n \"ChannelAuditDetails\": {\n \"properties\": {\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": + status.\",\n \"enum\": [\n \"serving\",\n \"syncing\",\n + \ \"failed\"\n ],\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"CaptionSnippet\"\n + \ },\n \"ChannelSettings\": {\n \"description\": \"Branding properties + for the channel view.\",\n \"type\": \"object\",\n \"properties\": + {\n \"featuredChannelsUrls\": {\n \"description\": \"The list + of featured channels.\",\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"featuredChannelsTitle\": + {\n \"type\": \"string\",\n \"description\": \"Title for + the featured channels tab.\"\n },\n \"unsubscribedTrailer\": + {\n \"type\": \"string\",\n \"description\": \"The trailer + of the channel, for users that are not subscribers.\"\n },\n \"keywords\": + {\n \"description\": \"Lists keywords associated with the channel, + comma-separated.\",\n \"type\": \"string\"\n },\n \"showRelatedChannels\": {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any unresolved claims.\"\n },\n \"communityGuidelinesGoodStanding\": + related channels should be proposed.\"\n },\n \"moderateComments\": {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel respects the community guidelines.\"\n }\n },\n - \ \"description\": \"The auditDetails object encapsulates channel data - that is relevant for YouTube Partners during the audit process.\",\n \"id\": - \"ChannelAuditDetails\",\n \"type\": \"object\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"properties\": {\n \"severity\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"description\": \"How severe this issue is to the - stream.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The long-form description of the - issue and how to resolve it.\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"description\": \"The kind of error happening.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n - \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n - \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n - \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n - \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n - \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ]\n },\n \"reason\": {\n \"type\": \"string\",\n - \ \"description\": \"The short-form reason for this issue.\"\n }\n - \ },\n \"id\": \"LiveStreamConfigurationIssue\",\n \"type\": - \"object\"\n },\n \"MemberSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"memberDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - member.\"\n },\n \"creatorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the channel that's offering - memberships.\"\n },\n \"membershipsDetails\": {\n \"$ref\": - \"MembershipsDetails\",\n \"description\": \"Details about the user's - membership.\"\n }\n },\n \"id\": \"MemberSnippet\"\n },\n - \ \"LiveBroadcastContentDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"enableContentEncryption\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\"\n },\n \"closedCaptionsType\": - {\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"enableDvr\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - determines whether viewers can access DVR controls while watching the video. - DVR controls enable the viewer to control the video playback experience by - pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\"\n },\n \"latencyPreference\": - {\n \"type\": \"string\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"description\": \"If both this and - enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\"\n },\n \"stereoLayout\": - {\n \"description\": \"The 3D stereo layout of this broadcast. This - defaults to mono.\",\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + user-submitted comments left on the channel page need to be approved by the + channel owner to be publicly visible.\"\n },\n \"profileColor\": + {\n \"type\": \"string\",\n \"description\": \"A prominent + color that can be rendered on this channel page.\"\n },\n \"defaultTab\": + {\n \"type\": \"string\",\n \"description\": \"Which content + tab users should see when viewing the channel.\"\n },\n \"description\": + {\n \"description\": \"Specifies the channel description.\",\n \"type\": + \"string\"\n },\n \"country\": {\n \"description\": + \"The country of the channel.\",\n \"type\": \"string\"\n },\n + \ \"defaultLanguage\": {\n \"type\": \"string\"\n },\n + \ \"trackingAnalyticsAccountId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID for a Google Analytics account to track + and measure traffic to the channels.\"\n },\n \"showBrowseView\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the tab to browse the videos should be displayed.\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"Specifies + the channel title.\"\n }\n },\n \"id\": \"ChannelSettings\"\n + \ },\n \"ChannelTopicDetails\": {\n \"properties\": {\n \"topicCategories\": + {\n \"type\": \"array\",\n \"description\": \"A list of + Wikipedia URLs that describe the channel's content.\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"topicIds\": + {\n \"type\": \"array\",\n \"description\": \"A list of + Freebase topic IDs associated with the channel. You can retrieve information + about each topic using the Freebase Topic API.\",\n \"items\": {\n + \ \"type\": \"string\"\n }\n }\n },\n \"description\": + \"Freebase topic information related to the channel.\",\n \"id\": \"ChannelTopicDetails\",\n + \ \"type\": \"object\"\n },\n \"VideoTopicDetails\": {\n \"id\": + \"VideoTopicDetails\",\n \"description\": \"Freebase topic information + related to the video.\",\n \"properties\": {\n \"topicCategories\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"A list of Wikipedia URLs that provide a high-level + description of the video's content.\",\n \"type\": \"array\"\n },\n + \ \"topicIds\": {\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"description\": \"A list of Freebase topic IDs that + are centrally associated with the video. These are topics that are centrally + featured in the video, and it can be said that the video is mainly about each + of these. You can retrieve information about each topic using the \\u003c + a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase Topic + API.\",\n \"type\": \"array\"\n },\n \"relevantTopicIds\": + {\n \"description\": \"Similar to topic_id, except that these topics + are merely relevant to the video. These are topics that may be mentioned in, + or appear in the video. You can retrieve information about each topic using + Freebase Topic API.\",\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"type\": \"array\"\n }\n },\n \"type\": + \"object\"\n },\n \"InvideoPosition\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"type\": {\n \"enum\": [\n \"corner\"\n + \ ],\n \"enumDescriptions\": [\n \"\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"Defines the + position type.\"\n },\n \"cornerPosition\": {\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n },\n \"enableAutoStop\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether auto stop is enabled - for this broadcast. The default value for this property is false. This setting - can only be used by Events.\"\n },\n \"recordFromStart\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\"\n },\n \"startWithSlate\": - {\n \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n },\n \"boundStreamId\": {\n \"type\": - \"string\",\n \"description\": \"This value uniquely identifies the - live stream bound to the broadcast.\"\n },\n \"projection\": - {\n \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"type\": - \"string\",\n \"description\": \"The projection format of this broadcast. - This defaults to rectangular.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"enableAutoStart\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether auto start is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\"\n },\n \"enableLowLatency\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether this broadcast - has low latency enabled.\"\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"mesh\": {\n \"description\": - \"The mesh for projecting the video if projection is mesh. The mesh value - must be a UTF-8 string containing the base-64 encoding of 3D mesh data that - follows the Spherical Video V2 RFC specification for an mshp box, excluding - the box size and type but including the following four reserved zero bytes - for the version and flags.\",\n \"format\": \"byte\",\n \"type\": - \"string\"\n },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"monitorStream\": {\n - \ \"$ref\": \"MonitorStreamInfo\",\n \"description\": \"The - monitorStream object contains information about the monitor stream, which - the broadcaster can use to review the event content before the broadcast stream - is shown publicly.\"\n }\n },\n \"description\": \"Detailed - settings of a broadcast.\",\n \"id\": \"LiveBroadcastContentDetails\"\n - \ },\n \"PlaylistItem\": {\n \"description\": \"A *playlistItem* - resource identifies another resource, such as a video, that is included in - a playlist. In addition, the playlistItem resource contains details about - the included resource that pertain specifically to how that resource is used - in that playlist. YouTube uses playlists to identify special collections of - videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods. For example, if - a user gives a positive rating to a video, you would insert that video into - the liked videos playlist for that user's channel.\",\n \"properties\": - {\n \"status\": {\n \"description\": \"The status object contains - information about the playlist item's privacy status.\",\n \"$ref\": - \"PlaylistItemStatus\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n + \ ],\n \"description\": \"Describes in which corner of the + video the visual widget will appear.\",\n \"enum\": [\n \"topLeft\",\n + \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n + \ ],\n \"type\": \"string\"\n }\n },\n \"id\": + \"InvideoPosition\",\n \"description\": \"Describes the spatial position + of a visual widget inside a video. It is a union of various position types, + out of which only will be set one.\"\n },\n \"ChannelSectionLocalization\": + {\n \"id\": \"ChannelSectionLocalization\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"title\": {\n \"description\": + \"The localized strings for channel section's title.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"ChannelSection localization + setting\"\n },\n \"ChannelProfileDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"displayName\": {\n \"type\": \"string\",\n + \ \"description\": \"The channel's display name.\"\n },\n \"profileImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The channels's + avatar URL.\"\n },\n \"channelUrl\": {\n \"description\": + \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"description\": \"The YouTube channel ID.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"ChannelProfileDetails\"\n + \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n + \ \"properties\": {\n \"banDurationSeconds\": {\n \"format\": + \"uint64\",\n \"description\": \"The duration of the ban. This property + is only present if the banType is temporary.\",\n \"type\": \"string\"\n + \ },\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n + \ \"description\": \"The details of the user that was banned.\"\n + \ },\n \"banType\": {\n \"enum\": [\n \"permanent\",\n + \ \"temporary\"\n ],\n \"description\": \"The + type of ban.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ]\n }\n },\n + \ \"type\": \"object\"\n },\n \"CommentListResponse\": {\n \"id\": + \"CommentListResponse\",\n \"properties\": {\n \"pageInfo\": {\n + \ \"$ref\": \"PageInfo\",\n \"description\": \"General pagination + information.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n + \ \"default\": \"youtube#commentListResponse\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"Comment\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of comments that match the request criteria.\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#playlistItem\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object is included in the resource if the included item is - a YouTube video. The object contains additional information about the video.\",\n - \ \"$ref\": \"PlaylistItemContentDetails\"\n }\n },\n - \ \"id\": \"PlaylistItem\",\n \"type\": \"object\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageRetractedDetails\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"Activity\": {\n \"id\": - \"Activity\",\n \"type\": \"object\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the activity.\",\n \"type\": \"string\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ActivityContentDetails\",\n \"description\": - \"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.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n \"default\": - \"youtube#activity\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the activity, including the activity's type and group ID.\",\n \"$ref\": - \"ActivitySnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"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.\"\n },\n \"LocalizedString\": {\n - \ \"properties\": {\n \"language\": {\n \"type\": \"string\"\n - \ },\n \"value\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LocalizedString\"\n - \ },\n \"Subscription\": {\n \"type\": \"object\",\n \"id\": - \"Subscription\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#subscription\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\"\n - \ },\n \"subscriberSnippet\": {\n \"description\": \"The - subscriberSnippet object contains basic details about the subscriber.\",\n - \ \"$ref\": \"SubscriptionSubscriberSnippet\"\n },\n \"id\": + \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"SearchResultSnippet\": {\n \"properties\": {\n \"liveBroadcastContent\": + {\n \"enumDescriptions\": [\n \"\",\n \"The + live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n + \ \"The live broadcast has been completed.\"\n ],\n \"type\": + \"string\",\n \"description\": \"It indicates if the resource (video + or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" + if there is not any upcoming/active live broadcasts.\",\n \"enum\": + [\n \"none\",\n \"upcoming\",\n \"live\",\n + \ \"completed\"\n ]\n },\n \"title\": {\n + \ \"description\": \"The title of the search result.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"description\": + \"The value that YouTube uses to uniquely identify the channel that published + the resource that the search result identifies.\",\n \"type\": \"string\"\n + \ },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"format\": \"date-time\",\n \"description\": \"The creation + date and time of the resource that the search result identifies.\"\n },\n + \ \"thumbnails\": {\n \"description\": \"A map of thumbnail + images associated with the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"channelTitle\": {\n \"description\": \"The + title of the channel that published the resource that the search result identifies.\",\n + \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"A description of the search result.\"\n + \ }\n },\n \"id\": \"SearchResultSnippet\",\n \"description\": + \"Basic details about a search result, including title, description and thumbnails + of the item referenced by the search result.\",\n \"type\": \"object\"\n + \ },\n \"VideoAbuseReportReasonSnippet\": {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n + \ \"type\": \"object\",\n \"description\": \"Basic details about + a video category, such as its localized title.\",\n \"properties\": {\n + \ \"secondaryReasons\": {\n \"items\": {\n \"$ref\": + \"VideoAbuseReportSecondaryReason\"\n },\n \"description\": + \"The secondary reasons associated with this reason, if any are available. + (There might be 0 or more.)\",\n \"type\": \"array\"\n },\n + \ \"label\": {\n \"description\": \"The localized label belonging + to this abuse report reason.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"VideoSuggestions\": {\n \"type\": \"object\",\n + \ \"description\": \"Specifies suggestions on how to improve video content, + including encoding hints, tag suggestions, and editor suggestions.\",\n \"properties\": + {\n \"processingHints\": {\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n + \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n + \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n + \ ],\n \"enumDescriptions\": [\n \"The MP4 + file is not streamable, this will slow down the processing. MOOV atom was + not found at the beginning of the file.\",\n \"Probably a better + quality version of the video exists. The video has wide screen aspect ratio, + but is not an HD video.\",\n \"Uploaded video is spherical video.\",\n + \ \"Uploaded video has spatial audio.\",\n \"Uploaded + video is VR video.\",\n \"Uploaded video is HDR video.\"\n ]\n + \ },\n \"description\": \"A list of suggestions that may + improve YouTube's ability to process the video.\"\n },\n \"processingWarnings\": + {\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"Unrecognized + file format, transcoding is likely to fail.\",\n \"Unrecognized + video codec, transcoding is likely to fail.\",\n \"Unrecognized + audio codec, transcoding is likely to fail.\",\n \"Conflicting + container and stream resolutions.\",\n \"Edit lists are not currently + supported.\",\n \"Video codec that is known to cause problems + was used.\",\n \"Audio codec that is known to cause problems + was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported + spherical video projection type.\",\n \"Unsupported HDR pixel + format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic + HDR lookup table attached.\"\n ],\n \"enum\": [\n \"unknownContainer\",\n + \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n + \ \"inconsistentResolution\",\n \"hasEditlist\",\n + \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n + \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n + \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n + \ \"problematicHdrLookupTable\"\n ]\n },\n + \ \"description\": \"A list of reasons why YouTube may have difficulty + transcoding the uploaded video or that might result in an erroneous transcoding. + These warnings are generated before YouTube actually processes the uploaded + video file. In addition, they identify issues that are unlikely to cause the + video processing to fail but that might cause problems such as sync issues, + video artifacts, or a missing audio track.\"\n },\n \"editorSuggestions\": + {\n \"description\": \"A list of video editing operations that might + improve the video quality or playback experience of the uploaded video.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"Picture + brightness levels seem off and could be corrected.\",\n \"The + video appears shaky and could be stabilized.\",\n \"Margins (mattes) + detected around the picture could be cropped.\",\n \"The audio + track appears silent and could be swapped with a better quality one.\"\n ],\n + \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n + \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ]\n + \ }\n },\n \"tagSuggestions\": {\n \"type\": + \"array\",\n \"description\": \"A list of keyword tags that could + be added to the video's metadata to increase the likelihood that users will + locate your video when searching or browsing on YouTube.\",\n \"items\": + {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n }\n + \ },\n \"processingErrors\": {\n \"description\": \"A + list of errors that will prevent YouTube from successfully processing the + uploaded video video. These errors indicate that, regardless of the video's + current processing status, eventually, that status will almost certainly be + failed.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\",\n \"enum\": [\n \"audioFile\",\n \"imageFile\",\n + \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n + \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n + \ ],\n \"enumDescriptions\": [\n \"File + contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., + a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file.\",\n \"Document + or text file (e.g., MS Word document).\",\n \"An archive file + (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout + type.\"\n ]\n }\n }\n },\n \"id\": \"VideoSuggestions\"\n + \ },\n \"I18nRegion\": {\n \"properties\": {\n \"kind\": + {\n \"default\": \"youtube#i18nRegion\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": + \"I18nRegionSnippet\",\n \"description\": \"The snippet object contains + basic details about the i18n region, such as region code and human-readable + name.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": \"The ID that YouTube uses to uniquely identify - the subscription.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"SubscriptionContentDetails\",\n \"description\": \"The contentDetails - object contains basic statistics about the subscription.\"\n }\n },\n - \ \"description\": \"A *subscription* resource contains information about - a YouTube user subscription. A subscription notifies a user when new videos - are added to a channel or when another user takes one of several actions on - YouTube, such as uploading a video, rating a video, or commenting on a video.\"\n - \ },\n \"VideoLocalization\": {\n \"id\": \"VideoLocalization\",\n - \ \"description\": \"Localized versions of certain video properties (e.g. - title).\",\n \"properties\": {\n \"title\": {\n \"description\": - \"Localized version of the video's title.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"Localized - version of the video's description.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"PlaylistItemListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of - this resource.\",\n \"type\": \"string\",\n \"default\": - \"youtube#playlistItemListResponse\"\n },\n \"nextPageToken\": + the i18n region.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"I18nRegion\",\n \"description\": \"A *i18nRegion* resource + identifies a region where YouTube is available.\",\n \"type\": \"object\"\n + \ },\n \"VideoCategorySnippet\": {\n \"type\": \"object\",\n \"properties\": + {\n \"channelId\": {\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n + \ \"description\": \"The YouTube channel that created the video category.\",\n + \ \"type\": \"string\"\n },\n \"assignable\": {\n \"type\": + \"boolean\"\n },\n \"title\": {\n \"description\": + \"The video category's title.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"VideoCategorySnippet\",\n \"description\": + \"Basic details about a video category, such as its localized title.\"\n },\n + \ \"LiveChatSuperChatDetails\": {\n \"id\": \"LiveChatSuperChatDetails\",\n + \ \"properties\": {\n \"amountMicros\": {\n \"type\": + \"string\",\n \"description\": \"The amount purchased by the user, + in micros (1,750,000 micros = 1.75).\",\n \"format\": \"uint64\"\n + \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n + \ \"description\": \"A rendered string that displays the fund amount + and currency to the user.\"\n },\n \"userComment\": {\n \"type\": + \"string\",\n \"description\": \"The comment added by the user to + this Super Chat event.\"\n },\n \"currency\": {\n \"type\": + \"string\",\n \"description\": \"The currency in which the purchase + was made.\"\n },\n \"tier\": {\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"description\": \"The tier in + which the amount belongs. Lower amounts belong to lower tiers. The lowest + tier is 1.\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoContentDetails\": + {\n \"id\": \"VideoContentDetails\",\n \"description\": \"Details + about the content of a YouTube Video.\",\n \"properties\": {\n \"definition\": + {\n \"enum\": [\n \"sd\",\n \"hd\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"sd\",\n + \ \"hd\"\n ],\n \"description\": \"The value of + definition indicates whether the video is available in high definition or + only in standard definition.\"\n },\n \"projection\": {\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"rectangular\",\n \"360\"\n ],\n \"description\": + \"Specifies the projection format of the video.\",\n \"type\": \"string\"\n + \ },\n \"hasCustomThumbnail\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Indicates whether the video uploader has provided + a custom thumbnail image for the video. This property is only visible to the + video uploader.\"\n },\n \"licensedContent\": {\n \"description\": + \"The value of is_license_content indicates whether the video is licensed + content.\",\n \"type\": \"boolean\"\n },\n \"regionRestriction\": + {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": + \"The regionRestriction object contains information about the countries where + a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed + property or the contentDetails.regionRestriction.blocked property.\"\n },\n + \ \"duration\": {\n \"description\": \"The length of the video. + The tag value is an ISO 8601 duration in the format PT#M#S, in which the letters + PT indicate that the value specifies a period of time, and the letters M and + S refer to length in minutes and seconds, respectively. The # characters preceding + the M and S letters are both integers that specify the number of minutes (or + seconds) of the video. For example, a value of PT15M51S indicates that the + video is 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n + \ },\n \"caption\": {\n \"type\": \"string\",\n \"description\": + \"The value of captions indicates whether the video has captions or not.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"true\",\n \"false\"\n ]\n + \ },\n \"countryRestriction\": {\n \"description\": + \"The countryRestriction object contains information about the countries where + a video is (or is not) viewable.\",\n \"$ref\": \"AccessPolicy\"\n + \ },\n \"contentRating\": {\n \"description\": \"Specifies + the ratings that the video received under various rating schemes.\",\n \"$ref\": + \"ContentRating\"\n },\n \"dimension\": {\n \"type\": + \"string\",\n \"description\": \"The value of dimension indicates + whether the video is available in 3D or in 2D.\"\n }\n },\n \"type\": + \"object\"\n },\n \"LiveChatModeratorListResponse\": {\n \"id\": + \"LiveChatModeratorListResponse\",\n \"type\": \"object\",\n \"properties\": + {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"description\": - \"A list of playlist items that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveChatModeratorListResponse\",\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": + \"A list of moderators that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"LiveChatModerator\"\n },\n \"type\": + \"array\"\n },\n \"prevPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"PlaylistItemListResponse\"\n },\n \"LiveChatMessageSnippet\": {\n - \ \"type\": \"object\",\n \"description\": \"Next ID: 33\",\n \"properties\": - {\n \"liveChatId\": {\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the message was orignally published.\",\n \"type\": - \"string\"\n },\n \"messageRetractedDetails\": {\n \"$ref\": - \"LiveChatMessageRetractedDetails\"\n },\n \"superChatDetails\": - {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"memberMilestoneChatDetails\": {\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\",\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"newSponsorDetails\": {\n \"description\": \"Details - about the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. - Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n - \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"hasDisplayContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the message has display content that should be displayed to users.\"\n },\n - \ \"membershipGiftingDetails\": {\n \"description\": \"Details - about the Membership Gifting event, this is only set if the type is 'membershipGiftingEvent'.\",\n - \ \"$ref\": \"LiveChatMembershipGiftingDetails\"\n },\n \"fanFundingEventDetails\": - {\n \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\",\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"type\": \"string\"\n },\n \"superStickerDetails\": - {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\"\n - \ },\n \"giftMembershipReceivedDetails\": {\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\",\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"textMessageDetails\": {\n \"$ref\": \"LiveChatTextMessageDetails\",\n - \ \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\"\n },\n \"authorChannelId\": - {\n \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\",\n \"type\": \"string\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"displayMessage\": {\n \"description\": \"Contains a string - that can be displayed to the user. If this field is not present the message - is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveChatMessageSnippet\"\n },\n \"PlaylistItemSnippet\": {\n \"type\": - \"object\",\n \"description\": \"Basic details about a playlist, including - title, description and thumbnails. Basic details of a YouTube Playlist item - provided by the author. Next ID: 15\",\n \"id\": \"PlaylistItemSnippet\",\n - \ \"properties\": {\n \"videoOwnerChannelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel this - video belongs to.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the playlist item. 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.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The item's - description.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the user that added the item to the playlist.\"\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"description\": \"The id object contains - information that can be used to uniquely identify the resource that is included - in the playlist as the playlist item.\"\n },\n \"position\": - {\n \"format\": \"uint32\",\n \"description\": \"The order - in which the item appears in the playlist. The value uses a zero-based index, - so the first item has a position of 0, the second item has a position of 1, - and so forth.\",\n \"type\": \"integer\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the playlist - item belongs to.\",\n \"type\": \"string\"\n },\n \"videoOwnerChannelId\": - {\n \"description\": \"Channel id for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The item's title.\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the item was added to the playlist.\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify thGe playlist that the playlist item is in.\"\n - \ }\n }\n },\n \"VideoFileDetailsAudioStream\": {\n \"id\": - \"VideoFileDetailsAudioStream\",\n \"properties\": {\n \"channelCount\": - {\n \"description\": \"The number of audio channels that the stream - contains.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"bitrateBps\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The audio stream's - bitrate, in bits per second.\"\n },\n \"vendor\": {\n \"type\": - \"string\",\n \"description\": \"A value that uniquely identifies - a video vendor. Typically, the value is a four-letter vendor code.\"\n },\n - \ \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The audio codec that the stream uses.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Information about an audio stream.\"\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"id\": \"LiveChatFanFundingEventDetails\",\n - \ \"properties\": {\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"description\": \"The amount of the fund.\",\n \"format\": - \"uint64\"\n }\n },\n \"type\": \"object\"\n },\n \"I18nRegionListResponse\": - {\n \"type\": \"object\",\n \"id\": \"I18nRegionListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"I18nRegion\"\n },\n - \ \"description\": \"A list of regions where YouTube is available. - In this map, the i18n region ID is the map key, and its value is the corresponding - i18nRegion resource.\",\n \"type\": \"array\"\n },\n \"visitorId\": + the visitor.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"Channel\": {\n \"id\": \"Channel\",\n \"description\": \"A + *channel* resource contains information about a YouTube channel.\",\n \"type\": + \"object\",\n \"properties\": {\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#channel\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n + \ \"type\": \"string\"\n },\n \"statistics\": {\n \"description\": + \"The statistics object encapsulates statistics for the channel.\",\n \"$ref\": + \"ChannelStatistics\"\n },\n \"localizations\": {\n \"additionalProperties\": + {\n \"$ref\": \"ChannelLocalization\"\n },\n \"type\": + \"object\",\n \"description\": \"Localizations for different languages\"\n + \ },\n \"topicDetails\": {\n \"$ref\": \"ChannelTopicDetails\",\n + \ \"description\": \"The topicDetails object encapsulates information + about Freebase topics associated with the channel.\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the channel.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the channel, such as its title, description, and thumbnail images.\",\n + \ \"$ref\": \"ChannelSnippet\"\n },\n \"brandingSettings\": + {\n \"$ref\": \"ChannelBrandingSettings\",\n \"description\": + \"The brandingSettings object encapsulates information about the branding + of the channel.\"\n },\n \"contentDetails\": {\n \"description\": + \"The contentDetails object encapsulates information about the channel's content.\",\n + \ \"$ref\": \"ChannelContentDetails\"\n },\n \"auditDetails\": + {\n \"description\": \"The auditionDetails object encapsulates channel + data that is relevant for YouTube Partners during the audition process.\",\n + \ \"$ref\": \"ChannelAuditDetails\"\n },\n \"status\": + {\n \"description\": \"The status object encapsulates information + about the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n + \ },\n \"contentOwnerDetails\": {\n \"description\": + \"The contentOwnerDetails object encapsulates channel data that is relevant + for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n + \ },\n \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n + \ \"description\": \"The conversionPings object encapsulates information + about conversion pings that need to be respected by the channel.\"\n }\n + \ }\n },\n \"VideoProjectDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoProjectDetails\",\n \"properties\": {},\n \"description\": + \"DEPRECATED. b/157517979: This part was never populated after it was added. + However, it sees non-zero traffic because there is generated client code in + the wild that refers to it [1]. We keep this field and do NOT remove it because + otherwise V3 would return an error when this part gets requested [2]. [1] + https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n + \ },\n \"SubscriptionSubscriberSnippet\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"title\": {\n \"description\": + \"The title of the subscriber.\",\n \"type\": \"string\"\n },\n + \ \"description\": {\n \"description\": \"The description of + the subscriber.\",\n \"type\": \"string\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"Thumbnails + for this subscriber.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The channel ID of the subscriber.\"\n + \ }\n },\n \"description\": \"Basic details about a subscription's + subscriber including title, description, channel ID and thumbnails.\",\n \"id\": + \"SubscriptionSubscriberSnippet\"\n },\n \"VideoStatistics\": {\n \"properties\": + {\n \"dislikeCount\": {\n \"description\": \"The number of + users who have indicated that they disliked the video by giving it a negative + rating.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n + \ },\n \"commentCount\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The number + of comments for the video.\"\n },\n \"viewCount\": {\n \"description\": + \"The number of times the video has been viewed.\",\n \"format\": + \"uint64\",\n \"type\": \"string\"\n },\n \"favoriteCount\": + {\n \"type\": \"string\",\n \"description\": \"The number + of users who currently have the video marked as a favorite video.\",\n \"format\": + \"uint64\"\n },\n \"likeCount\": {\n \"type\": \"string\",\n + \ \"description\": \"The number of users who have indicated that they + liked the video by giving it a positive rating.\",\n \"format\": + \"uint64\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"VideoStatistics\",\n \"description\": \"Statistics about the video, + such as the number of times the video was viewed or liked.\"\n },\n \"PlaylistPlayer\": + {\n \"properties\": {\n \"embedHtml\": {\n \"type\": + \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that + embeds a player that will play the playlist.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"PlaylistPlayer\"\n },\n \"ChannelStatus\": + {\n \"description\": \"JSON template for the status part of a channel.\",\n + \ \"id\": \"ChannelStatus\",\n \"type\": \"object\",\n \"properties\": + {\n \"isLinked\": {\n \"type\": \"boolean\",\n \"description\": + \"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.\"\n },\n + \ \"privacyStatus\": {\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"description\": + \"Privacy status of the channel.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"longUploadsStatus\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n + \ \"disallowed\"\n ],\n \"description\": \"The + long uploads status of this channel. See https://support.google.com/youtube/answer/71673 + for more information.\"\n }\n }\n },\n \"ImageSettings\": + {\n \"type\": \"object\",\n \"description\": \"Branding properties + for images associated with the channel.\",\n \"properties\": {\n \"bannerTvMediumImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size medium resolution (1280x720).\"\n },\n \"bannerMobileMediumHdImageUrl\": + {\n \"description\": \"Banner image. Mobile size medium/high resolution + (960x263).\",\n \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": + {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n + \ \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size low resolution (320x88).\"\n },\n \"bannerMobileHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size high resolution (1280x360).\"\n },\n \"trackingImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL for + a 1px by 1px tracking pixel that can be used to collect statistics for views + of the channel or video pages.\"\n },\n \"bannerTabletHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size high resolution (2276x377).\"\n },\n \"bannerTabletExtraHdImageUrl\": + {\n \"description\": \"Banner image. Tablet size extra high resolution + (2560x424).\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The image map script for the small banner image.\"\n },\n \"bannerImageUrl\": + {\n \"description\": \"Banner image. Desktop size (1060x175).\",\n + \ \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": + {\n \"description\": \"Banner image. Mobile size (640x175).\",\n + \ \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size high resolution (1920x1080).\"\n },\n \"bannerTabletImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size (1707x283).\"\n },\n \"bannerTvImageUrl\": {\n \"description\": + \"Banner image. TV size extra high resolution (2120x1192).\",\n \"type\": + \"string\"\n },\n \"bannerExternalUrl\": {\n \"description\": + \"This is generated when a ChannelBanner.Insert request has succeeded for + the given channel.\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": + {\n \"description\": \"The URL for the 640px by 70px banner image + that appears below the video player in the default view of the video watch + page. The URL for the image that appears above the top-left corner of the + video player. This is a 25-pixel-high image with a flexible width that cannot + exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n + \ \"largeBrandedBannerImageImapScript\": {\n \"$ref\": \"LocalizedProperty\",\n + \ \"description\": \"The image map script for the large banner image.\"\n + \ },\n \"backgroundImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n + \ \"description\": \"The URL for the background image shown on the + video watch page. The image should be 1200px by 615px, with a maximum file + size of 128k.\"\n },\n \"largeBrandedBannerImageUrl\": {\n \"$ref\": + \"LocalizedProperty\",\n \"description\": \"The URL for the 854px + by 70px image that appears below the video player in the expanded video view + of the video watch page.\"\n },\n \"bannerTabletLowImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size low resolution (1138x188).\"\n },\n \"bannerMobileExtraHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size high resolution (1440x395).\"\n },\n \"watchIconImageUrl\": + {\n \"type\": \"string\"\n }\n },\n \"id\": \"ImageSettings\"\n + \ },\n \"PlaylistStatus\": {\n \"properties\": {\n \"privacyStatus\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The playlist's + privacy status.\",\n \"type\": \"string\",\n \"enum\": [\n + \ \"public\",\n \"unlisted\",\n \"private\"\n + \ ]\n }\n },\n \"id\": \"PlaylistStatus\",\n \"type\": + \"object\"\n },\n \"LiveChatMessageRetractedDetails\": {\n \"properties\": + {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageRetractedDetails\"\n + \ },\n \"CaptionListResponse\": {\n \"properties\": {\n \"kind\": + {\n \"default\": \"youtube#captionListResponse\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\"\n + \ },\n \"items\": {\n \"description\": \"A list of captions + that match the request criteria.\",\n \"items\": {\n \"$ref\": + \"Caption\"\n },\n \"type\": \"array\"\n },\n \"visitorId\": {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n }\n },\n + \ \"id\": \"CaptionListResponse\",\n \"type\": \"object\"\n },\n + \ \"SubscriptionContentDetails\": {\n \"description\": \"Details about + the content to witch a subscription refers.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"newItemCount\": {\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The number of new items in the subscription since its content was last read.\"\n + \ },\n \"totalItemCount\": {\n \"description\": \"The + approximate number of items that the subscription points to.\",\n \"format\": + \"uint32\",\n \"type\": \"integer\"\n },\n \"activityType\": + {\n \"description\": \"The type of activity this subscription is + for (only uploads, everything).\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n + \ \"all\",\n \"uploads\"\n ]\n }\n },\n + \ \"id\": \"SubscriptionContentDetails\"\n },\n \"SuperStickerMetadata\": + {\n \"id\": \"SuperStickerMetadata\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"altText\": {\n \"description\": + \"Internationalized alt text that describes the sticker image and any animation + associated with it.\",\n \"type\": \"string\"\n },\n \"stickerId\": + {\n \"type\": \"string\",\n \"description\": \"Unique identifier + of the Super Sticker. This is a shorter form of the alt_text that includes + pack name and a recognizable characteristic of the sticker.\"\n },\n + \ \"altTextLanguage\": {\n \"type\": \"string\",\n \"description\": + \"Specifies the localization language in which the alt text is returned.\"\n + \ }\n }\n },\n \"ActivityListResponse\": {\n \"id\": + \"ActivityListResponse\",\n \"type\": \"object\",\n \"properties\": + {\n \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"Activity\"\n }\n },\n \"kind\": {\n \"default\": + \"youtube#activityListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"nextPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the next page + in the result set.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n }\n }\n },\n \"I18nLanguageListResponse\": + {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"items\": + {\n \"description\": \"A list of supported i18n languages. In this + map, the i18n language ID is the map key, and its value is the corresponding + i18nLanguage resource.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"I18nLanguage\"\n }\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"kind\": {\n \"default\": + \"youtube#i18nLanguageListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nRegionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoGetRatingResponse\": - {\n \"id\": \"VideoGetRatingResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"description\": - \"A list of ratings that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoRating\"\n - \ }\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoGetRatingResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n + which produced this response.\"\n }\n },\n \"id\": \"I18nLanguageListResponse\",\n + \ \"type\": \"object\"\n },\n \"CommentThread\": {\n \"id\": + \"CommentThread\",\n \"properties\": {\n \"replies\": {\n \"description\": + \"The replies object contains a limited number of replies (if any) to the + top level comment found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the comment thread.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#commentThread\",\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\"\n \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n }\n },\n \"SubscriptionSnippet\": - {\n \"properties\": {\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. For each object in + \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": + \"CommentThreadSnippet\",\n \"description\": \"The snippet object + contains basic details about the comment thread and also the top level comment.\"\n + \ }\n },\n \"description\": \"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.\",\n \"type\": + \"object\"\n },\n \"ActivityContentDetailsChannelItem\": {\n \"description\": + \"Details about a resource which was added to a channel.\",\n \"type\": + \"object\",\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"properties\": + {\n \"resourceId\": {\n \"description\": \"The resourceId + object contains information that identifies the resource that was added to + the channel.\",\n \"$ref\": \"ResourceId\"\n }\n }\n + \ },\n \"ChannelStatistics\": {\n \"id\": \"ChannelStatistics\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"videoCount\": + {\n \"description\": \"The number of videos uploaded to the channel.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n + \ \"commentCount\": {\n \"description\": \"The number of comments + for the channel.\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n },\n \"viewCount\": {\n \"format\": \"uint64\",\n + \ \"type\": \"string\",\n \"description\": \"The number of + times the channel has been viewed.\"\n },\n \"subscriberCount\": + {\n \"description\": \"The number of subscribers that the channel + has.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n + \ },\n \"hiddenSubscriberCount\": {\n \"description\": + \"Whether or not the number of subscribers is shown for this user.\",\n \"type\": + \"boolean\"\n }\n },\n \"description\": \"Statistics about + a channel: number of subscribers, number of videos in the channel, etc.\"\n + \ },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"type\": + \"object\",\n \"properties\": {\n \"associatedMembershipGiftingMessageId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the membership gifting message that is related to this gift membership. This + ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n + \ },\n \"memberLevelName\": {\n \"description\": \"The + name of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` + of the associated membership gifting message. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\",\n \"type\": \"string\"\n },\n \"gifterChannelId\": + {\n \"description\": \"The ID of the user that made the membership + gifting purchase. This matches the `snippet.authorChannelId` of the associated + membership gifting message.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n + \ \"RelatedEntity\": {\n \"properties\": {\n \"entity\": {\n + \ \"$ref\": \"Entity\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"RelatedEntity\"\n },\n \"ChannelBannerResource\": {\n + \ \"description\": \"A channel banner returned as the response to a channel_banner.insert + call.\",\n \"type\": \"object\",\n \"properties\": {\n \"url\": + {\n \"description\": \"The URL of this banner image.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#channelBannerResource\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#channelBannerResource\\\".\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"ChannelBannerResource\"\n + \ },\n \"LocalizedProperty\": {\n \"properties\": {\n \"default\": + {\n \"type\": \"string\"\n },\n \"defaultLanguage\": + {\n \"description\": \"The language of the default property.\",\n + \ \"$ref\": \"LanguageTag\"\n },\n \"localized\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"LocalizedString\"\n }\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LocalizedProperty\"\n },\n \"ChannelSnippet\": {\n \"type\": + \"object\",\n \"properties\": {\n \"customUrl\": {\n \"description\": + \"The custom url of the channel.\",\n \"type\": \"string\"\n },\n + \ \"defaultLanguage\": {\n \"description\": \"The language + of the channel's default title and description.\",\n \"type\": \"string\"\n + \ },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The description of the channel.\"\n },\n + \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The date and time that the channel + was created.\"\n },\n \"thumbnails\": {\n \"description\": + \"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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The subscription's title.\"\n },\n - \ \"resourceId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.subscriptions.insert\"\n ]\n },\n - \ \"description\": \"The id object contains information about the - channel that the user subscribed to.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the subscription - belongs to.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the subscription - was created.\",\n \"format\": \"date-time\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The subscription's - details.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about a subscription, including title, description and thumbnails - of the subscribed item.\",\n \"type\": \"object\",\n \"id\": \"SubscriptionSnippet\"\n - \ },\n \"VideoCategorySnippet\": {\n \"description\": \"Basic details - about a video category, such as its localized title.\",\n \"id\": \"VideoCategorySnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"title\": {\n - \ \"description\": \"The video category's title.\",\n \"type\": - \"string\"\n },\n \"assignable\": {\n \"type\": \"boolean\"\n - \ },\n \"channelId\": {\n \"description\": \"The YouTube - channel that created the video category.\",\n \"type\": \"string\",\n - \ \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\"\n }\n }\n - \ },\n \"CommentListResponse\": {\n \"type\": \"object\",\n \"properties\": + that contains other information about the thumbnail. When displaying thumbnails + in your application, make sure that your code uses the image URLs exactly + as they are returned in API responses. For example, your application should + not use the http domain instead of the https domain in a URL returned in an + API response. Beginning in July 2018, channel thumbnail URLs will only be + available in the https domain, which is how the URLs appear in API responses. + After that time, you might see broken images in your application if it tries + to load YouTube images from the http domain. Thumbnail images might be empty + for newly created channels and might take up to one day to populate.\",\n + \ \"$ref\": \"ThumbnailDetails\"\n },\n \"title\": {\n + \ \"description\": \"The channel's title.\",\n \"type\": + \"string\"\n },\n \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n + \ \"description\": \"Localized title and description, read-only.\"\n + \ },\n \"country\": {\n \"description\": \"The country + of the channel.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"ChannelSnippet\",\n \"description\": \"Basic details + about a channel, including title, description and thumbnails.\"\n },\n + \ \"CommentSnippetAuthorChannelId\": {\n \"description\": \"The id + of the author's YouTube channel, if any.\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n + \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcast\": + {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + assigns to uniquely identify the broadcast.\",\n \"type\": \"string\"\n + \ },\n \"statistics\": {\n \"description\": \"The statistics + object contains info about the event's current stats. These include concurrent + viewers and total chat count. Statistics can change (in either direction) + during the lifetime of an event. Statistics are only returned while the event + is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n },\n + \ \"contentDetails\": {\n \"description\": \"The contentDetails + object contains information about the event's video content, such as whether + the content can be shown in an embedded video player or if it will be archived + and therefore available for viewing after the event has concluded.\",\n \"$ref\": + \"LiveBroadcastContentDetails\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#liveBroadcast\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the event, including its title, description, + start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n + \ },\n \"status\": {\n \"description\": \"The status + object contains information about the event's status.\",\n \"$ref\": + \"LiveBroadcastStatus\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n }\n + \ },\n \"description\": \"A *liveBroadcast* resource represents an + event that will be streamed, via live video, on YouTube.\",\n \"id\": + \"LiveBroadcast\"\n },\n \"CommentThreadReplies\": {\n \"type\": + \"object\",\n \"id\": \"CommentThreadReplies\",\n \"description\": + \"Comments written in (direct or indirect) reply to the top level comment.\",\n + \ \"properties\": {\n \"comments\": {\n \"description\": + \"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.\",\n \"items\": {\n \"$ref\": + \"Comment\"\n },\n \"type\": \"array\"\n }\n }\n + \ },\n \"PlaylistListResponse\": {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#commentListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"description\": - \"A list of comments that match the request criteria.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"default\": \"youtube#playlistListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"items\": {\n \"description\": \"A list of playlists + that match the request criteria\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Playlist\"\n }\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n }\n },\n + \ \"id\": \"PlaylistListResponse\"\n },\n \"ActivityContentDetailsComment\": + {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the resource associated with the comment.\"\n + \ }\n },\n \"description\": \"Information about a resource + that received a comment.\",\n \"id\": \"ActivityContentDetailsComment\",\n + \ \"type\": \"object\"\n },\n \"SubscriptionListResponse\": {\n + \ \"type\": \"object\",\n \"id\": \"SubscriptionListResponse\",\n + \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"Subscription\"\n },\n \"description\": + \"A list of subscriptions that match the request criteria.\",\n \"type\": + \"array\"\n },\n \"kind\": {\n \"default\": \"youtube#subscriptionListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ }\n },\n \"id\": \"CommentListResponse\"\n },\n \"ChannelSectionSnippet\": - {\n \"id\": \"ChannelSectionSnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the channel section.\"\n + \ }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": {\n + \ \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information about the resource that was added + to the playlist.\"\n },\n \"playlistItemId\": {\n \"description\": + \"ID of the item within the playlist.\",\n \"type\": \"string\"\n + \ },\n \"playlistId\": {\n \"description\": \"The value + that YouTube uses to uniquely identify the playlist.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Information about + a new playlist item.\",\n \"type\": \"object\"\n },\n \"LiveBroadcastContentDetails\": + {\n \"description\": \"Detailed settings of a broadcast.\",\n \"type\": + \"object\",\n \"properties\": {\n \"enableAutoStart\": {\n \"type\": + \"boolean\",\n \"description\": \"This setting indicates whether + auto start is enabled for this broadcast. The default value for this property + is false. This setting can only be used by Events.\"\n },\n \"enableClosedCaptions\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether HTTP POST closed captioning is enabled for this broadcast. + The ingestion URL of the closed captions is returned through the liveStreams + API. This is mutually exclusive with using the closed_captions_type property, + and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n + \ },\n \"enableEmbed\": {\n \"description\": \"This + setting indicates whether the broadcast video can be played in an embedded + player. If you choose to archive the video (using the enableArchive property), + this setting will also apply to the archived video.\",\n \"type\": + \"boolean\"\n },\n \"monitorStream\": {\n \"description\": + \"The monitorStream object contains information about the monitor stream, + which the broadcaster can use to review the event content before the broadcast + stream is shown publicly.\",\n \"$ref\": \"MonitorStreamInfo\"\n + \ },\n \"enableAutoStop\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether auto stop is enabled + for this broadcast. The default value for this property is false. This setting + can only be used by Events.\"\n },\n \"closedCaptionsType\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n + \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n + \ ]\n },\n \"startWithSlate\": {\n \"description\": + \"This setting indicates whether the broadcast should automatically begin + with an in-stream slate when you update the broadcast's status to live. After + updating the status, you then need to send a liveCuepoints.insert request + that sets the cuepoint's eventState to end to remove the in-stream slate and + make your broadcast stream visible to viewers.\",\n \"type\": \"boolean\"\n + \ },\n \"enableContentEncryption\": {\n \"description\": + \"This setting indicates whether YouTube should enable content encryption + for the broadcast.\",\n \"type\": \"boolean\"\n },\n \"stereoLayout\": + {\n \"description\": \"The 3D stereo layout of this broadcast. This + defaults to mono.\",\n \"type\": \"string\",\n \"enum\": + [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n + \ \"topBottom\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"description\": + \"The date and time that the live stream referenced by boundStreamId was last + updated.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n + \ },\n \"projection\": {\n \"description\": \"The projection + format of this broadcast. This defaults to rectangular.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"projectionUnspecified\",\n + \ \"rectangular\",\n \"360\",\n \"mesh\"\n + \ ]\n },\n \"recordFromStart\": {\n \"type\": + \"boolean\",\n \"description\": \"Automatically start recording after + the event goes live. The default value for this property is true. *Important:* + You must also set the enableDvr property's value to true if you want the playback + to be available immediately after the broadcast ends. If you set this property's + value to true but do not also set the enableDvr property to true, there may + be a delay of around one day before the archived video will be available for + playback.\"\n },\n \"enableLowLatency\": {\n \"type\": + \"boolean\",\n \"description\": \"Indicates whether this broadcast + has low latency enabled.\"\n },\n \"enableDvr\": {\n \"type\": + \"boolean\",\n \"description\": \"This setting determines whether + viewers can access DVR controls while watching the video. DVR controls enable + the viewer to control the video playback experience by pausing, rewinding, + or fast forwarding content. The default value for this property is true. *Important:* + You must set the value to true and also set the enableArchive property's value + to true if you want to make playback available immediately after the broadcast + ends.\"\n },\n \"mesh\": {\n \"type\": \"string\",\n + \ \"description\": \"The mesh for projecting the video if projection + is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding + of 3D mesh data that follows the Spherical Video V2 RFC specification for + an mshp box, excluding the box size and type but including the following four + reserved zero bytes for the version and flags.\",\n \"format\": \"byte\"\n + \ },\n \"boundStreamId\": {\n \"type\": \"string\",\n + \ \"description\": \"This value uniquely identifies the live stream + bound to the broadcast.\"\n },\n \"latencyPreference\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"Best for: + highest quality viewer playbacks and higher resolutions.\",\n \"Best + for: near real-time interaction, with minimal playback buffering.\",\n \"Best + for: real-time interaction Does not support: Closed captions, 1440p, and 4k + resolutions\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n + \ \"low\",\n \"ultraLow\"\n ],\n \"description\": + \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL + should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true + LATENCY_ULTRA_LOW should have enable_low_latency omitted.\"\n }\n },\n + \ \"id\": \"LiveBroadcastContentDetails\"\n },\n \"VideoAbuseReportSecondaryReason\": + {\n \"type\": \"object\",\n \"properties\": {\n \"label\": + {\n \"description\": \"The localized label for this abuse report + secondary reason.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + this abuse report secondary reason.\"\n }\n },\n \"id\": + \"VideoAbuseReportSecondaryReason\"\n },\n \"VideoCategory\": {\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the video category, including + its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube uses to + uniquely identify the video category.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n + \ \"default\": \"youtube#videoCategory\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"VideoCategory\",\n \"description\": + \"A *videoCategory* resource identifies a category that has been or could + be associated with uploaded videos.\",\n \"type\": \"object\"\n },\n + \ \"AbuseReport\": {\n \"properties\": {\n \"relatedEntities\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"RelatedEntity\"\n }\n },\n \"abuseTypes\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"AbuseType\"\n + \ }\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n + \ },\n \"description\": {\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"AbuseReport\",\n \"type\": \"object\"\n },\n + \ \"ChannelSection\": {\n \"properties\": {\n \"targeting\": + {\n \"$ref\": \"ChannelSectionTargeting\",\n \"description\": + \"The targeting object contains basic targeting settings about the channel + section.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel section.\"\n },\n \"localizations\": {\n \"additionalProperties\": + {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"type\": + \"object\",\n \"description\": \"Localizations for different languages\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#channelSection\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object contains details about the channel section content, + such as a list of playlists or channels featured in the section.\",\n \"$ref\": + \"ChannelSectionContentDetails\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the channel section, such as its type, style and title.\",\n + \ \"$ref\": \"ChannelSectionSnippet\"\n }\n },\n \"id\": + \"ChannelSection\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsUpload\": + {\n \"description\": \"Information about the uploaded video.\",\n \"type\": + \"object\",\n \"id\": \"ActivityContentDetailsUpload\",\n \"properties\": + {\n \"videoId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the uploaded video.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"VideoCategoryListResponse\": {\n \"properties\": + {\n \"pageInfo\": {\n \"description\": \"General pagination + information.\",\n \"$ref\": \"PageInfo\"\n },\n \"items\": + {\n \"description\": \"A list of video categories that can be associated + with YouTube videos. In this map, the video category ID is the map key, and + its value is the corresponding videoCategory resource.\",\n \"items\": + {\n \"$ref\": \"VideoCategory\"\n },\n \"type\": + \"array\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n + \ \"default\": \"youtube#videoCategoryListResponse\"\n }\n + \ },\n \"id\": \"VideoCategoryListResponse\",\n \"type\": \"object\"\n + \ },\n \"LiveChatMessageListResponse\": {\n \"id\": \"LiveChatMessageListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#liveChatMessageListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"offlineAt\": {\n \"description\": + \"The date and time when the underlying stream went offline.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"LiveChatMessage\"\n }\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"pollingIntervalMillis\": {\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The amount of time the client should wait before polling again.\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n }\n }\n },\n \"LanguageTag\": + {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"LanguageTag\",\n \"type\": \"object\"\n + \ },\n \"SearchResult\": {\n \"properties\": {\n \"id\": + {\n \"$ref\": \"ResourceId\",\n \"description\": \"The id + object contains information that can be used to uniquely identify the resource + that matches the search request.\"\n },\n \"kind\": {\n \"default\": + \"youtube#searchResult\",\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"SearchResultSnippet\",\n \"description\": + \"The snippet object contains basic details about a search result, such as + its title or description. For example, if the search result is a video, then + the title will be the video's title and the description will be the video's + description.\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"A search result contains information about a YouTube video, channel, or + playlist that matches the search parameters specified in an API request. While + a search result points to a uniquely identifiable resource, like a video, + it does not have its own persistent data.\",\n \"id\": \"SearchResult\"\n + \ },\n \"SuperChatEvent\": {\n \"properties\": {\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n + \ \"default\": \"youtube#superChatEvent\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube assigns to uniquely identify + the Super Chat event.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"snippet\": {\n \"description\": + \"The `snippet` object contains basic details about the Super Chat event.\",\n + \ \"$ref\": \"SuperChatEventSnippet\"\n }\n },\n \"id\": + \"SuperChatEvent\",\n \"type\": \"object\",\n \"description\": \"A + `__superChatEvent__` resource represents a Super Chat purchase on a YouTube + channel.\"\n },\n \"ChannelSectionSnippet\": {\n \"type\": \"object\",\n + \ \"id\": \"ChannelSectionSnippet\",\n \"properties\": {\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the channel that published the channel section.\",\n \"type\": \"string\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The channel section's title for multiple_playlists and multiple_channels.\"\n \ },\n \"style\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n \ \"verticalList\"\n ],\n \"description\": \"The - style of the channel section.\"\n },\n \"localized\": {\n \"$ref\": - \"ChannelSectionLocalization\",\n \"description\": \"Localized title, - read-only.\"\n },\n \"type\": {\n \"description\": - \"The type of the channel section.\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n + style of the channel section.\",\n \"type\": \"string\"\n },\n + \ \"localized\": {\n \"$ref\": \"ChannelSectionLocalization\",\n + \ \"description\": \"Localized title, read-only.\"\n },\n \"defaultLanguage\": + {\n \"description\": \"The language of the channel section's default + title and description.\",\n \"type\": \"string\"\n },\n \"type\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"position\": {\n \"type\": \"integer\",\n \"description\": - \"The position of the channel section in the channel.\",\n \"format\": - \"uint32\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the channel section's - default title and description.\"\n },\n \"title\": {\n \"description\": - \"The channel section's title for multiple_playlists and multiple_channels.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ChannelProfileDetails\": - {\n \"properties\": {\n \"profileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channels's avatar URL.\"\n },\n - \ \"channelId\": {\n \"description\": \"The YouTube channel - ID.\",\n \"type\": \"string\"\n },\n \"channelUrl\": - {\n \"description\": \"The channel's URL.\",\n \"type\": - \"string\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelProfileDetails\"\n - \ },\n \"ThumbnailSetResponse\": {\n \"id\": \"ThumbnailSetResponse\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The type of the channel section.\",\n + \ \"enum\": [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n + \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n + \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n + \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n + \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n + \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n + \ ]\n },\n \"position\": {\n \"type\": \"integer\",\n + \ \"description\": \"The position of the channel section in the channel.\",\n + \ \"format\": \"uint32\"\n }\n },\n \"description\": + \"Basic details about a channel section, including title, style and position.\"\n + \ },\n \"PropertyValue\": {\n \"properties\": {\n \"value\": + {\n \"type\": \"string\",\n \"description\": \"The property's + value.\"\n },\n \"property\": {\n \"description\": + \"A property.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"PropertyValue\",\n \"type\": \"object\",\n \"description\": \"A + pair Property / Value.\"\n },\n \"PlaylistContentDetails\": {\n \"type\": + \"object\",\n \"id\": \"PlaylistContentDetails\",\n \"properties\": + {\n \"itemCount\": {\n \"description\": \"The number of videos + in the playlist.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n }\n }\n },\n \"ChannelLocalization\": {\n \"description\": + \"Channel localization setting\",\n \"type\": \"object\",\n \"properties\": + {\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The localized strings for channel's title.\"\n },\n \"description\": + {\n \"description\": \"The localized strings for channel's description.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"ChannelLocalization\"\n + \ },\n \"I18nLanguage\": {\n \"description\": \"An *i18nLanguage* + resource identifies a UI language currently supported by YouTube.\",\n \"id\": + \"I18nLanguage\",\n \"type\": \"object\",\n \"properties\": {\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the i18n language.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the i18n language, such + as language code and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#i18nLanguage\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#i18nLanguage\\\".\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"VideoMonetizationDetails\": {\n \"id\": + \"VideoMonetizationDetails\",\n \"properties\": {\n \"access\": + {\n \"description\": \"The value of access indicates whether the + video can be monetized or not.\",\n \"$ref\": \"AccessPolicy\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Details + about monetization of a YouTube Video.\"\n },\n \"LiveChatMembershipGiftingDetails\": + {\n \"id\": \"LiveChatMembershipGiftingDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"giftMembershipsLevelName\": {\n \"description\": + \"The name of the level of the gift memberships purchased by the user. The + Level names are defined by the YouTube channel offering the Membership. In + some situations this field isn't filled.\",\n \"type\": \"string\"\n + \ },\n \"giftMembershipsCount\": {\n \"format\": \"int32\",\n + \ \"type\": \"integer\",\n \"description\": \"The number + of gift memberships purchased by the user.\"\n }\n }\n },\n + \ \"VideoFileDetails\": {\n \"description\": \"Describes original video + file properties, including technical details about audio and video streams, + but also metadata information like content length, digitization time, or geotagging + information.\",\n \"properties\": {\n \"audioStreams\": {\n \"type\": + \"array\",\n \"description\": \"A list of audio streams contained + in the uploaded video file. Each item in the list contains detailed metadata + about an audio stream.\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n + \ }\n },\n \"fileName\": {\n \"description\": + \"The uploaded file's name. This field is present whether a video file or + another type of file was uploaded.\",\n \"type\": \"string\"\n },\n + \ \"fileType\": {\n \"description\": \"The uploaded file's + type as detected by YouTube's video processing engine. Currently, YouTube + only processes video files, but this field is present whether a video file + or another type of file was uploaded.\",\n \"enumDescriptions\": + [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio + only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG + image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document + or text file (e.g., MS Word document).\",\n \"Movie project file + (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video + file type.\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"video\",\n \"audio\",\n \"image\",\n + \ \"archive\",\n \"document\",\n \"project\",\n + \ \"other\"\n ]\n },\n \"creationTime\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the uploaded video file was created. The value is specified + in ISO 8601 format. Currently, the following ISO 8601 formats are supported: + - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: + YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"bitrateBps\": {\n \"format\": + \"uint64\",\n \"description\": \"The uploaded video file's combined + (video and audio) bitrate in bits per second.\",\n \"type\": \"string\"\n + \ },\n \"container\": {\n \"type\": \"string\",\n \"description\": + \"The uploaded video file's container format.\"\n },\n \"videoStreams\": + {\n \"description\": \"A list of video streams contained in the uploaded + video file. Each item in the list contains detailed metadata about a video + stream.\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n + \ },\n \"type\": \"array\"\n },\n \"fileSize\": + {\n \"format\": \"uint64\",\n \"description\": \"The uploaded + file's size in bytes. This field is present whether a video file or another + type of file was uploaded.\",\n \"type\": \"string\"\n },\n + \ \"durationMs\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"The length of the uploaded video + in milliseconds.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"VideoFileDetails\"\n },\n \"ChannelAuditDetails\": {\n \"properties\": + {\n \"contentIdClaimsGoodStanding\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether or not the channel has any unresolved + claims.\"\n },\n \"communityGuidelinesGoodStanding\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether or not the channel respects + the community guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": + {\n \"description\": \"Whether or not the channel has any copyright + strikes.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"The auditDetails object encapsulates + channel data that is relevant for YouTube Partners during the audit process.\",\n + \ \"id\": \"ChannelAuditDetails\"\n },\n \"LiveBroadcastStatistics\": + {\n \"description\": \"Statistics about the live broadcast. These represent + a snapshot of the values at the time of the request. Statistics are only returned + for live broadcasts.\",\n \"type\": \"object\",\n \"properties\": + {\n \"totalChatCount\": {\n \"format\": \"uint64\",\n \"description\": + \"The total number of live chat messages currently on the broadcast. The property + and its value will be present if the broadcast is public, has the live chat + feature enabled, and has at least one message. Note that this field will not + be filled after the broadcast ends. So this property would not identify the + number of chat messages for an archived video of a completed live broadcast.\",\n + \ \"type\": \"string\"\n },\n \"concurrentViewers\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The number of viewers currently watching the broadcast. The property and + its value will be present if the broadcast has current viewers and the broadcast + owner has not hidden the viewcount for the video. Note that YouTube stops + tracking the number of concurrent viewers for a broadcast when the broadcast + ends. So, this property would not identify the number of viewers watching + an archived video of a live broadcast that already ended.\"\n }\n },\n + \ \"id\": \"LiveBroadcastStatistics\"\n },\n \"PlaylistItemListResponse\": + {\n \"id\": \"PlaylistItemListResponse\",\n \"properties\": {\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"visitorId\": {\n + \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#playlistItemListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". + Etag of this resource.\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"description\": + \"A list of playlist items that match the request criteria.\"\n },\n + \ \"etag\": {\n \"type\": \"string\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\"\n },\n \"ThirdPartyLink\": {\n \"id\": \"ThirdPartyLink\",\n \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n + \ \"default\": \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the third- party account link.\",\n \"$ref\": + \"ThirdPartyLinkSnippet\"\n },\n \"linkingToken\": {\n \"description\": + \"The linking_token identifies a YouTube account and channel with which the + third party account is linked.\",\n \"type\": \"string\"\n },\n + \ \"status\": {\n \"description\": \"The status object contains + information about the status of the link.\",\n \"$ref\": \"ThirdPartyLinkStatus\"\n + \ }\n },\n \"description\": \"A *third party account link* + resource represents a link between a YouTube account or a channel and an account + on a third-party service.\"\n },\n \"MembershipsDuration\": {\n \"type\": + \"object\",\n \"properties\": {\n \"memberTotalDurationMonths\": + {\n \"description\": \"The cumulative time the user has been a member + across all levels in complete months (the time is rounded down to the nearest + integer).\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n + \ },\n \"memberSince\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the user became a continuous + member across all levels.\"\n }\n },\n \"id\": \"MembershipsDuration\"\n + \ },\n \"ChannelContentOwnerDetails\": {\n \"properties\": {\n \"contentOwner\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the content owner linked to the channel.\"\n },\n \"timeLinked\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the channel was linked + to the content owner.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ChannelContentOwnerDetails\",\n \"description\": \"The + contentOwnerDetails object encapsulates channel data that is relevant for + YouTube Partners linked with the channel.\"\n },\n \"TestItem\": {\n + \ \"type\": \"object\",\n \"id\": \"TestItem\",\n \"properties\": + {\n \"featuredPart\": {\n \"type\": \"boolean\"\n },\n + \ \"gaia\": {\n \"format\": \"int64\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n + \ }\n }\n },\n \"ChannelBrandingSettings\": {\n \"type\": + \"object\",\n \"properties\": {\n \"watch\": {\n \"$ref\": + \"WatchSettings\",\n \"description\": \"Branding properties for the + watch page.\"\n },\n \"channel\": {\n \"$ref\": \"ChannelSettings\",\n + \ \"description\": \"Branding properties for the channel view.\"\n + \ },\n \"hints\": {\n \"items\": {\n \"$ref\": + \"PropertyValue\"\n },\n \"description\": \"Additional experimental + branding properties.\",\n \"type\": \"array\"\n },\n \"image\": + {\n \"description\": \"Branding properties for branding images.\",\n + \ \"$ref\": \"ImageSettings\"\n }\n },\n \"description\": + \"Branding properties of a YouTube channel.\",\n \"id\": \"ChannelBrandingSettings\"\n + \ },\n \"ChannelSectionTargeting\": {\n \"description\": \"ChannelSection + targeting setting.\",\n \"id\": \"ChannelSectionTargeting\",\n \"type\": + \"object\",\n \"properties\": {\n \"regions\": {\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"The region the channel section is targeting.\"\n + \ },\n \"countries\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\",\n \"description\": + \"The country the channel section is targeting.\"\n },\n \"languages\": + {\n \"description\": \"The language the channel section is targeting.\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": + \"array\"\n }\n }\n },\n \"PlaylistItemStatus\": {\n \"description\": + \"Information about the playlist item's privacy status.\",\n \"id\": + \"PlaylistItemStatus\",\n \"type\": \"object\",\n \"properties\": + {\n \"privacyStatus\": {\n \"type\": \"string\",\n \"enum\": + [\n \"public\",\n \"unlisted\",\n \"private\"\n + \ ],\n \"description\": \"This resource's privacy status.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ]\n }\n }\n },\n \"LiveChatNewSponsorDetails\": + {\n \"id\": \"LiveChatNewSponsorDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"isUpgrade\": {\n \"type\": \"boolean\",\n + \ \"description\": \"If the viewer just had upgraded from a lower + level. For viewers that were not members at the time of purchase, this field + is false.\"\n },\n \"memberLevelName\": {\n \"description\": + \"The name of the Level that the viewer just had joined. The Level names are + defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"Member\": {\n \"properties\": {\n \"kind\": {\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#member\\\".\",\n \"type\": \"string\",\n + \ \"default\": \"youtube#member\"\n },\n \"etag\": {\n \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": \"A list of - thumbnails.\",\n \"type\": \"array\"\n },\n \"kind\": - {\n \"default\": \"youtube#thumbnailSetResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n }\n - \ },\n \"LiveChatMessageAuthorDetails\": {\n \"properties\": {\n - \ \"isVerified\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author's identity has been verified by YouTube.\"\n },\n - \ \"isChatOwner\": {\n \"description\": \"Whether the author - is the owner of the live chat.\",\n \"type\": \"boolean\"\n },\n - \ \"isChatModerator\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is a moderator of the live chat.\"\n },\n \"channelId\": - {\n \"description\": \"The YouTube channel ID.\",\n \"type\": - \"string\"\n },\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"isChatSponsor\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is a sponsor of the live chat.\"\n },\n \"channelUrl\": - {\n \"description\": \"The channel's URL.\",\n \"type\": - \"string\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageAuthorDetails\"\n - \ },\n \"VideoRecordingDetails\": {\n \"id\": \"VideoRecordingDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"location\": - {\n \"$ref\": \"GeoPoint\",\n \"description\": \"The geolocation - information associated with the video.\"\n },\n \"recordingDate\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the video was recorded.\"\n - \ },\n \"locationDescription\": {\n \"type\": \"string\",\n - \ \"description\": \"The text description of the location where the - video was recorded.\"\n }\n },\n \"description\": \"Recording - information associated with the video.\"\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"type\": \"object\",\n \"description\": \"A single tag suggestion - with it's relevance information.\",\n \"id\": \"VideoSuggestionsTagSuggestion\",\n - \ \"properties\": {\n \"tag\": {\n \"type\": \"string\",\n - \ \"description\": \"The keyword tag suggested for the video.\"\n - \ },\n \"categoryRestricts\": {\n \"description\": \"A - set of video categories for which the tag is relevant. You can use this information - to display appropriate tag suggestions based on the video category that the - video uploader associates with the video. By default, tag suggestions are - relevant for all categories if there are no restricts defined for the keyword.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n }\n },\n \"InvideoPosition\": - {\n \"id\": \"InvideoPosition\",\n \"properties\": {\n \"type\": - {\n \"enum\": [\n \"corner\"\n ],\n \"description\": - \"Defines the position type.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\"\n ]\n },\n \"cornerPosition\": - {\n \"description\": \"Describes in which corner of the video the - visual widget will appear.\",\n \"enum\": [\n \"topLeft\",\n - \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Describes - the spatial position of a visual widget inside a video. It is a union of various - position types, out of which only will be set one.\"\n },\n \"LiveBroadcast\": - {\n \"id\": \"LiveBroadcast\",\n \"type\": \"object\",\n \"properties\": - {\n \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information about the event's video content, such as whether - the content can be shown in an embedded video player or if it will be archived - and therefore available for viewing after the event has concluded.\",\n \"$ref\": - \"LiveBroadcastContentDetails\"\n },\n \"etag\": {\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the member.\",\n \"$ref\": + \"MemberSnippet\"\n }\n },\n \"description\": \"A *member* + resource represents a member for a YouTube channel. A member provides recurring + monetary support to a creator and receives special benefits.\",\n \"id\": + \"Member\",\n \"type\": \"object\"\n },\n \"MemberListResponse\": + {\n \"type\": \"object\",\n \"id\": \"MemberListResponse\",\n \"properties\": + {\n \"items\": {\n \"description\": \"A list of members that + match the request criteria.\",\n \"items\": {\n \"$ref\": + \"Member\"\n },\n \"type\": \"array\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n + \ \"default\": \"youtube#memberListResponse\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"etag\": {\n \"type\": \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the broadcast.\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the event, including its title, description, start time, - and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"default\": \"youtube#liveBroadcast\",\n \"type\": \"string\"\n - \ },\n \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"The statistics object contains info about the - event's current stats. These include concurrent viewers and total chat count. - Statistics can change (in either direction) during the lifetime of an event. - Statistics are only returned while the event is live.\"\n }\n },\n - \ \"description\": \"A *liveBroadcast* resource represents an event that - will be streamed, via live video, on YouTube.\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"userComment\": {\n \"description\": \"The comment added - by the user to this Super Chat event.\",\n \"type\": \"string\"\n - \ },\n \"amountMicros\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made.\"\n },\n \"tier\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n }\n },\n \"id\": \"LiveChatSuperChatDetails\"\n - \ },\n \"SearchResult\": {\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"SearchResultSnippet\",\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\"\n },\n \"id\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The id object contains information that can be - used to uniquely identify the resource that matches the search request.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#searchResult\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A search result contains information - about a YouTube video, channel, or playlist that matches the search parameters - specified in an API request. While a search result points to a uniquely identifiable - resource, like a video, it does not have its own persistent data.\",\n \"id\": - \"SearchResult\"\n },\n \"SuperChatEventSnippet\": {\n \"id\": - \"SuperChatEventSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"channelId\": {\n \"description\": \"Channel id where - the event occurred.\",\n \"type\": \"string\"\n },\n \"supporterDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the supporter.\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\",\n \"type\": - \"string\"\n },\n \"displayString\": {\n \"description\": - \"A rendered string that displays the purchase amount and currency (e.g., - \\\"$1.00\\\"). The string is rendered for the given language.\",\n \"type\": - \"string\"\n },\n \"commentText\": {\n \"description\": - \"The text contents of the comment left by the user.\",\n \"type\": - \"string\"\n },\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"description\": \"The purchase amount, in micros of - the purchase currency. e.g., 1 is represented as 1000000.\",\n \"type\": - \"string\"\n },\n \"createdAt\": {\n \"description\": - \"The date and time when the event occurred.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"messageType\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\"\n },\n \"isSuperStickerEvent\": {\n - \ \"description\": \"True if this event is a Super Sticker event.\",\n - \ \"type\": \"boolean\"\n }\n }\n },\n \"VideoStatistics\": - {\n \"type\": \"object\",\n \"description\": \"Statistics about - the video, such as the number of times the video was viewed or liked.\",\n - \ \"id\": \"VideoStatistics\",\n \"properties\": {\n \"favoriteCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of users who currently have the video marked as a favorite video.\",\n \"format\": - \"uint64\"\n },\n \"viewCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of times the video has been viewed.\",\n - \ \"type\": \"string\"\n },\n \"commentCount\": {\n - \ \"type\": \"string\",\n \"description\": \"The number of - comments for the video.\",\n \"format\": \"uint64\"\n },\n - \ \"likeCount\": {\n \"description\": \"The number of users - who have indicated that they liked the video by giving it a positive rating.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"dislikeCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of users who have indicated - that they disliked the video by giving it a negative rating.\"\n }\n - \ }\n },\n \"CommentThreadListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"description\": \"A list of comment threads that match the request - criteria.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#commentThreadListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"id\": \"CommentThreadListResponse\"\n },\n - \ \"LevelDetails\": {\n \"id\": \"LevelDetails\",\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The name that should be used when referring to this level.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoTopicDetails\": {\n - \ \"properties\": {\n \"relevantTopicIds\": {\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"topicIds\": {\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"topicCategories\": {\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"id\": \"VideoTopicDetails\",\n - \ \"description\": \"Freebase topic information related to the video.\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsLike\": {\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Information about a resource that received a positive - (like) rating.\",\n \"id\": \"ActivityContentDetailsLike\"\n },\n - \ \"Caption\": {\n \"description\": \"A *caption* resource represents - a YouTube caption track. A caption track is associated with exactly one YouTube - video.\",\n \"id\": \"Caption\",\n \"type\": \"object\",\n \"properties\": + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"LocalizedString\": + {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n + \ },\n \"language\": {\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"LocalizedString\",\n \"type\": \"object\"\n + \ },\n \"Comment\": {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the caption.\",\n \"$ref\": - \"CaptionSnippet\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the caption track.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"default\": \"youtube#caption\"\n }\n }\n },\n \"LiveChatModeratorSnippet\": - {\n \"id\": \"LiveChatModeratorSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"moderatorDetails\": {\n \"description\": - \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"liveChatId\": {\n \"description\": \"The ID - of the live chat this moderator can act on.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveChatSuperStickerDetails\": {\n \"id\": - \"LiveChatSuperStickerDetails\",\n \"properties\": {\n \"superStickerMetadata\": - {\n \"description\": \"Information about the Super Sticker.\",\n - \ \"$ref\": \"SuperStickerMetadata\"\n },\n \"currency\": - {\n \"description\": \"The currency in which the purchase was made.\",\n - \ \"type\": \"string\"\n },\n \"tier\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n },\n \"amountDisplayString\": {\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"type\": \"string\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"format\": \"uint64\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoFileDetails\": {\n \"id\": \"VideoFileDetails\",\n - \ \"description\": \"Describes original video file properties, including - technical details about audio and video streams, but also metadata information - like content length, digitization time, or geotagging information.\",\n \"type\": - \"object\",\n \"properties\": {\n \"fileType\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Known video - file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an MP3 - file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"description\": \"The uploaded file's type as detected by YouTube's - video processing engine. Currently, YouTube only processes video files, but - this field is present whether a video file or another type of file was uploaded.\",\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ]\n },\n \"videoStreams\": - {\n \"type\": \"array\",\n \"description\": \"A list of - video streams contained in the uploaded video file. Each item in the list - contains detailed metadata about a video stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n }\n },\n - \ \"creationTime\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the uploaded video file was created. The value is - specified in ISO 8601 format. Currently, the following ISO 8601 formats are - supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time - with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"container\": - {\n \"description\": \"The uploaded video file's container format.\",\n - \ \"type\": \"string\"\n },\n \"fileSize\": {\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"fileName\": {\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\",\n \"type\": \"string\"\n },\n - \ \"audioStreams\": {\n \"type\": \"array\",\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n }\n },\n - \ \"durationMs\": {\n \"description\": \"The length of the - uploaded video in milliseconds.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"bitrateBps\": {\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoStatus\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoStatus\",\n \"description\": \"Basic details about - a video category, such as its localized title. Next Id: 18\",\n \"properties\": - {\n \"publicStatsViewable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value indicates if the extended video statistics - on the watch page can be viewed by everyone. Note that the view count, likes, - etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"madeForKids\": {\n \"type\": - \"boolean\"\n },\n \"publishAt\": {\n \"description\": - \"The date and time when the video is scheduled to publish. It can be set - only if the privacy status of the video is private..\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"license\": {\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"failureReason\": - {\n \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ],\n \"description\": \"This - value explains why a video failed to upload. This property is only present - if the uploadStatus property indicates that the upload failed.\",\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ],\n \"type\": \"string\"\n },\n \"embeddable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"rejectionReason\": {\n \"enum\": - [\n \"copyright\",\n \"inappropriate\",\n \"duplicate\",\n - \ \"termsOfUse\",\n \"uploaderAccountSuspended\",\n \"length\",\n - \ \"claim\",\n \"uploaderAccountClosed\",\n \"trademark\",\n - \ \"legal\"\n ],\n \"description\": \"This value - explains why YouTube rejected an uploaded video. This property is only present - if the uploadStatus property indicates that the upload was rejected.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"Copyright - infringement.\",\n \"Inappropriate video content.\",\n \"Duplicate - upload in the same channel.\",\n \"Terms of use violation.\",\n - \ \"Uploader account was suspended.\",\n \"Video duration - was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n },\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"The video's - privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"uploadStatus\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"Video has been uploaded but - not processed yet.\",\n \"Video has been successfully processed.\",\n - \ \"Processing has failed. See FailureReason.\",\n \"Video - has been rejected. See RejectionReason.\",\n \"Video has been deleted.\"\n - \ ],\n \"description\": \"The status of the uploaded video.\",\n - \ \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ]\n }\n }\n },\n \"VideoRating\": {\n \"properties\": - {\n \"rating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"description\": - \"Rating of a video.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoRating\",\n \"description\": \"Basic details about - rating of a video.\"\n },\n \"VideoAbuseReport\": {\n \"type\": - \"object\",\n \"properties\": {\n \"secondaryReasonId\": {\n \"type\": - \"string\",\n \"description\": \"The specific, or secondary, reason - that this content is abusive (if available). The value is an abuse report - reason ID that is a valid secondary reason for the primary reason.\"\n },\n - \ \"language\": {\n \"description\": \"The language that the - content was viewed in.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n },\n \"comments\": - {\n \"description\": \"Additional comments regarding the abuse report.\",\n - \ \"type\": \"string\"\n },\n \"reasonId\": {\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoAbuseReport\"\n },\n \"LiveStreamHealthStatus\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamHealthStatus\",\n - \ \"properties\": {\n \"configurationIssues\": {\n \"description\": - \"The configurations issues on this stream\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ }\n },\n \"lastUpdateTimeSeconds\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - last time this status was updated (in seconds)\"\n },\n \"status\": + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": + \"CommentSnippet\",\n \"description\": \"The snippet object contains + basic details about the comment.\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the comment.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#comment\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n + \ }\n },\n \"id\": \"Comment\",\n \"description\": \"A + *comment* represents a single YouTube comment.\"\n },\n \"VideoPlayer\": + {\n \"id\": \"VideoPlayer\",\n \"type\": \"object\",\n \"properties\": + {\n \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e + tag that embeds a player that will play the video.\",\n \"type\": + \"string\"\n },\n \"embedHeight\": {\n \"type\": \"string\",\n + \ \"format\": \"int64\"\n },\n \"embedWidth\": {\n \"description\": + \"The embed width\",\n \"type\": \"string\",\n \"format\": + \"int64\"\n }\n },\n \"description\": \"Player to be used + for a video playback.\"\n },\n \"ThumbnailSetResponse\": {\n \"type\": + \"object\",\n \"id\": \"ThumbnailSetResponse\",\n \"properties\": + {\n \"items\": {\n \"description\": \"A list of thumbnails.\",\n + \ \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n },\n + \ \"type\": \"array\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#thumbnailSetResponse\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"PlaylistItemContentDetails\": {\n \"id\": + \"PlaylistItemContentDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"startAt\": {\n \"description\": \"The time, measured + in seconds from the start of the video, when the video should start playing. + (The playlist owner can specify the times when the video should start and + stop playing when the video is played in the context of the playlist.) The + default value is 0.\",\n \"type\": \"string\"\n },\n \"videoId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + a video. To retrieve the video resource, set the id query parameter to this + value in your API request.\",\n \"type\": \"string\"\n },\n + \ \"note\": {\n \"description\": \"A user-generated note for + this item.\",\n \"type\": \"string\"\n },\n \"endAt\": + {\n \"description\": \"The time, measured in seconds from the start + of the video, when the video should stop playing. (The playlist owner can + specify the times when the video should start and stop playing when the video + is played in the context of the playlist.) By default, assume that the video.endTime + is the end of the video.\",\n \"type\": \"string\"\n },\n + \ \"videoPublishedAt\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The date and time that the video + was published to YouTube.\"\n }\n }\n },\n \"ThirdPartyLinkStatus\": + {\n \"description\": \"The third-party link status object contains information + about the status of the link.\",\n \"id\": \"ThirdPartyLinkStatus\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"linkStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"good\",\n \"ok\",\n - \ \"bad\",\n \"noData\",\n \"revoked\"\n ],\n - \ \"description\": \"The status code of this stream\"\n }\n - \ }\n },\n \"VideoAbuseReportReason\": {\n \"type\": \"object\",\n - \ \"description\": \"A `__videoAbuseReportReason__` resource identifies + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"unknown\",\n \"failed\",\n \"pending\",\n + \ \"linked\"\n ]\n }\n }\n },\n \"Subscription\": + {\n \"description\": \"A *subscription* resource contains information + about a YouTube user subscription. A subscription notifies a user when new + videos are added to a channel or when another user takes one of several actions + on YouTube, such as uploading a video, rating a video, or commenting on a + video.\",\n \"id\": \"Subscription\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"contentDetails\": {\n \"$ref\": + \"SubscriptionContentDetails\",\n \"description\": \"The contentDetails + object contains basic statistics about the subscription.\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the subscription.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": + \"The snippet object contains basic details about the subscription, including + its title and the channel that the user subscribed to.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"subscriberSnippet\": {\n \"$ref\": + \"SubscriptionSubscriberSnippet\",\n \"description\": \"The subscriberSnippet + object contains basic details about the subscriber.\"\n },\n \"kind\": + {\n \"default\": \"youtube#subscription\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"CommentSnippet\": + {\n \"type\": \"object\",\n \"description\": \"Basic details about + a comment, such as its author and text.\",\n \"properties\": {\n \"viewerRating\": + {\n \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n + \ ],\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The + entity is liked.\",\n \"The entity is disliked.\"\n ]\n + \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the video the comment refers to, if any.\"\n },\n \"authorProfileImageUrl\": + {\n \"description\": \"The URL for the avatar of the user who posted + the comment.\",\n \"type\": \"string\"\n },\n \"canRate\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the current viewer can rate this comment.\"\n },\n \"textOriginal\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"authorChannelUrl\": + {\n \"type\": \"string\",\n \"description\": \"Link to the + author's YouTube channel, if any.\"\n },\n \"likeCount\": {\n + \ \"description\": \"The total number of likes this comment has received.\",\n + \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n + \ \"authorChannelId\": {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n + \ },\n \"authorDisplayName\": {\n \"description\": \"The + name of the user who posted the comment.\",\n \"type\": \"string\"\n + \ },\n \"parentId\": {\n \"description\": \"The unique + id of the parent comment, only set for replies.\",\n \"type\": \"string\"\n + \ },\n \"textDisplay\": {\n \"description\": \"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.\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time when the comment was originally published.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"channelId\": + {\n \"description\": \"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.\",\n \"type\": + \"string\"\n },\n \"updatedAt\": {\n \"description\": + \"The date and time when the comment was last updated.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"moderationStatus\": + {\n \"enumDescriptions\": [\n \"The comment is available + for public display.\",\n \"The comment is awaiting review by a + moderator.\",\n \"\",\n \"The comment is unfit for display.\"\n + \ ],\n \"description\": \"The comment's moderation status. + Will not be set if the comments were requested through the id filter.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ]\n }\n },\n \"id\": \"CommentSnippet\"\n },\n + \ \"LiveBroadcastSnippet\": {\n \"description\": \"Basic broadcast + information.\",\n \"properties\": {\n \"scheduledEndTime\": {\n + \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time that the broadcast is scheduled to end.\"\n },\n + \ \"description\": {\n \"type\": \"string\",\n \"description\": + \"The broadcast's description. As with the title, you can set this field by + modifying the broadcast resource or by setting the description field of the + corresponding video resource.\"\n },\n \"publishedAt\": {\n + \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the broadcast was added to YouTube's live broadcast + schedule.\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the broadcast. For each nested + object in this object, the key is the name of the thumbnail image, and the + value is an object that contains other information about the thumbnail.\",\n + \ \"$ref\": \"ThumbnailDetails\"\n },\n \"liveChatId\": + {\n \"type\": \"string\",\n \"description\": \"The id of + the live chat for this broadcast.\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"The broadcast's title. Note that + the broadcast represents exactly one YouTube video. You can set this field + by modifying the broadcast resource or by setting the title field of the corresponding + video resource.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n }\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the channel that is publishing the broadcast.\"\n },\n \"actualEndTime\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time that the broadcast actually + ended. This information is only available once the broadcast's state is complete.\"\n + \ },\n \"scheduledStartTime\": {\n \"description\": + \"The date and time that the broadcast is scheduled to start.\",\n \"format\": + \"date-time\",\n \"annotations\": {\n \"required\": [\n + \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"type\": \"string\"\n },\n + \ \"isDefaultBroadcast\": {\n \"type\": \"boolean\",\n \"description\": + \"Indicates whether this broadcast is the default broadcast. Internal only.\"\n + \ },\n \"actualStartTime\": {\n \"description\": \"The + date and time that the broadcast actually started. This information is only + available once the broadcast's state is live.\",\n \"type\": \"string\",\n + \ \"format\": \"date-time\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveBroadcastSnippet\"\n },\n \"VideoAbuseReportReason\": + {\n \"description\": \"A `__videoAbuseReportReason__` resource identifies a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReason\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"description\": \"The - ID of this abuse report reason.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n }\n },\n \"id\": \"VideoAbuseReportReason\"\n - \ },\n \"Playlist\": {\n \"type\": \"object\",\n \"id\": \"Playlist\",\n + are used with `video.ReportAbuse`.\",\n \"properties\": {\n \"snippet\": + {\n \"description\": \"The `snippet` object contains basic details + about the abuse report reason.\",\n \"$ref\": \"VideoAbuseReportReasonSnippet\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#videoAbuseReportReason\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of this abuse report reason.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"VideoAbuseReportReason\"\n },\n \"LiveChatModeratorSnippet\": + {\n \"properties\": {\n \"liveChatId\": {\n \"description\": + \"The ID of the live chat this moderator can act on.\",\n \"type\": + \"string\"\n },\n \"moderatorDetails\": {\n \"$ref\": + \"ChannelProfileDetails\",\n \"description\": \"Details about the + moderator.\"\n }\n },\n \"id\": \"LiveChatModeratorSnippet\",\n + \ \"type\": \"object\"\n },\n \"LiveChatModerator\": {\n \"type\": + \"object\",\n \"id\": \"LiveChatModerator\",\n \"description\": + \"A *liveChatModerator* resource represents a moderator for a YouTube live + chat. A chat moderator has the ability to ban/unban users from a chat, remove + message, etc.\",\n \"properties\": {\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n \"default\": + \"youtube#liveChatModerator\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube assigns to uniquely identify the moderator.\"\n }\n + \ }\n },\n \"SubscriptionSnippet\": {\n \"properties\": {\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the subscriber's channel.\"\n + \ },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel title for the channel that the subscription + belongs to.\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time that the subscription was created.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The subscription's + details.\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"The subscription's title.\"\n },\n + \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The id object contains information about the channel that the user subscribed + to.\",\n \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n + \ ]\n }\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"SubscriptionSnippet\",\n \"description\": \"Basic details + about a subscription, including title, description and thumbnails of the subscribed + item.\"\n },\n \"Playlist\": {\n \"properties\": {\n \"localizations\": + {\n \"description\": \"Localizations for different languages\",\n + \ \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n + \ },\n \"type\": \"object\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the playlist.\"\n },\n \"contentDetails\": + {\n \"description\": \"The contentDetails object contains information + like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n },\n + \ \"player\": {\n \"description\": \"The player object contains + information that you would use to play the playlist in an embedded player.\",\n + \ \"$ref\": \"PlaylistPlayer\"\n },\n \"kind\": {\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n + \ \"default\": \"youtube#playlist\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the playlist, such as its title and description.\",\n \"$ref\": + \"PlaylistSnippet\"\n },\n \"status\": {\n \"description\": + \"The status object contains status information for the playlist.\",\n \"$ref\": + \"PlaylistStatus\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n \ \"description\": \"A *playlist* resource represents a YouTube playlist. A playlist is a collection of videos that can be viewed sequentially and shared with other users. A playlist can contain up to 200 videos, and YouTube does @@ -5669,519 +3405,2796 @@ interactions: the playlist IDs for each of these lists from the channel resource for a given channel. You can then use the playlistItems.list method to retrieve any of those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods.\",\n \"properties\": - {\n \"player\": {\n \"description\": \"The player object contains - information that you would use to play the playlist in an embedded player.\",\n - \ \"$ref\": \"PlaylistPlayer\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"additionalProperties\": {\n - \ \"$ref\": \"PlaylistLocalization\"\n },\n \"description\": - \"Localizations for different languages\"\n },\n \"status\": - {\n \"$ref\": \"PlaylistStatus\",\n \"description\": \"The - status object contains status information for the playlist.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistSnippet\",\n \"description\": \"The snippet object contains - basic details about the playlist, such as its title and description.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#playlist\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n }\n - \ }\n },\n \"VideoAbuseReportReasonListResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of valid abuse reasons that are used with `video.ReportAbuse`.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The `visitorId` identifies the visitor.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"GeoPoint\": {\n \"id\": \"GeoPoint\",\n \"type\": - \"object\",\n \"description\": \"Geographical coordinates of a point, - in WGS84.\",\n \"properties\": {\n \"latitude\": {\n \"format\": - \"double\",\n \"description\": \"Latitude in degrees.\",\n \"type\": - \"number\"\n },\n \"altitude\": {\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n },\n \"longitude\": - {\n \"format\": \"double\",\n \"description\": \"Longitude - in degrees.\",\n \"type\": \"number\"\n }\n }\n },\n - \ \"SuperChatEvent\": {\n \"description\": \"A `__superChatEvent__` - resource represents a Super Chat purchase on a YouTube channel.\",\n \"id\": - \"SuperChatEvent\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the Super Chat event.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The `snippet` - object contains basic details about the Super Chat event.\",\n \"$ref\": - \"SuperChatEventSnippet\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#superChatEvent\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n - \ }\n }\n },\n \"MembershipsDurationAtLevel\": {\n \"properties\": - {\n \"level\": {\n \"type\": \"string\",\n \"description\": - \"Pricing level ID.\"\n },\n \"memberSince\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the user - became a continuous member for the given level.\"\n },\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - for the given level in complete months (the time is rounded down to the nearest - integer).\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"MembershipsDurationAtLevel\"\n - \ },\n \"MembershipsLevelListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"MembershipsLevelListResponse\",\n \"properties\": {\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of pricing - levels offered by a creator to the fans.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#membershipsLevelListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ }\n }\n },\n \"ChannelSection\": {\n \"id\": \"ChannelSection\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the channel section, such as its type, style and title.\",\n \"$ref\": - \"ChannelSectionSnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n - \ \"description\": \"The targeting object contains basic targeting - settings about the channel section.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"default\": \"youtube#channelSection\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"description\": - \"Localizations for different languages\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ChannelSectionContentDetails\",\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\"\n }\n - \ }\n },\n \"VideoCategoryListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoCategoryListResponse\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n }\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoCategoryListResponse\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"type\": \"object\",\n \"properties\": {\n \"allowed\": - {\n \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"blocked\": - {\n \"description\": \"A list of region codes that identify countries - where the video is blocked. If this property is present and a country is not - listed in its value, then the video is viewable in that country. If this property - is present and contains an empty list, the video is viewable in all countries.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"description\": \"DEPRECATED - Region restriction of the video.\",\n \"id\": \"VideoContentDetailsRegionRestriction\"\n - \ },\n \"MembershipsLevelSnippet\": {\n \"properties\": {\n \"levelDetails\": - {\n \"description\": \"Details about the pricing level.\",\n \"$ref\": - \"LevelDetails\"\n },\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"type\": \"object\"\n },\n \"PlaylistItemContentDetails\": {\n - \ \"properties\": {\n \"videoPublishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the video was published to YouTube.\"\n },\n - \ \"note\": {\n \"type\": \"string\",\n \"description\": - \"A user-generated note for this item.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify a video. To retrieve the video resource, - set the id query parameter to this value in your API request.\"\n },\n - \ \"endAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\"\n - \ },\n \"startAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\"\n }\n },\n \"id\": \"PlaylistItemContentDetails\",\n - \ \"type\": \"object\"\n },\n \"PlaylistContentDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"itemCount\": {\n \"description\": - \"The number of videos in the playlist.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n }\n },\n \"id\": \"PlaylistContentDetails\"\n - \ },\n \"Channel\": {\n \"description\": \"A *channel* resource - contains information about a YouTube channel.\",\n \"type\": \"object\",\n - \ \"id\": \"Channel\",\n \"properties\": {\n \"contentDetails\": - {\n \"description\": \"The contentDetails object encapsulates information - about the channel's content.\",\n \"$ref\": \"ChannelContentDetails\"\n - \ },\n \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n - \ \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\"\n - \ },\n \"localizations\": {\n \"description\": \"Localizations - for different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelLocalization\"\n },\n \"type\": \"object\"\n },\n - \ \"status\": {\n \"description\": \"The status object encapsulates - information about the privacy status of the channel.\",\n \"$ref\": - \"ChannelStatus\"\n },\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel.\",\n \"type\": \"string\"\n },\n - \ \"contentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#channel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"type\": \"string\"\n },\n \"conversionPings\": {\n - \ \"$ref\": \"ChannelConversionPings\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\"\n },\n \"brandingSettings\": - {\n \"$ref\": \"ChannelBrandingSettings\",\n \"description\": - \"The brandingSettings object encapsulates information about the branding - of the channel.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel, such as its - title, description, and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n - \ }\n }\n },\n \"ChannelStatus\": {\n \"description\": - \"JSON template for the status part of a channel.\",\n \"id\": \"ChannelStatus\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"isLinked\": {\n - \ \"description\": \"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.\",\n \"type\": \"boolean\"\n },\n \"longUploadsStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n + the playlistItems.insert and playlistItems.delete methods.\",\n \"type\": + \"object\",\n \"id\": \"Playlist\"\n },\n \"ActivityContentDetails\": + {\n \"properties\": {\n \"recommendation\": {\n \"description\": + \"The recommendation object contains information about a recommended resource. + This property is only present if the snippet.type is recommendation.\",\n + \ \"$ref\": \"ActivityContentDetailsRecommendation\"\n },\n + \ \"channelItem\": {\n \"description\": \"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.\",\n \"$ref\": + \"ActivityContentDetailsChannelItem\"\n },\n \"like\": {\n \"description\": + \"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.\",\n + \ \"$ref\": \"ActivityContentDetailsLike\"\n },\n \"bulletin\": + {\n \"description\": \"The bulletin object contains details about + a channel bulletin post. This object is only present if the snippet.type is + bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n },\n + \ \"promotedItem\": {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n + \ \"description\": \"The promotedItem object contains details about + a resource which is being promoted. This property is only present if the snippet.type + is promotedItem.\"\n },\n \"subscription\": {\n \"$ref\": + \"ActivityContentDetailsSubscription\",\n \"description\": \"The + subscription object contains information about a channel that a user subscribed + to. This property is only present if the snippet.type is subscription.\"\n + \ },\n \"social\": {\n \"$ref\": \"ActivityContentDetailsSocial\",\n + \ \"description\": \"The social object contains details about a social + network post. This property is only present if the snippet.type is social.\"\n + \ },\n \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n + \ \"description\": \"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.\"\n },\n \"upload\": {\n \"$ref\": + \"ActivityContentDetailsUpload\",\n \"description\": \"The upload + object contains information about the uploaded video. This property is only + present if the snippet.type is upload.\"\n },\n \"comment\": + {\n \"description\": \"The comment object contains information about + a resource that received a comment. This property is only present if the snippet.type + is comment.\",\n \"$ref\": \"ActivityContentDetailsComment\"\n },\n + \ \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n + \ \"description\": \"The playlistItem object contains information + about a new playlist item. This property is only present if the snippet.type + is playlistItem.\"\n }\n },\n \"description\": \"Details + about the content of an activity: the video that was shared, the channel that + was subscribed to, etc.\",\n \"id\": \"ActivityContentDetails\",\n \"type\": + \"object\"\n },\n \"VideoProcessingDetails\": {\n \"id\": \"VideoProcessingDetails\",\n + \ \"description\": \"Describes processing status and progress and availability + of some other Video resource parts.\",\n \"type\": \"object\",\n \"properties\": + {\n \"processingProgress\": {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n + \ \"description\": \"The processingProgress object contains information + about the progress YouTube has made in processing the video. The values are + really only relevant if the video's processing status is processing.\"\n },\n + \ \"fileDetailsAvailability\": {\n \"description\": \"This + value indicates whether file details are available for the uploaded video. + You can retrieve a video's file details by requesting the fileDetails part + in your videos.list() request.\",\n \"type\": \"string\"\n },\n + \ \"editorSuggestionsAvailability\": {\n \"description\": \"This + value indicates whether video editing suggestions, which might improve video + quality or the playback experience, are available for the video. You can retrieve + these suggestions by requesting the suggestions part in your videos.list() + request.\",\n \"type\": \"string\"\n },\n \"processingIssuesAvailability\": + {\n \"description\": \"This value indicates whether the video processing + engine has generated suggestions that might improve YouTube's ability to process + the the video, warnings that explain video processing problems, or errors + that cause video processing problems. You can retrieve these suggestions by + requesting the suggestions part in your videos.list() request.\",\n \"type\": + \"string\"\n },\n \"thumbnailsAvailability\": {\n \"type\": + \"string\",\n \"description\": \"This value indicates whether thumbnail + images have been generated for the video.\"\n },\n \"tagSuggestionsAvailability\": + {\n \"description\": \"This value indicates whether keyword (tag) + suggestions are available for the video. Tags can be added to a video's metadata + to make it easier for other users to find the video. You can retrieve these + suggestions by requesting the suggestions part in your videos.list() request.\",\n + \ \"type\": \"string\"\n },\n \"processingFailureReason\": + {\n \"type\": \"string\",\n \"enum\": [\n \"uploadFailed\",\n + \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"Privacy status of the channel.\"\n }\n - \ }\n },\n \"ThumbnailDetails\": {\n \"id\": \"ThumbnailDetails\",\n - \ \"properties\": {\n \"medium\": {\n \"description\": - \"The medium quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"standard\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The standard quality image for this resource.\"\n - \ },\n \"high\": {\n \"description\": \"The high quality - image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"maxres\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The maximum resolution quality image for this resource.\"\n },\n - \ \"default\": {\n \"description\": \"The default image for - this resource.\",\n \"$ref\": \"Thumbnail\"\n }\n },\n - \ \"description\": \"Internal representation of thumbnails for a YouTube - resource.\",\n \"type\": \"object\"\n },\n \"ActivitySnippet\": - {\n \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\",\n \"id\": - \"ActivitySnippet\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"groupId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel responsible for this activity\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel associated with - the activity.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \"The reason that YouTube failed to process the video. This property will + only have a value if the processingStatus property's value is failed.\"\n + \ },\n \"processingStatus\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's processing status. This value indicates + whether YouTube was able to process the video or if the video is still being + processed.\",\n \"enum\": [\n \"processing\",\n \"succeeded\",\n + \ \"failed\",\n \"terminated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n }\n }\n },\n \"Thumbnail\": {\n \"properties\": + {\n \"url\": {\n \"description\": \"The thumbnail image's + URL.\",\n \"type\": \"string\"\n },\n \"height\": {\n + \ \"type\": \"integer\",\n \"description\": \"(Optional) + Height of the thumbnail image.\",\n \"format\": \"uint32\"\n },\n + \ \"width\": {\n \"description\": \"(Optional) Width of the + thumbnail image.\",\n \"format\": \"uint32\",\n \"type\": + \"integer\"\n }\n },\n \"description\": \"A thumbnail is + an image representing a YouTube resource.\",\n \"id\": \"Thumbnail\",\n + \ \"type\": \"object\"\n },\n \"IngestionInfo\": {\n \"type\": + \"object\",\n \"id\": \"IngestionInfo\",\n \"description\": \"Describes + information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"properties\": + {\n \"streamName\": {\n \"type\": \"string\",\n \"description\": + \"The stream name that YouTube assigns to the video stream.\"\n },\n + \ \"backupIngestionAddress\": {\n \"description\": \"The backup + ingestion URL that you should use to stream video to YouTube. You have the + option of simultaneously streaming the content that you are sending to the + ingestionAddress to this URL.\",\n \"type\": \"string\"\n },\n + \ \"rtmpsIngestionAddress\": {\n \"type\": \"string\",\n \"description\": + \"This ingestion url may be used instead of ingestionAddress in order to stream + via RTMPS. Not applicable to non-RTMP streams.\"\n },\n \"ingestionAddress\": + {\n \"type\": \"string\",\n \"description\": \"The primary + ingestion URL that you should use to stream video to YouTube. You must stream + video to this URL. Depending on which application or tool you use to encode + your video stream, you may need to enter the stream URL and stream name separately + or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* + \"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"description\": + \"This ingestion url may be used instead of backupIngestionAddress in order + to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": + \"string\"\n }\n }\n },\n \"LiveChatMessageAuthorDetails\": + {\n \"id\": \"LiveChatMessageAuthorDetails\",\n \"properties\": + {\n \"isVerified\": {\n \"description\": \"Whether the author's + identity has been verified by YouTube.\",\n \"type\": \"boolean\"\n + \ },\n \"isChatModerator\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether the author is a moderator of the live + chat.\"\n },\n \"displayName\": {\n \"description\": + \"The channel's display name.\",\n \"type\": \"string\"\n },\n + \ \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": + \"The channels's avatar URL.\"\n },\n \"channelUrl\": {\n \"type\": + \"string\",\n \"description\": \"The channel's URL.\"\n },\n + \ \"isChatOwner\": {\n \"type\": \"boolean\",\n \"description\": + \"Whether the author is the owner of the live chat.\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The YouTube + channel ID.\"\n },\n \"isChatSponsor\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the author is a sponsor + of the live chat.\"\n }\n },\n \"type\": \"object\"\n },\n + \ \"MembershipsDurationAtLevel\": {\n \"id\": \"MembershipsDurationAtLevel\",\n + \ \"properties\": {\n \"level\": {\n \"type\": \"string\",\n + \ \"description\": \"Pricing level ID.\"\n },\n \"memberSince\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the user became a continuous member for the given level.\"\n + \ },\n \"memberTotalDurationMonths\": {\n \"description\": + \"The cumulative time the user has been a member for the given level in complete + months (the time is rounded down to the nearest integer).\",\n \"format\": + \"int32\",\n \"type\": \"integer\"\n }\n },\n \"type\": + \"object\"\n },\n \"InvideoTiming\": {\n \"type\": \"object\",\n + \ \"id\": \"InvideoTiming\",\n \"description\": \"Describes a temporal + position of a visual widget inside a video.\",\n \"properties\": {\n + \ \"durationMs\": {\n \"description\": \"Defines the duration + in milliseconds for which the promotion should be displayed. If missing, the + client should use the default.\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n },\n \"type\": {\n \"type\": \"string\",\n + \ \"description\": \"Describes a timing type. If the value is offsetFromStart, + then the offsetMs field represents an offset from the start of the video. + If the value is offsetFromEnd, then the offsetMs field represents an offset + from the end of the video.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"offsetFromStart\",\n + \ \"offsetFromEnd\"\n ]\n },\n \"offsetMs\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"Defines the time at which the promotion will appear. Depending on the value + of type the value of the offsetMs field will represent a time offset from + the start or from the end of the video, expressed in milliseconds.\"\n }\n + \ }\n },\n \"PlaylistSnippet\": {\n \"description\": \"Basic + details about a playlist, including title, description and thumbnails.\",\n + \ \"properties\": {\n \"defaultLanguage\": {\n \"description\": + \"The language of the playlist's default title and description.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"annotations\": {\n + \ \"required\": [\n \"youtube.playlists.insert\",\n + \ \"youtube.playlists.update\"\n ]\n },\n + \ \"type\": \"string\",\n \"description\": \"The playlist's + title.\"\n },\n \"localized\": {\n \"$ref\": \"PlaylistLocalization\",\n + \ \"description\": \"Localized title and description, read-only.\"\n + \ },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"format\": \"date-time\",\n \"description\": \"The date + and time that the playlist was created.\"\n },\n \"tags\": {\n + \ \"type\": \"array\",\n \"description\": \"Keyword tags + associated with the playlist.\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"thumbnailVideoId\": {\n \"type\": + \"string\",\n \"description\": \"Note: if the playlist has a custom + thumbnail, this field will not be populated. The video id selected by the + user that will be used as the thumbnail of this playlist. This field defaults + to the first publicly viewable video in the playlist, if: 1. The user has + never selected a video to be the thumbnail of the playlist. 2. The user selects + a video to be the thumbnail, and then removes that video from the playlist. + 3. The user selects a non-owned video to be the thumbnail, but that video + becomes private, or gets deleted.\"\n },\n \"description\": + {\n \"description\": \"The playlist's description.\",\n \"type\": + \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + playlist. 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.\"\n },\n \"channelTitle\": {\n \"description\": + \"The channel title of the channel that the video belongs to.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel that published the playlist.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"PlaylistSnippet\"\n },\n \"Entity\": {\n + \ \"id\": \"Entity\",\n \"type\": \"object\",\n \"properties\": + {\n \"url\": {\n \"type\": \"string\"\n },\n \"typeId\": + {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": + \"string\"\n }\n }\n },\n \"PlaylistItemSnippet\": {\n \"id\": + \"PlaylistItemSnippet\",\n \"type\": \"object\",\n \"description\": + \"Basic details about a playlist, including title, description and thumbnails. + Basic details of a YouTube Playlist item provided by the author. Next ID: + 15\",\n \"properties\": {\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images + associated with the playlist item. 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.\"\n },\n \"description\": + {\n \"description\": \"The item's description.\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the item was added to + the playlist.\",\n \"format\": \"date-time\"\n },\n \"position\": + {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The order in which the item appears in the playlist. The value uses a zero-based + index, so the first item has a position of 0, the second item has a position + of 1, and so forth.\"\n },\n \"playlistId\": {\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n + \ \"youtube.playlistItems.update\"\n ]\n },\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + thGe playlist that the playlist item is in.\"\n },\n \"title\": + {\n \"description\": \"The item's title.\",\n \"type\": + \"string\"\n },\n \"channelTitle\": {\n \"description\": + \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": + \"string\"\n },\n \"videoOwnerChannelTitle\": {\n \"description\": + \"Channel title for the channel this video belongs to.\",\n \"type\": + \"string\"\n },\n \"videoOwnerChannelId\": {\n \"description\": + \"Channel id for the channel this video belongs to.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the user that added the item to the playlist.\"\n },\n \"resourceId\": + {\n \"description\": \"The id object contains information that can + be used to uniquely identify the resource that is included in the playlist + as the playlist item.\",\n \"$ref\": \"ResourceId\",\n \"annotations\": + {\n \"required\": [\n \"youtube.playlistItems.insert\",\n + \ \"youtube.playlistItems.update\"\n ]\n }\n + \ }\n }\n },\n \"VideoLiveStreamingDetails\": {\n \"type\": + \"object\",\n \"properties\": {\n \"concurrentViewers\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + number of viewers currently watching the broadcast. The property and its value + will be present if the broadcast has current viewers and the broadcast owner + has not hidden the viewcount for the video. Note that YouTube stops tracking + the number of concurrent viewers for a broadcast when the broadcast ends. + So, this property would not identify the number of viewers watching an archived + video of a live broadcast that already ended.\"\n },\n \"actualStartTime\": + {\n \"description\": \"The time that the broadcast actually started. + This value will not be available until the broadcast begins.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"actualEndTime\": + {\n \"description\": \"The time that the broadcast actually ended. + This value will not be available until the broadcast is over.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"scheduledStartTime\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The time that the broadcast is scheduled to begin.\"\n + \ },\n \"activeLiveChatId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the currently active live chat attached + to this video. This field is filled only if the video is a currently live + broadcast that has live chat. Once the broadcast transitions to complete this + field will be removed and the live chat closed down. For persistent broadcasts + that live chat id will no longer be tied to this video but rather to the new + video being displayed at the persistent page.\"\n },\n \"scheduledEndTime\": + {\n \"description\": \"The time that the broadcast is scheduled to + end. If the value is empty or the property is not present, then the broadcast + is scheduled to contiue indefinitely.\",\n \"type\": \"string\",\n + \ \"format\": \"date-time\"\n }\n },\n \"id\": \"VideoLiveStreamingDetails\",\n + \ \"description\": \"Details about the live streaming metadata.\"\n },\n + \ \"MembershipsLevelSnippet\": {\n \"properties\": {\n \"creatorChannelId\": + {\n \"description\": \"The id of the channel that's offering channel + memberships.\",\n \"type\": \"string\"\n },\n \"levelDetails\": + {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details + about the pricing level.\"\n }\n },\n \"id\": \"MembershipsLevelSnippet\",\n + \ \"type\": \"object\"\n },\n \"LiveStreamConfigurationIssue\": + {\n \"type\": \"object\",\n \"properties\": {\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The long-form + description of the issue and how to resolve it.\"\n },\n \"type\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of activity that the resource describes.\",\n \"enum\": - [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ]\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the video was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"title\": {\n \"description\": - \"The title of the resource primarily associated with the activity.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The description of the resource primarily associated with the activity. - @mutable youtube.activities.insert\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ChannelConversionPings\": {\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"type\": \"object\",\n - \ \"id\": \"ChannelConversionPings\",\n \"properties\": {\n \"pings\": - {\n \"description\": \"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.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ }\n }\n }\n },\n \"Video\": {\n \"type\": - \"object\",\n \"description\": \"A *video* resource represents a YouTube - video.\",\n \"properties\": {\n \"processingDetails\": {\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoProcessingDetails\"\n },\n \"status\": - {\n \"$ref\": \"VideoStatus\",\n \"description\": \"The - status object contains information about the video's uploading, processing, - and privacy statuses.\"\n },\n \"recordingDetails\": {\n \"$ref\": - \"VideoRecordingDetails\",\n \"description\": \"The recordingDetails - object encapsulates information about the location, date and address where - the video was recorded.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\"\n },\n \"localizations\": - {\n \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\",\n \"type\": \"object\"\n },\n \"contentDetails\": - {\n \"$ref\": \"VideoContentDetails\",\n \"description\": - \"The contentDetails object contains information about the video content, - including the length of the video and its aspect ratio.\"\n },\n \"ageGating\": - {\n \"$ref\": \"VideoAgeGating\",\n \"description\": \"Age - restriction details related to a video. This data can only be retrieved by - the video owner.\"\n },\n \"monetizationDetails\": {\n \"$ref\": - \"VideoMonetizationDetails\",\n \"description\": \"The monetizationDetails - object encapsulates information about the monetization status of the video.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#video\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#video\\\".\"\n },\n \"player\": - {\n \"description\": \"The player object contains information that - you would use to play the video in an embedded player.\",\n \"$ref\": - \"VideoPlayer\"\n },\n \"fileDetails\": {\n \"$ref\": - \"VideoFileDetails\",\n \"description\": \"The fileDetails object - encapsulates information about the video file that was uploaded to YouTube, - including the file's resolution, duration, audio and video codecs, stream - bitrates, and more. This data can only be retrieved by the video owner.\"\n - \ },\n \"suggestions\": {\n \"$ref\": \"VideoSuggestions\",\n - \ \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\"\n - \ },\n \"liveStreamingDetails\": {\n \"$ref\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"statistics\": {\n \"$ref\": - \"VideoStatistics\",\n \"description\": \"The statistics object contains - statistics about the video.\"\n },\n \"snippet\": {\n \"$ref\": - \"VideoSnippet\",\n \"description\": \"The snippet object contains - basic details about the video, such as its title, description, and category.\"\n - \ },\n \"topicDetails\": {\n \"$ref\": \"VideoTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the video.\"\n },\n \"projectDetails\": - {\n \"$ref\": \"VideoProjectDetails\",\n \"description\": - \"The projectDetails object contains information about the project specific - video metadata. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ }\n },\n \"id\": \"Video\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"CommentSnippetAuthorChannelId\",\n \"type\": - \"object\",\n \"description\": \"The id of the author's YouTube channel, - if any.\"\n },\n \"ChannelContentOwnerDetails\": {\n \"id\": \"ChannelContentOwnerDetails\",\n - \ \"properties\": {\n \"timeLinked\": {\n \"description\": - \"The date and time when the channel was linked to the content owner.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"contentOwner\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the content owner linked to the channel.\"\n }\n },\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"type\": - \"object\"\n },\n \"ChannelContentDetails\": {\n \"id\": \"ChannelContentDetails\",\n - \ \"properties\": {\n \"relatedPlaylists\": {\n \"type\": - \"object\",\n \"properties\": {\n \"likes\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"uploads\": + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The kind of error happening.\",\n \"enum\": [\n \"gopSizeOver\",\n + \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n + \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n + \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n + \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n + \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n + \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n + \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n + \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n + \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n + \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n + \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n + \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n + \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n + \ ]\n },\n \"severity\": {\n \"description\": + \"How severe this issue is to the stream.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n + \ ],\n \"type\": \"string\"\n },\n \"reason\": + {\n \"type\": \"string\",\n \"description\": \"The short-form + reason for this issue.\"\n }\n },\n \"id\": \"LiveStreamConfigurationIssue\"\n + \ }\n },\n \"fullyEncodeReservedExpansion\": true,\n \"ownerName\": \"Google\",\n + \ \"parameters\": {\n \"upload_protocol\": {\n \"description\": \"Upload + protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"callback\": {\n + \ \"location\": \"query\",\n \"description\": \"JSONP\",\n \"type\": + \"string\"\n },\n \"prettyPrint\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Returns response with indentations and line breaks.\",\n + \ \"location\": \"query\",\n \"default\": \"true\"\n },\n \"alt\": + {\n \"enumDescriptions\": [\n \"Responses with Content-Type of + application/json\",\n \"Media download with context-dependent Content-Type\",\n + \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n + \ \"description\": \"Data format for response.\",\n \"location\": + \"query\",\n \"default\": \"json\",\n \"type\": \"string\",\n \"enum\": + [\n \"json\",\n \"media\",\n \"proto\"\n ]\n },\n + \ \"$.xgafv\": {\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"description\": + \"V1 error format.\",\n \"enum\": [\n \"1\",\n \"2\"\n + \ ],\n \"type\": \"string\"\n },\n \"quotaUser\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n + \ \"access_token\": {\n \"location\": \"query\",\n \"description\": + \"OAuth access token.\",\n \"type\": \"string\"\n },\n \"oauth_token\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": + \"OAuth 2.0 token for the current user.\"\n },\n \"key\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"fields\": + {\n \"location\": \"query\",\n \"description\": \"Selector specifying + which fields to include in a partial response.\",\n \"type\": \"string\"\n + \ },\n \"uploadType\": {\n \"description\": \"Legacy upload protocol + for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n \"basePath\": \"\",\n + \ \"documentationLink\": \"https://developers.google.com/youtube/\",\n \"title\": + \"YouTube Data API v3\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n + \ \"ownerDomain\": \"google.com\",\n \"servicePath\": \"\",\n \"description\": + \"The YouTube Data API v3 is an API that provides access to YouTube data, + such as videos, playlists, and channels.\",\n \"revision\": \"20230305\",\n + \ \"discoveryVersion\": \"v1\",\n \"resources\": {\n \"captions\": {\n + \ \"methods\": {\n \"delete\": {\n \"description\": \"Deletes + a resource.\",\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"flatPath\": \"youtube/v3/captions\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"onBehalfOf\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"ID of the Google+ Page for the channel that + the request is be on behalf of\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"path\": \"youtube/v3/captions\",\n + \ \"id\": \"youtube.captions.delete\"\n },\n \"insert\": + {\n \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n + \ \"application/octet-stream\",\n \"*/*\"\n ],\n + \ \"protocols\": {\n \"resumable\": {\n \"multipart\": + true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n + \ },\n \"simple\": {\n \"multipart\": + true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n + \ },\n \"maxSize\": \"104857600\"\n },\n \"path\": + \"youtube/v3/captions\",\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": + \"Caption\"\n },\n \"supportsMediaUpload\": true,\n \"id\": + \"youtube.captions.insert\",\n \"request\": {\n \"$ref\": + \"Caption\"\n },\n \"parameters\": {\n \"onBehalfOf\": + {\n \"location\": \"query\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\",\n \"type\": \"string\"\n },\n \"sync\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Extra parameter to allow automatically syncing + the uploaded caption/transcript with the audio.\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the caption resource parts that the API response + will include. Set the parameter value to snippet.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"required\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ]\n },\n + \ \"download\": {\n \"flatPath\": \"youtube/v3/captions/{id}\",\n + \ \"useMediaDownloadService\": true,\n \"id\": \"youtube.captions.download\",\n + \ \"description\": \"Downloads a caption track.\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"supportsMediaDownload\": + true,\n \"path\": \"youtube/v3/captions/{id}\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\"\n },\n + \ \"id\": {\n \"required\": true,\n \"location\": + \"path\",\n \"description\": \"The ID of the caption track to + download, required for One Platform.\",\n \"type\": \"string\"\n + \ },\n \"tfmt\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Convert + the captions into this format. Supported options are sbv, srt, and vtt.\"\n + \ },\n \"onBehalfOf\": {\n \"location\": + \"query\",\n \"description\": \"ID of the Google+ Page for the + channel that the request is be on behalf of\",\n \"type\": \"string\"\n + \ },\n \"tlang\": {\n \"type\": \"string\",\n + \ \"description\": \"tlang is the language code; machine translate + the captions into this language.\",\n \"location\": \"query\"\n + \ }\n },\n \"httpMethod\": \"GET\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n },\n \"list\": {\n \"parameters\": {\n + \ \"onBehalfOfContentOwner\": {\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"location\": \"query\"\n + \ },\n \"onBehalfOf\": {\n \"description\": + \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"id\": {\n \"description\": \"Returns + the captions with the given IDs for Stubby or Apiary.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true\n },\n \"videoId\": {\n \"required\": + true,\n \"type\": \"string\",\n \"description\": + \"Returns the captions for the specified video.\",\n \"location\": + \"query\"\n }\n },\n \"httpMethod\": \"GET\",\n + \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/captions\",\n \"parameterOrder\": + [\n \"part\",\n \"videoId\"\n ],\n \"id\": + \"youtube.captions.list\",\n \"flatPath\": \"youtube/v3/captions\"\n + \ },\n \"update\": {\n \"id\": \"youtube.captions.update\",\n + \ \"path\": \"youtube/v3/captions\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Updates an existing resource.\",\n \"response\": + {\n \"$ref\": \"Caption\"\n },\n \"httpMethod\": + \"PUT\",\n \"flatPath\": \"youtube/v3/captions\",\n \"supportsMediaUpload\": + true,\n \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true,\n \"repeated\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOf\": + {\n \"description\": \"ID of the Google+ Page for the channel + that the request is on behalf of.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"sync\": + {\n \"location\": \"query\",\n \"type\": \"boolean\",\n + \ \"description\": \"Extra parameter to allow automatically syncing + the uploaded caption/transcript with the audio.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*Note:* + This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* + parameter indicates that the request's authorization credentials identify + a YouTube CMS user who is acting on behalf of the content owner specified + in the parameter value. This parameter is intended for YouTube content partners + that own and manage many different YouTube channels. It allows content owners + to authenticate once and get access to all their video and channel data, without + having to provide authentication credentials for each individual channel. + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\",\n \"location\": \"query\"\n + \ }\n },\n \"mediaUpload\": {\n \"accept\": + [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ],\n \"maxSize\": \"104857600\",\n + \ \"protocols\": {\n \"simple\": {\n \"path\": + \"/upload/youtube/v3/captions\",\n \"multipart\": true\n },\n + \ \"resumable\": {\n \"multipart\": true,\n \"path\": + \"/resumable/upload/youtube/v3/captions\"\n }\n }\n + \ },\n \"request\": {\n \"$ref\": \"Caption\"\n + \ }\n }\n }\n },\n \"youtube\": {\n \"resources\": + {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": + {\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"request\": + {\n \"$ref\": \"CommentThread\"\n },\n \"path\": + \"youtube/v3/commentThreads\",\n \"description\": \"Updates an + existing resource.\",\n \"httpMethod\": \"PUT\",\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"repeated\": true\n + \ }\n },\n \"response\": {\n \"$ref\": + \"CommentThread\"\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"parameterOrder\": []\n }\n }\n }\n + \ }\n },\n \"liveChatMessages\": {\n \"methods\": {\n \"delete\": + {\n \"path\": \"youtube/v3/liveChat/messages\",\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"id\": \"youtube.liveChatMessages.delete\",\n \"httpMethod\": + \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"description\": + \"Deletes a chat message.\"\n },\n \"insert\": {\n \"flatPath\": + \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.insert\",\n + \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n + \ \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"required\": true,\n \"description\": \"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.\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/liveChat/messages\"\n },\n \"list\": {\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"parameters\": {\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"liveChatId\": + {\n \"required\": true,\n \"description\": \"The + id of the live chat for which comments should be returned.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"hl\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Specifies the localization language in which + the system messages should be returned.\"\n },\n \"profileImageSize\": + {\n \"maximum\": \"720\",\n \"minimum\": \"16\",\n + \ \"location\": \"query\",\n \"description\": \"Specifies + the size of the profile image that should be returned for each user.\",\n + \ \"type\": \"integer\",\n \"format\": \"uint32\"\n + \ },\n \"part\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"The + *part* parameter specifies the liveChatComment resource parts that the API + response will include. Supported values are id and snippet.\",\n \"required\": + true,\n \"repeated\": true\n },\n \"maxResults\": + {\n \"location\": \"query\",\n \"maximum\": \"2000\",\n + \ \"default\": \"500\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"minimum\": \"200\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"path\": \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.list\",\n + \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"response\": + {\n \"$ref\": \"LiveChatMessageListResponse\"\n }\n }\n + \ }\n },\n \"playlistItems\": {\n \"methods\": {\n \"insert\": + {\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"required\": + true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"request\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"flatPath\": + \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.insert\",\n + \ \"httpMethod\": \"POST\"\n },\n \"delete\": {\n \"parameterOrder\": + [\n \"id\"\n ],\n \"parameters\": {\n \"id\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.playlistItems.delete\",\n + \ \"flatPath\": \"youtube/v3/playlistItems\"\n },\n \"update\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"id\": + \"youtube.playlistItems.update\",\n \"request\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"response\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"httpMethod\": + \"PUT\",\n \"description\": \"Updates an existing resource.\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/playlistItems\"\n + \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/playlistItems\",\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.playlistItems.list\",\n \"parameters\": + {\n \"maxResults\": {\n \"default\": \"5\",\n \"location\": + \"query\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"type\": \"integer\",\n \"minimum\": \"0\",\n + \ \"maximum\": \"50\",\n \"format\": \"uint32\"\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"description\": \"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.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true\n },\n \"videoId\": {\n \"location\": + \"query\",\n \"description\": \"Return the playlist items associated + with the given video ID.\",\n \"type\": \"string\"\n },\n + \ \"playlistId\": {\n \"description\": \"Return the + playlist items within the given playlist.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"PlaylistItemListResponse\"\n }\n }\n }\n },\n \"channelBanners\": + {\n \"methods\": {\n \"insert\": {\n \"response\": {\n + \ \"$ref\": \"ChannelBannerResource\"\n },\n \"description\": + \"Inserts a new resource into this collection.\",\n \"mediaUpload\": + {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ],\n \"maxSize\": + \"6291456\",\n \"protocols\": {\n \"resumable\": {\n + \ \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n + \ \"multipart\": true\n },\n \"simple\": + {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n + \ }\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n + \ ],\n \"id\": \"youtube.channelBanners.insert\",\n \"supportsMediaUpload\": + true,\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n },\n \"channelId\": {\n \"description\": + \"Unused, channel_id is currently derived from the security context of the + requestor.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"httpMethod\": \"POST\",\n + \ \"path\": \"youtube/v3/channelBanners/insert\",\n \"request\": + {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"parameterOrder\": + [],\n \"flatPath\": \"youtube/v3/channelBanners/insert\"\n }\n + \ }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": + {\n \"parameters\": {\n \"externalChannelId\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"repeated\": true\n + \ }\n },\n \"request\": {\n \"$ref\": + \"TestItem\"\n },\n \"id\": \"youtube.tests.insert\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"TestItem\"\n },\n \"httpMethod\": + \"POST\",\n \"description\": \"POST method.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"path\": \"youtube/v3/tests\",\n \"flatPath\": \"youtube/v3/tests\"\n + \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n + \ \"set\": {\n \"path\": \"youtube/v3/thumbnails/set\",\n \"mediaUpload\": + {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ],\n \"protocols\": + {\n \"resumable\": {\n \"multipart\": true,\n + \ \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n + \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n + \ \"multipart\": true\n }\n },\n \"maxSize\": + \"2097152\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"videoId\": {\n \"required\": + true,\n \"description\": \"Returns the Thumbnail with the given + video IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"response\": + {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"description\": + \"As this is not an insert in a strict sense (it supports uploading/setting + of a thumbnail for multiple videos, which doesn't result in creation of a + single resource), I use a custom verb here.\",\n \"id\": \"youtube.thumbnails.set\",\n + \ \"supportsMediaUpload\": true,\n \"parameterOrder\": [\n + \ \"videoId\"\n ],\n \"flatPath\": \"youtube/v3/thumbnails/set\"\n + \ }\n }\n },\n \"liveChatBans\": {\n \"methods\": {\n + \ \"insert\": {\n \"path\": \"youtube/v3/liveChat/bans\",\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"repeated\": + true,\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n + \ },\n \"description\": \"Inserts a new resource into this + collection.\",\n \"request\": {\n \"$ref\": \"LiveChatBan\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveChatBans.insert\",\n + \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n },\n + \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"delete\": {\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.liveChatBans.delete\",\n \"httpMethod\": + \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"description\": + \"Deletes a chat ban.\",\n \"parameters\": {\n \"id\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"path\": + \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": [\n \"id\"\n + \ ]\n }\n }\n },\n \"videos\": {\n \"methods\": + {\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"request\": {\n \"$ref\": + \"Video\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"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.\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"id\": \"youtube.videos.update\",\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"response\": {\n \"$ref\": \"Video\"\n },\n + \ \"description\": \"Updates an existing resource.\",\n \"path\": + \"youtube/v3/videos\"\n },\n \"delete\": {\n \"id\": + \"youtube.videos.delete\",\n \"description\": \"Deletes a resource.\",\n + \ \"flatPath\": \"youtube/v3/videos\",\n \"httpMethod\": + \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n }\n },\n + \ \"path\": \"youtube/v3/videos\"\n },\n \"getRating\": + {\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.videos.getRating\",\n + \ \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"description\": \"Retrieves the ratings that the authorized user + gave to a list of specified videos.\",\n \"path\": \"youtube/v3/videos/getRating\",\n + \ \"flatPath\": \"youtube/v3/videos/getRating\",\n \"response\": + {\n \"$ref\": \"VideoGetRatingResponse\"\n }\n },\n + \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"Video\"\n + \ },\n \"description\": \"Inserts a new resource into this + collection.\",\n \"supportsMediaUpload\": true,\n \"flatPath\": + \"youtube/v3/videos\",\n \"request\": {\n \"$ref\": \"Video\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": + {\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true,\n \"location\": \"query\"\n },\n \"notifySubscribers\": + {\n \"description\": \"Notify the channel subscribers about the + new video. As default, the notification is enabled.\",\n \"default\": + \"true\",\n \"type\": \"boolean\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"autoLevels\": + {\n \"description\": \"Should auto-levels be applied to the upload.\",\n + \ \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"stabilize\": {\n \"description\": + \"Should stabilize be applied to the upload.\",\n \"type\": \"boolean\",\n + \ \"location\": \"query\"\n }\n },\n \"path\": + \"youtube/v3/videos\",\n \"mediaUpload\": {\n \"protocols\": + {\n \"simple\": {\n \"multipart\": true,\n \"path\": + \"/upload/youtube/v3/videos\"\n },\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": + true\n }\n },\n \"maxSize\": \"274877906944\",\n + \ \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n + \ ]\n },\n \"id\": \"youtube.videos.insert\"\n + \ },\n \"list\": {\n \"description\": \"Retrieves a + list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": + \"VideoListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/videos\",\n \"path\": \"youtube/v3/videos\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.videos.list\",\n \"parameters\": + {\n \"pageToken\": {\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"regionCode\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Use a chart that is specific to the specified + region\"\n },\n \"videoCategoryId\": {\n \"type\": + \"string\",\n \"description\": \"Use chart that is specific to + the specified video category\",\n \"location\": \"query\",\n + \ \"default\": \"0\"\n },\n \"maxResults\": + {\n \"maximum\": \"50\",\n \"type\": \"integer\",\n + \ \"description\": \"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.\",\n + \ \"location\": \"query\",\n \"minimum\": \"1\",\n + \ \"default\": \"5\",\n \"format\": \"uint32\"\n + \ },\n \"maxWidth\": {\n \"maximum\": \"8192\",\n + \ \"type\": \"integer\",\n \"format\": \"int32\",\n + \ \"minimum\": \"72\",\n \"location\": \"query\",\n + \ \"description\": \"Return the player with maximum height specified + in\"\n },\n \"id\": {\n \"description\": + \"Return videos with the given ids.\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"maxHeight\": + {\n \"type\": \"integer\",\n \"maximum\": \"8192\",\n + \ \"location\": \"query\",\n \"minimum\": \"72\",\n + \ \"format\": \"int32\"\n },\n \"part\": + {\n \"description\": \"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.\",\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"hl\": {\n + \ \"description\": \"Stands for \\\"host language\\\". Specifies + the localization language of the metadata to be filled into snippet.localized. + The field is filled with the default metadata if there is no localization + in the specified language. The parameter value must be a language code included + in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"myRating\": {\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"\",\n \"The + entity is liked.\",\n \"The entity is disliked.\"\n ],\n + \ \"description\": \"Return videos liked/disliked by the authenticated + user. Does not support RateType.RATED_TYPE_NONE.\"\n },\n \"chart\": + {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Return the most popular videos + for the specified content region and video category.\"\n ],\n + \ \"description\": \"Return the videos that are in the specified + chart.\",\n \"enum\": [\n \"chartUnspecified\",\n + \ \"mostPopular\"\n ],\n \"location\": + \"query\"\n },\n \"locale\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"reportAbuse\": {\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n + \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n + \ \"id\": \"youtube.videos.reportAbuse\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/videos/reportAbuse\",\n \"description\": + \"Report abuse for a video.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n }\n },\n \"parameterOrder\": [],\n + \ \"httpMethod\": \"POST\"\n },\n \"rate\": {\n \"parameterOrder\": + [\n \"id\",\n \"rating\"\n ],\n \"httpMethod\": + \"POST\",\n \"path\": \"youtube/v3/videos/rate\",\n \"description\": + \"Adds a like or dislike rating to a video or removes a rating from a video.\",\n + \ \"flatPath\": \"youtube/v3/videos/rate\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.videos.rate\",\n \"parameters\": {\n + \ \"rating\": {\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"The + entity is liked.\",\n \"The entity is disliked.\"\n ]\n + \ },\n \"id\": {\n \"required\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n }\n }\n }\n },\n \"search\": {\n + \ \"methods\": {\n \"list\": {\n \"response\": {\n \"$ref\": + \"SearchListResponse\"\n },\n \"flatPath\": \"youtube/v3/search\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"videoDimension\": + {\n \"enum\": [\n \"any\",\n \"2d\",\n + \ \"3d\"\n ],\n \"enumDescriptions\": + [\n \"Include both 3D and non-3D videos in returned results. + This is the default value.\",\n \"Restrict search results to + exclude 3D videos.\",\n \"Restrict search results to only include + 3D videos.\"\n ],\n \"description\": \"Filter on + 3d videos.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"topicId\": {\n \"type\": + \"string\",\n \"description\": \"Restrict results to a particular + topic.\",\n \"location\": \"query\"\n },\n \"publishedBefore\": + {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n + \ \"type\": \"string\",\n \"description\": \"Filter + on resources published before this date.\"\n },\n \"safeSearch\": + {\n \"description\": \"Indicates whether the search results should + include restricted content as well as standard content.\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"default\": + \"moderate\",\n \"enumDescriptions\": [\n \"\",\n + \ \"YouTube will not filter the search result set.\",\n \"YouTube + will filter some content from search results and, at the least, will filter + content that is restricted in your locale. Based on their content, search + results could be removed from search results or demoted in search results. + This is the default parameter value.\",\n \"YouTube will try + to exclude all restricted content from the search result set. Based on their + content, search results could be removed from search results or demoted in + search results.\"\n ],\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n + \ \"none\",\n \"moderate\",\n \"strict\"\n + \ ]\n },\n \"videoDuration\": {\n \"enum\": + [\n \"videoDurationUnspecified\",\n \"any\",\n + \ \"short\",\n \"medium\",\n \"long\"\n + \ ],\n \"location\": \"query\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Do not filter video search results based on their duration. + This is the default value.\",\n \"Only include videos that + are less than four minutes long.\",\n \"Only include videos + that are between four and 20 minutes long (inclusive).\",\n \"Only + include videos longer than 20 minutes.\"\n ],\n \"description\": + \"Filter on the duration of the videos.\"\n },\n \"locationRadius\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Filter on distance from the location (specified + above).\"\n },\n \"relevanceLanguage\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Return results relevant to this language.\"\n },\n \"q\": + {\n \"location\": \"query\",\n \"description\": + \"Textual search terms to match.\",\n \"type\": \"string\"\n + \ },\n \"videoCategoryId\": {\n \"description\": + \"Filter on videos in a specific category.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"type\": \"integer\",\n \"default\": \"5\",\n + \ \"minimum\": \"0\",\n \"format\": \"uint32\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"location\": + \"query\",\n \"maximum\": \"50\"\n },\n \"forDeveloper\": + {\n \"description\": \"Restrict the search to only retrieve videos + uploaded using the project id of the authenticated user.\",\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"eventType\": + {\n \"description\": \"Filter on the livestream status of the + videos.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been + completed.\"\n ],\n \"enum\": [\n \"none\",\n + \ \"upcoming\",\n \"live\",\n \"completed\"\n + \ ],\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"forMine\": {\n \"description\": + \"Search for the private videos of the authenticated user.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"relatedToVideoId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Search related to a resource.\"\n },\n + \ \"forContentOwner\": {\n \"type\": \"boolean\",\n + \ \"location\": \"query\",\n \"description\": \"Search + owned by a content owner.\"\n },\n \"videoLicense\": + {\n \"type\": \"string\",\n \"description\": \"Filter + on the license of the videos.\",\n \"enumDescriptions\": [\n + \ \"Return all videos, regardless of which license they have, + that match the query parameters.\",\n \"Only return videos + that have the standard YouTube license.\",\n \"Only return + videos that have a Creative Commons license. Users can reuse videos with this + license in other videos that they create. Learn more.\"\n ],\n + \ \"location\": \"query\",\n \"enum\": [\n \"any\",\n + \ \"youtube\",\n \"creativeCommon\"\n ]\n + \ },\n \"videoCaption\": {\n \"enumDescriptions\": + [\n \"\",\n \"Do not filter results based on + caption availability.\",\n \"Only include videos that have + captions.\",\n \"Only include videos that do not have captions.\"\n + \ ],\n \"description\": \"Filter on the presence + of captions on the videos.\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n + \ \"any\",\n \"closedCaption\",\n \"none\"\n + \ ],\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"pageToken\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n + \ \"location\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"Filter on location of the video\"\n + \ },\n \"part\": {\n \"type\": \"string\",\n + \ \"required\": true,\n \"repeated\": true,\n \"description\": + \"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.\",\n \"location\": \"query\"\n },\n + \ \"videoType\": {\n \"enum\": [\n \"videoTypeUnspecified\",\n + \ \"any\",\n \"movie\",\n \"episode\"\n + \ ],\n \"description\": \"Filter on videos of a specific + type.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all videos.\",\n \"Only retrieve movies.\",\n + \ \"Only retrieve episodes of shows.\"\n ]\n },\n + \ \"type\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"description\": + \"Restrict results to a particular set of resource types from One Platform.\"\n + \ },\n \"videoSyndicated\": {\n \"enum\": + [\n \"videoSyndicatedUnspecified\",\n \"any\",\n + \ \"true\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos, syndicated + or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Filter on syndicated videos.\"\n },\n + \ \"order\": {\n \"default\": \"relevance\",\n \"enum\": + [\n \"searchSortUnspecified\",\n \"date\",\n + \ \"rating\",\n \"viewCount\",\n \"relevance\",\n + \ \"title\",\n \"videoCount\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Resources + are sorted in reverse chronological order based on the date they were created.\",\n + \ \"Resources are sorted from highest to lowest rating.\",\n + \ \"Resources are sorted from highest to lowest number of views.\",\n + \ \"Resources are sorted based on their relevance to the search + query. This is the default value for this parameter.\",\n \"Resources + are sorted alphabetically by title.\",\n \"Channels are sorted + in descending order of their number of uploaded videos.\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"Sort + order of the results.\",\n \"location\": \"query\"\n },\n + \ \"publishedAfter\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"format\": \"google-datetime\",\n + \ \"description\": \"Filter on resources published after this + date.\"\n },\n \"videoDefinition\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"Return + all videos, regardless of their resolution.\",\n \"Only retrieve + videos in standard definition.\",\n \"Only retrieve HD videos.\"\n + \ ],\n \"description\": \"Filter on the definition + of the videos.\",\n \"enum\": [\n \"any\",\n \"standard\",\n + \ \"high\"\n ],\n \"location\": \"query\"\n + \ },\n \"regionCode\": {\n \"location\": + \"query\",\n \"description\": \"Display the content as seen by + viewers in this country.\",\n \"type\": \"string\"\n },\n + \ \"videoEmbeddable\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n + \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos, embeddable + or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n + \ \"description\": \"Filter on embeddable videos.\"\n },\n + \ \"channelId\": {\n \"location\": \"query\",\n \"description\": + \"Filter on resources belonging to this channelId.\",\n \"type\": + \"string\"\n },\n \"channelType\": {\n \"enum\": + [\n \"channelTypeUnspecified\",\n \"any\",\n + \ \"show\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return all channels.\",\n \"Only + retrieve shows.\"\n ],\n \"description\": \"Add + a filter on the channel search.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"httpMethod\": + \"GET\",\n \"path\": \"youtube/v3/search\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Retrieves a list of search resources\",\n \"id\": + \"youtube.search.list\"\n }\n }\n },\n \"i18nRegions\": + {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/i18nRegions\",\n + \ \"flatPath\": \"youtube/v3/i18nRegions\",\n \"id\": \"youtube.i18nRegions.list\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"GET\",\n \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n + \ },\n \"parameters\": {\n \"hl\": {\n \"default\": + \"en_US\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"description\": + \"The *part* parameter specifies the i18nRegion resource properties that the + API response will include. Set the parameter value to snippet.\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\"\n }\n }\n },\n \"videoAbuseReportReasons\": + {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n + \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"httpMethod\": + \"GET\",\n \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n + \ \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true,\n \"repeated\": true,\n \"description\": \"The + *part* parameter specifies the videoCategory resource parts that the API response + will include. Supported values are id and snippet.\"\n },\n \"hl\": + {\n \"location\": \"query\",\n \"default\": \"en-US\",\n + \ \"type\": \"string\"\n }\n }\n }\n + \ }\n },\n \"thirdPartyLinks\": {\n \"methods\": {\n \"insert\": + {\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": + \"POST\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"request\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API request and response will include. Supported values are linkingToken, + status, and snippet.\",\n \"repeated\": true\n },\n + \ \"externalChannelId\": {\n \"location\": \"query\",\n + \ \"description\": \"Channel ID to which changes should be applied, + for delegation.\",\n \"type\": \"string\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.thirdPartyLinks.insert\"\n + \ },\n \"delete\": {\n \"parameters\": {\n \"linkingToken\": + {\n \"description\": \"Delete the partner links with the given + linking token.\",\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\"\n },\n \"type\": + {\n \"description\": \"Type of the link to be deleted.\",\n \"location\": + \"query\",\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"type\": + \"string\",\n \"required\": true,\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or + about to connect) a channel with a store on a merchandising platform in order + to enable retail commerce capabilities for that channel on YouTube.\"\n ]\n + \ },\n \"externalChannelId\": {\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"description\": + \"Do not use. Required for compatibility.\",\n \"repeated\": + true,\n \"type\": \"string\"\n }\n },\n \"description\": + \"Deletes a resource.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n + \ ],\n \"id\": \"youtube.thirdPartyLinks.delete\"\n },\n + \ \"update\": {\n \"parameters\": {\n \"externalChannelId\": + {\n \"location\": \"query\",\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"repeated\": + true,\n \"required\": true,\n \"description\": \"The + *part* parameter specifies the thirdPartyLink resource parts that the API + request and response will include. Supported values are linkingToken, status, + and snippet.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"request\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"httpMethod\": \"PUT\",\n \"id\": + \"youtube.thirdPartyLinks.update\",\n \"response\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"description\": \"Updates an + existing resource.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"path\": \"youtube/v3/thirdPartyLinks\"\n },\n \"list\": + {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": + {\n \"linkingToken\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Get + a third party link with the given linking token.\"\n },\n \"type\": + {\n \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"description\": \"Get a third party link + of the given type.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel + with a store on a merchandising platform in order to enable retail commerce + capabilities for that channel on YouTube.\"\n ]\n },\n + \ \"externalChannelId\": {\n \"description\": \"Channel + ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"The *part* parameter specifies the thirdPartyLink + resource parts that the API response will include. Supported values are linkingToken, + status, and snippet.\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n + \ \"id\": \"youtube.thirdPartyLinks.list\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n + \ }\n }\n }\n },\n \"channels\": {\n \"methods\": + {\n \"list\": {\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n + \ },\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"id\": {\n \"description\": \"Return the channels + with the specified IDs.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"repeated\": true\n },\n \"part\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"description\": \"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.\",\n \"type\": + \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"categoryId\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Return the channels within the + specified guide category ID.\"\n },\n \"mine\": {\n + \ \"description\": \"Return the ids of channels owned by the authenticated + user.\",\n \"type\": \"boolean\",\n \"location\": + \"query\"\n },\n \"mySubscribers\": {\n \"location\": + \"query\",\n \"description\": \"Return the channels subscribed + to the authenticated user\",\n \"type\": \"boolean\"\n },\n + \ \"managedByMe\": {\n \"location\": \"query\",\n \"type\": + \"boolean\",\n \"description\": \"Return the channels managed + by the authenticated user.\"\n },\n \"maxResults\": + {\n \"minimum\": \"0\",\n \"default\": \"5\",\n + \ \"type\": \"integer\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"location\": \"query\",\n \"format\": + \"uint32\",\n \"maximum\": \"50\"\n },\n \"forUsername\": + {\n \"description\": \"Return the channel associated with a YouTube + username.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"hl\": {\n \"description\": + \"Stands for \\\"host language\\\". Specifies the localization language of + the metadata to be filled into snippet.localized. The field is filled with + the default metadata if there is no localization in the specified language. + The parameter value must be a language code included in the list returned + by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n + \ ],\n \"flatPath\": \"youtube/v3/channels\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"path\": + \"youtube/v3/channels\",\n \"id\": \"youtube.channels.list\",\n \"parameterOrder\": + [\n \"part\"\n ]\n },\n \"update\": {\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s uploaded videos. Use the - videos.insert method to upload new videos and the videos.delete method to - delete previously uploaded videos.\"\n },\n \"favorites\": + *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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"description\": + \"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.\",\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"request\": {\n \"$ref\": \"Channel\"\n + \ },\n \"httpMethod\": \"PUT\",\n \"flatPath\": + \"youtube/v3/channels\",\n \"path\": \"youtube/v3/channels\",\n \"id\": + \"youtube.channels.update\",\n \"description\": \"Updates an existing + resource.\",\n \"response\": {\n \"$ref\": \"Channel\"\n + \ }\n }\n }\n },\n \"channelSections\": {\n \"methods\": + {\n \"list\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\"\n },\n \"mine\": {\n \"description\": + \"Return the ChannelSections owned by the authenticated user.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"hl\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Return content in specified language\"\n + \ },\n \"channelId\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Return the ChannelSections owned by the specified channel ID.\"\n },\n + \ \"id\": {\n \"repeated\": true,\n \"description\": + \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"required\": true\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/channelSections\",\n \"response\": {\n \"$ref\": + \"ChannelSectionListResponse\"\n },\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.channelSections.list\"\n + \ },\n \"insert\": {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n },\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"required\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"request\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.channelSections.insert\"\n + \ },\n \"delete\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\"\n },\n \"id\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"path\": \"youtube/v3/channelSections\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"id\": \"youtube.channelSections.delete\",\n \"description\": + \"Deletes a resource.\"\n },\n \"update\": {\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"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.\",\n + \ \"required\": true,\n \"repeated\": true\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"*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.\"\n }\n },\n \"flatPath\": + \"youtube/v3/channelSections\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"description\": \"Updates an existing resource.\",\n + \ \"id\": \"youtube.channelSections.update\",\n \"request\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"response\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/channelSections\"\n + \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": + {\n \"list\": {\n \"flatPath\": \"youtube/v3/superChatEvents\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"parameters\": {\n \"hl\": {\n \"description\": + \"Return rendered funding amounts in specified language.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"required\": true,\n \"description\": + \"The *part* parameter specifies the superChatEvent resource parts that the + API response will include. This parameter is currently not supported.\"\n + \ },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"default\": \"5\",\n \"maximum\": \"50\",\n + \ \"type\": \"integer\",\n \"format\": \"uint32\",\n + \ \"location\": \"query\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"minimum\": \"1\"\n }\n + \ },\n \"path\": \"youtube/v3/superChatEvents\",\n \"response\": + {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"id\": + \"youtube.superChatEvents.list\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"httpMethod\": \"GET\"\n }\n }\n },\n + \ \"watermarks\": {\n \"methods\": {\n \"set\": {\n \"supportsMediaUpload\": + true,\n \"id\": \"youtube.watermarks.set\",\n \"mediaUpload\": + {\n \"protocols\": {\n \"simple\": {\n \"path\": + \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": true\n + \ },\n \"resumable\": {\n \"multipart\": + true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n + \ }\n },\n \"accept\": [\n \"image/jpeg\",\n + \ \"image/png\",\n \"application/octet-stream\"\n + \ ],\n \"maxSize\": \"10485760\"\n },\n \"path\": + \"youtube/v3/watermarks/set\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"channelId\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Allows upload of + watermark image and setting it for a channel.\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"parameterOrder\": + [\n \"channelId\"\n ],\n \"flatPath\": \"youtube/v3/watermarks/set\",\n + \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n }\n + \ },\n \"unset\": {\n \"parameterOrder\": [\n \"channelId\"\n + \ ],\n \"path\": \"youtube/v3/watermarks/unset\",\n \"parameters\": + {\n \"channelId\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"youtube.watermarks.unset\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"description\": + \"Allows removal of channel watermark.\",\n \"flatPath\": \"youtube/v3/watermarks/unset\"\n + \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/members\",\n + \ \"parameters\": {\n \"filterByMemberChannelId\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Comma separated list of channel IDs. Only + data about members that are part of this list will be included in the response.\"\n + \ },\n \"part\": {\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true,\n \"description\": \"The *part* + parameter specifies the member resource parts that the API response will include. + Set the parameter value to snippet.\"\n },\n \"hasAccessToLevel\": + {\n \"location\": \"query\",\n \"description\": + \"Filter members in the results set to the ones that have access to a level.\",\n + \ \"type\": \"string\"\n },\n \"mode\": + {\n \"type\": \"string\",\n \"description\": \"Parameter + that specifies which channel members to return.\",\n \"enumDescriptions\": + [\n \"\",\n \"Return only members that joined + after the first call with this mode was made.\",\n \"Return + all current members, from newest to oldest.\"\n ],\n \"location\": + \"query\",\n \"default\": \"all_current\",\n \"enum\": + [\n \"listMembersModeUnknown\",\n \"updates\",\n + \ \"all_current\"\n ]\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"type\": + \"integer\",\n \"maximum\": \"1000\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"default\": \"5\",\n \"format\": + \"uint32\",\n \"location\": \"query\",\n \"minimum\": + \"0\"\n }\n },\n \"response\": {\n \"$ref\": + \"MemberListResponse\"\n },\n \"flatPath\": \"youtube/v3/members\",\n + \ \"description\": \"Retrieves a list of members that match the request + criteria for a channel.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"id\": \"youtube.members.list\"\n }\n }\n + \ },\n \"playlists\": {\n \"methods\": {\n \"list\": {\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n + \ },\n \"path\": \"youtube/v3/playlists\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n + \ \"id\": \"youtube.playlists.list\",\n \"flatPath\": \"youtube/v3/playlists\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"id\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Return + the playlists with the given IDs for Stubby or Apiary.\"\n },\n + \ \"maxResults\": {\n \"default\": \"5\",\n \"minimum\": + \"0\",\n \"format\": \"uint32\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"type\": \"integer\",\n + \ \"location\": \"query\",\n \"maximum\": \"50\"\n + \ },\n \"mine\": {\n \"location\": \"query\",\n + \ \"description\": \"Return the playlists owned by the authenticated + user.\",\n \"type\": \"boolean\"\n },\n \"hl\": + {\n \"type\": \"string\",\n \"description\": \"Return + content in specified language\",\n \"location\": \"query\"\n + \ },\n \"channelId\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Return the playlists owned by the specified channel ID.\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"description\": + \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n + \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n }\n },\n + \ \"delete\": {\n \"id\": \"youtube.playlists.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Deletes a resource.\",\n \"flatPath\": + \"youtube/v3/playlists\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"id\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true\n }\n },\n + \ \"path\": \"youtube/v3/playlists\"\n },\n \"insert\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n + \ },\n \"flatPath\": \"youtube/v3/playlists\",\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"required\": true,\n \"description\": + \"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.\"\n }\n },\n \"path\": + \"youtube/v3/playlists\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.playlists.insert\",\n + \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n + \ \"description\": \"Inserts a new resource into this collection.\"\n + \ },\n \"update\": {\n \"request\": {\n \"$ref\": + \"Playlist\"\n },\n \"description\": \"Updates an existing + resource.\",\n \"flatPath\": \"youtube/v3/playlists\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"Playlist\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"required\": + true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"httpMethod\": \"PUT\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.playlists.update\",\n \"path\": + \"youtube/v3/playlists\"\n }\n }\n },\n \"videoCategories\": + {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"path\": \"youtube/v3/videoCategories\",\n \"flatPath\": + \"youtube/v3/videoCategories\",\n \"parameters\": {\n \"regionCode\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"part\": {\n \"location\": \"query\",\n + \ \"description\": \"The *part* parameter specifies the videoCategory + resource properties that the API response will include. Set the parameter + value to snippet.\",\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\"\n },\n \"hl\": + {\n \"default\": \"en-US\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n + \ \"repeated\": true,\n \"description\": \"Returns + the video categories with the given IDs for Stubby or Apiary.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"youtube.videoCategories.list\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"VideoCategoryListResponse\"\n },\n \"httpMethod\": \"GET\"\n + \ }\n }\n },\n \"activities\": {\n \"methods\": {\n + \ \"list\": {\n \"parameters\": {\n \"maxResults\": + {\n \"format\": \"uint32\",\n \"location\": \"query\",\n + \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"maximum\": + \"50\",\n \"type\": \"integer\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\"\n },\n \"regionCode\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"publishedAfter\": {\n \"location\": + \"query\",\n \"format\": \"google-datetime\",\n \"type\": + \"string\"\n },\n \"home\": {\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"required\": true,\n \"location\": + \"query\"\n },\n \"channelId\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n + \ },\n \"mine\": {\n \"location\": \"query\",\n + \ \"type\": \"boolean\"\n },\n \"publishedBefore\": + {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n + \ \"type\": \"string\"\n }\n },\n \"httpMethod\": + \"GET\",\n \"flatPath\": \"youtube/v3/activities\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.activities.list\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"path\": \"youtube/v3/activities\",\n \"response\": + {\n \"$ref\": \"ActivityListResponse\"\n }\n }\n + \ }\n },\n \"membershipsLevels\": {\n \"methods\": {\n \"list\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n + \ \"id\": \"youtube.membershipsLevels.list\",\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"required\": true,\n \"description\": \"The + *part* parameter specifies the membershipsLevel resource parts that the API + response will include. Supported values are id and snippet.\",\n \"location\": + \"query\"\n }\n },\n \"description\": \"Retrieves + a list of all pricing levels offered by a creator to the fans.\",\n \"path\": + \"youtube/v3/membershipsLevels\",\n \"httpMethod\": \"GET\",\n \"response\": + {\n \"$ref\": \"MembershipsLevelListResponse\"\n }\n }\n + \ }\n },\n \"liveChatModerators\": {\n \"methods\": {\n \"insert\": + {\n \"request\": {\n \"$ref\": \"LiveChatModerator\"\n + \ },\n \"description\": \"Inserts a new resource into this + collection.\",\n \"response\": {\n \"$ref\": \"LiveChatModerator\"\n + \ },\n \"id\": \"youtube.liveChatModerators.insert\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"path\": + \"youtube/v3/liveChat/moderators\",\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": + true\n }\n },\n \"httpMethod\": \"POST\"\n },\n + \ \"delete\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes + a chat moderator.\",\n \"parameters\": {\n \"id\": {\n + \ \"required\": true,\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"id\": \"youtube.liveChatModerators.delete\",\n \"parameterOrder\": + [\n \"id\"\n ]\n },\n \"list\": {\n \"id\": + \"youtube.liveChatModerators.list\",\n \"parameterOrder\": [\n \"liveChatId\",\n + \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true,\n \"description\": \"The *part* parameter specifies the + liveChatModerator resource parts that the API response will include. Supported + values are id and snippet.\"\n },\n \"pageToken\": {\n + \ \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n + \ \"minimum\": \"0\",\n \"maximum\": \"50\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"default\": \"5\",\n \"type\": + \"integer\",\n \"location\": \"query\"\n },\n \"liveChatId\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"The id of the live chat for which moderators + should be returned.\",\n \"type\": \"string\"\n }\n + \ },\n \"httpMethod\": \"GET\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n + \ }\n }\n }\n },\n \"liveStreams\": {\n \"methods\": + {\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": + \"Deletes an existing stream for the authenticated user.\",\n \"path\": + \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.delete\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/liveStreams\"\n + \ },\n \"insert\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n + \ \"part\": {\n \"description\": \"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, content_details, and status.\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"description\": \"Inserts a new stream for the authenticated + user.\",\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveStreams.insert\",\n + \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"list\": {\n \"parameters\": {\n + \ \"part\": {\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"maximum\": + \"50\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n + \ \"default\": \"5\",\n \"location\": \"query\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"minimum\": + \"0\"\n },\n \"mine\": {\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"id\": + {\n \"description\": \"Return LiveStreams with the given ids + from Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"repeated\": true\n },\n \"pageToken\": {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s favorite videos. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"watchHistory\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s watch history. Use the playlistItems.insert and - playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"watchLater\": {\n \"description\": \"The ID of - the playlist that contains the channel\\\"s watch later playlist. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n }\n }\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Details - about the content of a channel.\"\n },\n \"PropertyValue\": {\n \"id\": - \"PropertyValue\",\n \"type\": \"object\",\n \"description\": \"A - pair Property / Value.\",\n \"properties\": {\n \"value\": {\n - \ \"type\": \"string\",\n \"description\": \"The property's - value.\"\n },\n \"property\": {\n \"description\": - \"A property.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"Comment\": {\n \"type\": \"object\",\n \"id\": \"Comment\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#comment\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment.\",\n \"$ref\": - \"CommentSnippet\"\n }\n },\n \"description\": \"A *comment* - represents a single YouTube comment.\"\n },\n \"I18nRegionSnippet\": - {\n \"type\": \"object\",\n \"id\": \"I18nRegionSnippet\",\n \"properties\": - {\n \"name\": {\n \"description\": \"The human-readable name - of the region.\",\n \"type\": \"string\"\n },\n \"gl\": - {\n \"description\": \"The region code as a 2-letter ISO country - code.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about an i18n region, such as region code and human-readable - name.\"\n },\n \"ImageSettings\": {\n \"id\": \"ImageSettings\",\n - \ \"properties\": {\n \"bannerMobileExtraHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size high resolution (1440x395).\",\n \"type\": - \"string\"\n },\n \"largeBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 854px - by 70px image that appears below the video player in the expanded video view - of the video watch page.\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1280x360).\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"backgroundImageUrl\": - {\n \"description\": \"The URL for the background image shown on - the video watch page. The image should be 1200px by 615px, with a maximum - file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerTvHighImageUrl\": {\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\",\n \"type\": \"string\"\n - \ },\n \"smallBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 640px - by 70px banner image that appears below the video player in the default view - of the video watch page. The URL for the image that appears above the top-left - corner of the video player. This is a 25-pixel-high image with a flexible - width that cannot exceed 170 pixels.\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size medium/high resolution (960x263).\"\n },\n \"bannerMobileImageUrl\": - {\n \"description\": \"Banner image. Mobile size (640x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvImageUrl\": - {\n \"description\": \"Banner image. TV size extra high resolution - (2120x1192).\",\n \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size low resolution (854x480).\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size high resolution (2276x377).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTabletImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n },\n \"watchIconImageUrl\": {\n - \ \"type\": \"string\"\n },\n \"bannerImageUrl\": {\n - \ \"description\": \"Banner image. Desktop size (1060x175).\",\n \"type\": - \"string\"\n },\n \"trackingImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL for a 1px by 1px tracking - pixel that can be used to collect statistics for views of the channel or video - pages.\"\n },\n \"bannerTabletExtraHdImageUrl\": {\n \"description\": - \"Banner image. Tablet size extra high resolution (2560x424).\",\n \"type\": - \"string\"\n },\n \"bannerTvMediumImageUrl\": {\n \"description\": - \"Banner image. TV size medium resolution (1280x720).\",\n \"type\": - \"string\"\n },\n \"bannerTabletLowImageUrl\": {\n \"description\": - \"Banner image. Tablet size low resolution (1138x188).\",\n \"type\": - \"string\"\n },\n \"bannerExternalUrl\": {\n \"type\": - \"string\",\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Branding properties for images associated - with the channel.\"\n },\n \"PlaylistItemStatus\": {\n \"id\": - \"PlaylistItemStatus\",\n \"properties\": {\n \"privacyStatus\": - {\n \"description\": \"This resource's privacy status.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Information - about the playlist item's privacy status.\"\n },\n \"Thumbnail\": {\n - \ \"id\": \"Thumbnail\",\n \"description\": \"A thumbnail is an image - representing a YouTube resource.\",\n \"type\": \"object\",\n \"properties\": - {\n \"height\": {\n \"type\": \"integer\",\n \"description\": - \"(Optional) Height of the thumbnail image.\",\n \"format\": \"uint32\"\n - \ },\n \"url\": {\n \"description\": \"The thumbnail - image's URL.\",\n \"type\": \"string\"\n },\n \"width\": - {\n \"description\": \"(Optional) Width of the thumbnail image.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n }\n - \ }\n },\n \"ChannelSectionContentDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"playlists\": {\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"channels\": - {\n \"type\": \"array\",\n \"description\": \"The channel - ids for type multiple_channels.\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"id\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"Details about a channelsection, including playlists - and channels.\"\n },\n \"WatchSettings\": {\n \"type\": \"object\",\n - \ \"description\": \"Branding properties for the watch. All deprecated.\",\n - \ \"id\": \"WatchSettings\",\n \"properties\": {\n \"featuredPlaylistId\": - {\n \"type\": \"string\",\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\"\n - \ },\n \"textColor\": {\n \"description\": \"The background - color for the video watch page's branded area.\",\n \"type\": \"string\"\n - \ },\n \"backgroundColor\": {\n \"description\": \"The - text color for the video watch page's branded area.\",\n \"type\": - \"string\"\n }\n }\n },\n \"I18nLanguage\": {\n \"type\": - \"object\",\n \"description\": \"An *i18nLanguage* resource identifies - a UI language currently supported by YouTube.\",\n \"properties\": {\n - \ \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#i18nLanguage\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguage\\\".\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the i18n language.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"I18nLanguage\"\n },\n - \ \"ActivityContentDetailsRecommendation\": {\n \"description\": \"Information - that identifies the recommended resource.\",\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the recommended resource.\"\n },\n \"reason\": {\n - \ \"enum\": [\n \"reasonUnspecified\",\n \"videoFavorited\",\n - \ \"videoLiked\",\n \"videoWatched\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The reason that the resource is recommended to - the user.\"\n },\n \"seedResourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The seedResourceId object contains - information about the resource that caused the recommendation.\"\n }\n - \ },\n \"type\": \"object\"\n }\n },\n \"ownerName\": \"Google\",\n - \ \"documentationLink\": \"https://developers.google.com/youtube/\",\n \"discoveryVersion\": - \"v1\",\n \"revision\": \"20230131\",\n \"canonicalName\": \"YouTube\",\n - \ \"version\": \"v3\"\n}\n" + *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.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"description\": \"Retrieve the list of streams associated + with the given channel. --\",\n \"response\": {\n \"$ref\": + \"LiveStreamListResponse\"\n },\n \"id\": \"youtube.liveStreams.list\",\n + \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/liveStreams\"\n + \ },\n \"update\": {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*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.\"\n },\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"description\": \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": + \"LiveStream\"\n },\n \"description\": \"Updates an existing + stream for the authenticated user.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"request\": {\n \"$ref\": \"LiveStream\"\n + \ },\n \"path\": \"youtube/v3/liveStreams\",\n \"id\": + \"youtube.liveStreams.update\"\n }\n }\n },\n \"liveBroadcasts\": + {\n \"methods\": {\n \"delete\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n + \ \"description\": \"Delete a given broadcast.\",\n \"id\": + \"youtube.liveBroadcasts.delete\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Broadcast + to delete.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\"\n },\n \"bind\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n + \ \"httpMethod\": \"POST\",\n \"description\": \"Bind a broadcast + to a stream.\",\n \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"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.\"\n + \ },\n \"streamId\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Stream + to bind, if not set unbind the current one.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"required\": + true,\n \"description\": \"Broadcast to bind to the stream\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"parameterOrder\": [\n \"id\",\n + \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\"\n + \ },\n \"update\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"required\": true,\n \"type\": + \"string\"\n }\n },\n \"description\": \"Updates + an existing broadcast for the authenticated user.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.liveBroadcasts.update\",\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"httpMethod\": \"PUT\"\n },\n + \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"description\": \"Inserts a new stream for the authenticated + user.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"required\": + true,\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n + \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"flatPath\": + \"youtube/v3/liveBroadcasts\",\n \"request\": {\n \"$ref\": + \"LiveBroadcast\"\n }\n },\n \"insertCuepoint\": {\n + \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"httpMethod\": + \"POST\",\n \"response\": {\n \"$ref\": \"Cuepoint\"\n + \ },\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n + \ \"description\": \"Insert cuepoints in a broadcast\",\n \"flatPath\": + \"youtube/v3/liveBroadcasts/cuepoint\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"description\": + \"Broadcast to insert ads to, or equivalently `external_video_id` for internal + use.\",\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"part\": {\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n + \ \"parameterOrder\": [],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"request\": {\n \"$ref\": \"Cuepoint\"\n + \ }\n },\n \"transition\": {\n \"description\": + \"Transition a broadcast to a given status.\",\n \"httpMethod\": + \"POST\",\n \"parameterOrder\": [\n \"broadcastStatus\",\n + \ \"id\",\n \"part\"\n ],\n \"path\": + \"youtube/v3/liveBroadcasts/transition\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"broadcastStatus\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"description\": \"The status to which the broadcast is going + to transition.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Start testing the broadcast. YouTube transmits video to + the broadcast's monitor stream. Note that you can only transition a broadcast + to the testing state if its contentDetails.monitorStream.enableMonitorStream + property is set to true.\\\",\",\n \"Return only persistent + broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting + video.\"\n ],\n \"location\": \"query\",\n \"enum\": + [\n \"statusUnspecified\",\n \"testing\",\n + \ \"live\",\n \"complete\"\n ]\n + \ },\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"required\": true,\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"description\": \"Broadcast to transition.\",\n \"location\": + \"query\"\n }\n },\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\"\n + \ },\n \"list\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n + \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"mine\": + {\n \"type\": \"boolean\",\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"maximum\": \"50\",\n \"type\": \"integer\",\n + \ \"location\": \"query\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"minimum\": \"0\",\n \"format\": + \"uint32\",\n \"default\": \"5\"\n },\n \"broadcastStatus\": + {\n \"type\": \"string\",\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n + \ \"all\",\n \"active\",\n \"upcoming\",\n + \ \"completed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return all broadcasts.\",\n \"Return + current live broadcasts.\",\n \"Return broadcasts that have + not yet started.\",\n \"Return broadcasts that have already + ended.\"\n ],\n \"location\": \"query\",\n \"description\": + \"Return broadcasts with a certain status, e.g. active broadcasts.\"\n },\n + \ \"id\": {\n \"repeated\": true,\n \"description\": + \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"broadcastType\": + {\n \"enumDescriptions\": [\n \"\",\n \"Return + all broadcasts.\",\n \"Return only scheduled event broadcasts.\",\n + \ \"Return only persistent broadcasts.\"\n ],\n + \ \"description\": \"Return only broadcasts with the selected + type.\",\n \"type\": \"string\",\n \"enum\": [\n + \ \"broadcastTypeFilterUnspecified\",\n \"all\",\n + \ \"event\",\n \"persistent\"\n ],\n + \ \"default\": \"event\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"description\": \"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, status and + statistics.\"\n }\n },\n \"response\": {\n \"$ref\": + \"LiveBroadcastListResponse\"\n },\n \"id\": \"youtube.liveBroadcasts.list\",\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Retrieve the list of broadcasts associated with the given channel.\"\n }\n + \ }\n },\n \"abuseReports\": {\n \"methods\": {\n \"insert\": + {\n \"id\": \"youtube.abuseReports.insert\",\n \"httpMethod\": + \"POST\",\n \"request\": {\n \"$ref\": \"AbuseReport\"\n + \ },\n \"path\": \"youtube/v3/abuseReports\",\n \"flatPath\": + \"youtube/v3/abuseReports\",\n \"description\": \"Inserts a new resource + into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n },\n \"response\": + {\n \"$ref\": \"AbuseReport\"\n },\n \"parameterOrder\": + [\n \"part\"\n ]\n }\n }\n },\n \"subscriptions\": + {\n \"methods\": {\n \"insert\": {\n \"path\": \"youtube/v3/subscriptions\",\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n + \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": + true\n }\n },\n \"response\": {\n \"$ref\": + \"Subscription\"\n },\n \"description\": \"Inserts a new + resource into this collection.\",\n \"id\": \"youtube.subscriptions.insert\",\n + \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"request\": {\n \"$ref\": \"Subscription\"\n + \ }\n },\n \"list\": {\n \"response\": {\n + \ \"$ref\": \"SubscriptionListResponse\"\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": + \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"myRecentSubscribers\": + {\n \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n + \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"location\": \"query\",\n \"default\": + \"5\",\n \"type\": \"integer\",\n \"maximum\": \"50\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"mine\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"description\": + \"Flag for returning the subscriptions of the authenticated user.\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"mySubscribers\": + {\n \"type\": \"boolean\",\n \"description\": \"Return + the subscribers of the given channel owner.\",\n \"location\": + \"query\"\n },\n \"order\": {\n \"enumDescriptions\": + [\n \"\",\n \"Sort by relevance.\",\n \"Sort + by order of activity.\",\n \"Sort alphabetically.\"\n ],\n + \ \"location\": \"query\",\n \"description\": \"The + order of the returned subscriptions\",\n \"default\": \"relevance\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n + \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n + \ ]\n },\n \"onBehalfOfContentOwner\": {\n + \ \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"Return the subscriptions of + the given channel owner.\",\n \"location\": \"query\"\n },\n + \ \"forChannelId\": {\n \"description\": \"Return the + subscriptions to the subset of these channels that the authenticated user + is subscribed to.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"description\": \"Return + the subscriptions with the given IDs for Stubby or Apiary.\"\n }\n + \ },\n \"path\": \"youtube/v3/subscriptions\",\n \"id\": + \"youtube.subscriptions.list\"\n },\n \"delete\": {\n \"path\": + \"youtube/v3/subscriptions\",\n \"parameters\": {\n \"id\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n },\n \"id\": + \"youtube.subscriptions.delete\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n + \ \"description\": \"Deletes a resource.\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"DELETE\"\n }\n }\n },\n + \ \"comments\": {\n \"methods\": {\n \"setModerationStatus\": + {\n \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n + \ ],\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n + \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"id\": + {\n \"description\": \"Modifies the moderation status of the + comments with the given IDs\",\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"moderationStatus\": {\n \"required\": + true,\n \"enumDescriptions\": [\n \"The comment + is available for public display.\",\n \"The comment is awaiting + review by a moderator.\",\n \"\",\n \"The comment + is unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ],\n \"description\": \"Specifies the requested + moderation status. Note, comments can be in statuses, which are not available + through this call. For example, this call does not allow to mark a comment + as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, + MODERATION_STATUS_REJECTED.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"banAuthor\": {\n \"type\": + \"boolean\",\n \"description\": \"If set to true the author of + the comment gets added to the ban list. This means all future comments of + the author will autmomatically be rejected. Only valid in combination with + STATUS_REJECTED.\",\n \"location\": \"query\",\n \"default\": + \"false\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n + \ \"description\": \"Sets the moderation status of one or more comments.\",\n + \ \"id\": \"youtube.comments.setModerationStatus\"\n },\n \"insert\": + {\n \"path\": \"youtube/v3/comments\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/comments\",\n \"request\": {\n + \ \"$ref\": \"Comment\"\n },\n \"description\": + \"Inserts a new resource into this collection.\",\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"required\": + true,\n \"description\": \"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.\"\n }\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"id\": \"youtube.comments.insert\",\n \"response\": {\n + \ \"$ref\": \"Comment\"\n },\n \"httpMethod\": + \"POST\"\n },\n \"markAsSpam\": {\n \"description\": + \"Expresses the caller's opinion that one or more comments should be flagged + as spam.\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n + \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.comments.markAsSpam\",\n \"path\": + \"youtube/v3/comments/markAsSpam\",\n \"parameters\": {\n \"id\": + {\n \"location\": \"query\",\n \"description\": + \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n + \ \"repeated\": true,\n \"required\": true,\n \"type\": + \"string\"\n }\n }\n },\n \"list\": {\n + \ \"flatPath\": \"youtube/v3/comments\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"id\": \"youtube.comments.list\",\n + \ \"response\": {\n \"$ref\": \"CommentListResponse\"\n + \ },\n \"path\": \"youtube/v3/comments\",\n \"parameters\": + {\n \"id\": {\n \"repeated\": true,\n \"location\": + \"query\",\n \"description\": \"Returns the comments with the + given IDs for One Platform.\",\n \"type\": \"string\"\n },\n + \ \"parentId\": {\n \"location\": \"query\",\n \"description\": + \"Returns replies to the specified comment. Note, currently YouTube features + only one level of replies (ie replies to top level comments). However replies + to replies may be supported in the future.\",\n \"type\": \"string\"\n + \ },\n \"textFormat\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"The requested text format for the returned comments.\",\n \"enumDescriptions\": + [\n \"\",\n \"Returns the comments in HTML format. + This is the default value.\",\n \"Returns the comments in plain + text format.\"\n ],\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ],\n + \ \"default\": \"html\"\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"type\": \"integer\",\n + \ \"maximum\": \"100\",\n \"location\": \"query\",\n + \ \"minimum\": \"1\",\n \"default\": \"20\",\n \"format\": + \"uint32\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies a comma-separated list of one or more comment + resource properties that the API response will include.\"\n }\n + \ },\n \"httpMethod\": \"GET\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n + \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.comments.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"description\": \"Deletes + a resource.\",\n \"path\": \"youtube/v3/comments\",\n \"parameters\": + {\n \"id\": {\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"httpMethod\": + \"DELETE\"\n },\n \"update\": {\n \"response\": {\n + \ \"$ref\": \"Comment\"\n },\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n }\n },\n \"path\": + \"youtube/v3/comments\",\n \"id\": \"youtube.comments.update\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"description\": \"Updates an existing resource.\",\n \"request\": + {\n \"$ref\": \"Comment\"\n },\n \"httpMethod\": + \"PUT\",\n \"flatPath\": \"youtube/v3/comments\"\n }\n }\n + \ },\n \"commentThreads\": {\n \"methods\": {\n \"list\": + {\n \"id\": \"youtube.commentThreads.list\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"videoId\": {\n \"description\": + \"Returns the comment threads of the specified video.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"Returns + the comment threads for all the channel comments (ie does not include comments + left on videos).\",\n \"location\": \"query\"\n },\n + \ \"searchTerms\": {\n \"location\": \"query\",\n \"description\": + \"Limits the returned comment threads to those matching the specified key + words. Not compatible with the 'id' filter.\",\n \"type\": \"string\"\n + \ },\n \"allThreadsRelatedToChannelId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Returns the comment threads of all videos of the channel and the channel + comments as well.\"\n },\n \"id\": {\n \"description\": + \"Returns the comment threads with the given IDs for Stubby or Apiary.\",\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true\n },\n \"part\": {\n + \ \"repeated\": true,\n \"location\": \"query\",\n + \ \"required\": true,\n \"description\": \"The *part* + parameter specifies a comma-separated list of one or more commentThread resource + properties that the API response will include.\",\n \"type\": + \"string\"\n },\n \"textFormat\": {\n \"description\": + \"The requested text format for the returned comments.\",\n \"type\": + \"string\",\n \"default\": \"html\",\n \"enumDescriptions\": + [\n \"\",\n \"Returns the comments in HTML format. + This is the default value.\",\n \"Returns the comments in plain + text format.\"\n ],\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ],\n + \ \"location\": \"query\"\n },\n \"moderationStatus\": + {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"location\": + \"query\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ],\n + \ \"description\": \"Limits the returned comment threads to those + with the specified moderation status. Not compatible with the 'id' filter. + Valid values: published, heldForReview, likelySpam.\",\n \"default\": + \"published\"\n },\n \"pageToken\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n + \ \"maxResults\": {\n \"location\": \"query\",\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"default\": \"20\",\n \"maximum\": + \"100\",\n \"minimum\": \"1\"\n },\n \"order\": + {\n \"default\": \"time\",\n \"enum\": [\n \"orderUnspecified\",\n + \ \"time\",\n \"relevance\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Order + by time.\",\n \"Order by relevance.\"\n ],\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"path\": \"youtube/v3/commentThreads\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"CommentThreadListResponse\"\n }\n },\n \"insert\": + {\n \"response\": {\n \"$ref\": \"CommentThread\"\n },\n + \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/commentThreads\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": + \"youtube.commentThreads.insert\",\n \"parameters\": {\n \"part\": + {\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/commentThreads\"\n }\n }\n + \ },\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": + {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"path\": \"youtube/v3/i18nLanguages\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.i18nLanguages.list\",\n + \ \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"httpMethod\": + \"GET\",\n \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"hl\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"default\": + \"en_US\"\n },\n \"part\": {\n \"repeated\": + true,\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"The + *part* parameter specifies the i18nLanguage resource properties that the API + response will include. Set the parameter value to snippet.\"\n }\n + \ }\n }\n }\n }\n },\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n + \ \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n + \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n + \ },\n \"name\": \"youtube\",\n \"protocol\": \"rest\",\n \"version\": + \"v3\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"id\": \"youtube:v3\",\n + \ \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": + {\n \"description\": \"See a list of your current active channel + members, their current level, and when they became a member\"\n },\n + \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": + \"View and manage your assets and associated content on YouTube\"\n },\n + \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": + \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": + {\n \"description\": \"Manage your YouTube videos\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": + \"See, edit, and permanently delete your YouTube videos, ratings, comments + and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": + {\n \"description\": \"View private information of your YouTube channel + relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": + {\n \"description\": \"View your YouTube account\"\n }\n }\n + \ }\n },\n \"kind\": \"discovery#restDescription\",\n \"batchPath\": + \"batch\"\n}\n" headers: Alt-Svc: - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 @@ -6192,7 +6205,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:40:22 GMT + - Tue, 07 Mar 2023 23:51:19 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: @@ -6252,7 +6265,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:40:23 GMT + - Tue, 07 Mar 2023 23:51:20 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: @@ -6271,4 +6284,5 @@ interactions: code: 200 message: OK url: '' +recorded_at: '2023-03-07T23:51:19.502237' version: 1 diff --git a/tests/cassettes/test_youtube/test_cancel_donation.yaml b/tests/cassettes/test_youtube/test_cancel_donation.yaml index 393dab59..e79a5e07 100644 --- a/tests/cassettes/test_youtube/test_cancel_donation.yaml +++ b/tests/cassettes/test_youtube/test_cancel_donation.yaml @@ -10,3748 +10,316 @@ interactions: uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest response: body: - string: "{\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"title\": - \"YouTube Data API v3\",\n \"schemas\": {\n \"SubscriptionListResponse\": - {\n \"id\": \"SubscriptionListResponse\",\n \"properties\": {\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Subscription\"\n },\n \"description\": - \"A list of subscriptions that match the request criteria.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"MembershipsLevelListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#membershipsLevelListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"description\": \"A list of pricing levels - offered by a creator to the fans.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"MembershipsLevel\"\n }\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"MembershipsLevelListResponse\"\n },\n \"InvideoPosition\": - {\n \"properties\": {\n \"type\": {\n \"enum\": [\n \"corner\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Defines the position type.\",\n \"enumDescriptions\": [\n \"\"\n - \ ]\n },\n \"cornerPosition\": {\n \"enum\": - [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n - \ \"bottomRight\"\n ],\n \"description\": \"Describes - in which corner of the video the visual widget will appear.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Describes the spatial position of a - visual widget inside a video. It is a union of various position types, out - of which only will be set one.\",\n \"id\": \"InvideoPosition\"\n },\n - \ \"LiveChatModeratorListResponse\": {\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#liveChatModeratorListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"description\": \"A list of moderators - that match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n }\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n }\n },\n \"id\": \"LiveChatModeratorListResponse\",\n - \ \"type\": \"object\"\n },\n \"PlaylistItemContentDetails\": {\n - \ \"type\": \"object\",\n \"id\": \"PlaylistItemContentDetails\",\n - \ \"properties\": {\n \"note\": {\n \"type\": \"string\",\n - \ \"description\": \"A user-generated note for this item.\"\n },\n - \ \"videoPublishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the video - was published to YouTube.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify a video. To retrieve the video resource, set the id query parameter - to this value in your API request.\"\n },\n \"startAt\": {\n - \ \"description\": \"The time, measured in seconds from the start - of the video, when the video should start playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) The default value is 0.\",\n \"type\": - \"string\"\n },\n \"endAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The time, measured in seconds from the start - of the video, when the video should stop playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) By default, assume that the video.endTime - is the end of the video.\"\n }\n }\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"properties\": {\n \"timeLeftMs\": {\n \"type\": - \"string\",\n \"description\": \"An estimate of the amount of time, - in millseconds, that YouTube needs to finish processing the video.\",\n \"format\": - \"uint64\"\n },\n \"partsTotal\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"An estimate - of the total number of parts that need to be processed for the video. The - number may be updated with more precise estimates while YouTube processes - the video.\"\n },\n \"partsProcessed\": {\n \"type\": - \"string\",\n \"description\": \"The number of parts of the video - that YouTube has already processed. You can estimate the percentage of the - video that YouTube has already processed by calculating: 100 * parts_processed - / parts_total Note that since the estimated number of parts could increase - without a corresponding increase in the number of parts that have already - been processed, it is possible that the calculated progress could periodically - decrease while YouTube processes a video.\",\n \"format\": \"uint64\"\n - \ }\n },\n \"description\": \"Video processing progress and - completion time estimate.\",\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"GeoPoint\": {\n \"id\": \"GeoPoint\",\n \"description\": - \"Geographical coordinates of a point, in WGS84.\",\n \"properties\": - {\n \"latitude\": {\n \"type\": \"number\",\n \"description\": - \"Latitude in degrees.\",\n \"format\": \"double\"\n },\n - \ \"altitude\": {\n \"description\": \"Altitude above the reference - ellipsoid, in meters.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n },\n \"longitude\": {\n \"format\": \"double\",\n - \ \"type\": \"number\",\n \"description\": \"Longitude in - degrees.\"\n }\n },\n \"type\": \"object\"\n },\n \"ThumbnailSetResponse\": - {\n \"type\": \"object\",\n \"id\": \"ThumbnailSetResponse\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": \"A list of - thumbnails.\",\n \"type\": \"array\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thumbnailSetResponse\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n }\n },\n \"MembershipsLevelSnippet\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"properties\": {\n \"levelDetails\": {\n \"description\": - \"Details about the pricing level.\",\n \"$ref\": \"LevelDetails\"\n - \ },\n \"creatorChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The id of the channel that's offering channel - memberships.\"\n }\n }\n },\n \"ThirdPartyLinkStatus\": - {\n \"description\": \"The third-party link status object contains information - about the status of the link.\",\n \"id\": \"ThirdPartyLinkStatus\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"linkStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ]\n }\n - \ }\n },\n \"VideoMonetizationDetails\": {\n \"id\": \"VideoMonetizationDetails\",\n - \ \"description\": \"Details about monetization of a YouTube Video.\",\n - \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The value of access indicates whether the video - can be monetized or not.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsChannelItem\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsChannelItem\",\n \"description\": - \"Details about a resource which was added to a channel.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that was added to - the channel.\",\n \"$ref\": \"ResourceId\"\n }\n }\n - \ },\n \"LiveChatTextMessageDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"messageText\": {\n \"type\": \"string\",\n - \ \"description\": \"The user's message.\"\n }\n },\n - \ \"id\": \"LiveChatTextMessageDetails\"\n },\n \"ChannelBannerResource\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelBannerResource\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n - \ },\n \"url\": {\n \"type\": \"string\",\n \"description\": - \"The URL of this banner image.\"\n }\n },\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\",\n - \ \"id\": \"ChannelBannerResource\"\n },\n \"LocalizedString\": - {\n \"id\": \"LocalizedString\",\n \"type\": \"object\",\n \"properties\": - {\n \"language\": {\n \"type\": \"string\"\n },\n \"value\": - {\n \"type\": \"string\"\n }\n }\n },\n \"ImageSettings\": - {\n \"description\": \"Branding properties for images associated with - the channel.\",\n \"id\": \"ImageSettings\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"smallBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 640px - by 70px banner image that appears below the video player in the default view - of the video watch page. The URL for the image that appears above the top-left - corner of the video player. This is a 25-pixel-high image with a flexible - width that cannot exceed 170 pixels.\"\n },\n \"bannerTabletImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"trackingImageUrl\": - {\n \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerTvImageUrl\": - {\n \"description\": \"Banner image. TV size extra high resolution - (2120x1192).\",\n \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size (640x175).\"\n },\n \"bannerExternalUrl\": {\n \"type\": - \"string\",\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"bannerTvLowImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. TV size low resolution (854x480).\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"bannerTvHighImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n }\n }\n - \ },\n \"VideoRecordingDetails\": {\n \"id\": \"VideoRecordingDetails\",\n - \ \"description\": \"Recording information associated with the video.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"recordingDate\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the video was recorded.\"\n - \ },\n \"locationDescription\": {\n \"type\": \"string\",\n - \ \"description\": \"The text description of the location where the - video was recorded.\"\n },\n \"location\": {\n \"$ref\": - \"GeoPoint\",\n \"description\": \"The geolocation information associated - with the video.\"\n }\n }\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"properties\": - {\n \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"properties\": {\n \"label\": {\n \"description\": - \"The localized label for this abuse report secondary reason.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of this abuse report secondary reason.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"LevelDetails\": {\n \"id\": \"LevelDetails\",\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The name that should be used when referring to this level.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"id\": \"ActivityContentDetailsSocial\",\n \"properties\": - {\n \"imageUrl\": {\n \"description\": \"An image of the post's - author.\",\n \"type\": \"string\"\n },\n \"referenceUrl\": - {\n \"description\": \"The URL of the social network post.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\"\n },\n - \ \"author\": {\n \"type\": \"string\",\n \"description\": - \"The author of the social network post.\"\n },\n \"type\": - {\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n - \ \"facebook\",\n \"twitter\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The name of the social network.\"\n }\n },\n \"description\": - \"Details about a social network post.\",\n \"type\": \"object\"\n },\n - \ \"LiveChatModeratorSnippet\": {\n \"type\": \"object\",\n \"id\": - \"LiveChatModeratorSnippet\",\n \"properties\": {\n \"liveChatId\": - {\n \"description\": \"The ID of the live chat this moderator can - act on.\",\n \"type\": \"string\"\n },\n \"moderatorDetails\": - {\n \"description\": \"Details about the moderator.\",\n \"$ref\": - \"ChannelProfileDetails\"\n }\n }\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"description\": \"A single tag suggestion with it's relevance information.\",\n - \ \"id\": \"VideoSuggestionsTagSuggestion\",\n \"properties\": {\n - \ \"categoryRestricts\": {\n \"description\": \"A set of video - categories for which the tag is relevant. You can use this information to - display appropriate tag suggestions based on the video category that the video - uploader associates with the video. By default, tag suggestions are relevant - for all categories if there are no restricts defined for the keyword.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"tag\": {\n \"description\": \"The - keyword tag suggested for the video.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"SuperChatEvent\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the Super Chat event.\"\n },\n \"kind\": {\n \"default\": - \"youtube#superChatEvent\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"SuperChatEvent\",\n - \ \"description\": \"A `__superChatEvent__` resource represents a Super - Chat purchase on a YouTube channel.\"\n },\n \"ThirdPartyLink\": {\n - \ \"id\": \"ThirdPartyLink\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the third- party account link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource\",\n \"type\": \"string\"\n },\n \"linkingToken\": - {\n \"type\": \"string\",\n \"description\": \"The linking_token - identifies a YouTube account and channel with which the third party account - is linked.\"\n },\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n - \ \"description\": \"The status object contains information about - the status of the link.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n \"default\": - \"youtube#thirdPartyLink\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\"\n },\n \"VideoTopicDetails\": {\n \"properties\": {\n - \ \"topicIds\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of Freebase topic IDs that - are centrally associated with the video. These are topics that are centrally - featured in the video, and it can be said that the video is mainly about each - of these. You can retrieve information about each topic using the \\u003c - a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase Topic - API.\",\n \"type\": \"array\"\n },\n \"relevantTopicIds\": - {\n \"description\": \"Similar to topic_id, except that these topics - are merely relevant to the video. These are topics that may be mentioned in, - or appear in the video. You can retrieve information about each topic using - Freebase Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"topicCategories\": - {\n \"description\": \"A list of Wikipedia URLs that provide a high-level - description of the video's content.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoTopicDetails\",\n \"description\": - \"Freebase topic information related to the video.\"\n },\n \"VideoListResponse\": - {\n \"id\": \"VideoListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Video\"\n },\n \"type\": \"array\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"default\": \"youtube#videoListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveBroadcastContentDetails\": {\n \"id\": - \"LiveBroadcastContentDetails\",\n \"properties\": {\n \"projection\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"projectionUnspecified\",\n \"rectangular\",\n \"360\",\n - \ \"mesh\"\n ],\n \"description\": \"The projection - format of this broadcast. This defaults to rectangular.\",\n \"type\": - \"string\"\n },\n \"enableClosedCaptions\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - HTTP POST closed captioning is enabled for this broadcast. The ingestion URL - of the closed captions is returned through the liveStreams API. This is mutually - exclusive with using the closed_captions_type property, and is equivalent - to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n - \ \"stereoLayout\": {\n \"description\": \"The 3D stereo layout - of this broadcast. This defaults to mono.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n - \ \"leftRight\",\n \"topBottom\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"enableAutoStart\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - auto start is enabled for this broadcast. The default value for this property - is false. This setting can only be used by Events.\"\n },\n \"enableDvr\": - {\n \"description\": \"This setting determines whether viewers can - access DVR controls while watching the video. DVR controls enable the viewer - to control the video playback experience by pausing, rewinding, or fast forwarding - content. The default value for this property is true. *Important:* You must - set the value to true and also set the enableArchive property's value to true - if you want to make playback available immediately after the broadcast ends.\",\n - \ \"type\": \"boolean\"\n },\n \"enableAutoStop\": {\n - \ \"description\": \"This setting indicates whether auto stop is enabled - for this broadcast. The default value for this property is false. This setting - can only be used by Events.\",\n \"type\": \"boolean\"\n },\n - \ \"mesh\": {\n \"description\": \"The mesh for projecting - the video if projection is mesh. The mesh value must be a UTF-8 string containing - the base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC - specification for an mshp box, excluding the box size and type but including - the following four reserved zero bytes for the version and flags.\",\n \"type\": - \"string\",\n \"format\": \"byte\"\n },\n \"monitorStream\": - {\n \"$ref\": \"MonitorStreamInfo\",\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\"\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"recordFromStart\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\"\n },\n \"enableEmbed\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast video can be played in an embedded player. - If you choose to archive the video (using the enableArchive property), this - setting will also apply to the archived video.\"\n },\n \"startWithSlate\": - {\n \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n },\n \"boundStreamId\": {\n \"description\": - \"This value uniquely identifies the live stream bound to the broadcast.\",\n - \ \"type\": \"string\"\n },\n \"enableLowLatency\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast has low latency enabled.\"\n },\n \"latencyPreference\": - {\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\"\n },\n - \ \"closedCaptionsType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ]\n },\n \"enableContentEncryption\": - {\n \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"description\": \"Detailed settings of a broadcast.\",\n - \ \"type\": \"object\"\n },\n \"MembershipsDurationAtLevel\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"memberTotalDurationMonths\": - {\n \"format\": \"int32\",\n \"description\": \"The cumulative - time the user has been a member for the given level in complete months (the - time is rounded down to the nearest integer).\",\n \"type\": \"integer\"\n - \ },\n \"memberSince\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the user became a continuous - member for the given level.\"\n },\n \"level\": {\n \"type\": - \"string\",\n \"description\": \"Pricing level ID.\"\n }\n - \ },\n \"id\": \"MembershipsDurationAtLevel\"\n },\n \"MembershipsDetails\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsDetails\",\n \"properties\": - {\n \"membershipsDuration\": {\n \"description\": \"Data about - memberships duration without taking into consideration pricing levels.\",\n - \ \"$ref\": \"MembershipsDuration\"\n },\n \"highestAccessibleLevel\": - {\n \"type\": \"string\",\n \"description\": \"Id of the - highest level that the user has access to at the moment.\"\n },\n \"membershipsDurationAtLevels\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"MembershipsDurationAtLevel\"\n },\n \"description\": \"Data - about memberships duration on particular pricing levels.\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"description\": \"Display name for the highest level that the - user has access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"accessibleLevels\": {\n \"description\": \"Ids of all levels - that the user has access to. This includes the currently active level and - all other levels that are included because of a higher purchase.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ }\n }\n },\n \"ChannelConversionPing\": {\n \"type\": - \"object\",\n \"description\": \"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.\",\n \"properties\": {\n \"conversionUrl\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"context\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ],\n \"description\": \"Defines the context of the ping.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ChannelConversionPing\"\n - \ },\n \"ActivityContentDetailsFavorite\": {\n \"description\": - \"Information about a video that was marked as a favorite video.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that was marked as - a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n },\n - \ \"id\": \"ActivityContentDetailsFavorite\",\n \"type\": \"object\"\n - \ },\n \"VideoContentDetailsRegionRestriction\": {\n \"properties\": - {\n \"allowed\": {\n \"type\": \"array\",\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"blocked\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of region codes - that identify countries where the video is blocked. If this property is present - and a country is not listed in its value, then the video is viewable in that - country. If this property is present and contains an empty list, the video - is viewable in all countries.\"\n }\n },\n \"description\": - \"DEPRECATED Region restriction of the video.\",\n \"type\": \"object\",\n - \ \"id\": \"VideoContentDetailsRegionRestriction\"\n },\n \"AbuseType\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"AbuseType\"\n - \ },\n \"LocalizedProperty\": {\n \"id\": \"LocalizedProperty\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"default\": - {\n \"type\": \"string\"\n },\n \"localized\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n }\n },\n \"defaultLanguage\": - {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The - language of the default property.\"\n }\n }\n },\n \"VideoFileDetailsAudioStream\": - {\n \"properties\": {\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - audio stream's bitrate, in bits per second.\"\n },\n \"codec\": - {\n \"description\": \"The audio codec that the stream uses.\",\n - \ \"type\": \"string\"\n },\n \"channelCount\": {\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of audio channels that the stream contains.\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoFileDetailsAudioStream\",\n \"description\": \"Information about - an audio stream.\"\n },\n \"VideoFileDetailsVideoStream\": {\n \"description\": - \"Information about a video stream.\",\n \"type\": \"object\",\n \"id\": - \"VideoFileDetailsVideoStream\",\n \"properties\": {\n \"rotation\": - {\n \"type\": \"string\",\n \"description\": \"The amount - that YouTube needs to rotate the original source content to properly display - the video.\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"aspectRatio\": {\n \"format\": \"double\",\n \"type\": - \"number\",\n \"description\": \"The video content's display aspect - ratio, which specifies the aspect ratio in which the video should be displayed.\"\n - \ },\n \"frameRateFps\": {\n \"format\": \"double\",\n - \ \"type\": \"number\",\n \"description\": \"The video stream's - frame rate, in frames per second.\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"heightPixels\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The encoded video content's height - in pixels.\"\n },\n \"widthPixels\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"description\": \"The video - stream's bitrate, in bits per second.\",\n \"type\": \"string\"\n - \ },\n \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The video codec that the stream uses.\"\n }\n }\n },\n \"LiveBroadcastSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"isDefaultBroadcast\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast is the default broadcast. Internal only.\"\n },\n - \ \"scheduledEndTime\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast is scheduled to end.\",\n \"format\": - \"date-time\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - was added to YouTube's live broadcast schedule.\",\n \"type\": \"string\"\n - \ },\n \"actualStartTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast actually - started. This information is only available once the broadcast's state is - live.\",\n \"format\": \"date-time\"\n },\n \"scheduledStartTime\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the broadcast is scheduled to start.\",\n \"type\": - \"string\"\n },\n \"actualEndTime\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - actually ended. This information is only available once the broadcast's state - is complete.\",\n \"format\": \"date-time\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\"\n - \ },\n \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\"\n },\n \"liveChatId\": {\n \"description\": - \"The id of the live chat for this broadcast.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the broadcast. For each nested object - in this object, the key is the name of the thumbnail image, and the value - is an object that contains other information about the thumbnail.\",\n \"$ref\": - \"ThumbnailDetails\"\n }\n },\n \"id\": \"LiveBroadcastSnippet\",\n - \ \"description\": \"Basic broadcast information.\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"type\": \"object\",\n \"description\": \"Information about - a channel that a user subscribed to.\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that the user subscribed to.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"LiveChatMessageRetractedDetails\": {\n \"id\": \"LiveChatMessageRetractedDetails\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelAuditDetails\": - {\n \"type\": \"object\",\n \"id\": \"ChannelAuditDetails\",\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\",\n \"properties\": {\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n }\n }\n },\n - \ \"VideoAbuseReportReason\": {\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID of this abuse report reason.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the abuse report reason.\",\n \"$ref\": \"VideoAbuseReportReasonSnippet\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#videoAbuseReportReason\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n - \ }\n },\n \"id\": \"VideoAbuseReportReason\",\n \"type\": - \"object\",\n \"description\": \"A `__videoAbuseReportReason__` resource - identifies a reason that a video could be reported as abusive. Video abuse - report reasons are used with `video.ReportAbuse`.\"\n },\n \"ChannelStatistics\": - {\n \"id\": \"ChannelStatistics\",\n \"description\": \"Statistics - about a channel: number of subscribers, number of videos in the channel, etc.\",\n - \ \"properties\": {\n \"subscriberCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of subscribers that the - channel has.\",\n \"type\": \"string\"\n },\n \"videoCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of videos uploaded to the channel.\",\n \"type\": \"string\"\n },\n - \ \"viewCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of times the channel has been viewed.\",\n \"format\": - \"uint64\"\n },\n \"hiddenSubscriberCount\": {\n \"description\": - \"Whether or not the number of subscribers is shown for this user.\",\n \"type\": - \"boolean\"\n },\n \"commentCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of comments for the channel.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoSnippet\": {\n \"properties\": {\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the video was uploaded.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"localized\": {\n \"description\": \"Localized snippet selected - with the hl parameter. If no such localization exists, this field is populated - with the default snippet. (Read-only)\",\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"channelTitle\": {\n \"description\": \"Channel - title for the channel that the video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that the video - was uploaded to.\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the videos's default snippet.\",\n \"type\": \"string\"\n - \ },\n \"tags\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of keyword tags - associated with the video. Tags may contain spaces.\",\n \"type\": - \"array\"\n },\n \"liveBroadcastContent\": {\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The live - broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ]\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The video's title. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"categoryId\": {\n \"description\": - \"The YouTube video category associated with the video.\",\n \"type\": - \"string\"\n },\n \"defaultAudioLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The default_audio_language property - specifies the language spoken in the video's default audio track.\"\n }\n - \ },\n \"id\": \"VideoSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about a video, including title, description, uploader, thumbnails - and category.\"\n },\n \"ActivityContentDetailsPromotedItem\": {\n \"id\": - \"ActivityContentDetailsPromotedItem\",\n \"properties\": {\n \"ctaType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"type\": \"string\"\n },\n \"clickTrackingUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user clicked through on this promoted item.\",\n \"type\": - \"string\"\n },\n \"creativeViewUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\",\n \"type\": \"string\"\n },\n \"customCtaButtonText\": - {\n \"type\": \"string\",\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\"\n },\n \"destinationUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should direct - the user to, if the user chooses to visit the advertiser's website.\"\n },\n - \ \"impressionUrl\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\"\n },\n \"forecastingUrl\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"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.\",\n \"type\": \"array\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify the promoted video.\",\n \"type\": - \"string\"\n },\n \"adTag\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should fetch to request a - promoted item.\"\n },\n \"descriptionText\": {\n \"description\": - \"The text description to accompany the promoted item.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Details about a - resource which is being promoted.\",\n \"type\": \"object\"\n },\n - \ \"I18nLanguage\": {\n \"id\": \"I18nLanguage\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n language.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n \"default\": - \"youtube#i18nLanguage\"\n }\n },\n \"description\": \"An - *i18nLanguage* resource identifies a UI language currently supported by YouTube.\"\n - \ },\n \"VideoLiveStreamingDetails\": {\n \"properties\": {\n \"actualStartTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - time that the broadcast actually started. This value will not be available - until the broadcast begins.\",\n \"type\": \"string\"\n },\n - \ \"scheduledEndTime\": {\n \"format\": \"date-time\",\n \"description\": - \"The time that the broadcast is scheduled to end. If the value is empty or - the property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - time that the broadcast is scheduled to begin.\",\n \"type\": \"string\"\n - \ },\n \"concurrentViewers\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\"\n },\n \"actualEndTime\": - {\n \"description\": \"The time that the broadcast actually ended. - This value will not be available until the broadcast is over.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"activeLiveChatId\": - {\n \"description\": \"The ID of the currently active live chat attached - to this video. This field is filled only if the video is a currently live - broadcast that has live chat. Once the broadcast transitions to complete this - field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"Details about the live streaming metadata.\"\n },\n - \ \"CommentThreadSnippet\": {\n \"id\": \"CommentThreadSnippet\",\n - \ \"properties\": {\n \"isPublic\": {\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\",\n \"type\": \"boolean\"\n },\n \"canReply\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comments refer to, if any. No video_id implies a channel discussion - comment.\"\n },\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"topLevelComment\": - {\n \"description\": \"The top level comment of this thread.\",\n - \ \"$ref\": \"Comment\"\n },\n \"totalReplyCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total number of replies (not including the top level comment).\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Basic details - about a comment thread.\"\n },\n \"I18nLanguageListResponse\": {\n \"type\": - \"object\",\n \"id\": \"I18nLanguageListResponse\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nLanguageListResponse\"\n - \ },\n \"items\": {\n \"description\": \"A list of supported - i18n languages. In this map, the i18n language ID is the map key, and its - value is the corresponding i18nLanguage resource.\",\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n },\n \"type\": - \"array\"\n }\n }\n },\n \"LiveChatSuperChatDetails\": {\n - \ \"type\": \"object\",\n \"id\": \"LiveChatSuperChatDetails\",\n - \ \"properties\": {\n \"tier\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The tier in which the amount belongs. Lower amounts - belong to lower tiers. The lowest tier is 1.\",\n \"type\": \"integer\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"format\": \"uint64\",\n \"description\": \"The amount - purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"userComment\": {\n \"description\": \"The comment - added by the user to this Super Chat event.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveStreamListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of live streams that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n - \ }\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"kind\": {\n - \ \"default\": \"youtube#liveStreamListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveStreamListResponse\"\n - \ },\n \"VideoPlayer\": {\n \"type\": \"object\",\n \"properties\": - {\n \"embedHeight\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"embedHtml\": {\n \"type\": \"string\",\n - \ \"description\": \"An \\u003ciframe\\u003e tag that embeds a player - that will play the video.\"\n },\n \"embedWidth\": {\n \"type\": - \"string\",\n \"description\": \"The embed width\",\n \"format\": - \"int64\"\n }\n },\n \"id\": \"VideoPlayer\",\n \"description\": - \"Player to be used for a video playback.\"\n },\n \"LiveStreamContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"closedCaptionsIngestionUrl\": - {\n \"description\": \"The ingestion URL where the closed captions - of this stream are sent.\",\n \"type\": \"string\"\n },\n - \ \"isReusable\": {\n \"description\": \"Indicates whether - the stream is reusable, which means that it can be bound to multiple broadcasts. - It is common for broadcasters to reuse the same stream for many different - broadcasts if those broadcasts occur at different times. If you set this value - to false, then the stream will not be reusable, which means that it can only - be bound to one broadcast. Non-reusable streams differ from reusable streams - in the following ways: - A non-reusable stream can only be bound to one broadcast. - - A non-reusable stream might be deleted by an automated process after the - broadcast ends. - The liveStreams.list method does not list non-reusable streams - if you call the method and set the mine parameter to true. The only way to - use that method to retrieve the resource for a non-reusable stream is to use - the id parameter to identify the stream. \",\n \"type\": \"boolean\"\n - \ }\n },\n \"description\": \"Detailed settings of a stream.\",\n - \ \"id\": \"LiveStreamContentDetails\"\n },\n \"ActivityListResponse\": - {\n \"properties\": {\n \"items\": {\n \"items\": {\n - \ \"$ref\": \"Activity\"\n },\n \"type\": \"array\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#activityListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": - \"ActivityListResponse\",\n \"type\": \"object\"\n },\n \"I18nRegion\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n region.\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nRegion\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"I18nRegion\",\n \"description\": \"A *i18nRegion* resource - identifies a region where YouTube is available.\"\n },\n \"LanguageTag\": - {\n \"type\": \"object\",\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LanguageTag\"\n - \ },\n \"LiveBroadcastStatus\": {\n \"properties\": {\n \"liveBroadcastPriority\": - {\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"enumDescriptions\": [\n \"\",\n \"Low - priority broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ],\n \"type\": \"string\"\n },\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The broadcast's - privacy status. Note that the broadcast represents exactly one YouTube video, - so the privacy settings are identical to those supported for videos. In addition, - you can set this field by modifying the broadcast resource or by setting the - privacyStatus field of the corresponding video resource.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"madeForKids\": {\n \"description\": - \"Whether the broadcast is made for kids or not, decided by YouTube instead - of the creator. This field is read only.\",\n \"type\": \"boolean\"\n - \ },\n \"recordingStatus\": {\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ],\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The broadcast's recording status.\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"This field - will be set to True if the creator declares the broadcast to be kids only: - go/live-cw-work.\"\n },\n \"lifeCycleStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"Incomplete settings, but otherwise - valid\",\n \"Complete settings\",\n \"Visible only to - partner, may need special UI treatment\",\n \"Viper is recording; - this means the \\\"clock\\\" is running\",\n \"The broadcast is - finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ]\n - \ }\n },\n \"description\": \"Live broadcast state.\",\n \"type\": - \"object\",\n \"id\": \"LiveBroadcastStatus\"\n },\n \"VideoContentDetails\": - {\n \"id\": \"VideoContentDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"caption\": {\n \"enum\": [\n \"true\",\n - \ \"false\"\n ],\n \"description\": \"The value - of captions indicates whether the video has captions or not.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"countryRestriction\": {\n \"$ref\": - \"AccessPolicy\",\n \"description\": \"The countryRestriction object - contains information about the countries where a video is (or is not) viewable.\"\n - \ },\n \"licensedContent\": {\n \"description\": \"The - value of is_license_content indicates whether the video is licensed content.\",\n - \ \"type\": \"boolean\"\n },\n \"contentRating\": {\n - \ \"$ref\": \"ContentRating\",\n \"description\": \"Specifies - the ratings that the video received under various rating schemes.\"\n },\n - \ \"regionRestriction\": {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\"\n },\n \"hasCustomThumbnail\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\"\n },\n \"projection\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the projection format of the video.\",\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ]\n },\n \"duration\": {\n \"description\": - \"The length of the video. The tag value is an ISO 8601 duration in the format - PT#M#S, in which the letters PT indicate that the value specifies a period - of time, and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\",\n \"type\": - \"string\"\n },\n \"definition\": {\n \"enumDescriptions\": - [\n \"sd\",\n \"hd\"\n ],\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"sd\",\n \"hd\"\n ]\n - \ },\n \"dimension\": {\n \"description\": \"The value - of dimension indicates whether the video is available in 3D or in 2D.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Details about the content of a YouTube Video.\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"properties\": {\n \"giftMembershipsLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the level of the gift - memberships purchased by the user. The Level names are defined by the YouTube - channel offering the Membership. In some situations this field isn't filled.\"\n - \ },\n \"giftMembershipsCount\": {\n \"description\": - \"The number of gift memberships purchased by the user.\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n }\n },\n \"id\": - \"LiveChatMembershipGiftingDetails\",\n \"type\": \"object\"\n },\n - \ \"SearchResult\": {\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"default\": \"youtube#searchResult\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about a search result, such as its title or - description. For example, if the search result is a video, then the title - will be the video's title and the description will be the video's description.\",\n - \ \"$ref\": \"SearchResultSnippet\"\n },\n \"id\": {\n - \ \"description\": \"The id object contains information that can be - used to uniquely identify the resource that matches the search request.\",\n - \ \"$ref\": \"ResourceId\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A search result contains information about a YouTube - video, channel, or playlist that matches the search parameters specified in - an API request. While a search result points to a uniquely identifiable resource, - like a video, it does not have its own persistent data.\",\n \"id\": - \"SearchResult\"\n },\n \"SubscriptionSnippet\": {\n \"type\": - \"object\",\n \"description\": \"Basic details about a subscription, - including title, description and thumbnails of the subscribed item.\",\n \"id\": - \"SubscriptionSnippet\",\n \"properties\": {\n \"description\": - {\n \"description\": \"The subscription's details.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the subscription was created.\",\n - \ \"format\": \"date-time\"\n },\n \"title\": {\n \"description\": - \"The subscription's title.\",\n \"type\": \"string\"\n },\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"annotations\": - {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"description\": \"The id object contains - information about the channel that the user subscribed to.\"\n },\n - \ \"channelTitle\": {\n \"description\": \"Channel title for - the channel that the subscription belongs to.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the subscriber's channel.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The `visitorId` identifies the visitor.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"description\": \"A list of valid abuse reasons - that are used with `video.ReportAbuse`.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ }\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ResourceId\": - {\n \"properties\": {\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"The type of the API resource.\",\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a video. This property - is only present if the resourceId.kind value is youtube#video.\"\n },\n - \ \"playlistId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a playlist. - This property is only present if the resourceId.kind value is youtube#playlist.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A resource id is a generic reference that points - to another YouTube resource.\",\n \"id\": \"ResourceId\"\n },\n \"MonitorStreamInfo\": - {\n \"description\": \"Settings and Info of the monitor stream\",\n \"properties\": - {\n \"broadcastStreamDelayMs\": {\n \"format\": \"uint32\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"integer\",\n \"description\": - \"If you have set the enableMonitorStream property to true, then this property - determines the length of the live broadcast delay.\"\n },\n \"enableMonitorStream\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"boolean\",\n \"description\": - \"This value determines whether the monitor stream is enabled for the broadcast. - If the monitor stream is enabled, then YouTube will broadcast the event content - on a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\"\n },\n - \ \"embedHtml\": {\n \"description\": \"HTML code that embeds - a player that plays the monitor stream.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"MonitorStreamInfo\"\n - \ },\n \"VideoRating\": {\n \"description\": \"Basic details about - rating of a video.\",\n \"id\": \"VideoRating\",\n \"properties\": - {\n \"rating\": {\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"Rating of - a video.\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelSnippet\": - {\n \"description\": \"Basic details about a channel, including title, - description and thumbnails.\",\n \"type\": \"object\",\n \"id\": - \"ChannelSnippet\",\n \"properties\": {\n \"localized\": {\n \"$ref\": - \"ChannelLocalization\",\n \"description\": \"Localized title and - description, read-only.\"\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the channel.\"\n },\n \"title\": {\n \"description\": - \"The channel's title.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel's default title - and description.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the channel was created.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"description\": \"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. When displaying thumbnails in your - application, make sure that your code uses the image URLs exactly as they - are returned in API responses. For example, your application should not use - the http domain instead of the https domain in a URL returned in an API response. - Beginning in July 2018, channel thumbnail URLs will only be available in the - https domain, which is how the URLs appear in API responses. After that time, - you might see broken images in your application if it tries to load YouTube - images from the http domain. Thumbnail images might be empty for newly created - channels and might take up to one day to populate.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"customUrl\": {\n \"description\": - \"The custom url of the channel.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveStreamSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamSnippet\",\n \"properties\": {\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The stream's title. The value must be between - 1 and 128 characters long.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The stream's description. The value - cannot be longer than 10000 characters.\"\n },\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n },\n \"publishedAt\": {\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the stream was created.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"Member\": {\n \"id\": \"Member\",\n - \ \"description\": \"A *member* resource represents a member for a YouTube - channel. A member provides recurring monetary support to a creator and receives - special benefits.\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the member.\",\n \"$ref\": \"MemberSnippet\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#member\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#member\\\".\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"Playlist\": - {\n \"id\": \"Playlist\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"default\": \"youtube#playlist\",\n \"type\": \"string\"\n - \ },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"PlaylistContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - like video count.\"\n },\n \"status\": {\n \"description\": - \"The status object contains status information for the playlist.\",\n \"$ref\": - \"PlaylistStatus\"\n },\n \"player\": {\n \"$ref\": - \"PlaylistPlayer\",\n \"description\": \"The player object contains - information that you would use to play the playlist in an embedded player.\"\n - \ },\n \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist, such as its title and description.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the playlist.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"A *playlist* resource - represents a YouTube playlist. A playlist is a collection of videos that can - be viewed sequentially and shared with other users. A playlist can contain - up to 200 videos, and YouTube does not limit the number of playlists that - each user creates. By default, playlists are publicly visible to other users, - but playlists can be public or private. YouTube also uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods.\"\n - \ },\n \"SearchListResponse\": {\n \"id\": \"SearchListResponse\",\n - \ \"properties\": {\n \"regionCode\": {\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"SearchResult\"\n },\n \"description\": \"Pagination information - for token pagination.\",\n \"type\": \"array\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"default\": \"youtube#searchListResponse\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"type\": - \"object\"\n },\n \"SuperChatEventListResponse\": {\n \"id\": \"SuperChatEventListResponse\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#superChatEventListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"description\": \"A list of Super Chat purchases - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"SuperChatEvent\"\n },\n \"type\": \"array\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ChannelToStoreLinkDetails\": - {\n \"id\": \"ChannelToStoreLinkDetails\",\n \"properties\": {\n - \ \"storeUrl\": {\n \"type\": \"string\",\n \"description\": - \"Landing page of the store.\"\n },\n \"merchantId\": {\n \"description\": - \"Google Merchant Center id of the store.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"storeName\": {\n \"description\": - \"Name of the store.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"type\": \"object\"\n },\n - \ \"RelatedEntity\": {\n \"id\": \"RelatedEntity\",\n \"type\": - \"object\",\n \"properties\": {\n \"entity\": {\n \"$ref\": - \"Entity\"\n }\n }\n },\n \"VideoStatus\": {\n \"id\": - \"VideoStatus\",\n \"description\": \"Basic details about a video category, - such as its localized title. Next Id: 18\",\n \"properties\": {\n \"license\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"description\": \"The - video's license. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"rejectionReason\": {\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"description\": \"This value explains why YouTube - rejected an uploaded video. This property is only present if the uploadStatus - property indicates that the upload was rejected.\",\n \"type\": \"string\"\n - \ },\n \"privacyStatus\": {\n \"description\": \"The - video's privacy status.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"uploadStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Video has been - uploaded but not processed yet.\",\n \"Video has been successfully - processed.\",\n \"Processing has failed. See FailureReason.\",\n - \ \"Video has been rejected. See RejectionReason.\",\n \"Video - has been deleted.\"\n ],\n \"description\": \"The status - of the uploaded video.\",\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ]\n },\n \"embeddable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"publishAt\": {\n \"description\": - \"The date and time when the video is scheduled to publish. It can be set - only if the privacy status of the video is private..\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"failureReason\": - {\n \"description\": \"This value explains why a video failed to - upload. This property is only present if the uploadStatus property indicates - that the upload failed.\",\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Unable to convert - video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ]\n },\n - \ \"publicStatsViewable\": {\n \"type\": \"boolean\",\n \"description\": - \"This value indicates if the extended video statistics on the watch page - can be viewed by everyone. Note that the view count, likes, etc will still - be visible if this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"CaptionSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a caption track, such as its language and name.\",\n \"properties\": - {\n \"failureReason\": {\n \"description\": \"The reason that - YouTube failed to process the caption track. This property is only present - if the state property's value is failed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"unknownFormat\",\n - \ \"unsupportedFormat\",\n \"processingFailed\"\n ]\n - \ },\n \"isAutoSynced\": {\n \"description\": \"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.\",\n - \ \"type\": \"boolean\"\n },\n \"name\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The name of the - caption track. The name is intended to be visible to the user as an option - during playback.\",\n \"type\": \"string\"\n },\n \"trackKind\": - {\n \"type\": \"string\",\n \"enum\": [\n \"standard\",\n - \ \"ASR\",\n \"forced\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The caption track's type.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video associated with the caption track. - @mutable youtube.captions.insert\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n }\n - \ },\n \"lastUpdated\": {\n \"description\": \"The date - and time when the caption track was last updated.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"language\": - {\n \"description\": \"The language of the caption track. The property - value is a BCP-47 language tag.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"status\": {\n \"enum\": - [\n \"serving\",\n \"syncing\",\n \"failed\"\n - \ ],\n \"description\": \"The caption track's status.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"isLarge\": - {\n \"description\": \"Indicates whether the caption track uses large - text for the vision-impaired. The default value is false.\",\n \"type\": - \"boolean\"\n },\n \"isCC\": {\n \"description\": \"Indicates - whether the track contains closed captions for the deaf and hard of hearing. - The default value is false.\",\n \"type\": \"boolean\"\n },\n - \ \"isEasyReader\": {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"audioTrackType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The type of audio track associated with the caption track.\",\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ]\n },\n \"isDraft\": - {\n \"type\": \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n }\n },\n \"id\": \"CaptionSnippet\"\n - \ },\n \"VideoAgeGating\": {\n \"properties\": {\n \"alcoholContent\": - {\n \"description\": \"Indicates whether or not the video has alcoholic - beverage content. Only users of legal purchasing age in a particular country, - as identified by ICAP, can view the content.\",\n \"type\": \"boolean\"\n - \ },\n \"videoGameRating\": {\n \"description\": \"Video - game rating, if any.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ]\n },\n - \ \"restricted\": {\n \"type\": \"boolean\",\n \"description\": - \"Age-restricted trailers. For redband trailers and adult-rated video-games. - Only users aged 18+ can view the content. The the field is true the content - is restricted to viewers aged 18+. Otherwise The field won't be present.\"\n - \ }\n },\n \"id\": \"VideoAgeGating\",\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"description\": - \"Information that identifies the recommended resource.\",\n \"type\": - \"object\",\n \"properties\": {\n \"reason\": {\n \"description\": - \"The reason that the resource is recommended to the user.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ]\n },\n \"seedResourceId\": {\n \"description\": - \"The seedResourceId object contains information about the resource that caused - the recommendation.\",\n \"$ref\": \"ResourceId\"\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the recommended resource.\",\n \"$ref\": \"ResourceId\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsRecommendation\"\n - \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"The details of the - user that was banned.\"\n },\n \"banDurationSeconds\": {\n \"type\": - \"string\",\n \"description\": \"The duration of the ban. This property - is only present if the banType is temporary.\",\n \"format\": \"uint64\"\n - \ },\n \"banType\": {\n \"description\": \"The type - of ban.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"permanent\",\n \"temporary\"\n ]\n }\n - \ },\n \"id\": \"LiveChatUserBannedMessageDetails\"\n },\n \"TestItem\": - {\n \"properties\": {\n \"gaia\": {\n \"format\": \"int64\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"TestItem\"\n - \ },\n \"VideoSuggestions\": {\n \"id\": \"VideoSuggestions\",\n - \ \"properties\": {\n \"tagSuggestions\": {\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\",\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"type\": \"array\"\n },\n \"editorSuggestions\": - {\n \"description\": \"A list of video editing operations that might - improve the video quality or playback experience of the uploaded video.\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ],\n - \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"processingHints\": {\n \"description\": \"A - list of suggestions that may improve YouTube's ability to process the video.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"enum\": - [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"processingWarnings\": - {\n \"description\": \"A list of reasons why YouTube may have difficulty - transcoding the uploaded video or that might result in an erroneous transcoding. - These warnings are generated before YouTube actually processes the uploaded - video file. In addition, they identify issues that are unlikely to cause the - video processing to fail but that might cause problems such as sync issues, - video artifacts, or a missing audio track.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n - \ \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ]\n },\n \"type\": \"array\"\n },\n \"processingErrors\": - {\n \"description\": \"A list of errors that will prevent YouTube - from successfully processing the uploaded video video. These errors indicate - that, regardless of the video's current processing status, eventually, that - status will almost certainly be failed.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n - \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n - \ \"unsupportedSpatialAudioLayout\"\n ],\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ]\n }\n }\n },\n \"type\": - \"object\",\n \"description\": \"Specifies suggestions on how to improve - video content, including encoding hints, tag suggestions, and editor suggestions.\"\n - \ },\n \"LiveChatMessageListResponse\": {\n \"id\": \"LiveChatMessageListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"offlineAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the underlying stream went offline.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"type\": \"array\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pollingIntervalMillis\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The amount of time the client should wait before polling again.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatMessageListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n - \ }\n }\n },\n \"VideoAbuseReportReasonSnippet\": {\n \"description\": - \"Basic details about a video category, such as its localized title.\",\n - \ \"properties\": {\n \"secondaryReasons\": {\n \"type\": - \"array\",\n \"description\": \"The secondary reasons associated - with this reason, if any are available. (There might be 0 or more.)\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n }\n - \ },\n \"label\": {\n \"description\": \"The localized - label belonging to this abuse report reason.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonSnippet\"\n - \ },\n \"CommentSnippetAuthorChannelId\": {\n \"type\": \"object\",\n - \ \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"id\": \"CommentSnippetAuthorChannelId\",\n \"properties\": {\n - \ \"value\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"AccessPolicy\": {\n \"properties\": {\n \"allowed\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of allowed indicates whether the access to the policy is allowed or denied - by default.\"\n },\n \"exception\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the default policy do not apply.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Rights management policy for YouTube - resources.\",\n \"id\": \"AccessPolicy\"\n },\n \"Subscription\": - {\n \"description\": \"A *subscription* resource contains information - about a YouTube user subscription. A subscription notifies a user when new - videos are added to a channel or when another user takes one of several actions - on YouTube, such as uploading a video, rating a video, or commenting on a - video.\",\n \"properties\": {\n \"subscriberSnippet\": {\n \"$ref\": - \"SubscriptionSubscriberSnippet\",\n \"description\": \"The subscriberSnippet - object contains basic details about the subscriber.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the subscription.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"default\": \"youtube#subscription\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the subscription, including its title - and the channel that the user subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"SubscriptionContentDetails\",\n - \ \"description\": \"The contentDetails object contains basic statistics - about the subscription.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"Subscription\"\n },\n \"VideoProjectDetails\": {\n \"type\": - \"object\",\n \"properties\": {},\n \"description\": \"DEPRECATED. - b/157517979: This part was never populated after it was added. However, it - sees non-zero traffic because there is generated client code in the wild that - refers to it [1]. We keep this field and do NOT remove it because otherwise - V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"id\": \"VideoProjectDetails\"\n },\n \"ChannelSection\": {\n - \ \"id\": \"ChannelSection\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel section.\",\n \"type\": \"string\"\n - \ },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"description\": \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n }\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSection\\\".\",\n \"default\": - \"youtube#channelSection\"\n },\n \"targeting\": {\n \"$ref\": - \"ChannelSectionTargeting\",\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"CaptionListResponse\": - {\n \"id\": \"CaptionListResponse\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#captionListResponse\\\".\",\n \"default\": - \"youtube#captionListResponse\"\n },\n \"items\": {\n \"description\": - \"A list of captions that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Caption\"\n },\n \"type\": \"array\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"id\": \"LiveChatNewSponsorDetails\",\n \"properties\": {\n - \ \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n },\n \"isUpgrade\": {\n \"type\": - \"boolean\",\n \"description\": \"If the viewer just had upgraded - from a lower level. For viewers that were not members at the time of purchase, - this field is false.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"MemberSnippet\": {\n \"type\": \"object\",\n \"id\": - \"MemberSnippet\",\n \"properties\": {\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering memberships.\"\n },\n \"membershipsDetails\": - {\n \"description\": \"Details about the user's membership.\",\n - \ \"$ref\": \"MembershipsDetails\"\n },\n \"memberDetails\": - {\n \"description\": \"Details about the member.\",\n \"$ref\": - \"ChannelProfileDetails\"\n }\n }\n },\n \"LiveBroadcastStatistics\": - {\n \"type\": \"object\",\n \"description\": \"Statistics about - the live broadcast. These represent a snapshot of the values at the time of - the request. Statistics are only returned for live broadcasts.\",\n \"id\": - \"LiveBroadcastStatistics\",\n \"properties\": {\n \"totalChatCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The total - number of live chat messages currently on the broadcast. The property and - its value will be present if the broadcast is public, has the live chat feature - enabled, and has at least one message. Note that this field will not be filled - after the broadcast ends. So this property would not identify the number of - chat messages for an archived video of a completed live broadcast.\",\n \"type\": - \"string\"\n },\n \"concurrentViewers\": {\n \"type\": - \"string\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"format\": \"uint64\"\n }\n }\n - \ },\n \"ChannelSectionSnippet\": {\n \"id\": \"ChannelSectionSnippet\",\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\",\n \"properties\": {\n \"style\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The style of - the channel section.\",\n \"type\": \"string\",\n \"enum\": - [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ]\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the channel section.\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the channel section's default title and description.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"$ref\": \"ChannelSectionLocalization\",\n - \ \"description\": \"Localized title, read-only.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel - section's title for multiple_playlists and multiple_channels.\"\n },\n - \ \"type\": {\n \"description\": \"The type of the channel - section.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ],\n \"type\": \"string\"\n },\n \"position\": - {\n \"format\": \"uint32\",\n \"description\": \"The position - of the channel section in the channel.\",\n \"type\": \"integer\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"CommentThread\": - {\n \"type\": \"object\",\n \"description\": \"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.\",\n - \ \"properties\": {\n \"replies\": {\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#commentThread\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"CommentThread\"\n - \ },\n \"ActivityContentDetailsComment\": {\n \"description\": \"Information - about a resource that received a comment.\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with the - comment.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsComment\"\n },\n \"ActivityContentDetails\": - {\n \"description\": \"Details about the content of an activity: the - video that was shared, the channel that was subscribed to, etc.\",\n \"type\": - \"object\",\n \"properties\": {\n \"like\": {\n \"description\": - \"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.\",\n - \ \"$ref\": \"ActivityContentDetailsLike\"\n },\n \"subscription\": - {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n \"description\": - \"The subscription object contains information about a channel that a user - subscribed to. This property is only present if the snippet.type is subscription.\"\n - \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"playlistItem\": {\n \"$ref\": - \"ActivityContentDetailsPlaylistItem\",\n \"description\": \"The - playlistItem object contains information about a new playlist item. This property - is only present if the snippet.type is playlistItem.\"\n },\n \"promotedItem\": - {\n \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\",\n \"$ref\": \"ActivityContentDetailsPromotedItem\"\n - \ },\n \"upload\": {\n \"description\": \"The upload - object contains information about the uploaded video. This property is only - present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"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.\"\n },\n \"bulletin\": {\n - \ \"$ref\": \"ActivityContentDetailsBulletin\",\n \"description\": - \"The bulletin object contains details about a channel bulletin post. This - object is only present if the snippet.type is bulletin.\"\n },\n \"social\": - {\n \"description\": \"The social object contains details about a - social network post. This property is only present if the snippet.type is - social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n },\n - \ \"channelItem\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsChannelItem\"\n },\n \"recommendation\": - {\n \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\",\n \"$ref\": \"ActivityContentDetailsRecommendation\"\n - \ }\n },\n \"id\": \"ActivityContentDetails\"\n },\n \"TokenPagination\": - {\n \"id\": \"TokenPagination\",\n \"type\": \"object\",\n \"properties\": - {},\n \"description\": \"Stub token pagination template to suppress results.\"\n - \ },\n \"ChannelStatus\": {\n \"description\": \"JSON template for - the status part of a channel.\",\n \"id\": \"ChannelStatus\",\n \"properties\": - {\n \"longUploadsStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"type\": \"string\",\n \"enum\": - [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"Privacy status of the channel.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"isLinked\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessage\": - {\n \"type\": \"object\",\n \"description\": \"A *liveChatMessage* - resource represents a chat message in a YouTube Live Chat.\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the message.\"\n },\n \"authorDetails\": {\n \"$ref\": - \"LiveChatMessageAuthorDetails\",\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\"\n - \ },\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessage\\\".\",\n \"default\": - \"youtube#liveChatMessage\"\n }\n },\n \"id\": \"LiveChatMessage\"\n - \ },\n \"InvideoTiming\": {\n \"id\": \"InvideoTiming\",\n \"properties\": - {\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"Describes a timing type. If the value is offsetFromStart, then the offsetMs - field represents an offset from the start of the video. If the value is offsetFromEnd, - then the offsetMs field represents an offset from the end of the video.\",\n - \ \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ]\n },\n \"durationMs\": {\n \"format\": - \"uint64\",\n \"description\": \"Defines the duration in milliseconds - for which the promotion should be displayed. If missing, the client should - use the default.\",\n \"type\": \"string\"\n },\n \"offsetMs\": - {\n \"description\": \"Defines the time at which the promotion will - appear. Depending on the value of type the value of the offsetMs field will - represent a time offset from the start or from the end of the video, expressed - in milliseconds.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Describes a temporal - position of a visual widget inside a video.\",\n \"type\": \"object\"\n - \ },\n \"PlaylistContentDetails\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistContentDetails\",\n \"properties\": {\n \"itemCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The number - of videos in the playlist.\",\n \"type\": \"integer\"\n }\n - \ }\n },\n \"InvideoBranding\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"imageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The url of the uploaded image. Only used in apiary - to api communication.\"\n },\n \"imageBytes\": {\n \"type\": - \"string\",\n \"format\": \"byte\",\n \"description\": \"The - bytes the uploaded image. Only used in api to youtube communication.\"\n },\n - \ \"timing\": {\n \"description\": \"The temporal position - within the video where watermark will be displayed.\",\n \"$ref\": - \"InvideoTiming\"\n },\n \"targetChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The channel to which this branding - links. If not present it defaults to the current channel.\"\n },\n - \ \"position\": {\n \"$ref\": \"InvideoPosition\",\n \"description\": - \"The spatial position within the video where the branding watermark will - be displayed.\"\n }\n },\n \"description\": \"LINT.IfChange - Describes an invideo branding.\",\n \"id\": \"InvideoBranding\"\n },\n - \ \"Video\": {\n \"description\": \"A *video* resource represents a - YouTube video.\",\n \"properties\": {\n \"liveStreamingDetails\": - {\n \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\",\n \"$ref\": - \"VideoLiveStreamingDetails\"\n },\n \"contentDetails\": {\n - \ \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"player\": - {\n \"$ref\": \"VideoPlayer\",\n \"description\": \"The - player object contains information that you would use to play the video in - an embedded player.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\"\n },\n \"status\": {\n - \ \"$ref\": \"VideoStatus\",\n \"description\": \"The status - object contains information about the video's uploading, processing, and privacy - statuses.\"\n },\n \"topicDetails\": {\n \"$ref\": - \"VideoTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the video.\"\n - \ },\n \"projectDetails\": {\n \"$ref\": \"VideoProjectDetails\",\n - \ \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"monetizationDetails\": {\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\",\n \"$ref\": \"VideoMonetizationDetails\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"recordingDetails\": - {\n \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\",\n \"$ref\": - \"VideoRecordingDetails\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"default\": \"youtube#video\",\n \"type\": \"string\"\n - \ },\n \"processingDetails\": {\n \"$ref\": \"VideoProcessingDetails\",\n - \ \"description\": \"The processingDetails object encapsulates information - about YouTube's progress in processing the uploaded video file. The properties - in the object identify the current processing status and an estimate of the - time remaining until YouTube finishes processing the video. This part also - indicates whether different types of data or content, such as file details - or thumbnail images, are available for the video. The processingProgress object - is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\"\n },\n \"ageGating\": - {\n \"$ref\": \"VideoAgeGating\",\n \"description\": \"Age - restriction details related to a video. This data can only be retrieved by - the video owner.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains statistics about the video.\",\n \"$ref\": - \"VideoStatistics\"\n },\n \"snippet\": {\n \"$ref\": - \"VideoSnippet\",\n \"description\": \"The snippet object contains - basic details about the video, such as its title, description, and category.\"\n - \ },\n \"suggestions\": {\n \"$ref\": \"VideoSuggestions\",\n - \ \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\"\n - \ },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"VideoLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\"\n },\n \"fileDetails\": {\n \"$ref\": - \"VideoFileDetails\",\n \"description\": \"The fileDetails object - encapsulates information about the video file that was uploaded to YouTube, - including the file's resolution, duration, audio and video codecs, stream - bitrates, and more. This data can only be retrieved by the video owner.\"\n - \ }\n },\n \"id\": \"Video\",\n \"type\": \"object\"\n - \ },\n \"PlaylistItem\": {\n \"id\": \"PlaylistItem\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"default\": \"youtube#playlistItem\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the playlist item, such as its title and position in the playlist.\",\n - \ \"$ref\": \"PlaylistItemSnippet\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the playlist item.\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the playlist item's privacy status.\",\n \"$ref\": \"PlaylistItemStatus\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n - \ }\n },\n \"description\": \"A *playlistItem* resource identifies - another resource, such as a video, that is included in a playlist. In addition, - the playlistItem resource contains details about the included resource that - pertain specifically to how that resource is used in that playlist. YouTube - uses playlists to identify special collections of videos for a channel, such - as: - uploaded videos - favorite videos - positively rated (liked) videos - - watch history - watch later To be more specific, these lists are associated - with a channel, which is a collection of a person, group, or company's videos, - playlists, and other YouTube information. You can retrieve the playlist IDs - for each of these lists from the channel resource for a given channel. You - can then use the playlistItems.list method to retrieve any of those lists. - You can also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods. For example, if a user gives a positive - rating to a video, you would insert that video into the liked videos playlist - for that user's channel.\",\n \"type\": \"object\"\n },\n \"Caption\": - {\n \"type\": \"object\",\n \"description\": \"A *caption* resource - represents a YouTube caption track. A caption track is associated with exactly - one YouTube video.\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"CaptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the caption.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#caption\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the caption track.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n },\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"Caption\"\n - \ },\n \"ActivitySnippet\": {\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the resource primarily associated with the activity. @mutable youtube.activities.insert\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n - \ \"like\",\n \"favorite\",\n \"comment\",\n - \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n - \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ],\n \"description\": \"The - type of activity that the resource describes.\"\n },\n \"groupId\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"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.\"\n },\n \"title\": - {\n \"description\": \"The title of the resource primarily associated - with the activity.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel responsible - for this activity\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the video was uploaded.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel associated with - the activity.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic details about an activity, including title, description, thumbnails, - activity type and group. Next ID: 12\",\n \"id\": \"ActivitySnippet\"\n - \ },\n \"VideoLocalization\": {\n \"properties\": {\n \"description\": - {\n \"description\": \"Localized version of the video's description.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"Localized version of the video's title.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Localized versions of certain - video properties (e.g. title).\",\n \"id\": \"VideoLocalization\",\n - \ \"type\": \"object\"\n },\n \"ChannelContentDetails\": {\n \"properties\": - {\n \"relatedPlaylists\": {\n \"properties\": {\n \"uploads\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s uploaded videos. Use the - videos.insert method to upload new videos and the videos.delete method to - delete previously uploaded videos.\"\n },\n \"likes\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"favorites\": {\n \"description\": \"The ID of the - playlist that contains the channel\\\"s favorite videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n },\n \"watchLater\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\",\n \"type\": \"string\"\n },\n \"watchHistory\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n }\n },\n - \ \"description\": \"Details about the content of a channel.\",\n \"id\": - \"ChannelContentDetails\",\n \"type\": \"object\"\n },\n \"VideoCategoryListResponse\": - {\n \"id\": \"VideoCategoryListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#videoCategoryListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoCategory\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ActivityContentDetailsUpload\": - {\n \"description\": \"Information about the uploaded video.\",\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsUpload\"\n - \ },\n \"ChannelSectionTargeting\": {\n \"description\": \"ChannelSection - targeting setting.\",\n \"type\": \"object\",\n \"properties\": - {\n \"countries\": {\n \"description\": \"The country the - channel section is targeting.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"regions\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The region the channel - section is targeting.\"\n },\n \"languages\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The language the channel section is targeting.\",\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"ChannelSectionTargeting\"\n },\n \"WatchSettings\": - {\n \"id\": \"WatchSettings\",\n \"properties\": {\n \"backgroundColor\": - {\n \"type\": \"string\",\n \"description\": \"The text - color for the video watch page's branded area.\"\n },\n \"featuredPlaylistId\": - {\n \"type\": \"string\",\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\"\n - \ },\n \"textColor\": {\n \"description\": \"The background - color for the video watch page's branded area.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Branding properties for the - watch. All deprecated.\",\n \"type\": \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"properties\": {\n \"userComment\": {\n \"description\": - \"The comment added by the member to this Member Milestone Chat. This field - is empty for messages without a comment from the member.\",\n \"type\": - \"string\"\n },\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level at which the - viever is a member. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n },\n - \ \"memberMonth\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The total amount of months (rounded - up) the viewer has been a member that granted them this Member Milestone Chat. - This is the same number of months as is being displayed to YouTube users.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"VideoCategorySnippet\": {\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The video - category's title.\"\n },\n \"assignable\": {\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"description\": \"The YouTube channel - that created the video category.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Basic details about a video category, such - as its localized title.\",\n \"type\": \"object\",\n \"id\": \"VideoCategorySnippet\"\n - \ },\n \"PlaylistPlayer\": {\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\"\n }\n },\n - \ \"id\": \"PlaylistPlayer\",\n \"type\": \"object\"\n },\n \"Channel\": - {\n \"type\": \"object\",\n \"id\": \"Channel\",\n \"description\": - \"A *channel* resource contains information about a YouTube channel.\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"description\": \"The status object encapsulates information - about the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the channel, such as its title, description, and thumbnail images.\"\n },\n - \ \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n \"description\": - \"The statistics object encapsulates statistics for the channel.\"\n },\n - \ \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel.\",\n \"type\": \"string\"\n },\n - \ \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n - \ \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\"\n - \ },\n \"localizations\": {\n \"description\": \"Localizations - for different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelLocalization\"\n },\n \"type\": \"object\"\n },\n - \ \"brandingSettings\": {\n \"$ref\": \"ChannelBrandingSettings\",\n - \ \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"default\": \"youtube#channel\",\n \"type\": \"string\"\n - \ },\n \"topicDetails\": {\n \"description\": \"The - topicDetails object encapsulates information about Freebase topics associated - with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n - \ \"description\": \"The contentDetails object encapsulates information - about the channel's content.\"\n },\n \"contentOwnerDetails\": - {\n \"description\": \"The contentOwnerDetails object encapsulates - channel data that is relevant for YouTube Partners linked with the channel.\",\n - \ \"$ref\": \"ChannelContentOwnerDetails\"\n }\n }\n },\n - \ \"SuperStickerMetadata\": {\n \"type\": \"object\",\n \"id\": - \"SuperStickerMetadata\",\n \"properties\": {\n \"altTextLanguage\": - {\n \"description\": \"Specifies the localization language in which - the alt text is returned.\",\n \"type\": \"string\"\n },\n - \ \"altText\": {\n \"type\": \"string\",\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\"\n },\n \"stickerId\": {\n \"type\": - \"string\",\n \"description\": \"Unique identifier of the Super Sticker. - This is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\"\n }\n }\n },\n \"Thumbnail\": - {\n \"type\": \"object\",\n \"properties\": {\n \"url\": - {\n \"type\": \"string\",\n \"description\": \"The thumbnail - image's URL.\"\n },\n \"width\": {\n \"type\": \"integer\",\n - \ \"description\": \"(Optional) Width of the thumbnail image.\",\n - \ \"format\": \"uint32\"\n },\n \"height\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"(Optional) Height of the thumbnail image.\"\n }\n },\n \"id\": - \"Thumbnail\",\n \"description\": \"A thumbnail is an image representing - a YouTube resource.\"\n },\n \"ChannelSettings\": {\n \"properties\": - {\n \"trackingAnalyticsAccountId\": {\n \"description\": \"The - ID for a Google Analytics account to track and measure traffic to the channels.\",\n - \ \"type\": \"string\"\n },\n \"featuredChannelsUrls\": - {\n \"type\": \"array\",\n \"description\": \"The list of - featured channels.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n },\n \"showBrowseView\": {\n \"description\": - \"Whether the tab to browse the videos should be displayed.\",\n \"type\": - \"boolean\"\n },\n \"profileColor\": {\n \"type\": - \"string\",\n \"description\": \"A prominent color that can be rendered - on this channel page.\"\n },\n \"defaultTab\": {\n \"type\": - \"string\",\n \"description\": \"Which content tab users should see - when viewing the channel.\"\n },\n \"defaultLanguage\": {\n - \ \"type\": \"string\"\n },\n \"unsubscribedTrailer\": - {\n \"description\": \"The trailer of the channel, for users that - are not subscribers.\",\n \"type\": \"string\"\n },\n \"country\": - {\n \"description\": \"The country of the channel.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"Specifies the channel description.\",\n \"type\": \"string\"\n - \ },\n \"keywords\": {\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\",\n \"type\": \"string\"\n - \ },\n \"featuredChannelsTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Title for the featured channels tab.\"\n },\n - \ \"moderateComments\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether user-submitted comments left on the channel page need to be approved - by the channel owner to be publicly visible.\"\n },\n \"title\": - {\n \"description\": \"Specifies the channel title.\",\n \"type\": - \"string\"\n },\n \"showRelatedChannels\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether related channels should - be proposed.\"\n }\n },\n \"description\": \"Branding properties - for the channel view.\",\n \"id\": \"ChannelSettings\",\n \"type\": - \"object\"\n },\n \"IngestionInfo\": {\n \"id\": \"IngestionInfo\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"rtmpsBackupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of backupIngestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"backupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The backup - ingestion URL that you should use to stream video to YouTube. You have the - option of simultaneously streaming the content that you are sending to the - ingestionAddress to this URL.\"\n },\n \"rtmpsIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"streamName\": - {\n \"type\": \"string\",\n \"description\": \"The stream - name that YouTube assigns to the video stream.\"\n },\n \"ingestionAddress\": - {\n \"description\": \"The primary ingestion URL that you should - use to stream video to YouTube. You must stream video to this URL. Depending - on which application or tool you use to encode your video stream, you may - need to enter the stream URL and stream name separately or you may need to - concatenate them in the following format: *STREAM_URL/STREAM_NAME* \",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Describes information - necessary for ingesting an RTMP, HTTP, or SRT stream.\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"type\": \"object\",\n \"properties\": {\n \"severity\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"How severe this - issue is to the stream.\",\n \"enum\": [\n \"info\",\n - \ \"warning\",\n \"error\"\n ],\n \"type\": - \"string\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ],\n \"type\": - \"string\",\n \"description\": \"The kind of error happening.\"\n - \ },\n \"description\": {\n \"description\": \"The long-form - description of the issue and how to resolve it.\",\n \"type\": \"string\"\n - \ },\n \"reason\": {\n \"description\": \"The short-form - reason for this issue.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LiveStreamConfigurationIssue\"\n },\n \"ContentRating\": - {\n \"properties\": {\n \"bbfcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ],\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's British Board of Film - Classification (BBFC) rating.\"\n },\n \"moctwRating\": {\n - \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ],\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n - \ \"type\": \"string\"\n },\n \"incaaRating\": {\n \"description\": - \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\",\n \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n - \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n - \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"tvpgRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's TV Parental Guidelines (TVPG) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ]\n },\n \"cbfcRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Central Board of Film Certification (CBFC - India) rating.\",\n \"enum\": - [\n \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ]\n },\n \"mekuRating\": {\n \"description\": - \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti - (National Audiovisual Institute).\",\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"mccaaRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Malta's Film Age-Classification Board.\",\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ]\n },\n \"agcomRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"agcomUnspecified\",\n \"agcomT\",\n \"agcomVm14\",\n - \ \"agcomVm18\",\n \"agcomUnrated\"\n ],\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\"\n },\n \"skfilmRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Slovakia.\",\n - \ \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n - \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n - \ \"skfilmUnrated\"\n ]\n },\n \"mdaRating\": - {\n \"description\": \"The video's rating from Singapore's Media - Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\",\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ]\n },\n \"fpbRatingReasons\": {\n \"description\": - \"Reasons that explain why the video received its FPB (South Africa) rating.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"South Africa rating content descriptors.\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"nfvcbRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Nigeria's National Film and Video Censors Board.\"\n },\n \"nbcplRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Poland.\",\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ]\n },\n \"smsaRating\": {\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"All ages\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ]\n },\n \"mcstRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n - \ \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ],\n \"description\": \"The - video's rating system for Vietnam - MCST\"\n },\n \"fmocRating\": - {\n \"description\": \"This property has been deprecated. Use the - contentDetails.contentRating.cncRating instead.\",\n \"enum\": [\n - \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"rcnofRating\": - {\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"nmcRating\": {\n \"description\": \"The National Media - Council ratings system for United Arab Emirates.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n - \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n - \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n - \ ]\n },\n \"lsfRating\": {\n \"description\": - \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"enum\": [\n - \ \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"cccRating\": - {\n \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n - \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Todo espectador\",\n - \ \"6+ - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n - \ \"18+\",\n \"18+ - contenido excesivamente violento\",\n - \ \"18+ - contenido pornogr\xE1fico\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"mocRating\": {\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ]\n },\n \"fcoRating\": - {\n \"description\": \"The video's rating from Hong Kong's Office - for Film, Newspaper and Article Administration.\",\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"fcoUnspecified\",\n - \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n - \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n - \ ]\n },\n \"egfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Egypt.\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ]\n },\n \"acbRating\": - {\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"menaMpaaRating\": {\n - \ \"enum\": [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n - \ \"menaMpaaPg\",\n \"menaMpaaPg13\",\n \"menaMpaaR\",\n - \ \"menaMpaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ],\n \"type\": \"string\",\n \"description\": - \"The rating system for MENA countries, a clone of MPAA. It is needed to prevent - titles go live w/o additional QC check, since some of them can be inappropriate - for the countries at all. See b/33408548 for more details.\"\n },\n - \ \"eefilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Pere\",\n \"L\",\n \"MS-6\",\n \"K-6\",\n - \ \"MS-12\",\n \"K-12\",\n \"K-14\",\n \"K-16\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Estonia.\",\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"fcbmRating\": - {\n \"description\": \"The video's rating from Malaysia's Film Censorship - Board.\",\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n - \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n - \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n - \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"pefilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n - \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n - \ \"pefilmUnrated\"\n ],\n \"description\": \"The - video's rating in Peru.\"\n },\n \"resorteviolenciaRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"B\",\n \"C\",\n \"D\",\n - \ \"E\",\n \"\"\n ],\n \"description\": - \"The video's rating in Venezuela.\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ]\n },\n \"ecbmctRating\": {\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ],\n \"description\": \"Rating - system in Turkey - Evaluation and Classification Board of the Ministry of - Culture and Tourism\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ]\n },\n \"cicfRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ],\n \"description\": \"The - video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ]\n - \ },\n \"cceRating\": {\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ],\n \"description\": \"The video's - rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"4\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\",\n \"14\"\n ],\n \"type\": \"string\"\n - \ },\n \"fpbRating\": {\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ],\n \"type\": \"string\"\n - \ },\n \"chfilmRating\": {\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Switzerland.\"\n },\n \"catvfrRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n - \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n - \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"fskRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft - (FSK - Germany) rating.\",\n \"enum\": [\n \"fskUnspecified\",\n - \ \"fsk0\",\n \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n - \ \"fsk18\",\n \"fskUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ]\n },\n \"oflcRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"description\": \"The video's - Office of Film and Literature Classification (OFLC - New Zealand) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ]\n },\n \"mibacRating\": - {\n \"description\": \"The video's rating from the Ministero dei - Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n - \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n - \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n - \ ]\n },\n \"eirinRating\": {\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n - \ \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"smaisRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n - \ \"smais12\",\n \"smais14\",\n \"smais16\",\n - \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"description\": - \"The video's rating in Iceland.\"\n },\n \"catvRating\": {\n - \ \"description\": \"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.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"C\",\n - \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n - \ \"18+\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n - \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n - \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n - \ \"catvE\"\n ]\n },\n \"ilfilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Israel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n - \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ]\n },\n \"czfilmRating\": - {\n \"description\": \"The video's rating in the Czech Republic.\",\n - \ \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n - \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n - \ \"czfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"ytRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"A rating that - YouTube uses to identify age-restricted content.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ]\n },\n \"grfilmRating\": {\n \"enum\": - [\n \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n - \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n - \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Greece.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n - \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n - \ ]\n },\n \"nfrcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"type\": - \"string\",\n \"enum\": [\n \"nfrcUnspecified\",\n \"nfrcA\",\n - \ \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n - \ \"nfrcUnrated\"\n ]\n },\n \"bmukkRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ],\n - \ \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Austrian Board of - Media Classification (Bundesministerium f\xFCr Unterricht, Kunst und Kultur).\"\n - \ },\n \"anatelRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n - \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n - \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n - \ \"anatelUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"description\": \"The video's Anatel - (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\"\n - \ },\n \"nbcRating\": {\n \"description\": \"The video's - rating from the Maldives National Bureau of Classification.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"nbcUnspecified\",\n \"nbcG\",\n \"nbcPg\",\n - \ \"nbc12plus\",\n \"nbc15plus\",\n \"nbc18plus\",\n - \ \"nbc18plusr\",\n \"nbcPu\",\n \"nbcUnrated\"\n - \ ]\n },\n \"cnaRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"description\": - \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\"\n },\n \"nkclvRating\": {\n \"enum\": [\n - \ \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n - \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n - \ \"nkclvUnrated\"\n ],\n \"description\": \"The - video's rating from the Nacion\xE3lais Kino centrs (National Film Centre of - Latvia).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"mpaatRating\": {\n \"description\": \"The rating - system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n - \ ]\n },\n \"mccypRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Danish Film Institute's - (Det Danske Filminstitut) Media Council for Children and Young People.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ]\n },\n \"csaRating\": - {\n \"description\": \"The video's rating from France's Conseil sup\xE9rieur - de l\u2019audiovisuel, which rates broadcast content.\",\n \"type\": - \"string\",\n \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ]\n },\n - \ \"bfvcRating\": {\n \"description\": \"The video's rating - from Thailand's Board of Film and Video Censors.\",\n \"enum\": [\n - \ \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"mtrcbRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n - \ \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ]\n },\n \"rtcRating\": - {\n \"description\": \"The video's General Directorate of Radio, - Television and Cinematography (Mexico) rating.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ]\n },\n \"djctqRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ]\n },\n - \ \"kfcbRating\": {\n \"description\": \"The video's rating - from the Kenya Film Classification Board.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n - \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n - \ \"kfcbUnrated\"\n ]\n },\n \"djctqRatingReasons\": - {\n \"description\": \"Reasons that explain why the video received - its DJCQT (Brazil) rating.\",\n \"items\": {\n \"enum\": - [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ],\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"cscfRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AL\",\n \"A\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Luxembourg's - Commission de surveillance de la classification des films (CSCF).\",\n \"enum\": - [\n \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n - \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ]\n },\n \"medietilsynetRating\": {\n \"description\": - \"The video's rating from Medietilsynet, the Norwegian Media Authority.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ]\n },\n \"rteRating\": {\n \"enum\": [\n - \ \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ]\n },\n \"russiaRating\": {\n \"description\": - \"The video's National Film Registry of the Russian Federation (MKRF - Russia) - rating.\",\n \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"mpaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enum\": - [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ]\n },\n - \ \"icaaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"APTA\",\n \"7\",\n \"12\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X\",\n \"\"\n - \ ],\n \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ],\n \"description\": \"The - video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - - Spain) rating.\",\n \"type\": \"string\"\n },\n \"cncRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ],\n - \ \"description\": \"Rating system in France - Commission de classification - cinematographique\",\n \"type\": \"string\",\n \"enum\": - [\n \"cncUnspecified\",\n \"cncT\",\n \"cnc10\",\n - \ \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n \"cncE\",\n - \ \"cncInterdiction\",\n \"cncUnrated\"\n ]\n - \ },\n \"chvrsRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"chvrsUnspecified\",\n - \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n - \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n - \ \"chvrsUnrated\"\n ],\n \"description\": \"The - video's Canadian Home Video Rating System (CHVRS) rating.\"\n },\n - \ \"ifcoRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"description\": \"The - video's Irish Film Classification Office (IFCO - Ireland) rating. See the - IFCO website for more information.\"\n },\n \"kijkwijzerRating\": - {\n \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating - from the Nederlands Instituut voor de Classificatie van Audiovisuele Media - (Netherlands).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AL\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"kmrbRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"enum\": - [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"description\": \"The - video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\"\n }\n },\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\",\n \"type\": \"object\",\n \"id\": \"ContentRating\"\n - \ },\n \"PlaylistItemStatus\": {\n \"properties\": {\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"This resource's - privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"PlaylistItemStatus\",\n - \ \"description\": \"Information about the playlist item's privacy status.\"\n - \ },\n \"Entity\": {\n \"properties\": {\n \"typeId\": {\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\"\n },\n \"url\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"Entity\",\n \"type\": \"object\"\n - \ },\n \"VideoProcessingDetails\": {\n \"properties\": {\n \"processingStatus\": - {\n \"enum\": [\n \"processing\",\n \"succeeded\",\n - \ \"failed\",\n \"terminated\"\n ],\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"tagSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether keyword (tag) - suggestions are available for the video. Tags can be added to a video's metadata - to make it easier for other users to find the video. You can retrieve these - suggestions by requesting the suggestions part in your videos.list() request.\",\n - \ \"type\": \"string\"\n },\n \"fileDetailsAvailability\": - {\n \"description\": \"This value indicates whether file details - are available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingFailureReason\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"type\": \"string\"\n },\n \"editorSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether video editing - suggestions, which might improve video quality or the playback experience, - are available for the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingProgress\": {\n \"$ref\": - \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n },\n \"thumbnailsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether thumbnail images have been generated for the video.\"\n - \ },\n \"processingIssuesAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether the - video processing engine has generated suggestions that might improve YouTube's - ability to process the the video, warnings that explain video processing problems, - or errors that cause video processing problems. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n }\n - \ },\n \"id\": \"VideoProcessingDetails\",\n \"description\": - \"Describes processing status and progress and availability of some other - Video resource parts.\",\n \"type\": \"object\"\n },\n \"VideoGetRatingResponse\": - {\n \"type\": \"object\",\n \"id\": \"VideoGetRatingResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n \"default\": - \"youtube#videoGetRatingResponse\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"description\": \"A list of ratings - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"PlaylistLocalization\": - {\n \"type\": \"object\",\n \"description\": \"Playlist localization - setting\",\n \"id\": \"PlaylistLocalization\",\n \"properties\": - {\n \"description\": {\n \"description\": \"The localized - strings for playlist's description.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"description\": \"The localized strings for - playlist's title.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatBanSnippet\": {\n \"id\": \"LiveChatBanSnippet\",\n - \ \"properties\": {\n \"banDurationSeconds\": {\n \"type\": - \"string\",\n \"description\": \"The duration of a ban, only filled - if the ban has type TEMPORARY.\",\n \"format\": \"uint64\"\n },\n - \ \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"liveChatId\": {\n \"description\": \"The chat - this ban is pertinent to.\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"enumDescriptions\": [\n \"An invalid - ban type.\",\n \"A permanent ban.\",\n \"A temporary - ban.\"\n ],\n \"type\": \"string\",\n \"description\": - \"The type of ban.\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ]\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ },\n \"gifterChannelId\": {\n \"description\": \"The - ID of the user that made the membership gifting purchase. This matches the - `snippet.authorChannelId` of the associated membership gifting message.\",\n - \ \"type\": \"string\"\n },\n \"memberLevelName\": {\n - \ \"type\": \"string\",\n \"description\": \"The name of - the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n }\n }\n },\n \"CommentThreadReplies\": - {\n \"id\": \"CommentThreadReplies\",\n \"properties\": {\n \"comments\": - {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"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.\",\n \"type\": - \"array\"\n }\n },\n \"description\": \"Comments written - in (direct or indirect) reply to the top level comment.\",\n \"type\": - \"object\"\n },\n \"VideoAbuseReport\": {\n \"id\": \"VideoAbuseReport\",\n - \ \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n },\n \"reasonId\": {\n \"type\": \"string\",\n - \ \"description\": \"The high-level, or primary, reason that the content - is abusive. The value is an abuse report reason ID.\"\n },\n \"comments\": - {\n \"description\": \"Additional comments regarding the abuse report.\",\n - \ \"type\": \"string\"\n },\n \"secondaryReasonId\": - {\n \"description\": \"The specific, or secondary, reason that this - content is abusive (if available). The value is an abuse report reason ID - that is a valid secondary reason for the primary reason.\",\n \"type\": - \"string\"\n },\n \"language\": {\n \"type\": \"string\",\n - \ \"description\": \"The language that the content was viewed in.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ThirdPartyLinkSnippet\": - {\n \"id\": \"ThirdPartyLinkSnippet\",\n \"properties\": {\n \"channelToStoreLink\": - {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\"\n },\n \"type\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A link - that is connecting (or about to connect) a channel with a store on a merchandising - platform in order to enable retail commerce capabilities for that channel - on YouTube.\"\n ],\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"description\": - \"Type of the link named after the entities that are being linked.\"\n }\n - \ },\n \"description\": \"Basic information about a third party account - link, including its type and type-specific information.\",\n \"type\": - \"object\"\n },\n \"VideoFileDetails\": {\n \"id\": \"VideoFileDetails\",\n - \ \"description\": \"Describes original video file properties, including - technical details about audio and video streams, but also metadata information - like content length, digitization time, or geotagging information.\",\n \"type\": - \"object\",\n \"properties\": {\n \"fileType\": {\n \"enum\": - [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"enumDescriptions\": [\n \"Known - video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an - MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"description\": \"The uploaded file's type as detected by YouTube's - video processing engine. Currently, YouTube only processes video files, but - this field is present whether a video file or another type of file was uploaded.\",\n - \ \"type\": \"string\"\n },\n \"fileName\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded file's name. This field - is present whether a video file or another type of file was uploaded.\"\n - \ },\n \"durationMs\": {\n \"description\": \"The length - of the uploaded video in milliseconds.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"creationTime\": {\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the uploaded video file was created. The value is specified in ISO - 8601 format. Currently, the following ISO 8601 formats are supported: - Date - only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \"\n },\n \"bitrateBps\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded video file's combined (video and - audio) bitrate in bits per second.\",\n \"format\": \"uint64\"\n - \ },\n \"fileSize\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The uploaded file's size in bytes. - This field is present whether a video file or another type of file was uploaded.\"\n - \ },\n \"audioStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsAudioStream\"\n },\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\",\n \"type\": - \"array\"\n },\n \"container\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded video file's container format.\"\n - \ },\n \"videoStreams\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"description\": \"A list of video streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about a video stream.\"\n }\n }\n },\n \"MembershipsLevel\": - {\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the memberships level.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the level.\",\n \"$ref\": - \"MembershipsLevelSnippet\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#membershipsLevel\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ }\n },\n \"description\": \"A *membershipsLevel* resource - represents an offer made by YouTube creators for their fans. Users can become - members of the channel by joining one of the available levels. They will provide - recurring monetary support and receives special benefits.\",\n \"id\": - \"MembershipsLevel\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"Details about a channel bulletin post.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource associated with a - bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": - \"ResourceId\"\n }\n }\n },\n \"PlaylistItemSnippet\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The id object contains information that can - be used to uniquely identify the resource that is included in the playlist - as the playlist item.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n - \ \"position\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The order in which the item appears - in the playlist. The value uses a zero-based index, so the first item has - a position of 0, the second item has a position of 1, and so forth.\"\n },\n - \ \"playlistId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify thGe playlist that the playlist item is in.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"The item's title.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The item's description.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the user that added the item to the playlist.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the playlist item. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"channelTitle\": {\n \"description\": \"Channel title for - the channel that the playlist item belongs to.\",\n \"type\": \"string\"\n - \ },\n \"videoOwnerChannelTitle\": {\n \"description\": - \"Channel title for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the item was added to the playlist.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"videoOwnerChannelId\": - {\n \"description\": \"Channel id for the channel this video belongs - to.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails. - Basic details of a YouTube Playlist item provided by the author. Next ID: - 15\",\n \"id\": \"PlaylistItemSnippet\"\n },\n \"Activity\": {\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the activity.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n },\n \"contentDetails\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetails\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n \"description\": - \"The snippet object contains basic details about the activity, including - the activity's type and group ID.\"\n },\n \"kind\": {\n \"default\": - \"youtube#activity\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"Activity\",\n \"description\": \"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.\"\n },\n \"I18nRegionSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"gl\": {\n - \ \"description\": \"The region code as a 2-letter ISO country code.\",\n - \ \"type\": \"string\"\n },\n \"name\": {\n \"type\": - \"string\",\n \"description\": \"The human-readable name of the region.\"\n - \ }\n },\n \"description\": \"Basic details about an i18n - region, such as region code and human-readable name.\",\n \"id\": \"I18nRegionSnippet\"\n - \ },\n \"LiveChatMessageSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Next ID: 33\",\n \"properties\": {\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the message was orignally - published.\"\n },\n \"membershipGiftingDetails\": {\n \"$ref\": - \"LiveChatMembershipGiftingDetails\",\n \"description\": \"Details - about the Membership Gifting event, this is only set if the type is 'membershipGiftingEvent'.\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n - \ \"newSponsorDetails\": {\n \"description\": \"Details about - the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. - Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n - \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"textMessageDetails\": - {\n \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\",\n \"$ref\": \"LiveChatTextMessageDetails\"\n - \ },\n \"superStickerDetails\": {\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"displayMessage\": - {\n \"type\": \"string\",\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"userBannedDetails\": {\n \"$ref\": - \"LiveChatUserBannedMessageDetails\"\n },\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n },\n \"authorChannelId\": - {\n \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\",\n \"type\": \"string\"\n },\n \"fanFundingEventDetails\": - {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ],\n \"description\": \"The type of message, this will - always be present, it determines the contents of the message as well as which - fields will be present.\"\n },\n \"hasDisplayContent\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether the - message has display content that should be displayed to users.\"\n },\n - \ \"superChatDetails\": {\n \"description\": \"Details about - the Super Chat event, this is only set if the type is 'superChatEvent'.\",\n - \ \"$ref\": \"LiveChatSuperChatDetails\"\n }\n },\n \"id\": - \"LiveChatMessageSnippet\"\n },\n \"I18nRegionListResponse\": {\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#i18nRegionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n },\n \"description\": \"A list of regions - where YouTube is available. In this map, the i18n region ID is the map key, - and its value is the corresponding i18nRegion resource.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"I18nRegionListResponse\",\n - \ \"type\": \"object\"\n },\n \"ChannelListResponse\": {\n \"properties\": - {\n \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelListResponse\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Channel\"\n },\n \"type\": \"array\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n }\n },\n \"id\": \"ChannelListResponse\",\n - \ \"type\": \"object\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"properties\": {\n \"description\": {\n \"description\": - \"The description of the subscriber.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"description\": \"Thumbnails - for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel ID of the subscriber.\"\n },\n \"title\": {\n - \ \"description\": \"The title of the subscriber.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a subscription's subscriber including title, description, channel ID and thumbnails.\"\n - \ },\n \"CdnSettings\": {\n \"type\": \"object\",\n \"properties\": - {\n \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n - \ \"description\": \"The ingestionInfo object contains information - that YouTube provides that you need to transmit your RTMP or HTTP stream to - YouTube.\"\n },\n \"format\": {\n \"description\": - \"The format of the video stream that you are sending to Youtube. \",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"ingestionType\": {\n \"enum\": [\n \"rtmp\",\n - \ \"dash\",\n \"webrtc\",\n \"hls\"\n ],\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \" The method or protocol used to transmit the video stream.\",\n \"type\": - \"string\"\n },\n \"resolution\": {\n \"type\": \"string\",\n - \ \"description\": \"The resolution of the inbound video data.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ]\n },\n \"frameRate\": {\n \"description\": - \"The frame rate of the inbound video data.\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"CdnSettings\",\n - \ \"description\": \"Brief description of the live stream cdn settings.\"\n - \ },\n \"LiveStreamStatus\": {\n \"description\": \"Brief description - of the live stream status.\",\n \"id\": \"LiveStreamStatus\",\n \"properties\": - {\n \"healthStatus\": {\n \"description\": \"The health status - of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n },\n - \ \"streamStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ]\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"properties\": {\n - \ \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the user to this fan funding event.\"\n },\n - \ \"amountMicros\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The amount of the fund.\"\n },\n - \ \"amountDisplayString\": {\n \"type\": \"string\",\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the fund was made.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"LiveChatBan\": {\n \"type\": \"object\",\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatBan\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\"\n }\n - \ },\n \"id\": \"LiveChatBan\"\n },\n \"PlaylistSnippet\": - {\n \"id\": \"PlaylistSnippet\",\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails.\",\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The playlist's title.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the playlist's default title and description.\",\n \"type\": \"string\"\n - \ },\n \"thumbnailVideoId\": {\n \"type\": \"string\",\n - \ \"description\": \"Note: if the playlist has a custom thumbnail, - this field will not be populated. The video id selected by the user that will - be used as the thumbnail of this playlist. This field defaults to the first - publicly viewable video in the playlist, if: 1. The user has never selected - a video to be the thumbnail of the playlist. 2. The user selects a video to - be the thumbnail, and then removes that video from the playlist. 3. The user - selects a non-owned video to be the thumbnail, but that video becomes private, - or gets deleted.\"\n },\n \"tags\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"Keyword tags associated with the playlist.\"\n },\n \"description\": - {\n \"description\": \"The playlist's description.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the playlist was created.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the playlist.\"\n - \ },\n \"localized\": {\n \"description\": \"Localized - title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"channelTitle\": {\n \"description\": \"The - channel title of the channel that the video belongs to.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelSectionContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"playlists\": - {\n \"description\": \"The playlist ids for type single_playlist - and multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"channels\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"The channel ids for type multiple_channels.\"\n }\n },\n \"description\": - \"Details about a channelsection, including playlists and channels.\",\n \"id\": - \"ChannelSectionContentDetails\"\n },\n \"PlaylistStatus\": {\n \"type\": - \"object\",\n \"properties\": {\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The playlist's privacy status.\"\n }\n },\n \"id\": \"PlaylistStatus\"\n - \ },\n \"ChannelContentOwnerDetails\": {\n \"description\": \"The - contentOwnerDetails object encapsulates channel data that is relevant for - YouTube Partners linked with the channel.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"timeLinked\": {\n \"description\": - \"The date and time when the channel was linked to the content owner.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"contentOwner\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the content owner linked to the channel.\"\n }\n },\n - \ \"id\": \"ChannelContentOwnerDetails\"\n },\n \"ThumbnailDetails\": - {\n \"properties\": {\n \"high\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The high quality image for this resource.\"\n - \ },\n \"medium\": {\n \"description\": \"The medium - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"maxres\": {\n \"description\": \"The maximum resolution - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The default image for this resource.\"\n },\n \"standard\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The standard - quality image for this resource.\"\n }\n },\n \"description\": - \"Internal representation of thumbnails for a YouTube resource.\",\n \"type\": - \"object\",\n \"id\": \"ThumbnailDetails\"\n },\n \"Cuepoint\": - {\n \"properties\": {\n \"insertionOffsetTimeMs\": {\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\",\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"cueType\": {\n \"type\": \"string\",\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"durationSecs\": {\n \"type\": \"integer\",\n - \ \"description\": \"The duration of this cuepoint.\",\n \"format\": - \"uint32\"\n },\n \"walltimeMs\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The wall clock - time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The identifier for cuepoint resource.\"\n - \ }\n },\n \"description\": \"Note that there may be a 5-second - end-point resolution issue. For instance, if a cuepoint comes in for 22:03:27, - we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. This is an - artifact of HLS.\",\n \"type\": \"object\",\n \"id\": \"Cuepoint\"\n - \ },\n \"ChannelBrandingSettings\": {\n \"description\": \"Branding - properties of a YouTube channel.\",\n \"properties\": {\n \"channel\": - {\n \"$ref\": \"ChannelSettings\",\n \"description\": \"Branding - properties for the channel view.\"\n },\n \"hints\": {\n \"description\": - \"Additional experimental branding properties.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"PropertyValue\"\n }\n - \ },\n \"watch\": {\n \"$ref\": \"WatchSettings\",\n - \ \"description\": \"Branding properties for the watch page.\"\n },\n - \ \"image\": {\n \"$ref\": \"ImageSettings\",\n \"description\": - \"Branding properties for branding images.\"\n }\n },\n \"id\": - \"ChannelBrandingSettings\",\n \"type\": \"object\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"type\": \"array\"\n }\n - \ },\n \"id\": \"ThirdPartyLinkListResponse\"\n },\n \"ChannelLocalization\": - {\n \"description\": \"Channel localization setting\",\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for channel's title.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for channel's description.\"\n - \ }\n },\n \"id\": \"ChannelLocalization\"\n },\n \"MemberListResponse\": - {\n \"id\": \"MemberListResponse\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n \"default\": - \"youtube#memberListResponse\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Member\"\n },\n \"description\": - \"A list of members that match the request criteria.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatSuperStickerDetails\": {\n - \ \"id\": \"LiveChatSuperStickerDetails\",\n \"properties\": {\n - \ \"amountMicros\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The amount purchased by the user, - in micros (1,750,000 micros = 1.75).\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made.\"\n },\n \"tier\": - {\n \"format\": \"uint32\",\n \"description\": \"The tier - in which the amount belongs. Lower amounts belong to lower tiers. The lowest - tier is 1.\",\n \"type\": \"integer\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"Information about the Super Sticker.\",\n - \ \"$ref\": \"SuperStickerMetadata\"\n }\n },\n \"type\": - \"object\"\n },\n \"SubscriptionContentDetails\": {\n \"description\": - \"Details about the content to witch a subscription refers.\",\n \"properties\": - {\n \"newItemCount\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The number of new items in the subscription - since its content was last read.\"\n },\n \"activityType\": - {\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"totalItemCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The approximate number of items that the subscription points to.\",\n \"type\": - \"integer\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"SubscriptionContentDetails\"\n },\n \"LiveBroadcast\": {\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the broadcast.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"snippet\": {\n \"$ref\": - \"LiveBroadcastSnippet\",\n \"description\": \"The snippet object - contains basic details about the event, including its title, description, - start time, and end time.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the event's status.\",\n \"$ref\": - \"LiveBroadcastStatus\"\n },\n \"statistics\": {\n \"$ref\": - \"LiveBroadcastStatistics\",\n \"description\": \"The statistics - object contains info about the event's current stats. These include concurrent - viewers and total chat count. Statistics can change (in either direction) - during the lifetime of an event. Statistics are only returned while the event - is live.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveBroadcast\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"LiveBroadcast\",\n - \ \"description\": \"A *liveBroadcast* resource represents an event that - will be streamed, via live video, on YouTube.\",\n \"type\": \"object\"\n - \ },\n \"TestItemTestItemSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\"\n },\n - \ \"ChannelSectionListResponse\": {\n \"id\": \"ChannelSectionListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"description\": \"A list of ChannelSections - that match the request criteria.\"\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SuperChatEventSnippet\": {\n \"properties\": {\n \"channelId\": - {\n \"description\": \"Channel id where the event occurred.\",\n - \ \"type\": \"string\"\n },\n \"displayString\": {\n - \ \"type\": \"string\",\n \"description\": \"A rendered string - that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). The - string is rendered for the given language.\"\n },\n \"messageType\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\"\n },\n \"supporterDetails\": {\n - \ \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the supporter.\"\n },\n \"currency\": {\n \"type\": - \"string\",\n \"description\": \"The currency in which the purchase - was made. ISO 4217.\"\n },\n \"amountMicros\": {\n \"type\": - \"string\",\n \"description\": \"The purchase amount, in micros of - the purchase currency. e.g., 1 is represented as 1000000.\",\n \"format\": - \"uint64\"\n },\n \"createdAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the event occurred.\",\n - \ \"format\": \"date-time\"\n },\n \"isSuperStickerEvent\": - {\n \"type\": \"boolean\",\n \"description\": \"True if - this event is a Super Sticker event.\"\n },\n \"commentText\": - {\n \"description\": \"The text contents of the comment left by the - user.\",\n \"type\": \"string\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n }\n },\n \"id\": \"SuperChatEventSnippet\",\n - \ \"type\": \"object\"\n },\n \"MembershipsDuration\": {\n \"type\": - \"object\",\n \"id\": \"MembershipsDuration\",\n \"properties\": - {\n \"memberTotalDurationMonths\": {\n \"description\": \"The - cumulative time the user has been a member across all levels in complete months - (the time is rounded down to the nearest integer).\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n },\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member across all levels.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ChannelSectionLocalization\": {\n \"description\": - \"ChannelSection localization setting\",\n \"properties\": {\n \"title\": - {\n \"description\": \"The localized strings for channel section's - title.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelSectionLocalization\"\n },\n \"Comment\": - {\n \"description\": \"A *comment* represents a single YouTube comment.\",\n - \ \"id\": \"Comment\",\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"CommentSnippet\",\n \"description\": \"The - snippet object contains basic details about the comment.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#comment\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#comment\"\n }\n },\n \"type\": - \"object\"\n },\n \"PlaylistListResponse\": {\n \"properties\": - {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of playlists that match the - request criteria\",\n \"items\": {\n \"$ref\": \"Playlist\"\n - \ }\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"default\": \"youtube#playlistListResponse\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n }\n },\n \"type\": \"object\",\n \"id\": \"PlaylistListResponse\"\n - \ },\n \"I18nLanguageSnippet\": {\n \"properties\": {\n \"hl\": - {\n \"description\": \"A short BCP-47 code that uniquely identifies - a language.\",\n \"type\": \"string\"\n },\n \"name\": - {\n \"description\": \"The human-readable name of the language in - the language itself.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Basic details about an i18n language, such as language - code and human-readable name.\",\n \"id\": \"I18nLanguageSnippet\",\n - \ \"type\": \"object\"\n },\n \"LiveStream\": {\n \"description\": - \"A live stream describes a live ingestion point.\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"LiveStreamContentDetails\",\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\"\n },\n \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n - \ \"description\": \"The status object contains information about - live stream's status.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the stream.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveStream\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n - \ },\n \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveStream\"\n - \ },\n \"PropertyValue\": {\n \"id\": \"PropertyValue\",\n \"properties\": - {\n \"value\": {\n \"description\": \"The property's value.\",\n - \ \"type\": \"string\"\n },\n \"property\": {\n \"type\": - \"string\",\n \"description\": \"A property.\"\n }\n },\n - \ \"description\": \"A pair Property / Value.\",\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsPlaylistItem\": {\n \"type\": \"object\",\n - \ \"description\": \"Information about a new playlist item.\",\n \"properties\": - {\n \"playlistItemId\": {\n \"type\": \"string\",\n \"description\": - \"ID of the item within the playlist.\"\n },\n \"playlistId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - about the resource that was added to the playlist.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"SearchResultSnippet\": {\n \"type\": \"object\",\n \"id\": - \"SearchResultSnippet\",\n \"properties\": {\n \"title\": {\n - \ \"description\": \"The title of the search result.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"A description of the search result.\"\n },\n - \ \"channelTitle\": {\n \"description\": \"The title of the - channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ]\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - search result. 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.\"\n },\n \"publishedAt\": {\n \"description\": - \"The creation date and time of the resource that the search result identifies.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Basic details about a search result, including - title, description and thumbnails of the item referenced by the search result.\"\n - \ },\n \"CommentThreadListResponse\": {\n \"id\": \"CommentThreadListResponse\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"CommentThread\"\n },\n \"description\": - \"A list of comment threads that match the request criteria.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentThreadListResponse\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"PageInfo\": {\n \"id\": - \"PageInfo\",\n \"type\": \"object\",\n \"properties\": {\n \"resultsPerPage\": - {\n \"format\": \"int32\",\n \"type\": \"integer\",\n \"description\": - \"The number of results included in the API response.\"\n },\n \"totalResults\": - {\n \"format\": \"int32\",\n \"description\": \"The total - number of results in the result set.\",\n \"type\": \"integer\"\n - \ }\n },\n \"description\": \"Paging details for lists of - resources, including total number of items available and number of resources - returned in a single page.\"\n },\n \"PlaylistItemListResponse\": {\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of playlist - items that match the request criteria.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"PlaylistItemListResponse\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"properties\": {\n \"isChatModerator\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a moderator - of the live chat.\"\n },\n \"channelUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channel's URL.\"\n },\n - \ \"profileImageUrl\": {\n \"description\": \"The channels's - avatar URL.\",\n \"type\": \"string\"\n },\n \"isChatSponsor\": - {\n \"description\": \"Whether the author is a sponsor of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n },\n \"isChatOwner\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is the owner - of the live chat.\"\n },\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageAuthorDetails\"\n - \ },\n \"ChannelProfileDetails\": {\n \"properties\": {\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The channel's display name.\"\n - \ },\n \"channelId\": {\n \"description\": \"The YouTube - channel ID.\",\n \"type\": \"string\"\n },\n \"channelUrl\": - {\n \"description\": \"The channel's URL.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelProfileDetails\"\n },\n \"CommentSnippet\": {\n \"properties\": - {\n \"publishedAt\": {\n \"description\": \"The date and time - when the comment was originally published.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"parentId\": {\n \"description\": - \"The unique id of the parent comment, only set for replies.\",\n \"type\": - \"string\"\n },\n \"textOriginal\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"textDisplay\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"authorChannelId\": {\n \"$ref\": - \"CommentSnippetAuthorChannelId\"\n },\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"viewerRating\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n },\n - \ \"moderationStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ]\n },\n \"updatedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was last updated.\",\n - \ \"format\": \"date-time\"\n },\n \"likeCount\": {\n - \ \"description\": \"The total number of likes this comment has received.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"authorProfileImageUrl\": {\n \"description\": \"The URL - for the avatar of the user who posted the comment.\",\n \"type\": - \"string\"\n },\n \"authorChannelUrl\": {\n \"description\": - \"Link to the author's YouTube channel, if any.\",\n \"type\": \"string\"\n - \ },\n \"canRate\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the current viewer can rate this comment.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comment refers to, if any.\"\n }\n },\n \"description\": - \"Basic details about a comment, such as its author and text.\",\n \"type\": - \"object\",\n \"id\": \"CommentSnippet\"\n },\n \"VideoCategory\": - {\n \"id\": \"VideoCategory\",\n \"description\": \"A *videoCategory* - resource identifies a category that has been or could be associated with uploaded - videos.\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"VideoCategorySnippet\",\n \"description\": \"The snippet object - contains basic details about the video category, including its title.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoCategory\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video category.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": - {\n \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of broadcasts that match the request criteria.\",\n - \ \"items\": {\n \"$ref\": \"LiveBroadcast\"\n }\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveBroadcastListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveBroadcastListResponse\"\n - \ },\n \"ChannelConversionPings\": {\n \"id\": \"ChannelConversionPings\",\n - \ \"properties\": {\n \"pings\": {\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n },\n \"type\": \"array\",\n - \ \"description\": \"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.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"The conversionPings object encapsulates - information about conversion pings that need to be respected by the channel.\"\n - \ },\n \"VideoStatistics\": {\n \"type\": \"object\",\n \"id\": - \"VideoStatistics\",\n \"properties\": {\n \"commentCount\": {\n - \ \"description\": \"The number of comments for the video.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"favoriteCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of users who currently have the video marked as a favorite video.\",\n \"type\": - \"string\"\n },\n \"dislikeCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of users who have indicated that they disliked the video by giving - it a negative rating.\"\n },\n \"viewCount\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of times the video has been viewed.\"\n },\n \"likeCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of users who have indicated that they liked the video by giving it a positive - rating.\",\n \"format\": \"uint64\"\n }\n },\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\"\n },\n \"LiveStreamHealthStatus\": {\n \"properties\": - {\n \"status\": {\n \"enum\": [\n \"good\",\n \"ok\",\n - \ \"bad\",\n \"noData\",\n \"revoked\"\n ],\n - \ \"description\": \"The status code of this stream\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"lastUpdateTimeSeconds\": {\n \"description\": \"The last - time this status was updated (in seconds)\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"configurationIssues\": - {\n \"description\": \"The configurations issues on this stream\",\n - \ \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"id\": - \"LiveStreamHealthStatus\",\n \"type\": \"object\"\n },\n \"CommentListResponse\": - {\n \"id\": \"CommentListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"A list of comments that match the request criteria.\",\n - \ \"type\": \"array\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentListResponse\\\".\",\n \"default\": - \"youtube#commentListResponse\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"AbuseReport\": {\n \"type\": \"object\",\n \"id\": - \"AbuseReport\",\n \"properties\": {\n \"description\": {\n \"type\": - \"string\"\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n - \ },\n \"abuseTypes\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"AbuseType\"\n }\n },\n \"relatedEntities\": - {\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n - \ \"type\": \"array\"\n }\n }\n },\n \"ActivityContentDetailsLike\": - {\n \"id\": \"ActivityContentDetailsLike\",\n \"description\": \"Information - about a resource that received a positive (like) rating.\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\",\n - \ \"$ref\": \"ResourceId\"\n }\n }\n },\n \"LiveChatModerator\": - {\n \"type\": \"object\",\n \"description\": \"A *liveChatModerator* - resource represents a moderator for a YouTube live chat. A chat moderator - has the ability to ban/unban users from a chat, remove message, etc.\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the moderator.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveChatModerator\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n - \ }\n },\n \"id\": \"LiveChatModerator\"\n },\n \"ChannelTopicDetails\": - {\n \"id\": \"ChannelTopicDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"topicIds\": {\n \"description\": \"A list of Freebase - topic IDs associated with the channel. You can retrieve information about - each topic using the Freebase Topic API.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"topicCategories\": - {\n \"description\": \"A list of Wikipedia URLs that describe the - channel's content.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"description\": - \"Freebase topic information related to the channel.\"\n }\n },\n \"parameters\": - {\n \"alt\": {\n \"enumDescriptions\": [\n \"Responses with - Content-Type of application/json\",\n \"Media download with context-dependent - Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n - \ ],\n \"description\": \"Data format for response.\",\n \"location\": - \"query\",\n \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"type\": \"string\",\n \"default\": \"json\"\n },\n - \ \"prettyPrint\": {\n \"description\": \"Returns response with indentations - and line breaks.\",\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"default\": \"true\"\n },\n \"uploadType\": {\n \"description\": - \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"fields\": - {\n \"location\": \"query\",\n \"description\": \"Selector specifying - which fields to include in a partial response.\",\n \"type\": \"string\"\n - \ },\n \"upload_protocol\": {\n \"description\": \"Upload protocol - for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"key\": {\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"access_token\": - {\n \"description\": \"OAuth access token.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"quotaUser\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"$.xgafv\": {\n \"description\": \"V1 error format.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": [\n - \ \"v1 error format\",\n \"v2 error format\"\n ],\n \"enum\": - [\n \"1\",\n \"2\"\n ]\n },\n \"callback\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": \"JSONP\"\n - \ },\n \"oauth_token\": {\n \"description\": \"OAuth 2.0 token for - the current user.\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"discoveryVersion\": \"v1\",\n \"fullyEncodeReservedExpansion\": - true,\n \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n }\n }\n }\n },\n \"name\": - \"youtube\",\n \"kind\": \"discovery#restDescription\",\n \"canonicalName\": - \"YouTube\",\n \"resources\": {\n \"thumbnails\": {\n \"methods\": - {\n \"set\": {\n \"path\": \"youtube/v3/thumbnails/set\",\n + string: "{\n \"resources\": {\n \"liveChatMessages\": {\n \"methods\": + {\n \"list\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": + [\n \"liveChatId\",\n \"part\"\n ],\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.liveChatMessages.list\",\n \"response\": + {\n \"$ref\": \"LiveChatMessageListResponse\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"parameters\": {\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"required\": true,\n \"description\": + \"The *part* parameter specifies the liveChatComment resource parts that the + API response will include. Supported values are id and snippet.\"\n },\n + \ \"maxResults\": {\n \"format\": \"uint32\",\n \"maximum\": + \"2000\",\n \"minimum\": \"200\",\n \"type\": \"integer\",\n + \ \"location\": \"query\",\n \"default\": \"500\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\"\n },\n + \ \"hl\": {\n \"location\": \"query\",\n \"description\": + \"Specifies the localization language in which the system messages should + be returned.\",\n \"type\": \"string\"\n },\n \"liveChatId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"The id of the live chat for which comments + should be returned.\",\n \"required\": true\n },\n + \ \"profileImageSize\": {\n \"type\": \"integer\",\n + \ \"description\": \"Specifies the size of the profile image that + should be returned for each user.\",\n \"location\": \"query\",\n + \ \"maximum\": \"720\",\n \"format\": \"uint32\",\n + \ \"minimum\": \"16\"\n }\n }\n },\n + \ \"insert\": {\n \"request\": {\n \"$ref\": \"LiveChatMessage\"\n + \ },\n \"httpMethod\": \"POST\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"id\": \"youtube.liveChatMessages.insert\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Inserts a new resource into this collection.\"\n + \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": + {\n \"id\": {\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"path\": + \"youtube/v3/liveChat/messages\",\n \"httpMethod\": \"DELETE\",\n + \ \"description\": \"Deletes a chat message.\",\n \"flatPath\": + \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.delete\"\n + \ }\n }\n },\n \"commentThreads\": {\n \"methods\": + {\n \"list\": {\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"path\": + \"youtube/v3/commentThreads\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"pageToken\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"maxResults\": + {\n \"maximum\": \"100\",\n \"location\": \"query\",\n + \ \"default\": \"20\",\n \"minimum\": \"1\",\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\"\n },\n \"allThreadsRelatedToChannelId\": + {\n \"type\": \"string\",\n \"description\": \"Returns + the comment threads of all videos of the channel and the channel comments + as well.\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true,\n \"description\": \"The *part* + parameter specifies a comma-separated list of one or more commentThread resource + properties that the API response will include.\",\n \"repeated\": + true\n },\n \"videoId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Returns the comment threads of the specified video.\"\n },\n + \ \"textFormat\": {\n \"type\": \"string\",\n \"description\": + \"The requested text format for the returned comments.\",\n \"location\": + \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Returns + the comments in HTML format. This is the default value.\",\n \"Returns + the comments in plain text format.\"\n ],\n \"default\": + \"html\"\n },\n \"moderationStatus\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"default\": + \"published\",\n \"enumDescriptions\": [\n \"The + comment is available for public display.\",\n \"The comment + is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"description\": + \"Limits the returned comment threads to those with the specified moderation + status. Not compatible with the 'id' filter. Valid values: published, heldForReview, + likelySpam.\",\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ]\n },\n \"searchTerms\": {\n \"description\": + \"Limits the returned comment threads to those matching the specified key + words. Not compatible with the 'id' filter.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"order\": + {\n \"enum\": [\n \"orderUnspecified\",\n \"time\",\n + \ \"relevance\"\n ],\n \"default\": + \"time\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Order by time.\",\n \"Order + by relevance.\"\n ],\n \"location\": \"query\"\n + \ },\n \"id\": {\n \"description\": \"Returns + the comment threads with the given IDs for Stubby or Apiary.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"channelId\": {\n \"location\": + \"query\",\n \"description\": \"Returns the comment threads for + all the channel comments (ie does not include comments left on videos).\",\n + \ \"type\": \"string\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.commentThreads.list\"\n },\n \"insert\": + {\n \"description\": \"Inserts a new resource into this collection.\",\n + \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/commentThreads\",\n \"id\": \"youtube.commentThreads.insert\",\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"repeated\": + true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/commentThreads\",\n + \ \"response\": {\n \"$ref\": \"CommentThread\"\n }\n + \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": + {\n \"insert\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n + \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"id\": \"youtube.liveChatModerators.insert\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"flatPath\": + \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": \"POST\"\n + \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"liveChatId\",\n \"part\"\n ],\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.liveChatModerators.list\",\n \"parameters\": + {\n \"pageToken\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"maxResults\": + {\n \"type\": \"integer\",\n \"default\": \"5\",\n + \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"minimum\": \"0\",\n \"format\": + \"uint32\",\n \"location\": \"query\"\n },\n \"liveChatId\": + {\n \"type\": \"string\",\n \"description\": \"The + id of the live chat for which moderators should be returned.\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"part\": + {\n \"description\": \"The *part* parameter specifies the liveChatModerator + resource parts that the API response will include. Supported values are id + and snippet.\",\n \"required\": true,\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"delete\": {\n \"path\": + \"youtube/v3/liveChat/moderators\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"youtube.liveChatModerators.delete\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": + \"Deletes a chat moderator.\"\n }\n }\n },\n \"members\": + {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/members\",\n + \ \"description\": \"Retrieves a list of members that match the request + criteria for a channel.\",\n \"path\": \"youtube/v3/members\",\n + \ \"parameters\": {\n \"pageToken\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n + \ \"part\": {\n \"location\": \"query\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies the member resource parts that the API response + will include. Set the parameter value to snippet.\",\n \"required\": + true\n },\n \"mode\": {\n \"type\": \"string\",\n + \ \"description\": \"Parameter that specifies which channel members + to return.\",\n \"location\": \"query\",\n \"default\": + \"all_current\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return only members that joined after the first call with + this mode was made.\",\n \"Return all current members, from + newest to oldest.\"\n ],\n \"enum\": [\n \"listMembersModeUnknown\",\n + \ \"updates\",\n \"all_current\"\n ]\n + \ },\n \"filterByMemberChannelId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Comma separated list of channel IDs. Only data about members that are part + of this list will be included in the response.\"\n },\n \"hasAccessToLevel\": + {\n \"location\": \"query\",\n \"description\": + \"Filter members in the results set to the ones that have access to a level.\",\n + \ \"type\": \"string\"\n },\n \"maxResults\": + {\n \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"location\": + \"query\",\n \"format\": \"uint32\",\n \"minimum\": + \"0\",\n \"default\": \"5\",\n \"type\": \"integer\",\n + \ \"maximum\": \"1000\"\n }\n },\n \"id\": + \"youtube.members.list\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"response\": + {\n \"$ref\": \"MemberListResponse\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ]\n }\n }\n },\n \"liveChatBans\": {\n \"methods\": + {\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": + \"Deletes a chat ban.\",\n \"path\": \"youtube/v3/liveChat/bans\",\n + \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"youtube.liveChatBans.delete\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"insert\": {\n \"path\": \"youtube/v3/liveChat/bans\",\n + \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": + \"youtube.liveChatBans.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"httpMethod\": + \"POST\",\n \"response\": {\n \"$ref\": \"LiveChatBan\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\"\n }\n }\n }\n + \ }\n },\n \"playlistItems\": {\n \"methods\": {\n \"delete\": + {\n \"description\": \"Deletes a resource.\",\n \"path\": + \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.delete\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\"\n }\n }\n },\n + \ \"list\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": + \"PlaylistItemListResponse\"\n },\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"id\": \"youtube.playlistItems.list\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"type\": \"string\"\n },\n \"maxResults\": + {\n \"location\": \"query\",\n \"format\": \"uint32\",\n + \ \"maximum\": \"50\",\n \"default\": \"5\",\n \"minimum\": + \"0\",\n \"type\": \"integer\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": + \"string\"\n },\n \"playlistId\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Return the playlist items within the given playlist.\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"required\": + true,\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"videoId\": + {\n \"location\": \"query\",\n \"description\": + \"Return the playlist items associated with the given video ID.\",\n \"type\": + \"string\"\n }\n },\n \"parameterOrder\": [\n + \ \"part\"\n ]\n },\n \"update\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"description\": \"As - this is not an insert in a strict sense (it supports uploading/setting of - a thumbnail for multiple videos, which doesn't result in creation of a single - resource), I use a custom verb here.\",\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": + \ \"path\": \"youtube/v3/playlistItems\",\n \"response\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"description\": + \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"id\": \"youtube.playlistItems.update\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -3759,159 +327,94 @@ interactions: content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"videoId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Returns the Thumbnail with the - given video IDs for Stubby or Apiary.\",\n \"required\": true\n - \ }\n },\n \"response\": {\n \"$ref\": - \"ThumbnailSetResponse\"\n },\n \"mediaUpload\": {\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"2097152\"\n - \ },\n \"id\": \"youtube.thumbnails.set\",\n \"flatPath\": - \"youtube/v3/thumbnails/set\",\n \"parameterOrder\": [\n \"videoId\"\n - \ ]\n }\n }\n },\n \"activities\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/activities\",\n \"parameters\": {\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"home\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"default\": - \"5\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"publishedBefore\": {\n \"location\": - \"query\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\"\n },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"publishedAfter\": - {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n - \ \"type\": \"string\"\n }\n },\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/activities\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.activities.list\"\n }\n }\n },\n - \ \"liveStreams\": {\n \"methods\": {\n \"update\": {\n \"description\": - \"Updates an existing stream for the authenticated user.\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n + individual channel. The CMS account that the user authenticates with must + be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"repeated\": true,\n \"location\": \"query\",\n \ \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"insert\": {\n \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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, content_details, and status.\",\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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 + 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.\",\n \"required\": true,\n \"type\": \"string\"\n + \ }\n },\n \"request\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"PUT\"\n },\n \"insert\": + {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n + \ \"type\": \"string\",\n \"description\": \"*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 perform actions on behalf of the channel specified - in the parameter value, without having to provide authentication credentials - for each separate channel.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"description\": \"Inserts a new stream - for the authenticated user.\",\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"httpMethod\": \"POST\"\n },\n \"list\": {\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"This parameter can only be used in a properly + 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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Inserts a new resource + into this collection.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"request\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"flatPath\": + \"youtube/v3/playlistItems\",\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"id\": \"youtube.playlistItems.insert\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n }\n + \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"rate\": + {\n \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n + \ \"id\",\n \"rating\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.videos.rate\",\n \"flatPath\": \"youtube/v3/videos/rate\",\n + \ \"description\": \"Adds a like or dislike rating to a video or removes + a rating from a video.\",\n \"parameters\": {\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"rating\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n + \ \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ]\n + \ }\n },\n \"path\": \"youtube/v3/videos/rate\"\n + \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"id\": \"youtube.videos.insert\",\n \"request\": + {\n \"$ref\": \"Video\"\n },\n \"supportsMediaUpload\": + true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": + \"Video\"\n },\n \"description\": \"Inserts a new resource + into this collection.\",\n \"parameters\": {\n \"stabilize\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Should stabilize be applied to the upload.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"notifySubscribers\": + {\n \"location\": \"query\",\n \"description\": + \"Notify the channel subscribers about the new video. As default, the notification + is enabled.\",\n \"default\": \"true\",\n \"type\": + \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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 @@ -3925,185 +428,67 @@ interactions: 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.\"\n },\n \"pageToken\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"minimum\": \"0\",\n - \ \"format\": \"uint32\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Return - LiveStreams with the given ids from Stubby or Apiary.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + for each separate channel.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"location\": \"query\",\n \"required\": + true\n },\n \"autoLevels\": {\n \"description\": + \"Should auto-levels be applied to the upload.\",\n \"type\": + \"boolean\",\n \"location\": \"query\"\n }\n },\n + \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": + {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/videos\"\n + \ },\n \"resumable\": {\n \"path\": + \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": true\n + \ }\n },\n \"accept\": [\n \"video/*\",\n + \ \"application/octet-stream\"\n ],\n \"maxSize\": + \"274877906944\"\n },\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"path\": \"youtube/v3/videos\"\n },\n \"delete\": + {\n \"parameterOrder\": [\n \"id\"\n ],\n \"path\": + \"youtube/v3/videos\",\n \"httpMethod\": \"DELETE\",\n \"id\": + \"youtube.videos.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"description\": + \"Deletes a resource.\",\n \"parameters\": {\n \"id\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n }\n }\n },\n \"reportAbuse\": + {\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n \"parameterOrder\": + [],\n \"path\": \"youtube/v3/videos/reportAbuse\",\n \"request\": + {\n \"$ref\": \"VideoAbuseReport\"\n },\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieve - the list of streams associated with the given channel. --\",\n \"id\": - \"youtube.liveStreams.list\",\n \"path\": \"youtube/v3/liveStreams\"\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.liveStreams.delete\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"description\": \"Deletes an existing - stream for the authenticated user.\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"path\": \"youtube/v3/membershipsLevels\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"id\": \"youtube.membershipsLevels.list\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Retrieves a list of all pricing levels offered - by a creator to the fans.\",\n \"response\": {\n \"$ref\": - \"MembershipsLevelListResponse\"\n }\n }\n }\n },\n - \ \"liveChatBans\": {\n \"methods\": {\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\"\n }\n },\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"response\": {\n \"$ref\": - \"LiveChatBan\"\n }\n },\n \"delete\": {\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a chat ban.\",\n \"path\": \"youtube/v3/liveChat/bans\",\n \"id\": - \"youtube.liveChatBans.delete\"\n }\n }\n },\n \"search\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + 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.\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.search.list\",\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"parameters\": {\n \"relatedToVideoId\": - {\n \"description\": \"Search related to a resource.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoLicense\": - {\n \"description\": \"Filter on the license of the videos.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ]\n - \ },\n \"videoCategoryId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on videos in a specific category.\"\n },\n \"videoCaption\": - {\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"description\": \"Filter on the presence - of captions on the videos.\",\n \"type\": \"string\"\n },\n - \ \"regionCode\": {\n \"description\": \"Display the - content as seen by viewers in this country.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"locationRadius\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on distance from the location (specified above).\",\n \"type\": - \"string\"\n },\n \"location\": {\n \"location\": - \"query\",\n \"description\": \"Filter on location of the video\",\n - \ \"type\": \"string\"\n },\n \"channelId\": + \ \"id\": \"youtube.videos.reportAbuse\",\n \"httpMethod\": + \"POST\",\n \"description\": \"Report abuse for a video.\"\n },\n + \ \"update\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on resources belonging to this channelId.\"\n - \ },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\"\n },\n \"q\": {\n \"type\": \"string\",\n - \ \"description\": \"Textual search terms to match.\",\n \"location\": - \"query\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"description\": \"Restrict results to a particular - set of resource types from One Platform.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"videoDefinition\": - {\n \"description\": \"Filter on the definition of the videos.\",\n - \ \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ],\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"type\": \"string\"\n },\n \"forMine\": - {\n \"location\": \"query\",\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"safeSearch\": {\n \"default\": - \"moderate\",\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ],\n \"description\": \"Indicates - whether the search results should include restricted content as well as standard - content.\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"videoEmbeddable\": {\n \"description\": - \"Filter on embeddable videos.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, embeddable or not.\",\n \"Only - retrieve embeddable videos.\"\n ],\n \"enum\": [\n - \ \"videoEmbeddableUnspecified\",\n \"any\",\n - \ \"true\"\n ]\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"*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 @@ -4111,334 +496,483 @@ interactions: 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.\"\n },\n \"pageToken\": {\n \"type\": + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n },\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"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.\",\n + \ \"type\": \"string\",\n \"repeated\": true\n }\n + \ },\n \"httpMethod\": \"PUT\",\n \"request\": {\n + \ \"$ref\": \"Video\"\n },\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"id\": \"youtube.videos.update\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/videos\",\n \"response\": {\n \"$ref\": + \"Video\"\n },\n \"description\": \"Updates an existing + resource.\"\n },\n \"list\": {\n \"id\": \"youtube.videos.list\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"repeated\": + true,\n \"location\": \"query\"\n },\n \"videoCategoryId\": + {\n \"default\": \"0\",\n \"location\": \"query\",\n + \ \"description\": \"Use chart that is specific to the specified + video category\",\n \"type\": \"string\"\n },\n \"regionCode\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Use a chart that is specific to the specified + region\"\n },\n \"myRating\": {\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The entity is liked.\",\n \"The entity is + disliked.\"\n ],\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"Return + videos liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\"\n + \ },\n \"chart\": {\n \"description\": \"Return + the videos that are in the specified chart.\",\n \"enumDescriptions\": + [\n \"\",\n \"Return the most popular videos + for the specified content region and video category.\"\n ],\n + \ \"location\": \"query\",\n \"enum\": [\n \"chartUnspecified\",\n + \ \"mostPopular\"\n ],\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"locale\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"Return + videos with the given ids.\",\n \"location\": \"query\"\n },\n + \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"forContentOwner\": {\n \"description\": \"Search - owned by a content owner.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"videoDimension\": {\n \"description\": - \"Filter on 3d videos.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"any\",\n \"2d\",\n \"3d\"\n - \ ]\n },\n \"forDeveloper\": {\n \"type\": - \"boolean\",\n \"description\": \"Restrict the search to only - retrieve videos uploaded using the project id of the authenticated user.\",\n - \ \"location\": \"query\"\n },\n \"eventType\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on the livestream status of the videos.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n - \ },\n \"part\": {\n \"type\": \"string\",\n + 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.\"\n },\n \"maxResults\": {\n + \ \"minimum\": \"1\",\n \"default\": \"5\",\n \"maximum\": + \"50\",\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"maxHeight\": + {\n \"format\": \"int32\",\n \"minimum\": \"72\",\n + \ \"type\": \"integer\",\n \"maximum\": \"8192\",\n + \ \"location\": \"query\"\n },\n \"maxWidth\": + {\n \"location\": \"query\",\n \"type\": \"integer\",\n + \ \"description\": \"Return the player with maximum height specified + in\",\n \"format\": \"int32\",\n \"minimum\": \"72\",\n + \ \"maximum\": \"8192\"\n },\n \"hl\": {\n + \ \"description\": \"Stands for \\\"host language\\\". Specifies + the localization language of the metadata to be filled into snippet.localized. + The field is filled with the default metadata if there is no localization + in the specified language. The parameter value must be a language code included + in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"httpMethod\": \"GET\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"response\": + {\n \"$ref\": \"VideoListResponse\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"path\": + \"youtube/v3/videos\"\n },\n \"getRating\": {\n \"httpMethod\": + \"GET\",\n \"flatPath\": \"youtube/v3/videos/getRating\",\n \"id\": + \"youtube.videos.getRating\",\n \"description\": \"Retrieves the + ratings that the authorized user gave to a list of specified videos.\",\n + \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n + \ },\n \"path\": \"youtube/v3/videos/getRating\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"required\": true\n + \ }\n }\n }\n }\n },\n \"activities\": + {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/activities\",\n + \ \"flatPath\": \"youtube/v3/activities\",\n \"parameters\": + {\n \"home\": {\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"maxResults\": {\n \"format\": + \"uint32\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"default\": \"5\",\n \"type\": \"integer\",\n + \ \"maximum\": \"50\",\n \"minimum\": \"0\",\n \"location\": + \"query\"\n },\n \"channelId\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"regionCode\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"mine\": {\n \"location\": \"query\",\n + \ \"type\": \"boolean\"\n },\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n \ \"location\": \"query\",\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"topicId\": {\n \"type\": + *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.\",\n \"type\": + \"string\"\n },\n \"pageToken\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular topic.\"\n },\n \"videoSyndicated\": - {\n \"description\": \"Filter on syndicated videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoDuration\": - {\n \"description\": \"Filter on the duration of the videos.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter video search results based on their duration. This is the default - value.\",\n \"Only include videos that are less than four minutes - long.\",\n \"Only include videos that are between four and - 20 minutes long (inclusive).\",\n \"Only include videos longer - than 20 minutes.\"\n ]\n },\n \"channelType\": - {\n \"type\": \"string\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"location\": - \"query\",\n \"description\": \"Add a filter on the channel search.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all channels.\",\n \"Only retrieve shows.\"\n ]\n + \"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.\"\n },\n + \ \"publishedBefore\": {\n \"format\": \"google-datetime\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n \ },\n \"publishedAfter\": {\n \"location\": - \"query\",\n \"format\": \"google-datetime\",\n \"description\": - \"Filter on resources published after this date.\",\n \"type\": - \"string\"\n },\n \"relevanceLanguage\": {\n \"description\": - \"Return results relevant to this language.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"order\": - {\n \"description\": \"Sort order of the results.\",\n \"type\": - \"string\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"default\": - \"relevance\",\n \"location\": \"query\"\n },\n \"publishedBefore\": - {\n \"format\": \"google-datetime\",\n \"location\": - \"query\",\n \"description\": \"Filter on resources published - before this date.\",\n \"type\": \"string\"\n },\n - \ \"videoType\": {\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos.\",\n \"Only retrieve movies.\",\n - \ \"Only retrieve episodes of shows.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on videos of a specific type.\"\n }\n },\n \"path\": - \"youtube/v3/search\",\n \"description\": \"Retrieves a list of search - resources\",\n \"flatPath\": \"youtube/v3/search\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"path\": - \"youtube/v3/videoAbuseReportReasons\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n + \"query\",\n \"format\": \"google-datetime\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.activities.list\",\n + \ \"response\": {\n \"$ref\": \"ActivityListResponse\"\n + \ }\n }\n }\n },\n \"superChatEvents\": {\n \"methods\": + {\n \"list\": {\n \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"id\": \"youtube.superChatEvents.list\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"en-US\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the videoCategory resource parts that the API response - will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n }\n }\n }\n },\n \"commentThreads\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"order\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"location\": \"query\",\n - \ \"enum\": [\n \"orderUnspecified\",\n \"time\",\n - \ \"relevance\"\n ],\n \"default\": - \"time\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\"\n },\n \"textFormat\": {\n - \ \"default\": \"html\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The requested text format for the returned - comments.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ]\n },\n \"searchTerms\": {\n \"location\": - \"query\",\n \"description\": \"Limits the returned comment threads - to those matching the specified key words. Not compatible with the 'id' filter.\",\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": + \ ],\n \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"repeated\": + true,\n \"description\": \"The *part* parameter specifies the + superChatEvent resource parts that the API response will include. This parameter + is currently not supported.\",\n \"type\": \"string\"\n },\n + \ \"maxResults\": {\n \"format\": \"uint32\",\n \"maximum\": + \"50\",\n \"minimum\": \"1\",\n \"type\": \"integer\",\n + \ \"default\": \"5\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"location\": \"query\"\n },\n + \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"minimum\": \"1\",\n - \ \"location\": \"query\",\n \"default\": \"20\",\n - \ \"maximum\": \"100\"\n },\n \"id\": {\n - \ \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads of the specified - video.\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n },\n \"moderationStatus\": - {\n \"default\": \"published\",\n \"enum\": [\n - \ \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"type\": \"string\",\n \"enumDescriptions\": + \"string\"\n },\n \"hl\": {\n \"location\": + \"query\",\n \"description\": \"Return rendered funding amounts + in specified language.\",\n \"type\": \"string\"\n }\n + \ },\n \"path\": \"youtube/v3/superChatEvents\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/superChatEvents\",\n + \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"videoCategories\": + {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/videoCategories\",\n + \ \"id\": \"youtube.videoCategories.list\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"hl\": {\n \"location\": + \"query\",\n \"default\": \"en-US\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"description\": \"Returns the video categories + with the given IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n + \ \"repeated\": true\n },\n \"regionCode\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"part\": {\n \"description\": \"The + *part* parameter specifies the videoCategory resource properties that the + API response will include. Set the parameter value to snippet.\",\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\",\n \"repeated\": true\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": + \"GET\",\n \"path\": \"youtube/v3/videoCategories\",\n \"response\": + {\n \"$ref\": \"VideoCategoryListResponse\"\n }\n }\n + \ }\n },\n \"comments\": {\n \"methods\": {\n \"delete\": + {\n \"id\": \"youtube.comments.delete\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"description\": \"Deletes a resource.\",\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n + \ \"flatPath\": \"youtube/v3/comments\"\n },\n \"setModerationStatus\": + {\n \"id\": \"youtube.comments.setModerationStatus\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"description\": \"Sets the moderation status of one or more comments.\",\n + \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n + \ \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Modifies the moderation status of the comments + with the given IDs\",\n \"repeated\": true\n },\n + \ \"banAuthor\": {\n \"description\": \"If set to true + the author of the comment gets added to the ban list. This means all future + comments of the author will autmomatically be rejected. Only valid in combination + with STATUS_REJECTED.\",\n \"location\": \"query\",\n \"type\": + \"boolean\",\n \"default\": \"false\"\n },\n \"moderationStatus\": + {\n \"description\": \"Specifies the requested moderation status. + Note, comments can be in statuses, which are not available through this call. + For example, this call does not allow to mark a comment as 'likely spam'. + Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, + MODERATION_STATUS_REJECTED.\",\n \"required\": true,\n \"enumDescriptions\": [\n \"The comment is available for public display.\",\n \"The comment is awaiting review by a moderator.\",\n \"\",\n \"The comment is unfit for display.\"\n ],\n \"location\": - \"query\"\n },\n \"allThreadsRelatedToChannelId\": {\n - \ \"location\": \"query\",\n \"description\": \"Returns - the comment threads of all videos of the channel and the channel comments - as well.\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"id\": \"youtube.commentThreads.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"path\": \"youtube/v3/commentThreads\",\n \"httpMethod\": - \"GET\"\n },\n \"insert\": {\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/commentThreads\",\n + \"query\",\n \"type\": \"string\",\n \"enum\": [\n + \ \"published\",\n \"heldForReview\",\n \"likelySpam\",\n + \ \"rejected\"\n ]\n }\n },\n + \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"parameterOrder\": + [\n \"id\",\n \"moderationStatus\"\n ]\n },\n + \ \"update\": {\n \"description\": \"Updates an existing resource.\",\n \ \"parameters\": {\n \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"flatPath\": \"youtube/v3/commentThreads\"\n }\n - \ }\n },\n \"thirdPartyLinks\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"parameters\": {\n \"linkingToken\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Get a third party link with the given linking - token.\"\n },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"type\": - {\n \"location\": \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"description\": - \"Get a third party link of the given type.\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - response will include. Supported values are linkingToken, status, and snippet.\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.thirdPartyLinks.list\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"parameters\": {\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"type\": {\n \"description\": \"Type of the link - to be deleted.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"required\": true\n },\n \"linkingToken\": - {\n \"location\": \"query\",\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Do not use. Required for compatibility.\",\n - \ \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ],\n \"description\": \"Deletes a - resource.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.thirdPartyLinks.delete\"\n },\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"The *part* parameter - specifies the thirdPartyLink resource parts that the API request and response - will include. Supported values are linkingToken, status, and snippet.\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\",\n \"type\": \"string\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"id\": \"youtube.thirdPartyLinks.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"POST\"\n },\n - \ \"update\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel ID to which changes - should be applied, for delegation.\",\n \"location\": \"query\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"request\": {\n - \ \"$ref\": \"ThirdPartyLink\"\n },\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"description\": \"Updates an existing - resource.\",\n \"id\": \"youtube.thirdPartyLinks.update\"\n }\n - \ }\n },\n \"i18nRegions\": {\n \"methods\": {\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n + 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.\",\n + \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": + {\n \"$ref\": \"Comment\"\n },\n \"flatPath\": + \"youtube/v3/comments\",\n \"response\": {\n \"$ref\": + \"Comment\"\n },\n \"httpMethod\": \"PUT\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.update\"\n + \ },\n \"list\": {\n \"id\": \"youtube.comments.list\",\n + \ \"path\": \"youtube/v3/comments\",\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"hl\": {\n \"default\": - \"en_US\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the i18nRegion resource properties that the API - response will include. Set the parameter value to snippet.\"\n }\n - \ },\n \"path\": \"youtube/v3/i18nRegions\",\n \"id\": - \"youtube.i18nRegions.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"parentId\": + {\n \"description\": \"Returns replies to the specified comment. + Note, currently YouTube features only one level of replies (ie replies to + top level comments). However replies to replies may be supported in the future.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"textFormat\": {\n \"enum\": [\n + \ \"textFormatUnspecified\",\n \"html\",\n \"plainText\"\n + \ ],\n \"type\": \"string\",\n \"default\": + \"html\",\n \"description\": \"The requested text format for + the returned comments.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Returns the comments in HTML format. This is the default + value.\",\n \"Returns the comments in plain text format.\"\n + \ ],\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"required\": true,\n \"location\": + \"query\",\n \"description\": \"The *part* parameter specifies + a comma-separated list of one or more comment resource properties that the + API response will include.\",\n \"type\": \"string\",\n \"repeated\": + true\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"description\": + \"Returns the comments with the given IDs for One Platform.\",\n \"type\": + \"string\",\n \"repeated\": true\n },\n \"maxResults\": + {\n \"default\": \"20\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"maximum\": \"100\",\n + \ \"minimum\": \"1\",\n \"location\": \"query\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\"\n }\n + \ }\n },\n \"insert\": {\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.insert\",\n + \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"type\": \"string\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"Comment\"\n },\n \"description\": \"Inserts a new resource + into this collection.\",\n \"request\": {\n \"$ref\": + \"Comment\"\n },\n \"path\": \"youtube/v3/comments\"\n },\n + \ \"markAsSpam\": {\n \"id\": \"youtube.comments.markAsSpam\",\n + \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n + \ \"parameters\": {\n \"id\": {\n \"description\": + \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"required\": true\n }\n + \ },\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"description\": + \"Expresses the caller's opinion that one or more comments should be flagged + as spam.\"\n }\n }\n },\n \"videoAbuseReportReasons\": {\n + \ \"methods\": {\n \"list\": {\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n + \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"description\": + \"The *part* parameter specifies the videoCategory resource parts that the + API response will include. Supported values are id and snippet.\",\n \"required\": + true,\n \"location\": \"query\",\n \"repeated\": + true,\n \"type\": \"string\"\n },\n \"hl\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"default\": \"en-US\"\n }\n },\n \"path\": + \"youtube/v3/videoAbuseReportReasons\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n + \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"parameterOrder\": + [\n \"part\"\n ]\n }\n }\n },\n \"youtube\": + {\n \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": + {\n \"description\": \"Updates an existing resource.\",\n \"httpMethod\": + \"PUT\",\n \"parameterOrder\": [],\n \"flatPath\": + \"youtube/v3/commentThreads\",\n \"path\": \"youtube/v3/commentThreads\",\n + \ \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"request\": + {\n \"$ref\": \"CommentThread\"\n },\n \"response\": + {\n \"$ref\": \"CommentThread\"\n },\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n }\n + \ }\n }\n }\n }\n }\n },\n + \ \"thumbnails\": {\n \"methods\": {\n \"set\": {\n \"mediaUpload\": + {\n \"protocols\": {\n \"resumable\": {\n \"multipart\": + true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n + \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n + \ \"multipart\": true\n }\n },\n \"maxSize\": + \"2097152\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ]\n },\n + \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"description\": + \"As this is not an insert in a strict sense (it supports uploading/setting + of a thumbnail for multiple videos, which doesn't result in creation of a + single resource), I use a custom verb here.\",\n \"httpMethod\": + \"POST\",\n \"id\": \"youtube.thumbnails.set\",\n \"parameters\": + {\n \"videoId\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true,\n \"description\": + \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\"\n }\n + \ },\n \"path\": \"youtube/v3/thumbnails/set\",\n \"response\": + {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"flatPath\": + \"youtube/v3/thumbnails/set\",\n \"supportsMediaUpload\": true,\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"update\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"PUT\",\n \"id\": \"youtube.liveBroadcasts.update\",\n - \ \"description\": \"Updates an existing broadcast for the authenticated - user.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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 + \ }\n }\n },\n \"liveStreams\": {\n \"methods\": {\n + \ \"delete\": {\n \"path\": \"youtube/v3/liveStreams\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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 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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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 + 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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"httpMethod\": \"DELETE\",\n + \ \"description\": \"Deletes an existing stream for the authenticated + user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.delete\"\n + \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"description\": + \"Retrieve the list of streams associated with the given channel. --\",\n + \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.list\",\n + \ \"parameters\": {\n \"maxResults\": {\n \"type\": + \"integer\",\n \"description\": \"The *maxResults* parameter + specifies the maximum number of items that should be returned in the result + set.\",\n \"maximum\": \"50\",\n \"minimum\": \"0\",\n + \ \"default\": \"5\",\n \"format\": \"uint32\",\n + \ \"location\": \"query\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n + \ \"location\": \"query\",\n \"required\": true,\n + \ \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + for each separate channel.\"\n },\n \"pageToken\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"description\": \"Return + LiveStreams with the given ids from Stubby or Apiary.\"\n },\n + \ \"mine\": {\n \"location\": \"query\",\n \"type\": + \"boolean\"\n }\n },\n \"path\": \"youtube/v3/liveStreams\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n }\n - \ },\n \"insert\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new stream for the authenticated - user.\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ]\n + \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"description\": \"Inserts a new stream for the authenticated + user.\",\n \"id\": \"youtube.liveStreams.insert\",\n \"httpMethod\": + \"POST\",\n \"response\": {\n \"$ref\": \"LiveStream\"\n + \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify @@ -4449,100 +983,47 @@ interactions: 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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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 + \ \"part\": {\n \"location\": \"query\",\n \"required\": + true,\n \"description\": \"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, + content_details, and status.\",\n \"type\": \"string\",\n \"repeated\": + true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"description\": \"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.\"\n }\n }\n },\n \"bind\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameters\": {\n \"id\": {\n \"description\": - \"Broadcast to bind to the stream\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"streamId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Stream - to bind, if not set unbind the current one.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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 + for each separate channel.\",\n \"location\": \"query\"\n }\n + \ },\n \"request\": {\n \"$ref\": \"LiveStream\"\n + \ },\n \"flatPath\": \"youtube/v3/liveStreams\"\n },\n + \ \"update\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"PUT\",\n \"request\": {\n + \ \"$ref\": \"LiveStream\"\n },\n \"description\": + \"Updates an existing stream for the authenticated user.\",\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"parameterOrder\": [\n \"id\",\n - \ \"part\"\n ],\n \"id\": \"youtube.liveBroadcasts.bind\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"description\": \"Bind a broadcast to a stream.\"\n },\n - \ \"list\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameters\": {\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"broadcastStatus\": - {\n \"description\": \"Return broadcasts with a certain status, - e.g. active broadcasts.\",\n \"location\": \"query\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ]\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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, status and statistics.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"required\": - true\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"default\": - \"5\",\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n + owner.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"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 @@ -4557,39 +1038,86 @@ interactions: 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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Return broadcasts with the given - ids from Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"broadcastType\": {\n \"description\": - \"Return only broadcasts with the selected type.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ],\n \"default\": \"event\",\n \"location\": - \"query\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ]\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveBroadcastListResponse\"\n },\n \"description\": \"Retrieve - the list of broadcasts associated with the given channel.\",\n \"id\": - \"youtube.liveBroadcasts.list\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n },\n \"insertCuepoint\": {\n \"parameterOrder\": - [],\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + for each separate channel.\"\n },\n \"part\": {\n \"repeated\": + true,\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.liveStreams.update\",\n \"response\": + {\n \"$ref\": \"LiveStream\"\n }\n }\n }\n + \ },\n \"subscriptions\": {\n \"methods\": {\n \"delete\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"flatPath\": \"youtube/v3/subscriptions\",\n + \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes + a resource.\",\n \"id\": \"youtube.subscriptions.delete\",\n \"path\": + \"youtube/v3/subscriptions\"\n },\n \"list\": {\n \"path\": + \"youtube/v3/subscriptions\",\n \"response\": {\n \"$ref\": + \"SubscriptionListResponse\"\n },\n \"id\": \"youtube.subscriptions.list\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"parameters\": + {\n \"pageToken\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"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.\"\n },\n \"part\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"description\": \"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.\"\n },\n \"forChannelId\": {\n \"description\": + \"Return the subscriptions to the subset of these channels that the authenticated + user is subscribed to.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"mine\": + {\n \"description\": \"Flag for returning the subscriptions of + the authenticated user.\",\n \"type\": \"boolean\",\n \"location\": + \"query\"\n },\n \"channelId\": {\n \"location\": + \"query\",\n \"description\": \"Return the subscriptions of the + given channel owner.\",\n \"type\": \"string\"\n },\n + \ \"order\": {\n \"description\": \"The order of the + returned subscriptions\",\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Sort by relevance.\",\n \"Sort + by order of activity.\",\n \"Sort alphabetically.\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n + \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n + \ ],\n \"default\": \"relevance\"\n },\n + \ \"mySubscribers\": {\n \"description\": \"Return + the subscribers of the given channel owner.\",\n \"type\": \"boolean\",\n + \ \"location\": \"query\"\n },\n \"myRecentSubscribers\": + {\n \"type\": \"boolean\",\n \"location\": \"query\"\n + \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"maximum\": + \"50\",\n \"minimum\": \"0\",\n \"location\": \"query\",\n + \ \"default\": \"5\",\n \"type\": \"integer\"\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"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 @@ -4603,36 +1131,30 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Broadcast to insert ads to, - or equivalently `external_video_id` for internal use.\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + for each separate channel.\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"description\": + \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"type\": + \"string\"\n }\n },\n \"httpMethod\": \"GET\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"parameterOrder\": [\n \"part\"\n ]\n },\n + \ \"insert\": {\n \"httpMethod\": \"POST\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"request\": {\n \"$ref\": + \"Subscription\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"description\": \"Insert cuepoints in a broadcast\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\"\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.delete\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \ ],\n \"id\": \"youtube.subscriptions.insert\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"response\": + {\n \"$ref\": \"Subscription\"\n },\n \"path\": + \"youtube/v3/subscriptions\",\n \"parameters\": {\n \"part\": + {\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"flatPath\": + \"youtube/v3/subscriptions\"\n }\n }\n },\n \"playlists\": + {\n \"methods\": {\n \"insert\": {\n \"request\": {\n + \ \"$ref\": \"Playlist\"\n },\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"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 @@ -4646,11 +1168,32 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Broadcast to delete.\",\n \"required\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + for each separate channel.\"\n },\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"required\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"id\": \"youtube.playlists.insert\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/playlists\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\"\n + \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n + \ \"description\": \"Deletes a resource.\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \ \"location\": \"query\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify @@ -4660,125 +1203,139 @@ interactions: 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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"description\": \"Delete a given broadcast.\"\n },\n \"transition\": - {\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"path\": - \"youtube/v3/liveBroadcasts/transition\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + YouTube content owner.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/playlists\",\n \"flatPath\": + \"youtube/v3/playlists\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"id\": \"youtube.playlists.delete\"\n },\n + \ \"update\": {\n \"path\": \"youtube/v3/playlists\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Updates an existing resource.\",\n \"response\": + {\n \"$ref\": \"Playlist\"\n },\n \"request\": + {\n \"$ref\": \"Playlist\"\n },\n \"flatPath\": + \"youtube/v3/playlists\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.playlists.update\",\n + \ \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"required\": true,\n + \ \"repeated\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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 + \ \"description\": \"*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.\"\n }\n }\n },\n \"list\": {\n \"flatPath\": + \"youtube/v3/playlists\",\n \"response\": {\n \"$ref\": + \"PlaylistListResponse\"\n },\n \"path\": \"youtube/v3/playlists\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": + {\n \"pageToken\": {\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n + \ \"type\": \"string\"\n },\n \"channelId\": + {\n \"description\": \"Return the playlists owned by the specified + channel ID.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"description\": + \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"mine\": {\n \"description\": \"Return + the playlists owned by the authenticated user.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"maxResults\": + {\n \"default\": \"5\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"format\": \"uint32\",\n \"location\": + \"query\",\n \"type\": \"integer\",\n \"maximum\": + \"50\",\n \"minimum\": \"0\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"hl\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Return content in specified language\"\n },\n \"part\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"required\": true,\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Broadcast to transition.\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"required\": true\n },\n \"broadcastStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"Start - testing the broadcast. YouTube transmits video to the broadcast's monitor - stream. Note that you can only transition a broadcast to the testing state - if its contentDetails.monitorStream.enableMonitorStream property is set to - true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The - broadcast is over. YouTube stops transmitting video.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"The status to which the broadcast - is going to transition.\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"broadcastStatus\",\n - \ \"id\",\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Transition a broadcast to a given - status.\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n }\n }\n - \ },\n \"subscriptions\": {\n \"methods\": {\n \"insert\": - {\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + for each separate channel.\",\n \"location\": \"query\"\n }\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"request\": - {\n \"$ref\": \"Subscription\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Subscription\"\n },\n \"httpMethod\": \"POST\"\n },\n - \ \"list\": {\n \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"id\": \"youtube.subscriptions.list\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"myRecentSubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\"\n },\n - \ \"forChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Return - the subscriptions to the subset of these channels that the authenticated user - is subscribed to.\"\n },\n \"mine\": {\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"This parameter can only be used in a properly + \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.playlists.list\"\n + \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n + \ \"insert\": {\n \"parameters\": {\n \"part\": + {\n \"description\": \"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.\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"path\": + \"youtube/v3/abuseReports\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n + \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"id\": \"youtube.abuseReports.insert\",\n + \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": + \"AbuseReport\"\n },\n \"parameterOrder\": [\n \"part\"\n + \ ]\n }\n }\n },\n \"channelBanners\": {\n \"methods\": + {\n \"insert\": {\n \"description\": \"Inserts a new resource + into this collection.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n },\n \"channelId\": {\n \"location\": + \"query\",\n \"description\": \"Unused, channel_id is currently + derived from the security context of the requestor.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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 @@ -4792,76 +1349,59 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Return the subscriptions with - the given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"mySubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the subscribers of the given channel - owner.\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the subscriptions of the - given channel owner.\",\n \"type\": \"string\"\n },\n - \ \"order\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"default\": \"relevance\",\n \"description\": - \"The order of the returned subscriptions\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"GET\"\n },\n \"delete\": {\n \"path\": - \"youtube/v3/subscriptions\",\n \"httpMethod\": \"DELETE\",\n \"id\": - \"youtube.subscriptions.delete\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n }\n - \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n - \ \"insert\": {\n \"id\": \"youtube.abuseReports.insert\",\n + for each separate channel.\"\n }\n },\n \"request\": + {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"flatPath\": + \"youtube/v3/channelBanners/insert\",\n \"response\": {\n \"$ref\": + \"ChannelBannerResource\"\n },\n \"mediaUpload\": {\n \"maxSize\": + \"6291456\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ],\n \"protocols\": + {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n + \ \"multipart\": true\n },\n \"simple\": + {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n + \ }\n }\n },\n \"httpMethod\": \"POST\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/abuseReports\",\n \"request\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"response\": {\n \"$ref\": - \"AbuseReport\"\n }\n }\n }\n },\n \"videoCategories\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"VideoCategoryListResponse\"\n },\n \"id\": - \"youtube.videoCategories.list\",\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the video categories with the given IDs for Stubby or Apiary.\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n },\n \"hl\": - {\n \"default\": \"en-US\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/videoCategories\"\n - \ }\n }\n },\n \"watermarks\": {\n \"methods\": {\n - \ \"unset\": {\n \"id\": \"youtube.watermarks.unset\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n + \ ],\n \"path\": \"youtube/v3/channelBanners/insert\",\n + \ \"supportsMediaUpload\": true,\n \"id\": \"youtube.channelBanners.insert\",\n + \ \"parameterOrder\": []\n }\n }\n },\n \"watermarks\": + {\n \"methods\": {\n \"set\": {\n \"path\": \"youtube/v3/watermarks/set\",\n + \ \"description\": \"Allows upload of watermark image and setting + it for a channel.\",\n \"parameters\": {\n \"channelId\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"supportsMediaUpload\": + true,\n \"id\": \"youtube.watermarks.set\",\n \"request\": + {\n \"$ref\": \"InvideoBranding\"\n },\n \"httpMethod\": + \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"parameterOrder\": + [\n \"channelId\"\n ],\n \"mediaUpload\": {\n + \ \"protocols\": {\n \"simple\": {\n \"path\": + \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": true\n + \ },\n \"resumable\": {\n \"multipart\": + true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n + \ }\n },\n \"maxSize\": \"10485760\",\n + \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ]\n }\n },\n + \ \"unset\": {\n \"path\": \"youtube/v3/watermarks/unset\",\n + \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"httpMethod\": + \"POST\",\n \"parameterOrder\": [\n \"channelId\"\n ],\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Allows removal of channel watermark.\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"*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 @@ -4870,18 +1410,175 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/watermarks/unset\",\n \"description\": \"Allows removal - of channel watermark.\"\n },\n \"set\": {\n \"description\": - \"Allows upload of watermark image and setting it for a channel.\",\n \"supportsMediaUpload\": - true,\n \"flatPath\": \"youtube/v3/watermarks/set\",\n \"id\": - \"youtube.watermarks.set\",\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + be linked to the specified YouTube content owner.\"\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n }\n },\n \"id\": + \"youtube.watermarks.unset\"\n }\n }\n },\n \"i18nLanguages\": + {\n \"methods\": {\n \"list\": {\n \"response\": {\n + \ \"$ref\": \"I18nLanguageListResponse\"\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": + \"GET\",\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"id\": + \"youtube.i18nLanguages.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/i18nLanguages\",\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"description\": \"The + *part* parameter specifies the i18nLanguage resource properties that the API + response will include. Set the parameter value to snippet.\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n + \ },\n \"hl\": {\n \"default\": \"en_US\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n }\n }\n }\n },\n \"tests\": {\n + \ \"methods\": {\n \"insert\": {\n \"flatPath\": \"youtube/v3/tests\",\n + \ \"request\": {\n \"$ref\": \"TestItem\"\n },\n + \ \"path\": \"youtube/v3/tests\",\n \"description\": \"POST + method.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"response\": {\n \"$ref\": \"TestItem\"\n },\n + \ \"parameters\": {\n \"externalChannelId\": {\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"required\": true\n }\n + \ },\n \"id\": \"youtube.tests.insert\",\n \"httpMethod\": + \"POST\"\n }\n }\n },\n \"search\": {\n \"methods\": + {\n \"list\": {\n \"path\": \"youtube/v3/search\",\n \"description\": + \"Retrieves a list of search resources\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"videoType\": {\n \"enum\": + [\n \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n + \ \"episode\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos.\",\n \"Only + retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n + \ ],\n \"description\": \"Filter on videos of a specific + type.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"videoCategoryId\": {\n \"description\": + \"Filter on videos in a specific category.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"videoSyndicated\": + {\n \"type\": \"string\",\n \"description\": \"Filter + on syndicated videos.\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n + \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos, syndicated + or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n + \ \"location\": \"query\"\n },\n \"maxResults\": + {\n \"default\": \"5\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"minimum\": \"0\",\n \"format\": + \"uint32\",\n \"maximum\": \"50\",\n \"location\": + \"query\",\n \"type\": \"integer\"\n },\n \"locationRadius\": + {\n \"type\": \"string\",\n \"description\": \"Filter + on distance from the location (specified above).\",\n \"location\": + \"query\"\n },\n \"videoEmbeddable\": {\n \"type\": + \"string\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n + \ \"any\",\n \"true\"\n ],\n \"location\": + \"query\",\n \"description\": \"Filter on embeddable videos.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Return + all videos, embeddable or not.\",\n \"Only retrieve embeddable + videos.\"\n ]\n },\n \"eventType\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"The + live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n + \ \"The live broadcast has been completed.\"\n ],\n + \ \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ],\n + \ \"location\": \"query\",\n \"description\": \"Filter + on the livestream status of the videos.\",\n \"type\": \"string\"\n + \ },\n \"videoCaption\": {\n \"enumDescriptions\": + [\n \"\",\n \"Do not filter results based on + caption availability.\",\n \"Only include videos that have + captions.\",\n \"Only include videos that do not have captions.\"\n + \ ],\n \"location\": \"query\",\n \"enum\": + [\n \"videoCaptionUnspecified\",\n \"any\",\n + \ \"closedCaption\",\n \"none\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"Filter + on the presence of captions on the videos.\"\n },\n \"videoDimension\": + {\n \"type\": \"string\",\n \"enum\": [\n \"any\",\n + \ \"2d\",\n \"3d\"\n ],\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"Include + both 3D and non-3D videos in returned results. This is the default value.\",\n + \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict + search results to only include 3D videos.\"\n ],\n \"description\": + \"Filter on 3d videos.\"\n },\n \"topicId\": {\n \"type\": + \"string\",\n \"description\": \"Restrict results to a particular + topic.\",\n \"location\": \"query\"\n },\n \"publishedBefore\": + {\n \"description\": \"Filter on resources published before this + date.\",\n \"type\": \"string\",\n \"format\": \"google-datetime\",\n + \ \"location\": \"query\"\n },\n \"type\": + {\n \"type\": \"string\",\n \"description\": \"Restrict + results to a particular set of resource types from One Platform.\",\n \"repeated\": + true,\n \"location\": \"query\"\n },\n \"location\": + {\n \"location\": \"query\",\n \"description\": + \"Filter on location of the video\",\n \"type\": \"string\"\n + \ },\n \"order\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Resources + are sorted in reverse chronological order based on the date they were created.\",\n + \ \"Resources are sorted from highest to lowest rating.\",\n + \ \"Resources are sorted from highest to lowest number of views.\",\n + \ \"Resources are sorted based on their relevance to the search + query. This is the default value for this parameter.\",\n \"Resources + are sorted alphabetically by title.\",\n \"Channels are sorted + in descending order of their number of uploaded videos.\"\n ],\n + \ \"location\": \"query\",\n \"enum\": [\n \"searchSortUnspecified\",\n + \ \"date\",\n \"rating\",\n \"viewCount\",\n + \ \"relevance\",\n \"title\",\n \"videoCount\"\n + \ ],\n \"default\": \"relevance\",\n \"description\": + \"Sort order of the results.\"\n },\n \"q\": {\n \"description\": + \"Textual search terms to match.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"videoDuration\": + {\n \"description\": \"Filter on the duration of the videos.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n + \ \"\",\n \"Do not filter video search results + based on their duration. This is the default value.\",\n \"Only + include videos that are less than four minutes long.\",\n \"Only + include videos that are between four and 20 minutes long (inclusive).\",\n + \ \"Only include videos longer than 20 minutes.\"\n ],\n + \ \"location\": \"query\",\n \"enum\": [\n \"videoDurationUnspecified\",\n + \ \"any\",\n \"short\",\n \"medium\",\n + \ \"long\"\n ]\n },\n \"forMine\": + {\n \"description\": \"Search for the private videos of the authenticated + user.\",\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"videoLicense\": {\n \"enumDescriptions\": + [\n \"Return all videos, regardless of which license they have, + that match the query parameters.\",\n \"Only return videos + that have the standard YouTube license.\",\n \"Only return + videos that have a Creative Commons license. Users can reuse videos with this + license in other videos that they create. Learn more.\"\n ],\n + \ \"enum\": [\n \"any\",\n \"youtube\",\n + \ \"creativeCommon\"\n ],\n \"location\": + \"query\",\n \"description\": \"Filter on the license of the + videos.\",\n \"type\": \"string\"\n },\n \"relatedToVideoId\": {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Search related to a resource.\"\n },\n + \ \"videoDefinition\": {\n \"description\": \"Filter + on the definition of the videos.\",\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"Return all videos, + regardless of their resolution.\",\n \"Only retrieve videos + in standard definition.\",\n \"Only retrieve HD videos.\"\n + \ ],\n \"enum\": [\n \"any\",\n \"standard\",\n + \ \"high\"\n ],\n \"type\": \"string\"\n + \ },\n \"forContentOwner\": {\n \"description\": + \"Search owned by a content owner.\",\n \"location\": \"query\",\n + \ \"type\": \"boolean\"\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Filter on resources belonging to this channelId.\"\n + \ },\n \"safeSearch\": {\n \"location\": + \"query\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n + \ \"none\",\n \"moderate\",\n \"strict\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"YouTube will not filter the search result set.\",\n \"YouTube + will filter some content from search results and, at the least, will filter + content that is restricted in your locale. Based on their content, search + results could be removed from search results or demoted in search results. + This is the default parameter value.\",\n \"YouTube will try + to exclude all restricted content from the search result set. Based on their + content, search results could be removed from search results or demoted in + search results.\"\n ],\n \"description\": \"Indicates + whether the search results should include restricted content as well as standard + content.\",\n \"type\": \"string\",\n \"default\": + \"moderate\"\n },\n \"relevanceLanguage\": {\n \"location\": + \"query\",\n \"description\": \"Return results relevant to this + language.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"*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 @@ -4891,55 +1588,173 @@ interactions: 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.\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + owner.\"\n },\n \"publishedAfter\": {\n \"type\": + \"string\",\n \"description\": \"Filter on resources published + after this date.\",\n \"format\": \"google-datetime\",\n \"location\": + \"query\"\n },\n \"channelType\": {\n \"type\": + \"string\",\n \"description\": \"Add a filter on the channel + search.\",\n \"location\": \"query\",\n \"enum\": + [\n \"channelTypeUnspecified\",\n \"any\",\n + \ \"show\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return all channels.\",\n \"Only + retrieve shows.\"\n ]\n },\n \"part\": + {\n \"repeated\": true,\n \"description\": \"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.\",\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"forDeveloper\": {\n \"description\": + \"Restrict the search to only retrieve videos uploaded using the project id + of the authenticated user.\",\n \"type\": \"boolean\",\n \"location\": + \"query\"\n },\n \"regionCode\": {\n \"location\": + \"query\",\n \"description\": \"Display the content as seen by + viewers in this country.\",\n \"type\": \"string\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/search\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"SearchListResponse\"\n },\n \"httpMethod\": \"GET\",\n + \ \"id\": \"youtube.search.list\"\n }\n }\n },\n \"channelSections\": + {\n \"methods\": {\n \"insert\": {\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": + true\n }\n },\n \"description\": \"Inserts a + new resource into this collection.\",\n \"path\": \"youtube/v3/channelSections\",\n + \ \"id\": \"youtube.channelSections.insert\",\n \"httpMethod\": + \"POST\",\n \"request\": {\n \"$ref\": \"ChannelSection\"\n + \ },\n \"flatPath\": \"youtube/v3/channelSections\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/watermarks/set\",\n \"mediaUpload\": - {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ }\n },\n \"maxSize\": \"10485760\"\n },\n - \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"youtube\": - {\n \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"description\": \"Updates - an existing resource.\",\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"parameterOrder\": - [],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/commentThreads\"\n }\n }\n }\n }\n - \ },\n \"channelSections\": {\n \"methods\": {\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ]\n },\n + \ \"list\": {\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": + \"GET\",\n \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": + {\n \"hl\": {\n \"type\": \"string\",\n \"description\": + \"Return content in specified language\",\n \"location\": \"query\"\n + \ },\n \"id\": {\n \"description\": \"Return + the ChannelSections with the given IDs for Stubby or Apiary.\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\",\n + \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"mine\": {\n \"description\": \"Return the ChannelSections + owned by the authenticated user.\",\n \"location\": \"query\",\n + \ \"type\": \"boolean\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return the ChannelSections owned by the specified + channel ID.\"\n }\n },\n \"id\": \"youtube.channelSections.list\"\n + \ },\n \"delete\": {\n \"parameters\": {\n \"id\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n }\n },\n \"id\": \"youtube.channelSections.delete\",\n + \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"description\": + \ ],\n \"description\": \"Deletes a resource.\",\n \"flatPath\": + \"youtube/v3/channelSections\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"path\": \"youtube/v3/channelSections\"\n },\n + \ \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"request\": {\n \"$ref\": \"ChannelSection\"\n + \ },\n \"response\": {\n \"$ref\": \"ChannelSection\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/channelSections\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"This parameter can only be used in a properly + true,\n \"repeated\": true,\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Updates an existing + resource.\",\n \"id\": \"youtube.channelSections.update\",\n \"httpMethod\": + \"PUT\",\n \"flatPath\": \"youtube/v3/channelSections\"\n }\n + \ }\n },\n \"liveBroadcasts\": {\n \"methods\": {\n \"transition\": + {\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"description\": + \"Transition a broadcast to a given status.\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n + \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n + \ \"part\"\n ],\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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 @@ -4953,47 +1768,18 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Inserts - a new resource into this collection.\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.channelSections.insert\"\n },\n \"delete\": - {\n \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"parameters\": {\n \"id\": + for each separate channel.\"\n },\n \"broadcastStatus\": {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"id\": \"youtube.channelSections.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"list\": {\n \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Return - the ChannelSections with the given IDs for Stubby or Apiary.\"\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return content in specified language\"\n + \ \"location\": \"query\",\n \"description\": \"The + status to which the broadcast is going to transition.\",\n \"enum\": + [\n \"statusUnspecified\",\n \"testing\",\n + \ \"live\",\n \"complete\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Start + testing the broadcast. YouTube transmits video to the broadcast's monitor + stream. Note that you can only transition a broadcast to the testing state + if its contentDetails.monitorStream.enableMonitorStream property is set to + true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The + broadcast is over. YouTube stops transmitting video.\"\n ]\n \ },\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter @@ -5004,103 +1790,76 @@ interactions: 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.\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"description\": - \"Return the ChannelSections owned by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the ChannelSections owned by the specified - channel ID.\"\n }\n }\n },\n \"update\": - {\n \"description\": \"Updates an existing resource.\",\n \"path\": - \"youtube/v3/channelSections\",\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"id\": - \"youtube.channelSections.update\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"playlistItems\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"playlistId\": - {\n \"description\": \"Return the playlist items within the given - playlist.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"maximum\": \"50\",\n - \ \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"format\": \"uint32\",\n \"default\": \"5\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the playlist items associated with - the given video ID.\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"PlaylistItemListResponse\"\n },\n \"id\": \"youtube.playlistItems.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/playlistItems\"\n },\n \"update\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"path\": - \"youtube/v3/playlistItems\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + owner.\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true,\n \"repeated\": true,\n \"description\": + \"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.\"\n },\n \"id\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Broadcast to transition.\"\n }\n + \ }\n },\n \"bind\": {\n \"parameterOrder\": + [\n \"id\",\n \"part\"\n ],\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"required\": true,\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"Broadcast to bind to the stream\",\n + \ \"location\": \"query\",\n \"required\": true\n + \ },\n \"streamId\": {\n \"location\": \"query\",\n + \ \"description\": \"Stream to bind, if not set unbind the current + one.\",\n \"type\": \"string\"\n }\n },\n + \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"description\": + \"Bind a broadcast to a stream.\",\n \"id\": \"youtube.liveBroadcasts.bind\",\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\"\n },\n \"insertCuepoint\": + {\n \"parameterOrder\": [],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n + \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"path\": + \"youtube/v3/liveBroadcasts/cuepoint\",\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"location\": \"query\"\n + \ },\n \"id\": {\n \"description\": \"Broadcast + to insert ads to, or equivalently `external_video_id` for internal use.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"*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 @@ -5109,52 +1868,45 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"httpMethod\": \"PUT\",\n - \ \"id\": \"youtube.playlistItems.update\"\n },\n \"insert\": - {\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + be linked to the specified YouTube content owner.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"parameters\": {\n \"id\": + \"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.\",\n \"type\": \"string\"\n }\n + \ },\n \"request\": {\n \"$ref\": \"Cuepoint\"\n + \ },\n \"httpMethod\": \"POST\",\n \"response\": + {\n \"$ref\": \"Cuepoint\"\n },\n \"description\": + \"Insert cuepoints in a broadcast\"\n },\n \"delete\": {\n \"parameterOrder\": + [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": + \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify @@ -5164,83 +1916,100 @@ interactions: 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.\",\n \"location\": \"query\"\n }\n - \ },\n \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.superChatEvents.list\",\n - \ \"flatPath\": \"youtube/v3/superChatEvents\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"1\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the superChatEvent resource parts that the API response will include. This - parameter is currently not supported.\",\n \"required\": true,\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"Return rendered funding amounts in specified - language.\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"path\": \"youtube/v3/superChatEvents\",\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"videos\": {\n \"methods\": - {\n \"update\": {\n \"id\": \"youtube.videos.update\",\n \"request\": - {\n \"$ref\": \"Video\"\n },\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"path\": \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/videos\"\n - \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.videos.delete\",\n - \ \"path\": \"youtube/v3/videos\",\n \"parameters\": {\n + YouTube content owner.\",\n \"location\": \"query\"\n },\n \ \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + true,\n \"location\": \"query\",\n \"description\": + \"Broadcast to delete.\"\n }\n },\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"description\": \"Delete a given + broadcast.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": + \"DELETE\",\n \"id\": \"youtube.liveBroadcasts.delete\"\n },\n + \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"description\": \"Inserts a new stream for the authenticated user.\",\n + \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"id\": + \"youtube.liveBroadcasts.insert\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"httpMethod\": \"POST\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/liveBroadcasts\"\n },\n \"list\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.list\",\n + \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n + \ },\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": + \"GET\",\n \"description\": \"Retrieve the list of broadcasts associated + with the given channel.\",\n \"parameters\": {\n \"maxResults\": + {\n \"maximum\": \"50\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"location\": \"query\",\n \"type\": + \"integer\",\n \"default\": \"5\",\n \"format\": + \"uint32\",\n \"minimum\": \"0\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"broadcastStatus\": {\n \"description\": + \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"enum\": [\n + \ \"broadcastStatusFilterUnspecified\",\n \"all\",\n + \ \"active\",\n \"upcoming\",\n \"completed\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all broadcasts.\",\n \"Return current + live broadcasts.\",\n \"Return broadcasts that have not yet + started.\",\n \"Return broadcasts that have already ended.\"\n + \ ]\n },\n \"broadcastType\": {\n \"enumDescriptions\": + [\n \"\",\n \"Return all broadcasts.\",\n \"Return + only scheduled event broadcasts.\",\n \"Return only persistent + broadcasts.\"\n ],\n \"location\": \"query\",\n + \ \"description\": \"Return only broadcasts with the selected + type.\",\n \"default\": \"event\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n + \ \"all\",\n \"event\",\n \"persistent\"\n + \ ]\n },\n \"part\": {\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true,\n \"location\": \"query\",\n \"description\": + \"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, status + and statistics.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"description\": \"Return broadcasts with the given + ids from Stubby or Apiary.\"\n },\n \"mine\": {\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -5249,88 +2018,28 @@ interactions: content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"httpMethod\": \"DELETE\"\n },\n \"reportAbuse\": - {\n \"parameterOrder\": [],\n \"id\": \"youtube.videos.reportAbuse\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n - \ \"path\": \"youtube/v3/videos/reportAbuse\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Report abuse for a video.\"\n },\n - \ \"rate\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/videos/rate\",\n - \ \"description\": \"Adds a like or dislike rating to a video or removes - a rating from a video.\",\n \"id\": \"youtube.videos.rate\",\n \"flatPath\": - \"youtube/v3/videos/rate\",\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ],\n \"parameters\": {\n \"rating\": - {\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n }\n - \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.videos.list\",\n \"parameters\": - {\n \"locale\": {\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoCategoryId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"default\": - \"0\"\n },\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"description\": \"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.\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Use a chart that is specific to the specified region\"\n },\n - \ \"maxResults\": {\n \"description\": \"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.\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"minimum\": \"1\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"type\": - \"integer\"\n },\n \"myRating\": {\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"description\": \"Return videos - liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"Return videos with the given ids.\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"maxWidth\": {\n \"type\": - \"integer\",\n \"maximum\": \"8192\",\n \"location\": - \"query\",\n \"format\": \"int32\",\n \"description\": - \"Return the player with maximum height specified in\",\n \"minimum\": - \"72\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + individual channel. The CMS account that the user authenticates with must + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n }\n },\n \"update\": {\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube @@ -5340,255 +2049,234 @@ interactions: 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.\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"type\": - \"string\"\n },\n \"maxHeight\": {\n \"format\": - \"int32\",\n \"minimum\": \"72\",\n \"maximum\": - \"8192\",\n \"type\": \"integer\",\n \"location\": - \"query\"\n },\n \"chart\": {\n \"type\": - \"string\",\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"description\": - \"Return the videos that are in the specified chart.\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"VideoListResponse\"\n }\n },\n \"getRating\": {\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"description\": \"Retrieves the ratings that the - authorized user gave to a list of specified videos.\",\n \"flatPath\": - \"youtube/v3/videos/getRating\",\n \"id\": \"youtube.videos.getRating\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"insert\": {\n \"supportsMediaUpload\": - true,\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/videos\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/videos\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": true\n - \ }\n },\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"274877906944\"\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"parameters\": {\n \"stabilize\": {\n \"type\": - \"boolean\",\n \"description\": \"Should stabilize be applied - to the upload.\",\n \"location\": \"query\"\n },\n + owner.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"repeated\": true\n },\n \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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 + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"notifySubscribers\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"default\": \"true\",\n - \ \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\"\n },\n \"autoLevels\": - {\n \"description\": \"Should auto-levels be applied to the upload.\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ }\n },\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.videos.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"Video\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for which moderators - should be returned.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the liveChatModerator resource parts that - the API response will include. Supported values are id and snippet.\"\n },\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"type\": \"integer\",\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"default\": - \"5\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.liveChatModerators.list\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"response\": {\n \"$ref\": - \"LiveChatModeratorListResponse\"\n },\n \"httpMethod\": - \"GET\"\n },\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": + for each separate channel.\"\n }\n },\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Updates + an existing broadcast for the authenticated user.\",\n \"flatPath\": + \"youtube/v3/liveBroadcasts\",\n \"request\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"id\": \"youtube.liveBroadcasts.update\"\n + \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": + {\n \"insert\": {\n \"request\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"parameters\": {\n \"part\": {\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API request and response will include. Supported values are linkingToken, + status, and snippet.\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"required\": true\n },\n \"externalChannelId\": + {\n \"description\": \"Channel ID to which changes should be + applied, for delegation.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"id\": \"youtube.thirdPartyLinks.insert\",\n + \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\",\n \"description\": \"Inserts a new + resource into this collection.\"\n },\n \"delete\": {\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.delete\",\n + \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"linkingToken\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"description\": \"Delete the partner links with the given linking + token.\",\n \"location\": \"query\"\n },\n \"type\": + {\n \"required\": true,\n \"description\": \"Type + of the link to be deleted.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel + with a store on a merchandising platform in order to enable retail commerce + capabilities for that channel on YouTube.\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"location\": + \"query\"\n },\n \"externalChannelId\": {\n \"type\": + \"string\",\n \"description\": \"Channel ID to which changes + should be applied, for delegation.\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Do not use. Required for compatibility.\"\n + \ }\n },\n \"description\": \"Deletes a resource.\",\n + \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": + [\n \"linkingToken\",\n \"type\"\n ]\n },\n + \ \"update\": {\n \"httpMethod\": \"PUT\",\n \"id\": + \"youtube.thirdPartyLinks.update\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API request and response will include. Supported values are linkingToken, + status, and snippet.\"\n },\n \"externalChannelId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Channel ID to which changes should be applied, + for delegation.\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"description\": \"Updates an existing resource.\"\n },\n + \ \"list\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.thirdPartyLinks.list\",\n + \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"description\": \"The + *part* parameter specifies the thirdPartyLink resource parts that the API + response will include. Supported values are linkingToken, status, and snippet.\",\n + \ \"required\": true,\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"externalChannelId\": {\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"linkingToken\": + {\n \"type\": \"string\",\n \"description\": \"Get + a third party link with the given linking token.\",\n \"location\": + \"query\"\n },\n \"type\": {\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel + with a store on a merchandising platform in order to enable retail commerce + capabilities for that channel on YouTube.\"\n ],\n \"description\": + \"Get a third party link of the given type.\",\n \"enum\": [\n + \ \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"type\": \"string\"\n }\n },\n + \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n + \ }\n }\n }\n },\n \"channels\": {\n \"methods\": + {\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"Channel\"\n },\n + \ \"path\": \"youtube/v3/channels\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Updates + an existing resource.\",\n \"parameters\": {\n \"part\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"required\": true,\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ }\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"id\": - \"youtube.liveChatModerators.insert\",\n \"description\": \"Inserts - a new resource into this collection.\"\n },\n \"delete\": {\n - \ \"description\": \"Deletes a chat moderator.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"id\": - \"youtube.liveChatModerators.delete\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n + 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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/channels\",\n \"id\": \"youtube.channels.update\",\n + \ \"request\": {\n \"$ref\": \"Channel\"\n }\n + \ },\n \"list\": {\n \"response\": {\n \"$ref\": + \"ChannelListResponse\"\n },\n \"flatPath\": \"youtube/v3/channels\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": - \"DELETE\"\n }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"delete\": {\n \"description\": \"Deletes a chat message.\",\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"httpMethod\": \"DELETE\",\n - \ \"id\": \"youtube.liveChatMessages.delete\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.liveChatMessages.insert\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n }\n - \ },\n \"list\": {\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the liveChatComment resource parts that the - API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"profileImageSize\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\",\n \"location\": \"query\",\n - \ \"minimum\": \"16\",\n \"maximum\": \"720\"\n },\n - \ \"liveChatId\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"The id of the live chat for which comments should be returned.\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n - \ },\n \"maxResults\": {\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"description\": \"The + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"path\": \"youtube/v3/channels\",\n \"id\": + \"youtube.channels.list\",\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"hl\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"Stands for \\\"host language\\\". + Specifies the localization language of the metadata to be filled into snippet.localized. + The field is filled with the default metadata if there is no localization + in the specified language. The parameter value must be a language code included + in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n + \ },\n \"mySubscribers\": {\n \"description\": + \"Return the channels subscribed to the authenticated user\",\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"mine\": + {\n \"location\": \"query\",\n \"description\": + \"Return the ids of channels owned by the authenticated user.\",\n \"type\": + \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"id\": + {\n \"repeated\": true,\n \"description\": \"Return + the channels with the specified IDs.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"maximum\": + \"50\",\n \"default\": \"5\",\n \"minimum\": \"0\",\n + \ \"location\": \"query\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"description\": \"The *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"2000\",\n \"minimum\": - \"200\",\n \"format\": \"uint32\",\n \"default\": - \"500\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"description\": \"Specifies the localization language - in which the system messages should be returned.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Retrieves + returned in the result set.\"\n },\n \"categoryId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Return the channels within the specified + guide category ID.\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"required\": + true\n },\n \"forUsername\": {\n \"location\": + \"query\",\n \"description\": \"Return the channel associated + with a YouTube username.\",\n \"type\": \"string\"\n },\n + \ \"managedByMe\": {\n \"type\": \"boolean\",\n \"location\": + \"query\",\n \"description\": \"Return the channels managed by + the authenticated user.\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ]\n }\n }\n },\n \"i18nRegions\": + {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"path\": \"youtube/v3/liveChat/messages\"\n }\n - \ }\n },\n \"captions\": {\n \"methods\": {\n \"download\": - {\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"path\",\n \"description\": - \"The ID of the caption track to download, required for One Platform.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOf\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is be on behalf of\"\n - \ },\n \"tfmt\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Convert - the captions into this format. Supported options are sbv, srt, and vtt.\"\n - \ },\n \"tlang\": {\n \"type\": \"string\",\n - \ \"description\": \"tlang is the language code; machine translate - the captions into this language.\",\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Downloads a caption - track.\",\n \"useMediaDownloadService\": true,\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions/{id}\",\n \"path\": - \"youtube/v3/captions/{id}\",\n \"id\": \"youtube.captions.download\",\n - \ \"supportsMediaDownload\": true\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"path\": \"youtube/v3/i18nRegions\",\n \"response\": {\n + \ \"$ref\": \"I18nRegionListResponse\"\n },\n \"id\": + \"youtube.i18nRegions.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.delete\",\n \"path\": \"youtube/v3/captions\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \ \"flatPath\": \"youtube/v3/i18nRegions\",\n \"parameters\": + {\n \"hl\": {\n \"default\": \"en_US\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true,\n \"repeated\": true,\n \"description\": + \"The *part* parameter specifies the i18nRegion resource properties that the + API response will include. Set the parameter value to snippet.\"\n }\n + \ },\n \"parameterOrder\": [\n \"part\"\n ]\n + \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"list\": + {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"id\": \"youtube.captions.list\",\n \"parameterOrder\": + [\n \"part\",\n \"videoId\"\n ],\n \"flatPath\": + \"youtube/v3/captions\",\n \"httpMethod\": \"GET\",\n \"response\": + {\n \"$ref\": \"CaptionListResponse\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/captions\",\n \"parameters\": + {\n \"id\": {\n \"description\": \"Returns the captions + with the given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -5597,101 +2285,39 @@ interactions: content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is be on behalf of\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\"\n },\n - \ \"list\": {\n \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"path\": \"youtube/v3/captions\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"id\": \"youtube.captions.list\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"parameterOrder\": [\n \"part\",\n - \ \"videoId\"\n ],\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the captions with the given IDs for - Stubby or Apiary.\",\n \"repeated\": true\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the captions for the specified video.\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is on behalf of.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"insert\": {\n \"path\": \"youtube/v3/captions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Caption\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the caption resource parts that the API response will include. Set the parameter - value to snippet.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"description\": + must be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n + \ },\n \"videoId\": {\n \"required\": true,\n + \ \"description\": \"Returns the captions for the specified video.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"onBehalfOf\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"ID + of the Google+ Page for the channel that the request is on behalf of.\"\n + \ }\n }\n },\n \"download\": {\n \"httpMethod\": + \"GET\",\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"id\": \"youtube.captions.download\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"useMediaDownloadService\": true,\n \"description\": + \"Downloads a caption track.\",\n \"flatPath\": \"youtube/v3/captions/{id}\",\n + \ \"parameters\": {\n \"tfmt\": {\n \"type\": + \"string\",\n \"description\": \"Convert the captions into this + format. Supported options are sbv, srt, and vtt.\",\n \"location\": + \"query\"\n },\n \"onBehalfOf\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"supportsMediaUpload\": true,\n \"flatPath\": - \"youtube/v3/captions\",\n \"mediaUpload\": {\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ }\n },\n \"maxSize\": \"104857600\",\n - \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.captions.insert\"\n },\n \"update\": - {\n \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n - \ },\n \"path\": \"youtube/v3/captions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"PUT\",\n - \ \"id\": \"youtube.captions.update\",\n \"request\": {\n - \ \"$ref\": \"Caption\"\n },\n \"parameters\": - {\n \"sync\": {\n \"description\": \"Extra parameter - to allow automatically syncing the uploaded caption/transcript with the audio.\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended + of\"\n },\n \"tlang\": {\n \"type\": \"string\",\n + \ \"description\": \"tlang is the language code; machine translate + the captions into this language.\",\n \"location\": \"query\"\n + \ },\n \"id\": {\n \"description\": \"The + ID of the caption track to download, required for One Platform.\",\n \"location\": + \"path\",\n \"required\": true,\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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 @@ -5700,203 +2326,90 @@ interactions: once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\"\n - \ },\n \"onBehalfOf\": {\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\",\n \"location\": \"query\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/captions\"\n }\n - \ }\n },\n \"channels\": {\n \"methods\": {\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"id\": \"youtube.channels.list\",\n \"parameters\": {\n - \ \"categoryId\": {\n \"type\": \"string\",\n \"description\": - \"Return the channels within the specified guide category ID.\",\n \"location\": - \"query\"\n },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the channels subscribed - to the authenticated user\",\n \"location\": \"query\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"description\": - \"Return the ids of channels owned by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"forUsername\": {\n \"description\": \"Return the - channel associated with a YouTube username.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Return the channels with the specified IDs.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"managedByMe\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channels managed by the authenticated - user.\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"description\": \"The *maxResults* parameter - specifies the maximum number of items that should be returned in the result - set.\",\n \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"default\": \"5\",\n \"format\": - \"uint32\"\n },\n \"hl\": {\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"path\": \"youtube/v3/channels\"\n },\n \"update\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/channels\",\n \"id\": - \"youtube.channels.update\",\n \"description\": \"Updates an existing - resource.\",\n \"response\": {\n \"$ref\": \"Channel\"\n - \ },\n \"path\": \"youtube/v3/channels\",\n \"httpMethod\": - \"PUT\",\n \"request\": {\n \"$ref\": \"Channel\"\n }\n - \ }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/channelBanners/insert\",\n \"multipart\": - true\n },\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/channelBanners/insert\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\"\n },\n \"description\": + \ },\n \"supportsMediaDownload\": true,\n \"path\": + \"youtube/v3/captions/{id}\"\n },\n \"insert\": {\n \"httpMethod\": + \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.insert\",\n + \ \"request\": {\n \"$ref\": \"Caption\"\n },\n + \ \"response\": {\n \"$ref\": \"Caption\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": \"Inserts a new resource into this collection.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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 + \ \"location\": \"query\",\n \"description\": \"*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 perform actions on behalf of the channel specified - in the parameter value, without having to provide authentication credentials - for each separate channel.\"\n },\n \"channelId\": {\n - \ \"description\": \"Unused, channel_id is currently derived from - the security context of the requestor.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"response\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n - \ \"id\": \"youtube.channelBanners.insert\",\n \"flatPath\": - \"youtube/v3/channelBanners/insert\",\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"supportsMediaUpload\": true,\n \"parameterOrder\": []\n - \ }\n }\n },\n \"playlists\": {\n \"methods\": {\n \"update\": - {\n \"path\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"id\": \"youtube.playlists.update\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"request\": {\n \"$ref\": - \"Playlist\"\n }\n },\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"parameters\": {\n \"id\": + to authenticate once and get access to all their video and channel data, without + having to provide authentication credentials for each individual channel. + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\"\n },\n \"part\": {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"id\": - \"youtube.playlists.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"insert\": {\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \ \"type\": \"string\",\n \"description\": \"The + *part* parameter specifies the caption resource parts that the API response + will include. Set the parameter value to snippet.\",\n \"repeated\": + true\n },\n \"onBehalfOf\": {\n \"location\": + \"query\",\n \"description\": \"ID of the Google+ Page for the + channel that the request is be on behalf of\",\n \"type\": \"string\"\n + \ },\n \"sync\": {\n \"description\": \"Extra + parameter to allow automatically syncing the uploaded caption/transcript with + the audio.\",\n \"type\": \"boolean\",\n \"location\": + \"query\"\n }\n },\n \"mediaUpload\": {\n \"protocols\": + {\n \"simple\": {\n \"multipart\": true,\n \"path\": + \"/upload/youtube/v3/captions\"\n },\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n + \ \"multipart\": true\n }\n },\n \"maxSize\": + \"104857600\",\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ]\n },\n \"path\": \"youtube/v3/captions\",\n + \ \"supportsMediaUpload\": true\n },\n \"update\": {\n + \ \"id\": \"youtube.captions.update\",\n \"description\": + \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": + \"Caption\"\n },\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"path\": \"youtube/v3/captions\",\n \"mediaUpload\": {\n + \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ],\n \"maxSize\": \"104857600\",\n + \ \"protocols\": {\n \"simple\": {\n \"path\": + \"/upload/youtube/v3/captions\",\n \"multipart\": true\n },\n + \ \"resumable\": {\n \"multipart\": true,\n \"path\": + \"/resumable/upload/youtube/v3/captions\"\n }\n }\n + \ },\n \"parameters\": {\n \"sync\": {\n \"location\": + \"query\",\n \"description\": \"Extra parameter to allow automatically + syncing the uploaded caption/transcript with the audio.\",\n \"type\": + \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"repeated\": true,\n + \ \"description\": \"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.\"\n + \ },\n \"onBehalfOf\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is on behalf of.\"\n + \ }\n },\n \"response\": {\n \"$ref\": + \"Caption\"\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"PUT\",\n \"supportsMediaUpload\": true\n + \ },\n \"delete\": {\n \"path\": \"youtube/v3/captions\",\n + \ \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOf\": + {\n \"type\": \"string\",\n \"description\": \"ID + of the Google+ Page for the channel that the request is be on behalf of\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": \"*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 @@ -5904,282 +2417,3765 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\"\n }\n },\n \"id\": \"youtube.playlists.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"response\": - {\n \"$ref\": \"Playlist\"\n }\n },\n \"list\": - {\n \"parameters\": {\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"description\": \"Return the playlists owned by the authenticated - user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlists owned by the specified channel ID.\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"format\": - \"uint32\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": true\n }\n },\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"youtube.captions.delete\",\n + \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Deletes a resource.\"\n }\n }\n },\n + \ \"membershipsLevels\": {\n \"methods\": {\n \"list\": {\n + \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"response\": + {\n \"$ref\": \"MembershipsLevelListResponse\"\n },\n + \ \"id\": \"youtube.membershipsLevels.list\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/membershipsLevels\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"parameters\": {\n \"part\": {\n \"description\": + \"The *part* parameter specifies the membershipsLevel resource parts that + the API response will include. Supported values are id and snippet.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true\n }\n },\n \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"PlaylistListResponse\"\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"id\": \"youtube.playlists.list\"\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"parameters\": {\n \"hl\": {\n - \ \"location\": \"query\",\n \"default\": \"en_US\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the i18nLanguage - resource properties that the API response will include. Set the parameter - value to snippet.\"\n }\n },\n \"flatPath\": - \"youtube/v3/i18nLanguages\",\n \"path\": \"youtube/v3/i18nLanguages\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"tests\": {\n \"methods\": - {\n \"insert\": {\n \"description\": \"POST method.\",\n \"id\": - \"youtube.tests.insert\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"request\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"flatPath\": \"youtube/v3/tests\",\n \"httpMethod\": \"POST\",\n - \ \"path\": \"youtube/v3/tests\"\n }\n }\n },\n \"members\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/members\",\n - \ \"id\": \"youtube.members.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/members\",\n \"parameters\": {\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"location\": \"query\",\n \"minimum\": - \"0\",\n \"maximum\": \"1000\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"required\": - true\n },\n \"mode\": {\n \"default\": - \"all_current\",\n \"description\": \"Parameter that specifies - which channel members to return.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return only members that joined after - the first call with this mode was made.\",\n \"Return all current - members, from newest to oldest.\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ]\n },\n \"filterByMemberChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\"\n - \ },\n \"hasAccessToLevel\": {\n \"location\": - \"query\",\n \"description\": \"Filter members in the results - set to the ones that have access to a level.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Retrieves a list - of members that match the request criteria for a channel.\",\n \"response\": - {\n \"$ref\": \"MemberListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ]\n }\n }\n },\n \"comments\": {\n \"methods\": - {\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n - \ },\n \"path\": \"youtube/v3/comments\",\n \"id\": - \"youtube.comments.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"request\": {\n \"$ref\": \"Comment\"\n - \ },\n \"flatPath\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"POST\"\n },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"update\": {\n \"description\": - \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"request\": {\n - \ \"$ref\": \"Comment\"\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n + a list of all pricing levels offered by a creator to the fans.\"\n }\n + \ }\n }\n },\n \"revision\": \"20230308\",\n \"id\": \"youtube:v3\",\n + \ \"ownerName\": \"Google\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n + \ \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.upload\": + {\n \"description\": \"Manage your YouTube videos\"\n },\n + \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": + {\n \"description\": \"View private information of your YouTube channel + relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": + {\n \"description\": \"See, edit, and permanently delete your YouTube + videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": + {\n \"description\": \"View your YouTube account\"\n },\n + \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": + \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": + {\n \"description\": \"View and manage your assets and associated + content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": + {\n \"description\": \"See a list of your current active channel + members, their current level, and when they became a member\"\n }\n + \ }\n }\n },\n \"canonicalName\": \"YouTube\",\n \"parameters\": + {\n \"prettyPrint\": {\n \"type\": \"boolean\",\n \"location\": + \"query\",\n \"description\": \"Returns response with indentations and + line breaks.\",\n \"default\": \"true\"\n },\n \"$.xgafv\": {\n + \ \"location\": \"query\",\n \"description\": \"V1 error format.\",\n + \ \"enum\": [\n \"1\",\n \"2\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"v1 error format\",\n + \ \"v2 error format\"\n ]\n },\n \"upload_protocol\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n \"description\": + \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n },\n + \ \"fields\": {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Selector specifying which fields to include in a + partial response.\"\n },\n \"uploadType\": {\n \"description\": + \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"access_token\": + {\n \"type\": \"string\",\n \"description\": \"OAuth access token.\",\n + \ \"location\": \"query\"\n },\n \"quotaUser\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n + \ \"alt\": {\n \"location\": \"query\",\n \"enum\": [\n \"json\",\n + \ \"media\",\n \"proto\"\n ],\n \"enumDescriptions\": + [\n \"Responses with Content-Type of application/json\",\n \"Media + download with context-dependent Content-Type\",\n \"Responses with + Content-Type of application/x-protobuf\"\n ],\n \"description\": + \"Data format for response.\",\n \"default\": \"json\",\n \"type\": + \"string\"\n },\n \"callback\": {\n \"location\": \"query\",\n + \ \"description\": \"JSONP\",\n \"type\": \"string\"\n },\n \"oauth_token\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": + \"OAuth 2.0 token for the current user.\"\n },\n \"key\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"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.\"\n }\n + \ },\n \"name\": \"youtube\",\n \"batchPath\": \"batch\",\n \"title\": + \"YouTube Data API v3\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n + \ \"discoveryVersion\": \"v1\",\n \"ownerDomain\": \"google.com\",\n \"icons\": + {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n + \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n + \ },\n \"kind\": \"discovery#restDescription\",\n \"protocol\": \"rest\",\n + \ \"documentationLink\": \"https://developers.google.com/youtube/\",\n \"version\": + \"v3\",\n \"servicePath\": \"\",\n \"description\": \"The YouTube Data API + v3 is an API that provides access to YouTube data, such as videos, playlists, + and channels.\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n + \ \"fullyEncodeReservedExpansion\": true,\n \"schemas\": {\n \"ActivityContentDetailsPlaylistItem\": + {\n \"description\": \"Information about a new playlist item.\",\n \"properties\": + {\n \"playlistItemId\": {\n \"description\": \"ID of the item + within the playlist.\",\n \"type\": \"string\"\n },\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId + object contains information about the resource that was added to the playlist.\"\n + \ },\n \"playlistId\": {\n \"type\": \"string\",\n \"description\": + \"The value that YouTube uses to uniquely identify the playlist.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPlaylistItem\"\n + \ },\n \"LiveStream\": {\n \"description\": \"A live stream describes + a live ingestion point.\",\n \"type\": \"object\",\n \"properties\": + {\n \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": + \"The cdn object defines the live stream's content delivery network (CDN) + settings. These settings provide details about the manner in which you stream + your content to YouTube.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveStream\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + content_details object contains information about the stream, including the + closed captions ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n + \ },\n \"id\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.liveStreams.update\"\n ]\n },\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the stream.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"snippet\": {\n \"$ref\": \"LiveStreamSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the stream, including its channel, title, and description.\"\n },\n + \ \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n \"description\": + \"The status object contains information about live stream's status.\"\n }\n + \ },\n \"id\": \"LiveStream\"\n },\n \"PlaylistLocalization\": + {\n \"type\": \"object\",\n \"properties\": {\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The localized + strings for playlist's description.\"\n },\n \"title\": {\n + \ \"description\": \"The localized strings for playlist's title.\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Playlist localization setting\",\n \"id\": \"PlaylistLocalization\"\n + \ },\n \"VideoPlayer\": {\n \"type\": \"object\",\n \"id\": + \"VideoPlayer\",\n \"description\": \"Player to be used for a video playback.\",\n + \ \"properties\": {\n \"embedHeight\": {\n \"type\": \"string\",\n + \ \"format\": \"int64\"\n },\n \"embedHtml\": {\n \"type\": + \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that + embeds a player that will play the video.\"\n },\n \"embedWidth\": + {\n \"description\": \"The embed width\",\n \"type\": \"string\",\n + \ \"format\": \"int64\"\n }\n }\n },\n \"LiveChatMessageRetractedDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"retractedMessageId\": + {\n \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\"\n + \ },\n \"LiveChatBan\": {\n \"id\": \"LiveChatBan\",\n \"type\": + \"object\",\n \"description\": \"A `__liveChatBan__` resource represents + a ban for a YouTube live chat.\",\n \"properties\": {\n \"kind\": + {\n \"default\": \"youtube#liveChatBan\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely + identify the ban.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"snippet\": {\n \"description\": \"The `snippet` object + contains basic details about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n + \ }\n }\n },\n \"LiveChatMessageDeletedDetails\": {\n \"type\": + \"object\",\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"properties\": + {\n \"deletedMessageId\": {\n \"type\": \"string\"\n }\n + \ }\n },\n \"CommentThread\": {\n \"properties\": {\n \"kind\": + {\n \"default\": \"youtube#commentThread\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"replies\": {\n \"description\": \"The replies object contains + a limited number of replies (if any) to the top level comment found in the + snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the comment thread.\"\n },\n \"snippet\": + {\n \"$ref\": \"CommentThreadSnippet\",\n \"description\": + \"The snippet object contains basic details about the comment thread and also + the top level comment.\"\n }\n },\n \"id\": \"CommentThread\",\n + \ \"description\": \"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.\",\n \"type\": \"object\"\n },\n + \ \"VideoLiveStreamingDetails\": {\n \"description\": \"Details about + the live streaming metadata.\",\n \"type\": \"object\",\n \"id\": + \"VideoLiveStreamingDetails\",\n \"properties\": {\n \"scheduledStartTime\": + {\n \"type\": \"string\",\n \"description\": \"The time + that the broadcast is scheduled to begin.\",\n \"format\": \"date-time\"\n + \ },\n \"scheduledEndTime\": {\n \"description\": \"The + time that the broadcast is scheduled to end. If the value is empty or the + property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n + \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n + \ \"actualEndTime\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The time that the broadcast actually + ended. This value will not be available until the broadcast is over.\"\n },\n + \ \"concurrentViewers\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"The number of viewers currently + watching the broadcast. The property and its value will be present if the + broadcast has current viewers and the broadcast owner has not hidden the viewcount + for the video. Note that YouTube stops tracking the number of concurrent viewers + for a broadcast when the broadcast ends. So, this property would not identify + the number of viewers watching an archived video of a live broadcast that + already ended.\"\n },\n \"actualStartTime\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The time that the broadcast actually started. This value will not be available + until the broadcast begins.\"\n },\n \"activeLiveChatId\": {\n + \ \"description\": \"The ID of the currently active live chat attached + to this video. This field is filled only if the video is a currently live + broadcast that has live chat. Once the broadcast transitions to complete this + field will be removed and the live chat closed down. For persistent broadcasts + that live chat id will no longer be tied to this video but rather to the new + video being displayed at the persistent page.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"ContentRating\": {\n \"description\": + \"Ratings schemes. The country-specific ratings are mostly for movies and + shows. LINT.IfChange\",\n \"properties\": {\n \"eirinRating\": + {\n \"description\": \"The video's Eirin (\u6620\u502B) rating. Eirin + is the Japanese rating system.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n + \ \"R18+\",\n \"\"\n ],\n \"enum\": + [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n + \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n + \ ]\n },\n \"ifcoRating\": {\n \"description\": + \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See + the IFCO website for more information.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n + \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n + \ ],\n \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n + \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n + \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n + \ \"ifco18\",\n \"ifcoUnrated\"\n ]\n },\n + \ \"eefilmRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"Pere\",\n \"L\",\n \"MS-6\",\n \"K-6\",\n + \ \"MS-12\",\n \"K-12\",\n \"K-14\",\n \"K-16\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + in Estonia.\",\n \"enum\": [\n \"eefilmUnspecified\",\n + \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n + \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n + \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"djctqRating\": + {\n \"description\": \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, + Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enum\": + [\n \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n + \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n + \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n + \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n + \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n + \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n + \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n + \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n + \ \"14\",\n \"16\",\n \"18\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"mekuRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"description\": \"The video's rating from Finland's Kansallinen + Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n \"enum\": + [\n \"mekuUnspecified\",\n \"mekuS\",\n \"meku7\",\n + \ \"meku12\",\n \"meku16\",\n \"meku18\",\n + \ \"mekuUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"catvRating\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"enumDescriptions\": + [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n + \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"catvUnspecified\",\n + \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n + \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n + \ \"catvUnrated\",\n \"catvE\"\n ]\n },\n + \ \"djctqRatingReasons\": {\n \"items\": {\n \"enumDescriptions\": + [\n \"\",\n \"Brazil rating content descriptors. + See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia + extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual + content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n + \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas + (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas + Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate + language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo + Impactante (Impacting content)\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"djctqRatingReasonUnspecified\",\n + \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n + \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n + \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n + \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n + \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n + \ ]\n },\n \"type\": \"array\",\n \"description\": + \"Reasons that explain why the video received its DJCQT (Brazil) rating.\"\n + \ },\n \"kfcbRating\": {\n \"enum\": [\n \"kfcbUnspecified\",\n + \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n + \ \"kfcbR\",\n \"kfcbUnrated\"\n ],\n \"description\": + \"The video's rating from the Kenya Film Classification Board.\",\n \"enumDescriptions\": + [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"nkclvRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"U\",\n \"7+\",\n \"12+\",\n + \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n + \ \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n + \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n + \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The video's + rating from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\"\n + \ },\n \"egfilmRating\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's rating in Egypt.\",\n \"enumDescriptions\": + [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n + \ \"\"\n ],\n \"enum\": [\n \"egfilmUnspecified\",\n + \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n + \ \"egfilmUnrated\"\n ]\n },\n \"nmcRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n + \ \"18+\",\n \"18TC\",\n \"\"\n ],\n + \ \"description\": \"The National Media Council ratings system for + United Arab Emirates.\",\n \"type\": \"string\",\n \"enum\": + [\n \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n + \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n + \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n + \ ]\n },\n \"mccaaRating\": {\n \"enum\": [\n + \ \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n + \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n + \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n + \ \"mccaaUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from Malta's Film Age-Classification + Board.\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG\",\n \"12A\",\n \"12\",\n \"14 + - this rating was removed from the new classification structure introduced + in 2013.\",\n \"15\",\n \"16 - this rating was removed + from the new classification structure introduced in 2013.\",\n \"18\",\n + \ \"\"\n ]\n },\n \"mpaaRating\": {\n \"enum\": + [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n + \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n + \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"description\": + \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"lsfRating\": + {\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n + \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n + \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n + \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n + \ \"21\",\n \"\"\n ],\n \"description\": + \"The video's rating from Indonesia's Lembaga Sensor Film.\"\n },\n + \ \"cscfRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n + \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n + \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n + \ ],\n \"description\": \"The video's rating from Luxembourg's + Commission de surveillance de la classification des films (CSCF).\",\n \"enumDescriptions\": + [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n + \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ]\n },\n \"nfvcbRating\": {\n \"description\": + \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n + \ \"18\",\n \"RE\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"nfvcbUnspecified\",\n + \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n + \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n + \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ]\n },\n + \ \"fpbRating\": {\n \"enum\": [\n \"fpbUnspecified\",\n + \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n + \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n + \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n + \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n + \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n + \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from South Africa's Film and Publication Board.\"\n },\n + \ \"rcnofRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n + \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n + \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"description\": + \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee + of the National Office of Film.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"cicfRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from the Commission + de Contr\xF4le des Films (Belgium).\",\n \"enum\": [\n \"cicfUnspecified\",\n + \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n + \ \"cicfUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"mpaatRating\": {\n \"enum\": [\n \"mpaatUnspecified\",\n + \ \"mpaatGb\",\n \"mpaatRb\"\n ],\n \"description\": + \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"GB\",\n \"RB\"\n ]\n },\n \"tvpgRating\": + {\n \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n + \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n + \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n + \ \"tvpgUnrated\"\n ],\n \"description\": \"The + video's TV Parental Guidelines (TVPG) rating.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n + \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n + \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n + \ ]\n },\n \"cnaRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n + \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n + \ \"cnaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"18+\",\n \"\"\n ],\n + \ \"description\": \"The video's rating from Romania's CONSILIUL NATIONAL + AL AUDIOVIZUALULUI (CNA).\"\n },\n \"fpbRatingReasons\": {\n + \ \"items\": {\n \"type\": \"string\",\n \"enum\": + [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n + \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n + \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n + \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n + \ \"fpbImitativeActsTechniques\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"South Africa rating content descriptors.\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"description\": + \"Reasons that explain why the video received its FPB (South Africa) rating.\",\n + \ \"type\": \"array\"\n },\n \"chfilmRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The video's + rating in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n + \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n + \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n + \ ]\n },\n \"russiaRating\": {\n \"enum\": + [\n \"russiaUnspecified\",\n \"russia0\",\n \"russia6\",\n + \ \"russia12\",\n \"russia16\",\n \"russia18\",\n + \ \"russiaUnrated\"\n ],\n \"description\": \"The + video's National Film Registry of the Russian Federation (MKRF - Russia) rating.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"0+\",\n \"6+\",\n \"12+\",\n \"16+\",\n + \ \"18+\",\n \"\"\n ]\n },\n \"bbfcRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"bbfcUnspecified\",\n + \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n + \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n + \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n + \ \"\"\n ],\n \"description\": \"The video's British + Board of Film Classification (BBFC) rating.\"\n },\n \"ecbmctRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n + \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n + \ ],\n \"description\": \"Rating system in Turkey - Evaluation + and Classification Board of the Ministry of Culture and Tourism\",\n \"enum\": + [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n + \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n + \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n + \ \"ecbmctUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"grfilmRating\": {\n \"description\": \"The + video's rating in Greece.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n + \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n + \ ],\n \"enum\": [\n \"grfilmUnspecified\",\n + \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n + \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n + \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n + \ \"type\": \"string\"\n },\n \"csaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"Interdiction\",\n + \ \"\"\n ],\n \"enum\": [\n \"csaUnspecified\",\n + \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n + \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n + \ ],\n \"description\": \"The video's rating from France's + Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\",\n + \ \"type\": \"string\"\n },\n \"medietilsynetRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n + \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n + \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n + \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n + \ ],\n \"description\": \"The video's rating from Medietilsynet, + the Norwegian Media Authority.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n + \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n + \ \"\"\n ]\n },\n \"mibacRating\": {\n \"enum\": + [\n \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n + \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n + \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali + e del Turismo (Italy).\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"nbcRating\": {\n \"description\": + \"The video's rating from the Maldives National Bureau of Classification.\",\n + \ \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n + \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n + \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n + \ \"nbcUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n + \ \"18+R\",\n \"PU\",\n \"\"\n ]\n + \ },\n \"rtcRating\": {\n \"enum\": [\n \"rtcUnspecified\",\n + \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n + \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n + \ ],\n \"description\": \"The video's General Directorate + of Radio, Television and Cinematography (Mexico) rating.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n + \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n + \ \"D\",\n \"\"\n ]\n },\n \"smsaRating\": + {\n \"description\": \"The video's rating from Statens medier\xE5d + (Sweden's National Media Council).\",\n \"enumDescriptions\": [\n + \ \"\",\n \"All ages\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n + \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n + \ \"smsaUnrated\"\n ]\n },\n \"anatelRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"anatelUnspecified\",\n + \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n + \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n + \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"description\": + \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for + Chilean television.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n + \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n + \ ]\n },\n \"ilfilmRating\": {\n \"enum\": + [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n + \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n + \ \"ilfilmUnrated\"\n ],\n \"description\": \"The + video's rating in Israel.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"fmocRating\": {\n \"enum\": [\n \"fmocUnspecified\",\n + \ \"fmocU\",\n \"fmoc10\",\n \"fmoc12\",\n + \ \"fmoc16\",\n \"fmoc18\",\n \"fmocE\",\n + \ \"fmocUnrated\"\n ],\n \"description\": \"This + property has been deprecated. Use the contentDetails.contentRating.cncRating + instead.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"\"\n + \ ]\n },\n \"nbcplRating\": {\n \"description\": + \"The video's rating in Poland.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n + \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n + \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ]\n + \ },\n \"moctwRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"G\",\n \"P\",\n \"PG\",\n + \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n + \ ],\n \"description\": \"The video's rating from Taiwan's + Ministry of Culture (\u6587\u5316\u90E8).\",\n \"enum\": [\n \"moctwUnspecified\",\n + \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n + \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n + \ \"moctwR15\"\n ],\n \"type\": \"string\"\n },\n + \ \"incaaRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 + (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para + mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 + a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n + condicionada)\",\n \"\"\n ],\n \"description\": + \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) + rating.\",\n \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n + \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n + \ \"incaaC\",\n \"incaaUnrated\"\n ]\n },\n + \ \"skfilmRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating in Slovakia.\",\n \"enum\": [\n \"skfilmUnspecified\",\n + \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n + \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n + \ \"P8\",\n \"\"\n ]\n },\n \"cccRating\": + {\n \"description\": \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica + (Chile) rating.\",\n \"type\": \"string\",\n \"enum\": [\n + \ \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n + \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n + \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Todo espectador\",\n \"6+ - + Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n + \ \"18+ - contenido excesivamente violento\",\n \"18+ + - contenido pornogr\xE1fico\",\n \"\"\n ]\n },\n + \ \"kijkwijzerRating\": {\n \"description\": \"The video's + NICAM/Kijkwijzer rating from the Nederlands Instituut voor de Classificatie + van Audiovisuele Media (Netherlands).\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n + \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n + \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n + \ \"kijkwijzerUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n + \ \"12\",\n \"16\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"cbfcRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"U\",\n \"U/A\",\n \"U/A 7+\",\n \"U/A + 13+\",\n \"U/A 16+\",\n \"A\",\n \"S\",\n + \ \"\"\n ],\n \"enum\": [\n \"cbfcUnspecified\",\n + \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n + \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n + \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"description\": + \"The video's Central Board of Film Certification (CBFC - India) rating.\"\n + \ },\n \"smaisRating\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's rating in Iceland.\",\n \"enumDescriptions\": + [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n + \ \"14\",\n \"16\",\n \"18\",\n \"\"\n + \ ],\n \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n + \ \"smais7\",\n \"smais12\",\n \"smais14\",\n + \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n + \ ]\n },\n \"czfilmRating\": {\n \"enum\": + [\n \"czfilmUnspecified\",\n \"czfilmU\",\n \"czfilm12\",\n + \ \"czfilm14\",\n \"czfilm18\",\n \"czfilmUnrated\"\n + \ ],\n \"description\": \"The video's rating in the Czech + Republic.\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"12\",\n \"14\",\n \"18\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"kmrbRating\": + {\n \"enum\": [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n + \ \"kmrb12plus\",\n \"kmrb15plus\",\n \"kmrbTeenr\",\n + \ \"kmrbR\",\n \"kmrbUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's Korea Media Rating Board + (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. The KMRB rates + videos in South Korea.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 \uC774\uC0C1 + \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n + \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n + \ \"\"\n ]\n },\n \"pefilmRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n + \ \"18\",\n \"\"\n ],\n \"enum\": [\n + \ \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n + \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n + \ ],\n \"description\": \"The video's rating in Peru.\",\n + \ \"type\": \"string\"\n },\n \"resorteviolenciaRating\": + {\n \"description\": \"The video's rating in Venezuela.\",\n \"enum\": + [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n + \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n + \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"acbRating\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"E\",\n \"Programs that have been given a P classification + by the Australian Communications and Media Authority. These programs are intended + for preschool children.\",\n \"Programs that have been given a + C classification by the Australian Communications and Media Authority. These + programs are intended for children (other than preschool children) who are + younger than 14 years of age.\",\n \"G\",\n \"PG\",\n + \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n + \ ],\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n + \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n + \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n + \ \"acbUnrated\"\n ]\n },\n \"catvfrRating\": + {\n \"description\": \"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.\",\n + \ \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n + \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n + \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n + \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n + \ ]\n },\n \"agcomRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n + \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n + \ ],\n \"description\": \"The video's rating from Italy's + Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n + \ \"\"\n ]\n },\n \"icaaRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n + \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n + \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n + \ \"icaaUnrated\"\n ],\n \"description\": \"The + video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA + - Spain) rating.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"APTA\",\n \"7\",\n \"12\",\n \"13\",\n + \ \"16\",\n \"18\",\n \"X\",\n \"\"\n + \ ]\n },\n \"bfvcRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n + \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n + \ \"\"\n ],\n \"enum\": [\n \"bfvcUnspecified\",\n + \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n + \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n + \ \"bfvcB\",\n \"bfvcUnrated\"\n ],\n \"description\": + \"The video's rating from Thailand's Board of Film and Video Censors.\",\n + \ \"type\": \"string\"\n },\n \"fcbmRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n + \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n + \ \"18PL\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n + \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n + \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n + \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ],\n \"description\": + \"The video's rating from Malaysia's Film Censorship Board.\"\n },\n + \ \"mocRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"E\",\n \"T\",\n \"7\",\n \"12\",\n + \ \"15\",\n \"18\",\n \"X\",\n \"Banned\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"enum\": + [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n + \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n + \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n + \ ]\n },\n \"fskRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK + 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n + \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle + der Filmwirtschaft (FSK - Germany) rating.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n + \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n + \ \"fskUnrated\"\n ]\n },\n \"cncRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"cncUnspecified\",\n + \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n + \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n + \ \"cncUnrated\"\n ],\n \"description\": \"Rating + system in France - Commission de classification cinematographique\",\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n + \ \"\"\n ]\n },\n \"mdaRating\": {\n \"description\": + \"The video's rating from Singapore's Media Development Authority (MDA) and, + specifically, it's Board of Film Censors (BFC).\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n + \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mdaUnspecified\",\n + \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n + \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n + \ \"mdaUnrated\"\n ]\n },\n \"mtrcbRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"mtrcbUnspecified\",\n + \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n + \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n + \ \"mtrcbUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n + \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from the Movie + and Television Review and Classification Board (Philippines).\"\n },\n + \ \"chvrsRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"14A\",\n \"18A\",\n + \ \"R\",\n \"E\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's Canadian Home Video + Rating System (CHVRS) rating.\",\n \"enum\": [\n \"chvrsUnspecified\",\n + \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n + \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n + \ \"chvrsUnrated\"\n ]\n },\n \"nfrcRating\": + {\n \"description\": \"The video's rating from the Bulgarian National + Film Center.\",\n \"enum\": [\n \"nfrcUnspecified\",\n + \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n + \ \"nfrcX\",\n \"nfrcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n + \ \"D\",\n \"X\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"mccypRating\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from the Danish Film Institute's + (Det Danske Filminstitut) Media Council for Children and Young People.\",\n + \ \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n + \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n + \ \"mccypUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ]\n },\n \"bmukkRating\": + {\n \"description\": \"The video's rating from the Austrian Board + of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst und Kultur).\",\n + \ \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n + \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n + \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n + \ \"bmukkUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n + \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n + \ \"14+\",\n \"16+\",\n \"\"\n ]\n + \ },\n \"cceRating\": {\n \"description\": \"The video's + rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"4\",\n \"6\",\n \"12\",\n \"16\",\n + \ \"18\",\n \"\",\n \"14\"\n ],\n + \ \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n + \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n + \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n + \ ]\n },\n \"rteRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n + \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"GA\",\n + \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from Ireland's + Raidi\xF3 Teilif\xEDs \xC9ireann.\"\n },\n \"mcstRating\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"P\",\n + \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n + \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n + \ \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n + \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n + \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n + \ \"mcstUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating system for Vietnam - MCST\"\n + \ },\n \"oflcRating\": {\n \"enum\": [\n \"oflcUnspecified\",\n + \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n + \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n + \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n + \ \"oflcRp16\",\n \"oflcRp18\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n + \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n + \ \"RP16\",\n \"RP18\"\n ],\n \"description\": + \"The video's Office of Film and Literature Classification (OFLC - New Zealand) + rating.\"\n },\n \"menaMpaaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"R\",\n \"To keep the same enum values as MPAA's items + have, skip NC_17.\"\n ],\n \"type\": \"string\",\n \"description\": + \"The rating system for MENA countries, a clone of MPAA. It is needed to prevent + titles go live w/o additional QC check, since some of them can be inappropriate + for the countries at all. See b/33408548 for more details.\",\n \"enum\": + [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n + \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n + \ ]\n },\n \"fcoRating\": {\n \"enum\": [\n + \ \"fcoUnspecified\",\n \"fcoI\",\n \"fcoIia\",\n + \ \"fcoIib\",\n \"fcoIi\",\n \"fcoIii\",\n + \ \"fcoUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"I\",\n + \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from Hong Kong's Office for Film, Newspaper and Article Administration.\"\n + \ },\n \"ytRating\": {\n \"description\": \"A rating + that YouTube uses to identify age-restricted content.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n + \ ]\n }\n },\n \"type\": \"object\",\n \"id\": + \"ContentRating\"\n },\n \"ChannelListResponse\": {\n \"type\": + \"object\",\n \"id\": \"ChannelListResponse\",\n \"properties\": + {\n \"items\": {\n \"items\": {\n \"$ref\": \"Channel\"\n + \ },\n \"type\": \"array\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"nextPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the next page + in the result set.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#channelListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#channelListResponse\\\".\",\n \"type\": + \"string\"\n }\n }\n },\n \"LiveChatSuperStickerDetails\": + {\n \"id\": \"LiveChatSuperStickerDetails\",\n \"properties\": {\n + \ \"tier\": {\n \"type\": \"integer\",\n \"description\": + \"The tier in which the amount belongs. Lower amounts belong to lower tiers. + The lowest tier is 1.\",\n \"format\": \"uint32\"\n },\n \"superStickerMetadata\": + {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": + \"Information about the Super Sticker.\"\n },\n \"amountMicros\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n + \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n + \ \"description\": \"A rendered string that displays the fund amount + and currency to the user.\"\n },\n \"currency\": {\n \"type\": + \"string\",\n \"description\": \"The currency in which the purchase + was made.\"\n }\n },\n \"type\": \"object\"\n },\n \"MemberListResponse\": + {\n \"type\": \"object\",\n \"id\": \"MemberListResponse\",\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"description\": \"A list of members that match the request criteria.\",\n + \ \"items\": {\n \"$ref\": \"Member\"\n },\n \"type\": + \"array\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#memberListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n }\n }\n },\n \"MembershipsDetails\": + {\n \"id\": \"MembershipsDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"highestAccessibleLevel\": {\n \"type\": \"string\",\n + \ \"description\": \"Id of the highest level that the user has access + to at the moment.\"\n },\n \"accessibleLevels\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"Ids of all levels that the user has access to. This includes the currently + active level and all other levels that are included because of a higher purchase.\",\n + \ \"type\": \"array\"\n },\n \"membershipsDurationAtLevels\": + {\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n + \ },\n \"description\": \"Data about memberships duration + on particular pricing levels.\",\n \"type\": \"array\"\n },\n + \ \"membershipsDuration\": {\n \"description\": \"Data about + memberships duration without taking into consideration pricing levels.\",\n + \ \"$ref\": \"MembershipsDuration\"\n },\n \"highestAccessibleLevelDisplayName\": + {\n \"description\": \"Display name for the highest level that the + user has access to at the moment.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"LiveChatModerator\": {\n \"id\": \"LiveChatModerator\",\n + \ \"description\": \"A *liveChatModerator* resource represents a moderator + for a YouTube live chat. A chat moderator has the ability to ban/unban users + from a chat, remove message, etc.\",\n \"type\": \"object\",\n \"properties\": + {\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube assigns to uniquely identify the moderator.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"LiveChatModeratorSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the moderator.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": + {\n \"default\": \"youtube#liveChatModerator\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n }\n + \ }\n },\n \"LiveStreamStatus\": {\n \"description\": \"Brief + description of the live stream status.\",\n \"id\": \"LiveStreamStatus\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"healthStatus\": + {\n \"description\": \"The health status of the stream.\",\n \"$ref\": + \"LiveStreamHealthStatus\"\n },\n \"streamStatus\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"created\",\n + \ \"ready\",\n \"active\",\n \"inactive\",\n + \ \"error\"\n ],\n \"type\": \"string\"\n }\n + \ }\n },\n \"PlaylistItem\": {\n \"description\": \"A *playlistItem* + resource identifies another resource, such as a video, that is included in + a playlist. In addition, the playlistItem resource contains details about + the included resource that pertain specifically to how that resource is used + in that playlist. YouTube uses playlists to identify special collections of + videos for a channel, such as: - uploaded videos - favorite videos - positively + rated (liked) videos - watch history - watch later To be more specific, these + lists are associated with a channel, which is a collection of a person, group, + or company's videos, playlists, and other YouTube information. You can retrieve + the playlist IDs for each of these lists from the channel resource for a given + channel. You can then use the playlistItems.list method to retrieve any of + those lists. You can also add or remove items from those lists by calling + the playlistItems.insert and playlistItems.delete methods. For example, if + a user gives a positive rating to a video, you would insert that video into + the liked videos playlist for that user's channel.\",\n \"properties\": + {\n \"contentDetails\": {\n \"description\": \"The contentDetails + object is included in the resource if the included item is a YouTube video. + The object contains additional information about the video.\",\n \"$ref\": + \"PlaylistItemContentDetails\"\n },\n \"status\": {\n \"description\": + \"The status object contains information about the playlist item's privacy + status.\",\n \"$ref\": \"PlaylistItemStatus\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#playlistItem\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlistItem\\\".\"\n },\n \"snippet\": + {\n \"$ref\": \"PlaylistItemSnippet\",\n \"description\": + \"The snippet object contains basic details about the playlist item, such + as its title and position in the playlist.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the playlist item.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"PlaylistItem\"\n },\n \"SearchListResponse\": {\n \"properties\": + {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"items\": {\n \"description\": \"Pagination + information for token pagination.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"SearchResult\"\n }\n },\n \"regionCode\": + {\n \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"prevPageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#searchListResponse\"\n + \ },\n \"pageInfo\": {\n \"description\": \"General + pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n }\n + \ },\n \"id\": \"SearchListResponse\",\n \"type\": \"object\"\n + \ },\n \"LiveChatNewSponsorDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"isUpgrade\": {\n \"description\": + \"If the viewer just had upgraded from a lower level. For viewers that were + not members at the time of purchase, this field is false.\",\n \"type\": + \"boolean\"\n },\n \"memberLevelName\": {\n \"type\": + \"string\",\n \"description\": \"The name of the Level that the viewer + just had joined. The Level names are defined by the YouTube channel offering + the Membership. In some situations this field isn't filled.\"\n }\n + \ },\n \"id\": \"LiveChatNewSponsorDetails\"\n },\n \"AccessPolicy\": + {\n \"id\": \"AccessPolicy\",\n \"description\": \"Rights management + policy for YouTube resources.\",\n \"type\": \"object\",\n \"properties\": + {\n \"allowed\": {\n \"type\": \"boolean\",\n \"description\": + \"The value of allowed indicates whether the access to the policy is allowed + or denied by default.\"\n },\n \"exception\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"A list of region codes that identify countries + where the default policy do not apply.\"\n }\n }\n },\n \"PageInfo\": + {\n \"id\": \"PageInfo\",\n \"description\": \"Paging details for + lists of resources, including total number of items available and number of + resources returned in a single page.\",\n \"type\": \"object\",\n \"properties\": + {\n \"resultsPerPage\": {\n \"type\": \"integer\",\n \"description\": + \"The number of results included in the API response.\",\n \"format\": + \"int32\"\n },\n \"totalResults\": {\n \"description\": + \"The total number of results in the result set.\",\n \"type\": \"integer\",\n + \ \"format\": \"int32\"\n }\n }\n },\n \"MembershipsLevel\": + {\n \"type\": \"object\",\n \"id\": \"MembershipsLevel\",\n \"description\": + \"A *membershipsLevel* resource represents an offer made by YouTube creators + for their fans. Users can become members of the channel by joining one of + the available levels. They will provide recurring monetary support and receives + special benefits.\",\n \"properties\": {\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"default\": \"youtube#membershipsLevel\"\n },\n \"snippet\": + {\n \"$ref\": \"MembershipsLevelSnippet\",\n \"description\": + \"The snippet object contains basic details about the level.\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube assigns to uniquely identify the memberships level.\"\n + \ }\n }\n },\n \"PlaylistSnippet\": {\n \"id\": \"PlaylistSnippet\",\n + \ \"description\": \"Basic details about a playlist, including title, + description and thumbnails.\",\n \"type\": \"object\",\n \"properties\": + {\n \"tags\": {\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"description\": \"Keyword tags associated with the + playlist.\",\n \"type\": \"array\"\n },\n \"title\": + {\n \"description\": \"The playlist's title.\",\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n + \ \"youtube.playlists.update\"\n ]\n }\n },\n + \ \"localized\": {\n \"$ref\": \"PlaylistLocalization\",\n + \ \"description\": \"Localized title and description, read-only.\"\n + \ },\n \"thumbnailVideoId\": {\n \"type\": \"string\",\n + \ \"description\": \"Note: if the playlist has a custom thumbnail, + this field will not be populated. The video id selected by the user that will + be used as the thumbnail of this playlist. This field defaults to the first + publicly viewable video in the playlist, if: 1. The user has never selected + a video to be the thumbnail of the playlist. 2. The user selects a video to + be the thumbnail, and then removes that video from the playlist. 3. The user + selects a non-owned video to be the thumbnail, but that video becomes private, + or gets deleted.\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time that the playlist was created.\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The language + of the playlist's default title and description.\"\n },\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"The channel + title of the channel that the video belongs to.\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A + map of thumbnail images associated with the playlist. 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.\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel that published the playlist.\"\n + \ },\n \"description\": {\n \"description\": \"The playlist's + description.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"VideoContentDetailsRegionRestriction\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"blocked\": {\n \"description\": + \"A list of region codes that identify countries where the video is blocked. + If this property is present and a country is not listed in its value, then + the video is viewable in that country. If this property is present and contains + an empty list, the video is viewable in all countries.\",\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n + \ },\n \"allowed\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of region codes that identify countries where the video is viewable. + If this property is present and a country is not listed in its value, then + the video is blocked from appearing in that country. If this property is present + and contains an empty list, the video is blocked in all countries.\"\n }\n + \ },\n \"description\": \"DEPRECATED Region restriction of the video.\",\n + \ \"id\": \"VideoContentDetailsRegionRestriction\"\n },\n \"ActivityContentDetailsLike\": + {\n \"id\": \"ActivityContentDetailsLike\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the rated resource.\",\n + \ \"$ref\": \"ResourceId\"\n }\n },\n \"description\": + \"Information about a resource that received a positive (like) rating.\"\n + \ },\n \"LiveBroadcastStatistics\": {\n \"properties\": {\n \"totalChatCount\": + {\n \"description\": \"The total number of live chat messages currently + on the broadcast. The property and its value will be present if the broadcast + is public, has the live chat feature enabled, and has at least one message. + Note that this field will not be filled after the broadcast ends. So this + property would not identify the number of chat messages for an archived video + of a completed live broadcast.\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n },\n \"concurrentViewers\": {\n \"format\": + \"uint64\",\n \"description\": \"The number of viewers currently + watching the broadcast. The property and its value will be present if the + broadcast has current viewers and the broadcast owner has not hidden the viewcount + for the video. Note that YouTube stops tracking the number of concurrent viewers + for a broadcast when the broadcast ends. So, this property would not identify + the number of viewers watching an archived video of a live broadcast that + already ended.\",\n \"type\": \"string\"\n }\n },\n \"description\": + \"Statistics about the live broadcast. These represent a snapshot of the values + at the time of the request. Statistics are only returned for live broadcasts.\",\n + \ \"id\": \"LiveBroadcastStatistics\",\n \"type\": \"object\"\n },\n + \ \"CommentThreadReplies\": {\n \"description\": \"Comments written + in (direct or indirect) reply to the top level comment.\",\n \"id\": + \"CommentThreadReplies\",\n \"properties\": {\n \"comments\": + {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n + \ \"type\": \"array\",\n \"description\": \"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.\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatSuperChatDetails\": + {\n \"id\": \"LiveChatSuperChatDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"tier\": {\n \"description\": \"The + tier in which the amount belongs. Lower amounts belong to lower tiers. The + lowest tier is 1.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n },\n \"currency\": {\n \"description\": + \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n + \ },\n \"userComment\": {\n \"type\": \"string\",\n + \ \"description\": \"The comment added by the user to this Super Chat + event.\"\n },\n \"amountDisplayString\": {\n \"type\": + \"string\",\n \"description\": \"A rendered string that displays + the fund amount and currency to the user.\"\n },\n \"amountMicros\": + {\n \"description\": \"The amount purchased by the user, in micros + (1,750,000 micros = 1.75).\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n }\n }\n },\n \"LiveChatModeratorListResponse\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorListResponse\",\n + \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n + \ \"description\": \"General pagination information.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n + \ \"default\": \"youtube#liveChatModeratorListResponse\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"description\": \"A + list of moderators that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"LiveChatModerator\"\n },\n \"type\": + \"array\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n }\n + \ }\n },\n \"ThirdPartyLinkSnippet\": {\n \"id\": \"ThirdPartyLinkSnippet\",\n + \ \"properties\": {\n \"channelToStoreLink\": {\n \"$ref\": + \"ChannelToStoreLinkDetails\",\n \"description\": \"Information specific + to a link between a channel and a store on a merchandising platform.\"\n },\n + \ \"type\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel with + a store on a merchandising platform in order to enable retail commerce capabilities + for that channel on YouTube.\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"description\": \"Type of the link named after the + entities that are being linked.\"\n }\n },\n \"type\": \"object\",\n + \ \"description\": \"Basic information about a third party account link, + including its type and type-specific information.\"\n },\n \"SubscriptionSubscriberSnippet\": + {\n \"id\": \"SubscriptionSubscriberSnippet\",\n \"type\": \"object\",\n + \ \"description\": \"Basic details about a subscription's subscriber including + title, description, channel ID and thumbnails.\",\n \"properties\": {\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The channel ID of the subscriber.\"\n },\n \"thumbnails\": + {\n \"description\": \"Thumbnails for this subscriber.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"title\": {\n \"description\": + \"The title of the subscriber.\",\n \"type\": \"string\"\n },\n + \ \"description\": {\n \"type\": \"string\",\n \"description\": + \"The description of the subscriber.\"\n }\n }\n },\n \"SubscriptionListResponse\": + {\n \"id\": \"SubscriptionListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"Subscription\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of subscriptions that match the request criteria.\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"VideoAbuseReportReasonSnippet\": {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n + \ \"type\": \"object\",\n \"description\": \"Basic details about + a video category, such as its localized title.\",\n \"properties\": {\n + \ \"secondaryReasons\": {\n \"items\": {\n \"$ref\": + \"VideoAbuseReportSecondaryReason\"\n },\n \"type\": \"array\",\n + \ \"description\": \"The secondary reasons associated with this reason, + if any are available. (There might be 0 or more.)\"\n },\n \"label\": + {\n \"type\": \"string\",\n \"description\": \"The localized + label belonging to this abuse report reason.\"\n }\n }\n },\n + \ \"ChannelConversionPing\": {\n \"id\": \"ChannelConversionPing\",\n + \ \"type\": \"object\",\n \"description\": \"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.\",\n \"properties\": + {\n \"context\": {\n \"description\": \"Defines the context + of the ping.\",\n \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n + \ \"cview\"\n ],\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"conversionUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n }\n }\n },\n \"LiveBroadcastListResponse\": + {\n \"type\": \"object\",\n \"id\": \"LiveBroadcastListResponse\",\n + \ \"properties\": {\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n },\n \"visitorId\": {\n \"description\": \"The + visitorId identifies the visitor.\",\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"description\": \"A list of broadcasts that + match the request criteria.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#liveBroadcastListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ }\n }\n },\n \"CaptionListResponse\": {\n \"type\": + \"object\",\n \"properties\": {\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Caption\"\n },\n + \ \"description\": \"A list of captions that match the request criteria.\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#captionListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#captionListResponse\\\".\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"CaptionListResponse\"\n },\n + \ \"ActivitySnippet\": {\n \"properties\": {\n \"publishedAt\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time that the video was uploaded.\"\n + \ },\n \"groupId\": {\n \"description\": \"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.\",\n + \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The description of the resource + primarily associated with the activity. @mutable youtube.activities.insert\"\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel associated with + the activity.\"\n },\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"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.\"\n + \ },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel title for the channel responsible for + this activity\"\n },\n \"type\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The type of activity that the resource describes.\",\n \"enum\": + [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n + \ \"favorite\",\n \"comment\",\n \"subscription\",\n + \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n + \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n + \ ]\n },\n \"title\": {\n \"description\": + \"The title of the resource primarily associated with the activity.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"ActivitySnippet\",\n \"type\": + \"object\",\n \"description\": \"Basic details about an activity, including + title, description, thumbnails, activity type and group. Next ID: 12\"\n },\n + \ \"CommentSnippetAuthorChannelId\": {\n \"type\": \"object\",\n \"description\": + \"The id of the author's YouTube channel, if any.\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n + \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n + \ }\n }\n },\n \"Video\": {\n \"properties\": {\n \"suggestions\": + {\n \"$ref\": \"VideoSuggestions\",\n \"description\": \"The + suggestions object encapsulates suggestions that identify opportunities to + improve the video quality or the metadata for the uploaded video. This data + can only be retrieved by the video owner.\"\n },\n \"topicDetails\": + {\n \"$ref\": \"VideoTopicDetails\",\n \"description\": + \"The topicDetails object encapsulates information about Freebase topics associated + with the video.\"\n },\n \"processingDetails\": {\n \"$ref\": + \"VideoProcessingDetails\",\n \"description\": \"The processingDetails + object encapsulates information about YouTube's progress in processing the + uploaded video file. The properties in the object identify the current processing + status and an estimate of the time remaining until YouTube finishes processing + the video. This part also indicates whether different types of data or content, + such as file details or thumbnail images, are available for the video. The + processingProgress object is designed to be polled so that the video uploaded + can track the progress that YouTube has made in processing the uploaded video + file. This data can only be retrieved by the video owner.\"\n },\n + \ \"projectDetails\": {\n \"$ref\": \"VideoProjectDetails\",\n + \ \"description\": \"The projectDetails object contains information + about the project specific video metadata. b/157517979: This part was never + populated after it was added. However, it sees non-zero traffic because there + is generated client code in the wild that refers to it [1]. We keep this field + and do NOT remove it because otherwise V3 would return an error when this + part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n + \ },\n \"liveStreamingDetails\": {\n \"description\": + \"The liveStreamingDetails object contains metadata about a live video broadcast. + The object will only be present in a video resource if the video is an upcoming, + live, or completed live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n + \ },\n \"fileDetails\": {\n \"description\": \"The fileDetails + object encapsulates information about the video file that was uploaded to + YouTube, including the file's resolution, duration, audio and video codecs, + stream bitrates, and more. This data can only be retrieved by the video owner.\",\n + \ \"$ref\": \"VideoFileDetails\"\n },\n \"recordingDetails\": + {\n \"$ref\": \"VideoRecordingDetails\",\n \"description\": + \"The recordingDetails object encapsulates information about the location, + date and address where the video was recorded.\"\n },\n \"contentDetails\": + {\n \"description\": \"The contentDetails object contains information + about the video content, including the length of the video and its aspect + ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"status\": + {\n \"description\": \"The status object contains information about + the video's uploading, processing, and privacy statuses.\",\n \"$ref\": + \"VideoStatus\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.videos.update\"\n + \ ]\n },\n \"type\": \"string\"\n },\n + \ \"player\": {\n \"description\": \"The player object contains + information that you would use to play the video in an embedded player.\",\n + \ \"$ref\": \"VideoPlayer\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#video\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\"\n + \ },\n \"monetizationDetails\": {\n \"$ref\": \"VideoMonetizationDetails\",\n + \ \"description\": \"The monetizationDetails object encapsulates information + about the monetization status of the video.\"\n },\n \"localizations\": + {\n \"description\": \"The localizations object contains localized + versions of the basic details about the video, such as its title and description.\",\n + \ \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n + \ },\n \"type\": \"object\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"ageGating\": {\n \"description\": + \"Age restriction details related to a video. This data can only be retrieved + by the video owner.\",\n \"$ref\": \"VideoAgeGating\"\n },\n + \ \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n \"description\": + \"The snippet object contains basic details about the video, such as its title, + description, and category.\"\n },\n \"statistics\": {\n \"$ref\": + \"VideoStatistics\",\n \"description\": \"The statistics object contains + statistics about the video.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"Video\",\n \"description\": \"A *video* resource represents + a YouTube video.\"\n },\n \"VideoCategory\": {\n \"id\": \"VideoCategory\",\n + \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n + \ \"default\": \"youtube#videoCategory\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the video category, including its title.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"description\": \"The + ID that YouTube uses to uniquely identify the video category.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"A *videoCategory* resource identifies a category that has been or could + be associated with uploaded videos.\"\n },\n \"SearchResult\": {\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about a search result, such as + its title or description. For example, if the search result is a video, then + the title will be the video's title and the description will be the video's + description.\",\n \"$ref\": \"SearchResultSnippet\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#searchResult\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": + \"The id object contains information that can be used to uniquely identify + the resource that matches the search request.\",\n \"$ref\": \"ResourceId\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"A + search result contains information about a YouTube video, channel, or playlist + that matches the search parameters specified in an API request. While a search + result points to a uniquely identifiable resource, like a video, it does not + have its own persistent data.\",\n \"id\": \"SearchResult\"\n },\n + \ \"Comment\": {\n \"properties\": {\n \"kind\": {\n \"default\": + \"youtube#comment\",\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the comment.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the comment.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"Comment\",\n \"description\": \"A *comment* + represents a single YouTube comment.\"\n },\n \"MembershipsDurationAtLevel\": + {\n \"id\": \"MembershipsDurationAtLevel\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"memberTotalDurationMonths\": {\n \"type\": + \"integer\",\n \"description\": \"The cumulative time the user has + been a member for the given level in complete months (the time is rounded + down to the nearest integer).\",\n \"format\": \"int32\"\n },\n + \ \"level\": {\n \"description\": \"Pricing level ID.\",\n + \ \"type\": \"string\"\n },\n \"memberSince\": {\n \"type\": + \"string\",\n \"description\": \"The date and time when the user + became a continuous member for the given level.\"\n }\n }\n },\n + \ \"SubscriptionSnippet\": {\n \"description\": \"Basic details about + a subscription, including title, description and thumbnails of the subscribed + item.\",\n \"properties\": {\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the subscriber's channel.\",\n + \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"type\": + \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the subscription was created.\"\n },\n \"title\": + {\n \"description\": \"The subscription's title.\",\n \"type\": + \"string\"\n },\n \"resourceId\": {\n \"description\": + \"The id object contains information about the channel that the user subscribed + to.\",\n \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n + \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n + \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": + \"Channel title for the channel that the subscription belongs to.\"\n },\n + \ \"description\": {\n \"description\": \"The subscription's + details.\",\n \"type\": \"string\"\n },\n \"thumbnails\": + {\n \"description\": \"A map of thumbnail images associated with + the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"SubscriptionSnippet\"\n },\n + \ \"IngestionInfo\": {\n \"description\": \"Describes information necessary + for ingesting an RTMP, HTTP, or SRT stream.\",\n \"id\": \"IngestionInfo\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"rtmpsIngestionAddress\": + {\n \"description\": \"This ingestion url may be used instead of + ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP + streams.\",\n \"type\": \"string\"\n },\n \"streamName\": + {\n \"description\": \"The stream name that YouTube assigns to the + video stream.\",\n \"type\": \"string\"\n },\n \"backupIngestionAddress\": + {\n \"type\": \"string\",\n \"description\": \"The backup + ingestion URL that you should use to stream video to YouTube. You have the + option of simultaneously streaming the content that you are sending to the + ingestionAddress to this URL.\"\n },\n \"ingestionAddress\": + {\n \"description\": \"The primary ingestion URL that you should + use to stream video to YouTube. You must stream video to this URL. Depending + on which application or tool you use to encode your video stream, you may + need to enter the stream URL and stream name separately or you may need to + concatenate them in the following format: *STREAM_URL/STREAM_NAME* \",\n \"type\": + \"string\"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"description\": + \"This ingestion url may be used instead of backupIngestionAddress in order + to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": + \"string\"\n }\n }\n },\n \"ChannelSectionLocalization\": + {\n \"type\": \"object\",\n \"properties\": {\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The localized + strings for channel section's title.\"\n }\n },\n \"id\": + \"ChannelSectionLocalization\",\n \"description\": \"ChannelSection localization + setting\"\n },\n \"MembershipsLevelListResponse\": {\n \"properties\": + {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n },\n + \ \"description\": \"A list of pricing levels offered by a creator + to the fans.\",\n \"type\": \"array\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\",\n + \ \"type\": \"object\"\n },\n \"ChannelContentDetails\": {\n \"type\": + \"object\",\n \"description\": \"Details about the content of a channel.\",\n + \ \"properties\": {\n \"relatedPlaylists\": {\n \"type\": + \"object\",\n \"properties\": {\n \"watchLater\": {\n \ \"type\": \"string\",\n \"description\": \"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.\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"id\": - \"youtube.comments.update\"\n },\n \"setModerationStatus\": - {\n \"parameters\": {\n \"banAuthor\": {\n \"default\": - \"false\",\n \"location\": \"query\",\n \"description\": - \"If set to true the author of the comment gets added to the ban list. This - means all future comments of the author will autmomatically be rejected. Only - valid in combination with STATUS_REJECTED.\",\n \"type\": \"boolean\"\n - \ },\n \"moderationStatus\": {\n \"location\": - \"query\",\n \"description\": \"Specifies the requested moderation - status. Note, comments can be in statuses, which are not available through - this call. For example, this call does not allow to mark a comment as 'likely - spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"required\": true,\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Modifies - the moderation status of the comments with the given IDs\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"path\": \"youtube/v3/comments/setModerationStatus\",\n \"id\": - \"youtube.comments.setModerationStatus\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Sets the moderation status of one - or more comments.\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ]\n },\n - \ \"markAsSpam\": {\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Expresses the caller's opinion that one or more - comments should be flagged as spam.\",\n \"id\": \"youtube.comments.markAsSpam\",\n - \ \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n \"path\": - \"youtube/v3/comments/markAsSpam\",\n \"parameters\": {\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\"\n - \ }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/comments\",\n \"path\": - \"youtube/v3/comments\",\n \"id\": \"youtube.comments.list\",\n \"parameters\": - {\n \"textFormat\": {\n \"type\": \"string\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"location\": - \"query\",\n \"description\": \"The requested text format for - the returned comments.\",\n \"default\": \"html\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ]\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the comments with the given IDs for One Platform.\",\n \"repeated\": - true\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"part\": {\n \"description\": \"The *part* parameter - specifies a comma-separated list of one or more comment resource properties - that the API response will include.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"repeated\": - true\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"minimum\": \"1\",\n \"maximum\": - \"100\",\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"20\"\n },\n \"parentId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - replies to the specified comment. Note, currently YouTube features only one - level of replies (ie replies to top level comments). However replies to replies - may be supported in the future.\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\"\n }\n }\n }\n },\n \"ownerName\": \"Google\",\n - \ \"id\": \"youtube:v3\",\n \"protocol\": \"rest\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"documentationLink\": \"https://developers.google.com/youtube/\",\n \"batchPath\": - \"batch\",\n \"ownerDomain\": \"google.com\",\n \"version\": \"v3\",\n \"icons\": - {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"description\": \"The YouTube Data API v3 is an API that provides - access to YouTube data, such as videos, playlists, and channels.\",\n \"revision\": - \"20230131\",\n \"basePath\": \"\",\n \"servicePath\": \"\",\n \"baseUrl\": - \"https://youtube.googleapis.com/\"\n}\n" + ID of the playlist that contains the channel\\\"s watch later playlist. Use + the playlistItems.insert and playlistItems.delete to add or remove items from + that list.\"\n },\n \"watchHistory\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the playlist that + contains the channel\\\"s watch history. Use the playlistItems.insert and + playlistItems.delete to add or remove items from that list.\"\n },\n + \ \"favorites\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the playlist that contains the channel\\\"s favorite videos. Use + the playlistItems.insert and playlistItems.delete to add or remove items from + that list.\"\n },\n \"uploads\": {\n \"description\": + \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use + the videos.insert method to upload new videos and the videos.delete method + to delete previously uploaded videos.\",\n \"type\": \"string\"\n + \ },\n \"likes\": {\n \"description\": \"The + ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert + and playlistItems.delete to add or remove items from that list.\",\n \"type\": + \"string\"\n }\n }\n }\n },\n \"id\": + \"ChannelContentDetails\"\n },\n \"LiveBroadcastSnippet\": {\n \"id\": + \"LiveBroadcastSnippet\",\n \"type\": \"object\",\n \"description\": + \"Basic broadcast information.\",\n \"properties\": {\n \"description\": + {\n \"description\": \"The broadcast's description. As with the title, + you can set this field by modifying the broadcast resource or by setting the + description field of the corresponding video resource.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel that is publishing the broadcast.\"\n },\n \"thumbnails\": + {\n \"description\": \"A map of thumbnail images associated with + the broadcast. For each nested object in this object, the key is the name + of the thumbnail image, and the value is an object that contains other information + about the thumbnail.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n + \ \"publishedAt\": {\n \"description\": \"The date and time + that the broadcast was added to YouTube's live broadcast schedule.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"liveChatId\": + {\n \"description\": \"The id of the live chat for this broadcast.\",\n + \ \"type\": \"string\"\n },\n \"actualStartTime\": {\n + \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the broadcast actually started. This information + is only available once the broadcast's state is live.\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"The broadcast's + title. Note that the broadcast represents exactly one YouTube video. You can + set this field by modifying the broadcast resource or by setting the title + field of the corresponding video resource.\"\n },\n \"scheduledEndTime\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time that the broadcast is scheduled + to end.\"\n },\n \"isDefaultBroadcast\": {\n \"description\": + \"Indicates whether this broadcast is the default broadcast. Internal only.\",\n + \ \"type\": \"boolean\"\n },\n \"scheduledStartTime\": + {\n \"description\": \"The date and time that the broadcast is scheduled + to start.\",\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n }\n + \ },\n \"actualEndTime\": {\n \"description\": \"The + date and time that the broadcast actually ended. This information is only + available once the broadcast's state is complete.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n }\n }\n },\n + \ \"CommentListResponse\": {\n \"properties\": {\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n },\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#commentListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"description\": \"A list of comments + that match the request criteria.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Comment\"\n }\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"CommentListResponse\"\n },\n \"ChannelBannerResource\": + {\n \"id\": \"ChannelBannerResource\",\n \"description\": \"A channel + banner returned as the response to a channel_banner.insert call.\",\n \"properties\": + {\n \"kind\": {\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#channelBannerResource\"\n + \ },\n \"etag\": {\n \"type\": \"string\"\n },\n + \ \"url\": {\n \"type\": \"string\",\n \"description\": + \"The URL of this banner image.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"ActivityContentDetailsSocial\": {\n \"properties\": {\n + \ \"author\": {\n \"type\": \"string\",\n \"description\": + \"The author of the social network post.\"\n },\n \"referenceUrl\": + {\n \"description\": \"The URL of the social network post.\",\n \"type\": + \"string\"\n },\n \"type\": {\n \"description\": \"The + name of the social network.\",\n \"enum\": [\n \"unspecified\",\n + \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object encapsulates information + that identifies the resource associated with a social network post.\"\n },\n + \ \"imageUrl\": {\n \"description\": \"An image of the post's + author.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"ActivityContentDetailsSocial\",\n \"type\": \"object\",\n \"description\": + \"Details about a social network post.\"\n },\n \"Caption\": {\n \"type\": + \"object\",\n \"description\": \"A *caption* resource represents a YouTube + caption track. A caption track is associated with exactly one YouTube video.\",\n + \ \"id\": \"Caption\",\n \"properties\": {\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"snippet\": {\n \"$ref\": \"CaptionSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the caption.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n + \ \"default\": \"youtube#caption\",\n \"type\": \"string\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the caption track.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.update\"\n + \ ]\n }\n }\n }\n },\n \"SuperStickerMetadata\": + {\n \"type\": \"object\",\n \"id\": \"SuperStickerMetadata\",\n + \ \"properties\": {\n \"altText\": {\n \"description\": + \"Internationalized alt text that describes the sticker image and any animation + associated with it.\",\n \"type\": \"string\"\n },\n \"stickerId\": + {\n \"description\": \"Unique identifier of the Super Sticker. This + is a shorter form of the alt_text that includes pack name and a recognizable + characteristic of the sticker.\",\n \"type\": \"string\"\n },\n + \ \"altTextLanguage\": {\n \"type\": \"string\",\n \"description\": + \"Specifies the localization language in which the alt text is returned.\"\n + \ }\n }\n },\n \"LiveChatTextMessageDetails\": {\n \"properties\": + {\n \"messageText\": {\n \"type\": \"string\",\n \"description\": + \"The user's message.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LiveChatTextMessageDetails\"\n },\n \"PropertyValue\": + {\n \"description\": \"A pair Property / Value.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"value\": {\n \"type\": \"string\",\n + \ \"description\": \"The property's value.\"\n },\n \"property\": + {\n \"description\": \"A property.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"PropertyValue\"\n },\n \"ThirdPartyLink\": + {\n \"properties\": {\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the third- party account + link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n },\n \"status\": + {\n \"$ref\": \"ThirdPartyLinkStatus\",\n \"description\": + \"The status object contains information about the status of the link.\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"default\": \"youtube#thirdPartyLink\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n },\n + \ \"linkingToken\": {\n \"description\": \"The linking_token + identifies a YouTube account and channel with which the third party account + is linked.\",\n \"type\": \"string\"\n }\n },\n \"description\": + \"A *third party account link* resource represents a link between a YouTube + account or a channel and an account on a third-party service.\",\n \"id\": + \"ThirdPartyLink\",\n \"type\": \"object\"\n },\n \"VideoSnippet\": + {\n \"id\": \"VideoSnippet\",\n \"properties\": {\n \"thumbnails\": + {\n \"description\": \"A map of thumbnail images associated with + the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"tags\": + {\n \"description\": \"A list of keyword tags associated with the + video. Tags may contain spaces.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n },\n \"localized\": + {\n \"$ref\": \"VideoLocalization\",\n \"description\": + \"Localized snippet selected with the hl parameter. If no such localization + exists, this field is populated with the default snippet. (Read-only)\"\n + \ },\n \"categoryId\": {\n \"type\": \"string\",\n \"description\": + \"The YouTube video category associated with the video.\"\n },\n \"description\": + {\n \"description\": \"The video's description. @mutable youtube.videos.insert + youtube.videos.update\",\n \"type\": \"string\"\n },\n \"liveBroadcastContent\": + {\n \"enumDescriptions\": [\n \"\",\n \"The + live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n + \ \"The live broadcast has been completed.\"\n ],\n \"description\": + \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" + if the video is not an upcoming/active live broadcast.\",\n \"enum\": + [\n \"none\",\n \"upcoming\",\n \"live\",\n + \ \"completed\"\n ],\n \"type\": \"string\"\n + \ },\n \"defaultAudioLanguage\": {\n \"description\": + \"The default_audio_language property specifies the language spoken in the + video's default audio track.\",\n \"type\": \"string\"\n },\n + \ \"channelId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the channel that the video was uploaded to.\",\n + \ \"type\": \"string\"\n },\n \"defaultLanguage\": {\n + \ \"type\": \"string\",\n \"description\": \"The language + of the videos's default snippet.\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"The video's title. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time when the video was uploaded.\",\n \"type\": \"string\",\n + \ \"format\": \"date-time\"\n },\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel that the video belongs to.\"\n }\n },\n \"description\": + \"Basic details about a video, including title, description, uploader, thumbnails + and category.\",\n \"type\": \"object\"\n },\n \"TestItem\": {\n + \ \"id\": \"TestItem\",\n \"properties\": {\n \"featuredPart\": + {\n \"type\": \"boolean\"\n },\n \"id\": {\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n + \ },\n \"gaia\": {\n \"format\": \"int64\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatUserBannedMessageDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\",\n + \ \"properties\": {\n \"banDurationSeconds\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The duration of the ban. This property is only present if the banType is + temporary.\"\n },\n \"banType\": {\n \"description\": + \"The type of ban.\",\n \"enum\": [\n \"permanent\",\n + \ \"temporary\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n + \ },\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n + \ \"description\": \"The details of the user that was banned.\"\n + \ }\n }\n },\n \"LevelDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"displayName\": {\n \"type\": \"string\",\n + \ \"description\": \"The name that should be used when referring to + this level.\"\n }\n },\n \"id\": \"LevelDetails\"\n },\n + \ \"VideoCategorySnippet\": {\n \"type\": \"object\",\n \"description\": + \"Basic details about a video category, such as its localized title.\",\n + \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The video category's title.\"\n },\n \"assignable\": + {\n \"type\": \"boolean\"\n },\n \"channelId\": {\n + \ \"description\": \"The YouTube channel that created the video category.\",\n + \ \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"VideoCategorySnippet\"\n + \ },\n \"LiveChatBanSnippet\": {\n \"properties\": {\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": + {\n \"description\": \"The duration of a ban, only filled if the + ban has type TEMPORARY.\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n },\n \"type\": {\n \"enumDescriptions\": + [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n + \ \"A temporary ban.\"\n ],\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n + \ \"permanent\",\n \"temporary\"\n ],\n \"type\": + \"string\",\n \"description\": \"The type of ban.\"\n },\n + \ \"liveChatId\": {\n \"description\": \"The chat this ban + is pertinent to.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"LiveChatBanSnippet\",\n \"type\": \"object\"\n },\n + \ \"PlaylistItemListResponse\": {\n \"id\": \"PlaylistItemListResponse\",\n + \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". + Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n + \ },\n \"type\": \"array\",\n \"description\": \"A + list of playlist items that match the request criteria.\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"VideoContentDetails\": + {\n \"description\": \"Details about the content of a YouTube Video.\",\n + \ \"properties\": {\n \"contentRating\": {\n \"description\": + \"Specifies the ratings that the video received under various rating schemes.\",\n + \ \"$ref\": \"ContentRating\"\n },\n \"licensedContent\": + {\n \"description\": \"The value of is_license_content indicates + whether the video is licensed content.\",\n \"type\": \"boolean\"\n + \ },\n \"dimension\": {\n \"type\": \"string\",\n \"description\": + \"The value of dimension indicates whether the video is available in 3D or + in 2D.\"\n },\n \"caption\": {\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"true\",\n \"false\"\n ],\n \"description\": + \"The value of captions indicates whether the video has captions or not.\",\n + \ \"type\": \"string\"\n },\n \"definition\": {\n \"description\": + \"The value of definition indicates whether the video is available in high + definition or only in standard definition.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n + \ ],\n \"enum\": [\n \"sd\",\n \"hd\"\n + \ ]\n },\n \"regionRestriction\": {\n \"$ref\": + \"VideoContentDetailsRegionRestriction\",\n \"description\": \"The + regionRestriction object contains information about the countries where a + video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed + property or the contentDetails.regionRestriction.blocked property.\"\n },\n + \ \"hasCustomThumbnail\": {\n \"type\": \"boolean\",\n \"description\": + \"Indicates whether the video uploader has provided a custom thumbnail image + for the video. This property is only visible to the video uploader.\"\n },\n + \ \"duration\": {\n \"description\": \"The length of the video. + The tag value is an ISO 8601 duration in the format PT#M#S, in which the letters + PT indicate that the value specifies a period of time, and the letters M and + S refer to length in minutes and seconds, respectively. The # characters preceding + the M and S letters are both integers that specify the number of minutes (or + seconds) of the video. For example, a value of PT15M51S indicates that the + video is 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n + \ },\n \"countryRestriction\": {\n \"description\": + \"The countryRestriction object contains information about the countries where + a video is (or is not) viewable.\",\n \"$ref\": \"AccessPolicy\"\n + \ },\n \"projection\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"rectangular\",\n \"360\"\n ],\n \"type\": + \"string\",\n \"description\": \"Specifies the projection format + of the video.\"\n }\n },\n \"id\": \"VideoContentDetails\",\n + \ \"type\": \"object\"\n },\n \"ChannelLocalization\": {\n \"id\": + \"ChannelLocalization\",\n \"properties\": {\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The localized + strings for channel's description.\"\n },\n \"title\": {\n \"description\": + \"The localized strings for channel's title.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Channel + localization setting\"\n },\n \"LiveChatFanFundingEventDetails\": {\n + \ \"properties\": {\n \"amountMicros\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + amount of the fund.\"\n },\n \"amountDisplayString\": {\n \"type\": + \"string\",\n \"description\": \"A rendered string that displays + the fund amount and currency to the user.\"\n },\n \"currency\": + {\n \"type\": \"string\",\n \"description\": \"The currency + in which the fund was made.\"\n },\n \"userComment\": {\n \"description\": + \"The comment added by the user to this fan funding event.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveChatFanFundingEventDetails\",\n + \ \"type\": \"object\"\n },\n \"I18nLanguage\": {\n \"description\": + \"An *i18nLanguage* resource identifies a UI language currently supported + by YouTube.\",\n \"properties\": {\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the i18n language.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the i18n language, such + as language code and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n + \ \"default\": \"youtube#i18nLanguage\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n },\n \"id\": \"I18nLanguage\",\n + \ \"type\": \"object\"\n },\n \"VideoFileDetails\": {\n \"type\": + \"object\",\n \"properties\": {\n \"durationMs\": {\n \"description\": + \"The length of the uploaded video in milliseconds.\",\n \"format\": + \"uint64\",\n \"type\": \"string\"\n },\n \"fileType\": + {\n \"type\": \"string\",\n \"enum\": [\n \"video\",\n + \ \"audio\",\n \"image\",\n \"archive\",\n + \ \"document\",\n \"project\",\n \"other\"\n + \ ],\n \"enumDescriptions\": [\n \"Known video + file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an MP3 + file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive + file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., + MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n + \ \"description\": \"The uploaded file's type as detected by YouTube's + video processing engine. Currently, YouTube only processes video files, but + this field is present whether a video file or another type of file was uploaded.\"\n + \ },\n \"videoStreams\": {\n \"items\": {\n \"$ref\": + \"VideoFileDetailsVideoStream\"\n },\n \"description\": + \"A list of video streams contained in the uploaded video file. Each item + in the list contains detailed metadata about a video stream.\",\n \"type\": + \"array\"\n },\n \"bitrateBps\": {\n \"description\": + \"The uploaded video file's combined (video and audio) bitrate in bits per + second.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n + \ },\n \"fileName\": {\n \"type\": \"string\",\n \"description\": + \"The uploaded file's name. This field is present whether a video file or + another type of file was uploaded.\"\n },\n \"audioStreams\": + {\n \"type\": \"array\",\n \"description\": \"A list of + audio streams contained in the uploaded video file. Each item in the list + contains detailed metadata about an audio stream.\",\n \"items\": + {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n }\n },\n + \ \"fileSize\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"The uploaded file's size in bytes. + This field is present whether a video file or another type of file was uploaded.\"\n + \ },\n \"creationTime\": {\n \"description\": \"The + date and time when the uploaded video file was created. The value is specified + in ISO 8601 format. Currently, the following ISO 8601 formats are supported: + - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: + YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n },\n + \ \"container\": {\n \"description\": \"The uploaded video + file's container format.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"VideoFileDetails\",\n \"description\": \"Describes original + video file properties, including technical details about audio and video streams, + but also metadata information like content length, digitization time, or geotagging + information.\"\n },\n \"Entity\": {\n \"properties\": {\n \"id\": + {\n \"type\": \"string\"\n },\n \"url\": {\n \"type\": + \"string\"\n },\n \"typeId\": {\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"Entity\"\n + \ },\n \"VideoProcessingDetailsProcessingProgress\": {\n \"type\": + \"object\",\n \"properties\": {\n \"partsProcessed\": {\n \"description\": + \"The number of parts of the video that YouTube has already processed. You + can estimate the percentage of the video that YouTube has already processed + by calculating: 100 * parts_processed / parts_total Note that since the estimated + number of parts could increase without a corresponding increase in the number + of parts that have already been processed, it is possible that the calculated + progress could periodically decrease while YouTube processes a video.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n + \ \"timeLeftMs\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"An estimate of the amount of time, + in millseconds, that YouTube needs to finish processing the video.\"\n },\n + \ \"partsTotal\": {\n \"description\": \"An estimate of the + total number of parts that need to be processed for the video. The number + may be updated with more precise estimates while YouTube processes the video.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": + \"Video processing progress and completion time estimate.\"\n },\n \"ChannelStatistics\": + {\n \"properties\": {\n \"hiddenSubscriberCount\": {\n \"description\": + \"Whether or not the number of subscribers is shown for this user.\",\n \"type\": + \"boolean\"\n },\n \"viewCount\": {\n \"format\": \"uint64\",\n + \ \"description\": \"The number of times the channel has been viewed.\",\n + \ \"type\": \"string\"\n },\n \"subscriberCount\": {\n + \ \"type\": \"string\",\n \"description\": \"The number of + subscribers that the channel has.\",\n \"format\": \"uint64\"\n },\n + \ \"commentCount\": {\n \"description\": \"The number of comments + for the channel.\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n },\n \"videoCount\": {\n \"format\": \"uint64\",\n + \ \"description\": \"The number of videos uploaded to the channel.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"ChannelStatistics\",\n + \ \"type\": \"object\",\n \"description\": \"Statistics about a channel: + number of subscribers, number of videos in the channel, etc.\"\n },\n \"LocalizedString\": + {\n \"id\": \"LocalizedString\",\n \"type\": \"object\",\n \"properties\": + {\n \"value\": {\n \"type\": \"string\"\n },\n \"language\": + {\n \"type\": \"string\"\n }\n }\n },\n \"MembershipsLevelSnippet\": + {\n \"id\": \"MembershipsLevelSnippet\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"levelDetails\": {\n \"$ref\": + \"LevelDetails\",\n \"description\": \"Details about the pricing + level.\"\n },\n \"creatorChannelId\": {\n \"description\": + \"The id of the channel that's offering channel memberships.\",\n \"type\": + \"string\"\n }\n }\n },\n \"ChannelConversionPings\": {\n + \ \"id\": \"ChannelConversionPings\",\n \"type\": \"object\",\n \"description\": + \"The conversionPings object encapsulates information about conversion pings + that need to be respected by the channel.\",\n \"properties\": {\n \"pings\": + {\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n + \ },\n \"type\": \"array\",\n \"description\": \"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.\"\n }\n }\n },\n \"LiveStreamConfigurationIssue\": + {\n \"type\": \"object\",\n \"properties\": {\n \"type\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"gopSizeOver\",\n + \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n + \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n + \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n + \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n + \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n + \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n + \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n + \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n + \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n + \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n + \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n + \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n + \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n + \ ],\n \"description\": \"The kind of error happening.\"\n + \ },\n \"reason\": {\n \"type\": \"string\",\n \"description\": + \"The short-form reason for this issue.\"\n },\n \"description\": + {\n \"description\": \"The long-form description of the issue and + how to resolve it.\",\n \"type\": \"string\"\n },\n \"severity\": + {\n \"type\": \"string\",\n \"enum\": [\n \"info\",\n + \ \"warning\",\n \"error\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"description\": \"How severe this issue is to the stream.\"\n }\n + \ },\n \"id\": \"LiveStreamConfigurationIssue\"\n },\n \"ChannelToStoreLinkDetails\": + {\n \"id\": \"ChannelToStoreLinkDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"merchantId\": {\n \"type\": \"string\",\n + \ \"description\": \"Google Merchant Center id of the store.\",\n + \ \"format\": \"uint64\"\n },\n \"storeUrl\": {\n \"type\": + \"string\",\n \"description\": \"Landing page of the store.\"\n },\n + \ \"storeName\": {\n \"type\": \"string\",\n \"description\": + \"Name of the store.\"\n }\n },\n \"description\": \"Information + specific to a store on a merchandising platform linked to a YouTube channel.\"\n + \ },\n \"ThumbnailDetails\": {\n \"id\": \"ThumbnailDetails\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"maxres\": + {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The maximum + resolution quality image for this resource.\"\n },\n \"standard\": + {\n \"description\": \"The standard quality image for this resource.\",\n + \ \"$ref\": \"Thumbnail\"\n },\n \"medium\": {\n \"description\": + \"The medium quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n + \ },\n \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": + \"The default image for this resource.\"\n },\n \"high\": {\n + \ \"description\": \"The high quality image for this resource.\",\n + \ \"$ref\": \"Thumbnail\"\n }\n },\n \"description\": + \"Internal representation of thumbnails for a YouTube resource.\"\n },\n + \ \"InvideoTiming\": {\n \"type\": \"object\",\n \"description\": + \"Describes a temporal position of a visual widget inside a video.\",\n \"id\": + \"InvideoTiming\",\n \"properties\": {\n \"type\": {\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"description\": + \"Describes a timing type. If the value is offsetFromStart, then the offsetMs + field represents an offset from the start of the video. If the value is offsetFromEnd, + then the offsetMs field represents an offset from the end of the video.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"offsetFromStart\",\n + \ \"offsetFromEnd\"\n ]\n },\n \"durationMs\": + {\n \"description\": \"Defines the duration in milliseconds for which + the promotion should be displayed. If missing, the client should use the default.\",\n + \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n + \ \"offsetMs\": {\n \"description\": \"Defines the time at + which the promotion will appear. Depending on the value of type the value + of the offsetMs field will represent a time offset from the start or from + the end of the video, expressed in milliseconds.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n }\n }\n },\n \"ResourceId\": + {\n \"properties\": {\n \"playlistId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a playlist. This property is only present if the resourceId.kind + value is youtube#playlist.\",\n \"type\": \"string\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a channel. This property is only present if the resourceId.kind + value is youtube#channel.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"The type of the API resource.\"\n + \ },\n \"videoId\": {\n \"description\": \"The ID that + YouTube uses to uniquely identify the referred resource, if that resource + is a video. This property is only present if the resourceId.kind value is + youtube#video.\",\n \"type\": \"string\"\n }\n },\n \"description\": + \"A resource id is a generic reference that points to another YouTube resource.\",\n + \ \"type\": \"object\",\n \"id\": \"ResourceId\"\n },\n \"TokenPagination\": + {\n \"description\": \"Stub token pagination template to suppress results.\",\n + \ \"type\": \"object\",\n \"id\": \"TokenPagination\",\n \"properties\": + {}\n },\n \"LanguageTag\": {\n \"type\": \"object\",\n \"properties\": + {\n \"value\": {\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"LanguageTag\"\n },\n \"ActivityContentDetailsComment\": + {\n \"id\": \"ActivityContentDetailsComment\",\n \"description\": + \"Information about a resource that received a comment.\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + associated with the comment.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"VideoCategoryListResponse\": {\n \"properties\": {\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"default\": \"youtube#videoCategoryListResponse\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoCategory\"\n + \ },\n \"description\": \"A list of video categories that + can be associated with YouTube videos. In this map, the video category ID + is the map key, and its value is the corresponding videoCategory resource.\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"VideoCategoryListResponse\",\n \"type\": \"object\"\n },\n \"VideoAbuseReportReason\": + {\n \"id\": \"VideoAbuseReportReason\",\n \"properties\": {\n \"snippet\": + {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n \"description\": + \"The `snippet` object contains basic details about the abuse report reason.\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#videoAbuseReportReason\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"description\": \"The + ID of this abuse report reason.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n },\n \"description\": \"A + `__videoAbuseReportReason__` resource identifies a reason that a video could + be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\",\n + \ \"type\": \"object\"\n },\n \"Cuepoint\": {\n \"id\": \"Cuepoint\",\n + \ \"description\": \"Note that there may be a 5-second end-point resolution + issue. For instance, if a cuepoint comes in for 22:03:27, we may stuff the + cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact of HLS.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"walltimeMs\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The wall clock time at which the cuepoint should be inserted. Only one of + insertion_offset_time_ms and walltime_ms may be set at a time.\"\n },\n + \ \"id\": {\n \"description\": \"The identifier for cuepoint + resource.\",\n \"type\": \"string\"\n },\n \"insertionOffsetTimeMs\": + {\n \"format\": \"int64\",\n \"description\": \"The time + when the cuepoint should be inserted by offset to the broadcast actual start + time.\",\n \"type\": \"string\"\n },\n \"cueType\": + {\n \"enum\": [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ]\n },\n \"etag\": + {\n \"type\": \"string\"\n },\n \"durationSecs\": {\n + \ \"description\": \"The duration of this cuepoint.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n }\n }\n },\n + \ \"InvideoBranding\": {\n \"id\": \"InvideoBranding\",\n \"type\": + \"object\",\n \"description\": \"LINT.IfChange Describes an invideo branding.\",\n + \ \"properties\": {\n \"position\": {\n \"description\": + \"The spatial position within the video where the branding watermark will + be displayed.\",\n \"$ref\": \"InvideoPosition\"\n },\n \"targetChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The channel + to which this branding links. If not present it defaults to the current channel.\"\n + \ },\n \"imageBytes\": {\n \"type\": \"string\",\n \"description\": + \"The bytes the uploaded image. Only used in api to youtube communication.\",\n + \ \"format\": \"byte\"\n },\n \"timing\": {\n \"description\": + \"The temporal position within the video where watermark will be displayed.\",\n + \ \"$ref\": \"InvideoTiming\"\n },\n \"imageUrl\": {\n + \ \"type\": \"string\",\n \"description\": \"The url of the + uploaded image. Only used in apiary to api communication.\"\n }\n }\n + \ },\n \"VideoProjectDetails\": {\n \"id\": \"VideoProjectDetails\",\n + \ \"properties\": {},\n \"description\": \"DEPRECATED. b/157517979: + This part was never populated after it was added. However, it sees non-zero + traffic because there is generated client code in the wild that refers to + it [1]. We keep this field and do NOT remove it because otherwise V3 would + return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"type\": \"object\"\n },\n \"GeoPoint\": {\n \"description\": + \"Geographical coordinates of a point, in WGS84.\",\n \"id\": \"GeoPoint\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"longitude\": + {\n \"type\": \"number\",\n \"format\": \"double\",\n \"description\": + \"Longitude in degrees.\"\n },\n \"altitude\": {\n \"type\": + \"number\",\n \"description\": \"Altitude above the reference ellipsoid, + in meters.\",\n \"format\": \"double\"\n },\n \"latitude\": + {\n \"type\": \"number\",\n \"description\": \"Latitude + in degrees.\",\n \"format\": \"double\"\n }\n }\n },\n + \ \"LiveStreamContentDetails\": {\n \"properties\": {\n \"isReusable\": + {\n \"description\": \"Indicates whether the stream is reusable, + which means that it can be bound to multiple broadcasts. It is common for + broadcasters to reuse the same stream for many different broadcasts if those + broadcasts occur at different times. If you set this value to false, then + the stream will not be reusable, which means that it can only be bound to + one broadcast. Non-reusable streams differ from reusable streams in the following + ways: - A non-reusable stream can only be bound to one broadcast. - A non-reusable + stream might be deleted by an automated process after the broadcast ends. + - The liveStreams.list method does not list non-reusable streams if you call + the method and set the mine parameter to true. The only way to use that method + to retrieve the resource for a non-reusable stream is to use the id parameter + to identify the stream. \",\n \"type\": \"boolean\"\n },\n + \ \"closedCaptionsIngestionUrl\": {\n \"description\": \"The + ingestion URL where the closed captions of this stream are sent.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveStreamContentDetails\",\n + \ \"type\": \"object\",\n \"description\": \"Detailed settings of + a stream.\"\n },\n \"VideoFileDetailsAudioStream\": {\n \"properties\": + {\n \"channelCount\": {\n \"type\": \"integer\",\n \"description\": + \"The number of audio channels that the stream contains.\",\n \"format\": + \"uint32\"\n },\n \"vendor\": {\n \"description\": + \"A value that uniquely identifies a video vendor. Typically, the value is + a four-letter vendor code.\",\n \"type\": \"string\"\n },\n + \ \"codec\": {\n \"description\": \"The audio codec that the + stream uses.\",\n \"type\": \"string\"\n },\n \"bitrateBps\": + {\n \"format\": \"uint64\",\n \"description\": \"The audio + stream's bitrate, in bits per second.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"VideoFileDetailsAudioStream\",\n \"description\": + \"Information about an audio stream.\",\n \"type\": \"object\"\n },\n + \ \"LiveBroadcast\": {\n \"id\": \"LiveBroadcast\",\n \"description\": + \"A *liveBroadcast* resource represents an event that will be streamed, via + live video, on YouTube.\",\n \"type\": \"object\",\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"status\": {\n \"description\": + \"The status object contains information about the event's status.\",\n \"$ref\": + \"LiveBroadcastStatus\"\n },\n \"contentDetails\": {\n \"$ref\": + \"LiveBroadcastContentDetails\",\n \"description\": \"The contentDetails + object contains information about the event's video content, such as whether + the content can be shown in an embedded video player or if it will be archived + and therefore available for viewing after the event has concluded.\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the event, including its title, description, start time, + and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n },\n + \ \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n + \ \"description\": \"The statistics object contains info about the + event's current stats. These include concurrent viewers and total chat count. + Statistics can change (in either direction) during the lifetime of an event. + Statistics are only returned while the event is live.\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#liveBroadcast\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveBroadcast\\\".\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube assigns to uniquely identify + the broadcast.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"type\": \"string\"\n }\n }\n },\n \"LiveChatGiftMembershipReceivedDetails\": + {\n \"properties\": {\n \"memberLevelName\": {\n \"type\": + \"string\",\n \"description\": \"The name of the Level at which the + viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` + of the associated membership gifting message. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\"\n },\n \"gifterChannelId\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the user that made the + membership gifting purchase. This matches the `snippet.authorChannelId` of + the associated membership gifting message.\"\n },\n \"associatedMembershipGiftingMessageId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the membership gifting message that is related to this gift membership. This + ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n + \ }\n },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n + \ \"type\": \"object\"\n },\n \"ActivityContentDetails\": {\n \"description\": + \"Details about the content of an activity: the video that was shared, the + channel that was subscribed to, etc.\",\n \"type\": \"object\",\n \"properties\": + {\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n + \ \"description\": \"The bulletin object contains details about a + channel bulletin post. This object is only present if the snippet.type is + bulletin.\"\n },\n \"recommendation\": {\n \"description\": + \"The recommendation object contains information about a recommended resource. + This property is only present if the snippet.type is recommendation.\",\n + \ \"$ref\": \"ActivityContentDetailsRecommendation\"\n },\n + \ \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n + \ \"description\": \"The playlistItem object contains information + about a new playlist item. This property is only present if the snippet.type + is playlistItem.\"\n },\n \"promotedItem\": {\n \"$ref\": + \"ActivityContentDetailsPromotedItem\",\n \"description\": \"The + promotedItem object contains details about a resource which is being promoted. + This property is only present if the snippet.type is promotedItem.\"\n },\n + \ \"social\": {\n \"description\": \"The social object contains + details about a social network post. This property is only present if the + snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n + \ },\n \"upload\": {\n \"$ref\": \"ActivityContentDetailsUpload\",\n + \ \"description\": \"The upload object contains information about + the uploaded video. This property is only present if the snippet.type is upload.\"\n + \ },\n \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n + \ \"description\": \"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.\"\n },\n \"comment\": {\n \"description\": + \"The comment object contains information about a resource that received a + comment. This property is only present if the snippet.type is comment.\",\n + \ \"$ref\": \"ActivityContentDetailsComment\"\n },\n \"subscription\": + {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n \"description\": + \"The subscription object contains information about a channel that a user + subscribed to. This property is only present if the snippet.type is subscription.\"\n + \ },\n \"like\": {\n \"$ref\": \"ActivityContentDetailsLike\",\n + \ \"description\": \"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.\"\n },\n \"favorite\": {\n \"description\": + \"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.\",\n + \ \"$ref\": \"ActivityContentDetailsFavorite\"\n }\n },\n + \ \"id\": \"ActivityContentDetails\"\n },\n \"LiveChatMemberMilestoneChatDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n + \ \"properties\": {\n \"memberLevelName\": {\n \"description\": + \"The name of the Level at which the viever is a member. The Level names are + defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\",\n \"type\": \"string\"\n },\n + \ \"userComment\": {\n \"description\": \"The comment added + by the member to this Member Milestone Chat. This field is empty for messages + without a comment from the member.\",\n \"type\": \"string\"\n },\n + \ \"memberMonth\": {\n \"format\": \"uint32\",\n \"description\": + \"The total amount of months (rounded up) the viewer has been a member that + granted them this Member Milestone Chat. This is the same number of months + as is being displayed to YouTube users.\",\n \"type\": \"integer\"\n + \ }\n }\n },\n \"Activity\": {\n \"description\": \"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.\",\n + \ \"id\": \"Activity\",\n \"properties\": {\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource\"\n },\n \"id\": {\n \"description\": \"The + ID that YouTube uses to uniquely identify the activity.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the activity, including the activity's type and group ID.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#activity\",\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n },\n + \ \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n + \ \"description\": \"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.\"\n }\n },\n \"type\": \"object\"\n },\n + \ \"VideoStatus\": {\n \"type\": \"object\",\n \"id\": \"VideoStatus\",\n + \ \"description\": \"Basic details about a video category, such as its + localized title. Next Id: 18\",\n \"properties\": {\n \"failureReason\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"Unable + to convert video content.\",\n \"Invalid file format.\",\n \"Empty + file.\",\n \"File was too small.\",\n \"Unsupported + codec.\",\n \"Upload wasn't finished.\"\n ],\n \"description\": + \"This value explains why a video failed to upload. This property is only + present if the uploadStatus property indicates that the upload failed.\",\n + \ \"enum\": [\n \"conversion\",\n \"invalidFile\",\n + \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n + \ \"uploadAborted\"\n ]\n },\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n },\n \"embeddable\": {\n + \ \"type\": \"boolean\",\n \"description\": \"This value + indicates if the video can be embedded on another website. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"license\": {\n \"description\": + \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"youtube\",\n + \ \"creativeCommon\"\n ]\n },\n \"rejectionReason\": + {\n \"description\": \"This value explains why YouTube rejected an + uploaded video. This property is only present if the uploadStatus property + indicates that the upload was rejected.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n + \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n + \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n + \ \"trademark\",\n \"legal\"\n ],\n \"enumDescriptions\": + [\n \"Copyright infringement.\",\n \"Inappropriate video + content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms + of use violation.\",\n \"Uploader account was suspended.\",\n \"Video + duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader + closed his/her account.\",\n \"Trademark infringement.\",\n \"An + unspecified legal reason.\"\n ]\n },\n \"publishAt\": + {\n \"description\": \"The date and time when the video is scheduled + to publish. It can be set only if the privacy status of the video is private..\",\n + \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n + \ \"madeForKids\": {\n \"type\": \"boolean\"\n },\n + \ \"publicStatsViewable\": {\n \"description\": \"This value + indicates if the extended video statistics on the watch page can be viewed + by everyone. Note that the view count, likes, etc will still be visible if + this is disabled. @mutable youtube.videos.insert youtube.videos.update\",\n + \ \"type\": \"boolean\"\n },\n \"privacyStatus\": {\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"description\": \"The video's + privacy status.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"uploadStatus\": {\n \"enum\": [\n \"uploaded\",\n + \ \"processed\",\n \"failed\",\n \"rejected\",\n + \ \"deleted\"\n ],\n \"description\": \"The status + of the uploaded video.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"Video has been uploaded but not processed yet.\",\n \"Video + has been successfully processed.\",\n \"Processing has failed. + See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n + \ \"Video has been deleted.\"\n ]\n }\n }\n + \ },\n \"VideoAbuseReportReasonListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoAbuseReportReasonListResponse\",\n \"properties\": + {\n \"eventId\": {\n \"description\": \"Serialized EventId + of the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The `visitorId` identifies the visitor.\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#videoAbuseReportReasonListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n + \ },\n \"items\": {\n \"description\": \"A list of valid + abuse reasons that are used with `video.ReportAbuse`.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n + \ }\n }\n }\n },\n \"VideoAbuseReportSecondaryReason\": + {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"label\": {\n \"type\": \"string\",\n + \ \"description\": \"The localized label for this abuse report secondary + reason.\"\n },\n \"id\": {\n \"description\": \"The + ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"VideoStatistics\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"commentCount\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of comments for the video.\"\n },\n \"likeCount\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of users who have indicated that they liked the video by giving + it a positive rating.\"\n },\n \"favoriteCount\": {\n \"description\": + \"The number of users who currently have the video marked as a favorite video.\",\n + \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n + \ \"viewCount\": {\n \"format\": \"uint64\",\n \"description\": + \"The number of times the video has been viewed.\",\n \"type\": \"string\"\n + \ },\n \"dislikeCount\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The number + of users who have indicated that they disliked the video by giving it a negative + rating.\"\n }\n },\n \"id\": \"VideoStatistics\",\n \"description\": + \"Statistics about the video, such as the number of times the video was viewed + or liked.\"\n },\n \"Subscription\": {\n \"description\": \"A *subscription* + resource contains information about a YouTube user subscription. A subscription + notifies a user when new videos are added to a channel or when another user + takes one of several actions on YouTube, such as uploading a video, rating + a video, or commenting on a video.\",\n \"properties\": {\n \"subscriberSnippet\": + {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n \"description\": + \"The subscriberSnippet object contains basic details about the subscriber.\"\n + \ },\n \"contentDetails\": {\n \"$ref\": \"SubscriptionContentDetails\",\n + \ \"description\": \"The contentDetails object contains basic statistics + about the subscription.\"\n },\n \"kind\": {\n \"default\": + \"youtube#subscription\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\"\n + \ },\n \"snippet\": {\n \"$ref\": \"SubscriptionSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the subscription, including its title and the channel that the user subscribed + to.\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the subscription.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"Subscription\"\n },\n \"MonitorStreamInfo\": {\n \"description\": + \"Settings and Info of the monitor stream\",\n \"id\": \"MonitorStreamInfo\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"broadcastStreamDelayMs\": + {\n \"type\": \"integer\",\n \"description\": \"If you have + set the enableMonitorStream property to true, then this property determines + the length of the live broadcast delay.\",\n \"format\": \"uint32\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n }\n },\n \"embedHtml\": {\n \"description\": + \"HTML code that embeds a player that plays the monitor stream.\",\n \"type\": + \"string\"\n },\n \"enableMonitorStream\": {\n \"type\": + \"boolean\",\n \"annotations\": {\n \"required\": [\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"This value determines whether the monitor stream + is enabled for the broadcast. If the monitor stream is enabled, then YouTube + will broadcast the event content on a special stream intended only for the + broadcaster's consumption. The broadcaster can use the stream to review the + event content and also to identify the optimal times to insert cuepoints. + You need to set this value to true if you intend to have a broadcast delay + for your event. *Note:* This property cannot be updated once the broadcast + is in the testing or live state.\"\n }\n }\n },\n \"VideoMonetizationDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"access\": + {\n \"description\": \"The value of access indicates whether the + video can be monetized or not.\",\n \"$ref\": \"AccessPolicy\"\n + \ }\n },\n \"description\": \"Details about monetization of + a YouTube Video.\",\n \"id\": \"VideoMonetizationDetails\"\n },\n + \ \"LiveStreamHealthStatus\": {\n \"properties\": {\n \"status\": + {\n \"type\": \"string\",\n \"enum\": [\n \"good\",\n + \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n + \ ],\n \"description\": \"The status code of this stream\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"configurationIssues\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n },\n + \ \"description\": \"The configurations issues on this stream\"\n + \ },\n \"lastUpdateTimeSeconds\": {\n \"type\": \"string\",\n + \ \"description\": \"The last time this status was updated (in seconds)\",\n + \ \"format\": \"uint64\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LiveStreamHealthStatus\"\n },\n \"InvideoPosition\": + {\n \"properties\": {\n \"cornerPosition\": {\n \"type\": + \"string\",\n \"enum\": [\n \"topLeft\",\n \"topRight\",\n + \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"Describes in which corner of the + video the visual widget will appear.\"\n },\n \"type\": {\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\"\n + \ ],\n \"description\": \"Defines the position type.\",\n + \ \"enum\": [\n \"corner\"\n ]\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"InvideoPosition\",\n \"description\": + \"Describes the spatial position of a visual widget inside a video. It is + a union of various position types, out of which only will be set one.\"\n + \ },\n \"VideoListResponse\": {\n \"properties\": {\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n + \ \"description\": \"General pagination information.\"\n },\n + \ \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#videoListResponse\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Video\"\n }\n }\n },\n \"type\": + \"object\",\n \"id\": \"VideoListResponse\"\n },\n \"ActivityContentDetailsRecommendation\": + {\n \"properties\": {\n \"reason\": {\n \"enum\": [\n + \ \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n + \ \"videoWatched\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The reason that the resource is recommended to the user.\"\n },\n + \ \"resourceId\": {\n \"description\": \"The resourceId object + contains information that identifies the recommended resource.\",\n \"$ref\": + \"ResourceId\"\n },\n \"seedResourceId\": {\n \"description\": + \"The seedResourceId object contains information about the resource that caused + the recommendation.\",\n \"$ref\": \"ResourceId\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsRecommendation\",\n + \ \"description\": \"Information that identifies the recommended resource.\"\n + \ },\n \"AbuseReport\": {\n \"properties\": {\n \"relatedEntities\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"RelatedEntity\"\n }\n },\n \"description\": {\n \"type\": + \"string\"\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n + \ },\n \"abuseTypes\": {\n \"items\": {\n \"$ref\": + \"AbuseType\"\n },\n \"type\": \"array\"\n }\n },\n + \ \"id\": \"AbuseReport\",\n \"type\": \"object\"\n },\n \"PlaylistStatus\": + {\n \"id\": \"PlaylistStatus\",\n \"type\": \"object\",\n \"properties\": + {\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The playlist's + privacy status.\"\n }\n }\n },\n \"ChannelContentOwnerDetails\": + {\n \"id\": \"ChannelContentOwnerDetails\",\n \"description\": \"The + contentOwnerDetails object encapsulates channel data that is relevant for + YouTube Partners linked with the channel.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"contentOwner\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the content owner linked + to the channel.\"\n },\n \"timeLinked\": {\n \"description\": + \"The date and time when the channel was linked to the content owner.\",\n + \ \"type\": \"string\",\n \"format\": \"date-time\"\n }\n + \ }\n },\n \"LiveChatMessageListResponse\": {\n \"properties\": + {\n \"nextPageToken\": {\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"offlineAt\": + {\n \"description\": \"The date and time when the underlying stream + went offline.\",\n \"format\": \"date-time\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"LiveChatMessage\"\n }\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n },\n + \ \"pollingIntervalMillis\": {\n \"description\": \"The amount + of time the client should wait before polling again.\",\n \"format\": + \"uint32\",\n \"type\": \"integer\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LiveChatMessageListResponse\"\n },\n \"LiveChatModeratorSnippet\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\",\n + \ \"properties\": {\n \"moderatorDetails\": {\n \"description\": + \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n + \ },\n \"liveChatId\": {\n \"description\": \"The ID + of the live chat this moderator can act on.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"ActivityContentDetailsSubscription\": {\n + \ \"type\": \"object\",\n \"description\": \"Information about a + channel that a user subscribed to.\",\n \"id\": \"ActivityContentDetailsSubscription\",\n + \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the resource that the user subscribed to.\"\n }\n }\n + \ },\n \"TestItemTestItemSnippet\": {\n \"properties\": {},\n \"id\": + \"TestItemTestItemSnippet\",\n \"type\": \"object\"\n },\n \"I18nRegion\": + {\n \"id\": \"I18nRegion\",\n \"properties\": {\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the i18n region, such as region code and human-readable name.\",\n \"$ref\": + \"I18nRegionSnippet\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the i18n region.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#i18nRegion\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#i18nRegion\\\".\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n },\n \"description\": \"A + *i18nRegion* resource identifies a region where YouTube is available.\",\n + \ \"type\": \"object\"\n },\n \"PlaylistItemStatus\": {\n \"type\": + \"object\",\n \"description\": \"Information about the playlist item's + privacy status.\",\n \"properties\": {\n \"privacyStatus\": {\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"description\": \"This resource's + privacy status.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n }\n + \ },\n \"id\": \"PlaylistItemStatus\"\n },\n \"VideoSuggestions\": + {\n \"id\": \"VideoSuggestions\",\n \"properties\": {\n \"editorSuggestions\": + {\n \"items\": {\n \"enumDescriptions\": [\n \"Picture + brightness levels seem off and could be corrected.\",\n \"The + video appears shaky and could be stabilized.\",\n \"Margins (mattes) + detected around the picture could be cropped.\",\n \"The audio + track appears silent and could be swapped with a better quality one.\"\n ],\n + \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n + \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n + \ \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"A list of video editing operations that might + improve the video quality or playback experience of the uploaded video.\"\n + \ },\n \"processingErrors\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"enumDescriptions\": [\n \"File + contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., + a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file.\",\n \"Document + or text file (e.g., MS Word document).\",\n \"An archive file + (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout + type.\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n + \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n + \ \"unsupportedSpatialAudioLayout\"\n ]\n },\n + \ \"description\": \"A list of errors that will prevent YouTube from + successfully processing the uploaded video video. These errors indicate that, + regardless of the video's current processing status, eventually, that status + will almost certainly be failed.\"\n },\n \"tagSuggestions\": + {\n \"type\": \"array\",\n \"description\": \"A list of + keyword tags that could be added to the video's metadata to increase the likelihood + that users will locate your video when searching or browsing on YouTube.\",\n + \ \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n + \ }\n },\n \"processingHints\": {\n \"description\": + \"A list of suggestions that may improve YouTube's ability to process the + video.\",\n \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": + [\n \"The MP4 file is not streamable, this will slow down the + processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably + a better quality version of the video exists. The video has wide screen aspect + ratio, but is not an HD video.\",\n \"Uploaded video is spherical + video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded + video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n + \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n + \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n + \ ]\n }\n },\n \"processingWarnings\": {\n + \ \"description\": \"A list of reasons why YouTube may have difficulty + transcoding the uploaded video or that might result in an erroneous transcoding. + These warnings are generated before YouTube actually processes the uploaded + video file. In addition, they identify issues that are unlikely to cause the + video processing to fail but that might cause problems such as sync issues, + video artifacts, or a missing audio track.\",\n \"items\": {\n \"enum\": + [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n + \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n + \ \"hasEditlist\",\n \"problematicVideoCodec\",\n + \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n + \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n + \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n + \ ],\n \"enumDescriptions\": [\n \"Unrecognized + file format, transcoding is likely to fail.\",\n \"Unrecognized + video codec, transcoding is likely to fail.\",\n \"Unrecognized + audio codec, transcoding is likely to fail.\",\n \"Conflicting + container and stream resolutions.\",\n \"Edit lists are not currently + supported.\",\n \"Video codec that is known to cause problems + was used.\",\n \"Audio codec that is known to cause problems + was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported + spherical video projection type.\",\n \"Unsupported HDR pixel + format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic + HDR lookup table attached.\"\n ],\n \"type\": \"string\"\n + \ },\n \"type\": \"array\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"Specifies suggestions on how to improve + video content, including encoding hints, tag suggestions, and editor suggestions.\"\n + \ },\n \"VideoRating\": {\n \"description\": \"Basic details about + rating of a video.\",\n \"id\": \"VideoRating\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"rating\": {\n \"type\": \"string\",\n + \ \"description\": \"Rating of a video.\",\n \"enum\": [\n + \ \"none\",\n \"like\",\n \"dislike\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"The entity + is liked.\",\n \"The entity is disliked.\"\n ]\n },\n + \ \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\"\n }\n + \ }\n },\n \"ActivityContentDetailsBulletin\": {\n \"type\": + \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the resource associated with a bulletin post. + @mutable youtube.activities.insert\"\n }\n },\n \"description\": + \"Details about a channel bulletin post.\",\n \"id\": \"ActivityContentDetailsBulletin\"\n + \ },\n \"PlaylistItemContentDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"PlaylistItemContentDetails\",\n \"properties\": {\n \"videoPublishedAt\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time that the video was published to YouTube.\",\n \"format\": + \"date-time\"\n },\n \"videoId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + a video. To retrieve the video resource, set the id query parameter to this + value in your API request.\"\n },\n \"note\": {\n \"type\": + \"string\",\n \"description\": \"A user-generated note for this item.\"\n + \ },\n \"startAt\": {\n \"type\": \"string\",\n \"description\": + \"The time, measured in seconds from the start of the video, when the video + should start playing. (The playlist owner can specify the times when the video + should start and stop playing when the video is played in the context of the + playlist.) The default value is 0.\"\n },\n \"endAt\": {\n \"type\": + \"string\",\n \"description\": \"The time, measured in seconds from + the start of the video, when the video should stop playing. (The playlist + owner can specify the times when the video should start and stop playing when + the video is played in the context of the playlist.) By default, assume that + the video.endTime is the end of the video.\"\n }\n }\n },\n + \ \"LiveStreamSnippet\": {\n \"properties\": {\n \"isDefaultStream\": + {\n \"type\": \"boolean\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"description\": \"The stream's title. The value must be between + 1 and 128 characters long.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the channel that is transmitting the stream.\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The stream's + description. The value cannot be longer than 10000 characters.\"\n },\n + \ \"publishedAt\": {\n \"type\": \"string\",\n \"description\": + \"The date and time that the stream was created.\",\n \"format\": + \"date-time\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveStreamSnippet\"\n },\n \"ChannelTopicDetails\": {\n \"id\": + \"ChannelTopicDetails\",\n \"properties\": {\n \"topicIds\": {\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": + \"A list of Freebase topic IDs associated with the channel. You can retrieve + information about each topic using the Freebase Topic API.\",\n \"type\": + \"array\"\n },\n \"topicCategories\": {\n \"type\": + \"array\",\n \"description\": \"A list of Wikipedia URLs that describe + the channel's content.\",\n \"items\": {\n \"type\": \"string\"\n + \ }\n }\n },\n \"type\": \"object\",\n \"description\": + \"Freebase topic information related to the channel.\"\n },\n \"ChannelSnippet\": + {\n \"properties\": {\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time that the channel was created.\"\n },\n \"country\": + {\n \"type\": \"string\",\n \"description\": \"The country + of the channel.\"\n },\n \"customUrl\": {\n \"type\": + \"string\",\n \"description\": \"The custom url of the channel.\"\n + \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"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. When displaying thumbnails in your application, make sure that + your code uses the image URLs exactly as they are returned in API responses. + For example, your application should not use the http domain instead of the + https domain in a URL returned in an API response. Beginning in July 2018, + channel thumbnail URLs will only be available in the https domain, which is + how the URLs appear in API responses. After that time, you might see broken + images in your application if it tries to load YouTube images from the http + domain. Thumbnail images might be empty for newly created channels and might + take up to one day to populate.\"\n },\n \"description\": {\n + \ \"description\": \"The description of the channel.\",\n \"type\": + \"string\"\n },\n \"localized\": {\n \"description\": + \"Localized title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The channel's title.\"\n },\n \"defaultLanguage\": {\n \"type\": + \"string\",\n \"description\": \"The language of the channel's default + title and description.\"\n }\n },\n \"id\": \"ChannelSnippet\",\n + \ \"description\": \"Basic details about a channel, including title, description + and thumbnails.\",\n \"type\": \"object\"\n },\n \"PlaylistPlayer\": + {\n \"type\": \"object\",\n \"id\": \"PlaylistPlayer\",\n \"properties\": + {\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": + \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\"\n + \ }\n }\n },\n \"VideoAgeGating\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoAgeGating\",\n \"properties\": {\n \"videoGameRating\": + {\n \"description\": \"Video game rating, if any.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"anyone\",\n + \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n + \ ]\n },\n \"restricted\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Age-restricted trailers. For redband trailers + and adult-rated video-games. Only users aged 18+ can view the content. The + the field is true the content is restricted to viewers aged 18+. Otherwise + The field won't be present.\"\n },\n \"alcoholContent\": {\n + \ \"type\": \"boolean\",\n \"description\": \"Indicates whether + or not the video has alcoholic beverage content. Only users of legal purchasing + age in a particular country, as identified by ICAP, can view the content.\"\n + \ }\n }\n },\n \"Member\": {\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#member\\\".\",\n \"default\": + \"youtube#member\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"MemberSnippet\",\n \"description\": \"The + snippet object contains basic details about the member.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"description\": \"A *member* resource + represents a member for a YouTube channel. A member provides recurring monetary + support to a creator and receives special benefits.\",\n \"id\": \"Member\",\n + \ \"type\": \"object\"\n },\n \"CommentSnippet\": {\n \"id\": + \"CommentSnippet\",\n \"properties\": {\n \"publishedAt\": {\n + \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time when the comment was originally published.\"\n },\n + \ \"canRate\": {\n \"description\": \"Whether the current viewer + can rate this comment.\",\n \"type\": \"boolean\"\n },\n \"moderationStatus\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"The + comment is available for public display.\",\n \"The comment is + awaiting review by a moderator.\",\n \"\",\n \"The comment + is unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ],\n \"description\": \"The comment's moderation status. + Will not be set if the comments were requested through the id filter.\"\n + \ },\n \"authorProfileImageUrl\": {\n \"description\": + \"The URL for the avatar of the user who posted the comment.\",\n \"type\": + \"string\"\n },\n \"authorChannelUrl\": {\n \"description\": + \"Link to the author's YouTube channel, if any.\",\n \"type\": \"string\"\n + \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the video the comment refers to, if any.\"\n },\n \"parentId\": + {\n \"type\": \"string\",\n \"description\": \"The unique + id of the parent comment, only set for replies.\"\n },\n \"viewerRating\": + {\n \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n + \ ],\n \"description\": \"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.\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"type\": \"string\"\n },\n + \ \"likeCount\": {\n \"description\": \"The total number of + likes this comment has received.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n },\n \"authorDisplayName\": {\n \"description\": + \"The name of the user who posted the comment.\",\n \"type\": \"string\"\n + \ },\n \"channelId\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"textOriginal\": + {\n \"description\": \"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.\",\n + \ \"type\": \"string\"\n },\n \"updatedAt\": {\n \"description\": + \"The date and time when the comment was last updated.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"textDisplay\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n + \ \"authorChannelId\": {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic + details about a comment, such as its author and text.\"\n },\n \"PlaylistContentDetails\": + {\n \"properties\": {\n \"itemCount\": {\n \"format\": + \"uint32\",\n \"description\": \"The number of videos in the playlist.\",\n + \ \"type\": \"integer\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"PlaylistContentDetails\"\n },\n \"SearchResultSnippet\": + {\n \"id\": \"SearchResultSnippet\",\n \"description\": \"Basic + details about a search result, including title, description and thumbnails + of the item referenced by the search result.\",\n \"properties\": {\n + \ \"thumbnails\": {\n \"description\": \"A map of thumbnail + images associated with the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"description\": {\n \"description\": \"A description + of the search result.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The value + that YouTube uses to uniquely identify the channel that published the resource + that the search result identifies.\"\n },\n \"title\": {\n \"description\": + \"The title of the search result.\",\n \"type\": \"string\"\n },\n + \ \"liveBroadcastContent\": {\n \"enum\": [\n \"none\",\n + \ \"upcoming\",\n \"live\",\n \"completed\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"It indicates if the resource (video or channel) has upcoming/active live + broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active + live broadcasts.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The live broadcast is upcoming.\",\n \"The live broadcast + is active.\",\n \"The live broadcast has been completed.\"\n ]\n + \ },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"description\": \"The creation date and time of the resource that + the search result identifies.\",\n \"format\": \"date-time\"\n },\n + \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": + \"The title of the channel that published the resource that the search result + identifies.\"\n }\n },\n \"type\": \"object\"\n },\n \"CaptionSnippet\": + {\n \"type\": \"object\",\n \"description\": \"Basic details about + a caption track, such as its language and name.\",\n \"properties\": + {\n \"isDraft\": {\n \"description\": \"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. @mutable youtube.captions.insert + youtube.captions.update\",\n \"type\": \"boolean\"\n },\n + \ \"trackKind\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"standard\",\n \"ASR\",\n \"forced\"\n + \ ],\n \"description\": \"The caption track's type.\"\n },\n + \ \"audioTrackType\": {\n \"enum\": [\n \"unknown\",\n + \ \"primary\",\n \"commentary\",\n \"descriptive\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The type of audio track associated with the caption track.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"isAutoSynced\": {\n \"description\": + \"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.\",\n \"type\": \"boolean\"\n },\n \"isCC\": + {\n \"description\": \"Indicates whether the track contains closed + captions for the deaf and hard of hearing. The default value is false.\",\n + \ \"type\": \"boolean\"\n },\n \"isLarge\": {\n \"type\": + \"boolean\",\n \"description\": \"Indicates whether the caption track + uses large text for the vision-impaired. The default value is false.\"\n },\n + \ \"isEasyReader\": {\n \"description\": \"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.\",\n \"type\": + \"boolean\"\n },\n \"lastUpdated\": {\n \"description\": + \"The date and time when the caption track was last updated.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"failureReason\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The reason that YouTube failed to process the caption track. This property + is only present if the state property's value is failed.\",\n \"enum\": + [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n + \ ]\n },\n \"status\": {\n \"enum\": [\n \"serving\",\n + \ \"syncing\",\n \"failed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"description\": \"The caption track's status.\",\n \"type\": + \"string\"\n },\n \"name\": {\n \"type\": \"string\",\n + \ \"description\": \"The name of the caption track. The name is intended + to be visible to the user as an option during playback.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n }\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video associated with + the caption track. @mutable youtube.captions.insert\",\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n }\n },\n \"language\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"description\": \"The language of + the caption track. The property value is a BCP-47 language tag.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"CaptionSnippet\"\n },\n + \ \"CdnSettings\": {\n \"description\": \"Brief description of the + live stream cdn settings.\",\n \"type\": \"object\",\n \"properties\": + {\n \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n + \ \"description\": \"The ingestionInfo object contains information + that YouTube provides that you need to transmit your RTMP or HTTP stream to + YouTube.\"\n },\n \"frameRate\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The frame rate + of the inbound video data.\",\n \"enum\": [\n \"30fps\",\n + \ \"60fps\",\n \"variable\"\n ]\n },\n + \ \"format\": {\n \"description\": \"The format of the video + stream that you are sending to Youtube. \",\n \"type\": \"string\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n }\n + \ },\n \"resolution\": {\n \"description\": \"The resolution + of the inbound video data.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n + \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n + \ ],\n \"type\": \"string\"\n },\n \"ingestionType\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \" The method or protocol used to transmit the video stream.\",\n \"type\": + \"string\",\n \"enum\": [\n \"rtmp\",\n \"dash\",\n + \ \"webrtc\",\n \"hls\"\n ]\n }\n },\n + \ \"id\": \"CdnSettings\"\n },\n \"ChannelStatus\": {\n \"description\": + \"JSON template for the status part of a channel.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"longUploadsStatus\": {\n \"type\": + \"string\",\n \"description\": \"The long uploads status of this + channel. See https://support.google.com/youtube/answer/71673 for more information.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n + \ \"disallowed\"\n ]\n },\n \"privacyStatus\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"Privacy status of the channel.\",\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ]\n },\n + \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"isLinked\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n + \ }\n },\n \"id\": \"ChannelStatus\"\n },\n \"ImageSettings\": + {\n \"type\": \"object\",\n \"id\": \"ImageSettings\",\n \"description\": + \"Branding properties for images associated with the channel.\",\n \"properties\": + {\n \"backgroundImageUrl\": {\n \"description\": \"The URL + for the background image shown on the video watch page. The image should be + 1200px by 615px, with a maximum file size of 128k.\",\n \"$ref\": + \"LocalizedProperty\"\n },\n \"bannerMobileHdImageUrl\": {\n + \ \"description\": \"Banner image. Mobile size high resolution (1280x360).\",\n + \ \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": + {\n \"description\": \"Banner image. Mobile size (640x175).\",\n + \ \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": + {\n \"description\": \"Banner image. Tablet size extra high resolution + (2560x424).\",\n \"type\": \"string\"\n },\n \"watchIconImageUrl\": + {\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": + {\n \"description\": \"The URL for the 640px by 70px banner image + that appears below the video player in the default view of the video watch + page. The URL for the image that appears above the top-left corner of the + video player. This is a 25-pixel-high image with a flexible width that cannot + exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n + \ \"bannerTabletImageUrl\": {\n \"description\": \"Banner image. + Tablet size (1707x283).\",\n \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size high resolution (1440x395).\"\n },\n \"bannerTabletHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size high resolution (2276x377).\"\n },\n \"bannerExternalUrl\": + {\n \"type\": \"string\",\n \"description\": \"This is generated + when a ChannelBanner.Insert request has succeeded for the given channel.\"\n + \ },\n \"largeBrandedBannerImageUrl\": {\n \"description\": + \"The URL for the 854px by 70px image that appears below the video player + in the expanded video view of the video watch page.\",\n \"$ref\": + \"LocalizedProperty\"\n },\n \"bannerMobileLowImageUrl\": {\n + \ \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size low resolution (320x88).\"\n },\n \"trackingImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL for + a 1px by 1px tracking pixel that can be used to collect statistics for views + of the channel or video pages.\"\n },\n \"bannerTabletLowImageUrl\": + {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n + \ \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": + {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n + \ \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size medium/high resolution (960x263).\"\n },\n \"bannerTvLowImageUrl\": + {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n + \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The image map script for the small banner image.\"\n },\n \"bannerImageUrl\": + {\n \"description\": \"Banner image. Desktop size (1060x175).\",\n + \ \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size medium resolution (1280x720).\"\n },\n \"largeBrandedBannerImageImapScript\": + {\n \"description\": \"The image map script for the large banner + image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTvImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size extra high resolution (2120x1192).\"\n }\n }\n },\n + \ \"LiveChatMessageSnippet\": {\n \"type\": \"object\",\n \"properties\": + {\n \"superStickerDetails\": {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n + \ \"description\": \"Details about the Super Sticker event, this is + only set if the type is 'superStickerEvent'.\"\n },\n \"newSponsorDetails\": + {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": + \"Details about the New Member Announcement event, this is only set if the + type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term + for \\\"sponsor\\\".\"\n },\n \"fanFundingEventDetails\": {\n + \ \"$ref\": \"LiveChatFanFundingEventDetails\",\n \"description\": + \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n + \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n + \ \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n + \ },\n \"memberMilestoneChatDetails\": {\n \"description\": + \"Details about the Member Milestone Chat event, this is only set if the type + is 'memberMilestoneChatEvent'.\",\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n + \ },\n \"giftMembershipReceivedDetails\": {\n \"description\": + \"Details about the Gift Membership Received event, this is only set if the + type is 'giftMembershipReceivedEvent'.\",\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n + \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n + \ },\n \"textMessageDetails\": {\n \"description\": + \"Details about the text message, this is only set if the type is 'textMessageEvent'.\",\n + \ \"$ref\": \"LiveChatTextMessageDetails\"\n },\n \"userBannedDetails\": + {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n + \ \"membershipGiftingDetails\": {\n \"description\": \"Details + about the Membership Gifting event, this is only set if the type is 'membershipGiftingEvent'.\",\n + \ \"$ref\": \"LiveChatMembershipGiftingDetails\"\n },\n \"publishedAt\": + {\n \"description\": \"The date and time when the message was orignally + published.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n + \ },\n \"displayMessage\": {\n \"type\": \"string\",\n + \ \"description\": \"Contains a string that can be displayed to the + user. If this field is not present the message is silent, at the moment only + messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\"\n },\n + \ \"authorChannelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the user that authored this message, this field is not always + filled. textMessageEvent - the user that wrote the message fanFundingEvent + - the user that funded the broadcast newSponsorEvent - the user that just + became a sponsor memberMilestoneChatEvent - the member that sent the message + membershipGiftingEvent - the user that made the purchase giftMembershipReceivedEvent + - the user that received the gift membership messageDeletedEvent - the moderator + that took the action messageRetractedEvent - the author that retracted their + message userBannedEvent - the moderator that took the action superChatEvent + - the user that made the purchase superStickerEvent - the user that made the + purchase\"\n },\n \"hasDisplayContent\": {\n \"description\": + \"Whether the message has display content that should be displayed to users.\",\n + \ \"type\": \"boolean\"\n },\n \"type\": {\n \"description\": + \"The type of message, this will always be present, it determines the contents + of the message as well as which fields will be present.\",\n \"enum\": + [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n + \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n + \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n + \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n + \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n + \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n + \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n + \ \"description\": \"Details about the Super Chat event, this is only + set if the type is 'superChatEvent'.\"\n }\n },\n \"id\": + \"LiveChatMessageSnippet\",\n \"description\": \"Next ID: 33\"\n },\n + \ \"CommentThreadListResponse\": {\n \"properties\": {\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n + \ \"default\": \"youtube#commentThreadListResponse\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"items\": {\n \"description\": + \"A list of comment threads that match the request criteria.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"CommentThread\"\n + \ }\n }\n },\n \"type\": \"object\",\n \"id\": + \"CommentThreadListResponse\"\n },\n \"ActivityListResponse\": {\n \"id\": + \"ActivityListResponse\",\n \"type\": \"object\",\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n + \ \"description\": \"General pagination information.\"\n },\n + \ \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"default\": \"youtube#activityListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"Activity\"\n },\n \"type\": \"array\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"ActivityContentDetailsPromotedItem\": {\n \"properties\": + {\n \"destinationUrl\": {\n \"description\": \"The URL the + client should direct the user to, if the user chooses to visit the advertiser's + website.\",\n \"type\": \"string\"\n },\n \"videoId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the promoted video.\",\n \"type\": \"string\"\n },\n \"impressionUrl\": + {\n \"type\": \"array\",\n \"description\": \"The list of + impression URLs. The client should ping all of these URLs to indicate that + the user was shown this promoted item.\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"descriptionText\": {\n \"type\": + \"string\",\n \"description\": \"The text description to accompany + the promoted item.\"\n },\n \"clickTrackingUrl\": {\n \"description\": + \"The URL the client should ping to indicate that the user clicked through + on this promoted item.\",\n \"type\": \"string\"\n },\n \"forecastingUrl\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"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.\",\n \"type\": \"array\"\n + \ },\n \"customCtaButtonText\": {\n \"description\": + \"The custom call-to-action button text. If specified, it will override the + default button text for the cta_type.\",\n \"type\": \"string\"\n + \ },\n \"ctaType\": {\n \"enum\": [\n \"ctaTypeUnspecified\",\n + \ \"visitAdvertiserSite\"\n ],\n \"description\": + \"The type of call-to-action, a message to the user indicating action that + can be taken.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"creativeViewUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL the + client should ping to indicate that the user was shown this promoted item.\"\n + \ },\n \"adTag\": {\n \"type\": \"string\",\n \"description\": + \"The URL the client should fetch to request a promoted item.\"\n }\n + \ },\n \"id\": \"ActivityContentDetailsPromotedItem\",\n \"type\": + \"object\",\n \"description\": \"Details about a resource which is being + promoted.\"\n },\n \"RelatedEntity\": {\n \"properties\": {\n \"entity\": + {\n \"$ref\": \"Entity\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"RelatedEntity\"\n },\n \"ChannelSectionListResponse\": + {\n \"properties\": {\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#channelSectionListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"description\": \"A list of ChannelSections + that match the request criteria.\",\n \"type\": \"array\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n }\n },\n \"id\": \"ChannelSectionListResponse\",\n + \ \"type\": \"object\"\n },\n \"PlaylistListResponse\": {\n \"type\": + \"object\",\n \"id\": \"PlaylistListResponse\",\n \"properties\": + {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"Playlist\"\n },\n + \ \"description\": \"A list of playlists that match the request criteria\",\n + \ \"type\": \"array\"\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n },\n \"kind\": {\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n + \ \"default\": \"youtube#playlistListResponse\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n }\n }\n },\n \"SubscriptionContentDetails\": {\n + \ \"description\": \"Details about the content to witch a subscription + refers.\",\n \"type\": \"object\",\n \"properties\": {\n \"activityType\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The type of activity + this subscription is for (only uploads, everything).\",\n \"type\": + \"string\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n + \ \"all\",\n \"uploads\"\n ]\n },\n \"newItemCount\": + {\n \"description\": \"The number of new items in the subscription + since its content was last read.\",\n \"format\": \"uint32\",\n \"type\": + \"integer\"\n },\n \"totalItemCount\": {\n \"description\": + \"The approximate number of items that the subscription points to.\",\n \"format\": + \"uint32\",\n \"type\": \"integer\"\n }\n },\n \"id\": + \"SubscriptionContentDetails\"\n },\n \"ChannelSettings\": {\n \"properties\": + {\n \"defaultTab\": {\n \"description\": \"Which content tab + users should see when viewing the channel.\",\n \"type\": \"string\"\n + \ },\n \"profileColor\": {\n \"description\": \"A prominent + color that can be rendered on this channel page.\",\n \"type\": \"string\"\n + \ },\n \"showRelatedChannels\": {\n \"description\": + \"Whether related channels should be proposed.\",\n \"type\": \"boolean\"\n + \ },\n \"defaultLanguage\": {\n \"type\": \"string\"\n + \ },\n \"unsubscribedTrailer\": {\n \"description\": + \"The trailer of the channel, for users that are not subscribers.\",\n \"type\": + \"string\"\n },\n \"trackingAnalyticsAccountId\": {\n \"type\": + \"string\",\n \"description\": \"The ID for a Google Analytics account + to track and measure traffic to the channels.\"\n },\n \"featuredChannelsTitle\": + {\n \"type\": \"string\",\n \"description\": \"Title for + the featured channels tab.\"\n },\n \"moderateComments\": {\n + \ \"type\": \"boolean\",\n \"description\": \"Whether user-submitted + comments left on the channel page need to be approved by the channel owner + to be publicly visible.\"\n },\n \"title\": {\n \"description\": + \"Specifies the channel title.\",\n \"type\": \"string\"\n },\n + \ \"country\": {\n \"description\": \"The country of the channel.\",\n + \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": + \"Specifies the channel description.\",\n \"type\": \"string\"\n + \ },\n \"keywords\": {\n \"type\": \"string\",\n \"description\": + \"Lists keywords associated with the channel, comma-separated.\"\n },\n + \ \"featuredChannelsUrls\": {\n \"description\": \"The list + of featured channels.\",\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"type\": \"array\"\n },\n \"showBrowseView\": + {\n \"description\": \"Whether the tab to browse the videos should + be displayed.\",\n \"type\": \"boolean\"\n }\n },\n \"description\": + \"Branding properties for the channel view.\",\n \"id\": \"ChannelSettings\",\n + \ \"type\": \"object\"\n },\n \"SuperChatEventListResponse\": {\n + \ \"id\": \"SuperChatEventListResponse\",\n \"properties\": {\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#superChatEventListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n + \ },\n \"type\": \"array\",\n \"description\": \"A + list of Super Chat purchases that match the request criteria.\"\n },\n + \ \"nextPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the next page + in the result set.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelBrandingSettings\": + {\n \"type\": \"object\",\n \"id\": \"ChannelBrandingSettings\",\n + \ \"description\": \"Branding properties of a YouTube channel.\",\n \"properties\": + {\n \"channel\": {\n \"description\": \"Branding properties + for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n },\n + \ \"image\": {\n \"$ref\": \"ImageSettings\",\n \"description\": + \"Branding properties for branding images.\"\n },\n \"watch\": + {\n \"description\": \"Branding properties for the watch page.\",\n + \ \"$ref\": \"WatchSettings\"\n },\n \"hints\": {\n + \ \"description\": \"Additional experimental branding properties.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"PropertyValue\"\n }\n }\n }\n },\n \"MembershipsDuration\": + {\n \"type\": \"object\",\n \"properties\": {\n \"memberTotalDurationMonths\": + {\n \"description\": \"The cumulative time the user has been a member + across all levels in complete months (the time is rounded down to the nearest + integer).\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n + \ },\n \"memberSince\": {\n \"description\": \"The date + and time when the user became a continuous member across all levels.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"MembershipsDuration\"\n + \ },\n \"ChannelSection\": {\n \"id\": \"ChannelSection\",\n \"properties\": + {\n \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the channel section, such as its type, style and title.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel section.\"\n },\n \"kind\": + {\n \"default\": \"youtube#channelSection\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n + \ \"type\": \"string\"\n },\n \"targeting\": {\n \"$ref\": + \"ChannelSectionTargeting\",\n \"description\": \"The targeting object + contains basic targeting settings about the channel section.\"\n },\n + \ \"localizations\": {\n \"description\": \"Localizations for + different languages\",\n \"type\": \"object\",\n \"additionalProperties\": + {\n \"$ref\": \"ChannelSectionLocalization\"\n }\n },\n + \ \"contentDetails\": {\n \"description\": \"The contentDetails + object contains details about the channel section content, such as a list + of playlists or channels featured in the section.\",\n \"$ref\": + \"ChannelSectionContentDetails\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"ChannelSectionSnippet\": {\n \"description\": + \"Basic details about a channel section, including title, style and position.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"title\": {\n + \ \"description\": \"The channel section's title for multiple_playlists + and multiple_channels.\",\n \"type\": \"string\"\n },\n \"localized\": + {\n \"description\": \"Localized title, read-only.\",\n \"$ref\": + \"ChannelSectionLocalization\"\n },\n \"type\": {\n \"enum\": + [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n + \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n + \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n + \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n + \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n + \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The type of the channel section.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"style\": {\n \"enum\": + [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n + \ \"verticalList\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The style of the channel section.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that published + the channel section.\"\n },\n \"position\": {\n \"description\": + \"The position of the channel section in the channel.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The language + of the channel section's default title and description.\"\n }\n },\n + \ \"id\": \"ChannelSectionSnippet\"\n },\n \"MemberSnippet\": {\n + \ \"type\": \"object\",\n \"id\": \"MemberSnippet\",\n \"properties\": + {\n \"memberDetails\": {\n \"description\": \"Details about + the member.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n + \ \"membershipsDetails\": {\n \"$ref\": \"MembershipsDetails\",\n + \ \"description\": \"Details about the user's membership.\"\n },\n + \ \"creatorChannelId\": {\n \"description\": \"The id of the + channel that's offering memberships.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"ThirdPartyLinkListResponse\": {\n \"id\": + \"ThirdPartyLinkListResponse\",\n \"type\": \"object\",\n \"properties\": + {\n \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#thirdPartyLinkListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"type\": + \"array\"\n }\n }\n },\n \"ThirdPartyLinkStatus\": {\n \"id\": + \"ThirdPartyLinkStatus\",\n \"properties\": {\n \"linkStatus\": + {\n \"type\": \"string\",\n \"enum\": [\n \"unknown\",\n + \ \"failed\",\n \"pending\",\n \"linked\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n }\n },\n \"description\": + \"The third-party link status object contains information about the status + of the link.\",\n \"type\": \"object\"\n },\n \"VideoRecordingDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"recordingDate\": + {\n \"description\": \"The date and time when the video was recorded.\",\n + \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n + \ \"location\": {\n \"$ref\": \"GeoPoint\",\n \"description\": + \"The geolocation information associated with the video.\"\n },\n \"locationDescription\": + {\n \"type\": \"string\",\n \"description\": \"The text + description of the location where the video was recorded.\"\n }\n },\n + \ \"id\": \"VideoRecordingDetails\",\n \"description\": \"Recording + information associated with the video.\"\n },\n \"ActivityContentDetailsUpload\": + {\n \"description\": \"Information about the uploaded video.\",\n \"id\": + \"ActivityContentDetailsUpload\",\n \"properties\": {\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the uploaded video.\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"VideoAbuseReport\": {\n \"id\": + \"VideoAbuseReport\",\n \"properties\": {\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": + \"string\"\n },\n \"reasonId\": {\n \"type\": \"string\",\n + \ \"description\": \"The high-level, or primary, reason that the content + is abusive. The value is an abuse report reason ID.\"\n },\n \"secondaryReasonId\": + {\n \"description\": \"The specific, or secondary, reason that this + content is abusive (if available). The value is an abuse report reason ID + that is a valid secondary reason for the primary reason.\",\n \"type\": + \"string\"\n },\n \"language\": {\n \"type\": \"string\",\n + \ \"description\": \"The language that the content was viewed in.\"\n + \ },\n \"comments\": {\n \"description\": \"Additional + comments regarding the abuse report.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessageAuthorDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"displayName\": + {\n \"type\": \"string\",\n \"description\": \"The channel's + display name.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The YouTube channel ID.\"\n },\n + \ \"channelUrl\": {\n \"type\": \"string\",\n \"description\": + \"The channel's URL.\"\n },\n \"isChatSponsor\": {\n \"description\": + \"Whether the author is a sponsor of the live chat.\",\n \"type\": + \"boolean\"\n },\n \"isChatModerator\": {\n \"description\": + \"Whether the author is a moderator of the live chat.\",\n \"type\": + \"boolean\"\n },\n \"isVerified\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether the author's identity has been verified + by YouTube.\"\n },\n \"profileImageUrl\": {\n \"description\": + \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n + \ \"isChatOwner\": {\n \"type\": \"boolean\",\n \"description\": + \"Whether the author is the owner of the live chat.\"\n }\n },\n + \ \"id\": \"LiveChatMessageAuthorDetails\"\n },\n \"SuperChatEventSnippet\": + {\n \"type\": \"object\",\n \"id\": \"SuperChatEventSnippet\",\n + \ \"properties\": {\n \"displayString\": {\n \"description\": + \"A rendered string that displays the purchase amount and currency (e.g., + \\\"$1.00\\\"). The string is rendered for the given language.\",\n \"type\": + \"string\"\n },\n \"messageType\": {\n \"format\": + \"uint32\",\n \"description\": \"The tier for the paid message, which + is based on the amount of money spent to purchase the message.\",\n \"type\": + \"integer\"\n },\n \"amountMicros\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented + as 1000000.\"\n },\n \"currency\": {\n \"description\": + \"The currency in which the purchase was made. ISO 4217.\",\n \"type\": + \"string\"\n },\n \"superStickerMetadata\": {\n \"description\": + \"If this event is a Super Sticker event, this field will contain metadata + about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n + \ },\n \"isSuperStickerEvent\": {\n \"type\": \"boolean\",\n + \ \"description\": \"True if this event is a Super Sticker event.\"\n + \ },\n \"supporterDetails\": {\n \"description\": \"Details + about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n + \ \"createdAt\": {\n \"format\": \"date-time\",\n \"description\": + \"The date and time when the event occurred.\",\n \"type\": \"string\"\n + \ },\n \"commentText\": {\n \"description\": \"The text + contents of the comment left by the user.\",\n \"type\": \"string\"\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"Channel id where the event occurred.\"\n }\n }\n },\n \"AbuseType\": + {\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"AbuseType\",\n \"type\": \"object\"\n + \ },\n \"VideoLocalization\": {\n \"id\": \"VideoLocalization\",\n + \ \"properties\": {\n \"description\": {\n \"description\": + \"Localized version of the video's description.\",\n \"type\": \"string\"\n + \ },\n \"title\": {\n \"description\": \"Localized version + of the video's title.\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Localized versions of certain video properties (e.g. + title).\",\n \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": + {\n \"id\": \"VideoFileDetailsVideoStream\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"frameRateFps\": {\n \"type\": + \"number\",\n \"description\": \"The video stream's frame rate, in + frames per second.\",\n \"format\": \"double\"\n },\n \"codec\": + {\n \"type\": \"string\",\n \"description\": \"The video + codec that the stream uses.\"\n },\n \"vendor\": {\n \"type\": + \"string\",\n \"description\": \"A value that uniquely identifies + a video vendor. Typically, the value is a four-letter vendor code.\"\n },\n + \ \"heightPixels\": {\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"description\": \"The encoded video content's height + in pixels.\"\n },\n \"rotation\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The amount that YouTube needs to rotate the original source content to properly + display the video.\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n + \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n + \ ]\n },\n \"aspectRatio\": {\n \"format\": + \"double\",\n \"description\": \"The video content's display aspect + ratio, which specifies the aspect ratio in which the video should be displayed.\",\n + \ \"type\": \"number\"\n },\n \"bitrateBps\": {\n \"type\": + \"string\",\n \"description\": \"The video stream's bitrate, in bits + per second.\",\n \"format\": \"uint64\"\n },\n \"widthPixels\": + {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The encoded video content's width in pixels. You can calculate the video's + encoding aspect ratio as width_pixels / height_pixels.\"\n }\n },\n + \ \"description\": \"Information about a video stream.\"\n },\n \"LocalizedProperty\": + {\n \"type\": \"object\",\n \"properties\": {\n \"localized\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"LocalizedString\"\n }\n },\n \"defaultLanguage\": + {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The + language of the default property.\"\n },\n \"default\": {\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"LocalizedProperty\"\n + \ },\n \"ActivityContentDetailsFavorite\": {\n \"description\": + \"Information about a video that was marked as a favorite video.\",\n \"id\": + \"ActivityContentDetailsFavorite\",\n \"properties\": {\n \"resourceId\": + {\n \"description\": \"The resourceId object contains information + that identifies the resource that was marked as a favorite.\",\n \"$ref\": + \"ResourceId\"\n }\n },\n \"type\": \"object\"\n },\n + \ \"VideoProcessingDetails\": {\n \"id\": \"VideoProcessingDetails\",\n + \ \"description\": \"Describes processing status and progress and availability + of some other Video resource parts.\",\n \"properties\": {\n \"processingIssuesAvailability\": + {\n \"description\": \"This value indicates whether the video processing + engine has generated suggestions that might improve YouTube's ability to process + the the video, warnings that explain video processing problems, or errors + that cause video processing problems. You can retrieve these suggestions by + requesting the suggestions part in your videos.list() request.\",\n \"type\": + \"string\"\n },\n \"editorSuggestionsAvailability\": {\n \"description\": + \"This value indicates whether video editing suggestions, which might improve + video quality or the playback experience, are available for the video. You + can retrieve these suggestions by requesting the suggestions part in your + videos.list() request.\",\n \"type\": \"string\"\n },\n \"processingStatus\": + {\n \"type\": \"string\",\n \"description\": \"The video's + processing status. This value indicates whether YouTube was able to process + the video or if the video is still being processed.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"processing\",\n \"succeeded\",\n + \ \"failed\",\n \"terminated\"\n ]\n },\n + \ \"tagSuggestionsAvailability\": {\n \"type\": \"string\",\n + \ \"description\": \"This value indicates whether keyword (tag) suggestions + are available for the video. Tags can be added to a video's metadata to make + it easier for other users to find the video. You can retrieve these suggestions + by requesting the suggestions part in your videos.list() request.\"\n },\n + \ \"thumbnailsAvailability\": {\n \"description\": \"This value + indicates whether thumbnail images have been generated for the video.\",\n + \ \"type\": \"string\"\n },\n \"processingFailureReason\": + {\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n + \ \"streamingFailed\",\n \"other\"\n ],\n \"description\": + \"The reason that YouTube failed to process the video. This property will + only have a value if the processingStatus property's value is failed.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"fileDetailsAvailability\": {\n \"description\": \"This + value indicates whether file details are available for the uploaded video. + You can retrieve a video's file details by requesting the fileDetails part + in your videos.list() request.\",\n \"type\": \"string\"\n },\n + \ \"processingProgress\": {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n + \ \"description\": \"The processingProgress object contains information + about the progress YouTube has made in processing the video. The values are + really only relevant if the video's processing status is processing.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsChannelItem\": + {\n \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + that was added to the channel.\",\n \"$ref\": \"ResourceId\"\n }\n + \ },\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"type\": + \"object\",\n \"description\": \"Details about a resource which was added + to a channel.\"\n },\n \"Playlist\": {\n \"description\": \"A *playlist* + resource represents a YouTube playlist. A playlist is a collection of videos + that can be viewed sequentially and shared with other users. A playlist can + contain up to 200 videos, and YouTube does not limit the number of playlists + that each user creates. By default, playlists are publicly visible to other + users, but playlists can be public or private. YouTube also uses playlists + to identify special collections of videos for a channel, such as: - uploaded + videos - favorite videos - positively rated (liked) videos - watch history + - watch later To be more specific, these lists are associated with a channel, + which is a collection of a person, group, or company's videos, playlists, + and other YouTube information. You can retrieve the playlist IDs for each + of these lists from the channel resource for a given channel. You can then + use the playlistItems.list method to retrieve any of those lists. You can + also add or remove items from those lists by calling the playlistItems.insert + and playlistItems.delete methods.\",\n \"properties\": {\n \"snippet\": + {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": \"The + snippet object contains basic details about the playlist, such as its title + and description.\"\n },\n \"player\": {\n \"description\": + \"The player object contains information that you would use to play the playlist + in an embedded player.\",\n \"$ref\": \"PlaylistPlayer\"\n },\n + \ \"localizations\": {\n \"description\": \"Localizations for + different languages\",\n \"type\": \"object\",\n \"additionalProperties\": + {\n \"$ref\": \"PlaylistLocalization\"\n }\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#playlist\",\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n },\n + \ \"contentDetails\": {\n \"description\": \"The contentDetails + object contains information like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the playlist.\"\n },\n \"status\": + {\n \"description\": \"The status object contains status information + for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"Playlist\"\n },\n + \ \"ChannelSectionTargeting\": {\n \"properties\": {\n \"regions\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"The region the channel section is targeting.\",\n + \ \"type\": \"array\"\n },\n \"languages\": {\n \"type\": + \"array\",\n \"description\": \"The language the channel section + is targeting.\",\n \"items\": {\n \"type\": \"string\"\n + \ }\n },\n \"countries\": {\n \"items\": {\n + \ \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"The country the channel section is targeting.\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelSectionTargeting\",\n + \ \"description\": \"ChannelSection targeting setting.\"\n },\n \"LiveBroadcastContentDetails\": + {\n \"id\": \"LiveBroadcastContentDetails\",\n \"properties\": {\n + \ \"enableDvr\": {\n \"type\": \"boolean\",\n \"description\": + \"This setting determines whether viewers can access DVR controls while watching + the video. DVR controls enable the viewer to control the video playback experience + by pausing, rewinding, or fast forwarding content. The default value for this + property is true. *Important:* You must set the value to true and also set + the enableArchive property's value to true if you want to make playback available + immediately after the broadcast ends.\"\n },\n \"startWithSlate\": + {\n \"description\": \"This setting indicates whether the broadcast + should automatically begin with an in-stream slate when you update the broadcast's + status to live. After updating the status, you then need to send a liveCuepoints.insert + request that sets the cuepoint's eventState to end to remove the in-stream + slate and make your broadcast stream visible to viewers.\",\n \"type\": + \"boolean\"\n },\n \"closedCaptionsType\": {\n \"enum\": + [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n + \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"enableClosedCaptions\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether HTTP POST closed + captioning is enabled for this broadcast. The ingestion URL of the closed + captions is returned through the liveStreams API. This is mutually exclusive + with using the closed_captions_type property, and is equivalent to setting + closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n \"monitorStream\": + {\n \"description\": \"The monitorStream object contains information + about the monitor stream, which the broadcaster can use to review the event + content before the broadcast stream is shown publicly.\",\n \"$ref\": + \"MonitorStreamInfo\"\n },\n \"enableLowLatency\": {\n \"type\": + \"boolean\",\n \"description\": \"Indicates whether this broadcast + has low latency enabled.\"\n },\n \"enableAutoStart\": {\n \"type\": + \"boolean\",\n \"description\": \"This setting indicates whether + auto start is enabled for this broadcast. The default value for this property + is false. This setting can only be used by Events.\"\n },\n \"projection\": + {\n \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n + \ \"360\",\n \"mesh\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The projection format of this broadcast. This defaults to rectangular.\"\n + \ },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether the broadcast + video can be played in an embedded player. If you choose to archive the video + (using the enableArchive property), this setting will also apply to the archived + video.\"\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"description\": + \"The date and time that the live stream referenced by boundStreamId was last + updated.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n + \ },\n \"enableContentEncryption\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether YouTube should + enable content encryption for the broadcast.\"\n },\n \"mesh\": + {\n \"description\": \"The mesh for projecting the video if projection + is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding + of 3D mesh data that follows the Spherical Video V2 RFC specification for + an mshp box, excluding the box size and type but including the following four + reserved zero bytes for the version and flags.\",\n \"type\": \"string\",\n + \ \"format\": \"byte\"\n },\n \"stereoLayout\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n + \ \"leftRight\",\n \"topBottom\"\n ],\n \"description\": + \"The 3D stereo layout of this broadcast. This defaults to mono.\"\n },\n + \ \"boundStreamId\": {\n \"description\": \"This value uniquely + identifies the live stream bound to the broadcast.\",\n \"type\": + \"string\"\n },\n \"enableAutoStop\": {\n \"description\": + \"This setting indicates whether auto stop is enabled for this broadcast. + The default value for this property is false. This setting can only be used + by Events.\",\n \"type\": \"boolean\"\n },\n \"latencyPreference\": + {\n \"enumDescriptions\": [\n \"\",\n \"Best + for: highest quality viewer playbacks and higher resolutions.\",\n \"Best + for: near real-time interaction, with minimal playback buffering.\",\n \"Best + for: real-time interaction Does not support: Closed captions, 1440p, and 4k + resolutions\"\n ],\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n + \ \"normal\",\n \"low\",\n \"ultraLow\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL + should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true + LATENCY_ULTRA_LOW should have enable_low_latency omitted.\"\n },\n + \ \"recordFromStart\": {\n \"type\": \"boolean\",\n \"description\": + \"Automatically start recording after the event goes live. The default value + for this property is true. *Important:* You must also set the enableDvr property's + value to true if you want the playback to be available immediately after the + broadcast ends. If you set this property's value to true but do not also set + the enableDvr property to true, there may be a delay of around one day before + the archived video will be available for playback.\"\n }\n },\n + \ \"description\": \"Detailed settings of a broadcast.\",\n \"type\": + \"object\"\n },\n \"Thumbnail\": {\n \"type\": \"object\",\n \"description\": + \"A thumbnail is an image representing a YouTube resource.\",\n \"id\": + \"Thumbnail\",\n \"properties\": {\n \"width\": {\n \"format\": + \"uint32\",\n \"description\": \"(Optional) Width of the thumbnail + image.\",\n \"type\": \"integer\"\n },\n \"url\": {\n + \ \"description\": \"The thumbnail image's URL.\",\n \"type\": + \"string\"\n },\n \"height\": {\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"description\": \"(Optional) + Height of the thumbnail image.\"\n }\n }\n },\n \"ChannelAuditDetails\": + {\n \"description\": \"The auditDetails object encapsulates channel data + that is relevant for YouTube Partners during the audit process.\",\n \"type\": + \"object\",\n \"properties\": {\n \"communityGuidelinesGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel respects the community guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": + {\n \"description\": \"Whether or not the channel has any copyright + strikes.\",\n \"type\": \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": + {\n \"description\": \"Whether or not the channel has any unresolved + claims.\",\n \"type\": \"boolean\"\n }\n },\n \"id\": + \"ChannelAuditDetails\"\n },\n \"I18nLanguageSnippet\": {\n \"type\": + \"object\",\n \"description\": \"Basic details about an i18n language, + such as language code and human-readable name.\",\n \"properties\": {\n + \ \"name\": {\n \"description\": \"The human-readable name + of the language in the language itself.\",\n \"type\": \"string\"\n + \ },\n \"hl\": {\n \"description\": \"A short BCP-47 + code that uniquely identifies a language.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"I18nLanguageSnippet\"\n },\n \"LiveChatMembershipGiftingDetails\": + {\n \"properties\": {\n \"giftMembershipsCount\": {\n \"format\": + \"int32\",\n \"description\": \"The number of gift memberships purchased + by the user.\",\n \"type\": \"integer\"\n },\n \"giftMembershipsLevelName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the level of the gift memberships purchased by the user. The Level names + are defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\"\n }\n },\n \"id\": \"LiveChatMembershipGiftingDetails\",\n + \ \"type\": \"object\"\n },\n \"VideoSuggestionsTagSuggestion\": + {\n \"properties\": {\n \"categoryRestricts\": {\n \"description\": + \"A set of video categories for which the tag is relevant. You can use this + information to display appropriate tag suggestions based on the video category + that the video uploader associates with the video. By default, tag suggestions + are relevant for all categories if there are no restricts defined for the + keyword.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"tag\": {\n \"type\": + \"string\",\n \"description\": \"The keyword tag suggested for the + video.\"\n }\n },\n \"id\": \"VideoSuggestionsTagSuggestion\",\n + \ \"type\": \"object\",\n \"description\": \"A single tag suggestion + with it's relevance information.\"\n },\n \"ThumbnailSetResponse\": + {\n \"type\": \"object\",\n \"id\": \"ThumbnailSetResponse\",\n + \ \"properties\": {\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"ThumbnailDetails\"\n },\n \"description\": + \"A list of thumbnails.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"default\": \"youtube#thumbnailSetResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"VideoTopicDetails\": + {\n \"id\": \"VideoTopicDetails\",\n \"properties\": {\n \"topicIds\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"A list of Freebase + topic IDs that are centrally associated with the video. These are topics that + are centrally featured in the video, and it can be said that the video is + mainly about each of these. You can retrieve information about each topic + using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase + Topic API.\"\n },\n \"relevantTopicIds\": {\n \"type\": + \"array\",\n \"description\": \"Similar to topic_id, except that + these topics are merely relevant to the video. These are topics that may be + mentioned in, or appear in the video. You can retrieve information about each + topic using Freebase Topic API.\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"topicCategories\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"A list of Wikipedia URLs that provide a high-level description of the video's + content.\",\n \"type\": \"array\"\n }\n },\n \"description\": + \"Freebase topic information related to the video.\",\n \"type\": \"object\"\n + \ },\n \"Channel\": {\n \"id\": \"Channel\",\n \"properties\": + {\n \"status\": {\n \"$ref\": \"ChannelStatus\",\n \"description\": + \"The status object encapsulates information about the privacy status of the + channel.\"\n },\n \"brandingSettings\": {\n \"$ref\": + \"ChannelBrandingSettings\",\n \"description\": \"The brandingSettings + object encapsulates information about the branding of the channel.\"\n },\n + \ \"conversionPings\": {\n \"description\": \"The conversionPings + object encapsulates information about conversion pings that need to be respected + by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n },\n + \ \"contentDetails\": {\n \"description\": \"The contentDetails + object encapsulates information about the channel's content.\",\n \"$ref\": + \"ChannelContentDetails\"\n },\n \"contentOwnerDetails\": {\n + \ \"description\": \"The contentOwnerDetails object encapsulates channel + data that is relevant for YouTube Partners linked with the channel.\",\n \"$ref\": + \"ChannelContentOwnerDetails\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n \"description\": + \"The statistics object encapsulates statistics for the channel.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n \"description\": + \"The snippet object contains basic details about the channel, such as its + title, description, and thumbnail images.\"\n },\n \"auditDetails\": + {\n \"$ref\": \"ChannelAuditDetails\",\n \"description\": + \"The auditionDetails object encapsulates channel data that is relevant for + YouTube Partners during the audition process.\"\n },\n \"localizations\": + {\n \"description\": \"Localizations for different languages\",\n + \ \"type\": \"object\",\n \"additionalProperties\": {\n \"$ref\": + \"ChannelLocalization\"\n }\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the channel.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#channel\"\n + \ },\n \"topicDetails\": {\n \"description\": \"The + topicDetails object encapsulates information about Freebase topics associated + with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n }\n + \ },\n \"description\": \"A *channel* resource contains information + about a YouTube channel.\",\n \"type\": \"object\"\n },\n \"SuperChatEvent\": + {\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the Super Chat event.\"\n },\n \"snippet\": {\n \"$ref\": + \"SuperChatEventSnippet\",\n \"description\": \"The `snippet` object + contains basic details about the Super Chat event.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#superChatEvent\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"A + `__superChatEvent__` resource represents a Super Chat purchase on a YouTube + channel.\",\n \"id\": \"SuperChatEvent\"\n },\n \"ChannelProfileDetails\": + {\n \"id\": \"ChannelProfileDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"profileImageUrl\": {\n \"description\": + \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n + \ \"channelUrl\": {\n \"type\": \"string\",\n \"description\": + \"The channel's URL.\"\n },\n \"displayName\": {\n \"description\": + \"The channel's display name.\",\n \"type\": \"string\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The YouTube channel ID.\"\n }\n }\n },\n \"VideoGetRatingResponse\": + {\n \"type\": \"object\",\n \"id\": \"VideoGetRatingResponse\",\n + \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"VideoRating\"\n },\n + \ \"type\": \"array\",\n \"description\": \"A list of ratings + that match the request criteria.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#videoGetRatingResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n + \ }\n }\n },\n \"CommentThreadSnippet\": {\n \"properties\": + {\n \"topLevelComment\": {\n \"$ref\": \"Comment\",\n \"description\": + \"The top level comment of this thread.\"\n },\n \"videoId\": + {\n \"description\": \"The ID of the video the comments refer to, + if any. No video_id implies a channel discussion comment.\",\n \"type\": + \"string\"\n },\n \"canReply\": {\n \"type\": \"boolean\",\n + \ \"description\": \"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.\"\n },\n \"channelId\": {\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n \"totalReplyCount\": + {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The total number of replies (not including the top level comment).\"\n },\n + \ \"isPublic\": {\n \"type\": \"boolean\",\n \"description\": + \"Whether the thread (and therefore all its comments) is visible to all YouTube + users.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"CommentThreadSnippet\",\n \"description\": \"Basic details about a + comment thread.\"\n },\n \"WatchSettings\": {\n \"properties\": + {\n \"textColor\": {\n \"description\": \"The background color + for the video watch page's branded area.\",\n \"type\": \"string\"\n + \ },\n \"featuredPlaylistId\": {\n \"description\": + \"An ID that uniquely identifies a playlist that displays next to the video + player.\",\n \"type\": \"string\"\n },\n \"backgroundColor\": + {\n \"type\": \"string\",\n \"description\": \"The text + color for the video watch page's branded area.\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"Branding properties for the watch. All + deprecated.\",\n \"id\": \"WatchSettings\"\n },\n \"LiveBroadcastStatus\": + {\n \"description\": \"Live broadcast state.\",\n \"properties\": + {\n \"privacyStatus\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"description\": \"The broadcast's + privacy status. Note that the broadcast represents exactly one YouTube video, + so the privacy settings are identical to those supported for videos. In addition, + you can set this field by modifying the broadcast resource or by setting the + privacyStatus field of the corresponding video resource.\"\n },\n \"lifeCycleStatus\": + {\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n + \ \"ready\",\n \"testing\",\n \"live\",\n + \ \"complete\",\n \"revoked\",\n \"testStarting\",\n + \ \"liveStarting\"\n ],\n \"description\": \"The + broadcast's status. The status can be updated using the API's liveBroadcasts.transition + method.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"No value or the value is unknown.\",\n \"Incomplete + settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible + only to partner, may need special UI treatment\",\n \"Viper is + recording; this means the \\\"clock\\\" is running\",\n \"The broadcast + is finished.\",\n \"This broadcast was removed by admin action\",\n + \ \"Transition into TESTING has been requested\",\n \"Transition + into LIVE has been requested\"\n ]\n },\n \"recordingStatus\": + {\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n + \ \"notRecording\",\n \"recording\",\n \"recorded\"\n + \ ],\n \"description\": \"The broadcast's recording status.\",\n + \ \"enumDescriptions\": [\n \"No value or the value is + unknown.\",\n \"The recording has not yet been started.\",\n \"The + recording is currently on.\",\n \"The recording is completed, and + cannot be started again.\"\n ],\n \"type\": \"string\"\n + \ },\n \"liveBroadcastPriority\": {\n \"enum\": [\n + \ \"liveBroadcastPriorityUnspecified\",\n \"low\",\n + \ \"normal\",\n \"high\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Low priority broadcast: for low view count + HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: + for regular HoAs and broadcasts.\",\n \"High priority broadcast: + for high profile HoAs, like PixelCorp ones.\"\n ],\n \"type\": + \"string\",\n \"description\": \"Priority of the live broadcast event + (internal state).\"\n },\n \"selfDeclaredMadeForKids\": {\n + \ \"description\": \"This field will be set to True if the creator + declares the broadcast to be kids only: go/live-cw-work.\",\n \"type\": + \"boolean\"\n },\n \"madeForKids\": {\n \"description\": + \"Whether the broadcast is made for kids or not, decided by YouTube instead + of the creator. This field is read only.\",\n \"type\": \"boolean\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveBroadcastStatus\"\n + \ },\n \"LiveStreamListResponse\": {\n \"properties\": {\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"items\": {\n \"description\": + \"A list of live streams that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"LiveStream\"\n },\n \"type\": + \"array\"\n },\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"visitorId\": {\n + \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#liveStreamListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"LiveStreamListResponse\",\n \"type\": \"object\"\n },\n \"ChannelSectionContentDetails\": + {\n \"type\": \"object\",\n \"description\": \"Details about a channelsection, + including playlists and channels.\",\n \"properties\": {\n \"channels\": + {\n \"type\": \"array\",\n \"description\": \"The channel + ids for type multiple_channels.\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"playlists\": {\n \"description\": + \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, + only one playlistId is allowed.\",\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n }\n }\n },\n \"id\": + \"ChannelSectionContentDetails\"\n },\n \"LiveChatMessage\": {\n \"description\": + \"A *liveChatMessage* resource represents a chat message in a YouTube Live + Chat.\",\n \"type\": \"object\",\n \"id\": \"LiveChatMessage\",\n + \ \"properties\": {\n \"authorDetails\": {\n \"description\": + \"The authorDetails object contains basic details about the user that posted + this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n \"default\": + \"youtube#liveChatMessage\"\n },\n \"snippet\": {\n \"$ref\": + \"LiveChatMessageSnippet\",\n \"description\": \"The snippet object + contains basic details about the message.\"\n },\n \"id\": {\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the message.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"I18nLanguageListResponse\": {\n \"type\": \"object\",\n \"id\": + \"I18nLanguageListResponse\",\n \"properties\": {\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"description\": \"A + list of supported i18n languages. In this map, the i18n language ID is the + map key, and its value is the corresponding i18nLanguage resource.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n + \ }\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"default\": + \"youtube#i18nLanguageListResponse\"\n },\n \"visitorId\": {\n + \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": + \"string\"\n }\n }\n },\n \"I18nRegionListResponse\": {\n + \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n + \ \"default\": \"youtube#i18nRegionListResponse\"\n },\n \"items\": + {\n \"description\": \"A list of regions where YouTube is available. + In this map, the i18n region ID is the map key, and its value is the corresponding + i18nRegion resource.\",\n \"items\": {\n \"$ref\": \"I18nRegion\"\n + \ },\n \"type\": \"array\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n }\n + \ },\n \"id\": \"I18nRegionListResponse\"\n },\n \"PlaylistItemSnippet\": + {\n \"properties\": {\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the user that added the item to the playlist.\"\n },\n \"playlistId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify thGe playlist that the playlist item is + in.\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n + \ \"youtube.playlistItems.update\"\n ]\n }\n + \ },\n \"resourceId\": {\n \"description\": \"The id + object contains information that can be used to uniquely identify the resource + that is included in the playlist as the playlist item.\",\n \"$ref\": + \"ResourceId\",\n \"annotations\": {\n \"required\": [\n + \ \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n + \ ]\n }\n },\n \"videoOwnerChannelId\": {\n + \ \"description\": \"Channel id for the channel this video belongs + to.\",\n \"type\": \"string\"\n },\n \"position\": + {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The order in which the item appears in the playlist. The value uses a zero-based + index, so the first item has a position of 0, the second item has a position + of 1, and so forth.\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time that the item was added to the playlist.\"\n },\n + \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": + \"A map of thumbnail images associated with the playlist item. 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.\"\n },\n + \ \"title\": {\n \"description\": \"The item's title.\",\n + \ \"type\": \"string\"\n },\n \"videoOwnerChannelTitle\": + {\n \"description\": \"Channel title for the channel this video belongs + to.\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"description\": \"The item's description.\",\n \"type\": + \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel title for the channel that the playlist + item belongs to.\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"Basic details about a playlist, including title, description and thumbnails. + Basic details of a YouTube Playlist item provided by the author. Next ID: + 15\",\n \"id\": \"PlaylistItemSnippet\"\n },\n \"I18nRegionSnippet\": + {\n \"description\": \"Basic details about an i18n region, such as region + code and human-readable name.\",\n \"type\": \"object\",\n \"id\": + \"I18nRegionSnippet\",\n \"properties\": {\n \"name\": {\n \"description\": + \"The human-readable name of the region.\",\n \"type\": \"string\"\n + \ },\n \"gl\": {\n \"description\": \"The region code + as a 2-letter ISO country code.\",\n \"type\": \"string\"\n }\n + \ }\n }\n },\n \"basePath\": \"\"\n}\n" headers: Alt-Svc: - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 @@ -6190,7 +6186,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:41 GMT + - Thu, 09 Mar 2023 00:27:01 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: @@ -6220,15 +6216,15 @@ interactions: uri: https://youtube.googleapis.com/youtube/v3/search?part=snippet&q=%40Alex007&type=channel response: body: - string: "{\n \"kind\": \"youtube#searchListResponse\",\n \"etag\": \"mdd8OYc1OH6UcyvqPPD5ieho6iE\",\n - \ \"nextPageToken\": \"CAUQAA\",\n \"regionCode\": \"LT\",\n \"pageInfo\": - {\n \"totalResults\": 8,\n \"resultsPerPage\": 5\n },\n \"items\": - [\n {\n \"kind\": \"youtube#searchResult\",\n \"etag\": \"Os7Chh51mQuHn2IGea2NsanqcMY\",\n - \ \"id\": {\n \"kind\": \"youtube#channel\",\n \"channelId\": - \"UC3ptU7hyNeFlJdvQj2nZHJg\"\n },\n \"snippet\": {\n \"publishedAt\": - \"2011-10-25T18:32:10Z\",\n \"channelId\": \"UC3ptU7hyNeFlJdvQj2nZHJg\",\n - \ \"title\": \"Alex007SC2\",\n \"description\": \"Alex007 - \u0433\u043E\u043B\u043E\u0441 - StarCraft II, \u043C\u0430\u0442\u0435\u043C\u0430\u0442\u0438\u043A, \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0442\u043E\u0440, + string: "{\n \"kind\": \"youtube#searchListResponse\",\n \"etag\": \"ohaVu1yzE9TESNMipyD1Sec-_N4\",\n + \ \"regionCode\": \"LT\",\n \"pageInfo\": {\n \"totalResults\": 5,\n \"resultsPerPage\": + 3\n },\n \"items\": [\n {\n \"kind\": \"youtube#searchResult\",\n + \ \"etag\": \"jlHr8qwGug5pY0tlqO2MH4ywjzs\",\n \"id\": {\n \"kind\": + \"youtube#channel\",\n \"channelId\": \"UC3ptU7hyNeFlJdvQj2nZHJg\"\n + \ },\n \"snippet\": {\n \"publishedAt\": \"2011-10-25T18:32:10Z\",\n + \ \"channelId\": \"UC3ptU7hyNeFlJdvQj2nZHJg\",\n \"title\": \"Alex007SC2\",\n + \ \"description\": \"Alex007 - \u0433\u043E\u043B\u043E\u0441 StarCraft + II, \u043C\u0430\u0442\u0435\u043C\u0430\u0442\u0438\u043A, \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0442\u043E\u0440, YouTube-\u0431\u043B\u043E\u0433\u0433\u0435\u0440 \u0438 \u0433\u0435\u0439\u043C-\u0434\u0438\u0437\u0430\u0439\u043D\u0435\u0440. \u041D\u0430 \u044D\u0442\u043E\u043C \u043A\u0430\u043D\u0430\u043B\u0435 \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043D\u0430\u0439\u0442\u0438 @@ -6239,314 +6235,79 @@ interactions: \ }\n },\n \"channelTitle\": \"Alex007SC2\",\n \"liveBroadcastContent\": \"upcoming\",\n \"publishTime\": \"2011-10-25T18:32:10Z\"\n }\n \ },\n {\n \"kind\": \"youtube#searchResult\",\n \"etag\": - \"fppERMyqY9_ngiuuuyTRlC317eM\",\n \"id\": {\n \"kind\": \"youtube#channel\",\n - \ \"channelId\": \"UCeLxkCspqQAW4Pk8hdvW47w\"\n },\n \"snippet\": - {\n \"publishedAt\": \"2018-08-16T22:21:08Z\",\n \"channelId\": - \"UCeLxkCspqQAW4Pk8hdvW47w\",\n \"title\": \"Alex007 - Topic\",\n \"description\": - \"\",\n \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/rx74TtFfBMibHmz4rYb4ZgjZpswo3Z9Df57z-HVre7vQ2L4NwzbebHOPAGu14u_NNeTxfqrsbw=s88-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"medium\": {\n \"url\": \"https://yt3.ggpht.com/rx74TtFfBMibHmz4rYb4ZgjZpswo3Z9Df57z-HVre7vQ2L4NwzbebHOPAGu14u_NNeTxfqrsbw=s240-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"high\": {\n \"url\": \"https://yt3.ggpht.com/rx74TtFfBMibHmz4rYb4ZgjZpswo3Z9Df57z-HVre7vQ2L4NwzbebHOPAGu14u_NNeTxfqrsbw=s800-c-k-c0xffffffff-no-rj-mo\"\n - \ }\n },\n \"channelTitle\": \"Alex007 - Topic\",\n - \ \"liveBroadcastContent\": \"none\",\n \"publishTime\": \"2018-08-16T22:21:08Z\"\n - \ }\n },\n {\n \"kind\": \"youtube#searchResult\",\n \"etag\": - \"KcKZYC9MZ50L1lB_M_hh8A8AA5I\",\n \"id\": {\n \"kind\": \"youtube#channel\",\n - \ \"channelId\": \"UC3Bh3MfFiFHiFGDVQ7N6fdg\"\n },\n \"snippet\": - {\n \"publishedAt\": \"2018-11-09T10:32:25Z\",\n \"channelId\": - \"UC3Bh3MfFiFHiFGDVQ7N6fdg\",\n \"title\": \"Alex007 - Topic\",\n \"description\": - \"\",\n \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/BN0loVWN1QfczB4mlcM1KyBxv3hNEOw4_PNKXTJB1j9qHWEAKIIJp3FXOzKA-inpQzoSLlm50Ck=s88-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"medium\": {\n \"url\": \"https://yt3.ggpht.com/BN0loVWN1QfczB4mlcM1KyBxv3hNEOw4_PNKXTJB1j9qHWEAKIIJp3FXOzKA-inpQzoSLlm50Ck=s240-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"high\": {\n \"url\": \"https://yt3.ggpht.com/BN0loVWN1QfczB4mlcM1KyBxv3hNEOw4_PNKXTJB1j9qHWEAKIIJp3FXOzKA-inpQzoSLlm50Ck=s800-c-k-c0xffffffff-no-rj-mo\"\n - \ }\n },\n \"channelTitle\": \"Alex007 - Topic\",\n - \ \"liveBroadcastContent\": \"none\",\n \"publishTime\": \"2018-11-09T10:32:25Z\"\n - \ }\n },\n {\n \"kind\": \"youtube#searchResult\",\n \"etag\": - \"lj3w9-kE1OZBGU8svRZUdc7Ag2s\",\n \"id\": {\n \"kind\": \"youtube#channel\",\n - \ \"channelId\": \"UCsnM3biG0wbQg3mWUm3HVmg\"\n },\n \"snippet\": - {\n \"publishedAt\": \"2023-01-12T06:31:31Z\",\n \"channelId\": - \"UCsnM3biG0wbQg3mWUm3HVmg\",\n \"title\": \"@ALEX 007\",\n \"description\": - \"Subscribe my channel.\",\n \"thumbnails\": {\n \"default\": - {\n \"url\": \"https://yt3.ggpht.com/Mw67COtdutpRjWAJuHlD8U7E4kb7mqbQn5cuJQb9p2hd9ewsEPNpR4cYj-y2Pi0MisFhgCZi=s88-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"medium\": {\n \"url\": \"https://yt3.ggpht.com/Mw67COtdutpRjWAJuHlD8U7E4kb7mqbQn5cuJQb9p2hd9ewsEPNpR4cYj-y2Pi0MisFhgCZi=s240-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"high\": {\n \"url\": \"https://yt3.ggpht.com/Mw67COtdutpRjWAJuHlD8U7E4kb7mqbQn5cuJQb9p2hd9ewsEPNpR4cYj-y2Pi0MisFhgCZi=s800-c-k-c0xffffffff-no-rj-mo\"\n - \ }\n },\n \"channelTitle\": \"@ALEX 007\",\n \"liveBroadcastContent\": - \"none\",\n \"publishTime\": \"2023-01-12T06:31:31Z\"\n }\n },\n - \ {\n \"kind\": \"youtube#searchResult\",\n \"etag\": \"b-Ob8lM1x2Y6d9rbYor3glEW-cw\",\n - \ \"id\": {\n \"kind\": \"youtube#channel\",\n \"channelId\": - \"UCsL7Gy8KZLJpbuwfNFmLAeA\"\n },\n \"snippet\": {\n \"publishedAt\": - \"2022-04-11T05:51:42Z\",\n \"channelId\": \"UCsL7Gy8KZLJpbuwfNFmLAeA\",\n - \ \"title\": \"ALEX 007\",\n \"description\": \"HI FRIND,S WELCOME - TO MY YOUTUBE CHANNEL Subscribe now Like Comment ...\",\n \"thumbnails\": - {\n \"default\": {\n \"url\": \"https://yt3.ggpht.com/cTYY3a_CRI_PZkYaeb36YnGRZAXmG44JjNcvOip1NCULGLwMosQW1v-nBnup68sT6V38xMMfMg=s88-c-k-c0xffffffff-no-rj-mo\"\n + \"b-Ob8lM1x2Y6d9rbYor3glEW-cw\",\n \"id\": {\n \"kind\": \"youtube#channel\",\n + \ \"channelId\": \"UCsL7Gy8KZLJpbuwfNFmLAeA\"\n },\n \"snippet\": + {\n \"publishedAt\": \"2022-04-11T05:51:42Z\",\n \"channelId\": + \"UCsL7Gy8KZLJpbuwfNFmLAeA\",\n \"title\": \"ALEX 007\",\n \"description\": + \"HI FRIND,S WELCOME TO MY YOUTUBE CHANNEL Subscribe now Like Comment ...\",\n + \ \"thumbnails\": {\n \"default\": {\n \"url\": + \"https://yt3.ggpht.com/cTYY3a_CRI_PZkYaeb36YnGRZAXmG44JjNcvOip1NCULGLwMosQW1v-nBnup68sT6V38xMMfMg=s88-c-k-c0xffffffff-no-rj-mo\"\n \ },\n \"medium\": {\n \"url\": \"https://yt3.ggpht.com/cTYY3a_CRI_PZkYaeb36YnGRZAXmG44JjNcvOip1NCULGLwMosQW1v-nBnup68sT6V38xMMfMg=s240-c-k-c0xffffffff-no-rj-mo\"\n \ },\n \"high\": {\n \"url\": \"https://yt3.ggpht.com/cTYY3a_CRI_PZkYaeb36YnGRZAXmG44JjNcvOip1NCULGLwMosQW1v-nBnup68sT6V38xMMfMg=s800-c-k-c0xffffffff-no-rj-mo\"\n \ }\n },\n \"channelTitle\": \"ALEX 007\",\n \"liveBroadcastContent\": - \"none\",\n \"publishTime\": \"2022-04-11T05:51:42Z\"\n }\n }\n - \ ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 01 Feb 2023 10:42:41 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"id\": \"youtube:v3\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"protocol\": \"rest\",\n - \ \"title\": \"YouTube Data API v3\",\n \"name\": \"youtube\",\n \"servicePath\": - \"\",\n \"canonicalName\": \"YouTube\",\n \"basePath\": \"\",\n \"description\": - \"The YouTube Data API v3 is an API that provides access to YouTube data, - such as videos, playlists, and channels.\",\n \"resources\": {\n \"thirdPartyLinks\": - {\n \"methods\": {\n \"update\": {\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API request and response will include. - Supported values are linkingToken, status, and snippet.\"\n },\n - \ \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\",\n \"location\": \"query\"\n }\n - \ },\n \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"description\": \"Updates an existing resource.\",\n \"id\": - \"youtube.thirdPartyLinks.update\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n - \ \"linkingToken\",\n \"type\"\n ],\n \"id\": - \"youtube.thirdPartyLinks.delete\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"linkingToken\": {\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"Do not use. Required for compatibility.\"\n },\n \"type\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"description\": - \"Type of the link to be deleted.\",\n \"type\": \"string\"\n - \ },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel ID to which changes - should be applied, for delegation.\",\n \"location\": \"query\"\n - \ }\n }\n },\n \"insert\": {\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\"\n },\n \"list\": - {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.list\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"parameters\": {\n - \ \"part\": {\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"linkingToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Get a third party link with the given linking - token.\"\n },\n \"type\": {\n \"description\": - \"Get a third party link of the given type.\",\n \"location\": - \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ]\n },\n - \ \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\"\n }\n - \ },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/superChatEvents\",\n \"id\": - \"youtube.superChatEvents.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"pageToken\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the superChatEvent resource parts that the - API response will include. This parameter is currently not supported.\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"hl\": {\n \"description\": \"Return rendered funding - amounts in specified language.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/superChatEvents\"\n - \ }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.channelBanners.insert\",\n - \ \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"supportsMediaUpload\": true,\n \"path\": - \"youtube/v3/channelBanners/insert\",\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"parameterOrder\": [],\n \"parameters\": {\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\"\n },\n \"httpMethod\": - \"POST\"\n }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"part\": - {\n \"description\": \"The *part* parameter specifies the membershipsLevel - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.membershipsLevels.list\",\n \"response\": {\n \"$ref\": - \"MembershipsLevelListResponse\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"path\": \"youtube/v3/membershipsLevels\",\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"liveBroadcasts\": - {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"broadcastType\": - {\n \"default\": \"event\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"description\": \"Return only broadcasts - with the selected type.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"location\": \"query\",\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"maximum\": \"50\",\n \"type\": \"integer\"\n - \ },\n \"broadcastStatus\": {\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return current - live broadcasts.\",\n \"Return broadcasts that have not yet - started.\",\n \"Return broadcasts that have already ended.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ]\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Return broadcasts with the given ids from - Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"part\": - {\n \"description\": \"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, status and statistics.\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively + \"none\",\n \"publishTime\": \"2022-04-11T05:51:42Z\"\n }\n },\n + \ {\n \"kind\": \"youtube#searchResult\",\n \"etag\": \"Q_DVxyaoA4_tsHkOLbnpOrR9dNA\",\n + \ \"id\": {\n \"kind\": \"youtube#channel\",\n \"channelId\": + \"UCDJ3nE8-lZSxvIk2ASykJAw\"\n },\n \"snippet\": {\n \"publishedAt\": + \"2022-08-04T05:09:53Z\",\n \"channelId\": \"UCDJ3nE8-lZSxvIk2ASykJAw\",\n + \ \"title\": \"Alex007\",\n \"description\": \"\",\n \"thumbnails\": + {\n \"default\": {\n \"url\": \"https://yt3.ggpht.com/RxzvmjEjtk2IXWXRj2WfiPTnuUITLOpN-6cAu6bwZHOaZTiG6wzlx1ykmgk_WsXaKuCoID-eLg=s88-c-k-c0xffffffff-no-rj-mo\"\n + \ },\n \"medium\": {\n \"url\": \"https://yt3.ggpht.com/RxzvmjEjtk2IXWXRj2WfiPTnuUITLOpN-6cAu6bwZHOaZTiG6wzlx1ykmgk_WsXaKuCoID-eLg=s240-c-k-c0xffffffff-no-rj-mo\"\n + \ },\n \"high\": {\n \"url\": \"https://yt3.ggpht.com/RxzvmjEjtk2IXWXRj2WfiPTnuUITLOpN-6cAu6bwZHOaZTiG6wzlx1ykmgk_WsXaKuCoID-eLg=s800-c-k-c0xffffffff-no-rj-mo\"\n + \ }\n },\n \"channelTitle\": \"Alex007\",\n \"liveBroadcastContent\": + \"none\",\n \"publishTime\": \"2022-08-04T05:09:53Z\"\n }\n }\n + \ ]\n}\n" + headers: + Alt-Svc: + - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 + Cache-Control: + - private + Content-Encoding: + - gzip + Content-Type: + - application/json; charset=UTF-8 + Date: + - Thu, 09 Mar 2023 00:27:01 GMT + Server: + - scaffolding on HTTPServer2 + Transfer-Encoding: + - chunked + Vary: + - Origin + - X-Origin + - Referer + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - SAMEORIGIN + X-XSS-Protection: + - '0' + status: + code: 200 + message: OK + url: '' +- request: + body: null + headers: + Accept-Encoding: + - gzip + User-Agent: + - Aiogoogle Aiohttp (gzip) + method: GET + uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest + response: + body: + string: "{\n \"resources\": {\n \"playlists\": {\n \"methods\": {\n + \ \"insert\": {\n \"httpMethod\": \"POST\",\n \"flatPath\": + \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.playlists.insert\",\n \"path\": + \"youtube/v3/playlists\",\n \"description\": \"Inserts a new resource + into this collection.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n + \ },\n \"request\": {\n \"$ref\": \"Playlist\"\n + \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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. @@ -6555,257 +6316,14 @@ interactions: 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.\"\n }\n },\n \"description\": \"Retrieve - the list of broadcasts associated with the given channel.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"httpMethod\": \"GET\"\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.liveBroadcasts.insert\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"description\": \"Inserts a new - stream for the authenticated user.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n }\n },\n \"delete\": {\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"Broadcast to delete.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"description\": \"Delete a given broadcast.\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\"\n },\n \"update\": {\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter serves two purposes + owner.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"required\": + true,\n \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.update\",\n - \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"description\": \"Updates an existing - broadcast for the authenticated user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"transition\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"parameterOrder\": [\n \"broadcastStatus\",\n - \ \"id\",\n \"part\"\n ],\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"description\": - \"Broadcast to transition.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"broadcastStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"required\": true,\n \"type\": - \"string\",\n \"description\": \"The status to which the broadcast - is going to transition.\",\n \"location\": \"query\",\n \"enum\": - [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ]\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"path\": - \"youtube/v3/liveBroadcasts/transition\",\n \"description\": \"Transition - a broadcast to a given status.\"\n },\n \"bind\": {\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"parameters\": {\n \"streamId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Stream to bind, if not set unbind the current - one.\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Broadcast - to bind to the stream\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Bind - a broadcast to a stream.\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"id\": - \"youtube.liveBroadcasts.bind\",\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n }\n - \ },\n \"insertCuepoint\": {\n \"description\": \"Insert - cuepoints in a broadcast\",\n \"parameterOrder\": [],\n \"id\": - \"youtube.liveBroadcasts.insertCuepoint\",\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"description\": \"This + set as well as the properties that the API response will include.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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 @@ -6815,28 +6333,41 @@ interactions: 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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"description\": \"Broadcast to insert - ads to, or equivalently `external_video_id` for internal use.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"insert\": {\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channelSections.insert\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + 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.\",\n \"location\": \"query\"\n }\n + \ }\n },\n \"list\": {\n \"parameters\": {\n + \ \"channelId\": {\n \"location\": \"query\",\n \"description\": + \"Return the playlists owned by the specified channel ID.\",\n \"type\": + \"string\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"hl\": + {\n \"description\": \"Return content in specified language\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n + \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"type\": \"integer\",\n + \ \"minimum\": \"0\",\n \"location\": \"query\"\n + \ },\n \"mine\": {\n \"description\": \"Return + the playlists owned by the authenticated user.\",\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"required\": true,\n \"description\": + \"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.\"\n },\n \"id\": {\n \"description\": + \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -6850,8 +6381,9 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": + for each separate channel.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"*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 @@ -6860,60 +6392,178 @@ interactions: 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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"required\": true\n }\n },\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\"\n - \ },\n \"list\": {\n \"parameters\": {\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the ChannelSections with the given IDs for Stubby or Apiary.\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Return the ChannelSections owned - by the authenticated user.\"\n },\n \"channelId\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the ChannelSections owned by the specified - channel ID.\"\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + be linked to the specified YouTube content owner.\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/playlists\",\n \"httpMethod\": + \"GET\",\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n + \ },\n \"path\": \"youtube/v3/playlists\",\n \"id\": + \"youtube.playlists.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.channelSections.list\",\n \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"ChannelSectionListResponse\"\n },\n \"flatPath\": \"youtube/v3/channelSections\"\n - \ },\n \"delete\": {\n \"id\": \"youtube.channelSections.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"parameterOrder\": [\n \"part\"\n ]\n },\n + \ \"update\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": + \ ],\n \"path\": \"youtube/v3/playlists\",\n \"id\": + \"youtube.playlists.update\",\n \"response\": {\n \"$ref\": + \"Playlist\"\n },\n \"request\": {\n \"$ref\": + \"Playlist\"\n },\n \"parameters\": {\n \"part\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\"\n }\n },\n \"flatPath\": \"youtube/v3/playlists\",\n + \ \"httpMethod\": \"PUT\",\n \"description\": \"Updates an + existing resource.\"\n },\n \"delete\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Deletes a resource.\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"id\": \"youtube.playlists.delete\",\n \"flatPath\": + \"youtube/v3/playlists\",\n \"path\": \"youtube/v3/playlists\",\n + \ \"httpMethod\": \"DELETE\"\n }\n }\n },\n \"comments\": + {\n \"methods\": {\n \"update\": {\n \"httpMethod\": + \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"path\": + \"youtube/v3/comments\",\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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.\",\n + \ \"repeated\": true\n }\n },\n \"description\": + \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"id\": \"youtube.comments.update\",\n \"request\": + {\n \"$ref\": \"Comment\"\n },\n \"response\": + {\n \"$ref\": \"Comment\"\n }\n },\n \"insert\": + {\n \"response\": {\n \"$ref\": \"Comment\"\n },\n + \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts + a new resource into this collection.\",\n \"id\": \"youtube.comments.insert\",\n + \ \"request\": {\n \"$ref\": \"Comment\"\n },\n + \ \"flatPath\": \"youtube/v3/comments\",\n \"parameters\": + {\n \"part\": {\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/comments\"\n },\n \"markAsSpam\": + {\n \"path\": \"youtube/v3/comments/markAsSpam\",\n \"flatPath\": + \"youtube/v3/comments/markAsSpam\",\n \"description\": \"Expresses + the caller's opinion that one or more comments should be flagged as spam.\",\n + \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.comments.markAsSpam\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"parameters\": {\n \"id\": {\n \"description\": + \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n + \ \"required\": true,\n \"repeated\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"setModerationStatus\": {\n \"description\": + \"Sets the moderation status of one or more comments.\",\n \"path\": + \"youtube/v3/comments/setModerationStatus\",\n \"parameters\": {\n + \ \"moderationStatus\": {\n \"enumDescriptions\": [\n + \ \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"enum\": + [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n + \ \"rejected\"\n ],\n \"type\": \"string\",\n + \ \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"Specifies the requested moderation status. + Note, comments can be in statuses, which are not available through this call. + For example, this call does not allow to mark a comment as 'likely spam'. + Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, + MODERATION_STATUS_REJECTED.\"\n },\n \"id\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Modifies the moderation status of the comments + with the given IDs\",\n \"required\": true\n },\n + \ \"banAuthor\": {\n \"description\": \"If set to true + the author of the comment gets added to the ban list. This means all future + comments of the author will autmomatically be rejected. Only valid in combination + with STATUS_REJECTED.\",\n \"type\": \"boolean\",\n \"location\": + \"query\",\n \"default\": \"false\"\n }\n },\n + \ \"id\": \"youtube.comments.setModerationStatus\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"httpMethod\": + \"POST\",\n \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n + \ ]\n },\n \"list\": {\n \"id\": \"youtube.comments.list\",\n + \ \"flatPath\": \"youtube/v3/comments\",\n \"httpMethod\": + \"GET\",\n \"path\": \"youtube/v3/comments\",\n \"response\": + {\n \"$ref\": \"CommentListResponse\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"pageToken\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Returns + the comments with the given IDs for One Platform.\"\n },\n \"maxResults\": + {\n \"type\": \"integer\",\n \"maximum\": \"100\",\n + \ \"location\": \"query\",\n \"default\": \"20\",\n + \ \"minimum\": \"1\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"format\": \"uint32\"\n },\n + \ \"textFormat\": {\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Returns + the comments in HTML format. This is the default value.\",\n \"Returns + the comments in plain text format.\"\n ],\n \"type\": + \"string\",\n \"location\": \"query\",\n \"default\": + \"html\",\n \"description\": \"The requested text format for + the returned comments.\"\n },\n \"parentId\": {\n \"description\": + \"Returns replies to the specified comment. Note, currently YouTube features + only one level of replies (ie replies to top level comments). However replies + to replies may be supported in the future.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"description\": \"The + *part* parameter specifies a comma-separated list of one or more comment resource + properties that the API response will include.\",\n \"required\": + true\n }\n },\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"part\"\n ]\n },\n \"delete\": {\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": + \"youtube.comments.delete\",\n \"httpMethod\": \"DELETE\",\n \"path\": + \"youtube/v3/comments\",\n \"parameters\": {\n \"id\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"description\": \"Deletes a resource.\",\n \"flatPath\": + \"youtube/v3/comments\"\n }\n }\n },\n \"watermarks\": {\n + \ \"methods\": {\n \"unset\": {\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n + \ \"httpMethod\": \"POST\",\n \"description\": \"Allows removal + of channel watermark.\",\n \"id\": \"youtube.watermarks.unset\",\n + \ \"parameterOrder\": [\n \"channelId\"\n ],\n + \ \"parameters\": {\n \"channelId\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. @@ -6924,20 +6574,49 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/channelSections\"\n },\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"description\": \"Updates an - existing resource.\",\n \"id\": \"youtube.channelSections.update\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": + be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"path\": \"youtube/v3/watermarks/unset\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ },\n \"set\": {\n \"flatPath\": \"youtube/v3/watermarks/set\",\n + \ \"supportsMediaUpload\": true,\n \"request\": {\n \"$ref\": + \"InvideoBranding\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n },\n \"channelId\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"parameterOrder\": [\n \"channelId\"\n + \ ],\n \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n + \ \"image/png\",\n \"application/octet-stream\"\n + \ ],\n \"protocols\": {\n \"simple\": {\n + \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n + \ },\n \"resumable\": {\n \"path\": + \"/resumable/upload/youtube/v3/watermarks/set\",\n \"multipart\": + true\n }\n },\n \"maxSize\": \"10485760\"\n + \ },\n \"description\": \"Allows upload of watermark image + and setting it for a channel.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/watermarks/set\",\n \"id\": \"youtube.watermarks.set\",\n + \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"videos\": + {\n \"methods\": {\n \"delete\": {\n \"parameterOrder\": + [\n \"id\"\n ],\n \"description\": \"Deletes + a resource.\",\n \"httpMethod\": \"DELETE\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.videos.delete\",\n \"parameters\": {\n + \ \"id\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": \"*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 @@ -6945,131 +6624,19 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n - \ \"path\": \"youtube/v3/channelSections\",\n \"flatPath\": - \"youtube/v3/channelSections\"\n }\n }\n },\n \"abuseReports\": - {\n \"methods\": {\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/abuseReports\",\n \"request\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"path\": \"youtube/v3/abuseReports\",\n \"response\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\"\n }\n }\n }\n - \ }\n },\n \"videoCategories\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"path\": \"youtube/v3/videoCategories\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Returns - the video categories with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true\n },\n \"regionCode\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"default\": \"en-US\"\n }\n },\n \"id\": - \"youtube.videoCategories.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/videoCategories\"\n - \ }\n }\n },\n \"liveChatBans\": {\n \"methods\": {\n - \ \"insert\": {\n \"request\": {\n \"$ref\": \"LiveChatBan\"\n - \ },\n \"httpMethod\": \"POST\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n }\n },\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.liveChatBans.delete\",\n - \ \"description\": \"Deletes a chat ban.\",\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/liveChat/bans\"\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"path\": \"youtube/v3/videos\"\n },\n \"reportAbuse\": + {\n \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n + \ },\n \"path\": \"youtube/v3/videos/reportAbuse\",\n \"parameterOrder\": + [],\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the i18nLanguage resource properties that the API - response will include. Set the parameter value to snippet.\",\n \"repeated\": - true\n },\n \"hl\": {\n \"default\": \"en_US\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n - \ \"path\": \"youtube/v3/i18nLanguages\"\n }\n }\n },\n - \ \"activities\": {\n \"methods\": {\n \"list\": {\n \"path\": - \"youtube/v3/activities\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/activities\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.activities.list\",\n \"parameters\": - {\n \"maxResults\": {\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"minimum\": \"0\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"required\": true\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"publishedBefore\": - {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n - \ \"type\": \"string\"\n },\n \"publishedAfter\": - {\n \"format\": \"google-datetime\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"home\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n }\n }\n - \ }\n },\n \"videos\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.videos.list\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": + \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.videos.reportAbuse\",\n + \ \"description\": \"Report abuse for a video.\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"*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 @@ -7078,79 +6645,142 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"myRating\": - {\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"description\": - \"Return videos liked/disliked by the authenticated user. Does not support - RateType.RATED_TYPE_NONE.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ]\n },\n \"maxHeight\": {\n - \ \"minimum\": \"72\",\n \"type\": \"integer\",\n + be linked to the specified YouTube content owner.\"\n }\n }\n + \ },\n \"list\": {\n \"description\": \"Retrieves a + list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.videos.list\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"VideoListResponse\"\n },\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return videos with the given ids.\",\n \"repeated\": true\n + \ },\n \"maxHeight\": {\n \"type\": \"integer\",\n \ \"format\": \"int32\",\n \"maximum\": \"8192\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true,\n \"description\": + \ \"location\": \"query\",\n \"minimum\": \"72\"\n + \ },\n \"videoCategoryId\": {\n \"default\": + \"0\",\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Use chart that is specific to the specified + video category\"\n },\n \"part\": {\n \"description\": \"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.\"\n - \ },\n \"chart\": {\n \"type\": \"string\",\n - \ \"description\": \"Return the videos that are in the specified - chart.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"enum\": [\n - \ \"chartUnspecified\",\n \"mostPopular\"\n ],\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"minimum\": \"1\",\n \"type\": \"integer\"\n },\n - \ \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Stands for \\\"host language\\\". + if you set *part=snippet*, the API response will contain all of those properties.\",\n + \ \"location\": \"query\",\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"required\": true\n },\n + \ \"hl\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Stands for \\\"host language\\\". Specifies the localization language of the metadata to be filled into snippet.localized. The field is filled with the default metadata if there is no localization in the specified language. The parameter value must be a language code included in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"videoCategoryId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"default\": - \"0\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"description\": \"Return videos with the given ids.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"locale\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Use a chart that is specific to the specified region\"\n },\n - \ \"maxWidth\": {\n \"maximum\": \"8192\",\n \"minimum\": - \"72\",\n \"format\": \"int32\",\n \"location\": - \"query\",\n \"description\": \"Return the player with maximum - height specified in\",\n \"type\": \"integer\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"VideoListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/videos\",\n \"path\": - \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"update\": {\n \"id\": \"youtube.videos.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ },\n \"pageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"maxResults\": {\n \"minimum\": \"1\",\n \"location\": + \"query\",\n \"maximum\": \"50\",\n \"default\": + \"5\",\n \"description\": \"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.\",\n + \ \"type\": \"integer\",\n \"format\": \"uint32\"\n + \ },\n \"locale\": {\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"chart\": + {\n \"enum\": [\n \"chartUnspecified\",\n \"mostPopular\"\n + \ ],\n \"description\": \"Return the videos that + are in the specified chart.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Return the most popular videos + for the specified content region and video category.\"\n ],\n + \ \"location\": \"query\"\n },\n \"regionCode\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Use a chart that is specific to the specified + region\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"maxWidth\": + {\n \"location\": \"query\",\n \"minimum\": \"72\",\n + \ \"maximum\": \"8192\",\n \"description\": \"Return + the player with maximum height specified in\",\n \"format\": + \"int32\",\n \"type\": \"integer\"\n },\n \"myRating\": + {\n \"description\": \"Return videos liked/disliked by the authenticated + user. Does not support RateType.RATED_TYPE_NONE.\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ]\n + \ }\n },\n \"path\": \"youtube/v3/videos\",\n + \ \"httpMethod\": \"GET\"\n },\n \"getRating\": {\n + \ \"id\": \"youtube.videos.getRating\",\n \"httpMethod\": + \"GET\",\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"required\": true\n + \ }\n },\n \"description\": \"Retrieves the ratings + that the authorized user gave to a list of specified videos.\",\n \"flatPath\": + \"youtube/v3/videos/getRating\",\n \"response\": {\n \"$ref\": + \"VideoGetRatingResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": + \ ],\n \"path\": \"youtube/v3/videos/getRating\"\n },\n + \ \"rate\": {\n \"parameters\": {\n \"rating\": + {\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n + \ \"type\": \"string\",\n \"required\": true\n },\n + \ \"id\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"parameterOrder\": [\n \"id\",\n \"rating\"\n + \ ],\n \"flatPath\": \"youtube/v3/videos/rate\",\n \"path\": + \"youtube/v3/videos/rate\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Adds a like or dislike rating to + a video or removes a rating from a video.\",\n \"id\": \"youtube.videos.rate\",\n + \ \"httpMethod\": \"POST\"\n },\n \"update\": {\n \"response\": + {\n \"$ref\": \"Video\"\n },\n \"request\": {\n + \ \"$ref\": \"Video\"\n },\n \"id\": \"youtube.videos.update\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"type\": + \"string\",\n \"repeated\": true,\n \"description\": + \"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.\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -7161,34 +6791,273 @@ interactions: channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"path\": \"youtube/v3/videos\",\n \"description\": \"Updates - an existing resource.\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n + \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"path\": \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"PUT\",\n \"description\": + \"Updates an existing resource.\"\n },\n \"insert\": {\n \"mediaUpload\": + {\n \"protocols\": {\n \"simple\": {\n \"path\": + \"/upload/youtube/v3/videos\",\n \"multipart\": true\n },\n + \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n + \ \"multipart\": true\n }\n },\n \"maxSize\": + \"274877906944\",\n \"accept\": [\n \"video/*\",\n + \ \"application/octet-stream\"\n ]\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/videos\",\n \"response\": {\n + \ \"$ref\": \"Video\"\n },\n \"path\": \"youtube/v3/videos\",\n + \ \"id\": \"youtube.videos.insert\",\n \"request\": {\n \"$ref\": + \"Video\"\n },\n \"supportsMediaUpload\": true,\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"autoLevels\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"description\": + \"Should auto-levels be applied to the upload.\"\n },\n \"stabilize\": + {\n \"location\": \"query\",\n \"description\": + \"Should stabilize be applied to the upload.\",\n \"type\": \"boolean\"\n + \ },\n \"notifySubscribers\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"description\": + \"Notify the channel subscribers about the new video. As default, the notification + is enabled.\",\n \"default\": \"true\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true,\n \"description\": + \"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.\"\n }\n }\n }\n }\n },\n + \ \"liveChatMessages\": {\n \"methods\": {\n \"delete\": {\n + \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"description\": \"Deletes + a chat message.\",\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"id\": \"youtube.liveChatMessages.delete\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\"\n }\n }\n + \ },\n \"insert\": {\n \"request\": {\n \"$ref\": + \"LiveChatMessage\"\n },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"path\": \"youtube/v3/liveChat/messages\",\n \"response\": + {\n \"$ref\": \"LiveChatMessage\"\n },\n \"id\": + \"youtube.liveChatMessages.insert\",\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"httpMethod\": \"POST\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"description\": \"Inserts a new resource into this + collection.\"\n },\n \"list\": {\n \"httpMethod\": + \"GET\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameters\": + {\n \"liveChatId\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"The id of the live chat for which comments should be returned.\"\n },\n + \ \"profileImageSize\": {\n \"type\": \"integer\",\n + \ \"description\": \"Specifies the size of the profile image that + should be returned for each user.\",\n \"location\": \"query\",\n + \ \"format\": \"uint32\",\n \"minimum\": \"16\",\n + \ \"maximum\": \"720\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n + \ \"part\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"The *part* parameter specifies + the liveChatComment resource parts that the API response will include. Supported + values are id and snippet.\",\n \"repeated\": true,\n \"required\": + true\n },\n \"maxResults\": {\n \"location\": + \"query\",\n \"format\": \"uint32\",\n \"type\": + \"integer\",\n \"default\": \"500\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"minimum\": \"200\",\n \"maximum\": + \"2000\"\n },\n \"hl\": {\n \"type\": \"string\",\n + \ \"description\": \"Specifies the localization language in which + the system messages should be returned.\",\n \"location\": \"query\"\n + \ }\n },\n \"id\": \"youtube.liveChatMessages.list\",\n + \ \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n + \ },\n \"path\": \"youtube/v3/liveChat/messages\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"liveChatId\",\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n + \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": + {\n \"methods\": {\n \"updateCommentThreads\": {\n \"flatPath\": + \"youtube/v3/commentThreads\",\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n + \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/commentThreads\",\n + \ \"parameterOrder\": [],\n \"description\": \"Updates + an existing resource.\",\n \"request\": {\n \"$ref\": + \"CommentThread\"\n },\n \"parameters\": {\n \"part\": + {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"description\": + \"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.\"\n }\n },\n + \ \"response\": {\n \"$ref\": \"CommentThread\"\n + \ }\n }\n }\n }\n }\n },\n + \ \"i18nRegions\": {\n \"methods\": {\n \"list\": {\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.i18nRegions.list\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": + {\n \"hl\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"default\": \"en_US\"\n },\n \"part\": + {\n \"description\": \"The *part* parameter specifies the i18nRegion + resource properties that the API response will include. Set the parameter + value to snippet.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true\n }\n },\n \"flatPath\": \"youtube/v3/i18nRegions\",\n + \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/i18nRegions\"\n }\n }\n },\n \"members\": {\n + \ \"methods\": {\n \"list\": {\n \"response\": {\n \"$ref\": + \"MemberListResponse\"\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"parameters\": {\n \"mode\": {\n \"enumDescriptions\": + [\n \"\",\n \"Return only members that joined + after the first call with this mode was made.\",\n \"Return + all current members, from newest to oldest.\"\n ],\n \"default\": + \"all_current\",\n \"description\": \"Parameter that specifies + which channel members to return.\",\n \"enum\": [\n \"listMembersModeUnknown\",\n + \ \"updates\",\n \"all_current\"\n ],\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"maxResults\": {\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"minimum\": \"0\",\n \"default\": + \"5\",\n \"location\": \"query\",\n \"type\": \"integer\",\n + \ \"format\": \"uint32\",\n \"maximum\": \"1000\"\n + \ },\n \"pageToken\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"filterByMemberChannelId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Comma separated list of channel IDs. Only + data about members that are part of this list will be included in the response.\"\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"The *part* + parameter specifies the member resource parts that the API response will include. + Set the parameter value to snippet.\"\n },\n \"hasAccessToLevel\": + {\n \"description\": \"Filter members in the results set to the + ones that have access to a level.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"flatPath\": \"youtube/v3/members\",\n \"httpMethod\": + \"GET\",\n \"description\": \"Retrieves a list of members that match + the request criteria for a channel.\",\n \"path\": \"youtube/v3/members\",\n + \ \"id\": \"youtube.members.list\"\n }\n }\n },\n \"channels\": + {\n \"methods\": {\n \"update\": {\n \"path\": \"youtube/v3/channels\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/channels\",\n \"response\": {\n \"$ref\": + \"Channel\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n + \ \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true\n }\n },\n \"id\": \"youtube.channels.update\",\n + \ \"httpMethod\": \"PUT\",\n \"description\": \"Updates an + existing resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.delete\",\n \"path\": - \"youtube/v3/videos\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + \ ],\n \"request\": {\n \"$ref\": \"Channel\"\n + \ }\n },\n \"list\": {\n \"response\": {\n + \ \"$ref\": \"ChannelListResponse\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n + \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/channels\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"id\": + \"youtube.channels.list\",\n \"parameters\": {\n \"managedByMe\": {\n \"location\": \"query\",\n \"description\": + \"Return the channels managed by the authenticated user.\",\n \"type\": + \"boolean\"\n },\n \"hl\": {\n \"description\": + \"Stands for \\\"host language\\\". Specifies the localization language of + the metadata to be filled into snippet.localized. The field is filled with + the default metadata if there is no localization in the specified language. + The parameter value must be a language code included in the list returned + by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"description\": \"Return the channels with the specified IDs.\",\n + \ \"location\": \"query\"\n },\n \"forUsername\": + {\n \"description\": \"Return the channel associated with a YouTube + username.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"required\": + true,\n \"location\": \"query\",\n \"repeated\": + true\n },\n \"categoryId\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Return the channels within the specified guide category ID.\"\n },\n + \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": + \"query\",\n \"description\": \"Return the ids of channels owned + by the authenticated user.\"\n },\n \"maxResults\": + {\n \"format\": \"uint32\",\n \"default\": \"5\",\n + \ \"type\": \"integer\",\n \"minimum\": \"0\",\n + \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"location\": \"query\"\n },\n + \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"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.\"\n },\n \"mySubscribers\": {\n \"location\": + \"query\",\n \"description\": \"Return the channels subscribed + to the authenticated user\",\n \"type\": \"boolean\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -7196,14 +7065,77 @@ interactions: content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"description\": \"Deletes a resource.\"\n },\n \"getRating\": - {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n + individual channel. The CMS account that the user authenticates with must + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/channels\"\n }\n }\n },\n + \ \"subscriptions\": {\n \"methods\": {\n \"insert\": {\n \"request\": + {\n \"$ref\": \"Subscription\"\n },\n \"id\": + \"youtube.subscriptions.insert\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"description\": \"Inserts a new resource into this + collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"response\": + {\n \"$ref\": \"Subscription\"\n },\n \"path\": + \"youtube/v3/subscriptions\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true,\n \"description\": \"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.\",\n \"type\": + \"string\"\n }\n }\n },\n \"delete\": {\n + \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/subscriptions\",\n + \ \"id\": \"youtube.subscriptions.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"parameters\": {\n \"id\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Deletes a resource.\"\n },\n \"list\": {\n \"httpMethod\": + \"GET\",\n \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n + \ },\n \"path\": \"youtube/v3/subscriptions\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": + {\n \"mine\": {\n \"location\": \"query\",\n \"description\": + \"Flag for returning the subscriptions of the authenticated user.\",\n \"type\": + \"boolean\"\n },\n \"forChannelId\": {\n \"type\": + \"string\",\n \"description\": \"Return the subscriptions to + the subset of these channels that the authenticated user is subscribed to.\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"description\": + \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"description\": \"Return the subscriptions of the given + channel owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"order\": {\n \"description\": + \"The order of the returned subscriptions\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n + \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n + \ ],\n \"default\": \"relevance\",\n \"enumDescriptions\": + [\n \"\",\n \"Sort by relevance.\",\n \"Sort + by order of activity.\",\n \"Sort alphabetically.\"\n ],\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"*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 @@ -7212,231 +7144,163 @@ interactions: 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.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true\n }\n },\n \"id\": - \"youtube.videos.getRating\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"path\": \"youtube/v3/videos/getRating\",\n \"description\": - \"Retrieves the ratings that the authorized user gave to a list of specified - videos.\",\n \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/videos/getRating\"\n },\n \"insert\": {\n \"path\": - \"youtube/v3/videos\",\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + that the user authenticates with must be linked to the specified YouTube content + owner.\"\n },\n \"myRecentSubscribers\": {\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"maxResults\": + {\n \"format\": \"uint32\",\n \"minimum\": \"0\",\n + \ \"maximum\": \"50\",\n \"type\": \"integer\",\n + \ \"location\": \"query\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"default\": \"5\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true,\n \"description\": \"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.\"\n },\n \"mySubscribers\": + {\n \"description\": \"Return the subscribers of the given channel + owner.\",\n \"type\": \"boolean\",\n \"location\": + \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.insert\",\n \"response\": {\n - \ \"$ref\": \"Video\"\n },\n \"mediaUpload\": - {\n \"maxSize\": \"274877906944\",\n \"accept\": [\n - \ \"video/*\",\n \"application/octet-stream\"\n ],\n - \ \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"supportsMediaUpload\": true,\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"parameters\": {\n \"notifySubscribers\": - {\n \"default\": \"true\",\n \"location\": \"query\",\n - \ \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": + \ \"id\": \"youtube.subscriptions.list\",\n \"flatPath\": + \"youtube/v3/subscriptions\",\n \"parameterOrder\": [\n \"part\"\n + \ ]\n }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": + {\n \"delete\": {\n \"id\": \"youtube.thirdPartyLinks.delete\",\n + \ \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n + \ ],\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"description\": + \"Deletes a resource.\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"externalChannelId\": + {\n \"description\": \"Channel ID to which changes should be + applied, for delegation.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"description\": \"Do not use. Required for compatibility.\"\n + \ },\n \"type\": {\n \"required\": true,\n + \ \"enumDescriptions\": [\n \"\",\n \"A + link that is connecting (or about to connect) a channel with a store on a + merchandising platform in order to enable retail commerce capabilities for + that channel on YouTube.\"\n ],\n \"description\": + \"Type of the link to be deleted.\",\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"linkingToken\": + {\n \"location\": \"query\",\n \"description\": + \"Delete the partner links with the given linking token.\",\n \"required\": + true,\n \"type\": \"string\"\n }\n }\n },\n + \ \"list\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"parameters\": {\n + \ \"linkingToken\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Get a third party link with the + given linking token.\"\n },\n \"part\": {\n \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": - true\n },\n \"stabilize\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Should stabilize be applied to the upload.\"\n },\n \"onBehalfOfContentOwner\": + \"query\",\n \"description\": \"The *part* parameter specifies + the thirdPartyLink resource parts that the API response will include. Supported + values are linkingToken, status, and snippet.\",\n \"required\": + true\n },\n \"externalChannelId\": {\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"type\": + {\n \"enumDescriptions\": [\n \"\",\n \"A + link that is connecting (or about to connect) a channel with a store on a + merchandising platform in order to enable retail commerce capabilities for + that channel on YouTube.\"\n ],\n \"enum\": [\n + \ \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"location\": \"query\",\n \"description\": + \"Get a third party link of the given type.\",\n \"type\": \"string\"\n + \ }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"id\": + \"youtube.thirdPartyLinks.list\"\n },\n \"insert\": {\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API request and response will include. Supported values are linkingToken, + status, and snippet.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true\n },\n \"externalChannelId\": {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"autoLevels\": {\n \"description\": - \"Should auto-levels be applied to the upload.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/videos\"\n },\n \"rate\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos/rate\",\n \"parameters\": - {\n \"rating\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n - \ },\n \"id\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"description\": \"Adds a like or dislike rating to a video or removes - a rating from a video.\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"id\": - \"youtube.videos.rate\"\n },\n \"reportAbuse\": {\n \"request\": - {\n \"$ref\": \"VideoAbuseReport\"\n },\n \"path\": - \"youtube/v3/videos/reportAbuse\",\n \"parameterOrder\": [],\n \"description\": - \"Report abuse for a video.\",\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.videos.reportAbuse\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"search\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/search\",\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n + \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"id\": \"youtube.thirdPartyLinks.insert\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"httpMethod\": + \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"path\": \"youtube/v3/thirdPartyLinks\"\n },\n \"update\": + {\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"id\": \"youtube.thirdPartyLinks.update\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": + \"PUT\",\n \"parameters\": {\n \"externalChannelId\": + {\n \"location\": \"query\",\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"The *part* parameter specifies + the thirdPartyLink resource parts that the API request and response will include. + Supported values are linkingToken, status, and snippet.\",\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true\n }\n },\n \"description\": \"Updates an + existing resource.\"\n }\n }\n },\n \"search\": {\n \"methods\": + {\n \"list\": {\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n \ },\n \"description\": \"Retrieves a list of search resources\",\n - \ \"flatPath\": \"youtube/v3/search\",\n \"parameters\": - {\n \"videoDuration\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoDurationUnspecified\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.search.list\",\n \"parameters\": {\n + \ \"videoDuration\": {\n \"location\": \"query\",\n + \ \"enum\": [\n \"videoDurationUnspecified\",\n \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"enumDescriptions\": + \ \"long\"\n ],\n \"description\": + \"Filter on the duration of the videos.\",\n \"enumDescriptions\": [\n \"\",\n \"Do not filter video search results based on their duration. This is the default value.\",\n \"Only include videos that are less than four minutes long.\",\n \"Only include videos that are between four and 20 minutes long (inclusive).\",\n \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"description\": \"Filter on the duration of the videos.\"\n - \ },\n \"locationRadius\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on distance from the location (specified above).\"\n },\n - \ \"type\": {\n \"description\": \"Restrict results - to a particular set of resource types from One Platform.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true\n },\n \"forContentOwner\": - {\n \"type\": \"boolean\",\n \"description\": \"Search - owned by a content owner.\",\n \"location\": \"query\"\n },\n - \ \"relevanceLanguage\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Return - results relevant to this language.\"\n },\n \"relatedToVideoId\": - {\n \"location\": \"query\",\n \"description\": - \"Search related to a resource.\",\n \"type\": \"string\"\n },\n - \ \"regionCode\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Display the content as seen by - viewers in this country.\"\n },\n \"eventType\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ],\n \"description\": - \"Filter on the livestream status of the videos.\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"location\": - \"query\"\n },\n \"videoSyndicated\": {\n \"enum\": - [\n \"videoSyndicatedUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos, syndicated or not.\",\n \"Only retrieve syndicated - videos.\"\n ],\n \"description\": \"Filter on syndicated - videos.\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"minimum\": \"0\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"maximum\": \"50\"\n },\n \"videoEmbeddable\": - {\n \"description\": \"Filter on embeddable videos.\",\n \"enum\": - [\n \"videoEmbeddableUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ]\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Filter on resources belonging - to this channelId.\",\n \"type\": \"string\"\n },\n - \ \"forMine\": {\n \"location\": \"query\",\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"channelType\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all channels.\",\n \"Only retrieve - shows.\"\n ],\n \"location\": \"query\",\n \"enum\": - [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"description\": - \"Add a filter on the channel search.\"\n },\n \"videoCaption\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on the presence of captions on the - videos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter results based on caption availability.\",\n - \ \"Only include videos that have captions.\",\n \"Only - include videos that do not have captions.\"\n ],\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ]\n - \ },\n \"q\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Textual - search terms to match.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoCategoryId\": - {\n \"description\": \"Filter on videos in a specific category.\",\n + \ \"type\": \"string\"\n },\n \"videoLicense\": + {\n \"enum\": [\n \"any\",\n \"youtube\",\n + \ \"creativeCommon\"\n ],\n \"description\": + \"Filter on the license of the videos.\",\n \"enumDescriptions\": + [\n \"Return all videos, regardless of which license they have, + that match the query parameters.\",\n \"Only return videos + that have the standard YouTube license.\",\n \"Only return + videos that have a Creative Commons license. Users can reuse videos with this + license in other videos that they create. Learn more.\"\n ],\n \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"safeSearch\": {\n \"enumDescriptions\": - [\n \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n + \ },\n \"publishedBefore\": {\n \"format\": + \"google-datetime\",\n \"description\": \"Filter on resources + published before this date.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"forMine\": {\n \"description\": + \"Search for the private videos of the authenticated user.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"safeSearch\": + {\n \"default\": \"moderate\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"description\": \"Indicates whether the search + \ ],\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"Indicates whether the search results should include restricted content as well as standard content.\",\n - \ \"default\": \"moderate\",\n \"type\": \"string\"\n - \ },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"description\": \"Filter on resources - published after this date.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoLicense\": {\n \"type\": - \"string\",\n \"description\": \"Filter on the license of the - videos.\",\n \"enumDescriptions\": [\n \"Return - all videos, regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"location\": \"query\",\n - \ \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ]\n },\n \"order\": - {\n \"type\": \"string\",\n \"description\": \"Sort - order of the results.\",\n \"location\": \"query\",\n \"default\": - \"relevance\",\n \"enumDescriptions\": [\n \"\",\n + \ \"enumDescriptions\": [\n \"\",\n \"YouTube + will not filter the search result set.\",\n \"YouTube will + filter some content from search results and, at the least, will filter content + that is restricted in your locale. Based on their content, search results + could be removed from search results or demoted in search results. This is + the default parameter value.\",\n \"YouTube will try to exclude + all restricted content from the search result set. Based on their content, + search results could be removed from search results or demoted in search results.\"\n + \ ]\n },\n \"eventType\": {\n \"description\": + \"Filter on the livestream status of the videos.\",\n \"type\": + \"string\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"The + live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n + \ \"The live broadcast has been completed.\"\n ],\n + \ \"location\": \"query\"\n },\n \"order\": + {\n \"type\": \"string\",\n \"default\": \"relevance\",\n + \ \"location\": \"query\",\n \"enum\": [\n \"searchSortUnspecified\",\n + \ \"date\",\n \"rating\",\n \"viewCount\",\n + \ \"relevance\",\n \"title\",\n \"videoCount\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \ \"Resources are sorted in reverse chronological order based on the date they were created.\",\n \"Resources are sorted from highest to lowest rating.\",\n \"Resources are sorted @@ -7444,22 +7308,20 @@ interactions: sorted based on their relevance to the search query. This is the default value for this parameter.\",\n \"Resources are sorted alphabetically by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ]\n - \ },\n \"videoDimension\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"description\": \"Filter on - 3d videos.\",\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ]\n },\n \"topicId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Restrict results to a particular topic.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + their number of uploaded videos.\"\n ],\n \"description\": + \"Sort order of the results.\"\n },\n \"forContentOwner\": + {\n \"type\": \"boolean\",\n \"description\": \"Search + owned by a content owner.\",\n \"location\": \"query\"\n },\n + \ \"location\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Filter on location of the video\"\n + \ },\n \"pageToken\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"q\": + {\n \"type\": \"string\",\n \"description\": \"Textual + search terms to match.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -7468,130 +7330,204 @@ interactions: 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.\"\n },\n \"publishedBefore\": - {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n - \ \"description\": \"Filter on resources published before this - date.\",\n \"type\": \"string\"\n },\n \"forDeveloper\": + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"publishedAfter\": + {\n \"format\": \"google-datetime\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Filter on resources published after this date.\"\n },\n \"relatedToVideoId\": + {\n \"location\": \"query\",\n \"description\": + \"Search related to a resource.\",\n \"type\": \"string\"\n },\n + \ \"videoCategoryId\": {\n \"description\": \"Filter + on videos in a specific category.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"forDeveloper\": {\n \"type\": \"boolean\",\n \"description\": \"Restrict the search to only retrieve videos uploaded using the project id of the authenticated - user.\",\n \"location\": \"query\"\n },\n \"videoDefinition\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on the definition of the videos.\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ],\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ]\n },\n \"location\": - {\n \"description\": \"Filter on location of the video\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoType\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on videos of a specific type.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos.\",\n \"Only retrieve movies.\",\n \"Only - retrieve episodes of shows.\"\n ],\n \"enum\": [\n - \ \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ]\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.search.list\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"youtube\": - {\n \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"parameterOrder\": - [],\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"httpMethod\": - \"PUT\",\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\"\n }\n },\n \"description\": - \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": - \"CommentThread\"\n }\n }\n }\n }\n - \ }\n },\n \"liveChatModerators\": {\n \"methods\": {\n \"delete\": - {\n \"description\": \"Deletes a chat moderator.\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.liveChatModerators.delete\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + user.\",\n \"location\": \"query\"\n },\n \"topicId\": + {\n \"location\": \"query\",\n \"description\": + \"Restrict results to a particular topic.\",\n \"type\": \"string\"\n + \ },\n \"channelType\": {\n \"description\": + \"Add a filter on the channel search.\",\n \"enum\": [\n \"channelTypeUnspecified\",\n + \ \"any\",\n \"show\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all channels.\",\n \"Only retrieve + shows.\"\n ],\n \"location\": \"query\"\n },\n + \ \"type\": {\n \"location\": \"query\",\n \"repeated\": + true,\n \"description\": \"Restrict results to a particular set + of resource types from One Platform.\",\n \"type\": \"string\"\n + \ },\n \"relevanceLanguage\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Return results relevant to this language.\"\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"description\": + \"Filter on resources belonging to this channelId.\",\n \"type\": + \"string\"\n },\n \"videoEmbeddable\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all videos, embeddable or not.\",\n \"Only + retrieve embeddable videos.\"\n ],\n \"location\": + \"query\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n + \ \"any\",\n \"true\"\n ],\n \"description\": + \"Filter on embeddable videos.\"\n },\n \"videoSyndicated\": + {\n \"description\": \"Filter on syndicated videos.\",\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all videos, syndicated or not.\",\n \"Only + retrieve syndicated videos.\"\n ],\n \"enum\": [\n + \ \"videoSyndicatedUnspecified\",\n \"any\",\n + \ \"true\"\n ],\n \"type\": \"string\"\n + \ },\n \"videoType\": {\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos.\",\n \"Only + retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n + \ ],\n \"description\": \"Filter on videos of a specific + type.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"enum\": [\n \"videoTypeUnspecified\",\n + \ \"any\",\n \"movie\",\n \"episode\"\n + \ ]\n },\n \"videoCaption\": {\n \"enum\": + [\n \"videoCaptionUnspecified\",\n \"any\",\n + \ \"closedCaption\",\n \"none\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"Filter + on the presence of captions on the videos.\",\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Do not filter results based on caption availability.\",\n + \ \"Only include videos that have captions.\",\n \"Only + include videos that do not have captions.\"\n ]\n },\n + \ \"videoDimension\": {\n \"description\": \"Filter + on 3d videos.\",\n \"type\": \"string\",\n \"enum\": + [\n \"any\",\n \"2d\",\n \"3d\"\n + \ ],\n \"enumDescriptions\": [\n \"Include + both 3D and non-3D videos in returned results. This is the default value.\",\n + \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict + search results to only include 3D videos.\"\n ],\n \"location\": + \"query\"\n },\n \"locationRadius\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Filter on distance from the location (specified above).\"\n },\n + \ \"regionCode\": {\n \"type\": \"string\",\n \"description\": + \"Display the content as seen by viewers in this country.\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"repeated\": + true\n },\n \"videoDefinition\": {\n \"type\": + \"string\",\n \"enum\": [\n \"any\",\n \"standard\",\n + \ \"high\"\n ],\n \"description\": + \"Filter on the definition of the videos.\",\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"Return + all videos, regardless of their resolution.\",\n \"Only retrieve + videos in standard definition.\",\n \"Only retrieve HD videos.\"\n + \ ]\n },\n \"maxResults\": {\n \"default\": + \"5\",\n \"maximum\": \"50\",\n \"format\": \"uint32\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"type\": + \"integer\",\n \"location\": \"query\",\n \"minimum\": + \"0\"\n }\n },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/search\",\n + \ \"flatPath\": \"youtube/v3/search\"\n }\n }\n },\n + \ \"liveChatBans\": {\n \"methods\": {\n \"delete\": {\n \"flatPath\": + \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"path\": \"youtube/v3/liveChat/bans\",\n \"httpMethod\": + \"DELETE\",\n \"description\": \"Deletes a chat ban.\",\n \"id\": + \"youtube.liveChatBans.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"scopes\": + \ \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"insert\": {\n \"description\": + \"Inserts a new resource into this collection.\",\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"description\": + \"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.\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"request\": {\n \"$ref\": + \"LiveChatBan\"\n },\n \"httpMethod\": \"POST\",\n \"response\": + {\n \"$ref\": \"LiveChatBan\"\n },\n \"id\": + \"youtube.liveChatBans.insert\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"list\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.liveChatModerators.list\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the liveChatModerator resource parts that the API response will include. Supported - values are id and snippet.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\",\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"default\": \"5\"\n },\n \"liveChatId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The id - of the live chat for which moderators should be returned.\"\n }\n - \ }\n }\n }\n },\n \"watermarks\": {\n \"methods\": - {\n \"set\": {\n \"mediaUpload\": {\n \"accept\": + \ ],\n \"path\": \"youtube/v3/liveChat/bans\"\n }\n + \ }\n },\n \"thumbnails\": {\n \"methods\": {\n \"set\": + {\n \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n + \ \"mediaUpload\": {\n \"maxSize\": \"2097152\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\",\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n - \ }\n }\n },\n \"description\": \"Allows - upload of watermark image and setting it for a channel.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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 + \ ],\n \"protocols\": {\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n + \ },\n \"simple\": {\n \"multipart\": + true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n }\n + \ }\n },\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n + \ \"description\": \"As this is not an insert in a strict sense (it + supports uploading/setting of a thumbnail for multiple videos, which doesn't + result in creation of a single resource), I use a custom verb here.\",\n \"response\": + {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"parameters\": + {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n + \ \"location\": \"query\",\n \"required\": true\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"scopes\": + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n }\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/thumbnails/set\",\n \"parameterOrder\": + [\n \"videoId\"\n ],\n \"id\": \"youtube.thumbnails.set\"\n + \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": + {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"supportsMediaUpload\": true,\n \"path\": - \"youtube/v3/watermarks/set\",\n \"id\": \"youtube.watermarks.set\",\n - \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"httpMethod\": \"POST\"\n },\n - \ \"unset\": {\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"id\": \"youtube.watermarks.unset\",\n \"description\": - \"Allows removal of channel watermark.\",\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n - \ \"parameters\": {\n \"channelId\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"parameters\": {\n \"maxResults\": {\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"location\": \"query\",\n + \ \"default\": \"5\",\n \"minimum\": \"1\",\n \"maximum\": + \"50\"\n },\n \"part\": {\n \"description\": + \"The *part* parameter specifies the superChatEvent resource parts that the + API response will include. This parameter is currently not supported.\",\n + \ \"required\": true,\n \"repeated\": true,\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"hl\": {\n \"location\": + \"query\",\n \"description\": \"Return rendered funding amounts + in specified language.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"youtube.superChatEvents.list\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"path\": + \"youtube/v3/superChatEvents\",\n \"flatPath\": \"youtube/v3/superChatEvents\"\n + \ }\n }\n },\n \"liveStreams\": {\n \"methods\": {\n + \ \"list\": {\n \"path\": \"youtube/v3/liveStreams\",\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.liveStreams.list\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"parameters\": {\n \"pageToken\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"id\": {\n \"description\": + \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n \ },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -7602,57 +7538,56 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\"\n }\n }\n },\n - \ \"videoAbuseReportReasons\": {\n \"methods\": {\n \"list\": - {\n \"parameters\": {\n \"hl\": {\n \"default\": - \"en-US\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the videoCategory resource parts that the - API response will include. Supported values are id and snippet.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"response\": - {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.videoAbuseReportReasons.list\",\n \"httpMethod\": \"GET\",\n + \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n + \ \"default\": \"5\",\n \"location\": \"query\",\n + \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"maximum\": \"50\"\n },\n \"part\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"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.\",\n + \ \"required\": true\n },\n \"mine\": {\n + \ \"location\": \"query\",\n \"type\": \"boolean\"\n + \ }\n },\n \"description\": \"Retrieve the list + of streams associated with the given channel. --\",\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n + \ }\n },\n \"insert\": {\n \"request\": {\n + \ \"$ref\": \"LiveStream\"\n },\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/videoAbuseReportReasons\"\n }\n }\n - \ },\n \"playlistItems\": {\n \"methods\": {\n \"insert\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"id\": - \"youtube.playlistItems.insert\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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 + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"httpMethod\": \"POST\",\n \"description\": + \"Inserts a new stream for the authenticated user.\",\n \"id\": \"youtube.liveStreams.insert\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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 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.\"\n }\n },\n \"path\": - \"youtube/v3/playlistItems\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"delete\": {\n \"id\": \"youtube.playlistItems.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + 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.\"\n },\n \"part\": {\n \"repeated\": + true,\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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, content_details, and status.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"*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 @@ -7661,26 +7596,24 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"list\": {\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"id\": \"youtube.playlistItems.list\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"playlistId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return the playlist items within - the given playlist.\"\n },\n \"videoId\": {\n \"description\": - \"Return the playlist items associated with the given video ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively + be linked to the specified YouTube content owner.\"\n }\n }\n + \ },\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"description\": + \"Updates an existing stream for the authenticated user.\",\n \"parameters\": + {\n \"part\": {\n \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"required\": true,\n \"repeated\": + true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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. @@ -7689,203 +7622,134 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/playlistItems\"\n - \ },\n \"update\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"description\": \"Updates an existing resource.\",\n \"id\": - \"youtube.playlistItems.update\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"channels\": - {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.channels.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"path\": \"youtube/v3/channels\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/channels\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ChannelListResponse\"\n },\n \"parameters\": {\n \"managedByMe\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channels managed by the authenticated - user.\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the ids of channels - owned by the authenticated user.\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"forUsername\": - {\n \"type\": \"string\",\n \"description\": \"Return - the channel associated with a YouTube username.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ },\n \"id\": {\n \"description\": \"Return - the channels with the specified IDs.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"hl\": {\n \"description\": \"Stands for \\\"host - language\\\". Specifies the localization language of the metadata to be filled - into snippet.localized. The field is filled with the default metadata if there - is no localization in the specified language. The parameter value must be - a language code included in the list returned by the i18nLanguages.list method - (e.g. en_US, es_MX).\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"categoryId\": - {\n \"description\": \"Return the channels within the specified - guide category ID.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"location\": \"query\"\n },\n \"mySubscribers\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the channels subscribed to the authenticated user\",\n \"location\": - \"query\"\n }\n }\n },\n \"update\": {\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true,\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/channels\",\n \"path\": - \"youtube/v3/channels\",\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"id\": \"youtube.channels.update\",\n \"request\": - {\n \"$ref\": \"Channel\"\n }\n }\n }\n },\n - \ \"playlists\": {\n \"methods\": {\n \"insert\": {\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/playlists\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.playlists.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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 + owner.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n + \ \"description\": \"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 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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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 + 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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"request\": {\n \"$ref\": + \"LiveStream\"\n },\n \"httpMethod\": \"PUT\",\n \"id\": + \"youtube.liveStreams.update\",\n \"response\": {\n \"$ref\": + \"LiveStream\"\n }\n },\n \"delete\": {\n \"path\": + \"youtube/v3/liveStreams\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.liveStreams.delete\",\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"update\": {\n \"httpMethod\": - \"PUT\",\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + for each separate channel.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Deletes an existing stream for the authenticated + user.\",\n \"httpMethod\": \"DELETE\"\n }\n }\n },\n + \ \"videoCategories\": {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"VideoCategoryListResponse\"\n },\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"id\": \"youtube.videoCategories.list\",\n + \ \"flatPath\": \"youtube/v3/videoCategories\",\n \"parameters\": + {\n \"id\": {\n \"repeated\": true,\n \"type\": + \"string\",\n \"description\": \"Returns the video categories + with the given IDs for Stubby or Apiary.\",\n \"location\": \"query\"\n + \ },\n \"regionCode\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"hl\": + {\n \"default\": \"en-US\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"required\": true,\n \"description\": \"The *part* + parameter specifies the videoCategory resource properties that the API response + will include. Set the parameter value to snippet.\",\n \"type\": + \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/videoCategories\",\n \"httpMethod\": + \"GET\"\n }\n }\n },\n \"captions\": {\n \"methods\": + {\n \"update\": {\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"httpMethod\": \"PUT\",\n \"description\": \"Updates an + existing resource.\",\n \"path\": \"youtube/v3/captions\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"Caption\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"id\": \"youtube.captions.update\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"ID of the Google+ Page for the + channel that the request is on behalf of.\"\n },\n \"sync\": + {\n \"location\": \"query\",\n \"type\": \"boolean\",\n + \ \"description\": \"Extra parameter to allow automatically syncing + the uploaded caption/transcript with the audio.\"\n },\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n }\n },\n \"supportsMediaUpload\": + true,\n \"request\": {\n \"$ref\": \"Caption\"\n },\n + \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n + \ \"multipart\": true\n },\n \"simple\": + {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": + true\n }\n },\n \"accept\": [\n \"text/xml\",\n + \ \"application/octet-stream\",\n \"*/*\"\n ],\n + \ \"maxSize\": \"104857600\"\n }\n },\n \"insert\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"supportsMediaUpload\": + true,\n \"description\": \"Inserts a new resource into this collection.\",\n + \ \"parameters\": {\n \"onBehalfOf\": {\n \"location\": + \"query\",\n \"description\": \"ID of the Google+ Page for the + channel that the request is be on behalf of\",\n \"type\": \"string\"\n + \ },\n \"sync\": {\n \"type\": \"boolean\",\n + \ \"location\": \"query\",\n \"description\": \"Extra + parameter to allow automatically syncing the uploaded caption/transcript with + the audio.\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"The *part* parameter specifies + the caption resource parts that the API response will include. Set the parameter + value to snippet.\",\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": \"*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 @@ -7893,23 +7757,22 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"id\": \"youtube.playlists.update\",\n \"description\": - \"Updates an existing resource.\"\n },\n \"delete\": {\n \"flatPath\": - \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.delete\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"httpMethod\": \"DELETE\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n }\n },\n \"response\": {\n \"$ref\": + \"Caption\"\n },\n \"request\": {\n \"$ref\": + \"Caption\"\n },\n \"mediaUpload\": {\n \"maxSize\": + \"104857600\",\n \"protocols\": {\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n + \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/captions\",\n + \ \"multipart\": true\n }\n },\n \"accept\": + [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ]\n },\n \"httpMethod\": + \"POST\",\n \"path\": \"youtube/v3/captions\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/captions\",\n \"id\": + \"youtube.captions.insert\"\n },\n \"download\": {\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -7917,65 +7780,68 @@ interactions: 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.\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"PlaylistListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOf\": + {\n \"location\": \"query\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\",\n \"type\": \"string\"\n },\n \"tfmt\": + {\n \"location\": \"query\",\n \"description\": + \"Convert the captions into this format. Supported options are sbv, srt, and + vtt.\",\n \"type\": \"string\"\n },\n \"tlang\": + {\n \"description\": \"tlang is the language code; machine translate + the captions into this language.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n + \ \"location\": \"path\",\n \"required\": true,\n + \ \"description\": \"The ID of the caption track to download, + required for One Platform.\",\n \"type\": \"string\"\n }\n + \ },\n \"useMediaDownloadService\": true,\n \"id\": + \"youtube.captions.download\",\n \"path\": \"youtube/v3/captions/{id}\",\n + \ \"description\": \"Downloads a caption track.\",\n \"httpMethod\": + \"GET\",\n \"supportsMediaDownload\": true,\n \"flatPath\": + \"youtube/v3/captions/{id}\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"id\"\n ]\n },\n + \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"flatPath\": \"youtube/v3/playlists\",\n \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.playlists.list\",\n \"parameters\": {\n - \ \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Return the playlists with the given IDs for - Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Return the playlists owned by - the authenticated user.\"\n },\n \"maxResults\": {\n - \ \"location\": \"query\",\n \"minimum\": \"0\",\n - \ \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"default\": \"5\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return content in specified language\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"description\": - \"Return the playlists owned by the specified channel ID.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \ \"path\": \"youtube/v3/captions\",\n \"httpMethod\": \"GET\",\n + \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n + \ ],\n \"response\": {\n \"$ref\": \"CaptionListResponse\"\n + \ },\n \"id\": \"youtube.captions.list\",\n \"flatPath\": + \"youtube/v3/captions\",\n \"parameters\": {\n \"part\": + {\n \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\"\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"description\": \"Returns the captions for the specified video.\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n },\n \"onBehalfOf\": {\n + \ \"description\": \"ID of the Google+ Page for the channel that + the request is on behalf of.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"description\": + \"Returns the captions with the given IDs for Stubby or Apiary.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true\n }\n }\n },\n \"delete\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOf\": {\n \"type\": \"string\",\n + \ \"description\": \"ID of the Google+ Page for the channel that + the request is be on behalf of\",\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -7984,60 +7850,98 @@ interactions: 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.\"\n }\n }\n - \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"download\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"tfmt\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Convert the captions into this format. Supported options are sbv, srt, and - vtt.\"\n },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\",\n \"type\": \"string\"\n - \ },\n \"tlang\": {\n \"description\": \"tlang - is the language code; machine translate the captions into this language.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The ID - of the caption track to download, required for One Platform.\",\n \"location\": - \"path\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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 + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/captions\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n + \ \"id\": \"youtube.captions.delete\",\n \"path\": \"youtube/v3/captions\",\n + \ \"description\": \"Deletes a resource.\"\n }\n }\n },\n + \ \"i18nLanguages\": {\n \"methods\": {\n \"list\": {\n \"path\": + \"youtube/v3/i18nLanguages\",\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"hl\": + {\n \"type\": \"string\",\n \"default\": \"en_US\",\n + \ \"location\": \"query\"\n },\n \"part\": + {\n \"description\": \"The *part* parameter specifies the i18nLanguage + resource properties that the API response will include. Set the parameter + value to snippet.\",\n \"repeated\": true,\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\"\n }\n },\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"id\": \"youtube.i18nLanguages.list\",\n + \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": + {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the membershipsLevel resource parts that + the API response will include. Supported values are id and snippet.\",\n \"type\": + \"string\"\n }\n },\n \"path\": \"youtube/v3/membershipsLevels\",\n + \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"id\": \"youtube.membershipsLevels.list\",\n \"description\": + \"Retrieves a list of all pricing levels offered by a creator to the fans.\"\n + \ }\n }\n },\n \"channelBanners\": {\n \"methods\": + {\n \"insert\": {\n \"parameters\": {\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"Unused, + channel_id is currently derived from the security context of the requestor.\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n }\n - \ },\n \"id\": \"youtube.captions.download\",\n \"useMediaDownloadService\": - true,\n \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"description\": \"Downloads a caption track.\",\n \"supportsMediaDownload\": - true,\n \"flatPath\": \"youtube/v3/captions/{id}\"\n },\n - \ \"insert\": {\n \"supportsMediaUpload\": true,\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n },\n \"sync\": - {\n \"location\": \"query\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"type\": \"boolean\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": + YouTube content owner.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"id\": \"youtube.channelBanners.insert\",\n + \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/channelBanners/insert\",\n + \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"supportsMediaUpload\": + true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n + \ ],\n \"mediaUpload\": {\n \"protocols\": {\n + \ \"simple\": {\n \"multipart\": true,\n \"path\": + \"/upload/youtube/v3/channelBanners/insert\"\n },\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n + \ \"multipart\": true\n }\n },\n \"maxSize\": + \"6291456\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ]\n },\n + \ \"parameterOrder\": [],\n \"request\": {\n \"$ref\": + \"ChannelBannerResource\"\n },\n \"description\": \"Inserts + a new resource into this collection.\",\n \"response\": {\n \"$ref\": + \"ChannelBannerResource\"\n }\n }\n }\n },\n \"playlistItems\": + {\n \"methods\": {\n \"update\": {\n \"httpMethod\": + \"PUT\",\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.playlistItems.update\",\n \"response\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"path\": + \"youtube/v3/playlistItems\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"description\": \"Updates an existing resource.\",\n + \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -8045,24 +7949,47 @@ interactions: content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is be on behalf of\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/captions\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"id\": \"youtube.captions.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\"\n },\n \"list\": {\n \"path\": \"youtube/v3/captions\",\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"repeated\": - true,\n \"description\": \"Returns the captions with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": + individual channel. The CMS account that the user authenticates with must + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": + true\n }\n }\n },\n \"list\": {\n \"response\": + {\n \"$ref\": \"PlaylistItemListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"path\": \"youtube/v3/playlistItems\",\n \"httpMethod\": + \"GET\",\n \"parameters\": {\n \"pageToken\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"maxResults\": {\n \"maximum\": \"50\",\n \"type\": + \"integer\",\n \"minimum\": \"0\",\n \"default\": + \"5\",\n \"format\": \"uint32\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"location\": \"query\"\n + \ },\n \"videoId\": {\n \"location\": \"query\",\n + \ \"description\": \"Return the playlist items associated with + the given video ID.\",\n \"type\": \"string\"\n },\n + \ \"id\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"repeated\": true\n },\n \"playlistId\": + {\n \"type\": \"string\",\n \"description\": \"Return + the playlist items within the given playlist.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"*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 @@ -8070,63 +7997,135 @@ interactions: content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"part\": {\n \"required\": true,\n \"location\": + individual channel. The CMS account that the user authenticates with must + be linked to the specified YouTube content owner.\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n }\n + \ },\n \"id\": \"youtube.playlistItems.list\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n },\n \"insert\": {\n \"id\": \"youtube.playlistItems.insert\",\n + \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"repeated\": true,\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"POST\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Inserts a new resource into this collection.\"\n + \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"id\": + \"youtube.playlistItems.delete\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true\n }\n },\n \"description\": \"Deletes a + resource.\",\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n }\n }\n },\n \"videoAbuseReportReasons\": + {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n + \ \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"httpMethod\": + \"GET\",\n \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"parameters\": {\n \"hl\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"default\": + \"en-US\"\n },\n \"part\": {\n \"description\": + \"The *part* parameter specifies the videoCategory resource parts that the + API response will include. Supported values are id and snippet.\",\n \"location\": \"query\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"required\": true\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ]\n }\n }\n },\n \"activities\": + {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/activities\",\n + \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"parameters\": {\n \"regionCode\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"mine\": + {\n \"type\": \"boolean\",\n \"location\": \"query\"\n + \ },\n \"publishedBefore\": {\n \"type\": + \"string\",\n \"format\": \"google-datetime\",\n \"location\": + \"query\"\n },\n \"publishedAfter\": {\n \"location\": + \"query\",\n \"format\": \"google-datetime\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"maximum\": + \"50\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"location\": \"query\",\n \"type\": \"integer\",\n + \ \"format\": \"uint32\",\n \"default\": \"5\",\n + \ \"minimum\": \"0\"\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"part\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": true,\n \"description\": \"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.\"\n - \ },\n \"videoId\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"Returns - the captions for the specified video.\",\n \"location\": \"query\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"CaptionListResponse\"\n },\n \"id\": \"youtube.captions.list\",\n - \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"flatPath\": \"youtube/v3/captions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/captions\",\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/captions\",\n - \ \"id\": \"youtube.captions.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOf\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is be on behalf of\"\n - \ },\n \"id\": {\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"update\": {\n \"id\": - \"youtube.captions.update\",\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"request\": {\n \"$ref\": \"Caption\"\n - \ },\n \"httpMethod\": \"PUT\",\n \"supportsMediaUpload\": - true,\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"parameters\": {\n - \ \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\"\n - \ },\n \"sync\": {\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + 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.\"\n },\n \"home\": {\n \"type\": + \"boolean\",\n \"location\": \"query\"\n }\n },\n + \ \"id\": \"youtube.activities.list\",\n \"flatPath\": \"youtube/v3/activities\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"ActivityListResponse\"\n }\n }\n + \ }\n },\n \"abuseReports\": {\n \"methods\": {\n \"insert\": + {\n \"description\": \"Inserts a new resource into this collection.\",\n + \ \"id\": \"youtube.abuseReports.insert\",\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"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.\",\n + \ \"required\": true,\n \"repeated\": true\n }\n + \ },\n \"response\": {\n \"$ref\": \"AbuseReport\"\n + \ },\n \"request\": {\n \"$ref\": \"AbuseReport\"\n + \ },\n \"flatPath\": \"youtube/v3/abuseReports\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/abuseReports\",\n \"httpMethod\": + \"POST\"\n }\n }\n },\n \"channelSections\": {\n \"methods\": + {\n \"update\": {\n \"response\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"path\": \"youtube/v3/channelSections\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -8135,90 +8134,83 @@ interactions: content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/captions\",\n \"mediaUpload\": - {\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\",\n - \ \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveChatMessages.delete\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"description\": - \"Deletes a chat message.\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"httpMethod\": \"DELETE\"\n },\n \"list\": {\n \"id\": - \"youtube.liveChatMessages.list\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"LiveChatMessageListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Specifies the localization language in which the system messages should - be returned.\"\n },\n \"profileImageSize\": {\n \"maximum\": - \"720\",\n \"description\": \"Specifies the size of the profile - image that should be returned for each user.\",\n \"minimum\": - \"16\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the liveChatComment resource parts that the API - response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"liveChatId\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"The id of the live chat for which comments - should be returned.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"maximum\": - \"2000\",\n \"default\": \"500\",\n \"minimum\": - \"200\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n },\n \"insert\": {\n \"id\": \"youtube.liveChatMessages.insert\",\n - \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n - \ \"set\": {\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"httpMethod\": \"POST\",\n \"supportsMediaUpload\": true,\n - \ \"mediaUpload\": {\n \"maxSize\": \"2097152\",\n \"protocols\": - {\n \"resumable\": {\n \"multipart\": true,\n - \ \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"description\": \"As this is not an insert in a strict - sense (it supports uploading/setting of a thumbnail for multiple videos, which - doesn't result in creation of a single resource), I use a custom verb here.\",\n - \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"id\": - \"youtube.thumbnails.set\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + individual channel. The CMS account that the user authenticates with must + be linked to the specified YouTube content owner.\"\n },\n \"part\": + {\n \"required\": true,\n \"description\": \"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.\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"httpMethod\": \"PUT\",\n \"description\": + \"Updates an existing resource.\",\n \"id\": \"youtube.channelSections.update\",\n + \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/channelSections\"\n },\n \"delete\": + {\n \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n + \ \"id\": \"youtube.channelSections.delete\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/channelSections\",\n \"description\": + \"Deletes a resource.\",\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": + \"DELETE\"\n },\n \"insert\": {\n \"id\": \"youtube.channelSections.insert\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"required\": true,\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"path\": \"youtube/v3/channelSections\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"response\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"request\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"httpMethod\": + \"POST\"\n },\n \"list\": {\n \"path\": \"youtube/v3/channelSections\",\n \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -8227,42 +8219,186 @@ interactions: content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"Returns the Thumbnail with the given video - IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n }\n - \ }\n }\n }\n },\n \"subscriptions\": {\n \"methods\": - {\n \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n + individual channel. The CMS account that the user authenticates with must + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Return + the ChannelSections with the given IDs for Stubby or Apiary.\"\n },\n + \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": + \"query\",\n \"description\": \"Return the ChannelSections owned + by the authenticated user.\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": + true,\n \"repeated\": true\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Return the ChannelSections owned by the specified + channel ID.\"\n },\n \"hl\": {\n \"description\": + \"Return content in specified language\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.channelSections.list\",\n + \ \"flatPath\": \"youtube/v3/channelSections\",\n \"response\": + {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"GET\"\n }\n }\n },\n + \ \"commentThreads\": {\n \"methods\": {\n \"list\": {\n \"parameters\": + {\n \"channelId\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Returns the comment threads for + all the channel comments (ie does not include comments left on videos).\"\n + \ },\n \"textFormat\": {\n \"enumDescriptions\": + [\n \"\",\n \"Returns the comments in HTML format. + This is the default value.\",\n \"Returns the comments in plain + text format.\"\n ],\n \"description\": \"The requested + text format for the returned comments.\",\n \"default\": \"html\",\n + \ \"location\": \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ],\n + \ \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true,\n \"repeated\": true,\n \"description\": + \"The *part* parameter specifies a comma-separated list of one or more commentThread + resource properties that the API response will include.\"\n },\n + \ \"id\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"description\": + \"Returns the comment threads with the given IDs for Stubby or Apiary.\"\n + \ },\n \"moderationStatus\": {\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ],\n + \ \"location\": \"query\",\n \"description\": \"Limits + the returned comment threads to those with the specified moderation status. + Not compatible with the 'id' filter. Valid values: published, heldForReview, + likelySpam.\",\n \"default\": \"published\"\n },\n + \ \"allThreadsRelatedToChannelId\": {\n \"description\": + \"Returns the comment threads of all videos of the channel and the channel + comments as well.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"searchTerms\": {\n \"description\": + \"Limits the returned comment threads to those matching the specified key + words. Not compatible with the 'id' filter.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"maxResults\": + {\n \"minimum\": \"1\",\n \"location\": \"query\",\n + \ \"maximum\": \"100\",\n \"type\": \"integer\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"format\": + \"uint32\",\n \"default\": \"20\"\n },\n \"order\": + {\n \"enum\": [\n \"orderUnspecified\",\n \"time\",\n + \ \"relevance\"\n ],\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Order by time.\",\n \"Order by relevance.\"\n + \ ],\n \"type\": \"string\",\n \"default\": + \"time\"\n },\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"Returns the comment threads + of the specified video.\",\n \"location\": \"query\"\n },\n + \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"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.\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"CommentThreadListResponse\"\n },\n \"id\": \"youtube.commentThreads.list\",\n + \ \"path\": \"youtube/v3/commentThreads\",\n \"httpMethod\": + \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"flatPath\": \"youtube/v3/commentThreads\"\n + \ },\n \"insert\": {\n \"request\": {\n \"$ref\": + \"CommentThread\"\n },\n \"response\": {\n \"$ref\": + \"CommentThread\"\n },\n \"path\": \"youtube/v3/commentThreads\",\n + \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"id\": \"youtube.commentThreads.insert\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"required\": + true,\n \"description\": \"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.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Inserts + a new resource into this collection.\"\n }\n }\n },\n \"tests\": + {\n \"methods\": {\n \"insert\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"TestItem\"\n },\n \"request\": {\n \"$ref\": + \"TestItem\"\n },\n \"httpMethod\": \"POST\",\n \"flatPath\": + \"youtube/v3/tests\",\n \"parameters\": {\n \"externalChannelId\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"part\": {\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"required\": true,\n \"location\": + \"query\"\n }\n },\n \"description\": \"POST + method.\",\n \"id\": \"youtube.tests.insert\",\n \"path\": + \"youtube/v3/tests\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ]\n }\n }\n },\n \"liveChatModerators\": {\n \"methods\": + {\n \"delete\": {\n \"parameters\": {\n \"id\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n },\n \"description\": + \"Deletes a chat moderator.\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n + \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/subscriptions\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": + \"youtube.liveChatModerators.delete\"\n },\n \"list\": {\n \"parameterOrder\": + [\n \"liveChatId\",\n \"part\"\n ],\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": + \"GET\",\n \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n + \ },\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"flatPath\": + \"youtube/v3/liveChat/moderators\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"id\": \"youtube.liveChatModerators.list\",\n \"parameters\": + {\n \"maxResults\": {\n \"type\": \"integer\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"location\": \"query\",\n + \ \"minimum\": \"0\",\n \"maximum\": \"50\",\n \"format\": + \"uint32\",\n \"default\": \"5\"\n },\n \"liveChatId\": + {\n \"description\": \"The id of the live chat for which moderators + should be returned.\",\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"required\": true,\n \"description\": \"The + *part* parameter specifies the liveChatModerator resource parts that the API + response will include. Supported values are id and snippet.\"\n }\n + \ }\n },\n \"insert\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.insert\"\n - \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/subscriptions\",\n + \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"request\": + {\n \"$ref\": \"LiveChatModerator\"\n },\n \"response\": + {\n \"$ref\": \"LiveChatModerator\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.liveChatModerators.insert\"\n + \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": + {\n \"transition\": {\n \"parameterOrder\": [\n \"broadcastStatus\",\n + \ \"id\",\n \"part\"\n ],\n \"httpMethod\": + \"POST\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n \ \"description\": \"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 @@ -8277,211 +8413,36 @@ interactions: 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.\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"default\": \"5\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"50\"\n },\n \"order\": - {\n \"description\": \"The order of the returned subscriptions\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"location\": \"query\",\n \"default\": - \"relevance\"\n },\n \"mine\": {\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"forChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\",\n \"type\": \"string\"\n },\n - \ \"mySubscribers\": {\n \"type\": \"boolean\",\n \"description\": - \"Return the subscribers of the given channel owner.\",\n \"location\": - \"query\"\n },\n \"myRecentSubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"description\": \"Return the subscriptions of the given - channel owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.subscriptions.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"SubscriptionListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/subscriptions\"\n },\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n }\n }\n },\n \"comments\": {\n \"methods\": - {\n \"markAsSpam\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments/markAsSpam\",\n \"flatPath\": - \"youtube/v3/comments/markAsSpam\",\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Expresses the caller's opinion that one or more - comments should be flagged as spam.\",\n \"id\": \"youtube.comments.markAsSpam\",\n - \ \"parameters\": {\n \"id\": {\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"update\": {\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\",\n \"id\": \"youtube.comments.update\",\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/comments\"\n },\n \"setModerationStatus\": - {\n \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n - \ \"id\",\n \"moderationStatus\"\n ],\n \"description\": - \"Sets the moderation status of one or more comments.\",\n \"id\": - \"youtube.comments.setModerationStatus\",\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Modifies the moderation status of the comments with the given IDs\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"banAuthor\": - {\n \"type\": \"boolean\",\n \"description\": \"If - set to true the author of the comment gets added to the ban list. This means - all future comments of the author will autmomatically be rejected. Only valid - in combination with STATUS_REJECTED.\",\n \"default\": \"false\",\n - \ \"location\": \"query\"\n },\n \"moderationStatus\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the requested moderation status. Note, comments can be in statuses, which - are not available through this call. For example, this call does not allow - to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"location\": - \"query\",\n \"required\": true\n }\n }\n - \ },\n \"delete\": {\n \"id\": \"youtube.comments.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/comments\",\n \"description\": \"Deletes a resource.\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n }\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/comments\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"CommentListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.comments.list\",\n \"parameters\": {\n - \ \"maxResults\": {\n \"minimum\": \"1\",\n \"type\": - \"integer\",\n \"description\": \"The *maxResults* parameter - specifies the maximum number of items that should be returned in the result - set.\",\n \"default\": \"20\",\n \"location\": \"query\",\n - \ \"maximum\": \"100\",\n \"format\": \"uint32\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comments with the given IDs for - One Platform.\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more comment - resource properties that the API response will include.\",\n \"required\": - true\n },\n \"textFormat\": {\n \"location\": - \"query\",\n \"description\": \"The requested text format for - the returned comments.\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"default\": \"html\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ]\n },\n \"parentId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"insert\": {\n \"path\": - \"youtube/v3/comments\",\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"repeated\": true,\n \"description\": \"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.\",\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/comments\",\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"id\": \"youtube.comments.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\"\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"en_US\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"id\": \"youtube.i18nRegions.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/i18nRegions\",\n \"path\": - \"youtube/v3/i18nRegions\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"tests\": {\n \"methods\": - {\n \"insert\": {\n \"response\": {\n \"$ref\": - \"TestItem\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"path\": \"youtube/v3/tests\",\n \"description\": - \"POST method.\",\n \"flatPath\": \"youtube/v3/tests\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"id\": \"youtube.tests.insert\",\n \"parameters\": {\n - \ \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true\n }\n - \ },\n \"httpMethod\": \"POST\"\n }\n }\n },\n - \ \"liveStreams\": {\n \"methods\": {\n \"insert\": {\n \"path\": - \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + for each separate channel.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\",\n \"description\": \"Broadcast to transition.\"\n + \ },\n \"broadcastStatus\": {\n \"enum\": + [\n \"statusUnspecified\",\n \"testing\",\n + \ \"live\",\n \"complete\"\n ],\n + \ \"description\": \"The status to which the broadcast is going + to transition.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Start testing the broadcast. YouTube transmits video to + the broadcast's monitor stream. Note that you can only transition a broadcast + to the testing state if its contentDetails.monitorStream.enableMonitorStream + property is set to true.\\\",\",\n \"Return only persistent + broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting + video.\"\n ],\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n },\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Transition a broadcast to a given status.\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n + \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\"\n + \ },\n \"insertCuepoint\": {\n \"parameterOrder\": [],\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"id\": + \"youtube.liveBroadcasts.insertCuepoint\",\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n + \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n + \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -8497,24 +8458,8 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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, content_details, and status.\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Inserts a new stream for the authenticated - user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.liveStreams.insert\"\n },\n \"update\": {\n \"description\": - \"Updates an existing stream for the authenticated user.\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"*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 @@ -8523,10 +8468,23 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"This parameter can only be used in a properly + be linked to the specified YouTube content owner.\"\n },\n \"id\": + {\n \"description\": \"Broadcast to insert ads to, or equivalently + `external_video_id` for internal use.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Insert cuepoints in a broadcast\",\n + \ \"request\": {\n \"$ref\": \"Cuepoint\"\n }\n + \ },\n \"insert\": {\n \"description\": \"Inserts a + new stream for the authenticated user.\",\n \"httpMethod\": \"POST\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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 @@ -8540,59 +8498,9 @@ interactions: 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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"id\": \"youtube.liveStreams.update\"\n - \ },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.liveStreams.list\",\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\",\n - \ \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"parameters\": {\n \"id\": {\n \"description\": - \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"description\": \"The *maxResults* parameter - specifies the maximum number of items that should be returned in the result - set.\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"minimum\": \"0\",\n - \ \"format\": \"uint32\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + for each separate channel.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"*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 @@ -8602,16 +8510,58 @@ interactions: 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.\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n }\n },\n - \ \"httpMethod\": \"GET\"\n },\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"required\": + true\n }\n },\n \"id\": \"youtube.liveBroadcasts.insert\",\n + \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"request\": {\n \"$ref\": + \"LiveBroadcast\"\n }\n },\n \"update\": {\n \"request\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": + \"Updates an existing broadcast for the authenticated user.\",\n \"id\": + \"youtube.liveBroadcasts.update\",\n \"httpMethod\": \"PUT\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": + {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"description\": \"*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. @@ -8620,8 +8570,58 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + owner.\",\n \"type\": \"string\"\n }\n },\n + \ \"path\": \"youtube/v3/liveBroadcasts\"\n },\n \"list\": + {\n \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n + \ },\n \"id\": \"youtube.liveBroadcasts.list\",\n \"parameters\": + {\n \"mine\": {\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"broadcastType\": {\n \"enumDescriptions\": + [\n \"\",\n \"Return all broadcasts.\",\n \"Return + only scheduled event broadcasts.\",\n \"Return only persistent + broadcasts.\"\n ],\n \"description\": \"Return only + broadcasts with the selected type.\",\n \"default\": \"event\",\n + \ \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n + \ \"all\",\n \"event\",\n \"persistent\"\n + \ ],\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"pageToken\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"location\": \"query\",\n \"required\": + true,\n \"description\": \"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, status and statistics.\",\n \"type\": + \"string\",\n \"repeated\": true\n },\n \"id\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"Return + broadcasts with the given ids from Stubby or Apiary.\"\n },\n \"maxResults\": + {\n \"maximum\": \"50\",\n \"default\": \"5\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"minimum\": + \"0\",\n \"location\": \"query\",\n \"format\": + \"uint32\",\n \"type\": \"integer\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n },\n \"broadcastStatus\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"enum\": + [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n + \ \"active\",\n \"upcoming\",\n \"completed\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all broadcasts.\",\n \"Return current + live broadcasts.\",\n \"Return broadcasts that have not yet + started.\",\n \"Return broadcasts that have already ended.\"\n + \ ]\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -8636,1175 +8636,1042 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + for each separate channel.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n + \ \"description\": \"Retrieve the list of broadcasts associated with + the given channel.\"\n },\n \"delete\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"id\": + \"youtube.liveBroadcasts.delete\",\n \"description\": \"Delete a + given broadcast.\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n + \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Broadcast + to delete.\"\n },\n \"onBehalfOfContentOwner\": {\n + \ \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n }\n },\n \"parameterOrder\": + [\n \"id\"\n ]\n },\n \"bind\": {\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"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.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"required\": true,\n \"description\": \"Broadcast + to bind to the stream\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"streamId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Stream to bind, if not set unbind the current one.\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"description\": + \"Bind a broadcast to a stream.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes an existing stream for the authenticated - user.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"id\": \"youtube.liveStreams.delete\"\n }\n }\n },\n - \ \"members\": {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"filterByMemberChannelId\": {\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"1000\",\n \"location\": \"query\",\n \"default\": - \"5\",\n \"minimum\": \"0\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"mode\": {\n \"default\": - \"all_current\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Parameter that specifies which - channel members to return.\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - only members that joined after the first call with this mode was made.\",\n - \ \"Return all current members, from newest to oldest.\"\n ]\n - \ },\n \"hasAccessToLevel\": {\n \"location\": - \"query\",\n \"description\": \"Filter members in the results - set to the ones that have access to a level.\",\n \"type\": \"string\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"id\": \"youtube.members.list\",\n - \ \"path\": \"youtube/v3/members\",\n \"description\": \"Retrieves - a list of members that match the request criteria for a channel.\",\n \"flatPath\": - \"youtube/v3/members\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"httpMethod\": \"GET\"\n }\n }\n },\n - \ \"commentThreads\": {\n \"methods\": {\n \"list\": {\n \"parameters\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Returns the comment threads of - the specified video.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"order\": - {\n \"type\": \"string\",\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"default\": \"time\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"location\": \"query\"\n - \ },\n \"searchTerms\": {\n \"location\": - \"query\",\n \"description\": \"Limits the returned comment threads - to those matching the specified key words. Not compatible with the 'id' filter.\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\",\n \"type\": - \"integer\",\n \"minimum\": \"1\",\n \"default\": - \"20\",\n \"maximum\": \"100\"\n },\n \"textFormat\": - {\n \"description\": \"The requested text format for the returned - comments.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"default\": \"html\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads of all videos of the channel and the channel comments - as well.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\",\n \"location\": \"query\"\n },\n - \ \"moderationStatus\": {\n \"description\": \"Limits - the returned comment threads to those with the specified moderation status. - Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"default\": \"published\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ]\n },\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Returns - the comment threads with the given IDs for Stubby or Apiary.\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/commentThreads\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.commentThreads.list\",\n \"response\": {\n \"$ref\": - \"CommentThreadListResponse\"\n }\n },\n \"insert\": - {\n \"id\": \"youtube.commentThreads.insert\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n }\n },\n \"ownerDomain\": \"google.com\",\n - \ \"parameters\": {\n \"quotaUser\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"upload_protocol\": - {\n \"type\": \"string\",\n \"description\": \"Upload protocol for - media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"location\": \"query\"\n - \ },\n \"uploadType\": {\n \"location\": \"query\",\n \"description\": - \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n - \ \"type\": \"string\"\n },\n \"oauth_token\": {\n \"location\": - \"query\",\n \"description\": \"OAuth 2.0 token for the current user.\",\n - \ \"type\": \"string\"\n },\n \"key\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"fields\": - {\n \"description\": \"Selector specifying which fields to include in - a partial response.\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"alt\": {\n \"default\": \"json\",\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Data format for response.\",\n \"location\": - \"query\",\n \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ]\n },\n \"prettyPrint\": {\n \"type\": \"boolean\",\n \"default\": - \"true\",\n \"description\": \"Returns response with indentations and - line breaks.\",\n \"location\": \"query\"\n },\n \"callback\": - {\n \"description\": \"JSONP\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"access_token\": {\n \"description\": \"OAuth - access token.\",\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"$.xgafv\": {\n \"type\": \"string\",\n \"enum\": [\n - \ \"1\",\n \"2\"\n ],\n \"description\": \"V1 error - format.\",\n \"enumDescriptions\": [\n \"v1 error format\",\n - \ \"v2 error format\"\n ],\n \"location\": \"query\"\n }\n - \ },\n \"discoveryVersion\": \"v1\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": + \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"parameterOrder\": + [\n \"id\",\n \"part\"\n ],\n \"path\": + \"youtube/v3/liveBroadcasts/bind\",\n \"httpMethod\": \"POST\",\n + \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n }\n + \ }\n }\n }\n },\n \"parameters\": {\n \"access_token\": + {\n \"description\": \"OAuth access token.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"fields\": {\n \"description\": + \"Selector specifying which fields to include in a partial response.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"upload_protocol\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": + \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n },\n + \ \"callback\": {\n \"type\": \"string\",\n \"description\": \"JSONP\",\n + \ \"location\": \"query\"\n },\n \"alt\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"Responses with Content-Type of application/json\",\n + \ \"Media download with context-dependent Content-Type\",\n \"Responses + with Content-Type of application/x-protobuf\"\n ],\n \"default\": + \"json\",\n \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n + \ ],\n \"location\": \"query\",\n \"description\": \"Data format + for response.\"\n },\n \"uploadType\": {\n \"description\": \"Legacy + upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"oauth_token\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n \"description\": + \"OAuth 2.0 token for the current user.\"\n },\n \"$.xgafv\": {\n \"enumDescriptions\": + [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"V1 error + format.\",\n \"enum\": [\n \"1\",\n \"2\"\n ]\n },\n + \ \"prettyPrint\": {\n \"location\": \"query\",\n \"description\": + \"Returns response with indentations and line breaks.\",\n \"default\": + \"true\",\n \"type\": \"boolean\"\n },\n \"key\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"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.\"\n },\n + \ \"quotaUser\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"ownerName\": \"Google\",\n \"batchPath\": + \"batch\",\n \"name\": \"youtube\",\n \"title\": \"YouTube Data API v3\",\n + \ \"discoveryVersion\": \"v1\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n + \ \"id\": \"youtube:v3\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n + \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n + \ },\n \"kind\": \"discovery#restDescription\",\n \"servicePath\": \"\",\n + \ \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"version\": \"v3\",\n + \ \"description\": \"The YouTube Data API v3 is an API that provides access + to YouTube data, such as videos, playlists, and channels.\",\n \"canonicalName\": + \"YouTube\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n + \ \"basePath\": \"\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": + {\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": + relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube\": + {\n \"description\": \"Manage your YouTube account\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": {\n \"description\": \"See a list of your current active channel members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n }\n }\n - \ }\n },\n \"revision\": \"20230131\",\n \"version\": \"v3\",\n \"icons\": - {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"schemas\": {\n \"PlaylistLocalization\": {\n \"type\": \"object\",\n - \ \"description\": \"Playlist localization setting\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for playlist's title.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's description.\"\n }\n },\n \"id\": - \"PlaylistLocalization\"\n },\n \"SubscriptionSnippet\": {\n \"type\": - \"object\",\n \"description\": \"Basic details about a subscription, - including title, description and thumbnails of the subscribed item.\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The subscription's title.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the subscriber's channel.\"\n },\n \"resourceId\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"description\": \"The id object contains - information about the channel that the user subscribed to.\",\n \"$ref\": - \"ResourceId\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The subscription's details.\"\n - \ },\n \"channelTitle\": {\n \"description\": \"Channel - title for the channel that the subscription belongs to.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the subscription was created.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"SubscriptionSnippet\"\n },\n \"ResourceId\": {\n \"description\": - \"A resource id is a generic reference that points to another YouTube resource.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"description\": \"The type of the API resource.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a playlist. This property - is only present if the resourceId.kind value is youtube#playlist.\"\n }\n - \ },\n \"id\": \"ResourceId\"\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"description\": \"A single tag suggestion with it's relevance information.\",\n - \ \"id\": \"VideoSuggestionsTagSuggestion\",\n \"properties\": {\n - \ \"categoryRestricts\": {\n \"description\": \"A set of video - categories for which the tag is relevant. You can use this information to - display appropriate tag suggestions based on the video category that the video - uploader associates with the video. By default, tag suggestions are relevant - for all categories if there are no restricts defined for the keyword.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"tag\": {\n \"type\": \"string\",\n - \ \"description\": \"The keyword tag suggested for the video.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"Entity\": {\n - \ \"id\": \"Entity\",\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n },\n \"url\": - {\n \"type\": \"string\"\n },\n \"typeId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"LevelDetails\": {\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The name that should be used when referring to this level.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LevelDetails\"\n },\n - \ \"CommentThreadSnippet\": {\n \"id\": \"CommentThreadSnippet\",\n - \ \"description\": \"Basic details about a comment thread.\",\n \"type\": - \"object\",\n \"properties\": {\n \"isPublic\": {\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\",\n \"type\": \"boolean\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comments refer to, if any. No video_id implies a channel discussion - comment.\"\n },\n \"canReply\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n - \ \"totalReplyCount\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The total number of replies (not - including the top level comment).\"\n },\n \"topLevelComment\": - {\n \"description\": \"The top level comment of this thread.\",\n - \ \"$ref\": \"Comment\"\n }\n }\n },\n \"ChannelSectionListResponse\": - {\n \"id\": \"ChannelSectionListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"description\": \"A list of ChannelSections that match the request - criteria.\",\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#channelSectionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n }\n - \ }\n },\n \"InvideoTiming\": {\n \"type\": \"object\",\n \"id\": - \"InvideoTiming\",\n \"description\": \"Describes a temporal position - of a visual widget inside a video.\",\n \"properties\": {\n \"offsetMs\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\"\n },\n - \ \"durationMs\": {\n \"description\": \"Defines the duration - in milliseconds for which the promotion should be displayed. If missing, the - client should use the default.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"Describes a timing type. If the value is offsetFromStart, then the offsetMs - field represents an offset from the start of the video. If the value is offsetFromEnd, - then the offsetMs field represents an offset from the end of the video.\",\n - \ \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"type\": \"string\"\n }\n }\n },\n - \ \"VideoMonetizationDetails\": {\n \"description\": \"Details about - monetization of a YouTube Video.\",\n \"id\": \"VideoMonetizationDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"access\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - value of access indicates whether the video can be monetized or not.\"\n }\n - \ }\n },\n \"Playlist\": {\n \"description\": \"A *playlist* - resource represents a YouTube playlist. A playlist is a collection of videos - that can be viewed sequentially and shared with other users. A playlist can - contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"type\": \"object\",\n \"id\": - \"Playlist\",\n \"properties\": {\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information like video count.\",\n \"$ref\": - \"PlaylistContentDetails\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlist\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - status information for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n - \ },\n \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist, such as its title and description.\"\n },\n \"player\": - {\n \"description\": \"The player object contains information that - you would use to play the playlist in an embedded player.\",\n \"$ref\": - \"PlaylistPlayer\"\n },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the playlist.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"PlaylistStatus\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The playlist's privacy status.\"\n }\n - \ },\n \"id\": \"PlaylistStatus\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"id\": \"LiveStreamConfigurationIssue\",\n \"properties\": - {\n \"type\": {\n \"description\": \"The kind of error happening.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"reason\": {\n \"type\": \"string\",\n - \ \"description\": \"The short-form reason for this issue.\"\n },\n - \ \"severity\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"description\": \"How severe this issue is to the - stream.\"\n },\n \"description\": {\n \"description\": - \"The long-form description of the issue and how to resolve it.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelSnippet\": - {\n \"type\": \"object\",\n \"id\": \"ChannelSnippet\",\n \"description\": - \"Basic details about a channel, including title, description and thumbnails.\",\n - \ \"properties\": {\n \"description\": {\n \"description\": - \"The description of the channel.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the channel was created.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the channel's default - title and description.\"\n },\n \"thumbnails\": {\n \"description\": - \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"country\": - {\n \"type\": \"string\",\n \"description\": \"The country - of the channel.\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"customUrl\": {\n \"description\": \"The custom - url of the channel.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - title.\"\n }\n }\n },\n \"LiveStreamListResponse\": {\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of live - streams that match the request criteria.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"LiveStream\"\n }\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n \"default\": - \"youtube#liveStreamListResponse\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamListResponse\"\n },\n \"ImageSettings\": {\n - \ \"description\": \"Branding properties for images associated with the - channel.\",\n \"properties\": {\n \"bannerMobileImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size (640x175).\"\n },\n \"bannerTvLowImageUrl\": {\n - \ \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"bannerTabletImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size high resolution (2276x377).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size medium resolution (1280x720).\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"trackingImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\"\n - \ },\n \"bannerTvHighImageUrl\": {\n \"description\": - \"Banner image. TV size high resolution (1920x1080).\",\n \"type\": - \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size high resolution (1440x395).\",\n \"type\": - \"string\"\n },\n \"smallBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 640px - by 70px banner image that appears below the video player in the default view - of the video watch page. The URL for the image that appears above the top-left - corner of the video player. This is a 25-pixel-high image with a flexible - width that cannot exceed 170 pixels.\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"bannerMobileLowImageUrl\": {\n \"description\": \"Banner - image. Mobile size low resolution (320x88).\",\n \"type\": \"string\"\n - \ },\n \"watchIconImageUrl\": {\n \"type\": \"string\"\n - \ },\n \"largeBrandedBannerImageUrl\": {\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTabletLowImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size low resolution (1138x188).\"\n },\n \"bannerImageUrl\": - {\n \"description\": \"Banner image. Desktop size (1060x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ImageSettings\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a subscription's subscriber including title, description, channel ID and thumbnails.\",\n - \ \"id\": \"SubscriptionSubscriberSnippet\",\n \"properties\": {\n - \ \"channelId\": {\n \"description\": \"The channel ID of the - subscriber.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The title of the subscriber.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The description of the subscriber.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"description\": \"Thumbnails - for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n }\n - \ }\n },\n \"ActivityContentDetailsSubscription\": {\n \"description\": - \"Information about a channel that a user subscribed to.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that the user subscribed - to.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"id\": - \"ActivityContentDetailsSubscription\",\n \"type\": \"object\"\n },\n - \ \"LiveChatNewSponsorDetails\": {\n \"properties\": {\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level that the viewer just had joined. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"isUpgrade\": {\n \"type\": - \"boolean\",\n \"description\": \"If the viewer just had upgraded - from a lower level. For viewers that were not members at the time of purchase, - this field is false.\"\n }\n },\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"id\": \"ActivityContentDetailsFavorite\",\n \"description\": - \"Information about a video that was marked as a favorite video.\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"VideoCategorySnippet\": {\n \"id\": \"VideoCategorySnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a video category, such as its localized title.\",\n \"properties\": {\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The video category's title.\"\n },\n \"assignable\": {\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel that created the video category.\",\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveStreamStatus\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"healthStatus\": {\n \"description\": - \"The health status of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n - \ },\n \"streamStatus\": {\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"description\": - \"Brief description of the live stream status.\",\n \"id\": \"LiveStreamStatus\"\n - \ },\n \"Caption\": {\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#caption\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the caption track.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"id\": \"Caption\",\n \"type\": \"object\",\n \"description\": - \"A *caption* resource represents a YouTube caption track. A caption track - is associated with exactly one YouTube video.\"\n },\n \"PlaylistItemContentDetails\": - {\n \"properties\": {\n \"note\": {\n \"type\": \"string\",\n - \ \"description\": \"A user-generated note for this item.\"\n },\n - \ \"videoPublishedAt\": {\n \"description\": \"The date and - time that the video was published to YouTube.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"startAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\",\n \"type\": \"string\"\n },\n - \ \"endAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify a video. To retrieve the video resource, - set the id query parameter to this value in your API request.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"PlaylistItemContentDetails\",\n - \ \"type\": \"object\"\n },\n \"LiveChatSuperChatDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made.\"\n },\n \"userComment\": {\n - \ \"type\": \"string\",\n \"description\": \"The comment - added by the user to this Super Chat event.\"\n },\n \"tier\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n },\n \"amountMicros\": {\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"amountDisplayString\": {\n \"type\": \"string\",\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\"\n - \ }\n },\n \"id\": \"LiveChatSuperChatDetails\"\n },\n - \ \"InvideoPosition\": {\n \"properties\": {\n \"cornerPosition\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\",\n - \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"type\": - \"string\"\n },\n \"type\": {\n \"enum\": [\n \"corner\"\n - \ ],\n \"description\": \"Defines the position type.\",\n - \ \"enumDescriptions\": [\n \"\"\n ],\n \"type\": - \"string\"\n }\n },\n \"id\": \"InvideoPosition\",\n \"type\": - \"object\",\n \"description\": \"Describes the spatial position of a - visual widget inside a video. It is a union of various position types, out - of which only will be set one.\"\n },\n \"ChannelBrandingSettings\": - {\n \"type\": \"object\",\n \"description\": \"Branding properties - of a YouTube channel.\",\n \"properties\": {\n \"watch\": {\n - \ \"description\": \"Branding properties for the watch page.\",\n - \ \"$ref\": \"WatchSettings\"\n },\n \"hints\": {\n - \ \"items\": {\n \"$ref\": \"PropertyValue\"\n },\n - \ \"description\": \"Additional experimental branding properties.\",\n - \ \"type\": \"array\"\n },\n \"channel\": {\n \"description\": - \"Branding properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n - \ },\n \"image\": {\n \"$ref\": \"ImageSettings\",\n - \ \"description\": \"Branding properties for branding images.\"\n - \ }\n },\n \"id\": \"ChannelBrandingSettings\"\n },\n \"ChannelConversionPings\": - {\n \"type\": \"object\",\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"id\": \"ChannelConversionPings\",\n \"properties\": - {\n \"pings\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ChannelConversionPing\"\n },\n \"description\": - \"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.\"\n }\n }\n },\n \"ChannelStatus\": {\n \"type\": - \"object\",\n \"id\": \"ChannelStatus\",\n \"description\": \"JSON - template for the status part of a channel.\",\n \"properties\": {\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"longUploadsStatus\": - {\n \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ],\n \"type\": + \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": + \"View and manage your assets and associated content on YouTube\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": + \"See, edit, and permanently delete your YouTube videos, ratings, comments + and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": + {\n \"description\": \"View your YouTube account\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": + \"Manage your YouTube videos\"\n }\n }\n }\n },\n \"documentationLink\": + \"https://developers.google.com/youtube/\",\n \"protocol\": \"rest\",\n \"fullyEncodeReservedExpansion\": + true,\n \"revision\": \"20230308\",\n \"schemas\": {\n \"LiveChatNewSponsorDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"isUpgrade\": + {\n \"type\": \"boolean\",\n \"description\": \"If the viewer + just had upgraded from a lower level. For viewers that were not members at + the time of purchase, this field is false.\"\n },\n \"memberLevelName\": + {\n \"description\": \"The name of the Level that the viewer just + had joined. The Level names are defined by the YouTube channel offering the + Membership. In some situations this field isn't filled.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveChatNewSponsorDetails\"\n + \ },\n \"VideoListResponse\": {\n \"properties\": {\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#videoListResponse\"\n + \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"Video\"\n },\n \"type\": \"array\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"VideoListResponse\"\n },\n + \ \"VideoAbuseReportReason\": {\n \"description\": \"A `__videoAbuseReportReason__` + resource identifies a reason that a video could be reported as abusive. Video + abuse report reasons are used with `video.ReportAbuse`.\",\n \"id\": + \"VideoAbuseReportReason\",\n \"properties\": {\n \"snippet\": + {\n \"description\": \"The `snippet` object contains basic details + about the abuse report reason.\",\n \"$ref\": \"VideoAbuseReportReasonSnippet\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#videoAbuseReportReason\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID of this abuse report reason.\"\n },\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"type\": \"object\"\n },\n \"MembershipsDurationAtLevel\": + {\n \"id\": \"MembershipsDurationAtLevel\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"memberTotalDurationMonths\": {\n \"type\": + \"integer\",\n \"format\": \"int32\",\n \"description\": + \"The cumulative time the user has been a member for the given level in complete + months (the time is rounded down to the nearest integer).\"\n },\n + \ \"memberSince\": {\n \"type\": \"string\",\n \"description\": + \"The date and time when the user became a continuous member for the given + level.\"\n },\n \"level\": {\n \"description\": \"Pricing + level ID.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"LiveBroadcastContentDetails\": {\n \"description\": \"Detailed + settings of a broadcast.\",\n \"properties\": {\n \"enableClosedCaptions\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether HTTP POST closed captioning is enabled for this broadcast. + The ingestion URL of the closed captions is returned through the liveStreams + API. This is mutually exclusive with using the closed_captions_type property, + and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n + \ },\n \"mesh\": {\n \"type\": \"string\",\n \"format\": + \"byte\",\n \"description\": \"The mesh for projecting the video + if projection is mesh. The mesh value must be a UTF-8 string containing the + base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC specification + for an mshp box, excluding the box size and type but including the following + four reserved zero bytes for the version and flags.\"\n },\n \"enableContentEncryption\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether YouTube should enable content encryption for the broadcast.\"\n + \ },\n \"enableAutoStop\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether auto stop is enabled + for this broadcast. The default value for this property is false. This setting + can only be used by Events.\"\n },\n \"enableEmbed\": {\n \"type\": + \"boolean\",\n \"description\": \"This setting indicates whether + the broadcast video can be played in an embedded player. If you choose to + archive the video (using the enableArchive property), this setting will also + apply to the archived video.\"\n },\n \"stereoLayout\": {\n + \ \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n + \ \"leftRight\",\n \"topBottom\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\"\n },\n \"privacyStatus\": {\n \"description\": - \"Privacy status of the channel.\",\n \"type\": \"string\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"isLinked\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\"\n }\n }\n },\n \"SearchResultSnippet\": {\n - \ \"id\": \"SearchResultSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"The title of the channel that published the resource that the search result - identifies.\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The creation date and time of the resource that the search result identifies.\"\n + \"The 3D stereo layout of this broadcast. This defaults to mono.\"\n },\n + \ \"recordFromStart\": {\n \"type\": \"boolean\",\n \"description\": + \"Automatically start recording after the event goes live. The default value + for this property is true. *Important:* You must also set the enableDvr property's + value to true if you want the playback to be available immediately after the + broadcast ends. If you set this property's value to true but do not also set + the enableDvr property to true, there may be a delay of around one day before + the archived video will be available for playback.\"\n },\n \"closedCaptionsType\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n + \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n + \ ],\n \"type\": \"string\"\n },\n \"boundStreamId\": + {\n \"type\": \"string\",\n \"description\": \"This value + uniquely identifies the live stream bound to the broadcast.\"\n },\n + \ \"startWithSlate\": {\n \"description\": \"This setting indicates + whether the broadcast should automatically begin with an in-stream slate when + you update the broadcast's status to live. After updating the status, you + then need to send a liveCuepoints.insert request that sets the cuepoint's + eventState to end to remove the in-stream slate and make your broadcast stream + visible to viewers.\",\n \"type\": \"boolean\"\n },\n \"projection\": + {\n \"type\": \"string\",\n \"enum\": [\n \"projectionUnspecified\",\n + \ \"rectangular\",\n \"360\",\n \"mesh\"\n + \ ],\n \"description\": \"The projection format of this broadcast. + This defaults to rectangular.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"latencyPreference\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"Best for: highest quality viewer playbacks and higher resolutions.\",\n + \ \"Best for: near real-time interaction, with minimal playback + buffering.\",\n \"Best for: real-time interaction Does not support: + Closed captions, 1440p, and 4k resolutions\"\n ],\n \"description\": + \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL + should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true + LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enum\": + [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n + \ \"low\",\n \"ultraLow\"\n ],\n \"type\": + \"string\"\n },\n \"enableAutoStart\": {\n \"type\": + \"boolean\",\n \"description\": \"This setting indicates whether + auto start is enabled for this broadcast. The default value for this property + is false. This setting can only be used by Events.\"\n },\n \"boundStreamLastUpdateTimeMs\": + {\n \"format\": \"date-time\",\n \"description\": \"The + date and time that the live stream referenced by boundStreamId was last updated.\",\n + \ \"type\": \"string\"\n },\n \"enableLowLatency\": + {\n \"description\": \"Indicates whether this broadcast has low latency + enabled.\",\n \"type\": \"boolean\"\n },\n \"monitorStream\": + {\n \"$ref\": \"MonitorStreamInfo\",\n \"description\": + \"The monitorStream object contains information about the monitor stream, + which the broadcaster can use to review the event content before the broadcast + stream is shown publicly.\"\n },\n \"enableDvr\": {\n \"description\": + \"This setting determines whether viewers can access DVR controls while watching + the video. DVR controls enable the viewer to control the video playback experience + by pausing, rewinding, or fast forwarding content. The default value for this + property is true. *Important:* You must set the value to true and also set + the enableArchive property's value to true if you want to make playback available + immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n + \ }\n },\n \"id\": \"LiveBroadcastContentDetails\",\n \"type\": + \"object\"\n },\n \"Channel\": {\n \"type\": \"object\",\n \"properties\": + {\n \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n + \ \"description\": \"The contentDetails object encapsulates information + about the channel's content.\"\n },\n \"status\": {\n \"$ref\": + \"ChannelStatus\",\n \"description\": \"The status object encapsulates + information about the privacy status of the channel.\"\n },\n \"statistics\": + {\n \"$ref\": \"ChannelStatistics\",\n \"description\": + \"The statistics object encapsulates statistics for the channel.\"\n },\n + \ \"brandingSettings\": {\n \"$ref\": \"ChannelBrandingSettings\",\n + \ \"description\": \"The brandingSettings object encapsulates information + about the branding of the channel.\"\n },\n \"snippet\": {\n + \ \"description\": \"The snippet object contains basic details about + the channel, such as its title, description, and thumbnail images.\",\n \"$ref\": + \"ChannelSnippet\"\n },\n \"localizations\": {\n \"type\": + \"object\",\n \"additionalProperties\": {\n \"$ref\": + \"ChannelLocalization\"\n },\n \"description\": \"Localizations + for different languages\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the channel.\"\n },\n \"topicDetails\": {\n \"description\": + \"The topicDetails object encapsulates information about Freebase topics associated + with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n + \ \"auditDetails\": {\n \"description\": \"The auditionDetails + object encapsulates channel data that is relevant for YouTube Partners during + the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#channel\"\n + \ },\n \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n + \ \"description\": \"The conversionPings object encapsulates information + about conversion pings that need to be respected by the channel.\"\n },\n + \ \"contentOwnerDetails\": {\n \"$ref\": \"ChannelContentOwnerDetails\",\n + \ \"description\": \"The contentOwnerDetails object encapsulates channel + data that is relevant for YouTube Partners linked with the channel.\"\n }\n + \ },\n \"id\": \"Channel\",\n \"description\": \"A *channel* + resource contains information about a YouTube channel.\"\n },\n \"VideoMonetizationDetails\": + {\n \"type\": \"object\",\n \"id\": \"VideoMonetizationDetails\",\n + \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n + \ \"description\": \"The value of access indicates whether the video + can be monetized or not.\"\n }\n },\n \"description\": \"Details + about monetization of a YouTube Video.\"\n },\n \"VideoSuggestions\": + {\n \"type\": \"object\",\n \"id\": \"VideoSuggestions\",\n \"description\": + \"Specifies suggestions on how to improve video content, including encoding + hints, tag suggestions, and editor suggestions.\",\n \"properties\": + {\n \"processingWarnings\": {\n \"type\": \"array\",\n \"description\": + \"A list of reasons why YouTube may have difficulty transcoding the uploaded + video or that might result in an erroneous transcoding. These warnings are + generated before YouTube actually processes the uploaded video file. In addition, + they identify issues that are unlikely to cause the video processing to fail + but that might cause problems such as sync issues, video artifacts, or a missing + audio track.\",\n \"items\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"Unrecognized file format, + transcoding is likely to fail.\",\n \"Unrecognized video codec, + transcoding is likely to fail.\",\n \"Unrecognized audio codec, + transcoding is likely to fail.\",\n \"Conflicting container and + stream resolutions.\",\n \"Edit lists are not currently supported.\",\n + \ \"Video codec that is known to cause problems was used.\",\n + \ \"Audio codec that is known to cause problems was used.\",\n + \ \"Unsupported VR video stereo mode.\",\n \"Unsupported + spherical video projection type.\",\n \"Unsupported HDR pixel + format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic + HDR lookup table attached.\"\n ],\n \"enum\": [\n \"unknownContainer\",\n + \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n + \ \"inconsistentResolution\",\n \"hasEditlist\",\n + \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n + \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n + \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n + \ \"problematicHdrLookupTable\"\n ]\n }\n + \ },\n \"editorSuggestions\": {\n \"description\": \"A + list of video editing operations that might improve the video quality or playback + experience of the uploaded video.\",\n \"items\": {\n \"enumDescriptions\": + [\n \"Picture brightness levels seem off and could be corrected.\",\n + \ \"The video appears shaky and could be stabilized.\",\n \"Margins + (mattes) detected around the picture could be cropped.\",\n \"The + audio track appears silent and could be swapped with a better quality one.\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n + \ \"videoAutoLevels\",\n \"videoStabilize\",\n \"videoCrop\",\n + \ \"audioQuietAudioSwap\"\n ]\n },\n \"type\": + \"array\"\n },\n \"tagSuggestions\": {\n \"items\": + {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n },\n + \ \"description\": \"A list of keyword tags that could be added to + the video's metadata to increase the likelihood that users will locate your + video when searching or browsing on YouTube.\",\n \"type\": \"array\"\n + \ },\n \"processingHints\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"enumDescriptions\": [\n \"The + MP4 file is not streamable, this will slow down the processing. MOOV atom + was not found at the beginning of the file.\",\n \"Probably a + better quality version of the video exists. The video has wide screen aspect + ratio, but is not an HD video.\",\n \"Uploaded video is spherical + video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded + video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n + \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n + \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n + \ ]\n },\n \"description\": \"A list of suggestions + that may improve YouTube's ability to process the video.\"\n },\n \"processingErrors\": + {\n \"description\": \"A list of errors that will prevent YouTube + from successfully processing the uploaded video video. These errors indicate + that, regardless of the video's current processing status, eventually, that + status will almost certainly be failed.\",\n \"items\": {\n \"enumDescriptions\": + [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image + file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft + Windows Movie Maker project).\",\n \"Other non-video file.\",\n + \ \"Document or text file (e.g., MS Word document).\",\n \"An + archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial + audio layout type.\"\n ],\n \"enum\": [\n \"audioFile\",\n + \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n + \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n + \ ],\n \"type\": \"string\"\n },\n \"type\": + \"array\"\n }\n }\n },\n \"LiveStreamSnippet\": {\n \"properties\": + {\n \"title\": {\n \"description\": \"The stream's title. + The value must be between 1 and 128 characters long.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time that the stream was created.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the channel that is transmitting the stream.\",\n \"type\": \"string\"\n + \ },\n \"isDefaultStream\": {\n \"type\": \"boolean\"\n \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"A description of the search result.\"\n },\n - \ \"liveBroadcastContent\": {\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"description\": \"It indicates if the resource (video - or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" - if there is not any upcoming/active live broadcasts.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"title\": {\n \"description\": \"The title of the search - result.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The value - that YouTube uses to uniquely identify the channel that published the resource - that the search result identifies.\"\n }\n },\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"allowed\": - {\n \"type\": \"array\",\n \"description\": \"A list of - region codes that identify countries where the video is viewable. If this - property is present and a country is not listed in its value, then the video - is blocked from appearing in that country. If this property is present and - contains an empty list, the video is blocked in all countries.\",\n \"items\": + \ \"description\": \"The stream's description. The value cannot be + longer than 10000 characters.\"\n }\n },\n \"id\": \"LiveStreamSnippet\",\n + \ \"type\": \"object\"\n },\n \"Entity\": {\n \"id\": \"Entity\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n + \ \"type\": \"string\"\n },\n \"url\": {\n \"type\": + \"string\"\n },\n \"typeId\": {\n \"type\": \"string\"\n + \ }\n }\n },\n \"ActivityContentDetailsComment\": {\n \"id\": + \"ActivityContentDetailsComment\",\n \"description\": \"Information about + a resource that received a comment.\",\n \"type\": \"object\",\n \"properties\": + {\n \"resourceId\": {\n \"description\": \"The resourceId + object contains information that identifies the resource associated with the + comment.\",\n \"$ref\": \"ResourceId\"\n }\n }\n },\n + \ \"ActivityContentDetailsPlaylistItem\": {\n \"properties\": {\n \"playlistId\": + {\n \"description\": \"The value that YouTube uses to uniquely identify + the playlist.\",\n \"type\": \"string\"\n },\n \"playlistItemId\": + {\n \"type\": \"string\",\n \"description\": \"ID of the + item within the playlist.\"\n },\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information about the resource that was added to the playlist.\"\n }\n + \ },\n \"description\": \"Information about a new playlist item.\",\n + \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPlaylistItem\"\n + \ },\n \"InvideoPosition\": {\n \"properties\": {\n \"type\": + {\n \"enum\": [\n \"corner\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\"\n ],\n + \ \"description\": \"Defines the position type.\"\n },\n \"cornerPosition\": + {\n \"description\": \"Describes in which corner of the video the + visual widget will appear.\",\n \"type\": \"string\",\n \"enum\": + [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n + \ \"bottomRight\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n }\n },\n \"description\": \"Describes the spatial + position of a visual widget inside a video. It is a union of various position + types, out of which only will be set one.\",\n \"id\": \"InvideoPosition\",\n + \ \"type\": \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": + {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n \"properties\": + {\n \"allowed\": {\n \"type\": \"array\",\n \"description\": + \"A list of region codes that identify countries where the video is viewable. + If this property is present and a country is not listed in its value, then + the video is blocked from appearing in that country. If this property is present + and contains an empty list, the video is blocked in all countries.\",\n \"items\": {\n \"type\": \"string\"\n }\n },\n \"blocked\": {\n \"description\": \"A list of region codes that identify countries where the video is blocked. If this property is present and a country is not listed in its value, then the video is viewable in that country. If this property is present and contains an empty list, the video is viewable in all countries.\",\n \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n }\n },\n \"id\": \"VideoContentDetailsRegionRestriction\"\n - \ },\n \"VideoRating\": {\n \"description\": \"Basic details about - rating of a video.\",\n \"id\": \"VideoRating\",\n \"properties\": - {\n \"rating\": {\n \"description\": \"Rating of a video.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The entity - is liked.\",\n \"The entity is disliked.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n },\n \"videoId\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelSectionLocalization\": {\n \"description\": - \"ChannelSection localization setting\",\n \"id\": \"ChannelSectionLocalization\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The localized - strings for channel section's title.\"\n }\n }\n },\n \"VideoRecordingDetails\": - {\n \"id\": \"VideoRecordingDetails\",\n \"properties\": {\n \"recordingDate\": - {\n \"description\": \"The date and time when the video was recorded.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"location\": {\n \"$ref\": \"GeoPoint\",\n \"description\": - \"The geolocation information associated with the video.\"\n },\n \"locationDescription\": - {\n \"description\": \"The text description of the location where - the video was recorded.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Recording information associated with the video.\",\n - \ \"type\": \"object\"\n },\n \"MembershipsLevelSnippet\": {\n \"properties\": - {\n \"creatorChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The id of the channel that's offering channel memberships.\"\n },\n - \ \"levelDetails\": {\n \"description\": \"Details about the - pricing level.\",\n \"$ref\": \"LevelDetails\"\n }\n },\n - \ \"id\": \"MembershipsLevelSnippet\",\n \"type\": \"object\"\n },\n - \ \"VideoGetRatingResponse\": {\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of ratings that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"VideoRating\"\n },\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoGetRatingResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoGetRatingResponse\"\n },\n \"ChannelLocalization\": - {\n \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel's description.\"\n },\n \"title\": {\n \"description\": - \"The localized strings for channel's title.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Channel localization setting\",\n - \ \"id\": \"ChannelLocalization\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"Details about a resource which was added to a channel.\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource that was added to the channel.\"\n }\n }\n - \ },\n \"PlaylistItem\": {\n \"id\": \"PlaylistItem\",\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#playlistItem\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the playlist item, such as its title and position in the - playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the playlist item.\"\n },\n \"status\": - {\n \"$ref\": \"PlaylistItemStatus\",\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistItemContentDetails\",\n \"description\": \"The contentDetails - object is included in the resource if the included item is a YouTube video. - The object contains additional information about the video.\"\n }\n - \ }\n },\n \"MembershipsLevel\": {\n \"id\": \"MembershipsLevel\",\n - \ \"description\": \"A *membershipsLevel* resource represents an offer - made by YouTube creators for their fans. Users can become members of the channel - by joining one of the available levels. They will provide recurring monetary - support and receives special benefits.\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#membershipsLevel\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the memberships level.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"properties\": {\n \"banDurationSeconds\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The duration of the ban. This property is only present if the banType is - temporary.\"\n },\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"The details of the - user that was banned.\"\n },\n \"banType\": {\n \"type\": - \"string\",\n \"description\": \"The type of ban.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"permanent\",\n \"temporary\"\n ]\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"type\": \"object\",\n \"description\": \"Information about - a video stream.\",\n \"properties\": {\n \"rotation\": {\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ]\n },\n \"widthPixels\": {\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\"\n },\n \"aspectRatio\": - {\n \"type\": \"number\",\n \"description\": \"The video - content's display aspect ratio, which specifies the aspect ratio in which - the video should be displayed.\",\n \"format\": \"double\"\n },\n - \ \"bitrateBps\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The video stream's bitrate, in bits - per second.\"\n },\n \"heightPixels\": {\n \"format\": - \"uint32\",\n \"description\": \"The encoded video content's height - in pixels.\",\n \"type\": \"integer\"\n },\n \"frameRateFps\": - {\n \"format\": \"double\",\n \"description\": \"The video - stream's frame rate, in frames per second.\",\n \"type\": \"number\"\n - \ },\n \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The video codec that the stream uses.\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n }\n },\n \"id\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"ThumbnailSetResponse\": {\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n \"default\": - \"youtube#thumbnailSetResponse\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of thumbnails.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ThumbnailSetResponse\",\n \"type\": \"object\"\n },\n \"AccessPolicy\": - {\n \"properties\": {\n \"exception\": {\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n },\n \"allowed\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of allowed indicates whether the access to the policy is allowed or denied - by default.\"\n }\n },\n \"id\": \"AccessPolicy\",\n \"type\": - \"object\",\n \"description\": \"Rights management policy for YouTube - resources.\"\n },\n \"LiveChatBan\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#liveChatBan\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the ban.\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the ban.\"\n }\n },\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\",\n - \ \"id\": \"LiveChatBan\"\n },\n \"Video\": {\n \"description\": - \"A *video* resource represents a YouTube video.\",\n \"id\": \"Video\",\n - \ \"properties\": {\n \"liveStreamingDetails\": {\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#video\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object contains statistics about the video.\",\n \"$ref\": \"VideoStatistics\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"VideoContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\"\n },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.videos.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n },\n \"snippet\": - {\n \"$ref\": \"VideoSnippet\",\n \"description\": \"The - snippet object contains basic details about the video, such as its title, - description, and category.\"\n },\n \"projectDetails\": {\n - \ \"$ref\": \"VideoProjectDetails\",\n \"description\": \"The - projectDetails object contains information about the project specific video - metadata. b/157517979: This part was never populated after it was added. However, - it sees non-zero traffic because there is generated client code in the wild - that refers to it [1]. We keep this field and do NOT remove it because otherwise - V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"topicDetails\": {\n \"$ref\": \"VideoTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the video.\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the video's uploading, processing, and privacy statuses.\",\n \"$ref\": - \"VideoStatus\"\n },\n \"recordingDetails\": {\n \"$ref\": - \"VideoRecordingDetails\",\n \"description\": \"The recordingDetails - object encapsulates information about the location, date and address where - the video was recorded.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"VideoLocalization\"\n },\n \"description\": \"The localizations - object contains localized versions of the basic details about the video, such - as its title and description.\"\n },\n \"fileDetails\": {\n - \ \"$ref\": \"VideoFileDetails\",\n \"description\": \"The - fileDetails object encapsulates information about the video file that was - uploaded to YouTube, including the file's resolution, duration, audio and - video codecs, stream bitrates, and more. This data can only be retrieved by - the video owner.\"\n },\n \"suggestions\": {\n \"$ref\": - \"VideoSuggestions\",\n \"description\": \"The suggestions object - encapsulates suggestions that identify opportunities to improve the video - quality or the metadata for the uploaded video. This data can only be retrieved - by the video owner.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"player\": {\n \"description\": \"The player object contains - information that you would use to play the video in an embedded player.\",\n - \ \"$ref\": \"VideoPlayer\"\n },\n \"ageGating\": {\n - \ \"description\": \"Age restriction details related to a video. This - data can only be retrieved by the video owner.\",\n \"$ref\": \"VideoAgeGating\"\n - \ },\n \"monetizationDetails\": {\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\",\n \"$ref\": \"VideoMonetizationDetails\"\n - \ },\n \"processingDetails\": {\n \"$ref\": \"VideoProcessingDetails\",\n - \ \"description\": \"The processingDetails object encapsulates information - about YouTube's progress in processing the uploaded video file. The properties - in the object identify the current processing status and an estimate of the - time remaining until YouTube finishes processing the video. This part also - indicates whether different types of data or content, such as file details - or thumbnail images, are available for the video. The processingProgress object - is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\"\n }\n },\n \"type\": - \"object\"\n },\n \"I18nRegion\": {\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#i18nRegion\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"I18nRegionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n region, such as region code and human-readable name.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n - \ \"id\": \"I18nRegion\"\n },\n \"SuperChatEventListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#superChatEventListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"SuperChatEvent\"\n },\n \"description\": \"A list of Super - Chat purchases that match the request criteria.\",\n \"type\": \"array\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"SuperChatEventListResponse\"\n },\n \"MembershipsDetails\": {\n \"properties\": - {\n \"membershipsDurationAtLevels\": {\n \"type\": \"array\",\n - \ \"description\": \"Data about memberships duration on particular - pricing levels.\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ }\n },\n \"highestAccessibleLevel\": {\n \"type\": - \"string\",\n \"description\": \"Id of the highest level that the - user has access to at the moment.\"\n },\n \"membershipsDuration\": - {\n \"$ref\": \"MembershipsDuration\",\n \"description\": - \"Data about memberships duration without taking into consideration pricing - levels.\"\n },\n \"highestAccessibleLevelDisplayName\": {\n - \ \"description\": \"Display name for the highest level that the user - has access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"accessibleLevels\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\"\n - \ }\n },\n \"id\": \"MembershipsDetails\",\n \"type\": - \"object\"\n },\n \"VideoPlayer\": {\n \"description\": \"Player - to be used for a video playback.\",\n \"id\": \"VideoPlayer\",\n \"properties\": - {\n \"embedHeight\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"embedHtml\": {\n \"type\": \"string\",\n - \ \"description\": \"An \\u003ciframe\\u003e tag that embeds a player - that will play the video.\"\n },\n \"embedWidth\": {\n \"type\": - \"string\",\n \"description\": \"The embed width\",\n \"format\": - \"int64\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": - {\n \"properties\": {\n \"pollingIntervalMillis\": {\n \"format\": - \"uint32\",\n \"description\": \"The amount of time the client should - wait before polling again.\",\n \"type\": \"integer\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatMessageListResponse\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": + \"array\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"DEPRECATED Region restriction of the video.\"\n },\n \"MonitorStreamInfo\": + {\n \"type\": \"object\",\n \"description\": \"Settings and Info + of the monitor stream\",\n \"properties\": {\n \"broadcastStreamDelayMs\": + {\n \"format\": \"uint32\",\n \"description\": \"If you + have set the enableMonitorStream property to true, then this property determines + the length of the live broadcast delay.\",\n \"type\": \"integer\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n }\n },\n \"embedHtml\": {\n \"description\": + \"HTML code that embeds a player that plays the monitor stream.\",\n \"type\": + \"string\"\n },\n \"enableMonitorStream\": {\n \"description\": + \"This value determines whether the monitor stream is enabled for the broadcast. + If the monitor stream is enabled, then YouTube will broadcast the event content + on a special stream intended only for the broadcaster's consumption. The broadcaster + can use the stream to review the event content and also to identify the optimal + times to insert cuepoints. You need to set this value to true if you intend + to have a broadcast delay for your event. *Note:* This property cannot be + updated once the broadcast is in the testing or live state.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"type\": \"boolean\"\n }\n + \ },\n \"id\": \"MonitorStreamInfo\"\n },\n \"ActivityContentDetailsPromotedItem\": + {\n \"description\": \"Details about a resource which is being promoted.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"ctaType\": + {\n \"type\": \"string\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n + \ \"visitAdvertiserSite\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"description\": + \"The type of call-to-action, a message to the user indicating action that + can be taken.\"\n },\n \"adTag\": {\n \"type\": \"string\",\n + \ \"description\": \"The URL the client should fetch to request a + promoted item.\"\n },\n \"forecastingUrl\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"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.\",\n \"type\": \"array\"\n },\n \"descriptionText\": + {\n \"type\": \"string\",\n \"description\": \"The text + description to accompany the promoted item.\"\n },\n \"impressionUrl\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"The list of impression + URLs. The client should ping all of these URLs to indicate that the user was + shown this promoted item.\"\n },\n \"destinationUrl\": {\n \"description\": + \"The URL the client should direct the user to, if the user chooses to visit + the advertiser's website.\",\n \"type\": \"string\"\n },\n + \ \"customCtaButtonText\": {\n \"description\": \"The custom + call-to-action button text. If specified, it will override the default button + text for the cta_type.\",\n \"type\": \"string\"\n },\n \"clickTrackingUrl\": + {\n \"description\": \"The URL the client should ping to indicate + that the user clicked through on this promoted item.\",\n \"type\": + \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the promoted video.\"\n },\n \"creativeViewUrl\": {\n \"description\": + \"The URL the client should ping to indicate that the user was shown this + promoted item.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"ActivityContentDetailsPromotedItem\"\n },\n \"ChannelStatus\": {\n + \ \"properties\": {\n \"isLinked\": {\n \"description\": + \"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.\",\n \"type\": + \"boolean\"\n },\n \"longUploadsStatus\": {\n \"description\": + \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 + for more information.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"longUploadsUnspecified\",\n + \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n + \ ]\n },\n \"madeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"privacyStatus\": {\n \"description\": \"Privacy + status of the channel.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ]\n },\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n }\n },\n \"description\": + \"JSON template for the status part of a channel.\",\n \"id\": \"ChannelStatus\",\n + \ \"type\": \"object\"\n },\n \"LiveStream\": {\n \"type\": + \"object\",\n \"description\": \"A live stream describes a live ingestion + point.\",\n \"id\": \"LiveStream\",\n \"properties\": {\n \"cdn\": + {\n \"description\": \"The cdn object defines the live stream's content + delivery network (CDN) settings. These settings provide details about the + manner in which you stream your content to YouTube.\",\n \"$ref\": + \"CdnSettings\"\n },\n \"contentDetails\": {\n \"description\": + \"The content_details object contains information about the stream, including + the closed captions ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n + \ },\n \"status\": {\n \"description\": \"The status + object contains information about live stream's status.\",\n \"$ref\": + \"LiveStreamStatus\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveStream\",\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the stream, including its + channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.update\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + assigns to uniquely identify the stream.\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"offlineAt\": {\n \"description\": \"The date - and time when the underlying stream went offline.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatMessageListResponse\"\n },\n \"WatchSettings\": - {\n \"type\": \"object\",\n \"id\": \"WatchSettings\",\n \"properties\": - {\n \"textColor\": {\n \"description\": \"The background color - for the video watch page's branded area.\",\n \"type\": \"string\"\n - \ },\n \"backgroundColor\": {\n \"description\": \"The - text color for the video watch page's branded area.\",\n \"type\": - \"string\"\n },\n \"featuredPlaylistId\": {\n \"type\": - \"string\",\n \"description\": \"An ID that uniquely identifies a - playlist that displays next to the video player.\"\n }\n },\n - \ \"description\": \"Branding properties for the watch. All deprecated.\"\n - \ },\n \"VideoTopicDetails\": {\n \"properties\": {\n \"topicCategories\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Wikipedia - URLs that provide a high-level description of the video's content.\"\n },\n - \ \"topicIds\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of Freebase topic IDs that - are centrally associated with the video. These are topics that are centrally - featured in the video, and it can be said that the video is mainly about each - of these. You can retrieve information about each topic using the \\u003c - a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase Topic - API.\",\n \"type\": \"array\"\n },\n \"relevantTopicIds\": - {\n \"type\": \"array\",\n \"description\": \"Similar to - topic_id, except that these topics are merely relevant to the video. These - are topics that may be mentioned in, or appear in the video. You can retrieve - information about each topic using Freebase Topic API.\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"description\": - \"Freebase topic information related to the video.\",\n \"type\": \"object\",\n - \ \"id\": \"VideoTopicDetails\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"id\": \"LiveChatMembershipGiftingDetails\",\n \"properties\": - {\n \"giftMembershipsCount\": {\n \"description\": \"The number - of gift memberships purchased by the user.\",\n \"format\": \"int32\",\n - \ \"type\": \"integer\"\n },\n \"giftMembershipsLevelName\": - {\n \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelToStoreLinkDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"properties\": {\n \"merchantId\": {\n \"format\": - \"uint64\",\n \"description\": \"Google Merchant Center id of the - store.\",\n \"type\": \"string\"\n },\n \"storeUrl\": - {\n \"description\": \"Landing page of the store.\",\n \"type\": - \"string\"\n },\n \"storeName\": {\n \"description\": - \"Name of the store.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"SubscriptionContentDetails\": {\n \"properties\": {\n \"totalItemCount\": - {\n \"description\": \"The approximate number of items that the subscription - points to.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ },\n \"newItemCount\": {\n \"description\": \"The - number of new items in the subscription since its content was last read.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"activityType\": {\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The type of activity this subscription is for - (only uploads, everything).\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Details about the content to witch a subscription - refers.\",\n \"type\": \"object\",\n \"id\": \"SubscriptionContentDetails\"\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"properties\": {\n - \ \"amountMicros\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The amount of the fund.\"\n },\n - \ \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the user to this fan funding event.\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the fund was made.\",\n \"type\": \"string\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"PlaylistListResponse\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistListResponse\",\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"default\": \"youtube#playlistListResponse\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of playlists that match the request criteria\",\n \"items\": - {\n \"$ref\": \"Playlist\"\n }\n },\n \"prevPageToken\": + \"string\"\n }\n }\n },\n \"ChannelLocalization\": {\n \"type\": + \"object\",\n \"properties\": {\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The localized strings for channel's + description.\"\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The localized strings for channel's title.\"\n + \ }\n },\n \"description\": \"Channel localization setting\",\n + \ \"id\": \"ChannelLocalization\"\n },\n \"PlaylistItemListResponse\": + {\n \"id\": \"PlaylistItemListResponse\",\n \"properties\": {\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n + \ },\n \"description\": \"A list of playlist items that match + the request criteria.\",\n \"type\": \"array\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"visitorId\": {\n \"description\": + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#playlistItemListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". + Etag of this resource.\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"etag\": {\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"SuperChatEventSnippet\": {\n \"type\": + \"object\",\n \"id\": \"SuperChatEventSnippet\",\n \"properties\": + {\n \"createdAt\": {\n \"description\": \"The date and time + when the event occurred.\",\n \"type\": \"string\",\n \"format\": + \"date-time\"\n },\n \"currency\": {\n \"description\": + \"The currency in which the purchase was made. ISO 4217.\",\n \"type\": + \"string\"\n },\n \"amountMicros\": {\n \"format\": + \"uint64\",\n \"description\": \"The purchase amount, in micros of + the purchase currency. e.g., 1 is represented as 1000000.\",\n \"type\": + \"string\"\n },\n \"commentText\": {\n \"description\": + \"The text contents of the comment left by the user.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel id where the event occurred.\"\n },\n + \ \"supporterDetails\": {\n \"description\": \"Details about + the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n + \ \"isSuperStickerEvent\": {\n \"description\": \"True if this + event is a Super Sticker event.\",\n \"type\": \"boolean\"\n },\n + \ \"superStickerMetadata\": {\n \"$ref\": \"SuperStickerMetadata\",\n + \ \"description\": \"If this event is a Super Sticker event, this + field will contain metadata about the Super Sticker.\"\n },\n \"messageType\": + {\n \"description\": \"The tier for the paid message, which is based + on the amount of money spent to purchase the message.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"displayString\": + {\n \"type\": \"string\",\n \"description\": \"A rendered + string that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). + The string is rendered for the given language.\"\n }\n }\n },\n + \ \"PlaylistListResponse\": {\n \"id\": \"PlaylistListResponse\",\n + \ \"properties\": {\n \"visitorId\": {\n \"description\": \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n }\n - \ }\n },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"properties\": - {\n \"memberMonth\": {\n \"type\": \"integer\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"format\": \"uint32\"\n - \ },\n \"memberLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the Level at which the viever is - a member. The Level names are defined by the YouTube channel offering the - Membership. In some situations this field isn't filled.\"\n },\n \"userComment\": - {\n \"description\": \"The comment added by the member to this Member - Milestone Chat. This field is empty for messages without a comment from the - member.\",\n \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsSocial\": - {\n \"id\": \"ActivityContentDetailsSocial\",\n \"description\": - \"Details about a social network post.\",\n \"properties\": {\n \"type\": - {\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n - \ \"facebook\",\n \"twitter\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The name of the social network.\",\n - \ \"type\": \"string\"\n },\n \"referenceUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"The URL of the - social network post.\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"imageUrl\": {\n \"description\": \"An image - of the post's author.\",\n \"type\": \"string\"\n },\n \"author\": - {\n \"description\": \"The author of the social network post.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelBannerResource\": {\n \"description\": \"A channel - banner returned as the response to a channel_banner.insert call.\",\n \"type\": - \"object\",\n \"id\": \"ChannelBannerResource\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\"\n },\n \"url\": - {\n \"type\": \"string\",\n \"description\": \"The URL of - this banner image.\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelBannerResource\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ChannelListResponse\": - {\n \"properties\": {\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve + \ },\n \"kind\": {\n \"default\": \"youtube#playlistListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"pageInfo\": {\n \"description\": \"General + pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Playlist\"\n },\n + \ \"description\": \"A list of playlists that match the request criteria\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\",\n \"type\": \"string\"\n },\n \ \"eventId\": {\n \"type\": \"string\",\n \"description\": \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Channel\"\n }\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"AbuseReport\": + {\n \"type\": \"object\",\n \"properties\": {\n \"subject\": + {\n \"$ref\": \"Entity\"\n },\n \"relatedEntities\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"RelatedEntity\"\n }\n },\n \"description\": {\n \"type\": + \"string\"\n },\n \"abuseTypes\": {\n \"items\": {\n + \ \"$ref\": \"AbuseType\"\n },\n \"type\": \"array\"\n + \ }\n },\n \"id\": \"AbuseReport\"\n },\n \"ActivityListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#activityListResponse\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Activity\"\n }\n + \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"default\": \"youtube#channelListResponse\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelListResponse\"\n },\n \"I18nRegionSnippet\": - {\n \"properties\": {\n \"gl\": {\n \"type\": \"string\",\n - \ \"description\": \"The region code as a 2-letter ISO country code.\"\n - \ },\n \"name\": {\n \"type\": \"string\",\n \"description\": - \"The human-readable name of the region.\"\n }\n },\n \"id\": - \"I18nRegionSnippet\",\n \"description\": \"Basic details about an i18n - region, such as region code and human-readable name.\",\n \"type\": \"object\"\n - \ },\n \"PlaylistPlayer\": {\n \"type\": \"object\",\n \"properties\": - {\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\"\n - \ }\n },\n \"id\": \"PlaylistPlayer\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"description\": \"Video processing progress and completion time - estimate.\",\n \"properties\": {\n \"timeLeftMs\": {\n \"format\": - \"uint64\",\n \"description\": \"An estimate of the amount of time, - in millseconds, that YouTube needs to finish processing the video.\",\n \"type\": - \"string\"\n },\n \"partsTotal\": {\n \"description\": - \"An estimate of the total number of parts that need to be processed for the - video. The number may be updated with more precise estimates while YouTube - processes the video.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"partsProcessed\": {\n \"type\": - \"string\",\n \"description\": \"The number of parts of the video - that YouTube has already processed. You can estimate the percentage of the - video that YouTube has already processed by calculating: 100 * parts_processed - / parts_total Note that since the estimated number of parts could increase - without a corresponding increase in the number of parts that have already - been processed, it is possible that the calculated progress could periodically - decrease while YouTube processes a video.\",\n \"format\": \"uint64\"\n - \ }\n },\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"type\": \"object\"\n },\n \"I18nLanguageListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"description\": \"A list of supported i18n languages. In this map, - the i18n language ID is the map key, and its value is the corresponding i18nLanguage - resource.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"I18nLanguage\"\n }\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"I18nLanguageListResponse\"\n },\n \"ContentRating\": {\n \"id\": - \"ContentRating\",\n \"description\": \"Ratings schemes. The country-specific - ratings are mostly for movies and shows. LINT.IfChange\",\n \"properties\": - {\n \"mtrcbRating\": {\n \"description\": \"The video's rating - from the Movie and Television Review and Classification Board (Philippines).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ]\n },\n \"rteRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"cceRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"4\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\",\n \"14\"\n ],\n \"enum\": [\n - \ \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n - \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n - \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"type\": \"string\"\n },\n \"acbRating\": - {\n \"description\": \"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.\",\n \"enumDescriptions\": + pageToken parameter to retrieve the next page in the result set.\"\n }\n + \ },\n \"id\": \"ActivityListResponse\"\n },\n \"LiveChatTextMessageDetails\": + {\n \"properties\": {\n \"messageText\": {\n \"type\": + \"string\",\n \"description\": \"The user's message.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"LiveChatTextMessageDetails\"\n + \ },\n \"VideoLocalization\": {\n \"description\": \"Localized versions + of certain video properties (e.g. title).\",\n \"type\": \"object\",\n + \ \"id\": \"VideoLocalization\",\n \"properties\": {\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"Localized + version of the video's description.\"\n },\n \"title\": {\n + \ \"type\": \"string\",\n \"description\": \"Localized version + of the video's title.\"\n }\n }\n },\n \"GeoPoint\": {\n + \ \"description\": \"Geographical coordinates of a point, in WGS84.\",\n + \ \"properties\": {\n \"altitude\": {\n \"format\": \"double\",\n + \ \"type\": \"number\",\n \"description\": \"Altitude above + the reference ellipsoid, in meters.\"\n },\n \"latitude\": {\n + \ \"description\": \"Latitude in degrees.\",\n \"format\": + \"double\",\n \"type\": \"number\"\n },\n \"longitude\": + {\n \"format\": \"double\",\n \"description\": \"Longitude + in degrees.\",\n \"type\": \"number\"\n }\n },\n \"id\": + \"GeoPoint\",\n \"type\": \"object\"\n },\n \"LiveStreamStatus\": + {\n \"type\": \"object\",\n \"description\": \"Brief description + of the live stream status.\",\n \"properties\": {\n \"healthStatus\": + {\n \"description\": \"The health status of the stream.\",\n \"$ref\": + \"LiveStreamHealthStatus\"\n },\n \"streamStatus\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"created\",\n \"ready\",\n \"active\",\n + \ \"inactive\",\n \"error\"\n ]\n }\n + \ },\n \"id\": \"LiveStreamStatus\"\n },\n \"MembershipsDetails\": + {\n \"id\": \"MembershipsDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"membershipsDuration\": {\n \"description\": \"Data about + memberships duration without taking into consideration pricing levels.\",\n + \ \"$ref\": \"MembershipsDuration\"\n },\n \"highestAccessibleLevel\": + {\n \"type\": \"string\",\n \"description\": \"Id of the + highest level that the user has access to at the moment.\"\n },\n \"highestAccessibleLevelDisplayName\": + {\n \"description\": \"Display name for the highest level that the + user has access to at the moment.\",\n \"type\": \"string\"\n },\n + \ \"accessibleLevels\": {\n \"description\": \"Ids of all levels + that the user has access to. This includes the currently active level and + all other levels that are included because of a higher purchase.\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n + \ },\n \"membershipsDurationAtLevels\": {\n \"description\": + \"Data about memberships duration on particular pricing levels.\",\n \"items\": + {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"type\": + \"array\"\n }\n }\n },\n \"CommentThreadSnippet\": {\n \"properties\": + {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"totalReplyCount\": {\n \"format\": + \"uint32\",\n \"description\": \"The total number of replies (not + including the top level comment).\",\n \"type\": \"integer\"\n },\n + \ \"videoId\": {\n \"description\": \"The ID of the video the + comments refer to, if any. No video_id implies a channel discussion comment.\",\n + \ \"type\": \"string\"\n },\n \"canReply\": {\n \"description\": + \"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.\",\n \"type\": + \"boolean\"\n },\n \"isPublic\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether the thread (and therefore all its comments) + is visible to all YouTube users.\"\n },\n \"topLevelComment\": + {\n \"description\": \"The top level comment of this thread.\",\n + \ \"$ref\": \"Comment\"\n }\n },\n \"description\": + \"Basic details about a comment thread.\",\n \"id\": \"CommentThreadSnippet\",\n + \ \"type\": \"object\"\n },\n \"LiveChatMessageDeletedDetails\": + {\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"properties\": + {\n \"deletedMessageId\": {\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": + {\n \"description\": \"Live broadcast state.\",\n \"id\": \"LiveBroadcastStatus\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"privacyStatus\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"public\",\n \"unlisted\",\n \"private\"\n + \ ],\n \"annotations\": {\n \"required\": [\n + \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"The broadcast's + privacy status. Note that the broadcast represents exactly one YouTube video, + so the privacy settings are identical to those supported for videos. In addition, + you can set this field by modifying the broadcast resource or by setting the + privacyStatus field of the corresponding video resource.\"\n },\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\",\n \"description\": \"This field + will be set to True if the creator declares the broadcast to be kids only: + go/live-cw-work.\"\n },\n \"madeForKids\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the broadcast is made for + kids or not, decided by YouTube instead of the creator. This field is read + only.\"\n },\n \"liveBroadcastPriority\": {\n \"description\": + \"Priority of the live broadcast event (internal state).\",\n \"enum\": + [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n + \ \"normal\",\n \"high\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Low + priority broadcast: for low view count HoAs or other low priority broadcasts.\",\n + \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n + \ \"High priority broadcast: for high profile HoAs, like PixelCorp + ones.\"\n ]\n },\n \"recordingStatus\": {\n \"type\": + \"string\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n + \ \"notRecording\",\n \"recording\",\n \"recorded\"\n + \ ],\n \"description\": \"The broadcast's recording status.\",\n + \ \"enumDescriptions\": [\n \"No value or the value is + unknown.\",\n \"The recording has not yet been started.\",\n \"The + recording is currently on.\",\n \"The recording is completed, and + cannot be started again.\"\n ]\n },\n \"lifeCycleStatus\": + {\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n + \ \"ready\",\n \"testing\",\n \"live\",\n + \ \"complete\",\n \"revoked\",\n \"testStarting\",\n + \ \"liveStarting\"\n ],\n \"enumDescriptions\": + [\n \"No value or the value is unknown.\",\n \"Incomplete + settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible + only to partner, may need special UI treatment\",\n \"Viper is + recording; this means the \\\"clock\\\" is running\",\n \"The broadcast + is finished.\",\n \"This broadcast was removed by admin action\",\n + \ \"Transition into TESTING has been requested\",\n \"Transition + into LIVE has been requested\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The broadcast's status. The status can be updated + using the API's liveBroadcasts.transition method.\"\n }\n }\n + \ },\n \"ChannelSnippet\": {\n \"properties\": {\n \"defaultLanguage\": + {\n \"description\": \"The language of the channel's default title + and description.\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The description + of the channel.\"\n },\n \"customUrl\": {\n \"type\": + \"string\",\n \"description\": \"The custom url of the channel.\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The channel's title.\"\n },\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails in your application, make + sure that your code uses the image URLs exactly as they are returned in API + responses. For example, your application should not use the http domain instead + of the https domain in a URL returned in an API response. Beginning in July + 2018, channel thumbnail URLs will only be available in the https domain, which + is how the URLs appear in API responses. After that time, you might see broken + images in your application if it tries to load YouTube images from the http + domain. Thumbnail images might be empty for newly created channels and might + take up to one day to populate.\"\n },\n \"publishedAt\": {\n + \ \"format\": \"date-time\",\n \"description\": \"The date + and time that the channel was created.\",\n \"type\": \"string\"\n + \ },\n \"country\": {\n \"description\": \"The country + of the channel.\",\n \"type\": \"string\"\n },\n \"localized\": + {\n \"description\": \"Localized title and description, read-only.\",\n + \ \"$ref\": \"ChannelLocalization\"\n }\n },\n \"id\": + \"ChannelSnippet\",\n \"description\": \"Basic details about a channel, + including title, description and thumbnails.\",\n \"type\": \"object\"\n + \ },\n \"SearchResultSnippet\": {\n \"description\": \"Basic details + about a search result, including title, description and thumbnails of the + item referenced by the search result.\",\n \"properties\": {\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The value + that YouTube uses to uniquely identify the channel that published the resource + that the search result identifies.\"\n },\n \"liveBroadcastContent\": + {\n \"enumDescriptions\": [\n \"\",\n \"The + live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n + \ \"The live broadcast has been completed.\"\n ],\n \"enum\": + [\n \"none\",\n \"upcoming\",\n \"live\",\n + \ \"completed\"\n ],\n \"description\": \"It indicates + if the resource (video or channel) has upcoming/active live broadcast content. + Or it's \\\"none\\\" if there is not any upcoming/active live broadcasts.\",\n + \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images + associated with the search result. 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.\"\n },\n \"publishedAt\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The creation date and time of the resource that + the search result identifies.\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"The title of the search result.\"\n + \ },\n \"description\": {\n \"description\": \"A description + of the search result.\",\n \"type\": \"string\"\n },\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"The title + of the channel that published the resource that the search result identifies.\"\n + \ }\n },\n \"id\": \"SearchResultSnippet\",\n \"type\": + \"object\"\n },\n \"PlaylistItemStatus\": {\n \"description\": + \"Information about the playlist item's privacy status.\",\n \"properties\": + {\n \"privacyStatus\": {\n \"type\": \"string\",\n \"description\": + \"This resource's privacy status.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"public\",\n \"unlisted\",\n \"private\"\n + \ ]\n }\n },\n \"type\": \"object\",\n \"id\": + \"PlaylistItemStatus\"\n },\n \"ActivityContentDetailsLike\": {\n \"id\": + \"ActivityContentDetailsLike\",\n \"properties\": {\n \"resourceId\": + {\n \"description\": \"The resourceId object contains information + that identifies the rated resource.\",\n \"$ref\": \"ResourceId\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Information + about a resource that received a positive (like) rating.\"\n },\n \"ContentRating\": + {\n \"type\": \"object\",\n \"properties\": {\n \"kijkwijzerRating\": + {\n \"description\": \"The video's NICAM/Kijkwijzer rating from the + Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\",\n + \ \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n + \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n + \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n + \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"rtcRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"AA\",\n \"A\",\n \"B\",\n + \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"rtcUnspecified\",\n + \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n + \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n + \ ],\n \"description\": \"The video's General Directorate + of Radio, Television and Cinematography (Mexico) rating.\"\n },\n \"nfvcbRating\": + {\n \"description\": \"The video's rating from Nigeria's National + Film and Video Censors Board.\",\n \"enum\": [\n \"nfvcbUnspecified\",\n + \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n + \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n + \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n + \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"mekuRating\": {\n \"enum\": [\n \"mekuUnspecified\",\n + \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n + \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n + \ ],\n \"description\": \"The video's rating from Finland's + Kansallinen Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"S\",\n \"7\",\n \"12\",\n \"16\",\n + \ \"18\",\n \"\"\n ]\n },\n \"grfilmRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"grfilmUnspecified\",\n + \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n + \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n + \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n + \ \"description\": \"The video's rating in Greece.\",\n \"enumDescriptions\": + [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n + \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n + \ \"\"\n ]\n },\n \"mccaaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n + \ \"12\",\n \"14 - this rating was removed from the new + classification structure introduced in 2013.\",\n \"15\",\n \"16 + - this rating was removed from the new classification structure introduced + in 2013.\",\n \"18\",\n \"\"\n ],\n \"enum\": + [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n + \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n + \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n + \ \"mccaaUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from Malta's Film Age-Classification + Board.\"\n },\n \"csaRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"Interdiction\",\n \"\"\n ],\n \"enum\": + [\n \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n + \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n + \ \"csaUnrated\"\n ],\n \"description\": \"The + video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, which + rates broadcast content.\"\n },\n \"ecbmctRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n + \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n + \ ],\n \"description\": \"Rating system in Turkey - Evaluation + and Classification Board of the Ministry of Culture and Tourism\",\n \"enum\": + [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n + \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n + \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n + \ \"ecbmctUnrated\"\n ]\n },\n \"nbcplRating\": + {\n \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n + \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n + \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The video's rating in Poland.\"\n },\n \"eefilmRating\": {\n + \ \"description\": \"The video's rating in Estonia.\",\n \"enum\": + [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n \"eefilmL\",\n + \ \"eefilmMs6\",\n \"eefilmK6\",\n \"eefilmMs12\",\n + \ \"eefilmK12\",\n \"eefilmK14\",\n \"eefilmK16\",\n + \ \"eefilmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n + \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n + \ \"K-16\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"cicfRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n + \ \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n + \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n + \ ]\n },\n \"mtrcbRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n + \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n + \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n + \ \"X\",\n \"\"\n ],\n \"description\": + \"The video's rating from the Movie and Television Review and Classification + Board (Philippines).\"\n },\n \"fskRating\": {\n \"description\": + \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) + rating.\",\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n + \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n + \ \"fskUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK + 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"mdaRating\": + {\n \"type\": \"string\",\n \"description\": \"The video's + rating from Singapore's Media Development Authority (MDA) and, specifically, + it's Board of Film Censors (BFC).\",\n \"enumDescriptions\": [\n + \ \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n + \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n + \ ],\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n + \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n + \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n + \ ]\n },\n \"fcbmRating\": {\n \"description\": + \"The video's rating from Malaysia's Film Censorship Board.\",\n \"enum\": + [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n + \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n + \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n + \ \"fcbmUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n + \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n + \ ]\n },\n \"mocRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n + \ \"Banned\",\n \"\"\n ],\n \"description\": + \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"enum\": + [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n + \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n + \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"pefilmRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"PT\",\n + \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n + \ ],\n \"description\": \"The video's rating in Peru.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"pefilmUnspecified\",\n + \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n + \ \"pefilm18\",\n \"pefilmUnrated\"\n ]\n },\n + \ \"anatelRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n + \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n + \ ],\n \"enum\": [\n \"anatelUnspecified\",\n + \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n + \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n + \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"description\": + \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for + Chilean television.\",\n \"type\": \"string\"\n },\n \"nmcRating\": + {\n \"description\": \"The National Media Council ratings system + for United Arab Emirates.\",\n \"enum\": [\n \"nmcUnspecified\",\n + \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n + \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n + \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"chfilmRating\": {\n \"description\": \"The video's rating + in Switzerland.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"0\",\n \"6\",\n \"12\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n + \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n + \ \"chfilm18\",\n \"chfilmUnrated\"\n ]\n },\n + \ \"djctqRatingReasons\": {\n \"items\": {\n \"enumDescriptions\": + [\n \"\",\n \"Brazil rating content descriptors. + See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia + extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual + content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n + \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas + (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas + Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate + language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo + Impactante (Impacting content)\"\n ],\n \"enum\": [\n + \ \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n + \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n + \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n + \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n + \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n + \ \"djctqImpactingContent\"\n ],\n \"type\": + \"string\"\n },\n \"description\": \"Reasons that explain + why the video received its DJCQT (Brazil) rating.\",\n \"type\": + \"array\"\n },\n \"russiaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n + \ \"16+\",\n \"18+\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"russiaUnspecified\",\n + \ \"russia0\",\n \"russia6\",\n \"russia12\",\n + \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n + \ ],\n \"description\": \"The video's National Film Registry + of the Russian Federation (MKRF - Russia) rating.\"\n },\n \"nkclvRating\": + {\n \"description\": \"The video's rating from the Nacion\xE3lais + Kino centrs (National Film Centre of Latvia).\",\n \"enum\": [\n + \ \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n + \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n + \ \"nkclvUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n + \ \"\"\n ]\n },\n \"nfrcRating\": {\n \"enum\": + [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n + \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n + \ \"D\",\n \"X\",\n \"\"\n ],\n \"description\": + \"The video's rating from the Bulgarian National Film Center.\"\n },\n + \ \"bbfcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n + \ \"\"\n ],\n \"description\": \"The video's British + Board of Film Classification (BBFC) rating.\",\n \"enum\": [\n \"bbfcUnspecified\",\n + \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n + \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n + \ \"bbfcR18\",\n \"bbfcUnrated\"\n ]\n },\n + \ \"acbRating\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"enum\": [\n \"acbUnspecified\",\n + \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n + \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n + \ \"acbR18plus\",\n \"acbUnrated\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n \"Programs that have been given a P classification by the Australian Communications and Media Authority. These programs are intended for preschool children.\",\n \"Programs @@ -9812,2689 +9679,2796 @@ interactions: Media Authority. These programs are intended for children (other than preschool children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"grfilmRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Greece.\",\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"anatelRating\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n - \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n - \ ],\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\"\n },\n \"fpbRating\": {\n \"enum\": - [\n \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n - \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n - \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\"\n },\n \"menaMpaaRating\": {\n - \ \"enum\": [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n - \ \"menaMpaaPg\",\n \"menaMpaaPg13\",\n \"menaMpaaR\",\n - \ \"menaMpaaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ ]\n },\n \"menaMpaaRating\": {\n \"enum\": + [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n + \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\"\n },\n \"cccRating\": {\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Todo - espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n - \ \"14+\",\n \"18+\",\n \"18+ - contenido - excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ]\n },\n \"fcbmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"type\": - \"string\",\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n - \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n - \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n - \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ]\n },\n - \ \"cicfRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n - \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n - \ ]\n },\n \"skfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ],\n \"enum\": [\n - \ \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n - \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n + \ \"type\": \"string\",\n \"description\": \"The rating system + for MENA countries, a clone of MPAA. It is needed to prevent titles go live + w/o additional QC check, since some of them can be inappropriate for the countries + at all. See b/33408548 for more details.\"\n },\n \"mpaatRating\": + {\n \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n + \ \"mpaatRb\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"GB\",\n \"RB\"\n ],\n + \ \"description\": \"The rating system for trailer, DVD, and Ad in + the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n + \ \"type\": \"string\"\n },\n \"resorteviolenciaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n + \ \"\"\n ],\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n + \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n + \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n + \ ],\n \"description\": \"The video's rating in Venezuela.\",\n + \ \"type\": \"string\"\n },\n \"fcoRating\": {\n \"enum\": + [\n \"fcoUnspecified\",\n \"fcoI\",\n \"fcoIia\",\n + \ \"fcoIib\",\n \"fcoIi\",\n \"fcoIii\",\n + \ \"fcoUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n + \ \"II\",\n \"III\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The video's + rating from Hong Kong's Office for Film, Newspaper and Article Administration.\"\n + \ },\n \"bfvcRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n + \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n + \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n + \ \"20\",\n \"B\",\n \"\"\n ],\n + \ \"description\": \"The video's rating from Thailand's Board of Film + and Video Censors.\"\n },\n \"oflcRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's Office of Film and Literature + Classification (OFLC - New Zealand) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n + \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n + \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n + \ ],\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n + \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n + \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n + \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n + \ \"oflcRp18\"\n ]\n },\n \"lsfRating\": + {\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n + \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n + \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n + \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n + \ \"17\",\n \"D\",\n \"21\",\n \"\"\n \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Slovakia.\"\n },\n \"nbcRating\": {\n - \ \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\"\n - \ },\n \"mcstRating\": {\n \"enum\": [\n \"mcstUnspecified\",\n + \"The video's rating from Indonesia's Lembaga Sensor Film.\"\n },\n + \ \"medietilsynetRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n + \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"\"\n ],\n \"enum\": [\n + \ \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n + \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n + \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n + \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n + \ \"description\": \"The video's rating from Medietilsynet, the Norwegian + Media Authority.\"\n },\n \"djctqRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"L\",\n + \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n + \ \"18\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o + e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enum\": [\n \"djctqUnspecified\",\n + \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n + \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n + \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n + \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n + \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n + \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n + \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n + \ \"djctq1618\",\n \"djctqUnrated\"\n ]\n },\n + \ \"smsaRating\": {\n \"enum\": [\n \"smsaUnspecified\",\n + \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n + \ \"smsa15\",\n \"smsaUnrated\"\n ],\n \"description\": + \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"All ages\",\n \"7\",\n \"11\",\n \"15\",\n + \ \"\"\n ]\n },\n \"mibacRating\": {\n \"enum\": + [\n \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n + \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n + \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Ministero + dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"cceRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\",\n \"14\"\n + \ ],\n \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n + \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n + \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n + \ ],\n \"description\": \"The video's rating from Portugal's + Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\"\n },\n \"mcstRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"P\",\n + \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n + \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"mcstUnspecified\",\n \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n + \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"description\": + \"The video's rating system for Vietnam - MCST\"\n },\n \"tvpgRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"tvpgUnspecified\",\n + \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n + \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n + \ \"tvpgUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n + \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n + \ \"\"\n ],\n \"description\": \"The video's TV + Parental Guidelines (TVPG) rating.\"\n },\n \"cccRating\": {\n + \ \"type\": \"string\",\n \"description\": \"The video's + Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"Todo espectador\",\n \"6+ - + Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n + \ \"18+ - contenido excesivamente violento\",\n \"18+ + - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"enum\": + [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n + \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n + \ \"ccc18s\",\n \"cccUnrated\"\n ]\n },\n + \ \"ytRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"description\": \"A rating that + YouTube uses to identify age-restricted content.\",\n \"enum\": [\n + \ \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n + \ \"type\": \"string\"\n },\n \"agcomRating\": {\n \"enum\": + [\n \"agcomUnspecified\",\n \"agcomT\",\n \"agcomVm14\",\n + \ \"agcomVm18\",\n \"agcomUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n \ \"\"\n ],\n \"description\": \"The video's rating - system for Vietnam - MCST\",\n \"type\": \"string\"\n },\n - \ \"smsaRating\": {\n \"description\": \"The video's rating - from Statens medier\xE5d (Sweden's National Media Council).\",\n \"type\": - \"string\",\n \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ]\n },\n \"cbfcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": + from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n + \ \"type\": \"string\"\n },\n \"cbfcRating\": {\n \"description\": \"The video's Central Board of Film Certification (CBFC - India) rating.\",\n \ \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n - \ \"cbfcUnrated\"\n ]\n },\n \"nfvcbRating\": - {\n \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ],\n \"description\": \"The - video's rating from Nigeria's National Film and Video Censors Board.\",\n + \ \"cbfcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A + 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n + \ \"S\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"mccypRating\": {\n \"enum\": [\n \"mccypUnspecified\",\n + \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n + \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ],\n \"description\": + \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) + Media Council for Children and Young People.\",\n \"type\": \"string\"\n + \ },\n \"kfcbRating\": {\n \"description\": \"The video's + rating from the Kenya Film Classification Board.\",\n \"enum\": [\n + \ \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n + \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n + \ \"18\",\n \"\"\n ]\n },\n \"cncRating\": + {\n \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n + \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n + \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n + \ ],\n \"description\": \"Rating system in France - Commission + de classification cinematographique\",\n \"enumDescriptions\": [\n + \ \"\",\n \"T\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"fpbRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"A\",\n \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n + \ \"13\",\n \"16\",\n \"18\",\n \"X18\",\n + \ \"XX\",\n \"\",\n \"10\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"fpbUnspecified\",\n + \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n + \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n + \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n + \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"description\": + \"The video's rating from South Africa's Film and Publication Board.\"\n },\n + \ \"ifcoRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n + \ \"15\",\n \"15A\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See + the IFCO website for more information.\",\n \"enum\": [\n \"ifcoUnspecified\",\n + \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n + \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n + \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n + \ ]\n },\n \"eirinRating\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's Eirin (\u6620\u502B) rating. Eirin + is the Japanese rating system.\",\n \"enum\": [\n \"eirinUnspecified\",\n + \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n + \ \"eirinR18plus\",\n \"eirinUnrated\"\n ],\n \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"18\",\n \"RE\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"csaRating\": {\n \"description\": - \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, - which rates broadcast content.\",\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"ilfilmRating\": {\n \"description\": - \"The video's rating in Israel.\",\n \"type\": \"string\",\n \"enum\": + \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n + \ ]\n },\n \"ilfilmRating\": {\n \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"agcomRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"agcomUnspecified\",\n \"agcomT\",\n \"agcomVm14\",\n - \ \"agcomVm18\",\n \"agcomUnrated\"\n ],\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\"\n },\n \"fskRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"fskUnspecified\",\n - \ \"fsk0\",\n \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n - \ \"fsk18\",\n \"fskUnrated\"\n ],\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\"\n },\n \"kijkwijzerRating\": {\n \"enum\": - [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating - from the Nederlands Instituut voor de Classificatie van Audiovisuele Media - (Netherlands).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AL\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"icaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"description\": \"The video's Instituto - de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ]\n },\n - \ \"bfvcRating\": {\n \"description\": \"The video's rating - from Thailand's Board of Film and Video Censors.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ],\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"medietilsynetRating\": {\n \"description\": - \"The video's rating from Medietilsynet, the Norwegian Media Authority.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ]\n },\n \"eefilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n - \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n - \ \"K-16\",\n \"\"\n ],\n \"enum\": - [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n \"eefilmL\",\n - \ \"eefilmMs6\",\n \"eefilmK6\",\n \"eefilmMs12\",\n - \ \"eefilmK12\",\n \"eefilmK14\",\n \"eefilmK16\",\n - \ \"eefilmUnrated\"\n ],\n \"description\": \"The - video's rating in Estonia.\",\n \"type\": \"string\"\n },\n - \ \"nfrcRating\": {\n \"enum\": [\n \"nfrcUnspecified\",\n - \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n - \ \"nfrcX\",\n \"nfrcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"type\": - \"string\"\n },\n \"fmocRating\": {\n \"enum\": [\n - \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"description\": - \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"cnaRating\": {\n \"enum\": [\n \"cnaUnspecified\",\n + \ \"ilfilmUnrated\"\n ],\n \"description\": \"The + video's rating in Israel.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"catvfrRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"G\",\n \"8+\",\n \"13+\",\n + \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"catvfrUnspecified\",\n + \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n + \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n + \ \"catvfrE\"\n ],\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"cscfRating\": + {\n \"description\": \"The video's rating from Luxembourg's Commission + de surveillance de la classification des films (CSCF).\",\n \"enumDescriptions\": + [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n + \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"enum\": [\n \"cscfUnspecified\",\n + \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n + \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n + \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"fmocRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"\"\n + \ ],\n \"description\": \"This property has been deprecated. + Use the contentDetails.contentRating.cncRating instead.\",\n \"type\": + \"string\",\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n + \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n + \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n + \ ]\n },\n \"cnaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"18+\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"cnaUnspecified\",\n \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"description\": \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\",\n \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"kmrbRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"description\": \"The video's Korea - Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. - The KMRB rates videos in South Korea.\"\n },\n \"mccaaRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG\",\n \"12A\",\n \"12\",\n - \ \"14 - this rating was removed from the new classification structure - introduced in 2013.\",\n \"15\",\n \"16 - this rating - was removed from the new classification structure introduced in 2013.\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ]\n },\n \"mccypRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\"\n },\n \"catvRating\": - {\n \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n + (CNA).\"\n },\n \"catvRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n - \ \"catvE\"\n ],\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ]\n },\n \"oflcRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"description\": \"The video's - Office of Film and Literature Classification (OFLC - New Zealand) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ]\n },\n \"chvrsRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"chvrsUnspecified\",\n \"chvrsG\",\n - \ \"chvrsPg\",\n \"chvrs14a\",\n \"chvrs18a\",\n - \ \"chvrsR\",\n \"chvrsE\",\n \"chvrsUnrated\"\n - \ ],\n \"description\": \"The video's Canadian Home Video - Rating System (CHVRS) rating.\"\n },\n \"russiaRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"russiaUnspecified\",\n \"russia0\",\n \"russia6\",\n - \ \"russia12\",\n \"russia16\",\n \"russia18\",\n - \ \"russiaUnrated\"\n ],\n \"description\": \"The - video's National Film Registry of the Russian Federation (MKRF - Russia) rating.\"\n - \ },\n \"incaaRating\": {\n \"description\": \"The video's - INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"ATP (Apta - para todo publico)\",\n \"13 (Solo apta para mayores de 13 a\xF1os)\",\n - \ \"16 (Solo apta para mayores de 16 a\xF1os)\",\n \"18 - (Solo apta para mayores de 18 a\xF1os)\",\n \"X (Solo apta para - mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n \"\"\n - \ ],\n \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n - \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n - \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"djctqRatingReasons\": {\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n - \ \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ],\n \"enum\": [\n - \ \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ]\n },\n \"type\": - \"array\"\n },\n \"nmcRating\": {\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ]\n },\n \"bbfcRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's British Board of Film - Classification (BBFC) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG\",\n \"12A\",\n \"12\",\n - \ \"15\",\n \"18\",\n \"R18\",\n \"\"\n - \ ],\n \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n - \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n - \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n - \ \"bbfcUnrated\"\n ]\n },\n \"mpaaRating\": - {\n \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n - \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n - \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ]\n },\n \"resorteviolenciaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ],\n \"description\": - \"The video's rating in Venezuela.\",\n \"type\": \"string\",\n \"enum\": - [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ]\n },\n \"mdaRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Singapore's Media Development - Authority (MDA) and, specifically, it's Board of Film Censors (BFC).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ],\n \"enum\": - [\n \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n - \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n - \ \"mdaR21\",\n \"mdaUnrated\"\n ]\n },\n - \ \"cscfRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"AL\",\n \"A\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Luxembourg's - Commission de surveillance de la classification des films (CSCF).\",\n \"enum\": - [\n \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n - \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"ecbmctRating\": - {\n \"enum\": [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n - \ \"ecbmct7a\",\n \"ecbmct7plus\",\n \"ecbmct13a\",\n - \ \"ecbmct13plus\",\n \"ecbmct15a\",\n \"ecbmct15plus\",\n - \ \"ecbmct18plus\",\n \"ecbmctUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ],\n \"description\": \"Rating system in Turkey - Evaluation - and Classification Board of the Ministry of Culture and Tourism\",\n \"type\": - \"string\"\n },\n \"eirinRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ],\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\"\n - \ },\n \"fcoRating\": {\n \"enum\": [\n \"fcoUnspecified\",\n - \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n - \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n - \ ],\n \"description\": \"The video's rating from Hong Kong's - Office for Film, Newspaper and Article Administration.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"I\",\n - \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n - \ \"\"\n ]\n },\n \"kfcbRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Kenya - Film Classification Board.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GE\",\n \"PG\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"kfcbUnspecified\",\n - \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n - \ \"kfcbR\",\n \"kfcbUnrated\"\n ]\n },\n - \ \"nbcplRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Poland.\"\n },\n - \ \"mekuRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"S\",\n \"7\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti - (National Audiovisual Institute).\",\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"catvfrRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"8+\",\n \"13+\",\n \"16+\",\n - \ \"18+\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"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.\",\n - \ \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ]\n },\n \"moctwRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Taiwan's Ministry of - Culture (\u6587\u5316\u90E8).\",\n \"enum\": [\n \"moctwUnspecified\",\n - \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n - \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n - \ \"moctwR15\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ]\n },\n \"czfilmRating\": {\n \"description\": - \"The video's rating in the Czech Republic.\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"rcnofRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Hungarian - Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"egfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Egypt.\",\n \"type\": - \"string\",\n \"enum\": [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n - \ \"egfilm18\",\n \"egfilmBn\",\n \"egfilmUnrated\"\n - \ ]\n },\n \"mocRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"type\": - \"string\",\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ]\n },\n \"smaisRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"L\",\n \"7\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"catvE\"\n ],\n \"enumDescriptions\": [\n \"\",\n + \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n + \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"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.\"\n + \ },\n \"smaisRating\": {\n \"type\": \"string\",\n \ \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n \ \"smais7\",\n \"smais12\",\n \"smais14\",\n \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\"\n - \ },\n \"fpbRatingReasons\": {\n \"type\": \"array\",\n - \ \"description\": \"Reasons that explain why the video received its - FPB (South Africa) rating.\",\n \"items\": {\n \"enumDescriptions\": + \ ],\n \"enumDescriptions\": [\n \"\",\n \"L\",\n + \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"description\": + \"The video's rating in Iceland.\"\n },\n \"bmukkRating\": {\n + \ \"type\": \"string\",\n \"enum\": [\n \"bmukkUnspecified\",\n + \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n + \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n + \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"description\": + \"The video's rating from the Austrian Board of Media Classification (Bundesministerium + f\xFCr Unterricht, Kunst und Kultur).\",\n \"enumDescriptions\": + [\n \"\",\n \"Unrestricted\",\n \"6+\",\n + \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n + \ \"16+\",\n \"\"\n ]\n },\n \"czfilmRating\": + {\n \"description\": \"The video's rating in the Czech Republic.\",\n + \ \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n + \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n + \ \"czfilmUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"12\",\n \"14\",\n \"18\",\n \"\"\n + \ ]\n },\n \"nbcRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n + \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n + \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n + \ \"nbcUnrated\"\n ],\n \"description\": \"The + video's rating from the Maldives National Bureau of Classification.\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n + \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n + \ \"\"\n ]\n },\n \"egfilmRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n + \ \"\"\n ],\n \"enum\": [\n \"egfilmUnspecified\",\n + \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n + \ \"egfilmUnrated\"\n ],\n \"description\": \"The + video's rating in Egypt.\",\n \"type\": \"string\"\n },\n + \ \"moctwRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"P\",\n \"PG\",\n \"R\",\n + \ \"\",\n \"R-12\",\n \"R-15\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The video's + rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n \"enum\": + [\n \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n + \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n + \ \"moctwR12\",\n \"moctwR15\"\n ]\n },\n + \ \"kmrbRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 \uC774\uC0C1 + \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n + \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n + \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n + \ \"kmrbUnrated\"\n ],\n \"description\": \"The + video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) + rating. The KMRB rates videos in South Korea.\"\n },\n \"mpaaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n + \ \"! X\",\n \"\"\n ],\n \"description\": + \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enum\": + [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n + \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n + \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"incaaRating\": {\n \"description\": + \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) + rating.\",\n \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n + \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n + \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 + (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para + mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 + a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n + condicionada)\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"fpbRatingReasons\": {\n \"items\": {\n \"enum\": + [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n + \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n + \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n + \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n + \ \"fpbImitativeActsTechniques\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"South Africa rating content descriptors.\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ]\n }\n },\n \"ytRating\": {\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ]\n },\n \"nkclvRating\": {\n \"enum\": [\n - \ \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n - \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n - \ \"nkclvUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\"\n - \ },\n \"djctqRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n + \"string\"\n },\n \"description\": \"Reasons that explain + why the video received its FPB (South Africa) rating.\",\n \"type\": + \"array\"\n },\n \"chvrsRating\": {\n \"enum\": [\n + \ \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n + \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n + \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n + \ \"E\",\n \"\"\n ],\n \"description\": + \"The video's Canadian Home Video Rating System (CHVRS) rating.\"\n },\n + \ \"rteRating\": {\n \"description\": \"The video's rating + from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enum\": [\n + \ \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n + \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"GA\",\n + \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"icaaRating\": + {\n \"description\": \"The video's Instituto de la Cinematograf\xEDa + y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n + \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n + \ \"\"\n ],\n \"enum\": [\n \"icaaUnspecified\",\n + \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n + \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n + \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"skfilmRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n + \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n + \ \"skfilmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n + \ \"P8\",\n \"\"\n ],\n \"description\": + \"The video's rating in Slovakia.\"\n },\n \"rcnofRating\": + {\n \"description\": \"The video's rating from the Hungarian Nemzeti + Filmiroda, the Rating Committee of the National Office of Film.\",\n \"enum\": + [\n \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n + \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n + \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n }\n },\n \"description\": + \"Ratings schemes. The country-specific ratings are mostly for movies and + shows. LINT.IfChange\",\n \"id\": \"ContentRating\"\n },\n \"CommentSnippetAuthorChannelId\": + {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"The id of the author's YouTube + channel, if any.\",\n \"type\": \"object\",\n \"id\": \"CommentSnippetAuthorChannelId\"\n + \ },\n \"VideoRating\": {\n \"id\": \"VideoRating\",\n \"type\": + \"object\",\n \"properties\": {\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the video.\"\n },\n \"rating\": {\n \"description\": + \"Rating of a video.\",\n \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"type\": \"string\"\n }\n + \ },\n \"description\": \"Basic details about rating of a video.\"\n + \ },\n \"SuperChatEventListResponse\": {\n \"properties\": {\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n + \ },\n \"type\": \"array\",\n \"description\": \"A + list of Super Chat purchases that match the request criteria.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n + \ \"default\": \"youtube#superChatEventListResponse\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"visitorId\": {\n + \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"SuperChatEventListResponse\",\n + \ \"type\": \"object\"\n },\n \"VideoFileDetailsAudioStream\": {\n + \ \"properties\": {\n \"codec\": {\n \"description\": + \"The audio codec that the stream uses.\",\n \"type\": \"string\"\n + \ },\n \"bitrateBps\": {\n \"format\": \"uint64\",\n + \ \"type\": \"string\",\n \"description\": \"The audio stream's + bitrate, in bits per second.\"\n },\n \"vendor\": {\n \"type\": + \"string\",\n \"description\": \"A value that uniquely identifies + a video vendor. Typically, the value is a four-letter vendor code.\"\n },\n + \ \"channelCount\": {\n \"description\": \"The number of audio + channels that the stream contains.\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\"\n }\n },\n \"id\": \"VideoFileDetailsAudioStream\",\n + \ \"description\": \"Information about an audio stream.\",\n \"type\": + \"object\"\n },\n \"ChannelTopicDetails\": {\n \"properties\": + {\n \"topicIds\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"A list of Freebase + topic IDs associated with the channel. You can retrieve information about + each topic using the Freebase Topic API.\",\n \"type\": \"array\"\n + \ },\n \"topicCategories\": {\n \"description\": \"A + list of Wikipedia URLs that describe the channel's content.\",\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Freebase + topic information related to the channel.\",\n \"id\": \"ChannelTopicDetails\"\n + \ },\n \"VideoTopicDetails\": {\n \"type\": \"object\",\n \"id\": + \"VideoTopicDetails\",\n \"properties\": {\n \"topicIds\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"A list of Freebase + topic IDs that are centrally associated with the video. These are topics that + are centrally featured in the video, and it can be said that the video is + mainly about each of these. You can retrieve information about each topic + using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase + Topic API.\"\n },\n \"topicCategories\": {\n \"description\": + \"A list of Wikipedia URLs that provide a high-level description of the video's + content.\",\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\"\n },\n \"relevantTopicIds\": {\n + \ \"type\": \"array\",\n \"description\": \"Similar to topic_id, + except that these topics are merely relevant to the video. These are topics + that may be mentioned in, or appear in the video. You can retrieve information + about each topic using Freebase Topic API.\",\n \"items\": {\n \"type\": + \"string\"\n }\n }\n },\n \"description\": \"Freebase + topic information related to the video.\"\n },\n \"I18nRegion\": {\n + \ \"type\": \"object\",\n \"id\": \"I18nRegion\",\n \"description\": + \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n + \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#i18nRegion\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the i18n region, such as region code and human-readable name.\",\n \"$ref\": + \"I18nRegionSnippet\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the i18n region.\"\n }\n }\n },\n \"CdnSettings\": + {\n \"type\": \"object\",\n \"description\": \"Brief description + of the live stream cdn settings.\",\n \"id\": \"CdnSettings\",\n \"properties\": + {\n \"format\": {\n \"type\": \"string\",\n \"description\": + \"The format of the video stream that you are sending to Youtube. \",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n }\n + \ },\n \"ingestionInfo\": {\n \"description\": \"The + ingestionInfo object contains information that YouTube provides that you need + to transmit your RTMP or HTTP stream to YouTube.\",\n \"$ref\": \"IngestionInfo\"\n + \ },\n \"ingestionType\": {\n \"enum\": [\n \"rtmp\",\n + \ \"dash\",\n \"webrtc\",\n \"hls\"\n ],\n + \ \"description\": \" The method or protocol used to transmit the + video stream.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"annotations\": {\n \"required\": [\n + \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n + \ ]\n }\n },\n \"frameRate\": {\n \"type\": + \"string\",\n \"description\": \"The frame rate of the inbound video + data.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"30fps\",\n + \ \"60fps\",\n \"variable\"\n ]\n },\n + \ \"resolution\": {\n \"enum\": [\n \"240p\",\n + \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n + \ \"1440p\",\n \"2160p\",\n \"variable\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The resolution of the inbound video data.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"ActivityContentDetailsChannelItem\": {\n + \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsChannelItem\",\n + \ \"description\": \"Details about a resource which was added to a channel.\",\n + \ \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + that was added to the channel.\",\n \"$ref\": \"ResourceId\"\n }\n + \ }\n },\n \"SubscriptionSnippet\": {\n \"properties\": {\n + \ \"description\": {\n \"description\": \"The subscription's + details.\",\n \"type\": \"string\"\n },\n \"thumbnails\": + {\n \"description\": \"A map of thumbnail images associated with + the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"publishedAt\": + {\n \"description\": \"The date and time that the subscription was + created.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The subscription's title.\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the subscriber's channel.\",\n + \ \"type\": \"string\"\n },\n \"resourceId\": {\n \"description\": + \"The id object contains information about the channel that the user subscribed + to.\",\n \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n + \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n + \ \"channelTitle\": {\n \"description\": \"Channel title for + the channel that the subscription belongs to.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic + details about a subscription, including title, description and thumbnails + of the subscribed item.\",\n \"id\": \"SubscriptionSnippet\"\n },\n + \ \"AbuseType\": {\n \"properties\": {\n \"id\": {\n \"type\": + \"string\"\n }\n },\n \"id\": \"AbuseType\",\n \"type\": + \"object\"\n },\n \"TestItemTestItemSnippet\": {\n \"type\": \"object\",\n + \ \"id\": \"TestItemTestItemSnippet\",\n \"properties\": {}\n },\n + \ \"VideoAbuseReport\": {\n \"id\": \"VideoAbuseReport\",\n \"type\": + \"object\",\n \"properties\": {\n \"secondaryReasonId\": {\n \"description\": + \"The specific, or secondary, reason that this content is abusive (if available). + The value is an abuse report reason ID that is a valid secondary reason for + the primary reason.\",\n \"type\": \"string\"\n },\n \"language\": + {\n \"description\": \"The language that the content was viewed in.\",\n + \ \"type\": \"string\"\n },\n \"reasonId\": {\n \"type\": + \"string\",\n \"description\": \"The high-level, or primary, reason + that the content is abusive. The value is an abuse report reason ID.\"\n },\n + \ \"videoId\": {\n \"description\": \"The ID that YouTube uses + to uniquely identify the video.\",\n \"type\": \"string\"\n },\n + \ \"comments\": {\n \"type\": \"string\",\n \"description\": + \"Additional comments regarding the abuse report.\"\n }\n }\n + \ },\n \"LiveStreamHealthStatus\": {\n \"type\": \"object\",\n \"properties\": + {\n \"status\": {\n \"enum\": [\n \"good\",\n \"ok\",\n + \ \"bad\",\n \"noData\",\n \"revoked\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ]\n },\n - \ \"lsfRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"SU\",\n \"A\",\n \"BO\",\n \"13\",\n - \ \"R\",\n \"17\",\n \"D\",\n \"21\",\n - \ \"\"\n ],\n \"enum\": [\n \"lsfUnspecified\",\n - \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n - \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n - \ \"lsfUnrated\"\n ],\n \"description\": \"The - video's rating from Indonesia's Lembaga Sensor Film.\",\n \"type\": - \"string\"\n },\n \"mpaatRating\": {\n \"description\": - \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"GB\",\n \"RB\"\n ],\n - \ \"type\": \"string\"\n },\n \"ifcoRating\": {\n \"enum\": - [\n \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\",\n \"type\": \"string\"\n - \ },\n \"mibacRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"enumDescriptions\": + \ ],\n \"description\": \"The status code of this stream\"\n + \ },\n \"lastUpdateTimeSeconds\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The last time + this status was updated (in seconds)\"\n },\n \"configurationIssues\": + {\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n + \ },\n \"description\": \"The configurations issues on this + stream\",\n \"type\": \"array\"\n }\n },\n \"id\": + \"LiveStreamHealthStatus\"\n },\n \"PageInfo\": {\n \"properties\": + {\n \"totalResults\": {\n \"description\": \"The total number + of results in the result set.\",\n \"format\": \"int32\",\n \"type\": + \"integer\"\n },\n \"resultsPerPage\": {\n \"format\": + \"int32\",\n \"type\": \"integer\",\n \"description\": \"The + number of results included in the API response.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"PageInfo\",\n \"description\": \"Paging + details for lists of resources, including total number of items available + and number of resources returned in a single page.\"\n },\n \"ThirdPartyLink\": + {\n \"properties\": {\n \"linkingToken\": {\n \"type\": + \"string\",\n \"description\": \"The linking_token identifies a YouTube + account and channel with which the third party account is linked.\"\n },\n + \ \"status\": {\n \"description\": \"The status object contains + information about the status of the link.\",\n \"$ref\": \"ThirdPartyLinkStatus\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the third- party account link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n + \ \"default\": \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"A *third party account link* + resource represents a link between a YouTube account or a channel and an account + on a third-party service.\",\n \"type\": \"object\",\n \"id\": \"ThirdPartyLink\"\n + \ },\n \"LiveChatModeratorSnippet\": {\n \"id\": \"LiveChatModeratorSnippet\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"moderatorDetails\": + {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": + \"Details about the moderator.\"\n },\n \"liveChatId\": {\n + \ \"type\": \"string\",\n \"description\": \"The ID of the + live chat this moderator can act on.\"\n }\n }\n },\n \"LocalizedString\": + {\n \"type\": \"object\",\n \"id\": \"LocalizedString\",\n \"properties\": + {\n \"language\": {\n \"type\": \"string\"\n },\n \"value\": + {\n \"type\": \"string\"\n }\n }\n },\n \"InvideoBranding\": + {\n \"id\": \"InvideoBranding\",\n \"description\": \"LINT.IfChange + Describes an invideo branding.\",\n \"properties\": {\n \"timing\": + {\n \"description\": \"The temporal position within the video where + watermark will be displayed.\",\n \"$ref\": \"InvideoTiming\"\n },\n + \ \"position\": {\n \"$ref\": \"InvideoPosition\",\n \"description\": + \"The spatial position within the video where the branding watermark will + be displayed.\"\n },\n \"imageBytes\": {\n \"format\": + \"byte\",\n \"description\": \"The bytes the uploaded image. Only + used in api to youtube communication.\",\n \"type\": \"string\"\n + \ },\n \"targetChannelId\": {\n \"description\": \"The + channel to which this branding links. If not present it defaults to the current + channel.\",\n \"type\": \"string\"\n },\n \"imageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The url of + the uploaded image. Only used in apiary to api communication.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"VideoCategorySnippet\": + {\n \"description\": \"Basic details about a video category, such as + its localized title.\",\n \"properties\": {\n \"channelId\": {\n + \ \"description\": \"The YouTube channel that created the video category.\",\n + \ \"type\": \"string\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The video category's title.\"\n },\n \"assignable\": {\n \"type\": + \"boolean\"\n }\n },\n \"id\": \"VideoCategorySnippet\",\n + \ \"type\": \"object\"\n },\n \"LiveStreamContentDetails\": {\n + \ \"properties\": {\n \"isReusable\": {\n \"description\": + \"Indicates whether the stream is reusable, which means that it can be bound + to multiple broadcasts. It is common for broadcasters to reuse the same stream + for many different broadcasts if those broadcasts occur at different times. + If you set this value to false, then the stream will not be reusable, which + means that it can only be bound to one broadcast. Non-reusable streams differ + from reusable streams in the following ways: - A non-reusable stream can only + be bound to one broadcast. - A non-reusable stream might be deleted by an + automated process after the broadcast ends. - The liveStreams.list method + does not list non-reusable streams if you call the method and set the mine + parameter to true. The only way to use that method to retrieve the resource + for a non-reusable stream is to use the id parameter to identify the stream. + \",\n \"type\": \"boolean\"\n },\n \"closedCaptionsIngestionUrl\": + {\n \"description\": \"The ingestion URL where the closed captions + of this stream are sent.\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Detailed settings of a stream.\",\n \"id\": + \"LiveStreamContentDetails\",\n \"type\": \"object\"\n },\n \"MembershipsLevelSnippet\": + {\n \"type\": \"object\",\n \"properties\": {\n \"creatorChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The id of + the channel that's offering channel memberships.\"\n },\n \"levelDetails\": + {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details + about the pricing level.\"\n }\n },\n \"id\": \"MembershipsLevelSnippet\"\n + \ },\n \"PlaylistItem\": {\n \"id\": \"PlaylistItem\",\n \"description\": + \"A *playlistItem* resource identifies another resource, such as a video, + that is included in a playlist. In addition, the playlistItem resource contains + details about the included resource that pertain specifically to how that + resource is used in that playlist. YouTube uses playlists to identify special + collections of videos for a channel, such as: - uploaded videos - favorite + videos - positively rated (liked) videos - watch history - watch later To + be more specific, these lists are associated with a channel, which is a collection + of a person, group, or company's videos, playlists, and other YouTube information. + You can retrieve the playlist IDs for each of these lists from the channel + resource for a given channel. You can then use the playlistItems.list method + to retrieve any of those lists. You can also add or remove items from those + lists by calling the playlistItems.insert and playlistItems.delete methods. + For example, if a user gives a positive rating to a video, you would insert + that video into the liked videos playlist for that user's channel.\",\n \"properties\": + {\n \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#playlistItem\",\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\"\n + \ },\n \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the playlist item, such as its title and position in the playlist.\"\n },\n + \ \"contentDetails\": {\n \"description\": \"The contentDetails + object is included in the resource if the included item is a YouTube video. + The object contains additional information about the video.\",\n \"$ref\": + \"PlaylistItemContentDetails\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the playlist item.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n \"description\": + \"The status object contains information about the playlist item's privacy + status.\"\n }\n },\n \"type\": \"object\"\n },\n \"AccessPolicy\": + {\n \"type\": \"object\",\n \"description\": \"Rights management + policy for YouTube resources.\",\n \"properties\": {\n \"allowed\": + {\n \"description\": \"The value of allowed indicates whether the + access to the policy is allowed or denied by default.\",\n \"type\": + \"boolean\"\n },\n \"exception\": {\n \"items\": {\n + \ \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"A list of region codes that identify countries + where the default policy do not apply.\"\n }\n },\n \"id\": + \"AccessPolicy\"\n },\n \"ChannelSectionSnippet\": {\n \"properties\": + {\n \"position\": {\n \"type\": \"integer\",\n \"description\": + \"The position of the channel section in the channel.\",\n \"format\": + \"uint32\"\n },\n \"defaultLanguage\": {\n \"type\": + \"string\",\n \"description\": \"The language of the channel section's + default title and description.\"\n },\n \"type\": {\n \"enum\": + [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n + \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n + \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n + \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n + \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n + \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Ministero dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\"\n - \ },\n \"chfilmRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n - \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n - \ \"chfilm18\",\n \"chfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Switzerland.\"\n },\n - \ \"cncRating\": {\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"Rating system in France - Commission de classification cinematographique\"\n - \ },\n \"tvpgRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"description\": \"The - video's TV Parental Guidelines (TVPG) rating.\",\n \"type\": \"string\"\n - \ },\n \"rtcRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ],\n \"description\": \"The - video's General Directorate of Radio, Television and Cinematography (Mexico) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n - \ \"D\",\n \"\"\n ]\n },\n \"pefilmRating\": - {\n \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n - \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n - \ \"pefilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Peru.\"\n },\n \"bmukkRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Unrestricted\",\n \"6+\",\n \"8+\",\n - \ \"10+\",\n \"12+\",\n \"14+\",\n \"16+\",\n - \ \"\"\n ],\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatModeratorSnippet\": {\n \"id\": \"LiveChatModeratorSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"moderatorDetails\": - {\n \"description\": \"Details about the moderator.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"liveChatId\": {\n \"description\": - \"The ID of the live chat this moderator can act on.\",\n \"type\": - \"string\"\n }\n }\n },\n \"CommentListResponse\": {\n \"id\": - \"CommentListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The type of the + channel section.\"\n },\n \"title\": {\n \"description\": + \"The channel section's title for multiple_playlists and multiple_channels.\",\n + \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the channel that published the channel section.\"\n },\n \"style\": + {\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n + \ \"horizontalRow\",\n \"verticalList\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The style of + the channel section.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"localized\": + {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": + \"Localized title, read-only.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ChannelSectionSnippet\",\n \"description\": \"Basic details + about a channel section, including title, style and position.\"\n },\n + \ \"MembershipsLevel\": {\n \"id\": \"MembershipsLevel\",\n \"type\": + \"object\",\n \"description\": \"A *membershipsLevel* resource represents + an offer made by YouTube creators for their fans. Users can become members + of the channel by joining one of the available levels. They will provide recurring + monetary support and receives special benefits.\",\n \"properties\": + {\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube assigns to uniquely identify the memberships level.\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"default\": \"youtube#membershipsLevel\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the level.\",\n \"$ref\": + \"MembershipsLevelSnippet\"\n }\n }\n },\n \"LiveBroadcastListResponse\": + {\n \"type\": \"object\",\n \"id\": \"LiveBroadcastListResponse\",\n + \ \"properties\": {\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n },\n \"items\": {\n \"description\": \"A list + of broadcasts that match the request criteria.\",\n \"items\": {\n + \ \"$ref\": \"LiveBroadcast\"\n },\n \"type\": + \"array\"\n },\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"pageInfo\": {\n \"description\": \"General + pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#liveBroadcastListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n + \ }\n }\n },\n \"SubscriptionContentDetails\": {\n \"id\": + \"SubscriptionContentDetails\",\n \"description\": \"Details about the + content to witch a subscription refers.\",\n \"properties\": {\n \"totalItemCount\": + {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The approximate number of items that the subscription points to.\"\n },\n + \ \"newItemCount\": {\n \"format\": \"uint32\",\n \"description\": + \"The number of new items in the subscription since its content was last read.\",\n + \ \"type\": \"integer\"\n },\n \"activityType\": {\n + \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n + \ \"all\",\n \"uploads\"\n ],\n \"type\": + \"string\",\n \"description\": \"The type of activity this subscription + is for (only uploads, everything).\",\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ]\n }\n + \ },\n \"type\": \"object\"\n },\n \"LiveChatMembershipGiftingDetails\": + {\n \"properties\": {\n \"giftMembershipsCount\": {\n \"description\": + \"The number of gift memberships purchased by the user.\",\n \"format\": + \"int32\",\n \"type\": \"integer\"\n },\n \"giftMembershipsLevelName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the level of the gift memberships purchased by the user. The Level names + are defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n \"LiveBroadcastStatistics\": + {\n \"properties\": {\n \"totalChatCount\": {\n \"description\": + \"The total number of live chat messages currently on the broadcast. The property + and its value will be present if the broadcast is public, has the live chat + feature enabled, and has at least one message. Note that this field will not + be filled after the broadcast ends. So this property would not identify the + number of chat messages for an archived video of a completed live broadcast.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n + \ \"concurrentViewers\": {\n \"description\": \"The number + of viewers currently watching the broadcast. The property and its value will + be present if the broadcast has current viewers and the broadcast owner has + not hidden the viewcount for the video. Note that YouTube stops tracking the + number of concurrent viewers for a broadcast when the broadcast ends. So, + this property would not identify the number of viewers watching an archived + video of a live broadcast that already ended.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n }\n },\n \"id\": \"LiveBroadcastStatistics\",\n + \ \"description\": \"Statistics about the live broadcast. These represent + a snapshot of the values at the time of the request. Statistics are only returned + for live broadcasts.\",\n \"type\": \"object\"\n },\n \"ThumbnailSetResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"description\": \"A list of thumbnails.\",\n \"type\": + \"array\"\n },\n \"kind\": {\n \"default\": \"youtube#thumbnailSetResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n + \ }\n },\n \"id\": \"ThumbnailSetResponse\"\n },\n \"LevelDetails\": + {\n \"properties\": {\n \"displayName\": {\n \"type\": + \"string\",\n \"description\": \"The name that should be used when + referring to this level.\"\n }\n },\n \"id\": \"LevelDetails\",\n + \ \"type\": \"object\"\n },\n \"TokenPagination\": {\n \"id\": + \"TokenPagination\",\n \"properties\": {},\n \"description\": \"Stub + token pagination template to suppress results.\",\n \"type\": \"object\"\n + \ },\n \"ChannelConversionPing\": {\n \"properties\": {\n \"context\": + {\n \"description\": \"Defines the context of the ping.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"subscribe\",\n + \ \"unsubscribe\",\n \"cview\"\n ]\n },\n + \ \"conversionUrl\": {\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"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.\",\n \"id\": \"ChannelConversionPing\"\n },\n \"PlaylistSnippet\": + {\n \"description\": \"Basic details about a playlist, including title, + description and thumbnails.\",\n \"properties\": {\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"The channel + title of the channel that the video belongs to.\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The playlist's + title.\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n + \ \"youtube.playlists.update\"\n ]\n }\n },\n + \ \"thumbnailVideoId\": {\n \"description\": \"Note: if the + playlist has a custom thumbnail, this field will not be populated. The video + id selected by the user that will be used as the thumbnail of this playlist. + This field defaults to the first publicly viewable video in the playlist, + if: 1. The user has never selected a video to be the thumbnail of the playlist. + 2. The user selects a video to be the thumbnail, and then removes that video + from the playlist. 3. The user selects a non-owned video to be the thumbnail, + but that video becomes private, or gets deleted.\",\n \"type\": \"string\"\n + \ },\n \"localized\": {\n \"description\": \"Localized + title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n + \ },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The playlist's description.\"\n },\n \"publishedAt\": + {\n \"description\": \"The date and time that the playlist was created.\",\n + \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n + \ \"defaultLanguage\": {\n \"description\": \"The language + of the playlist's default title and description.\",\n \"type\": \"string\"\n + \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + playlist. 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.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel that published the playlist.\"\n },\n \"tags\": + {\n \"type\": \"array\",\n \"description\": \"Keyword tags + associated with the playlist.\",\n \"items\": {\n \"type\": + \"string\"\n }\n }\n },\n \"id\": \"PlaylistSnippet\",\n + \ \"type\": \"object\"\n },\n \"SuperStickerMetadata\": {\n \"properties\": + {\n \"altText\": {\n \"type\": \"string\",\n \"description\": + \"Internationalized alt text that describes the sticker image and any animation + associated with it.\"\n },\n \"altTextLanguage\": {\n \"type\": + \"string\",\n \"description\": \"Specifies the localization language + in which the alt text is returned.\"\n },\n \"stickerId\": {\n + \ \"description\": \"Unique identifier of the Super Sticker. This + is a shorter form of the alt_text that includes pack name and a recognizable + characteristic of the sticker.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"SuperStickerMetadata\",\n \"type\": \"object\"\n + \ },\n \"I18nLanguageListResponse\": {\n \"properties\": {\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n + \ \"default\": \"youtube#i18nLanguageListResponse\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of comments that match the request criteria.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n + \"I18nLanguage\"\n },\n \"description\": \"A list of supported + i18n languages. In this map, the i18n language ID is the map key, and its + value is the corresponding i18nLanguage resource.\",\n \"type\": + \"array\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"I18nLanguageListResponse\",\n + \ \"type\": \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": + {\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n \"type\": + \"object\",\n \"description\": \"Video processing progress and completion + time estimate.\",\n \"properties\": {\n \"partsTotal\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"An + estimate of the total number of parts that need to be processed for the video. + The number may be updated with more precise estimates while YouTube processes + the video.\"\n },\n \"partsProcessed\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of parts of the video that YouTube has already processed. You + can estimate the percentage of the video that YouTube has already processed + by calculating: 100 * parts_processed / parts_total Note that since the estimated + number of parts could increase without a corresponding increase in the number + of parts that have already been processed, it is possible that the calculated + progress could periodically decrease while YouTube processes a video.\"\n + \ },\n \"timeLeftMs\": {\n \"description\": \"An estimate + of the amount of time, in millseconds, that YouTube needs to finish processing + the video.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"ChannelContentOwnerDetails\": {\n \"type\": + \"object\",\n \"properties\": {\n \"timeLinked\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time when the channel was linked to the content owner.\"\n + \ },\n \"contentOwner\": {\n \"description\": \"The + ID of the content owner linked to the channel.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"ChannelContentOwnerDetails\",\n \"description\": + \"The contentOwnerDetails object encapsulates channel data that is relevant + for YouTube Partners linked with the channel.\"\n },\n \"Member\": {\n + \ \"description\": \"A *member* resource represents a member for a YouTube + channel. A member provides recurring monetary support to a creator and receives + special benefits.\",\n \"properties\": {\n \"kind\": {\n \"default\": + \"youtube#member\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": + \"MemberSnippet\",\n \"description\": \"The snippet object contains + basic details about the member.\"\n }\n },\n \"id\": \"Member\",\n + \ \"type\": \"object\"\n },\n \"ChannelProfileDetails\": {\n \"type\": + \"object\",\n \"properties\": {\n \"profileImageUrl\": {\n \"type\": + \"string\",\n \"description\": \"The channels's avatar URL.\"\n },\n + \ \"channelId\": {\n \"description\": \"The YouTube channel + ID.\",\n \"type\": \"string\"\n },\n \"displayName\": + {\n \"type\": \"string\",\n \"description\": \"The channel's + display name.\"\n },\n \"channelUrl\": {\n \"description\": + \"The channel's URL.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"ChannelProfileDetails\"\n },\n \"LiveChatBanSnippet\": + {\n \"id\": \"LiveChatBanSnippet\",\n \"properties\": {\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n },\n + \ \"liveChatId\": {\n \"type\": \"string\",\n \"description\": + \"The chat this ban is pertinent to.\"\n },\n \"type\": {\n + \ \"description\": \"The type of ban.\",\n \"enumDescriptions\": + [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n + \ \"A temporary ban.\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n + \ \"temporary\"\n ]\n }\n },\n \"type\": + \"object\"\n },\n \"SuperChatEvent\": {\n \"description\": \"A + `__superChatEvent__` resource represents a Super Chat purchase on a YouTube + channel.\",\n \"type\": \"object\",\n \"properties\": {\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n + \ \"description\": \"The `snippet` object contains basic details about + the Super Chat event.\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube assigns to uniquely identify the Super Chat event.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#superChatEvent\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n + \ }\n },\n \"id\": \"SuperChatEvent\"\n },\n \"ImageSettings\": + {\n \"id\": \"ImageSettings\",\n \"type\": \"object\",\n \"description\": + \"Branding properties for images associated with the channel.\",\n \"properties\": + {\n \"bannerTvHighImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"Banner image. TV size high resolution (1920x1080).\"\n + \ },\n \"bannerMobileLowImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"Banner image. Mobile size low resolution (320x88).\"\n + \ },\n \"bannerTvImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"Banner image. TV size extra high resolution (2120x1192).\"\n + \ },\n \"backgroundImageUrl\": {\n \"description\": + \"The URL for the background image shown on the video watch page. The image + should be 1200px by 615px, with a maximum file size of 128k.\",\n \"$ref\": + \"LocalizedProperty\"\n },\n \"bannerMobileMediumHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size medium/high resolution (960x263).\"\n },\n \"bannerImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Desktop size (1060x175).\"\n },\n \"trackingImageUrl\": {\n + \ \"description\": \"The URL for a 1px by 1px tracking pixel that + can be used to collect statistics for views of the channel or video pages.\",\n + \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The URL for the 854px by 70px image that appears below the video player + in the expanded video view of the video watch page.\"\n },\n \"bannerTabletHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size high resolution (2276x377).\"\n },\n \"bannerTabletExtraHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size extra high resolution (2560x424).\"\n },\n \"bannerTabletImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size (1707x283).\"\n },\n \"bannerTvLowImageUrl\": {\n + \ \"description\": \"Banner image. TV size low resolution (854x480).\",\n + \ \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size (640x175).\"\n },\n \"smallBrandedBannerImageImapScript\": + {\n \"description\": \"The image map script for the small banner + image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerExternalUrl\": + {\n \"type\": \"string\",\n \"description\": \"This is generated + when a ChannelBanner.Insert request has succeeded for the given channel.\"\n + \ },\n \"bannerTabletLowImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"Banner image. Tablet size low resolution (1138x188).\"\n + \ },\n \"largeBrandedBannerImageImapScript\": {\n \"$ref\": + \"LocalizedProperty\",\n \"description\": \"The image map script + for the large banner image.\"\n },\n \"bannerMobileHdImageUrl\": + {\n \"description\": \"Banner image. Mobile size high resolution + (1280x360).\",\n \"type\": \"string\"\n },\n \"watchIconImageUrl\": + {\n \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": + {\n \"description\": \"Banner image. Mobile size high resolution + (1440x395).\",\n \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size medium resolution (1280x720).\"\n },\n \"smallBrandedBannerImageUrl\": + {\n \"description\": \"The URL for the 640px by 70px banner image + that appears below the video player in the default view of the video watch + page. The URL for the image that appears above the top-left corner of the + video player. This is a 25-pixel-high image with a flexible width that cannot + exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n }\n + \ }\n },\n \"ActivityContentDetailsFavorite\": {\n \"type\": + \"object\",\n \"id\": \"ActivityContentDetailsFavorite\",\n \"description\": + \"Information about a video that was marked as a favorite video.\",\n \"properties\": + {\n \"resourceId\": {\n \"description\": \"The resourceId + object contains information that identifies the resource that was marked as + a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n }\n },\n + \ \"MemberListResponse\": {\n \"type\": \"object\",\n \"id\": + \"MemberListResponse\",\n \"properties\": {\n \"pageInfo\": {\n + \ \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\"\n },\n \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentListResponse\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n }\n },\n \"MembershipsDuration\": {\n \"properties\": - {\n \"memberSince\": {\n \"description\": \"The date and time - when the user became a continuous member across all levels.\",\n \"type\": - \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"format\": - \"int32\",\n \"description\": \"The cumulative time the user has - been a member across all levels in complete months (the time is rounded down - to the nearest integer).\",\n \"type\": \"integer\"\n }\n - \ },\n \"id\": \"MembershipsDuration\",\n \"type\": \"object\"\n - \ },\n \"Subscription\": {\n \"id\": \"Subscription\",\n \"description\": - \"A *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains basic statistics about the subscription.\",\n \"$ref\": - \"SubscriptionContentDetails\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n \"default\": - \"youtube#subscription\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\",\n \"$ref\": - \"SubscriptionSnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"subscriberSnippet\": {\n \"description\": \"The subscriberSnippet - object contains basic details about the subscriber.\",\n \"$ref\": - \"SubscriptionSubscriberSnippet\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveBroadcastContentDetails\": {\n \"description\": \"Detailed - settings of a broadcast.\",\n \"type\": \"object\",\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"properties\": {\n \"mesh\": {\n \"description\": \"The - mesh for projecting the video if projection is mesh. The mesh value must be - a UTF-8 string containing the base-64 encoding of 3D mesh data that follows - the Spherical Video V2 RFC specification for an mshp box, excluding the box - size and type but including the following four reserved zero bytes for the - version and flags.\",\n \"format\": \"byte\",\n \"type\": - \"string\"\n },\n \"enableLowLatency\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether this broadcast - has low latency enabled.\"\n },\n \"boundStreamLastUpdateTimeMs\": + resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n + \ \"default\": \"youtube#memberListResponse\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Member\"\n },\n + \ \"description\": \"A list of members that match the request criteria.\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n }\n },\n \"ThirdPartyLinkListResponse\": + {\n \"type\": \"object\",\n \"id\": \"ThirdPartyLinkListResponse\",\n + \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"type\": \"array\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n + \ \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"type\": + \"string\"\n }\n }\n },\n \"ChannelAuditDetails\": {\n \"description\": + \"The auditDetails object encapsulates channel data that is relevant for YouTube + Partners during the audit process.\",\n \"properties\": {\n \"communityGuidelinesGoodStanding\": + {\n \"description\": \"Whether or not the channel respects the community + guidelines.\",\n \"type\": \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel has any unresolved claims.\"\n },\n \"copyrightStrikesGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel has any copyright strikes.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"ChannelAuditDetails\"\n },\n \"ActivityContentDetailsSubscription\": + {\n \"description\": \"Information about a channel that a user subscribed + to.\",\n \"id\": \"ActivityContentDetailsSubscription\",\n \"type\": + \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the resource that the user subscribed to.\"\n + \ }\n }\n },\n \"VideoProjectDetails\": {\n \"id\": + \"VideoProjectDetails\",\n \"properties\": {},\n \"description\": + \"DEPRECATED. b/157517979: This part was never populated after it was added. + However, it sees non-zero traffic because there is generated client code in + the wild that refers to it [1]. We keep this field and do NOT remove it because + otherwise V3 would return an error when this part gets requested [2]. [1] + https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"type\": \"object\"\n },\n \"LiveChatMessageSnippet\": {\n \"properties\": + {\n \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n + \ },\n \"membershipGiftingDetails\": {\n \"description\": + \"Details about the Membership Gifting event, this is only set if the type + is 'membershipGiftingEvent'.\",\n \"$ref\": \"LiveChatMembershipGiftingDetails\"\n + \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n + \ \"superStickerDetails\": {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n + \ \"description\": \"Details about the Super Sticker event, this is + only set if the type is 'superStickerEvent'.\"\n },\n \"giftMembershipReceivedDetails\": + {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": + \"Details about the Gift Membership Received event, this is only set if the + type is 'giftMembershipReceivedEvent'.\"\n },\n \"publishedAt\": + {\n \"description\": \"The date and time when the message was orignally + published.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n + \ },\n \"hasDisplayContent\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether the message has display content that + should be displayed to users.\"\n },\n \"messageDeletedDetails\": + {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"newSponsorDetails\": + {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": + \"Details about the New Member Announcement event, this is only set if the + type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term + for \\\"sponsor\\\".\"\n },\n \"authorChannelId\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the user that authored + this message, this field is not always filled. textMessageEvent - the user + that wrote the message fanFundingEvent - the user that funded the broadcast + newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent + - the member that sent the message membershipGiftingEvent - the user that + made the purchase giftMembershipReceivedEvent - the user that received the + gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent + - the author that retracted their message userBannedEvent - the moderator + that took the action superChatEvent - the user that made the purchase superStickerEvent + - the user that made the purchase\"\n },\n \"messageRetractedDetails\": + {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"displayMessage\": + {\n \"description\": \"Contains a string that can be displayed to + the user. If this field is not present the message is silent, at the moment + only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\",\n \"type\": + \"string\"\n },\n \"memberMilestoneChatDetails\": {\n \"description\": + \"Details about the Member Milestone Chat event, this is only set if the type + is 'memberMilestoneChatEvent'.\",\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n + \ },\n \"type\": {\n \"description\": \"The type of + message, this will always be present, it determines the contents of the message + as well as which fields will be present.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n + \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n + \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n + \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n + \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n + \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n + \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"fanFundingEventDetails\": + {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n \"description\": + \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n + \ },\n \"textMessageDetails\": {\n \"description\": + \"Details about the text message, this is only set if the type is 'textMessageEvent'.\",\n + \ \"$ref\": \"LiveChatTextMessageDetails\"\n },\n \"superChatDetails\": + {\n \"description\": \"Details about the Super Chat event, this is + only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Next + ID: 33\",\n \"id\": \"LiveChatMessageSnippet\"\n },\n \"LiveBroadcastSnippet\": + {\n \"properties\": {\n \"isDefaultBroadcast\": {\n \"description\": + \"Indicates whether this broadcast is the default broadcast. Internal only.\",\n + \ \"type\": \"boolean\"\n },\n \"description\": {\n + \ \"type\": \"string\",\n \"description\": \"The broadcast's + description. As with the title, you can set this field by modifying the broadcast + resource or by setting the description field of the corresponding video resource.\"\n + \ },\n \"actualStartTime\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the broadcast actually + started. This information is only available once the broadcast's state is + live.\",\n \"format\": \"date-time\"\n },\n \"actualEndTime\": {\n \"type\": \"string\",\n \"description\": \"The date - and time that the live stream referenced by boundStreamId was last updated.\",\n - \ \"format\": \"date-time\"\n },\n \"monitorStream\": - {\n \"$ref\": \"MonitorStreamInfo\",\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\"\n },\n \"projection\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\"\n - \ },\n \"closedCaptionsType\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ]\n },\n \"enableClosedCaptions\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - HTTP POST closed captioning is enabled for this broadcast. The ingestion URL - of the closed captions is returned through the liveStreams API. This is mutually - exclusive with using the closed_captions_type property, and is equivalent - to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n - \ \"boundStreamId\": {\n \"type\": \"string\",\n \"description\": - \"This value uniquely identifies the live stream bound to the broadcast.\"\n - \ },\n \"enableAutoStart\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether auto start is - enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\"\n },\n \"recordFromStart\": - {\n \"type\": \"boolean\",\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\"\n },\n \"startWithSlate\": - {\n \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n },\n \"latencyPreference\": {\n \"type\": - \"string\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"description\": \"If both this and enable_low_latency - are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Best for: highest quality viewer playbacks and higher resolutions.\",\n - \ \"Best for: near real-time interaction, with minimal playback - buffering.\",\n \"Best for: real-time interaction Does not support: - Closed captions, 1440p, and 4k resolutions\"\n ]\n },\n \"enableContentEncryption\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether YouTube should enable content encryption for the broadcast.\"\n - \ },\n \"enableAutoStop\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether auto stop is enabled - for this broadcast. The default value for this property is false. This setting - can only be used by Events.\"\n },\n \"enableDvr\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting determines whether - viewers can access DVR controls while watching the video. DVR controls enable - the viewer to control the video playback experience by pausing, rewinding, - or fast forwarding content. The default value for this property is true. *Important:* - You must set the value to true and also set the enableArchive property's value - to true if you want to make playback available immediately after the broadcast - ends.\"\n },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n },\n \"stereoLayout\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ],\n \"description\": \"The 3D stereo layout of this broadcast. - This defaults to mono.\"\n }\n }\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"properties\": {\n \"associatedMembershipGiftingMessageId\": - {\n \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n - \ },\n \"gifterChannelId\": {\n \"description\": \"The - ID of the user that made the membership gifting purchase. This matches the - `snippet.authorChannelId` of the associated membership gifting message.\",\n - \ \"type\": \"string\"\n },\n \"memberLevelName\": {\n - \ \"type\": \"string\",\n \"description\": \"The name of - the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n }\n }\n },\n \"Cuepoint\": {\n \"id\": - \"Cuepoint\",\n \"properties\": {\n \"id\": {\n \"description\": - \"The identifier for cuepoint resource.\",\n \"type\": \"string\"\n - \ },\n \"walltimeMs\": {\n \"type\": \"string\",\n \"description\": - \"The wall clock time at which the cuepoint should be inserted. Only one of - insertion_offset_time_ms and walltime_ms may be set at a time.\",\n \"format\": - \"uint64\"\n },\n \"durationSecs\": {\n \"type\": \"integer\",\n - \ \"description\": \"The duration of this cuepoint.\",\n \"format\": - \"uint32\"\n },\n \"cueType\": {\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"insertionOffsetTimeMs\": {\n \"format\": \"int64\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Note that there may be a 5-second end-point resolution - issue. For instance, if a cuepoint comes in for 22:03:27, we may stuff the - cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact of HLS.\",\n - \ \"type\": \"object\"\n },\n \"VideoSnippet\": {\n \"properties\": - {\n \"description\": {\n \"description\": \"The video's description. - @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": - \"string\"\n },\n \"categoryId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube video category associated with the - video.\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ },\n \"liveBroadcastContent\": {\n \"type\": \"string\",\n - \ \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the videos's default snippet.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the video - was uploaded.\"\n },\n \"tags\": {\n \"description\": - \"A list of keyword tags associated with the video. Tags may contain spaces.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"localized\": {\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\",\n - \ \"$ref\": \"VideoLocalization\"\n },\n \"defaultAudioLanguage\": - {\n \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - video's title. @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the video - belongs to.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that the video was uploaded to.\"\n }\n },\n \"description\": - \"Basic details about a video, including title, description, uploader, thumbnails - and category.\",\n \"id\": \"VideoSnippet\",\n \"type\": \"object\"\n - \ },\n \"IngestionInfo\": {\n \"type\": \"object\",\n \"properties\": - {\n \"streamName\": {\n \"type\": \"string\",\n \"description\": - \"The stream name that YouTube assigns to the video stream.\"\n },\n - \ \"rtmpsBackupIngestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"This ingestion url may be used instead of backupIngestionAddress - in order to stream via RTMPS. Not applicable to non-RTMP streams.\"\n },\n - \ \"ingestionAddress\": {\n \"type\": \"string\",\n \"description\": - \"The primary ingestion URL that you should use to stream video to YouTube. - You must stream video to this URL. Depending on which application or tool - you use to encode your video stream, you may need to enter the stream URL - and stream name separately or you may need to concatenate them in the following - format: *STREAM_URL/STREAM_NAME* \"\n },\n \"backupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The backup - ingestion URL that you should use to stream video to YouTube. You have the - option of simultaneously streaming the content that you are sending to the - ingestionAddress to this URL.\"\n },\n \"rtmpsIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n - \ \"id\": \"IngestionInfo\"\n },\n \"VideoAbuseReportReason\": {\n - \ \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID of this abuse report reason.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n \"type\": - \"string\",\n \"default\": \"youtube#videoAbuseReportReason\"\n },\n - \ \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the abuse report reason.\",\n \"$ref\": - \"VideoAbuseReportReasonSnippet\"\n }\n },\n \"id\": \"VideoAbuseReportReason\",\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": {\n \"description\": - \"Live broadcast state.\",\n \"type\": \"object\",\n \"id\": \"LiveBroadcastStatus\",\n - \ \"properties\": {\n \"recordingStatus\": {\n \"enum\": - [\n \"liveBroadcastRecordingStatusUnspecified\",\n \"notRecording\",\n - \ \"recording\",\n \"recorded\"\n ],\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ],\n \"description\": \"The broadcast's recording status.\",\n - \ \"type\": \"string\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\",\n \"type\": - \"boolean\"\n },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + and time that the broadcast actually ended. This information is only available + once the broadcast's state is complete.\",\n \"format\": \"date-time\"\n + \ },\n \"liveChatId\": {\n \"description\": \"The id + of the live chat for this broadcast.\",\n \"type\": \"string\"\n + \ },\n \"publishedAt\": {\n \"description\": \"The date + and time that the broadcast was added to YouTube's live broadcast schedule.\",\n + \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n + \ \"scheduledStartTime\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The date and time that the broadcast is scheduled to start.\",\n \"format\": + \"date-time\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the broadcast. For each nested + object in this object, the key is the name of the thumbnail image, and the + value is an object that contains other information about the thumbnail.\",\n + \ \"$ref\": \"ThumbnailDetails\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel that is publishing the broadcast.\"\n + \ },\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n + \ \"type\": \"string\",\n \"description\": \"The date and + time that the broadcast is scheduled to end.\"\n },\n \"title\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's privacy status. Note that the - broadcast represents exactly one YouTube video, so the privacy settings are - identical to those supported for videos. In addition, you can set this field - by modifying the broadcast resource or by setting the privacyStatus field - of the corresponding video resource.\"\n },\n \"lifeCycleStatus\": - {\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's status. The status can be updated - using the API's liveBroadcasts.transition method.\",\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ]\n },\n \"madeForKids\": - {\n \"description\": \"Whether the broadcast is made for kids or - not, decided by YouTube instead of the creator. This field is read only.\",\n - \ \"type\": \"boolean\"\n },\n \"liveBroadcastPriority\": - {\n \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"enumDescriptions\": [\n \"\",\n \"Low - priority broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ]\n }\n }\n - \ },\n \"Member\": {\n \"type\": \"object\",\n \"id\": \"Member\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"MemberSnippet\",\n \"description\": \"The - snippet object contains basic details about the member.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"default\": \"youtube#member\"\n }\n },\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\"\n - \ },\n \"CommentThread\": {\n \"properties\": {\n \"snippet\": + \ \"type\": \"string\",\n \"description\": \"The broadcast's + title. Note that the broadcast represents exactly one YouTube video. You can + set this field by modifying the broadcast resource or by setting the title + field of the corresponding video resource.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveBroadcastSnippet\",\n \"description\": + \"Basic broadcast information.\"\n },\n \"VideoGetRatingResponse\": + {\n \"properties\": {\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n + \ \"default\": \"youtube#videoGetRatingResponse\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"VideoRating\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of ratings that match the request criteria.\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"VideoGetRatingResponse\"\n },\n + \ \"VideoAbuseReportReasonSnippet\": {\n \"description\": \"Basic details + about a video category, such as its localized title.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"label\": {\n \"type\": \"string\",\n + \ \"description\": \"The localized label belonging to this abuse report + reason.\"\n },\n \"secondaryReasons\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n + \ },\n \"description\": \"The secondary reasons associated + with this reason, if any are available. (There might be 0 or more.)\"\n }\n + \ },\n \"id\": \"VideoAbuseReportReasonSnippet\"\n },\n \"InvideoTiming\": + {\n \"id\": \"InvideoTiming\",\n \"properties\": {\n \"durationMs\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"Defines the duration in milliseconds for which the promotion should be displayed. + If missing, the client should use the default.\"\n },\n \"offsetMs\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"Defines the time at which the promotion will appear. Depending on the value + of type the value of the offsetMs field will represent a time offset from + the start or from the end of the video, expressed in milliseconds.\"\n },\n + \ \"type\": {\n \"description\": \"Describes a timing type. + If the value is offsetFromStart, then the offsetMs field represents an offset + from the start of the video. If the value is offsetFromEnd, then the offsetMs + field represents an offset from the end of the video.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n + \ ]\n }\n },\n \"type\": \"object\",\n \"description\": + \"Describes a temporal position of a visual widget inside a video.\"\n },\n + \ \"ChannelSectionContentDetails\": {\n \"id\": \"ChannelSectionContentDetails\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"playlists\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"The playlist + ids for type single_playlist and multiple_playlists. For singlePlaylist, only + one playlistId is allowed.\"\n },\n \"channels\": {\n \"description\": + \"The channel ids for type multiple_channels.\",\n \"items\": {\n + \ \"type\": \"string\"\n },\n \"type\": \"array\"\n + \ }\n },\n \"description\": \"Details about a channelsection, + including playlists and channels.\"\n },\n \"Activity\": {\n \"type\": + \"object\",\n \"id\": \"Activity\",\n \"description\": \"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.\",\n + \ \"properties\": {\n \"contentDetails\": {\n \"$ref\": + \"ActivityContentDetails\",\n \"description\": \"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.\"\n },\n \"snippet\": {\n \"description\": \"The snippet object contains basic details - about the comment thread and also the top level comment.\",\n \"$ref\": - \"CommentThreadSnippet\"\n },\n \"replies\": {\n \"$ref\": - \"CommentThreadReplies\",\n \"description\": \"The replies object - contains a limited number of replies (if any) to the top level comment found - in the snippet.\"\n },\n \"etag\": {\n \"description\": + about the activity, including the activity's type and group ID.\",\n \"$ref\": + \"ActivitySnippet\"\n },\n \"kind\": {\n \"default\": + \"youtube#activity\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource\",\n \"type\": \"string\"\n },\n \"id\": {\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the activity.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"LiveBroadcast\": {\n \"type\": \"object\",\n \"properties\": + {\n \"kind\": {\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveBroadcast\"\n + \ },\n \"id\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the broadcast.\",\n \"type\": \"string\"\n },\n \"statistics\": + {\n \"$ref\": \"LiveBroadcastStatistics\",\n \"description\": + \"The statistics object contains info about the event's current stats. These + include concurrent viewers and total chat count. Statistics can change (in + either direction) during the lifetime of an event. Statistics are only returned + while the event is live.\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#commentThread\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"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.\",\n - \ \"id\": \"CommentThread\",\n \"type\": \"object\"\n },\n \"ChannelSettings\": - {\n \"id\": \"ChannelSettings\",\n \"description\": \"Branding properties - for the channel view.\",\n \"properties\": {\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"moderateComments\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - user-submitted comments left on the channel page need to be approved by the - channel owner to be publicly visible.\"\n },\n \"description\": - {\n \"description\": \"Specifies the channel description.\",\n \"type\": - \"string\"\n },\n \"profileColor\": {\n \"description\": - \"A prominent color that can be rendered on this channel page.\",\n \"type\": - \"string\"\n },\n \"trackingAnalyticsAccountId\": {\n \"description\": - \"The ID for a Google Analytics account to track and measure traffic to the - channels.\",\n \"type\": \"string\"\n },\n \"country\": + \ \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n \"description\": + \"The status object contains information about the event's status.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"LiveBroadcastSnippet\",\n \"description\": + \"The snippet object contains basic details about the event, including its + title, description, start time, and end time.\"\n },\n \"contentDetails\": + {\n \"description\": \"The contentDetails object contains information + about the event's video content, such as whether the content can be shown + in an embedded video player or if it will be archived and therefore available + for viewing after the event has concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n + \ }\n },\n \"id\": \"LiveBroadcast\",\n \"description\": + \"A *liveBroadcast* resource represents an event that will be streamed, via + live video, on YouTube.\"\n },\n \"ActivityContentDetailsSocial\": {\n + \ \"id\": \"ActivityContentDetailsSocial\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"referenceUrl\": {\n \"type\": + \"string\",\n \"description\": \"The URL of the social network post.\"\n + \ },\n \"author\": {\n \"description\": \"The author + of the social network post.\",\n \"type\": \"string\"\n },\n + \ \"resourceId\": {\n \"description\": \"The resourceId object + encapsulates information that identifies the resource associated with a social + network post.\",\n \"$ref\": \"ResourceId\"\n },\n \"type\": + {\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n + \ \"facebook\",\n \"twitter\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The name of the social network.\"\n },\n \"imageUrl\": {\n + \ \"description\": \"An image of the post's author.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Details about a + social network post.\"\n },\n \"LiveChatMessageRetractedDetails\": {\n + \ \"type\": \"object\",\n \"properties\": {\n \"retractedMessageId\": + {\n \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\"\n + \ },\n \"ChannelToStoreLinkDetails\": {\n \"properties\": {\n \"storeUrl\": + {\n \"type\": \"string\",\n \"description\": \"Landing page + of the store.\"\n },\n \"merchantId\": {\n \"format\": + \"uint64\",\n \"description\": \"Google Merchant Center id of the + store.\",\n \"type\": \"string\"\n },\n \"storeName\": + {\n \"type\": \"string\",\n \"description\": \"Name of the + store.\"\n }\n },\n \"description\": \"Information specific + to a store on a merchandising platform linked to a YouTube channel.\",\n \"id\": + \"ChannelToStoreLinkDetails\",\n \"type\": \"object\"\n },\n \"LiveChatModerator\": + {\n \"id\": \"LiveChatModerator\",\n \"properties\": {\n \"id\": + {\n \"description\": \"The ID that YouTube assigns to uniquely identify + the moderator.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the moderator.\",\n \"$ref\": + \"LiveChatModeratorSnippet\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n + \ \"default\": \"youtube#liveChatModerator\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"A *liveChatModerator* + resource represents a moderator for a YouTube live chat. A chat moderator + has the ability to ban/unban users from a chat, remove message, etc.\",\n + \ \"type\": \"object\"\n },\n \"VideoPlayer\": {\n \"description\": + \"Player to be used for a video playback.\",\n \"properties\": {\n \"embedHtml\": + {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e + tag that embeds a player that will play the video.\"\n },\n \"embedHeight\": + {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n + \ \"embedWidth\": {\n \"description\": \"The embed width\",\n + \ \"type\": \"string\",\n \"format\": \"int64\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"VideoPlayer\"\n },\n + \ \"VideoFileDetailsVideoStream\": {\n \"type\": \"object\",\n \"description\": + \"Information about a video stream.\",\n \"properties\": {\n \"rotation\": + {\n \"enum\": [\n \"none\",\n \"clockwise\",\n + \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The amount that YouTube needs to rotate the original source content to properly + display the video.\",\n \"type\": \"string\"\n },\n \"aspectRatio\": + {\n \"format\": \"double\",\n \"type\": \"number\",\n \"description\": + \"The video content's display aspect ratio, which specifies the aspect ratio + in which the video should be displayed.\"\n },\n \"heightPixels\": + {\n \"description\": \"The encoded video content's height in pixels.\",\n + \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n + \ \"codec\": {\n \"type\": \"string\",\n \"description\": + \"The video codec that the stream uses.\"\n },\n \"widthPixels\": + {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The encoded video content's width in pixels. You can calculate the video's + encoding aspect ratio as width_pixels / height_pixels.\"\n },\n \"vendor\": + {\n \"description\": \"A value that uniquely identifies a video vendor. + Typically, the value is a four-letter vendor code.\",\n \"type\": + \"string\"\n },\n \"bitrateBps\": {\n \"type\": \"string\",\n + \ \"description\": \"The video stream's bitrate, in bits per second.\",\n + \ \"format\": \"uint64\"\n },\n \"frameRateFps\": {\n + \ \"format\": \"double\",\n \"type\": \"number\",\n \"description\": + \"The video stream's frame rate, in frames per second.\"\n }\n },\n + \ \"id\": \"VideoFileDetailsVideoStream\"\n },\n \"ChannelSettings\": + {\n \"properties\": {\n \"showBrowseView\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the tab to browse the videos + should be displayed.\"\n },\n \"moderateComments\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether user-submitted comments + left on the channel page need to be approved by the channel owner to be publicly + visible.\"\n },\n \"defaultLanguage\": {\n \"type\": + \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"Specifies the channel description.\"\n },\n + \ \"keywords\": {\n \"description\": \"Lists keywords associated + with the channel, comma-separated.\",\n \"type\": \"string\"\n },\n + \ \"showRelatedChannels\": {\n \"type\": \"boolean\",\n \"description\": + \"Whether related channels should be proposed.\"\n },\n \"country\": {\n \"description\": \"The country of the channel.\",\n \"type\": - \"string\"\n },\n \"featuredChannelsUrls\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The list of featured channels.\"\n },\n - \ \"title\": {\n \"description\": \"Specifies the channel title.\",\n - \ \"type\": \"string\"\n },\n \"showBrowseView\": {\n - \ \"description\": \"Whether the tab to browse the videos should be - displayed.\",\n \"type\": \"boolean\"\n },\n \"defaultTab\": - {\n \"description\": \"Which content tab users should see when viewing - the channel.\",\n \"type\": \"string\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n },\n \"keywords\": {\n \"type\": - \"string\",\n \"description\": \"Lists keywords associated with the - channel, comma-separated.\"\n },\n \"unsubscribedTrailer\": + \"string\"\n },\n \"defaultTab\": {\n \"description\": + \"Which content tab users should see when viewing the channel.\",\n \"type\": + \"string\"\n },\n \"featuredChannelsTitle\": {\n \"type\": + \"string\",\n \"description\": \"Title for the featured channels + tab.\"\n },\n \"trackingAnalyticsAccountId\": {\n \"description\": + \"The ID for a Google Analytics account to track and measure traffic to the + channels.\",\n \"type\": \"string\"\n },\n \"unsubscribedTrailer\": {\n \"description\": \"The trailer of the channel, for users that - are not subscribers.\",\n \"type\": \"string\"\n },\n \"showRelatedChannels\": - {\n \"description\": \"Whether related channels should be proposed.\",\n - \ \"type\": \"boolean\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsRecommendation\",\n \"properties\": - {\n \"reason\": {\n \"type\": \"string\",\n \"description\": - \"The reason that the resource is recommended to the user.\",\n \"enumDescriptions\": + are not subscribers.\",\n \"type\": \"string\"\n },\n \"profileColor\": + {\n \"description\": \"A prominent color that can be rendered on + this channel page.\",\n \"type\": \"string\"\n },\n \"featuredChannelsUrls\": + {\n \"description\": \"The list of featured channels.\",\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"Specifies the channel title.\"\n }\n },\n \"description\": + \"Branding properties for the channel view.\",\n \"type\": \"object\",\n + \ \"id\": \"ChannelSettings\"\n },\n \"CommentSnippet\": {\n \"properties\": + {\n \"textDisplay\": {\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"authorProfileImageUrl\": {\n \"description\": + \"The URL for the avatar of the user who posted the comment.\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time when the comment was originally published.\"\n },\n + \ \"authorChannelId\": {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n + \ },\n \"authorChannelUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"Link to the author's YouTube channel, if any.\"\n + \ },\n \"likeCount\": {\n \"type\": \"integer\",\n \"description\": + \"The total number of likes this comment has received.\",\n \"format\": + \"uint32\"\n },\n \"channelId\": {\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n \"authorDisplayName\": + {\n \"description\": \"The name of the user who posted the comment.\",\n + \ \"type\": \"string\"\n },\n \"parentId\": {\n \"description\": + \"The unique id of the parent comment, only set for replies.\",\n \"type\": + \"string\"\n },\n \"textOriginal\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n + \ },\n \"viewerRating\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ]\n },\n + \ \"moderationStatus\": {\n \"description\": \"The comment's + moderation status. Will not be set if the comments were requested through + the id filter.\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ],\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"type\": \"string\"\n + \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the video the comment refers to, if any.\"\n },\n \"canRate\": + {\n \"description\": \"Whether the current viewer can rate this comment.\",\n + \ \"type\": \"boolean\"\n },\n \"updatedAt\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time when the comment + was last updated.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"CommentSnippet\",\n \"description\": \"Basic details + about a comment, such as its author and text.\",\n \"type\": \"object\"\n + \ },\n \"VideoProcessingDetails\": {\n \"type\": \"object\",\n \"properties\": + {\n \"fileDetailsAvailability\": {\n \"description\": \"This + value indicates whether file details are available for the uploaded video. + You can retrieve a video's file details by requesting the fileDetails part + in your videos.list() request.\",\n \"type\": \"string\"\n },\n + \ \"thumbnailsAvailability\": {\n \"description\": \"This value + indicates whether thumbnail images have been generated for the video.\",\n + \ \"type\": \"string\"\n },\n \"processingProgress\": + {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": + \"The processingProgress object contains information about the progress YouTube + has made in processing the video. The values are really only relevant if the + video's processing status is processing.\"\n },\n \"processingIssuesAvailability\": + {\n \"type\": \"string\",\n \"description\": \"This value + indicates whether the video processing engine has generated suggestions that + might improve YouTube's ability to process the the video, warnings that explain + video processing problems, or errors that cause video processing problems. + You can retrieve these suggestions by requesting the suggestions part in your + videos.list() request.\"\n },\n \"processingStatus\": {\n \"type\": + \"string\",\n \"enum\": [\n \"processing\",\n \"succeeded\",\n + \ \"failed\",\n \"terminated\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ]\n },\n \"seedResourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The seedResourceId object contains - information about the resource that caused the recommendation.\"\n },\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\"\n }\n },\n \"description\": \"Information that - identifies the recommended resource.\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the promoted video.\",\n \"type\": - \"string\"\n },\n \"clickTrackingUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user clicked through on this promoted item.\"\n },\n - \ \"forecastingUrl\": {\n \"description\": \"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.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"descriptionText\": {\n \"description\": \"The - text description to accompany the promoted item.\",\n \"type\": \"string\"\n - \ },\n \"destinationUrl\": {\n \"description\": \"The - URL the client should direct the user to, if the user chooses to visit the - advertiser's website.\",\n \"type\": \"string\"\n },\n \"customCtaButtonText\": - {\n \"description\": \"The custom call-to-action button text. If - specified, it will override the default button text for the cta_type.\",\n - \ \"type\": \"string\"\n },\n \"ctaType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\"\n },\n \"creativeViewUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\",\n \"type\": \"string\"\n },\n \"impressionUrl\": - {\n \"description\": \"The list of impression URLs. The client should - ping all of these URLs to indicate that the user was shown this promoted item.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"adTag\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should fetch to request a - promoted item.\"\n }\n },\n \"description\": \"Details about - a resource which is being promoted.\",\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"LiveChatSuperStickerDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatSuperStickerDetails\",\n + \ ],\n \"description\": \"The video's processing status. + This value indicates whether YouTube was able to process the video or if the + video is still being processed.\"\n },\n \"tagSuggestionsAvailability\": + {\n \"description\": \"This value indicates whether keyword (tag) + suggestions are available for the video. Tags can be added to a video's metadata + to make it easier for other users to find the video. You can retrieve these + suggestions by requesting the suggestions part in your videos.list() request.\",\n + \ \"type\": \"string\"\n },\n \"editorSuggestionsAvailability\": + {\n \"description\": \"This value indicates whether video editing + suggestions, which might improve video quality or the playback experience, + are available for the video. You can retrieve these suggestions by requesting + the suggestions part in your videos.list() request.\",\n \"type\": + \"string\"\n },\n \"processingFailureReason\": {\n \"description\": + \"The reason that YouTube failed to process the video. This property will + only have a value if the processingStatus property's value is failed.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n + \ \"other\"\n ]\n }\n },\n \"id\": \"VideoProcessingDetails\",\n + \ \"description\": \"Describes processing status and progress and availability + of some other Video resource parts.\"\n },\n \"LiveChatBan\": {\n \"id\": + \"LiveChatBan\",\n \"description\": \"A `__liveChatBan__` resource represents + a ban for a YouTube live chat.\",\n \"properties\": {\n \"id\": + {\n \"description\": \"The ID that YouTube assigns to uniquely identify + the ban.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"default\": \"youtube#liveChatBan\",\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n },\n \"snippet\": + {\n \"description\": \"The `snippet` object contains basic details + about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"CommentListResponse\": {\n \"properties\": {\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n + \ \"default\": \"youtube#commentListResponse\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"description\": \"A list of comments that match the + request criteria.\",\n \"items\": {\n \"$ref\": \"Comment\"\n + \ }\n }\n },\n \"type\": \"object\",\n \"id\": + \"CommentListResponse\"\n },\n \"TestItem\": {\n \"properties\": + {\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n + \ },\n \"gaia\": {\n \"format\": \"int64\",\n \"type\": + \"string\"\n },\n \"featuredPart\": {\n \"type\": \"boolean\"\n + \ },\n \"id\": {\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"TestItem\",\n \"type\": \"object\"\n },\n + \ \"IngestionInfo\": {\n \"description\": \"Describes information necessary + for ingesting an RTMP, HTTP, or SRT stream.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"backupIngestionAddress\": {\n \"type\": + \"string\",\n \"description\": \"The backup ingestion URL that you + should use to stream video to YouTube. You have the option of simultaneously + streaming the content that you are sending to the ingestionAddress to this + URL.\"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"type\": + \"string\",\n \"description\": \"This ingestion url may be used instead + of backupIngestionAddress in order to stream via RTMPS. Not applicable to + non-RTMP streams.\"\n },\n \"rtmpsIngestionAddress\": {\n \"description\": + \"This ingestion url may be used instead of ingestionAddress in order to stream + via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n + \ },\n \"ingestionAddress\": {\n \"description\": \"The + primary ingestion URL that you should use to stream video to YouTube. You + must stream video to this URL. Depending on which application or tool you + use to encode your video stream, you may need to enter the stream URL and + stream name separately or you may need to concatenate them in the following + format: *STREAM_URL/STREAM_NAME* \",\n \"type\": \"string\"\n },\n + \ \"streamName\": {\n \"type\": \"string\",\n \"description\": + \"The stream name that YouTube assigns to the video stream.\"\n }\n + \ },\n \"id\": \"IngestionInfo\"\n },\n \"ChannelStatistics\": + {\n \"description\": \"Statistics about a channel: number of subscribers, + number of videos in the channel, etc.\",\n \"properties\": {\n \"subscriberCount\": + {\n \"format\": \"uint64\",\n \"description\": \"The number + of subscribers that the channel has.\",\n \"type\": \"string\"\n + \ },\n \"videoCount\": {\n \"type\": \"string\",\n \"description\": + \"The number of videos uploaded to the channel.\",\n \"format\": + \"uint64\"\n },\n \"hiddenSubscriberCount\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether or not the number of subscribers + is shown for this user.\"\n },\n \"viewCount\": {\n \"format\": + \"uint64\",\n \"description\": \"The number of times the channel + has been viewed.\",\n \"type\": \"string\"\n },\n \"commentCount\": + {\n \"format\": \"uint64\",\n \"description\": \"The number + of comments for the channel.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"ChannelStatistics\",\n \"type\": \"object\"\n + \ },\n \"VideoAbuseReportReasonListResponse\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"description\": \"A list of + valid abuse reasons that are used with `video.ReportAbuse`.\",\n \"items\": + {\n \"$ref\": \"VideoAbuseReportReason\"\n }\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The `visitorId` identifies the visitor.\"\n },\n \"kind\": + {\n \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoAbuseReportReasonListResponse\"\n + \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n + \ \"properties\": {\n \"banType\": {\n \"type\": \"string\",\n + \ \"description\": \"The type of ban.\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"permanent\",\n \"temporary\"\n ]\n },\n + \ \"banDurationSeconds\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"The duration of the ban. This property + is only present if the banType is temporary.\"\n },\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": + \"The details of the user that was banned.\"\n }\n },\n \"type\": + \"object\"\n },\n \"CommentThreadReplies\": {\n \"properties\": + {\n \"comments\": {\n \"description\": \"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.\",\n \"items\": {\n \"$ref\": \"Comment\"\n + \ },\n \"type\": \"array\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"Comments written in (direct or indirect) + reply to the top level comment.\",\n \"id\": \"CommentThreadReplies\"\n + \ },\n \"PlaylistContentDetails\": {\n \"type\": \"object\",\n \"id\": + \"PlaylistContentDetails\",\n \"properties\": {\n \"itemCount\": + {\n \"format\": \"uint32\",\n \"description\": \"The number + of videos in the playlist.\",\n \"type\": \"integer\"\n }\n + \ }\n },\n \"Video\": {\n \"id\": \"Video\",\n \"description\": + \"A *video* resource represents a YouTube video.\",\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"monetizationDetails\": {\n + \ \"$ref\": \"VideoMonetizationDetails\",\n \"description\": + \"The monetizationDetails object encapsulates information about the monetization + status of the video.\"\n },\n \"statistics\": {\n \"$ref\": + \"VideoStatistics\",\n \"description\": \"The statistics object contains + statistics about the video.\"\n },\n \"recordingDetails\": {\n + \ \"$ref\": \"VideoRecordingDetails\",\n \"description\": + \"The recordingDetails object encapsulates information about the location, + date and address where the video was recorded.\"\n },\n \"ageGating\": + {\n \"$ref\": \"VideoAgeGating\",\n \"description\": \"Age + restriction details related to a video. This data can only be retrieved by + the video owner.\"\n },\n \"suggestions\": {\n \"$ref\": + \"VideoSuggestions\",\n \"description\": \"The suggestions object + encapsulates suggestions that identify opportunities to improve the video + quality or the metadata for the uploaded video. This data can only be retrieved + by the video owner.\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.videos.update\"\n + \ ]\n }\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#video\\\".\",\n \"default\": + \"youtube#video\"\n },\n \"fileDetails\": {\n \"$ref\": + \"VideoFileDetails\",\n \"description\": \"The fileDetails object + encapsulates information about the video file that was uploaded to YouTube, + including the file's resolution, duration, audio and video codecs, stream + bitrates, and more. This data can only be retrieved by the video owner.\"\n + \ },\n \"player\": {\n \"$ref\": \"VideoPlayer\",\n + \ \"description\": \"The player object contains information that you + would use to play the video in an embedded player.\"\n },\n \"processingDetails\": + {\n \"$ref\": \"VideoProcessingDetails\",\n \"description\": + \"The processingDetails object encapsulates information about YouTube's progress + in processing the uploaded video file. The properties in the object identify + the current processing status and an estimate of the time remaining until + YouTube finishes processing the video. This part also indicates whether different + types of data or content, such as file details or thumbnail images, are available + for the video. The processingProgress object is designed to be polled so that + the video uploaded can track the progress that YouTube has made in processing + the uploaded video file. This data can only be retrieved by the video owner.\"\n + \ },\n \"liveStreamingDetails\": {\n \"description\": + \"The liveStreamingDetails object contains metadata about a live video broadcast. + The object will only be present in a video resource if the video is an upcoming, + live, or completed live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n + \ },\n \"topicDetails\": {\n \"$ref\": \"VideoTopicDetails\",\n + \ \"description\": \"The topicDetails object encapsulates information + about Freebase topics associated with the video.\"\n },\n \"status\": + {\n \"description\": \"The status object contains information about + the video's uploading, processing, and privacy statuses.\",\n \"$ref\": + \"VideoStatus\"\n },\n \"projectDetails\": {\n \"description\": + \"The projectDetails object contains information about the project specific + video metadata. b/157517979: This part was never populated after it was added. + However, it sees non-zero traffic because there is generated client code in + the wild that refers to it [1]. We keep this field and do NOT remove it because + otherwise V3 would return an error when this part gets requested [2]. [1] + https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"$ref\": \"VideoProjectDetails\"\n },\n \"localizations\": + {\n \"description\": \"The localizations object contains localized + versions of the basic details about the video, such as its title and description.\",\n + \ \"type\": \"object\",\n \"additionalProperties\": {\n \"$ref\": + \"VideoLocalization\"\n }\n },\n \"contentDetails\": + {\n \"$ref\": \"VideoContentDetails\",\n \"description\": + \"The contentDetails object contains information about the video content, + including the length of the video and its aspect ratio.\"\n },\n \"snippet\": + {\n \"$ref\": \"VideoSnippet\",\n \"description\": \"The + snippet object contains basic details about the video, such as its title, + description, and category.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"ThirdPartyLinkStatus\": {\n \"type\": \"object\",\n \"description\": + \"The third-party link status object contains information about the status + of the link.\",\n \"properties\": {\n \"linkStatus\": {\n \"enum\": + [\n \"unknown\",\n \"failed\",\n \"pending\",\n + \ \"linked\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n }\n },\n \"id\": + \"ThirdPartyLinkStatus\"\n },\n \"LiveChatSuperStickerDetails\": {\n + \ \"id\": \"LiveChatSuperStickerDetails\",\n \"type\": \"object\",\n \ \"properties\": {\n \"currency\": {\n \"description\": \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n \ },\n \"tier\": {\n \"format\": \"uint32\",\n \"description\": \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"type\": \"integer\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n }\n }\n },\n \"ChannelSectionSnippet\": - {\n \"properties\": {\n \"defaultLanguage\": {\n \"description\": - \"The language of the channel section's default title and description.\",\n - \ \"type\": \"string\"\n },\n \"type\": {\n \"description\": - \"The type of the channel section.\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"position\": {\n \"description\": \"The position of the - channel section in the channel.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"title\": {\n \"description\": - \"The channel section's title for multiple_playlists and multiple_channels.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\",\n \"type\": \"string\"\n },\n \"style\": - {\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The style of the channel section.\"\n },\n \"localized\": - {\n \"description\": \"Localized title, read-only.\",\n \"$ref\": - \"ChannelSectionLocalization\"\n }\n },\n \"description\": - \"Basic details about a channel section, including title, style and position.\",\n - \ \"type\": \"object\",\n \"id\": \"ChannelSectionSnippet\"\n },\n - \ \"GeoPoint\": {\n \"type\": \"object\",\n \"properties\": {\n - \ \"altitude\": {\n \"type\": \"number\",\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\",\n \"format\": - \"double\"\n },\n \"longitude\": {\n \"format\": \"double\",\n - \ \"type\": \"number\",\n \"description\": \"Longitude in - degrees.\"\n },\n \"latitude\": {\n \"type\": \"number\",\n - \ \"description\": \"Latitude in degrees.\",\n \"format\": - \"double\"\n }\n },\n \"description\": \"Geographical coordinates - of a point, in WGS84.\",\n \"id\": \"GeoPoint\"\n },\n \"LiveStreamContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamContentDetails\",\n - \ \"properties\": {\n \"isReusable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether the stream is reusable, which - means that it can be bound to multiple broadcasts. It is common for broadcasters - to reuse the same stream for many different broadcasts if those broadcasts - occur at different times. If you set this value to false, then the stream - will not be reusable, which means that it can only be bound to one broadcast. - Non-reusable streams differ from reusable streams in the following ways: - - A non-reusable stream can only be bound to one broadcast. - A non-reusable - stream might be deleted by an automated process after the broadcast ends. - - The liveStreams.list method does not list non-reusable streams if you call - the method and set the mine parameter to true. The only way to use that method - to retrieve the resource for a non-reusable stream is to use the id parameter - to identify the stream. \"\n },\n \"closedCaptionsIngestionUrl\": - {\n \"description\": \"The ingestion URL where the closed captions - of this stream are sent.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Detailed settings of a stream.\"\n },\n \"ChannelContentDetails\": - {\n \"properties\": {\n \"relatedPlaylists\": {\n \"type\": - \"object\",\n \"properties\": {\n \"uploads\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s uploaded videos. Use the videos.insert method to - upload new videos and the videos.delete method to delete previously uploaded - videos.\"\n },\n \"watchLater\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\",\n \"type\": \"string\"\n },\n \"favorites\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s favorite videos. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"watchHistory\": {\n \"description\": + The lowest tier is 1.\",\n \"type\": \"integer\"\n },\n \"amountMicros\": + {\n \"type\": \"string\",\n \"description\": \"The amount + purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": + \"uint64\"\n },\n \"superStickerMetadata\": {\n \"$ref\": + \"SuperStickerMetadata\",\n \"description\": \"Information about + the Super Sticker.\"\n },\n \"amountDisplayString\": {\n \"type\": + \"string\",\n \"description\": \"A rendered string that displays + the fund amount and currency to the user.\"\n }\n }\n },\n + \ \"ChannelContentDetails\": {\n \"properties\": {\n \"relatedPlaylists\": + {\n \"properties\": {\n \"uploads\": {\n \"description\": + \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use + the videos.insert method to upload new videos and the videos.delete method + to delete previously uploaded videos.\",\n \"type\": \"string\"\n + \ },\n \"watchHistory\": {\n \"description\": \"The ID of the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete to add or remove items from that list.\",\n \"type\": \"string\"\n },\n \"likes\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ }\n }\n }\n },\n \"id\": \"ChannelContentDetails\",\n - \ \"description\": \"Details about the content of a channel.\",\n \"type\": - \"object\"\n },\n \"LiveChatModerator\": {\n \"properties\": {\n - \ \"snippet\": {\n \"$ref\": \"LiveChatModeratorSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the moderator.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveChatModerator\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatModerator\",\n - \ \"type\": \"object\",\n \"description\": \"A *liveChatModerator* - resource represents a moderator for a YouTube live chat. A chat moderator - has the ability to ban/unban users from a chat, remove message, etc.\"\n },\n - \ \"ActivityContentDetailsUpload\": {\n \"type\": \"object\",\n \"description\": - \"Information about the uploaded video.\",\n \"id\": \"ActivityContentDetailsUpload\",\n - \ \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveBroadcast\": {\n \"properties\": - {\n \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n \"description\": - \"The status object contains information about the event's status.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveBroadcast\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"contentDetails\": - {\n \"$ref\": \"LiveBroadcastContentDetails\",\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the broadcast.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"statistics\": {\n \"$ref\": - \"LiveBroadcastStatistics\",\n \"description\": \"The statistics - object contains info about the event's current stats. These include concurrent - viewers and total chat count. Statistics can change (in either direction) - during the lifetime of an event. Statistics are only returned while the event - is live.\"\n },\n \"snippet\": {\n \"$ref\": \"LiveBroadcastSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the event, including its title, description, start time, and end time.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveBroadcast\",\n - \ \"description\": \"A *liveBroadcast* resource represents an event that - will be streamed, via live video, on YouTube.\"\n },\n \"SearchResult\": - {\n \"description\": \"A search result contains information about a YouTube - video, channel, or playlist that matches the search parameters specified in - an API request. While a search result points to a uniquely identifiable resource, - like a video, it does not have its own persistent data.\",\n \"type\": - \"object\",\n \"id\": \"SearchResult\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"SearchResultSnippet\",\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\"\n },\n \"id\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The id object contains information that can be - used to uniquely identify the resource that matches the search request.\"\n + {\n \"type\": \"string\",\n \"description\": \"The + ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert + and playlistItems.delete to add or remove items from that list.\"\n },\n + \ \"watchLater\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the playlist that contains the channel\\\"s watch later playlist. + Use the playlistItems.insert and playlistItems.delete to add or remove items + from that list.\"\n },\n \"favorites\": {\n \"description\": + \"The ID of the playlist that contains the channel\\\"s favorite videos. Use + the playlistItems.insert and playlistItems.delete to add or remove items from + that list.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n }\n },\n \"description\": + \"Details about the content of a channel.\",\n \"type\": \"object\",\n + \ \"id\": \"ChannelContentDetails\"\n },\n \"VideoStatistics\": + {\n \"description\": \"Statistics about the video, such as the number + of times the video was viewed or liked.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"favoriteCount\": {\n \"type\": + \"string\",\n \"description\": \"The number of users who currently + have the video marked as a favorite video.\",\n \"format\": \"uint64\"\n + \ },\n \"commentCount\": {\n \"format\": \"uint64\",\n + \ \"type\": \"string\",\n \"description\": \"The number of + comments for the video.\"\n },\n \"likeCount\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of users who have indicated that they liked the video by giving + it a positive rating.\"\n },\n \"viewCount\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + number of times the video has been viewed.\"\n },\n \"dislikeCount\": + {\n \"description\": \"The number of users who have indicated that + they disliked the video by giving it a negative rating.\",\n \"format\": + \"uint64\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"VideoStatistics\"\n },\n \"ResourceId\": {\n \"description\": + \"A resource id is a generic reference that points to another YouTube resource.\",\n + \ \"id\": \"ResourceId\",\n \"properties\": {\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"The type + of the API resource.\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a channel. This property is only present if the resourceId.kind + value is youtube#channel.\",\n \"type\": \"string\"\n },\n + \ \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a video. This property is only present if the resourceId.kind + value is youtube#video.\"\n },\n \"playlistId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a playlist. This property is only present if the resourceId.kind + value is youtube#playlist.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"LiveChatMessageAuthorDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageAuthorDetails\",\n + \ \"properties\": {\n \"isChatSponsor\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the author is a sponsor + of the live chat.\"\n },\n \"channelUrl\": {\n \"type\": + \"string\",\n \"description\": \"The channel's URL.\"\n },\n + \ \"displayName\": {\n \"description\": \"The channel's display + name.\",\n \"type\": \"string\"\n },\n \"isChatModerator\": + {\n \"description\": \"Whether the author is a moderator of the live + chat.\",\n \"type\": \"boolean\"\n },\n \"channelId\": + {\n \"description\": \"The YouTube channel ID.\",\n \"type\": + \"string\"\n },\n \"isChatOwner\": {\n \"description\": + \"Whether the author is the owner of the live chat.\",\n \"type\": + \"boolean\"\n },\n \"profileImageUrl\": {\n \"type\": + \"string\",\n \"description\": \"The channels's avatar URL.\"\n },\n + \ \"isVerified\": {\n \"description\": \"Whether the author's + identity has been verified by YouTube.\",\n \"type\": \"boolean\"\n + \ }\n }\n },\n \"VideoCategory\": {\n \"type\": \"object\",\n + \ \"description\": \"A *videoCategory* resource identifies a category + that has been or could be associated with uploaded videos.\",\n \"id\": + \"VideoCategory\",\n \"properties\": {\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube uses to + uniquely identify the video category.\",\n \"type\": \"string\"\n \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#searchResult\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"SuperChatEventSnippet\": - {\n \"type\": \"object\",\n \"id\": \"SuperChatEventSnippet\",\n - \ \"properties\": {\n \"commentText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text contents of the comment left by the - user.\"\n },\n \"amountMicros\": {\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\"\n },\n \"supporterDetails\": - {\n \"description\": \"Details about the supporter.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"displayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the purchase amount and currency (e.g., \\\"$1.00\\\"). The string is rendered - for the given language.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel id where the event occurred.\"\n - \ },\n \"messageType\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The tier for - the paid message, which is based on the amount of money spent to purchase - the message.\"\n },\n \"createdAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the event - occurred.\",\n \"format\": \"date-time\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n },\n \"isSuperStickerEvent\": {\n - \ \"type\": \"boolean\",\n \"description\": \"True if this - event is a Super Sticker event.\"\n }\n }\n },\n \"SuperStickerMetadata\": - {\n \"properties\": {\n \"altText\": {\n \"type\": \"string\",\n - \ \"description\": \"Internationalized alt text that describes the - sticker image and any animation associated with it.\"\n },\n \"stickerId\": - {\n \"description\": \"Unique identifier of the Super Sticker. This - is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\",\n \"type\": \"string\"\n },\n - \ \"altTextLanguage\": {\n \"description\": \"Specifies the - localization language in which the alt text is returned.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"SuperStickerMetadata\",\n - \ \"type\": \"object\"\n },\n \"Comment\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"default\": \"youtube#comment\",\n \"type\": \"string\",\n + kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n + \ \"default\": \"youtube#videoCategory\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the video category, including its title.\",\n + \ \"$ref\": \"VideoCategorySnippet\"\n }\n }\n },\n + \ \"PlaylistStatus\": {\n \"properties\": {\n \"privacyStatus\": + {\n \"description\": \"The playlist's privacy status.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"PlaylistStatus\"\n + \ },\n \"ChannelListResponse\": {\n \"properties\": {\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#channelListResponse\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#comment\\\".\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the comment.\",\n \"$ref\": \"CommentSnippet\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\"\n }\n - \ },\n \"id\": \"Comment\",\n \"description\": \"A *comment* - represents a single YouTube comment.\"\n },\n \"PageInfo\": {\n \"properties\": - {\n \"totalResults\": {\n \"description\": \"The total number - of results in the result set.\",\n \"format\": \"int32\",\n \"type\": - \"integer\"\n },\n \"resultsPerPage\": {\n \"description\": - \"The number of results included in the API response.\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n }\n },\n \"description\": - \"Paging details for lists of resources, including total number of items available - and number of resources returned in a single page.\",\n \"type\": \"object\",\n - \ \"id\": \"PageInfo\"\n },\n \"AbuseType\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"AbuseType\"\n },\n \"SubscriptionListResponse\": - {\n \"id\": \"SubscriptionListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": + the fixed string \\\"youtube#channelListResponse\\\".\",\n \"type\": \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"description\": \"A list of subscriptions that match the request - criteria.\"\n },\n \"kind\": {\n \"default\": \"youtube#subscriptionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n }\n },\n \"MembershipsLevelListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of pricing levels offered by a creator to the fans.\",\n \"items\": - {\n \"$ref\": \"MembershipsLevel\"\n }\n }\n },\n - \ \"id\": \"MembershipsLevelListResponse\"\n },\n \"VideoAbuseReport\": - {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReport\",\n \"properties\": - {\n \"secondaryReasonId\": {\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\",\n \"type\": \"string\"\n },\n \"comments\": - {\n \"type\": \"string\",\n \"description\": \"Additional - comments regarding the abuse report.\"\n },\n \"language\": - {\n \"type\": \"string\",\n \"description\": \"The language - that the content was viewed in.\"\n },\n \"reasonId\": {\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the video.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"CdnSettings\": {\n \"type\": \"object\",\n \"description\": - \"Brief description of the live stream cdn settings.\",\n \"id\": \"CdnSettings\",\n - \ \"properties\": {\n \"ingestionInfo\": {\n \"$ref\": - \"IngestionInfo\",\n \"description\": \"The ingestionInfo object - contains information that YouTube provides that you need to transmit your - RTMP or HTTP stream to YouTube.\"\n },\n \"frameRate\": {\n - \ \"type\": \"string\",\n \"description\": \"The frame rate - of the inbound video data.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ]\n },\n \"format\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The format of the video stream that you are sending - to Youtube. \",\n \"type\": \"string\"\n },\n \"ingestionType\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"rtmp\",\n \"dash\",\n \"webrtc\",\n \"hls\"\n - \ ],\n \"description\": \" The method or protocol used to - transmit the video stream.\",\n \"type\": \"string\"\n },\n - \ \"resolution\": {\n \"type\": \"string\",\n \"enum\": - [\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The resolution of the inbound video data.\"\n }\n }\n },\n - \ \"LiveChatBanSnippet\": {\n \"id\": \"LiveChatBanSnippet\",\n \"properties\": - {\n \"type\": {\n \"description\": \"The type of ban.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ]\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"liveChatId\": - {\n \"description\": \"The chat this ban is pertinent to.\",\n \"type\": - \"string\"\n },\n \"banDurationSeconds\": {\n \"format\": - \"uint64\",\n \"description\": \"The duration of a ban, only filled - if the ban has type TEMPORARY.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoCategoryListResponse\": - {\n \"type\": \"object\",\n \"id\": \"VideoCategoryListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoCategory\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"default\": \"youtube#videoCategoryListResponse\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n }\n - \ }\n },\n \"AbuseReport\": {\n \"id\": \"AbuseReport\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\"\n },\n \"relatedEntities\": - {\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n - \ \"type\": \"array\"\n },\n \"abuseTypes\": {\n \"items\": - {\n \"$ref\": \"AbuseType\"\n },\n \"type\": - \"array\"\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n - \ }\n }\n },\n \"I18nRegionListResponse\": {\n \"id\": - \"I18nRegionListResponse\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"I18nRegion\"\n },\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegionListResponse\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageDeletedDetails\",\n - \ \"type\": \"object\"\n },\n \"VideoContentDetails\": {\n \"description\": - \"Details about the content of a YouTube Video.\",\n \"type\": \"object\",\n - \ \"id\": \"VideoContentDetails\",\n \"properties\": {\n \"duration\": - {\n \"type\": \"string\",\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"hasCustomThumbnail\": {\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n },\n \"licensedContent\": {\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\",\n \"type\": \"boolean\"\n },\n \"definition\": - {\n \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"description\": \"The value of - definition indicates whether the video is available in high definition or - only in standard definition.\"\n },\n \"countryRestriction\": - {\n \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\",\n \"$ref\": - \"AccessPolicy\"\n },\n \"caption\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"true\",\n \"false\"\n - \ ],\n \"description\": \"The value of captions indicates - whether the video has captions or not.\"\n },\n \"projection\": - {\n \"type\": \"string\",\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ],\n \"description\": \"Specifies - the projection format of the video.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ]\n },\n \"dimension\": - {\n \"type\": \"string\",\n \"description\": \"The value - of dimension indicates whether the video is available in 3D or in 2D.\"\n - \ },\n \"regionRestriction\": {\n \"description\": \"The - regionRestriction object contains information about the countries where a - video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"contentRating\": - {\n \"$ref\": \"ContentRating\",\n \"description\": \"Specifies - the ratings that the video received under various rating schemes.\"\n }\n - \ }\n },\n \"CommentThreadReplies\": {\n \"description\": \"Comments - written in (direct or indirect) reply to the top level comment.\",\n \"id\": - \"CommentThreadReplies\",\n \"type\": \"object\",\n \"properties\": - {\n \"comments\": {\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"type\": \"array\",\n \"description\": - \"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.\"\n }\n }\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"properties\": {\n \"isChatOwner\": {\n \"description\": - \"Whether the author is the owner of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n },\n - \ \"isChatSponsor\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is a sponsor of the live chat.\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel ID.\"\n },\n \"isChatModerator\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is a moderator of the live chat.\"\n },\n \"isVerified\": - {\n \"description\": \"Whether the author's identity has been verified - by YouTube.\",\n \"type\": \"boolean\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageAuthorDetails\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": + \ \"items\": {\n \"$ref\": \"Channel\"\n }\n },\n + \ \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n }\n + \ },\n \"id\": \"ChannelListResponse\",\n \"type\": \"object\"\n + \ },\n \"SearchListResponse\": {\n \"properties\": {\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#searchListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#searchListResponse\\\".\"\n },\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"regionCode\": {\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"items\": {\n \"description\": \"Pagination + information for token pagination.\",\n \"items\": {\n \"$ref\": + \"SearchResult\"\n },\n \"type\": \"array\"\n }\n + \ },\n \"id\": \"SearchListResponse\",\n \"type\": \"object\"\n + \ },\n \"LanguageTag\": {\n \"id\": \"LanguageTag\",\n \"properties\": + {\n \"value\": {\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"PlaylistItemContentDetails\": {\n + \ \"id\": \"PlaylistItemContentDetails\",\n \"properties\": {\n \"videoPublishedAt\": + {\n \"format\": \"date-time\",\n \"description\": \"The + date and time that the video was published to YouTube.\",\n \"type\": + \"string\"\n },\n \"startAt\": {\n \"description\": + \"The time, measured in seconds from the start of the video, when the video + should start playing. (The playlist owner can specify the times when the video + should start and stop playing when the video is played in the context of the + playlist.) The default value is 0.\",\n \"type\": \"string\"\n },\n + \ \"videoId\": {\n \"description\": \"The ID that YouTube uses + to uniquely identify a video. To retrieve the video resource, set the id query + parameter to this value in your API request.\",\n \"type\": \"string\"\n + \ },\n \"note\": {\n \"type\": \"string\",\n \"description\": + \"A user-generated note for this item.\"\n },\n \"endAt\": {\n + \ \"description\": \"The time, measured in seconds from the start + of the video, when the video should stop playing. (The playlist owner can + specify the times when the video should start and stop playing when the video + is played in the context of the playlist.) By default, assume that the video.endTime + is the end of the video.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"I18nRegionSnippet\": {\n \"description\": + \"Basic details about an i18n region, such as region code and human-readable + name.\",\n \"type\": \"object\",\n \"id\": \"I18nRegionSnippet\",\n + \ \"properties\": {\n \"name\": {\n \"type\": \"string\",\n + \ \"description\": \"The human-readable name of the region.\"\n },\n + \ \"gl\": {\n \"description\": \"The region code as a 2-letter + ISO country code.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"PropertyValue\": {\n \"properties\": {\n \"property\": + {\n \"description\": \"A property.\",\n \"type\": \"string\"\n + \ },\n \"value\": {\n \"type\": \"string\",\n \"description\": + \"The property's value.\"\n }\n },\n \"description\": \"A + pair Property / Value.\",\n \"id\": \"PropertyValue\",\n \"type\": + \"object\"\n },\n \"ThirdPartyLinkSnippet\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"channelToStoreLink\": {\n \"description\": + \"Information specific to a link between a channel and a store on a merchandising + platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n },\n + \ \"type\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel with + a store on a merchandising platform in order to enable retail commerce capabilities + for that channel on YouTube.\"\n ],\n \"description\": \"Type + of the link named after the entities that are being linked.\",\n \"enum\": + [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"type\": \"string\"\n }\n },\n \"description\": + \"Basic information about a third party account link, including its type and + type-specific information.\",\n \"id\": \"ThirdPartyLinkSnippet\"\n },\n + \ \"LiveChatMemberMilestoneChatDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"properties\": + {\n \"memberMonth\": {\n \"format\": \"uint32\",\n \"description\": + \"The total amount of months (rounded up) the viewer has been a member that + granted them this Member Milestone Chat. This is the same number of months + as is being displayed to YouTube users.\",\n \"type\": \"integer\"\n + \ },\n \"userComment\": {\n \"description\": \"The comment + added by the member to this Member Milestone Chat. This field is empty for + messages without a comment from the member.\",\n \"type\": \"string\"\n + \ },\n \"memberLevelName\": {\n \"description\": \"The + name of the Level at which the viever is a member. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"ActivityContentDetailsUpload\": {\n \"description\": \"Information + about the uploaded video.\",\n \"properties\": {\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the uploaded video.\"\n }\n },\n + \ \"id\": \"ActivityContentDetailsUpload\",\n \"type\": \"object\"\n + \ },\n \"SearchResult\": {\n \"type\": \"object\",\n \"description\": + \"A search result contains information about a YouTube video, channel, or + playlist that matches the search parameters specified in an API request. While + a search result points to a uniquely identifiable resource, like a video, + it does not have its own persistent data.\",\n \"properties\": {\n \"id\": + {\n \"description\": \"The id object contains information that can + be used to uniquely identify the resource that matches the search request.\",\n + \ \"$ref\": \"ResourceId\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#searchResult\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"SearchResultSnippet\",\n \"description\": + \"The snippet object contains basic details about a search result, such as + its title or description. For example, if the search result is a video, then + the title will be the video's title and the description will be the video's + description.\"\n }\n },\n \"id\": \"SearchResult\"\n },\n + \ \"MembershipsLevelListResponse\": {\n \"type\": \"object\",\n \"id\": + \"MembershipsLevelListResponse\",\n \"properties\": {\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"description\": \"A + list of pricing levels offered by a creator to the fans.\",\n \"items\": + {\n \"$ref\": \"MembershipsLevel\"\n },\n \"type\": + \"array\"\n }\n }\n },\n \"LiveChatMessage\": {\n \"type\": + \"object\",\n \"description\": \"A *liveChatMessage* resource represents + a chat message in a YouTube Live Chat.\",\n \"properties\": {\n \"snippet\": + {\n \"$ref\": \"LiveChatMessageSnippet\",\n \"description\": + \"The snippet object contains basic details about the message.\"\n },\n \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"description\": \"A list of moderators that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"type\": \"array\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label for this abuse report secondary - reason.\"\n },\n \"id\": {\n \"description\": \"The + \"Etag of this resource.\"\n },\n \"authorDetails\": {\n \"$ref\": + \"LiveChatMessageAuthorDetails\",\n \"description\": \"The authorDetails + object contains basic details about the user that posted this message.\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + assigns to uniquely identify the message.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n + \ \"default\": \"youtube#liveChatMessage\"\n }\n },\n + \ \"id\": \"LiveChatMessage\"\n },\n \"VideoAbuseReportSecondaryReason\": + {\n \"properties\": {\n \"label\": {\n \"description\": + \"The localized label for this abuse report secondary reason.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"description\": \"The ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ActivityContentDetailsBulletin\": {\n \"description\": - \"Details about a channel bulletin post.\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with a - bulletin post. @mutable youtube.activities.insert\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsBulletin\"\n - \ },\n \"TokenPagination\": {\n \"description\": \"Stub token pagination - template to suppress results.\",\n \"properties\": {},\n \"id\": - \"TokenPagination\",\n \"type\": \"object\"\n },\n \"ActivityListResponse\": - {\n \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Activity\"\n }\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"VideoAbuseReportSecondaryReason\",\n + \ \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": {\n + \ \"id\": \"LiveChatMessageListResponse\",\n \"properties\": {\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n \ },\n \"pageInfo\": {\n \"description\": \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#activityListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityListResponse\"\n - \ },\n \"LiveBroadcastStatistics\": {\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"properties\": {\n \"concurrentViewers\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n },\n - \ \"totalChatCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Statistics about the live broadcast. These represent a snapshot of the values - at the time of the request. Statistics are only returned for live broadcasts.\",\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastSnippet\": {\n \"id\": - \"LiveBroadcastSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic broadcast information.\",\n \"properties\": {\n \"scheduledStartTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the broadcast is scheduled to start.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"scheduledEndTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to end.\",\n \"format\": \"date-time\"\n },\n \"actualStartTime\": - {\n \"description\": \"The date and time that the broadcast actually - started. This information is only available once the broadcast's state is - live.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"isDefaultBroadcast\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\"\n },\n \"actualEndTime\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - actually ended. This information is only available once the broadcast's state - is complete.\",\n \"format\": \"date-time\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the broadcast was added to YouTube's live broadcast schedule.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the broadcast. For each nested - object in this object, the key is the name of the thumbnail image, and the - value is an object that contains other information about the thumbnail.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\"\n - \ },\n \"title\": {\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that is publishing the broadcast.\"\n },\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for this broadcast.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ChannelContentOwnerDetails\": - {\n \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"properties\": - {\n \"contentOwner\": {\n \"description\": \"The ID of the - content owner linked to the channel.\",\n \"type\": \"string\"\n - \ },\n \"timeLinked\": {\n \"description\": \"The date - and time when the channel was linked to the content owner.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n }\n },\n \"id\": - \"ChannelContentOwnerDetails\",\n \"type\": \"object\"\n },\n \"SearchListResponse\": - {\n \"id\": \"SearchListResponse\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n \"default\": - \"youtube#searchListResponse\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"SearchResult\"\n - \ },\n \"type\": \"array\",\n \"description\": \"Pagination - information for token pagination.\"\n },\n \"pageInfo\": {\n - \ \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"type\": + \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n + \ \"offlineAt\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The date and time when the underlying + stream went offline.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n },\n + \ \"pollingIntervalMillis\": {\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"description\": \"The amount of time the client should + wait before polling again.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"PlaylistItemStatus\": - {\n \"id\": \"PlaylistItemStatus\",\n \"properties\": {\n \"privacyStatus\": - {\n \"description\": \"This resource's privacy status.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Information - about the playlist item's privacy status.\"\n },\n \"VideoProcessingDetails\": - {\n \"id\": \"VideoProcessingDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"processingStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\",\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ]\n },\n \"processingIssuesAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether the video processing engine has generated suggestions that - might improve YouTube's ability to process the the video, warnings that explain - video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\"\n },\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n },\n - \ \"fileDetailsAvailability\": {\n \"description\": \"This - value indicates whether file details are available for the uploaded video. - You can retrieve a video's file details by requesting the fileDetails part - in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether video editing suggestions, which might improve video - quality or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\",\n \"type\": \"string\"\n },\n \"processingFailureReason\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"type\": - \"string\"\n },\n \"processingProgress\": {\n \"$ref\": - \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n },\n \"tagSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether keyword (tag) suggestions are available for the video. Tags - can be added to a video's metadata to make it easier for other users to find - the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n }\n },\n \"description\": - \"Describes processing status and progress and availability of some other - Video resource parts.\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageRetractedDetails\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\",\n \"properties\": {\n \"secondaryReasons\": - {\n \"description\": \"The secondary reasons associated with this - reason, if any are available. (There might be 0 or more.)\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ }\n },\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label belonging to this abuse report - reason.\"\n }\n }\n },\n \"VideoFileDetails\": {\n \"description\": - \"Describes original video file properties, including technical details about - audio and video streams, but also metadata information like content length, - digitization time, or geotagging information.\",\n \"properties\": {\n - \ \"fileSize\": {\n \"format\": \"uint64\",\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\",\n \"type\": \"string\"\n - \ },\n \"fileName\": {\n \"description\": \"The uploaded - file's name. This field is present whether a video file or another type of - file was uploaded.\",\n \"type\": \"string\"\n },\n \"container\": - {\n \"description\": \"The uploaded video file's container format.\",\n - \ \"type\": \"string\"\n },\n \"bitrateBps\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\"\n },\n \"videoStreams\": {\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n },\n \"type\": - \"array\"\n },\n \"audioStreams\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"description\": \"A list of audio streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about an audio stream.\"\n },\n \"creationTime\": {\n \"description\": - \"The date and time when the uploaded video file was created. The value is - specified in ISO 8601 format. Currently, the following ISO 8601 formats are - supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time - with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n - \ },\n \"durationMs\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The length of - the uploaded video in milliseconds.\"\n },\n \"fileType\": {\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"enumDescriptions\": [\n \"Known - video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an - MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - file's type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\"\n }\n },\n \"id\": - \"VideoFileDetails\",\n \"type\": \"object\"\n },\n \"ChannelSectionTargeting\": - {\n \"description\": \"ChannelSection targeting setting.\",\n \"type\": - \"object\",\n \"properties\": {\n \"regions\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The region the channel section is targeting.\"\n - \ },\n \"languages\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"The language the channel section is targeting.\"\n },\n \"countries\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The country the - channel section is targeting.\"\n }\n },\n \"id\": \"ChannelSectionTargeting\"\n - \ },\n \"CommentSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"authorChannelId\": {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"textOriginal\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"authorProfileImageUrl\": {\n \"description\": - \"The URL for the avatar of the user who posted the comment.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"The ID of the video the comment refers to, - if any.\",\n \"type\": \"string\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"parentId\": {\n \"type\": - \"string\",\n \"description\": \"The unique id of the parent comment, - only set for replies.\"\n },\n \"likeCount\": {\n \"description\": - \"The total number of likes this comment has received.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"updatedAt\": - {\n \"description\": \"The date and time when the comment was last - updated.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"canRate\": {\n \"description\": \"Whether the - current viewer can rate this comment.\",\n \"type\": \"boolean\"\n - \ },\n \"textDisplay\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"viewerRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"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.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\"\n },\n - \ \"authorDisplayName\": {\n \"description\": \"The name of - the user who posted the comment.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the comment - was originally published.\"\n },\n \"moderationStatus\": {\n - \ \"description\": \"The comment's moderation status. Will not be - set if the comments were requested through the id filter.\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ]\n }\n - \ },\n \"id\": \"CommentSnippet\",\n \"description\": \"Basic - details about a comment, such as its author and text.\"\n },\n \"VideoListResponse\": - {\n \"id\": \"VideoListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"default\": \"youtube#videoListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Video\"\n },\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoProjectDetails\": {\n \"properties\": - {},\n \"id\": \"VideoProjectDetails\",\n \"type\": \"object\",\n - \ \"description\": \"DEPRECATED. b/157517979: This part was never populated - after it was added. However, it sees non-zero traffic because there is generated - client code in the wild that refers to it [1]. We keep this field and do NOT - remove it because otherwise V3 would return an error when this part gets requested - [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"ChannelProfileDetails\": {\n \"type\": \"object\",\n \"id\": - \"ChannelProfileDetails\",\n \"properties\": {\n \"displayName\": - {\n \"description\": \"The channel's display name.\",\n \"type\": - \"string\"\n },\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"channelUrl\": {\n \"description\": \"The channel's URL.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"RelatedEntity\": {\n \"properties\": {\n \"entity\": - {\n \"$ref\": \"Entity\"\n }\n },\n \"id\": \"RelatedEntity\",\n - \ \"type\": \"object\"\n },\n \"LiveStream\": {\n \"id\": \"LiveStream\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"contentDetails\": - {\n \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\",\n \"$ref\": - \"LiveStreamContentDetails\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStream\"\n - \ },\n \"snippet\": {\n \"$ref\": \"LiveStreamSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the stream, including its channel, title, and description.\"\n },\n - \ \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the stream.\"\n },\n \"cdn\": - {\n \"description\": \"The cdn object defines the live stream's content - delivery network (CDN) settings. These settings provide details about the - manner in which you stream your content to YouTube.\",\n \"$ref\": - \"CdnSettings\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about live stream's status.\",\n - \ \"$ref\": \"LiveStreamStatus\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"A live stream describes - a live ingestion point.\"\n },\n \"LiveChatTextMessageDetails\": {\n - \ \"properties\": {\n \"messageText\": {\n \"description\": - \"The user's message.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatTextMessageDetails\"\n - \ },\n \"MonitorStreamInfo\": {\n \"id\": \"MonitorStreamInfo\",\n - \ \"description\": \"Settings and Info of the monitor stream\",\n \"type\": - \"object\",\n \"properties\": {\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"HTML code that embeds a player that - plays the monitor stream.\"\n },\n \"enableMonitorStream\": - {\n \"description\": \"This value determines whether the monitor - stream is enabled for the broadcast. If the monitor stream is enabled, then - YouTube will broadcast the event content on a special stream intended only - for the broadcaster's consumption. The broadcaster can use the stream to review - the event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"type\": \"boolean\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"broadcastStreamDelayMs\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"If you have set - the enableMonitorStream property to true, then this property determines the - length of the live broadcast delay.\"\n }\n }\n },\n \"VideoFileDetailsAudioStream\": - {\n \"description\": \"Information about an audio stream.\",\n \"type\": - \"object\",\n \"properties\": {\n \"channelCount\": {\n \"type\": - \"integer\",\n \"description\": \"The number of audio channels that - the stream contains.\",\n \"format\": \"uint32\"\n },\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The audio - codec that the stream uses.\"\n },\n \"bitrateBps\": {\n \"description\": - \"The audio stream's bitrate, in bits per second.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n }\n },\n \"id\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"LiveChatMessageSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n + \ },\n \"type\": \"array\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveStreamConfigurationIssue\": + {\n \"id\": \"LiveStreamConfigurationIssue\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"type\": {\n \"description\": \"The + kind of error happening.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n + \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n + \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n + \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n + \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n + \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n + \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n + \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n + \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n + \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n + \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n + \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n + \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n + \ \"videoIngestionFasterThanRealtime\"\n ]\n },\n + \ \"description\": {\n \"description\": \"The long-form description + of the issue and how to resolve it.\",\n \"type\": \"string\"\n },\n + \ \"reason\": {\n \"description\": \"The short-form reason + for this issue.\",\n \"type\": \"string\"\n },\n \"severity\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"How severe this issue is to the stream.\",\n \"enum\": [\n \"info\",\n + \ \"warning\",\n \"error\"\n ]\n }\n + \ }\n },\n \"ActivityContentDetailsBulletin\": {\n \"type\": + \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + associated with a bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": + \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsBulletin\",\n + \ \"description\": \"Details about a channel bulletin post.\"\n },\n + \ \"Thumbnail\": {\n \"properties\": {\n \"width\": {\n \"description\": + \"(Optional) Width of the thumbnail image.\",\n \"type\": \"integer\",\n + \ \"format\": \"uint32\"\n },\n \"url\": {\n \"description\": + \"The thumbnail image's URL.\",\n \"type\": \"string\"\n },\n + \ \"height\": {\n \"format\": \"uint32\",\n \"description\": + \"(Optional) Height of the thumbnail image.\",\n \"type\": \"integer\"\n + \ }\n },\n \"description\": \"A thumbnail is an image representing + a YouTube resource.\",\n \"type\": \"object\",\n \"id\": \"Thumbnail\"\n + \ },\n \"VideoSnippet\": {\n \"description\": \"Basic details about + a video, including title, description, uploader, thumbnails and category.\",\n + \ \"type\": \"object\",\n \"id\": \"VideoSnippet\",\n \"properties\": + {\n \"publishedAt\": {\n \"description\": \"The date and time + when the video was uploaded.\",\n \"format\": \"date-time\",\n \"type\": + \"string\"\n },\n \"tags\": {\n \"type\": \"array\",\n + \ \"description\": \"A list of keyword tags associated with the video. + Tags may contain spaces.\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"channelTitle\": {\n \"description\": + \"Channel title for the channel that the video belongs to.\",\n \"type\": + \"string\"\n },\n \"defaultAudioLanguage\": {\n \"type\": + \"string\",\n \"description\": \"The default_audio_language property + specifies the language spoken in the video's default audio track.\"\n },\n + \ \"description\": {\n \"description\": \"The video's description. + @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel that the video was uploaded to.\"\n },\n \"thumbnails\": + {\n \"description\": \"A map of thumbnail images associated with + the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"localized\": + {\n \"$ref\": \"VideoLocalization\",\n \"description\": + \"Localized snippet selected with the hl parameter. If no such localization + exists, this field is populated with the default snippet. (Read-only)\"\n + \ },\n \"categoryId\": {\n \"type\": \"string\",\n \"description\": + \"The YouTube video category associated with the video.\"\n },\n \"defaultLanguage\": + {\n \"description\": \"The language of the videos's default snippet.\",\n + \ \"type\": \"string\"\n },\n \"liveBroadcastContent\": + {\n \"enumDescriptions\": [\n \"\",\n \"The + live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n + \ \"The live broadcast has been completed.\"\n ],\n \"type\": + \"string\",\n \"description\": \"Indicates if the video is an upcoming/active + live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active + live broadcast.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ]\n },\n + \ \"title\": {\n \"type\": \"string\",\n \"description\": + \"The video's title. @mutable youtube.videos.insert youtube.videos.update\"\n + \ }\n }\n },\n \"SubscriptionSubscriberSnippet\": {\n \"description\": + \"Basic details about a subscription's subscriber including title, description, + channel ID and thumbnails.\",\n \"properties\": {\n \"thumbnails\": + {\n \"description\": \"Thumbnails for this subscriber.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The description of the subscriber.\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The title of the subscriber.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The channel ID of the subscriber.\"\n + \ }\n },\n \"id\": \"SubscriptionSubscriberSnippet\",\n \"type\": + \"object\"\n },\n \"VideoFileDetails\": {\n \"id\": \"VideoFileDetails\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"videoStreams\": + {\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n + \ },\n \"description\": \"A list of video streams contained + in the uploaded video file. Each item in the list contains detailed metadata + about a video stream.\",\n \"type\": \"array\"\n },\n \"fileName\": + {\n \"description\": \"The uploaded file's name. This field is present + whether a video file or another type of file was uploaded.\",\n \"type\": + \"string\"\n },\n \"fileSize\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The uploaded + file's size in bytes. This field is present whether a video file or another + type of file was uploaded.\"\n },\n \"fileType\": {\n \"enum\": + [\n \"video\",\n \"audio\",\n \"image\",\n + \ \"archive\",\n \"document\",\n \"project\",\n + \ \"other\"\n ],\n \"enumDescriptions\": [\n \"Known + video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an + MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive + file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., + MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n + \ \"description\": \"The uploaded file's type as detected by YouTube's + video processing engine. Currently, YouTube only processes video files, but + this field is present whether a video file or another type of file was uploaded.\",\n + \ \"type\": \"string\"\n },\n \"container\": {\n \"type\": + \"string\",\n \"description\": \"The uploaded video file's container + format.\"\n },\n \"bitrateBps\": {\n \"description\": + \"The uploaded video file's combined (video and audio) bitrate in bits per + second.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n + \ },\n \"creationTime\": {\n \"description\": \"The + date and time when the uploaded video file was created. The value is specified + in ISO 8601 format. Currently, the following ISO 8601 formats are supported: + - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: + YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n },\n + \ \"audioStreams\": {\n \"items\": {\n \"$ref\": + \"VideoFileDetailsAudioStream\"\n },\n \"type\": \"array\",\n + \ \"description\": \"A list of audio streams contained in the uploaded + video file. Each item in the list contains detailed metadata about an audio + stream.\"\n },\n \"durationMs\": {\n \"type\": \"string\",\n + \ \"description\": \"The length of the uploaded video in milliseconds.\",\n + \ \"format\": \"uint64\"\n }\n },\n \"description\": + \"Describes original video file properties, including technical details about + audio and video streams, but also metadata information like content length, + digitization time, or geotagging information.\"\n },\n \"LiveChatModeratorListResponse\": + {\n \"properties\": {\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"nextPageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the next page + in the result set.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"description\": \"A list of moderators that match the + request criteria.\",\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n + \ }\n },\n \"kind\": {\n \"default\": \"youtube#liveChatModeratorListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorListResponse\"\n + \ },\n \"ActivitySnippet\": {\n \"description\": \"Basic details + about an activity, including title, description, thumbnails, activity type + and group. Next ID: 12\",\n \"type\": \"object\",\n \"id\": \"ActivitySnippet\",\n + \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel associated with the activity.\"\n },\n \"type\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\"\n ],\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\"\n },\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"authorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that authored this message, this field is not always filled. textMessageEvent - - the user that wrote the message fanFundingEvent - the user that funded the - broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n },\n \"textMessageDetails\": - {\n \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\",\n \"$ref\": \"LiveChatTextMessageDetails\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n - \ \"newSponsorDetails\": {\n \"description\": \"Details about - the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. - Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n - \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"superStickerDetails\": - {\n \"description\": \"Details about the Super Sticker event, this - is only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"membershipGiftingDetails\": {\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\",\n \"$ref\": \"LiveChatMembershipGiftingDetails\"\n - \ },\n \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n - \ \"description\": \"Details about the Super Chat event, this is only - set if the type is 'superChatEvent'.\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"hasDisplayContent\": - {\n \"description\": \"Whether the message has display content that - should be displayed to users.\",\n \"type\": \"boolean\"\n },\n - \ \"displayMessage\": {\n \"type\": \"string\",\n \"description\": - \"Contains a string that can be displayed to the user. If this field is not - present the message is silent, at the moment only messages of type TOMBSTONE - and CHAT_ENDED_EVENT are silent.\"\n },\n \"publishedAt\": {\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the message was orignally published.\",\n \"format\": \"date-time\"\n - \ },\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"fanFundingEventDetails\": {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n - \ \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\"\n }\n },\n \"id\": - \"LiveChatMessageSnippet\",\n \"description\": \"Next ID: 33\"\n },\n - \ \"ThumbnailDetails\": {\n \"properties\": {\n \"medium\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The medium - quality image for this resource.\"\n },\n \"maxres\": {\n \"description\": - \"The maximum resolution quality image for this resource.\",\n \"$ref\": - \"Thumbnail\"\n },\n \"default\": {\n \"description\": - \"The default image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"standard\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The standard quality image for this resource.\"\n - \ },\n \"high\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The high quality image for this resource.\"\n }\n },\n \"description\": - \"Internal representation of thumbnails for a YouTube resource.\",\n \"id\": - \"ThumbnailDetails\",\n \"type\": \"object\"\n },\n \"ThirdPartyLinkStatus\": - {\n \"id\": \"ThirdPartyLinkStatus\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"linkStatus\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"description\": \"The third-party - link status object contains information about the status of the link.\"\n - \ },\n \"PlaylistContentDetails\": {\n \"properties\": {\n \"itemCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"PlaylistContentDetails\"\n },\n \"PlaylistSnippet\": - {\n \"properties\": {\n \"tags\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"Keyword tags associated with the playlist.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the playlist.\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the playlist's default title and description.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The playlist's description.\",\n \"type\": \"string\"\n },\n - \ \"channelTitle\": {\n \"description\": \"The channel title - of the channel that the video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"localized\": {\n \"description\": \"Localized - title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"thumbnailVideoId\": {\n \"description\": \"Note: - if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the playlist was created.\"\n },\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"description\": \"The playlist's title.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist. For each object + \"The type of activity that the resource describes.\",\n \"enum\": + [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n + \ \"favorite\",\n \"comment\",\n \"subscription\",\n + \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n + \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n + \ ],\n \"type\": \"string\"\n },\n \"thumbnails\": + {\n \"description\": \"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.\",\n \"$ref\": - \"ThumbnailDetails\"\n }\n },\n \"description\": \"Basic - details about a playlist, including title, description and thumbnails.\",\n - \ \"type\": \"object\",\n \"id\": \"PlaylistSnippet\"\n },\n \"ThirdPartyLink\": - {\n \"id\": \"ThirdPartyLink\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n },\n \"kind\": - {\n \"default\": \"youtube#thirdPartyLink\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"type\": \"string\"\n },\n \"linkingToken\": {\n - \ \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\",\n \"type\": - \"string\"\n },\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n - \ \"description\": \"The status object contains information about - the status of the link.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\"\n },\n \"VideoLocalization\": {\n \"id\": \"VideoLocalization\",\n - \ \"type\": \"object\",\n \"description\": \"Localized versions of - certain video properties (e.g. title).\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's title.\"\n },\n \"description\": {\n - \ \"description\": \"Localized version of the video's description.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ThirdPartyLinkSnippet\": - {\n \"id\": \"ThirdPartyLinkSnippet\",\n \"properties\": {\n \"channelToStoreLink\": - {\n \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel with - a store on a merchandising platform in order to enable retail commerce capabilities - for that channel on YouTube.\"\n ],\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Type of the link named after the entities that - are being linked.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic information about a third party account link, including its type and - type-specific information.\"\n },\n \"ActivityContentDetailsLike\": - {\n \"description\": \"Information about a resource that received a positive - (like) rating.\",\n \"id\": \"ActivityContentDetailsLike\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the rated resource.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"VideoStatistics\": {\n \"description\": \"Statistics about the - video, such as the number of times the video was viewed or liked.\",\n \"type\": - \"object\",\n \"id\": \"VideoStatistics\",\n \"properties\": {\n - \ \"favoriteCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of users who currently - have the video marked as a favorite video.\"\n },\n \"dislikeCount\": - {\n \"description\": \"The number of users who have indicated that - they disliked the video by giving it a negative rating.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"viewCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of times the video has been viewed.\"\n },\n \"likeCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of users who have indicated that they liked the video by giving it a positive - rating.\",\n \"format\": \"uint64\"\n },\n \"commentCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of comments for the video.\"\n }\n }\n },\n \"VideoSuggestions\": - {\n \"type\": \"object\",\n \"properties\": {\n \"processingWarnings\": - {\n \"items\": {\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ]\n },\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"type\": \"array\"\n },\n \"processingErrors\": - {\n \"description\": \"A list of errors that will prevent YouTube - from successfully processing the uploaded video video. These errors indicate - that, regardless of the video's current processing status, eventually, that - status will almost certainly be failed.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n }\n },\n \"tagSuggestions\": {\n \"items\": - {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of keyword - tags that could be added to the video's metadata to increase the likelihood - that users will locate your video when searching or browsing on YouTube.\"\n - \ },\n \"processingHints\": {\n \"description\": \"A - list of suggestions that may improve YouTube's ability to process the video.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ]\n }\n },\n \"editorSuggestions\": {\n - \ \"description\": \"A list of video editing operations that might - improve the video quality or playback experience of the uploaded video.\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ]\n },\n \"type\": \"array\"\n }\n },\n - \ \"description\": \"Specifies suggestions on how to improve video content, - including encoding hints, tag suggestions, and editor suggestions.\",\n \"id\": - \"VideoSuggestions\"\n },\n \"LocalizedProperty\": {\n \"properties\": - {\n \"localized\": {\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n },\n \"type\": \"array\"\n },\n - \ \"default\": {\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the default property.\",\n - \ \"$ref\": \"LanguageTag\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LocalizedProperty\"\n },\n \"VideoAgeGating\": - {\n \"id\": \"VideoAgeGating\",\n \"type\": \"object\",\n \"properties\": - {\n \"alcoholContent\": {\n \"description\": \"Indicates whether - or not the video has alcoholic beverage content. Only users of legal purchasing - age in a particular country, as identified by ICAP, can view the content.\",\n - \ \"type\": \"boolean\"\n },\n \"videoGameRating\": - {\n \"type\": \"string\",\n \"description\": \"Video game - rating, if any.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ]\n },\n \"restricted\": - {\n \"description\": \"Age-restricted trailers. For redband trailers - and adult-rated video-games. Only users aged 18+ can view the content. The - the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\",\n \"type\": \"boolean\"\n }\n - \ }\n },\n \"I18nLanguageSnippet\": {\n \"properties\": {\n - \ \"name\": {\n \"description\": \"The human-readable name - of the language in the language itself.\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\"\n }\n - \ },\n \"id\": \"I18nLanguageSnippet\",\n \"description\": \"Basic - details about an i18n language, such as language code and human-readable name.\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"Information about a new playlist item.\",\n \"properties\": {\n \"playlistItemId\": - {\n \"type\": \"string\",\n \"description\": \"ID of the - item within the playlist.\"\n },\n \"playlistId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\",\n \"$ref\": \"ResourceId\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"Activity\": {\n \"id\": \"Activity\",\n - \ \"description\": \"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.\",\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#activity\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the activity, including - the activity's type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n - \ },\n \"contentDetails\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetails\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the activity.\"\n }\n }\n },\n \"LiveChatMessage\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveChatMessage\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"authorDetails\": {\n \"description\": \"The - authorDetails object contains basic details about the user that posted this - message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessage\",\n - \ \"description\": \"A *liveChatMessage* resource represents a chat message - in a YouTube Live Chat.\"\n },\n \"MembershipsDurationAtLevel\": {\n - \ \"id\": \"MembershipsDurationAtLevel\",\n \"properties\": {\n \"level\": - {\n \"type\": \"string\",\n \"description\": \"Pricing level - ID.\"\n },\n \"memberSince\": {\n \"description\": - \"The date and time when the user became a continuous member for the given - level.\",\n \"type\": \"string\"\n },\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - for the given level in complete months (the time is rounded down to the nearest - integer).\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": - {\n \"id\": \"LiveBroadcastListResponse\",\n \"properties\": {\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"default\": \"youtube#liveBroadcastListResponse\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"description\": \"A list of broadcasts - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelAuditDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"The auditDetails object encapsulates channel data - that is relevant for YouTube Partners during the audit process.\",\n \"id\": - \"ChannelAuditDetails\",\n \"properties\": {\n \"communityGuidelinesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel respects the community guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n }\n }\n },\n - \ \"SuperChatEvent\": {\n \"id\": \"SuperChatEvent\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#superChatEvent\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the Super Chat event.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\",\n - \ \"$ref\": \"SuperChatEventSnippet\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A `__superChatEvent__` resource represents - a Super Chat purchase on a YouTube channel.\"\n },\n \"LocalizedString\": - {\n \"type\": \"object\",\n \"id\": \"LocalizedString\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n },\n \"language\": - {\n \"type\": \"string\"\n }\n }\n },\n \"LanguageTag\": - {\n \"id\": \"LanguageTag\",\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoLiveStreamingDetails\": {\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"properties\": {\n \"activeLiveChatId\": {\n \"description\": - \"The ID of the currently active live chat attached to this video. This field - is filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\",\n \"type\": \"string\"\n },\n \"actualStartTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\"\n },\n - \ \"concurrentViewers\": {\n \"format\": \"uint64\",\n \"description\": + \"ThumbnailDetails\"\n },\n \"groupId\": {\n \"type\": + \"string\",\n \"description\": \"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.\"\n },\n \"description\": + {\n \"description\": \"The description of the resource primarily + associated with the activity. @mutable youtube.activities.insert\",\n \"type\": + \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel title for the channel responsible for + this activity\"\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The title of the resource primarily associated + with the activity.\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time that the video was uploaded.\",\n \"type\": \"string\",\n + \ \"format\": \"date-time\"\n }\n }\n },\n \"Caption\": + {\n \"properties\": {\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the caption track.\",\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n + \ ]\n }\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n + \ \"default\": \"youtube#caption\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"CaptionSnippet\",\n \"description\": \"The + snippet object contains basic details about the caption.\"\n }\n },\n + \ \"type\": \"object\",\n \"description\": \"A *caption* resource + represents a YouTube caption track. A caption track is associated with exactly + one YouTube video.\",\n \"id\": \"Caption\"\n },\n \"VideoLiveStreamingDetails\": + {\n \"id\": \"VideoLiveStreamingDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"concurrentViewers\": {\n \"description\": \"The number of viewers currently watching the broadcast. The property and its value will be present if the broadcast has current viewers and the broadcast owner has not hidden the viewcount for the video. Note that YouTube stops tracking the number of concurrent viewers for a broadcast when the broadcast ends. So, this property would not identify the number of viewers watching an archived video of a live broadcast that already ended.\",\n \"type\": - \"string\"\n },\n \"scheduledStartTime\": {\n \"type\": + \"string\",\n \"format\": \"uint64\"\n },\n \"scheduledEndTime\": + {\n \"format\": \"date-time\",\n \"description\": \"The + time that the broadcast is scheduled to end. If the value is empty or the + property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n + \ \"type\": \"string\"\n },\n \"actualEndTime\": {\n + \ \"description\": \"The time that the broadcast actually ended. This + value will not be available until the broadcast is over.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"activeLiveChatId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the currently active live chat attached to this video. This field is filled + only if the video is a currently live broadcast that has live chat. Once the + broadcast transitions to complete this field will be removed and the live + chat closed down. For persistent broadcasts that live chat id will no longer + be tied to this video but rather to the new video being displayed at the persistent + page.\"\n },\n \"scheduledStartTime\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The time that the broadcast is scheduled to begin.\"\n },\n \"actualEndTime\": - {\n \"description\": \"The time that the broadcast actually ended. - This value will not be available until the broadcast is over.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"scheduledEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast is scheduled to end. - If the value is empty or the property is not present, then the broadcast is - scheduled to contiue indefinitely.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Details about the live streaming metadata.\"\n - \ },\n \"PlaylistItemSnippet\": {\n \"id\": \"PlaylistItemSnippet\",\n - \ \"properties\": {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist item. 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.\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the playlist item belongs to.\"\n },\n \"videoOwnerChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel id - for the channel this video belongs to.\"\n },\n \"videoOwnerChannelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel this video belongs to.\"\n },\n \"playlistId\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify thGe playlist that the playlist item is - in.\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The id object contains information that can be - used to uniquely identify the resource that is included in the playlist as - the playlist item.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The item's description.\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the item was added to the playlist.\",\n \"format\": - \"date-time\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The item's title.\"\n },\n \"position\": - {\n \"description\": \"The order in which the item appears in the - playlist. The value uses a zero-based index, so the first item has a position - of 0, the second item has a position of 1, and so forth.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the user that added the item to the playlist.\"\n - \ }\n },\n \"description\": \"Basic details about a playlist, - including title, description and thumbnails. Basic details of a YouTube Playlist - item provided by the author. Next ID: 15\",\n \"type\": \"object\"\n - \ },\n \"InvideoBranding\": {\n \"description\": \"LINT.IfChange - Describes an invideo branding.\",\n \"id\": \"InvideoBranding\",\n \"properties\": - {\n \"imageUrl\": {\n \"description\": \"The url of the uploaded - image. Only used in apiary to api communication.\",\n \"type\": \"string\"\n - \ },\n \"targetChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel to which this branding links. If - not present it defaults to the current channel.\"\n },\n \"imageBytes\": - {\n \"type\": \"string\",\n \"description\": \"The bytes - the uploaded image. Only used in api to youtube communication.\",\n \"format\": - \"byte\"\n },\n \"position\": {\n \"description\": - \"The spatial position within the video where the branding watermark will - be displayed.\",\n \"$ref\": \"InvideoPosition\"\n },\n \"timing\": - {\n \"description\": \"The temporal position within the video where - watermark will be displayed.\",\n \"$ref\": \"InvideoTiming\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveStreamSnippet\": {\n - \ \"id\": \"LiveStreamSnippet\",\n \"properties\": {\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the stream was created.\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that is transmitting the - stream.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The stream's - description. The value cannot be longer than 10000 characters.\"\n },\n - \ \"isDefaultStream\": {\n \"type\": \"boolean\"\n },\n - \ \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The stream's title. The value must be between 1 and 128 characters long.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"properties\": {\n \"items\": {\n \"items\": {\n - \ \"$ref\": \"VideoAbuseReportReason\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of valid abuse reasons that - are used with `video.ReportAbuse`.\"\n },\n \"eventId\": {\n - \ \"type\": \"string\",\n \"description\": \"Serialized EventId - of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The `visitorId` - identifies the visitor.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"VideoAbuseReportReasonListResponse\",\n \"type\": \"object\"\n - \ },\n \"I18nLanguage\": {\n \"description\": \"An *i18nLanguage* - resource identifies a UI language currently supported by YouTube.\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nLanguage\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n language.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n - \ }\n },\n \"id\": \"I18nLanguage\",\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsComment\": {\n \"type\": \"object\",\n - \ \"description\": \"Information about a resource that received a comment.\",\n - \ \"id\": \"ActivityContentDetailsComment\",\n \"properties\": {\n - \ \"resourceId\": {\n \"description\": \"The resourceId object - contains information that identifies the resource associated with the comment.\",\n - \ \"$ref\": \"ResourceId\"\n }\n }\n },\n \"ChannelSectionContentDetails\": - {\n \"description\": \"Details about a channelsection, including playlists - and channels.\",\n \"id\": \"ChannelSectionContentDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"playlists\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The playlist ids for type single_playlist and - multiple_playlists. For singlePlaylist, only one playlistId is allowed.\"\n - \ },\n \"channels\": {\n \"description\": \"The channel - ids for type multiple_channels.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n }\n },\n - \ \"CaptionListResponse\": {\n \"id\": \"CaptionListResponse\",\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Caption\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of captions that match the request criteria.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\"\n }\n }\n - \ },\n \"ChannelTopicDetails\": {\n \"properties\": {\n \"topicCategories\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Wikipedia URLs that describe the channel's - content.\",\n \"type\": \"array\"\n },\n \"topicIds\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Freebase - topic IDs associated with the channel. You can retrieve information about - each topic using the Freebase Topic API.\"\n }\n },\n \"description\": - \"Freebase topic information related to the channel.\",\n \"id\": \"ChannelTopicDetails\",\n - \ \"type\": \"object\"\n },\n \"MemberListResponse\": {\n \"type\": - \"object\",\n \"id\": \"MemberListResponse\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#memberListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Member\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of members that match the request criteria.\"\n }\n }\n - \ },\n \"ActivitySnippet\": {\n \"properties\": {\n \"title\": - {\n \"description\": \"The title of the resource primarily associated - with the activity.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The description of the resource primarily - associated with the activity. @mutable youtube.activities.insert\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the video was uploaded.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel responsible for this activity\"\n },\n \"groupId\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"description\": \"The type of - activity that the resource describes.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"typeUnspecified\",\n - \ \"upload\",\n \"like\",\n \"favorite\",\n - \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n - \ \"recommendation\",\n \"bulletin\",\n \"social\",\n - \ \"channelItem\",\n \"promotedItem\"\n ]\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"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.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel associated with the activity.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivitySnippet\",\n - \ \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\"\n },\n - \ \"VideoCategory\": {\n \"description\": \"A *videoCategory* resource - identifies a category that has been or could be associated with uploaded videos.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the video category.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#videoCategory\\\".\",\n \"default\": - \"youtube#videoCategory\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"VideoCategory\"\n },\n \"PlaylistItemListResponse\": - {\n \"id\": \"PlaylistItemListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of playlist items that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n - \ }\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#playlistItemListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n }\n },\n \"TestItemTestItemSnippet\": {\n \"type\": - \"object\",\n \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\"\n - \ },\n \"VideoStatus\": {\n \"properties\": {\n \"license\": - {\n \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"failureReason\": {\n \"type\": \"string\",\n - \ \"description\": \"This value explains why a video failed to upload. - This property is only present if the uploadStatus property indicates that - the upload failed.\",\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ],\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ]\n },\n \"madeForKids\": {\n \"type\": + \"The time that the broadcast is scheduled to begin.\"\n },\n \"actualStartTime\": + {\n \"type\": \"string\",\n \"description\": \"The time + that the broadcast actually started. This value will not be available until + the broadcast begins.\",\n \"format\": \"date-time\"\n }\n + \ },\n \"description\": \"Details about the live streaming metadata.\"\n + \ },\n \"VideoAgeGating\": {\n \"properties\": {\n \"videoGameRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"Video game rating, if any.\",\n \"enum\": [\n \"anyone\",\n + \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n + \ ],\n \"type\": \"string\"\n },\n \"restricted\": + {\n \"description\": \"Age-restricted trailers. For redband trailers + and adult-rated video-games. Only users aged 18+ can view the content. The + the field is true the content is restricted to viewers aged 18+. Otherwise + The field won't be present.\",\n \"type\": \"boolean\"\n },\n + \ \"alcoholContent\": {\n \"description\": \"Indicates whether + or not the video has alcoholic beverage content. Only users of legal purchasing + age in a particular country, as identified by ICAP, can view the content.\",\n + \ \"type\": \"boolean\"\n }\n },\n \"id\": \"VideoAgeGating\",\n + \ \"type\": \"object\"\n },\n \"RelatedEntity\": {\n \"type\": + \"object\",\n \"id\": \"RelatedEntity\",\n \"properties\": {\n \"entity\": + {\n \"$ref\": \"Entity\"\n }\n }\n },\n \"MembershipsDuration\": + {\n \"id\": \"MembershipsDuration\",\n \"type\": \"object\",\n \"properties\": + {\n \"memberSince\": {\n \"description\": \"The date and time + when the user became a continuous member across all levels.\",\n \"type\": + \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"description\": + \"The cumulative time the user has been a member across all levels in complete + months (the time is rounded down to the nearest integer).\",\n \"type\": + \"integer\",\n \"format\": \"int32\"\n }\n }\n },\n + \ \"LocalizedProperty\": {\n \"properties\": {\n \"defaultLanguage\": + {\n \"description\": \"The language of the default property.\",\n + \ \"$ref\": \"LanguageTag\"\n },\n \"localized\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"LocalizedString\"\n }\n },\n \"default\": {\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LocalizedProperty\"\n },\n \"I18nRegionListResponse\": {\n \"type\": + \"object\",\n \"properties\": {\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"I18nRegion\"\n },\n \"description\": \"A list of regions + where YouTube is available. In this map, the i18n region ID is the map key, + and its value is the corresponding i18nRegion resource.\",\n \"type\": + \"array\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#i18nRegionListResponse\"\n }\n + \ },\n \"id\": \"I18nRegionListResponse\"\n },\n \"Playlist\": + {\n \"properties\": {\n \"contentDetails\": {\n \"$ref\": + \"PlaylistContentDetails\",\n \"description\": \"The contentDetails + object contains information like video count.\"\n },\n \"kind\": + {\n \"default\": \"youtube#playlist\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n + \ \"type\": \"string\"\n },\n \"localizations\": {\n + \ \"description\": \"Localizations for different languages\",\n \"additionalProperties\": + {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"type\": + \"object\"\n },\n \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n + \ \"description\": \"The player object contains information that you + would use to play the playlist in an embedded player.\"\n },\n \"status\": + {\n \"description\": \"The status object contains status information + for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube uses to + uniquely identify the playlist.\",\n \"type\": \"string\"\n },\n + \ \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": + \"The snippet object contains basic details about the playlist, such as its + title and description.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"A *playlist* resource represents a YouTube playlist. + A playlist is a collection of videos that can be viewed sequentially and shared + with other users. A playlist can contain up to 200 videos, and YouTube does + not limit the number of playlists that each user creates. By default, playlists + are publicly visible to other users, but playlists can be public or private. + YouTube also uses playlists to identify special collections of videos for + a channel, such as: - uploaded videos - favorite videos - positively rated + (liked) videos - watch history - watch later To be more specific, these lists + are associated with a channel, which is a collection of a person, group, or + company's videos, playlists, and other YouTube information. You can retrieve + the playlist IDs for each of these lists from the channel resource for a given + channel. You can then use the playlistItems.list method to retrieve any of + those lists. You can also add or remove items from those lists by calling + the playlistItems.insert and playlistItems.delete methods.\",\n \"type\": + \"object\",\n \"id\": \"Playlist\"\n },\n \"ThumbnailDetails\": + {\n \"type\": \"object\",\n \"description\": \"Internal representation + of thumbnails for a YouTube resource.\",\n \"id\": \"ThumbnailDetails\",\n + \ \"properties\": {\n \"default\": {\n \"$ref\": \"Thumbnail\",\n + \ \"description\": \"The default image for this resource.\"\n },\n + \ \"standard\": {\n \"description\": \"The standard quality + image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n + \ \"medium\": {\n \"$ref\": \"Thumbnail\",\n \"description\": + \"The medium quality image for this resource.\"\n },\n \"maxres\": + {\n \"description\": \"The maximum resolution quality image for this + resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"high\": + {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The high + quality image for this resource.\"\n }\n }\n },\n \"I18nLanguageSnippet\": + {\n \"description\": \"Basic details about an i18n language, such as + language code and human-readable name.\",\n \"id\": \"I18nLanguageSnippet\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"name\": {\n + \ \"description\": \"The human-readable name of the language in the + language itself.\",\n \"type\": \"string\"\n },\n \"hl\": + {\n \"description\": \"A short BCP-47 code that uniquely identifies + a language.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"VideoStatus\": {\n \"type\": \"object\",\n \"id\": \"VideoStatus\",\n + \ \"properties\": {\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n },\n \"rejectionReason\": {\n \"description\": \"This value explains why YouTube rejected an uploaded video. This property is only present if the uploadStatus property indicates that the upload was - rejected.\",\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An + rejected.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"Copyright infringement.\",\n \"Inappropriate video + content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms + of use violation.\",\n \"Uploader account was suspended.\",\n \"Video + duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader + closed his/her account.\",\n \"Trademark infringement.\",\n \"An unspecified legal reason.\"\n ],\n \"enum\": [\n \"copyright\",\n \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"type\": \"string\"\n },\n \"publishAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the video is scheduled - to publish. It can be set only if the privacy status of the video is private..\"\n - \ },\n \"uploadStatus\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ],\n \"enumDescriptions\": [\n \"Video has been - uploaded but not processed yet.\",\n \"Video has been successfully - processed.\",\n \"Processing has failed. See FailureReason.\",\n - \ \"Video has been rejected. See RejectionReason.\",\n \"Video - has been deleted.\"\n ],\n \"description\": \"The status - of the uploaded video.\"\n },\n \"publicStatsViewable\": {\n - \ \"description\": \"This value indicates if the extended video statistics - on the watch page can be viewed by everyone. Note that the view count, likes, - etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"embeddable\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This value - indicates if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The video's privacy status.\"\n }\n },\n \"id\": \"VideoStatus\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a video category, such as its localized title. Next Id: 18\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"The id of the author's YouTube - channel, if any.\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n \"type\": - \"object\"\n },\n \"MemberSnippet\": {\n \"id\": \"MemberSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"membershipsDetails\": - {\n \"description\": \"Details about the user's membership.\",\n - \ \"$ref\": \"MembershipsDetails\"\n },\n \"memberDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the member.\"\n },\n \"creatorChannelId\": {\n - \ \"description\": \"The id of the channel that's offering memberships.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"CommentThreadListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ ]\n },\n \"publicStatsViewable\": {\n \"description\": + \"This value indicates if the extended video statistics on the watch page + can be viewed by everyone. Note that the view count, likes, etc will still + be visible if this is disabled. @mutable youtube.videos.insert youtube.videos.update\",\n + \ \"type\": \"boolean\"\n },\n \"failureReason\": {\n + \ \"type\": \"string\",\n \"description\": \"This value explains + why a video failed to upload. This property is only present if the uploadStatus + property indicates that the upload failed.\",\n \"enumDescriptions\": + [\n \"Unable to convert video content.\",\n \"Invalid + file format.\",\n \"Empty file.\",\n \"File was too + small.\",\n \"Unsupported codec.\",\n \"Upload wasn't + finished.\"\n ],\n \"enum\": [\n \"conversion\",\n + \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n + \ \"codec\",\n \"uploadAborted\"\n ]\n },\n + \ \"embeddable\": {\n \"description\": \"This value indicates + if the video can be embedded on another website. @mutable youtube.videos.insert + youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"license\": + {\n \"description\": \"The video's license. @mutable youtube.videos.insert + youtube.videos.update\",\n \"type\": \"string\",\n \"enum\": + [\n \"youtube\",\n \"creativeCommon\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n + \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"uploadStatus\": {\n \"description\": \"The + status of the uploaded video.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"Video has been uploaded but not processed yet.\",\n \"Video + has been successfully processed.\",\n \"Processing has failed. + See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n + \ \"Video has been deleted.\"\n ],\n \"enum\": + [\n \"uploaded\",\n \"processed\",\n \"failed\",\n + \ \"rejected\",\n \"deleted\"\n ]\n },\n + \ \"privacyStatus\": {\n \"description\": \"The video's privacy + status.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ]\n },\n \"publishAt\": {\n + \ \"format\": \"date-time\",\n \"description\": \"The date + and time when the video is scheduled to publish. It can be set only if the + privacy status of the video is private..\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Basic details about a video + category, such as its localized title. Next Id: 18\"\n },\n \"MemberSnippet\": + {\n \"type\": \"object\",\n \"id\": \"MemberSnippet\",\n \"properties\": + {\n \"membershipsDetails\": {\n \"$ref\": \"MembershipsDetails\",\n + \ \"description\": \"Details about the user's membership.\"\n },\n + \ \"memberDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n + \ \"description\": \"Details about the member.\"\n },\n \"creatorChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The id of + the channel that's offering memberships.\"\n }\n }\n },\n \"I18nLanguage\": + {\n \"id\": \"I18nLanguage\",\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n \"default\": + \"youtube#i18nLanguage\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"I18nLanguageSnippet\",\n \"description\": + \"The snippet object contains basic details about the i18n language, such + as language code and human-readable name.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the i18n language.\"\n }\n },\n \"description\": \"An *i18nLanguage* + resource identifies a UI language currently supported by YouTube.\",\n \"type\": + \"object\"\n },\n \"PlaylistItemSnippet\": {\n \"description\": + \"Basic details about a playlist, including title, description and thumbnails. + Basic details of a YouTube Playlist item provided by the author. Next ID: + 15\",\n \"type\": \"object\",\n \"id\": \"PlaylistItemSnippet\",\n + \ \"properties\": {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + playlist item. 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.\"\n },\n \"videoOwnerChannelTitle\": {\n \"type\": + \"string\",\n \"description\": \"Channel title for the channel this + video belongs to.\"\n },\n \"channelTitle\": {\n \"description\": + \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time that the item was added to the playlist.\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the user that added the item + to the playlist.\"\n },\n \"videoOwnerChannelId\": {\n \"description\": + \"Channel id for the channel this video belongs to.\",\n \"type\": + \"string\"\n },\n \"playlistId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + thGe playlist that the playlist item is in.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.playlistItems.insert\",\n + \ \"youtube.playlistItems.update\"\n ]\n }\n + \ },\n \"position\": {\n \"description\": \"The order + in which the item appears in the playlist. The value uses a zero-based index, + so the first item has a position of 0, the second item has a position of 1, + and so forth.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n + \ },\n \"resourceId\": {\n \"description\": \"The id + object contains information that can be used to uniquely identify the resource + that is included in the playlist as the playlist item.\",\n \"$ref\": + \"ResourceId\",\n \"annotations\": {\n \"required\": [\n + \ \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n + \ ]\n }\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The item's description.\"\n },\n + \ \"title\": {\n \"type\": \"string\",\n \"description\": + \"The item's title.\"\n }\n }\n },\n \"PlaylistPlayer\": + {\n \"id\": \"PlaylistPlayer\",\n \"properties\": {\n \"embedHtml\": + {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e + tag that embeds a player that will play the playlist.\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"ChannelConversionPings\": {\n \"id\": + \"ChannelConversionPings\",\n \"properties\": {\n \"pings\": {\n + \ \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n + \ },\n \"type\": \"array\",\n \"description\": \"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.\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"The conversionPings object encapsulates information about conversion pings + that need to be respected by the channel.\"\n },\n \"ChannelSectionTargeting\": + {\n \"id\": \"ChannelSectionTargeting\",\n \"properties\": {\n \"regions\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"The region the channel section is targeting.\",\n + \ \"type\": \"array\"\n },\n \"countries\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"The country the channel section is targeting.\"\n + \ },\n \"languages\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"The language the channel + section is targeting.\",\n \"type\": \"array\"\n }\n },\n + \ \"description\": \"ChannelSection targeting setting.\",\n \"type\": + \"object\"\n },\n \"LiveChatFanFundingEventDetails\": {\n \"properties\": + {\n \"userComment\": {\n \"description\": \"The comment added + by the user to this fan funding event.\",\n \"type\": \"string\"\n + \ },\n \"amountDisplayString\": {\n \"description\": + \"A rendered string that displays the fund amount and currency to the user.\",\n + \ \"type\": \"string\"\n },\n \"currency\": {\n \"type\": + \"string\",\n \"description\": \"The currency in which the fund was + made.\"\n },\n \"amountMicros\": {\n \"description\": + \"The amount of the fund.\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveChatFanFundingEventDetails\"\n },\n \"SubscriptionListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n + \ \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Subscription\"\n + \ },\n \"description\": \"A list of subscriptions that match + the request criteria.\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": + \"string\"\n },\n \"prevPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#commentThreadListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of comment - threads that match the request criteria.\"\n }\n },\n \"id\": - \"CommentThreadListResponse\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"id\": \"ThirdPartyLinkListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"type\": \"array\"\n }\n }\n },\n - \ \"CaptionSnippet\": {\n \"id\": \"CaptionSnippet\",\n \"description\": - \"Basic details about a caption track, such as its language and name.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"isLarge\": - {\n \"description\": \"Indicates whether the caption track uses large - text for the vision-impaired. The default value is false.\",\n \"type\": - \"boolean\"\n },\n \"language\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\"\n },\n \"isAutoSynced\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n },\n \"status\": - {\n \"type\": \"string\",\n \"enum\": [\n \"serving\",\n - \ \"syncing\",\n \"failed\"\n ],\n \"description\": - \"The caption track's status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"isDraft\": - {\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\",\n - \ \"type\": \"boolean\"\n },\n \"trackKind\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The caption track's type.\",\n \"type\": - \"string\",\n \"enum\": [\n \"standard\",\n \"ASR\",\n - \ \"forced\"\n ]\n },\n \"audioTrackType\": - {\n \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ],\n \"type\": - \"string\",\n \"description\": \"The type of audio track associated - with the caption track.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"isEasyReader\": {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"videoId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video associated with - the caption track. @mutable youtube.captions.insert\"\n },\n \"failureReason\": - {\n \"description\": \"The reason that YouTube failed to process - the caption track. This property is only present if the state property's value - is failed.\",\n \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"isCC\": {\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\",\n \"type\": \"boolean\"\n - \ },\n \"lastUpdated\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the caption track was - last updated.\",\n \"type\": \"string\"\n },\n \"name\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\"\n }\n }\n },\n \"ChannelSection\": - {\n \"id\": \"ChannelSection\",\n \"type\": \"object\",\n \"properties\": - {\n \"localizations\": {\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n }\n },\n - \ \"targeting\": {\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\",\n \"$ref\": - \"ChannelSectionTargeting\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\",\n \"$ref\": - \"ChannelSectionContentDetails\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the channel section, such as its type, style and title.\",\n - \ \"$ref\": \"ChannelSectionSnippet\"\n },\n \"kind\": - {\n \"default\": \"youtube#channelSection\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"PropertyValue\": - {\n \"id\": \"PropertyValue\",\n \"description\": \"A pair Property - / Value.\",\n \"properties\": {\n \"value\": {\n \"description\": - \"The property's value.\",\n \"type\": \"string\"\n },\n \"property\": - {\n \"type\": \"string\",\n \"description\": \"A property.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelConversionPing\": - {\n \"type\": \"object\",\n \"id\": \"ChannelConversionPing\",\n - \ \"properties\": {\n \"context\": {\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"Defines the context - of the ping.\"\n },\n \"conversionUrl\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"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.\"\n },\n \"LiveStreamHealthStatus\": {\n \"properties\": - {\n \"status\": {\n \"enum\": [\n \"good\",\n \"ok\",\n - \ \"bad\",\n \"noData\",\n \"revoked\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The status code of this stream\"\n - \ },\n \"lastUpdateTimeSeconds\": {\n \"description\": - \"The last time this status was updated (in seconds)\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"configurationIssues\": - {\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"type\": \"array\",\n \"description\": \"The - configurations issues on this stream\"\n }\n },\n \"id\": - \"LiveStreamHealthStatus\",\n \"type\": \"object\"\n },\n \"ChannelStatistics\": - {\n \"description\": \"Statistics about a channel: number of subscribers, - number of videos in the channel, etc.\",\n \"type\": \"object\",\n \"id\": - \"ChannelStatistics\",\n \"properties\": {\n \"viewCount\": {\n - \ \"description\": \"The number of times the channel has been viewed.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"videoCount\": {\n \"description\": \"The number of videos - uploaded to the channel.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"subscriberCount\": {\n \"description\": - \"The number of subscribers that the channel has.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"commentCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of comments for the channel.\",\n \"format\": \"uint64\"\n },\n - \ \"hiddenSubscriberCount\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether or not the number of subscribers is shown for this user.\"\n }\n - \ }\n },\n \"TestItem\": {\n \"id\": \"TestItem\",\n \"properties\": - {\n \"gaia\": {\n \"format\": \"int64\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"featuredPart\": {\n \"type\": \"boolean\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"Thumbnail\": {\n \"type\": - \"object\",\n \"properties\": {\n \"url\": {\n \"description\": - \"The thumbnail image's URL.\",\n \"type\": \"string\"\n },\n - \ \"width\": {\n \"format\": \"uint32\",\n \"description\": - \"(Optional) Width of the thumbnail image.\",\n \"type\": \"integer\"\n - \ },\n \"height\": {\n \"type\": \"integer\",\n \"description\": - \"(Optional) Height of the thumbnail image.\",\n \"format\": \"uint32\"\n - \ }\n },\n \"description\": \"A thumbnail is an image representing - a YouTube resource.\",\n \"id\": \"Thumbnail\"\n },\n \"Channel\": - {\n \"id\": \"Channel\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#channel\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#channel\"\n },\n \"contentOwnerDetails\": - {\n \"description\": \"The contentOwnerDetails object encapsulates - channel data that is relevant for YouTube Partners linked with the channel.\",\n - \ \"$ref\": \"ChannelContentOwnerDetails\"\n },\n \"topicDetails\": - {\n \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\",\n \"$ref\": - \"ChannelTopicDetails\"\n },\n \"status\": {\n \"$ref\": - \"ChannelStatus\",\n \"description\": \"The status object encapsulates - information about the privacy status of the channel.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ChannelContentDetails\",\n \"description\": - \"The contentDetails object encapsulates information about the channel's content.\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"description\": \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n }\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the channel, such as its title, description, and thumbnail - images.\",\n \"$ref\": \"ChannelSnippet\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"conversionPings\": {\n \"$ref\": - \"ChannelConversionPings\",\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\"\n },\n \"brandingSettings\": {\n \"description\": - \"The brandingSettings object encapsulates information about the branding - of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n },\n - \ \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n - \ \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\"\n - \ }\n },\n \"description\": \"A *channel* resource contains - information about a YouTube channel.\",\n \"type\": \"object\"\n },\n - \ \"ActivityContentDetails\": {\n \"description\": \"Details about - the content of an activity: the video that was shared, the channel that was - subscribed to, etc.\",\n \"properties\": {\n \"recommendation\": - {\n \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\",\n \"$ref\": \"ActivityContentDetailsRecommendation\"\n - \ },\n \"subscription\": {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n - \ \"description\": \"The subscription object contains information + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n + \ \"default\": \"youtube#subscriptionListResponse\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"SubscriptionListResponse\"\n + \ },\n \"VideoRecordingDetails\": {\n \"properties\": {\n \"location\": + {\n \"$ref\": \"GeoPoint\",\n \"description\": \"The geolocation + information associated with the video.\"\n },\n \"recordingDate\": + {\n \"description\": \"The date and time when the video was recorded.\",\n + \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n + \ \"locationDescription\": {\n \"description\": \"The text + description of the location where the video was recorded.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"VideoRecordingDetails\",\n + \ \"type\": \"object\",\n \"description\": \"Recording information + associated with the video.\"\n },\n \"ChannelSectionLocalization\": + {\n \"id\": \"ChannelSectionLocalization\",\n \"properties\": {\n + \ \"title\": {\n \"description\": \"The localized strings for + channel section's title.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"description\": \"ChannelSection localization + setting\"\n },\n \"ActivityContentDetails\": {\n \"description\": + \"Details about the content of an activity: the video that was shared, the + channel that was subscribed to, etc.\",\n \"id\": \"ActivityContentDetails\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"subscription\": + {\n \"description\": \"The subscription object contains information about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\"\n },\n \"like\": {\n \"$ref\": - \"ActivityContentDetailsLike\",\n \"description\": \"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.\"\n },\n - \ \"bulletin\": {\n \"description\": \"The bulletin object - contains details about a channel bulletin post. This object is only present - if the snippet.type is bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n + the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n \ },\n \"playlistItem\": {\n \"description\": \"The playlistItem object contains information about a new playlist item. This property is only present if the snippet.type is playlistItem.\",\n \"$ref\": - \"ActivityContentDetailsPlaylistItem\"\n },\n \"upload\": {\n - \ \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\",\n - \ \"$ref\": \"ActivityContentDetailsUpload\"\n },\n \"promotedItem\": - {\n \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\",\n \"$ref\": \"ActivityContentDetailsPromotedItem\"\n + \"ActivityContentDetailsPlaylistItem\"\n },\n \"like\": {\n + \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsLike\"\n + \ },\n \"promotedItem\": {\n \"description\": \"The + promotedItem object contains details about a resource which is being promoted. + This property is only present if the snippet.type is promotedItem.\",\n \"$ref\": + \"ActivityContentDetailsPromotedItem\"\n },\n \"recommendation\": + {\n \"description\": \"The recommendation object contains information + about a recommended resource. This property is only present if the snippet.type + is recommendation.\",\n \"$ref\": \"ActivityContentDetailsRecommendation\"\n + \ },\n \"upload\": {\n \"description\": \"The upload + object contains information about the uploaded video. This property is only + present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n \ },\n \"favorite\": {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsFavorite\"\n },\n \"channelItem\": {\n - \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsChannelItem\"\n + \ \"$ref\": \"ActivityContentDetailsChannelItem\",\n \"description\": + \"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.\"\n + \ },\n \"bulletin\": {\n \"description\": \"The bulletin + object contains details about a channel bulletin post. This object is only + present if the snippet.type is bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n + \ },\n \"social\": {\n \"description\": \"The social + object contains details about a social network post. This property is only + present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n \ },\n \"comment\": {\n \"description\": \"The comment object contains information about a resource that received a comment. This property is only present if the snippet.type is comment.\",\n \"$ref\": - \"ActivityContentDetailsComment\"\n },\n \"social\": {\n \"description\": - \"The social object contains details about a social network post. This property - is only present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetails\"\n - \ }\n },\n \"fullyEncodeReservedExpansion\": true,\n \"mtlsRootUrl\": - \"https://youtube.mtls.googleapis.com/\",\n \"batchPath\": \"batch\",\n \"kind\": - \"discovery#restDescription\",\n \"ownerName\": \"Google\"\n}\n" + \"ActivityContentDetailsComment\"\n }\n }\n },\n \"CaptionSnippet\": + {\n \"type\": \"object\",\n \"properties\": {\n \"isAutoSynced\": + {\n \"description\": \"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.\",\n \"type\": + \"boolean\"\n },\n \"lastUpdated\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time when the caption track was last updated.\"\n },\n + \ \"language\": {\n \"type\": \"string\",\n \"description\": + \"The language of the caption track. The property value is a BCP-47 language + tag.\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n }\n },\n \"videoId\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the video associated with + the caption track. @mutable youtube.captions.insert\"\n },\n \"isEasyReader\": + {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n + \ },\n \"status\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The caption track's status.\",\n \"enum\": [\n \"serving\",\n + \ \"syncing\",\n \"failed\"\n ],\n \"type\": + \"string\"\n },\n \"name\": {\n \"type\": \"string\",\n + \ \"description\": \"The name of the caption track. The name is intended + to be visible to the user as an option during playback.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n }\n },\n \"trackKind\": {\n \"description\": + \"The caption track's type.\",\n \"enum\": [\n \"standard\",\n + \ \"ASR\",\n \"forced\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"isLarge\": {\n \"description\": + \"Indicates whether the caption track uses large text for the vision-impaired. + The default value is false.\",\n \"type\": \"boolean\"\n },\n + \ \"failureReason\": {\n \"enum\": [\n \"unknownFormat\",\n + \ \"unsupportedFormat\",\n \"processingFailed\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The reason that + YouTube failed to process the caption track. This property is only present + if the state property's value is failed.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"audioTrackType\": {\n \"type\": \"string\",\n \"enum\": + [\n \"unknown\",\n \"primary\",\n \"commentary\",\n + \ \"descriptive\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The type of audio track associated + with the caption track.\"\n },\n \"isCC\": {\n \"description\": + \"Indicates whether the track contains closed captions for the deaf and hard + of hearing. The default value is false.\",\n \"type\": \"boolean\"\n + \ },\n \"isDraft\": {\n \"type\": \"boolean\",\n \"description\": + \"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. @mutable youtube.captions.insert + youtube.captions.update\"\n }\n },\n \"description\": \"Basic + details about a caption track, such as its language and name.\",\n \"id\": + \"CaptionSnippet\"\n },\n \"ChannelBannerResource\": {\n \"id\": + \"ChannelBannerResource\",\n \"type\": \"object\",\n \"description\": + \"A channel banner returned as the response to a channel_banner.insert call.\",\n + \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#channelBannerResource\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#channelBannerResource\\\".\",\n \"type\": + \"string\"\n },\n \"url\": {\n \"type\": \"string\",\n + \ \"description\": \"The URL of this banner image.\"\n },\n + \ \"etag\": {\n \"type\": \"string\"\n }\n }\n + \ },\n \"Subscription\": {\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#subscription\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#subscription\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the subscription, including its title and the channel + that the user subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the subscription.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"contentDetails\": {\n \"description\": + \"The contentDetails object contains basic statistics about the subscription.\",\n + \ \"$ref\": \"SubscriptionContentDetails\"\n },\n \"subscriberSnippet\": + {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n \"description\": + \"The subscriberSnippet object contains basic details about the subscriber.\"\n + \ }\n },\n \"id\": \"Subscription\",\n \"type\": \"object\",\n + \ \"description\": \"A *subscription* resource contains information about + a YouTube user subscription. A subscription notifies a user when new videos + are added to a channel or when another user takes one of several actions on + YouTube, such as uploading a video, rating a video, or commenting on a video.\"\n + \ },\n \"LiveStreamListResponse\": {\n \"type\": \"object\",\n \"properties\": + {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\"\n },\n \"etag\": {\n + \ \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveStreamListResponse\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n + \ },\n \"description\": \"A list of live streams that match + the request criteria.\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"LiveStreamListResponse\"\n },\n \"Cuepoint\": + {\n \"description\": \"Note that there may be a 5-second end-point resolution + issue. For instance, if a cuepoint comes in for 22:03:27, we may stuff the + cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact of HLS.\",\n + \ \"id\": \"Cuepoint\",\n \"properties\": {\n \"cueType\": + {\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n + \ \"cueTypeAd\"\n ]\n },\n \"etag\": {\n + \ \"type\": \"string\"\n },\n \"walltimeMs\": {\n \"description\": + \"The wall clock time at which the cuepoint should be inserted. Only one of + insertion_offset_time_ms and walltime_ms may be set at a time.\",\n \"type\": + \"string\",\n \"format\": \"uint64\"\n },\n \"durationSecs\": + {\n \"type\": \"integer\",\n \"description\": \"The duration + of this cuepoint.\",\n \"format\": \"uint32\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The identifier + for cuepoint resource.\"\n },\n \"insertionOffsetTimeMs\": {\n + \ \"type\": \"string\",\n \"description\": \"The time when + the cuepoint should be inserted by offset to the broadcast actual start time.\",\n + \ \"format\": \"int64\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"CommentThread\": {\n \"description\": \"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.\",\n + \ \"id\": \"CommentThread\",\n \"type\": \"object\",\n \"properties\": + {\n \"snippet\": {\n \"description\": \"The snippet object + contains basic details about the comment thread and also the top level comment.\",\n + \ \"$ref\": \"CommentThreadSnippet\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#commentThread\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\"\n + \ },\n \"replies\": {\n \"description\": \"The replies + object contains a limited number of replies (if any) to the top level comment + found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the comment thread.\"\n }\n + \ }\n },\n \"ActivityContentDetailsRecommendation\": {\n \"id\": + \"ActivityContentDetailsRecommendation\",\n \"description\": \"Information + that identifies the recommended resource.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"seedResourceId\": {\n \"description\": + \"The seedResourceId object contains information about the resource that caused + the recommendation.\",\n \"$ref\": \"ResourceId\"\n },\n \"reason\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"reasonUnspecified\",\n \"videoFavorited\",\n + \ \"videoLiked\",\n \"videoWatched\"\n ],\n + \ \"description\": \"The reason that the resource is recommended to + the user.\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the recommended resource.\"\n }\n }\n },\n \"VideoContentDetails\": + {\n \"type\": \"object\",\n \"description\": \"Details about the + content of a YouTube Video.\",\n \"id\": \"VideoContentDetails\",\n \"properties\": + {\n \"dimension\": {\n \"description\": \"The value of dimension + indicates whether the video is available in 3D or in 2D.\",\n \"type\": + \"string\"\n },\n \"countryRestriction\": {\n \"description\": + \"The countryRestriction object contains information about the countries where + a video is (or is not) viewable.\",\n \"$ref\": \"AccessPolicy\"\n + \ },\n \"caption\": {\n \"description\": \"The value + of captions indicates whether the video has captions or not.\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"true\",\n \"false\"\n + \ ]\n },\n \"duration\": {\n \"type\": \"string\",\n + \ \"description\": \"The length of the video. The tag value is an + ISO 8601 duration in the format PT#M#S, in which the letters PT indicate that + the value specifies a period of time, and the letters M and S refer to length + in minutes and seconds, respectively. The # characters preceding the M and + S letters are both integers that specify the number of minutes (or seconds) + of the video. For example, a value of PT15M51S indicates that the video is + 15 minutes and 51 seconds long.\"\n },\n \"projection\": {\n + \ \"description\": \"Specifies the projection format of the video.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"rectangular\",\n + \ \"360\"\n ],\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ]\n },\n \"hasCustomThumbnail\": + {\n \"type\": \"boolean\",\n \"description\": \"Indicates + whether the video uploader has provided a custom thumbnail image for the video. + This property is only visible to the video uploader.\"\n },\n \"definition\": + {\n \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n + \ ],\n \"description\": \"The value of definition indicates + whether the video is available in high definition or only in standard definition.\",\n + \ \"enum\": [\n \"sd\",\n \"hd\"\n ],\n + \ \"type\": \"string\"\n },\n \"licensedContent\": {\n + \ \"description\": \"The value of is_license_content indicates whether + the video is licensed content.\",\n \"type\": \"boolean\"\n },\n + \ \"regionRestriction\": {\n \"description\": \"The regionRestriction + object contains information about the countries where a video is (or is not) + viewable. The object will contain either the contentDetails.regionRestriction.allowed + property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": + \"VideoContentDetailsRegionRestriction\"\n },\n \"contentRating\": + {\n \"$ref\": \"ContentRating\",\n \"description\": \"Specifies + the ratings that the video received under various rating schemes.\"\n }\n + \ }\n },\n \"WatchSettings\": {\n \"description\": \"Branding + properties for the watch. All deprecated.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"featuredPlaylistId\": {\n \"description\": + \"An ID that uniquely identifies a playlist that displays next to the video + player.\",\n \"type\": \"string\"\n },\n \"backgroundColor\": + {\n \"description\": \"The text color for the video watch page's + branded area.\",\n \"type\": \"string\"\n },\n \"textColor\": + {\n \"type\": \"string\",\n \"description\": \"The background + color for the video watch page's branded area.\"\n }\n },\n \"id\": + \"WatchSettings\"\n },\n \"ChannelSection\": {\n \"id\": \"ChannelSection\",\n + \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel section.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"localizations\": {\n \"type\": \"object\",\n \"description\": + \"Localizations for different languages\",\n \"additionalProperties\": + {\n \"$ref\": \"ChannelSectionLocalization\"\n }\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n + \ \"default\": \"youtube#channelSection\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the channel section, such as its type, style and title.\"\n },\n \"contentDetails\": + {\n \"description\": \"The contentDetails object contains details + about the channel section content, such as a list of playlists or channels + featured in the section.\",\n \"$ref\": \"ChannelSectionContentDetails\"\n + \ },\n \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n + \ \"description\": \"The targeting object contains basic targeting + settings about the channel section.\"\n }\n },\n \"type\": + \"object\"\n },\n \"VideoSuggestionsTagSuggestion\": {\n \"properties\": + {\n \"tag\": {\n \"type\": \"string\",\n \"description\": + \"The keyword tag suggested for the video.\"\n },\n \"categoryRestricts\": + {\n \"description\": \"A set of video categories for which the tag + is relevant. You can use this information to display appropriate tag suggestions + based on the video category that the video uploader associates with the video. + By default, tag suggestions are relevant for all categories if there are no + restricts defined for the keyword.\",\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n }\n }\n },\n \"id\": + \"VideoSuggestionsTagSuggestion\",\n \"description\": \"A single tag + suggestion with it's relevance information.\",\n \"type\": \"object\"\n + \ },\n \"ChannelSectionListResponse\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#channelSectionListResponse\"\n + \ },\n \"items\": {\n \"description\": \"A list of ChannelSections + that match the request criteria.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"ChannelSection\"\n }\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"id\": \"ChannelSectionListResponse\"\n + \ },\n \"PlaylistLocalization\": {\n \"description\": \"Playlist + localization setting\",\n \"properties\": {\n \"title\": {\n \"description\": + \"The localized strings for playlist's title.\",\n \"type\": \"string\"\n + \ },\n \"description\": {\n \"description\": \"The localized + strings for playlist's description.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"PlaylistLocalization\",\n \"type\": \"object\"\n + \ },\n \"CommentThreadListResponse\": {\n \"properties\": {\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": + {\n \"default\": \"youtube#commentThreadListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"description\": \"A list of comment threads that + match the request criteria.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": + \"CommentThreadListResponse\",\n \"type\": \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n + \ \"properties\": {\n \"memberLevelName\": {\n \"description\": + \"The name of the Level at which the viewer is a member. This matches the + `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated + membership gifting message. The Level names are defined by the YouTube channel + offering the Membership. In some situations this field isn't filled.\",\n + \ \"type\": \"string\"\n },\n \"gifterChannelId\": {\n + \ \"description\": \"The ID of the user that made the membership gifting + purchase. This matches the `snippet.authorChannelId` of the associated membership + gifting message.\",\n \"type\": \"string\"\n },\n \"associatedMembershipGiftingMessageId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the membership gifting message that is related to this gift membership. This + ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n + \ }\n }\n },\n \"CaptionListResponse\": {\n \"properties\": + {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Caption\"\n },\n \"description\": + \"A list of captions that match the request criteria.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#captionListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"CaptionListResponse\"\n },\n + \ \"Comment\": {\n \"type\": \"object\",\n \"id\": \"Comment\",\n + \ \"description\": \"A *comment* represents a single YouTube comment.\",\n + \ \"properties\": {\n \"id\": {\n \"description\": \"The + ID that YouTube uses to uniquely identify the comment.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#comment\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n + \ },\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the comment.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n }\n }\n + \ },\n \"ChannelBrandingSettings\": {\n \"id\": \"ChannelBrandingSettings\",\n + \ \"description\": \"Branding properties of a YouTube channel.\",\n \"properties\": + {\n \"watch\": {\n \"description\": \"Branding properties + for the watch page.\",\n \"$ref\": \"WatchSettings\"\n },\n + \ \"image\": {\n \"$ref\": \"ImageSettings\",\n \"description\": + \"Branding properties for branding images.\"\n },\n \"channel\": + {\n \"description\": \"Branding properties for the channel view.\",\n + \ \"$ref\": \"ChannelSettings\"\n },\n \"hints\": {\n + \ \"description\": \"Additional experimental branding properties.\",\n + \ \"items\": {\n \"$ref\": \"PropertyValue\"\n },\n + \ \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"VideoCategoryListResponse\": {\n \"id\": \"VideoCategoryListResponse\",\n + \ \"properties\": {\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n },\n \"pageInfo\": {\n \"description\": \"General + pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": + {\n \"description\": \"A list of video categories that can be associated + with YouTube videos. In this map, the video category ID is the map key, and + its value is the corresponding videoCategory resource.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoCategory\"\n + \ }\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n + \ \"default\": \"youtube#videoCategoryListResponse\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"LiveChatSuperChatDetails\": {\n \"properties\": {\n \"currency\": + {\n \"type\": \"string\",\n \"description\": \"The currency + in which the purchase was made.\"\n },\n \"tier\": {\n \"format\": + \"uint32\",\n \"description\": \"The tier in which the amount belongs. + Lower amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": + \"integer\"\n },\n \"amountMicros\": {\n \"description\": + \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n + \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n + \ \"userComment\": {\n \"type\": \"string\",\n \"description\": + \"The comment added by the user to this Super Chat event.\"\n },\n + \ \"amountDisplayString\": {\n \"description\": \"A rendered + string that displays the fund amount and currency to the user.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveChatSuperChatDetails\"\n }\n },\n \"ownerDomain\": \"google.com\"\n}\n" headers: Alt-Svc: - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 @@ -12505,7 +12479,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:41 GMT + - Thu, 09 Mar 2023 00:27:02 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: @@ -12623,7 +12597,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:41 GMT + - Thu, 09 Mar 2023 00:27:02 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: diff --git a/tests/cassettes/test_youtube/test_cancel_donation_fail.yaml b/tests/cassettes/test_youtube/test_cancel_donation_fail.yaml index e19131d9..3504fddd 100644 --- a/tests/cassettes/test_youtube/test_cancel_donation_fail.yaml +++ b/tests/cassettes/test_youtube/test_cancel_donation_fail.yaml @@ -10,765 +10,649 @@ interactions: uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest response: body: - string: "{\n \"id\": \"youtube:v3\",\n \"canonicalName\": \"YouTube\",\n \"protocol\": - \"rest\",\n \"title\": \"YouTube Data API v3\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"ownerName\": \"Google\",\n \"revision\": \"20230131\",\n \"icons\": - {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"batchPath\": \"batch\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"parameters\": {\n \"prettyPrint\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Returns response with indentations and line breaks.\",\n - \ \"location\": \"query\",\n \"default\": \"true\"\n },\n \"access_token\": - {\n \"description\": \"OAuth access token.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"key\": {\n \"description\": + string: "{\n \"ownerDomain\": \"google.com\",\n \"id\": \"youtube:v3\",\n + \ \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"ownerName\": \"Google\",\n + \ \"canonicalName\": \"YouTube\",\n \"parameters\": {\n \"oauth_token\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": + \"OAuth 2.0 token for the current user.\"\n },\n \"access_token\": {\n + \ \"description\": \"OAuth access token.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"fields\": {\n \"description\": + \"Selector specifying which fields to include in a partial response.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"$.xgafv\": + {\n \"type\": \"string\",\n \"description\": \"V1 error format.\",\n + \ \"enumDescriptions\": [\n \"v1 error format\",\n \"v2 + error format\"\n ],\n \"enum\": [\n \"1\",\n \"2\"\n + \ ],\n \"location\": \"query\"\n },\n \"callback\": {\n \"type\": + \"string\",\n \"description\": \"JSONP\",\n \"location\": \"query\"\n + \ },\n \"alt\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"Responses with Content-Type of application/json\",\n \"Media + download with context-dependent Content-Type\",\n \"Responses with + Content-Type of application/x-protobuf\"\n ],\n \"enum\": [\n \"json\",\n + \ \"media\",\n \"proto\"\n ],\n \"default\": \"json\",\n + \ \"location\": \"query\",\n \"description\": \"Data format for response.\"\n + \ },\n \"quotaUser\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"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.\"\n },\n \"prettyPrint\": {\n \"type\": + \"boolean\",\n \"location\": \"query\",\n \"description\": \"Returns + response with indentations and line breaks.\",\n \"default\": \"true\"\n + \ },\n \"upload_protocol\": {\n \"description\": \"Upload protocol + for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"key\": {\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"upload_protocol\": - {\n \"type\": \"string\",\n \"description\": \"Upload protocol for - media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"location\": \"query\"\n - \ },\n \"alt\": {\n \"enumDescriptions\": [\n \"Responses - with Content-Type of application/json\",\n \"Media download with context-dependent - Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n - \ ],\n \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"type\": \"string\",\n \"location\": \"query\",\n \"default\": - \"json\",\n \"description\": \"Data format for response.\"\n },\n - \ \"callback\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"JSONP\"\n },\n \"fields\": {\n \"type\": - \"string\",\n \"description\": \"Selector specifying which fields to - include in a partial response.\",\n \"location\": \"query\"\n },\n - \ \"oauth_token\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"OAuth 2.0 token for the current user.\"\n },\n - \ \"quotaUser\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"$.xgafv\": {\n \"location\": - \"query\",\n \"enum\": [\n \"1\",\n \"2\"\n ],\n \"enumDescriptions\": - [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"type\": - \"string\",\n \"description\": \"V1 error format.\"\n },\n \"uploadType\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n - \ }\n },\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"kind\": \"discovery#restDescription\",\n \"description\": \"The YouTube - Data API v3 is an API that provides access to YouTube data, such as videos, - playlists, and channels.\",\n \"version\": \"v3\",\n \"name\": \"youtube\",\n - \ \"ownerDomain\": \"google.com\",\n \"discoveryVersion\": \"v1\",\n \"schemas\": - {\n \"SubscriptionContentDetails\": {\n \"id\": \"SubscriptionContentDetails\",\n - \ \"properties\": {\n \"newItemCount\": {\n \"format\": - \"uint32\",\n \"description\": \"The number of new items in the subscription - since its content was last read.\",\n \"type\": \"integer\"\n },\n - \ \"totalItemCount\": {\n \"type\": \"integer\",\n \"description\": - \"The approximate number of items that the subscription points to.\",\n \"format\": - \"uint32\"\n },\n \"activityType\": {\n \"type\": \"string\",\n - \ \"description\": \"The type of activity this subscription is for - (only uploads, everything).\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Details about - the content to witch a subscription refers.\"\n },\n \"ChannelSectionLocalization\": - {\n \"type\": \"object\",\n \"description\": \"ChannelSection localization - setting\",\n \"id\": \"ChannelSectionLocalization\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The localized strings - for channel section's title.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"PlaylistSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"PlaylistSnippet\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlists.insert\",\n \"youtube.playlists.update\"\n - \ ]\n },\n \"description\": \"The playlist's title.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the playlist.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The playlist's description.\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the playlist was created.\",\n - \ \"format\": \"date-time\"\n },\n \"localized\": {\n - \ \"$ref\": \"PlaylistLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"The channel - title of the channel that the video belongs to.\"\n },\n \"tags\": - {\n \"description\": \"Keyword tags associated with the playlist.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the playlist's default - title and description.\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"thumbnailVideoId\": {\n \"description\": - \"Note: if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - a playlist, including title, description and thumbnails.\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The `visitorId` - identifies the visitor.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ },\n \"description\": \"A list of valid abuse reasons that - are used with `video.ReportAbuse`.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"Playlist\": {\n \"type\": \"object\",\n \"properties\": {\n - \ \"status\": {\n \"description\": \"The status object contains - status information for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n - \ },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\"\n - \ },\n \"player\": {\n \"description\": \"The player - object contains information that you would use to play the playlist in an - embedded player.\",\n \"$ref\": \"PlaylistPlayer\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the playlist, such as its title and description.\",\n - \ \"$ref\": \"PlaylistSnippet\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information like video count.\",\n \"$ref\": - \"PlaylistContentDetails\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlist\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"Playlist\",\n \"description\": - \"A *playlist* resource represents a YouTube playlist. A playlist is a collection - of videos that can be viewed sequentially and shared with other users. A playlist - can contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n - \ \"description\": \"The id of the author's YouTube channel, if any.\"\n - \ },\n \"AbuseReport\": {\n \"type\": \"object\",\n \"properties\": - {\n \"subject\": {\n \"$ref\": \"Entity\"\n },\n \"relatedEntities\": - {\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n - \ \"type\": \"array\"\n },\n \"abuseTypes\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"AbuseType\"\n - \ }\n },\n \"description\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"AbuseReport\"\n },\n \"ChannelSection\": - {\n \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the channel section, such as its type, style and title.\",\n \"$ref\": - \"ChannelSectionSnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"description\": \"Localizations - for different languages\",\n \"type\": \"object\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel section.\"\n },\n \"targeting\": - {\n \"description\": \"The targeting object contains basic targeting - settings about the channel section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#channelSection\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\",\n \"$ref\": - \"ChannelSectionContentDetails\"\n }\n },\n \"id\": \"ChannelSection\"\n - \ },\n \"I18nLanguageSnippet\": {\n \"id\": \"I18nLanguageSnippet\",\n - \ \"properties\": {\n \"hl\": {\n \"description\": \"A - short BCP-47 code that uniquely identifies a language.\",\n \"type\": - \"string\"\n },\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the language in the - language itself.\"\n }\n },\n \"description\": \"Basic details - about an i18n language, such as language code and human-readable name.\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamStatus\": {\n \"id\": - \"LiveStreamStatus\",\n \"type\": \"object\",\n \"description\": - \"Brief description of the live stream status.\",\n \"properties\": {\n - \ \"streamStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"healthStatus\": {\n \"$ref\": - \"LiveStreamHealthStatus\",\n \"description\": \"The health status - of the stream.\"\n }\n }\n },\n \"ActivityListResponse\": - {\n \"id\": \"ActivityListResponse\",\n \"properties\": {\n \"items\": - {\n \"items\": {\n \"$ref\": \"Activity\"\n },\n - \ \"type\": \"array\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": + \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"uploadType\": + {\n \"location\": \"query\",\n \"description\": \"Legacy upload + protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"type\": + \"string\"\n }\n },\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n + \ \"fullyEncodeReservedExpansion\": true,\n \"batchPath\": \"batch\",\n \"auth\": + {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": + {\n \"description\": \"View private information of your YouTube channel + relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": + {\n \"description\": \"See, edit, and permanently delete your YouTube + videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": + {\n \"description\": \"View and manage your assets and associated + content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": + {\n \"description\": \"Manage your YouTube videos\"\n },\n + \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": + \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": + {\n \"description\": \"See a list of your current active channel + members, their current level, and when they became a member\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": + \"View your YouTube account\"\n }\n }\n }\n },\n \"discoveryVersion\": + \"v1\",\n \"description\": \"The YouTube Data API v3 is an API that provides + access to YouTube data, such as videos, playlists, and channels.\",\n \"title\": + \"YouTube Data API v3\",\n \"version\": \"v3\",\n \"protocol\": \"rest\",\n + \ \"revision\": \"20230308\",\n \"servicePath\": \"\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n + \ \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n + \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n + \ },\n \"schemas\": {\n \"ChannelTopicDetails\": {\n \"properties\": + {\n \"topicIds\": {\n \"type\": \"array\",\n \"description\": + \"A list of Freebase topic IDs associated with the channel. You can retrieve + information about each topic using the Freebase Topic API.\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"topicCategories\": + {\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"A list of Wikipedia + URLs that describe the channel's content.\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"Freebase topic information related to + the channel.\",\n \"id\": \"ChannelTopicDetails\"\n },\n \"LiveChatMessageAuthorDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"isChatSponsor\": + {\n \"description\": \"Whether the author is a sponsor of the live + chat.\",\n \"type\": \"boolean\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The YouTube + channel ID.\"\n },\n \"channelUrl\": {\n \"type\": + \"string\",\n \"description\": \"The channel's URL.\"\n },\n + \ \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": + \"The channels's avatar URL.\"\n },\n \"displayName\": {\n \"type\": + \"string\",\n \"description\": \"The channel's display name.\"\n + \ },\n \"isChatOwner\": {\n \"description\": \"Whether + the author is the owner of the live chat.\",\n \"type\": \"boolean\"\n + \ },\n \"isVerified\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether the author's identity has been verified + by YouTube.\"\n },\n \"isChatModerator\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the author is a moderator + of the live chat.\"\n }\n },\n \"id\": \"LiveChatMessageAuthorDetails\"\n + \ },\n \"MembershipsDetails\": {\n \"type\": \"object\",\n \"properties\": + {\n \"highestAccessibleLevelDisplayName\": {\n \"description\": + \"Display name for the highest level that the user has access to at the moment.\",\n + \ \"type\": \"string\"\n },\n \"membershipsDurationAtLevels\": + {\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n + \ },\n \"description\": \"Data about memberships duration + on particular pricing levels.\",\n \"type\": \"array\"\n },\n + \ \"highestAccessibleLevel\": {\n \"type\": \"string\",\n \"description\": + \"Id of the highest level that the user has access to at the moment.\"\n },\n + \ \"membershipsDuration\": {\n \"$ref\": \"MembershipsDuration\",\n + \ \"description\": \"Data about memberships duration without taking + into consideration pricing levels.\"\n },\n \"accessibleLevels\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"Ids of all levels that the user has access to. + This includes the currently active level and all other levels that are included + because of a higher purchase.\",\n \"type\": \"array\"\n }\n + \ },\n \"id\": \"MembershipsDetails\"\n },\n \"AccessPolicy\": + {\n \"type\": \"object\",\n \"description\": \"Rights management + policy for YouTube resources.\",\n \"properties\": {\n \"exception\": + {\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"A list of region codes + that identify countries where the default policy do not apply.\"\n },\n + \ \"allowed\": {\n \"description\": \"The value of allowed + indicates whether the access to the policy is allowed or denied by default.\",\n + \ \"type\": \"boolean\"\n }\n },\n \"id\": \"AccessPolicy\"\n + \ },\n \"VideoSuggestionsTagSuggestion\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"tag\": {\n \"description\": \"The + keyword tag suggested for the video.\",\n \"type\": \"string\"\n + \ },\n \"categoryRestricts\": {\n \"type\": \"array\",\n + \ \"description\": \"A set of video categories for which the tag is + relevant. You can use this information to display appropriate tag suggestions + based on the video category that the video uploader associates with the video. + By default, tag suggestions are relevant for all categories if there are no + restricts defined for the keyword.\",\n \"items\": {\n \"type\": + \"string\"\n }\n }\n },\n \"description\": \"A single + tag suggestion with it's relevance information.\",\n \"id\": \"VideoSuggestionsTagSuggestion\"\n + \ },\n \"LiveChatMessageDeletedDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveChatMessageDeletedDetails\",\n \"properties\": {\n + \ \"deletedMessageId\": {\n \"type\": \"string\"\n }\n + \ }\n },\n \"VideoAbuseReport\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoAbuseReport\",\n \"properties\": {\n \"reasonId\": + {\n \"description\": \"The high-level, or primary, reason that the + content is abusive. The value is an abuse report reason ID.\",\n \"type\": + \"string\"\n },\n \"secondaryReasonId\": {\n \"description\": + \"The specific, or secondary, reason that this content is abusive (if available). + The value is an abuse report reason ID that is a valid secondary reason for + the primary reason.\",\n \"type\": \"string\"\n },\n \"comments\": + {\n \"description\": \"Additional comments regarding the abuse report.\",\n + \ \"type\": \"string\"\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": + \"string\"\n },\n \"language\": {\n \"description\": + \"The language that the content was viewed in.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"ChannelConversionPing\": {\n \"description\": + \"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.\",\n \"id\": \"ChannelConversionPing\",\n \"properties\": + {\n \"conversionUrl\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n + \ \"context\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n + \ \"cview\"\n ],\n \"description\": \"Defines + the context of the ping.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"VideoCategoryListResponse\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"default\": \"youtube#activityListResponse\",\n \"type\": + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"description\": + \"A list of video categories that can be associated with YouTube videos. In + this map, the video category ID is the map key, and its value is the corresponding + videoCategory resource.\",\n \"items\": {\n \"$ref\": + \"VideoCategory\"\n }\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n + \ \"default\": \"youtube#videoCategoryListResponse\",\n \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"PlaylistStatus\": {\n - \ \"properties\": {\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The playlist's privacy status.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistStatus\"\n },\n \"Cuepoint\": {\n \"properties\": - {\n \"cueType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ]\n - \ },\n \"walltimeMs\": {\n \"description\": \"The wall - clock time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"durationSecs\": {\n \"description\": - \"The duration of this cuepoint.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"insertionOffsetTimeMs\": {\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\",\n \"format\": \"int64\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The identifier for cuepoint resource.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"Cuepoint\",\n \"description\": - \"Note that there may be a 5-second end-point resolution issue. For instance, - if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\"\n },\n \"Subscription\": - {\n \"description\": \"A *subscription* resource contains information - about a YouTube user subscription. A subscription notifies a user when new - videos are added to a channel or when another user takes one of several actions - on YouTube, such as uploading a video, rating a video, or commenting on a - video.\",\n \"type\": \"object\",\n \"id\": \"Subscription\",\n - \ \"properties\": {\n \"contentDetails\": {\n \"$ref\": - \"SubscriptionContentDetails\",\n \"description\": \"The contentDetails - object contains basic statistics about the subscription.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#subscription\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscription\\\".\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the subscription.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\"\n },\n \"subscriberSnippet\": - {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n \"description\": - \"The subscriberSnippet object contains basic details about the subscriber.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"LiveBroadcastContentDetails\": {\n \"type\": \"object\",\n \"id\": - \"LiveBroadcastContentDetails\",\n \"properties\": {\n \"monitorStream\": - {\n \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\",\n \"$ref\": - \"MonitorStreamInfo\"\n },\n \"enableDvr\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting determines whether - viewers can access DVR controls while watching the video. DVR controls enable - the viewer to control the video playback experience by pausing, rewinding, - or fast forwarding content. The default value for this property is true. *Important:* - You must set the value to true and also set the enableArchive property's value - to true if you want to make playback available immediately after the broadcast - ends.\"\n },\n \"enableContentEncryption\": {\n \"description\": - \"This setting indicates whether YouTube should enable content encryption - for the broadcast.\",\n \"type\": \"boolean\"\n },\n \"startWithSlate\": - {\n \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n },\n \"latencyPreference\": {\n \"enumDescriptions\": - [\n \"\",\n \"Best for: highest quality viewer playbacks - and higher resolutions.\",\n \"Best for: near real-time interaction, - with minimal playback buffering.\",\n \"Best for: real-time interaction - Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n - \ \"description\": \"If both this and enable_low_latency are set, - they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW - should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency - omitted.\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"type\": \"string\"\n },\n \"enableLowLatency\": - {\n \"description\": \"Indicates whether this broadcast has low latency - enabled.\",\n \"type\": \"boolean\"\n },\n \"boundStreamId\": - {\n \"description\": \"This value uniquely identifies the live stream - bound to the broadcast.\",\n \"type\": \"string\"\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\"\n },\n \"stereoLayout\": - {\n \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n - \ \"leftRight\",\n \"topBottom\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\"\n },\n - \ \"enableClosedCaptions\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n - \ },\n \"closedCaptionsType\": {\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"type\": + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n + \ \"description\": \"General pagination information.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\"\n }\n + \ },\n \"id\": \"VideoCategoryListResponse\"\n },\n \"VideoSuggestions\": + {\n \"id\": \"VideoSuggestions\",\n \"description\": \"Specifies + suggestions on how to improve video content, including encoding hints, tag + suggestions, and editor suggestions.\",\n \"type\": \"object\",\n \"properties\": + {\n \"tagSuggestions\": {\n \"items\": {\n \"$ref\": + \"VideoSuggestionsTagSuggestion\"\n },\n \"description\": + \"A list of keyword tags that could be added to the video's metadata to increase + the likelihood that users will locate your video when searching or browsing + on YouTube.\",\n \"type\": \"array\"\n },\n \"processingWarnings\": + {\n \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": + [\n \"Unrecognized file format, transcoding is likely to fail.\",\n + \ \"Unrecognized video codec, transcoding is likely to fail.\",\n + \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n + \ \"Conflicting container and stream resolutions.\",\n \"Edit + lists are not currently supported.\",\n \"Video codec that is + known to cause problems was used.\",\n \"Audio codec that is + known to cause problems was used.\",\n \"Unsupported VR video + stereo mode.\",\n \"Unsupported spherical video projection type.\",\n + \ \"Unsupported HDR pixel format.\",\n \"Unspecified + HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n + \ ],\n \"enum\": [\n \"unknownContainer\",\n + \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n + \ \"inconsistentResolution\",\n \"hasEditlist\",\n + \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n + \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n + \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n + \ \"problematicHdrLookupTable\"\n ],\n \"type\": + \"string\"\n },\n \"description\": \"A list of reasons why + YouTube may have difficulty transcoding the uploaded video or that might result + in an erroneous transcoding. These warnings are generated before YouTube actually + processes the uploaded video file. In addition, they identify issues that + are unlikely to cause the video processing to fail but that might cause problems + such as sync issues, video artifacts, or a missing audio track.\"\n },\n + \ \"processingErrors\": {\n \"items\": {\n \"enum\": + [\n \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n + \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n + \ \"unsupportedSpatialAudioLayout\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"File contains + audio only (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG + image).\",\n \"Movie project file (e.g., Microsoft Windows Movie + Maker project).\",\n \"Other non-video file.\",\n \"Document + or text file (e.g., MS Word document).\",\n \"An archive file + (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout + type.\"\n ]\n },\n \"description\": \"A list + of errors that will prevent YouTube from successfully processing the uploaded + video video. These errors indicate that, regardless of the video's current + processing status, eventually, that status will almost certainly be failed.\",\n + \ \"type\": \"array\"\n },\n \"processingHints\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"The MP4 + file is not streamable, this will slow down the processing. MOOV atom was + not found at the beginning of the file.\",\n \"Probably a better + quality version of the video exists. The video has wide screen aspect ratio, + but is not an HD video.\",\n \"Uploaded video is spherical video.\",\n + \ \"Uploaded video has spatial audio.\",\n \"Uploaded + video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n + \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n + \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n + \ \"hdrVideo\"\n ]\n },\n \"description\": + \"A list of suggestions that may improve YouTube's ability to process the + video.\"\n },\n \"editorSuggestions\": {\n \"type\": + \"array\",\n \"description\": \"A list of video editing operations + that might improve the video quality or playback experience of the uploaded + video.\",\n \"items\": {\n \"type\": \"string\",\n \"enum\": + [\n \"videoAutoLevels\",\n \"videoStabilize\",\n + \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n + \ \"enumDescriptions\": [\n \"Picture brightness levels + seem off and could be corrected.\",\n \"The video appears shaky + and could be stabilized.\",\n \"Margins (mattes) detected around + the picture could be cropped.\",\n \"The audio track appears + silent and could be swapped with a better quality one.\"\n ]\n + \ }\n }\n }\n },\n \"ChannelStatus\": {\n \"type\": + \"object\",\n \"id\": \"ChannelStatus\",\n \"properties\": {\n \"isLinked\": + {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n },\n \"longUploadsStatus\": + {\n \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n + \ \"eligible\",\n \"disallowed\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"mesh\": - {\n \"format\": \"byte\",\n \"description\": \"The mesh - for projecting the video if projection is mesh. The mesh value must be a UTF-8 - string containing the base-64 encoding of 3D mesh data that follows the Spherical - Video V2 RFC specification for an mshp box, excluding the box size and type - but including the following four reserved zero bytes for the version and flags.\",\n - \ \"type\": \"string\"\n },\n \"projection\": {\n \"type\": - \"string\",\n \"description\": \"The projection format of this broadcast. - This defaults to rectangular.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ]\n },\n \"enableAutoStop\": - {\n \"description\": \"This setting indicates whether auto stop is - enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\",\n \"type\": \"boolean\"\n - \ },\n \"recordFromStart\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\"\n },\n \"enableAutoStart\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - auto start is enabled for this broadcast. The default value for this property - is false. This setting can only be used by Events.\"\n }\n },\n - \ \"description\": \"Detailed settings of a broadcast.\"\n },\n \"CommentThreadReplies\": - {\n \"id\": \"CommentThreadReplies\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"comments\": {\n \"items\": {\n - \ \"$ref\": \"Comment\"\n },\n \"type\": \"array\",\n - \ \"description\": \"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.\"\n }\n },\n - \ \"description\": \"Comments written in (direct or indirect) reply to - the top level comment.\"\n },\n \"Entity\": {\n \"properties\": - {\n \"typeId\": {\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\"\n },\n \"url\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"Entity\",\n \"type\": - \"object\"\n },\n \"RelatedEntity\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"entity\": {\n \"$ref\": \"Entity\"\n - \ }\n },\n \"id\": \"RelatedEntity\"\n },\n \"LiveBroadcast\": - {\n \"type\": \"object\",\n \"description\": \"A *liveBroadcast* - resource represents an event that will be streamed, via live video, on YouTube.\",\n - \ \"properties\": {\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"default\": \"youtube#liveBroadcast\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the event, including its title, description, - start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the broadcast.\",\n \"annotations\": + \ \"\",\n \"\"\n ],\n \"description\": + \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 + for more information.\"\n },\n \"madeForKids\": {\n \"type\": + \"boolean\"\n },\n \"privacyStatus\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"description\": + \"Privacy status of the channel.\"\n }\n },\n \"description\": + \"JSON template for the status part of a channel.\"\n },\n \"VideoStatistics\": + {\n \"description\": \"Statistics about the video, such as the number + of times the video was viewed or liked.\",\n \"id\": \"VideoStatistics\",\n + \ \"properties\": {\n \"likeCount\": {\n \"format\": \"uint64\",\n + \ \"type\": \"string\",\n \"description\": \"The number of + users who have indicated that they liked the video by giving it a positive + rating.\"\n },\n \"viewCount\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The number + of times the video has been viewed.\"\n },\n \"favoriteCount\": + {\n \"format\": \"uint64\",\n \"description\": \"The number + of users who currently have the video marked as a favorite video.\",\n \"type\": + \"string\"\n },\n \"dislikeCount\": {\n \"description\": + \"The number of users who have indicated that they disliked the video by giving + it a negative rating.\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n },\n \"commentCount\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + number of comments for the video.\"\n }\n },\n \"type\": + \"object\"\n },\n \"PlaylistLocalization\": {\n \"id\": \"PlaylistLocalization\",\n + \ \"description\": \"Playlist localization setting\",\n \"type\": + \"object\",\n \"properties\": {\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The localized strings for playlist's + description.\"\n },\n \"title\": {\n \"description\": + \"The localized strings for playlist's title.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"MonitorStreamInfo\": {\n \"description\": + \"Settings and Info of the monitor stream\",\n \"id\": \"MonitorStreamInfo\",\n + \ \"properties\": {\n \"embedHtml\": {\n \"description\": + \"HTML code that embeds a player that plays the monitor stream.\",\n \"type\": + \"string\"\n },\n \"broadcastStreamDelayMs\": {\n \"description\": + \"If you have set the enableMonitorStream property to true, then this property + determines the length of the live broadcast delay.\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - contains info about the event's current stats. These include concurrent viewers - and total chat count. Statistics can change (in either direction) during the - lifetime of an event. Statistics are only returned while the event is live.\",\n - \ \"$ref\": \"LiveBroadcastStatistics\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"LiveBroadcast\"\n - \ },\n \"LevelDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The name that should be used when referring to this level.\"\n }\n - \ },\n \"id\": \"LevelDetails\"\n },\n \"ChannelAuditDetails\": - {\n \"type\": \"object\",\n \"description\": \"The auditDetails - object encapsulates channel data that is relevant for YouTube Partners during - the audit process.\",\n \"properties\": {\n \"communityGuidelinesGoodStanding\": + \ ]\n },\n \"format\": \"uint32\",\n \"type\": + \"integer\"\n },\n \"enableMonitorStream\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"type\": \"boolean\",\n \"description\": + \"This value determines whether the monitor stream is enabled for the broadcast. + If the monitor stream is enabled, then YouTube will broadcast the event content + on a special stream intended only for the broadcaster's consumption. The broadcaster + can use the stream to review the event content and also to identify the optimal + times to insert cuepoints. You need to set this value to true if you intend + to have a broadcast delay for your event. *Note:* This property cannot be + updated once the broadcast is in the testing or live state.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsFavorite\": + {\n \"type\": \"object\",\n \"description\": \"Information about + a video that was marked as a favorite video.\",\n \"id\": \"ActivityContentDetailsFavorite\",\n + \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the resource that was marked as a favorite.\"\n }\n }\n + \ },\n \"SearchResultSnippet\": {\n \"type\": \"object\",\n \"properties\": + {\n \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The creation date and time of the + resource that the search result identifies.\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A + map of thumbnail images associated with the search result. 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.\"\n },\n + \ \"description\": {\n \"description\": \"A description of + the search result.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The value + that YouTube uses to uniquely identify the channel that published the resource + that the search result identifies.\"\n },\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"The title + of the channel that published the resource that the search result identifies.\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The title of the search result.\"\n },\n \"liveBroadcastContent\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The live broadcast is upcoming.\",\n \"The live broadcast + is active.\",\n \"The live broadcast has been completed.\"\n ],\n + \ \"description\": \"It indicates if the resource (video or channel) + has upcoming/active live broadcast content. Or it's \\\"none\\\" if there + is not any upcoming/active live broadcasts.\",\n \"enum\": [\n \"none\",\n + \ \"upcoming\",\n \"live\",\n \"completed\"\n + \ ]\n }\n },\n \"id\": \"SearchResultSnippet\",\n + \ \"description\": \"Basic details about a search result, including title, + description and thumbnails of the item referenced by the search result.\"\n + \ },\n \"TestItemTestItemSnippet\": {\n \"properties\": {},\n \"type\": + \"object\",\n \"id\": \"TestItemTestItemSnippet\"\n },\n \"VideoContentDetailsRegionRestriction\": + {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n \"properties\": + {\n \"allowed\": {\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"type\": \"array\",\n \"description\": \"A + list of region codes that identify countries where the video is viewable. + If this property is present and a country is not listed in its value, then + the video is blocked from appearing in that country. If this property is present + and contains an empty list, the video is blocked in all countries.\"\n },\n + \ \"blocked\": {\n \"description\": \"A list of region codes + that identify countries where the video is blocked. If this property is present + and a country is not listed in its value, then the video is viewable in that + country. If this property is present and contains an empty list, the video + is viewable in all countries.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n }\n },\n + \ \"type\": \"object\",\n \"description\": \"DEPRECATED Region restriction + of the video.\"\n },\n \"PlaylistItemStatus\": {\n \"id\": \"PlaylistItemStatus\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"privacyStatus\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"description\": + \"This resource's privacy status.\",\n \"type\": \"string\"\n }\n + \ },\n \"description\": \"Information about the playlist item's privacy + status.\"\n },\n \"ChannelAuditDetails\": {\n \"id\": \"ChannelAuditDetails\",\n + \ \"description\": \"The auditDetails object encapsulates channel data + that is relevant for YouTube Partners during the audit process.\",\n \"type\": + \"object\",\n \"properties\": {\n \"communityGuidelinesGoodStanding\": {\n \"description\": \"Whether or not the channel respects the community guidelines.\",\n \"type\": \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel has any unresolved claims.\"\n },\n \"copyrightStrikesGoodStanding\": {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n }\n },\n \"id\": - \"ChannelAuditDetails\"\n },\n \"VideoCategory\": {\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the video category.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video category, including its title.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoCategory\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoCategory\",\n - \ \"description\": \"A *videoCategory* resource identifies a category - that has been or could be associated with uploaded videos.\"\n },\n \"InvideoTiming\": - {\n \"description\": \"Describes a temporal position of a visual widget - inside a video.\",\n \"properties\": {\n \"offsetMs\": {\n \"type\": - \"string\",\n \"description\": \"Defines the time at which the promotion - will appear. Depending on the value of type the value of the offsetMs field - will represent a time offset from the start or from the end of the video, - expressed in milliseconds.\",\n \"format\": \"uint64\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"description\": - \"Describes a timing type. If the value is offsetFromStart, then the offsetMs - field represents an offset from the start of the video. If the value is offsetFromEnd, - then the offsetMs field represents an offset from the end of the video.\",\n - \ \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"durationMs\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"Defines - the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"InvideoTiming\"\n },\n \"LiveStreamSnippet\": - {\n \"properties\": {\n \"title\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The stream's - title. The value must be between 1 and 128 characters long.\"\n },\n - \ \"isDefaultStream\": {\n \"type\": \"boolean\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the stream was created.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"description\": {\n \"description\": - \"The stream's description. The value cannot be longer than 10000 characters.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that is transmitting the stream.\"\n }\n },\n - \ \"id\": \"LiveStreamSnippet\",\n \"type\": \"object\"\n },\n - \ \"ChannelTopicDetails\": {\n \"id\": \"ChannelTopicDetails\",\n \"properties\": - {\n \"topicCategories\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\"\n },\n - \ \"topicIds\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Freebase topic - information related to the channel.\"\n },\n \"PageInfo\": {\n \"properties\": - {\n \"resultsPerPage\": {\n \"type\": \"integer\",\n \"description\": - \"The number of results included in the API response.\",\n \"format\": - \"int32\"\n },\n \"totalResults\": {\n \"type\": \"integer\",\n - \ \"description\": \"The total number of results in the result set.\",\n - \ \"format\": \"int32\"\n }\n },\n \"id\": \"PageInfo\",\n - \ \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\",\n \"type\": \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"description\": \"Video processing progress and completion time - estimate.\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"timeLeftMs\": - {\n \"description\": \"An estimate of the amount of time, in millseconds, - that YouTube needs to finish processing the video.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"partsTotal\": - {\n \"description\": \"An estimate of the total number of parts that - need to be processed for the video. The number may be updated with more precise - estimates while YouTube processes the video.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"partsProcessed\": - {\n \"description\": \"The number of parts of the video that YouTube - has already processed. You can estimate the percentage of the video that YouTube - has already processed by calculating: 100 * parts_processed / parts_total - Note that since the estimated number of parts could increase without a corresponding - increase in the number of parts that have already been processed, it is possible - that the calculated progress could periodically decrease while YouTube processes - a video.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ }\n }\n },\n \"MembershipsDetails\": {\n \"id\": \"MembershipsDetails\",\n - \ \"properties\": {\n \"highestAccessibleLevel\": {\n \"type\": - \"string\",\n \"description\": \"Id of the highest level that the - user has access to at the moment.\"\n },\n \"accessibleLevels\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Ids of all levels that - the user has access to. This includes the currently active level and all other - levels that are included because of a higher purchase.\"\n },\n \"membershipsDuration\": - {\n \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\",\n \"$ref\": \"MembershipsDuration\"\n - \ },\n \"membershipsDurationAtLevels\": {\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"type\": - \"array\",\n \"description\": \"Data about memberships duration on - particular pricing levels.\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"MembershipsLevel\": {\n - \ \"description\": \"A *membershipsLevel* resource represents an offer - made by YouTube creators for their fans. Users can become members of the channel - by joining one of the available levels. They will provide recurring monetary - support and receives special benefits.\",\n \"type\": \"object\",\n \"id\": - \"MembershipsLevel\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#membershipsLevel\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the memberships level.\"\n },\n \"etag\": {\n \"type\": + strikes.\",\n \"type\": \"boolean\"\n }\n }\n },\n + \ \"Video\": {\n \"id\": \"Video\",\n \"type\": \"object\",\n + \ \"description\": \"A *video* resource represents a YouTube video.\",\n + \ \"properties\": {\n \"processingDetails\": {\n \"$ref\": + \"VideoProcessingDetails\",\n \"description\": \"The processingDetails + object encapsulates information about YouTube's progress in processing the + uploaded video file. The properties in the object identify the current processing + status and an estimate of the time remaining until YouTube finishes processing + the video. This part also indicates whether different types of data or content, + such as file details or thumbnail images, are available for the video. The + processingProgress object is designed to be polled so that the video uploaded + can track the progress that YouTube has made in processing the uploaded video + file. This data can only be retrieved by the video owner.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#video\"\n },\n \"status\": + {\n \"$ref\": \"VideoStatus\",\n \"description\": \"The + status object contains information about the video's uploading, processing, + and privacy statuses.\"\n },\n \"etag\": {\n \"type\": \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n - \ }\n }\n },\n \"ChannelSectionContentDetails\": {\n \"description\": - \"Details about a channelsection, including playlists and channels.\",\n \"id\": - \"ChannelSectionContentDetails\",\n \"properties\": {\n \"channels\": - {\n \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"playlists\": {\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"SubscriptionSnippet\": {\n \"description\": - \"Basic details about a subscription, including title, description and thumbnails - of the subscribed item.\",\n \"properties\": {\n \"description\": - {\n \"description\": \"The subscription's details.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\",\n \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\"\n - \ },\n \"channelTitle\": {\n \"description\": \"Channel - title for the channel that the subscription belongs to.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - subscription's title.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the subscription was - created.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"SubscriptionSnippet\"\n - \ },\n \"LiveChatModeratorSnippet\": {\n \"id\": \"LiveChatModeratorSnippet\",\n - \ \"properties\": {\n \"moderatorDetails\": {\n \"description\": - \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"liveChatId\": {\n \"description\": \"The ID - of the live chat this moderator can act on.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"AbuseType\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"AbuseType\",\n \"type\": \"object\"\n - \ },\n \"ChannelToStoreLinkDetails\": {\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Information specific - to a store on a merchandising platform linked to a YouTube channel.\",\n \"properties\": - {\n \"storeName\": {\n \"type\": \"string\",\n \"description\": - \"Name of the store.\"\n },\n \"storeUrl\": {\n \"description\": - \"Landing page of the store.\",\n \"type\": \"string\"\n },\n - \ \"merchantId\": {\n \"format\": \"uint64\",\n \"description\": - \"Google Merchant Center id of the store.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"I18nLanguage\": {\n \"id\": \"I18nLanguage\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"default\": \"youtube#i18nLanguage\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the i18n language.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"An *i18nLanguage* resource identifies - a UI language currently supported by YouTube.\"\n },\n \"GeoPoint\": - {\n \"id\": \"GeoPoint\",\n \"description\": \"Geographical coordinates - of a point, in WGS84.\",\n \"type\": \"object\",\n \"properties\": - {\n \"longitude\": {\n \"description\": \"Longitude in degrees.\",\n - \ \"format\": \"double\",\n \"type\": \"number\"\n },\n - \ \"latitude\": {\n \"type\": \"number\",\n \"description\": - \"Latitude in degrees.\",\n \"format\": \"double\"\n },\n - \ \"altitude\": {\n \"type\": \"number\",\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\",\n \"format\": - \"double\"\n }\n }\n },\n \"TestItem\": {\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"gaia\": {\n \"format\": \"int64\",\n \"type\": - \"string\"\n },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"TestItem\",\n \"type\": \"object\"\n },\n - \ \"VideoMonetizationDetails\": {\n \"id\": \"VideoMonetizationDetails\",\n - \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The value of access indicates whether the video - can be monetized or not.\"\n }\n },\n \"description\": \"Details - about monetization of a YouTube Video.\",\n \"type\": \"object\"\n },\n - \ \"Activity\": {\n \"description\": \"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.\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"contentDetails\": {\n \"description\": - \"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.\",\n \"$ref\": - \"ActivityContentDetails\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"default\": \"youtube#activity\",\n \"type\": \"string\"\n + \ \"monetizationDetails\": {\n \"description\": \"The monetizationDetails + object encapsulates information about the monetization status of the video.\",\n + \ \"$ref\": \"VideoMonetizationDetails\"\n },\n \"projectDetails\": + {\n \"$ref\": \"VideoProjectDetails\",\n \"description\": + \"The projectDetails object contains information about the project specific + video metadata. b/157517979: This part was never populated after it was added. + However, it sees non-zero traffic because there is generated client code in + the wild that refers to it [1]. We keep this field and do NOT remove it because + otherwise V3 would return an error when this part gets requested [2]. [1] + https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the activity.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the activity, including the activity's type and group ID.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"Activity\"\n },\n \"MemberListResponse\": - {\n \"id\": \"MemberListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of members that match the request criteria.\",\n - \ \"items\": {\n \"$ref\": \"Member\"\n }\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"description\": + uses to uniquely identify the video.\",\n \"type\": \"string\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.videos.update\"\n + \ ]\n }\n },\n \"liveStreamingDetails\": + {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": + \"The liveStreamingDetails object contains metadata about a live video broadcast. + The object will only be present in a video resource if the video is an upcoming, + live, or completed live broadcast.\"\n },\n \"player\": {\n + \ \"description\": \"The player object contains information that you + would use to play the video in an embedded player.\",\n \"$ref\": + \"VideoPlayer\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the video, such as its title, + description, and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n + \ \"recordingDetails\": {\n \"$ref\": \"VideoRecordingDetails\",\n + \ \"description\": \"The recordingDetails object encapsulates information + about the location, date and address where the video was recorded.\"\n },\n + \ \"topicDetails\": {\n \"$ref\": \"VideoTopicDetails\",\n + \ \"description\": \"The topicDetails object encapsulates information + about Freebase topics associated with the video.\"\n },\n \"ageGating\": + {\n \"description\": \"Age restriction details related to a video. + This data can only be retrieved by the video owner.\",\n \"$ref\": + \"VideoAgeGating\"\n },\n \"contentDetails\": {\n \"$ref\": + \"VideoContentDetails\",\n \"description\": \"The contentDetails + object contains information about the video content, including the length + of the video and its aspect ratio.\"\n },\n \"statistics\": + {\n \"description\": \"The statistics object contains statistics + about the video.\",\n \"$ref\": \"VideoStatistics\"\n },\n + \ \"suggestions\": {\n \"$ref\": \"VideoSuggestions\",\n \"description\": + \"The suggestions object encapsulates suggestions that identify opportunities + to improve the video quality or the metadata for the uploaded video. This + data can only be retrieved by the video owner.\"\n },\n \"fileDetails\": + {\n \"description\": \"The fileDetails object encapsulates information + about the video file that was uploaded to YouTube, including the file's resolution, + duration, audio and video codecs, stream bitrates, and more. This data can + only be retrieved by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n + \ },\n \"localizations\": {\n \"additionalProperties\": + {\n \"$ref\": \"VideoLocalization\"\n },\n \"type\": + \"object\",\n \"description\": \"The localizations object contains + localized versions of the basic details about the video, such as its title + and description.\"\n }\n }\n },\n \"ChannelLocalization\": + {\n \"properties\": {\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The localized strings for channel's + description.\"\n },\n \"title\": {\n \"description\": + \"The localized strings for channel's title.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"ChannelLocalization\",\n \"description\": + \"Channel localization setting\",\n \"type\": \"object\"\n },\n \"InvideoBranding\": + {\n \"properties\": {\n \"imageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The url of the uploaded image. Only used in apiary + to api communication.\"\n },\n \"position\": {\n \"description\": + \"The spatial position within the video where the branding watermark will + be displayed.\",\n \"$ref\": \"InvideoPosition\"\n },\n \"timing\": + {\n \"description\": \"The temporal position within the video where + watermark will be displayed.\",\n \"$ref\": \"InvideoTiming\"\n },\n + \ \"targetChannelId\": {\n \"description\": \"The channel to + which this branding links. If not present it defaults to the current channel.\",\n + \ \"type\": \"string\"\n },\n \"imageBytes\": {\n \"description\": + \"The bytes the uploaded image. Only used in api to youtube communication.\",\n + \ \"type\": \"string\",\n \"format\": \"byte\"\n }\n + \ },\n \"id\": \"InvideoBranding\",\n \"description\": \"LINT.IfChange + Describes an invideo branding.\",\n \"type\": \"object\"\n },\n \"MembershipsLevelListResponse\": + {\n \"properties\": {\n \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"type\": \"object\",\n \"description\": \"Details about a resource - which was added to a channel.\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that was added to the channel.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"SuperStickerMetadata\": {\n \"id\": \"SuperStickerMetadata\",\n - \ \"properties\": {\n \"altTextLanguage\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the localization language - in which the alt text is returned.\"\n },\n \"altText\": {\n - \ \"description\": \"Internationalized alt text that describes the - sticker image and any animation associated with it.\",\n \"type\": - \"string\"\n },\n \"stickerId\": {\n \"type\": \"string\",\n - \ \"description\": \"Unique identifier of the Super Sticker. This - is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelSectionTargeting\": {\n \"properties\": {\n \"countries\": - {\n \"description\": \"The country the channel section is targeting.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"languages\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The language the channel section is targeting.\"\n - \ },\n \"regions\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"The region the channel section is targeting.\"\n }\n },\n \"description\": - \"ChannelSection targeting setting.\",\n \"id\": \"ChannelSectionTargeting\",\n - \ \"type\": \"object\"\n },\n \"VideoAbuseReport\": {\n \"properties\": - {\n \"reasonId\": {\n \"description\": \"The high-level, or - primary, reason that the content is abusive. The value is an abuse report - reason ID.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n },\n \"secondaryReasonId\": - {\n \"type\": \"string\",\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\"\n },\n \"language\": {\n \"description\": - \"The language that the content was viewed in.\",\n \"type\": \"string\"\n - \ },\n \"comments\": {\n \"type\": \"string\",\n \"description\": - \"Additional comments regarding the abuse report.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"VideoAbuseReport\"\n },\n - \ \"VideoFileDetailsAudioStream\": {\n \"description\": \"Information - about an audio stream.\",\n \"id\": \"VideoFileDetailsAudioStream\",\n - \ \"properties\": {\n \"codec\": {\n \"description\": - \"The audio codec that the stream uses.\",\n \"type\": \"string\"\n - \ },\n \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"channelCount\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of audio channels that the stream contains.\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"description\": \"The audio - stream's bitrate, in bits per second.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"AccessPolicy\": - {\n \"description\": \"Rights management policy for YouTube resources.\",\n - \ \"properties\": {\n \"allowed\": {\n \"description\": - \"The value of allowed indicates whether the access to the policy is allowed - or denied by default.\",\n \"type\": \"boolean\"\n },\n \"exception\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of region - codes that identify countries where the default policy do not apply.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"AccessPolicy\"\n },\n - \ \"ChannelStatus\": {\n \"type\": \"object\",\n \"description\": - \"JSON template for the status part of a channel.\",\n \"id\": \"ChannelStatus\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"description\": - \"Privacy status of the channel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n },\n \"longUploadsStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ],\n \"description\": \"The - long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\"\n },\n \"madeForKids\": {\n \"type\": - \"boolean\"\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\"\n },\n \"isLinked\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n }\n }\n },\n \"CommentThreadSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a comment thread.\",\n \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\",\n \"type\": \"string\"\n },\n - \ \"totalReplyCount\": {\n \"description\": \"The total number - of replies (not including the top level comment).\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"isPublic\": - {\n \"description\": \"Whether the thread (and therefore all its - comments) is visible to all YouTube users.\",\n \"type\": \"boolean\"\n - \ },\n \"canReply\": {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"topLevelComment\": - {\n \"description\": \"The top level comment of this thread.\",\n - \ \"$ref\": \"Comment\"\n }\n },\n \"id\": \"CommentThreadSnippet\"\n - \ },\n \"LiveBroadcastStatus\": {\n \"description\": \"Live broadcast - state.\",\n \"type\": \"object\",\n \"properties\": {\n \"recordingStatus\": - {\n \"description\": \"The broadcast's recording status.\",\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ],\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"type\": \"string\"\n },\n \"liveBroadcastPriority\": - {\n \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"enum\": - [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ]\n },\n \"lifeCycleStatus\": - {\n \"description\": \"The broadcast's status. The status can be - updated using the API's liveBroadcasts.transition method.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"Incomplete settings, but otherwise - valid\",\n \"Complete settings\",\n \"Visible only to - partner, may need special UI treatment\",\n \"Viper is recording; - this means the \\\"clock\\\" is running\",\n \"The broadcast is - finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ]\n - \ },\n \"madeForKids\": {\n \"description\": \"Whether - the broadcast is made for kids or not, decided by YouTube instead of the creator. - This field is read only.\",\n \"type\": \"boolean\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"privacyStatus\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveBroadcastStatus\"\n },\n \"LiveStreamContentDetails\": {\n \"description\": - \"Detailed settings of a stream.\",\n \"id\": \"LiveStreamContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"closedCaptionsIngestionUrl\": - {\n \"description\": \"The ingestion URL where the closed captions - of this stream are sent.\",\n \"type\": \"string\"\n },\n - \ \"isReusable\": {\n \"type\": \"boolean\",\n \"description\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"MembershipsLevel\"\n },\n \"type\": + \"array\",\n \"description\": \"A list of pricing levels offered + by a creator to the fans.\"\n },\n \"kind\": {\n \"default\": + \"youtube#membershipsLevelListResponse\",\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"MembershipsLevelListResponse\"\n + \ },\n \"LiveChatMessageListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveChatMessageListResponse\",\n \"properties\": {\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"LiveChatMessage\"\n }\n },\n \"pollingIntervalMillis\": + {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The amount of time the client should wait before polling again.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#liveChatMessageListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"offlineAt\": {\n \"description\": + \"The date and time when the underlying stream went offline.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"ChannelContentDetails\": {\n \"properties\": {\n \"relatedPlaylists\": + {\n \"type\": \"object\",\n \"properties\": {\n \"likes\": + {\n \"description\": \"The ID of the playlist that contains the + channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\",\n \"type\": \"string\"\n + \ },\n \"uploads\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the playlist that contains the + channel\\\"s uploaded videos. Use the videos.insert method to upload new videos + and the videos.delete method to delete previously uploaded videos.\"\n },\n + \ \"watchLater\": {\n \"description\": \"The ID of + the playlist that contains the channel\\\"s watch later playlist. Use the + playlistItems.insert and playlistItems.delete to add or remove items from + that list.\",\n \"type\": \"string\"\n },\n \"favorites\": + {\n \"description\": \"The ID of the playlist that contains the + channel\\\"s favorite videos. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\",\n \"type\": \"string\"\n + \ },\n \"watchHistory\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the playlist that contains the + channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\"\n }\n }\n }\n + \ },\n \"description\": \"Details about the content of a channel.\",\n + \ \"id\": \"ChannelContentDetails\",\n \"type\": \"object\"\n },\n + \ \"Entity\": {\n \"properties\": {\n \"typeId\": {\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n + \ },\n \"url\": {\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"Entity\",\n \"type\": \"object\"\n },\n + \ \"LiveStreamSnippet\": {\n \"type\": \"object\",\n \"properties\": + {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that is transmitting + the stream.\"\n },\n \"title\": {\n \"description\": + \"The stream's title. The value must be between 1 and 128 characters long.\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"isDefaultStream\": {\n + \ \"type\": \"boolean\"\n },\n \"publishedAt\": {\n + \ \"format\": \"date-time\",\n \"description\": \"The date + and time that the stream was created.\",\n \"type\": \"string\"\n + \ },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The stream's description. The value cannot be + longer than 10000 characters.\"\n }\n },\n \"id\": \"LiveStreamSnippet\"\n + \ },\n \"PlaylistItem\": {\n \"type\": \"object\",\n \"properties\": + {\n \"contentDetails\": {\n \"description\": \"The contentDetails + object is included in the resource if the included item is a YouTube video. + The object contains additional information about the video.\",\n \"$ref\": + \"PlaylistItemContentDetails\"\n },\n \"kind\": {\n \"default\": + \"youtube#playlistItem\",\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"status\": {\n \"description\": \"The status object contains + information about the playlist item's privacy status.\",\n \"$ref\": + \"PlaylistItemStatus\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the playlist item.\"\n },\n \"snippet\": {\n \"$ref\": + \"PlaylistItemSnippet\",\n \"description\": \"The snippet object + contains basic details about the playlist item, such as its title and position + in the playlist.\"\n }\n },\n \"description\": \"A *playlistItem* + resource identifies another resource, such as a video, that is included in + a playlist. In addition, the playlistItem resource contains details about + the included resource that pertain specifically to how that resource is used + in that playlist. YouTube uses playlists to identify special collections of + videos for a channel, such as: - uploaded videos - favorite videos - positively + rated (liked) videos - watch history - watch later To be more specific, these + lists are associated with a channel, which is a collection of a person, group, + or company's videos, playlists, and other YouTube information. You can retrieve + the playlist IDs for each of these lists from the channel resource for a given + channel. You can then use the playlistItems.list method to retrieve any of + those lists. You can also add or remove items from those lists by calling + the playlistItems.insert and playlistItems.delete methods. For example, if + a user gives a positive rating to a video, you would insert that video into + the liked videos playlist for that user's channel.\",\n \"id\": \"PlaylistItem\"\n + \ },\n \"ActivityContentDetails\": {\n \"description\": \"Details + about the content of an activity: the video that was shared, the channel that + was subscribed to, etc.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetails\",\n + \ \"properties\": {\n \"subscription\": {\n \"description\": + \"The subscription object contains information about a channel that a user + subscribed to. This property is only present if the snippet.type is subscription.\",\n + \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"promotedItem\": + {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n \"description\": + \"The promotedItem object contains details about a resource which is being + promoted. This property is only present if the snippet.type is promotedItem.\"\n + \ },\n \"channelItem\": {\n \"description\": \"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.\",\n \"$ref\": + \"ActivityContentDetailsChannelItem\"\n },\n \"favorite\": {\n + \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsFavorite\"\n + \ },\n \"upload\": {\n \"description\": \"The upload + object contains information about the uploaded video. This property is only + present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n + \ },\n \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n + \ \"description\": \"The playlistItem object contains information + about a new playlist item. This property is only present if the snippet.type + is playlistItem.\"\n },\n \"comment\": {\n \"$ref\": + \"ActivityContentDetailsComment\",\n \"description\": \"The comment + object contains information about a resource that received a comment. This + property is only present if the snippet.type is comment.\"\n },\n \"like\": + {\n \"$ref\": \"ActivityContentDetailsLike\",\n \"description\": + \"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.\"\n + \ },\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n + \ \"description\": \"The bulletin object contains details about a + channel bulletin post. This object is only present if the snippet.type is + bulletin.\"\n },\n \"social\": {\n \"description\": + \"The social object contains details about a social network post. This property + is only present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n + \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n + \ \"description\": \"The recommendation object contains information + about a recommended resource. This property is only present if the snippet.type + is recommendation.\"\n }\n }\n },\n \"Comment\": {\n \"description\": + \"A *comment* represents a single YouTube comment.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the comment.\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the comment.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#comment\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#comment\\\".\"\n }\n },\n \"id\": + \"Comment\"\n },\n \"RelatedEntity\": {\n \"properties\": {\n \"entity\": + {\n \"$ref\": \"Entity\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"RelatedEntity\"\n },\n \"VideoRecordingDetails\": {\n + \ \"id\": \"VideoRecordingDetails\",\n \"properties\": {\n \"locationDescription\": + {\n \"description\": \"The text description of the location where + the video was recorded.\",\n \"type\": \"string\"\n },\n \"location\": + {\n \"description\": \"The geolocation information associated with + the video.\",\n \"$ref\": \"GeoPoint\"\n },\n \"recordingDate\": + {\n \"format\": \"date-time\",\n \"description\": \"The + date and time when the video was recorded.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Recording information associated + with the video.\",\n \"type\": \"object\"\n },\n \"GeoPoint\": + {\n \"properties\": {\n \"altitude\": {\n \"description\": + \"Altitude above the reference ellipsoid, in meters.\",\n \"format\": + \"double\",\n \"type\": \"number\"\n },\n \"longitude\": + {\n \"format\": \"double\",\n \"type\": \"number\",\n \"description\": + \"Longitude in degrees.\"\n },\n \"latitude\": {\n \"format\": + \"double\",\n \"description\": \"Latitude in degrees.\",\n \"type\": + \"number\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"GeoPoint\",\n \"description\": \"Geographical coordinates of a point, + in WGS84.\"\n },\n \"PropertyValue\": {\n \"properties\": {\n \"property\": + {\n \"description\": \"A property.\",\n \"type\": \"string\"\n + \ },\n \"value\": {\n \"type\": \"string\",\n \"description\": + \"The property's value.\"\n }\n },\n \"type\": \"object\",\n + \ \"description\": \"A pair Property / Value.\",\n \"id\": \"PropertyValue\"\n + \ },\n \"LanguageTag\": {\n \"properties\": {\n \"value\": + {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LanguageTag\"\n },\n \"LiveStreamContentDetails\": {\n + \ \"description\": \"Detailed settings of a stream.\",\n \"type\": + \"object\",\n \"id\": \"LiveStreamContentDetails\",\n \"properties\": + {\n \"isReusable\": {\n \"type\": \"boolean\",\n \"description\": \"Indicates whether the stream is reusable, which means that it can be bound to multiple broadcasts. It is common for broadcasters to reuse the same stream for many different broadcasts if those broadcasts occur at different times. @@ -780,84 +664,424 @@ interactions: does not list non-reusable streams if you call the method and set the mine parameter to true. The only way to use that method to retrieve the resource for a non-reusable stream is to use the id parameter to identify the stream. - \"\n }\n }\n },\n \"ChannelContentDetails\": {\n \"id\": - \"ChannelContentDetails\",\n \"type\": \"object\",\n \"description\": - \"Details about the content of a channel.\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"properties\": {\n \"watchLater\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\",\n \"type\": \"string\"\n },\n \"uploads\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s uploaded videos. Use the videos.insert method to upload new videos - and the videos.delete method to delete previously uploaded videos.\",\n \"type\": - \"string\"\n },\n \"watchHistory\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"favorites\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s favorite videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"likes\": {\n \"description\": \"The - ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n - \ }\n }\n },\n \"ChannelStatistics\": {\n \"type\": - \"object\",\n \"properties\": {\n \"subscriberCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of subscribers that the channel has.\"\n },\n \"viewCount\": - {\n \"description\": \"The number of times the channel has been viewed.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"commentCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of comments for the channel.\"\n - \ },\n \"hiddenSubscriberCount\": {\n \"description\": - \"Whether or not the number of subscribers is shown for this user.\",\n \"type\": - \"boolean\"\n },\n \"videoCount\": {\n \"description\": - \"The number of videos uploaded to the channel.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\",\n \"id\": \"ChannelStatistics\"\n },\n \"CaptionListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \"\n },\n \"closedCaptionsIngestionUrl\": {\n \"type\": + \"string\",\n \"description\": \"The ingestion URL where the closed + captions of this stream are sent.\"\n }\n }\n },\n \"Subscription\": + {\n \"type\": \"object\",\n \"description\": \"A *subscription* + resource contains information about a YouTube user subscription. A subscription + notifies a user when new videos are added to a channel or when another user + takes one of several actions on YouTube, such as uploading a video, rating + a video, or commenting on a video.\",\n \"properties\": {\n \"snippet\": + {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": + \"The snippet object contains basic details about the subscription, including + its title and the channel that the user subscribed to.\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#subscription\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#subscription\\\".\"\n },\n \"contentDetails\": + {\n \"$ref\": \"SubscriptionContentDetails\",\n \"description\": + \"The contentDetails object contains basic statistics about the subscription.\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"subscriberSnippet\": {\n + \ \"$ref\": \"SubscriptionSubscriberSnippet\",\n \"description\": + \"The subscriberSnippet object contains basic details about the subscriber.\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the subscription.\"\n }\n + \ },\n \"id\": \"Subscription\"\n },\n \"VideoCategory\": {\n + \ \"id\": \"VideoCategory\",\n \"description\": \"A *videoCategory* + resource identifies a category that has been or could be associated with uploaded + videos.\",\n \"properties\": {\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the video category.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#videoCategory\",\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the video category, including its title.\",\n + \ \"$ref\": \"VideoCategorySnippet\"\n }\n },\n \"type\": + \"object\"\n },\n \"CommentSnippet\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"moderationStatus\": {\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ],\n \"description\": + \"The comment's moderation status. Will not be set if the comments were requested + through the id filter.\"\n },\n \"viewerRating\": {\n \"enum\": + [\n \"none\",\n \"like\",\n \"dislike\"\n + \ ],\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The + entity is liked.\",\n \"The entity is disliked.\"\n ]\n + \ },\n \"authorProfileImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The URL for the avatar of the user who posted + the comment.\"\n },\n \"likeCount\": {\n \"format\": + \"uint32\",\n \"description\": \"The total number of likes this comment + has received.\",\n \"type\": \"integer\"\n },\n \"updatedAt\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the comment was last updated.\",\n \"format\": \"date-time\"\n + \ },\n \"textDisplay\": {\n \"description\": \"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.\",\n \"type\": + \"string\"\n },\n \"authorChannelId\": {\n \"$ref\": + \"CommentSnippetAuthorChannelId\"\n },\n \"videoId\": {\n \"description\": + \"The ID of the video the comment refers to, if any.\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time when the comment + was originally published.\",\n \"type\": \"string\"\n },\n + \ \"authorDisplayName\": {\n \"description\": \"The name of + the user who posted the comment.\",\n \"type\": \"string\"\n },\n + \ \"textOriginal\": {\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n + \ \"channelId\": {\n \"description\": \"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.\",\n \"type\": + \"string\"\n },\n \"parentId\": {\n \"type\": \"string\",\n + \ \"description\": \"The unique id of the parent comment, only set + for replies.\"\n },\n \"canRate\": {\n \"description\": + \"Whether the current viewer can rate this comment.\",\n \"type\": + \"boolean\"\n },\n \"authorChannelUrl\": {\n \"description\": + \"Link to the author's YouTube channel, if any.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"CommentSnippet\",\n \"description\": + \"Basic details about a comment, such as its author and text.\"\n },\n + \ \"ActivityContentDetailsLike\": {\n \"type\": \"object\",\n \"id\": + \"ActivityContentDetailsLike\",\n \"properties\": {\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId + object contains information that identifies the rated resource.\"\n }\n + \ },\n \"description\": \"Information about a resource that received + a positive (like) rating.\"\n },\n \"LiveStream\": {\n \"description\": + \"A live stream describes a live ingestion point.\",\n \"type\": \"object\",\n + \ \"id\": \"LiveStream\",\n \"properties\": {\n \"status\": + {\n \"$ref\": \"LiveStreamStatus\",\n \"description\": \"The + status object contains information about live stream's status.\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the stream, including its channel, title, and description.\",\n + \ \"$ref\": \"LiveStreamSnippet\"\n },\n \"contentDetails\": + {\n \"$ref\": \"LiveStreamContentDetails\",\n \"description\": + \"The content_details object contains information about the stream, including + the closed captions ingestion URL.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#liveStream\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube assigns + to uniquely identify the stream.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveStreams.update\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"cdn\": {\n \"$ref\": + \"CdnSettings\",\n \"description\": \"The cdn object defines the + live stream's content delivery network (CDN) settings. These settings provide + details about the manner in which you stream your content to YouTube.\"\n + \ }\n }\n },\n \"MemberListResponse\": {\n \"properties\": + {\n \"kind\": {\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n + \ \"default\": \"youtube#memberListResponse\",\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"items\": {\n \"description\": + \"A list of members that match the request criteria.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Member\"\n }\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": + \"MemberListResponse\",\n \"type\": \"object\"\n },\n \"AbuseReport\": + {\n \"id\": \"AbuseReport\",\n \"type\": \"object\",\n \"properties\": + {\n \"subject\": {\n \"$ref\": \"Entity\"\n },\n \"description\": + {\n \"type\": \"string\"\n },\n \"abuseTypes\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"AbuseType\"\n }\n },\n \"relatedEntities\": {\n \"items\": + {\n \"$ref\": \"RelatedEntity\"\n },\n \"type\": + \"array\"\n }\n }\n },\n \"PlaylistListResponse\": {\n \"id\": + \"PlaylistListResponse\",\n \"properties\": {\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#playlistListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"description\": \"A list of + playlists that match the request criteria\",\n \"items\": {\n \"$ref\": + \"Playlist\"\n }\n }\n },\n \"type\": \"object\"\n + \ },\n \"I18nLanguage\": {\n \"properties\": {\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the i18n language.\"\n },\n \"snippet\": + {\n \"$ref\": \"I18nLanguageSnippet\",\n \"description\": + \"The snippet object contains basic details about the i18n language, such + as language code and human-readable name.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#i18nLanguage\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"An + *i18nLanguage* resource identifies a UI language currently supported by YouTube.\",\n + \ \"id\": \"I18nLanguage\"\n },\n \"VideoFileDetails\": {\n \"properties\": + {\n \"fileName\": {\n \"description\": \"The uploaded file's + name. This field is present whether a video file or another type of file was + uploaded.\",\n \"type\": \"string\"\n },\n \"durationMs\": + {\n \"format\": \"uint64\",\n \"description\": \"The length + of the uploaded video in milliseconds.\",\n \"type\": \"string\"\n + \ },\n \"audioStreams\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n + \ },\n \"description\": \"A list of audio streams contained + in the uploaded video file. Each item in the list contains detailed metadata + about an audio stream.\"\n },\n \"fileSize\": {\n \"description\": + \"The uploaded file's size in bytes. This field is present whether a video + file or another type of file was uploaded.\",\n \"format\": \"uint64\",\n + \ \"type\": \"string\"\n },\n \"bitrateBps\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The uploaded video file's combined (video and audio) bitrate in bits per + second.\"\n },\n \"creationTime\": {\n \"description\": + \"The date and time when the uploaded video file was created. The value is + specified in ISO 8601 format. Currently, the following ISO 8601 formats are + supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time + with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n + \ },\n \"fileType\": {\n \"enumDescriptions\": [\n \"Known + video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an + MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive + file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., + MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n + \ \"description\": \"The uploaded file's type as detected by YouTube's + video processing engine. Currently, YouTube only processes video files, but + this field is present whether a video file or another type of file was uploaded.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"video\",\n + \ \"audio\",\n \"image\",\n \"archive\",\n + \ \"document\",\n \"project\",\n \"other\"\n + \ ]\n },\n \"videoStreams\": {\n \"description\": + \"A list of video streams contained in the uploaded video file. Each item + in the list contains detailed metadata about a video stream.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n + \ }\n },\n \"container\": {\n \"type\": \"string\",\n + \ \"description\": \"The uploaded video file's container format.\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Describes + original video file properties, including technical details about audio and + video streams, but also metadata information like content length, digitization + time, or geotagging information.\",\n \"id\": \"VideoFileDetails\"\n + \ },\n \"LiveChatMessage\": {\n \"id\": \"LiveChatMessage\",\n \"description\": + \"A *liveChatMessage* resource represents a chat message in a YouTube Live + Chat.\",\n \"type\": \"object\",\n \"properties\": {\n \"authorDetails\": + {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n \"description\": + \"The authorDetails object contains basic details about the user that posted + this message.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the message.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveChatMessage\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\"\n },\n \"eventId\": + resource.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"I18nRegionSnippet\": {\n \"description\": \"Basic details about + an i18n region, such as region code and human-readable name.\",\n \"type\": + \"object\",\n \"id\": \"I18nRegionSnippet\",\n \"properties\": {\n + \ \"name\": {\n \"description\": \"The human-readable name + of the region.\",\n \"type\": \"string\"\n },\n \"gl\": + {\n \"type\": \"string\",\n \"description\": \"The region + code as a 2-letter ISO country code.\"\n }\n }\n },\n \"PlaylistStatus\": + {\n \"id\": \"PlaylistStatus\",\n \"properties\": {\n \"privacyStatus\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"public\",\n \"unlisted\",\n \"private\"\n + \ ],\n \"description\": \"The playlist's privacy status.\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"ChannelBannerResource\": + {\n \"id\": \"ChannelBannerResource\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#channelBannerResource\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#channelBannerResource\\\".\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n + \ },\n \"url\": {\n \"type\": \"string\",\n \"description\": + \"The URL of this banner image.\"\n }\n },\n \"description\": + \"A channel banner returned as the response to a channel_banner.insert call.\"\n + \ },\n \"LiveChatFanFundingEventDetails\": {\n \"id\": \"LiveChatFanFundingEventDetails\",\n + \ \"properties\": {\n \"amountDisplayString\": {\n \"description\": + \"A rendered string that displays the fund amount and currency to the user.\",\n + \ \"type\": \"string\"\n },\n \"userComment\": {\n \"description\": + \"The comment added by the user to this fan funding event.\",\n \"type\": + \"string\"\n },\n \"amountMicros\": {\n \"description\": + \"The amount of the fund.\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n },\n \"currency\": {\n \"description\": + \"The currency in which the fund was made.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"SuperChatEvent\": + {\n \"properties\": {\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#superChatEvent\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n + \ },\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n + \ \"description\": \"The `snippet` object contains basic details about + the Super Chat event.\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube assigns to uniquely identify the Super Chat event.\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube + channel.\",\n \"type\": \"object\",\n \"id\": \"SuperChatEvent\"\n + \ },\n \"LiveBroadcastListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveBroadcastListResponse\",\n \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Caption\"\n },\n \"description\": \"A list of captions - that match the request criteria.\"\n }\n },\n \"id\": \"CaptionListResponse\",\n - \ \"type\": \"object\"\n },\n \"PlaylistListResponse\": {\n \"id\": - \"PlaylistListResponse\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"default\": \"youtube#playlistListResponse\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of playlists that match the request - criteria\",\n \"items\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveStreamConfigurationIssue\": {\n \"type\": - \"object\",\n \"properties\": {\n \"severity\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"description\": \"How severe this issue is to the - stream.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The long-form - description of the issue and how to resolve it.\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + EventId of the request which produced this response.\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"pageInfo\": {\n \"description\": \"General + pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n + \ \"default\": \"youtube#liveBroadcastListResponse\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n + \ \"description\": \"A list of broadcasts that match the request criteria.\",\n + \ \"items\": {\n \"$ref\": \"LiveBroadcast\"\n }\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n }\n }\n },\n \"ImageSettings\": {\n \"id\": + \"ImageSettings\",\n \"description\": \"Branding properties for images + associated with the channel.\",\n \"properties\": {\n \"bannerTvMediumImageUrl\": + {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n + \ \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size extra high resolution (2560x424).\"\n },\n \"trackingImageUrl\": + {\n \"description\": \"The URL for a 1px by 1px tracking pixel that + can be used to collect statistics for views of the channel or video pages.\",\n + \ \"type\": \"string\"\n },\n \"bannerTvImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size extra high resolution (2120x1192).\"\n },\n \"bannerTabletImageUrl\": + {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n + \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The URL for the 640px by 70px banner image that appears below the video + player in the default view of the video watch page. The URL for the image + that appears above the top-left corner of the video player. This is a 25-pixel-high + image with a flexible width that cannot exceed 170 pixels.\"\n },\n + \ \"bannerMobileImageUrl\": {\n \"type\": \"string\",\n \"description\": + \"Banner image. Mobile size (640x175).\"\n },\n \"bannerTabletLowImageUrl\": + {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n + \ \"type\": \"string\"\n },\n \"backgroundImageUrl\": + {\n \"description\": \"The URL for the background image shown on + the video watch page. The image should be 1200px by 615px, with a maximum + file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n + \ \"bannerMobileHdImageUrl\": {\n \"type\": \"string\",\n \"description\": + \"Banner image. Mobile size high resolution (1280x360).\"\n },\n \"bannerTvHighImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size high resolution (1920x1080).\"\n },\n \"bannerMobileMediumHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size medium/high resolution (960x263).\"\n },\n \"largeBrandedBannerImageImapScript\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The image map script for the large banner image.\"\n },\n \"smallBrandedBannerImageImapScript\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The image map script for the small banner image.\"\n },\n \"bannerTvLowImageUrl\": + {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n + \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The URL for the 854px by 70px image that appears below the video player + in the expanded video view of the video watch page.\"\n },\n \"bannerMobileLowImageUrl\": + {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n + \ \"type\": \"string\"\n },\n \"bannerImageUrl\": {\n + \ \"type\": \"string\",\n \"description\": \"Banner image. + Desktop size (1060x175).\"\n },\n \"bannerExternalUrl\": {\n + \ \"type\": \"string\",\n \"description\": \"This is generated + when a ChannelBanner.Insert request has succeeded for the given channel.\"\n + \ },\n \"bannerTabletHdImageUrl\": {\n \"description\": + \"Banner image. Tablet size high resolution (2276x377).\",\n \"type\": + \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": {\n \"description\": + \"Banner image. Mobile size high resolution (1440x395).\",\n \"type\": + \"string\"\n },\n \"watchIconImageUrl\": {\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"PlaylistItemContentDetails\": + {\n \"id\": \"PlaylistItemContentDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + a video. To retrieve the video resource, set the id query parameter to this + value in your API request.\"\n },\n \"endAt\": {\n \"type\": + \"string\",\n \"description\": \"The time, measured in seconds from + the start of the video, when the video should stop playing. (The playlist + owner can specify the times when the video should start and stop playing when + the video is played in the context of the playlist.) By default, assume that + the video.endTime is the end of the video.\"\n },\n \"videoPublishedAt\": + {\n \"description\": \"The date and time that the video was published + to YouTube.\",\n \"format\": \"date-time\",\n \"type\": + \"string\"\n },\n \"startAt\": {\n \"description\": + \"The time, measured in seconds from the start of the video, when the video + should start playing. (The playlist owner can specify the times when the video + should start and stop playing when the video is played in the context of the + playlist.) The default value is 0.\",\n \"type\": \"string\"\n },\n + \ \"note\": {\n \"description\": \"A user-generated note for + this item.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"SubscriptionListResponse\": {\n \"type\": \"object\",\n \"id\": + \"SubscriptionListResponse\",\n \"properties\": {\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"nextPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the next page + in the result set.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n + \ \"default\": \"youtube#subscriptionListResponse\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n + \ \"description\": \"A list of subscriptions that match the request + criteria.\",\n \"items\": {\n \"$ref\": \"Subscription\"\n + \ }\n },\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\"\n }\n }\n },\n \"PlaylistContentDetails\": + {\n \"id\": \"PlaylistContentDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"itemCount\": {\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"description\": \"The number + of videos in the playlist.\"\n }\n }\n },\n \"CommentThreadReplies\": + {\n \"description\": \"Comments written in (direct or indirect) reply + to the top level comment.\",\n \"properties\": {\n \"comments\": + {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n + \ \"type\": \"array\",\n \"description\": \"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.\"\n }\n },\n \"id\": \"CommentThreadReplies\",\n + \ \"type\": \"object\"\n },\n \"LiveChatNewSponsorDetails\": {\n + \ \"id\": \"LiveChatNewSponsorDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"memberLevelName\": {\n \"description\": + \"The name of the Level that the viewer just had joined. The Level names are + defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\",\n \"type\": \"string\"\n },\n + \ \"isUpgrade\": {\n \"type\": \"boolean\",\n \"description\": + \"If the viewer just had upgraded from a lower level. For viewers that were + not members at the time of purchase, this field is false.\"\n }\n }\n + \ },\n \"LocalizedProperty\": {\n \"type\": \"object\",\n \"id\": + \"LocalizedProperty\",\n \"properties\": {\n \"localized\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"LocalizedString\"\n }\n },\n \"defaultLanguage\": + {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The + language of the default property.\"\n },\n \"default\": {\n + \ \"type\": \"string\"\n }\n }\n },\n \"LiveStreamConfigurationIssue\": + {\n \"properties\": {\n \"severity\": {\n \"enum\": [\n + \ \"info\",\n \"warning\",\n \"error\"\n ],\n + \ \"description\": \"How severe this issue is to the stream.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"description\": {\n \"description\": \"The long-form description + of the issue and how to resolve it.\",\n \"type\": \"string\"\n },\n + \ \"type\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n @@ -865,1329 +1089,821 @@ interactions: \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n - \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n - \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n - \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n - \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n - \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The kind of error happening.\"\n },\n \"reason\": {\n \"description\": - \"The short-form reason for this issue.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveStreamConfigurationIssue\"\n },\n - \ \"I18nRegionSnippet\": {\n \"type\": \"object\",\n \"id\": \"I18nRegionSnippet\",\n - \ \"description\": \"Basic details about an i18n region, such as region - code and human-readable name.\",\n \"properties\": {\n \"name\": - {\n \"description\": \"The human-readable name of the region.\",\n - \ \"type\": \"string\"\n },\n \"gl\": {\n \"type\": - \"string\",\n \"description\": \"The region code as a 2-letter ISO - country code.\"\n }\n }\n },\n \"SearchListResponse\": {\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#searchListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"Pagination - information for token pagination.\",\n \"items\": {\n \"$ref\": - \"SearchResult\"\n },\n \"type\": \"array\"\n },\n - \ \"regionCode\": {\n \"type\": \"string\"\n },\n \"etag\": + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n + \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n + \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n + \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n + \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n + \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n + \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n + \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n + \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n + \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n + \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n + \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n + \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n + \ \"videoIngestionFasterThanRealtime\"\n ],\n \"description\": + \"The kind of error happening.\"\n },\n \"reason\": {\n \"type\": + \"string\",\n \"description\": \"The short-form reason for this issue.\"\n + \ }\n },\n \"id\": \"LiveStreamConfigurationIssue\",\n \"type\": + \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"type\": + \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"properties\": + {\n \"associatedMembershipGiftingMessageId\": {\n \"description\": + \"The ID of the membership gifting message that is related to this gift membership. + This ID will always refer to a message whose type is 'membershipGiftingEvent'.\",\n + \ \"type\": \"string\"\n },\n \"gifterChannelId\": {\n + \ \"type\": \"string\",\n \"description\": \"The ID of the + user that made the membership gifting purchase. This matches the `snippet.authorChannelId` + of the associated membership gifting message.\"\n },\n \"memberLevelName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` + of the associated membership gifting message. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\"\n }\n }\n },\n \"LiveBroadcastSnippet\": + {\n \"type\": \"object\",\n \"description\": \"Basic broadcast information.\",\n + \ \"id\": \"LiveBroadcastSnippet\",\n \"properties\": {\n \"title\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"The broadcast's title. Note that the broadcast + represents exactly one YouTube video. You can set this field by modifying + the broadcast resource or by setting the title field of the corresponding + video resource.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel that is publishing the broadcast.\"\n + \ },\n \"description\": {\n \"description\": \"The broadcast's + description. As with the title, you can set this field by modifying the broadcast + resource or by setting the description field of the corresponding video resource.\",\n + \ \"type\": \"string\"\n },\n \"actualStartTime\": {\n + \ \"description\": \"The date and time that the broadcast actually + started. This information is only available once the broadcast's state is + live.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n + \ },\n \"isDefaultBroadcast\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Indicates whether this broadcast is the default + broadcast. Internal only.\"\n },\n \"publishedAt\": {\n \"type\": + \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the broadcast was added to YouTube's live broadcast + schedule.\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the broadcast. For each nested + object in this object, the key is the name of the thumbnail image, and the + value is an object that contains other information about the thumbnail.\",\n + \ \"$ref\": \"ThumbnailDetails\"\n },\n \"scheduledStartTime\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"The date and time that the broadcast is scheduled + to start.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n + \ },\n \"scheduledEndTime\": {\n \"description\": \"The + date and time that the broadcast is scheduled to end.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"liveChatId\": + {\n \"type\": \"string\",\n \"description\": \"The id of + the live chat for this broadcast.\"\n },\n \"actualEndTime\": + {\n \"format\": \"date-time\",\n \"description\": \"The + date and time that the broadcast actually ended. This information is only + available once the broadcast's state is complete.\",\n \"type\": + \"string\"\n }\n }\n },\n \"ActivityContentDetailsSocial\": + {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsSocial\",\n + \ \"description\": \"Details about a social network post.\",\n \"properties\": + {\n \"referenceUrl\": {\n \"description\": \"The URL of the + social network post.\",\n \"type\": \"string\"\n },\n \"author\": + {\n \"type\": \"string\",\n \"description\": \"The author + of the social network post.\"\n },\n \"imageUrl\": {\n \"type\": + \"string\",\n \"description\": \"An image of the post's author.\"\n + \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The name of the social network.\",\n + \ \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n + \ \"facebook\",\n \"twitter\"\n ]\n },\n + \ \"resourceId\": {\n \"description\": \"The resourceId object + encapsulates information that identifies the resource associated with a social + network post.\",\n \"$ref\": \"ResourceId\"\n }\n }\n + \ },\n \"PageInfo\": {\n \"description\": \"Paging details for lists + of resources, including total number of items available and number of resources + returned in a single page.\",\n \"type\": \"object\",\n \"properties\": + {\n \"resultsPerPage\": {\n \"type\": \"integer\",\n \"format\": + \"int32\",\n \"description\": \"The number of results included in + the API response.\"\n },\n \"totalResults\": {\n \"description\": + \"The total number of results in the result set.\",\n \"type\": \"integer\",\n + \ \"format\": \"int32\"\n }\n },\n \"id\": \"PageInfo\"\n + \ },\n \"ThumbnailDetails\": {\n \"properties\": {\n \"maxres\": + {\n \"description\": \"The maximum resolution quality image for this + resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"standard\": + {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The standard + quality image for this resource.\"\n },\n \"medium\": {\n \"$ref\": + \"Thumbnail\",\n \"description\": \"The medium quality image for + this resource.\"\n },\n \"default\": {\n \"description\": + \"The default image for this resource.\",\n \"$ref\": \"Thumbnail\"\n + \ },\n \"high\": {\n \"$ref\": \"Thumbnail\",\n \"description\": + \"The high quality image for this resource.\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"Internal representation of thumbnails + for a YouTube resource.\",\n \"id\": \"ThumbnailDetails\"\n },\n \"LiveChatBan\": + {\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the ban.\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"default\": + \"youtube#liveChatBan\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"snippet\": {\n \"description\": \"The `snippet` object + contains basic details about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n + \ }\n },\n \"id\": \"LiveChatBan\",\n \"type\": \"object\",\n + \ \"description\": \"A `__liveChatBan__` resource represents a ban for + a YouTube live chat.\"\n },\n \"SubscriptionSnippet\": {\n \"description\": + \"Basic details about a subscription, including title, description and thumbnails + of the subscribed item.\",\n \"type\": \"object\",\n \"id\": \"SubscriptionSnippet\",\n + \ \"properties\": {\n \"description\": {\n \"description\": + \"The subscription's details.\",\n \"type\": \"string\"\n },\n + \ \"title\": {\n \"description\": \"The subscription's title.\",\n + \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images + associated with the video. 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.\"\n },\n \"publishedAt\": {\n \"type\": + \"string\",\n \"description\": \"The date and time that the subscription + was created.\",\n \"format\": \"date-time\"\n },\n \"resourceId\": + {\n \"description\": \"The id object contains information about the + channel that the user subscribed to.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.subscriptions.insert\"\n ]\n },\n + \ \"$ref\": \"ResourceId\"\n },\n \"channelTitle\": + {\n \"description\": \"Channel title for the channel that the subscription + belongs to.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the subscriber's channel.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"SuperChatEventListResponse\": {\n \"properties\": + {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": + \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"SearchListResponse\"\n - \ },\n \"VideoListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"items\": {\n \"items\": {\n \"$ref\": \"Video\"\n - \ },\n \"type\": \"array\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"prevPageToken\": {\n \"description\": + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"SuperChatEvent\"\n },\n \"description\": \"A list of Super + Chat purchases that match the request criteria.\"\n },\n \"kind\": + {\n \"default\": \"youtube#superChatEventListResponse\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"SuperChatEventListResponse\"\n + \ },\n \"ActivityContentDetailsRecommendation\": {\n \"id\": \"ActivityContentDetailsRecommendation\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"reason\": + {\n \"enum\": [\n \"reasonUnspecified\",\n \"videoFavorited\",\n + \ \"videoLiked\",\n \"videoWatched\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The reason that the resource is recommended to + the user.\"\n },\n \"seedResourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The seedResourceId object contains + information about the resource that caused the recommendation.\"\n },\n + \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the recommended + resource.\"\n }\n },\n \"description\": \"Information that + identifies the recommended resource.\"\n },\n \"ActivityContentDetailsBulletin\": + {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsBulletin\",\n + \ \"description\": \"Details about a channel bulletin post.\",\n \"properties\": + {\n \"resourceId\": {\n \"description\": \"The resourceId + object contains information that identifies the resource associated with a + bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": + \"ResourceId\"\n }\n }\n },\n \"CommentSnippetAuthorChannelId\": + {\n \"type\": \"object\",\n \"properties\": {\n \"value\": + {\n \"type\": \"string\"\n }\n },\n \"description\": + \"The id of the author's YouTube channel, if any.\",\n \"id\": \"CommentSnippetAuthorChannelId\"\n + \ },\n \"PlaylistSnippet\": {\n \"properties\": {\n \"description\": + {\n \"description\": \"The playlist's description.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"description\": \"The + playlist's title.\",\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.playlists.insert\",\n + \ \"youtube.playlists.update\"\n ]\n }\n },\n + \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": + \"The channel title of the channel that the video belongs to.\"\n },\n + \ \"localized\": {\n \"description\": \"Localized title and + description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n + \ },\n \"channelId\": {\n \"description\": \"The ID + that YouTube uses to uniquely identify the channel that published the playlist.\",\n + \ \"type\": \"string\"\n },\n \"tags\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"Keyword tags associated with the playlist.\"\n + \ },\n \"publishedAt\": {\n \"description\": \"The date + and time that the playlist was created.\",\n \"type\": \"string\",\n + \ \"format\": \"date-time\"\n },\n \"thumbnailVideoId\": + {\n \"description\": \"Note: if the playlist has a custom thumbnail, + this field will not be populated. The video id selected by the user that will + be used as the thumbnail of this playlist. This field defaults to the first + publicly viewable video in the playlist, if: 1. The user has never selected + a video to be the thumbnail of the playlist. 2. The user selects a video to + be the thumbnail, and then removes that video from the playlist. 3. The user + selects a non-owned video to be the thumbnail, but that video becomes private, + or gets deleted.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": + {\n \"description\": \"The language of the playlist's default title + and description.\",\n \"type\": \"string\"\n },\n \"thumbnails\": + {\n \"description\": \"A map of thumbnail images associated with + the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n }\n },\n + \ \"description\": \"Basic details about a playlist, including title, + description and thumbnails.\",\n \"type\": \"object\",\n \"id\": + \"PlaylistSnippet\"\n },\n \"LiveChatMembershipGiftingDetails\": {\n + \ \"properties\": {\n \"giftMembershipsCount\": {\n \"format\": + \"int32\",\n \"description\": \"The number of gift memberships purchased + by the user.\",\n \"type\": \"integer\"\n },\n \"giftMembershipsLevelName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the level of the gift memberships purchased by the user. The Level names + are defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\"\n }\n },\n \"id\": \"LiveChatMembershipGiftingDetails\",\n + \ \"type\": \"object\"\n },\n \"ThirdPartyLink\": {\n \"type\": + \"object\",\n \"properties\": {\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource\"\n },\n + \ \"snippet\": {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n \"description\": + \"The snippet object contains basic details about the third- party account + link.\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n + \ \"default\": \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n + \ },\n \"status\": {\n \"description\": \"The status + object contains information about the status of the link.\",\n \"$ref\": + \"ThirdPartyLinkStatus\"\n },\n \"linkingToken\": {\n \"type\": + \"string\",\n \"description\": \"The linking_token identifies a YouTube + account and channel with which the third party account is linked.\"\n }\n + \ },\n \"description\": \"A *third party account link* resource represents + a link between a YouTube account or a channel and an account on a third-party + service.\",\n \"id\": \"ThirdPartyLink\"\n },\n \"PlaylistItemListResponse\": + {\n \"properties\": {\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"nextPageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the next page + in the result set.\"\n },\n \"etag\": {\n \"type\": + \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#playlistItemListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". + Etag of this resource.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"description\": \"A list of playlist items that match + the request criteria.\",\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n + \ }\n },\n \"prevPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoListResponse\"\n },\n - \ \"IngestionInfo\": {\n \"type\": \"object\",\n \"description\": - \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n - \ \"properties\": {\n \"ingestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The primary ingestion URL that you - should use to stream video to YouTube. You must stream video to this URL. - Depending on which application or tool you use to encode your video stream, - you may need to enter the stream URL and stream name separately or you may - need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \"\n },\n \"rtmpsIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of backupIngestionAddress in order - to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": - \"string\"\n },\n \"streamName\": {\n \"type\": \"string\",\n - \ \"description\": \"The stream name that YouTube assigns to the video - stream.\"\n },\n \"backupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The backup ingestion URL that you - should use to stream video to YouTube. You have the option of simultaneously - streaming the content that you are sending to the ingestionAddress to this - URL.\"\n }\n },\n \"id\": \"IngestionInfo\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"id\": \"ThirdPartyLinkListResponse\",\n \"properties\": {\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelBrandingSettings\": - {\n \"properties\": {\n \"image\": {\n \"$ref\": \"ImageSettings\",\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n }\n },\n \"id\": \"PlaylistItemListResponse\",\n + \ \"type\": \"object\"\n },\n \"ChannelProfileDetails\": {\n \"id\": + \"ChannelProfileDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The YouTube channel ID.\"\n },\n \"channelUrl\": {\n \"description\": + \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"profileImageUrl\": + {\n \"description\": \"The channels's avatar URL.\",\n \"type\": + \"string\"\n },\n \"displayName\": {\n \"description\": + \"The channel's display name.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"Playlist\": {\n \"properties\": {\n \"snippet\": + {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": \"The + snippet object contains basic details about the playlist, such as its title + and description.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#playlist\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlist\\\".\"\n },\n \"player\": + {\n \"description\": \"The player object contains information that + you would use to play the playlist in an embedded player.\",\n \"$ref\": + \"PlaylistPlayer\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the playlist.\"\n },\n \"status\": {\n \"$ref\": \"PlaylistStatus\",\n + \ \"description\": \"The status object contains status information + for the playlist.\"\n },\n \"localizations\": {\n \"additionalProperties\": + {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"description\": + \"Localizations for different languages\",\n \"type\": \"object\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object contains information like video count.\",\n \"$ref\": + \"PlaylistContentDetails\"\n }\n },\n \"id\": \"Playlist\",\n + \ \"type\": \"object\",\n \"description\": \"A *playlist* resource + represents a YouTube playlist. A playlist is a collection of videos that can + be viewed sequentially and shared with other users. A playlist can contain + up to 200 videos, and YouTube does not limit the number of playlists that + each user creates. By default, playlists are publicly visible to other users, + but playlists can be public or private. YouTube also uses playlists to identify + special collections of videos for a channel, such as: - uploaded videos - + favorite videos - positively rated (liked) videos - watch history - watch + later To be more specific, these lists are associated with a channel, which + is a collection of a person, group, or company's videos, playlists, and other + YouTube information. You can retrieve the playlist IDs for each of these lists + from the channel resource for a given channel. You can then use the playlistItems.list + method to retrieve any of those lists. You can also add or remove items from + those lists by calling the playlistItems.insert and playlistItems.delete methods.\"\n + \ },\n \"SubscriptionSubscriberSnippet\": {\n \"id\": \"SubscriptionSubscriberSnippet\",\n + \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The channel ID of the subscriber.\"\n },\n + \ \"description\": {\n \"type\": \"string\",\n \"description\": + \"The description of the subscriber.\"\n },\n \"title\": {\n + \ \"description\": \"The title of the subscriber.\",\n \"type\": + \"string\"\n },\n \"thumbnails\": {\n \"description\": + \"Thumbnails for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic + details about a subscription's subscriber including title, description, channel + ID and thumbnails.\"\n },\n \"VideoProcessingDetailsProcessingProgress\": + {\n \"type\": \"object\",\n \"description\": \"Video processing + progress and completion time estimate.\",\n \"properties\": {\n \"timeLeftMs\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"An estimate of the amount of time, in millseconds, that YouTube needs to + finish processing the video.\"\n },\n \"partsProcessed\": {\n + \ \"format\": \"uint64\",\n \"description\": \"The number + of parts of the video that YouTube has already processed. You can estimate + the percentage of the video that YouTube has already processed by calculating: + 100 * parts_processed / parts_total Note that since the estimated number of + parts could increase without a corresponding increase in the number of parts + that have already been processed, it is possible that the calculated progress + could periodically decrease while YouTube processes a video.\",\n \"type\": + \"string\"\n },\n \"partsTotal\": {\n \"description\": + \"An estimate of the total number of parts that need to be processed for the + video. The number may be updated with more precise estimates while YouTube + processes the video.\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"VideoProcessingDetailsProcessingProgress\"\n + \ },\n \"VideoPlayer\": {\n \"description\": \"Player to be used + for a video playback.\",\n \"properties\": {\n \"embedHtml\": + {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e + tag that embeds a player that will play the video.\"\n },\n \"embedHeight\": + {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n + \ \"embedWidth\": {\n \"description\": \"The embed width\",\n + \ \"format\": \"int64\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"VideoPlayer\"\n },\n + \ \"ChannelBrandingSettings\": {\n \"type\": \"object\",\n \"properties\": + {\n \"hints\": {\n \"description\": \"Additional experimental + branding properties.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"PropertyValue\"\n }\n },\n \"watch\": + {\n \"$ref\": \"WatchSettings\",\n \"description\": \"Branding + properties for the watch page.\"\n },\n \"channel\": {\n \"description\": + \"Branding properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n + \ },\n \"image\": {\n \"$ref\": \"ImageSettings\",\n \ \"description\": \"Branding properties for branding images.\"\n - \ },\n \"channel\": {\n \"description\": \"Branding - properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n - \ },\n \"watch\": {\n \"description\": \"Branding properties - for the watch page.\",\n \"$ref\": \"WatchSettings\"\n },\n - \ \"hints\": {\n \"type\": \"array\",\n \"description\": - \"Additional experimental branding properties.\",\n \"items\": {\n - \ \"$ref\": \"PropertyValue\"\n }\n }\n },\n - \ \"description\": \"Branding properties of a YouTube channel.\",\n \"type\": - \"object\",\n \"id\": \"ChannelBrandingSettings\"\n },\n \"PlaylistItemListResponse\": + \ }\n },\n \"description\": \"Branding properties of a YouTube + channel.\",\n \"id\": \"ChannelBrandingSettings\"\n },\n \"CommentListResponse\": {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": + identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"description\": \"A list of comments that match the + request criteria.\",\n \"items\": {\n \"$ref\": \"Comment\"\n + \ }\n },\n \"pageInfo\": {\n \"description\": \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of playlist items that match - the request criteria.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#playlistItemListResponse\",\n + \ \"nextPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the next page + in the result set.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"PlaylistItemListResponse\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n \"description\": - \"DEPRECATED Region restriction of the video.\",\n \"properties\": {\n - \ \"blocked\": {\n \"description\": \"A list of region codes - that identify countries where the video is blocked. If this property is present - and a country is not listed in its value, then the video is viewable in that - country. If this property is present and contains an empty list, the video - is viewable in all countries.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"allowed\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of region codes - that identify countries where the video is viewable. If this property is present - and a country is not listed in its value, then the video is blocked from appearing - in that country. If this property is present and contains an empty list, the - video is blocked in all countries.\"\n }\n },\n \"type\": - \"object\"\n },\n \"MembershipsDuration\": {\n \"id\": \"MembershipsDuration\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member across all levels.\",\n \"type\": \"string\"\n },\n - \ \"memberTotalDurationMonths\": {\n \"description\": \"The - cumulative time the user has been a member across all levels in complete months - (the time is rounded down to the nearest integer).\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n }\n }\n },\n - \ \"LiveBroadcastStatistics\": {\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"totalChatCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The total - number of live chat messages currently on the broadcast. The property and - its value will be present if the broadcast is public, has the live chat feature - enabled, and has at least one message. Note that this field will not be filled - after the broadcast ends. So this property would not identify the number of - chat messages for an archived video of a completed live broadcast.\",\n \"type\": - \"string\"\n },\n \"concurrentViewers\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of viewers currently watching the broadcast. The property and its value - will be present if the broadcast has current viewers and the broadcast owner - has not hidden the viewcount for the video. Note that YouTube stops tracking - the number of concurrent viewers for a broadcast when the broadcast ends. - So, this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\"\n }\n },\n \"description\": - \"Statistics about the live broadcast. These represent a snapshot of the values - at the time of the request. Statistics are only returned for live broadcasts.\"\n - \ },\n \"ActivityContentDetailsPlaylistItem\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"Information about a new playlist item.\",\n \"properties\": {\n \"playlistId\": - {\n \"type\": \"string\",\n \"description\": \"The value - that YouTube uses to uniquely identify the playlist.\"\n },\n \"playlistItemId\": - {\n \"description\": \"ID of the item within the playlist.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\",\n \"$ref\": \"ResourceId\"\n }\n }\n - \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"properties\": - {\n \"memberMonth\": {\n \"description\": \"The total amount - of months (rounded up) the viewer has been a member that granted them this - Member Milestone Chat. This is the same number of months as is being displayed - to YouTube users.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the member to this Member Milestone Chat. This field - is empty for messages without a comment from the member.\",\n \"type\": - \"string\"\n },\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level at which the - viever is a member. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"Thumbnail\": {\n \"type\": \"object\",\n \"properties\": - {\n \"url\": {\n \"type\": \"string\",\n \"description\": - \"The thumbnail image's URL.\"\n },\n \"width\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"(Optional) Width of the thumbnail image.\"\n },\n \"height\": - {\n \"description\": \"(Optional) Height of the thumbnail image.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n }\n - \ },\n \"id\": \"Thumbnail\",\n \"description\": \"A thumbnail - is an image representing a YouTube resource.\"\n },\n \"LiveChatModerator\": - {\n \"type\": \"object\",\n \"description\": \"A *liveChatModerator* - resource represents a moderator for a YouTube live chat. A chat moderator - has the ability to ban/unban users from a chat, remove message, etc.\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveChatModerator\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ }\n },\n \"id\": \"LiveChatModerator\"\n },\n \"VideoFileDetails\": - {\n \"properties\": {\n \"durationMs\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - length of the uploaded video in milliseconds.\"\n },\n \"container\": - {\n \"type\": \"string\",\n \"description\": \"The uploaded - video file's container format.\"\n },\n \"fileType\": {\n \"enum\": - [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"type\": \"string\",\n \"description\": - \"The uploaded file's type as detected by YouTube's video processing engine. - Currently, YouTube only processes video files, but this field is present whether - a video file or another type of file was uploaded.\",\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ]\n },\n \"fileName\": {\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\",\n \"type\": \"string\"\n },\n - \ \"bitrateBps\": {\n \"format\": \"uint64\",\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\",\n \"type\": \"string\"\n },\n \"fileSize\": - {\n \"description\": \"The uploaded file's size in bytes. This field - is present whether a video file or another type of file was uploaded.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"videoStreams\": {\n \"type\": \"array\",\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n }\n },\n - \ \"audioStreams\": {\n \"description\": \"A list of audio - streams contained in the uploaded video file. Each item in the list contains - detailed metadata about an audio stream.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ }\n },\n \"creationTime\": {\n \"description\": - \"The date and time when the uploaded video file was created. The value is - specified in ISO 8601 format. Currently, the following ISO 8601 formats are - supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time - with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Describes - original video file properties, including technical details about audio and - video streams, but also metadata information like content length, digitization - time, or geotagging information.\",\n \"id\": \"VideoFileDetails\"\n - \ },\n \"LanguageTag\": {\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LanguageTag\",\n - \ \"type\": \"object\"\n },\n \"SearchResult\": {\n \"properties\": - {\n \"id\": {\n \"description\": \"The id object contains - information that can be used to uniquely identify the resource that matches - the search request.\",\n \"$ref\": \"ResourceId\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\",\n \"$ref\": \"SearchResultSnippet\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#searchResult\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ }\n },\n \"description\": \"A search result contains information - about a YouTube video, channel, or playlist that matches the search parameters - specified in an API request. While a search result points to a uniquely identifiable - resource, like a video, it does not have its own persistent data.\",\n \"type\": - \"object\",\n \"id\": \"SearchResult\"\n },\n \"MembershipsLevelSnippet\": - {\n \"properties\": {\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n },\n \"levelDetails\": {\n \"$ref\": \"LevelDetails\",\n - \ \"description\": \"Details about the pricing level.\"\n }\n - \ },\n \"id\": \"MembershipsLevelSnippet\",\n \"type\": \"object\"\n - \ },\n \"VideoStatus\": {\n \"id\": \"VideoStatus\",\n \"properties\": - {\n \"publicStatsViewable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value indicates if the extended video statistics - on the watch page can be viewed by everyone. Note that the view count, likes, - etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"failureReason\": {\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ],\n \"enumDescriptions\": [\n \"Unable to convert - video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ],\n \"description\": - \"This value explains why a video failed to upload. This property is only - present if the uploadStatus property indicates that the upload failed.\",\n - \ \"type\": \"string\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"license\": {\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ]\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"publishAt\": {\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the video is scheduled to publish. It can be set - only if the privacy status of the video is private..\"\n },\n \"rejectionReason\": - {\n \"description\": \"This value explains why YouTube rejected an - uploaded video. This property is only present if the uploadStatus property - indicates that the upload was rejected.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ]\n },\n \"privacyStatus\": {\n \"description\": - \"The video's privacy status.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n },\n \"embeddable\": - {\n \"description\": \"This value indicates if the video can be embedded - on another website. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n },\n \"uploadStatus\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"Video - has been uploaded but not processed yet.\",\n \"Video has been - successfully processed.\",\n \"Processing has failed. See FailureReason.\",\n - \ \"Video has been rejected. See RejectionReason.\",\n \"Video - has been deleted.\"\n ],\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ],\n \"description\": \"The status - of the uploaded video.\"\n }\n },\n \"description\": \"Basic - details about a video category, such as its localized title. Next Id: 18\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource associated with a bulletin post. @mutable youtube.activities.insert\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"Details about a channel bulletin post.\"\n },\n - \ \"InvideoPosition\": {\n \"description\": \"Describes the spatial - position of a visual widget inside a video. It is a union of various position - types, out of which only will be set one.\",\n \"properties\": {\n \"cornerPosition\": - {\n \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"description\": \"Defines the - position type.\",\n \"enumDescriptions\": [\n \"\"\n ],\n - \ \"enum\": [\n \"corner\"\n ],\n \"type\": - \"string\"\n }\n },\n \"id\": \"InvideoPosition\",\n \"type\": - \"object\"\n },\n \"LiveStream\": {\n \"description\": \"A live - stream describes a live ingestion point.\",\n \"type\": \"object\",\n - \ \"id\": \"LiveStream\",\n \"properties\": {\n \"contentDetails\": - {\n \"$ref\": \"LiveStreamContentDetails\",\n \"description\": - \"The content_details object contains information about the stream, including - the closed captions ingestion URL.\"\n },\n \"cdn\": {\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\",\n \"$ref\": \"CdnSettings\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\",\n - \ \"$ref\": \"LiveStreamSnippet\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the stream.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n - \ \"description\": \"The status object contains information about - live stream's status.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveStream\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n - \ }\n }\n },\n \"VideoRecordingDetails\": {\n \"type\": - \"object\",\n \"description\": \"Recording information associated with - the video.\",\n \"properties\": {\n \"locationDescription\": {\n - \ \"type\": \"string\",\n \"description\": \"The text description - of the location where the video was recorded.\"\n },\n \"recordingDate\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the video was recorded.\",\n \"format\": \"date-time\"\n - \ },\n \"location\": {\n \"description\": \"The geolocation - information associated with the video.\",\n \"$ref\": \"GeoPoint\"\n - \ }\n },\n \"id\": \"VideoRecordingDetails\"\n },\n \"I18nRegion\": - {\n \"id\": \"I18nRegion\",\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the i18n region, such as region code and human-readable - name.\",\n \"$ref\": \"I18nRegionSnippet\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the i18n region.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#i18nRegion\",\n + the fixed string \\\"youtube#commentListResponse\\\".\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"CommentListResponse\"\n },\n + \ \"Caption\": {\n \"description\": \"A *caption* resource represents + a YouTube caption track. A caption track is associated with exactly one YouTube + video.\",\n \"type\": \"object\",\n \"id\": \"Caption\",\n \"properties\": + {\n \"id\": {\n \"description\": \"The ID that YouTube uses + to uniquely identify the caption track.\",\n \"type\": \"string\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n + \ ]\n }\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#caption\"\n },\n \"snippet\": + {\n \"$ref\": \"CaptionSnippet\",\n \"description\": \"The + snippet object contains basic details about the caption.\"\n }\n }\n + \ },\n \"CommentThread\": {\n \"description\": \"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.\",\n + \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#commentThread\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegion\\\".\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A *i18nRegion* resource identifies - a region where YouTube is available.\"\n },\n \"LiveChatMessageListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n + the fixed string \\\"youtube#commentThread\\\".\",\n \"type\": \"string\"\n + \ },\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n + \ \"description\": \"The replies object contains a limited number + of replies (if any) to the top level comment found in the snippet.\"\n },\n \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"type\": - \"array\"\n },\n \"nextPageToken\": {\n \"type\": \"string\"\n - \ },\n \"pollingIntervalMillis\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The amount of time the client should wait before - polling again.\",\n \"type\": \"integer\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"offlineAt\": {\n \"description\": \"The date - and time when the underlying stream went offline.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageListResponse\"\n },\n \"MembershipsLevelListResponse\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsLevelListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of pricing levels offered by a creator - to the fans.\",\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n - \ },\n \"type\": \"array\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevelListResponse\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n }\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"id\": \"LiveChatFanFundingEventDetails\",\n - \ \"properties\": {\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"type\": \"string\",\n \"description\": \"The amount of - the fund.\",\n \"format\": \"uint64\"\n },\n \"currency\": - {\n \"description\": \"The currency in which the fund was made.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatMessage\": {\n \"id\": \"LiveChatMessage\",\n \"properties\": - {\n \"authorDetails\": {\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\",\n - \ \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatMessage\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": + \"CommentThreadSnippet\",\n \"description\": \"The snippet object + contains basic details about the comment thread and also the top level comment.\"\n \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the message.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - *liveChatMessage* resource represents a chat message in a YouTube Live Chat.\"\n - \ },\n \"VideoProcessingDetails\": {\n \"description\": \"Describes - processing status and progress and availability of some other Video resource - parts.\",\n \"id\": \"VideoProcessingDetails\",\n \"properties\": - {\n \"editorSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether video editing suggestions, - which might improve video quality or the playback experience, are available - for the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"processingProgress\": - {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n },\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n },\n - \ \"processingStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's processing status. - This value indicates whether YouTube was able to process the video or if the - video is still being processed.\"\n },\n \"processingIssuesAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether the video processing engine has generated suggestions that - might improve YouTube's ability to process the the video, warnings that explain - video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\"\n },\n \"fileDetailsAvailability\": - {\n \"description\": \"This value indicates whether file details - are available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingFailureReason\": {\n \"type\": - \"string\",\n \"description\": \"The reason that YouTube failed to - process the video. This property will only have a value if the processingStatus - property's value is failed.\",\n \"enum\": [\n \"uploadFailed\",\n - \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"tagSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether keyword (tag) - suggestions are available for the video. Tags can be added to a video's metadata - to make it easier for other users to find the video. You can retrieve these - suggestions by requesting the suggestions part in your videos.list() request.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelSectionListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelSectionListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + uses to uniquely identify the comment thread.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"CommentThread\",\n \"type\": \"object\"\n + \ },\n \"ThirdPartyLinkSnippet\": {\n \"id\": \"ThirdPartyLinkSnippet\",\n + \ \"description\": \"Basic information about a third party account link, + including its type and type-specific information.\",\n \"properties\": + {\n \"channelToStoreLink\": {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n + \ \"description\": \"Information specific to a link between a channel + and a store on a merchandising platform.\"\n },\n \"type\": + {\n \"type\": \"string\",\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"description\": + \"Type of the link named after the entities that are being linked.\",\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or about to + connect) a channel with a store on a merchandising platform in order to enable + retail commerce capabilities for that channel on YouTube.\"\n ]\n + \ }\n },\n \"type\": \"object\"\n },\n \"ChannelConversionPings\": + {\n \"description\": \"The conversionPings object encapsulates information + about conversion pings that need to be respected by the channel.\",\n \"type\": + \"object\",\n \"id\": \"ChannelConversionPings\",\n \"properties\": + {\n \"pings\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"ChannelConversionPing\"\n },\n \"description\": + \"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.\"\n }\n }\n },\n \"VideoTopicDetails\": {\n \"id\": + \"VideoTopicDetails\",\n \"description\": \"Freebase topic information + related to the video.\",\n \"properties\": {\n \"relevantTopicIds\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"Similar to topic_id, except that these topics + are merely relevant to the video. These are topics that may be mentioned in, + or appear in the video. You can retrieve information about each topic using + Freebase Topic API.\",\n \"type\": \"array\"\n },\n \"topicIds\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"A list of Freebase + topic IDs that are centrally associated with the video. These are topics that + are centrally featured in the video, and it can be said that the video is + mainly about each of these. You can retrieve information about each topic + using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase + Topic API.\"\n },\n \"topicCategories\": {\n \"type\": + \"array\",\n \"description\": \"A list of Wikipedia URLs that provide + a high-level description of the video's content.\",\n \"items\": + {\n \"type\": \"string\"\n }\n }\n },\n \"type\": + \"object\"\n },\n \"VideoAbuseReportReasonListResponse\": {\n \"type\": + \"object\",\n \"properties\": {\n \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced this response.\",\n \"type\": \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - ChannelSections that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"ChannelSection\"\n }\n },\n \"kind\": - {\n \"default\": \"youtube#channelSectionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoTopicDetails\": - {\n \"description\": \"Freebase topic information related to the video.\",\n - \ \"id\": \"VideoTopicDetails\",\n \"properties\": {\n \"topicCategories\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Wikipedia - URLs that provide a high-level description of the video's content.\"\n },\n - \ \"topicIds\": {\n \"description\": \"A list of Freebase topic - IDs that are centrally associated with the video. These are topics that are - centrally featured in the video, and it can be said that the video is mainly - about each of these. You can retrieve information about each topic using the - \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"relevantTopicIds\": {\n \"type\": - \"array\",\n \"description\": \"Similar to topic_id, except that - these topics are merely relevant to the video. These are topics that may be - mentioned in, or appear in the video. You can retrieve information about each - topic using Freebase Topic API.\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"type\": \"object\"\n - \ },\n \"CommentSnippet\": {\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"authorProfileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL for the avatar of the user - who posted the comment.\"\n },\n \"moderationStatus\": {\n \"type\": - \"string\",\n \"description\": \"The comment's moderation status. - Will not be set if the comments were requested through the id filter.\",\n - \ \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was originally - published.\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the video the comment refers to, if - any.\"\n },\n \"parentId\": {\n \"description\": \"The - unique id of the parent comment, only set for replies.\",\n \"type\": - \"string\"\n },\n \"textDisplay\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"updatedAt\": - {\n \"description\": \"The date and time when the comment was last - updated.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"authorDisplayName\": {\n \"description\": \"The - name of the user who posted the comment.\",\n \"type\": \"string\"\n - \ },\n \"authorChannelId\": {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"canRate\": {\n \"description\": \"Whether the - current viewer can rate this comment.\",\n \"type\": \"boolean\"\n - \ },\n \"textOriginal\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"likeCount\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The total number of likes this comment has received.\",\n - \ \"type\": \"integer\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"viewerRating\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n }\n },\n \"description\": - \"Basic details about a comment, such as its author and text.\",\n \"id\": - \"CommentSnippet\",\n \"type\": \"object\"\n },\n \"ResourceId\": - {\n \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the referred resource, if that resource is a video. This property is only - present if the resourceId.kind value is youtube#video.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the referred resource, if that resource - is a channel. This property is only present if the resourceId.kind value is - youtube#channel.\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"The type of the API resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A resource id is a generic reference that points to another YouTube resource.\",\n - \ \"id\": \"ResourceId\",\n \"type\": \"object\"\n },\n \"MemberSnippet\": - {\n \"type\": \"object\",\n \"id\": \"MemberSnippet\",\n \"properties\": - {\n \"memberDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the member.\"\n },\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering memberships.\"\n },\n \"membershipsDetails\": - {\n \"description\": \"Details about the user's membership.\",\n - \ \"$ref\": \"MembershipsDetails\"\n }\n }\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"description\": \"Basic details about a subscription's subscriber - including title, description, channel ID and thumbnails.\",\n \"properties\": - {\n \"channelId\": {\n \"description\": \"The channel ID of - the subscriber.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the subscriber.\"\n },\n \"thumbnails\": {\n \"description\": - \"Thumbnails for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"title\": {\n \"description\": \"The title of - the subscriber.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"SubscriptionSubscriberSnippet\",\n \"type\": \"object\"\n - \ },\n \"LiveBroadcastSnippet\": {\n \"description\": \"Basic broadcast - information.\",\n \"id\": \"LiveBroadcastSnippet\",\n \"properties\": - {\n \"publishedAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast was added to YouTube's live broadcast - schedule.\",\n \"format\": \"date-time\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the live chat for this broadcast.\"\n },\n \"scheduledEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to end.\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the broadcast. For each nested - object in this object, the key is the name of the thumbnail image, and the - value is an object that contains other information about the thumbnail.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"scheduledStartTime\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that is publishing the - broadcast.\",\n \"type\": \"string\"\n },\n \"actualEndTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast actually ended. This information is only available - once the broadcast's state is complete.\",\n \"format\": \"date-time\"\n - \ },\n \"actualStartTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the broadcast actually started. This information is only available - once the broadcast's state is live.\"\n },\n \"isDefaultBroadcast\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast is the default broadcast. Internal only.\"\n },\n - \ \"description\": {\n \"description\": \"The broadcast's description. - As with the title, you can set this field by modifying the broadcast resource - or by setting the description field of the corresponding video resource.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's title. Note that the broadcast - represents exactly one YouTube video. You can set this field by modifying - the broadcast resource or by setting the title field of the corresponding - video resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"Member\": {\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#member\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#member\\\".\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the member.\"\n }\n },\n \"id\": \"Member\"\n },\n \"ThumbnailSetResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"items\": - {\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of thumbnails.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#thumbnailSetResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n - \ }\n },\n \"id\": \"ThumbnailSetResponse\"\n },\n \"ChannelConversionPings\": - {\n \"id\": \"ChannelConversionPings\",\n \"properties\": {\n \"pings\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n },\n \"description\": \"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.\"\n }\n },\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"type\": \"object\"\n },\n \"VideoLocalization\": - {\n \"type\": \"object\",\n \"id\": \"VideoLocalization\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"Localized version of the video's description.\"\n },\n \"title\": - {\n \"description\": \"Localized version of the video's title.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Localized versions of certain video properties (e.g. title).\"\n },\n - \ \"VideoSuggestionsTagSuggestion\": {\n \"description\": \"A single - tag suggestion with it's relevance information.\",\n \"id\": \"VideoSuggestionsTagSuggestion\",\n - \ \"properties\": {\n \"tag\": {\n \"type\": \"string\",\n - \ \"description\": \"The keyword tag suggested for the video.\"\n - \ },\n \"categoryRestricts\": {\n \"description\": \"A - set of video categories for which the tag is relevant. You can use this information - to display appropriate tag suggestions based on the video category that the - video uploader associates with the video. By default, tag suggestions are - relevant for all categories if there are no restricts defined for the keyword.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageDeletedDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"ChannelProfileDetails\": {\n \"type\": \"object\",\n \"id\": - \"ChannelProfileDetails\",\n \"properties\": {\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel ID.\"\n },\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - display name.\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"properties\": - {\n \"gifterChannelId\": {\n \"description\": \"The ID of - the user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\",\n \"type\": \"string\"\n - \ },\n \"memberLevelName\": {\n \"description\": \"The - name of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ }\n }\n },\n \"LocalizedString\": {\n \"properties\": - {\n \"language\": {\n \"type\": \"string\"\n },\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LocalizedString\"\n },\n \"VideoContentDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"caption\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The value of captions indicates whether the video has captions or not.\",\n - \ \"enum\": [\n \"true\",\n \"false\"\n ]\n - \ },\n \"licensedContent\": {\n \"description\": \"The - value of is_license_content indicates whether the video is licensed content.\",\n - \ \"type\": \"boolean\"\n },\n \"regionRestriction\": - {\n \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"contentRating\": - {\n \"$ref\": \"ContentRating\",\n \"description\": \"Specifies - the ratings that the video received under various rating schemes.\"\n },\n - \ \"definition\": {\n \"type\": \"string\",\n \"enum\": - [\n \"sd\",\n \"hd\"\n ],\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\",\n \"enumDescriptions\": - [\n \"sd\",\n \"hd\"\n ]\n },\n \"projection\": - {\n \"description\": \"Specifies the projection format of the video.\",\n - \ \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"duration\": - {\n \"type\": \"string\",\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"dimension\": {\n \"description\": \"The value of dimension - indicates whether the video is available in 3D or in 2D.\",\n \"type\": - \"string\"\n },\n \"countryRestriction\": {\n \"description\": - \"The countryRestriction object contains information about the countries where - a video is (or is not) viewable.\",\n \"$ref\": \"AccessPolicy\"\n - \ },\n \"hasCustomThumbnail\": {\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n }\n },\n \"id\": \"VideoContentDetails\",\n - \ \"description\": \"Details about the content of a YouTube Video.\"\n - \ },\n \"VideoAbuseReportReason\": {\n \"type\": \"object\",\n \"id\": - \"VideoAbuseReportReason\",\n \"properties\": {\n \"id\": {\n - \ \"description\": \"The ID of this abuse report reason.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n + {\n \"description\": \"The `visitorId` identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"VideoAbuseReportReason\"\n },\n \"description\": + \"A list of valid abuse reasons that are used with `video.ReportAbuse`.\",\n + \ \"type\": \"array\"\n },\n \"kind\": {\n \"default\": + \"youtube#videoAbuseReportReasonListResponse\",\n \"type\": \"string\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n \"default\": - \"youtube#videoAbuseReportReason\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n }\n },\n \"description\": \"A - `__videoAbuseReportReason__` resource identifies a reason that a video could - be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\"\n - \ },\n \"ActivityContentDetailsFavorite\": {\n \"id\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"Information about a video that was marked as a favorite - video.\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"PropertyValue\": {\n \"id\": - \"PropertyValue\",\n \"properties\": {\n \"property\": {\n \"type\": - \"string\",\n \"description\": \"A property.\"\n },\n \"value\": - {\n \"description\": \"The property's value.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"A pair Property / Value.\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveChatModeratorListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of moderators - that match the request criteria.\"\n },\n \"pageInfo\": {\n - \ \"$ref\": \"PageInfo\",\n \"description\": \"General pagination - information.\"\n }\n },\n \"id\": \"LiveChatModeratorListResponse\",\n - \ \"type\": \"object\"\n },\n \"PlaylistItemSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"position\": {\n \"format\": - \"uint32\",\n \"description\": \"The order in which the item appears - in the playlist. The value uses a zero-based index, so the first item has - a position of 0, the second item has a position of 1, and so forth.\",\n \"type\": - \"integer\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist item. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"title\": {\n \"description\": - \"The item's title.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the playlist - item belongs to.\",\n \"type\": \"string\"\n },\n \"videoOwnerChannelTitle\": - {\n \"description\": \"Channel title for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"videoOwnerChannelId\": - {\n \"description\": \"Channel id for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"description\": \"The id object contains information that can - be used to uniquely identify the resource that is included in the playlist - as the playlist item.\",\n \"$ref\": \"ResourceId\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the user that added the item to the - playlist.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The item's description.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the item - was added to the playlist.\",\n \"type\": \"string\"\n },\n + the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n + \ }\n },\n \"id\": \"VideoAbuseReportReasonListResponse\"\n + \ },\n \"ActivityContentDetailsPromotedItem\": {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n + \ \"type\": \"object\",\n \"description\": \"Details about a resource + which is being promoted.\",\n \"properties\": {\n \"clickTrackingUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL the + client should ping to indicate that the user clicked through on this promoted + item.\"\n },\n \"destinationUrl\": {\n \"description\": + \"The URL the client should direct the user to, if the user chooses to visit + the advertiser's website.\",\n \"type\": \"string\"\n },\n + \ \"forecastingUrl\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"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.\",\n \"type\": + \"array\"\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the promoted video.\",\n \"type\": + \"string\"\n },\n \"customCtaButtonText\": {\n \"type\": + \"string\",\n \"description\": \"The custom call-to-action button + text. If specified, it will override the default button text for the cta_type.\"\n + \ },\n \"adTag\": {\n \"type\": \"string\",\n \"description\": + \"The URL the client should fetch to request a promoted item.\"\n },\n + \ \"impressionUrl\": {\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"The list of impression URLs. The client should ping all of these URLs to + indicate that the user was shown this promoted item.\"\n },\n \"descriptionText\": + {\n \"description\": \"The text description to accompany the promoted + item.\",\n \"type\": \"string\"\n },\n \"creativeViewUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL the + client should ping to indicate that the user was shown this promoted item.\"\n + \ },\n \"ctaType\": {\n \"description\": \"The type + of call-to-action, a message to the user indicating action that can be taken.\",\n + \ \"enum\": [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ]\n }\n }\n + \ },\n \"WatchSettings\": {\n \"description\": \"Branding properties + for the watch. All deprecated.\",\n \"id\": \"WatchSettings\",\n \"type\": + \"object\",\n \"properties\": {\n \"textColor\": {\n \"type\": + \"string\",\n \"description\": \"The background color for the video + watch page's branded area.\"\n },\n \"backgroundColor\": {\n + \ \"type\": \"string\",\n \"description\": \"The text color + for the video watch page's branded area.\"\n },\n \"featuredPlaylistId\": + {\n \"type\": \"string\",\n \"description\": \"An ID that + uniquely identifies a playlist that displays next to the video player.\"\n + \ }\n }\n },\n \"CdnSettings\": {\n \"description\": + \"Brief description of the live stream cdn settings.\",\n \"id\": \"CdnSettings\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"ingestionType\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"description\": \" The method or protocol used to transmit the + video stream.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"rtmp\",\n \"dash\",\n \"webrtc\",\n \"hls\"\n + \ ],\n \"type\": \"string\"\n },\n \"ingestionInfo\": + {\n \"$ref\": \"IngestionInfo\",\n \"description\": \"The + ingestionInfo object contains information that YouTube provides that you need + to transmit your RTMP or HTTP stream to YouTube.\"\n },\n \"resolution\": + {\n \"description\": \"The resolution of the inbound video data.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"240p\",\n + \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n + \ \"1440p\",\n \"2160p\",\n \"variable\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"format\": + {\n \"description\": \"The format of the video stream that you are + sending to Youtube. \",\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n }\n + \ },\n \"frameRate\": {\n \"enum\": [\n \"30fps\",\n + \ \"60fps\",\n \"variable\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"description\": \"The frame rate of the inbound video data.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsComment\": + {\n \"id\": \"ActivityContentDetailsComment\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the resource associated with the comment.\"\n }\n },\n + \ \"description\": \"Information about a resource that received a comment.\"\n + \ },\n \"LiveChatModeratorSnippet\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"moderatorDetails\": {\n \"$ref\": + \"ChannelProfileDetails\",\n \"description\": \"Details about the + moderator.\"\n },\n \"liveChatId\": {\n \"description\": + \"The ID of the live chat this moderator can act on.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveChatModeratorSnippet\"\n + \ },\n \"LiveBroadcastStatistics\": {\n \"id\": \"LiveBroadcastStatistics\",\n + \ \"properties\": {\n \"totalChatCount\": {\n \"format\": + \"uint64\",\n \"description\": \"The total number of live chat messages + currently on the broadcast. The property and its value will be present if + the broadcast is public, has the live chat feature enabled, and has at least + one message. Note that this field will not be filled after the broadcast ends. + So this property would not identify the number of chat messages for an archived + video of a completed live broadcast.\",\n \"type\": \"string\"\n + \ },\n \"concurrentViewers\": {\n \"type\": \"string\",\n + \ \"description\": \"The number of viewers currently watching the + broadcast. The property and its value will be present if the broadcast has + current viewers and the broadcast owner has not hidden the viewcount for the + video. Note that YouTube stops tracking the number of concurrent viewers for + a broadcast when the broadcast ends. So, this property would not identify + the number of viewers watching an archived video of a live broadcast that + already ended.\",\n \"format\": \"uint64\"\n }\n },\n + \ \"description\": \"Statistics about the live broadcast. These represent + a snapshot of the values at the time of the request. Statistics are only returned + for live broadcasts.\",\n \"type\": \"object\"\n },\n \"ChannelSettings\": + {\n \"type\": \"object\",\n \"properties\": {\n \"defaultLanguage\": + {\n \"type\": \"string\"\n },\n \"trackingAnalyticsAccountId\": + {\n \"description\": \"The ID for a Google Analytics account to track + and measure traffic to the channels.\",\n \"type\": \"string\"\n + \ },\n \"moderateComments\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether user-submitted comments left on the channel + page need to be approved by the channel owner to be publicly visible.\"\n + \ },\n \"showRelatedChannels\": {\n \"description\": + \"Whether related channels should be proposed.\",\n \"type\": \"boolean\"\n + \ },\n \"featuredChannelsUrls\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": + \"The list of featured channels.\"\n },\n \"keywords\": {\n + \ \"type\": \"string\",\n \"description\": \"Lists keywords + associated with the channel, comma-separated.\"\n },\n \"defaultTab\": + {\n \"description\": \"Which content tab users should see when viewing + the channel.\",\n \"type\": \"string\"\n },\n \"country\": + {\n \"type\": \"string\",\n \"description\": \"The country + of the channel.\"\n },\n \"profileColor\": {\n \"type\": + \"string\",\n \"description\": \"A prominent color that can be rendered + on this channel page.\"\n },\n \"showBrowseView\": {\n \"description\": + \"Whether the tab to browse the videos should be displayed.\",\n \"type\": + \"boolean\"\n },\n \"featuredChannelsTitle\": {\n \"type\": + \"string\",\n \"description\": \"Title for the featured channels + tab.\"\n },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"Specifies the channel description.\"\n },\n + \ \"title\": {\n \"description\": \"Specifies the channel title.\",\n + \ \"type\": \"string\"\n },\n \"unsubscribedTrailer\": + {\n \"type\": \"string\",\n \"description\": \"The trailer + of the channel, for users that are not subscribers.\"\n }\n },\n + \ \"id\": \"ChannelSettings\",\n \"description\": \"Branding properties + for the channel view.\"\n },\n \"MembershipsDurationAtLevel\": {\n \"properties\": + {\n \"level\": {\n \"type\": \"string\",\n \"description\": + \"Pricing level ID.\"\n },\n \"memberTotalDurationMonths\": + {\n \"description\": \"The cumulative time the user has been a member + for the given level in complete months (the time is rounded down to the nearest + integer).\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n + \ },\n \"memberSince\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the user became a continuous + member for the given level.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"MembershipsDurationAtLevel\"\n },\n \"ChannelStatistics\": + {\n \"properties\": {\n \"videoCount\": {\n \"format\": + \"uint64\",\n \"description\": \"The number of videos uploaded to + the channel.\",\n \"type\": \"string\"\n },\n \"hiddenSubscriberCount\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the number of subscribers is shown for this user.\"\n },\n \"commentCount\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of comments for the channel.\"\n },\n \"subscriberCount\": + {\n \"format\": \"uint64\",\n \"description\": \"The number + of subscribers that the channel has.\",\n \"type\": \"string\"\n + \ },\n \"viewCount\": {\n \"format\": \"uint64\",\n + \ \"description\": \"The number of times the channel has been viewed.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"description\": \"Statistics about a channel: number of subscribers, + number of videos in the channel, etc.\",\n \"id\": \"ChannelStatistics\"\n + \ },\n \"PlaylistItemSnippet\": {\n \"id\": \"PlaylistItemSnippet\",\n + \ \"type\": \"object\",\n \"description\": \"Basic details about + a playlist, including title, description and thumbnails. Basic details of + a YouTube Playlist item provided by the author. Next ID: 15\",\n \"properties\": + {\n \"channelTitle\": {\n \"type\": \"string\",\n \"description\": + \"Channel title for the channel that the playlist item belongs to.\"\n },\n \ \"playlistId\": {\n \"description\": \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist item is in.\",\n \ \"type\": \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n }\n }\n },\n \"description\": \"Basic - details about a playlist, including title, description and thumbnails. Basic - details of a YouTube Playlist item provided by the author. Next ID: 15\",\n - \ \"id\": \"PlaylistItemSnippet\"\n },\n \"ChannelSettings\": {\n - \ \"type\": \"object\",\n \"description\": \"Branding properties - for the channel view.\",\n \"id\": \"ChannelSettings\",\n \"properties\": - {\n \"defaultLanguage\": {\n \"type\": \"string\"\n },\n - \ \"moderateComments\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether user-submitted comments left on the channel page need to be approved - by the channel owner to be publicly visible.\"\n },\n \"defaultTab\": - {\n \"type\": \"string\",\n \"description\": \"Which content - tab users should see when viewing the channel.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"showBrowseView\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the tab to browse the videos should be - displayed.\"\n },\n \"keywords\": {\n \"type\": \"string\",\n - \ \"description\": \"Lists keywords associated with the channel, comma-separated.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the channel title.\"\n },\n \"unsubscribedTrailer\": - {\n \"description\": \"The trailer of the channel, for users that - are not subscribers.\",\n \"type\": \"string\"\n },\n \"profileColor\": - {\n \"description\": \"A prominent color that can be rendered on - this channel page.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the channel description.\"\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n },\n - \ \"featuredChannelsTitle\": {\n \"type\": \"string\",\n \"description\": - \"Title for the featured channels tab.\"\n },\n \"showRelatedChannels\": - {\n \"description\": \"Whether related channels should be proposed.\",\n - \ \"type\": \"boolean\"\n },\n \"featuredChannelsUrls\": - {\n \"description\": \"The list of featured channels.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ }\n }\n },\n \"LiveChatBanSnippet\": {\n \"id\": \"LiveChatBanSnippet\",\n - \ \"properties\": {\n \"banDurationSeconds\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - duration of a ban, only filled if the ban has type TEMPORARY.\"\n },\n - \ \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The chat this ban is pertinent to.\"\n },\n \"type\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"description\": - \"The type of ban.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"ActivityContentDetailsUpload\": {\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the uploaded video.\"\n }\n },\n - \ \"description\": \"Information about the uploaded video.\",\n \"id\": - \"ActivityContentDetailsUpload\",\n \"type\": \"object\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"bannedUserDetails\": - {\n \"description\": \"The details of the user that was banned.\",\n - \ \"$ref\": \"ChannelProfileDetails\"\n },\n \"banType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"permanent\",\n \"temporary\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The type of ban.\"\n },\n \"banDurationSeconds\": {\n \"format\": - \"uint64\",\n \"description\": \"The duration of the ban. This property - is only present if the banType is temporary.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"LiveChatNewSponsorDetails\": {\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"isUpgrade\": - {\n \"description\": \"If the viewer just had upgraded from a lower - level. For viewers that were not members at the time of purchase, this field - is false.\",\n \"type\": \"boolean\"\n },\n \"memberLevelName\": - {\n \"description\": \"The name of the Level that the viewer just - had joined. The Level names are defined by the YouTube channel offering the - Membership. In some situations this field isn't filled.\",\n \"type\": - \"string\"\n }\n }\n },\n \"PlaylistContentDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"itemCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n },\n \"id\": - \"PlaylistContentDetails\"\n },\n \"LiveChatTextMessageDetails\": {\n - \ \"id\": \"LiveChatTextMessageDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"messageText\": {\n \"type\": \"string\",\n - \ \"description\": \"The user's message.\"\n }\n }\n },\n - \ \"Comment\": {\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n - \ \"default\": \"youtube#comment\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the comment.\",\n \"$ref\": \"CommentSnippet\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"Comment\",\n \"description\": - \"A *comment* represents a single YouTube comment.\"\n },\n \"Channel\": - {\n \"description\": \"A *channel* resource contains information about - a YouTube channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"topicDetails\": {\n \"description\": \"The topicDetails - object encapsulates information about Freebase topics associated with the - channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ChannelContentDetails\",\n \"description\": - \"The contentDetails object encapsulates information about the channel's content.\"\n - \ },\n \"auditDetails\": {\n \"description\": \"The - auditionDetails object encapsulates channel data that is relevant for YouTube - Partners during the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n - \ },\n \"contentOwnerDetails\": {\n \"$ref\": \"ChannelContentOwnerDetails\",\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"brandingSettings\": {\n - \ \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#channel\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the channel, such as its title, description, - and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel.\",\n \"type\": \"string\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n },\n \"description\": - \"Localizations for different languages\"\n },\n \"status\": - {\n \"description\": \"The status object encapsulates information - about the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n - \ },\n \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n }\n - \ },\n \"id\": \"Channel\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"type\": \"object\",\n \"properties\": {\n \"clickTrackingUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user clicked through on this promoted item.\",\n \"type\": - \"string\"\n },\n \"adTag\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should fetch to request a - promoted item.\"\n },\n \"forecastingUrl\": {\n \"description\": - \"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.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"destinationUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should direct - the user to, if the user chooses to visit the advertiser's website.\"\n },\n - \ \"impressionUrl\": {\n \"type\": \"array\",\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"creativeViewUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user was shown this promoted item.\"\n - \ },\n \"descriptionText\": {\n \"description\": \"The - text description to accompany the promoted item.\",\n \"type\": \"string\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify the promoted video.\",\n \"type\": - \"string\"\n },\n \"ctaType\": {\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"type\": \"string\"\n },\n \"customCtaButtonText\": - {\n \"type\": \"string\",\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\"\n }\n },\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"Details about a resource which is being promoted.\"\n - \ },\n \"CommentThreadListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"CommentThreadListResponse\",\n \"properties\": {\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - comment threads that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"CommentThread\"\n }\n },\n \"kind\": - {\n \"default\": \"youtube#commentThreadListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n }\n }\n },\n \"ActivityContentDetailsComment\": - {\n \"description\": \"Information about a resource that received a comment.\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource associated with the comment.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsComment\"\n - \ },\n \"LiveChatSuperChatDetails\": {\n \"id\": \"LiveChatSuperChatDetails\",\n - \ \"properties\": {\n \"tier\": {\n \"description\": \"The - tier in which the amount belongs. Lower amounts belong to lower tiers. The - lowest tier is 1.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this Super Chat event.\",\n \"type\": - \"string\"\n },\n \"amountMicros\": {\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"PlaylistItem\": {\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist item, such as its title and position in the playlist.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlistItem\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the playlist item's privacy status.\",\n \"$ref\": - \"PlaylistItemStatus\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object is included in the resource if the included item - is a YouTube video. The object contains additional information about the video.\",\n - \ \"$ref\": \"PlaylistItemContentDetails\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the playlist item.\"\n }\n },\n - \ \"id\": \"PlaylistItem\",\n \"type\": \"object\"\n },\n \"ChannelListResponse\": - {\n \"type\": \"object\",\n \"id\": \"ChannelListResponse\",\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Channel\"\n }\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelListResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ }\n },\n \"I18nLanguageListResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nLanguageListResponse\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of supported i18n languages. In this - map, the i18n language ID is the map key, and its value is the corresponding - i18nLanguage resource.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n }\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"I18nLanguageListResponse\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"properties\": {\n \"giftMembershipsLevelName\": {\n \"description\": - \"The name of the level of the gift memberships purchased by the user. The - Level names are defined by the YouTube channel offering the Membership. In - some situations this field isn't filled.\",\n \"type\": \"string\"\n - \ },\n \"giftMembershipsCount\": {\n \"type\": \"integer\",\n - \ \"description\": \"The number of gift memberships purchased by the - user.\",\n \"format\": \"int32\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n - \ \"CaptionSnippet\": {\n \"properties\": {\n \"isAutoSynced\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video associated with the caption track. @mutable - youtube.captions.insert\"\n },\n \"name\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The name of the - caption track. The name is intended to be visible to the user as an option - during playback.\",\n \"type\": \"string\"\n },\n \"failureReason\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ],\n \"description\": \"The reason that YouTube failed - to process the caption track. This property is only present if the state property's - value is failed.\"\n },\n \"isCC\": {\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\",\n \"type\": \"boolean\"\n - \ },\n \"audioTrackType\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of audio track associated - with the caption track.\"\n },\n \"language\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\"\n },\n \"trackKind\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The caption track's - type.\"\n },\n \"lastUpdated\": {\n \"description\": - \"The date and time when the caption track was last updated.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"isLarge\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the caption track uses large text for the vision-impaired. The default - value is false.\"\n },\n \"isDraft\": {\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n },\n - \ \"status\": {\n \"type\": \"string\",\n \"enum\": - [\n \"serving\",\n \"syncing\",\n \"failed\"\n - \ ],\n \"description\": \"The caption track's status.\",\n + \ ]\n }\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the playlist item. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the user that added the item + to the playlist.\",\n \"type\": \"string\"\n },\n \"resourceId\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n + \ \"youtube.playlistItems.update\"\n ]\n },\n + \ \"$ref\": \"ResourceId\",\n \"description\": \"The id object + contains information that can be used to uniquely identify the resource that + is included in the playlist as the playlist item.\"\n },\n \"position\": + {\n \"description\": \"The order in which the item appears in the + playlist. The value uses a zero-based index, so the first item has a position + of 0, the second item has a position of 1, and so forth.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"videoOwnerChannelId\": + {\n \"description\": \"Channel id for the channel this video belongs + to.\",\n \"type\": \"string\"\n },\n \"title\": {\n + \ \"type\": \"string\",\n \"description\": \"The item's title.\"\n + \ },\n \"description\": {\n \"description\": \"The item's + description.\",\n \"type\": \"string\"\n },\n \"videoOwnerChannelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel this video belongs to.\"\n },\n \"publishedAt\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time that the item was added to + the playlist.\"\n }\n }\n },\n \"LiveBroadcastStatus\": + {\n \"type\": \"object\",\n \"id\": \"LiveBroadcastStatus\",\n \"properties\": + {\n \"lifeCycleStatus\": {\n \"enumDescriptions\": [\n \"No + value or the value is unknown.\",\n \"Incomplete settings, but + otherwise valid\",\n \"Complete settings\",\n \"Visible + only to partner, may need special UI treatment\",\n \"Viper is + recording; this means the \\\"clock\\\" is running\",\n \"The broadcast + is finished.\",\n \"This broadcast was removed by admin action\",\n + \ \"Transition into TESTING has been requested\",\n \"Transition + into LIVE has been requested\"\n ],\n \"description\": \"The + broadcast's status. The status can be updated using the API's liveBroadcasts.transition + method.\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n + \ \"created\",\n \"ready\",\n \"testing\",\n + \ \"live\",\n \"complete\",\n \"revoked\",\n + \ \"testStarting\",\n \"liveStarting\"\n ],\n + \ \"type\": \"string\"\n },\n \"madeForKids\": {\n \"description\": + \"Whether the broadcast is made for kids or not, decided by YouTube instead + of the creator. This field is read only.\",\n \"type\": \"boolean\"\n + \ },\n \"recordingStatus\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"No value or the value is + unknown.\",\n \"The recording has not yet been started.\",\n \"The + recording is currently on.\",\n \"The recording is completed, and + cannot be started again.\"\n ],\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n + \ \"notRecording\",\n \"recording\",\n \"recorded\"\n + \ ],\n \"description\": \"The broadcast's recording status.\"\n + \ },\n \"selfDeclaredMadeForKids\": {\n \"description\": + \"This field will be set to True if the creator declares the broadcast to + be kids only: go/live-cw-work.\",\n \"type\": \"boolean\"\n },\n + \ \"liveBroadcastPriority\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Low priority broadcast: for low view count + HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: + for regular HoAs and broadcasts.\",\n \"High priority broadcast: + for high profile HoAs, like PixelCorp ones.\"\n ],\n \"enum\": + [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n + \ \"normal\",\n \"high\"\n ],\n \"description\": + \"Priority of the live broadcast event (internal state).\"\n },\n \"privacyStatus\": + {\n \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"isEasyReader\": {\n \"description\": - \"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.\",\n - \ \"type\": \"boolean\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a caption track, such as its - language and name.\",\n \"id\": \"CaptionSnippet\"\n },\n \"ContentRating\": + \ \"\"\n ],\n \"description\": \"The broadcast's + privacy status. Note that the broadcast represents exactly one YouTube video, + so the privacy settings are identical to those supported for videos. In addition, + you can set this field by modifying the broadcast resource or by setting the + privacyStatus field of the corresponding video resource.\"\n }\n },\n + \ \"description\": \"Live broadcast state.\"\n },\n \"LiveStreamStatus\": + {\n \"id\": \"LiveStreamStatus\",\n \"properties\": {\n \"healthStatus\": + {\n \"$ref\": \"LiveStreamHealthStatus\",\n \"description\": + \"The health status of the stream.\"\n },\n \"streamStatus\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"created\",\n \"ready\",\n + \ \"active\",\n \"inactive\",\n \"error\"\n + \ ]\n }\n },\n \"description\": \"Brief description + of the live stream status.\",\n \"type\": \"object\"\n },\n \"ContentRating\": {\n \"description\": \"Ratings schemes. The country-specific ratings - are mostly for movies and shows. LINT.IfChange\",\n \"id\": \"ContentRating\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kmrbRating\": - {\n \"enum\": [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n - \ \"kmrb12plus\",\n \"kmrb15plus\",\n \"kmrbTeenr\",\n - \ \"kmrbR\",\n \"kmrbUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Korea Media Rating Board - (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. The KMRB rates - videos in South Korea.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 \uC774\uC0C1 - \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ]\n },\n \"bmukkRating\": {\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ]\n },\n \"cscfRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Luxembourg's Commission de surveillance de la classification des - films (CSCF).\",\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"medietilsynetRating\": - {\n \"description\": \"The video's rating from Medietilsynet, the - Norwegian Media Authority.\",\n \"type\": \"string\",\n \"enum\": - [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n + are mostly for movies and shows. LINT.IfChange\",\n \"properties\": {\n + \ \"egfilmRating\": {\n \"description\": \"The video's rating + in Egypt.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n + \ \"\"\n ],\n \"enum\": [\n \"egfilmUnspecified\",\n + \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n + \ \"egfilmUnrated\"\n ]\n },\n \"czfilmRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"12\",\n \"14\",\n \"18\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"czfilmUnspecified\",\n + \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n + \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"description\": + \"The video's rating in the Czech Republic.\"\n },\n \"mccaaRating\": + {\n \"description\": \"The video's rating from Malta's Film Age-Classification + Board.\",\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n + \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n + \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n + \ \"mccaa18\",\n \"mccaaUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG\",\n \"12A\",\n \"12\",\n \"14 + - this rating was removed from the new classification structure introduced + in 2013.\",\n \"15\",\n \"16 - this rating was removed + from the new classification structure introduced in 2013.\",\n \"18\",\n + \ \"\"\n ]\n },\n \"fpbRatingReasons\": {\n + \ \"items\": {\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n + \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n + \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n + \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n + \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"South Africa rating content descriptors.\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"description\": \"Reasons that explain why the video received its + FPB (South Africa) rating.\",\n \"type\": \"array\"\n },\n + \ \"icaaRating\": {\n \"description\": \"The video's Instituto + de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"icaaUnspecified\",\n + \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n + \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n + \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n + \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n + \ \"\"\n ]\n },\n \"fpbRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n + \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n + \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n + \ ],\n \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n + \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n + \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n + \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from South Africa's Film and Publication Board.\"\n },\n + \ \"nfrcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n + \ \"D\",\n \"X\",\n \"\"\n ],\n \"enum\": + [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n + \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Bulgarian + National Film Center.\"\n },\n \"medietilsynetRating\": {\n \ \"enumDescriptions\": [\n \"\",\n \"A\",\n \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ]\n },\n \"nmcRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The National Media Council ratings system for - United Arab Emirates.\",\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ]\n },\n \"anatelRating\": {\n \"enum\": - [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"description\": \"The video's Anatel - (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\"\n - \ },\n \"catvRating\": {\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"ytRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\"\n },\n - \ \"mibacRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\"\n },\n \"rteRating\": {\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ]\n },\n \"eefilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Estonia.\",\n - \ \"type\": \"string\"\n },\n \"egfilmRating\": {\n - \ \"description\": \"The video's rating in Egypt.\",\n \"enum\": - [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n \"egfilm18\",\n - \ \"egfilmBn\",\n \"egfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"mcstRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"P\",\n \"0\",\n \"C13\",\n \"C16\",\n - \ \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating system for Vietnam - MCST\",\n \"enum\": [\n - \ \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ]\n },\n \"rtcRating\": {\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ]\n },\n - \ \"cceRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ],\n \"enumDescriptions\": [\n + \ ],\n \"description\": \"The video's rating from Medietilsynet, + the Norwegian Media Authority.\",\n \"type\": \"string\",\n \"enum\": + [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n + \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n + \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n + \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ]\n + \ },\n \"fcbmRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n + \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n + \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n + \ \"fcbmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n + \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n + \ \"18PL\",\n \"\"\n ],\n \"description\": + \"The video's rating from Malaysia's Film Censorship Board.\"\n },\n + \ \"chvrsRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n + \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n + \ ],\n \"enum\": [\n \"chvrsUnspecified\",\n \"chvrsG\",\n + \ \"chvrsPg\",\n \"chvrs14a\",\n \"chvrs18a\",\n + \ \"chvrsR\",\n \"chvrsE\",\n \"chvrsUnrated\"\n + \ ],\n \"description\": \"The video's Canadian Home Video + Rating System (CHVRS) rating.\"\n },\n \"skfilmRating\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n + \ ],\n \"description\": \"The video's rating in Slovakia.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"skfilmUnspecified\",\n + \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n + \ \"skfilmP8\",\n \"skfilmUnrated\"\n ]\n },\n + \ \"smsaRating\": {\n \"description\": \"The video's rating + from Statens medier\xE5d (Sweden's National Media Council).\",\n \"enumDescriptions\": + [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ],\n \"enum\": [\n + \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n + \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"ecbmctRating\": + {\n \"description\": \"Rating system in Turkey - Evaluation and Classification + Board of the Ministry of Culture and Tourism\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n + \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n + \ \"18+\",\n \"\"\n ],\n \"enum\": + [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n + \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n + \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n + \ \"ecbmctUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"cceRating\": {\n \"enumDescriptions\": [\n \ \"\",\n \"4\",\n \"6\",\n \"12\",\n \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ]\n },\n \"agcomRating\": {\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\",\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ]\n },\n \"mpaatRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ],\n \"description\": - \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\"\n },\n \"ifcoRating\": {\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n - \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n - \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n - \ \"ifco18\",\n \"ifcoUnrated\"\n ]\n },\n - \ \"cbfcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"U/A\",\n \"U/A 7+\",\n \"U/A - 13+\",\n \"U/A 16+\",\n \"A\",\n \"S\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"description\": \"The video's Central Board of Film - Certification (CBFC - India) rating.\"\n },\n \"acbRating\": - {\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"enumDescriptions\": + \ ],\n \"description\": \"The video's rating from Portugal's + Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enum\": + [\n \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n + \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n + \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"type\": + \"string\"\n },\n \"mpaatRating\": {\n \"enum\": [\n + \ \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"GB\",\n + \ \"RB\"\n ],\n \"type\": \"string\",\n \"description\": + \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n + \ },\n \"acbRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \"E\",\n \"Programs that have been given a P classification by the Australian Communications and Media Authority. These programs are intended for preschool children.\",\n \"Programs @@ -2195,99 +1911,147 @@ interactions: Media Authority. These programs are intended for children (other than preschool children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Australian Classification Board (ACB) or Australian Communications + \ ],\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n + \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n + \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n + \ \"acbUnrated\"\n ],\n \"description\": \"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.\"\n },\n \"mekuRating\": {\n \"enum\": - [\n \"mekuUnspecified\",\n \"mekuS\",\n \"meku7\",\n - \ \"meku12\",\n \"meku16\",\n \"meku18\",\n - \ \"mekuUnrated\"\n ],\n \"description\": \"The - video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti (National - Audiovisual Institute).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"S\",\n \"7\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"fpbRating\": {\n \"description\": \"The video's - rating from South Africa's Film and Publication Board.\",\n \"enum\": - [\n \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n - \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n - \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ],\n \"type\": \"string\"\n - \ },\n \"fcoRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Hong Kong's Office for Film, Newspaper and Article Administration.\",\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ]\n },\n - \ \"pefilmRating\": {\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"description\": - \"The video's rating in Peru.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"mocRating\": {\n \"description\": \"The video's Ministerio - de Cultura (Colombia) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ]\n },\n \"chvrsRating\": {\n \"enum\": [\n - \ \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ],\n \"description\": \"The video's Canadian Home Video - Rating System (CHVRS) rating.\",\n \"type\": \"string\"\n },\n - \ \"russiaRating\": {\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n + television programming.\"\n },\n \"djctqRatingReasons\": {\n + \ \"description\": \"Reasons that explain why the video received its + DJCQT (Brazil) rating.\",\n \"type\": \"array\",\n \"items\": + {\n \"enumDescriptions\": [\n \"\",\n \"Brazil + rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia + (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n + \ \"Conte\xFAdo sexual (Sexual content)\",\n \"Nudez + (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo Expl\xEDcito + (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas + L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n + \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos + Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting + content)\"\n ],\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n + \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n + \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n + \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n + \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n + \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n + \ ],\n \"type\": \"string\"\n }\n },\n + \ \"rcnofRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n + \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n + \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from the Hungarian + Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\"\n + \ },\n \"mekuRating\": {\n \"description\": \"The video's + rating from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual + Institute).\",\n \"enum\": [\n \"mekuUnspecified\",\n + \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n + \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"S\",\n + \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"fcoRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"I\",\n \"IIA\",\n \"IIB\",\n \"II\",\n + \ \"III\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from Hong Kong's + Office for Film, Newspaper and Article Administration.\",\n \"enum\": + [\n \"fcoUnspecified\",\n \"fcoI\",\n \"fcoIia\",\n + \ \"fcoIib\",\n \"fcoIi\",\n \"fcoIii\",\n + \ \"fcoUnrated\"\n ]\n },\n \"moctwRating\": + {\n \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n + \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n + \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n + \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n + \ ],\n \"description\": \"The video's rating from Taiwan's + Ministry of Culture (\u6587\u5316\u90E8).\"\n },\n \"anatelRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"F\",\n + \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n + \ \"R\",\n \"A\",\n \"\"\n ],\n \"description\": + \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for + Chilean television.\",\n \"type\": \"string\",\n \"enum\": + [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n + \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n + \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n + \ ]\n },\n \"nmcRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n + \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n + \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n + \ \"nmcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n + \ \"\"\n ],\n \"description\": \"The National + Media Council ratings system for United Arab Emirates.\"\n },\n \"mdaRating\": + {\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n + \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n + \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n + \ \"R21\",\n \"\"\n ],\n \"description\": + \"The video's rating from Singapore's Media Development Authority (MDA) and, + specifically, it's Board of Film Censors (BFC).\",\n \"type\": \"string\"\n + \ },\n \"mpaaRating\": {\n \"enum\": [\n \"mpaaUnspecified\",\n + \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n + \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n + \ \"mpaaUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n + \ \"! X\",\n \"\"\n ],\n \"description\": + \"The video's Motion Picture Association of America (MPAA) rating.\"\n },\n + \ \"smaisRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"L\",\n \"7\",\n \"12\",\n \"14\",\n + \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"smaisUnspecified\",\n + \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n + \ \"smais14\",\n \"smais16\",\n \"smais18\",\n + \ \"smaisUnrated\"\n ],\n \"description\": \"The + video's rating in Iceland.\"\n },\n \"menaMpaaRating\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To + keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n + \ \"description\": \"The rating system for MENA countries, a clone + of MPAA. It is needed to prevent titles go live w/o additional QC check, since + some of them can be inappropriate for the countries at all. See b/33408548 + for more details.\",\n \"type\": \"string\",\n \"enum\": + [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n + \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n + \ ]\n },\n \"nbcRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n + \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's National Film Registry of the Russian Federation (MKRF - Russia) - rating.\"\n },\n \"fcbmRating\": {\n \"enum\": [\n - \ \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"type\": - \"string\"\n },\n \"smsaRating\": {\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"All ages\",\n \"7\",\n \"11\",\n \"15\",\n - \ \"\"\n ],\n \"enum\": [\n \"smsaUnspecified\",\n - \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n - \ \"smsa15\",\n \"smsaUnrated\"\n ]\n },\n - \ \"bbfcRating\": {\n \"description\": \"The video's British - Board of Film Classification (BBFC) rating.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ],\n - \ \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n - \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n - \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n - \ \"bbfcUnrated\"\n ]\n },\n \"djctqRating\": + \"The video's rating from the Maldives National Bureau of Classification.\",\n + \ \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n + \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n + \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n + \ \"nbcUnrated\"\n ]\n },\n \"mtrcbRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"R-13\",\n \"R-16\",\n + \ \"R-18\",\n \"X\",\n \"\"\n ],\n + \ \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n + \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n + \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Movie + and Television Review and Classification Board (Philippines).\"\n },\n + \ \"mibacRating\": {\n \"description\": \"The video's rating + from the Ministero dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n + \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n + \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n + \ \"mibacUnrated\"\n ]\n },\n \"djctqRating\": {\n \"enumDescriptions\": [\n \"\",\n \"L\",\n \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n \ \"18\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, - Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enum\": - [\n \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n @@ -2295,191 +2059,220 @@ interactions: \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n - \ ]\n },\n \"cncRating\": {\n \"enum\": [\n - \ \"cncUnspecified\",\n \"cncT\",\n \"cnc10\",\n - \ \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n \"cncE\",\n - \ \"cncInterdiction\",\n \"cncUnrated\"\n ],\n - \ \"description\": \"Rating system in France - Commission de classification - cinematographique\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ]\n },\n \"bfvcRating\": {\n \"enum\": - [\n \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Thailand's Board of Film and Video Censors.\"\n },\n \"ilfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Israel.\",\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ]\n },\n \"icaaRating\": {\n \"description\": - \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales - (ICAA - Spain) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ]\n },\n - \ \"chfilmRating\": {\n \"description\": \"The video's rating - in Switzerland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"0\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n - \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n - \ \"chfilm18\",\n \"chfilmUnrated\"\n ]\n },\n - \ \"cnaRating\": {\n \"description\": \"The video's rating - from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ]\n },\n - \ \"nbcplRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"description\": \"The - video's rating in Poland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"ecbmctRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n \ ],\n \"type\": \"string\",\n \"description\": - \"Rating system in Turkey - Evaluation and Classification Board of the Ministry - of Culture and Tourism\"\n },\n \"incaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"enum\": [\n - \ \"incaaUnspecified\",\n \"incaaAtp\",\n \"incaaSam13\",\n - \ \"incaaSam16\",\n \"incaaSam18\",\n \"incaaC\",\n - \ \"incaaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's INCAA (Instituto Nacional de Cine - y Artes Audiovisuales - Argentina) rating.\"\n },\n \"csaRating\": - {\n \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from France's - Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\"\n + \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o + e T\xEDtulos (DJCQT - Brazil) rating.\"\n },\n \"catvRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"catvUnspecified\",\n + \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n + \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n + \ \"catvUnrated\",\n \"catvE\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n + \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"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.\"\n },\n \"agcomRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"agcomUnspecified\",\n + \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n + \ \"agcomUnrated\"\n ],\n \"description\": \"The + video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni + (AGCOM).\",\n \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"VM14\",\n \"VM18\",\n \"\"\n ]\n \ },\n \"fskRating\": {\n \"enumDescriptions\": [\n \ \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\",\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n + \ ],\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ]\n },\n \"fmocRating\": - {\n \"description\": \"This property has been deprecated. Use the - contentDetails.contentRating.cncRating instead.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"fskUnrated\"\n ],\n \"description\": \"The + video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.\",\n + \ \"type\": \"string\"\n },\n \"ifcoRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n + \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n + \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n + \ \"ifco18\",\n \"ifcoUnrated\"\n ],\n \"description\": + \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See + the IFCO website for more information.\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n + \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n + \ \"18\",\n \"\"\n ]\n },\n \"eefilmRating\": + {\n \"description\": \"The video's rating in Estonia.\",\n \"type\": + \"string\",\n \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n + \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n + \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n + \ \"eefilmK16\",\n \"eefilmUnrated\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Pere\",\n + \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n + \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n + \ ]\n },\n \"mccypRating\": {\n \"description\": + \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) + Media Council for Children and Young People.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"7\",\n \"11\",\n \"15\",\n \"\"\n + \ ],\n \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n + \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n + \ \"mccypUnrated\"\n ]\n },\n \"fmocRating\": + {\n \"type\": \"string\",\n \"description\": \"This property + has been deprecated. Use the contentDetails.contentRating.cncRating instead.\",\n + \ \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n + \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n + \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ],\n \"enum\": [\n - \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ]\n },\n - \ \"nfvcbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"18\",\n \"RE\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n + \ \"E\",\n \"\"\n ]\n },\n \"oflcRating\": + {\n \"description\": \"The video's Office of Film and Literature + Classification (OFLC - New Zealand) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n + \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n + \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"oflcUnspecified\",\n + \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n + \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n + \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n + \ \"oflcRp16\",\n \"oflcRp18\"\n ]\n },\n + \ \"cnaRating\": {\n \"description\": \"The video's rating + from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"type\": + \"string\",\n \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n + \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n + \ \"cnaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"18+\",\n \"\"\n ]\n + \ },\n \"cbfcRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n + \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n + \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n + \ ],\n \"description\": \"The video's Central Board of Film + Certification (CBFC - India) rating.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"U\",\n \"U/A\",\n \"U/A + 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n + \ \"S\",\n \"\"\n ]\n },\n \"mocRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n + \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n + \ ],\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n + \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n + \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n + \ \"mocUnrated\"\n ],\n \"description\": \"The + video's Ministerio de Cultura (Colombia) rating.\",\n \"type\": \"string\"\n + \ },\n \"ilfilmRating\": {\n \"enum\": [\n \"ilfilmUnspecified\",\n + \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n + \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n + \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + in Israel.\",\n \"type\": \"string\"\n },\n \"bfvcRating\": + {\n \"description\": \"The video's rating from Thailand's Board of + Film and Video Censors.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"E\",\n \"13\",\n \"15\",\n + \ \"18\",\n \"20\",\n \"B\",\n \"\"\n + \ ],\n \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n + \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n + \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n + \ \"bfvcUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"nfvcbRating\": {\n \"description\": \"The video's + rating from Nigeria's National Film and Video Censors Board.\",\n \"type\": + \"string\",\n \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ]\n },\n \"mpaaRating\": + \ \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n + \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n + \ \"\"\n ]\n },\n \"russiaRating\": {\n \"description\": + \"The video's National Film Registry of the Russian Federation (MKRF - Russia) + rating.\",\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n + \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n + \ \"\"\n ],\n \"enum\": [\n \"russiaUnspecified\",\n + \ \"russia0\",\n \"russia6\",\n \"russia12\",\n + \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"bbfcRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"R18\",\n \"\"\n ],\n + \ \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n + \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n + \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n + \ \"bbfcUnrated\"\n ],\n \"description\": \"The + video's British Board of Film Classification (BBFC) rating.\",\n \"type\": + \"string\"\n },\n \"cccRating\": {\n \"description\": + \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Todo espectador\",\n + \ \"6+ - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n + \ \"18+\",\n \"18+ - contenido excesivamente violento\",\n + \ \"18+ - contenido pornogr\xE1fico\",\n \"\"\n ],\n + \ \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n + \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n + \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"resorteviolenciaRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n + \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n + \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n + \ ],\n \"description\": \"The video's rating in Venezuela.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n + \ \"\"\n ]\n },\n \"chfilmRating\": {\n \"enum\": + [\n \"chfilmUnspecified\",\n \"chfilm0\",\n \"chfilm6\",\n + \ \"chfilm12\",\n \"chfilm16\",\n \"chfilm18\",\n + \ \"chfilmUnrated\"\n ],\n \"description\": \"The + video's rating in Switzerland.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"0\",\n \"6\",\n \"12\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"eirinRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n + \ \"R18+\",\n \"\"\n ],\n \"description\": + \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n + \ \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n + \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n + \ \"eirinUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"kijkwijzerRating\": {\n \"description\": \"The + video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de Classificatie + van Audiovisuele Media (Netherlands).\",\n \"enumDescriptions\": + [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n + \ \"12\",\n \"16\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n + \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n + \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n + \ \"kijkwijzerUnrated\"\n ]\n },\n \"pefilmRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"NC-17\",\n \"! X\",\n \"\"\n ],\n - \ \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n - \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n - \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n - \ ],\n \"description\": \"The video's Motion Picture Association - of America (MPAA) rating.\"\n },\n \"moctwRating\": {\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P\",\n \"PG\",\n \"R\",\n - \ \"\",\n \"R-12\",\n \"R-15\"\n ],\n - \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ]\n },\n \"nfrcRating\": {\n \"enum\": [\n - \ \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n + \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n \ \"\"\n ],\n \"description\": \"The video's rating - from the Bulgarian National Film Center.\",\n \"type\": \"string\"\n - \ },\n \"resorteviolenciaRating\": {\n \"enum\": [\n - \ \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Venezuela.\"\n },\n \"djctqRatingReasons\": - {\n \"description\": \"Reasons that explain why the video received - its DJCQT (Brazil) rating.\",\n \"type\": \"array\",\n \"items\": - {\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ]\n }\n },\n - \ \"mtrcbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"R-13\",\n \"R-16\",\n - \ \"R-18\",\n \"X\",\n \"\"\n ],\n - \ \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\"\n },\n \"lsfRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n - \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n - \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"description\": \"The video's rating from Indonesia's - Lembaga Sensor Film.\"\n },\n \"mdaRating\": {\n \"enum\": - [\n \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n - \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n - \ \"mdaR21\",\n \"mdaUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ],\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\"\n },\n \"czfilmRating\": - {\n \"description\": \"The video's rating in the Czech Republic.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ]\n },\n + in Peru.\",\n \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n + \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n + \ \"pefilmUnrated\"\n ]\n },\n \"catvfrRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"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.\",\n \"enum\": + [\n \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n + \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n + \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"type\": + \"string\"\n },\n \"grfilmRating\": {\n \"enum\": [\n + \ \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n + \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n + \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"K\",\n + \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n + \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The video's + rating in Greece.\"\n },\n \"kmrbRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 + \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n + \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n + \ \"\"\n ],\n \"description\": \"The video's Korea + Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. + The KMRB rates videos in South Korea.\",\n \"enum\": [\n \"kmrbUnspecified\",\n + \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n + \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"cncRating\": + {\n \"description\": \"Rating system in France - Commission de classification + cinematographique\",\n \"enum\": [\n \"cncUnspecified\",\n + \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n + \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n + \ \"cncUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n \ \"tvpgRating\": {\n \"type\": \"string\",\n \"description\": \"The video's TV Parental Guidelines (TVPG) rating.\",\n \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n @@ -2487,442 +2280,1206 @@ interactions: \ \"\"\n ],\n \"enum\": [\n \"tvpgUnspecified\",\n \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ]\n },\n \"rcnofRating\": - {\n \"description\": \"The video's rating from the Hungarian Nemzeti - Filmiroda, the Rating Committee of the National Office of Film.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ]\n },\n \"nbcRating\": - {\n \"description\": \"The video's rating from the Maldives National - Bureau of Classification.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ]\n },\n - \ \"grfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n - \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"description\": \"The video's rating in Greece.\"\n },\n - \ \"skfilmRating\": {\n \"description\": \"The video's rating - in Slovakia.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n - \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ]\n },\n \"smaisRating\": {\n \"description\": - \"The video's rating in Iceland.\",\n \"type\": \"string\",\n \"enum\": - [\n \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n - \ \"smais12\",\n \"smais14\",\n \"smais16\",\n - \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ]\n },\n \"kfcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"enum\": - [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"mccaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\"\n },\n - \ \"mccypRating\": {\n \"description\": \"The video's rating - from the Danish Film Institute's (Det Danske Filminstitut) Media Council for - Children and Young People.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"enum\": [\n - \ \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n - \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n - \ ]\n },\n \"nkclvRating\": {\n \"description\": - \"The video's rating from the Nacion\xE3lais Kino centrs (National Film Centre - of Latvia).\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"kijkwijzerRating\": - {\n \"description\": \"The video's NICAM/Kijkwijzer rating from the - Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\",\n - \ \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ]\n },\n \"cicfRating\": {\n \"description\": - \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ]\n },\n \"fpbRatingReasons\": {\n - \ \"type\": \"array\",\n \"description\": \"Reasons that - explain why the video received its FPB (South Africa) rating.\",\n \"items\": - {\n \"type\": \"string\",\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"South Africa rating content descriptors.\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"eirinRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG-12\",\n \"R15+\",\n \"R18+\",\n - \ \"\"\n ],\n \"description\": \"The video's Eirin - (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n \"enum\": - [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ]\n },\n \"cccRating\": {\n \"enum\": [\n - \ \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Todo espectador\",\n - \ \"6+ - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n - \ \"18+\",\n \"18+ - contenido excesivamente violento\",\n - \ \"18+ - contenido pornogr\xE1fico\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"catvfrRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n - \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n - \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"oflcRating\": {\n \"enum\": [\n - \ \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n - \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n - \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n - \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n - \ ],\n \"description\": \"The video's Office of Film and - Literature Classification (OFLC - New Zealand) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ]\n },\n \"menaMpaaRating\": - {\n \"enum\": [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n - \ \"menaMpaaPg\",\n \"menaMpaaPg13\",\n \"menaMpaaR\",\n - \ \"menaMpaaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To - keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\"\n }\n }\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageAuthorDetails\",\n - \ \"properties\": {\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"isChatModerator\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is a moderator of the live chat.\"\n },\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - display name.\"\n },\n \"isVerified\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author's identity has - been verified by YouTube.\"\n },\n \"isChatOwner\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is the owner - of the live chat.\"\n },\n \"isChatSponsor\": {\n \"description\": - \"Whether the author is a sponsor of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The YouTube channel ID.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoCategorySnippet\": {\n - \ \"id\": \"VideoCategorySnippet\",\n \"description\": \"Basic details - about a video category, such as its localized title.\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The video category's title.\"\n },\n \"channelId\": {\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"type\": \"string\",\n \"description\": - \"The YouTube channel that created the video category.\"\n },\n \"assignable\": - {\n \"type\": \"boolean\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ActivitySnippet\": {\n \"id\": \"ActivitySnippet\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the resource primarily associated with the activity. - @mutable youtube.activities.insert\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel responsible for this activity\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the video was uploaded.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"description\": - \"The type of activity that the resource describes.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"tvpgUnrated\"\n ]\n },\n \"incaaRating\": + {\n \"description\": \"The video's INCAA (Instituto Nacional de Cine + y Artes Audiovisuales - Argentina) rating.\",\n \"enum\": [\n \"incaaUnspecified\",\n + \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n + \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"ATP + (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 + a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n + \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X + (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"rtcRating\": {\n \"description\": \"The video's General + Directorate of Radio, Television and Cinematography (Mexico) rating.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"rtcUnspecified\",\n + \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n + \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n + \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n + \ \"D\",\n \"\"\n ]\n },\n \"rteRating\": + {\n \"description\": \"The video's rating from Ireland's Raidi\xF3 + Teilif\xEDs \xC9ireann.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n + \ \"MA\",\n \"\"\n ],\n \"enum\": [\n + \ \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n + \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n + \ ]\n },\n \"nkclvRating\": {\n \"enum\": [\n + \ \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n + \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n + \ \"nkclvUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n + \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The video's + rating from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\"\n + \ },\n \"lsfRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n + \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n + \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n + \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n + \ \"17\",\n \"D\",\n \"21\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from Indonesia's + Lembaga Sensor Film.\"\n },\n \"ytRating\": {\n \"description\": + \"A rating that YouTube uses to identify age-restricted content.\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n + \ ]\n },\n \"nbcplRating\": {\n \"description\": + \"The video's rating in Poland.\",\n \"enum\": [\n \"nbcplUnspecified\",\n + \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n + \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n - \ \"like\",\n \"favorite\",\n \"comment\",\n - \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n - \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ]\n },\n \"thumbnails\": - {\n \"description\": \"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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel associated with the activity.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the resource primarily associated with the activity.\"\n },\n \"groupId\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about an activity, including title, description, thumbnails, activity - type and group. Next ID: 12\"\n },\n \"VideoGetRatingResponse\": {\n - \ \"id\": \"VideoGetRatingResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoGetRatingResponse\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"kfcbRating\": {\n \"enum\": [\n \"kfcbUnspecified\",\n + \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n + \ \"kfcbR\",\n \"kfcbUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"description\": + \"The video's rating from the Kenya Film Classification Board.\",\n \"type\": + \"string\"\n },\n \"cscfRating\": {\n \"description\": + \"The video's rating from Luxembourg's Commission de surveillance de la classification + des films (CSCF).\",\n \"enum\": [\n \"cscfUnspecified\",\n + \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n + \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n + \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n + \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"bmukkRating\": {\n \"enum\": [\n \"bmukkUnspecified\",\n + \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n + \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n + \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n + \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n + \ \"14+\",\n \"16+\",\n \"\"\n ],\n + \ \"description\": \"The video's rating from the Austrian Board of + Media Classification (Bundesministerium f\xFCr Unterricht, Kunst und Kultur).\"\n + \ },\n \"cicfRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n + \ \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n + \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n + \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ]\n + \ },\n \"mcstRating\": {\n \"description\": \"The video's + rating system for Vietnam - MCST\",\n \"enumDescriptions\": [\n \"\",\n + \ \"P\",\n \"0\",\n \"C13\",\n \"C16\",\n + \ \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n \"\"\n + \ ],\n \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n + \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n + \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n + \ \"mcstUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"csaRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n + \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n + \ \"csaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"Interdiction\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from France's Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast + content.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"ContentRating\"\n },\n \"CaptionListResponse\": {\n \"type\": + \"object\",\n \"properties\": {\n \"items\": {\n \"items\": + {\n \"$ref\": \"Caption\"\n },\n \"type\": \"array\",\n + \ \"description\": \"A list of captions that match the request criteria.\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n },\n \"items\": - {\n \"description\": \"A list of ratings that match the request criteria.\",\n - \ \"items\": {\n \"$ref\": \"VideoRating\"\n },\n - \ \"type\": \"array\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoRating\": {\n \"properties\": - {\n \"videoId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ },\n \"rating\": {\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"Rating of - a video.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about rating of a video.\",\n - \ \"id\": \"VideoRating\"\n },\n \"InvideoBranding\": {\n \"id\": - \"InvideoBranding\",\n \"description\": \"LINT.IfChange Describes an - invideo branding.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"targetChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel to which this branding links. If not present it defaults to - the current channel.\"\n },\n \"position\": {\n \"description\": - \"The spatial position within the video where the branding watermark will - be displayed.\",\n \"$ref\": \"InvideoPosition\"\n },\n \"timing\": - {\n \"description\": \"The temporal position within the video where - watermark will be displayed.\",\n \"$ref\": \"InvideoTiming\"\n },\n - \ \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The url of the uploaded image. Only used in apiary to api communication.\"\n - \ },\n \"imageBytes\": {\n \"format\": \"byte\",\n \"type\": - \"string\",\n \"description\": \"The bytes the uploaded image. Only - used in api to youtube communication.\"\n }\n }\n },\n \"MonitorStreamInfo\": - {\n \"description\": \"Settings and Info of the monitor stream\",\n \"properties\": - {\n \"enableMonitorStream\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value determines whether the monitor stream - is enabled for the broadcast. If the monitor stream is enabled, then YouTube - will broadcast the event content on a special stream intended only for the - broadcaster's consumption. The broadcaster can use the stream to review the - event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"embedHtml\": {\n \"description\": \"HTML code - that embeds a player that plays the monitor stream.\",\n \"type\": - \"string\"\n },\n \"broadcastStreamDelayMs\": {\n \"description\": - \"If you have set the enableMonitorStream property to true, then this property - determines the length of the live broadcast delay.\",\n \"type\": - \"integer\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"format\": \"uint32\"\n }\n },\n \"id\": \"MonitorStreamInfo\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"description\": \"Information about a channel that a user subscribed - to.\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that the user subscribed to.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"VideoAbuseReportSecondaryReason\": {\n \"properties\": - {\n \"label\": {\n \"description\": \"The localized label - for this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID of this abuse report secondary reason.\"\n }\n },\n \"id\": - \"VideoAbuseReportSecondaryReason\",\n \"type\": \"object\"\n },\n - \ \"LiveChatSuperStickerDetails\": {\n \"properties\": {\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made.\"\n },\n \"tier\": {\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"superStickerMetadata\": {\n \"description\": + the fixed string \\\"youtube#captionListResponse\\\".\",\n \"default\": + \"youtube#captionListResponse\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n }\n },\n \"id\": \"CaptionListResponse\"\n + \ },\n \"I18nRegion\": {\n \"properties\": {\n \"snippet\": + {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": + \"The snippet object contains basic details about the i18n region, such as + region code and human-readable name.\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the i18n region.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n \"default\": + \"youtube#i18nRegion\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"A *i18nRegion* resource identifies a region where + YouTube is available.\",\n \"type\": \"object\",\n \"id\": \"I18nRegion\"\n + \ },\n \"LiveChatSuperStickerDetails\": {\n \"properties\": {\n + \ \"amountDisplayString\": {\n \"description\": \"A rendered + string that displays the fund amount and currency to the user.\",\n \"type\": + \"string\"\n },\n \"superStickerMetadata\": {\n \"description\": \"Information about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the purchase was made.\"\n },\n \"tier\": + {\n \"description\": \"The tier in which the amount belongs. Lower + amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"amountMicros\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"LocalizedProperty\": {\n \"properties\": {\n \"defaultLanguage\": - {\n \"description\": \"The language of the default property.\",\n - \ \"$ref\": \"LanguageTag\"\n },\n \"localized\": {\n + \ },\n \"VideoAbuseReportSecondaryReason\": {\n \"properties\": + {\n \"label\": {\n \"description\": \"The localized label + for this abuse report secondary reason.\",\n \"type\": \"string\"\n + \ },\n \"id\": {\n \"description\": \"The ID of this + abuse report secondary reason.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"type\": + \"object\"\n },\n \"ChannelToStoreLinkDetails\": {\n \"description\": + \"Information specific to a store on a merchandising platform linked to a + YouTube channel.\",\n \"id\": \"ChannelToStoreLinkDetails\",\n \"type\": + \"object\",\n \"properties\": {\n \"storeUrl\": {\n \"type\": + \"string\",\n \"description\": \"Landing page of the store.\"\n },\n + \ \"merchantId\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"Google Merchant Center id of the + store.\"\n },\n \"storeName\": {\n \"type\": \"string\",\n + \ \"description\": \"Name of the store.\"\n }\n }\n },\n + \ \"ChannelSectionContentDetails\": {\n \"properties\": {\n \"playlists\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"The playlist ids for type single_playlist and + multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n + \ \"type\": \"array\"\n },\n \"channels\": {\n \"description\": + \"The channel ids for type multiple_channels.\",\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n }\n + \ },\n \"description\": \"Details about a channelsection, including + playlists and channels.\",\n \"type\": \"object\",\n \"id\": \"ChannelSectionContentDetails\"\n + \ },\n \"VideoAbuseReportReasonSnippet\": {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n + \ \"properties\": {\n \"label\": {\n \"description\": + \"The localized label belonging to this abuse report reason.\",\n \"type\": + \"string\"\n },\n \"secondaryReasons\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n + \ },\n \"description\": \"The secondary reasons associated + with this reason, if any are available. (There might be 0 or more.)\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"Basic details + about a video category, such as its localized title.\"\n },\n \"Channel\": + {\n \"type\": \"object\",\n \"properties\": {\n \"conversionPings\": + {\n \"$ref\": \"ChannelConversionPings\",\n \"description\": + \"The conversionPings object encapsulates information about conversion pings + that need to be respected by the channel.\"\n },\n \"id\": {\n + \ \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel.\"\n },\n \"auditDetails\": + {\n \"description\": \"The auditionDetails object encapsulates channel + data that is relevant for YouTube Partners during the audition process.\",\n + \ \"$ref\": \"ChannelAuditDetails\"\n },\n \"contentOwnerDetails\": + {\n \"description\": \"The contentOwnerDetails object encapsulates + channel data that is relevant for YouTube Partners linked with the channel.\",\n + \ \"$ref\": \"ChannelContentOwnerDetails\"\n },\n \"status\": + {\n \"$ref\": \"ChannelStatus\",\n \"description\": \"The + status object encapsulates information about the privacy status of the channel.\"\n + \ },\n \"statistics\": {\n \"description\": \"The statistics + object encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"contentDetails\": + {\n \"$ref\": \"ChannelContentDetails\",\n \"description\": + \"The contentDetails object encapsulates information about the channel's content.\"\n + \ },\n \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the channel, such as its title, description, and thumbnail images.\"\n },\n + \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": + \"ChannelLocalization\"\n },\n \"type\": \"object\",\n \"description\": + \"Localizations for different languages\"\n },\n \"topicDetails\": + {\n \"description\": \"The topicDetails object encapsulates information + about Freebase topics associated with the channel.\",\n \"$ref\": + \"ChannelTopicDetails\"\n },\n \"brandingSettings\": {\n \"$ref\": + \"ChannelBrandingSettings\",\n \"description\": \"The brandingSettings + object encapsulates information about the branding of the channel.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#channel\"\n }\n },\n + \ \"description\": \"A *channel* resource contains information about a + YouTube channel.\",\n \"id\": \"Channel\"\n },\n \"LiveBroadcast\": + {\n \"id\": \"LiveBroadcast\",\n \"properties\": {\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"contentDetails\": {\n \"description\": + \"The contentDetails object contains information about the event's video content, + such as whether the content can be shown in an embedded video player or if + it will be archived and therefore available for viewing after the event has + concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n },\n + \ \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n \"description\": + \"The status object contains information about the event's status.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"LiveBroadcastSnippet\",\n \"description\": + \"The snippet object contains basic details about the event, including its + title, description, start time, and end time.\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube assigns to uniquely identify + the broadcast.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"statistics\": {\n \"$ref\": + \"LiveBroadcastStatistics\",\n \"description\": \"The statistics + object contains info about the event's current stats. These include concurrent + viewers and total chat count. Statistics can change (in either direction) + during the lifetime of an event. Statistics are only returned while the event + is live.\"\n },\n \"kind\": {\n \"default\": \"youtube#liveBroadcast\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveBroadcast\\\".\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"A + *liveBroadcast* resource represents an event that will be streamed, via live + video, on YouTube.\"\n },\n \"ChannelSection\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n + \ \"description\": \"The targeting object contains basic targeting + settings about the channel section.\"\n },\n \"localizations\": + {\n \"description\": \"Localizations for different languages\",\n + \ \"type\": \"object\",\n \"additionalProperties\": {\n \"$ref\": + \"ChannelSectionLocalization\"\n }\n },\n \"kind\": + {\n \"default\": \"youtube#channelSection\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel section.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n + \ \"description\": \"The contentDetails object contains details about + the channel section content, such as a list of playlists or channels featured + in the section.\"\n },\n \"snippet\": {\n \"$ref\": + \"ChannelSectionSnippet\",\n \"description\": \"The snippet object + contains basic details about the channel section, such as its type, style + and title.\"\n }\n },\n \"id\": \"ChannelSection\"\n },\n + \ \"LevelDetails\": {\n \"properties\": {\n \"displayName\": + {\n \"description\": \"The name that should be used when referring + to this level.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LevelDetails\"\n },\n \"VideoCategorySnippet\": + {\n \"properties\": {\n \"assignable\": {\n \"type\": + \"boolean\"\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The video category's title.\"\n },\n \"channelId\": + {\n \"description\": \"The YouTube channel that created the video + category.\",\n \"type\": \"string\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\"\n + \ }\n },\n \"description\": \"Basic details about a video + category, such as its localized title.\",\n \"id\": \"VideoCategorySnippet\",\n + \ \"type\": \"object\"\n },\n \"ActivityContentDetailsSubscription\": + {\n \"id\": \"ActivityContentDetailsSubscription\",\n \"description\": + \"Information about a channel that a user subscribed to.\",\n \"type\": + \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + that the user subscribed to.\",\n \"$ref\": \"ResourceId\"\n }\n + \ }\n },\n \"CommentThreadListResponse\": {\n \"id\": \"CommentThreadListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n + \ \"description\": \"A list of comment threads that match the request + criteria.\",\n \"items\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"type\": \"array\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n + \ \"default\": \"youtube#commentThreadListResponse\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n }\n }\n },\n \"CaptionSnippet\": + {\n \"description\": \"Basic details about a caption track, such as its + language and name.\",\n \"type\": \"object\",\n \"properties\": + {\n \"trackKind\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The caption track's type.\",\n \"enum\": + [\n \"standard\",\n \"ASR\",\n \"forced\"\n + \ ]\n },\n \"name\": {\n \"annotations\": {\n + \ \"required\": [\n \"youtube.captions.insert\"\n ]\n + \ },\n \"type\": \"string\",\n \"description\": + \"The name of the caption track. The name is intended to be visible to the + user as an option during playback.\"\n },\n \"language\": {\n + \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"description\": \"The language of + the caption track. The property value is a BCP-47 language tag.\",\n \"type\": + \"string\"\n },\n \"isDraft\": {\n \"description\": + \"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. @mutable youtube.captions.insert + youtube.captions.update\",\n \"type\": \"boolean\"\n },\n + \ \"isLarge\": {\n \"description\": \"Indicates whether the + caption track uses large text for the vision-impaired. The default value is + false.\",\n \"type\": \"boolean\"\n },\n \"isEasyReader\": + {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n + \ },\n \"audioTrackType\": {\n \"description\": \"The + type of audio track associated with the caption track.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"unknown\",\n + \ \"primary\",\n \"commentary\",\n \"descriptive\"\n + \ ]\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video associated with + the caption track. @mutable youtube.captions.insert\",\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"type\": \"string\"\n },\n + \ \"status\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"serving\",\n \"syncing\",\n \"failed\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The caption track's status.\"\n },\n \"isAutoSynced\": {\n + \ \"description\": \"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.\",\n \"type\": \"boolean\"\n + \ },\n \"lastUpdated\": {\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time when the caption track was + last updated.\",\n \"type\": \"string\"\n },\n \"isCC\": + {\n \"description\": \"Indicates whether the track contains closed + captions for the deaf and hard of hearing. The default value is false.\",\n + \ \"type\": \"boolean\"\n },\n \"failureReason\": {\n + \ \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n + \ \"processingFailed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The reason that + YouTube failed to process the caption track. This property is only present + if the state property's value is failed.\"\n }\n },\n \"id\": + \"CaptionSnippet\"\n },\n \"AbuseType\": {\n \"id\": \"AbuseType\",\n + \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"I18nRegionListResponse\": + {\n \"id\": \"I18nRegionListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"items\": {\n \"description\": + \"A list of regions where YouTube is available. In this map, the i18n region + ID is the map key, and its value is the corresponding i18nRegion resource.\",\n \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n }\n },\n \"default\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LocalizedProperty\",\n \"type\": - \"object\"\n },\n \"VideoLiveStreamingDetails\": {\n \"properties\": - {\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The time that - the broadcast is scheduled to end. If the value is empty or the property is - not present, then the broadcast is scheduled to contiue indefinitely.\"\n - \ },\n \"activeLiveChatId\": {\n \"description\": \"The - ID of the currently active live chat attached to this video. This field is - filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\",\n \"type\": \"string\"\n },\n \"concurrentViewers\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"I18nRegion\"\n }\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n + \ \"default\": \"youtube#i18nRegionListResponse\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n }\n }\n },\n \"ChannelSectionListResponse\": + {\n \"properties\": {\n \"items\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"ChannelSection\"\n },\n + \ \"description\": \"A list of ChannelSections that match the request + criteria.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"kind\": {\n \"default\": + \"youtube#channelSectionListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"ChannelSectionListResponse\"\n },\n \"I18nLanguageListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n + \ \"default\": \"youtube#i18nLanguageListResponse\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"I18nLanguage\"\n },\n \"description\": \"A list of supported + i18n languages. In this map, the i18n language ID is the map key, and its + value is the corresponding i18nLanguage resource.\",\n \"type\": + \"array\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n }\n + \ },\n \"id\": \"I18nLanguageListResponse\"\n },\n \"LiveChatSuperChatDetails\": + {\n \"properties\": {\n \"tier\": {\n \"type\": \"integer\",\n + \ \"description\": \"The tier in which the amount belongs. Lower amounts + belong to lower tiers. The lowest tier is 1.\",\n \"format\": \"uint32\"\n + \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the purchase was made.\"\n },\n \"amountMicros\": + {\n \"format\": \"uint64\",\n \"description\": \"The amount + purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": + \"string\"\n },\n \"userComment\": {\n \"description\": + \"The comment added by the user to this Super Chat event.\",\n \"type\": + \"string\"\n },\n \"amountDisplayString\": {\n \"type\": + \"string\",\n \"description\": \"A rendered string that displays + the fund amount and currency to the user.\"\n }\n },\n \"id\": + \"LiveChatSuperChatDetails\",\n \"type\": \"object\"\n },\n \"LiveChatUserBannedMessageDetails\": + {\n \"properties\": {\n \"banDurationSeconds\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + duration of the ban. This property is only present if the banType is temporary.\"\n + \ },\n \"banType\": {\n \"description\": \"The type + of ban.\",\n \"type\": \"string\",\n \"enum\": [\n \"permanent\",\n + \ \"temporary\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"\"\n ]\n },\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": + \"The details of the user that was banned.\"\n }\n },\n \"id\": + \"LiveChatUserBannedMessageDetails\",\n \"type\": \"object\"\n },\n + \ \"ChannelSectionTargeting\": {\n \"description\": \"ChannelSection + targeting setting.\",\n \"id\": \"ChannelSectionTargeting\",\n \"properties\": + {\n \"regions\": {\n \"type\": \"array\",\n \"description\": + \"The region the channel section is targeting.\",\n \"items\": {\n + \ \"type\": \"string\"\n }\n },\n \"languages\": + {\n \"type\": \"array\",\n \"description\": \"The language + the channel section is targeting.\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"countries\": {\n \"description\": + \"The country the channel section is targeting.\",\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n }\n + \ },\n \"type\": \"object\"\n },\n \"LiveChatBanSnippet\": + {\n \"id\": \"LiveChatBanSnippet\",\n \"properties\": {\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n },\n + \ \"type\": {\n \"enumDescriptions\": [\n \"An invalid + ban type.\",\n \"A permanent ban.\",\n \"A temporary + ban.\"\n ],\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n + \ \"permanent\",\n \"temporary\"\n ],\n \"description\": + \"The type of ban.\",\n \"type\": \"string\"\n },\n \"liveChatId\": + {\n \"description\": \"The chat this ban is pertinent to.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LocalizedString\": + {\n \"properties\": {\n \"language\": {\n \"type\": \"string\"\n + \ },\n \"value\": {\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"LocalizedString\",\n \"type\": \"object\"\n + \ },\n \"VideoLiveStreamingDetails\": {\n \"properties\": {\n \"concurrentViewers\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": \"The number of viewers currently watching the broadcast. The property and its value will be present if the broadcast has current viewers and the broadcast owner has not hidden the viewcount for the video. Note that YouTube stops tracking the number of concurrent viewers for a broadcast when the broadcast ends. So, this property would not identify the number of viewers watching an archived video of a live broadcast that already ended.\"\n },\n - \ \"actualStartTime\": {\n \"format\": \"date-time\",\n \"description\": - \"The time that the broadcast actually started. This value will not be available - until the broadcast begins.\",\n \"type\": \"string\"\n },\n - \ \"scheduledStartTime\": {\n \"format\": \"date-time\",\n + \ \"actualEndTime\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The time that the broadcast actually + ended. This value will not be available until the broadcast is over.\"\n },\n + \ \"scheduledEndTime\": {\n \"type\": \"string\",\n \"format\": + \"date-time\",\n \"description\": \"The time that the broadcast is + scheduled to end. If the value is empty or the property is not present, then + the broadcast is scheduled to contiue indefinitely.\"\n },\n \"activeLiveChatId\": + {\n \"description\": \"The ID of the currently active live chat attached + to this video. This field is filled only if the video is a currently live + broadcast that has live chat. Once the broadcast transitions to complete this + field will be removed and the live chat closed down. For persistent broadcasts + that live chat id will no longer be tied to this video but rather to the new + video being displayed at the persistent page.\",\n \"type\": \"string\"\n + \ },\n \"scheduledStartTime\": {\n \"format\": \"date-time\",\n \ \"description\": \"The time that the broadcast is scheduled to begin.\",\n - \ \"type\": \"string\"\n },\n \"actualEndTime\": {\n - \ \"type\": \"string\",\n \"description\": \"The time that - the broadcast actually ended. This value will not be available until the broadcast - is over.\",\n \"format\": \"date-time\"\n }\n },\n \"id\": - \"VideoLiveStreamingDetails\",\n \"type\": \"object\",\n \"description\": - \"Details about the live streaming metadata.\"\n },\n \"VideoAgeGating\": - {\n \"id\": \"VideoAgeGating\",\n \"properties\": {\n \"restricted\": - {\n \"type\": \"boolean\",\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\"\n },\n - \ \"alcoholContent\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether or not the video has alcoholic beverage content. Only - users of legal purchasing age in a particular country, as identified by ICAP, - can view the content.\"\n },\n \"videoGameRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Video game rating, if any.\",\n \"enum\": [\n \"anyone\",\n - \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n - \ ]\n }\n },\n \"type\": \"object\"\n },\n \"Caption\": - {\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"default\": \"youtube#caption\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the caption track.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"CaptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the caption.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"Caption\",\n - \ \"description\": \"A *caption* resource represents a YouTube caption - track. A caption track is associated with exactly one YouTube video.\",\n - \ \"type\": \"object\"\n },\n \"SuperChatEventListResponse\": {\n - \ \"id\": \"SuperChatEventListResponse\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n },\n - \ \"description\": \"A list of Super Chat purchases that match the - request criteria.\",\n \"type\": \"array\"\n },\n \"etag\": + \ \"type\": \"string\"\n },\n \"actualStartTime\": {\n + \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The time that the broadcast actually started. This value will not be available + until the broadcast begins.\"\n }\n },\n \"id\": \"VideoLiveStreamingDetails\",\n + \ \"description\": \"Details about the live streaming metadata.\",\n \"type\": + \"object\"\n },\n \"Cuepoint\": {\n \"type\": \"object\",\n \"properties\": + {\n \"cueType\": {\n \"enum\": [\n \"cueTypeUnspecified\",\n + \ \"cueTypeAd\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The identifier for cuepoint resource.\"\n },\n \"etag\": {\n + \ \"type\": \"string\"\n },\n \"durationSecs\": {\n + \ \"description\": \"The duration of this cuepoint.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"walltimeMs\": + {\n \"format\": \"uint64\",\n \"description\": \"The wall + clock time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms + and walltime_ms may be set at a time.\",\n \"type\": \"string\"\n + \ },\n \"insertionOffsetTimeMs\": {\n \"description\": + \"The time when the cuepoint should be inserted by offset to the broadcast + actual start time.\",\n \"format\": \"int64\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Note that there + may be a 5-second end-point resolution issue. For instance, if a cuepoint + comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, + depending. This is an artifact of HLS.\",\n \"id\": \"Cuepoint\"\n },\n + \ \"ChannelListResponse\": {\n \"type\": \"object\",\n \"properties\": + {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"Channel\"\n + \ },\n \"type\": \"array\"\n },\n \"kind\": + {\n \"default\": \"youtube#channelListResponse\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n + \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": + \"ChannelListResponse\"\n },\n \"VideoRating\": {\n \"description\": + \"Basic details about rating of a video.\",\n \"id\": \"VideoRating\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the video.\"\n },\n \"rating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n \"description\": + \"Rating of a video.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The entity is liked.\",\n \"The entity is disliked.\"\n + \ ]\n }\n }\n },\n \"Member\": {\n \"id\": + \"Member\",\n \"type\": \"object\",\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#member\\\".\",\n \"default\": + \"youtube#member\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"MemberSnippet\",\n \"description\": \"The + snippet object contains basic details about the member.\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": + \"string\"\n }\n },\n \"description\": \"A *member* resource + represents a member for a YouTube channel. A member provides recurring monetary + support to a creator and receives special benefits.\"\n },\n \"TokenPagination\": + {\n \"id\": \"TokenPagination\",\n \"properties\": {},\n \"description\": + \"Stub token pagination template to suppress results.\",\n \"type\": + \"object\"\n },\n \"SearchListResponse\": {\n \"properties\": {\n + \ \"regionCode\": {\n \"type\": \"string\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n \"description\": \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"Video\": {\n - \ \"properties\": {\n \"liveStreamingDetails\": {\n \"$ref\": - \"VideoLiveStreamingDetails\",\n \"description\": \"The liveStreamingDetails - object contains metadata about a live video broadcast. The object will only - be present in a video resource if the video is an upcoming, live, or completed - live broadcast.\"\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the video - in an embedded player.\",\n \"$ref\": \"VideoPlayer\"\n },\n - \ \"recordingDetails\": {\n \"$ref\": \"VideoRecordingDetails\",\n - \ \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\"\n },\n - \ \"topicDetails\": {\n \"description\": \"The topicDetails - object encapsulates information about Freebase topics associated with the - video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"description\": \"The localizations - object contains localized versions of the basic details about the video, such - as its title and description.\",\n \"additionalProperties\": {\n - \ \"$ref\": \"VideoLocalization\"\n }\n },\n \"id\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ },\n \"processingDetails\": {\n \"description\": \"The - processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoProcessingDetails\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"default\": \"youtube#video\"\n },\n \"ageGating\": - {\n \"description\": \"Age restriction details related to a video. - This data can only be retrieved by the video owner.\",\n \"$ref\": - \"VideoAgeGating\"\n },\n \"projectDetails\": {\n \"$ref\": - \"VideoProjectDetails\",\n \"description\": \"The projectDetails - object contains information about the project specific video metadata. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"suggestions\": {\n \"$ref\": \"VideoSuggestions\",\n - \ \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\"\n - \ },\n \"fileDetails\": {\n \"description\": \"The fileDetails - object encapsulates information about the video file that was uploaded to - YouTube, including the file's resolution, duration, audio and video codecs, - stream bitrates, and more. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoFileDetails\"\n },\n \"statistics\": - {\n \"$ref\": \"VideoStatistics\",\n \"description\": \"The - statistics object contains statistics about the video.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the video's uploading, processing, - and privacy statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the video, such as its title, description, and category.\",\n - \ \"$ref\": \"VideoSnippet\"\n },\n \"monetizationDetails\": - {\n \"$ref\": \"VideoMonetizationDetails\",\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\"\n }\n },\n \"description\": \"A *video* - resource represents a YouTube video.\",\n \"id\": \"Video\",\n \"type\": - \"object\"\n },\n \"ChannelSnippet\": {\n \"description\": \"Basic - details about a channel, including title, description and thumbnails.\",\n - \ \"id\": \"ChannelSnippet\",\n \"properties\": {\n \"thumbnails\": + \ },\n \"kind\": {\n \"default\": \"youtube#searchListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#searchListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"SearchResult\"\n },\n \"description\": \"Pagination information + for token pagination.\",\n \"type\": \"array\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"SearchListResponse\"\n },\n + \ \"VideoGetRatingResponse\": {\n \"type\": \"object\",\n \"id\": + \"VideoGetRatingResponse\",\n \"properties\": {\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n + \ \"default\": \"youtube#videoGetRatingResponse\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"description\": \"A list of + ratings that match the request criteria.\",\n \"items\": {\n \"$ref\": + \"VideoRating\"\n }\n }\n }\n },\n \"Activity\": + {\n \"type\": \"object\",\n \"description\": \"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.\",\n \"properties\": + {\n \"id\": {\n \"description\": \"The ID that YouTube uses + to uniquely identify the activity.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#activity\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n + \ \"type\": \"string\"\n },\n \"contentDetails\": {\n + \ \"$ref\": \"ActivityContentDetails\",\n \"description\": + \"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.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the activity, including + the activity's type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n + \ }\n },\n \"id\": \"Activity\"\n },\n \"InvideoPosition\": + {\n \"properties\": {\n \"type\": {\n \"enumDescriptions\": + [\n \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"corner\"\n ],\n \"description\": \"Defines + the position type.\"\n },\n \"cornerPosition\": {\n \"enum\": + [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n + \ \"bottomRight\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"Describes in which corner of the video the visual widget will appear.\"\n + \ }\n },\n \"id\": \"InvideoPosition\",\n \"description\": + \"Describes the spatial position of a visual widget inside a video. It is + a union of various position types, out of which only will be set one.\",\n + \ \"type\": \"object\"\n },\n \"VideoFileDetailsAudioStream\": {\n + \ \"description\": \"Information about an audio stream.\",\n \"id\": + \"VideoFileDetailsAudioStream\",\n \"type\": \"object\",\n \"properties\": + {\n \"channelCount\": {\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"description\": \"The number of audio channels that + the stream contains.\"\n },\n \"codec\": {\n \"description\": + \"The audio codec that the stream uses.\",\n \"type\": \"string\"\n + \ },\n \"bitrateBps\": {\n \"description\": \"The audio + stream's bitrate, in bits per second.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n },\n \"vendor\": {\n \"description\": + \"A value that uniquely identifies a video vendor. Typically, the value is + a four-letter vendor code.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"ChannelContentOwnerDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"contentOwner\": {\n \"description\": + \"The ID of the content owner linked to the channel.\",\n \"type\": + \"string\"\n },\n \"timeLinked\": {\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time when the channel was linked + to the content owner.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"ChannelContentOwnerDetails\",\n \"description\": \"The + contentOwnerDetails object encapsulates channel data that is relevant for + YouTube Partners linked with the channel.\"\n },\n \"VideoStatus\": + {\n \"properties\": {\n \"madeForKids\": {\n \"type\": + \"boolean\"\n },\n \"failureReason\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"Unable to convert + video content.\",\n \"Invalid file format.\",\n \"Empty + file.\",\n \"File was too small.\",\n \"Unsupported + codec.\",\n \"Upload wasn't finished.\"\n ],\n \"description\": + \"This value explains why a video failed to upload. This property is only + present if the uploadStatus property indicates that the upload failed.\",\n + \ \"enum\": [\n \"conversion\",\n \"invalidFile\",\n + \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n + \ \"uploadAborted\"\n ]\n },\n \"license\": + {\n \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n + \ ],\n \"description\": \"The video's license. @mutable youtube.videos.insert + youtube.videos.update\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"privacyStatus\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's privacy status.\",\n \"enum\": + [\n \"public\",\n \"unlisted\",\n \"private\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"publishAt\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time when the video is scheduled to publish. It can be set + only if the privacy status of the video is private..\"\n },\n \"embeddable\": + {\n \"type\": \"boolean\",\n \"description\": \"This value + indicates if the video can be embedded on another website. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"publicStatsViewable\": {\n + \ \"description\": \"This value indicates if the extended video statistics + on the watch page can be viewed by everyone. Note that the view count, likes, + etc will still be visible if this is disabled. @mutable youtube.videos.insert + youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"uploadStatus\": + {\n \"description\": \"The status of the uploaded video.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"Video has been + uploaded but not processed yet.\",\n \"Video has been successfully + processed.\",\n \"Processing has failed. See FailureReason.\",\n + \ \"Video has been rejected. See RejectionReason.\",\n \"Video + has been deleted.\"\n ],\n \"enum\": [\n \"uploaded\",\n + \ \"processed\",\n \"failed\",\n \"rejected\",\n + \ \"deleted\"\n ]\n },\n \"rejectionReason\": + {\n \"description\": \"This value explains why YouTube rejected an + uploaded video. This property is only present if the uploadStatus property + indicates that the upload was rejected.\",\n \"enum\": [\n \"copyright\",\n + \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n + \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n + \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"Copyright infringement.\",\n \"Inappropriate video + content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms + of use violation.\",\n \"Uploader account was suspended.\",\n \"Video + duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader + closed his/her account.\",\n \"Trademark infringement.\",\n \"An + unspecified legal reason.\"\n ]\n }\n },\n \"type\": + \"object\",\n \"id\": \"VideoStatus\",\n \"description\": \"Basic + details about a video category, such as its localized title. Next Id: 18\"\n + \ },\n \"IngestionInfo\": {\n \"type\": \"object\",\n \"properties\": + {\n \"streamName\": {\n \"description\": \"The stream name + that YouTube assigns to the video stream.\",\n \"type\": \"string\"\n + \ },\n \"rtmpsIngestionAddress\": {\n \"description\": + \"This ingestion url may be used instead of ingestionAddress in order to stream + via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n + \ },\n \"backupIngestionAddress\": {\n \"type\": \"string\",\n + \ \"description\": \"The backup ingestion URL that you should use + to stream video to YouTube. You have the option of simultaneously streaming + the content that you are sending to the ingestionAddress to this URL.\"\n + \ },\n \"rtmpsBackupIngestionAddress\": {\n \"description\": + \"This ingestion url may be used instead of backupIngestionAddress in order + to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": + \"string\"\n },\n \"ingestionAddress\": {\n \"type\": + \"string\",\n \"description\": \"The primary ingestion URL that you + should use to stream video to YouTube. You must stream video to this URL. + Depending on which application or tool you use to encode your video stream, + you may need to enter the stream URL and stream name separately or you may + need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* + \"\n }\n },\n \"id\": \"IngestionInfo\",\n \"description\": + \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\"\n + \ },\n \"ActivityContentDetailsPlaylistItem\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information about the resource that was added + to the playlist.\",\n \"$ref\": \"ResourceId\"\n },\n \"playlistId\": + {\n \"description\": \"The value that YouTube uses to uniquely identify + the playlist.\",\n \"type\": \"string\"\n },\n \"playlistItemId\": + {\n \"type\": \"string\",\n \"description\": \"ID of the + item within the playlist.\"\n }\n },\n \"description\": \"Information + about a new playlist item.\",\n \"id\": \"ActivityContentDetailsPlaylistItem\"\n + \ },\n \"LiveChatModerator\": {\n \"type\": \"object\",\n \"id\": + \"LiveChatModerator\",\n \"description\": \"A *liveChatModerator* resource + represents a moderator for a YouTube live chat. A chat moderator has the ability + to ban/unban users from a chat, remove message, etc.\",\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely + identify the moderator.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n \"default\": + \"youtube#liveChatModerator\"\n },\n \"snippet\": {\n \"$ref\": + \"LiveChatModeratorSnippet\",\n \"description\": \"The snippet object + contains basic details about the moderator.\"\n }\n }\n },\n + \ \"LiveChatModeratorListResponse\": {\n \"id\": \"LiveChatModeratorListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n },\n + \ \"description\": \"A list of moderators that match the request criteria.\",\n + \ \"type\": \"array\"\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n + \ \"default\": \"youtube#liveChatModeratorListResponse\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"ActivityListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"ActivityListResponse\",\n \"properties\": {\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#activityListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Activity\"\n }\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"ActivityContentDetailsChannelItem\": {\n \"id\": \"ActivityContentDetailsChannelItem\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": + {\n \"description\": \"The resourceId object contains information + that identifies the resource that was added to the channel.\",\n \"$ref\": + \"ResourceId\"\n }\n },\n \"description\": \"Details about + a resource which was added to a channel.\"\n },\n \"VideoLocalization\": + {\n \"properties\": {\n \"description\": {\n \"description\": + \"Localized version of the video's description.\",\n \"type\": \"string\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"Localized version of the video's title.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"VideoLocalization\",\n \"description\": + \"Localized versions of certain video properties (e.g. title).\"\n },\n + \ \"SubscriptionContentDetails\": {\n \"id\": \"SubscriptionContentDetails\",\n + \ \"description\": \"Details about the content to witch a subscription + refers.\",\n \"properties\": {\n \"totalItemCount\": {\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The approximate number of items that the subscription points to.\"\n },\n + \ \"newItemCount\": {\n \"description\": \"The number of new + items in the subscription since its content was last read.\",\n \"format\": + \"uint32\",\n \"type\": \"integer\"\n },\n \"activityType\": + {\n \"type\": \"string\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n + \ \"all\",\n \"uploads\"\n ],\n \"description\": + \"The type of activity this subscription is for (only uploads, everything).\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ]\n }\n },\n \"type\": \"object\"\n + \ },\n \"LiveChatTextMessageDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"messageText\": {\n \"description\": + \"The user's message.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"LiveChatTextMessageDetails\"\n },\n \"VideoProcessingDetails\": + {\n \"type\": \"object\",\n \"description\": \"Describes processing + status and progress and availability of some other Video resource parts.\",\n + \ \"properties\": {\n \"processingProgress\": {\n \"$ref\": + \"VideoProcessingDetailsProcessingProgress\",\n \"description\": + \"The processingProgress object contains information about the progress YouTube + has made in processing the video. The values are really only relevant if the + video's processing status is processing.\"\n },\n \"processingFailureReason\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The reason that YouTube failed to process the + video. This property will only have a value if the processingStatus property's + value is failed.\",\n \"enum\": [\n \"uploadFailed\",\n + \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n + \ ]\n },\n \"editorSuggestionsAvailability\": {\n \"description\": + \"This value indicates whether video editing suggestions, which might improve + video quality or the playback experience, are available for the video. You + can retrieve these suggestions by requesting the suggestions part in your + videos.list() request.\",\n \"type\": \"string\"\n },\n \"thumbnailsAvailability\": + {\n \"type\": \"string\",\n \"description\": \"This value + indicates whether thumbnail images have been generated for the video.\"\n + \ },\n \"processingIssuesAvailability\": {\n \"description\": + \"This value indicates whether the video processing engine has generated suggestions + that might improve YouTube's ability to process the the video, warnings that + explain video processing problems, or errors that cause video processing problems. + You can retrieve these suggestions by requesting the suggestions part in your + videos.list() request.\",\n \"type\": \"string\"\n },\n \"fileDetailsAvailability\": + {\n \"type\": \"string\",\n \"description\": \"This value + indicates whether file details are available for the uploaded video. You can + retrieve a video's file details by requesting the fileDetails part in your + videos.list() request.\"\n },\n \"processingStatus\": {\n \"enum\": + [\n \"processing\",\n \"succeeded\",\n \"failed\",\n + \ \"terminated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's processing status. This value indicates + whether YouTube was able to process the video or if the video is still being + processed.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"tagSuggestionsAvailability\": + {\n \"description\": \"This value indicates whether keyword (tag) + suggestions are available for the video. Tags can be added to a video's metadata + to make it easier for other users to find the video. You can retrieve these + suggestions by requesting the suggestions part in your videos.list() request.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoProcessingDetails\"\n + \ },\n \"InvideoTiming\": {\n \"id\": \"InvideoTiming\",\n \"description\": + \"Describes a temporal position of a visual widget inside a video.\",\n \"type\": + \"object\",\n \"properties\": {\n \"durationMs\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"Defines + the duration in milliseconds for which the promotion should be displayed. + If missing, the client should use the default.\"\n },\n \"offsetMs\": + {\n \"format\": \"uint64\",\n \"description\": \"Defines + the time at which the promotion will appear. Depending on the value of type + the value of the offsetMs field will represent a time offset from the start + or from the end of the video, expressed in milliseconds.\",\n \"type\": + \"string\"\n },\n \"type\": {\n \"type\": \"string\",\n + \ \"description\": \"Describes a timing type. If the value is offsetFromStart, + then the offsetMs field represents an offset from the start of the video. + If the value is offsetFromEnd, then the offsetMs field represents an offset + from the end of the video.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"offsetFromStart\",\n + \ \"offsetFromEnd\"\n ]\n }\n }\n },\n \"SearchResult\": + {\n \"type\": \"object\",\n \"description\": \"A search result contains + information about a YouTube video, channel, or playlist that matches the search + parameters specified in an API request. While a search result points to a + uniquely identifiable resource, like a video, it does not have its own persistent + data.\",\n \"properties\": {\n \"id\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The id object contains information + that can be used to uniquely identify the resource that matches the search + request.\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n + \ \"default\": \"youtube#searchResult\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": + \"SearchResultSnippet\",\n \"description\": \"The snippet object + contains basic details about a search result, such as its title or description. + For example, if the search result is a video, then the title will be the video's + title and the description will be the video's description.\"\n }\n + \ },\n \"id\": \"SearchResult\"\n },\n \"MembershipsLevelSnippet\": + {\n \"properties\": {\n \"levelDetails\": {\n \"description\": + \"Details about the pricing level.\",\n \"$ref\": \"LevelDetails\"\n + \ },\n \"creatorChannelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The id of the channel that's offering channel + memberships.\"\n }\n },\n \"id\": \"MembershipsLevelSnippet\",\n + \ \"type\": \"object\"\n },\n \"LiveStreamListResponse\": {\n \"type\": + \"object\",\n \"properties\": {\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"description\": \"A list of live streams that match + the request criteria.\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n + \ }\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n + \ \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveStreamListResponse\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"LiveStreamListResponse\"\n },\n \"LiveChatMemberMilestoneChatDetails\": + {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"type\": + \"object\",\n \"properties\": {\n \"userComment\": {\n \"type\": + \"string\",\n \"description\": \"The comment added by the member + to this Member Milestone Chat. This field is empty for messages without a + comment from the member.\"\n },\n \"memberMonth\": {\n \"description\": + \"The total amount of months (rounded up) the viewer has been a member that + granted them this Member Milestone Chat. This is the same number of months + as is being displayed to YouTube users.\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\"\n },\n \"memberLevelName\": + {\n \"description\": \"The name of the Level at which the viever + is a member. The Level names are defined by the YouTube channel offering the + Membership. In some situations this field isn't filled.\",\n \"type\": + \"string\"\n }\n }\n },\n \"TestItem\": {\n \"id\": + \"TestItem\",\n \"type\": \"object\",\n \"properties\": {\n \"featuredPart\": + {\n \"type\": \"boolean\"\n },\n \"gaia\": {\n \"type\": + \"string\",\n \"format\": \"int64\"\n },\n \"id\": + {\n \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": + \"TestItemTestItemSnippet\"\n }\n }\n },\n \"I18nLanguageSnippet\": + {\n \"id\": \"I18nLanguageSnippet\",\n \"description\": \"Basic + details about an i18n language, such as language code and human-readable name.\",\n + \ \"properties\": {\n \"hl\": {\n \"description\": \"A + short BCP-47 code that uniquely identifies a language.\",\n \"type\": + \"string\"\n },\n \"name\": {\n \"type\": \"string\",\n + \ \"description\": \"The human-readable name of the language in the + language itself.\"\n }\n },\n \"type\": \"object\"\n },\n + \ \"Thumbnail\": {\n \"description\": \"A thumbnail is an image representing + a YouTube resource.\",\n \"type\": \"object\",\n \"properties\": + {\n \"width\": {\n \"type\": \"integer\",\n \"description\": + \"(Optional) Width of the thumbnail image.\",\n \"format\": \"uint32\"\n + \ },\n \"height\": {\n \"description\": \"(Optional) + Height of the thumbnail image.\",\n \"format\": \"uint32\",\n \"type\": + \"integer\"\n },\n \"url\": {\n \"type\": \"string\",\n + \ \"description\": \"The thumbnail image's URL.\"\n }\n },\n + \ \"id\": \"Thumbnail\"\n },\n \"LiveBroadcastContentDetails\": + {\n \"description\": \"Detailed settings of a broadcast.\",\n \"properties\": + {\n \"latencyPreference\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"Best for: highest quality viewer playbacks and higher resolutions.\",\n + \ \"Best for: near real-time interaction, with minimal playback + buffering.\",\n \"Best for: real-time interaction Does not support: + Closed captions, 1440p, and 4k resolutions\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n + \ \"normal\",\n \"low\",\n \"ultraLow\"\n + \ ],\n \"description\": \"If both this and enable_low_latency + are set, they must match. LATENCY_NORMAL should match enable_low_latency=false + LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should + have enable_low_latency omitted.\"\n },\n \"enableClosedCaptions\": + {\n \"description\": \"This setting indicates whether HTTP POST closed + captioning is enabled for this broadcast. The ingestion URL of the closed + captions is returned through the liveStreams API. This is mutually exclusive + with using the closed_captions_type property, and is equivalent to setting + closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n \"type\": + \"boolean\"\n },\n \"stereoLayout\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"stereoLayoutUnspecified\",\n + \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n + \ ],\n \"description\": \"The 3D stereo layout of this broadcast. + This defaults to mono.\",\n \"type\": \"string\"\n },\n \"enableEmbed\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether the broadcast video can be played in an embedded player. + If you choose to archive the video (using the enableArchive property), this + setting will also apply to the archived video.\"\n },\n \"recordFromStart\": + {\n \"description\": \"Automatically start recording after the event + goes live. The default value for this property is true. *Important:* You must + also set the enableDvr property's value to true if you want the playback to + be available immediately after the broadcast ends. If you set this property's + value to true but do not also set the enableDvr property to true, there may + be a delay of around one day before the archived video will be available for + playback.\",\n \"type\": \"boolean\"\n },\n \"enableLowLatency\": + {\n \"type\": \"boolean\",\n \"description\": \"Indicates + whether this broadcast has low latency enabled.\"\n },\n \"enableAutoStop\": + {\n \"description\": \"This setting indicates whether auto stop is + enabled for this broadcast. The default value for this property is false. + This setting can only be used by Events.\",\n \"type\": \"boolean\"\n + \ },\n \"startWithSlate\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether the broadcast + should automatically begin with an in-stream slate when you update the broadcast's + status to live. After updating the status, you then need to send a liveCuepoints.insert + request that sets the cuepoint's eventState to end to remove the in-stream + slate and make your broadcast stream visible to viewers.\"\n },\n \"monitorStream\": + {\n \"$ref\": \"MonitorStreamInfo\",\n \"description\": + \"The monitorStream object contains information about the monitor stream, + which the broadcaster can use to review the event content before the broadcast + stream is shown publicly.\"\n },\n \"enableAutoStart\": {\n + \ \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether auto start is enabled for this broadcast. The default value + for this property is false. This setting can only be used by Events.\"\n },\n + \ \"enableDvr\": {\n \"type\": \"boolean\",\n \"description\": + \"This setting determines whether viewers can access DVR controls while watching + the video. DVR controls enable the viewer to control the video playback experience + by pausing, rewinding, or fast forwarding content. The default value for this + property is true. *Important:* You must set the value to true and also set + the enableArchive property's value to true if you want to make playback available + immediately after the broadcast ends.\"\n },\n \"enableContentEncryption\": + {\n \"description\": \"This setting indicates whether YouTube should + enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n + \ },\n \"projection\": {\n \"description\": \"The projection + format of this broadcast. This defaults to rectangular.\",\n \"type\": + \"string\",\n \"enum\": [\n \"projectionUnspecified\",\n + \ \"rectangular\",\n \"360\",\n \"mesh\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"closedCaptionsType\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n + \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n + \ ]\n },\n \"boundStreamId\": {\n \"type\": + \"string\",\n \"description\": \"This value uniquely identifies the + live stream bound to the broadcast.\"\n },\n \"boundStreamLastUpdateTimeMs\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time that the live stream referenced by boundStreamId was last updated.\",\n + \ \"format\": \"date-time\"\n },\n \"mesh\": {\n \"format\": + \"byte\",\n \"type\": \"string\",\n \"description\": \"The + mesh for projecting the video if projection is mesh. The mesh value must be + a UTF-8 string containing the base-64 encoding of 3D mesh data that follows + the Spherical Video V2 RFC specification for an mshp box, excluding the box + size and type but including the following four reserved zero bytes for the + version and flags.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveBroadcastContentDetails\"\n },\n \"LiveChatMessageSnippet\": {\n + \ \"properties\": {\n \"fanFundingEventDetails\": {\n \"description\": + \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n + \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n },\n \"hasDisplayContent\": + {\n \"description\": \"Whether the message has display content that + should be displayed to users.\",\n \"type\": \"boolean\"\n },\n + \ \"publishedAt\": {\n \"description\": \"The date and time + when the message was orignally published.\",\n \"type\": \"string\",\n + \ \"format\": \"date-time\"\n },\n \"liveChatId\": {\n + \ \"type\": \"string\"\n },\n \"superChatDetails\": + {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": + \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n + \ },\n \"membershipGiftingDetails\": {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n + \ \"description\": \"Details about the Membership Gifting event, this + is only set if the type is 'membershipGiftingEvent'.\"\n },\n \"textMessageDetails\": + {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": + \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n + \ },\n \"authorChannelId\": {\n \"description\": \"The + ID of the user that authored this message, this field is not always filled. + textMessageEvent - the user that wrote the message fanFundingEvent - the user + that funded the broadcast newSponsorEvent - the user that just became a sponsor + memberMilestoneChatEvent - the member that sent the message membershipGiftingEvent + - the user that made the purchase giftMembershipReceivedEvent - the user that + received the gift membership messageDeletedEvent - the moderator that took + the action messageRetractedEvent - the author that retracted their message + userBannedEvent - the moderator that took the action superChatEvent - the + user that made the purchase superStickerEvent - the user that made the purchase\",\n + \ \"type\": \"string\"\n },\n \"giftMembershipReceivedDetails\": + {\n \"description\": \"Details about the Gift Membership Received + event, this is only set if the type is 'giftMembershipReceivedEvent'.\",\n + \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n + \ \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n + \ \"description\": \"Details about the New Member Announcement event, + this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" + is the new term for \\\"sponsor\\\".\"\n },\n \"displayMessage\": + {\n \"type\": \"string\",\n \"description\": \"Contains + a string that can be displayed to the user. If this field is not present the + message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT + are silent.\"\n },\n \"type\": {\n \"description\": + \"The type of message, this will always be present, it determines the contents + of the message as well as which fields will be present.\",\n \"enum\": + [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n + \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n + \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n + \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n + \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n + \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n + \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n + \ },\n \"superStickerDetails\": {\n \"description\": + \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n + \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"messageRetractedDetails\": + {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"memberMilestoneChatDetails\": + {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": + \"Details about the Member Milestone Chat event, this is only set if the type + is 'memberMilestoneChatEvent'.\"\n },\n \"userBannedDetails\": + {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n }\n },\n + \ \"description\": \"Next ID: 33\",\n \"id\": \"LiveChatMessageSnippet\",\n + \ \"type\": \"object\"\n },\n \"MembershipsDuration\": {\n \"id\": + \"MembershipsDuration\",\n \"type\": \"object\",\n \"properties\": + {\n \"memberSince\": {\n \"type\": \"string\",\n \"description\": + \"The date and time when the user became a continuous member across all levels.\"\n + \ },\n \"memberTotalDurationMonths\": {\n \"format\": + \"int32\",\n \"description\": \"The cumulative time the user has + been a member across all levels in complete months (the time is rounded down + to the nearest integer).\",\n \"type\": \"integer\"\n }\n + \ }\n },\n \"ActivityContentDetailsUpload\": {\n \"id\": \"ActivityContentDetailsUpload\",\n + \ \"description\": \"Information about the uploaded video.\",\n \"properties\": + {\n \"videoId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the uploaded video.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"VideoMonetizationDetails\": + {\n \"description\": \"Details about monetization of a YouTube Video.\",\n + \ \"type\": \"object\",\n \"id\": \"VideoMonetizationDetails\",\n + \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n + \ \"description\": \"The value of access indicates whether the video + can be monetized or not.\"\n }\n }\n },\n \"VideoProjectDetails\": + {\n \"id\": \"VideoProjectDetails\",\n \"description\": \"DEPRECATED. + b/157517979: This part was never populated after it was added. However, it + sees non-zero traffic because there is generated client code in the wild that + refers to it [1]. We keep this field and do NOT remove it because otherwise + V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"type\": \"object\",\n \"properties\": {}\n },\n \"SuperChatEventSnippet\": + {\n \"id\": \"SuperChatEventSnippet\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"channelId\": {\n \"description\": + \"Channel id where the event occurred.\",\n \"type\": \"string\"\n + \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the purchase was made. ISO 4217.\"\n },\n \"superStickerMetadata\": + {\n \"description\": \"If this event is a Super Sticker event, this + field will contain metadata about the Super Sticker.\",\n \"$ref\": + \"SuperStickerMetadata\"\n },\n \"createdAt\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time when the event occurred.\"\n },\n \"isSuperStickerEvent\": + {\n \"description\": \"True if this event is a Super Sticker event.\",\n + \ \"type\": \"boolean\"\n },\n \"messageType\": {\n + \ \"format\": \"uint32\",\n \"description\": \"The tier for + the paid message, which is based on the amount of money spent to purchase + the message.\",\n \"type\": \"integer\"\n },\n \"commentText\": + {\n \"type\": \"string\",\n \"description\": \"The text + contents of the comment left by the user.\"\n },\n \"amountMicros\": + {\n \"description\": \"The purchase amount, in micros of the purchase + currency. e.g., 1 is represented as 1000000.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n },\n \"displayString\": {\n + \ \"type\": \"string\",\n \"description\": \"A rendered string + that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). The + string is rendered for the given language.\"\n },\n \"supporterDetails\": + {\n \"description\": \"Details about the supporter.\",\n \"$ref\": + \"ChannelProfileDetails\"\n }\n }\n },\n \"ActivitySnippet\": + {\n \"id\": \"ActivitySnippet\",\n \"properties\": {\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel associated with the activity.\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The title of the resource primarily associated with the activity.\"\n },\n + \ \"description\": {\n \"description\": \"The description of + the resource primarily associated with the activity. @mutable youtube.activities.insert\",\n + \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"description\": + \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n + \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the video was uploaded.\",\n \"type\": \"string\"\n + \ },\n \"type\": {\n \"description\": \"The type of + activity that the resource describes.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n + \ \"like\",\n \"favorite\",\n \"comment\",\n + \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n + \ \"bulletin\",\n \"social\",\n \"channelItem\",\n + \ \"promotedItem\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"channelTitle\": {\n \"description\": + \"Channel title for the channel responsible for this activity\",\n \"type\": + \"string\"\n },\n \"groupId\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"Basic details about an activity, including + title, description, thumbnails, activity type and group. Next ID: 12\"\n },\n + \ \"ThirdPartyLinkListResponse\": {\n \"properties\": {\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"ThirdPartyLink\"\n }\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\"\n + \ }\n },\n \"id\": \"ThirdPartyLinkListResponse\",\n \"type\": + \"object\"\n },\n \"ResourceId\": {\n \"id\": \"ResourceId\",\n + \ \"properties\": {\n \"playlistId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the referred resource, if that resource is a playlist. This property is only + present if the resourceId.kind value is youtube#playlist.\"\n },\n + \ \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a video. This property is only present if the resourceId.kind + value is youtube#video.\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a channel. This property is only present if the resourceId.kind + value is youtube#channel.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"description\": \"The type of the API resource.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"description\": \"A resource id is a generic reference that points + to another YouTube resource.\"\n },\n \"MembershipsLevel\": {\n \"id\": + \"MembershipsLevel\",\n \"properties\": {\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely + identify the memberships level.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#membershipsLevel\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"description\": + \"A *membershipsLevel* resource represents an offer made by YouTube creators + for their fans. Users can become members of the channel by joining one of + the available levels. They will provide recurring monetary support and receives + special benefits.\",\n \"type\": \"object\"\n },\n \"ChannelSnippet\": + {\n \"type\": \"object\",\n \"description\": \"Basic details about + a channel, including title, description and thumbnails.\",\n \"id\": + \"ChannelSnippet\",\n \"properties\": {\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"The channel's title.\"\n },\n + \ \"customUrl\": {\n \"type\": \"string\",\n \"description\": + \"The custom url of the channel.\"\n },\n \"description\": {\n + \ \"description\": \"The description of the channel.\",\n \"type\": + \"string\"\n },\n \"localized\": {\n \"description\": + \"Localized title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n + \ },\n \"country\": {\n \"type\": \"string\",\n \"description\": + \"The country of the channel.\"\n },\n \"publishedAt\": {\n + \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time that the channel was created.\"\n },\n \"defaultLanguage\": + {\n \"description\": \"The language of the channel's default title + and description.\",\n \"type\": \"string\"\n },\n \"thumbnails\": {\n \"description\": \"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 @@ -2935,1170 +3492,324 @@ interactions: images in your application if it tries to load YouTube images from the http domain. Thumbnail images might be empty for newly created channels and might take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the channel's default title and - description.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the channel was created.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"title\": - {\n \"description\": \"The channel's title.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"country\": {\n \"description\": \"The country - of the channel.\",\n \"type\": \"string\"\n },\n \"customUrl\": - {\n \"description\": \"The custom url of the channel.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the channel.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"WatchSettings\": {\n \"properties\": - {\n \"featuredPlaylistId\": {\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\",\n - \ \"type\": \"string\"\n },\n \"backgroundColor\": {\n - \ \"description\": \"The text color for the video watch page's branded - area.\",\n \"type\": \"string\"\n },\n \"textColor\": - {\n \"type\": \"string\",\n \"description\": \"The background - color for the video watch page's branded area.\"\n }\n },\n \"id\": - \"WatchSettings\",\n \"description\": \"Branding properties for the watch. - All deprecated.\",\n \"type\": \"object\"\n },\n \"SuperChatEvent\": - {\n \"description\": \"A `__superChatEvent__` resource represents a Super - Chat purchase on a YouTube channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#superChatEvent\"\n - \ },\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the Super Chat event.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"SuperChatEvent\"\n },\n \"ThirdPartyLink\": {\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"default\": \"youtube#thirdPartyLink\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the status of the link.\",\n - \ \"$ref\": \"ThirdPartyLinkStatus\"\n },\n \"snippet\": - {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\"\n },\n \"linkingToken\": {\n \"description\": - \"The linking_token identifies a YouTube account and channel with which the - third party account is linked.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ThirdPartyLink\",\n - \ \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\"\n },\n \"TestItemTestItemSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"TestItemTestItemSnippet\",\n \"properties\": {}\n },\n - \ \"ImageSettings\": {\n \"id\": \"ImageSettings\",\n \"properties\": - {\n \"largeBrandedBannerImageUrl\": {\n \"description\": \"The - URL for the 854px by 70px image that appears below the video player in the - expanded video view of the video watch page.\",\n \"$ref\": \"LocalizedProperty\"\n - \ },\n \"bannerMobileLowImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Mobile size low resolution (320x88).\"\n - \ },\n \"bannerExternalUrl\": {\n \"description\": \"This - is generated when a ChannelBanner.Insert request has succeeded for the given - channel.\",\n \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\"\n },\n \"bannerTvImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size extra high resolution - (2560x424).\",\n \"type\": \"string\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"bannerTabletImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. Tablet size (1707x283).\"\n },\n \"trackingImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\"\n },\n \"bannerMobileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size (640x175).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"bannerMobileExtraHdImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Mobile size high resolution (1440x395).\"\n - \ },\n \"bannerImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Desktop size (1060x175).\"\n },\n - \ \"bannerTvLowImageUrl\": {\n \"description\": \"Banner image. - TV size low resolution (854x480).\",\n \"type\": \"string\"\n },\n - \ \"bannerTabletHdImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. Tablet size high resolution (2276x377).\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Branding properties for images associated with the - channel.\"\n },\n \"PlaylistPlayer\": {\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"PlaylistPlayer\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\",\n \"$ref\": \"ResourceId\"\n },\n \"reason\": - {\n \"type\": \"string\",\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n + \ }\n }\n },\n \"ThirdPartyLinkStatus\": {\n \"type\": + \"object\",\n \"description\": \"The third-party link status object contains + information about the status of the link.\",\n \"properties\": {\n \"linkStatus\": + {\n \"enum\": [\n \"unknown\",\n \"failed\",\n + \ \"pending\",\n \"linked\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n }\n },\n \"id\": + \"ThirdPartyLinkStatus\"\n },\n \"VideoFileDetailsVideoStream\": {\n + \ \"id\": \"VideoFileDetailsVideoStream\",\n \"properties\": {\n + \ \"widthPixels\": {\n \"format\": \"uint32\",\n \"type\": + \"integer\",\n \"description\": \"The encoded video content's width + in pixels. You can calculate the video's encoding aspect ratio as width_pixels + / height_pixels.\"\n },\n \"codec\": {\n \"description\": + \"The video codec that the stream uses.\",\n \"type\": \"string\"\n + \ },\n \"frameRateFps\": {\n \"type\": \"number\",\n + \ \"format\": \"double\",\n \"description\": \"The video + stream's frame rate, in frames per second.\"\n },\n \"aspectRatio\": + {\n \"format\": \"double\",\n \"description\": \"The video + content's display aspect ratio, which specifies the aspect ratio in which + the video should be displayed.\",\n \"type\": \"number\"\n },\n + \ \"rotation\": {\n \"description\": \"The amount that YouTube + needs to rotate the original source content to properly display the video.\",\n + \ \"enum\": [\n \"none\",\n \"clockwise\",\n + \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that the resource is recommended to the user.\"\n },\n - \ \"seedResourceId\": {\n \"description\": \"The seedResourceId - object contains information about the resource that caused the recommendation.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"Information that identifies the recommended resource.\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"retractedMessageId\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"CdnSettings\": {\n \"properties\": {\n \"ingestionType\": - {\n \"type\": \"string\",\n \"enum\": [\n \"rtmp\",\n - \ \"dash\",\n \"webrtc\",\n \"hls\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \" The method or protocol used to transmit the - video stream.\"\n },\n \"ingestionInfo\": {\n \"$ref\": - \"IngestionInfo\",\n \"description\": \"The ingestionInfo object - contains information that YouTube provides that you need to transmit your - RTMP or HTTP stream to YouTube.\"\n },\n \"format\": {\n \"description\": - \"The format of the video stream that you are sending to Youtube. \",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"frameRate\": {\n \"description\": - \"The frame rate of the inbound video data.\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"resolution\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"240p\",\n \"360p\",\n - \ \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\",\n - \ \"2160p\",\n \"variable\"\n ],\n \"description\": - \"The resolution of the inbound video data.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Brief description of the live - stream cdn settings.\",\n \"id\": \"CdnSettings\",\n \"type\": \"object\"\n - \ },\n \"LiveChatBan\": {\n \"id\": \"LiveChatBan\",\n \"type\": - \"object\",\n \"description\": \"A `__liveChatBan__` resource represents - a ban for a YouTube live chat.\",\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the ban.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"default\": - \"youtube#liveChatBan\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ChannelLocalization\": - {\n \"properties\": {\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - description.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for channel's title.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelLocalization\",\n - \ \"description\": \"Channel localization setting\"\n },\n \"LiveBroadcastListResponse\": - {\n \"id\": \"LiveBroadcastListResponse\",\n \"properties\": {\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"description\": \"A list of broadcasts - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveBroadcastListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatMessageSnippet\": {\n \"description\": - \"Next ID: 33\",\n \"type\": \"object\",\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"properties\": {\n \"hasDisplayContent\": {\n \"description\": - \"Whether the message has display content that should be displayed to users.\",\n - \ \"type\": \"boolean\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"memberMilestoneChatDetails\": {\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\",\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"membershipGiftingDetails\": {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n - \ \"description\": \"Details about the Membership Gifting event, this - is only set if the type is 'membershipGiftingEvent'.\"\n },\n \"newSponsorDetails\": - {\n \"description\": \"Details about the New Member Announcement - event, this is only set if the type is 'newSponsorEvent'. Please note that - \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n \"$ref\": - \"LiveChatNewSponsorDetails\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"superStickerDetails\": {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n - \ \"description\": \"Details about the Super Sticker event, this is - only set if the type is 'superStickerEvent'.\"\n },\n \"displayMessage\": - {\n \"description\": \"Contains a string that can be displayed to - the user. If this field is not present the message is silent, at the moment - only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\",\n \"type\": - \"string\"\n },\n \"liveChatId\": {\n \"type\": \"string\"\n - \ },\n \"giftMembershipReceivedDetails\": {\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\",\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"fanFundingEventDetails\": {\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the message was orignally - published.\"\n },\n \"superChatDetails\": {\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\",\n - \ \"$ref\": \"LiveChatSuperChatDetails\"\n },\n \"type\": - {\n \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\",\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"authorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the user that authored - this message, this field is not always filled. textMessageEvent - the user - that wrote the message fanFundingEvent - the user that funded the broadcast - newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n }\n }\n },\n \"SuperChatEventSnippet\": - {\n \"properties\": {\n \"channelId\": {\n \"description\": - \"Channel id where the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"isSuperStickerEvent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"True if this event is a Super Sticker event.\"\n - \ },\n \"commentText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text contents of the comment left by the - user.\"\n },\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the purchase was made. - ISO 4217.\"\n },\n \"displayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the purchase amount and currency (e.g., \\\"$1.00\\\"). The string is rendered - for the given language.\"\n },\n \"amountMicros\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\"\n },\n \"messageType\": {\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"createdAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the event occurred.\",\n - \ \"type\": \"string\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\"\n },\n \"supporterDetails\": {\n - \ \"description\": \"Details about the supporter.\",\n \"$ref\": - \"ChannelProfileDetails\"\n }\n },\n \"id\": \"SuperChatEventSnippet\",\n - \ \"type\": \"object\"\n },\n \"ThumbnailDetails\": {\n \"id\": - \"ThumbnailDetails\",\n \"type\": \"object\",\n \"description\": - \"Internal representation of thumbnails for a YouTube resource.\",\n \"properties\": - {\n \"high\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The high quality image for this resource.\"\n },\n \"standard\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The standard - quality image for this resource.\"\n },\n \"maxres\": {\n \"description\": - \"The maximum resolution quality image for this resource.\",\n \"$ref\": - \"Thumbnail\"\n },\n \"medium\": {\n \"description\": - \"The medium quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The default image for this resource.\"\n }\n }\n },\n \"VideoProjectDetails\": - {\n \"description\": \"DEPRECATED. b/157517979: This part was never populated - after it was added. However, it sees non-zero traffic because there is generated - client code in the wild that refers to it [1]. We keep this field and do NOT - remove it because otherwise V3 would return an error when this part gets requested - [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"type\": \"object\",\n \"id\": \"VideoProjectDetails\",\n \"properties\": - {}\n },\n \"SearchResultSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - search result. 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.\"\n },\n \"title\": {\n \"description\": - \"The title of the search result.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\"\n },\n \"liveBroadcastContent\": - {\n \"type\": \"string\",\n \"description\": \"It indicates - if the resource (video or channel) has upcoming/active live broadcast content. - Or it's \\\"none\\\" if there is not any upcoming/active live broadcasts.\",\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ]\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The creation date and time of the resource that - the search result identifies.\",\n \"format\": \"date-time\"\n },\n - \ \"description\": {\n \"description\": \"A description of - the search result.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the channel that published the resource that the search result identifies.\"\n - \ }\n },\n \"description\": \"Basic details about a search - result, including title, description and thumbnails of the item referenced - by the search result.\",\n \"id\": \"SearchResultSnippet\"\n },\n - \ \"LiveStreamHealthStatus\": {\n \"type\": \"object\",\n \"id\": - \"LiveStreamHealthStatus\",\n \"properties\": {\n \"configurationIssues\": - {\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"type\": \"array\",\n \"description\": \"The - configurations issues on this stream\"\n },\n \"lastUpdateTimeSeconds\": - {\n \"format\": \"uint64\",\n \"description\": \"The last - time this status was updated (in seconds)\",\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The status code - of this stream\",\n \"enum\": [\n \"good\",\n \"ok\",\n - \ \"bad\",\n \"noData\",\n \"revoked\"\n ]\n - \ }\n }\n },\n \"ActivityContentDetailsLike\": {\n \"description\": - \"Information about a resource that received a positive (like) rating.\",\n - \ \"id\": \"ActivityContentDetailsLike\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\",\n - \ \"$ref\": \"ResourceId\"\n }\n }\n },\n \"PlaylistLocalization\": - {\n \"id\": \"PlaylistLocalization\",\n \"properties\": {\n \"title\": - {\n \"description\": \"The localized strings for playlist's title.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"The localized strings for playlist's description.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Playlist localization setting\"\n },\n \"ThirdPartyLinkSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"channelToStoreLink\": - {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\"\n },\n \"type\": {\n \"type\": \"string\",\n - \ \"description\": \"Type of the link named after the entities that - are being linked.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ]\n - \ }\n },\n \"id\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"Basic information about a third party account link, including its type and - type-specific information.\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"id\": \"ActivityContentDetailsSocial\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object encapsulates information that identifies the resource associated with - a social network post.\",\n \"$ref\": \"ResourceId\"\n },\n - \ \"imageUrl\": {\n \"description\": \"An image of the post's - author.\",\n \"type\": \"string\"\n },\n \"referenceUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL of - the social network post.\"\n },\n \"type\": {\n \"description\": - \"The name of the social network.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ]\n },\n \"author\": {\n \"description\": - \"The author of the social network post.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Details - about a social network post.\"\n },\n \"ActivityContentDetails\": {\n - \ \"id\": \"ActivityContentDetails\",\n \"properties\": {\n \"channelItem\": - {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n \"description\": - \"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.\"\n - \ },\n \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"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.\"\n },\n \"playlistItem\": - {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"The playlistItem object contains information about a new playlist item. - This property is only present if the snippet.type is playlistItem.\"\n },\n - \ \"like\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsLike\"\n },\n \"bulletin\": {\n \"description\": - \"The bulletin object contains details about a channel bulletin post. This - object is only present if the snippet.type is bulletin.\",\n \"$ref\": - \"ActivityContentDetailsBulletin\"\n },\n \"social\": {\n \"description\": - \"The social object contains details about a social network post. This property - is only present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"recommendation\": {\n \"description\": \"The - recommendation object contains information about a recommended resource. This - property is only present if the snippet.type is recommendation.\",\n \"$ref\": - \"ActivityContentDetailsRecommendation\"\n },\n \"subscription\": - {\n \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"upload\": {\n \"description\": \"The upload - object contains information about the uploaded video. This property is only - present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"promotedItem\": {\n \"$ref\": - \"ActivityContentDetailsPromotedItem\",\n \"description\": \"The - promotedItem object contains details about a resource which is being promoted. - This property is only present if the snippet.type is promotedItem.\"\n }\n - \ },\n \"description\": \"Details about the content of an activity: - the video that was shared, the channel that was subscribed to, etc.\",\n \"type\": - \"object\"\n },\n \"SubscriptionListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"SubscriptionListResponse\",\n \"properties\": {\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"description\": \"A list of subscriptions that match - the request criteria.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n }\n },\n \"VideoAbuseReportReasonSnippet\": {\n \"type\": - \"object\",\n \"description\": \"Basic details about a video category, - such as its localized title.\",\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label belonging to this abuse report - reason.\"\n },\n \"secondaryReasons\": {\n \"description\": - \"The secondary reasons associated with this reason, if any are available. - (There might be 0 or more.)\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportSecondaryReason\"\n },\n \"type\": \"array\"\n - \ }\n }\n },\n \"CommentThread\": {\n \"properties\": - {\n \"replies\": {\n \"description\": \"The replies object - contains a limited number of replies (if any) to the top level comment found - in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the comment thread.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the comment thread and also the top level comment.\",\n \"$ref\": - \"CommentThreadSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#commentThread\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"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.\",\n \"id\": \"CommentThread\",\n \"type\": - \"object\"\n },\n \"MembershipsDurationAtLevel\": {\n \"id\": \"MembershipsDurationAtLevel\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member for the given level.\",\n \"type\": \"string\"\n },\n - \ \"level\": {\n \"description\": \"Pricing level ID.\",\n - \ \"type\": \"string\"\n },\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\"\n }\n }\n - \ },\n \"LiveStreamListResponse\": {\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of live streams that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveStream\"\n }\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"default\": \"youtube#liveStreamListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamListResponse\"\n },\n \"ThirdPartyLinkStatus\": - {\n \"description\": \"The third-party link status object contains information - about the status of the link.\",\n \"properties\": {\n \"linkStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"bitrateBps\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The video + stream's bitrate, in bits per second.\"\n },\n \"vendor\": {\n + \ \"type\": \"string\",\n \"description\": \"A value that + uniquely identifies a video vendor. Typically, the value is a four-letter + vendor code.\"\n },\n \"heightPixels\": {\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The encoded video content's height in pixels.\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"Information about a video stream.\"\n + \ },\n \"SuperStickerMetadata\": {\n \"id\": \"SuperStickerMetadata\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"altTextLanguage\": + {\n \"type\": \"string\",\n \"description\": \"Specifies + the localization language in which the alt text is returned.\"\n },\n + \ \"stickerId\": {\n \"description\": \"Unique identifier of + the Super Sticker. This is a shorter form of the alt_text that includes pack + name and a recognizable characteristic of the sticker.\",\n \"type\": + \"string\"\n },\n \"altText\": {\n \"type\": \"string\",\n + \ \"description\": \"Internationalized alt text that describes the + sticker image and any animation associated with it.\"\n }\n }\n + \ },\n \"VideoContentDetails\": {\n \"properties\": {\n \"licensedContent\": + {\n \"description\": \"The value of is_license_content indicates + whether the video is licensed content.\",\n \"type\": \"boolean\"\n + \ },\n \"duration\": {\n \"description\": \"The length + of the video. The tag value is an ISO 8601 duration in the format PT#M#S, + in which the letters PT indicate that the value specifies a period of time, + and the letters M and S refer to length in minutes and seconds, respectively. + The # characters preceding the M and S letters are both integers that specify + the number of minutes (or seconds) of the video. For example, a value of PT15M51S + indicates that the video is 15 minutes and 51 seconds long.\",\n \"type\": + \"string\"\n },\n \"caption\": {\n \"enum\": [\n \"true\",\n + \ \"false\"\n ],\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The value of captions indicates whether the video has captions or not.\"\n + \ },\n \"projection\": {\n \"enumDescriptions\": [\n \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ]\n }\n - \ },\n \"id\": \"ThirdPartyLinkStatus\",\n \"type\": \"object\"\n - \ },\n \"VideoSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a video, including title, description, uploader, thumbnails - and category.\",\n \"id\": \"VideoSnippet\",\n \"properties\": {\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that the video was uploaded to.\",\n - \ \"type\": \"string\"\n },\n \"categoryId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube video category associated - with the video.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the videos's default snippet.\",\n \"type\": \"string\"\n - \ },\n \"localized\": {\n \"description\": \"Localized - snippet selected with the hl parameter. If no such localization exists, this - field is populated with the default snippet. (Read-only)\",\n \"$ref\": - \"VideoLocalization\"\n },\n \"description\": {\n \"description\": - \"The video's description. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the video was uploaded.\"\n },\n \"tags\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of keyword tags associated with the video. - Tags may contain spaces.\",\n \"type\": \"array\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the video belongs to.\"\n },\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ]\n },\n - \ \"defaultAudioLanguage\": {\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the video. 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.\"\n }\n }\n },\n \"I18nRegionListResponse\": - {\n \"id\": \"I18nRegionListResponse\",\n \"type\": \"object\",\n + \ \"enum\": [\n \"rectangular\",\n \"360\"\n + \ ],\n \"description\": \"Specifies the projection format + of the video.\"\n },\n \"definition\": {\n \"enum\": + [\n \"sd\",\n \"hd\"\n ],\n \"type\": + \"string\",\n \"description\": \"The value of definition indicates + whether the video is available in high definition or only in standard definition.\",\n + \ \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n + \ ]\n },\n \"dimension\": {\n \"description\": + \"The value of dimension indicates whether the video is available in 3D or + in 2D.\",\n \"type\": \"string\"\n },\n \"countryRestriction\": + {\n \"description\": \"The countryRestriction object contains information + about the countries where a video is (or is not) viewable.\",\n \"$ref\": + \"AccessPolicy\"\n },\n \"contentRating\": {\n \"$ref\": + \"ContentRating\",\n \"description\": \"Specifies the ratings that + the video received under various rating schemes.\"\n },\n \"regionRestriction\": + {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": + \"The regionRestriction object contains information about the countries where + a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed + property or the contentDetails.regionRestriction.blocked property.\"\n },\n + \ \"hasCustomThumbnail\": {\n \"description\": \"Indicates + whether the video uploader has provided a custom thumbnail image for the video. + This property is only visible to the video uploader.\",\n \"type\": + \"boolean\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"Details about the content of a YouTube Video.\",\n \"id\": \"VideoContentDetails\"\n + \ },\n \"ThumbnailSetResponse\": {\n \"id\": \"ThumbnailSetResponse\",\n \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"I18nRegion\"\n },\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"default\": \"youtube#i18nRegionListResponse\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"CommentListResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n + this response.\"\n },\n \"items\": {\n \"description\": + \"A list of thumbnails.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"ThumbnailDetails\"\n }\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#thumbnailSetResponse\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentListResponse\\\".\",\n \"default\": - \"youtube#commentListResponse\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of comments that match the request criteria.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"CommentListResponse\"\n },\n \"ChannelConversionPing\": - {\n \"properties\": {\n \"conversionUrl\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"context\": - {\n \"type\": \"string\",\n \"description\": \"Defines the - context of the ping.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ]\n }\n },\n \"description\": \"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.\",\n - \ \"type\": \"object\",\n \"id\": \"ChannelConversionPing\"\n },\n - \ \"VideoSuggestions\": {\n \"description\": \"Specifies suggestions - on how to improve video content, including encoding hints, tag suggestions, - and editor suggestions.\",\n \"id\": \"VideoSuggestions\",\n \"type\": - \"object\",\n \"properties\": {\n \"processingWarnings\": {\n - \ \"description\": \"A list of reasons why YouTube may have difficulty - transcoding the uploaded video or that might result in an erroneous transcoding. - These warnings are generated before YouTube actually processes the uploaded - video file. In addition, they identify issues that are unlikely to cause the - video processing to fail but that might cause problems such as sync issues, - video artifacts, or a missing audio track.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"type\": \"string\"\n }\n },\n - \ \"processingHints\": {\n \"description\": \"A list of suggestions - that may improve YouTube's ability to process the video.\",\n \"items\": - {\n \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"tagSuggestions\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of keyword tags that could be added to - the video's metadata to increase the likelihood that users will locate your - video when searching or browsing on YouTube.\",\n \"items\": {\n - \ \"$ref\": \"VideoSuggestionsTagSuggestion\"\n }\n },\n - \ \"processingErrors\": {\n \"description\": \"A list of errors - that will prevent YouTube from successfully processing the uploaded video - video. These errors indicate that, regardless of the video's current processing - status, eventually, that status will almost certainly be failed.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n }\n },\n \"editorSuggestions\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ],\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ]\n - \ },\n \"description\": \"A list of video editing operations - that might improve the video quality or playback experience of the uploaded - video.\"\n }\n }\n },\n \"VideoFileDetailsVideoStream\": - {\n \"type\": \"object\",\n \"properties\": {\n \"vendor\": - {\n \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\",\n \"type\": - \"string\"\n },\n \"frameRateFps\": {\n \"description\": - \"The video stream's frame rate, in frames per second.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n },\n \"rotation\": - {\n \"description\": \"The amount that YouTube needs to rotate the - original source content to properly display the video.\",\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"bitrateBps\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The video stream's bitrate, in bits - per second.\"\n },\n \"aspectRatio\": {\n \"format\": - \"double\",\n \"type\": \"number\",\n \"description\": \"The - video content's display aspect ratio, which specifies the aspect ratio in - which the video should be displayed.\"\n },\n \"codec\": {\n - \ \"description\": \"The video codec that the stream uses.\",\n \"type\": - \"string\"\n },\n \"widthPixels\": {\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"heightPixels\": - {\n \"format\": \"uint32\",\n \"description\": \"The encoded - video content's height in pixels.\",\n \"type\": \"integer\"\n }\n - \ },\n \"id\": \"VideoFileDetailsVideoStream\",\n \"description\": - \"Information about a video stream.\"\n },\n \"VideoStatistics\": {\n - \ \"properties\": {\n \"favoriteCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of users who currently - have the video marked as a favorite video.\",\n \"type\": \"string\"\n - \ },\n \"commentCount\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of comments for the video.\",\n \"format\": - \"uint64\"\n },\n \"viewCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of times the video has been viewed.\",\n - \ \"type\": \"string\"\n },\n \"dislikeCount\": {\n - \ \"description\": \"The number of users who have indicated that they - disliked the video by giving it a negative rating.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"likeCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of users who have indicated that they liked the video by giving it a positive - rating.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\",\n \"id\": \"VideoStatistics\",\n \"type\": \"object\"\n - \ },\n \"PlaylistItemContentDetails\": {\n \"properties\": {\n \"videoPublishedAt\": - {\n \"description\": \"The date and time that the video was published - to YouTube.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"startAt\": {\n \"description\": \"The time, - measured in seconds from the start of the video, when the video should start - playing. (The playlist owner can specify the times when the video should start - and stop playing when the video is played in the context of the playlist.) - The default value is 0.\",\n \"type\": \"string\"\n },\n \"note\": - {\n \"description\": \"A user-generated note for this item.\",\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify a video. To retrieve the video - resource, set the id query parameter to this value in your API request.\",\n - \ \"type\": \"string\"\n },\n \"endAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistItemContentDetails\"\n },\n \"VideoCategoryListResponse\": - {\n \"id\": \"VideoCategoryListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"VideoCategory\"\n },\n - \ \"description\": \"A list of video categories that can be associated - with YouTube videos. In this map, the video category ID is the map key, and - its value is the corresponding videoCategory resource.\",\n \"type\": - \"array\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoCategoryListResponse\"\n + the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReportReason\": + {\n \"id\": \"VideoAbuseReportReason\",\n \"description\": \"A `__videoAbuseReportReason__` + resource identifies a reason that a video could be reported as abusive. Video + abuse report reasons are used with `video.ReportAbuse`.\",\n \"type\": + \"object\",\n \"properties\": {\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID of this abuse report reason.\"\n \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n }\n }\n },\n \"ChannelBannerResource\": {\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\",\n - \ \"properties\": {\n \"url\": {\n \"description\": \"The - URL of this banner image.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ChannelBannerResource\",\n \"type\": - \"object\"\n },\n \"VideoPlayer\": {\n \"description\": \"Player - to be used for a video playback.\",\n \"properties\": {\n \"embedWidth\": - {\n \"format\": \"int64\",\n \"type\": \"string\",\n \"description\": - \"The embed width\"\n },\n \"embedHeight\": {\n \"format\": - \"int64\",\n \"type\": \"string\"\n },\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\"\n }\n },\n - \ \"id\": \"VideoPlayer\",\n \"type\": \"object\"\n },\n \"TokenPagination\": - {\n \"properties\": {},\n \"id\": \"TokenPagination\",\n \"description\": - \"Stub token pagination template to suppress results.\",\n \"type\": - \"object\"\n },\n \"ChannelContentOwnerDetails\": {\n \"id\": \"ChannelContentOwnerDetails\",\n - \ \"properties\": {\n \"contentOwner\": {\n \"description\": - \"The ID of the content owner linked to the channel.\",\n \"type\": - \"string\"\n },\n \"timeLinked\": {\n \"description\": - \"The date and time when the channel was linked to the content owner.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\"\n },\n \"PlaylistItemStatus\": {\n \"description\": - \"Information about the playlist item's privacy status.\",\n \"id\": - \"PlaylistItemStatus\",\n \"type\": \"object\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"This resource's privacy status.\",\n \"enumDescriptions\": [\n + resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n + \ \"default\": \"youtube#videoAbuseReportReason\"\n },\n \"snippet\": + {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n \"description\": + \"The `snippet` object contains basic details about the abuse report reason.\"\n + \ }\n }\n },\n \"ChannelSectionLocalization\": {\n \"type\": + \"object\",\n \"description\": \"ChannelSection localization setting\",\n + \ \"id\": \"ChannelSectionLocalization\",\n \"properties\": {\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The localized + strings for channel section's title.\"\n }\n }\n },\n \"VideoAgeGating\": + {\n \"type\": \"object\",\n \"id\": \"VideoAgeGating\",\n \"properties\": + {\n \"alcoholContent\": {\n \"type\": \"boolean\",\n \"description\": + \"Indicates whether or not the video has alcoholic beverage content. Only + users of legal purchasing age in a particular country, as identified by ICAP, + can view the content.\"\n },\n \"restricted\": {\n \"description\": + \"Age-restricted trailers. For redband trailers and adult-rated video-games. + Only users aged 18+ can view the content. The the field is true the content + is restricted to viewers aged 18+. Otherwise The field won't be present.\",\n + \ \"type\": \"boolean\"\n },\n \"videoGameRating\": + {\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n + \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"description\": + \"Video game rating, if any.\",\n \"enumDescriptions\": [\n \"\",\n \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelSectionSnippet\": {\n - \ \"type\": \"object\",\n \"id\": \"ChannelSectionSnippet\",\n \"properties\": - {\n \"position\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The position of the channel section - in the channel.\"\n },\n \"type\": {\n \"type\": \"string\",\n - \ \"description\": \"The type of the channel section.\",\n \"enumDescriptions\": + \"string\"\n }\n }\n },\n \"MemberSnippet\": {\n \"id\": + \"MemberSnippet\",\n \"properties\": {\n \"membershipsDetails\": + {\n \"$ref\": \"MembershipsDetails\",\n \"description\": + \"Details about the user's membership.\"\n },\n \"creatorChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The id of + the channel that's offering memberships.\"\n },\n \"memberDetails\": + {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": + \"Details about the member.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"LiveStreamHealthStatus\": {\n \"id\": \"LiveStreamHealthStatus\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"lastUpdateTimeSeconds\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The last time this status was updated (in seconds)\"\n },\n \"status\": + {\n \"description\": \"The status code of this stream\",\n \"enum\": + [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n + \ \"revoked\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n + \ \"\"\n ]\n },\n \"configurationIssues\": + {\n \"type\": \"array\",\n \"description\": \"The configurations + issues on this stream\",\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n + \ }\n }\n }\n },\n \"LiveChatMessageRetractedDetails\": + {\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": + \"string\"\n }\n }\n },\n \"CommentThreadSnippet\": {\n + \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"isPublic\": + {\n \"description\": \"Whether the thread (and therefore all its + comments) is visible to all YouTube users.\",\n \"type\": \"boolean\"\n + \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the video the comments refer to, if any. No video_id implies a + channel discussion comment.\"\n },\n \"totalReplyCount\": {\n + \ \"description\": \"The total number of replies (not including the + top level comment).\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n },\n \"topLevelComment\": {\n \"$ref\": + \"Comment\",\n \"description\": \"The top level comment of this thread.\"\n + \ },\n \"canReply\": {\n \"type\": \"boolean\",\n \"description\": + \"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.\"\n }\n + \ },\n \"description\": \"Basic details about a comment thread.\",\n + \ \"id\": \"CommentThreadSnippet\",\n \"type\": \"object\"\n },\n + \ \"PlaylistPlayer\": {\n \"type\": \"object\",\n \"properties\": + {\n \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e + tag that embeds a player that will play the playlist.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"PlaylistPlayer\"\n },\n + \ \"VideoListResponse\": {\n \"properties\": {\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Video\"\n }\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#videoListResponse\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"VideoListResponse\",\n \"type\": \"object\"\n },\n + \ \"ChannelSectionSnippet\": {\n \"properties\": {\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel that published the channel section.\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The channel section's title for multiple_playlists and multiple_channels.\"\n + \ },\n \"defaultLanguage\": {\n \"description\": \"The + language of the channel section's default title and description.\",\n \"type\": + \"string\"\n },\n \"type\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The type of the channel section.\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n + \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n + \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ]\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel section's default title and description.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel - section's title for multiple_playlists and multiple_channels.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\"\n },\n \"style\": {\n \"description\": - \"The style of the channel section.\",\n \"type\": \"string\",\n + \ \"subscriptions\"\n ]\n },\n \"style\": + {\n \"description\": \"The style of the channel section.\",\n \"enum\": + [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n + \ \"verticalList\"\n ],\n \"type\": \"string\",\n \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ]\n - \ },\n \"localized\": {\n \"$ref\": \"ChannelSectionLocalization\",\n - \ \"description\": \"Localized title, read-only.\"\n }\n },\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\"\n }\n },\n \"basePath\": \"\",\n \"fullyEncodeReservedExpansion\": - true,\n \"servicePath\": \"\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": - {\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n }\n }\n }\n },\n \"resources\": {\n - \ \"search\": {\n \"methods\": {\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"videoDimension\": {\n - \ \"enumDescriptions\": [\n \"Include both 3D and - non-3D videos in returned results. This is the default value.\",\n \"Restrict - search results to exclude 3D videos.\",\n \"Restrict search - results to only include 3D videos.\"\n ],\n \"description\": - \"Filter on 3d videos.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ]\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"publishedBefore\": {\n \"location\": - \"query\",\n \"description\": \"Filter on resources published - before this date.\",\n \"type\": \"string\",\n \"format\": - \"google-datetime\"\n },\n \"relatedToVideoId\": {\n - \ \"description\": \"Search related to a resource.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"forMine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Search for the private videos of the authenticated - user.\"\n },\n \"order\": {\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"searchSortUnspecified\",\n \"date\",\n \"rating\",\n - \ \"viewCount\",\n \"relevance\",\n \"title\",\n - \ \"videoCount\"\n ],\n \"description\": - \"Sort order of the results.\",\n \"default\": \"relevance\"\n - \ },\n \"forDeveloper\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\",\n \"location\": - \"query\"\n },\n \"videoSyndicated\": {\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, syndicated or not.\",\n \"Only - retrieve syndicated videos.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"description\": - \"Filter on syndicated videos.\"\n },\n \"safeSearch\": - {\n \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"default\": \"moderate\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"publishedAfter\": - {\n \"description\": \"Filter on resources published after this - date.\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on resources belonging to this channelId.\",\n \"location\": - \"query\"\n },\n \"type\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular set of resource types from One Platform.\",\n - \ \"type\": \"string\"\n },\n \"eventType\": - {\n \"description\": \"Filter on the livestream status of the - videos.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ],\n \"type\": - \"string\"\n },\n \"forContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"Search owned by a content owner.\",\n - \ \"type\": \"boolean\"\n },\n \"topicId\": - {\n \"description\": \"Restrict results to a particular topic.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoEmbeddable\": - {\n \"description\": \"Filter on embeddable videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"location\": \"query\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\"\n },\n \"videoCategoryId\": {\n \"description\": - \"Filter on videos in a specific category.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"q\": - {\n \"description\": \"Textual search terms to match.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoCaption\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on the presence of captions on the videos.\",\n \"enum\": [\n - \ \"videoCaptionUnspecified\",\n \"any\",\n \"closedCaption\",\n - \ \"none\"\n ],\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ]\n },\n \"videoDefinition\": - {\n \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Filter on the definition of the videos.\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ]\n },\n \"regionCode\": - {\n \"description\": \"Display the content as seen by viewers - in this country.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoLicense\": {\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"description\": - \"Filter on the license of the videos.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"channelType\": - {\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"description\": - \"Add a filter on the channel search.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n \"location\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on location of the video\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\"\n },\n \"videoDuration\": {\n \"description\": - \"Filter on the duration of the videos.\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ]\n - \ },\n \"videoType\": {\n \"enum\": [\n - \ \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"description\": \"Filter on videos of a specific - type.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"locationRadius\": {\n \"description\": - \"Filter on distance from the location (specified above).\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"relevanceLanguage\": - {\n \"description\": \"Return results relevant to this language.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.search.list\",\n - \ \"path\": \"youtube/v3/search\",\n \"description\": \"Retrieves - a list of search resources\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"\"\n ]\n },\n \"position\": {\n \"description\": + \"The position of the channel section in the channel.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"localized\": + {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": + \"Localized title, read-only.\"\n }\n },\n \"description\": + \"Basic details about a channel section, including title, style and position.\",\n + \ \"id\": \"ChannelSectionSnippet\",\n \"type\": \"object\"\n },\n + \ \"VideoSnippet\": {\n \"id\": \"VideoSnippet\",\n \"type\": + \"object\",\n \"properties\": {\n \"publishedAt\": {\n \"type\": + \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time when the video was uploaded.\"\n },\n \"liveBroadcastContent\": + {\n \"enumDescriptions\": [\n \"\",\n \"The + live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n + \ \"The live broadcast has been completed.\"\n ],\n \"enum\": + [\n \"none\",\n \"upcoming\",\n \"live\",\n + \ \"completed\"\n ],\n \"description\": \"Indicates + if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" if + the video is not an upcoming/active live broadcast.\",\n \"type\": + \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel title for the channel that the video + belongs to.\"\n },\n \"categoryId\": {\n \"type\": + \"string\",\n \"description\": \"The YouTube video category associated + with the video.\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The video's description. @mutable + youtube.videos.insert youtube.videos.update\"\n },\n \"tags\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"A list of keyword + tags associated with the video. Tags may contain spaces.\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The video's + title. @mutable youtube.videos.insert youtube.videos.update\"\n },\n + \ \"defaultAudioLanguage\": {\n \"type\": \"string\",\n \"description\": + \"The default_audio_language property specifies the language spoken in the + video's default audio track.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the channel that the video was uploaded to.\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A + map of thumbnail images associated with the video. 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.\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The language + of the videos's default snippet.\"\n },\n \"localized\": {\n + \ \"$ref\": \"VideoLocalization\",\n \"description\": \"Localized + snippet selected with the hl parameter. If no such localization exists, this + field is populated with the default snippet. (Read-only)\"\n }\n },\n + \ \"description\": \"Basic details about a video, including title, description, + uploader, thumbnails and category.\"\n }\n },\n \"kind\": \"discovery#restDescription\",\n + \ \"name\": \"youtube\",\n \"resources\": {\n \"videoCategories\": {\n + \ \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n + \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"path\": \"youtube/v3/videoCategories\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/search\",\n \"response\": {\n - \ \"$ref\": \"SearchListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"liveChatBans\": - {\n \"methods\": {\n \"delete\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveChatBans.delete\",\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"description\": \"Deletes a chat - ban.\",\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\"\n ]\n },\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"response\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"hl\": {\n \"location\": + \ \"flatPath\": \"youtube/v3/videoCategories\",\n \"id\": + \"youtube.videoCategories.list\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"parameters\": {\n \"hl\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"default\": - \"en-US\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the videoCategory resource parts that the API response will include. Supported - values are id and snippet.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.videoAbuseReportReasons.list\",\n \"response\": {\n \"$ref\": - \"VideoAbuseReportReasonListResponse\"\n },\n \"flatPath\": - \"youtube/v3/videoAbuseReportReasons\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n }\n }\n },\n \"videoCategories\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - videoCategory resource properties that the API response will include. Set - the parameter value to snippet.\"\n },\n \"id\": {\n - \ \"description\": \"Returns the video categories with the given - IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"default\": \"en-US\"\n - \ }\n },\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"flatPath\": \"youtube/v3/videoCategories\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.videoCategories.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.liveChatModerators.list\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"liveChatId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"The id of the live chat for - which moderators should be returned.\",\n \"required\": true\n - \ },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"minimum\": \"0\"\n },\n \"part\": {\n - \ \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n }\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Deletes a chat moderator.\",\n - \ \"id\": \"youtube.liveChatModerators.delete\",\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\"\n },\n \"insert\": - {\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"id\": - \"youtube.liveChatModerators.insert\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ]\n }\n }\n },\n \"subscriptions\": - {\n \"methods\": {\n \"insert\": {\n \"path\": \"youtube/v3/subscriptions\",\n + \"en-US\"\n },\n \"regionCode\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"required\": true,\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies the videoCategory resource properties that + the API response will include. Set the parameter value to snippet.\"\n },\n + \ \"id\": {\n \"location\": \"query\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"Returns the video categories with the given IDs for Stubby or Apiary.\"\n + \ }\n }\n }\n }\n },\n \"channelBanners\": + {\n \"methods\": {\n \"insert\": {\n \"request\": {\n + \ \"$ref\": \"ChannelBannerResource\"\n },\n \"httpMethod\": + \"POST\",\n \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n + \ \"image/png\",\n \"application/octet-stream\"\n + \ ],\n \"protocols\": {\n \"simple\": {\n + \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n + \ },\n \"resumable\": {\n \"path\": + \"/resumable/upload/youtube/v3/channelBanners/insert\",\n \"multipart\": + true\n }\n },\n \"maxSize\": \"6291456\"\n + \ },\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.subscriptions.insert\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"request\": {\n \"$ref\": - \"Subscription\"\n }\n },\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/subscriptions\",\n \"response\": {\n \"$ref\": - \"SubscriptionListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"forChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions to the subset of - these channels that the authenticated user is subscribed to.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Return the subscriptions of the given channel owner.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"order\": {\n \"enum\": [\n - \ \"subscriptionOrderUnspecified\",\n \"relevance\",\n - \ \"unread\",\n \"alphabetical\"\n ],\n - \ \"default\": \"relevance\",\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"description\": \"The order of the returned subscriptions\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"myRecentSubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"maximum\": \"50\",\n - \ \"format\": \"uint32\",\n \"default\": \"5\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"mySubscribers\": {\n \"description\": - \"Return the subscribers of the given channel owner.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"description\": \"Flag - for returning the subscriptions of the authenticated user.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"This parameter can only be used in a properly + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n + \ ],\n \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n + \ },\n \"supportsMediaUpload\": true,\n \"parameterOrder\": + [],\n \"description\": \"Inserts a new resource into this collection.\",\n + \ \"id\": \"youtube.channelBanners.insert\",\n \"path\": + \"youtube/v3/channelBanners/insert\",\n \"parameters\": {\n \"channelId\": + {\n \"description\": \"Unused, channel_id is currently derived + from the security context of the requestor.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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 @@ -4112,117 +3823,413 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Return - the subscriptions with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.subscriptions.list\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/subscriptions\"\n },\n - \ \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.subscriptions.delete\",\n \"path\": - \"youtube/v3/subscriptions\",\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/subscriptions\"\n - \ }\n }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"path\": \"youtube/v3/tests\",\n \"request\": {\n \"$ref\": - \"TestItem\"\n },\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/tests\",\n \"description\": - \"POST method.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"id\": \"youtube.tests.insert\"\n }\n }\n - \ },\n \"activities\": {\n \"methods\": {\n \"list\": {\n - \ \"id\": \"youtube.activities.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"maxResults\": {\n - \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"home\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"publishedBefore\": {\n \"format\": - \"google-datetime\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"regionCode\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"publishedAfter\": - {\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/activities\",\n \"path\": \"youtube/v3/activities\"\n - \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the membershipsLevel resource parts that the API - response will include. Supported values are id and snippet.\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"description\": \"Retrieves a list of all pricing levels offered - by a creator to the fans.\",\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"liveBroadcasts\": {\n \"methods\": {\n \"insert\": - {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n - \ \"location\": \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": + for each separate channel.\"\n }\n }\n }\n }\n + \ },\n \"search\": {\n \"methods\": {\n \"list\": {\n \"flatPath\": + \"youtube/v3/search\",\n \"id\": \"youtube.search.list\",\n \"path\": + \"youtube/v3/search\",\n \"parameters\": {\n \"regionCode\": + {\n \"description\": \"Display the content as seen by viewers + in this country.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"forMine\": {\n \"type\": + \"boolean\",\n \"description\": \"Search for the private videos + of the authenticated user.\",\n \"location\": \"query\"\n },\n + \ \"videoType\": {\n \"description\": \"Filter on videos + of a specific type.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos.\",\n \"Only + retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n + \ ],\n \"enum\": [\n \"videoTypeUnspecified\",\n + \ \"any\",\n \"movie\",\n \"episode\"\n + \ ],\n \"location\": \"query\"\n },\n + \ \"location\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Filter on location of the video\"\n + \ },\n \"eventType\": {\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n + \ \"The live broadcast is active.\",\n \"The + live broadcast has been completed.\"\n ],\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Filter on the livestream status of the videos.\",\n \"enum\": + [\n \"none\",\n \"upcoming\",\n \"live\",\n + \ \"completed\"\n ]\n },\n \"videoDefinition\": + {\n \"enum\": [\n \"any\",\n \"standard\",\n + \ \"high\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"Return all videos, + regardless of their resolution.\",\n \"Only retrieve videos + in standard definition.\",\n \"Only retrieve HD videos.\"\n + \ ],\n \"location\": \"query\",\n \"description\": + \"Filter on the definition of the videos.\"\n },\n \"type\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"description\": \"Restrict results to a particular set of resource + types from One Platform.\",\n \"location\": \"query\"\n },\n + \ \"channelType\": {\n \"description\": \"Add a filter + on the channel search.\",\n \"enum\": [\n \"channelTypeUnspecified\",\n + \ \"any\",\n \"show\"\n ],\n \"type\": + \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all channels.\",\n \"Only + retrieve shows.\"\n ]\n },\n \"safeSearch\": + {\n \"type\": \"string\",\n \"description\": \"Indicates + whether the search results should include restricted content as well as standard + content.\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n + \ \"none\",\n \"moderate\",\n \"strict\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"YouTube will not filter the search result set.\",\n \"YouTube + will filter some content from search results and, at the least, will filter + content that is restricted in your locale. Based on their content, search + results could be removed from search results or demoted in search results. + This is the default parameter value.\",\n \"YouTube will try + to exclude all restricted content from the search result set. Based on their + content, search results could be removed from search results or demoted in + search results.\"\n ],\n \"default\": \"moderate\",\n + \ \"location\": \"query\"\n },\n \"relatedToVideoId\": + {\n \"location\": \"query\",\n \"description\": + \"Search related to a resource.\",\n \"type\": \"string\"\n },\n + \ \"publishedBefore\": {\n \"format\": \"google-datetime\",\n + \ \"location\": \"query\",\n \"description\": \"Filter + on resources published before this date.\",\n \"type\": \"string\"\n + \ },\n \"channelId\": {\n \"description\": + \"Filter on resources belonging to this channelId.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"forDeveloper\": + {\n \"description\": \"Restrict the search to only retrieve videos + uploaded using the project id of the authenticated user.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"videoCategoryId\": + {\n \"type\": \"string\",\n \"description\": \"Filter + on videos in a specific category.\",\n \"location\": \"query\"\n + \ },\n \"pageToken\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"videoCaption\": + {\n \"type\": \"string\",\n \"description\": \"Filter + on the presence of captions on the videos.\",\n \"location\": + \"query\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n + \ \"any\",\n \"closedCaption\",\n \"none\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"Do not filter results based on caption availability.\",\n + \ \"Only include videos that have captions.\",\n \"Only + include videos that do not have captions.\"\n ]\n },\n + \ \"topicId\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Restrict results to a particular + topic.\"\n },\n \"videoDuration\": {\n \"location\": + \"query\",\n \"enum\": [\n \"videoDurationUnspecified\",\n + \ \"any\",\n \"short\",\n \"medium\",\n + \ \"long\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Do not filter video search results + based on their duration. This is the default value.\",\n \"Only + include videos that are less than four minutes long.\",\n \"Only + include videos that are between four and 20 minutes long (inclusive).\",\n + \ \"Only include videos longer than 20 minutes.\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"Filter + on the duration of the videos.\"\n },\n \"videoLicense\": + {\n \"enum\": [\n \"any\",\n \"youtube\",\n + \ \"creativeCommon\"\n ],\n \"description\": + \"Filter on the license of the videos.\",\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"Return all videos, + regardless of which license they have, that match the query parameters.\",\n + \ \"Only return videos that have the standard YouTube license.\",\n + \ \"Only return videos that have a Creative Commons license. + Users can reuse videos with this license in other videos that they create. + Learn more.\"\n ],\n \"type\": \"string\"\n },\n + \ \"forContentOwner\": {\n \"type\": \"boolean\",\n + \ \"location\": \"query\",\n \"description\": \"Search + owned by a content owner.\"\n },\n \"relevanceLanguage\": + {\n \"type\": \"string\",\n \"description\": \"Return + results relevant to this language.\",\n \"location\": \"query\"\n + \ },\n \"videoSyndicated\": {\n \"description\": + \"Filter on syndicated videos.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos, syndicated + or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n + \ \"location\": \"query\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n + \ \"any\",\n \"true\"\n ]\n },\n + \ \"videoDimension\": {\n \"enumDescriptions\": [\n + \ \"Include both 3D and non-3D videos in returned results. This + is the default value.\",\n \"Restrict search results to exclude + 3D videos.\",\n \"Restrict search results to only include 3D + videos.\"\n ],\n \"type\": \"string\",\n \"location\": + \"query\",\n \"enum\": [\n \"any\",\n \"2d\",\n + \ \"3d\"\n ],\n \"description\": \"Filter + on 3d videos.\"\n },\n \"publishedAfter\": {\n \"type\": + \"string\",\n \"format\": \"google-datetime\",\n \"location\": + \"query\",\n \"description\": \"Filter on resources published + after this date.\"\n },\n \"maxResults\": {\n \"minimum\": + \"0\",\n \"type\": \"integer\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"maximum\": \"50\",\n \"default\": + \"5\",\n \"location\": \"query\",\n \"format\": + \"uint32\"\n },\n \"q\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Textual search terms to match.\"\n },\n \"videoEmbeddable\": + {\n \"description\": \"Filter on embeddable videos.\",\n \"type\": + \"string\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n + \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos, embeddable + or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"order\": {\n \"enum\": + [\n \"searchSortUnspecified\",\n \"date\",\n + \ \"rating\",\n \"viewCount\",\n \"relevance\",\n + \ \"title\",\n \"videoCount\"\n ],\n + \ \"default\": \"relevance\",\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Resources + are sorted in reverse chronological order based on the date they were created.\",\n + \ \"Resources are sorted from highest to lowest rating.\",\n + \ \"Resources are sorted from highest to lowest number of views.\",\n + \ \"Resources are sorted based on their relevance to the search + query. This is the default value for this parameter.\",\n \"Resources + are sorted alphabetically by title.\",\n \"Channels are sorted + in descending order of their number of uploaded videos.\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"Sort + order of the results.\"\n },\n \"locationRadius\": {\n + \ \"location\": \"query\",\n \"description\": \"Filter + on distance from the location (specified above).\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"description\": + \"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.\",\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"response\": {\n \"$ref\": + \"SearchListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Retrieves a list of search resources\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"GET\"\n + \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": + {\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"response\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"request\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"parameters\": {\n \"externalChannelId\": {\n \"type\": + \"string\",\n \"description\": \"Channel ID to which changes + should be applied, for delegation.\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"type\": \"string\",\n \"required\": + true,\n \"description\": \"The *part* parameter specifies the + thirdPartyLink resource parts that the API request and response will include. + Supported values are linkingToken, status, and snippet.\"\n }\n + \ },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"id\": + \"youtube.thirdPartyLinks.insert\",\n \"description\": \"Inserts + a new resource into this collection.\"\n },\n \"list\": {\n + \ \"id\": \"youtube.thirdPartyLinks.list\",\n \"response\": + {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"parameters\": {\n \"externalChannelId\": {\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"linkingToken\": + {\n \"location\": \"query\",\n \"description\": + \"Get a third party link with the given linking token.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API response will include. Supported values are linkingToken, status, and + snippet.\",\n \"repeated\": true,\n \"required\": + true\n },\n \"type\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Get + a third party link of the given type.\",\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or + about to connect) a channel with a store on a merchandising platform in order + to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n + \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ]\n }\n }\n },\n \"delete\": + {\n \"description\": \"Deletes a resource.\",\n \"parameterOrder\": + [\n \"linkingToken\",\n \"type\"\n ],\n \"id\": + \"youtube.thirdPartyLinks.delete\",\n \"parameters\": {\n \"linkingToken\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Delete + the partner links with the given linking token.\"\n },\n \"type\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel + with a store on a merchandising platform in order to enable retail commerce + capabilities for that channel on YouTube.\"\n ],\n \"required\": + true,\n \"description\": \"Type of the link to be deleted.\"\n + \ },\n \"part\": {\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"Do not use. Required for compatibility.\"\n + \ },\n \"externalChannelId\": {\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": + \"DELETE\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n },\n + \ \"update\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"id\": + \"youtube.thirdPartyLinks.update\",\n \"request\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"httpMethod\": \"PUT\",\n \"parameters\": + {\n \"externalChannelId\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Channel + ID to which changes should be applied, for delegation.\"\n },\n + \ \"part\": {\n \"required\": true,\n \"repeated\": + true,\n \"description\": \"The *part* parameter specifies the + thirdPartyLink resource parts that the API request and response will include. + Supported values are linkingToken, status, and snippet.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Updates an existing resource.\",\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\",\n \"response\": {\n \"$ref\": + \"ThirdPartyLink\"\n }\n }\n }\n },\n \"comments\": + {\n \"methods\": {\n \"setModerationStatus\": {\n \"parameters\": + {\n \"moderationStatus\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"The comment is available + for public display.\",\n \"The comment is awaiting review by + a moderator.\",\n \"\",\n \"The comment is unfit + for display.\"\n ],\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ],\n \"description\": \"Specifies the requested + moderation status. Note, comments can be in statuses, which are not available + through this call. For example, this call does not allow to mark a comment + as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, + MODERATION_STATUS_REJECTED.\",\n \"required\": true,\n \"location\": + \"query\"\n },\n \"id\": {\n \"description\": + \"Modifies the moderation status of the comments with the given IDs\",\n \"required\": + true,\n \"location\": \"query\",\n \"repeated\": + true,\n \"type\": \"string\"\n },\n \"banAuthor\": + {\n \"default\": \"false\",\n \"type\": \"boolean\",\n + \ \"location\": \"query\",\n \"description\": \"If + set to true the author of the comment gets added to the ban list. This means + all future comments of the author will autmomatically be rejected. Only valid + in combination with STATUS_REJECTED.\"\n }\n },\n \"id\": + \"youtube.comments.setModerationStatus\",\n \"parameterOrder\": [\n + \ \"id\",\n \"moderationStatus\"\n ],\n \"description\": + \"Sets the moderation status of one or more comments.\",\n \"flatPath\": + \"youtube/v3/comments/setModerationStatus\",\n \"httpMethod\": \"POST\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/comments/setModerationStatus\"\n + \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/comments\",\n \"flatPath\": + \"youtube/v3/comments\",\n \"parameters\": {\n \"id\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"httpMethod\": + \"DELETE\",\n \"id\": \"youtube.comments.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"description\": \"Deletes + a resource.\"\n },\n \"list\": {\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"response\": + {\n \"$ref\": \"CommentListResponse\"\n },\n \"flatPath\": + \"youtube/v3/comments\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.comments.list\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameters\": {\n \"id\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"description\": + \"Returns the comments with the given IDs for One Platform.\",\n \"type\": + \"string\"\n },\n \"parentId\": {\n \"type\": + \"string\",\n \"description\": \"Returns replies to the specified + comment. Note, currently YouTube features only one level of replies (ie replies + to top level comments). However replies to replies may be supported in the + future.\",\n \"location\": \"query\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n + \ },\n \"textFormat\": {\n \"default\": + \"html\",\n \"description\": \"The requested text format for + the returned comments.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Returns the comments in HTML format. This is the default + value.\",\n \"Returns the comments in plain text format.\"\n + \ ],\n \"type\": \"string\",\n \"location\": + \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ]\n + \ },\n \"part\": {\n \"type\": \"string\",\n + \ \"description\": \"The *part* parameter specifies a comma-separated + list of one or more comment resource properties that the API response will + include.\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"required\": true\n },\n \"maxResults\": + {\n \"type\": \"integer\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"minimum\": \"1\",\n \"default\": + \"20\",\n \"location\": \"query\",\n \"maximum\": + \"100\",\n \"format\": \"uint32\"\n }\n },\n + \ \"path\": \"youtube/v3/comments\"\n },\n \"insert\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"id\": + \"youtube.comments.insert\",\n \"httpMethod\": \"POST\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"parameters\": + {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"response\": {\n \"$ref\": \"Comment\"\n },\n + \ \"path\": \"youtube/v3/comments\",\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"request\": {\n \"$ref\": \"Comment\"\n }\n + \ },\n \"markAsSpam\": {\n \"httpMethod\": \"POST\",\n + \ \"description\": \"Expresses the caller's opinion that one or more + comments should be flagged as spam.\",\n \"parameters\": {\n \"id\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"description\": \"Flags + the comments with the given IDs as spam in the caller's opinion.\",\n \"location\": + \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n + \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"id\": + \"youtube.comments.markAsSpam\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ]\n + \ },\n \"update\": {\n \"request\": {\n \"$ref\": + \"Comment\"\n },\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"httpMethod\": \"PUT\",\n \"description\": \"Updates an + existing resource.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"type\": \"string\"\n }\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/comments\",\n \"response\": + {\n \"$ref\": \"Comment\"\n },\n \"id\": \"youtube.comments.update\"\n + \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n + \ \"insert\": {\n \"httpMethod\": \"POST\",\n \"flatPath\": + \"youtube/v3/abuseReports\",\n \"id\": \"youtube.abuseReports.insert\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"path\": \"youtube/v3/abuseReports\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"This parameter can only be used in a properly + that the API response will include.\",\n \"type\": \"string\",\n + \ \"required\": true,\n \"location\": \"query\",\n + \ \"repeated\": true\n }\n },\n \"response\": + {\n \"$ref\": \"AbuseReport\"\n },\n \"request\": + {\n \"$ref\": \"AbuseReport\"\n }\n }\n }\n + \ },\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": + {\n \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n + \ },\n \"parameters\": {\n \"hl\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"default\": + \"en_US\"\n },\n \"part\": {\n \"required\": + true,\n \"description\": \"The *part* parameter specifies the + i18nLanguage resource properties that the API response will include. Set the + parameter value to snippet.\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"path\": + \"youtube/v3/i18nLanguages\",\n \"id\": \"youtube.i18nLanguages.list\",\n + \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"liveStreams\": + {\n \"methods\": {\n \"update\": {\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"path\": \"youtube/v3/liveStreams\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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 @@ -4236,71 +4243,28 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"id\": - \"youtube.liveBroadcasts.insert\",\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"delete\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"id\": \"youtube.liveBroadcasts.delete\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"description\": - \"Broadcast to delete.\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"description\": \"Delete a given broadcast.\"\n },\n \"update\": - {\n \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Updates an existing broadcast for - the authenticated user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": + for each separate channel.\"\n },\n \"part\": {\n \"repeated\": true,\n \"description\": \"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, + 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. 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.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively + value specifies. If the request body does not specify a value for a mutable + property, the existing value for that property will be removed.\",\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Updates an existing + stream for the authenticated user.\",\n \"response\": {\n \"$ref\": + \"LiveStream\"\n },\n \"id\": \"youtube.liveStreams.update\",\n + \ \"httpMethod\": \"PUT\"\n },\n \"delete\": {\n \"description\": + \"Deletes an existing stream for the authenticated user.\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n + \ \"path\": \"youtube/v3/liveStreams\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.liveStreams.delete\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"description\": \"*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. @@ -4309,8 +4273,7 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + owner.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \ \"description\": \"This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube @@ -4326,14 +4289,17 @@ interactions: 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.\"\n }\n },\n \"id\": - \"youtube.liveBroadcasts.update\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\"\n },\n \"transition\": - {\n \"description\": \"Transition a broadcast to a given status.\",\n - \ \"parameters\": {\n \"id\": {\n \"description\": - \"Broadcast to transition.\",\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + for each separate channel.\"\n },\n \"id\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n }\n },\n \"insert\": {\n \"request\": + {\n \"$ref\": \"LiveStream\"\n },\n \"description\": + \"Inserts a new stream for the authenticated user.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n + \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.insert\",\n + \ \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"response\": {\n \"$ref\": \"LiveStream\"\n + \ },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -4348,67 +4314,131 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": + for each separate channel.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"required\": true,\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"repeated\": true,\n \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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 + 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, content_details, and status.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"broadcastStatus\": - {\n \"enum\": [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Start - testing the broadcast. YouTube transmits video to the broadcast's monitor - stream. Note that you can only transition a broadcast to the testing state - if its contentDetails.monitorStream.enableMonitorStream property is set to - true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The - broadcast is over. YouTube stops transmitting video.\"\n ],\n - \ \"required\": true,\n \"description\": \"The status - to which the broadcast is going to transition.\"\n }\n },\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"broadcastStatus\",\n - \ \"id\",\n \"part\"\n ]\n },\n \"insertCuepoint\": - {\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"Cuepoint\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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 + owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n }\n },\n \"list\": {\n + \ \"description\": \"Retrieve the list of streams associated with + the given channel. --\",\n \"id\": \"youtube.liveStreams.list\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"response\": + {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"httpMethod\": + \"GET\",\n \"parameters\": {\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"format\": + \"uint32\",\n \"minimum\": \"0\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"location\": \"query\",\n + \ \"maximum\": \"50\",\n \"type\": \"integer\",\n + \ \"default\": \"5\"\n },\n \"id\": {\n + \ \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"Return LiveStreams with the given ids from + Stubby or Apiary.\",\n \"type\": \"string\"\n },\n + \ \"mine\": {\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"description\": + \"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.\",\n + \ \"type\": \"string\",\n \"repeated\": true\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwner\": + for each separate channel.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n + \ \"parameterOrder\": [\n \"part\"\n ]\n }\n + \ }\n },\n \"liveChatBans\": {\n \"methods\": {\n \"delete\": + {\n \"description\": \"Deletes a chat ban.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"path\": \"youtube/v3/liveChat/bans\",\n \"parameters\": + {\n \"id\": {\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"flatPath\": + \"youtube/v3/liveChat/bans\",\n \"id\": \"youtube.liveChatBans.delete\",\n + \ \"httpMethod\": \"DELETE\"\n },\n \"insert\": {\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/liveChat/bans\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"flatPath\": + \"youtube/v3/liveChat/bans\",\n \"id\": \"youtube.liveChatBans.insert\",\n + \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n + \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": + {\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"response\": {\n \"$ref\": + \"LiveChatBan\"\n }\n }\n }\n },\n \"superChatEvents\": + {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"path\": \"youtube/v3/superChatEvents\",\n + \ \"id\": \"youtube.superChatEvents.list\",\n \"httpMethod\": + \"GET\",\n \"parameters\": {\n \"maxResults\": {\n \"type\": + \"integer\",\n \"default\": \"5\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"maximum\": \"50\",\n \"format\": + \"uint32\",\n \"minimum\": \"1\",\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the superChatEvent resource parts that the + API response will include. This parameter is currently not supported.\",\n + \ \"repeated\": true,\n \"required\": true,\n \"type\": + \"string\"\n },\n \"hl\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return rendered funding amounts in specified language.\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"SuperChatEventListResponse\"\n }\n }\n }\n },\n + \ \"channelSections\": {\n \"methods\": {\n \"list\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates @@ -4419,18 +4449,71 @@ interactions: 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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"description\": \"Insert cuepoints in a broadcast\",\n \"parameterOrder\": - []\n },\n \"bind\": {\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"streamId\": {\n \"type\": + owner.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"Stream to bind, if not set unbind the current one.\"\n },\n \"onBehalfOfContentOwnerChannel\": + \"Return the ChannelSections owned by the specified channel ID.\"\n },\n + \ \"hl\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Return content in specified language\"\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"description\": \"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.\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n + \ },\n \"id\": {\n \"description\": \"Return + the ChannelSections with the given IDs for Stubby or Apiary.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true\n },\n \"mine\": {\n \"description\": + \"Return the ChannelSections owned by the authenticated user.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/channelSections\",\n \"httpMethod\": + \"GET\",\n \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n + \ },\n \"path\": \"youtube/v3/channelSections\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"id\": + \"youtube.channelSections.list\",\n \"parameterOrder\": [\n \"part\"\n + \ ]\n },\n \"update\": {\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Updates an existing resource.\",\n \"path\": + \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.update\",\n + \ \"flatPath\": \"youtube/v3/channelSections\",\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"request\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"httpMethod\": + \"PUT\"\n },\n \"insert\": {\n \"description\": \"Inserts + a new resource into this collection.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -4446,7 +4529,25 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"query\"\n },\n \"part\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true\n }\n },\n + \ \"path\": \"youtube/v3/channelSections\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.channelSections.insert\",\n \"request\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"httpMethod\": + \"POST\"\n },\n \"delete\": {\n \"parameterOrder\": + [\n \"id\"\n ],\n \"path\": \"youtube/v3/channelSections\",\n + \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.channelSections.delete\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"*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 @@ -4455,74 +4556,22 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"Broadcast - to bind to the stream\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"description\": \"Bind a broadcast to a stream.\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveBroadcasts/bind\",\n \"id\": \"youtube.liveBroadcasts.bind\"\n - \ },\n \"list\": {\n \"parameters\": {\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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, status and statistics.\",\n \"repeated\": - true\n },\n \"broadcastType\": {\n \"type\": - \"string\",\n \"description\": \"Return only broadcasts with - the selected type.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"default\": \"event\"\n },\n \"broadcastStatus\": - {\n \"description\": \"Return broadcasts with a certain status, - e.g. active broadcasts.\",\n \"location\": \"query\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return current - live broadcasts.\",\n \"Return broadcasts that have not yet - started.\",\n \"Return broadcasts that have already ended.\"\n - \ ],\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return broadcasts with the given ids from - Stubby or Apiary.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"location\": \"query\",\n \"default\": \"5\",\n - \ \"maximum\": \"50\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"This parameter can only be used in a properly + be linked to the specified YouTube content owner.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/channelSections\",\n \"httpMethod\": + \"DELETE\"\n }\n }\n },\n \"playlists\": {\n \"methods\": + {\n \"list\": {\n \"id\": \"youtube.playlists.list\",\n \"httpMethod\": + \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/playlists\",\n \"parameters\": {\n + \ \"mine\": {\n \"type\": \"boolean\",\n \"description\": + \"Return the playlists owned by the authenticated user.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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 @@ -4536,42 +4585,8 @@ interactions: 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.\"\n }\n },\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"id\": - \"youtube.liveBroadcasts.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\"\n }\n - \ }\n },\n \"superChatEvents\": {\n \"methods\": {\n \"list\": - {\n \"id\": \"youtube.superChatEvents.list\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - superChatEvent resource parts that the API response will include. This parameter - is currently not supported.\"\n },\n \"hl\": {\n \"description\": - \"Return rendered funding amounts in specified language.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"format\": - \"uint32\",\n \"minimum\": \"1\",\n \"maximum\": - \"50\",\n \"location\": \"query\",\n \"type\": \"integer\"\n - \ }\n },\n \"path\": \"youtube/v3/superChatEvents\"\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"reportAbuse\": - {\n \"description\": \"Report abuse for a video.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": + for each separate channel.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -4581,118 +4596,111 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [],\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n - \ \"id\": \"youtube.videos.reportAbuse\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"location\": \"query\",\n \"default\": \"5\",\n + \ \"minimum\": \"0\",\n \"maximum\": \"50\",\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return the playlists owned by the specified channel ID.\"\n },\n + \ \"part\": {\n \"required\": true,\n \"type\": + \"string\",\n \"description\": \"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.\",\n + \ \"repeated\": true,\n \"location\": \"query\"\n + \ },\n \"hl\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Return + content in specified language\"\n },\n \"id\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"location\": + \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/playlists\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"PlaylistListResponse\"\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\"\n },\n \"update\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos/reportAbuse\"\n - \ },\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively + \ ],\n \"id\": \"youtube.playlists.update\",\n \"response\": + {\n \"$ref\": \"Playlist\"\n },\n \"httpMethod\": + \"PUT\",\n \"flatPath\": \"youtube/v3/playlists\",\n \"path\": + \"youtube/v3/playlists\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.videos.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"path\": \"youtube/v3/videos\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Video\"\n }\n },\n \"rate\": - {\n \"parameters\": {\n \"rating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"required\": - true,\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/videos/rate\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos/rate\",\n \"id\": \"youtube.videos.rate\",\n - \ \"description\": \"Adds a like or dislike rating to a video or removes - a rating from a video.\"\n },\n \"list\": {\n \"flatPath\": - \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"VideoListResponse\"\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.videos.list\",\n \"parameters\": - {\n \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"description\": \"Use a chart that is specific - to the specified region\",\n \"type\": \"string\"\n },\n - \ \"maxWidth\": {\n \"description\": \"Return the player - with maximum height specified in\",\n \"location\": \"query\",\n - \ \"minimum\": \"72\",\n \"maximum\": \"8192\",\n - \ \"format\": \"int32\",\n \"type\": \"integer\"\n - \ },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"minimum\": \"1\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"type\": \"integer\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true\n },\n - \ \"myRating\": {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Return - videos liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Return - videos with the given ids.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": + provide authentication credentials for each individual channel. The CMS account + that the user authenticates with must be linked to the specified YouTube content + owner.\"\n },\n \"part\": {\n \"required\": + true,\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"description\": \"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.\",\n \"location\": + \"query\"\n }\n },\n \"description\": \"Updates + an existing resource.\",\n \"request\": {\n \"$ref\": + \"Playlist\"\n }\n },\n \"insert\": {\n \"request\": + {\n \"$ref\": \"Playlist\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n + \ \"required\": true,\n \"location\": \"query\",\n + \ \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*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.\"\n }\n },\n + \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.playlists.insert\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/playlists\",\n \"flatPath\": \"youtube/v3/playlists\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"response\": {\n \"$ref\": \"Playlist\"\n }\n + \ },\n \"delete\": {\n \"id\": \"youtube.playlists.delete\",\n + \ \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -4702,24 +4710,88 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"chart\": - {\n \"type\": \"string\",\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Return - the videos that are in the specified chart.\"\n },\n \"maxHeight\": - {\n \"minimum\": \"72\",\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"maximum\": \"8192\",\n - \ \"location\": \"query\"\n },\n \"locale\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"videoCategoryId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": - \"0\",\n \"description\": \"Use chart that is specific to the - specified video category\"\n }\n },\n \"path\": - \"youtube/v3/videos\"\n },\n \"delete\": {\n \"flatPath\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/playlists\",\n \"httpMethod\": + \"DELETE\",\n \"path\": \"youtube/v3/playlists\",\n \"description\": + \"Deletes a resource.\"\n }\n }\n },\n \"videos\": {\n \"methods\": + {\n \"update\": {\n \"request\": {\n \"$ref\": + \"Video\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Updates an existing resource.\",\n + \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": + \"Video\"\n },\n \"path\": \"youtube/v3/videos\",\n \"flatPath\": \"youtube/v3/videos\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively + {\n \"location\": \"query\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"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.\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": + \"youtube.videos.update\"\n },\n \"reportAbuse\": {\n \"flatPath\": + \"youtube/v3/videos/reportAbuse\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n + \ },\n \"parameterOrder\": [],\n \"request\": {\n + \ \"$ref\": \"VideoAbuseReport\"\n },\n \"httpMethod\": + \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Report abuse for a video.\",\n + \ \"path\": \"youtube/v3/videos/reportAbuse\",\n \"id\": + \"youtube.videos.reportAbuse\"\n },\n \"rate\": {\n \"parameterOrder\": + [\n \"id\",\n \"rating\"\n ],\n \"flatPath\": + \"youtube/v3/videos/rate\",\n \"id\": \"youtube.videos.rate\",\n + \ \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ },\n \"rating\": {\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"location\": \"query\",\n + \ \"required\": true,\n \"type\": \"string\",\n \"enum\": + [\n \"none\",\n \"like\",\n \"dislike\"\n + \ ]\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/videos/rate\",\n + \ \"description\": \"Adds a like or dislike rating to a video or removes + a rating from a video.\"\n },\n \"delete\": {\n \"parameterOrder\": + [\n \"id\"\n ],\n \"description\": \"Deletes + a resource.\",\n \"id\": \"youtube.videos.delete\",\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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. @@ -4728,57 +4800,43 @@ interactions: once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.videos.delete\",\n - \ \"path\": \"youtube/v3/videos\",\n \"description\": \"Deletes - a resource.\",\n \"httpMethod\": \"DELETE\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"getRating\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/videos/getRating\",\n \"response\": - {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + YouTube content owner.\"\n }\n },\n \"path\": + \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.getRating\",\n \"flatPath\": - \"youtube/v3/videos/getRating\",\n \"description\": \"Retrieves the - ratings that the authorized user gave to a list of specified videos.\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ }\n }\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"flatPath\": + \"youtube/v3/videos\"\n },\n \"insert\": {\n \"mediaUpload\": + {\n \"protocols\": {\n \"resumable\": {\n \"path\": + \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": true\n \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"video/*\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"274877906944\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"autoLevels\": {\n \"location\": \"query\",\n - \ \"description\": \"Should auto-levels be applied to the upload.\",\n - \ \"type\": \"boolean\"\n },\n \"stabilize\": - {\n \"location\": \"query\",\n \"description\": - \"Should stabilize be applied to the upload.\",\n \"type\": \"boolean\"\n - \ },\n \"notifySubscribers\": {\n \"type\": - \"boolean\",\n \"default\": \"true\",\n \"description\": - \"Notify the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n + \ \"multipart\": true\n }\n },\n \"maxSize\": + \"274877906944\",\n \"accept\": [\n \"video/*\",\n + \ \"application/octet-stream\"\n ]\n },\n + \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": + \"Video\"\n },\n \"supportsMediaUpload\": true,\n \"description\": + \"Inserts a new resource into this collection.\",\n \"request\": + {\n \"$ref\": \"Video\"\n },\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"path\": + \"youtube/v3/videos\",\n \"id\": \"youtube.videos.insert\",\n \"parameters\": + {\n \"stabilize\": {\n \"description\": \"Should stabilize + be applied to the upload.\",\n \"type\": \"boolean\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"notifySubscribers\": + {\n \"type\": \"boolean\",\n \"description\": \"Notify + the channel subscribers about the new video. As default, the notification + is enabled.\",\n \"location\": \"query\",\n \"default\": + \"true\"\n },\n \"part\": {\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\",\n \ \"description\": \"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 @@ -4786,22 +4844,11 @@ interactions: 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.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"This - parameter can only be used in a properly authorized request. *Note:* This - parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* + that part will still be included in the API response.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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 @@ -4813,59 +4860,45 @@ interactions: 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.\",\n \"location\": \"query\"\n }\n - \ },\n \"path\": \"youtube/v3/videos\",\n \"supportsMediaUpload\": - true,\n \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"id\": \"youtube.videos.insert\",\n \"flatPath\": \"youtube/v3/videos\"\n - \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"update\": - {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n - \ \"location\": \"query\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"sync\": {\n \"location\": \"query\",\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.captions.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"mediaUpload\": {\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/captions\"\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ }\n },\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"maxSize\": \"104857600\"\n },\n \"supportsMediaUpload\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"flatPath\": - \"youtube/v3/captions\"\n },\n \"download\": {\n \"useMediaDownloadService\": - true,\n \"id\": \"youtube.captions.download\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"parameters\": {\n \"tlang\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"tlang is the language code; machine translate the captions into this language.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + for each separate channel.\",\n \"type\": \"string\"\n },\n + \ \"autoLevels\": {\n \"location\": \"query\",\n \"type\": + \"boolean\",\n \"description\": \"Should auto-levels be applied + to the upload.\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ]\n },\n \"list\": {\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.videos.list\",\n \"parameters\": + {\n \"maxResults\": {\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"default\": \"5\",\n \"maximum\": + \"50\",\n \"minimum\": \"1\",\n \"description\": + \"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.\",\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n + \ \"regionCode\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"Use a chart that is specific + to the specified region\"\n },\n \"chart\": {\n \"enum\": + [\n \"chartUnspecified\",\n \"mostPopular\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Return the most popular videos + for the specified content region and video category.\"\n ],\n + \ \"description\": \"Return the videos that are in the specified + chart.\",\n \"location\": \"query\"\n },\n \"myRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n + \ \"description\": \"Return videos liked/disliked by the authenticated + user. Does not support RateType.RATED_TYPE_NONE.\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"description\": \"Return videos with the given ids.\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -4873,78 +4906,51 @@ interactions: content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is be on behalf of\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"tfmt\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Convert the captions into this format. Supported - options are sbv, srt, and vtt.\"\n },\n \"id\": {\n - \ \"description\": \"The ID of the caption track to download, - required for One Platform.\",\n \"required\": true,\n \"location\": - \"path\",\n \"type\": \"string\"\n }\n },\n - \ \"supportsMediaDownload\": true,\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"description\": \"Downloads a caption track.\"\n },\n \"delete\": - {\n \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.captions.delete\",\n \"path\": - \"youtube/v3/captions\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"list\": {\n \"flatPath\": - \"youtube/v3/captions\",\n \"parameterOrder\": [\n \"part\",\n - \ \"videoId\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/captions\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"Returns the captions for the specified - video.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": - \"Returns the captions with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.captions.list\",\n - \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"scopes\": [\n + individual channel. The CMS account that the user authenticates with must + be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"videoCategoryId\": + {\n \"type\": \"string\",\n \"description\": \"Use + chart that is specific to the specified video category\",\n \"location\": + \"query\",\n \"default\": \"0\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": + \"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.\"\n + \ },\n \"maxWidth\": {\n \"minimum\": \"72\",\n + \ \"format\": \"int32\",\n \"type\": \"integer\",\n + \ \"description\": \"Return the player with maximum height specified + in\",\n \"maximum\": \"8192\",\n \"location\": \"query\"\n + \ },\n \"locale\": {\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"maxHeight\": + {\n \"format\": \"int32\",\n \"type\": \"integer\",\n + \ \"minimum\": \"72\",\n \"location\": \"query\",\n + \ \"maximum\": \"8192\"\n },\n \"hl\": {\n + \ \"location\": \"query\",\n \"description\": \"Stands + for \\\"host language\\\". Specifies the localization language of the metadata + to be filled into snippet.localized. The field is filled with the default + metadata if there is no localization in the specified language. The parameter + value must be a language code included in the list returned by the i18nLanguages.list + method (e.g. en_US, es_MX).\",\n \"type\": \"string\"\n }\n + \ },\n \"path\": \"youtube/v3/videos\",\n \"response\": + {\n \"$ref\": \"VideoListResponse\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"part\"\n ]\n },\n \"getRating\": {\n + \ \"description\": \"Retrieves the ratings that the authorized user + gave to a list of specified videos.\",\n \"path\": \"youtube/v3/videos/getRating\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"insert\": {\n \"response\": {\n - \ \"$ref\": \"Caption\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.videos.getRating\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -4952,62 +4958,151 @@ interactions: content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"sync\": {\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + individual channel. The CMS account that the user authenticates with must + be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/videos/getRating\",\n \"response\": + {\n \"$ref\": \"VideoGetRatingResponse\"\n }\n }\n + \ }\n },\n \"commentThreads\": {\n \"methods\": {\n \"list\": + {\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"id\": + \"youtube.commentThreads.list\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"parameters\": {\n \"videoId\": + {\n \"description\": \"Returns the comment threads of the specified + video.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"minimum\": + \"1\",\n \"type\": \"integer\",\n \"maximum\": \"100\",\n + \ \"format\": \"uint32\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"default\": \"20\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"The *part* parameter specifies a comma-separated + list of one or more commentThread resource properties that the API response + will include.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Returns the comment threads for all the channel + comments (ie does not include comments left on videos).\"\n },\n + \ \"order\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"Order by time.\",\n \"Order by relevance.\"\n + \ ],\n \"type\": \"string\",\n \"location\": + \"query\",\n \"enum\": [\n \"orderUnspecified\",\n + \ \"time\",\n \"relevance\"\n ],\n + \ \"default\": \"time\"\n },\n \"textFormat\": + {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Returns the comments in HTML format. + This is the default value.\",\n \"Returns the comments in plain + text format.\"\n ],\n \"description\": \"The requested + text format for the returned comments.\",\n \"location\": \"query\",\n + \ \"enum\": [\n \"textFormatUnspecified\",\n \"html\",\n + \ \"plainText\"\n ],\n \"default\": + \"html\"\n },\n \"searchTerms\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Limits the returned comment threads to those matching the specified key + words. Not compatible with the 'id' filter.\"\n },\n \"moderationStatus\": + {\n \"description\": \"Limits the returned comment threads to + those with the specified moderation status. Not compatible with the 'id' filter. + Valid values: published, heldForReview, likelySpam.\",\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"type\": + \"string\",\n \"default\": \"published\",\n \"location\": + \"query\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ]\n + \ },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"allThreadsRelatedToChannelId\": + {\n \"description\": \"Returns the comment threads of all videos + of the channel and the channel comments as well.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"description\": \"Returns the comment threads with the given + IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n }\n + \ },\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/commentThreads\",\n + \ \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"insert\": {\n \"description\": + \"Inserts a new resource into this collection.\",\n \"flatPath\": + \"youtube/v3/commentThreads\",\n \"httpMethod\": \"POST\",\n \"parameters\": + {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"request\": + {\n \"$ref\": \"CommentThread\"\n },\n \"path\": + \"youtube/v3/commentThreads\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.commentThreads.insert\",\n \"response\": + {\n \"$ref\": \"CommentThread\"\n },\n \"parameterOrder\": + [\n \"part\"\n ]\n }\n }\n },\n \"subscriptions\": + {\n \"methods\": {\n \"insert\": {\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"required\": true,\n + \ \"type\": \"string\",\n \"repeated\": true\n }\n + \ },\n \"path\": \"youtube/v3/subscriptions\",\n \"id\": + \"youtube.subscriptions.insert\",\n \"httpMethod\": \"POST\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ }\n },\n \"maxSize\": \"104857600\",\n - \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"supportsMediaUpload\": - true,\n \"path\": \"youtube/v3/captions\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.captions.insert\",\n \"flatPath\": - \"youtube/v3/captions\"\n }\n }\n },\n \"i18nLanguages\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n - \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"id\": \"youtube.i18nLanguages.list\",\n \"path\": - \"youtube/v3/i18nLanguages\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"response\": {\n \"$ref\": \"Subscription\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/subscriptions\",\n \"request\": {\n \"$ref\": + \"Subscription\"\n },\n \"description\": \"Inserts a new + resource into this collection.\"\n },\n \"delete\": {\n \"description\": + \"Deletes a resource.\",\n \"path\": \"youtube/v3/subscriptions\",\n + \ \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.subscriptions.delete\",\n \"flatPath\": + \"youtube/v3/subscriptions\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"httpMethod\": \"DELETE\"\n },\n \"list\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"SubscriptionListResponse\"\n },\n \"flatPath\": + \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.list\",\n + \ \"path\": \"youtube/v3/subscriptions\",\n \"httpMethod\": + \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"hl\": - {\n \"location\": \"query\",\n \"default\": \"en_US\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the i18nLanguage - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"watermarks\": - {\n \"methods\": {\n \"set\": {\n \"mediaUpload\": {\n - \ \"maxSize\": \"10485760\",\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n }\n - \ },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"id\": \"youtube.watermarks.set\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"parameters\": {\n \"channelId\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"myRecentSubscribers\": {\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"part\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": true\n },\n \"forChannelId\": {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Return the subscriptions to the subset of + these channels that the authenticated user is subscribed to.\"\n },\n + \ \"mySubscribers\": {\n \"location\": \"query\",\n + \ \"description\": \"Return the subscribers of the given channel + owner.\",\n \"type\": \"boolean\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"Return + the subscriptions with the given IDs for Stubby or Apiary.\",\n \"location\": + \"query\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n \ \"description\": \"*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 @@ -5017,272 +5112,250 @@ interactions: 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.\"\n }\n },\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"supportsMediaUpload\": true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + owner.\"\n },\n \"mine\": {\n \"type\": + \"boolean\",\n \"description\": \"Flag for returning the subscriptions + of the authenticated user.\",\n \"location\": \"query\"\n },\n + \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"location\": + \"query\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return the subscriptions of the given channel owner.\"\n },\n + \ \"order\": {\n \"type\": \"string\",\n \"description\": + \"The order of the returned subscriptions\",\n \"enumDescriptions\": + [\n \"\",\n \"Sort by relevance.\",\n \"Sort + by order of activity.\",\n \"Sort alphabetically.\"\n ],\n + \ \"location\": \"query\",\n \"default\": \"relevance\",\n + \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n + \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n + \ ]\n },\n \"maxResults\": {\n \"format\": + \"uint32\",\n \"minimum\": \"0\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"location\": \"query\",\n + \ \"maximum\": \"50\",\n \"default\": \"5\",\n \"type\": + \"integer\"\n }\n },\n \"description\": \"Retrieves + a list of resources, possibly filtered.\"\n }\n }\n },\n \"videoAbuseReportReasons\": + {\n \"methods\": {\n \"list\": {\n \"response\": {\n + \ \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n + \ \"parameters\": {\n \"hl\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"default\": + \"en-US\"\n },\n \"part\": {\n \"description\": + \"The *part* parameter specifies the videoCategory resource parts that the + API response will include. Supported values are id and snippet.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\"\n }\n + \ }\n },\n \"membershipsLevels\": {\n \"methods\": {\n \"list\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.membershipsLevels.list\",\n \"flatPath\": + \"youtube/v3/membershipsLevels\",\n \"parameters\": {\n \"part\": + {\n \"type\": \"string\",\n \"description\": \"The + *part* parameter specifies the membershipsLevel resource parts that the API + response will include. Supported values are id and snippet.\",\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\"\n + \ }\n },\n \"response\": {\n \"$ref\": + \"MembershipsLevelListResponse\"\n },\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"description\": \"Retrieves a list of all pricing + levels offered by a creator to the fans.\",\n \"path\": \"youtube/v3/membershipsLevels\"\n + \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n + \ \"set\": {\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n + \ \"id\": \"youtube.thumbnails.set\",\n \"path\": \"youtube/v3/thumbnails/set\",\n + \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"As this is not an insert in a strict + sense (it supports uploading/setting of a thumbnail for multiple videos, which + doesn't result in creation of a single resource), I use a custom verb here.\",\n + \ \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n + \ },\n \"supportsMediaUpload\": true,\n \"mediaUpload\": + {\n \"protocols\": {\n \"resumable\": {\n \"multipart\": + true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n + \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n + \ \"multipart\": true\n }\n },\n \"maxSize\": + \"2097152\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ]\n },\n + \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n },\n \"videoId\": {\n \"description\": + \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n + \ \"required\": true,\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n }\n }\n }\n },\n \"watermarks\": + {\n \"methods\": {\n \"unset\": {\n \"parameters\": {\n + \ \"channelId\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n + \ },\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/watermarks/unset\",\n + \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"channelId\"\n ],\n + \ \"description\": \"Allows removal of channel watermark.\",\n \"id\": + \"youtube.watermarks.unset\"\n },\n \"set\": {\n \"parameterOrder\": + [\n \"channelId\"\n ],\n \"parameters\": {\n + \ \"channelId\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n + \ },\n \"mediaUpload\": {\n \"maxSize\": \"10485760\",\n + \ \"protocols\": {\n \"resumable\": {\n \"path\": + \"/resumable/upload/youtube/v3/watermarks/set\",\n \"multipart\": + true\n },\n \"simple\": {\n \"path\": + \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": true\n + \ }\n },\n \"accept\": [\n \"image/jpeg\",\n + \ \"image/png\",\n \"application/octet-stream\"\n + \ ]\n },\n \"httpMethod\": \"POST\",\n \"request\": + {\n \"$ref\": \"InvideoBranding\"\n },\n \"path\": + \"youtube/v3/watermarks/set\",\n \"id\": \"youtube.watermarks.set\",\n + \ \"description\": \"Allows upload of watermark image and setting + it for a channel.\",\n \"flatPath\": \"youtube/v3/watermarks/set\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"description\": - \"Allows upload of watermark image and setting it for a channel.\",\n \"request\": - {\n \"$ref\": \"InvideoBranding\"\n }\n },\n \"unset\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"supportsMediaUpload\": true\n }\n }\n },\n \"playlistItems\": + {\n \"methods\": {\n \"insert\": {\n \"id\": \"youtube.playlistItems.insert\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": + \"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.\"\n }\n },\n \"httpMethod\": + \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/watermarks/unset\",\n \"description\": - \"Allows removal of channel watermark.\",\n \"parameterOrder\": [\n - \ \"channelId\"\n ],\n \"id\": \"youtube.watermarks.unset\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/watermarks/unset\"\n }\n - \ }\n },\n \"liveChatMessages\": {\n \"methods\": {\n \"list\": - {\n \"id\": \"youtube.liveChatMessages.list\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the liveChatComment resource parts that the API response will include. Supported - values are id and snippet.\",\n \"repeated\": true\n },\n - \ \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Specifies the localization language - in which the system messages should be returned.\"\n },\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for which comments - should be returned.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"description\": + \ ],\n \"description\": \"Inserts a new resource into this + collection.\",\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n + \ },\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"response\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"path\": + \"youtube/v3/playlistItems\",\n \"parameterOrder\": [\n \"part\"\n + \ ]\n },\n \"list\": {\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"maxResults\": + {\n \"location\": \"query\",\n \"description\": \"The *maxResults* parameter specifies the maximum number of items that should be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"200\",\n \"type\": \"integer\",\n - \ \"default\": \"500\",\n \"location\": \"query\",\n - \ \"maximum\": \"2000\"\n },\n \"profileImageSize\": - {\n \"description\": \"Specifies the size of the profile image - that should be returned for each user.\",\n \"type\": \"integer\",\n - \ \"minimum\": \"16\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"720\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\"\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"id\": - \"youtube.liveChatMessages.delete\",\n \"description\": \"Deletes - a chat message.\",\n \"path\": \"youtube/v3/liveChat/messages\"\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"request\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n + \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"maximum\": + \"50\",\n \"type\": \"integer\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n },\n \"playlistId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return the playlist items within the given playlist.\"\n },\n + \ \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"Return the playlist items associated with the given video ID.\",\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"description\": \"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.\",\n \"required\": true\n + \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n + \ },\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.playlistItems.list\"\n + \ },\n \"delete\": {\n \"id\": \"youtube.playlistItems.delete\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"id\": - \"youtube.liveChatMessages.insert\"\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"I18nRegionListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/i18nRegions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"default\": \"en_US\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"path\": - \"youtube/v3/i18nRegions\",\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"abuseReports\": {\n \"methods\": {\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/abuseReports\",\n \"flatPath\": - \"youtube/v3/abuseReports\",\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"list\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"id\": \"youtube.thirdPartyLinks.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"description\": \"Get a third party link with the given linking - token.\",\n \"location\": \"query\"\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the thirdPartyLink resource parts that the API response will include. Supported - values are linkingToken, status, and snippet.\",\n \"repeated\": - true\n },\n \"type\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Get a third party link of the given type.\",\n \"enum\": [\n - \ \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ]\n }\n - \ },\n \"path\": \"youtube/v3/thirdPartyLinks\"\n },\n - \ \"update\": {\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Channel ID to which changes should - be applied, for delegation.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.thirdPartyLinks.update\"\n },\n \"delete\": - {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.thirdPartyLinks.delete\",\n - \ \"parameters\": {\n \"linkingToken\": {\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"required\": + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"description\": \"Deletes a resource.\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"id\": {\n \"required\": true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"description\": \"Do not use. Required for compatibility.\",\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"location\": - \"query\",\n \"required\": true,\n \"enum\": [\n - \ \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"description\": \"Type of the link to be - deleted.\",\n \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"linkingToken\",\n \"type\"\n ]\n },\n - \ \"insert\": {\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.thirdPartyLinks.insert\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ }\n }\n }\n }\n },\n \"playlists\": - {\n \"methods\": {\n \"update\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter serves two purposes + \ }\n },\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"flatPath\": \"youtube/v3/playlistItems\"\n },\n + \ \"update\": {\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n + \ },\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n + \ },\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"description\": + \"Updates an existing resource.\",\n \"httpMethod\": \"PUT\",\n \"id\": + \"youtube.playlistItems.update\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"description\": \"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.\"\n }\n - \ },\n \"path\": \"youtube/v3/playlists\",\n \"id\": - \"youtube.playlists.update\",\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\"\n },\n \"list\": - {\n \"flatPath\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"id\": \"youtube.playlists.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\"\n },\n \"mine\": {\n \"description\": - \"Return the playlists owned by the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return content in specified language\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the playlists with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return the playlists owned by - the specified channel ID.\"\n },\n \"onBehalfOfContentOwner\": + 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.\",\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify @@ -5293,60 +5366,31 @@ interactions: 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.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"delete\": {\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": + \ },\n \"path\": \"youtube/v3/playlistItems\"\n }\n + \ }\n },\n \"liveBroadcasts\": {\n \"methods\": {\n \"delete\": + {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": + \"DELETE\",\n \"description\": \"Delete a given broadcast.\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"id\": \"youtube.liveBroadcasts.delete\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"flatPath\": - \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/playlists\",\n \"httpMethod\": \"DELETE\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Deletes a resource.\"\n },\n \"insert\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/playlists\",\n \"description\": \"Inserts a new resource - into this collection.\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlists\",\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"id\": \"youtube.playlists.insert\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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 + \ \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + for each separate channel.\"\n },\n \"id\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": + \"Broadcast to delete.\",\n \"required\": true\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -5355,118 +5399,34 @@ interactions: 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.\"\n }\n }\n - \ }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"searchTerms\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Limits - the returned comment threads to those matching the specified key words. Not - compatible with the 'id' filter.\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"textFormat\": {\n \"location\": - \"query\",\n \"default\": \"html\",\n \"type\": - \"string\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"description\": \"The requested text format for the returned - comments.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ]\n },\n \"allThreadsRelatedToChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\"\n },\n \"order\": + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"insertCuepoint\": {\n \"id\": + \"youtube.liveBroadcasts.insertCuepoint\",\n \"parameters\": {\n + \ \"part\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"time\",\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Order - by time.\",\n \"Order by relevance.\"\n ]\n },\n - \ \"moderationStatus\": {\n \"location\": \"query\",\n - \ \"default\": \"published\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"description\": \"Limits the returned comment threads to those - with the specified moderation status. Not compatible with the 'id' filter. - Valid values: published, heldForReview, likelySpam.\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"id\": - {\n \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads for all the channel comments (ie does not include comments - left on videos).\",\n \"location\": \"query\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"Returns the comment threads of the specified video.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"minimum\": - \"1\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"100\",\n \"default\": \"20\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.commentThreads.list\",\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"flatPath\": - \"youtube/v3/commentThreads\"\n },\n \"insert\": {\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"id\": - \"youtube.commentThreads.insert\",\n \"description\": \"Inserts a - new resource into this collection.\"\n }\n }\n },\n \"youtube\": - {\n \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"description\": \"Updates - an existing resource.\",\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"parameterOrder\": []\n }\n - \ }\n }\n }\n },\n \"thumbnails\": {\n \"methods\": - {\n \"set\": {\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/thumbnails/set\",\n \"supportsMediaUpload\": true,\n - \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ }\n },\n \"maxSize\": \"2097152\"\n },\n - \ \"path\": \"youtube/v3/thumbnails/set\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"videoId\"\n ],\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"id\": - \"youtube.thumbnails.set\",\n \"response\": {\n \"$ref\": - \"ThumbnailSetResponse\"\n },\n \"parameters\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the Thumbnail with the given video IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": + \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -5474,146 +5434,133 @@ interactions: This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n }\n }\n }\n },\n \"channels\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"path\": \"youtube/v3/channels\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.channels.list\",\n \"response\": {\n \"$ref\": - \"ChannelListResponse\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"mySubscribers\": {\n \"location\": \"query\",\n - \ \"description\": \"Return the channels subscribed to the authenticated - user\",\n \"type\": \"boolean\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": true\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"description\": - \"Return the ids of channels owned by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"id\": {\n \"description\": - \"Return the channels with the specified IDs.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"maximum\": \"50\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"format\": \"uint32\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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 + provide authentication credentials for each individual channel. The CMS account + that the user authenticates with must be linked to the specified YouTube content + owner.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"description\": + \"Broadcast to insert ads to, or equivalently `external_video_id` for internal + use.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"Cuepoint\"\n + \ },\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n + \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [],\n \"request\": + {\n \"$ref\": \"Cuepoint\"\n },\n \"flatPath\": + \"youtube/v3/liveBroadcasts/cuepoint\",\n \"description\": \"Insert + cuepoints in a broadcast\"\n },\n \"list\": {\n \"id\": + \"youtube.liveBroadcasts.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"description\": \"Retrieve the list of broadcasts + associated with the given channel.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"flatPath\": + \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\"\n },\n \"forUsername\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the channel associated with a YouTube - username.\"\n },\n \"hl\": {\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"managedByMe\": - {\n \"location\": \"query\",\n \"description\": - \"Return the channels managed by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"categoryId\": {\n \"description\": \"Return the - channels within the specified guide category ID.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/channels\"\n },\n \"update\": - {\n \"id\": \"youtube.channels.update\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"flatPath\": - \"youtube/v3/channels\",\n \"request\": {\n \"$ref\": - \"Channel\"\n },\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": + {\n \"minimum\": \"0\",\n \"location\": \"query\",\n + \ \"format\": \"uint32\",\n \"maximum\": \"50\",\n + \ \"type\": \"integer\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"default\": \"5\"\n },\n + \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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 + \ \"description\": \"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 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.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"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.\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/channels\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"channelSections\": {\n \"methods\": {\n \"update\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.channelSections.update\",\n \"path\": - \"youtube/v3/channelSections\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n }\n },\n \"list\": {\n \"path\": - \"youtube/v3/channelSections\",\n \"response\": {\n \"$ref\": - \"ChannelSectionListResponse\"\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"hl\": + 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.\"\n },\n \"broadcastType\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return content in specified language\"\n - \ },\n \"channelId\": {\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"description\": - \"Return the ChannelSections owned by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \ \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n + \ \"all\",\n \"event\",\n \"persistent\"\n + \ ],\n \"description\": \"Return only broadcasts + with the selected type.\",\n \"default\": \"event\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all broadcasts.\",\n \"Return + only scheduled event broadcasts.\",\n \"Return only persistent + broadcasts.\"\n ]\n },\n \"id\": {\n \"description\": + \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"repeated\": true,\n \"description\": \"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, status and + statistics.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"broadcastStatus\": {\n \"type\": + \"string\",\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n + \ \"all\",\n \"active\",\n \"upcoming\",\n + \ \"completed\"\n ],\n \"location\": + \"query\",\n \"description\": \"Return broadcasts with a certain + status, e.g. active broadcasts.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"Return all broadcasts.\",\n \"Return + current live broadcasts.\",\n \"Return broadcasts that have + not yet started.\",\n \"Return broadcasts that have already + ended.\"\n ]\n },\n \"pageToken\": {\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n + \ }\n },\n \"response\": {\n \"$ref\": + \"LiveBroadcastListResponse\"\n }\n },\n \"update\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"description\": \"Updates an existing + broadcast for the authenticated user.\",\n \"httpMethod\": \"PUT\",\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"id\": + \"youtube.liveBroadcasts.update\",\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"*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 @@ -5622,40 +5569,29 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.channelSections.list\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"insert\": {\n - \ \"path\": \"youtube/v3/channelSections\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.channelSections.insert\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"This parameter can only be used in a properly authorized request. *Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* + be linked to the specified YouTube content owner.\"\n }\n }\n + \ },\n \"bind\": {\n \"id\": \"youtube.liveBroadcasts.bind\",\n + \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"description\": + \"Bind a broadcast to a stream.\",\n \"httpMethod\": \"POST\",\n + \ \"parameterOrder\": [\n \"id\",\n \"part\"\n + \ ],\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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 @@ -5667,174 +5603,62 @@ interactions: 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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n }\n },\n - \ \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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 + for each separate channel.\",\n \"location\": \"query\"\n },\n + \ \"id\": {\n \"description\": \"Broadcast to bind + to the stream\",\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\"\n },\n \"streamId\": + {\n \"description\": \"Stream to bind, if not set unbind the + current one.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"repeated\": true,\n \"type\": \"string\"\n + \ }\n }\n },\n \"insert\": {\n \"parameters\": + {\n \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n + \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Deletes - a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n }\n }\n },\n \"playlistItems\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"pageToken\": + owner.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"playlistId\": {\n \"description\": - \"Return the playlist items within the given playlist.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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 + \ \"description\": \"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 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.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"minimum\": \"0\",\n - \ \"format\": \"uint32\",\n \"default\": \"5\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"videoId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Return - the playlist items associated with the given video ID.\"\n }\n - \ },\n \"id\": \"youtube.playlistItems.list\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/playlistItems\"\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"id\": - \"youtube.playlistItems.delete\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/playlistItems\"\n },\n \"update\": - {\n \"id\": \"youtube.playlistItems.update\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"description\": \"Updates an existing resource.\"\n },\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"id\": - \"youtube.playlistItems.insert\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"request\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"supportsMediaUpload\": true,\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": + 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.\"\n }\n },\n \"httpMethod\": + \"POST\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"description\": \"Inserts a new stream for the authenticated + user.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.liveBroadcasts.insert\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveBroadcasts\"\n + \ },\n \"transition\": {\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"httpMethod\": \"POST\",\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -5848,171 +5672,155 @@ interactions: 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.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Unused, channel_id is currently - derived from the security context of the requestor.\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [],\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/channelBanners/insert\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/channelBanners/insert\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\"\n },\n \"id\": - \"youtube.channelBanners.insert\",\n \"path\": \"youtube/v3/channelBanners/insert\"\n - \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of members that match the request criteria for a channel.\",\n \"path\": - \"youtube/v3/members\",\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": + for each separate channel.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"required\": + true,\n \"description\": \"Broadcast to transition.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"required\": true,\n \"description\": + \"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.\"\n },\n \"broadcastStatus\": {\n \"required\": + true,\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Start testing the broadcast. YouTube + transmits video to the broadcast's monitor stream. Note that you can only + transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream + property is set to true.\\\",\",\n \"Return only persistent + broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting + video.\"\n ],\n \"description\": \"The status to + which the broadcast is going to transition.\",\n \"enum\": [\n + \ \"statusUnspecified\",\n \"testing\",\n \"live\",\n + \ \"complete\"\n ],\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n + \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n + \ \"part\"\n ],\n \"description\": \"Transition + a broadcast to a given status.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"path\": + \"youtube/v3/liveBroadcasts/transition\"\n }\n }\n },\n \"captions\": + {\n \"methods\": {\n \"update\": {\n \"request\": {\n + \ \"$ref\": \"Caption\"\n },\n \"supportsMediaUpload\": + true,\n \"flatPath\": \"youtube/v3/captions\",\n \"id\": + \"youtube.captions.update\",\n \"parameters\": {\n \"sync\": + {\n \"description\": \"Extra parameter to allow automatically + syncing the uploaded caption/transcript with the audio.\",\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - member resource parts that the API response will include. Set the parameter - value to snippet.\",\n \"type\": \"string\"\n },\n - \ \"hasAccessToLevel\": {\n \"location\": \"query\",\n - \ \"description\": \"Filter members in the results set to the - ones that have access to a level.\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"default\": \"5\",\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"1000\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n },\n \"mode\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"enum\": - [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"type\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"default\": - \"all_current\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"filterByMemberChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\"\n - \ }\n },\n \"id\": \"youtube.members.list\",\n - \ \"flatPath\": \"youtube/v3/members\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ]\n }\n }\n },\n \"comments\": {\n \"methods\": - {\n \"update\": {\n \"path\": \"youtube/v3/comments\",\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n - \ },\n \"request\": {\n \"$ref\": \"Comment\"\n - \ },\n \"httpMethod\": \"PUT\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.comments.update\"\n },\n \"list\": {\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Returns the comments with the given IDs for One Platform.\"\n },\n - \ \"textFormat\": {\n \"default\": \"html\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - requested text format for the returned comments.\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ]\n },\n \"parentId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - replies to the specified comment. Note, currently YouTube features only one - level of replies (ie replies to top level comments). However replies to replies - may be supported in the future.\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"20\",\n \"minimum\": - \"1\",\n \"maximum\": \"100\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more comment resource properties that the API response will - include.\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"CommentListResponse\"\n },\n \"id\": \"youtube.comments.list\",\n - \ \"path\": \"youtube/v3/comments\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"GET\"\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.comments.delete\",\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/comments\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\"\n },\n + \ \"onBehalfOf\": {\n \"description\": \"ID of the + Google+ Page for the channel that the request is on behalf of.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"PUT\",\n \"mediaUpload\": {\n \"protocols\": + {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n + \ \"multipart\": true\n },\n \"simple\": + {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n + \ }\n },\n \"accept\": [\n \"text/xml\",\n + \ \"application/octet-stream\",\n \"*/*\"\n ],\n + \ \"maxSize\": \"104857600\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"Caption\"\n },\n \"description\": \"Updates an existing + resource.\",\n \"path\": \"youtube/v3/captions\"\n },\n \"download\": + {\n \"id\": \"youtube.captions.download\",\n \"httpMethod\": + \"GET\",\n \"description\": \"Downloads a caption track.\",\n \"path\": + \"youtube/v3/captions/{id}\",\n \"supportsMediaDownload\": true,\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n },\n + \ \"id\": {\n \"required\": true,\n \"type\": + \"string\",\n \"location\": \"path\",\n \"description\": + \"The ID of the caption track to download, required for One Platform.\"\n + \ },\n \"onBehalfOf\": {\n \"location\": + \"query\",\n \"description\": \"ID of the Google+ Page for the + channel that the request is be on behalf of\",\n \"type\": \"string\"\n + \ },\n \"tlang\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"tlang + is the language code; machine translate the captions into this language.\"\n + \ },\n \"tfmt\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Convert + the captions into this format. Supported options are sbv, srt, and vtt.\"\n + \ }\n },\n \"flatPath\": \"youtube/v3/captions/{id}\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"useMediaDownloadService\": + true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ },\n \"insert\": {\n \"parameters\": {\n \"sync\": + {\n \"location\": \"query\",\n \"type\": \"boolean\",\n + \ \"description\": \"Extra parameter to allow automatically syncing + the uploaded caption/transcript with the audio.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"required\": true,\n + \ \"description\": \"The *part* parameter specifies the caption + resource parts that the API response will include. Set the parameter value + to snippet.\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"ID of the Google+ Page for the channel that + the request is be on behalf of\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"supportsMediaUpload\": true,\n \"request\": + {\n \"$ref\": \"Caption\"\n },\n \"path\": \"youtube/v3/captions\",\n + \ \"id\": \"youtube.captions.insert\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n }\n },\n \"markAsSpam\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"id\": - \"youtube.comments.markAsSpam\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"parameters\": {\n \"id\": {\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true\n }\n - \ },\n \"description\": \"Expresses the caller's opinion - that one or more comments should be flagged as spam.\",\n \"httpMethod\": - \"POST\"\n },\n \"setModerationStatus\": {\n \"description\": - \"Sets the moderation status of one or more comments.\",\n \"parameters\": - {\n \"moderationStatus\": {\n \"description\": \"Specifies - the requested moderation status. Note, comments can be in statuses, which - are not available through this call. For example, this call does not allow - to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"required\": - true,\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"description\": \"Modifies - the moderation status of the comments with the given IDs\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"banAuthor\": - {\n \"type\": \"boolean\",\n \"default\": \"false\",\n - \ \"description\": \"If set to true the author of the comment - gets added to the ban list. This means all future comments of the author will - autmomatically be rejected. Only valid in combination with STATUS_REJECTED.\",\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"id\",\n - \ \"moderationStatus\"\n ],\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"id\": \"youtube.comments.setModerationStatus\",\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\"\n }\n }\n },\n - \ \"liveStreams\": {\n \"methods\": {\n \"update\": {\n \"path\": - \"youtube/v3/liveStreams\",\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n + \ \"response\": {\n \"$ref\": \"Caption\"\n },\n + \ \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n \"protocols\": + {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n + \ \"multipart\": true\n },\n \"simple\": + {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": + true\n }\n },\n \"accept\": [\n \"text/xml\",\n + \ \"application/octet-stream\",\n \"*/*\"\n ]\n + \ },\n \"flatPath\": \"youtube/v3/captions\"\n },\n + \ \"list\": {\n \"response\": {\n \"$ref\": \"CaptionListResponse\"\n + \ },\n \"id\": \"youtube.captions.list\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/captions\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": + \"youtube/v3/captions\",\n \"parameterOrder\": [\n \"part\",\n + \ \"videoId\"\n ],\n \"httpMethod\": \"GET\",\n \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -6021,46 +5829,32 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"videoId\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Updates - an existing stream for the authenticated user.\",\n \"id\": \"youtube.liveStreams.update\",\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n }\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"description\": \"Deletes an existing stream for the authenticated - user.\",\n \"id\": \"youtube.liveStreams.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \ \"description\": \"Returns the captions for the specified video.\",\n + \ \"required\": true\n },\n \"id\": {\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"Returns + the captions with the given IDs for Stubby or Apiary.\"\n },\n + \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"ID of the Google+ Page for the + channel that the request is on behalf of.\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n + \ \"required\": true,\n \"repeated\": true\n }\n + \ }\n },\n \"delete\": {\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"onBehalfOf\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\"\n },\n \"id\": {\n \"required\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -6068,123 +5862,323 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"DELETE\"\n },\n \"list\": {\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Return LiveStreams with the given ids from Stubby or Apiary.\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"path\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.delete\",\n + \ \"description\": \"Deletes a resource.\",\n \"httpMethod\": + \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ]\n + \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n + \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"flatPath\": \"youtube/v3/i18nRegions\",\n \"id\": + \"youtube.i18nRegions.list\",\n \"description\": \"Retrieves a list + of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"The *part* + parameter specifies the i18nRegion resource properties that the API response + will include. Set the parameter value to snippet.\"\n },\n \"hl\": + {\n \"default\": \"en_US\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"path\": + \"youtube/v3/i18nRegions\"\n }\n }\n },\n \"liveChatMessages\": + {\n \"methods\": {\n \"insert\": {\n \"response\": {\n + \ \"$ref\": \"LiveChatMessage\"\n },\n \"httpMethod\": + \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"request\": {\n \"$ref\": \"LiveChatMessage\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/liveChat/messages\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.liveChatMessages.insert\",\n + \ \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true\n }\n }\n },\n + \ \"delete\": {\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"description\": \"Deletes a chat message.\",\n \"path\": + \"youtube/v3/liveChat/messages\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.liveChatMessages.delete\"\n },\n + \ \"list\": {\n \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n + \ },\n \"parameters\": {\n \"liveChatId\": {\n + \ \"required\": true,\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"The id of the live chat for which + comments should be returned.\"\n },\n \"maxResults\": + {\n \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"location\": + \"query\",\n \"format\": \"uint32\",\n \"maximum\": + \"2000\",\n \"default\": \"500\",\n \"minimum\": + \"200\",\n \"type\": \"integer\"\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"description\": \"The *part* parameter specifies + the liveChatComment resource parts that the API response will include. Supported + values are id and snippet.\"\n },\n \"hl\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Specifies the localization language in which the system messages should + be returned.\"\n },\n \"profileImageSize\": {\n \"maximum\": + \"720\",\n \"minimum\": \"16\",\n \"location\": + \"query\",\n \"description\": \"Specifies the size of the profile + image that should be returned for each user.\",\n \"format\": + \"uint32\",\n \"type\": \"integer\"\n }\n },\n + \ \"id\": \"youtube.liveChatMessages.list\",\n \"parameterOrder\": + [\n \"liveChatId\",\n \"part\"\n ],\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": + \"GET\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"path\": \"youtube/v3/liveChat/messages\"\n }\n }\n + \ },\n \"members\": {\n \"methods\": {\n \"list\": {\n \"httpMethod\": + \"GET\",\n \"flatPath\": \"youtube/v3/members\",\n \"path\": + \"youtube/v3/members\",\n \"description\": \"Retrieves a list of + members that match the request criteria for a channel.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"id\": \"youtube.members.list\",\n \"response\": + {\n \"$ref\": \"MemberListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"hasAccessToLevel\": + {\n \"description\": \"Filter members in the results set to the + ones that have access to a level.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"maxResults\": + {\n \"type\": \"integer\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"default\": \"5\",\n \"format\": + \"uint32\",\n \"maximum\": \"1000\",\n \"location\": + \"query\",\n \"minimum\": \"0\"\n },\n \"part\": + {\n \"repeated\": true,\n \"description\": \"The + *part* parameter specifies the member resource parts that the API response + will include. Set the parameter value to snippet.\",\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"mode\": {\n \"description\": \"Parameter + that specifies which channel members to return.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return only members that joined after the first call with + this mode was made.\",\n \"Return all current members, from + newest to oldest.\"\n ],\n \"location\": \"query\",\n + \ \"default\": \"all_current\",\n \"enum\": [\n \"listMembersModeUnknown\",\n + \ \"updates\",\n \"all_current\"\n ]\n + \ },\n \"pageToken\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"filterByMemberChannelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Comma separated list of channel IDs. Only + data about members that are part of this list will be included in the response.\"\n + \ }\n }\n }\n }\n },\n \"activities\": + {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n + \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"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.\"\n },\n \"mine\": {\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"regionCode\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"channelId\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"publishedBefore\": + {\n \"format\": \"google-datetime\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"type\": \"string\",\n \ \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"path\": \"youtube/v3/liveStreams\",\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\",\n + 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.\",\n \"location\": \"query\",\n \"required\": + true\n },\n \"maxResults\": {\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"type\": \"integer\",\n + \ \"minimum\": \"0\",\n \"maximum\": \"50\",\n \"location\": + \"query\",\n \"default\": \"5\",\n \"format\": \"uint32\"\n + \ },\n \"publishedAfter\": {\n \"format\": + \"google-datetime\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"home\": {\n \"type\": + \"boolean\",\n \"location\": \"query\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/activities\",\n \"description\": \"Retrieves a list + of resources, possibly filtered.\",\n \"id\": \"youtube.activities.list\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.liveStreams.list\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"insert\": {\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ ],\n \"httpMethod\": \"GET\",\n \"response\": + {\n \"$ref\": \"ActivityListResponse\"\n },\n \"path\": + \"youtube/v3/activities\"\n }\n }\n },\n \"liveChatModerators\": + {\n \"methods\": {\n \"delete\": {\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"youtube.liveChatModerators.delete\",\n \"description\": + \"Deletes a chat moderator.\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": + \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"id\": \"youtube.liveStreams.insert\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"description\": + \ \"path\": \"youtube/v3/liveChat/moderators\"\n },\n \"insert\": + {\n \"description\": \"Inserts a new resource into this collection.\",\n + \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/liveChat/moderators\",\n \"parameters\": {\n \"part\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": + \"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.\"\n }\n + \ },\n \"httpMethod\": \"POST\",\n \"flatPath\": + \"youtube/v3/liveChat/moderators\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n },\n + \ \"id\": \"youtube.liveChatModerators.insert\"\n },\n \"list\": + {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n + \ ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"id\": + \"youtube.liveChatModerators.list\",\n \"parameters\": {\n \"liveChatId\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"description\": \"The id of the live chat for which moderators + should be returned.\",\n \"location\": \"query\"\n },\n + \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"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.\"\n },\n \"maxResults\": {\n \"minimum\": + \"0\",\n \"type\": \"integer\",\n \"location\": + \"query\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n + \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\"\n },\n \"part\": {\n \"repeated\": + true,\n \"description\": \"The *part* parameter specifies the + liveChatModerator resource parts that the API response will include. Supported + values are id and snippet.\",\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n + \ }\n }\n }\n },\n \"youtube\": {\n \"resources\": + {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": + {\n \"parameterOrder\": [],\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"location\": \"query\"\n + \ }\n },\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n + \ \"description\": \"Updates an existing resource.\",\n \"response\": + {\n \"$ref\": \"CommentThread\"\n },\n \"path\": + \"youtube/v3/commentThreads\",\n \"httpMethod\": \"PUT\",\n \"request\": + {\n \"$ref\": \"CommentThread\"\n }\n }\n + \ }\n }\n }\n },\n \"channels\": {\n \"methods\": + {\n \"update\": {\n \"id\": \"youtube.channels.update\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"Channel\"\n + \ },\n \"request\": {\n \"$ref\": \"Channel\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/channels\",\n \"flatPath\": \"youtube/v3/channels\",\n + \ \"httpMethod\": \"PUT\",\n \"description\": \"Updates an + existing resource.\",\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"required\": true,\n \"description\": \"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, content_details, and status.\",\n + 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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"list\": {\n \"parameters\": {\n \"part\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"required\": + true,\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"forUsername\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"Return the channel associated + with a YouTube username.\"\n },\n \"categoryId\": {\n \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ]\n }\n }\n }\n },\n \"baseUrl\": - \"https://youtube.googleapis.com/\"\n}\n" + \ \"description\": \"Return the channels within the specified + guide category ID.\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"hl\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Stands for \\\"host language\\\". Specifies + the localization language of the metadata to be filled into snippet.localized. + The field is filled with the default metadata if there is no localization + in the specified language. The parameter value must be a language code included + in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n + \ },\n \"mySubscribers\": {\n \"type\": + \"boolean\",\n \"description\": \"Return the channels subscribed + to the authenticated user\",\n \"location\": \"query\"\n },\n + \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": + \"query\",\n \"description\": \"Return the ids of channels owned + by the authenticated user.\"\n },\n \"managedByMe\": + {\n \"type\": \"boolean\",\n \"description\": \"Return + the channels managed by the authenticated user.\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"maximum\": + \"50\",\n \"default\": \"5\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"minimum\": \"0\",\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"Return the channels with the + specified IDs.\",\n \"repeated\": true,\n \"location\": + \"query\"\n }\n },\n \"httpMethod\": \"GET\",\n + \ \"path\": \"youtube/v3/channels\",\n \"id\": \"youtube.channels.list\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n + \ ],\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/channels\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Retrieves + a list of resources, possibly filtered.\"\n }\n }\n },\n \"tests\": + {\n \"methods\": {\n \"insert\": {\n \"id\": \"youtube.tests.insert\",\n + \ \"description\": \"POST method.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"path\": \"youtube/v3/tests\",\n \"parameters\": + {\n \"externalChannelId\": {\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"required\": true\n + \ }\n },\n \"httpMethod\": \"POST\",\n \"response\": + {\n \"$ref\": \"TestItem\"\n },\n \"request\": + {\n \"$ref\": \"TestItem\"\n },\n \"flatPath\": + \"youtube/v3/tests\"\n }\n }\n }\n },\n \"documentationLink\": + \"https://developers.google.com/youtube/\",\n \"basePath\": \"\"\n}\n" headers: Alt-Svc: - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 @@ -6195,7 +6189,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:42 GMT + - Thu, 09 Mar 2023 00:27:02 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: @@ -6225,15 +6219,15 @@ interactions: uri: https://youtube.googleapis.com/youtube/v3/search?part=snippet&q=%40Alex007&type=channel response: body: - string: "{\n \"kind\": \"youtube#searchListResponse\",\n \"etag\": \"mdd8OYc1OH6UcyvqPPD5ieho6iE\",\n - \ \"nextPageToken\": \"CAUQAA\",\n \"regionCode\": \"LT\",\n \"pageInfo\": - {\n \"totalResults\": 8,\n \"resultsPerPage\": 5\n },\n \"items\": - [\n {\n \"kind\": \"youtube#searchResult\",\n \"etag\": \"Os7Chh51mQuHn2IGea2NsanqcMY\",\n - \ \"id\": {\n \"kind\": \"youtube#channel\",\n \"channelId\": - \"UC3ptU7hyNeFlJdvQj2nZHJg\"\n },\n \"snippet\": {\n \"publishedAt\": - \"2011-10-25T18:32:10Z\",\n \"channelId\": \"UC3ptU7hyNeFlJdvQj2nZHJg\",\n - \ \"title\": \"Alex007SC2\",\n \"description\": \"Alex007 - \u0433\u043E\u043B\u043E\u0441 - StarCraft II, \u043C\u0430\u0442\u0435\u043C\u0430\u0442\u0438\u043A, \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0442\u043E\u0440, + string: "{\n \"kind\": \"youtube#searchListResponse\",\n \"etag\": \"ohaVu1yzE9TESNMipyD1Sec-_N4\",\n + \ \"regionCode\": \"LT\",\n \"pageInfo\": {\n \"totalResults\": 5,\n \"resultsPerPage\": + 3\n },\n \"items\": [\n {\n \"kind\": \"youtube#searchResult\",\n + \ \"etag\": \"jlHr8qwGug5pY0tlqO2MH4ywjzs\",\n \"id\": {\n \"kind\": + \"youtube#channel\",\n \"channelId\": \"UC3ptU7hyNeFlJdvQj2nZHJg\"\n + \ },\n \"snippet\": {\n \"publishedAt\": \"2011-10-25T18:32:10Z\",\n + \ \"channelId\": \"UC3ptU7hyNeFlJdvQj2nZHJg\",\n \"title\": \"Alex007SC2\",\n + \ \"description\": \"Alex007 - \u0433\u043E\u043B\u043E\u0441 StarCraft + II, \u043C\u0430\u0442\u0435\u043C\u0430\u0442\u0438\u043A, \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0442\u043E\u0440, YouTube-\u0431\u043B\u043E\u0433\u0433\u0435\u0440 \u0438 \u0433\u0435\u0439\u043C-\u0434\u0438\u0437\u0430\u0439\u043D\u0435\u0440. \u041D\u0430 \u044D\u0442\u043E\u043C \u043A\u0430\u043D\u0430\u043B\u0435 \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043D\u0430\u0439\u0442\u0438 @@ -6244,49 +6238,27 @@ interactions: \ }\n },\n \"channelTitle\": \"Alex007SC2\",\n \"liveBroadcastContent\": \"upcoming\",\n \"publishTime\": \"2011-10-25T18:32:10Z\"\n }\n \ },\n {\n \"kind\": \"youtube#searchResult\",\n \"etag\": - \"fppERMyqY9_ngiuuuyTRlC317eM\",\n \"id\": {\n \"kind\": \"youtube#channel\",\n - \ \"channelId\": \"UCeLxkCspqQAW4Pk8hdvW47w\"\n },\n \"snippet\": - {\n \"publishedAt\": \"2018-08-16T22:21:08Z\",\n \"channelId\": - \"UCeLxkCspqQAW4Pk8hdvW47w\",\n \"title\": \"Alex007 - Topic\",\n \"description\": - \"\",\n \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/rx74TtFfBMibHmz4rYb4ZgjZpswo3Z9Df57z-HVre7vQ2L4NwzbebHOPAGu14u_NNeTxfqrsbw=s88-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"medium\": {\n \"url\": \"https://yt3.ggpht.com/rx74TtFfBMibHmz4rYb4ZgjZpswo3Z9Df57z-HVre7vQ2L4NwzbebHOPAGu14u_NNeTxfqrsbw=s240-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"high\": {\n \"url\": \"https://yt3.ggpht.com/rx74TtFfBMibHmz4rYb4ZgjZpswo3Z9Df57z-HVre7vQ2L4NwzbebHOPAGu14u_NNeTxfqrsbw=s800-c-k-c0xffffffff-no-rj-mo\"\n - \ }\n },\n \"channelTitle\": \"Alex007 - Topic\",\n - \ \"liveBroadcastContent\": \"none\",\n \"publishTime\": \"2018-08-16T22:21:08Z\"\n - \ }\n },\n {\n \"kind\": \"youtube#searchResult\",\n \"etag\": - \"KcKZYC9MZ50L1lB_M_hh8A8AA5I\",\n \"id\": {\n \"kind\": \"youtube#channel\",\n - \ \"channelId\": \"UC3Bh3MfFiFHiFGDVQ7N6fdg\"\n },\n \"snippet\": - {\n \"publishedAt\": \"2018-11-09T10:32:25Z\",\n \"channelId\": - \"UC3Bh3MfFiFHiFGDVQ7N6fdg\",\n \"title\": \"Alex007 - Topic\",\n \"description\": - \"\",\n \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/BN0loVWN1QfczB4mlcM1KyBxv3hNEOw4_PNKXTJB1j9qHWEAKIIJp3FXOzKA-inpQzoSLlm50Ck=s88-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"medium\": {\n \"url\": \"https://yt3.ggpht.com/BN0loVWN1QfczB4mlcM1KyBxv3hNEOw4_PNKXTJB1j9qHWEAKIIJp3FXOzKA-inpQzoSLlm50Ck=s240-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"high\": {\n \"url\": \"https://yt3.ggpht.com/BN0loVWN1QfczB4mlcM1KyBxv3hNEOw4_PNKXTJB1j9qHWEAKIIJp3FXOzKA-inpQzoSLlm50Ck=s800-c-k-c0xffffffff-no-rj-mo\"\n - \ }\n },\n \"channelTitle\": \"Alex007 - Topic\",\n - \ \"liveBroadcastContent\": \"none\",\n \"publishTime\": \"2018-11-09T10:32:25Z\"\n - \ }\n },\n {\n \"kind\": \"youtube#searchResult\",\n \"etag\": - \"lj3w9-kE1OZBGU8svRZUdc7Ag2s\",\n \"id\": {\n \"kind\": \"youtube#channel\",\n - \ \"channelId\": \"UCsnM3biG0wbQg3mWUm3HVmg\"\n },\n \"snippet\": - {\n \"publishedAt\": \"2023-01-12T06:31:31Z\",\n \"channelId\": - \"UCsnM3biG0wbQg3mWUm3HVmg\",\n \"title\": \"@ALEX 007\",\n \"description\": - \"Subscribe my channel.\",\n \"thumbnails\": {\n \"default\": - {\n \"url\": \"https://yt3.ggpht.com/Mw67COtdutpRjWAJuHlD8U7E4kb7mqbQn5cuJQb9p2hd9ewsEPNpR4cYj-y2Pi0MisFhgCZi=s88-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"medium\": {\n \"url\": \"https://yt3.ggpht.com/Mw67COtdutpRjWAJuHlD8U7E4kb7mqbQn5cuJQb9p2hd9ewsEPNpR4cYj-y2Pi0MisFhgCZi=s240-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"high\": {\n \"url\": \"https://yt3.ggpht.com/Mw67COtdutpRjWAJuHlD8U7E4kb7mqbQn5cuJQb9p2hd9ewsEPNpR4cYj-y2Pi0MisFhgCZi=s800-c-k-c0xffffffff-no-rj-mo\"\n - \ }\n },\n \"channelTitle\": \"@ALEX 007\",\n \"liveBroadcastContent\": - \"none\",\n \"publishTime\": \"2023-01-12T06:31:31Z\"\n }\n },\n - \ {\n \"kind\": \"youtube#searchResult\",\n \"etag\": \"b-Ob8lM1x2Y6d9rbYor3glEW-cw\",\n - \ \"id\": {\n \"kind\": \"youtube#channel\",\n \"channelId\": - \"UCsL7Gy8KZLJpbuwfNFmLAeA\"\n },\n \"snippet\": {\n \"publishedAt\": - \"2022-04-11T05:51:42Z\",\n \"channelId\": \"UCsL7Gy8KZLJpbuwfNFmLAeA\",\n - \ \"title\": \"ALEX 007\",\n \"description\": \"HI FRIND,S WELCOME - TO MY YOUTUBE CHANNEL Subscribe now Like Comment ...\",\n \"thumbnails\": - {\n \"default\": {\n \"url\": \"https://yt3.ggpht.com/cTYY3a_CRI_PZkYaeb36YnGRZAXmG44JjNcvOip1NCULGLwMosQW1v-nBnup68sT6V38xMMfMg=s88-c-k-c0xffffffff-no-rj-mo\"\n + \"b-Ob8lM1x2Y6d9rbYor3glEW-cw\",\n \"id\": {\n \"kind\": \"youtube#channel\",\n + \ \"channelId\": \"UCsL7Gy8KZLJpbuwfNFmLAeA\"\n },\n \"snippet\": + {\n \"publishedAt\": \"2022-04-11T05:51:42Z\",\n \"channelId\": + \"UCsL7Gy8KZLJpbuwfNFmLAeA\",\n \"title\": \"ALEX 007\",\n \"description\": + \"HI FRIND,S WELCOME TO MY YOUTUBE CHANNEL Subscribe now Like Comment ...\",\n + \ \"thumbnails\": {\n \"default\": {\n \"url\": + \"https://yt3.ggpht.com/cTYY3a_CRI_PZkYaeb36YnGRZAXmG44JjNcvOip1NCULGLwMosQW1v-nBnup68sT6V38xMMfMg=s88-c-k-c0xffffffff-no-rj-mo\"\n \ },\n \"medium\": {\n \"url\": \"https://yt3.ggpht.com/cTYY3a_CRI_PZkYaeb36YnGRZAXmG44JjNcvOip1NCULGLwMosQW1v-nBnup68sT6V38xMMfMg=s240-c-k-c0xffffffff-no-rj-mo\"\n \ },\n \"high\": {\n \"url\": \"https://yt3.ggpht.com/cTYY3a_CRI_PZkYaeb36YnGRZAXmG44JjNcvOip1NCULGLwMosQW1v-nBnup68sT6V38xMMfMg=s800-c-k-c0xffffffff-no-rj-mo\"\n \ }\n },\n \"channelTitle\": \"ALEX 007\",\n \"liveBroadcastContent\": - \"none\",\n \"publishTime\": \"2022-04-11T05:51:42Z\"\n }\n }\n + \"none\",\n \"publishTime\": \"2022-04-11T05:51:42Z\"\n }\n },\n + \ {\n \"kind\": \"youtube#searchResult\",\n \"etag\": \"Q_DVxyaoA4_tsHkOLbnpOrR9dNA\",\n + \ \"id\": {\n \"kind\": \"youtube#channel\",\n \"channelId\": + \"UCDJ3nE8-lZSxvIk2ASykJAw\"\n },\n \"snippet\": {\n \"publishedAt\": + \"2022-08-04T05:09:53Z\",\n \"channelId\": \"UCDJ3nE8-lZSxvIk2ASykJAw\",\n + \ \"title\": \"Alex007\",\n \"description\": \"\",\n \"thumbnails\": + {\n \"default\": {\n \"url\": \"https://yt3.ggpht.com/RxzvmjEjtk2IXWXRj2WfiPTnuUITLOpN-6cAu6bwZHOaZTiG6wzlx1ykmgk_WsXaKuCoID-eLg=s88-c-k-c0xffffffff-no-rj-mo\"\n + \ },\n \"medium\": {\n \"url\": \"https://yt3.ggpht.com/RxzvmjEjtk2IXWXRj2WfiPTnuUITLOpN-6cAu6bwZHOaZTiG6wzlx1ykmgk_WsXaKuCoID-eLg=s240-c-k-c0xffffffff-no-rj-mo\"\n + \ },\n \"high\": {\n \"url\": \"https://yt3.ggpht.com/RxzvmjEjtk2IXWXRj2WfiPTnuUITLOpN-6cAu6bwZHOaZTiG6wzlx1ykmgk_WsXaKuCoID-eLg=s800-c-k-c0xffffffff-no-rj-mo\"\n + \ }\n },\n \"channelTitle\": \"Alex007\",\n \"liveBroadcastContent\": + \"none\",\n \"publishTime\": \"2022-08-04T05:09:53Z\"\n }\n }\n \ ]\n}\n" headers: Alt-Svc: @@ -6298,7 +6270,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:42 GMT + - Thu, 09 Mar 2023 00:27:03 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: @@ -6328,3162 +6300,432 @@ interactions: uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest response: body: - string: "{\n \"name\": \"youtube\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": - {\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": + string: "{\n \"description\": \"The YouTube Data API v3 is an API that provides + access to YouTube data, such as videos, playlists, and channels.\",\n \"basePath\": + \"\",\n \"id\": \"youtube:v3\",\n \"title\": \"YouTube Data API v3\",\n + \ \"fullyEncodeReservedExpansion\": true,\n \"name\": \"youtube\",\n \"canonicalName\": + \"YouTube\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n + \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n + \ },\n \"ownerName\": \"Google\",\n \"batchPath\": \"batch\",\n \"protocol\": + \"rest\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"rootUrl\": + \"https://youtube.googleapis.com/\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": + {\n \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": + \"See, edit, and permanently delete your YouTube videos, ratings, comments + and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": \"Manage your YouTube videos\"\n },\n \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": + \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n }\n - \ }\n }\n },\n \"version\": \"v3\",\n \"discoveryVersion\": \"v1\",\n - \ \"protocol\": \"rest\",\n \"canonicalName\": \"YouTube\",\n \"fullyEncodeReservedExpansion\": - true,\n \"id\": \"youtube:v3\",\n \"basePath\": \"\",\n \"ownerName\": - \"Google\",\n \"parameters\": {\n \"uploadType\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Legacy upload protocol - for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n },\n \"alt\": - {\n \"location\": \"query\",\n \"enumDescriptions\": [\n \"Responses - with Content-Type of application/json\",\n \"Media download with context-dependent - Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n - \ ],\n \"default\": \"json\",\n \"description\": \"Data format - for response.\",\n \"enum\": [\n \"json\",\n \"media\",\n - \ \"proto\"\n ],\n \"type\": \"string\"\n },\n \"$.xgafv\": - {\n \"description\": \"V1 error format.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"1\",\n \"2\"\n - \ ],\n \"enumDescriptions\": [\n \"v1 error format\",\n \"v2 - error format\"\n ]\n },\n \"callback\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"JSONP\"\n },\n - \ \"key\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"oauth_token\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"OAuth 2.0 token for - the current user.\"\n },\n \"fields\": {\n \"location\": \"query\",\n - \ \"description\": \"Selector specifying which fields to include in a - partial response.\",\n \"type\": \"string\"\n },\n \"quotaUser\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"access_token\": {\n \"type\": \"string\",\n - \ \"description\": \"OAuth access token.\",\n \"location\": \"query\"\n - \ },\n \"upload_protocol\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", - \\\"multipart\\\").\"\n },\n \"prettyPrint\": {\n \"type\": \"boolean\",\n - \ \"default\": \"true\",\n \"description\": \"Returns response with - indentations and line breaks.\",\n \"location\": \"query\"\n }\n },\n - \ \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"icons\": - {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"resources\": {\n \"commentThreads\": {\n \"methods\": {\n - \ \"insert\": {\n \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.commentThreads.insert\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"list\": {\n \"parameters\": {\n \"allThreadsRelatedToChannelId\": - {\n \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"searchTerms\": - {\n \"type\": \"string\",\n \"description\": \"Limits - the returned comment threads to those matching the specified key words. Not - compatible with the 'id' filter.\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"100\",\n \"format\": \"uint32\",\n - \ \"default\": \"20\",\n \"minimum\": \"1\",\n \"type\": - \"integer\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Returns the comment threads with - the given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n },\n \"textFormat\": - {\n \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"default\": - \"html\",\n \"description\": \"The requested text format for - the returned comments.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ]\n - \ },\n \"moderationStatus\": {\n \"type\": - \"string\",\n \"default\": \"published\",\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"order\": {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"default\": \"time\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Returns - the comment threads for all the channel comments (ie does not include comments - left on videos).\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of the specified video.\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.commentThreads.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"liveChatMessages\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the liveChatComment resource parts that the - API response will include. Supported values are id and snippet.\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"2000\",\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"default\": - \"500\",\n \"minimum\": \"200\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"liveChatId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"The id of the live chat for which - comments should be returned.\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"description\": \"Specifies the localization language - in which the system messages should be returned.\",\n \"type\": - \"string\"\n },\n \"profileImageSize\": {\n \"maximum\": - \"720\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"minimum\": \"16\",\n \"format\": - \"uint32\",\n \"description\": \"Specifies the size of the profile - image that should be returned for each user.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.liveChatMessages.list\",\n \"response\": - {\n \"$ref\": \"LiveChatMessageListResponse\"\n },\n \"path\": - \"youtube/v3/liveChat/messages\"\n },\n \"insert\": {\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.liveChatMessages.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n }\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.liveChatMessages.delete\",\n \"description\": - \"Deletes a chat message.\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/messages\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"httpMethod\": \"DELETE\"\n - \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"insert\": {\n \"description\": \"Inserts a new resource - into this collection.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel ID to which changes - should be applied, for delegation.\",\n \"location\": \"query\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"httpMethod\": \"POST\"\n },\n \"list\": {\n \"response\": - {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"description\": \"Get a third party link - of the given type.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"linkingToken\": {\n \"location\": \"query\",\n - \ \"description\": \"Get a third party link with the given linking - token.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - response will include. Supported values are linkingToken, status, and snippet.\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n - \ ],\n \"id\": \"youtube.thirdPartyLinks.delete\",\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": - {\n \"type\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"required\": - true,\n \"description\": \"Type of the link to be deleted.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ]\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"linkingToken\": {\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"description\": \"Do not use. Required for compatibility.\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n }\n - \ },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Deletes a resource.\"\n },\n \"update\": {\n \"description\": - \"Updates an existing resource.\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"PUT\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"id\": - \"youtube.thirdPartyLinks.update\"\n }\n }\n },\n \"membershipsLevels\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"MembershipsLevelListResponse\"\n },\n - \ \"description\": \"Retrieves a list of all pricing levels offered - by a creator to the fans.\",\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"id\": \"youtube.membershipsLevels.list\",\n \"flatPath\": - \"youtube/v3/membershipsLevels\"\n }\n }\n },\n \"videos\": - {\n \"methods\": {\n \"reportAbuse\": {\n \"description\": - \"Report abuse for a video.\",\n \"parameterOrder\": [],\n \"id\": - \"youtube.videos.reportAbuse\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"getRating\": {\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/videos/getRating\",\n \"flatPath\": - \"youtube/v3/videos/getRating\",\n \"description\": \"Retrieves the - ratings that the authorized user gave to a list of specified videos.\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.videos.getRating\",\n - \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"rate\": {\n \"description\": \"Adds - a like or dislike rating to a video or removes a rating from a video.\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/videos/rate\",\n - \ \"parameters\": {\n \"rating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"required\": true,\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/videos/rate\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\",\n \"rating\"\n - \ ],\n \"id\": \"youtube.videos.rate\"\n },\n \"insert\": - {\n \"path\": \"youtube/v3/videos\",\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.videos.insert\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"supportsMediaUpload\": - true,\n \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"mediaUpload\": {\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"274877906944\",\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/videos\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ }\n }\n },\n \"response\": {\n - \ \"$ref\": \"Video\"\n },\n \"parameters\": {\n - \ \"part\": {\n \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"stabilize\": - {\n \"type\": \"boolean\",\n \"description\": \"Should - stabilize be applied to the upload.\",\n \"location\": \"query\"\n - \ },\n \"autoLevels\": {\n \"description\": - \"Should auto-levels be applied to the upload.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"notifySubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"default\": \"true\",\n \"description\": \"Notify - the channel subscribers about the new video. As default, the notification - is enabled.\"\n }\n },\n \"description\": \"Inserts - a new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"update\": {\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"description\": \"Updates - an existing resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.update\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Video\"\n - \ },\n \"path\": \"youtube/v3/videos\"\n },\n \"list\": - {\n \"path\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"chart\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - the most popular videos for the specified content region and video category.\"\n - \ ],\n \"description\": \"Return the videos that - are in the specified chart.\",\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"myRating\": - {\n \"location\": \"query\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"Return - videos liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n - \ \"maxWidth\": {\n \"maximum\": \"8192\",\n \"type\": - \"integer\",\n \"minimum\": \"72\",\n \"location\": - \"query\",\n \"description\": \"Return the player with maximum - height specified in\",\n \"format\": \"int32\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Return videos with the given ids.\"\n },\n \"videoCategoryId\": - {\n \"location\": \"query\",\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"default\": - \"0\",\n \"type\": \"string\"\n },\n \"locale\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"maxHeight\": {\n \"location\": - \"query\",\n \"format\": \"int32\",\n \"type\": - \"integer\",\n \"maximum\": \"8192\",\n \"minimum\": - \"72\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Stands - for \\\"host language\\\". Specifies the localization language of the metadata - to be filled into snippet.localized. The field is filled with the default - metadata if there is no localization in the specified language. The parameter - value must be a language code included in the list returned by the i18nLanguages.list - method (e.g. en_US, es_MX).\"\n },\n \"regionCode\": - {\n \"description\": \"Use a chart that is specific to the specified - region\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"description\": - \"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.\",\n \"minimum\": - \"1\",\n \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"default\": \"5\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\"\n }\n },\n \"flatPath\": - \"youtube/v3/videos\",\n \"response\": {\n \"$ref\": \"VideoListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.videos.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.videos.delete\",\n \"path\": \"youtube/v3/videos\",\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/videos\"\n - \ }\n }\n },\n \"liveStreams\": {\n \"methods\": {\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Return LiveStreams with the given - ids from Stubby or Apiary.\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true\n },\n \"mine\": {\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"maximum\": \"50\",\n - \ \"minimum\": \"0\",\n \"default\": \"5\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.liveStreams.list\",\n \"response\": {\n - \ \"$ref\": \"LiveStreamListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/liveStreams\",\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\"\n },\n - \ \"insert\": {\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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, content_details, and status.\",\n - \ \"repeated\": true,\n \"required\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": - \"youtube.liveStreams.insert\",\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"description\": \"Deletes an existing - stream for the authenticated user.\",\n \"id\": \"youtube.liveStreams.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.liveStreams.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/members\",\n - \ \"id\": \"youtube.members.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"description\": \"Retrieves - a list of members that match the request criteria for a channel.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"path\": \"youtube/v3/members\",\n \"parameters\": - {\n \"hasAccessToLevel\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Filter - members in the results set to the ones that have access to a level.\"\n },\n - \ \"filterByMemberChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Comma - separated list of channel IDs. Only data about members that are part of this - list will be included in the response.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"maximum\": - \"1000\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mode\": {\n \"enum\": - [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"location\": - \"query\",\n \"default\": \"all_current\",\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"type\": - \"string\"\n }\n }\n }\n }\n },\n \"playlists\": - {\n \"methods\": {\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"Playlist\"\n },\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlists.insert\"\n },\n - \ \"delete\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.playlists.delete\",\n \"description\": - \"Deletes a resource.\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"update\": {\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"id\": \"youtube.playlists.update\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"path\": \"youtube/v3/playlists\"\n },\n \"list\": - {\n \"flatPath\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"PlaylistListResponse\"\n },\n \"parameters\": {\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return content in specified language\"\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the playlists owned by the specified channel ID.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"mine\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the playlists owned by the authenticated user.\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.playlists.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"hl\": - {\n \"description\": \"Return content in specified language\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the ChannelSections owned by the authenticated - user.\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"description\": \"Return the ChannelSections owned by the - specified channel ID.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Return the ChannelSections with - the given IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n - \ \"repeated\": true\n }\n },\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"ChannelSectionListResponse\"\n }\n },\n \"insert\": - {\n \"path\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"id\": \"youtube.channelSections.insert\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ }\n },\n \"delete\": {\n \"path\": \"youtube/v3/channelSections\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.channelSections.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n }\n },\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"id\": \"youtube.channelSections.update\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": - true\n }\n }\n }\n }\n },\n \"abuseReports\": - {\n \"methods\": {\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/abuseReports\",\n \"path\": - \"youtube/v3/abuseReports\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"id\": - \"youtube.abuseReports.insert\",\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"request\": {\n \"$ref\": - \"AbuseReport\"\n }\n }\n }\n },\n \"liveBroadcasts\": - {\n \"methods\": {\n \"insertCuepoint\": {\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"id\": {\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"parameterOrder\": [],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"description\": \"Insert cuepoints in a broadcast\",\n \"path\": - \"youtube/v3/liveBroadcasts/cuepoint\",\n \"response\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"Cuepoint\"\n }\n },\n \"insert\": - {\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"description\": \"Inserts a new - stream for the authenticated user.\",\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n }\n },\n - \ \"transition\": {\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"description\": \"Transition a broadcast to a given status.\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/transition\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameterOrder\": [\n \"broadcastStatus\",\n - \ \"id\",\n \"part\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"required\": true,\n \"description\": - \"Broadcast to transition.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ },\n \"broadcastStatus\": {\n \"required\": - true,\n \"type\": \"string\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"description\": \"The status to - which the broadcast is going to transition.\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"delete\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Broadcast to delete.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"description\": \"Delete a given broadcast.\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.liveBroadcasts.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\"\n },\n \"update\": - {\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"description\": \"Updates an existing broadcast for the authenticated - user.\",\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"httpMethod\": \"PUT\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.update\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n }\n - \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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, status and statistics.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"broadcastStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"description\": \"Return broadcasts - with a certain status, e.g. active broadcasts.\",\n \"location\": - \"query\",\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"location\": \"query\",\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"default\": - \"5\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"broadcastType\": {\n \"default\": - \"event\",\n \"location\": \"query\",\n \"enum\": - [\n \"broadcastTypeFilterUnspecified\",\n \"all\",\n - \ \"event\",\n \"persistent\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return only scheduled event broadcasts.\",\n - \ \"Return only persistent broadcasts.\"\n ],\n - \ \"description\": \"Return only broadcasts with the selected - type.\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieve the list of broadcasts - associated with the given channel.\",\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\"\n },\n \"bind\": - {\n \"parameters\": {\n \"streamId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Stream to bind, if not set unbind the current one.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"required\": - true,\n \"description\": \"Broadcast to bind to the stream\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Bind a broadcast to a stream.\",\n - \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"liveChatBans\": {\n \"methods\": - {\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n }\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/bans\",\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatBans.delete\",\n \"description\": - \"Deletes a chat ban.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n }\n - \ }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"supportsMediaUpload\": true,\n \"parameterOrder\": - [],\n \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\",\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/channelBanners/insert\"\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n }\n },\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"description\": \"Unused, channel_id - is currently derived from the security context of the requestor.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/channelBanners/insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.channelBanners.insert\",\n - \ \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ }\n }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.videoCategories.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videoCategories\",\n \"response\": - {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"description\": - \"Returns the video categories with the given IDs for Stubby or Apiary.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"default\": \"en-US\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"tests\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.tests.insert\",\n \"description\": - \"POST method.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/tests\",\n - \ \"request\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"TestItem\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/tests\"\n }\n }\n - \ },\n \"search\": {\n \"methods\": {\n \"list\": {\n \"flatPath\": - \"youtube/v3/search\",\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"id\": \"youtube.search.list\",\n \"description\": - \"Retrieves a list of search resources\",\n \"path\": \"youtube/v3/search\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"videoDimension\": - {\n \"enumDescriptions\": [\n \"Include both 3D - and non-3D videos in returned results. This is the default value.\",\n \"Restrict - search results to exclude 3D videos.\",\n \"Restrict search - results to only include 3D videos.\"\n ],\n \"enum\": - [\n \"any\",\n \"2d\",\n \"3d\"\n - \ ],\n \"description\": \"Filter on 3d videos.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"videoEmbeddable\": {\n \"enum\": - [\n \"videoEmbeddableUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Filter - on embeddable videos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, embeddable or not.\",\n \"Only - retrieve embeddable videos.\"\n ]\n },\n \"safeSearch\": - {\n \"location\": \"query\",\n \"description\": - \"Indicates whether the search results should include restricted content as - well as standard content.\",\n \"type\": \"string\",\n \"default\": - \"moderate\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ]\n },\n \"type\": - {\n \"repeated\": true,\n \"description\": \"Restrict - results to a particular set of resource types from One Platform.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"forContentOwner\": {\n \"description\": - \"Search owned by a content owner.\",\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"channelType\": - {\n \"location\": \"query\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"description\": \"Add - a filter on the channel search.\",\n \"type\": \"string\"\n },\n - \ \"relevanceLanguage\": {\n \"description\": \"Return - results relevant to this language.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"videoLicense\": - {\n \"enumDescriptions\": [\n \"Return all videos, - regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Filter - on the license of the videos.\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ]\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"description\": \"Display - the content as seen by viewers in this country.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"format\": \"uint32\"\n - \ },\n \"order\": {\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Sort order of the results.\",\n \"default\": - \"relevance\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Filter on resources belonging - to this channelId.\",\n \"type\": \"string\"\n },\n - \ \"videoDuration\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"description\": \"Filter on the duration of the videos.\",\n - \ \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"location\": \"query\"\n - \ },\n \"q\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Textual - search terms to match.\"\n },\n \"videoType\": {\n \"type\": - \"string\",\n \"description\": \"Filter on videos of a specific - type.\",\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos.\",\n \"Only retrieve movies.\",\n - \ \"Only retrieve episodes of shows.\"\n ],\n \"location\": - \"query\"\n },\n \"locationRadius\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on distance from the location (specified above).\"\n },\n - \ \"location\": {\n \"description\": \"Filter on location - of the video\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"eventType\": {\n \"description\": - \"Filter on the livestream status of the videos.\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ]\n },\n \"topicId\": - {\n \"description\": \"Restrict results to a particular topic.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"forDeveloper\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\",\n \"location\": - \"query\"\n },\n \"videoSyndicated\": {\n \"description\": - \"Filter on syndicated videos.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ]\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"description\": \"Filter on resources - published after this date.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"publishedBefore\": {\n \"format\": - \"google-datetime\",\n \"type\": \"string\",\n \"description\": - \"Filter on resources published before this date.\",\n \"location\": - \"query\"\n },\n \"videoCaption\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"videoCaptionUnspecified\",\n \"any\",\n \"closedCaption\",\n - \ \"none\"\n ],\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ]\n },\n \"forMine\": {\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"relatedToVideoId\": - {\n \"location\": \"query\",\n \"description\": - \"Search related to a resource.\",\n \"type\": \"string\"\n },\n - \ \"videoDefinition\": {\n \"enumDescriptions\": [\n - \ \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"description\": \"Filter on the definition of the videos.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"videoCategoryId\": {\n \"location\": - \"query\",\n \"description\": \"Filter on videos in a specific - category.\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"description\": \"The *part* parameter - specifies the videoCategory resource parts that the API response will include. - Supported values are id and snippet.\",\n \"required\": true,\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"hl\": {\n - \ \"default\": \"en-US\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"path\": \"youtube/v3/i18nLanguages\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"default\": \"en_US\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - i18nLanguage resource properties that the API response will include. Set the - parameter value to snippet.\",\n \"location\": \"query\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"id\": - \"youtube.i18nLanguages.list\",\n \"response\": {\n \"$ref\": - \"I18nLanguageListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\"\n - \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"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.\"\n }\n },\n \"path\": - \"youtube/v3/commentThreads\",\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"parameterOrder\": - [],\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"id\": \"youtube.youtube.v3.updateCommentThreads\"\n - \ }\n }\n }\n }\n },\n \"watermarks\": - {\n \"methods\": {\n \"set\": {\n \"mediaUpload\": {\n - \ \"maxSize\": \"10485760\",\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ }\n }\n },\n \"description\": \"Allows - upload of watermark image and setting it for a channel.\",\n \"flatPath\": - \"youtube/v3/watermarks/set\",\n \"id\": \"youtube.watermarks.set\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"supportsMediaUpload\": - true,\n \"path\": \"youtube/v3/watermarks/set\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"InvideoBranding\"\n },\n \"parameterOrder\": - [\n \"channelId\"\n ]\n },\n \"unset\": - {\n \"path\": \"youtube/v3/watermarks/unset\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Allows removal of channel watermark.\",\n \"id\": - \"youtube.watermarks.unset\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"parameters\": {\n \"channelId\": {\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n }\n }\n }\n },\n \"captions\": - {\n \"methods\": {\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/captions\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.delete\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"description\": \"Deletes a resource.\"\n },\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\",\n - \ \"videoId\"\n ],\n \"response\": {\n \"$ref\": - \"CaptionListResponse\"\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"id\": \"youtube.captions.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ },\n \"videoId\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"Returns the captions for the specified video.\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is on behalf of.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"Returns - the captions with the given IDs for Stubby or Apiary.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"update\": {\n \"supportsMediaUpload\": true,\n - \ \"path\": \"youtube/v3/captions\",\n \"parameters\": {\n - \ \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n }\n - \ },\n \"httpMethod\": \"PUT\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/captions\",\n \"description\": - \"Updates an existing resource.\",\n \"id\": \"youtube.captions.update\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ },\n \"maxSize\": \"104857600\"\n },\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Caption\"\n }\n },\n \"download\": {\n \"supportsMediaDownload\": - true,\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions/{id}\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Downloads a caption track.\",\n - \ \"parameters\": {\n \"tlang\": {\n \"description\": - \"tlang is the language code; machine translate the captions into this language.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"tfmt\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Convert the captions into this format. Supported - options are sbv, srt, and vtt.\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is be on behalf of\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"The ID of the caption track to download, - required for One Platform.\",\n \"type\": \"string\",\n \"location\": - \"path\",\n \"required\": true\n }\n },\n - \ \"useMediaDownloadService\": true,\n \"id\": \"youtube.captions.download\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/captions/{id}\"\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new resource into this collection.\",\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"supportsMediaUpload\": true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n - \ \"resumable\": {\n \"multipart\": true,\n \"path\": - \"/resumable/upload/youtube/v3/captions\"\n }\n },\n - \ \"maxSize\": \"104857600\",\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ]\n - \ },\n \"flatPath\": \"youtube/v3/captions\",\n \"id\": - \"youtube.captions.insert\",\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the caption resource parts that the API response will include. Set the parameter - value to snippet.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"sync\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\"\n }\n }\n }\n }\n },\n \"thumbnails\": - {\n \"methods\": {\n \"set\": {\n \"mediaUpload\": {\n - \ \"maxSize\": \"2097152\",\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n }\n - \ },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"response\": {\n \"$ref\": - \"ThumbnailSetResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"description\": \"As - this is not an insert in a strict sense (it supports uploading/setting of - a thumbnail for multiple videos, which doesn't result in creation of a single - resource), I use a custom verb here.\",\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.thumbnails.set\",\n - \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"videoId\": {\n \"description\": \"Returns the Thumbnail - with the given video IDs for Stubby or Apiary.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/thumbnails/set\"\n - \ }\n }\n },\n \"activities\": {\n \"methods\": {\n - \ \"list\": {\n \"path\": \"youtube/v3/activities\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.activities.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/activities\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"parameters\": {\n \"maxResults\": {\n - \ \"minimum\": \"0\",\n \"default\": \"5\",\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"mine\": {\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"publishedBefore\": {\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"publishedAfter\": - {\n \"format\": \"google-datetime\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"home\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"parameters\": - {\n \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"minimum\": \"1\",\n - \ \"default\": \"5\"\n },\n \"hl\": {\n - \ \"description\": \"Return rendered funding amounts in specified - language.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - superChatEvent resource parts that the API response will include. This parameter - is currently not supported.\",\n \"required\": true\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/superChatEvents\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"id\": \"youtube.superChatEvents.list\"\n }\n - \ }\n },\n \"subscriptions\": {\n \"methods\": {\n \"delete\": - {\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"id\": \"youtube.subscriptions.delete\",\n \"description\": - \"Deletes a resource.\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"list\": {\n \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"path\": \"youtube/v3/subscriptions\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.subscriptions.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Return - the subscriptions with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"myRecentSubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"order\": {\n \"description\": \"The - order of the returned subscriptions\",\n \"location\": \"query\",\n - \ \"default\": \"relevance\",\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Flag for returning the subscriptions of the - authenticated user.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions of the given channel owner.\"\n },\n - \ \"mySubscribers\": {\n \"description\": \"Return - the subscribers of the given channel owner.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"forChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Return the subscriptions to - the subset of these channels that the authenticated user is subscribed to.\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"default\": \"5\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"format\": \"uint32\"\n },\n - \ \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"required\": true\n }\n - \ },\n \"request\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/subscriptions\",\n \"id\": - \"youtube.subscriptions.insert\",\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Subscription\"\n - \ }\n }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"insert\": {\n \"request\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.liveChatModerators.list\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"parameters\": {\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"default\": \"5\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"minimum\": \"0\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the liveChatModerator resource parts that the API - response will include. Supported values are id and snippet.\",\n \"required\": - true,\n \"repeated\": true\n },\n \"liveChatId\": - {\n \"required\": true,\n \"description\": \"The - id of the live chat for which moderators should be returned.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ }\n },\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveChatModerators.delete\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a chat moderator.\"\n }\n }\n },\n \"playlistItems\": {\n - \ \"methods\": {\n \"insert\": {\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"description\": \"Inserts a new - resource into this collection.\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"id\": - \"youtube.playlistItems.insert\"\n },\n \"update\": {\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"description\": - \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"id\": \"youtube.playlistItems.update\",\n \"path\": - \"youtube/v3/playlistItems\"\n },\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlistItems.delete\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"description\": \"Deletes a resource.\",\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.playlistItems.list\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the playlist items associated with the given video ID.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"maximum\": \"50\",\n \"location\": - \"query\"\n },\n \"playlistId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlist items within the given playlist.\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n }\n }\n - \ },\n \"channels\": {\n \"methods\": {\n \"list\": {\n \"path\": - \"youtube/v3/channels\",\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/channels\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"Return the channels with the specified - IDs.\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"categoryId\": - {\n \"description\": \"Return the channels within the specified - guide category ID.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the ids of channels owned by the authenticated user.\"\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"maximum\": \"50\"\n - \ },\n \"managedByMe\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Return the channels managed by the authenticated - user.\",\n \"location\": \"query\"\n },\n \"forUsername\": - {\n \"location\": \"query\",\n \"description\": - \"Return the channel associated with a YouTube username.\",\n \"type\": - \"string\"\n },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the channels subscribed to the authenticated user\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"id\": \"youtube.channels.list\"\n },\n \"update\": - {\n \"flatPath\": \"youtube/v3/channels\",\n \"request\": - {\n \"$ref\": \"Channel\"\n },\n \"httpMethod\": - \"PUT\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\"\n }\n },\n \"id\": \"youtube.channels.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"path\": - \"youtube/v3/channels\",\n \"response\": {\n \"$ref\": - \"Channel\"\n }\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - i18nRegion resource properties that the API response will include. Set the - parameter value to snippet.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"default\": \"en_US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.i18nRegions.list\",\n \"response\": {\n - \ \"$ref\": \"I18nRegionListResponse\"\n },\n \"flatPath\": - \"youtube/v3/i18nRegions\",\n \"httpMethod\": \"GET\"\n }\n - \ }\n },\n \"comments\": {\n \"methods\": {\n \"update\": - {\n \"description\": \"Updates an existing resource.\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\"\n }\n },\n - \ \"id\": \"youtube.comments.update\",\n \"request\": {\n - \ \"$ref\": \"Comment\"\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"Comment\"\n }\n },\n \"list\": - {\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.comments.list\",\n \"parameters\": - {\n \"maxResults\": {\n \"maximum\": \"100\",\n \"type\": - \"integer\",\n \"default\": \"20\",\n \"location\": - \"query\",\n \"minimum\": \"1\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"id\": {\n \"description\": \"Returns the comments - with the given IDs for One Platform.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"textFormat\": {\n \"type\": \"string\",\n - \ \"description\": \"The requested text format for the returned - comments.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"location\": \"query\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"default\": - \"html\"\n },\n \"parentId\": {\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more comment - resource properties that the API response will include.\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/comments\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/comments\"\n - \ },\n \"setModerationStatus\": {\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"banAuthor\": {\n \"type\": - \"boolean\",\n \"default\": \"false\",\n \"location\": - \"query\",\n \"description\": \"If set to true the author of - the comment gets added to the ban list. This means all future comments of - the author will autmomatically be rejected. Only valid in combination with - STATUS_REJECTED.\"\n },\n \"id\": {\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\",\n \"location\": \"query\"\n },\n - \ \"moderationStatus\": {\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\",\n \"description\": \"Specifies the requested moderation - status. Note, comments can be in statuses, which are not available through - this call. For example, this call does not allow to mark a comment as 'likely - spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"required\": true\n }\n - \ },\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"description\": \"Sets the moderation status of one or more comments.\",\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new resource into this collection.\",\n \"path\": \"youtube/v3/comments\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.comments.insert\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"request\": {\n - \ \"$ref\": \"Comment\"\n }\n },\n \"delete\": - {\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.comments.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/comments\",\n - \ \"flatPath\": \"youtube/v3/comments\"\n },\n \"markAsSpam\": - {\n \"path\": \"youtube/v3/comments/markAsSpam\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.comments.markAsSpam\",\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"id\": {\n \"description\": \"Flags the comments - with the given IDs as spam in the caller's opinion.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/comments/markAsSpam\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n }\n }\n }\n },\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"ownerDomain\": \"google.com\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"revision\": \"20230131\",\n \"servicePath\": \"\",\n \"schemas\": {\n - \ \"LiveBroadcastStatus\": {\n \"properties\": {\n \"recordingStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"description\": \"The broadcast's recording status.\",\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"The recording has not yet been started.\",\n \"The - recording is currently on.\",\n \"The recording is completed, and - cannot be started again.\"\n ]\n },\n \"privacyStatus\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The broadcast's privacy status. Note that the - broadcast represents exactly one YouTube video, so the privacy settings are - identical to those supported for videos. In addition, you can set this field - by modifying the broadcast resource or by setting the privacyStatus field - of the corresponding video resource.\"\n },\n \"lifeCycleStatus\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete - settings\",\n \"Visible only to partner, may need special UI treatment\",\n - \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n - \ \"The broadcast is finished.\",\n \"This broadcast - was removed by admin action\",\n \"Transition into TESTING has - been requested\",\n \"Transition into LIVE has been requested\"\n - \ ]\n },\n \"madeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the broadcast is made for kids or not, - decided by YouTube instead of the creator. This field is read only.\"\n },\n - \ \"liveBroadcastPriority\": {\n \"description\": \"Priority - of the live broadcast event (internal state).\",\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ]\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"description\": - \"This field will be set to True if the creator declares the broadcast to - be kids only: go/live-cw-work.\",\n \"type\": \"boolean\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveBroadcastStatus\",\n - \ \"description\": \"Live broadcast state.\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"author\": {\n \"description\": \"The author - of the social network post.\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ],\n \"description\": \"The name - of the social network.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"An image of the post's author.\"\n },\n \"referenceUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL of - the social network post.\"\n }\n },\n \"description\": \"Details - about a social network post.\",\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsSocial\"\n },\n \"PlaylistStatus\": {\n \"id\": - \"PlaylistStatus\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The playlist's - privacy status.\"\n }\n }\n },\n \"LocalizedString\": {\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ },\n \"language\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LocalizedString\"\n - \ },\n \"CommentThreadReplies\": {\n \"properties\": {\n \"comments\": - {\n \"description\": \"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.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Comment\"\n }\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"CommentThreadReplies\",\n - \ \"description\": \"Comments written in (direct or indirect) reply to - the top level comment.\"\n },\n \"VideoSuggestions\": {\n \"type\": - \"object\",\n \"properties\": {\n \"tagSuggestions\": {\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoSuggestionsTagSuggestion\"\n }\n },\n \"processingHints\": - {\n \"description\": \"A list of suggestions that may improve YouTube's - ability to process the video.\",\n \"type\": \"array\",\n \"items\": - {\n \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"processingWarnings\": - {\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ],\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ]\n },\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"type\": \"array\"\n },\n \"editorSuggestions\": - {\n \"description\": \"A list of video editing operations that might - improve the video quality or playback experience of the uploaded video.\",\n - \ \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n - \ \"enumDescriptions\": [\n \"Picture brightness levels - seem off and could be corrected.\",\n \"The video appears shaky - and could be stabilized.\",\n \"Margins (mattes) detected around - the picture could be cropped.\",\n \"The audio track appears - silent and could be swapped with a better quality one.\"\n ]\n - \ },\n \"type\": \"array\"\n },\n \"processingErrors\": - {\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n - \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n - \ \"unsupportedSpatialAudioLayout\"\n ],\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ]\n },\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\",\n \"type\": \"array\"\n }\n },\n \"description\": - \"Specifies suggestions on how to improve video content, including encoding - hints, tag suggestions, and editor suggestions.\",\n \"id\": \"VideoSuggestions\"\n - \ },\n \"I18nRegion\": {\n \"description\": \"A *i18nRegion* resource - identifies a region where YouTube is available.\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegion\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the i18n region.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the i18n region, such as region code and human-readable name.\",\n \"$ref\": - \"I18nRegionSnippet\"\n }\n },\n \"id\": \"I18nRegion\",\n - \ \"type\": \"object\"\n },\n \"ChannelStatus\": {\n \"type\": - \"object\",\n \"properties\": {\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"longUploadsStatus\": - {\n \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"description\": - \"Privacy status of the channel.\"\n },\n \"isLinked\": {\n - \ \"description\": \"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.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"description\": \"JSON template for the status part of a channel.\",\n - \ \"id\": \"ChannelStatus\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"properties\": {\n \"widthPixels\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\"\n },\n \"heightPixels\": - {\n \"format\": \"uint32\",\n \"description\": \"The encoded - video content's height in pixels.\",\n \"type\": \"integer\"\n },\n - \ \"codec\": {\n \"description\": \"The video codec that the - stream uses.\",\n \"type\": \"string\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n },\n \"frameRateFps\": {\n \"format\": - \"double\",\n \"type\": \"number\",\n \"description\": \"The - video stream's frame rate, in frames per second.\"\n },\n \"rotation\": - {\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The amount that YouTube needs to - rotate the original source content to properly display the video.\"\n },\n - \ \"bitrateBps\": {\n \"description\": \"The video stream's - bitrate, in bits per second.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"aspectRatio\": {\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\",\n \"format\": \"double\",\n - \ \"type\": \"number\"\n }\n },\n \"id\": \"VideoFileDetailsVideoStream\",\n - \ \"description\": \"Information about a video stream.\",\n \"type\": - \"object\"\n },\n \"PlaylistLocalization\": {\n \"type\": \"object\",\n - \ \"description\": \"Playlist localization setting\",\n \"id\": \"PlaylistLocalization\",\n - \ \"properties\": {\n \"description\": {\n \"description\": - \"The localized strings for playlist's description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for playlist's title.\"\n - \ }\n }\n },\n \"AbuseType\": {\n \"properties\": {\n - \ \"id\": {\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"AbuseType\"\n },\n \"SearchResult\": {\n - \ \"description\": \"A search result contains information about a YouTube - video, channel, or playlist that matches the search parameters specified in - an API request. While a search result points to a uniquely identifiable resource, - like a video, it does not have its own persistent data.\",\n \"id\": - \"SearchResult\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\",\n \"$ref\": \"SearchResultSnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#searchResult\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ },\n \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n }\n },\n \"type\": - \"object\"\n },\n \"CommentThreadListResponse\": {\n \"properties\": - {\n \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#commentThreadListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"CommentThread\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of comment threads that match - the request criteria.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": - \"CommentThreadListResponse\",\n \"type\": \"object\"\n },\n \"MonitorStreamInfo\": - {\n \"properties\": {\n \"broadcastStreamDelayMs\": {\n \"description\": - \"If you have set the enableMonitorStream property to true, then this property - determines the length of the live broadcast delay.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"HTML code that embeds a player that - plays the monitor stream.\"\n },\n \"enableMonitorStream\": - {\n \"description\": \"This value determines whether the monitor - stream is enabled for the broadcast. If the monitor stream is enabled, then - YouTube will broadcast the event content on a special stream intended only - for the broadcaster's consumption. The broadcaster can use the stream to review - the event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"boolean\"\n }\n },\n \"description\": - \"Settings and Info of the monitor stream\",\n \"id\": \"MonitorStreamInfo\",\n - \ \"type\": \"object\"\n },\n \"ChannelSection\": {\n \"id\": - \"ChannelSection\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"description\": \"Localizations - for different languages\",\n \"type\": \"object\"\n },\n \"kind\": - {\n \"default\": \"youtube#channelSection\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"targeting\": {\n \"$ref\": - \"ChannelSectionTargeting\",\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel section.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ }\n },\n \"Video\": {\n \"id\": \"Video\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"VideoSnippet\",\n \"description\": \"The snippet object contains - basic details about the video, such as its title, description, and category.\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains information about the video content, including - the length of the video and its aspect ratio.\",\n \"$ref\": \"VideoContentDetails\"\n - \ },\n \"topicDetails\": {\n \"description\": \"The - topicDetails object encapsulates information about Freebase topics associated - with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"VideoLocalization\"\n },\n \"description\": \"The localizations - object contains localized versions of the basic details about the video, such - as its title and description.\",\n \"type\": \"object\"\n },\n - \ \"statistics\": {\n \"$ref\": \"VideoStatistics\",\n \"description\": - \"The statistics object contains statistics about the video.\"\n },\n - \ \"liveStreamingDetails\": {\n \"description\": \"The liveStreamingDetails - object contains metadata about a live video broadcast. The object will only - be present in a video resource if the video is an upcoming, live, or completed - live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"projectDetails\": {\n - \ \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"fileDetails\": - {\n \"description\": \"The fileDetails object encapsulates information - about the video file that was uploaded to YouTube, including the file's resolution, - duration, audio and video codecs, stream bitrates, and more. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n - \ },\n \"suggestions\": {\n \"$ref\": \"VideoSuggestions\",\n - \ \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\"\n - \ },\n \"player\": {\n \"$ref\": \"VideoPlayer\",\n - \ \"description\": \"The player object contains information that you - would use to play the video in an embedded player.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.videos.update\"\n ]\n },\n \"type\": - \"string\"\n },\n \"recordingDetails\": {\n \"$ref\": - \"VideoRecordingDetails\",\n \"description\": \"The recordingDetails - object encapsulates information about the location, date and address where - the video was recorded.\"\n },\n \"processingDetails\": {\n - \ \"$ref\": \"VideoProcessingDetails\",\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#video\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#video\\\".\",\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"$ref\": \"VideoStatus\",\n - \ \"description\": \"The status object contains information about - the video's uploading, processing, and privacy statuses.\"\n },\n \"monetizationDetails\": - {\n \"description\": \"The monetizationDetails object encapsulates - information about the monetization status of the video.\",\n \"$ref\": - \"VideoMonetizationDetails\"\n },\n \"ageGating\": {\n \"description\": - \"Age restriction details related to a video. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoAgeGating\"\n }\n - \ },\n \"description\": \"A *video* resource represents a YouTube - video.\"\n },\n \"ChannelSectionTargeting\": {\n \"description\": - \"ChannelSection targeting setting.\",\n \"properties\": {\n \"languages\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The language the channel - section is targeting.\"\n },\n \"regions\": {\n \"type\": - \"array\",\n \"description\": \"The region the channel section is - targeting.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n },\n \"countries\": {\n \"type\": \"array\",\n - \ \"description\": \"The country the channel section is targeting.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"id\": \"ChannelSectionTargeting\",\n \"type\": \"object\"\n - \ },\n \"ChannelBannerResource\": {\n \"id\": \"ChannelBannerResource\",\n - \ \"description\": \"A channel banner returned as the response to a channel_banner.insert - call.\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#channelBannerResource\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelBannerResource\\\".\",\n \"type\": - \"string\"\n },\n \"url\": {\n \"description\": \"The - URL of this banner image.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"PlaylistSnippet\": {\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a playlist, including title, description and thumbnails.\",\n \"id\": - \"PlaylistSnippet\",\n \"properties\": {\n \"tags\": {\n \"description\": - \"Keyword tags associated with the playlist.\",\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the playlist's default title and description.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the playlist was created.\",\n - \ \"format\": \"date-time\"\n },\n \"description\": - {\n \"description\": \"The playlist's description.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel title of the channel that the video - belongs to.\"\n },\n \"thumbnailVideoId\": {\n \"type\": - \"string\",\n \"description\": \"Note: if the playlist has a custom - thumbnail, this field will not be populated. The video id selected by the - user that will be used as the thumbnail of this playlist. This field defaults - to the first publicly viewable video in the playlist, if: 1. The user has - never selected a video to be the thumbnail of the playlist. 2. The user selects - a video to be the thumbnail, and then removes that video from the playlist. - 3. The user selects a non-owned video to be the thumbnail, but that video - becomes private, or gets deleted.\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the playlist.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"description\": \"The playlist's title.\"\n }\n }\n - \ },\n \"MembershipsDurationAtLevel\": {\n \"properties\": {\n \"memberTotalDurationMonths\": - {\n \"format\": \"int32\",\n \"description\": \"The cumulative - time the user has been a member for the given level in complete months (the - time is rounded down to the nearest integer).\",\n \"type\": \"integer\"\n - \ },\n \"memberSince\": {\n \"description\": \"The date - and time when the user became a continuous member for the given level.\",\n - \ \"type\": \"string\"\n },\n \"level\": {\n \"type\": - \"string\",\n \"description\": \"Pricing level ID.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"MembershipsDurationAtLevel\"\n - \ },\n \"LocalizedProperty\": {\n \"type\": \"object\",\n \"properties\": - {\n \"localized\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LocalizedString\"\n }\n },\n \"default\": - {\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The - language of the default property.\"\n }\n },\n \"id\": \"LocalizedProperty\"\n - \ },\n \"VideoSnippet\": {\n \"description\": \"Basic details about - a video, including title, description, uploader, thumbnails and category.\",\n - \ \"properties\": {\n \"title\": {\n \"description\": - \"The video's title. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"tags\": {\n \"description\": - \"A list of keyword tags associated with the video. Tags may contain spaces.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that the video - was uploaded to.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the video belongs to.\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - video category associated with the video.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the videos's default snippet.\"\n },\n \"defaultAudioLanguage\": - {\n \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The video's description. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\",\n - \ \"$ref\": \"VideoLocalization\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n },\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\",\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ]\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the video was uploaded.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoSnippet\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamSnippet\": {\n \"id\": - \"LiveStreamSnippet\",\n \"properties\": {\n \"channelId\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is transmitting the stream.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"The stream's - description. The value cannot be longer than 10000 characters.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The stream's title. The value must be between - 1 and 128 characters long.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the stream was created.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LanguageTag\": {\n \"type\": \"object\",\n \"id\": - \"LanguageTag\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n }\n }\n },\n \"PlaylistListResponse\": {\n - \ \"type\": \"object\",\n \"id\": \"PlaylistListResponse\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of playlists that match the request criteria\",\n \"items\": - {\n \"$ref\": \"Playlist\"\n }\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"default\": \"youtube#playlistListResponse\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"CdnSettings\": {\n \"properties\": {\n \"format\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The format of - the video stream that you are sending to Youtube. \"\n },\n \"ingestionInfo\": - {\n \"$ref\": \"IngestionInfo\",\n \"description\": \"The - ingestionInfo object contains information that YouTube provides that you need - to transmit your RTMP or HTTP stream to YouTube.\"\n },\n \"ingestionType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"rtmp\",\n \"dash\",\n \"webrtc\",\n \"hls\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \" The method or protocol - used to transmit the video stream.\",\n \"type\": \"string\"\n },\n - \ \"resolution\": {\n \"description\": \"The resolution of - the inbound video data.\",\n \"enumDescriptions\": [\n \"\",\n + members, their current level, and when they became a member\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": + \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": + {\n \"description\": \"View and manage your assets and associated + content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": + {\n \"description\": \"View private information of your YouTube channel + relevant during the audit process with a YouTube partner\"\n }\n }\n + \ }\n },\n \"schemas\": {\n \"ContentRating\": {\n \"properties\": + {\n \"catvfrRating\": {\n \"enum\": [\n \"catvfrUnspecified\",\n + \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n + \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n + \ \"catvfrE\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"G\",\n \"8+\",\n \"13+\",\n + \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"cceRating\": + {\n \"description\": \"The video's rating from Portugal's Comiss\xE3o + de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enum\": [\n \"cceUnspecified\",\n + \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n + \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n + \ \"cceM14\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"4\",\n \"6\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\",\n \"14\"\n + \ ],\n \"type\": \"string\"\n },\n \"cscfRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"cscfUnspecified\",\n + \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n + \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n + \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"description\": + \"The video's rating from Luxembourg's Commission de surveillance de la classification + des films (CSCF).\",\n \"enumDescriptions\": [\n \"\",\n + \ \"AL\",\n \"A\",\n \"6\",\n \"9\",\n + \ \"12\",\n \"16\",\n \"18\",\n \"\"\n + \ ]\n },\n \"cbfcRating\": {\n \"description\": + \"The video's Central Board of Film Certification (CBFC - India) rating.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"U\",\n \"U/A\",\n \"U/A 7+\",\n \"U/A + 13+\",\n \"U/A 16+\",\n \"A\",\n \"S\",\n + \ \"\"\n ],\n \"enum\": [\n \"cbfcUnspecified\",\n + \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n + \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n + \ \"cbfcS\",\n \"cbfcUnrated\"\n ]\n },\n + \ \"oflcRating\": {\n \"enum\": [\n \"oflcUnspecified\",\n + \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n + \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n + \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n + \ \"oflcRp16\",\n \"oflcRp18\"\n ],\n \"description\": + \"The video's Office of Film and Literature Classification (OFLC - New Zealand) + rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n + \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n + \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n + \ ]\n },\n \"mdaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n + \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mdaUnspecified\",\n + \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n + \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n + \ \"mdaUnrated\"\n ],\n \"description\": \"The + video's rating from Singapore's Media Development Authority (MDA) and, specifically, + it's Board of Film Censors (BFC).\"\n },\n \"nfrcRating\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Bulgarian National Film Center.\",\n \"enum\": + [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n + \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n + \ ]\n },\n \"djctqRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"L\",\n + \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n + \ \"18\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o + e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enum\": [\n \"djctqUnspecified\",\n + \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n + \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n + \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n + \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n + \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n + \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n + \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n + \ \"djctq1618\",\n \"djctqUnrated\"\n ]\n },\n + \ \"rtcRating\": {\n \"enum\": [\n \"rtcUnspecified\",\n + \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n + \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n + \ ],\n \"description\": \"The video's General Directorate + of Radio, Television and Cinematography (Mexico) rating.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n + \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n + \ \"D\",\n \"\"\n ]\n },\n \"chfilmRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"0\",\n \"6\",\n \"12\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"enum\": [\n + \ \"chfilmUnspecified\",\n \"chfilm0\",\n \"chfilm6\",\n + \ \"chfilm12\",\n \"chfilm16\",\n \"chfilm18\",\n + \ \"chfilmUnrated\"\n ],\n \"description\": \"The + video's rating in Switzerland.\"\n },\n \"nbcplRating\": {\n + \ \"description\": \"The video's rating in Poland.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"240p\",\n \"360p\",\n - \ \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\",\n - \ \"2160p\",\n \"variable\"\n ]\n },\n - \ \"frameRate\": {\n \"description\": \"The frame rate of the - inbound video data.\",\n \"enum\": [\n \"30fps\",\n \"60fps\",\n - \ \"variable\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n }\n },\n \"id\": \"CdnSettings\",\n \"type\": - \"object\",\n \"description\": \"Brief description of the live stream - cdn settings.\"\n },\n \"LiveChatBanSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatBanSnippet\",\n \"properties\": {\n \"banDurationSeconds\": - {\n \"description\": \"The duration of a ban, only filled if the - ban has type TEMPORARY.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The chat this ban is pertinent to.\"\n },\n - \ \"type\": {\n \"description\": \"The type of ban.\",\n \"enum\": - [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"enumDescriptions\": [\n - \ \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"type\": \"string\"\n - \ },\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ }\n }\n },\n \"ContentRating\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"acbRating\": {\n \"enum\": [\n - \ \"acbUnspecified\",\n \"acbE\",\n \"acbP\",\n - \ \"acbC\",\n \"acbG\",\n \"acbPg\",\n \"acbM\",\n - \ \"acbMa15plus\",\n \"acbR18plus\",\n \"acbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. + \"string\",\n \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n + \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n + \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ]\n + \ },\n \"mccypRating\": {\n \"enum\": [\n \"mccypUnspecified\",\n + \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n + \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from the Danish Film Institute's + (Det Danske Filminstitut) Media Council for Children and Young People.\"\n + \ },\n \"agcomRating\": {\n \"description\": \"The video's + rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"agcomUnspecified\",\n + \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n + \ \"agcomUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n + \ \"\"\n ]\n },\n \"mtrcbRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n + \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Movie and Television Review and Classification + Board (Philippines).\",\n \"enum\": [\n \"mtrcbUnspecified\",\n + \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n + \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n + \ \"mtrcbUnrated\"\n ]\n },\n \"eefilmRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n + \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n + \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating in Estonia.\",\n \"enum\": [\n \"eefilmUnspecified\",\n + \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n + \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n + \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n + \ ]\n },\n \"cncRating\": {\n \"enum\": [\n + \ \"cncUnspecified\",\n \"cncT\",\n \"cnc10\",\n + \ \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n \"cncE\",\n + \ \"cncInterdiction\",\n \"cncUnrated\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"E\",\n \"interdiction\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"Rating system + in France - Commission de classification cinematographique\"\n },\n + \ \"moctwRating\": {\n \"enum\": [\n \"moctwUnspecified\",\n + \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n + \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n + \ \"moctwR15\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"G\",\n \"P\",\n \"PG\",\n + \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n + \ ],\n \"description\": \"The video's rating from Taiwan's + Ministry of Culture (\u6587\u5316\u90E8).\",\n \"type\": \"string\"\n + \ },\n \"nkclvRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"U\",\n \"7+\",\n \"12+\",\n + \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"nkclvUnspecified\",\n + \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n + \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Nacion\xE3lais + Kino centrs (National Film Centre of Latvia).\"\n },\n \"kmrbRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"kmrbUnspecified\",\n + \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n + \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n + \ ],\n \"description\": \"The video's Korea Media Rating + Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. The KMRB + rates videos in South Korea.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 \uC774\uC0C1 + \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n + \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n + \ \"\"\n ]\n },\n \"bfvcRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's rating from Thailand's + Board of Film and Video Censors.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"E\",\n \"13\",\n \"15\",\n + \ \"18\",\n \"20\",\n \"B\",\n \"\"\n + \ ],\n \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n + \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n + \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n + \ \"bfvcUnrated\"\n ]\n },\n \"mekuRating\": + {\n \"description\": \"The video's rating from Finland's Kansallinen + Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n \"type\": + \"string\",\n \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n + \ \"meku7\",\n \"meku12\",\n \"meku16\",\n + \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\"\n ]\n + \ },\n \"cccRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Todo espectador\",\n \"6+ - + Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n + \ \"18+ - contenido excesivamente violento\",\n \"18+ + - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"description\": + \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n + \ \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n + \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n + \ \"ccc18s\",\n \"cccUnrated\"\n ]\n },\n + \ \"chvrsRating\": {\n \"enum\": [\n \"chvrsUnspecified\",\n + \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n + \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n + \ \"chvrsUnrated\"\n ],\n \"description\": \"The + video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n + \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"nmcRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n + \ \"18+\",\n \"18TC\",\n \"\"\n ],\n + \ \"description\": \"The National Media Council ratings system for + United Arab Emirates.\",\n \"type\": \"string\",\n \"enum\": + [\n \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n + \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n + \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n + \ ]\n },\n \"mcstRating\": {\n \"enum\": [\n + \ \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n + \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n + \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"P\",\n + \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n + \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The video's + rating system for Vietnam - MCST\"\n },\n \"fcbmRating\": {\n + \ \"description\": \"The video's rating from Malaysia's Film Censorship + Board.\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n + \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"fcbmUnspecified\",\n + \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n + \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n + \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n + \ ]\n },\n \"icaaRating\": {\n \"description\": + \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales + (ICAA - Spain) rating.\",\n \"enum\": [\n \"icaaUnspecified\",\n + \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n + \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n + \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n + \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n + \ \"18\",\n \"X\",\n \"\"\n ]\n },\n + \ \"smaisRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n + \ \"smais12\",\n \"smais14\",\n \"smais16\",\n + \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"description\": + \"The video's rating in Iceland.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"L\",\n \"7\",\n \"12\",\n \"14\",\n + \ \"16\",\n \"18\",\n \"\"\n ]\n + \ },\n \"czfilmRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"U\",\n \"12\",\n \"14\",\n + \ \"18\",\n \"\"\n ],\n \"description\": + \"The video's rating in the Czech Republic.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n + \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n + \ \"czfilmUnrated\"\n ]\n },\n \"nbcRating\": + {\n \"description\": \"The video's rating from the Maldives National + Bureau of Classification.\",\n \"enum\": [\n \"nbcUnspecified\",\n + \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n + \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n + \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n + \ \"18+R\",\n \"PU\",\n \"\"\n ]\n + \ },\n \"acbRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"E\",\n \"Programs that have been + given a P classification by the Australian Communications and Media Authority. These programs are intended for preschool children.\",\n \"Programs that have been given a C classification by the Australian Communications and Media Authority. These programs are intended for children (other than preschool children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"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.\"\n },\n - \ \"bmukkRating\": {\n \"type\": \"string\",\n \"enum\": + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"acbUnspecified\",\n + \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n + \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n + \ \"acbR18plus\",\n \"acbUnrated\"\n ],\n \"description\": + \"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.\"\n },\n \"resorteviolenciaRating\": + {\n \"type\": \"string\",\n \"description\": \"The video's + rating in Venezuela.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A\",\n \"B\",\n \"C\",\n \"D\",\n + \ \"E\",\n \"\"\n ],\n \"enum\": [\n + \ \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n + \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n + \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n + \ ]\n },\n \"anatelRating\": {\n \"enum\": + [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n + \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n + \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"F\",\n + \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n + \ \"R\",\n \"A\",\n \"\"\n ],\n \"description\": + \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for + Chilean television.\",\n \"type\": \"string\"\n },\n \"smsaRating\": + {\n \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n + \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n + \ \"smsaUnrated\"\n ],\n \"description\": \"The + video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"All ages\",\n \"7\",\n \"11\",\n \"15\",\n + \ \"\"\n ]\n },\n \"bmukkRating\": {\n \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n \"bmukk6\",\n \ \"bmukk8\",\n \"bmukk10\",\n \"bmukk12\",\n \ \"bmukk14\",\n \"bmukk16\",\n \"bmukkUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Austrian Board of - Media Classification (Bundesministerium f\xFCr Unterricht, Kunst und Kultur).\"\n - \ },\n \"icaaRating\": {\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ]\n },\n \"mibacRating\": {\n \"enumDescriptions\": + \ ],\n \"description\": \"The video's rating from the Austrian + Board of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst + und Kultur).\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Unrestricted\",\n \"6+\",\n + \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n + \ \"16+\",\n \"\"\n ]\n },\n \"mibacRating\": + {\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n + \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n + \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n + \ \"mibacUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from the Ministero dei Beni + e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\",\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ]\n },\n - \ \"csaRating\": {\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, - which rates broadcast content.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"Interdiction\",\n \"\"\n ]\n - \ },\n \"smsaRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"enum\": [\n - \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Statens - medier\xE5d (Sweden's National Media Council).\"\n },\n \"nkclvRating\": - {\n \"description\": \"The video's rating from the Nacion\xE3lais - Kino centrs (National Film Centre of Latvia).\",\n \"enum\": [\n - \ \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n - \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n - \ \"nkclvUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"russiaRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n + \ \"\"\n ]\n },\n \"kijkwijzerRating\": {\n + \ \"type\": \"string\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n + \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n + \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n + \ \"kijkwijzerUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n + \ \"12\",\n \"16\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating + from the Nederlands Instituut voor de Classificatie van Audiovisuele Media + (Netherlands).\"\n },\n \"fpbRatingReasons\": {\n \"description\": + \"Reasons that explain why the video received its FPB (South Africa) rating.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"South + Africa rating content descriptors.\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n + \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n + \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n + \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n + \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n + \ ]\n }\n },\n \"ilfilmRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n + \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"enum\": [\n \"ilfilmUnspecified\",\n + \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n + \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n + \ ],\n \"description\": \"The video's rating in Israel.\"\n + \ },\n \"fskRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) + rating.\",\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n + \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n + \ \"fskUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK + 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n + \ ]\n },\n \"russiaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n + \ \"16+\",\n \"18+\",\n \"\"\n ],\n + \ \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n \ \"russia6\",\n \"russia12\",\n \"russia16\",\n \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"description\": \"The video's National Film Registry of the Russian Federation (MKRF - Russia) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"czfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in the Czech Republic.\",\n - \ \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n - \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n - \ \"czfilmUnrated\"\n ]\n },\n \"egfilmRating\": - {\n \"description\": \"The video's rating in Egypt.\",\n \"enum\": - [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n \"egfilm18\",\n - \ \"egfilmBn\",\n \"egfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"kfcbRating\": {\n \"enum\": [\n \"kfcbUnspecified\",\n - \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n - \ \"kfcbR\",\n \"kfcbUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Kenya - Film Classification Board.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GE\",\n \"PG\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"tvpgRating\": {\n \"description\": - \"The video's TV Parental Guidelines (TVPG) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"tvpgUnspecified\",\n \"tvpgY\",\n \"tvpgY7\",\n - \ \"tvpgY7Fv\",\n \"tvpgG\",\n \"tvpgPg\",\n - \ \"pg14\",\n \"tvpgMa\",\n \"tvpgUnrated\"\n - \ ]\n },\n \"fcbmRating\": {\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n - \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n - \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n - \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ]\n },\n - \ \"rteRating\": {\n \"enum\": [\n \"rteUnspecified\",\n - \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n - \ \"rteUnrated\"\n ],\n \"description\": \"The - video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ]\n },\n \"ilfilmRating\": {\n \"enum\": - [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n - \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Israel.\"\n },\n \"nmcRating\": {\n \"enum\": [\n - \ \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n - \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n - \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ]\n - \ },\n \"djctqRatingReasons\": {\n \"type\": \"array\",\n - \ \"description\": \"Reasons that explain why the video received its - DJCQT (Brazil) rating.\",\n \"items\": {\n \"enumDescriptions\": + rating.\",\n \"type\": \"string\"\n },\n \"incaaRating\": + {\n \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n + \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n + \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"ATP + (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 + a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n + \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X + (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n + \ \"\"\n ],\n \"description\": \"The video's INCAA + (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.\"\n + \ },\n \"mpaaRating\": {\n \"enum\": [\n \"mpaaUnspecified\",\n + \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n + \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n + \ \"mpaaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n + \ ],\n \"description\": \"The video's Motion Picture Association + of America (MPAA) rating.\",\n \"type\": \"string\"\n },\n + \ \"tvpgRating\": {\n \"enum\": [\n \"tvpgUnspecified\",\n + \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n + \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n + \ \"tvpgUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n + \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n + \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n + \ ],\n \"description\": \"The video's TV Parental Guidelines + (TVPG) rating.\"\n },\n \"csaRating\": {\n \"description\": + \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, + which rates broadcast content.\",\n \"type\": \"string\",\n \"enum\": + [\n \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n + \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n + \ \"csaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"Interdiction\",\n + \ \"\"\n ]\n },\n \"mpaatRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"GB\",\n \"RB\"\n ],\n + \ \"description\": \"The rating system for trailer, DVD, and Ad in + the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n + \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n + \ \"mpaatRb\"\n ],\n \"type\": \"string\"\n },\n + \ \"ifcoRating\": {\n \"enum\": [\n \"ifcoUnspecified\",\n + \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n + \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n + \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n + \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"description\": + \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See + the IFCO website for more information.\"\n },\n \"djctqRatingReasons\": + {\n \"description\": \"Reasons that explain why the video received + its DJCQT (Brazil) rating.\",\n \"items\": {\n \"enumDescriptions\": [\n \"\",\n \"Brazil rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual @@ -9492,2565 +6734,2824 @@ interactions: (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ],\n \"enum\": [\n - \ \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ],\n \"type\": - \"string\"\n }\n },\n \"ifcoRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's Irish Film Classification - Office (IFCO - Ireland) rating. See the IFCO website for more information.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n - \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n - \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n - \ \"ifco18\",\n \"ifcoUnrated\"\n ]\n },\n - \ \"ytRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"ytUnspecified\",\n - \ \"ytAgeRestricted\"\n ],\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"type\": - \"string\"\n },\n \"cbfcRating\": {\n \"enum\": [\n - \ \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\"\n - \ },\n \"fskRating\": {\n \"enum\": [\n \"fskUnspecified\",\n - \ \"fsk0\",\n \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n - \ \"fsk18\",\n \"fskUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle - der Filmwirtschaft (FSK - Germany) rating.\",\n \"type\": \"string\"\n - \ },\n \"skfilmRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Slovakia.\",\n - \ \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n - \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n - \ \"skfilmUnrated\"\n ]\n },\n \"rtcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n - \ \"D\",\n \"\"\n ],\n \"enum\": [\n - \ \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's General Directorate of Radio, Television - and Cinematography (Mexico) rating.\"\n },\n \"mocRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ],\n \"description\": \"The video's Ministerio de Cultura - (Colombia) rating.\",\n \"enum\": [\n \"mocUnspecified\",\n - \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n - \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"kmrbRating\": {\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ]\n },\n \"anatelRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's Anatel (Asociaci\xF3n - Nacional de Televisi\xF3n) rating for Chilean television.\",\n \"enum\": - [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ]\n },\n - \ \"nbcRating\": {\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Maldives National Bureau of Classification.\",\n \"type\": - \"string\"\n },\n \"eefilmRating\": {\n \"enum\": [\n - \ \"eefilmUnspecified\",\n \"eefilmPere\",\n \"eefilmL\",\n - \ \"eefilmMs6\",\n \"eefilmK6\",\n \"eefilmMs12\",\n - \ \"eefilmK12\",\n \"eefilmK14\",\n \"eefilmK16\",\n - \ \"eefilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n - \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n - \ \"K-16\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in Estonia.\"\n - \ },\n \"pefilmRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Peru.\",\n \"enum\": - [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n + Impactante (Impacting content)\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"djctqRatingReasonUnspecified\",\n + \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n + \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n + \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n + \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n + \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n + \ ]\n },\n \"type\": \"array\"\n },\n \"catvRating\": + {\n \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n + \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n + \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n + \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n + \ \"catvE\"\n ]\n },\n \"ecbmctRating\": + {\n \"enum\": [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n + \ \"ecbmct7a\",\n \"ecbmct7plus\",\n \"ecbmct13a\",\n + \ \"ecbmct13plus\",\n \"ecbmct15a\",\n \"ecbmct15plus\",\n + \ \"ecbmct18plus\",\n \"ecbmctUnrated\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"7A\",\n \"7+\",\n \"13A\",\n + \ \"13+\",\n \"15A\",\n \"15+\",\n \"18+\",\n + \ \"\"\n ],\n \"description\": \"Rating system + in Turkey - Evaluation and Classification Board of the Ministry of Culture + and Tourism\"\n },\n \"fmocRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n + \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n + \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n + \ ],\n \"description\": \"This property has been deprecated. + Use the contentDetails.contentRating.cncRating instead.\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"\"\n + \ ]\n },\n \"eirinRating\": {\n \"description\": + \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n + \ \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n + \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n + \ \"eirinUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n + \ \"R18+\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"pefilmRating\": {\n \"enum\": [\n + \ \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n \ ],\n \"enumDescriptions\": [\n \"\",\n \"PT\",\n \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n - \ ]\n },\n \"agcomRating\": {\n \"enum\": [\n - \ \"agcomUnspecified\",\n \"agcomT\",\n \"agcomVm14\",\n - \ \"agcomVm18\",\n \"agcomUnrated\"\n ],\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\",\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"menaMpaaRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To - keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\",\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"cceRating\": {\n \"enum\": - [\n \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n - \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n - \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Portugal's - Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ]\n },\n \"mccypRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ],\n \"description\": \"The - video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ]\n },\n \"cccRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Todo - espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n - \ \"14+\",\n \"18+\",\n \"18+ - contenido - excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\"\n - \ },\n \"nbcplRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Poland.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ]\n },\n \"cncRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Rating system - in France - Commission de classification cinematographique\",\n \"enum\": - [\n \"cncUnspecified\",\n \"cncT\",\n \"cnc10\",\n - \ \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n \"cncE\",\n - \ \"cncInterdiction\",\n \"cncUnrated\"\n ]\n - \ },\n \"mcstRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - system for Vietnam - MCST\",\n \"type\": \"string\",\n \"enum\": - [\n \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ]\n },\n \"chvrsRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ],\n \"enum\": [\n \"chvrsUnspecified\",\n \"chvrsG\",\n - \ \"chvrsPg\",\n \"chvrs14a\",\n \"chvrs18a\",\n - \ \"chvrsR\",\n \"chvrsE\",\n \"chvrsUnrated\"\n \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\"\n },\n - \ \"fpbRatingReasons\": {\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"South Africa rating content descriptors.\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"description\": - \"Reasons that explain why the video received its FPB (South Africa) rating.\",\n - \ \"type\": \"array\"\n },\n \"smaisRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\",\n - \ \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"mdaRating\": - {\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Singapore's - Media Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ]\n },\n \"incaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"enum\": [\n - \ \"incaaUnspecified\",\n \"incaaAtp\",\n \"incaaSam13\",\n - \ \"incaaSam16\",\n \"incaaSam18\",\n \"incaaC\",\n - \ \"incaaUnrated\"\n ],\n \"description\": \"The - video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\",\n \"type\": \"string\"\n },\n \"fpbRating\": - {\n \"description\": \"The video's rating from South Africa's Film - and Publication Board.\",\n \"type\": \"string\",\n \"enum\": - [\n \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n + \"The video's rating in Peru.\"\n },\n \"fpbRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n + \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n + \ \"\",\n \"10\"\n ],\n \"enum\": [\n + \ \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ]\n },\n \"cicfRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ ],\n \"description\": \"The video's rating from South Africa's + Film and Publication Board.\"\n },\n \"mocRating\": {\n \"description\": + \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"E\",\n + \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n + \ ],\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n + \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n + \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n + \ \"mocUnrated\"\n ]\n },\n \"bbfcRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"R18\",\n \"\"\n ],\n + \ \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n + \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n + \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n + \ \"bbfcUnrated\"\n ],\n \"description\": \"The + video's British Board of Film Classification (BBFC) rating.\",\n \"type\": + \"string\"\n },\n \"cicfRating\": {\n \"enum\": [\n + \ \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n + \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"description\": + \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \ \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n - \ ],\n \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n - \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Commission - de Contr\xF4le des Films (Belgium).\"\n },\n \"chfilmRating\": - {\n \"description\": \"The video's rating in Switzerland.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ]\n },\n \"grfilmRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating in Greece.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n - \ \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n - \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n - \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n - \ \"grfilmUnrated\"\n ]\n },\n \"eirinRating\": - {\n \"description\": \"The video's Eirin (\u6620\u502B) rating. Eirin - is the Japanese rating system.\",\n \"type\": \"string\",\n \"enum\": - [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n + \ ]\n },\n \"menaMpaaRating\": {\n \"enum\": + [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n + \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ]\n },\n \"medietilsynetRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n - \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Medietilsynet, the Norwegian Media Authority.\",\n - \ \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"bbfcRating\": {\n \"enum\": - [\n \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ],\n \"description\": \"The video's British Board of Film - Classification (BBFC) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ]\n },\n \"cscfRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\",\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ]\n },\n - \ \"moctwRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P\",\n \"PG\",\n \"R\",\n - \ \"\",\n \"R-12\",\n \"R-15\"\n ],\n - \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\"\n - \ },\n \"nfvcbRating\": {\n \"description\": \"The video's - rating from Nigeria's National Film and Video Censors Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"enum\": [\n \"nfvcbUnspecified\",\n + \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To + keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n + \ \"description\": \"The rating system for MENA countries, a clone + of MPAA. It is needed to prevent titles go live w/o additional QC check, since + some of them can be inappropriate for the countries at all. See b/33408548 + for more details.\",\n \"type\": \"string\"\n },\n \"nfvcbRating\": + {\n \"description\": \"The video's rating from Nigeria's National + Film and Video Censors Board.\",\n \"enum\": [\n \"nfvcbUnspecified\",\n \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"cnaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n + \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n + \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"cnaRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n + \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n \ \"cnaUnrated\"\n ],\n \"description\": \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n - \ \"type\": \"string\"\n },\n \"mtrcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ],\n \"description\": \"The - video's rating from the Movie and Television Review and Classification Board - (Philippines).\"\n },\n \"bfvcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Thailand's Board of Film and Video Censors.\",\n \"enum\": [\n - \ \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"mpaaRating\": - {\n \"description\": \"The video's Motion Picture Association of - America (MPAA) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"NC-17\",\n \"! X\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"mpaaUnspecified\",\n - \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n - \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n - \ \"mpaaUnrated\"\n ]\n },\n \"nfrcRating\": - {\n \"description\": \"The video's rating from the Bulgarian National - Film Center.\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n - \ \"\"\n ],\n \"enum\": [\n \"nfrcUnspecified\",\n - \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n - \ \"nfrcX\",\n \"nfrcUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"kijkwijzerRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n \"kijkwijzer6\",\n - \ \"kijkwijzer9\",\n \"kijkwijzer12\",\n \"kijkwijzer16\",\n - \ \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n ],\n - \ \"description\": \"The video's NICAM/Kijkwijzer rating from the - Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\"\n - \ },\n \"ecbmctRating\": {\n \"description\": \"Rating - system in Turkey - Evaluation and Classification Board of the Ministry of - Culture and Tourism\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"lsfRating\": - {\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n + \ \"enumDescriptions\": [\n \"\",\n \"AP\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n + \ \"\"\n ]\n },\n \"medietilsynetRating\": + {\n \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n + \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n + \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n + \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from Medietilsynet, the Norwegian Media Authority.\"\n + \ },\n \"kfcbRating\": {\n \"description\": \"The video's + rating from the Kenya Film Classification Board.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"GE\",\n + \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n + \ ],\n \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n + \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n + \ \"kfcbUnrated\"\n ]\n },\n \"fcoRating\": + {\n \"description\": \"The video's rating from Hong Kong's Office + for Film, Newspaper and Article Administration.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"I\",\n + \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n + \ \"\"\n ],\n \"enum\": [\n \"fcoUnspecified\",\n + \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n + \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n + \ ]\n },\n \"lsfRating\": {\n \"description\": + \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"enumDescriptions\": + [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n + \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n + \ \"21\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Indonesia's - Lembaga Sensor Film.\",\n \"type\": \"string\"\n },\n \"mekuRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ],\n \"description\": \"The video's rating from Finland's - Kansallinen Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"rcnofRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Hungarian - Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\",\n - \ \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"mccaaRating\": - {\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n - \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n - \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n - \ \"mccaa18\",\n \"mccaaUnrated\"\n ],\n \"enumDescriptions\": + \ ]\n },\n \"ytRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n + \ \"description\": \"A rating that YouTube uses to identify age-restricted + content.\",\n \"type\": \"string\"\n },\n \"skfilmRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"P2\",\n \"P5\",\n \"P8\",\n + \ \"\"\n ],\n \"enum\": [\n \"skfilmUnspecified\",\n + \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n + \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"description\": + \"The video's rating in Slovakia.\"\n },\n \"grfilmRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n + \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n + \ ],\n \"enum\": [\n \"grfilmUnspecified\",\n + \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n + \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n + \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n + \ \"description\": \"The video's rating in Greece.\"\n },\n + \ \"mccaaRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n + \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n + \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n + \ \"mccaaUnrated\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n \ \"12\",\n \"14 - this rating was removed from the new classification structure introduced in 2013.\",\n \"15\",\n \"16 - this rating was removed from the new classification structure introduced in 2013.\",\n \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"type\": - \"string\"\n },\n \"fcoRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"I\",\n - \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Hong Kong's Office for Film, Newspaper and Article Administration.\",\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ]\n },\n - \ \"mpaatRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"description\": \"The rating - system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n - \ },\n \"fmocRating\": {\n \"description\": \"This property - has been deprecated. Use the contentDetails.contentRating.cncRating instead.\",\n - \ \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ]\n },\n \"resorteviolenciaRating\": {\n \"description\": - \"The video's rating in Venezuela.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ],\n \"enum\": - [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"djctqRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"L\",\n \"10\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n + \"The video's rating from Malta's Film Age-Classification Board.\"\n },\n + \ \"egfilmRating\": {\n \"description\": \"The video's rating + in Egypt.\",\n \"enum\": [\n \"egfilmUnspecified\",\n + \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n + \ \"egfilmUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"GN\",\n + \ \"18\",\n \"BN\",\n \"\"\n ]\n + \ },\n \"rcnofRating\": {\n \"enumDescriptions\": [\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n - \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n - \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n - \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n - \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n - \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n - \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n - \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n - \ ],\n \"description\": \"The video's Departamento de Justi\xE7a, - Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\"\n - \ },\n \"catvfrRating\": {\n \"description\": \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ],\n \"type\": \"string\"\n },\n - \ \"catvRating\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ]\n },\n - \ \"oflcRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n - \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n - \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n - \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ],\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\"\n }\n },\n \"id\": \"ContentRating\",\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\"\n },\n \"VideoAgeGating\": {\n \"type\": - \"object\",\n \"id\": \"VideoAgeGating\",\n \"properties\": {\n - \ \"restricted\": {\n \"description\": \"Age-restricted trailers. - For redband trailers and adult-rated video-games. Only users aged 18+ can - view the content. The the field is true the content is restricted to viewers - aged 18+. Otherwise The field won't be present.\",\n \"type\": \"boolean\"\n - \ },\n \"alcoholContent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether or not the video has alcoholic - beverage content. Only users of legal purchasing age in a particular country, - as identified by ICAP, can view the content.\"\n },\n \"videoGameRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"Video game rating, if any.\",\n \"type\": \"string\",\n \"enum\": - [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ]\n }\n }\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level at which the viever is a member. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"memberMonth\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the member to this Member Milestone Chat. This field is empty for - messages without a comment from the member.\"\n }\n },\n \"id\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"Thumbnail\": {\n \"properties\": - {\n \"height\": {\n \"description\": \"(Optional) Height of - the thumbnail image.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"url\": {\n \"description\": \"The - thumbnail image's URL.\",\n \"type\": \"string\"\n },\n \"width\": - {\n \"type\": \"integer\",\n \"description\": \"(Optional) - Width of the thumbnail image.\",\n \"format\": \"uint32\"\n }\n - \ },\n \"description\": \"A thumbnail is an image representing a - YouTube resource.\",\n \"type\": \"object\",\n \"id\": \"Thumbnail\"\n - \ },\n \"Activity\": {\n \"description\": \"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.\",\n \"id\": - \"Activity\",\n \"type\": \"object\",\n \"properties\": {\n \"contentDetails\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetails\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the activity, including the activity's type and group - ID.\",\n \"$ref\": \"ActivitySnippet\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the activity.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#activity\"\n - \ }\n }\n },\n \"I18nLanguageSnippet\": {\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\",\n \"type\": \"object\",\n \"properties\": {\n \"name\": - {\n \"type\": \"string\",\n \"description\": \"The human-readable - name of the language in the language itself.\"\n },\n \"hl\": - {\n \"description\": \"A short BCP-47 code that uniquely identifies - a language.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"I18nLanguageSnippet\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"banType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"permanent\",\n \"temporary\"\n ],\n \"type\": - \"string\",\n \"description\": \"The type of ban.\"\n },\n - \ \"bannedUserDetails\": {\n \"description\": \"The details - of the user that was banned.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banDurationSeconds\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The duration - of the ban. This property is only present if the banType is temporary.\"\n - \ }\n }\n },\n \"VideoAbuseReportSecondaryReason\": {\n \"properties\": - {\n \"label\": {\n \"description\": \"The localized label - for this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The ID of this - abuse report secondary reason.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"type\": - \"object\"\n },\n \"ChannelTopicDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelTopicDetails\",\n \"properties\": {\n \"topicCategories\": - {\n \"description\": \"A list of Wikipedia URLs that describe the - channel's content.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicIds\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of Freebase - topic IDs associated with the channel. You can retrieve information about - each topic using the Freebase Topic API.\"\n }\n },\n \"description\": - \"Freebase topic information related to the channel.\"\n },\n \"GeoPoint\": - {\n \"properties\": {\n \"latitude\": {\n \"description\": - \"Latitude in degrees.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n },\n \"altitude\": {\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\",\n \"type\": - \"number\",\n \"format\": \"double\"\n },\n \"longitude\": - {\n \"format\": \"double\",\n \"description\": \"Longitude - in degrees.\",\n \"type\": \"number\"\n }\n },\n \"description\": - \"Geographical coordinates of a point, in WGS84.\",\n \"type\": \"object\",\n - \ \"id\": \"GeoPoint\"\n },\n \"LiveChatModeratorSnippet\": {\n - \ \"id\": \"LiveChatModeratorSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"moderatorDetails\": {\n \"description\": - \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"liveChatId\": {\n \"description\": \"The ID - of the live chat this moderator can act on.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"MemberListResponse\": {\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of members - that match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Member\"\n }\n },\n \"eventId\": + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from the Hungarian + Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"rcnofUnspecified\",\n + \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n + \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n + \ \"rcnofUnrated\"\n ]\n },\n \"rteRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"rteUnspecified\",\n + \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n + \ \"rteUnrated\"\n ],\n \"description\": \"The + video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": + [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n + \ \"MA\",\n \"\"\n ]\n }\n },\n + \ \"type\": \"object\",\n \"description\": \"Ratings schemes. The + country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n + \ \"id\": \"ContentRating\"\n },\n \"ChannelSectionContentDetails\": + {\n \"properties\": {\n \"channels\": {\n \"description\": + \"The channel ids for type multiple_channels.\",\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n },\n + \ \"playlists\": {\n \"type\": \"array\",\n \"description\": + \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, + only one playlistId is allowed.\",\n \"items\": {\n \"type\": + \"string\"\n }\n }\n },\n \"type\": \"object\",\n + \ \"description\": \"Details about a channelsection, including playlists + and channels.\",\n \"id\": \"ChannelSectionContentDetails\"\n },\n + \ \"LiveBroadcastListResponse\": {\n \"type\": \"object\",\n \"id\": + \"LiveBroadcastListResponse\",\n \"properties\": {\n \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"description\": + this response.\",\n \"type\": \"string\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"MemberListResponse\"\n },\n - \ \"ChannelConversionPing\": {\n \"type\": \"object\",\n \"properties\": - {\n \"context\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ],\n \"description\": \"Defines - the context of the ping.\"\n },\n \"conversionUrl\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"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.\",\n \"id\": \"ChannelConversionPing\"\n },\n \"VideoCategoryListResponse\": - {\n \"id\": \"VideoCategoryListResponse\",\n \"properties\": {\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoCategoryListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"A list of video - categories that can be associated with YouTube videos. In this map, the video - category ID is the map key, and its value is the corresponding videoCategory - resource.\",\n \"items\": {\n \"$ref\": \"VideoCategory\"\n - \ },\n \"type\": \"array\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"prevPageToken\": {\n \"description\": + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"type\": + \"array\",\n \"description\": \"A list of broadcasts that match the + request criteria.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveBroadcastListResponse\",\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"type\": \"object\"\n },\n \"ImageSettings\": - {\n \"properties\": {\n \"bannerTvMediumImageUrl\": {\n \"description\": - \"Banner image. TV size medium resolution (1280x720).\",\n \"type\": - \"string\"\n },\n \"bannerTvHighImageUrl\": {\n \"description\": - \"Banner image. TV size high resolution (1920x1080).\",\n \"type\": - \"string\"\n },\n \"largeBrandedBannerImageImapScript\": {\n - \ \"$ref\": \"LocalizedProperty\",\n \"description\": \"The - image map script for the large banner image.\"\n },\n \"bannerTvImageUrl\": - {\n \"description\": \"Banner image. TV size extra high resolution - (2120x1192).\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"bannerMobileHdImageUrl\": + the next page in the result set.\"\n }\n }\n },\n \"Channel\": + {\n \"properties\": {\n \"conversionPings\": {\n \"description\": + \"The conversionPings object encapsulates information about conversion pings + that need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object encapsulates information about the channel's content.\",\n + \ \"$ref\": \"ChannelContentDetails\"\n },\n \"statistics\": + {\n \"description\": \"The statistics object encapsulates statistics + for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n },\n + \ \"brandingSettings\": {\n \"description\": \"The brandingSettings + object encapsulates information about the branding of the channel.\",\n \"$ref\": + \"ChannelBrandingSettings\"\n },\n \"contentOwnerDetails\": + {\n \"description\": \"The contentOwnerDetails object encapsulates + channel data that is relevant for YouTube Partners linked with the channel.\",\n + \ \"$ref\": \"ChannelContentOwnerDetails\"\n },\n \"topicDetails\": + {\n \"description\": \"The topicDetails object encapsulates information + about Freebase topics associated with the channel.\",\n \"$ref\": + \"ChannelTopicDetails\"\n },\n \"snippet\": {\n \"$ref\": + \"ChannelSnippet\",\n \"description\": \"The snippet object contains + basic details about the channel, such as its title, description, and thumbnail + images.\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#channel\\\".\",\n \"type\": \"string\",\n + \ \"default\": \"youtube#channel\"\n },\n \"auditDetails\": + {\n \"$ref\": \"ChannelAuditDetails\",\n \"description\": + \"The auditionDetails object encapsulates channel data that is relevant for + YouTube Partners during the audition process.\"\n },\n \"localizations\": + {\n \"description\": \"Localizations for different languages\",\n + \ \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n + \ },\n \"type\": \"object\"\n },\n \"status\": + {\n \"$ref\": \"ChannelStatus\",\n \"description\": \"The + status object encapsulates information about the privacy status of the channel.\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel.\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"A *channel* + resource contains information about a YouTube channel.\",\n \"id\": \"Channel\"\n + \ },\n \"VideoRating\": {\n \"properties\": {\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the video.\"\n },\n \"rating\": + {\n \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"description\": \"Rating of + a video.\"\n }\n },\n \"description\": \"Basic details about + rating of a video.\",\n \"id\": \"VideoRating\",\n \"type\": \"object\"\n + \ },\n \"ChannelSectionListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"ChannelSectionListResponse\",\n \"properties\": {\n \"kind\": + {\n \"default\": \"youtube#channelSectionListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"description\": \"A list of ChannelSections that match the request + criteria.\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n + \ },\n \"type\": \"array\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n }\n }\n },\n \"ImageSettings\": + {\n \"id\": \"ImageSettings\",\n \"description\": \"Branding properties + for images associated with the channel.\",\n \"properties\": {\n \"bannerMobileExtraHdImageUrl\": {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": + (1440x395).\",\n \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": + {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n + \ \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": + {\n \"description\": \"Banner image. Mobile size (640x175).\",\n + \ \"type\": \"string\"\n },\n \"bannerTabletLowImageUrl\": {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size low resolution (320x88).\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"backgroundImageUrl\": - {\n \"description\": \"The URL for the background image shown on - the video watch page. The image should be 1200px by 615px, with a maximum - file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerMobileImageUrl\": {\n \"description\": \"Banner image. - Mobile size (640x175).\",\n \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"largeBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 854px - by 70px image that appears below the video player in the expanded video view - of the video watch page.\"\n },\n \"bannerTabletExtraHdImageUrl\": + Tablet size low resolution (1138x188).\"\n },\n \"smallBrandedBannerImageImapScript\": + {\n \"description\": \"The image map script for the small banner + image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTabletHdImageUrl\": + {\n \"description\": \"Banner image. Tablet size high resolution + (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": + {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n + \ \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": + {\n \"description\": \"Banner image. Tablet size extra high resolution + (2560x424).\",\n \"type\": \"string\"\n },\n \"bannerMobileHdImageUrl\": {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"bannerTabletImageUrl\": - {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n - \ \"type\": \"string\"\n },\n \"trackingImageUrl\": + Mobile size high resolution (1280x360).\"\n },\n \"watchIconImageUrl\": + {\n \"type\": \"string\"\n },\n \"trackingImageUrl\": {\n \"description\": \"The URL for a 1px by 1px tracking pixel that can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": + \ \"type\": \"string\"\n },\n \"bannerTabletImageUrl\": {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"smallBrandedBannerImageUrl\": + Tablet size (1707x283).\"\n },\n \"largeBrandedBannerImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"bannerTvLowImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. TV size low resolution (854x480).\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerImageUrl\": - {\n \"description\": \"Banner image. Desktop size (1060x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": + \"The URL for the 854px by 70px image that appears below the video player + in the expanded video view of the video watch page.\"\n },\n \"bannerTvImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size extra high resolution (2120x1192).\"\n },\n \"bannerImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Desktop size (1060x175).\"\n },\n \"smallBrandedBannerImageUrl\": + {\n \"description\": \"The URL for the 640px by 70px banner image + that appears below the video player in the default view of the video watch + page. The URL for the image that appears above the top-left corner of the + video player. This is a 25-pixel-high image with a flexible width that cannot + exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n + \ \"largeBrandedBannerImageImapScript\": {\n \"description\": + \"The image map script for the large banner image.\",\n \"$ref\": + \"LocalizedProperty\"\n },\n \"bannerTvHighImageUrl\": {\n \"type\": + \"string\",\n \"description\": \"Banner image. TV size high resolution + (1920x1080).\"\n },\n \"backgroundImageUrl\": {\n \"description\": + \"The URL for the background image shown on the video watch page. The image + should be 1200px by 615px, with a maximum file size of 128k.\",\n \"$ref\": + \"LocalizedProperty\"\n },\n \"bannerExternalUrl\": {\n \"type\": + \"string\",\n \"description\": \"This is generated when a ChannelBanner.Insert + request has succeeded for the given channel.\"\n },\n \"bannerMobileMediumHdImageUrl\": {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Branding properties for images associated with the channel.\",\n \"type\": - \"object\",\n \"id\": \"ImageSettings\"\n },\n \"LiveStreamStatus\": - {\n \"id\": \"LiveStreamStatus\",\n \"description\": \"Brief description - of the live stream status.\",\n \"type\": \"object\",\n \"properties\": - {\n \"streamStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"healthStatus\": {\n \"$ref\": - \"LiveStreamHealthStatus\",\n \"description\": \"The health status - of the stream.\"\n }\n }\n },\n \"LiveStream\": {\n \"id\": - \"LiveStream\",\n \"type\": \"object\",\n \"description\": \"A live - stream describes a live ingestion point.\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the stream.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n - \ \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\"\n },\n - \ \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveStreamSnippet\",\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveStream\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n - \ },\n \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n - \ \"description\": \"The status object contains information about - live stream's status.\"\n }\n }\n },\n \"ResourceId\": {\n - \ \"description\": \"A resource id is a generic reference that points - to another YouTube resource.\",\n \"type\": \"object\",\n \"properties\": - {\n \"playlistId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a playlist. - This property is only present if the resourceId.kind value is youtube#playlist.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a channel. This property - is only present if the resourceId.kind value is youtube#channel.\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the referred resource, if that resource is a video. This - property is only present if the resourceId.kind value is youtube#video.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"The type of the API resource.\"\n - \ }\n },\n \"id\": \"ResourceId\"\n },\n \"WatchSettings\": - {\n \"description\": \"Branding properties for the watch. All deprecated.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"backgroundColor\": - {\n \"type\": \"string\",\n \"description\": \"The text - color for the video watch page's branded area.\"\n },\n \"featuredPlaylistId\": - {\n \"description\": \"An ID that uniquely identifies a playlist - that displays next to the video player.\",\n \"type\": \"string\"\n - \ },\n \"textColor\": {\n \"type\": \"string\",\n \"description\": - \"The background color for the video watch page's branded area.\"\n }\n - \ },\n \"id\": \"WatchSettings\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"type\": \"object\",\n \"properties\": {\n \"blocked\": + (960x263).\",\n \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": + {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"VideoCategoryListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoCategoryListResponse\",\n \"properties\": {\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n + \ \"default\": \"youtube#videoCategoryListResponse\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"description\": \"A list of video categories that can + be associated with YouTube videos. In this map, the video category ID is the + map key, and its value is the corresponding videoCategory resource.\",\n \"items\": + {\n \"$ref\": \"VideoCategory\"\n }\n }\n }\n + \ },\n \"Thumbnail\": {\n \"id\": \"Thumbnail\",\n \"type\": + \"object\",\n \"description\": \"A thumbnail is an image representing + a YouTube resource.\",\n \"properties\": {\n \"width\": {\n \"type\": + \"integer\",\n \"description\": \"(Optional) Width of the thumbnail + image.\",\n \"format\": \"uint32\"\n },\n \"url\": + {\n \"type\": \"string\",\n \"description\": \"The thumbnail + image's URL.\"\n },\n \"height\": {\n \"format\": \"uint32\",\n + \ \"description\": \"(Optional) Height of the thumbnail image.\",\n + \ \"type\": \"integer\"\n }\n }\n },\n \"MembershipsDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"membershipsDurationAtLevels\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"MembershipsDurationAtLevel\"\n },\n \"description\": \"Data + about memberships duration on particular pricing levels.\"\n },\n \"highestAccessibleLevelDisplayName\": + {\n \"description\": \"Display name for the highest level that the + user has access to at the moment.\",\n \"type\": \"string\"\n },\n + \ \"accessibleLevels\": {\n \"description\": \"Ids of all levels + that the user has access to. This includes the currently active level and + all other levels that are included because of a higher purchase.\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n + \ },\n \"highestAccessibleLevel\": {\n \"description\": + \"Id of the highest level that the user has access to at the moment.\",\n + \ \"type\": \"string\"\n },\n \"membershipsDuration\": + {\n \"$ref\": \"MembershipsDuration\",\n \"description\": + \"Data about memberships duration without taking into consideration pricing + levels.\"\n }\n },\n \"id\": \"MembershipsDetails\"\n },\n + \ \"CommentThreadSnippet\": {\n \"properties\": {\n \"topLevelComment\": + {\n \"$ref\": \"Comment\",\n \"description\": \"The top + level comment of this thread.\"\n },\n \"videoId\": {\n \"description\": + \"The ID of the video the comments refer to, if any. No video_id implies a + channel discussion comment.\",\n \"type\": \"string\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"canReply\": {\n \"description\": + \"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.\",\n \"type\": + \"boolean\"\n },\n \"totalReplyCount\": {\n \"description\": + \"The total number of replies (not including the top level comment).\",\n + \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n + \ \"isPublic\": {\n \"description\": \"Whether the thread (and + therefore all its comments) is visible to all YouTube users.\",\n \"type\": + \"boolean\"\n }\n },\n \"id\": \"CommentThreadSnippet\",\n + \ \"description\": \"Basic details about a comment thread.\",\n \"type\": + \"object\"\n },\n \"PlaylistPlayer\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"embedHtml\": {\n \"type\": \"string\",\n + \ \"description\": \"An \\u003ciframe\\u003e tag that embeds a player + that will play the playlist.\"\n }\n },\n \"id\": \"PlaylistPlayer\"\n + \ },\n \"ChannelSectionTargeting\": {\n \"description\": \"ChannelSection + targeting setting.\",\n \"id\": \"ChannelSectionTargeting\",\n \"type\": + \"object\",\n \"properties\": {\n \"countries\": {\n \"description\": + \"The country the channel section is targeting.\",\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n },\n + \ \"regions\": {\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"The region the channel section is targeting.\"\n },\n \"languages\": {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of region - codes that identify countries where the video is blocked. If this property - is present and a country is not listed in its value, then the video is viewable - in that country. If this property is present and contains an empty list, the - video is viewable in all countries.\"\n },\n \"allowed\": {\n + \ \"description\": \"The language the channel section is targeting.\",\n + \ \"type\": \"array\"\n }\n }\n },\n \"ChannelSettings\": + {\n \"type\": \"object\",\n \"id\": \"ChannelSettings\",\n \"description\": + \"Branding properties for the channel view.\",\n \"properties\": {\n + \ \"featuredChannelsTitle\": {\n \"type\": \"string\",\n \"description\": + \"Title for the featured channels tab.\"\n },\n \"country\": + {\n \"description\": \"The country of the channel.\",\n \"type\": + \"string\"\n },\n \"featuredChannelsUrls\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"The list of featured channels.\",\n \"type\": \"array\"\n },\n + \ \"profileColor\": {\n \"description\": \"A prominent color + that can be rendered on this channel page.\",\n \"type\": \"string\"\n + \ },\n \"trackingAnalyticsAccountId\": {\n \"type\": + \"string\",\n \"description\": \"The ID for a Google Analytics account + to track and measure traffic to the channels.\"\n },\n \"defaultTab\": + {\n \"description\": \"Which content tab users should see when viewing + the channel.\",\n \"type\": \"string\"\n },\n \"keywords\": + {\n \"type\": \"string\",\n \"description\": \"Lists keywords + associated with the channel, comma-separated.\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\"\n },\n \"unsubscribedTrailer\": + {\n \"description\": \"The trailer of the channel, for users that + are not subscribers.\",\n \"type\": \"string\"\n },\n \"showRelatedChannels\": + {\n \"description\": \"Whether related channels should be proposed.\",\n + \ \"type\": \"boolean\"\n },\n \"showBrowseView\": {\n + \ \"description\": \"Whether the tab to browse the videos should be + displayed.\",\n \"type\": \"boolean\"\n },\n \"description\": + {\n \"description\": \"Specifies the channel description.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"description\": \"Specifies + the channel title.\",\n \"type\": \"string\"\n },\n \"moderateComments\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + user-submitted comments left on the channel page need to be approved by the + channel owner to be publicly visible.\"\n }\n }\n },\n \"LiveChatModeratorSnippet\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\",\n + \ \"properties\": {\n \"moderatorDetails\": {\n \"$ref\": + \"ChannelProfileDetails\",\n \"description\": \"Details about the + moderator.\"\n },\n \"liveChatId\": {\n \"description\": + \"The ID of the live chat this moderator can act on.\",\n \"type\": + \"string\"\n }\n }\n },\n \"LiveChatMessageSnippet\": {\n + \ \"description\": \"Next ID: 33\",\n \"properties\": {\n \"superStickerDetails\": + {\n \"description\": \"Details about the Super Sticker event, this + is only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n + \ },\n \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n + \ },\n \"giftMembershipReceivedDetails\": {\n \"description\": + \"Details about the Gift Membership Received event, this is only set if the + type is 'giftMembershipReceivedEvent'.\",\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n + \ },\n \"textMessageDetails\": {\n \"description\": + \"Details about the text message, this is only set if the type is 'textMessageEvent'.\",\n + \ \"$ref\": \"LiveChatTextMessageDetails\"\n },\n \"newSponsorDetails\": + {\n \"description\": \"Details about the New Member Announcement + event, this is only set if the type is 'newSponsorEvent'. Please note that + \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n \"$ref\": + \"LiveChatNewSponsorDetails\"\n },\n \"liveChatId\": {\n \"type\": + \"string\"\n },\n \"hasDisplayContent\": {\n \"description\": + \"Whether the message has display content that should be displayed to users.\",\n + \ \"type\": \"boolean\"\n },\n \"messageRetractedDetails\": + {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"membershipGiftingDetails\": + {\n \"description\": \"Details about the Membership Gifting event, + this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": + \"LiveChatMembershipGiftingDetails\"\n },\n \"memberMilestoneChatDetails\": + {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": + \"Details about the Member Milestone Chat event, this is only set if the type + is 'memberMilestoneChatEvent'.\"\n },\n \"authorChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the user that authored this message, this field is not always filled. textMessageEvent + - the user that wrote the message fanFundingEvent - the user that funded the + broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent + - the member that sent the message membershipGiftingEvent - the user that + made the purchase giftMembershipReceivedEvent - the user that received the + gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent + - the author that retracted their message userBannedEvent - the moderator + that took the action superChatEvent - the user that made the purchase superStickerEvent + - the user that made the purchase\"\n },\n \"displayMessage\": + {\n \"description\": \"Contains a string that can be displayed to + the user. If this field is not present the message is silent, at the moment + only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\",\n \"type\": + \"string\"\n },\n \"type\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The type of message, this will + always be present, it determines the contents of the message as well as which + fields will be present.\",\n \"enum\": [\n \"invalidType\",\n + \ \"textMessageEvent\",\n \"tombstone\",\n \"fanFundingEvent\",\n + \ \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n + \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n + \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n + \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n + \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n + \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n + \ \"type\": \"string\"\n },\n \"messageDeletedDetails\": + {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"fanFundingEventDetails\": + {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n \"description\": + \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n + \ },\n \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n + \ \"description\": \"Details about the Super Chat event, this is only + set if the type is 'superChatEvent'.\"\n },\n \"publishedAt\": + {\n \"description\": \"The date and time when the message was orignally + published.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"LiveChatMessageSnippet\",\n \"type\": + \"object\"\n },\n \"VideoTopicDetails\": {\n \"description\": \"Freebase + topic information related to the video.\",\n \"id\": \"VideoTopicDetails\",\n + \ \"properties\": {\n \"relevantTopicIds\": {\n \"description\": + \"Similar to topic_id, except that these topics are merely relevant to the + video. These are topics that may be mentioned in, or appear in the video. + You can retrieve information about each topic using Freebase Topic API.\",\n \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of region codes that identify - countries where the video is viewable. If this property is present and a country - is not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\"\n }\n },\n \"description\": - \"DEPRECATED Region restriction of the video.\",\n \"id\": \"VideoContentDetailsRegionRestriction\"\n - \ },\n \"SubscriptionSubscriberSnippet\": {\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a subscription's subscriber including - title, description, channel ID and thumbnails.\",\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the subscriber.\"\n },\n - \ \"title\": {\n \"description\": \"The title of the subscriber.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The channel ID of the subscriber.\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"description\": \"Thumbnails for this - subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n }\n }\n - \ },\n \"LiveStreamHealthStatus\": {\n \"type\": \"object\",\n \"id\": - \"LiveStreamHealthStatus\",\n \"properties\": {\n \"status\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The status code of this stream\",\n - \ \"enum\": [\n \"good\",\n \"ok\",\n \"bad\",\n - \ \"noData\",\n \"revoked\"\n ]\n },\n - \ \"lastUpdateTimeSeconds\": {\n \"type\": \"string\",\n \"description\": - \"The last time this status was updated (in seconds)\",\n \"format\": - \"uint64\"\n },\n \"configurationIssues\": {\n \"description\": - \"The configurations issues on this stream\",\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n },\n \"type\": \"array\"\n - \ }\n }\n },\n \"SubscriptionContentDetails\": {\n \"description\": - \"Details about the content to witch a subscription refers.\",\n \"type\": - \"object\",\n \"id\": \"SubscriptionContentDetails\",\n \"properties\": - {\n \"totalItemCount\": {\n \"description\": \"The approximate - number of items that the subscription points to.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"activityType\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"newItemCount\": {\n \"description\": - \"The number of new items in the subscription since its content was last read.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n - \ }\n },\n \"VideoContentDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoContentDetails\",\n \"properties\": {\n \"caption\": - {\n \"enum\": [\n \"true\",\n \"false\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The value of - captions indicates whether the video has captions or not.\"\n },\n - \ \"projection\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ],\n \"type\": \"string\",\n \"description\": - \"Specifies the projection format of the video.\"\n },\n \"contentRating\": - {\n \"$ref\": \"ContentRating\",\n \"description\": \"Specifies - the ratings that the video received under various rating schemes.\"\n },\n - \ \"licensedContent\": {\n \"type\": \"boolean\",\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\"\n },\n \"regionRestriction\": {\n \"$ref\": - \"VideoContentDetailsRegionRestriction\",\n \"description\": \"The - regionRestriction object contains information about the countries where a - video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\"\n },\n - \ \"dimension\": {\n \"type\": \"string\",\n \"description\": + \"array\"\n },\n \"topicIds\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of Freebase topic IDs that are centrally associated with the video. + These are topics that are centrally featured in the video, and it can be said + that the video is mainly about each of these. You can retrieve information + about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase + Topic API.\"\n },\n \"topicCategories\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"A list of Wikipedia URLs that provide a high-level + description of the video's content.\"\n }\n },\n \"type\": + \"object\"\n },\n \"ThumbnailSetResponse\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n },\n + \ \"description\": \"A list of thumbnails.\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n + \ \"default\": \"youtube#thumbnailSetResponse\",\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"ThumbnailSetResponse\"\n + \ },\n \"I18nLanguageListResponse\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#i18nLanguageListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n },\n + \ \"description\": \"A list of supported i18n languages. In this map, + the i18n language ID is the map key, and its value is the corresponding i18nLanguage + resource.\",\n \"type\": \"array\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"I18nLanguageListResponse\"\n + \ },\n \"PlaylistLocalization\": {\n \"type\": \"object\",\n \"description\": + \"Playlist localization setting\",\n \"properties\": {\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The localized + strings for playlist's title.\"\n },\n \"description\": {\n + \ \"description\": \"The localized strings for playlist's description.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"PlaylistLocalization\"\n + \ },\n \"Caption\": {\n \"id\": \"Caption\",\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + uses to uniquely identify the caption track.\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#caption\\\".\",\n \"type\": \"string\",\n + \ \"default\": \"youtube#caption\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n }\n + \ },\n \"description\": \"A *caption* resource represents a YouTube + caption track. A caption track is associated with exactly one YouTube video.\",\n + \ \"type\": \"object\"\n },\n \"SearchResultSnippet\": {\n \"type\": + \"object\",\n \"id\": \"SearchResultSnippet\",\n \"properties\": + {\n \"channelTitle\": {\n \"type\": \"string\",\n \"description\": + \"The title of the channel that published the resource that the search result + identifies.\"\n },\n \"publishedAt\": {\n \"description\": + \"The creation date and time of the resource that the search result identifies.\",\n + \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n + \ \"title\": {\n \"description\": \"The title of the search + result.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The value + that YouTube uses to uniquely identify the channel that published the resource + that the search result identifies.\"\n },\n \"liveBroadcastContent\": + {\n \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ],\n \"description\": + \"It indicates if the resource (video or channel) has upcoming/active live + broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active + live broadcasts.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The live broadcast is upcoming.\",\n \"The live broadcast + is active.\",\n \"The live broadcast has been completed.\"\n ],\n + \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the search result. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"A description of the search result.\"\n + \ }\n },\n \"description\": \"Basic details about a search + result, including title, description and thumbnails of the item referenced + by the search result.\"\n },\n \"VideoContentDetails\": {\n \"type\": + \"object\",\n \"properties\": {\n \"projection\": {\n \"type\": + \"string\",\n \"enum\": [\n \"rectangular\",\n \"360\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"description\": \"Specifies the projection format + of the video.\"\n },\n \"dimension\": {\n \"description\": \"The value of dimension indicates whether the video is available in 3D or - in 2D.\"\n },\n \"duration\": {\n \"type\": \"string\",\n + in 2D.\",\n \"type\": \"string\"\n },\n \"definition\": + {\n \"type\": \"string\",\n \"enum\": [\n \"sd\",\n + \ \"hd\"\n ],\n \"description\": \"The value of + definition indicates whether the video is available in high definition or + only in standard definition.\",\n \"enumDescriptions\": [\n \"sd\",\n + \ \"hd\"\n ]\n },\n \"licensedContent\": + {\n \"description\": \"The value of is_license_content indicates + whether the video is licensed content.\",\n \"type\": \"boolean\"\n + \ },\n \"contentRating\": {\n \"description\": \"Specifies + the ratings that the video received under various rating schemes.\",\n \"$ref\": + \"ContentRating\"\n },\n \"caption\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"description\": \"The value of captions indicates + whether the video has captions or not.\",\n \"enum\": [\n \"true\",\n + \ \"false\"\n ]\n },\n \"duration\": {\n \ \"description\": \"The length of the video. The tag value is an ISO 8601 duration in the format PT#M#S, in which the letters PT indicate that the value specifies a period of time, and the letters M and S refer to length in minutes and seconds, respectively. The # characters preceding the M and S letters are both integers that specify the number of minutes (or seconds) of the video. For example, a value of PT15M51S indicates that the video is - 15 minutes and 51 seconds long.\"\n },\n \"countryRestriction\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - countryRestriction object contains information about the countries where a - video is (or is not) viewable.\"\n },\n \"hasCustomThumbnail\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\"\n },\n \"definition\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"description\": \"The value of - definition indicates whether the video is available in high definition or - only in standard definition.\",\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ]\n }\n },\n \"description\": - \"Details about the content of a YouTube Video.\"\n },\n \"InvideoTiming\": - {\n \"type\": \"object\",\n \"properties\": {\n \"offsetMs\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\"\n },\n - \ \"durationMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"Defines the duration in milliseconds - for which the promotion should be displayed. If missing, the client should - use the default.\"\n },\n \"type\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"description\": \"Describes a timing type. If the - value is offsetFromStart, then the offsetMs field represents an offset from - the start of the video. If the value is offsetFromEnd, then the offsetMs field - represents an offset from the end of the video.\"\n }\n },\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\",\n \"id\": - \"InvideoTiming\"\n },\n \"PageInfo\": {\n \"id\": \"PageInfo\",\n - \ \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\",\n \"properties\": {\n \"resultsPerPage\": {\n \"description\": - \"The number of results included in the API response.\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n },\n \"totalResults\": - {\n \"format\": \"int32\",\n \"description\": \"The total - number of results in the result set.\",\n \"type\": \"integer\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ThirdPartyLinkStatus\": - {\n \"properties\": {\n \"linkStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ]\n }\n },\n \"type\": - \"object\",\n \"description\": \"The third-party link status object contains - information about the status of the link.\",\n \"id\": \"ThirdPartyLinkStatus\"\n - \ },\n \"MembershipsLevelSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"MembershipsLevelSnippet\",\n \"properties\": {\n \"levelDetails\": - {\n \"description\": \"Details about the pricing level.\",\n \"$ref\": - \"LevelDetails\"\n },\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n }\n }\n },\n \"MembershipsLevel\": {\n \"id\": - \"MembershipsLevel\",\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the memberships level.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n },\n + \ \"hasCustomThumbnail\": {\n \"type\": \"boolean\",\n \"description\": + \"Indicates whether the video uploader has provided a custom thumbnail image + for the video. This property is only visible to the video uploader.\"\n },\n + \ \"countryRestriction\": {\n \"description\": \"The countryRestriction + object contains information about the countries where a video is (or is not) + viewable.\",\n \"$ref\": \"AccessPolicy\"\n },\n \"regionRestriction\": + {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": + \"The regionRestriction object contains information about the countries where + a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed + property or the contentDetails.regionRestriction.blocked property.\"\n }\n + \ },\n \"description\": \"Details about the content of a YouTube + Video.\",\n \"id\": \"VideoContentDetails\"\n },\n \"MembershipsLevel\": + {\n \"properties\": {\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevel\"\n + \ },\n \"snippet\": {\n \"$ref\": \"MembershipsLevelSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the level.\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevel\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"A *membershipsLevel* resource represents an offer made by YouTube creators - for their fans. Users can become members of the channel by joining one of - the available levels. They will provide recurring monetary support and receives - special benefits.\"\n },\n \"VideoLocalization\": {\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"Localized version of the video's - title.\"\n },\n \"description\": {\n \"description\": - \"Localized version of the video's description.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoLocalization\",\n \"description\": - \"Localized versions of certain video properties (e.g. title).\"\n },\n - \ \"ActivityContentDetailsUpload\": {\n \"type\": \"object\",\n \"description\": - \"Information about the uploaded video.\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the uploaded video.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ActivityContentDetailsUpload\"\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"id\": \"VideoSuggestionsTagSuggestion\",\n \"description\": - \"A single tag suggestion with it's relevance information.\",\n \"properties\": - {\n \"categoryRestricts\": {\n \"type\": \"array\",\n \"description\": - \"A set of video categories for which the tag is relevant. You can use this - information to display appropriate tag suggestions based on the video category - that the video uploader associates with the video. By default, tag suggestions - are relevant for all categories if there are no restricts defined for the - keyword.\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"tag\": {\n \"description\": \"The keyword tag - suggested for the video.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoRecordingDetails\": {\n \"id\": - \"VideoRecordingDetails\",\n \"properties\": {\n \"recordingDate\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the video was recorded.\"\n - \ },\n \"locationDescription\": {\n \"description\": - \"The text description of the location where the video was recorded.\",\n - \ \"type\": \"string\"\n },\n \"location\": {\n \"$ref\": - \"GeoPoint\",\n \"description\": \"The geolocation information associated - with the video.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Recording information associated with the video.\"\n },\n \"SearchResultSnippet\": - {\n \"id\": \"SearchResultSnippet\",\n \"description\": \"Basic - details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"A description of the search result.\"\n },\n - \ \"liveBroadcastContent\": {\n \"description\": \"It indicates - if the resource (video or channel) has upcoming/active live broadcast content. - Or it's \\\"none\\\" if there is not any upcoming/active live broadcasts.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The live - broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": \"The value - that YouTube uses to uniquely identify the channel that published the resource - that the search result identifies.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the search result.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The creation date and time of the resource that - the search result identifies.\"\n },\n \"channelTitle\": {\n - \ \"type\": \"string\",\n \"description\": \"The title of - the channel that published the resource that the search result identifies.\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - search result. 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.\"\n }\n }\n },\n \"LiveBroadcast\": {\n \"type\": - \"object\",\n \"id\": \"LiveBroadcast\",\n \"properties\": {\n \"contentDetails\": - {\n \"$ref\": \"LiveBroadcastContentDetails\",\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\"\n },\n \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n - \ \"description\": \"The status object contains information about - the event's status.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the event, including its - title, description, start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveBroadcast\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the broadcast.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n - \ }\n },\n \"description\": \"A *liveBroadcast* resource represents - an event that will be streamed, via live video, on YouTube.\"\n },\n \"LiveChatSuperStickerDetails\": - {\n \"properties\": {\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"superStickerMetadata\": {\n \"description\": - \"Information about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"tier\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n },\n \"amountMicros\": {\n \"type\": - \"string\",\n \"description\": \"The amount purchased by the user, - in micros (1,750,000 micros = 1.75).\",\n \"format\": \"uint64\"\n - \ }\n },\n \"id\": \"LiveChatSuperStickerDetails\",\n \"type\": - \"object\"\n },\n \"LiveChatSuperChatDetails\": {\n \"properties\": - {\n \"amountMicros\": {\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"tier\": - {\n \"description\": \"The tier in which the amount belongs. Lower - amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n },\n \"userComment\": - {\n \"description\": \"The comment added by the user to this Super - Chat event.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatSuperChatDetails\"\n },\n \"CommentListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - comments that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Comment\"\n }\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentListResponse\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"CommentListResponse\"\n - \ },\n \"LiveBroadcastListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveBroadcastListResponse\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#liveBroadcastListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - broadcasts that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"LiveBroadcast\"\n }\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that + \ \"id\": {\n \"description\": \"The ID that YouTube assigns + to uniquely identify the memberships level.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"MembershipsLevel\",\n + \ \"description\": \"A *membershipsLevel* resource represents an offer + made by YouTube creators for their fans. Users can become members of the channel + by joining one of the available levels. They will provide recurring monetary + support and receives special benefits.\"\n },\n \"PlaylistItemListResponse\": + {\n \"id\": \"PlaylistItemListResponse\",\n \"properties\": {\n + \ \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ChannelSectionLocalization\": {\n \"type\": \"object\",\n - \ \"description\": \"ChannelSection localization setting\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The localized strings - for channel section's title.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelSectionLocalization\"\n },\n \"ChannelLocalization\": - {\n \"properties\": {\n \"description\": {\n \"type\": + in the result set.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"description\": + \"A list of playlist items that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"PlaylistItem\"\n }\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"default\": \"youtube#playlistItemListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". + Etag of this resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n },\n \"etag\": {\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"SubscriptionSnippet\": {\n \"type\": \"object\",\n \"id\": + \"SubscriptionSnippet\",\n \"properties\": {\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The subscription's + details.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the subscriber's channel.\"\n },\n \"resourceId\": {\n \"description\": + \"The id object contains information about the channel that the user subscribed + to.\",\n \"$ref\": \"ResourceId\",\n \"annotations\": {\n + \ \"required\": [\n \"youtube.subscriptions.insert\"\n + \ ]\n }\n },\n \"title\": {\n \"description\": + \"The subscription's title.\",\n \"type\": \"string\"\n },\n + \ \"thumbnails\": {\n \"description\": \"A map of thumbnail + images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel title for the channel that the subscription + belongs to.\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time that the subscription was created.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n }\n },\n \"description\": + \"Basic details about a subscription, including title, description and thumbnails + of the subscribed item.\"\n },\n \"ResourceId\": {\n \"description\": + \"A resource id is a generic reference that points to another YouTube resource.\",\n + \ \"id\": \"ResourceId\",\n \"properties\": {\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the referred resource, if that resource + is a video. This property is only present if the resourceId.kind value is + youtube#video.\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a channel. This property is only present if the resourceId.kind + value is youtube#channel.\",\n \"type\": \"string\"\n },\n + \ \"playlistId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the referred resource, if that resource is a playlist. + This property is only present if the resourceId.kind value is youtube#playlist.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"The type of the API resource.\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"ChannelLocalization\": + {\n \"description\": \"Channel localization setting\",\n \"type\": + \"object\",\n \"properties\": {\n \"description\": {\n \"type\": \"string\",\n \"description\": \"The localized strings for channel's description.\"\n },\n \"title\": {\n \"description\": \"The localized strings for channel's title.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Channel - localization setting\",\n \"id\": \"ChannelLocalization\"\n },\n \"ChannelSectionContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"channels\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The channel ids for - type multiple_channels.\"\n },\n \"playlists\": {\n \"type\": - \"array\",\n \"description\": \"The playlist ids for type single_playlist - and multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"description\": \"Details about a channelsection, including - playlists and channels.\",\n \"id\": \"ChannelSectionContentDetails\"\n - \ },\n \"VideoCategorySnippet\": {\n \"id\": \"VideoCategorySnippet\",\n - \ \"properties\": {\n \"assignable\": {\n \"type\": \"boolean\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube channel that created the video category.\",\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The video category's title.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a video category, such as its localized title.\"\n },\n \"ThumbnailDetails\": - {\n \"properties\": {\n \"maxres\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The maximum resolution quality image for this - resource.\"\n },\n \"standard\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The standard quality image for this resource.\"\n - \ },\n \"high\": {\n \"description\": \"The high quality - image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"medium\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The medium quality image for this resource.\"\n },\n \"default\": - {\n \"description\": \"The default image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n }\n },\n \"description\": - \"Internal representation of thumbnails for a YouTube resource.\",\n \"id\": - \"ThumbnailDetails\",\n \"type\": \"object\"\n },\n \"SubscriptionListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"default\": \"youtube#subscriptionListResponse\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - subscriptions that match the request criteria.\",\n \"items\": {\n - \ \"$ref\": \"Subscription\"\n }\n }\n },\n - \ \"id\": \"SubscriptionListResponse\"\n },\n \"Channel\": {\n \"id\": - \"Channel\",\n \"type\": \"object\",\n \"description\": \"A *channel* - resource contains information about a YouTube channel.\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the channel, such as its title, description, - and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n },\n - \ \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n \"description\": - \"The statistics object encapsulates statistics for the channel.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#channel\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\"\n - \ },\n \"brandingSettings\": {\n \"$ref\": \"ChannelBrandingSettings\",\n - \ \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\"\n },\n \"contentOwnerDetails\": - {\n \"$ref\": \"ChannelContentOwnerDetails\",\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\"\n },\n \"conversionPings\": - {\n \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\",\n \"$ref\": - \"ChannelConversionPings\"\n },\n \"auditDetails\": {\n \"$ref\": - \"ChannelAuditDetails\",\n \"description\": \"The auditionDetails - object encapsulates channel data that is relevant for YouTube Partners during - the audition process.\"\n },\n \"topicDetails\": {\n \"$ref\": - \"ChannelTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the channel.\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object encapsulates information about the channel's content.\",\n - \ \"$ref\": \"ChannelContentDetails\"\n },\n \"status\": - {\n \"description\": \"The status object encapsulates information - about the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel.\",\n \"type\": \"string\"\n - \ },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"description\": \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n }\n }\n - \ }\n },\n \"ActivityContentDetailsFavorite\": {\n \"id\": - \"ActivityContentDetailsFavorite\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource that was marked as - a favorite.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Information about a video that was marked as a favorite video.\"\n },\n - \ \"VideoTopicDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"topicIds\": {\n \"description\": \"A list of Freebase - topic IDs that are centrally associated with the video. These are topics that - are centrally featured in the video, and it can be said that the video is - mainly about each of these. You can retrieve information about each topic - using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"relevantTopicIds\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"Similar to topic_id, except that these topics - are merely relevant to the video. These are topics that may be mentioned in, - or appear in the video. You can retrieve information about each topic using - Freebase Topic API.\",\n \"type\": \"array\"\n },\n \"topicCategories\": - {\n \"type\": \"array\",\n \"description\": \"A list of - Wikipedia URLs that provide a high-level description of the video's content.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"description\": \"Freebase topic information related to the - video.\",\n \"id\": \"VideoTopicDetails\"\n },\n \"LiveChatMessageListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"pollingIntervalMillis\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The amount of time the client should wait before polling again.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatMessageListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"type\": \"array\"\n },\n - \ \"offlineAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the underlying stream went offline.\",\n \"format\": - \"date-time\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n },\n \"id\": \"LiveChatMessageListResponse\"\n - \ },\n \"ActivityContentDetailsComment\": {\n \"description\": \"Information - about a resource that received a comment.\",\n \"id\": \"ActivityContentDetailsComment\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with the - comment.\"\n }\n }\n },\n \"ActivityListResponse\": {\n - \ \"id\": \"ActivityListResponse\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#activityListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#activityListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Activity\"\n }\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"properties\": {\n \"giftMembershipsLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the level of the gift - memberships purchased by the user. The Level names are defined by the YouTube - channel offering the Membership. In some situations this field isn't filled.\"\n - \ },\n \"giftMembershipsCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"description\": \"The number - of gift memberships purchased by the user.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n - \ \"LiveChatNewSponsorDetails\": {\n \"type\": \"object\",\n \"id\": - \"LiveChatNewSponsorDetails\",\n \"properties\": {\n \"isUpgrade\": - {\n \"type\": \"boolean\",\n \"description\": \"If the viewer - just had upgraded from a lower level. For viewers that were not members at - the time of purchase, this field is false.\"\n },\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level that the viewer just had joined. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n }\n }\n },\n \"VideoStatus\": {\n \"type\": - \"object\",\n \"properties\": {\n \"publishAt\": {\n \"description\": - \"The date and time when the video is scheduled to publish. It can be set - only if the privacy status of the video is private..\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's privacy status.\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"rejectionReason\": {\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n },\n \"embeddable\": - {\n \"description\": \"This value indicates if the video can be embedded - on another website. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n },\n \"madeForKids\": {\n - \ \"type\": \"boolean\"\n },\n \"failureReason\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ],\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ],\n \"description\": \"This value explains - why a video failed to upload. This property is only present if the uploadStatus - property indicates that the upload failed.\"\n },\n \"license\": - {\n \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ]\n - \ },\n \"uploadStatus\": {\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ],\n \"enumDescriptions\": [\n - \ \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"description\": - \"The status of the uploaded video.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoStatus\",\n \"description\": \"Basic details - about a video category, such as its localized title. Next Id: 18\"\n },\n - \ \"PlaylistItemStatus\": {\n \"description\": \"Information about - the playlist item's privacy status.\",\n \"properties\": {\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"This resource's privacy status.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"PlaylistItemStatus\"\n - \ },\n \"Entity\": {\n \"type\": \"object\",\n \"id\": \"Entity\",\n - \ \"properties\": {\n \"typeId\": {\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"url\": {\n \"type\": \"string\"\n }\n }\n },\n - \ \"TestItemTestItemSnippet\": {\n \"properties\": {},\n \"id\": - \"TestItemTestItemSnippet\",\n \"type\": \"object\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"properties\": {\n \"isChatModerator\": {\n \"description\": - \"Whether the author is a moderator of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"isChatSponsor\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a sponsor - of the live chat.\"\n },\n \"isChatOwner\": {\n \"description\": - \"Whether the author is the owner of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"channelUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's URL.\"\n },\n \"isVerified\": - {\n \"description\": \"Whether the author's identity has been verified - by YouTube.\",\n \"type\": \"boolean\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The channel's display name.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube channel ID.\"\n }\n },\n \"id\": \"LiveChatMessageAuthorDetails\",\n - \ \"type\": \"object\"\n },\n \"CaptionSnippet\": {\n \"properties\": - {\n \"name\": {\n \"description\": \"The name of the caption - track. The name is intended to be visible to the user as an option during - playback.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"failureReason\": {\n \"type\": - \"string\",\n \"description\": \"The reason that YouTube failed to - process the caption track. This property is only present if the state property's - value is failed.\",\n \"enum\": [\n \"unknownFormat\",\n - \ \"unsupportedFormat\",\n \"processingFailed\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"isAutoSynced\": {\n \"description\": - \"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.\",\n \"type\": \"boolean\"\n },\n \"lastUpdated\": - {\n \"description\": \"The date and time when the caption track was - last updated.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"isCC\": {\n \"description\": \"Indicates - whether the track contains closed captions for the deaf and hard of hearing. - The default value is false.\",\n \"type\": \"boolean\"\n },\n - \ \"isDraft\": {\n \"type\": \"boolean\",\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n },\n \"trackKind\": {\n \"description\": - \"The caption track's type.\",\n \"type\": \"string\",\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video associated with - the caption track. @mutable youtube.captions.insert\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"audioTrackType\": {\n \"description\": - \"The type of audio track associated with the caption track.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ]\n },\n \"status\": - {\n \"description\": \"The caption track's status.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"serving\",\n - \ \"syncing\",\n \"failed\"\n ]\n },\n - \ \"isEasyReader\": {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"isLarge\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether the caption track uses large - text for the vision-impaired. The default value is false.\"\n },\n - \ \"language\": {\n \"description\": \"The language of the - caption track. The property value is a BCP-47 language tag.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"CaptionSnippet\",\n \"description\": \"Basic details - about a caption track, such as its language and name.\"\n },\n \"ChannelSnippet\": - {\n \"id\": \"ChannelSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about a channel, including title, description and thumbnails.\",\n - \ \"properties\": {\n \"customUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The custom url of the channel.\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the channel was created.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the channel. For each object in + \ }\n },\n \"id\": \"ChannelLocalization\"\n },\n \"CommentSnippet\": + {\n \"id\": \"CommentSnippet\",\n \"properties\": {\n \"moderationStatus\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"The + comment is available for public display.\",\n \"The comment is + awaiting review by a moderator.\",\n \"\",\n \"The comment + is unfit for display.\"\n ],\n \"description\": \"The comment's + moderation status. Will not be set if the comments were requested through + the id filter.\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ]\n },\n + \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The date and time when the comment + was originally published.\"\n },\n \"authorChannelId\": {\n + \ \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"textOriginal\": + {\n \"description\": \"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.\",\n + \ \"type\": \"string\"\n },\n \"videoId\": {\n \"description\": + \"The ID of the video the comment refers to, if any.\",\n \"type\": + \"string\"\n },\n \"textDisplay\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"authorDisplayName\": {\n \"description\": + \"The name of the user who posted the comment.\",\n \"type\": \"string\"\n + \ },\n \"likeCount\": {\n \"type\": \"integer\",\n \"description\": + \"The total number of likes this comment has received.\",\n \"format\": + \"uint32\"\n },\n \"authorProfileImageUrl\": {\n \"description\": + \"The URL for the avatar of the user who posted the comment.\",\n \"type\": + \"string\"\n },\n \"authorChannelUrl\": {\n \"description\": + \"Link to the author's YouTube channel, if any.\",\n \"type\": \"string\"\n + \ },\n \"channelId\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"canRate\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the current viewer can rate this comment.\"\n },\n \"updatedAt\": + {\n \"description\": \"The date and time when the comment was last + updated.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n + \ },\n \"parentId\": {\n \"description\": \"The unique + id of the parent comment, only set for replies.\",\n \"type\": \"string\"\n + \ },\n \"viewerRating\": {\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"Basic details about a comment, such + as its author and text.\"\n },\n \"ActivityContentDetailsSubscription\": + {\n \"description\": \"Information about a channel that a user subscribed + to.\",\n \"id\": \"ActivityContentDetailsSubscription\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + that the user subscribed to.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"ActivitySnippet\": {\n \"id\": \"ActivitySnippet\",\n \"description\": + \"Basic details about an activity, including title, description, thumbnails, + activity type and group. Next ID: 12\",\n \"type\": \"object\",\n \"properties\": + {\n \"channelTitle\": {\n \"description\": \"Channel title + for the channel responsible for this activity\",\n \"type\": \"string\"\n + \ },\n \"groupId\": {\n \"description\": \"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.\",\n + \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The description of the resource + primarily associated with the activity. @mutable youtube.activities.insert\"\n + \ },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the video was uploaded.\",\n + \ \"format\": \"date-time\"\n },\n \"thumbnails\": {\n + \ \"description\": \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"country\": - {\n \"description\": \"The country of the channel.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n + that contains other information about the thumbnail.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"type\": {\n \"description\": + \"The type of activity that the resource describes.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n + \ \"like\",\n \"favorite\",\n \"comment\",\n + \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n + \ \"bulletin\",\n \"social\",\n \"channelItem\",\n + \ \"promotedItem\"\n ],\n \"type\": \"string\"\n \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The channel's title.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the channel's default - title and description.\"\n },\n \"description\": {\n \"description\": - \"The description of the channel.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ThumbnailSetResponse\": {\n \"properties\": {\n - \ \"items\": {\n \"description\": \"A list of thumbnails.\",\n + \"The title of the resource primarily associated with the activity.\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel associated with + the activity.\"\n }\n }\n },\n \"LiveBroadcastStatistics\": + {\n \"id\": \"LiveBroadcastStatistics\",\n \"type\": \"object\",\n + \ \"description\": \"Statistics about the live broadcast. These represent + a snapshot of the values at the time of the request. Statistics are only returned + for live broadcasts.\",\n \"properties\": {\n \"concurrentViewers\": + {\n \"type\": \"string\",\n \"description\": \"The number + of viewers currently watching the broadcast. The property and its value will + be present if the broadcast has current viewers and the broadcast owner has + not hidden the viewcount for the video. Note that YouTube stops tracking the + number of concurrent viewers for a broadcast when the broadcast ends. So, + this property would not identify the number of viewers watching an archived + video of a live broadcast that already ended.\",\n \"format\": \"uint64\"\n + \ },\n \"totalChatCount\": {\n \"description\": \"The + total number of live chat messages currently on the broadcast. The property + and its value will be present if the broadcast is public, has the live chat + feature enabled, and has at least one message. Note that this field will not + be filled after the broadcast ends. So this property would not identify the + number of chat messages for an archived video of a completed live broadcast.\",\n + \ \"type\": \"string\",\n \"format\": \"uint64\"\n }\n + \ }\n },\n \"LiveStreamContentDetails\": {\n \"description\": + \"Detailed settings of a stream.\",\n \"properties\": {\n \"isReusable\": + {\n \"description\": \"Indicates whether the stream is reusable, + which means that it can be bound to multiple broadcasts. It is common for + broadcasters to reuse the same stream for many different broadcasts if those + broadcasts occur at different times. If you set this value to false, then + the stream will not be reusable, which means that it can only be bound to + one broadcast. Non-reusable streams differ from reusable streams in the following + ways: - A non-reusable stream can only be bound to one broadcast. - A non-reusable + stream might be deleted by an automated process after the broadcast ends. + - The liveStreams.list method does not list non-reusable streams if you call + the method and set the mine parameter to true. The only way to use that method + to retrieve the resource for a non-reusable stream is to use the id parameter + to identify the stream. \",\n \"type\": \"boolean\"\n },\n + \ \"closedCaptionsIngestionUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The ingestion URL where the closed captions of + this stream are sent.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LiveStreamContentDetails\"\n },\n \"VideoSuggestions\": + {\n \"properties\": {\n \"editorSuggestions\": {\n \"items\": + {\n \"enumDescriptions\": [\n \"Picture brightness + levels seem off and could be corrected.\",\n \"The video appears + shaky and could be stabilized.\",\n \"Margins (mattes) detected + around the picture could be cropped.\",\n \"The audio track appears + silent and could be swapped with a better quality one.\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n + \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n + \ ]\n },\n \"description\": \"A list of video + editing operations that might improve the video quality or playback experience + of the uploaded video.\",\n \"type\": \"array\"\n },\n \"processingErrors\": + {\n \"description\": \"A list of errors that will prevent YouTube + from successfully processing the uploaded video video. These errors indicate + that, regardless of the video's current processing status, eventually, that + status will almost certainly be failed.\",\n \"items\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"File contains + audio only (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG + image).\",\n \"Movie project file (e.g., Microsoft Windows Movie + Maker project).\",\n \"Other non-video file.\",\n \"Document + or text file (e.g., MS Word document).\",\n \"An archive file + (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout + type.\"\n ],\n \"enum\": [\n \"audioFile\",\n + \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n + \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n + \ ]\n },\n \"type\": \"array\"\n },\n \"processingWarnings\": + {\n \"type\": \"array\",\n \"description\": \"A list of + reasons why YouTube may have difficulty transcoding the uploaded video or + that might result in an erroneous transcoding. These warnings are generated + before YouTube actually processes the uploaded video file. In addition, they + identify issues that are unlikely to cause the video processing to fail but + that might cause problems such as sync issues, video artifacts, or a missing + audio track.\",\n \"items\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"Unrecognized file format, + transcoding is likely to fail.\",\n \"Unrecognized video codec, + transcoding is likely to fail.\",\n \"Unrecognized audio codec, + transcoding is likely to fail.\",\n \"Conflicting container and + stream resolutions.\",\n \"Edit lists are not currently supported.\",\n + \ \"Video codec that is known to cause problems was used.\",\n + \ \"Audio codec that is known to cause problems was used.\",\n + \ \"Unsupported VR video stereo mode.\",\n \"Unsupported + spherical video projection type.\",\n \"Unsupported HDR pixel + format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic + HDR lookup table attached.\"\n ],\n \"enum\": [\n \"unknownContainer\",\n + \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n + \ \"inconsistentResolution\",\n \"hasEditlist\",\n + \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n + \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n + \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n + \ \"problematicHdrLookupTable\"\n ]\n }\n + \ },\n \"processingHints\": {\n \"description\": \"A + list of suggestions that may improve YouTube's ability to process the video.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"The MP4 + file is not streamable, this will slow down the processing. MOOV atom was + not found at the beginning of the file.\",\n \"Probably a better + quality version of the video exists. The video has wide screen aspect ratio, + but is not an HD video.\",\n \"Uploaded video is spherical video.\",\n + \ \"Uploaded video has spatial audio.\",\n \"Uploaded + video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n + \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n + \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n + \ \"hdrVideo\"\n ]\n }\n },\n \"tagSuggestions\": + {\n \"description\": \"A list of keyword tags that could be added + to the video's metadata to increase the likelihood that users will locate + your video when searching or browsing on YouTube.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n + \ }\n }\n },\n \"description\": \"Specifies suggestions + on how to improve video content, including encoding hints, tag suggestions, + and editor suggestions.\",\n \"id\": \"VideoSuggestions\",\n \"type\": + \"object\"\n },\n \"I18nRegionListResponse\": {\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"description\": \"A + list of regions where YouTube is available. In this map, the i18n region ID + is the map key, and its value is the corresponding i18nRegion resource.\",\n \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n }\n },\n \"kind\": {\n \"default\": - \"youtube#thumbnailSetResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n + \"I18nRegion\"\n }\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#i18nRegionListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"I18nRegionListResponse\",\n + \ \"type\": \"object\"\n },\n \"VideoAbuseReportReasonListResponse\": + {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n \"type\": + \"object\",\n \"properties\": {\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ThumbnailSetResponse\"\n },\n \"SuperChatEventSnippet\": - {\n \"id\": \"SuperChatEventSnippet\",\n \"properties\": {\n \"supporterDetails\": - {\n \"description\": \"Details about the supporter.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"createdAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the event - occurred.\",\n \"format\": \"date-time\"\n },\n \"isSuperStickerEvent\": - {\n \"type\": \"boolean\",\n \"description\": \"True if - this event is a Super Sticker event.\"\n },\n \"commentText\": - {\n \"description\": \"The text contents of the comment left by the - user.\",\n \"type\": \"string\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\"\n },\n \"channelId\": - {\n \"description\": \"Channel id where the event occurred.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"format\": \"uint64\",\n \"description\": \"The purchase - amount, in micros of the purchase currency. e.g., 1 is represented as 1000000.\",\n - \ \"type\": \"string\"\n },\n \"displayString\": {\n - \ \"description\": \"A rendered string that displays the purchase - amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the - given language.\",\n \"type\": \"string\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\"\n },\n \"messageType\": {\n \"format\": - \"uint32\",\n \"description\": \"The tier for the paid message, which - is based on the amount of money spent to purchase the message.\",\n \"type\": - \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"SuperChatEvent\": - {\n \"type\": \"object\",\n \"id\": \"SuperChatEvent\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#superChatEvent\",\n + \"The `visitorId` identifies the visitor.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"VideoAbuseReportReason\"\n },\n \"description\": \"A list + of valid abuse reasons that are used with `video.ReportAbuse`.\",\n \"type\": + \"array\"\n }\n }\n },\n \"CommentThread\": {\n \"properties\": + {\n \"snippet\": {\n \"$ref\": \"CommentThreadSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the comment thread and also the top level comment.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"replies\": {\n \"description\": + \"The replies object contains a limited number of replies (if any) to the + top level comment found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#commentThread\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the comment thread.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"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.\",\n \"id\": + \"CommentThread\",\n \"type\": \"object\"\n },\n \"LiveChatFanFundingEventDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"amountDisplayString\": + {\n \"type\": \"string\",\n \"description\": \"A rendered + string that displays the fund amount and currency to the user.\"\n },\n + \ \"userComment\": {\n \"description\": \"The comment added + by the user to this fan funding event.\",\n \"type\": \"string\"\n + \ },\n \"amountMicros\": {\n \"description\": \"The + amount of the fund.\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n },\n \"currency\": {\n \"description\": + \"The currency in which the fund was made.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"LiveChatFanFundingEventDetails\"\n },\n + \ \"ChannelBannerResource\": {\n \"type\": \"object\",\n \"id\": + \"ChannelBannerResource\",\n \"description\": \"A channel banner returned + as the response to a channel_banner.insert call.\",\n \"properties\": + {\n \"kind\": {\n \"default\": \"youtube#channelBannerResource\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"$ref\": \"SuperChatEventSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the Super Chat event.\"\n - \ }\n },\n \"description\": \"A `__superChatEvent__` resource - represents a Super Chat purchase on a YouTube channel.\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"Playlist\": {\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#playlist\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - status information for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains information like video count.\",\n \"$ref\": - \"PlaylistContentDetails\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"player\": {\n \"description\": \"The player object contains - information that you would use to play the playlist in an embedded player.\",\n - \ \"$ref\": \"PlaylistPlayer\"\n },\n \"localizations\": - {\n \"description\": \"Localizations for different languages\",\n - \ \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"type\": \"object\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the playlist.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the playlist, such as its title and description.\",\n \"$ref\": - \"PlaylistSnippet\"\n }\n },\n \"description\": \"A *playlist* - resource represents a YouTube playlist. A playlist is a collection of videos - that can be viewed sequentially and shared with other users. A playlist can - contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"type\": \"object\",\n \"id\": - \"Playlist\"\n },\n \"LevelDetails\": {\n \"properties\": {\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - that should be used when referring to this level.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LevelDetails\"\n },\n \"InvideoPosition\": - {\n \"type\": \"object\",\n \"description\": \"Describes the spatial - position of a visual widget inside a video. It is a union of various position - types, out of which only will be set one.\",\n \"id\": \"InvideoPosition\",\n - \ \"properties\": {\n \"cornerPosition\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\",\n - \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ]\n },\n - \ \"type\": {\n \"enum\": [\n \"corner\"\n ],\n - \ \"enumDescriptions\": [\n \"\"\n ],\n \"description\": - \"Defines the position type.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ChannelToStoreLinkDetails\": {\n \"properties\": - {\n \"storeUrl\": {\n \"description\": \"Landing page of the - store.\",\n \"type\": \"string\"\n },\n \"merchantId\": - {\n \"type\": \"string\",\n \"description\": \"Google Merchant - Center id of the store.\",\n \"format\": \"uint64\"\n },\n - \ \"storeName\": {\n \"description\": \"Name of the store.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"id\": \"ChannelToStoreLinkDetails\"\n - \ },\n \"LiveStreamConfigurationIssue\": {\n \"id\": \"LiveStreamConfigurationIssue\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"type\": {\n + the fixed string \\\"youtube#channelBannerResource\\\".\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n + \ },\n \"url\": {\n \"description\": \"The URL of this + banner image.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"SubscriptionContentDetails\": {\n \"properties\": {\n \"totalItemCount\": + {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The approximate number of items that the subscription points to.\"\n },\n + \ \"activityType\": {\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n + \ \"all\",\n \"uploads\"\n ],\n \"type\": + \"string\",\n \"description\": \"The type of activity this subscription + is for (only uploads, everything).\",\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"newItemCount\": {\n \"format\": \"uint32\",\n \"description\": + \"The number of new items in the subscription since its content was last read.\",\n + \ \"type\": \"integer\"\n }\n },\n \"id\": \"SubscriptionContentDetails\",\n + \ \"type\": \"object\",\n \"description\": \"Details about the content + to witch a subscription refers.\"\n },\n \"ChannelStatistics\": {\n + \ \"type\": \"object\",\n \"description\": \"Statistics about a channel: + number of subscribers, number of videos in the channel, etc.\",\n \"properties\": + {\n \"commentCount\": {\n \"format\": \"uint64\",\n \"description\": + \"The number of comments for the channel.\",\n \"type\": \"string\"\n + \ },\n \"videoCount\": {\n \"format\": \"uint64\",\n + \ \"description\": \"The number of videos uploaded to the channel.\",\n + \ \"type\": \"string\"\n },\n \"hiddenSubscriberCount\": + {\n \"description\": \"Whether or not the number of subscribers is + shown for this user.\",\n \"type\": \"boolean\"\n },\n \"viewCount\": + {\n \"description\": \"The number of times the channel has been viewed.\",\n + \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n + \ \"subscriberCount\": {\n \"description\": \"The number of + subscribers that the channel has.\",\n \"format\": \"uint64\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"ChannelStatistics\"\n + \ },\n \"ActivityContentDetailsUpload\": {\n \"description\": \"Information + about the uploaded video.\",\n \"id\": \"ActivityContentDetailsUpload\",\n + \ \"properties\": {\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the uploaded video.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageListResponse\",\n + \ \"properties\": {\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"offlineAt\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The date and time when the underlying + stream went offline.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n + \ \"description\": \"General pagination information.\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"LiveChatMessage\"\n }\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n + \ \"default\": \"youtube#liveChatMessageListResponse\",\n \"type\": + \"string\"\n },\n \"pollingIntervalMillis\": {\n \"format\": + \"uint32\",\n \"description\": \"The amount of time the client should + wait before polling again.\",\n \"type\": \"integer\"\n }\n + \ }\n },\n \"LiveChatBan\": {\n \"type\": \"object\",\n \"description\": + \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\",\n + \ \"properties\": {\n \"id\": {\n \"description\": \"The + ID that YouTube assigns to uniquely identify the ban.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"description\": \"The `snippet` object contains basic details + about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveChatBan\"\n + \ }\n },\n \"id\": \"LiveChatBan\"\n },\n \"WatchSettings\": + {\n \"type\": \"object\",\n \"id\": \"WatchSettings\",\n \"description\": + \"Branding properties for the watch. All deprecated.\",\n \"properties\": + {\n \"featuredPlaylistId\": {\n \"type\": \"string\",\n \"description\": + \"An ID that uniquely identifies a playlist that displays next to the video + player.\"\n },\n \"backgroundColor\": {\n \"description\": + \"The text color for the video watch page's branded area.\",\n \"type\": + \"string\"\n },\n \"textColor\": {\n \"type\": \"string\",\n + \ \"description\": \"The background color for the video watch page's + branded area.\"\n }\n }\n },\n \"ChannelSectionSnippet\": + {\n \"type\": \"object\",\n \"id\": \"ChannelSectionSnippet\",\n + \ \"properties\": {\n \"type\": {\n \"description\": \"The + type of the channel section.\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n + \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n + \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n + \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n + \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n + \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n + \ \"subscriptions\"\n ],\n \"type\": \"string\",\n \ \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"style\": {\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n + \ \"horizontalRow\",\n \"verticalList\"\n ],\n + \ \"description\": \"The style of the channel section.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"defaultLanguage\": {\n + \ \"description\": \"The language of the channel section's default + title and description.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the channel that published the channel section.\",\n \"type\": \"string\"\n + \ },\n \"localized\": {\n \"description\": \"Localized + title, read-only.\",\n \"$ref\": \"ChannelSectionLocalization\"\n + \ },\n \"position\": {\n \"description\": \"The position + of the channel section in the channel.\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\"\n },\n \"title\": {\n \"description\": + \"The channel section's title for multiple_playlists and multiple_channels.\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Basic details about a channel section, including title, style and position.\"\n + \ },\n \"LiveChatSuperStickerDetails\": {\n \"properties\": {\n + \ \"amountDisplayString\": {\n \"type\": \"string\",\n \"description\": + \"A rendered string that displays the fund amount and currency to the user.\"\n + \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the purchase was made.\"\n },\n \"tier\": + {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The tier in which the amount belongs. Lower amounts belong to lower tiers. + The lowest tier is 1.\"\n },\n \"amountMicros\": {\n \"type\": + \"string\",\n \"description\": \"The amount purchased by the user, + in micros (1,750,000 micros = 1.75).\",\n \"format\": \"uint64\"\n + \ },\n \"superStickerMetadata\": {\n \"description\": + \"Information about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatSuperStickerDetails\"\n + \ },\n \"VideoAgeGating\": {\n \"type\": \"object\",\n \"id\": + \"VideoAgeGating\",\n \"properties\": {\n \"videoGameRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"anyone\",\n \"m15Plus\",\n + \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"description\": + \"Video game rating, if any.\"\n },\n \"restricted\": {\n \"description\": + \"Age-restricted trailers. For redband trailers and adult-rated video-games. + Only users aged 18+ can view the content. The the field is true the content + is restricted to viewers aged 18+. Otherwise The field won't be present.\",\n + \ \"type\": \"boolean\"\n },\n \"alcoholContent\": {\n + \ \"type\": \"boolean\",\n \"description\": \"Indicates whether + or not the video has alcoholic beverage content. Only users of legal purchasing + age in a particular country, as identified by ICAP, can view the content.\"\n + \ }\n }\n },\n \"VideoGetRatingResponse\": {\n \"type\": + \"object\",\n \"id\": \"VideoGetRatingResponse\",\n \"properties\": + {\n \"eventId\": {\n \"description\": \"Serialized EventId + of the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#videoGetRatingResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"VideoRating\"\n },\n \"description\": \"A list of ratings + that match the request criteria.\",\n \"type\": \"array\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": {\n + \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n + \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information about + the resource that was added to the playlist.\"\n },\n \"playlistId\": + {\n \"type\": \"string\",\n \"description\": \"The value + that YouTube uses to uniquely identify the playlist.\"\n },\n \"playlistItemId\": + {\n \"type\": \"string\",\n \"description\": \"ID of the + item within the playlist.\"\n }\n },\n \"description\": \"Information + about a new playlist item.\"\n },\n \"LiveStreamStatus\": {\n \"description\": + \"Brief description of the live stream status.\",\n \"properties\": {\n + \ \"healthStatus\": {\n \"$ref\": \"LiveStreamHealthStatus\",\n + \ \"description\": \"The health status of the stream.\"\n },\n + \ \"streamStatus\": {\n \"type\": \"string\",\n \"enum\": + [\n \"created\",\n \"ready\",\n \"active\",\n + \ \"inactive\",\n \"error\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ]\n }\n },\n \"id\": \"LiveStreamStatus\",\n + \ \"type\": \"object\"\n },\n \"LiveStreamConfigurationIssue\": + {\n \"type\": \"object\",\n \"id\": \"LiveStreamConfigurationIssue\",\n + \ \"properties\": {\n \"severity\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n + \ ],\n \"description\": \"How severe this issue is to the + stream.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"reason\": {\n \"type\": + \"string\",\n \"description\": \"The short-form reason for this issue.\"\n + \ },\n \"description\": {\n \"description\": \"The long-form + description of the issue and how to resolve it.\",\n \"type\": \"string\"\n + \ },\n \"type\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n - \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n - \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n - \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n - \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n - \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"description\": \"The kind of error happening.\",\n - \ \"type\": \"string\"\n },\n \"severity\": {\n \"enumDescriptions\": + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n + \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n + \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n + \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n + \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n + \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n + \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n + \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n + \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n + \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n + \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n + \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n + \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n + \ \"videoIngestionFasterThanRealtime\"\n ],\n \"description\": + \"The kind of error happening.\"\n }\n }\n },\n \"VideoProcessingDetailsProcessingProgress\": + {\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n \"properties\": + {\n \"timeLeftMs\": {\n \"type\": \"string\",\n \"description\": + \"An estimate of the amount of time, in millseconds, that YouTube needs to + finish processing the video.\",\n \"format\": \"uint64\"\n },\n + \ \"partsTotal\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"An estimate of the total number + of parts that need to be processed for the video. The number may be updated + with more precise estimates while YouTube processes the video.\"\n },\n + \ \"partsProcessed\": {\n \"description\": \"The number of + parts of the video that YouTube has already processed. You can estimate the + percentage of the video that YouTube has already processed by calculating: + 100 * parts_processed / parts_total Note that since the estimated number of + parts could increase without a corresponding increase in the number of parts + that have already been processed, it is possible that the calculated progress + could periodically decrease while YouTube processes a video.\",\n \"format\": + \"uint64\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"Video processing progress and completion + time estimate.\"\n },\n \"VideoAbuseReport\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": + \"string\"\n },\n \"comments\": {\n \"description\": + \"Additional comments regarding the abuse report.\",\n \"type\": + \"string\"\n },\n \"reasonId\": {\n \"type\": \"string\",\n + \ \"description\": \"The high-level, or primary, reason that the content + is abusive. The value is an abuse report reason ID.\"\n },\n \"language\": + {\n \"type\": \"string\",\n \"description\": \"The language + that the content was viewed in.\"\n },\n \"secondaryReasonId\": + {\n \"type\": \"string\",\n \"description\": \"The specific, + or secondary, reason that this content is abusive (if available). The value + is an abuse report reason ID that is a valid secondary reason for the primary + reason.\"\n }\n },\n \"id\": \"VideoAbuseReport\"\n },\n + \ \"Video\": {\n \"description\": \"A *video* resource represents a + YouTube video.\",\n \"id\": \"Video\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"topicDetails\": {\n \"description\": + \"The topicDetails object encapsulates information about Freebase topics associated + with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n + \ \"processingDetails\": {\n \"$ref\": \"VideoProcessingDetails\",\n + \ \"description\": \"The processingDetails object encapsulates information + about YouTube's progress in processing the uploaded video file. The properties + in the object identify the current processing status and an estimate of the + time remaining until YouTube finishes processing the video. This part also + indicates whether different types of data or content, such as file details + or thumbnail images, are available for the video. The processingProgress object + is designed to be polled so that the video uploaded can track the progress + that YouTube has made in processing the uploaded video file. This data can + only be retrieved by the video owner.\"\n },\n \"recordingDetails\": + {\n \"description\": \"The recordingDetails object encapsulates information + about the location, date and address where the video was recorded.\",\n \"$ref\": + \"VideoRecordingDetails\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#video\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\"\n + \ },\n \"player\": {\n \"description\": \"The player + object contains information that you would use to play the video in an embedded + player.\",\n \"$ref\": \"VideoPlayer\"\n },\n \"ageGating\": + {\n \"description\": \"Age restriction details related to a video. + This data can only be retrieved by the video owner.\",\n \"$ref\": + \"VideoAgeGating\"\n },\n \"fileDetails\": {\n \"description\": + \"The fileDetails object encapsulates information about the video file that + was uploaded to YouTube, including the file's resolution, duration, audio + and video codecs, stream bitrates, and more. This data can only be retrieved + by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n },\n + \ \"id\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.videos.update\"\n ]\n },\n + \ \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the video.\"\n },\n \"statistics\": + {\n \"$ref\": \"VideoStatistics\",\n \"description\": \"The + statistics object contains statistics about the video.\"\n },\n \"contentDetails\": + {\n \"description\": \"The contentDetails object contains information + about the video content, including the length of the video and its aspect + ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"suggestions\": + {\n \"$ref\": \"VideoSuggestions\",\n \"description\": \"The + suggestions object encapsulates suggestions that identify opportunities to + improve the video quality or the metadata for the uploaded video. This data + can only be retrieved by the video owner.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the video, such as its title, description, and category.\"\n },\n \"localizations\": + {\n \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n + \ },\n \"description\": \"The localizations object contains + localized versions of the basic details about the video, such as its title + and description.\",\n \"type\": \"object\"\n },\n \"liveStreamingDetails\": + {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": + \"The liveStreamingDetails object contains metadata about a live video broadcast. + The object will only be present in a video resource if the video is an upcoming, + live, or completed live broadcast.\"\n },\n \"projectDetails\": + {\n \"$ref\": \"VideoProjectDetails\",\n \"description\": + \"The projectDetails object contains information about the project specific + video metadata. b/157517979: This part was never populated after it was added. + However, it sees non-zero traffic because there is generated client code in + the wild that refers to it [1]. We keep this field and do NOT remove it because + otherwise V3 would return an error when this part gets requested [2]. [1] + https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n + \ },\n \"status\": {\n \"description\": \"The status + object contains information about the video's uploading, processing, and privacy + statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n \"monetizationDetails\": + {\n \"description\": \"The monetizationDetails object encapsulates + information about the monetization status of the video.\",\n \"$ref\": + \"VideoMonetizationDetails\"\n }\n }\n },\n \"LiveStreamSnippet\": + {\n \"properties\": {\n \"publishedAt\": {\n \"type\": + \"string\",\n \"description\": \"The date and time that the stream + was created.\",\n \"format\": \"date-time\"\n },\n \"description\": + {\n \"description\": \"The stream's description. The value cannot + be longer than 10000 characters.\",\n \"type\": \"string\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that is transmitting + the stream.\"\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The stream's title. The value must be between + 1 and 128 characters long.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n + \ ]\n }\n },\n \"isDefaultStream\": {\n \"type\": + \"boolean\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveStreamSnippet\"\n },\n \"LiveChatMessageAuthorDetails\": {\n \"id\": + \"LiveChatMessageAuthorDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The YouTube channel ID.\"\n },\n \"isChatOwner\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the author is the owner + of the live chat.\"\n },\n \"isChatSponsor\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the author is a sponsor + of the live chat.\"\n },\n \"isChatModerator\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the author is a moderator + of the live chat.\"\n },\n \"isVerified\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the author's identity has + been verified by YouTube.\"\n },\n \"displayName\": {\n \"description\": + \"The channel's display name.\",\n \"type\": \"string\"\n },\n + \ \"channelUrl\": {\n \"description\": \"The channel's URL.\",\n + \ \"type\": \"string\"\n },\n \"profileImageUrl\": {\n + \ \"description\": \"The channels's avatar URL.\",\n \"type\": + \"string\"\n }\n }\n },\n \"VideoProcessingDetails\": {\n + \ \"properties\": {\n \"processingIssuesAvailability\": {\n \"type\": + \"string\",\n \"description\": \"This value indicates whether the + video processing engine has generated suggestions that might improve YouTube's + ability to process the the video, warnings that explain video processing problems, + or errors that cause video processing problems. You can retrieve these suggestions + by requesting the suggestions part in your videos.list() request.\"\n },\n + \ \"thumbnailsAvailability\": {\n \"type\": \"string\",\n \"description\": + \"This value indicates whether thumbnail images have been generated for the + video.\"\n },\n \"processingStatus\": {\n \"description\": + \"The video's processing status. This value indicates whether YouTube was + able to process the video or if the video is still being processed.\",\n \"type\": + \"string\",\n \"enum\": [\n \"processing\",\n \"succeeded\",\n + \ \"failed\",\n \"terminated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"processingFailureReason\": {\n \"type\": + \"string\",\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n + \ \"streamingFailed\",\n \"other\"\n ],\n \"description\": + \"The reason that YouTube failed to process the video. This property will + only have a value if the processingStatus property's value is failed.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"editorSuggestionsAvailability\": + {\n \"type\": \"string\",\n \"description\": \"This value + indicates whether video editing suggestions, which might improve video quality + or the playback experience, are available for the video. You can retrieve + these suggestions by requesting the suggestions part in your videos.list() + request.\"\n },\n \"tagSuggestionsAvailability\": {\n \"type\": + \"string\",\n \"description\": \"This value indicates whether keyword + (tag) suggestions are available for the video. Tags can be added to a video's + metadata to make it easier for other users to find the video. You can retrieve + these suggestions by requesting the suggestions part in your videos.list() + request.\"\n },\n \"processingProgress\": {\n \"$ref\": + \"VideoProcessingDetailsProcessingProgress\",\n \"description\": + \"The processingProgress object contains information about the progress YouTube + has made in processing the video. The values are really only relevant if the + video's processing status is processing.\"\n },\n \"fileDetailsAvailability\": + {\n \"type\": \"string\",\n \"description\": \"This value + indicates whether file details are available for the uploaded video. You can + retrieve a video's file details by requesting the fileDetails part in your + videos.list() request.\"\n }\n },\n \"id\": \"VideoProcessingDetails\",\n + \ \"description\": \"Describes processing status and progress and availability + of some other Video resource parts.\",\n \"type\": \"object\"\n },\n + \ \"VideoSuggestionsTagSuggestion\": {\n \"description\": \"A single + tag suggestion with it's relevance information.\",\n \"properties\": + {\n \"categoryRestricts\": {\n \"type\": \"array\",\n \"description\": + \"A set of video categories for which the tag is relevant. You can use this + information to display appropriate tag suggestions based on the video category + that the video uploader associates with the video. By default, tag suggestions + are relevant for all categories if there are no restricts defined for the + keyword.\",\n \"items\": {\n \"type\": \"string\"\n }\n + \ },\n \"tag\": {\n \"description\": \"The keyword tag + suggested for the video.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"VideoSuggestionsTagSuggestion\"\n + \ },\n \"Member\": {\n \"id\": \"Member\",\n \"description\": + \"A *member* resource represents a member for a YouTube channel. A member + provides recurring monetary support to a creator and receives special benefits.\",\n + \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#member\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"MemberSnippet\",\n \"description\": \"The + snippet object contains basic details about the member.\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"TestItemTestItemSnippet\": {\n \"id\": + \"TestItemTestItemSnippet\",\n \"properties\": {},\n \"type\": \"object\"\n + \ },\n \"ChannelConversionPing\": {\n \"id\": \"ChannelConversionPing\",\n + \ \"properties\": {\n \"context\": {\n \"enum\": [\n \"subscribe\",\n + \ \"unsubscribe\",\n \"cview\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"Defines the context + of the ping.\"\n },\n \"conversionUrl\": {\n \"type\": + \"string\",\n \"description\": \"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.\"\n }\n },\n \"description\": + \"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.\",\n \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": + {\n \"id\": \"LiveBroadcastStatus\",\n \"type\": \"object\",\n \"description\": + \"Live broadcast state.\",\n \"properties\": {\n \"liveBroadcastPriority\": + {\n \"description\": \"Priority of the live broadcast event (internal + state).\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n + \ \"low\",\n \"normal\",\n \"high\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Low priority broadcast: for low view count HoAs or other low + priority broadcasts.\",\n \"Normal priority broadcast: for regular + HoAs and broadcasts.\",\n \"High priority broadcast: for high profile + HoAs, like PixelCorp ones.\"\n ]\n },\n \"privacyStatus\": + {\n \"type\": \"string\",\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"How severe this - issue is to the stream.\",\n \"enum\": [\n \"info\",\n - \ \"warning\",\n \"error\"\n ]\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The long-form description of the issue and how to resolve it.\"\n },\n - \ \"reason\": {\n \"description\": \"The short-form reason - for this issue.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"SuperStickerMetadata\": {\n \"properties\": {\n \"altTextLanguage\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the alt text is returned.\"\n },\n - \ \"stickerId\": {\n \"type\": \"string\",\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\"\n - \ },\n \"altText\": {\n \"description\": \"Internationalized - alt text that describes the sticker image and any animation associated with - it.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"SuperStickerMetadata\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"properties\": {\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The amount of the fund.\"\n },\n \"currency\": {\n \"type\": - \"string\",\n \"description\": \"The currency in which the fund was - made.\"\n },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the user to this fan funding - event.\"\n }\n },\n \"id\": \"LiveChatFanFundingEventDetails\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"description\": \"Details about a resource which was added to a - channel.\",\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was added to the channel.\"\n - \ }\n }\n },\n \"ChannelSettings\": {\n \"description\": - \"Branding properties for the channel view.\",\n \"id\": \"ChannelSettings\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"showRelatedChannels\": - {\n \"description\": \"Whether related channels should be proposed.\",\n - \ \"type\": \"boolean\"\n },\n \"unsubscribedTrailer\": - {\n \"type\": \"string\",\n \"description\": \"The trailer - of the channel, for users that are not subscribers.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the channel title.\"\n },\n \"defaultTab\": {\n \"type\": - \"string\",\n \"description\": \"Which content tab users should see - when viewing the channel.\"\n },\n \"keywords\": {\n \"type\": - \"string\",\n \"description\": \"Lists keywords associated with the - channel, comma-separated.\"\n },\n \"profileColor\": {\n \"type\": - \"string\",\n \"description\": \"A prominent color that can be rendered - on this channel page.\"\n },\n \"description\": {\n \"description\": - \"Specifies the channel description.\",\n \"type\": \"string\"\n - \ },\n \"featuredChannelsUrls\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The list of featured channels.\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\"\n },\n - \ \"country\": {\n \"description\": \"The country of the channel.\",\n - \ \"type\": \"string\"\n },\n \"moderateComments\": + \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"The broadcast's privacy status. Note that the + broadcast represents exactly one YouTube video, so the privacy settings are + identical to those supported for videos. In addition, you can set this field + by modifying the broadcast resource or by setting the privacyStatus field + of the corresponding video resource.\"\n },\n \"recordingStatus\": + {\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n + \ \"notRecording\",\n \"recording\",\n \"recorded\"\n + \ ],\n \"enumDescriptions\": [\n \"No value or + the value is unknown.\",\n \"The recording has not yet been started.\",\n + \ \"The recording is currently on.\",\n \"The recording + is completed, and cannot be started again.\"\n ],\n \"type\": + \"string\",\n \"description\": \"The broadcast's recording status.\"\n + \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This field will be set to True if the creator + declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"lifeCycleStatus\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"No + value or the value is unknown.\",\n \"Incomplete settings, but + otherwise valid\",\n \"Complete settings\",\n \"Visible + only to partner, may need special UI treatment\",\n \"Viper is + recording; this means the \\\"clock\\\" is running\",\n \"The broadcast + is finished.\",\n \"This broadcast was removed by admin action\",\n + \ \"Transition into TESTING has been requested\",\n \"Transition + into LIVE has been requested\"\n ],\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n + \ \"created\",\n \"ready\",\n \"testing\",\n + \ \"live\",\n \"complete\",\n \"revoked\",\n + \ \"testStarting\",\n \"liveStarting\"\n ],\n + \ \"description\": \"The broadcast's status. The status can be updated + using the API's liveBroadcasts.transition method.\"\n },\n \"madeForKids\": {\n \"type\": \"boolean\",\n \"description\": \"Whether - user-submitted comments left on the channel page need to be approved by the - channel owner to be publicly visible.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"type\": \"string\",\n \"description\": \"The ID for - a Google Analytics account to track and measure traffic to the channels.\"\n - \ },\n \"showBrowseView\": {\n \"description\": \"Whether - the tab to browse the videos should be displayed.\",\n \"type\": - \"boolean\"\n },\n \"featuredChannelsTitle\": {\n \"type\": - \"string\",\n \"description\": \"Title for the featured channels - tab.\"\n }\n }\n },\n \"I18nRegionSnippet\": {\n \"type\": - \"object\",\n \"description\": \"Basic details about an i18n region, - such as region code and human-readable name.\",\n \"id\": \"I18nRegionSnippet\",\n - \ \"properties\": {\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the region.\"\n },\n - \ \"gl\": {\n \"type\": \"string\",\n \"description\": - \"The region code as a 2-letter ISO country code.\"\n }\n }\n - \ },\n \"SearchListResponse\": {\n \"type\": \"object\",\n \"id\": - \"SearchListResponse\",\n \"properties\": {\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"regionCode\": {\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"SearchResult\"\n },\n - \ \"description\": \"Pagination information for token pagination.\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#searchListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#searchListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"MembershipsDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"membershipsDuration\": {\n \"$ref\": \"MembershipsDuration\",\n - \ \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\"\n },\n \"highestAccessibleLevel\": - {\n \"description\": \"Id of the highest level that the user has - access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"highestAccessibleLevelDisplayName\": {\n \"description\": - \"Display name for the highest level that the user has access to at the moment.\",\n - \ \"type\": \"string\"\n },\n \"accessibleLevels\": - {\n \"description\": \"Ids of all levels that the user has access - to. This includes the currently active level and all other levels that are - included because of a higher purchase.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"membershipsDurationAtLevels\": - {\n \"type\": \"array\",\n \"description\": \"Data about - memberships duration on particular pricing levels.\",\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n }\n }\n - \ },\n \"id\": \"MembershipsDetails\"\n },\n \"ChannelProfileDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"channelId\": {\n \"description\": \"The - YouTube channel ID.\",\n \"type\": \"string\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelProfileDetails\"\n },\n \"ActivitySnippet\": - {\n \"id\": \"ActivitySnippet\",\n \"description\": \"Basic details - about an activity, including title, description, thumbnails, activity type - and group. Next ID: 12\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the resource primarily associated with the activity. @mutable youtube.activities.insert\"\n - \ },\n \"type\": {\n \"type\": \"string\",\n \"enumDescriptions\": + the broadcast is made for kids or not, decided by YouTube instead of the creator. + This field is read only.\"\n }\n }\n },\n \"MembershipsDuration\": + {\n \"properties\": {\n \"memberSince\": {\n \"type\": + \"string\",\n \"description\": \"The date and time when the user + became a continuous member across all levels.\"\n },\n \"memberTotalDurationMonths\": + {\n \"format\": \"int32\",\n \"description\": \"The cumulative + time the user has been a member across all levels in complete months (the + time is rounded down to the nearest integer).\",\n \"type\": \"integer\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"MembershipsDuration\"\n + \ },\n \"Cuepoint\": {\n \"type\": \"object\",\n \"description\": + \"Note that there may be a 5-second end-point resolution issue. For instance, + if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 + or 22:03:30, depending. This is an artifact of HLS.\",\n \"properties\": + {\n \"id\": {\n \"description\": \"The identifier for cuepoint + resource.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\"\n },\n \"durationSecs\": {\n + \ \"description\": \"The duration of this cuepoint.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"cueType\": + {\n \"enum\": [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ]\n },\n \"insertionOffsetTimeMs\": + {\n \"type\": \"string\",\n \"format\": \"int64\",\n \"description\": + \"The time when the cuepoint should be inserted by offset to the broadcast + actual start time.\"\n },\n \"walltimeMs\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + wall clock time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms + and walltime_ms may be set at a time.\"\n }\n },\n \"id\": + \"Cuepoint\"\n },\n \"VideoFileDetailsVideoStream\": {\n \"properties\": + {\n \"widthPixels\": {\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"description\": \"The encoded video content's width + in pixels. You can calculate the video's encoding aspect ratio as width_pixels + / height_pixels.\"\n },\n \"codec\": {\n \"type\": + \"string\",\n \"description\": \"The video codec that the stream + uses.\"\n },\n \"heightPixels\": {\n \"type\": \"integer\",\n + \ \"description\": \"The encoded video content's height in pixels.\",\n + \ \"format\": \"uint32\"\n },\n \"vendor\": {\n \"description\": + \"A value that uniquely identifies a video vendor. Typically, the value is + a four-letter vendor code.\",\n \"type\": \"string\"\n },\n + \ \"bitrateBps\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"The video stream's bitrate, in bits + per second.\"\n },\n \"rotation\": {\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n - \ \"like\",\n \"favorite\",\n \"comment\",\n - \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n - \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ],\n \"description\": \"The - type of activity that the resource describes.\"\n },\n \"thumbnails\": - {\n \"description\": \"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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel responsible for this activity\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - title of the resource primarily associated with the activity.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel associated with the activity.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the video was uploaded.\",\n \"format\": \"date-time\"\n - \ },\n \"groupId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReportReason\": - {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"description\": \"The ID of this abuse report reason.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the abuse report reason.\",\n \"$ref\": \"VideoAbuseReportReasonSnippet\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#videoAbuseReportReason\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n - \ }\n },\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\",\n \"id\": - \"VideoAbuseReportReason\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"description\": \"Information that identifies the recommended resource.\",\n - \ \"properties\": {\n \"seedResourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The seedResourceId object contains - information about the resource that caused the recommendation.\"\n },\n - \ \"reason\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The reason that the resource is recommended to the user.\",\n \"type\": - \"string\",\n \"enum\": [\n \"reasonUnspecified\",\n \"videoFavorited\",\n - \ \"videoLiked\",\n \"videoWatched\"\n ]\n },\n - \ \"resourceId\": {\n \"description\": \"The resourceId object - contains information that identifies the recommended resource.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"type\": \"object\"\n },\n \"MemberSnippet\": {\n \"type\": - \"object\",\n \"id\": \"MemberSnippet\",\n \"properties\": {\n \"membershipsDetails\": - {\n \"$ref\": \"MembershipsDetails\",\n \"description\": - \"Details about the user's membership.\"\n },\n \"memberDetails\": - {\n \"description\": \"Details about the member.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering memberships.\",\n \"type\": - \"string\"\n }\n }\n },\n \"I18nLanguageListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ \"\"\n ],\n \"enum\": [\n \"none\",\n + \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n + \ \"other\"\n ],\n \"description\": \"The amount + that YouTube needs to rotate the original source content to properly display + the video.\",\n \"type\": \"string\"\n },\n \"aspectRatio\": + {\n \"description\": \"The video content's display aspect ratio, + which specifies the aspect ratio in which the video should be displayed.\",\n + \ \"format\": \"double\",\n \"type\": \"number\"\n },\n + \ \"frameRateFps\": {\n \"format\": \"double\",\n \"type\": + \"number\",\n \"description\": \"The video stream's frame rate, in + frames per second.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"VideoFileDetailsVideoStream\",\n \"description\": \"Information about + a video stream.\"\n },\n \"ChannelBrandingSettings\": {\n \"description\": + \"Branding properties of a YouTube channel.\",\n \"properties\": {\n + \ \"watch\": {\n \"description\": \"Branding properties for + the watch page.\",\n \"$ref\": \"WatchSettings\"\n },\n \"hints\": + {\n \"type\": \"array\",\n \"description\": \"Additional + experimental branding properties.\",\n \"items\": {\n \"$ref\": + \"PropertyValue\"\n }\n },\n \"image\": {\n \"$ref\": + \"ImageSettings\",\n \"description\": \"Branding properties for branding + images.\"\n },\n \"channel\": {\n \"description\": + \"Branding properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelBrandingSettings\"\n + \ },\n \"LiveChatModeratorListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveChatModeratorListResponse\",\n \"properties\": {\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\"\n \ },\n \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - supported i18n languages. In this map, the i18n language ID is the map key, - and its value is the corresponding i18nLanguage resource.\",\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n }\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#i18nLanguageListResponse\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"I18nLanguageListResponse\"\n - \ },\n \"ActivityContentDetailsPromotedItem\": {\n \"description\": - \"Details about a resource which is being promoted.\",\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the promoted video.\"\n },\n - \ \"impressionUrl\": {\n \"description\": \"The list of impression - URLs. The client should ping all of these URLs to indicate that the user was - shown this promoted item.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"forecastingUrl\": - {\n \"description\": \"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.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"clickTrackingUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user clicked through on this promoted item.\",\n \"type\": - \"string\"\n },\n \"customCtaButtonText\": {\n \"type\": - \"string\",\n \"description\": \"The custom call-to-action button - text. If specified, it will override the default button text for the cta_type.\"\n - \ },\n \"descriptionText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text description to accompany the promoted - item.\"\n },\n \"creativeViewUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should ping to indicate that - the user was shown this promoted item.\"\n },\n \"adTag\": {\n - \ \"type\": \"string\",\n \"description\": \"The URL the - client should fetch to request a promoted item.\"\n },\n \"ctaType\": - {\n \"description\": \"The type of call-to-action, a message to the - user indicating action that can be taken.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ]\n },\n \"destinationUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should direct the user to, if the user chooses to visit the advertiser's - website.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a video category, such as its localized title.\",\n \"properties\": {\n - \ \"secondaryReasons\": {\n \"items\": {\n \"$ref\": - \"VideoAbuseReportSecondaryReason\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The secondary reasons associated with this reason, - if any are available. (There might be 0 or more.)\"\n },\n \"label\": - {\n \"type\": \"string\",\n \"description\": \"The localized - label belonging to this abuse report reason.\"\n }\n },\n \"id\": - \"VideoAbuseReportReasonSnippet\"\n },\n \"Caption\": {\n \"description\": - \"A *caption* resource represents a YouTube caption track. A caption track - is associated with exactly one YouTube video.\",\n \"id\": \"Caption\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#caption\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"CaptionSnippet\",\n \"description\": \"The snippet object contains - basic details about the caption.\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the caption track.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"TokenPagination\": {\n - \ \"description\": \"Stub token pagination template to suppress results.\",\n - \ \"properties\": {},\n \"id\": \"TokenPagination\",\n \"type\": - \"object\"\n },\n \"ChannelSectionListResponse\": {\n \"id\": \"ChannelSectionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"description\": \"A list of ChannelSections that match the request - criteria.\",\n \"type\": \"array\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelListResponse\": {\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#channelListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n + \"string\"\n },\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"LiveChatModerator\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of moderators that match the request criteria.\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Channel\"\n }\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelListResponse\"\n },\n \"PlaylistContentDetails\": {\n \"id\": - \"PlaylistContentDetails\",\n \"properties\": {\n \"itemCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoListResponse\": {\n \"id\": \"VideoListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"pageInfo\": + pageToken parameter to retrieve the next page in the result set.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Video\"\n - \ },\n \"type\": \"array\"\n },\n \"kind\": + pagination information.\"\n }\n }\n },\n \"LiveChatMemberMilestoneChatDetails\": + {\n \"properties\": {\n \"memberLevelName\": {\n \"description\": + \"The name of the Level at which the viever is a member. The Level names are + defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\",\n \"type\": \"string\"\n },\n + \ \"memberMonth\": {\n \"format\": \"uint32\",\n \"type\": + \"integer\",\n \"description\": \"The total amount of months (rounded + up) the viewer has been a member that granted them this Member Milestone Chat. + This is the same number of months as is being displayed to YouTube users.\"\n + \ },\n \"userComment\": {\n \"description\": \"The comment + added by the member to this Member Milestone Chat. This field is empty for + messages without a comment from the member.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatMemberMilestoneChatDetails\"\n + \ },\n \"I18nLanguageSnippet\": {\n \"type\": \"object\",\n \"description\": + \"Basic details about an i18n language, such as language code and human-readable + name.\",\n \"id\": \"I18nLanguageSnippet\",\n \"properties\": {\n + \ \"hl\": {\n \"type\": \"string\",\n \"description\": + \"A short BCP-47 code that uniquely identifies a language.\"\n },\n + \ \"name\": {\n \"description\": \"The human-readable name + of the language in the language itself.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"SubscriptionListResponse\": {\n \"id\": + \"SubscriptionListResponse\",\n \"type\": \"object\",\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"Subscription\"\n },\n \"description\": + \"A list of subscriptions that match the request criteria.\",\n \"type\": + \"array\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#subscriptionListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n }\n }\n },\n \"InvideoTiming\": + {\n \"type\": \"object\",\n \"id\": \"InvideoTiming\",\n \"properties\": + {\n \"offsetMs\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"Defines the time at which the promotion + will appear. Depending on the value of type the value of the offsetMs field + will represent a time offset from the start or from the end of the video, + expressed in milliseconds.\"\n },\n \"durationMs\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"Defines the duration in milliseconds for which the promotion should be displayed. + If missing, the client should use the default.\"\n },\n \"type\": + {\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n + \ ],\n \"description\": \"Describes a timing type. If the + value is offsetFromStart, then the offsetMs field represents an offset from + the start of the video. If the value is offsetFromEnd, then the offsetMs field + represents an offset from the end of the video.\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"type\": + \"string\"\n }\n },\n \"description\": \"Describes a temporal + position of a visual widget inside a video.\"\n },\n \"SearchResult\": + {\n \"id\": \"SearchResult\",\n \"properties\": {\n \"kind\": {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n \"default\": - \"youtube#videoListResponse\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"CaptionListResponse\": - {\n \"type\": \"object\",\n \"id\": \"CaptionListResponse\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#captionListResponse\",\n \"type\": + Value: the fixed string \\\"youtube#searchResult\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#searchResult\"\n },\n + \ \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The id object contains information that can be used to uniquely identify + the resource that matches the search request.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"SearchResultSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + a search result, such as its title or description. For example, if the search + result is a video, then the title will be the video's title and the description + will be the video's description.\"\n }\n },\n \"description\": + \"A search result contains information about a YouTube video, channel, or + playlist that matches the search parameters specified in an API request. While + a search result points to a uniquely identifiable resource, like a video, + it does not have its own persistent data.\",\n \"type\": \"object\"\n + \ },\n \"MemberSnippet\": {\n \"properties\": {\n \"creatorChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The id of + the channel that's offering memberships.\"\n },\n \"memberDetails\": + {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": + \"Details about the member.\"\n },\n \"membershipsDetails\": + {\n \"$ref\": \"MembershipsDetails\",\n \"description\": + \"Details about the user's membership.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"MemberSnippet\"\n },\n \"ThumbnailDetails\": + {\n \"properties\": {\n \"standard\": {\n \"$ref\": \"Thumbnail\",\n + \ \"description\": \"The standard quality image for this resource.\"\n + \ },\n \"maxres\": {\n \"description\": \"The maximum + resolution quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n + \ },\n \"medium\": {\n \"$ref\": \"Thumbnail\",\n \"description\": + \"The medium quality image for this resource.\"\n },\n \"default\": + {\n \"description\": \"The default image for this resource.\",\n + \ \"$ref\": \"Thumbnail\"\n },\n \"high\": {\n \"description\": + \"The high quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n + \ }\n },\n \"id\": \"ThumbnailDetails\",\n \"description\": + \"Internal representation of thumbnails for a YouTube resource.\",\n \"type\": + \"object\"\n },\n \"CommentListResponse\": {\n \"id\": \"CommentListResponse\",\n + \ \"properties\": {\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n + \ \"default\": \"youtube#commentListResponse\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"Comment\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of comments that match the request criteria.\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"LevelDetails\": {\n \"type\": + \"object\",\n \"properties\": {\n \"displayName\": {\n \"type\": + \"string\",\n \"description\": \"The name that should be used when + referring to this level.\"\n }\n },\n \"id\": \"LevelDetails\"\n + \ },\n \"PlaylistItem\": {\n \"description\": \"A *playlistItem* + resource identifies another resource, such as a video, that is included in + a playlist. In addition, the playlistItem resource contains details about + the included resource that pertain specifically to how that resource is used + in that playlist. YouTube uses playlists to identify special collections of + videos for a channel, such as: - uploaded videos - favorite videos - positively + rated (liked) videos - watch history - watch later To be more specific, these + lists are associated with a channel, which is a collection of a person, group, + or company's videos, playlists, and other YouTube information. You can retrieve + the playlist IDs for each of these lists from the channel resource for a given + channel. You can then use the playlistItems.list method to retrieve any of + those lists. You can also add or remove items from those lists by calling + the playlistItems.insert and playlistItems.delete methods. For example, if + a user gives a positive rating to a video, you would insert that video into + the liked videos playlist for that user's channel.\",\n \"properties\": + {\n \"kind\": {\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#playlistItem\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the playlist item.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the playlist item, such as its title and position in the playlist.\",\n + \ \"$ref\": \"PlaylistItemSnippet\"\n },\n \"contentDetails\": + {\n \"description\": \"The contentDetails object is included in the + resource if the included item is a YouTube video. The object contains additional + information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n + \ },\n \"status\": {\n \"description\": \"The status + object contains information about the playlist item's privacy status.\",\n + \ \"$ref\": \"PlaylistItemStatus\"\n }\n },\n \"id\": + \"PlaylistItem\",\n \"type\": \"object\"\n },\n \"LocalizedProperty\": + {\n \"type\": \"object\",\n \"properties\": {\n \"default\": + {\n \"type\": \"string\"\n },\n \"defaultLanguage\": + {\n \"description\": \"The language of the default property.\",\n + \ \"$ref\": \"LanguageTag\"\n },\n \"localized\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"LocalizedString\"\n }\n }\n },\n \"id\": \"LocalizedProperty\"\n + \ },\n \"ChannelSnippet\": {\n \"type\": \"object\",\n \"properties\": + {\n \"country\": {\n \"description\": \"The country of the + channel.\",\n \"type\": \"string\"\n },\n \"thumbnails\": + {\n \"description\": \"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. When displaying thumbnails in your application, make sure that + your code uses the image URLs exactly as they are returned in API responses. + For example, your application should not use the http domain instead of the + https domain in a URL returned in an API response. Beginning in July 2018, + channel thumbnail URLs will only be available in the https domain, which is + how the URLs appear in API responses. After that time, you might see broken + images in your application if it tries to load YouTube images from the http + domain. Thumbnail images might be empty for newly created channels and might + take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"publishedAt\": {\n \"description\": \"The date + and time that the channel was created.\",\n \"format\": \"date-time\",\n + \ \"type\": \"string\"\n },\n \"localized\": {\n \"$ref\": + \"ChannelLocalization\",\n \"description\": \"Localized title and + description, read-only.\"\n },\n \"title\": {\n \"description\": + \"The channel's title.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The language + of the channel's default title and description.\"\n },\n \"customUrl\": + {\n \"description\": \"The custom url of the channel.\",\n \"type\": + \"string\"\n },\n \"description\": {\n \"description\": + \"The description of the channel.\",\n \"type\": \"string\"\n }\n + \ },\n \"description\": \"Basic details about a channel, including + title, description and thumbnails.\",\n \"id\": \"ChannelSnippet\"\n + \ },\n \"VideoCategorySnippet\": {\n \"properties\": {\n \"title\": + {\n \"description\": \"The video category's title.\",\n \"type\": + \"string\"\n },\n \"assignable\": {\n \"type\": \"boolean\"\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n \"default\": + \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"description\": \"The YouTube channel + that created the video category.\"\n }\n },\n \"id\": \"VideoCategorySnippet\",\n + \ \"description\": \"Basic details about a video category, such as its + localized title.\",\n \"type\": \"object\"\n },\n \"LiveChatMessageDeletedDetails\": + {\n \"properties\": {\n \"deletedMessageId\": {\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveChatMessageDeletedDetails\"\n },\n \"VideoAbuseReportReasonSnippet\": + {\n \"description\": \"Basic details about a video category, such as + its localized title.\",\n \"properties\": {\n \"label\": {\n \"type\": + \"string\",\n \"description\": \"The localized label belonging to + this abuse report reason.\"\n },\n \"secondaryReasons\": {\n + \ \"description\": \"The secondary reasons associated with this reason, + if any are available. (There might be 0 or more.)\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n + \ }\n }\n },\n \"type\": \"object\",\n \"id\": + \"VideoAbuseReportReasonSnippet\"\n },\n \"RelatedEntity\": {\n \"type\": + \"object\",\n \"properties\": {\n \"entity\": {\n \"$ref\": + \"Entity\"\n }\n },\n \"id\": \"RelatedEntity\"\n },\n + \ \"Activity\": {\n \"type\": \"object\",\n \"description\": \"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.\",\n + \ \"id\": \"Activity\",\n \"properties\": {\n \"contentDetails\": + {\n \"$ref\": \"ActivityContentDetails\",\n \"description\": + \"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.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#activity\",\n \"type\": \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Caption\"\n },\n \"description\": \"A list of captions - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"PlaylistItemListResponse\": - {\n \"id\": \"PlaylistItemListResponse\",\n \"properties\": {\n + this is. Value: the fixed string \\\"youtube#activity\\\".\"\n },\n + \ \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n \"description\": + \"The snippet object contains basic details about the activity, including + the activity's type and group ID.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the activity.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource\"\n }\n + \ }\n },\n \"ActivityContentDetailsPromotedItem\": {\n \"description\": + \"Details about a resource which is being promoted.\",\n \"properties\": + {\n \"impressionUrl\": {\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"The list of impression URLs. The client should ping all of these URLs to + indicate that the user was shown this promoted item.\"\n },\n \"ctaType\": + {\n \"description\": \"The type of call-to-action, a message to the + user indicating action that can be taken.\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n + \ \"visitAdvertiserSite\"\n ]\n },\n \"descriptionText\": + {\n \"description\": \"The text description to accompany the promoted + item.\",\n \"type\": \"string\"\n },\n \"customCtaButtonText\": + {\n \"description\": \"The custom call-to-action button text. If + specified, it will override the default button text for the cta_type.\",\n + \ \"type\": \"string\"\n },\n \"forecastingUrl\": {\n + \ \"description\": \"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.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n },\n \"creativeViewUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL the + client should ping to indicate that the user was shown this promoted item.\"\n + \ },\n \"destinationUrl\": {\n \"description\": \"The + URL the client should direct the user to, if the user chooses to visit the + advertiser's website.\",\n \"type\": \"string\"\n },\n \"adTag\": + {\n \"type\": \"string\",\n \"description\": \"The URL the + client should fetch to request a promoted item.\"\n },\n \"videoId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the promoted video.\",\n \"type\": \"string\"\n },\n \"clickTrackingUrl\": + {\n \"description\": \"The URL the client should ping to indicate + that the user clicked through on this promoted item.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"ActivityContentDetailsPromotedItem\",\n + \ \"type\": \"object\"\n },\n \"PlaylistItemSnippet\": {\n \"id\": + \"PlaylistItemSnippet\",\n \"description\": \"Basic details about a playlist, + including title, description and thumbnails. Basic details of a YouTube Playlist + item provided by the author. Next ID: 15\",\n \"properties\": {\n \"thumbnails\": + {\n \"description\": \"A map of thumbnail images associated with + the playlist item. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n + \ \"description\": {\n \"type\": \"string\",\n \"description\": + \"The item's description.\"\n },\n \"videoOwnerChannelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel this video belongs to.\"\n },\n \"videoOwnerChannelId\": + {\n \"type\": \"string\",\n \"description\": \"Channel id + for the channel this video belongs to.\"\n },\n \"title\": {\n + \ \"description\": \"The item's title.\",\n \"type\": \"string\"\n + \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n + \ \"youtube.playlistItems.update\"\n ]\n },\n + \ \"description\": \"The id object contains information that can be + used to uniquely identify the resource that is included in the playlist as + the playlist item.\"\n },\n \"position\": {\n \"description\": + \"The order in which the item appears in the playlist. The value uses a zero-based + index, so the first item has a position of 0, the second item has a position + of 1, and so forth.\",\n \"format\": \"uint32\",\n \"type\": + \"integer\"\n },\n \"playlistId\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.playlistItems.insert\",\n + \ \"youtube.playlistItems.update\"\n ]\n },\n + \ \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify thGe playlist that the playlist item is + in.\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel title for the channel that the playlist + item belongs to.\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time that the item was added to the playlist.\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the user that added the item + to the playlist.\"\n }\n },\n \"type\": \"object\"\n },\n + \ \"LiveChatModerator\": {\n \"description\": \"A *liveChatModerator* + resource represents a moderator for a YouTube live chat. A chat moderator + has the ability to ban/unban users from a chat, remove message, etc.\",\n + \ \"properties\": {\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the moderator.\",\n \"$ref\": + \"LiveChatModeratorSnippet\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveChatModerator\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely + identify the moderator.\"\n }\n },\n \"id\": \"LiveChatModerator\",\n + \ \"type\": \"object\"\n },\n \"VideoSnippet\": {\n \"properties\": + {\n \"localized\": {\n \"description\": \"Localized snippet + selected with the hl parameter. If no such localization exists, this field + is populated with the default snippet. (Read-only)\",\n \"$ref\": + \"VideoLocalization\"\n },\n \"defaultAudioLanguage\": {\n \"type\": + \"string\",\n \"description\": \"The default_audio_language property + specifies the language spoken in the video's default audio track.\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that the video + was uploaded to.\"\n },\n \"liveBroadcastContent\": {\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been completed.\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" + if the video is not an upcoming/active live broadcast.\",\n \"enum\": + [\n \"none\",\n \"upcoming\",\n \"live\",\n + \ \"completed\"\n ]\n },\n \"thumbnails\": + {\n \"description\": \"A map of thumbnail images associated with + the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"categoryId\": + {\n \"type\": \"string\",\n \"description\": \"The YouTube + video category associated with the video.\"\n },\n \"tags\": + {\n \"description\": \"A list of keyword tags associated with the + video. Tags may contain spaces.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The language + of the videos's default snippet.\"\n },\n \"description\": {\n + \ \"description\": \"The video's description. @mutable youtube.videos.insert + youtube.videos.update\",\n \"type\": \"string\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the video was uploaded.\"\n + \ },\n \"channelTitle\": {\n \"description\": \"Channel + title for the channel that the video belongs to.\",\n \"type\": \"string\"\n + \ },\n \"title\": {\n \"description\": \"The video's + title. @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Basic details about + a video, including title, description, uploader, thumbnails and category.\",\n + \ \"id\": \"VideoSnippet\",\n \"type\": \"object\"\n },\n \"AbuseType\": + {\n \"id\": \"AbuseType\",\n \"properties\": {\n \"id\": + {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"MemberListResponse\": {\n \"properties\": {\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n + \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#memberListResponse\\\".\",\n \"default\": + \"youtube#memberListResponse\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"Member\"\n },\n \"type\": \"array\",\n + \ \"description\": \"A list of members that match the request criteria.\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n },\n \"id\": \"MemberListResponse\",\n + \ \"type\": \"object\"\n },\n \"MembershipsLevelListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"items\": + {\n \"type\": \"array\",\n \"description\": \"A list of + pricing levels offered by a creator to the fans.\",\n \"items\": + {\n \"$ref\": \"MembershipsLevel\"\n }\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n \ \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"type\": \"string\",\n \"default\": - \"youtube#playlistItemListResponse\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of playlist items that match - the request criteria.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"I18nRegionListResponse\": - {\n \"id\": \"I18nRegionListResponse\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#i18nRegionListResponse\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"description\": \"A list of regions where YouTube is available. - In this map, the i18n region ID is the map key, and its value is the corresponding - i18nRegion resource.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"I18nRegion\"\n }\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"type\": \"object\"\n },\n \"IngestionInfo\": - {\n \"description\": \"Describes information necessary for ingesting - an RTMP, HTTP, or SRT stream.\",\n \"properties\": {\n \"streamName\": - {\n \"type\": \"string\",\n \"description\": \"The stream - name that YouTube assigns to the video stream.\"\n },\n \"rtmpsIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of ingestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"backupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The backup - ingestion URL that you should use to stream video to YouTube. You have the - option of simultaneously streaming the content that you are sending to the - ingestionAddress to this URL.\"\n },\n \"rtmpsBackupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of backupIngestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"ingestionAddress\": - {\n \"description\": \"The primary ingestion URL that you should - use to stream video to YouTube. You must stream video to this URL. Depending - on which application or tool you use to encode your video stream, you may - need to enter the stream URL and stream name separately or you may need to - concatenate them in the following format: *STREAM_URL/STREAM_NAME* \",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"IngestionInfo\"\n },\n \"VideoAbuseReportReasonListResponse\": {\n - \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of valid abuse reasons that are used with - `video.ReportAbuse`.\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ }\n },\n \"visitorId\": {\n \"description\": - \"The `visitorId` identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n },\n - \ \"id\": \"VideoAbuseReportReasonListResponse\",\n \"type\": \"object\"\n - \ },\n \"AbuseReport\": {\n \"type\": \"object\",\n \"id\": - \"AbuseReport\",\n \"properties\": {\n \"description\": {\n \"type\": - \"string\"\n },\n \"relatedEntities\": {\n \"items\": - {\n \"$ref\": \"RelatedEntity\"\n },\n \"type\": - \"array\"\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n - \ },\n \"abuseTypes\": {\n \"items\": {\n \"$ref\": - \"AbuseType\"\n },\n \"type\": \"array\"\n }\n }\n - \ },\n \"LiveStreamListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"default\": \"youtube#membershipsLevelListResponse\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\"\n + \ },\n \"Entity\": {\n \"type\": \"object\",\n \"id\": \"Entity\",\n + \ \"properties\": {\n \"url\": {\n \"type\": \"string\"\n + \ },\n \"typeId\": {\n \"type\": \"string\"\n },\n + \ \"id\": {\n \"type\": \"string\"\n }\n }\n },\n + \ \"CommentThreadReplies\": {\n \"description\": \"Comments written + in (direct or indirect) reply to the top level comment.\",\n \"type\": + \"object\",\n \"id\": \"CommentThreadReplies\",\n \"properties\": + {\n \"comments\": {\n \"description\": \"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.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"Comment\"\n }\n }\n }\n },\n \"VideoAbuseReportReason\": + {\n \"properties\": {\n \"snippet\": {\n \"description\": + \"The `snippet` object contains basic details about the abuse report reason.\",\n + \ \"$ref\": \"VideoAbuseReportReasonSnippet\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n + \ \"default\": \"youtube#videoAbuseReportReason\"\n },\n \"etag\": {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"nextPageToken\": {\n \"type\": + resource.\"\n },\n \"id\": {\n \"description\": \"The + ID of this abuse report reason.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"VideoAbuseReportReason\",\n \"type\": \"object\",\n + \ \"description\": \"A `__videoAbuseReportReason__` resource identifies + a reason that a video could be reported as abusive. Video abuse report reasons + are used with `video.ReportAbuse`.\"\n },\n \"ActivityContentDetailsBulletin\": + {\n \"type\": \"object\",\n \"description\": \"Details about a channel + bulletin post.\",\n \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + associated with a bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": + \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsBulletin\"\n + \ },\n \"LiveStreamHealthStatus\": {\n \"type\": \"object\",\n \"properties\": + {\n \"status\": {\n \"description\": \"The status code of + this stream\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"good\",\n + \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n + \ ]\n },\n \"configurationIssues\": {\n \"description\": + \"The configurations issues on this stream\",\n \"items\": {\n \"$ref\": + \"LiveStreamConfigurationIssue\"\n },\n \"type\": \"array\"\n + \ },\n \"lastUpdateTimeSeconds\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The last time + this status was updated (in seconds)\"\n }\n },\n \"id\": + \"LiveStreamHealthStatus\"\n },\n \"VideoAbuseReportSecondaryReason\": + {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\",\n + \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of this abuse report secondary reason.\"\n + \ },\n \"label\": {\n \"description\": \"The localized + label for this abuse report secondary reason.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"TokenPagination\": {\n \"properties\": + {},\n \"id\": \"TokenPagination\",\n \"type\": \"object\",\n \"description\": + \"Stub token pagination template to suppress results.\"\n },\n \"ChannelListResponse\": + {\n \"type\": \"object\",\n \"id\": \"ChannelListResponse\",\n \"properties\": + {\n \"kind\": {\n \"default\": \"youtube#channelListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#channelListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Channel\"\n }\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveStreamListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveStream\"\n },\n \"description\": \"A list of live - streams that match the request criteria.\",\n \"type\": \"array\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ }\n },\n \"id\": \"LiveStreamListResponse\"\n },\n \"VideoCategory\": - {\n \"id\": \"VideoCategory\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategory\\\".\",\n \"default\": - \"youtube#videoCategory\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video category.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"A *videoCategory* resource - identifies a category that has been or could be associated with uploaded videos.\"\n - \ },\n \"LiveBroadcastStatistics\": {\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"Statistics about the live broadcast. These represent - a snapshot of the values at the time of the request. Statistics are only returned - for live broadcasts.\",\n \"type\": \"object\",\n \"properties\": - {\n \"totalChatCount\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The total number of live chat messages - currently on the broadcast. The property and its value will be present if - the broadcast is public, has the live chat feature enabled, and has at least - one message. Note that this field will not be filled after the broadcast ends. - So this property would not identify the number of chat messages for an archived - video of a completed live broadcast.\"\n },\n \"concurrentViewers\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n }\n },\n \"Subscription\": + {\n \"description\": \"A *subscription* resource contains information + about a YouTube user subscription. A subscription notifies a user when new + videos are added to a channel or when another user takes one of several actions + on YouTube, such as uploading a video, rating a video, or commenting on a + video.\",\n \"id\": \"Subscription\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the subscription, including its title and the channel that the user + subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n },\n + \ \"subscriberSnippet\": {\n \"description\": \"The subscriberSnippet + object contains basic details about the subscriber.\",\n \"$ref\": + \"SubscriptionSubscriberSnippet\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the subscription.\"\n },\n \"kind\": {\n \"default\": + \"youtube#subscription\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\"\n + \ },\n \"contentDetails\": {\n \"$ref\": \"SubscriptionContentDetails\",\n + \ \"description\": \"The contentDetails object contains basic statistics + about the subscription.\"\n }\n }\n },\n \"I18nRegion\": + {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": + {\n \"default\": \"youtube#i18nRegion\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the i18n region.\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the i18n region, such as region code and human-readable + name.\",\n \"$ref\": \"I18nRegionSnippet\"\n }\n },\n + \ \"description\": \"A *i18nRegion* resource identifies a region where + YouTube is available.\",\n \"id\": \"I18nRegion\"\n },\n \"ChannelStatus\": + {\n \"properties\": {\n \"longUploadsStatus\": {\n \"description\": + \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 + for more information.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"longUploadsUnspecified\",\n + \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n + \ ]\n },\n \"isLinked\": {\n \"description\": + \"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.\",\n \"type\": + \"boolean\"\n },\n \"madeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"privacyStatus\": {\n \"description\": \"Privacy + status of the channel.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ]\n },\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n }\n },\n \"description\": + \"JSON template for the status part of a channel.\",\n \"type\": \"object\",\n + \ \"id\": \"ChannelStatus\"\n },\n \"MembershipsLevelSnippet\": + {\n \"type\": \"object\",\n \"properties\": {\n \"creatorChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The id of + the channel that's offering channel memberships.\"\n },\n \"levelDetails\": + {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details + about the pricing level.\"\n }\n },\n \"id\": \"MembershipsLevelSnippet\"\n + \ },\n \"ChannelSectionLocalization\": {\n \"id\": \"ChannelSectionLocalization\",\n + \ \"properties\": {\n \"title\": {\n \"description\": + \"The localized strings for channel section's title.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"ChannelSection localization + setting\",\n \"type\": \"object\"\n },\n \"MonitorStreamInfo\": + {\n \"properties\": {\n \"broadcastStreamDelayMs\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"description\": \"If you have set the enableMonitorStream + property to true, then this property determines the length of the live broadcast + delay.\"\n },\n \"enableMonitorStream\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"type\": \"boolean\",\n \"description\": + \"This value determines whether the monitor stream is enabled for the broadcast. + If the monitor stream is enabled, then YouTube will broadcast the event content + on a special stream intended only for the broadcaster's consumption. The broadcaster + can use the stream to review the event content and also to identify the optimal + times to insert cuepoints. You need to set this value to true if you intend + to have a broadcast delay for your event. *Note:* This property cannot be + updated once the broadcast is in the testing or live state.\"\n },\n + \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": + \"HTML code that embeds a player that plays the monitor stream.\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"Settings and + Info of the monitor stream\",\n \"id\": \"MonitorStreamInfo\"\n },\n + \ \"ChannelTopicDetails\": {\n \"type\": \"object\",\n \"id\": + \"ChannelTopicDetails\",\n \"description\": \"Freebase topic information + related to the channel.\",\n \"properties\": {\n \"topicCategories\": + {\n \"description\": \"A list of Wikipedia URLs that describe the + channel's content.\",\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"topicIds\": + {\n \"type\": \"array\",\n \"description\": \"A list of + Freebase topic IDs associated with the channel. You can retrieve information + about each topic using the Freebase Topic API.\",\n \"items\": {\n + \ \"type\": \"string\"\n }\n }\n }\n },\n + \ \"ChannelContentDetails\": {\n \"type\": \"object\",\n \"description\": + \"Details about the content of a channel.\",\n \"properties\": {\n \"relatedPlaylists\": + {\n \"properties\": {\n \"likes\": {\n \"description\": + \"The ID of the playlist that contains the channel\\\"s liked videos. Use + the playlistItems.insert and playlistItems.delete to add or remove items from + that list.\",\n \"type\": \"string\"\n },\n \"watchHistory\": + {\n \"type\": \"string\",\n \"description\": \"The + ID of the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert + and playlistItems.delete to add or remove items from that list.\"\n },\n + \ \"favorites\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the playlist that contains the channel\\\"s favorite videos. Use + the playlistItems.insert and playlistItems.delete to add or remove items from + that list.\"\n },\n \"watchLater\": {\n \"description\": + \"The ID of the playlist that contains the channel\\\"s watch later playlist. + Use the playlistItems.insert and playlistItems.delete to add or remove items + from that list.\",\n \"type\": \"string\"\n },\n \"uploads\": + {\n \"type\": \"string\",\n \"description\": \"The + ID of the playlist that contains the channel\\\"s uploaded videos. Use the + videos.insert method to upload new videos and the videos.delete method to + delete previously uploaded videos.\"\n }\n },\n \"type\": + \"object\"\n }\n },\n \"id\": \"ChannelContentDetails\"\n + \ },\n \"VideoLiveStreamingDetails\": {\n \"id\": \"VideoLiveStreamingDetails\",\n + \ \"properties\": {\n \"actualEndTime\": {\n \"description\": + \"The time that the broadcast actually ended. This value will not be available + until the broadcast is over.\",\n \"format\": \"date-time\",\n \"type\": + \"string\"\n },\n \"scheduledEndTime\": {\n \"description\": + \"The time that the broadcast is scheduled to end. If the value is empty or + the property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n + \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n + \ \"scheduledStartTime\": {\n \"type\": \"string\",\n \"format\": + \"date-time\",\n \"description\": \"The time that the broadcast is + scheduled to begin.\"\n },\n \"actualStartTime\": {\n \"description\": + \"The time that the broadcast actually started. This value will not be available + until the broadcast begins.\",\n \"type\": \"string\",\n \"format\": + \"date-time\"\n },\n \"activeLiveChatId\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the currently active live + chat attached to this video. This field is filled only if the video is a currently + live broadcast that has live chat. Once the broadcast transitions to complete + this field will be removed and the live chat closed down. For persistent broadcasts + that live chat id will no longer be tied to this video but rather to the new + video being displayed at the persistent page.\"\n },\n \"concurrentViewers\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": \"The number of viewers currently watching the broadcast. The property and its value will be present if the broadcast has current viewers and the broadcast owner has not hidden the viewcount for the video. Note that YouTube stops tracking the number of concurrent viewers for a broadcast when the broadcast ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n }\n }\n - \ },\n \"LiveChatBan\": {\n \"description\": \"A `__liveChatBan__` - resource represents a ban for a YouTube live chat.\",\n \"id\": \"LiveChatBan\",\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the ban.\",\n \"type\": + an archived video of a live broadcast that already ended.\"\n }\n },\n + \ \"description\": \"Details about the live streaming metadata.\",\n \"type\": + \"object\"\n },\n \"PageInfo\": {\n \"description\": \"Paging details + for lists of resources, including total number of items available and number + of resources returned in a single page.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"totalResults\": {\n \"format\": + \"int32\",\n \"description\": \"The total number of results in the + result set.\",\n \"type\": \"integer\"\n },\n \"resultsPerPage\": + {\n \"description\": \"The number of results included in the API + response.\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n + \ }\n },\n \"id\": \"PageInfo\"\n },\n \"SubscriptionSubscriberSnippet\": + {\n \"description\": \"Basic details about a subscription's subscriber + including title, description, channel ID and thumbnails.\",\n \"type\": + \"object\",\n \"properties\": {\n \"thumbnails\": {\n \"description\": + \"Thumbnails for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The title of the subscriber.\"\n },\n \"description\": {\n + \ \"description\": \"The description of the subscriber.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"description\": + \"The channel ID of the subscriber.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"SubscriptionSubscriberSnippet\"\n },\n \"MembershipsDurationAtLevel\": + {\n \"type\": \"object\",\n \"properties\": {\n \"memberSince\": + {\n \"description\": \"The date and time when the user became a continuous + member for the given level.\",\n \"type\": \"string\"\n },\n + \ \"level\": {\n \"type\": \"string\",\n \"description\": + \"Pricing level ID.\"\n },\n \"memberTotalDurationMonths\": + {\n \"type\": \"integer\",\n \"description\": \"The cumulative + time the user has been a member for the given level in complete months (the + time is rounded down to the nearest integer).\",\n \"format\": \"int32\"\n + \ }\n },\n \"id\": \"MembershipsDurationAtLevel\"\n },\n + \ \"SuperChatEvent\": {\n \"type\": \"object\",\n \"description\": + \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube + channel.\",\n \"properties\": {\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely + identify the Super Chat event.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n + \ \"default\": \"youtube#superChatEvent\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n + \ \"description\": \"The `snippet` object contains basic details about + the Super Chat event.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n }\n + \ },\n \"id\": \"SuperChatEvent\"\n },\n \"LiveChatNewSponsorDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatNewSponsorDetails\",\n + \ \"properties\": {\n \"isUpgrade\": {\n \"type\": \"boolean\",\n + \ \"description\": \"If the viewer just had upgraded from a lower + level. For viewers that were not members at the time of purchase, this field + is false.\"\n },\n \"memberLevelName\": {\n \"type\": + \"string\",\n \"description\": \"The name of the Level that the viewer + just had joined. The Level names are defined by the YouTube channel offering + the Membership. In some situations this field isn't filled.\"\n }\n + \ }\n },\n \"ChannelConversionPings\": {\n \"properties\": + {\n \"pings\": {\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n + \ },\n \"type\": \"array\",\n \"description\": \"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.\"\n }\n },\n \"description\": \"The conversionPings + object encapsulates information about conversion pings that need to be respected + by the channel.\",\n \"type\": \"object\",\n \"id\": \"ChannelConversionPings\"\n + \ },\n \"VideoStatistics\": {\n \"description\": \"Statistics about + the video, such as the number of times the video was viewed or liked.\",\n + \ \"id\": \"VideoStatistics\",\n \"type\": \"object\",\n \"properties\": + {\n \"dislikeCount\": {\n \"description\": \"The number of + users who have indicated that they disliked the video by giving it a negative + rating.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n + \ },\n \"favoriteCount\": {\n \"format\": \"uint64\",\n + \ \"description\": \"The number of users who currently have the video + marked as a favorite video.\",\n \"type\": \"string\"\n },\n + \ \"likeCount\": {\n \"description\": \"The number of users + who have indicated that they liked the video by giving it a positive rating.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n + \ \"commentCount\": {\n \"type\": \"string\",\n \"description\": + \"The number of comments for the video.\",\n \"format\": \"uint64\"\n + \ },\n \"viewCount\": {\n \"description\": \"The number + of times the video has been viewed.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n }\n }\n },\n \"SearchListResponse\": + {\n \"properties\": {\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatBan\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"CommentThread\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\"\n },\n - \ \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\"\n },\n \"snippet\": - {\n \"$ref\": \"CommentThreadSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#commentThread\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentThread\\\".\"\n }\n - \ },\n \"id\": \"CommentThread\",\n \"type\": \"object\",\n - \ \"description\": \"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.\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"properties\": {\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"type\": + of this resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": - \"A list of moderators that match the request criteria.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n + \ \"default\": \"youtube#searchListResponse\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"description\": \"Pagination + information for token pagination.\",\n \"items\": {\n \"$ref\": + \"SearchResult\"\n }\n },\n \"regionCode\": {\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n + \ \"description\": \"General pagination information.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"SearchListResponse\"\n + \ },\n \"ThirdPartyLink\": {\n \"type\": \"object\",\n \"description\": + \"A *third party account link* resource represents a link between a YouTube + account or a channel and an account on a third-party service.\",\n \"properties\": + {\n \"status\": {\n \"description\": \"The status object contains + information about the status of the link.\",\n \"$ref\": \"ThirdPartyLinkStatus\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the third- party account link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n + \ },\n \"linkingToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The linking_token identifies a YouTube account + and channel with which the third party account is linked.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#thirdPartyLink\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n + \ }\n },\n \"id\": \"ThirdPartyLink\"\n },\n \"I18nRegionSnippet\": + {\n \"id\": \"I18nRegionSnippet\",\n \"description\": \"Basic details + about an i18n region, such as region code and human-readable name.\",\n \"properties\": + {\n \"gl\": {\n \"description\": \"The region code as a 2-letter + ISO country code.\",\n \"type\": \"string\"\n },\n \"name\": + {\n \"type\": \"string\",\n \"description\": \"The human-readable + name of the region.\"\n }\n },\n \"type\": \"object\"\n },\n + \ \"AccessPolicy\": {\n \"type\": \"object\",\n \"properties\": + {\n \"allowed\": {\n \"type\": \"boolean\",\n \"description\": + \"The value of allowed indicates whether the access to the policy is allowed + or denied by default.\"\n },\n \"exception\": {\n \"description\": + \"A list of region codes that identify countries where the default policy + do not apply.\",\n \"type\": \"array\",\n \"items\": {\n + \ \"type\": \"string\"\n }\n }\n },\n \"id\": + \"AccessPolicy\",\n \"description\": \"Rights management policy for YouTube + resources.\"\n },\n \"ChannelToStoreLinkDetails\": {\n \"id\": + \"ChannelToStoreLinkDetails\",\n \"description\": \"Information specific + to a store on a merchandising platform linked to a YouTube channel.\",\n \"properties\": + {\n \"merchantId\": {\n \"format\": \"uint64\",\n \"description\": + \"Google Merchant Center id of the store.\",\n \"type\": \"string\"\n + \ },\n \"storeUrl\": {\n \"type\": \"string\",\n \"description\": + \"Landing page of the store.\"\n },\n \"storeName\": {\n \"description\": + \"Name of the store.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"ActivityContentDetailsLike\": {\n + \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the rated resource.\"\n }\n },\n \"description\": + \"Information about a resource that received a positive (like) rating.\",\n + \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsLike\"\n + \ },\n \"ChannelAuditDetails\": {\n \"type\": \"object\",\n \"description\": + \"The auditDetails object encapsulates channel data that is relevant for YouTube + Partners during the audit process.\",\n \"properties\": {\n \"contentIdClaimsGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel has any unresolved claims.\"\n },\n \"communityGuidelinesGoodStanding\": + {\n \"description\": \"Whether or not the channel respects the community + guidelines.\",\n \"type\": \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel has any copyright strikes.\"\n }\n },\n \"id\": + \"ChannelAuditDetails\"\n },\n \"VideoProjectDetails\": {\n \"id\": + \"VideoProjectDetails\",\n \"type\": \"object\",\n \"description\": + \"DEPRECATED. b/157517979: This part was never populated after it was added. + However, it sees non-zero traffic because there is generated client code in + the wild that refers to it [1]. We keep this field and do NOT remove it because + otherwise V3 would return an error when this part gets requested [2]. [1] + https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"properties\": {}\n },\n \"LiveChatTextMessageDetails\": {\n + \ \"type\": \"object\",\n \"id\": \"LiveChatTextMessageDetails\",\n + \ \"properties\": {\n \"messageText\": {\n \"description\": + \"The user's message.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"LanguageTag\": {\n \"type\": \"object\",\n \"id\": + \"LanguageTag\",\n \"properties\": {\n \"value\": {\n \"type\": + \"string\"\n }\n }\n },\n \"ActivityListResponse\": {\n + \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#activityListResponse\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveChatModeratorListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n - \ }\n },\n \"id\": \"LiveChatModeratorListResponse\",\n \"type\": - \"object\"\n },\n \"VideoFileDetailsAudioStream\": {\n \"description\": - \"Information about an audio stream.\",\n \"id\": \"VideoFileDetailsAudioStream\",\n - \ \"properties\": {\n \"codec\": {\n \"type\": \"string\",\n - \ \"description\": \"The audio codec that the stream uses.\"\n },\n - \ \"channelCount\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The number of audio channels that - the stream contains.\"\n },\n \"bitrateBps\": {\n \"description\": - \"The audio stream's bitrate, in bits per second.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"VideoProcessingDetails\": {\n \"properties\": {\n \"fileDetailsAvailability\": - {\n \"description\": \"This value indicates whether file details - are available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingFailureReason\": {\n \"enum\": - [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Activity\"\n }\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"pageInfo\": {\n \"description\": \"General + pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"ActivityListResponse\"\n + \ },\n \"InvideoBranding\": {\n \"properties\": {\n \"imageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The url of + the uploaded image. Only used in apiary to api communication.\"\n },\n + \ \"imageBytes\": {\n \"format\": \"byte\",\n \"description\": + \"The bytes the uploaded image. Only used in api to youtube communication.\",\n + \ \"type\": \"string\"\n },\n \"position\": {\n \"$ref\": + \"InvideoPosition\",\n \"description\": \"The spatial position within + the video where the branding watermark will be displayed.\"\n },\n + \ \"targetChannelId\": {\n \"type\": \"string\",\n \"description\": + \"The channel to which this branding links. If not present it defaults to + the current channel.\"\n },\n \"timing\": {\n \"$ref\": + \"InvideoTiming\",\n \"description\": \"The temporal position within + the video where watermark will be displayed.\"\n }\n },\n \"id\": + \"InvideoBranding\",\n \"type\": \"object\",\n \"description\": + \"LINT.IfChange Describes an invideo branding.\"\n },\n \"Playlist\": + {\n \"description\": \"A *playlist* resource represents a YouTube playlist. + A playlist is a collection of videos that can be viewed sequentially and shared + with other users. A playlist can contain up to 200 videos, and YouTube does + not limit the number of playlists that each user creates. By default, playlists + are publicly visible to other users, but playlists can be public or private. + YouTube also uses playlists to identify special collections of videos for + a channel, such as: - uploaded videos - favorite videos - positively rated + (liked) videos - watch history - watch later To be more specific, these lists + are associated with a channel, which is a collection of a person, group, or + company's videos, playlists, and other YouTube information. You can retrieve + the playlist IDs for each of these lists from the channel resource for a given + channel. You can then use the playlistItems.list method to retrieve any of + those lists. You can also add or remove items from those lists by calling + the playlistItems.insert and playlistItems.delete methods.\",\n \"properties\": + {\n \"contentDetails\": {\n \"description\": \"The contentDetails + object contains information like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n + \ },\n \"localizations\": {\n \"additionalProperties\": + {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"type\": + \"object\",\n \"description\": \"Localizations for different languages\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the playlist, such as its title and description.\",\n + \ \"$ref\": \"PlaylistSnippet\"\n },\n \"player\": {\n + \ \"description\": \"The player object contains information that you + would use to play the playlist in an embedded player.\",\n \"$ref\": + \"PlaylistPlayer\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the playlist.\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#playlist\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"status\": {\n \"$ref\": + \"PlaylistStatus\",\n \"description\": \"The status object contains + status information for the playlist.\"\n }\n },\n \"id\": + \"Playlist\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsComment\": + {\n \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + associated with the comment.\",\n \"$ref\": \"ResourceId\"\n }\n + \ },\n \"id\": \"ActivityContentDetailsComment\",\n \"description\": + \"Information about a resource that received a comment.\",\n \"type\": + \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": {\n \"id\": + \"VideoContentDetailsRegionRestriction\",\n \"type\": \"object\",\n \"description\": + \"DEPRECATED Region restriction of the video.\",\n \"properties\": {\n + \ \"blocked\": {\n \"description\": \"A list of region codes + that identify countries where the video is blocked. If this property is present + and a country is not listed in its value, then the video is viewable in that + country. If this property is present and contains an empty list, the video + is viewable in all countries.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n },\n \"allowed\": + {\n \"type\": \"array\",\n \"description\": \"A list of + region codes that identify countries where the video is viewable. If this + property is present and a country is not listed in its value, then the video + is blocked from appearing in that country. If this property is present and + contains an empty list, the video is blocked in all countries.\",\n \"items\": + {\n \"type\": \"string\"\n }\n }\n }\n },\n + \ \"LiveChatSuperChatDetails\": {\n \"properties\": {\n \"currency\": + {\n \"type\": \"string\",\n \"description\": \"The currency + in which the purchase was made.\"\n },\n \"userComment\": {\n + \ \"type\": \"string\",\n \"description\": \"The comment + added by the user to this Super Chat event.\"\n },\n \"amountMicros\": + {\n \"format\": \"uint64\",\n \"description\": \"The amount + purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": + \"string\"\n },\n \"amountDisplayString\": {\n \"description\": + \"A rendered string that displays the fund amount and currency to the user.\",\n + \ \"type\": \"string\"\n },\n \"tier\": {\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The tier in which the amount belongs. Lower amounts belong to lower tiers. + The lowest tier is 1.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LiveChatSuperChatDetails\"\n },\n \"VideoRecordingDetails\": + {\n \"description\": \"Recording information associated with the video.\",\n + \ \"properties\": {\n \"location\": {\n \"description\": + \"The geolocation information associated with the video.\",\n \"$ref\": + \"GeoPoint\"\n },\n \"recordingDate\": {\n \"type\": + \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time when the video was recorded.\"\n },\n \"locationDescription\": + {\n \"type\": \"string\",\n \"description\": \"The text + description of the location where the video was recorded.\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"VideoRecordingDetails\"\n },\n + \ \"SuperChatEventSnippet\": {\n \"id\": \"SuperChatEventSnippet\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"superStickerMetadata\": + {\n \"description\": \"If this event is a Super Sticker event, this + field will contain metadata about the Super Sticker.\",\n \"$ref\": + \"SuperStickerMetadata\"\n },\n \"commentText\": {\n \"description\": + \"The text contents of the comment left by the user.\",\n \"type\": + \"string\"\n },\n \"supporterDetails\": {\n \"description\": + \"Details about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n + \ },\n \"createdAt\": {\n \"type\": \"string\",\n \"description\": + \"The date and time when the event occurred.\",\n \"format\": \"date-time\"\n + \ },\n \"amountMicros\": {\n \"format\": \"uint64\",\n + \ \"description\": \"The purchase amount, in micros of the purchase + currency. e.g., 1 is represented as 1000000.\",\n \"type\": \"string\"\n + \ },\n \"isSuperStickerEvent\": {\n \"description\": + \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"Channel id where the event occurred.\"\n },\n \"messageType\": + {\n \"description\": \"The tier for the paid message, which is based + on the amount of money spent to purchase the message.\",\n \"format\": + \"uint32\",\n \"type\": \"integer\"\n },\n \"displayString\": + {\n \"type\": \"string\",\n \"description\": \"A rendered + string that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). + The string is rendered for the given language.\"\n },\n \"currency\": + {\n \"type\": \"string\",\n \"description\": \"The currency + in which the purchase was made. ISO 4217.\"\n }\n }\n },\n + \ \"ActivityContentDetailsSocial\": {\n \"type\": \"object\",\n \"description\": + \"Details about a social network post.\",\n \"id\": \"ActivityContentDetailsSocial\",\n + \ \"properties\": {\n \"imageUrl\": {\n \"description\": + \"An image of the post's author.\",\n \"type\": \"string\"\n },\n + \ \"type\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The name of the social network.\",\n \"type\": \"string\",\n \"enum\": + [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n + \ \"twitter\"\n ]\n },\n \"resourceId\": + {\n \"description\": \"The resourceId object encapsulates information + that identifies the resource associated with a social network post.\",\n \"$ref\": + \"ResourceId\"\n },\n \"author\": {\n \"description\": + \"The author of the social network post.\",\n \"type\": \"string\"\n + \ },\n \"referenceUrl\": {\n \"description\": \"The + URL of the social network post.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"VideoStatus\": {\n \"properties\": {\n \"embeddable\": + {\n \"type\": \"boolean\",\n \"description\": \"This value + indicates if the video can be embedded on another website. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"publishAt\": {\n \"type\": + \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time when the video is scheduled to publish. It can be set + only if the privacy status of the video is private..\"\n },\n \"publicStatsViewable\": + {\n \"type\": \"boolean\",\n \"description\": \"This value + indicates if the extended video statistics on the watch page can be viewed + by everyone. Note that the view count, likes, etc will still be visible if + this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n + \ },\n \"failureReason\": {\n \"enum\": [\n \"conversion\",\n + \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n + \ \"codec\",\n \"uploadAborted\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"Unable to convert + video content.\",\n \"Invalid file format.\",\n \"Empty + file.\",\n \"File was too small.\",\n \"Unsupported + codec.\",\n \"Upload wasn't finished.\"\n ],\n \"description\": + \"This value explains why a video failed to upload. This property is only + present if the uploadStatus property indicates that the upload failed.\"\n + \ },\n \"license\": {\n \"enum\": [\n \"youtube\",\n + \ \"creativeCommon\"\n ],\n \"description\": \"The + video's license. @mutable youtube.videos.insert youtube.videos.update\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"rejectionReason\": {\n + \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n + \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n + \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n + \ \"trademark\",\n \"legal\"\n ],\n \"description\": + \"This value explains why YouTube rejected an uploaded video. This property + is only present if the uploadStatus property indicates that the upload was + rejected.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"Copyright infringement.\",\n \"Inappropriate video + content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms + of use violation.\",\n \"Uploader account was suspended.\",\n \"Video + duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader + closed his/her account.\",\n \"Trademark infringement.\",\n \"An + unspecified legal reason.\"\n ]\n },\n \"uploadStatus\": + {\n \"enumDescriptions\": [\n \"Video has been uploaded + but not processed yet.\",\n \"Video has been successfully processed.\",\n + \ \"Processing has failed. See FailureReason.\",\n \"Video + has been rejected. See RejectionReason.\",\n \"Video has been deleted.\"\n + \ ],\n \"description\": \"The status of the uploaded video.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"uploaded\",\n + \ \"processed\",\n \"failed\",\n \"rejected\",\n + \ \"deleted\"\n ]\n },\n \"madeForKids\": + {\n \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": + {\n \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"description\": \"The video's + privacy status.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n }\n + \ },\n \"id\": \"VideoStatus\",\n \"description\": \"Basic details + about a video category, such as its localized title. Next Id: 18\",\n \"type\": + \"object\"\n },\n \"CaptionSnippet\": {\n \"id\": \"CaptionSnippet\",\n + \ \"type\": \"object\",\n \"description\": \"Basic details about + a caption track, such as its language and name.\",\n \"properties\": + {\n \"name\": {\n \"type\": \"string\",\n \"description\": + \"The name of the caption track. The name is intended to be visible to the + user as an option during playback.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n }\n + \ },\n \"lastUpdated\": {\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time when the caption track was + last updated.\",\n \"type\": \"string\"\n },\n \"isCC\": + {\n \"description\": \"Indicates whether the track contains closed + captions for the deaf and hard of hearing. The default value is false.\",\n + \ \"type\": \"boolean\"\n },\n \"isLarge\": {\n \"type\": + \"boolean\",\n \"description\": \"Indicates whether the caption track + uses large text for the vision-impaired. The default value is false.\"\n },\n + \ \"isEasyReader\": {\n \"description\": \"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.\",\n \"type\": + \"boolean\"\n },\n \"status\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"serving\",\n \"syncing\",\n + \ \"failed\"\n ],\n \"description\": \"The caption + track's status.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"videoId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the video associated with the caption track. @mutable youtube.captions.insert\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"type\": \"string\"\n },\n + \ \"trackKind\": {\n \"description\": \"The caption track's + type.\",\n \"enum\": [\n \"standard\",\n \"ASR\",\n + \ \"forced\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"failureReason\": {\n \"description\": + \"The reason that YouTube failed to process the caption track. This property + is only present if the state property's value is failed.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"unknownFormat\",\n + \ \"unsupportedFormat\",\n \"processingFailed\"\n ]\n + \ },\n \"isAutoSynced\": {\n \"type\": \"boolean\",\n + \ \"description\": \"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.\"\n },\n \"language\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The language of the caption track. The property value is a BCP-47 language + tag.\"\n },\n \"audioTrackType\": {\n \"description\": + \"The type of audio track associated with the caption track.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The reason that YouTube failed - to process the video. This property will only have a value if the processingStatus - property's value is failed.\"\n },\n \"processingStatus\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\",\n \"type\": - \"string\",\n \"enum\": [\n \"processing\",\n \"succeeded\",\n - \ \"failed\",\n \"terminated\"\n ]\n },\n - \ \"processingIssuesAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"processingProgress\": {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"The processingProgress object contains information - about the progress YouTube has made in processing the video. The values are - really only relevant if the video's processing status is processing.\"\n },\n - \ \"tagSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether keyword (tag) suggestions are available for the video. - Tags can be added to a video's metadata to make it easier for other users - to find the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether video editing suggestions, which might improve video - quality or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\",\n \"type\": \"string\"\n },\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Describes - processing status and progress and availability of some other Video resource - parts.\",\n \"id\": \"VideoProcessingDetails\"\n },\n \"VideoFileDetails\": - {\n \"description\": \"Describes original video file properties, including - technical details about audio and video streams, but also metadata information - like content length, digitization time, or geotagging information.\",\n \"id\": - \"VideoFileDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"videoStreams\": {\n \"type\": \"array\",\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n }\n },\n - \ \"creationTime\": {\n \"description\": \"The date and time - when the uploaded video file was created. The value is specified in ISO 8601 - format. Currently, the following ISO 8601 formats are supported: - Date only: - YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \",\n \"type\": \"string\"\n },\n \"durationMs\": {\n - \ \"description\": \"The length of the uploaded video in milliseconds.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"container\": {\n \"description\": \"The uploaded video - file's container format.\",\n \"type\": \"string\"\n },\n - \ \"fileType\": {\n \"enum\": [\n \"video\",\n \"audio\",\n - \ \"image\",\n \"archive\",\n \"document\",\n - \ \"project\",\n \"other\"\n ],\n \"description\": - \"The uploaded file's type as detected by YouTube's video processing engine. - Currently, YouTube only processes video files, but this field is present whether - a video file or another type of file was uploaded.\",\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"type\": \"string\"\n },\n \"bitrateBps\": + \ ],\n \"enum\": [\n \"unknown\",\n \"primary\",\n + \ \"commentary\",\n \"descriptive\"\n ],\n \"type\": + \"string\"\n },\n \"isDraft\": {\n \"description\": + \"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. @mutable youtube.captions.insert + youtube.captions.update\",\n \"type\": \"boolean\"\n }\n }\n + \ },\n \"VideoFileDetailsAudioStream\": {\n \"description\": \"Information + about an audio stream.\",\n \"id\": \"VideoFileDetailsAudioStream\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"bitrateBps\": {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\"\n },\n \"audioStreams\": {\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ }\n },\n \"fileSize\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - file's size in bytes. This field is present whether a video file or another - type of file was uploaded.\"\n },\n \"fileName\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded file's name. This field - is present whether a video file or another type of file was uploaded.\"\n - \ }\n }\n },\n \"PlaylistItemSnippet\": {\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The item's description.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the item was added to the playlist.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the playlist - item belongs to.\",\n \"type\": \"string\"\n },\n \"position\": - {\n \"description\": \"The order in which the item appears in the - playlist. The value uses a zero-based index, so the first item has a position - of 0, the second item has a position of 1, and so forth.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist item. 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.\"\n },\n - \ \"playlistId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist - item is in.\"\n },\n \"title\": {\n \"description\": - \"The item's title.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the user that added the item to the playlist.\",\n \"type\": \"string\"\n - \ },\n \"videoOwnerChannelId\": {\n \"description\": - \"Channel id for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The id object contains information that can be - used to uniquely identify the resource that is included in the playlist as - the playlist item.\",\n \"$ref\": \"ResourceId\"\n },\n \"videoOwnerChannelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel this video belongs to.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about a playlist, including - title, description and thumbnails. Basic details of a YouTube Playlist item - provided by the author. Next ID: 15\",\n \"id\": \"PlaylistItemSnippet\"\n - \ },\n \"ActivityContentDetailsLike\": {\n \"properties\": {\n \"resourceId\": + \"The audio stream's bitrate, in bits per second.\"\n },\n \"codec\": + {\n \"description\": \"The audio codec that the stream uses.\",\n + \ \"type\": \"string\"\n },\n \"vendor\": {\n \"type\": + \"string\",\n \"description\": \"A value that uniquely identifies + a video vendor. Typically, the value is a four-letter vendor code.\"\n },\n + \ \"channelCount\": {\n \"description\": \"The number of audio + channels that the stream contains.\",\n \"type\": \"integer\",\n + \ \"format\": \"uint32\"\n }\n }\n },\n \"VideoPlayer\": + {\n \"description\": \"Player to be used for a video playback.\",\n \"id\": + \"VideoPlayer\",\n \"type\": \"object\",\n \"properties\": {\n \"embedHeight\": + {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n + \ \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e + tag that embeds a player that will play the video.\",\n \"type\": + \"string\"\n },\n \"embedWidth\": {\n \"type\": \"string\",\n + \ \"description\": \"The embed width\",\n \"format\": \"int64\"\n + \ }\n }\n },\n \"GeoPoint\": {\n \"properties\": {\n + \ \"latitude\": {\n \"type\": \"number\",\n \"description\": + \"Latitude in degrees.\",\n \"format\": \"double\"\n },\n + \ \"altitude\": {\n \"description\": \"Altitude above the reference + ellipsoid, in meters.\",\n \"format\": \"double\",\n \"type\": + \"number\"\n },\n \"longitude\": {\n \"type\": \"number\",\n + \ \"format\": \"double\",\n \"description\": \"Longitude + in degrees.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"GeoPoint\",\n \"description\": \"Geographical coordinates of a point, + in WGS84.\"\n },\n \"CaptionListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"CaptionListResponse\",\n \"properties\": {\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#captionListResponse\"\n + \ },\n \"items\": {\n \"description\": \"A list of captions + that match the request criteria.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Caption\"\n }\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n }\n }\n },\n \"ThirdPartyLinkSnippet\": {\n + \ \"type\": \"object\",\n \"properties\": {\n \"type\": {\n + \ \"type\": \"string\",\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or about to + connect) a channel with a store on a merchandising platform in order to enable + retail commerce capabilities for that channel on YouTube.\"\n ],\n + \ \"description\": \"Type of the link named after the entities that + are being linked.\"\n },\n \"channelToStoreLink\": {\n \"$ref\": + \"ChannelToStoreLinkDetails\",\n \"description\": \"Information specific + to a link between a channel and a store on a merchandising platform.\"\n }\n + \ },\n \"description\": \"Basic information about a third party account + link, including its type and type-specific information.\",\n \"id\": + \"ThirdPartyLinkSnippet\"\n },\n \"ActivityContentDetailsFavorite\": + {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the rated resource.\"\n }\n - \ },\n \"description\": \"Information about a resource that received - a positive (like) rating.\",\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMessage\": {\n \"id\": - \"LiveChatMessage\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#liveChatMessage\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\"\n },\n - \ \"authorDetails\": {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n - \ \"description\": \"The authorDetails object contains basic details - about the user that posted this message.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A *liveChatMessage* resource represents a chat message - in a YouTube Live Chat.\"\n },\n \"PlaylistItemContentDetails\": {\n - \ \"id\": \"PlaylistItemContentDetails\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify a video. To retrieve the video resource, - set the id query parameter to this value in your API request.\"\n },\n - \ \"note\": {\n \"type\": \"string\",\n \"description\": - \"A user-generated note for this item.\"\n },\n \"endAt\": {\n - \ \"description\": \"The time, measured in seconds from the start - of the video, when the video should stop playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) By default, assume that the video.endTime - is the end of the video.\",\n \"type\": \"string\"\n },\n - \ \"startAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\"\n },\n \"videoPublishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the video was published - to YouTube.\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcastContentDetails\": - {\n \"description\": \"Detailed settings of a broadcast.\",\n \"properties\": - {\n \"startWithSlate\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether the broadcast should automatically begin - with an in-stream slate when you update the broadcast's status to live. After - updating the status, you then need to send a liveCuepoints.insert request - that sets the cuepoint's eventState to end to remove the in-stream slate and - make your broadcast stream visible to viewers.\"\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\"\n },\n \"mesh\": {\n \"description\": - \"The mesh for projecting the video if projection is mesh. The mesh value - must be a UTF-8 string containing the base-64 encoding of 3D mesh data that - follows the Spherical Video V2 RFC specification for an mshp box, excluding - the box size and type but including the following four reserved zero bytes - for the version and flags.\",\n \"format\": \"byte\",\n \"type\": - \"string\"\n },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"latencyPreference\": - {\n \"type\": \"string\",\n \"description\": \"If both this - and enable_low_latency are set, they must match. LATENCY_NORMAL should match - enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enumDescriptions\": + object contains information that identifies the resource that was marked as + a favorite.\"\n }\n },\n \"id\": \"ActivityContentDetailsFavorite\",\n + \ \"description\": \"Information about a video that was marked as a favorite + video.\"\n },\n \"LiveStream\": {\n \"type\": \"object\",\n \"properties\": + {\n \"status\": {\n \"description\": \"The status object contains + information about live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveStream\"\n + \ },\n \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": + \"The cdn object defines the live stream's content delivery network (CDN) + settings. These settings provide details about the manner in which you stream + your content to YouTube.\"\n },\n \"contentDetails\": {\n \"$ref\": + \"LiveStreamContentDetails\",\n \"description\": \"The content_details + object contains information about the stream, including the closed captions + ingestion URL.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.update\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + assigns to uniquely identify the stream.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"snippet\": {\n \"$ref\": \"LiveStreamSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the stream, including its channel, title, and description.\"\n }\n + \ },\n \"description\": \"A live stream describes a live ingestion + point.\",\n \"id\": \"LiveStream\"\n },\n \"ActivityContentDetailsRecommendation\": + {\n \"type\": \"object\",\n \"properties\": {\n \"seedResourceId\": + {\n \"$ref\": \"ResourceId\",\n \"description\": \"The seedResourceId + object contains information about the resource that caused the recommendation.\"\n + \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the recommended resource.\"\n },\n \"reason\": {\n + \ \"description\": \"The reason that the resource is recommended to + the user.\",\n \"type\": \"string\",\n \"enum\": [\n \"reasonUnspecified\",\n + \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n }\n },\n \"id\": + \"ActivityContentDetailsRecommendation\",\n \"description\": \"Information + that identifies the recommended resource.\"\n },\n \"LiveChatMessageRetractedDetails\": + {\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": + \"string\"\n }\n }\n },\n \"ChannelProfileDetails\": {\n + \ \"id\": \"ChannelProfileDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": + \"The channels's avatar URL.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The YouTube channel ID.\"\n },\n + \ \"displayName\": {\n \"description\": \"The channel's display + name.\",\n \"type\": \"string\"\n },\n \"channelUrl\": + {\n \"type\": \"string\",\n \"description\": \"The channel's + URL.\"\n }\n }\n },\n \"LiveBroadcastContentDetails\": {\n + \ \"description\": \"Detailed settings of a broadcast.\",\n \"id\": + \"LiveBroadcastContentDetails\",\n \"properties\": {\n \"closedCaptionsType\": + {\n \"type\": \"string\",\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n + \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n + \ \"closedCaptionsEmbedded\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"monitorStream\": {\n \"description\": + \"The monitorStream object contains information about the monitor stream, + which the broadcaster can use to review the event content before the broadcast + stream is shown publicly.\",\n \"$ref\": \"MonitorStreamInfo\"\n + \ },\n \"boundStreamId\": {\n \"description\": \"This + value uniquely identifies the live stream bound to the broadcast.\",\n \"type\": + \"string\"\n },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether the broadcast + video can be played in an embedded player. If you choose to archive the video + (using the enableArchive property), this setting will also apply to the archived + video.\"\n },\n \"recordFromStart\": {\n \"description\": + \"Automatically start recording after the event goes live. The default value + for this property is true. *Important:* You must also set the enableDvr property's + value to true if you want the playback to be available immediately after the + broadcast ends. If you set this property's value to true but do not also set + the enableDvr property to true, there may be a delay of around one day before + the archived video will be available for playback.\",\n \"type\": + \"boolean\"\n },\n \"latencyPreference\": {\n \"description\": + \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL + should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true + LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enum\": + [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n + \ \"low\",\n \"ultraLow\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"Best for: highest quality viewer playbacks and higher resolutions.\",\n \"Best for: near real-time interaction, with minimal playback buffering.\",\n \"Best for: real-time interaction Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n - \ \"enum\": [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ]\n },\n - \ \"boundStreamId\": {\n \"description\": \"This value uniquely - identifies the live stream bound to the broadcast.\",\n \"type\": - \"string\"\n },\n \"enableLowLatency\": {\n \"description\": - \"Indicates whether this broadcast has low latency enabled.\",\n \"type\": - \"boolean\"\n },\n \"closedCaptionsType\": {\n \"enumDescriptions\": + \ \"type\": \"string\"\n },\n \"enableAutoStop\": {\n + \ \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether auto stop is enabled for this broadcast. The default value + for this property is false. This setting can only be used by Events.\"\n },\n + \ \"enableContentEncryption\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether YouTube should + enable content encryption for the broadcast.\"\n },\n \"startWithSlate\": + {\n \"description\": \"This setting indicates whether the broadcast + should automatically begin with an in-stream slate when you update the broadcast's + status to live. After updating the status, you then need to send a liveCuepoints.insert + request that sets the cuepoint's eventState to end to remove the in-stream + slate and make your broadcast stream visible to viewers.\",\n \"type\": + \"boolean\"\n },\n \"stereoLayout\": {\n \"description\": + \"The 3D stereo layout of this broadcast. This defaults to mono.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ]\n },\n \"recordFromStart\": - {\n \"type\": \"boolean\",\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\"\n },\n \"enableDvr\": - {\n \"description\": \"This setting determines whether viewers can - access DVR controls while watching the video. DVR controls enable the viewer - to control the video playback experience by pausing, rewinding, or fast forwarding - content. The default value for this property is true. *Important:* You must - set the value to true and also set the enableArchive property's value to true - if you want to make playback available immediately after the broadcast ends.\",\n - \ \"type\": \"boolean\"\n },\n \"enableContentEncryption\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether YouTube should enable content encryption for the broadcast.\"\n - \ },\n \"enableAutoStop\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether auto stop is enabled - for this broadcast. The default value for this property is false. This setting - can only be used by Events.\"\n },\n \"stereoLayout\": {\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\",\n \"enum\": - [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"enableAutoStart\": - {\n \"description\": \"This setting indicates whether auto start - is enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\",\n \"type\": \"boolean\"\n - \ },\n \"enableEmbed\": {\n \"description\": \"This - setting indicates whether the broadcast video can be played in an embedded - player. If you choose to archive the video (using the enableArchive property), - this setting will also apply to the archived video.\",\n \"type\": - \"boolean\"\n },\n \"projection\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"stereoLayoutUnspecified\",\n + \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n + \ ]\n },\n \"enableLowLatency\": {\n \"description\": + \"Indicates whether this broadcast has low latency enabled.\",\n \"type\": + \"boolean\"\n },\n \"projection\": {\n \"enum\": [\n \ \"projectionUnspecified\",\n \"rectangular\",\n \"360\",\n - \ \"mesh\"\n ],\n \"description\": \"The projection - format of this broadcast. This defaults to rectangular.\"\n },\n \"monitorStream\": - {\n \"$ref\": \"MonitorStreamInfo\",\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveBroadcastContentDetails\"\n },\n \"TestItem\": {\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"gaia\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"TestItem\"\n - \ },\n \"SuperChatEventListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n },\n \"description\": - \"A list of Super Chat purchases that match the request criteria.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#superChatEventListResponse\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"id\": \"SuperChatEventListResponse\"\n },\n - \ \"AccessPolicy\": {\n \"id\": \"AccessPolicy\",\n \"description\": - \"Rights management policy for YouTube resources.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"exception\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the default policy do not apply.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"allowed\": {\n \"type\": - \"boolean\",\n \"description\": \"The value of allowed indicates - whether the access to the policy is allowed or denied by default.\"\n }\n - \ }\n },\n \"ChannelContentOwnerDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"properties\": - {\n \"contentOwner\": {\n \"description\": \"The ID of the - content owner linked to the channel.\",\n \"type\": \"string\"\n - \ },\n \"timeLinked\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the channel was linked to the content owner.\",\n - \ \"format\": \"date-time\"\n }\n },\n \"id\": \"ChannelContentOwnerDetails\"\n - \ },\n \"ChannelSectionSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a channel section, including title, style and position.\",\n - \ \"id\": \"ChannelSectionSnippet\",\n \"properties\": {\n \"style\": - {\n \"type\": \"string\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The style of - the channel section.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the channel section's - default title and description.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that published the channel section.\"\n },\n \"localized\": - {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": - \"Localized title, read-only.\"\n },\n \"title\": {\n \"description\": - \"The channel section's title for multiple_playlists and multiple_channels.\",\n - \ \"type\": \"string\"\n },\n \"position\": {\n \"description\": - \"The position of the channel section in the channel.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of the channel section.\",\n - \ \"enum\": [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ]\n }\n }\n },\n \"I18nLanguage\": {\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the i18n language.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#i18nLanguage\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"I18nLanguageSnippet\",\n \"description\": \"The snippet object - contains basic details about the i18n language, such as language code and - human-readable name.\"\n }\n },\n \"description\": \"An *i18nLanguage* - resource identifies a UI language currently supported by YouTube.\",\n \"type\": - \"object\",\n \"id\": \"I18nLanguage\"\n },\n \"LiveBroadcastSnippet\": - {\n \"description\": \"Basic broadcast information.\",\n \"type\": - \"object\",\n \"properties\": {\n \"isDefaultBroadcast\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Indicates whether - this broadcast is the default broadcast. Internal only.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the broadcast was added - to YouTube's live broadcast schedule.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The broadcast's description. As with the title, you can set this field by - modifying the broadcast resource or by setting the description field of the - corresponding video resource.\",\n \"type\": \"string\"\n },\n - \ \"actualEndTime\": {\n \"description\": \"The date and time - that the broadcast actually ended. This information is only available once - the broadcast's state is complete.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\",\n \"type\": \"string\"\n },\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for this broadcast.\",\n - \ \"type\": \"string\"\n },\n \"actualStartTime\": {\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the broadcast actually started. This information is only available - once the broadcast's state is live.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The broadcast's title. Note that the broadcast represents exactly one YouTube - video. You can set this field by modifying the broadcast resource or by setting - the title field of the corresponding video resource.\"\n },\n \"scheduledEndTime\": - {\n \"description\": \"The date and time that the broadcast is scheduled - to end.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the broadcast. For each nested object - in this object, the key is the name of the thumbnail image, and the value - is an object that contains other information about the thumbnail.\",\n \"$ref\": - \"ThumbnailDetails\"\n }\n },\n \"id\": \"LiveBroadcastSnippet\"\n - \ },\n \"CommentSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a comment, such as its author and text.\",\n \"id\": - \"CommentSnippet\",\n \"properties\": {\n \"textOriginal\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was originally - published.\"\n },\n \"parentId\": {\n \"description\": - \"The unique id of the parent comment, only set for replies.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the video the comment refers to, if - any.\"\n },\n \"likeCount\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The total number of likes this comment has received.\",\n - \ \"type\": \"integer\"\n },\n \"canRate\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the current viewer can - rate this comment.\"\n },\n \"authorDisplayName\": {\n \"description\": - \"The name of the user who posted the comment.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"authorChannelUrl\": {\n \"description\": - \"Link to the author's YouTube channel, if any.\",\n \"type\": \"string\"\n - \ },\n \"textDisplay\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"updatedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the comment - was last updated.\",\n \"format\": \"date-time\"\n },\n \"moderationStatus\": - {\n \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by a - moderator.\",\n \"\",\n \"The comment is unfit for display.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"description\": \"The comment's moderation status. - Will not be set if the comments were requested through the id filter.\"\n - \ },\n \"authorProfileImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL for the avatar of the user who posted - the comment.\"\n },\n \"viewerRating\": {\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n }\n }\n },\n \"LiveStreamContentDetails\": {\n - \ \"description\": \"Detailed settings of a stream.\",\n \"properties\": - {\n \"closedCaptionsIngestionUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The ingestion URL where the closed captions of - this stream are sent.\"\n },\n \"isReusable\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the stream is - reusable, which means that it can be bound to multiple broadcasts. It is common - for broadcasters to reuse the same stream for many different broadcasts if - those broadcasts occur at different times. If you set this value to false, - then the stream will not be reusable, which means that it can only be bound - to one broadcast. Non-reusable streams differ from reusable streams in the - following ways: - A non-reusable stream can only be bound to one broadcast. - - A non-reusable stream might be deleted by an automated process after the - broadcast ends. - The liveStreams.list method does not list non-reusable streams - if you call the method and set the mine parameter to true. The only way to - use that method to retrieve the resource for a non-reusable stream is to use - the id parameter to identify the stream. \"\n }\n },\n \"id\": - \"LiveStreamContentDetails\",\n \"type\": \"object\"\n },\n \"InvideoBranding\": - {\n \"type\": \"object\",\n \"description\": \"LINT.IfChange Describes - an invideo branding.\",\n \"id\": \"InvideoBranding\",\n \"properties\": - {\n \"timing\": {\n \"$ref\": \"InvideoTiming\",\n \"description\": - \"The temporal position within the video where watermark will be displayed.\"\n - \ },\n \"imageBytes\": {\n \"format\": \"byte\",\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"type\": \"string\"\n },\n \"imageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The url of the uploaded image. Only - used in apiary to api communication.\"\n },\n \"position\": - {\n \"description\": \"The spatial position within the video where - the branding watermark will be displayed.\",\n \"$ref\": \"InvideoPosition\"\n - \ },\n \"targetChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel to which this branding links. If - not present it defaults to the current channel.\"\n }\n }\n },\n - \ \"CommentSnippetAuthorChannelId\": {\n \"type\": \"object\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"id\": \"CommentSnippetAuthorChannelId\"\n },\n \"Cuepoint\": - {\n \"id\": \"Cuepoint\",\n \"properties\": {\n \"id\": {\n - \ \"description\": \"The identifier for cuepoint resource.\",\n \"type\": - \"string\"\n },\n \"walltimeMs\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The wall clock - time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\"\n },\n \"cueType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ]\n },\n \"etag\": {\n - \ \"type\": \"string\"\n },\n \"durationSecs\": {\n - \ \"description\": \"The duration of this cuepoint.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"insertionOffsetTimeMs\": - {\n \"description\": \"The time when the cuepoint should be inserted - by offset to the broadcast actual start time.\",\n \"format\": \"int64\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Note that there may be a 5-second end-point resolution - issue. For instance, if a cuepoint comes in for 22:03:27, we may stuff the - cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact of HLS.\"\n - \ },\n \"ChannelConversionPings\": {\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"properties\": {\n \"pings\": {\n \"description\": - \"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.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n }\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelConversionPings\"\n },\n \"LiveChatMessageSnippet\": - {\n \"id\": \"LiveChatMessageSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"giftMembershipReceivedDetails\": {\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\",\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n - \ \"memberMilestoneChatDetails\": {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"description\": \"Details about the Member Milestone Chat event, - this is only set if the type is 'memberMilestoneChatEvent'.\"\n },\n - \ \"authorChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the user that authored this message, this field is not always - filled. textMessageEvent - the user that wrote the message fanFundingEvent - - the user that funded the broadcast newSponsorEvent - the user that just - became a sponsor memberMilestoneChatEvent - the member that sent the message - membershipGiftingEvent - the user that made the purchase giftMembershipReceivedEvent - - the user that received the gift membership messageDeletedEvent - the moderator - that took the action messageRetractedEvent - the author that retracted their - message userBannedEvent - the moderator that took the action superChatEvent - - the user that made the purchase superStickerEvent - the user that made the - purchase\"\n },\n \"displayMessage\": {\n \"type\": - \"string\",\n \"description\": \"Contains a string that can be displayed - to the user. If this field is not present the message is silent, at the moment - only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\"\n },\n - \ \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"mesh\"\n ],\n \"enumDescriptions\": [\n \"\",\n \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\",\n \"type\": - \"string\",\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ]\n },\n \"hasDisplayContent\": {\n \"description\": - \"Whether the message has display content that should be displayed to users.\",\n - \ \"type\": \"boolean\"\n },\n \"superStickerDetails\": - {\n \"description\": \"Details about the Super Sticker event, this - is only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"membershipGiftingDetails\": {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n - \ \"description\": \"Details about the Membership Gifting event, this - is only set if the type is 'membershipGiftingEvent'.\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"fanFundingEventDetails\": {\n \"description\": \"Details - about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"superChatDetails\": - {\n \"description\": \"Details about the Super Chat event, this is - only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n - \ },\n \"textMessageDetails\": {\n \"$ref\": \"LiveChatTextMessageDetails\",\n - \ \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\"\n },\n \"newSponsorDetails\": - {\n \"description\": \"Details about the New Member Announcement - event, this is only set if the type is 'newSponsorEvent'. Please note that - \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n \"$ref\": - \"LiveChatNewSponsorDetails\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the message - was orignally published.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Next ID: 33\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": + \"The projection format of this broadcast. This defaults to rectangular.\",\n + \ \"type\": \"string\"\n },\n \"enableDvr\": {\n \"description\": + \"This setting determines whether viewers can access DVR controls while watching + the video. DVR controls enable the viewer to control the video playback experience + by pausing, rewinding, or fast forwarding content. The default value for this + property is true. *Important:* You must set the value to true and also set + the enableArchive property's value to true if you want to make playback available + immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n + \ },\n \"boundStreamLastUpdateTimeMs\": {\n \"description\": + \"The date and time that the live stream referenced by boundStreamId was last + updated.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n + \ },\n \"enableAutoStart\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether auto start is + enabled for this broadcast. The default value for this property is false. + This setting can only be used by Events.\"\n },\n \"mesh\": + {\n \"format\": \"byte\",\n \"type\": \"string\",\n \"description\": + \"The mesh for projecting the video if projection is mesh. The mesh value + must be a UTF-8 string containing the base-64 encoding of 3D mesh data that + follows the Spherical Video V2 RFC specification for an mshp box, excluding + the box size and type but including the following four reserved zero bytes + for the version and flags.\"\n },\n \"enableClosedCaptions\": + {\n \"description\": \"This setting indicates whether HTTP POST closed + captioning is enabled for this broadcast. The ingestion URL of the closed + captions is returned through the liveStreams API. This is mutually exclusive + with using the closed_captions_type property, and is equivalent to setting + closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n \"type\": + \"boolean\"\n }\n },\n \"type\": \"object\"\n },\n \"PropertyValue\": + {\n \"id\": \"PropertyValue\",\n \"type\": \"object\",\n \"properties\": + {\n \"property\": {\n \"description\": \"A property.\",\n + \ \"type\": \"string\"\n },\n \"value\": {\n \"type\": + \"string\",\n \"description\": \"The property's value.\"\n }\n + \ },\n \"description\": \"A pair Property / Value.\"\n },\n \"VideoLocalization\": + {\n \"description\": \"Localized versions of certain video properties + (e.g. title).\",\n \"type\": \"object\",\n \"properties\": {\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"Localized + version of the video's title.\"\n },\n \"description\": {\n + \ \"description\": \"Localized version of the video's description.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoLocalization\"\n + \ },\n \"CdnSettings\": {\n \"type\": \"object\",\n \"id\": + \"CdnSettings\",\n \"description\": \"Brief description of the live stream + cdn settings.\",\n \"properties\": {\n \"frameRate\": {\n \"enum\": + [\n \"30fps\",\n \"60fps\",\n \"variable\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The frame rate of the inbound video data.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"resolution\": {\n \"description\": \"The resolution of + the inbound video data.\",\n \"enum\": [\n \"240p\",\n + \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n + \ \"1440p\",\n \"2160p\",\n \"variable\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n + \ \"description\": \"The ingestionInfo object contains information + that YouTube provides that you need to transmit your RTMP or HTTP stream to + YouTube.\"\n },\n \"ingestionType\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \" The method or protocol used to transmit the video stream.\",\n \"enum\": + [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n + \ \"hls\"\n ],\n \"annotations\": {\n \"required\": + [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n + \ ]\n }\n },\n \"format\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"description\": \"The format of the video stream that you are sending + to Youtube. \",\n \"type\": \"string\"\n }\n }\n },\n + \ \"LiveBroadcastSnippet\": {\n \"properties\": {\n \"actualEndTime\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time that the broadcast actually ended. This information is only available + once the broadcast's state is complete.\",\n \"format\": \"date-time\"\n + \ },\n \"liveChatId\": {\n \"description\": \"The id + of the live chat for this broadcast.\",\n \"type\": \"string\"\n + \ },\n \"isDefaultBroadcast\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Indicates whether this broadcast is the default + broadcast. Internal only.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the channel that is publishing the broadcast.\"\n },\n \"scheduledStartTime\": + {\n \"description\": \"The date and time that the broadcast is scheduled + to start.\",\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"format\": \"date-time\"\n },\n \"description\": + {\n \"description\": \"The broadcast's description. As with the title, + you can set this field by modifying the broadcast resource or by setting the + description field of the corresponding video resource.\",\n \"type\": + \"string\"\n },\n \"scheduledEndTime\": {\n \"description\": + \"The date and time that the broadcast is scheduled to end.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"actualStartTime\": + {\n \"description\": \"The date and time that the broadcast actually + started. This information is only available once the broadcast's state is + live.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n + \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + broadcast. For each nested object in this object, the key is the name of the + thumbnail image, and the value is an object that contains other information + about the thumbnail.\"\n },\n \"title\": {\n \"description\": + \"The broadcast's title. Note that the broadcast represents exactly one YouTube + video. You can set this field by modifying the broadcast resource or by setting + the title field of the corresponding video resource.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time that the broadcast was added to YouTube's live broadcast + schedule.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Basic broadcast information.\",\n + \ \"type\": \"object\",\n \"id\": \"LiveBroadcastSnippet\"\n },\n + \ \"CommentSnippetAuthorChannelId\": {\n \"properties\": {\n \"value\": + {\n \"type\": \"string\"\n }\n },\n \"id\": \"CommentSnippetAuthorChannelId\",\n + \ \"type\": \"object\",\n \"description\": \"The id of the author's + YouTube channel, if any.\"\n },\n \"ChannelSection\": {\n \"id\": + \"ChannelSection\",\n \"type\": \"object\",\n \"properties\": {\n + \ \"contentDetails\": {\n \"description\": \"The contentDetails + object contains details about the channel section content, such as a list + of playlists or channels featured in the section.\",\n \"$ref\": + \"ChannelSectionContentDetails\"\n },\n \"kind\": {\n \"default\": + \"youtube#channelSection\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"targeting\": {\n \"description\": \"The targeting object + contains basic targeting settings about the channel section.\",\n \"$ref\": + \"ChannelSectionTargeting\"\n },\n \"localizations\": {\n \"type\": + \"object\",\n \"description\": \"Localizations for different languages\",\n + \ \"additionalProperties\": {\n \"$ref\": \"ChannelSectionLocalization\"\n + \ }\n },\n \"id\": {\n \"description\": \"The + ID that YouTube uses to uniquely identify the channel section.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the channel section, such + as its type, style and title.\",\n \"$ref\": \"ChannelSectionSnippet\"\n + \ }\n }\n },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \ \"properties\": {\n \"memberLevelName\": {\n \"description\": \"The name of the Level at which the viewer is a member. This matches the @@ -12058,453 +9559,2933 @@ interactions: membership gifting message. The Level names are defined by the YouTube channel offering the Membership. In some situations this field isn't filled.\",\n \ \"type\": \"string\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ },\n \"gifterChannelId\": {\n \"description\": \"The - ID of the user that made the membership gifting purchase. This matches the - `snippet.authorChannelId` of the associated membership gifting message.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"MembershipsDuration\": - {\n \"properties\": {\n \"memberSince\": {\n \"description\": - \"The date and time when the user became a continuous member across all levels.\",\n - \ \"type\": \"string\"\n },\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"description\": \"The cumulative - time the user has been a member across all levels in complete months (the - time is rounded down to the nearest integer).\",\n \"format\": \"int32\"\n - \ }\n },\n \"id\": \"MembershipsDuration\",\n \"type\": - \"object\"\n },\n \"LiveChatModerator\": {\n \"type\": \"object\",\n - \ \"description\": \"A *liveChatModerator* resource represents a moderator - for a YouTube live chat. A chat moderator has the ability to ban/unban users - from a chat, remove message, etc.\",\n \"id\": \"LiveChatModerator\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"description\": \"The ID of the membership gifting message that + is related to this gift membership. This ID will always refer to a message + whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n + \ },\n \"gifterChannelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the user that made the membership gifting + purchase. This matches the `snippet.authorChannelId` of the associated membership + gifting message.\"\n }\n }\n },\n \"VideoFileDetails\": + {\n \"description\": \"Describes original video file properties, including + technical details about audio and video streams, but also metadata information + like content length, digitization time, or geotagging information.\",\n \"properties\": + {\n \"fileSize\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"The uploaded file's size in bytes. + This field is present whether a video file or another type of file was uploaded.\"\n + \ },\n \"fileType\": {\n \"type\": \"string\",\n \"description\": + \"The uploaded file's type as detected by YouTube's video processing engine. + Currently, YouTube only processes video files, but this field is present whether + a video file or another type of file was uploaded.\",\n \"enum\": + [\n \"video\",\n \"audio\",\n \"image\",\n + \ \"archive\",\n \"document\",\n \"project\",\n + \ \"other\"\n ],\n \"enumDescriptions\": [\n \"Known + video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an + MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive + file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., + MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file type.\"\n ]\n + \ },\n \"durationMs\": {\n \"type\": \"string\",\n \"description\": + \"The length of the uploaded video in milliseconds.\",\n \"format\": + \"uint64\"\n },\n \"bitrateBps\": {\n \"description\": + \"The uploaded video file's combined (video and audio) bitrate in bits per + second.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n + \ },\n \"container\": {\n \"description\": \"The uploaded + video file's container format.\",\n \"type\": \"string\"\n },\n + \ \"audioStreams\": {\n \"type\": \"array\",\n \"description\": + \"A list of audio streams contained in the uploaded video file. Each item + in the list contains detailed metadata about an audio stream.\",\n \"items\": + {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n }\n },\n + \ \"creationTime\": {\n \"type\": \"string\",\n \"description\": + \"The date and time when the uploaded video file was created. The value is + specified in ISO 8601 format. Currently, the following ISO 8601 formats are + supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time + with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"videoStreams\": + {\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n + \ },\n \"type\": \"array\",\n \"description\": \"A + list of video streams contained in the uploaded video file. Each item in the + list contains detailed metadata about a video stream.\"\n },\n \"fileName\": + {\n \"type\": \"string\",\n \"description\": \"The uploaded + file's name. This field is present whether a video file or another type of + file was uploaded.\"\n }\n },\n \"id\": \"VideoFileDetails\",\n + \ \"type\": \"object\"\n },\n \"LocalizedString\": {\n \"type\": + \"object\",\n \"properties\": {\n \"language\": {\n \"type\": + \"string\"\n },\n \"value\": {\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"LocalizedString\"\n },\n \"I18nLanguage\": + {\n \"description\": \"An *i18nLanguage* resource identifies a UI language + currently supported by YouTube.\",\n \"properties\": {\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the i18n language, such as language code and human-readable name.\",\n + \ \"$ref\": \"I18nLanguageSnippet\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n + \ \"default\": \"youtube#i18nLanguage\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the moderator.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#liveChatModerator\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModerator\\\".\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveChatModeratorSnippet\",\n \"description\": - \"The snippet object contains basic details about the moderator.\"\n }\n - \ }\n },\n \"LiveChatMessageRetractedDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"retractedMessageId\": {\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"ChannelAuditDetails\": {\n \"type\": \"object\",\n \"id\": - \"ChannelAuditDetails\",\n \"properties\": {\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n }\n },\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"properties\": {\n \"playlistItemId\": {\n \"type\": - \"string\",\n \"description\": \"ID of the item within the playlist.\"\n - \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"description\": \"The value - that YouTube uses to uniquely identify the playlist.\"\n }\n },\n - \ \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"type\": \"object\",\n - \ \"description\": \"Information about a new playlist item.\"\n },\n - \ \"Member\": {\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#member\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the member.\",\n \"$ref\": \"MemberSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\",\n - \ \"type\": \"object\",\n \"id\": \"Member\"\n },\n \"ThirdPartyLink\": - {\n \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\",\n \"type\": \"object\",\n \"id\": \"ThirdPartyLink\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"default\": \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"linkingToken\": {\n \"type\": - \"string\",\n \"description\": \"The linking_token identifies a YouTube - account and channel with which the third party account is linked.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the third- party account link.\",\n \"$ref\": - \"ThirdPartyLinkSnippet\"\n },\n \"status\": {\n \"$ref\": - \"ThirdPartyLinkStatus\",\n \"description\": \"The status object - contains information about the status of the link.\"\n }\n }\n - \ },\n \"VideoGetRatingResponse\": {\n \"properties\": {\n \"items\": - {\n \"items\": {\n \"$ref\": \"VideoRating\"\n },\n - \ \"description\": \"A list of ratings that match the request criteria.\",\n - \ \"type\": \"array\"\n },\n \"visitorId\": {\n \"type\": + YouTube uses to uniquely identify the i18n language.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"id\": \"I18nLanguage\",\n \"type\": + \"object\"\n },\n \"ChannelContentOwnerDetails\": {\n \"id\": \"ChannelContentOwnerDetails\",\n + \ \"properties\": {\n \"contentOwner\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the content owner linked + to the channel.\"\n },\n \"timeLinked\": {\n \"type\": + \"string\",\n \"description\": \"The date and time when the channel + was linked to the content owner.\",\n \"format\": \"date-time\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"The + contentOwnerDetails object encapsulates channel data that is relevant for + YouTube Partners linked with the channel.\"\n },\n \"IngestionInfo\": + {\n \"type\": \"object\",\n \"properties\": {\n \"streamName\": + {\n \"description\": \"The stream name that YouTube assigns to the + video stream.\",\n \"type\": \"string\"\n },\n \"ingestionAddress\": + {\n \"type\": \"string\",\n \"description\": \"The primary + ingestion URL that you should use to stream video to YouTube. You must stream + video to this URL. Depending on which application or tool you use to encode + your video stream, you may need to enter the stream URL and stream name separately + or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* + \"\n },\n \"rtmpsIngestionAddress\": {\n \"type\": + \"string\",\n \"description\": \"This ingestion url may be used instead + of ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP + streams.\"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"description\": + \"This ingestion url may be used instead of backupIngestionAddress in order + to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": + \"string\"\n },\n \"backupIngestionAddress\": {\n \"type\": + \"string\",\n \"description\": \"The backup ingestion URL that you + should use to stream video to YouTube. You have the option of simultaneously + streaming the content that you are sending to the ingestionAddress to this + URL.\"\n }\n },\n \"id\": \"IngestionInfo\",\n \"description\": + \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\"\n + \ },\n \"PlaylistContentDetails\": {\n \"id\": \"PlaylistContentDetails\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"itemCount\": + {\n \"type\": \"integer\",\n \"description\": \"The number + of videos in the playlist.\",\n \"format\": \"uint32\"\n }\n + \ }\n },\n \"ActivityContentDetails\": {\n \"type\": \"object\",\n + \ \"description\": \"Details about the content of an activity: the video + that was shared, the channel that was subscribed to, etc.\",\n \"id\": + \"ActivityContentDetails\",\n \"properties\": {\n \"promotedItem\": + {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n \"description\": + \"The promotedItem object contains details about a resource which is being + promoted. This property is only present if the snippet.type is promotedItem.\"\n + \ },\n \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n + \ \"description\": \"The playlistItem object contains information + about a new playlist item. This property is only present if the snippet.type + is playlistItem.\"\n },\n \"social\": {\n \"$ref\": + \"ActivityContentDetailsSocial\",\n \"description\": \"The social + object contains details about a social network post. This property is only + present if the snippet.type is social.\"\n },\n \"recommendation\": + {\n \"description\": \"The recommendation object contains information + about a recommended resource. This property is only present if the snippet.type + is recommendation.\",\n \"$ref\": \"ActivityContentDetailsRecommendation\"\n + \ },\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n + \ \"description\": \"The bulletin object contains details about a + channel bulletin post. This object is only present if the snippet.type is + bulletin.\"\n },\n \"upload\": {\n \"description\": + \"The upload object contains information about the uploaded video. This property + is only present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n + \ },\n \"like\": {\n \"$ref\": \"ActivityContentDetailsLike\",\n + \ \"description\": \"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.\"\n },\n \"subscription\": {\n + \ \"description\": \"The subscription object contains information + about a channel that a user subscribed to. This property is only present if + the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n + \ },\n \"channelItem\": {\n \"description\": \"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.\",\n \"$ref\": + \"ActivityContentDetailsChannelItem\"\n },\n \"favorite\": {\n + \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsFavorite\"\n + \ },\n \"comment\": {\n \"description\": \"The comment + object contains information about a resource that received a comment. This + property is only present if the snippet.type is comment.\",\n \"$ref\": + \"ActivityContentDetailsComment\"\n }\n }\n },\n \"ThirdPartyLinkStatus\": + {\n \"description\": \"The third-party link status object contains information + about the status of the link.\",\n \"id\": \"ThirdPartyLinkStatus\",\n + \ \"properties\": {\n \"linkStatus\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"unknown\",\n \"failed\",\n + \ \"pending\",\n \"linked\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n }\n },\n \"type\": \"object\"\n },\n \"SuperStickerMetadata\": + {\n \"properties\": {\n \"altText\": {\n \"type\": \"string\",\n + \ \"description\": \"Internationalized alt text that describes the + sticker image and any animation associated with it.\"\n },\n \"altTextLanguage\": + {\n \"type\": \"string\",\n \"description\": \"Specifies + the localization language in which the alt text is returned.\"\n },\n + \ \"stickerId\": {\n \"description\": \"Unique identifier of + the Super Sticker. This is a shorter form of the alt_text that includes pack + name and a recognizable characteristic of the sticker.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"SuperStickerMetadata\"\n },\n \"PlaylistSnippet\": {\n \"description\": + \"Basic details about a playlist, including title, description and thumbnails.\",\n + \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The playlist's title.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.playlists.insert\",\n + \ \"youtube.playlists.update\"\n ]\n }\n },\n + \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The date and time that the playlist + was created.\"\n },\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images + associated with the playlist. 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.\"\n },\n \"tags\": {\n \"description\": + \"Keyword tags associated with the playlist.\",\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n },\n + \ \"thumbnailVideoId\": {\n \"type\": \"string\",\n \"description\": + \"Note: if the playlist has a custom thumbnail, this field will not be populated. + The video id selected by the user that will be used as the thumbnail of this + playlist. This field defaults to the first publicly viewable video in the + playlist, if: 1. The user has never selected a video to be the thumbnail of + the playlist. 2. The user selects a video to be the thumbnail, and then removes + that video from the playlist. 3. The user selects a non-owned video to be + the thumbnail, but that video becomes private, or gets deleted.\"\n },\n + \ \"localized\": {\n \"description\": \"Localized title and + description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n + \ },\n \"defaultLanguage\": {\n \"description\": \"The + language of the playlist's default title and description.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel that published the playlist.\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The playlist's + description.\"\n },\n \"channelTitle\": {\n \"description\": + \"The channel title of the channel that the video belongs to.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"PlaylistSnippet\"\n },\n \"PlaylistStatus\": {\n \"type\": \"object\",\n + \ \"id\": \"PlaylistStatus\",\n \"properties\": {\n \"privacyStatus\": + {\n \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"description\": \"The playlist's + privacy status.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n }\n + \ }\n },\n \"LiveStreamListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveStreamListResponse\",\n \"properties\": {\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"default\": \"youtube#liveStreamListResponse\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"LiveStream\"\n },\n \"description\": \"A list of live + streams that match the request criteria.\",\n \"type\": \"array\"\n + \ }\n }\n },\n \"LiveChatMessage\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveChatMessage\",\n \"description\": \"A *liveChatMessage* + resource represents a chat message in a YouTube Live Chat.\",\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveChatMessage\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n + \ \"type\": \"string\"\n },\n \"authorDetails\": {\n + \ \"$ref\": \"LiveChatMessageAuthorDetails\",\n \"description\": + \"The authorDetails object contains basic details about the user that posted + this message.\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the message.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the message.\"\n }\n }\n },\n \"LiveChatMembershipGiftingDetails\": + {\n \"properties\": {\n \"giftMembershipsLevelName\": {\n \"description\": + \"The name of the level of the gift memberships purchased by the user. The + Level names are defined by the YouTube channel offering the Membership. In + some situations this field isn't filled.\",\n \"type\": \"string\"\n + \ },\n \"giftMembershipsCount\": {\n \"description\": + \"The number of gift memberships purchased by the user.\",\n \"type\": + \"integer\",\n \"format\": \"int32\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n + \ \"AbuseReport\": {\n \"properties\": {\n \"relatedEntities\": + {\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n + \ \"type\": \"array\"\n },\n \"abuseTypes\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"AbuseType\"\n + \ }\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n + \ },\n \"description\": {\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"AbuseReport\",\n \"type\": \"object\"\n },\n + \ \"LiveChatBanSnippet\": {\n \"type\": \"object\",\n \"id\": + \"LiveChatBanSnippet\",\n \"properties\": {\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"liveChatId\": + {\n \"type\": \"string\",\n \"description\": \"The chat + this ban is pertinent to.\"\n },\n \"banDurationSeconds\": {\n + \ \"type\": \"string\",\n \"description\": \"The duration + of a ban, only filled if the ban has type TEMPORARY.\",\n \"format\": + \"uint64\"\n },\n \"type\": {\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n + \ \"permanent\",\n \"temporary\"\n ],\n \"description\": + \"The type of ban.\",\n \"enumDescriptions\": [\n \"An + invalid ban type.\",\n \"A permanent ban.\",\n \"A temporary + ban.\"\n ],\n \"type\": \"string\"\n }\n }\n + \ },\n \"PlaylistListResponse\": {\n \"properties\": {\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n + \ \"type\": \"string\",\n \"default\": \"youtube#playlistListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlistListResponse\\\".\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"Playlist\"\n },\n \"description\": \"A list of playlists + that match the request criteria\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"PlaylistListResponse\",\n \"type\": + \"object\"\n },\n \"PlaylistItemStatus\": {\n \"description\": + \"Information about the playlist item's privacy status.\",\n \"type\": + \"object\",\n \"id\": \"PlaylistItemStatus\",\n \"properties\": + {\n \"privacyStatus\": {\n \"description\": \"This resource's + privacy status.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ]\n }\n }\n },\n \"CommentThreadListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n \"default\": + \"youtube#commentThreadListResponse\",\n \"type\": \"string\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": + \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": + \"A list of comment threads that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"CommentThread\"\n }\n }\n },\n + \ \"id\": \"CommentThreadListResponse\"\n },\n \"VideoCategory\": + {\n \"id\": \"VideoCategory\",\n \"type\": \"object\",\n \"description\": + \"A *videoCategory* resource identifies a category that has been or could + be associated with uploaded videos.\",\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#videoCategory\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#videoCategory\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": + \"VideoCategorySnippet\",\n \"description\": \"The snippet object + contains basic details about the video category, including its title.\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the video category.\"\n }\n + \ }\n },\n \"InvideoPosition\": {\n \"type\": \"object\",\n + \ \"description\": \"Describes the spatial position of a visual widget + inside a video. It is a union of various position types, out of which only + will be set one.\",\n \"id\": \"InvideoPosition\",\n \"properties\": + {\n \"cornerPosition\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n + \ \"bottomRight\"\n ],\n \"description\": \"Describes + in which corner of the video the visual widget will appear.\",\n \"type\": + \"string\"\n },\n \"type\": {\n \"enumDescriptions\": + [\n \"\"\n ],\n \"enum\": [\n \"corner\"\n + \ ],\n \"description\": \"Defines the position type.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsChannelItem\": + {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the resource that was added to the channel.\"\n + \ }\n },\n \"id\": \"ActivityContentDetailsChannelItem\",\n + \ \"description\": \"Details about a resource which was added to a channel.\",\n + \ \"type\": \"object\"\n },\n \"ThirdPartyLinkListResponse\": {\n + \ \"id\": \"ThirdPartyLinkListResponse\",\n \"properties\": {\n \"items\": + {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"type\": \"array\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"VideoListResponse\": + {\n \"properties\": {\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Video\"\n }\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n + \ \"description\": \"General pagination information.\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"default\": \"youtube#videoGetRatingResponse\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoGetRatingResponse\",\n - \ \"type\": \"object\"\n },\n \"MembershipsLevelListResponse\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsLevelListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"A list of pricing - levels offered by a creator to the fans.\",\n \"items\": {\n \"$ref\": - \"MembershipsLevel\"\n },\n \"type\": \"array\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": + which produced this response.\"\n },\n \"kind\": {\n \"default\": + \"youtube#videoListResponse\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ }\n },\n \"id\": \"VideoListResponse\",\n \"type\": + \"object\"\n },\n \"VideoMonetizationDetails\": {\n \"id\": \"VideoMonetizationDetails\",\n + \ \"type\": \"object\",\n \"description\": \"Details about monetization + of a YouTube Video.\",\n \"properties\": {\n \"access\": {\n \"$ref\": + \"AccessPolicy\",\n \"description\": \"The value of access indicates + whether the video can be monetized or not.\"\n }\n }\n },\n + \ \"SuperChatEventListResponse\": {\n \"type\": \"object\",\n \"properties\": + {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n },\n + \ \"description\": \"A list of Super Chat purchases that match the + request criteria.\",\n \"type\": \"array\"\n },\n \"etag\": {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n }\n },\n \"RelatedEntity\": {\n \"type\": - \"object\",\n \"id\": \"RelatedEntity\",\n \"properties\": {\n \"entity\": - {\n \"$ref\": \"Entity\"\n }\n }\n },\n \"VideoAbuseReport\": - {\n \"id\": \"VideoAbuseReport\",\n \"properties\": {\n \"videoId\": + resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n + \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n + \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"SuperChatEventListResponse\"\n + \ },\n \"TestItem\": {\n \"type\": \"object\",\n \"properties\": + {\n \"id\": {\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"TestItemTestItemSnippet\"\n },\n \"gaia\": + {\n \"type\": \"string\",\n \"format\": \"int64\"\n },\n + \ \"featuredPart\": {\n \"type\": \"boolean\"\n }\n + \ },\n \"id\": \"TestItem\"\n },\n \"PlaylistItemContentDetails\": + {\n \"properties\": {\n \"videoPublishedAt\": {\n \"type\": + \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the video was published to YouTube.\"\n },\n + \ \"startAt\": {\n \"description\": \"The time, measured in + seconds from the start of the video, when the video should start playing. + (The playlist owner can specify the times when the video should start and + stop playing when the video is played in the context of the playlist.) The + default value is 0.\",\n \"type\": \"string\"\n },\n \"videoId\": {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n },\n \"language\": - {\n \"description\": \"The language that the content was viewed in.\",\n - \ \"type\": \"string\"\n },\n \"reasonId\": {\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\",\n \"type\": \"string\"\n },\n - \ \"secondaryReasonId\": {\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\",\n \"type\": \"string\"\n },\n \"comments\": - {\n \"type\": \"string\",\n \"description\": \"Additional - comments regarding the abuse report.\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelStatistics\": {\n \"description\": \"Statistics - about a channel: number of subscribers, number of videos in the channel, etc.\",\n - \ \"type\": \"object\",\n \"id\": \"ChannelStatistics\",\n \"properties\": - {\n \"subscriberCount\": {\n \"description\": \"The number - of subscribers that the channel has.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"hiddenSubscriberCount\": - {\n \"description\": \"Whether or not the number of subscribers is - shown for this user.\",\n \"type\": \"boolean\"\n },\n \"videoCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of videos uploaded to the channel.\",\n \"type\": \"string\"\n },\n - \ \"viewCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of times the channel has been viewed.\",\n \"type\": - \"string\"\n },\n \"commentCount\": {\n \"description\": - \"The number of comments for the channel.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n }\n }\n },\n \"SubscriptionSnippet\": - {\n \"id\": \"SubscriptionSnippet\",\n \"description\": \"Basic - details about a subscription, including title, description and thumbnails - of the subscribed item.\",\n \"type\": \"object\",\n \"properties\": - {\n \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the subscription - was created.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\",\n - \ \"type\": \"string\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.subscriptions.insert\"\n ]\n },\n - \ \"description\": \"The id object contains information about the - channel that the user subscribed to.\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The subscription's - title.\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The subscription's details.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the subscription - belongs to.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n }\n }\n + a video. To retrieve the video resource, set the id query parameter to this + value in your API request.\",\n \"type\": \"string\"\n },\n + \ \"note\": {\n \"type\": \"string\",\n \"description\": + \"A user-generated note for this item.\"\n },\n \"endAt\": {\n + \ \"description\": \"The time, measured in seconds from the start + of the video, when the video should stop playing. (The playlist owner can + specify the times when the video should start and stop playing when the video + is played in the context of the playlist.) By default, assume that the video.endTime + is the end of the video.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"PlaylistItemContentDetails\",\n \"type\": \"object\"\n \ },\n \"Comment\": {\n \"properties\": {\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n \"description\": \"The - snippet object contains basic details about the comment.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#comment\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\"\n }\n - \ },\n \"description\": \"A *comment* represents a single YouTube - comment.\",\n \"id\": \"Comment\",\n \"type\": \"object\"\n },\n - \ \"VideoMonetizationDetails\": {\n \"properties\": {\n \"access\": - {\n \"description\": \"The value of access indicates whether the - video can be monetized or not.\",\n \"$ref\": \"AccessPolicy\"\n - \ }\n },\n \"id\": \"VideoMonetizationDetails\",\n \"description\": - \"Details about monetization of a YouTube Video.\",\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsSubscription\": {\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\"\n }\n },\n \"description\": - \"Information about a channel that a user subscribed to.\",\n \"id\": - \"ActivityContentDetailsSubscription\",\n \"type\": \"object\"\n },\n - \ \"ThirdPartyLinkSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic information about a third party account link, including its type and - type-specific information.\",\n \"id\": \"ThirdPartyLinkSnippet\",\n - \ \"properties\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"description\": \"Type of the link named after the entities that - are being linked.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"type\": \"string\"\n - \ },\n \"channelToStoreLink\": {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n - \ \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\"\n }\n }\n },\n \"ChannelContentDetails\": - {\n \"description\": \"Details about the content of a channel.\",\n \"type\": - \"object\",\n \"properties\": {\n \"relatedPlaylists\": {\n \"properties\": - {\n \"watchHistory\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n },\n \"uploads\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s uploaded videos. Use the - videos.insert method to upload new videos and the videos.delete method to - delete previously uploaded videos.\"\n },\n \"watchLater\": + snippet object contains basic details about the comment.\"\n },\n \"kind\": + {\n \"default\": \"youtube#comment\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the comment.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"Comment\",\n \"description\": + \"A *comment* represents a single YouTube comment.\"\n },\n \"LiveBroadcast\": + {\n \"type\": \"object\",\n \"properties\": {\n \"status\": + {\n \"description\": \"The status object contains information about + the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"contentDetails\": {\n \"$ref\": + \"LiveBroadcastContentDetails\",\n \"description\": \"The contentDetails + object contains information about the event's video content, such as whether + the content can be shown in an embedded video player or if it will be archived + and therefore available for viewing after the event has concluded.\"\n },\n + \ \"id\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the broadcast.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the event, including its title, description, start time, and end time.\",\n + \ \"$ref\": \"LiveBroadcastSnippet\"\n },\n \"kind\": + {\n \"default\": \"youtube#liveBroadcast\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n + \ \"type\": \"string\"\n },\n \"statistics\": {\n \"description\": + \"The statistics object contains info about the event's current stats. These + include concurrent viewers and total chat count. Statistics can change (in + either direction) during the lifetime of an event. Statistics are only returned + while the event is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n + \ }\n },\n \"description\": \"A *liveBroadcast* resource represents + an event that will be streamed, via live video, on YouTube.\",\n \"id\": + \"LiveBroadcast\"\n },\n \"LiveChatUserBannedMessageDetails\": {\n \"type\": + \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\",\n \"properties\": + {\n \"banDurationSeconds\": {\n \"format\": \"uint64\",\n + \ \"description\": \"The duration of the ban. This property is only + present if the banType is temporary.\",\n \"type\": \"string\"\n + \ },\n \"banType\": {\n \"description\": \"The type + of ban.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"permanent\",\n \"temporary\"\n + \ ],\n \"type\": \"string\"\n },\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": + \"The details of the user that was banned.\"\n }\n }\n }\n + \ },\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"parameters\": + {\n \"oauth_token\": {\n \"description\": \"OAuth 2.0 token for the + current user.\",\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"prettyPrint\": {\n \"default\": \"true\",\n \"type\": + \"boolean\",\n \"location\": \"query\",\n \"description\": \"Returns + response with indentations and line breaks.\"\n },\n \"quotaUser\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n + \ },\n \"upload_protocol\": {\n \"description\": \"Upload protocol + for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"key\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"$.xgafv\": + {\n \"description\": \"V1 error format.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"1\",\n \"2\"\n ],\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"v1 error format\",\n + \ \"v2 error format\"\n ]\n },\n \"alt\": {\n \"location\": + \"query\",\n \"description\": \"Data format for response.\",\n \"enumDescriptions\": + [\n \"Responses with Content-Type of application/json\",\n \"Media + download with context-dependent Content-Type\",\n \"Responses with + Content-Type of application/x-protobuf\"\n ],\n \"enum\": [\n \"json\",\n + \ \"media\",\n \"proto\"\n ],\n \"type\": \"string\",\n + \ \"default\": \"json\"\n },\n \"access_token\": {\n \"location\": + \"query\",\n \"description\": \"OAuth access token.\",\n \"type\": + \"string\"\n },\n \"uploadType\": {\n \"type\": \"string\",\n \"description\": + \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n + \ \"location\": \"query\"\n },\n \"callback\": {\n \"description\": + \"JSONP\",\n \"location\": \"query\",\n \"type\": \"string\"\n },\n + \ \"fields\": {\n \"description\": \"Selector specifying which fields + to include in a partial response.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n + \ \"servicePath\": \"\",\n \"ownerDomain\": \"google.com\",\n \"revision\": + \"20230308\",\n \"resources\": {\n \"subscriptions\": {\n \"methods\": + {\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"Subscription\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/subscriptions\",\n + \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n + \ \"required\": true,\n \"repeated\": true,\n \"location\": + \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/subscriptions\",\n + \ \"id\": \"youtube.subscriptions.insert\"\n },\n \"list\": + {\n \"id\": \"youtube.subscriptions.list\",\n \"response\": + {\n \"$ref\": \"SubscriptionListResponse\"\n },\n \"path\": + \"youtube/v3/subscriptions\",\n \"description\": \"Retrieves a list + of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"mySubscribers\": {\n \"type\": + \"boolean\",\n \"location\": \"query\",\n \"description\": + \"Return the subscribers of the given channel owner.\"\n },\n \"order\": {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch later playlist. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"likes\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"favorites\": + order of the returned subscriptions\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n + \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n + \ ],\n \"default\": \"relevance\",\n \"enumDescriptions\": + [\n \"\",\n \"Sort by relevance.\",\n \"Sort + by order of activity.\",\n \"Sort alphabetically.\"\n ],\n + \ \"location\": \"query\"\n },\n \"mine\": + {\n \"location\": \"query\",\n \"type\": \"boolean\",\n + \ \"description\": \"Flag for returning the subscriptions of the + authenticated user.\"\n },\n \"myRecentSubscribers\": + {\n \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"Return the subscriptions of the given channel + owner.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n + \ \"maxResults\": {\n \"default\": \"5\",\n \"maximum\": + \"50\",\n \"minimum\": \"0\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"type\": \"integer\",\n + \ \"format\": \"uint32\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"repeated\": true,\n + \ \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"Return the subscriptions with + the given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n + \ \"repeated\": true\n },\n \"forChannelId\": + {\n \"description\": \"Return the subscriptions to the subset + of these channels that the authenticated user is subscribed to.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"location\": + \"query\"\n }\n },\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n + \ \"httpMethod\": \"GET\"\n },\n \"delete\": {\n \"httpMethod\": + \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Deletes a resource.\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n + \ \"path\": \"youtube/v3/subscriptions\",\n \"parameters\": + {\n \"id\": {\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"id\": + \"youtube.subscriptions.delete\"\n }\n }\n },\n \"membershipsLevels\": + {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/membershipsLevels\",\n + \ \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"The *part* parameter specifies + the membershipsLevel resource parts that the API response will include. Supported + values are id and snippet.\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n + \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"httpMethod\": + \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n + \ },\n \"id\": \"youtube.membershipsLevels.list\"\n }\n + \ }\n },\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/i18nLanguages\",\n \"id\": \"youtube.i18nLanguages.list\",\n + \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"description\": \"The + *part* parameter specifies the i18nLanguage resource properties that the API + response will include. Set the parameter value to snippet.\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"hl\": {\n \"default\": \"en_US\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Retrieves a list + of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/i18nLanguages\"\n + \ }\n }\n },\n \"videoCategories\": {\n \"methods\": + {\n \"list\": {\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/videoCategories\",\n + \ \"parameters\": {\n \"id\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Returns the video categories with the given + IDs for Stubby or Apiary.\"\n },\n \"regionCode\": {\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"hl\": {\n \"location\": \"query\",\n + \ \"default\": \"en-US\",\n \"type\": \"string\"\n + \ },\n \"part\": {\n \"description\": \"The + *part* parameter specifies the videoCategory resource properties that the + API response will include. Set the parameter value to snippet.\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true,\n \"repeated\": true\n }\n },\n \"response\": + {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"id\": + \"youtube.videoCategories.list\",\n \"flatPath\": \"youtube/v3/videoCategories\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n + \ \"list\": {\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"path\": \"youtube/v3/i18nRegions\",\n \"id\": + \"youtube.i18nRegions.list\",\n \"flatPath\": \"youtube/v3/i18nRegions\",\n + \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n + \ },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"description\": + \"The *part* parameter specifies the i18nRegion resource properties that the + API response will include. Set the parameter value to snippet.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"required\": true\n },\n \"hl\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"default\": \"en_US\"\n }\n }\n }\n + \ }\n },\n \"videos\": {\n \"methods\": {\n \"insert\": + {\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/videos\",\n + \ \"supportsMediaUpload\": true,\n \"description\": \"Inserts + a new resource into this collection.\",\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"parameters\": {\n \"stabilize\": + {\n \"description\": \"Should stabilize be applied to the upload.\",\n + \ \"type\": \"boolean\",\n \"location\": \"query\"\n + \ },\n \"notifySubscribers\": {\n \"location\": + \"query\",\n \"default\": \"true\",\n \"description\": + \"Notify the channel subscribers about the new video. As default, the notification + is enabled.\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\"\n },\n \"autoLevels\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"description\": + \"Should auto-levels be applied to the upload.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"required\": true,\n \"location\": + \"query\"\n }\n },\n \"id\": \"youtube.videos.insert\",\n + \ \"request\": {\n \"$ref\": \"Video\"\n },\n + \ \"response\": {\n \"$ref\": \"Video\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"mediaUpload\": {\n \"maxSize\": \"274877906944\",\n + \ \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n + \ ],\n \"protocols\": {\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n + \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/videos\",\n + \ \"multipart\": true\n }\n }\n },\n + \ \"flatPath\": \"youtube/v3/videos\"\n },\n \"reportAbuse\": + {\n \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\"\n }\n },\n \"path\": \"youtube/v3/videos/reportAbuse\",\n + \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n + \ \"id\": \"youtube.videos.reportAbuse\",\n \"flatPath\": + \"youtube/v3/videos/reportAbuse\",\n \"description\": \"Report abuse + for a video.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": []\n },\n \"delete\": + {\n \"path\": \"youtube/v3/videos\",\n \"httpMethod\": \"DELETE\",\n + \ \"id\": \"youtube.videos.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Deletes a resource.\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\"\n },\n + \ \"id\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/videos\"\n },\n \"list\": + {\n \"httpMethod\": \"GET\",\n \"parameters\": {\n \"locale\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"pageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"hl\": {\n \"type\": \"string\",\n \"description\": + \"Stands for \\\"host language\\\". Specifies the localization language of + the metadata to be filled into snippet.localized. The field is filled with + the default metadata if there is no localization in the specified language. + The parameter value must be a language code included in the list returned + by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"default\": + \"5\",\n \"description\": \"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.\",\n + \ \"minimum\": \"1\",\n \"maximum\": \"50\",\n \"location\": + \"query\"\n },\n \"videoCategoryId\": {\n \"description\": + \"Use chart that is specific to the specified video category\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"default\": + \"0\"\n },\n \"myRating\": {\n \"description\": + \"Return videos liked/disliked by the authenticated user. Does not support + RateType.RATED_TYPE_NONE.\",\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"\",\n \"The + entity is liked.\",\n \"The entity is disliked.\"\n ]\n + \ },\n \"maxWidth\": {\n \"maximum\": \"8192\",\n + \ \"description\": \"Return the player with maximum height specified + in\",\n \"format\": \"int32\",\n \"minimum\": \"72\",\n + \ \"location\": \"query\",\n \"type\": \"integer\"\n + \ },\n \"chart\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Return + the most popular videos for the specified content region and video category.\"\n + \ ],\n \"location\": \"query\",\n \"description\": + \"Return the videos that are in the specified chart.\",\n \"enum\": + [\n \"chartUnspecified\",\n \"mostPopular\"\n + \ ]\n },\n \"onBehalfOfContentOwner\": {\n + \ \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"required\": + true,\n \"description\": \"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.\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"id\": {\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"description\": \"Return + videos with the given ids.\",\n \"type\": \"string\"\n },\n + \ \"maxHeight\": {\n \"maximum\": \"8192\",\n \"format\": + \"int32\",\n \"minimum\": \"72\",\n \"location\": + \"query\",\n \"type\": \"integer\"\n },\n \"regionCode\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Use a chart that is specific to the specified + region\"\n }\n },\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"path\": \"youtube/v3/videos\",\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"id\": \"youtube.videos.list\",\n + \ \"response\": {\n \"$ref\": \"VideoListResponse\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ]\n },\n + \ \"getRating\": {\n \"httpMethod\": \"GET\",\n \"id\": + \"youtube.videos.getRating\",\n \"description\": \"Retrieves the + ratings that the authorized user gave to a list of specified videos.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/videos/getRating\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"parameters\": {\n \"id\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"required\": true\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"path\": \"youtube/v3/videos/getRating\"\n },\n \"update\": + {\n \"request\": {\n \"$ref\": \"Video\"\n },\n + \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": + \"Video\"\n },\n \"id\": \"youtube.videos.update\",\n \"path\": + \"youtube/v3/videos\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"description\": \"Updates an existing resource.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/videos\"\n + \ },\n \"rate\": {\n \"path\": \"youtube/v3/videos/rate\",\n + \ \"description\": \"Adds a like or dislike rating to a video or removes + a rating from a video.\",\n \"parameters\": {\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"rating\": + {\n \"enumDescriptions\": [\n \"\",\n \"The + entity is liked.\",\n \"The entity is disliked.\"\n ],\n + \ \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"type\": \"string\",\n + \ \"required\": true,\n \"location\": \"query\"\n + \ }\n },\n \"flatPath\": \"youtube/v3/videos/rate\",\n + \ \"parameterOrder\": [\n \"id\",\n \"rating\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.videos.rate\"\n + \ }\n }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": + {\n \"list\": {\n \"parameters\": {\n \"part\": + {\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the videoCategory resource parts that the + API response will include. Supported values are id and snippet.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"required\": + true\n },\n \"hl\": {\n \"type\": \"string\",\n + \ \"default\": \"en-US\",\n \"location\": \"query\"\n + \ }\n },\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n + \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"response\": + {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n + \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\"\n }\n }\n },\n \"commentThreads\": + {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.commentThreads.list\",\n + \ \"parameters\": {\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"description\": \"Returns the comment threads for all the + channel comments (ie does not include comments left on videos).\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"moderationStatus\": + {\n \"enumDescriptions\": [\n \"The comment is + available for public display.\",\n \"The comment is awaiting + review by a moderator.\",\n \"\",\n \"The comment + is unfit for display.\"\n ],\n \"description\": + \"Limits the returned comment threads to those with the specified moderation + status. Not compatible with the 'id' filter. Valid values: published, heldForReview, + likelySpam.\",\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ],\n \"default\": \"published\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"textFormat\": + {\n \"default\": \"html\",\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ],\n + \ \"description\": \"The requested text format for the returned + comments.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Returns the comments in HTML format. This is the default + value.\",\n \"Returns the comments in plain text format.\"\n + \ ]\n },\n \"maxResults\": {\n \"location\": + \"query\",\n \"type\": \"integer\",\n \"default\": + \"20\",\n \"format\": \"uint32\",\n \"maximum\": + \"100\",\n \"minimum\": \"1\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\"\n },\n \"searchTerms\": + {\n \"description\": \"Limits the returned comment threads to + those matching the specified key words. Not compatible with the 'id' filter.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"allThreadsRelatedToChannelId\": {\n \"description\": + \"Returns the comment threads of all videos of the channel and the channel + comments as well.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"description\": + \"The *part* parameter specifies a comma-separated list of one or more commentThread + resource properties that the API response will include.\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\"\n },\n \"order\": + {\n \"location\": \"query\",\n \"default\": \"time\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Order + by time.\",\n \"Order by relevance.\"\n ],\n \"enum\": + [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n + \ ],\n \"type\": \"string\"\n },\n \"videoId\": + {\n \"description\": \"Returns the comment threads of the specified + video.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"description\": + \"Returns the comment threads with the given IDs for Stubby or Apiary.\",\n + \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"path\": \"youtube/v3/commentThreads\",\n + \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\"\n },\n \"insert\": {\n \"response\": + {\n \"$ref\": \"CommentThread\"\n },\n \"description\": + \"Inserts a new resource into this collection.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.commentThreads.insert\",\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"required\": + true\n }\n },\n \"request\": {\n \"$ref\": + \"CommentThread\"\n },\n \"path\": \"youtube/v3/commentThreads\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"httpMethod\": + \"POST\"\n }\n }\n },\n \"captions\": {\n \"methods\": + {\n \"insert\": {\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"id\": \"youtube.captions.insert\",\n \"httpMethod\": + \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"Caption\"\n },\n + \ \"request\": {\n \"$ref\": \"Caption\"\n },\n + \ \"path\": \"youtube/v3/captions\",\n \"supportsMediaUpload\": + true,\n \"mediaUpload\": {\n \"protocols\": {\n \"simple\": + {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n + \ },\n \"resumable\": {\n \"path\": + \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": + true\n }\n },\n \"maxSize\": \"104857600\",\n + \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ]\n },\n \"description\": + \"Inserts a new resource into this collection.\",\n \"parameters\": + {\n \"sync\": {\n \"location\": \"query\",\n \"type\": + \"boolean\",\n \"description\": \"Extra parameter to allow automatically + syncing the uploaded caption/transcript with the audio.\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOf\": {\n \"description\": \"ID of the + Google+ Page for the channel that the request is be on behalf of\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"description\": \"The *part* parameter specifies the caption + resource parts that the API response will include. Set the parameter value + to snippet.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n }\n },\n \"delete\": {\n + \ \"id\": \"youtube.captions.delete\",\n \"httpMethod\": + \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/captions\",\n \"path\": \"youtube/v3/captions\",\n + \ \"parameters\": {\n \"onBehalfOf\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\"\n },\n \"id\": {\n \"location\": \"query\",\n + \ \"required\": true,\n \"type\": \"string\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": + \"Deletes a resource.\"\n },\n \"update\": {\n \"path\": + \"youtube/v3/captions\",\n \"httpMethod\": \"PUT\",\n \"description\": + \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"request\": {\n \"$ref\": \"Caption\"\n },\n + \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n + \ \"application/octet-stream\",\n \"*/*\"\n ],\n + \ \"protocols\": {\n \"simple\": {\n \"multipart\": + true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n + \ \"resumable\": {\n \"multipart\": true,\n \"path\": + \"/resumable/upload/youtube/v3/captions\"\n }\n },\n + \ \"maxSize\": \"104857600\"\n },\n \"response\": + {\n \"$ref\": \"Caption\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"supportsMediaUpload\": + true,\n \"id\": \"youtube.captions.update\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"onBehalfOf\": {\n + \ \"location\": \"query\",\n \"description\": \"ID + of the Google+ Page for the channel that the request is on behalf of.\",\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n },\n \"sync\": {\n \"description\": + \"Extra parameter to allow automatically syncing the uploaded caption/transcript + with the audio.\",\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true,\n \"description\": \"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.\",\n + \ \"location\": \"query\"\n }\n }\n },\n + \ \"list\": {\n \"flatPath\": \"youtube/v3/captions\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"parameterOrder\": [\n \"part\",\n + \ \"videoId\"\n ],\n \"response\": {\n \"$ref\": + \"CaptionListResponse\"\n },\n \"id\": \"youtube.captions.list\",\n + \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"Returns the captions with the + given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n + \ \"repeated\": true\n },\n \"videoId\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Returns + the captions for the specified video.\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"repeated\": + true,\n \"required\": true,\n \"type\": \"string\"\n + \ },\n \"onBehalfOf\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"ID + of the Google+ Page for the channel that the request is on behalf of.\"\n + \ }\n },\n \"path\": \"youtube/v3/captions\"\n + \ },\n \"download\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"supportsMediaDownload\": true,\n \"parameters\": {\n + \ \"id\": {\n \"description\": \"The ID of the caption + track to download, required for One Platform.\",\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"path\"\n + \ },\n \"tlang\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"tlang + is the language code; machine translate the captions into this language.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n },\n + \ \"tfmt\": {\n \"location\": \"query\",\n \"description\": + \"Convert the captions into this format. Supported options are sbv, srt, and + vtt.\",\n \"type\": \"string\"\n },\n \"onBehalfOf\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"ID of the Google+ Page for the channel that + the request is be on behalf of\"\n }\n },\n \"parameterOrder\": + [\n \"id\"\n ],\n \"useMediaDownloadService\": + true,\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/captions/{id}\",\n + \ \"flatPath\": \"youtube/v3/captions/{id}\",\n \"description\": + \"Downloads a caption track.\",\n \"id\": \"youtube.captions.download\"\n + \ }\n }\n },\n \"playlists\": {\n \"methods\": {\n \"insert\": + {\n \"path\": \"youtube/v3/playlists\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": + \"youtube.playlists.insert\",\n \"httpMethod\": \"POST\",\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"part\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"repeated\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"flatPath\": \"youtube/v3/playlists\",\n \"response\": + {\n \"$ref\": \"Playlist\"\n },\n \"request\": + {\n \"$ref\": \"Playlist\"\n }\n },\n \"update\": + {\n \"flatPath\": \"youtube/v3/playlists\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n }\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"id\": \"youtube.playlists.update\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/playlists\",\n \"response\": {\n + \ \"$ref\": \"Playlist\"\n },\n \"description\": + \"Updates an existing resource.\",\n \"httpMethod\": \"PUT\",\n \"request\": + {\n \"$ref\": \"Playlist\"\n }\n },\n \"list\": + {\n \"parameters\": {\n \"pageToken\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"description\": + \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"repeated\": + true,\n \"type\": \"string\"\n },\n \"hl\": + {\n \"description\": \"Return content in specified language\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"mine\": + {\n \"location\": \"query\",\n \"description\": + \"Return the playlists owned by the authenticated user.\",\n \"type\": + \"boolean\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true,\n \"repeated\": true,\n \"description\": \"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.\"\n },\n \"maxResults\": {\n \"minimum\": + \"0\",\n \"format\": \"uint32\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"type\": \"integer\",\n + \ \"maximum\": \"50\",\n \"location\": \"query\",\n + \ \"default\": \"5\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"channelId\": {\n + \ \"location\": \"query\",\n \"description\": \"Return + the playlists owned by the specified channel ID.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"PlaylistListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/playlists\",\n + \ \"flatPath\": \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.list\"\n + \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n + \ \"id\": \"youtube.playlists.delete\",\n \"path\": \"youtube/v3/playlists\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n },\n \"parameterOrder\": + [\n \"id\"\n ],\n \"description\": \"Deletes + a resource.\",\n \"flatPath\": \"youtube/v3/playlists\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": + {\n \"methods\": {\n \"updateCommentThreads\": {\n \"parameterOrder\": + [],\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"httpMethod\": + \"PUT\",\n \"response\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"request\": {\n \"$ref\": + \"CommentThread\"\n },\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": + \"string\",\n \"description\": \"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.\"\n }\n },\n \"path\": + \"youtube/v3/commentThreads\",\n \"description\": \"Updates an + existing resource.\"\n }\n }\n }\n }\n },\n + \ \"channels\": {\n \"methods\": {\n \"list\": {\n \"flatPath\": + \"youtube/v3/channels\",\n \"id\": \"youtube.channels.list\",\n \"path\": + \"youtube/v3/channels\",\n \"response\": {\n \"$ref\": + \"ChannelListResponse\"\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n + \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n + \ ],\n \"parameters\": {\n \"managedByMe\": {\n + \ \"type\": \"boolean\",\n \"description\": \"Return + the channels managed by the authenticated user.\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"minimum\": + \"0\",\n \"maximum\": \"50\",\n \"default\": \"5\",\n + \ \"format\": \"uint32\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"location\": \"query\",\n \"type\": + \"integer\"\n },\n \"forUsername\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Return the channel associated with a YouTube username.\"\n },\n + \ \"part\": {\n \"required\": true,\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"location\": \"query\"\n },\n + \ \"mySubscribers\": {\n \"type\": \"boolean\",\n \"description\": + \"Return the channels subscribed to the authenticated user\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"description\": + \"Return the channels with the specified IDs.\",\n \"location\": + \"query\"\n },\n \"hl\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Stands for \\\"host language\\\". Specifies the localization language of + the metadata to be filled into snippet.localized. The field is filled with + the default metadata if there is no localization in the specified language. + The parameter value must be a language code included in the list returned + by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"categoryId\": {\n \"description\": + \"Return the channels within the specified guide category ID.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"mine\": + {\n \"description\": \"Return the ids of channels owned by the + authenticated user.\",\n \"location\": \"query\",\n \"type\": + \"boolean\"\n }\n }\n },\n \"update\": {\n + \ \"id\": \"youtube.channels.update\",\n \"flatPath\": \"youtube/v3/channels\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true,\n \"description\": \"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.\"\n }\n },\n \"request\": + {\n \"$ref\": \"Channel\"\n },\n \"path\": \"youtube/v3/channels\",\n + \ \"httpMethod\": \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"response\": {\n \"$ref\": \"Channel\"\n },\n + \ \"description\": \"Updates an existing resource.\"\n }\n + \ }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": + {\n \"path\": \"youtube/v3/tests\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"response\": {\n \"$ref\": \"TestItem\"\n + \ },\n \"request\": {\n \"$ref\": \"TestItem\"\n + \ },\n \"id\": \"youtube.tests.insert\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"required\": true,\n \"location\": \"query\"\n + \ },\n \"externalChannelId\": {\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"POST\",\n \"description\": \"POST method.\",\n + \ \"flatPath\": \"youtube/v3/tests\"\n }\n }\n },\n + \ \"liveChatModerators\": {\n \"methods\": {\n \"insert\": {\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"type\": \"string\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"id\": \"youtube.liveChatModerators.insert\",\n \"request\": + {\n \"$ref\": \"LiveChatModerator\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n + \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n }\n + \ },\n \"list\": {\n \"description\": \"Retrieves a + list of resources, possibly filtered.\",\n \"parameterOrder\": [\n + \ \"liveChatId\",\n \"part\"\n ],\n \"parameters\": + {\n \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"liveChatId\": + {\n \"description\": \"The id of the live chat for which moderators + should be returned.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"description\": \"The *part* parameter specifies the liveChatModerator + resource parts that the API response will include. Supported values are id + and snippet.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"format\": \"uint32\",\n + \ \"maximum\": \"50\",\n \"location\": \"query\",\n + \ \"type\": \"integer\",\n \"default\": \"5\",\n + \ \"minimum\": \"0\"\n }\n },\n \"flatPath\": + \"youtube/v3/liveChat/moderators\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"response\": + {\n \"$ref\": \"LiveChatModeratorListResponse\"\n },\n + \ \"id\": \"youtube.liveChatModerators.list\"\n },\n \"delete\": + {\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"description\": \"Deletes a chat moderator.\",\n \"id\": + \"youtube.liveChatModerators.delete\",\n \"parameterOrder\": [\n + \ \"id\"\n ],\n \"parameters\": {\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"flatPath\": + \"youtube/v3/liveChat/moderators\"\n }\n }\n },\n \"channelSections\": + {\n \"methods\": {\n \"delete\": {\n \"description\": + \"Deletes a resource.\",\n \"path\": \"youtube/v3/channelSections\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"parameters\": {\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n + \ },\n \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.channelSections.delete\"\n + \ },\n \"update\": {\n \"id\": \"youtube.channelSections.update\",\n + \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/channelSections\",\n \"description\": \"Updates an existing + resource.\",\n \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"description\": \"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.\",\n + \ \"required\": true,\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"request\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"httpMethod\": + \"PUT\"\n },\n \"list\": {\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": + \"ChannelSectionListResponse\"\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"path\": \"youtube/v3/channelSections\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.channelSections.list\",\n + \ \"parameters\": {\n \"id\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n + \ \"location\": \"query\"\n },\n \"hl\": + {\n \"description\": \"Return content in specified language\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"required\": true,\n \"repeated\": + true,\n \"description\": \"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.\"\n },\n + \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": + \"query\",\n \"description\": \"Return the ChannelSections owned + by the authenticated user.\"\n },\n \"channelId\": {\n + \ \"description\": \"Return the ChannelSections owned by the specified + channel ID.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n }\n + \ },\n \"insert\": {\n \"path\": \"youtube/v3/channelSections\",\n + \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n + \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.channelSections.insert\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"required\": true\n }\n },\n \"description\": + \"Inserts a new resource into this collection.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/channelSections\"\n + \ }\n }\n },\n \"channelBanners\": {\n \"methods\": + {\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n + \ ],\n \"id\": \"youtube.channelBanners.insert\",\n \"path\": + \"youtube/v3/channelBanners/insert\",\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n + \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": + {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n + \ },\n \"resumable\": {\n \"path\": + \"/resumable/upload/youtube/v3/channelBanners/insert\",\n \"multipart\": + true\n }\n },\n \"maxSize\": \"6291456\",\n + \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ]\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"parameterOrder\": [],\n \"request\": {\n \"$ref\": + \"ChannelBannerResource\"\n },\n \"httpMethod\": \"POST\",\n + \ \"parameters\": {\n \"channelId\": {\n \"description\": + \"Unused, channel_id is currently derived from the security context of the + requestor.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n }\n + \ },\n \"supportsMediaUpload\": true,\n \"response\": + {\n \"$ref\": \"ChannelBannerResource\"\n }\n }\n + \ }\n },\n \"watermarks\": {\n \"methods\": {\n \"unset\": + {\n \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Allows removal of channel watermark.\",\n \"path\": \"youtube/v3/watermarks/unset\",\n + \ \"id\": \"youtube.watermarks.unset\",\n \"parameterOrder\": + [\n \"channelId\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n },\n \"set\": {\n \"description\": \"Allows + upload of watermark image and setting it for a channel.\",\n \"supportsMediaUpload\": + true,\n \"flatPath\": \"youtube/v3/watermarks/set\",\n \"id\": + \"youtube.watermarks.set\",\n \"request\": {\n \"$ref\": + \"InvideoBranding\"\n },\n \"httpMethod\": \"POST\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"channelId\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"mediaUpload\": {\n \"maxSize\": + \"10485760\",\n \"accept\": [\n \"image/jpeg\",\n + \ \"image/png\",\n \"application/octet-stream\"\n + \ ],\n \"protocols\": {\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n + \ \"multipart\": true\n },\n \"simple\": + {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": + true\n }\n }\n },\n \"parameterOrder\": + [\n \"channelId\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/watermarks/set\"\n }\n }\n },\n + \ \"liveChatBans\": {\n \"methods\": {\n \"delete\": {\n \"id\": + \"youtube.liveChatBans.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"description\": \"Deletes a chat ban.\",\n \"path\": \"youtube/v3/liveChat/bans\",\n + \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": + \"DELETE\"\n },\n \"insert\": {\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n + \ \"id\": \"youtube.liveChatBans.insert\",\n \"httpMethod\": + \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"required\": true\n }\n },\n + \ \"path\": \"youtube/v3/liveChat/bans\",\n \"response\": + {\n \"$ref\": \"LiveChatBan\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"request\": {\n \"$ref\": \"LiveChatBan\"\n + \ },\n \"description\": \"Inserts a new resource into this + collection.\"\n }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": + {\n \"insert\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.thirdPartyLinks.insert\",\n + \ \"parameters\": {\n \"externalChannelId\": {\n \"location\": + \"query\",\n \"description\": \"Channel ID to which changes should + be applied, for delegation.\",\n \"type\": \"string\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API request and response will include. Supported values are linkingToken, + status, and snippet.\",\n \"location\": \"query\"\n }\n + \ },\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n + \ },\n \"description\": \"Inserts a new resource into this + collection.\",\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/thirdPartyLinks\"\n },\n \"list\": + {\n \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"linkingToken\": + {\n \"description\": \"Get a third party link with the given + linking token.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"type\": {\n \"description\": + \"Get a third party link of the given type.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel + with a store on a merchandising platform in order to enable retail commerce + capabilities for that channel on YouTube.\"\n ],\n \"location\": + \"query\"\n },\n \"externalChannelId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true,\n \"description\": \"The *part* parameter specifies the + thirdPartyLink resource parts that the API response will include. Supported + values are linkingToken, status, and snippet.\"\n }\n },\n + \ \"id\": \"youtube.thirdPartyLinks.list\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"parameterOrder\": [\n \"part\"\n ]\n },\n + \ \"update\": {\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n + \ },\n \"description\": \"Updates an existing resource.\",\n + \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"request\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"id\": + \"youtube.thirdPartyLinks.update\",\n \"parameters\": {\n \"part\": + {\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API request and response will include. Supported values are linkingToken, + status, and snippet.\",\n \"required\": true,\n \"type\": + \"string\",\n \"repeated\": true\n },\n \"externalChannelId\": + {\n \"type\": \"string\",\n \"description\": \"Channel + ID to which changes should be applied, for delegation.\",\n \"location\": + \"query\"\n }\n },\n \"parameterOrder\": [\n + \ \"part\"\n ]\n },\n \"delete\": {\n \"parameterOrder\": + [\n \"linkingToken\",\n \"type\"\n ],\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes + a resource.\",\n \"id\": \"youtube.thirdPartyLinks.delete\",\n \"parameters\": + {\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel + with a store on a merchandising platform in order to enable retail commerce + capabilities for that channel on YouTube.\"\n ],\n \"location\": + \"query\",\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"required\": + true,\n \"type\": \"string\",\n \"description\": + \"Type of the link to be deleted.\"\n },\n \"externalChannelId\": + {\n \"location\": \"query\",\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\"\n },\n \"linkingToken\": {\n \"description\": + \"Delete the partner links with the given linking token.\",\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": + \"Do not use. Required for compatibility.\"\n }\n }\n + \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": + {\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"flatPath\": + \"youtube/v3/liveBroadcasts\",\n \"request\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"id\": \"youtube.liveBroadcasts.insert\",\n + \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"description\": \"Inserts a new + stream for the authenticated user.\"\n },\n \"delete\": {\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": + \"youtube/v3/liveBroadcasts\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"id\": {\n \"description\": + \"Broadcast to delete.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\"\n }\n },\n \"id\": \"youtube.liveBroadcasts.delete\",\n + \ \"description\": \"Delete a given broadcast.\",\n \"httpMethod\": + \"DELETE\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"insertCuepoint\": {\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"location\": \"query\",\n \"repeated\": + true\n },\n \"id\": {\n \"description\": + \"Broadcast to insert ads to, or equivalently `external_video_id` for internal + use.\",\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n }\n },\n \"description\": + \"Insert cuepoints in a broadcast\",\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"Cuepoint\"\n + \ },\n \"parameterOrder\": [],\n \"httpMethod\": + \"POST\",\n \"request\": {\n \"$ref\": \"Cuepoint\"\n + \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n + \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\"\n },\n + \ \"transition\": {\n \"id\": \"youtube.liveBroadcasts.transition\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"broadcastStatus\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true,\n \"description\": \"The status to which the broadcast + is going to transition.\",\n \"enum\": [\n \"statusUnspecified\",\n + \ \"testing\",\n \"live\",\n \"complete\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"Start testing the broadcast. YouTube transmits video to + the broadcast's monitor stream. Note that you can only transition a broadcast + to the testing state if its contentDetails.monitorStream.enableMonitorStream + property is set to true.\\\",\",\n \"Return only persistent + broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting + video.\"\n ]\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n },\n \"id\": {\n \"required\": + true,\n \"description\": \"Broadcast to transition.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"repeated\": true,\n + \ \"type\": \"string\"\n }\n },\n \"flatPath\": + \"youtube/v3/liveBroadcasts/transition\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n + \ \"part\"\n ],\n \"httpMethod\": \"POST\",\n + \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"description\": + \"Transition a broadcast to a given status.\"\n },\n \"update\": + {\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/liveBroadcasts\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n + \ \"required\": true\n }\n },\n \"description\": + \"Updates an existing broadcast for the authenticated user.\",\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.update\",\n + \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n }\n },\n \"list\": {\n \"response\": + {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"id\": + \"youtube.liveBroadcasts.list\",\n \"parameters\": {\n \"maxResults\": + {\n \"format\": \"uint32\",\n \"maximum\": \"50\",\n + \ \"minimum\": \"0\",\n \"location\": \"query\",\n + \ \"type\": \"integer\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"default\": \"5\"\n },\n + \ \"mine\": {\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"description\": \"Return broadcasts with the given ids from + Stubby or Apiary.\",\n \"type\": \"string\"\n },\n + \ \"broadcastType\": {\n \"description\": \"Return + only broadcasts with the selected type.\",\n \"default\": \"event\",\n + \ \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n + \ \"all\",\n \"event\",\n \"persistent\"\n + \ ],\n \"location\": \"query\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all broadcasts.\",\n \"Return only + scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n + \ ]\n },\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"required\": true,\n + \ \"description\": \"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, status and statistics.\",\n \"location\": + \"query\"\n },\n \"broadcastStatus\": {\n \"location\": + \"query\",\n \"description\": \"Return broadcasts with a certain + status, e.g. active broadcasts.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"Return all broadcasts.\",\n \"Return + current live broadcasts.\",\n \"Return broadcasts that have + not yet started.\",\n \"Return broadcasts that have already + ended.\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n + \ \"active\",\n \"upcoming\",\n \"completed\"\n + \ ]\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n + \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": + \"Retrieve the list of broadcasts associated with the given channel.\",\n + \ \"httpMethod\": \"GET\"\n },\n \"bind\": {\n \"description\": + \"Bind a broadcast to a stream.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n + \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"id\",\n + \ \"part\"\n ],\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n + \ \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Broadcast to bind to the stream\",\n \"required\": true\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"streamId\": {\n \"description\": \"Stream to bind, + if not set unbind the current one.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"required\": + true\n }\n },\n \"id\": \"youtube.liveBroadcasts.bind\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n + \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n + \ \"set\": {\n \"httpMethod\": \"POST\",\n \"response\": + {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"path\": + \"youtube/v3/thumbnails/set\",\n \"supportsMediaUpload\": true,\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n + \ \"image/png\",\n \"application/octet-stream\"\n + \ ],\n \"protocols\": {\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n + \ },\n \"simple\": {\n \"multipart\": + true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n }\n + \ },\n \"maxSize\": \"2097152\"\n },\n \"parameters\": + {\n \"videoId\": {\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\",\n \"description\": + \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"description\": \"As this is not an insert in a strict sense (it + supports uploading/setting of a thumbnail for multiple videos, which doesn't + result in creation of a single resource), I use a custom verb here.\",\n \"parameterOrder\": + [\n \"videoId\"\n ],\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n + \ \"id\": \"youtube.thumbnails.set\"\n }\n }\n },\n + \ \"liveChatMessages\": {\n \"methods\": {\n \"delete\": {\n + \ \"id\": \"youtube.liveChatMessages.delete\",\n \"flatPath\": + \"youtube/v3/liveChat/messages\",\n \"description\": \"Deletes a + chat message.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveChat/messages\"\n + \ },\n \"list\": {\n \"parameterOrder\": [\n \"liveChatId\",\n + \ \"part\"\n ],\n \"parameters\": {\n \"pageToken\": + {\n \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"profileImageSize\": {\n \"format\": + \"uint32\",\n \"maximum\": \"720\",\n \"type\": + \"integer\",\n \"description\": \"Specifies the size of the profile + image that should be returned for each user.\",\n \"location\": + \"query\",\n \"minimum\": \"16\"\n },\n \"part\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"The + *part* parameter specifies the liveChatComment resource parts that the API + response will include. Supported values are id and snippet.\",\n \"repeated\": + true\n },\n \"hl\": {\n \"type\": \"string\",\n + \ \"description\": \"Specifies the localization language in which + the system messages should be returned.\",\n \"location\": \"query\"\n + \ },\n \"liveChatId\": {\n \"type\": \"string\",\n + \ \"required\": true,\n \"description\": \"The id + of the live chat for which comments should be returned.\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"maximum\": + \"2000\",\n \"location\": \"query\",\n \"format\": + \"uint32\",\n \"minimum\": \"200\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"default\": \"500\",\n \"type\": + \"integer\"\n }\n },\n \"response\": {\n \"$ref\": + \"LiveChatMessageListResponse\"\n },\n \"httpMethod\": \"GET\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"id\": \"youtube.liveChatMessages.list\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": + \"youtube/v3/liveChat/messages\",\n \"path\": \"youtube/v3/liveChat/messages\"\n + \ },\n \"insert\": {\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n }\n },\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"response\": + {\n \"$ref\": \"LiveChatMessage\"\n },\n \"id\": + \"youtube.liveChatMessages.insert\",\n \"description\": \"Inserts + a new resource into this collection.\",\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n },\n + \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"comments\": + {\n \"methods\": {\n \"markAsSpam\": {\n \"path\": \"youtube/v3/comments/markAsSpam\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n + \ \"description\": \"Expresses the caller's opinion that one or more + comments should be flagged as spam.\",\n \"id\": \"youtube.comments.markAsSpam\",\n + \ \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"description\": \"Flags the comments with the given + IDs as spam in the caller's opinion.\",\n \"required\": true\n + \ }\n }\n },\n \"delete\": {\n \"path\": + \"youtube/v3/comments\",\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true\n }\n },\n \"description\": \"Deletes a + resource.\",\n \"id\": \"youtube.comments.delete\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n + \ },\n \"update\": {\n \"parameters\": {\n \"part\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": + true\n }\n },\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"description\": \"Updates an existing resource.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"request\": {\n \"$ref\": \"Comment\"\n },\n + \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": + \"Comment\"\n },\n \"id\": \"youtube.comments.update\",\n + \ \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": + [\n \"part\"\n ]\n },\n \"insert\": {\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"required\": + true\n }\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"request\": {\n \"$ref\": \"Comment\"\n + \ },\n \"path\": \"youtube/v3/comments\",\n \"id\": + \"youtube.comments.insert\",\n \"httpMethod\": \"POST\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"flatPath\": + \"youtube/v3/comments\"\n },\n \"setModerationStatus\": {\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.comments.setModerationStatus\",\n + \ \"parameters\": {\n \"banAuthor\": {\n \"default\": + \"false\",\n \"type\": \"boolean\",\n \"location\": + \"query\",\n \"description\": \"If set to true the author of + the comment gets added to the ban list. This means all future comments of + the author will autmomatically be rejected. Only valid in combination with + STATUS_REJECTED.\"\n },\n \"moderationStatus\": {\n + \ \"required\": true,\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"The comment is available + for public display.\",\n \"The comment is awaiting review by + a moderator.\",\n \"\",\n \"The comment is unfit + for display.\"\n ],\n \"description\": \"Specifies + the requested moderation status. Note, comments can be in statuses, which + are not available through this call. For example, this call does not allow + to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, + MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"type\": + \"string\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ]\n + \ },\n \"id\": {\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"required\": true,\n \"location\": + \"query\",\n \"description\": \"Modifies the moderation status + of the comments with the given IDs\"\n }\n },\n \"description\": + \"Sets the moderation status of one or more comments.\",\n \"path\": + \"youtube/v3/comments/setModerationStatus\",\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n + \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"id\",\n + \ \"moderationStatus\"\n ]\n },\n \"list\": + {\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"flatPath\": \"youtube/v3/comments\",\n \"httpMethod\": + \"GET\",\n \"path\": \"youtube/v3/comments\",\n \"parameters\": + {\n \"maxResults\": {\n \"location\": \"query\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"maximum\": + \"100\",\n \"format\": \"uint32\",\n \"minimum\": + \"1\",\n \"default\": \"20\",\n \"type\": \"integer\"\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"description\": \"The *part* parameter specifies a comma-separated + list of one or more comment resource properties that the API response will + include.\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"location\": \"query\"\n },\n \"id\": + {\n \"description\": \"Returns the comments with the given IDs + for One Platform.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"repeated\": true\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"parentId\": {\n \"type\": + \"string\",\n \"description\": \"Returns replies to the specified + comment. Note, currently YouTube features only one level of replies (ie replies + to top level comments). However replies to replies may be supported in the + future.\",\n \"location\": \"query\"\n },\n \"textFormat\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"default\": \"html\",\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Returns + the comments in HTML format. This is the default value.\",\n \"Returns + the comments in plain text format.\"\n ],\n \"description\": + \"The requested text format for the returned comments.\"\n }\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"id\": \"youtube.comments.list\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n + \ }\n }\n },\n \"activities\": {\n \"methods\": {\n + \ \"list\": {\n \"parameters\": {\n \"part\": {\n + \ \"repeated\": true,\n \"required\": true,\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"publishedBefore\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"format\": + \"google-datetime\"\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"maximum\": \"50\",\n \"minimum\": \"0\",\n + \ \"type\": \"integer\",\n \"location\": \"query\",\n + \ \"default\": \"5\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"format\": \"uint32\"\n },\n + \ \"home\": {\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"mine\": {\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"publishedAfter\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"format\": \"google-datetime\"\n },\n \"regionCode\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"description\": \"Retrieves a list + of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n + \ \"id\": \"youtube.activities.list\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/activities\",\n \"response\": {\n \"$ref\": + \"ActivityListResponse\"\n },\n \"path\": \"youtube/v3/activities\"\n + \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n + \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.abuseReports.insert\",\n \"response\": + {\n \"$ref\": \"AbuseReport\"\n },\n \"description\": + \"Inserts a new resource into this collection.\",\n \"httpMethod\": + \"POST\",\n \"flatPath\": \"youtube/v3/abuseReports\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"part\": + {\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"path\": \"youtube/v3/abuseReports\",\n \"request\": {\n + \ \"$ref\": \"AbuseReport\"\n }\n }\n }\n },\n + \ \"liveStreams\": {\n \"methods\": {\n \"insert\": {\n \"request\": + {\n \"$ref\": \"LiveStream\"\n },\n \"response\": + {\n \"$ref\": \"LiveStream\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.insert\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\",\n \"description\": \"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, content_details, and status.\",\n \"repeated\": true\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n + \ \"path\": \"youtube/v3/liveStreams\",\n \"description\": + \"Inserts a new stream for the authenticated user.\"\n },\n \"update\": + {\n \"description\": \"Updates an existing stream for the authenticated + user.\",\n \"id\": \"youtube.liveStreams.update\",\n \"response\": + {\n \"$ref\": \"LiveStream\"\n },\n \"httpMethod\": + \"PUT\",\n \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": + {\n \"$ref\": \"LiveStream\"\n },\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n + \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n + \ },\n \"description\": \"Deletes an existing stream for + the authenticated user.\",\n \"id\": \"youtube.liveStreams.delete\",\n + \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveStreams\"\n + \ },\n \"list\": {\n \"description\": \"Retrieve the + list of streams associated with the given channel. --\",\n \"parameters\": + {\n \"pageToken\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"required\": true,\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"default\": \"5\",\n \"type\": + \"integer\",\n \"location\": \"query\",\n \"format\": + \"uint32\",\n \"minimum\": \"0\",\n \"maximum\": + \"50\"\n },\n \"mine\": {\n \"type\": \"boolean\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"description\": \"Return LiveStreams with the given + ids from Stubby or Apiary.\"\n }\n },\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.liveStreams.list\",\n \"path\": + \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveStreams\"\n }\n + \ }\n },\n \"superChatEvents\": {\n \"methods\": {\n \"list\": + {\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"response\": + {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.superChatEvents.list\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"pageToken\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n + \ },\n \"maxResults\": {\n \"minimum\": + \"1\",\n \"location\": \"query\",\n \"maximum\": + \"50\",\n \"format\": \"uint32\",\n \"default\": + \"5\",\n \"type\": \"integer\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\"\n },\n \"part\": {\n + \ \"location\": \"query\",\n \"repeated\": true,\n + \ \"required\": true,\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies the superChatEvent resource parts that the + API response will include. This parameter is currently not supported.\"\n + \ },\n \"hl\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Return + rendered funding amounts in specified language.\"\n }\n },\n + \ \"path\": \"youtube/v3/superChatEvents\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n + \ }\n }\n },\n \"playlistItems\": {\n \"methods\": {\n + \ \"delete\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"required\": true,\n \"location\": \"query\"\n + \ }\n },\n \"id\": \"youtube.playlistItems.delete\",\n + \ \"path\": \"youtube/v3/playlistItems\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Deletes a resource.\"\n },\n \"insert\": + {\n \"path\": \"youtube/v3/playlistItems\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n + \ \"id\": \"youtube.playlistItems.insert\",\n \"httpMethod\": + \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true,\n \"repeated\": true,\n \"description\": + \"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.\"\n }\n },\n \"flatPath\": + \"youtube/v3/playlistItems\"\n },\n \"list\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"playlistId\": {\n \"type\": \"string\",\n \"description\": + \"Return the playlist items within the given playlist.\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"maximum\": + \"50\",\n \"type\": \"integer\",\n \"default\": + \"5\",\n \"minimum\": \"0\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"format\": \"uint32\",\n + \ \"location\": \"query\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"required\": true,\n + \ \"repeated\": true,\n \"type\": \"string\"\n },\n + \ \"videoId\": {\n \"description\": \"Return the playlist + items associated with the given video ID.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"pageToken\": {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s favorite videos. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n }\n },\n \"type\": \"object\"\n - \ }\n },\n \"id\": \"ChannelContentDetails\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n }\n - \ },\n \"kind\": {\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ThirdPartyLinkListResponse\",\n \"type\": \"object\"\n },\n \"CommentThreadSnippet\": - {\n \"type\": \"object\",\n \"id\": \"CommentThreadSnippet\",\n - \ \"description\": \"Basic details about a comment thread.\",\n \"properties\": - {\n \"isPublic\": {\n \"description\": \"Whether the thread - (and therefore all its comments) is visible to all YouTube users.\",\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"topLevelComment\": - {\n \"description\": \"The top level comment of this thread.\",\n - \ \"$ref\": \"Comment\"\n },\n \"canReply\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n \"totalReplyCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total number of replies (not including the top level comment).\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID of the video the - comments refer to, if any. No video_id implies a channel discussion comment.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"PropertyValue\": - {\n \"description\": \"A pair Property / Value.\",\n \"id\": \"PropertyValue\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"property\": - {\n \"description\": \"A property.\",\n \"type\": \"string\"\n - \ },\n \"value\": {\n \"type\": \"string\",\n \"description\": - \"The property's value.\"\n }\n }\n },\n \"PlaylistPlayer\": - {\n \"properties\": {\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that - embeds a player that will play the playlist.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"PlaylistPlayer\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource associated with a bulletin post. @mutable youtube.activities.insert\"\n - \ }\n },\n \"description\": \"Details about a channel bulletin - post.\"\n },\n \"VideoProcessingDetailsProcessingProgress\": {\n \"properties\": - {\n \"partsProcessed\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of parts of the video - that YouTube has already processed. You can estimate the percentage of the - video that YouTube has already processed by calculating: 100 * parts_processed - / parts_total Note that since the estimated number of parts could increase - without a corresponding increase in the number of parts that have already - been processed, it is possible that the calculated progress could periodically - decrease while YouTube processes a video.\"\n },\n \"timeLeftMs\": - {\n \"format\": \"uint64\",\n \"description\": \"An estimate - of the amount of time, in millseconds, that YouTube needs to finish processing - the video.\",\n \"type\": \"string\"\n },\n \"partsTotal\": - {\n \"description\": \"An estimate of the total number of parts that - need to be processed for the video. The number may be updated with more precise - estimates while YouTube processes the video.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Video processing progress and completion time estimate.\",\n \"type\": - \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"LiveChatTextMessageDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatTextMessageDetails\",\n \"properties\": {\n \"messageText\": - {\n \"type\": \"string\",\n \"description\": \"The user's - message.\"\n }\n }\n },\n \"Subscription\": {\n \"description\": - \"A *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\",\n \"id\": \"Subscription\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"subscriberSnippet\": - {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n \"description\": - \"The subscriberSnippet object contains basic details about the subscriber.\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the subscription.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#subscription\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains basic statistics about the subscription.\",\n - \ \"$ref\": \"SubscriptionContentDetails\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\",\n \"$ref\": - \"SubscriptionSnippet\"\n }\n }\n },\n \"VideoStatistics\": - {\n \"type\": \"object\",\n \"description\": \"Statistics about - the video, such as the number of times the video was viewed or liked.\",\n - \ \"properties\": {\n \"favoriteCount\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\"\n - \ },\n \"viewCount\": {\n \"description\": \"The number - of times the video has been viewed.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"likeCount\": {\n \"description\": - \"The number of users who have indicated that they liked the video by giving - it a positive rating.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"commentCount\": {\n \"description\": - \"The number of comments for the video.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"dislikeCount\": {\n - \ \"type\": \"string\",\n \"description\": \"The number of - users who have indicated that they disliked the video by giving it a negative - rating.\",\n \"format\": \"uint64\"\n }\n },\n \"id\": - \"VideoStatistics\"\n },\n \"PlaylistItem\": {\n \"type\": \"object\",\n - \ \"description\": \"A *playlistItem* resource identifies another resource, - such as a video, that is included in a playlist. In addition, the playlistItem - resource contains details about the included resource that pertain specifically - to how that resource is used in that playlist. YouTube uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"id\": - \"PlaylistItem\",\n \"properties\": {\n \"contentDetails\": {\n - \ \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"$ref\": \"PlaylistItemStatus\",\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlistItem\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the playlist item.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the playlist item, such as its title and - position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n - \ }\n }\n },\n \"VideoLiveStreamingDetails\": {\n \"properties\": - {\n \"scheduledStartTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast is scheduled to begin.\",\n - \ \"type\": \"string\"\n },\n \"actualStartTime\": {\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The time that the broadcast actually started. This value will not be available - until the broadcast begins.\"\n },\n \"scheduledEndTime\": {\n - \ \"description\": \"The time that the broadcast is scheduled to end. - If the value is empty or the property is not present, then the broadcast is - scheduled to contiue indefinitely.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"activeLiveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the currently active live chat attached to this video. This field is filled - only if the video is a currently live broadcast that has live chat. Once the - broadcast transitions to complete this field will be removed and the live - chat closed down. For persistent broadcasts that live chat id will no longer - be tied to this video but rather to the new video being displayed at the persistent - page.\"\n },\n \"concurrentViewers\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"type\": \"string\"\n },\n \"actualEndTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - time that the broadcast actually ended. This value will not be available until - the broadcast is over.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Details about the live - streaming metadata.\",\n \"id\": \"VideoLiveStreamingDetails\"\n },\n - \ \"ActivityContentDetails\": {\n \"properties\": {\n \"upload\": - {\n \"$ref\": \"ActivityContentDetailsUpload\",\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\"\n },\n \"playlistItem\": - {\n \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"comment\": {\n \"description\": \"The comment - object contains information about a resource that received a comment. This - property is only present if the snippet.type is comment.\",\n \"$ref\": - \"ActivityContentDetailsComment\"\n },\n \"subscription\": {\n - \ \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"like\": {\n \"$ref\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"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.\"\n },\n \"channelItem\": {\n \"$ref\": - \"ActivityContentDetailsChannelItem\",\n \"description\": \"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.\"\n },\n - \ \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"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.\"\n },\n \"bulletin\": {\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n },\n - \ \"promotedItem\": {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\"\n },\n \"recommendation\": {\n \"$ref\": - \"ActivityContentDetailsRecommendation\",\n \"description\": \"The - recommendation object contains information about a recommended resource. This - property is only present if the snippet.type is recommendation.\"\n },\n - \ \"social\": {\n \"$ref\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"The social object contains details about a social - network post. This property is only present if the snippet.type is social.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetails\",\n - \ \"description\": \"Details about the content of an activity: the video - that was shared, the channel that was subscribed to, etc.\"\n },\n \"VideoProjectDetails\": - {\n \"type\": \"object\",\n \"id\": \"VideoProjectDetails\",\n \"description\": - \"DEPRECATED. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"properties\": {}\n },\n \"VideoRating\": {\n \"id\": \"VideoRating\",\n - \ \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n },\n \"rating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"description\": \"Rating of a video.\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n }\n },\n \"description\": - \"Basic details about rating of a video.\",\n \"type\": \"object\"\n - \ },\n \"ChannelBrandingSettings\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelBrandingSettings\",\n \"description\": \"Branding - properties of a YouTube channel.\",\n \"properties\": {\n \"channel\": - {\n \"$ref\": \"ChannelSettings\",\n \"description\": \"Branding - properties for the channel view.\"\n },\n \"watch\": {\n \"description\": - \"Branding properties for the watch page.\",\n \"$ref\": \"WatchSettings\"\n - \ },\n \"hints\": {\n \"items\": {\n \"$ref\": - \"PropertyValue\"\n },\n \"description\": \"Additional experimental - branding properties.\",\n \"type\": \"array\"\n },\n \"image\": - {\n \"$ref\": \"ImageSettings\",\n \"description\": \"Branding - properties for branding images.\"\n }\n }\n },\n \"VideoPlayer\": - {\n \"properties\": {\n \"embedWidth\": {\n \"description\": - \"The embed width\",\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"embedHtml\": {\n \"type\": \"string\",\n - \ \"description\": \"An \\u003ciframe\\u003e tag that embeds a player - that will play the video.\"\n },\n \"embedHeight\": {\n \"format\": - \"int64\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Player to be used for a video playback.\",\n - \ \"id\": \"VideoPlayer\"\n }\n },\n \"batchPath\": \"batch\",\n - \ \"title\": \"YouTube Data API v3\",\n \"description\": \"The YouTube Data - API v3 is an API that provides access to YouTube data, such as videos, playlists, - and channels.\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"kind\": \"discovery#restDescription\"\n}\n" + *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.\",\n \"location\": + \"query\"\n }\n },\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": + \"PlaylistItemListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.playlistItems.list\",\n + \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"path\": + \"youtube/v3/playlistItems\"\n },\n \"update\": {\n \"request\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"httpMethod\": + \"PUT\",\n \"description\": \"Updates an existing resource.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"youtube.playlistItems.update\",\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n }\n + \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": + {\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n + \ },\n \"description\": \"Retrieves a list of search resources\",\n + \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/search\",\n \"parameters\": {\n \"eventType\": + {\n \"enumDescriptions\": [\n \"\",\n \"The + live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n + \ \"The live broadcast has been completed.\"\n ],\n + \ \"description\": \"Filter on the livestream status of the videos.\",\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ]\n + \ },\n \"videoCategoryId\": {\n \"description\": + \"Filter on videos in a specific category.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"videoType\": + {\n \"enum\": [\n \"videoTypeUnspecified\",\n + \ \"any\",\n \"movie\",\n \"episode\"\n + \ ],\n \"description\": \"Filter on videos of a specific + type.\",\n \"enumDescriptions\": [\n \"\",\n \"Return + all videos.\",\n \"Only retrieve movies.\",\n \"Only + retrieve episodes of shows.\"\n ],\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"relevanceLanguage\": + {\n \"type\": \"string\",\n \"description\": \"Return + results relevant to this language.\",\n \"location\": \"query\"\n + \ },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"order\": + {\n \"default\": \"relevance\",\n \"enum\": [\n + \ \"searchSortUnspecified\",\n \"date\",\n \"rating\",\n + \ \"viewCount\",\n \"relevance\",\n \"title\",\n + \ \"videoCount\"\n ],\n \"description\": + \"Sort order of the results.\",\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n + \ \"\",\n \"Resources are sorted in reverse chronological + order based on the date they were created.\",\n \"Resources + are sorted from highest to lowest rating.\",\n \"Resources + are sorted from highest to lowest number of views.\",\n \"Resources + are sorted based on their relevance to the search query. This is the default + value for this parameter.\",\n \"Resources are sorted alphabetically + by title.\",\n \"Channels are sorted in descending order of + their number of uploaded videos.\"\n ]\n },\n \"relatedToVideoId\": + {\n \"description\": \"Search related to a resource.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"publishedBefore\": + {\n \"description\": \"Filter on resources published before this + date.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"format\": \"google-datetime\"\n },\n + \ \"channelType\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"enum\": [\n \"channelTypeUnspecified\",\n + \ \"any\",\n \"show\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return all channels.\",\n \"Only + retrieve shows.\"\n ],\n \"description\": \"Add + a filter on the channel search.\"\n },\n \"safeSearch\": + {\n \"type\": \"string\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n + \ \"none\",\n \"moderate\",\n \"strict\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"YouTube will not filter the search result set.\",\n \"YouTube + will filter some content from search results and, at the least, will filter + content that is restricted in your locale. Based on their content, search + results could be removed from search results or demoted in search results. + This is the default parameter value.\",\n \"YouTube will try + to exclude all restricted content from the search result set. Based on their + content, search results could be removed from search results or demoted in + search results.\"\n ],\n \"location\": \"query\",\n + \ \"description\": \"Indicates whether the search results should + include restricted content as well as standard content.\",\n \"default\": + \"moderate\"\n },\n \"videoLicense\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Filter on the license of the videos.\",\n \"enum\": [\n \"any\",\n + \ \"youtube\",\n \"creativeCommon\"\n ],\n + \ \"enumDescriptions\": [\n \"Return all videos, + regardless of which license they have, that match the query parameters.\",\n + \ \"Only return videos that have the standard YouTube license.\",\n + \ \"Only return videos that have a Creative Commons license. + Users can reuse videos with this license in other videos that they create. + Learn more.\"\n ]\n },\n \"regionCode\": + {\n \"description\": \"Display the content as seen by viewers + in this country.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"maximum\": + \"50\",\n \"location\": \"query\",\n \"type\": \"integer\",\n + \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"default\": + \"5\"\n },\n \"videoDuration\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Do not filter video search results based on their duration. + This is the default value.\",\n \"Only include videos that + are less than four minutes long.\",\n \"Only include videos + that are between four and 20 minutes long (inclusive).\",\n \"Only + include videos longer than 20 minutes.\"\n ],\n \"location\": + \"query\",\n \"enum\": [\n \"videoDurationUnspecified\",\n + \ \"any\",\n \"short\",\n \"medium\",\n + \ \"long\"\n ],\n \"description\": + \"Filter on the duration of the videos.\"\n },\n \"videoDimension\": + {\n \"description\": \"Filter on 3d videos.\",\n \"enumDescriptions\": + [\n \"Include both 3D and non-3D videos in returned results. + This is the default value.\",\n \"Restrict search results to + exclude 3D videos.\",\n \"Restrict search results to only include + 3D videos.\"\n ],\n \"enum\": [\n \"any\",\n + \ \"2d\",\n \"3d\"\n ],\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"locationRadius\": + {\n \"type\": \"string\",\n \"description\": \"Filter + on distance from the location (specified above).\",\n \"location\": + \"query\"\n },\n \"type\": {\n \"description\": + \"Restrict results to a particular set of resource types from One Platform.\",\n + \ \"repeated\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"forDeveloper\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Restrict the search to only retrieve videos + uploaded using the project id of the authenticated user.\"\n },\n + \ \"videoDefinition\": {\n \"location\": \"query\",\n + \ \"enum\": [\n \"any\",\n \"standard\",\n + \ \"high\"\n ],\n \"enumDescriptions\": + [\n \"Return all videos, regardless of their resolution.\",\n + \ \"Only retrieve videos in standard definition.\",\n \"Only + retrieve HD videos.\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"Filter on the definition of the videos.\"\n + \ },\n \"forContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"Search owned by a content owner.\",\n + \ \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\"\n },\n \"publishedAfter\": {\n \"description\": + \"Filter on resources published after this date.\",\n \"type\": + \"string\",\n \"format\": \"google-datetime\",\n \"location\": + \"query\"\n },\n \"q\": {\n \"location\": + \"query\",\n \"description\": \"Textual search terms to match.\",\n + \ \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"required\": true,\n + \ \"description\": \"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.\"\n },\n \"videoCaption\": + {\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Do not filter results based on + caption availability.\",\n \"Only include videos that have + captions.\",\n \"Only include videos that do not have captions.\"\n + \ ],\n \"description\": \"Filter on the presence + of captions on the videos.\",\n \"type\": \"string\",\n \"enum\": + [\n \"videoCaptionUnspecified\",\n \"any\",\n + \ \"closedCaption\",\n \"none\"\n ]\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"Filter on resources belonging to this channelId.\",\n + \ \"location\": \"query\"\n },\n \"videoSyndicated\": + {\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n + \ \"any\",\n \"true\"\n ],\n \"description\": + \"Filter on syndicated videos.\",\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n + \ \"\",\n \"Return all videos, syndicated or + not.\",\n \"Only retrieve syndicated videos.\"\n ]\n + \ },\n \"videoEmbeddable\": {\n \"description\": + \"Filter on embeddable videos.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"Return all videos, embeddable or + not.\",\n \"Only retrieve embeddable videos.\"\n ],\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"videoEmbeddableUnspecified\",\n + \ \"any\",\n \"true\"\n ]\n },\n + \ \"location\": {\n \"description\": \"Filter on location + of the video\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"topicId\": {\n \"description\": + \"Restrict results to a particular topic.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"forMine\": + {\n \"description\": \"Search for the private videos of the authenticated + user.\",\n \"type\": \"boolean\",\n \"location\": + \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/search\",\n + \ \"id\": \"youtube.search.list\"\n }\n }\n },\n \"members\": + {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Retrieves + a list of members that match the request criteria for a channel.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"parameters\": {\n \"hasAccessToLevel\": + {\n \"type\": \"string\",\n \"description\": \"Filter + members in the results set to the ones that have access to a level.\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the member resource parts that the API response + will include. Set the parameter value to snippet.\",\n \"required\": + true,\n \"type\": \"string\"\n },\n \"mode\": + {\n \"description\": \"Parameter that specifies which channel + members to return.\",\n \"default\": \"all_current\",\n \"enum\": + [\n \"listMembersModeUnknown\",\n \"updates\",\n + \ \"all_current\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return only members that joined + after the first call with this mode was made.\",\n \"Return + all current members, from newest to oldest.\"\n ],\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"minimum\": \"0\",\n \"location\": \"query\",\n + \ \"format\": \"uint32\",\n \"type\": \"integer\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"default\": + \"5\",\n \"maximum\": \"1000\"\n },\n \"filterByMemberChannelId\": + {\n \"location\": \"query\",\n \"description\": + \"Comma separated list of channel IDs. Only data about members that are part + of this list will be included in the response.\",\n \"type\": + \"string\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/members\",\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.members.list\",\n \"path\": + \"youtube/v3/members\",\n \"response\": {\n \"$ref\": + \"MemberListResponse\"\n }\n }\n }\n }\n },\n \"kind\": + \"discovery#restDescription\",\n \"discoveryVersion\": \"v1\",\n \"version\": + \"v3\"\n}\n" headers: Alt-Svc: - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 @@ -12515,7 +12496,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:43 GMT + - Thu, 09 Mar 2023 00:27:03 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: @@ -12633,7 +12614,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:43 GMT + - Thu, 09 Mar 2023 00:27:03 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: diff --git a/tests/cassettes/test_youtube/test_donate.yaml b/tests/cassettes/test_youtube/test_donate.yaml index 90776036..54289800 100644 --- a/tests/cassettes/test_youtube/test_donate.yaml +++ b/tests/cassettes/test_youtube/test_donate.yaml @@ -10,10154 +10,5476 @@ interactions: uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest response: body: - string: "{\n \"ownerName\": \"Google\",\n \"protocol\": \"rest\",\n \"version\": - \"v3\",\n \"discoveryVersion\": \"v1\",\n \"batchPath\": \"batch\",\n \"id\": - \"youtube:v3\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"resources\": {\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/members\",\n \"parameters\": - {\n \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"mode\": {\n \"default\": - \"all_current\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"type\": - \"string\"\n },\n \"filterByMemberChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"1000\",\n \"default\": \"5\",\n \"minimum\": \"0\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"hasAccessToLevel\": {\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.members.list\",\n - \ \"description\": \"Retrieves a list of members that match the request - criteria for a channel.\",\n \"flatPath\": \"youtube/v3/members\"\n - \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n - \ \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.i18nRegions.list\",\n \"response\": - {\n \"$ref\": \"I18nRegionListResponse\"\n },\n \"parameters\": - {\n \"hl\": {\n \"location\": \"query\",\n \"default\": - \"en_US\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the i18nRegion resource properties that the API - response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/i18nRegions\"\n }\n }\n },\n \"thirdPartyLinks\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"description\": - \"Get a third party link of the given type.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"linkingToken\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Get - a third party link with the given linking token.\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API response will include. Supported values are linkingToken, - status, and snippet.\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.thirdPartyLinks.list\"\n },\n \"update\": - {\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel ID to which changes - should be applied, for delegation.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"PUT\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"description\": \"Updates an existing - resource.\",\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ }\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"description\": \"Deletes a resource.\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Do not use. Required for compatibility.\"\n - \ },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Channel ID to which changes should - be applied, for delegation.\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"required\": true,\n \"description\": \"Type of - the link to be deleted.\",\n \"location\": \"query\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ]\n },\n \"linkingToken\": {\n \"type\": - \"string\",\n \"description\": \"Delete the partner links with - the given linking token.\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"id\": \"youtube.thirdPartyLinks.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/thirdPartyLinks\"\n - \ },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"repeated\": true\n },\n - \ \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"commentThreads\": {\n \"methods\": {\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ },\n \"searchTerms\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads of all videos of the channel and the channel comments - as well.\",\n \"location\": \"query\"\n },\n \"textFormat\": - {\n \"default\": \"html\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"description\": - \"The requested text format for the returned comments.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ]\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"20\",\n \"minimum\": - \"1\",\n \"maximum\": \"100\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"moderationStatus\": {\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"default\": - \"published\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Limits the returned comment - threads to those with the specified moderation status. Not compatible with - the 'id' filter. Valid values: published, heldForReview, likelySpam.\"\n },\n - \ \"videoId\": {\n \"description\": \"Returns the comment - threads of the specified video.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"order\": {\n \"default\": - \"time\",\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"location\": \"query\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"CommentThreadListResponse\"\n },\n \"id\": \"youtube.commentThreads.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/commentThreads\"\n },\n \"insert\": {\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.commentThreads.insert\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/commentThreads\"\n - \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"maxResults\": - {\n \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"default\": \"5\"\n },\n \"broadcastType\": - {\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Return only broadcasts with the selected type.\",\n \"default\": - \"event\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ],\n \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Return - broadcasts with the given ids from Stubby or Apiary.\",\n \"repeated\": - true\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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, status - and statistics.\"\n },\n \"broadcastStatus\": {\n \"type\": - \"string\",\n \"description\": \"Return broadcasts with a certain - status, e.g. active broadcasts.\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ]\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"id\": \"youtube.liveBroadcasts.list\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieve the list of broadcasts - associated with the given channel.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\"\n },\n \"insert\": - {\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"description\": - \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.insert\"\n },\n \"insertCuepoint\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Insert cuepoints in a broadcast\",\n - \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"id\": {\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"id\": - \"youtube.liveBroadcasts.insertCuepoint\",\n \"parameterOrder\": - [],\n \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"httpMethod\": - \"POST\"\n },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"id\": - \"youtube.liveBroadcasts.update\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"description\": \"Updates an existing - broadcast for the authenticated user.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"bind\": {\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.bind\",\n \"description\": - \"Bind a broadcast to a stream.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"id\": {\n \"description\": - \"Broadcast to bind to the stream\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"streamId\": - {\n \"description\": \"Stream to bind, if not set unbind the - current one.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n }\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.delete\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"Broadcast to delete.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Delete a given broadcast.\"\n },\n \"transition\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"description\": - \"Transition a broadcast to a given status.\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"parameters\": - {\n \"broadcastStatus\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Start - testing the broadcast. YouTube transmits video to the broadcast's monitor - stream. Note that you can only transition a broadcast to the testing state - if its contentDetails.monitorStream.enableMonitorStream property is set to - true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The - broadcast is over. YouTube stops transmitting video.\"\n ],\n - \ \"enum\": [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The status to which the broadcast is going - to transition.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"Broadcast to transition.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ]\n }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"mediaUpload\": {\n \"protocols\": {\n - \ \"simple\": {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"6291456\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"id\": \"youtube.channelBanners.insert\",\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"supportsMediaUpload\": - true,\n \"parameters\": {\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\"\n },\n \"onBehalfOfContentOwner\": {\n - \ \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n },\n \"parameterOrder\": - []\n }\n }\n },\n \"playlistItems\": {\n \"methods\": - {\n \"update\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.update\",\n \"description\": - \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"id\": \"youtube.playlistItems.delete\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new resource into this collection.\",\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"flatPath\": \"youtube/v3/playlistItems\"\n - \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"0\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"default\": - \"5\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the playlist items associated with the given video ID.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"part\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true,\n \"description\": - \"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.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"playlistId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the playlist items within the given - playlist.\"\n }\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.list\"\n }\n }\n },\n - \ \"channels\": {\n \"methods\": {\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": \"query\"\n - \ }\n },\n \"request\": {\n \"$ref\": - \"Channel\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"response\": {\n \"$ref\": \"Channel\"\n - \ },\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.channels.update\",\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"path\": \"youtube/v3/channels\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"list\": {\n \"parameters\": {\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"forUsername\": {\n \"type\": - \"string\",\n \"description\": \"Return the channel associated - with a YouTube username.\",\n \"location\": \"query\"\n },\n - \ \"managedByMe\": {\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Return the channels managed by - the authenticated user.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"description\": \"Return the ids of channels owned - by the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"categoryId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return the channels within the - specified guide category ID.\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the channels subscribed - to the authenticated user\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"description\": \"Return the channels - with the specified IDs.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"hl\": - {\n \"location\": \"query\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"path\": \"youtube/v3/channels\",\n \"response\": - {\n \"$ref\": \"ChannelListResponse\"\n },\n \"id\": - \"youtube.channels.list\",\n \"description\": \"Retrieves a list - of resources, possibly filtered.\"\n }\n }\n },\n \"liveChatBans\": - {\n \"methods\": {\n \"insert\": {\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"response\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"description\": \"Inserts a new - resource into this collection.\",\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n }\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a chat ban.\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"id\": \"youtube.liveChatBans.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"parameters\": {\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The - id of the live chat for which comments should be returned.\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Specifies the localization language in which - the system messages should be returned.\"\n },\n \"profileImageSize\": - {\n \"minimum\": \"16\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"description\": \"Specifies - the size of the profile image that should be returned for each user.\",\n - \ \"maximum\": \"720\",\n \"format\": \"uint32\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"minimum\": \"200\",\n \"format\": \"uint32\",\n - \ \"default\": \"500\",\n \"location\": \"query\",\n - \ \"maximum\": \"2000\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the liveChatComment resource parts that the - API response will include. Supported values are id and snippet.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"id\": \"youtube.liveChatMessages.delete\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Deletes a chat message.\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"description\": \"Inserts a - new resource into this collection.\",\n \"id\": \"youtube.liveChatMessages.insert\"\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/superChatEvents\",\n - \ \"flatPath\": \"youtube/v3/superChatEvents\",\n \"response\": - {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"parameters\": - {\n \"pageToken\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"hl\": {\n - \ \"type\": \"string\",\n \"description\": \"Return - rendered funding amounts in specified language.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"1\",\n \"maximum\": \"50\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the superChatEvent - resource parts that the API response will include. This parameter is currently - not supported.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.superChatEvents.list\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\"\n }\n }\n },\n \"watermarks\": {\n \"methods\": - {\n \"unset\": {\n \"description\": \"Allows removal of channel - watermark.\",\n \"parameters\": {\n \"channelId\": {\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"id\": \"youtube.watermarks.unset\",\n \"path\": - \"youtube/v3/watermarks/unset\",\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n - \ \"httpMethod\": \"POST\"\n },\n \"set\": {\n \"flatPath\": - \"youtube/v3/watermarks/set\",\n \"description\": \"Allows upload - of watermark image and setting it for a channel.\",\n \"supportsMediaUpload\": - true,\n \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"10485760\"\n },\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"InvideoBranding\"\n - \ },\n \"parameters\": {\n \"channelId\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"id\": \"youtube.watermarks.set\"\n }\n }\n },\n - \ \"search\": {\n \"methods\": {\n \"list\": {\n \"flatPath\": - \"youtube/v3/search\",\n \"parameters\": {\n \"videoDimension\": - {\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"Include both 3D and - non-3D videos in returned results. This is the default value.\",\n \"Restrict - search results to exclude 3D videos.\",\n \"Restrict search - results to only include 3D videos.\"\n ],\n \"description\": - \"Filter on 3d videos.\",\n \"type\": \"string\"\n },\n - \ \"topicId\": {\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular topic.\",\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"default\": \"5\",\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"relevanceLanguage\": - {\n \"type\": \"string\",\n \"description\": \"Return - results relevant to this language.\",\n \"location\": \"query\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"description\": \"Display the content as seen by - viewers in this country.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoDuration\": - {\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Filter - on the duration of the videos.\",\n \"type\": \"string\"\n },\n - \ \"order\": {\n \"default\": \"relevance\",\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"description\": \"Sort order of the results.\"\n },\n - \ \"publishedAfter\": {\n \"description\": \"Filter - on resources published after this date.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"format\": \"google-datetime\"\n - \ },\n \"videoLicense\": {\n \"enum\": [\n - \ \"any\",\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"description\": \"Filter on the license of - the videos.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"Return - all videos, regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ]\n },\n \"type\": {\n - \ \"description\": \"Restrict results to a particular set of resource - types from One Platform.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"q\": - {\n \"location\": \"query\",\n \"description\": - \"Textual search terms to match.\",\n \"type\": \"string\"\n - \ },\n \"videoDefinition\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"description\": \"Filter - on the definition of the videos.\",\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ]\n - \ },\n \"locationRadius\": {\n \"description\": - \"Filter on distance from the location (specified above).\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"relatedToVideoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Search related to a resource.\"\n },\n - \ \"forContentOwner\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Search - owned by a content owner.\"\n },\n \"safeSearch\": {\n - \ \"description\": \"Indicates whether the search results should - include restricted content as well as standard content.\",\n \"enumDescriptions\": - [\n \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"default\": \"moderate\"\n },\n \"publishedBefore\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on resources published before this date.\",\n \"format\": \"google-datetime\",\n - \ \"location\": \"query\"\n },\n \"videoCaption\": - {\n \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"description\": \"Filter on the presence - of captions on the videos.\"\n },\n \"forMine\": {\n - \ \"location\": \"query\",\n \"description\": \"Search - for the private videos of the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"eventType\": {\n \"location\": - \"query\",\n \"description\": \"Filter on the livestream status - of the videos.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ],\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n },\n \"channelId\": - {\n \"description\": \"Filter on resources belonging to this - channelId.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoEmbeddable\": {\n \"description\": - \"Filter on embeddable videos.\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, embeddable or not.\",\n \"Only - retrieve embeddable videos.\"\n ],\n \"type\": \"string\"\n - \ },\n \"location\": {\n \"description\": - \"Filter on location of the video\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"forDeveloper\": - {\n \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"channelType\": - {\n \"description\": \"Add a filter on the channel search.\",\n - \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ]\n },\n \"videoType\": - {\n \"description\": \"Filter on videos of a specific type.\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"type\": \"string\"\n },\n \"videoCategoryId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on videos in a specific category.\"\n - \ },\n \"videoSyndicated\": {\n \"enum\": - [\n \"videoSyndicatedUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Filter - on syndicated videos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, syndicated or not.\",\n \"Only - retrieve syndicated videos.\"\n ]\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true,\n \"description\": - \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"SearchListResponse\"\n },\n \"path\": - \"youtube/v3/search\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of search resources\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.search.list\",\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the videoCategory resource parts that the - API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"default\": \"en-US\",\n - \ \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"id\": - \"youtube.videoAbuseReportReasons.list\"\n }\n }\n },\n \"activities\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"path\": \"youtube/v3/activities\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"id\": \"youtube.activities.list\",\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n },\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\"\n },\n \"publishedAfter\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"format\": \"google-datetime\"\n },\n \"publishedBefore\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\"\n },\n \"home\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"playlists\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.playlists.list\",\n \"response\": - {\n \"$ref\": \"PlaylistListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"description\": \"Return the playlists with the given IDs for - Stubby or Apiary.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"type\": \"integer\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the playlists owned by the specified channel ID.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"description\": - \"Return the playlists owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\"\n - \ }\n }\n },\n \"update\": {\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"id\": \"youtube.playlists.update\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/playlists\"\n },\n \"insert\": - {\n \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.insert\"\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"flatPath\": \"youtube/v3/playlists\",\n \"id\": - \"youtube.playlists.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/playlists\",\n \"httpMethod\": \"DELETE\"\n - \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\"\n }\n - \ },\n \"description\": \"Retrieves a list of all pricing - levels offered by a creator to the fans.\",\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/membershipsLevels\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"response\": - {\n \"$ref\": \"MembershipsLevelListResponse\"\n },\n - \ \"id\": \"youtube.membershipsLevels.list\"\n }\n }\n - \ },\n \"liveChatModerators\": {\n \"methods\": {\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"id\": \"youtube.liveChatModerators.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n }\n - \ },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.liveChatModerators.list\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - liveChatModerator resource parts that the API response will include. Supported - values are id and snippet.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"liveChatId\": {\n \"description\": - \"The id of the live chat for which moderators should be returned.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"response\": {\n \"$ref\": - \"LiveChatModeratorListResponse\"\n }\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"description\": \"Deletes a chat moderator.\",\n \"id\": - \"youtube.liveChatModerators.delete\",\n \"path\": \"youtube/v3/liveChat/moderators\"\n - \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n - \ \"insert\": {\n \"request\": {\n \"$ref\": \"AbuseReport\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"id\": - \"youtube.abuseReports.insert\",\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n }\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"id\": \"youtube.i18nLanguages.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"I18nLanguageListResponse\"\n },\n \"flatPath\": - \"youtube/v3/i18nLanguages\",\n \"path\": \"youtube/v3/i18nLanguages\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the i18nLanguage resource properties that the API response - will include. Set the parameter value to snippet.\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"default\": \"en_US\",\n - \ \"type\": \"string\"\n }\n }\n }\n - \ }\n },\n \"thumbnails\": {\n \"methods\": {\n \"set\": - {\n \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n - \ \"videoId\"\n ],\n \"parameters\": {\n \"videoId\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"Returns the Thumbnail with the given video - IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"path\": \"youtube/v3/thumbnails/set\",\n \"flatPath\": - \"youtube/v3/thumbnails/set\",\n \"mediaUpload\": {\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ }\n },\n \"maxSize\": \"2097152\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.thumbnails.set\",\n \"description\": - \"As this is not an insert in a strict sense (it supports uploading/setting - of a thumbnail for multiple videos, which doesn't result in creation of a - single resource), I use a custom verb here.\",\n \"supportsMediaUpload\": - true\n }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.videoCategories.list\",\n - \ \"flatPath\": \"youtube/v3/videoCategories\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the videoCategory resource properties that the API response will include. - Set the parameter value to snippet.\",\n \"required\": true\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"default\": \"en-US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Returns the video categories with the - given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true\n }\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"path\": - \"youtube/v3/videoCategories\"\n }\n }\n },\n \"tests\": - {\n \"methods\": {\n \"insert\": {\n \"parameters\": - {\n \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.tests.insert\",\n - \ \"request\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"httpMethod\": \"POST\",\n \"description\": \"POST method.\",\n - \ \"path\": \"youtube/v3/tests\",\n \"flatPath\": \"youtube/v3/tests\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"response\": {\n \"$ref\": \"TestItem\"\n }\n - \ }\n }\n },\n \"liveStreams\": {\n \"methods\": {\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"location\": \"query\",\n \"default\": \"5\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n - \ },\n \"id\": {\n \"description\": \"Return - LiveStreams with the given ids from Stubby or Apiary.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.liveStreams.list\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"description\": \"Retrieve the list - of streams associated with the given channel. --\"\n },\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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, content_details, and status.\",\n \"required\": true,\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ }\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"id\": \"youtube.liveStreams.delete\",\n \"description\": - \"Deletes an existing stream for the authenticated user.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ }\n }\n },\n \"update\": {\n \"id\": - \"youtube.liveStreams.update\",\n \"description\": \"Updates an existing - stream for the authenticated user.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"path\": \"youtube/v3/liveStreams\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"subscriptions\": {\n \"methods\": {\n - \ \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.subscriptions.delete\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"parameters\": - {\n \"myRecentSubscribers\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"forChannelId\": - {\n \"description\": \"Return the subscriptions to the subset - of these channels that the authenticated user is subscribed to.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"mySubscribers\": {\n \"location\": \"query\",\n - \ \"description\": \"Return the subscribers of the given channel - owner.\",\n \"type\": \"boolean\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"minimum\": \"0\"\n },\n \"order\": - {\n \"enumDescriptions\": [\n \"\",\n \"Sort - by relevance.\",\n \"Sort by order of activity.\",\n \"Sort - alphabetically.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"description\": \"The order of the returned - subscriptions\",\n \"default\": \"relevance\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the subscriptions of the - given channel owner.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"Return the subscriptions with the given - IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"mine\": - {\n \"description\": \"Flag for returning the subscriptions of - the authenticated user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.subscriptions.list\",\n - \ \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"httpMethod\": \"GET\"\n },\n \"insert\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/subscriptions\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"request\": {\n \"$ref\": - \"Subscription\"\n },\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"id\": - \"youtube.subscriptions.insert\",\n \"response\": {\n \"$ref\": - \"Subscription\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\"\n }\n }\n },\n - \ \"videos\": {\n \"methods\": {\n \"getRating\": {\n \"flatPath\": - \"youtube/v3/videos/getRating\",\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.videos.getRating\",\n \"description\": - \"Retrieves the ratings that the authorized user gave to a list of specified - videos.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"response\": {\n \"$ref\": - \"VideoGetRatingResponse\"\n }\n },\n \"reportAbuse\": - {\n \"id\": \"youtube.videos.reportAbuse\",\n \"description\": - \"Report abuse for a video.\",\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\",\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [],\n \"request\": {\n - \ \"$ref\": \"VideoAbuseReport\"\n }\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"path\": \"youtube/v3/videos\",\n \"id\": \"youtube.videos.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"insert\": {\n \"supportsMediaUpload\": true,\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"path\": \"youtube/v3/videos\",\n - \ \"id\": \"youtube.videos.insert\",\n \"response\": {\n - \ \"$ref\": \"Video\"\n },\n \"httpMethod\": \"POST\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"stabilize\": {\n - \ \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Should stabilize be applied to the upload.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"notifySubscribers\": - {\n \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\",\n \"default\": - \"true\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"autoLevels\": {\n \"location\": - \"query\",\n \"description\": \"Should auto-levels be applied - to the upload.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"Video\"\n },\n \"mediaUpload\": - {\n \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": true\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"274877906944\",\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"maxResults\": {\n \"minimum\": \"1\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"description\": - \"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.\",\n \"default\": - \"5\"\n },\n \"hl\": {\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxHeight\": - {\n \"format\": \"int32\",\n \"minimum\": \"72\",\n - \ \"type\": \"integer\",\n \"maximum\": \"8192\",\n - \ \"location\": \"query\"\n },\n \"maxWidth\": - {\n \"maximum\": \"8192\",\n \"location\": \"query\",\n - \ \"description\": \"Return the player with maximum height specified - in\",\n \"format\": \"int32\",\n \"minimum\": \"72\",\n - \ \"type\": \"integer\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"regionCode\": {\n \"description\": - \"Use a chart that is specific to the specified region\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Return - videos with the given ids.\"\n },\n \"chart\": {\n \"enum\": - [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Return - the videos that are in the specified chart.\"\n },\n \"videoCategoryId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Use chart that is specific to the specified - video category\",\n \"default\": \"0\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"myRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"location\": - \"query\"\n },\n \"locale\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"VideoListResponse\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/videos\",\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/videos\",\n \"id\": - \"youtube.videos.list\"\n },\n \"rate\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"id\": \"youtube.videos.rate\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"description\": - \"Adds a like or dislike rating to a video or removes a rating from a video.\",\n - \ \"path\": \"youtube/v3/videos/rate\",\n \"parameters\": - {\n \"rating\": {\n \"required\": true,\n \"location\": - \"query\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ]\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n }\n },\n \"update\": {\n \"request\": - {\n \"$ref\": \"Video\"\n },\n \"id\": \"youtube.videos.update\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"path\": \"youtube/v3/videos\"\n - \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"id\": - \"youtube.youtube.v3.updateCommentThreads\",\n \"parameterOrder\": - [],\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/commentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n }\n }\n - \ }\n }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"insert\": {\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.channelSections.insert\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"path\": \"youtube/v3/channelSections\"\n - \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"parameters\": {\n \"channelId\": {\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"description\": \"Return content in specified language\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"mine\": - {\n \"description\": \"Return the ChannelSections owned by the - authenticated user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Return - the ChannelSections with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.channelSections.list\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"response\": {\n \"$ref\": - \"ChannelSectionListResponse\"\n }\n },\n \"update\": - {\n \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"id\": \"youtube.channelSections.update\",\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.channelSections.delete\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/channelSections\"\n }\n }\n },\n \"captions\": - {\n \"methods\": {\n \"insert\": {\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the caption - resource parts that the API response will include. Set the parameter value - to snippet.\"\n },\n \"onBehalfOfContentOwner\": {\n - \ \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"sync\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\"\n },\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/captions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Caption\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"path\": \"youtube/v3/captions\",\n \"mediaUpload\": - {\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ }\n },\n \"maxSize\": \"104857600\"\n - \ },\n \"request\": {\n \"$ref\": \"Caption\"\n - \ },\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.captions.insert\",\n - \ \"supportsMediaUpload\": true\n },\n \"download\": - {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"id\": {\n \"description\": - \"The ID of the caption track to download, required for One Platform.\",\n - \ \"location\": \"path\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"tlang\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"tlang is the language code; machine translate - the captions into this language.\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is be on behalf of\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"tfmt\": - {\n \"type\": \"string\",\n \"description\": \"Convert - the captions into this format. Supported options are sbv, srt, and vtt.\",\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/captions/{id}\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"useMediaDownloadService\": true,\n \"parameterOrder\": - [\n \"id\"\n ],\n \"supportsMediaDownload\": - true,\n \"description\": \"Downloads a caption track.\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/captions/{id}\",\n \"id\": - \"youtube.captions.download\"\n },\n \"delete\": {\n \"path\": - \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.delete\",\n \"description\": - \"Deletes a resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"onBehalfOf\": {\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"list\": {\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ],\n \"id\": - \"youtube.captions.list\",\n \"response\": {\n \"$ref\": - \"CaptionListResponse\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"repeated\": true\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"Returns - the captions with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the captions for the specified video.\",\n \"type\": - \"string\",\n \"required\": true\n }\n }\n - \ },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"supportsMediaUpload\": - true,\n \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n - \ \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"id\": \"youtube.captions.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"parameters\": {\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\",\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n }\n - \ }\n }\n },\n \"comments\": {\n \"methods\": {\n \"update\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/comments\",\n \"id\": - \"youtube.comments.update\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"description\": \"Updates an existing resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"setModerationStatus\": {\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ],\n \"parameters\": - {\n \"banAuthor\": {\n \"location\": \"query\",\n - \ \"default\": \"false\",\n \"description\": \"If - set to true the author of the comment gets added to the ban list. This means - all future comments of the author will autmomatically be rejected. Only valid - in combination with STATUS_REJECTED.\",\n \"type\": \"boolean\"\n - \ },\n \"moderationStatus\": {\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\",\n \"repeated\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"description\": \"Sets the moderation status of one or more comments.\",\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\"\n },\n - \ \"markAsSpam\": {\n \"description\": \"Expresses the caller's - opinion that one or more comments should be flagged as spam.\",\n \"id\": - \"youtube.comments.markAsSpam\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\"\n - \ }\n },\n \"path\": \"youtube/v3/comments/markAsSpam\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"maxResults\": {\n \"default\": \"20\",\n \"minimum\": - \"1\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"maximum\": \"100\"\n - \ },\n \"textFormat\": {\n \"description\": - \"The requested text format for the returned comments.\",\n \"location\": - \"query\",\n \"default\": \"html\",\n \"type\": - \"string\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ]\n },\n \"parentId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns replies to the specified comment. - Note, currently YouTube features only one level of replies (ie replies to - top level comments). However replies to replies may be supported in the future.\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Returns - the comments with the given IDs for One Platform.\",\n \"repeated\": - true\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more comment - resource properties that the API response will include.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/comments\"\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new resource into this collection.\",\n \"path\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.insert\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"request\": {\n \"$ref\": \"Comment\"\n }\n - \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Deletes a resource.\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/comments\",\n \"id\": - \"youtube.comments.delete\",\n \"path\": \"youtube/v3/comments\"\n - \ }\n }\n }\n },\n \"auth\": {\n \"oauth2\": {\n \"scopes\": - {\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n }\n }\n }\n },\n \"description\": \"The - YouTube Data API v3 is an API that provides access to YouTube data, such as - videos, playlists, and channels.\",\n \"basePath\": \"\",\n \"canonicalName\": - \"YouTube\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"name\": - \"youtube\",\n \"revision\": \"20230131\",\n \"icons\": {\n \"x16\": - \"http://www.google.com/images/icons/product/search-16.gif\",\n \"x32\": - \"http://www.google.com/images/icons/product/search-32.gif\"\n },\n \"baseUrl\": - \"https://youtube.googleapis.com/\",\n \"ownerDomain\": \"google.com\",\n - \ \"title\": \"YouTube Data API v3\",\n \"fullyEncodeReservedExpansion\": - true,\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"kind\": - \"discovery#restDescription\",\n \"servicePath\": \"\",\n \"parameters\": - {\n \"key\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"type\": \"string\"\n },\n \"callback\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"JSONP\"\n - \ },\n \"$.xgafv\": {\n \"enumDescriptions\": [\n \"v1 error - format\",\n \"v2 error format\"\n ],\n \"description\": \"V1 - error format.\",\n \"type\": \"string\",\n \"enum\": [\n \"1\",\n - \ \"2\"\n ],\n \"location\": \"query\"\n },\n \"oauth_token\": - {\n \"description\": \"OAuth 2.0 token for the current user.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"upload_protocol\": - {\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"access_token\": - {\n \"description\": \"OAuth access token.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"quotaUser\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"prettyPrint\": {\n \"location\": \"query\",\n \"description\": - \"Returns response with indentations and line breaks.\",\n \"type\": - \"boolean\",\n \"default\": \"true\"\n },\n \"alt\": {\n \"type\": - \"string\",\n \"description\": \"Data format for response.\",\n \"enum\": - [\n \"json\",\n \"media\",\n \"proto\"\n ],\n \"default\": - \"json\",\n \"enumDescriptions\": [\n \"Responses with Content-Type - of application/json\",\n \"Media download with context-dependent Content-Type\",\n - \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n - \ \"location\": \"query\"\n },\n \"fields\": {\n \"type\": - \"string\",\n \"description\": \"Selector specifying which fields to - include in a partial response.\",\n \"location\": \"query\"\n },\n - \ \"uploadType\": {\n \"description\": \"Legacy upload protocol for - media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"schemas\": {\n \"TestItemTestItemSnippet\": - {\n \"id\": \"TestItemTestItemSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {}\n },\n \"ChannelSectionSnippet\": {\n \"id\": - \"ChannelSectionSnippet\",\n \"properties\": {\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The channel - section's title for multiple_playlists and multiple_channels.\"\n },\n - \ \"localized\": {\n \"description\": \"Localized title, read-only.\",\n - \ \"$ref\": \"ChannelSectionLocalization\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the channel section.\"\n - \ },\n \"position\": {\n \"type\": \"integer\",\n \"description\": - \"The position of the channel section in the channel.\",\n \"format\": - \"uint32\"\n },\n \"style\": {\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The style of the channel section.\"\n },\n \"type\": {\n \"enum\": - [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ],\n \"description\": \"The type of the channel section.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the channel section's - default title and description.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\"\n },\n \"I18nRegion\": {\n \"id\": - \"I18nRegion\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#i18nRegion\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the i18n region, such as region code and - human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n region.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A *i18nRegion* resource identifies a region where - YouTube is available.\"\n },\n \"LiveChatTextMessageDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatTextMessageDetails\",\n \"properties\": - {\n \"messageText\": {\n \"description\": \"The user's message.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"SuperChatEventSnippet\": - {\n \"properties\": {\n \"displayString\": {\n \"description\": - \"A rendered string that displays the purchase amount and currency (e.g., - \\\"$1.00\\\"). The string is rendered for the given language.\",\n \"type\": - \"string\"\n },\n \"amountMicros\": {\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"supporterDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the supporter.\"\n },\n - \ \"superStickerMetadata\": {\n \"$ref\": \"SuperStickerMetadata\",\n - \ \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\"\n },\n \"createdAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the event occurred.\",\n \"format\": \"date-time\"\n - \ },\n \"messageType\": {\n \"type\": \"integer\",\n - \ \"description\": \"The tier for the paid message, which is based - on the amount of money spent to purchase the message.\",\n \"format\": - \"uint32\"\n },\n \"channelId\": {\n \"description\": - \"Channel id where the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\",\n \"type\": \"string\"\n - \ },\n \"commentText\": {\n \"description\": \"The text - contents of the comment left by the user.\",\n \"type\": \"string\"\n - \ },\n \"isSuperStickerEvent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"True if this event is a Super Sticker event.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"SuperChatEventSnippet\"\n - \ },\n \"LiveChatModeratorListResponse\": {\n \"properties\": {\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"description\": \"A list of moderators that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"type\": \"array\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatModeratorListResponse\",\n - \ \"type\": \"object\"\n },\n \"SuperChatEvent\": {\n \"description\": - \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\",\n \"type\": \"object\",\n \"id\": \"SuperChatEvent\",\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the Super Chat event.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n \"type\": - \"string\",\n \"default\": \"youtube#superChatEvent\"\n },\n - \ \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the Super Chat event.\",\n \"$ref\": - \"SuperChatEventSnippet\"\n }\n }\n },\n \"ChannelStatistics\": - {\n \"properties\": {\n \"viewCount\": {\n \"description\": - \"The number of times the channel has been viewed.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"videoCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of videos uploaded to the channel.\"\n },\n \"subscriberCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of subscribers that the channel has.\",\n \"type\": \"string\"\n - \ },\n \"commentCount\": {\n \"description\": \"The - number of comments for the channel.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"hiddenSubscriberCount\": - {\n \"description\": \"Whether or not the number of subscribers is - shown for this user.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Statistics about a channel: - number of subscribers, number of videos in the channel, etc.\",\n \"id\": - \"ChannelStatistics\"\n },\n \"ActivityContentDetailsUpload\": {\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsUpload\",\n - \ \"description\": \"Information about the uploaded video.\"\n },\n - \ \"CommentSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"parentId\": {\n \"type\": \"string\",\n \"description\": - \"The unique id of the parent comment, only set for replies.\"\n },\n - \ \"textOriginal\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"canRate\": {\n \"description\": \"Whether the current viewer - can rate this comment.\",\n \"type\": \"boolean\"\n },\n \"viewerRating\": - {\n \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"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.\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the video the comment refers to, if - any.\"\n },\n \"authorChannelUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Link to the author's YouTube channel, if any.\"\n - \ },\n \"moderationStatus\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment's moderation status. Will not be - set if the comments were requested through the id filter.\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"enumDescriptions\": [\n - \ \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"authorChannelId\": {\n \"$ref\": - \"CommentSnippetAuthorChannelId\"\n },\n \"updatedAt\": {\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the comment was last updated.\",\n \"format\": \"date-time\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time when the comment was originally published.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"textDisplay\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"likeCount\": {\n \"type\": \"integer\",\n \"description\": - \"The total number of likes this comment has received.\",\n \"format\": - \"uint32\"\n }\n },\n \"description\": \"Basic details about - a comment, such as its author and text.\",\n \"id\": \"CommentSnippet\"\n - \ },\n \"ActivityContentDetailsComment\": {\n \"properties\": {\n - \ \"resourceId\": {\n \"description\": \"The resourceId object - contains information that identifies the resource associated with the comment.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Information about a resource that received a comment.\",\n - \ \"id\": \"ActivityContentDetailsComment\"\n },\n \"PlaylistItemSnippet\": - {\n \"description\": \"Basic details about a playlist, including title, - description and thumbnails. Basic details of a YouTube Playlist item provided - by the author. Next ID: 15\",\n \"type\": \"object\",\n \"properties\": - {\n \"publishedAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the item was added to the playlist.\",\n \"format\": - \"date-time\"\n },\n \"description\": {\n \"description\": - \"The item's description.\",\n \"type\": \"string\"\n },\n - \ \"playlistId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify thGe playlist that the playlist item is in.\",\n - \ \"type\": \"string\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"description\": \"The id object contains - information that can be used to uniquely identify the resource that is included - in the playlist as the playlist item.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the user that added the item to the playlist.\"\n - \ },\n \"videoOwnerChannelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel this video belongs - to.\"\n },\n \"title\": {\n \"description\": \"The - item's title.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the playlist item belongs to.\"\n },\n \"position\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\"\n },\n \"videoOwnerChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel id for the channel this - video belongs to.\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist item. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n }\n },\n \"id\": \"PlaylistItemSnippet\"\n - \ },\n \"PlaylistItem\": {\n \"description\": \"A *playlistItem* - resource identifies another resource, such as a video, that is included in - a playlist. In addition, the playlistItem resource contains details about - the included resource that pertain specifically to how that resource is used - in that playlist. YouTube uses playlists to identify special collections of - videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods. For example, if - a user gives a positive rating to a video, you would insert that video into - the liked videos playlist for that user's channel.\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the playlist item.\",\n \"type\": \"string\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object is included in the resource if the included item is - a YouTube video. The object contains additional information about the video.\",\n - \ \"$ref\": \"PlaylistItemContentDetails\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlistItem\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the playlist item, such as its title and - position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the playlist item's privacy status.\",\n - \ \"$ref\": \"PlaylistItemStatus\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"PlaylistItem\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was added to the channel.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"type\": \"object\",\n \"description\": \"Details about a resource - which was added to a channel.\"\n },\n \"LiveBroadcast\": {\n \"type\": - \"object\",\n \"properties\": {\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n },\n - \ \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n \"description\": - \"The status object contains information about the event's status.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the event, including its title, description, start time, - and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the broadcast.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"statistics\": {\n \"$ref\": - \"LiveBroadcastStatistics\",\n \"description\": \"The statistics - object contains info about the event's current stats. These include concurrent - viewers and total chat count. Statistics can change (in either direction) - during the lifetime of an event. Statistics are only returned while the event - is live.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcast\\\".\",\n \"default\": - \"youtube#liveBroadcast\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"id\": \"LiveBroadcast\",\n \"description\": \"A *liveBroadcast* - resource represents an event that will be streamed, via live video, on YouTube.\"\n - \ },\n \"Activity\": {\n \"type\": \"object\",\n \"id\": \"Activity\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"default\": \"youtube#activity\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ActivityContentDetails\",\n \"description\": - \"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.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the activity, including the activity's type and group - ID.\",\n \"$ref\": \"ActivitySnippet\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the activity.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"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.\"\n - \ },\n \"SearchResult\": {\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#searchResult\\\".\",\n \"default\": - \"youtube#searchResult\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"description\": \"The - id object contains information that can be used to uniquely identify the resource - that matches the search request.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about a search result, such as its title or - description. For example, if the search result is a video, then the title - will be the video's title and the description will be the video's description.\",\n - \ \"$ref\": \"SearchResultSnippet\"\n }\n },\n \"id\": - \"SearchResult\",\n \"type\": \"object\",\n \"description\": \"A - search result contains information about a YouTube video, channel, or playlist - that matches the search parameters specified in an API request. While a search - result points to a uniquely identifiable resource, like a video, it does not - have its own persistent data.\"\n },\n \"PlaylistPlayer\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistPlayer\",\n \"properties\": {\n - \ \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelContentDetails\": {\n - \ \"properties\": {\n \"relatedPlaylists\": {\n \"type\": - \"object\",\n \"properties\": {\n \"likes\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n },\n \"watchLater\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch later playlist. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"favorites\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"watchHistory\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"uploads\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s uploaded videos. Use the videos.insert method to upload new videos - and the videos.delete method to delete previously uploaded videos.\"\n }\n - \ }\n }\n },\n \"type\": \"object\",\n \"description\": - \"Details about the content of a channel.\",\n \"id\": \"ChannelContentDetails\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"properties\": {\n \"reason\": {\n \"description\": - \"The reason that the resource is recommended to the user.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ]\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the recommended resource.\"\n },\n \"seedResourceId\": - {\n \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Information that identifies the recommended resource.\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID of this - abuse report secondary reason.\"\n },\n \"label\": {\n \"type\": - \"string\",\n \"description\": \"The localized label for this abuse - report secondary reason.\"\n }\n },\n \"id\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"PlaylistStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The playlist's privacy status.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\"\n }\n },\n \"id\": \"PlaylistStatus\"\n },\n - \ \"CommentThreadSnippet\": {\n \"description\": \"Basic details about - a comment thread.\",\n \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"totalReplyCount\": {\n - \ \"description\": \"The total number of replies (not including the - top level comment).\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"topLevelComment\": {\n \"$ref\": - \"Comment\",\n \"description\": \"The top level comment of this thread.\"\n - \ },\n \"canReply\": {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"isPublic\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the thread (and therefore all its comments) - is visible to all YouTube users.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"CommentThreadSnippet\"\n },\n \"VideoCategoryListResponse\": - {\n \"type\": \"object\",\n \"id\": \"VideoCategoryListResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoCategoryListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of video categories that can - be associated with YouTube videos. In this map, the video category ID is the - map key, and its value is the corresponding videoCategory resource.\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n }\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n }\n },\n \"PropertyValue\": {\n \"id\": \"PropertyValue\",\n - \ \"properties\": {\n \"property\": {\n \"type\": \"string\",\n - \ \"description\": \"A property.\"\n },\n \"value\": - {\n \"type\": \"string\",\n \"description\": \"The property's - value.\"\n }\n },\n \"description\": \"A pair Property / - Value.\",\n \"type\": \"object\"\n },\n \"MemberSnippet\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"membershipsDetails\": - {\n \"$ref\": \"MembershipsDetails\",\n \"description\": - \"Details about the user's membership.\"\n },\n \"creatorChannelId\": - {\n \"description\": \"The id of the channel that's offering memberships.\",\n - \ \"type\": \"string\"\n },\n \"memberDetails\": {\n - \ \"description\": \"Details about the member.\",\n \"$ref\": - \"ChannelProfileDetails\"\n }\n },\n \"id\": \"MemberSnippet\"\n - \ },\n \"VideoFileDetails\": {\n \"properties\": {\n \"fileType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"Known - video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an - MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"description\": \"The uploaded file's type as detected by YouTube's - video processing engine. Currently, YouTube only processes video files, but - this field is present whether a video file or another type of file was uploaded.\",\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ]\n },\n \"videoStreams\": - {\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"description\": \"A list of video streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about a video stream.\",\n \"type\": \"array\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\"\n },\n \"audioStreams\": {\n \"items\": {\n - \ \"$ref\": \"VideoFileDetailsAudioStream\"\n },\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\",\n \"type\": - \"array\"\n },\n \"durationMs\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The length of the uploaded video in milliseconds.\",\n - \ \"type\": \"string\"\n },\n \"fileSize\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded file's size in bytes. - This field is present whether a video file or another type of file was uploaded.\",\n - \ \"format\": \"uint64\"\n },\n \"fileName\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded file's name. This field - is present whether a video file or another type of file was uploaded.\"\n - \ },\n \"creationTime\": {\n \"description\": \"The - date and time when the uploaded video file was created. The value is specified - in ISO 8601 format. Currently, the following ISO 8601 formats are supported: - - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: - YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n },\n - \ \"container\": {\n \"description\": \"The uploaded video - file's container format.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"VideoFileDetails\",\n \"description\": - \"Describes original video file properties, including technical details about - audio and video streams, but also metadata information like content length, - digitization time, or geotagging information.\"\n },\n \"MembershipsDetails\": - {\n \"properties\": {\n \"membershipsDuration\": {\n \"description\": - \"Data about memberships duration without taking into consideration pricing - levels.\",\n \"$ref\": \"MembershipsDuration\"\n },\n \"highestAccessibleLevel\": - {\n \"type\": \"string\",\n \"description\": \"Id of the - highest level that the user has access to at the moment.\"\n },\n \"membershipsDurationAtLevels\": - {\n \"type\": \"array\",\n \"description\": \"Data about - memberships duration on particular pricing levels.\",\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n }\n },\n - \ \"highestAccessibleLevelDisplayName\": {\n \"type\": \"string\",\n - \ \"description\": \"Display name for the highest level that the user - has access to at the moment.\"\n },\n \"accessibleLevels\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Ids of all levels that - the user has access to. This includes the currently active level and all other - levels that are included because of a higher purchase.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"MembershipsDetails\"\n },\n - \ \"ActivityContentDetailsBulletin\": {\n \"description\": \"Details - about a channel bulletin post.\",\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource associated with a bulletin post. @mutable youtube.activities.insert\",\n - \ \"$ref\": \"ResourceId\"\n }\n }\n },\n \"LiveStreamSnippet\": - {\n \"properties\": {\n \"title\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The stream's title. The value must be between - 1 and 128 characters long.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the stream - was created.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that is transmitting the stream.\"\n },\n \"description\": - {\n \"description\": \"The stream's description. The value cannot - be longer than 10000 characters.\",\n \"type\": \"string\"\n },\n - \ \"isDefaultStream\": {\n \"type\": \"boolean\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveStreamSnippet\"\n - \ },\n \"MembershipsDuration\": {\n \"type\": \"object\",\n \"properties\": - {\n \"memberTotalDurationMonths\": {\n \"format\": \"int32\",\n - \ \"type\": \"integer\",\n \"description\": \"The cumulative - time the user has been a member across all levels in complete months (the - time is rounded down to the nearest integer).\"\n },\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member across all levels.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"MembershipsDuration\"\n },\n \"LevelDetails\": - {\n \"properties\": {\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The name that should be used when - referring to this level.\"\n }\n },\n \"id\": \"LevelDetails\",\n - \ \"type\": \"object\"\n },\n \"VideoContentDetails\": {\n \"description\": - \"Details about the content of a YouTube Video.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"definition\": {\n \"enumDescriptions\": - [\n \"sd\",\n \"hd\"\n ],\n \"type\": - \"string\",\n \"description\": \"The value of definition indicates - whether the video is available in high definition or only in standard definition.\",\n - \ \"enum\": [\n \"sd\",\n \"hd\"\n ]\n - \ },\n \"hasCustomThumbnail\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether the video uploader has provided - a custom thumbnail image for the video. This property is only visible to the - video uploader.\"\n },\n \"duration\": {\n \"type\": - \"string\",\n \"description\": \"The length of the video. The tag - value is an ISO 8601 duration in the format PT#M#S, in which the letters PT - indicate that the value specifies a period of time, and the letters M and - S refer to length in minutes and seconds, respectively. The # characters preceding - the M and S letters are both integers that specify the number of minutes (or - seconds) of the video. For example, a value of PT15M51S indicates that the - video is 15 minutes and 51 seconds long.\"\n },\n \"dimension\": - {\n \"description\": \"The value of dimension indicates whether the - video is available in 3D or in 2D.\",\n \"type\": \"string\"\n },\n - \ \"projection\": {\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"Specifies the projection format of the video.\"\n },\n \"countryRestriction\": - {\n \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\",\n \"$ref\": - \"AccessPolicy\"\n },\n \"contentRating\": {\n \"$ref\": - \"ContentRating\",\n \"description\": \"Specifies the ratings that - the video received under various rating schemes.\"\n },\n \"caption\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"The value of - captions indicates whether the video has captions or not.\",\n \"enum\": - [\n \"true\",\n \"false\"\n ]\n },\n - \ \"regionRestriction\": {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\"\n },\n \"licensedContent\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of is_license_content indicates whether the video is licensed content.\"\n - \ }\n },\n \"id\": \"VideoContentDetails\"\n },\n \"ThirdPartyLinkStatus\": - {\n \"type\": \"object\",\n \"description\": \"The third-party link - status object contains information about the status of the link.\",\n \"id\": - \"ThirdPartyLinkStatus\",\n \"properties\": {\n \"linkStatus\": - {\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n }\n },\n - \ \"LiveChatUserBannedMessageDetails\": {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"banType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ],\n \"description\": \"The - type of ban.\"\n },\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"The details of the - user that was banned.\"\n },\n \"banDurationSeconds\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - duration of the ban. This property is only present if the banType is temporary.\"\n - \ }\n }\n },\n \"LiveBroadcastStatus\": {\n \"description\": - \"Live broadcast state.\",\n \"properties\": {\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - privacy status. Note that the broadcast represents exactly one YouTube video, - so the privacy settings are identical to those supported for videos. In addition, - you can set this field by modifying the broadcast resource or by setting the - privacyStatus field of the corresponding video resource.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"recordingStatus\": {\n \"description\": - \"The broadcast's recording status.\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"type\": - \"string\"\n },\n \"lifeCycleStatus\": {\n \"enum\": - [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's status. The status can be updated - using the API's liveBroadcasts.transition method.\"\n },\n \"liveBroadcastPriority\": - {\n \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Low priority - broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ],\n \"type\": \"string\"\n },\n \"madeForKids\": - {\n \"description\": \"Whether the broadcast is made for kids or - not, decided by YouTube instead of the creator. This field is read only.\",\n - \ \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\",\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveBroadcastStatus\"\n },\n \"LiveStreamListResponse\": {\n \"type\": - \"object\",\n \"id\": \"LiveStreamListResponse\",\n \"properties\": - {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of live - streams that match the request criteria.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveStreamListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ChannelConversionPings\": {\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"pings\": {\n \"description\": \"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.\",\n \"items\": - {\n \"$ref\": \"ChannelConversionPing\"\n },\n \"type\": - \"array\"\n }\n },\n \"id\": \"ChannelConversionPings\"\n - \ },\n \"VideoCategorySnippet\": {\n \"description\": \"Basic details - about a video category, such as its localized title.\",\n \"id\": \"VideoCategorySnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"assignable\": - {\n \"type\": \"boolean\"\n },\n \"channelId\": {\n - \ \"description\": \"The YouTube channel that created the video category.\",\n - \ \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - video category's title.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"CommentListResponse\": {\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#commentListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"A list of comments - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n },\n - \ \"id\": \"CommentListResponse\",\n \"type\": \"object\"\n },\n - \ \"SubscriptionSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"publishedAt\": {\n \"description\": \"The date and time - that the subscription was created.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the video. 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.\"\n },\n \"resourceId\": {\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\",\n \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel that the subscription belongs to.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The subscription's title.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The subscription's details.\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the subscriber's channel.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"SubscriptionSnippet\",\n - \ \"description\": \"Basic details about a subscription, including title, - description and thumbnails of the subscribed item.\"\n },\n \"ActivityContentDetails\": - {\n \"properties\": {\n \"channelItem\": {\n \"$ref\": - \"ActivityContentDetailsChannelItem\",\n \"description\": \"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.\"\n },\n - \ \"comment\": {\n \"description\": \"The comment object contains - information about a resource that received a comment. This property is only - present if the snippet.type is comment.\",\n \"$ref\": \"ActivityContentDetailsComment\"\n - \ },\n \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\"\n },\n \"bulletin\": {\n \"description\": - \"The bulletin object contains details about a channel bulletin post. This - object is only present if the snippet.type is bulletin.\",\n \"$ref\": - \"ActivityContentDetailsBulletin\"\n },\n \"upload\": {\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"promotedItem\": {\n \"description\": \"The - promotedItem object contains details about a resource which is being promoted. - This property is only present if the snippet.type is promotedItem.\",\n \"$ref\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"like\": {\n - \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsLike\"\n - \ },\n \"social\": {\n \"description\": \"The social - object contains details about a social network post. This property is only - present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"recommendation\": {\n \"description\": \"The - recommendation object contains information about a recommended resource. This - property is only present if the snippet.type is recommendation.\",\n \"$ref\": - \"ActivityContentDetailsRecommendation\"\n },\n \"favorite\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"subscription\": {\n \"description\": \"The - subscription object contains information about a channel that a user subscribed - to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n }\n },\n - \ \"description\": \"Details about the content of an activity: the video - that was shared, the channel that was subscribed to, etc.\",\n \"id\": - \"ActivityContentDetails\",\n \"type\": \"object\"\n },\n \"MonitorStreamInfo\": - {\n \"properties\": {\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"HTML code that embeds a player that - plays the monitor stream.\"\n },\n \"broadcastStreamDelayMs\": - {\n \"description\": \"If you have set the enableMonitorStream property - to true, then this property determines the length of the live broadcast delay.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"enableMonitorStream\": {\n - \ \"type\": \"boolean\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"This value determines whether the monitor stream - is enabled for the broadcast. If the monitor stream is enabled, then YouTube - will broadcast the event content on a special stream intended only for the - broadcaster's consumption. The broadcaster can use the stream to review the - event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\"\n }\n },\n \"id\": \"MonitorStreamInfo\",\n - \ \"type\": \"object\",\n \"description\": \"Settings and Info of - the monitor stream\"\n },\n \"MembershipsLevelListResponse\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of pricing levels offered - by a creator to the fans.\",\n \"items\": {\n \"$ref\": - \"MembershipsLevel\"\n }\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevelListResponse\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"MembershipsLevelListResponse\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"description\": \"Information about a video stream.\",\n \"id\": - \"VideoFileDetailsVideoStream\",\n \"type\": \"object\",\n \"properties\": - {\n \"bitrateBps\": {\n \"description\": \"The video stream's - bitrate, in bits per second.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"frameRateFps\": {\n \"description\": - \"The video stream's frame rate, in frames per second.\",\n \"type\": - \"number\",\n \"format\": \"double\"\n },\n \"rotation\": - {\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"description\": \"The amount that YouTube needs to - rotate the original source content to properly display the video.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"widthPixels\": {\n \"type\": \"integer\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\",\n \"format\": - \"uint32\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"aspectRatio\": {\n \"type\": \"number\",\n \"format\": - \"double\",\n \"description\": \"The video content's display aspect - ratio, which specifies the aspect ratio in which the video should be displayed.\"\n - \ },\n \"heightPixels\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The encoded video content's height in pixels.\",\n - \ \"type\": \"integer\"\n },\n \"codec\": {\n \"type\": - \"string\",\n \"description\": \"The video codec that the stream - uses.\"\n }\n }\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"type\": \"object\",\n \"description\": \"A single tag suggestion - with it's relevance information.\",\n \"properties\": {\n \"categoryRestricts\": - {\n \"description\": \"A set of video categories for which the tag - is relevant. You can use this information to display appropriate tag suggestions - based on the video category that the video uploader associates with the video. - By default, tag suggestions are relevant for all categories if there are no - restricts defined for the keyword.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"tag\": - {\n \"type\": \"string\",\n \"description\": \"The keyword - tag suggested for the video.\"\n }\n },\n \"id\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"VideoCategory\": {\n \"description\": \"A *videoCategory* - resource identifies a category that has been or could be associated with uploaded - videos.\",\n \"type\": \"object\",\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video category.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"default\": \"youtube#videoCategory\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n }\n },\n - \ \"id\": \"VideoCategory\"\n },\n \"InvideoPosition\": {\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"id\": \"InvideoPosition\",\n \"properties\": {\n \"cornerPosition\": - {\n \"description\": \"Describes in which corner of the video the - visual widget will appear.\",\n \"enum\": [\n \"topLeft\",\n - \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"enum\": [\n \"corner\"\n - \ ],\n \"enumDescriptions\": [\n \"\"\n ],\n - \ \"description\": \"Defines the position type.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"SubscriptionListResponse\": - {\n \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#subscriptionListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"A list of subscriptions - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Subscription\"\n },\n \"type\": \"array\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n }\n },\n \"id\": \"SubscriptionListResponse\",\n - \ \"type\": \"object\"\n },\n \"VideoSuggestions\": {\n \"properties\": - {\n \"processingErrors\": {\n \"description\": \"A list of - errors that will prevent YouTube from successfully processing the uploaded - video video. These errors indicate that, regardless of the video's current - processing status, eventually, that status will almost certainly be failed.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\"\n }\n },\n - \ \"processingHints\": {\n \"description\": \"A list of suggestions - that may improve YouTube's ability to process the video.\",\n \"items\": - {\n \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"The MP4 file is not streamable, - this will slow down the processing. MOOV atom was not found at the beginning - of the file.\",\n \"Probably a better quality version of the - video exists. The video has wide screen aspect ratio, but is not an HD video.\",\n - \ \"Uploaded video is spherical video.\",\n \"Uploaded - video has spatial audio.\",\n \"Uploaded video is VR video.\",\n - \ \"Uploaded video is HDR video.\"\n ]\n },\n - \ \"type\": \"array\"\n },\n \"tagSuggestions\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoSuggestionsTagSuggestion\"\n },\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\"\n },\n \"processingWarnings\": {\n \"items\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ]\n },\n - \ \"description\": \"A list of reasons why YouTube may have difficulty - transcoding the uploaded video or that might result in an erroneous transcoding. - These warnings are generated before YouTube actually processes the uploaded - video file. In addition, they identify issues that are unlikely to cause the - video processing to fail but that might cause problems such as sync issues, - video artifacts, or a missing audio track.\",\n \"type\": \"array\"\n - \ },\n \"editorSuggestions\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ],\n - \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n - \ \"type\": \"string\"\n },\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\"\n }\n },\n \"description\": - \"Specifies suggestions on how to improve video content, including encoding - hints, tag suggestions, and editor suggestions.\",\n \"type\": \"object\",\n - \ \"id\": \"VideoSuggestions\"\n },\n \"ChannelSectionContentDetails\": - {\n \"id\": \"ChannelSectionContentDetails\",\n \"description\": - \"Details about a channelsection, including playlists and channels.\",\n \"type\": - \"object\",\n \"properties\": {\n \"playlists\": {\n \"type\": - \"array\",\n \"description\": \"The playlist ids for type single_playlist - and multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"channels\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"type\": \"array\"\n }\n }\n },\n \"VideoMonetizationDetails\": - {\n \"properties\": {\n \"access\": {\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\",\n - \ \"$ref\": \"AccessPolicy\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoMonetizationDetails\",\n \"description\": - \"Details about monetization of a YouTube Video.\"\n },\n \"ThumbnailSetResponse\": - {\n \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of thumbnails.\",\n \"items\": - {\n \"$ref\": \"ThumbnailDetails\"\n }\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#thumbnailSetResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ThumbnailSetResponse\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"description\": \"Details about a social network post.\",\n \"id\": - \"ActivityContentDetailsSocial\",\n \"properties\": {\n \"author\": - {\n \"type\": \"string\",\n \"description\": \"The author - of the social network post.\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"imageUrl\": {\n \"description\": \"An image - of the post's author.\",\n \"type\": \"string\"\n },\n \"referenceUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL of - the social network post.\"\n },\n \"type\": {\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ],\n \"description\": \"The name - of the social network.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelLocalization\": - {\n \"properties\": {\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - description.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for channel's title.\"\n - \ }\n },\n \"id\": \"ChannelLocalization\",\n \"description\": - \"Channel localization setting\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"description\": \"Information about a channel that a user subscribed - to.\",\n \"id\": \"ActivityContentDetailsSubscription\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"ActivitySnippet\": {\n \"id\": \"ActivitySnippet\",\n - \ \"properties\": {\n \"publishedAt\": {\n \"description\": - \"The date and time that the video was uploaded.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": {\n \"description\": - \"The description of the resource primarily associated with the activity. - @mutable youtube.activities.insert\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel associated with the activity.\",\n \"type\": - \"string\"\n },\n \"groupId\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"title\": - {\n \"description\": \"The title of the resource primarily associated - with the activity.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel responsible - for this activity\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n - \ \"like\",\n \"favorite\",\n \"comment\",\n - \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n - \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The type of activity that the resource describes.\"\n }\n },\n - \ \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\",\n \"type\": - \"object\"\n },\n \"I18nRegionListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n },\n \"description\": \"A list of regions - where YouTube is available. In this map, the i18n region ID is the map key, - and its value is the corresponding i18nRegion resource.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"default\": \"youtube#i18nRegionListResponse\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"I18nRegionListResponse\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viewer is a member. This matches the - `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated - membership gifting message. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n },\n \"gifterChannelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID of the - user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"ImageSettings\": {\n \"properties\": {\n \"bannerTvHighImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\",\n - \ \"$ref\": \"LocalizedProperty\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 640px by 70px banner image - that appears below the video player in the default view of the video watch - page. The URL for the image that appears above the top-left corner of the - video player. This is a 25-pixel-high image with a flexible width that cannot - exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. Desktop size (1060x175).\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"bannerTvImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size low resolution (320x88).\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size extra high resolution - (2560x424).\",\n \"type\": \"string\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"bannerMobileImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Mobile size (640x175).\"\n },\n - \ \"bannerTvLowImageUrl\": {\n \"description\": \"Banner image. - TV size low resolution (854x480).\",\n \"type\": \"string\"\n },\n - \ \"trackingImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The URL for a 1px by 1px tracking pixel that can be used to collect statistics - for views of the channel or video pages.\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"backgroundImageUrl\": - {\n \"description\": \"The URL for the background image shown on - the video watch page. The image should be 1200px by 615px, with a maximum - file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"watchIconImageUrl\": {\n \"type\": \"string\"\n },\n - \ \"bannerTabletImageUrl\": {\n \"description\": \"Banner image. - Tablet size (1707x283).\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ImageSettings\",\n \"type\": \"object\",\n \"description\": - \"Branding properties for images associated with the channel.\"\n },\n - \ \"ActivityListResponse\": {\n \"id\": \"ActivityListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Activity\"\n }\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n \"default\": - \"youtube#activityListResponse\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveChatSuperChatDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"userComment\": {\n \"description\": - \"The comment added by the user to this Super Chat event.\",\n \"type\": - \"string\"\n },\n \"tier\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The tier in which the amount belongs. Lower amounts - belong to lower tiers. The lowest tier is 1.\",\n \"type\": \"integer\"\n - \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\"\n },\n \"currency\": {\n \"type\": - \"string\",\n \"description\": \"The currency in which the purchase - was made.\"\n },\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n }\n - \ },\n \"id\": \"LiveChatSuperChatDetails\"\n },\n \"VideoSnippet\": - {\n \"description\": \"Basic details about a video, including title, - description, uploader, thumbnails and category.\",\n \"properties\": - {\n \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that the video was uploaded to.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"The video's title. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the video was uploaded.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the video - belongs to.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\",\n \"$ref\": \"VideoLocalization\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the videos's default snippet.\"\n },\n \"description\": {\n - \ \"type\": \"string\",\n \"description\": \"The video's - description. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"liveBroadcastContent\": {\n \"description\": \"Indicates - if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" if - the video is not an upcoming/active live broadcast.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"defaultAudioLanguage\": - {\n \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"tags\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of keyword tags associated with the video. - Tags may contain spaces.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"categoryId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube video category associated - with the video.\"\n }\n },\n \"id\": \"VideoSnippet\",\n - \ \"type\": \"object\"\n },\n \"WatchSettings\": {\n \"type\": - \"object\",\n \"description\": \"Branding properties for the watch. All - deprecated.\",\n \"id\": \"WatchSettings\",\n \"properties\": {\n - \ \"featuredPlaylistId\": {\n \"type\": \"string\",\n \"description\": - \"An ID that uniquely identifies a playlist that displays next to the video - player.\"\n },\n \"textColor\": {\n \"description\": - \"The background color for the video watch page's branded area.\",\n \"type\": - \"string\"\n },\n \"backgroundColor\": {\n \"type\": - \"string\",\n \"description\": \"The text color for the video watch - page's branded area.\"\n }\n }\n },\n \"Subscription\": - {\n \"properties\": {\n \"subscriberSnippet\": {\n \"$ref\": - \"SubscriptionSubscriberSnippet\",\n \"description\": \"The subscriberSnippet - object contains basic details about the subscriber.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the subscription.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#subscription\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscription\\\".\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the subscription, including its title - and the channel that the user subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains basic statistics about the subscription.\",\n - \ \"$ref\": \"SubscriptionContentDetails\"\n }\n },\n - \ \"id\": \"Subscription\",\n \"type\": \"object\",\n \"description\": - \"A *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\"\n },\n \"RelatedEntity\": - {\n \"type\": \"object\",\n \"id\": \"RelatedEntity\",\n \"properties\": - {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n }\n - \ },\n \"SubscriptionSubscriberSnippet\": {\n \"properties\": {\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel ID of the subscriber.\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The title of - the subscriber.\"\n },\n \"thumbnails\": {\n \"description\": - \"Thumbnails for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the subscriber.\"\n }\n - \ },\n \"description\": \"Basic details about a subscription's subscriber - including title, description, channel ID and thumbnails.\",\n \"type\": - \"object\",\n \"id\": \"SubscriptionSubscriberSnippet\"\n },\n \"LiveChatBan\": - {\n \"description\": \"A `__liveChatBan__` resource represents a ban - for a YouTube live chat.\",\n \"id\": \"LiveChatBan\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatBan\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the ban.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ThirdPartyLink\": {\n \"id\": \"ThirdPartyLink\",\n - \ \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\",\n \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the third- party account link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the status of the link.\",\n \"$ref\": - \"ThirdPartyLinkStatus\"\n },\n \"linkingToken\": {\n \"type\": - \"string\",\n \"description\": \"The linking_token identifies a YouTube - account and channel with which the third party account is linked.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#thirdPartyLink\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n }\n }\n },\n \"ChannelConversionPing\": - {\n \"type\": \"object\",\n \"description\": \"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.\",\n \"properties\": - {\n \"conversionUrl\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"context\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ],\n \"description\": - \"Defines the context of the ping.\"\n }\n },\n \"id\": \"ChannelConversionPing\"\n - \ },\n \"LiveStreamContentDetails\": {\n \"description\": \"Detailed - settings of a stream.\",\n \"properties\": {\n \"closedCaptionsIngestionUrl\": - {\n \"description\": \"The ingestion URL where the closed captions - of this stream are sent.\",\n \"type\": \"string\"\n },\n - \ \"isReusable\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \"\n }\n },\n \"id\": \"LiveStreamContentDetails\",\n \"type\": - \"object\"\n },\n \"PlaylistListResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"default\": \"youtube#playlistListResponse\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of playlists that match the request criteria\",\n \"items\": - {\n \"$ref\": \"Playlist\"\n }\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n }\n - \ },\n \"id\": \"PlaylistListResponse\",\n \"type\": \"object\"\n - \ },\n \"ThirdPartyLinkSnippet\": {\n \"properties\": {\n \"channelToStoreLink\": - {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\"\n },\n \"type\": {\n \"description\": \"Type - of the link named after the entities that are being linked.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ]\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic information about a third party - account link, including its type and type-specific information.\",\n \"id\": - \"ThirdPartyLinkSnippet\"\n },\n \"CdnSettings\": {\n \"type\": - \"object\",\n \"id\": \"CdnSettings\",\n \"properties\": {\n \"frameRate\": - {\n \"enum\": [\n \"30fps\",\n \"60fps\",\n - \ \"variable\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The frame rate of the inbound video data.\",\n \"type\": \"string\"\n - \ },\n \"ingestionType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \" The method or protocol used to - transmit the video stream.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"enum\": [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ]\n },\n \"ingestionInfo\": {\n - \ \"description\": \"The ingestionInfo object contains information - that YouTube provides that you need to transmit your RTMP or HTTP stream to - YouTube.\",\n \"$ref\": \"IngestionInfo\"\n },\n \"format\": - {\n \"type\": \"string\",\n \"description\": \"The format - of the video stream that you are sending to Youtube. \",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"resolution\": {\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The resolution of the inbound video data.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"description\": \"Brief description - of the live stream cdn settings.\"\n },\n \"SearchResultSnippet\": {\n - \ \"properties\": {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - search result. 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.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"A description of the search result.\"\n - \ },\n \"liveBroadcastContent\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"description\": \"It indicates if the resource (video - or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" - if there is not any upcoming/active live broadcasts.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the search result.\"\n },\n \"channelTitle\": {\n \"description\": - \"The title of the channel that published the resource that the search result - identifies.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The creation date and time of the resource - that the search result identifies.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The value that YouTube uses to uniquely - identify the channel that published the resource that the search result identifies.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"id\": \"SearchResultSnippet\"\n - \ },\n \"ChannelContentOwnerDetails\": {\n \"properties\": {\n \"contentOwner\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the content owner linked to the channel.\"\n },\n \"timeLinked\": - {\n \"description\": \"The date and time when the channel was linked - to the content owner.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"id\": \"ChannelContentOwnerDetails\"\n - \ },\n \"InvideoBranding\": {\n \"description\": \"LINT.IfChange - Describes an invideo branding.\",\n \"id\": \"InvideoBranding\",\n \"type\": - \"object\",\n \"properties\": {\n \"imageBytes\": {\n \"type\": - \"string\",\n \"format\": \"byte\",\n \"description\": \"The - bytes the uploaded image. Only used in api to youtube communication.\"\n },\n - \ \"targetChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel to which this branding links. If not present it defaults to - the current channel.\"\n },\n \"timing\": {\n \"$ref\": - \"InvideoTiming\",\n \"description\": \"The temporal position within - the video where watermark will be displayed.\"\n },\n \"position\": - {\n \"$ref\": \"InvideoPosition\",\n \"description\": \"The - spatial position within the video where the branding watermark will be displayed.\"\n - \ },\n \"imageUrl\": {\n \"description\": \"The url - of the uploaded image. Only used in apiary to api communication.\",\n \"type\": - \"string\"\n }\n }\n },\n \"SuperStickerMetadata\": {\n - \ \"properties\": {\n \"stickerId\": {\n \"type\": \"string\",\n - \ \"description\": \"Unique identifier of the Super Sticker. This - is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\"\n },\n \"altTextLanguage\": - {\n \"description\": \"Specifies the localization language in which - the alt text is returned.\",\n \"type\": \"string\"\n },\n - \ \"altText\": {\n \"description\": \"Internationalized alt - text that describes the sticker image and any animation associated with it.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"SuperStickerMetadata\",\n - \ \"type\": \"object\"\n },\n \"CommentThread\": {\n \"type\": - \"object\",\n \"id\": \"CommentThread\",\n \"description\": \"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.\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentThread\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThread\\\".\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the comment thread.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the comment thread and also the top level comment.\",\n \"$ref\": - \"CommentThreadSnippet\"\n }\n }\n },\n \"LiveChatSuperStickerDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n },\n \"amountMicros\": - {\n \"description\": \"The amount purchased by the user, in micros - (1,750,000 micros = 1.75).\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"superStickerMetadata\": {\n \"$ref\": - \"SuperStickerMetadata\",\n \"description\": \"Information about - the Super Sticker.\"\n },\n \"tier\": {\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n }\n },\n \"id\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"VideoLiveStreamingDetails\": {\n \"description\": \"Details - about the live streaming metadata.\",\n \"properties\": {\n \"scheduledStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast is scheduled to begin.\"\n - \ },\n \"actualStartTime\": {\n \"description\": \"The - time that the broadcast actually started. This value will not be available - until the broadcast begins.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"scheduledEndTime\": {\n \"type\": - \"string\",\n \"description\": \"The time that the broadcast is scheduled - to end. If the value is empty or the property is not present, then the broadcast - is scheduled to contiue indefinitely.\",\n \"format\": \"date-time\"\n - \ },\n \"concurrentViewers\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The number of - viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\"\n },\n \"actualEndTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - time that the broadcast actually ended. This value will not be available until - the broadcast is over.\",\n \"type\": \"string\"\n },\n \"activeLiveChatId\": - {\n \"description\": \"The ID of the currently active live chat attached - to this video. This field is filled only if the video is a currently live - broadcast that has live chat. Once the broadcast transitions to complete this - field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoLiveStreamingDetails\",\n \"type\": - \"object\"\n },\n \"VideoAgeGating\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoAgeGating\",\n \"properties\": {\n \"alcoholContent\": - {\n \"description\": \"Indicates whether or not the video has alcoholic - beverage content. Only users of legal purchasing age in a particular country, - as identified by ICAP, can view the content.\",\n \"type\": \"boolean\"\n - \ },\n \"restricted\": {\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\",\n \"type\": - \"boolean\"\n },\n \"videoGameRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Video game rating, if any.\",\n \"enum\": [\n \"anyone\",\n - \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n - \ ]\n }\n }\n },\n \"PlaylistLocalization\": {\n - \ \"id\": \"PlaylistLocalization\",\n \"properties\": {\n \"description\": - {\n \"description\": \"The localized strings for playlist's description.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for playlist's - title.\"\n }\n },\n \"description\": \"Playlist localization - setting\",\n \"type\": \"object\"\n },\n \"ChannelBrandingSettings\": - {\n \"description\": \"Branding properties of a YouTube channel.\",\n - \ \"properties\": {\n \"image\": {\n \"$ref\": \"ImageSettings\",\n - \ \"description\": \"Branding properties for branding images.\"\n - \ },\n \"channel\": {\n \"description\": \"Branding - properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n - \ },\n \"watch\": {\n \"$ref\": \"WatchSettings\",\n - \ \"description\": \"Branding properties for the watch page.\"\n },\n - \ \"hints\": {\n \"description\": \"Additional experimental - branding properties.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n }\n }\n },\n - \ \"id\": \"ChannelBrandingSettings\",\n \"type\": \"object\"\n },\n - \ \"I18nLanguageListResponse\": {\n \"id\": \"I18nLanguageListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"I18nLanguage\"\n },\n \"description\": \"A list of supported - i18n languages. In this map, the i18n language ID is the map key, and its - value is the corresponding i18nLanguage resource.\",\n \"type\": - \"array\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"SuperChatEventListResponse\": {\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of Super Chat purchases that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n - \ }\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"SuperChatEventListResponse\"\n },\n \"LiveStream\": {\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n - \ \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveStream\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n },\n - \ \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the stream.\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"cdn\": {\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\",\n \"$ref\": \"CdnSettings\"\n }\n - \ },\n \"id\": \"LiveStream\",\n \"description\": \"A live stream - describes a live ingestion point.\"\n },\n \"LiveChatMessageSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"displayMessage\": - {\n \"description\": \"Contains a string that can be displayed to - the user. If this field is not present the message is silent, at the moment - only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\",\n \"type\": - \"string\"\n },\n \"messageDeletedDetails\": {\n \"$ref\": - \"LiveChatMessageDeletedDetails\"\n },\n \"memberMilestoneChatDetails\": - {\n \"description\": \"Details about the Member Milestone Chat event, - this is only set if the type is 'memberMilestoneChatEvent'.\",\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"type\": {\n - \ \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ]\n },\n \"userBannedDetails\": {\n \"$ref\": - \"LiveChatUserBannedMessageDetails\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"description\": \"Details about the Gift Membership Received - event, this is only set if the type is 'giftMembershipReceivedEvent'.\",\n - \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n - \ \"authorChannelId\": {\n \"description\": \"The ID of the - user that authored this message, this field is not always filled. textMessageEvent - - the user that wrote the message fanFundingEvent - the user that funded the - broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\",\n \"type\": \"string\"\n },\n - \ \"superStickerDetails\": {\n \"description\": \"Details about - the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"hasDisplayContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the message has display content that should be displayed to users.\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"fanFundingEventDetails\": - {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the message was orignally - published.\",\n \"format\": \"date-time\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"superChatDetails\": {\n \"description\": \"Details - about the Super Chat event, this is only set if the type is 'superChatEvent'.\",\n - \ \"$ref\": \"LiveChatSuperChatDetails\"\n },\n \"newSponsorDetails\": - {\n \"description\": \"Details about the New Member Announcement - event, this is only set if the type is 'newSponsorEvent'. Please note that - \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n \"$ref\": - \"LiveChatNewSponsorDetails\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n }\n },\n - \ \"description\": \"Next ID: 33\",\n \"id\": \"LiveChatMessageSnippet\"\n - \ },\n \"LiveBroadcastStatistics\": {\n \"properties\": {\n \"totalChatCount\": - {\n \"description\": \"The total number of live chat messages currently - on the broadcast. The property and its value will be present if the broadcast - is public, has the live chat feature enabled, and has at least one message. - Note that this field will not be filled after the broadcast ends. So this - property would not identify the number of chat messages for an archived video - of a completed live broadcast.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"concurrentViewers\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Statistics about the live broadcast. - These represent a snapshot of the values at the time of the request. Statistics - are only returned for live broadcasts.\",\n \"id\": \"LiveBroadcastStatistics\"\n - \ },\n \"MembershipsLevelSnippet\": {\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"levelDetails\": - {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details - about the pricing level.\"\n },\n \"creatorChannelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The id of the - channel that's offering channel memberships.\"\n }\n }\n },\n - \ \"I18nLanguageSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\",\n \"properties\": {\n \"name\": {\n \"type\": - \"string\",\n \"description\": \"The human-readable name of the language - in the language itself.\"\n },\n \"hl\": {\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"I18nLanguageSnippet\"\n },\n - \ \"ChannelToStoreLinkDetails\": {\n \"properties\": {\n \"storeUrl\": - {\n \"description\": \"Landing page of the store.\",\n \"type\": - \"string\"\n },\n \"merchantId\": {\n \"type\": \"string\",\n - \ \"description\": \"Google Merchant Center id of the store.\",\n - \ \"format\": \"uint64\"\n },\n \"storeName\": {\n \"type\": - \"string\",\n \"description\": \"Name of the store.\"\n }\n - \ },\n \"id\": \"ChannelToStoreLinkDetails\",\n \"type\": \"object\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"secondaryReasons\": - {\n \"description\": \"The secondary reasons associated with this - reason, if any are available. (There might be 0 or more.)\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"type\": \"array\"\n },\n \"label\": {\n \"type\": - \"string\",\n \"description\": \"The localized label belonging to - this abuse report reason.\"\n }\n },\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\"\n },\n \"LocalizedString\": {\n \"id\": \"LocalizedString\",\n - \ \"properties\": {\n \"language\": {\n \"type\": \"string\"\n - \ },\n \"value\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"CommentThreadReplies\": - {\n \"properties\": {\n \"comments\": {\n \"description\": - \"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.\",\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"description\": \"Comments written in (direct or indirect) reply to - the top level comment.\",\n \"type\": \"object\",\n \"id\": \"CommentThreadReplies\"\n - \ },\n \"Channel\": {\n \"description\": \"A *channel* resource - contains information about a YouTube channel.\",\n \"id\": \"Channel\",\n - \ \"properties\": {\n \"localizations\": {\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n - \ }\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel, such as its - title, description, and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n - \ },\n \"auditDetails\": {\n \"description\": \"The - auditionDetails object encapsulates channel data that is relevant for YouTube - Partners during the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"contentOwnerDetails\": - {\n \"$ref\": \"ChannelContentOwnerDetails\",\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\"\n },\n \"brandingSettings\": - {\n \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channel\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n - \ \"description\": \"The contentDetails object encapsulates information - about the channel's content.\"\n },\n \"topicDetails\": {\n - \ \"$ref\": \"ChannelTopicDetails\",\n \"description\": \"The - topicDetails object encapsulates information about Freebase topics associated - with the channel.\"\n },\n \"statistics\": {\n \"$ref\": - \"ChannelStatistics\",\n \"description\": \"The statistics object - encapsulates statistics for the channel.\"\n },\n \"status\": - {\n \"description\": \"The status object encapsulates information - about the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n - \ },\n \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"IngestionInfo\": {\n \"id\": - \"IngestionInfo\",\n \"description\": \"Describes information necessary - for ingesting an RTMP, HTTP, or SRT stream.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"rtmpsIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\"\n },\n \"ingestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The primary ingestion URL that you - should use to stream video to YouTube. You must stream video to this URL. - Depending on which application or tool you use to encode your video stream, - you may need to enter the stream URL and stream name separately or you may - need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \"\n },\n \"backupIngestionAddress\": {\n \"description\": - \"The backup ingestion URL that you should use to stream video to YouTube. - You have the option of simultaneously streaming the content that you are sending - to the ingestionAddress to this URL.\",\n \"type\": \"string\"\n - \ },\n \"streamName\": {\n \"description\": \"The stream - name that YouTube assigns to the video stream.\",\n \"type\": \"string\"\n - \ },\n \"rtmpsBackupIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of backupIngestionAddress in order - to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LocalizedProperty\": {\n \"id\": - \"LocalizedProperty\",\n \"type\": \"object\",\n \"properties\": - {\n \"defaultLanguage\": {\n \"description\": \"The language - of the default property.\",\n \"$ref\": \"LanguageTag\"\n },\n - \ \"default\": {\n \"type\": \"string\"\n },\n \"localized\": - {\n \"items\": {\n \"$ref\": \"LocalizedString\"\n },\n - \ \"type\": \"array\"\n }\n }\n },\n \"CommentThreadListResponse\": - {\n \"properties\": {\n \"items\": {\n \"description\": - \"A list of comment threads that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"CommentThread\"\n },\n \"type\": - \"array\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentThreadListResponse\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"CommentThreadListResponse\"\n },\n \"VideoProcessingDetails\": - {\n \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\",\n \"type\": \"object\",\n \"properties\": - {\n \"processingStatus\": {\n \"description\": \"The video's - processing status. This value indicates whether YouTube was able to process - the video or if the video is still being processed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ]\n },\n \"thumbnailsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether thumbnail - images have been generated for the video.\"\n },\n \"processingProgress\": - {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n },\n \"processingIssuesAvailability\": - {\n \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"fileDetailsAvailability\": {\n \"description\": - \"This value indicates whether file details are available for the uploaded - video. You can retrieve a video's file details by requesting the fileDetails - part in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether video editing suggestions, which might improve video - quality or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\",\n \"type\": \"string\"\n },\n \"tagSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether keyword (tag) suggestions are available for the video. Tags - can be added to a video's metadata to make it easier for other users to find - the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"processingFailureReason\": - {\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The reason that YouTube failed - to process the video. This property will only have a value if the processingStatus - property's value is failed.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoProcessingDetails\"\n },\n \"VideoPlayer\": - {\n \"properties\": {\n \"embedHeight\": {\n \"type\": - \"string\",\n \"format\": \"int64\"\n },\n \"embedWidth\": - {\n \"description\": \"The embed width\",\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n },\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that - embeds a player that will play the video.\"\n }\n },\n \"description\": - \"Player to be used for a video playback.\",\n \"type\": \"object\",\n - \ \"id\": \"VideoPlayer\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"Information about a video that was marked as a favorite - video.\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"Cuepoint\": {\n \"type\": \"object\",\n \"description\": - \"Note that there may be a 5-second end-point resolution issue. For instance, - if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\",\n \"properties\": - {\n \"cueType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ]\n - \ },\n \"walltimeMs\": {\n \"description\": \"The wall - clock time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"durationSecs\": {\n - \ \"description\": \"The duration of this cuepoint.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"insertionOffsetTimeMs\": - {\n \"type\": \"string\",\n \"format\": \"int64\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The identifier for cuepoint resource.\"\n }\n - \ },\n \"id\": \"Cuepoint\"\n },\n \"VideoLocalization\": {\n - \ \"type\": \"object\",\n \"description\": \"Localized versions of - certain video properties (e.g. title).\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's title.\"\n },\n \"description\": {\n - \ \"type\": \"string\",\n \"description\": \"Localized version - of the video's description.\"\n }\n },\n \"id\": \"VideoLocalization\"\n - \ },\n \"Playlist\": {\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"PlaylistContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - like video count.\"\n },\n \"player\": {\n \"$ref\": - \"PlaylistPlayer\",\n \"description\": \"The player object contains - information that you would use to play the playlist in an embedded player.\"\n - \ },\n \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist, such as its title and description.\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"description\": \"Localizations - for different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"PlaylistLocalization\"\n }\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"status\": {\n \"$ref\": \"PlaylistStatus\",\n \"description\": - \"The status object contains status information for the playlist.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#playlist\"\n }\n },\n - \ \"id\": \"Playlist\",\n \"description\": \"A *playlist* resource - represents a YouTube playlist. A playlist is a collection of videos that can - be viewed sequentially and shared with other users. A playlist can contain - up to 200 videos, and YouTube does not limit the number of playlists that - each user creates. By default, playlists are publicly visible to other users, - but playlists can be public or private. YouTube also uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods.\"\n - \ },\n \"ThumbnailDetails\": {\n \"type\": \"object\",\n \"id\": - \"ThumbnailDetails\",\n \"description\": \"Internal representation of - thumbnails for a YouTube resource.\",\n \"properties\": {\n \"default\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The default - image for this resource.\"\n },\n \"high\": {\n \"description\": - \"The high quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"medium\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The medium quality image for this resource.\"\n },\n \"maxres\": - {\n \"description\": \"The maximum resolution quality image for this - resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"standard\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The standard - quality image for this resource.\"\n }\n }\n },\n \"ChannelSection\": - {\n \"properties\": {\n \"targeting\": {\n \"$ref\": - \"ChannelSectionTargeting\",\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\",\n - \ \"type\": \"string\"\n },\n \"contentDetails\": {\n - \ \"$ref\": \"ChannelSectionContentDetails\",\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\"\n },\n - \ \"localizations\": {\n \"description\": \"Localizations for - different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"type\": \"object\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#channelSection\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelSection\"\n },\n \"MemberListResponse\": - {\n \"id\": \"MemberListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#memberListResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"description\": - \"A list of members that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Member\"\n }\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"VideoRating\": {\n \"properties\": {\n \"rating\": - {\n \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"description\": \"Rating of a video.\",\n \"type\": \"string\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoRating\",\n - \ \"description\": \"Basic details about rating of a video.\"\n },\n - \ \"VideoProjectDetails\": {\n \"type\": \"object\",\n \"id\": - \"VideoProjectDetails\",\n \"properties\": {},\n \"description\": - \"DEPRECATED. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"AbuseReport\": {\n \"type\": \"object\",\n \"id\": - \"AbuseReport\",\n \"properties\": {\n \"description\": {\n \"type\": - \"string\"\n },\n \"relatedEntities\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n - \ }\n },\n \"abuseTypes\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"AbuseType\"\n }\n - \ },\n \"subject\": {\n \"$ref\": \"Entity\"\n }\n - \ }\n },\n \"LiveChatBanSnippet\": {\n \"properties\": {\n - \ \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"type\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"description\": - \"The type of ban.\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ]\n },\n - \ \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The chat this ban is pertinent to.\"\n },\n \"banDurationSeconds\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n }\n - \ },\n \"id\": \"LiveChatBanSnippet\",\n \"type\": \"object\"\n - \ },\n \"ThirdPartyLinkListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"PlaylistSnippet\": {\n \"properties\": {\n \"defaultLanguage\": - {\n \"description\": \"The language of the playlist's default title - and description.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"description\": \"The playlist's title.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"description\": - \"The channel title of the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the playlist was created.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"thumbnails\": {\n - \ \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist. 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.\"\n },\n \"tags\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"Keyword tags - associated with the playlist.\"\n },\n \"thumbnailVideoId\": - {\n \"description\": \"Note: if the playlist has a custom thumbnail, - this field will not be populated. The video id selected by the user that will - be used as the thumbnail of this playlist. This field defaults to the first - publicly viewable video in the playlist, if: 1. The user has never selected - a video to be the thumbnail of the playlist. 2. The user selects a video to - be the thumbnail, and then removes that video from the playlist. 3. The user - selects a non-owned video to be the thumbnail, but that video becomes private, - or gets deleted.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the playlist.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The playlist's description.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"PlaylistSnippet\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails.\"\n - \ },\n \"ChannelSettings\": {\n \"description\": \"Branding properties - for the channel view.\",\n \"id\": \"ChannelSettings\",\n \"properties\": - {\n \"featuredChannelsUrls\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"The list of featured channels.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n },\n \"defaultTab\": {\n \"type\": - \"string\",\n \"description\": \"Which content tab users should see - when viewing the channel.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"type\": \"string\",\n \"description\": \"The ID for - a Google Analytics account to track and measure traffic to the channels.\"\n - \ },\n \"showBrowseView\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the tab to browse the videos should be - displayed.\"\n },\n \"profileColor\": {\n \"type\": - \"string\",\n \"description\": \"A prominent color that can be rendered - on this channel page.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the channel description.\"\n - \ },\n \"title\": {\n \"description\": \"Specifies the - channel title.\",\n \"type\": \"string\"\n },\n \"keywords\": - {\n \"description\": \"Lists keywords associated with the channel, - comma-separated.\",\n \"type\": \"string\"\n },\n \"country\": - {\n \"description\": \"The country of the channel.\",\n \"type\": - \"string\"\n },\n \"unsubscribedTrailer\": {\n \"description\": - \"The trailer of the channel, for users that are not subscribers.\",\n \"type\": - \"string\"\n },\n \"moderateComments\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether user-submitted comments - left on the channel page need to be approved by the channel owner to be publicly - visible.\"\n },\n \"showRelatedChannels\": {\n \"description\": - \"Whether related channels should be proposed.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"AbuseType\": - {\n \"type\": \"object\",\n \"id\": \"AbuseType\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"Comment\": {\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the comment.\",\n \"$ref\": \"CommentSnippet\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#comment\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"Comment\",\n - \ \"description\": \"A *comment* represents a single YouTube comment.\"\n - \ },\n \"VideoStatus\": {\n \"properties\": {\n \"embeddable\": - {\n \"description\": \"This value indicates if the video can be embedded - on another website. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n },\n \"madeForKids\": {\n - \ \"type\": \"boolean\"\n },\n \"rejectionReason\": - {\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\",\n - \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ],\n \"type\": - \"string\"\n },\n \"publishAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the video is scheduled to publish. It can be set only if the privacy - status of the video is private..\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"failureReason\": - {\n \"type\": \"string\",\n \"description\": \"This value - explains why a video failed to upload. This property is only present if the - uploadStatus property indicates that the upload failed.\",\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ],\n \"enumDescriptions\": [\n \"Unable to convert - video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ]\n },\n - \ \"license\": {\n \"type\": \"string\",\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ]\n },\n \"uploadStatus\": {\n \"description\": - \"The status of the uploaded video.\",\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ]\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"The video's - privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Basic details about a video - category, such as its localized title. Next Id: 18\",\n \"type\": \"object\",\n - \ \"id\": \"VideoStatus\"\n },\n \"ChannelSectionLocalization\": - {\n \"description\": \"ChannelSection localization setting\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The localized strings - for channel section's title.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelSectionLocalization\",\n \"type\": \"object\"\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"description\": \"The amount of the fund.\",\n \"format\": - \"uint64\"\n }\n },\n \"id\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"PlaylistContentDetails\": {\n \"properties\": {\n \"itemCount\": - {\n \"type\": \"integer\",\n \"description\": \"The number - of videos in the playlist.\",\n \"format\": \"uint32\"\n }\n - \ },\n \"id\": \"PlaylistContentDetails\",\n \"type\": \"object\"\n - \ },\n \"TestItem\": {\n \"properties\": {\n \"gaia\": {\n - \ \"type\": \"string\",\n \"format\": \"int64\"\n },\n - \ \"id\": {\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"TestItemTestItemSnippet\"\n },\n \"featuredPart\": - {\n \"type\": \"boolean\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"TestItem\"\n },\n \"LiveBroadcastListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of broadcasts that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"type\": - \"array\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"default\": - \"youtube#liveBroadcastListResponse\"\n }\n },\n \"id\": - \"LiveBroadcastListResponse\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageDeletedDetails\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"LiveStreamConfigurationIssue\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamConfigurationIssue\",\n - \ \"properties\": {\n \"description\": {\n \"description\": - \"The long-form description of the issue and how to resolve it.\",\n \"type\": - \"string\"\n },\n \"reason\": {\n \"type\": \"string\",\n - \ \"description\": \"The short-form reason for this issue.\"\n },\n - \ \"severity\": {\n \"enum\": [\n \"info\",\n \"warning\",\n - \ \"error\"\n ],\n \"type\": \"string\",\n \"description\": - \"How severe this issue is to the stream.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"type\": {\n \"description\": \"The kind of error happening.\",\n - \ \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n - \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n - \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n - \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n - \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n - \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n }\n },\n - \ \"GeoPoint\": {\n \"properties\": {\n \"latitude\": {\n \"format\": - \"double\",\n \"type\": \"number\",\n \"description\": \"Latitude - in degrees.\"\n },\n \"altitude\": {\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n },\n \"longitude\": - {\n \"format\": \"double\",\n \"description\": \"Longitude - in degrees.\",\n \"type\": \"number\"\n }\n },\n \"id\": - \"GeoPoint\",\n \"type\": \"object\",\n \"description\": \"Geographical - coordinates of a point, in WGS84.\"\n },\n \"VideoFileDetailsAudioStream\": - {\n \"properties\": {\n \"bitrateBps\": {\n \"description\": - \"The audio stream's bitrate, in bits per second.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"vendor\": - {\n \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\",\n \"type\": - \"string\"\n },\n \"codec\": {\n \"description\": \"The - audio codec that the stream uses.\",\n \"type\": \"string\"\n },\n - \ \"channelCount\": {\n \"type\": \"integer\",\n \"description\": - \"The number of audio channels that the stream contains.\",\n \"format\": - \"uint32\"\n }\n },\n \"description\": \"Information about - an audio stream.\",\n \"type\": \"object\",\n \"id\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"ActivityContentDetailsLike\": {\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Information about a resource that received a positive - (like) rating.\"\n },\n \"I18nLanguage\": {\n \"properties\": {\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nLanguage\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the i18n language.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n language, such as language code and human-readable name.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"An *i18nLanguage* resource identifies a UI language - currently supported by YouTube.\",\n \"id\": \"I18nLanguage\"\n },\n - \ \"MembershipsDurationAtLevel\": {\n \"type\": \"object\",\n \"properties\": - {\n \"memberTotalDurationMonths\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"description\": \"The cumulative - time the user has been a member for the given level in complete months (the - time is rounded down to the nearest integer).\"\n },\n \"level\": - {\n \"description\": \"Pricing level ID.\",\n \"type\": - \"string\"\n },\n \"memberSince\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the user became a continuous - member for the given level.\"\n }\n },\n \"id\": \"MembershipsDurationAtLevel\"\n - \ },\n \"ChannelProfileDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channels's avatar URL.\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n },\n - \ \"channelUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channel's URL.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube channel ID.\"\n }\n - \ },\n \"id\": \"ChannelProfileDetails\"\n },\n \"VideoAbuseReportReason\": - {\n \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the abuse report reason.\",\n \"$ref\": \"VideoAbuseReportReasonSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID of this - abuse report reason.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoAbuseReportReason\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"id\": \"VideoAbuseReportReason\",\n \"type\": \"object\"\n - \ },\n \"Thumbnail\": {\n \"description\": \"A thumbnail is an image - representing a YouTube resource.\",\n \"type\": \"object\",\n \"properties\": - {\n \"height\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"(Optional) Height of the thumbnail - image.\"\n },\n \"width\": {\n \"type\": \"integer\",\n - \ \"description\": \"(Optional) Width of the thumbnail image.\",\n - \ \"format\": \"uint32\"\n },\n \"url\": {\n \"type\": - \"string\",\n \"description\": \"The thumbnail image's URL.\"\n }\n - \ },\n \"id\": \"Thumbnail\"\n },\n \"PlaylistItemContentDetails\": - {\n \"id\": \"PlaylistItemContentDetails\",\n \"properties\": {\n - \ \"videoPublishedAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the video was published to YouTube.\",\n \"format\": - \"date-time\"\n },\n \"note\": {\n \"description\": - \"A user-generated note for this item.\",\n \"type\": \"string\"\n - \ },\n \"startAt\": {\n \"description\": \"The time, - measured in seconds from the start of the video, when the video should start - playing. (The playlist owner can specify the times when the video should start - and stop playing when the video is played in the context of the playlist.) - The default value is 0.\",\n \"type\": \"string\"\n },\n \"endAt\": - {\n \"type\": \"string\",\n \"description\": \"The time, - measured in seconds from the start of the video, when the video should stop - playing. (The playlist owner can specify the times when the video should start - and stop playing when the video is played in the context of the playlist.) - By default, assume that the video.endTime is the end of the video.\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify a video. To retrieve the video - resource, set the id query parameter to this value in your API request.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"properties\": - {\n \"memberMonth\": {\n \"type\": \"integer\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"format\": \"uint32\"\n - \ },\n \"memberLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the Level at which the viever is - a member. The Level names are defined by the YouTube channel offering the - Membership. In some situations this field isn't filled.\"\n },\n \"userComment\": - {\n \"description\": \"The comment added by the member to this Member - Milestone Chat. This field is empty for messages without a comment from the - member.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoGetRatingResponse\": {\n \"id\": \"VideoGetRatingResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#videoGetRatingResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"description\": \"A list of ratings - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"LiveStreamHealthStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"lastUpdateTimeSeconds\": {\n \"description\": \"The - last time this status was updated (in seconds)\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"configurationIssues\": - {\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"type\": \"array\",\n \"description\": \"The - configurations issues on this stream\"\n },\n \"status\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ],\n \"type\": \"string\",\n \"description\": - \"The status code of this stream\"\n }\n },\n \"id\": \"LiveStreamHealthStatus\"\n - \ },\n \"TokenPagination\": {\n \"properties\": {},\n \"type\": - \"object\",\n \"id\": \"TokenPagination\",\n \"description\": \"Stub - token pagination template to suppress results.\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - about the resource that was added to the playlist.\",\n \"$ref\": - \"ResourceId\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The value that YouTube uses to uniquely - identify the playlist.\"\n },\n \"playlistItemId\": {\n \"type\": - \"string\",\n \"description\": \"ID of the item within the playlist.\"\n - \ }\n },\n \"description\": \"Information about a new playlist - item.\",\n \"id\": \"ActivityContentDetailsPlaylistItem\"\n },\n \"SubscriptionContentDetails\": - {\n \"id\": \"SubscriptionContentDetails\",\n \"description\": \"Details - about the content to witch a subscription refers.\",\n \"properties\": - {\n \"totalItemCount\": {\n \"description\": \"The approximate - number of items that the subscription points to.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"newItemCount\": - {\n \"description\": \"The number of new items in the subscription - since its content was last read.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"activityType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelListResponse\": {\n \"type\": \"object\",\n \"id\": - \"ChannelListResponse\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#channelListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Channel\"\n }\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelStatus\": {\n \"type\": - \"object\",\n \"properties\": {\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"Privacy status of the channel.\"\n },\n - \ \"longUploadsStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The long uploads status of this - channel. See https://support.google.com/youtube/answer/71673 for more information.\",\n - \ \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ]\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"isLinked\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"id\": \"ChannelStatus\",\n \"description\": - \"JSON template for the status part of a channel.\"\n },\n \"AccessPolicy\": - {\n \"type\": \"object\",\n \"id\": \"AccessPolicy\",\n \"properties\": - {\n \"allowed\": {\n \"type\": \"boolean\",\n \"description\": - \"The value of allowed indicates whether the access to the policy is allowed - or denied by default.\"\n },\n \"exception\": {\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"description\": - \"Rights management policy for YouTube resources.\"\n },\n \"ChannelAuditDetails\": - {\n \"type\": \"object\",\n \"id\": \"ChannelAuditDetails\",\n \"properties\": - {\n \"communityGuidelinesGoodStanding\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether or not the channel respects the community - guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the channel has - any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any unresolved claims.\"\n }\n },\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\"\n },\n \"I18nRegionSnippet\": {\n - \ \"properties\": {\n \"name\": {\n \"description\": \"The - human-readable name of the region.\",\n \"type\": \"string\"\n },\n - \ \"gl\": {\n \"type\": \"string\",\n \"description\": - \"The region code as a 2-letter ISO country code.\"\n }\n },\n - \ \"description\": \"Basic details about an i18n region, such as region - code and human-readable name.\",\n \"id\": \"I18nRegionSnippet\",\n \"type\": - \"object\"\n },\n \"VideoAbuseReport\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n },\n \"secondaryReasonId\": {\n \"type\": - \"string\",\n \"description\": \"The specific, or secondary, reason - that this content is abusive (if available). The value is an abuse report - reason ID that is a valid secondary reason for the primary reason.\"\n },\n - \ \"reasonId\": {\n \"type\": \"string\",\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\"\n },\n \"language\": {\n \"description\": - \"The language that the content was viewed in.\",\n \"type\": \"string\"\n - \ },\n \"comments\": {\n \"type\": \"string\",\n \"description\": - \"Additional comments regarding the abuse report.\"\n }\n },\n - \ \"id\": \"VideoAbuseReport\"\n },\n \"VideoListResponse\": {\n - \ \"type\": \"object\",\n \"id\": \"VideoListResponse\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Video\"\n }\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"Member\": - {\n \"description\": \"A *member* resource represents a member for a - YouTube channel. A member provides recurring monetary support to a creator - and receives special benefits.\",\n \"id\": \"Member\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#member\\\".\",\n \"default\": - \"youtube#member\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the member.\",\n \"$ref\": - \"MemberSnippet\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"Caption\": {\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#caption\"\n - \ },\n \"snippet\": {\n \"$ref\": \"CaptionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the caption.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the caption track.\"\n }\n },\n \"id\": \"Caption\",\n \"type\": - \"object\",\n \"description\": \"A *caption* resource represents a YouTube - caption track. A caption track is associated with exactly one YouTube video.\"\n - \ },\n \"VideoTopicDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"topicIds\": {\n \"description\": \"A list of Freebase - topic IDs that are centrally associated with the video. These are topics that - are centrally featured in the video, and it can be said that the video is - mainly about each of these. You can retrieve information about each topic - using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"relevantTopicIds\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"Similar to topic_id, except that these topics - are merely relevant to the video. These are topics that may be mentioned in, - or appear in the video. You can retrieve information about each topic using - Freebase Topic API.\",\n \"type\": \"array\"\n },\n \"topicCategories\": - {\n \"description\": \"A list of Wikipedia URLs that provide a high-level - description of the video's content.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"id\": - \"VideoTopicDetails\",\n \"description\": \"Freebase topic information - related to the video.\"\n },\n \"ChannelSnippet\": {\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the channel.\"\n },\n \"thumbnails\": {\n - \ \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"customUrl\": {\n \"type\": \"string\",\n \"description\": - \"The custom url of the channel.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel's title.\"\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the channel's default title and description.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the channel was created.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"country\": {\n \"type\": - \"string\",\n \"description\": \"The country of the channel.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelSnippet\",\n - \ \"description\": \"Basic details about a channel, including title, description - and thumbnails.\"\n },\n \"ActivityContentDetailsPromotedItem\": {\n - \ \"properties\": {\n \"destinationUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should direct - the user to, if the user chooses to visit the advertiser's website.\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the promoted video.\"\n },\n - \ \"impressionUrl\": {\n \"type\": \"array\",\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"adTag\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should fetch to request a promoted item.\"\n },\n \"ctaType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"The type of call-to-action, - a message to the user indicating action that can be taken.\",\n \"enum\": - [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ]\n },\n \"creativeViewUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user was shown this promoted item.\"\n },\n \"descriptionText\": - {\n \"description\": \"The text description to accompany the promoted - item.\",\n \"type\": \"string\"\n },\n \"forecastingUrl\": - {\n \"description\": \"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.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"clickTrackingUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user clicked through on this promoted - item.\"\n },\n \"customCtaButtonText\": {\n \"description\": - \"The custom call-to-action button text. If specified, it will override the - default button text for the cta_type.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"Details about a resource which is being promoted.\",\n - \ \"type\": \"object\"\n },\n \"Entity\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"url\": {\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"typeId\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"Entity\"\n },\n \"PlaylistItemListResponse\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistItemListResponse\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of playlist items that match the request criteria.\"\n }\n - \ }\n },\n \"VideoAbuseReportReasonListResponse\": {\n \"id\": - \"VideoAbuseReportReasonListResponse\",\n \"properties\": {\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n },\n \"description\": \"A list - of valid abuse reasons that are used with `video.ReportAbuse`.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoAbuseReportReasonListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The `visitorId` identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"type\": \"object\"\n },\n \"ContentRating\": - {\n \"properties\": {\n \"smaisRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\",\n - \ \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"catvRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"C\",\n - \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n - \ \"18+\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ]\n },\n - \ \"mccaaRating\": {\n \"description\": \"The video's rating - from Malta's Film Age-Classification Board.\",\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"moctwRating\": {\n \"description\": \"The video's rating - from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ],\n \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"type\": \"string\"\n },\n \"eefilmRating\": - {\n \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n - \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n - \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n - \ \"eefilmK16\",\n \"eefilmUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Estonia.\",\n - \ \"type\": \"string\"\n },\n \"kijkwijzerRating\": - {\n \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating - from the Nederlands Instituut voor de Classificatie van Audiovisuele Media - (Netherlands).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AL\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"bfvcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ],\n \"description\": \"The video's rating from Thailand's - Board of Film and Video Censors.\"\n },\n \"chvrsRating\": {\n - \ \"enum\": [\n \"chvrsUnspecified\",\n \"chvrsG\",\n - \ \"chvrsPg\",\n \"chvrs14a\",\n \"chvrs18a\",\n - \ \"chvrsR\",\n \"chvrsE\",\n \"chvrsUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ],\n \"description\": \"The video's Canadian Home Video - Rating System (CHVRS) rating.\"\n },\n \"russiaRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's National - Film Registry of the Russian Federation (MKRF - Russia) rating.\",\n \"type\": - \"string\",\n \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ]\n },\n - \ \"acbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"Programs that have been given a P classification - by the Australian Communications and Media Authority. These programs are intended - for preschool children.\",\n \"Programs that have been given a - C classification by the Australian Communications and Media Authority. These - programs are intended for children (other than preschool children) who are - younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"kmrbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"enum\": - [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\"\n },\n \"cceRating\": - {\n \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"description\": \"The video's rating from Portugal's - Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\"\n },\n \"nbcRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12+\",\n \"15+\",\n - \ \"18+\",\n \"18+R\",\n \"PU\",\n \"\"\n - \ ],\n \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ],\n \"description\": \"The - video's rating from the Maldives National Bureau of Classification.\"\n },\n - \ \"resorteviolenciaRating\": {\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"description\": \"The video's rating in Venezuela.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"tvpgRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's TV Parental Guidelines (TVPG) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ]\n },\n \"mocRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"mocUnspecified\",\n - \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n - \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"description\": \"The - video's Ministerio de Cultura (Colombia) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ]\n },\n \"mpaatRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ],\n \"description\": - \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\"\n },\n \"rcnofRating\": {\n \"enum\": - [\n \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n - \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n - \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\"\n },\n \"medietilsynetRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Medietilsynet, - the Norwegian Media Authority.\"\n },\n \"bbfcRating\": {\n - \ \"description\": \"The video's British Board of Film Classification - (BBFC) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ],\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ]\n },\n - \ \"grfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n - \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Greece.\",\n - \ \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n - \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n - \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n - \ \"grfilmUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"kfcbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\"\n },\n - \ \"cbfcRating\": {\n \"description\": \"The video's Central - Board of Film Certification (CBFC - India) rating.\",\n \"enum\": - [\n \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"ifcoRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Irish Film Classification Office (IFCO - Ireland) rating. See the IFCO website - for more information.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"15A\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ]\n },\n \"cnaRating\": {\n \"description\": - \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\",\n \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"anatelRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n - \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n - \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n - \ \"anatelUnrated\"\n ],\n \"description\": \"The - video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean - television.\",\n \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ]\n },\n - \ \"nfrcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Bulgarian - National Film Center.\"\n },\n \"catvfrRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ],\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"cicfRating\": {\n \"enum\": [\n - \ \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Commission de Contr\xF4le des Films (Belgium).\",\n \"type\": - \"string\"\n },\n \"cncRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ],\n - \ \"description\": \"Rating system in France - Commission de classification - cinematographique\",\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ]\n },\n \"fpbRating\": - {\n \"description\": \"The video's rating from South Africa's Film - and Publication Board.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ]\n },\n \"egfilmRating\": {\n \"description\": - \"The video's rating in Egypt.\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"mekuRating\": {\n \"description\": \"The video's rating - from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual - Institute).\",\n \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"fskRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"FSK - 0\",\n \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\",\n \"type\": \"string\",\n \"enum\": [\n \"fskUnspecified\",\n - \ \"fsk0\",\n \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n - \ \"fsk18\",\n \"fskUnrated\"\n ]\n },\n - \ \"agcomRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"agcomUnspecified\",\n \"agcomT\",\n \"agcomVm14\",\n - \ \"agcomVm18\",\n \"agcomUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\"\n - \ },\n \"incaaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"description\": - \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\",\n \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n - \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n - \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"oflcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\",\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ]\n },\n \"bmukkRating\": - {\n \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ],\n \"description\": \"The - video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"rtcRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n - \ \"D\",\n \"\"\n ],\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\",\n \"enum\": [\n \"rtcUnspecified\",\n - \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n - \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n - \ ]\n },\n \"chfilmRating\": {\n \"description\": - \"The video's rating in Switzerland.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ]\n },\n \"djctqRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's Departamento de Justi\xE7a, - Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ]\n },\n - \ \"mcstRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"description\": - \"The video's rating system for Vietnam - MCST\"\n },\n \"nbcplRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"description\": \"The - video's rating in Poland.\"\n },\n \"mtrcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Movie - and Television Review and Classification Board (Philippines).\",\n \"type\": - \"string\",\n \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ]\n },\n \"czfilmRating\": {\n \"enum\": - [\n \"czfilmUnspecified\",\n \"czfilmU\",\n \"czfilm12\",\n - \ \"czfilm14\",\n \"czfilm18\",\n \"czfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in the Czech - Republic.\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"menaMpaaRating\": - {\n \"enum\": [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n - \ \"menaMpaaPg\",\n \"menaMpaaPg13\",\n \"menaMpaaR\",\n - \ \"menaMpaaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To - keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\"\n },\n \"skfilmRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n - \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n - \ \"skfilmUnrated\"\n ],\n \"description\": \"The - video's rating in Slovakia.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P2\",\n \"P5\",\n \"P8\",\n - \ \"\"\n ]\n },\n \"nfvcbRating\": {\n \"enum\": - [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n \"nfvcbPg\",\n - \ \"nfvcb12\",\n \"nfvcb12a\",\n \"nfvcb15\",\n - \ \"nfvcb18\",\n \"nfvcbRe\",\n \"nfvcbUnrated\"\n - \ ],\n \"description\": \"The video's rating from Nigeria's - National Film and Video Censors Board.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"18\",\n \"RE\",\n \"\"\n ]\n - \ },\n \"fcbmRating\": {\n \"enum\": [\n \"fcbmUnspecified\",\n - \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n - \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n - \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\"\n },\n - \ \"fpbRatingReasons\": {\n \"type\": \"array\",\n \"items\": - {\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"South Africa rating content descriptors.\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"description\": \"Reasons that explain why the video received its - FPB (South Africa) rating.\"\n },\n \"mdaRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from Singapore's - Media Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ],\n \"enum\": - [\n \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n - \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n - \ \"mdaR21\",\n \"mdaUnrated\"\n ]\n },\n - \ \"mccypRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n - \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Danish - Film Institute's (Det Danske Filminstitut) Media Council for Children and - Young People.\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ]\n },\n \"djctqRatingReasons\": {\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Brazil - rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia - (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n - \ \"Conte\xFAdo sexual (Sexual content)\",\n \"Nudez - (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo Expl\xEDcito - (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ]\n }\n },\n \"fcoRating\": {\n \"description\": - \"The video's rating from Hong Kong's Office for Film, Newspaper and Article - Administration.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"fcoUnspecified\",\n \"fcoI\",\n \"fcoIia\",\n - \ \"fcoIib\",\n \"fcoIi\",\n \"fcoIii\",\n - \ \"fcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ]\n - \ },\n \"ytRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"ytUnspecified\",\n - \ \"ytAgeRestricted\"\n ],\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"type\": - \"string\"\n },\n \"fmocRating\": {\n \"enum\": [\n - \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"description\": - \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ]\n },\n \"ilfilmRating\": {\n \"description\": - \"The video's rating in Israel.\",\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"mibacRating\": {\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\"\n },\n \"cccRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n - \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\"\n - \ },\n \"csaRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, - which rates broadcast content.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"Interdiction\",\n \"\"\n ],\n - \ \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ]\n - \ },\n \"eirinRating\": {\n \"description\": \"The video's - Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ]\n },\n \"icaaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"description\": \"The video's Instituto - de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - Spain) rating.\"\n - \ },\n \"cscfRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\",\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"lsfRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"enum\": [\n - \ \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Indonesia's Lembaga Sensor Film.\"\n },\n - \ \"nmcRating\": {\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"description\": \"The National - Media Council ratings system for United Arab Emirates.\",\n \"type\": - \"string\"\n },\n \"smsaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"rteRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"pefilmRating\": - {\n \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n - \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n - \ \"pefilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Peru.\",\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ]\n },\n \"mpaaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"mpaaUnspecified\",\n - \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n - \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n - \ \"mpaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"description\": \"The video's Motion Picture Association - of America (MPAA) rating.\"\n },\n \"ecbmctRating\": {\n \"description\": - \"Rating system in Turkey - Evaluation and Classification Board of the Ministry - of Culture and Tourism\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"7A\",\n \"7+\",\n \"13A\",\n - \ \"13+\",\n \"15A\",\n \"15+\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ]\n },\n \"nkclvRating\": - {\n \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n - \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n - \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Nacion\xE3lais Kino centrs (National Film Centre - of Latvia).\"\n }\n },\n \"description\": \"Ratings schemes. - The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n - \ \"type\": \"object\",\n \"id\": \"ContentRating\"\n },\n \"LiveChatModerator\": - {\n \"id\": \"LiveChatModerator\",\n \"description\": \"A *liveChatModerator* - resource represents a moderator for a YouTube live chat. A chat moderator - has the ability to ban/unban users from a chat, remove message, etc.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#liveChatModerator\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveChatModeratorSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the moderator.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the moderator.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveBroadcastContentDetails\": - {\n \"description\": \"Detailed settings of a broadcast.\",\n \"properties\": - {\n \"boundStreamLastUpdateTimeMs\": {\n \"description\": - \"The date and time that the live stream referenced by boundStreamId was last - updated.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"enableDvr\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\"\n },\n \"enableLowLatency\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast has low latency enabled.\"\n },\n \"startWithSlate\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast should automatically begin with an in-stream - slate when you update the broadcast's status to live. After updating the status, - you then need to send a liveCuepoints.insert request that sets the cuepoint's - eventState to end to remove the in-stream slate and make your broadcast stream - visible to viewers.\"\n },\n \"recordFromStart\": {\n \"type\": - \"boolean\",\n \"description\": \"Automatically start recording after - the event goes live. The default value for this property is true. *Important:* - You must also set the enableDvr property's value to true if you want the playback - to be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\"\n },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"enableAutoStart\": - {\n \"description\": \"This setting indicates whether auto start - is enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\",\n \"type\": \"boolean\"\n - \ },\n \"stereoLayout\": {\n \"description\": \"The - 3D stereo layout of this broadcast. This defaults to mono.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ]\n },\n \"projection\": - {\n \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"closedCaptionsType\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ]\n },\n \"enableAutoStop\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - auto stop is enabled for this broadcast. The default value for this property - is false. This setting can only be used by Events.\"\n },\n \"enableContentEncryption\": - {\n \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n - \ },\n \"enableEmbed\": {\n \"description\": \"This - setting indicates whether the broadcast video can be played in an embedded - player. If you choose to archive the video (using the enableArchive property), - this setting will also apply to the archived video.\",\n \"type\": - \"boolean\"\n },\n \"boundStreamId\": {\n \"type\": - \"string\",\n \"description\": \"This value uniquely identifies the - live stream bound to the broadcast.\"\n },\n \"latencyPreference\": - {\n \"description\": \"If both this and enable_low_latency are set, - they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW - should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency - omitted.\",\n \"type\": \"string\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ]\n },\n \"mesh\": {\n \"format\": - \"byte\",\n \"description\": \"The mesh for projecting the video - if projection is mesh. The mesh value must be a UTF-8 string containing the - base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC specification - for an mshp box, excluding the box size and type but including the following - four reserved zero bytes for the version and flags.\",\n \"type\": - \"string\"\n },\n \"monitorStream\": {\n \"$ref\": - \"MonitorStreamInfo\",\n \"description\": \"The monitorStream object - contains information about the monitor stream, which the broadcaster can use - to review the event content before the broadcast stream is shown publicly.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveBroadcastContentDetails\"\n - \ },\n \"ChannelSectionListResponse\": {\n \"id\": \"ChannelSectionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#channelSectionListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"description\": \"A list of ChannelSections - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"InvideoTiming\": {\n \"type\": \"object\",\n - \ \"id\": \"InvideoTiming\",\n \"properties\": {\n \"durationMs\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\"\n },\n \"offsetMs\": - {\n \"description\": \"Defines the time at which the promotion will - appear. Depending on the value of type the value of the offsetMs field will - represent a time offset from the start or from the end of the video, expressed - in milliseconds.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"description\": \"Describes - a timing type. If the value is offsetFromStart, then the offsetMs field represents - an offset from the start of the video. If the value is offsetFromEnd, then - the offsetMs field represents an offset from the end of the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\"\n },\n - \ \"CaptionListResponse\": {\n \"id\": \"CaptionListResponse\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Caption\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of captions that match the request criteria.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveBroadcastSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"isDefaultBroadcast\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether this broadcast - is the default broadcast. Internal only.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the broadcast. For each nested object - in this object, the key is the name of the thumbnail image, and the value - is an object that contains other information about the thumbnail.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The broadcast's title. Note that the broadcast represents exactly one YouTube - video. You can set this field by modifying the broadcast resource or by setting - the title field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\"\n },\n \"actualStartTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - actually started. This information is only available once the broadcast's - state is live.\",\n \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's description. As with the title, - you can set this field by modifying the broadcast resource or by setting the - description field of the corresponding video resource.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the broadcast was added - to YouTube's live broadcast schedule.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"scheduledEndTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast is scheduled to end.\",\n \"format\": - \"date-time\"\n },\n \"actualEndTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - actually ended. This information is only available once the broadcast's state - is complete.\",\n \"type\": \"string\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the live chat for this broadcast.\"\n }\n },\n \"description\": - \"Basic broadcast information.\",\n \"id\": \"LiveBroadcastSnippet\"\n - \ },\n \"VideoRecordingDetails\": {\n \"description\": \"Recording - information associated with the video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"recordingDate\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the video was recorded.\",\n \"format\": - \"date-time\"\n },\n \"locationDescription\": {\n \"type\": - \"string\",\n \"description\": \"The text description of the location - where the video was recorded.\"\n },\n \"location\": {\n \"$ref\": - \"GeoPoint\",\n \"description\": \"The geolocation information associated - with the video.\"\n }\n },\n \"id\": \"VideoRecordingDetails\"\n - \ },\n \"LiveChatMessage\": {\n \"id\": \"LiveChatMessage\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveChatMessage\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"authorDetails\": - {\n \"description\": \"The authorDetails object contains basic details - about the user that posted this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\"\n }\n - \ },\n \"description\": \"A *liveChatMessage* resource represents - a chat message in a YouTube Live Chat.\",\n \"type\": \"object\"\n },\n - \ \"CommentSnippetAuthorChannelId\": {\n \"description\": \"The id - of the author's YouTube channel, if any.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"CommentSnippetAuthorChannelId\"\n },\n - \ \"LiveChatMembershipGiftingDetails\": {\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"properties\": {\n \"giftMembershipsLevelName\": {\n \"description\": - \"The name of the level of the gift memberships purchased by the user. The - Level names are defined by the YouTube channel offering the Membership. In - some situations this field isn't filled.\",\n \"type\": \"string\"\n - \ },\n \"giftMembershipsCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"description\": \"The number - of gift memberships purchased by the user.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatNewSponsorDetails\": {\n \"properties\": - {\n \"isUpgrade\": {\n \"description\": \"If the viewer just - had upgraded from a lower level. For viewers that were not members at the - time of purchase, this field is false.\",\n \"type\": \"boolean\"\n - \ },\n \"memberLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the Level that the viewer just had - joined. The Level names are defined by the YouTube channel offering the Membership. - In some situations this field isn't filled.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatNewSponsorDetails\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"isVerified\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author's identity has been verified by YouTube.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n },\n \"isChatSponsor\": {\n \"description\": - \"Whether the author is a sponsor of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n },\n - \ \"isChatModerator\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is a moderator of the live chat.\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"isChatOwner\": {\n \"description\": \"Whether the author - is the owner of the live chat.\",\n \"type\": \"boolean\"\n }\n - \ },\n \"id\": \"LiveChatMessageAuthorDetails\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"properties\": {\n \"blocked\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the video is blocked. If this property is present and a country is not - listed in its value, then the video is viewable in that country. If this property - is present and contains an empty list, the video is viewable in all countries.\"\n - \ },\n \"allowed\": {\n \"description\": \"A list of - region codes that identify countries where the video is viewable. If this - property is present and a country is not listed in its value, then the video - is blocked from appearing in that country. If this property is present and - contains an empty list, the video is blocked in all countries.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"DEPRECATED Region restriction of the video.\"\n },\n - \ \"LiveChatModeratorSnippet\": {\n \"id\": \"LiveChatModeratorSnippet\",\n - \ \"properties\": {\n \"moderatorDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - moderator.\"\n },\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the live chat this moderator can act - on.\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": - {\n \"properties\": {\n \"pollingIntervalMillis\": {\n \"type\": - \"integer\",\n \"description\": \"The amount of time the client should - wait before polling again.\",\n \"format\": \"uint32\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveChatMessageListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatMessage\"\n }\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"offlineAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the underlying stream - went offline.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageListResponse\"\n },\n \"PlaylistItemStatus\": - {\n \"properties\": {\n \"privacyStatus\": {\n \"description\": - \"This resource's privacy status.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n }\n },\n \"description\": - \"Information about the playlist item's privacy status.\",\n \"type\": - \"object\",\n \"id\": \"PlaylistItemStatus\"\n },\n \"Video\": - {\n \"type\": \"object\",\n \"id\": \"Video\",\n \"properties\": - {\n \"contentDetails\": {\n \"$ref\": \"VideoContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains statistics about the video.\",\n \"$ref\": - \"VideoStatistics\"\n },\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the video's uploading, processing, and privacy statuses.\",\n - \ \"$ref\": \"VideoStatus\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ },\n \"suggestions\": {\n \"description\": \"The suggestions - object encapsulates suggestions that identify opportunities to improve the - video quality or the metadata for the uploaded video. This data can only be - retrieved by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n - \ },\n \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video, such as its title, description, and category.\"\n },\n \"processingDetails\": - {\n \"description\": \"The processingDetails object encapsulates - information about YouTube's progress in processing the uploaded video file. - The properties in the object identify the current processing status and an - estimate of the time remaining until YouTube finishes processing the video. - This part also indicates whether different types of data or content, such - as file details or thumbnail images, are available for the video. The processingProgress - object is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoProcessingDetails\"\n - \ },\n \"recordingDetails\": {\n \"$ref\": \"VideoRecordingDetails\",\n - \ \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"description\": - \"The localizations object contains localized versions of the basic details - about the video, such as its title and description.\",\n \"additionalProperties\": - {\n \"$ref\": \"VideoLocalization\"\n }\n },\n - \ \"projectDetails\": {\n \"$ref\": \"VideoProjectDetails\",\n - \ \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"fileDetails\": {\n \"$ref\": \"VideoFileDetails\",\n - \ \"description\": \"The fileDetails object encapsulates information - about the video file that was uploaded to YouTube, including the file's resolution, - duration, audio and video codecs, stream bitrates, and more. This data can - only be retrieved by the video owner.\"\n },\n \"ageGating\": - {\n \"description\": \"Age restriction details related to a video. - This data can only be retrieved by the video owner.\",\n \"$ref\": - \"VideoAgeGating\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#video\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#video\\\".\"\n },\n \"player\": - {\n \"description\": \"The player object contains information that - you would use to play the video in an embedded player.\",\n \"$ref\": - \"VideoPlayer\"\n },\n \"liveStreamingDetails\": {\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n - \ },\n \"monetizationDetails\": {\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\",\n \"$ref\": \"VideoMonetizationDetails\"\n - \ }\n },\n \"description\": \"A *video* resource represents - a YouTube video.\"\n },\n \"ChannelBannerResource\": {\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\",\n - \ \"id\": \"ChannelBannerResource\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\"\n },\n \"url\": {\n \"type\": - \"string\",\n \"description\": \"The URL of this banner image.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#channelBannerResource\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelBannerResource\\\".\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LanguageTag\": - {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LanguageTag\",\n \"type\": \"object\"\n - \ },\n \"MembershipsLevel\": {\n \"description\": \"A *membershipsLevel* - resource represents an offer made by YouTube creators for their fans. Users - can become members of the channel by joining one of the available levels. - They will provide recurring monetary support and receives special benefits.\",\n - \ \"id\": \"MembershipsLevel\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#membershipsLevel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the memberships level.\"\n - \ },\n \"snippet\": {\n \"$ref\": \"MembershipsLevelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the level.\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelTopicDetails\": - {\n \"type\": \"object\",\n \"id\": \"ChannelTopicDetails\",\n \"properties\": - {\n \"topicIds\": {\n \"description\": \"A list of Freebase - topic IDs associated with the channel. You can retrieve information about - each topic using the Freebase Topic API.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"topicCategories\": {\n \"type\": \"array\",\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"description\": - \"Freebase topic information related to the channel.\"\n },\n \"ResourceId\": - {\n \"description\": \"A resource id is a generic reference that points - to another YouTube resource.\",\n \"type\": \"object\",\n \"id\": - \"ResourceId\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"The type of the API resource.\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\"\n }\n }\n },\n \"CaptionSnippet\": - {\n \"description\": \"Basic details about a caption track, such as its - language and name.\",\n \"id\": \"CaptionSnippet\",\n \"properties\": - {\n \"videoId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the video associated with the caption track. @mutable - youtube.captions.insert\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"isCC\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the track contains - closed captions for the deaf and hard of hearing. The default value is false.\"\n - \ },\n \"isLarge\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\"\n },\n \"language\": {\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"failureReason\": {\n \"type\": \"string\",\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\",\n \"enum\": - [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"isEasyReader\": {\n \"description\": - \"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.\",\n - \ \"type\": \"boolean\"\n },\n \"trackKind\": {\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"description\": \"The caption track's type.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"lastUpdated\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the caption track was last updated.\",\n \"type\": - \"string\"\n },\n \"isAutoSynced\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n },\n \"status\": - {\n \"description\": \"The caption track's status.\",\n \"type\": - \"string\",\n \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"isDraft\": {\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\",\n - \ \"type\": \"boolean\"\n },\n \"name\": {\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"audioTrackType\": {\n - \ \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of audio track associated with the caption track.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoStatistics\": {\n - \ \"description\": \"Statistics about the video, such as the number of - times the video was viewed or liked.\",\n \"type\": \"object\",\n \"id\": - \"VideoStatistics\",\n \"properties\": {\n \"commentCount\": {\n - \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of comments for the video.\"\n },\n \"viewCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of times the video has been viewed.\"\n },\n \"likeCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of users who have indicated that they liked the video by giving - it a positive rating.\"\n },\n \"dislikeCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of users who have indicated - that they disliked the video by giving it a negative rating.\",\n \"format\": - \"uint64\"\n },\n \"favoriteCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of users who currently - have the video marked as a favorite video.\",\n \"format\": \"uint64\"\n - \ }\n }\n },\n \"ChannelSectionTargeting\": {\n \"type\": - \"object\",\n \"id\": \"ChannelSectionTargeting\",\n \"properties\": - {\n \"countries\": {\n \"description\": \"The country the - channel section is targeting.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"languages\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The language the channel section is targeting.\",\n - \ \"type\": \"array\"\n },\n \"regions\": {\n \"description\": - \"The region the channel section is targeting.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"description\": \"ChannelSection targeting setting.\"\n },\n - \ \"PageInfo\": {\n \"id\": \"PageInfo\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"totalResults\": {\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The total number of results in the result set.\"\n },\n \"resultsPerPage\": - {\n \"description\": \"The number of results included in the API - response.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ }\n },\n \"description\": \"Paging details for lists of - resources, including total number of items available and number of resources - returned in a single page.\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"properties\": {\n \"timeLeftMs\": {\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"partsProcessed\": {\n \"type\": - \"string\",\n \"description\": \"The number of parts of the video - that YouTube has already processed. You can estimate the percentage of the - video that YouTube has already processed by calculating: 100 * parts_processed - / parts_total Note that since the estimated number of parts could increase - without a corresponding increase in the number of parts that have already - been processed, it is possible that the calculated progress could periodically - decrease while YouTube processes a video.\",\n \"format\": \"uint64\"\n - \ },\n \"partsTotal\": {\n \"format\": \"uint64\",\n - \ \"description\": \"An estimate of the total number of parts that - need to be processed for the video. The number may be updated with more precise - estimates while YouTube processes the video.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"Video processing progress and completion time estimate.\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamStatus\": {\n \"id\": - \"LiveStreamStatus\",\n \"properties\": {\n \"streamStatus\": - {\n \"enum\": [\n \"created\",\n \"ready\",\n - \ \"active\",\n \"inactive\",\n \"error\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"healthStatus\": {\n \"$ref\": - \"LiveStreamHealthStatus\",\n \"description\": \"The health status - of the stream.\"\n }\n },\n \"description\": \"Brief description - of the live stream status.\",\n \"type\": \"object\"\n },\n \"SearchListResponse\": - {\n \"id\": \"SearchListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"regionCode\": {\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": + string: "{\n \"discoveryVersion\": \"v1\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n + \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n + \ },\n \"title\": \"YouTube Data API v3\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n + \ \"id\": \"youtube:v3\",\n \"canonicalName\": \"YouTube\",\n \"schemas\": + {\n \"TokenPagination\": {\n \"description\": \"Stub token pagination + template to suppress results.\",\n \"properties\": {},\n \"id\": + \"TokenPagination\",\n \"type\": \"object\"\n },\n \"ChannelStatistics\": + {\n \"id\": \"ChannelStatistics\",\n \"properties\": {\n \"hiddenSubscriberCount\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the number of subscribers is shown for this user.\"\n },\n \"viewCount\": + {\n \"description\": \"The number of times the channel has been viewed.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n + \ \"commentCount\": {\n \"type\": \"string\",\n \"description\": + \"The number of comments for the channel.\",\n \"format\": \"uint64\"\n + \ },\n \"subscriberCount\": {\n \"description\": \"The + number of subscribers that the channel has.\",\n \"format\": \"uint64\",\n + \ \"type\": \"string\"\n },\n \"videoCount\": {\n \"description\": + \"The number of videos uploaded to the channel.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n }\n },\n \"type\": \"object\",\n + \ \"description\": \"Statistics about a channel: number of subscribers, + number of videos in the channel, etc.\"\n },\n \"CommentThreadListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"items\": {\n - \ \"description\": \"Pagination information for token pagination.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"SearchResult\"\n }\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"kind\": {\n \"default\": - \"youtube#searchListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n - \ }\n }\n }\n }\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 01 Feb 2023 10:42:38 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/search?part=snippet&q=%40Alex007&type=channel - response: - body: - string: "{\n \"kind\": \"youtube#searchListResponse\",\n \"etag\": \"mdd8OYc1OH6UcyvqPPD5ieho6iE\",\n - \ \"nextPageToken\": \"CAUQAA\",\n \"regionCode\": \"LT\",\n \"pageInfo\": - {\n \"totalResults\": 8,\n \"resultsPerPage\": 5\n },\n \"items\": - [\n {\n \"kind\": \"youtube#searchResult\",\n \"etag\": \"Os7Chh51mQuHn2IGea2NsanqcMY\",\n - \ \"id\": {\n \"kind\": \"youtube#channel\",\n \"channelId\": - \"UC3ptU7hyNeFlJdvQj2nZHJg\"\n },\n \"snippet\": {\n \"publishedAt\": - \"2011-10-25T18:32:10Z\",\n \"channelId\": \"UC3ptU7hyNeFlJdvQj2nZHJg\",\n - \ \"title\": \"Alex007SC2\",\n \"description\": \"Alex007 - \u0433\u043E\u043B\u043E\u0441 - StarCraft II, \u043C\u0430\u0442\u0435\u043C\u0430\u0442\u0438\u043A, \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0442\u043E\u0440, - YouTube-\u0431\u043B\u043E\u0433\u0433\u0435\u0440 \u0438 \u0433\u0435\u0439\u043C-\u0434\u0438\u0437\u0430\u0439\u043D\u0435\u0440. - \u041D\u0430 \u044D\u0442\u043E\u043C \u043A\u0430\u043D\u0430\u043B\u0435 - \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043D\u0430\u0439\u0442\u0438 - ...\",\n \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/XRROgwcAhtZPrd7FWz0jLU3b1ii45tmP1SX9BvWrZOFl4iTDKoSruJtK0wm8q4Lf2PlVJmoGTw=s88-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"medium\": {\n \"url\": \"https://yt3.ggpht.com/XRROgwcAhtZPrd7FWz0jLU3b1ii45tmP1SX9BvWrZOFl4iTDKoSruJtK0wm8q4Lf2PlVJmoGTw=s240-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"high\": {\n \"url\": \"https://yt3.ggpht.com/XRROgwcAhtZPrd7FWz0jLU3b1ii45tmP1SX9BvWrZOFl4iTDKoSruJtK0wm8q4Lf2PlVJmoGTw=s800-c-k-c0xffffffff-no-rj-mo\"\n - \ }\n },\n \"channelTitle\": \"Alex007SC2\",\n \"liveBroadcastContent\": - \"upcoming\",\n \"publishTime\": \"2011-10-25T18:32:10Z\"\n }\n - \ },\n {\n \"kind\": \"youtube#searchResult\",\n \"etag\": - \"fppERMyqY9_ngiuuuyTRlC317eM\",\n \"id\": {\n \"kind\": \"youtube#channel\",\n - \ \"channelId\": \"UCeLxkCspqQAW4Pk8hdvW47w\"\n },\n \"snippet\": - {\n \"publishedAt\": \"2018-08-16T22:21:08Z\",\n \"channelId\": - \"UCeLxkCspqQAW4Pk8hdvW47w\",\n \"title\": \"Alex007 - Topic\",\n \"description\": - \"\",\n \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/rx74TtFfBMibHmz4rYb4ZgjZpswo3Z9Df57z-HVre7vQ2L4NwzbebHOPAGu14u_NNeTxfqrsbw=s88-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"medium\": {\n \"url\": \"https://yt3.ggpht.com/rx74TtFfBMibHmz4rYb4ZgjZpswo3Z9Df57z-HVre7vQ2L4NwzbebHOPAGu14u_NNeTxfqrsbw=s240-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"high\": {\n \"url\": \"https://yt3.ggpht.com/rx74TtFfBMibHmz4rYb4ZgjZpswo3Z9Df57z-HVre7vQ2L4NwzbebHOPAGu14u_NNeTxfqrsbw=s800-c-k-c0xffffffff-no-rj-mo\"\n - \ }\n },\n \"channelTitle\": \"Alex007 - Topic\",\n - \ \"liveBroadcastContent\": \"none\",\n \"publishTime\": \"2018-08-16T22:21:08Z\"\n - \ }\n },\n {\n \"kind\": \"youtube#searchResult\",\n \"etag\": - \"KcKZYC9MZ50L1lB_M_hh8A8AA5I\",\n \"id\": {\n \"kind\": \"youtube#channel\",\n - \ \"channelId\": \"UC3Bh3MfFiFHiFGDVQ7N6fdg\"\n },\n \"snippet\": - {\n \"publishedAt\": \"2018-11-09T10:32:25Z\",\n \"channelId\": - \"UC3Bh3MfFiFHiFGDVQ7N6fdg\",\n \"title\": \"Alex007 - Topic\",\n \"description\": - \"\",\n \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/BN0loVWN1QfczB4mlcM1KyBxv3hNEOw4_PNKXTJB1j9qHWEAKIIJp3FXOzKA-inpQzoSLlm50Ck=s88-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"medium\": {\n \"url\": \"https://yt3.ggpht.com/BN0loVWN1QfczB4mlcM1KyBxv3hNEOw4_PNKXTJB1j9qHWEAKIIJp3FXOzKA-inpQzoSLlm50Ck=s240-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"high\": {\n \"url\": \"https://yt3.ggpht.com/BN0loVWN1QfczB4mlcM1KyBxv3hNEOw4_PNKXTJB1j9qHWEAKIIJp3FXOzKA-inpQzoSLlm50Ck=s800-c-k-c0xffffffff-no-rj-mo\"\n - \ }\n },\n \"channelTitle\": \"Alex007 - Topic\",\n - \ \"liveBroadcastContent\": \"none\",\n \"publishTime\": \"2018-11-09T10:32:25Z\"\n - \ }\n },\n {\n \"kind\": \"youtube#searchResult\",\n \"etag\": - \"lj3w9-kE1OZBGU8svRZUdc7Ag2s\",\n \"id\": {\n \"kind\": \"youtube#channel\",\n - \ \"channelId\": \"UCsnM3biG0wbQg3mWUm3HVmg\"\n },\n \"snippet\": - {\n \"publishedAt\": \"2023-01-12T06:31:31Z\",\n \"channelId\": - \"UCsnM3biG0wbQg3mWUm3HVmg\",\n \"title\": \"@ALEX 007\",\n \"description\": - \"Subscribe my channel.\",\n \"thumbnails\": {\n \"default\": - {\n \"url\": \"https://yt3.ggpht.com/Mw67COtdutpRjWAJuHlD8U7E4kb7mqbQn5cuJQb9p2hd9ewsEPNpR4cYj-y2Pi0MisFhgCZi=s88-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"medium\": {\n \"url\": \"https://yt3.ggpht.com/Mw67COtdutpRjWAJuHlD8U7E4kb7mqbQn5cuJQb9p2hd9ewsEPNpR4cYj-y2Pi0MisFhgCZi=s240-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"high\": {\n \"url\": \"https://yt3.ggpht.com/Mw67COtdutpRjWAJuHlD8U7E4kb7mqbQn5cuJQb9p2hd9ewsEPNpR4cYj-y2Pi0MisFhgCZi=s800-c-k-c0xffffffff-no-rj-mo\"\n - \ }\n },\n \"channelTitle\": \"@ALEX 007\",\n \"liveBroadcastContent\": - \"none\",\n \"publishTime\": \"2023-01-12T06:31:31Z\"\n }\n },\n - \ {\n \"kind\": \"youtube#searchResult\",\n \"etag\": \"b-Ob8lM1x2Y6d9rbYor3glEW-cw\",\n - \ \"id\": {\n \"kind\": \"youtube#channel\",\n \"channelId\": - \"UCsL7Gy8KZLJpbuwfNFmLAeA\"\n },\n \"snippet\": {\n \"publishedAt\": - \"2022-04-11T05:51:42Z\",\n \"channelId\": \"UCsL7Gy8KZLJpbuwfNFmLAeA\",\n - \ \"title\": \"ALEX 007\",\n \"description\": \"HI FRIND,S WELCOME - TO MY YOUTUBE CHANNEL Subscribe now Like Comment ...\",\n \"thumbnails\": - {\n \"default\": {\n \"url\": \"https://yt3.ggpht.com/cTYY3a_CRI_PZkYaeb36YnGRZAXmG44JjNcvOip1NCULGLwMosQW1v-nBnup68sT6V38xMMfMg=s88-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"medium\": {\n \"url\": \"https://yt3.ggpht.com/cTYY3a_CRI_PZkYaeb36YnGRZAXmG44JjNcvOip1NCULGLwMosQW1v-nBnup68sT6V38xMMfMg=s240-c-k-c0xffffffff-no-rj-mo\"\n - \ },\n \"high\": {\n \"url\": \"https://yt3.ggpht.com/cTYY3a_CRI_PZkYaeb36YnGRZAXmG44JjNcvOip1NCULGLwMosQW1v-nBnup68sT6V38xMMfMg=s800-c-k-c0xffffffff-no-rj-mo\"\n - \ }\n },\n \"channelTitle\": \"ALEX 007\",\n \"liveBroadcastContent\": - \"none\",\n \"publishTime\": \"2022-04-11T05:51:42Z\"\n }\n }\n - \ ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 01 Feb 2023 10:42:38 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"documentationLink\": - \"https://developers.google.com/youtube/\",\n \"version\": \"v3\",\n \"revision\": - \"20230131\",\n \"ownerName\": \"Google\",\n \"auth\": {\n \"oauth2\": - {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n }\n }\n - \ }\n },\n \"kind\": \"discovery#restDescription\",\n \"fullyEncodeReservedExpansion\": - true,\n \"discoveryVersion\": \"v1\",\n \"name\": \"youtube\",\n \"basePath\": - \"\",\n \"protocol\": \"rest\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"schemas\": {\n \"CommentSnippetAuthorChannelId\": {\n \"type\": - \"object\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"CommentSnippetAuthorChannelId\",\n - \ \"description\": \"The id of the author's YouTube channel, if any.\"\n - \ },\n \"CommentSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a comment, such as its author and text.\",\n \"properties\": - {\n \"viewerRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"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.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n },\n \"textDisplay\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"updatedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was last updated.\"\n - \ },\n \"channelId\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"authorProfileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - the avatar of the user who posted the comment.\"\n },\n \"moderationStatus\": - {\n \"type\": \"string\",\n \"description\": \"The comment's - moderation status. Will not be set if the comments were requested through - the id filter.\",\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment is - unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ]\n },\n \"parentId\": {\n \"description\": - \"The unique id of the parent comment, only set for replies.\",\n \"type\": - \"string\"\n },\n \"canRate\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the current viewer can rate this comment.\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID of - the video the comment refers to, if any.\",\n \"type\": \"string\"\n - \ },\n \"textOriginal\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the comment was originally published.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"likeCount\": - {\n \"type\": \"integer\",\n \"description\": \"The total - number of likes this comment has received.\",\n \"format\": \"uint32\"\n - \ }\n },\n \"id\": \"CommentSnippet\"\n },\n \"ChannelSectionLocalization\": - {\n \"id\": \"ChannelSectionLocalization\",\n \"properties\": {\n - \ \"title\": {\n \"description\": \"The localized strings for - channel section's title.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"ChannelSection localization - setting\"\n },\n \"LiveChatModeratorSnippet\": {\n \"id\": \"LiveChatModeratorSnippet\",\n - \ \"properties\": {\n \"moderatorDetails\": {\n \"description\": - \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the live chat this moderator can act on.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"SubscriptionSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the subscription belongs to.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the subscription was created.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"description\": - {\n \"description\": \"The subscription's details.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"description\": \"The id object contains - information about the channel that the user subscribed to.\",\n \"$ref\": - \"ResourceId\"\n },\n \"title\": {\n \"description\": - \"The subscription's title.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Basic details about a subscription, including - title, description and thumbnails of the subscribed item.\",\n \"id\": - \"SubscriptionSnippet\"\n },\n \"ChannelStatus\": {\n \"properties\": - {\n \"isLinked\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"longUploadsStatus\": {\n \"description\": \"The - long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"type\": \"string\",\n \"enum\": - [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\"\n },\n \"privacyStatus\": {\n \"description\": - \"Privacy status of the channel.\",\n \"type\": \"string\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"madeForKids\": {\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelStatus\",\n \"description\": \"JSON template for the status - part of a channel.\"\n },\n \"Channel\": {\n \"type\": \"object\",\n - \ \"description\": \"A *channel* resource contains information about a - YouTube channel.\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"ChannelSnippet\",\n \"description\": \"The snippet object contains - basic details about the channel, such as its title, description, and thumbnail - images.\"\n },\n \"conversionPings\": {\n \"$ref\": - \"ChannelConversionPings\",\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object encapsulates information about the channel's content.\",\n - \ \"$ref\": \"ChannelContentDetails\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#channel\\\".\",\n \"default\": - \"youtube#channel\",\n \"type\": \"string\"\n },\n \"statistics\": - {\n \"$ref\": \"ChannelStatistics\",\n \"description\": - \"The statistics object encapsulates statistics for the channel.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel.\"\n },\n - \ \"topicDetails\": {\n \"$ref\": \"ChannelTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"additionalProperties\": {\n - \ \"$ref\": \"ChannelLocalization\"\n },\n \"description\": - \"Localizations for different languages\"\n },\n \"brandingSettings\": - {\n \"$ref\": \"ChannelBrandingSettings\",\n \"description\": - \"The brandingSettings object encapsulates information about the branding - of the channel.\"\n },\n \"etag\": {\n \"description\": + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"auditDetails\": {\n \"description\": \"The auditionDetails - object encapsulates channel data that is relevant for YouTube Partners during - the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n },\n - \ \"status\": {\n \"description\": \"The status object encapsulates - information about the privacy status of the channel.\",\n \"$ref\": - \"ChannelStatus\"\n },\n \"contentOwnerDetails\": {\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ }\n },\n \"id\": \"Channel\"\n },\n \"PropertyValue\": - {\n \"id\": \"PropertyValue\",\n \"type\": \"object\",\n \"description\": - \"A pair Property / Value.\",\n \"properties\": {\n \"value\": - {\n \"description\": \"The property's value.\",\n \"type\": - \"string\"\n },\n \"property\": {\n \"description\": - \"A property.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"LiveBroadcastStatistics\": {\n \"properties\": {\n \"concurrentViewers\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"type\": \"string\"\n - \ },\n \"totalChatCount\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The total number - of live chat messages currently on the broadcast. The property and its value - will be present if the broadcast is public, has the live chat feature enabled, - and has at least one message. Note that this field will not be filled after - the broadcast ends. So this property would not identify the number of chat - messages for an archived video of a completed live broadcast.\"\n }\n - \ },\n \"description\": \"Statistics about the live broadcast. These - represent a snapshot of the values at the time of the request. Statistics - are only returned for live broadcasts.\",\n \"type\": \"object\",\n \"id\": - \"LiveBroadcastStatistics\"\n },\n \"TestItemTestItemSnippet\": {\n - \ \"type\": \"object\",\n \"id\": \"TestItemTestItemSnippet\",\n - \ \"properties\": {}\n },\n \"I18nLanguageSnippet\": {\n \"type\": - \"object\",\n \"id\": \"I18nLanguageSnippet\",\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\",\n \"properties\": {\n \"name\": {\n \"type\": - \"string\",\n \"description\": \"The human-readable name of the language - in the language itself.\"\n },\n \"hl\": {\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoStatus\": {\n \"id\": - \"VideoStatus\",\n \"type\": \"object\",\n \"description\": \"Basic - details about a video category, such as its localized title. Next Id: 18\",\n - \ \"properties\": {\n \"uploadStatus\": {\n \"enumDescriptions\": - [\n \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"description\": - \"The status of the uploaded video.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ]\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\"\n },\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The video's privacy status.\"\n },\n \"publishAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the video is scheduled to publish. It can be set - only if the privacy status of the video is private..\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"failureReason\": - {\n \"type\": \"string\",\n \"description\": \"This value - explains why a video failed to upload. This property is only present if the - uploadStatus property indicates that the upload failed.\",\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ],\n \"enumDescriptions\": [\n \"Unable to convert - video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ]\n },\n - \ \"license\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"rejectionReason\": {\n \"enum\": - [\n \"copyright\",\n \"inappropriate\",\n \"duplicate\",\n - \ \"termsOfUse\",\n \"uploaderAccountSuspended\",\n \"length\",\n - \ \"claim\",\n \"uploaderAccountClosed\",\n \"trademark\",\n - \ \"legal\"\n ],\n \"type\": \"string\",\n \"description\": - \"This value explains why YouTube rejected an uploaded video. This property - is only present if the uploadStatus property indicates that the upload was - rejected.\",\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n },\n \"embeddable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"publicStatsViewable\": {\n - \ \"description\": \"This value indicates if the extended video statistics - on the watch page can be viewed by everyone. Note that the view count, likes, - etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n }\n }\n - \ },\n \"LiveBroadcastSnippet\": {\n \"type\": \"object\",\n \"id\": - \"LiveBroadcastSnippet\",\n \"description\": \"Basic broadcast information.\",\n - \ \"properties\": {\n \"actualStartTime\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast actually started. This information - is only available once the broadcast's state is live.\"\n },\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for this broadcast.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"The broadcast's description. As with the title, you can set this field by - modifying the broadcast resource or by setting the description field of the - corresponding video resource.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - was added to YouTube's live broadcast schedule.\"\n },\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\"\n },\n \"scheduledStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - broadcast. For each nested object in this object, the key is the name of the - thumbnail image, and the value is an object that contains other information - about the thumbnail.\"\n },\n \"scheduledEndTime\": {\n \"description\": - \"The date and time that the broadcast is scheduled to end.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"actualEndTime\": - {\n \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"isDefaultBroadcast\": {\n \"description\": \"Indicates - whether this broadcast is the default broadcast. Internal only.\",\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is publishing the broadcast.\"\n }\n }\n },\n - \ \"ActivityContentDetailsPlaylistItem\": {\n \"properties\": {\n \"playlistItemId\": - {\n \"description\": \"ID of the item within the playlist.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\",\n \"$ref\": \"ResourceId\"\n },\n \"playlistId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Information about a new playlist item.\",\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"type\": \"object\"\n },\n \"CommentListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentListResponse\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of comments that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Comment\"\n }\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"eventId\": {\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"CommentListResponse\"\n - \ },\n \"PlaylistStatus\": {\n \"properties\": {\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"description\": \"The playlist's privacy status.\"\n - \ }\n },\n \"id\": \"PlaylistStatus\",\n \"type\": \"object\"\n - \ },\n \"VideoProjectDetails\": {\n \"id\": \"VideoProjectDetails\",\n - \ \"properties\": {},\n \"type\": \"object\",\n \"description\": - \"DEPRECATED. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"ActivityContentDetailsChannelItem\": {\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource that was added to the channel.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Details about a resource - which was added to a channel.\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"id\": \"ActivityContentDetailsSocial\",\n \"properties\": - {\n \"type\": {\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n + \ \"kind\": {\n \"default\": \"youtube#commentThreadListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"CommentThread\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of comment threads that match the request criteria.\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n }\n },\n \"id\": \"CommentThreadListResponse\"\n + \ },\n \"Cuepoint\": {\n \"id\": \"Cuepoint\",\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\"\n },\n \"cueType\": + {\n \"enum\": [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The name of the social network.\"\n - \ },\n \"imageUrl\": {\n \"description\": \"An image - of the post's author.\",\n \"type\": \"string\"\n },\n \"author\": - {\n \"description\": \"The author of the social network post.\",\n - \ \"type\": \"string\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object encapsulates - information that identifies the resource associated with a social network - post.\"\n },\n \"referenceUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL of the social network post.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Details about - a social network post.\"\n },\n \"InvideoTiming\": {\n \"properties\": - {\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"Describes a timing - type. If the value is offsetFromStart, then the offsetMs field represents - an offset from the start of the video. If the value is offsetFromEnd, then - the offsetMs field represents an offset from the end of the video.\",\n \"type\": - \"string\",\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ]\n },\n \"offsetMs\": {\n \"format\": \"uint64\",\n - \ \"description\": \"Defines the time at which the promotion will - appear. Depending on the value of type the value of the offsetMs field will - represent a time offset from the start or from the end of the video, expressed - in milliseconds.\",\n \"type\": \"string\"\n },\n \"durationMs\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\"\n }\n },\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\",\n \"type\": - \"object\",\n \"id\": \"InvideoTiming\"\n },\n \"LevelDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - that should be used when referring to this level.\"\n }\n },\n - \ \"id\": \"LevelDetails\"\n },\n \"LiveChatModerator\": {\n \"id\": - \"LiveChatModerator\",\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the moderator.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the moderator.\",\n \"$ref\": - \"LiveChatModeratorSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatModerator\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A *liveChatModerator* resource represents a moderator for a YouTube live - chat. A chat moderator has the ability to ban/unban users from a chat, remove - message, etc.\"\n },\n \"PageInfo\": {\n \"type\": \"object\",\n - \ \"id\": \"PageInfo\",\n \"properties\": {\n \"totalResults\": - {\n \"type\": \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The total number of results in the result set.\"\n },\n \"resultsPerPage\": - {\n \"description\": \"The number of results included in the API - response.\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ }\n },\n \"description\": \"Paging details for lists of - resources, including total number of items available and number of resources - returned in a single page.\"\n },\n \"LocalizedString\": {\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n },\n \"language\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LocalizedString\"\n },\n \"VideoRating\": {\n \"description\": - \"Basic details about rating of a video.\",\n \"properties\": {\n \"rating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"description\": - \"Rating of a video.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ]\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoRating\"\n },\n \"Member\": {\n \"id\": \"Member\",\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"MemberSnippet\",\n \"description\": \"The - snippet object contains basic details about the member.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#member\\\".\",\n \"default\": \"youtube#member\"\n - \ }\n }\n },\n \"LiveStream\": {\n \"id\": \"LiveStream\",\n - \ \"properties\": {\n \"contentDetails\": {\n \"description\": - \"The content_details object contains information about the stream, including - the closed captions ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n - \ },\n \"snippet\": {\n \"$ref\": \"LiveStreamSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the stream, including its channel, title, and description.\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n - \ },\n \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n \"default\": - \"youtube#liveStream\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the stream.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"description\": \"A - live stream describes a live ingestion point.\",\n \"type\": \"object\"\n - \ },\n \"LanguageTag\": {\n \"id\": \"LanguageTag\",\n \"type\": - \"object\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n }\n }\n },\n \"LiveStreamContentDetails\": - {\n \"description\": \"Detailed settings of a stream.\",\n \"id\": - \"LiveStreamContentDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"closedCaptionsIngestionUrl\": {\n \"description\": \"The - ingestion URL where the closed captions of this stream are sent.\",\n \"type\": - \"string\"\n },\n \"isReusable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether the stream is reusable, which - means that it can be bound to multiple broadcasts. It is common for broadcasters - to reuse the same stream for many different broadcasts if those broadcasts - occur at different times. If you set this value to false, then the stream - will not be reusable, which means that it can only be bound to one broadcast. - Non-reusable streams differ from reusable streams in the following ways: - - A non-reusable stream can only be bound to one broadcast. - A non-reusable - stream might be deleted by an automated process after the broadcast ends. - - The liveStreams.list method does not list non-reusable streams if you call - the method and set the mine parameter to true. The only way to use that method - to retrieve the resource for a non-reusable stream is to use the id parameter - to identify the stream. \"\n }\n }\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"properties\": - {\n \"gifterChannelId\": {\n \"description\": \"The ID of - the user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\",\n \"type\": \"string\"\n - \ },\n \"associatedMembershipGiftingMessageId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the membership gifting - message that is related to this gift membership. This ID will always refer - to a message whose type is 'membershipGiftingEvent'.\"\n },\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"PlaylistLocalization\": {\n \"id\": \"PlaylistLocalization\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"description\": \"The localized strings for playlist's description.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for playlist's - title.\"\n }\n },\n \"description\": \"Playlist localization - setting\"\n },\n \"Subscription\": {\n \"type\": \"object\",\n - \ \"description\": \"A *subscription* resource contains information about - a YouTube user subscription. A subscription notifies a user when new videos - are added to a channel or when another user takes one of several actions on - YouTube, such as uploading a video, rating a video, or commenting on a video.\",\n - \ \"id\": \"Subscription\",\n \"properties\": {\n \"subscriberSnippet\": - {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n \"description\": - \"The subscriberSnippet object contains basic details about the subscriber.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"default\": \"youtube#subscription\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains basic statistics - about the subscription.\",\n \"$ref\": \"SubscriptionContentDetails\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"MembershipsLevel\": {\n \"type\": \"object\",\n \"properties\": + [\n \"\",\n \"\"\n ]\n },\n \"durationSecs\": + {\n \"format\": \"uint32\",\n \"description\": \"The duration + of this cuepoint.\",\n \"type\": \"integer\"\n },\n \"walltimeMs\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The wall clock time at which the cuepoint should be inserted. Only one of + insertion_offset_time_ms and walltime_ms may be set at a time.\"\n },\n + \ \"id\": {\n \"description\": \"The identifier for cuepoint + resource.\",\n \"type\": \"string\"\n },\n \"insertionOffsetTimeMs\": + {\n \"type\": \"string\",\n \"format\": \"int64\",\n \"description\": + \"The time when the cuepoint should be inserted by offset to the broadcast + actual start time.\"\n }\n },\n \"description\": \"Note that + there may be a 5-second end-point resolution issue. For instance, if a cuepoint + comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, + depending. This is an artifact of HLS.\",\n \"type\": \"object\"\n },\n + \ \"ChannelProfileDetails\": {\n \"type\": \"object\",\n \"properties\": + {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The YouTube channel ID.\"\n },\n \"channelUrl\": {\n \"type\": + \"string\",\n \"description\": \"The channel's URL.\"\n },\n + \ \"displayName\": {\n \"type\": \"string\",\n \"description\": + \"The channel's display name.\"\n },\n \"profileImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The channels's + avatar URL.\"\n }\n },\n \"id\": \"ChannelProfileDetails\"\n + \ },\n \"CaptionSnippet\": {\n \"description\": \"Basic details + about a caption track, such as its language and name.\",\n \"type\": + \"object\",\n \"id\": \"CaptionSnippet\",\n \"properties\": {\n + \ \"isCC\": {\n \"description\": \"Indicates whether the track + contains closed captions for the deaf and hard of hearing. The default value + is false.\",\n \"type\": \"boolean\"\n },\n \"isEasyReader\": + {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n + \ },\n \"trackKind\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"standard\",\n \"ASR\",\n \"forced\"\n + \ ],\n \"description\": \"The caption track's type.\",\n + \ \"type\": \"string\"\n },\n \"audioTrackType\": {\n + \ \"enum\": [\n \"unknown\",\n \"primary\",\n + \ \"commentary\",\n \"descriptive\"\n ],\n \"type\": + \"string\",\n \"description\": \"The type of audio track associated + with the caption track.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"status\": {\n \"enum\": [\n \"serving\",\n \"syncing\",\n + \ \"failed\"\n ],\n \"type\": \"string\",\n \"description\": + \"The caption track's status.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the video associated with the caption track. + @mutable youtube.captions.insert\",\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n }\n + \ },\n \"lastUpdated\": {\n \"type\": \"string\",\n + \ \"format\": \"date-time\",\n \"description\": \"The date + and time when the caption track was last updated.\"\n },\n \"language\": + {\n \"description\": \"The language of the caption track. The property + value is a BCP-47 language tag.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"isDraft\": {\n \"type\": + \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\"\n + \ },\n \"isLarge\": {\n \"description\": \"Indicates + whether the caption track uses large text for the vision-impaired. The default + value is false.\",\n \"type\": \"boolean\"\n },\n \"isAutoSynced\": + {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n + \ },\n \"failureReason\": {\n \"enum\": [\n \"unknownFormat\",\n + \ \"unsupportedFormat\",\n \"processingFailed\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The reason that + YouTube failed to process the caption track. This property is only present + if the state property's value is failed.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"name\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n },\n + \ \"description\": \"The name of the caption track. The name is intended + to be visible to the user as an option during playback.\",\n \"type\": + \"string\"\n }\n }\n },\n \"ChannelSection\": {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n \"description\": \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the memberships level.\"\n },\n \"kind\": {\n \"default\": - \"youtube#membershipsLevel\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"MembershipsLevelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the level.\"\n }\n },\n \"description\": \"A *membershipsLevel* - resource represents an offer made by YouTube creators for their fans. Users - can become members of the channel by joining one of the available levels. - They will provide recurring monetary support and receives special benefits.\",\n - \ \"id\": \"MembershipsLevel\"\n },\n \"I18nLanguage\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"I18nLanguageSnippet\",\n \"description\": \"The snippet object - contains basic details about the i18n language, such as language code and - human-readable name.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"default\": \"youtube#i18nLanguage\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the i18n language.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"An *i18nLanguage* resource identifies - a UI language currently supported by YouTube.\",\n \"type\": \"object\",\n - \ \"id\": \"I18nLanguage\"\n },\n \"I18nRegion\": {\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#i18nRegion\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"A *i18nRegion* resource - identifies a region where YouTube is available.\",\n \"type\": \"object\",\n - \ \"id\": \"I18nRegion\"\n },\n \"ChannelConversionPings\": {\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\",\n \"id\": - \"ChannelConversionPings\",\n \"properties\": {\n \"pings\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the channel section.\"\n },\n \"targeting\": {\n \"description\": + \"The targeting object contains basic targeting settings about the channel + section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n },\n + \ \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": + \"The snippet object contains basic details about the channel section, such + as its type, style and title.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#channelSection\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object contains details about the channel section content, + such as a list of playlists or channels featured in the section.\",\n \"$ref\": + \"ChannelSectionContentDetails\"\n },\n \"localizations\": {\n + \ \"additionalProperties\": {\n \"$ref\": \"ChannelSectionLocalization\"\n + \ },\n \"type\": \"object\",\n \"description\": + \"Localizations for different languages\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"ChannelSection\"\n },\n \"SuperChatEventSnippet\": + {\n \"id\": \"SuperChatEventSnippet\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"displayString\": {\n \"type\": + \"string\",\n \"description\": \"A rendered string that displays + the purchase amount and currency (e.g., \\\"$1.00\\\"). The string is rendered + for the given language.\"\n },\n \"amountMicros\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + purchase amount, in micros of the purchase currency. e.g., 1 is represented + as 1000000.\"\n },\n \"createdAt\": {\n \"description\": + \"The date and time when the event occurred.\",\n \"format\": \"date-time\",\n + \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": + \"Channel id where the event occurred.\",\n \"type\": \"string\"\n + \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the purchase was made. ISO 4217.\"\n },\n \"commentText\": + {\n \"description\": \"The text contents of the comment left by the + user.\",\n \"type\": \"string\"\n },\n \"superStickerMetadata\": + {\n \"description\": \"If this event is a Super Sticker event, this + field will contain metadata about the Super Sticker.\",\n \"$ref\": + \"SuperStickerMetadata\"\n },\n \"supporterDetails\": {\n \"description\": + \"Details about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n + \ },\n \"messageType\": {\n \"description\": \"The tier + for the paid message, which is based on the amount of money spent to purchase + the message.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n + \ },\n \"isSuperStickerEvent\": {\n \"description\": + \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n + \ }\n }\n },\n \"ChannelConversionPings\": {\n \"description\": + \"The conversionPings object encapsulates information about conversion pings + that need to be respected by the channel.\",\n \"properties\": {\n \"pings\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n },\n \"description\": \"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.\"\n }\n },\n \"type\": \"object\"\n },\n \"ThumbnailSetResponse\": - {\n \"type\": \"object\",\n \"id\": \"ThumbnailSetResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#thumbnailSetResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"description\": \"A list of thumbnails.\",\n \"items\": - {\n \"$ref\": \"ThumbnailDetails\"\n },\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n }\n - \ },\n \"LiveChatModeratorListResponse\": {\n \"properties\": {\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": + ping.\"\n }\n },\n \"id\": \"ChannelConversionPings\",\n + \ \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": {\n + \ \"id\": \"LiveChatMessageListResponse\",\n \"properties\": {\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"LiveChatMessage\"\n }\n },\n \"nextPageToken\": + {\n \"type\": \"string\"\n },\n \"pollingIntervalMillis\": + {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The amount of time the client should wait before polling again.\"\n },\n + \ \"offlineAt\": {\n \"type\": \"string\",\n \"format\": + \"date-time\",\n \"description\": \"The date and time when the underlying + stream went offline.\"\n },\n \"kind\": {\n \"type\": \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of moderators that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n }\n }\n },\n - \ \"id\": \"LiveChatModeratorListResponse\",\n \"type\": \"object\"\n - \ },\n \"VideoCategorySnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"channelId\": {\n \"description\": \"The YouTube channel - that created the video category.\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n - \ \"type\": \"string\"\n },\n \"assignable\": {\n \"type\": - \"boolean\"\n },\n \"title\": {\n \"description\": - \"The video category's title.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoCategorySnippet\",\n \"description\": - \"Basic details about a video category, such as its localized title.\"\n },\n - \ \"PlaylistSnippet\": {\n \"type\": \"object\",\n \"id\": \"PlaylistSnippet\",\n - \ \"properties\": {\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the playlist - was created.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The playlist's - title.\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"description\": {\n \"description\": \"The playlist's description.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the playlist. 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.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that published the playlist.\"\n },\n \"tags\": - {\n \"description\": \"Keyword tags associated with the playlist.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel title of the channel that the video - belongs to.\"\n },\n \"localized\": {\n \"$ref\": \"PlaylistLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"thumbnailVideoId\": {\n \"type\": \"string\",\n - \ \"description\": \"Note: if the playlist has a custom thumbnail, - this field will not be populated. The video id selected by the user that will - be used as the thumbnail of this playlist. This field defaults to the first - publicly viewable video in the playlist, if: 1. The user has never selected - a video to be the thumbnail of the playlist. 2. The user selects a video to - be the thumbnail, and then removes that video from the playlist. 3. The user - selects a non-owned video to be the thumbnail, but that video becomes private, - or gets deleted.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the playlist's default - title and description.\"\n }\n },\n \"description\": \"Basic - details about a playlist, including title, description and thumbnails.\"\n - \ },\n \"ChannelProfileDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube channel ID.\"\n },\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The channel's display name.\"\n - \ },\n \"channelUrl\": {\n \"description\": \"The channel's - URL.\",\n \"type\": \"string\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n }\n },\n \"id\": \"ChannelProfileDetails\"\n - \ },\n \"GeoPoint\": {\n \"properties\": {\n \"latitude\": - {\n \"format\": \"double\",\n \"description\": \"Latitude - in degrees.\",\n \"type\": \"number\"\n },\n \"longitude\": - {\n \"format\": \"double\",\n \"type\": \"number\",\n \"description\": - \"Longitude in degrees.\"\n },\n \"altitude\": {\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\",\n \"type\": - \"number\",\n \"format\": \"double\"\n }\n },\n \"id\": - \"GeoPoint\",\n \"type\": \"object\",\n \"description\": \"Geographical - coordinates of a point, in WGS84.\"\n },\n \"LiveChatTextMessageDetails\": - {\n \"id\": \"LiveChatTextMessageDetails\",\n \"properties\": {\n - \ \"messageText\": {\n \"type\": \"string\",\n \"description\": - \"The user's message.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"seedResourceId\": - {\n \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\",\n \"$ref\": - \"ResourceId\"\n },\n \"reason\": {\n \"type\": \"string\",\n - \ \"description\": \"The reason that the resource is recommended to - the user.\",\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the recommended resource.\",\n \"$ref\": \"ResourceId\"\n - \ }\n },\n \"description\": \"Information that identifies - the recommended resource.\"\n },\n \"LiveChatBanSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"liveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The chat this ban is pertinent to.\"\n - \ },\n \"banDurationSeconds\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The duration of a ban, only filled if the ban - has type TEMPORARY.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"description\": \"The type of ban.\",\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"type\": - \"string\"\n },\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\"\n }\n },\n \"id\": \"LiveChatBanSnippet\"\n - \ },\n \"MembershipsDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"membershipsDuration\": {\n \"$ref\": \"MembershipsDuration\",\n - \ \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\"\n },\n \"highestAccessibleLevel\": - {\n \"description\": \"Id of the highest level that the user has - access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"membershipsDurationAtLevels\": {\n \"type\": \"array\",\n - \ \"description\": \"Data about memberships duration on particular - pricing levels.\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ }\n },\n \"accessibleLevels\": {\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"highestAccessibleLevelDisplayName\": {\n - \ \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n }\n - \ },\n \"id\": \"MembershipsDetails\"\n },\n \"ChannelToStoreLinkDetails\": - {\n \"id\": \"ChannelToStoreLinkDetails\",\n \"properties\": {\n - \ \"storeName\": {\n \"description\": \"Name of the store.\",\n - \ \"type\": \"string\"\n },\n \"merchantId\": {\n \"type\": - \"string\",\n \"description\": \"Google Merchant Center id of the - store.\",\n \"format\": \"uint64\"\n },\n \"storeUrl\": - {\n \"description\": \"Landing page of the store.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Information specific - to a store on a merchandising platform linked to a YouTube channel.\",\n \"type\": - \"object\"\n },\n \"PlaylistListResponse\": {\n \"id\": \"PlaylistListResponse\",\n - \ \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlistListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of playlists that match the request criteria\",\n \"items\": - {\n \"$ref\": \"Playlist\"\n }\n },\n \"eventId\": + this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n + \ \"default\": \"youtube#liveChatMessageListResponse\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": \"Serialized EventId of the request which produced this response.\"\n },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoMonetizationDetails\": {\n \"id\": \"VideoMonetizationDetails\",\n - \ \"description\": \"Details about monetization of a YouTube Video.\",\n - \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The value of access indicates whether the video - can be monetized or not.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageDeletedDetails\": {\n \"properties\": {\n - \ \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"type\": - \"object\"\n },\n \"IngestionInfo\": {\n \"id\": \"IngestionInfo\",\n - \ \"description\": \"Describes information necessary for ingesting an - RTMP, HTTP, or SRT stream.\",\n \"properties\": {\n \"backupIngestionAddress\": - {\n \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\",\n - \ \"type\": \"string\"\n },\n \"ingestionAddress\": - {\n \"description\": \"The primary ingestion URL that you should - use to stream video to YouTube. You must stream video to this URL. Depending - on which application or tool you use to encode your video stream, you may - need to enter the stream URL and stream name separately or you may need to - concatenate them in the following format: *STREAM_URL/STREAM_NAME* \",\n \"type\": - \"string\"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of backupIngestionAddress in order - to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": - \"string\"\n },\n \"streamName\": {\n \"type\": \"string\",\n - \ \"description\": \"The stream name that YouTube assigns to the video - stream.\"\n },\n \"rtmpsIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of ingestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelTopicDetails\": - {\n \"properties\": {\n \"topicIds\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\"\n },\n - \ \"topicCategories\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\"\n }\n - \ },\n \"id\": \"ChannelTopicDetails\",\n \"description\": \"Freebase - topic information related to the channel.\",\n \"type\": \"object\"\n - \ },\n \"ThirdPartyLinkStatus\": {\n \"description\": \"The third-party - link status object contains information about the status of the link.\",\n - \ \"id\": \"ThirdPartyLinkStatus\",\n \"properties\": {\n \"linkStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ]\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoRecordingDetails\": - {\n \"id\": \"VideoRecordingDetails\",\n \"description\": \"Recording - information associated with the video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"locationDescription\": {\n \"description\": \"The text - description of the location where the video was recorded.\",\n \"type\": - \"string\"\n },\n \"recordingDate\": {\n \"description\": - \"The date and time when the video was recorded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"location\": {\n - \ \"$ref\": \"GeoPoint\",\n \"description\": \"The geolocation - information associated with the video.\"\n }\n }\n },\n \"SearchResultSnippet\": - {\n \"description\": \"Basic details about a search result, including - title, description and thumbnails of the item referenced by the search result.\",\n - \ \"id\": \"SearchResultSnippet\",\n \"properties\": {\n \"channelTitle\": - {\n \"description\": \"The title of the channel that published the - resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"A description of the search result.\"\n },\n - \ \"channelId\": {\n \"description\": \"The value that YouTube - uses to uniquely identify the channel that published the resource that the - search result identifies.\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"A map of thumbnail images associated with the search result. 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.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the search result.\"\n },\n \"publishedAt\": - {\n \"description\": \"The creation date and time of the resource - that the search result identifies.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"description\": \"It indicates if the resource (video - or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" - if there is not any upcoming/active live broadcasts.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"I18nRegionListResponse\": - {\n \"id\": \"I18nRegionListResponse\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#i18nRegionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"I18nRegion\"\n - \ },\n \"description\": \"A list of regions where YouTube - is available. In this map, the i18n region ID is the map key, and its value - is the corresponding i18nRegion resource.\",\n \"type\": \"array\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelAuditDetails\": - {\n \"description\": \"The auditDetails object encapsulates channel data - that is relevant for YouTube Partners during the audit process.\",\n \"type\": - \"object\",\n \"properties\": {\n \"contentIdClaimsGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any unresolved claims.\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n }\n },\n \"id\": - \"ChannelAuditDetails\"\n },\n \"ChannelSectionListResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"description\": \"A list of ChannelSections that - match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": - \"ChannelSectionListResponse\",\n \"type\": \"object\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageRetractedDetails\"\n },\n \"PlaylistItem\": {\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"id\": - \"PlaylistItem\",\n \"properties\": {\n \"contentDetails\": {\n - \ \"$ref\": \"PlaylistItemContentDetails\",\n \"description\": - \"The contentDetails object is included in the resource if the included item - is a YouTube video. The object contains additional information about the video.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n - \ \"description\": \"The status object contains information about - the playlist item's privacy status.\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlistItem\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoCategoryListResponse\": {\n \"id\": \"VideoCategoryListResponse\",\n - \ \"properties\": {\n \"nextPageToken\": {\n \"description\": + \"object\"\n },\n \"ThirdPartyLinkSnippet\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"channelToStoreLink\": {\n \"$ref\": + \"ChannelToStoreLinkDetails\",\n \"description\": \"Information specific + to a link between a channel and a store on a merchandising platform.\"\n },\n + \ \"type\": {\n \"description\": \"Type of the link named after + the entities that are being linked.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"A link + that is connecting (or about to connect) a channel with a store on a merchandising + platform in order to enable retail commerce capabilities for that channel + on YouTube.\"\n ],\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ]\n }\n },\n \"description\": + \"Basic information about a third party account link, including its type and + type-specific information.\",\n \"id\": \"ThirdPartyLinkSnippet\"\n },\n + \ \"AbuseReport\": {\n \"id\": \"AbuseReport\",\n \"properties\": + {\n \"description\": {\n \"type\": \"string\"\n },\n + \ \"subject\": {\n \"$ref\": \"Entity\"\n },\n \"abuseTypes\": + {\n \"items\": {\n \"$ref\": \"AbuseType\"\n },\n + \ \"type\": \"array\"\n },\n \"relatedEntities\": {\n + \ \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n + \ \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"LiveBroadcastStatus\": {\n \"properties\": {\n \"liveBroadcastPriority\": + {\n \"description\": \"Priority of the live broadcast event (internal + state).\",\n \"enumDescriptions\": [\n \"\",\n \"Low + priority broadcast: for low view count HoAs or other low priority broadcasts.\",\n + \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n + \ \"High priority broadcast: for high profile HoAs, like PixelCorp + ones.\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n + \ \"normal\",\n \"high\"\n ]\n },\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\",\n \"description\": \"This field + will be set to True if the creator declares the broadcast to be kids only: + go/live-cw-work.\"\n },\n \"privacyStatus\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"description\": \"The broadcast's privacy status. Note that the + broadcast represents exactly one YouTube video, so the privacy settings are + identical to those supported for videos. In addition, you can set this field + by modifying the broadcast resource or by setting the privacyStatus field + of the corresponding video resource.\",\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"lifeCycleStatus\": {\n + \ \"enumDescriptions\": [\n \"No value or the value is + unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete + settings\",\n \"Visible only to partner, may need special UI treatment\",\n + \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n + \ \"The broadcast is finished.\",\n \"This broadcast + was removed by admin action\",\n \"Transition into TESTING has + been requested\",\n \"Transition into LIVE has been requested\"\n + \ ],\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n + \ \"created\",\n \"ready\",\n \"testing\",\n + \ \"live\",\n \"complete\",\n \"revoked\",\n + \ \"testStarting\",\n \"liveStarting\"\n ],\n + \ \"description\": \"The broadcast's status. The status can be updated + using the API's liveBroadcasts.transition method.\",\n \"type\": + \"string\"\n },\n \"recordingStatus\": {\n \"enumDescriptions\": + [\n \"No value or the value is unknown.\",\n \"The recording + has not yet been started.\",\n \"The recording is currently on.\",\n + \ \"The recording is completed, and cannot be started again.\"\n + \ ],\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n + \ \"notRecording\",\n \"recording\",\n \"recorded\"\n + \ ],\n \"description\": \"The broadcast's recording status.\",\n + \ \"type\": \"string\"\n },\n \"madeForKids\": {\n \"description\": + \"Whether the broadcast is made for kids or not, decided by YouTube instead + of the creator. This field is read only.\",\n \"type\": \"boolean\"\n + \ }\n },\n \"description\": \"Live broadcast state.\",\n \"id\": + \"LiveBroadcastStatus\",\n \"type\": \"object\"\n },\n \"LocalizedString\": + {\n \"type\": \"object\",\n \"properties\": {\n \"language\": + {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": + \"string\"\n }\n },\n \"id\": \"LocalizedString\"\n },\n + \ \"Entity\": {\n \"id\": \"Entity\",\n \"properties\": {\n \"id\": + {\n \"type\": \"string\"\n },\n \"typeId\": {\n \"type\": + \"string\"\n },\n \"url\": {\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"SubscriptionContentDetails\": + {\n \"properties\": {\n \"newItemCount\": {\n \"type\": + \"integer\",\n \"description\": \"The number of new items in the + subscription since its content was last read.\",\n \"format\": \"uint32\"\n + \ },\n \"activityType\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The type of activity this subscription + is for (only uploads, everything).\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n + \ \"all\",\n \"uploads\"\n ]\n },\n \"totalItemCount\": + {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The approximate number of items that the subscription points to.\"\n }\n + \ },\n \"id\": \"SubscriptionContentDetails\",\n \"type\": \"object\",\n + \ \"description\": \"Details about the content to witch a subscription + refers.\"\n },\n \"WatchSettings\": {\n \"properties\": {\n \"featuredPlaylistId\": + {\n \"description\": \"An ID that uniquely identifies a playlist + that displays next to the video player.\",\n \"type\": \"string\"\n + \ },\n \"backgroundColor\": {\n \"description\": \"The + text color for the video watch page's branded area.\",\n \"type\": + \"string\"\n },\n \"textColor\": {\n \"type\": \"string\",\n + \ \"description\": \"The background color for the video watch page's + branded area.\"\n }\n },\n \"description\": \"Branding properties + for the watch. All deprecated.\",\n \"type\": \"object\",\n \"id\": + \"WatchSettings\"\n },\n \"Thumbnail\": {\n \"id\": \"Thumbnail\",\n + \ \"description\": \"A thumbnail is an image representing a YouTube resource.\",\n + \ \"properties\": {\n \"height\": {\n \"type\": \"integer\",\n + \ \"format\": \"uint32\",\n \"description\": \"(Optional) + Height of the thumbnail image.\"\n },\n \"width\": {\n \"description\": + \"(Optional) Width of the thumbnail image.\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\"\n },\n \"url\": {\n \"type\": + \"string\",\n \"description\": \"The thumbnail image's URL.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"ChannelStatus\": {\n \"properties\": + {\n \"longUploadsStatus\": {\n \"enum\": [\n \"longUploadsUnspecified\",\n + \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n + \ ],\n \"description\": \"The long uploads status of this + channel. See https://support.google.com/youtube/answer/71673 for more information.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"public\",\n \"unlisted\",\n \"private\"\n + \ ],\n \"description\": \"Privacy status of the channel.\",\n + \ \"type\": \"string\"\n },\n \"madeForKids\": {\n \"type\": + \"boolean\"\n },\n \"isLinked\": {\n \"type\": \"boolean\",\n + \ \"description\": \"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.\"\n },\n \"selfDeclaredMadeForKids\": {\n + \ \"type\": \"boolean\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ChannelStatus\",\n \"description\": \"JSON template for + the status part of a channel.\"\n },\n \"VideoRating\": {\n \"id\": + \"VideoRating\",\n \"description\": \"Basic details about rating of a + video.\",\n \"properties\": {\n \"rating\": {\n \"type\": + \"string\",\n \"description\": \"Rating of a video.\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ]\n },\n + \ \"videoId\": {\n \"description\": \"The ID that YouTube uses + to uniquely identify the video.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"PropertyValue\": {\n \"description\": + \"A pair Property / Value.\",\n \"properties\": {\n \"property\": + {\n \"description\": \"A property.\",\n \"type\": \"string\"\n + \ },\n \"value\": {\n \"type\": \"string\",\n \"description\": + \"The property's value.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"PropertyValue\"\n },\n \"ChannelContentOwnerDetails\": + {\n \"type\": \"object\",\n \"id\": \"ChannelContentOwnerDetails\",\n + \ \"description\": \"The contentOwnerDetails object encapsulates channel + data that is relevant for YouTube Partners linked with the channel.\",\n \"properties\": + {\n \"timeLinked\": {\n \"type\": \"string\",\n \"description\": + \"The date and time when the channel was linked to the content owner.\",\n + \ \"format\": \"date-time\"\n },\n \"contentOwner\": + {\n \"description\": \"The ID of the content owner linked to the + channel.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"MembershipsDuration\": {\n \"id\": \"MembershipsDuration\",\n \"type\": + \"object\",\n \"properties\": {\n \"memberTotalDurationMonths\": + {\n \"description\": \"The cumulative time the user has been a member + across all levels in complete months (the time is rounded down to the nearest + integer).\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n + \ },\n \"memberSince\": {\n \"description\": \"The date + and time when the user became a continuous member across all levels.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"TestItem\": + {\n \"id\": \"TestItem\",\n \"type\": \"object\",\n \"properties\": + {\n \"id\": {\n \"type\": \"string\"\n },\n \"gaia\": + {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n + \ \"featuredPart\": {\n \"type\": \"boolean\"\n },\n + \ \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n + \ }\n }\n },\n \"PageInfo\": {\n \"type\": \"object\",\n + \ \"description\": \"Paging details for lists of resources, including + total number of items available and number of resources returned in a single + page.\",\n \"id\": \"PageInfo\",\n \"properties\": {\n \"resultsPerPage\": + {\n \"type\": \"integer\",\n \"description\": \"The number + of results included in the API response.\",\n \"format\": \"int32\"\n + \ },\n \"totalResults\": {\n \"description\": \"The + total number of results in the result set.\",\n \"type\": \"integer\",\n + \ \"format\": \"int32\"\n }\n }\n },\n \"ThumbnailDetails\": + {\n \"id\": \"ThumbnailDetails\",\n \"description\": \"Internal + representation of thumbnails for a YouTube resource.\",\n \"properties\": + {\n \"maxres\": {\n \"$ref\": \"Thumbnail\",\n \"description\": + \"The maximum resolution quality image for this resource.\"\n },\n + \ \"default\": {\n \"description\": \"The default image for + this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"standard\": + {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The standard + quality image for this resource.\"\n },\n \"medium\": {\n \"$ref\": + \"Thumbnail\",\n \"description\": \"The medium quality image for + this resource.\"\n },\n \"high\": {\n \"description\": + \"The high quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"VideoMonetizationDetails\": + {\n \"type\": \"object\",\n \"id\": \"VideoMonetizationDetails\",\n + \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n + \ \"description\": \"The value of access indicates whether the video + can be monetized or not.\"\n }\n },\n \"description\": \"Details + about monetization of a YouTube Video.\"\n },\n \"Playlist\": {\n \"type\": + \"object\",\n \"properties\": {\n \"localizations\": {\n \"additionalProperties\": + {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"description\": + \"Localizations for different languages\",\n \"type\": \"object\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#playlist\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlist\\\".\",\n \"type\": \"string\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object contains information like video count.\",\n \"$ref\": + \"PlaylistContentDetails\"\n },\n \"status\": {\n \"description\": + \"The status object contains status information for the playlist.\",\n \"$ref\": + \"PlaylistStatus\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the playlist.\",\n \"type\": + \"string\"\n },\n \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n + \ \"description\": \"The player object contains information that you + would use to play the playlist in an embedded player.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the playlist, such as its + title and description.\",\n \"$ref\": \"PlaylistSnippet\"\n }\n + \ },\n \"description\": \"A *playlist* resource represents a YouTube + playlist. A playlist is a collection of videos that can be viewed sequentially + and shared with other users. A playlist can contain up to 200 videos, and + YouTube does not limit the number of playlists that each user creates. By + default, playlists are publicly visible to other users, but playlists can + be public or private. YouTube also uses playlists to identify special collections + of videos for a channel, such as: - uploaded videos - favorite videos - positively + rated (liked) videos - watch history - watch later To be more specific, these + lists are associated with a channel, which is a collection of a person, group, + or company's videos, playlists, and other YouTube information. You can retrieve + the playlist IDs for each of these lists from the channel resource for a given + channel. You can then use the playlistItems.list method to retrieve any of + those lists. You can also add or remove items from those lists by calling + the playlistItems.insert and playlistItems.delete methods.\",\n \"id\": + \"Playlist\"\n },\n \"LiveBroadcastSnippet\": {\n \"description\": + \"Basic broadcast information.\",\n \"type\": \"object\",\n \"properties\": + {\n \"description\": {\n \"type\": \"string\",\n \"description\": + \"The broadcast's description. As with the title, you can set this field by + modifying the broadcast resource or by setting the description field of the + corresponding video resource.\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"The broadcast's title. Note that the broadcast + represents exactly one YouTube video. You can set this field by modifying + the broadcast resource or by setting the title field of the corresponding + video resource.\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the broadcast. For each nested + object in this object, the key is the name of the thumbnail image, and the + value is an object that contains other information about the thumbnail.\",\n + \ \"$ref\": \"ThumbnailDetails\"\n },\n \"actualEndTime\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time that the broadcast actually + ended. This information is only available once the broadcast's state is complete.\"\n + \ },\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": + \"The id of the live chat for this broadcast.\"\n },\n \"isDefaultBroadcast\": + {\n \"type\": \"boolean\",\n \"description\": \"Indicates + whether this broadcast is the default broadcast. Internal only.\"\n },\n + \ \"scheduledEndTime\": {\n \"type\": \"string\",\n \"description\": + \"The date and time that the broadcast is scheduled to end.\",\n \"format\": + \"date-time\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time that the broadcast + was added to YouTube's live broadcast schedule.\",\n \"type\": \"string\"\n + \ },\n \"actualStartTime\": {\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time that the broadcast actually + started. This information is only available once the broadcast's state is + live.\",\n \"type\": \"string\"\n },\n \"scheduledStartTime\": + {\n \"description\": \"The date and time that the broadcast is scheduled + to start.\",\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n }\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that is publishing + the broadcast.\"\n }\n },\n \"id\": \"LiveBroadcastSnippet\"\n + \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"memberMonth\": + {\n \"description\": \"The total amount of months (rounded up) the + viewer has been a member that granted them this Member Milestone Chat. This + is the same number of months as is being displayed to YouTube users.\",\n + \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n + \ \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": + \"The name of the Level at which the viever is a member. The Level names are + defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\"\n },\n \"userComment\": {\n \"type\": + \"string\",\n \"description\": \"The comment added by the member + to this Member Milestone Chat. This field is empty for messages without a + comment from the member.\"\n }\n }\n },\n \"I18nRegionSnippet\": + {\n \"type\": \"object\",\n \"id\": \"I18nRegionSnippet\",\n \"description\": + \"Basic details about an i18n region, such as region code and human-readable + name.\",\n \"properties\": {\n \"name\": {\n \"description\": + \"The human-readable name of the region.\",\n \"type\": \"string\"\n + \ },\n \"gl\": {\n \"description\": \"The region code + as a 2-letter ISO country code.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"ChannelListResponse\": {\n \"id\": \"ChannelListResponse\",\n + \ \"properties\": {\n \"prevPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#videoCategoryListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoCategory\"\n },\n \"description\": \"A list of video - categories that can be associated with YouTube videos. In this map, the video - category ID is the map key, and its value is the corresponding videoCategory - resource.\",\n \"type\": \"array\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"Channel\"\n },\n + \ \"type\": \"array\"\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"kind\": + {\n \"default\": \"youtube#channelListResponse\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"InvideoPosition\": + {\n \"id\": \"InvideoPosition\",\n \"description\": \"Describes + the spatial position of a visual widget inside a video. It is a union of various + position types, out of which only will be set one.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"type\": {\n \"type\": \"string\",\n + \ \"description\": \"Defines the position type.\",\n \"enumDescriptions\": + [\n \"\"\n ],\n \"enum\": [\n \"corner\"\n + \ ]\n },\n \"cornerPosition\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"topLeft\",\n + \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n + \ ],\n \"description\": \"Describes in which corner of the + video the visual widget will appear.\"\n }\n }\n },\n \"LiveChatTextMessageDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"messageText\": + {\n \"type\": \"string\",\n \"description\": \"The user's + message.\"\n }\n },\n \"id\": \"LiveChatTextMessageDetails\"\n + \ },\n \"ActivityListResponse\": {\n \"type\": \"object\",\n \"id\": + \"ActivityListResponse\",\n \"properties\": {\n \"items\": {\n + \ \"items\": {\n \"$ref\": \"Activity\"\n },\n + \ \"type\": \"array\"\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n + \ \"default\": \"youtube#activityListResponse\",\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"pageInfo\": {\n + \ \"description\": \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoProcessingDetails\": - {\n \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\",\n \"properties\": {\n \"fileDetailsAvailability\": - {\n \"description\": \"This value indicates whether file details - are available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingProgress\": {\n \"$ref\": - \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n },\n \"thumbnailsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether thumbnail images have been generated for the video.\"\n - \ },\n \"tagSuggestionsAvailability\": {\n \"description\": - \"This value indicates whether keyword (tag) suggestions are available for - the video. Tags can be added to a video's metadata to make it easier for other - users to find the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingStatus\": {\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"description\": \"The - video's processing status. This value indicates whether YouTube was able to - process the video or if the video is still being processed.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"processingFailureReason\": - {\n \"type\": \"string\",\n \"description\": \"The reason - that YouTube failed to process the video. This property will only have a value - if the processingStatus property's value is failed.\",\n \"enum\": - [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"processingIssuesAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether video editing suggestions, - which might improve video quality or the playback experience, are available - for the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n }\n },\n \"id\": - \"VideoProcessingDetails\",\n \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"id\": \"VideoFileDetailsVideoStream\",\n \"properties\": {\n - \ \"heightPixels\": {\n \"description\": \"The encoded video - content's height in pixels.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"frameRateFps\": {\n \"description\": - \"The video stream's frame rate, in frames per second.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n },\n \"aspectRatio\": + \ }\n }\n },\n \"ActivityContentDetailsSocial\": {\n \"type\": + \"object\",\n \"description\": \"Details about a social network post.\",\n + \ \"properties\": {\n \"type\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"unspecified\",\n + \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n + \ ],\n \"description\": \"The name of the social network.\"\n + \ },\n \"author\": {\n \"description\": \"The author + of the social network post.\",\n \"type\": \"string\"\n },\n + \ \"imageUrl\": {\n \"description\": \"An image of the post's + author.\",\n \"type\": \"string\"\n },\n \"referenceUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL of + the social network post.\"\n },\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object encapsulates + information that identifies the resource associated with a social network + post.\"\n }\n },\n \"id\": \"ActivityContentDetailsSocial\"\n + \ },\n \"VideoCategory\": {\n \"id\": \"VideoCategory\",\n \"type\": + \"object\",\n \"description\": \"A *videoCategory* resource identifies + a category that has been or could be associated with uploaded videos.\",\n + \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#videoCategory\\\".\",\n \"default\": + \"youtube#videoCategory\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video category.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the video category, including its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n + \ }\n }\n },\n \"GeoPoint\": {\n \"id\": \"GeoPoint\",\n + \ \"description\": \"Geographical coordinates of a point, in WGS84.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"altitude\": {\n \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"description\": \"The video - stream's bitrate, in bits per second.\",\n \"type\": \"string\"\n - \ },\n \"widthPixels\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The encoded - video content's width in pixels. You can calculate the video's encoding aspect - ratio as width_pixels / height_pixels.\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n },\n \"rotation\": {\n \"type\": \"string\",\n - \ \"description\": \"The amount that YouTube needs to rotate the original - source content to properly display the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ]\n },\n \"codec\": {\n \"description\": - \"The video codec that the stream uses.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Information - about a video stream.\"\n },\n \"CommentThreadListResponse\": {\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#commentThreadListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n + \"Altitude above the reference ellipsoid, in meters.\"\n },\n \"longitude\": + {\n \"format\": \"double\",\n \"description\": \"Longitude + in degrees.\",\n \"type\": \"number\"\n },\n \"latitude\": + {\n \"type\": \"number\",\n \"description\": \"Latitude + in degrees.\",\n \"format\": \"double\"\n }\n }\n },\n + \ \"PlaylistLocalization\": {\n \"id\": \"PlaylistLocalization\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"title\": {\n + \ \"type\": \"string\",\n \"description\": \"The localized + strings for playlist's title.\"\n },\n \"description\": {\n + \ \"type\": \"string\",\n \"description\": \"The localized + strings for playlist's description.\"\n }\n },\n \"description\": + \"Playlist localization setting\"\n },\n \"VideoSuggestions\": {\n \"properties\": + {\n \"editorSuggestions\": {\n \"type\": \"array\",\n \"description\": + \"A list of video editing operations that might improve the video quality + or playback experience of the uploaded video.\",\n \"items\": {\n + \ \"enumDescriptions\": [\n \"Picture brightness levels + seem off and could be corrected.\",\n \"The video appears shaky + and could be stabilized.\",\n \"Margins (mattes) detected around + the picture could be cropped.\",\n \"The audio track appears + silent and could be swapped with a better quality one.\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n + \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n + \ ]\n }\n },\n \"processingWarnings\": {\n + \ \"type\": \"array\",\n \"description\": \"A list of reasons + why YouTube may have difficulty transcoding the uploaded video or that might + result in an erroneous transcoding. These warnings are generated before YouTube + actually processes the uploaded video file. In addition, they identify issues + that are unlikely to cause the video processing to fail but that might cause + problems such as sync issues, video artifacts, or a missing audio track.\",\n + \ \"items\": {\n \"type\": \"string\",\n \"enum\": + [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n + \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n + \ \"hasEditlist\",\n \"problematicVideoCodec\",\n + \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n + \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n + \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n + \ ],\n \"enumDescriptions\": [\n \"Unrecognized + file format, transcoding is likely to fail.\",\n \"Unrecognized + video codec, transcoding is likely to fail.\",\n \"Unrecognized + audio codec, transcoding is likely to fail.\",\n \"Conflicting + container and stream resolutions.\",\n \"Edit lists are not currently + supported.\",\n \"Video codec that is known to cause problems + was used.\",\n \"Audio codec that is known to cause problems + was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported + spherical video projection type.\",\n \"Unsupported HDR pixel + format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic + HDR lookup table attached.\"\n ]\n }\n },\n \"processingErrors\": + {\n \"items\": {\n \"type\": \"string\",\n \"enum\": + [\n \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n + \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n + \ \"unsupportedSpatialAudioLayout\"\n ],\n \"enumDescriptions\": + [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image + file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft + Windows Movie Maker project).\",\n \"Other non-video file.\",\n + \ \"Document or text file (e.g., MS Word document).\",\n \"An + archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial + audio layout type.\"\n ]\n },\n \"description\": + \"A list of errors that will prevent YouTube from successfully processing + the uploaded video video. These errors indicate that, regardless of the video's + current processing status, eventually, that status will almost certainly be + failed.\",\n \"type\": \"array\"\n },\n \"processingHints\": + {\n \"type\": \"array\",\n \"description\": \"A list of + suggestions that may improve YouTube's ability to process the video.\",\n + \ \"items\": {\n \"type\": \"string\",\n \"enum\": + [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n + \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n + \ \"hdrVideo\"\n ],\n \"enumDescriptions\": + [\n \"The MP4 file is not streamable, this will slow down the + processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably + a better quality version of the video exists. The video has wide screen aspect + ratio, but is not an HD video.\",\n \"Uploaded video is spherical + video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded + video is VR video.\",\n \"Uploaded video is HDR video.\"\n ]\n + \ }\n },\n \"tagSuggestions\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n + \ },\n \"description\": \"A list of keyword tags that could + be added to the video's metadata to increase the likelihood that users will + locate your video when searching or browsing on YouTube.\"\n }\n },\n + \ \"id\": \"VideoSuggestions\",\n \"description\": \"Specifies suggestions + on how to improve video content, including encoding hints, tag suggestions, + and editor suggestions.\",\n \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": + {\n \"id\": \"LiveBroadcastListResponse\",\n \"properties\": {\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n \ },\n \"pageInfo\": {\n \"description\": \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of comment threads that match the request criteria.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": - \"CommentThreadListResponse\",\n \"type\": \"object\"\n },\n \"ChannelStatistics\": - {\n \"type\": \"object\",\n \"id\": \"ChannelStatistics\",\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\",\n \"properties\": {\n \"videoCount\": {\n \"description\": - \"The number of videos uploaded to the channel.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"subscriberCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of subscribers that the channel has.\"\n },\n \"viewCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of times the channel has been viewed.\",\n \"format\": \"uint64\"\n - \ },\n \"hiddenSubscriberCount\": {\n \"description\": - \"Whether or not the number of subscribers is shown for this user.\",\n \"type\": - \"boolean\"\n },\n \"commentCount\": {\n \"description\": - \"The number of comments for the channel.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n }\n }\n },\n \"ChannelBannerResource\": - {\n \"description\": \"A channel banner returned as the response to a - channel_banner.insert call.\",\n \"id\": \"ChannelBannerResource\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"url\": {\n - \ \"type\": \"string\",\n \"description\": \"The URL of this - banner image.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveBroadcast\": {\n \"id\": \"LiveBroadcast\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"LiveBroadcastSnippet\",\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"description\": \"A list of broadcasts that match + the request criteria.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"default\": + \"youtube#liveBroadcastListResponse\"\n }\n },\n \"type\": + \"object\"\n },\n \"SubscriptionSnippet\": {\n \"properties\": + {\n \"description\": {\n \"description\": \"The subscription's + details.\",\n \"type\": \"string\"\n },\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"annotations\": {\n \"required\": + [\n \"youtube.subscriptions.insert\"\n ]\n },\n + \ \"description\": \"The id object contains information about the + channel that the user subscribed to.\"\n },\n \"publishedAt\": + {\n \"description\": \"The date and time that the subscription was + created.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n + \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + video. 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.\"\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the subscriber's channel.\"\n + \ },\n \"title\": {\n \"description\": \"The subscription's + title.\",\n \"type\": \"string\"\n },\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel that the subscription belongs to.\"\n }\n },\n + \ \"type\": \"object\",\n \"description\": \"Basic details about + a subscription, including title, description and thumbnails of the subscribed + item.\",\n \"id\": \"SubscriptionSnippet\"\n },\n \"VideoAbuseReportSecondaryReason\": + {\n \"properties\": {\n \"label\": {\n \"type\": \"string\",\n + \ \"description\": \"The localized label for this abuse report secondary + reason.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of this abuse report secondary reason.\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\"\n + \ },\n \"LiveChatModerator\": {\n \"id\": \"LiveChatModerator\",\n + \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"LiveChatModeratorSnippet\",\n \ \"description\": \"The snippet object contains basic details about - the event, including its title, description, start time, and end time.\"\n - \ },\n \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n - \ \"description\": \"The status object contains information about - the event's status.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"The statistics object contains info about the - event's current stats. These include concurrent viewers and total chat count. - Statistics can change (in either direction) during the lifetime of an event. - Statistics are only returned while the event is live.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n \"default\": - \"youtube#liveBroadcast\",\n \"type\": \"string\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the broadcast.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A *liveBroadcast* resource represents - an event that will be streamed, via live video, on YouTube.\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"id\": \"ActivityContentDetailsSubscription\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that the user subscribed - to.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"description\": - \"Information about a channel that a user subscribed to.\",\n \"type\": - \"object\"\n },\n \"PlaylistContentDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"PlaylistContentDetails\",\n \"properties\": {\n \"itemCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n }\n },\n \"VideoAbuseReportReason\": - {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReason\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n + the moderator.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n + \ \"default\": \"youtube#liveChatModerator\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube assigns to uniquely identify + the moderator.\",\n \"type\": \"string\"\n }\n },\n \"description\": + \"A *liveChatModerator* resource represents a moderator for a YouTube live + chat. A chat moderator has the ability to ban/unban users from a chat, remove + message, etc.\",\n \"type\": \"object\"\n },\n \"RelatedEntity\": + {\n \"id\": \"RelatedEntity\",\n \"properties\": {\n \"entity\": + {\n \"$ref\": \"Entity\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"I18nRegion\": {\n \"type\": \"object\",\n \"id\": + \"I18nRegion\",\n \"properties\": {\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#i18nRegion\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the i18n region, such as region code and + human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the i18n region.\"\n }\n },\n \"description\": \"A + *i18nRegion* resource identifies a region where YouTube is available.\"\n + \ },\n \"LiveStreamListResponse\": {\n \"id\": \"LiveStreamListResponse\",\n + \ \"properties\": {\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"LiveStream\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of live streams that match the request criteria.\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveStreamListResponse\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n \"default\": - \"youtube#videoAbuseReportReason\"\n },\n \"id\": {\n \"description\": - \"The ID of this abuse report reason.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\"\n },\n \"WatchSettings\": {\n \"id\": - \"WatchSettings\",\n \"description\": \"Branding properties for the watch. - All deprecated.\",\n \"properties\": {\n \"featuredPlaylistId\": - {\n \"description\": \"An ID that uniquely identifies a playlist - that displays next to the video player.\",\n \"type\": \"string\"\n - \ },\n \"textColor\": {\n \"description\": \"The background - color for the video watch page's branded area.\",\n \"type\": \"string\"\n - \ },\n \"backgroundColor\": {\n \"type\": \"string\",\n - \ \"description\": \"The text color for the video watch page's branded - area.\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID of this abuse report - secondary reason.\",\n \"type\": \"string\"\n },\n \"label\": - {\n \"description\": \"The localized label for this abuse report - secondary reason.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatMessage\": {\n \"description\": - \"A *liveChatMessage* resource represents a chat message in a YouTube Live - Chat.\",\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the message.\",\n \"$ref\": - \"LiveChatMessageSnippet\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatMessage\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"authorDetails\": {\n \"description\": \"The - authorDetails object contains basic details about the user that posted this - message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"LiveChatMessage\",\n - \ \"type\": \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n \"description\": - \"DEPRECATED Region restriction of the video.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"blocked\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\",\n \"type\": - \"array\"\n },\n \"allowed\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of region codes - that identify countries where the video is viewable. If this property is present - and a country is not listed in its value, then the video is blocked from appearing - in that country. If this property is present and contains an empty list, the - video is blocked in all countries.\",\n \"type\": \"array\"\n }\n - \ }\n },\n \"VideoAbuseReportReasonListResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"ThumbnailSetResponse\": {\n \"id\": + \"ThumbnailSetResponse\",\n \"properties\": {\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n + \ \"default\": \"youtube#thumbnailSetResponse\",\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"description\": \"A + list of thumbnails.\",\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"type\": \"array\"\n }\n },\n \"type\": + \"object\"\n },\n \"LevelDetails\": {\n \"id\": \"LevelDetails\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"displayName\": + {\n \"description\": \"The name that should be used when referring + to this level.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"LiveChatBanSnippet\": {\n \"properties\": {\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n },\n + \ \"liveChatId\": {\n \"type\": \"string\",\n \"description\": + \"The chat this ban is pertinent to.\"\n },\n \"type\": {\n + \ \"enumDescriptions\": [\n \"An invalid ban type.\",\n + \ \"A permanent ban.\",\n \"A temporary ban.\"\n ],\n + \ \"enum\": [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n + \ \"temporary\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The type of ban.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveChatBanSnippet\"\n },\n \"CommentListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#commentListResponse\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Comment\"\n },\n + \ \"description\": \"A list of comments that match the request criteria.\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ }\n },\n \"id\": \"CommentListResponse\"\n },\n \"Caption\": + {\n \"properties\": {\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the caption.\",\n \"$ref\": + \"CaptionSnippet\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the caption track.\",\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n + \ ]\n }\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#caption\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"Caption\",\n \"description\": \"A *caption* + resource represents a YouTube caption track. A caption track is associated + with exactly one YouTube video.\"\n },\n \"VideoFileDetailsVideoStream\": + {\n \"id\": \"VideoFileDetailsVideoStream\",\n \"description\": + \"Information about a video stream.\",\n \"type\": \"object\",\n \"properties\": + {\n \"aspectRatio\": {\n \"format\": \"double\",\n \"description\": + \"The video content's display aspect ratio, which specifies the aspect ratio + in which the video should be displayed.\",\n \"type\": \"number\"\n + \ },\n \"codec\": {\n \"type\": \"string\",\n \"description\": + \"The video codec that the stream uses.\"\n },\n \"widthPixels\": + {\n \"type\": \"integer\",\n \"description\": \"The encoded + video content's width in pixels. You can calculate the video's encoding aspect + ratio as width_pixels / height_pixels.\",\n \"format\": \"uint32\"\n + \ },\n \"frameRateFps\": {\n \"description\": \"The + video stream's frame rate, in frames per second.\",\n \"format\": + \"double\",\n \"type\": \"number\"\n },\n \"rotation\": + {\n \"enum\": [\n \"none\",\n \"clockwise\",\n + \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n + \ ],\n \"description\": \"The amount that YouTube needs to + rotate the original source content to properly display the video.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"bitrateBps\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"The video stream's bitrate, in bits + per second.\"\n },\n \"vendor\": {\n \"type\": \"string\",\n + \ \"description\": \"A value that uniquely identifies a video vendor. + Typically, the value is a four-letter vendor code.\"\n },\n \"heightPixels\": + {\n \"type\": \"integer\",\n \"description\": \"The encoded + video content's height in pixels.\",\n \"format\": \"uint32\"\n }\n + \ }\n },\n \"ActivityContentDetailsUpload\": {\n \"type\": + \"object\",\n \"id\": \"ActivityContentDetailsUpload\",\n \"properties\": + {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the uploaded video.\"\n }\n + \ },\n \"description\": \"Information about the uploaded video.\"\n + \ },\n \"PlaylistListResponse\": {\n \"type\": \"object\",\n \"id\": + \"PlaylistListResponse\",\n \"properties\": {\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The `visitorId` identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of valid abuse reasons that are used with - `video.ReportAbuse`.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"PlaylistItemContentDetails\": {\n \"properties\": {\n \"note\": - {\n \"type\": \"string\",\n \"description\": \"A user-generated - note for this item.\"\n },\n \"startAt\": {\n \"type\": - \"string\",\n \"description\": \"The time, measured in seconds from - the start of the video, when the video should start playing. (The playlist - owner can specify the times when the video should start and stop playing when - the video is played in the context of the playlist.) The default value is - 0.\"\n },\n \"videoPublishedAt\": {\n \"description\": + \ \"kind\": {\n \"default\": \"youtube#playlistListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlistListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Playlist\"\n },\n \"description\": + \"A list of playlists that match the request criteria\"\n }\n }\n + \ },\n \"PlaylistItemContentDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"note\": {\n \"type\": \"string\",\n + \ \"description\": \"A user-generated note for this item.\"\n },\n + \ \"videoPublishedAt\": {\n \"format\": \"date-time\",\n \"description\": \"The date and time that the video was published to YouTube.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify a video. To retrieve the video resource, - set the id query parameter to this value in your API request.\"\n },\n + \"string\"\n },\n \"startAt\": {\n \"description\": + \"The time, measured in seconds from the start of the video, when the video + should start playing. (The playlist owner can specify the times when the video + should start and stop playing when the video is played in the context of the + playlist.) The default value is 0.\",\n \"type\": \"string\"\n },\n \ \"endAt\": {\n \"type\": \"string\",\n \"description\": \"The time, measured in seconds from the start of the video, when the video should stop playing. (The playlist owner can specify the times when the video should start and stop playing when the video is played in the context of the playlist.) By default, assume that the video.endTime is the end of the video.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"PlaylistItemContentDetails\"\n - \ },\n \"LocalizedProperty\": {\n \"type\": \"object\",\n \"id\": - \"LocalizedProperty\",\n \"properties\": {\n \"defaultLanguage\": - {\n \"description\": \"The language of the default property.\",\n - \ \"$ref\": \"LanguageTag\"\n },\n \"default\": {\n - \ \"type\": \"string\"\n },\n \"localized\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LocalizedString\"\n - \ }\n }\n }\n },\n \"ActivityContentDetailsUpload\": - {\n \"type\": \"object\",\n \"description\": \"Information about - the uploaded video.\",\n \"id\": \"ActivityContentDetailsUpload\",\n - \ \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the uploaded video.\"\n }\n }\n },\n \"AbuseType\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"AbuseType\"\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"id\": \"LiveChatFanFundingEventDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"amountMicros\": - {\n \"description\": \"The amount of the fund.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"currency\": - {\n \"description\": \"The currency in which the fund was made.\",\n - \ \"type\": \"string\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"userComment\": {\n \"description\": \"The comment added - by the user to this fan funding event.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelSettings\": {\n \"properties\": - {\n \"showRelatedChannels\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether related channels should be proposed.\"\n - \ },\n \"country\": {\n \"description\": \"The country - of the channel.\",\n \"type\": \"string\"\n },\n \"unsubscribedTrailer\": - {\n \"type\": \"string\",\n \"description\": \"The trailer - of the channel, for users that are not subscribers.\"\n },\n \"featuredChannelsTitle\": - {\n \"type\": \"string\",\n \"description\": \"Title for - the featured channels tab.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the channel title.\"\n - \ },\n \"description\": {\n \"description\": \"Specifies - the channel description.\",\n \"type\": \"string\"\n },\n - \ \"defaultTab\": {\n \"description\": \"Which content tab - users should see when viewing the channel.\",\n \"type\": \"string\"\n - \ },\n \"moderateComments\": {\n \"description\": \"Whether - user-submitted comments left on the channel page need to be approved by the - channel owner to be publicly visible.\",\n \"type\": \"boolean\"\n - \ },\n \"trackingAnalyticsAccountId\": {\n \"type\": - \"string\",\n \"description\": \"The ID for a Google Analytics account - to track and measure traffic to the channels.\"\n },\n \"featuredChannelsUrls\": - {\n \"description\": \"The list of featured channels.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\"\n - \ },\n \"keywords\": {\n \"type\": \"string\",\n \"description\": - \"Lists keywords associated with the channel, comma-separated.\"\n },\n - \ \"showBrowseView\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the tab to browse the videos should be displayed.\"\n },\n - \ \"profileColor\": {\n \"type\": \"string\",\n \"description\": - \"A prominent color that can be rendered on this channel page.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelSettings\",\n - \ \"description\": \"Branding properties for the channel view.\"\n },\n - \ \"VideoPlayer\": {\n \"description\": \"Player to be used for a video - playback.\",\n \"id\": \"VideoPlayer\",\n \"properties\": {\n \"embedHtml\": - {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a - player that will play the video.\",\n \"type\": \"string\"\n },\n - \ \"embedHeight\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"embedWidth\": {\n \"description\": - \"The embed width\",\n \"type\": \"string\",\n \"format\": - \"int64\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelSectionSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a channel section, including title, style and position.\",\n \"properties\": - {\n \"localized\": {\n \"description\": \"Localized title, - read-only.\",\n \"$ref\": \"ChannelSectionLocalization\"\n },\n - \ \"title\": {\n \"description\": \"The channel section's title - for multiple_playlists and multiple_channels.\",\n \"type\": \"string\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the channel section's default - title and description.\"\n },\n \"style\": {\n \"enum\": - [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The style of - the channel section.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The type of the - channel section.\",\n \"type\": \"string\",\n \"enum\": - [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ]\n },\n \"position\": {\n \"description\": - \"The position of the channel section in the channel.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the channel section.\"\n - \ }\n },\n \"id\": \"ChannelSectionSnippet\"\n },\n \"PlaylistItemStatus\": - {\n \"properties\": {\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"description\": \"This resource's privacy status.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"id\": - \"PlaylistItemStatus\",\n \"type\": \"object\",\n \"description\": - \"Information about the playlist item's privacy status.\"\n },\n \"I18nLanguageListResponse\": - {\n \"id\": \"I18nLanguageListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": + \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify a video. To retrieve the video + resource, set the id query parameter to this value in your API request.\"\n + \ }\n },\n \"id\": \"PlaylistItemContentDetails\"\n },\n + \ \"ChannelConversionPing\": {\n \"id\": \"ChannelConversionPing\",\n + \ \"description\": \"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.\",\n \"type\": \"object\",\n \"properties\": + {\n \"conversionUrl\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n + \ \"context\": {\n \"description\": \"Defines the context of + the ping.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n + \ ]\n }\n }\n },\n \"PlaylistContentDetails\": {\n + \ \"properties\": {\n \"itemCount\": {\n \"type\": \"integer\",\n + \ \"format\": \"uint32\",\n \"description\": \"The number + of videos in the playlist.\"\n }\n },\n \"id\": \"PlaylistContentDetails\",\n + \ \"type\": \"object\"\n },\n \"VideoProjectDetails\": {\n \"properties\": + {},\n \"description\": \"DEPRECATED. b/157517979: This part was never + populated after it was added. However, it sees non-zero traffic because there + is generated client code in the wild that refers to it [1]. We keep this field + and do NOT remove it because otherwise V3 would return an error when this + part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"id\": \"VideoProjectDetails\",\n \"type\": \"object\"\n },\n + \ \"SearchResult\": {\n \"id\": \"SearchResult\",\n \"type\": + \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about a search result, such as + its title or description. For example, if the search result is a video, then + the title will be the video's title and the description will be the video's + description.\",\n \"$ref\": \"SearchResultSnippet\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#searchResult\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The id object contains information + that can be used to uniquely identify the resource that matches the search + request.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n }\n },\n + \ \"description\": \"A search result contains information about a YouTube + video, channel, or playlist that matches the search parameters specified in + an API request. While a search result points to a uniquely identifiable resource, + like a video, it does not have its own persistent data.\"\n },\n \"VideoGetRatingResponse\": + {\n \"id\": \"VideoGetRatingResponse\",\n \"properties\": {\n \"items\": + {\n \"description\": \"A list of ratings that match the request criteria.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"VideoRating\"\n }\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"default\": - \"youtube#i18nLanguageListResponse\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of supported - i18n languages. In this map, the i18n language ID is the map key, and its - value is the corresponding i18nLanguage resource.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n - \ }\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"MembershipsDurationAtLevel\": {\n \"id\": - \"MembershipsDurationAtLevel\",\n \"type\": \"object\",\n \"properties\": - {\n \"memberSince\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the user became a continuous member for the given - level.\"\n },\n \"level\": {\n \"type\": \"string\",\n - \ \"description\": \"Pricing level ID.\"\n },\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - for the given level in complete months (the time is rounded down to the nearest - integer).\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ }\n }\n },\n \"VideoSuggestionsTagSuggestion\": {\n \"properties\": - {\n \"tag\": {\n \"description\": \"The keyword tag suggested - for the video.\",\n \"type\": \"string\"\n },\n \"categoryRestricts\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A set of video categories for which the tag is - relevant. You can use this information to display appropriate tag suggestions - based on the video category that the video uploader associates with the video. - By default, tag suggestions are relevant for all categories if there are no - restricts defined for the keyword.\",\n \"type\": \"array\"\n }\n - \ },\n \"description\": \"A single tag suggestion with it's relevance - information.\",\n \"type\": \"object\",\n \"id\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"LiveChatMembershipGiftingDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"giftMembershipsCount\": {\n \"description\": - \"The number of gift memberships purchased by the user.\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n },\n \"giftMembershipsLevelName\": - {\n \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMembershipGiftingDetails\"\n - \ },\n \"SubscriptionListResponse\": {\n \"id\": \"SubscriptionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n + Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#videoGetRatingResponse\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": + \"object\"\n },\n \"CommentThreadSnippet\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"isPublic\": {\n \"description\": + \"Whether the thread (and therefore all its comments) is visible to all YouTube + users.\",\n \"type\": \"boolean\"\n },\n \"topLevelComment\": + {\n \"$ref\": \"Comment\",\n \"description\": \"The top + level comment of this thread.\"\n },\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the video the comments + refer to, if any. No video_id implies a channel discussion comment.\"\n },\n + \ \"canReply\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n + \ },\n \"totalReplyCount\": {\n \"type\": \"integer\",\n + \ \"description\": \"The total number of replies (not including the + top level comment).\",\n \"format\": \"uint32\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n }\n },\n \"id\": \"CommentThreadSnippet\",\n + \ \"description\": \"Basic details about a comment thread.\"\n },\n + \ \"VideoSnippet\": {\n \"type\": \"object\",\n \"properties\": + {\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The video's title. @mutable youtube.videos.insert youtube.videos.update\"\n + \ },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the video was uploaded.\",\n + \ \"format\": \"date-time\"\n },\n \"tags\": {\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"A list of keyword tags associated with the video. + Tags may contain spaces.\"\n },\n \"defaultAudioLanguage\": + {\n \"description\": \"The default_audio_language property specifies + the language spoken in the video's default audio track.\",\n \"type\": + \"string\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"liveBroadcastContent\": {\n \"type\": + \"string\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ],\n \"description\": + \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" + if the video is not an upcoming/active live broadcast.\",\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been completed.\"\n + \ ]\n },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's description. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the channel that the video was uploaded to.\"\n },\n \"localized\": + {\n \"description\": \"Localized snippet selected with the hl parameter. + If no such localization exists, this field is populated with the default snippet. + (Read-only)\",\n \"$ref\": \"VideoLocalization\"\n },\n \"categoryId\": + {\n \"type\": \"string\",\n \"description\": \"The YouTube + video category associated with the video.\"\n },\n \"channelTitle\": + {\n \"description\": \"Channel title for the channel that the video + belongs to.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": + {\n \"description\": \"The language of the videos's default snippet.\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Basic details about a video, including title, description, uploader, thumbnails + and category.\",\n \"id\": \"VideoSnippet\"\n },\n \"LocalizedProperty\": + {\n \"type\": \"object\",\n \"properties\": {\n \"default\": + {\n \"type\": \"string\"\n },\n \"localized\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"LocalizedString\"\n }\n },\n \"defaultLanguage\": + {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The + language of the default property.\"\n }\n },\n \"id\": \"LocalizedProperty\"\n + \ },\n \"PlaylistItemListResponse\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#playlistItemListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". + Etag of this resource.\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"description\": + \"A list of playlist items that match the request criteria.\",\n \"type\": + \"array\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Subscription\"\n },\n \"description\": \"A list of subscriptions - that match the request criteria.\",\n \"type\": \"array\"\n },\n + \ \"etag\": {\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n + \ },\n \"id\": \"PlaylistItemListResponse\"\n },\n \"VideoCategorySnippet\": + {\n \"properties\": {\n \"title\": {\n \"description\": + \"The video category's title.\",\n \"type\": \"string\"\n },\n + \ \"channelId\": {\n \"description\": \"The YouTube channel + that created the video category.\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n + \ \"type\": \"string\"\n },\n \"assignable\": {\n \"type\": + \"boolean\"\n }\n },\n \"id\": \"VideoCategorySnippet\",\n + \ \"description\": \"Basic details about a video category, such as its + localized title.\",\n \"type\": \"object\"\n },\n \"LiveChatUserBannedMessageDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\",\n + \ \"properties\": {\n \"banType\": {\n \"type\": \"string\",\n + \ \"description\": \"The type of ban.\",\n \"enum\": [\n + \ \"permanent\",\n \"temporary\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ]\n },\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": + \"The details of the user that was banned.\"\n },\n \"banDurationSeconds\": + {\n \"format\": \"uint64\",\n \"description\": \"The duration + of the ban. This property is only present if the banType is temporary.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"PlaylistPlayer\": + {\n \"id\": \"PlaylistPlayer\",\n \"type\": \"object\",\n \"properties\": + {\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": + \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\"\n + \ }\n }\n },\n \"MembershipsLevel\": {\n \"type\": \"object\",\n + \ \"id\": \"MembershipsLevel\",\n \"properties\": {\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube assigns to uniquely identify the memberships level.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"MembershipsLevelSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the level.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevel\"\n + \ }\n },\n \"description\": \"A *membershipsLevel* resource + represents an offer made by YouTube creators for their fans. Users can become + members of the channel by joining one of the available levels. They will provide + recurring monetary support and receives special benefits.\"\n },\n \"MembershipsDurationAtLevel\": + {\n \"type\": \"object\",\n \"properties\": {\n \"memberSince\": + {\n \"description\": \"The date and time when the user became a continuous + member for the given level.\",\n \"type\": \"string\"\n },\n + \ \"level\": {\n \"type\": \"string\",\n \"description\": + \"Pricing level ID.\"\n },\n \"memberTotalDurationMonths\": + {\n \"format\": \"int32\",\n \"description\": \"The cumulative + time the user has been a member for the given level in complete months (the + time is rounded down to the nearest integer).\",\n \"type\": \"integer\"\n + \ }\n },\n \"id\": \"MembershipsDurationAtLevel\"\n },\n + \ \"ActivityContentDetailsSubscription\": {\n \"id\": \"ActivityContentDetailsSubscription\",\n + \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the resource that the user subscribed to.\"\n }\n },\n + \ \"type\": \"object\",\n \"description\": \"Information about a + channel that a user subscribed to.\"\n },\n \"Activity\": {\n \"type\": + \"object\",\n \"properties\": {\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource\"\n },\n + \ \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n \"description\": + \"The snippet object contains basic details about the activity, including + the activity's type and group ID.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the activity.\"\n },\n \"kind\": {\n \"default\": + \"youtube#activity\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n + \ },\n \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n + \ \"description\": \"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.\"\n }\n },\n \"description\": \"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.\",\n + \ \"id\": \"Activity\"\n },\n \"MembershipsLevelListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"MembershipsLevel\"\n },\n \"description\": + \"A list of pricing levels offered by a creator to the fans.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"default\": \"youtube#membershipsLevelListResponse\"\n }\n + \ },\n \"id\": \"MembershipsLevelListResponse\"\n },\n \"CommentSnippet\": + {\n \"type\": \"object\",\n \"description\": \"Basic details about + a comment, such as its author and text.\",\n \"id\": \"CommentSnippet\",\n + \ \"properties\": {\n \"textOriginal\": {\n \"description\": + \"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.\",\n \"type\": + \"string\"\n },\n \"canRate\": {\n \"description\": + \"Whether the current viewer can rate this comment.\",\n \"type\": + \"boolean\"\n },\n \"authorChannelUrl\": {\n \"type\": + \"string\",\n \"description\": \"Link to the author's YouTube channel, + if any.\"\n },\n \"publishedAt\": {\n \"format\": \"date-time\",\n + \ \"type\": \"string\",\n \"description\": \"The date and + time when the comment was originally published.\"\n },\n \"authorProfileImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL for + the avatar of the user who posted the comment.\"\n },\n \"likeCount\": + {\n \"type\": \"integer\",\n \"description\": \"The total + number of likes this comment has received.\",\n \"format\": \"uint32\"\n + \ },\n \"viewerRating\": {\n \"description\": \"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.\",\n \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ]\n },\n \"authorChannelId\": + {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"parentId\": + {\n \"description\": \"The unique id of the parent comment, only + set for replies.\",\n \"type\": \"string\"\n },\n \"updatedAt\": + {\n \"description\": \"The date and time when the comment was last + updated.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n + \ },\n \"videoId\": {\n \"description\": \"The ID of + the video the comment refers to, if any.\",\n \"type\": \"string\"\n + \ },\n \"textDisplay\": {\n \"description\": \"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.\",\n \"type\": + \"string\"\n },\n \"authorDisplayName\": {\n \"type\": + \"string\",\n \"description\": \"The name of the user who posted + the comment.\"\n },\n \"moderationStatus\": {\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"description\": + \"The comment's moderation status. Will not be set if the comments were requested + through the id filter.\",\n \"type\": \"string\",\n \"enum\": + [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n + \ \"rejected\"\n ]\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n }\n }\n },\n \"SearchListResponse\": {\n \"id\": + \"SearchListResponse\",\n \"properties\": {\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"regionCode\": {\n \"type\": \"string\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#searchListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#searchListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"description\": \"Pagination + information for token pagination.\",\n \"items\": {\n \"$ref\": + \"SearchResult\"\n },\n \"type\": \"array\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n \ \"prevPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": + page in the result set.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"LiveChatMessageDeletedDetails\": + {\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"properties\": + {\n \"deletedMessageId\": {\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"VideoSuggestionsTagSuggestion\": + {\n \"properties\": {\n \"categoryRestricts\": {\n \"description\": + \"A set of video categories for which the tag is relevant. You can use this + information to display appropriate tag suggestions based on the video category + that the video uploader associates with the video. By default, tag suggestions + are relevant for all categories if there are no restricts defined for the + keyword.\",\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\"\n },\n \"tag\": {\n \"description\": + \"The keyword tag suggested for the video.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"A single tag suggestion with + it's relevance information.\",\n \"type\": \"object\",\n \"id\": + \"VideoSuggestionsTagSuggestion\"\n },\n \"MembershipsLevelSnippet\": + {\n \"type\": \"object\",\n \"properties\": {\n \"creatorChannelId\": + {\n \"description\": \"The id of the channel that's offering channel + memberships.\",\n \"type\": \"string\"\n },\n \"levelDetails\": + {\n \"description\": \"Details about the pricing level.\",\n \"$ref\": + \"LevelDetails\"\n }\n },\n \"id\": \"MembershipsLevelSnippet\"\n + \ },\n \"Comment\": {\n \"type\": \"object\",\n \"description\": + \"A *comment* represents a single YouTube comment.\",\n \"properties\": + {\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n \"description\": + \"The snippet object contains basic details about the comment.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the comment.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#comment\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n + \ }\n },\n \"id\": \"Comment\"\n },\n \"VideoFileDetails\": + {\n \"description\": \"Describes original video file properties, including + technical details about audio and video streams, but also metadata information + like content length, digitization time, or geotagging information.\",\n \"id\": + \"VideoFileDetails\",\n \"properties\": {\n \"durationMs\": {\n + \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The length of the uploaded video in milliseconds.\"\n },\n \"container\": + {\n \"description\": \"The uploaded video file's container format.\",\n + \ \"type\": \"string\"\n },\n \"audioStreams\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"VideoFileDetailsAudioStream\"\n },\n \"description\": + \"A list of audio streams contained in the uploaded video file. Each item + in the list contains detailed metadata about an audio stream.\"\n },\n + \ \"fileName\": {\n \"type\": \"string\",\n \"description\": + \"The uploaded file's name. This field is present whether a video file or + another type of file was uploaded.\"\n },\n \"fileType\": {\n + \ \"enumDescriptions\": [\n \"Known video file (e.g., an + MP4 file).\",\n \"Audio only file (e.g., an MP3 file).\",\n \"Image + file (e.g., a JPEG image).\",\n \"Archive file (e.g., a ZIP archive).\",\n + \ \"Document or text file (e.g., MS Word document).\",\n \"Movie + project file (e.g., Microsoft Windows Movie Maker project).\",\n \"Other + non-video file type.\"\n ],\n \"type\": \"string\",\n \"description\": + \"The uploaded file's type as detected by YouTube's video processing engine. + Currently, YouTube only processes video files, but this field is present whether + a video file or another type of file was uploaded.\",\n \"enum\": + [\n \"video\",\n \"audio\",\n \"image\",\n + \ \"archive\",\n \"document\",\n \"project\",\n + \ \"other\"\n ]\n },\n \"videoStreams\": + {\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n + \ },\n \"description\": \"A list of video streams contained + in the uploaded video file. Each item in the list contains detailed metadata + about a video stream.\",\n \"type\": \"array\"\n },\n \"bitrateBps\": + {\n \"description\": \"The uploaded video file's combined (video + and audio) bitrate in bits per second.\",\n \"format\": \"uint64\",\n + \ \"type\": \"string\"\n },\n \"fileSize\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + uploaded file's size in bytes. This field is present whether a video file + or another type of file was uploaded.\"\n },\n \"creationTime\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the uploaded video file was created. The value is specified + in ISO 8601 format. Currently, the following ISO 8601 formats are supported: + - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: + YYYY-MM-DDTHH:MM:SS+HH:MM \"\n }\n },\n \"type\": \"object\"\n + \ },\n \"SubscriptionSubscriberSnippet\": {\n \"type\": \"object\",\n + \ \"id\": \"SubscriptionSubscriberSnippet\",\n \"description\": \"Basic + details about a subscription's subscriber including title, description, channel + ID and thumbnails.\",\n \"properties\": {\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"The title of the subscriber.\"\n + \ },\n \"thumbnails\": {\n \"description\": \"Thumbnails + for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n + \ \"description\": {\n \"description\": \"The description of + the subscriber.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The channel + ID of the subscriber.\"\n }\n }\n },\n \"LiveChatGiftMembershipReceivedDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"memberLevelName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` + of the associated membership gifting message. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\"\n },\n \"gifterChannelId\": {\n \"description\": + \"The ID of the user that made the membership gifting purchase. This matches + the `snippet.authorChannelId` of the associated membership gifting message.\",\n + \ \"type\": \"string\"\n },\n \"associatedMembershipGiftingMessageId\": + {\n \"description\": \"The ID of the membership gifting message that + is related to this gift membership. This ID will always refer to a message + whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n + \ },\n \"MemberSnippet\": {\n \"type\": \"object\",\n \"properties\": + {\n \"creatorChannelId\": {\n \"description\": \"The id of + the channel that's offering memberships.\",\n \"type\": \"string\"\n + \ },\n \"memberDetails\": {\n \"description\": \"Details + about the member.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n + \ \"membershipsDetails\": {\n \"description\": \"Details about + the user's membership.\",\n \"$ref\": \"MembershipsDetails\"\n }\n + \ },\n \"id\": \"MemberSnippet\"\n },\n \"VideoProcessingDetailsProcessingProgress\": + {\n \"properties\": {\n \"partsTotal\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"An + estimate of the total number of parts that need to be processed for the video. + The number may be updated with more precise estimates while YouTube processes + the video.\"\n },\n \"timeLeftMs\": {\n \"description\": + \"An estimate of the amount of time, in millseconds, that YouTube needs to + finish processing the video.\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n },\n \"partsProcessed\": {\n \"format\": + \"uint64\",\n \"description\": \"The number of parts of the video + that YouTube has already processed. You can estimate the percentage of the + video that YouTube has already processed by calculating: 100 * parts_processed + / parts_total Note that since the estimated number of parts could increase + without a corresponding increase in the number of parts that have already + been processed, it is possible that the calculated progress could periodically + decrease while YouTube processes a video.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Video processing progress and + completion time estimate.\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n + \ \"type\": \"object\"\n },\n \"ChannelAuditDetails\": {\n \"type\": + \"object\",\n \"properties\": {\n \"copyrightStrikesGoodStanding\": + {\n \"description\": \"Whether or not the channel has any copyright + strikes.\",\n \"type\": \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel has any unresolved claims.\"\n },\n \"communityGuidelinesGoodStanding\": + {\n \"description\": \"Whether or not the channel respects the community + guidelines.\",\n \"type\": \"boolean\"\n }\n },\n \"id\": + \"ChannelAuditDetails\",\n \"description\": \"The auditDetails object + encapsulates channel data that is relevant for YouTube Partners during the + audit process.\"\n },\n \"VideoStatus\": {\n \"id\": \"VideoStatus\",\n + \ \"description\": \"Basic details about a video category, such as its + localized title. Next Id: 18\",\n \"properties\": {\n \"failureReason\": + {\n \"type\": \"string\",\n \"enum\": [\n \"conversion\",\n + \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n + \ \"codec\",\n \"uploadAborted\"\n ],\n \"enumDescriptions\": + [\n \"Unable to convert video content.\",\n \"Invalid + file format.\",\n \"Empty file.\",\n \"File was too + small.\",\n \"Unsupported codec.\",\n \"Upload wasn't + finished.\"\n ],\n \"description\": \"This value explains + why a video failed to upload. This property is only present if the uploadStatus + property indicates that the upload failed.\"\n },\n \"madeForKids\": + {\n \"type\": \"boolean\"\n },\n \"rejectionReason\": + {\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n + \ \"Inappropriate video content.\",\n \"Duplicate upload + in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader + account was suspended.\",\n \"Video duration was too long.\",\n + \ \"Blocked by content owner.\",\n \"Uploader closed + his/her account.\",\n \"Trademark infringement.\",\n \"An + unspecified legal reason.\"\n ],\n \"enum\": [\n \"copyright\",\n + \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n + \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n + \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"This value explains why YouTube rejected an uploaded video. This property + is only present if the uploadStatus property indicates that the upload was + rejected.\"\n },\n \"privacyStatus\": {\n \"description\": + \"The video's privacy status.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"public\",\n \"unlisted\",\n \"private\"\n + \ ],\n \"type\": \"string\"\n },\n \"license\": + {\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n + \ ],\n \"description\": \"The video's license. @mutable youtube.videos.insert + youtube.videos.update\",\n \"type\": \"string\"\n },\n \"publishAt\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the video is scheduled to publish. It can be set only if the + privacy status of the video is private..\",\n \"format\": \"date-time\"\n + \ },\n \"publicStatsViewable\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This value indicates if the extended video statistics + on the watch page can be viewed by everyone. Note that the view count, likes, + etc will still be visible if this is disabled. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n },\n \"embeddable\": {\n + \ \"type\": \"boolean\",\n \"description\": \"This value + indicates if the video can be embedded on another website. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"uploadStatus\": {\n \"enum\": + [\n \"uploaded\",\n \"processed\",\n \"failed\",\n + \ \"rejected\",\n \"deleted\"\n ],\n \"enumDescriptions\": + [\n \"Video has been uploaded but not processed yet.\",\n \"Video + has been successfully processed.\",\n \"Processing has failed. + See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n + \ \"Video has been deleted.\"\n ],\n \"type\": + \"string\",\n \"description\": \"The status of the uploaded video.\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"ThirdPartyLinkStatus\": + {\n \"description\": \"The third-party link status object contains information + about the status of the link.\",\n \"type\": \"object\",\n \"id\": + \"ThirdPartyLinkStatus\",\n \"properties\": {\n \"linkStatus\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"unknown\",\n \"failed\",\n + \ \"pending\",\n \"linked\"\n ]\n }\n + \ }\n },\n \"LiveChatMembershipGiftingDetails\": {\n \"type\": + \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\",\n \"properties\": + {\n \"giftMembershipsCount\": {\n \"type\": \"integer\",\n + \ \"description\": \"The number of gift memberships purchased by the + user.\",\n \"format\": \"int32\"\n },\n \"giftMembershipsLevelName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the level of the gift memberships purchased by the user. The Level names + are defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\"\n }\n }\n },\n \"LiveStreamContentDetails\": + {\n \"id\": \"LiveStreamContentDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"closedCaptionsIngestionUrl\": {\n \"type\": + \"string\",\n \"description\": \"The ingestion URL where the closed + captions of this stream are sent.\"\n },\n \"isReusable\": {\n + \ \"description\": \"Indicates whether the stream is reusable, which + means that it can be bound to multiple broadcasts. It is common for broadcasters + to reuse the same stream for many different broadcasts if those broadcasts + occur at different times. If you set this value to false, then the stream + will not be reusable, which means that it can only be bound to one broadcast. + Non-reusable streams differ from reusable streams in the following ways: - + A non-reusable stream can only be bound to one broadcast. - A non-reusable + stream might be deleted by an automated process after the broadcast ends. + - The liveStreams.list method does not list non-reusable streams if you call + the method and set the mine parameter to true. The only way to use that method + to retrieve the resource for a non-reusable stream is to use the id parameter + to identify the stream. \",\n \"type\": \"boolean\"\n }\n + \ },\n \"description\": \"Detailed settings of a stream.\"\n },\n + \ \"CommentThread\": {\n \"properties\": {\n \"replies\": {\n + \ \"$ref\": \"CommentThreadReplies\",\n \"description\": + \"The replies object contains a limited number of replies (if any) to the + top level comment found in the snippet.\"\n },\n \"etag\": {\n + \ \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"description\": \"The + ID that YouTube uses to uniquely identify the comment thread.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"CommentThreadSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the comment thread and also the top level comment.\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#commentThread\\\".\",\n \"default\": + \"youtube#commentThread\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"CommentThread\",\n \"type\": \"object\",\n \"description\": + \"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.\"\n },\n \"LiveChatModeratorListResponse\": {\n + \ \"id\": \"LiveChatModeratorListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"description\": + \"A list of moderators that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"LiveChatModerator\"\n }\n },\n + \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\"\n },\n \"eventId\": {\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"default\": \"youtube#liveChatModeratorListResponse\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n }\n }\n },\n \"ResourceId\": + {\n \"id\": \"ResourceId\",\n \"properties\": {\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the referred resource, if that resource + is a channel. This property is only present if the resourceId.kind value is + youtube#channel.\"\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a video. This property is only present if the resourceId.kind + value is youtube#video.\",\n \"type\": \"string\"\n },\n \"playlistId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the referred resource, if that resource + is a playlist. This property is only present if the resourceId.kind value + is youtube#playlist.\"\n },\n \"kind\": {\n \"description\": + \"The type of the API resource.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"A resource + id is a generic reference that points to another YouTube resource.\"\n },\n + \ \"ActivityContentDetailsBulletin\": {\n \"type\": \"object\",\n \"description\": + \"Details about a channel bulletin post.\",\n \"properties\": {\n \"resourceId\": + {\n \"description\": \"The resourceId object contains information + that identifies the resource associated with a bulletin post. @mutable youtube.activities.insert\",\n + \ \"$ref\": \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsBulletin\"\n + \ },\n \"VideoStatistics\": {\n \"type\": \"object\",\n \"description\": + \"Statistics about the video, such as the number of times the video was viewed + or liked.\",\n \"id\": \"VideoStatistics\",\n \"properties\": {\n + \ \"likeCount\": {\n \"description\": \"The number of users + who have indicated that they liked the video by giving it a positive rating.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n + \ \"favoriteCount\": {\n \"description\": \"The number of users + who currently have the video marked as a favorite video.\",\n \"type\": + \"string\",\n \"format\": \"uint64\"\n },\n \"commentCount\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The number of comments for the video.\"\n },\n \"dislikeCount\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of users who have indicated that they disliked the video by giving + it a negative rating.\"\n },\n \"viewCount\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of times the video has been viewed.\"\n }\n }\n },\n + \ \"TestItemTestItemSnippet\": {\n \"properties\": {},\n \"id\": + \"TestItemTestItemSnippet\",\n \"type\": \"object\"\n },\n \"VideoPlayer\": + {\n \"properties\": {\n \"embedHtml\": {\n \"type\": + \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that + embeds a player that will play the video.\"\n },\n \"embedHeight\": + {\n \"type\": \"string\",\n \"format\": \"int64\"\n },\n + \ \"embedWidth\": {\n \"format\": \"int64\",\n \"description\": + \"The embed width\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"VideoPlayer\",\n \"description\": + \"Player to be used for a video playback.\"\n },\n \"SearchResultSnippet\": + {\n \"properties\": {\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images + associated with the search result. 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.\"\n },\n \"liveBroadcastContent\": + {\n \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ],\n \"description\": + \"It indicates if the resource (video or channel) has upcoming/active live + broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active + live broadcasts.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been completed.\"\n + \ ]\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The value that YouTube uses to uniquely identify + the channel that published the resource that the search result identifies.\"\n + \ },\n \"description\": {\n \"description\": \"A description + of the search result.\",\n \"type\": \"string\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The title + of the search result.\"\n },\n \"channelTitle\": {\n \"type\": + \"string\",\n \"description\": \"The title of the channel that published + the resource that the search result identifies.\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The creation date and time of the resource that + the search result identifies.\"\n }\n },\n \"description\": + \"Basic details about a search result, including title, description and thumbnails + of the item referenced by the search result.\",\n \"type\": \"object\",\n + \ \"id\": \"SearchResultSnippet\"\n },\n \"LiveBroadcast\": {\n + \ \"properties\": {\n \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n + \ \"description\": \"The statistics object contains info about the + event's current stats. These include concurrent viewers and total chat count. + Statistics can change (in either direction) during the lifetime of an event. + Statistics are only returned while the event is live.\"\n },\n \"status\": + {\n \"$ref\": \"LiveBroadcastStatus\",\n \"description\": + \"The status object contains information about the event's status.\"\n },\n + \ \"id\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"type\": \"string\",\n \"description\": \"The ID that + YouTube assigns to uniquely identify the broadcast.\"\n },\n \"contentDetails\": + {\n \"description\": \"The contentDetails object contains information + about the event's video content, such as whether the content can be shown + in an embedded video player or if it will be archived and therefore available + for viewing after the event has concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the event, including its title, description, + start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"default\": \"youtube#liveBroadcast\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"A *liveBroadcast* + resource represents an event that will be streamed, via live video, on YouTube.\",\n + \ \"id\": \"LiveBroadcast\"\n },\n \"SuperChatEventListResponse\": + {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n }\n }\n },\n \"VideoFileDetailsAudioStream\": - {\n \"description\": \"Information about an audio stream.\",\n \"properties\": - {\n \"bitrateBps\": {\n \"type\": \"string\",\n \"description\": - \"The audio stream's bitrate, in bits per second.\",\n \"format\": - \"uint64\"\n },\n \"channelCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The number - of audio channels that the stream contains.\"\n },\n \"codec\": - {\n \"description\": \"The audio codec that the stream uses.\",\n - \ \"type\": \"string\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"ThirdPartyLinkListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"type\": \"array\"\n },\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"SuperChatEvent\"\n },\n \"description\": + \"A list of Super Chat purchases that match the request criteria.\",\n \"type\": + \"array\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ThirdPartyLinkListResponse\"\n },\n \"ChannelListResponse\": {\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Channel\"\n }\n },\n \"kind\": - {\n \"default\": \"youtube#channelListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n + \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ }\n },\n \"id\": \"ChannelListResponse\",\n \"type\": - \"object\"\n },\n \"LiveBroadcastStatus\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"lifeCycleStatus\": {\n \"description\": - \"The broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"type\": \"string\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete - settings\",\n \"Visible only to partner, may need special UI treatment\",\n - \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n - \ \"The broadcast is finished.\",\n \"This broadcast - was removed by admin action\",\n \"Transition into TESTING has - been requested\",\n \"Transition into LIVE has been requested\"\n - \ ]\n },\n \"madeForKids\": {\n \"description\": - \"Whether the broadcast is made for kids or not, decided by YouTube instead - of the creator. This field is read only.\",\n \"type\": \"boolean\"\n - \ },\n \"liveBroadcastPriority\": {\n \"description\": - \"Priority of the live broadcast event (internal state).\",\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ]\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The broadcast's privacy status. Note that the - broadcast represents exactly one YouTube video, so the privacy settings are - identical to those supported for videos. In addition, you can set this field - by modifying the broadcast resource or by setting the privacyStatus field - of the corresponding video resource.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"recordingStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"description\": - \"The broadcast's recording status.\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ]\n }\n },\n \"id\": \"LiveBroadcastStatus\",\n - \ \"description\": \"Live broadcast state.\"\n },\n \"LiveStreamListResponse\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStreamListResponse\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"LiveStream\"\n },\n \"description\": - \"A list of live streams that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n }\n }\n },\n \"ChannelSnippet\": {\n - \ \"description\": \"Basic details about a channel, including title, description - and thumbnails.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the channel.\"\n },\n \"customUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"The custom url - of the channel.\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the channel - was created.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The channel's title.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel's default title - and description.\",\n \"type\": \"string\"\n },\n \"country\": - {\n \"description\": \"The country of the channel.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ }\n },\n \"id\": \"ChannelSnippet\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamConfigurationIssue\",\n - \ \"properties\": {\n \"description\": {\n \"description\": - \"The long-form description of the issue and how to resolve it.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n + \"string\"\n }\n },\n \"id\": \"SuperChatEventListResponse\",\n + \ \"type\": \"object\"\n },\n \"ActivityContentDetailsPromotedItem\": + {\n \"type\": \"object\",\n \"description\": \"Details about a resource + which is being promoted.\",\n \"id\": \"ActivityContentDetailsPromotedItem\",\n + \ \"properties\": {\n \"destinationUrl\": {\n \"description\": + \"The URL the client should direct the user to, if the user chooses to visit + the advertiser's website.\",\n \"type\": \"string\"\n },\n + \ \"creativeViewUrl\": {\n \"description\": \"The URL the client + should ping to indicate that the user was shown this promoted item.\",\n \"type\": + \"string\"\n },\n \"forecastingUrl\": {\n \"type\": + \"array\",\n \"description\": \"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.\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"adTag\": + {\n \"type\": \"string\",\n \"description\": \"The URL the + client should fetch to request a promoted item.\"\n },\n \"descriptionText\": + {\n \"type\": \"string\",\n \"description\": \"The text + description to accompany the promoted item.\"\n },\n \"customCtaButtonText\": + {\n \"description\": \"The custom call-to-action button text. If + specified, it will override the default button text for the cta_type.\",\n + \ \"type\": \"string\"\n },\n \"ctaType\": {\n \"type\": + \"string\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n + \ \"visitAdvertiserSite\"\n ],\n \"description\": + \"The type of call-to-action, a message to the user indicating action that + can be taken.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ]\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the promoted video.\",\n \"type\": + \"string\"\n },\n \"clickTrackingUrl\": {\n \"description\": + \"The URL the client should ping to indicate that the user clicked through + on this promoted item.\",\n \"type\": \"string\"\n },\n \"impressionUrl\": + {\n \"description\": \"The list of impression URLs. The client should + ping all of these URLs to indicate that the user was shown this promoted item.\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": + \"array\"\n }\n }\n },\n \"LiveChatMessageSnippet\": {\n + \ \"id\": \"LiveChatMessageSnippet\",\n \"properties\": {\n \"messageDeletedDetails\": + {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"messageRetractedDetails\": + {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"authorChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the user that authored this message, this field is not always filled. textMessageEvent + - the user that wrote the message fanFundingEvent - the user that funded the + broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent + - the member that sent the message membershipGiftingEvent - the user that + made the purchase giftMembershipReceivedEvent - the user that received the + gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent + - the author that retracted their message userBannedEvent - the moderator + that took the action superChatEvent - the user that made the purchase superStickerEvent + - the user that made the purchase\"\n },\n \"textMessageDetails\": + {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": + \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n + \ },\n \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n + \ },\n \"hasDisplayContent\": {\n \"description\": \"Whether + the message has display content that should be displayed to users.\",\n \"type\": + \"boolean\"\n },\n \"newSponsorDetails\": {\n \"description\": + \"Details about the New Member Announcement event, this is only set if the + type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term + for \\\"sponsor\\\".\",\n \"$ref\": \"LiveChatNewSponsorDetails\"\n + \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n + \ \"displayMessage\": {\n \"type\": \"string\",\n \"description\": + \"Contains a string that can be displayed to the user. If this field is not + present the message is silent, at the moment only messages of type TOMBSTONE + and CHAT_ENDED_EVENT are silent.\"\n },\n \"membershipGiftingDetails\": + {\n \"description\": \"Details about the Membership Gifting event, + this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": + \"LiveChatMembershipGiftingDetails\"\n },\n \"memberMilestoneChatDetails\": + {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": + \"Details about the Member Milestone Chat event, this is only set if the type + is 'memberMilestoneChatEvent'.\"\n },\n \"superStickerDetails\": + {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n \"description\": + \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\"\n + \ },\n \"fanFundingEventDetails\": {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n + \ \"description\": \"Details about the funding event, this is only + set if the type is 'fanFundingEvent'.\"\n },\n \"publishedAt\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time when the message was orignally + published.\"\n },\n \"superChatDetails\": {\n \"description\": + \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\",\n + \ \"$ref\": \"LiveChatSuperChatDetails\"\n },\n \"giftMembershipReceivedDetails\": + {\n \"description\": \"Details about the Gift Membership Received + event, this is only set if the type is 'giftMembershipReceivedEvent'.\",\n + \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n + \ \"type\": {\n \"enumDescriptions\": [\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n - \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n - \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n - \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n - \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n - \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"description\": \"The kind of error happening.\"\n - \ },\n \"severity\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"description\": \"How severe this issue is to the - stream.\"\n },\n \"reason\": {\n \"type\": \"string\",\n - \ \"description\": \"The short-form reason for this issue.\"\n }\n - \ }\n },\n \"MembershipsDuration\": {\n \"type\": \"object\",\n - \ \"id\": \"MembershipsDuration\",\n \"properties\": {\n \"memberTotalDurationMonths\": - {\n \"format\": \"int32\",\n \"description\": \"The cumulative - time the user has been a member across all levels in complete months (the - time is rounded down to the nearest integer).\",\n \"type\": \"integer\"\n - \ },\n \"memberSince\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the user became a continuous - member across all levels.\"\n }\n }\n },\n \"PlaylistPlayer\": - {\n \"type\": \"object\",\n \"properties\": {\n \"embedHtml\": - {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a - player that will play the playlist.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"PlaylistPlayer\"\n },\n \"Caption\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the caption.\",\n \"$ref\": - \"CaptionSnippet\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The type of message, this will always be present, it determines the contents + of the message as well as which fields will be present.\",\n \"type\": + \"string\",\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n + \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n + \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n + \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n + \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n + \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n + \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n + \ ]\n }\n },\n \"type\": \"object\",\n \"description\": + \"Next ID: 33\"\n },\n \"VideoAbuseReportReasonSnippet\": {\n \"description\": + \"Basic details about a video category, such as its localized title.\",\n + \ \"properties\": {\n \"label\": {\n \"description\": + \"The localized label belonging to this abuse report reason.\",\n \"type\": + \"string\"\n },\n \"secondaryReasons\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n + \ },\n \"description\": \"The secondary reasons associated + with this reason, if any are available. (There might be 0 or more.)\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonSnippet\"\n + \ },\n \"VideoAbuseReportReason\": {\n \"properties\": {\n \"snippet\": + {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n \"description\": + \"The `snippet` object contains basic details about the abuse report reason.\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#videoAbuseReportReason\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#caption\\\".\",\n \"default\": \"youtube#caption\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the caption track.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A *caption* resource represents a YouTube caption - track. A caption track is associated with exactly one YouTube video.\",\n - \ \"type\": \"object\",\n \"id\": \"Caption\"\n },\n \"TokenPagination\": - {\n \"description\": \"Stub token pagination template to suppress results.\",\n - \ \"type\": \"object\",\n \"id\": \"TokenPagination\",\n \"properties\": - {}\n },\n \"ActivityContentDetailsBulletin\": {\n \"type\": \"object\",\n - \ \"description\": \"Details about a channel bulletin post.\",\n \"id\": - \"ActivityContentDetailsBulletin\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with a - bulletin post. @mutable youtube.activities.insert\"\n }\n }\n - \ },\n \"LiveChatNewSponsorDetails\": {\n \"properties\": {\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level that the viewer just had joined. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"isUpgrade\": {\n \"type\": - \"boolean\",\n \"description\": \"If the viewer just had upgraded - from a lower level. For viewers that were not members at the time of purchase, - this field is false.\"\n }\n },\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"type\": \"object\"\n },\n \"ChannelContentDetails\": {\n \"properties\": - {\n \"relatedPlaylists\": {\n \"properties\": {\n \"watchHistory\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"uploads\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use - the videos.insert method to upload new videos and the videos.delete method - to delete previously uploaded videos.\",\n \"type\": \"string\"\n - \ },\n \"likes\": {\n \"description\": \"The - ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n },\n \"favorites\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"watchLater\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch later playlist. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n }\n },\n \"type\": \"object\"\n - \ }\n },\n \"id\": \"ChannelContentDetails\",\n \"type\": - \"object\",\n \"description\": \"Details about the content of a channel.\"\n - \ },\n \"AccessPolicy\": {\n \"type\": \"object\",\n \"description\": - \"Rights management policy for YouTube resources.\",\n \"id\": \"AccessPolicy\",\n - \ \"properties\": {\n \"exception\": {\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n },\n \"allowed\": - {\n \"description\": \"The value of allowed indicates whether the - access to the policy is allowed or denied by default.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"LiveStreamSnippet\": {\n \"type\": - \"object\",\n \"id\": \"LiveStreamSnippet\",\n \"properties\": {\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that is transmitting the stream.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"The stream's title. The value must be between 1 and 128 characters long.\",\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the stream - was created.\",\n \"format\": \"date-time\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The stream's - description. The value cannot be longer than 10000 characters.\"\n },\n - \ \"isDefaultStream\": {\n \"type\": \"boolean\"\n }\n - \ }\n },\n \"SuperChatEventSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"isSuperStickerEvent\": {\n \"description\": - \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n - \ },\n \"displayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the purchase - amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the - given language.\"\n },\n \"messageType\": {\n \"format\": - \"uint32\",\n \"description\": \"The tier for the paid message, which - is based on the amount of money spent to purchase the message.\",\n \"type\": - \"integer\"\n },\n \"commentText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text contents of the comment left by the - user.\"\n },\n \"createdAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the event occurred.\",\n - \ \"type\": \"string\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n },\n \"supporterDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - supporter.\"\n },\n \"channelId\": {\n \"description\": - \"Channel id where the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"amountMicros\": {\n \"description\": \"The - purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\"\n }\n },\n - \ \"id\": \"SuperChatEventSnippet\"\n },\n \"ChannelSectionContentDetails\": - {\n \"properties\": {\n \"playlists\": {\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"channels\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"type\": \"array\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Details about a channelsection, including playlists - and channels.\",\n \"id\": \"ChannelSectionContentDetails\"\n },\n - \ \"MonitorStreamInfo\": {\n \"type\": \"object\",\n \"properties\": - {\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\"\n },\n - \ \"enableMonitorStream\": {\n \"type\": \"boolean\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"This value determines - whether the monitor stream is enabled for the broadcast. If the monitor stream - is enabled, then YouTube will broadcast the event content on a special stream - intended only for the broadcaster's consumption. The broadcaster can use the - stream to review the event content and also to identify the optimal times - to insert cuepoints. You need to set this value to true if you intend to have - a broadcast delay for your event. *Note:* This property cannot be updated - once the broadcast is in the testing or live state.\"\n },\n \"broadcastStreamDelayMs\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"If you have set - the enableMonitorStream property to true, then this property determines the - length of the live broadcast delay.\"\n }\n },\n \"description\": - \"Settings and Info of the monitor stream\",\n \"id\": \"MonitorStreamInfo\"\n - \ },\n \"CommentThreadSnippet\": {\n \"properties\": {\n \"isPublic\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the thread (and therefore all its comments) is visible to all YouTube users.\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID of - the video the comments refer to, if any. No video_id implies a channel discussion - comment.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"topLevelComment\": {\n \"description\": - \"The top level comment of this thread.\",\n \"$ref\": \"Comment\"\n - \ },\n \"canReply\": {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"totalReplyCount\": {\n \"type\": - \"integer\",\n \"description\": \"The total number of replies (not - including the top level comment).\",\n \"format\": \"uint32\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Basic details - about a comment thread.\",\n \"id\": \"CommentThreadSnippet\"\n },\n - \ \"ChannelSectionTargeting\": {\n \"properties\": {\n \"languages\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The language - the channel section is targeting.\"\n },\n \"countries\": {\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\",\n \"description\": \"The country the channel section is - targeting.\"\n },\n \"regions\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"description\": - \"The region the channel section is targeting.\",\n \"type\": \"array\"\n - \ }\n },\n \"description\": \"ChannelSection targeting setting.\",\n - \ \"id\": \"ChannelSectionTargeting\",\n \"type\": \"object\"\n },\n - \ \"VideoContentDetails\": {\n \"type\": \"object\",\n \"description\": - \"Details about the content of a YouTube Video.\",\n \"id\": \"VideoContentDetails\",\n - \ \"properties\": {\n \"countryRestriction\": {\n \"$ref\": - \"AccessPolicy\",\n \"description\": \"The countryRestriction object - contains information about the countries where a video is (or is not) viewable.\"\n - \ },\n \"duration\": {\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\",\n \"type\": - \"string\"\n },\n \"projection\": {\n \"description\": - \"Specifies the projection format of the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ]\n },\n \"contentRating\": {\n \"description\": - \"Specifies the ratings that the video received under various rating schemes.\",\n - \ \"$ref\": \"ContentRating\"\n },\n \"dimension\": - {\n \"type\": \"string\",\n \"description\": \"The value - of dimension indicates whether the video is available in 3D or in 2D.\"\n - \ },\n \"licensedContent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"The value of is_license_content indicates whether - the video is licensed content.\"\n },\n \"hasCustomThumbnail\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\"\n },\n \"definition\": - {\n \"type\": \"string\",\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"description\": \"The value of - definition indicates whether the video is available in high definition or - only in standard definition.\"\n },\n \"regionRestriction\": - {\n \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"caption\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"true\",\n - \ \"false\"\n ],\n \"description\": \"The value - of captions indicates whether the video has captions or not.\"\n }\n - \ }\n },\n \"ActivityContentDetailsComment\": {\n \"description\": - \"Information about a resource that received a comment.\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with the comment.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsComment\"\n },\n \"Thumbnail\": - {\n \"id\": \"Thumbnail\",\n \"properties\": {\n \"url\": - {\n \"type\": \"string\",\n \"description\": \"The thumbnail - image's URL.\"\n },\n \"width\": {\n \"type\": \"integer\",\n - \ \"description\": \"(Optional) Width of the thumbnail image.\",\n - \ \"format\": \"uint32\"\n },\n \"height\": {\n \"type\": - \"integer\",\n \"description\": \"(Optional) Height of the thumbnail - image.\",\n \"format\": \"uint32\"\n }\n },\n \"description\": - \"A thumbnail is an image representing a YouTube resource.\",\n \"type\": - \"object\"\n },\n \"ActivitySnippet\": {\n \"properties\": {\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the resource primarily associated with the activity.\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the video was uploaded.\",\n \"format\": - \"date-time\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The description of the resource - primarily associated with the activity. @mutable youtube.activities.insert\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel associated with the activity.\",\n - \ \"type\": \"string\"\n },\n \"channelTitle\": {\n - \ \"type\": \"string\",\n \"description\": \"Channel title - for the channel responsible for this activity\"\n },\n \"groupId\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n + the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + this abuse report reason.\"\n }\n },\n \"id\": \"VideoAbuseReportReason\",\n + \ \"description\": \"A `__videoAbuseReportReason__` resource identifies + a reason that a video could be reported as abusive. Video abuse report reasons + are used with `video.ReportAbuse`.\",\n \"type\": \"object\"\n },\n + \ \"ActivityContentDetails\": {\n \"id\": \"ActivityContentDetails\",\n + \ \"properties\": {\n \"like\": {\n \"description\": \"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.\",\n + \ \"$ref\": \"ActivityContentDetailsLike\"\n },\n \"social\": + {\n \"$ref\": \"ActivityContentDetailsSocial\",\n \"description\": + \"The social object contains details about a social network post. This property + is only present if the snippet.type is social.\"\n },\n \"playlistItem\": + {\n \"description\": \"The playlistItem object contains information + about a new playlist item. This property is only present if the snippet.type + is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n + \ },\n \"bulletin\": {\n \"description\": \"The bulletin + object contains details about a channel bulletin post. This object is only + present if the snippet.type is bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n + \ },\n \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n + \ \"description\": \"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.\"\n },\n \"promotedItem\": + {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n \"description\": + \"The promotedItem object contains details about a resource which is being + promoted. This property is only present if the snippet.type is promotedItem.\"\n + \ },\n \"recommendation\": {\n \"description\": \"The + recommendation object contains information about a recommended resource. This + property is only present if the snippet.type is recommendation.\",\n \"$ref\": + \"ActivityContentDetailsRecommendation\"\n },\n \"upload\": + {\n \"description\": \"The upload object contains information about + the uploaded video. This property is only present if the snippet.type is upload.\",\n + \ \"$ref\": \"ActivityContentDetailsUpload\"\n },\n \"comment\": + {\n \"$ref\": \"ActivityContentDetailsComment\",\n \"description\": + \"The comment object contains information about a resource that received a + comment. This property is only present if the snippet.type is comment.\"\n + \ },\n \"channelItem\": {\n \"description\": \"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.\",\n \"$ref\": + \"ActivityContentDetailsChannelItem\"\n },\n \"subscription\": + {\n \"description\": \"The subscription object contains information + about a channel that a user subscribed to. This property is only present if + the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Details + about the content of an activity: the video that was shared, the channel that + was subscribed to, etc.\"\n },\n \"PlaylistItemStatus\": {\n \"type\": + \"object\",\n \"properties\": {\n \"privacyStatus\": {\n \"description\": + \"This resource's privacy status.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"public\",\n \"unlisted\",\n \"private\"\n + \ ],\n \"type\": \"string\"\n }\n },\n \"description\": + \"Information about the playlist item's privacy status.\",\n \"id\": + \"PlaylistItemStatus\"\n },\n \"VideoLiveStreamingDetails\": {\n \"properties\": + {\n \"actualStartTime\": {\n \"type\": \"string\",\n \"format\": + \"date-time\",\n \"description\": \"The time that the broadcast actually + started. This value will not be available until the broadcast begins.\"\n + \ },\n \"scheduledStartTime\": {\n \"description\": + \"The time that the broadcast is scheduled to begin.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"scheduledEndTime\": + {\n \"description\": \"The time that the broadcast is scheduled to + end. If the value is empty or the property is not present, then the broadcast + is scheduled to contiue indefinitely.\",\n \"format\": \"date-time\",\n + \ \"type\": \"string\"\n },\n \"concurrentViewers\": + {\n \"type\": \"string\",\n \"description\": \"The number + of viewers currently watching the broadcast. The property and its value will + be present if the broadcast has current viewers and the broadcast owner has + not hidden the viewcount for the video. Note that YouTube stops tracking the + number of concurrent viewers for a broadcast when the broadcast ends. So, + this property would not identify the number of viewers watching an archived + video of a live broadcast that already ended.\",\n \"format\": \"uint64\"\n + \ },\n \"activeLiveChatId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the currently active live chat attached + to this video. This field is filled only if the video is a currently live + broadcast that has live chat. Once the broadcast transitions to complete this + field will be removed and the live chat closed down. For persistent broadcasts + that live chat id will no longer be tied to this video but rather to the new + video being displayed at the persistent page.\"\n },\n \"actualEndTime\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The time that the broadcast actually ended. This + value will not be available until the broadcast is over.\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"VideoLiveStreamingDetails\",\n + \ \"description\": \"Details about the live streaming metadata.\"\n },\n + \ \"ActivityContentDetailsLike\": {\n \"properties\": {\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId + object contains information that identifies the rated resource.\"\n }\n + \ },\n \"id\": \"ActivityContentDetailsLike\",\n \"type\": \"object\",\n + \ \"description\": \"Information about a resource that received a positive + (like) rating.\"\n },\n \"ThirdPartyLinkListResponse\": {\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"type\": + \"array\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n + \ \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"ThirdPartyLinkListResponse\",\n + \ \"type\": \"object\"\n },\n \"LiveStreamSnippet\": {\n \"type\": + \"object\",\n \"id\": \"LiveStreamSnippet\",\n \"properties\": {\n + \ \"publishedAt\": {\n \"description\": \"The date and time + that the stream was created.\",\n \"type\": \"string\",\n \"format\": + \"date-time\"\n },\n \"isDefaultStream\": {\n \"type\": + \"boolean\"\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"description\": \"The stream's title. The value must be between + 1 and 128 characters long.\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that is transmitting + the stream.\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"description\": \"The stream's description. The value cannot + be longer than 10000 characters.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"ActivitySnippet\": {\n \"description\": \"Basic + details about an activity, including title, description, thumbnails, activity + type and group. Next ID: 12\",\n \"properties\": {\n \"publishedAt\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time that the video was uploaded.\",\n \"format\": \"date-time\"\n + \ },\n \"groupId\": {\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The description of the resource primarily associated + with the activity. @mutable youtube.activities.insert\"\n },\n \"channelTitle\": + {\n \"description\": \"Channel title for the channel responsible + for this activity\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the channel associated with the activity.\",\n \"type\": \"string\"\n \ },\n \"type\": {\n \"type\": \"string\",\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n \ \"favorite\",\n \"comment\",\n \"subscription\",\n \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ ],\n \"description\": \"The type of activity that the resource + describes.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of activity that the resource describes.\"\n },\n \"thumbnails\": - {\n \"description\": \"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.\",\n \"$ref\": - \"ThumbnailDetails\"\n }\n },\n \"description\": \"Basic - details about an activity, including title, description, thumbnails, activity - type and group. Next ID: 12\",\n \"id\": \"ActivitySnippet\",\n \"type\": - \"object\"\n },\n \"PlaylistItemSnippet\": {\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The id object contains information that can be - used to uniquely identify the resource that is included in the playlist as - the playlist item.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the item was added to the playlist.\"\n },\n - \ \"position\": {\n \"description\": \"The order in which the - item appears in the playlist. The value uses a zero-based index, so the first - item has a position of 0, the second item has a position of 1, and so forth.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The item's title.\"\n },\n \"videoOwnerChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel id for the channel this - video belongs to.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The item's description.\"\n },\n - \ \"playlistId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify thGe playlist that the playlist item is in.\",\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n }\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the user that added the item to the playlist.\"\n },\n \"thumbnails\": + \ \"\",\n \"\"\n ]\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist item. 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.\"\n },\n - \ \"videoOwnerChannelTitle\": {\n \"description\": \"Channel - title for the channel this video belongs to.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"PlaylistItemSnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about a playlist, including - title, description and thumbnails. Basic details of a YouTube Playlist item - provided by the author. Next ID: 15\"\n },\n \"CaptionSnippet\": {\n - \ \"properties\": {\n \"status\": {\n \"enum\": [\n \"serving\",\n - \ \"syncing\",\n \"failed\"\n ],\n \"type\": - \"string\",\n \"description\": \"The caption track's status.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"audioTrackType\": {\n - \ \"description\": \"The type of audio track associated with the caption - track.\",\n \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"failureReason\": - {\n \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ],\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"lastUpdated\": {\n \"description\": - \"The date and time when the caption track was last updated.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"isLarge\": - {\n \"description\": \"Indicates whether the caption track uses large - text for the vision-impaired. The default value is false.\",\n \"type\": - \"boolean\"\n },\n \"trackKind\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The caption track's - type.\"\n },\n \"isCC\": {\n \"description\": \"Indicates - whether the track contains closed captions for the deaf and hard of hearing. - The default value is false.\",\n \"type\": \"boolean\"\n },\n - \ \"isEasyReader\": {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"language\": {\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\",\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n }\n - \ },\n \"name\": {\n \"description\": \"The name of - the caption track. The name is intended to be visible to the user as an option - during playback.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video associated with - the caption track. @mutable youtube.captions.insert\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"isAutoSynced\": {\n \"description\": - \"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.\",\n \"type\": \"boolean\"\n },\n \"isDraft\": - {\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\",\n - \ \"type\": \"boolean\"\n }\n },\n \"description\": - \"Basic details about a caption track, such as its language and name.\",\n - \ \"id\": \"CaptionSnippet\",\n \"type\": \"object\"\n },\n \"RelatedEntity\": - {\n \"type\": \"object\",\n \"properties\": {\n \"entity\": - {\n \"$ref\": \"Entity\"\n }\n },\n \"id\": \"RelatedEntity\"\n - \ },\n \"Comment\": {\n \"description\": \"A *comment* represents - a single YouTube comment.\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the comment.\",\n \"$ref\": \"CommentSnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#comment\\\".\",\n \"default\": - \"youtube#comment\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"Comment\",\n \"type\": - \"object\"\n },\n \"InvideoBranding\": {\n \"description\": \"LINT.IfChange - Describes an invideo branding.\",\n \"id\": \"InvideoBranding\",\n \"properties\": - {\n \"targetChannelId\": {\n \"description\": \"The channel - to which this branding links. If not present it defaults to the current channel.\",\n - \ \"type\": \"string\"\n },\n \"imageBytes\": {\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"format\": \"byte\",\n \"type\": \"string\"\n },\n - \ \"timing\": {\n \"$ref\": \"InvideoTiming\",\n \"description\": - \"The temporal position within the video where watermark will be displayed.\"\n - \ },\n \"position\": {\n \"$ref\": \"InvideoPosition\",\n - \ \"description\": \"The spatial position within the video where the - branding watermark will be displayed.\"\n },\n \"imageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The url of - the uploaded image. Only used in apiary to api communication.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"MemberSnippet\": {\n \"type\": - \"object\",\n \"id\": \"MemberSnippet\",\n \"properties\": {\n \"membershipsDetails\": - {\n \"$ref\": \"MembershipsDetails\",\n \"description\": - \"Details about the user's membership.\"\n },\n \"memberDetails\": - {\n \"description\": \"Details about the member.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering memberships.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoTopicDetails\": {\n \"description\": - \"Freebase topic information related to the video.\",\n \"properties\": - {\n \"relevantTopicIds\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\"\n - \ },\n \"topicIds\": {\n \"description\": \"A list of - Freebase topic IDs that are centrally associated with the video. These are - topics that are centrally featured in the video, and it can be said that the - video is mainly about each of these. You can retrieve information about each - topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"topicCategories\": - {\n \"type\": \"array\",\n \"description\": \"A list of - Wikipedia URLs that provide a high-level description of the video's content.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"id\": \"VideoTopicDetails\",\n \"type\": \"object\"\n - \ },\n \"SuperChatEvent\": {\n \"description\": \"A `__superChatEvent__` - resource represents a Super Chat purchase on a YouTube channel.\",\n \"id\": - \"SuperChatEvent\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n \"default\": - \"youtube#superChatEvent\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the Super Chat event.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the Super Chat event.\",\n \"$ref\": - \"SuperChatEventSnippet\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoSuggestions\": {\n \"properties\": {\n \"tagSuggestions\": - {\n \"description\": \"A list of keyword tags that could be added - to the video's metadata to increase the likelihood that users will locate - your video when searching or browsing on YouTube.\",\n \"items\": - {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n },\n - \ \"type\": \"array\"\n },\n \"processingWarnings\": - {\n \"type\": \"array\",\n \"description\": \"A list of - reasons why YouTube may have difficulty transcoding the uploaded video or - that might result in an erroneous transcoding. These warnings are generated - before YouTube actually processes the uploaded video file. In addition, they - identify issues that are unlikely to cause the video processing to fail but - that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n - \ \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ]\n }\n },\n \"processingErrors\": {\n - \ \"description\": \"A list of errors that will prevent YouTube from - successfully processing the uploaded video video. These errors indicate that, - regardless of the video's current processing status, eventually, that status - will almost certainly be failed.\",\n \"type\": \"array\",\n \"items\": - {\n \"enum\": [\n \"audioFile\",\n \"imageFile\",\n - \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n - \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"enumDescriptions\": [\n \"File - contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., - a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file.\",\n \"Document - or text file (e.g., MS Word document).\",\n \"An archive file - (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout - type.\"\n ],\n \"type\": \"string\"\n }\n },\n - \ \"processingHints\": {\n \"items\": {\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\"\n + 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.\"\n },\n \"title\": {\n \"description\": + \"The title of the resource primarily associated with the activity.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"ActivitySnippet\",\n \"type\": + \"object\"\n },\n \"VideoTopicDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoTopicDetails\",\n \"properties\": {\n \"relevantTopicIds\": + {\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"Similar to topic_id, + except that these topics are merely relevant to the video. These are topics + that may be mentioned in, or appear in the video. You can retrieve information + about each topic using Freebase Topic API.\"\n },\n \"topicCategories\": + {\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"A list of Wikipedia + URLs that provide a high-level description of the video's content.\"\n },\n + \ \"topicIds\": {\n \"items\": {\n \"type\": \"string\"\n \ },\n \"type\": \"array\",\n \"description\": \"A - list of suggestions that may improve YouTube's ability to process the video.\"\n - \ },\n \"editorSuggestions\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ]\n },\n \"description\": \"A list of video - editing operations that might improve the video quality or playback experience - of the uploaded video.\"\n }\n },\n \"id\": \"VideoSuggestions\",\n - \ \"type\": \"object\",\n \"description\": \"Specifies suggestions - on how to improve video content, including encoding hints, tag suggestions, - and editor suggestions.\"\n },\n \"VideoGetRatingResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"default\": \"youtube#videoGetRatingResponse\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"description\": \"A list of ratings - that match the request criteria.\"\n }\n },\n \"id\": \"VideoGetRatingResponse\",\n - \ \"type\": \"object\"\n },\n \"ActivityListResponse\": {\n \"type\": - \"object\",\n \"id\": \"ActivityListResponse\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Activity\"\n },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"default\": \"youtube#activityListResponse\",\n \"type\": - \"string\"\n }\n }\n },\n \"I18nRegionSnippet\": {\n \"description\": - \"Basic details about an i18n region, such as region code and human-readable - name.\",\n \"type\": \"object\",\n \"id\": \"I18nRegionSnippet\",\n - \ \"properties\": {\n \"name\": {\n \"description\": \"The - human-readable name of the region.\",\n \"type\": \"string\"\n },\n - \ \"gl\": {\n \"type\": \"string\",\n \"description\": - \"The region code as a 2-letter ISO country code.\"\n }\n }\n - \ },\n \"ChannelConversionPing\": {\n \"properties\": {\n \"conversionUrl\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"context\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Defines the context of the ping.\",\n \"enum\": - [\n \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ]\n }\n },\n \"description\": \"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.\",\n - \ \"id\": \"ChannelConversionPing\",\n \"type\": \"object\"\n },\n - \ \"Playlist\": {\n \"description\": \"A *playlist* resource represents - a YouTube playlist. A playlist is a collection of videos that can be viewed - sequentially and shared with other users. A playlist can contain up to 200 - videos, and YouTube does not limit the number of playlists that each user - creates. By default, playlists are publicly visible to other users, but playlists - can be public or private. YouTube also uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n - \ \"id\": \"Playlist\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"default\": \"youtube#playlist\",\n \"type\": \"string\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains information like video count.\",\n \"$ref\": - \"PlaylistContentDetails\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistSnippet\",\n \"description\": \"The snippet object contains - basic details about the playlist, such as its title and description.\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"description\": - \"Localizations for different languages\"\n },\n \"player\": - {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": \"The - player object contains information that you would use to play the playlist - in an embedded player.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"status\": {\n \"description\": - \"The status object contains status information for the playlist.\",\n \"$ref\": - \"PlaylistStatus\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"MemberListResponse\": {\n \"id\": \"MemberListResponse\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of members that match the request criteria.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Member\"\n }\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"pageInfo\": {\n - \ \"$ref\": \"PageInfo\"\n }\n }\n },\n \"MembershipsLevelSnippet\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"properties\": {\n \"levelDetails\": {\n \"$ref\": - \"LevelDetails\",\n \"description\": \"Details about the pricing - level.\"\n },\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoAbuseReport\": {\n \"properties\": - {\n \"reasonId\": {\n \"description\": \"The high-level, or - primary, reason that the content is abusive. The value is an abuse report - reason ID.\",\n \"type\": \"string\"\n },\n \"secondaryReasonId\": - {\n \"type\": \"string\",\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\"\n },\n \"comments\": {\n \"type\": \"string\",\n - \ \"description\": \"Additional comments regarding the abuse report.\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ },\n \"language\": {\n \"description\": \"The language - that the content was viewed in.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReport\"\n - \ },\n \"ResourceId\": {\n \"id\": \"ResourceId\",\n \"properties\": - {\n \"playlistId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a playlist. - This property is only present if the resourceId.kind value is youtube#playlist.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"The type of the API resource.\",\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a video. This property - is only present if the resourceId.kind value is youtube#video.\"\n }\n - \ },\n \"description\": \"A resource id is a generic reference that - points to another YouTube resource.\",\n \"type\": \"object\"\n },\n - \ \"LiveChatMessageListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"pollingIntervalMillis\": - {\n \"format\": \"uint32\",\n \"description\": \"The amount - of time the client should wait before polling again.\",\n \"type\": - \"integer\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"offlineAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time when the underlying - stream went offline.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveChatMessageListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"type\": \"array\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveChatMessageListResponse\"\n },\n - \ \"LiveChatUserBannedMessageDetails\": {\n \"properties\": {\n \"bannedUserDetails\": - {\n \"description\": \"The details of the user that was banned.\",\n - \ \"$ref\": \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": - {\n \"description\": \"The duration of the ban. This property is - only present if the banType is temporary.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"banType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of ban.\",\n \"type\": \"string\",\n \"enum\": - [\n \"permanent\",\n \"temporary\"\n ]\n }\n - \ },\n \"id\": \"LiveChatUserBannedMessageDetails\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsFavorite\": {\n \"id\": - \"ActivityContentDetailsFavorite\",\n \"type\": \"object\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\"\n }\n },\n \"description\": - \"Information about a video that was marked as a favorite video.\"\n },\n - \ \"LiveStreamStatus\": {\n \"properties\": {\n \"healthStatus\": - {\n \"description\": \"The health status of the stream.\",\n \"$ref\": - \"LiveStreamHealthStatus\"\n },\n \"streamStatus\": {\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"description\": \"Brief description of the live stream status.\",\n - \ \"type\": \"object\",\n \"id\": \"LiveStreamStatus\"\n },\n - \ \"MembershipsLevelListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"items\": {\n \"description\": \"A list of pricing levels - offered by a creator to the fans.\",\n \"items\": {\n \"$ref\": - \"MembershipsLevel\"\n },\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevelListResponse\"\n }\n - \ },\n \"id\": \"MembershipsLevelListResponse\"\n },\n \"SearchListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"type\": + list of Freebase topic IDs that are centrally associated with the video. These + are topics that are centrally featured in the video, and it can be said that + the video is mainly about each of these. You can retrieve information about + each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase + Topic API.\"\n }\n },\n \"description\": \"Freebase topic + information related to the video.\"\n },\n \"Subscription\": {\n \"description\": + \"A *subscription* resource contains information about a YouTube user subscription. + A subscription notifies a user when new videos are added to a channel or when + another user takes one of several actions on YouTube, such as uploading a + video, rating a video, or commenting on a video.\",\n \"id\": \"Subscription\",\n + \ \"properties\": {\n \"contentDetails\": {\n \"$ref\": + \"SubscriptionContentDetails\",\n \"description\": \"The contentDetails + object contains basic statistics about the subscription.\"\n },\n \"kind\": + {\n \"default\": \"youtube#subscription\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n + \ \"type\": \"string\"\n },\n \"subscriberSnippet\": + {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n \"description\": + \"The subscriberSnippet object contains basic details about the subscriber.\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the subscription.\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"$ref\": \"SubscriptionSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the subscription, including its title and the channel that the user subscribed + to.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"LiveChatMessageRetractedDetails\": + {\n \"properties\": {\n \"retractedMessageId\": {\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\",\n + \ \"type\": \"object\"\n },\n \"ChannelSnippet\": {\n \"properties\": + {\n \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": + \"The language of the channel's default title and description.\"\n },\n + \ \"country\": {\n \"type\": \"string\",\n \"description\": + \"The country of the channel.\"\n },\n \"description\": {\n + \ \"description\": \"The description of the channel.\",\n \"type\": + \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"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. When displaying thumbnails in your application, make sure that + your code uses the image URLs exactly as they are returned in API responses. + For example, your application should not use the http domain instead of the + https domain in a URL returned in an API response. Beginning in July 2018, + channel thumbnail URLs will only be available in the https domain, which is + how the URLs appear in API responses. After that time, you might see broken + images in your application if it tries to load YouTube images from the http + domain. Thumbnail images might be empty for newly created channels and might + take up to one day to populate.\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"The channel's title.\"\n },\n + \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the channel was created.\",\n \"type\": + \"string\"\n },\n \"customUrl\": {\n \"description\": + \"The custom url of the channel.\",\n \"type\": \"string\"\n },\n + \ \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n \"description\": + \"Localized title and description, read-only.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"ChannelSnippet\",\n \"description\": \"Basic + details about a channel, including title, description and thumbnails.\"\n + \ },\n \"PlaylistSnippet\": {\n \"id\": \"PlaylistSnippet\",\n \"description\": + \"Basic details about a playlist, including title, description and thumbnails.\",\n + \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel that published the playlist.\"\n },\n \"thumbnailVideoId\": + {\n \"description\": \"Note: if the playlist has a custom thumbnail, + this field will not be populated. The video id selected by the user that will + be used as the thumbnail of this playlist. This field defaults to the first + publicly viewable video in the playlist, if: 1. The user has never selected + a video to be the thumbnail of the playlist. 2. The user selects a video to + be the thumbnail, and then removes that video from the playlist. 3. The user + selects a non-owned video to be the thumbnail, but that video becomes private, + or gets deleted.\",\n \"type\": \"string\"\n },\n \"channelTitle\": + {\n \"description\": \"The channel title of the channel that the + video belongs to.\",\n \"type\": \"string\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"description\": \"The + date and time that the playlist was created.\",\n \"type\": \"string\"\n + \ },\n \"localized\": {\n \"$ref\": \"PlaylistLocalization\",\n + \ \"description\": \"Localized title and description, read-only.\"\n + \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n + \ \"description\": \"The language of the playlist's default title + and description.\"\n },\n \"title\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.playlists.insert\",\n + \ \"youtube.playlists.update\"\n ]\n },\n + \ \"description\": \"The playlist's title.\",\n \"type\": + \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The playlist's description.\"\n },\n \"thumbnails\": + {\n \"description\": \"A map of thumbnail images associated with + the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"tags\": + {\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"Keyword tags associated + with the playlist.\"\n }\n },\n \"type\": \"object\"\n },\n + \ \"CommentThreadReplies\": {\n \"id\": \"CommentThreadReplies\",\n + \ \"description\": \"Comments written in (direct or indirect) reply to + the top level comment.\",\n \"type\": \"object\",\n \"properties\": + {\n \"comments\": {\n \"items\": {\n \"$ref\": + \"Comment\"\n },\n \"description\": \"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.\",\n \"type\": \"array\"\n }\n }\n },\n \"MemberListResponse\": + {\n \"id\": \"MemberListResponse\",\n \"properties\": {\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"default\": \"youtube#searchListResponse\"\n },\n \"nextPageToken\": + this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n + \ \"default\": \"youtube#memberListResponse\"\n },\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\",\n \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"SearchResult\"\n },\n \"type\": \"array\",\n \"description\": - \"Pagination information for token pagination.\"\n },\n \"regionCode\": - {\n \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"id\": \"SearchListResponse\"\n },\n \"Cuepoint\": - {\n \"description\": \"Note that there may be a 5-second end-point resolution - issue. For instance, if a cuepoint comes in for 22:03:27, we may stuff the - cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact of HLS.\",\n - \ \"id\": \"Cuepoint\",\n \"properties\": {\n \"id\": {\n - \ \"description\": \"The identifier for cuepoint resource.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"durationSecs\": {\n \"type\": \"integer\",\n - \ \"description\": \"The duration of this cuepoint.\",\n \"format\": - \"uint32\"\n },\n \"insertionOffsetTimeMs\": {\n \"type\": - \"string\",\n \"format\": \"int64\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\"\n },\n \"cueType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ]\n },\n \"walltimeMs\": - {\n \"type\": \"string\",\n \"description\": \"The wall - clock time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\",\n \"format\": \"uint64\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoLocalization\": - {\n \"description\": \"Localized versions of certain video properties - (e.g. title).\",\n \"id\": \"VideoLocalization\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Localized version of the video's description.\"\n - \ },\n \"title\": {\n \"description\": \"Localized version - of the video's title.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveStreamHealthStatus\": {\n \"id\": \"LiveStreamHealthStatus\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"lastUpdateTimeSeconds\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The last time this status was updated (in seconds)\"\n },\n \"status\": - {\n \"description\": \"The status code of this stream\",\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"configurationIssues\": - {\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"description\": \"The configurations issues on this - stream\",\n \"type\": \"array\"\n }\n }\n },\n \"SubscriptionContentDetails\": - {\n \"id\": \"SubscriptionContentDetails\",\n \"description\": \"Details - about the content to witch a subscription refers.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"newItemCount\": {\n \"format\": - \"uint32\",\n \"description\": \"The number of new items in the subscription - since its content was last read.\",\n \"type\": \"integer\"\n },\n - \ \"activityType\": {\n \"type\": \"string\",\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"totalItemCount\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The approximate number of items - that the subscription points to.\"\n }\n }\n },\n \"SuperChatEventListResponse\": - {\n \"type\": \"object\",\n \"id\": \"SuperChatEventListResponse\",\n - \ \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#superChatEventListResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n },\n - \ \"description\": \"A list of Super Chat purchases that match the - request criteria.\",\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n }\n },\n \"SuperStickerMetadata\": - {\n \"type\": \"object\",\n \"id\": \"SuperStickerMetadata\",\n - \ \"properties\": {\n \"altText\": {\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\",\n \"type\": \"string\"\n },\n \"stickerId\": - {\n \"description\": \"Unique identifier of the Super Sticker. This - is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\",\n \"type\": \"string\"\n },\n - \ \"altTextLanguage\": {\n \"description\": \"Specifies the - localization language in which the alt text is returned.\",\n \"type\": - \"string\"\n }\n }\n },\n \"InvideoPosition\": {\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"id\": \"InvideoPosition\",\n \"properties\": {\n \"type\": - {\n \"description\": \"Defines the position type.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\"\n ],\n - \ \"enum\": [\n \"corner\"\n ]\n },\n \"cornerPosition\": - {\n \"type\": \"string\",\n \"enum\": [\n \"topLeft\",\n - \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n - \ ],\n \"description\": \"Describes in which corner of the - video the visual widget will appear.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"type\": \"object\"\n },\n \"CommentThreadReplies\": - {\n \"id\": \"CommentThreadReplies\",\n \"type\": \"object\",\n - \ \"description\": \"Comments written in (direct or indirect) reply to - the top level comment.\",\n \"properties\": {\n \"comments\": - {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"type\": \"array\",\n \"description\": \"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.\"\n }\n }\n },\n \"ChannelContentOwnerDetails\": - {\n \"id\": \"ChannelContentOwnerDetails\",\n \"properties\": {\n - \ \"timeLinked\": {\n \"description\": \"The date and time - when the channel was linked to the content owner.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"contentOwner\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the content owner linked to the channel.\"\n }\n },\n \"description\": + \ \"$ref\": \"TokenPagination\"\n },\n \"etag\": {\n + \ \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n + \ },\n \"items\": {\n \"description\": \"A list of members + that match the request criteria.\",\n \"items\": {\n \"$ref\": + \"Member\"\n },\n \"type\": \"array\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"Channel\": {\n \"properties\": + {\n \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n + \ \"description\": \"The contentDetails object encapsulates information + about the channel's content.\"\n },\n \"statistics\": {\n \"description\": + \"The statistics object encapsulates statistics for the channel.\",\n \"$ref\": + \"ChannelStatistics\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the channel, such as its + title, description, and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"status\": + {\n \"description\": \"The status object encapsulates information + about the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n + \ },\n \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n + \ \"description\": \"The conversionPings object encapsulates information + about conversion pings that need to be respected by the channel.\"\n },\n + \ \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n + \ \"description\": \"The auditionDetails object encapsulates channel + data that is relevant for YouTube Partners during the audition process.\"\n + \ },\n \"contentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"type\": \"object\"\n - \ },\n \"ChannelSection\": {\n \"id\": \"ChannelSection\",\n \"properties\": - {\n \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"description\": \"Localizations - for different languages\",\n \"type\": \"object\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"default\": \"youtube#channelSection\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel section.\",\n \"type\": \"string\"\n },\n \"targeting\": - {\n \"$ref\": \"ChannelSectionTargeting\",\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ChannelSectionContentDetails\",\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the channel section, such as its type, style and title.\",\n - \ \"$ref\": \"ChannelSectionSnippet\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatMessageAuthorDetails\": {\n \"id\": - \"LiveChatMessageAuthorDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"isChatModerator\": {\n \"description\": \"Whether the - author is a moderator of the live chat.\",\n \"type\": \"boolean\"\n - \ },\n \"isChatSponsor\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author is a sponsor of the live chat.\"\n - \ },\n \"isVerified\": {\n \"description\": \"Whether - the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n },\n - \ \"channelUrl\": {\n \"description\": \"The channel's URL.\",\n - \ \"type\": \"string\"\n },\n \"isChatOwner\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is the owner - of the live chat.\"\n },\n \"profileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channels's avatar URL.\"\n },\n - \ \"channelId\": {\n \"description\": \"The YouTube channel - ID.\",\n \"type\": \"string\"\n }\n }\n },\n \"ChannelBrandingSettings\": - {\n \"description\": \"Branding properties of a YouTube channel.\",\n - \ \"id\": \"ChannelBrandingSettings\",\n \"properties\": {\n \"channel\": - {\n \"$ref\": \"ChannelSettings\",\n \"description\": \"Branding - properties for the channel view.\"\n },\n \"hints\": {\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n },\n \"type\": - \"array\",\n \"description\": \"Additional experimental branding - properties.\"\n },\n \"watch\": {\n \"$ref\": \"WatchSettings\",\n - \ \"description\": \"Branding properties for the watch page.\"\n },\n - \ \"image\": {\n \"description\": \"Branding properties for - branding images.\",\n \"$ref\": \"ImageSettings\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoCategory\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoCategory\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the video category.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the video category, including its title.\",\n - \ \"$ref\": \"VideoCategorySnippet\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A *videoCategory* resource identifies - a category that has been or could be associated with uploaded videos.\",\n - \ \"id\": \"VideoCategory\"\n },\n \"VideoFileDetails\": {\n \"properties\": - {\n \"audioStreams\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n },\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\"\n },\n - \ \"creationTime\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the uploaded video file was created. The value is - specified in ISO 8601 format. Currently, the following ISO 8601 formats are - supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time - with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"fileType\": - {\n \"enumDescriptions\": [\n \"Known video file (e.g., - an MP4 file).\",\n \"Audio only file (e.g., an MP3 file).\",\n - \ \"Image file (e.g., a JPEG image).\",\n \"Archive file - (e.g., a ZIP archive).\",\n \"Document or text file (e.g., MS Word - document).\",\n \"Movie project file (e.g., Microsoft Windows Movie - Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"description\": \"The uploaded - file's type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\",\n \"type\": \"string\"\n - \ },\n \"fileSize\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The uploaded file's size in bytes. - This field is present whether a video file or another type of file was uploaded.\"\n - \ },\n \"fileName\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\"\n },\n \"container\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded video file's container format.\"\n - \ },\n \"durationMs\": {\n \"type\": \"string\",\n \"description\": - \"The length of the uploaded video in milliseconds.\",\n \"format\": - \"uint64\"\n },\n \"videoStreams\": {\n \"items\": - {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n },\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\",\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoFileDetails\",\n \"description\": \"Describes original video file - properties, including technical details about audio and video streams, but - also metadata information like content length, digitization time, or geotagging - information.\"\n },\n \"ChannelLocalization\": {\n \"description\": - \"Channel localization setting\",\n \"type\": \"object\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel's description.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel's title.\"\n }\n },\n \"id\": \"ChannelLocalization\"\n - \ },\n \"ThirdPartyLink\": {\n \"id\": \"ThirdPartyLink\",\n \"description\": - \"A *third party account link* resource represents a link between a YouTube - account or a channel and an account on a third-party service.\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"default\": \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the status of the link.\",\n \"$ref\": - \"ThirdPartyLinkStatus\"\n },\n \"snippet\": {\n \"$ref\": - \"ThirdPartyLinkSnippet\",\n \"description\": \"The snippet object - contains basic details about the third- party account link.\"\n },\n - \ \"linkingToken\": {\n \"description\": \"The linking_token - identifies a YouTube account and channel with which the third party account - is linked.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"CdnSettings\": {\n \"type\": \"object\",\n - \ \"description\": \"Brief description of the live stream cdn settings.\",\n - \ \"properties\": {\n \"frameRate\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The frame rate of the inbound video data.\",\n - \ \"enum\": [\n \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ],\n \"type\": \"string\"\n },\n \"resolution\": - {\n \"type\": \"string\",\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The resolution of the inbound video data.\"\n },\n \"ingestionType\": - {\n \"type\": \"string\",\n \"description\": \" The method - or protocol used to transmit the video stream.\",\n \"annotations\": + for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n + \ },\n \"localizations\": {\n \"type\": \"object\",\n + \ \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n + \ },\n \"description\": \"Localizations for different languages\"\n + \ },\n \"brandingSettings\": {\n \"$ref\": \"ChannelBrandingSettings\",\n + \ \"description\": \"The brandingSettings object encapsulates information + about the branding of the channel.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n + \ \"default\": \"youtube#channel\",\n \"type\": \"string\"\n + \ },\n \"topicDetails\": {\n \"$ref\": \"ChannelTopicDetails\",\n + \ \"description\": \"The topicDetails object encapsulates information + about Freebase topics associated with the channel.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel.\"\n }\n },\n \"id\": + \"Channel\",\n \"type\": \"object\",\n \"description\": \"A *channel* + resource contains information about a YouTube channel.\"\n },\n \"I18nLanguageSnippet\": + {\n \"id\": \"I18nLanguageSnippet\",\n \"properties\": {\n \"hl\": + {\n \"description\": \"A short BCP-47 code that uniquely identifies + a language.\",\n \"type\": \"string\"\n },\n \"name\": + {\n \"description\": \"The human-readable name of the language in + the language itself.\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Basic details about an i18n language, such as language + code and human-readable name.\",\n \"type\": \"object\"\n },\n \"ChannelSectionContentDetails\": + {\n \"description\": \"Details about a channelsection, including playlists + and channels.\",\n \"type\": \"object\",\n \"properties\": {\n \"playlists\": + {\n \"description\": \"The playlist ids for type single_playlist + and multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": + \"array\"\n },\n \"channels\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": + \"The channel ids for type multiple_channels.\"\n }\n },\n \"id\": + \"ChannelSectionContentDetails\"\n },\n \"VideoAbuseReport\": {\n \"id\": + \"VideoAbuseReport\",\n \"type\": \"object\",\n \"properties\": + {\n \"comments\": {\n \"description\": \"Additional comments + regarding the abuse report.\",\n \"type\": \"string\"\n },\n + \ \"language\": {\n \"type\": \"string\",\n \"description\": + \"The language that the content was viewed in.\"\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the video.\"\n },\n \"reasonId\": + {\n \"description\": \"The high-level, or primary, reason that the + content is abusive. The value is an abuse report reason ID.\",\n \"type\": + \"string\"\n },\n \"secondaryReasonId\": {\n \"type\": + \"string\",\n \"description\": \"The specific, or secondary, reason + that this content is abusive (if available). The value is an abuse report + reason ID that is a valid secondary reason for the primary reason.\"\n }\n + \ }\n },\n \"CdnSettings\": {\n \"description\": \"Brief description + of the live stream cdn settings.\",\n \"id\": \"CdnSettings\",\n \"properties\": + {\n \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n + \ \"description\": \"The ingestionInfo object contains information + that YouTube provides that you need to transmit your RTMP or HTTP stream to + YouTube.\"\n },\n \"ingestionType\": {\n \"enum\": + [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n + \ \"hls\"\n ],\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"rtmp\",\n \"dash\",\n \"webrtc\",\n \"hls\"\n - \ ]\n },\n \"ingestionInfo\": {\n \"$ref\": - \"IngestionInfo\",\n \"description\": \"The ingestionInfo object - contains information that YouTube provides that you need to transmit your - RTMP or HTTP stream to YouTube.\"\n },\n \"format\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"type\": \"string\",\n \"description\": \" The method + or protocol used to transmit the video stream.\"\n },\n \"resolution\": + {\n \"description\": \"The resolution of the inbound video data.\",\n + \ \"enum\": [\n \"240p\",\n \"360p\",\n \"480p\",\n + \ \"720p\",\n \"1080p\",\n \"1440p\",\n \"2160p\",\n + \ \"variable\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"format\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n \ \"youtube.liveStreams.update\"\n ]\n },\n \ \"type\": \"string\",\n \"description\": \"The format of - the video stream that you are sending to Youtube. \"\n }\n },\n - \ \"id\": \"CdnSettings\"\n },\n \"ThumbnailDetails\": {\n \"description\": - \"Internal representation of thumbnails for a YouTube resource.\",\n \"id\": - \"ThumbnailDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"default\": {\n \"description\": \"The default image - for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"maxres\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The maximum - resolution quality image for this resource.\"\n },\n \"high\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The high - quality image for this resource.\"\n },\n \"standard\": {\n - \ \"$ref\": \"Thumbnail\",\n \"description\": \"The standard - quality image for this resource.\"\n },\n \"medium\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The medium quality image for - this resource.\"\n }\n }\n },\n \"LiveChatSuperStickerDetails\": - {\n \"properties\": {\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"tier\": {\n \"type\": - \"integer\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\",\n \"format\": - \"uint32\"\n },\n \"superStickerMetadata\": {\n \"$ref\": - \"SuperStickerMetadata\",\n \"description\": \"Information about - the Super Sticker.\"\n },\n \"amountMicros\": {\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n + the video stream that you are sending to Youtube. \"\n },\n \"frameRate\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"30fps\",\n \"60fps\",\n \"variable\"\n + \ ],\n \"description\": \"The frame rate of the inbound video + data.\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatFanFundingEventDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"amountDisplayString\": + {\n \"description\": \"A rendered string that displays the fund amount + and currency to the user.\",\n \"type\": \"string\"\n },\n + \ \"amountMicros\": {\n \"format\": \"uint64\",\n \"description\": + \"The amount of the fund.\",\n \"type\": \"string\"\n },\n \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LiveChatSuperStickerDetails\",\n \"type\": \"object\"\n - \ },\n \"LiveBroadcastListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + the fund was made.\",\n \"type\": \"string\"\n },\n \"userComment\": + {\n \"type\": \"string\",\n \"description\": \"The comment + added by the user to this fan funding event.\"\n }\n },\n \"id\": + \"LiveChatFanFundingEventDetails\"\n },\n \"SuperChatEvent\": {\n \"properties\": + {\n \"snippet\": {\n \"description\": \"The `snippet` object + contains basic details about the Super Chat event.\",\n \"$ref\": + \"SuperChatEventSnippet\"\n },\n \"kind\": {\n \"default\": + \"youtube#superChatEvent\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube assigns to uniquely identify + the Super Chat event.\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"A `__superChatEvent__` resource represents a Super + Chat purchase on a YouTube channel.\",\n \"id\": \"SuperChatEvent\",\n + \ \"type\": \"object\"\n },\n \"SubscriptionListResponse\": {\n + \ \"id\": \"SubscriptionListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"Subscription\"\n },\n \"type\": + \"array\",\n \"description\": \"A list of subscriptions that match + the request criteria.\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"prevPageToken\": + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n + \ \"default\": \"youtube#subscriptionListResponse\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"default\": \"youtube#liveBroadcastListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of broadcasts that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n - \ }\n }\n },\n \"id\": \"LiveBroadcastListResponse\"\n - \ },\n \"ActivityContentDetailsLike\": {\n \"description\": \"Information - about a resource that received a positive (like) rating.\",\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsLike\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the rated resource.\",\n \"$ref\": - \"ResourceId\"\n }\n }\n },\n \"Entity\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n },\n \"url\": - {\n \"type\": \"string\"\n },\n \"typeId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"Entity\"\n },\n \"CommentThread\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"CommentThreadSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment thread and also the top level comment.\"\n },\n \"replies\": - {\n \"$ref\": \"CommentThreadReplies\",\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\"\n },\n \"id\": {\n + page in the result set.\"\n }\n }\n },\n \"ChannelSectionSnippet\": + {\n \"description\": \"Basic details about a channel section, including + title, style and position.\",\n \"properties\": {\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The channel + section's title for multiple_playlists and multiple_channels.\"\n },\n + \ \"position\": {\n \"format\": \"uint32\",\n \"type\": + \"integer\",\n \"description\": \"The position of the channel section + in the channel.\"\n },\n \"type\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n + \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n + \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n + \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n + \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n + \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The type of the channel section.\"\n },\n \"style\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n + \ \"verticalList\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The style of the channel section.\"\n },\n + \ \"channelId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the channel that published the channel section.\",\n + \ \"type\": \"string\"\n },\n \"localized\": {\n \"description\": + \"Localized title, read-only.\",\n \"$ref\": \"ChannelSectionLocalization\"\n + \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n + \ \"description\": \"The language of the channel section's default + title and description.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ChannelSectionSnippet\"\n },\n \"VideoListResponse\": + {\n \"id\": \"VideoListResponse\",\n \"properties\": {\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": + {\n \"default\": \"youtube#videoListResponse\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Video\"\n }\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"InvideoTiming\": + {\n \"description\": \"Describes a temporal position of a visual widget + inside a video.\",\n \"properties\": {\n \"type\": {\n \"type\": + \"string\",\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"description\": \"Describes a timing type. If the + value is offsetFromStart, then the offsetMs field represents an offset from + the start of the video. If the value is offsetFromEnd, then the offsetMs field + represents an offset from the end of the video.\"\n },\n \"durationMs\": + {\n \"format\": \"uint64\",\n \"description\": \"Defines + the duration in milliseconds for which the promotion should be displayed. + If missing, the client should use the default.\",\n \"type\": \"string\"\n + \ },\n \"offsetMs\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"Defines the time at which the promotion + will appear. Depending on the value of type the value of the offsetMs field + will represent a time offset from the start or from the end of the video, + expressed in milliseconds.\"\n }\n },\n \"id\": \"InvideoTiming\",\n + \ \"type\": \"object\"\n },\n \"LiveChatModeratorSnippet\": {\n + \ \"properties\": {\n \"moderatorDetails\": {\n \"$ref\": + \"ChannelProfileDetails\",\n \"description\": \"Details about the + moderator.\"\n },\n \"liveChatId\": {\n \"description\": + \"The ID of the live chat this moderator can act on.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveChatModeratorSnippet\",\n + \ \"type\": \"object\"\n },\n \"LiveBroadcastContentDetails\": {\n + \ \"type\": \"object\",\n \"id\": \"LiveBroadcastContentDetails\",\n + \ \"properties\": {\n \"closedCaptionsType\": {\n \"enum\": + [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n + \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"enableClosedCaptions\": {\n \"type\": + \"boolean\",\n \"description\": \"This setting indicates whether + HTTP POST closed captioning is enabled for this broadcast. The ingestion URL + of the closed captions is returned through the liveStreams API. This is mutually + exclusive with using the closed_captions_type property, and is equivalent + to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n + \ \"stereoLayout\": {\n \"enum\": [\n \"stereoLayoutUnspecified\",\n + \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The 3D stereo layout of this broadcast. This defaults to mono.\",\n \"type\": + \"string\"\n },\n \"enableDvr\": {\n \"description\": + \"This setting determines whether viewers can access DVR controls while watching + the video. DVR controls enable the viewer to control the video playback experience + by pausing, rewinding, or fast forwarding content. The default value for this + property is true. *Important:* You must set the value to true and also set + the enableArchive property's value to true if you want to make playback available + immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n + \ },\n \"monitorStream\": {\n \"description\": \"The + monitorStream object contains information about the monitor stream, which + the broadcaster can use to review the event content before the broadcast stream + is shown publicly.\",\n \"$ref\": \"MonitorStreamInfo\"\n },\n + \ \"projection\": {\n \"enum\": [\n \"projectionUnspecified\",\n + \ \"rectangular\",\n \"360\",\n \"mesh\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The projection format of this broadcast. + This defaults to rectangular.\"\n },\n \"enableEmbed\": {\n + \ \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether the broadcast video can be played in an embedded player. + If you choose to archive the video (using the enableArchive property), this + setting will also apply to the archived video.\"\n },\n \"enableAutoStop\": + {\n \"description\": \"This setting indicates whether auto stop is + enabled for this broadcast. The default value for this property is false. + This setting can only be used by Events.\",\n \"type\": \"boolean\"\n + \ },\n \"enableLowLatency\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Indicates whether this broadcast has low latency + enabled.\"\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time that the live + stream referenced by boundStreamId was last updated.\",\n \"type\": + \"string\"\n },\n \"latencyPreference\": {\n \"enumDescriptions\": + [\n \"\",\n \"Best for: highest quality viewer playbacks + and higher resolutions.\",\n \"Best for: near real-time interaction, + with minimal playback buffering.\",\n \"Best for: real-time interaction + Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n + \ \"description\": \"If both this and enable_low_latency are set, + they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW + should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency + omitted.\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n + \ \"normal\",\n \"low\",\n \"ultraLow\"\n + \ ],\n \"type\": \"string\"\n },\n \"enableAutoStart\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether auto start is enabled for this broadcast. The default value + for this property is false. This setting can only be used by Events.\"\n },\n + \ \"recordFromStart\": {\n \"type\": \"boolean\",\n \"description\": + \"Automatically start recording after the event goes live. The default value + for this property is true. *Important:* You must also set the enableDvr property's + value to true if you want the playback to be available immediately after the + broadcast ends. If you set this property's value to true but do not also set + the enableDvr property to true, there may be a delay of around one day before + the archived video will be available for playback.\"\n },\n \"enableContentEncryption\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether YouTube should enable content encryption for the broadcast.\"\n + \ },\n \"boundStreamId\": {\n \"type\": \"string\",\n + \ \"description\": \"This value uniquely identifies the live stream + bound to the broadcast.\"\n },\n \"startWithSlate\": {\n \"description\": + \"This setting indicates whether the broadcast should automatically begin + with an in-stream slate when you update the broadcast's status to live. After + updating the status, you then need to send a liveCuepoints.insert request + that sets the cuepoint's eventState to end to remove the in-stream slate and + make your broadcast stream visible to viewers.\",\n \"type\": \"boolean\"\n + \ },\n \"mesh\": {\n \"format\": \"byte\",\n \"type\": + \"string\",\n \"description\": \"The mesh for projecting the video + if projection is mesh. The mesh value must be a UTF-8 string containing the + base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC specification + for an mshp box, excluding the box size and type but including the following + four reserved zero bytes for the version and flags.\"\n }\n },\n + \ \"description\": \"Detailed settings of a broadcast.\"\n },\n \"PlaylistItem\": + {\n \"type\": \"object\",\n \"description\": \"A *playlistItem* + resource identifies another resource, such as a video, that is included in + a playlist. In addition, the playlistItem resource contains details about + the included resource that pertain specifically to how that resource is used + in that playlist. YouTube uses playlists to identify special collections of + videos for a channel, such as: - uploaded videos - favorite videos - positively + rated (liked) videos - watch history - watch later To be more specific, these + lists are associated with a channel, which is a collection of a person, group, + or company's videos, playlists, and other YouTube information. You can retrieve + the playlist IDs for each of these lists from the channel resource for a given + channel. You can then use the playlistItems.list method to retrieve any of + those lists. You can also add or remove items from those lists by calling + the playlistItems.insert and playlistItems.delete methods. For example, if + a user gives a positive rating to a video, you would insert that video into + the liked videos playlist for that user's channel.\",\n \"id\": \"PlaylistItem\",\n + \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \ \"description\": \"The ID that YouTube uses to uniquely identify - the comment thread.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"default\": \"youtube#commentThread\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"CommentThread\",\n \"description\": \"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.\"\n },\n \"ContentRating\": {\n \"properties\": - {\n \"resorteviolenciaRating\": {\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Venezuela.\",\n \"type\": \"string\"\n },\n \"mtrcbRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from the Movie and Television Review and Classification Board (Philippines).\",\n - \ \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n - \ \"X\",\n \"\"\n ]\n },\n \"cccRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Todo - espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n - \ \"14+\",\n \"18+\",\n \"18+ - contenido - excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n - \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ]\n },\n - \ \"anatelRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\",\n \"enum\": [\n \"anatelUnspecified\",\n + the playlist item.\"\n },\n \"contentDetails\": {\n \"description\": + \"The contentDetails object is included in the resource if the included item + is a YouTube video. The object contains additional information about the video.\",\n + \ \"$ref\": \"PlaylistItemContentDetails\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#playlistItem\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlistItem\\\".\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n + \ \"description\": \"The status object contains information about + the playlist item's privacy status.\"\n },\n \"snippet\": {\n + \ \"$ref\": \"PlaylistItemSnippet\",\n \"description\": \"The + snippet object contains basic details about the playlist item, such as its + title and position in the playlist.\"\n }\n }\n },\n \"LiveChatMessage\": + {\n \"id\": \"LiveChatMessage\",\n \"description\": \"A *liveChatMessage* + resource represents a chat message in a YouTube Live Chat.\",\n \"properties\": + {\n \"authorDetails\": {\n \"description\": \"The authorDetails + object contains basic details about the user that posted this message.\",\n + \ \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube assigns to uniquely identify the message.\"\n },\n \"kind\": + {\n \"default\": \"youtube#liveChatMessage\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": + \"LiveChatMessageSnippet\",\n \"description\": \"The snippet object + contains basic details about the message.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"type\": \"object\"\n },\n \"I18nRegionListResponse\": + {\n \"id\": \"I18nRegionListResponse\",\n \"properties\": {\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#i18nRegionListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"items\": {\n \"items\": {\n + \ \"$ref\": \"I18nRegion\"\n },\n \"description\": + \"A list of regions where YouTube is available. In this map, the i18n region + ID is the map key, and its value is the corresponding i18nRegion resource.\",\n + \ \"type\": \"array\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"ChannelBannerResource\": + {\n \"description\": \"A channel banner returned as the response to a + channel_banner.insert call.\",\n \"type\": \"object\",\n \"properties\": + {\n \"url\": {\n \"type\": \"string\",\n \"description\": + \"The URL of this banner image.\"\n },\n \"kind\": {\n \"default\": + \"youtube#channelBannerResource\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\"\n }\n },\n \"id\": \"ChannelBannerResource\"\n + \ },\n \"AbuseType\": {\n \"type\": \"object\",\n \"id\": \"AbuseType\",\n + \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n + \ }\n }\n },\n \"I18nLanguage\": {\n \"id\": \"I18nLanguage\",\n + \ \"properties\": {\n \"id\": {\n \"description\": \"The + ID that YouTube uses to uniquely identify the i18n language.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": + {\n \"default\": \"youtube#i18nLanguage\",\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#i18nLanguage\\\".\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the i18n language, such as language code and human-readable name.\",\n + \ \"$ref\": \"I18nLanguageSnippet\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"An *i18nLanguage* resource identifies + a UI language currently supported by YouTube.\"\n },\n \"VideoLocalization\": + {\n \"id\": \"VideoLocalization\",\n \"description\": \"Localized + versions of certain video properties (e.g. title).\",\n \"properties\": + {\n \"description\": {\n \"description\": \"Localized version + of the video's description.\",\n \"type\": \"string\"\n },\n + \ \"title\": {\n \"type\": \"string\",\n \"description\": + \"Localized version of the video's title.\"\n }\n },\n \"type\": + \"object\"\n },\n \"ActivityContentDetailsPlaylistItem\": {\n \"type\": + \"object\",\n \"description\": \"Information about a new playlist item.\",\n + \ \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"properties\": + {\n \"playlistId\": {\n \"description\": \"The value that + YouTube uses to uniquely identify the playlist.\",\n \"type\": \"string\"\n + \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information about + the resource that was added to the playlist.\"\n },\n \"playlistItemId\": + {\n \"description\": \"ID of the item within the playlist.\",\n \"type\": + \"string\"\n }\n }\n },\n \"ChannelSectionLocalization\": + {\n \"description\": \"ChannelSection localization setting\",\n \"properties\": + {\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The localized strings for channel section's title.\"\n }\n },\n + \ \"id\": \"ChannelSectionLocalization\",\n \"type\": \"object\"\n + \ },\n \"ChannelTopicDetails\": {\n \"id\": \"ChannelTopicDetails\",\n + \ \"description\": \"Freebase topic information related to the channel.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"topicIds\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"A list of Freebase topic IDs associated with + the channel. You can retrieve information about each topic using the Freebase + Topic API.\",\n \"type\": \"array\"\n },\n \"topicCategories\": + {\n \"description\": \"A list of Wikipedia URLs that describe the + channel's content.\",\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n }\n }\n }\n },\n + \ \"PlaylistStatus\": {\n \"properties\": {\n \"privacyStatus\": + {\n \"type\": \"string\",\n \"description\": \"The playlist's + privacy status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ]\n }\n + \ },\n \"id\": \"PlaylistStatus\",\n \"type\": \"object\"\n + \ },\n \"Video\": {\n \"id\": \"Video\",\n \"description\": + \"A *video* resource represents a YouTube video.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"id\": {\n \"annotations\": {\n + \ \"required\": [\n \"youtube.videos.update\"\n ]\n + \ },\n \"description\": \"The ID that YouTube uses to uniquely + identify the video.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#video\\\".\",\n \"default\": + \"youtube#video\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"VideoSnippet\",\n \"description\": \"The + snippet object contains basic details about the video, such as its title, + description, and category.\"\n },\n \"projectDetails\": {\n + \ \"$ref\": \"VideoProjectDetails\",\n \"description\": \"The + projectDetails object contains information about the project specific video + metadata. b/157517979: This part was never populated after it was added. However, + it sees non-zero traffic because there is generated client code in the wild + that refers to it [1]. We keep this field and do NOT remove it because otherwise + V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n + \ },\n \"ageGating\": {\n \"description\": \"Age restriction + details related to a video. This data can only be retrieved by the video owner.\",\n + \ \"$ref\": \"VideoAgeGating\"\n },\n \"fileDetails\": + {\n \"$ref\": \"VideoFileDetails\",\n \"description\": \"The + fileDetails object encapsulates information about the video file that was + uploaded to YouTube, including the file's resolution, duration, audio and + video codecs, stream bitrates, and more. This data can only be retrieved by + the video owner.\"\n },\n \"statistics\": {\n \"$ref\": + \"VideoStatistics\",\n \"description\": \"The statistics object contains + statistics about the video.\"\n },\n \"liveStreamingDetails\": + {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": + \"The liveStreamingDetails object contains metadata about a live video broadcast. + The object will only be present in a video resource if the video is an upcoming, + live, or completed live broadcast.\"\n },\n \"localizations\": + {\n \"type\": \"object\",\n \"additionalProperties\": {\n + \ \"$ref\": \"VideoLocalization\"\n },\n \"description\": + \"The localizations object contains localized versions of the basic details + about the video, such as its title and description.\"\n },\n \"contentDetails\": + {\n \"description\": \"The contentDetails object contains information + about the video content, including the length of the video and its aspect + ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"recordingDetails\": + {\n \"$ref\": \"VideoRecordingDetails\",\n \"description\": + \"The recordingDetails object encapsulates information about the location, + date and address where the video was recorded.\"\n },\n \"monetizationDetails\": + {\n \"$ref\": \"VideoMonetizationDetails\",\n \"description\": + \"The monetizationDetails object encapsulates information about the monetization + status of the video.\"\n },\n \"status\": {\n \"description\": + \"The status object contains information about the video's uploading, processing, + and privacy statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n + \ \"topicDetails\": {\n \"$ref\": \"VideoTopicDetails\",\n + \ \"description\": \"The topicDetails object encapsulates information + about Freebase topics associated with the video.\"\n },\n \"player\": + {\n \"description\": \"The player object contains information that + you would use to play the video in an embedded player.\",\n \"$ref\": + \"VideoPlayer\"\n },\n \"processingDetails\": {\n \"$ref\": + \"VideoProcessingDetails\",\n \"description\": \"The processingDetails + object encapsulates information about YouTube's progress in processing the + uploaded video file. The properties in the object identify the current processing + status and an estimate of the time remaining until YouTube finishes processing + the video. This part also indicates whether different types of data or content, + such as file details or thumbnail images, are available for the video. The + processingProgress object is designed to be polled so that the video uploaded + can track the progress that YouTube has made in processing the uploaded video + file. This data can only be retrieved by the video owner.\"\n },\n + \ \"suggestions\": {\n \"description\": \"The suggestions object + encapsulates suggestions that identify opportunities to improve the video + quality or the metadata for the uploaded video. This data can only be retrieved + by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n }\n },\n \"CaptionListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"Caption\"\n },\n \"description\": \"A list of captions + that match the request criteria.\",\n \"type\": \"array\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n + \ \"default\": \"youtube#captionListResponse\",\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n }\n + \ },\n \"id\": \"CaptionListResponse\"\n },\n \"VideoAgeGating\": + {\n \"type\": \"object\",\n \"properties\": {\n \"videoGameRating\": + {\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n + \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"Video game rating, if any.\"\n },\n \"restricted\": {\n \"type\": + \"boolean\",\n \"description\": \"Age-restricted trailers. For redband + trailers and adult-rated video-games. Only users aged 18+ can view the content. + The the field is true the content is restricted to viewers aged 18+. Otherwise + The field won't be present.\"\n },\n \"alcoholContent\": {\n + \ \"type\": \"boolean\",\n \"description\": \"Indicates whether + or not the video has alcoholic beverage content. Only users of legal purchasing + age in a particular country, as identified by ICAP, can view the content.\"\n + \ }\n },\n \"id\": \"VideoAgeGating\"\n },\n \"ActivityContentDetailsRecommendation\": + {\n \"type\": \"object\",\n \"description\": \"Information that + identifies the recommended resource.\",\n \"id\": \"ActivityContentDetailsRecommendation\",\n + \ \"properties\": {\n \"reason\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"reasonUnspecified\",\n + \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n + \ ],\n \"description\": \"The reason that the resource is + recommended to the user.\"\n },\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the recommended resource.\"\n },\n \"seedResourceId\": + {\n \"$ref\": \"ResourceId\",\n \"description\": \"The seedResourceId + object contains information about the resource that caused the recommendation.\"\n + \ }\n }\n },\n \"VideoAbuseReportReasonListResponse\": {\n + \ \"id\": \"VideoAbuseReportReasonListResponse\",\n \"properties\": + {\n \"eventId\": {\n \"description\": \"Serialized EventId + of the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n + \ \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": + \"The `visitorId` identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"description\": \"A list of valid + abuse reasons that are used with `video.ReportAbuse`.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n + \ }\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatSuperChatDetails\": + {\n \"id\": \"LiveChatSuperChatDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"userComment\": {\n \"description\": + \"The comment added by the user to this Super Chat event.\",\n \"type\": + \"string\"\n },\n \"tier\": {\n \"description\": \"The + tier in which the amount belongs. Lower amounts belong to lower tiers. The + lowest tier is 1.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n },\n \"currency\": {\n \"type\": \"string\",\n + \ \"description\": \"The currency in which the purchase was made.\"\n + \ },\n \"amountMicros\": {\n \"type\": \"string\",\n + \ \"description\": \"The amount purchased by the user, in micros (1,750,000 + micros = 1.75).\",\n \"format\": \"uint64\"\n },\n \"amountDisplayString\": + {\n \"description\": \"A rendered string that displays the fund amount + and currency to the user.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"ChannelContentDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"relatedPlaylists\": {\n \"properties\": + {\n \"uploads\": {\n \"description\": \"The ID of + the playlist that contains the channel\\\"s uploaded videos. Use the videos.insert + method to upload new videos and the videos.delete method to delete previously + uploaded videos.\",\n \"type\": \"string\"\n },\n + \ \"likes\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the playlist that contains the channel\\\"s liked videos. Use + the playlistItems.insert and playlistItems.delete to add or remove items from + that list.\"\n },\n \"favorites\": {\n \"description\": + \"The ID of the playlist that contains the channel\\\"s favorite videos. Use + the playlistItems.insert and playlistItems.delete to add or remove items from + that list.\",\n \"type\": \"string\"\n },\n \"watchHistory\": + {\n \"type\": \"string\",\n \"description\": \"The + ID of the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert + and playlistItems.delete to add or remove items from that list.\"\n },\n + \ \"watchLater\": {\n \"description\": \"The ID of + the playlist that contains the channel\\\"s watch later playlist. Use the + playlistItems.insert and playlistItems.delete to add or remove items from + that list.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n }\n },\n \"id\": \"ChannelContentDetails\",\n + \ \"description\": \"Details about the content of a channel.\"\n },\n + \ \"MembershipsDetails\": {\n \"id\": \"MembershipsDetails\",\n \"type\": + \"object\",\n \"properties\": {\n \"highestAccessibleLevelDisplayName\": + {\n \"description\": \"Display name for the highest level that the + user has access to at the moment.\",\n \"type\": \"string\"\n },\n + \ \"highestAccessibleLevel\": {\n \"description\": \"Id of + the highest level that the user has access to at the moment.\",\n \"type\": + \"string\"\n },\n \"membershipsDuration\": {\n \"description\": + \"Data about memberships duration without taking into consideration pricing + levels.\",\n \"$ref\": \"MembershipsDuration\"\n },\n \"membershipsDurationAtLevels\": + {\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n + \ },\n \"description\": \"Data about memberships duration + on particular pricing levels.\",\n \"type\": \"array\"\n },\n + \ \"accessibleLevels\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"Ids of all levels that + the user has access to. This includes the currently active level and all other + levels that are included because of a higher purchase.\",\n \"type\": + \"array\"\n }\n }\n },\n \"LiveStreamStatus\": {\n \"id\": + \"LiveStreamStatus\",\n \"description\": \"Brief description of the live + stream status.\",\n \"properties\": {\n \"streamStatus\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"created\",\n \"ready\",\n + \ \"active\",\n \"inactive\",\n \"error\"\n + \ ]\n },\n \"healthStatus\": {\n \"$ref\": + \"LiveStreamHealthStatus\",\n \"description\": \"The health status + of the stream.\"\n }\n },\n \"type\": \"object\"\n },\n + \ \"VideoRecordingDetails\": {\n \"properties\": {\n \"location\": + {\n \"description\": \"The geolocation information associated with + the video.\",\n \"$ref\": \"GeoPoint\"\n },\n \"locationDescription\": + {\n \"type\": \"string\",\n \"description\": \"The text + description of the location where the video was recorded.\"\n },\n + \ \"recordingDate\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The date and time when the video + was recorded.\"\n }\n },\n \"description\": \"Recording information + associated with the video.\",\n \"type\": \"object\",\n \"id\": + \"VideoRecordingDetails\"\n },\n \"ContentRating\": {\n \"type\": + \"object\",\n \"description\": \"Ratings schemes. The country-specific + ratings are mostly for movies and shows. LINT.IfChange\",\n \"id\": \"ContentRating\",\n + \ \"properties\": {\n \"kijkwijzerRating\": {\n \"enum\": + [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n + \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n + \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n + \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating + from the Nederlands Instituut voor de Classificatie van Audiovisuele Media + (Netherlands).\",\n \"enumDescriptions\": [\n \"\",\n + \ \"AL\",\n \"6\",\n \"9\",\n \"12\",\n + \ \"16\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"tvpgRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n + \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n + \ \"\"\n ],\n \"description\": \"The video's TV + Parental Guidelines (TVPG) rating.\",\n \"enum\": [\n \"tvpgUnspecified\",\n + \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n + \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n + \ \"tvpgUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"anatelRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"F\",\n \"I\",\n \"I-7\",\n + \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n + \ \"\"\n ],\n \"description\": \"The video's Anatel + (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"anatelUnspecified\",\n \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ]\n },\n \"nkclvRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n - \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n - \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n - \ \"description\": \"The video's rating from the Nacion\xE3lais Kino - centrs (National Film Centre of Latvia).\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"agcomRating\": {\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Italy's Autorit\xE0 per - le Garanzie nelle Comunicazioni (AGCOM).\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ]\n },\n \"mdaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mdaUnspecified\",\n - \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n - \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n - \ \"mdaUnrated\"\n ],\n \"description\": \"The - video's rating from Singapore's Media Development Authority (MDA) and, specifically, - it's Board of Film Censors (BFC).\"\n },\n \"smsaRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"All ages\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Statens - medier\xE5d (Sweden's National Media Council).\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ]\n },\n \"medietilsynetRating\": - {\n \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Medietilsynet, the Norwegian Media Authority.\"\n },\n \"kmrbRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ],\n \"description\": \"The video's Korea Media Rating - Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. The KMRB - rates videos in South Korea.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 \uC774\uC0C1 - \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ]\n },\n \"fmocRating\": {\n \"enum\": - [\n \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"description\": - \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ]\n },\n \"egfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n + \ \"anatelA\",\n \"anatelUnrated\"\n ]\n },\n + \ \"cceRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"4\",\n \"6\",\n \"12\",\n \"16\",\n + \ \"18\",\n \"\",\n \"14\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The video's + rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n + \ \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n + \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n + \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n + \ ]\n },\n \"fpbRatingReasons\": {\n \"description\": + \"Reasons that explain why the video received its FPB (South Africa) rating.\",\n + \ \"items\": {\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n + \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n + \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n + \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n + \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"South Africa rating content descriptors.\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"type\": \"array\"\n },\n \"fcoRating\": {\n \"enum\": + [\n \"fcoUnspecified\",\n \"fcoI\",\n \"fcoIia\",\n + \ \"fcoIib\",\n \"fcoIi\",\n \"fcoIii\",\n + \ \"fcoUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n + \ \"II\",\n \"III\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The video's + rating from Hong Kong's Office for Film, Newspaper and Article Administration.\"\n + \ },\n \"mccaaRating\": {\n \"enum\": [\n \"mccaaUnspecified\",\n + \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n + \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n + \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG\",\n \"12A\",\n \"12\",\n \"14 + - this rating was removed from the new classification structure introduced + in 2013.\",\n \"15\",\n \"16 - this rating was removed + from the new classification structure introduced in 2013.\",\n \"18\",\n \ \"\"\n ],\n \"description\": \"The video's rating - in Egypt.\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"icaaRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales - (ICAA - Spain) rating.\",\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ]\n },\n \"cscfRating\": {\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\",\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"rtcRating\": {\n \"enum\": [\n \"rtcUnspecified\",\n - \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n - \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n - \ ],\n \"description\": \"The video's General Directorate - of Radio, Television and Cinematography (Mexico) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n - \ \"D\",\n \"\"\n ]\n },\n \"moctwRating\": - {\n \"description\": \"The video's rating from Taiwan's Ministry - of Culture (\u6587\u5316\u90E8).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P\",\n \"PG\",\n \"R\",\n - \ \"\",\n \"R-12\",\n \"R-15\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"moctwUnspecified\",\n - \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n - \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n - \ \"moctwR15\"\n ]\n },\n \"mcstRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + from Malta's Film Age-Classification Board.\",\n \"type\": \"string\"\n + \ },\n \"cccRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n + \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n + \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"description\": + \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Todo espectador\",\n + \ \"6+ - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n + \ \"18+\",\n \"18+ - contenido excesivamente violento\",\n + \ \"18+ - contenido pornogr\xE1fico\",\n \"\"\n ]\n + \ },\n \"lsfRating\": {\n \"enum\": [\n \"lsfUnspecified\",\n + \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n + \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n + \ \"lsfUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n + \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n + \ \"21\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from Indonesia's Lembaga Sensor + Film.\"\n },\n \"eefilmRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n + \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n + \ \"K-16\",\n \"\"\n ],\n \"enum\": + [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n \"eefilmL\",\n + \ \"eefilmMs6\",\n \"eefilmK6\",\n \"eefilmMs12\",\n + \ \"eefilmK12\",\n \"eefilmK14\",\n \"eefilmK16\",\n + \ \"eefilmUnrated\"\n ],\n \"description\": \"The + video's rating in Estonia.\",\n \"type\": \"string\"\n },\n + \ \"mpaaRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n + \ \"NC-17\",\n \"! X\",\n \"\"\n ],\n + \ \"description\": \"The video's Motion Picture Association of America + (MPAA) rating.\",\n \"type\": \"string\",\n \"enum\": [\n + \ \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n + \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n + \ \"mpaaX\",\n \"mpaaUnrated\"\n ]\n },\n + \ \"mcstRating\": {\n \"enumDescriptions\": [\n \"\",\n \ \"P\",\n \"0\",\n \"C13\",\n \"C16\",\n \ \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n \"\"\n \ ],\n \"description\": \"The video's rating system for Vietnam - MCST\",\n \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ]\n },\n \"ytRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"ytUnspecified\",\n - \ \"ytAgeRestricted\"\n ],\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\"\n },\n - \ \"tvpgRating\": {\n \"description\": \"The video's TV Parental - Guidelines (TVPG) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"mccaaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Malta's Film Age-Classification - Board.\"\n },\n \"cbfcRating\": {\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ],\n \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n - \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n - \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n - \ \"cbfcUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"bmukkRating\": {\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Austrian - Board of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst - und Kultur).\",\n \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ]\n - \ },\n \"kfcbRating\": {\n \"description\": \"The video's - rating from the Kenya Film Classification Board.\",\n \"enum\": [\n - \ \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n + \ \"mcstUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"medietilsynetRating\": {\n \"enum\": [\n \"medietilsynetUnspecified\",\n + \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n + \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n + \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from Medietilsynet, the Norwegian Media Authority.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"\"\n + \ ]\n },\n \"bfvcRating\": {\n \"description\": + \"The video's rating from Thailand's Board of Film and Video Censors.\",\n + \ \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n + \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n + \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n + \ \"bfvcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n + \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"fskRating\": {\n \"enum\": [\n \"fskUnspecified\",\n + \ \"fsk0\",\n \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n + \ \"fsk18\",\n \"fskUnrated\"\n ],\n \"description\": + \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) + rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK + 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n + \ ]\n },\n \"smsaRating\": {\n \"enum\": [\n + \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n + \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n + \ \"enumDescriptions\": [\n \"\",\n \"All ages\",\n + \ \"7\",\n \"11\",\n \"15\",\n \"\"\n + \ ]\n },\n \"kmrbRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 + \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n + \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n + \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n + \ \"kmrbUnrated\"\n ],\n \"description\": \"The + video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) + rating. The KMRB rates videos in South Korea.\"\n },\n \"chfilmRating\": + {\n \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n + \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n + \ \"chfilm18\",\n \"chfilmUnrated\"\n ],\n \"description\": + \"The video's rating in Switzerland.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"0\",\n + \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ]\n },\n \"nbcplRating\": {\n \"description\": + \"The video's rating in Poland.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n + \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n + \ \"nbcplUnrated\"\n ]\n },\n \"eirinRating\": + {\n \"description\": \"The video's Eirin (\u6620\u502B) rating. Eirin + is the Japanese rating system.\",\n \"type\": \"string\",\n \"enum\": + [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n + \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n + \ ]\n },\n \"pefilmRating\": {\n \"enum\": + [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n + \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"fskRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"FSK 0\",\n \"FSK 6\",\n \"FSK 12\",\n - \ \"FSK 16\",\n \"FSK 18\",\n \"\"\n ],\n - \ \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"description\": \"The - video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.\"\n - \ },\n \"djctqRatingReasons\": {\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Brazil - rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia - (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n - \ \"Conte\xFAdo sexual (Sexual content)\",\n \"Nudez - (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo Expl\xEDcito - (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ]\n },\n \"type\": \"array\",\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\"\n - \ },\n \"cicfRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n - \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n - \ ]\n },\n \"csaRating\": {\n \"description\": - \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, - which rates broadcast content.\",\n \"type\": \"string\",\n \"enum\": - [\n \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n - \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n - \ \"csaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ]\n },\n \"fcbmRating\": {\n \"enum\": - [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"description\": \"The - video's rating from Malaysia's Film Censorship Board.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n + \ \"18\",\n \"\"\n ],\n \"description\": + \"The video's rating in Peru.\"\n },\n \"mdaRating\": {\n \"description\": + \"The video's rating from Singapore's Media Development Authority (MDA) and, + specifically, it's Board of Film Censors (BFC).\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n + \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n + \ ],\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n + \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n + \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"fmocRating\": + {\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n + \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n + \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"E\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"This property has been deprecated. Use the contentDetails.contentRating.cncRating + instead.\"\n },\n \"menaMpaaRating\": {\n \"enum\": + [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n + \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"R\",\n \"To keep the same enum values as MPAA's items + have, skip NC_17.\"\n ],\n \"description\": \"The rating + system for MENA countries, a clone of MPAA. It is needed to prevent titles + go live w/o additional QC check, since some of them can be inappropriate for + the countries at all. See b/33408548 for more details.\"\n },\n \"grfilmRating\": + {\n \"description\": \"The video's rating in Greece.\",\n \"enum\": + [\n \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n + \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n + \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"K\",\n + \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n + \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"czfilmRating\": {\n + \ \"description\": \"The video's rating in the Czech Republic.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"U\",\n \"12\",\n \"14\",\n \"18\",\n + \ \"\"\n ],\n \"enum\": [\n \"czfilmUnspecified\",\n + \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n + \ \"czfilm18\",\n \"czfilmUnrated\"\n ]\n },\n + \ \"rcnofRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee + of the National Office of Film.\",\n \"type\": \"string\",\n \"enum\": + [\n \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n + \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n + \ \"rcnofVi\",\n \"rcnofUnrated\"\n ]\n },\n + \ \"ilfilmRating\": {\n \"description\": \"The video's rating + in Israel.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n + \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n + \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n + \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ]\n },\n + \ \"nmcRating\": {\n \"type\": \"string\",\n \"description\": + \"The National Media Council ratings system for United Arab Emirates.\",\n + \ \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n + \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n + \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n + \ \"nmcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n + \ \"\"\n ]\n },\n \"cnaRating\": {\n \"description\": + \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI + (CNA).\",\n \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n + \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n + \ \"cnaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"18+\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"resorteviolenciaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The video's rating in Venezuela.\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n + \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n + \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n + \ ]\n },\n \"nbcRating\": {\n \"description\": + \"The video's rating from the Maldives National Bureau of Classification.\",\n + \ \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n + \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n + \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n + \ \"nbcUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n + \ \"18+R\",\n \"PU\",\n \"\"\n ]\n + \ },\n \"bbfcRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's British Board of Film Classification (BBFC) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n + \ \"\"\n ],\n \"enum\": [\n \"bbfcUnspecified\",\n + \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n + \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n + \ \"bbfcR18\",\n \"bbfcUnrated\"\n ]\n },\n + \ \"fcbmRating\": {\n \"description\": \"The video's rating + from Malaysia's Film Censorship Board.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"U\",\n \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ]\n },\n \"nbcplRating\": {\n \"enum\": [\n - \ \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"description\": \"The - video's rating in Poland.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"chvrsRating\": {\n \"description\": \"The video's Canadian - Home Video Rating System (CHVRS) rating.\",\n \"enum\": [\n \"chvrsUnspecified\",\n - \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n - \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n - \ \"chvrsUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ]\n },\n \"djctqRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ],\n \"enumDescriptions\": + \ ],\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n + \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n + \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n + \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ]\n },\n + \ \"smaisRating\": {\n \"description\": \"The video's rating + in Iceland.\",\n \"type\": \"string\",\n \"enum\": [\n \"smaisUnspecified\",\n + \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n + \ \"smais14\",\n \"smais16\",\n \"smais18\",\n + \ \"smaisUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n + \ \"14\",\n \"16\",\n \"18\",\n \"\"\n + \ ]\n },\n \"djctqRatingReasons\": {\n \"description\": + \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n + \ \"items\": {\n \"type\": \"string\",\n \"enum\": + [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n + \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n + \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n + \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n + \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n + \ \"djctqImpactingContent\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Brazil rating content descriptors. + See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia + extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual + content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n + \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas + (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas + Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate + language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo + Impactante (Impacting content)\"\n ]\n },\n \"type\": + \"array\"\n },\n \"mekuRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"S\",\n + \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual + Institute).\",\n \"enum\": [\n \"mekuUnspecified\",\n + \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n + \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n + \ ]\n },\n \"ytRating\": {\n \"enum\": [\n + \ \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n + \ \"description\": \"A rating that YouTube uses to identify age-restricted + content.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ]\n },\n \"djctqRating\": + {\n \"description\": \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, + Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"type\": + \"string\",\n \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n + \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n + \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n + \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n + \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n + \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n + \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n + \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n + \ \"djctqUnrated\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n \ \"14\",\n \"16\",\n \"18\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's Departamento de Justi\xE7a, - Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\"\n - \ },\n \"ifcoRating\": {\n \"enum\": [\n \"ifcoUnspecified\",\n + \ ]\n },\n \"cncRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n + \ \"\"\n ],\n \"enum\": [\n \"cncUnspecified\",\n + \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n + \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n + \ \"cncUnrated\"\n ],\n \"description\": \"Rating + system in France - Commission de classification cinematographique\",\n \"type\": + \"string\"\n },\n \"oflcRating\": {\n \"description\": + \"The video's Office of Film and Literature Classification (OFLC - New Zealand) + rating.\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n + \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n + \ \"RP16\",\n \"RP18\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n + \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n + \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n + \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n + \ \"oflcRp18\"\n ]\n },\n \"cicfRating\": + {\n \"type\": \"string\",\n \"description\": \"The video's + rating from the Commission de Contr\xF4le des Films (Belgium).\",\n \"enum\": + [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n + \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n + \ \"\"\n ]\n },\n \"agcomRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n + \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n + \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"ifcoRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"ifcoUnspecified\",\n \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n \ ],\n \"description\": \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See the IFCO website for more information.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"15A\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"lsfRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"enum\": [\n - \ \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"description\": \"The video's rating from Indonesia's - Lembaga Sensor Film.\",\n \"type\": \"string\"\n },\n \"bbfcRating\": - {\n \"description\": \"The video's British Board of Film Classification - (BBFC) rating.\",\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ]\n - \ },\n \"rteRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"russiaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's National - Film Registry of the Russian Federation (MKRF - Russia) rating.\"\n },\n - \ \"nmcRating\": {\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The National Media Council ratings - system for United Arab Emirates.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"PG-15\",\n - \ \"15+\",\n \"18+\",\n \"18TC\",\n \"\"\n - \ ]\n },\n \"mekuRating\": {\n \"description\": - \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti - (National Audiovisual Institute).\",\n \"enumDescriptions\": [\n - \ \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ]\n },\n \"catvRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n + \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n + \ ]\n },\n \"catvRating\": {\n \"description\": + \"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.\",\n \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ],\n \"description\": \"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.\"\n - \ },\n \"nfrcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ]\n },\n \"bfvcRating\": {\n \"description\": - \"The video's rating from Thailand's Board of Film and Video Censors.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ]\n },\n \"acbRating\": {\n \"enum\": - [\n \"acbUnspecified\",\n \"acbE\",\n \"acbP\",\n - \ \"acbC\",\n \"acbG\",\n \"acbPg\",\n \"acbM\",\n - \ \"acbMa15plus\",\n \"acbR18plus\",\n \"acbUnrated\"\n - \ ],\n \"description\": \"The video's Australian Classification + \ ],\n \"enumDescriptions\": [\n \"\",\n \"C\",\n + \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n + \ \"18+\",\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"acbRating\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"Programs that have been given a P classification - by the Australian Communications and Media Authority. These programs are intended - for preschool children.\",\n \"Programs that have been given a - C classification by the Australian Communications and Media Authority. These - programs are intended for children (other than preschool children) who are - younger than 14 years of age.\",\n \"G\",\n \"PG\",\n + \ \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n + \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n + \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n + \ \"acbUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"Programs that have + been given a P classification by the Australian Communications and Media Authority. + These programs are intended for preschool children.\",\n \"Programs + that have been given a C classification by the Australian Communications and + Media Authority. These programs are intended for children (other than preschool + children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ]\n },\n \"mpaaRating\": {\n \"enum\": [\n - \ \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"incaaRating\": - {\n \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n - \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n - \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"type\": + \ ]\n },\n \"mibacRating\": {\n \"enum\": [\n + \ \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n + \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n + \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Ministero + dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"cscfRating\": {\n \"enum\": [\n \"cscfUnspecified\",\n + \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n + \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n + \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n + \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from Luxembourg's Commission de surveillance de la classification des films + (CSCF).\",\n \"type\": \"string\"\n },\n \"ecbmctRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"ecbmctUnspecified\",\n + \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n + \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n + \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n + \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n + \ ],\n \"description\": \"Rating system in Turkey - Evaluation + and Classification Board of the Ministry of Culture and Tourism\"\n },\n + \ \"rtcRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"AA\",\n \"A\",\n \"B\",\n \"B15\",\n + \ \"C\",\n \"D\",\n \"\"\n ],\n \"description\": + \"The video's General Directorate of Radio, Television and Cinematography + (Mexico) rating.\",\n \"type\": \"string\",\n \"enum\": + [\n \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n + \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n + \ \"rtcUnrated\"\n ]\n },\n \"cbfcRating\": + {\n \"type\": \"string\",\n \"description\": \"The video's + Central Board of Film Certification (CBFC - India) rating.\",\n \"enum\": + [\n \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n + \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n + \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n + \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n + \ ]\n },\n \"chvrsRating\": {\n \"enum\": [\n + \ \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n + \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n + \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n + \ \"E\",\n \"\"\n ],\n \"description\": + \"The video's Canadian Home Video Rating System (CHVRS) rating.\"\n },\n + \ \"incaaRating\": {\n \"enum\": [\n \"incaaUnspecified\",\n + \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n + \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n + \ ],\n \"description\": \"The video's INCAA (Instituto Nacional + de Cine y Artes Audiovisuales - Argentina) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"description\": \"The video's INCAA - (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.\"\n - \ },\n \"mccypRating\": {\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"type\": \"string\"\n - \ },\n \"cceRating\": {\n \"description\": \"The video's - rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n - \ \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ]\n },\n \"smaisRating\": {\n \"enum\": [\n - \ \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n - \ \"smais12\",\n \"smais14\",\n \"smais16\",\n - \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\",\n - \ \"type\": \"string\"\n },\n \"mibacRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Ministero dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ]\n },\n - \ \"nbcRating\": {\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Maldives - National Bureau of Classification.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ]\n },\n \"oflcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"oflcUnspecified\",\n - \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n - \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n - \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n - \ \"oflcRp16\",\n \"oflcRp18\"\n ],\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\"\n },\n \"pefilmRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"PT\",\n - \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Peru.\",\n - \ \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n - \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n - \ \"pefilmUnrated\"\n ]\n },\n \"mpaatRating\": - {\n \"type\": \"string\",\n \"description\": \"The rating - system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ]\n },\n - \ \"catvfrRating\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"enum\": - [\n \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n - \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n - \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ]\n },\n \"chfilmRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n - \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n - \ \"chfilm18\",\n \"chfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Switzerland.\"\n },\n - \ \"fcoRating\": {\n \"description\": \"The video's rating - from Hong Kong's Office for Film, Newspaper and Article Administration.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"fcoUnspecified\",\n - \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n - \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"I\",\n - \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n - \ \"\"\n ]\n },\n \"ilfilmRating\": {\n \"description\": - \"The video's rating in Israel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ]\n },\n - \ \"czfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"12\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"czfilmUnspecified\",\n \"czfilmU\",\n \"czfilm12\",\n - \ \"czfilm14\",\n \"czfilm18\",\n \"czfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in the Czech - Republic.\"\n },\n \"menaMpaaRating\": {\n \"enum\": - [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n - \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n - \ ],\n \"description\": \"The rating system for MENA countries, - a clone of MPAA. It is needed to prevent titles go live w/o additional QC - check, since some of them can be inappropriate for the countries at all. See - b/33408548 for more details.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ],\n \"type\": \"string\"\n },\n \"grfilmRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Greece.\"\n },\n - \ \"cnaRating\": {\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"description\": - \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\",\n \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"eirinRating\": {\n \"description\": \"The video's Eirin - (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n \"enum\": - [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"kijkwijzerRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ],\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ]\n },\n \"fpbRatingReasons\": {\n \"items\": - {\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"type\": - \"array\",\n \"description\": \"Reasons that explain why the video - received its FPB (South Africa) rating.\"\n },\n \"mocRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"mocUnspecified\",\n - \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n - \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"description\": \"The - video's Ministerio de Cultura (Colombia) rating.\",\n \"enumDescriptions\": + \ \"\"\n ]\n },\n \"csaRating\": {\n \"enum\": + [\n \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n + \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n + \ \"csaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"Interdiction\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, + which rates broadcast content.\"\n },\n \"mocRating\": {\n \"description\": + \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"type\": + \"string\",\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n + \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n + \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n + \ \"mocUnrated\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ]\n },\n \"nfvcbRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"18\",\n \"RE\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Nigeria's - National Film and Video Censors Board.\",\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ]\n },\n - \ \"ecbmctRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"7A\",\n \"7+\",\n \"13A\",\n - \ \"13+\",\n \"15A\",\n \"15+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"Rating system - in Turkey - Evaluation and Classification Board of the Ministry of Culture - and Tourism\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"eefilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Estonia.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ]\n },\n \"fpbRating\": {\n \"enum\": [\n - \ \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n - \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n - \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + \ \"Banned\",\n \"\"\n ]\n },\n \"moctwRating\": + {\n \"type\": \"string\",\n \"description\": \"The video's + rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n \"enum\": + [\n \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n + \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n + \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n + \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n + \ ]\n },\n \"fpbRating\": {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\"\n },\n \"rcnofRating\": {\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\",\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"skfilmRating\": - {\n \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n - \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n - \ \"skfilmUnrated\"\n ],\n \"description\": \"The - video's rating in Slovakia.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P2\",\n \"P5\",\n \"P8\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"cncRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"description\": \"Rating - system in France - Commission de classification cinematographique\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Ratings schemes. - The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n - \ \"id\": \"ContentRating\"\n },\n \"LiveBroadcastContentDetails\": - {\n \"id\": \"LiveBroadcastContentDetails\",\n \"properties\": {\n - \ \"projection\": {\n \"type\": \"string\",\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from South Africa's Film and Publication Board.\",\n + \ \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n + \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n + \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n + \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n + \ ]\n },\n \"icaaRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n + \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n + \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n + \ \"icaaUnrated\"\n ],\n \"description\": \"The + video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA + - Spain) rating.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"APTA\",\n \"7\",\n \"12\",\n \"13\",\n + \ \"16\",\n \"18\",\n \"X\",\n \"\"\n + \ ]\n },\n \"mpaatRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n + \ \"RB\"\n ],\n \"enum\": [\n \"mpaatUnspecified\",\n + \ \"mpaatGb\",\n \"mpaatRb\"\n ],\n \"description\": + \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n + \ },\n \"egfilmRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"GN\",\n + \ \"18\",\n \"BN\",\n \"\"\n ],\n + \ \"description\": \"The video's rating in Egypt.\",\n \"enum\": + [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n \"egfilm18\",\n + \ \"egfilmBn\",\n \"egfilmUnrated\"\n ]\n },\n + \ \"nfrcRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n + \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from the Bulgarian National Film Center.\"\n },\n \"russiaRating\": + {\n \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n + \ \"russia6\",\n \"russia12\",\n \"russia16\",\n + \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n + \ \"16+\",\n \"18+\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The video's + National Film Registry of the Russian Federation (MKRF - Russia) rating.\"\n + \ },\n \"rteRating\": {\n \"enum\": [\n \"rteUnspecified\",\n + \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n + \ \"rteUnrated\"\n ],\n \"description\": \"The + video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": + [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n + \ \"MA\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"mccypRating\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from the Danish Film Institute's + (Det Danske Filminstitut) Media Council for Children and Young People.\",\n + \ \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n + \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n + \ \"mccypUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ]\n },\n \"nkclvRating\": + {\n \"description\": \"The video's rating from the Nacion\xE3lais + Kino centrs (National Film Centre of Latvia).\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n + \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"nkclvUnspecified\",\n + \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n + \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n + \ ]\n },\n \"mtrcbRating\": {\n \"enum\": [\n + \ \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n + \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n + \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"description\": + \"The video's rating from the Movie and Television Review and Classification + Board (Philippines).\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"R-13\",\n \"R-16\",\n + \ \"R-18\",\n \"X\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"skfilmRating\": {\n + \ \"type\": \"string\",\n \"enum\": [\n \"skfilmUnspecified\",\n + \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n + \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"description\": + \"The video's rating in Slovakia.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"G\",\n \"P2\",\n \"P5\",\n + \ \"P8\",\n \"\"\n ]\n },\n \"catvfrRating\": + {\n \"description\": \"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.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"projectionUnspecified\",\n \"rectangular\",\n \"360\",\n - \ \"mesh\"\n ]\n },\n \"boundStreamId\": - {\n \"type\": \"string\",\n \"description\": \"This value - uniquely identifies the live stream bound to the broadcast.\"\n },\n - \ \"latencyPreference\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Best for: highest quality viewer playbacks - and higher resolutions.\",\n \"Best for: near real-time interaction, - with minimal playback buffering.\",\n \"Best for: real-time interaction - Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n - \ \"enum\": [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\"\n },\n - \ \"enableAutoStart\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether auto start is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\"\n },\n \"enableAutoStop\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - auto stop is enabled for this broadcast. The default value for this property - is false. This setting can only be used by Events.\"\n },\n \"recordFromStart\": - {\n \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\",\n \"type\": \"boolean\"\n },\n \"enableClosedCaptions\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether HTTP POST closed captioning is enabled for this broadcast. - The ingestion URL of the closed captions is returned through the liveStreams - API. This is mutually exclusive with using the closed_captions_type property, - and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n - \ },\n \"enableEmbed\": {\n \"description\": \"This - setting indicates whether the broadcast video can be played in an embedded - player. If you choose to archive the video (using the enableArchive property), - this setting will also apply to the archived video.\",\n \"type\": - \"boolean\"\n },\n \"closedCaptionsType\": {\n \"enum\": - [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"enableContentEncryption\": {\n \"description\": - \"This setting indicates whether YouTube should enable content encryption - for the broadcast.\",\n \"type\": \"boolean\"\n },\n \"enableDvr\": - {\n \"description\": \"This setting determines whether viewers can - access DVR controls while watching the video. DVR controls enable the viewer - to control the video playback experience by pausing, rewinding, or fast forwarding - content. The default value for this property is true. *Important:* You must - set the value to true and also set the enableArchive property's value to true - if you want to make playback available immediately after the broadcast ends.\",\n - \ \"type\": \"boolean\"\n },\n \"startWithSlate\": {\n - \ \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"description\": - \"The date and time that the live stream referenced by boundStreamId was last - updated.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"enableLowLatency\": {\n \"description\": \"Indicates - whether this broadcast has low latency enabled.\",\n \"type\": \"boolean\"\n - \ },\n \"mesh\": {\n \"description\": \"The mesh for - projecting the video if projection is mesh. The mesh value must be a UTF-8 - string containing the base-64 encoding of 3D mesh data that follows the Spherical - Video V2 RFC specification for an mshp box, excluding the box size and type - but including the following four reserved zero bytes for the version and flags.\",\n - \ \"format\": \"byte\",\n \"type\": \"string\"\n },\n - \ \"monitorStream\": {\n \"$ref\": \"MonitorStreamInfo\",\n - \ \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\"\n },\n \"stereoLayout\": - {\n \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n - \ \"leftRight\",\n \"topBottom\"\n ],\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"type\": - \"object\",\n \"description\": \"Detailed settings of a broadcast.\"\n - \ },\n \"VideoListResponse\": {\n \"type\": \"object\",\n \"id\": - \"VideoListResponse\",\n \"properties\": {\n \"eventId\": {\n - \ \"type\": \"string\",\n \"description\": \"Serialized EventId - of the request which produced this response.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n \"default\": - \"youtube#videoListResponse\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Video\"\n },\n \"type\": \"array\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ }\n }\n },\n \"LiveChatMessageSnippet\": {\n \"id\": - \"LiveChatMessageSnippet\",\n \"description\": \"Next ID: 33\",\n \"properties\": - {\n \"superChatDetails\": {\n \"description\": \"Details about - the Super Chat event, this is only set if the type is 'superChatEvent'.\",\n - \ \"$ref\": \"LiveChatSuperChatDetails\"\n },\n \"liveChatId\": - {\n \"type\": \"string\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"hasDisplayContent\": + \ \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n + \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n + \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"type\": + \"string\"\n },\n \"bmukkRating\": {\n \"description\": + \"The video's rating from the Austrian Board of Media Classification (Bundesministerium + f\xFCr Unterricht, Kunst und Kultur).\",\n \"enumDescriptions\": + [\n \"\",\n \"Unrestricted\",\n \"6+\",\n + \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n + \ \"16+\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n + \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n + \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n + \ \"bmukkUnrated\"\n ]\n },\n \"kfcbRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n + \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Kenya Film Classification Board.\",\n \"enum\": + [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n + \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n + \ ]\n },\n \"nfvcbRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n + \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n \"nfvcbPg\",\n + \ \"nfvcb12\",\n \"nfvcb12a\",\n \"nfvcb15\",\n + \ \"nfvcb18\",\n \"nfvcbRe\",\n \"nfvcbUnrated\"\n + \ ],\n \"description\": \"The video's rating from Nigeria's + National Film and Video Censors Board.\"\n }\n }\n },\n \"LiveChatSuperStickerDetails\": + {\n \"id\": \"LiveChatSuperStickerDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"tier\": {\n \"type\": \"integer\",\n + \ \"description\": \"The tier in which the amount belongs. Lower amounts + belong to lower tiers. The lowest tier is 1.\",\n \"format\": \"uint32\"\n + \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n + \ \"description\": \"A rendered string that displays the fund amount + and currency to the user.\"\n },\n \"superStickerMetadata\": + {\n \"description\": \"Information about the Super Sticker.\",\n + \ \"$ref\": \"SuperStickerMetadata\"\n },\n \"currency\": + {\n \"type\": \"string\",\n \"description\": \"The currency + in which the purchase was made.\"\n },\n \"amountMicros\": {\n + \ \"description\": \"The amount purchased by the user, in micros (1,750,000 + micros = 1.75).\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n }\n }\n },\n \"I18nLanguageListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"items\": + {\n \"description\": \"A list of supported i18n languages. In this + map, the i18n language ID is the map key, and its value is the corresponding + i18nLanguage resource.\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n + \ },\n \"type\": \"array\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#i18nLanguageListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"I18nLanguageListResponse\"\n + \ },\n \"LanguageTag\": {\n \"id\": \"LanguageTag\",\n \"properties\": + {\n \"value\": {\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"ChannelBrandingSettings\": {\n \"type\": + \"object\",\n \"description\": \"Branding properties of a YouTube channel.\",\n + \ \"id\": \"ChannelBrandingSettings\",\n \"properties\": {\n \"watch\": + {\n \"$ref\": \"WatchSettings\",\n \"description\": \"Branding + properties for the watch page.\"\n },\n \"channel\": {\n \"$ref\": + \"ChannelSettings\",\n \"description\": \"Branding properties for + the channel view.\"\n },\n \"hints\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"PropertyValue\"\n + \ },\n \"description\": \"Additional experimental branding + properties.\"\n },\n \"image\": {\n \"$ref\": \"ImageSettings\",\n + \ \"description\": \"Branding properties for branding images.\"\n + \ }\n }\n },\n \"IngestionInfo\": {\n \"description\": + \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n + \ \"properties\": {\n \"streamName\": {\n \"type\": \"string\",\n + \ \"description\": \"The stream name that YouTube assigns to the video + stream.\"\n },\n \"backupIngestionAddress\": {\n \"description\": + \"The backup ingestion URL that you should use to stream video to YouTube. + You have the option of simultaneously streaming the content that you are sending + to the ingestionAddress to this URL.\",\n \"type\": \"string\"\n + \ },\n \"rtmpsIngestionAddress\": {\n \"type\": \"string\",\n + \ \"description\": \"This ingestion url may be used instead of ingestionAddress + in order to stream via RTMPS. Not applicable to non-RTMP streams.\"\n },\n + \ \"rtmpsBackupIngestionAddress\": {\n \"type\": \"string\",\n + \ \"description\": \"This ingestion url may be used instead of backupIngestionAddress + in order to stream via RTMPS. Not applicable to non-RTMP streams.\"\n },\n + \ \"ingestionAddress\": {\n \"type\": \"string\",\n \"description\": + \"The primary ingestion URL that you should use to stream video to YouTube. + You must stream video to this URL. Depending on which application or tool + you use to encode your video stream, you may need to enter the stream URL + and stream name separately or you may need to concatenate them in the following + format: *STREAM_URL/STREAM_NAME* \"\n }\n },\n \"type\": + \"object\",\n \"id\": \"IngestionInfo\"\n },\n \"LiveChatNewSponsorDetails\": + {\n \"properties\": {\n \"memberLevelName\": {\n \"type\": + \"string\",\n \"description\": \"The name of the Level that the viewer + just had joined. The Level names are defined by the YouTube channel offering + the Membership. In some situations this field isn't filled.\"\n },\n + \ \"isUpgrade\": {\n \"description\": \"If the viewer just + had upgraded from a lower level. For viewers that were not members at the + time of purchase, this field is false.\",\n \"type\": \"boolean\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatNewSponsorDetails\"\n + \ },\n \"ChannelLocalization\": {\n \"description\": \"Channel localization + setting\",\n \"id\": \"ChannelLocalization\",\n \"properties\": + {\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The localized strings for channel's title.\"\n },\n \"description\": + {\n \"description\": \"The localized strings for channel's description.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"ActivityContentDetailsComment\": {\n \"properties\": {\n + \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + associated with the comment.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ActivityContentDetailsComment\",\n \"description\": \"Information + about a resource that received a comment.\"\n },\n \"LiveChatMessageAuthorDetails\": + {\n \"properties\": {\n \"displayName\": {\n \"type\": + \"string\",\n \"description\": \"The channel's display name.\"\n + \ },\n \"profileImageUrl\": {\n \"description\": \"The + channels's avatar URL.\",\n \"type\": \"string\"\n },\n \"isChatOwner\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the author is the owner of the live chat.\"\n },\n \"isChatSponsor\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the author is a sponsor of the live chat.\"\n },\n \"isChatModerator\": + {\n \"description\": \"Whether the author is a moderator of the live + chat.\",\n \"type\": \"boolean\"\n },\n \"channelUrl\": + {\n \"type\": \"string\",\n \"description\": \"The channel's + URL.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The YouTube channel ID.\"\n },\n \"isVerified\": {\n \"type\": \"boolean\",\n \"description\": \"Whether - the message has display content that should be displayed to users.\"\n },\n - \ \"type\": {\n \"enum\": [\n \"invalidType\",\n - \ \"textMessageEvent\",\n \"tombstone\",\n \"fanFundingEvent\",\n - \ \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + the author's identity has been verified by YouTube.\"\n }\n },\n + \ \"id\": \"LiveChatMessageAuthorDetails\",\n \"type\": \"object\"\n + \ },\n \"LiveChatBan\": {\n \"id\": \"LiveChatBan\",\n \"description\": + \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\",\n + \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#liveChatBan\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": + \"The `snippet` object contains basic details about the ban.\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube assigns + to uniquely identify the ban.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": + {\n \"description\": \"DEPRECATED Region restriction of the video.\",\n + \ \"id\": \"VideoContentDetailsRegionRestriction\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"allowed\": {\n \"description\": + \"A list of region codes that identify countries where the video is viewable. + If this property is present and a country is not listed in its value, then + the video is blocked from appearing in that country. If this property is present + and contains an empty list, the video is blocked in all countries.\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n + \ },\n \"blocked\": {\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"A list of region codes that identify countries where the video is blocked. + If this property is present and a country is not listed in its value, then + the video is viewable in that country. If this property is present and contains + an empty list, the video is viewable in all countries.\"\n }\n }\n + \ },\n \"LiveStream\": {\n \"id\": \"LiveStream\",\n \"type\": + \"object\",\n \"description\": \"A live stream describes a live ingestion + point.\",\n \"properties\": {\n \"status\": {\n \"description\": + \"The status object contains information about live stream's status.\",\n + \ \"$ref\": \"LiveStreamStatus\"\n },\n \"contentDetails\": + {\n \"$ref\": \"LiveStreamContentDetails\",\n \"description\": + \"The content_details object contains information about the stream, including + the closed captions ingestion URL.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#liveStream\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube assigns to uniquely identify + the stream.\",\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.update\"\n + \ ]\n }\n },\n \"cdn\": {\n \"description\": + \"The cdn object defines the live stream's content delivery network (CDN) + settings. These settings provide details about the manner in which you stream + your content to YouTube.\",\n \"$ref\": \"CdnSettings\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the stream, including its channel, title, and description.\",\n + \ \"$ref\": \"LiveStreamSnippet\"\n }\n }\n },\n \"LiveBroadcastStatistics\": + {\n \"description\": \"Statistics about the live broadcast. These represent + a snapshot of the values at the time of the request. Statistics are only returned + for live broadcasts.\",\n \"id\": \"LiveBroadcastStatistics\",\n \"properties\": + {\n \"concurrentViewers\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"The number of viewers currently + watching the broadcast. The property and its value will be present if the + broadcast has current viewers and the broadcast owner has not hidden the viewcount + for the video. Note that YouTube stops tracking the number of concurrent viewers + for a broadcast when the broadcast ends. So, this property would not identify + the number of viewers watching an archived video of a live broadcast that + already ended.\"\n },\n \"totalChatCount\": {\n \"type\": + \"string\",\n \"description\": \"The total number of live chat messages + currently on the broadcast. The property and its value will be present if + the broadcast is public, has the live chat feature enabled, and has at least + one message. Note that this field will not be filled after the broadcast ends. + So this property would not identify the number of chat messages for an archived + video of a completed live broadcast.\",\n \"format\": \"uint64\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsFavorite\": + {\n \"type\": \"object\",\n \"description\": \"Information about + a video that was marked as a favorite video.\",\n \"id\": \"ActivityContentDetailsFavorite\",\n + \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the resource that was marked as a favorite.\"\n }\n }\n + \ },\n \"InvideoBranding\": {\n \"description\": \"LINT.IfChange + Describes an invideo branding.\",\n \"id\": \"InvideoBranding\",\n \"type\": + \"object\",\n \"properties\": {\n \"imageBytes\": {\n \"format\": + \"byte\",\n \"description\": \"The bytes the uploaded image. Only + used in api to youtube communication.\",\n \"type\": \"string\"\n + \ },\n \"targetChannelId\": {\n \"description\": \"The + channel to which this branding links. If not present it defaults to the current + channel.\",\n \"type\": \"string\"\n },\n \"timing\": + {\n \"description\": \"The temporal position within the video where + watermark will be displayed.\",\n \"$ref\": \"InvideoTiming\"\n },\n + \ \"position\": {\n \"description\": \"The spatial position + within the video where the branding watermark will be displayed.\",\n \"$ref\": + \"InvideoPosition\"\n },\n \"imageUrl\": {\n \"type\": + \"string\",\n \"description\": \"The url of the uploaded image. Only + used in apiary to api communication.\"\n }\n }\n },\n \"PlaylistItemSnippet\": + {\n \"properties\": {\n \"resourceId\": {\n \"description\": + \"The id object contains information that can be used to uniquely identify + the resource that is included in the playlist as the playlist item.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.playlistItems.insert\",\n + \ \"youtube.playlistItems.update\"\n ]\n },\n + \ \"$ref\": \"ResourceId\"\n },\n \"videoOwnerChannelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel this video belongs to.\"\n },\n \"publishedAt\": + {\n \"description\": \"The date and time that the item was added + to the playlist.\",\n \"type\": \"string\",\n \"format\": + \"date-time\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the user that added the item + to the playlist.\",\n \"type\": \"string\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The item's + title.\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the playlist item. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"playlistId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist + item is in.\",\n \"annotations\": {\n \"required\": [\n + \ \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n + \ ]\n },\n \"type\": \"string\"\n },\n + \ \"description\": {\n \"type\": \"string\",\n \"description\": + \"The item's description.\"\n },\n \"position\": {\n \"type\": + \"integer\",\n \"description\": \"The order in which the item appears + in the playlist. The value uses a zero-based index, so the first item has + a position of 0, the second item has a position of 1, and so forth.\",\n \"format\": + \"uint32\"\n },\n \"videoOwnerChannelId\": {\n \"description\": + \"Channel id for the channel this video belongs to.\",\n \"type\": + \"string\"\n },\n \"channelTitle\": {\n \"description\": + \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"PlaylistItemSnippet\",\n + \ \"description\": \"Basic details about a playlist, including title, + description and thumbnails. Basic details of a YouTube Playlist item provided + by the author. Next ID: 15\",\n \"type\": \"object\"\n },\n \"SuperStickerMetadata\": + {\n \"id\": \"SuperStickerMetadata\",\n \"properties\": {\n \"altText\": + {\n \"type\": \"string\",\n \"description\": \"Internationalized + alt text that describes the sticker image and any animation associated with + it.\"\n },\n \"stickerId\": {\n \"type\": \"string\",\n + \ \"description\": \"Unique identifier of the Super Sticker. This + is a shorter form of the alt_text that includes pack name and a recognizable + characteristic of the sticker.\"\n },\n \"altTextLanguage\": + {\n \"type\": \"string\",\n \"description\": \"Specifies + the localization language in which the alt text is returned.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"ChannelSectionListResponse\": + {\n \"id\": \"ChannelSectionListResponse\",\n \"properties\": {\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#channelSectionListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n + \ },\n \"description\": \"A list of ChannelSections that + match the request criteria.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"CommentSnippetAuthorChannelId\": {\n \"type\": \"object\",\n + \ \"id\": \"CommentSnippetAuthorChannelId\",\n \"properties\": {\n + \ \"value\": {\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"The id of the author's YouTube channel, if any.\"\n + \ },\n \"VideoFileDetailsAudioStream\": {\n \"id\": \"VideoFileDetailsAudioStream\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"channelCount\": + {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The number of audio channels that the stream contains.\"\n },\n \"vendor\": + {\n \"type\": \"string\",\n \"description\": \"A value that + uniquely identifies a video vendor. Typically, the value is a four-letter + vendor code.\"\n },\n \"bitrateBps\": {\n \"format\": + \"uint64\",\n \"description\": \"The audio stream's bitrate, in bits + per second.\",\n \"type\": \"string\"\n },\n \"codec\": + {\n \"description\": \"The audio codec that the stream uses.\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Information about an audio stream.\"\n },\n \"Member\": {\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": + \"MemberSnippet\",\n \"description\": \"The snippet object contains + basic details about the member.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#member\\\".\",\n \"default\": + \"youtube#member\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"Member\",\n \"description\": \"A *member* resource represents a member + for a YouTube channel. A member provides recurring monetary support to a creator + and receives special benefits.\"\n },\n \"VideoProcessingDetails\": + {\n \"id\": \"VideoProcessingDetails\",\n \"type\": \"object\",\n + \ \"description\": \"Describes processing status and progress and availability + of some other Video resource parts.\",\n \"properties\": {\n \"tagSuggestionsAvailability\": + {\n \"type\": \"string\",\n \"description\": \"This value + indicates whether keyword (tag) suggestions are available for the video. Tags + can be added to a video's metadata to make it easier for other users to find + the video. You can retrieve these suggestions by requesting the suggestions + part in your videos.list() request.\"\n },\n \"thumbnailsAvailability\": + {\n \"description\": \"This value indicates whether thumbnail images + have been generated for the video.\",\n \"type\": \"string\"\n },\n + \ \"processingFailureReason\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n + \ \"other\"\n ],\n \"description\": \"The reason + that YouTube failed to process the video. This property will only have a value + if the processingStatus property's value is failed.\"\n },\n \"processingIssuesAvailability\": + {\n \"description\": \"This value indicates whether the video processing + engine has generated suggestions that might improve YouTube's ability to process + the the video, warnings that explain video processing problems, or errors + that cause video processing problems. You can retrieve these suggestions by + requesting the suggestions part in your videos.list() request.\",\n \"type\": + \"string\"\n },\n \"processingProgress\": {\n \"description\": + \"The processingProgress object contains information about the progress YouTube + has made in processing the video. The values are really only relevant if the + video's processing status is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n + \ },\n \"editorSuggestionsAvailability\": {\n \"type\": + \"string\",\n \"description\": \"This value indicates whether video + editing suggestions, which might improve video quality or the playback experience, + are available for the video. You can retrieve these suggestions by requesting + the suggestions part in your videos.list() request.\"\n },\n \"fileDetailsAvailability\": + {\n \"description\": \"This value indicates whether file details + are available for the uploaded video. You can retrieve a video's file details + by requesting the fileDetails part in your videos.list() request.\",\n \"type\": + \"string\"\n },\n \"processingStatus\": {\n \"type\": + \"string\",\n \"description\": \"The video's processing status. This + value indicates whether YouTube was able to process the video or if the video + is still being processed.\",\n \"enum\": [\n \"processing\",\n + \ \"succeeded\",\n \"failed\",\n \"terminated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n }\n }\n },\n + \ \"LiveStreamHealthStatus\": {\n \"id\": \"LiveStreamHealthStatus\",\n + \ \"properties\": {\n \"lastUpdateTimeSeconds\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + last time this status was updated (in seconds)\"\n },\n \"status\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The status code of this stream\",\n \"enum\": [\n \"good\",\n + \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n + \ ],\n \"type\": \"string\"\n },\n \"configurationIssues\": + {\n \"description\": \"The configurations issues on this stream\",\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"LiveStreamConfigurationIssue\"\n }\n }\n },\n \"type\": + \"object\"\n },\n \"ChannelSectionTargeting\": {\n \"properties\": + {\n \"countries\": {\n \"type\": \"array\",\n \"description\": + \"The country the channel section is targeting.\",\n \"items\": {\n + \ \"type\": \"string\"\n }\n },\n \"regions\": + {\n \"description\": \"The region the channel section is targeting.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"languages\": {\n \"description\": + \"The language the channel section is targeting.\",\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n }\n + \ },\n \"description\": \"ChannelSection targeting setting.\",\n + \ \"type\": \"object\",\n \"id\": \"ChannelSectionTargeting\"\n },\n + \ \"ChannelSettings\": {\n \"description\": \"Branding properties for + the channel view.\",\n \"id\": \"ChannelSettings\",\n \"properties\": + {\n \"defaultTab\": {\n \"type\": \"string\",\n \"description\": + \"Which content tab users should see when viewing the channel.\"\n },\n + \ \"moderateComments\": {\n \"type\": \"boolean\",\n \"description\": + \"Whether user-submitted comments left on the channel page need to be approved + by the channel owner to be publicly visible.\"\n },\n \"country\": + {\n \"type\": \"string\",\n \"description\": \"The country + of the channel.\"\n },\n \"showRelatedChannels\": {\n \"description\": + \"Whether related channels should be proposed.\",\n \"type\": \"boolean\"\n + \ },\n \"keywords\": {\n \"description\": \"Lists keywords + associated with the channel, comma-separated.\",\n \"type\": \"string\"\n + \ },\n \"unsubscribedTrailer\": {\n \"description\": + \"The trailer of the channel, for users that are not subscribers.\",\n \"type\": + \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"Specifies the channel description.\"\n },\n + \ \"trackingAnalyticsAccountId\": {\n \"description\": \"The + ID for a Google Analytics account to track and measure traffic to the channels.\",\n + \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"Specifies the channel title.\"\n + \ },\n \"featuredChannelsUrls\": {\n \"type\": \"array\",\n + \ \"description\": \"The list of featured channels.\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"featuredChannelsTitle\": + {\n \"type\": \"string\",\n \"description\": \"Title for + the featured channels tab.\"\n },\n \"defaultLanguage\": {\n + \ \"type\": \"string\"\n },\n \"showBrowseView\": {\n + \ \"description\": \"Whether the tab to browse the videos should be + displayed.\",\n \"type\": \"boolean\"\n },\n \"profileColor\": + {\n \"description\": \"A prominent color that can be rendered on + this channel page.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"LiveStreamConfigurationIssue\": + {\n \"id\": \"LiveStreamConfigurationIssue\",\n \"properties\": + {\n \"reason\": {\n \"type\": \"string\",\n \"description\": + \"The short-form reason for this issue.\"\n },\n \"description\": + {\n \"description\": \"The long-form description of the issue and + how to resolve it.\",\n \"type\": \"string\"\n },\n \"type\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"textMessageDetails\": {\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\",\n - \ \"$ref\": \"LiveChatTextMessageDetails\"\n },\n \"displayMessage\": - {\n \"type\": \"string\",\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"fanFundingEventDetails\": {\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n },\n \"memberMilestoneChatDetails\": - {\n \"description\": \"Details about the Member Milestone Chat event, - this is only set if the type is 'memberMilestoneChatEvent'.\",\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the message was orignally published.\",\n \"type\": - \"string\"\n },\n \"authorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the user that authored - this message, this field is not always filled. textMessageEvent - the user - that wrote the message fanFundingEvent - the user that funded the broadcast - newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"description\": \"Details about the Gift Membership Received - event, this is only set if the type is 'giftMembershipReceivedEvent'.\",\n - \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n - \ \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n - \ \"description\": \"Details about the New Member Announcement event, - this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" - is the new term for \\\"sponsor\\\".\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"superStickerDetails\": - {\n \"description\": \"Details about the Super Sticker event, this - is only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the member to this Member Milestone Chat. This field is empty for - messages without a comment from the member.\"\n },\n \"memberMonth\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\"\n },\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level at which the viever is a member. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n }\n },\n \"id\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"ActivityContentDetailsPromotedItem\": {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"type\": \"object\",\n \"description\": \"Details about a resource - which is being promoted.\",\n \"properties\": {\n \"destinationUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should direct the user to, if the user chooses to visit the advertiser's - website.\"\n },\n \"creativeViewUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user was shown this promoted item.\"\n },\n \"customCtaButtonText\": - {\n \"description\": \"The custom call-to-action button text. If - specified, it will override the default button text for the cta_type.\",\n - \ \"type\": \"string\"\n },\n \"impressionUrl\": {\n - \ \"description\": \"The list of impression URLs. The client should - ping all of these URLs to indicate that the user was shown this promoted item.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"descriptionText\": {\n \"type\": - \"string\",\n \"description\": \"The text description to accompany - the promoted item.\"\n },\n \"adTag\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should fetch - to request a promoted item.\"\n },\n \"clickTrackingUrl\": {\n - \ \"description\": \"The URL the client should ping to indicate that - the user clicked through on this promoted item.\",\n \"type\": \"string\"\n - \ },\n \"ctaType\": {\n \"description\": \"The type - of call-to-action, a message to the user indicating action that can be taken.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ]\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\",\n \"type\": \"string\"\n },\n \"forecastingUrl\": - {\n \"description\": \"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.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n }\n - \ },\n \"VideoSnippet\": {\n \"properties\": {\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the video was uploaded.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the video - belongs to.\"\n },\n \"defaultAudioLanguage\": {\n \"description\": - \"The default_audio_language property specifies the language spoken in the - video's default audio track.\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"tags\": {\n \"description\": - \"A list of keyword tags associated with the video. Tags may contain spaces.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"categoryId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube video category associated - with the video.\"\n },\n \"liveBroadcastContent\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n },\n \"title\": {\n - \ \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the videos's default snippet.\",\n - \ \"type\": \"string\"\n },\n \"localized\": {\n \"$ref\": - \"VideoLocalization\",\n \"description\": \"Localized snippet selected - with the hl parameter. If no such localization exists, this field is populated - with the default snippet. (Read-only)\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that the video was uploaded - to.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic details about a video, including title, description, uploader, thumbnails - and category.\",\n \"id\": \"VideoSnippet\"\n },\n \"AbuseReport\": - {\n \"properties\": {\n \"relatedEntities\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n - \ }\n },\n \"abuseTypes\": {\n \"items\": {\n - \ \"$ref\": \"AbuseType\"\n },\n \"type\": \"array\"\n - \ },\n \"description\": {\n \"type\": \"string\"\n },\n - \ \"subject\": {\n \"$ref\": \"Entity\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"AbuseReport\"\n },\n \"Video\": - {\n \"id\": \"Video\",\n \"description\": \"A *video* resource represents - a YouTube video.\",\n \"properties\": {\n \"topicDetails\": {\n - \ \"$ref\": \"VideoTopicDetails\",\n \"description\": \"The - topicDetails object encapsulates information about Freebase topics associated - with the video.\"\n },\n \"fileDetails\": {\n \"$ref\": - \"VideoFileDetails\",\n \"description\": \"The fileDetails object - encapsulates information about the video file that was uploaded to YouTube, - including the file's resolution, duration, audio and video codecs, stream - bitrates, and more. This data can only be retrieved by the video owner.\"\n - \ },\n \"suggestions\": {\n \"$ref\": \"VideoSuggestions\",\n - \ \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the video, such as its title, description, - and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n \"localizations\": - {\n \"description\": \"The localizations object contains localized - versions of the basic details about the video, such as its title and description.\",\n - \ \"type\": \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"VideoLocalization\"\n }\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"statistics\": - {\n \"$ref\": \"VideoStatistics\",\n \"description\": \"The - statistics object contains statistics about the video.\"\n },\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"monetizationDetails\": - {\n \"description\": \"The monetizationDetails object encapsulates - information about the monetization status of the video.\",\n \"$ref\": - \"VideoMonetizationDetails\"\n },\n \"projectDetails\": {\n - \ \"$ref\": \"VideoProjectDetails\",\n \"description\": \"The - projectDetails object contains information about the project specific video - metadata. b/157517979: This part was never populated after it was added. However, - it sees non-zero traffic because there is generated client code in the wild - that refers to it [1]. We keep this field and do NOT remove it because otherwise - V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"ageGating\": {\n \"description\": \"Age restriction - details related to a video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoAgeGating\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n }\n },\n \"status\": {\n \"$ref\": - \"VideoStatus\",\n \"description\": \"The status object contains - information about the video's uploading, processing, and privacy statuses.\"\n - \ },\n \"recordingDetails\": {\n \"description\": \"The - recordingDetails object encapsulates information about the location, date - and address where the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"processingDetails\": {\n \"description\": \"The - processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoProcessingDetails\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"default\": \"youtube#video\"\n },\n \"player\": - {\n \"$ref\": \"VideoPlayer\",\n \"description\": \"The - player object contains information that you would use to play the video in - an embedded player.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"CaptionListResponse\": {\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#captionListResponse\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"description\": \"A list of captions that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"Caption\"\n - \ },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"CaptionListResponse\",\n - \ \"type\": \"object\"\n },\n \"VideoLiveStreamingDetails\": {\n - \ \"description\": \"Details about the live streaming metadata.\",\n \"type\": - \"object\",\n \"properties\": {\n \"actualStartTime\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast actually started. This value will not be available - until the broadcast begins.\"\n },\n \"concurrentViewers\": - {\n \"description\": \"The number of viewers currently watching the - broadcast. The property and its value will be present if the broadcast has - current viewers and the broadcast owner has not hidden the viewcount for the - video. Note that YouTube stops tracking the number of concurrent viewers for - a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"activeLiveChatId\": {\n \"description\": - \"The ID of the currently active live chat attached to this video. This field - is filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\",\n \"type\": \"string\"\n },\n \"actualEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast actually ended. This - value will not be available until the broadcast is over.\"\n },\n \"scheduledEndTime\": - {\n \"description\": \"The time that the broadcast is scheduled to - end. If the value is empty or the property is not present, then the broadcast - is scheduled to contiue indefinitely.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast is scheduled to begin.\"\n - \ }\n },\n \"id\": \"VideoLiveStreamingDetails\"\n },\n - \ \"SubscriptionSubscriberSnippet\": {\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the subscriber.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The title of the subscriber.\"\n - \ },\n \"channelId\": {\n \"description\": \"The channel - ID of the subscriber.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"Thumbnails for this subscriber.\",\n \"$ref\": - \"ThumbnailDetails\"\n }\n },\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a subscription's subscriber including title, description, channel ID and thumbnails.\"\n - \ },\n \"VideoAgeGating\": {\n \"type\": \"object\",\n \"id\": - \"VideoAgeGating\",\n \"properties\": {\n \"alcoholContent\": - {\n \"description\": \"Indicates whether or not the video has alcoholic - beverage content. Only users of legal purchasing age in a particular country, - as identified by ICAP, can view the content.\",\n \"type\": \"boolean\"\n - \ },\n \"restricted\": {\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\",\n \"type\": - \"boolean\"\n },\n \"videoGameRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"Video game rating, if any.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"anyone\",\n - \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n - \ ]\n }\n }\n },\n \"ActivityContentDetails\": {\n - \ \"properties\": {\n \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"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.\"\n },\n \"upload\": {\n \"$ref\": - \"ActivityContentDetailsUpload\",\n \"description\": \"The upload - object contains information about the uploaded video. This property is only - present if the snippet.type is upload.\"\n },\n \"subscription\": - {\n \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"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.\"\n },\n \"comment\": {\n \"$ref\": - \"ActivityContentDetailsComment\",\n \"description\": \"The comment - object contains information about a resource that received a comment. This - property is only present if the snippet.type is comment.\"\n },\n \"promotedItem\": - {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n \"description\": - \"The promotedItem object contains details about a resource which is being - promoted. This property is only present if the snippet.type is promotedItem.\"\n - \ },\n \"playlistItem\": {\n \"description\": \"The - playlistItem object contains information about a new playlist item. This property - is only present if the snippet.type is playlistItem.\",\n \"$ref\": - \"ActivityContentDetailsPlaylistItem\"\n },\n \"social\": {\n - \ \"description\": \"The social object contains details about a social - network post. This property is only present if the snippet.type is social.\",\n - \ \"$ref\": \"ActivityContentDetailsSocial\"\n },\n \"recommendation\": - {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n \"description\": - \"The recommendation object contains information about a recommended resource. - This property is only present if the snippet.type is recommendation.\"\n },\n - \ \"like\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsLike\"\n },\n \"bulletin\": {\n \"description\": - \"The bulletin object contains details about a channel bulletin post. This - object is only present if the snippet.type is bulletin.\",\n \"$ref\": - \"ActivityContentDetailsBulletin\"\n }\n },\n \"description\": - \"Details about the content of an activity: the video that was shared, the - channel that was subscribed to, etc.\",\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetails\"\n },\n \"PlaylistItemListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"prevPageToken\": {\n \"type\": + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The kind of error happening.\",\n \"enum\": [\n \"gopSizeOver\",\n + \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n + \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n + \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n + \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n + \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n + \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n + \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n + \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n + \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n + \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n + \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n + \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n + \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n + \ ]\n },\n \"severity\": {\n \"type\": \"string\",\n + \ \"description\": \"How severe this issue is to the stream.\",\n + \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ]\n }\n },\n \"type\": \"object\"\n + \ },\n \"ThirdPartyLink\": {\n \"type\": \"object\",\n \"properties\": + {\n \"status\": {\n \"description\": \"The status object contains + information about the status of the link.\",\n \"$ref\": \"ThirdPartyLinkStatus\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the third- party account + link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n },\n \"linkingToken\": + {\n \"type\": \"string\",\n \"description\": \"The linking_token + identifies a YouTube account and channel with which the third party account + is linked.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLink\"\n + \ }\n },\n \"id\": \"ThirdPartyLink\",\n \"description\": + \"A *third party account link* resource represents a link between a YouTube + account or a channel and an account on a third-party service.\"\n },\n + \ \"ChannelToStoreLinkDetails\": {\n \"id\": \"ChannelToStoreLinkDetails\",\n + \ \"properties\": {\n \"storeUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"Landing page of the store.\"\n },\n \"merchantId\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"Google Merchant Center id of the store.\"\n },\n \"storeName\": + {\n \"type\": \"string\",\n \"description\": \"Name of the + store.\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"Information specific to a store on a merchandising platform linked to a + YouTube channel.\"\n },\n \"AccessPolicy\": {\n \"id\": \"AccessPolicy\",\n + \ \"properties\": {\n \"exception\": {\n \"description\": + \"A list of region codes that identify countries where the default policy + do not apply.\",\n \"type\": \"array\",\n \"items\": {\n + \ \"type\": \"string\"\n }\n },\n \"allowed\": + {\n \"description\": \"The value of allowed indicates whether the + access to the policy is allowed or denied by default.\",\n \"type\": + \"boolean\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"Rights management policy for YouTube resources.\"\n },\n \"VideoCategoryListResponse\": + {\n \"id\": \"VideoCategoryListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of playlist items that match the request criteria.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#playlistItemListResponse\",\n + \"VideoCategory\"\n },\n \"description\": \"A list of video + categories that can be associated with YouTube videos. In this map, the video + category ID is the map key, and its value is the corresponding videoCategory + resource.\",\n \"type\": \"array\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#videoCategoryListResponse\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"PlaylistItemListResponse\"\n - \ },\n \"VideoAbuseReportReasonSnippet\": {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label belonging to this abuse report - reason.\"\n },\n \"secondaryReasons\": {\n \"description\": - \"The secondary reasons associated with this reason, if any are available. - (There might be 0 or more.)\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportSecondaryReason\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"description\": \"Basic details about a video - category, such as its localized title.\",\n \"type\": \"object\"\n },\n - \ \"LiveChatBan\": {\n \"id\": \"LiveChatBan\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#liveChatBan\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"description\": \"A - `__liveChatBan__` resource represents a ban for a YouTube live chat.\"\n },\n - \ \"LiveChatSuperChatDetails\": {\n \"properties\": {\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the user to this Super Chat event.\"\n },\n \"amountMicros\": - {\n \"description\": \"The amount purchased by the user, in micros - (1,750,000 micros = 1.75).\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"tier\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The tier in which the amount belongs. Lower amounts - belong to lower tiers. The lowest tier is 1.\",\n \"type\": \"integer\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatSuperChatDetails\"\n - \ },\n \"VideoStatistics\": {\n \"type\": \"object\",\n \"properties\": - {\n \"dislikeCount\": {\n \"description\": \"The number of - users who have indicated that they disliked the video by giving it a negative - rating.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"favoriteCount\": {\n \"description\": \"The - number of users who currently have the video marked as a favorite video.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"commentCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of comments for the video.\"\n - \ },\n \"viewCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of times the video has been viewed.\",\n \"format\": - \"uint64\"\n },\n \"likeCount\": {\n \"description\": - \"The number of users who have indicated that they liked the video by giving - it a positive rating.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Statistics about - the video, such as the number of times the video was viewed or liked.\",\n - \ \"id\": \"VideoStatistics\"\n },\n \"ImageSettings\": {\n \"properties\": - {\n \"largeBrandedBannerImageImapScript\": {\n \"description\": - \"The image map script for the large banner image.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTvLowImageUrl\": {\n \"description\": - \"Banner image. TV size low resolution (854x480).\",\n \"type\": - \"string\"\n },\n \"watchIconImageUrl\": {\n \"type\": - \"string\"\n },\n \"bannerTvMediumImageUrl\": {\n \"description\": - \"Banner image. TV size medium resolution (1280x720).\",\n \"type\": - \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size medium/high resolution (960x263).\",\n \"type\": - \"string\"\n },\n \"bannerMobileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size (640x175).\"\n - \ },\n \"bannerMobileLowImageUrl\": {\n \"description\": - \"Banner image. Mobile size low resolution (320x88).\",\n \"type\": - \"string\"\n },\n \"bannerTabletLowImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size low resolution - (1138x188).\"\n },\n \"backgroundImageUrl\": {\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTvImageUrl\": {\n \"description\": - \"Banner image. TV size extra high resolution (2120x1192).\",\n \"type\": - \"string\"\n },\n \"bannerTvHighImageUrl\": {\n \"description\": - \"Banner image. TV size high resolution (1920x1080).\",\n \"type\": - \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": {\n \"description\": - \"Banner image. Tablet size extra high resolution (2560x424).\",\n \"type\": - \"string\"\n },\n \"trackingImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL for a 1px by 1px tracking - pixel that can be used to collect statistics for views of the channel or video - pages.\"\n },\n \"bannerExternalUrl\": {\n \"description\": - \"This is generated when a ChannelBanner.Insert request has succeeded for - the given channel.\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": + the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n }\n + \ }\n },\n \"MonitorStreamInfo\": {\n \"properties\": {\n \"embedHtml\": + {\n \"description\": \"HTML code that embeds a player that plays + the monitor stream.\",\n \"type\": \"string\"\n },\n \"broadcastStreamDelayMs\": + {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"If you have set + the enableMonitorStream property to true, then this property determines the + length of the live broadcast delay.\"\n },\n \"enableMonitorStream\": + {\n \"description\": \"This value determines whether the monitor + stream is enabled for the broadcast. If the monitor stream is enabled, then + YouTube will broadcast the event content on a special stream intended only + for the broadcaster's consumption. The broadcaster can use the stream to review + the event content and also to identify the optimal times to insert cuepoints. + You need to set this value to true if you intend to have a broadcast delay + for your event. *Note:* This property cannot be updated once the broadcast + is in the testing or live state.\",\n \"type\": \"boolean\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n }\n }\n },\n \"description\": \"Settings + and Info of the monitor stream\",\n \"type\": \"object\",\n \"id\": + \"MonitorStreamInfo\"\n },\n \"ImageSettings\": {\n \"properties\": + {\n \"watchIconImageUrl\": {\n \"type\": \"string\"\n },\n + \ \"bannerImageUrl\": {\n \"type\": \"string\",\n \"description\": + \"Banner image. Desktop size (1060x175).\"\n },\n \"bannerMobileImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size (640x175).\"\n },\n \"bannerTabletHdImageUrl\": + {\n \"description\": \"Banner image. Tablet size high resolution + (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": + {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n + \ \"type\": \"string\"\n },\n \"backgroundImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The URL for the background image shown on the video watch page. The image + should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n + \ \"bannerTabletLowImageUrl\": {\n \"description\": \"Banner + image. Tablet size low resolution (1138x188).\",\n \"type\": \"string\"\n + \ },\n \"bannerMobileHdImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"Banner image. Mobile size high resolution (1280x360).\"\n + \ },\n \"smallBrandedBannerImageUrl\": {\n \"description\": \"The URL for the 640px by 70px banner image that appears below the video player in the default view of the video watch page. The URL for the image that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"largeBrandedBannerImageUrl\": {\n \"description\": \"The - URL for the 854px by 70px image that appears below the video player in the - expanded video view of the video watch page.\",\n \"$ref\": \"LocalizedProperty\"\n - \ },\n \"bannerMobileHdImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Mobile size high resolution (1280x360).\"\n - \ },\n \"smallBrandedBannerImageImapScript\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The image map script - for the small banner image.\"\n },\n \"bannerTabletImageUrl\": + image with a flexible width that cannot exceed 170 pixels.\",\n \"$ref\": + \"LocalizedProperty\"\n },\n \"bannerExternalUrl\": {\n \"description\": + \"This is generated when a ChannelBanner.Insert request has succeeded for + the given channel.\",\n \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerImageUrl\": - {\n \"description\": \"Banner image. Desktop size (1060x175).\",\n + Mobile size low resolution (320x88).\"\n },\n \"bannerTvImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size extra high resolution (2120x1192).\"\n },\n \"largeBrandedBannerImageUrl\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The URL for the 854px by 70px image that appears below the video player + in the expanded video view of the video watch page.\"\n },\n \"bannerTabletExtraHdImageUrl\": + {\n \"description\": \"Banner image. Tablet size extra high resolution + (2560x424).\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The image map script for the small banner image.\"\n },\n \"bannerTvMediumImageUrl\": + {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n + \ \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": + {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n \ \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": {\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ImageSettings\",\n \"description\": \"Branding properties for images - associated with the channel.\",\n \"type\": \"object\"\n },\n \"TestItem\": - {\n \"id\": \"TestItem\",\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"featuredPart\": {\n \"type\": \"boolean\"\n },\n - \ \"gaia\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n }\n }\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"properties\": {\n \"partsTotal\": {\n \"description\": - \"An estimate of the total number of parts that need to be processed for the - video. The number may be updated with more precise estimates while YouTube - processes the video.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"timeLeftMs\": {\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"partsProcessed\": {\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n }\n - \ },\n \"description\": \"Video processing progress and completion - time estimate.\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"type\": \"object\"\n },\n \"ThirdPartyLinkSnippet\": {\n \"properties\": - {\n \"channelToStoreLink\": {\n \"description\": \"Information - specific to a link between a channel and a store on a merchandising platform.\",\n - \ \"$ref\": \"ChannelToStoreLinkDetails\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"A link - that is connecting (or about to connect) a channel with a store on a merchandising - platform in order to enable retail commerce capabilities for that channel - on YouTube.\"\n ],\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Type of the link named after the entities that - are being linked.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ThirdPartyLinkSnippet\",\n \"description\": \"Basic information about - a third party account link, including its type and type-specific information.\"\n - \ },\n \"Activity\": {\n \"description\": \"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.\",\n \"id\": - \"Activity\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"default\": \"youtube#activity\"\n },\n \"contentDetails\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetails\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the activity, including the activity's type and group - ID.\",\n \"$ref\": \"ActivitySnippet\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the activity.\"\n }\n },\n \"type\": - \"object\"\n },\n \"SearchResult\": {\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"SearchResultSnippet\",\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\"\n },\n \"kind\": {\n \"default\": \"youtube#searchResult\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The id - object contains information that can be used to uniquely identify the resource - that matches the search request.\"\n }\n },\n \"description\": - \"A search result contains information about a YouTube video, channel, or - playlist that matches the search parameters specified in an API request. While - a search result points to a uniquely identifiable resource, like a video, - it does not have its own persistent data.\",\n \"id\": \"SearchResult\",\n - \ \"type\": \"object\"\n }\n },\n \"id\": \"youtube:v3\",\n \"canonicalName\": - \"YouTube\",\n \"servicePath\": \"\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"title\": \"YouTube Data API v3\",\n \"description\": \"The YouTube Data - API v3 is an API that provides access to YouTube data, such as videos, playlists, - and channels.\",\n \"parameters\": {\n \"oauth_token\": {\n \"type\": - \"string\",\n \"description\": \"OAuth 2.0 token for the current user.\",\n - \ \"location\": \"query\"\n },\n \"key\": {\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"fields\": - {\n \"location\": \"query\",\n \"description\": \"Selector specifying - which fields to include in a partial response.\",\n \"type\": \"string\"\n - \ },\n \"$.xgafv\": {\n \"enumDescriptions\": [\n \"v1 error - format\",\n \"v2 error format\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"1\",\n \"2\"\n ],\n \"location\": - \"query\",\n \"description\": \"V1 error format.\"\n },\n \"alt\": - {\n \"location\": \"query\",\n \"default\": \"json\",\n \"type\": - \"string\",\n \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"enumDescriptions\": [\n \"Responses with Content-Type - of application/json\",\n \"Media download with context-dependent Content-Type\",\n - \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n - \ \"description\": \"Data format for response.\"\n },\n \"callback\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"JSONP\"\n },\n \"prettyPrint\": {\n \"default\": \"true\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Returns response with indentations and line breaks.\"\n },\n \"upload_protocol\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n },\n - \ \"quotaUser\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n - \ \"location\": \"query\"\n },\n \"access_token\": {\n \"description\": - \"OAuth access token.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"uploadType\": {\n \"description\": \"Legacy - upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n \"batchPath\": - \"batch\",\n \"resources\": {\n \"members\": {\n \"methods\": {\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"filterByMemberChannelId\": + (1440x395).\",\n \"type\": \"string\"\n },\n \"largeBrandedBannerImageImapScript\": + {\n \"description\": \"The image map script for the large banner + image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"trackingImageUrl\": + {\n \"description\": \"The URL for a 1px by 1px tracking pixel that + can be used to collect statistics for views of the channel or video pages.\",\n + \ \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": + {\n \"description\": \"Banner image. Mobile size medium/high resolution + (960x263).\",\n \"type\": \"string\"\n },\n \"bannerTabletImageUrl\": + {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Branding properties for images associated with the channel.\",\n \"type\": + \"object\",\n \"id\": \"ImageSettings\"\n },\n \"ActivityContentDetailsChannelItem\": + {\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"type\": \"object\",\n + \ \"description\": \"Details about a resource which was added to a channel.\",\n + \ \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + that was added to the channel.\",\n \"$ref\": \"ResourceId\"\n }\n + \ }\n },\n \"VideoContentDetails\": {\n \"id\": \"VideoContentDetails\",\n + \ \"type\": \"object\",\n \"description\": \"Details about the content + of a YouTube Video.\",\n \"properties\": {\n \"hasCustomThumbnail\": + {\n \"type\": \"boolean\",\n \"description\": \"Indicates + whether the video uploader has provided a custom thumbnail image for the video. + This property is only visible to the video uploader.\"\n },\n \"duration\": + {\n \"type\": \"string\",\n \"description\": \"The length + of the video. The tag value is an ISO 8601 duration in the format PT#M#S, + in which the letters PT indicate that the value specifies a period of time, + and the letters M and S refer to length in minutes and seconds, respectively. + The # characters preceding the M and S letters are both integers that specify + the number of minutes (or seconds) of the video. For example, a value of PT15M51S + indicates that the video is 15 minutes and 51 seconds long.\"\n },\n + \ \"countryRestriction\": {\n \"description\": \"The countryRestriction + object contains information about the countries where a video is (or is not) + viewable.\",\n \"$ref\": \"AccessPolicy\"\n },\n \"caption\": + {\n \"enum\": [\n \"true\",\n \"false\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n + \ \"description\": \"The value of captions indicates whether the video + has captions or not.\",\n \"type\": \"string\"\n },\n \"definition\": + {\n \"description\": \"The value of definition indicates whether + the video is available in high definition or only in standard definition.\",\n + \ \"enum\": [\n \"sd\",\n \"hd\"\n ],\n + \ \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n + \ ],\n \"type\": \"string\"\n },\n \"regionRestriction\": + {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": + \"The regionRestriction object contains information about the countries where + a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed + property or the contentDetails.regionRestriction.blocked property.\"\n },\n + \ \"contentRating\": {\n \"description\": \"Specifies the ratings + that the video received under various rating schemes.\",\n \"$ref\": + \"ContentRating\"\n },\n \"licensedContent\": {\n \"description\": + \"The value of is_license_content indicates whether the video is licensed + content.\",\n \"type\": \"boolean\"\n },\n \"dimension\": + {\n \"type\": \"string\",\n \"description\": \"The value + of dimension indicates whether the video is available in 3D or in 2D.\"\n + \ },\n \"projection\": {\n \"description\": \"Specifies + the projection format of the video.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"rectangular\",\n \"360\"\n + \ ]\n }\n }\n }\n },\n \"servicePath\": \"\",\n \"protocol\": + \"rest\",\n \"resources\": {\n \"captions\": {\n \"methods\": {\n + \ \"delete\": {\n \"id\": \"youtube.captions.delete\",\n \"path\": + \"youtube/v3/captions\",\n \"description\": \"Deletes a resource.\",\n + \ \"flatPath\": \"youtube/v3/captions\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*Note:* + This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* + parameter indicates that the request's authorization credentials identify + a YouTube CMS user who is acting on behalf of the content owner specified + in the parameter value. This parameter is intended for YouTube content partners + that own and manage many different YouTube channels. It allows content owners + to authenticate once and get access to all their video and channel data, without + having to provide authentication credentials for each individual channel. + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\",\n \"location\": \"query\"\n + \ },\n \"id\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"required\": true\n },\n + \ \"onBehalfOf\": {\n \"description\": \"ID of the + Google+ Page for the channel that the request is be on behalf of\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"insert\": {\n \"mediaUpload\": {\n \"protocols\": + {\n \"resumable\": {\n \"multipart\": true,\n + \ \"path\": \"/resumable/upload/youtube/v3/captions\"\n },\n + \ \"simple\": {\n \"multipart\": true,\n \"path\": + \"/upload/youtube/v3/captions\"\n }\n },\n \"accept\": + [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n + \ },\n \"flatPath\": \"youtube/v3/captions\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/captions\",\n \"parameters\": + {\n \"part\": {\n \"description\": \"The *part* parameter + specifies the caption resource parts that the API response will include. Set + the parameter value to snippet.\",\n \"required\": true,\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"onBehalfOf\": {\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\",\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"sync\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Extra parameter to allow automatically syncing + the uploaded caption/transcript with the audio.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n }\n + \ },\n \"httpMethod\": \"POST\",\n \"request\": + {\n \"$ref\": \"Caption\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Inserts + a new resource into this collection.\",\n \"supportsMediaUpload\": + true,\n \"id\": \"youtube.captions.insert\",\n \"response\": + {\n \"$ref\": \"Caption\"\n }\n },\n \"list\": + {\n \"parameterOrder\": [\n \"part\",\n \"videoId\"\n + \ ],\n \"flatPath\": \"youtube/v3/captions\",\n \"path\": + \"youtube/v3/captions\",\n \"httpMethod\": \"GET\",\n \"response\": + {\n \"$ref\": \"CaptionListResponse\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n },\n \"videoId\": {\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\",\n \"description\": \"Returns the captions for the + specified video.\"\n },\n \"part\": {\n \"required\": + true,\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOf\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"ID of the Google+ Page for the channel that + the request is on behalf of.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"description\": \"Returns the captions with the given + IDs for Stubby or Apiary.\"\n }\n },\n \"id\": + \"youtube.captions.list\"\n },\n \"download\": {\n \"httpMethod\": + \"GET\",\n \"description\": \"Downloads a caption track.\",\n \"supportsMediaDownload\": + true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.captions.download\",\n \"parameters\": + {\n \"onBehalfOf\": {\n \"description\": \"ID of the + Google+ Page for the channel that the request is be on behalf of\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"tfmt\": + {\n \"type\": \"string\",\n \"description\": \"Convert + the captions into this format. Supported options are sbv, srt, and vtt.\",\n + \ \"location\": \"query\"\n },\n \"tlang\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"tlang is the language code; machine translate + the captions into this language.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"location\": + \"path\",\n \"type\": \"string\",\n \"description\": + \"The ID of the caption track to download, required for One Platform.\",\n + \ \"required\": true\n }\n },\n \"path\": + \"youtube/v3/captions/{id}\",\n \"useMediaDownloadService\": true,\n + \ \"flatPath\": \"youtube/v3/captions/{id}\",\n \"parameterOrder\": + [\n \"id\"\n ]\n },\n \"update\": {\n \"flatPath\": + \"youtube/v3/captions\",\n \"response\": {\n \"$ref\": + \"Caption\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"supportsMediaUpload\": true,\n \"mediaUpload\": {\n \"maxSize\": + \"104857600\",\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n + \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/captions\",\n + \ \"multipart\": true\n }\n }\n },\n + \ \"description\": \"Updates an existing resource.\",\n \"request\": + {\n \"$ref\": \"Caption\"\n },\n \"path\": \"youtube/v3/captions\",\n + \ \"parameters\": {\n \"sync\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"description\": + \"Extra parameter to allow automatically syncing the uploaded caption/transcript + with the audio.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n + \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n + \ \"location\": \"query\"\n }\n },\n \"httpMethod\": + \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"id\": \"youtube.captions.update\"\n }\n }\n },\n + \ \"playlistItems\": {\n \"methods\": {\n \"update\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"request\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"required\": true,\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.playlistItems.update\",\n \"flatPath\": + \"youtube/v3/playlistItems\",\n \"description\": \"Updates an existing + resource.\",\n \"path\": \"youtube/v3/playlistItems\",\n \"response\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"httpMethod\": + \"PUT\"\n },\n \"insert\": {\n \"httpMethod\": \"POST\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"location\": + \"query\",\n \"required\": true\n }\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"path\": + \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.insert\",\n + \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n }\n + \ },\n \"list\": {\n \"parameters\": {\n \"maxResults\": + {\n \"format\": \"uint32\",\n \"minimum\": \"0\",\n + \ \"type\": \"integer\",\n \"default\": \"5\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"location\": + \"query\",\n \"maximum\": \"50\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"Return + the playlist items associated with the given video ID.\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"required\": true,\n \"description\": \"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.\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": + \"string\"\n },\n \"playlistId\": {\n \"type\": + \"string\",\n \"description\": \"Return the playlist items within + the given playlist.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"*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.\"\n }\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.list\",\n + \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/playlistItems\"\n + \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\"\n }\n },\n \"httpMethod\": + \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"id\": + \"youtube.playlistItems.delete\"\n }\n }\n },\n \"superChatEvents\": + {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/superChatEvents\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"id\": \"youtube.superChatEvents.list\",\n \"response\": + {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"parameters\": + {\n \"maxResults\": {\n \"location\": \"query\",\n + \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"minimum\": + \"1\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\"\n + \ },\n \"hl\": {\n \"description\": \"Return + rendered funding amounts in specified language.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"description\": \"The *part* parameter specifies the superChatEvent + resource parts that the API response will include. This parameter is currently + not supported.\",\n \"location\": \"query\",\n \"required\": + true\n },\n \"pageToken\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/superChatEvents\"\n }\n + \ }\n },\n \"channelSections\": {\n \"methods\": {\n \"delete\": + {\n \"description\": \"Deletes a resource.\",\n \"httpMethod\": + \"DELETE\",\n \"flatPath\": \"youtube/v3/channelSections\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": + \"youtube.channelSections.delete\",\n \"path\": \"youtube/v3/channelSections\",\n + \ \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n }\n + \ },\n \"insert\": {\n \"response\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"id\": \"youtube.channelSections.insert\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": + \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"request\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true,\n \"repeated\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n }\n }\n },\n \"update\": + {\n \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n + \ \"id\": \"youtube.channelSections.update\",\n \"request\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/channelSections\",\n \"parameters\": {\n \"part\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"required\": true,\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": + \"PUT\"\n },\n \"list\": {\n \"httpMethod\": \"GET\",\n + \ \"id\": \"youtube.channelSections.list\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"parameters\": {\n \"mine\": {\n \"location\": + \"query\",\n \"description\": \"Return the ChannelSections owned + by the authenticated user.\",\n \"type\": \"boolean\"\n },\n + \ \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"description\": \"Return the ChannelSections with + the given IDs for Stubby or Apiary.\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"Return + the ChannelSections owned by the specified channel ID.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"hl\": + {\n \"description\": \"Return content in specified language\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"path\": \"youtube/v3/channelSections\",\n \"response\": + {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\"\n }\n }\n + \ },\n \"activities\": {\n \"methods\": {\n \"list\": {\n + \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"flatPath\": \"youtube/v3/activities\",\n \"parameters\": + {\n \"home\": {\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"channelId\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"location\": + \"query\",\n \"maximum\": \"50\",\n \"format\": + \"uint32\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"type\": + \"integer\"\n },\n \"publishedBefore\": {\n \"location\": + \"query\",\n \"format\": \"google-datetime\",\n \"type\": + \"string\"\n },\n \"publishedAfter\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"format\": + \"google-datetime\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"repeated\": + true,\n \"required\": true\n },\n \"mine\": + {\n \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"regionCode\": {\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/activities\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"response\": {\n \"$ref\": \"ActivityListResponse\"\n + \ },\n \"id\": \"youtube.activities.list\"\n }\n }\n + \ },\n \"liveChatBans\": {\n \"methods\": {\n \"insert\": + {\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"path\": + \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"request\": + {\n \"$ref\": \"LiveChatBan\"\n },\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": + true\n }\n },\n \"id\": \"youtube.liveChatBans.insert\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n },\n + \ \"description\": \"Inserts a new resource into this collection.\"\n + \ },\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/bans\",\n + \ \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true\n }\n },\n \"description\": \"Deletes a + chat ban.\",\n \"httpMethod\": \"DELETE\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"id\": \"youtube.liveChatBans.delete\",\n \"flatPath\": + \"youtube/v3/liveChat/bans\"\n }\n }\n },\n \"liveChatModerators\": + {\n \"methods\": {\n \"delete\": {\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"youtube.liveChatModerators.delete\",\n + \ \"description\": \"Deletes a chat moderator.\",\n \"httpMethod\": + \"DELETE\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"flatPath\": + \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": [\n \"id\"\n + \ ]\n },\n \"list\": {\n \"response\": {\n + \ \"$ref\": \"LiveChatModeratorListResponse\"\n },\n \"flatPath\": + \"youtube/v3/liveChat/moderators\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"parameterOrder\": [\n \"liveChatId\",\n + \ \"part\"\n ],\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"parameters\": {\n + \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"liveChatId\": + {\n \"description\": \"The id of the live chat for which moderators + should be returned.\",\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"The *part* parameter specifies the liveChatModerator + resource parts that the API response will include. Supported values are id + and snippet.\",\n \"repeated\": true,\n \"required\": + true\n },\n \"maxResults\": {\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"minimum\": \"0\",\n \"format\": + \"uint32\",\n \"maximum\": \"50\",\n \"type\": \"integer\",\n + \ \"default\": \"5\",\n \"location\": \"query\"\n + \ }\n },\n \"id\": \"youtube.liveChatModerators.list\",\n + \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/liveChat/moderators\"\n + \ },\n \"insert\": {\n \"response\": {\n \"$ref\": + \"LiveChatModerator\"\n },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"required\": + true\n }\n },\n \"httpMethod\": \"POST\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"id\": \"youtube.liveChatModerators.insert\"\n }\n }\n + \ },\n \"videoCategories\": {\n \"methods\": {\n \"list\": + {\n \"parameters\": {\n \"regionCode\": {\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"description\": \"The *part* parameter specifies the videoCategory + resource properties that the API response will include. Set the parameter + value to snippet.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"required\": + true\n },\n \"hl\": {\n \"location\": \"query\",\n + \ \"default\": \"en-US\",\n \"type\": \"string\"\n + \ },\n \"id\": {\n \"location\": \"query\",\n + \ \"description\": \"Returns the video categories with the given + IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n \"repeated\": + true\n }\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"path\": \"youtube/v3/videoCategories\",\n \"response\": + {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/videoCategories\",\n \"id\": + \"youtube.videoCategories.list\",\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\"\n + \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": + {\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"description\": \"Retrieves a list of search resources\",\n \"path\": + \"youtube/v3/search\",\n \"id\": \"youtube.search.list\",\n \"httpMethod\": + \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/search\",\n \"parameters\": + {\n \"q\": {\n \"description\": \"Textual search terms + to match.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"regionCode\": {\n \"description\": + \"Display the content as seen by viewers in this country.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"type\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"description\": \"Restrict + results to a particular set of resource types from One Platform.\"\n },\n + \ \"forDeveloper\": {\n \"description\": \"Restrict + the search to only retrieve videos uploaded using the project id of the authenticated + user.\",\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"relevanceLanguage\": {\n \"type\": + \"string\",\n \"description\": \"Return results relevant to this + language.\",\n \"location\": \"query\"\n },\n \"topicId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Restrict results to a particular topic.\"\n + \ },\n \"videoDimension\": {\n \"enumDescriptions\": + [\n \"Include both 3D and non-3D videos in returned results. + This is the default value.\",\n \"Restrict search results to + exclude 3D videos.\",\n \"Restrict search results to only include + 3D videos.\"\n ],\n \"location\": \"query\",\n \"enum\": + [\n \"any\",\n \"2d\",\n \"3d\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"Filter on 3d videos.\"\n },\n \"relatedToVideoId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Search related to a resource.\"\n },\n + \ \"publishedAfter\": {\n \"description\": \"Filter + on resources published after this date.\",\n \"format\": \"google-datetime\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"order\": {\n \"location\": \"query\",\n + \ \"default\": \"relevance\",\n \"enumDescriptions\": + [\n \"\",\n \"Resources are sorted in reverse + chronological order based on the date they were created.\",\n \"Resources + are sorted from highest to lowest rating.\",\n \"Resources + are sorted from highest to lowest number of views.\",\n \"Resources + are sorted based on their relevance to the search query. This is the default + value for this parameter.\",\n \"Resources are sorted alphabetically + by title.\",\n \"Channels are sorted in descending order of + their number of uploaded videos.\"\n ],\n \"description\": + \"Sort order of the results.\",\n \"enum\": [\n \"searchSortUnspecified\",\n + \ \"date\",\n \"rating\",\n \"viewCount\",\n + \ \"relevance\",\n \"title\",\n \"videoCount\"\n + \ ],\n \"type\": \"string\"\n },\n \"channelType\": + {\n \"description\": \"Add a filter on the channel search.\",\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n + \ \"show\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return all channels.\",\n \"Only + retrieve shows.\"\n ]\n },\n \"publishedBefore\": + {\n \"format\": \"google-datetime\",\n \"type\": + \"string\",\n \"description\": \"Filter on resources published + before this date.\",\n \"location\": \"query\"\n },\n + \ \"forMine\": {\n \"description\": \"Search for the + private videos of the authenticated user.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"safeSearch\": + {\n \"enumDescriptions\": [\n \"\",\n \"YouTube + will not filter the search result set.\",\n \"YouTube will + filter some content from search results and, at the least, will filter content + that is restricted in your locale. Based on their content, search results + could be removed from search results or demoted in search results. This is + the default parameter value.\",\n \"YouTube will try to exclude + all restricted content from the search result set. Based on their content, + search results could be removed from search results or demoted in search results.\"\n + \ ],\n \"description\": \"Indicates whether the search + results should include restricted content as well as standard content.\",\n + \ \"enum\": [\n \"safeSearchSettingUnspecified\",\n + \ \"none\",\n \"moderate\",\n \"strict\"\n + \ ],\n \"location\": \"query\",\n \"default\": + \"moderate\",\n \"type\": \"string\"\n },\n \"videoCaption\": + {\n \"description\": \"Filter on the presence of captions on + the videos.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Do not filter results based on caption availability.\",\n + \ \"Only include videos that have captions.\",\n \"Only + include videos that do not have captions.\"\n ],\n \"enum\": + [\n \"videoCaptionUnspecified\",\n \"any\",\n + \ \"closedCaption\",\n \"none\"\n ],\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"videoEmbeddable\": {\n \"description\": + \"Filter on embeddable videos.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all videos, embeddable or not.\",\n \"Only + retrieve embeddable videos.\"\n ],\n \"enum\": [\n + \ \"videoEmbeddableUnspecified\",\n \"any\",\n + \ \"true\"\n ]\n },\n \"videoDefinition\": + {\n \"enumDescriptions\": [\n \"Return all videos, + regardless of their resolution.\",\n \"Only retrieve videos + in standard definition.\",\n \"Only retrieve HD videos.\"\n + \ ],\n \"location\": \"query\",\n \"type\": + \"string\",\n \"enum\": [\n \"any\",\n \"standard\",\n + \ \"high\"\n ],\n \"description\": + \"Filter on the definition of the videos.\"\n },\n \"videoDuration\": + {\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Do not filter video search results + based on their duration. This is the default value.\",\n \"Only + include videos that are less than four minutes long.\",\n \"Only + include videos that are between four and 20 minutes long (inclusive).\",\n + \ \"Only include videos longer than 20 minutes.\"\n ],\n + \ \"description\": \"Filter on the duration of the videos.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"videoDurationUnspecified\",\n + \ \"any\",\n \"short\",\n \"medium\",\n + \ \"long\"\n ]\n },\n \"videoLicense\": + {\n \"description\": \"Filter on the license of the videos.\",\n + \ \"location\": \"query\",\n \"enum\": [\n \"any\",\n + \ \"youtube\",\n \"creativeCommon\"\n ],\n + \ \"enumDescriptions\": [\n \"Return all videos, + regardless of which license they have, that match the query parameters.\",\n + \ \"Only return videos that have the standard YouTube license.\",\n + \ \"Only return videos that have a Creative Commons license. + Users can reuse videos with this license in other videos that they create. + Learn more.\"\n ],\n \"type\": \"string\"\n },\n + \ \"maxResults\": {\n \"location\": \"query\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"minimum\": \"0\",\n \"default\": + \"5\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n + \ \"maximum\": \"50\"\n },\n \"channelId\": + {\n \"description\": \"Filter on resources belonging to this + channelId.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"location\": {\n \"description\": + \"Filter on location of the video\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"videoSyndicated\": + {\n \"enumDescriptions\": [\n \"\",\n \"Return + all videos, syndicated or not.\",\n \"Only retrieve syndicated + videos.\"\n ],\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n + \ \"any\",\n \"true\"\n ],\n \"description\": + \"Filter on syndicated videos.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"eventType\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"The + live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n + \ \"The live broadcast has been completed.\"\n ],\n + \ \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ],\n + \ \"description\": \"Filter on the livestream status of the videos.\"\n + \ },\n \"videoCategoryId\": {\n \"location\": + \"query\",\n \"description\": \"Filter on videos in a specific + category.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"repeated\": true,\n + \ \"description\": \"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.\"\n },\n \"locationRadius\": + {\n \"description\": \"Filter on distance from the location (specified + above).\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"forContentOwner\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Search owned by a content owner.\"\n },\n + \ \"videoType\": {\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos.\",\n \"Only + retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n + \ ],\n \"enum\": [\n \"videoTypeUnspecified\",\n + \ \"any\",\n \"movie\",\n \"episode\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"Filter on videos of a specific type.\"\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n }\n }\n }\n },\n \"tests\": + {\n \"methods\": {\n \"insert\": {\n \"id\": \"youtube.tests.insert\",\n + \ \"flatPath\": \"youtube/v3/tests\",\n \"path\": \"youtube/v3/tests\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true,\n \"repeated\": true\n },\n \"externalChannelId\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"POST method.\",\n + \ \"request\": {\n \"$ref\": \"TestItem\"\n },\n + \ \"response\": {\n \"$ref\": \"TestItem\"\n },\n + \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n + \ ]\n }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": + {\n \"insert\": {\n \"description\": \"Inserts a new resource + into this collection.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n + \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"id\": \"youtube.thirdPartyLinks.insert\",\n \"parameters\": + {\n \"externalChannelId\": {\n \"location\": \"query\",\n + \ \"description\": \"Channel ID to which changes should be applied, + for delegation.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"description\": \"The + *part* parameter specifies the thirdPartyLink resource parts that the API + request and response will include. Supported values are linkingToken, status, + and snippet.\",\n \"required\": true,\n \"location\": + \"query\",\n \"repeated\": true\n }\n }\n + \ },\n \"delete\": {\n \"parameters\": {\n \"externalChannelId\": + {\n \"description\": \"Channel ID to which changes should be + applied, for delegation.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"linkingToken\": {\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\",\n \"description\": \"Delete the partner links with + the given linking token.\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"Do not use. Required for compatibility.\",\n + \ \"repeated\": true,\n \"type\": \"string\"\n },\n + \ \"type\": {\n \"required\": true,\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Type of the link to be deleted.\",\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or + about to connect) a channel with a store on a merchandising platform in order + to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n + \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ]\n }\n },\n \"id\": \"youtube.thirdPartyLinks.delete\",\n + \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": + [\n \"linkingToken\",\n \"type\"\n ],\n \"description\": + \"Deletes a resource.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"httpMethod\": \"DELETE\"\n },\n \"update\": {\n + \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"PUT\",\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n + \ },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": + \"youtube.thirdPartyLinks.update\",\n \"parameters\": {\n \"externalChannelId\": + {\n \"type\": \"string\",\n \"description\": \"Channel + ID to which changes should be applied, for delegation.\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"The *part* parameter specifies the thirdPartyLink + resource parts that the API request and response will include. Supported values + are linkingToken, status, and snippet.\",\n \"required\": true\n + \ }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"description\": \"Updates an existing resource.\"\n },\n + \ \"list\": {\n \"id\": \"youtube.thirdPartyLinks.list\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/thirdPartyLinks\",\n \"response\": {\n \"$ref\": + \"ThirdPartyLinkListResponse\"\n },\n \"parameters\": {\n + \ \"type\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or + about to connect) a channel with a store on a merchandising platform in order + to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n + \ \"description\": \"Get a third party link of the given type.\"\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"repeated\": true,\n \"description\": \"The *part* + parameter specifies the thirdPartyLink resource parts that the API response + will include. Supported values are linkingToken, status, and snippet.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"externalChannelId\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\"\n },\n + \ \"linkingToken\": {\n \"location\": \"query\",\n + \ \"description\": \"Get a third party link with the given linking + token.\",\n \"type\": \"string\"\n }\n },\n + \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n + \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"flatPath\": \"youtube/v3/members\",\n \"path\": + \"youtube/v3/members\",\n \"httpMethod\": \"GET\",\n \"description\": + \"Retrieves a list of members that match the request criteria for a channel.\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": + {\n \"pageToken\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"filterByMemberChannelId\": + {\n \"description\": \"Comma separated list of channel IDs. Only + data about members that are part of this list will be included in the response.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"hasAccessToLevel\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Filter members in the results set to the ones that have access to a level.\"\n + \ },\n \"maxResults\": {\n \"default\": + \"5\",\n \"location\": \"query\",\n \"maximum\": + \"1000\",\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"minimum\": \"0\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\"\n },\n \"mode\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"Return + only members that joined after the first call with this mode was made.\",\n + \ \"Return all current members, from newest to oldest.\"\n ],\n + \ \"description\": \"Parameter that specifies which channel members + to return.\",\n \"enum\": [\n \"listMembersModeUnknown\",\n + \ \"updates\",\n \"all_current\"\n ],\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"default\": \"all_current\"\n },\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"The *part* parameter specifies the member + resource parts that the API response will include. Set the parameter value + to snippet.\"\n }\n },\n \"id\": \"youtube.members.list\",\n + \ \"response\": {\n \"$ref\": \"MemberListResponse\"\n + \ }\n }\n }\n },\n \"liveChatMessages\": {\n \"methods\": + {\n \"list\": {\n \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n + \ },\n \"id\": \"youtube.liveChatMessages.list\",\n \"flatPath\": + \"youtube/v3/liveChat/messages\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"parameters\": {\n \"profileImageSize\": + {\n \"minimum\": \"16\",\n \"location\": \"query\",\n + \ \"maximum\": \"720\",\n \"description\": \"Specifies + the size of the profile image that should be returned for each user.\",\n + \ \"format\": \"uint32\",\n \"type\": \"integer\"\n + \ },\n \"liveChatId\": {\n \"description\": + \"The id of the live chat for which comments should be returned.\",\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"hl\": + {\n \"description\": \"Specifies the localization language in + which the system messages should be returned.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"required\": true,\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies the liveChatComment resource parts that the + API response will include. Supported values are id and snippet.\"\n },\n + \ \"maxResults\": {\n \"default\": \"500\",\n \"location\": + \"query\",\n \"minimum\": \"200\",\n \"type\": \"integer\",\n + \ \"maximum\": \"2000\",\n \"format\": \"uint32\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\"\n }\n + \ },\n \"parameterOrder\": [\n \"liveChatId\",\n + \ \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"httpMethod\": \"GET\"\n },\n \"delete\": {\n \"path\": + \"youtube/v3/liveChat/messages\",\n \"parameters\": {\n \"id\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\"\n }\n },\n \"description\": + \"Deletes a chat message.\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": + \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.delete\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"insert\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true,\n \"repeated\": true,\n \"description\": \"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.\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"response\": + {\n \"$ref\": \"LiveChatMessage\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.liveChatMessages.insert\",\n \"httpMethod\": + \"POST\",\n \"request\": {\n \"$ref\": \"LiveChatMessage\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ]\n + \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n + \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.i18nRegions.list\",\n + \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"path\": \"youtube/v3/i18nRegions\",\n \"flatPath\": + \"youtube/v3/i18nRegions\",\n \"parameters\": {\n \"hl\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"default\": \"en_US\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"description\": \"The + *part* parameter specifies the i18nRegion resource properties that the API + response will include. Set the parameter value to snippet.\",\n \"required\": + true\n }\n },\n \"parameterOrder\": [\n \"part\"\n + \ ]\n }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": + {\n \"insertCuepoint\": {\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n + \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n + \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n + \ \"httpMethod\": \"POST\",\n \"description\": \"Insert cuepoints + in a broadcast\",\n \"parameterOrder\": [],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"id\": {\n \"description\": \"Broadcast to insert + ads to, or equivalently `external_video_id` for internal use.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"description\": \"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.\"\n + \ }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\"\n + \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"description\": + \"Delete a given broadcast.\",\n \"id\": \"youtube.liveBroadcasts.delete\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"id\": {\n \"description\": + \"Broadcast to delete.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n + \ \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n }\n },\n \"insert\": {\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"description\": \"Inserts a new + stream for the authenticated user.\",\n \"request\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"httpMethod\": \"POST\",\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"required\": + true,\n \"type\": \"string\",\n \"repeated\": true\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"id\": \"youtube.liveBroadcasts.insert\"\n + \ },\n \"transition\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n + \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"parameterOrder\": + [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n + \ ],\n \"description\": \"Transition a broadcast to a given + status.\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n \"httpMethod\": + \"POST\",\n \"parameters\": {\n \"broadcastStatus\": {\n + \ \"enum\": [\n \"statusUnspecified\",\n \"testing\",\n + \ \"live\",\n \"complete\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Start + testing the broadcast. YouTube transmits video to the broadcast's monitor + stream. Note that you can only transition a broadcast to the testing state + if its contentDetails.monitorStream.enableMonitorStream property is set to + true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The + broadcast is over. YouTube stops transmitting video.\"\n ],\n + \ \"required\": true,\n \"description\": \"The status + to which the broadcast is going to transition.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"description\": + \"Broadcast to transition.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"required\": + true,\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"location\": \"query\"\n + \ }\n }\n },\n \"list\": {\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"response\": {\n \"$ref\": + \"LiveBroadcastListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.liveBroadcasts.list\",\n + \ \"parameters\": {\n \"broadcastType\": {\n \"enum\": + [\n \"broadcastTypeFilterUnspecified\",\n \"all\",\n + \ \"event\",\n \"persistent\"\n ],\n + \ \"description\": \"Return only broadcasts with the selected + type.\",\n \"enumDescriptions\": [\n \"\",\n \"Return + all broadcasts.\",\n \"Return only scheduled event broadcasts.\",\n + \ \"Return only persistent broadcasts.\"\n ],\n + \ \"default\": \"event\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"id\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"Return broadcasts with the given ids from + Stubby or Apiary.\",\n \"type\": \"string\"\n },\n + \ \"maxResults\": {\n \"default\": \"5\",\n \"format\": + \"uint32\",\n \"maximum\": \"50\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"location\": \"query\",\n + \ \"type\": \"integer\",\n \"minimum\": \"0\"\n },\n + \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"mine\": {\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"broadcastStatus\": + {\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all broadcasts.\",\n \"Return + current live broadcasts.\",\n \"Return broadcasts that have + not yet started.\",\n \"Return broadcasts that have already + ended.\"\n ],\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n + \ \"all\",\n \"active\",\n \"upcoming\",\n + \ \"completed\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"Return broadcasts with a certain status, + e.g. active broadcasts.\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"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, status and statistics.\",\n + \ \"repeated\": true,\n \"required\": true,\n \"location\": + \"query\"\n }\n },\n \"description\": \"Retrieve + the list of broadcasts associated with the given channel.\"\n },\n + \ \"update\": {\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n + \ \"description\": \"Updates an existing broadcast for the authenticated + user.\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n + \ \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"required\": true,\n + \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n + \ },\n \"id\": \"youtube.liveBroadcasts.update\",\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"request\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n }\n + \ },\n \"bind\": {\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n + \ \"parameterOrder\": [\n \"id\",\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"description\": \"Bind a broadcast to a stream.\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"repeated\": true\n + \ },\n \"streamId\": {\n \"description\": + \"Stream to bind, if not set unbind the current one.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"required\": true,\n \"description\": \"Broadcast + to bind to the stream\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveBroadcasts.bind\",\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n }\n }\n },\n \"videoAbuseReportReasons\": + {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n + \ \"parameters\": {\n \"hl\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"default\": + \"en-US\"\n },\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"required\": true,\n + \ \"description\": \"The *part* parameter specifies the videoCategory + resource parts that the API response will include. Supported values are id + and snippet.\",\n \"location\": \"query\"\n }\n },\n + \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n + \ },\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n + \ \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ]\n }\n }\n },\n \"videos\": {\n \"methods\": + {\n \"reportAbuse\": {\n \"request\": {\n \"$ref\": + \"VideoAbuseReport\"\n },\n \"httpMethod\": \"POST\",\n + \ \"parameterOrder\": [],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/videos/reportAbuse\",\n \"flatPath\": + \"youtube/v3/videos/reportAbuse\",\n \"id\": \"youtube.videos.reportAbuse\",\n + \ \"description\": \"Report abuse for a video.\"\n },\n \"update\": + {\n \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": + \"Video\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Updates an existing resource.\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/videos\",\n \"id\": \"youtube.videos.update\",\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true,\n \"description\": + \"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.\",\n + \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\"\n - \ },\n \"mode\": {\n \"location\": \"query\",\n - \ \"enum\": [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"type\": - \"string\",\n \"default\": \"all_current\",\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ]\n },\n - \ \"part\": {\n \"description\": \"The *part* parameter - specifies the member resource parts that the API response will include. Set - the parameter value to snippet.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"hasAccessToLevel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\"\n - \ },\n \"maxResults\": {\n \"description\": + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n }\n },\n \"response\": + {\n \"$ref\": \"Video\"\n },\n \"flatPath\": + \"youtube/v3/videos\"\n },\n \"list\": {\n \"id\": + \"youtube.videos.list\",\n \"httpMethod\": \"GET\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/videos\",\n + \ \"flatPath\": \"youtube/v3/videos\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"VideoListResponse\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"required\": true\n + \ },\n \"maxResults\": {\n \"maximum\": + \"50\",\n \"type\": \"integer\",\n \"default\": + \"5\",\n \"format\": \"uint32\",\n \"description\": \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"1000\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": + 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.\",\n \"minimum\": + \"1\",\n \"location\": \"query\"\n },\n \"regionCode\": + {\n \"description\": \"Use a chart that is specific to the specified + region\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"maxWidth\": {\n \"format\": + \"int32\",\n \"location\": \"query\",\n \"maximum\": + \"8192\",\n \"description\": \"Return the player with maximum + height specified in\",\n \"minimum\": \"72\",\n \"type\": + \"integer\"\n },\n \"locale\": {\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"myRating\": + {\n \"description\": \"Return videos liked/disliked by the authenticated + user. Does not support RateType.RATED_TYPE_NONE.\",\n \"type\": + \"string\",\n \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The entity is liked.\",\n \"The entity is + disliked.\"\n ]\n },\n \"pageToken\": {\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"chart\": {\n \"type\": + \"string\",\n \"enum\": [\n \"chartUnspecified\",\n + \ \"mostPopular\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return the most popular videos + for the specified content region and video category.\"\n ],\n + \ \"location\": \"query\",\n \"description\": \"Return + the videos that are in the specified chart.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"hl\": {\n \"type\": + \"string\",\n \"description\": \"Stands for \\\"host language\\\". + Specifies the localization language of the metadata to be filled into snippet.localized. + The field is filled with the default metadata if there is no localization + in the specified language. The parameter value must be a language code included + in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n + \ \"location\": \"query\"\n },\n \"videoCategoryId\": + {\n \"description\": \"Use chart that is specific to the specified + video category\",\n \"default\": \"0\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"description\": \"Return videos with the given ids.\",\n + \ \"repeated\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"maxHeight\": + {\n \"minimum\": \"72\",\n \"format\": \"int32\",\n + \ \"location\": \"query\",\n \"maximum\": \"8192\",\n + \ \"type\": \"integer\"\n }\n }\n },\n + \ \"getRating\": {\n \"httpMethod\": \"GET\",\n \"response\": + {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"path\": + \"youtube/v3/videos/getRating\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.videos.getRating\",\n \"flatPath\": + \"youtube/v3/videos/getRating\",\n \"description\": \"Retrieves the + ratings that the authorized user gave to a list of specified videos.\",\n + \ \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n }\n },\n \"parameterOrder\": [\n \"id\"\n + \ ]\n },\n \"delete\": {\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ },\n \"description\": \"Retrieves a list of members that - match the request criteria for a channel.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/members\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.members.list\",\n - \ \"path\": \"youtube/v3/members\"\n }\n }\n },\n \"youtube\": - {\n \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameterOrder\": [],\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"id\": \"youtube.youtube.v3.updateCommentThreads\"\n - \ }\n }\n }\n }\n },\n \"liveBroadcasts\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\"\n },\n + \ \"id\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"path\": \"youtube/v3/videos\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"description\": \"Deletes + a resource.\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": + \"youtube/v3/videos\",\n \"id\": \"youtube.videos.delete\"\n },\n + \ \"insert\": {\n \"parameters\": {\n \"stabilize\": + {\n \"location\": \"query\",\n \"description\": + \"Should stabilize be applied to the upload.\",\n \"type\": \"boolean\"\n + \ },\n \"part\": {\n \"repeated\": true,\n + \ \"description\": \"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.\",\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n + \ \"autoLevels\": {\n \"location\": \"query\",\n \"description\": + \"Should auto-levels be applied to the upload.\",\n \"type\": + \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*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.\"\n },\n \"notifySubscribers\": + {\n \"type\": \"boolean\",\n \"description\": \"Notify + the channel subscribers about the new video. As default, the notification + is enabled.\",\n \"default\": \"true\",\n \"location\": + \"query\"\n }\n },\n \"path\": \"youtube/v3/videos\",\n + \ \"id\": \"youtube.videos.insert\",\n \"description\": \"Inserts + a new resource into this collection.\",\n \"request\": {\n \"$ref\": + \"Video\"\n },\n \"httpMethod\": \"POST\",\n \"supportsMediaUpload\": + true,\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"flatPath\": \"youtube/v3/videos\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"Video\"\n + \ },\n \"mediaUpload\": {\n \"protocols\": {\n + \ \"resumable\": {\n \"multipart\": true,\n \"path\": + \"/resumable/upload/youtube/v3/videos\"\n },\n \"simple\": + {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/videos\"\n + \ }\n },\n \"maxSize\": \"274877906944\",\n + \ \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n + \ ]\n }\n },\n \"rate\": {\n \"path\": + \"youtube/v3/videos/rate\",\n \"parameters\": {\n \"rating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"location\": \"query\",\n + \ \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"required\": + true\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"required\": true\n + \ }\n },\n \"flatPath\": \"youtube/v3/videos/rate\",\n + \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"id\",\n + \ \"rating\"\n ],\n \"description\": \"Adds a + like or dislike rating to a video or removes a rating from a video.\",\n \"id\": + \"youtube.videos.rate\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n }\n }\n },\n \"playlists\": {\n \"methods\": + {\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"required\": true,\n + \ \"location\": \"query\",\n \"repeated\": true\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": + \"youtube.playlists.update\",\n \"description\": \"Updates an existing + resource.\",\n \"flatPath\": \"youtube/v3/playlists\",\n \"response\": + {\n \"$ref\": \"Playlist\"\n },\n \"request\": + {\n \"$ref\": \"Playlist\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/playlists\"\n },\n \"insert\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/playlists\",\n + \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n + \ \"id\": \"youtube.playlists.insert\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/playlists\",\n + \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n }\n }\n },\n \"delete\": + {\n \"id\": \"youtube.playlists.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Deletes a resource.\",\n \"flatPath\": + \"youtube/v3/playlists\",\n \"httpMethod\": \"DELETE\",\n \"path\": + \"youtube/v3/playlists\"\n },\n \"list\": {\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": + \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n + \ },\n \"path\": \"youtube/v3/playlists\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"channelId\": + {\n \"location\": \"query\",\n \"description\": + \"Return the playlists owned by the specified channel ID.\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"maximum\": + \"50\",\n \"minimum\": \"0\",\n \"type\": \"integer\",\n + \ \"location\": \"query\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"format\": \"uint32\",\n \"default\": + \"5\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"mine\": + {\n \"type\": \"boolean\",\n \"description\": \"Return + the playlists owned by the authenticated user.\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"required\": true,\n \"repeated\": + true\n },\n \"hl\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Return + content in specified language\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n + \ },\n \"id\": {\n \"location\": \"query\",\n + \ \"description\": \"Return the playlists with the given IDs for + Stubby or Apiary.\",\n \"type\": \"string\",\n \"repeated\": + true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"youtube.playlists.list\",\n \"flatPath\": + \"youtube/v3/playlists\"\n }\n }\n },\n \"liveStreams\": {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieve - the list of broadcasts associated with the given channel.\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"parameters\": - {\n \"broadcastStatus\": {\n \"location\": \"query\",\n - \ \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"type\": \"string\",\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"minimum\": \"0\"\n },\n - \ \"broadcastType\": {\n \"description\": \"Return - only broadcasts with the selected type.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"default\": \"event\",\n \"enum\": - [\n \"broadcastTypeFilterUnspecified\",\n \"all\",\n - \ \"event\",\n \"persistent\"\n ]\n - \ },\n \"pageToken\": {\n \"location\": + the list of streams associated with the given channel. --\",\n \"response\": + {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"httpMethod\": \"GET\",\n \"path\": + \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\"\n },\n \"id\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return LiveStreams with the given ids from + Stubby or Apiary.\"\n },\n \"pageToken\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n + \ \"maxResults\": {\n \"maximum\": \"50\",\n \"minimum\": + \"0\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"type\": + \"integer\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Return broadcasts with the given - ids from Stubby or Apiary.\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": + \"query\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"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.\"\n }\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"id\": \"youtube.liveStreams.list\",\n \"parameterOrder\": + [\n \"part\"\n ]\n },\n \"update\": {\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": + \"youtube.liveStreams.update\",\n \"response\": {\n \"$ref\": + \"LiveStream\"\n },\n \"httpMethod\": \"PUT\",\n \"request\": + {\n \"$ref\": \"LiveStream\"\n },\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"description\": + \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -10166,13 +5488,338 @@ interactions: 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.\"\n },\n \"part\": + be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"path\": \"youtube/v3/liveStreams\",\n \"description\": + \"Updates an existing stream for the authenticated user.\",\n \"flatPath\": + \"youtube/v3/liveStreams\"\n },\n \"delete\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"description\": \"Deletes an existing stream for + the authenticated user.\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n + \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n + \ },\n \"id\": \"youtube.liveStreams.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"path\": \"youtube/v3/liveStreams\"\n + \ },\n \"insert\": {\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"id\": \"youtube.liveStreams.insert\",\n \"response\": + {\n \"$ref\": \"LiveStream\"\n },\n \"description\": + \"Inserts a new stream for the authenticated user.\",\n \"httpMethod\": + \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"description\": - \"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, status - and statistics.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": + \"*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.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"part\": {\n \"required\": + true,\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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, content_details, and status.\"\n + \ }\n },\n \"request\": {\n \"$ref\": + \"LiveStream\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": + [\n \"part\"\n ]\n }\n }\n },\n \"watermarks\": + {\n \"methods\": {\n \"set\": {\n \"supportsMediaUpload\": + true,\n \"id\": \"youtube.watermarks.set\",\n \"flatPath\": + \"youtube/v3/watermarks/set\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n + \ \"parameters\": {\n \"channelId\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Allows upload of watermark image and setting + it for a channel.\",\n \"path\": \"youtube/v3/watermarks/set\",\n + \ \"httpMethod\": \"POST\",\n \"mediaUpload\": {\n \"accept\": + [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n + \ ],\n \"maxSize\": \"10485760\",\n \"protocols\": + {\n \"resumable\": {\n \"multipart\": true,\n + \ \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n + \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n + \ \"multipart\": true\n }\n }\n },\n + \ \"parameterOrder\": [\n \"channelId\"\n ]\n + \ },\n \"unset\": {\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n + \ \"parameterOrder\": [\n \"channelId\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.watermarks.unset\",\n + \ \"description\": \"Allows removal of channel watermark.\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/watermarks/unset\"\n }\n }\n + \ },\n \"youtube\": {\n \"resources\": {\n \"v3\": {\n \"methods\": + {\n \"updateCommentThreads\": {\n \"response\": {\n + \ \"$ref\": \"CommentThread\"\n },\n \"flatPath\": + \"youtube/v3/commentThreads\",\n \"parameters\": {\n \"part\": + {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"description\": + \"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.\"\n }\n },\n + \ \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"httpMethod\": + \"PUT\",\n \"request\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"parameterOrder\": [],\n \"description\": + \"Updates an existing resource.\",\n \"path\": \"youtube/v3/commentThreads\"\n + \ }\n }\n }\n }\n },\n \"thumbnails\": + {\n \"methods\": {\n \"set\": {\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n + \ \"supportsMediaUpload\": true,\n \"mediaUpload\": {\n \"accept\": + [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n + \ ],\n \"protocols\": {\n \"simple\": {\n + \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n + \ },\n \"resumable\": {\n \"path\": + \"/resumable/upload/youtube/v3/thumbnails/set\",\n \"multipart\": + true\n }\n },\n \"maxSize\": \"2097152\"\n + \ },\n \"parameters\": {\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"Returns the Thumbnail with the + given video IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n + \ \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n }\n },\n \"parameterOrder\": [\n + \ \"videoId\"\n ],\n \"httpMethod\": \"POST\",\n + \ \"path\": \"youtube/v3/thumbnails/set\",\n \"description\": + \"As this is not an insert in a strict sense (it supports uploading/setting + of a thumbnail for multiple videos, which doesn't result in creation of a + single resource), I use a custom verb here.\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.thumbnails.set\",\n \"response\": + {\n \"$ref\": \"ThumbnailSetResponse\"\n }\n }\n + \ }\n },\n \"comments\": {\n \"methods\": {\n \"list\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.comments.list\",\n \"parameters\": {\n + \ \"textFormat\": {\n \"location\": \"query\",\n \"description\": + \"The requested text format for the returned comments.\",\n \"default\": + \"html\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Returns the comments in HTML format. This is the default + value.\",\n \"Returns the comments in plain text format.\"\n + \ ],\n \"type\": \"string\",\n \"enum\": + [\n \"textFormatUnspecified\",\n \"html\",\n + \ \"plainText\"\n ]\n },\n \"parentId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Returns replies to the specified comment. + Note, currently YouTube features only one level of replies (ie replies to + top level comments). However replies to replies may be supported in the future.\"\n + \ },\n \"part\": {\n \"description\": \"The + *part* parameter specifies a comma-separated list of one or more comment resource + properties that the API response will include.\",\n \"required\": + true,\n \"location\": \"query\",\n \"repeated\": + true,\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"maximum\": \"100\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"default\": \"20\",\n \"type\": + \"integer\",\n \"location\": \"query\",\n \"format\": + \"uint32\",\n \"minimum\": \"1\"\n },\n \"id\": + {\n \"repeated\": true,\n \"description\": \"Returns + the comments with the given IDs for One Platform.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"path\": \"youtube/v3/comments\",\n + \ \"flatPath\": \"youtube/v3/comments\",\n \"response\": + {\n \"$ref\": \"CommentListResponse\"\n },\n \"httpMethod\": + \"GET\",\n \"description\": \"Retrieves a list of resources, possibly + filtered.\"\n },\n \"update\": {\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.comments.update\",\n \"response\": {\n + \ \"$ref\": \"Comment\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/comments\",\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\",\n + \ \"required\": true,\n \"repeated\": true\n }\n + \ },\n \"request\": {\n \"$ref\": \"Comment\"\n + \ },\n \"description\": \"Updates an existing resource.\"\n + \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"description\": \"Deletes a resource.\",\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/comments\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.delete\",\n + \ \"httpMethod\": \"DELETE\"\n },\n \"insert\": {\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"flatPath\": \"youtube/v3/comments\",\n \"response\": + {\n \"$ref\": \"Comment\"\n },\n \"request\": + {\n \"$ref\": \"Comment\"\n },\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"repeated\": + true,\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.comments.insert\",\n + \ \"path\": \"youtube/v3/comments\"\n },\n \"setModerationStatus\": + {\n \"id\": \"youtube.comments.setModerationStatus\",\n \"httpMethod\": + \"POST\",\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n + \ \"description\": \"Sets the moderation status of one or more comments.\",\n + \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"parameters\": + {\n \"banAuthor\": {\n \"default\": \"false\",\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"description\": + \"If set to true the author of the comment gets added to the ban list. This + means all future comments of the author will autmomatically be rejected. Only + valid in combination with STATUS_REJECTED.\"\n },\n \"moderationStatus\": + {\n \"description\": \"Specifies the requested moderation status. + Note, comments can be in statuses, which are not available through this call. + For example, this call does not allow to mark a comment as 'likely spam'. + Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, + MODERATION_STATUS_REJECTED.\",\n \"required\": true,\n \"enum\": + [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n + \ \"rejected\"\n ],\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"The comment + is available for public display.\",\n \"The comment is awaiting + review by a moderator.\",\n \"\",\n \"The comment + is unfit for display.\"\n ],\n \"type\": \"string\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"required\": true,\n + \ \"description\": \"Modifies the moderation status of the comments + with the given IDs\",\n \"repeated\": true\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n + \ ]\n },\n \"markAsSpam\": {\n \"id\": \"youtube.comments.markAsSpam\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": + \"Expresses the caller's opinion that one or more comments should be flagged + as spam.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n + \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"httpMethod\": + \"POST\",\n \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"required\": true,\n \"description\": + \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n + \ \"repeated\": true,\n \"type\": \"string\"\n }\n + \ }\n }\n }\n },\n \"i18nLanguages\": {\n \"methods\": + {\n \"list\": {\n \"id\": \"youtube.i18nLanguages.list\",\n + \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/i18nLanguages\",\n \"parameters\": {\n \"hl\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"default\": \"en_US\"\n },\n \"part\": + {\n \"repeated\": true,\n \"description\": \"The + *part* parameter specifies the i18nLanguage resource properties that the API + response will include. Set the parameter value to snippet.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n }\n }\n }\n }\n },\n \"membershipsLevels\": + {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves + a list of all pricing levels offered by a creator to the fans.\",\n \"httpMethod\": + \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/membershipsLevels\",\n \"flatPath\": + \"youtube/v3/membershipsLevels\",\n \"response\": {\n \"$ref\": + \"MembershipsLevelListResponse\"\n },\n \"id\": \"youtube.membershipsLevels.list\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"required\": + true,\n \"description\": \"The *part* parameter specifies the + membershipsLevel resource parts that the API response will include. Supported + values are id and snippet.\",\n \"type\": \"string\"\n }\n + \ }\n }\n }\n },\n \"channelBanners\": {\n \"methods\": + {\n \"insert\": {\n \"request\": {\n \"$ref\": + \"ChannelBannerResource\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"description\": + \"Unused, channel_id is currently derived from the security context of the + requestor.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube @@ -10188,12 +5835,151 @@ interactions: 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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.list\"\n },\n - \ \"bind\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": + for each separate channel.\"\n }\n },\n \"httpMethod\": + \"POST\",\n \"supportsMediaUpload\": true,\n \"id\": \"youtube.channelBanners.insert\",\n + \ \"mediaUpload\": {\n \"maxSize\": \"6291456\",\n \"accept\": + [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n + \ ],\n \"protocols\": {\n \"simple\": {\n + \ \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n + \ \"multipart\": true\n },\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n + \ }\n }\n },\n \"response\": {\n + \ \"$ref\": \"ChannelBannerResource\"\n },\n \"parameterOrder\": + [],\n \"path\": \"youtube/v3/channelBanners/insert\",\n \"flatPath\": + \"youtube/v3/channelBanners/insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n + \ ],\n \"description\": \"Inserts a new resource into this + collection.\"\n }\n }\n },\n \"channels\": {\n \"methods\": + {\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"description\": + \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/channels\",\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"id\": \"youtube.channels.update\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"request\": {\n \"$ref\": + \"Channel\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/channels\",\n \"response\": + {\n \"$ref\": \"Channel\"\n }\n },\n \"list\": + {\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"parameters\": {\n \"forUsername\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Return the channel associated with a YouTube username.\"\n },\n + \ \"maxResults\": {\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"type\": \"integer\",\n \"minimum\": + \"0\",\n \"maximum\": \"50\",\n \"format\": \"uint32\",\n + \ \"default\": \"5\",\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"hl\": {\n \"location\": \"query\",\n \"description\": + \"Stands for \\\"host language\\\". Specifies the localization language of + the metadata to be filled into snippet.localized. The field is filled with + the default metadata if there is no localization in the specified language. + The parameter value must be a language code included in the list returned + by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"type\": + \"string\"\n },\n \"categoryId\": {\n \"description\": + \"Return the channels within the specified guide category ID.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"description\": \"Return + the channels with the specified IDs.\"\n },\n \"mySubscribers\": + {\n \"description\": \"Return the channels subscribed to the + authenticated user\",\n \"type\": \"boolean\",\n \"location\": + \"query\"\n },\n \"mine\": {\n \"description\": + \"Return the ids of channels owned by the authenticated user.\",\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"managedByMe\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Return the channels managed by the authenticated + user.\"\n },\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"required\": true,\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n + \ },\n \"path\": \"youtube/v3/channels\",\n \"httpMethod\": + \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"id\": \"youtube.channels.list\",\n \"flatPath\": + \"youtube/v3/channels\"\n }\n }\n },\n \"subscriptions\": + {\n \"methods\": {\n \"delete\": {\n \"id\": \"youtube.subscriptions.delete\",\n + \ \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true\n }\n },\n \"description\": \"Deletes a + resource.\",\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"path\": \"youtube/v3/subscriptions\",\n \"httpMethod\": + \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/subscriptions\"\n },\n + \ \"insert\": {\n \"flatPath\": \"youtube/v3/subscriptions\",\n + \ \"path\": \"youtube/v3/subscriptions\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"Subscription\"\n },\n + \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": + \"youtube.subscriptions.insert\",\n \"httpMethod\": \"POST\",\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n }\n + \ }\n },\n \"list\": {\n \"response\": {\n + \ \"$ref\": \"SubscriptionListResponse\"\n },\n \"path\": + \"youtube/v3/subscriptions\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": + {\n \"pageToken\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"location\": + \"query\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return the subscriptions of the given channel owner.\"\n },\n + \ \"forChannelId\": {\n \"location\": \"query\",\n + \ \"description\": \"Return the subscriptions to the subset of + these channels that the authenticated user is subscribed to.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -10203,60 +5989,342 @@ interactions: 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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"Broadcast to bind to the stream\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"streamId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Stream to bind, if not set unbind - the current one.\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"parameterOrder\": [\n \"id\",\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"description\": \"Bind a broadcast - to a stream.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.bind\"\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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 + \"string\",\n \"location\": \"query\"\n },\n \"myRecentSubscribers\": + {\n \"type\": \"boolean\",\n \"location\": \"query\"\n + \ },\n \"mine\": {\n \"description\": \"Flag + for returning the subscriptions of the authenticated user.\",\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"order\": + {\n \"description\": \"The order of the returned subscriptions\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Sort + by relevance.\",\n \"Sort by order of activity.\",\n \"Sort + alphabetically.\"\n ],\n \"default\": \"relevance\",\n + \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n + \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n + \ ],\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"repeated\": + true,\n \"description\": \"Return the subscriptions with the + given IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"mySubscribers\": + {\n \"location\": \"query\",\n \"description\": + \"Return the subscribers of the given channel owner.\",\n \"type\": + \"boolean\"\n },\n \"maxResults\": {\n \"location\": + \"query\",\n \"type\": \"integer\",\n \"default\": + \"5\",\n \"format\": \"uint32\",\n \"minimum\": + \"0\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"maximum\": \"50\"\n },\n \"part\": {\n + \ \"location\": \"query\",\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively + for each separate channel.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"youtube.subscriptions.list\"\n }\n + \ }\n },\n \"commentThreads\": {\n \"methods\": {\n \"list\": + {\n \"httpMethod\": \"GET\",\n \"parameters\": {\n \"videoId\": + {\n \"description\": \"Returns the comment threads of the specified + video.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"maximum\": + \"100\",\n \"default\": \"20\",\n \"minimum\": \"1\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"required\": + true,\n \"description\": \"The *part* parameter specifies a comma-separated + list of one or more commentThread resource properties that the API response + will include.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"repeated\": true\n },\n \"id\": + {\n \"description\": \"Returns the comment threads with the given + IDs for Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"searchTerms\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Limits the returned comment threads to those + matching the specified key words. Not compatible with the 'id' filter.\"\n + \ },\n \"order\": {\n \"default\": \"time\",\n + \ \"enum\": [\n \"orderUnspecified\",\n \"time\",\n + \ \"relevance\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Order + by time.\",\n \"Order by relevance.\"\n ],\n \"location\": + \"query\"\n },\n \"moderationStatus\": {\n \"type\": + \"string\",\n \"default\": \"published\",\n \"description\": + \"Limits the returned comment threads to those with the specified moderation + status. Not compatible with the 'id' filter. Valid values: published, heldForReview, + likelySpam.\",\n \"enumDescriptions\": [\n \"The + comment is available for public display.\",\n \"The comment + is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"enum\": + [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n + \ \"rejected\"\n ],\n \"location\": + \"query\"\n },\n \"allThreadsRelatedToChannelId\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Returns the comment threads of all videos + of the channel and the channel comments as well.\"\n },\n \"channelId\": + {\n \"description\": \"Returns the comment threads for all the + channel comments (ie does not include comments left on videos).\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"textFormat\": + {\n \"description\": \"The requested text format for the returned + comments.\",\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Returns the comments in HTML format. + This is the default value.\",\n \"Returns the comments in plain + text format.\"\n ],\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ],\n + \ \"type\": \"string\",\n \"default\": \"html\"\n + \ },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n + \ },\n \"id\": \"youtube.commentThreads.list\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/commentThreads\"\n + \ },\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"response\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"request\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"description\": \"Inserts a new resource into this + collection.\",\n \"path\": \"youtube/v3/commentThreads\",\n \"id\": + \"youtube.commentThreads.insert\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"description\": + \"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.\",\n \"repeated\": true,\n \"type\": + \"string\"\n }\n }\n }\n }\n },\n \"abuseReports\": + {\n \"methods\": {\n \"insert\": {\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/abuseReports\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"response\": + {\n \"$ref\": \"AbuseReport\"\n },\n \"flatPath\": + \"youtube/v3/abuseReports\",\n \"httpMethod\": \"POST\",\n \"id\": + \"youtube.abuseReports.insert\",\n \"request\": {\n \"$ref\": + \"AbuseReport\"\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"description\": + \"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.\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n }\n }\n + \ }\n }\n },\n \"description\": \"The YouTube Data API v3 is an API + that provides access to YouTube data, such as videos, playlists, and channels.\",\n + \ \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"parameters\": + {\n \"quotaUser\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"prettyPrint\": {\n \"location\": + \"query\",\n \"description\": \"Returns response with indentations and + line breaks.\",\n \"default\": \"true\",\n \"type\": \"boolean\"\n + \ },\n \"upload_protocol\": {\n \"location\": \"query\",\n \"description\": + \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": + \"string\"\n },\n \"access_token\": {\n \"description\": \"OAuth + access token.\",\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"alt\": {\n \"location\": \"query\",\n \"default\": + \"json\",\n \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n + \ ],\n \"enumDescriptions\": [\n \"Responses with Content-Type + of application/json\",\n \"Media download with context-dependent Content-Type\",\n + \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n + \ \"description\": \"Data format for response.\",\n \"type\": \"string\"\n + \ },\n \"fields\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Selector specifying which fields to include + in a partial response.\"\n },\n \"key\": {\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"uploadType\": {\n + \ \"description\": \"Legacy upload protocol for media (e.g. \\\"media\\\", + \\\"multipart\\\").\",\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"callback\": {\n \"description\": \"JSONP\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"$.xgafv\": {\n \"type\": + \"string\",\n \"enum\": [\n \"1\",\n \"2\"\n ],\n + \ \"enumDescriptions\": [\n \"v1 error format\",\n \"v2 + error format\"\n ],\n \"location\": \"query\",\n \"description\": + \"V1 error format.\"\n },\n \"oauth_token\": {\n \"description\": + \"OAuth 2.0 token for the current user.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n + \ \"basePath\": \"\",\n \"ownerName\": \"Google\",\n \"batchPath\": \"batch\",\n + \ \"name\": \"youtube\",\n \"revision\": \"20230308\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n + \ \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": + {\n \"description\": \"View private information of your YouTube channel + relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": + {\n \"description\": \"Manage your YouTube videos\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": + {\n \"description\": \"See a list of your current active channel + members, their current level, and when they became a member\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": + \"See, edit, and permanently delete your YouTube videos, ratings, comments + and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": + {\n \"description\": \"View and manage your assets and associated + content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": + {\n \"description\": \"View your YouTube account\"\n },\n + \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": + \"Manage your YouTube account\"\n }\n }\n }\n },\n \"fullyEncodeReservedExpansion\": + true,\n \"version\": \"v3\",\n \"ownerDomain\": \"google.com\",\n \"kind\": + \"discovery#restDescription\"\n}\n" + headers: + Alt-Svc: + - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 + Cache-Control: + - private + Content-Encoding: + - gzip + Content-Type: + - application/json; charset=UTF-8 + Date: + - Thu, 09 Mar 2023 00:26:37 GMT + Server: + - scaffolding on HTTPServer2 + Transfer-Encoding: + - chunked + Vary: + - Origin + - X-Origin + - Referer + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - SAMEORIGIN + X-XSS-Protection: + - '0' + status: + code: 200 + message: OK + url: '' +- request: + body: null + headers: + Accept-Encoding: + - gzip + User-Agent: + - Aiogoogle Aiohttp (gzip) + method: GET + uri: https://youtube.googleapis.com/youtube/v3/search?part=snippet&q=%40Alex007&type=channel + response: + body: + string: "{\n \"kind\": \"youtube#searchListResponse\",\n \"etag\": \"ohaVu1yzE9TESNMipyD1Sec-_N4\",\n + \ \"regionCode\": \"LT\",\n \"pageInfo\": {\n \"totalResults\": 5,\n \"resultsPerPage\": + 3\n },\n \"items\": [\n {\n \"kind\": \"youtube#searchResult\",\n + \ \"etag\": \"jlHr8qwGug5pY0tlqO2MH4ywjzs\",\n \"id\": {\n \"kind\": + \"youtube#channel\",\n \"channelId\": \"UC3ptU7hyNeFlJdvQj2nZHJg\"\n + \ },\n \"snippet\": {\n \"publishedAt\": \"2011-10-25T18:32:10Z\",\n + \ \"channelId\": \"UC3ptU7hyNeFlJdvQj2nZHJg\",\n \"title\": \"Alex007SC2\",\n + \ \"description\": \"Alex007 - \u0433\u043E\u043B\u043E\u0441 StarCraft + II, \u043C\u0430\u0442\u0435\u043C\u0430\u0442\u0438\u043A, \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0442\u043E\u0440, + YouTube-\u0431\u043B\u043E\u0433\u0433\u0435\u0440 \u0438 \u0433\u0435\u0439\u043C-\u0434\u0438\u0437\u0430\u0439\u043D\u0435\u0440. + \u041D\u0430 \u044D\u0442\u043E\u043C \u043A\u0430\u043D\u0430\u043B\u0435 + \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043D\u0430\u0439\u0442\u0438 + ...\",\n \"thumbnails\": {\n \"default\": {\n \"url\": + \"https://yt3.ggpht.com/XRROgwcAhtZPrd7FWz0jLU3b1ii45tmP1SX9BvWrZOFl4iTDKoSruJtK0wm8q4Lf2PlVJmoGTw=s88-c-k-c0xffffffff-no-rj-mo\"\n + \ },\n \"medium\": {\n \"url\": \"https://yt3.ggpht.com/XRROgwcAhtZPrd7FWz0jLU3b1ii45tmP1SX9BvWrZOFl4iTDKoSruJtK0wm8q4Lf2PlVJmoGTw=s240-c-k-c0xffffffff-no-rj-mo\"\n + \ },\n \"high\": {\n \"url\": \"https://yt3.ggpht.com/XRROgwcAhtZPrd7FWz0jLU3b1ii45tmP1SX9BvWrZOFl4iTDKoSruJtK0wm8q4Lf2PlVJmoGTw=s800-c-k-c0xffffffff-no-rj-mo\"\n + \ }\n },\n \"channelTitle\": \"Alex007SC2\",\n \"liveBroadcastContent\": + \"upcoming\",\n \"publishTime\": \"2011-10-25T18:32:10Z\"\n }\n + \ },\n {\n \"kind\": \"youtube#searchResult\",\n \"etag\": + \"b-Ob8lM1x2Y6d9rbYor3glEW-cw\",\n \"id\": {\n \"kind\": \"youtube#channel\",\n + \ \"channelId\": \"UCsL7Gy8KZLJpbuwfNFmLAeA\"\n },\n \"snippet\": + {\n \"publishedAt\": \"2022-04-11T05:51:42Z\",\n \"channelId\": + \"UCsL7Gy8KZLJpbuwfNFmLAeA\",\n \"title\": \"ALEX 007\",\n \"description\": + \"HI FRIND,S WELCOME TO MY YOUTUBE CHANNEL Subscribe now Like Comment ...\",\n + \ \"thumbnails\": {\n \"default\": {\n \"url\": + \"https://yt3.ggpht.com/cTYY3a_CRI_PZkYaeb36YnGRZAXmG44JjNcvOip1NCULGLwMosQW1v-nBnup68sT6V38xMMfMg=s88-c-k-c0xffffffff-no-rj-mo\"\n + \ },\n \"medium\": {\n \"url\": \"https://yt3.ggpht.com/cTYY3a_CRI_PZkYaeb36YnGRZAXmG44JjNcvOip1NCULGLwMosQW1v-nBnup68sT6V38xMMfMg=s240-c-k-c0xffffffff-no-rj-mo\"\n + \ },\n \"high\": {\n \"url\": \"https://yt3.ggpht.com/cTYY3a_CRI_PZkYaeb36YnGRZAXmG44JjNcvOip1NCULGLwMosQW1v-nBnup68sT6V38xMMfMg=s800-c-k-c0xffffffff-no-rj-mo\"\n + \ }\n },\n \"channelTitle\": \"ALEX 007\",\n \"liveBroadcastContent\": + \"none\",\n \"publishTime\": \"2022-04-11T05:51:42Z\"\n }\n },\n + \ {\n \"kind\": \"youtube#searchResult\",\n \"etag\": \"Q_DVxyaoA4_tsHkOLbnpOrR9dNA\",\n + \ \"id\": {\n \"kind\": \"youtube#channel\",\n \"channelId\": + \"UCDJ3nE8-lZSxvIk2ASykJAw\"\n },\n \"snippet\": {\n \"publishedAt\": + \"2022-08-04T05:09:53Z\",\n \"channelId\": \"UCDJ3nE8-lZSxvIk2ASykJAw\",\n + \ \"title\": \"Alex007\",\n \"description\": \"\",\n \"thumbnails\": + {\n \"default\": {\n \"url\": \"https://yt3.ggpht.com/RxzvmjEjtk2IXWXRj2WfiPTnuUITLOpN-6cAu6bwZHOaZTiG6wzlx1ykmgk_WsXaKuCoID-eLg=s88-c-k-c0xffffffff-no-rj-mo\"\n + \ },\n \"medium\": {\n \"url\": \"https://yt3.ggpht.com/RxzvmjEjtk2IXWXRj2WfiPTnuUITLOpN-6cAu6bwZHOaZTiG6wzlx1ykmgk_WsXaKuCoID-eLg=s240-c-k-c0xffffffff-no-rj-mo\"\n + \ },\n \"high\": {\n \"url\": \"https://yt3.ggpht.com/RxzvmjEjtk2IXWXRj2WfiPTnuUITLOpN-6cAu6bwZHOaZTiG6wzlx1ykmgk_WsXaKuCoID-eLg=s800-c-k-c0xffffffff-no-rj-mo\"\n + \ }\n },\n \"channelTitle\": \"Alex007\",\n \"liveBroadcastContent\": + \"none\",\n \"publishTime\": \"2022-08-04T05:09:53Z\"\n }\n }\n + \ ]\n}\n" + headers: + Alt-Svc: + - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 + Cache-Control: + - private + Content-Encoding: + - gzip + Content-Type: + - application/json; charset=UTF-8 + Date: + - Thu, 09 Mar 2023 00:26:38 GMT + Server: + - scaffolding on HTTPServer2 + Transfer-Encoding: + - chunked + Vary: + - Origin + - X-Origin + - Referer + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - SAMEORIGIN + X-XSS-Protection: + - '0' + status: + code: 200 + message: OK + url: '' +- request: + body: null + headers: + Accept-Encoding: + - gzip + User-Agent: + - Aiogoogle Aiohttp (gzip) + method: GET + uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest + response: + body: + string: "{\n \"revision\": \"20230308\",\n \"description\": \"The YouTube + Data API v3 is an API that provides access to YouTube data, such as videos, + playlists, and channels.\",\n \"canonicalName\": \"YouTube\",\n \"name\": + \"youtube\",\n \"discoveryVersion\": \"v1\",\n \"title\": \"YouTube Data + API v3\",\n \"fullyEncodeReservedExpansion\": true,\n \"protocol\": \"rest\",\n + \ \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"resources\": {\n + \ \"i18nLanguages\": {\n \"methods\": {\n \"list\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies the i18nLanguage resource properties that + the API response will include. Set the parameter value to snippet.\"\n },\n + \ \"hl\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"default\": \"en_US\"\n }\n },\n + \ \"path\": \"youtube/v3/i18nLanguages\",\n \"id\": \"youtube.i18nLanguages.list\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"httpMethod\": + \"GET\"\n }\n }\n },\n \"videos\": {\n \"methods\": + {\n \"reportAbuse\": {\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n + \ \"parameterOrder\": [],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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. @@ -10265,74 +6333,81 @@ interactions: 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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"Broadcast to delete.\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"DELETE\",\n \"id\": - \"youtube.liveBroadcasts.delete\",\n \"description\": \"Delete a - given broadcast.\"\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new stream for the authenticated - user.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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 + owner.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"path\": \"youtube/v3/videos/reportAbuse\",\n + \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n + \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.videos.reportAbuse\",\n + \ \"description\": \"Report abuse for a video.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ },\n \"update\": {\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"request\": {\n \"$ref\": \"Video\"\n },\n + \ \"id\": \"youtube.videos.update\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/videos\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Updates an existing resource.\",\n + \ \"httpMethod\": \"PUT\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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 perform actions on behalf of the channel specified - in the parameter value, without having to provide authentication credentials - for each separate channel.\"\n },\n \"onBehalfOfContentOwner\": + to authenticate once and get access to all their video and channel data, without + having to provide authentication credentials for each individual channel. + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"repeated\": true\n }\n },\n + \ \"response\": {\n \"$ref\": \"Video\"\n }\n + \ },\n \"insert\": {\n \"description\": \"Inserts a + new resource into this collection.\",\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": + {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/videos\"\n + \ },\n \"resumable\": {\n \"multipart\": + true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n + \ }\n },\n \"accept\": [\n \"video/*\",\n + \ \"application/octet-stream\"\n ],\n \"maxSize\": + \"274877906944\"\n },\n \"response\": {\n \"$ref\": + \"Video\"\n },\n \"supportsMediaUpload\": true,\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"notifySubscribers\": + {\n \"type\": \"boolean\",\n \"description\": \"Notify + the channel subscribers about the new video. As default, the notification + is enabled.\",\n \"default\": \"true\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"insertCuepoint\": - {\n \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"description\": - \"Insert cuepoints in a broadcast\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"description\": \"This - parameter can only be used in a properly authorized request. *Note:* This - parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* + \"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 @@ -10344,193 +6419,11 @@ interactions: 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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Broadcast to insert ads to, or - equivalently `external_video_id` for internal use.\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [],\n \"path\": - \"youtube/v3/liveBroadcasts/cuepoint\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"transition\": {\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Broadcast to transition.\",\n \"required\": true,\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"broadcastStatus\": - {\n \"enum\": [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"description\": \"The status to - which the broadcast is going to transition.\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Transition a broadcast to a given status.\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"update\": {\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"description\": \"Updates an existing - broadcast for the authenticated user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"PUT\",\n \"id\": \"youtube.liveBroadcasts.update\"\n }\n - \ }\n },\n \"captions\": {\n \"methods\": {\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/captions\",\n - \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\"\n },\n \"videoId\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Returns - the captions for the specified video.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"Returns - the captions with the given IDs for Stubby or Apiary.\"\n },\n - \ \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"id\": \"youtube.captions.list\"\n },\n \"download\": - {\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/captions/{id}\",\n \"parameters\": - {\n \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is be on behalf of\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"tfmt\": - {\n \"location\": \"query\",\n \"description\": - \"Convert the captions into this format. Supported options are sbv, srt, and - vtt.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"path\",\n - \ \"description\": \"The ID of the caption track to download, - required for One Platform.\",\n \"required\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"tlang\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"tlang is the language code; machine translate - the captions into this language.\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"description\": \"Downloads a caption track.\",\n \"useMediaDownloadService\": - true,\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"supportsMediaDownload\": true,\n \"id\": \"youtube.captions.download\"\n - \ },\n \"delete\": {\n \"id\": \"youtube.captions.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/captions\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"onBehalfOf\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": + for each separate channel.\",\n \"type\": \"string\"\n },\n + \ \"autoLevels\": {\n \"description\": \"Should auto-levels + be applied to the upload.\",\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"*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 @@ -10538,66 +6431,17 @@ interactions: content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"DELETE\"\n },\n \"update\": {\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"id\": \"youtube.captions.update\",\n - \ \"supportsMediaUpload\": true,\n \"path\": \"youtube/v3/captions\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n }\n - \ },\n \"maxSize\": \"104857600\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Updates - an existing resource.\",\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\",\n \"location\": - \"query\"\n },\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n }\n }\n },\n - \ \"insert\": {\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.captions.insert\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the caption - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"repeated\": true\n },\n \"sync\": - {\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": + individual channel. The CMS account that the user authenticates with must + be linked to the specified YouTube content owner.\"\n },\n \"stabilize\": + {\n \"location\": \"query\",\n \"description\": + \"Should stabilize be applied to the upload.\",\n \"type\": \"boolean\"\n + \ }\n },\n \"request\": {\n \"$ref\": + \"Video\"\n },\n \"id\": \"youtube.videos.insert\",\n \"path\": + \"youtube/v3/videos\",\n \"httpMethod\": \"POST\"\n },\n \"delete\": + {\n \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.videos.delete\",\n \"flatPath\": + \"youtube/v3/videos\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -10607,82 +6451,214 @@ interactions: once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"mediaUpload\": {\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ }\n },\n \"maxSize\": \"104857600\"\n - \ },\n \"path\": \"youtube/v3/captions\",\n \"supportsMediaUpload\": - true,\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\"\n }\n }\n },\n - \ \"i18nRegions\": {\n \"methods\": {\n \"list\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"hl\": {\n - \ \"type\": \"string\",\n \"default\": \"en_US\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the i18nRegion - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"path\": \"youtube/v3/i18nRegions\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/i18nRegions\",\n \"response\": - {\n \"$ref\": \"I18nRegionListResponse\"\n }\n }\n - \ }\n },\n \"videos\": {\n \"methods\": {\n \"delete\": - {\n \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"required\": true,\n \"type\": + YouTube content owner.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true\n }\n },\n \"description\": \"Deletes a + resource.\",\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"path\": \"youtube/v3/videos\"\n },\n \"getRating\": + {\n \"id\": \"youtube.videos.getRating\",\n \"description\": + \"Retrieves the ratings that the authorized user gave to a list of specified + videos.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n + \ },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/videos/getRating\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\",\n \"repeated\": true\n }\n + \ },\n \"path\": \"youtube/v3/videos/getRating\"\n },\n + \ \"list\": {\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"parameters\": {\n \"id\": {\n + \ \"repeated\": true,\n \"description\": \"Return + videos with the given ids.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"hl\": {\n \"description\": + \"Stands for \\\"host language\\\". Specifies the localization language of + the metadata to be filled into snippet.localized. The field is filled with + the default metadata if there is no localization in the specified language. + The parameter value must be a language code included in the list returned + by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"required\": true,\n \"description\": \"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.\",\n + \ \"location\": \"query\",\n \"repeated\": true,\n + \ \"type\": \"string\"\n },\n \"maxResults\": + {\n \"location\": \"query\",\n \"minimum\": \"1\",\n + \ \"format\": \"uint32\",\n \"type\": \"integer\",\n + \ \"description\": \"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.\",\n + \ \"default\": \"5\",\n \"maximum\": \"50\"\n },\n + \ \"locale\": {\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"videoCategoryId\": + {\n \"description\": \"Use chart that is specific to the specified + video category\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"default\": \"0\"\n },\n \"maxWidth\": + {\n \"maximum\": \"8192\",\n \"location\": \"query\",\n + \ \"type\": \"integer\",\n \"minimum\": \"72\",\n + \ \"description\": \"Return the player with maximum height specified + in\",\n \"format\": \"int32\"\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"myRating\": {\n \"enum\": + [\n \"none\",\n \"like\",\n \"dislike\"\n + \ ],\n \"description\": \"Return videos liked/disliked + by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"The + entity is liked.\",\n \"The entity is disliked.\"\n ]\n + \ },\n \"maxHeight\": {\n \"maximum\": \"8192\",\n + \ \"type\": \"integer\",\n \"minimum\": \"72\",\n + \ \"format\": \"int32\",\n \"location\": \"query\"\n + \ },\n \"chart\": {\n \"location\": \"query\",\n + \ \"enum\": [\n \"chartUnspecified\",\n \"mostPopular\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Return the most popular videos + for the specified content region and video category.\"\n ],\n + \ \"description\": \"Return the videos that are in the specified + chart.\"\n },\n \"regionCode\": {\n \"description\": + \"Use a chart that is specific to the specified region\",\n \"type\": \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/videos\",\n \"httpMethod\": \"DELETE\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"flatPath\": \"youtube/v3/videos\",\n \"httpMethod\": + \"GET\",\n \"path\": \"youtube/v3/videos\",\n \"id\": \"youtube.videos.list\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.delete\",\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"update\": {\n \"path\": - \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"VideoListResponse\"\n }\n },\n + \ \"rate\": {\n \"path\": \"youtube/v3/videos/rate\",\n \"httpMethod\": + \"POST\",\n \"parameters\": {\n \"rating\": {\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"required\": true,\n + \ \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ]\n },\n \"id\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n }\n },\n \"flatPath\": + \"youtube/v3/videos/rate\",\n \"parameterOrder\": [\n \"id\",\n + \ \"rating\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"description\": \"Updates an existing resource.\",\n \"response\": - {\n \"$ref\": \"Video\"\n },\n \"request\": {\n - \ \"$ref\": \"Video\"\n },\n \"id\": \"youtube.videos.update\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ ],\n \"description\": \"Adds a like or dislike rating to + a video or removes a rating from a video.\",\n \"id\": \"youtube.videos.rate\"\n + \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": + {\n \"methods\": {\n \"updateCommentThreads\": {\n \"flatPath\": + \"youtube/v3/commentThreads\",\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n + \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": + \"CommentThread\"\n },\n \"path\": \"youtube/v3/commentThreads\",\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": + \"string\",\n \"description\": \"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.\"\n }\n },\n \"description\": + \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": + \"CommentThread\"\n },\n \"parameterOrder\": []\n + \ }\n }\n }\n }\n },\n \"activities\": + {\n \"methods\": {\n \"list\": {\n \"response\": {\n + \ \"$ref\": \"ActivityListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/activities\",\n + \ \"path\": \"youtube/v3/activities\",\n \"httpMethod\": + \"GET\",\n \"parameters\": {\n \"mine\": {\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"type\": \"string\",\n \ \"repeated\": true,\n \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + 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.\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"publishedBefore\": + {\n \"format\": \"google-datetime\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"format\": \"uint32\",\n \"location\": \"query\",\n + \ \"minimum\": \"0\",\n \"maximum\": \"50\",\n \"default\": + \"5\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"type\": \"integer\"\n },\n \"regionCode\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"home\": + {\n \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"publishedAfter\": {\n \"type\": + \"string\",\n \"format\": \"google-datetime\",\n \"location\": + \"query\"\n }\n },\n \"id\": \"youtube.activities.list\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ]\n }\n }\n },\n \"watermarks\": {\n \"methods\": + {\n \"set\": {\n \"mediaUpload\": {\n \"protocols\": + {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n + \ \"multipart\": true\n },\n \"simple\": + {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": + true\n }\n },\n \"maxSize\": \"10485760\",\n + \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ]\n },\n + \ \"parameters\": {\n \"channelId\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*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.\"\n }\n },\n + \ \"path\": \"youtube/v3/watermarks/set\",\n \"supportsMediaUpload\": + true,\n \"description\": \"Allows upload of watermark image and setting + it for a channel.\",\n \"parameterOrder\": [\n \"channelId\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"httpMethod\": + \"POST\",\n \"request\": {\n \"$ref\": \"InvideoBranding\"\n + \ },\n \"id\": \"youtube.watermarks.set\"\n },\n \"unset\": + {\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"id\": + \"youtube.watermarks.unset\",\n \"httpMethod\": \"POST\",\n \"path\": + \"youtube/v3/watermarks/unset\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"channelId\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n \ \"description\": \"*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 @@ -10690,14 +6666,183 @@ interactions: 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 + provide authentication credentials for each individual channel. The CMS account + that the user authenticates with must be linked to the specified YouTube content + owner.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n }\n },\n \"description\": \"Allows removal + of channel watermark.\"\n }\n }\n },\n \"subscriptions\": + {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/subscriptions\",\n + \ \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"required\": true,\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Return + the subscriptions of the given channel owner.\"\n },\n \"myRecentSubscribers\": + {\n \"type\": \"boolean\",\n \"location\": \"query\"\n + \ },\n \"order\": {\n \"description\": \"The + order of the returned subscriptions\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n + \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n + \ ],\n \"location\": \"query\",\n \"default\": + \"relevance\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Sort by relevance.\",\n \"Sort by order of + activity.\",\n \"Sort alphabetically.\"\n ]\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"forChannelId\": {\n \"description\": \"Return the + subscriptions to the subset of these channels that the authenticated user + is subscribed to.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"mine\": {\n \"description\": + \"Flag for returning the subscriptions of the authenticated user.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"maxResults\": + {\n \"minimum\": \"0\",\n \"type\": \"integer\",\n + \ \"maximum\": \"50\",\n \"location\": \"query\",\n + \ \"format\": \"uint32\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"default\": \"5\"\n },\n + \ \"mySubscribers\": {\n \"description\": \"Return + the subscribers of the given channel owner.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"description\": \"Return the subscriptions with the given IDs + for Stubby or Apiary.\",\n \"location\": \"query\"\n },\n + \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n + \ \"location\": \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"reportAbuse\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [],\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"GET\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"id\": + \"youtube.subscriptions.list\",\n \"response\": {\n \"$ref\": + \"SubscriptionListResponse\"\n }\n },\n \"insert\": + {\n \"path\": \"youtube/v3/subscriptions\",\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"description\": + \"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.\",\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"request\": {\n \"$ref\": \"Subscription\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts + a new resource into this collection.\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n + \ \"id\": \"youtube.subscriptions.insert\",\n \"response\": + {\n \"$ref\": \"Subscription\"\n }\n },\n \"delete\": + {\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"path\": + \"youtube/v3/subscriptions\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.subscriptions.delete\",\n + \ \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"description\": \"Deletes a resource.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n }\n }\n },\n \"liveChatMessages\": {\n \"methods\": + {\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": + \"Deletes a chat message.\",\n \"id\": \"youtube.liveChatMessages.delete\",\n + \ \"path\": \"youtube/v3/liveChat/messages\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\"\n },\n + \ \"list\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n + \ },\n \"parameterOrder\": [\n \"liveChatId\",\n + \ \"part\"\n ],\n \"id\": \"youtube.liveChatMessages.list\",\n + \ \"parameters\": {\n \"profileImageSize\": {\n \"minimum\": + \"16\",\n \"maximum\": \"720\",\n \"location\": + \"query\",\n \"format\": \"uint32\",\n \"description\": + \"Specifies the size of the profile image that should be returned for each + user.\",\n \"type\": \"integer\"\n },\n \"part\": + {\n \"required\": true,\n \"description\": \"The + *part* parameter specifies the liveChatComment resource parts that the API + response will include. Supported values are id and snippet.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"maxResults\": + {\n \"maximum\": \"2000\",\n \"type\": \"integer\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"format\": + \"uint32\",\n \"minimum\": \"200\",\n \"location\": + \"query\",\n \"default\": \"500\"\n },\n \"liveChatId\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"description\": \"The id of the live chat for which comments + should be returned.\",\n \"location\": \"query\"\n },\n + \ \"hl\": {\n \"description\": \"Specifies the localization + language in which the system messages should be returned.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true,\n \"description\": \"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.\"\n }\n },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"path\": \"youtube/v3/liveChat/messages\",\n \"response\": + {\n \"$ref\": \"LiveChatMessage\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.liveChatMessages.insert\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n }\n + \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"update\": + {\n \"path\": \"youtube/v3/captions\",\n \"httpMethod\": + \"PUT\",\n \"id\": \"youtube.captions.update\",\n \"parameters\": + {\n \"onBehalfOf\": {\n \"location\": \"query\",\n + \ \"description\": \"ID of the Google+ Page for the channel that + the request is on behalf of.\",\n \"type\": \"string\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n + \ },\n \"sync\": {\n \"location\": \"query\",\n + \ \"description\": \"Extra parameter to allow automatically syncing + the uploaded caption/transcript with the audio.\",\n \"type\": + \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube @@ -10705,39 +6850,30 @@ interactions: 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.\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Report abuse for a video.\",\n \"request\": - {\n \"$ref\": \"VideoAbuseReport\"\n },\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\",\n \"id\": \"youtube.videos.reportAbuse\",\n - \ \"httpMethod\": \"POST\"\n },\n \"insert\": {\n \"flatPath\": - \"youtube/v3/videos\",\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.videos.insert\",\n \"parameters\": {\n \"autoLevels\": - {\n \"type\": \"boolean\",\n \"description\": \"Should - auto-levels be applied to the upload.\",\n \"location\": \"query\"\n - \ },\n \"notifySubscribers\": {\n \"location\": - \"query\",\n \"description\": \"Notify the channel subscribers - about the new video. As default, the notification is enabled.\",\n \"type\": - \"boolean\",\n \"default\": \"true\"\n },\n \"stabilize\": - {\n \"location\": \"query\",\n \"description\": - \"Should stabilize be applied to the upload.\",\n \"type\": \"boolean\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n }\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Updates an existing resource.\",\n \"response\": + {\n \"$ref\": \"Caption\"\n },\n \"mediaUpload\": + {\n \"protocols\": {\n \"resumable\": {\n \"path\": + \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": + true\n },\n \"simple\": {\n \"path\": + \"/upload/youtube/v3/captions\",\n \"multipart\": true\n }\n + \ },\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"flatPath\": \"youtube/v3/captions\",\n \"request\": {\n + \ \"$ref\": \"Caption\"\n },\n \"supportsMediaUpload\": + true\n },\n \"delete\": {\n \"id\": \"youtube.captions.delete\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": + \"youtube/v3/captions\",\n \"description\": \"Deletes a resource.\",\n + \ \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"*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 @@ -10745,88 +6881,138 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"supportsMediaUpload\": true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\"\n },\n + \ \"onBehalfOf\": {\n \"description\": \"ID of the + Google+ Page for the channel that the request is be on behalf of\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"httpMethod\": + \"DELETE\"\n },\n \"insert\": {\n \"mediaUpload\": + {\n \"protocols\": {\n \"simple\": {\n \"multipart\": + true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n + \ \"resumable\": {\n \"multipart\": true,\n \"path\": + \"/resumable/upload/youtube/v3/captions\"\n }\n },\n + \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n + \ },\n \"supportsMediaUpload\": true,\n \"path\": + \"youtube/v3/captions\",\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"The *part* parameter specifies the caption + resource parts that the API response will include. Set the parameter value + to snippet.\",\n \"type\": \"string\",\n \"repeated\": + true\n },\n \"onBehalfOf\": {\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\",\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\"\n },\n + \ \"sync\": {\n \"type\": \"boolean\",\n \"location\": + \"query\",\n \"description\": \"Extra parameter to allow automatically + syncing the uploaded caption/transcript with the audio.\"\n }\n + \ },\n \"request\": {\n \"$ref\": \"Caption\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"mediaUpload\": - {\n \"maxSize\": \"274877906944\",\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/videos\"\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n + \ \"flatPath\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.insert\",\n \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/videos\"\n },\n \"getRating\": - {\n \"id\": \"youtube.videos.getRating\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/videos/getRating\",\n - \ \"path\": \"youtube/v3/videos/getRating\",\n \"response\": - {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"description\": - \"Retrieves the ratings that the authorized user gave to a list of specified - videos.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ]\n - \ },\n \"list\": {\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"id\": \"youtube.videos.list\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"VideoListResponse\"\n },\n \"path\": \"youtube/v3/videos\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"Caption\"\n },\n \"httpMethod\": + \"POST\"\n },\n \"list\": {\n \"response\": {\n \"$ref\": + \"CaptionListResponse\"\n },\n \"path\": \"youtube/v3/captions\",\n + \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.captions.list\",\n + \ \"parameters\": {\n \"videoId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Returns the captions for the specified video.\",\n \"required\": + true\n },\n \"id\": {\n \"description\": + \"Returns the captions with the given IDs for Stubby or Apiary.\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\"\n },\n + \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n + \ \"type\": \"string\"\n },\n \"part\": + {\n \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"required\": true\n }\n + \ },\n \"parameterOrder\": [\n \"part\",\n \"videoId\"\n + \ ],\n \"flatPath\": \"youtube/v3/captions\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\"\n },\n \"download\": {\n \"id\": + \"youtube.captions.download\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"useMediaDownloadService\": true,\n \"httpMethod\": \"GET\",\n + \ \"parameters\": {\n \"tlang\": {\n \"location\": + \"query\",\n \"description\": \"tlang is the language code; machine + translate the captions into this language.\",\n \"type\": \"string\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n + \ \"required\": true,\n \"location\": \"path\",\n + \ \"description\": \"The ID of the caption track to download, + required for One Platform.\"\n },\n \"tfmt\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Convert the captions into this format. Supported options are sbv, srt, and + vtt.\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\"\n },\n + \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\",\n \"type\": \"string\"\n }\n },\n \"path\": + \"youtube/v3/captions/{id}\",\n \"supportsMediaDownload\": true,\n + \ \"description\": \"Downloads a caption track.\",\n \"flatPath\": + \"youtube/v3/captions/{id}\",\n \"parameterOrder\": [\n \"id\"\n + \ ]\n }\n }\n },\n \"videoCategories\": {\n \"methods\": + {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"id\": + \"youtube.videoCategories.list\",\n \"response\": {\n \"$ref\": + \"VideoCategoryListResponse\"\n },\n \"flatPath\": \"youtube/v3/videoCategories\",\n + \ \"path\": \"youtube/v3/videoCategories\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"myRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"description\": \"Return videos - liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": - true\n },\n \"maxHeight\": {\n \"minimum\": - \"72\",\n \"maximum\": \"8192\",\n \"location\": - \"query\",\n \"format\": \"int32\",\n \"type\": - \"integer\"\n },\n \"regionCode\": {\n \"description\": - \"Use a chart that is specific to the specified region\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxWidth\": - {\n \"minimum\": \"72\",\n \"format\": \"int32\",\n - \ \"maximum\": \"8192\",\n \"description\": \"Return - the player with maximum height specified in\",\n \"type\": \"integer\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + \ \"parameters\": {\n \"hl\": {\n \"location\": + \"query\",\n \"default\": \"en-US\",\n \"type\": + \"string\"\n },\n \"regionCode\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"description\": \"Returns the video categories with the + given IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"repeated\": true\n + \ },\n \"part\": {\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"required\": true,\n \"location\": + \"query\",\n \"description\": \"The *part* parameter specifies + the videoCategory resource properties that the API response will include. + Set the parameter value to snippet.\"\n }\n }\n }\n + \ }\n },\n \"playlistItems\": {\n \"methods\": {\n \"insert\": + {\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/playlistItems\",\n \"httpMethod\": \"POST\",\n \"id\": + \"youtube.playlistItems.insert\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -10837,156 +7023,122 @@ interactions: provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"hl\": {\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"minimum\": \"1\",\n \"format\": \"uint32\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"Return - videos with the given ids.\",\n \"type\": \"string\"\n },\n - \ \"chart\": {\n \"location\": \"query\",\n \"enum\": - [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"description\": - \"Return the videos that are in the specified chart.\",\n \"type\": - \"string\"\n },\n \"videoCategoryId\": {\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"default\": - \"0\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"locale\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n }\n },\n - \ \"rate\": {\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ],\n \"description\": \"Adds a - like or dislike rating to a video or removes a rating from a video.\",\n \"parameters\": - {\n \"rating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"none\",\n \"like\",\n \"dislike\"\n - \ ]\n },\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \"string\"\n },\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\",\n + \ \"required\": true\n }\n },\n \"response\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"description\": + \"Inserts a new resource into this collection.\",\n \"flatPath\": + \"youtube/v3/playlistItems\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos/rate\",\n \"id\": - \"youtube.videos.rate\",\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"search\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ ]\n },\n \"delete\": {\n \"id\": \"youtube.playlistItems.delete\",\n + \ \"description\": \"Deletes a resource.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/search\",\n \"parameters\": - {\n \"locationRadius\": {\n \"description\": \"Filter - on distance from the location (specified above).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"q\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Textual search terms to match.\"\n },\n - \ \"eventType\": {\n \"type\": \"string\",\n \"description\": - \"Filter on the livestream status of the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n - \ },\n \"pageToken\": {\n \"description\": + \ \"path\": \"youtube/v3/playlistItems\",\n \"httpMethod\": + \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"id\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"flatPath\": + \"youtube/v3/playlistItems\"\n },\n \"list\": {\n \"path\": + \"youtube/v3/playlistItems\",\n \"response\": {\n \"$ref\": + \"PlaylistItemListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"maxResults\": + {\n \"default\": \"5\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"location\": \"query\",\n \"maximum\": + \"50\",\n \"minimum\": \"0\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n + \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"forMine\": - {\n \"description\": \"Search for the private videos of the authenticated - user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"safeSearch\": {\n \"enum\": - [\n \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Indicates - whether the search results should include restricted content as well as standard - content.\",\n \"default\": \"moderate\",\n \"enumDescriptions\": - [\n \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"location\": - \"query\"\n },\n \"publishedBefore\": {\n \"type\": - \"string\",\n \"description\": \"Filter on resources published - before this date.\",\n \"location\": \"query\",\n \"format\": - \"google-datetime\"\n },\n \"videoSyndicated\": {\n - \ \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"description\": \"Filter on syndicated videos.\"\n },\n - \ \"relatedToVideoId\": {\n \"type\": \"string\",\n - \ \"description\": \"Search related to a resource.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"description\": \"The *maxResults* parameter - specifies the maximum number of items that should be returned in the result - set.\",\n \"maximum\": \"50\",\n \"minimum\": \"0\",\n - \ \"location\": \"query\",\n \"default\": \"5\",\n - \ \"format\": \"uint32\"\n },\n \"videoDefinition\": - {\n \"description\": \"Filter on the definition of the videos.\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"forDeveloper\": - {\n \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"videoEmbeddable\": - {\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"description\": \"Filter on embeddable videos.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos, embeddable or not.\",\n \"Only retrieve embeddable - videos.\"\n ],\n \"location\": \"query\"\n },\n - \ \"relevanceLanguage\": {\n \"description\": \"Return - results relevant to this language.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"channelType\": - {\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"description\": - \"Add a filter on the channel search.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"videoLicense\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"description\": - \"Filter on the license of the videos.\",\n \"type\": \"string\"\n - \ },\n \"videoDimension\": {\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"location\": \"query\",\n \"enum\": - [\n \"any\",\n \"2d\",\n \"3d\"\n - \ ],\n \"description\": \"Filter on 3d videos.\",\n - \ \"type\": \"string\"\n },\n \"publishedAfter\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on resources published after this date.\",\n \"format\": \"google-datetime\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + \"string\"\n },\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"Return the playlist items associated + with the given video ID.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"playlistId\": + {\n \"type\": \"string\",\n \"description\": \"Return + the playlist items within the given playlist.\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Retrieves a list + of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.playlistItems.list\",\n \"httpMethod\": + \"GET\"\n },\n \"update\": {\n \"parameters\": {\n + \ \"part\": {\n \"repeated\": true,\n \"required\": + true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"id\": \"youtube.playlistItems.update\"\n + \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": + {\n \"delete\": {\n \"description\": \"Delete a given broadcast.\",\n + \ \"id\": \"youtube.liveBroadcasts.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -10997,125 +7149,60 @@ interactions: provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"topicId\": {\n \"location\": + \"query\"\n },\n \"id\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"Restrict results to a particular topic.\"\n },\n \"regionCode\": - {\n \"description\": \"Display the content as seen by viewers - in this country.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"order\": {\n \"default\": - \"relevance\",\n \"location\": \"query\",\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"description\": \"Sort order of the results.\",\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"type\": - \"string\"\n },\n \"videoDuration\": {\n \"enum\": - [\n \"videoDurationUnspecified\",\n \"any\",\n - \ \"short\",\n \"medium\",\n \"long\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter video search results based on their duration. - This is the default value.\",\n \"Only include videos that - are less than four minutes long.\",\n \"Only include videos - that are between four and 20 minutes long (inclusive).\",\n \"Only - include videos longer than 20 minutes.\"\n ],\n \"location\": - \"query\",\n \"description\": \"Filter on the duration of the - videos.\",\n \"type\": \"string\"\n },\n \"videoCategoryId\": - {\n \"description\": \"Filter on videos in a specific category.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"forContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Search owned by a content owner.\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on resources belonging to this channelId.\"\n - \ },\n \"videoCaption\": {\n \"location\": - \"query\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"description\": \"Filter on the presence - of captions on the videos.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ]\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": - true\n },\n \"videoType\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"description\": \"Filter on videos of a specific - type.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"type\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"Restrict results to a particular set - of resource types from One Platform.\"\n },\n \"location\": + \"Broadcast to delete.\",\n \"required\": true\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n },\n \"path\": + \"youtube/v3/liveBroadcasts\"\n },\n \"bind\": {\n \"description\": + \"Bind a broadcast to a stream.\",\n \"id\": \"youtube.liveBroadcasts.bind\",\n + \ \"parameterOrder\": [\n \"id\",\n \"part\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n + \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameters\": + {\n \"id\": {\n \"description\": \"Broadcast to bind + to the stream\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true\n },\n \"streamId\": {\n \"location\": \"query\",\n \"description\": - \"Filter on location of the video\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.search.list\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of search resources\",\n - \ \"path\": \"youtube/v3/search\",\n \"response\": {\n \"$ref\": - \"SearchListResponse\"\n }\n }\n }\n },\n \"playlists\": - {\n \"methods\": {\n \"insert\": {\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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 + \"Stream to bind, if not set unbind the current one.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.playlists.insert\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/playlists\",\n \"description\": \"Inserts a new resource - into this collection.\",\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/playlists\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n }\n },\n \"update\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"id\": \"youtube.playlists.update\",\n - \ \"description\": \"Updates an existing resource.\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"path\": \"youtube/v3/playlists\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": + for each separate channel.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"description\": + \"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.\",\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"required\": true\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -11125,22 +7212,10 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ }\n },\n \"delete\": {\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlists.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/playlists\",\n + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n }\n + \ },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter @@ -11151,53 +7226,22 @@ interactions: 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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a resource.\"\n },\n - \ \"list\": {\n \"path\": \"youtube/v3/playlists\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"repeated\": true\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"description\": - \"Return the playlists owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"hl\": - {\n \"description\": \"Return content in specified language\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"location\": \"query\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlists owned by the specified channel ID.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": + owner.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": \"This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* @@ -11212,35 +7256,161 @@ interactions: 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.\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.playlists.list\",\n \"scopes\": + for each separate channel.\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Updates + an existing broadcast for the authenticated user.\",\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n + \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"httpMethod\": \"PUT\",\n \"id\": \"youtube.liveBroadcasts.update\"\n + \ },\n \"insert\": {\n \"id\": \"youtube.liveBroadcasts.insert\",\n + \ \"description\": \"Inserts a new stream for the authenticated user.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"required\": + true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"transition\": + {\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n + \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"part\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"required\": true,\n + \ \"type\": \"string\"\n },\n \"id\": {\n + \ \"type\": \"string\",\n \"description\": \"Broadcast + to transition.\",\n \"location\": \"query\",\n \"required\": + true\n },\n \"broadcastStatus\": {\n \"required\": + true,\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Start testing the broadcast. YouTube + transmits video to the broadcast's monitor stream. Note that you can only + transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream + property is set to true.\\\",\",\n \"Return only persistent + broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting + video.\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"statusUnspecified\",\n \"testing\",\n + \ \"live\",\n \"complete\"\n ],\n + \ \"description\": \"The status to which the broadcast is going + to transition.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n + \ },\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n + \ \"description\": \"Transition a broadcast to a given status.\",\n + \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n + \ \"part\"\n ]\n },\n \"insertCuepoint\": + {\n \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n + \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n + \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"description\": + \"Insert cuepoints in a broadcast\",\n \"httpMethod\": \"POST\",\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"parameterOrder\": + [],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"repeated\": + true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"id\": {\n \"location\": \"query\",\n \"description\": + \"Broadcast to insert ads to, or equivalently `external_video_id` for internal + use.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlists\",\n \"response\": - {\n \"$ref\": \"PlaylistListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"i18nLanguages\": - {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/i18nLanguages\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"hl\": - {\n \"default\": \"en_US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the i18nLanguage - resource properties that the API response will include. Set the parameter - value to snippet.\"\n }\n }\n }\n }\n },\n - \ \"watermarks\": {\n \"methods\": {\n \"set\": {\n \"supportsMediaUpload\": - true,\n \"flatPath\": \"youtube/v3/watermarks/set\",\n \"path\": - \"youtube/v3/watermarks/set\",\n \"parameters\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ },\n \"list\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n + \ \"parameters\": {\n \"maxResults\": {\n \"maximum\": + \"50\",\n \"format\": \"uint32\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"location\": \"query\",\n + \ \"type\": \"integer\",\n \"minimum\": \"0\",\n + \ \"default\": \"5\"\n },\n \"mine\": {\n + \ \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -11250,147 +7420,254 @@ interactions: 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.\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"description\": \"Allows upload of watermark image and setting - it for a channel.\",\n \"request\": {\n \"$ref\": \"InvideoBranding\"\n - \ },\n \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\",\n \"protocols\": - {\n \"resumable\": {\n \"multipart\": true,\n - \ \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"id\": \"youtube.watermarks.set\"\n },\n \"unset\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"channelId\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"description\": \"Allows - removal of channel watermark.\",\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/watermarks/unset\",\n \"id\": \"youtube.watermarks.unset\",\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"path\": \"youtube/v3/watermarks/unset\"\n }\n }\n - \ },\n \"membershipsLevels\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"description\": \"Retrieves a list of all pricing - levels offered by a creator to the fans.\",\n \"httpMethod\": \"GET\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"id\": \"youtube.membershipsLevels.list\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the membershipsLevel resource parts that the API - response will include. Supported values are id and snippet.\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/membershipsLevels\"\n - \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n - \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"description\": \"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.\"\n },\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\",\n \"description\": + \"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, status + and statistics.\"\n },\n \"broadcastStatus\": {\n \"description\": + \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all broadcasts.\",\n \"Return current + live broadcasts.\",\n \"Return broadcasts that have not yet + started.\",\n \"Return broadcasts that have already ended.\"\n + \ ],\n \"type\": \"string\",\n \"enum\": + [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n + \ \"active\",\n \"upcoming\",\n \"completed\"\n + \ ]\n },\n \"pageToken\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n + \ \"id\": {\n \"description\": \"Return broadcasts + with the given ids from Stubby or Apiary.\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n + \ },\n \"broadcastType\": {\n \"location\": + \"query\",\n \"default\": \"event\",\n \"description\": + \"Return only broadcasts with the selected type.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all broadcasts.\",\n \"Return only + scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n + \ ],\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n + \ \"all\",\n \"event\",\n \"persistent\"\n + \ ]\n }\n },\n \"httpMethod\": \"GET\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"id\": \"youtube.liveBroadcasts.list\",\n \"description\": + \"Retrieve the list of broadcasts associated with the given channel.\",\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"LiveBroadcastListResponse\"\n }\n }\n }\n },\n \"thirdPartyLinks\": + {\n \"methods\": {\n \"delete\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"description\": \"Deletes a resource.\",\n \"httpMethod\": + \"DELETE\",\n \"parameters\": {\n \"linkingToken\": {\n + \ \"description\": \"Delete the partner links with the given linking + token.\",\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n },\n \"externalChannelId\": + {\n \"type\": \"string\",\n \"description\": \"Channel + ID to which changes should be applied, for delegation.\",\n \"location\": + \"query\"\n },\n \"type\": {\n \"required\": + true,\n \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"description\": \"Type of the link to be + deleted.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel + with a store on a merchandising platform in order to enable retail commerce + capabilities for that channel on YouTube.\"\n ]\n },\n + \ \"part\": {\n \"description\": \"Do not use. Required + for compatibility.\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"type\": \"string\"\n }\n },\n \"id\": + \"youtube.thirdPartyLinks.delete\",\n \"parameterOrder\": [\n \"linkingToken\",\n + \ \"type\"\n ],\n \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n + \ },\n \"insert\": {\n \"request\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"response\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"id\": \"youtube.thirdPartyLinks.insert\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API request and response will include. Supported values are linkingToken, + status, and snippet.\",\n \"location\": \"query\",\n \"required\": + true\n },\n \"externalChannelId\": {\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"POST\"\n },\n \"update\": {\n \"response\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"description\": + \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"httpMethod\": \"PUT\",\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"The *part* + parameter specifies the thirdPartyLink resource parts that the API request + and response will include. Supported values are linkingToken, status, and + snippet.\"\n },\n \"externalChannelId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\"\n }\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"id\": \"youtube.thirdPartyLinks.update\"\n },\n \"list\": + {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"ThirdPartyLinkListResponse\"\n },\n \"id\": \"youtube.thirdPartyLinks.list\",\n + \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"linkingToken\": + {\n \"location\": \"query\",\n \"description\": + \"Get a third party link with the given linking token.\",\n \"type\": + \"string\"\n },\n \"externalChannelId\": {\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"description\": \"The *part* parameter specifies the thirdPartyLink + resource parts that the API response will include. Supported values are linkingToken, + status, and snippet.\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"type\": {\n \"type\": + \"string\",\n \"description\": \"Get a third party link of the + given type.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel + with a store on a merchandising platform in order to enable retail commerce + capabilities for that channel on YouTube.\"\n ],\n \"location\": + \"query\",\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ]\n }\n },\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"path\": \"youtube/v3/thirdPartyLinks\"\n }\n }\n },\n + \ \"liveStreams\": {\n \"methods\": {\n \"insert\": {\n \"path\": + \"youtube/v3/liveStreams\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n + \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"id\": \"youtube.liveStreams.insert\",\n \"description\": + \"Inserts a new stream for the authenticated user.\",\n \"httpMethod\": + \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.abuseReports.insert\",\n \"response\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"flatPath\": - \"youtube/v3/abuseReports\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"playlistItems\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"PlaylistItemListResponse\"\n },\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.playlistItems.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"pageToken\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"minimum\": \"0\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"videoId\": - {\n \"description\": \"Return the playlist items associated with - the given video ID.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"playlistId\": {\n \"type\": \"string\",\n - \ \"description\": \"Return the playlist items within the given - playlist.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n - \ },\n \"path\": \"youtube/v3/playlistItems\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\"\n },\n \"insert\": {\n \"id\": - \"youtube.playlistItems.insert\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"path\": \"youtube/v3/playlistItems\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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 + \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + owner.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\"\n },\n \"update\": {\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"id\": - \"youtube.playlistItems.update\",\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"description\": \"Updates an existing resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"string\",\n \"description\": \"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, content_details, and status.\",\n \"location\": \"query\",\n + \ \"required\": true,\n \"repeated\": true\n }\n + \ }\n },\n \"list\": {\n \"response\": {\n + \ \"$ref\": \"LiveStreamListResponse\"\n },\n \"path\": + \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"mine\": + {\n \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"part\": {\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": + \"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.\",\n + \ \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"maximum\": + \"50\",\n \"minimum\": \"0\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"default\": \"5\",\n \"location\": + \"query\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"id\": {\n \"location\": \"query\",\n \"description\": + \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"type\": + \"string\",\n \"repeated\": true\n }\n },\n + \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.liveStreams.list\",\n + \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"description\": \"Retrieve the list of streams associated + with the given channel. --\"\n },\n \"delete\": {\n \"id\": + \"youtube.liveStreams.delete\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"description\": \"Deletes an existing stream for the authenticated + user.\",\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"*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 @@ -11399,28 +7676,59 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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 + be linked to the specified YouTube content owner.\"\n }\n },\n + \ \"path\": \"youtube/v3/liveStreams\",\n \"httpMethod\": + \"DELETE\"\n },\n \"update\": {\n \"parameters\": {\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"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. 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.\",\n \"required\": true\n }\n - \ },\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlistItems\"\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + value specifies. If the request body does not specify a value for a mutable + property, the existing value for that property will be removed.\",\n \"required\": + true,\n \"type\": \"string\",\n \"repeated\": true\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*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.\"\n }\n },\n + \ \"description\": \"Updates an existing stream for the authenticated + user.\",\n \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": + \"LiveStream\"\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n + \ \"path\": \"youtube/v3/liveStreams\",\n \"response\": {\n + \ \"$ref\": \"LiveStream\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.liveStreams.update\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n + \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"list\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"GET\",\n \"path\": \"youtube/v3/channels\",\n \"response\": + {\n \"$ref\": \"ChannelListResponse\"\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -11430,115 +7738,58 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"id\": - \"youtube.playlistItems.delete\",\n \"description\": \"Deletes a - resource.\",\n \"parameterOrder\": [\n \"id\"\n ]\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.superChatEvents.list\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/superChatEvents\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/superChatEvents\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the superChatEvent resource parts that the - API response will include. This parameter is currently not supported.\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\"\n },\n \"hl\": {\n \"description\": - \"Return rendered funding amounts in specified language.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"SuperChatEventListResponse\"\n }\n }\n - \ }\n },\n \"channels\": {\n \"methods\": {\n \"list\": - {\n \"id\": \"youtube.channels.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"mine\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the ids of channels owned by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"description\": \"Stands for \\\"host language\\\". + \"string\",\n \"location\": \"query\"\n },\n \"mySubscribers\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Return the channels subscribed to the authenticated + user\"\n },\n \"hl\": {\n \"location\": + \"query\",\n \"description\": \"Stands for \\\"host language\\\". Specifies the localization language of the metadata to be filled into snippet.localized. The field is filled with the default metadata if there is no localization in the specified language. The parameter value must be a language code included in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"categoryId\": {\n \"type\": \"string\",\n - \ \"description\": \"Return the channels within the specified - guide category ID.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"managedByMe\": {\n - \ \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Return the channels managed by the authenticated - user.\"\n },\n \"forUsername\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the channel associated with a YouTube username.\"\n },\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"type\": \"integer\"\n - \ },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the channels subscribed to the authenticated user\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"description\": - \"Return the channels with the specified IDs.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies a comma-separated + \ \"type\": \"string\"\n },\n \"maxResults\": + {\n \"minimum\": \"0\",\n \"default\": \"5\",\n + \ \"type\": \"integer\",\n \"format\": \"uint32\",\n + \ \"location\": \"query\",\n \"maximum\": \"50\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\"\n },\n + \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"location\": + \"query\"\n },\n \"forUsername\": {\n \"location\": + \"query\",\n \"description\": \"Return the channel associated + with a YouTube username.\",\n \"type\": \"string\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true,\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"response\": - {\n \"$ref\": \"ChannelListResponse\"\n },\n \"flatPath\": - \"youtube/v3/channels\",\n \"description\": \"Retrieves a list of - resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/channels\"\n - \ },\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"scopes\": + will also contain all of those nested properties.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"Return + the channels with the specified IDs.\",\n \"repeated\": true,\n + \ \"location\": \"query\"\n },\n \"managedByMe\": + {\n \"type\": \"boolean\",\n \"description\": \"Return + the channels managed by the authenticated user.\",\n \"location\": + \"query\"\n },\n \"categoryId\": {\n \"location\": + \"query\",\n \"description\": \"Return the channels within the + specified guide category ID.\",\n \"type\": \"string\"\n },\n + \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": + \"query\",\n \"description\": \"Return the ids of channels owned + by the authenticated user.\"\n }\n },\n \"flatPath\": + \"youtube/v3/channels\",\n \"id\": \"youtube.channels.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n + \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n + \ ]\n },\n \"update\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n + \ \"flatPath\": \"youtube/v3/channels\",\n \"request\": {\n + \ \"$ref\": \"Channel\"\n },\n \"path\": \"youtube/v3/channels\",\n + \ \"description\": \"Updates an existing resource.\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": \"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 @@ -11546,194 +7797,132 @@ interactions: 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.\"\n }\n },\n \"request\": - {\n \"$ref\": \"Channel\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"path\": \"youtube/v3/channels\",\n - \ \"id\": \"youtube.channels.update\",\n \"response\": {\n - \ \"$ref\": \"Channel\"\n }\n }\n }\n },\n - \ \"liveChatModerators\": {\n \"methods\": {\n \"list\": {\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"id\": \"youtube.liveChatModerators.list\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"response\": - {\n \"$ref\": \"LiveChatModeratorListResponse\"\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": - {\n \"liveChatId\": {\n \"description\": \"The id - of the live chat for which moderators should be returned.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"default\": \"5\"\n },\n \"part\": {\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the liveChatModerator resource parts that - the API response will include. Supported values are id and snippet.\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n }\n }\n },\n \"delete\": {\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"id\": - \"youtube.liveChatModerators.delete\",\n \"description\": \"Deletes - a chat moderator.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\"\n - \ },\n \"insert\": {\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter serves two purposes + YouTube content owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true,\n \"description\": \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveChatModerator\"\n }\n }\n }\n - \ },\n \"channelBanners\": {\n \"methods\": {\n \"insert\": - {\n \"parameterOrder\": [],\n \"request\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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 + 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.\",\n \"type\": \"string\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"Channel\"\n + \ },\n \"id\": \"youtube.channels.update\"\n }\n }\n + \ },\n \"channelSections\": {\n \"methods\": {\n \"insert\": + {\n \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively + for each separate channel.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true,\n \"description\": + \"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.\",\n \"type\": + \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"path\": \"youtube/v3/channelSections\",\n \"response\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"request\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.channelSections.insert\",\n \"description\": + \"Inserts a new resource into this collection.\"\n },\n \"update\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true,\n \"description\": \"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.\"\n + \ }\n },\n \"request\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"description\": \"Updates an + existing resource.\",\n \"path\": \"youtube/v3/channelSections\",\n + \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"id\": \"youtube.channelSections.update\",\n \"response\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"parameterOrder\": + [\n \"part\"\n ]\n },\n \"list\": {\n \"httpMethod\": + \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\"\n }\n },\n \"response\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.channelBanners.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"mediaUpload\": - {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/channelBanners/insert\"\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"maxSize\": \"6291456\"\n },\n - \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"path\": - \"youtube/v3/channelBanners/insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"supportsMediaUpload\": true\n }\n }\n - \ },\n \"liveChatMessages\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.liveChatMessages.list\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the liveChatComment - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"liveChatId\": {\n \"location\": - \"query\",\n \"description\": \"The id of the live chat for which - comments should be returned.\",\n \"required\": true,\n \"type\": - \"string\"\n },\n \"profileImageSize\": {\n \"minimum\": - \"16\",\n \"location\": \"query\",\n \"maximum\": - \"720\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\"\n },\n \"maxResults\": - {\n \"default\": \"500\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"200\",\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"maximum\": - \"2000\",\n \"location\": \"query\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the system messages should be returned.\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/liveChat/messages\"\n - \ },\n \"delete\": {\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Deletes a chat message.\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatMessages.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/liveChat/messages\"\n },\n \"insert\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"request\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"id\": \"youtube.liveChatMessages.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"path\": - \"youtube/v3/liveChat/messages\"\n }\n }\n },\n \"channelSections\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/channelSections\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ChannelSectionListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.channelSections.list\",\n - \ \"parameters\": {\n \"mine\": {\n \"description\": - \"Return the ChannelSections owned by the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return content in specified language\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"required\": - true\n },\n \"id\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\"\n },\n \"channelId\": {\n - \ \"description\": \"Return the ChannelSections owned by the specified - channel ID.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + provide authentication credentials for each individual channel. The CMS account + that the user authenticates with must be linked to the specified YouTube content + owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Return the ChannelSections owned by the specified channel ID.\"\n },\n + \ \"part\": {\n \"required\": true,\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Return + the ChannelSections with the given IDs for Stubby or Apiary.\",\n \"repeated\": + true\n },\n \"mine\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"description\": + \"Return the ChannelSections owned by the authenticated user.\"\n },\n + \ \"hl\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"Return content in specified + language\"\n }\n },\n \"id\": \"youtube.channelSections.list\",\n + \ \"path\": \"youtube/v3/channelSections\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"response\": + {\n \"$ref\": \"ChannelSectionListResponse\"\n }\n },\n + \ \"delete\": {\n \"description\": \"Deletes a resource.\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"*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 @@ -11742,336 +7931,626 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + be linked to the specified YouTube content owner.\"\n },\n \"id\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": + \"youtube.channelSections.delete\",\n \"path\": \"youtube/v3/channelSections\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": + \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.update\",\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"flatPath\": - \"youtube/v3/channelSections\"\n },\n \"delete\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ ],\n \"httpMethod\": \"DELETE\"\n }\n }\n },\n + \ \"thumbnails\": {\n \"methods\": {\n \"set\": {\n \"httpMethod\": + \"POST\",\n \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n + \ },\n \"mediaUpload\": {\n \"protocols\": {\n + \ \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n + \ \"multipart\": true\n },\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n + \ }\n },\n \"accept\": [\n \"image/jpeg\",\n + \ \"image/png\",\n \"application/octet-stream\"\n + \ ],\n \"maxSize\": \"2097152\"\n },\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\"\n },\n + \ \"videoId\": {\n \"required\": true,\n \"location\": + \"query\",\n \"description\": \"Returns the Thumbnail with the + given video IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n + \ }\n },\n \"path\": \"youtube/v3/thumbnails/set\",\n + \ \"supportsMediaUpload\": true,\n \"id\": \"youtube.thumbnails.set\",\n + \ \"flatPath\": \"youtube/v3/thumbnails/set\",\n \"description\": + \"As this is not an insert in a strict sense (it supports uploading/setting + of a thumbnail for multiple videos, which doesn't result in creation of a + single resource), I use a custom verb here.\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"videoId\"\n ]\n + \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": + {\n \"list\": {\n \"path\": \"youtube/v3/superChatEvents\",\n + \ \"parameters\": {\n \"hl\": {\n \"type\": + \"string\",\n \"description\": \"Return rendered funding amounts + in specified language.\",\n \"location\": \"query\"\n },\n + \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"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.\"\n },\n \"part\": {\n \"repeated\": + true,\n \"required\": true,\n \"description\": \"The + *part* parameter specifies the superChatEvent resource parts that the API + response will include. This parameter is currently not supported.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"format\": \"uint32\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"location\": \"query\",\n \"default\": + \"5\",\n \"maximum\": \"50\",\n \"type\": \"integer\",\n + \ \"minimum\": \"1\"\n }\n },\n \"httpMethod\": + \"GET\",\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"response\": + {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"id\": + \"youtube.superChatEvents.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n + \ }\n }\n },\n \"comments\": {\n \"methods\": {\n \"update\": + {\n \"request\": {\n \"$ref\": \"Comment\"\n },\n + \ \"response\": {\n \"$ref\": \"Comment\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"description\": \"Updates an existing resource.\",\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"description\": \"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.\",\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"path\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.update\",\n + \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"flatPath\": \"youtube/v3/comments\"\n },\n + \ \"list\": {\n \"path\": \"youtube/v3/comments\",\n \"parameters\": + {\n \"maxResults\": {\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"type\": \"integer\",\n \"minimum\": + \"1\",\n \"location\": \"query\",\n \"maximum\": + \"100\",\n \"format\": \"uint32\",\n \"default\": + \"20\"\n },\n \"part\": {\n \"description\": + \"The *part* parameter specifies a comma-separated list of one or more comment + resource properties that the API response will include.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"required\": true\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n + \ },\n \"parentId\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Returns + replies to the specified comment. Note, currently YouTube features only one + level of replies (ie replies to top level comments). However replies to replies + may be supported in the future.\"\n },\n \"id\": {\n + \ \"type\": \"string\",\n \"description\": \"Returns + the comments with the given IDs for One Platform.\",\n \"location\": + \"query\",\n \"repeated\": true\n },\n \"textFormat\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Returns + the comments in HTML format. This is the default value.\",\n \"Returns + the comments in plain text format.\"\n ],\n \"description\": + \"The requested text format for the returned comments.\",\n \"default\": + \"html\",\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ]\n + \ }\n },\n \"httpMethod\": \"GET\",\n \"id\": + \"youtube.comments.list\",\n \"description\": \"Retrieves a list + of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"CommentListResponse\"\n }\n },\n \"insert\": {\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"response\": {\n \"$ref\": \"Comment\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"request\": {\n \"$ref\": \"Comment\"\n + \ },\n \"path\": \"youtube/v3/comments\",\n \"httpMethod\": + \"POST\",\n \"id\": \"youtube.comments.insert\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n }\n },\n \"markAsSpam\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.comments.markAsSpam\",\n \"parameters\": + {\n \"id\": {\n \"description\": \"Flags the comments + with the given IDs as spam in the caller's opinion.\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"required\": true\n }\n },\n \"description\": + \"Expresses the caller's opinion that one or more comments should be flagged + as spam.\",\n \"path\": \"youtube/v3/comments/markAsSpam\",\n \"httpMethod\": + \"POST\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n \"parameterOrder\": + [\n \"id\"\n ]\n },\n \"delete\": {\n \"description\": + \"Deletes a resource.\",\n \"path\": \"youtube/v3/comments\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n \ \"parameters\": {\n \"id\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.channelSections.delete\"\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.channelSections.insert\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + true\n }\n },\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"id\": + \"youtube.comments.delete\",\n \"httpMethod\": \"DELETE\"\n },\n + \ \"setModerationStatus\": {\n \"description\": \"Sets the + moderation status of one or more comments.\",\n \"httpMethod\": \"POST\",\n + \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameters\": {\n \"id\": {\n \"description\": + \"Modifies the moderation status of the comments with the given IDs\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true,\n \"repeated\": true\n },\n \"moderationStatus\": + {\n \"description\": \"Specifies the requested moderation status. + Note, comments can be in statuses, which are not available through this call. + For example, this call does not allow to mark a comment as 'likely spam'. + Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, + MODERATION_STATUS_REJECTED.\",\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\",\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ],\n \"enumDescriptions\": [\n \"The + comment is available for public display.\",\n \"The comment + is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ]\n },\n \"banAuthor\": + {\n \"description\": \"If set to true the author of the comment + gets added to the ban list. This means all future comments of the author will + autmomatically be rejected. Only valid in combination with STATUS_REJECTED.\",\n + \ \"location\": \"query\",\n \"default\": \"false\",\n + \ \"type\": \"boolean\"\n }\n },\n \"flatPath\": + \"youtube/v3/comments/setModerationStatus\",\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n + \ \"id\": \"youtube.comments.setModerationStatus\"\n }\n }\n + \ },\n \"members\": {\n \"methods\": {\n \"list\": {\n \"id\": + \"youtube.members.list\",\n \"httpMethod\": \"GET\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"flatPath\": \"youtube/v3/members\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"mode\": + {\n \"description\": \"Parameter that specifies which channel + members to return.\",\n \"type\": \"string\",\n \"enum\": + [\n \"listMembersModeUnknown\",\n \"updates\",\n + \ \"all_current\"\n ],\n \"default\": + \"all_current\",\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Return only members that joined + after the first call with this mode was made.\",\n \"Return + all current members, from newest to oldest.\"\n ]\n },\n + \ \"filterByMemberChannelId\": {\n \"description\": + \"Comma separated list of channel IDs. Only data about members that are part + of this list will be included in the response.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"description\": \"The *part* parameter specifies the member + resource parts that the API response will include. Set the parameter value + to snippet.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"maxResults\": {\n \"location\": \"query\",\n \"type\": + \"integer\",\n \"minimum\": \"0\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"maximum\": \"1000\",\n + \ \"format\": \"uint32\",\n \"default\": \"5\"\n + \ },\n \"hasAccessToLevel\": {\n \"description\": + \"Filter members in the results set to the ones that have access to a level.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"path\": \"youtube/v3/members\",\n + \ \"description\": \"Retrieves a list of members that match the request + criteria for a channel.\",\n \"response\": {\n \"$ref\": + \"MemberListResponse\"\n }\n }\n }\n },\n \"commentThreads\": + {\n \"methods\": {\n \"insert\": {\n \"response\": {\n + \ \"$ref\": \"CommentThread\"\n },\n \"id\": \"youtube.commentThreads.insert\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"type\": \"string\"\n + \ }\n },\n \"path\": \"youtube/v3/commentThreads\"\n + \ },\n \"list\": {\n \"parameters\": {\n \"textFormat\": + {\n \"description\": \"The requested text format for the returned + comments.\",\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ],\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Returns + the comments in HTML format. This is the default value.\",\n \"Returns + the comments in plain text format.\"\n ],\n \"default\": + \"html\"\n },\n \"allThreadsRelatedToChannelId\": {\n + \ \"type\": \"string\",\n \"description\": \"Returns + the comment threads of all videos of the channel and the channel comments + as well.\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"description\": \"The *part* parameter specifies a comma-separated + list of one or more commentThread resource properties that the API response + will include.\",\n \"location\": \"query\",\n \"repeated\": + true\n },\n \"searchTerms\": {\n \"description\": + \"Limits the returned comment threads to those matching the specified key + words. Not compatible with the 'id' filter.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"moderationStatus\": {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n + \"Limits the returned comment threads to those with the specified moderation + status. Not compatible with the 'id' filter. Valid values: published, heldForReview, + likelySpam.\",\n \"default\": \"published\",\n \"type\": + \"string\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ],\n + \ \"enumDescriptions\": [\n \"The comment is available + for public display.\",\n \"The comment is awaiting review by + a moderator.\",\n \"\",\n \"The comment is unfit + for display.\"\n ]\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"description\": + \"Returns the comment threads for all the channel comments (ie does not include + comments left on videos).\",\n \"type\": \"string\"\n },\n + \ \"videoId\": {\n \"location\": \"query\",\n \"description\": + \"Returns the comment threads of the specified video.\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"type\": + \"integer\",\n \"location\": \"query\",\n \"default\": + \"20\",\n \"minimum\": \"1\",\n \"maximum\": \"100\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"format\": + \"uint32\"\n },\n \"order\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"enum\": [\n + \ \"orderUnspecified\",\n \"time\",\n \"relevance\"\n + \ ],\n \"default\": \"time\",\n \"enumDescriptions\": + [\n \"\",\n \"Order by time.\",\n \"Order + by relevance.\"\n ]\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"repeated\": + true,\n \"description\": \"Returns the comment threads with the + given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"path\": + \"youtube/v3/commentThreads\",\n \"response\": {\n \"$ref\": + \"CommentThreadListResponse\"\n },\n \"httpMethod\": \"GET\",\n + \ \"id\": \"youtube.commentThreads.list\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"part\"\n ]\n }\n }\n },\n \"liveChatBans\": + {\n \"methods\": {\n \"insert\": {\n \"id\": \"youtube.liveChatBans.insert\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"request\": {\n \"$ref\": \"LiveChatBan\"\n + \ },\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"response\": + {\n \"$ref\": \"LiveChatBan\"\n },\n \"httpMethod\": + \"POST\",\n \"path\": \"youtube/v3/liveChat/bans\",\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": + true,\n \"required\": true,\n \"type\": \"string\",\n \ \"description\": \"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.\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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 + set as well as the properties that the API response returns. Set the parameter + value to snippet.\"\n }\n },\n \"description\": + \"Inserts a new resource into this collection.\"\n },\n \"delete\": + {\n \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"description\": + \"Deletes a chat ban.\",\n \"path\": \"youtube/v3/liveChat/bans\",\n + \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.liveChatBans.delete\",\n + \ \"parameterOrder\": [\n \"id\"\n ]\n }\n + \ }\n },\n \"i18nRegions\": {\n \"methods\": {\n \"list\": + {\n \"id\": \"youtube.i18nRegions.list\",\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"required\": + true,\n \"description\": \"The *part* parameter specifies the + i18nRegion resource properties that the API response will include. Set the + parameter value to snippet.\",\n \"type\": \"string\",\n \"repeated\": + true\n },\n \"hl\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"default\": \"en_US\"\n + \ }\n },\n \"path\": \"youtube/v3/i18nRegions\",\n + \ \"flatPath\": \"youtube/v3/i18nRegions\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"I18nRegionListResponse\"\n },\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ }\n }\n },\n \"channelBanners\": {\n \"methods\": + {\n \"insert\": {\n \"parameterOrder\": [],\n \"mediaUpload\": + {\n \"protocols\": {\n \"simple\": {\n \"multipart\": + true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n + \ },\n \"resumable\": {\n \"path\": + \"/resumable/upload/youtube/v3/channelBanners/insert\",\n \"multipart\": + true\n }\n },\n \"maxSize\": \"6291456\",\n + \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ]\n },\n + \ \"supportsMediaUpload\": true,\n \"request\": {\n \"$ref\": + \"ChannelBannerResource\"\n },\n \"id\": \"youtube.channelBanners.insert\",\n + \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"parameters\": + {\n \"channelId\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Unused, + channel_id is currently derived from the security context of the requestor.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"path\": \"youtube/v3/channelSections\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ }\n }\n },\n \"comments\": {\n \"methods\": {\n \"list\": - {\n \"flatPath\": \"youtube/v3/comments\",\n \"path\": \"youtube/v3/comments\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"maxResults\": {\n \"maximum\": \"100\",\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"20\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"minimum\": \"1\"\n - \ },\n \"textFormat\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"description\": - \"The requested text format for the returned comments.\",\n \"default\": - \"html\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"Returns the comments with the given IDs - for One Platform.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more comment resource properties that the API response will - include.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"parentId\": {\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.list\"\n },\n \"update\": - {\n \"description\": \"Updates an existing resource.\",\n \"parameters\": + \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n + \ ],\n \"description\": \"Inserts a new resource into this + collection.\",\n \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n + \ },\n \"path\": \"youtube/v3/channelBanners/insert\",\n + \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"videoAbuseReportReasons\": + {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n + \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"parameters\": {\n \"part\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies the videoCategory resource parts that the + API response will include. Supported values are id and snippet.\"\n },\n + \ \"hl\": {\n \"default\": \"en-US\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"httpMethod\": + \"GET\",\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n + \ \"parameterOrder\": [\n \"part\"\n ]\n }\n + \ }\n },\n \"liveChatModerators\": {\n \"methods\": {\n \"list\": + {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": + {\n \"maxResults\": {\n \"location\": \"query\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"format\": + \"uint32\",\n \"maximum\": \"50\",\n \"minimum\": + \"0\",\n \"default\": \"5\",\n \"type\": \"integer\"\n + \ },\n \"part\": {\n \"type\": \"string\",\n + \ \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"The *part* parameter specifies the liveChatModerator + resource parts that the API response will include. Supported values are id + and snippet.\",\n \"repeated\": true\n },\n \"liveChatId\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"description\": \"The id of the live chat for which moderators + should be returned.\",\n \"location\": \"query\"\n },\n + \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"path\": + \"youtube/v3/liveChat/moderators\",\n \"id\": \"youtube.liveChatModerators.list\",\n + \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n + \ },\n \"parameterOrder\": [\n \"liveChatId\",\n + \ \"part\"\n ],\n \"httpMethod\": \"GET\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n + \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/comments\",\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"id\": \"youtube.comments.update\",\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n }\n - \ },\n \"markAsSpam\": {\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n \"path\": - \"youtube/v3/comments/markAsSpam\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.comments.markAsSpam\",\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true\n }\n - \ }\n },\n \"setModerationStatus\": {\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"path\": \"youtube/v3/comments/setModerationStatus\",\n \"parameters\": - {\n \"moderationStatus\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"description\": \"Specifies the requested - moderation status. Note, comments can be in statuses, which are not available - through this call. For example, this call does not allow to mark a comment - as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"banAuthor\": - {\n \"description\": \"If set to true the author of the comment - gets added to the ban list. This means all future comments of the author will - autmomatically be rejected. Only valid in combination with STATUS_REJECTED.\",\n - \ \"type\": \"boolean\",\n \"default\": \"false\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Modifies the moderation status of the - comments with the given IDs\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Sets the moderation - status of one or more comments.\",\n \"parameterOrder\": [\n \"id\",\n - \ \"moderationStatus\"\n ],\n \"scopes\": [\n + 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.\",\n \"type\": \"string\",\n + \ \"required\": true,\n \"repeated\": true,\n \"location\": + \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.comments.setModerationStatus\"\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/comments\",\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.comments.delete\",\n \"path\": - \"youtube/v3/comments\",\n \"description\": \"Deletes a resource.\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insert\": {\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"path\": \"youtube/v3/comments\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.comments.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"commentThreads\": {\n \"methods\": {\n \"insert\": - {\n \"id\": \"youtube.commentThreads.insert\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/commentThreads\",\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"parameters\": {\n \"part\": + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Inserts a new resource into this collection.\",\n \"request\": + {\n \"$ref\": \"LiveChatModerator\"\n },\n \"response\": + {\n \"$ref\": \"LiveChatModerator\"\n },\n \"id\": + \"youtube.liveChatModerators.insert\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"path\": \"youtube/v3/liveChat/moderators\"\n },\n \"delete\": + {\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n + \ \"id\"\n ],\n \"parameters\": {\n \"id\": {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": true\n }\n }\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"CommentThreadListResponse\"\n },\n \"id\": \"youtube.commentThreads.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"allThreadsRelatedToChannelId\": - {\n \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"order\": - {\n \"enumDescriptions\": [\n \"\",\n \"Order - by time.\",\n \"Order by relevance.\"\n ],\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"default\": \"time\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"searchTerms\": {\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"maximum\": \"100\",\n \"minimum\": \"1\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"default\": \"20\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"Returns - the comment threads with the given IDs for Stubby or Apiary.\"\n },\n - \ \"textFormat\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"description\": \"The requested text format - for the returned comments.\",\n \"type\": \"string\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"location\": - \"query\",\n \"default\": \"html\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"repeated\": - true\n },\n \"moderationStatus\": {\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Limits the returned comment threads to those - with the specified moderation status. Not compatible with the 'id' filter. - Valid values: published, heldForReview, likelySpam.\",\n \"default\": - \"published\",\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of the specified video.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"path\": \"youtube/v3/commentThreads\"\n }\n }\n },\n - \ \"subscriptions\": {\n \"methods\": {\n \"delete\": {\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/subscriptions\",\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a resource.\",\n \"parameters\": {\n \"id\": + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Deletes a chat moderator.\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n + \ \"id\": \"youtube.liveChatModerators.delete\",\n \"flatPath\": + \"youtube/v3/liveChat/moderators\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n + \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": + {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n + \ \"path\": \"youtube/v3/membershipsLevels\",\n \"response\": + {\n \"$ref\": \"MembershipsLevelListResponse\"\n },\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"repeated\": + true,\n \"description\": \"The *part* parameter specifies the + membershipsLevel resource parts that the API response will include. Supported + values are id and snippet.\",\n \"type\": \"string\"\n }\n + \ },\n \"description\": \"Retrieves a list of all pricing + levels offered by a creator to the fans.\",\n \"httpMethod\": \"GET\",\n + \ \"id\": \"youtube.membershipsLevels.list\"\n }\n }\n + \ },\n \"abuseReports\": {\n \"methods\": {\n \"insert\": + {\n \"id\": \"youtube.abuseReports.insert\",\n \"response\": + {\n \"$ref\": \"AbuseReport\"\n },\n \"httpMethod\": + \"POST\",\n \"path\": \"youtube/v3/abuseReports\",\n \"request\": + {\n \"$ref\": \"AbuseReport\"\n },\n \"parameters\": + {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"required\": true\n + \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/abuseReports\"\n }\n }\n },\n \"tests\": {\n + \ \"methods\": {\n \"insert\": {\n \"id\": \"youtube.tests.insert\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"description\": \"POST method.\",\n \"response\": + {\n \"$ref\": \"TestItem\"\n },\n \"path\": \"youtube/v3/tests\",\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n },\n \"externalChannelId\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"request\": {\n \"$ref\": + \"TestItem\"\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"flatPath\": + \"youtube/v3/tests\"\n }\n }\n },\n \"search\": {\n \"methods\": + {\n \"list\": {\n \"path\": \"youtube/v3/search\",\n \"id\": + \"youtube.search.list\",\n \"parameters\": {\n \"videoDuration\": + {\n \"type\": \"string\",\n \"description\": \"Filter + on the duration of the videos.\",\n \"location\": \"query\",\n + \ \"enum\": [\n \"videoDurationUnspecified\",\n + \ \"any\",\n \"short\",\n \"medium\",\n + \ \"long\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Do not filter video search results + based on their duration. This is the default value.\",\n \"Only + include videos that are less than four minutes long.\",\n \"Only + include videos that are between four and 20 minutes long (inclusive).\",\n + \ \"Only include videos longer than 20 minutes.\"\n ]\n + \ },\n \"type\": {\n \"description\": \"Restrict + results to a particular set of resource types from One Platform.\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"relatedToVideoId\": {\n \"description\": + \"Search related to a resource.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"topicId\": + {\n \"description\": \"Restrict results to a particular topic.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"videoSyndicated\": {\n \"type\": + \"string\",\n \"description\": \"Filter on syndicated videos.\",\n + \ \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos, syndicated + or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n + \ \"enum\": [\n \"videoSyndicatedUnspecified\",\n + \ \"any\",\n \"true\"\n ]\n },\n + \ \"relevanceLanguage\": {\n \"location\": \"query\",\n + \ \"description\": \"Return results relevant to this language.\",\n + \ \"type\": \"string\"\n },\n \"pageToken\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.subscriptions.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"SubscriptionListResponse\"\n },\n \"parameters\": - {\n \"mine\": {\n \"description\": \"Flag for returning - the subscriptions of the authenticated user.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"forChannelId\": + \ \"description\": \"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.\"\n + \ },\n \"part\": {\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"description\": \"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.\",\n \"required\": true,\n \"type\": \"string\"\n + \ },\n \"regionCode\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Display the content as seen by viewers in this country.\"\n },\n + \ \"q\": {\n \"type\": \"string\",\n \"description\": + \"Textual search terms to match.\",\n \"location\": \"query\"\n + \ },\n \"forMine\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Search for the private videos of the authenticated + user.\",\n \"location\": \"query\"\n },\n \"order\": {\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\",\n \"type\": \"string\"\n },\n - \ \"mySubscribers\": {\n \"description\": \"Return - the subscribers of the given channel owner.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"order\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The order of the returned subscriptions\",\n - \ \"default\": \"relevance\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n + \"Sort order of the results.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Resources are sorted in reverse chronological order based + on the date they were created.\",\n \"Resources are sorted + from highest to lowest rating.\",\n \"Resources are sorted + from highest to lowest number of views.\",\n \"Resources are + sorted based on their relevance to the search query. This is the default value + for this parameter.\",\n \"Resources are sorted alphabetically + by title.\",\n \"Channels are sorted in descending order of + their number of uploaded videos.\"\n ],\n \"enum\": + [\n \"searchSortUnspecified\",\n \"date\",\n + \ \"rating\",\n \"viewCount\",\n \"relevance\",\n + \ \"title\",\n \"videoCount\"\n ],\n + \ \"type\": \"string\",\n \"default\": \"relevance\"\n + \ },\n \"location\": {\n \"location\": \"query\",\n + \ \"description\": \"Filter on location of the video\",\n \"type\": + \"string\"\n },\n \"forContentOwner\": {\n \"description\": + \"Search owned by a content owner.\",\n \"type\": \"boolean\",\n + \ \"location\": \"query\"\n },\n \"eventType\": + {\n \"enumDescriptions\": [\n \"\",\n \"The + live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n + \ \"The live broadcast has been completed.\"\n ],\n + \ \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ],\n + \ \"description\": \"Filter on the livestream status of the videos.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"videoDefinition\": {\n \"enum\": + [\n \"any\",\n \"standard\",\n \"high\"\n + \ ],\n \"description\": \"Filter on the definition + of the videos.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"Return + all videos, regardless of their resolution.\",\n \"Only retrieve + videos in standard definition.\",\n \"Only retrieve HD videos.\"\n + \ ]\n },\n \"locationRadius\": {\n \"location\": + \"query\",\n \"description\": \"Filter on distance from the location + (specified above).\",\n \"type\": \"string\"\n },\n + \ \"maxResults\": {\n \"format\": \"uint32\",\n \"location\": + \"query\",\n \"default\": \"5\",\n \"maximum\": + \"50\",\n \"minimum\": \"0\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"type\": \"integer\"\n },\n + \ \"videoLicense\": {\n \"location\": \"query\",\n + \ \"enum\": [\n \"any\",\n \"youtube\",\n + \ \"creativeCommon\"\n ],\n \"type\": + \"string\",\n \"description\": \"Filter on the license of the + videos.\",\n \"enumDescriptions\": [\n \"Return + all videos, regardless of which license they have, that match the query parameters.\",\n + \ \"Only return videos that have the standard YouTube license.\",\n + \ \"Only return videos that have a Creative Commons license. + Users can reuse videos with this license in other videos that they create. + Learn more.\"\n ]\n },\n \"channelType\": + {\n \"description\": \"Add a filter on the channel search.\",\n + \ \"location\": \"query\",\n \"enum\": [\n \"channelTypeUnspecified\",\n + \ \"any\",\n \"show\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return all channels.\",\n \"Only + retrieve shows.\"\n ],\n \"type\": \"string\"\n + \ },\n \"videoType\": {\n \"description\": + \"Filter on videos of a specific type.\",\n \"location\": \"query\",\n + \ \"enum\": [\n \"videoTypeUnspecified\",\n \"any\",\n + \ \"movie\",\n \"episode\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n + \ \"\",\n \"Return all videos.\",\n \"Only + retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n + \ ]\n },\n \"safeSearch\": {\n \"location\": + \"query\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n + \ \"none\",\n \"moderate\",\n \"strict\"\n \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ]\n - \ },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n },\n \"channelId\": - {\n \"description\": \"Return the subscriptions of the given - channel owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"myRecentSubscribers\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"Return the subscriptions with the given - IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively + \ \"YouTube will not filter the search result set.\",\n \"YouTube + will filter some content from search results and, at the least, will filter + content that is restricted in your locale. Based on their content, search + results could be removed from search results or demoted in search results. + This is the default parameter value.\",\n \"YouTube will try + to exclude all restricted content from the search result set. Based on their + content, search results could be removed from search results or demoted in + search results.\"\n ],\n \"default\": \"moderate\",\n + \ \"type\": \"string\",\n \"description\": \"Indicates + whether the search results should include restricted content as well as standard + content.\"\n },\n \"videoDimension\": {\n \"type\": + \"string\",\n \"description\": \"Filter on 3d videos.\",\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"Include + both 3D and non-3D videos in returned results. This is the default value.\",\n + \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict + search results to only include 3D videos.\"\n ],\n \"enum\": + [\n \"any\",\n \"2d\",\n \"3d\"\n + \ ]\n },\n \"forDeveloper\": {\n \"location\": + \"query\",\n \"description\": \"Restrict the search to only retrieve + videos uploaded using the project id of the authenticated user.\",\n \"type\": + \"boolean\"\n },\n \"publishedAfter\": {\n \"format\": + \"google-datetime\",\n \"description\": \"Filter on resources + published after this date.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"videoCaption\": {\n \"description\": + \"Filter on the presence of captions on the videos.\",\n \"enum\": + [\n \"videoCaptionUnspecified\",\n \"any\",\n + \ \"closedCaption\",\n \"none\"\n ],\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Do + not filter results based on caption availability.\",\n \"Only + include videos that have captions.\",\n \"Only include videos + that do not have captions.\"\n ]\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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. @@ -12080,179 +8559,43 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"GET\"\n - \ },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"Subscription\"\n },\n \"flatPath\": \"youtube/v3/subscriptions\",\n + owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"videoEmbeddable\": {\n \"enum\": + [\n \"videoEmbeddableUnspecified\",\n \"any\",\n + \ \"true\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos, embeddable + or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n + \ \"description\": \"Filter on embeddable videos.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"videoCategoryId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Filter on videos in a specific category.\"\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"Filter on resources belonging to this channelId.\",\n + \ \"location\": \"query\"\n },\n \"publishedBefore\": + {\n \"type\": \"string\",\n \"description\": \"Filter + on resources published before this date.\",\n \"location\": \"query\",\n + \ \"format\": \"google-datetime\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/search\",\n \"description\": + \"Retrieves a list of search resources\",\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": + \"SearchListResponse\"\n }\n }\n }\n },\n \"playlists\": + {\n \"methods\": {\n \"insert\": {\n \"id\": \"youtube.playlists.insert\",\n + \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": + \"Playlist\"\n },\n \"response\": {\n \"$ref\": + \"Playlist\"\n },\n \"flatPath\": \"youtube/v3/playlists\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": + \ ],\n \"description\": \"Inserts a new resource into this + collection.\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/playlists\",\n \"parameters\": {\n + \ \"part\": {\n \"location\": \"query\",\n \"required\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"path\": \"youtube/v3/subscriptions\"\n }\n - \ }\n },\n \"thumbnails\": {\n \"methods\": {\n \"set\": - {\n \"supportsMediaUpload\": true,\n \"parameterOrder\": - [\n \"videoId\"\n ],\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"parameters\": {\n \"videoId\": {\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/thumbnails/set\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.thumbnails.set\",\n \"description\": - \"As this is not an insert in a strict sense (it supports uploading/setting - of a thumbnail for multiple videos, which doesn't result in creation of a - single resource), I use a custom verb here.\",\n \"mediaUpload\": - {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"2097152\",\n \"protocols\": {\n \"simple\": {\n - \ \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ }\n }\n },\n \"response\": {\n - \ \"$ref\": \"ThumbnailSetResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"delete\": {\n \"description\": \"Deletes a resource.\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"parameters\": - {\n \"linkingToken\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Delete the partner links with the given linking token.\"\n },\n - \ \"part\": {\n \"description\": \"Do not use. Required - for compatibility.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\"\n },\n \"type\": {\n \"location\": - \"query\",\n \"description\": \"Type of the link to be deleted.\",\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"type\": \"string\",\n \"required\": - true,\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ]\n }\n },\n - \ \"id\": \"youtube.thirdPartyLinks.delete\"\n },\n \"update\": - {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\"\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n }\n },\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"id\": \"youtube.thirdPartyLinks.update\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\",\n \"location\": \"query\"\n },\n - \ \"linkingToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Get a third party link with the - given linking token.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the thirdPartyLink resource parts that the API response will include. Supported - values are linkingToken, status, and snippet.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ },\n \"type\": {\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"description\": - \"Get a third party link of the given type.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ]\n - \ }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.thirdPartyLinks.list\"\n - \ },\n \"insert\": {\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/thirdPartyLinks\"\n }\n }\n },\n \"tests\": - {\n \"methods\": {\n \"insert\": {\n \"id\": \"youtube.tests.insert\",\n - \ \"description\": \"POST method.\",\n \"httpMethod\": \"POST\",\n - \ \"response\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"request\": {\n \"$ref\": - \"TestItem\"\n },\n \"flatPath\": \"youtube/v3/tests\",\n - \ \"path\": \"youtube/v3/tests\"\n }\n }\n },\n \"videoCategories\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Returns the video categories - with the given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"default\": \"en-US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/videoCategories\",\n \"id\": - \"youtube.videoCategories.list\"\n }\n }\n },\n \"liveStreams\": - {\n \"methods\": {\n \"delete\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + set as well as the properties that the API response will include.\",\n \"type\": + \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": \"string\",\n \"description\": \"This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* @@ -12268,85 +8611,54 @@ interactions: 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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes an existing stream for the authenticated user.\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.liveStreams.delete\",\n \"path\": - \"youtube/v3/liveStreams\"\n },\n \"list\": {\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"update\": {\n \"path\": \"youtube/v3/playlists\",\n + \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"description\": \"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.\",\n \"location\": + \"query\",\n \"required\": true\n }\n },\n + \ \"flatPath\": \"youtube/v3/playlists\",\n \"request\": + {\n \"$ref\": \"Playlist\"\n },\n \"description\": + \"Updates an existing resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"type\": \"integer\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": - \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.liveStreams.list\",\n - \ \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"path\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"GET\"\n },\n \"insert\": {\n \"description\": \"Inserts - a new stream for the authenticated user.\",\n \"httpMethod\": \"POST\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + \ \"httpMethod\": \"PUT\",\n \"id\": \"youtube.playlists.update\"\n + \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"id\": \"youtube.playlists.list\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": + \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": \"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 @@ -12360,9 +8672,38 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively + for each separate channel.\",\n \"type\": \"string\"\n },\n + \ \"mine\": {\n \"description\": \"Return the playlists + owned by the authenticated user.\",\n \"location\": \"query\",\n + \ \"type\": \"boolean\"\n },\n \"part\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"repeated\": true\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"type\": + \"integer\",\n \"minimum\": \"0\",\n \"format\": + \"uint32\",\n \"location\": \"query\",\n \"default\": + \"5\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"maximum\": \"50\"\n },\n \"channelId\": + {\n \"description\": \"Return the playlists owned by the specified + channel ID.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"hl\": {\n \"description\": + \"Return content in specified language\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"description\": + \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"repeated\": + true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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. @@ -12371,45 +8712,17 @@ interactions: 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.\"\n },\n \"part\": {\n \"description\": - \"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, content_details, and status.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n }\n - \ },\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": + owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"response\": {\n \"$ref\": + \"PlaylistListResponse\"\n },\n \"flatPath\": \"youtube/v3/playlists\",\n + \ \"path\": \"youtube/v3/playlists\"\n },\n \"delete\": + {\n \"flatPath\": \"youtube/v3/playlists\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"*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 @@ -12418,95 +8731,3748 @@ interactions: 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.\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"description\": \"Updates an existing - stream for the authenticated user.\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.liveStreams.update\",\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n }\n - \ }\n }\n },\n \"liveChatBans\": {\n \"methods\": {\n - \ \"delete\": {\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"description\": \"Deletes a chat ban.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.liveChatBans.delete\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n }\n - \ },\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n }\n - \ }\n }\n },\n \"activities\": {\n \"methods\": {\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"id\": \"youtube.activities.list\",\n \"parameters\": - {\n \"maxResults\": {\n \"default\": \"5\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"type\": \"integer\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"home\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"publishedBefore\": - {\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": + be linked to the specified YouTube content owner.\"\n }\n },\n + \ \"id\": \"youtube.playlists.delete\",\n \"path\": \"youtube/v3/playlists\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": + \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\"\n }\n + \ }\n }\n },\n \"servicePath\": \"\",\n \"schemas\": {\n \"ChannelSectionSnippet\": + {\n \"description\": \"Basic details about a channel section, including + title, style and position.\",\n \"id\": \"ChannelSectionSnippet\",\n + \ \"properties\": {\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that published + the channel section.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": + {\n \"description\": \"The language of the channel section's default + title and description.\",\n \"type\": \"string\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The channel + section's title for multiple_playlists and multiple_channels.\"\n },\n + \ \"style\": {\n \"description\": \"The style of the channel + section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n + \ \"horizontalRow\",\n \"verticalList\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"position\": {\n \"description\": \"The position of the + channel section in the channel.\",\n \"format\": \"uint32\",\n \"type\": + \"integer\"\n },\n \"localized\": {\n \"description\": + \"Localized title, read-only.\",\n \"$ref\": \"ChannelSectionLocalization\"\n + \ },\n \"type\": {\n \"type\": \"string\",\n \"enum\": + [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n + \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n + \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n + \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n + \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n + \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The type of the channel section.\"\n }\n },\n \"type\": + \"object\"\n },\n \"VideoRecordingDetails\": {\n \"id\": \"VideoRecordingDetails\",\n + \ \"type\": \"object\",\n \"description\": \"Recording information + associated with the video.\",\n \"properties\": {\n \"locationDescription\": + {\n \"description\": \"The text description of the location where + the video was recorded.\",\n \"type\": \"string\"\n },\n \"location\": + {\n \"$ref\": \"GeoPoint\",\n \"description\": \"The geolocation + information associated with the video.\"\n },\n \"recordingDate\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time when the video was recorded.\"\n + \ }\n }\n },\n \"ChannelToStoreLinkDetails\": {\n \"properties\": + {\n \"storeName\": {\n \"description\": \"Name of the store.\",\n + \ \"type\": \"string\"\n },\n \"merchantId\": {\n \"description\": + \"Google Merchant Center id of the store.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n },\n \"storeUrl\": {\n \"description\": + \"Landing page of the store.\",\n \"type\": \"string\"\n }\n + \ },\n \"description\": \"Information specific to a store on a merchandising + platform linked to a YouTube channel.\",\n \"type\": \"object\",\n \"id\": + \"ChannelToStoreLinkDetails\"\n },\n \"LiveChatModerator\": {\n \"type\": + \"object\",\n \"properties\": {\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModerator\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube assigns to uniquely identify the moderator.\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n + \ }\n },\n \"description\": \"A *liveChatModerator* resource + represents a moderator for a YouTube live chat. A chat moderator has the ability + to ban/unban users from a chat, remove message, etc.\",\n \"id\": \"LiveChatModerator\"\n + \ },\n \"LiveChatMessageSnippet\": {\n \"description\": \"Next ID: + 33\",\n \"id\": \"LiveChatMessageSnippet\",\n \"properties\": {\n + \ \"membershipGiftingDetails\": {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n + \ \"description\": \"Details about the Membership Gifting event, this + is only set if the type is 'membershipGiftingEvent'.\"\n },\n \"liveChatId\": + {\n \"type\": \"string\"\n },\n \"superStickerDetails\": + {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n \"description\": + \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\"\n + \ },\n \"hasDisplayContent\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether the message has display content that + should be displayed to users.\"\n },\n \"authorChannelId\": + {\n \"description\": \"The ID of the user that authored this message, + this field is not always filled. textMessageEvent - the user that wrote the + message fanFundingEvent - the user that funded the broadcast newSponsorEvent + - the user that just became a sponsor memberMilestoneChatEvent - the member + that sent the message membershipGiftingEvent - the user that made the purchase + giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent + - the moderator that took the action messageRetractedEvent - the author that + retracted their message userBannedEvent - the moderator that took the action + superChatEvent - the user that made the purchase superStickerEvent - the user + that made the purchase\",\n \"type\": \"string\"\n },\n \"memberMilestoneChatDetails\": + {\n \"description\": \"Details about the Member Milestone Chat event, + this is only set if the type is 'memberMilestoneChatEvent'.\",\n \"$ref\": + \"LiveChatMemberMilestoneChatDetails\"\n },\n \"messageRetractedDetails\": + {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"type\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The type of message, this will always be present, it determines the contents + of the message as well as which fields will be present.\",\n \"type\": + \"string\",\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n + \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n + \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n + \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n + \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n + \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n + \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n + \ ]\n },\n \"textMessageDetails\": {\n \"description\": + \"Details about the text message, this is only set if the type is 'textMessageEvent'.\",\n + \ \"$ref\": \"LiveChatTextMessageDetails\"\n },\n \"newSponsorDetails\": + {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": + \"Details about the New Member Announcement event, this is only set if the + type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term + for \\\"sponsor\\\".\"\n },\n \"messageDeletedDetails\": {\n + \ \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"userBannedDetails\": + {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n + \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The date and time when the message + was orignally published.\"\n },\n \"giftMembershipReceivedDetails\": + {\n \"description\": \"Details about the Gift Membership Received + event, this is only set if the type is 'giftMembershipReceivedEvent'.\",\n + \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n + \ \"displayMessage\": {\n \"description\": \"Contains a string + that can be displayed to the user. If this field is not present the message + is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT + are silent.\",\n \"type\": \"string\"\n },\n \"superChatDetails\": + {\n \"description\": \"Details about the Super Chat event, this is + only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n + \ },\n \"fanFundingEventDetails\": {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n + \ \"description\": \"Details about the funding event, this is only + set if the type is 'fanFundingEvent'.\"\n }\n },\n \"type\": + \"object\"\n },\n \"ChannelLocalization\": {\n \"id\": \"ChannelLocalization\",\n + \ \"type\": \"object\",\n \"description\": \"Channel localization + setting\",\n \"properties\": {\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The localized strings for channel's + description.\"\n },\n \"title\": {\n \"description\": + \"The localized strings for channel's title.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"ContentRating\": {\n \"properties\": + {\n \"eirinRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG-12\",\n \"R15+\",\n \"R18+\",\n + \ \"\"\n ],\n \"description\": \"The video's Eirin + (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n \"enum\": + [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n + \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"cbfcRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"U\",\n \"U/A\",\n \"U/A 7+\",\n \"U/A + 13+\",\n \"U/A 16+\",\n \"A\",\n \"S\",\n + \ \"\"\n ],\n \"enum\": [\n \"cbfcUnspecified\",\n + \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n + \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n + \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"description\": + \"The video's Central Board of Film Certification (CBFC - India) rating.\"\n + \ },\n \"bfvcRating\": {\n \"description\": \"The video's + rating from Thailand's Board of Film and Video Censors.\",\n \"enum\": + [\n \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n + \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n + \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n + \ \"20\",\n \"B\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"chfilmRating\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"0\",\n + \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"enum\": [\n \"chfilmUnspecified\",\n + \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n + \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n + \ ],\n \"description\": \"The video's rating in Switzerland.\",\n + \ \"type\": \"string\"\n },\n \"mccaaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n + \ \"12\",\n \"14 - this rating was removed from the new + classification structure introduced in 2013.\",\n \"15\",\n \"16 + - this rating was removed from the new classification structure introduced + in 2013.\",\n \"18\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n + \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n + \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n + \ \"mccaa18\",\n \"mccaaUnrated\"\n ],\n \"description\": + \"The video's rating from Malta's Film Age-Classification Board.\"\n },\n + \ \"cncRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n + \ \"18\",\n \"E\",\n \"interdiction\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"Rating system in France - Commission de classification cinematographique\",\n + \ \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n + \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n + \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n + \ ]\n },\n \"fcoRating\": {\n \"enum\": [\n + \ \"fcoUnspecified\",\n \"fcoI\",\n \"fcoIia\",\n + \ \"fcoIib\",\n \"fcoIi\",\n \"fcoIii\",\n + \ \"fcoUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from Hong Kong's Office for + Film, Newspaper and Article Administration.\",\n \"enumDescriptions\": + [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n + \ \"II\",\n \"III\",\n \"\"\n ]\n + \ },\n \"nfrcRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Bulgarian National Film Center.\",\n \"enum\": + [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n + \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n + \ \"\"\n ]\n },\n \"djctqRatingReasons\": + {\n \"items\": {\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n + \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n + \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n + \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n + \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n + \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"Brazil rating content descriptors. See http://go/brazilratings + section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema + (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n + \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo + Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas + L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n + \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos + Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting + content)\"\n ],\n \"type\": \"string\"\n },\n + \ \"description\": \"Reasons that explain why the video received its + DJCQT (Brazil) rating.\",\n \"type\": \"array\"\n },\n \"tvpgRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"tvpgUnspecified\",\n + \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n + \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n + \ \"tvpgUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n + \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n + \ \"\"\n ],\n \"description\": \"The video's TV + Parental Guidelines (TVPG) rating.\"\n },\n \"rtcRating\": {\n + \ \"description\": \"The video's General Directorate of Radio, Television + and Cinematography (Mexico) rating.\",\n \"enum\": [\n \"rtcUnspecified\",\n + \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n + \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n + \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n + \ \"D\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"czfilmRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"12\",\n \"14\",\n \"18\",\n \"\"\n + \ ],\n \"enum\": [\n \"czfilmUnspecified\",\n + \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n + \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"description\": + \"The video's rating in the Czech Republic.\"\n },\n \"nmcRating\": + {\n \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n + \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n + \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n + \ \"nmcUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n + \ \"18+\",\n \"18TC\",\n \"\"\n ],\n + \ \"description\": \"The National Media Council ratings system for + United Arab Emirates.\"\n },\n \"mocRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's Ministerio de Cultura + (Colombia) rating.\",\n \"enum\": [\n \"mocUnspecified\",\n + \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n + \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n + \ \"mocUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n + \ \"Banned\",\n \"\"\n ]\n },\n \"egfilmRating\": + {\n \"type\": \"string\",\n \"description\": \"The video's + rating in Egypt.\",\n \"enum\": [\n \"egfilmUnspecified\",\n + \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n + \ \"egfilmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n + \ \"\"\n ]\n },\n \"eefilmRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n + \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n + \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n + \ \"eefilmK16\",\n \"eefilmUnrated\"\n ],\n + \ \"description\": \"The video's rating in Estonia.\",\n \"enumDescriptions\": + [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n + \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n + \ \"K-16\",\n \"\"\n ]\n },\n \"incaaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"ATP + (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 + a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n + \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X + (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"incaaUnspecified\",\n \"incaaAtp\",\n \"incaaSam13\",\n + \ \"incaaSam16\",\n \"incaaSam18\",\n \"incaaC\",\n + \ \"incaaUnrated\"\n ],\n \"description\": \"The + video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) + rating.\"\n },\n \"nkclvRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n + \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n + \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n + \ \"description\": \"The video's rating from the Nacion\xE3lais Kino + centrs (National Film Centre of Latvia).\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n + \ \"! 16+\",\n \"18+\",\n \"\"\n ]\n + \ },\n \"mpaaRating\": {\n \"enum\": [\n \"mpaaUnspecified\",\n + \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n + \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n + \ \"mpaaUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's Motion Picture Association of America + (MPAA) rating.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n + \ \"NC-17\",\n \"! X\",\n \"\"\n ]\n + \ },\n \"nbcRating\": {\n \"description\": \"The video's + rating from the Maldives National Bureau of Classification.\",\n \"type\": + \"string\",\n \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n + \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n + \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n + \ \"nbcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n + \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n + \ \"\"\n ]\n },\n \"lsfRating\": {\n \"enum\": + [\n \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n + \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n + \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n + \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n + \ \"21\",\n \"\"\n ],\n \"description\": + \"The video's rating from Indonesia's Lembaga Sensor Film.\"\n },\n + \ \"nbcplRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n + \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n + \ \"nbcplUnrated\"\n ],\n \"description\": \"The + video's rating in Poland.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"anatelRating\": + {\n \"type\": \"string\",\n \"description\": \"The video's + Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"F\",\n + \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n + \ \"R\",\n \"A\",\n \"\"\n ],\n \"enum\": + [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n + \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n + \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n + \ ]\n },\n \"bmukkRating\": {\n \"description\": + \"The video's rating from the Austrian Board of Media Classification (Bundesministerium + f\xFCr Unterricht, Kunst und Kultur).\",\n \"enum\": [\n \"bmukkUnspecified\",\n + \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n + \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n + \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Unrestricted\",\n \"6+\",\n + \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n + \ \"16+\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"agcomRating\": {\n \"description\": + \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni + (AGCOM).\",\n \"type\": \"string\",\n \"enum\": [\n \"agcomUnspecified\",\n + \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n + \ \"agcomUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n + \ \"\"\n ]\n },\n \"mcstRating\": {\n \"enum\": + [\n \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n + \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n + \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n + \ ],\n \"description\": \"The video's rating system for Vietnam + - MCST\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n + \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n + \ \"\"\n ]\n },\n \"rcnofRating\": {\n \"enum\": + [\n \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n + \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n + \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee + of the National Office of Film.\"\n },\n \"cnaRating\": {\n + \ \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n + \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n + \ \"cnaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"18+\",\n \"\"\n ],\n + \ \"description\": \"The video's rating from Romania's CONSILIUL NATIONAL + AL AUDIOVIZUALULUI (CNA).\",\n \"type\": \"string\"\n },\n + \ \"fskRating\": {\n \"enum\": [\n \"fskUnspecified\",\n + \ \"fsk0\",\n \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n + \ \"fsk18\",\n \"fskUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"FSK + 0\",\n \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n + \ \"FSK 18\",\n \"\"\n ],\n \"description\": + \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) + rating.\"\n },\n \"mdaRating\": {\n \"description\": + \"The video's rating from Singapore's Media Development Authority (MDA) and, + specifically, it's Board of Film Censors (BFC).\",\n \"enum\": [\n + \ \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n + \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n + \ \"mdaR21\",\n \"mdaUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n + \ \"R21\",\n \"\"\n ]\n },\n \"smsaRating\": + {\n \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n + \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n + \ \"smsaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from Statens medier\xE5d (Sweden's + National Media Council).\"\n },\n \"csaRating\": {\n \"description\": + \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, + which rates broadcast content.\",\n \"enum\": [\n \"csaUnspecified\",\n + \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n + \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"Interdiction\",\n + \ \"\"\n ]\n },\n \"cceRating\": {\n \"description\": + \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de + Espect\xB4culos.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"4\",\n \"6\",\n \"12\",\n \"16\",\n + \ \"18\",\n \"\",\n \"14\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"cceUnspecified\",\n + \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n + \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n + \ \"cceM14\"\n ]\n },\n \"skfilmRating\": + {\n \"description\": \"The video's rating in Slovakia.\",\n \"type\": + \"string\",\n \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n + \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n + \ \"skfilmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n + \ \"P8\",\n \"\"\n ]\n },\n \"medietilsynetRating\": + {\n \"description\": \"The video's rating from Medietilsynet, the + Norwegian Media Authority.\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n + \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n + \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n + \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"catvfrRating\": + {\n \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"8+\",\n \"13+\",\n \"16+\",\n + \ \"18+\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n + \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n + \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n + \ ]\n },\n \"fcbmRating\": {\n \"description\": + \"The video's rating from Malaysia's Film Censorship Board.\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n + \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n + \ \"18PL\",\n \"\"\n ],\n \"enum\": + [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n + \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n + \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n + \ \"fcbmUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"menaMpaaRating\": {\n \"enum\": [\n \"menaMpaaUnspecified\",\n + \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n + \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To + keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n + \ \"description\": \"The rating system for MENA countries, a clone + of MPAA. It is needed to prevent titles go live w/o additional QC check, since + some of them can be inappropriate for the countries at all. See b/33408548 + for more details.\",\n \"type\": \"string\"\n },\n \"mtrcbRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"R-13\",\n \"R-16\",\n + \ \"R-18\",\n \"X\",\n \"\"\n ],\n + \ \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n + \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n + \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Movie + and Television Review and Classification Board (Philippines).\"\n },\n + \ \"ilfilmRating\": {\n \"description\": \"The video's rating + in Israel.\",\n \"type\": \"string\",\n \"enum\": [\n \"ilfilmUnspecified\",\n + \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n + \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n + \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n + \ \"\"\n ]\n },\n \"djctqRating\": {\n \"description\": + \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o + e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n + \ \"14\",\n \"16\",\n \"18\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n + \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n + \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n + \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n + \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n + \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n + \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n + \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n + \ \"djctqUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"ifcoRating\": {\n \"enum\": [\n \"ifcoUnspecified\",\n + \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n + \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n + \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n + \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n + \ ],\n \"description\": \"The video's Irish Film Classification + Office (IFCO - Ireland) rating. See the IFCO website for more information.\",\n + \ \"type\": \"string\"\n },\n \"mccypRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ],\n \"description\": + \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) + Media Council for Children and Young People.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n + \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n + \ \"mccypUnrated\"\n ]\n },\n \"kmrbRating\": + {\n \"description\": \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) + rating. The KMRB rates videos in South Korea.\",\n \"enumDescriptions\": + [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 + \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n + \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n + \ \"\"\n ],\n \"enum\": [\n \"kmrbUnspecified\",\n + \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n + \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"oflcRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n + \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n + \ \"RP16\",\n \"RP18\"\n ],\n \"enum\": + [\n \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n + \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n + \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n + \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n + \ ],\n \"description\": \"The video's Office of Film and + Literature Classification (OFLC - New Zealand) rating.\",\n \"type\": + \"string\"\n },\n \"mekuRating\": {\n \"description\": + \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti + (National Audiovisual Institute).\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n + \ \"meku7\",\n \"meku12\",\n \"meku16\",\n + \ \"meku18\",\n \"mekuUnrated\"\n ]\n },\n + \ \"kfcbRating\": {\n \"enum\": [\n \"kfcbUnspecified\",\n + \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n + \ \"kfcbR\",\n \"kfcbUnrated\"\n ],\n \"description\": + \"The video's rating from the Kenya Film Classification Board.\",\n \"enumDescriptions\": + [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"bbfcRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's British Board of Film Classification (BBFC) rating.\",\n \"enum\": + [\n \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n + \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n + \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"R18\",\n \"\"\n ]\n + \ },\n \"pefilmRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"PT\",\n \"PG\",\n \"14\",\n + \ \"18\",\n \"\"\n ],\n \"enum\": [\n + \ \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n + \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating in Peru.\"\n },\n \"acbRating\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"Programs that have + been given a P classification by the Australian Communications and Media Authority. + These programs are intended for preschool children.\",\n \"Programs + that have been given a C classification by the Australian Communications and + Media Authority. These programs are intended for children (other than preschool + children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n + \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n + \ ],\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n + \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n + \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n + \ \"acbUnrated\"\n ]\n },\n \"rteRating\": + {\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n + \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n + \ ],\n \"description\": \"The video's rating from Ireland's + Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n + \ \"MA\",\n \"\"\n ]\n },\n \"nfvcbRating\": + {\n \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n + \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n + \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n + \ \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n + \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from Nigeria's National Film and Video Censors Board.\",\n \"type\": + \"string\"\n },\n \"fpbRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n + \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n + \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n + \ ],\n \"description\": \"The video's rating from South Africa's + Film and Publication Board.\",\n \"enum\": [\n \"fpbUnspecified\",\n + \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n + \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n + \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n + \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"type\": + \"string\"\n },\n \"ytRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"description\": \"A rating that YouTube uses to identify + age-restricted content.\"\n },\n \"grfilmRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"K\",\n + \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n + \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n + \ \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n + \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n + \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n + \ \"grfilmUnrated\"\n ],\n \"description\": \"The + video's rating in Greece.\"\n },\n \"fmocRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"E\",\n \"\"\n ],\n \"description\": + \"This property has been deprecated. Use the contentDetails.contentRating.cncRating + instead.\",\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n + \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n + \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n + \ ]\n },\n \"resorteviolenciaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n + \ \"D\",\n \"E\",\n \"\"\n ],\n \"enum\": + [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n + \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n + \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n + \ ],\n \"description\": \"The video's rating in Venezuela.\",\n + \ \"type\": \"string\"\n },\n \"icaaRating\": {\n \"enum\": + [\n \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n + \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n + \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n + \ ],\n \"description\": \"The video's Instituto de la Cinematograf\xEDa + y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n + \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n + \ \"18\",\n \"X\",\n \"\"\n ]\n },\n + \ \"chvrsRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"enum\": + [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n + \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n + \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n + \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n + \ ]\n },\n \"cccRating\": {\n \"description\": + \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n + \ \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n + \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n + \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Todo + espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n + \ \"14+\",\n \"18+\",\n \"18+ - contenido + excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n + \ \"\"\n ]\n },\n \"cscfRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n + \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from Luxembourg's Commission de surveillance de la classification + des films (CSCF).\",\n \"enum\": [\n \"cscfUnspecified\",\n + \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n + \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n + \ \"cscf18\",\n \"cscfUnrated\"\n ]\n },\n + \ \"mpaatRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"GB\",\n + \ \"RB\"\n ],\n \"description\": \"The rating + system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n + \ },\n \"cicfRating\": {\n \"enum\": [\n \"cicfUnspecified\",\n + \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n + \ \"cicfUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"E\",\n + \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n + \ \"description\": \"The video's rating from the Commission de Contr\xF4le + des Films (Belgium).\"\n },\n \"russiaRating\": {\n \"description\": + \"The video's National Film Registry of the Russian Federation (MKRF - Russia) + rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n + \ \"16+\",\n \"18+\",\n \"\"\n ],\n + \ \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n + \ \"russia6\",\n \"russia12\",\n \"russia16\",\n + \ \"russia18\",\n \"russiaUnrated\"\n ]\n },\n + \ \"ecbmctRating\": {\n \"description\": \"Rating system in + Turkey - Evaluation and Classification Board of the Ministry of Culture and + Tourism\",\n \"enum\": [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n + \ \"ecbmct7a\",\n \"ecbmct7plus\",\n \"ecbmct13a\",\n + \ \"ecbmct13plus\",\n \"ecbmct15a\",\n \"ecbmct15plus\",\n + \ \"ecbmct18plus\",\n \"ecbmctUnrated\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n + \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"kijkwijzerRating\": + {\n \"description\": \"The video's NICAM/Kijkwijzer rating from the + Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\",\n + \ \"enumDescriptions\": [\n \"\",\n \"AL\",\n + \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n \"kijkwijzer6\",\n + \ \"kijkwijzer9\",\n \"kijkwijzer12\",\n \"kijkwijzer16\",\n + \ \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n ],\n + \ \"type\": \"string\"\n },\n \"catvRating\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n + \ \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n + \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n + \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n + \ \"catvE\"\n ],\n \"enumDescriptions\": [\n \"\",\n + \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n + \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n + \ ]\n },\n \"moctwRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n + \ \"R-12\",\n \"R-15\"\n ],\n \"enum\": + [\n \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n + \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n + \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"description\": + \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\"\n + \ },\n \"smaisRating\": {\n \"description\": \"The video's + rating in Iceland.\",\n \"enum\": [\n \"smaisUnspecified\",\n + \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n + \ \"smais14\",\n \"smais16\",\n \"smais18\",\n + \ \"smaisUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n + \ \"14\",\n \"16\",\n \"18\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"fpbRatingReasons\": + {\n \"description\": \"Reasons that explain why the video received + its FPB (South Africa) rating.\",\n \"items\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"South + Africa rating content descriptors.\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n + \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n + \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n + \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n + \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n + \ ]\n },\n \"type\": \"array\"\n },\n \"mibacRating\": + {\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n + \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n + \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n + \ \"mibacUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from the Ministero dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ContentRating\",\n \"description\": \"Ratings schemes. + The country-specific ratings are mostly for movies and shows. LINT.IfChange\"\n + \ },\n \"ChannelTopicDetails\": {\n \"properties\": {\n \"topicCategories\": + {\n \"description\": \"A list of Wikipedia URLs that describe the + channel's content.\",\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"type\": \"array\"\n },\n \"topicIds\": + {\n \"description\": \"A list of Freebase topic IDs associated with + the channel. You can retrieve information about each topic using the Freebase + Topic API.\",\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"type\": \"array\"\n }\n },\n \"description\": + \"Freebase topic information related to the channel.\",\n \"type\": \"object\",\n + \ \"id\": \"ChannelTopicDetails\"\n },\n \"LiveChatSuperChatDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"amountMicros\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n + \ },\n \"userComment\": {\n \"description\": \"The comment + added by the user to this Super Chat event.\",\n \"type\": \"string\"\n + \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the purchase was made.\"\n },\n \"tier\": + {\n \"description\": \"The tier in which the amount belongs. Lower + amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"amountDisplayString\": + {\n \"description\": \"A rendered string that displays the fund amount + and currency to the user.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"LiveChatSuperChatDetails\"\n },\n \"CommentListResponse\": + {\n \"id\": \"CommentListResponse\",\n \"properties\": {\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"Comment\"\n },\n \"description\": \"A list of comments + that match the request criteria.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#commentListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#commentListResponse\\\".\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsRecommendation\": + {\n \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the recommended + resource.\",\n \"$ref\": \"ResourceId\"\n },\n \"reason\": + {\n \"enum\": [\n \"reasonUnspecified\",\n \"videoFavorited\",\n + \ \"videoLiked\",\n \"videoWatched\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The reason that the resource is recommended to the user.\",\n \"type\": + \"string\"\n },\n \"seedResourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The seedResourceId object contains + information about the resource that caused the recommendation.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsRecommendation\",\n + \ \"description\": \"Information that identifies the recommended resource.\"\n + \ },\n \"LiveChatSuperStickerDetails\": {\n \"properties\": {\n + \ \"superStickerMetadata\": {\n \"$ref\": \"SuperStickerMetadata\",\n + \ \"description\": \"Information about the Super Sticker.\"\n },\n + \ \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the purchase was made.\"\n },\n \"amountDisplayString\": + {\n \"type\": \"string\",\n \"description\": \"A rendered + string that displays the fund amount and currency to the user.\"\n },\n + \ \"amountMicros\": {\n \"description\": \"The amount purchased + by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": + \"uint64\",\n \"type\": \"string\"\n },\n \"tier\": + {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The tier in which the amount belongs. Lower amounts belong to lower tiers. + The lowest tier is 1.\"\n }\n },\n \"id\": \"LiveChatSuperStickerDetails\",\n + \ \"type\": \"object\"\n },\n \"LiveChatModeratorSnippet\": {\n + \ \"id\": \"LiveChatModeratorSnippet\",\n \"properties\": {\n \"liveChatId\": + {\n \"description\": \"The ID of the live chat this moderator can + act on.\",\n \"type\": \"string\"\n },\n \"moderatorDetails\": + {\n \"description\": \"Details about the moderator.\",\n \"$ref\": + \"ChannelProfileDetails\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"CommentThreadListResponse\": {\n \"properties\": {\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n },\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#commentThreadListResponse\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"items\": {\n \"description\": \"A list of comment threads + that match the request criteria.\",\n \"items\": {\n \"$ref\": + \"CommentThread\"\n },\n \"type\": \"array\"\n }\n + \ },\n \"id\": \"CommentThreadListResponse\",\n \"type\": \"object\"\n + \ },\n \"Entity\": {\n \"properties\": {\n \"typeId\": {\n + \ \"type\": \"string\"\n },\n \"url\": {\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"Entity\",\n \"type\": \"object\"\n + \ },\n \"RelatedEntity\": {\n \"properties\": {\n \"entity\": + {\n \"$ref\": \"Entity\"\n }\n },\n \"id\": \"RelatedEntity\",\n + \ \"type\": \"object\"\n },\n \"Caption\": {\n \"id\": \"Caption\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#caption\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#caption\\\".\",\n \"type\": \"string\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the caption track.\",\n \"type\": \"string\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n + \ ]\n }\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the caption.\",\n \"$ref\": + \"CaptionSnippet\"\n }\n },\n \"description\": \"A *caption* + resource represents a YouTube caption track. A caption track is associated + with exactly one YouTube video.\"\n },\n \"VideoSuggestionsTagSuggestion\": + {\n \"type\": \"object\",\n \"description\": \"A single tag suggestion + with it's relevance information.\",\n \"properties\": {\n \"categoryRestricts\": + {\n \"description\": \"A set of video categories for which the tag + is relevant. You can use this information to display appropriate tag suggestions + based on the video category that the video uploader associates with the video. + By default, tag suggestions are relevant for all categories if there are no + restricts defined for the keyword.\",\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"tag\": + {\n \"description\": \"The keyword tag suggested for the video.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoSuggestionsTagSuggestion\"\n + \ },\n \"VideoFileDetailsAudioStream\": {\n \"properties\": {\n + \ \"bitrateBps\": {\n \"format\": \"uint64\",\n \"description\": + \"The audio stream's bitrate, in bits per second.\",\n \"type\": + \"string\"\n },\n \"codec\": {\n \"type\": \"string\",\n + \ \"description\": \"The audio codec that the stream uses.\"\n },\n + \ \"vendor\": {\n \"description\": \"A value that uniquely + identifies a video vendor. Typically, the value is a four-letter vendor code.\",\n + \ \"type\": \"string\"\n },\n \"channelCount\": {\n + \ \"type\": \"integer\",\n \"description\": \"The number + of audio channels that the stream contains.\",\n \"format\": \"uint32\"\n + \ }\n },\n \"id\": \"VideoFileDetailsAudioStream\",\n \"description\": + \"Information about an audio stream.\",\n \"type\": \"object\"\n },\n + \ \"AccessPolicy\": {\n \"description\": \"Rights management policy + for YouTube resources.\",\n \"type\": \"object\",\n \"id\": \"AccessPolicy\",\n + \ \"properties\": {\n \"allowed\": {\n \"type\": \"boolean\",\n + \ \"description\": \"The value of allowed indicates whether the access + to the policy is allowed or denied by default.\"\n },\n \"exception\": + {\n \"type\": \"array\",\n \"description\": \"A list of + region codes that identify countries where the default policy do not apply.\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n }\n + \ }\n },\n \"VideoCategory\": {\n \"properties\": {\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the video category.\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#videoCategory\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#videoCategory\\\".\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the video category, including its title.\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"A *videoCategory* resource identifies + a category that has been or could be associated with uploaded videos.\",\n + \ \"id\": \"VideoCategory\"\n },\n \"ChannelListResponse\": {\n + \ \"properties\": {\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#channelListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#channelListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"Channel\"\n },\n \"type\": \"array\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"ChannelListResponse\"\n },\n \"LiveChatMessageDeletedDetails\": + {\n \"properties\": {\n \"deletedMessageId\": {\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveChatMessageDeletedDetails\",\n + \ \"type\": \"object\"\n },\n \"MembershipsDurationAtLevel\": {\n + \ \"id\": \"MembershipsDurationAtLevel\",\n \"properties\": {\n \"memberTotalDurationMonths\": + {\n \"type\": \"integer\",\n \"description\": \"The cumulative + time the user has been a member for the given level in complete months (the + time is rounded down to the nearest integer).\",\n \"format\": \"int32\"\n + \ },\n \"level\": {\n \"type\": \"string\",\n \"description\": + \"Pricing level ID.\"\n },\n \"memberSince\": {\n \"description\": + \"The date and time when the user became a continuous member for the given + level.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\"\n },\n \"VideoLiveStreamingDetails\": {\n \"description\": + \"Details about the live streaming metadata.\",\n \"properties\": {\n + \ \"scheduledEndTime\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The time that the broadcast is scheduled + to end. If the value is empty or the property is not present, then the broadcast + is scheduled to contiue indefinitely.\"\n },\n \"actualEndTime\": + {\n \"description\": \"The time that the broadcast actually ended. + This value will not be available until the broadcast is over.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"scheduledStartTime\": + {\n \"format\": \"date-time\",\n \"description\": \"The + time that the broadcast is scheduled to begin.\",\n \"type\": \"string\"\n + \ },\n \"actualStartTime\": {\n \"format\": \"date-time\",\n + \ \"type\": \"string\",\n \"description\": \"The time that + the broadcast actually started. This value will not be available until the + broadcast begins.\"\n },\n \"activeLiveChatId\": {\n \"description\": + \"The ID of the currently active live chat attached to this video. This field + is filled only if the video is a currently live broadcast that has live chat. + Once the broadcast transitions to complete this field will be removed and + the live chat closed down. For persistent broadcasts that live chat id will + no longer be tied to this video but rather to the new video being displayed + at the persistent page.\",\n \"type\": \"string\"\n },\n \"concurrentViewers\": + {\n \"description\": \"The number of viewers currently watching the + broadcast. The property and its value will be present if the broadcast has + current viewers and the broadcast owner has not hidden the viewcount for the + video. Note that YouTube stops tracking the number of concurrent viewers for + a broadcast when the broadcast ends. So, this property would not identify + the number of viewers watching an archived video of a live broadcast that + already ended.\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"VideoLiveStreamingDetails\"\n },\n \"MembershipsDuration\": {\n \"id\": + \"MembershipsDuration\",\n \"type\": \"object\",\n \"properties\": + {\n \"memberSince\": {\n \"description\": \"The date and time + when the user became a continuous member across all levels.\",\n \"type\": + \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"format\": + \"int32\",\n \"description\": \"The cumulative time the user has + been a member across all levels in complete months (the time is rounded down + to the nearest integer).\",\n \"type\": \"integer\"\n }\n + \ }\n },\n \"LiveChatTextMessageDetails\": {\n \"id\": \"LiveChatTextMessageDetails\",\n + \ \"properties\": {\n \"messageText\": {\n \"type\": \"string\",\n + \ \"description\": \"The user's message.\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"MonitorStreamInfo\": {\n \"properties\": + {\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": + \"HTML code that embeds a player that plays the monitor stream.\"\n },\n + \ \"enableMonitorStream\": {\n \"type\": \"boolean\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"This value determines + whether the monitor stream is enabled for the broadcast. If the monitor stream + is enabled, then YouTube will broadcast the event content on a special stream + intended only for the broadcaster's consumption. The broadcaster can use the + stream to review the event content and also to identify the optimal times + to insert cuepoints. You need to set this value to true if you intend to have + a broadcast delay for your event. *Note:* This property cannot be updated + once the broadcast is in the testing or live state.\"\n },\n \"broadcastStreamDelayMs\": + {\n \"type\": \"integer\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"If you have set the enableMonitorStream property + to true, then this property determines the length of the live broadcast delay.\",\n + \ \"format\": \"uint32\"\n }\n },\n \"id\": \"MonitorStreamInfo\",\n + \ \"description\": \"Settings and Info of the monitor stream\",\n \"type\": + \"object\"\n },\n \"VideoCategorySnippet\": {\n \"description\": + \"Basic details about a video category, such as its localized title.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"channelId\": + {\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"type\": + \"string\",\n \"description\": \"The YouTube channel that created + the video category.\"\n },\n \"title\": {\n \"description\": + \"The video category's title.\",\n \"type\": \"string\"\n },\n + \ \"assignable\": {\n \"type\": \"boolean\"\n }\n },\n + \ \"id\": \"VideoCategorySnippet\"\n },\n \"I18nLanguageSnippet\": + {\n \"properties\": {\n \"name\": {\n \"description\": + \"The human-readable name of the language in the language itself.\",\n \"type\": + \"string\"\n },\n \"hl\": {\n \"description\": \"A + short BCP-47 code that uniquely identifies a language.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Basic details about + an i18n language, such as language code and human-readable name.\",\n \"id\": + \"I18nLanguageSnippet\",\n \"type\": \"object\"\n },\n \"PlaylistItemListResponse\": + {\n \"id\": \"PlaylistItemListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\",\n + \ \"default\": \"youtube#playlistItemListResponse\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"items\": + {\n \"description\": \"A list of playlist items that match the request + criteria.\",\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n + \ },\n \"type\": \"array\"\n },\n \"etag\": + {\n \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n }\n }\n },\n \"Channel\": + {\n \"type\": \"object\",\n \"id\": \"Channel\",\n \"description\": + \"A *channel* resource contains information about a YouTube channel.\",\n + \ \"properties\": {\n \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n + \ \"description\": \"The statistics object encapsulates statistics + for the channel.\"\n },\n \"contentOwnerDetails\": {\n \"description\": + \"The contentOwnerDetails object encapsulates channel data that is relevant + for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n + \ },\n \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n + \ \"description\": \"The auditionDetails object encapsulates channel + data that is relevant for YouTube Partners during the audition process.\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel.\"\n },\n + \ \"status\": {\n \"description\": \"The status object encapsulates + information about the privacy status of the channel.\",\n \"$ref\": + \"ChannelStatus\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#channel\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\"\n + \ },\n \"brandingSettings\": {\n \"description\": \"The + brandingSettings object encapsulates information about the branding of the + channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n },\n + \ \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n + \ \"description\": \"The contentDetails object encapsulates information + about the channel's content.\"\n },\n \"localizations\": {\n + \ \"description\": \"Localizations for different languages\",\n \"additionalProperties\": + {\n \"$ref\": \"ChannelLocalization\"\n },\n \"type\": + \"object\"\n },\n \"conversionPings\": {\n \"description\": + \"The conversionPings object encapsulates information about conversion pings + that need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n + \ },\n \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the channel, such as its title, description, and thumbnail images.\"\n },\n + \ \"topicDetails\": {\n \"$ref\": \"ChannelTopicDetails\",\n + \ \"description\": \"The topicDetails object encapsulates information + about Freebase topics associated with the channel.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n }\n }\n },\n \"ImageSettings\": {\n \"properties\": + {\n \"bannerTvHighImageUrl\": {\n \"description\": \"Banner + image. TV size high resolution (1920x1080).\",\n \"type\": \"string\"\n + \ },\n \"bannerMobileImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"Banner image. Mobile size (640x175).\"\n },\n + \ \"bannerExternalUrl\": {\n \"description\": \"This is generated + when a ChannelBanner.Insert request has succeeded for the given channel.\",\n + \ \"type\": \"string\"\n },\n \"trackingImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL for + a 1px by 1px tracking pixel that can be used to collect statistics for views + of the channel or video pages.\"\n },\n \"bannerMobileExtraHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size high resolution (1440x395).\"\n },\n \"watchIconImageUrl\": + {\n \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": + {\n \"description\": \"The URL for the 854px by 70px image that appears + below the video player in the expanded video view of the video watch page.\",\n + \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTabletLowImageUrl\": + {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n + \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": + {\n \"description\": \"The image map script for the small banner + image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTabletExtraHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size extra high resolution (2560x424).\"\n },\n \"bannerMobileHdImageUrl\": + {\n \"description\": \"Banner image. Mobile size high resolution + (1280x360).\",\n \"type\": \"string\"\n },\n \"backgroundImageUrl\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The URL for the background image shown on the video watch page. The image + should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n + \ \"bannerImageUrl\": {\n \"type\": \"string\",\n \"description\": + \"Banner image. Desktop size (1060x175).\"\n },\n \"bannerTvLowImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size low resolution (854x480).\"\n },\n \"bannerMobileLowImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size low resolution (320x88).\"\n },\n \"bannerTabletHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size high resolution (2276x377).\"\n },\n \"bannerMobileMediumHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size medium/high resolution (960x263).\"\n },\n \"bannerTvImageUrl\": + {\n \"description\": \"Banner image. TV size extra high resolution + (2120x1192).\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The URL for the 640px by 70px banner image that appears below the video + player in the default view of the video watch page. The URL for the image + that appears above the top-left corner of the video player. This is a 25-pixel-high + image with a flexible width that cannot exceed 170 pixels.\"\n },\n + \ \"bannerTabletImageUrl\": {\n \"description\": \"Banner image. + Tablet size (1707x283).\",\n \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": + {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n + \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageImapScript\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The image map script for the large banner image.\"\n }\n },\n + \ \"description\": \"Branding properties for images associated with the + channel.\",\n \"id\": \"ImageSettings\",\n \"type\": \"object\"\n + \ },\n \"SubscriptionSubscriberSnippet\": {\n \"id\": \"SubscriptionSubscriberSnippet\",\n + \ \"description\": \"Basic details about a subscription's subscriber including + title, description, channel ID and thumbnails.\",\n \"properties\": {\n + \ \"title\": {\n \"type\": \"string\",\n \"description\": + \"The title of the subscriber.\"\n },\n \"thumbnails\": {\n + \ \"description\": \"Thumbnails for this subscriber.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The channel ID of the subscriber.\"\n + \ },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The description of the subscriber.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"MemberListResponse\": + {\n \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"Member\"\n },\n \"type\": \"array\",\n + \ \"description\": \"A list of members that match the request criteria.\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#memberListResponse\\\".\",\n \"default\": + \"youtube#memberListResponse\",\n \"type\": \"string\"\n },\n + \ \"nextPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the next page + in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"MemberListResponse\"\n },\n \"CaptionListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"Caption\"\n },\n + \ \"type\": \"array\",\n \"description\": \"A list of captions + that match the request criteria.\"\n },\n \"visitorId\": {\n + \ \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n + \ \"default\": \"youtube#captionListResponse\"\n }\n },\n + \ \"id\": \"CaptionListResponse\"\n },\n \"ChannelSnippet\": {\n + \ \"id\": \"ChannelSnippet\",\n \"properties\": {\n \"thumbnails\": + {\n \"description\": \"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. When displaying thumbnails in your application, make sure that + your code uses the image URLs exactly as they are returned in API responses. + For example, your application should not use the http domain instead of the + https domain in a URL returned in an API response. Beginning in July 2018, + channel thumbnail URLs will only be available in the https domain, which is + how the URLs appear in API responses. After that time, you might see broken + images in your application if it tries to load YouTube images from the http + domain. Thumbnail images might be empty for newly created channels and might + take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n + \ \"type\": \"string\",\n \"description\": \"The date and + time that the channel was created.\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The language + of the channel's default title and description.\"\n },\n \"description\": + {\n \"description\": \"The description of the channel.\",\n \"type\": + \"string\"\n },\n \"localized\": {\n \"description\": + \"Localized title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The channel's title.\"\n },\n \"country\": {\n \"description\": + \"The country of the channel.\",\n \"type\": \"string\"\n },\n + \ \"customUrl\": {\n \"type\": \"string\",\n \"description\": + \"The custom url of the channel.\"\n }\n },\n \"description\": + \"Basic details about a channel, including title, description and thumbnails.\",\n + \ \"type\": \"object\"\n },\n \"VideoProjectDetails\": {\n \"type\": + \"object\",\n \"id\": \"VideoProjectDetails\",\n \"properties\": + {},\n \"description\": \"DEPRECATED. b/157517979: This part was never + populated after it was added. However, it sees non-zero traffic because there + is generated client code in the wild that refers to it [1]. We keep this field + and do NOT remove it because otherwise V3 would return an error when this + part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n + \ },\n \"LiveStream\": {\n \"type\": \"object\",\n \"properties\": + {\n \"id\": {\n \"description\": \"The ID that YouTube assigns + to uniquely identify the stream.\",\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.update\"\n + \ ]\n }\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the stream, including its + channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + content_details object contains information about the stream, including the + closed captions ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#liveStream\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveStream\\\".\",\n \"type\": \"string\"\n + \ },\n \"cdn\": {\n \"description\": \"The cdn object + defines the live stream's content delivery network (CDN) settings. These settings + provide details about the manner in which you stream your content to YouTube.\",\n + \ \"$ref\": \"CdnSettings\"\n },\n \"status\": {\n \"$ref\": + \"LiveStreamStatus\",\n \"description\": \"The status object contains + information about live stream's status.\"\n },\n \"etag\": {\n + \ \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveStream\",\n \"description\": + \"A live stream describes a live ingestion point.\"\n },\n \"TestItem\": + {\n \"id\": \"TestItem\",\n \"type\": \"object\",\n \"properties\": + {\n \"gaia\": {\n \"type\": \"string\",\n \"format\": + \"int64\"\n },\n \"id\": {\n \"type\": \"string\"\n + \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n + \ },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n + \ }\n }\n },\n \"Activity\": {\n \"type\": \"object\",\n + \ \"id\": \"Activity\",\n \"description\": \"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.\",\n \"properties\": + {\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the activity.\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the activity, including the activity's type and group + ID.\",\n \"$ref\": \"ActivitySnippet\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource\",\n \"type\": + \"string\"\n },\n \"contentDetails\": {\n \"$ref\": + \"ActivityContentDetails\",\n \"description\": \"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.\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n + \ \"default\": \"youtube#activity\"\n }\n }\n },\n + \ \"LiveBroadcastContentDetails\": {\n \"description\": \"Detailed + settings of a broadcast.\",\n \"properties\": {\n \"enableAutoStart\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether auto start is enabled for this broadcast. The default value + for this property is false. This setting can only be used by Events.\"\n },\n + \ \"enableLowLatency\": {\n \"type\": \"boolean\",\n \"description\": + \"Indicates whether this broadcast has low latency enabled.\"\n },\n + \ \"enableContentEncryption\": {\n \"description\": \"This + setting indicates whether YouTube should enable content encryption for the + broadcast.\",\n \"type\": \"boolean\"\n },\n \"startWithSlate\": + {\n \"description\": \"This setting indicates whether the broadcast + should automatically begin with an in-stream slate when you update the broadcast's + status to live. After updating the status, you then need to send a liveCuepoints.insert + request that sets the cuepoint's eventState to end to remove the in-stream + slate and make your broadcast stream visible to viewers.\",\n \"type\": + \"boolean\"\n },\n \"enableClosedCaptions\": {\n \"description\": + \"This setting indicates whether HTTP POST closed captioning is enabled for + this broadcast. The ingestion URL of the closed captions is returned through + the liveStreams API. This is mutually exclusive with using the closed_captions_type + property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n + \ \"type\": \"boolean\"\n },\n \"monitorStream\": {\n + \ \"$ref\": \"MonitorStreamInfo\",\n \"description\": \"The + monitorStream object contains information about the monitor stream, which + the broadcaster can use to review the event content before the broadcast stream + is shown publicly.\"\n },\n \"enableAutoStop\": {\n \"description\": + \"This setting indicates whether auto stop is enabled for this broadcast. + The default value for this property is false. This setting can only be used + by Events.\",\n \"type\": \"boolean\"\n },\n \"recordFromStart\": + {\n \"description\": \"Automatically start recording after the event + goes live. The default value for this property is true. *Important:* You must + also set the enableDvr property's value to true if you want the playback to + be available immediately after the broadcast ends. If you set this property's + value to true but do not also set the enableDvr property to true, there may + be a delay of around one day before the archived video will be available for + playback.\",\n \"type\": \"boolean\"\n },\n \"stereoLayout\": + {\n \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n + \ \"leftRight\",\n \"topBottom\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The 3D stereo layout of this broadcast. This defaults to mono.\"\n },\n + \ \"latencyPreference\": {\n \"description\": \"If both this + and enable_low_latency are set, they must match. LATENCY_NORMAL should match + enable_low_latency=false LATENCY_LOW should match enable_low_latency=true + LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"type\": + \"string\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n + \ \"normal\",\n \"low\",\n \"ultraLow\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"Best + for: highest quality viewer playbacks and higher resolutions.\",\n \"Best + for: near real-time interaction, with minimal playback buffering.\",\n \"Best + for: real-time interaction Does not support: Closed captions, 1440p, and 4k + resolutions\"\n ]\n },\n \"boundStreamLastUpdateTimeMs\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the live stream referenced + by boundStreamId was last updated.\"\n },\n \"enableEmbed\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether the broadcast video can be played in an embedded player. + If you choose to archive the video (using the enableArchive property), this + setting will also apply to the archived video.\"\n },\n \"boundStreamId\": + {\n \"type\": \"string\",\n \"description\": \"This value + uniquely identifies the live stream bound to the broadcast.\"\n },\n + \ \"closedCaptionsType\": {\n \"type\": \"string\",\n \"enum\": + [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n + \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"enableDvr\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + determines whether viewers can access DVR controls while watching the video. + DVR controls enable the viewer to control the video playback experience by + pausing, rewinding, or fast forwarding content. The default value for this + property is true. *Important:* You must set the value to true and also set + the enableArchive property's value to true if you want to make playback available + immediately after the broadcast ends.\"\n },\n \"mesh\": {\n + \ \"description\": \"The mesh for projecting the video if projection + is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding + of 3D mesh data that follows the Spherical Video V2 RFC specification for + an mshp box, excluding the box size and type but including the following four + reserved zero bytes for the version and flags.\",\n \"format\": \"byte\",\n + \ \"type\": \"string\"\n },\n \"projection\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The projection format of this broadcast. This defaults to rectangular.\",\n + \ \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n + \ \"360\",\n \"mesh\"\n ]\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"LiveBroadcastContentDetails\"\n + \ },\n \"VideoAbuseReportSecondaryReason\": {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n + \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of this abuse report secondary reason.\"\n + \ },\n \"label\": {\n \"type\": \"string\",\n \"description\": + \"The localized label for this abuse report secondary reason.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"InvideoTiming\": {\n \"description\": + \"Describes a temporal position of a visual widget inside a video.\",\n \"type\": + \"object\",\n \"properties\": {\n \"type\": {\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n + \ \"description\": \"Describes a timing type. If the value is offsetFromStart, + then the offsetMs field represents an offset from the start of the video. + If the value is offsetFromEnd, then the offsetMs field represents an offset + from the end of the video.\",\n \"type\": \"string\"\n },\n + \ \"durationMs\": {\n \"format\": \"uint64\",\n \"description\": + \"Defines the duration in milliseconds for which the promotion should be displayed. + If missing, the client should use the default.\",\n \"type\": \"string\"\n + \ },\n \"offsetMs\": {\n \"format\": \"uint64\",\n \"description\": + \"Defines the time at which the promotion will appear. Depending on the value + of type the value of the offsetMs field will represent a time offset from + the start or from the end of the video, expressed in milliseconds.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"InvideoTiming\"\n },\n + \ \"PlaylistStatus\": {\n \"properties\": {\n \"privacyStatus\": + {\n \"type\": \"string\",\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"description\": \"The playlist's privacy status.\"\n }\n + \ },\n \"id\": \"PlaylistStatus\",\n \"type\": \"object\"\n + \ },\n \"LiveChatFanFundingEventDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveChatFanFundingEventDetails\",\n \"properties\": {\n + \ \"amountMicros\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"The amount of the fund.\"\n },\n + \ \"currency\": {\n \"description\": \"The currency in which + the fund was made.\",\n \"type\": \"string\"\n },\n \"userComment\": + {\n \"type\": \"string\",\n \"description\": \"The comment + added by the user to this fan funding event.\"\n },\n \"amountDisplayString\": + {\n \"type\": \"string\",\n \"description\": \"A rendered + string that displays the fund amount and currency to the user.\"\n }\n + \ }\n },\n \"CaptionSnippet\": {\n \"description\": \"Basic + details about a caption track, such as its language and name.\",\n \"type\": + \"object\",\n \"id\": \"CaptionSnippet\",\n \"properties\": {\n + \ \"status\": {\n \"description\": \"The caption track's status.\",\n + \ \"enum\": [\n \"serving\",\n \"syncing\",\n + \ \"failed\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"audioTrackType\": {\n \"type\": \"string\",\n \"description\": + \"The type of audio track associated with the caption track.\",\n \"enum\": + [\n \"unknown\",\n \"primary\",\n \"commentary\",\n + \ \"descriptive\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"failureReason\": {\n \"enum\": + [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The reason that YouTube failed to process the caption track. This property + is only present if the state property's value is failed.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"isAutoSynced\": {\n \"description\": \"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.\",\n + \ \"type\": \"boolean\"\n },\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the video associated with the caption track. @mutable youtube.captions.insert\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n }\n },\n \"name\": {\n \"description\": + \"The name of the caption track. The name is intended to be visible to the + user as an option during playback.\",\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n }\n },\n \"isCC\": {\n \"type\": + \"boolean\",\n \"description\": \"Indicates whether the track contains + closed captions for the deaf and hard of hearing. The default value is false.\"\n + \ },\n \"trackKind\": {\n \"description\": \"The caption + track's type.\",\n \"type\": \"string\",\n \"enum\": [\n + \ \"standard\",\n \"ASR\",\n \"forced\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"isLarge\": {\n \"type\": + \"boolean\",\n \"description\": \"Indicates whether the caption track + uses large text for the vision-impaired. The default value is false.\"\n },\n + \ \"isDraft\": {\n \"type\": \"boolean\",\n \"description\": + \"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. @mutable youtube.captions.insert + youtube.captions.update\"\n },\n \"isEasyReader\": {\n \"type\": + \"boolean\",\n \"description\": \"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.\"\n },\n \"language\": + {\n \"description\": \"The language of the caption track. The property + value is a BCP-47 language tag.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"lastUpdated\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time when the caption track was last updated.\"\n }\n + \ }\n },\n \"PlaylistItem\": {\n \"description\": \"A *playlistItem* + resource identifies another resource, such as a video, that is included in + a playlist. In addition, the playlistItem resource contains details about + the included resource that pertain specifically to how that resource is used + in that playlist. YouTube uses playlists to identify special collections of + videos for a channel, such as: - uploaded videos - favorite videos - positively + rated (liked) videos - watch history - watch later To be more specific, these + lists are associated with a channel, which is a collection of a person, group, + or company's videos, playlists, and other YouTube information. You can retrieve + the playlist IDs for each of these lists from the channel resource for a given + channel. You can then use the playlistItems.list method to retrieve any of + those lists. You can also add or remove items from those lists by calling + the playlistItems.insert and playlistItems.delete methods. For example, if + a user gives a positive rating to a video, you would insert that video into + the liked videos playlist for that user's channel.\",\n \"id\": \"PlaylistItem\",\n + \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the playlist item, such as its title and position in the playlist.\",\n + \ \"$ref\": \"PlaylistItemSnippet\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#playlistItem\\\".\",\n \"default\": + \"youtube#playlistItem\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the playlist item.\",\n \"type\": \"string\"\n },\n \"status\": + {\n \"description\": \"The status object contains information about + the playlist item's privacy status.\",\n \"$ref\": \"PlaylistItemStatus\"\n + \ },\n \"contentDetails\": {\n \"$ref\": \"PlaylistItemContentDetails\",\n + \ \"description\": \"The contentDetails object is included in the + resource if the included item is a YouTube video. The object contains additional + information about the video.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"VideoProcessingDetailsProcessingProgress\": {\n \"type\": + \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n + \ \"properties\": {\n \"timeLeftMs\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"An + estimate of the amount of time, in millseconds, that YouTube needs to finish + processing the video.\"\n },\n \"partsProcessed\": {\n \"format\": + \"uint64\",\n \"description\": \"The number of parts of the video + that YouTube has already processed. You can estimate the percentage of the + video that YouTube has already processed by calculating: 100 * parts_processed + / parts_total Note that since the estimated number of parts could increase + without a corresponding increase in the number of parts that have already + been processed, it is possible that the calculated progress could periodically + decrease while YouTube processes a video.\",\n \"type\": \"string\"\n + \ },\n \"partsTotal\": {\n \"format\": \"uint64\",\n + \ \"type\": \"string\",\n \"description\": \"An estimate + of the total number of parts that need to be processed for the video. The + number may be updated with more precise estimates while YouTube processes + the video.\"\n }\n },\n \"description\": \"Video processing + progress and completion time estimate.\"\n },\n \"LevelDetails\": {\n + \ \"type\": \"object\",\n \"properties\": {\n \"displayName\": + {\n \"type\": \"string\",\n \"description\": \"The name + that should be used when referring to this level.\"\n }\n },\n + \ \"id\": \"LevelDetails\"\n },\n \"ChannelContentDetails\": {\n + \ \"description\": \"Details about the content of a channel.\",\n \"properties\": + {\n \"relatedPlaylists\": {\n \"type\": \"object\",\n \"properties\": + {\n \"watchHistory\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the playlist that contains the + channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\"\n },\n \"likes\": {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"ActivityListResponse\"\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/activities\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\"\n }\n }\n - \ },\n \"videoAbuseReportReasons\": {\n \"methods\": {\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"parameters\": {\n \"hl\": - {\n \"default\": \"en-US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource parts that the API response will include. Supported values are id - and snippet.\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"id\": - \"youtube.videoAbuseReportReasons.list\",\n \"response\": {\n \"$ref\": - \"VideoAbuseReportReasonListResponse\"\n }\n }\n }\n - \ }\n },\n \"ownerDomain\": \"google.com\",\n \"icons\": {\n \"x32\": - \"http://www.google.com/images/icons/product/search-32.gif\",\n \"x16\": - \"http://www.google.com/images/icons/product/search-16.gif\"\n }\n}\n" + ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert + and playlistItems.delete to add or remove items from that list.\"\n },\n + \ \"watchLater\": {\n \"description\": \"The ID of + the playlist that contains the channel\\\"s watch later playlist. Use the + playlistItems.insert and playlistItems.delete to add or remove items from + that list.\",\n \"type\": \"string\"\n },\n \"uploads\": + {\n \"type\": \"string\",\n \"description\": \"The + ID of the playlist that contains the channel\\\"s uploaded videos. Use the + videos.insert method to upload new videos and the videos.delete method to + delete previously uploaded videos.\"\n },\n \"favorites\": + {\n \"description\": \"The ID of the playlist that contains the + channel\\\"s favorite videos. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\",\n \"type\": \"string\"\n + \ }\n }\n }\n },\n \"id\": \"ChannelContentDetails\",\n + \ \"type\": \"object\"\n },\n \"Subscription\": {\n \"description\": + \"A *subscription* resource contains information about a YouTube user subscription. + A subscription notifies a user when new videos are added to a channel or when + another user takes one of several actions on YouTube, such as uploading a + video, rating a video, or commenting on a video.\",\n \"id\": \"Subscription\",\n + \ \"properties\": {\n \"subscriberSnippet\": {\n \"description\": + \"The subscriberSnippet object contains basic details about the subscriber.\",\n + \ \"$ref\": \"SubscriptionSubscriberSnippet\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the subscription.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"snippet\": {\n \"$ref\": \"SubscriptionSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the subscription, including its title and the channel that the user subscribed + to.\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n + \ \"default\": \"youtube#subscription\",\n \"type\": \"string\"\n + \ },\n \"contentDetails\": {\n \"$ref\": \"SubscriptionContentDetails\",\n + \ \"description\": \"The contentDetails object contains basic statistics + about the subscription.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"LiveBroadcast\": {\n \"id\": \"LiveBroadcast\",\n \"type\": + \"object\",\n \"description\": \"A *liveBroadcast* resource represents + an event that will be streamed, via live video, on YouTube.\",\n \"properties\": + {\n \"contentDetails\": {\n \"$ref\": \"LiveBroadcastContentDetails\",\n + \ \"description\": \"The contentDetails object contains information + about the event's video content, such as whether the content can be shown + in an embedded video player or if it will be archived and therefore available + for viewing after the event has concluded.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube assigns to uniquely identify the broadcast.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n }\n },\n \"statistics\": {\n \"description\": + \"The statistics object contains info about the event's current stats. These + include concurrent viewers and total chat count. Statistics can change (in + either direction) during the lifetime of an event. Statistics are only returned + while the event is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#liveBroadcast\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n + \ },\n \"status\": {\n \"description\": \"The status + object contains information about the event's status.\",\n \"$ref\": + \"LiveBroadcastStatus\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"LiveBroadcastSnippet\",\n \"description\": + \"The snippet object contains basic details about the event, including its + title, description, start time, and end time.\"\n }\n }\n },\n + \ \"VideoFileDetails\": {\n \"properties\": {\n \"durationMs\": + {\n \"description\": \"The length of the uploaded video in milliseconds.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n + \ \"bitrateBps\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"The uploaded video file's combined + (video and audio) bitrate in bits per second.\"\n },\n \"videoStreams\": + {\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n + \ },\n \"type\": \"array\",\n \"description\": \"A + list of video streams contained in the uploaded video file. Each item in the + list contains detailed metadata about a video stream.\"\n },\n \"fileSize\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The uploaded file's size in bytes. This field is present whether a video + file or another type of file was uploaded.\"\n },\n \"creationTime\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the uploaded video file was created. The value is specified + in ISO 8601 format. Currently, the following ISO 8601 formats are supported: + - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: + YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"audioStreams\": {\n \"description\": + \"A list of audio streams contained in the uploaded video file. Each item + in the list contains detailed metadata about an audio stream.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n + \ }\n },\n \"fileName\": {\n \"description\": + \"The uploaded file's name. This field is present whether a video file or + another type of file was uploaded.\",\n \"type\": \"string\"\n },\n + \ \"fileType\": {\n \"enumDescriptions\": [\n \"Known + video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an + MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive + file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., + MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n + \ \"description\": \"The uploaded file's type as detected by YouTube's + video processing engine. Currently, YouTube only processes video files, but + this field is present whether a video file or another type of file was uploaded.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"video\",\n + \ \"audio\",\n \"image\",\n \"archive\",\n + \ \"document\",\n \"project\",\n \"other\"\n + \ ]\n },\n \"container\": {\n \"type\": \"string\",\n + \ \"description\": \"The uploaded video file's container format.\"\n + \ }\n },\n \"description\": \"Describes original video file + properties, including technical details about audio and video streams, but + also metadata information like content length, digitization time, or geotagging + information.\",\n \"type\": \"object\",\n \"id\": \"VideoFileDetails\"\n + \ },\n \"ThirdPartyLinkStatus\": {\n \"properties\": {\n \"linkStatus\": + {\n \"enum\": [\n \"unknown\",\n \"failed\",\n + \ \"pending\",\n \"linked\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n }\n },\n \"type\": + \"object\",\n \"id\": \"ThirdPartyLinkStatus\",\n \"description\": + \"The third-party link status object contains information about the status + of the link.\"\n },\n \"LiveBroadcastListResponse\": {\n \"properties\": + {\n \"kind\": {\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n + \ \"default\": \"youtube#liveBroadcastListResponse\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"description\": \"A + list of broadcasts that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"type\": + \"array\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\"\n },\n + \ \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n },\n \"id\": \"LiveBroadcastListResponse\",\n + \ \"type\": \"object\"\n },\n \"ActivityContentDetailsPromotedItem\": + {\n \"properties\": {\n \"customCtaButtonText\": {\n \"description\": + \"The custom call-to-action button text. If specified, it will override the + default button text for the cta_type.\",\n \"type\": \"string\"\n + \ },\n \"forecastingUrl\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"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.\",\n \"type\": + \"array\"\n },\n \"impressionUrl\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"The list of impression URLs. The client should + ping all of these URLs to indicate that the user was shown this promoted item.\"\n + \ },\n \"videoId\": {\n \"description\": \"The ID that + YouTube uses to uniquely identify the promoted video.\",\n \"type\": + \"string\"\n },\n \"adTag\": {\n \"description\": \"The + URL the client should fetch to request a promoted item.\",\n \"type\": + \"string\"\n },\n \"creativeViewUrl\": {\n \"description\": + \"The URL the client should ping to indicate that the user was shown this + promoted item.\",\n \"type\": \"string\"\n },\n \"descriptionText\": + {\n \"description\": \"The text description to accompany the promoted + item.\",\n \"type\": \"string\"\n },\n \"destinationUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL the + client should direct the user to, if the user chooses to visit the advertiser's + website.\"\n },\n \"ctaType\": {\n \"enum\": [\n \"ctaTypeUnspecified\",\n + \ \"visitAdvertiserSite\"\n ],\n \"description\": + \"The type of call-to-action, a message to the user indicating action that + can be taken.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"clickTrackingUrl\": + {\n \"description\": \"The URL the client should ping to indicate + that the user clicked through on this promoted item.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Details about a + resource which is being promoted.\",\n \"type\": \"object\",\n \"id\": + \"ActivityContentDetailsPromotedItem\"\n },\n \"MembershipsLevelSnippet\": + {\n \"id\": \"MembershipsLevelSnippet\",\n \"properties\": {\n \"creatorChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The id of + the channel that's offering channel memberships.\"\n },\n \"levelDetails\": + {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details + about the pricing level.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"properties\": + {\n \"banDurationSeconds\": {\n \"type\": \"string\",\n \"description\": + \"The duration of the ban. This property is only present if the banType is + temporary.\",\n \"format\": \"uint64\"\n },\n \"banType\": + {\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The type of ban.\",\n \"enum\": [\n \"permanent\",\n + \ \"temporary\"\n ]\n },\n \"bannedUserDetails\": + {\n \"description\": \"The details of the user that was banned.\",\n + \ \"$ref\": \"ChannelProfileDetails\"\n }\n },\n \"id\": + \"LiveChatUserBannedMessageDetails\",\n \"type\": \"object\"\n },\n + \ \"Thumbnail\": {\n \"id\": \"Thumbnail\",\n \"type\": \"object\",\n + \ \"description\": \"A thumbnail is an image representing a YouTube resource.\",\n + \ \"properties\": {\n \"height\": {\n \"description\": + \"(Optional) Height of the thumbnail image.\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\"\n },\n \"width\": {\n \"format\": + \"uint32\",\n \"description\": \"(Optional) Width of the thumbnail + image.\",\n \"type\": \"integer\"\n },\n \"url\": {\n + \ \"description\": \"The thumbnail image's URL.\",\n \"type\": + \"string\"\n }\n }\n },\n \"PropertyValue\": {\n \"type\": + \"object\",\n \"description\": \"A pair Property / Value.\",\n \"id\": + \"PropertyValue\",\n \"properties\": {\n \"property\": {\n \"type\": + \"string\",\n \"description\": \"A property.\"\n },\n \"value\": + {\n \"description\": \"The property's value.\",\n \"type\": + \"string\"\n }\n }\n },\n \"VideoAgeGating\": {\n \"type\": + \"object\",\n \"id\": \"VideoAgeGating\",\n \"properties\": {\n + \ \"videoGameRating\": {\n \"type\": \"string\",\n \"description\": + \"Video game rating, if any.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n + \ \"m17Plus\"\n ]\n },\n \"restricted\": + {\n \"type\": \"boolean\",\n \"description\": \"Age-restricted + trailers. For redband trailers and adult-rated video-games. Only users aged + 18+ can view the content. The the field is true the content is restricted + to viewers aged 18+. Otherwise The field won't be present.\"\n },\n + \ \"alcoholContent\": {\n \"description\": \"Indicates whether + or not the video has alcoholic beverage content. Only users of legal purchasing + age in a particular country, as identified by ICAP, can view the content.\",\n + \ \"type\": \"boolean\"\n }\n }\n },\n \"VideoLocalization\": + {\n \"id\": \"VideoLocalization\",\n \"description\": \"Localized + versions of certain video properties (e.g. title).\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"Localized version of the video's title.\"\n },\n + \ \"description\": {\n \"description\": \"Localized version + of the video's description.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"ThirdPartyLink\": {\n \"description\": \"A *third + party account link* resource represents a link between a YouTube account or + a channel and an account on a third-party service.\",\n \"id\": \"ThirdPartyLink\",\n + \ \"properties\": {\n \"linkingToken\": {\n \"description\": + \"The linking_token identifies a YouTube account and channel with which the + third party account is linked.\",\n \"type\": \"string\"\n },\n + \ \"status\": {\n \"description\": \"The status object contains + information about the status of the link.\",\n \"$ref\": \"ThirdPartyLinkStatus\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#thirdPartyLink\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the third- party account link.\",\n \"$ref\": + \"ThirdPartyLinkSnippet\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"VideoStatistics\": {\n \"description\": \"Statistics about + the video, such as the number of times the video was viewed or liked.\",\n + \ \"id\": \"VideoStatistics\",\n \"properties\": {\n \"dislikeCount\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The number of users who have indicated that they disliked the video by giving + it a negative rating.\"\n },\n \"favoriteCount\": {\n \"type\": + \"string\",\n \"description\": \"The number of users who currently + have the video marked as a favorite video.\",\n \"format\": \"uint64\"\n + \ },\n \"likeCount\": {\n \"format\": \"uint64\",\n + \ \"type\": \"string\",\n \"description\": \"The number of + users who have indicated that they liked the video by giving it a positive + rating.\"\n },\n \"commentCount\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The number + of comments for the video.\"\n },\n \"viewCount\": {\n \"format\": + \"uint64\",\n \"description\": \"The number of times the video has + been viewed.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\"\n },\n \"PlaylistItemContentDetails\": {\n \"id\": \"PlaylistItemContentDetails\",\n + \ \"properties\": {\n \"videoPublishedAt\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time that the video + was published to YouTube.\",\n \"type\": \"string\"\n },\n + \ \"startAt\": {\n \"description\": \"The time, measured in + seconds from the start of the video, when the video should start playing. + (The playlist owner can specify the times when the video should start and + stop playing when the video is played in the context of the playlist.) The + default value is 0.\",\n \"type\": \"string\"\n },\n \"endAt\": + {\n \"description\": \"The time, measured in seconds from the start + of the video, when the video should stop playing. (The playlist owner can + specify the times when the video should start and stop playing when the video + is played in the context of the playlist.) By default, assume that the video.endTime + is the end of the video.\",\n \"type\": \"string\"\n },\n + \ \"note\": {\n \"description\": \"A user-generated note for + this item.\",\n \"type\": \"string\"\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify a video. To retrieve the video resource, + set the id query parameter to this value in your API request.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"VideoStatus\": {\n \"properties\": + {\n \"madeForKids\": {\n \"type\": \"boolean\"\n },\n + \ \"uploadStatus\": {\n \"enum\": [\n \"uploaded\",\n + \ \"processed\",\n \"failed\",\n \"rejected\",\n + \ \"deleted\"\n ],\n \"enumDescriptions\": [\n + \ \"Video has been uploaded but not processed yet.\",\n \"Video + has been successfully processed.\",\n \"Processing has failed. + See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n + \ \"Video has been deleted.\"\n ],\n \"description\": + \"The status of the uploaded video.\",\n \"type\": \"string\"\n },\n + \ \"license\": {\n \"description\": \"The video's license. + @mutable youtube.videos.insert youtube.videos.update\",\n \"enum\": + [\n \"youtube\",\n \"creativeCommon\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ]\n },\n \"failureReason\": {\n + \ \"description\": \"This value explains why a video failed to upload. + This property is only present if the uploadStatus property indicates that + the upload failed.\",\n \"enumDescriptions\": [\n \"Unable + to convert video content.\",\n \"Invalid file format.\",\n \"Empty + file.\",\n \"File was too small.\",\n \"Unsupported + codec.\",\n \"Upload wasn't finished.\"\n ],\n \"enum\": + [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n + \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n + \ ],\n \"type\": \"string\"\n },\n \"embeddable\": + {\n \"description\": \"This value indicates if the video can be embedded + on another website. @mutable youtube.videos.insert youtube.videos.update\",\n + \ \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n },\n \"publishAt\": {\n + \ \"format\": \"date-time\",\n \"description\": \"The date + and time when the video is scheduled to publish. It can be set only if the + privacy status of the video is private..\",\n \"type\": \"string\"\n + \ },\n \"publicStatsViewable\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This value indicates if the extended video statistics + on the watch page can be viewed by everyone. Note that the view count, likes, + etc will still be visible if this is disabled. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"privacyStatus\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"description\": + \"The video's privacy status.\"\n },\n \"rejectionReason\": + {\n \"description\": \"This value explains why YouTube rejected an + uploaded video. This property is only present if the uploadStatus property + indicates that the upload was rejected.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n + \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n + \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n + \ \"trademark\",\n \"legal\"\n ],\n \"enumDescriptions\": + [\n \"Copyright infringement.\",\n \"Inappropriate video + content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms + of use violation.\",\n \"Uploader account was suspended.\",\n \"Video + duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader + closed his/her account.\",\n \"Trademark infringement.\",\n \"An + unspecified legal reason.\"\n ]\n }\n },\n \"description\": + \"Basic details about a video category, such as its localized title. Next + Id: 18\",\n \"id\": \"VideoStatus\",\n \"type\": \"object\"\n },\n + \ \"ActivityContentDetailsChannelItem\": {\n \"description\": \"Details + about a resource which was added to a channel.\",\n \"properties\": {\n + \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + that was added to the channel.\"\n }\n },\n \"id\": \"ActivityContentDetailsChannelItem\",\n + \ \"type\": \"object\"\n },\n \"SearchListResponse\": {\n \"properties\": + {\n \"items\": {\n \"items\": {\n \"$ref\": \"SearchResult\"\n + \ },\n \"description\": \"Pagination information for token + pagination.\",\n \"type\": \"array\"\n },\n \"regionCode\": + {\n \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#searchListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"SearchListResponse\",\n \"type\": + \"object\"\n },\n \"ActivityContentDetailsLike\": {\n \"description\": + \"Information about a resource that received a positive (like) rating.\",\n + \ \"id\": \"ActivityContentDetailsLike\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the rated resource.\"\n }\n }\n },\n \"ActivityContentDetailsBulletin\": + {\n \"description\": \"Details about a channel bulletin post.\",\n \"properties\": + {\n \"resourceId\": {\n \"description\": \"The resourceId + object contains information that identifies the resource associated with a + bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": + \"ResourceId\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"ActivityContentDetailsBulletin\"\n },\n \"ChannelSectionContentDetails\": + {\n \"id\": \"ChannelSectionContentDetails\",\n \"description\": + \"Details about a channelsection, including playlists and channels.\",\n \"type\": + \"object\",\n \"properties\": {\n \"playlists\": {\n \"description\": + \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, + only one playlistId is allowed.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n },\n \"channels\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"The channel ids + for type multiple_channels.\"\n }\n }\n },\n \"LiveBroadcastStatus\": + {\n \"description\": \"Live broadcast state.\",\n \"type\": \"object\",\n + \ \"id\": \"LiveBroadcastStatus\",\n \"properties\": {\n \"recordingStatus\": + {\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n + \ \"notRecording\",\n \"recording\",\n \"recorded\"\n + \ ],\n \"enumDescriptions\": [\n \"No value or + the value is unknown.\",\n \"The recording has not yet been started.\",\n + \ \"The recording is currently on.\",\n \"The recording + is completed, and cannot be started again.\"\n ],\n \"description\": + \"The broadcast's recording status.\",\n \"type\": \"string\"\n },\n + \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This field will be set to True if the creator + declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"liveBroadcastPriority\": + {\n \"enumDescriptions\": [\n \"\",\n \"Low + priority broadcast: for low view count HoAs or other low priority broadcasts.\",\n + \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n + \ \"High priority broadcast: for high profile HoAs, like PixelCorp + ones.\"\n ],\n \"description\": \"Priority of the live broadcast + event (internal state).\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n + \ \"low\",\n \"normal\",\n \"high\"\n ],\n + \ \"type\": \"string\"\n },\n \"privacyStatus\": {\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"public\",\n \"unlisted\",\n \"private\"\n + \ ],\n \"description\": \"The broadcast's privacy status. + Note that the broadcast represents exactly one YouTube video, so the privacy + settings are identical to those supported for videos. In addition, you can + set this field by modifying the broadcast resource or by setting the privacyStatus + field of the corresponding video resource.\"\n },\n \"madeForKids\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the broadcast is made for kids or not, decided by YouTube instead of the creator. + This field is read only.\"\n },\n \"lifeCycleStatus\": {\n \"enum\": + [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n + \ \"ready\",\n \"testing\",\n \"live\",\n + \ \"complete\",\n \"revoked\",\n \"testStarting\",\n + \ \"liveStarting\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"No value or the value is + unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete + settings\",\n \"Visible only to partner, may need special UI treatment\",\n + \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n + \ \"The broadcast is finished.\",\n \"This broadcast + was removed by admin action\",\n \"Transition into TESTING has + been requested\",\n \"Transition into LIVE has been requested\"\n + \ ],\n \"description\": \"The broadcast's status. The status + can be updated using the API's liveBroadcasts.transition method.\"\n }\n + \ }\n },\n \"CommentSnippet\": {\n \"properties\": {\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"textOriginal\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n + \ },\n \"textDisplay\": {\n \"description\": \"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.\",\n \"type\": + \"string\"\n },\n \"likeCount\": {\n \"format\": \"uint32\",\n + \ \"description\": \"The total number of likes this comment has received.\",\n + \ \"type\": \"integer\"\n },\n \"videoId\": {\n \"description\": + \"The ID of the video the comment refers to, if any.\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time when the comment + was originally published.\",\n \"type\": \"string\"\n },\n + \ \"viewerRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"The entity is liked.\",\n \"The entity is disliked.\"\n + \ ],\n \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"authorChannelId\": {\n + \ \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"moderationStatus\": + {\n \"description\": \"The comment's moderation status. Will not + be set if the comments were requested through the id filter.\",\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ]\n },\n + \ \"parentId\": {\n \"type\": \"string\",\n \"description\": + \"The unique id of the parent comment, only set for replies.\"\n },\n + \ \"authorChannelUrl\": {\n \"description\": \"Link to the + author's YouTube channel, if any.\",\n \"type\": \"string\"\n },\n + \ \"canRate\": {\n \"type\": \"boolean\",\n \"description\": + \"Whether the current viewer can rate this comment.\"\n },\n \"updatedAt\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the comment was last updated.\"\n + \ },\n \"authorProfileImageUrl\": {\n \"description\": + \"The URL for the avatar of the user who posted the comment.\",\n \"type\": + \"string\"\n },\n \"authorDisplayName\": {\n \"type\": + \"string\",\n \"description\": \"The name of the user who posted + the comment.\"\n }\n },\n \"description\": \"Basic details + about a comment, such as its author and text.\",\n \"id\": \"CommentSnippet\",\n + \ \"type\": \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": + {\n \"properties\": {\n \"associatedMembershipGiftingMessageId\": + {\n \"description\": \"The ID of the membership gifting message that + is related to this gift membership. This ID will always refer to a message + whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n + \ },\n \"memberLevelName\": {\n \"type\": \"string\",\n + \ \"description\": \"The name of the Level at which the viewer is + a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` + of the associated membership gifting message. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\"\n },\n \"gifterChannelId\": {\n \"description\": + \"The ID of the user that made the membership gifting purchase. This matches + the `snippet.authorChannelId` of the associated membership gifting message.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n \"SubscriptionContentDetails\": + {\n \"id\": \"SubscriptionContentDetails\",\n \"properties\": {\n + \ \"newItemCount\": {\n \"description\": \"The number of new + items in the subscription since its content was last read.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"activityType\": + {\n \"type\": \"string\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n + \ \"all\",\n \"uploads\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"description\": \"The type of activity this subscription is for + (only uploads, everything).\"\n },\n \"totalItemCount\": {\n + \ \"format\": \"uint32\",\n \"description\": \"The approximate + number of items that the subscription points to.\",\n \"type\": \"integer\"\n + \ }\n },\n \"description\": \"Details about the content to + witch a subscription refers.\",\n \"type\": \"object\"\n },\n \"VideoSnippet\": + {\n \"properties\": {\n \"liveBroadcastContent\": {\n \"type\": + \"string\",\n \"description\": \"Indicates if the video is an upcoming/active + live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active + live broadcast.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been completed.\"\n + \ ]\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's title. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"defaultAudioLanguage\": {\n + \ \"type\": \"string\",\n \"description\": \"The default_audio_language + property specifies the language spoken in the video's default audio track.\"\n + \ },\n \"channelId\": {\n \"description\": \"The ID + that YouTube uses to uniquely identify the channel that the video was uploaded + to.\",\n \"type\": \"string\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A + map of thumbnail images associated with the video. 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.\"\n },\n \"publishedAt\": + {\n \"description\": \"The date and time when the video was uploaded.\",\n + \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n + \ \"description\": {\n \"description\": \"The video's description. + @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": + \"string\"\n },\n \"categoryId\": {\n \"description\": + \"The YouTube video category associated with the video.\",\n \"type\": + \"string\"\n },\n \"tags\": {\n \"description\": \"A + list of keyword tags associated with the video. Tags may contain spaces.\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": + \"array\"\n },\n \"localized\": {\n \"$ref\": \"VideoLocalization\",\n + \ \"description\": \"Localized snippet selected with the hl parameter. + If no such localization exists, this field is populated with the default snippet. + (Read-only)\"\n },\n \"defaultLanguage\": {\n \"description\": + \"The language of the videos's default snippet.\",\n \"type\": \"string\"\n + \ },\n \"channelTitle\": {\n \"description\": \"Channel + title for the channel that the video belongs to.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Basic details about a video, + including title, description, uploader, thumbnails and category.\",\n \"type\": + \"object\",\n \"id\": \"VideoSnippet\"\n },\n \"ActivityContentDetails\": + {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetails\",\n + \ \"properties\": {\n \"social\": {\n \"description\": + \"The social object contains details about a social network post. This property + is only present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n + \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n + \ \"description\": \"The comment object contains information about + a resource that received a comment. This property is only present if the snippet.type + is comment.\"\n },\n \"playlistItem\": {\n \"description\": + \"The playlistItem object contains information about a new playlist item. + This property is only present if the snippet.type is playlistItem.\",\n \"$ref\": + \"ActivityContentDetailsPlaylistItem\"\n },\n \"bulletin\": + {\n \"description\": \"The bulletin object contains details about + a channel bulletin post. This object is only present if the snippet.type is + bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n },\n + \ \"channelItem\": {\n \"description\": \"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.\",\n \"$ref\": + \"ActivityContentDetailsChannelItem\"\n },\n \"favorite\": {\n + \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsFavorite\"\n + \ },\n \"upload\": {\n \"description\": \"The upload + object contains information about the uploaded video. This property is only + present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n + \ },\n \"promotedItem\": {\n \"description\": \"The + promotedItem object contains details about a resource which is being promoted. + This property is only present if the snippet.type is promotedItem.\",\n \"$ref\": + \"ActivityContentDetailsPromotedItem\"\n },\n \"like\": {\n + \ \"$ref\": \"ActivityContentDetailsLike\",\n \"description\": + \"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.\"\n + \ },\n \"subscription\": {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n + \ \"description\": \"The subscription object contains information + about a channel that a user subscribed to. This property is only present if + the snippet.type is subscription.\"\n },\n \"recommendation\": + {\n \"description\": \"The recommendation object contains information + about a recommended resource. This property is only present if the snippet.type + is recommendation.\",\n \"$ref\": \"ActivityContentDetailsRecommendation\"\n + \ }\n },\n \"description\": \"Details about the content of + an activity: the video that was shared, the channel that was subscribed to, + etc.\"\n },\n \"VideoSuggestions\": {\n \"description\": \"Specifies + suggestions on how to improve video content, including encoding hints, tag + suggestions, and editor suggestions.\",\n \"properties\": {\n \"editorSuggestions\": + {\n \"description\": \"A list of video editing operations that might + improve the video quality or playback experience of the uploaded video.\",\n + \ \"items\": {\n \"enum\": [\n \"videoAutoLevels\",\n + \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n + \ ],\n \"enumDescriptions\": [\n \"Picture + brightness levels seem off and could be corrected.\",\n \"The + video appears shaky and could be stabilized.\",\n \"Margins (mattes) + detected around the picture could be cropped.\",\n \"The audio + track appears silent and could be swapped with a better quality one.\"\n ],\n + \ \"type\": \"string\"\n },\n \"type\": \"array\"\n + \ },\n \"tagSuggestions\": {\n \"items\": {\n \"$ref\": + \"VideoSuggestionsTagSuggestion\"\n },\n \"description\": + \"A list of keyword tags that could be added to the video's metadata to increase + the likelihood that users will locate your video when searching or browsing + on YouTube.\",\n \"type\": \"array\"\n },\n \"processingErrors\": + {\n \"items\": {\n \"enum\": [\n \"audioFile\",\n + \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n + \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n + \ ],\n \"enumDescriptions\": [\n \"File + contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., + a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file.\",\n \"Document + or text file (e.g., MS Word document).\",\n \"An archive file + (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout + type.\"\n ],\n \"type\": \"string\"\n },\n + \ \"description\": \"A list of errors that will prevent YouTube from + successfully processing the uploaded video video. These errors indicate that, + regardless of the video's current processing status, eventually, that status + will almost certainly be failed.\",\n \"type\": \"array\"\n },\n + \ \"processingHints\": {\n \"description\": \"A list of suggestions + that may improve YouTube's ability to process the video.\",\n \"type\": + \"array\",\n \"items\": {\n \"enum\": [\n \"nonStreamableMov\",\n + \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n + \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n + \ ],\n \"enumDescriptions\": [\n \"The MP4 + file is not streamable, this will slow down the processing. MOOV atom was + not found at the beginning of the file.\",\n \"Probably a better + quality version of the video exists. The video has wide screen aspect ratio, + but is not an HD video.\",\n \"Uploaded video is spherical video.\",\n + \ \"Uploaded video has spatial audio.\",\n \"Uploaded + video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n + \ \"type\": \"string\"\n }\n },\n \"processingWarnings\": + {\n \"type\": \"array\",\n \"description\": \"A list of + reasons why YouTube may have difficulty transcoding the uploaded video or + that might result in an erroneous transcoding. These warnings are generated + before YouTube actually processes the uploaded video file. In addition, they + identify issues that are unlikely to cause the video processing to fail but + that might cause problems such as sync issues, video artifacts, or a missing + audio track.\",\n \"items\": {\n \"enum\": [\n \"unknownContainer\",\n + \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n + \ \"inconsistentResolution\",\n \"hasEditlist\",\n + \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n + \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n + \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n + \ \"problematicHdrLookupTable\"\n ],\n \"enumDescriptions\": + [\n \"Unrecognized file format, transcoding is likely to fail.\",\n + \ \"Unrecognized video codec, transcoding is likely to fail.\",\n + \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n + \ \"Conflicting container and stream resolutions.\",\n \"Edit + lists are not currently supported.\",\n \"Video codec that is + known to cause problems was used.\",\n \"Audio codec that is + known to cause problems was used.\",\n \"Unsupported VR video + stereo mode.\",\n \"Unsupported spherical video projection type.\",\n + \ \"Unsupported HDR pixel format.\",\n \"Unspecified + HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n + \ ],\n \"type\": \"string\"\n }\n }\n + \ },\n \"id\": \"VideoSuggestions\",\n \"type\": \"object\"\n + \ },\n \"PlaylistLocalization\": {\n \"description\": \"Playlist + localization setting\",\n \"type\": \"object\",\n \"id\": \"PlaylistLocalization\",\n + \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The localized strings for playlist's description.\"\n + \ },\n \"title\": {\n \"description\": \"The localized + strings for playlist's title.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"ChannelBrandingSettings\": {\n \"id\": \"ChannelBrandingSettings\",\n + \ \"type\": \"object\",\n \"description\": \"Branding properties + of a YouTube channel.\",\n \"properties\": {\n \"watch\": {\n + \ \"description\": \"Branding properties for the watch page.\",\n + \ \"$ref\": \"WatchSettings\"\n },\n \"image\": {\n + \ \"description\": \"Branding properties for branding images.\",\n + \ \"$ref\": \"ImageSettings\"\n },\n \"channel\": {\n + \ \"$ref\": \"ChannelSettings\",\n \"description\": \"Branding + properties for the channel view.\"\n },\n \"hints\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"PropertyValue\"\n + \ },\n \"description\": \"Additional experimental branding + properties.\"\n }\n }\n },\n \"ResourceId\": {\n \"type\": + \"object\",\n \"description\": \"A resource id is a generic reference + that points to another YouTube resource.\",\n \"properties\": {\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the referred resource, if that resource + is a channel. This property is only present if the resourceId.kind value is + youtube#channel.\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"The type of the API resource.\"\n },\n + \ \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a video. This property is only present if the resourceId.kind + value is youtube#video.\"\n },\n \"playlistId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the referred resource, if that resource is a playlist. This property + is only present if the resourceId.kind value is youtube#playlist.\"\n }\n + \ },\n \"id\": \"ResourceId\"\n },\n \"ThumbnailDetails\": + {\n \"id\": \"ThumbnailDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": + \"The default image for this resource.\"\n },\n \"high\": {\n + \ \"description\": \"The high quality image for this resource.\",\n + \ \"$ref\": \"Thumbnail\"\n },\n \"standard\": {\n \"description\": + \"The standard quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n + \ },\n \"maxres\": {\n \"description\": \"The maximum + resolution quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n + \ },\n \"medium\": {\n \"$ref\": \"Thumbnail\",\n \"description\": + \"The medium quality image for this resource.\"\n }\n },\n \"description\": + \"Internal representation of thumbnails for a YouTube resource.\"\n },\n + \ \"LiveStreamContentDetails\": {\n \"description\": \"Detailed settings + of a stream.\",\n \"properties\": {\n \"isReusable\": {\n \"type\": + \"boolean\",\n \"description\": \"Indicates whether the stream is + reusable, which means that it can be bound to multiple broadcasts. It is common + for broadcasters to reuse the same stream for many different broadcasts if + those broadcasts occur at different times. If you set this value to false, + then the stream will not be reusable, which means that it can only be bound + to one broadcast. Non-reusable streams differ from reusable streams in the + following ways: - A non-reusable stream can only be bound to one broadcast. + - A non-reusable stream might be deleted by an automated process after the + broadcast ends. - The liveStreams.list method does not list non-reusable streams + if you call the method and set the mine parameter to true. The only way to + use that method to retrieve the resource for a non-reusable stream is to use + the id parameter to identify the stream. \"\n },\n \"closedCaptionsIngestionUrl\": + {\n \"type\": \"string\",\n \"description\": \"The ingestion + URL where the closed captions of this stream are sent.\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"LiveStreamContentDetails\"\n + \ },\n \"ChannelConversionPings\": {\n \"properties\": {\n \"pings\": + {\n \"description\": \"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.\",\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n + \ }\n }\n },\n \"type\": \"object\",\n \"id\": + \"ChannelConversionPings\",\n \"description\": \"The conversionPings + object encapsulates information about conversion pings that need to be respected + by the channel.\"\n },\n \"LiveStreamSnippet\": {\n \"id\": \"LiveStreamSnippet\",\n + \ \"properties\": {\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"format\": \"date-time\",\n \"description\": \"The date + and time that the stream was created.\"\n },\n \"isDefaultStream\": + {\n \"type\": \"boolean\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"The stream's title. The value must + be between 1 and 128 characters long.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n + \ ]\n }\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The stream's description. The value + cannot be longer than 10000 characters.\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel that is transmitting the stream.\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"ChannelConversionPing\": + {\n \"id\": \"ChannelConversionPing\",\n \"description\": \"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.\",\n \"properties\": {\n \"context\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n + \ \"cview\"\n ],\n \"description\": \"Defines + the context of the ping.\",\n \"type\": \"string\"\n },\n + \ \"conversionUrl\": {\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoPlayer\": + {\n \"description\": \"Player to be used for a video playback.\",\n \"type\": + \"object\",\n \"id\": \"VideoPlayer\",\n \"properties\": {\n \"embedHtml\": + {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a + player that will play the video.\",\n \"type\": \"string\"\n },\n + \ \"embedHeight\": {\n \"format\": \"int64\",\n \"type\": + \"string\"\n },\n \"embedWidth\": {\n \"type\": \"string\",\n + \ \"description\": \"The embed width\",\n \"format\": \"int64\"\n + \ }\n }\n },\n \"LiveChatMessageAuthorDetails\": {\n \"properties\": + {\n \"channelUrl\": {\n \"type\": \"string\",\n \"description\": + \"The channel's URL.\"\n },\n \"isVerified\": {\n \"description\": + \"Whether the author's identity has been verified by YouTube.\",\n \"type\": + \"boolean\"\n },\n \"profileImageUrl\": {\n \"description\": + \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n + \ \"displayName\": {\n \"type\": \"string\",\n \"description\": + \"The channel's display name.\"\n },\n \"isChatOwner\": {\n + \ \"type\": \"boolean\",\n \"description\": \"Whether the + author is the owner of the live chat.\"\n },\n \"channelId\": + {\n \"description\": \"The YouTube channel ID.\",\n \"type\": + \"string\"\n },\n \"isChatModerator\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the author is a moderator + of the live chat.\"\n },\n \"isChatSponsor\": {\n \"description\": + \"Whether the author is a sponsor of the live chat.\",\n \"type\": + \"boolean\"\n }\n },\n \"id\": \"LiveChatMessageAuthorDetails\",\n + \ \"type\": \"object\"\n },\n \"SubscriptionListResponse\": {\n + \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"Subscription\"\n },\n \"description\": \"A list of subscriptions + that match the request criteria.\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n + \ \"default\": \"youtube#subscriptionListResponse\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"SubscriptionListResponse\"\n + \ },\n \"MemberSnippet\": {\n \"properties\": {\n \"membershipsDetails\": + {\n \"$ref\": \"MembershipsDetails\",\n \"description\": + \"Details about the user's membership.\"\n },\n \"creatorChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The id of + the channel that's offering memberships.\"\n },\n \"memberDetails\": + {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": + \"Details about the member.\"\n }\n },\n \"id\": \"MemberSnippet\",\n + \ \"type\": \"object\"\n },\n \"ChannelBannerResource\": {\n \"id\": + \"ChannelBannerResource\",\n \"properties\": {\n \"etag\": {\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n + \ \"default\": \"youtube#channelBannerResource\"\n },\n \"url\": + {\n \"description\": \"The URL of this banner image.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"A channel banner + returned as the response to a channel_banner.insert call.\",\n \"type\": + \"object\"\n },\n \"AbuseType\": {\n \"id\": \"AbuseType\",\n \"type\": + \"object\",\n \"properties\": {\n \"id\": {\n \"type\": + \"string\"\n }\n }\n },\n \"ChannelSectionTargeting\": {\n + \ \"type\": \"object\",\n \"description\": \"ChannelSection targeting + setting.\",\n \"id\": \"ChannelSectionTargeting\",\n \"properties\": + {\n \"regions\": {\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"type\": \"array\",\n \"description\": \"The + region the channel section is targeting.\"\n },\n \"languages\": + {\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"The language the channel + section is targeting.\"\n },\n \"countries\": {\n \"description\": + \"The country the channel section is targeting.\",\n \"items\": {\n + \ \"type\": \"string\"\n },\n \"type\": \"array\"\n + \ }\n }\n },\n \"Playlist\": {\n \"description\": \"A + *playlist* resource represents a YouTube playlist. A playlist is a collection + of videos that can be viewed sequentially and shared with other users. A playlist + can contain up to 200 videos, and YouTube does not limit the number of playlists + that each user creates. By default, playlists are publicly visible to other + users, but playlists can be public or private. YouTube also uses playlists + to identify special collections of videos for a channel, such as: - uploaded + videos - favorite videos - positively rated (liked) videos - watch history + - watch later To be more specific, these lists are associated with a channel, + which is a collection of a person, group, or company's videos, playlists, + and other YouTube information. You can retrieve the playlist IDs for each + of these lists from the channel resource for a given channel. You can then + use the playlistItems.list method to retrieve any of those lists. You can + also add or remove items from those lists by calling the playlistItems.insert + and playlistItems.delete methods.\",\n \"id\": \"Playlist\",\n \"properties\": + {\n \"snippet\": {\n \"description\": \"The snippet object + contains basic details about the playlist, such as its title and description.\",\n + \ \"$ref\": \"PlaylistSnippet\"\n },\n \"status\": {\n + \ \"$ref\": \"PlaylistStatus\",\n \"description\": \"The + status object contains status information for the playlist.\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube uses to + uniquely identify the playlist.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"contentDetails\": {\n + \ \"description\": \"The contentDetails object contains information + like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n \"default\": + \"youtube#playlist\",\n \"type\": \"string\"\n },\n \"localizations\": + {\n \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n + \ },\n \"type\": \"object\",\n \"description\": + \"Localizations for different languages\"\n },\n \"player\": + {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": \"The + player object contains information that you would use to play the playlist + in an embedded player.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"CommentThread\": {\n \"type\": \"object\",\n \"id\": + \"CommentThread\",\n \"properties\": {\n \"replies\": {\n \"$ref\": + \"CommentThreadReplies\",\n \"description\": \"The replies object + contains a limited number of replies (if any) to the top level comment found + in the snippet.\"\n },\n \"snippet\": {\n \"$ref\": + \"CommentThreadSnippet\",\n \"description\": \"The snippet object + contains basic details about the comment thread and also the top level comment.\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n \"default\": + \"youtube#commentThread\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the comment thread.\"\n }\n },\n \"description\": + \"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.\"\n },\n \"LiveStreamHealthStatus\": {\n \"id\": + \"LiveStreamHealthStatus\",\n \"type\": \"object\",\n \"properties\": + {\n \"configurationIssues\": {\n \"description\": \"The configurations + issues on this stream\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n }\n },\n + \ \"lastUpdateTimeSeconds\": {\n \"description\": \"The last + time this status was updated (in seconds)\",\n \"format\": \"uint64\",\n + \ \"type\": \"string\"\n },\n \"status\": {\n \"description\": + \"The status code of this stream\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"good\",\n + \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n + \ ]\n }\n }\n },\n \"WatchSettings\": {\n \"properties\": + {\n \"featuredPlaylistId\": {\n \"description\": \"An ID that + uniquely identifies a playlist that displays next to the video player.\",\n + \ \"type\": \"string\"\n },\n \"backgroundColor\": {\n + \ \"type\": \"string\",\n \"description\": \"The text color + for the video watch page's branded area.\"\n },\n \"textColor\": + {\n \"type\": \"string\",\n \"description\": \"The background + color for the video watch page's branded area.\"\n }\n },\n \"id\": + \"WatchSettings\",\n \"description\": \"Branding properties for the watch. + All deprecated.\",\n \"type\": \"object\"\n },\n \"LiveChatBanSnippet\": + {\n \"properties\": {\n \"type\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"An invalid ban type.\",\n + \ \"A permanent ban.\",\n \"A temporary ban.\"\n ],\n + \ \"description\": \"The type of ban.\",\n \"enum\": [\n + \ \"liveChatBanTypeUnspecified\",\n \"permanent\",\n + \ \"temporary\"\n ]\n },\n \"banDurationSeconds\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n },\n + \ \"liveChatId\": {\n \"description\": \"The chat this ban + is pertinent to.\",\n \"type\": \"string\"\n },\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveChatBanSnippet\"\n },\n \"SuperChatEventListResponse\": + {\n \"type\": \"object\",\n \"id\": \"SuperChatEventListResponse\",\n + \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"SuperChatEvent\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of Super Chat purchases that match the request criteria.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n + \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n }\n + \ }\n },\n \"PlaylistItemStatus\": {\n \"properties\": {\n + \ \"privacyStatus\": {\n \"description\": \"This resource's + privacy status.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ]\n }\n },\n \"type\": + \"object\",\n \"id\": \"PlaylistItemStatus\",\n \"description\": + \"Information about the playlist item's privacy status.\"\n },\n \"ChannelSettings\": + {\n \"id\": \"ChannelSettings\",\n \"type\": \"object\",\n \"properties\": + {\n \"country\": {\n \"description\": \"The country of the + channel.\",\n \"type\": \"string\"\n },\n \"showRelatedChannels\": + {\n \"description\": \"Whether related channels should be proposed.\",\n + \ \"type\": \"boolean\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"Specifies the channel title.\"\n + \ },\n \"profileColor\": {\n \"type\": \"string\",\n + \ \"description\": \"A prominent color that can be rendered on this + channel page.\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"Specifies the channel description.\"\n + \ },\n \"showBrowseView\": {\n \"description\": \"Whether + the tab to browse the videos should be displayed.\",\n \"type\": + \"boolean\"\n },\n \"defaultTab\": {\n \"description\": + \"Which content tab users should see when viewing the channel.\",\n \"type\": + \"string\"\n },\n \"trackingAnalyticsAccountId\": {\n \"description\": + \"The ID for a Google Analytics account to track and measure traffic to the + channels.\",\n \"type\": \"string\"\n },\n \"keywords\": + {\n \"description\": \"Lists keywords associated with the channel, + comma-separated.\",\n \"type\": \"string\"\n },\n \"moderateComments\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + user-submitted comments left on the channel page need to be approved by the + channel owner to be publicly visible.\"\n },\n \"featuredChannelsTitle\": + {\n \"description\": \"Title for the featured channels tab.\",\n + \ \"type\": \"string\"\n },\n \"featuredChannelsUrls\": + {\n \"description\": \"The list of featured channels.\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n + \ },\n \"unsubscribedTrailer\": {\n \"type\": \"string\",\n + \ \"description\": \"The trailer of the channel, for users that are + not subscribers.\"\n }\n },\n \"description\": \"Branding + properties for the channel view.\"\n },\n \"PlaylistSnippet\": {\n \"type\": + \"object\",\n \"id\": \"PlaylistSnippet\",\n \"properties\": {\n + \ \"defaultLanguage\": {\n \"description\": \"The language + of the playlist's default title and description.\",\n \"type\": \"string\"\n + \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n + \ \"type\": \"string\",\n \"description\": \"The date and + time that the playlist was created.\"\n },\n \"localized\": + {\n \"description\": \"Localized title and description, read-only.\",\n + \ \"$ref\": \"PlaylistLocalization\"\n },\n \"title\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n + \ \"youtube.playlists.update\"\n ]\n },\n + \ \"type\": \"string\",\n \"description\": \"The playlist's + title.\"\n },\n \"channelTitle\": {\n \"description\": + \"The channel title of the channel that the video belongs to.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that published + the playlist.\",\n \"type\": \"string\"\n },\n \"tags\": + {\n \"description\": \"Keyword tags associated with the playlist.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The playlist's description.\"\n + \ },\n \"thumbnails\": {\n \"description\": \"A map + of thumbnail images associated with the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"thumbnailVideoId\": {\n \"description\": \"Note: + if the playlist has a custom thumbnail, this field will not be populated. + The video id selected by the user that will be used as the thumbnail of this + playlist. This field defaults to the first publicly viewable video in the + playlist, if: 1. The user has never selected a video to be the thumbnail of + the playlist. 2. The user selects a video to be the thumbnail, and then removes + that video from the playlist. 3. The user selects a non-owned video to be + the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Basic details about + a playlist, including title, description and thumbnails.\"\n },\n \"Cuepoint\": + {\n \"description\": \"Note that there may be a 5-second end-point resolution + issue. For instance, if a cuepoint comes in for 22:03:27, we may stuff the + cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact of HLS.\",\n + \ \"properties\": {\n \"walltimeMs\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + wall clock time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms + and walltime_ms may be set at a time.\"\n },\n \"insertionOffsetTimeMs\": + {\n \"description\": \"The time when the cuepoint should be inserted + by offset to the broadcast actual start time.\",\n \"format\": \"int64\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The identifier for cuepoint resource.\"\n + \ },\n \"cueType\": {\n \"enum\": [\n \"cueTypeUnspecified\",\n + \ \"cueTypeAd\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n + \ },\n \"etag\": {\n \"type\": \"string\"\n },\n + \ \"durationSecs\": {\n \"format\": \"uint32\",\n \"type\": + \"integer\",\n \"description\": \"The duration of this cuepoint.\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"Cuepoint\"\n + \ },\n \"VideoCategoryListResponse\": {\n \"properties\": {\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n + \ \"default\": \"youtube#videoCategoryListResponse\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"VideoCategory\"\n },\n \"description\": \"A list of video + categories that can be associated with YouTube videos. In this map, the video + category ID is the map key, and its value is the corresponding videoCategory + resource.\",\n \"type\": \"array\"\n }\n },\n \"id\": + \"VideoCategoryListResponse\",\n \"type\": \"object\"\n },\n \"LiveChatBan\": + {\n \"id\": \"LiveChatBan\",\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"type\": + \"string\",\n \"default\": \"youtube#liveChatBan\"\n },\n + \ \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": + \"The `snippet` object contains basic details about the ban.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube assigns to uniquely identify the ban.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\"\n + \ },\n \"SearchResultSnippet\": {\n \"properties\": {\n \"liveBroadcastContent\": + {\n \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been completed.\"\n + \ ],\n \"description\": \"It indicates if the resource (video + or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" + if there is not any upcoming/active live broadcasts.\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"description\": \"The creation date and time of + the resource that the search result identifies.\",\n \"type\": \"string\"\n + \ },\n \"title\": {\n \"description\": \"The title of + the search result.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The value + that YouTube uses to uniquely identify the channel that published the resource + that the search result identifies.\"\n },\n \"channelTitle\": + {\n \"description\": \"The title of the channel that published the + resource that the search result identifies.\",\n \"type\": \"string\"\n + \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + search result. 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.\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"A description of the search result.\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"SearchResultSnippet\",\n + \ \"description\": \"Basic details about a search result, including title, + description and thumbnails of the item referenced by the search result.\"\n + \ },\n \"Video\": {\n \"properties\": {\n \"snippet\": {\n + \ \"description\": \"The snippet object contains basic details about + the video, such as its title, description, and category.\",\n \"$ref\": + \"VideoSnippet\"\n },\n \"statistics\": {\n \"description\": + \"The statistics object contains statistics about the video.\",\n \"$ref\": + \"VideoStatistics\"\n },\n \"suggestions\": {\n \"$ref\": + \"VideoSuggestions\",\n \"description\": \"The suggestions object + encapsulates suggestions that identify opportunities to improve the video + quality or the metadata for the uploaded video. This data can only be retrieved + by the video owner.\"\n },\n \"liveStreamingDetails\": {\n \"$ref\": + \"VideoLiveStreamingDetails\",\n \"description\": \"The liveStreamingDetails + object contains metadata about a live video broadcast. The object will only + be present in a video resource if the video is an upcoming, live, or completed + live broadcast.\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.videos.update\"\n + \ ]\n },\n \"type\": \"string\"\n },\n + \ \"player\": {\n \"$ref\": \"VideoPlayer\",\n \"description\": + \"The player object contains information that you would use to play the video + in an embedded player.\"\n },\n \"localizations\": {\n \"additionalProperties\": + {\n \"$ref\": \"VideoLocalization\"\n },\n \"description\": + \"The localizations object contains localized versions of the basic details + about the video, such as its title and description.\",\n \"type\": + \"object\"\n },\n \"processingDetails\": {\n \"description\": + \"The processingDetails object encapsulates information about YouTube's progress + in processing the uploaded video file. The properties in the object identify + the current processing status and an estimate of the time remaining until + YouTube finishes processing the video. This part also indicates whether different + types of data or content, such as file details or thumbnail images, are available + for the video. The processingProgress object is designed to be polled so that + the video uploaded can track the progress that YouTube has made in processing + the uploaded video file. This data can only be retrieved by the video owner.\",\n + \ \"$ref\": \"VideoProcessingDetails\"\n },\n \"kind\": + {\n \"default\": \"youtube#video\",\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#video\\\".\"\n },\n \"monetizationDetails\": + {\n \"description\": \"The monetizationDetails object encapsulates + information about the monetization status of the video.\",\n \"$ref\": + \"VideoMonetizationDetails\"\n },\n \"contentDetails\": {\n + \ \"$ref\": \"VideoContentDetails\",\n \"description\": \"The + contentDetails object contains information about the video content, including + the length of the video and its aspect ratio.\"\n },\n \"ageGating\": + {\n \"description\": \"Age restriction details related to a video. + This data can only be retrieved by the video owner.\",\n \"$ref\": + \"VideoAgeGating\"\n },\n \"projectDetails\": {\n \"description\": + \"The projectDetails object contains information about the project specific + video metadata. b/157517979: This part was never populated after it was added. + However, it sees non-zero traffic because there is generated client code in + the wild that refers to it [1]. We keep this field and do NOT remove it because + otherwise V3 would return an error when this part gets requested [2]. [1] + https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"$ref\": \"VideoProjectDetails\"\n },\n \"fileDetails\": + {\n \"$ref\": \"VideoFileDetails\",\n \"description\": \"The + fileDetails object encapsulates information about the video file that was + uploaded to YouTube, including the file's resolution, duration, audio and + video codecs, stream bitrates, and more. This data can only be retrieved by + the video owner.\"\n },\n \"topicDetails\": {\n \"description\": + \"The topicDetails object encapsulates information about Freebase topics associated + with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"recordingDetails\": + {\n \"$ref\": \"VideoRecordingDetails\",\n \"description\": + \"The recordingDetails object encapsulates information about the location, + date and address where the video was recorded.\"\n },\n \"status\": + {\n \"description\": \"The status object contains information about + the video's uploading, processing, and privacy statuses.\",\n \"$ref\": + \"VideoStatus\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"Video\",\n \"description\": \"A *video* resource represents a YouTube + video.\"\n },\n \"ChannelStatus\": {\n \"properties\": {\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n },\n \"madeForKids\": {\n + \ \"type\": \"boolean\"\n },\n \"longUploadsStatus\": + {\n \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n + \ \"eligible\",\n \"disallowed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 + for more information.\"\n },\n \"privacyStatus\": {\n \"description\": + \"Privacy status of the channel.\",\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"isLinked\": {\n \"description\": + \"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.\",\n \"type\": + \"boolean\"\n }\n },\n \"description\": \"JSON template for + the status part of a channel.\",\n \"type\": \"object\",\n \"id\": + \"ChannelStatus\"\n },\n \"LiveChatModeratorListResponse\": {\n \"properties\": + {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"LiveChatModerator\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of moderators that match the request criteria.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveChatModeratorListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorListResponse\"\n + \ },\n \"CommentSnippetAuthorChannelId\": {\n \"id\": \"CommentSnippetAuthorChannelId\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"value\": {\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"The id of the author's YouTube channel, if any.\"\n },\n \"ThirdPartyLinkListResponse\": + {\n \"id\": \"ThirdPartyLinkListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n }\n + \ },\n \"kind\": {\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n }\n },\n \"SuperStickerMetadata\": + {\n \"id\": \"SuperStickerMetadata\",\n \"properties\": {\n \"altText\": + {\n \"type\": \"string\",\n \"description\": \"Internationalized + alt text that describes the sticker image and any animation associated with + it.\"\n },\n \"altTextLanguage\": {\n \"description\": + \"Specifies the localization language in which the alt text is returned.\",\n + \ \"type\": \"string\"\n },\n \"stickerId\": {\n \"type\": + \"string\",\n \"description\": \"Unique identifier of the Super Sticker. + This is a shorter form of the alt_text that includes pack name and a recognizable + characteristic of the sticker.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"ActivityListResponse\": {\n \"id\": \"ActivityListResponse\",\n + \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"Activity\"\n }\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"eventId\": {\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n + \ \"default\": \"youtube#activityListResponse\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"I18nRegion\": {\n \"id\": \"I18nRegion\",\n \"type\": + \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegion\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the i18n region.\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"$ref\": \"I18nRegionSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the i18n region, such as region code and human-readable name.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"A *i18nRegion* resource identifies a region where YouTube is available.\"\n + \ },\n \"LiveBroadcastStatistics\": {\n \"description\": \"Statistics + about the live broadcast. These represent a snapshot of the values at the + time of the request. Statistics are only returned for live broadcasts.\",\n + \ \"properties\": {\n \"concurrentViewers\": {\n \"description\": + \"The number of viewers currently watching the broadcast. The property and + its value will be present if the broadcast has current viewers and the broadcast + owner has not hidden the viewcount for the video. Note that YouTube stops + tracking the number of concurrent viewers for a broadcast when the broadcast + ends. So, this property would not identify the number of viewers watching + an archived video of a live broadcast that already ended.\",\n \"format\": + \"uint64\",\n \"type\": \"string\"\n },\n \"totalChatCount\": + {\n \"type\": \"string\",\n \"description\": \"The total + number of live chat messages currently on the broadcast. The property and + its value will be present if the broadcast is public, has the live chat feature + enabled, and has at least one message. Note that this field will not be filled + after the broadcast ends. So this property would not identify the number of + chat messages for an archived video of a completed live broadcast.\",\n \"format\": + \"uint64\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveBroadcastStatistics\"\n },\n \"AbuseReport\": {\n \"id\": + \"AbuseReport\",\n \"type\": \"object\",\n \"properties\": {\n \"abuseTypes\": + {\n \"items\": {\n \"$ref\": \"AbuseType\"\n },\n + \ \"type\": \"array\"\n },\n \"relatedEntities\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"RelatedEntity\"\n }\n },\n \"subject\": {\n \"$ref\": + \"Entity\"\n },\n \"description\": {\n \"type\": \"string\"\n + \ }\n }\n },\n \"LanguageTag\": {\n \"properties\": + {\n \"value\": {\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"LanguageTag\"\n },\n \"CommentThreadReplies\": + {\n \"type\": \"object\",\n \"id\": \"CommentThreadReplies\",\n + \ \"properties\": {\n \"comments\": {\n \"type\": \"array\",\n + \ \"description\": \"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.\",\n \"items\": + {\n \"$ref\": \"Comment\"\n }\n }\n },\n \"description\": + \"Comments written in (direct or indirect) reply to the top level comment.\"\n + \ },\n \"VideoAbuseReportReason\": {\n \"description\": \"A `__videoAbuseReportReason__` + resource identifies a reason that a video could be reported as abusive. Video + abuse report reasons are used with `video.ReportAbuse`.\",\n \"type\": + \"object\",\n \"id\": \"VideoAbuseReportReason\",\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": + \"VideoAbuseReportReasonSnippet\",\n \"description\": \"The `snippet` + object contains basic details about the abuse report reason.\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID of this abuse report reason.\"\n },\n \"kind\": {\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n + \ \"default\": \"youtube#videoAbuseReportReason\"\n }\n }\n + \ },\n \"LiveChatNewSponsorDetails\": {\n \"id\": \"LiveChatNewSponsorDetails\",\n + \ \"properties\": {\n \"memberLevelName\": {\n \"description\": + \"The name of the Level that the viewer just had joined. The Level names are + defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\",\n \"type\": \"string\"\n },\n + \ \"isUpgrade\": {\n \"description\": \"If the viewer just + had upgraded from a lower level. For viewers that were not members at the + time of purchase, this field is false.\",\n \"type\": \"boolean\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"InvideoPosition\": + {\n \"description\": \"Describes the spatial position of a visual widget + inside a video. It is a union of various position types, out of which only + will be set one.\",\n \"id\": \"InvideoPosition\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"cornerPosition\": {\n \"enum\": + [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n + \ \"bottomRight\"\n ],\n \"description\": \"Describes + in which corner of the video the visual widget will appear.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"type\": + {\n \"type\": \"string\",\n \"enum\": [\n \"corner\"\n + \ ],\n \"enumDescriptions\": [\n \"\"\n ],\n + \ \"description\": \"Defines the position type.\"\n }\n }\n + \ },\n \"LiveChatMessageRetractedDetails\": {\n \"properties\": + {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"type\": + \"object\"\n },\n \"VideoAbuseReport\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoAbuseReport\",\n \"properties\": {\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the video.\"\n },\n \"secondaryReasonId\": + {\n \"type\": \"string\",\n \"description\": \"The specific, + or secondary, reason that this content is abusive (if available). The value + is an abuse report reason ID that is a valid secondary reason for the primary + reason.\"\n },\n \"language\": {\n \"description\": + \"The language that the content was viewed in.\",\n \"type\": \"string\"\n + \ },\n \"reasonId\": {\n \"type\": \"string\",\n \"description\": + \"The high-level, or primary, reason that the content is abusive. The value + is an abuse report reason ID.\"\n },\n \"comments\": {\n \"type\": + \"string\",\n \"description\": \"Additional comments regarding the + abuse report.\"\n }\n }\n },\n \"ChannelSectionLocalization\": + {\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The localized strings for channel section's title.\"\n + \ }\n },\n \"description\": \"ChannelSection localization + setting\",\n \"id\": \"ChannelSectionLocalization\",\n \"type\": + \"object\"\n },\n \"LiveBroadcastSnippet\": {\n \"properties\": + {\n \"actualStartTime\": {\n \"type\": \"string\",\n \"description\": + \"The date and time that the broadcast actually started. This information + is only available once the broadcast's state is live.\",\n \"format\": + \"date-time\"\n },\n \"scheduledStartTime\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time that the broadcast + is scheduled to start.\",\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n }\n + \ },\n \"isDefaultBroadcast\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Indicates whether this broadcast is the default + broadcast. Internal only.\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"The broadcast's title. Note that the broadcast + represents exactly one YouTube video. You can set this field by modifying + the broadcast resource or by setting the title field of the corresponding + video resource.\"\n },\n \"description\": {\n \"description\": + \"The broadcast's description. As with the title, you can set this field by + modifying the broadcast resource or by setting the description field of the + corresponding video resource.\",\n \"type\": \"string\"\n },\n + \ \"scheduledEndTime\": {\n \"type\": \"string\",\n \"format\": + \"date-time\",\n \"description\": \"The date and time that the broadcast + is scheduled to end.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the channel that is publishing the broadcast.\"\n },\n \"thumbnails\": + {\n \"description\": \"A map of thumbnail images associated with + the broadcast. For each nested object in this object, the key is the name + of the thumbnail image, and the value is an object that contains other information + about the thumbnail.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n + \ \"actualEndTime\": {\n \"description\": \"The date and time + that the broadcast actually ended. This information is only available once + the broadcast's state is complete.\",\n \"format\": \"date-time\",\n + \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time that the broadcast was added to YouTube's live broadcast + schedule.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n + \ },\n \"liveChatId\": {\n \"description\": \"The id + of the live chat for this broadcast.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Basic broadcast information.\",\n + \ \"type\": \"object\",\n \"id\": \"LiveBroadcastSnippet\"\n },\n + \ \"VideoFileDetailsVideoStream\": {\n \"type\": \"object\",\n \"description\": + \"Information about a video stream.\",\n \"id\": \"VideoFileDetailsVideoStream\",\n + \ \"properties\": {\n \"codec\": {\n \"description\": + \"The video codec that the stream uses.\",\n \"type\": \"string\"\n + \ },\n \"rotation\": {\n \"type\": \"string\",\n \"description\": + \"The amount that YouTube needs to rotate the original source content to properly + display the video.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"none\",\n \"clockwise\",\n + \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n + \ ]\n },\n \"frameRateFps\": {\n \"format\": + \"double\",\n \"description\": \"The video stream's frame rate, in + frames per second.\",\n \"type\": \"number\"\n },\n \"bitrateBps\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The video stream's bitrate, in bits per second.\"\n },\n \"vendor\": + {\n \"type\": \"string\",\n \"description\": \"A value that + uniquely identifies a video vendor. Typically, the value is a four-letter + vendor code.\"\n },\n \"heightPixels\": {\n \"type\": + \"integer\",\n \"description\": \"The encoded video content's height + in pixels.\",\n \"format\": \"uint32\"\n },\n \"widthPixels\": + {\n \"description\": \"The encoded video content's width in pixels. + You can calculate the video's encoding aspect ratio as width_pixels / height_pixels.\",\n + \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n + \ \"aspectRatio\": {\n \"type\": \"number\",\n \"format\": + \"double\",\n \"description\": \"The video content's display aspect + ratio, which specifies the aspect ratio in which the video should be displayed.\"\n + \ }\n }\n },\n \"ChannelStatistics\": {\n \"properties\": + {\n \"videoCount\": {\n \"type\": \"string\",\n \"description\": + \"The number of videos uploaded to the channel.\",\n \"format\": + \"uint64\"\n },\n \"hiddenSubscriberCount\": {\n \"description\": + \"Whether or not the number of subscribers is shown for this user.\",\n \"type\": + \"boolean\"\n },\n \"viewCount\": {\n \"description\": + \"The number of times the channel has been viewed.\",\n \"format\": + \"uint64\",\n \"type\": \"string\"\n },\n \"subscriberCount\": + {\n \"description\": \"The number of subscribers that the channel + has.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n + \ },\n \"commentCount\": {\n \"format\": \"uint64\",\n + \ \"type\": \"string\",\n \"description\": \"The number of + comments for the channel.\"\n }\n },\n \"id\": \"ChannelStatistics\",\n + \ \"description\": \"Statistics about a channel: number of subscribers, + number of videos in the channel, etc.\",\n \"type\": \"object\"\n },\n + \ \"IngestionInfo\": {\n \"id\": \"IngestionInfo\",\n \"properties\": + {\n \"backupIngestionAddress\": {\n \"type\": \"string\",\n + \ \"description\": \"The backup ingestion URL that you should use + to stream video to YouTube. You have the option of simultaneously streaming + the content that you are sending to the ingestionAddress to this URL.\"\n + \ },\n \"rtmpsBackupIngestionAddress\": {\n \"type\": + \"string\",\n \"description\": \"This ingestion url may be used instead + of backupIngestionAddress in order to stream via RTMPS. Not applicable to + non-RTMP streams.\"\n },\n \"ingestionAddress\": {\n \"type\": + \"string\",\n \"description\": \"The primary ingestion URL that you + should use to stream video to YouTube. You must stream video to this URL. + Depending on which application or tool you use to encode your video stream, + you may need to enter the stream URL and stream name separately or you may + need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* + \"\n },\n \"rtmpsIngestionAddress\": {\n \"type\": + \"string\",\n \"description\": \"This ingestion url may be used instead + of ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP + streams.\"\n },\n \"streamName\": {\n \"type\": \"string\",\n + \ \"description\": \"The stream name that YouTube assigns to the video + stream.\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\"\n + \ },\n \"ThumbnailSetResponse\": {\n \"type\": \"object\",\n \"id\": + \"ThumbnailSetResponse\",\n \"properties\": {\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of thumbnails.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#thumbnailSetResponse\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"ChannelContentOwnerDetails\": {\n \"id\": \"ChannelContentOwnerDetails\",\n + \ \"properties\": {\n \"contentOwner\": {\n \"description\": + \"The ID of the content owner linked to the channel.\",\n \"type\": + \"string\"\n },\n \"timeLinked\": {\n \"description\": + \"The date and time when the channel was linked to the content owner.\",\n + \ \"type\": \"string\",\n \"format\": \"date-time\"\n }\n + \ },\n \"description\": \"The contentOwnerDetails object encapsulates + channel data that is relevant for YouTube Partners linked with the channel.\",\n + \ \"type\": \"object\"\n },\n \"Member\": {\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#member\\\".\",\n \"default\": + \"youtube#member\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the member.\",\n \"$ref\": + \"MemberSnippet\"\n }\n },\n \"id\": \"Member\",\n \"description\": + \"A *member* resource represents a member for a YouTube channel. A member + provides recurring monetary support to a creator and receives special benefits.\",\n + \ \"type\": \"object\"\n },\n \"ActivityContentDetailsFavorite\": + {\n \"id\": \"ActivityContentDetailsFavorite\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n + \ },\n \"description\": \"Information about a video that was marked + as a favorite video.\"\n },\n \"InvideoBranding\": {\n \"type\": + \"object\",\n \"properties\": {\n \"imageUrl\": {\n \"type\": + \"string\",\n \"description\": \"The url of the uploaded image. Only + used in apiary to api communication.\"\n },\n \"timing\": {\n + \ \"description\": \"The temporal position within the video where + watermark will be displayed.\",\n \"$ref\": \"InvideoTiming\"\n },\n + \ \"position\": {\n \"$ref\": \"InvideoPosition\",\n \"description\": + \"The spatial position within the video where the branding watermark will + be displayed.\"\n },\n \"imageBytes\": {\n \"description\": + \"The bytes the uploaded image. Only used in api to youtube communication.\",\n + \ \"format\": \"byte\",\n \"type\": \"string\"\n },\n + \ \"targetChannelId\": {\n \"type\": \"string\",\n \"description\": + \"The channel to which this branding links. If not present it defaults to + the current channel.\"\n }\n },\n \"id\": \"InvideoBranding\",\n + \ \"description\": \"LINT.IfChange Describes an invideo branding.\"\n + \ },\n \"LiveChatMessage\": {\n \"type\": \"object\",\n \"description\": + \"A *liveChatMessage* resource represents a chat message in a YouTube Live + Chat.\",\n \"id\": \"LiveChatMessage\",\n \"properties\": {\n \"kind\": + {\n \"default\": \"youtube#liveChatMessage\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube assigns to uniquely identify the message.\",\n \"type\": + \"string\"\n },\n \"authorDetails\": {\n \"description\": + \"The authorDetails object contains basic details about the user that posted + this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n }\n + \ }\n },\n \"LiveStreamConfigurationIssue\": {\n \"id\": \"LiveStreamConfigurationIssue\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"severity\": + {\n \"description\": \"How severe this issue is to the stream.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"info\",\n + \ \"warning\",\n \"error\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"reason\": {\n \"description\": \"The short-form reason + for this issue.\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The long-form + description of the issue and how to resolve it.\"\n },\n \"type\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n + \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n + \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n + \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n + \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n + \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n + \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n + \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n + \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n + \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n + \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n + \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n + \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n + \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The kind of error happening.\"\n }\n }\n },\n \"MembershipsLevel\": + {\n \"description\": \"A *membershipsLevel* resource represents an offer + made by YouTube creators for their fans. Users can become members of the channel + by joining one of the available levels. They will provide recurring monetary + support and receives special benefits.\",\n \"id\": \"MembershipsLevel\",\n + \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"default\": \"youtube#membershipsLevel\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the memberships level.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the level.\",\n \"$ref\": + \"MembershipsLevelSnippet\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"PlaylistContentDetails\": + {\n \"type\": \"object\",\n \"id\": \"PlaylistContentDetails\",\n + \ \"properties\": {\n \"itemCount\": {\n \"type\": \"integer\",\n + \ \"description\": \"The number of videos in the playlist.\",\n \"format\": + \"uint32\"\n }\n }\n },\n \"I18nLanguage\": {\n \"properties\": + {\n \"kind\": {\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#i18nLanguage\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the i18n language.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n \"description\": + \"The snippet object contains basic details about the i18n language, such + as language code and human-readable name.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"An *i18nLanguage* resource identifies a UI language currently supported + by YouTube.\",\n \"id\": \"I18nLanguage\"\n },\n \"VideoAbuseReportReasonListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The `visitorId` + identifies the visitor.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n + \ \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"description\": \"A list of + valid abuse reasons that are used with `video.ReportAbuse`.\",\n \"items\": + {\n \"$ref\": \"VideoAbuseReportReason\"\n }\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n }\n + \ },\n \"id\": \"VideoAbuseReportReasonListResponse\"\n },\n \"SuperChatEvent\": + {\n \"type\": \"object\",\n \"id\": \"SuperChatEvent\",\n \"properties\": + {\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n + \ \"description\": \"The `snippet` object contains basic details about + the Super Chat event.\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube assigns to uniquely identify the Super Chat event.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": + \"youtube#superChatEvent\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n },\n \"description\": \"A + `__superChatEvent__` resource represents a Super Chat purchase on a YouTube + channel.\"\n },\n \"TokenPagination\": {\n \"properties\": {},\n + \ \"id\": \"TokenPagination\",\n \"description\": \"Stub token pagination + template to suppress results.\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsSubscription\": + {\n \"id\": \"ActivityContentDetailsSubscription\",\n \"properties\": + {\n \"resourceId\": {\n \"description\": \"The resourceId + object contains information that identifies the resource that the user subscribed + to.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"description\": + \"Information about a channel that a user subscribed to.\",\n \"type\": + \"object\"\n },\n \"CdnSettings\": {\n \"properties\": {\n \"format\": + {\n \"type\": \"string\",\n \"description\": \"The format + of the video stream that you are sending to Youtube. \",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n }\n + \ },\n \"resolution\": {\n \"type\": \"string\",\n \"description\": + \"The resolution of the inbound video data.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"240p\",\n \"360p\",\n + \ \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\",\n + \ \"2160p\",\n \"variable\"\n ]\n },\n + \ \"ingestionType\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \" The method or protocol used to transmit the video stream.\",\n \"enum\": + [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n + \ \"hls\"\n ],\n \"annotations\": {\n \"required\": + [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n + \ ]\n },\n \"type\": \"string\"\n },\n + \ \"frameRate\": {\n \"enum\": [\n \"30fps\",\n + \ \"60fps\",\n \"variable\"\n ],\n \"description\": + \"The frame rate of the inbound video data.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"ingestionInfo\": {\n + \ \"$ref\": \"IngestionInfo\",\n \"description\": \"The ingestionInfo + object contains information that YouTube provides that you need to transmit + your RTMP or HTTP stream to YouTube.\"\n }\n },\n \"description\": + \"Brief description of the live stream cdn settings.\",\n \"type\": \"object\",\n + \ \"id\": \"CdnSettings\"\n },\n \"LiveChatMessageListResponse\": + {\n \"id\": \"LiveChatMessageListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#liveChatMessageListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"pollingIntervalMillis\": {\n \"type\": \"integer\",\n + \ \"format\": \"uint32\",\n \"description\": \"The amount + of time the client should wait before polling again.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"offlineAt\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the underlying stream + went offline.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"LiveChatMessage\"\n }\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n }\n }\n },\n \"I18nRegionSnippet\": {\n \"properties\": + {\n \"gl\": {\n \"type\": \"string\",\n \"description\": + \"The region code as a 2-letter ISO country code.\"\n },\n \"name\": + {\n \"type\": \"string\",\n \"description\": \"The human-readable + name of the region.\"\n }\n },\n \"description\": \"Basic + details about an i18n region, such as region code and human-readable name.\",\n + \ \"type\": \"object\",\n \"id\": \"I18nRegionSnippet\"\n },\n + \ \"VideoContentDetails\": {\n \"properties\": {\n \"dimension\": + {\n \"description\": \"The value of dimension indicates whether the + video is available in 3D or in 2D.\",\n \"type\": \"string\"\n },\n + \ \"hasCustomThumbnail\": {\n \"description\": \"Indicates + whether the video uploader has provided a custom thumbnail image for the video. + This property is only visible to the video uploader.\",\n \"type\": + \"boolean\"\n },\n \"duration\": {\n \"type\": \"string\",\n + \ \"description\": \"The length of the video. The tag value is an + ISO 8601 duration in the format PT#M#S, in which the letters PT indicate that + the value specifies a period of time, and the letters M and S refer to length + in minutes and seconds, respectively. The # characters preceding the M and + S letters are both integers that specify the number of minutes (or seconds) + of the video. For example, a value of PT15M51S indicates that the video is + 15 minutes and 51 seconds long.\"\n },\n \"definition\": {\n + \ \"enum\": [\n \"sd\",\n \"hd\"\n ],\n + \ \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The value of definition indicates whether the video is available in high + definition or only in standard definition.\"\n },\n \"caption\": + {\n \"description\": \"The value of captions indicates whether the + video has captions or not.\",\n \"enum\": [\n \"true\",\n + \ \"false\"\n ],\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"contentRating\": {\n \"description\": \"Specifies the ratings + that the video received under various rating schemes.\",\n \"$ref\": + \"ContentRating\"\n },\n \"regionRestriction\": {\n \"description\": + \"The regionRestriction object contains information about the countries where + a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed + property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": + \"VideoContentDetailsRegionRestriction\"\n },\n \"countryRestriction\": + {\n \"description\": \"The countryRestriction object contains information + about the countries where a video is (or is not) viewable.\",\n \"$ref\": + \"AccessPolicy\"\n },\n \"licensedContent\": {\n \"description\": + \"The value of is_license_content indicates whether the video is licensed + content.\",\n \"type\": \"boolean\"\n },\n \"projection\": + {\n \"description\": \"Specifies the projection format of the video.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"rectangular\",\n + \ \"360\"\n ],\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ]\n }\n },\n \"id\": \"VideoContentDetails\",\n + \ \"type\": \"object\",\n \"description\": \"Details about the content + of a YouTube Video.\"\n },\n \"SubscriptionSnippet\": {\n \"description\": + \"Basic details about a subscription, including title, description and thumbnails + of the subscribed item.\",\n \"id\": \"SubscriptionSnippet\",\n \"properties\": + {\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The subscription's title.\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the subscriber's channel.\",\n + \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": + \"The subscription's details.\",\n \"type\": \"string\"\n },\n + \ \"resourceId\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.subscriptions.insert\"\n ]\n },\n + \ \"description\": \"The id object contains information about the + channel that the user subscribed to.\",\n \"$ref\": \"ResourceId\"\n + \ },\n \"thumbnails\": {\n \"description\": \"A map + of thumbnail images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"channelTitle\": {\n \"description\": \"Channel + title for the channel that the subscription belongs to.\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time that the subscription was created.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\"\n },\n \"PlaylistListResponse\": {\n \"id\": \"PlaylistListResponse\",\n + \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlistListResponse\\\".\",\n \"default\": + \"youtube#playlistListResponse\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"items\": {\n \"description\": + \"A list of playlists that match the request criteria\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Playlist\"\n }\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"MembershipsLevelListResponse\": + {\n \"id\": \"MembershipsLevelListResponse\",\n \"properties\": + {\n \"eventId\": {\n \"description\": \"Serialized EventId + of the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": + \"A list of pricing levels offered by a creator to the fans.\",\n \"items\": + {\n \"$ref\": \"MembershipsLevel\"\n }\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#membershipsLevelListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"TestItemTestItemSnippet\": {\n \"type\": + \"object\",\n \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\"\n + \ },\n \"VideoMonetizationDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoMonetizationDetails\",\n \"properties\": {\n \"access\": + {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The + value of access indicates whether the video can be monetized or not.\"\n }\n + \ },\n \"description\": \"Details about monetization of a YouTube + Video.\"\n },\n \"I18nLanguageListResponse\": {\n \"id\": \"I18nLanguageListResponse\",\n + \ \"properties\": {\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#i18nLanguageListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"I18nLanguage\"\n },\n \"description\": \"A list of supported + i18n languages. In this map, the i18n language ID is the map key, and its + value is the corresponding i18nLanguage resource.\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"VideoProcessingDetails\": {\n \"properties\": + {\n \"processingIssuesAvailability\": {\n \"type\": \"string\",\n + \ \"description\": \"This value indicates whether the video processing + engine has generated suggestions that might improve YouTube's ability to process + the the video, warnings that explain video processing problems, or errors + that cause video processing problems. You can retrieve these suggestions by + requesting the suggestions part in your videos.list() request.\"\n },\n + \ \"tagSuggestionsAvailability\": {\n \"description\": \"This + value indicates whether keyword (tag) suggestions are available for the video. + Tags can be added to a video's metadata to make it easier for other users + to find the video. You can retrieve these suggestions by requesting the suggestions + part in your videos.list() request.\",\n \"type\": \"string\"\n },\n + \ \"fileDetailsAvailability\": {\n \"description\": \"This + value indicates whether file details are available for the uploaded video. + You can retrieve a video's file details by requesting the fileDetails part + in your videos.list() request.\",\n \"type\": \"string\"\n },\n + \ \"processingProgress\": {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n + \ \"description\": \"The processingProgress object contains information + about the progress YouTube has made in processing the video. The values are + really only relevant if the video's processing status is processing.\"\n },\n + \ \"thumbnailsAvailability\": {\n \"type\": \"string\",\n \"description\": + \"This value indicates whether thumbnail images have been generated for the + video.\"\n },\n \"processingStatus\": {\n \"description\": + \"The video's processing status. This value indicates whether YouTube was + able to process the video or if the video is still being processed.\",\n \"enum\": + [\n \"processing\",\n \"succeeded\",\n \"failed\",\n + \ \"terminated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"processingFailureReason\": + {\n \"type\": \"string\",\n \"description\": \"The reason + that YouTube failed to process the video. This property will only have a value + if the processingStatus property's value is failed.\",\n \"enum\": + [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n + \ \"other\"\n ],\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"editorSuggestionsAvailability\": {\n \"description\": \"This + value indicates whether video editing suggestions, which might improve video + quality or the playback experience, are available for the video. You can retrieve + these suggestions by requesting the suggestions part in your videos.list() + request.\",\n \"type\": \"string\"\n }\n },\n \"description\": + \"Describes processing status and progress and availability of some other + Video resource parts.\",\n \"id\": \"VideoProcessingDetails\",\n \"type\": + \"object\"\n },\n \"VideoRating\": {\n \"description\": \"Basic + details about rating of a video.\",\n \"properties\": {\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the video.\"\n },\n \"rating\": + {\n \"description\": \"Rating of a video.\",\n \"enum\": + [\n \"none\",\n \"like\",\n \"dislike\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ]\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"VideoRating\"\n },\n \"I18nRegionListResponse\": {\n + \ \"type\": \"object\",\n \"id\": \"I18nRegionListResponse\",\n \"properties\": + {\n \"items\": {\n \"items\": {\n \"$ref\": \"I18nRegion\"\n + \ },\n \"description\": \"A list of regions where YouTube + is available. In this map, the i18n region ID is the map key, and its value + is the corresponding i18nRegion resource.\",\n \"type\": \"array\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#i18nRegionListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n + \ }\n }\n },\n \"LiveChatMemberMilestoneChatDetails\": {\n + \ \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"memberMonth\": {\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The total amount of months (rounded up) the viewer has been a member that + granted them this Member Milestone Chat. This is the same number of months + as is being displayed to YouTube users.\"\n },\n \"memberLevelName\": + {\n \"description\": \"The name of the Level at which the viever + is a member. The Level names are defined by the YouTube channel offering the + Membership. In some situations this field isn't filled.\",\n \"type\": + \"string\"\n },\n \"userComment\": {\n \"description\": + \"The comment added by the member to this Member Milestone Chat. This field + is empty for messages without a comment from the member.\",\n \"type\": + \"string\"\n }\n }\n },\n \"VideoGetRatingResponse\": {\n + \ \"id\": \"VideoGetRatingResponse\",\n \"properties\": {\n \"items\": + {\n \"description\": \"A list of ratings that match the request criteria.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"VideoRating\"\n }\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n + \ \"default\": \"youtube#videoGetRatingResponse\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsUpload\": + {\n \"description\": \"Information about the uploaded video.\",\n \"properties\": + {\n \"videoId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the uploaded video.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"ActivityContentDetailsUpload\",\n \"type\": + \"object\"\n },\n \"ActivitySnippet\": {\n \"id\": \"ActivitySnippet\",\n + \ \"description\": \"Basic details about an activity, including title, + description, thumbnails, activity type and group. Next ID: 12\",\n \"properties\": + {\n \"thumbnails\": {\n \"description\": \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"publishedAt\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time that the video was uploaded.\",\n \"format\": \"date-time\"\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel associated with + the activity.\"\n },\n \"groupId\": {\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n \"type\": {\n + \ \"description\": \"The type of activity that the resource describes.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n + \ \"favorite\",\n \"comment\",\n \"subscription\",\n + \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n + \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n + \ ]\n },\n \"channelTitle\": {\n \"description\": + \"Channel title for the channel responsible for this activity\",\n \"type\": + \"string\"\n },\n \"description\": {\n \"description\": + \"The description of the resource primarily associated with the activity. + @mutable youtube.activities.insert\",\n \"type\": \"string\"\n },\n + \ \"title\": {\n \"description\": \"The title of the resource + primarily associated with the activity.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"LiveStreamStatus\": + {\n \"description\": \"Brief description of the live stream status.\",\n + \ \"properties\": {\n \"healthStatus\": {\n \"$ref\": + \"LiveStreamHealthStatus\",\n \"description\": \"The health status + of the stream.\"\n },\n \"streamStatus\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"created\",\n \"ready\",\n \"active\",\n + \ \"inactive\",\n \"error\"\n ]\n }\n + \ },\n \"id\": \"LiveStreamStatus\",\n \"type\": \"object\"\n + \ },\n \"GeoPoint\": {\n \"properties\": {\n \"altitude\": + {\n \"format\": \"double\",\n \"description\": \"Altitude + above the reference ellipsoid, in meters.\",\n \"type\": \"number\"\n + \ },\n \"longitude\": {\n \"format\": \"double\",\n + \ \"type\": \"number\",\n \"description\": \"Longitude in + degrees.\"\n },\n \"latitude\": {\n \"description\": + \"Latitude in degrees.\",\n \"type\": \"number\",\n \"format\": + \"double\"\n }\n },\n \"description\": \"Geographical coordinates + of a point, in WGS84.\",\n \"id\": \"GeoPoint\",\n \"type\": \"object\"\n + \ },\n \"SuperChatEventSnippet\": {\n \"id\": \"SuperChatEventSnippet\",\n + \ \"properties\": {\n \"messageType\": {\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The tier for the paid message, which is based on the amount of money spent + to purchase the message.\"\n },\n \"channelId\": {\n \"description\": + \"Channel id where the event occurred.\",\n \"type\": \"string\"\n + \ },\n \"displayString\": {\n \"type\": \"string\",\n + \ \"description\": \"A rendered string that displays the purchase + amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the + given language.\"\n },\n \"isSuperStickerEvent\": {\n \"description\": + \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n + \ },\n \"createdAt\": {\n \"type\": \"string\",\n \"format\": + \"date-time\",\n \"description\": \"The date and time when the event + occurred.\"\n },\n \"commentText\": {\n \"description\": + \"The text contents of the comment left by the user.\",\n \"type\": + \"string\"\n },\n \"amountMicros\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The purchase + amount, in micros of the purchase currency. e.g., 1 is represented as 1000000.\"\n + \ },\n \"supporterDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n + \ \"description\": \"Details about the supporter.\"\n },\n + \ \"superStickerMetadata\": {\n \"description\": \"If this + event is a Super Sticker event, this field will contain metadata about the + Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n },\n + \ \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the purchase was made. ISO 4217.\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"ChannelAuditDetails\": {\n \"type\": + \"object\",\n \"description\": \"The auditDetails object encapsulates + channel data that is relevant for YouTube Partners during the audit process.\",\n + \ \"properties\": {\n \"communityGuidelinesGoodStanding\": {\n + \ \"type\": \"boolean\",\n \"description\": \"Whether or + not the channel respects the community guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel has any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel has any unresolved claims.\"\n }\n },\n \"id\": + \"ChannelAuditDetails\"\n },\n \"LocalizedProperty\": {\n \"type\": + \"object\",\n \"properties\": {\n \"localized\": {\n \"items\": + {\n \"$ref\": \"LocalizedString\"\n },\n \"type\": + \"array\"\n },\n \"defaultLanguage\": {\n \"$ref\": + \"LanguageTag\",\n \"description\": \"The language of the default + property.\"\n },\n \"default\": {\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"LocalizedProperty\"\n },\n \"CommentThreadSnippet\": + {\n \"properties\": {\n \"videoId\": {\n \"description\": + \"The ID of the video the comments refer to, if any. No video_id implies a + channel discussion comment.\",\n \"type\": \"string\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"canReply\": {\n \"type\": + \"boolean\",\n \"description\": \"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.\"\n },\n \"isPublic\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the thread (and therefore + all its comments) is visible to all YouTube users.\"\n },\n \"totalReplyCount\": + {\n \"description\": \"The total number of replies (not including + the top level comment).\",\n \"format\": \"uint32\",\n \"type\": + \"integer\"\n },\n \"topLevelComment\": {\n \"$ref\": + \"Comment\",\n \"description\": \"The top level comment of this thread.\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic + details about a comment thread.\",\n \"id\": \"CommentThreadSnippet\"\n + \ },\n \"ChannelSectionListResponse\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": + \"A list of ChannelSections that match the request criteria.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#channelSectionListResponse\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n }\n },\n \"id\": \"ChannelSectionListResponse\"\n + \ },\n \"ChannelProfileDetails\": {\n \"type\": \"object\",\n \"id\": + \"ChannelProfileDetails\",\n \"properties\": {\n \"profileImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The channels's + avatar URL.\"\n },\n \"displayName\": {\n \"type\": + \"string\",\n \"description\": \"The channel's display name.\"\n + \ },\n \"channelUrl\": {\n \"description\": \"The channel's + URL.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The YouTube + channel ID.\"\n }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": + {\n \"type\": \"object\",\n \"description\": \"Information about + a new playlist item.\",\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n + \ \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information about the resource that was added + to the playlist.\",\n \"$ref\": \"ResourceId\"\n },\n \"playlistId\": + {\n \"type\": \"string\",\n \"description\": \"The value + that YouTube uses to uniquely identify the playlist.\"\n },\n \"playlistItemId\": + {\n \"type\": \"string\",\n \"description\": \"ID of the + item within the playlist.\"\n }\n }\n },\n \"ThirdPartyLinkSnippet\": + {\n \"type\": \"object\",\n \"description\": \"Basic information + about a third party account link, including its type and type-specific information.\",\n + \ \"properties\": {\n \"type\": {\n \"type\": \"string\",\n + \ \"description\": \"Type of the link named after the entities that + are being linked.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel with + a store on a merchandising platform in order to enable retail commerce capabilities + for that channel on YouTube.\"\n ],\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ]\n },\n \"channelToStoreLink\": + {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n \"description\": + \"Information specific to a link between a channel and a store on a merchandising + platform.\"\n }\n },\n \"id\": \"ThirdPartyLinkSnippet\"\n + \ },\n \"PlaylistItemSnippet\": {\n \"description\": \"Basic details + about a playlist, including title, description and thumbnails. Basic details + of a YouTube Playlist item provided by the author. Next ID: 15\",\n \"type\": + \"object\",\n \"id\": \"PlaylistItemSnippet\",\n \"properties\": + {\n \"description\": {\n \"type\": \"string\",\n \"description\": + \"The item's description.\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the user that added the item + to the playlist.\",\n \"type\": \"string\"\n },\n \"videoOwnerChannelId\": + {\n \"description\": \"Channel id for the channel this video belongs + to.\",\n \"type\": \"string\"\n },\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel that the playlist item belongs to.\"\n },\n \"resourceId\": + {\n \"description\": \"The id object contains information that can + be used to uniquely identify the resource that is included in the playlist + as the playlist item.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n + \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n + \ \"title\": {\n \"type\": \"string\",\n \"description\": + \"The item's title.\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time that the item was added to the playlist.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"videoOwnerChannelTitle\": + {\n \"description\": \"Channel title for the channel this video belongs + to.\",\n \"type\": \"string\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A + map of thumbnail images associated with the playlist item. 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.\"\n },\n + \ \"position\": {\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"description\": \"The order in which the item appears + in the playlist. The value uses a zero-based index, so the first item has + a position of 0, the second item has a position of 1, and so forth.\"\n },\n + \ \"playlistId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify thGe playlist that the playlist item is in.\",\n + \ \"type\": \"string\",\n \"annotations\": {\n \"required\": + [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n + \ ]\n }\n }\n }\n },\n \"LocalizedString\": + {\n \"type\": \"object\",\n \"properties\": {\n \"language\": + {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": + \"string\"\n }\n },\n \"id\": \"LocalizedString\"\n },\n + \ \"ChannelSection\": {\n \"id\": \"ChannelSection\",\n \"type\": + \"object\",\n \"properties\": {\n \"localizations\": {\n \"description\": + \"Localizations for different languages\",\n \"additionalProperties\": + {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"type\": + \"object\"\n },\n \"kind\": {\n \"default\": \"youtube#channelSection\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the channel section.\",\n \"type\": \"string\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object contains details about the channel section content, + such as a list of playlists or channels featured in the section.\",\n \"$ref\": + \"ChannelSectionContentDetails\"\n },\n \"targeting\": {\n \"description\": + \"The targeting object contains basic targeting settings about the channel + section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n },\n + \ \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": + \"The snippet object contains basic details about the channel section, such + as its type, style and title.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"VideoAbuseReportReasonSnippet\": {\n \"properties\": {\n + \ \"label\": {\n \"description\": \"The localized label belonging + to this abuse report reason.\",\n \"type\": \"string\"\n },\n + \ \"secondaryReasons\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n },\n + \ \"description\": \"The secondary reasons associated with this reason, + if any are available. (There might be 0 or more.)\"\n }\n },\n + \ \"description\": \"Basic details about a video category, such as its + localized title.\",\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonSnippet\"\n + \ },\n \"VideoTopicDetails\": {\n \"properties\": {\n \"relevantTopicIds\": + {\n \"description\": \"Similar to topic_id, except that these topics + are merely relevant to the video. These are topics that may be mentioned in, + or appear in the video. You can retrieve information about each topic using + Freebase Topic API.\",\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"topicIds\": + {\n \"type\": \"array\",\n \"description\": \"A list of + Freebase topic IDs that are centrally associated with the video. These are + topics that are centrally featured in the video, and it can be said that the + video is mainly about each of these. You can retrieve information about each + topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase + Topic API.\",\n \"items\": {\n \"type\": \"string\"\n + \ }\n },\n \"topicCategories\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"A list of Wikipedia URLs that provide a high-level description of the video's + content.\",\n \"type\": \"array\"\n }\n },\n \"description\": + \"Freebase topic information related to the video.\",\n \"id\": \"VideoTopicDetails\",\n + \ \"type\": \"object\"\n },\n \"PageInfo\": {\n \"description\": + \"Paging details for lists of resources, including total number of items available + and number of resources returned in a single page.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"resultsPerPage\": {\n \"description\": + \"The number of results included in the API response.\",\n \"format\": + \"int32\",\n \"type\": \"integer\"\n },\n \"totalResults\": + {\n \"format\": \"int32\",\n \"type\": \"integer\",\n \"description\": + \"The total number of results in the result set.\"\n }\n },\n + \ \"id\": \"PageInfo\"\n },\n \"VideoListResponse\": {\n \"id\": + \"VideoListResponse\",\n \"type\": \"object\",\n \"properties\": + {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"visitorId\": {\n + \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"Video\"\n },\n \"type\": \"array\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#videoListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#videoListResponse\\\".\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n }\n }\n },\n \"SearchResult\": + {\n \"type\": \"object\",\n \"description\": \"A search result contains + information about a YouTube video, channel, or playlist that matches the search + parameters specified in an API request. While a search result points to a + uniquely identifiable resource, like a video, it does not have its own persistent + data.\",\n \"properties\": {\n \"id\": {\n \"description\": + \"The id object contains information that can be used to uniquely identify + the resource that matches the search request.\",\n \"$ref\": \"ResourceId\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about a search result, such as its title or + description. For example, if the search result is a video, then the title + will be the video's title and the description will be the video's description.\",\n + \ \"$ref\": \"SearchResultSnippet\"\n },\n \"kind\": + {\n \"default\": \"youtube#searchResult\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"SearchResult\"\n },\n \"MembershipsDetails\": {\n \"id\": + \"MembershipsDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"membershipsDurationAtLevels\": {\n \"items\": {\n \"$ref\": + \"MembershipsDurationAtLevel\"\n },\n \"type\": \"array\",\n + \ \"description\": \"Data about memberships duration on particular + pricing levels.\"\n },\n \"highestAccessibleLevelDisplayName\": + {\n \"type\": \"string\",\n \"description\": \"Display name + for the highest level that the user has access to at the moment.\"\n },\n + \ \"accessibleLevels\": {\n \"type\": \"array\",\n \"description\": + \"Ids of all levels that the user has access to. This includes the currently + active level and all other levels that are included because of a higher purchase.\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n },\n + \ \"highestAccessibleLevel\": {\n \"type\": \"string\",\n \"description\": + \"Id of the highest level that the user has access to at the moment.\"\n },\n + \ \"membershipsDuration\": {\n \"$ref\": \"MembershipsDuration\",\n + \ \"description\": \"Data about memberships duration without taking + into consideration pricing levels.\"\n }\n }\n },\n \"LiveStreamListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"items\": + {\n \"items\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"description\": \"A list of live streams that match the request + criteria.\",\n \"type\": \"array\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveStreamListResponse\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"LiveStreamListResponse\"\n },\n \"ActivityContentDetailsSocial\": + {\n \"id\": \"ActivityContentDetailsSocial\",\n \"properties\": + {\n \"type\": {\n \"enum\": [\n \"unspecified\",\n + \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The name of the social network.\"\n + \ },\n \"referenceUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The URL of the social network post.\"\n },\n + \ \"author\": {\n \"description\": \"The author of the social + network post.\",\n \"type\": \"string\"\n },\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId + object encapsulates information that identifies the resource associated with + a social network post.\"\n },\n \"imageUrl\": {\n \"type\": + \"string\",\n \"description\": \"An image of the post's author.\"\n + \ }\n },\n \"description\": \"Details about a social network + post.\",\n \"type\": \"object\"\n },\n \"Comment\": {\n \"type\": + \"object\",\n \"id\": \"Comment\",\n \"description\": \"A *comment* + represents a single YouTube comment.\",\n \"properties\": {\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"description\": \"The + ID that YouTube uses to uniquely identify the comment.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n + \ \"default\": \"youtube#comment\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the comment.\"\n }\n }\n },\n \"ActivityContentDetailsComment\": + {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the resource associated with the comment.\"\n + \ }\n },\n \"id\": \"ActivityContentDetailsComment\",\n \"type\": + \"object\",\n \"description\": \"Information about a resource that received + a comment.\"\n },\n \"PlaylistPlayer\": {\n \"properties\": {\n + \ \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e + tag that embeds a player that will play the playlist.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"PlaylistPlayer\"\n },\n \"LiveChatMembershipGiftingDetails\": {\n + \ \"id\": \"LiveChatMembershipGiftingDetails\",\n \"properties\": + {\n \"giftMembershipsCount\": {\n \"format\": \"int32\",\n + \ \"description\": \"The number of gift memberships purchased by the + user.\",\n \"type\": \"integer\"\n },\n \"giftMembershipsLevelName\": + {\n \"description\": \"The name of the level of the gift memberships + purchased by the user. The Level names are defined by the YouTube channel + offering the Membership. In some situations this field isn't filled.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"VideoContentDetailsRegionRestriction\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"allowed\": {\n \"items\": {\n + \ \"type\": \"string\"\n },\n \"description\": + \"A list of region codes that identify countries where the video is viewable. + If this property is present and a country is not listed in its value, then + the video is blocked from appearing in that country. If this property is present + and contains an empty list, the video is blocked in all countries.\",\n \"type\": + \"array\"\n },\n \"blocked\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": + \"A list of region codes that identify countries where the video is blocked. + If this property is present and a country is not listed in its value, then + the video is viewable in that country. If this property is present and contains + an empty list, the video is viewable in all countries.\"\n }\n },\n + \ \"description\": \"DEPRECATED Region restriction of the video.\",\n + \ \"id\": \"VideoContentDetailsRegionRestriction\"\n }\n },\n \"batchPath\": + \"batch\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"basePath\": + \"\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": + {\n \"description\": \"See a list of your current active channel + members, their current level, and when they became a member\"\n },\n + \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": + \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": + {\n \"description\": \"Manage your YouTube videos\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": + \"See, edit, and permanently delete your YouTube videos, ratings, comments + and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": + {\n \"description\": \"View and manage your assets and associated + content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": + {\n \"description\": \"View private information of your YouTube channel + relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": + {\n \"description\": \"View your YouTube account\"\n }\n }\n + \ }\n },\n \"ownerDomain\": \"google.com\",\n \"id\": \"youtube:v3\",\n + \ \"documentationLink\": \"https://developers.google.com/youtube/\",\n \"parameters\": + {\n \"callback\": {\n \"description\": \"JSONP\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"access_token\": {\n + \ \"description\": \"OAuth access token.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"prettyPrint\": {\n \"type\": + \"boolean\",\n \"description\": \"Returns response with indentations + and line breaks.\",\n \"location\": \"query\",\n \"default\": \"true\"\n + \ },\n \"uploadType\": {\n \"description\": \"Legacy upload protocol + for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"upload_protocol\": {\n + \ \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"fields\": + {\n \"type\": \"string\",\n \"description\": \"Selector specifying + which fields to include in a partial response.\",\n \"location\": \"query\"\n + \ },\n \"quotaUser\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"key\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"oauth_token\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": + \"OAuth 2.0 token for the current user.\"\n },\n \"alt\": {\n \"enumDescriptions\": + [\n \"Responses with Content-Type of application/json\",\n \"Media + download with context-dependent Content-Type\",\n \"Responses with + Content-Type of application/x-protobuf\"\n ],\n \"description\": + \"Data format for response.\",\n \"enum\": [\n \"json\",\n \"media\",\n + \ \"proto\"\n ],\n \"location\": \"query\",\n \"default\": + \"json\",\n \"type\": \"string\"\n },\n \"$.xgafv\": {\n \"location\": + \"query\",\n \"enum\": [\n \"1\",\n \"2\"\n ],\n \"enumDescriptions\": + [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"description\": + \"V1 error format.\",\n \"type\": \"string\"\n }\n },\n \"icons\": + {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n + \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n + \ },\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"kind\": + \"discovery#restDescription\",\n \"version\": \"v3\",\n \"ownerName\": \"Google\"\n}\n" headers: Alt-Svc: - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 @@ -12517,7 +12483,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:39 GMT + - Thu, 09 Mar 2023 00:26:38 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: @@ -12635,7 +12601,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:39 GMT + - Thu, 09 Mar 2023 00:26:38 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: diff --git a/tests/cassettes/test_youtube/test_donate_from_balance.yaml b/tests/cassettes/test_youtube/test_donate_from_balance.yaml index d044957f..f6803d5e 100644 --- a/tests/cassettes/test_youtube/test_donate_from_balance.yaml +++ b/tests/cassettes/test_youtube/test_donate_from_balance.yaml @@ -10,315 +10,252 @@ interactions: uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest response: body: - string: "{\n \"protocol\": \"rest\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"kind\": \"discovery#restDescription\",\n \"servicePath\": \"\",\n \"parameters\": - {\n \"upload_protocol\": {\n \"location\": \"query\",\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": - \"string\"\n },\n \"fields\": {\n \"description\": \"Selector specifying - which fields to include in a partial response.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"uploadType\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": \"Legacy - upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n },\n - \ \"$.xgafv\": {\n \"description\": \"V1 error format.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"v1 error format\",\n - \ \"v2 error format\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"1\",\n \"2\"\n ]\n },\n \"alt\": {\n \"description\": - \"Data format for response.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"location\": \"query\",\n - \ \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"default\": \"json\"\n },\n \"oauth_token\": {\n \"type\": - \"string\",\n \"description\": \"OAuth 2.0 token for the current user.\",\n - \ \"location\": \"query\"\n },\n \"callback\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": \"JSONP\"\n - \ },\n \"access_token\": {\n \"type\": \"string\",\n \"description\": - \"OAuth access token.\",\n \"location\": \"query\"\n },\n \"key\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n - \ },\n \"quotaUser\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"type\": \"string\"\n },\n \"prettyPrint\": {\n \"type\": - \"boolean\",\n \"description\": \"Returns response with indentations - and line breaks.\",\n \"default\": \"true\",\n \"location\": \"query\"\n - \ }\n },\n \"resources\": {\n \"youtube\": {\n \"resources\": - {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true\n - \ }\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"parameterOrder\": - [],\n \"httpMethod\": \"PUT\"\n }\n }\n }\n - \ }\n },\n \"commentThreads\": {\n \"methods\": {\n \"insert\": - {\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.commentThreads.insert\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"POST\"\n },\n \"list\": {\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.commentThreads.list\",\n \"response\": {\n \"$ref\": - \"CommentThreadListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"default\": - \"20\",\n \"maximum\": \"100\",\n \"type\": \"integer\",\n - \ \"minimum\": \"1\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the + string: "{\n \"kind\": \"discovery#restDescription\",\n \"protocol\": \"rest\",\n + \ \"revision\": \"20230307\",\n \"resources\": {\n \"liveChatModerators\": + {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n + \ },\n \"parameterOrder\": [\n \"liveChatId\",\n + \ \"part\"\n ],\n \"httpMethod\": \"GET\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the liveChatModerator resource parts that + the API response will include. Supported values are id and snippet.\",\n \"required\": + true,\n \"repeated\": true,\n \"type\": \"string\"\n + \ },\n \"pageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n + \ \"location\": \"query\"\n },\n \"liveChatId\": + {\n \"description\": \"The id of the live chat for which moderators + should be returned.\",\n \"required\": true,\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": + {\n \"description\": \"The *maxResults* parameter specifies the maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"location\": \"query\"\n },\n - \ \"moderationStatus\": {\n \"description\": \"Limits - the returned comment threads to those with the specified moderation status. - Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"default\": \"published\"\n },\n - \ \"textFormat\": {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"type\": \"string\",\n \"default\": \"html\",\n - \ \"description\": \"The requested text format for the returned - comments.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Returns the comment threads with - the given IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of the specified video.\",\n \"type\": - \"string\"\n },\n \"order\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Order by time.\",\n \"Order by relevance.\"\n - \ ],\n \"default\": \"time\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\",\n \"type\": \"string\"\n },\n - \ \"searchTerms\": {\n \"description\": \"Limits the - returned comment threads to those matching the specified key words. Not compatible - with the 'id' filter.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"activities\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"path\": \"youtube/v3/activities\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.activities.list\",\n \"flatPath\": - \"youtube/v3/activities\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"publishedBefore\": - {\n \"format\": \"google-datetime\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"publishedAfter\": {\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"home\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"default\": - \"5\",\n \"location\": \"query\"\n }\n }\n + \"query\",\n \"minimum\": \"0\",\n \"default\": + \"5\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n + \ \"maximum\": \"50\"\n }\n },\n \"id\": + \"youtube.liveChatModerators.list\",\n \"description\": \"Retrieves + a list of resources, possibly filtered.\"\n },\n \"insert\": + {\n \"request\": {\n \"$ref\": \"LiveChatModerator\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"repeated\": + true,\n \"required\": true\n }\n },\n \"path\": + \"youtube/v3/liveChat/moderators\",\n \"id\": \"youtube.liveChatModerators.insert\",\n + \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n },\n + \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": + \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n + \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\"\n }\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n + \ \"id\": \"youtube.liveChatModerators.delete\",\n \"description\": + \"Deletes a chat moderator.\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\"\n \ }\n }\n },\n \"watermarks\": {\n \"methods\": {\n - \ \"set\": {\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"id\": \"youtube.watermarks.set\",\n \"flatPath\": - \"youtube/v3/watermarks/set\",\n \"description\": \"Allows upload - of watermark image and setting it for a channel.\",\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/watermarks/set\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"supportsMediaUpload\": - true,\n \"request\": {\n \"$ref\": \"InvideoBranding\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"unset\": {\n \"description\": \"Allows removal of channel + watermark.\",\n \"path\": \"youtube/v3/watermarks/unset\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n },\n \"id\": + \"youtube.watermarks.unset\",\n \"parameterOrder\": [\n \"channelId\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"10485760\",\n \"accept\": [\n \"image/jpeg\",\n + \ \"flatPath\": \"youtube/v3/watermarks/unset\"\n },\n \"set\": + {\n \"parameterOrder\": [\n \"channelId\"\n ],\n + \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"description\": + \"Allows upload of watermark image and setting it for a channel.\",\n \"request\": + {\n \"$ref\": \"InvideoBranding\"\n },\n \"mediaUpload\": + {\n \"protocols\": {\n \"simple\": {\n \"path\": + \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": true\n + \ },\n \"resumable\": {\n \"path\": + \"/resumable/upload/youtube/v3/watermarks/set\",\n \"multipart\": + true\n }\n },\n \"accept\": [\n \"image/jpeg\",\n \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n }\n },\n \"unset\": {\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"id\": - \"youtube.watermarks.unset\",\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"description\": \"Allows removal of channel watermark.\",\n \"scopes\": + \ ],\n \"maxSize\": \"10485760\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/watermarks/set\",\n \"parameters\": + {\n \"channelId\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"required\": true\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"*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.\"\n }\n },\n \"supportsMediaUpload\": + true,\n \"id\": \"youtube.watermarks.set\",\n \"httpMethod\": + \"POST\"\n }\n }\n },\n \"thumbnails\": {\n \"methods\": + {\n \"set\": {\n \"mediaUpload\": {\n \"protocols\": + {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n + \ \"multipart\": true\n },\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n + \ }\n },\n \"maxSize\": \"2097152\",\n \"accept\": + [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n + \ ]\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended + \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"id\": + \"youtube.thumbnails.set\",\n \"path\": \"youtube/v3/thumbnails/set\",\n + \ \"supportsMediaUpload\": true,\n \"response\": {\n \"$ref\": + \"ThumbnailSetResponse\"\n },\n \"description\": \"As this + is not an insert in a strict sense (it supports uploading/setting of a thumbnail + for multiple videos, which doesn't result in creation of a single resource), + I use a custom verb here.\",\n \"httpMethod\": \"POST\",\n \"parameters\": + {\n \"videoId\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"channelId\": + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/thumbnails/set\"\n }\n + \ }\n },\n \"thirdPartyLinks\": {\n \"methods\": {\n \"update\": + {\n \"parameters\": {\n \"externalChannelId\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"The *part* parameter specifies + the thirdPartyLink resource parts that the API request and response will include. + Supported values are linkingToken, status, and snippet.\",\n \"required\": + true,\n \"repeated\": true\n }\n },\n \"path\": + \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n + \ },\n \"description\": \"Updates an existing resource.\",\n + \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"httpMethod\": \"PUT\",\n \"id\": \"youtube.thirdPartyLinks.update\",\n + \ \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n },\n \"list\": + {\n \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"response\": + {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"parameters\": + {\n \"type\": {\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel + with a store on a merchandising platform in order to enable retail commerce + capabilities for that channel on YouTube.\"\n ],\n \"location\": + \"query\",\n \"description\": \"Get a third party link of the + given type.\"\n },\n \"part\": {\n \"repeated\": + true,\n \"description\": \"The *part* parameter specifies the + thirdPartyLink resource parts that the API response will include. Supported + values are linkingToken, status, and snippet.\",\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\"\n },\n \"externalChannelId\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\"\n },\n + \ \"linkingToken\": {\n \"type\": \"string\",\n \"description\": + \"Get a third party link with the given linking token.\",\n \"location\": + \"query\"\n }\n },\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"id\": \"youtube.thirdPartyLinks.list\",\n + \ \"parameterOrder\": [\n \"part\"\n ]\n },\n + \ \"insert\": {\n \"parameters\": {\n \"externalChannelId\": + {\n \"description\": \"Channel ID to which changes should be + applied, for delegation.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"The *part* parameter specifies + the thirdPartyLink resource parts that the API request and response will include. + Supported values are linkingToken, status, and snippet.\",\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\"\n + \ }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"id\": + \"youtube.thirdPartyLinks.insert\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts + a new resource into this collection.\"\n },\n \"delete\": {\n + \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.thirdPartyLinks.delete\",\n + \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": + {\n \"type\": {\n \"type\": \"string\",\n \"description\": + \"Type of the link to be deleted.\",\n \"required\": true,\n + \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel + with a store on a merchandising platform in order to enable retail commerce + capabilities for that channel on YouTube.\"\n ],\n \"location\": + \"query\"\n },\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Do not use. Required for compatibility.\"\n + \ },\n \"externalChannelId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\"\n },\n + \ \"linkingToken\": {\n \"required\": true,\n \"type\": + \"string\",\n \"description\": \"Delete the partner links with + the given linking token.\",\n \"location\": \"query\"\n }\n + \ },\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": + [\n \"linkingToken\",\n \"type\"\n ],\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\"\n }\n }\n },\n \"videos\": + {\n \"methods\": {\n \"delete\": {\n \"httpMethod\": + \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"path\": + \"youtube/v3/videos\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"channelId\"\n ]\n }\n }\n },\n \"liveBroadcasts\": - {\n \"methods\": {\n \"transition\": {\n \"flatPath\": - \"youtube/v3/liveBroadcasts/transition\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to transition.\",\n \"required\": - true\n },\n \"broadcastStatus\": {\n \"location\": + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n },\n \"id\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"description\": \"The status to which the - broadcast is going to transition.\",\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ]\n }\n },\n \"path\": - \"youtube/v3/liveBroadcasts/transition\",\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Transition a broadcast to a given status.\"\n - \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"description\": - \"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, status - and statistics.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"broadcastType\": {\n \"default\": \"event\",\n - \ \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ],\n \"description\": \"Return only broadcasts - with the selected type.\"\n },\n \"maxResults\": {\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"type\": \"integer\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n + true\n }\n },\n \"id\": \"youtube.videos.delete\"\n + \ },\n \"rate\": {\n \"httpMethod\": \"POST\",\n \"parameterOrder\": + [\n \"id\",\n \"rating\"\n ],\n \"flatPath\": + \"youtube/v3/videos/rate\",\n \"id\": \"youtube.videos.rate\",\n + \ \"path\": \"youtube/v3/videos/rate\",\n \"description\": + \"Adds a like or dislike rating to a video or removes a rating from a video.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"rating\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ]\n },\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n }\n },\n + \ \"reportAbuse\": {\n \"path\": \"youtube/v3/videos/reportAbuse\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n + \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n + \ \"id\": \"youtube.videos.reportAbuse\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \ \"description\": \"*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 @@ -328,28 +265,50 @@ interactions: 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.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"broadcastStatus\": - {\n \"description\": \"Return broadcasts with a certain status, - e.g. active broadcasts.\",\n \"type\": \"string\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return current - live broadcasts.\",\n \"Return broadcasts that have not yet - started.\",\n \"Return broadcasts that have already ended.\"\n - \ ],\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieve the list of broadcasts associated with - the given channel.\",\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"update\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + owner.\",\n \"location\": \"query\"\n }\n },\n + \ \"parameterOrder\": [],\n \"httpMethod\": \"POST\",\n \"description\": + \"Report abuse for a video.\"\n },\n \"update\": {\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"description\": \"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.\",\n + \ \"required\": true\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n + \ \"path\": \"youtube/v3/videos\",\n \"id\": \"youtube.videos.update\",\n + \ \"flatPath\": \"youtube/v3/videos\",\n \"description\": + \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": + \"Video\"\n },\n \"response\": {\n \"$ref\": + \"Video\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n },\n \"getRating\": {\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"*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 @@ -358,54 +317,119 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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 + be linked to the specified YouTube content owner.\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/videos/getRating\",\n + \ \"description\": \"Retrieves the ratings that the authorized user + gave to a list of specified videos.\",\n \"flatPath\": \"youtube/v3/videos/getRating\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"response\": + {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"id\": + \"youtube.videos.getRating\"\n },\n \"list\": {\n \"httpMethod\": + \"GET\",\n \"flatPath\": \"youtube/v3/videos\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"parameters\": {\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*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 perform actions on behalf of the channel specified - in the parameter value, without having to provide authentication credentials - for each separate channel.\"\n },\n \"part\": {\n \"description\": + 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.\"\n },\n \"maxResults\": {\n + \ \"type\": \"integer\",\n \"maximum\": \"50\",\n + \ \"minimum\": \"1\",\n \"format\": \"uint32\",\n + \ \"description\": \"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.\",\n + \ \"default\": \"5\",\n \"location\": \"query\"\n + \ },\n \"id\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Return + videos with the given ids.\",\n \"repeated\": true\n },\n + \ \"chart\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"enum\": [\n \"chartUnspecified\",\n + \ \"mostPopular\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return the most popular videos + for the specified content region and video category.\"\n ],\n + \ \"description\": \"Return the videos that are in the specified + chart.\"\n },\n \"maxHeight\": {\n \"type\": + \"integer\",\n \"location\": \"query\",\n \"maximum\": + \"8192\",\n \"minimum\": \"72\",\n \"format\": \"int32\"\n + \ },\n \"myRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"description\": \"Return + videos liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ]\n },\n \"regionCode\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Use a chart that is specific to the specified + region\"\n },\n \"hl\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Stands for \\\"host language\\\". Specifies the localization language of + the metadata to be filled into snippet.localized. The field is filled with + the default metadata if there is no localization in the specified language. + The parameter value must be a language code included in the list returned + by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n },\n + \ \"maxWidth\": {\n \"type\": \"integer\",\n \"location\": + \"query\",\n \"format\": \"int32\",\n \"minimum\": + \"72\",\n \"description\": \"Return the player with maximum height + specified in\",\n \"maximum\": \"8192\"\n },\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"description\": \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"videoCategoryId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Use chart that is specific to the specified + video category\",\n \"default\": \"0\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n + \ \"type\": \"string\"\n },\n \"locale\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"response\": {\n \"$ref\": + \"VideoListResponse\"\n },\n \"id\": \"youtube.videos.list\",\n + \ \"path\": \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ },\n \"insert\": {\n \"description\": \"Inserts a + new resource into this collection.\",\n \"path\": \"youtube/v3/videos\",\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.liveBroadcasts.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Updates an existing broadcast for the authenticated user.\"\n },\n - \ \"insertCuepoint\": {\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Cuepoint\"\n - \ },\n \"description\": \"Insert cuepoints in a broadcast\",\n - \ \"parameterOrder\": [],\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + 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.\",\n \"type\": \"string\",\n \"required\": + true\n },\n \"autoLevels\": {\n \"description\": + \"Should auto-levels be applied to the upload.\",\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -420,36 +444,65 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"POST\"\n },\n - \ \"insert\": {\n \"description\": \"Inserts a new stream for - the authenticated user.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"This parameter can only be used in a properly authorized request. *Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* + for each separate channel.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"stabilize\": {\n \"type\": + \"boolean\",\n \"description\": \"Should stabilize be applied + to the upload.\",\n \"location\": \"query\"\n },\n + \ \"notifySubscribers\": {\n \"default\": \"true\",\n + \ \"type\": \"boolean\",\n \"description\": \"Notify + the channel subscribers about the new video. As default, the notification + is enabled.\",\n \"location\": \"query\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"mediaUpload\": + {\n \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n + \ ],\n \"protocols\": {\n \"simple\": {\n + \ \"path\": \"/upload/youtube/v3/videos\",\n \"multipart\": + true\n },\n \"resumable\": {\n \"path\": + \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": true\n + \ }\n },\n \"maxSize\": \"274877906944\"\n + \ },\n \"httpMethod\": \"POST\",\n \"flatPath\": + \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"supportsMediaUpload\": true,\n \"response\": {\n \"$ref\": + \"Video\"\n },\n \"id\": \"youtube.videos.insert\",\n \"request\": + {\n \"$ref\": \"Video\"\n }\n }\n }\n },\n + \ \"subscriptions\": {\n \"methods\": {\n \"delete\": {\n \"parameterOrder\": + [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n + \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.subscriptions.delete\",\n + \ \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n }\n },\n \"path\": \"youtube/v3/subscriptions\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Deletes a resource.\"\n },\n + \ \"list\": {\n \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"parameters\": + {\n \"id\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"Return the subscriptions with + the given IDs for Stubby or Apiary.\",\n \"repeated\": true\n + \ },\n \"forChannelId\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Return + the subscriptions to the subset of these channels that the authenticated user + is subscribed to.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return the subscriptions of the given channel owner.\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"required\": true\n },\n \"maxResults\": + {\n \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"type\": + \"integer\",\n \"minimum\": \"0\",\n \"location\": + \"query\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n + \ \"maximum\": \"50\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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 @@ -461,154 +514,332 @@ interactions: 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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"POST\"\n - \ },\n \"bind\": {\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"Broadcast to bind to the stream\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"streamId\": {\n \"description\": - \"Stream to bind, if not set unbind the current one.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"description\": \"Bind a broadcast - to a stream.\",\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ]\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"description\": \"Broadcast to delete.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"description\": \"Delete a given broadcast.\",\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.videoCategories.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + for each separate channel.\",\n \"location\": \"query\"\n },\n + \ \"myRecentSubscribers\": {\n \"location\": \"query\",\n + \ \"type\": \"boolean\"\n },\n \"order\": + {\n \"enumDescriptions\": [\n \"\",\n \"Sort + by relevance.\",\n \"Sort by order of activity.\",\n \"Sort + alphabetically.\"\n ],\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n + \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n + \ ],\n \"type\": \"string\",\n \"default\": + \"relevance\",\n \"location\": \"query\",\n \"description\": + \"The order of the returned subscriptions\"\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"mine\": {\n \"type\": + \"boolean\",\n \"location\": \"query\",\n \"description\": + \"Flag for returning the subscriptions of the authenticated user.\"\n },\n + \ \"mySubscribers\": {\n \"type\": \"boolean\",\n \"description\": + \"Return the subscribers of the given channel owner.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*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.\"\n }\n },\n + \ \"id\": \"youtube.subscriptions.list\",\n \"httpMethod\": + \"GET\",\n \"description\": \"Retrieves a list of resources, possibly + filtered.\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/subscriptions\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n },\n \"insert\": {\n \"description\": + \"Inserts a new resource into this collection.\",\n \"flatPath\": + \"youtube/v3/subscriptions\",\n \"path\": \"youtube/v3/subscriptions\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"hl\": {\n \"default\": \"en-US\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the videoCategory resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": + \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n + \ \"id\": \"youtube.subscriptions.insert\",\n \"httpMethod\": + \"POST\",\n \"response\": {\n \"$ref\": \"Subscription\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"repeated\": + true\n }\n }\n }\n }\n },\n \"comments\": + {\n \"methods\": {\n \"delete\": {\n \"httpMethod\": + \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"description\": \"Deletes a resource.\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"parameters\": {\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"flatPath\": + \"youtube/v3/comments\",\n \"path\": \"youtube/v3/comments\",\n \"id\": + \"youtube.comments.delete\"\n },\n \"insert\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/comments\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"required\": true,\n \"type\": + \"string\"\n }\n },\n \"request\": {\n \"$ref\": + \"Comment\"\n },\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"id\": \"youtube.comments.insert\",\n \"httpMethod\": + \"POST\"\n },\n \"markAsSpam\": {\n \"path\": \"youtube/v3/comments/markAsSpam\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"description\": + \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n + \ \"required\": true\n }\n },\n \"description\": + \"Expresses the caller's opinion that one or more comments should be flagged + as spam.\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n + \ \"id\": \"youtube.comments.markAsSpam\",\n \"httpMethod\": + \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"list\": {\n \"httpMethod\": \"GET\",\n + \ \"response\": {\n \"$ref\": \"CommentListResponse\"\n + \ },\n \"id\": \"youtube.comments.list\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/comments\",\n + \ \"parameters\": {\n \"textFormat\": {\n \"enumDescriptions\": + [\n \"\",\n \"Returns the comments in HTML format. + This is the default value.\",\n \"Returns the comments in plain + text format.\"\n ],\n \"default\": \"html\",\n \"enum\": + [\n \"textFormatUnspecified\",\n \"html\",\n + \ \"plainText\"\n ],\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"The requested text format for the returned comments.\"\n },\n + \ \"id\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"Returns the video categories with the given IDs for Stubby or Apiary.\",\n - \ \"location\": \"query\"\n }\n },\n \"response\": - {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/videoCategories\",\n \"path\": - \"youtube/v3/videoCategories\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\"\n }\n }\n },\n \"tests\": - {\n \"methods\": {\n \"insert\": {\n \"path\": \"youtube/v3/tests\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"POST method.\",\n \"flatPath\": - \"youtube/v3/tests\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.tests.insert\",\n \"request\": - {\n \"$ref\": \"TestItem\"\n },\n \"parameters\": - {\n \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": + \"Returns the comments with the given IDs for One Platform.\"\n },\n + \ \"maxResults\": {\n \"maximum\": \"100\",\n \"type\": + \"integer\",\n \"description\": \"The *maxResults* parameter + specifies the maximum number of items that should be returned in the result + set.\",\n \"default\": \"20\",\n \"minimum\": \"1\",\n + \ \"format\": \"uint32\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"repeated\": true,\n + \ \"description\": \"The *part* parameter specifies a comma-separated + list of one or more comment resource properties that the API response will + include.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"parentId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Returns replies to the specified comment. Note, currently YouTube features + only one level of replies (ie replies to top level comments). However replies + to replies may be supported in the future.\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/comments\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n + \ },\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"path\": + \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n + \ },\n \"id\": \"youtube.comments.update\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"part\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\",\n \"description\": \"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.\",\n + \ \"repeated\": true\n }\n },\n \"flatPath\": + \"youtube/v3/comments\",\n \"request\": {\n \"$ref\": + \"Comment\"\n },\n \"description\": \"Updates an existing + resource.\"\n },\n \"setModerationStatus\": {\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"description\": \"Modifies the moderation status of + the comments with the given IDs\",\n \"location\": \"query\",\n + \ \"required\": true\n },\n \"moderationStatus\": + {\n \"description\": \"Specifies the requested moderation status. + Note, comments can be in statuses, which are not available through this call. + For example, this call does not allow to mark a comment as 'likely spam'. + Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, + MODERATION_STATUS_REJECTED.\",\n \"required\": true,\n \"location\": + \"query\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n + \ \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ]\n },\n \"banAuthor\": + {\n \"location\": \"query\",\n \"default\": \"false\",\n + \ \"type\": \"boolean\",\n \"description\": \"If + set to true the author of the comment gets added to the ban list. This means + all future comments of the author will autmomatically be rejected. Only valid + in combination with STATUS_REJECTED.\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"parameterOrder\": + [\n \"id\",\n \"moderationStatus\"\n ],\n \"id\": + \"youtube.comments.setModerationStatus\",\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n + \ \"description\": \"Sets the moderation status of one or more comments.\",\n + \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"members\": + {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/members\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"path\": \"youtube/v3/members\",\n \"response\": + {\n \"$ref\": \"MemberListResponse\"\n },\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"required\": + true,\n \"description\": \"The *part* parameter specifies the + member resource parts that the API response will include. Set the parameter + value to snippet.\",\n \"type\": \"string\",\n \"repeated\": + true\n },\n \"hasAccessToLevel\": {\n \"location\": + \"query\",\n \"description\": \"Filter members in the results + set to the ones that have access to a level.\",\n \"type\": \"string\"\n + \ },\n \"filterByMemberChannelId\": {\n \"location\": + \"query\",\n \"description\": \"Comma separated list of channel + IDs. Only data about members that are part of this list will be included in + the response.\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"default\": \"5\",\n \"format\": \"uint32\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"maximum\": + \"1000\",\n \"type\": \"integer\",\n \"minimum\": + \"0\",\n \"location\": \"query\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"mode\": {\n \"enumDescriptions\": + [\n \"\",\n \"Return only members that joined + after the first call with this mode was made.\",\n \"Return + all current members, from newest to oldest.\"\n ],\n \"description\": + \"Parameter that specifies which channel members to return.\",\n \"location\": + \"query\",\n \"default\": \"all_current\",\n \"type\": + \"string\",\n \"enum\": [\n \"listMembersModeUnknown\",\n + \ \"updates\",\n \"all_current\"\n ]\n + \ }\n },\n \"description\": \"Retrieves a list + of members that match the request criteria for a channel.\",\n \"id\": + \"youtube.members.list\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"GET\"\n }\n }\n },\n + \ \"search\": {\n \"methods\": {\n \"list\": {\n \"id\": + \"youtube.search.list\",\n \"httpMethod\": \"GET\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/search\",\n \"description\": + \"Retrieves a list of search resources\",\n \"parameters\": {\n \"videoDuration\": + {\n \"type\": \"string\",\n \"description\": \"Filter + on the duration of the videos.\",\n \"location\": \"query\",\n + \ \"enum\": [\n \"videoDurationUnspecified\",\n + \ \"any\",\n \"short\",\n \"medium\",\n + \ \"long\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Do not filter video search results + based on their duration. This is the default value.\",\n \"Only + include videos that are less than four minutes long.\",\n \"Only + include videos that are between four and 20 minutes long (inclusive).\",\n + \ \"Only include videos longer than 20 minutes.\"\n ]\n + \ },\n \"type\": {\n \"type\": \"string\",\n + \ \"description\": \"Restrict results to a particular set of resource + types from One Platform.\",\n \"location\": \"query\",\n \"repeated\": + true\n },\n \"videoLicense\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"Return + all videos, regardless of which license they have, that match the query parameters.\",\n + \ \"Only return videos that have the standard YouTube license.\",\n + \ \"Only return videos that have a Creative Commons license. + Users can reuse videos with this license in other videos that they create. + Learn more.\"\n ],\n \"enum\": [\n \"any\",\n + \ \"youtube\",\n \"creativeCommon\"\n ],\n + \ \"description\": \"Filter on the license of the videos.\",\n + \ \"location\": \"query\"\n },\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"description\": \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"TestItem\"\n }\n }\n }\n },\n - \ \"playlistItems\": {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \ \"description\": \"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.\"\n + \ },\n \"publishedBefore\": {\n \"location\": + \"query\",\n \"format\": \"google-datetime\",\n \"description\": + \"Filter on resources published before this date.\",\n \"type\": + \"string\"\n },\n \"topicId\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Restrict results to a particular topic.\"\n },\n \"eventType\": + {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n + \ \"The live broadcast is active.\",\n \"The + live broadcast has been completed.\"\n ],\n \"enum\": + [\n \"none\",\n \"upcoming\",\n \"live\",\n + \ \"completed\"\n ],\n \"location\": + \"query\",\n \"description\": \"Filter on the livestream status + of the videos.\"\n },\n \"videoCaption\": {\n \"enum\": + [\n \"videoCaptionUnspecified\",\n \"any\",\n + \ \"closedCaption\",\n \"none\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Do + not filter results based on caption availability.\",\n \"Only + include videos that have captions.\",\n \"Only include videos + that do not have captions.\"\n ],\n \"location\": + \"query\",\n \"description\": \"Filter on the presence of captions + on the videos.\",\n \"type\": \"string\"\n },\n \"videoSyndicated\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Filter on syndicated videos.\",\n \"enum\": + [\n \"videoSyndicatedUnspecified\",\n \"any\",\n + \ \"true\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos, syndicated + or not.\",\n \"Only retrieve syndicated videos.\"\n ]\n + \ },\n \"videoDimension\": {\n \"enum\": + [\n \"any\",\n \"2d\",\n \"3d\"\n + \ ],\n \"enumDescriptions\": [\n \"Include + both 3D and non-3D videos in returned results. This is the default value.\",\n + \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict + search results to only include 3D videos.\"\n ],\n \"description\": + \"Filter on 3d videos.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"channelType\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"enum\": [\n + \ \"channelTypeUnspecified\",\n \"any\",\n \"show\"\n + \ ],\n \"description\": \"Add a filter on the channel + search.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all channels.\",\n \"Only retrieve + shows.\"\n ]\n },\n \"videoEmbeddable\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Return + all videos, embeddable or not.\",\n \"Only retrieve embeddable + videos.\"\n ],\n \"description\": \"Filter on embeddable + videos.\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n + \ \"any\",\n \"true\"\n ]\n },\n + \ \"videoDefinition\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"any\",\n \"standard\",\n + \ \"high\"\n ],\n \"location\": \"query\",\n + \ \"description\": \"Filter on the definition of the videos.\",\n + \ \"enumDescriptions\": [\n \"Return all videos, + regardless of their resolution.\",\n \"Only retrieve videos + in standard definition.\",\n \"Only retrieve HD videos.\"\n + \ ]\n },\n \"safeSearch\": {\n \"enumDescriptions\": + [\n \"\",\n \"YouTube will not filter the search + result set.\",\n \"YouTube will filter some content from search + results and, at the least, will filter content that is restricted in your + locale. Based on their content, search results could be removed from search + results or demoted in search results. This is the default parameter value.\",\n + \ \"YouTube will try to exclude all restricted content from + the search result set. Based on their content, search results could be removed + from search results or demoted in search results.\"\n ],\n \"type\": + \"string\",\n \"description\": \"Indicates whether the search + results should include restricted content as well as standard content.\",\n + \ \"location\": \"query\",\n \"default\": \"moderate\",\n + \ \"enum\": [\n \"safeSearchSettingUnspecified\",\n + \ \"none\",\n \"moderate\",\n \"strict\"\n + \ ]\n },\n \"channelId\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": + \"Filter on resources belonging to this channelId.\"\n },\n \"location\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Filter on location of the video\"\n },\n + \ \"regionCode\": {\n \"type\": \"string\",\n \"description\": + \"Display the content as seen by viewers in this country.\",\n \"location\": + \"query\"\n },\n \"videoCategoryId\": {\n \"location\": + \"query\",\n \"description\": \"Filter on videos in a specific + category.\",\n \"type\": \"string\"\n },\n \"order\": + {\n \"description\": \"Sort order of the results.\",\n \"enum\": + [\n \"searchSortUnspecified\",\n \"date\",\n + \ \"rating\",\n \"viewCount\",\n \"relevance\",\n + \ \"title\",\n \"videoCount\"\n ],\n + \ \"default\": \"relevance\",\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Resources + are sorted in reverse chronological order based on the date they were created.\",\n + \ \"Resources are sorted from highest to lowest rating.\",\n + \ \"Resources are sorted from highest to lowest number of views.\",\n + \ \"Resources are sorted based on their relevance to the search + query. This is the default value for this parameter.\",\n \"Resources + are sorted alphabetically by title.\",\n \"Channels are sorted + in descending order of their number of uploaded videos.\"\n ],\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": \"*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 @@ -617,32 +848,48 @@ interactions: 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.\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the playlist items within the given playlist.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the playlist items associated with the given video ID.\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlistItems.list\",\n \"response\": - {\n \"$ref\": \"PlaylistItemListResponse\"\n }\n },\n - \ \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n },\n \"locationRadius\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Filter on distance from the location (specified above).\"\n },\n + \ \"forMine\": {\n \"type\": \"boolean\",\n \"location\": + \"query\",\n \"description\": \"Search for the private videos + of the authenticated user.\"\n },\n \"forContentOwner\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Search owned by a content owner.\"\n },\n + \ \"publishedAfter\": {\n \"format\": \"google-datetime\",\n + \ \"type\": \"string\",\n \"description\": \"Filter + on resources published after this date.\",\n \"location\": \"query\"\n + \ },\n \"videoType\": {\n \"enum\": [\n + \ \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n + \ \"episode\"\n ],\n \"location\": + \"query\",\n \"description\": \"Filter on videos of a specific + type.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos.\",\n \"Only + retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n + \ ]\n },\n \"maxResults\": {\n \"type\": + \"integer\",\n \"maximum\": \"50\",\n \"default\": + \"5\",\n \"minimum\": \"0\",\n \"format\": \"uint32\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"location\": + \"query\"\n },\n \"relevanceLanguage\": {\n \"description\": + \"Return results relevant to this language.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"q\": + {\n \"description\": \"Textual search terms to match.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"relatedToVideoId\": + {\n \"description\": \"Search related to a resource.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"forDeveloper\": + {\n \"description\": \"Restrict the search to only retrieve videos + uploaded using the project id of the authenticated user.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n }\n },\n + \ \"path\": \"youtube/v3/search\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"SearchListResponse\"\n }\n }\n }\n },\n \"liveBroadcasts\": + {\n \"methods\": {\n \"insert\": {\n \"response\": {\n + \ \"$ref\": \"LiveBroadcast\"\n },\n \"httpMethod\": + \"POST\",\n \"description\": \"Inserts a new stream for the authenticated + user.\",\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates @@ -653,198 +900,125 @@ interactions: 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.\"\n },\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"id\": - \"youtube.playlistItems.delete\",\n \"httpMethod\": \"DELETE\"\n - \ },\n \"update\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.playlistItems.update\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"insert\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.playlistItems.insert\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/playlistItems\"\n }\n }\n },\n - \ \"thirdPartyLinks\": {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"type\": {\n \"enum\": [\n - \ \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"description\": \"Get a third party link of the given type.\",\n - \ \"location\": \"query\"\n },\n \"linkingToken\": + owner.\"\n },\n \"part\": {\n \"description\": + \"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.\",\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": \"query\",\n \"description\": - \"Get a third party link with the given linking token.\",\n \"type\": - \"string\"\n },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Channel ID to which changes should - be applied, for delegation.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"youtube.thirdPartyLinks.list\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ],\n \"description\": \"Deletes a - resource.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"type\": {\n \"required\": true,\n \"description\": - \"Type of the link to be deleted.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"type\": - \"string\"\n },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"linkingToken\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"Delete the partner links with the given linking - token.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Do not - use. Required for compatibility.\"\n }\n },\n \"id\": - \"youtube.thirdPartyLinks.delete\"\n },\n \"insert\": {\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API request and response will include. - Supported values are linkingToken, status, and snippet.\",\n \"repeated\": - true\n },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.thirdPartyLinks.insert\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"path\": \"youtube/v3/thirdPartyLinks\"\n - \ },\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"httpMethod\": \"PUT\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n }\n }\n - \ },\n \"subscriptions\": {\n \"methods\": {\n \"delete\": - {\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"path\": - \"youtube/v3/subscriptions\",\n \"description\": \"Deletes a resource.\",\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n }\n },\n \"insert\": {\n \"request\": - {\n \"$ref\": \"Subscription\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\"\n }\n - \ },\n \"path\": \"youtube/v3/subscriptions\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.subscriptions.insert\",\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/subscriptions\"\n },\n \"list\": - {\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"id\": - \"youtube.subscriptions.list\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"parameters\": {\n \"forChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\"\n },\n \"pageToken\": {\n \"location\": + \"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.\",\n \"type\": \"string\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"id\": + \"youtube.liveBroadcasts.insert\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"list\": {\n \"id\": \"youtube.liveBroadcasts.list\",\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": + {\n \"maxResults\": {\n \"minimum\": \"0\",\n \"type\": + \"integer\",\n \"location\": \"query\",\n \"default\": + \"5\",\n \"format\": \"uint32\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"maximum\": \"50\"\n },\n + \ \"mine\": {\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"broadcastType\": {\n \"enumDescriptions\": + [\n \"\",\n \"Return all broadcasts.\",\n \"Return + only scheduled event broadcasts.\",\n \"Return only persistent + broadcasts.\"\n ],\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n + \ \"all\",\n \"event\",\n \"persistent\"\n + \ ],\n \"description\": \"Return only broadcasts + with the selected type.\",\n \"default\": \"event\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Return + broadcasts with the given ids from Stubby or Apiary.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n },\n \"pageToken\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"mySubscribers\": {\n \"type\": \"boolean\",\n \"description\": - \"Return the subscribers of the given channel owner.\",\n \"location\": - \"query\"\n },\n \"myRecentSubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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 + \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": + for each separate channel.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true,\n \"description\": + \"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, status + and statistics.\"\n },\n \"broadcastStatus\": {\n \"enumDescriptions\": + [\n \"\",\n \"Return all broadcasts.\",\n \"Return + current live broadcasts.\",\n \"Return broadcasts that have + not yet started.\",\n \"Return broadcasts that have already + ended.\"\n ],\n \"location\": \"query\",\n \"description\": + \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"type\": + \"string\",\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n + \ \"all\",\n \"active\",\n \"upcoming\",\n + \ \"completed\"\n ]\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"description\": \"Retrieve the list of broadcasts + associated with the given channel.\",\n \"httpMethod\": \"GET\",\n + \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/liveBroadcasts\"\n },\n \"transition\": + {\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"httpMethod\": + \"POST\",\n \"description\": \"Transition a broadcast to a given + status.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"description\": \"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.\",\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"broadcastStatus\": {\n \"required\": + true,\n \"enumDescriptions\": [\n \"\",\n \"Start + testing the broadcast. YouTube transmits video to the broadcast's monitor + stream. Note that you can only transition a broadcast to the testing state + if its contentDetails.monitorStream.enableMonitorStream property is set to + true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The + broadcast is over. YouTube stops transmitting video.\"\n ],\n + \ \"description\": \"The status to which the broadcast is going + to transition.\",\n \"enum\": [\n \"statusUnspecified\",\n + \ \"testing\",\n \"live\",\n \"complete\"\n + \ ],\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -853,81 +1027,59 @@ interactions: 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.\"\n },\n \"channelId\": - {\n \"description\": \"Return the subscriptions of the given - channel owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"description\": \"Flag for returning the subscriptions - of the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"order\": {\n \"default\": \"relevance\",\n \"type\": - \"string\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"description\": \"The order of the returned - subscriptions\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"default\": \"5\"\n },\n \"id\": - {\n \"description\": \"Return the subscriptions with the given - IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"id\": \"youtube.i18nLanguages.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/i18nLanguages\",\n \"parameters\": {\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"default\": \"en_US\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the i18nLanguage - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"I18nLanguageListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/i18nLanguages\"\n }\n - \ }\n },\n \"abuseReports\": {\n \"methods\": {\n \"insert\": - {\n \"id\": \"youtube.abuseReports.insert\",\n \"flatPath\": - \"youtube/v3/abuseReports\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"path\": \"youtube/v3/abuseReports\",\n \"request\": {\n - \ \"$ref\": \"AbuseReport\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"playlists\": {\n \"methods\": {\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/playlists\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.playlists.delete\",\n + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n + \ \"id\": {\n \"required\": true,\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Broadcast to transition.\"\n }\n },\n \"flatPath\": + \"youtube/v3/liveBroadcasts/transition\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n + \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n + \ \"part\"\n ],\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n }\n },\n \"insertCuepoint\": {\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": + \ ],\n \"request\": {\n \"$ref\": \"Cuepoint\"\n + \ },\n \"parameterOrder\": [],\n \"parameters\": + {\n \"id\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"Broadcast to insert ads to, + or equivalently `external_video_id` for internal use.\"\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube @@ -937,31 +1089,20 @@ interactions: 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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n }\n },\n - \ \"insert\": {\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.playlists.insert\",\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"path\": \"youtube/v3/playlists\",\n \"request\": {\n - \ \"$ref\": \"Playlist\"\n },\n \"flatPath\": - \"youtube/v3/playlists\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + owner.\",\n \"type\": \"string\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"path\": + \"youtube/v3/liveBroadcasts/cuepoint\",\n \"response\": {\n \"$ref\": + \"Cuepoint\"\n },\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n + \ \"httpMethod\": \"POST\",\n \"description\": \"Insert cuepoints + in a broadcast\"\n },\n \"delete\": {\n \"id\": \"youtube.liveBroadcasts.delete\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"description\": \"Delete a given + broadcast.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"required\": + true,\n \"description\": \"Broadcast to delete.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -976,81 +1117,8 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"list\": {\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"id\": \"youtube.playlists.list\",\n \"parameters\": - {\n \"mine\": {\n \"location\": \"query\",\n \"description\": - \"Return the playlists owned by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"type\": \"integer\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - content in specified language\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Return the playlists with the - given IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"part\": {\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Return the playlists owned by - the specified channel ID.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/playlists\"\n },\n \"update\": - {\n \"flatPath\": \"youtube/v3/playlists\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"path\": - \"youtube/v3/playlists\",\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": + for each separate channel.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -1059,42 +1127,62 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"id\": \"youtube.playlists.update\"\n - \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"I18nRegionListResponse\"\n },\n \"parameters\": - {\n \"hl\": {\n \"type\": \"string\",\n \"default\": - \"en_US\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the i18nRegion - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ }\n },\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/i18nRegions\"\n - \ }\n }\n },\n \"liveStreams\": {\n \"methods\": {\n - \ \"update\": {\n \"path\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Updates - an existing stream for the authenticated user.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\"\n },\n \"bind\": + {\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": + \"Bind a broadcast to a stream.\",\n \"id\": \"youtube.liveBroadcasts.bind\",\n + \ \"parameterOrder\": [\n \"id\",\n \"part\"\n + \ ],\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"httpMethod\": + \"POST\",\n \"parameters\": {\n \"streamId\": {\n \"location\": + \"query\",\n \"description\": \"Stream to bind, if not set unbind + the current one.\",\n \"type\": \"string\"\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n + \ \"id\": {\n \"location\": \"query\",\n \"required\": + true,\n \"description\": \"Broadcast to bind to the stream\",\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"description\": \"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.\",\n \"required\": true,\n + \ \"location\": \"query\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"update\": {\n \"description\": + \"Updates an existing broadcast for the authenticated user.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.liveBroadcasts.update\",\n \"flatPath\": + \"youtube/v3/liveBroadcasts\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n + \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"PUT\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -1110,116 +1198,21 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": + \"query\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"description\": \"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.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"id\": \"youtube.liveStreams.update\"\n },\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Retrieve the list of streams associated with - the given channel. --\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"id\": \"youtube.liveStreams.list\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Return - LiveStreams with the given ids from Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"type\": \"integer\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n }\n },\n - \ \"insert\": {\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"id\": \"youtube.liveStreams.insert\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new stream for the authenticated user.\",\n \"parameters\": {\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"description\": \"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, content_details, and status.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + 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.\",\n \"required\": + true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -1230,23 +1223,25 @@ interactions: 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.\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ]\n },\n \"delete\": {\n \"description\": - \"Deletes an existing stream for the authenticated user.\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"This parameter can only be used in a properly + \"string\"\n }\n }\n }\n }\n },\n \"abuseReports\": + {\n \"methods\": {\n \"insert\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": + \"AbuseReport\"\n },\n \"path\": \"youtube/v3/abuseReports\",\n + \ \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n + \ \"required\": true,\n \"repeated\": true,\n \"location\": + \"query\"\n }\n },\n \"description\": \"Inserts + a new resource into this collection.\",\n \"request\": {\n \"$ref\": + \"AbuseReport\"\n },\n \"flatPath\": \"youtube/v3/abuseReports\",\n + \ \"id\": \"youtube.abuseReports.insert\"\n }\n }\n },\n + \ \"channelBanners\": {\n \"methods\": {\n \"insert\": {\n \"flatPath\": + \"youtube/v3/channelBanners/insert\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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 @@ -1260,274 +1255,73 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.delete\"\n - \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"description\": \"Retrieves a list of members that - match the request criteria for a channel.\",\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.members.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/members\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"mode\": - {\n \"location\": \"query\",\n \"default\": \"all_current\",\n - \ \"description\": \"Parameter that specifies which channel members - to return.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ],\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"type\": \"string\"\n },\n \"filterByMemberChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"maximum\": \"1000\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"minimum\": \"0\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"hasAccessToLevel\": - {\n \"type\": \"string\",\n \"description\": \"Filter - members in the results set to the ones that have access to a level.\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"flatPath\": \"youtube/v3/members\"\n - \ }\n }\n },\n \"comments\": {\n \"methods\": {\n \"setModerationStatus\": - {\n \"description\": \"Sets the moderation status of one or more - comments.\",\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\",\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"parameters\": {\n \"banAuthor\": {\n - \ \"description\": \"If set to true the author of the comment - gets added to the ban list. This means all future comments of the author will - autmomatically be rejected. Only valid in combination with STATUS_REJECTED.\",\n - \ \"type\": \"boolean\",\n \"default\": \"false\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Modifies - the moderation status of the comments with the given IDs\",\n \"required\": - true\n },\n \"moderationStatus\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the requested moderation - status. Note, comments can be in statuses, which are not available through - this call. For example, this call does not allow to mark a comment as 'likely - spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"required\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments/setModerationStatus\"\n },\n - \ \"update\": {\n \"id\": \"youtube.comments.update\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"path\": - \"youtube/v3/comments\",\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"PUT\"\n },\n \"markAsSpam\": - {\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Flags the comments with the - given IDs as spam in the caller's opinion.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Expresses the caller's opinion - that one or more comments should be flagged as spam.\",\n \"path\": - \"youtube/v3/comments/markAsSpam\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.comments.markAsSpam\"\n },\n - \ \"insert\": {\n \"id\": \"youtube.comments.insert\",\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"Comment\"\n }\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.delete\",\n \"path\": \"youtube/v3/comments\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"list\": {\n \"id\": \"youtube.comments.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/comments\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"parentId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"type\": \"integer\",\n - \ \"maximum\": \"100\",\n \"location\": \"query\",\n - \ \"minimum\": \"1\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"format\": \"uint32\",\n \"default\": - \"20\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more comment - resource properties that the API response will include.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"id\": - {\n \"description\": \"Returns the comments with the given IDs - for One Platform.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"textFormat\": {\n \"default\": - \"html\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"description\": \"The requested - text format for the returned comments.\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"response\": - {\n \"$ref\": \"CommentListResponse\"\n }\n }\n - \ }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": {\n - \ \"list\": {\n \"parameters\": {\n \"hl\": {\n - \ \"default\": \"en-US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the videoCategory resource parts that the API response - will include. Supported values are id and snippet.\",\n \"repeated\": - true\n }\n },\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/videoAbuseReportReasons\",\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"delete\": - {\n \"path\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.videos.delete\"\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/videos\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"parameters\": - {\n \"maxHeight\": {\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"minimum\": \"72\",\n \"format\": - \"int32\",\n \"maximum\": \"8192\"\n },\n \"chart\": - {\n \"description\": \"Return the videos that are in the specified - chart.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ],\n - \ \"enum\": [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"type\": \"string\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"description\": - \"Use a chart that is specific to the specified region\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"videoCategoryId\": {\n \"description\": \"Use chart - that is specific to the specified video category\",\n \"type\": - \"string\",\n \"default\": \"0\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Return videos with the given ids.\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"default\": - \"5\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"minimum\": \"1\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\",\n \"description\": \"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.\"\n },\n \"maxWidth\": - {\n \"minimum\": \"72\",\n \"type\": \"integer\",\n - \ \"maximum\": \"8192\",\n \"description\": \"Return - the player with maximum height specified in\",\n \"location\": - \"query\",\n \"format\": \"int32\"\n },\n \"myRating\": + for each separate channel.\"\n },\n \"channelId\": {\n + \ \"type\": \"string\",\n \"description\": \"Unused, + channel_id is currently derived from the security context of the requestor.\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ]\n },\n \"hl\": {\n \"location\": - \"query\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively + \ \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"locale\": {\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.videos.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n }\n },\n \"httpMethod\": + \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n + \ ],\n \"supportsMediaUpload\": true,\n \"description\": + \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.channelBanners.insert\",\n + \ \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n + \ },\n \"parameterOrder\": [],\n \"mediaUpload\": + {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ],\n \"maxSize\": + \"6291456\",\n \"protocols\": {\n \"simple\": {\n + \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n + \ },\n \"resumable\": {\n \"multipart\": + true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n + \ }\n }\n },\n \"request\": {\n \"$ref\": + \"ChannelBannerResource\"\n },\n \"path\": \"youtube/v3/channelBanners/insert\"\n + \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"delete\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"VideoListResponse\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"update\": {\n \"id\": \"youtube.videos.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"parameters\": {\n \"onBehalfOf\": {\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\",\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n }\n },\n + \ \"flatPath\": \"youtube/v3/captions\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n + \ \"path\": \"youtube/v3/captions\",\n \"description\": \"Deletes + a resource.\",\n \"id\": \"youtube.captions.delete\"\n },\n + \ \"update\": {\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOf\": + {\n \"location\": \"query\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n + \ \"type\": \"string\"\n },\n \"sync\": + {\n \"type\": \"boolean\",\n \"description\": \"Extra + parameter to allow automatically syncing the uploaded caption/transcript with + the audio.\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"*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 @@ -1537,35 +1331,28 @@ interactions: once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"required\": true\n }\n - \ },\n \"path\": \"youtube/v3/videos\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + YouTube content owner.\"\n }\n },\n \"httpMethod\": + \"PUT\",\n \"id\": \"youtube.captions.update\",\n \"path\": + \"youtube/v3/captions\",\n \"supportsMediaUpload\": true,\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n + \ \"application/octet-stream\",\n \"*/*\"\n ],\n + \ \"maxSize\": \"104857600\",\n \"protocols\": {\n \"simple\": + {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": + true\n },\n \"resumable\": {\n \"multipart\": + true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n + \ }\n }\n },\n \"request\": {\n \"$ref\": + \"Caption\"\n },\n \"response\": {\n \"$ref\": + \"Caption\"\n }\n },\n \"list\": {\n \"path\": + \"youtube/v3/captions\",\n \"parameterOrder\": [\n \"part\",\n + \ \"videoId\"\n ],\n \"response\": {\n \"$ref\": + \"CaptionListResponse\"\n },\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Video\"\n }\n },\n - \ \"reportAbuse\": {\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"description\": \"Report abuse for a video.\",\n \"id\": - \"youtube.videos.reportAbuse\",\n \"request\": {\n \"$ref\": - \"VideoAbuseReport\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + \ \"id\": \"youtube.captions.list\",\n \"parameters\": {\n + \ \"id\": {\n \"type\": \"string\",\n \"description\": + \"Returns the captions with the given IDs for Stubby or Apiary.\",\n \"location\": + \"query\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -1573,20 +1360,68 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": []\n - \ },\n \"getRating\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"description\": \"Retrieves the ratings that the - authorized user gave to a list of specified videos.\",\n \"path\": - \"youtube/v3/videos/getRating\",\n \"flatPath\": \"youtube/v3/videos/getRating\",\n - \ \"id\": \"youtube.videos.getRating\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*Note:* + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOf\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"ID of the Google+ Page for the channel that + the request is on behalf of.\"\n },\n \"videoId\": {\n + \ \"type\": \"string\",\n \"required\": true,\n \"location\": + \"query\",\n \"description\": \"Returns the captions for the + specified video.\"\n }\n },\n \"httpMethod\": + \"GET\",\n \"flatPath\": \"youtube/v3/captions\"\n },\n \"download\": + {\n \"useMediaDownloadService\": true,\n \"id\": \"youtube.captions.download\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"onBehalfOf\": {\n \"description\": \"ID of the + Google+ Page for the channel that the request is be on behalf of\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"required\": true,\n \"location\": \"path\",\n + \ \"type\": \"string\",\n \"description\": \"The + ID of the caption track to download, required for One Platform.\"\n },\n + \ \"tlang\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"tlang is the language code; + machine translate the captions into this language.\"\n },\n \"tfmt\": + {\n \"type\": \"string\",\n \"description\": \"Convert + the captions into this format. Supported options are sbv, srt, and vtt.\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n }\n },\n \"supportsMediaDownload\": + true,\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"path\": + \"youtube/v3/captions/{id}\",\n \"description\": \"Downloads a caption + track.\"\n },\n \"insert\": {\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n + \ \"application/octet-stream\",\n \"*/*\"\n ],\n + \ \"protocols\": {\n \"simple\": {\n \"multipart\": + true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n + \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n + \ \"multipart\": true\n }\n },\n \"maxSize\": + \"104857600\"\n },\n \"id\": \"youtube.captions.insert\",\n + \ \"parameters\": {\n \"sync\": {\n \"type\": + \"boolean\",\n \"location\": \"query\",\n \"description\": + \"Extra parameter to allow automatically syncing the uploaded caption/transcript + with the audio.\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies the caption resource parts that the API response + will include. Set the parameter value to snippet.\",\n \"required\": + true,\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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 @@ -1594,48 +1429,41 @@ interactions: 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.\"\n },\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"httpMethod\": - \"GET\"\n },\n \"rate\": {\n \"description\": \"Adds - a like or dislike rating to a video or removes a rating from a video.\",\n - \ \"flatPath\": \"youtube/v3/videos/rate\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\",\n \"location\": \"query\"\n + \ },\n \"onBehalfOf\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\"\n }\n },\n \"httpMethod\": \"POST\",\n \"path\": + \"youtube/v3/captions\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"rating\": - {\n \"location\": \"query\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"required\": true\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"response\": {\n \"$ref\": \"Caption\"\n },\n + \ \"request\": {\n \"$ref\": \"Caption\"\n },\n + \ \"supportsMediaUpload\": true\n }\n }\n },\n \"videoCategories\": + {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.videoCategories.list\",\n + \ \"parameters\": {\n \"hl\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"default\": + \"en-US\"\n },\n \"part\": {\n \"description\": + \"The *part* parameter specifies the videoCategory resource properties that + the API response will include. Set the parameter value to snippet.\",\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"regionCode\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/videos/rate\",\n - \ \"id\": \"youtube.videos.rate\"\n },\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"location\": \"query\",\n \"description\": \"Returns + the video categories with the given IDs for Stubby or Apiary.\",\n \"repeated\": + true\n }\n },\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.insert\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameters\": {\n \"autoLevels\": - {\n \"type\": \"boolean\",\n \"description\": \"Should - auto-levels be applied to the upload.\",\n \"location\": \"query\"\n - \ },\n \"notifySubscribers\": {\n \"location\": - \"query\",\n \"default\": \"true\",\n \"type\": - \"boolean\",\n \"description\": \"Notify the channel subscribers - about the new video. As default, the notification is enabled.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": + \ \"path\": \"youtube/v3/videoCategories\",\n \"response\": + {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"flatPath\": + \"youtube/v3/videoCategories\",\n \"httpMethod\": \"GET\",\n \"parameterOrder\": + [\n \"part\"\n ]\n }\n }\n },\n \"channelSections\": + {\n \"methods\": {\n \"update\": {\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -1644,226 +1472,114 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"stabilize\": {\n \"type\": \"boolean\",\n \"description\": - \"Should stabilize be applied to the upload.\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n - \ \"path\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"mediaUpload\": {\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/videos\"\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"274877906944\"\n },\n \"response\": {\n \"$ref\": - \"Video\"\n }\n }\n }\n },\n \"liveChatModerators\": - {\n \"methods\": {\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"description\": \"Inserts a - new resource into this collection.\",\n \"id\": \"youtube.liveChatModerators.insert\"\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"id\": \"youtube.liveChatModerators.delete\",\n \"description\": - \"Deletes a chat moderator.\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": + be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n + \ \"repeated\": true,\n \"location\": \"query\"\n + \ }\n },\n \"httpMethod\": \"PUT\",\n \"id\": + \"youtube.channelSections.update\",\n \"path\": \"youtube/v3/channelSections\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Updates an existing resource.\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"flatPath\": + \"youtube/v3/channelSections\",\n \"request\": {\n \"$ref\": + \"ChannelSection\"\n }\n },\n \"delete\": {\n \"httpMethod\": + \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"id\": + \"youtube.channelSections.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"parameters\": + {\n \"id\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"parameterOrder\": [\n \"id\"\n ]\n },\n + \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"parameters\": {\n \"hl\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return content in specified language\"\n },\n \"mine\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Return the ChannelSections owned by the authenticated + user.\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"description\": \"Return the ChannelSections with the + given IDs for Stubby or Apiary.\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return the ChannelSections owned by the specified + channel ID.\"\n },\n \"part\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"required\": true,\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the liveChatModerator resource parts that the API - response will include. Supported values are id and snippet.\"\n },\n - \ \"liveChatId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The id of the live chat for which moderators should be returned.\"\n },\n - \ \"maxResults\": {\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveChatModeratorListResponse\"\n },\n - \ \"id\": \"youtube.liveChatModerators.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\"\n }\n }\n - \ },\n \"search\": {\n \"methods\": {\n \"list\": {\n \"flatPath\": - \"youtube/v3/search\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + *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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.search.list\",\n \"parameters\": {\n - \ \"locationRadius\": {\n \"location\": \"query\",\n - \ \"description\": \"Filter on distance from the location (specified - above).\",\n \"type\": \"string\"\n },\n \"publishedBefore\": - {\n \"format\": \"google-datetime\",\n \"type\": + \ \"flatPath\": \"youtube/v3/channelSections\",\n \"id\": + \"youtube.channelSections.list\",\n \"path\": \"youtube/v3/channelSections\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": + \"ChannelSectionListResponse\"\n }\n },\n \"insert\": + {\n \"path\": \"youtube/v3/channelSections\",\n \"flatPath\": + \"youtube/v3/channelSections\",\n \"httpMethod\": \"POST\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n + \ \"id\": \"youtube.channelSections.insert\",\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on resources published before this date.\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on resources belonging to this channelId.\",\n \"type\": - \"string\"\n },\n \"forDeveloper\": {\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"order\": {\n \"location\": - \"query\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"description\": \"Sort order of the results.\",\n - \ \"default\": \"relevance\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Resources - are sorted in reverse chronological order based on the date they were created.\",\n - \ \"Resources are sorted from highest to lowest rating.\",\n - \ \"Resources are sorted from highest to lowest number of views.\",\n - \ \"Resources are sorted based on their relevance to the search - query. This is the default value for this parameter.\",\n \"Resources - are sorted alphabetically by title.\",\n \"Channels are sorted - in descending order of their number of uploaded videos.\"\n ]\n - \ },\n \"videoDefinition\": {\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"description\": \"Filter - on the definition of the videos.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ]\n - \ },\n \"videoEmbeddable\": {\n \"type\": - \"string\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"description\": \"Filter on embeddable videos.\",\n \"location\": - \"query\"\n },\n \"videoDimension\": {\n \"enum\": - [\n \"any\",\n \"2d\",\n \"3d\"\n - \ ],\n \"description\": \"Filter on 3d videos.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"Include both 3D and - non-3D videos in returned results. This is the default value.\",\n \"Restrict - search results to exclude 3D videos.\",\n \"Restrict search - results to only include 3D videos.\"\n ]\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"channelType\": - {\n \"location\": \"query\",\n \"description\": - \"Add a filter on the channel search.\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"type\": \"string\"\n - \ },\n \"forContentOwner\": {\n \"description\": - \"Search owned by a content owner.\",\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"type\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Restrict results to a particular set of resource - types from One Platform.\",\n \"repeated\": true\n },\n - \ \"regionCode\": {\n \"location\": \"query\",\n \"description\": - \"Display the content as seen by viewers in this country.\",\n \"type\": - \"string\"\n },\n \"relevanceLanguage\": {\n \"description\": - \"Return results relevant to this language.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"publishedAfter\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on resources published after this date.\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\"\n },\n \"eventType\": - {\n \"location\": \"query\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been - completed.\"\n ],\n \"description\": \"Filter on - the livestream status of the videos.\",\n \"type\": \"string\"\n - \ },\n \"videoCategoryId\": {\n \"description\": - \"Filter on videos in a specific category.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"forMine\": - {\n \"type\": \"boolean\",\n \"description\": \"Search - for the private videos of the authenticated user.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"location\": \"query\"\n - \ },\n \"videoType\": {\n \"enum\": [\n - \ \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos.\",\n \"Only retrieve movies.\",\n \"Only - retrieve episodes of shows.\"\n ],\n \"location\": - \"query\",\n \"description\": \"Filter on videos of a specific - type.\"\n },\n \"videoLicense\": {\n \"enum\": - [\n \"any\",\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"enumDescriptions\": [\n \"Return - all videos, regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"description\": \"Filter on - the license of the videos.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"topicId\": {\n \"location\": - \"query\",\n \"description\": \"Restrict results to a particular - topic.\",\n \"type\": \"string\"\n },\n \"videoSyndicated\": - {\n \"description\": \"Filter on syndicated videos.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"videoSyndicatedUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ]\n - \ },\n \"q\": {\n \"description\": \"Textual - search terms to match.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"videoCaption\": {\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Filter - on the presence of captions on the videos.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ]\n },\n \"relatedToVideoId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Search related to a resource.\"\n },\n - \ \"videoDuration\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"description\": \"Filter on the duration of the videos.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"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.\",\n \"required\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"*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 @@ -1872,103 +1588,130 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"location\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on location of the video\"\n },\n - \ \"safeSearch\": {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"type\": - \"string\",\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"default\": \"moderate\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/search\",\n \"description\": \"Retrieves a list of search - resources\",\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"membershipsLevels\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"repeated\": + be linked to the specified YouTube content owner.\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ]\n }\n + \ }\n },\n \"liveChatMessages\": {\n \"methods\": {\n \"delete\": + {\n \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true\n }\n },\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"id\": \"youtube.liveChatMessages.delete\",\n \"path\": + \"youtube/v3/liveChat/messages\",\n \"description\": \"Deletes a + chat message.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"httpMethod\": \"DELETE\"\n },\n \"insert\": {\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": + {\n \"$ref\": \"LiveChatMessage\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"path\": \"youtube/v3/liveChat/messages\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"response\": + {\n \"$ref\": \"LiveChatMessage\"\n },\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"description\": \"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.\"\n }\n },\n \"id\": \"youtube.liveChatMessages.insert\",\n + \ \"httpMethod\": \"POST\"\n },\n \"list\": {\n \"response\": + {\n \"$ref\": \"LiveChatMessageListResponse\"\n },\n \"path\": + \"youtube/v3/liveChat/messages\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"id\": \"youtube.liveChatMessages.list\",\n \"flatPath\": + \"youtube/v3/liveChat/messages\",\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n + \ \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"description\": + \"The *part* parameter specifies the liveChatComment resource parts that the + API response will include. Supported values are id and snippet.\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"hl\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Specifies the localization language in which + the system messages should be returned.\"\n },\n \"maxResults\": + {\n \"default\": \"500\",\n \"location\": \"query\",\n + \ \"type\": \"integer\",\n \"minimum\": \"200\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"maximum\": + \"2000\",\n \"format\": \"uint32\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n + \ \"profileImageSize\": {\n \"minimum\": \"16\",\n + \ \"description\": \"Specifies the size of the profile image that + should be returned for each user.\",\n \"location\": \"query\",\n + \ \"format\": \"uint32\",\n \"type\": \"integer\",\n + \ \"maximum\": \"720\"\n },\n \"liveChatId\": + {\n \"location\": \"query\",\n \"description\": + \"The id of the live chat for which comments should be returned.\",\n \"type\": + \"string\",\n \"required\": true\n }\n },\n + \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n + \ ]\n }\n }\n },\n \"i18nRegions\": {\n \"methods\": + {\n \"list\": {\n \"path\": \"youtube/v3/i18nRegions\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"id\": \"youtube.i18nRegions.list\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"description\": + \"The *part* parameter specifies the i18nRegion resource properties that the + API response will include. Set the parameter value to snippet.\",\n \"repeated\": true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"MembershipsLevelListResponse\"\n },\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"description\": \"Retrieves a list of all pricing levels offered - by a creator to the fans.\",\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.membershipsLevels.list\"\n }\n }\n },\n \"thumbnails\": - {\n \"methods\": {\n \"set\": {\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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. + \ \"location\": \"query\"\n },\n \"hl\": + {\n \"location\": \"query\",\n \"default\": \"en_US\",\n + \ \"type\": \"string\"\n }\n },\n \"flatPath\": + \"youtube/v3/i18nRegions\",\n \"httpMethod\": \"GET\"\n }\n + \ }\n },\n \"channels\": {\n \"methods\": {\n \"update\": + {\n \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": + \"Channel\"\n },\n \"flatPath\": \"youtube/v3/channels\",\n + \ \"path\": \"youtube/v3/channels\",\n \"parameters\": {\n + \ \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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 must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"videoId\": {\n \"description\": \"Returns the Thumbnail - with the given video IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"supportsMediaUpload\": true,\n - \ \"id\": \"youtube.thumbnails.set\",\n \"response\": {\n - \ \"$ref\": \"ThumbnailSetResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"parameterOrder\": - [\n \"videoId\"\n ],\n \"mediaUpload\": {\n \"maxSize\": - \"2097152\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n }\n }\n },\n \"flatPath\": - \"youtube/v3/thumbnails/set\"\n }\n }\n },\n \"channels\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/channels\",\n + CMS account that the user authenticates with needs to be linked to the specified + YouTube content owner.\"\n }\n },\n \"description\": + \"Updates an existing resource.\",\n \"id\": \"youtube.channels.update\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"Channel\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ]\n + \ },\n \"list\": {\n \"path\": \"youtube/v3/channels\",\n + \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"parameters\": {\n \"hl\": {\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Return - the channels with the specified IDs.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively + \ ],\n \"parameters\": {\n \"pageToken\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n + \ },\n \"maxResults\": {\n \"type\": \"integer\",\n + \ \"minimum\": \"0\",\n \"maximum\": \"50\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"format\": \"uint32\",\n + \ \"default\": \"5\",\n \"location\": \"query\"\n + \ },\n \"hl\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Stands + for \\\"host language\\\". Specifies the localization language of the metadata + to be filled into snippet.localized. The field is filled with the default + metadata if there is no localization in the specified language. The parameter + value must be a language code included in the list returned by the i18nLanguages.list + method (e.g. en_US, es_MX).\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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. @@ -1977,132 +1720,122 @@ interactions: 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.\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": + owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"mine\": {\n \"description\": + \"Return the ids of channels owned by the authenticated user.\",\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"managedByMe\": + {\n \"description\": \"Return the channels managed by the authenticated + user.\",\n \"type\": \"boolean\",\n \"location\": + \"query\"\n },\n \"forUsername\": {\n \"description\": + \"Return the channel associated with a YouTube username.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"mySubscribers\": + {\n \"description\": \"Return the channels subscribed to the + authenticated user\",\n \"type\": \"boolean\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"description\": + \"Return the channels with the specified IDs.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true\n },\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"categoryId\": {\n \"location\": + \"query\",\n \"description\": \"Return the channels within the + specified guide category ID.\",\n \"type\": \"string\"\n }\n + \ },\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"flatPath\": \"youtube/v3/channels\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"id\": + \"youtube.channels.list\"\n }\n }\n },\n \"youtube\": {\n + \ \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": + {\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"parameterOrder\": + [],\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n + \ \"path\": \"youtube/v3/commentThreads\",\n \"httpMethod\": + \"PUT\",\n \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"repeated\": + true\n }\n },\n \"description\": + \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": + \"CommentThread\"\n },\n \"response\": {\n \"$ref\": + \"CommentThread\"\n }\n }\n }\n }\n + \ }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": + {\n \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": + \"TestItem\"\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"id\": \"youtube.tests.insert\",\n \"response\": + {\n \"$ref\": \"TestItem\"\n },\n \"flatPath\": + \"youtube/v3/tests\",\n \"description\": \"POST method.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true,\n \"repeated\": true\n },\n \"externalChannelId\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"path\": \"youtube/v3/tests\"\n }\n + \ }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": {\n + \ \"list\": {\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n + \ \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"flatPath\": + \"youtube/v3/videoAbuseReportReasons\",\n \"httpMethod\": \"GET\",\n + \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"description\": \"The *part* parameter specifies the videoCategory + resource parts that the API response will include. Supported values are id + and snippet.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"hl\": {\n \"type\": + \"string\",\n \"default\": \"en-US\",\n \"location\": + \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n + \ }\n }\n },\n \"activities\": {\n \"methods\": {\n + \ \"list\": {\n \"parameters\": {\n \"regionCode\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"pageToken\": {\n \"description\": \"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.\"\n },\n - \ \"managedByMe\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Return the channels managed - by the authenticated user.\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"minimum\": \"0\",\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"format\": \"uint32\",\n + properties identify other pages that could be retrieved.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"publishedAfter\": + {\n \"format\": \"google-datetime\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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.\",\n \"repeated\": + true\n },\n \"maxResults\": {\n \"format\": + \"uint32\",\n \"maximum\": \"50\",\n \"minimum\": + \"0\",\n \"default\": \"5\",\n \"type\": \"integer\",\n \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"mine\": {\n \"description\": \"Return the ids of - channels owned by the authenticated user.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channels within the specified - guide category ID.\"\n },\n \"forUsername\": {\n \"type\": - \"string\",\n \"description\": \"Return the channel associated - with a YouTube username.\",\n \"location\": \"query\"\n },\n - \ \"mySubscribers\": {\n \"type\": \"boolean\",\n \"description\": - \"Return the channels subscribed to the authenticated user\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/channels\",\n - \ \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.channels.list\"\n - \ },\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"Channel\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"id\": \"youtube.channels.update\",\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"Channel\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channels\",\n \"path\": - \"youtube/v3/channels\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ }\n }\n },\n \"liveChatBans\": {\n \"methods\": {\n - \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.liveChatBans.insert\",\n \"flatPath\": \"youtube/v3/liveChat/bans\"\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.liveChatBans.delete\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"description\": - \"Deletes a chat ban.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"insert\": - {\n \"path\": \"youtube/v3/captions\",\n \"request\": {\n - \ \"$ref\": \"Caption\"\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"id\": \"youtube.captions.insert\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"maxSize\": \"104857600\",\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"supportsMediaUpload\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"sync\": {\n - \ \"location\": \"query\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n }\n },\n \"update\": - {\n \"supportsMediaUpload\": true,\n \"path\": \"youtube/v3/captions\",\n - \ \"id\": \"youtube.captions.update\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + maximum number of items that should be returned in the result set.\",\n \"location\": + \"query\"\n },\n \"home\": {\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"mine\": + {\n \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"channelId\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"publishedBefore\": + {\n \"type\": \"string\",\n \"format\": \"google-datetime\",\n + \ \"location\": \"query\"\n }\n },\n \"flatPath\": + \"youtube/v3/activities\",\n \"path\": \"youtube/v3/activities\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"response\": {\n \"$ref\": \"ActivityListResponse\"\n + \ },\n \"id\": \"youtube.activities.list\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n + \ ]\n }\n }\n },\n \"playlistItems\": {\n \"methods\": + {\n \"update\": {\n \"request\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"response\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"id\": \"youtube.playlistItems.update\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube @@ -2110,39 +1843,35 @@ interactions: value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"sync\": {\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"mediaUpload\": - {\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\",\n - \ \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n },\n - \ \"resumable\": {\n \"multipart\": true,\n \"path\": - \"/resumable/upload/youtube/v3/captions\"\n }\n }\n - \ },\n \"request\": {\n \"$ref\": \"Caption\"\n - \ },\n \"flatPath\": \"youtube/v3/captions\",\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/captions\",\n \"response\": - {\n \"$ref\": \"CaptionListResponse\"\n },\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"Returns the captions with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is on behalf of.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": + provide authentication credentials for each individual channel. The CMS account + that the user authenticates with must be linked to the specified YouTube content + owner.\",\n \"type\": \"string\"\n },\n \"part\": {\n \"required\": true,\n \"description\": \"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.\",\n \"repeated\": + *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.\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n + \ }\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"httpMethod\": \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"description\": \"Updates an existing resource.\",\n \"path\": + \"youtube/v3/playlistItems\"\n },\n \"delete\": {\n \"flatPath\": + \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.delete\",\n + \ \"description\": \"Deletes a resource.\",\n \"httpMethod\": + \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"required\": true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"*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 @@ -2150,126 +1879,49 @@ interactions: content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"Returns the captions for the specified - video.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.captions.list\",\n - \ \"path\": \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"onBehalfOf\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n }\n },\n \"path\": - \"youtube/v3/captions\",\n \"httpMethod\": \"DELETE\",\n \"id\": - \"youtube.captions.delete\",\n \"description\": \"Deletes a resource.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\"\n },\n \"download\": - {\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.captions.download\",\n - \ \"description\": \"Downloads a caption track.\",\n \"flatPath\": - \"youtube/v3/captions/{id}\",\n \"supportsMediaDownload\": true,\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended + individual channel. The CMS account that the user authenticates with must + be linked to the specified YouTube content owner.\"\n }\n },\n + \ \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n },\n \"insert\": {\n \"response\": {\n + \ \"$ref\": \"PlaylistItem\"\n },\n \"httpMethod\": + \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"id\": \"youtube.playlistItems.insert\",\n \"request\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true,\n \"description\": + \"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.\",\n \"repeated\": true\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"required\": true,\n \"description\": - \"The ID of the caption track to download, required for One Platform.\",\n - \ \"location\": \"path\",\n \"type\": \"string\"\n - \ },\n \"tfmt\": {\n \"description\": \"Convert - the captions into this format. Supported options are sbv, srt, and vtt.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"tlang\": {\n \"location\": \"query\",\n - \ \"description\": \"tlang is the language code; machine translate - the captions into this language.\",\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/captions/{id}\",\n \"useMediaDownloadService\": true\n - \ }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"supportsMediaUpload\": true,\n \"response\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"parameterOrder\": [],\n - \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameters\": {\n \"channelId\": {\n - \ \"type\": \"string\",\n \"description\": \"Unused, - channel_id is currently derived from the security context of the requestor.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\"\n },\n \"id\": - \"youtube.channelBanners.insert\"\n }\n }\n },\n \"channelSections\": - {\n \"methods\": {\n \"insert\": {\n \"flatPath\": \"youtube/v3/channelSections\",\n + provide authentication credentials for each individual channel. The CMS account + that the user authenticates with must be linked to the specified YouTube content + owner.\",\n \"type\": \"string\"\n }\n },\n \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n + \ \"path\": \"youtube/v3/playlistItems\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/playlistItems\"\n },\n \"list\": + {\n \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.channelSections.insert\",\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"response\": + {\n \"$ref\": \"PlaylistItemListResponse\"\n },\n \"id\": + \"youtube.playlistItems.list\",\n \"parameters\": {\n \"pageToken\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -2279,7 +1931,206 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true,\n \"repeated\": true,\n \"description\": + \"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.\"\n },\n \"playlistId\": + {\n \"type\": \"string\",\n \"description\": \"Return + the playlist items within the given playlist.\",\n \"location\": + \"query\"\n },\n \"videoId\": {\n \"description\": + \"Return the playlist items associated with the given video ID.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"maxResults\": + {\n \"default\": \"5\",\n \"location\": \"query\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"format\": + \"uint32\",\n \"minimum\": \"0\",\n \"maximum\": + \"50\",\n \"type\": \"integer\"\n }\n },\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n + \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n + \ \"list\": {\n \"path\": \"youtube/v3/i18nLanguages\",\n \"httpMethod\": + \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"I18nLanguageListResponse\"\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"id\": + \"youtube.i18nLanguages.list\",\n \"parameters\": {\n \"part\": + {\n \"description\": \"The *part* parameter specifies the i18nLanguage + resource properties that the API response will include. Set the parameter + value to snippet.\",\n \"repeated\": true,\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\"\n },\n \"hl\": {\n \"location\": + \"query\",\n \"default\": \"en_US\",\n \"type\": + \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/i18nLanguages\"\n + \ }\n }\n },\n \"commentThreads\": {\n \"methods\": + {\n \"list\": {\n \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n + \ },\n \"parameters\": {\n \"textFormat\": {\n + \ \"default\": \"html\",\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ],\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"The requested text format for the returned + comments.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Returns the comments in HTML format. This is the default + value.\",\n \"Returns the comments in plain text format.\"\n + \ ]\n },\n \"allThreadsRelatedToChannelId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Returns the comment threads of all videos + of the channel and the channel comments as well.\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"description\": + \"Returns the comment threads with the given IDs for Stubby or Apiary.\",\n + \ \"type\": \"string\",\n \"repeated\": true\n },\n + \ \"videoId\": {\n \"description\": \"Returns the comment + threads of the specified video.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n + \ },\n \"maxResults\": {\n \"location\": + \"query\",\n \"minimum\": \"1\",\n \"format\": \"uint32\",\n + \ \"default\": \"20\",\n \"type\": \"integer\",\n + \ \"maximum\": \"100\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\"\n },\n \"moderationStatus\": + {\n \"enumDescriptions\": [\n \"The comment is + available for public display.\",\n \"The comment is awaiting + review by a moderator.\",\n \"\",\n \"The comment + is unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ],\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Limits the returned comment threads + to those with the specified moderation status. Not compatible with the 'id' + filter. Valid values: published, heldForReview, likelySpam.\",\n \"default\": + \"published\"\n },\n \"channelId\": {\n \"description\": + \"Returns the comment threads for all the channel comments (ie does not include + comments left on videos).\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"searchTerms\": {\n \"type\": + \"string\",\n \"description\": \"Limits the returned comment + threads to those matching the specified key words. Not compatible with the + 'id' filter.\",\n \"location\": \"query\"\n },\n \"order\": + {\n \"type\": \"string\",\n \"enum\": [\n \"orderUnspecified\",\n + \ \"time\",\n \"relevance\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Order + by time.\",\n \"Order by relevance.\"\n ],\n \"location\": + \"query\",\n \"default\": \"time\"\n },\n \"part\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"The *part* parameter specifies a comma-separated + list of one or more commentThread resource properties that the API response + will include.\",\n \"required\": true,\n \"type\": + \"string\"\n }\n },\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"path\": \"youtube/v3/commentThreads\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"id\": + \"youtube.commentThreads.list\",\n \"description\": \"Retrieves a + list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\"\n + \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"httpMethod\": \"POST\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n },\n \"description\": + \"Inserts a new resource into this collection.\",\n \"request\": + {\n \"$ref\": \"CommentThread\"\n },\n \"id\": + \"youtube.commentThreads.insert\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"path\": \"youtube/v3/commentThreads\"\n }\n }\n },\n + \ \"liveChatBans\": {\n \"methods\": {\n \"delete\": {\n \"description\": + \"Deletes a chat ban.\",\n \"path\": \"youtube/v3/liveChat/bans\",\n + \ \"id\": \"youtube.liveChatBans.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ }\n },\n \"flatPath\": \"youtube/v3/liveChat/bans\"\n + \ },\n \"insert\": {\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n },\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"description\": \"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.\",\n \"location\": \"query\"\n }\n + \ },\n \"id\": \"youtube.liveChatBans.insert\",\n \"path\": + \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"request\": + {\n \"$ref\": \"LiveChatBan\"\n }\n }\n }\n + \ },\n \"membershipsLevels\": {\n \"methods\": {\n \"list\": + {\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"id\": \"youtube.membershipsLevels.list\",\n \"path\": + \"youtube/v3/membershipsLevels\",\n \"parameters\": {\n \"part\": + {\n \"description\": \"The *part* parameter specifies the membershipsLevel + resource parts that the API response will include. Supported values are id + and snippet.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true\n }\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"description\": + \"Retrieves a list of all pricing levels offered by a creator to the fans.\"\n + \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": + {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"path\": \"youtube/v3/superChatEvents\",\n \"response\": + {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"location\": + \"query\",\n \"repeated\": true,\n \"description\": + \"The *part* parameter specifies the superChatEvent resource parts that the + API response will include. This parameter is currently not supported.\",\n + \ \"type\": \"string\"\n },\n \"maxResults\": + {\n \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"location\": + \"query\",\n \"format\": \"uint32\",\n \"minimum\": + \"1\",\n \"type\": \"integer\",\n \"default\": \"5\",\n + \ \"maximum\": \"50\"\n },\n \"hl\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return rendered funding amounts in specified + language.\"\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"httpMethod\": + \"GET\",\n \"description\": \"Retrieves a list of resources, possibly + filtered.\",\n \"id\": \"youtube.superChatEvents.list\",\n \"parameterOrder\": + [\n \"part\"\n ]\n }\n }\n },\n \"playlists\": + {\n \"methods\": {\n \"list\": {\n \"response\": {\n + \ \"$ref\": \"PlaylistListResponse\"\n },\n \"flatPath\": + \"youtube/v3/playlists\",\n \"parameters\": {\n \"mine\": + {\n \"location\": \"query\",\n \"description\": + \"Return the playlists owned by the authenticated user.\",\n \"type\": + \"boolean\"\n },\n \"maxResults\": {\n \"minimum\": + \"0\",\n \"format\": \"uint32\",\n \"maximum\": + \"50\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"default\": \"5\",\n \"location\": \"query\",\n + \ \"type\": \"integer\"\n },\n \"id\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"description\": \"Return + the playlists with the given IDs for Stubby or Apiary.\"\n },\n + \ \"part\": {\n \"location\": \"query\",\n \"required\": + true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": \"string\",\n \"description\": \"This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* @@ -2295,55 +2146,8 @@ interactions: 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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ }\n }\n },\n \"update\": {\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"id\": \"youtube.channelSections.update\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Updates - an existing resource.\"\n },\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"parameters\": - {\n \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return content in specified language\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Return - the ChannelSections owned by the authenticated user.\"\n },\n \"channelId\": - {\n \"description\": \"Return the ChannelSections owned by the - specified channel ID.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*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 @@ -2352,1219 +2156,1372 @@ interactions: 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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.channelSections.list\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + YouTube content owner.\"\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n + \ \"hl\": {\n \"description\": \"Return content in + specified language\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"location\": + \"query\",\n \"description\": \"Return the playlists owned by + the specified channel ID.\",\n \"type\": \"string\"\n }\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"id\": \"youtube.playlists.list\",\n \"httpMethod\": + \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/channelSections\",\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.channelSections.delete\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ },\n \"insert\": {\n \"request\": {\n \"$ref\": + \"Playlist\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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 + \ ],\n \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"repeated\": + true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/playlists\",\n \"path\": \"youtube/v3/playlists\",\n + \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts + a new resource into this collection.\",\n \"response\": {\n \"$ref\": + \"Playlist\"\n },\n \"id\": \"youtube.playlists.insert\"\n + \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/playlists\",\n + \ \"path\": \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.playlists.delete\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true\n }\n },\n \"description\": + \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": + [\n \"id\"\n ]\n },\n \"update\": {\n \"path\": + \"youtube/v3/playlists\",\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"Playlist\"\n },\n \"id\": \"youtube.playlists.update\",\n + \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/playlists\",\n \"description\": + \"Updates an existing resource.\",\n \"parameters\": {\n \"part\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": true\n },\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n }\n }\n }\n + \ },\n \"liveStreams\": {\n \"methods\": {\n \"insert\": + {\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"httpMethod\": + \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/liveStreams\",\n \"response\": {\n + \ \"$ref\": \"LiveStream\"\n },\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"repeated\": true,\n \"description\": \"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, content_details, and status.\",\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n + \ },\n \"description\": \"Inserts a new stream for the authenticated + user.\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"id\": \"youtube.liveStreams.insert\",\n \"request\": + {\n \"$ref\": \"LiveStream\"\n }\n },\n \"list\": + {\n \"httpMethod\": \"GET\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"description\": \"Deletes a - resource.\"\n }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveChatMessages.delete\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Deletes a chat message.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\"\n },\n \"insert\": - {\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/messages\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"id\": \"youtube.liveChatMessages.insert\"\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameters\": {\n \"liveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the live chat for - which comments should be returned.\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"500\",\n \"minimum\": \"200\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"2000\",\n \"location\": \"query\",\n - \ \"type\": \"integer\"\n },\n \"pageToken\": + owner.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - liveChatComment resource parts that the API response will include. Supported - values are id and snippet.\",\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"description\": \"Specifies the localization language - in which the system messages should be returned.\",\n \"type\": - \"string\"\n },\n \"profileImageSize\": {\n \"maximum\": - \"720\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"description\": - \"Specifies the size of the profile image that should be returned for each - user.\",\n \"minimum\": \"16\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/superChatEvents\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"description\": \"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.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"repeated\": + true\n },\n \"part\": {\n \"description\": + \"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.\",\n + \ \"required\": true,\n \"type\": \"string\",\n \"location\": + \"query\",\n \"repeated\": true\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"default\": + \"5\",\n \"location\": \"query\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"maximum\": \"50\",\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"minimum\": + \"0\"\n },\n \"mine\": {\n \"type\": \"boolean\",\n + \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the superChatEvent resource parts that the - API response will include. This parameter is currently not supported.\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"maxResults\": {\n \"type\": \"integer\",\n - \ \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"minimum\": \"1\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return rendered funding amounts in specified language.\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.superChatEvents.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ }\n }\n }\n }\n },\n \"auth\": {\n \"oauth2\": - {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.readonly\": + \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"path\": + \"youtube/v3/liveStreams\",\n \"response\": {\n \"$ref\": + \"LiveStreamListResponse\"\n },\n \"description\": \"Retrieve + the list of streams associated with the given channel. --\",\n \"id\": + \"youtube.liveStreams.list\"\n },\n \"delete\": {\n \"parameterOrder\": + [\n \"id\"\n ],\n \"id\": \"youtube.liveStreams.delete\",\n + \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes + an existing stream for the authenticated user.\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n + \ \"id\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"path\": \"youtube/v3/liveStreams\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n + \ },\n \"update\": {\n \"description\": \"Updates an + existing stream for the authenticated user.\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n + \ \"httpMethod\": \"PUT\",\n \"id\": \"youtube.liveStreams.update\",\n + \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"path\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"part\": {\n \"required\": + true,\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n }\n + \ }\n }\n }\n },\n \"title\": \"YouTube Data API v3\",\n \"name\": + \"youtube\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"discoveryVersion\": + \"v1\",\n \"canonicalName\": \"YouTube\",\n \"version\": \"v3\",\n \"id\": + \"youtube:v3\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"ownerName\": + \"Google\",\n \"batchPath\": \"batch\",\n \"auth\": {\n \"oauth2\": {\n + \ \"scopes\": {\n \"https://www.googleapis.com/auth/youtubepartner\": + {\n \"description\": \"View and manage your assets and associated + content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": + \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": {\n \"description\": \"See a list of your current active channel members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": + \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": + \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n }\n - \ }\n }\n },\n \"description\": \"The YouTube Data API v3 is an API - that provides access to YouTube data, such as videos, playlists, and channels.\",\n - \ \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"version\": \"v3\",\n - \ \"ownerName\": \"Google\",\n \"ownerDomain\": \"google.com\",\n \"revision\": - \"20230131\",\n \"basePath\": \"\",\n \"title\": \"YouTube Data API v3\",\n - \ \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"name\": \"youtube\",\n \"fullyEncodeReservedExpansion\": true,\n - \ \"discoveryVersion\": \"v1\",\n \"batchPath\": \"batch\",\n \"schemas\": - {\n \"PlaylistPlayer\": {\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"PlaylistPlayer\"\n },\n \"LiveChatMessageListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\"\n },\n \"pollingIntervalMillis\": - {\n \"format\": \"uint32\",\n \"description\": \"The amount - of time the client should wait before polling again.\",\n \"type\": - \"integer\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"type\": \"array\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatMessageListResponse\",\n \"type\": - \"string\"\n },\n \"offlineAt\": {\n \"description\": - \"The date and time when the underlying stream went offline.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ },\n \"id\": \"LiveChatMessageListResponse\"\n },\n \"MonitorStreamInfo\": - {\n \"type\": \"object\",\n \"id\": \"MonitorStreamInfo\",\n \"properties\": - {\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\"\n },\n - \ \"broadcastStreamDelayMs\": {\n \"description\": \"If you - have set the enableMonitorStream property to true, then this property determines - the length of the live broadcast delay.\",\n \"format\": \"uint32\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"integer\"\n },\n - \ \"enableMonitorStream\": {\n \"type\": \"boolean\",\n \"description\": - \"This value determines whether the monitor stream is enabled for the broadcast. - If the monitor stream is enabled, then YouTube will broadcast the event content - on a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n }\n },\n \"description\": \"Settings - and Info of the monitor stream\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\",\n \"properties\": {\n \"label\": {\n \"type\": - \"string\",\n \"description\": \"The localized label belonging to - this abuse report reason.\"\n },\n \"secondaryReasons\": {\n - \ \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"type\": \"array\",\n \"description\": \"The - secondary reasons associated with this reason, if any are available. (There - might be 0 or more.)\"\n }\n }\n },\n \"CdnSettings\": {\n - \ \"description\": \"Brief description of the live stream cdn settings.\",\n - \ \"id\": \"CdnSettings\",\n \"type\": \"object\",\n \"properties\": - {\n \"resolution\": {\n \"type\": \"string\",\n \"enum\": - [\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"format\": - {\n \"type\": \"string\",\n \"description\": \"The format - of the video stream that you are sending to Youtube. \",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n - \ \"description\": \"The ingestionInfo object contains information - that YouTube provides that you need to transmit your RTMP or HTTP stream to - YouTube.\"\n },\n \"ingestionType\": {\n \"description\": - \" The method or protocol used to transmit the video stream.\",\n \"type\": - \"string\",\n \"enum\": [\n \"rtmp\",\n \"dash\",\n - \ \"webrtc\",\n \"hls\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"frameRate\": {\n \"description\": - \"The frame rate of the inbound video data.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ]\n }\n - \ }\n },\n \"LiveStreamHealthStatus\": {\n \"id\": \"LiveStreamHealthStatus\",\n - \ \"properties\": {\n \"lastUpdateTimeSeconds\": {\n \"type\": - \"string\",\n \"description\": \"The last time this status was updated - (in seconds)\",\n \"format\": \"uint64\"\n },\n \"configurationIssues\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n },\n \"description\": - \"The configurations issues on this stream\"\n },\n \"status\": - {\n \"enum\": [\n \"good\",\n \"ok\",\n \"bad\",\n - \ \"noData\",\n \"revoked\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The status code of this stream\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"CommentSnippetAuthorChannelId\": {\n \"properties\": {\n - \ \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"type\": \"object\",\n \"id\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"LanguageTag\": {\n \"id\": \"LanguageTag\",\n \"type\": - \"object\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n }\n }\n },\n \"Comment\": {\n \"id\": - \"Comment\",\n \"properties\": {\n \"etag\": {\n \"description\": + relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": + {\n \"description\": \"See, edit, and permanently delete your YouTube + videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": + {\n \"description\": \"Manage your YouTube videos\"\n }\n + \ }\n }\n },\n \"schemas\": {\n \"PlaylistItemSnippet\": {\n \"type\": + \"object\",\n \"description\": \"Basic details about a playlist, including + title, description and thumbnails. Basic details of a YouTube Playlist item + provided by the author. Next ID: 15\",\n \"id\": \"PlaylistItemSnippet\",\n + \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The item's title.\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A + map of thumbnail images associated with the playlist item. 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.\"\n },\n + \ \"channelId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the user that added the item to the playlist.\",\n + \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"type\": + \"string\",\n \"description\": \"The date and time that the item + was added to the playlist.\",\n \"format\": \"date-time\"\n },\n + \ \"resourceId\": {\n \"description\": \"The id object contains + information that can be used to uniquely identify the resource that is included + in the playlist as the playlist item.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n + \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n + \ \"position\": {\n \"type\": \"integer\",\n \"description\": + \"The order in which the item appears in the playlist. The value uses a zero-based + index, so the first item has a position of 0, the second item has a position + of 1, and so forth.\",\n \"format\": \"uint32\"\n },\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel that the playlist item belongs to.\"\n },\n \"playlistId\": + {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": + [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + uses to uniquely identify thGe playlist that the playlist item is in.\"\n + \ },\n \"description\": {\n \"description\": \"The item's + description.\",\n \"type\": \"string\"\n },\n \"videoOwnerChannelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel this video belongs to.\"\n },\n \"videoOwnerChannelId\": + {\n \"description\": \"Channel id for the channel this video belongs + to.\",\n \"type\": \"string\"\n }\n }\n },\n \"SubscriptionContentDetails\": + {\n \"id\": \"SubscriptionContentDetails\",\n \"description\": \"Details + about the content to witch a subscription refers.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"newItemCount\": {\n \"description\": + \"The number of new items in the subscription since its content was last read.\",\n + \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n + \ \"activityType\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"description\": \"The type of activity this subscription is for + (only uploads, everything).\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n + \ \"all\",\n \"uploads\"\n ]\n },\n \"totalItemCount\": + {\n \"description\": \"The approximate number of items that the subscription + points to.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n + \ }\n }\n },\n \"CaptionSnippet\": {\n \"description\": + \"Basic details about a caption track, such as its language and name.\",\n + \ \"type\": \"object\",\n \"id\": \"CaptionSnippet\",\n \"properties\": + {\n \"audioTrackType\": {\n \"description\": \"The type of + audio track associated with the caption track.\",\n \"enum\": [\n + \ \"unknown\",\n \"primary\",\n \"commentary\",\n + \ \"descriptive\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"isCC\": + {\n \"type\": \"boolean\",\n \"description\": \"Indicates + whether the track contains closed captions for the deaf and hard of hearing. + The default value is false.\"\n },\n \"language\": {\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"description\": \"The language of + the caption track. The property value is a BCP-47 language tag.\"\n },\n + \ \"isEasyReader\": {\n \"description\": \"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.\",\n \"type\": + \"boolean\"\n },\n \"isLarge\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Indicates whether the caption track uses large + text for the vision-impaired. The default value is false.\"\n },\n + \ \"lastUpdated\": {\n \"description\": \"The date and time + when the caption track was last updated.\",\n \"type\": \"string\",\n + \ \"format\": \"date-time\"\n },\n \"status\": {\n \"enum\": + [\n \"serving\",\n \"syncing\",\n \"failed\"\n + \ ],\n \"description\": \"The caption track's status.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"isDraft\": + {\n \"type\": \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert + youtube.captions.update\"\n },\n \"failureReason\": {\n \"type\": + \"string\",\n \"description\": \"The reason that YouTube failed to + process the caption track. This property is only present if the state property's + value is failed.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n + \ ]\n },\n \"name\": {\n \"annotations\": {\n + \ \"required\": [\n \"youtube.captions.insert\"\n ]\n + \ },\n \"description\": \"The name of the caption track. + The name is intended to be visible to the user as an option during playback.\",\n + \ \"type\": \"string\"\n },\n \"videoId\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the video associated with + the caption track. @mutable youtube.captions.insert\"\n },\n \"isAutoSynced\": + {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n + \ },\n \"trackKind\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"standard\",\n \"ASR\",\n + \ \"forced\"\n ],\n \"description\": \"The caption + track's type.\"\n }\n }\n },\n \"ChannelBrandingSettings\": + {\n \"properties\": {\n \"image\": {\n \"$ref\": \"ImageSettings\",\n + \ \"description\": \"Branding properties for branding images.\"\n + \ },\n \"watch\": {\n \"description\": \"Branding properties + for the watch page.\",\n \"$ref\": \"WatchSettings\"\n },\n + \ \"channel\": {\n \"$ref\": \"ChannelSettings\",\n \"description\": + \"Branding properties for the channel view.\"\n },\n \"hints\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"PropertyValue\"\n },\n \"description\": \"Additional experimental + branding properties.\"\n }\n },\n \"id\": \"ChannelBrandingSettings\",\n + \ \"description\": \"Branding properties of a YouTube channel.\",\n \"type\": + \"object\"\n },\n \"LiveChatUserBannedMessageDetails\": {\n \"properties\": + {\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n + \ \"description\": \"The details of the user that was banned.\"\n + \ },\n \"banType\": {\n \"enum\": [\n \"permanent\",\n + \ \"temporary\"\n ],\n \"description\": \"The + type of ban.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"banDurationSeconds\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The duration of the ban. This property is only present if the banType is + temporary.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveChatUserBannedMessageDetails\"\n },\n \"Thumbnail\": {\n \"id\": + \"Thumbnail\",\n \"description\": \"A thumbnail is an image representing + a YouTube resource.\",\n \"type\": \"object\",\n \"properties\": + {\n \"width\": {\n \"description\": \"(Optional) Width of + the thumbnail image.\",\n \"format\": \"uint32\",\n \"type\": + \"integer\"\n },\n \"height\": {\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"description\": \"(Optional) + Height of the thumbnail image.\"\n },\n \"url\": {\n \"type\": + \"string\",\n \"description\": \"The thumbnail image's URL.\"\n }\n + \ }\n },\n \"SearchListResponse\": {\n \"properties\": {\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"regionCode\": {\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the comment.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#comment\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#comment\\\".\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"A *comment* represents - a single YouTube comment.\"\n },\n \"InvideoTiming\": {\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\",\n \"properties\": - {\n \"type\": {\n \"enum\": [\n \"offsetFromStart\",\n - \ \"offsetFromEnd\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"description\": \"Describes a timing type. If the value is offsetFromStart, - then the offsetMs field represents an offset from the start of the video. - If the value is offsetFromEnd, then the offsetMs field represents an offset - from the end of the video.\"\n },\n \"offsetMs\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\"\n },\n - \ \"durationMs\": {\n \"type\": \"string\",\n \"description\": + \ \"items\": {\n \"type\": \"array\",\n \"description\": + \"Pagination information for token pagination.\",\n \"items\": {\n + \ \"$ref\": \"SearchResult\"\n }\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n + \ \"default\": \"youtube#searchListResponse\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n + \ \"description\": \"General pagination information.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"SearchListResponse\"\n + \ },\n \"PageInfo\": {\n \"properties\": {\n \"totalResults\": + {\n \"description\": \"The total number of results in the result + set.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n + \ },\n \"resultsPerPage\": {\n \"description\": \"The + number of results included in the API response.\",\n \"format\": + \"int32\",\n \"type\": \"integer\"\n }\n },\n \"id\": + \"PageInfo\",\n \"description\": \"Paging details for lists of resources, + including total number of items available and number of resources returned + in a single page.\",\n \"type\": \"object\"\n },\n \"InvideoTiming\": + {\n \"description\": \"Describes a temporal position of a visual widget + inside a video.\",\n \"id\": \"InvideoTiming\",\n \"properties\": + {\n \"durationMs\": {\n \"type\": \"string\",\n \"description\": \"Defines the duration in milliseconds for which the promotion should be displayed. If missing, the client should use the default.\",\n \"format\": \"uint64\"\n - \ }\n },\n \"id\": \"InvideoTiming\",\n \"type\": \"object\"\n - \ },\n \"ChannelContentOwnerDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelContentOwnerDetails\",\n \"description\": \"The - contentOwnerDetails object encapsulates channel data that is relevant for - YouTube Partners linked with the channel.\",\n \"properties\": {\n \"contentOwner\": - {\n \"description\": \"The ID of the content owner linked to the - channel.\",\n \"type\": \"string\"\n },\n \"timeLinked\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the channel was linked - to the content owner.\"\n }\n }\n },\n \"MemberSnippet\": - {\n \"properties\": {\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering memberships.\",\n \"type\": - \"string\"\n },\n \"memberDetails\": {\n \"description\": - \"Details about the member.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"membershipsDetails\": {\n \"$ref\": \"MembershipsDetails\",\n - \ \"description\": \"Details about the user's membership.\"\n }\n - \ },\n \"id\": \"MemberSnippet\",\n \"type\": \"object\"\n },\n - \ \"LiveChatBan\": {\n \"description\": \"A `__liveChatBan__` resource - represents a ban for a YouTube live chat.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the ban.\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the ban.\",\n \"$ref\": - \"LiveChatBanSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatBan\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveChatBan\"\n },\n \"LiveChatSuperStickerDetails\": {\n \"id\": - \"LiveChatSuperStickerDetails\",\n \"properties\": {\n \"amountMicros\": - {\n \"format\": \"uint64\",\n \"description\": \"The amount - purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": - \"string\"\n },\n \"superStickerMetadata\": {\n \"description\": - \"Information about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\"\n },\n \"tier\": {\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"description\": \"Details about a resource which is being promoted.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"forecastingUrl\": - {\n \"type\": \"array\",\n \"description\": \"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.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"destinationUrl\": {\n \"description\": \"The URL the client - should direct the user to, if the user chooses to visit the advertiser's website.\",\n - \ \"type\": \"string\"\n },\n \"impressionUrl\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The list of impression - URLs. The client should ping all of these URLs to indicate that the user was - shown this promoted item.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the promoted video.\"\n },\n \"adTag\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should fetch - to request a promoted item.\"\n },\n \"descriptionText\": {\n - \ \"description\": \"The text description to accompany the promoted - item.\",\n \"type\": \"string\"\n },\n \"customCtaButtonText\": - {\n \"description\": \"The custom call-to-action button text. If - specified, it will override the default button text for the cta_type.\",\n - \ \"type\": \"string\"\n },\n \"ctaType\": {\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ]\n },\n \"clickTrackingUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user clicked through - on this promoted item.\",\n \"type\": \"string\"\n },\n \"creativeViewUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user was shown this promoted item.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsPromotedItem\"\n - \ },\n \"PlaylistContentDetails\": {\n \"id\": \"PlaylistContentDetails\",\n - \ \"properties\": {\n \"itemCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The number - of videos in the playlist.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelSnippet\": {\n \"description\": \"Basic details - about a channel, including title, description and thumbnails.\",\n \"id\": - \"ChannelSnippet\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"thumbnails\": {\n \"description\": \"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. When displaying thumbnails in your - application, make sure that your code uses the image URLs exactly as they - are returned in API responses. For example, your application should not use - the http domain instead of the https domain in a URL returned in an API response. - Beginning in July 2018, channel thumbnail URLs will only be available in the - https domain, which is how the URLs appear in API responses. After that time, - you might see broken images in your application if it tries to load YouTube - images from the http domain. Thumbnail images might be empty for newly created - channels and might take up to one day to populate.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": {\n \"description\": - \"The description of the channel.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the channel was created.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's title.\"\n },\n \"country\": - {\n \"description\": \"The country of the channel.\",\n \"type\": - \"string\"\n },\n \"customUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The custom url of the channel.\"\n },\n - \ \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel's default title - and description.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"SearchListResponse\": {\n \"type\": \"object\",\n \"id\": - \"SearchListResponse\",\n \"properties\": {\n \"eventId\": {\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"default\": \"youtube#searchListResponse\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"items\": {\n \"description\": - \"Pagination information for token pagination.\",\n \"items\": {\n - \ \"$ref\": \"SearchResult\"\n },\n \"type\": - \"array\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"regionCode\": {\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n }\n },\n \"Activity\": - {\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the activity, including - the activity's type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#activity\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n },\n - \ \"contentDetails\": {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetails\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource\",\n \"type\": \"string\"\n },\n \"id\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the activity.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"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.\",\n \"id\": \"Activity\"\n - \ },\n \"ActivityContentDetailsFavorite\": {\n \"id\": \"ActivityContentDetailsFavorite\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource that was marked as - a favorite.\"\n }\n },\n \"description\": \"Information about - a video that was marked as a favorite video.\"\n },\n \"LiveStreamSnippet\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamSnippet\",\n \"properties\": - {\n \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the stream - was created.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The stream's description. The value - cannot be longer than 10000 characters.\"\n },\n \"title\": - {\n \"description\": \"The stream's title. The value must be between - 1 and 128 characters long.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that is transmitting the - stream.\",\n \"type\": \"string\"\n },\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n }\n }\n },\n \"RelatedEntity\": - {\n \"id\": \"RelatedEntity\",\n \"properties\": {\n \"entity\": - {\n \"$ref\": \"Entity\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoStatus\": {\n \"description\": \"Basic details about - a video category, such as its localized title. Next Id: 18\",\n \"type\": - \"object\",\n \"id\": \"VideoStatus\",\n \"properties\": {\n \"uploadStatus\": - {\n \"type\": \"string\",\n \"description\": \"The status - of the uploaded video.\",\n \"enumDescriptions\": [\n \"Video - has been uploaded but not processed yet.\",\n \"Video has been - successfully processed.\",\n \"Processing has failed. See FailureReason.\",\n - \ \"Video has been rejected. See RejectionReason.\",\n \"Video - has been deleted.\"\n ],\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ]\n },\n \"rejectionReason\": - {\n \"type\": \"string\",\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"description\": \"This value explains why YouTube - rejected an uploaded video. This property is only present if the uploadStatus - property indicates that the upload was rejected.\",\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"failureReason\": - {\n \"description\": \"This value explains why a video failed to - upload. This property is only present if the uploadStatus property indicates - that the upload failed.\",\n \"enumDescriptions\": [\n \"Unable - to convert video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ]\n },\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The video's privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"publishAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the video is scheduled to publish. It can be set only if the - privacy status of the video is private..\",\n \"format\": \"date-time\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"embeddable\": {\n \"description\": \"This value - indicates if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"license\": - {\n \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n }\n }\n - \ },\n \"ChannelTopicDetails\": {\n \"type\": \"object\",\n \"description\": - \"Freebase topic information related to the channel.\",\n \"properties\": - {\n \"topicCategories\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\"\n },\n - \ \"topicIds\": {\n \"type\": \"array\",\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"id\": - \"ChannelTopicDetails\"\n },\n \"VideoCategory\": {\n \"description\": - \"A *videoCategory* resource identifies a category that has been or could - be associated with uploaded videos.\",\n \"id\": \"VideoCategory\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoCategory\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n + \ },\n \"offsetMs\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"Defines the time at which the promotion + will appear. Depending on the value of type the value of the offsetMs field + will represent a time offset from the start or from the end of the video, + expressed in milliseconds.\"\n },\n \"type\": {\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"description\": + \"Describes a timing type. If the value is offsetFromStart, then the offsetMs + field represents an offset from the start of the video. If the value is offsetFromEnd, + then the offsetMs field represents an offset from the end of the video.\",\n + \ \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n + \ ],\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\"\n },\n \"I18nRegion\": {\n \"type\": \"object\",\n \"description\": + \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n + \ \"properties\": {\n \"id\": {\n \"description\": \"The + ID that YouTube uses to uniquely identify the i18n region.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegion\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the i18n region, such as + region code and human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n + \ }\n },\n \"id\": \"I18nRegion\"\n },\n \"CommentThread\": + {\n \"id\": \"CommentThread\",\n \"properties\": {\n \"kind\": + {\n \"default\": \"youtube#commentThread\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"VideoCategorySnippet\",\n \"description\": \"The snippet object - contains basic details about the video category, including its title.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video category.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"AccessPolicy\": {\n \"properties\": - {\n \"allowed\": {\n \"type\": \"boolean\",\n \"description\": - \"The value of allowed indicates whether the access to the policy is allowed - or denied by default.\"\n },\n \"exception\": {\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n }\n },\n \"description\": - \"Rights management policy for YouTube resources.\",\n \"id\": \"AccessPolicy\",\n - \ \"type\": \"object\"\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"properties\": {\n \"tag\": {\n \"type\": \"string\",\n - \ \"description\": \"The keyword tag suggested for the video.\"\n - \ },\n \"categoryRestricts\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A set of video categories - for which the tag is relevant. You can use this information to display appropriate - tag suggestions based on the video category that the video uploader associates - with the video. By default, tag suggestions are relevant for all categories - if there are no restricts defined for the keyword.\",\n \"type\": - \"array\"\n }\n },\n \"description\": \"A single tag suggestion - with it's relevance information.\",\n \"type\": \"object\",\n \"id\": - \"VideoSuggestionsTagSuggestion\"\n },\n \"ChannelBrandingSettings\": - {\n \"type\": \"object\",\n \"properties\": {\n \"hints\": - {\n \"items\": {\n \"$ref\": \"PropertyValue\"\n },\n - \ \"type\": \"array\",\n \"description\": \"Additional experimental - branding properties.\"\n },\n \"channel\": {\n \"description\": - \"Branding properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n - \ },\n \"watch\": {\n \"description\": \"Branding properties - for the watch page.\",\n \"$ref\": \"WatchSettings\"\n },\n - \ \"image\": {\n \"description\": \"Branding properties for - branding images.\",\n \"$ref\": \"ImageSettings\"\n }\n },\n - \ \"id\": \"ChannelBrandingSettings\",\n \"description\": \"Branding - properties of a YouTube channel.\"\n },\n \"AbuseReport\": {\n \"id\": - \"AbuseReport\",\n \"type\": \"object\",\n \"properties\": {\n \"relatedEntities\": - {\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n - \ \"type\": \"array\"\n },\n \"abuseTypes\": {\n \"items\": - {\n \"$ref\": \"AbuseType\"\n },\n \"type\": - \"array\"\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n - \ },\n \"description\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"ThirdPartyLinkListResponse\": {\n \"id\": \"ThirdPartyLinkListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ActivitySnippet\": - {\n \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\",\n \"id\": + \"CommentThreadSnippet\",\n \"description\": \"The snippet object + contains basic details about the comment thread and also the top level comment.\"\n + \ },\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n + \ \"description\": \"The replies object contains a limited number + of replies (if any) to the top level comment found in the snippet.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the comment thread.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"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.\",\n + \ \"type\": \"object\"\n },\n \"ActivitySnippet\": {\n \"id\": \"ActivitySnippet\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel responsible for this activity\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the resource primarily associated with the activity. - @mutable youtube.activities.insert\"\n },\n \"type\": {\n \"description\": - \"The type of activity that the resource describes.\",\n \"enum\": - [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n + \ \"channelTitle\": {\n \"description\": \"Channel title for + the channel responsible for this activity\",\n \"type\": \"string\"\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel associated with + the activity.\"\n },\n \"type\": {\n \"enum\": [\n + \ \"typeUnspecified\",\n \"upload\",\n \"like\",\n \ \"favorite\",\n \"comment\",\n \"subscription\",\n \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"groupId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the video - was uploaded.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel associated with the activity.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The type of activity that the resource describes.\"\n + \ },\n \"groupId\": {\n \"description\": \"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.\",\n + \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time that the video was uploaded.\",\n \"type\": \"string\",\n + \ \"format\": \"date-time\"\n },\n \"thumbnails\": {\n + \ \"description\": \"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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"description\": {\n \"description\": + \"The description of the resource primarily associated with the activity. + @mutable youtube.activities.insert\",\n \"type\": \"string\"\n },\n + \ \"title\": {\n \"type\": \"string\",\n \"description\": \"The title of the resource primarily associated with the activity.\"\n }\n - \ }\n },\n \"VideoProcessingDetailsProcessingProgress\": {\n \"type\": - \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"Video processing progress and completion time estimate.\",\n - \ \"properties\": {\n \"partsTotal\": {\n \"format\": - \"uint64\",\n \"description\": \"An estimate of the total number - of parts that need to be processed for the video. The number may be updated - with more precise estimates while YouTube processes the video.\",\n \"type\": - \"string\"\n },\n \"partsProcessed\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of parts of the video that YouTube has already processed. You can estimate - the percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\"\n },\n - \ \"timeLeftMs\": {\n \"type\": \"string\",\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\",\n \"format\": \"uint64\"\n }\n - \ }\n },\n \"WatchSettings\": {\n \"properties\": {\n \"featuredPlaylistId\": - {\n \"type\": \"string\",\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\"\n - \ },\n \"backgroundColor\": {\n \"type\": \"string\",\n - \ \"description\": \"The text color for the video watch page's branded - area.\"\n },\n \"textColor\": {\n \"description\": - \"The background color for the video watch page's branded area.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"WatchSettings\",\n \"description\": \"Branding properties for the watch. - All deprecated.\"\n },\n \"LiveBroadcastListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of broadcasts that match the - request criteria.\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n - \ }\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveBroadcastListResponse\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The + \ },\n \"description\": \"Basic details about an activity, including + title, description, thumbnails, activity type and group. Next ID: 12\"\n },\n + \ \"CommentSnippet\": {\n \"id\": \"CommentSnippet\",\n \"type\": + \"object\",\n \"properties\": {\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time when the comment + was originally published.\",\n \"type\": \"string\"\n },\n + \ \"canRate\": {\n \"description\": \"Whether the current viewer + can rate this comment.\",\n \"type\": \"boolean\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"likeCount\": {\n \"description\": + \"The total number of likes this comment has received.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"parentId\": + {\n \"description\": \"The unique id of the parent comment, only + set for replies.\",\n \"type\": \"string\"\n },\n \"textDisplay\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n + \ \"authorDisplayName\": {\n \"type\": \"string\",\n \"description\": + \"The name of the user who posted the comment.\"\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the video the comment refers to, if any.\"\n },\n \"authorChannelId\": + {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"authorProfileImageUrl\": + {\n \"description\": \"The URL for the avatar of the user who posted + the comment.\",\n \"type\": \"string\"\n },\n \"authorChannelUrl\": + {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n + \ \"type\": \"string\"\n },\n \"textOriginal\": {\n + \ \"description\": \"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.\",\n + \ \"type\": \"string\"\n },\n \"updatedAt\": {\n \"description\": + \"The date and time when the comment was last updated.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"moderationStatus\": + {\n \"description\": \"The comment's moderation status. Will not + be set if the comments were requested through the id filter.\",\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ],\n \"type\": \"string\"\n },\n \"viewerRating\": + {\n \"description\": \"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.\",\n \"enum\": [\n + \ \"none\",\n \"like\",\n \"dislike\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The entity is liked.\",\n \"The entity is disliked.\"\n + \ ]\n }\n },\n \"description\": \"Basic details about + a comment, such as its author and text.\"\n },\n \"VideoAbuseReport\": + {\n \"type\": \"object\",\n \"properties\": {\n \"reasonId\": + {\n \"type\": \"string\",\n \"description\": \"The high-level, + or primary, reason that the content is abusive. The value is an abuse report + reason ID.\"\n },\n \"videoId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the video.\"\n },\n \"secondaryReasonId\": {\n \"type\": + \"string\",\n \"description\": \"The specific, or secondary, reason + that this content is abusive (if available). The value is an abuse report + reason ID that is a valid secondary reason for the primary reason.\"\n },\n + \ \"comments\": {\n \"description\": \"Additional comments + regarding the abuse report.\",\n \"type\": \"string\"\n },\n + \ \"language\": {\n \"description\": \"The language that the + content was viewed in.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"VideoAbuseReport\"\n },\n \"TestItemTestItemSnippet\": + {\n \"type\": \"object\",\n \"id\": \"TestItemTestItemSnippet\",\n + \ \"properties\": {}\n },\n \"VideoMonetizationDetails\": {\n \"id\": + \"VideoMonetizationDetails\",\n \"properties\": {\n \"access\": + {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The + value of access indicates whether the video can be monetized or not.\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"Details about + monetization of a YouTube Video.\"\n },\n \"LiveStreamConfigurationIssue\": + {\n \"id\": \"LiveStreamConfigurationIssue\",\n \"properties\": + {\n \"severity\": {\n \"type\": \"string\",\n \"enum\": + [\n \"info\",\n \"warning\",\n \"error\"\n + \ ],\n \"description\": \"How severe this issue is to the + stream.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"reason\": {\n \"description\": + \"The short-form reason for this issue.\",\n \"type\": \"string\"\n + \ },\n \"type\": {\n \"description\": \"The kind of + error happening.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n + \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n + \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n + \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n + \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n + \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n + \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n + \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n + \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n + \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n + \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n + \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n + \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n + \ \"videoIngestionFasterThanRealtime\"\n ]\n },\n + \ \"description\": {\n \"type\": \"string\",\n \"description\": + \"The long-form description of the issue and how to resolve it.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": + {\n \"properties\": {\n \"memberMonth\": {\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The total amount of months (rounded up) the viewer has been a member that + granted them this Member Milestone Chat. This is the same number of months + as is being displayed to YouTube users.\"\n },\n \"userComment\": + {\n \"description\": \"The comment added by the member to this Member + Milestone Chat. This field is empty for messages without a comment from the + member.\",\n \"type\": \"string\"\n },\n \"memberLevelName\": + {\n \"description\": \"The name of the Level at which the viever + is a member. The Level names are defined by the YouTube channel offering the + Membership. In some situations this field isn't filled.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n + \ \"type\": \"object\"\n },\n \"ActivityListResponse\": {\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveBroadcastListResponse\",\n \"type\": \"object\"\n - \ },\n \"Entity\": {\n \"id\": \"Entity\",\n \"properties\": - {\n \"url\": {\n \"type\": \"string\"\n },\n \"typeId\": - {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"SearchResult\": - {\n \"description\": \"A search result contains information about a YouTube - video, channel, or playlist that matches the search parameters specified in - an API request. While a search result points to a uniquely identifiable resource, - like a video, it does not have its own persistent data.\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\",\n \"$ref\": \"SearchResultSnippet\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#searchResult\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The id - object contains information that can be used to uniquely identify the resource - that matches the search request.\"\n }\n },\n \"id\": \"SearchResult\"\n - \ },\n \"PlaylistLocalization\": {\n \"id\": \"PlaylistLocalization\",\n - \ \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for playlist's title.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"The localized - strings for playlist's description.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Playlist localization - setting\"\n },\n \"I18nRegionListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"I18nRegionListResponse\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#i18nRegionListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n + \ \"default\": \"youtube#activityListResponse\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"Activity\"\n },\n + \ \"type\": \"array\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ActivityListResponse\"\n },\n \"TokenPagination\": {\n + \ \"properties\": {},\n \"description\": \"Stub token pagination + template to suppress results.\",\n \"id\": \"TokenPagination\",\n \"type\": + \"object\"\n },\n \"PlaylistStatus\": {\n \"type\": \"object\",\n + \ \"id\": \"PlaylistStatus\",\n \"properties\": {\n \"privacyStatus\": + {\n \"description\": \"The playlist's privacy status.\",\n \"type\": + \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ]\n }\n + \ }\n },\n \"PlaylistListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"PlaylistListResponse\",\n \"properties\": {\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": + \"youtube#playlistListResponse\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n + \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"Playlist\"\n },\n + \ \"description\": \"A list of playlists that match the request criteria\",\n + \ \"type\": \"array\"\n }\n }\n },\n \"LiveChatBanSnippet\": + {\n \"id\": \"LiveChatBanSnippet\",\n \"type\": \"object\",\n \"properties\": + {\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n + \ },\n \"type\": {\n \"description\": \"The type of + ban.\",\n \"enumDescriptions\": [\n \"An invalid ban type.\",\n + \ \"A permanent ban.\",\n \"A temporary ban.\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n + \ \"permanent\",\n \"temporary\"\n ]\n },\n + \ \"liveChatId\": {\n \"description\": \"The chat this ban + is pertinent to.\",\n \"type\": \"string\"\n },\n \"banDurationSeconds\": + {\n \"description\": \"The duration of a ban, only filled if the + ban has type TEMPORARY.\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n }\n }\n },\n \"I18nRegionSnippet\": {\n \"type\": + \"object\",\n \"properties\": {\n \"gl\": {\n \"type\": + \"string\",\n \"description\": \"The region code as a 2-letter ISO + country code.\"\n },\n \"name\": {\n \"type\": \"string\",\n + \ \"description\": \"The human-readable name of the region.\"\n }\n + \ },\n \"description\": \"Basic details about an i18n region, such + as region code and human-readable name.\",\n \"id\": \"I18nRegionSnippet\"\n + \ },\n \"ActivityContentDetailsSocial\": {\n \"id\": \"ActivityContentDetailsSocial\",\n + \ \"description\": \"Details about a social network post.\",\n \"properties\": + {\n \"author\": {\n \"type\": \"string\",\n \"description\": + \"The author of the social network post.\"\n },\n \"type\": + {\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n + \ \"facebook\",\n \"twitter\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The name of the social network.\",\n + \ \"type\": \"string\"\n },\n \"imageUrl\": {\n \"description\": + \"An image of the post's author.\",\n \"type\": \"string\"\n },\n + \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object encapsulates information that identifies the resource + associated with a social network post.\"\n },\n \"referenceUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL of + the social network post.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"LiveStreamStatus\": {\n \"properties\": {\n \"streamStatus\": + {\n \"type\": \"string\",\n \"enum\": [\n \"created\",\n + \ \"ready\",\n \"active\",\n \"inactive\",\n + \ \"error\"\n ],\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"healthStatus\": {\n \"$ref\": + \"LiveStreamHealthStatus\",\n \"description\": \"The health status + of the stream.\"\n }\n },\n \"id\": \"LiveStreamStatus\",\n + \ \"description\": \"Brief description of the live stream status.\",\n + \ \"type\": \"object\"\n },\n \"LiveBroadcast\": {\n \"id\": + \"LiveBroadcast\",\n \"description\": \"A *liveBroadcast* resource represents + an event that will be streamed, via live video, on YouTube.\",\n \"type\": + \"object\",\n \"properties\": {\n \"contentDetails\": {\n \"$ref\": + \"LiveBroadcastContentDetails\",\n \"description\": \"The contentDetails + object contains information about the event's video content, such as whether + the content can be shown in an embedded video player or if it will be archived + and therefore available for viewing after the event has concluded.\"\n },\n + \ \"statistics\": {\n \"description\": \"The statistics object + contains info about the event's current stats. These include concurrent viewers + and total chat count. Statistics can change (in either direction) during the + lifetime of an event. Statistics are only returned while the event is live.\",\n + \ \"$ref\": \"LiveBroadcastStatistics\"\n },\n \"status\": + {\n \"$ref\": \"LiveBroadcastStatus\",\n \"description\": + \"The status object contains information about the event's status.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"LiveBroadcastSnippet\",\n \"description\": + \"The snippet object contains basic details about the event, including its + title, description, start time, and end time.\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n + \ \"default\": \"youtube#liveBroadcast\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube assigns to uniquely identify + the broadcast.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"I18nRegionListResponse\": {\n \"id\": \"I18nRegionListResponse\",\n + \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"I18nRegion\"\n },\n \"description\": \"A list of regions where YouTube is available. In this map, the i18n region ID is the map key, - and its value is the corresponding i18nRegion resource.\",\n \"type\": - \"array\"\n }\n }\n },\n \"CommentThread\": {\n \"description\": - \"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.\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"default\": \"youtube#commentThread\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n - \ },\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n - \ \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"CommentThread\"\n },\n - \ \"LiveChatBanSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"banDurationSeconds\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The duration - of a ban, only filled if the ban has type TEMPORARY.\"\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The chat - this ban is pertinent to.\"\n },\n \"type\": {\n \"description\": - \"The type of ban.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ]\n }\n - \ },\n \"id\": \"LiveChatBanSnippet\"\n },\n \"PlaylistItemContentDetails\": - {\n \"properties\": {\n \"endAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The time, measured in seconds from the start - of the video, when the video should stop playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) By default, assume that the video.endTime - is the end of the video.\"\n },\n \"note\": {\n \"type\": - \"string\",\n \"description\": \"A user-generated note for this item.\"\n - \ },\n \"startAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\"\n },\n \"videoId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify a video. To retrieve the video resource, - set the id query parameter to this value in your API request.\"\n },\n - \ \"videoPublishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the video - was published to YouTube.\"\n }\n },\n \"id\": \"PlaylistItemContentDetails\",\n - \ \"type\": \"object\"\n },\n \"I18nLanguageListResponse\": {\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"kind\": {\n \"type\": \"string\",\n + and its value is the corresponding i18nRegion resource.\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegionListResponse\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"ChannelSectionContentDetails\": + {\n \"type\": \"object\",\n \"description\": \"Details about a channelsection, + including playlists and channels.\",\n \"properties\": {\n \"playlists\": + {\n \"description\": \"The playlist ids for type single_playlist + and multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"channels\": {\n \"description\": + \"The channel ids for type multiple_channels.\",\n \"items\": {\n + \ \"type\": \"string\"\n },\n \"type\": \"array\"\n + \ }\n },\n \"id\": \"ChannelSectionContentDetails\"\n },\n + \ \"SubscriptionSubscriberSnippet\": {\n \"type\": \"object\",\n \"properties\": + {\n \"description\": {\n \"type\": \"string\",\n \"description\": + \"The description of the subscriber.\"\n },\n \"channelId\": + {\n \"description\": \"The channel ID of the subscriber.\",\n \"type\": + \"string\"\n },\n \"thumbnails\": {\n \"description\": + \"Thumbnails for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"title\": {\n \"description\": \"The title of + the subscriber.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"SubscriptionSubscriberSnippet\",\n \"description\": \"Basic + details about a subscription's subscriber including title, description, channel + ID and thumbnails.\"\n },\n \"VideoRating\": {\n \"id\": \"VideoRating\",\n + \ \"properties\": {\n \"rating\": {\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"none\",\n \"like\",\n \"dislike\"\n + \ ],\n \"description\": \"Rating of a video.\"\n },\n + \ \"videoId\": {\n \"description\": \"The ID that YouTube uses + to uniquely identify the video.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"Basic details + about rating of a video.\"\n },\n \"ChannelAuditDetails\": {\n \"id\": + \"ChannelAuditDetails\",\n \"type\": \"object\",\n \"description\": + \"The auditDetails object encapsulates channel data that is relevant for YouTube + Partners during the audit process.\",\n \"properties\": {\n \"communityGuidelinesGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel respects the community guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel has any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel has any unresolved claims.\"\n }\n }\n },\n + \ \"ActivityContentDetails\": {\n \"properties\": {\n \"like\": + {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsLike\"\n + \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n + \ \"description\": \"The comment object contains information about + a resource that received a comment. This property is only present if the snippet.type + is comment.\"\n },\n \"subscription\": {\n \"$ref\": + \"ActivityContentDetailsSubscription\",\n \"description\": \"The + subscription object contains information about a channel that a user subscribed + to. This property is only present if the snippet.type is subscription.\"\n + \ },\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n + \ \"description\": \"The bulletin object contains details about a + channel bulletin post. This object is only present if the snippet.type is + bulletin.\"\n },\n \"promotedItem\": {\n \"description\": + \"The promotedItem object contains details about a resource which is being + promoted. This property is only present if the snippet.type is promotedItem.\",\n + \ \"$ref\": \"ActivityContentDetailsPromotedItem\"\n },\n \"playlistItem\": + {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": + \"The playlistItem object contains information about a new playlist item. + This property is only present if the snippet.type is playlistItem.\"\n },\n + \ \"upload\": {\n \"$ref\": \"ActivityContentDetailsUpload\",\n + \ \"description\": \"The upload object contains information about + the uploaded video. This property is only present if the snippet.type is upload.\"\n + \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n + \ \"description\": \"The recommendation object contains information + about a recommended resource. This property is only present if the snippet.type + is recommendation.\"\n },\n \"social\": {\n \"$ref\": + \"ActivityContentDetailsSocial\",\n \"description\": \"The social + object contains details about a social network post. This property is only + present if the snippet.type is social.\"\n },\n \"channelItem\": + {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n \"description\": + \"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.\"\n + \ },\n \"favorite\": {\n \"description\": \"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.\",\n \"$ref\": + \"ActivityContentDetailsFavorite\"\n }\n },\n \"description\": + \"Details about the content of an activity: the video that was shared, the + channel that was subscribed to, etc.\",\n \"id\": \"ActivityContentDetails\",\n + \ \"type\": \"object\"\n },\n \"AccessPolicy\": {\n \"description\": + \"Rights management policy for YouTube resources.\",\n \"id\": \"AccessPolicy\",\n + \ \"properties\": {\n \"exception\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": + \"A list of region codes that identify countries where the default policy + do not apply.\"\n },\n \"allowed\": {\n \"type\": \"boolean\",\n + \ \"description\": \"The value of allowed indicates whether the access + to the policy is allowed or denied by default.\"\n }\n },\n \"type\": + \"object\"\n },\n \"LiveChatMessage\": {\n \"description\": \"A + *liveChatMessage* resource represents a chat message in a YouTube Live Chat.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the message.\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatMessage\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"default\": - \"youtube#i18nLanguageListResponse\"\n },\n \"etag\": {\n \"type\": + the fixed string \\\"youtube#liveChatMessage\\\".\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the message.\"\n },\n \"authorDetails\": {\n \"description\": + \"The authorDetails object contains basic details about the user that posted + this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n }\n + \ },\n \"id\": \"LiveChatMessage\"\n },\n \"VideoAbuseReportReason\": + {\n \"properties\": {\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n + \ \"description\": \"The `snippet` object contains basic details about + the abuse report reason.\"\n },\n \"etag\": {\n \"type\": \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of supported i18n languages. In this - map, the i18n language ID is the map key, and its value is the corresponding - i18nLanguage resource.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n }\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"I18nLanguageListResponse\"\n - \ },\n \"PlaylistItemListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#playlistItemListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"description\": \"A list of playlist items that match - the request criteria.\",\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": + \ \"kind\": {\n \"default\": \"youtube#videoAbuseReportReason\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID of this abuse report reason.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"VideoAbuseReportReason\",\n \"description\": + \"A `__videoAbuseReportReason__` resource identifies a reason that a video + could be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\"\n + \ },\n \"LiveStreamListResponse\": {\n \"id\": \"LiveStreamListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"items\": {\n \"description\": + \"A list of live streams that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"LiveStream\"\n },\n \"type\": + \"array\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result - set.\"\n }\n },\n \"id\": \"PlaylistItemListResponse\"\n - \ },\n \"LiveChatMessageSnippet\": {\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageSnippet\",\n \"description\": \"Next ID: 33\",\n \"properties\": - {\n \"displayMessage\": {\n \"type\": \"string\",\n \"description\": - \"Contains a string that can be displayed to the user. If this field is not - present the message is silent, at the moment only messages of type TOMBSTONE - and CHAT_ENDED_EVENT are silent.\"\n },\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n },\n \"hasDisplayContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the message has display content that should be displayed to users.\"\n },\n - \ \"membershipGiftingDetails\": {\n \"description\": \"Details - about the Membership Gifting event, this is only set if the type is 'membershipGiftingEvent'.\",\n - \ \"$ref\": \"LiveChatMembershipGiftingDetails\"\n },\n \"superChatDetails\": - {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"textMessageDetails\": {\n \"$ref\": \"LiveChatTextMessageDetails\",\n - \ \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the message was orignally - published.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n + set.\"\n },\n \"visitorId\": {\n \"description\": \"The + visitorId identifies the visitor.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n + \ \"default\": \"youtube#liveStreamListResponse\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"eventId\": {\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n }\n }\n },\n \"LocalizedProperty\": + {\n \"type\": \"object\",\n \"id\": \"LocalizedProperty\",\n \"properties\": + {\n \"default\": {\n \"type\": \"string\"\n },\n \"defaultLanguage\": + {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The + language of the default property.\"\n },\n \"localized\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"LocalizedString\"\n }\n }\n }\n },\n \"LiveChatMessageSnippet\": + {\n \"id\": \"LiveChatMessageSnippet\",\n \"description\": \"Next + ID: 33\",\n \"type\": \"object\",\n \"properties\": {\n \"userBannedDetails\": + {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n + \ \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n + \ },\n \"superChatDetails\": {\n \"description\": \"Details + about the Super Chat event, this is only set if the type is 'superChatEvent'.\",\n + \ \"$ref\": \"LiveChatSuperChatDetails\"\n },\n \"authorChannelId\": + {\n \"description\": \"The ID of the user that authored this message, + this field is not always filled. textMessageEvent - the user that wrote the + message fanFundingEvent - the user that funded the broadcast newSponsorEvent + - the user that just became a sponsor memberMilestoneChatEvent - the member + that sent the message membershipGiftingEvent - the user that made the purchase + giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent + - the moderator that took the action messageRetractedEvent - the author that + retracted their message userBannedEvent - the moderator that took the action + superChatEvent - the user that made the purchase superStickerEvent - the user + that made the purchase\",\n \"type\": \"string\"\n },\n \"membershipGiftingDetails\": + {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": + \"Details about the Membership Gifting event, this is only set if the type + is 'membershipGiftingEvent'.\"\n },\n \"displayMessage\": {\n + \ \"description\": \"Contains a string that can be displayed to the + user. If this field is not present the message is silent, at the moment only + messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\",\n \"type\": + \"string\"\n },\n \"textMessageDetails\": {\n \"$ref\": + \"LiveChatTextMessageDetails\",\n \"description\": \"Details about + the text message, this is only set if the type is 'textMessageEvent'.\"\n + \ },\n \"superStickerDetails\": {\n \"description\": + \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n + \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"fanFundingEventDetails\": + {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n \"description\": + \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n - \ \"fanFundingEventDetails\": {\n \"description\": \"Details - about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"memberMilestoneChatDetails\": {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n + \ \"description\": \"Details about the Member Milestone Chat event, + this is only set if the type is 'memberMilestoneChatEvent'.\"\n },\n + \ \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n + \ },\n \"type\": {\n \"description\": \"The type of + message, this will always be present, it determines the contents of the message + as well as which fields will be present.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\"\n },\n \"giftMembershipReceivedDetails\": {\n \"$ref\": - \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": \"Details - about the Gift Membership Received event, this is only set if the type is - 'giftMembershipReceivedEvent'.\"\n },\n \"newSponsorDetails\": - {\n \"description\": \"Details about the New Member Announcement - event, this is only set if the type is 'newSponsorEvent'. Please note that - \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n \"$ref\": - \"LiveChatNewSponsorDetails\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"authorChannelId\": {\n \"description\": \"The ID of the - user that authored this message, this field is not always filled. textMessageEvent - - the user that wrote the message fanFundingEvent - the user that funded the - broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\",\n \"type\": \"string\"\n },\n - \ \"superStickerDetails\": {\n \"description\": \"Details about - the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n }\n }\n - \ },\n \"CommentSnippet\": {\n \"description\": \"Basic details - about a comment, such as its author and text.\",\n \"id\": \"CommentSnippet\",\n - \ \"properties\": {\n \"parentId\": {\n \"description\": - \"The unique id of the parent comment, only set for replies.\",\n \"type\": - \"string\"\n },\n \"moderationStatus\": {\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment is - awaiting review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ]\n },\n \"textDisplay\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"viewerRating\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n },\n - \ \"canRate\": {\n \"description\": \"Whether the current viewer - can rate this comment.\",\n \"type\": \"boolean\"\n },\n \"updatedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the comment was last updated.\",\n \"format\": \"date-time\"\n - \ },\n \"authorChannelUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Link to the author's YouTube channel, if any.\"\n - \ },\n \"authorProfileImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL for the avatar of the user who posted - the comment.\"\n },\n \"textOriginal\": {\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"likeCount\": {\n \"description\": - \"The total number of likes this comment has received.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was originally - published.\"\n },\n \"authorChannelId\": {\n \"$ref\": - \"CommentSnippetAuthorChannelId\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the video the comment - refers to, if any.\"\n },\n \"authorDisplayName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the user who posted - the comment.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"LiveChatGiftMembershipReceivedDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ },\n \"gifterChannelId\": {\n \"description\": \"The - ID of the user that made the membership gifting purchase. This matches the - `snippet.authorChannelId` of the associated membership gifting message.\",\n - \ \"type\": \"string\"\n },\n \"memberLevelName\": {\n - \ \"type\": \"string\",\n \"description\": \"The name of - the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n }\n },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"LiveChatSuperChatDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"userComment\": {\n \"description\": - \"The comment added by the user to this Super Chat event.\",\n \"type\": - \"string\"\n },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"description\": \"The amount purchased by the user, in micros (1,750,000 - micros = 1.75).\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"tier\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The tier in - which the amount belongs. Lower amounts belong to lower tiers. The lowest - tier is 1.\"\n },\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the purchase was made.\"\n - \ }\n },\n \"id\": \"LiveChatSuperChatDetails\"\n },\n - \ \"Channel\": {\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel, such as its - title, description, and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n - \ },\n \"brandingSettings\": {\n \"$ref\": \"ChannelBrandingSettings\",\n - \ \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\"\n },\n \"topicDetails\": - {\n \"$ref\": \"ChannelTopicDetails\",\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the channel.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel.\"\n },\n \"status\": {\n \"$ref\": \"ChannelStatus\",\n - \ \"description\": \"The status object encapsulates information about - the privacy status of the channel.\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"description\": \"Localizations - for different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelLocalization\"\n }\n },\n \"auditDetails\": - {\n \"$ref\": \"ChannelAuditDetails\",\n \"description\": - \"The auditionDetails object encapsulates channel data that is relevant for - YouTube Partners during the audition process.\"\n },\n \"conversionPings\": - {\n \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\",\n \"$ref\": - \"ChannelConversionPings\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ChannelContentDetails\",\n \"description\": \"The contentDetails - object encapsulates information about the channel's content.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n \"default\": - \"youtube#channel\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n - \ \"description\": \"The statistics object encapsulates statistics - for the channel.\"\n },\n \"contentOwnerDetails\": {\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Channel\",\n - \ \"description\": \"A *channel* resource contains information about a - YouTube channel.\"\n },\n \"Video\": {\n \"id\": \"Video\",\n \"properties\": - {\n \"monetizationDetails\": {\n \"$ref\": \"VideoMonetizationDetails\",\n - \ \"description\": \"The monetizationDetails object encapsulates information - about the monetization status of the video.\"\n },\n \"topicDetails\": + \ \"superChatEvent\",\n \"superStickerEvent\"\n ]\n + \ },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the message was orignally + published.\",\n \"format\": \"date-time\"\n },\n \"giftMembershipReceivedDetails\": + {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": + \"Details about the Gift Membership Received event, this is only set if the + type is 'giftMembershipReceivedEvent'.\"\n },\n \"hasDisplayContent\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the message has display content that should be displayed to users.\"\n },\n + \ \"newSponsorDetails\": {\n \"description\": \"Details about + the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. + Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n + \ \"$ref\": \"LiveChatNewSponsorDetails\"\n }\n }\n },\n + \ \"ChannelBannerResource\": {\n \"type\": \"object\",\n \"description\": + \"A channel banner returned as the response to a channel_banner.insert call.\",\n + \ \"properties\": {\n \"etag\": {\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#channelBannerResource\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n + \ },\n \"url\": {\n \"type\": \"string\",\n \"description\": + \"The URL of this banner image.\"\n }\n },\n \"id\": \"ChannelBannerResource\"\n + \ },\n \"WatchSettings\": {\n \"description\": \"Branding properties + for the watch. All deprecated.\",\n \"properties\": {\n \"textColor\": + {\n \"type\": \"string\",\n \"description\": \"The background + color for the video watch page's branded area.\"\n },\n \"backgroundColor\": + {\n \"description\": \"The text color for the video watch page's + branded area.\",\n \"type\": \"string\"\n },\n \"featuredPlaylistId\": + {\n \"type\": \"string\",\n \"description\": \"An ID that + uniquely identifies a playlist that displays next to the video player.\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"WatchSettings\"\n + \ },\n \"ChannelContentOwnerDetails\": {\n \"description\": \"The + contentOwnerDetails object encapsulates channel data that is relevant for + YouTube Partners linked with the channel.\",\n \"id\": \"ChannelContentOwnerDetails\",\n + \ \"properties\": {\n \"timeLinked\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the channel was linked + to the content owner.\",\n \"format\": \"date-time\"\n },\n + \ \"contentOwner\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the content owner linked to the channel.\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"Video\": {\n \"description\": + \"A *video* resource represents a YouTube video.\",\n \"properties\": + {\n \"liveStreamingDetails\": {\n \"description\": \"The liveStreamingDetails + object contains metadata about a live video broadcast. The object will only + be present in a video resource if the video is an upcoming, live, or completed + live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n },\n + \ \"projectDetails\": {\n \"$ref\": \"VideoProjectDetails\",\n + \ \"description\": \"The projectDetails object contains information + about the project specific video metadata. b/157517979: This part was never + populated after it was added. However, it sees non-zero traffic because there + is generated client code in the wild that refers to it [1]. We keep this field + and do NOT remove it because otherwise V3 would return an error when this + part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n + \ },\n \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the video, such as its title, description, and category.\"\n },\n \"ageGating\": + {\n \"$ref\": \"VideoAgeGating\",\n \"description\": \"Age + restriction details related to a video. This data can only be retrieved by + the video owner.\"\n },\n \"id\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.videos.update\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\"\n },\n + \ \"fileDetails\": {\n \"description\": \"The fileDetails object + encapsulates information about the video file that was uploaded to YouTube, + including the file's resolution, duration, audio and video codecs, stream + bitrates, and more. This data can only be retrieved by the video owner.\",\n + \ \"$ref\": \"VideoFileDetails\"\n },\n \"statistics\": + {\n \"$ref\": \"VideoStatistics\",\n \"description\": \"The + statistics object contains statistics about the video.\"\n },\n \"suggestions\": + {\n \"description\": \"The suggestions object encapsulates suggestions + that identify opportunities to improve the video quality or the metadata for + the uploaded video. This data can only be retrieved by the video owner.\",\n + \ \"$ref\": \"VideoSuggestions\"\n },\n \"topicDetails\": {\n \"description\": \"The topicDetails object encapsulates information about Freebase topics associated with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \ },\n \"player\": {\n \"description\": \"The player + object contains information that you would use to play the video in an embedded + player.\",\n \"$ref\": \"VideoPlayer\"\n },\n \"recordingDetails\": + {\n \"description\": \"The recordingDetails object encapsulates information + about the location, date and address where the video was recorded.\",\n \"$ref\": + \"VideoRecordingDetails\"\n },\n \"kind\": {\n \"description\": \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"default\": \"youtube#video\"\n },\n \"id\": {\n - \ \"annotations\": {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n },\n - \ \"statistics\": {\n \"$ref\": \"VideoStatistics\",\n \"description\": - \"The statistics object contains statistics about the video.\"\n },\n - \ \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n \"description\": - \"Age restriction details related to a video. This data can only be retrieved - by the video owner.\"\n },\n \"suggestions\": {\n \"description\": - \"The suggestions object encapsulates suggestions that identify opportunities - to improve the video quality or the metadata for the uploaded video. This - data can only be retrieved by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains information about the video content, including - the length of the video and its aspect ratio.\",\n \"$ref\": \"VideoContentDetails\"\n - \ },\n \"liveStreamingDetails\": {\n \"$ref\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\"\n },\n - \ \"recordingDetails\": {\n \"description\": \"The recordingDetails - object encapsulates information about the location, date and address where - the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"processingDetails\": - {\n \"description\": \"The processingDetails object encapsulates - information about YouTube's progress in processing the uploaded video file. - The properties in the object identify the current processing status and an - estimate of the time remaining until YouTube finishes processing the video. - This part also indicates whether different types of data or content, such - as file details or thumbnail images, are available for the video. The processingProgress - object is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoProcessingDetails\"\n - \ },\n \"projectDetails\": {\n \"description\": \"The - projectDetails object contains information about the project specific video - metadata. b/157517979: This part was never populated after it was added. However, - it sees non-zero traffic because there is generated client code in the wild - that refers to it [1]. We keep this field and do NOT remove it because otherwise - V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"localizations\": - {\n \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\",\n \"type\": \"object\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the video's uploading, processing, and privacy statuses.\",\n \"$ref\": - \"VideoStatus\"\n },\n \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video, such as its title, description, and category.\"\n },\n \"fileDetails\": - {\n \"$ref\": \"VideoFileDetails\",\n \"description\": \"The - fileDetails object encapsulates information about the video file that was - uploaded to YouTube, including the file's resolution, duration, audio and - video codecs, stream bitrates, and more. This data can only be retrieved by - the video owner.\"\n },\n \"player\": {\n \"$ref\": - \"VideoPlayer\",\n \"description\": \"The player object contains - information that you would use to play the video in an embedded player.\"\n - \ }\n },\n \"description\": \"A *video* resource represents - a YouTube video.\",\n \"type\": \"object\"\n },\n \"SubscriptionContentDetails\": - {\n \"properties\": {\n \"totalItemCount\": {\n \"description\": - \"The approximate number of items that the subscription points to.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"newItemCount\": - {\n \"description\": \"The number of new items in the subscription - since its content was last read.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"activityType\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"id\": \"SubscriptionContentDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Details about the content - to witch a subscription refers.\"\n },\n \"I18nRegion\": {\n \"id\": - \"I18nRegion\",\n \"type\": \"object\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the i18n region.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n \"default\": - \"youtube#i18nRegion\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"A *i18nRegion* resource - identifies a region where YouTube is available.\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageDeletedDetails\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"LiveStreamListResponse\": {\n - \ \"id\": \"LiveStreamListResponse\",\n \"properties\": {\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of live streams that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n - \ }\n },\n \"kind\": {\n \"default\": \"youtube#liveStreamListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"id\": \"ActivityContentDetailsBulletin\",\n \"type\": \"object\",\n - \ \"description\": \"Details about a channel bulletin post.\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\"\n }\n - \ }\n },\n \"LiveBroadcastStatistics\": {\n \"description\": - \"Statistics about the live broadcast. These represent a snapshot of the values - at the time of the request. Statistics are only returned for live broadcasts.\",\n - \ \"id\": \"LiveBroadcastStatistics\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"totalChatCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\"\n - \ },\n \"concurrentViewers\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of viewers currently watching the - broadcast. The property and its value will be present if the broadcast has - current viewers and the broadcast owner has not hidden the viewcount for the - video. Note that YouTube stops tracking the number of concurrent viewers for - a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ChannelSection\": {\n \"properties\": {\n \"snippet\": {\n - \ \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\",\n - \ \"type\": \"string\"\n },\n \"contentDetails\": {\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\",\n \"$ref\": \"ChannelSectionContentDetails\"\n - \ },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"default\": \"youtube#channelSection\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"targeting\": - {\n \"$ref\": \"ChannelSectionTargeting\",\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\"\n }\n },\n \"id\": \"ChannelSection\",\n \"type\": - \"object\"\n },\n \"MembershipsLevel\": {\n \"description\": \"A - *membershipsLevel* resource represents an offer made by YouTube creators for - their fans. Users can become members of the channel by joining one of the - available levels. They will provide recurring monetary support and receives - special benefits.\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevel\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the memberships level.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"MembershipsLevel\"\n },\n - \ \"I18nRegionSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about an i18n region, such as region code and human-readable - name.\",\n \"properties\": {\n \"name\": {\n \"description\": - \"The human-readable name of the region.\",\n \"type\": \"string\"\n - \ },\n \"gl\": {\n \"type\": \"string\",\n \"description\": - \"The region code as a 2-letter ISO country code.\"\n }\n },\n - \ \"id\": \"I18nRegionSnippet\"\n },\n \"PlaylistListResponse\": - {\n \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"description\": \"A list of playlists that match the request criteria\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlistListResponse\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"PlaylistListResponse\"\n - \ },\n \"ChannelListResponse\": {\n \"properties\": {\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#channelListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": + \ \"default\": \"youtube#video\",\n \"type\": \"string\"\n + \ },\n \"contentDetails\": {\n \"$ref\": \"VideoContentDetails\",\n + \ \"description\": \"The contentDetails object contains information + about the video content, including the length of the video and its aspect + ratio.\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"processingDetails\": + {\n \"$ref\": \"VideoProcessingDetails\",\n \"description\": + \"The processingDetails object encapsulates information about YouTube's progress + in processing the uploaded video file. The properties in the object identify + the current processing status and an estimate of the time remaining until + YouTube finishes processing the video. This part also indicates whether different + types of data or content, such as file details or thumbnail images, are available + for the video. The processingProgress object is designed to be polled so that + the video uploaded can track the progress that YouTube has made in processing + the uploaded video file. This data can only be retrieved by the video owner.\"\n + \ },\n \"localizations\": {\n \"description\": \"The + localizations object contains localized versions of the basic details about + the video, such as its title and description.\",\n \"type\": \"object\",\n + \ \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n + \ }\n },\n \"monetizationDetails\": {\n \"description\": + \"The monetizationDetails object encapsulates information about the monetization + status of the video.\",\n \"$ref\": \"VideoMonetizationDetails\"\n + \ },\n \"status\": {\n \"$ref\": \"VideoStatus\",\n + \ \"description\": \"The status object contains information about + the video's uploading, processing, and privacy statuses.\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"Video\"\n },\n \"ChannelSectionTargeting\": + {\n \"id\": \"ChannelSectionTargeting\",\n \"type\": \"object\",\n + \ \"description\": \"ChannelSection targeting setting.\",\n \"properties\": + {\n \"countries\": {\n \"type\": \"array\",\n \"description\": + \"The country the channel section is targeting.\",\n \"items\": {\n + \ \"type\": \"string\"\n }\n },\n \"regions\": + {\n \"type\": \"array\",\n \"description\": \"The region + the channel section is targeting.\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"languages\": {\n \"type\": + \"array\",\n \"description\": \"The language the channel section + is targeting.\",\n \"items\": {\n \"type\": \"string\"\n + \ }\n }\n }\n },\n \"ActivityContentDetailsRecommendation\": + {\n \"type\": \"object\",\n \"description\": \"Information that + identifies the recommended resource.\",\n \"id\": \"ActivityContentDetailsRecommendation\",\n + \ \"properties\": {\n \"seedResourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The seedResourceId object contains + information about the resource that caused the recommendation.\"\n },\n + \ \"reason\": {\n \"type\": \"string\",\n \"description\": + \"The reason that the resource is recommended to the user.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"reasonUnspecified\",\n + \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n + \ ]\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the recommended resource.\"\n }\n }\n },\n \"PlaylistSnippet\": + {\n \"type\": \"object\",\n \"properties\": {\n \"thumbnailVideoId\": + {\n \"type\": \"string\",\n \"description\": \"Note: if + the playlist has a custom thumbnail, this field will not be populated. The + video id selected by the user that will be used as the thumbnail of this playlist. + This field defaults to the first publicly viewable video in the playlist, + if: 1. The user has never selected a video to be the thumbnail of the playlist. + 2. The user selects a video to be the thumbnail, and then removes that video + from the playlist. 3. The user selects a non-owned video to be the thumbnail, + but that video becomes private, or gets deleted.\"\n },\n \"channelTitle\": + {\n \"description\": \"The channel title of the channel that the + video belongs to.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The language + of the playlist's default title and description.\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the playlist was created.\"\n + \ },\n \"localized\": {\n \"$ref\": \"PlaylistLocalization\",\n + \ \"description\": \"Localized title and description, read-only.\"\n + \ },\n \"tags\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\",\n \"description\": + \"Keyword tags associated with the playlist.\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A + map of thumbnail images associated with the playlist. 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.\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": + [\n \"youtube.playlists.insert\",\n \"youtube.playlists.update\"\n + \ ]\n },\n \"description\": \"The playlist's title.\"\n + \ },\n \"channelId\": {\n \"description\": \"The ID + that YouTube uses to uniquely identify the channel that published the playlist.\",\n + \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The playlist's description.\"\n + \ }\n },\n \"id\": \"PlaylistSnippet\",\n \"description\": + \"Basic details about a playlist, including title, description and thumbnails.\"\n + \ },\n \"VideoProcessingDetails\": {\n \"id\": \"VideoProcessingDetails\",\n + \ \"description\": \"Describes processing status and progress and availability + of some other Video resource parts.\",\n \"type\": \"object\",\n \"properties\": + {\n \"fileDetailsAvailability\": {\n \"type\": \"string\",\n + \ \"description\": \"This value indicates whether file details are + available for the uploaded video. You can retrieve a video's file details + by requesting the fileDetails part in your videos.list() request.\"\n },\n + \ \"tagSuggestionsAvailability\": {\n \"description\": \"This + value indicates whether keyword (tag) suggestions are available for the video. + Tags can be added to a video's metadata to make it easier for other users + to find the video. You can retrieve these suggestions by requesting the suggestions + part in your videos.list() request.\",\n \"type\": \"string\"\n },\n + \ \"processingStatus\": {\n \"type\": \"string\",\n \"description\": + \"The video's processing status. This value indicates whether YouTube was + able to process the video or if the video is still being processed.\",\n \"enum\": + [\n \"processing\",\n \"succeeded\",\n \"failed\",\n + \ \"terminated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"editorSuggestionsAvailability\": {\n \"description\": + \"This value indicates whether video editing suggestions, which might improve + video quality or the playback experience, are available for the video. You + can retrieve these suggestions by requesting the suggestions part in your + videos.list() request.\",\n \"type\": \"string\"\n },\n \"thumbnailsAvailability\": + {\n \"description\": \"This value indicates whether thumbnail images + have been generated for the video.\",\n \"type\": \"string\"\n },\n + \ \"processingProgress\": {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n + \ \"description\": \"The processingProgress object contains information + about the progress YouTube has made in processing the video. The values are + really only relevant if the video's processing status is processing.\"\n },\n + \ \"processingFailureReason\": {\n \"enum\": [\n \"uploadFailed\",\n + \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The reason that YouTube failed to process the video. This property will + only have a value if the processingStatus property's value is failed.\",\n + \ \"type\": \"string\"\n },\n \"processingIssuesAvailability\": + {\n \"description\": \"This value indicates whether the video processing + engine has generated suggestions that might improve YouTube's ability to process + the the video, warnings that explain video processing problems, or errors + that cause video processing problems. You can retrieve these suggestions by + requesting the suggestions part in your videos.list() request.\",\n \"type\": + \"string\"\n }\n }\n },\n \"LiveStreamContentDetails\": + {\n \"description\": \"Detailed settings of a stream.\",\n \"properties\": + {\n \"isReusable\": {\n \"description\": \"Indicates whether + the stream is reusable, which means that it can be bound to multiple broadcasts. + It is common for broadcasters to reuse the same stream for many different + broadcasts if those broadcasts occur at different times. If you set this value + to false, then the stream will not be reusable, which means that it can only + be bound to one broadcast. Non-reusable streams differ from reusable streams + in the following ways: - A non-reusable stream can only be bound to one broadcast. + - A non-reusable stream might be deleted by an automated process after the + broadcast ends. - The liveStreams.list method does not list non-reusable streams + if you call the method and set the mine parameter to true. The only way to + use that method to retrieve the resource for a non-reusable stream is to use + the id parameter to identify the stream. \",\n \"type\": \"boolean\"\n + \ },\n \"closedCaptionsIngestionUrl\": {\n \"description\": + \"The ingestion URL where the closed captions of this stream are sent.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveStreamContentDetails\",\n + \ \"type\": \"object\"\n },\n \"MemberSnippet\": {\n \"type\": + \"object\",\n \"id\": \"MemberSnippet\",\n \"properties\": {\n \"memberDetails\": + {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": + \"Details about the member.\"\n },\n \"creatorChannelId\": {\n + \ \"type\": \"string\",\n \"description\": \"The id of the + channel that's offering memberships.\"\n },\n \"membershipsDetails\": + {\n \"description\": \"Details about the user's membership.\",\n + \ \"$ref\": \"MembershipsDetails\"\n }\n }\n },\n \"LiveChatModeratorListResponse\": + {\n \"id\": \"LiveChatModeratorListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"items\": {\n \"description\": + \"A list of moderators that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"LiveChatModerator\"\n },\n \"type\": + \"array\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#liveChatModeratorListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n + \ \"description\": \"General pagination information.\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"items\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Channel\"\n }\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"ChannelListResponse\",\n - \ \"type\": \"object\"\n },\n \"ChannelConversionPing\": {\n \"properties\": - {\n \"conversionUrl\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"context\": {\n \"enumDescriptions\": + the next page in the result set.\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"ChannelStatus\": + {\n \"properties\": {\n \"selfDeclaredMadeForKids\": {\n \"type\": + \"boolean\"\n },\n \"longUploadsStatus\": {\n \"enum\": + [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n + \ \"disallowed\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 + for more information.\"\n },\n \"madeForKids\": {\n \"type\": + \"boolean\"\n },\n \"privacyStatus\": {\n \"description\": + \"Privacy status of the channel.\",\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Defines the - context of the ping.\",\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ]\n }\n - \ },\n \"id\": \"ChannelConversionPing\",\n \"type\": \"object\",\n - \ \"description\": \"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.\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"description\": \"Information about a channel that a user subscribed - to.\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that the user subscribed to.\"\n - \ }\n }\n },\n \"VideoRating\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoRating\",\n \"description\": \"Basic details about - rating of a video.\",\n \"properties\": {\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video.\"\n },\n \"rating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"Rating of - a video.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\"\n }\n - \ }\n },\n \"VideoAbuseReportReason\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the abuse report reason.\",\n - \ \"$ref\": \"VideoAbuseReportReasonSnippet\"\n },\n \"id\": - {\n \"description\": \"The ID of this abuse report reason.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n \"type\": - \"string\",\n \"default\": \"youtube#videoAbuseReportReason\"\n }\n - \ },\n \"description\": \"A `__videoAbuseReportReason__` resource - identifies a reason that a video could be reported as abusive. Video abuse - report reasons are used with `video.ReportAbuse`.\",\n \"id\": \"VideoAbuseReportReason\"\n - \ },\n \"TestItem\": {\n \"properties\": {\n \"gaia\": {\n - \ \"format\": \"int64\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"featuredPart\": {\n \"type\": \"boolean\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"TestItem\"\n },\n - \ \"VideoSuggestions\": {\n \"type\": \"object\",\n \"description\": - \"Specifies suggestions on how to improve video content, including encoding - hints, tag suggestions, and editor suggestions.\",\n \"properties\": - {\n \"tagSuggestions\": {\n \"description\": \"A list of keyword - tags that could be added to the video's metadata to increase the likelihood - that users will locate your video when searching or browsing on YouTube.\",\n - \ \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"type\": \"array\"\n },\n \"processingWarnings\": - {\n \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ]\n },\n \"isLinked\": {\n + \ \"description\": \"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.\",\n \"type\": \"boolean\"\n }\n },\n + \ \"type\": \"object\",\n \"description\": \"JSON template for the + status part of a channel.\",\n \"id\": \"ChannelStatus\"\n },\n \"Activity\": + {\n \"description\": \"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.\",\n \"type\": \"object\",\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#activity\\\".\",\n \"default\": + \"youtube#activity\"\n },\n \"snippet\": {\n \"$ref\": + \"ActivitySnippet\",\n \"description\": \"The snippet object contains + basic details about the activity, including the activity's type and group + ID.\"\n },\n \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n + \ \"description\": \"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.\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the activity.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"Activity\"\n },\n \"IngestionInfo\": + {\n \"type\": \"object\",\n \"id\": \"IngestionInfo\",\n \"description\": + \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n + \ \"properties\": {\n \"rtmpsBackupIngestionAddress\": {\n \"type\": + \"string\",\n \"description\": \"This ingestion url may be used instead + of backupIngestionAddress in order to stream via RTMPS. Not applicable to + non-RTMP streams.\"\n },\n \"rtmpsIngestionAddress\": {\n \"description\": + \"This ingestion url may be used instead of ingestionAddress in order to stream + via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n + \ },\n \"ingestionAddress\": {\n \"type\": \"string\",\n + \ \"description\": \"The primary ingestion URL that you should use + to stream video to YouTube. You must stream video to this URL. Depending on + which application or tool you use to encode your video stream, you may need + to enter the stream URL and stream name separately or you may need to concatenate + them in the following format: *STREAM_URL/STREAM_NAME* \"\n },\n \"streamName\": + {\n \"type\": \"string\",\n \"description\": \"The stream + name that YouTube assigns to the video stream.\"\n },\n \"backupIngestionAddress\": + {\n \"description\": \"The backup ingestion URL that you should use + to stream video to YouTube. You have the option of simultaneously streaming + the content that you are sending to the ingestionAddress to this URL.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"ThirdPartyLinkSnippet\": + {\n \"id\": \"ThirdPartyLinkSnippet\",\n \"type\": \"object\",\n + \ \"description\": \"Basic information about a third party account link, + including its type and type-specific information.\",\n \"properties\": + {\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel with + a store on a merchandising platform in order to enable retail commerce capabilities + for that channel on YouTube.\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"Type of the link named after the entities that + are being linked.\",\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ]\n },\n \"channelToStoreLink\": + {\n \"description\": \"Information specific to a link between a channel + and a store on a merchandising platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n + \ }\n }\n },\n \"Comment\": {\n \"id\": \"Comment\",\n + \ \"type\": \"object\",\n \"description\": \"A *comment* represents + a single YouTube comment.\",\n \"properties\": {\n \"id\": {\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the comment.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"CommentSnippet\",\n \"description\": \"The + snippet object contains basic details about the comment.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#comment\\\".\",\n \"default\": \"youtube#comment\"\n + \ }\n }\n },\n \"VideoSuggestions\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoSuggestions\",\n \"properties\": {\n \"processingHints\": + {\n \"items\": {\n \"enumDescriptions\": [\n \"The + MP4 file is not streamable, this will slow down the processing. MOOV atom + was not found at the beginning of the file.\",\n \"Probably a + better quality version of the video exists. The video has wide screen aspect + ratio, but is not an HD video.\",\n \"Uploaded video is spherical + video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded + video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n + \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n + \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n + \ ]\n },\n \"type\": \"array\",\n \"description\": + \"A list of suggestions that may improve YouTube's ability to process the + video.\"\n },\n \"editorSuggestions\": {\n \"items\": + {\n \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n + \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"Picture + brightness levels seem off and could be corrected.\",\n \"The + video appears shaky and could be stabilized.\",\n \"Margins (mattes) + detected around the picture could be cropped.\",\n \"The audio + track appears silent and could be swapped with a better quality one.\"\n ]\n + \ },\n \"type\": \"array\",\n \"description\": \"A + list of video editing operations that might improve the video quality or playback + experience of the uploaded video.\"\n },\n \"tagSuggestions\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"VideoSuggestionsTagSuggestion\"\n },\n \"description\": + \"A list of keyword tags that could be added to the video's metadata to increase + the likelihood that users will locate your video when searching or browsing + on YouTube.\"\n },\n \"processingErrors\": {\n \"type\": + \"array\",\n \"description\": \"A list of errors that will prevent + YouTube from successfully processing the uploaded video video. These errors + indicate that, regardless of the video's current processing status, eventually, + that status will almost certainly be failed.\",\n \"items\": {\n + \ \"enumDescriptions\": [\n \"File contains audio only + (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n + \ \"Movie project file (e.g., Microsoft Windows Movie Maker project).\",\n + \ \"Other non-video file.\",\n \"Document or text + file (e.g., MS Word document).\",\n \"An archive file (e.g., + a ZIP archive).\",\n \"Unsupported spatial audio layout type.\"\n + \ ],\n \"enum\": [\n \"audioFile\",\n \"imageFile\",\n + \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n + \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n + \ ],\n \"type\": \"string\"\n }\n },\n + \ \"processingWarnings\": {\n \"items\": {\n \"type\": + \"string\",\n \"enum\": [\n \"unknownContainer\",\n + \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n + \ \"inconsistentResolution\",\n \"hasEditlist\",\n + \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n + \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n + \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n + \ \"problematicHdrLookupTable\"\n ],\n \"enumDescriptions\": [\n \"Unrecognized file format, transcoding is likely to fail.\",\n \ \"Unrecognized video codec, transcoding is likely to fail.\",\n \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n @@ -3575,2615 +3532,2652 @@ interactions: stereo mode.\",\n \"Unsupported spherical video projection type.\",\n \ \"Unsupported HDR pixel format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"type\": - \"string\"\n },\n \"description\": \"A list of reasons why - YouTube may have difficulty transcoding the uploaded video or that might result - in an erroneous transcoding. These warnings are generated before YouTube actually - processes the uploaded video file. In addition, they identify issues that - are unlikely to cause the video processing to fail but that might cause problems - such as sync issues, video artifacts, or a missing audio track.\"\n },\n - \ \"processingErrors\": {\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"File contains - audio only (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Movie project file (e.g., Microsoft Windows Movie - Maker project).\",\n \"Other non-video file.\",\n \"Document - or text file (e.g., MS Word document).\",\n \"An archive file - (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout - type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n },\n \"type\": \"array\",\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\"\n },\n \"editorSuggestions\": {\n \"items\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"Picture brightness levels seem off and could be corrected.\",\n - \ \"The video appears shaky and could be stabilized.\",\n \"Margins - (mattes) detected around the picture could be cropped.\",\n \"The - audio track appears silent and could be swapped with a better quality one.\"\n - \ ],\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ]\n },\n \"type\": \"array\",\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\"\n },\n \"processingHints\": - {\n \"items\": {\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ],\n \"enumDescriptions\": [\n \"The MP4 - file is not streamable, this will slow down the processing. MOOV atom was - not found at the beginning of the file.\",\n \"Probably a better - quality version of the video exists. The video has wide screen aspect ratio, - but is not an HD video.\",\n \"Uploaded video is spherical video.\",\n - \ \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\"\n },\n \"description\": - \"A list of suggestions that may improve YouTube's ability to process the - video.\",\n \"type\": \"array\"\n }\n },\n \"id\": - \"VideoSuggestions\"\n },\n \"ActivityListResponse\": {\n \"id\": - \"ActivityListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#activityListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Activity\"\n },\n \"type\": \"array\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"eventId\": {\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n }\n },\n \"SuperChatEventListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"items\": - {\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of Super - Chat purchases that match the request criteria.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"nextPageToken\": {\n \"description\": + \ ]\n },\n \"description\": \"A list of reasons + why YouTube may have difficulty transcoding the uploaded video or that might + result in an erroneous transcoding. These warnings are generated before YouTube + actually processes the uploaded video file. In addition, they identify issues + that are unlikely to cause the video processing to fail but that might cause + problems such as sync issues, video artifacts, or a missing audio track.\",\n + \ \"type\": \"array\"\n }\n },\n \"description\": + \"Specifies suggestions on how to improve video content, including encoding + hints, tag suggestions, and editor suggestions.\"\n },\n \"Subscription\": + {\n \"type\": \"object\",\n \"properties\": {\n \"contentDetails\": + {\n \"$ref\": \"SubscriptionContentDetails\",\n \"description\": + \"The contentDetails object contains basic statistics about the subscription.\"\n + \ },\n \"subscriberSnippet\": {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n + \ \"description\": \"The subscriberSnippet object contains basic details + about the subscriber.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the subscription, including + its title and the channel that the user subscribed to.\",\n \"$ref\": + \"SubscriptionSnippet\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#subscription\",\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the subscription.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"A *subscription* resource contains + information about a YouTube user subscription. A subscription notifies a user + when new videos are added to a channel or when another user takes one of several + actions on YouTube, such as uploading a video, rating a video, or commenting + on a video.\",\n \"id\": \"Subscription\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n + \ \"properties\": {\n \"associatedMembershipGiftingMessageId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the membership gifting message that is related to this gift membership. This + ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n + \ },\n \"memberLevelName\": {\n \"type\": \"string\",\n + \ \"description\": \"The name of the Level at which the viewer is + a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` + of the associated membership gifting message. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\"\n },\n \"gifterChannelId\": {\n \"description\": + \"The ID of the user that made the membership gifting purchase. This matches + the `snippet.authorChannelId` of the associated membership gifting message.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"VideoCategorySnippet\": + {\n \"description\": \"Basic details about a video category, such as + its localized title.\",\n \"type\": \"object\",\n \"properties\": + {\n \"channelId\": {\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n + \ \"type\": \"string\",\n \"description\": \"The YouTube + channel that created the video category.\"\n },\n \"title\": + {\n \"description\": \"The video category's title.\",\n \"type\": + \"string\"\n },\n \"assignable\": {\n \"type\": \"boolean\"\n + \ }\n },\n \"id\": \"VideoCategorySnippet\"\n },\n \"VideoAbuseReportSecondaryReason\": + {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"properties\": + {\n \"label\": {\n \"description\": \"The localized label + for this abuse report secondary reason.\",\n \"type\": \"string\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID of this abuse report secondary reason.\"\n }\n },\n \"type\": + \"object\"\n },\n \"LiveChatBan\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#liveChatBan\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n + \ \"description\": \"The `snippet` object contains basic details about + the ban.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the ban.\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"A `__liveChatBan__` resource represents a ban for + a YouTube live chat.\",\n \"id\": \"LiveChatBan\"\n },\n \"Member\": + {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#member\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\"\n + \ },\n \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the member.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"Member\",\n \"description\": + \"A *member* resource represents a member for a YouTube channel. A member + provides recurring monetary support to a creator and receives special benefits.\"\n + \ },\n \"VideoCategory\": {\n \"id\": \"VideoCategory\",\n \"type\": + \"object\",\n \"description\": \"A *videoCategory* resource identifies + a category that has been or could be associated with uploaded videos.\",\n + \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the video category.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#videoCategory\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#videoCategory\"\n },\n + \ \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": + \"The snippet object contains basic details about the video category, including + its title.\"\n }\n }\n },\n \"VideoContentDetails\": {\n + \ \"id\": \"VideoContentDetails\",\n \"properties\": {\n \"countryRestriction\": + {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The + countryRestriction object contains information about the countries where a + video is (or is not) viewable.\"\n },\n \"projection\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"rectangular\",\n + \ \"360\"\n ],\n \"description\": \"Specifies + the projection format of the video.\"\n },\n \"contentRating\": + {\n \"description\": \"Specifies the ratings that the video received + under various rating schemes.\",\n \"$ref\": \"ContentRating\"\n + \ },\n \"dimension\": {\n \"type\": \"string\",\n \"description\": + \"The value of dimension indicates whether the video is available in 3D or + in 2D.\"\n },\n \"caption\": {\n \"description\": \"The + value of captions indicates whether the video has captions or not.\",\n \"type\": + \"string\",\n \"enum\": [\n \"true\",\n \"false\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ]\n },\n \"hasCustomThumbnail\": {\n \"type\": + \"boolean\",\n \"description\": \"Indicates whether the video uploader + has provided a custom thumbnail image for the video. This property is only + visible to the video uploader.\"\n },\n \"duration\": {\n \"type\": + \"string\",\n \"description\": \"The length of the video. The tag + value is an ISO 8601 duration in the format PT#M#S, in which the letters PT + indicate that the value specifies a period of time, and the letters M and + S refer to length in minutes and seconds, respectively. The # characters preceding + the M and S letters are both integers that specify the number of minutes (or + seconds) of the video. For example, a value of PT15M51S indicates that the + video is 15 minutes and 51 seconds long.\"\n },\n \"definition\": + {\n \"type\": \"string\",\n \"enum\": [\n \"sd\",\n + \ \"hd\"\n ],\n \"enumDescriptions\": [\n \"sd\",\n + \ \"hd\"\n ],\n \"description\": \"The value of + definition indicates whether the video is available in high definition or + only in standard definition.\"\n },\n \"regionRestriction\": + {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": + \"The regionRestriction object contains information about the countries where + a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed + property or the contentDetails.regionRestriction.blocked property.\"\n },\n + \ \"licensedContent\": {\n \"description\": \"The value of + is_license_content indicates whether the video is licensed content.\",\n \"type\": + \"boolean\"\n }\n },\n \"description\": \"Details about the + content of a YouTube Video.\",\n \"type\": \"object\"\n },\n \"LiveStreamHealthStatus\": + {\n \"id\": \"LiveStreamHealthStatus\",\n \"properties\": {\n \"status\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n + \ \"revoked\"\n ],\n \"description\": \"The status + code of this stream\",\n \"type\": \"string\"\n },\n \"configurationIssues\": + {\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n + \ },\n \"description\": \"The configurations issues on this + stream\",\n \"type\": \"array\"\n },\n \"lastUpdateTimeSeconds\": + {\n \"type\": \"string\",\n \"description\": \"The last + time this status was updated (in seconds)\",\n \"format\": \"uint64\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatFanFundingEventDetails\": + {\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"properties\": + {\n \"userComment\": {\n \"description\": \"The comment added + by the user to this fan funding event.\",\n \"type\": \"string\"\n + \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the fund was made.\"\n },\n \"amountMicros\": + {\n \"format\": \"uint64\",\n \"description\": \"The amount + of the fund.\",\n \"type\": \"string\"\n },\n \"amountDisplayString\": + {\n \"description\": \"A rendered string that displays the fund amount + and currency to the user.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"VideoTopicDetails\": {\n + \ \"description\": \"Freebase topic information related to the video.\",\n + \ \"properties\": {\n \"topicCategories\": {\n \"description\": + \"A list of Wikipedia URLs that provide a high-level description of the video's + content.\",\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\"\n },\n \"relevantTopicIds\": {\n + \ \"type\": \"array\",\n \"description\": \"Similar to topic_id, + except that these topics are merely relevant to the video. These are topics + that may be mentioned in, or appear in the video. You can retrieve information + about each topic using Freebase Topic API.\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"topicIds\": {\n \"type\": + \"array\",\n \"description\": \"A list of Freebase topic IDs that + are centrally associated with the video. These are topics that are centrally + featured in the video, and it can be said that the video is mainly about each + of these. You can retrieve information about each topic using the \\u003c + a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase Topic + API.\",\n \"items\": {\n \"type\": \"string\"\n }\n + \ }\n },\n \"id\": \"VideoTopicDetails\",\n \"type\": + \"object\"\n },\n \"InvideoPosition\": {\n \"properties\": {\n + \ \"cornerPosition\": {\n \"description\": \"Describes in which + corner of the video the visual widget will appear.\",\n \"enum\": + [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n + \ \"bottomRight\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"type\": + {\n \"description\": \"Defines the position type.\",\n \"enum\": + [\n \"corner\"\n ],\n \"enumDescriptions\": [\n + \ \"\"\n ],\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"InvideoPosition\",\n \"description\": \"Describes + the spatial position of a visual widget inside a video. It is a union of various + position types, out of which only will be set one.\",\n \"type\": \"object\"\n + \ },\n \"SuperStickerMetadata\": {\n \"id\": \"SuperStickerMetadata\",\n + \ \"properties\": {\n \"stickerId\": {\n \"type\": \"string\",\n + \ \"description\": \"Unique identifier of the Super Sticker. This + is a shorter form of the alt_text that includes pack name and a recognizable + characteristic of the sticker.\"\n },\n \"altTextLanguage\": + {\n \"type\": \"string\",\n \"description\": \"Specifies + the localization language in which the alt text is returned.\"\n },\n + \ \"altText\": {\n \"description\": \"Internationalized alt + text that describes the sticker image and any animation associated with it.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"ChannelConversionPing\": {\n \"type\": \"object\",\n \"properties\": + {\n \"context\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"Defines the context of the ping.\",\n \"enum\": + [\n \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n + \ ]\n },\n \"conversionUrl\": {\n \"description\": + \"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.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"ChannelConversionPing\",\n \"description\": \"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.\"\n },\n \"CommentThreadListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#commentThreadListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n }\n - \ },\n \"id\": \"SuperChatEventListResponse\"\n },\n \"I18nLanguageSnippet\": - {\n \"id\": \"I18nLanguageSnippet\",\n \"description\": \"Basic - details about an i18n language, such as language code and human-readable name.\",\n - \ \"properties\": {\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"A short BCP-47 code that uniquely identifies - a language.\"\n },\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the language in the - language itself.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"ChannelConversionPings\": {\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"id\": \"ChannelConversionPings\",\n \"type\": - \"object\",\n \"properties\": {\n \"pings\": {\n \"type\": - \"array\",\n \"description\": \"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.\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n }\n }\n }\n },\n \"IngestionInfo\": - {\n \"description\": \"Describes information necessary for ingesting - an RTMP, HTTP, or SRT stream.\",\n \"type\": \"object\",\n \"properties\": - {\n \"rtmpsBackupIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of backupIngestionAddress in order - to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": - \"string\"\n },\n \"streamName\": {\n \"description\": - \"The stream name that YouTube assigns to the video stream.\",\n \"type\": - \"string\"\n },\n \"rtmpsIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of ingestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ },\n \"ingestionAddress\": {\n \"description\": \"The - primary ingestion URL that you should use to stream video to YouTube. You - must stream video to this URL. Depending on which application or tool you - use to encode your video stream, you may need to enter the stream URL and - stream name separately or you may need to concatenate them in the following - format: *STREAM_URL/STREAM_NAME* \",\n \"type\": \"string\"\n },\n - \ \"backupIngestionAddress\": {\n \"type\": \"string\",\n \"description\": - \"The backup ingestion URL that you should use to stream video to YouTube. - You have the option of simultaneously streaming the content that you are sending - to the ingestionAddress to this URL.\"\n }\n },\n \"id\": - \"IngestionInfo\"\n },\n \"ActivityContentDetailsPlaylistItem\": {\n - \ \"description\": \"Information about a new playlist item.\",\n \"properties\": - {\n \"playlistId\": {\n \"description\": \"The value that - YouTube uses to uniquely identify the playlist.\",\n \"type\": \"string\"\n - \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n },\n \"playlistItemId\": - {\n \"type\": \"string\",\n \"description\": \"ID of the - item within the playlist.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsPlaylistItem\"\n },\n \"PlaylistItemStatus\": - {\n \"id\": \"PlaylistItemStatus\",\n \"description\": \"Information - about the playlist item's privacy status.\",\n \"properties\": {\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"This resource's - privacy status.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"type\": \"object\"\n },\n \"TokenPagination\": {\n - \ \"id\": \"TokenPagination\",\n \"description\": \"Stub token pagination - template to suppress results.\",\n \"properties\": {},\n \"type\": - \"object\"\n },\n \"ImageSettings\": {\n \"id\": \"ImageSettings\",\n - \ \"description\": \"Branding properties for images associated with the - channel.\",\n \"properties\": {\n \"bannerExternalUrl\": {\n \"description\": - \"This is generated when a ChannelBanner.Insert request has succeeded for - the given channel.\",\n \"type\": \"string\"\n },\n \"bannerImageUrl\": - {\n \"description\": \"Banner image. Desktop size (1060x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size high resolution (2276x377).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size medium/high resolution (960x263).\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"trackingImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The URL for a 1px by 1px tracking pixel that can be used to collect statistics - for views of the channel or video pages.\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerTabletImageUrl\": - {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTvImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n },\n \"bannerTvHighImageUrl\": - {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"backgroundImageUrl\": - {\n \"description\": \"The URL for the background image shown on - the video watch page. The image should be 1200px by 615px, with a maximum - file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"largeBrandedBannerImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n - \ \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\"\n - \ },\n \"bannerTabletLowImageUrl\": {\n \"description\": - \"Banner image. Tablet size low resolution (1138x188).\",\n \"type\": - \"string\"\n },\n \"bannerMobileHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\"\n },\n \"bannerTvLowImageUrl\": {\n \"description\": - \"Banner image. TV size low resolution (854x480).\",\n \"type\": - \"string\"\n },\n \"bannerMobileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size (640x175).\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ContentRating\": - {\n \"description\": \"Ratings schemes. The country-specific ratings - are mostly for movies and shows. LINT.IfChange\",\n \"id\": \"ContentRating\",\n - \ \"properties\": {\n \"nfrcRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Bulgarian National Film Center.\",\n \"enum\": [\n \"nfrcUnspecified\",\n - \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n - \ \"nfrcX\",\n \"nfrcUnrated\"\n ]\n },\n - \ \"nbcRating\": {\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Maldives National Bureau of Classification.\",\n \"type\": - \"string\"\n },\n \"cceRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ]\n },\n \"cccRating\": {\n - \ \"description\": \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica - (Chile) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Todo espectador\",\n \"6+ - Inconveniente para menores - de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n \"18+ - - contenido excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ]\n },\n - \ \"mdaRating\": {\n \"description\": \"The video's rating - from Singapore's Media Development Authority (MDA) and, specifically, it's - Board of Film Censors (BFC).\",\n \"enum\": [\n \"mdaUnspecified\",\n - \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n - \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n - \ \"mdaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ]\n },\n \"anatelRating\": - {\n \"description\": \"The video's Anatel (Asociaci\xF3n Nacional - de Televisi\xF3n) rating for Chilean television.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ],\n \"enum\": - [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ]\n },\n \"moctwRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ],\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\"\n - \ },\n \"russiaRating\": {\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's National - Film Registry of the Russian Federation (MKRF - Russia) rating.\",\n \"type\": - \"string\"\n },\n \"bmukkRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ],\n \"description\": \"The - video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\"\n },\n \"smaisRating\": - {\n \"description\": \"The video's rating in Iceland.\",\n \"enum\": - [\n \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n - \ \"smais12\",\n \"smais14\",\n \"smais16\",\n - \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"lsfRating\": - {\n \"description\": \"The video's rating from Indonesia's Lembaga - Sensor Film.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ]\n },\n \"menaMpaaRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To - keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\"\n },\n \"csaRating\": {\n \"description\": - \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, - which rates broadcast content.\",\n \"type\": \"string\",\n \"enum\": - [\n \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n - \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n - \ \"csaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ]\n },\n \"ifcoRating\": {\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n - \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n - \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n - \ \"ifco18\",\n \"ifcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"fpbRating\": - {\n \"description\": \"The video's rating from South Africa's Film - and Publication Board.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ]\n },\n \"cncRating\": {\n \"enum\": [\n - \ \"cncUnspecified\",\n \"cncT\",\n \"cnc10\",\n - \ \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n \"cncE\",\n - \ \"cncInterdiction\",\n \"cncUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Rating system - in France - Commission de classification cinematographique\"\n },\n - \ \"eefilmRating\": {\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Estonia.\",\n - \ \"type\": \"string\"\n },\n \"icaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\"\n },\n \"kijkwijzerRating\": - {\n \"description\": \"The video's NICAM/Kijkwijzer rating from the - Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\",\n - \ \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"CommentThread\"\n },\n \"description\": + \"A list of comment threads that match the request criteria.\",\n \"type\": + \"array\"\n }\n },\n \"id\": \"CommentThreadListResponse\"\n + \ },\n \"TestItem\": {\n \"id\": \"TestItem\",\n \"properties\": + {\n \"featuredPart\": {\n \"type\": \"boolean\"\n },\n + \ \"id\": {\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"TestItemTestItemSnippet\"\n },\n \"gaia\": + {\n \"format\": \"int64\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"I18nLanguage\": {\n \"type\": + \"object\",\n \"description\": \"An *i18nLanguage* resource identifies + a UI language currently supported by YouTube.\",\n \"properties\": {\n + \ \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the i18n language.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": + \"youtube#i18nLanguage\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the i18n language, such as language code + and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n + \ }\n },\n \"id\": \"I18nLanguage\"\n },\n \"Caption\": + {\n \"id\": \"Caption\",\n \"description\": \"A *caption* resource + represents a YouTube caption track. A caption track is associated with exactly + one YouTube video.\",\n \"properties\": {\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the caption.\",\n \"$ref\": + \"CaptionSnippet\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the caption track.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.update\"\n ]\n }\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n + \ \"default\": \"youtube#caption\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"LiveChatModerator\": {\n \"description\": \"A *liveChatModerator* + resource represents a moderator for a YouTube live chat. A chat moderator + has the ability to ban/unban users from a chat, remove message, etc.\",\n + \ \"id\": \"LiveChatModerator\",\n \"type\": \"object\",\n \"properties\": + {\n \"id\": {\n \"description\": \"The ID that YouTube assigns + to uniquely identify the moderator.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveChatModerator\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": + \"LiveChatModeratorSnippet\",\n \"description\": \"The snippet object + contains basic details about the moderator.\"\n }\n }\n },\n + \ \"ChannelSectionSnippet\": {\n \"type\": \"object\",\n \"description\": + \"Basic details about a channel section, including title, style and position.\",\n + \ \"id\": \"ChannelSectionSnippet\",\n \"properties\": {\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The channel + section's title for multiple_playlists and multiple_channels.\"\n },\n + \ \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": + \"The language of the channel section's default title and description.\"\n + \ },\n \"style\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n + \ \"verticalList\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The style of the channel section.\"\n },\n + \ \"type\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"channelsectionTypeUndefined\",\n + \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n + \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n + \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n + \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n + \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n + \ \"subscriptions\"\n ],\n \"description\": \"The + type of the channel section.\"\n },\n \"position\": {\n \"description\": + \"The position of the channel section in the channel.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"localized\": + {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": + \"Localized title, read-only.\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that published + the channel section.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"LiveChatMessageListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveChatMessageListResponse\",\n \"properties\": {\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"pollingIntervalMillis\": + {\n \"type\": \"integer\",\n \"description\": \"The amount + of time the client should wait before polling again.\",\n \"format\": + \"uint32\"\n },\n \"offlineAt\": {\n \"description\": + \"The date and time when the underlying stream went offline.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n + \ },\n \"type\": \"array\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n }\n }\n },\n \"CommentThreadReplies\": + {\n \"type\": \"object\",\n \"properties\": {\n \"comments\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"Comment\"\n },\n \"description\": \"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.\"\n }\n },\n \"id\": \"CommentThreadReplies\",\n + \ \"description\": \"Comments written in (direct or indirect) reply to + the top level comment.\"\n },\n \"VideoLiveStreamingDetails\": {\n \"type\": + \"object\",\n \"id\": \"VideoLiveStreamingDetails\",\n \"description\": + \"Details about the live streaming metadata.\",\n \"properties\": {\n + \ \"actualStartTime\": {\n \"type\": \"string\",\n \"description\": + \"The time that the broadcast actually started. This value will not be available + until the broadcast begins.\",\n \"format\": \"date-time\"\n },\n + \ \"activeLiveChatId\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the currently active live chat attached to this video. This field + is filled only if the video is a currently live broadcast that has live chat. + Once the broadcast transitions to complete this field will be removed and + the live chat closed down. For persistent broadcasts that live chat id will + no longer be tied to this video but rather to the new video being displayed + at the persistent page.\"\n },\n \"concurrentViewers\": {\n + \ \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of viewers currently watching the broadcast. The property and + its value will be present if the broadcast has current viewers and the broadcast + owner has not hidden the viewcount for the video. Note that YouTube stops + tracking the number of concurrent viewers for a broadcast when the broadcast + ends. So, this property would not identify the number of viewers watching + an archived video of a live broadcast that already ended.\"\n },\n + \ \"actualEndTime\": {\n \"description\": \"The time that the + broadcast actually ended. This value will not be available until the broadcast + is over.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n + \ },\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n + \ \"description\": \"The time that the broadcast is scheduled to end. + If the value is empty or the property is not present, then the broadcast is + scheduled to contiue indefinitely.\",\n \"type\": \"string\"\n },\n + \ \"scheduledStartTime\": {\n \"description\": \"The time that + the broadcast is scheduled to begin.\",\n \"format\": \"date-time\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"MonitorStreamInfo\": + {\n \"properties\": {\n \"embedHtml\": {\n \"type\": + \"string\",\n \"description\": \"HTML code that embeds a player that + plays the monitor stream.\"\n },\n \"enableMonitorStream\": + {\n \"description\": \"This value determines whether the monitor + stream is enabled for the broadcast. If the monitor stream is enabled, then + YouTube will broadcast the event content on a special stream intended only + for the broadcaster's consumption. The broadcaster can use the stream to review + the event content and also to identify the optimal times to insert cuepoints. + You need to set this value to true if you intend to have a broadcast delay + for your event. *Note:* This property cannot be updated once the broadcast + is in the testing or live state.\",\n \"type\": \"boolean\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n }\n },\n \"broadcastStreamDelayMs\": + {\n \"description\": \"If you have set the enableMonitorStream property + to true, then this property determines the length of the live broadcast delay.\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n }\n },\n \"description\": \"Settings and Info + of the monitor stream\",\n \"type\": \"object\",\n \"id\": \"MonitorStreamInfo\"\n + \ },\n \"ChannelContentDetails\": {\n \"description\": \"Details + about the content of a channel.\",\n \"type\": \"object\",\n \"id\": + \"ChannelContentDetails\",\n \"properties\": {\n \"relatedPlaylists\": + {\n \"type\": \"object\",\n \"properties\": {\n \"favorites\": + {\n \"description\": \"The ID of the playlist that contains the + channel\\\"s favorite videos. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\",\n \"type\": \"string\"\n + \ },\n \"watchLater\": {\n \"description\": + \"The ID of the playlist that contains the channel\\\"s watch later playlist. + Use the playlistItems.insert and playlistItems.delete to add or remove items + from that list.\",\n \"type\": \"string\"\n },\n \"watchHistory\": + {\n \"description\": \"The ID of the playlist that contains the + channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\",\n \"type\": \"string\"\n + \ },\n \"likes\": {\n \"description\": \"The + ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert + and playlistItems.delete to add or remove items from that list.\",\n \"type\": + \"string\"\n },\n \"uploads\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the playlist that + contains the channel\\\"s uploaded videos. Use the videos.insert method to + upload new videos and the videos.delete method to delete previously uploaded + videos.\"\n }\n }\n }\n }\n },\n \"LiveBroadcastContentDetails\": + {\n \"id\": \"LiveBroadcastContentDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"latencyPreference\": {\n \"type\": + \"string\",\n \"description\": \"If both this and enable_low_latency + are set, they must match. LATENCY_NORMAL should match enable_low_latency=false + LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should + have enable_low_latency omitted.\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n + \ \"normal\",\n \"low\",\n \"ultraLow\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"Best + for: highest quality viewer playbacks and higher resolutions.\",\n \"Best + for: near real-time interaction, with minimal playback buffering.\",\n \"Best + for: real-time interaction Does not support: Closed captions, 1440p, and 4k + resolutions\"\n ]\n },\n \"monitorStream\": {\n \"description\": + \"The monitorStream object contains information about the monitor stream, + which the broadcaster can use to review the event content before the broadcast + stream is shown publicly.\",\n \"$ref\": \"MonitorStreamInfo\"\n + \ },\n \"recordFromStart\": {\n \"description\": \"Automatically + start recording after the event goes live. The default value for this property + is true. *Important:* You must also set the enableDvr property's value to + true if you want the playback to be available immediately after the broadcast + ends. If you set this property's value to true but do not also set the enableDvr + property to true, there may be a delay of around one day before the archived + video will be available for playback.\",\n \"type\": \"boolean\"\n + \ },\n \"enableAutoStop\": {\n \"description\": \"This + setting indicates whether auto stop is enabled for this broadcast. The default + value for this property is false. This setting can only be used by Events.\",\n + \ \"type\": \"boolean\"\n },\n \"closedCaptionsType\": + {\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n + \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n + \ \"closedCaptionsEmbedded\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"startWithSlate\": + {\n \"description\": \"This setting indicates whether the broadcast + should automatically begin with an in-stream slate when you update the broadcast's + status to live. After updating the status, you then need to send a liveCuepoints.insert + request that sets the cuepoint's eventState to end to remove the in-stream + slate and make your broadcast stream visible to viewers.\",\n \"type\": + \"boolean\"\n },\n \"enableAutoStart\": {\n \"type\": + \"boolean\",\n \"description\": \"This setting indicates whether + auto start is enabled for this broadcast. The default value for this property + is false. This setting can only be used by Events.\"\n },\n \"enableLowLatency\": + {\n \"description\": \"Indicates whether this broadcast has low latency + enabled.\",\n \"type\": \"boolean\"\n },\n \"enableContentEncryption\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether YouTube should enable content encryption for the broadcast.\"\n + \ },\n \"mesh\": {\n \"format\": \"byte\",\n \"type\": + \"string\",\n \"description\": \"The mesh for projecting the video + if projection is mesh. The mesh value must be a UTF-8 string containing the + base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC specification + for an mshp box, excluding the box size and type but including the following + four reserved zero bytes for the version and flags.\"\n },\n \"stereoLayout\": + {\n \"description\": \"The 3D stereo layout of this broadcast. This + defaults to mono.\",\n \"enum\": [\n \"stereoLayoutUnspecified\",\n + \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"enableDvr\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting determines whether viewers can access + DVR controls while watching the video. DVR controls enable the viewer to control + the video playback experience by pausing, rewinding, or fast forwarding content. + The default value for this property is true. *Important:* You must set the + value to true and also set the enableArchive property's value to true if you + want to make playback available immediately after the broadcast ends.\"\n + \ },\n \"boundStreamLastUpdateTimeMs\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time that the live stream referenced by boundStreamId was last + updated.\"\n },\n \"projection\": {\n \"description\": + \"The projection format of this broadcast. This defaults to rectangular.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"projectionUnspecified\",\n + \ \"rectangular\",\n \"360\",\n \"mesh\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"boundStreamId\": + {\n \"type\": \"string\",\n \"description\": \"This value + uniquely identifies the live stream bound to the broadcast.\"\n },\n + \ \"enableEmbed\": {\n \"type\": \"boolean\",\n \"description\": + \"This setting indicates whether the broadcast video can be played in an embedded + player. If you choose to archive the video (using the enableArchive property), + this setting will also apply to the archived video.\"\n },\n \"enableClosedCaptions\": + {\n \"description\": \"This setting indicates whether HTTP POST closed + captioning is enabled for this broadcast. The ingestion URL of the closed + captions is returned through the liveStreams API. This is mutually exclusive + with using the closed_captions_type property, and is equivalent to setting + closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n \"type\": + \"boolean\"\n }\n },\n \"description\": \"Detailed settings + of a broadcast.\"\n },\n \"SuperChatEventListResponse\": {\n \"properties\": + {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#superChatEventListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"SuperChatEvent\"\n },\n \"description\": + \"A list of Super Chat purchases that match the request criteria.\",\n \"type\": + \"array\"\n }\n },\n \"id\": \"SuperChatEventListResponse\",\n + \ \"type\": \"object\"\n },\n \"ThumbnailSetResponse\": {\n \"id\": + \"ThumbnailSetResponse\",\n \"type\": \"object\",\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"description\": \"A list of thumbnails.\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n + \ \"default\": \"youtube#thumbnailSetResponse\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"LiveChatMembershipGiftingDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"giftMembershipsLevelName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the level of the gift memberships purchased by the user. The Level names + are defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\"\n },\n \"giftMembershipsCount\": + {\n \"format\": \"int32\",\n \"description\": \"The number + of gift memberships purchased by the user.\",\n \"type\": \"integer\"\n + \ }\n },\n \"id\": \"LiveChatMembershipGiftingDetails\"\n + \ },\n \"AbuseReport\": {\n \"type\": \"object\",\n \"properties\": + {\n \"relatedEntities\": {\n \"items\": {\n \"$ref\": + \"RelatedEntity\"\n },\n \"type\": \"array\"\n },\n + \ \"subject\": {\n \"$ref\": \"Entity\"\n },\n \"description\": + {\n \"type\": \"string\"\n },\n \"abuseTypes\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"AbuseType\"\n }\n }\n },\n \"id\": \"AbuseReport\"\n + \ },\n \"ChannelSectionLocalization\": {\n \"properties\": {\n \"title\": + {\n \"description\": \"The localized strings for channel section's + title.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"ChannelSectionLocalization\",\n \"description\": \"ChannelSection localization + setting\",\n \"type\": \"object\"\n },\n \"VideoGetRatingResponse\": + {\n \"properties\": {\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#videoGetRatingResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"VideoRating\"\n },\n \"description\": + \"A list of ratings that match the request criteria.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"VideoGetRatingResponse\"\n },\n \"ContentRating\": {\n \"type\": + \"object\",\n \"description\": \"Ratings schemes. The country-specific + ratings are mostly for movies and shows. LINT.IfChange\",\n \"properties\": + {\n \"acbRating\": {\n \"enum\": [\n \"acbUnspecified\",\n + \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n + \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n + \ \"acbR18plus\",\n \"acbUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"E\",\n + \ \"Programs that have been given a P classification by the Australian + Communications and Media Authority. These programs are intended for preschool + children.\",\n \"Programs that have been given a C classification + by the Australian Communications and Media Authority. These programs are intended + for children (other than preschool children) who are younger than 14 years + of age.\",\n \"G\",\n \"PG\",\n \"M\",\n + \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n + \ \"description\": \"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.\"\n },\n \"kijkwijzerRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"AL\",\n \"6\",\n \"9\",\n \"12\",\n + \ \"16\",\n \"\",\n \"\"\n ],\n \"description\": + \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de + Classificatie van Audiovisuele Media (Netherlands).\",\n \"enum\": + [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"medietilsynetRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"description\": \"The video's rating from Medietilsynet, the Norwegian - Media Authority.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ]\n },\n \"smsaRating\": {\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"All ages\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ]\n },\n \"cicfRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Commission de Contr\xF4le - des Films (Belgium).\",\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ]\n },\n \"nbcplRating\": - {\n \"description\": \"The video's rating in Poland.\",\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"mcstRating\": {\n \"description\": - \"The video's rating system for Vietnam - MCST\",\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ]\n },\n \"fpbRatingReasons\": {\n \"description\": - \"Reasons that explain why the video received its FPB (South Africa) rating.\",\n - \ \"items\": {\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n + \ ]\n },\n \"fpbRating\": {\n \"enum\": [\n + \ \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n + \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n + \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n + \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n + \ ],\n \"description\": \"The video's rating from South Africa's + Film and Publication Board.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A\",\n \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n + \ \"13\",\n \"16\",\n \"18\",\n \"X18\",\n + \ \"XX\",\n \"\",\n \"10\"\n ],\n + \ \"type\": \"string\"\n },\n \"rtcRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n + \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n + \ ],\n \"description\": \"The video's General Directorate + of Radio, Television and Cinematography (Mexico) rating.\",\n \"enum\": + [\n \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n + \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n + \ \"rtcUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"fpbRatingReasons\": {\n \"description\": \"Reasons + that explain why the video received its FPB (South Africa) rating.\",\n \"type\": + \"array\",\n \"items\": {\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"South Africa rating content descriptors.\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"type\": - \"array\"\n },\n \"egfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Egypt.\"\n },\n - \ \"mtrcbRating\": {\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Movie - and Television Review and Classification Board (Philippines).\",\n \"type\": - \"string\"\n },\n \"mocRating\": {\n \"enum\": [\n - \ \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\"\n },\n \"czfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in the Czech - Republic.\",\n \"type\": \"string\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ]\n },\n - \ \"fcbmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG13\",\n \"P13\",\n \"18\",\n - \ \"18SX\",\n \"18PA\",\n \"18SG\",\n \"18PL\",\n - \ \"\"\n ],\n \"enum\": [\n \"fcbmUnspecified\",\n - \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n - \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n - \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n - \ ],\n \"description\": \"The video's rating from Malaysia's - Film Censorship Board.\",\n \"type\": \"string\"\n },\n \"bfvcRating\": - {\n \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Thailand's Board of Film - and Video Censors.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"E\",\n \"13\",\n \"15\",\n - \ \"18\",\n \"20\",\n \"B\",\n \"\"\n - \ ]\n },\n \"eirinRating\": {\n \"enum\": [\n - \ \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n + \ \"\"\n ],\n \"type\": \"string\"\n }\n + \ },\n \"eefilmRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n + \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n + \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n + \ \"eefilmK16\",\n \"eefilmUnrated\"\n ],\n + \ \"description\": \"The video's rating in Estonia.\",\n \"enumDescriptions\": + [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n + \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n + \ \"K-16\",\n \"\"\n ]\n },\n \"cscfRating\": + {\n \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n + \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n + \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\"\n - \ },\n \"resorteviolenciaRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Venezuela.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ],\n \"enum\": - [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ]\n },\n \"djctqRatingReasons\": {\n \"type\": - \"array\",\n \"items\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"Brazil rating content descriptors. See - http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ],\n \"enum\": [\n - \ \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ],\n \"type\": - \"string\"\n },\n \"description\": \"Reasons that explain - why the video received its DJCQT (Brazil) rating.\"\n },\n \"fskRating\": - {\n \"description\": \"The video's Freiwillige Selbstkontrolle der - Filmwirtschaft (FSK - Germany) rating.\",\n \"enum\": [\n \"fskUnspecified\",\n - \ \"fsk0\",\n \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n - \ \"fsk18\",\n \"fskUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"nkclvRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n + \"The video's rating from Luxembourg's Commission de surveillance de la classification + des films (CSCF).\",\n \"enumDescriptions\": [\n \"\",\n + \ \"AL\",\n \"A\",\n \"6\",\n \"9\",\n + \ \"12\",\n \"16\",\n \"18\",\n \"\"\n + \ ]\n },\n \"mccaaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n + \ \"12\",\n \"14 - this rating was removed from the new + classification structure introduced in 2013.\",\n \"15\",\n \"16 + - this rating was removed from the new classification structure introduced + in 2013.\",\n \"18\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from Malta's + Film Age-Classification Board.\",\n \"enum\": [\n \"mccaaUnspecified\",\n + \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n + \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n + \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n + \ ]\n },\n \"cnaRating\": {\n \"description\": + \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI + (CNA).\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"18+\",\n \"\"\n ],\n + \ \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n + \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n + \ \"cnaUnrated\"\n ]\n },\n \"egfilmRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"GN\",\n \"18\",\n \"BN\",\n \"\"\n + \ ],\n \"description\": \"The video's rating in Egypt.\",\n + \ \"enum\": [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n + \ \"egfilm18\",\n \"egfilmBn\",\n \"egfilmUnrated\"\n + \ ]\n },\n \"moctwRating\": {\n \"description\": + \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n + \ \"R-12\",\n \"R-15\"\n ],\n \"enum\": + [\n \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n + \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n + \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"type\": + \"string\"\n },\n \"nkclvRating\": {\n \"enum\": [\n + \ \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n + \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n + \ \"nkclvUnrated\"\n ],\n \"description\": \"The + video's rating from the Nacion\xE3lais Kino centrs (National Film Centre of + Latvia).\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ]\n },\n \"catvRating\": {\n \"enum\": [\n - \ \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"C\",\n - \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n - \ \"18+\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"catvfrRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ],\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"incaaRating\": - {\n \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n - \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n - \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"description\": - \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ]\n },\n \"mccypRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ]\n },\n \"kfcbRating\": - {\n \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n - \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n - \ \"kfcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"type\": - \"string\"\n },\n \"chvrsRating\": {\n \"enum\": [\n - \ \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Canadian Home Video - Rating System (CHVRS) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"14A\",\n \"18A\",\n - \ \"R\",\n \"E\",\n \"\"\n ]\n },\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"mtrcbRating\": {\n \"description\": \"The video's rating + from the Movie and Television Review and Classification Board (Philippines).\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n + \ \"X\",\n \"\"\n ],\n \"enum\": [\n + \ \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n + \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n + \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"czfilmRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n + \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n + \ \"czfilmUnrated\"\n ],\n \"description\": \"The + video's rating in the Czech Republic.\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n + \ \"18\",\n \"\"\n ]\n },\n \"skfilmRating\": + {\n \"description\": \"The video's rating in Slovakia.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n + \ ],\n \"enum\": [\n \"skfilmUnspecified\",\n + \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n + \ \"skfilmP8\",\n \"skfilmUnrated\"\n ]\n },\n \ \"nfvcbRating\": {\n \"enumDescriptions\": [\n \"\",\n \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n \ \"15\",\n \"18\",\n \"RE\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Nigeria's - National Film and Video Censors Board.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n + \ ],\n \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ]\n },\n \"fmocRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"nfvcbUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from Nigeria's National Film + and Video Censors Board.\"\n },\n \"incaaRating\": {\n \"enum\": + [\n \"incaaUnspecified\",\n \"incaaAtp\",\n \"incaaSam13\",\n + \ \"incaaSam16\",\n \"incaaSam18\",\n \"incaaC\",\n + \ \"incaaUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"ATP (Apta + para todo publico)\",\n \"13 (Solo apta para mayores de 13 a\xF1os)\",\n + \ \"16 (Solo apta para mayores de 16 a\xF1os)\",\n \"18 + (Solo apta para mayores de 18 a\xF1os)\",\n \"X (Solo apta para + mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n \"\"\n + \ ],\n \"description\": \"The video's INCAA (Instituto Nacional + de Cine y Artes Audiovisuales - Argentina) rating.\"\n },\n \"ytRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"description\": \"A rating that YouTube uses to identify + age-restricted content.\",\n \"type\": \"string\",\n \"enum\": + [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ]\n + \ },\n \"nbcplRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n + \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n + \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + in Poland.\"\n },\n \"mdaRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n + \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n + \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n + \ \"R21\",\n \"\"\n ],\n \"description\": + \"The video's rating from Singapore's Media Development Authority (MDA) and, + specifically, it's Board of Film Censors (BFC).\"\n },\n \"grfilmRating\": + {\n \"description\": \"The video's rating in Greece.\",\n \"enum\": + [\n \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n + \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n + \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"K\",\n + \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n + \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"chvrsRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n + \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n + \ ],\n \"description\": \"The video's Canadian Home Video + Rating System (CHVRS) rating.\",\n \"type\": \"string\",\n \"enum\": + [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n + \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n + \ \"chvrsE\",\n \"chvrsUnrated\"\n ]\n },\n + \ \"mocRating\": {\n \"enum\": [\n \"mocUnspecified\",\n + \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n + \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n + \ \"mocUnrated\"\n ],\n \"description\": \"The + video's Ministerio de Cultura (Colombia) rating.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"E\",\n + \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n + \ ]\n },\n \"oflcRating\": {\n \"enum\": [\n + \ \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n + \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n + \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n + \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's Office of Film and Literature Classification (OFLC - New Zealand) + rating.\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n + \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n + \ \"RP16\",\n \"RP18\"\n ]\n },\n \"csaRating\": + {\n \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n + \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n + \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n + \ \"description\": \"The video's rating from France's Conseil sup\xE9rieur + de l\u2019audiovisuel, which rates broadcast content.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"T\",\n \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ],\n \"enum\": [\n - \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\"\n },\n \"cnaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"description\": - \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\",\n \"type\": \"string\"\n },\n \"ytRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"A rating that - YouTube uses to identify age-restricted content.\",\n \"enum\": [\n - \ \"ytUnspecified\",\n \"ytAgeRestricted\"\n ]\n - \ },\n \"cbfcRating\": {\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Central Board of Film Certification - (CBFC - India) rating.\"\n },\n \"nmcRating\": {\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\",\n - \ \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ]\n - \ },\n \"bbfcRating\": {\n \"description\": \"The video's - British Board of Film Classification (BBFC) rating.\",\n \"enum\": - [\n \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ]\n },\n \"rteRating\": {\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"rteUnspecified\",\n - \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n - \ \"rteUnrated\"\n ]\n },\n \"skfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ],\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Slovakia.\",\n \"type\": \"string\"\n },\n - \ \"mekuRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"description\": - \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti - (National Audiovisual Institute).\"\n },\n \"fcoRating\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"I\",\n \"IIA\",\n \"IIB\",\n \"II\",\n - \ \"III\",\n \"\"\n ],\n \"description\": - \"The video's rating from Hong Kong's Office for Film, Newspaper and Article - Administration.\",\n \"enum\": [\n \"fcoUnspecified\",\n - \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n - \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n - \ ]\n },\n \"kmrbRating\": {\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enum\": [\n - \ \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ]\n },\n \"tvpgRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"description\": \"The video's TV - Parental Guidelines (TVPG) rating.\",\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ]\n },\n \"cscfRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Luxembourg's Commission - de surveillance de la classification des films (CSCF).\",\n \"type\": - \"string\",\n \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ]\n },\n \"mpaaRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Motion Picture Association of America - (MPAA) rating.\",\n \"enum\": [\n \"mpaaUnspecified\",\n - \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n - \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n - \ \"mpaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ]\n },\n \"mccaaRating\": {\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"grfilmRating\": {\n \"description\": \"The - video's rating in Greece.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n - \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n - \ ],\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"ilfilmRating\": {\n - \ \"description\": \"The video's rating in Israel.\",\n \"enum\": - [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n - \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ],\n \"type\": \"string\",\n + \ \"Interdiction\",\n \"\"\n ]\n },\n + \ \"cbfcRating\": {\n \"description\": \"The video's Central + Board of Film Certification (CBFC - India) rating.\",\n \"enum\": + [\n \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n + \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n + \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n + \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"ilfilmRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"ilfilmUnspecified\",\n + \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n + \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n + \ ],\n \"description\": \"The video's rating in Israel.\",\n \ \"enumDescriptions\": [\n \"\",\n \"AA\",\n \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"oflcRating\": {\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\",\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"type\": \"string\",\n + \ \"\"\n ]\n },\n \"russiaRating\": {\n \"description\": + \"The video's National Film Registry of the Russian Federation (MKRF - Russia) + rating.\",\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n + \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n + \ \"\"\n ],\n \"enum\": [\n \"russiaUnspecified\",\n + \ \"russia0\",\n \"russia6\",\n \"russia12\",\n + \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"cceRating\": + {\n \"description\": \"The video's rating from Portugal's Comiss\xE3o + de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n + \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n + \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"4\",\n + \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\",\n \"14\"\n ]\n },\n \"kfcbRating\": + {\n \"description\": \"The video's rating from the Kenya Film Classification + Board.\",\n \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n + \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n + \ \"kfcbUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"GE\",\n + \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n + \ ]\n },\n \"djctqRatingReasons\": {\n \"description\": + \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\",\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n + \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n + \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n + \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n + \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n + \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"Brazil rating content descriptors. See http://go/brazilratings + section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema + (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n + \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo + Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas + L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n + \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos + Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting + content)\"\n ]\n }\n },\n \"fcbmRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n + \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n + \ ],\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n + \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n + \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n + \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from Malaysia's + Film Censorship Board.\"\n },\n \"smaisRating\": {\n \"enum\": + [\n \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n + \ \"smais12\",\n \"smais14\",\n \"smais16\",\n + \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"description\": + \"The video's rating in Iceland.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"L\",\n \"7\",\n \"12\",\n \"14\",\n + \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"fmocRating\": {\n \"description\": + \"This property has been deprecated. Use the contentDetails.contentRating.cncRating + instead.\",\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n + \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n + \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"\"\n + \ ]\n },\n \"bfvcRating\": {\n \"description\": + \"The video's rating from Thailand's Board of Film and Video Censors.\",\n \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ]\n },\n \"djctqRating\": - {\n \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ],\n \"description\": \"The - video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n + \ \"20\",\n \"B\",\n \"\"\n ],\n + \ \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n + \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n + \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n + \ \"bfvcUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"cncRating\": {\n \"enum\": [\n \"cncUnspecified\",\n + \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n + \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n + \ \"cncUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n + \ \"\"\n ],\n \"description\": \"Rating system + in France - Commission de classification cinematographique\",\n \"type\": + \"string\"\n },\n \"lsfRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n + \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n + \ \"21\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from Indonesia's Lembaga Sensor + Film.\",\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n + \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n + \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n + \ ]\n },\n \"rcnofRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n + \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n + \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Hungarian + Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"rtcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n - \ \"D\",\n \"\"\n ],\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\",\n \"enum\": [\n \"rtcUnspecified\",\n - \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n - \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"chfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"pefilmRating\": + \ \"\",\n \"\"\n ]\n },\n \"medietilsynetRating\": + {\n \"description\": \"The video's rating from Medietilsynet, the + Norwegian Media Authority.\",\n \"type\": \"string\",\n \"enum\": + [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n + \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n + \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n + \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"\"\n + \ ]\n },\n \"smsaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from Statens medier\xE5d (Sweden's + National Media Council).\",\n \"enum\": [\n \"smsaUnspecified\",\n + \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n + \ \"smsa15\",\n \"smsaUnrated\"\n ]\n },\n + \ \"catvRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n + \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"catvUnspecified\",\n + \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n + \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n + \ \"catvUnrated\",\n \"catvE\"\n ],\n \"description\": + \"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.\"\n },\n \"pefilmRating\": {\n \"enumDescriptions\": [\n \"\",\n \"PT\",\n \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n \ ],\n \"enum\": [\n \"pefilmUnspecified\",\n \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"type\": \"string\",\n \"description\": \"The video's rating in Peru.\"\n - \ },\n \"mpaatRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"GB\",\n \"RB\"\n ],\n - \ \"description\": \"The rating system for trailer, DVD, and Ad in - the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ]\n },\n - \ \"ecbmctRating\": {\n \"enum\": [\n \"ecbmctUnspecified\",\n + \ },\n \"mcstRating\": {\n \"description\": \"The video's + rating system for Vietnam - MCST\",\n \"enumDescriptions\": [\n \"\",\n + \ \"P\",\n \"0\",\n \"C13\",\n \"C16\",\n + \ \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n \"\"\n + \ ],\n \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n + \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n + \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n + \ \"mcstUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"eirinRating\": {\n \"description\": \"The video's + Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n + \ \"R18+\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n + \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n + \ \"eirinUnrated\"\n ]\n },\n \"bbfcRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"U\",\n \"PG\",\n \"12A\",\n \"12\",\n + \ \"15\",\n \"18\",\n \"R18\",\n \"\"\n + \ ],\n \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n + \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n + \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n + \ \"bbfcUnrated\"\n ],\n \"description\": \"The + video's British Board of Film Classification (BBFC) rating.\"\n },\n + \ \"mpaatRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"GB\",\n \"RB\"\n ],\n \"description\": + \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n + \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n + \ \"mpaatRb\"\n ],\n \"type\": \"string\"\n },\n + \ \"cccRating\": {\n \"description\": \"The video's Consejo + de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"Todo espectador\",\n \"6+ - + Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n + \ \"18+ - contenido excesivamente violento\",\n \"18+ + - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"enum\": + [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n + \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n + \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"chfilmRating\": {\n \"description\": + \"The video's rating in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n + \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n + \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"0\",\n + \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"anatelRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n + \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n + \ \"\"\n ],\n \"description\": \"The video's Anatel + (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\",\n + \ \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n + \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n + \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n + \ \"anatelUnrated\"\n ]\n },\n \"mpaaRating\": + {\n \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n + \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n + \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n + \ \"! X\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's Motion Picture Association + of America (MPAA) rating.\"\n },\n \"kmrbRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 + \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n + \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) + rating. The KMRB rates videos in South Korea.\",\n \"enum\": [\n + \ \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n + \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n + \ \"kmrbUnrated\"\n ]\n },\n \"nfrcRating\": + {\n \"description\": \"The video's rating from the Bulgarian National + Film Center.\",\n \"enum\": [\n \"nfrcUnspecified\",\n + \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n + \ \"nfrcX\",\n \"nfrcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n + \ \"D\",\n \"X\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"icaaRating\": {\n \"enum\": [\n + \ \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n + \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n + \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n + \ ],\n \"description\": \"The video's Instituto de la Cinematograf\xEDa + y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n + \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"mekuRating\": {\n \"enum\": [\n \"mekuUnspecified\",\n + \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n + \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n + \ ],\n \"description\": \"The video's rating from Finland's + Kansallinen Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"S\",\n \"7\",\n \"12\",\n \"16\",\n + \ \"18\",\n \"\"\n ]\n },\n \"mibacRating\": + {\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n + \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n + \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n + \ \"mibacUnrated\"\n ],\n \"description\": \"The + video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali e + del Turismo (Italy).\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"rteRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n + \ \"MA\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs + \xC9ireann.\",\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n + \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n + \ ]\n },\n \"catvfrRating\": {\n \"enum\": + [\n \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n + \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n + \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n + \ \"\",\n \"\"\n ]\n },\n \"fcoRating\": + {\n \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n + \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n + \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from Hong Kong's + Office for Film, Newspaper and Article Administration.\",\n \"enumDescriptions\": + [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n + \ \"II\",\n \"III\",\n \"\"\n ]\n + \ },\n \"nmcRating\": {\n \"enum\": [\n \"nmcUnspecified\",\n + \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n + \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n + \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The National Media Council ratings + system for United Arab Emirates.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"PG-13\",\n \"PG-15\",\n + \ \"15+\",\n \"18+\",\n \"18TC\",\n \"\"\n + \ ]\n },\n \"menaMpaaRating\": {\n \"enum\": + [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n + \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"R\",\n \"To keep the same enum values as MPAA's items + have, skip NC_17.\"\n ],\n \"description\": \"The rating + system for MENA countries, a clone of MPAA. It is needed to prevent titles + go live w/o additional QC check, since some of them can be inappropriate for + the countries at all. See b/33408548 for more details.\"\n },\n \"mccypRating\": + {\n \"description\": \"The video's rating from the Danish Film Institute's + (Det Danske Filminstitut) Media Council for Children and Young People.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"7\",\n \"11\",\n \"15\",\n \"\"\n + \ ],\n \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n + \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n + \ \"mccypUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"bmukkRating\": {\n \"enum\": [\n \"bmukkUnspecified\",\n + \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n + \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n + \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Unrestricted\",\n \"6+\",\n + \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n + \ \"16+\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from the Austrian + Board of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst + und Kultur).\"\n },\n \"nbcRating\": {\n \"description\": + \"The video's rating from the Maldives National Bureau of Classification.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n + \ \"18+R\",\n \"PU\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"nbcUnspecified\",\n + \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n + \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n + \ \"nbcPu\",\n \"nbcUnrated\"\n ]\n },\n + \ \"cicfRating\": {\n \"description\": \"The video's rating + from the Commission de Contr\xF4le des Films (Belgium).\",\n \"enum\": + [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n + \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"ecbmctRating\": {\n \"description\": \"Rating system in + Turkey - Evaluation and Classification Board of the Ministry of Culture and + Tourism\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n + \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n + \ ],\n \"enum\": [\n \"ecbmctUnspecified\",\n \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Rating system in Turkey - Evaluation and Classification Board of the Ministry - of Culture and Tourism\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"7A\",\n \"7+\",\n \"13A\",\n - \ \"13+\",\n \"15A\",\n \"15+\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"rcnofRating\": {\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\",\n \"enumDescriptions\": [\n \"\",\n + \ ],\n \"type\": \"string\"\n },\n \"djctqRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"L\",\n + \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n + \ \"18\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ]\n },\n \"mibacRating\": {\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\",\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"acbRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"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.\",\n - \ \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ]\n },\n \"agcomRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o + e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n + \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n + \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n + \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n + \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n + \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n + \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n + \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n + \ \"djctqUnrated\"\n ]\n },\n \"agcomRating\": + {\n \"type\": \"string\",\n \"description\": \"The video's + rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n + \ \"enumDescriptions\": [\n \"\",\n \"T\",\n \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ],\n \"description\": \"The video's rating from Italy's - Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessage\": - {\n \"description\": \"A *liveChatMessage* resource represents a chat - message in a YouTube Live Chat.\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n - \ \"default\": \"youtube#liveChatMessage\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\"\n },\n - \ \"authorDetails\": {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n - \ \"description\": \"The authorDetails object contains basic details - about the user that posted this message.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"LiveChatMessage\"\n },\n - \ \"VideoListResponse\": {\n \"properties\": {\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"eventId\": {\n - \ \"type\": \"string\",\n \"description\": \"Serialized EventId - of the request which produced this response.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Video\"\n },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoListResponse\"\n },\n \"SuperChatEventSnippet\": {\n \"type\": - \"object\",\n \"id\": \"SuperChatEventSnippet\",\n \"properties\": - {\n \"amountMicros\": {\n \"format\": \"uint64\",\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\",\n \"type\": \"string\"\n },\n \"isSuperStickerEvent\": - {\n \"description\": \"True if this event is a Super Sticker event.\",\n - \ \"type\": \"boolean\"\n },\n \"commentText\": {\n - \ \"type\": \"string\",\n \"description\": \"The text contents - of the comment left by the user.\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n },\n \"displayString\": {\n \"description\": - \"A rendered string that displays the purchase amount and currency (e.g., - \\\"$1.00\\\"). The string is rendered for the given language.\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"Channel id where the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"createdAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the event occurred.\",\n - \ \"type\": \"string\"\n },\n \"messageType\": {\n \"type\": - \"integer\",\n \"description\": \"The tier for the paid message, - which is based on the amount of money spent to purchase the message.\",\n - \ \"format\": \"uint32\"\n },\n \"supporterDetails\": - {\n \"description\": \"Details about the supporter.\",\n \"$ref\": - \"ChannelProfileDetails\"\n }\n }\n },\n \"PropertyValue\": - {\n \"type\": \"object\",\n \"properties\": {\n \"value\": - {\n \"description\": \"The property's value.\",\n \"type\": - \"string\"\n },\n \"property\": {\n \"description\": - \"A property.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"PropertyValue\",\n \"description\": \"A pair Property / Value.\"\n - \ },\n \"LiveBroadcast\": {\n \"properties\": {\n \"snippet\": + \ ]\n },\n \"tvpgRating\": {\n \"description\": + \"The video's TV Parental Guidelines (TVPG) rating.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n + \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n + \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n + \ ],\n \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n + \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n + \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n + \ \"tvpgUnrated\"\n ]\n },\n \"fskRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"FSK + 0\",\n \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n + \ \"FSK 18\",\n \"\"\n ],\n \"description\": + \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) + rating.\",\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n + \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n + \ \"fskUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"resorteviolenciaRating\": {\n \"description\": + \"The video's rating in Venezuela.\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n + \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n + \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"ifcoRating\": {\n \"enum\": [\n \"ifcoUnspecified\",\n + \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n + \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n + \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n + \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"description\": + \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See + the IFCO website for more information.\"\n }\n },\n \"id\": + \"ContentRating\"\n },\n \"VideoFileDetailsAudioStream\": {\n \"description\": + \"Information about an audio stream.\",\n \"type\": \"object\",\n \"properties\": + {\n \"vendor\": {\n \"description\": \"A value that uniquely + identifies a video vendor. Typically, the value is a four-letter vendor code.\",\n + \ \"type\": \"string\"\n },\n \"codec\": {\n \"description\": + \"The audio codec that the stream uses.\",\n \"type\": \"string\"\n + \ },\n \"channelCount\": {\n \"type\": \"integer\",\n + \ \"description\": \"The number of audio channels that the stream + contains.\",\n \"format\": \"uint32\"\n },\n \"bitrateBps\": + {\n \"type\": \"string\",\n \"description\": \"The audio + stream's bitrate, in bits per second.\",\n \"format\": \"uint64\"\n + \ }\n },\n \"id\": \"VideoFileDetailsAudioStream\"\n },\n + \ \"VideoFileDetails\": {\n \"description\": \"Describes original video + file properties, including technical details about audio and video streams, + but also metadata information like content length, digitization time, or geotagging + information.\",\n \"id\": \"VideoFileDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"fileType\": {\n \"enum\": [\n + \ \"video\",\n \"audio\",\n \"image\",\n \"archive\",\n + \ \"document\",\n \"project\",\n \"other\"\n + \ ],\n \"enumDescriptions\": [\n \"Known video + file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an MP3 + file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive + file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., + MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The uploaded + file's type as detected by YouTube's video processing engine. Currently, YouTube + only processes video files, but this field is present whether a video file + or another type of file was uploaded.\"\n },\n \"videoStreams\": + {\n \"type\": \"array\",\n \"description\": \"A list of + video streams contained in the uploaded video file. Each item in the list + contains detailed metadata about a video stream.\",\n \"items\": + {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n }\n },\n + \ \"fileName\": {\n \"type\": \"string\",\n \"description\": + \"The uploaded file's name. This field is present whether a video file or + another type of file was uploaded.\"\n },\n \"creationTime\": + {\n \"description\": \"The date and time when the uploaded video + file was created. The value is specified in ISO 8601 format. Currently, the + following ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive + time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM + \",\n \"type\": \"string\"\n },\n \"bitrateBps\": {\n + \ \"type\": \"string\",\n \"description\": \"The uploaded + video file's combined (video and audio) bitrate in bits per second.\",\n \"format\": + \"uint64\"\n },\n \"container\": {\n \"description\": + \"The uploaded video file's container format.\",\n \"type\": \"string\"\n + \ },\n \"fileSize\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"The uploaded file's size in bytes. + This field is present whether a video file or another type of file was uploaded.\"\n + \ },\n \"durationMs\": {\n \"type\": \"string\",\n \"description\": + \"The length of the uploaded video in milliseconds.\",\n \"format\": + \"uint64\"\n },\n \"audioStreams\": {\n \"items\": + {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n },\n \"description\": + \"A list of audio streams contained in the uploaded video file. Each item + in the list contains detailed metadata about an audio stream.\",\n \"type\": + \"array\"\n }\n }\n },\n \"SearchResult\": {\n \"description\": + \"A search result contains information about a YouTube video, channel, or + playlist that matches the search parameters specified in an API request. While + a search result points to a uniquely identifiable resource, like a video, + it does not have its own persistent data.\",\n \"id\": \"SearchResult\",\n + \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n + \ \"default\": \"youtube#searchResult\"\n },\n \"snippet\": {\n \"description\": \"The snippet object contains basic details - about the event, including its title, description, start time, and end time.\",\n - \ \"$ref\": \"LiveBroadcastSnippet\"\n },\n \"statistics\": - {\n \"$ref\": \"LiveBroadcastStatistics\",\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\"\n },\n \"etag\": {\n \"description\": + about a search result, such as its title or description. For example, if the + search result is a video, then the title will be the video's title and the + description will be the video's description.\",\n \"$ref\": \"SearchResultSnippet\"\n + \ },\n \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The id object contains information that can be used to uniquely identify + the resource that matches the search request.\"\n }\n },\n \"type\": + \"object\"\n },\n \"MemberListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"MemberListResponse\",\n \"properties\": {\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveBroadcast\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcast\\\".\",\n \"type\": \"string\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\"\n },\n \"id\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the broadcast.\"\n }\n - \ },\n \"description\": \"A *liveBroadcast* resource represents an - event that will be streamed, via live video, on YouTube.\",\n \"type\": - \"object\",\n \"id\": \"LiveBroadcast\"\n },\n \"ThirdPartyLinkSnippet\": - {\n \"description\": \"Basic information about a third party account - link, including its type and type-specific information.\",\n \"type\": - \"object\",\n \"properties\": {\n \"type\": {\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"description\": \"Type of the link named after the - entities that are being linked.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ]\n - \ },\n \"channelToStoreLink\": {\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n }\n - \ },\n \"id\": \"ThirdPartyLinkSnippet\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"properties\": {\n \"banType\": {\n \"type\": \"string\",\n - \ \"description\": \"The type of ban.\",\n \"enum\": [\n - \ \"permanent\",\n \"temporary\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"banDurationSeconds\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The duration of the ban. This property is only present if the banType is - temporary.\"\n },\n \"bannedUserDetails\": {\n \"description\": - \"The details of the user that was banned.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"LiveChatModeratorSnippet\": {\n \"id\": \"LiveChatModeratorSnippet\",\n - \ \"properties\": {\n \"moderatorDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - moderator.\"\n },\n \"liveChatId\": {\n \"type\": \"string\",\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"Member\"\n },\n + \ \"type\": \"array\",\n \"description\": \"A list of members + that match the request criteria.\"\n },\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": + \"youtube#memberListResponse\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n + \ }\n }\n },\n \"ActivityContentDetailsLike\": {\n \"type\": + \"object\",\n \"id\": \"ActivityContentDetailsLike\",\n \"description\": + \"Information about a resource that received a positive (like) rating.\",\n + \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the rated resource.\"\n }\n }\n },\n \"LiveBroadcastStatistics\": + {\n \"type\": \"object\",\n \"properties\": {\n \"concurrentViewers\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The number of viewers currently watching the broadcast. The property and + its value will be present if the broadcast has current viewers and the broadcast + owner has not hidden the viewcount for the video. Note that YouTube stops + tracking the number of concurrent viewers for a broadcast when the broadcast + ends. So, this property would not identify the number of viewers watching + an archived video of a live broadcast that already ended.\"\n },\n + \ \"totalChatCount\": {\n \"format\": \"uint64\",\n \"description\": + \"The total number of live chat messages currently on the broadcast. The property + and its value will be present if the broadcast is public, has the live chat + feature enabled, and has at least one message. Note that this field will not + be filled after the broadcast ends. So this property would not identify the + number of chat messages for an archived video of a completed live broadcast.\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Statistics about the live broadcast. These represent a snapshot of the values + at the time of the request. Statistics are only returned for live broadcasts.\",\n + \ \"id\": \"LiveBroadcastStatistics\"\n },\n \"ChannelProfileDetails\": + {\n \"properties\": {\n \"displayName\": {\n \"type\": + \"string\",\n \"description\": \"The channel's display name.\"\n + \ },\n \"profileImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The channels's avatar URL.\"\n },\n \"channelId\": + {\n \"description\": \"The YouTube channel ID.\",\n \"type\": + \"string\"\n },\n \"channelUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The channel's URL.\"\n }\n },\n \"id\": + \"ChannelProfileDetails\",\n \"type\": \"object\"\n },\n \"LiveBroadcastSnippet\": + {\n \"id\": \"LiveBroadcastSnippet\",\n \"description\": \"Basic + broadcast information.\",\n \"properties\": {\n \"actualStartTime\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time that the broadcast actually + started. This information is only available once the broadcast's state is + live.\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that is publishing + the broadcast.\",\n \"type\": \"string\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the broadcast was added + to YouTube's live broadcast schedule.\"\n },\n \"title\": {\n + \ \"type\": \"string\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"The broadcast's + title. Note that the broadcast represents exactly one YouTube video. You can + set this field by modifying the broadcast resource or by setting the title + field of the corresponding video resource.\"\n },\n \"actualEndTime\": + {\n \"description\": \"The date and time that the broadcast actually + ended. This information is only available once the broadcast's state is complete.\",\n + \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n + \ \"description\": {\n \"description\": \"The broadcast's description. + As with the title, you can set this field by modifying the broadcast resource + or by setting the description field of the corresponding video resource.\",\n + \ \"type\": \"string\"\n },\n \"liveChatId\": {\n \"description\": + \"The id of the live chat for this broadcast.\",\n \"type\": \"string\"\n + \ },\n \"isDefaultBroadcast\": {\n \"description\": + \"Indicates whether this broadcast is the default broadcast. Internal only.\",\n + \ \"type\": \"boolean\"\n },\n \"scheduledEndTime\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the broadcast is scheduled + to end.\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + broadcast. For each nested object in this object, the key is the name of the + thumbnail image, and the value is an object that contains other information + about the thumbnail.\"\n },\n \"scheduledStartTime\": {\n \"type\": + \"string\",\n \"format\": \"date-time\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"The date and time that the broadcast is scheduled + to start.\"\n }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsComment\": + {\n \"id\": \"ActivityContentDetailsComment\",\n \"description\": + \"Information about a resource that received a comment.\",\n \"type\": + \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + associated with the comment.\",\n \"$ref\": \"ResourceId\"\n }\n + \ }\n },\n \"LiveChatModeratorSnippet\": {\n \"id\": \"LiveChatModeratorSnippet\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"moderatorDetails\": + {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": + \"Details about the moderator.\"\n },\n \"liveChatId\": {\n \ \"description\": \"The ID of the live chat this moderator can act - on.\"\n }\n },\n \"type\": \"object\"\n },\n \"MemberListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + on.\",\n \"type\": \"string\"\n }\n }\n },\n \"InvideoBranding\": + {\n \"properties\": {\n \"imageBytes\": {\n \"description\": + \"The bytes the uploaded image. Only used in api to youtube communication.\",\n + \ \"format\": \"byte\",\n \"type\": \"string\"\n },\n + \ \"timing\": {\n \"$ref\": \"InvideoTiming\",\n \"description\": + \"The temporal position within the video where watermark will be displayed.\"\n + \ },\n \"position\": {\n \"description\": \"The spatial + position within the video where the branding watermark will be displayed.\",\n + \ \"$ref\": \"InvideoPosition\"\n },\n \"targetChannelId\": + {\n \"description\": \"The channel to which this branding links. + If not present it defaults to the current channel.\",\n \"type\": + \"string\"\n },\n \"imageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The url of the uploaded image. Only used in apiary + to api communication.\"\n }\n },\n \"id\": \"InvideoBranding\",\n + \ \"type\": \"object\",\n \"description\": \"LINT.IfChange Describes + an invideo branding.\"\n },\n \"PlaylistItem\": {\n \"description\": + \"A *playlistItem* resource identifies another resource, such as a video, + that is included in a playlist. In addition, the playlistItem resource contains + details about the included resource that pertain specifically to how that + resource is used in that playlist. YouTube uses playlists to identify special + collections of videos for a channel, such as: - uploaded videos - favorite + videos - positively rated (liked) videos - watch history - watch later To + be more specific, these lists are associated with a channel, which is a collection + of a person, group, or company's videos, playlists, and other YouTube information. + You can retrieve the playlist IDs for each of these lists from the channel + resource for a given channel. You can then use the playlistItems.list method + to retrieve any of those lists. You can also add or remove items from those + lists by calling the playlistItems.insert and playlistItems.delete methods. + For example, if a user gives a positive rating to a video, you would insert + that video into the liked videos playlist for that user's channel.\",\n \"id\": + \"PlaylistItem\",\n \"properties\": {\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#playlistItem\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the playlist item.\",\n \"type\": \"string\"\n + \ },\n \"contentDetails\": {\n \"$ref\": \"PlaylistItemContentDetails\",\n + \ \"description\": \"The contentDetails object is included in the + resource if the included item is a YouTube video. The object contains additional + information about the video.\"\n },\n \"status\": {\n \"$ref\": + \"PlaylistItemStatus\",\n \"description\": \"The status object contains + information about the playlist item's privacy status.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the playlist item, such as its title and position in the playlist.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"VideoAgeGating\": {\n + \ \"type\": \"object\",\n \"properties\": {\n \"restricted\": + {\n \"type\": \"boolean\",\n \"description\": \"Age-restricted + trailers. For redband trailers and adult-rated video-games. Only users aged + 18+ can view the content. The the field is true the content is restricted + to viewers aged 18+. Otherwise The field won't be present.\"\n },\n + \ \"alcoholContent\": {\n \"description\": \"Indicates whether + or not the video has alcoholic beverage content. Only users of legal purchasing + age in a particular country, as identified by ICAP, can view the content.\",\n + \ \"type\": \"boolean\"\n },\n \"videoGameRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"Video game rating, if any.\",\n \"enum\": + [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n + \ \"m17Plus\"\n ]\n }\n },\n \"id\": \"VideoAgeGating\"\n + \ },\n \"SuperChatEventSnippet\": {\n \"id\": \"SuperChatEventSnippet\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"displayString\": + {\n \"type\": \"string\",\n \"description\": \"A rendered + string that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). + The string is rendered for the given language.\"\n },\n \"isSuperStickerEvent\": + {\n \"description\": \"True if this event is a Super Sticker event.\",\n + \ \"type\": \"boolean\"\n },\n \"messageType\": {\n + \ \"format\": \"uint32\",\n \"description\": \"The tier for + the paid message, which is based on the amount of money spent to purchase + the message.\",\n \"type\": \"integer\"\n },\n \"createdAt\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the event occurred.\",\n \"format\": \"date-time\"\n + \ },\n \"amountMicros\": {\n \"format\": \"uint64\",\n + \ \"description\": \"The purchase amount, in micros of the purchase + currency. e.g., 1 is represented as 1000000.\",\n \"type\": \"string\"\n + \ },\n \"superStickerMetadata\": {\n \"description\": + \"If this event is a Super Sticker event, this field will contain metadata + about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n + \ },\n \"commentText\": {\n \"type\": \"string\",\n + \ \"description\": \"The text contents of the comment left by the + user.\"\n },\n \"supporterDetails\": {\n \"$ref\": + \"ChannelProfileDetails\",\n \"description\": \"Details about the + supporter.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel id where the event occurred.\"\n },\n + \ \"currency\": {\n \"description\": \"The currency in which + the purchase was made. ISO 4217.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"CdnSettings\": {\n \"properties\": {\n \"ingestionType\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \" The method or protocol used to transmit the video stream.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"enum\": [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n + \ \"hls\"\n ]\n },\n \"format\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"type\": \"string\",\n \"description\": \"The format of + the video stream that you are sending to Youtube. \"\n },\n \"ingestionInfo\": + {\n \"description\": \"The ingestionInfo object contains information + that YouTube provides that you need to transmit your RTMP or HTTP stream to + YouTube.\",\n \"$ref\": \"IngestionInfo\"\n },\n \"resolution\": + {\n \"description\": \"The resolution of the inbound video data.\",\n + \ \"enum\": [\n \"240p\",\n \"360p\",\n \"480p\",\n + \ \"720p\",\n \"1080p\",\n \"1440p\",\n \"2160p\",\n + \ \"variable\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"frameRate\": + {\n \"enum\": [\n \"30fps\",\n \"60fps\",\n + \ \"variable\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The frame rate + of the inbound video data.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"CdnSettings\",\n \"description\": \"Brief description + of the live stream cdn settings.\"\n },\n \"Playlist\": {\n \"properties\": + {\n \"localizations\": {\n \"description\": \"Localizations + for different languages\",\n \"type\": \"object\",\n \"additionalProperties\": + {\n \"$ref\": \"PlaylistLocalization\"\n }\n },\n + \ \"contentDetails\": {\n \"description\": \"The contentDetails + object contains information like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n + \ },\n \"player\": {\n \"description\": \"The player + object contains information that you would use to play the playlist in an + embedded player.\",\n \"$ref\": \"PlaylistPlayer\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the playlist, such as its title and description.\",\n + \ \"$ref\": \"PlaylistSnippet\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the playlist.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"status\": + {\n \"description\": \"The status object contains status information + for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#playlist\",\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n }\n + \ },\n \"description\": \"A *playlist* resource represents a YouTube + playlist. A playlist is a collection of videos that can be viewed sequentially + and shared with other users. A playlist can contain up to 200 videos, and + YouTube does not limit the number of playlists that each user creates. By + default, playlists are publicly visible to other users, but playlists can + be public or private. YouTube also uses playlists to identify special collections + of videos for a channel, such as: - uploaded videos - favorite videos - positively + rated (liked) videos - watch history - watch later To be more specific, these + lists are associated with a channel, which is a collection of a person, group, + or company's videos, playlists, and other YouTube information. You can retrieve + the playlist IDs for each of these lists from the channel resource for a given + channel. You can then use the playlistItems.list method to retrieve any of + those lists. You can also add or remove items from those lists by calling + the playlistItems.insert and playlistItems.delete methods.\",\n \"id\": + \"Playlist\",\n \"type\": \"object\"\n },\n \"LiveStreamSnippet\": + {\n \"id\": \"LiveStreamSnippet\",\n \"properties\": {\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"description\": \"The + date and time that the stream was created.\",\n \"type\": \"string\"\n + \ },\n \"isDefaultStream\": {\n \"type\": \"boolean\"\n + \ },\n \"title\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n + \ ]\n },\n \"description\": \"The stream's title. + The value must be between 1 and 128 characters long.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel that is transmitting the stream.\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The stream's + description. The value cannot be longer than 10000 characters.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"ResourceId\": {\n \"id\": + \"ResourceId\",\n \"type\": \"object\",\n \"properties\": {\n \"playlistId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the referred resource, if that resource + is a playlist. This property is only present if the resourceId.kind value + is youtube#playlist.\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a channel. This property is only present if the resourceId.kind + value is youtube#channel.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"The type of the API resource.\"\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a video. This property is only present if the resourceId.kind + value is youtube#video.\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"A resource id is a generic reference that points + to another YouTube resource.\"\n },\n \"VideoRecordingDetails\": {\n + \ \"properties\": {\n \"locationDescription\": {\n \"type\": + \"string\",\n \"description\": \"The text description of the location + where the video was recorded.\"\n },\n \"location\": {\n \"$ref\": + \"GeoPoint\",\n \"description\": \"The geolocation information associated + with the video.\"\n },\n \"recordingDate\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time when the video was recorded.\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"VideoRecordingDetails\",\n \"description\": + \"Recording information associated with the video.\"\n },\n \"LiveChatNewSponsorDetails\": + {\n \"id\": \"LiveChatNewSponsorDetails\",\n \"properties\": {\n + \ \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": + \"The name of the Level that the viewer just had joined. The Level names are + defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\"\n },\n \"isUpgrade\": {\n \"type\": + \"boolean\",\n \"description\": \"If the viewer just had upgraded + from a lower level. For viewers that were not members at the time of purchase, + this field is false.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"VideoProcessingDetailsProcessingProgress\": {\n \"description\": + \"Video processing progress and completion time estimate.\",\n \"properties\": + {\n \"partsTotal\": {\n \"type\": \"string\",\n \"description\": + \"An estimate of the total number of parts that need to be processed for the + video. The number may be updated with more precise estimates while YouTube + processes the video.\",\n \"format\": \"uint64\"\n },\n \"timeLeftMs\": + {\n \"format\": \"uint64\",\n \"description\": \"An estimate + of the amount of time, in millseconds, that YouTube needs to finish processing + the video.\",\n \"type\": \"string\"\n },\n \"partsProcessed\": + {\n \"type\": \"string\",\n \"description\": \"The number + of parts of the video that YouTube has already processed. You can estimate + the percentage of the video that YouTube has already processed by calculating: + 100 * parts_processed / parts_total Note that since the estimated number of + parts could increase without a corresponding increase in the number of parts + that have already been processed, it is possible that the calculated progress + could periodically decrease while YouTube processes a video.\",\n \"format\": + \"uint64\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"VideoProcessingDetailsProcessingProgress\"\n },\n \"MembershipsLevelSnippet\": + {\n \"id\": \"MembershipsLevelSnippet\",\n \"properties\": {\n \"creatorChannelId\": + {\n \"description\": \"The id of the channel that's offering channel + memberships.\",\n \"type\": \"string\"\n },\n \"levelDetails\": + {\n \"description\": \"Details about the pricing level.\",\n \"$ref\": + \"LevelDetails\"\n }\n },\n \"type\": \"object\"\n },\n + \ \"ImageSettings\": {\n \"properties\": {\n \"bannerMobileMediumHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size medium/high resolution (960x263).\"\n },\n \"bannerTabletExtraHdImageUrl\": + {\n \"description\": \"Banner image. Tablet size extra high resolution + (2560x424).\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The image map script for the small banner image.\"\n },\n \"backgroundImageUrl\": + {\n \"description\": \"The URL for the background image shown on + the video watch page. The image should be 1200px by 615px, with a maximum + file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n + \ \"bannerExternalUrl\": {\n \"type\": \"string\",\n \"description\": + \"This is generated when a ChannelBanner.Insert request has succeeded for + the given channel.\"\n },\n \"bannerTabletImageUrl\": {\n \"type\": + \"string\",\n \"description\": \"Banner image. Tablet size (1707x283).\"\n + \ },\n \"bannerTabletLowImageUrl\": {\n \"description\": + \"Banner image. Tablet size low resolution (1138x188).\",\n \"type\": + \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": {\n \"type\": + \"string\",\n \"description\": \"Banner image. Mobile size high resolution + (1440x395).\"\n },\n \"smallBrandedBannerImageUrl\": {\n \"description\": + \"The URL for the 640px by 70px banner image that appears below the video + player in the default view of the video watch page. The URL for the image + that appears above the top-left corner of the video player. This is a 25-pixel-high + image with a flexible width that cannot exceed 170 pixels.\",\n \"$ref\": + \"LocalizedProperty\"\n },\n \"bannerMobileHdImageUrl\": {\n + \ \"description\": \"Banner image. Mobile size high resolution (1280x360).\",\n + \ \"type\": \"string\"\n },\n \"watchIconImageUrl\": + {\n \"type\": \"string\"\n },\n \"bannerImageUrl\": + {\n \"description\": \"Banner image. Desktop size (1060x175).\",\n + \ \"type\": \"string\"\n },\n \"bannerTabletHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size high resolution (2276x377).\"\n },\n \"bannerMobileLowImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size low resolution (320x88).\"\n },\n \"bannerMobileImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size (640x175).\"\n },\n \"largeBrandedBannerImageUrl\": + {\n \"description\": \"The URL for the 854px by 70px image that appears + below the video player in the expanded video view of the video watch page.\",\n + \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTvLowImageUrl\": + {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n + \ \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": + {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n + \ \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size high resolution (1920x1080).\"\n },\n \"trackingImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL for + a 1px by 1px tracking pixel that can be used to collect statistics for views + of the channel or video pages.\"\n },\n \"largeBrandedBannerImageImapScript\": + {\n \"description\": \"The image map script for the large banner + image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTvImageUrl\": + {\n \"description\": \"Banner image. TV size extra high resolution + (2120x1192).\",\n \"type\": \"string\"\n }\n },\n \"description\": + \"Branding properties for images associated with the channel.\",\n \"type\": + \"object\",\n \"id\": \"ImageSettings\"\n },\n \"ActivityContentDetailsPlaylistItem\": + {\n \"description\": \"Information about a new playlist item.\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information about the resource that was added + to the playlist.\"\n },\n \"playlistId\": {\n \"description\": + \"The value that YouTube uses to uniquely identify the playlist.\",\n \"type\": + \"string\"\n },\n \"playlistItemId\": {\n \"type\": + \"string\",\n \"description\": \"ID of the item within the playlist.\"\n + \ }\n },\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n + \ \"type\": \"object\"\n },\n \"PlaylistItemListResponse\": {\n + \ \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"description\": \"A list of playlist + items that match the request criteria.\"\n },\n \"kind\": {\n + \ \"type\": \"string\",\n \"default\": \"youtube#playlistItemListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\"\n \ },\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"etag\": {\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"PlaylistItemListResponse\"\n },\n \"ActivityContentDetailsFavorite\": + {\n \"id\": \"ActivityContentDetailsFavorite\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + that was marked as a favorite.\"\n }\n },\n \"description\": + \"Information about a video that was marked as a favorite video.\",\n \"type\": + \"object\"\n },\n \"VideoFileDetailsVideoStream\": {\n \"type\": + \"object\",\n \"id\": \"VideoFileDetailsVideoStream\",\n \"description\": + \"Information about a video stream.\",\n \"properties\": {\n \"aspectRatio\": + {\n \"description\": \"The video content's display aspect ratio, + which specifies the aspect ratio in which the video should be displayed.\",\n + \ \"type\": \"number\",\n \"format\": \"double\"\n },\n + \ \"frameRateFps\": {\n \"type\": \"number\",\n \"format\": + \"double\",\n \"description\": \"The video stream's frame rate, in + frames per second.\"\n },\n \"codec\": {\n \"type\": + \"string\",\n \"description\": \"The video codec that the stream + uses.\"\n },\n \"heightPixels\": {\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"description\": \"The encoded + video content's height in pixels.\"\n },\n \"rotation\": {\n + \ \"enum\": [\n \"none\",\n \"clockwise\",\n + \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The amount that YouTube needs to rotate the original source content to properly + display the video.\",\n \"type\": \"string\"\n },\n \"vendor\": + {\n \"description\": \"A value that uniquely identifies a video vendor. + Typically, the value is a four-letter vendor code.\",\n \"type\": + \"string\"\n },\n \"widthPixels\": {\n \"format\": + \"uint32\",\n \"description\": \"The encoded video content's width + in pixels. You can calculate the video's encoding aspect ratio as width_pixels + / height_pixels.\",\n \"type\": \"integer\"\n },\n \"bitrateBps\": + {\n \"description\": \"The video stream's bitrate, in bits per second.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"PlaylistPlayer\": {\n \"id\": \"PlaylistPlayer\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"embedHtml\": + {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e + tag that embeds a player that will play the playlist.\"\n }\n }\n + \ },\n \"LevelDetails\": {\n \"properties\": {\n \"displayName\": + {\n \"type\": \"string\",\n \"description\": \"The name + that should be used when referring to this level.\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"LevelDetails\"\n },\n \"ChannelListResponse\": + {\n \"id\": \"ChannelListResponse\",\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#channelListResponse\"\n },\n \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#memberListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Member\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of members that match the request criteria.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"MemberListResponse\",\n \"type\": \"object\"\n },\n \"CommentThreadListResponse\": - {\n \"id\": \"CommentThreadListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"Channel\"\n }\n },\n + \ \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"CommentThread\"\n },\n \"description\": - \"A list of comment threads that match the request criteria.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#commentThreadListResponse\",\n + \ }\n },\n \"type\": \"object\"\n },\n \"PlaylistContentDetails\": + {\n \"properties\": {\n \"itemCount\": {\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The number of videos in the playlist.\"\n }\n },\n \"id\": + \"PlaylistContentDetails\",\n \"type\": \"object\"\n },\n \"ChannelSnippet\": + {\n \"properties\": {\n \"customUrl\": {\n \"description\": + \"The custom url of the channel.\",\n \"type\": \"string\"\n },\n + \ \"description\": {\n \"description\": \"The description of + the channel.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": + {\n \"description\": \"The language of the channel's default title + and description.\",\n \"type\": \"string\"\n },\n \"thumbnails\": + {\n \"description\": \"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. When displaying thumbnails in your application, make sure that + your code uses the image URLs exactly as they are returned in API responses. + For example, your application should not use the http domain instead of the + https domain in a URL returned in an API response. Beginning in July 2018, + channel thumbnail URLs will only be available in the https domain, which is + how the URLs appear in API responses. After that time, you might see broken + images in your application if it tries to load YouTube images from the http + domain. Thumbnail images might be empty for newly created channels and might + take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The channel's title.\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time that the channel was created.\"\n },\n \"localized\": + {\n \"description\": \"Localized title and description, read-only.\",\n + \ \"$ref\": \"ChannelLocalization\"\n },\n \"country\": + {\n \"description\": \"The country of the channel.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Basic details about + a channel, including title, description and thumbnails.\",\n \"type\": + \"object\",\n \"id\": \"ChannelSnippet\"\n },\n \"SubscriptionListResponse\": + {\n \"id\": \"SubscriptionListResponse\",\n \"properties\": {\n + \ \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"Subscription\"\n },\n + \ \"type\": \"array\",\n \"description\": \"A list of subscriptions + that match the request criteria.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n },\n + the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n },\n \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoAbuseReport\": - {\n \"id\": \"VideoAbuseReport\",\n \"type\": \"object\",\n \"properties\": - {\n \"comments\": {\n \"type\": \"string\",\n \"description\": - \"Additional comments regarding the abuse report.\"\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n },\n \"secondaryReasonId\": - {\n \"description\": \"The specific, or secondary, reason that this - content is abusive (if available). The value is an abuse report reason ID - that is a valid secondary reason for the primary reason.\",\n \"type\": - \"string\"\n },\n \"reasonId\": {\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\",\n \"type\": \"string\"\n },\n - \ \"language\": {\n \"description\": \"The language that the - content was viewed in.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"GeoPoint\": {\n \"properties\": {\n \"latitude\": - {\n \"description\": \"Latitude in degrees.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n },\n \"longitude\": - {\n \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"Longitude in degrees.\"\n },\n \"altitude\": {\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\",\n \"type\": - \"number\",\n \"format\": \"double\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"GeoPoint\",\n \"description\": \"Geographical - coordinates of a point, in WGS84.\"\n },\n \"ChannelSectionTargeting\": - {\n \"type\": \"object\",\n \"description\": \"ChannelSection targeting - setting.\",\n \"properties\": {\n \"countries\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The country the channel section is targeting.\"\n - \ },\n \"regions\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The region the channel - section is targeting.\",\n \"type\": \"array\"\n },\n \"languages\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The language the channel section is targeting.\",\n - \ \"type\": \"array\"\n }\n },\n \"id\": \"ChannelSectionTargeting\"\n - \ },\n \"LiveChatModerator\": {\n \"type\": \"object\",\n \"id\": - \"LiveChatModerator\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModerator\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the moderator.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ }\n },\n \"description\": \"A *liveChatModerator* resource - represents a moderator for a YouTube live chat. A chat moderator has the ability - to ban/unban users from a chat, remove message, etc.\"\n },\n \"SubscriptionListResponse\": - {\n \"id\": \"SubscriptionListResponse\",\n \"properties\": {\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"default\": \"youtube#subscriptionListResponse\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of subscriptions that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"Subscription\"\n - \ }\n }\n },\n \"type\": \"object\"\n },\n \"ChannelAuditDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any unresolved claims.\"\n }\n },\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\",\n \"id\": \"ChannelAuditDetails\"\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"properties\": {\n - \ \"amountDisplayString\": {\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\",\n \"type\": - \"string\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n },\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - amount of the fund.\"\n },\n \"currency\": {\n \"type\": - \"string\",\n \"description\": \"The currency in which the fund was - made.\"\n }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"TestItemTestItemSnippet\": {\n \"properties\": {},\n \"id\": - \"TestItemTestItemSnippet\",\n \"type\": \"object\"\n },\n \"VideoAgeGating\": - {\n \"type\": \"object\",\n \"properties\": {\n \"videoGameRating\": - {\n \"description\": \"Video game rating, if any.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ]\n },\n \"alcoholContent\": - {\n \"description\": \"Indicates whether or not the video has alcoholic - beverage content. Only users of legal purchasing age in a particular country, - as identified by ICAP, can view the content.\",\n \"type\": \"boolean\"\n - \ },\n \"restricted\": {\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\",\n \"type\": - \"boolean\"\n }\n },\n \"id\": \"VideoAgeGating\"\n },\n - \ \"PlaylistSnippet\": {\n \"id\": \"PlaylistSnippet\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The playlist's - description.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that published the playlist.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the playlist's default title and description.\"\n },\n \"tags\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"Keyword tags - associated with the playlist.\"\n },\n \"channelTitle\": {\n - \ \"description\": \"The channel title of the channel that the video - belongs to.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"thumbnailVideoId\": - {\n \"type\": \"string\",\n \"description\": \"Note: if - the playlist has a custom thumbnail, this field will not be populated. The - video id selected by the user that will be used as the thumbnail of this playlist. - This field defaults to the first publicly viewable video in the playlist, - if: 1. The user has never selected a video to be the thumbnail of the playlist. - 2. The user selects a video to be the thumbnail, and then removes that video - from the playlist. 3. The user selects a non-owned video to be the thumbnail, - but that video becomes private, or gets deleted.\"\n },\n \"title\": - {\n \"description\": \"The playlist's title.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the playlist was created.\",\n \"format\": - \"date-time\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ }\n }\n },\n \"MembershipsDetails\": {\n \"properties\": - {\n \"accessibleLevels\": {\n \"description\": \"Ids of all - levels that the user has access to. This includes the currently active level - and all other levels that are included because of a higher purchase.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"highestAccessibleLevel\": {\n \"description\": - \"Id of the highest level that the user has access to at the moment.\",\n - \ \"type\": \"string\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"description\": \"Display name for the highest level that the - user has access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"membershipsDuration\": {\n \"$ref\": \"MembershipsDuration\",\n - \ \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\"\n },\n \"membershipsDurationAtLevels\": - {\n \"description\": \"Data about memberships duration on particular - pricing levels.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"$ref\": \"MembershipsDurationAtLevel\"\n }\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"MembershipsDetails\"\n - \ },\n \"VideoPlayer\": {\n \"properties\": {\n \"embedHeight\": - {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n - \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\"\n - \ },\n \"embedWidth\": {\n \"description\": \"The embed - width\",\n \"format\": \"int64\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Player to be used for a video - playback.\",\n \"id\": \"VideoPlayer\",\n \"type\": \"object\"\n - \ },\n \"CaptionListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#captionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Caption\"\n - \ },\n \"description\": \"A list of captions that match the - request criteria.\",\n \"type\": \"array\"\n },\n \"visitorId\": + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"Entity\": {\n \"type\": \"object\",\n \"properties\": + {\n \"typeId\": {\n \"type\": \"string\"\n },\n \"url\": + {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": + \"string\"\n }\n },\n \"id\": \"Entity\"\n },\n \"ActivityContentDetailsBulletin\": + {\n \"id\": \"ActivityContentDetailsBulletin\",\n \"description\": + \"Details about a channel bulletin post.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + associated with a bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": + \"ResourceId\"\n }\n }\n },\n \"I18nLanguageSnippet\": {\n + \ \"description\": \"Basic details about an i18n language, such as language + code and human-readable name.\",\n \"properties\": {\n \"hl\": + {\n \"type\": \"string\",\n \"description\": \"A short BCP-47 + code that uniquely identifies a language.\"\n },\n \"name\": + {\n \"description\": \"The human-readable name of the language in + the language itself.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"I18nLanguageSnippet\",\n \"type\": \"object\"\n },\n + \ \"PropertyValue\": {\n \"properties\": {\n \"value\": {\n + \ \"type\": \"string\",\n \"description\": \"The property's + value.\"\n },\n \"property\": {\n \"description\": + \"A property.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"A pair Property / Value.\",\n \"id\": + \"PropertyValue\"\n },\n \"Channel\": {\n \"properties\": {\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the channel, such as its title, description, and thumbnail images.\",\n + \ \"$ref\": \"ChannelSnippet\"\n },\n \"topicDetails\": + {\n \"$ref\": \"ChannelTopicDetails\",\n \"description\": + \"The topicDetails object encapsulates information about Freebase topics associated + with the channel.\"\n },\n \"brandingSettings\": {\n \"description\": + \"The brandingSettings object encapsulates information about the branding + of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"status\": {\n \"$ref\": + \"ChannelStatus\",\n \"description\": \"The status object encapsulates + information about the privacy status of the channel.\"\n },\n \"kind\": + {\n \"default\": \"youtube#channel\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n + \ \"type\": \"string\"\n },\n \"auditDetails\": {\n + \ \"$ref\": \"ChannelAuditDetails\",\n \"description\": \"The + auditionDetails object encapsulates channel data that is relevant for YouTube + Partners during the audition process.\"\n },\n \"contentOwnerDetails\": + {\n \"$ref\": \"ChannelContentOwnerDetails\",\n \"description\": + \"The contentOwnerDetails object encapsulates channel data that is relevant + for YouTube Partners linked with the channel.\"\n },\n \"contentDetails\": + {\n \"$ref\": \"ChannelContentDetails\",\n \"description\": + \"The contentDetails object encapsulates information about the channel's content.\"\n + \ },\n \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n + \ \"description\": \"The statistics object encapsulates statistics + for the channel.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel.\"\n },\n \"localizations\": {\n \"additionalProperties\": + {\n \"$ref\": \"ChannelLocalization\"\n },\n \"description\": + \"Localizations for different languages\",\n \"type\": \"object\"\n + \ },\n \"conversionPings\": {\n \"description\": \"The + conversionPings object encapsulates information about conversion pings that + need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n + \ }\n },\n \"description\": \"A *channel* resource contains + information about a YouTube channel.\",\n \"id\": \"Channel\",\n \"type\": + \"object\"\n },\n \"PlaylistItemStatus\": {\n \"description\": + \"Information about the playlist item's privacy status.\",\n \"id\": + \"PlaylistItemStatus\",\n \"type\": \"object\",\n \"properties\": + {\n \"privacyStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"description\": \"This resource's privacy status.\",\n \"enum\": + [\n \"public\",\n \"unlisted\",\n \"private\"\n + \ ]\n }\n }\n },\n \"LanguageTag\": {\n \"id\": + \"LanguageTag\",\n \"type\": \"object\",\n \"properties\": {\n \"value\": + {\n \"type\": \"string\"\n }\n }\n },\n \"I18nLanguageListResponse\": + {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#i18nLanguageListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"description\": \"A list of + supported i18n languages. In this map, the i18n language ID is the map key, + and its value is the corresponding i18nLanguage resource.\",\n \"items\": + {\n \"$ref\": \"I18nLanguage\"\n }\n },\n \"visitorId\": {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"CaptionListResponse\",\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastContentDetails\": {\n - \ \"type\": \"object\",\n \"description\": \"Detailed settings of - a broadcast.\",\n \"properties\": {\n \"mesh\": {\n \"format\": - \"byte\",\n \"type\": \"string\",\n \"description\": \"The - mesh for projecting the video if projection is mesh. The mesh value must be - a UTF-8 string containing the base-64 encoding of 3D mesh data that follows - the Spherical Video V2 RFC specification for an mshp box, excluding the box - size and type but including the following four reserved zero bytes for the - version and flags.\"\n },\n \"latencyPreference\": {\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"type\": - \"string\",\n \"description\": \"If both this and enable_low_latency - are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Best for: highest quality viewer playbacks and higher resolutions.\",\n - \ \"Best for: near real-time interaction, with minimal playback - buffering.\",\n \"Best for: real-time interaction Does not support: - Closed captions, 1440p, and 4k resolutions\"\n ]\n },\n \"recordFromStart\": - {\n \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\",\n \"type\": \"boolean\"\n },\n \"enableDvr\": - {\n \"description\": \"This setting determines whether viewers can - access DVR controls while watching the video. DVR controls enable the viewer - to control the video playback experience by pausing, rewinding, or fast forwarding - content. The default value for this property is true. *Important:* You must - set the value to true and also set the enableArchive property's value to true - if you want to make playback available immediately after the broadcast ends.\",\n - \ \"type\": \"boolean\"\n },\n \"monitorStream\": {\n - \ \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\",\n \"$ref\": - \"MonitorStreamInfo\"\n },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"enableEmbed\": {\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\",\n \"type\": \"boolean\"\n },\n \"enableAutoStop\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto stop is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"closedCaptionsType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ]\n },\n \"enableAutoStart\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"projection\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ],\n \"description\": \"The projection format of this broadcast. - This defaults to rectangular.\"\n },\n \"stereoLayout\": {\n - \ \"type\": \"string\",\n \"description\": \"The 3D stereo - layout of this broadcast. This defaults to mono.\",\n \"enum\": [\n - \ \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"enableContentEncryption\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - YouTube should enable content encryption for the broadcast.\"\n },\n - \ \"startWithSlate\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether the broadcast should automatically begin - with an in-stream slate when you update the broadcast's status to live. After - updating the status, you then need to send a liveCuepoints.insert request - that sets the cuepoint's eventState to end to remove the in-stream slate and - make your broadcast stream visible to viewers.\"\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"boundStreamId\": {\n \"type\": - \"string\",\n \"description\": \"This value uniquely identifies the - live stream bound to the broadcast.\"\n },\n \"enableLowLatency\": - {\n \"description\": \"Indicates whether this broadcast has low latency - enabled.\",\n \"type\": \"boolean\"\n }\n },\n \"id\": - \"LiveBroadcastContentDetails\"\n },\n \"ChannelLocalization\": {\n - \ \"id\": \"ChannelLocalization\",\n \"type\": \"object\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel's title.\"\n },\n \"description\": - {\n \"description\": \"The localized strings for channel's description.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Channel localization setting\"\n },\n \"MembershipsLevelSnippet\": - {\n \"properties\": {\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n },\n \"levelDetails\": {\n \"description\": - \"Details about the pricing level.\",\n \"$ref\": \"LevelDetails\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"MembershipsLevelSnippet\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"description\": - \"Information that identifies the recommended resource.\",\n \"id\": - \"ActivityContentDetailsRecommendation\",\n \"properties\": {\n \"seedResourceId\": - {\n \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\",\n \"$ref\": - \"ResourceId\"\n },\n \"reason\": {\n \"enum\": [\n - \ \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The reason that the resource is - recommended to the user.\",\n \"type\": \"string\"\n },\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n \"type\": - \"object\",\n \"properties\": {\n \"allowed\": {\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"blocked\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n }\n },\n \"id\": \"I18nLanguageListResponse\",\n + \ \"type\": \"object\"\n },\n \"MembershipsLevelListResponse\": + {\n \"properties\": {\n \"items\": {\n \"items\": {\n + \ \"$ref\": \"MembershipsLevel\"\n },\n \"type\": + \"array\",\n \"description\": \"A list of pricing levels offered + by a creator to the fans.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevelListResponse\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"MembershipsLevelListResponse\"\n + \ },\n \"SuperChatEvent\": {\n \"properties\": {\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"description\": + \"The `snippet` object contains basic details about the Super Chat event.\",\n + \ \"$ref\": \"SuperChatEventSnippet\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube assigns to uniquely identify the Super Chat event.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n + \ \"default\": \"youtube#superChatEvent\"\n }\n },\n \"description\": + \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube + channel.\",\n \"id\": \"SuperChatEvent\",\n \"type\": \"object\"\n + \ },\n \"VideoContentDetailsRegionRestriction\": {\n \"description\": + \"DEPRECATED Region restriction of the video.\",\n \"properties\": {\n + \ \"blocked\": {\n \"type\": \"array\",\n \"description\": \"A list of region codes that identify countries where the video is blocked. If this property is present and a country is not listed in its value, then the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\"\n }\n },\n - \ \"description\": \"DEPRECATED Region restriction of the video.\"\n },\n - \ \"CaptionSnippet\": {\n \"description\": \"Basic details about a - caption track, such as its language and name.\",\n \"properties\": {\n - \ \"isEasyReader\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n - \ },\n \"isCC\": {\n \"description\": \"Indicates whether - the track contains closed captions for the deaf and hard of hearing. The default - value is false.\",\n \"type\": \"boolean\"\n },\n \"isLarge\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the caption track uses large text for the vision-impaired. The default - value is false.\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video associated with - the caption track. @mutable youtube.captions.insert\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"isAutoSynced\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n \"trackKind\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The caption track's - type.\"\n },\n \"isDraft\": {\n \"description\": \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n },\n - \ \"name\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The name of the caption track. The name is intended - to be visible to the user as an option during playback.\",\n \"type\": - \"string\"\n },\n \"language\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The language of - the caption track. The property value is a BCP-47 language tag.\"\n },\n - \ \"lastUpdated\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time when the caption - track was last updated.\"\n },\n \"failureReason\": {\n \"enum\": - [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The reason that YouTube failed to process the - caption track. This property is only present if the state property's value - is failed.\"\n },\n \"status\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The caption track's status.\",\n \"type\": - \"string\",\n \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ]\n },\n \"audioTrackType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"description\": \"The - type of audio track associated with the caption track.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"CaptionSnippet\"\n },\n \"LiveBroadcastStatus\": - {\n \"description\": \"Live broadcast state.\",\n \"properties\": - {\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"lifeCycleStatus\": - {\n \"enumDescriptions\": [\n \"No value or the value - is unknown.\",\n \"Incomplete settings, but otherwise valid\",\n - \ \"Complete settings\",\n \"Visible only to partner, - may need special UI treatment\",\n \"Viper is recording; this means - the \\\"clock\\\" is running\",\n \"The broadcast is finished.\",\n - \ \"This broadcast was removed by admin action\",\n \"Transition - into TESTING has been requested\",\n \"Transition into LIVE has - been requested\"\n ],\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The broadcast's - status. The status can be updated using the API's liveBroadcasts.transition - method.\"\n },\n \"privacyStatus\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The broadcast's - privacy status. Note that the broadcast represents exactly one YouTube video, - so the privacy settings are identical to those supported for videos. In addition, - you can set this field by modifying the broadcast resource or by setting the - privacyStatus field of the corresponding video resource.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ]\n },\n \"liveBroadcastPriority\": {\n \"description\": - \"Priority of the live broadcast event (internal state).\",\n \"type\": - \"string\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Low priority - broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ]\n },\n \"recordingStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"description\": - \"The broadcast's recording status.\"\n },\n \"madeForKids\": - {\n \"description\": \"Whether the broadcast is made for kids or - not, decided by YouTube instead of the creator. This field is read only.\",\n - \ \"type\": \"boolean\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveBroadcastStatus\"\n },\n \"Member\": {\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\",\n - \ \"type\": \"object\",\n \"id\": \"Member\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"MemberSnippet\",\n \"description\": \"The snippet object contains - basic details about the member.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#member\\\".\",\n \"default\": - \"youtube#member\"\n }\n }\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"properties\": {\n \"memberMonth\": {\n \"type\": \"integer\",\n - \ \"description\": \"The total amount of months (rounded up) the viewer - has been a member that granted them this Member Milestone Chat. This is the - same number of months as is being displayed to YouTube users.\",\n \"format\": - \"uint32\"\n },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the member to this Member - Milestone Chat. This field is empty for messages without a comment from the - member.\"\n },\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level at which the - viever is a member. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n }\n - \ }\n },\n \"PageInfo\": {\n \"type\": \"object\",\n \"id\": - \"PageInfo\",\n \"properties\": {\n \"totalResults\": {\n \"type\": - \"integer\",\n \"description\": \"The total number of results in - the result set.\",\n \"format\": \"int32\"\n },\n \"resultsPerPage\": - {\n \"description\": \"The number of results included in the API - response.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ }\n },\n \"description\": \"Paging details for lists of - resources, including total number of items available and number of resources - returned in a single page.\"\n },\n \"VideoStatistics\": {\n \"id\": - \"VideoStatistics\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"commentCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of comments for the video.\",\n \"format\": \"uint64\"\n - \ },\n \"viewCount\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The number of - times the video has been viewed.\"\n },\n \"favoriteCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of users who currently have the video marked as a favorite video.\",\n \"format\": - \"uint64\"\n },\n \"dislikeCount\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of users who have indicated that they disliked the video by giving it a negative - rating.\"\n },\n \"likeCount\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The number of - users who have indicated that they liked the video by giving it a positive - rating.\"\n }\n },\n \"description\": \"Statistics about - the video, such as the number of times the video was viewed or liked.\"\n - \ },\n \"LiveStream\": {\n \"id\": \"LiveStream\",\n \"type\": - \"object\",\n \"description\": \"A live stream describes a live ingestion - point.\",\n \"properties\": {\n \"status\": {\n \"description\": - \"The status object contains information about live stream's status.\",\n - \ \"$ref\": \"LiveStreamStatus\"\n },\n \"kind\": {\n - \ \"default\": \"youtube#liveStream\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveStream\\\".\"\n },\n \"snippet\": + an empty list, the video is viewable in all countries.\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"allowed\": + {\n \"description\": \"A list of region codes that identify countries + where the video is viewable. If this property is present and a country is + not listed in its value, then the video is blocked from appearing in that + country. If this property is present and contains an empty list, the video + is blocked in all countries.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"VideoContentDetailsRegionRestriction\"\n + \ },\n \"RelatedEntity\": {\n \"type\": \"object\",\n \"id\": + \"RelatedEntity\",\n \"properties\": {\n \"entity\": {\n \"$ref\": + \"Entity\"\n }\n }\n },\n \"AbuseType\": {\n \"type\": + \"object\",\n \"id\": \"AbuseType\",\n \"properties\": {\n \"id\": + {\n \"type\": \"string\"\n }\n }\n },\n \"ThirdPartyLink\": + {\n \"id\": \"ThirdPartyLink\",\n \"properties\": {\n \"snippet\": {\n \"description\": \"The snippet object contains basic details - about the stream, including its channel, title, and description.\",\n \"$ref\": - \"LiveStreamSnippet\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the stream.\",\n \"type\": \"string\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n - \ \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\"\n },\n - \ \"cdn\": {\n \"description\": \"The cdn object defines the - live stream's content delivery network (CDN) settings. These settings provide - details about the manner in which you stream your content to YouTube.\",\n - \ \"$ref\": \"CdnSettings\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ }\n },\n \"LiveStreamContentDetails\": {\n \"description\": - \"Detailed settings of a stream.\",\n \"type\": \"object\",\n \"id\": - \"LiveStreamContentDetails\",\n \"properties\": {\n \"isReusable\": - {\n \"description\": \"Indicates whether the stream is reusable, - which means that it can be bound to multiple broadcasts. It is common for - broadcasters to reuse the same stream for many different broadcasts if those - broadcasts occur at different times. If you set this value to false, then - the stream will not be reusable, which means that it can only be bound to - one broadcast. Non-reusable streams differ from reusable streams in the following - ways: - A non-reusable stream can only be bound to one broadcast. - A non-reusable - stream might be deleted by an automated process after the broadcast ends. - - The liveStreams.list method does not list non-reusable streams if you call - the method and set the mine parameter to true. The only way to use that method - to retrieve the resource for a non-reusable stream is to use the id parameter - to identify the stream. \",\n \"type\": \"boolean\"\n },\n - \ \"closedCaptionsIngestionUrl\": {\n \"description\": \"The - ingestion URL where the closed captions of this stream are sent.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelSectionSnippet\": {\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\",\n \"type\": \"object\",\n \"properties\": - {\n \"position\": {\n \"type\": \"integer\",\n \"description\": - \"The position of the channel section in the channel.\",\n \"format\": - \"uint32\"\n },\n \"style\": {\n \"description\": \"The - style of the channel section.\",\n \"type\": \"string\",\n \"enum\": - [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": - \"The language of the channel section's default title and description.\"\n - \ },\n \"localized\": {\n \"$ref\": \"ChannelSectionLocalization\",\n - \ \"description\": \"Localized title, read-only.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel - section's title for multiple_playlists and multiple_channels.\"\n },\n - \ \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of the channel section.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ]\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the channel section.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ChannelSectionSnippet\"\n },\n \"VideoProjectDetails\": - {\n \"properties\": {},\n \"type\": \"object\",\n \"description\": + about the third- party account link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n + \ },\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n + \ \"description\": \"The status object contains information about + the status of the link.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#thirdPartyLink\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n + \ },\n \"linkingToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The linking_token identifies a YouTube account + and channel with which the third party account is linked.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource\"\n }\n },\n \"description\": \"A + *third party account link* resource represents a link between a YouTube account + or a channel and an account on a third-party service.\",\n \"type\": + \"object\"\n },\n \"VideoSnippet\": {\n \"properties\": {\n \"defaultAudioLanguage\": + {\n \"description\": \"The default_audio_language property specifies + the language spoken in the video's default audio track.\",\n \"type\": + \"string\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"categoryId\": {\n \"type\": + \"string\",\n \"description\": \"The YouTube video category associated + with the video.\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time when the video was uploaded.\"\n },\n \"tags\": + {\n \"description\": \"A list of keyword tags associated with the + video. Tags may contain spaces.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n },\n \"defaultLanguage\": + {\n \"description\": \"The language of the videos's default snippet.\",\n + \ \"type\": \"string\"\n },\n \"channelTitle\": {\n + \ \"type\": \"string\",\n \"description\": \"Channel title + for the channel that the video belongs to.\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The video's + description. @mutable youtube.videos.insert youtube.videos.update\"\n },\n + \ \"title\": {\n \"description\": \"The video's title. @mutable + youtube.videos.insert youtube.videos.update\",\n \"type\": \"string\"\n + \ },\n \"localized\": {\n \"$ref\": \"VideoLocalization\",\n + \ \"description\": \"Localized snippet selected with the hl parameter. + If no such localization exists, this field is populated with the default snippet. + (Read-only)\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel that the video was uploaded to.\"\n },\n \"liveBroadcastContent\": + {\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n + \ \"upcoming\",\n \"live\",\n \"completed\"\n + \ ],\n \"description\": \"Indicates if the video is an upcoming/active + live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active + live broadcast.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The live broadcast is upcoming.\",\n \"The live broadcast + is active.\",\n \"The live broadcast has been completed.\"\n ]\n + \ }\n },\n \"description\": \"Basic details about a video, + including title, description, uploader, thumbnails and category.\",\n \"type\": + \"object\",\n \"id\": \"VideoSnippet\"\n },\n \"MembershipsDurationAtLevel\": + {\n \"id\": \"MembershipsDurationAtLevel\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"memberTotalDurationMonths\": {\n \"format\": + \"int32\",\n \"type\": \"integer\",\n \"description\": \"The + cumulative time the user has been a member for the given level in complete + months (the time is rounded down to the nearest integer).\"\n },\n + \ \"memberSince\": {\n \"description\": \"The date and time + when the user became a continuous member for the given level.\",\n \"type\": + \"string\"\n },\n \"level\": {\n \"type\": \"string\",\n + \ \"description\": \"Pricing level ID.\"\n }\n }\n },\n + \ \"VideoPlayer\": {\n \"description\": \"Player to be used for a video + playback.\",\n \"properties\": {\n \"embedHtml\": {\n \"description\": + \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\",\n + \ \"type\": \"string\"\n },\n \"embedHeight\": {\n \"type\": + \"string\",\n \"format\": \"int64\"\n },\n \"embedWidth\": + {\n \"format\": \"int64\",\n \"type\": \"string\",\n \"description\": + \"The embed width\"\n }\n },\n \"id\": \"VideoPlayer\",\n + \ \"type\": \"object\"\n },\n \"LiveChatTextMessageDetails\": {\n + \ \"type\": \"object\",\n \"id\": \"LiveChatTextMessageDetails\",\n + \ \"properties\": {\n \"messageText\": {\n \"type\": \"string\",\n + \ \"description\": \"The user's message.\"\n }\n }\n },\n + \ \"VideoStatus\": {\n \"type\": \"object\",\n \"properties\": + {\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"embeddable\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This value indicates if the video can be embedded + on another website. @mutable youtube.videos.insert youtube.videos.update\"\n + \ },\n \"rejectionReason\": {\n \"enum\": [\n \"copyright\",\n + \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n + \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n + \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n + \ ],\n \"description\": \"This value explains why YouTube + rejected an uploaded video. This property is only present if the uploadStatus + property indicates that the upload was rejected.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"Copyright infringement.\",\n + \ \"Inappropriate video content.\",\n \"Duplicate upload + in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader + account was suspended.\",\n \"Video duration was too long.\",\n + \ \"Blocked by content owner.\",\n \"Uploader closed + his/her account.\",\n \"Trademark infringement.\",\n \"An + unspecified legal reason.\"\n ]\n },\n \"publicStatsViewable\": + {\n \"description\": \"This value indicates if the extended video + statistics on the watch page can be viewed by everyone. Note that the view + count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert + youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"license\": + {\n \"description\": \"The video's license. @mutable youtube.videos.insert + youtube.videos.update\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"youtube\",\n + \ \"creativeCommon\"\n ],\n \"type\": \"string\"\n + \ },\n \"uploadStatus\": {\n \"description\": \"The + status of the uploaded video.\",\n \"enum\": [\n \"uploaded\",\n + \ \"processed\",\n \"failed\",\n \"rejected\",\n + \ \"deleted\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"Video has been uploaded but not processed yet.\",\n \"Video + has been successfully processed.\",\n \"Processing has failed. + See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n + \ \"Video has been deleted.\"\n ]\n },\n \"publishAt\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the video is scheduled to publish. It can be set only if the + privacy status of the video is private..\",\n \"format\": \"date-time\"\n + \ },\n \"failureReason\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"Unable to convert video content.\",\n + \ \"Invalid file format.\",\n \"Empty file.\",\n \"File + was too small.\",\n \"Unsupported codec.\",\n \"Upload + wasn't finished.\"\n ],\n \"enum\": [\n \"conversion\",\n + \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n + \ \"codec\",\n \"uploadAborted\"\n ],\n \"description\": + \"This value explains why a video failed to upload. This property is only + present if the uploadStatus property indicates that the upload failed.\"\n + \ },\n \"privacyStatus\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's privacy status.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ]\n },\n \"madeForKids\": + {\n \"type\": \"boolean\"\n }\n },\n \"id\": \"VideoStatus\",\n + \ \"description\": \"Basic details about a video category, such as its + localized title. Next Id: 18\"\n },\n \"VideoProjectDetails\": {\n \"id\": + \"VideoProjectDetails\",\n \"type\": \"object\",\n \"description\": \"DEPRECATED. b/157517979: This part was never populated after it was added. However, it sees non-zero traffic because there is generated client code in the wild that refers to it [1]. We keep this field and do NOT remove it because otherwise V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"id\": \"VideoProjectDetails\"\n },\n \"ChannelStatistics\": - {\n \"properties\": {\n \"viewCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of times the channel has been viewed.\"\n },\n \"hiddenSubscriberCount\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the number of subscribers is shown for this user.\"\n },\n \"subscriberCount\": - {\n \"description\": \"The number of subscribers that the channel - has.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"commentCount\": {\n \"description\": \"The - number of comments for the channel.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"videoCount\": {\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of videos uploaded to the channel.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Statistics about a channel: number of subscribers, - number of videos in the channel, etc.\",\n \"id\": \"ChannelStatistics\",\n - \ \"type\": \"object\"\n },\n \"PlaylistItemSnippet\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistItemSnippet\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails. - Basic details of a YouTube Playlist item provided by the author. Next ID: - 15\",\n \"properties\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the user that added the item to the playlist.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist item. 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.\"\n },\n - \ \"title\": {\n \"description\": \"The item's title.\",\n - \ \"type\": \"string\"\n },\n \"videoOwnerChannelTitle\": - {\n \"description\": \"Channel title for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"playlistId\": + \ \"properties\": {}\n },\n \"VideoAbuseReportReasonListResponse\": + {\n \"properties\": {\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The `visitorId` identifies the visitor.\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"VideoAbuseReportReason\"\n },\n \"description\": + \"A list of valid abuse reasons that are used with `video.ReportAbuse`.\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"VideoAbuseReportReasonListResponse\"\n },\n + \ \"ThumbnailDetails\": {\n \"description\": \"Internal representation + of thumbnails for a YouTube resource.\",\n \"id\": \"ThumbnailDetails\",\n + \ \"properties\": {\n \"default\": {\n \"description\": + \"The default image for this resource.\",\n \"$ref\": \"Thumbnail\"\n + \ },\n \"standard\": {\n \"$ref\": \"Thumbnail\",\n + \ \"description\": \"The standard quality image for this resource.\"\n + \ },\n \"maxres\": {\n \"description\": \"The maximum + resolution quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n + \ },\n \"medium\": {\n \"description\": \"The medium + quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n + \ \"high\": {\n \"$ref\": \"Thumbnail\",\n \"description\": + \"The high quality image for this resource.\"\n }\n },\n \"type\": + \"object\"\n },\n \"ActivityContentDetailsPromotedItem\": {\n \"type\": + \"object\",\n \"description\": \"Details about a resource which is being + promoted.\",\n \"id\": \"ActivityContentDetailsPromotedItem\",\n \"properties\": + {\n \"forecastingUrl\": {\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"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.\"\n },\n \"descriptionText\": {\n \"type\": + \"string\",\n \"description\": \"The text description to accompany + the promoted item.\"\n },\n \"impressionUrl\": {\n \"description\": + \"The list of impression URLs. The client should ping all of these URLs to + indicate that the user was shown this promoted item.\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n + \ },\n \"clickTrackingUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The URL the client should ping to indicate that + the user clicked through on this promoted item.\"\n },\n \"ctaType\": + {\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The type of call-to-action, a message to the user indicating action that + can be taken.\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n + \ \"visitAdvertiserSite\"\n ]\n },\n \"customCtaButtonText\": + {\n \"description\": \"The custom call-to-action button text. If + specified, it will override the default button text for the cta_type.\",\n + \ \"type\": \"string\"\n },\n \"destinationUrl\": {\n + \ \"description\": \"The URL the client should direct the user to, + if the user chooses to visit the advertiser's website.\",\n \"type\": + \"string\"\n },\n \"adTag\": {\n \"type\": \"string\",\n + \ \"description\": \"The URL the client should fetch to request a + promoted item.\"\n },\n \"creativeViewUrl\": {\n \"type\": + \"string\",\n \"description\": \"The URL the client should ping to + indicate that the user was shown this promoted item.\"\n },\n \"videoId\": {\n \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"resourceId\": {\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that is included in the playlist as the playlist item.\",\n \"$ref\": - \"ResourceId\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n }\n },\n \"videoOwnerChannelId\": {\n - \ \"type\": \"string\",\n \"description\": \"Channel id for - the channel this video belongs to.\"\n },\n \"position\": {\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the item - was added to the playlist.\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The item's description.\"\n }\n }\n },\n \"LiveChatModeratorListResponse\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"description\": \"A list of - moderators that match the request criteria.\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ChannelContentDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelContentDetails\",\n \"description\": \"Details - about the content of a channel.\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"type\": \"object\",\n \"properties\": {\n \"favorites\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s favorite videos. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"watchLater\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s watch later playlist. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"watchHistory\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"likes\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"uploads\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s uploaded videos. Use the videos.insert method to upload new videos - and the videos.delete method to delete previously uploaded videos.\",\n \"type\": - \"string\"\n }\n }\n }\n }\n },\n \"LevelDetails\": - {\n \"type\": \"object\",\n \"id\": \"LevelDetails\",\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The name that should be used when referring to this level.\"\n }\n - \ }\n },\n \"MembershipsDurationAtLevel\": {\n \"properties\": - {\n \"level\": {\n \"type\": \"string\",\n \"description\": - \"Pricing level ID.\"\n },\n \"memberSince\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the user - became a continuous member for the given level.\"\n },\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - for the given level in complete months (the time is rounded down to the nearest - integer).\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"MembershipsDurationAtLevel\"\n - \ },\n \"ChannelSectionContentDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelSectionContentDetails\",\n \"properties\": {\n - \ \"channels\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"type\": \"array\"\n },\n \"playlists\": {\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"description\": \"Details about a channelsection, including playlists - and channels.\"\n },\n \"LiveChatNewSponsorDetails\": {\n \"id\": - \"LiveChatNewSponsorDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n },\n \"isUpgrade\": {\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"SuperChatEvent\": {\n \"description\": - \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\",\n \"type\": \"object\",\n \"id\": \"SuperChatEvent\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"default\": \"youtube#superChatEvent\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the Super Chat event.\"\n - \ }\n }\n },\n \"VideoAbuseReportSecondaryReason\": {\n \"id\": - \"VideoAbuseReportSecondaryReason\",\n \"properties\": {\n \"label\": - {\n \"description\": \"The localized label for this abuse report - secondary reason.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - this abuse report secondary reason.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveStreamConfigurationIssue\": {\n \"id\": - \"LiveStreamConfigurationIssue\",\n \"properties\": {\n \"reason\": - {\n \"type\": \"string\",\n \"description\": \"The short-form - reason for this issue.\"\n },\n \"severity\": {\n \"type\": - \"string\",\n \"description\": \"How severe this issue is to the - stream.\",\n \"enum\": [\n \"info\",\n \"warning\",\n - \ \"error\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The long-form - description of the issue and how to resolve it.\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The kind of error happening.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"MembershipsDuration\": - {\n \"type\": \"object\",\n \"properties\": {\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - across all levels in complete months (the time is rounded down to the nearest - integer).\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ },\n \"memberSince\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the user became a continuous - member across all levels.\"\n }\n },\n \"id\": \"MembershipsDuration\"\n - \ },\n \"LocalizedProperty\": {\n \"type\": \"object\",\n \"properties\": - {\n \"defaultLanguage\": {\n \"$ref\": \"LanguageTag\",\n - \ \"description\": \"The language of the default property.\"\n },\n - \ \"default\": {\n \"type\": \"string\"\n },\n \"localized\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n }\n }\n },\n \"id\": \"LocalizedProperty\"\n - \ },\n \"ActivityContentDetailsUpload\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Information about - the uploaded video.\",\n \"id\": \"ActivityContentDetailsUpload\"\n },\n - \ \"ChannelSettings\": {\n \"description\": \"Branding properties for - the channel view.\",\n \"id\": \"ChannelSettings\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the channel title.\"\n },\n \"featuredChannelsTitle\": - {\n \"type\": \"string\",\n \"description\": \"Title for - the featured channels tab.\"\n },\n \"keywords\": {\n \"type\": - \"string\",\n \"description\": \"Lists keywords associated with the - channel, comma-separated.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the channel description.\"\n - \ },\n \"profileColor\": {\n \"description\": \"A prominent - color that can be rendered on this channel page.\",\n \"type\": \"string\"\n - \ },\n \"showRelatedChannels\": {\n \"description\": - \"Whether related channels should be proposed.\",\n \"type\": \"boolean\"\n - \ },\n \"country\": {\n \"description\": \"The country - of the channel.\",\n \"type\": \"string\"\n },\n \"featuredChannelsUrls\": - {\n \"description\": \"The list of featured channels.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"trackingAnalyticsAccountId\": {\n \"type\": - \"string\",\n \"description\": \"The ID for a Google Analytics account - to track and measure traffic to the channels.\"\n },\n \"defaultTab\": - {\n \"description\": \"Which content tab users should see when viewing - the channel.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"unsubscribedTrailer\": - {\n \"description\": \"The trailer of the channel, for users that - are not subscribers.\",\n \"type\": \"string\"\n },\n \"showBrowseView\": - {\n \"description\": \"Whether the tab to browse the videos should - be displayed.\",\n \"type\": \"boolean\"\n },\n \"moderateComments\": - {\n \"description\": \"Whether user-submitted comments left on the - channel page need to be approved by the channel owner to be publicly visible.\",\n - \ \"type\": \"boolean\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsSocial\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"author\": {\n \"description\": \"The author - of the social network post.\",\n \"type\": \"string\"\n },\n - \ \"imageUrl\": {\n \"description\": \"An image of the post's - author.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the social network.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ]\n },\n \"referenceUrl\": - {\n \"description\": \"The URL of the social network post.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Details about a - social network post.\",\n \"id\": \"ActivityContentDetailsSocial\"\n - \ },\n \"VideoFileDetails\": {\n \"id\": \"VideoFileDetails\",\n - \ \"properties\": {\n \"durationMs\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - length of the uploaded video in milliseconds.\"\n },\n \"fileSize\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\"\n },\n \"fileType\": - {\n \"enum\": [\n \"video\",\n \"audio\",\n - \ \"image\",\n \"archive\",\n \"document\",\n - \ \"project\",\n \"other\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Known video - file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an MP3 - file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"description\": \"The uploaded file's type as detected by YouTube's - video processing engine. Currently, YouTube only processes video files, but - this field is present whether a video file or another type of file was uploaded.\"\n - \ },\n \"bitrateBps\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - video file's combined (video and audio) bitrate in bits per second.\"\n },\n - \ \"videoStreams\": {\n \"description\": \"A list of video - streams contained in the uploaded video file. Each item in the list contains - detailed metadata about a video stream.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ }\n },\n \"audioStreams\": {\n \"type\": - \"array\",\n \"description\": \"A list of audio streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about an audio stream.\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ }\n },\n \"fileName\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded file's name. This field is present - whether a video file or another type of file was uploaded.\"\n },\n - \ \"container\": {\n \"description\": \"The uploaded video - file's container format.\",\n \"type\": \"string\"\n },\n - \ \"creationTime\": {\n \"description\": \"The date and time - when the uploaded video file was created. The value is specified in ISO 8601 - format. Currently, the following ISO 8601 formats are supported: - Date only: - YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Describes original video file properties, - including technical details about audio and video streams, but also metadata - information like content length, digitization time, or geotagging information.\"\n - \ },\n \"LiveChatTextMessageDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatTextMessageDetails\",\n \"properties\": {\n \"messageText\": - {\n \"description\": \"The user's message.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LocalizedString\": {\n \"id\": - \"LocalizedString\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n },\n \"language\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"CommentThreadReplies\": - {\n \"id\": \"CommentThreadReplies\",\n \"description\": \"Comments - written in (direct or indirect) reply to the top level comment.\",\n \"properties\": - {\n \"comments\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"description\": - \"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.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SuperStickerMetadata\": {\n \"type\": \"object\",\n \"properties\": - {\n \"stickerId\": {\n \"type\": \"string\",\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\"\n - \ },\n \"altText\": {\n \"description\": \"Internationalized - alt text that describes the sticker image and any animation associated with - it.\",\n \"type\": \"string\"\n },\n \"altTextLanguage\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the alt text is returned.\"\n }\n - \ },\n \"id\": \"SuperStickerMetadata\"\n },\n \"ThirdPartyLinkStatus\": - {\n \"id\": \"ThirdPartyLinkStatus\",\n \"properties\": {\n \"linkStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ]\n }\n - \ },\n \"description\": \"The third-party link status object contains - information about the status of the link.\",\n \"type\": \"object\"\n - \ },\n \"InvideoPosition\": {\n \"description\": \"Describes the - spatial position of a visual widget inside a video. It is a union of various - position types, out of which only will be set one.\",\n \"properties\": - {\n \"cornerPosition\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\"\n - \ },\n \"type\": {\n \"enum\": [\n \"corner\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\"\n ],\n \"description\": \"Defines the - position type.\"\n }\n },\n \"id\": \"InvideoPosition\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsComment\": - {\n \"description\": \"Information about a resource that received a comment.\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource associated with the comment.\"\n }\n },\n - \ \"id\": \"ActivityContentDetailsComment\",\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageRetractedDetails\": {\n \"id\": \"LiveChatMessageRetractedDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"retractedMessageId\": - {\n \"type\": \"string\"\n }\n }\n },\n \"AbuseType\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"AbuseType\"\n - \ },\n \"VideoLocalization\": {\n \"type\": \"object\",\n \"description\": - \"Localized versions of certain video properties (e.g. title).\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"Localized version of the video's title.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's description.\"\n }\n },\n \"id\": - \"VideoLocalization\"\n },\n \"Playlist\": {\n \"description\": - \"A *playlist* resource represents a YouTube playlist. A playlist is a collection - of videos that can be viewed sequentially and shared with other users. A playlist - can contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"properties\": {\n \"player\": - {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": \"The - player object contains information that you would use to play the playlist - in an embedded player.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#playlist\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains information like video count.\",\n \"$ref\": - \"PlaylistContentDetails\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\",\n \"$ref\": \"PlaylistSnippet\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n }\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the playlist.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"status\": {\n \"$ref\": - \"PlaylistStatus\",\n \"description\": \"The status object contains - status information for the playlist.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"Playlist\"\n },\n \"VideoTopicDetails\": - {\n \"description\": \"Freebase topic information related to the video.\",\n - \ \"properties\": {\n \"relevantTopicIds\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\",\n - \ \"type\": \"array\"\n },\n \"topicIds\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Freebase topic IDs that are centrally - associated with the video. These are topics that are centrally featured in - the video, and it can be said that the video is mainly about each of these. - You can retrieve information about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n },\n \"topicCategories\": {\n \"type\": - \"array\",\n \"description\": \"A list of Wikipedia URLs that provide - a high-level description of the video's content.\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"id\": - \"VideoTopicDetails\",\n \"type\": \"object\"\n },\n \"ThumbnailSetResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + the promoted video.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"PlaylistItemContentDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"startAt\": {\n \"type\": \"string\",\n + \ \"description\": \"The time, measured in seconds from the start + of the video, when the video should start playing. (The playlist owner can + specify the times when the video should start and stop playing when the video + is played in the context of the playlist.) The default value is 0.\"\n },\n + \ \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify a video. To retrieve the video + resource, set the id query parameter to this value in your API request.\"\n + \ },\n \"endAt\": {\n \"description\": \"The time, measured + in seconds from the start of the video, when the video should stop playing. + (The playlist owner can specify the times when the video should start and + stop playing when the video is played in the context of the playlist.) By + default, assume that the video.endTime is the end of the video.\",\n \"type\": + \"string\"\n },\n \"note\": {\n \"description\": \"A + user-generated note for this item.\",\n \"type\": \"string\"\n },\n + \ \"videoPublishedAt\": {\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the video was published to YouTube.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"PlaylistItemContentDetails\"\n + \ },\n \"LiveStream\": {\n \"description\": \"A live stream describes + a live ingestion point.\",\n \"properties\": {\n \"contentDetails\": + {\n \"description\": \"The content_details object contains information + about the stream, including the closed captions ingestion URL.\",\n \"$ref\": + \"LiveStreamContentDetails\"\n },\n \"snippet\": {\n \"$ref\": + \"LiveStreamSnippet\",\n \"description\": \"The snippet object contains + basic details about the stream, including its channel, title, and description.\"\n + \ },\n \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": + \"The cdn object defines the live stream's content delivery network (CDN) + settings. These settings provide details about the manner in which you stream + your content to YouTube.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely + identify the stream.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveStreams.update\"\n ]\n }\n \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thumbnailSetResponse\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"description\": - \"A list of thumbnails.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThumbnailDetails\"\n }\n }\n },\n - \ \"id\": \"ThumbnailSetResponse\",\n \"type\": \"object\"\n },\n - \ \"VideoCategoryListResponse\": {\n \"type\": \"object\",\n \"id\": - \"VideoCategoryListResponse\",\n \"properties\": {\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoCategory\"\n },\n \"description\": \"A list of video - categories that can be associated with YouTube videos. In this map, the video - category ID is the map key, and its value is the corresponding videoCategory - resource.\"\n },\n \"prevPageToken\": {\n \"description\": + kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveStream\"\n + \ },\n \"status\": {\n \"description\": \"The status + object contains information about live stream's status.\",\n \"$ref\": + \"LiveStreamStatus\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"LiveStream\"\n },\n \"LocalizedString\": + {\n \"id\": \"LocalizedString\",\n \"properties\": {\n \"value\": + {\n \"type\": \"string\"\n },\n \"language\": {\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"SubscriptionSnippet\": + {\n \"properties\": {\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time that the subscription + was created.\",\n \"type\": \"string\"\n },\n \"thumbnails\": + {\n \"description\": \"A map of thumbnail images associated with + the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel that the subscription belongs to.\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The subscription's + title.\"\n },\n \"description\": {\n \"description\": + \"The subscription's details.\",\n \"type\": \"string\"\n },\n + \ \"resourceId\": {\n \"description\": \"The id object contains + information about the channel that the user subscribed to.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.subscriptions.insert\"\n + \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n + \ \"channelId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the subscriber's channel.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"SubscriptionSnippet\",\n + \ \"description\": \"Basic details about a subscription, including title, + description and thumbnails of the subscribed item.\",\n \"type\": \"object\"\n + \ },\n \"LiveChatMessageDeletedDetails\": {\n \"id\": \"LiveChatMessageDeletedDetails\",\n + \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatSuperChatDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatSuperChatDetails\",\n + \ \"properties\": {\n \"userComment\": {\n \"type\": \"string\",\n + \ \"description\": \"The comment added by the user to this Super Chat + event.\"\n },\n \"amountDisplayString\": {\n \"type\": + \"string\",\n \"description\": \"A rendered string that displays + the fund amount and currency to the user.\"\n },\n \"tier\": + {\n \"description\": \"The tier in which the amount belongs. Lower + amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"currency\": + {\n \"type\": \"string\",\n \"description\": \"The currency + in which the purchase was made.\"\n },\n \"amountMicros\": {\n + \ \"format\": \"uint64\",\n \"description\": \"The amount + purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": + \"string\"\n }\n }\n },\n \"ActivityContentDetailsUpload\": + {\n \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the uploaded video.\"\n }\n },\n \"description\": \"Information + about the uploaded video.\",\n \"id\": \"ActivityContentDetailsUpload\",\n + \ \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": {\n + \ \"properties\": {\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n + \ \"default\": \"youtube#liveBroadcastListResponse\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"description\": \"A list of broadcasts that match + the request criteria.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"prevPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.\",\n \"type\": \"string\"\n \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n \ \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"eventId\": {\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"LiveBroadcastListResponse\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsSubscription\": + {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsSubscription\",\n + \ \"description\": \"Information about a channel that a user subscribed + to.\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the resource that the user subscribed to.\"\n + \ }\n }\n },\n \"ThirdPartyLinkListResponse\": {\n \"type\": + \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n + \ \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"type\": \"array\"\n }\n },\n \"id\": \"ThirdPartyLinkListResponse\"\n + \ },\n \"CommentListResponse\": {\n \"type\": \"object\",\n \"id\": + \"CommentListResponse\",\n \"properties\": {\n \"eventId\": {\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"visitorId\": {\n \"description\": \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoCategoryListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n }\n },\n \"VideoGetRatingResponse\": {\n \"type\": - \"object\",\n \"id\": \"VideoGetRatingResponse\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoGetRatingResponse\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoRating\"\n },\n - \ \"description\": \"A list of ratings that match the request criteria.\"\n - \ }\n }\n },\n \"ChannelProfileDetails\": {\n \"properties\": - {\n \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channels's avatar URL.\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"channelUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channel's URL.\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelProfileDetails\",\n \"type\": \"object\"\n - \ },\n \"ChannelToStoreLinkDetails\": {\n \"properties\": {\n \"storeName\": - {\n \"description\": \"Name of the store.\",\n \"type\": - \"string\"\n },\n \"storeUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Landing page of the store.\"\n },\n \"merchantId\": - {\n \"type\": \"string\",\n \"description\": \"Google Merchant - Center id of the store.\",\n \"format\": \"uint64\"\n }\n - \ },\n \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"type\": \"object\",\n \"id\": - \"ChannelToStoreLinkDetails\"\n },\n \"LiveBroadcastSnippet\": {\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's title. Note that the broadcast - represents exactly one YouTube video. You can set this field by modifying - the broadcast resource or by setting the title field of the corresponding - video resource.\"\n },\n \"scheduledEndTime\": {\n \"description\": - \"The date and time that the broadcast is scheduled to end.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"isDefaultBroadcast\": - {\n \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\",\n \"type\": \"boolean\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"A map of thumbnail images associated with the broadcast. For each nested - object in this object, the key is the name of the thumbnail image, and the - value is an object that contains other information about the thumbnail.\"\n - \ },\n \"actualStartTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the broadcast actually started. This information is only available - once the broadcast's state is live.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast was added to YouTube's live broadcast schedule.\",\n - \ \"format\": \"date-time\"\n },\n \"liveChatId\": {\n - \ \"type\": \"string\",\n \"description\": \"The id of the - live chat for this broadcast.\"\n },\n \"actualEndTime\": {\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the broadcast actually ended. This information is only available - once the broadcast's state is complete.\",\n \"type\": \"string\"\n - \ },\n \"scheduledStartTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The date and time - that the broadcast is scheduled to start.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\"\n }\n },\n \"description\": \"Basic broadcast - information.\",\n \"type\": \"object\",\n \"id\": \"LiveBroadcastSnippet\"\n - \ },\n \"VideoSnippet\": {\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The video's - title. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that the video - was uploaded to.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the video was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the video belongs to.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the videos's default snippet.\",\n - \ \"type\": \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\",\n - \ \"$ref\": \"VideoLocalization\"\n },\n \"tags\": {\n - \ \"type\": \"array\",\n \"description\": \"A list of keyword - tags associated with the video. Tags may contain spaces.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - video category associated with the video.\"\n },\n \"defaultAudioLanguage\": - {\n \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The video's description. @mutable - youtube.videos.insert youtube.videos.update\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoSnippet\",\n \"description\": \"Basic - details about a video, including title, description, uploader, thumbnails - and category.\"\n },\n \"SubscriptionSnippet\": {\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Comment\"\n },\n \"description\": + \"A list of comments that match the request criteria.\"\n }\n }\n + \ },\n \"CommentSnippetAuthorChannelId\": {\n \"id\": \"CommentSnippetAuthorChannelId\",\n + \ \"type\": \"object\",\n \"description\": \"The id of the author's + YouTube channel, if any.\",\n \"properties\": {\n \"value\": {\n + \ \"type\": \"string\"\n }\n }\n },\n \"ThirdPartyLinkStatus\": + {\n \"id\": \"ThirdPartyLinkStatus\",\n \"description\": \"The third-party + link status object contains information about the status of the link.\",\n + \ \"properties\": {\n \"linkStatus\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"unknown\",\n \"failed\",\n \"pending\",\n + \ \"linked\"\n ]\n }\n },\n \"type\": + \"object\"\n },\n \"ChannelTopicDetails\": {\n \"description\": + \"Freebase topic information related to the channel.\",\n \"id\": \"ChannelTopicDetails\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"topicCategories\": + {\n \"type\": \"array\",\n \"description\": \"A list of + Wikipedia URLs that describe the channel's content.\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"topicIds\": + {\n \"description\": \"A list of Freebase topic IDs associated with + the channel. You can retrieve information about each topic using the Freebase + Topic API.\",\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"type\": \"array\"\n }\n }\n },\n + \ \"PlaylistLocalization\": {\n \"description\": \"Playlist localization + setting\",\n \"properties\": {\n \"title\": {\n \"description\": + \"The localized strings for playlist's title.\",\n \"type\": \"string\"\n \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The subscription's details.\"\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"annotations\": {\n \"required\": - [\n \"youtube.subscriptions.insert\"\n ]\n },\n - \ \"description\": \"The id object contains information about the - channel that the user subscribed to.\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The subscription's - title.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the subscription was created.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the subscription belongs to.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the video. For each object in the map, the key is the name of the thumbnail + \ \"description\": \"The localized strings for playlist's description.\"\n + \ }\n },\n \"id\": \"PlaylistLocalization\",\n \"type\": + \"object\"\n },\n \"MembershipsLevel\": {\n \"description\": \"A + *membershipsLevel* resource represents an offer made by YouTube creators for + their fans. Users can become members of the channel by joining one of the + available levels. They will provide recurring monetary support and receives + special benefits.\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": + \"MembershipsLevelSnippet\",\n \"description\": \"The snippet object + contains basic details about the level.\"\n },\n \"etag\": {\n + \ \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the memberships level.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevel\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"MembershipsLevel\"\n + \ },\n \"VideoStatistics\": {\n \"type\": \"object\",\n \"properties\": + {\n \"favoriteCount\": {\n \"description\": \"The number of + users who currently have the video marked as a favorite video.\",\n \"format\": + \"uint64\",\n \"type\": \"string\"\n },\n \"dislikeCount\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The number of users who have indicated that they disliked the video by giving + it a negative rating.\"\n },\n \"likeCount\": {\n \"description\": + \"The number of users who have indicated that they liked the video by giving + it a positive rating.\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n },\n \"commentCount\": {\n \"format\": + \"uint64\",\n \"description\": \"The number of comments for the video.\",\n + \ \"type\": \"string\"\n },\n \"viewCount\": {\n \"format\": + \"uint64\",\n \"description\": \"The number of times the video has + been viewed.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"VideoStatistics\",\n \"description\": \"Statistics about the video, + such as the number of times the video was viewed or liked.\"\n },\n \"ActivityContentDetailsChannelItem\": + {\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"description\": + \"Details about a resource which was added to a channel.\",\n \"type\": + \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + that was added to the channel.\",\n \"$ref\": \"ResourceId\"\n }\n + \ }\n },\n \"ChannelSettings\": {\n \"description\": \"Branding + properties for the channel view.\",\n \"type\": \"object\",\n \"id\": + \"ChannelSettings\",\n \"properties\": {\n \"keywords\": {\n \"description\": + \"Lists keywords associated with the channel, comma-separated.\",\n \"type\": + \"string\"\n },\n \"country\": {\n \"description\": + \"The country of the channel.\",\n \"type\": \"string\"\n },\n + \ \"description\": {\n \"description\": \"Specifies the channel + description.\",\n \"type\": \"string\"\n },\n \"unsubscribedTrailer\": + {\n \"type\": \"string\",\n \"description\": \"The trailer + of the channel, for users that are not subscribers.\"\n },\n \"featuredChannelsTitle\": + {\n \"description\": \"Title for the featured channels tab.\",\n + \ \"type\": \"string\"\n },\n \"defaultTab\": {\n \"type\": + \"string\",\n \"description\": \"Which content tab users should see + when viewing the channel.\"\n },\n \"showRelatedChannels\": + {\n \"description\": \"Whether related channels should be proposed.\",\n + \ \"type\": \"boolean\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"Specifies the channel title.\"\n + \ },\n \"defaultLanguage\": {\n \"type\": \"string\"\n + \ },\n \"showBrowseView\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether the tab to browse the videos should be + displayed.\"\n },\n \"trackingAnalyticsAccountId\": {\n \"type\": + \"string\",\n \"description\": \"The ID for a Google Analytics account + to track and measure traffic to the channels.\"\n },\n \"moderateComments\": + {\n \"description\": \"Whether user-submitted comments left on the + channel page need to be approved by the channel owner to be publicly visible.\",\n + \ \"type\": \"boolean\"\n },\n \"profileColor\": {\n + \ \"description\": \"A prominent color that can be rendered on this + channel page.\",\n \"type\": \"string\"\n },\n \"featuredChannelsUrls\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"The list of featured channels.\",\n \"type\": + \"array\"\n }\n }\n },\n \"VideoSuggestionsTagSuggestion\": + {\n \"id\": \"VideoSuggestionsTagSuggestion\",\n \"properties\": + {\n \"tag\": {\n \"type\": \"string\",\n \"description\": + \"The keyword tag suggested for the video.\"\n },\n \"categoryRestricts\": + {\n \"description\": \"A set of video categories for which the tag + is relevant. You can use this information to display appropriate tag suggestions + based on the video category that the video uploader associates with the video. + By default, tag suggestions are relevant for all categories if there are no + restricts defined for the keyword.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n }\n },\n + \ \"description\": \"A single tag suggestion with it's relevance information.\",\n + \ \"type\": \"object\"\n },\n \"SearchResultSnippet\": {\n \"properties\": + {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n }\n },\n - \ \"id\": \"SubscriptionSnippet\",\n \"description\": \"Basic details - about a subscription, including title, description and thumbnails of the subscribed - item.\",\n \"type\": \"object\"\n },\n \"VideoLiveStreamingDetails\": - {\n \"id\": \"VideoLiveStreamingDetails\",\n \"type\": \"object\",\n - \ \"description\": \"Details about the live streaming metadata.\",\n \"properties\": - {\n \"activeLiveChatId\": {\n \"description\": \"The ID of - the currently active live chat attached to this video. This field is filled - only if the video is a currently live broadcast that has live chat. Once the - broadcast transitions to complete this field will be removed and the live - chat closed down. For persistent broadcasts that live chat id will no longer - be tied to this video but rather to the new video being displayed at the persistent - page.\",\n \"type\": \"string\"\n },\n \"actualStartTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - time that the broadcast actually started. This value will not be available - until the broadcast begins.\",\n \"type\": \"string\"\n },\n - \ \"concurrentViewers\": {\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"actualEndTime\": {\n - \ \"description\": \"The time that the broadcast actually ended. This - value will not be available until the broadcast is over.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"scheduledEndTime\": - {\n \"description\": \"The time that the broadcast is scheduled to - end. If the value is empty or the property is not present, then the broadcast - is scheduled to contiue indefinitely.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"scheduledStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast is scheduled to begin.\"\n - \ }\n }\n },\n \"ResourceId\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"The type of the API resource.\"\n },\n \"channelId\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the referred resource, if that resource is a channel. This property is only - present if the resourceId.kind value is youtube#channel.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the referred resource, if that resource is a video. This property is only - present if the resourceId.kind value is youtube#video.\"\n }\n },\n - \ \"id\": \"ResourceId\",\n \"description\": \"A resource id is a - generic reference that points to another YouTube resource.\"\n },\n \"VideoFileDetailsAudioStream\": - {\n \"properties\": {\n \"bitrateBps\": {\n \"description\": - \"The audio stream's bitrate, in bits per second.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n },\n \"channelCount\": {\n \"type\": - \"integer\",\n \"description\": \"The number of audio channels that - the stream contains.\",\n \"format\": \"uint32\"\n },\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The audio - codec that the stream uses.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Information about an audio stream.\",\n \"id\": - \"VideoFileDetailsAudioStream\"\n },\n \"SearchResultSnippet\": {\n - \ \"description\": \"Basic details about a search result, including title, - description and thumbnails of the item referenced by the search result.\",\n - \ \"properties\": {\n \"title\": {\n \"description\": - \"The title of the search result.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The creation date - and time of the resource that the search result identifies.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"A description - of the search result.\"\n },\n \"channelId\": {\n \"description\": + thumbnail.\"\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The title of the search result.\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the search result. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"The title of the channel that published - the resource that the search result identifies.\"\n },\n \"liveBroadcastContent\": - {\n \"description\": \"It indicates if the resource (video or channel) + the resource that the search result identifies.\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"A description + of the search result.\"\n },\n \"liveBroadcastContent\": {\n + \ \"description\": \"It indicates if the resource (video or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" if there - is not any upcoming/active live broadcasts.\",\n \"enumDescriptions\": + is not any upcoming/active live broadcasts.\",\n \"enum\": [\n \"none\",\n + \ \"upcoming\",\n \"live\",\n \"completed\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\"\n }\n },\n \"id\": \"SearchResultSnippet\",\n - \ \"type\": \"object\"\n },\n \"PlaylistItem\": {\n \"id\": - \"PlaylistItem\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItem\\\".\",\n \"default\": - \"youtube#playlistItem\"\n },\n \"status\": {\n \"$ref\": - \"PlaylistItemStatus\",\n \"description\": \"The status object contains - information about the playlist item's privacy status.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the playlist item, such as its title and position in the playlist.\",\n - \ \"$ref\": \"PlaylistItemSnippet\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n - \ }\n },\n \"description\": \"A *playlistItem* resource identifies - another resource, such as a video, that is included in a playlist. In addition, - the playlistItem resource contains details about the included resource that - pertain specifically to how that resource is used in that playlist. YouTube - uses playlists to identify special collections of videos for a channel, such - as: - uploaded videos - favorite videos - positively rated (liked) videos - - watch history - watch later To be more specific, these lists are associated - with a channel, which is a collection of a person, group, or company's videos, - playlists, and other YouTube information. You can retrieve the playlist IDs - for each of these lists from the channel resource for a given channel. You - can then use the playlistItems.list method to retrieve any of those lists. - You can also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods. For example, if a user gives a positive - rating to a video, you would insert that video into the liked videos playlist - for that user's channel.\"\n },\n \"ActivityContentDetailsLike\": {\n - \ \"description\": \"Information about a resource that received a positive - (like) rating.\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsLike\"\n },\n \"I18nLanguage\": - {\n \"id\": \"I18nLanguage\",\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the i18n language.\"\n },\n \"kind\": - {\n \"default\": \"youtube#i18nLanguage\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the i18n language, such as language code and human-readable - name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n }\n },\n - \ \"description\": \"An *i18nLanguage* resource identifies a UI language - currently supported by YouTube.\",\n \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"properties\": {\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"frameRateFps\": {\n \"format\": \"double\",\n \"type\": - \"number\",\n \"description\": \"The video stream's frame rate, in - frames per second.\"\n },\n \"codec\": {\n \"type\": - \"string\",\n \"description\": \"The video codec that the stream - uses.\"\n },\n \"heightPixels\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The encoded - video content's height in pixels.\"\n },\n \"bitrateBps\": {\n - \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The video stream's bitrate, in bits per second.\"\n },\n \"rotation\": - {\n \"description\": \"The amount that YouTube needs to rotate the - original source content to properly display the video.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"none\",\n \"clockwise\",\n \"upsideDown\",\n - \ \"counterClockwise\",\n \"other\"\n ]\n },\n - \ \"widthPixels\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The encoded video content's width - in pixels. You can calculate the video's encoding aspect ratio as width_pixels - / height_pixels.\"\n },\n \"aspectRatio\": {\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\",\n \"type\": \"number\",\n - \ \"format\": \"double\"\n }\n },\n \"id\": \"VideoFileDetailsVideoStream\",\n - \ \"description\": \"Information about a video stream.\",\n \"type\": - \"object\"\n },\n \"LiveChatMembershipGiftingDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"giftMembershipsCount\": {\n - \ \"description\": \"The number of gift memberships purchased by the - user.\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ },\n \"giftMembershipsLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\"\n }\n - \ },\n \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n \"ChannelSectionLocalization\": - {\n \"id\": \"ChannelSectionLocalization\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for channel section's title.\"\n - \ }\n },\n \"description\": \"ChannelSection localization - setting\"\n },\n \"SubscriptionSubscriberSnippet\": {\n \"id\": - \"SubscriptionSubscriberSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about a subscription's subscriber including title, description, - channel ID and thumbnails.\",\n \"properties\": {\n \"thumbnails\": - {\n \"description\": \"Thumbnails for this subscriber.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The channel ID of the subscriber.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the subscriber.\"\n },\n \"description\": {\n - \ \"type\": \"string\",\n \"description\": \"The description - of the subscriber.\"\n }\n }\n },\n \"Thumbnail\": {\n \"properties\": - {\n \"height\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"(Optional) Height of the thumbnail - image.\"\n },\n \"width\": {\n \"type\": \"integer\",\n - \ \"description\": \"(Optional) Width of the thumbnail image.\",\n - \ \"format\": \"uint32\"\n },\n \"url\": {\n \"description\": - \"The thumbnail image's URL.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"A thumbnail is an image representing a - YouTube resource.\",\n \"id\": \"Thumbnail\",\n \"type\": \"object\"\n - \ },\n \"VideoCategorySnippet\": {\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The video - category's title.\"\n },\n \"assignable\": {\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel that created the video category.\",\n - \ \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\"\n }\n },\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\",\n \"id\": \"VideoCategorySnippet\",\n \"type\": - \"object\"\n },\n \"ChannelBannerResource\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL of this banner image.\"\n },\n - \ \"etag\": {\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#channelBannerResource\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelBannerResource\\\".\"\n }\n },\n - \ \"id\": \"ChannelBannerResource\",\n \"description\": \"A channel - banner returned as the response to a channel_banner.insert call.\"\n },\n - \ \"Caption\": {\n \"description\": \"A *caption* resource represents - a YouTube caption track. A caption track is associated with exactly one YouTube - video.\",\n \"id\": \"Caption\",\n \"properties\": {\n \"id\": + \ ]\n },\n \"channelTitle\": {\n \"type\": + \"string\",\n \"description\": \"The title of the channel that published + the resource that the search result identifies.\"\n },\n \"publishedAt\": + {\n \"description\": \"The creation date and time of the resource + that the search result identifies.\",\n \"type\": \"string\",\n \"format\": + \"date-time\"\n }\n },\n \"id\": \"SearchResultSnippet\",\n + \ \"type\": \"object\",\n \"description\": \"Basic details about + a search result, including title, description and thumbnails of the item referenced + by the search result.\"\n },\n \"VideoListResponse\": {\n \"id\": + \"VideoListResponse\",\n \"properties\": {\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Video\"\n }\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"kind\": {\n \"default\": + \"youtube#videoListResponse\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"type\": \"object\"\n },\n \"MembershipsDetails\": + {\n \"type\": \"object\",\n \"id\": \"MembershipsDetails\",\n \"properties\": + {\n \"membershipsDuration\": {\n \"$ref\": \"MembershipsDuration\",\n + \ \"description\": \"Data about memberships duration without taking + into consideration pricing levels.\"\n },\n \"highestAccessibleLevelDisplayName\": + {\n \"description\": \"Display name for the highest level that the + user has access to at the moment.\",\n \"type\": \"string\"\n },\n + \ \"membershipsDurationAtLevels\": {\n \"description\": \"Data + about memberships duration on particular pricing levels.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n + \ }\n },\n \"highestAccessibleLevel\": {\n \"type\": + \"string\",\n \"description\": \"Id of the highest level that the + user has access to at the moment.\"\n },\n \"accessibleLevels\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"Ids of all levels + that the user has access to. This includes the currently active level and + all other levels that are included because of a higher purchase.\"\n }\n + \ }\n },\n \"LiveChatMessageAuthorDetails\": {\n \"type\": + \"object\",\n \"properties\": {\n \"profileImageUrl\": {\n \"type\": + \"string\",\n \"description\": \"The channels's avatar URL.\"\n },\n + \ \"isChatSponsor\": {\n \"description\": \"Whether the author + is a sponsor of the live chat.\",\n \"type\": \"boolean\"\n },\n + \ \"isChatModerator\": {\n \"description\": \"Whether the author + is a moderator of the live chat.\",\n \"type\": \"boolean\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The YouTube channel ID.\"\n },\n \"isChatOwner\": {\n \"description\": + \"Whether the author is the owner of the live chat.\",\n \"type\": + \"boolean\"\n },\n \"isVerified\": {\n \"description\": + \"Whether the author's identity has been verified by YouTube.\",\n \"type\": + \"boolean\"\n },\n \"channelUrl\": {\n \"description\": + \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"displayName\": + {\n \"type\": \"string\",\n \"description\": \"The channel's + display name.\"\n }\n },\n \"id\": \"LiveChatMessageAuthorDetails\"\n + \ },\n \"GeoPoint\": {\n \"id\": \"GeoPoint\",\n \"type\": + \"object\",\n \"description\": \"Geographical coordinates of a point, + in WGS84.\",\n \"properties\": {\n \"latitude\": {\n \"description\": + \"Latitude in degrees.\",\n \"format\": \"double\",\n \"type\": + \"number\"\n },\n \"longitude\": {\n \"type\": \"number\",\n + \ \"format\": \"double\",\n \"description\": \"Longitude + in degrees.\"\n },\n \"altitude\": {\n \"type\": \"number\",\n + \ \"description\": \"Altitude above the reference ellipsoid, in meters.\",\n + \ \"format\": \"double\"\n }\n }\n },\n \"LiveBroadcastStatus\": + {\n \"description\": \"Live broadcast state.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"recordingStatus\": {\n \"type\": + \"string\",\n \"description\": \"The broadcast's recording status.\",\n + \ \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n + \ \"notRecording\",\n \"recording\",\n \"recorded\"\n + \ ],\n \"enumDescriptions\": [\n \"No value or + the value is unknown.\",\n \"The recording has not yet been started.\",\n + \ \"The recording is currently on.\",\n \"The recording + is completed, and cannot be started again.\"\n ]\n },\n \"privacyStatus\": {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the caption track.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#caption\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ThumbnailDetails\": {\n \"type\": \"object\",\n \"description\": - \"Internal representation of thumbnails for a YouTube resource.\",\n \"properties\": - {\n \"high\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The high quality image for this resource.\"\n },\n \"medium\": - {\n \"description\": \"The medium quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"maxres\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The maximum resolution quality - image for this resource.\"\n },\n \"standard\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The standard quality image for - this resource.\"\n },\n \"default\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The default image for this resource.\"\n - \ }\n },\n \"id\": \"ThumbnailDetails\"\n },\n \"LiveStreamStatus\": - {\n \"id\": \"LiveStreamStatus\",\n \"type\": \"object\",\n \"description\": - \"Brief description of the live stream status.\",\n \"properties\": {\n - \ \"healthStatus\": {\n \"description\": \"The health status - of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n },\n - \ \"streamStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ]\n }\n }\n },\n \"VideoProcessingDetails\": - {\n \"id\": \"VideoProcessingDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"processingIssuesAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether the - video processing engine has generated suggestions that might improve YouTube's - ability to process the the video, warnings that explain video processing problems, - or errors that cause video processing problems. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"processingProgress\": {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"The processingProgress object contains information - about the progress YouTube has made in processing the video. The values are - really only relevant if the video's processing status is processing.\"\n },\n - \ \"tagSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether keyword (tag) suggestions are available for the video. - Tags can be added to a video's metadata to make it easier for other users - to find the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"processingFailureReason\": {\n \"description\": \"The reason - that YouTube failed to process the video. This property will only have a value - if the processingStatus property's value is failed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"type\": - \"string\"\n },\n \"editorSuggestionsAvailability\": {\n \"description\": - \"This value indicates whether video editing suggestions, which might improve - video quality or the playback experience, are available for the video. You - can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"fileDetailsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether file details are available for the uploaded video. You can - retrieve a video's file details by requesting the fileDetails part in your - videos.list() request.\"\n },\n \"processingStatus\": {\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's processing status. This value indicates - whether YouTube was able to process the video or if the video is still being - processed.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"thumbnailsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether thumbnail images have been generated for the video.\"\n - \ }\n },\n \"description\": \"Describes processing status - and progress and availability of some other Video resource parts.\"\n },\n - \ \"PlaylistStatus\": {\n \"id\": \"PlaylistStatus\",\n \"type\": - \"object\",\n \"properties\": {\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The playlist's privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n }\n },\n - \ \"InvideoBranding\": {\n \"description\": \"LINT.IfChange Describes - an invideo branding.\",\n \"properties\": {\n \"imageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"The url of the - uploaded image. Only used in apiary to api communication.\"\n },\n - \ \"timing\": {\n \"$ref\": \"InvideoTiming\",\n \"description\": - \"The temporal position within the video where watermark will be displayed.\"\n - \ },\n \"imageBytes\": {\n \"description\": \"The bytes - the uploaded image. Only used in api to youtube communication.\",\n \"type\": - \"string\",\n \"format\": \"byte\"\n },\n \"targetChannelId\": - {\n \"description\": \"The channel to which this branding links. - If not present it defaults to the current channel.\",\n \"type\": - \"string\"\n },\n \"position\": {\n \"$ref\": \"InvideoPosition\",\n - \ \"description\": \"The spatial position within the video where the - branding watermark will be displayed.\"\n }\n },\n \"id\": - \"InvideoBranding\",\n \"type\": \"object\"\n },\n \"CommentThreadSnippet\": + [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"description\": + \"The broadcast's privacy status. Note that the broadcast represents exactly + one YouTube video, so the privacy settings are identical to those supported + for videos. In addition, you can set this field by modifying the broadcast + resource or by setting the privacyStatus field of the corresponding video + resource.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"liveBroadcastPriority\": + {\n \"description\": \"Priority of the live broadcast event (internal + state).\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n + \ \"low\",\n \"normal\",\n \"high\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Low priority + broadcast: for low view count HoAs or other low priority broadcasts.\",\n + \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n + \ \"High priority broadcast: for high profile HoAs, like PixelCorp + ones.\"\n ],\n \"type\": \"string\"\n },\n \"madeForKids\": + {\n \"description\": \"Whether the broadcast is made for kids or + not, decided by YouTube instead of the creator. This field is read only.\",\n + \ \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\",\n \"description\": \"This field + will be set to True if the creator declares the broadcast to be kids only: + go/live-cw-work.\"\n },\n \"lifeCycleStatus\": {\n \"enum\": + [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n + \ \"ready\",\n \"testing\",\n \"live\",\n + \ \"complete\",\n \"revoked\",\n \"testStarting\",\n + \ \"liveStarting\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"No value or the value is + unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete + settings\",\n \"Visible only to partner, may need special UI treatment\",\n + \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n + \ \"The broadcast is finished.\",\n \"This broadcast + was removed by admin action\",\n \"Transition into TESTING has + been requested\",\n \"Transition into LIVE has been requested\"\n + \ ],\n \"description\": \"The broadcast's status. The status + can be updated using the API's liveBroadcasts.transition method.\"\n }\n + \ },\n \"id\": \"LiveBroadcastStatus\"\n },\n \"LiveChatMessageRetractedDetails\": + {\n \"properties\": {\n \"retractedMessageId\": {\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\",\n + \ \"type\": \"object\"\n },\n \"ChannelSection\": {\n \"properties\": + {\n \"kind\": {\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n + \ \"default\": \"youtube#channelSection\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the channel section, such as its type, style and title.\"\n },\n \"localizations\": + {\n \"additionalProperties\": {\n \"$ref\": \"ChannelSectionLocalization\"\n + \ },\n \"description\": \"Localizations for different languages\",\n + \ \"type\": \"object\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the channel section.\"\n },\n \"contentDetails\": {\n + \ \"description\": \"The contentDetails object contains details about + the channel section content, such as a list of playlists or channels featured + in the section.\",\n \"$ref\": \"ChannelSectionContentDetails\"\n + \ },\n \"targeting\": {\n \"description\": \"The targeting + object contains basic targeting settings about the channel section.\",\n \"$ref\": + \"ChannelSectionTargeting\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n }\n + \ },\n \"id\": \"ChannelSection\",\n \"type\": \"object\"\n + \ },\n \"ChannelStatistics\": {\n \"type\": \"object\",\n \"description\": + \"Statistics about a channel: number of subscribers, number of videos in the + channel, etc.\",\n \"properties\": {\n \"viewCount\": {\n \"type\": + \"string\",\n \"description\": \"The number of times the channel + has been viewed.\",\n \"format\": \"uint64\"\n },\n \"commentCount\": + {\n \"format\": \"uint64\",\n \"description\": \"The number + of comments for the channel.\",\n \"type\": \"string\"\n },\n + \ \"hiddenSubscriberCount\": {\n \"type\": \"boolean\",\n \"description\": + \"Whether or not the number of subscribers is shown for this user.\"\n },\n + \ \"subscriberCount\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"The number of subscribers that the + channel has.\"\n },\n \"videoCount\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + number of videos uploaded to the channel.\"\n }\n },\n \"id\": + \"ChannelStatistics\"\n },\n \"LiveChatSuperStickerDetails\": {\n \"id\": + \"LiveChatSuperStickerDetails\",\n \"properties\": {\n \"tier\": + {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The tier in which the amount belongs. Lower amounts belong to lower tiers. + The lowest tier is 1.\"\n },\n \"superStickerMetadata\": {\n + \ \"$ref\": \"SuperStickerMetadata\",\n \"description\": + \"Information about the Super Sticker.\"\n },\n \"amountMicros\": + {\n \"format\": \"uint64\",\n \"description\": \"The amount + purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": + \"string\"\n },\n \"amountDisplayString\": {\n \"type\": + \"string\",\n \"description\": \"A rendered string that displays + the fund amount and currency to the user.\"\n },\n \"currency\": + {\n \"type\": \"string\",\n \"description\": \"The currency + in which the purchase was made.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"ChannelToStoreLinkDetails\": {\n \"description\": \"Information + specific to a store on a merchandising platform linked to a YouTube channel.\",\n + \ \"id\": \"ChannelToStoreLinkDetails\",\n \"properties\": {\n \"storeUrl\": + {\n \"description\": \"Landing page of the store.\",\n \"type\": + \"string\"\n },\n \"merchantId\": {\n \"format\": \"uint64\",\n + \ \"description\": \"Google Merchant Center id of the store.\",\n + \ \"type\": \"string\"\n },\n \"storeName\": {\n \"type\": + \"string\",\n \"description\": \"Name of the store.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"CommentThreadSnippet\": {\n \"id\": \"CommentThreadSnippet\",\n \"description\": \"Basic - details about a comment thread.\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"isPublic\": {\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\",\n \"type\": \"boolean\"\n },\n \"topLevelComment\": - {\n \"$ref\": \"Comment\",\n \"description\": \"The top - level comment of this thread.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the video the comments - refer to, if any. No video_id implies a channel discussion comment.\"\n },\n - \ \"totalReplyCount\": {\n \"description\": \"The total number - of replies (not including the top level comment).\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"canReply\": + details about a comment thread.\",\n \"properties\": {\n \"canReply\": {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"Cuepoint\": {\n \"description\": - \"Note that there may be a 5-second end-point resolution issue. For instance, - if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\",\n \"id\": \"Cuepoint\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\"\n },\n \"cueType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ]\n },\n \"id\": - {\n \"description\": \"The identifier for cuepoint resource.\",\n - \ \"type\": \"string\"\n },\n \"durationSecs\": {\n + - other viewers may see a different value for this field.\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"totalReplyCount\": {\n \"format\": + \"uint32\",\n \"description\": \"The total number of replies (not + including the top level comment).\",\n \"type\": \"integer\"\n },\n + \ \"isPublic\": {\n \"description\": \"Whether the thread (and + therefore all its comments) is visible to all YouTube users.\",\n \"type\": + \"boolean\"\n },\n \"topLevelComment\": {\n \"$ref\": + \"Comment\",\n \"description\": \"The top level comment of this thread.\"\n + \ },\n \"videoId\": {\n \"description\": \"The ID of + the video the comments refer to, if any. No video_id implies a channel discussion + comment.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\"\n },\n \"VideoAbuseReportReasonSnippet\": {\n \"id\": + \"VideoAbuseReportReasonSnippet\",\n \"type\": \"object\",\n \"properties\": + {\n \"label\": {\n \"description\": \"The localized label + belonging to this abuse report reason.\",\n \"type\": \"string\"\n + \ },\n \"secondaryReasons\": {\n \"description\": \"The + secondary reasons associated with this reason, if any are available. (There + might be 0 or more.)\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n + \ },\n \"type\": \"array\"\n }\n },\n \"description\": + \"Basic details about a video category, such as its localized title.\"\n },\n + \ \"ChannelConversionPings\": {\n \"type\": \"object\",\n \"description\": + \"The conversionPings object encapsulates information about conversion pings + that need to be respected by the channel.\",\n \"id\": \"ChannelConversionPings\",\n + \ \"properties\": {\n \"pings\": {\n \"items\": {\n \"$ref\": + \"ChannelConversionPing\"\n },\n \"type\": \"array\",\n + \ \"description\": \"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.\"\n }\n }\n },\n \"VideoLocalization\": + {\n \"type\": \"object\",\n \"description\": \"Localized versions + of certain video properties (e.g. title).\",\n \"properties\": {\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"Localized + version of the video's description.\"\n },\n \"title\": {\n + \ \"description\": \"Localized version of the video's title.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoLocalization\"\n + \ },\n \"VideoCategoryListResponse\": {\n \"id\": \"VideoCategoryListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n \"default\": + \"youtube#videoCategoryListResponse\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"VideoCategory\"\n },\n \"description\": + \"A list of video categories that can be associated with YouTube videos. In + this map, the video category ID is the map key, and its value is the corresponding + videoCategory resource.\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"ChannelLocalization\": + {\n \"type\": \"object\",\n \"description\": \"Channel localization + setting\",\n \"properties\": {\n \"title\": {\n \"description\": + \"The localized strings for channel's title.\",\n \"type\": \"string\"\n + \ },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The localized strings for channel's description.\"\n + \ }\n },\n \"id\": \"ChannelLocalization\"\n },\n \"CaptionListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"items\": + {\n \"description\": \"A list of captions that match the request + criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"Caption\"\n }\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#captionListResponse\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"CaptionListResponse\"\n },\n + \ \"MembershipsDuration\": {\n \"properties\": {\n \"memberTotalDurationMonths\": + {\n \"type\": \"integer\",\n \"description\": \"The cumulative + time the user has been a member across all levels in complete months (the + time is rounded down to the nearest integer).\",\n \"format\": \"int32\"\n + \ },\n \"memberSince\": {\n \"description\": \"The date + and time when the user became a continuous member across all levels.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"MembershipsDuration\"\n },\n \"Cuepoint\": {\n \"type\": + \"object\",\n \"description\": \"Note that there may be a 5-second end-point + resolution issue. For instance, if a cuepoint comes in for 22:03:27, we may + stuff the cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact + of HLS.\",\n \"id\": \"Cuepoint\",\n \"properties\": {\n \"cueType\": + {\n \"enum\": [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\"\n },\n \"durationSecs\": {\n \ \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": \"The duration of this cuepoint.\"\n },\n \"walltimeMs\": {\n - \ \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The wall clock time at which the cuepoint should be inserted. Only one of - insertion_offset_time_ms and walltime_ms may be set at a time.\"\n },\n - \ \"insertionOffsetTimeMs\": {\n \"type\": \"string\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\",\n \"format\": \"int64\"\n }\n }\n - \ },\n \"LiveChatMessageAuthorDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageAuthorDetails\",\n \"properties\": {\n - \ \"channelUrl\": {\n \"description\": \"The channel's URL.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube channel ID.\"\n },\n - \ \"isChatOwner\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is the owner of the live chat.\"\n },\n \"isChatModerator\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is a moderator of the live chat.\"\n },\n \"displayName\": - {\n \"description\": \"The channel's display name.\",\n \"type\": - \"string\"\n },\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n },\n \"profileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channels's avatar URL.\"\n },\n - \ \"isChatSponsor\": {\n \"description\": \"Whether the author - is a sponsor of the live chat.\",\n \"type\": \"boolean\"\n }\n - \ }\n },\n \"VideoAbuseReportReasonListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"items\": {\n \"items\": - {\n \"$ref\": \"VideoAbuseReportReason\"\n },\n \"description\": - \"A list of valid abuse reasons that are used with `video.ReportAbuse`.\",\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoAbuseReportReasonListResponse\",\n \"type\": \"string\",\n + \ \"description\": \"The wall clock time at which the cuepoint should + be inserted. Only one of insertion_offset_time_ms and walltime_ms may be set + at a time.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The identifier for cuepoint resource.\"\n },\n \"insertionOffsetTimeMs\": + {\n \"type\": \"string\",\n \"description\": \"The time + when the cuepoint should be inserted by offset to the broadcast actual start + time.\",\n \"format\": \"int64\"\n }\n }\n },\n \"ChannelSectionListResponse\": + {\n \"type\": \"object\",\n \"id\": \"ChannelSectionListResponse\",\n + \ \"properties\": {\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#channelSectionListResponse\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The `visitorId` identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"ChannelSectionListResponse\": {\n \"id\": \"ChannelSectionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of ChannelSections that match - the request criteria.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoContentDetails\": {\n \"properties\": - {\n \"dimension\": {\n \"type\": \"string\",\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\"\n },\n \"hasCustomThumbnail\": {\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n },\n \"contentRating\": {\n \"$ref\": - \"ContentRating\",\n \"description\": \"Specifies the ratings that - the video received under various rating schemes.\"\n },\n \"projection\": - {\n \"type\": \"string\",\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ],\n \"description\": \"Specifies - the projection format of the video.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ]\n },\n \"caption\": - {\n \"description\": \"The value of captions indicates whether the - video has captions or not.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"true\",\n \"false\"\n ]\n },\n - \ \"licensedContent\": {\n \"type\": \"boolean\",\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\"\n },\n \"regionRestriction\": {\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"definition\": - {\n \"type\": \"string\",\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"description\": \"The value of - definition indicates whether the video is available in high definition or - only in standard definition.\",\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ]\n },\n \"duration\": {\n \"description\": - \"The length of the video. The tag value is an ISO 8601 duration in the format - PT#M#S, in which the letters PT indicate that the value specifies a period - of time, and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\",\n \"type\": - \"string\"\n },\n \"countryRestriction\": {\n \"$ref\": - \"AccessPolicy\",\n \"description\": \"The countryRestriction object - contains information about the countries where a video is (or is not) viewable.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoContentDetails\",\n - \ \"description\": \"Details about the content of a YouTube Video.\"\n - \ },\n \"ActivityContentDetails\": {\n \"properties\": {\n \"comment\": - {\n \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\",\n \"$ref\": \"ActivityContentDetailsComment\"\n },\n - \ \"subscription\": {\n \"description\": \"The subscription - object contains information about a channel that a user subscribed to. This - property is only present if the snippet.type is subscription.\",\n \"$ref\": - \"ActivityContentDetailsSubscription\"\n },\n \"channelItem\": - {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n \"description\": - \"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.\"\n - \ },\n \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"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.\"\n },\n \"like\": {\n \"$ref\": - \"ActivityContentDetailsLike\",\n \"description\": \"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.\"\n },\n - \ \"upload\": {\n \"description\": \"The upload object contains - information about the uploaded video. This property is only present if the - snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"promotedItem\": {\n \"description\": \"The - promotedItem object contains details about a resource which is being promoted. - This property is only present if the snippet.type is promotedItem.\",\n \"$ref\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"playlistItem\": - {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"The playlistItem object contains information about a new playlist item. - This property is only present if the snippet.type is playlistItem.\"\n },\n - \ \"recommendation\": {\n \"description\": \"The recommendation - object contains information about a recommended resource. This property is - only present if the snippet.type is recommendation.\",\n \"$ref\": - \"ActivityContentDetailsRecommendation\"\n },\n \"social\": - {\n \"$ref\": \"ActivityContentDetailsSocial\",\n \"description\": - \"The social object contains details about a social network post. This property - is only present if the snippet.type is social.\"\n },\n \"bulletin\": - {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n \"description\": - \"The bulletin object contains details about a channel bulletin post. This - object is only present if the snippet.type is bulletin.\"\n }\n },\n - \ \"id\": \"ActivityContentDetails\",\n \"description\": \"Details - about the content of an activity: the video that was shared, the channel that - was subscribed to, etc.\",\n \"type\": \"object\"\n },\n \"VideoRecordingDetails\": - {\n \"description\": \"Recording information associated with the video.\",\n - \ \"properties\": {\n \"locationDescription\": {\n \"description\": - \"The text description of the location where the video was recorded.\",\n - \ \"type\": \"string\"\n },\n \"recordingDate\": {\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the video was recorded.\",\n \"format\": \"date-time\"\n - \ },\n \"location\": {\n \"description\": \"The geolocation - information associated with the video.\",\n \"$ref\": \"GeoPoint\"\n - \ }\n },\n \"id\": \"VideoRecordingDetails\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsChannelItem\": {\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was added to the channel.\"\n - \ }\n },\n \"description\": \"Details about a resource which - was added to a channel.\",\n \"id\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"MembershipsLevelListResponse\": {\n \"id\": \"MembershipsLevelListResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n + the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"description\": \"A + list of ChannelSections that match the request criteria.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n + \ }\n },\n \"visitorId\": {\n \"type\": \"string\",\n \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - pricing levels offered by a creator to the fans.\",\n \"items\": - {\n \"$ref\": \"MembershipsLevel\"\n }\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevelListResponse\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"Subscription\": {\n \"type\": - \"object\",\n \"id\": \"Subscription\",\n \"description\": \"A *subscription* - resource contains information about a YouTube user subscription. A subscription - notifies a user when new videos are added to a channel or when another user - takes one of several actions on YouTube, such as uploading a video, rating - a video, or commenting on a video.\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"subscriberSnippet\": {\n \"$ref\": - \"SubscriptionSubscriberSnippet\",\n \"description\": \"The subscriberSnippet - object contains basic details about the subscriber.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the subscription, including its title and the channel that the user - subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains basic statistics about the subscription.\",\n \"$ref\": - \"SubscriptionContentDetails\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n \"default\": - \"youtube#subscription\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the subscription.\"\n }\n }\n },\n \"ChannelStatus\": - {\n \"type\": \"object\",\n \"id\": \"ChannelStatus\",\n \"description\": - \"JSON template for the status part of a channel.\",\n \"properties\": - {\n \"isLinked\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"longUploadsStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"type\": \"string\",\n \"enum\": - [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ]\n },\n \"privacyStatus\": - {\n \"description\": \"Privacy status of the channel.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ }\n }\n },\n \"VideoMonetizationDetails\": {\n \"id\": - \"VideoMonetizationDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\"\n - \ }\n },\n \"description\": \"Details about monetization of - a YouTube Video.\"\n },\n \"CommentListResponse\": {\n \"id\": - \"CommentListResponse\",\n \"properties\": {\n \"pageInfo\": {\n - \ \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"description\": \"A list of comments that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"Comment\"\n - \ },\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n \"default\": - \"youtube#commentListResponse\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"ThirdPartyLink\": {\n \"properties\": {\n \"status\": - {\n \"$ref\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The status object contains information about the status of the link.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#thirdPartyLink\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n - \ },\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"ThirdPartyLinkSnippet\",\n \"description\": \"The snippet object - contains basic details about the third- party account link.\"\n }\n - \ },\n \"id\": \"ThirdPartyLink\",\n \"description\": \"A *third - party account link* resource represents a link between a YouTube account or - a channel and an account on a third-party service.\",\n \"type\": \"object\"\n - \ }\n },\n \"canonicalName\": \"YouTube\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"id\": \"youtube:v3\",\n \"rootUrl\": \"https://youtube.googleapis.com/\"\n}\n" + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n }\n }\n },\n \"basePath\": + \"\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n + \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n + \ },\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n + \ \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"fullyEncodeReservedExpansion\": + true,\n \"ownerDomain\": \"google.com\",\n \"servicePath\": \"\",\n \"description\": + \"The YouTube Data API v3 is an API that provides access to YouTube data, + such as videos, playlists, and channels.\",\n \"parameters\": {\n \"callback\": + {\n \"description\": \"JSONP\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"$.xgafv\": {\n \"enum\": [\n \"1\",\n + \ \"2\"\n ],\n \"description\": \"V1 error format.\",\n \"enumDescriptions\": + [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"oauth_token\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"OAuth 2.0 + token for the current user.\"\n },\n \"upload_protocol\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"Upload protocol + for media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n },\n \"uploadType\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": + \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n + \ },\n \"alt\": {\n \"enumDescriptions\": [\n \"Responses + with Content-Type of application/json\",\n \"Media download with context-dependent + Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n + \ ],\n \"location\": \"query\",\n \"description\": \"Data format + for response.\",\n \"type\": \"string\",\n \"default\": \"json\",\n + \ \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n + \ ]\n },\n \"fields\": {\n \"type\": \"string\",\n \"description\": + \"Selector specifying which fields to include in a partial response.\",\n + \ \"location\": \"query\"\n },\n \"prettyPrint\": {\n \"default\": + \"true\",\n \"description\": \"Returns response with indentations and + line breaks.\",\n \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"key\": {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"access_token\": {\n \"location\": + \"query\",\n \"description\": \"OAuth access token.\",\n \"type\": + \"string\"\n },\n \"quotaUser\": {\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n }\n}\n" headers: Alt-Svc: - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 @@ -6194,7 +6188,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:45 GMT + - Thu, 09 Mar 2023 00:27:07 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: @@ -6224,9 +6218,9 @@ interactions: uri: https://youtube.googleapis.com/youtube/v3/videos?id=rq2SVMXEMPI&part=snippet response: body: - string: "{\n \"kind\": \"youtube#videoListResponse\",\n \"etag\": \"JOwQ_OzwZTTm_cDlYuuQGy2qaHE\",\n + string: "{\n \"kind\": \"youtube#videoListResponse\",\n \"etag\": \"CqzR8tPfLN7pg9Xvn-SDympY7WY\",\n \ \"items\": [\n {\n \"kind\": \"youtube#video\",\n \"etag\": - \"R_CVXCQC580o-3GzNd6ABhnxiBE\",\n \"id\": \"rq2SVMXEMPI\",\n \"snippet\": + \"eJAFQm9a12Hg6u7ccf2X72XS5Aw\",\n \"id\": \"rq2SVMXEMPI\",\n \"snippet\": {\n \"publishedAt\": \"2022-05-11T18:56:54Z\",\n \"channelId\": \"UCk2OzObixhe_mbMfMQGLuJw\",\n \"title\": \"Linux XanMod build using AWS instance\",\n \"description\": \"This is recording of linux-xanmod @@ -6257,7 +6251,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:45 GMT + - Thu, 09 Mar 2023 00:27:07 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: @@ -6287,267 +6281,24 @@ interactions: uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest response: body: - string: "{\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"basePath\": - \"\",\n \"name\": \"youtube\",\n \"description\": \"The YouTube Data API - v3 is an API that provides access to YouTube data, such as videos, playlists, - and channels.\",\n \"servicePath\": \"\",\n \"auth\": {\n \"oauth2\": - {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": + string: "{\n \"version\": \"v3\",\n \"ownerName\": \"Google\",\n \"auth\": + {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube\": + {\n \"description\": \"Manage your YouTube account\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": + \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": + {\n \"description\": \"See, edit, and permanently delete your YouTube + videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": {\n \"description\": \"See a list of your current active channel members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": + \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n }\n }\n - \ }\n },\n \"resources\": {\n \"search\": {\n \"methods\": {\n - \ \"list\": {\n \"description\": \"Retrieves a list of search - resources\",\n \"parameters\": {\n \"locationRadius\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on distance from the location (specified above).\",\n \"location\": - \"query\"\n },\n \"channelType\": {\n \"enum\": - [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Add a filter on the channel search.\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ]\n },\n \"videoEmbeddable\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos, embeddable or not.\",\n \"Only retrieve embeddable - videos.\"\n ],\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"description\": - \"Filter on embeddable videos.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoType\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"description\": \"Filter on videos of a specific - type.\"\n },\n \"forContentOwner\": {\n \"description\": - \"Search owned by a content owner.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"videoLicense\": - {\n \"enumDescriptions\": [\n \"Return all videos, - regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Filter on the license of the - videos.\",\n \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ]\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n },\n \"relatedToVideoId\": - {\n \"location\": \"query\",\n \"description\": - \"Search related to a resource.\",\n \"type\": \"string\"\n },\n - \ \"topicId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Restrict results to a particular - topic.\"\n },\n \"videoCategoryId\": {\n \"type\": - \"string\",\n \"description\": \"Filter on videos in a specific - category.\",\n \"location\": \"query\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Display the content as seen by viewers in - this country.\"\n },\n \"videoSyndicated\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on syndicated videos.\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ]\n - \ },\n \"eventType\": {\n \"enum\": [\n - \ \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been - completed.\"\n ],\n \"description\": \"Filter on - the livestream status of the videos.\",\n \"type\": \"string\"\n - \ },\n \"videoDuration\": {\n \"enum\": - [\n \"videoDurationUnspecified\",\n \"any\",\n - \ \"short\",\n \"medium\",\n \"long\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Filter on the duration of the videos.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter video search results based on their duration. This is the default - value.\",\n \"Only include videos that are less than four minutes - long.\",\n \"Only include videos that are between four and - 20 minutes long (inclusive).\",\n \"Only include videos longer - than 20 minutes.\"\n ]\n },\n \"videoDimension\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on 3d videos.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ]\n },\n - \ \"forMine\": {\n \"description\": \"Search for the - private videos of the authenticated user.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Restrict - results to a particular set of resource types from One Platform.\"\n },\n - \ \"safeSearch\": {\n \"description\": \"Indicates - whether the search results should include restricted content as well as standard - content.\",\n \"location\": \"query\",\n \"enum\": - [\n \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"type\": \"string\",\n \"default\": \"moderate\",\n - \ \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ]\n },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"description\": - \"Filter on resources published after this date.\",\n \"type\": - \"string\"\n },\n \"videoDefinition\": {\n \"type\": - \"string\",\n \"description\": \"Filter on the definition of - the videos.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ]\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"forDeveloper\": - {\n \"location\": \"query\",\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"maxResults\": {\n \"default\": \"5\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"maximum\": - \"50\",\n \"location\": \"query\",\n \"minimum\": - \"0\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"order\": - {\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"type\": - \"string\",\n \"description\": \"Sort order of the results.\",\n - \ \"default\": \"relevance\",\n \"location\": \"query\"\n - \ },\n \"location\": {\n \"description\": - \"Filter on location of the video\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"q\": {\n - \ \"location\": \"query\",\n \"description\": \"Textual - search terms to match.\",\n \"type\": \"string\"\n },\n - \ \"relevanceLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"Return results relevant to this language.\",\n - \ \"location\": \"query\"\n },\n \"publishedBefore\": - {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n - \ \"description\": \"Filter on resources published before this - date.\",\n \"type\": \"string\"\n },\n \"videoCaption\": - {\n \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ],\n \"enum\": [\n - \ \"videoCaptionUnspecified\",\n \"any\",\n \"closedCaption\",\n - \ \"none\"\n ],\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"Filter on resources belonging to this - channelId.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/search\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.search.list\",\n - \ \"flatPath\": \"youtube/v3/search\",\n \"response\": {\n - \ \"$ref\": \"SearchListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.liveChatMessages.list\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"parameters\": - {\n \"liveChatId\": {\n \"description\": \"The id - of the live chat for which comments should be returned.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"profileImageSize\": {\n \"location\": - \"query\",\n \"maximum\": \"720\",\n \"minimum\": - \"16\",\n \"description\": \"Specifies the size of the profile - image that should be returned for each user.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the liveChatComment resource parts that the API - response will include. Supported values are id and snippet.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"maxResults\": - {\n \"minimum\": \"200\",\n \"default\": \"500\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\",\n \"maximum\": - \"2000\",\n \"type\": \"integer\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the system messages should be returned.\",\n - \ \"location\": \"query\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveChatMessageListResponse\"\n }\n },\n - \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\"\n }\n },\n \"id\": - \"youtube.liveChatMessages.insert\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\"\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - chat message.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"id\": \"youtube.liveChatMessages.delete\"\n }\n }\n - \ },\n \"playlistItems\": {\n \"methods\": {\n \"update\": - {\n \"description\": \"Updates an existing resource.\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n + relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": + {\n \"description\": \"View and manage your assets and associated + content on YouTube\"\n }\n }\n }\n },\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n + \ \"resources\": {\n \"watermarks\": {\n \"methods\": {\n \"unset\": + {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n \ \"description\": \"*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 @@ -6557,30 +6308,21 @@ interactions: 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.\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true\n }\n },\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"httpMethod\": - \"PUT\",\n \"id\": \"youtube.playlistItems.update\"\n },\n - \ \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"type\": + owner.\"\n },\n \"channelId\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"parameterOrder\": [\n \"channelId\"\n + \ ],\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.watermarks.unset\",\n \"httpMethod\": + \"POST\",\n \"path\": \"youtube/v3/watermarks/unset\",\n \"description\": + \"Allows removal of channel watermark.\"\n },\n \"set\": {\n + \ \"supportsMediaUpload\": true,\n \"id\": \"youtube.watermarks.set\",\n + \ \"path\": \"youtube/v3/watermarks/set\",\n \"httpMethod\": + \"POST\",\n \"parameters\": {\n \"channelId\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended + true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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 @@ -6589,34 +6331,99 @@ interactions: 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.\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"description\": - \"Deletes a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.delete\"\n },\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + owner.\",\n \"type\": \"string\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"path\": \"youtube/v3/playlistItems\",\n \"id\": - \"youtube.playlistItems.list\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n },\n \"playlistId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the playlist items within the given - playlist.\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": + \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n + \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"parameterOrder\": + [\n \"channelId\"\n ],\n \"description\": \"Allows + upload of watermark image and setting it for a channel.\",\n \"mediaUpload\": + {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ],\n \"maxSize\": + \"10485760\",\n \"protocols\": {\n \"simple\": {\n + \ \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": + true\n },\n \"resumable\": {\n \"multipart\": + true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n + \ }\n }\n }\n }\n }\n },\n + \ \"activities\": {\n \"methods\": {\n \"list\": {\n \"httpMethod\": + \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/activities\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"response\": {\n \"$ref\": \"ActivityListResponse\"\n + \ },\n \"parameters\": {\n \"regionCode\": {\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"maxResults\": {\n \"maximum\": + \"50\",\n \"default\": \"5\",\n \"type\": \"integer\",\n + \ \"format\": \"uint32\",\n \"location\": \"query\",\n + \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\"\n },\n \"publishedAfter\": {\n \"location\": + \"query\",\n \"format\": \"google-datetime\",\n \"type\": + \"string\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"mine\": {\n \"type\": \"boolean\",\n + \ \"location\": \"query\"\n },\n \"home\": + {\n \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"publishedBefore\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"format\": + \"google-datetime\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true,\n \"description\": \"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.\",\n \"repeated\": true\n }\n },\n + \ \"id\": \"youtube.activities.list\",\n \"flatPath\": \"youtube/v3/activities\"\n + \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n + \ \"insert\": {\n \"request\": {\n \"$ref\": \"AbuseReport\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.abuseReports.insert\",\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": + true,\n \"description\": \"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.\",\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"response\": + {\n \"$ref\": \"AbuseReport\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/abuseReports\",\n + \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts + a new resource into this collection.\",\n \"flatPath\": \"youtube/v3/abuseReports\"\n + \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": + {\n \"methods\": {\n \"updateCommentThreads\": {\n \"parameterOrder\": + [],\n \"response\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"path\": \"youtube/v3/commentThreads\",\n + \ \"description\": \"Updates an existing resource.\",\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"request\": + {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": + \"PUT\",\n \"id\": \"youtube.youtube.v3.updateCommentThreads\"\n + \ }\n }\n }\n }\n },\n \"captions\": + {\n \"methods\": {\n \"delete\": {\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/captions\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": + \"youtube.captions.delete\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": + {\n \"onBehalfOf\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"ID of the Google+ Page for the + channel that the request is be on behalf of\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \ \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates @@ -6625,83 +6432,91 @@ interactions: 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.\"\n },\n \"videoId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlist items associated with the given video ID.\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"location\": \"query\",\n \"minimum\": - \"0\",\n \"maximum\": \"50\"\n }\n }\n },\n - \ \"insert\": {\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"path\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/playlistItems\"\n }\n - \ }\n },\n \"thumbnails\": {\n \"methods\": {\n \"set\": - {\n \"parameters\": {\n \"videoId\": {\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"path\": \"youtube/v3/thumbnails/set\",\n \"id\": \"youtube.thumbnails.set\",\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"flatPath\": - \"youtube/v3/thumbnails/set\",\n \"supportsMediaUpload\": true,\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"maxSize\": \"2097152\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ }\n }\n },\n \"response\": {\n - \ \"$ref\": \"ThumbnailSetResponse\"\n },\n \"parameterOrder\": - [\n \"videoId\"\n ]\n }\n }\n },\n \"watermarks\": - {\n \"methods\": {\n \"unset\": {\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Allows removal of channel watermark.\",\n \"flatPath\": - \"youtube/v3/watermarks/unset\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n }\n }\n },\n \"insert\": + {\n \"id\": \"youtube.captions.insert\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"mediaUpload\": + {\n \"protocols\": {\n \"simple\": {\n \"multipart\": + true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n + \ \"resumable\": {\n \"multipart\": true,\n \"path\": + \"/resumable/upload/youtube/v3/captions\"\n }\n },\n + \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"supportsMediaUpload\": true,\n \"parameters\": {\n \"part\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"required\": true,\n \"description\": + \"The *part* parameter specifies the caption resource parts that the API response + will include. Set the parameter value to snippet.\"\n },\n \"onBehalfOf\": {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"ID of the Google+ Page for the channel that + the request is be on behalf of\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*Note:* + This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* + parameter indicates that the request's authorization credentials identify + a YouTube CMS user who is acting on behalf of the content owner specified + in the parameter value. This parameter is intended for YouTube content partners + that own and manage many different YouTube channels. It allows content owners + to authenticate once and get access to all their video and channel data, without + having to provide authentication credentials for each individual channel. + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\",\n \"location\": \"query\"\n + \ },\n \"sync\": {\n \"location\": \"query\",\n + \ \"type\": \"boolean\",\n \"description\": \"Extra + parameter to allow automatically syncing the uploaded caption/transcript with + the audio.\"\n }\n },\n \"httpMethod\": \"POST\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"request\": {\n \"$ref\": \"Caption\"\n },\n + \ \"path\": \"youtube/v3/captions\",\n \"response\": {\n + \ \"$ref\": \"Caption\"\n },\n \"flatPath\": \"youtube/v3/captions\"\n + \ },\n \"list\": {\n \"path\": \"youtube/v3/captions\",\n + \ \"parameters\": {\n \"videoId\": {\n \"required\": + true,\n \"description\": \"Returns the captions for the specified + video.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"required\": true\n },\n \"onBehalfOf\": + {\n \"type\": \"string\",\n \"description\": \"ID + of the Google+ Page for the channel that the request is on behalf of.\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*Note:* + This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* + parameter indicates that the request's authorization credentials identify + a YouTube CMS user who is acting on behalf of the content owner specified + in the parameter value. This parameter is intended for YouTube content partners + that own and manage many different YouTube channels. It allows content owners + to authenticate once and get access to all their video and channel data, without + having to provide authentication credentials for each individual channel. + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\",\n \"location\": \"query\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"Returns + the captions with the given IDs for Stubby or Apiary.\",\n \"location\": + \"query\"\n }\n },\n \"parameterOrder\": [\n + \ \"part\",\n \"videoId\"\n ],\n \"flatPath\": + \"youtube/v3/captions\",\n \"httpMethod\": \"GET\",\n \"response\": + {\n \"$ref\": \"CaptionListResponse\"\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.captions.list\"\n },\n \"download\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"tlang\": {\n \"type\": + \"string\",\n \"description\": \"tlang is the language code; + machine translate the captions into this language.\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"description\": + \"The ID of the caption track to download, required for One Platform.\",\n + \ \"location\": \"path\",\n \"required\": true,\n + \ \"type\": \"string\"\n },\n \"tfmt\": + {\n \"location\": \"query\",\n \"description\": + \"Convert the captions into this format. Supported options are sbv, srt, and + vtt.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"*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 @@ -6709,125 +6524,325 @@ interactions: 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.\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"id\": \"youtube.watermarks.unset\",\n \"path\": - \"youtube/v3/watermarks/unset\"\n },\n \"set\": {\n \"description\": - \"Allows upload of watermark image and setting it for a channel.\",\n \"request\": - {\n \"$ref\": \"InvideoBranding\"\n },\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"10485760\"\n },\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n },\n \"onBehalfOf\": {\n + \ \"location\": \"query\",\n \"description\": \"ID + of the Google+ Page for the channel that the request is be on behalf of\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": + \"youtube.captions.download\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"supportsMediaDownload\": true,\n \"httpMethod\": + \"GET\",\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"useMediaDownloadService\": + true,\n \"description\": \"Downloads a caption track.\",\n \"path\": + \"youtube/v3/captions/{id}\"\n },\n \"update\": {\n \"description\": + \"Updates an existing resource.\",\n \"path\": \"youtube/v3/captions\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"supportsMediaUpload\": true,\n \"id\": \"youtube.watermarks.set\",\n - \ \"path\": \"youtube/v3/watermarks/set\"\n }\n }\n },\n - \ \"commentThreads\": {\n \"methods\": {\n \"list\": {\n \"scopes\": + \ \"supportsMediaUpload\": true,\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOf\": {\n \"location\": + \"query\",\n \"description\": \"ID of the Google+ Page for the + channel that the request is on behalf of.\",\n \"type\": \"string\"\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"sync\": {\n \"type\": + \"boolean\",\n \"description\": \"Extra parameter to allow automatically + syncing the uploaded caption/transcript with the audio.\",\n \"location\": + \"query\"\n }\n },\n \"httpMethod\": \"PUT\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": + {\n \"$ref\": \"Caption\"\n },\n \"mediaUpload\": + {\n \"maxSize\": \"104857600\",\n \"accept\": [\n \"text/xml\",\n + \ \"application/octet-stream\",\n \"*/*\"\n ],\n + \ \"protocols\": {\n \"simple\": {\n \"path\": + \"/upload/youtube/v3/captions\",\n \"multipart\": true\n },\n + \ \"resumable\": {\n \"multipart\": true,\n \"path\": + \"/resumable/upload/youtube/v3/captions\"\n }\n }\n + \ },\n \"response\": {\n \"$ref\": \"Caption\"\n + \ },\n \"id\": \"youtube.captions.update\",\n \"flatPath\": + \"youtube/v3/captions\"\n }\n }\n },\n \"commentThreads\": + {\n \"methods\": {\n \"insert\": {\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": + \"CommentThread\"\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"path\": \"youtube/v3/commentThreads\",\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"description\": + \"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.\",\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"id\": + \"youtube.commentThreads.insert\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"description\": \"Inserts a new resource into this collection.\"\n + \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"path\": - \"youtube/v3/commentThreads\",\n \"id\": \"youtube.commentThreads.list\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"maximum\": \"100\",\n \"format\": - \"uint32\",\n \"minimum\": \"1\",\n \"default\": - \"20\",\n \"type\": \"integer\"\n },\n \"textFormat\": - {\n \"location\": \"query\",\n \"default\": \"html\",\n - \ \"enum\": [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"description\": - \"The requested text format for the returned comments.\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"Returns the comment - threads with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads of the specified - video.\"\n },\n \"searchTerms\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\"\n },\n \"moderationStatus\": - {\n \"description\": \"Limits the returned comment threads to - those with the specified moderation status. Not compatible with the 'id' filter. - Valid values: published, heldForReview, likelySpam.\",\n \"default\": - \"published\",\n \"location\": \"query\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\"\n },\n \"allThreadsRelatedToChannelId\": + \ \"path\": \"youtube/v3/commentThreads\",\n \"response\": + {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"id\": + \"youtube.commentThreads.list\",\n \"parameters\": {\n \"maxResults\": {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of all videos of the channel and the channel - comments as well.\",\n \"type\": \"string\"\n },\n - \ \"order\": {\n \"default\": \"time\",\n \"enum\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"format\": \"uint32\",\n + \ \"minimum\": \"1\",\n \"type\": \"integer\",\n + \ \"default\": \"20\",\n \"maximum\": \"100\"\n },\n + \ \"searchTerms\": {\n \"description\": \"Limits the + returned comment threads to those matching the specified key words. Not compatible + with the 'id' filter.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"order\": {\n \"enum\": [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ ],\n \"default\": \"time\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \ \"Order by time.\",\n \"Order by relevance.\"\n - \ ]\n },\n \"pageToken\": {\n \"type\": + \ ],\n \"location\": \"query\"\n },\n + \ \"allThreadsRelatedToChannelId\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Returns + the comment threads of all videos of the channel and the channel comments + as well.\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"description\": \"Returns the comment threads with + the given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n + \ \"type\": \"string\"\n },\n \"textFormat\": + {\n \"enumDescriptions\": [\n \"\",\n \"Returns + the comments in HTML format. This is the default value.\",\n \"Returns + the comments in plain text format.\"\n ],\n \"type\": + \"string\",\n \"location\": \"query\",\n \"default\": + \"html\",\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ],\n + \ \"description\": \"The requested text format for the returned + comments.\"\n },\n \"channelId\": {\n \"location\": + \"query\",\n \"description\": \"Returns the comment threads for + all the channel comments (ie does not include comments left on videos).\",\n + \ \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"description\": \"The *part* parameter specifies a comma-separated + list of one or more commentThread resource properties that the API response + will include.\",\n \"location\": \"query\",\n \"required\": + true\n },\n \"moderationStatus\": {\n \"description\": + \"Limits the returned comment threads to those with the specified moderation + status. Not compatible with the 'id' filter. Valid values: published, heldForReview, + likelySpam.\",\n \"enumDescriptions\": [\n \"The + comment is available for public display.\",\n \"The comment + is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"default\": + \"published\",\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ],\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"pageToken\": {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"insert\": {\n \"flatPath\": \"youtube/v3/commentThreads\",\n + be retrieved.\",\n \"location\": \"query\"\n },\n + \ \"videoId\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Returns the comment threads of + the specified video.\"\n }\n },\n \"flatPath\": + \"youtube/v3/commentThreads\"\n }\n }\n },\n \"liveChatMessages\": + {\n \"methods\": {\n \"list\": {\n \"response\": {\n + \ \"$ref\": \"LiveChatMessageListResponse\"\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"path\": + \"youtube/v3/liveChat/messages\",\n \"httpMethod\": \"GET\",\n \"id\": + \"youtube.liveChatMessages.list\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n + \ ],\n \"parameters\": {\n \"profileImageSize\": + {\n \"location\": \"query\",\n \"maximum\": \"720\",\n + \ \"type\": \"integer\",\n \"format\": \"uint32\",\n + \ \"description\": \"Specifies the size of the profile image that + should be returned for each user.\",\n \"minimum\": \"16\"\n + \ },\n \"part\": {\n \"description\": \"The + *part* parameter specifies the liveChatComment resource parts that the API + response will include. Supported values are id and snippet.\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"required\": true\n },\n \"maxResults\": + {\n \"type\": \"integer\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"minimum\": \"200\",\n \"format\": + \"uint32\",\n \"default\": \"500\",\n \"location\": + \"query\",\n \"maximum\": \"2000\"\n },\n \"hl\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Specifies the localization language in which + the system messages should be returned.\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n + \ },\n \"liveChatId\": {\n \"location\": + \"query\",\n \"required\": true,\n \"description\": + \"The id of the live chat for which comments should be returned.\",\n \"type\": + \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ]\n },\n \"insert\": {\n \"request\": {\n + \ \"$ref\": \"LiveChatMessage\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts + a new resource into this collection.\",\n \"path\": \"youtube/v3/liveChat/messages\",\n \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/commentThreads\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n }\n }\n }\n - \ },\n \"channelSections\": {\n \"methods\": {\n \"update\": - {\n \"id\": \"youtube.channelSections.update\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"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.\",\n \"repeated\": + true,\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.liveChatMessages.insert\",\n \"response\": + {\n \"$ref\": \"LiveChatMessage\"\n }\n },\n \"delete\": + {\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"id\": \"youtube.liveChatMessages.delete\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"description\": \"Deletes a chat message.\",\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\"\n }\n }\n + \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": + {\n \"list\": {\n \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n + \ },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": + [\n \"liveChatId\",\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/liveChat/moderators\",\n \"id\": \"youtube.liveChatModerators.list\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"parameters\": {\n \"liveChatId\": {\n + \ \"required\": true,\n \"type\": \"string\",\n \"description\": + \"The id of the live chat for which moderators should be returned.\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true,\n \"description\": + \"The *part* parameter specifies the liveChatModerator resource parts that + the API response will include. Supported values are id and snippet.\"\n },\n + \ \"maxResults\": {\n \"location\": \"query\",\n \"format\": + \"uint32\",\n \"maximum\": \"50\",\n \"minimum\": + \"0\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"default\": \"5\",\n \"type\": \"integer\"\n },\n + \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"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.\"\n }\n },\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/liveChat/moderators\"\n + \ },\n \"insert\": {\n \"request\": {\n \"$ref\": + \"LiveChatModerator\"\n },\n \"httpMethod\": \"POST\",\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.liveChatModerators.insert\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"path\": \"youtube/v3/liveChat/moderators\"\n },\n \"delete\": + {\n \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": + \"youtube/v3/liveChat/moderators\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n + \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.liveChatModerators.delete\",\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Deletes a chat moderator.\"\n }\n }\n + \ },\n \"i18nRegions\": {\n \"methods\": {\n \"list\": {\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/i18nRegions\",\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.i18nRegions.list\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"I18nRegionListResponse\"\n },\n \"flatPath\": \"youtube/v3/i18nRegions\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"parameters\": {\n \"hl\": {\n \"location\": + \"query\",\n \"default\": \"en_US\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"description\": + \"The *part* parameter specifies the i18nRegion resource properties that the + API response will include. Set the parameter value to snippet.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true\n }\n }\n + \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": + {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.superChatEvents.list\",\n + \ \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"flatPath\": \"youtube/v3/superChatEvents\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"path\": \"youtube/v3/superChatEvents\",\n \"parameters\": + {\n \"maxResults\": {\n \"maximum\": \"50\",\n \"format\": + \"uint32\",\n \"location\": \"query\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"minimum\": \"1\",\n \"type\": + \"integer\",\n \"default\": \"5\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"hl\": {\n \"type\": + \"string\",\n \"description\": \"Return rendered funding amounts + in specified language.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"The *part* parameter specifies the superChatEvent + resource parts that the API response will include. This parameter is currently + not supported.\"\n }\n }\n }\n }\n },\n + \ \"membershipsLevels\": {\n \"methods\": {\n \"list\": {\n + \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": + \"MembershipsLevelListResponse\"\n },\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"repeated\": + true,\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the membershipsLevel resource parts that + the API response will include. Supported values are id and snippet.\",\n \"type\": + \"string\"\n }\n },\n \"path\": \"youtube/v3/membershipsLevels\",\n + \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"id\": + \"youtube.membershipsLevels.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"description\": \"Retrieves a list of all pricing + levels offered by a creator to the fans.\",\n \"parameterOrder\": + [\n \"part\"\n ]\n }\n }\n },\n \"playlists\": + {\n \"methods\": {\n \"update\": {\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/playlists\",\n \"response\": {\n + \ \"$ref\": \"Playlist\"\n },\n \"description\": + \"Updates an existing resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"required\": + true\n }\n },\n \"flatPath\": \"youtube/v3/playlists\",\n + \ \"id\": \"youtube.playlists.update\",\n \"request\": {\n + \ \"$ref\": \"Playlist\"\n },\n \"httpMethod\": + \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ]\n + \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/playlists\",\n \"path\": + \"youtube/v3/playlists\",\n \"parameters\": {\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": \"*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 @@ -6837,36 +6852,83 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n }\n },\n \"insert\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \"string\"\n }\n },\n \"id\": \"youtube.playlists.delete\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": + \"DELETE\",\n \"description\": \"Deletes a resource.\"\n },\n + \ \"insert\": {\n \"request\": {\n \"$ref\": \"Playlist\"\n + \ },\n \"response\": {\n \"$ref\": \"Playlist\"\n + \ },\n \"httpMethod\": \"POST\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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 + \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": + owner.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n + \ \"location\": \"query\",\n \"required\": true,\n + \ \"repeated\": true\n }\n },\n \"path\": + \"youtube/v3/playlists\",\n \"description\": \"Inserts a new resource + into this collection.\",\n \"id\": \"youtube.playlists.insert\",\n + \ \"flatPath\": \"youtube/v3/playlists\"\n },\n \"list\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"GET\",\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n + \ },\n \"path\": \"youtube/v3/playlists\",\n \"id\": + \"youtube.playlists.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"hl\": + {\n \"location\": \"query\",\n \"description\": + \"Return content in specified language\",\n \"type\": \"string\"\n + \ },\n \"mine\": {\n \"description\": \"Return + the playlists owned by the authenticated user.\",\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": \"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 @@ -6880,94 +6942,55 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"id\": \"youtube.channelSections.insert\"\n },\n - \ \"delete\": {\n \"description\": \"Deletes a resource.\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"path\": - \"youtube/v3/channelSections\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.channelSections.delete\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\"\n },\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"mine\": {\n \"description\": \"Return the ChannelSections - owned by the authenticated user.\",\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"id\": {\n - \ \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the ChannelSections owned by the specified channel ID.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"location\": + for each separate channel.\",\n \"type\": \"string\"\n },\n + \ \"id\": {\n \"repeated\": true,\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"Return content in specified language\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"ChannelSectionListResponse\"\n },\n \"id\": \"youtube.channelSections.list\",\n + \"Return the playlists with the given IDs for Stubby or Apiary.\"\n },\n + \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"channelId\": + {\n \"description\": \"Return the playlists owned by the specified + channel ID.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"maximum\": + \"50\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"location\": \"query\",\n \"default\": \"5\",\n + \ \"minimum\": \"0\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\"\n }\n },\n \"flatPath\": + \"youtube/v3/playlists\"\n }\n }\n },\n \"videoAbuseReportReasons\": + {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n + \ \"parameters\": {\n \"hl\": {\n \"type\": + \"string\",\n \"default\": \"en-US\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"repeated\": + true,\n \"description\": \"The *part* parameter specifies the + videoCategory resource parts that the API response will include. Supported + values are id and snippet.\",\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"response\": + {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/channelSections\"\n }\n - \ }\n },\n \"liveBroadcasts\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + \"GET\",\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\"\n }\n }\n + \ },\n \"subscriptions\": {\n \"methods\": {\n \"delete\": + {\n \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"description\": \"Retrieve the list of broadcasts - associated with the given channel.\",\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"This parameter can only be used in a properly + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/subscriptions\",\n \"httpMethod\": + \"DELETE\",\n \"id\": \"youtube.subscriptions.delete\",\n \"description\": + \"Deletes a resource.\"\n },\n \"list\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": + \"SubscriptionListResponse\"\n },\n \"httpMethod\": \"GET\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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 @@ -6981,64 +7004,42 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"broadcastType\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Return only broadcasts with the selected type.\",\n \"default\": - \"event\"\n },\n \"broadcastStatus\": {\n \"type\": - \"string\",\n \"description\": \"Return broadcasts with a certain - status, e.g. active broadcasts.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return current live broadcasts.\",\n - \ \"Return broadcasts that have not yet started.\",\n \"Return - broadcasts that have already ended.\"\n ],\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ]\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"maximum\": - \"50\"\n },\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n + for each separate channel.\"\n },\n \"mine\": {\n \"type\": + \"boolean\",\n \"location\": \"query\",\n \"description\": + \"Flag for returning the subscriptions of the authenticated user.\"\n },\n + \ \"forChannelId\": {\n \"description\": \"Return the + subscriptions to the subset of these channels that the authenticated user + is subscribed to.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"location\": + \"query\",\n \"description\": \"Return the subscriptions of the + given channel owner.\",\n \"type\": \"string\"\n },\n + \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\",\n \ \"description\": \"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, status and statistics.\",\n \"repeated\": - true\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\"\n },\n \"delete\": - {\n \"description\": \"Delete a given broadcast.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.delete\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"Broadcast to delete.\"\n },\n + 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.\",\n \"repeated\": + true\n },\n \"order\": {\n \"description\": + \"The order of the returned subscriptions\",\n \"enum\": [\n + \ \"subscriptionOrderUnspecified\",\n \"relevance\",\n + \ \"unread\",\n \"alphabetical\"\n ],\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Sort + by relevance.\",\n \"Sort by order of activity.\",\n \"Sort + alphabetically.\"\n ],\n \"default\": \"relevance\"\n + \ },\n \"mySubscribers\": {\n \"type\": + \"boolean\",\n \"description\": \"Return the subscribers of the + given channel owner.\",\n \"location\": \"query\"\n },\n + \ \"id\": {\n \"location\": \"query\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"Return the subscriptions with the given IDs for Stubby or Apiary.\"\n },\n \ \"onBehalfOfContentOwner\": {\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -7049,68 +7050,108 @@ interactions: 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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": + {\n \"type\": \"integer\",\n \"minimum\": \"0\",\n + \ \"format\": \"uint32\",\n \"location\": \"query\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"maximum\": + \"50\",\n \"default\": \"5\"\n },\n \"myRecentSubscribers\": + {\n \"location\": \"query\",\n \"type\": \"boolean\"\n + \ }\n },\n \"path\": \"youtube/v3/subscriptions\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.list\"\n + \ },\n \"insert\": {\n \"id\": \"youtube.subscriptions.insert\",\n + \ \"response\": {\n \"$ref\": \"Subscription\"\n },\n + \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"httpMethod\": + \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"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.\"\n }\n },\n \"path\": \"youtube/v3/subscriptions\"\n + \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": + {\n \"update\": {\n \"id\": \"youtube.thirdPartyLinks.update\",\n + \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": + \"PUT\",\n \"parameters\": {\n \"externalChannelId\": + {\n \"type\": \"string\",\n \"description\": \"Channel + ID to which changes should be applied, for delegation.\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true,\n \"repeated\": true,\n \"description\": \"The + *part* parameter specifies the thirdPartyLink resource parts that the API + request and response will include. Supported values are linkingToken, status, + and snippet.\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"request\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"response\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"path\": \"youtube/v3/thirdPartyLinks\"\n },\n \"insert\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Inserts a new resource into this collection.\",\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"id\": \"youtube.thirdPartyLinks.insert\",\n \"request\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\",\n \"description\": \"The *part* parameter specifies + the thirdPartyLink resource parts that the API request and response will include. + Supported values are linkingToken, status, and snippet.\"\n },\n + \ \"externalChannelId\": {\n \"description\": \"Channel + ID to which changes should be applied, for delegation.\",\n \"type\": \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/liveBroadcasts\"\n },\n \"insert\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n + \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"httpMethod\": \"POST\"\n },\n \"delete\": {\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"externalChannelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Channel ID to which changes should be applied, + for delegation.\"\n },\n \"type\": {\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or + about to connect) a channel with a store on a merchandising platform in order + to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true,\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"description\": + \"Type of the link to be deleted.\"\n },\n \"part\": + {\n \"description\": \"Do not use. Required for compatibility.\",\n + \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"linkingToken\": {\n \"required\": + true,\n \"description\": \"Delete the partner links with the + given linking token.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes + a resource.\",\n \"parameterOrder\": [\n \"linkingToken\",\n + \ \"type\"\n ],\n \"id\": \"youtube.thirdPartyLinks.delete\"\n + \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.list\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"description\": \"The *part* parameter specifies the thirdPartyLink + resource parts that the API response will include. Supported values are linkingToken, + status, and snippet.\",\n \"location\": \"query\"\n },\n + \ \"type\": {\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"type\": + \"string\",\n \"description\": \"Get a third party link of the + given type.\",\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or + about to connect) a channel with a store on a merchandising platform in order + to enable retail commerce capabilities for that channel on YouTube.\"\n ]\n + \ },\n \"externalChannelId\": {\n \"type\": + \"string\",\n \"description\": \"Channel ID to which changes + should be applied, for delegation.\",\n \"location\": \"query\"\n + \ },\n \"linkingToken\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Get + a third party link with the given linking token.\"\n }\n },\n \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"id\": - \"youtube.liveBroadcasts.insert\",\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true,\n \"description\": - \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n }\n },\n \"insertCuepoint\": - {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"httpMethod\": + \"GET\"\n }\n }\n },\n \"liveStreams\": {\n \"methods\": + {\n \"delete\": {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -7125,32 +7166,8 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Broadcast to insert ads to, - or equivalently `external_video_id` for internal use.\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"description\": - \"Insert cuepoints in a broadcast\",\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"parameterOrder\": [],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"bind\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"description\": - \"Bind a broadcast to a stream.\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameterOrder\": [\n \"id\",\n - \ \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameters\": - {\n \"streamId\": {\n \"description\": \"Stream to - bind, if not set unbind the current one.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"Broadcast to bind to the stream\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": + for each separate channel.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -7159,60 +7176,97 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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 + be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n },\n \"parameterOrder\": + [\n \"id\"\n ],\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"id\": \"youtube.liveStreams.delete\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": + \"Deletes an existing stream for the authenticated user.\",\n \"flatPath\": + \"youtube/v3/liveStreams\"\n },\n \"update\": {\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true,\n \"description\": + \"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.\",\n \"repeated\": true\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/liveBroadcasts/bind\"\n - \ },\n \"transition\": {\n \"description\": \"Transition - a broadcast to a given status.\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true\n },\n \"broadcastStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"Start - testing the broadcast. YouTube transmits video to the broadcast's monitor - stream. Note that you can only transition a broadcast to the testing state - if its contentDetails.monitorStream.enableMonitorStream property is set to - true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The - broadcast is over. YouTube stops transmitting video.\"\n ],\n - \ \"location\": \"query\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The status to which the broadcast is going to transition.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + for each separate channel.\",\n \"type\": \"string\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"*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.\"\n }\n },\n \"response\": + {\n \"$ref\": \"LiveStream\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"description\": + \"Updates an existing stream for the authenticated user.\",\n \"request\": + {\n \"$ref\": \"LiveStream\"\n },\n \"httpMethod\": + \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.update\"\n + \ },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n + \ },\n \"description\": \"Retrieve the list of streams associated + with the given channel. --\",\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.list\",\n + \ \"parameters\": {\n \"pageToken\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": + true\n },\n \"mine\": {\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"maxResults\": + {\n \"type\": \"integer\",\n \"default\": \"5\",\n + \ \"minimum\": \"0\",\n \"format\": \"uint32\",\n + \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"repeated\": + true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -7226,32 +7280,212 @@ interactions: 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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to transition.\"\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"update\": {\n \"id\": \"youtube.liveBroadcasts.update\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": + for each separate channel.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"httpMethod\": \"GET\"\n },\n + \ \"insert\": {\n \"id\": \"youtube.liveStreams.insert\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Inserts a new stream for the authenticated user.\",\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": + in the parameter value are id, snippet, cdn, content_details, and status.\",\n + \ \"required\": true,\n \"location\": \"query\",\n + \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"request\": + {\n \"$ref\": \"LiveStream\"\n },\n \"path\": + \"youtube/v3/liveStreams\",\n \"response\": {\n \"$ref\": + \"LiveStream\"\n }\n }\n }\n },\n \"channels\": + {\n \"methods\": {\n \"update\": {\n \"request\": {\n + \ \"$ref\": \"Channel\"\n },\n \"response\": {\n + \ \"$ref\": \"Channel\"\n },\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"httpMethod\": \"PUT\",\n + \ \"id\": \"youtube.channels.update\",\n \"description\": + \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/channels\",\n \"path\": + \"youtube/v3/channels\"\n },\n \"list\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n + \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n + \ ],\n \"flatPath\": \"youtube/v3/channels\",\n \"id\": + \"youtube.channels.list\",\n \"httpMethod\": \"GET\",\n \"response\": + {\n \"$ref\": \"ChannelListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/channels\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"required\": true,\n \"location\": + \"query\"\n },\n \"categoryId\": {\n \"type\": + \"string\",\n \"description\": \"Return the channels within the + specified guide category ID.\",\n \"location\": \"query\"\n },\n + \ \"maxResults\": {\n \"minimum\": \"0\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"format\": \"uint32\",\n + \ \"default\": \"5\",\n \"location\": \"query\",\n + \ \"type\": \"integer\",\n \"maximum\": \"50\"\n + \ },\n \"mine\": {\n \"type\": \"boolean\",\n + \ \"location\": \"query\",\n \"description\": \"Return + the ids of channels owned by the authenticated user.\"\n },\n \"managedByMe\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Return the channels managed by the authenticated + user.\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"forUsername\": + {\n \"description\": \"Return the channel associated with a YouTube + username.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"mySubscribers\": {\n \"type\": + \"boolean\",\n \"description\": \"Return the channels subscribed + to the authenticated user\",\n \"location\": \"query\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Return the channels with the + specified IDs.\",\n \"repeated\": true\n },\n \"hl\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Stands for \\\"host language\\\". Specifies + the localization language of the metadata to be filled into snippet.localized. + The field is filled with the default metadata if there is no localization + in the specified language. The parameter value must be a language code included + in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n + \ },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n }\n + \ }\n }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": + {\n \"description\": \"POST method.\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"response\": {\n \"$ref\": \"TestItem\"\n },\n + \ \"path\": \"youtube/v3/tests\",\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"externalChannelId\": {\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"request\": {\n \"$ref\": \"TestItem\"\n },\n + \ \"id\": \"youtube.tests.insert\",\n \"flatPath\": \"youtube/v3/tests\",\n + \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"videoCategories\": + {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/videoCategories\",\n + \ \"id\": \"youtube.videoCategories.list\",\n \"parameters\": + {\n \"hl\": {\n \"default\": \"en-US\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"Returns the video categories with the given + IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n },\n + \ \"regionCode\": {\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"required\": true,\n \"description\": + \"The *part* parameter specifies the videoCategory resource properties that + the API response will include. Set the parameter value to snippet.\",\n \"repeated\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"flatPath\": \"youtube/v3/videoCategories\",\n \"response\": + {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\"\n }\n }\n },\n \"channelSections\": + {\n \"methods\": {\n \"delete\": {\n \"description\": + \"Deletes a resource.\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.channelSections.delete\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\"\n }\n },\n \"httpMethod\": + \"DELETE\",\n \"flatPath\": \"youtube/v3/channelSections\"\n },\n + \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -7266,166 +7500,155 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": + for each separate channel.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"description\": \"Inserts a + new resource into this collection.\",\n \"httpMethod\": \"POST\",\n + \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n + \ \"flatPath\": \"youtube/v3/channelSections\",\n \"response\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"path\": + \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.insert\"\n + \ },\n \"update\": {\n \"description\": \"Updates an + existing resource.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"PUT\",\n \"request\": {\n + \ \"$ref\": \"ChannelSection\"\n },\n \"flatPath\": + \"youtube/v3/channelSections\",\n \"response\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"path\": \"youtube/v3/channelSections\",\n + \ \"id\": \"youtube.channelSections.update\"\n },\n \"list\": + {\n \"flatPath\": \"youtube/v3/channelSections\",\n \"response\": + {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"parameters\": + {\n \"mine\": {\n \"description\": \"Return the ChannelSections + owned by the authenticated user.\",\n \"location\": \"query\",\n + \ \"type\": \"boolean\"\n },\n \"hl\": {\n + \ \"type\": \"string\",\n \"description\": \"Return + content in specified language\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"Return the ChannelSections with + the given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"channelId\": {\n \"description\": \"Return the + ChannelSections owned by the specified channel ID.\",\n \"location\": \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"description\": \"Updates an - existing broadcast for the authenticated user.\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveBroadcasts\"\n - \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"I18nRegionListResponse\"\n },\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"required\": - true\n },\n \"hl\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"default\": \"en_US\"\n - \ }\n },\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.i18nRegions.list\",\n \"path\": \"youtube/v3/i18nRegions\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat moderator.\",\n \"id\": - \"youtube.liveChatModerators.delete\",\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\"\n },\n \"list\": - {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"maxResults\": {\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"maximum\": \"50\",\n \"default\": \"5\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"liveChatId\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The id of the live chat for which moderators - should be returned.\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.channelSections.list\",\n \"httpMethod\": + \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/channelSections\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\"\n }\n }\n + \ },\n \"thumbnails\": {\n \"methods\": {\n \"set\": {\n + \ \"mediaUpload\": {\n \"maxSize\": \"2097152\",\n \"protocols\": + {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n + \ \"multipart\": true\n },\n \"simple\": + {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": + true\n }\n },\n \"accept\": [\n \"image/jpeg\",\n + \ \"image/png\",\n \"application/octet-stream\"\n + \ ]\n },\n \"httpMethod\": \"POST\",\n \"parameters\": + {\n \"videoId\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"youtube.thumbnails.set\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"supportsMediaUpload\": true,\n \"parameterOrder\": + [\n \"videoId\"\n ],\n \"path\": \"youtube/v3/thumbnails/set\",\n + \ \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n + \ },\n \"description\": \"As this is not an insert in a strict + sense (it supports uploading/setting of a thumbnail for multiple videos, which + doesn't result in creation of a single resource), I use a custom verb here.\",\n + \ \"flatPath\": \"youtube/v3/thumbnails/set\"\n }\n }\n + \ },\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"parameters\": {\n \"hl\": {\n + \ \"default\": \"en_US\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"required\": true,\n \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the liveChatModerator resource parts that the API response - will include. Supported values are id and snippet.\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"response\": - {\n \"$ref\": \"LiveChatModeratorListResponse\"\n },\n - \ \"id\": \"youtube.liveChatModerators.list\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ]\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"response\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"id\": \"youtube.liveChatModerators.insert\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n }\n }\n }\n },\n - \ \"membershipsLevels\": {\n \"methods\": {\n \"list\": {\n - \ \"description\": \"Retrieves a list of all pricing levels offered - by a creator to the fans.\",\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/membershipsLevels\",\n \"response\": {\n \"$ref\": - \"MembershipsLevelListResponse\"\n },\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.membershipsLevels.list\"\n }\n }\n - \ },\n \"liveStreams\": {\n \"methods\": {\n \"update\": - {\n \"id\": \"youtube.liveStreams.update\",\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"description\": \"Updates an existing - stream for the authenticated user.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n + parameter specifies the i18nLanguage resource properties that the API response + will include. Set the parameter value to snippet.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"youtube.i18nLanguages.list\",\n + \ \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"path\": + \"youtube/v3/i18nLanguages\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"GET\"\n }\n }\n },\n + \ \"channelBanners\": {\n \"methods\": {\n \"insert\": {\n \"supportsMediaUpload\": + true,\n \"description\": \"Inserts a new resource into this collection.\",\n + \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": + \"ChannelBannerResource\"\n },\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n + \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": + {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n + \ \"multipart\": true\n },\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n + \ }\n },\n \"maxSize\": \"6291456\",\n \"accept\": + [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n + \ ]\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"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 @@ -7440,22 +7663,165 @@ interactions: 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.\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"id\": \"youtube.liveStreams.delete\",\n \"description\": - \"Deletes an existing stream for the authenticated user.\"\n },\n \"list\": - {\n \"path\": \"youtube/v3/liveStreams\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"Return LiveStreams with the given ids from - Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": + for each separate channel.\"\n },\n \"channelId\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Unused, channel_id is currently derived from + the security context of the requestor.\"\n }\n },\n \"id\": + \"youtube.channelBanners.insert\",\n \"path\": \"youtube/v3/channelBanners/insert\",\n + \ \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n + \ },\n \"parameterOrder\": []\n }\n }\n },\n + \ \"videos\": {\n \"methods\": {\n \"list\": {\n \"parameters\": + {\n \"maxHeight\": {\n \"format\": \"int32\",\n \"maximum\": + \"8192\",\n \"location\": \"query\",\n \"type\": + \"integer\",\n \"minimum\": \"72\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"id\": {\n \"description\": \"Return videos with + the given ids.\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"type\": \"string\"\n },\n \"locale\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"maxResults\": {\n \"location\": + \"query\",\n \"maximum\": \"50\",\n \"format\": + \"uint32\",\n \"minimum\": \"1\",\n \"description\": + \"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.\",\n \"type\": + \"integer\",\n \"default\": \"5\"\n },\n \"chart\": + {\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Return the most popular videos + for the specified content region and video category.\"\n ],\n + \ \"enum\": [\n \"chartUnspecified\",\n \"mostPopular\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"Return the videos that are in the specified chart.\"\n },\n \"videoCategoryId\": + {\n \"default\": \"0\",\n \"type\": \"string\",\n + \ \"description\": \"Use chart that is specific to the specified + video category\",\n \"location\": \"query\"\n },\n + \ \"hl\": {\n \"description\": \"Stands for \\\"host + language\\\". Specifies the localization language of the metadata to be filled + into snippet.localized. The field is filled with the default metadata if there + is no localization in the specified language. The parameter value must be + a language code included in the list returned by the i18nLanguages.list method + (e.g. en_US, es_MX).\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"regionCode\": {\n \"description\": + \"Use a chart that is specific to the specified region\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true\n },\n \"maxWidth\": {\n \"minimum\": + \"72\",\n \"format\": \"int32\",\n \"description\": + \"Return the player with maximum height specified in\",\n \"location\": + \"query\",\n \"maximum\": \"8192\",\n \"type\": + \"integer\"\n },\n \"myRating\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Return videos liked/disliked by the authenticated user. Does not support + RateType.RATED_TYPE_NONE.\",\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"The + entity is liked.\",\n \"The entity is disliked.\"\n ]\n + \ }\n },\n \"response\": {\n \"$ref\": + \"VideoListResponse\"\n },\n \"httpMethod\": \"GET\",\n + \ \"path\": \"youtube/v3/videos\",\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.videos.list\"\n },\n \"update\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"required\": + true,\n \"location\": \"query\",\n \"repeated\": + true\n }\n },\n \"request\": {\n \"$ref\": + \"Video\"\n },\n \"response\": {\n \"$ref\": + \"Video\"\n },\n \"id\": \"youtube.videos.update\",\n \"description\": + \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"path\": \"youtube/v3/videos\",\n \"flatPath\": + \"youtube/v3/videos\",\n \"httpMethod\": \"PUT\"\n },\n \"delete\": + {\n \"description\": \"Deletes a resource.\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"httpMethod\": + \"DELETE\",\n \"flatPath\": \"youtube/v3/videos\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/videos\",\n \"id\": + \"youtube.videos.delete\"\n },\n \"rate\": {\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"rating\": + {\n \"location\": \"query\",\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"The + entity is liked.\",\n \"The entity is disliked.\"\n ],\n + \ \"type\": \"string\",\n \"required\": true\n }\n + \ },\n \"description\": \"Adds a like or dislike rating to + a video or removes a rating from a video.\",\n \"id\": \"youtube.videos.rate\",\n + \ \"path\": \"youtube/v3/videos/rate\",\n \"flatPath\": \"youtube/v3/videos/rate\",\n + \ \"parameterOrder\": [\n \"id\",\n \"rating\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ },\n \"reportAbuse\": {\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"*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 @@ -7464,47 +7830,39 @@ interactions: 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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"50\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"type\": \"integer\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + be linked to the specified YouTube content owner.\"\n }\n },\n + \ \"parameterOrder\": [],\n \"httpMethod\": \"POST\",\n \"path\": + \"youtube/v3/videos/reportAbuse\",\n \"description\": \"Report abuse + for a video.\",\n \"id\": \"youtube.videos.reportAbuse\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"description\": \"Retrieve the list of streams associated with - the given channel. --\",\n \"response\": {\n \"$ref\": - \"LiveStreamListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.liveStreams.list\"\n },\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n }\n + \ },\n \"getRating\": {\n \"httpMethod\": \"GET\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"repeated\": true,\n \"location\": \"query\"\n + \ }\n },\n \"description\": \"Retrieves the ratings + that the authorized user gave to a list of specified videos.\",\n \"id\": + \"youtube.videos.getRating\",\n \"response\": {\n \"$ref\": + \"VideoGetRatingResponse\"\n },\n \"flatPath\": \"youtube/v3/videos/getRating\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"path\": \"youtube/v3/videos/getRating\"\n },\n \"insert\": + {\n \"id\": \"youtube.videos.insert\",\n \"parameters\": + {\n \"stabilize\": {\n \"location\": \"query\",\n + \ \"type\": \"boolean\",\n \"description\": \"Should + stabilize be applied to the upload.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube @@ -7520,8 +7878,15 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively + for each separate channel.\"\n },\n \"notifySubscribers\": + {\n \"default\": \"true\",\n \"description\": \"Notify + the channel subscribers about the new video. As default, the notification + is enabled.\",\n \"type\": \"boolean\",\n \"location\": + \"query\"\n },\n \"autoLevels\": {\n \"type\": + \"boolean\",\n \"location\": \"query\",\n \"description\": + \"Should auto-levels be applied to the upload.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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. @@ -7530,263 +7895,41 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": + owner.\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true,\n \"description\": \"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, content_details, and status.\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"tests\": - {\n \"methods\": {\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"TestItem\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/tests\",\n \"id\": \"youtube.tests.insert\",\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"TestItem\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true\n }\n },\n \"description\": - \"POST method.\",\n \"path\": \"youtube/v3/tests\"\n }\n }\n - \ },\n \"channels\": {\n \"methods\": {\n \"list\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"id\": \"youtube.channels.list\",\n \"parameters\": - {\n \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n },\n \"managedByMe\": - {\n \"description\": \"Return the channels managed by the authenticated - user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"categoryId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the channels within the specified - guide category ID.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the ids of channels owned by the authenticated user.\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the channels with the specified IDs.\"\n },\n \"hl\": - {\n \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the channels subscribed to the authenticated user\"\n },\n - \ \"forUsername\": {\n \"description\": \"Return the - channel associated with a YouTube username.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"type\": \"integer\",\n \"default\": - \"5\",\n \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"path\": \"youtube/v3/channels\",\n - \ \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ }\n },\n \"update\": {\n \"path\": \"youtube/v3/channels\",\n - \ \"request\": {\n \"$ref\": \"Channel\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": true,\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channels.update\",\n \"flatPath\": - \"youtube/v3/channels\",\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Channel\"\n }\n }\n }\n },\n \"captions\": {\n - \ \"methods\": {\n \"download\": {\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"tlang\": {\n \"description\": \"tlang is the language - code; machine translate the captions into this language.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The - ID of the caption track to download, required for One Platform.\",\n \"location\": - \"path\",\n \"required\": true\n },\n \"tfmt\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Convert the captions into this format. Supported - options are sbv, srt, and vtt.\"\n }\n },\n \"path\": - \"youtube/v3/captions/{id}\",\n \"supportsMediaDownload\": true,\n - \ \"flatPath\": \"youtube/v3/captions/{id}\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"useMediaDownloadService\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.download\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Downloads a caption track.\"\n },\n - \ \"insert\": {\n \"id\": \"youtube.captions.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"supportsMediaUpload\": - true,\n \"parameters\": {\n \"sync\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\"\n },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"required\": - true,\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + 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.\"\n }\n },\n \"flatPath\": + \"youtube/v3/videos\",\n \"supportsMediaUpload\": true,\n \"path\": + \"youtube/v3/videos\",\n \"httpMethod\": \"POST\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"request\": + {\n \"$ref\": \"Video\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/captions\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"maxSize\": \"104857600\",\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"Caption\"\n - \ },\n \"response\": {\n \"$ref\": \"Caption\"\n - \ }\n },\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"mediaUpload\": {\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"104857600\"\n - \ },\n \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"sync\": {\n \"description\": \"Extra parameter - to allow automatically syncing the uploaded caption/transcript with the audio.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOf\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is on behalf of.\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/captions\",\n \"description\": \"Updates an existing - resource.\",\n \"supportsMediaUpload\": true,\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.captions.update\"\n },\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/captions\",\n \"id\": - \"youtube.captions.list\",\n \"response\": {\n \"$ref\": - \"CaptionListResponse\"\n },\n \"parameters\": {\n \"videoId\": - {\n \"description\": \"Returns the captions for the specified - video.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"id\": - {\n \"description\": \"Returns the captions with the given IDs - for Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is on behalf of.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/captions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"id\": \"youtube.captions.delete\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"path\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"onBehalfOf\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": + \ \"response\": {\n \"$ref\": \"Video\"\n },\n + \ \"mediaUpload\": {\n \"maxSize\": \"274877906944\",\n + \ \"protocols\": {\n \"resumable\": {\n \"multipart\": + true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n + \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/videos\",\n + \ \"multipart\": true\n }\n },\n \"accept\": + [\n \"video/*\",\n \"application/octet-stream\"\n + \ ]\n }\n }\n }\n },\n \"playlistItems\": + {\n \"methods\": {\n \"insert\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"POST\",\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n + \ },\n \"description\": \"Inserts a new resource into this + collection.\",\n \"path\": \"youtube/v3/playlistItems\",\n \"id\": + \"youtube.playlistItems.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -7794,93 +7937,21 @@ interactions: This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/videoAbuseReportReasons\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"id\": - \"youtube.videoAbuseReportReasons.list\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"default\": \"en-US\"\n - \ }\n }\n }\n }\n },\n \"members\": {\n - \ \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/members\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"maximum\": \"1000\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"hasAccessToLevel\": {\n \"description\": \"Filter - members in the results set to the ones that have access to a level.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mode\": - {\n \"location\": \"query\",\n \"default\": \"all_current\",\n - \ \"enum\": [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"type\": - \"string\",\n \"description\": \"Parameter that specifies which - channel members to return.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ]\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"filterByMemberChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\"\n }\n },\n - \ \"path\": \"youtube/v3/members\",\n \"id\": \"youtube.members.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"description\": \"Retrieves a list of members that - match the request criteria for a channel.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ }\n }\n }\n },\n \"playlists\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"parameters\": {\n \"channelId\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the playlists owned by the specified - channel ID.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the playlists owned by the authenticated user.\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return content in specified language\"\n },\n \"id\": - {\n \"description\": \"Return the playlists with the given IDs - for Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + provide authentication credentials for each individual channel. The CMS account + that the user authenticates with must be linked to the specified YouTube content + owner.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"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.\"\n }\n }\n },\n + \ \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Deletes a resource.\",\n \"path\": + \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates @@ -7891,40 +7962,21 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"minimum\": \"0\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"id\": \"youtube.playlists.list\",\n \"flatPath\": \"youtube/v3/playlists\"\n - \ },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"description\": \"Updates an existing resource.\",\n \"id\": - \"youtube.playlists.update\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended + owner.\"\n }\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"id\": \"youtube.playlistItems.delete\"\n },\n + \ \"list\": {\n \"id\": \"youtube.playlistItems.list\",\n \"parameters\": + {\n \"id\": {\n \"repeated\": true,\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": + {\n \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"format\": + \"uint32\",\n \"maximum\": \"50\",\n \"location\": + \"query\",\n \"type\": \"integer\",\n \"default\": + \"5\",\n \"minimum\": \"0\"\n },\n \"videoId\": + {\n \"location\": \"query\",\n \"description\": + \"Return the playlist items associated with the given video ID.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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 @@ -7933,65 +7985,343 @@ interactions: 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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true,\n \"description\": + owner.\",\n \"type\": \"string\"\n },\n \"playlistId\": + {\n \"description\": \"Return the playlist items within the given + playlist.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n }\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"path\": + \"youtube/v3/playlistItems\",\n \"httpMethod\": \"GET\"\n },\n + \ \"update\": {\n \"id\": \"youtube.playlistItems.update\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\",\n \"description\": \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"delete\": {\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.playlists.delete\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"insert\": {\n \"scopes\": + 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.\",\n \"repeated\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"response\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlists.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + \ \"description\": \"Updates an existing resource.\"\n }\n + \ }\n },\n \"liveChatBans\": {\n \"methods\": {\n \"insert\": + {\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveChatBans.insert\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": + true,\n \"repeated\": true\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/bans\",\n + \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"request\": + {\n \"$ref\": \"LiveChatBan\"\n },\n \"response\": + {\n \"$ref\": \"LiveChatBan\"\n }\n },\n \"delete\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": + \"youtube/v3/liveChat/bans\",\n \"id\": \"youtube.liveChatBans.delete\",\n + \ \"description\": \"Deletes a chat ban.\",\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n }\n },\n + \ \"path\": \"youtube/v3/liveChat/bans\",\n \"httpMethod\": + \"DELETE\"\n }\n }\n },\n \"comments\": {\n \"methods\": + {\n \"delete\": {\n \"id\": \"youtube.comments.delete\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": + \"DELETE\",\n \"flatPath\": \"youtube/v3/comments\",\n \"description\": + \"Deletes a resource.\",\n \"path\": \"youtube/v3/comments\",\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"setModerationStatus\": {\n \"description\": + \"Sets the moderation status of one or more comments.\",\n \"httpMethod\": + \"POST\",\n \"parameters\": {\n \"banAuthor\": {\n \"type\": + \"boolean\",\n \"default\": \"false\",\n \"description\": + \"If set to true the author of the comment gets added to the ban list. This + means all future comments of the author will autmomatically be rejected. Only + valid in combination with STATUS_REJECTED.\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Modifies the moderation status of the comments with the given IDs\",\n \"required\": + true,\n \"repeated\": true\n },\n \"moderationStatus\": + {\n \"description\": \"Specifies the requested moderation status. + Note, comments can be in statuses, which are not available through this call. + For example, this call does not allow to mark a comment as 'likely spam'. + Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, + MODERATION_STATUS_REJECTED.\",\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"enum\": + [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n + \ \"rejected\"\n ],\n \"type\": \"string\",\n + \ \"required\": true\n }\n },\n \"flatPath\": + \"youtube/v3/comments/setModerationStatus\",\n \"id\": \"youtube.comments.setModerationStatus\",\n + \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/comments/setModerationStatus\"\n + \ },\n \"insert\": {\n \"description\": \"Inserts a + new resource into this collection.\",\n \"httpMethod\": \"POST\",\n + \ \"flatPath\": \"youtube/v3/comments\",\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"description\": + \"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.\",\n \"required\": true,\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"path\": \"youtube/v3/comments\",\n \"request\": {\n \"$ref\": + \"Comment\"\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"id\": \"youtube.comments.insert\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"response\": {\n \"$ref\": \"Comment\"\n }\n + \ },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/comments\",\n \"httpMethod\": + \"PUT\",\n \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"required\": true,\n \"description\": + \"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.\",\n + \ \"repeated\": true,\n \"location\": \"query\"\n + \ }\n },\n \"description\": \"Updates an existing + resource.\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"response\": {\n \"$ref\": \"Comment\"\n },\n + \ \"id\": \"youtube.comments.update\",\n \"request\": {\n + \ \"$ref\": \"Comment\"\n },\n \"flatPath\": \"youtube/v3/comments\"\n + \ },\n \"markAsSpam\": {\n \"parameters\": {\n \"id\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"description\": \"Flags the comments with the given IDs as + spam in the caller's opinion.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"flatPath\": + \"youtube/v3/comments/markAsSpam\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"description\": + \"Expresses the caller's opinion that one or more comments should be flagged + as spam.\",\n \"id\": \"youtube.comments.markAsSpam\",\n \"path\": + \"youtube/v3/comments/markAsSpam\",\n \"parameterOrder\": [\n \"id\"\n + \ ]\n },\n \"list\": {\n \"path\": \"youtube/v3/comments\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/comments\",\n \"httpMethod\": \"GET\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.comments.list\",\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": + \"CommentListResponse\"\n },\n \"parameters\": {\n \"part\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"The *part* parameter specifies a comma-separated + list of one or more comment resource properties that the API response will + include.\"\n },\n \"pageToken\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"maxResults\": {\n \"maximum\": \"100\",\n \"location\": + \"query\",\n \"format\": \"uint32\",\n \"default\": + \"20\",\n \"type\": \"integer\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"minimum\": \"1\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"description\": + \"Returns the comments with the given IDs for One Platform.\",\n \"repeated\": + true,\n \"location\": \"query\"\n },\n \"parentId\": + {\n \"location\": \"query\",\n \"description\": + \"Returns replies to the specified comment. Note, currently YouTube features + only one level of replies (ie replies to top level comments). However replies + to replies may be supported in the future.\",\n \"type\": \"string\"\n + \ },\n \"textFormat\": {\n \"enum\": [\n + \ \"textFormatUnspecified\",\n \"html\",\n \"plainText\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Returns the comments in HTML format. + This is the default value.\",\n \"Returns the comments in plain + text format.\"\n ],\n \"location\": \"query\",\n + \ \"default\": \"html\",\n \"description\": \"The + requested text format for the returned comments.\"\n }\n }\n + \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": + {\n \"id\": \"youtube.search.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n + \ },\n \"httpMethod\": \"GET\",\n \"description\": + \"Retrieves a list of search resources\",\n \"flatPath\": \"youtube/v3/search\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/search\",\n \"parameters\": {\n \"channelId\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively + \ \"description\": \"Filter on resources belonging to this channelId.\"\n + \ },\n \"pageToken\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n + \ \"forMine\": {\n \"description\": \"Search for the + private videos of the authenticated user.\",\n \"type\": \"boolean\",\n + \ \"location\": \"query\"\n },\n \"forContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"boolean\",\n + \ \"description\": \"Search owned by a content owner.\"\n },\n + \ \"locationRadius\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Filter + on distance from the location (specified above).\"\n },\n \"location\": + {\n \"description\": \"Filter on location of the video\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"videoLicense\": + {\n \"type\": \"string\",\n \"enum\": [\n \"any\",\n + \ \"youtube\",\n \"creativeCommon\"\n ],\n + \ \"location\": \"query\",\n \"description\": \"Filter + on the license of the videos.\",\n \"enumDescriptions\": [\n + \ \"Return all videos, regardless of which license they have, + that match the query parameters.\",\n \"Only return videos + that have the standard YouTube license.\",\n \"Only return + videos that have a Creative Commons license. Users can reuse videos with this + license in other videos that they create. Learn more.\"\n ]\n + \ },\n \"relatedToVideoId\": {\n \"description\": + \"Search related to a resource.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"q\": {\n + \ \"description\": \"Textual search terms to match.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": + {\n \"type\": \"integer\",\n \"location\": \"query\",\n + \ \"minimum\": \"0\",\n \"default\": \"5\",\n \"maximum\": + \"50\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"format\": \"uint32\"\n },\n \"videoSyndicated\": + {\n \"type\": \"string\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n + \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos, syndicated + or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n + \ \"location\": \"query\",\n \"description\": \"Filter + on syndicated videos.\"\n },\n \"videoEmbeddable\": + {\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos, embeddable + or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n + \ \"any\",\n \"true\"\n ],\n \"description\": + \"Filter on embeddable videos.\"\n },\n \"videoCaption\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Do + not filter results based on caption availability.\",\n \"Only + include videos that have captions.\",\n \"Only include videos + that do not have captions.\"\n ],\n \"enum\": [\n + \ \"videoCaptionUnspecified\",\n \"any\",\n \"closedCaption\",\n + \ \"none\"\n ],\n \"description\": + \"Filter on the presence of captions on the videos.\"\n },\n \"channelType\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Return + all channels.\",\n \"Only retrieve shows.\"\n ],\n + \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n + \ \"show\"\n ],\n \"description\": + \"Add a filter on the channel search.\"\n },\n \"videoDuration\": + {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Do not filter video search results + based on their duration. This is the default value.\",\n \"Only + include videos that are less than four minutes long.\",\n \"Only + include videos that are between four and 20 minutes long (inclusive).\",\n + \ \"Only include videos longer than 20 minutes.\"\n ],\n + \ \"location\": \"query\",\n \"description\": \"Filter + on the duration of the videos.\",\n \"enum\": [\n \"videoDurationUnspecified\",\n + \ \"any\",\n \"short\",\n \"medium\",\n + \ \"long\"\n ]\n },\n \"topicId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Restrict results to a particular topic.\"\n + \ },\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"order\": {\n \"enum\": [\n \"searchSortUnspecified\",\n + \ \"date\",\n \"rating\",\n \"viewCount\",\n + \ \"relevance\",\n \"title\",\n \"videoCount\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Resources are sorted in reverse + chronological order based on the date they were created.\",\n \"Resources + are sorted from highest to lowest rating.\",\n \"Resources + are sorted from highest to lowest number of views.\",\n \"Resources + are sorted based on their relevance to the search query. This is the default + value for this parameter.\",\n \"Resources are sorted alphabetically + by title.\",\n \"Channels are sorted in descending order of + their number of uploaded videos.\"\n ],\n \"default\": + \"relevance\",\n \"description\": \"Sort order of the results.\",\n + \ \"location\": \"query\"\n },\n \"type\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"description\": \"Restrict + results to a particular set of resource types from One Platform.\"\n },\n + \ \"eventType\": {\n \"description\": \"Filter on the + livestream status of the videos.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"The live broadcast is upcoming.\",\n + \ \"The live broadcast is active.\",\n \"The + live broadcast has been completed.\"\n ],\n \"enum\": + [\n \"none\",\n \"upcoming\",\n \"live\",\n + \ \"completed\"\n ],\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"videoDimension\": + {\n \"description\": \"Filter on 3d videos.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"Include + both 3D and non-3D videos in returned results. This is the default value.\",\n + \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict + search results to only include 3D videos.\"\n ],\n \"location\": + \"query\",\n \"enum\": [\n \"any\",\n \"2d\",\n + \ \"3d\"\n ]\n },\n \"safeSearch\": + {\n \"type\": \"string\",\n \"description\": \"Indicates + whether the search results should include restricted content as well as standard + content.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"YouTube will not filter the search result set.\",\n \"YouTube + will filter some content from search results and, at the least, will filter + content that is restricted in your locale. Based on their content, search + results could be removed from search results or demoted in search results. + This is the default parameter value.\",\n \"YouTube will try + to exclude all restricted content from the search result set. Based on their + content, search results could be removed from search results or demoted in + search results.\"\n ],\n \"default\": \"moderate\",\n + \ \"enum\": [\n \"safeSearchSettingUnspecified\",\n + \ \"none\",\n \"moderate\",\n \"strict\"\n + \ ],\n \"location\": \"query\"\n },\n + \ \"videoDefinition\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"enumDescriptions\": + [\n \"Return all videos, regardless of their resolution.\",\n + \ \"Only retrieve videos in standard definition.\",\n \"Only + retrieve HD videos.\"\n ],\n \"description\": \"Filter + on the definition of the videos.\",\n \"enum\": [\n \"any\",\n + \ \"standard\",\n \"high\"\n ]\n + \ },\n \"relevanceLanguage\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return results relevant to this language.\"\n },\n \"publishedBefore\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"format\": \"google-datetime\",\n \"description\": + \"Filter on resources published before this date.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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. @@ -8000,57 +8330,78 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/playlists\"\n }\n }\n },\n \"videoCategories\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"path\": \"youtube/v3/videoCategories\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"id\": \"youtube.videoCategories.list\",\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the video categories with the given IDs for Stubby or Apiary.\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"hl\": - {\n \"default\": \"en-US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the videoCategory resource properties that - the API response will include. Set the parameter value to snippet.\"\n }\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\"\n }\n }\n - \ },\n \"liveChatBans\": {\n \"methods\": {\n \"delete\": - {\n \"id\": \"youtube.liveChatBans.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a chat ban.\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"channelBanners\": - {\n \"methods\": {\n \"insert\": {\n \"supportsMediaUpload\": - true,\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + owner.\"\n },\n \"publishedAfter\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"format\": + \"google-datetime\",\n \"description\": \"Filter on resources + published after this date.\"\n },\n \"forDeveloper\": + {\n \"location\": \"query\",\n \"description\": + \"Restrict the search to only retrieve videos uploaded using the project id + of the authenticated user.\",\n \"type\": \"boolean\"\n },\n + \ \"videoCategoryId\": {\n \"location\": \"query\",\n + \ \"description\": \"Filter on videos in a specific category.\",\n + \ \"type\": \"string\"\n },\n \"videoType\": + {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos.\",\n \"Only + retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n + \ ],\n \"description\": \"Filter on videos of a specific + type.\",\n \"location\": \"query\",\n \"enum\": + [\n \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n + \ \"episode\"\n ]\n },\n \"regionCode\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Display the content as seen by viewers in + this country.\"\n }\n }\n }\n }\n },\n + \ \"members\": {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.members.list\",\n + \ \"parameters\": {\n \"hasAccessToLevel\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Filter members in the results set to the ones that have access to a level.\"\n + \ },\n \"maxResults\": {\n \"maximum\": + \"1000\",\n \"format\": \"uint32\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"type\": \"integer\",\n + \ \"minimum\": \"0\",\n \"location\": \"query\",\n + \ \"default\": \"5\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"filterByMemberChannelId\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Comma separated list of channel IDs. Only data about members that are part + of this list will be included in the response.\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"description\": \"The *part* parameter specifies the member + resource parts that the API response will include. Set the parameter value + to snippet.\",\n \"required\": true,\n \"type\": + \"string\"\n },\n \"mode\": {\n \"enumDescriptions\": + [\n \"\",\n \"Return only members that joined + after the first call with this mode was made.\",\n \"Return + all current members, from newest to oldest.\"\n ],\n \"location\": + \"query\",\n \"description\": \"Parameter that specifies which + channel members to return.\",\n \"enum\": [\n \"listMembersModeUnknown\",\n + \ \"updates\",\n \"all_current\"\n ],\n + \ \"type\": \"string\",\n \"default\": \"all_current\"\n + \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"description\": + \"Retrieves a list of members that match the request criteria for a channel.\",\n + \ \"response\": {\n \"$ref\": \"MemberListResponse\"\n + \ },\n \"path\": \"youtube/v3/members\",\n \"flatPath\": + \"youtube/v3/members\"\n }\n }\n },\n \"liveBroadcasts\": + {\n \"methods\": {\n \"transition\": {\n \"parameters\": + {\n \"broadcastStatus\": {\n \"location\": \"query\",\n + \ \"required\": true,\n \"enumDescriptions\": [\n + \ \"\",\n \"Start testing the broadcast. YouTube + transmits video to the broadcast's monitor stream. Note that you can only + transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream + property is set to true.\\\",\",\n \"Return only persistent + broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting + video.\"\n ],\n \"type\": \"string\",\n \"description\": + \"The status to which the broadcast is going to transition.\",\n \"enum\": + [\n \"statusUnspecified\",\n \"testing\",\n + \ \"live\",\n \"complete\"\n ]\n + \ },\n \"id\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Broadcast + to transition.\",\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -8066,8 +8417,7 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -8075,158 +8425,89 @@ interactions: content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Unused, channel_id is currently - derived from the security context of the requestor.\"\n }\n },\n - \ \"path\": \"youtube/v3/channelBanners/insert\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.channelBanners.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n - \ \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"parameterOrder\": [],\n \"mediaUpload\": - {\n \"maxSize\": \"6291456\",\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n }\n }\n - \ }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"description\": \"Updates an - existing resource.\",\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameterOrder\": [],\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true\n - \ }\n },\n \"httpMethod\": \"PUT\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n - \ }\n }\n }\n }\n }\n },\n - \ \"i18nLanguages\": {\n \"methods\": {\n \"list\": {\n \"flatPath\": - \"youtube/v3/i18nLanguages\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/i18nLanguages\",\n \"response\": - {\n \"$ref\": \"I18nLanguageListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.i18nLanguages.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"hl\": {\n \"default\": - \"en_US\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the i18nLanguage resource properties that the API - response will include. Set the parameter value to snippet.\"\n }\n - \ }\n }\n }\n },\n \"videos\": {\n \"methods\": - {\n \"delete\": {\n \"description\": \"Deletes a resource.\",\n - \ \"path\": \"youtube/v3/videos\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"youtube.videos.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"update\": {\n \"id\": \"youtube.videos.update\",\n - \ \"description\": \"Updates an existing resource.\",\n \"path\": - \"youtube/v3/videos\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Video\"\n - \ },\n \"flatPath\": \"youtube/v3/videos\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively + individual channel. The CMS account that the user authenticates with must + be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"description\": \"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.\",\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n },\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"path\": + \"youtube/v3/liveBroadcasts/transition\",\n \"description\": \"Transition + a broadcast to a given status.\",\n \"parameterOrder\": [\n \"broadcastStatus\",\n + \ \"id\",\n \"part\"\n ],\n \"id\": + \"youtube.liveBroadcasts.transition\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"httpMethod\": + \"POST\"\n },\n \"update\": {\n \"description\": \"Updates + an existing broadcast for the authenticated user.\",\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"httpMethod\": - \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Video\"\n - \ }\n },\n \"list\": {\n \"path\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"VideoListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"myRating\": - {\n \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n - \ },\n \"locale\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"hl\": + provide authentication credentials for each individual channel. The CMS account + that the user authenticates with must be linked to the specified YouTube content + owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"required\": true,\n \"repeated\": true\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"request\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"id\": \"youtube.liveBroadcasts.update\",\n + \ \"httpMethod\": \"PUT\"\n },\n \"insertCuepoint\": + {\n \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n + \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"parameterOrder\": + [],\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"path\": + \"youtube/v3/liveBroadcasts/cuepoint\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"Cuepoint\"\n + \ },\n \"httpMethod\": \"POST\",\n \"description\": + \"Insert cuepoints in a broadcast\",\n \"parameters\": {\n \"part\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"maxWidth\": {\n \"format\": \"int32\",\n - \ \"description\": \"Return the player with maximum height specified - in\",\n \"minimum\": \"72\",\n \"location\": \"query\",\n - \ \"maximum\": \"8192\",\n \"type\": \"integer\"\n - \ },\n \"part\": {\n \"repeated\": true,\n \ \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"videoCategoryId\": {\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"default\": - \"0\",\n \"type\": \"string\",\n \"location\": \"query\"\n + 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.\",\n \"repeated\": true\n + \ },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"Broadcast to insert ads to, or equivalently + `external_video_id` for internal use.\",\n \"location\": \"query\"\n \ },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -8236,38 +8517,11 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"minimum\": \"1\",\n - \ \"description\": \"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.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - videos with the given ids.\",\n \"repeated\": true\n },\n - \ \"maxHeight\": {\n \"location\": \"query\",\n \"maximum\": - \"8192\",\n \"minimum\": \"72\",\n \"type\": \"integer\",\n - \ \"format\": \"int32\"\n },\n \"chart\": - {\n \"type\": \"string\",\n \"description\": \"Return - the videos that are in the specified chart.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ],\n - \ \"enum\": [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"regionCode\": {\n \"description\": \"Use a chart - that is specific to the specified region\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.videos.list\",\n \"httpMethod\": \"GET\"\n },\n - \ \"insert\": {\n \"parameters\": {\n \"stabilize\": - {\n \"description\": \"Should stabilize be applied to the upload.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"This parameter can only be used in a properly authorized request. *Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* + be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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 @@ -8279,7 +8533,52 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwner\": + for each separate channel.\",\n \"location\": \"query\"\n }\n + \ }\n },\n \"list\": {\n \"parameters\": {\n + \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"part\": {\n \"description\": + \"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, status + and statistics.\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ },\n \"broadcastStatus\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all broadcasts.\",\n \"Return current + live broadcasts.\",\n \"Return broadcasts that have not yet + started.\",\n \"Return broadcasts that have already ended.\"\n + \ ],\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n + \ \"all\",\n \"active\",\n \"upcoming\",\n + \ \"completed\"\n ],\n \"description\": + \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"location\": + \"query\"\n },\n \"broadcastType\": {\n \"enum\": + [\n \"broadcastTypeFilterUnspecified\",\n \"all\",\n + \ \"event\",\n \"persistent\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Return + all broadcasts.\",\n \"Return only scheduled event broadcasts.\",\n + \ \"Return only persistent broadcasts.\"\n ],\n + \ \"location\": \"query\",\n \"default\": \"event\",\n + \ \"type\": \"string\",\n \"description\": \"Return + only broadcasts with the selected type.\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -8290,81 +8589,110 @@ interactions: provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"notifySubscribers\": {\n \"location\": - \"query\",\n \"default\": \"true\",\n \"type\": - \"boolean\",\n \"description\": \"Notify the channel subscribers - about the new video. As default, the notification is enabled.\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true\n },\n \"autoLevels\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Should auto-levels be applied to the upload.\"\n - \ }\n },\n \"supportsMediaUpload\": true,\n \"flatPath\": - \"youtube/v3/videos\",\n \"description\": \"Inserts a new resource - into this collection.\",\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"mediaUpload\": - {\n \"maxSize\": \"274877906944\",\n \"accept\": [\n - \ \"video/*\",\n \"application/octet-stream\"\n ],\n - \ \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/videos\",\n \"multipart\": true\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"id\": \"youtube.videos.insert\",\n \"path\": \"youtube/v3/videos\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"httpMethod\": \"POST\"\n },\n \"getRating\": {\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": + \"string\"\n },\n \"mine\": {\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"maxResults\": + {\n \"location\": \"query\",\n \"type\": \"integer\",\n + \ \"default\": \"5\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"format\": \"uint32\",\n \"maximum\": + \"50\",\n \"minimum\": \"0\"\n },\n \"id\": + {\n \"description\": \"Return broadcasts with the given ids from + Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"repeated\": true\n }\n },\n + \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"flatPath\": + \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.list\",\n + \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"description\": \"Retrieve the list of broadcasts + associated with the given channel.\",\n \"httpMethod\": \"GET\"\n + \ },\n \"bind\": {\n \"parameters\": {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"id\": \"youtube.videos.getRating\",\n \"flatPath\": \"youtube/v3/videos/getRating\",\n + \"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.\",\n \"type\": \"string\",\n \"required\": + true,\n \"repeated\": true\n },\n \"streamId\": + {\n \"location\": \"query\",\n \"description\": + \"Stream to bind, if not set unbind the current one.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true,\n \"description\": \"Broadcast + to bind to the stream\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n }\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": + \"Bind a broadcast to a stream.\",\n \"parameterOrder\": [\n \"id\",\n + \ \"part\"\n ],\n \"id\": \"youtube.liveBroadcasts.bind\",\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"httpMethod\": + \"POST\"\n },\n \"delete\": {\n \"id\": \"youtube.liveBroadcasts.delete\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves the ratings that the - authorized user gave to a list of specified videos.\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ }\n },\n \"rate\": {\n \"httpMethod\": \"POST\",\n - \ \"path\": \"youtube/v3/videos/rate\",\n \"parameters\": - {\n \"rating\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true\n }\n - \ },\n \"parameterOrder\": [\n \"id\",\n \"rating\"\n - \ ],\n \"description\": \"Adds a like or dislike rating to - a video or removes a rating from a video.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos/rate\",\n \"id\": - \"youtube.videos.rate\"\n },\n \"reportAbuse\": {\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.videos.reportAbuse\",\n \"request\": - {\n \"$ref\": \"VideoAbuseReport\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": + \"DELETE\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": + \"Delete a given broadcast.\",\n \"parameters\": {\n \"id\": + {\n \"description\": \"Broadcast to delete.\",\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\"\n + \ },\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -8373,2806 +8701,1373 @@ interactions: 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.\"\n }\n },\n - \ \"parameterOrder\": [],\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"description\": \"Report abuse for a video.\"\n }\n }\n - \ },\n \"superChatEvents\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"location\": - \"query\",\n \"minimum\": \"1\",\n \"type\": \"integer\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\"\n },\n \"hl\": + be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": \"query\",\n \"description\": - \"Return rendered funding amounts in specified language.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the superChatEvent resource parts that the API - response will include. This parameter is currently not supported.\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.superChatEvents.list\",\n \"path\": - \"youtube/v3/superChatEvents\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/superChatEvents\"\n - \ }\n }\n },\n \"subscriptions\": {\n \"methods\": {\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"forChannelId\": {\n - \ \"location\": \"query\",\n \"description\": \"Return - the subscriptions to the subset of these channels that the authenticated user - is subscribed to.\",\n \"type\": \"string\"\n },\n - \ \"order\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"description\": \"The order of the returned - subscriptions\",\n \"default\": \"relevance\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"description\": \"Flag for returning the subscriptions - of the authenticated user.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"Return the subscriptions with - the given IDs for Stubby or Apiary.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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 + \"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.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"default\": \"5\",\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\"\n - \ },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the subscribers of the given channel owner.\"\n },\n \"myRecentSubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the subscriptions of the given channel owner.\"\n },\n - \ \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.subscriptions.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"response\": - {\n \"$ref\": \"SubscriptionListResponse\"\n },\n \"flatPath\": - \"youtube/v3/subscriptions\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\"\n },\n - \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/subscriptions\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": + for each separate channel.\",\n \"type\": \"string\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"request\": {\n \"$ref\": - \"Subscription\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\"\n }\n }\n - \ },\n \"activities\": {\n \"methods\": {\n \"list\": {\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.activities.list\",\n \"path\": \"youtube/v3/activities\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"publishedBefore\": - {\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"default\": \"5\",\n \"type\": - \"integer\",\n \"location\": \"query\"\n },\n \"home\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\"\n },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/activities\",\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n }\n }\n - \ }\n },\n \"comments\": {\n \"methods\": {\n \"insert\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/comments\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"Comment\"\n - \ },\n \"id\": \"youtube.comments.insert\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"Comment\"\n - \ }\n },\n \"update\": {\n \"description\": - \"Updates an existing resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"path\": - \"youtube/v3/comments\",\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.comments.update\",\n \"httpMethod\": - \"PUT\",\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true\n }\n - \ },\n \"request\": {\n \"$ref\": \"Comment\"\n - \ }\n },\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Deletes a resource.\"\n },\n - \ \"list\": {\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/comments\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"type\": - \"integer\",\n \"maximum\": \"100\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"default\": \"20\",\n \"minimum\": \"1\",\n \"format\": - \"uint32\"\n },\n \"parentId\": {\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"textFormat\": - {\n \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"default\": - \"html\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"The requested text format for - the returned comments.\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"Returns the comments with the given - IDs for One Platform.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more comment - resource properties that the API response will include.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.list\"\n },\n \"markAsSpam\": - {\n \"parameters\": {\n \"id\": {\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"id\": \"youtube.comments.markAsSpam\",\n \"httpMethod\": - \"POST\"\n },\n \"setModerationStatus\": {\n \"id\": - \"youtube.comments.setModerationStatus\",\n \"parameterOrder\": [\n - \ \"id\",\n \"moderationStatus\"\n ],\n \"path\": - \"youtube/v3/comments/setModerationStatus\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\",\n \"parameters\": {\n - \ \"moderationStatus\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Specifies - the requested moderation status. Note, comments can be in statuses, which - are not available through this call. For example, this call does not allow - to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"required\": - true\n },\n \"id\": {\n \"repeated\": true,\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\",\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"banAuthor\": - {\n \"type\": \"boolean\",\n \"default\": \"false\",\n - \ \"location\": \"query\",\n \"description\": \"If - set to true the author of the comment gets added to the ban list. This means - all future comments of the author will autmomatically be rejected. Only valid - in combination with STATUS_REJECTED.\"\n }\n },\n \"description\": - \"Sets the moderation status of one or more comments.\"\n }\n }\n - \ },\n \"abuseReports\": {\n \"methods\": {\n \"insert\": - {\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.abuseReports.insert\",\n \"request\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"response\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"flatPath\": - \"youtube/v3/abuseReports\",\n \"description\": \"Inserts a new resource - into this collection.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/abuseReports\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"update\": {\n \"description\": \"Updates an existing - resource.\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.update\",\n \"httpMethod\": \"PUT\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\"\n },\n - \ \"linkingToken\": {\n \"description\": \"Get a third - party link with the given linking token.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"type\": - {\n \"location\": \"query\",\n \"description\": - \"Get a third party link of the given type.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"enum\": [\n - \ \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ]\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API response will include. Supported - values are linkingToken, status, and snippet.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.thirdPartyLinks.list\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ }\n },\n \"delete\": {\n \"parameters\": - {\n \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"Do not use. Required for compatibility.\",\n - \ \"type\": \"string\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"location\": - \"query\",\n \"description\": \"Type of the link to be deleted.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ]\n },\n \"linkingToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"required\": - true\n }\n },\n \"description\": \"Deletes a - resource.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"id\": - \"youtube.thirdPartyLinks.delete\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"DELETE\"\n },\n \"insert\": {\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\",\n \"repeated\": true\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n }\n },\n \"httpMethod\": - \"POST\"\n }\n }\n }\n },\n \"id\": \"youtube:v3\",\n \"ownerName\": - \"Google\",\n \"canonicalName\": \"YouTube\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"version\": \"v3\",\n \"parameters\": {\n \"alt\": {\n \"default\": - \"json\",\n \"type\": \"string\",\n \"description\": \"Data format - for response.\",\n \"enumDescriptions\": [\n \"Responses with - Content-Type of application/json\",\n \"Media download with context-dependent - Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n - \ ],\n \"location\": \"query\",\n \"enum\": [\n \"json\",\n - \ \"media\",\n \"proto\"\n ]\n },\n \"fields\": {\n - \ \"description\": \"Selector specifying which fields to include in a - partial response.\",\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"access_token\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"OAuth access token.\"\n },\n \"prettyPrint\": - {\n \"location\": \"query\",\n \"default\": \"true\",\n \"description\": - \"Returns response with indentations and line breaks.\",\n \"type\": - \"boolean\"\n },\n \"$.xgafv\": {\n \"type\": \"string\",\n \"description\": - \"V1 error format.\",\n \"enumDescriptions\": [\n \"v1 error format\",\n + that the API response will include. The part properties that you can include + in the parameter value are id, snippet, contentDetails, and status.\",\n \"required\": + true,\n \"location\": \"query\",\n \"repeated\": + true\n }\n },\n \"request\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"id\": \"youtube.liveBroadcasts.insert\",\n + \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts + a new stream for the authenticated user.\"\n }\n }\n }\n },\n + \ \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"parameters\": {\n + \ \"$.xgafv\": {\n \"enumDescriptions\": [\n \"v1 error format\",\n \ \"v2 error format\"\n ],\n \"location\": \"query\",\n \"enum\": - [\n \"1\",\n \"2\"\n ]\n },\n \"oauth_token\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"OAuth 2.0 token for the current user.\"\n },\n \"callback\": {\n \"type\": - \"string\",\n \"description\": \"JSONP\",\n \"location\": \"query\"\n + [\n \"1\",\n \"2\"\n ],\n \"description\": \"V1 error + format.\",\n \"type\": \"string\"\n },\n \"quotaUser\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"access_token\": {\n \"description\": \"OAuth access token.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"alt\": + {\n \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n + \ ],\n \"enumDescriptions\": [\n \"Responses with Content-Type + of application/json\",\n \"Media download with context-dependent Content-Type\",\n + \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n + \ \"default\": \"json\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"Data format for response.\"\n },\n + \ \"callback\": {\n \"type\": \"string\",\n \"description\": \"JSONP\",\n + \ \"location\": \"query\"\n },\n \"key\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"uploadType\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": + \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n + \ },\n \"prettyPrint\": {\n \"location\": \"query\",\n \"type\": + \"boolean\",\n \"default\": \"true\",\n \"description\": \"Returns + response with indentations and line breaks.\"\n },\n \"fields\": {\n + \ \"location\": \"query\",\n \"type\": \"string\",\n \"description\": + \"Selector specifying which fields to include in a partial response.\"\n },\n + \ \"oauth_token\": {\n \"type\": \"string\",\n \"description\": + \"OAuth 2.0 token for the current user.\",\n \"location\": \"query\"\n \ },\n \"upload_protocol\": {\n \"type\": \"string\",\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"location\": - \"query\"\n },\n \"key\": {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"quotaUser\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"uploadType\": {\n \"description\": \"Legacy - upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"protocol\": \"rest\",\n \"revision\": \"20230131\",\n \"kind\": \"discovery#restDescription\",\n - \ \"discoveryVersion\": \"v1\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"ownerDomain\": \"google.com\",\n \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"batchPath\": \"batch\",\n \"schemas\": {\n \"ActivitySnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - an activity, including title, description, thumbnails, activity type and group. - Next ID: 12\",\n \"properties\": {\n \"title\": {\n \"description\": - \"The title of the resource primarily associated with the activity.\",\n \"type\": + \"query\"\n }\n },\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n + \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n + \ },\n \"servicePath\": \"\",\n \"protocol\": \"rest\",\n \"revision\": + \"20230307\",\n \"discoveryVersion\": \"v1\",\n \"id\": \"youtube:v3\",\n + \ \"kind\": \"discovery#restDescription\",\n \"schemas\": {\n \"LiveChatMessageRetractedDetails\": + {\n \"properties\": {\n \"retractedMessageId\": {\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\",\n + \ \"type\": \"object\"\n },\n \"PropertyValue\": {\n \"id\": + \"PropertyValue\",\n \"properties\": {\n \"property\": {\n \"description\": + \"A property.\",\n \"type\": \"string\"\n },\n \"value\": + {\n \"description\": \"The property's value.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"A pair Property + / Value.\",\n \"type\": \"object\"\n },\n \"MembershipsLevel\": + {\n \"description\": \"A *membershipsLevel* resource represents an offer + made by YouTube creators for their fans. Users can become members of the channel + by joining one of the available levels. They will provide recurring monetary + support and receives special benefits.\",\n \"id\": \"MembershipsLevel\",\n + \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"default\": + \"youtube#membershipsLevel\"\n },\n \"snippet\": {\n \"$ref\": + \"MembershipsLevelSnippet\",\n \"description\": \"The snippet object + contains basic details about the level.\"\n },\n \"id\": {\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the memberships level.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ThumbnailDetails\": + {\n \"description\": \"Internal representation of thumbnails for a YouTube + resource.\",\n \"id\": \"ThumbnailDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"maxres\": {\n \"description\": + \"The maximum resolution quality image for this resource.\",\n \"$ref\": + \"Thumbnail\"\n },\n \"high\": {\n \"$ref\": \"Thumbnail\",\n + \ \"description\": \"The high quality image for this resource.\"\n + \ },\n \"standard\": {\n \"description\": \"The standard + quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n + \ \"medium\": {\n \"description\": \"The medium quality image + for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"default\": + {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The default + image for this resource.\"\n }\n }\n },\n \"ChannelSection\": + {\n \"properties\": {\n \"contentDetails\": {\n \"description\": + \"The contentDetails object contains details about the channel section content, + such as a list of playlists or channels featured in the section.\",\n \"$ref\": + \"ChannelSectionContentDetails\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel section.\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": + \"ChannelSectionSnippet\",\n \"description\": \"The snippet object + contains basic details about the channel section, such as its type, style + and title.\"\n },\n \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n + \ \"description\": \"The targeting object contains basic targeting + settings about the channel section.\"\n },\n \"kind\": {\n \"default\": + \"youtube#channelSection\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n + \ },\n \"localizations\": {\n \"type\": \"object\",\n + \ \"additionalProperties\": {\n \"$ref\": \"ChannelSectionLocalization\"\n + \ },\n \"description\": \"Localizations for different languages\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"ChannelSection\"\n },\n \"VideoSnippet\": + {\n \"description\": \"Basic details about a video, including title, + description, uploader, thumbnails and category.\",\n \"type\": \"object\",\n + \ \"id\": \"VideoSnippet\",\n \"properties\": {\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel that the video belongs to.\"\n },\n \"tags\": + {\n \"description\": \"A list of keyword tags associated with the + video. Tags may contain spaces.\",\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"localized\": + {\n \"$ref\": \"VideoLocalization\",\n \"description\": + \"Localized snippet selected with the hl parameter. If no such localization + exists, this field is populated with the default snippet. (Read-only)\"\n + \ },\n \"title\": {\n \"description\": \"The video's + title. @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the video was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"groupId\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel responsible for this activity\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel associated with the activity.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"enum\": [\n \"typeUnspecified\",\n + \"The date and time when the video was uploaded.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"categoryId\": + {\n \"description\": \"The YouTube video category associated with + the video.\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"description\": \"The video's description. @mutable youtube.videos.insert + youtube.videos.update\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": + {\n \"description\": \"The language of the videos's default snippet.\",\n + \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images + associated with the video. 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.\"\n },\n \"liveBroadcastContent\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"The live + broadcast is upcoming.\",\n \"The live broadcast is active.\",\n + \ \"The live broadcast has been completed.\"\n ],\n \"description\": + \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" + if the video is not an upcoming/active live broadcast.\",\n \"type\": + \"string\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ]\n },\n + \ \"defaultAudioLanguage\": {\n \"description\": \"The default_audio_language + property specifies the language spoken in the video's default audio track.\",\n + \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that the video + was uploaded to.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"LiveStreamConfigurationIssue\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveStreamConfigurationIssue\",\n \"properties\": {\n + \ \"reason\": {\n \"description\": \"The short-form reason + for this issue.\",\n \"type\": \"string\"\n },\n \"severity\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"How severe this + issue is to the stream.\",\n \"type\": \"string\",\n \"enum\": + [\n \"info\",\n \"warning\",\n \"error\"\n + \ ]\n },\n \"type\": {\n \"enum\": [\n \"gopSizeOver\",\n + \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n + \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n + \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n + \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n + \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n + \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n + \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n + \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n + \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n + \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n + \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n + \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n + \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n + \ ],\n \"description\": \"The kind of error happening.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"description\": {\n \"description\": + \"The long-form description of the issue and how to resolve it.\",\n \"type\": + \"string\"\n }\n }\n },\n \"ActivityListResponse\": {\n + \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#activityListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Activity\"\n }\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ActivityListResponse\"\n },\n \"Entity\": {\n \"type\": + \"object\",\n \"id\": \"Entity\",\n \"properties\": {\n \"url\": + {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": + \"string\"\n },\n \"typeId\": {\n \"type\": \"string\"\n + \ }\n }\n },\n \"LanguageTag\": {\n \"id\": \"LanguageTag\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"value\": {\n + \ \"type\": \"string\"\n }\n }\n },\n \"ActivitySnippet\": + {\n \"type\": \"object\",\n \"id\": \"ActivitySnippet\",\n \"description\": + \"Basic details about an activity, including title, description, thumbnails, + activity type and group. Next ID: 12\",\n \"properties\": {\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the channel associated with the activity.\",\n \"type\": \"string\"\n + \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"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.\"\n },\n \"channelTitle\": + {\n \"description\": \"Channel title for the channel responsible + for this activity\",\n \"type\": \"string\"\n },\n \"publishedAt\": + {\n \"description\": \"The date and time that the video was uploaded.\",\n + \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n + \ \"groupId\": {\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The description of the resource primarily associated + with the activity. @mutable youtube.activities.insert\"\n },\n \"type\": + {\n \"type\": \"string\",\n \"enum\": [\n \"typeUnspecified\",\n \ \"upload\",\n \"like\",\n \"favorite\",\n \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n \ \"recommendation\",\n \"bulletin\",\n \"social\",\n \ \"channelItem\",\n \"promotedItem\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The type of - activity that the resource describes.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"description\": \"The type of activity that the resource describes.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the resource primarily associated - with the activity. @mutable youtube.activities.insert\"\n },\n \"thumbnails\": + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The title + of the resource primarily associated with the activity.\"\n }\n }\n + \ },\n \"ChannelStatistics\": {\n \"description\": \"Statistics + about a channel: number of subscribers, number of videos in the channel, etc.\",\n + \ \"id\": \"ChannelStatistics\",\n \"type\": \"object\",\n \"properties\": + {\n \"subscriberCount\": {\n \"type\": \"string\",\n \"description\": + \"The number of subscribers that the channel has.\",\n \"format\": + \"uint64\"\n },\n \"commentCount\": {\n \"format\": + \"uint64\",\n \"description\": \"The number of comments for the channel.\",\n + \ \"type\": \"string\"\n },\n \"viewCount\": {\n \"format\": + \"uint64\",\n \"description\": \"The number of times the channel + has been viewed.\",\n \"type\": \"string\"\n },\n \"videoCount\": + {\n \"type\": \"string\",\n \"description\": \"The number + of videos uploaded to the channel.\",\n \"format\": \"uint64\"\n + \ },\n \"hiddenSubscriberCount\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether or not the number of subscribers is shown + for this user.\"\n }\n }\n },\n \"I18nRegionSnippet\": {\n + \ \"id\": \"I18nRegionSnippet\",\n \"properties\": {\n \"name\": + {\n \"description\": \"The human-readable name of the region.\",\n + \ \"type\": \"string\"\n },\n \"gl\": {\n \"description\": + \"The region code as a 2-letter ISO country code.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"Basic details about an i18n region, such as region code and human-readable + name.\"\n },\n \"MembershipsDurationAtLevel\": {\n \"id\": \"MembershipsDurationAtLevel\",\n + \ \"properties\": {\n \"memberSince\": {\n \"description\": + \"The date and time when the user became a continuous member for the given + level.\",\n \"type\": \"string\"\n },\n \"level\": + {\n \"description\": \"Pricing level ID.\",\n \"type\": + \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"description\": + \"The cumulative time the user has been a member for the given level in complete + months (the time is rounded down to the nearest integer).\",\n \"type\": + \"integer\",\n \"format\": \"int32\"\n }\n },\n \"type\": + \"object\"\n },\n \"LiveStreamContentDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveStreamContentDetails\",\n \"properties\": {\n \"closedCaptionsIngestionUrl\": + {\n \"description\": \"The ingestion URL where the closed captions + of this stream are sent.\",\n \"type\": \"string\"\n },\n + \ \"isReusable\": {\n \"type\": \"boolean\",\n \"description\": + \"Indicates whether the stream is reusable, which means that it can be bound + to multiple broadcasts. It is common for broadcasters to reuse the same stream + for many different broadcasts if those broadcasts occur at different times. + If you set this value to false, then the stream will not be reusable, which + means that it can only be bound to one broadcast. Non-reusable streams differ + from reusable streams in the following ways: - A non-reusable stream can only + be bound to one broadcast. - A non-reusable stream might be deleted by an + automated process after the broadcast ends. - The liveStreams.list method + does not list non-reusable streams if you call the method and set the mine + parameter to true. The only way to use that method to retrieve the resource + for a non-reusable stream is to use the id parameter to identify the stream. + \"\n }\n },\n \"description\": \"Detailed settings of a stream.\"\n + \ },\n \"LiveChatMessageAuthorDetails\": {\n \"id\": \"LiveChatMessageAuthorDetails\",\n + \ \"properties\": {\n \"isChatSponsor\": {\n \"description\": + \"Whether the author is a sponsor of the live chat.\",\n \"type\": + \"boolean\"\n },\n \"isChatModerator\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the author is a moderator + of the live chat.\"\n },\n \"channelUrl\": {\n \"description\": + \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"profileImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The channels's + avatar URL.\"\n },\n \"isChatOwner\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the author is the owner + of the live chat.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The YouTube channel ID.\"\n },\n + \ \"isVerified\": {\n \"description\": \"Whether the author's + identity has been verified by YouTube.\",\n \"type\": \"boolean\"\n + \ },\n \"displayName\": {\n \"description\": \"The channel's + display name.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\"\n },\n \"LiveBroadcastStatus\": {\n \"type\": \"object\",\n + \ \"description\": \"Live broadcast state.\",\n \"properties\": {\n + \ \"privacyStatus\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"description\": \"The broadcast's privacy status. Note that the + broadcast represents exactly one YouTube video, so the privacy settings are + identical to those supported for videos. In addition, you can set this field + by modifying the broadcast resource or by setting the privacyStatus field + of the corresponding video resource.\",\n \"type\": \"string\"\n + \ },\n \"madeForKids\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether the broadcast is made for kids or not, + decided by YouTube instead of the creator. This field is read only.\"\n },\n + \ \"lifeCycleStatus\": {\n \"enumDescriptions\": [\n \"No + value or the value is unknown.\",\n \"Incomplete settings, but + otherwise valid\",\n \"Complete settings\",\n \"Visible + only to partner, may need special UI treatment\",\n \"Viper is + recording; this means the \\\"clock\\\" is running\",\n \"The broadcast + is finished.\",\n \"This broadcast was removed by admin action\",\n + \ \"Transition into TESTING has been requested\",\n \"Transition + into LIVE has been requested\"\n ],\n \"description\": \"The + broadcast's status. The status can be updated using the API's liveBroadcasts.transition + method.\",\n \"type\": \"string\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n + \ \"created\",\n \"ready\",\n \"testing\",\n + \ \"live\",\n \"complete\",\n \"revoked\",\n + \ \"testStarting\",\n \"liveStarting\"\n ]\n + \ },\n \"recordingStatus\": {\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n + \ \"notRecording\",\n \"recording\",\n \"recorded\"\n + \ ],\n \"enumDescriptions\": [\n \"No value or + the value is unknown.\",\n \"The recording has not yet been started.\",\n + \ \"The recording is currently on.\",\n \"The recording + is completed, and cannot be started again.\"\n ],\n \"type\": + \"string\",\n \"description\": \"The broadcast's recording status.\"\n + \ },\n \"selfDeclaredMadeForKids\": {\n \"description\": + \"This field will be set to True if the creator declares the broadcast to + be kids only: go/live-cw-work.\",\n \"type\": \"boolean\"\n },\n + \ \"liveBroadcastPriority\": {\n \"description\": \"Priority + of the live broadcast event (internal state).\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n + \ \"low\",\n \"normal\",\n \"high\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Low priority + broadcast: for low view count HoAs or other low priority broadcasts.\",\n + \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n + \ \"High priority broadcast: for high profile HoAs, like PixelCorp + ones.\"\n ]\n }\n },\n \"id\": \"LiveBroadcastStatus\"\n + \ },\n \"InvideoBranding\": {\n \"description\": \"LINT.IfChange + Describes an invideo branding.\",\n \"properties\": {\n \"imageBytes\": + {\n \"type\": \"string\",\n \"description\": \"The bytes + the uploaded image. Only used in api to youtube communication.\",\n \"format\": + \"byte\"\n },\n \"timing\": {\n \"$ref\": \"InvideoTiming\",\n + \ \"description\": \"The temporal position within the video where + watermark will be displayed.\"\n },\n \"targetChannelId\": {\n + \ \"type\": \"string\",\n \"description\": \"The channel + to which this branding links. If not present it defaults to the current channel.\"\n + \ },\n \"position\": {\n \"description\": \"The spatial + position within the video where the branding watermark will be displayed.\",\n + \ \"$ref\": \"InvideoPosition\"\n },\n \"imageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The url of + the uploaded image. Only used in apiary to api communication.\"\n }\n + \ },\n \"id\": \"InvideoBranding\",\n \"type\": \"object\"\n + \ },\n \"VideoCategory\": {\n \"description\": \"A *videoCategory* + resource identifies a category that has been or could be associated with uploaded + videos.\",\n \"id\": \"VideoCategory\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#videoCategory\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": + \"VideoCategorySnippet\",\n \"description\": \"The snippet object + contains basic details about the video category, including its title.\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the video category.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"ActivityContentDetailsSocial\": {\n \"type\": + \"object\",\n \"description\": \"Details about a social network post.\",\n + \ \"properties\": {\n \"author\": {\n \"description\": + \"The author of the social network post.\",\n \"type\": \"string\"\n + \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object encapsulates information + that identifies the resource associated with a social network post.\"\n },\n + \ \"type\": {\n \"description\": \"The name of the social network.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n + \ \"twitter\"\n ],\n \"type\": \"string\"\n },\n + \ \"imageUrl\": {\n \"description\": \"An image of the post's + author.\",\n \"type\": \"string\"\n },\n \"referenceUrl\": + {\n \"description\": \"The URL of the social network post.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"ActivityContentDetailsSocial\"\n + \ },\n \"LiveBroadcastSnippet\": {\n \"id\": \"LiveBroadcastSnippet\",\n + \ \"type\": \"object\",\n \"description\": \"Basic broadcast information.\",\n + \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The broadcast's description. As with the title, + you can set this field by modifying the broadcast resource or by setting the + description field of the corresponding video resource.\"\n },\n \"isDefaultBroadcast\": + {\n \"description\": \"Indicates whether this broadcast is the default + broadcast. Internal only.\",\n \"type\": \"boolean\"\n },\n + \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the broadcast was added to YouTube's live broadcast + schedule.\",\n \"type\": \"string\"\n },\n \"thumbnails\": {\n \"description\": \"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.\",\n \"$ref\": - \"ThumbnailDetails\"\n }\n },\n \"id\": \"ActivitySnippet\"\n - \ },\n \"I18nRegion\": {\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"default\": \"youtube#i18nRegion\"\n }\n },\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n - \ \"type\": \"object\",\n \"id\": \"I18nRegion\"\n },\n \"VideoLiveStreamingDetails\": - {\n \"properties\": {\n \"scheduledStartTime\": {\n \"description\": - \"The time that the broadcast is scheduled to begin.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"activeLiveChatId\": - {\n \"description\": \"The ID of the currently active live chat attached - to this video. This field is filled only if the video is a currently live - broadcast that has live chat. Once the broadcast transitions to complete this - field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\",\n \"type\": \"string\"\n + the broadcast. For each nested object in this object, the key is the name + of the thumbnail image, and the value is an object that contains other information + about the thumbnail.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n + \ \"scheduledEndTime\": {\n \"type\": \"string\",\n \"description\": + \"The date and time that the broadcast is scheduled to end.\",\n \"format\": + \"date-time\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel that is publishing the broadcast.\"\n },\n \"actualEndTime\": + {\n \"format\": \"date-time\",\n \"description\": \"The + date and time that the broadcast actually ended. This information is only + available once the broadcast's state is complete.\",\n \"type\": + \"string\"\n },\n \"liveChatId\": {\n \"type\": \"string\",\n + \ \"description\": \"The id of the live chat for this broadcast.\"\n + \ },\n \"scheduledStartTime\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"type\": \"string\",\n \"description\": \"The date and + time that the broadcast is scheduled to start.\",\n \"format\": \"date-time\"\n \ },\n \"actualStartTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\",\n \"type\": - \"string\"\n },\n \"scheduledEndTime\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast is scheduled to end. If the value is empty or - the property is not present, then the broadcast is scheduled to contiue indefinitely.\"\n - \ },\n \"concurrentViewers\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\"\n },\n \"actualEndTime\": - {\n \"description\": \"The time that the broadcast actually ended. - This value will not be available until the broadcast is over.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Details about the live streaming metadata.\",\n \"type\": \"object\",\n - \ \"id\": \"VideoLiveStreamingDetails\"\n },\n \"VideoCategorySnippet\": - {\n \"id\": \"VideoCategorySnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The video category's title.\"\n - \ },\n \"assignable\": {\n \"type\": \"boolean\"\n },\n - \ \"channelId\": {\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n - \ \"type\": \"string\",\n \"description\": \"The YouTube - channel that created the video category.\"\n }\n }\n },\n \"ChannelTopicDetails\": - {\n \"description\": \"Freebase topic information related to the channel.\",\n - \ \"properties\": {\n \"topicIds\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\",\n \"type\": - \"array\"\n },\n \"topicCategories\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\",\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelTopicDetails\"\n },\n \"VideoListResponse\": {\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"default\": \"youtube#videoListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Video\"\n }\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoListResponse\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"id\": \"ActivityContentDetailsSocial\",\n \"properties\": - {\n \"author\": {\n \"type\": \"string\",\n \"description\": - \"The author of the social network post.\"\n },\n \"referenceUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL of - the social network post.\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"An image of the post's author.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n - \ \"facebook\",\n \"twitter\"\n ],\n \"description\": - \"The name of the social network.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Details about a social network post.\",\n - \ \"type\": \"object\"\n },\n \"CommentThread\": {\n \"id\": - \"CommentThread\",\n \"description\": \"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.\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the comment thread.\",\n \"type\": \"string\"\n - \ },\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n - \ \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#commentThread\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentThread\\\".\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ChannelSection\": {\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\",\n \"$ref\": \"ChannelSectionSnippet\"\n - \ },\n \"localizations\": {\n \"description\": \"Localizations - for different languages\",\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n }\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"targeting\": - {\n \"$ref\": \"ChannelSectionTargeting\",\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"default\": \"youtube#channelSection\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ChannelSection\",\n \"type\": \"object\"\n - \ },\n \"LiveBroadcast\": {\n \"id\": \"LiveBroadcast\",\n \"properties\": - {\n \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"The statistics object contains info about the - event's current stats. These include concurrent viewers and total chat count. - Statistics can change (in either direction) during the lifetime of an event. - Statistics are only returned while the event is live.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n \"default\": - \"youtube#liveBroadcast\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n - \ \"description\": \"The status object contains information about - the event's status.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the broadcast.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the event, including its title, description, - start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A *liveBroadcast* - resource represents an event that will be streamed, via live video, on YouTube.\"\n - \ },\n \"PlaylistContentDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"itemCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The number of videos in the playlist.\",\n \"type\": \"integer\"\n - \ }\n },\n \"id\": \"PlaylistContentDetails\"\n },\n \"SuperChatEventSnippet\": - {\n \"properties\": {\n \"isSuperStickerEvent\": {\n \"description\": - \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n - \ },\n \"superStickerMetadata\": {\n \"$ref\": \"SuperStickerMetadata\",\n - \ \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\"\n },\n \"amountMicros\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\"\n },\n \"commentText\": {\n \"type\": - \"string\",\n \"description\": \"The text contents of the comment - left by the user.\"\n },\n \"createdAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the event occurred.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel id - where the event occurred.\"\n },\n \"displayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the purchase amount and currency (e.g., \\\"$1.00\\\"). The string is rendered - for the given language.\"\n },\n \"supporterDetails\": {\n \"description\": - \"Details about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\",\n \"type\": \"string\"\n - \ },\n \"messageType\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The tier for the paid message, which is based - on the amount of money spent to purchase the message.\",\n \"type\": - \"integer\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"SuperChatEventSnippet\"\n },\n \"CaptionSnippet\": {\n \"id\": - \"CaptionSnippet\",\n \"properties\": {\n \"isAutoSynced\": {\n - \ \"type\": \"boolean\",\n \"description\": \"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.\"\n - \ },\n \"isDraft\": {\n \"type\": \"boolean\",\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n },\n \"failureReason\": {\n \"type\": - \"string\",\n \"description\": \"The reason that YouTube failed to - process the caption track. This property is only present if the state property's - value is failed.\",\n \"enum\": [\n \"unknownFormat\",\n - \ \"unsupportedFormat\",\n \"processingFailed\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"isCC\": {\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\",\n \"type\": \"boolean\"\n - \ },\n \"isLarge\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\"\n },\n \"trackKind\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The caption track's type.\",\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"type\": \"string\"\n },\n \"language\": - {\n \"description\": \"The language of the caption track. The property - value is a BCP-47 language tag.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"status\": {\n \"enum\": - [\n \"serving\",\n \"syncing\",\n \"failed\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The caption track's status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"isEasyReader\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify the video associated with the caption track. - @mutable youtube.captions.insert\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"name\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\"\n },\n \"lastUpdated\": - {\n \"description\": \"The date and time when the caption track was - last updated.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"audioTrackType\": {\n \"description\": \"The - type of audio track associated with the caption track.\",\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about a caption track, - such as its language and name.\"\n },\n \"CdnSettings\": {\n \"id\": - \"CdnSettings\",\n \"description\": \"Brief description of the live stream - cdn settings.\",\n \"properties\": {\n \"ingestionType\": {\n - \ \"description\": \" The method or protocol used to transmit the - video stream.\",\n \"enum\": [\n \"rtmp\",\n \"dash\",\n - \ \"webrtc\",\n \"hls\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"frameRate\": {\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"type\": - \"string\",\n \"description\": \"The frame rate of the inbound video - data.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"resolution\": {\n \"description\": - \"The resolution of the inbound video data.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"240p\",\n \"360p\",\n - \ \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\",\n - \ \"2160p\",\n \"variable\"\n ],\n \"type\": - \"string\"\n },\n \"format\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The format of the video stream that you are sending - to Youtube. \"\n },\n \"ingestionInfo\": {\n \"$ref\": - \"IngestionInfo\",\n \"description\": \"The ingestionInfo object - contains information that YouTube provides that you need to transmit your - RTMP or HTTP stream to YouTube.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"properties\": - {\n \"userComment\": {\n \"description\": \"The comment added - by the member to this Member Milestone Chat. This field is empty for messages - without a comment from the member.\",\n \"type\": \"string\"\n },\n - \ \"memberMonth\": {\n \"format\": \"uint32\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"type\": \"integer\"\n - \ },\n \"memberLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the Level at which the viever is - a member. The Level names are defined by the YouTube channel offering the - Membership. In some situations this field isn't filled.\"\n }\n }\n - \ },\n \"ThirdPartyLink\": {\n \"properties\": {\n \"status\": - {\n \"$ref\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The status object contains information about the status of the link.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"linkingToken\": {\n \"type\": - \"string\",\n \"description\": \"The linking_token identifies a YouTube - account and channel with which the third party account is linked.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#thirdPartyLink\",\n + \ \"description\": \"The date and time that the broadcast actually + started. This information is only available once the broadcast's state is + live.\",\n \"type\": \"string\"\n },\n \"title\": {\n + \ \"description\": \"The broadcast's title. Note that the broadcast + represents exactly one YouTube video. You can set this field by modifying + the broadcast resource or by setting the title field of the corresponding + video resource.\",\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n }\n + \ }\n }\n },\n \"ChannelSectionContentDetails\": {\n \"description\": + \"Details about a channelsection, including playlists and channels.\",\n \"id\": + \"ChannelSectionContentDetails\",\n \"properties\": {\n \"playlists\": + {\n \"type\": \"array\",\n \"description\": \"The playlist + ids for type single_playlist and multiple_playlists. For singlePlaylist, only + one playlistId is allowed.\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"channels\": {\n \"description\": + \"The channel ids for type multiple_channels.\",\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n }\n + \ },\n \"type\": \"object\"\n },\n \"VideoListResponse\": {\n + \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLink\\\".\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the third- party account link.\"\n }\n },\n \"id\": \"ThirdPartyLink\",\n - \ \"type\": \"object\",\n \"description\": \"A *third party account - link* resource represents a link between a YouTube account or a channel and - an account on a third-party service.\"\n },\n \"Video\": {\n \"type\": - \"object\",\n \"description\": \"A *video* resource represents a YouTube - video.\",\n \"id\": \"Video\",\n \"properties\": {\n \"ageGating\": - {\n \"$ref\": \"VideoAgeGating\",\n \"description\": \"Age - restriction details related to a video. This data can only be retrieved by - the video owner.\"\n },\n \"processingDetails\": {\n \"$ref\": - \"VideoProcessingDetails\",\n \"description\": \"The processingDetails - object encapsulates information about YouTube's progress in processing the - uploaded video file. The properties in the object identify the current processing - status and an estimate of the time remaining until YouTube finishes processing - the video. This part also indicates whether different types of data or content, - such as file details or thumbnail images, are available for the video. The - processingProgress object is designed to be polled so that the video uploaded - can track the progress that YouTube has made in processing the uploaded video - file. This data can only be retrieved by the video owner.\"\n },\n - \ \"projectDetails\": {\n \"$ref\": \"VideoProjectDetails\",\n - \ \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"player\": {\n \"description\": \"The player - object contains information that you would use to play the video in an embedded - player.\",\n \"$ref\": \"VideoPlayer\"\n },\n \"statistics\": - {\n \"$ref\": \"VideoStatistics\",\n \"description\": \"The - statistics object contains statistics about the video.\"\n },\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"suggestions\": - {\n \"$ref\": \"VideoSuggestions\",\n \"description\": \"The - suggestions object encapsulates suggestions that identify opportunities to - improve the video quality or the metadata for the uploaded video. This data - can only be retrieved by the video owner.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the video, such as its title, description, and category.\",\n \"$ref\": - \"VideoSnippet\"\n },\n \"fileDetails\": {\n \"$ref\": - \"VideoFileDetails\",\n \"description\": \"The fileDetails object - encapsulates information about the video file that was uploaded to YouTube, - including the file's resolution, duration, audio and video codecs, stream - bitrates, and more. This data can only be retrieved by the video owner.\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"VideoContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\"\n },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"description\": \"The localizations object contains localized versions - of the basic details about the video, such as its title and description.\",\n - \ \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ }\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"recordingDetails\": - {\n \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\",\n \"$ref\": - \"VideoRecordingDetails\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#video\\\".\",\n \"default\": - \"youtube#video\"\n },\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\"\n },\n \"monetizationDetails\": - {\n \"$ref\": \"VideoMonetizationDetails\",\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\"\n },\n \"status\": {\n \"$ref\": - \"VideoStatus\",\n \"description\": \"The status object contains - information about the video's uploading, processing, and privacy statuses.\"\n - \ }\n }\n },\n \"VideoStatus\": {\n \"description\": - \"Basic details about a video category, such as its localized title. Next - Id: 18\",\n \"id\": \"VideoStatus\",\n \"properties\": {\n \"publishAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the video is scheduled - to publish. It can be set only if the privacy status of the video is private..\"\n - \ },\n \"failureReason\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ],\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ],\n \"description\": \"This value explains - why a video failed to upload. This property is only present if the uploadStatus - property indicates that the upload failed.\"\n },\n \"license\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"type\": \"string\"\n - \ },\n \"uploadStatus\": {\n \"description\": \"The - status of the uploaded video.\",\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ],\n \"enumDescriptions\": [\n - \ \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"type\": - \"string\"\n },\n \"rejectionReason\": {\n \"enum\": - [\n \"copyright\",\n \"inappropriate\",\n \"duplicate\",\n - \ \"termsOfUse\",\n \"uploaderAccountSuspended\",\n \"length\",\n - \ \"claim\",\n \"uploaderAccountClosed\",\n \"trademark\",\n - \ \"legal\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\"\n - \ },\n \"publicStatsViewable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value indicates if the extended video statistics - on the watch page can be viewed by everyone. Note that the view count, likes, - etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"embeddable\": {\n \"description\": - \"This value indicates if the video can be embedded on another website. @mutable - youtube.videos.insert youtube.videos.update\",\n \"type\": \"boolean\"\n - \ },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The video's privacy status.\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"madeForKids\": {\n - \ \"type\": \"boolean\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"IngestionInfo\": {\n \"description\": \"Describes information - necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"id\": \"IngestionInfo\",\n - \ \"properties\": {\n \"rtmpsBackupIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of backupIngestionAddress in order - to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": - \"string\"\n },\n \"rtmpsIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\"\n },\n \"streamName\": {\n \"description\": - \"The stream name that YouTube assigns to the video stream.\",\n \"type\": - \"string\"\n },\n \"ingestionAddress\": {\n \"description\": - \"The primary ingestion URL that you should use to stream video to YouTube. - You must stream video to this URL. Depending on which application or tool - you use to encode your video stream, you may need to enter the stream URL - and stream name separately or you may need to concatenate them in the following - format: *STREAM_URL/STREAM_NAME* \",\n \"type\": \"string\"\n },\n - \ \"backupIngestionAddress\": {\n \"description\": \"The backup - ingestion URL that you should use to stream video to YouTube. You have the - option of simultaneously streaming the content that you are sending to the - ingestionAddress to this URL.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ChannelLocalization\": - {\n \"description\": \"Channel localization setting\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The localized strings - for channel's title.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel's description.\"\n }\n },\n \"id\": \"ChannelLocalization\",\n - \ \"type\": \"object\"\n },\n \"SubscriptionSnippet\": {\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"annotations\": - {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"description\": \"The id object contains - information about the channel that the user subscribed to.\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the subscription was created.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": {\n \"description\": - \"The subscription's details.\",\n \"type\": \"string\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel that the subscription belongs to.\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the subscriber's channel.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The subscription's title.\"\n }\n },\n - \ \"description\": \"Basic details about a subscription, including title, - description and thumbnails of the subscribed item.\",\n \"id\": \"SubscriptionSnippet\",\n - \ \"type\": \"object\"\n },\n \"SuperChatEventListResponse\": {\n - \ \"id\": \"SuperChatEventListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n + the fixed string \\\"youtube#videoListResponse\\\".\",\n \"default\": + \"youtube#videoListResponse\"\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n },\n \"items\": {\n + \ \"items\": {\n \"$ref\": \"Video\"\n },\n \"type\": + \"array\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of Super Chat purchases that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n },\n \"type\": - \"array\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"default\": - \"youtube#superChatEventListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n }\n - \ }\n },\n \"VideoSuggestionsTagSuggestion\": {\n \"properties\": - {\n \"categoryRestricts\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A set of video categories for which the tag is relevant. You can use this - information to display appropriate tag suggestions based on the video category - that the video uploader associates with the video. By default, tag suggestions - are relevant for all categories if there are no restricts defined for the - keyword.\"\n },\n \"tag\": {\n \"type\": \"string\",\n - \ \"description\": \"The keyword tag suggested for the video.\"\n - \ }\n },\n \"id\": \"VideoSuggestionsTagSuggestion\",\n \"description\": - \"A single tag suggestion with it's relevance information.\",\n \"type\": - \"object\"\n },\n \"Caption\": {\n \"id\": \"Caption\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#caption\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#caption\\\".\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the caption track.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n }\n },\n \"snippet\": {\n \"$ref\": - \"CaptionSnippet\",\n \"description\": \"The snippet object contains - basic details about the caption.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A *caption* - resource represents a YouTube caption track. A caption track is associated - with exactly one YouTube video.\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viewer is a member. This matches the - `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated - membership gifting message. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n },\n \"gifterChannelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID of the - user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ }\n }\n },\n \"Comment\": {\n \"description\": \"A - *comment* represents a single YouTube comment.\",\n \"id\": \"Comment\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#comment\\\".\",\n \"default\": \"youtube#comment\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelSnippet\": - {\n \"properties\": {\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the channel - was created.\",\n \"type\": \"string\"\n },\n \"country\": - {\n \"type\": \"string\",\n \"description\": \"The country - of the channel.\"\n },\n \"title\": {\n \"description\": - \"The channel's title.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\"\n },\n - \ \"localized\": {\n \"description\": \"Localized title and - description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"customUrl\": {\n \"type\": \"string\",\n \"description\": - \"The custom url of the channel.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel's default title and description.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the channel.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic details about a channel, including title, description and thumbnails.\",\n - \ \"id\": \"ChannelSnippet\"\n },\n \"PlaylistPlayer\": {\n \"id\": - \"PlaylistPlayer\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\"\n - \ }\n }\n },\n \"TokenPagination\": {\n \"type\": \"object\",\n - \ \"id\": \"TokenPagination\",\n \"properties\": {},\n \"description\": - \"Stub token pagination template to suppress results.\"\n },\n \"ActivityListResponse\": - {\n \"id\": \"ActivityListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Activity\"\n },\n \"type\": \"array\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#activityListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that + pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"nextPageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": + in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoListResponse\"\n + \ },\n \"ChannelContentDetails\": {\n \"description\": \"Details + about the content of a channel.\",\n \"properties\": {\n \"relatedPlaylists\": + {\n \"properties\": {\n \"uploads\": {\n \"description\": + \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use + the videos.insert method to upload new videos and the videos.delete method + to delete previously uploaded videos.\",\n \"type\": \"string\"\n + \ },\n \"favorites\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the playlist that contains the + channel\\\"s favorite videos. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\"\n },\n \"watchHistory\": + {\n \"type\": \"string\",\n \"description\": \"The + ID of the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert + and playlistItems.delete to add or remove items from that list.\"\n },\n + \ \"likes\": {\n \"description\": \"The ID of the playlist + that contains the channel\\\"s liked videos. Use the playlistItems.insert + and playlistItems.delete to add or remove items from that list.\",\n \"type\": + \"string\"\n },\n \"watchLater\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the playlist that + contains the channel\\\"s watch later playlist. Use the playlistItems.insert + and playlistItems.delete to add or remove items from that list.\"\n }\n + \ },\n \"type\": \"object\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"ChannelContentDetails\"\n },\n \"ChannelConversionPing\": + {\n \"type\": \"object\",\n \"id\": \"ChannelConversionPing\",\n + \ \"description\": \"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.\",\n \"properties\": {\n \"context\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"Defines the context of the ping.\",\n \"enum\": [\n \"subscribe\",\n + \ \"unsubscribe\",\n \"cview\"\n ]\n },\n + \ \"conversionUrl\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"I18nRegion\": {\n \"description\": \"A *i18nRegion* + resource identifies a region where YouTube is available.\",\n \"type\": + \"object\",\n \"properties\": {\n \"kind\": {\n \"default\": + \"youtube#i18nRegion\",\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the i18n region.\"\n },\n \"snippet\": {\n \"$ref\": + \"I18nRegionSnippet\",\n \"description\": \"The snippet object contains + basic details about the i18n region, such as region code and human-readable + name.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n }\n },\n + \ \"id\": \"I18nRegion\"\n },\n \"SearchListResponse\": {\n \"id\": + \"SearchListResponse\",\n \"properties\": {\n \"items\": {\n \"items\": + {\n \"$ref\": \"SearchResult\"\n },\n \"type\": + \"array\",\n \"description\": \"Pagination information for token + pagination.\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"TestItem\": {\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"gaia\": {\n \"format\": \"int64\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"TestItem\"\n },\n \"VideoRecordingDetails\": - {\n \"description\": \"Recording information associated with the video.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"locationDescription\": - {\n \"type\": \"string\",\n \"description\": \"The text - description of the location where the video was recorded.\"\n },\n - \ \"location\": {\n \"$ref\": \"GeoPoint\",\n \"description\": - \"The geolocation information associated with the video.\"\n },\n \"recordingDate\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the video was recorded.\",\n \"format\": \"date-time\"\n - \ }\n },\n \"id\": \"VideoRecordingDetails\"\n },\n \"LiveChatModerator\": - {\n \"description\": \"A *liveChatModerator* resource represents a moderator - for a YouTube live chat. A chat moderator has the ability to ban/unban users - from a chat, remove message, etc.\",\n \"id\": \"LiveChatModerator\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"default\": \"youtube#liveChatModerator\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\"\n }\n }\n },\n \"ThirdPartyLinkSnippet\": - {\n \"properties\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"description\": \"Type of the link named after the entities that - are being linked.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"type\": \"string\"\n - \ },\n \"channelToStoreLink\": {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n - \ \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic information about a third party - account link, including its type and type-specific information.\",\n \"id\": - \"ThirdPartyLinkSnippet\"\n },\n \"VideoSnippet\": {\n \"type\": - \"object\",\n \"description\": \"Basic details about a video, including - title, description, uploader, thumbnails and category.\",\n \"id\": \"VideoSnippet\",\n - \ \"properties\": {\n \"localized\": {\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\",\n - \ \"$ref\": \"VideoLocalization\"\n },\n \"defaultAudioLanguage\": - {\n \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the videos's default - snippet.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the video was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the video belongs to.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The video's - description. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"categoryId\": {\n \"description\": \"The YouTube video - category associated with the video.\",\n \"type\": \"string\"\n },\n - \ \"tags\": {\n \"type\": \"array\",\n \"description\": - \"A list of keyword tags associated with the video. Tags may contain spaces.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"title\": {\n \"description\": \"The video's title. @mutable - youtube.videos.insert youtube.videos.update\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"liveBroadcastContent\": {\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that the video - was uploaded to.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"VideoFileDetailsVideoStream\": {\n \"properties\": {\n - \ \"rotation\": {\n \"description\": \"The amount that YouTube - needs to rotate the original source content to properly display the video.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ]\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"widthPixels\": {\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\",\n \"type\": - \"integer\"\n },\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"description\": \"The video stream's bitrate, in bits - per second.\",\n \"type\": \"string\"\n },\n \"codec\": - {\n \"description\": \"The video codec that the stream uses.\",\n - \ \"type\": \"string\"\n },\n \"aspectRatio\": {\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\",\n \"type\": \"number\",\n - \ \"format\": \"double\"\n },\n \"heightPixels\": {\n - \ \"type\": \"integer\",\n \"description\": \"The encoded - video content's height in pixels.\",\n \"format\": \"uint32\"\n },\n - \ \"frameRateFps\": {\n \"description\": \"The video stream's - frame rate, in frames per second.\",\n \"format\": \"double\",\n - \ \"type\": \"number\"\n }\n },\n \"id\": \"VideoFileDetailsVideoStream\",\n - \ \"description\": \"Information about a video stream.\",\n \"type\": - \"object\"\n },\n \"VideoStatistics\": {\n \"type\": \"object\",\n - \ \"description\": \"Statistics about the video, such as the number of - times the video was viewed or liked.\",\n \"id\": \"VideoStatistics\",\n - \ \"properties\": {\n \"dislikeCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of users who have indicated - that they disliked the video by giving it a negative rating.\",\n \"type\": - \"string\"\n },\n \"likeCount\": {\n \"description\": - \"The number of users who have indicated that they liked the video by giving - it a positive rating.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"viewCount\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of times the video has been viewed.\"\n },\n \"commentCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of comments for the video.\"\n },\n \"favoriteCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\"\n - \ }\n }\n },\n \"LiveStreamListResponse\": {\n \"id\": - \"LiveStreamListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#liveStreamListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"description\": - \"A list of live streams that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveStream\"\n },\n \"type\": - \"array\"\n }\n }\n },\n \"InvideoTiming\": {\n \"properties\": - {\n \"durationMs\": {\n \"description\": \"Defines the duration - in milliseconds for which the promotion should be displayed. If missing, the - client should use the default.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"offsetMs\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"Defines the - time at which the promotion will appear. Depending on the value of type the - value of the offsetMs field will represent a time offset from the start or - from the end of the video, expressed in milliseconds.\"\n },\n \"type\": - {\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"description\": \"Describes a timing type. If the - value is offsetFromStart, then the offsetMs field represents an offset from - the start of the video. If the value is offsetFromEnd, then the offsetMs field - represents an offset from the end of the video.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"InvideoTiming\",\n - \ \"description\": \"Describes a temporal position of a visual widget - inside a video.\"\n },\n \"SuperStickerMetadata\": {\n \"id\": - \"SuperStickerMetadata\",\n \"type\": \"object\",\n \"properties\": - {\n \"altTextLanguage\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the localization language in which the alt text is returned.\"\n - \ },\n \"altText\": {\n \"description\": \"Internationalized - alt text that describes the sticker image and any animation associated with - it.\",\n \"type\": \"string\"\n },\n \"stickerId\": - {\n \"description\": \"Unique identifier of the Super Sticker. This - is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"VideoFileDetailsAudioStream\": {\n \"id\": \"VideoFileDetailsAudioStream\",\n - \ \"type\": \"object\",\n \"description\": \"Information about an - audio stream.\",\n \"properties\": {\n \"vendor\": {\n \"type\": - \"string\",\n \"description\": \"A value that uniquely identifies - a video vendor. Typically, the value is a four-letter vendor code.\"\n },\n - \ \"channelCount\": {\n \"type\": \"integer\",\n \"description\": - \"The number of audio channels that the stream contains.\",\n \"format\": - \"uint32\"\n },\n \"codec\": {\n \"description\": \"The - audio codec that the stream uses.\",\n \"type\": \"string\"\n },\n - \ \"bitrateBps\": {\n \"type\": \"string\",\n \"description\": - \"The audio stream's bitrate, in bits per second.\",\n \"format\": - \"uint64\"\n }\n }\n },\n \"ChannelStatus\": {\n \"properties\": - {\n \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"isLinked\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"longUploadsStatus\": {\n \"description\": \"The - long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ]\n },\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"description\": \"Privacy status of the channel.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"id\": \"ChannelStatus\",\n \"description\": - \"JSON template for the status part of a channel.\",\n \"type\": \"object\"\n - \ },\n \"VideoPlayer\": {\n \"id\": \"VideoPlayer\",\n \"properties\": - {\n \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\",\n \"type\": - \"string\"\n },\n \"embedHeight\": {\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n },\n \"embedWidth\": {\n \"format\": - \"int64\",\n \"type\": \"string\",\n \"description\": \"The - embed width\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Player to be used for a video playback.\"\n },\n \"MemberListResponse\": - {\n \"properties\": {\n \"nextPageToken\": {\n \"description\": + \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n + \ \"default\": \"youtube#searchListResponse\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"regionCode\": + {\n \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n + \ \"description\": \"General pagination information.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"SuperChatEvent\": {\n + \ \"id\": \"SuperChatEvent\",\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n \"type\": + \"string\",\n \"default\": \"youtube#superChatEvent\"\n },\n + \ \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n \"description\": + \"The `snippet` object contains basic details about the Super Chat event.\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube assigns to uniquely identify the Super Chat event.\"\n }\n + \ },\n \"description\": \"A `__superChatEvent__` resource represents + a Super Chat purchase on a YouTube channel.\",\n \"type\": \"object\"\n + \ },\n \"SuperChatEventListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"SuperChatEventListResponse\",\n \"properties\": {\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#superChatEventListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"SuperChatEvent\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of Super Chat purchases that match the request criteria.\"\n },\n \ \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced this response.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"LiveStreamStatus\": {\n \"id\": \"LiveStreamStatus\",\n + \ \"properties\": {\n \"healthStatus\": {\n \"description\": + \"The health status of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n + \ },\n \"streamStatus\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"created\",\n + \ \"ready\",\n \"active\",\n \"inactive\",\n + \ \"error\"\n ],\n \"type\": \"string\"\n }\n + \ },\n \"description\": \"Brief description of the live stream status.\",\n + \ \"type\": \"object\"\n },\n \"PlaylistItemSnippet\": {\n \"type\": + \"object\",\n \"properties\": {\n \"description\": {\n \"description\": + \"The item's description.\",\n \"type\": \"string\"\n },\n + \ \"position\": {\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"description\": \"The order in which the item appears + in the playlist. The value uses a zero-based index, so the first item has + a position of 0, the second item has a position of 1, and so forth.\"\n },\n + \ \"playlistId\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist + item is in.\"\n },\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images + associated with the playlist item. 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.\"\n },\n \"videoOwnerChannelId\": + {\n \"type\": \"string\",\n \"description\": \"Channel id + for the channel this video belongs to.\"\n },\n \"title\": {\n + \ \"description\": \"The item's title.\",\n \"type\": \"string\"\n + \ },\n \"resourceId\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n + \ ]\n },\n \"$ref\": \"ResourceId\",\n \"description\": + \"The id object contains information that can be used to uniquely identify + the resource that is included in the playlist as the playlist item.\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the user that added the item + to the playlist.\"\n },\n \"videoOwnerChannelTitle\": {\n \"type\": + \"string\",\n \"description\": \"Channel title for the channel this + video belongs to.\"\n },\n \"channelTitle\": {\n \"description\": + \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the item was added to + the playlist.\",\n \"format\": \"date-time\"\n }\n },\n + \ \"id\": \"PlaylistItemSnippet\",\n \"description\": \"Basic details + about a playlist, including title, description and thumbnails. Basic details + of a YouTube Playlist item provided by the author. Next ID: 15\"\n },\n + \ \"VideoFileDetails\": {\n \"description\": \"Describes original video + file properties, including technical details about audio and video streams, + but also metadata information like content length, digitization time, or geotagging + information.\",\n \"type\": \"object\",\n \"id\": \"VideoFileDetails\",\n + \ \"properties\": {\n \"bitrateBps\": {\n \"description\": + \"The uploaded video file's combined (video and audio) bitrate in bits per + second.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n + \ },\n \"fileType\": {\n \"enumDescriptions\": [\n \"Known + video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an + MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive + file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., + MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n + \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n + \ \"archive\",\n \"document\",\n \"project\",\n + \ \"other\"\n ],\n \"description\": \"The uploaded + file's type as detected by YouTube's video processing engine. Currently, YouTube + only processes video files, but this field is present whether a video file + or another type of file was uploaded.\",\n \"type\": \"string\"\n + \ },\n \"fileName\": {\n \"description\": \"The uploaded + file's name. This field is present whether a video file or another type of + file was uploaded.\",\n \"type\": \"string\"\n },\n \"durationMs\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The length of the uploaded video in milliseconds.\"\n },\n \"creationTime\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the uploaded video file was created. The value is specified + in ISO 8601 format. Currently, the following ISO 8601 formats are supported: + - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: + YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"fileSize\": {\n \"format\": + \"uint64\",\n \"description\": \"The uploaded file's size in bytes. + This field is present whether a video file or another type of file was uploaded.\",\n + \ \"type\": \"string\"\n },\n \"container\": {\n \"type\": + \"string\",\n \"description\": \"The uploaded video file's container + format.\"\n },\n \"audioStreams\": {\n \"items\": {\n + \ \"$ref\": \"VideoFileDetailsAudioStream\"\n },\n \"description\": + \"A list of audio streams contained in the uploaded video file. Each item + in the list contains detailed metadata about an audio stream.\",\n \"type\": + \"array\"\n },\n \"videoStreams\": {\n \"type\": \"array\",\n + \ \"description\": \"A list of video streams contained in the uploaded + video file. Each item in the list contains detailed metadata about a video + stream.\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n + \ }\n }\n }\n },\n \"MemberListResponse\": {\n \"type\": + \"object\",\n \"properties\": {\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#memberListResponse\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Member\"\n },\n \"description\": \"A list of members that - match the request criteria.\",\n \"type\": \"array\"\n },\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"Member\"\n },\n \"description\": + \"A list of members that match the request criteria.\",\n \"type\": + \"array\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#memberListResponse\"\n \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n }\n - \ },\n \"id\": \"MemberListResponse\",\n \"type\": \"object\"\n - \ },\n \"LiveBroadcastStatus\": {\n \"description\": \"Live broadcast - state.\",\n \"type\": \"object\",\n \"properties\": {\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - privacy status. Note that the broadcast represents exactly one YouTube video, - so the privacy settings are identical to those supported for videos. In addition, - you can set this field by modifying the broadcast resource or by setting the - privacyStatus field of the corresponding video resource.\",\n \"enum\": + \ },\n \"id\": \"MemberListResponse\"\n },\n \"ThirdPartyLinkSnippet\": + {\n \"type\": \"object\",\n \"properties\": {\n \"type\": + {\n \"enumDescriptions\": [\n \"\",\n \"A link + that is connecting (or about to connect) a channel with a store on a merchandising + platform in order to enable retail commerce capabilities for that channel + on YouTube.\"\n ],\n \"type\": \"string\",\n \"description\": + \"Type of the link named after the entities that are being linked.\",\n \"enum\": + [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ]\n },\n \"channelToStoreLink\": {\n \"$ref\": + \"ChannelToStoreLinkDetails\",\n \"description\": \"Information specific + to a link between a channel and a store on a merchandising platform.\"\n }\n + \ },\n \"description\": \"Basic information about a third party account + link, including its type and type-specific information.\",\n \"id\": + \"ThirdPartyLinkSnippet\"\n },\n \"TestItemTestItemSnippet\": {\n \"id\": + \"TestItemTestItemSnippet\",\n \"properties\": {},\n \"type\": \"object\"\n + \ },\n \"CommentSnippetAuthorChannelId\": {\n \"id\": \"CommentSnippetAuthorChannelId\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"value\": {\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"The id of the author's YouTube channel, if any.\"\n },\n \"ChannelProfileDetails\": + {\n \"id\": \"ChannelProfileDetails\",\n \"properties\": {\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The YouTube + channel ID.\"\n },\n \"displayName\": {\n \"type\": + \"string\",\n \"description\": \"The channel's display name.\"\n + \ },\n \"channelUrl\": {\n \"type\": \"string\",\n \"description\": + \"The channel's URL.\"\n },\n \"profileImageUrl\": {\n \"type\": + \"string\",\n \"description\": \"The channels's avatar URL.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"Channel\": {\n \"id\": + \"Channel\",\n \"properties\": {\n \"localizations\": {\n \"additionalProperties\": + {\n \"$ref\": \"ChannelLocalization\"\n },\n \"description\": + \"Localizations for different languages\",\n \"type\": \"object\"\n + \ },\n \"topicDetails\": {\n \"description\": \"The + topicDetails object encapsulates information about Freebase topics associated + with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n + \ \"status\": {\n \"$ref\": \"ChannelStatus\",\n \"description\": + \"The status object encapsulates information about the privacy status of the + channel.\"\n },\n \"conversionPings\": {\n \"description\": + \"The conversionPings object encapsulates information about conversion pings + that need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n + \ \"default\": \"youtube#channel\",\n \"type\": \"string\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object encapsulates information about the channel's content.\",\n + \ \"$ref\": \"ChannelContentDetails\"\n },\n \"brandingSettings\": + {\n \"description\": \"The brandingSettings object encapsulates information + about the branding of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n + \ },\n \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n + \ \"description\": \"The auditionDetails object encapsulates channel + data that is relevant for YouTube Partners during the audition process.\"\n + \ },\n \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n + \ \"description\": \"The statistics object encapsulates statistics + for the channel.\"\n },\n \"snippet\": {\n \"$ref\": + \"ChannelSnippet\",\n \"description\": \"The snippet object contains + basic details about the channel, such as its title, description, and thumbnail + images.\"\n },\n \"contentOwnerDetails\": {\n \"description\": + \"The contentOwnerDetails object encapsulates channel data that is relevant + for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the channel.\"\n }\n },\n \"type\": \"object\",\n + \ \"description\": \"A *channel* resource contains information about a + YouTube channel.\"\n },\n \"LiveChatMessage\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveChatMessage\",\n \"properties\": {\n \"authorDetails\": + {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n \"description\": + \"The authorDetails object contains basic details about the user that posted + this message.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the message.\",\n \"$ref\": + \"LiveChatMessageSnippet\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#liveChatMessage\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveChatMessage\\\".\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"description\": \"The + ID that YouTube assigns to uniquely identify the message.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"A *liveChatMessage* + resource represents a chat message in a YouTube Live Chat.\"\n },\n \"VideoProcessingDetailsProcessingProgress\": + {\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n \"type\": + \"object\",\n \"properties\": {\n \"partsTotal\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"An estimate of the total number of parts that need to be processed for the + video. The number may be updated with more precise estimates while YouTube + processes the video.\"\n },\n \"timeLeftMs\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"An + estimate of the amount of time, in millseconds, that YouTube needs to finish + processing the video.\"\n },\n \"partsProcessed\": {\n \"description\": + \"The number of parts of the video that YouTube has already processed. You + can estimate the percentage of the video that YouTube has already processed + by calculating: 100 * parts_processed / parts_total Note that since the estimated + number of parts could increase without a corresponding increase in the number + of parts that have already been processed, it is possible that the calculated + progress could periodically decrease while YouTube processes a video.\",\n + \ \"type\": \"string\",\n \"format\": \"uint64\"\n }\n + \ },\n \"description\": \"Video processing progress and completion + time estimate.\"\n },\n \"LiveChatTextMessageDetails\": {\n \"type\": + \"object\",\n \"id\": \"LiveChatTextMessageDetails\",\n \"properties\": + {\n \"messageText\": {\n \"type\": \"string\",\n \"description\": + \"The user's message.\"\n }\n }\n },\n \"VideoContentDetailsRegionRestriction\": + {\n \"description\": \"DEPRECATED Region restriction of the video.\",\n + \ \"id\": \"VideoContentDetailsRegionRestriction\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"allowed\": {\n \"items\": {\n + \ \"type\": \"string\"\n },\n \"description\": + \"A list of region codes that identify countries where the video is viewable. + If this property is present and a country is not listed in its value, then + the video is blocked from appearing in that country. If this property is present + and contains an empty list, the video is blocked in all countries.\",\n \"type\": + \"array\"\n },\n \"blocked\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of region codes that identify countries where the video is blocked. + If this property is present and a country is not listed in its value, then + the video is viewable in that country. If this property is present and contains + an empty list, the video is viewable in all countries.\"\n }\n }\n + \ },\n \"ChannelSectionSnippet\": {\n \"type\": \"object\",\n \"id\": + \"ChannelSectionSnippet\",\n \"properties\": {\n \"type\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n + \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n + \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n + \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n + \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n + \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The type of the channel section.\"\n },\n \"localized\": {\n + \ \"description\": \"Localized title, read-only.\",\n \"$ref\": + \"ChannelSectionLocalization\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that published + the channel section.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The language + of the channel section's default title and description.\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The channel + section's title for multiple_playlists and multiple_channels.\"\n },\n + \ \"position\": {\n \"format\": \"uint32\",\n \"type\": + \"integer\",\n \"description\": \"The position of the channel section + in the channel.\"\n },\n \"style\": {\n \"enum\": [\n + \ \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n + \ \"verticalList\"\n ],\n \"description\": \"The + style of the channel section.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n }\n + \ },\n \"description\": \"Basic details about a channel section, + including title, style and position.\"\n },\n \"ActivityContentDetailsChannelItem\": + {\n \"type\": \"object\",\n \"description\": \"Details about a resource + which was added to a channel.\",\n \"id\": \"ActivityContentDetailsChannelItem\",\n + \ \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + that was added to the channel.\",\n \"$ref\": \"ResourceId\"\n }\n + \ }\n },\n \"PlaylistItemContentDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"note\": {\n \"description\": \"A + user-generated note for this item.\",\n \"type\": \"string\"\n },\n + \ \"endAt\": {\n \"type\": \"string\",\n \"description\": + \"The time, measured in seconds from the start of the video, when the video + should stop playing. (The playlist owner can specify the times when the video + should start and stop playing when the video is played in the context of the + playlist.) By default, assume that the video.endTime is the end of the video.\"\n + \ },\n \"videoPublishedAt\": {\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time that the video was published + to YouTube.\",\n \"type\": \"string\"\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify a video. To retrieve the video resource, + set the id query parameter to this value in your API request.\"\n },\n + \ \"startAt\": {\n \"description\": \"The time, measured in + seconds from the start of the video, when the video should start playing. + (The playlist owner can specify the times when the video should start and + stop playing when the video is played in the context of the playlist.) The + default value is 0.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"PlaylistItemContentDetails\"\n },\n \"VideoAbuseReportReasonListResponse\": + {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The `visitorId` + identifies the visitor.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n + \ },\n \"items\": {\n \"description\": \"A list of valid + abuse reasons that are used with `video.ReportAbuse`.\",\n \"items\": + {\n \"$ref\": \"VideoAbuseReportReason\"\n },\n \"type\": + \"array\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"VideoAbuseReportReasonListResponse\",\n + \ \"type\": \"object\"\n },\n \"PlaylistStatus\": {\n \"properties\": + {\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The playlist's + privacy status.\"\n }\n },\n \"id\": \"PlaylistStatus\",\n + \ \"type\": \"object\"\n },\n \"AbuseReport\": {\n \"id\": + \"AbuseReport\",\n \"properties\": {\n \"relatedEntities\": {\n + \ \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n + \ \"type\": \"array\"\n },\n \"description\": {\n \"type\": + \"string\"\n },\n \"abuseTypes\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"AbuseType\"\n }\n + \ },\n \"subject\": {\n \"$ref\": \"Entity\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsFavorite\": + {\n \"id\": \"ActivityContentDetailsFavorite\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + that was marked as a favorite.\"\n }\n },\n \"type\": \"object\",\n + \ \"description\": \"Information about a video that was marked as a favorite + video.\"\n },\n \"MembershipsDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"membershipsDurationAtLevels\": {\n \"items\": + {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"description\": + \"Data about memberships duration on particular pricing levels.\",\n \"type\": + \"array\"\n },\n \"accessibleLevels\": {\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"Ids of all levels that the user has access to. + This includes the currently active level and all other levels that are included + because of a higher purchase.\"\n },\n \"highestAccessibleLevel\": + {\n \"description\": \"Id of the highest level that the user has + access to at the moment.\",\n \"type\": \"string\"\n },\n + \ \"highestAccessibleLevelDisplayName\": {\n \"description\": + \"Display name for the highest level that the user has access to at the moment.\",\n + \ \"type\": \"string\"\n },\n \"membershipsDuration\": + {\n \"description\": \"Data about memberships duration without taking + into consideration pricing levels.\",\n \"$ref\": \"MembershipsDuration\"\n + \ }\n },\n \"id\": \"MembershipsDetails\"\n },\n \"VideoAbuseReportSecondaryReason\": + {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"label\": {\n \"type\": \"string\",\n + \ \"description\": \"The localized label for this abuse report secondary + reason.\"\n },\n \"id\": {\n \"description\": \"The + ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"LiveChatGiftMembershipReceivedDetails\": + {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"properties\": + {\n \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": + \"The name of the Level at which the viewer is a member. This matches the + `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated + membership gifting message. The Level names are defined by the YouTube channel + offering the Membership. In some situations this field isn't filled.\"\n },\n + \ \"gifterChannelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the user that made the membership gifting purchase. This matches + the `snippet.authorChannelId` of the associated membership gifting message.\"\n + \ },\n \"associatedMembershipGiftingMessageId\": {\n \"description\": + \"The ID of the membership gifting message that is related to this gift membership. + This ID will always refer to a message whose type is 'membershipGiftingEvent'.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"VideoStatus\": {\n \"description\": \"Basic details about + a video category, such as its localized title. Next Id: 18\",\n \"type\": + \"object\",\n \"id\": \"VideoStatus\",\n \"properties\": {\n \"uploadStatus\": + {\n \"enumDescriptions\": [\n \"Video has been uploaded + but not processed yet.\",\n \"Video has been successfully processed.\",\n + \ \"Processing has failed. See FailureReason.\",\n \"Video + has been rejected. See RejectionReason.\",\n \"Video has been deleted.\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The status of the uploaded video.\",\n \"enum\": [\n \"uploaded\",\n + \ \"processed\",\n \"failed\",\n \"rejected\",\n + \ \"deleted\"\n ]\n },\n \"privacyStatus\": + {\n \"description\": \"The video's privacy status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"lifeCycleStatus\": - {\n \"enumDescriptions\": [\n \"No value or the value - is unknown.\",\n \"Incomplete settings, but otherwise valid\",\n - \ \"Complete settings\",\n \"Visible only to partner, - may need special UI treatment\",\n \"Viper is recording; this means - the \\\"clock\\\" is running\",\n \"The broadcast is finished.\",\n - \ \"This broadcast was removed by admin action\",\n \"Transition - into TESTING has been requested\",\n \"Transition into LIVE has - been requested\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\"\n },\n \"madeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the broadcast is made for kids or not, - decided by YouTube instead of the creator. This field is read only.\"\n },\n - \ \"liveBroadcastPriority\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"description\": - \"Priority of the live broadcast event (internal state).\",\n \"enum\": - [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\",\n \"type\": - \"boolean\"\n },\n \"recordingStatus\": {\n \"enum\": - [\n \"liveBroadcastRecordingStatusUnspecified\",\n \"notRecording\",\n - \ \"recording\",\n \"recorded\"\n ],\n \"description\": - \"The broadcast's recording status.\",\n \"enumDescriptions\": [\n - \ \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveBroadcastStatus\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"id\": \"ActivityContentDetailsSubscription\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that the user subscribed - to.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"description\": - \"Information about a channel that a user subscribed to.\",\n \"type\": - \"object\"\n },\n \"LiveStreamStatus\": {\n \"properties\": {\n - \ \"healthStatus\": {\n \"$ref\": \"LiveStreamHealthStatus\",\n - \ \"description\": \"The health status of the stream.\"\n },\n - \ \"streamStatus\": {\n \"enumDescriptions\": [\n \"\",\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"publishAt\": {\n \"description\": \"The date and time when + the video is scheduled to publish. It can be set only if the privacy status + of the video is private..\",\n \"type\": \"string\",\n \"format\": + \"date-time\"\n },\n \"madeForKids\": {\n \"type\": + \"boolean\"\n },\n \"rejectionReason\": {\n \"description\": + \"This value explains why YouTube rejected an uploaded video. This property + is only present if the uploadStatus property indicates that the upload was + rejected.\",\n \"enum\": [\n \"copyright\",\n \"inappropriate\",\n + \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n + \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n + \ \"trademark\",\n \"legal\"\n ],\n \"enumDescriptions\": + [\n \"Copyright infringement.\",\n \"Inappropriate video + content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms + of use violation.\",\n \"Uploader account was suspended.\",\n \"Video + duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader + closed his/her account.\",\n \"Trademark infringement.\",\n \"An + unspecified legal reason.\"\n ],\n \"type\": \"string\"\n + \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"embeddable\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This value indicates if the video can be embedded + on another website. @mutable youtube.videos.insert youtube.videos.update\"\n + \ },\n \"publicStatsViewable\": {\n \"description\": + \"This value indicates if the extended video statistics on the watch page + can be viewed by everyone. Note that the view count, likes, etc will still + be visible if this is disabled. @mutable youtube.videos.insert youtube.videos.update\",\n + \ \"type\": \"boolean\"\n },\n \"license\": {\n \"enum\": + [\n \"youtube\",\n \"creativeCommon\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n + \ \"description\": \"The video's license. @mutable youtube.videos.insert + youtube.videos.update\",\n \"type\": \"string\"\n },\n \"failureReason\": + {\n \"enum\": [\n \"conversion\",\n \"invalidFile\",\n + \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n + \ \"uploadAborted\"\n ],\n \"description\": \"This + value explains why a video failed to upload. This property is only present + if the uploadStatus property indicates that the upload failed.\",\n \"enumDescriptions\": + [\n \"Unable to convert video content.\",\n \"Invalid + file format.\",\n \"Empty file.\",\n \"File was too + small.\",\n \"Unsupported codec.\",\n \"Upload wasn't + finished.\"\n ],\n \"type\": \"string\"\n }\n }\n + \ },\n \"VideoAbuseReportReasonSnippet\": {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n + \ \"description\": \"Basic details about a video category, such as its + localized title.\",\n \"properties\": {\n \"label\": {\n \"type\": + \"string\",\n \"description\": \"The localized label belonging to + this abuse report reason.\"\n },\n \"secondaryReasons\": {\n + \ \"type\": \"array\",\n \"description\": \"The secondary + reasons associated with this reason, if any are available. (There might be + 0 or more.)\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n + \ }\n }\n },\n \"type\": \"object\"\n },\n \"Activity\": + {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#activity\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the activity, including the activity's + type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the activity.\"\n },\n \"contentDetails\": {\n \"description\": + \"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.\",\n \"$ref\": + \"ActivityContentDetails\"\n }\n },\n \"type\": \"object\",\n + \ \"description\": \"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.\",\n \"id\": \"Activity\"\n },\n + \ \"VideoProcessingDetails\": {\n \"properties\": {\n \"processingProgress\": + {\n \"description\": \"The processingProgress object contains information + about the progress YouTube has made in processing the video. The values are + really only relevant if the video's processing status is processing.\",\n + \ \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n },\n + \ \"processingFailureReason\": {\n \"enumDescriptions\": [\n \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"created\",\n \"ready\",\n - \ \"active\",\n \"inactive\",\n \"error\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"description\": - \"Brief description of the live stream status.\",\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamStatus\"\n },\n \"Playlist\": {\n \"type\": - \"object\",\n \"description\": \"A *playlist* resource represents a YouTube - playlist. A playlist is a collection of videos that can be viewed sequentially - and shared with other users. A playlist can contain up to 200 videos, and - YouTube does not limit the number of playlists that each user creates. By - default, playlists are publicly visible to other users, but playlists can - be public or private. YouTube also uses playlists to identify special collections - of videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods.\",\n \"properties\": - {\n \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\"\n },\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"PlaylistLocalization\"\n },\n \"type\": \"object\",\n - \ \"description\": \"Localizations for different languages\"\n },\n - \ \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": - \"The player object contains information that you would use to play the playlist - in an embedded player.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\",\n \"$ref\": \"PlaylistSnippet\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n \"default\": - \"youtube#playlist\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"status\": {\n \"$ref\": \"PlaylistStatus\",\n - \ \"description\": \"The status object contains status information - for the playlist.\"\n }\n },\n \"id\": \"Playlist\"\n },\n - \ \"I18nRegionSnippet\": {\n \"id\": \"I18nRegionSnippet\",\n \"properties\": - {\n \"name\": {\n \"type\": \"string\",\n \"description\": - \"The human-readable name of the region.\"\n },\n \"gl\": {\n - \ \"type\": \"string\",\n \"description\": \"The region code - as a 2-letter ISO country code.\"\n }\n },\n \"description\": - \"Basic details about an i18n region, such as region code and human-readable - name.\",\n \"type\": \"object\"\n },\n \"MembershipsLevelSnippet\": - {\n \"properties\": {\n \"levelDetails\": {\n \"$ref\": - \"LevelDetails\",\n \"description\": \"Details about the pricing - level.\"\n },\n \"creatorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the channel that's offering - channel memberships.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"MembershipsLevelSnippet\"\n },\n \"LocalizedString\": - {\n \"properties\": {\n \"language\": {\n \"type\": \"string\"\n - \ },\n \"value\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LocalizedString\",\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageDeletedDetails\": {\n \"properties\": {\n - \ \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"type\": - \"object\"\n },\n \"LanguageTag\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LanguageTag\"\n },\n \"ThumbnailSetResponse\": - {\n \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of thumbnails.\",\n \"items\": - {\n \"$ref\": \"ThumbnailDetails\"\n }\n },\n \"etag\": + \ ],\n \"description\": \"The reason that YouTube failed + to process the video. This property will only have a value if the processingStatus + property's value is failed.\",\n \"enum\": [\n \"uploadFailed\",\n + \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n + \ ],\n \"type\": \"string\"\n },\n \"thumbnailsAvailability\": + {\n \"description\": \"This value indicates whether thumbnail images + have been generated for the video.\",\n \"type\": \"string\"\n },\n + \ \"processingStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"processing\",\n \"succeeded\",\n + \ \"failed\",\n \"terminated\"\n ],\n \"description\": + \"The video's processing status. This value indicates whether YouTube was + able to process the video or if the video is still being processed.\"\n },\n + \ \"editorSuggestionsAvailability\": {\n \"description\": \"This + value indicates whether video editing suggestions, which might improve video + quality or the playback experience, are available for the video. You can retrieve + these suggestions by requesting the suggestions part in your videos.list() + request.\",\n \"type\": \"string\"\n },\n \"tagSuggestionsAvailability\": + {\n \"type\": \"string\",\n \"description\": \"This value + indicates whether keyword (tag) suggestions are available for the video. Tags + can be added to a video's metadata to make it easier for other users to find + the video. You can retrieve these suggestions by requesting the suggestions + part in your videos.list() request.\"\n },\n \"fileDetailsAvailability\": + {\n \"type\": \"string\",\n \"description\": \"This value + indicates whether file details are available for the uploaded video. You can + retrieve a video's file details by requesting the fileDetails part in your + videos.list() request.\"\n },\n \"processingIssuesAvailability\": + {\n \"description\": \"This value indicates whether the video processing + engine has generated suggestions that might improve YouTube's ability to process + the the video, warnings that explain video processing problems, or errors + that cause video processing problems. You can retrieve these suggestions by + requesting the suggestions part in your videos.list() request.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Describes processing + status and progress and availability of some other Video resource parts.\",\n + \ \"id\": \"VideoProcessingDetails\",\n \"type\": \"object\"\n },\n + \ \"ChannelBrandingSettings\": {\n \"description\": \"Branding properties + of a YouTube channel.\",\n \"properties\": {\n \"channel\": {\n + \ \"description\": \"Branding properties for the channel view.\",\n + \ \"$ref\": \"ChannelSettings\"\n },\n \"hints\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"PropertyValue\"\n },\n \"description\": \"Additional experimental + branding properties.\"\n },\n \"image\": {\n \"$ref\": + \"ImageSettings\",\n \"description\": \"Branding properties for branding + images.\"\n },\n \"watch\": {\n \"$ref\": \"WatchSettings\",\n + \ \"description\": \"Branding properties for the watch page.\"\n }\n + \ },\n \"id\": \"ChannelBrandingSettings\",\n \"type\": \"object\"\n + \ },\n \"LiveStream\": {\n \"id\": \"LiveStream\",\n \"description\": + \"A live stream describes a live ingestion point.\",\n \"properties\": + {\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n + \ \"default\": \"youtube#liveStream\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thumbnailSetResponse\"\n - \ }\n },\n \"id\": \"ThumbnailSetResponse\",\n \"type\": - \"object\"\n },\n \"LiveBroadcastListResponse\": {\n \"type\": - \"object\",\n \"id\": \"LiveBroadcastListResponse\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveBroadcastListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"A list of broadcasts that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"WatchSettings\": - {\n \"type\": \"object\",\n \"id\": \"WatchSettings\",\n \"properties\": - {\n \"textColor\": {\n \"type\": \"string\",\n \"description\": - \"The background color for the video watch page's branded area.\"\n },\n - \ \"backgroundColor\": {\n \"type\": \"string\",\n \"description\": - \"The text color for the video watch page's branded area.\"\n },\n - \ \"featuredPlaylistId\": {\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Branding properties for the watch. All deprecated.\"\n },\n \"ActivityContentDetailsComment\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource associated with the comment.\"\n - \ }\n },\n \"description\": \"Information about a resource - that received a comment.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsComment\"\n - \ },\n \"LiveStreamSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\"\n },\n \"description\": {\n \"description\": - \"The stream's description. The value cannot be longer than 10000 characters.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the stream was created.\"\n },\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n },\n \"title\": {\n \"description\": - \"The stream's title. The value must be between 1 and 128 characters long.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveStreamSnippet\"\n - \ },\n \"VideoAbuseReportReason\": {\n \"id\": \"VideoAbuseReportReason\",\n - \ \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the abuse report reason.\",\n \"$ref\": \"VideoAbuseReportReasonSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID of this - abuse report reason.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoAbuseReportReason\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastStatistics\": {\n \"id\": - \"LiveBroadcastStatistics\",\n \"properties\": {\n \"concurrentViewers\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n },\n - \ \"totalChatCount\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The total number of live chat messages - currently on the broadcast. The property and its value will be present if - the broadcast is public, has the live chat feature enabled, and has at least - one message. Note that this field will not be filled after the broadcast ends. - So this property would not identify the number of chat messages for an archived - video of a completed live broadcast.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Statistics about the live broadcast. - These represent a snapshot of the values at the time of the request. Statistics - are only returned for live broadcasts.\"\n },\n \"LiveBroadcastContentDetails\": - {\n \"description\": \"Detailed settings of a broadcast.\",\n \"id\": - \"LiveBroadcastContentDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"recordFromStart\": {\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\",\n \"type\": \"boolean\"\n - \ },\n \"boundStreamLastUpdateTimeMs\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the live - stream referenced by boundStreamId was last updated.\",\n \"format\": - \"date-time\"\n },\n \"boundStreamId\": {\n \"description\": - \"This value uniquely identifies the live stream bound to the broadcast.\",\n - \ \"type\": \"string\"\n },\n \"enableAutoStop\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto stop is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"stereoLayout\": {\n \"description\": \"The 3D stereo layout - of this broadcast. This defaults to mono.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n - \ \"leftRight\",\n \"topBottom\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n },\n \"startWithSlate\": {\n \"description\": - \"This setting indicates whether the broadcast should automatically begin - with an in-stream slate when you update the broadcast's status to live. After - updating the status, you then need to send a liveCuepoints.insert request - that sets the cuepoint's eventState to end to remove the in-stream slate and - make your broadcast stream visible to viewers.\",\n \"type\": \"boolean\"\n - \ },\n \"monitorStream\": {\n \"$ref\": \"MonitorStreamInfo\",\n - \ \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\"\n },\n \"mesh\": - {\n \"type\": \"string\",\n \"description\": \"The mesh - for projecting the video if projection is mesh. The mesh value must be a UTF-8 - string containing the base-64 encoding of 3D mesh data that follows the Spherical - Video V2 RFC specification for an mshp box, excluding the box size and type - but including the following four reserved zero bytes for the version and flags.\",\n - \ \"format\": \"byte\"\n },\n \"enableClosedCaptions\": - {\n \"description\": \"This setting indicates whether HTTP POST closed - captioning is enabled for this broadcast. The ingestion URL of the closed - captions is returned through the liveStreams API. This is mutually exclusive - with using the closed_captions_type property, and is equivalent to setting - closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n \"type\": - \"boolean\"\n },\n \"enableAutoStart\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - auto start is enabled for this broadcast. The default value for this property - is false. This setting can only be used by Events.\"\n },\n \"enableLowLatency\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast has low latency enabled.\"\n },\n \"projection\": - {\n \"description\": \"The projection format of this broadcast. This - defaults to rectangular.\",\n \"type\": \"string\",\n \"enum\": - [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"latencyPreference\": {\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ]\n },\n \"closedCaptionsType\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"enableContentEncryption\": {\n \"description\": - \"This setting indicates whether YouTube should enable content encryption - for the broadcast.\",\n \"type\": \"boolean\"\n },\n \"enableDvr\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - determines whether viewers can access DVR controls while watching the video. - DVR controls enable the viewer to control the video playback experience by - pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\"\n }\n }\n },\n \"ChannelProfileDetails\": - {\n \"properties\": {\n \"channelUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channel's URL.\"\n },\n - \ \"displayName\": {\n \"description\": \"The channel's display - name.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The YouTube channel ID.\",\n \"type\": - \"string\"\n },\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelProfileDetails\",\n \"type\": \"object\"\n - \ },\n \"PlaylistListResponse\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistListResponse\",\n \"properties\": {\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"description\": \"A list of playlists that match the request criteria\",\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlistListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n }\n }\n },\n \"ChannelListResponse\": - {\n \"type\": \"object\",\n \"id\": \"ChannelListResponse\",\n \"properties\": - {\n \"pageInfo\": {\n \"description\": \"General pagination - information.\",\n \"$ref\": \"PageInfo\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Channel\"\n }\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"default\": \"youtube#channelListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"I18nLanguage\": {\n \"description\": - \"An *i18nLanguage* resource identifies a UI language currently supported - by YouTube.\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nLanguage\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n language.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\"\n }\n },\n \"id\": - \"I18nLanguage\",\n \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": - {\n \"id\": \"LiveChatMessageListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"pollingIntervalMillis\": {\n \"type\": - \"integer\",\n \"description\": \"The amount of time the client should - wait before polling again.\",\n \"format\": \"uint32\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"offlineAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the underlying stream went offline.\",\n \"format\": - \"date-time\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"LiveChatMessage\"\n }\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatMessageListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n - \ }\n }\n },\n \"Channel\": {\n \"description\": \"A - *channel* resource contains information about a YouTube channel.\",\n \"id\": - \"Channel\",\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#channel\\\".\",\n \"default\": - \"youtube#channel\",\n \"type\": \"string\"\n },\n \"contentOwnerDetails\": - {\n \"description\": \"The contentOwnerDetails object encapsulates - channel data that is relevant for YouTube Partners linked with the channel.\",\n - \ \"$ref\": \"ChannelContentOwnerDetails\"\n },\n \"auditDetails\": - {\n \"$ref\": \"ChannelAuditDetails\",\n \"description\": - \"The auditionDetails object encapsulates channel data that is relevant for - YouTube Partners during the audition process.\"\n },\n \"brandingSettings\": - {\n \"$ref\": \"ChannelBrandingSettings\",\n \"description\": - \"The brandingSettings object encapsulates information about the branding - of the channel.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"status\": - {\n \"description\": \"The status object encapsulates information - about the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the channel, such as its title, description, and thumbnail images.\"\n },\n - \ \"topicDetails\": {\n \"description\": \"The topicDetails - object encapsulates information about Freebase topics associated with the - channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n \"localizations\": - {\n \"description\": \"Localizations for different languages\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"type\": \"object\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel.\",\n \"type\": \"string\"\n },\n \"conversionPings\": - {\n \"$ref\": \"ChannelConversionPings\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object encapsulates information - about the channel's content.\",\n \"$ref\": \"ChannelContentDetails\"\n - \ }\n }\n },\n \"MonitorStreamInfo\": {\n \"properties\": - {\n \"broadcastStreamDelayMs\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"If you have set the enableMonitorStream property - to true, then this property determines the length of the live broadcast delay.\"\n - \ },\n \"enableMonitorStream\": {\n \"description\": - \"This value determines whether the monitor stream is enabled for the broadcast. - If the monitor stream is enabled, then YouTube will broadcast the event content - on a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"boolean\"\n },\n - \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\"\n }\n - \ },\n \"id\": \"MonitorStreamInfo\",\n \"description\": \"Settings - and Info of the monitor stream\",\n \"type\": \"object\"\n },\n \"PlaylistLocalization\": - {\n \"properties\": {\n \"description\": {\n \"description\": - \"The localized strings for playlist's description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - localized strings for playlist's title.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"PlaylistLocalization\",\n \"type\": - \"object\",\n \"description\": \"Playlist localization setting\"\n },\n - \ \"VideoProcessingDetails\": {\n \"type\": \"object\",\n \"description\": - \"Describes processing status and progress and availability of some other - Video resource parts.\",\n \"id\": \"VideoProcessingDetails\",\n \"properties\": - {\n \"editorSuggestionsAvailability\": {\n \"description\": - \"This value indicates whether video editing suggestions, which might improve - video quality or the playback experience, are available for the video. You - can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"processingStatus\": - {\n \"description\": \"The video's processing status. This value - indicates whether YouTube was able to process the video or if the video is - still being processed.\",\n \"type\": \"string\",\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"processingFailureReason\": {\n \"enum\": - [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The reason that YouTube failed - to process the video. This property will only have a value if the processingStatus - property's value is failed.\"\n },\n \"processingIssuesAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether the video processing engine has generated suggestions that - might improve YouTube's ability to process the the video, warnings that explain - video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\"\n },\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n },\n - \ \"tagSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether keyword (tag) suggestions are available for the video. - Tags can be added to a video's metadata to make it easier for other users - to find the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"fileDetailsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether file details are - available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\"\n },\n - \ \"processingProgress\": {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"The processingProgress object contains information - about the progress YouTube has made in processing the video. The values are - really only relevant if the video's processing status is processing.\"\n }\n - \ }\n },\n \"MembershipsDurationAtLevel\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"memberSince\": {\n \"description\": - \"The date and time when the user became a continuous member for the given - level.\",\n \"type\": \"string\"\n },\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"description\": \"The cumulative - time the user has been a member for the given level in complete months (the - time is rounded down to the nearest integer).\",\n \"format\": \"int32\"\n - \ },\n \"level\": {\n \"type\": \"string\",\n \"description\": - \"Pricing level ID.\"\n }\n },\n \"id\": \"MembershipsDurationAtLevel\"\n - \ },\n \"LiveChatMessageSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"fanFundingEventDetails\": {\n \"description\": \"Details - about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"liveChatId\": - {\n \"type\": \"string\"\n },\n \"hasDisplayContent\": - {\n \"description\": \"Whether the message has display content that - should be displayed to users.\",\n \"type\": \"boolean\"\n },\n - \ \"giftMembershipReceivedDetails\": {\n \"description\": \"Details - about the Gift Membership Received event, this is only set if the type is - 'giftMembershipReceivedEvent'.\",\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"superChatDetails\": {\n \"description\": \"Details - about the Super Chat event, this is only set if the type is 'superChatEvent'.\",\n - \ \"$ref\": \"LiveChatSuperChatDetails\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\",\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"type\": \"string\"\n },\n \"displayMessage\": {\n - \ \"type\": \"string\",\n \"description\": \"Contains a string - that can be displayed to the user. If this field is not present the message - is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"textMessageDetails\": {\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\",\n - \ \"$ref\": \"LiveChatTextMessageDetails\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n - \ \"description\": \"Details about the New Member Announcement event, - this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" - is the new term for \\\"sponsor\\\".\"\n },\n \"superStickerDetails\": - {\n \"description\": \"Details about the Super Sticker event, this - is only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time when the message was orignally published.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"authorChannelId\": {\n - \ \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\",\n \"type\": \"string\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"memberMilestoneChatDetails\": - {\n \"description\": \"Details about the Member Milestone Chat event, - this is only set if the type is 'memberMilestoneChatEvent'.\",\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\"\n }\n },\n \"description\": - \"Next ID: 33\",\n \"id\": \"LiveChatMessageSnippet\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"type\": \"object\",\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"properties\": {\n \"allowed\": {\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"blocked\": {\n \"description\": \"A list of - region codes that identify countries where the video is blocked. If this property - is present and a country is not listed in its value, then the video is viewable - in that country. If this property is present and contains an empty list, the - video is viewable in all countries.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n }\n - \ },\n \"AbuseReport\": {\n \"id\": \"AbuseReport\",\n \"properties\": - {\n \"subject\": {\n \"$ref\": \"Entity\"\n },\n \"description\": - {\n \"type\": \"string\"\n },\n \"relatedEntities\": - {\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n - \ \"type\": \"array\"\n },\n \"abuseTypes\": {\n \"items\": - {\n \"$ref\": \"AbuseType\"\n },\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveStreamContentDetails\": - {\n \"properties\": {\n \"isReusable\": {\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \",\n \"type\": \"boolean\"\n },\n \"closedCaptionsIngestionUrl\": - {\n \"type\": \"string\",\n \"description\": \"The ingestion - URL where the closed captions of this stream are sent.\"\n }\n },\n - \ \"description\": \"Detailed settings of a stream.\",\n \"type\": - \"object\",\n \"id\": \"LiveStreamContentDetails\"\n },\n \"LiveChatModeratorSnippet\": - {\n \"properties\": {\n \"liveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the live chat this moderator - can act on.\"\n },\n \"moderatorDetails\": {\n \"description\": - \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\"\n - \ },\n \"AccessPolicy\": {\n \"type\": \"object\",\n \"id\": - \"AccessPolicy\",\n \"properties\": {\n \"exception\": {\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"allowed\": - {\n \"description\": \"The value of allowed indicates whether the - access to the policy is allowed or denied by default.\",\n \"type\": - \"boolean\"\n }\n },\n \"description\": \"Rights management - policy for YouTube resources.\"\n },\n \"ChannelContentDetails\": {\n - \ \"properties\": {\n \"relatedPlaylists\": {\n \"properties\": - {\n \"favorites\": {\n \"description\": \"The ID of - the playlist that contains the channel\\\"s favorite videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n },\n \"watchLater\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s watch later playlist. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"likes\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"uploads\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use - the videos.insert method to upload new videos and the videos.delete method - to delete previously uploaded videos.\",\n \"type\": \"string\"\n - \ },\n \"watchHistory\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n }\n },\n \"description\": - \"Details about the content of a channel.\",\n \"type\": \"object\",\n - \ \"id\": \"ChannelContentDetails\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"type\": \"object\",\n \"description\": \"Video processing - progress and completion time estimate.\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"properties\": {\n \"partsProcessed\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of parts of the video that YouTube has already processed. You can estimate - the percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\"\n },\n - \ \"partsTotal\": {\n \"description\": \"An estimate of the - total number of parts that need to be processed for the video. The number - may be updated with more precise estimates while YouTube processes the video.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"timeLeftMs\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"An estimate of the amount of time, - in millseconds, that YouTube needs to finish processing the video.\"\n }\n - \ }\n },\n \"ThumbnailDetails\": {\n \"properties\": {\n \"high\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The high - quality image for this resource.\"\n },\n \"standard\": {\n - \ \"$ref\": \"Thumbnail\",\n \"description\": \"The standard - quality image for this resource.\"\n },\n \"maxres\": {\n \"description\": - \"The maximum resolution quality image for this resource.\",\n \"$ref\": - \"Thumbnail\"\n },\n \"medium\": {\n \"description\": - \"The medium quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The default image for this resource.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ThumbnailDetails\",\n \"description\": \"Internal - representation of thumbnails for a YouTube resource.\"\n },\n \"RelatedEntity\": - {\n \"properties\": {\n \"entity\": {\n \"$ref\": \"Entity\"\n - \ }\n },\n \"id\": \"RelatedEntity\",\n \"type\": \"object\"\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"id\": \"LiveChatFanFundingEventDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"userComment\": - {\n \"description\": \"The comment added by the user to this fan - funding event.\",\n \"type\": \"string\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the fund was made.\"\n },\n \"amountMicros\": - {\n \"format\": \"uint64\",\n \"description\": \"The amount - of the fund.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ActivityContentDetailsPlaylistItem\": {\n \"type\": \"object\",\n - \ \"description\": \"Information about a new playlist item.\",\n \"id\": - \"ActivityContentDetailsPlaylistItem\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information about the resource that was added to the playlist.\"\n - \ },\n \"playlistItemId\": {\n \"description\": \"ID - of the item within the playlist.\",\n \"type\": \"string\"\n },\n - \ \"playlistId\": {\n \"description\": \"The value that YouTube - uses to uniquely identify the playlist.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelSectionSnippet\": {\n \"id\": - \"ChannelSectionSnippet\",\n \"properties\": {\n \"position\": - {\n \"description\": \"The position of the channel section in the - channel.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"style\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The style of the channel section.\",\n \"enum\": - [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ]\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel - section's title for multiple_playlists and multiple_channels.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\"\n },\n \"localized\": {\n \"$ref\": - \"ChannelSectionLocalization\",\n \"description\": \"Localized title, - read-only.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of the channel section.\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": - \"The language of the channel section's default title and description.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a channel section, including title, style and position.\"\n - \ },\n \"PropertyValue\": {\n \"description\": \"A pair Property - / Value.\",\n \"type\": \"object\",\n \"id\": \"PropertyValue\",\n - \ \"properties\": {\n \"property\": {\n \"type\": \"string\",\n - \ \"description\": \"A property.\"\n },\n \"value\": - {\n \"type\": \"string\",\n \"description\": \"The property's - value.\"\n }\n }\n },\n \"ChannelToStoreLinkDetails\": {\n - \ \"properties\": {\n \"merchantId\": {\n \"description\": - \"Google Merchant Center id of the store.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"storeName\": {\n \"description\": - \"Name of the store.\",\n \"type\": \"string\"\n },\n \"storeUrl\": - {\n \"description\": \"Landing page of the store.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelToStoreLinkDetails\",\n \"description\": \"Information specific - to a store on a merchandising platform linked to a YouTube channel.\"\n },\n - \ \"ChannelSectionTargeting\": {\n \"properties\": {\n \"countries\": - {\n \"description\": \"The country the channel section is targeting.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"languages\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"The language the channel section is targeting.\"\n },\n \"regions\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The region the channel - section is targeting.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelSectionTargeting\",\n \"description\": \"ChannelSection - targeting setting.\"\n },\n \"GeoPoint\": {\n \"type\": \"object\",\n - \ \"id\": \"GeoPoint\",\n \"description\": \"Geographical coordinates - of a point, in WGS84.\",\n \"properties\": {\n \"altitude\": {\n - \ \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\"\n },\n \"latitude\": - {\n \"format\": \"double\",\n \"description\": \"Latitude - in degrees.\",\n \"type\": \"number\"\n },\n \"longitude\": - {\n \"format\": \"double\",\n \"type\": \"number\",\n \"description\": - \"Longitude in degrees.\"\n }\n }\n },\n \"TestItemTestItemSnippet\": - {\n \"type\": \"object\",\n \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\"\n - \ },\n \"SubscriptionSubscriberSnippet\": {\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"Basic details about a subscription's subscriber including - title, description, channel ID and thumbnails.\",\n \"properties\": {\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"Thumbnails for this subscriber.\"\n },\n \"title\": {\n \"description\": - \"The title of the subscriber.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The channel ID of the - subscriber.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The description of the subscriber.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelSectionContentDetails\": - {\n \"id\": \"ChannelSectionContentDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"channels\": {\n \"type\": \"array\",\n - \ \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"playlists\": {\n \"description\": \"The playlist ids for - type single_playlist and multiple_playlists. For singlePlaylist, only one - playlistId is allowed.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"description\": - \"Details about a channelsection, including playlists and channels.\"\n },\n - \ \"Cuepoint\": {\n \"description\": \"Note that there may be a 5-second - end-point resolution issue. For instance, if a cuepoint comes in for 22:03:27, - we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. This is an - artifact of HLS.\",\n \"properties\": {\n \"insertionOffsetTimeMs\": - {\n \"format\": \"int64\",\n \"type\": \"string\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\"\n },\n \"durationSecs\": {\n \"type\": - \"integer\",\n \"description\": \"The duration of this cuepoint.\",\n - \ \"format\": \"uint32\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - identifier for cuepoint resource.\",\n \"type\": \"string\"\n },\n - \ \"walltimeMs\": {\n \"description\": \"The wall clock time - at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"cueType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ]\n }\n },\n \"type\": - \"object\",\n \"id\": \"Cuepoint\"\n },\n \"SearchResultSnippet\": - {\n \"id\": \"SearchResultSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"A description of the search result.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the search result. 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.\"\n },\n - \ \"liveBroadcastContent\": {\n \"description\": \"It indicates - if the resource (video or channel) has upcoming/active live broadcast content. - Or it's \\\"none\\\" if there is not any upcoming/active live broadcasts.\",\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"The title of the channel that published the - resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The creation date and time of the resource that - the search result identifies.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the search result.\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The value that - YouTube uses to uniquely identify the channel that published the resource - that the search result identifies.\"\n }\n },\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"bannedUserDetails\": - {\n \"description\": \"The details of the user that was banned.\",\n - \ \"$ref\": \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": - {\n \"description\": \"The duration of the ban. This property is - only present if the banType is temporary.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"banType\": {\n \"enum\": - [\n \"permanent\",\n \"temporary\"\n ],\n \"type\": - \"string\",\n \"description\": \"The type of ban.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n }\n },\n - \ \"id\": \"LiveChatUserBannedMessageDetails\"\n },\n \"ChannelConversionPing\": - {\n \"id\": \"ChannelConversionPing\",\n \"properties\": {\n \"conversionUrl\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"context\": {\n \"enum\": - [\n \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ],\n \"description\": \"Defines the context of the ping.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"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.\",\n \"type\": \"object\"\n },\n - \ \"LiveChatTextMessageDetails\": {\n \"properties\": {\n \"messageText\": - {\n \"type\": \"string\",\n \"description\": \"The user's - message.\"\n }\n },\n \"id\": \"LiveChatTextMessageDetails\",\n - \ \"type\": \"object\"\n },\n \"LiveChatBan\": {\n \"id\": - \"LiveChatBan\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#liveChatBan\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the ban.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\"\n - \ },\n \"VideoAbuseReport\": {\n \"properties\": {\n \"secondaryReasonId\": - {\n \"description\": \"The specific, or secondary, reason that this - content is abusive (if available). The value is an abuse report reason ID - that is a valid secondary reason for the primary reason.\",\n \"type\": - \"string\"\n },\n \"language\": {\n \"type\": \"string\",\n - \ \"description\": \"The language that the content was viewed in.\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ },\n \"comments\": {\n \"type\": \"string\",\n \"description\": - \"Additional comments regarding the abuse report.\"\n },\n \"reasonId\": - {\n \"description\": \"The high-level, or primary, reason that the - content is abusive. The value is an abuse report reason ID.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoAbuseReport\",\n \"type\": - \"object\"\n },\n \"ChannelSectionLocalization\": {\n \"description\": - \"ChannelSection localization setting\",\n \"id\": \"ChannelSectionLocalization\",\n - \ \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for channel section's title.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatSuperStickerDetails\": - {\n \"properties\": {\n \"tier\": {\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"superStickerMetadata\": {\n \"$ref\": - \"SuperStickerMetadata\",\n \"description\": \"Information about - the Super Sticker.\"\n },\n \"amountMicros\": {\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"amountDisplayString\": {\n \"type\": \"string\",\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatSuperStickerDetails\",\n \"type\": - \"object\"\n },\n \"LiveChatBanSnippet\": {\n \"properties\": {\n - \ \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"liveChatId\": {\n \"description\": \"The chat - this ban is pertinent to.\",\n \"type\": \"string\"\n },\n - \ \"banDurationSeconds\": {\n \"type\": \"string\",\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\",\n \"format\": - \"uint64\"\n },\n \"type\": {\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"type\": - \"string\",\n \"description\": \"The type of ban.\",\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ]\n }\n },\n \"id\": - \"LiveChatBanSnippet\",\n \"type\": \"object\"\n },\n \"I18nLanguageListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n },\n - \ \"description\": \"A list of supported i18n languages. In this map, - the i18n language ID is the map key, and its value is the corresponding i18nLanguage - resource.\",\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n },\n \"id\": \"I18nLanguageListResponse\",\n - \ \"type\": \"object\"\n },\n \"MembershipsLevelListResponse\": - {\n \"id\": \"MembershipsLevelListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"items\": {\n \"description\": - \"A list of pricing levels offered by a creator to the fans.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n - \ }\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"CommentSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"parentId\": - {\n \"type\": \"string\",\n \"description\": \"The unique - id of the parent comment, only set for replies.\"\n },\n \"textDisplay\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"viewerRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"The entity - is liked.\",\n \"The entity is disliked.\"\n ],\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ]\n },\n \"moderationStatus\": {\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by a - moderator.\",\n \"\",\n \"The comment is unfit for display.\"\n - \ ],\n \"description\": \"The comment's moderation status. - Will not be set if the comments were requested through the id filter.\"\n - \ },\n \"likeCount\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The total number of likes this comment has received.\",\n - \ \"type\": \"integer\"\n },\n \"updatedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the comment was last updated.\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"textOriginal\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the comment was originally published.\",\n \"format\": - \"date-time\"\n },\n \"canRate\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the current viewer can rate this comment.\"\n - \ },\n \"channelId\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comment refers to, if any.\"\n }\n },\n \"id\": - \"CommentSnippet\",\n \"description\": \"Basic details about a comment, - such as its author and text.\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"type\": \"object\",\n \"properties\": {\n \"label\": - {\n \"type\": \"string\",\n \"description\": \"The localized - label for this abuse report secondary reason.\"\n },\n \"id\": - {\n \"description\": \"The ID of this abuse report secondary reason.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"LiveBroadcastSnippet\": {\n \"description\": \"Basic broadcast - information.\",\n \"id\": \"LiveBroadcastSnippet\",\n \"properties\": - {\n \"scheduledStartTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that is publishing the - broadcast.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the broadcast. For each nested object in this object, the key is the name - of the thumbnail image, and the value is an object that contains other information - about the thumbnail.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The broadcast's title. Note that the broadcast represents exactly one YouTube - video. You can set this field by modifying the broadcast resource or by setting - the title field of the corresponding video resource.\"\n },\n \"isDefaultBroadcast\": - {\n \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\",\n \"type\": \"boolean\"\n },\n - \ \"actualStartTime\": {\n \"description\": \"The date and - time that the broadcast actually started. This information is only available - once the broadcast's state is live.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"actualEndTime\": {\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the broadcast actually ended. This information is only available - once the broadcast's state is complete.\",\n \"type\": \"string\"\n - \ },\n \"scheduledEndTime\": {\n \"description\": \"The - date and time that the broadcast is scheduled to end.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast was added to YouTube's live broadcast schedule.\",\n - \ \"format\": \"date-time\"\n },\n \"description\": - {\n \"description\": \"The broadcast's description. As with the title, - you can set this field by modifying the broadcast resource or by setting the - description field of the corresponding video resource.\",\n \"type\": - \"string\"\n },\n \"liveChatId\": {\n \"description\": - \"The id of the live chat for this broadcast.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelConversionPings\": - {\n \"properties\": {\n \"pings\": {\n \"items\": {\n - \ \"$ref\": \"ChannelConversionPing\"\n },\n \"description\": - \"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.\",\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelConversionPings\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the stream.\",\n \"annotations\": {\n \"required\": [\n + \ \"youtube.liveStreams.update\"\n ]\n }\n + \ },\n \"snippet\": {\n \"$ref\": \"LiveStreamSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the stream, including its channel, title, and description.\"\n },\n + \ \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n + \ \"description\": \"The content_details object contains information + about the stream, including the closed captions ingestion URL.\"\n },\n + \ \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n \"description\": + \"The status object contains information about live stream's status.\"\n },\n + \ \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": + \"The cdn object defines the live stream's content delivery network (CDN) + settings. These settings provide details about the manner in which you stream + your content to YouTube.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n + \ \"properties\": {\n \"memberMonth\": {\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The total amount of months (rounded up) the viewer has been a member that + granted them this Member Milestone Chat. This is the same number of months + as is being displayed to YouTube users.\"\n },\n \"memberLevelName\": + {\n \"description\": \"The name of the Level at which the viever + is a member. The Level names are defined by the YouTube channel offering the + Membership. In some situations this field isn't filled.\",\n \"type\": + \"string\"\n },\n \"userComment\": {\n \"type\": \"string\",\n + \ \"description\": \"The comment added by the member to this Member + Milestone Chat. This field is empty for messages without a comment from the + member.\"\n }\n },\n \"type\": \"object\"\n },\n \"I18nLanguageListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": + {\n \"default\": \"youtube#i18nLanguageListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of moderators - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"type\": \"array\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatModeratorListResponse\",\n - \ \"type\": \"object\"\n },\n \"CommentThreadListResponse\": {\n - \ \"id\": \"CommentThreadListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#commentThreadListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"description\": \"A list of comment threads that - match the request criteria.\",\n \"type\": \"array\"\n }\n - \ }\n },\n \"CommentThreadSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"CommentThreadSnippet\",\n \"properties\": {\n \"canReply\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n - \ \"isPublic\": {\n \"description\": \"Whether the thread (and - therefore all its comments) is visible to all YouTube users.\",\n \"type\": - \"boolean\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the video the comments refer to, if - any. No video_id implies a channel discussion comment.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"topLevelComment\": {\n \"$ref\": - \"Comment\",\n \"description\": \"The top level comment of this thread.\"\n - \ },\n \"totalReplyCount\": {\n \"type\": \"integer\",\n - \ \"description\": \"The total number of replies (not including the - top level comment).\",\n \"format\": \"uint32\"\n }\n },\n - \ \"description\": \"Basic details about a comment thread.\"\n },\n - \ \"PlaylistItem\": {\n \"type\": \"object\",\n \"id\": \"PlaylistItem\",\n - \ \"description\": \"A *playlistItem* resource identifies another resource, - such as a video, that is included in a playlist. In addition, the playlistItem - resource contains details about the included resource that pertain specifically - to how that resource is used in that playlist. YouTube uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"contentDetails\": {\n - \ \"$ref\": \"PlaylistItemContentDetails\",\n \"description\": - \"The contentDetails object is included in the resource if the included item - is a YouTube video. The object contains additional information about the video.\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the playlist item, such as its title and - position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\"\n },\n - \ \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"default\": \"youtube#playlistItem\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoSuggestions\": {\n \"properties\": - {\n \"processingHints\": {\n \"description\": \"A list of - suggestions that may improve YouTube's ability to process the video.\",\n - \ \"items\": {\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ]\n - \ },\n \"type\": \"array\"\n },\n \"processingErrors\": - {\n \"items\": {\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ]\n },\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\",\n \"type\": \"array\"\n },\n \"tagSuggestions\": - {\n \"description\": \"A list of keyword tags that could be added - to the video's metadata to increase the likelihood that users will locate - your video when searching or browsing on YouTube.\",\n \"items\": - {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n },\n - \ \"type\": \"array\"\n },\n \"processingWarnings\": - {\n \"items\": {\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"type\": \"string\"\n },\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"type\": \"array\"\n },\n \"editorSuggestions\": - {\n \"items\": {\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ],\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ],\n - \ \"type\": \"string\"\n },\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\",\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"VideoSuggestions\",\n \"type\": - \"object\",\n \"description\": \"Specifies suggestions on how to improve - video content, including encoding hints, tag suggestions, and editor suggestions.\"\n - \ },\n \"LiveChatMessageRetractedDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"VideoContentDetails\": {\n \"properties\": {\n \"licensedContent\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of is_license_content indicates whether the video is licensed content.\"\n - \ },\n \"dimension\": {\n \"type\": \"string\",\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\"\n },\n \"definition\": {\n \"enumDescriptions\": - [\n \"sd\",\n \"hd\"\n ],\n \"enum\": - [\n \"sd\",\n \"hd\"\n ],\n \"type\": - \"string\",\n \"description\": \"The value of definition indicates - whether the video is available in high definition or only in standard definition.\"\n - \ },\n \"duration\": {\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\",\n \"type\": - \"string\"\n },\n \"caption\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The value of captions indicates whether the video has captions or not.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"true\",\n - \ \"false\"\n ]\n },\n \"hasCustomThumbnail\": - {\n \"description\": \"Indicates whether the video uploader has provided - a custom thumbnail image for the video. This property is only visible to the - video uploader.\",\n \"type\": \"boolean\"\n },\n \"contentRating\": - {\n \"$ref\": \"ContentRating\",\n \"description\": \"Specifies - the ratings that the video received under various rating schemes.\"\n },\n - \ \"countryRestriction\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\"\n },\n - \ \"regionRestriction\": {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\"\n },\n \"projection\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the projection format of the video.\",\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ]\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoContentDetails\",\n \"description\": \"Details about - the content of a YouTube Video.\"\n },\n \"Entity\": {\n \"properties\": - {\n \"typeId\": {\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\"\n },\n \"url\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"Entity\",\n \"type\": - \"object\"\n },\n \"SubscriptionListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of subscriptions that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Subscription\"\n }\n }\n },\n - \ \"id\": \"SubscriptionListResponse\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"description\": - \"Details about a resource which was added to a channel.\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was added to the channel.\"\n - \ }\n }\n },\n \"VideoLocalization\": {\n \"id\": \"VideoLocalization\",\n - \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"Localized version of the video's title.\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"Localized version of the video's description.\"\n }\n },\n \"description\": - \"Localized versions of certain video properties (e.g. title).\",\n \"type\": - \"object\"\n },\n \"PlaylistStatus\": {\n \"properties\": {\n \"privacyStatus\": - {\n \"description\": \"The playlist's privacy status.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n }\n - \ },\n \"id\": \"PlaylistStatus\",\n \"type\": \"object\"\n - \ },\n \"PlaylistItemListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"description\": \"A list of playlist items - that match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n }\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"PlaylistItemListResponse\"\n },\n - \ \"CommentSnippetAuthorChannelId\": {\n \"type\": \"object\",\n \"id\": - \"CommentSnippetAuthorChannelId\",\n \"description\": \"The id of the - author's YouTube channel, if any.\",\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n }\n },\n \"Member\": - {\n \"description\": \"A *member* resource represents a member for a - YouTube channel. A member provides recurring monetary support to a creator - and receives special benefits.\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"MemberSnippet\",\n \"description\": \"The - snippet object contains basic details about the member.\"\n },\n \"kind\": - {\n \"default\": \"youtube#member\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"Member\"\n },\n - \ \"LiveChatSuperChatDetails\": {\n \"type\": \"object\",\n \"id\": - \"LiveChatSuperChatDetails\",\n \"properties\": {\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the user to this Super Chat event.\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"tier\": {\n \"description\": \"The tier in which the amount - belongs. Lower amounts belong to lower tiers. The lowest tier is 1.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"amountMicros\": - {\n \"description\": \"The amount purchased by the user, in micros - (1,750,000 micros = 1.75).\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoAbuseReportReasonListResponse\": {\n - \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of valid abuse reasons that are used with - `video.ReportAbuse`.\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ }\n },\n \"kind\": {\n \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The `visitorId` - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": + \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"description\": \"A list of supported i18n languages. + In this map, the i18n language ID is the map key, and its value is the corresponding + i18nLanguage resource.\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n + \ }\n }\n },\n \"id\": \"I18nLanguageListResponse\"\n + \ },\n \"ActivityContentDetailsComment\": {\n \"description\": \"Information + about a resource that received a comment.\",\n \"id\": \"ActivityContentDetailsComment\",\n + \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the resource associated with the comment.\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"I18nLanguage\": {\n \"type\": + \"object\",\n \"description\": \"An *i18nLanguage* resource identifies + a UI language currently supported by YouTube.\",\n \"properties\": {\n + \ \"id\": {\n \"description\": \"The ID that YouTube uses to + uniquely identify the i18n language.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the i18n language, such as language code and human-readable name.\",\n + \ \"$ref\": \"I18nLanguageSnippet\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#i18nLanguage\"\n }\n + \ },\n \"id\": \"I18nLanguage\"\n },\n \"ChannelLocalization\": + {\n \"properties\": {\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The localized strings for channel's + description.\"\n },\n \"title\": {\n \"description\": + \"The localized strings for channel's title.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelLocalization\",\n + \ \"description\": \"Channel localization setting\"\n },\n \"VideoStatistics\": + {\n \"properties\": {\n \"favoriteCount\": {\n \"type\": + \"string\",\n \"description\": \"The number of users who currently + have the video marked as a favorite video.\",\n \"format\": \"uint64\"\n + \ },\n \"likeCount\": {\n \"description\": \"The number + of users who have indicated that they liked the video by giving it a positive + rating.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n + \ },\n \"dislikeCount\": {\n \"format\": \"uint64\",\n + \ \"type\": \"string\",\n \"description\": \"The number of + users who have indicated that they disliked the video by giving it a negative + rating.\"\n },\n \"commentCount\": {\n \"format\": + \"uint64\",\n \"description\": \"The number of comments for the video.\",\n + \ \"type\": \"string\"\n },\n \"viewCount\": {\n \"description\": + \"The number of times the video has been viewed.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"VideoStatistics\",\n \"description\": \"Statistics about + the video, such as the number of times the video was viewed or liked.\"\n + \ },\n \"ResourceId\": {\n \"description\": \"A resource id is a + generic reference that points to another YouTube resource.\",\n \"properties\": + {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a video. This property is only present if the resourceId.kind + value is youtube#video.\"\n },\n \"kind\": {\n \"description\": + \"The type of the API resource.\",\n \"type\": \"string\"\n },\n + \ \"playlistId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the referred resource, if that resource is a playlist. + This property is only present if the resourceId.kind value is youtube#playlist.\",\n + \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a channel. This property is only present if the resourceId.kind + value is youtube#channel.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"ResourceId\"\n },\n + \ \"VideoFileDetailsAudioStream\": {\n \"properties\": {\n \"bitrateBps\": + {\n \"description\": \"The audio stream's bitrate, in bits per second.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n + \ \"channelCount\": {\n \"type\": \"integer\",\n \"description\": + \"The number of audio channels that the stream contains.\",\n \"format\": + \"uint32\"\n },\n \"vendor\": {\n \"description\": + \"A value that uniquely identifies a video vendor. Typically, the value is + a four-letter vendor code.\",\n \"type\": \"string\"\n },\n + \ \"codec\": {\n \"description\": \"The audio codec that the + stream uses.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"Information about an audio stream.\",\n + \ \"id\": \"VideoFileDetailsAudioStream\"\n },\n \"AbuseType\": + {\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"AbuseType\"\n + \ },\n \"Subscription\": {\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#subscription\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#subscription\"\n },\n + \ \"snippet\": {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": + \"The snippet object contains basic details about the subscription, including + its title and the channel that the user subscribed to.\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the subscription.\",\n \"type\": \"string\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoAbuseReportReasonListResponse\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"description\": \"Details about a channel bulletin post.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource associated with a - bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsBulletin\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"properties\": {\n \"seedResourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The seedResourceId object contains - information about the resource that caused the recommendation.\"\n },\n - \ \"reason\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The reason that the resource is - recommended to the user.\",\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ]\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"description\": - \"Information that identifies the recommended resource.\",\n \"id\": - \"ActivityContentDetailsRecommendation\",\n \"type\": \"object\"\n },\n - \ \"ChannelSettings\": {\n \"id\": \"ChannelSettings\",\n \"properties\": - {\n \"title\": {\n \"description\": \"Specifies the channel - title.\",\n \"type\": \"string\"\n },\n \"keywords\": - {\n \"type\": \"string\",\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\"\n },\n \"showRelatedChannels\": - {\n \"description\": \"Whether related channels should be proposed.\",\n - \ \"type\": \"boolean\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"description\": {\n - \ \"type\": \"string\",\n \"description\": \"Specifies the - channel description.\"\n },\n \"featuredChannelsUrls\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The list of featured - channels.\"\n },\n \"unsubscribedTrailer\": {\n \"type\": - \"string\",\n \"description\": \"The trailer of the channel, for - users that are not subscribers.\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n },\n \"showBrowseView\": {\n - \ \"description\": \"Whether the tab to browse the videos should be - displayed.\",\n \"type\": \"boolean\"\n },\n \"moderateComments\": - {\n \"description\": \"Whether user-submitted comments left on the - channel page need to be approved by the channel owner to be publicly visible.\",\n - \ \"type\": \"boolean\"\n },\n \"profileColor\": {\n - \ \"type\": \"string\",\n \"description\": \"A prominent - color that can be rendered on this channel page.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"type\": \"string\",\n \"description\": \"The ID for - a Google Analytics account to track and measure traffic to the channels.\"\n - \ },\n \"defaultTab\": {\n \"description\": \"Which - content tab users should see when viewing the channel.\",\n \"type\": - \"string\"\n },\n \"country\": {\n \"type\": \"string\",\n - \ \"description\": \"The country of the channel.\"\n }\n },\n - \ \"description\": \"Branding properties for the channel view.\",\n \"type\": - \"object\"\n },\n \"SearchListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"SearchListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"Pagination information for token pagination.\",\n - \ \"items\": {\n \"$ref\": \"SearchResult\"\n },\n - \ \"type\": \"array\"\n },\n \"regionCode\": {\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"default\": \"youtube#searchListResponse\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n }\n - \ },\n \"ContentRating\": {\n \"type\": \"object\",\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\",\n \"id\": \"ContentRating\",\n \"properties\": - {\n \"menaMpaaRating\": {\n \"description\": \"The rating - system for MENA countries, a clone of MPAA. It is needed to prevent titles - go live w/o additional QC check, since some of them can be inappropriate for - the countries at all. See b/33408548 for more details.\",\n \"enum\": - [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n - \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To - keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n - \ \"type\": \"string\"\n },\n \"icaaRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ],\n - \ \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"enum\": - [\n \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n - \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n - \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n - \ ]\n },\n \"nmcRating\": {\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ]\n },\n \"mocRating\": {\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"tvpgRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ],\n \"description\": \"The video's TV Parental Guidelines - (TVPG) rating.\",\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"nbcplRating\": {\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Poland.\"\n },\n \"ilfilmRating\": {\n - \ \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Israel.\"\n },\n \"nfvcbRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from Nigeria's - National Film and Video Censors Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ]\n },\n - \ \"fpbRatingReasons\": {\n \"description\": \"Reasons that - explain why the video received its FPB (South Africa) rating.\",\n \"type\": - \"array\",\n \"items\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ],\n \"type\": - \"string\"\n }\n },\n \"oflcRating\": {\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\",\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ]\n },\n \"cceRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n - \ \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"4\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\",\n \"14\"\n ]\n },\n \"rcnofRating\": - {\n \"description\": \"The video's rating from the Hungarian Nemzeti - Filmiroda, the Rating Committee of the National Office of Film.\",\n \"type\": - \"string\",\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"nfrcRating\": + \"string\"\n },\n \"subscriberSnippet\": {\n \"description\": + \"The subscriberSnippet object contains basic details about the subscriber.\",\n + \ \"$ref\": \"SubscriptionSubscriberSnippet\"\n },\n \"contentDetails\": + {\n \"description\": \"The contentDetails object contains basic statistics + about the subscription.\",\n \"$ref\": \"SubscriptionContentDetails\"\n + \ }\n },\n \"id\": \"Subscription\",\n \"description\": + \"A *subscription* resource contains information about a YouTube user subscription. + A subscription notifies a user when new videos are added to a channel or when + another user takes one of several actions on YouTube, such as uploading a + video, rating a video, or commenting on a video.\",\n \"type\": \"object\"\n + \ },\n \"CommentThread\": {\n \"id\": \"CommentThread\",\n \"description\": + \"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.\",\n \"properties\": {\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#commentThread\"\n + \ },\n \"replies\": {\n \"description\": \"The replies + object contains a limited number of replies (if any) to the top level comment + found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the comment thread.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the comment thread and also + the top level comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"I18nRegionListResponse\": + {\n \"id\": \"I18nRegionListResponse\",\n \"properties\": {\n \"items\": + {\n \"items\": {\n \"$ref\": \"I18nRegion\"\n },\n + \ \"description\": \"A list of regions where YouTube is available. + In this map, the i18n region ID is the map key, and its value is the corresponding + i18nRegion resource.\",\n \"type\": \"array\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#i18nRegionListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"VideoTopicDetails\": + {\n \"description\": \"Freebase topic information related to the video.\",\n + \ \"properties\": {\n \"topicCategories\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"A list of Wikipedia URLs that provide a high-level description of the video's + content.\",\n \"type\": \"array\"\n },\n \"relevantTopicIds\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"Similar to topic_id, + except that these topics are merely relevant to the video. These are topics + that may be mentioned in, or appear in the video. You can retrieve information + about each topic using Freebase Topic API.\"\n },\n \"topicIds\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"A list of Freebase + topic IDs that are centrally associated with the video. These are topics that + are centrally featured in the video, and it can be said that the video is + mainly about each of these. You can retrieve information about each topic + using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase + Topic API.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"VideoTopicDetails\"\n },\n \"PlaylistItem\": {\n \"id\": \"PlaylistItem\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlistItem\\\".\",\n \"type\": \"string\",\n + \ \"default\": \"youtube#playlistItem\"\n },\n \"status\": + {\n \"description\": \"The status object contains information about + the playlist item's privacy status.\",\n \"$ref\": \"PlaylistItemStatus\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"contentDetails\": + {\n \"description\": \"The contentDetails object is included in the + resource if the included item is a YouTube video. The object contains additional + information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the playlist item.\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the playlist item, such as its title and position in the playlist.\"\n }\n + \ },\n \"description\": \"A *playlistItem* resource identifies another + resource, such as a video, that is included in a playlist. In addition, the + playlistItem resource contains details about the included resource that pertain + specifically to how that resource is used in that playlist. YouTube uses playlists + to identify special collections of videos for a channel, such as: - uploaded + videos - favorite videos - positively rated (liked) videos - watch history + - watch later To be more specific, these lists are associated with a channel, + which is a collection of a person, group, or company's videos, playlists, + and other YouTube information. You can retrieve the playlist IDs for each + of these lists from the channel resource for a given channel. You can then + use the playlistItems.list method to retrieve any of those lists. You can + also add or remove items from those lists by calling the playlistItems.insert + and playlistItems.delete methods. For example, if a user gives a positive + rating to a video, you would insert that video into the liked videos playlist + for that user's channel.\"\n },\n \"SearchResult\": {\n \"properties\": + {\n \"id\": {\n \"description\": \"The id object contains + information that can be used to uniquely identify the resource that matches + the search request.\",\n \"$ref\": \"ResourceId\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about a search result, such as + its title or description. For example, if the search result is a video, then + the title will be the video's title and the description will be the video's + description.\",\n \"$ref\": \"SearchResultSnippet\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#searchResult\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"A + search result contains information about a YouTube video, channel, or playlist + that matches the search parameters specified in an API request. While a search + result points to a uniquely identifiable resource, like a video, it does not + have its own persistent data.\",\n \"id\": \"SearchResult\"\n },\n + \ \"ActivityContentDetailsUpload\": {\n \"id\": \"ActivityContentDetailsUpload\",\n + \ \"type\": \"object\",\n \"description\": \"Information about the + uploaded video.\",\n \"properties\": {\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the uploaded video.\"\n }\n }\n },\n \"VideoPlayer\": + {\n \"properties\": {\n \"embedHeight\": {\n \"type\": + \"string\",\n \"format\": \"int64\"\n },\n \"embedHtml\": + {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e + tag that embeds a player that will play the video.\"\n },\n \"embedWidth\": + {\n \"description\": \"The embed width\",\n \"type\": \"string\",\n + \ \"format\": \"int64\"\n }\n },\n \"id\": \"VideoPlayer\",\n + \ \"description\": \"Player to be used for a video playback.\",\n \"type\": + \"object\"\n },\n \"ContentRating\": {\n \"id\": \"ContentRating\",\n + \ \"properties\": {\n \"csaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"Interdiction\",\n + \ \"\"\n ],\n \"enum\": [\n \"csaUnspecified\",\n + \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n + \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n + \ ],\n \"description\": \"The video's rating from France's + Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\",\n + \ \"type\": \"string\"\n },\n \"cicfRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"E\",\n + \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n + \ \"description\": \"The video's rating from the Commission de Contr\xF4le + des Films (Belgium).\",\n \"enum\": [\n \"cicfUnspecified\",\n + \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n + \ \"cicfUnrated\"\n ]\n },\n \"cncRating\": + {\n \"description\": \"Rating system in France - Commission de classification + cinematographique\",\n \"enum\": [\n \"cncUnspecified\",\n + \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n + \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n + \ \"cncUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"E\",\n \"interdiction\",\n \"\"\n ]\n + \ },\n \"kfcbRating\": {\n \"description\": \"The video's + rating from the Kenya Film Classification Board.\",\n \"enum\": [\n + \ \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n + \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n + \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"chvrsRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"B\",\n \"C\",\n \"D\",\n - \ \"X\",\n \"\"\n ],\n \"enum\": [\n - \ \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Bulgarian - National Film Center.\"\n },\n \"eefilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n - \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n - \ \"K-16\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n - \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n - \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n - \ \"eefilmK16\",\n \"eefilmUnrated\"\n ],\n - \ \"description\": \"The video's rating in Estonia.\"\n },\n - \ \"nkclvRating\": {\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Nacion\xE3lais Kino centrs (National Film Centre - of Latvia).\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"cccRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's Consejo de Calificaci\xF3n - Cinematogr\xE1fica (Chile) rating.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Todo espectador\",\n \"6+ - Inconveniente - para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ]\n },\n - \ \"mtrcbRating\": {\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\"\n },\n \"fskRating\": {\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"FSK - 0\",\n \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"enum\": - [\n \"fskUnspecified\",\n \"fsk0\",\n \"fsk6\",\n - \ \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n \"fskUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"djctqRatingReasons\": - {\n \"items\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"14A\",\n \"18A\",\n + \ \"R\",\n \"E\",\n \"\"\n ],\n \"enum\": + [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n + \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n + \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"description\": + \"The video's Canadian Home Video Rating System (CHVRS) rating.\"\n },\n + \ \"mibacRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from the Ministero + dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n \"enum\": + [\n \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n + \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n + \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"bfvcRating\": + {\n \"description\": \"The video's rating from Thailand's Board of + Film and Video Censors.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n + \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n + \ \"\"\n ],\n \"enum\": [\n \"bfvcUnspecified\",\n + \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n + \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n + \ \"bfvcB\",\n \"bfvcUnrated\"\n ]\n },\n + \ \"mcstRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating system for Vietnam - MCST\",\n \"enumDescriptions\": + [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n + \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n + \ \"\"\n ],\n \"enum\": [\n \"mcstUnspecified\",\n + \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n + \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n + \ \"mcstGPg\",\n \"mcstUnrated\"\n ]\n },\n + \ \"djctqRatingReasons\": {\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\",\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n + \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n + \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n + \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n + \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n + \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \ \"Brazil rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n @@ -11181,121 +10076,97 @@ interactions: L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ]\n },\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n - \ \"type\": \"array\"\n },\n \"nbcRating\": {\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12+\",\n \"15+\",\n - \ \"18+\",\n \"18+R\",\n \"PU\",\n \"\"\n - \ ],\n \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ]\n },\n \"egfilmRating\": - {\n \"description\": \"The video's rating in Egypt.\",\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"chvrsRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Canadian Home Video Rating System - (CHVRS) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"14A\",\n \"18A\",\n - \ \"R\",\n \"E\",\n \"\"\n ],\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ]\n },\n - \ \"ifcoRating\": {\n \"description\": \"The video's Irish - Film Classification Office (IFCO - Ireland) rating. See the IFCO website for - more information.\",\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"fpbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ],\n \"enum\": [\n - \ \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n - \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n - \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\",\n \"type\": \"string\"\n },\n - \ \"moctwRating\": {\n \"description\": \"The video's rating - from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"moctwUnspecified\",\n - \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n - \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n - \ \"moctwR15\"\n ]\n },\n \"resorteviolenciaRating\": - {\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Venezuela.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ]\n },\n - \ \"mccypRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"7\",\n \"11\",\n \"15\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Danish Film Institute's (Det Danske Filminstitut) Media Council for - Children and Young People.\",\n \"type\": \"string\",\n \"enum\": - [\n \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n - \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n - \ ]\n },\n \"cbfcRating\": {\n \"enum\": [\n - \ \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ]\n },\n \"smsaRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Statens medier\xE5d (Sweden's - National Media Council).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"All ages\",\n \"7\",\n \"11\",\n \"15\",\n - \ \"\"\n ],\n \"enum\": [\n \"smsaUnspecified\",\n - \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n - \ \"smsa15\",\n \"smsaUnrated\"\n ]\n },\n - \ \"rteRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"GA\",\n \"CH\",\n \"PS\",\n \"MA\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n + content)\"\n ]\n },\n \"description\": \"Reasons + that explain why the video received its DJCQT (Brazil) rating.\"\n },\n + \ \"tvpgRating\": {\n \"description\": \"The video's TV Parental + Guidelines (TVPG) rating.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n + \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"tvpgUnspecified\",\n \"tvpgY\",\n \"tvpgY7\",\n + \ \"tvpgY7Fv\",\n \"tvpgG\",\n \"tvpgPg\",\n + \ \"pg14\",\n \"tvpgMa\",\n \"tvpgUnrated\"\n \ ]\n },\n \"mpaatRating\": {\n \"type\": \"string\",\n \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ],\n \"description\": - \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n - \ },\n \"czfilmRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"description\": - \"The video's rating in the Czech Republic.\"\n },\n \"bbfcRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG\",\n \"12A\",\n \"12\",\n - \ \"15\",\n \"18\",\n \"R18\",\n \"\"\n - \ ],\n \"description\": \"The video's British Board of Film - Classification (BBFC) rating.\",\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ]\n },\n - \ \"djctqRating\": {\n \"enum\": [\n \"djctqUnspecified\",\n + \ \"RB\"\n ],\n \"description\": \"The rating + system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n + \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n + \ \"mpaatRb\"\n ]\n },\n \"bbfcRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"R18\",\n \"\"\n ],\n + \ \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n + \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n + \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n + \ \"bbfcUnrated\"\n ],\n \"description\": \"The + video's British Board of Film Classification (BBFC) rating.\",\n \"type\": + \"string\"\n },\n \"chfilmRating\": {\n \"description\": + \"The video's rating in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n + \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n + \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\"\n ]\n + \ },\n \"bmukkRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n + \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n + \ \"14+\",\n \"16+\",\n \"\"\n ],\n + \ \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n + \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n + \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n + \ \"bmukkUnrated\"\n ],\n \"description\": \"The + video's rating from the Austrian Board of Media Classification (Bundesministerium + f\xFCr Unterricht, Kunst und Kultur).\"\n },\n \"egfilmRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n + \ \"18\",\n \"BN\",\n \"\"\n ],\n + \ \"description\": \"The video's rating in Egypt.\",\n \"type\": + \"string\",\n \"enum\": [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n + \ \"egfilm18\",\n \"egfilmBn\",\n \"egfilmUnrated\"\n + \ ]\n },\n \"fcbmRating\": {\n \"enum\": [\n + \ \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n + \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n + \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n + \ \"fcbmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n + \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n + \ \"18PL\",\n \"\"\n ],\n \"description\": + \"The video's rating from Malaysia's Film Censorship Board.\",\n \"type\": + \"string\"\n },\n \"nfvcbRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n + \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n + \ \"\"\n ],\n \"enum\": [\n \"nfvcbUnspecified\",\n + \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n + \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n + \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"description\": + \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n + \ \"type\": \"string\"\n },\n \"medietilsynetRating\": + {\n \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n + \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n + \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n + \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from Medietilsynet, + the Norwegian Media Authority.\",\n \"type\": \"string\"\n },\n + \ \"lsfRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"SU\",\n \"A\",\n \"BO\",\n \"13\",\n + \ \"R\",\n \"17\",\n \"D\",\n \"21\",\n + \ \"\"\n ],\n \"enum\": [\n \"lsfUnspecified\",\n + \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n + \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n + \ \"lsfUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from Indonesia's Lembaga Sensor + Film.\"\n },\n \"mccypRating\": {\n \"description\": + \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) + Media Council for Children and Young People.\",\n \"enum\": [\n \"mccypUnspecified\",\n + \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n + \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"djctqRating\": {\n \"description\": \"The video's + Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos + (DJCQT - Brazil) rating.\",\n \"enum\": [\n \"djctqUnspecified\",\n \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n @@ -11303,178 +10174,418 @@ interactions: \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ],\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n + \ \"djctq1618\",\n \"djctqUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n + \ \"14\",\n \"16\",\n \"18\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"fcoRating\": - {\n \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"enumDescriptions\": + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"mccaaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG\",\n \"12A\",\n \"12\",\n \"14 + - this rating was removed from the new classification structure introduced + in 2013.\",\n \"15\",\n \"16 - this rating was removed + from the new classification structure introduced in 2013.\",\n \"18\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from Malta's Film Age-Classification Board.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n + \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n + \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n + \ \"mccaa18\",\n \"mccaaUnrated\"\n ]\n },\n + \ \"mekuRating\": {\n \"enum\": [\n \"mekuUnspecified\",\n + \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n + \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"S\",\n + \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual + Institute).\",\n \"type\": \"string\"\n },\n \"rteRating\": + {\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n + \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n + \ ],\n \"description\": \"The video's rating from Ireland's + Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n + \ \"MA\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"kmrbRating\": {\n \"enum\": [\n \"kmrbUnspecified\",\n + \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n + \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n + \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 + \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 + \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's Korea Media Rating Board + (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. The KMRB rates + videos in South Korea.\"\n },\n \"fskRating\": {\n \"description\": + \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) + rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK + 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n + \ ],\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n + \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n + \ \"fskUnrated\"\n ]\n },\n \"oflcRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n + \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n + \ \"RP16\",\n \"RP18\"\n ],\n \"enum\": + [\n \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n + \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n + \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n + \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n + \ ],\n \"description\": \"The video's Office of Film and + Literature Classification (OFLC - New Zealand) rating.\",\n \"type\": + \"string\"\n },\n \"rtcRating\": {\n \"description\": + \"The video's General Directorate of Radio, Television and Cinematography + (Mexico) rating.\",\n \"enum\": [\n \"rtcUnspecified\",\n + \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n + \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n + \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n + \ \"D\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"moctwRating\": {\n \"enum\": [\n \"moctwUnspecified\",\n + \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n + \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n + \ \"moctwR15\"\n ],\n \"description\": \"The video's + rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n + \ \"R-12\",\n \"R-15\"\n ]\n },\n \"agcomRating\": + {\n \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n + \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n + \ \"description\": \"The video's rating from Italy's Autorit\xE0 per + le Garanzie nelle Comunicazioni (AGCOM).\",\n \"type\": \"string\"\n + \ },\n \"smsaRating\": {\n \"description\": \"The video's + rating from Statens medier\xE5d (Sweden's National Media Council).\",\n \"enum\": + [\n \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n + \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"All + ages\",\n \"7\",\n \"11\",\n \"15\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"mtrcbRating\": + {\n \"type\": \"string\",\n \"description\": \"The video's + rating from the Movie and Television Review and Classification Board (Philippines).\",\n + \ \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n + \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n + \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n + \ \"X\",\n \"\"\n ]\n },\n \"cccRating\": + {\n \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n + \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n + \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"description\": + \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Todo espectador\",\n + \ \"6+ - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n + \ \"18+\",\n \"18+ - contenido excesivamente violento\",\n + \ \"18+ - contenido pornogr\xE1fico\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"incaaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 + (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para + mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 + a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n + condicionada)\",\n \"\"\n ],\n \"enum\": [\n + \ \"incaaUnspecified\",\n \"incaaAtp\",\n \"incaaSam13\",\n + \ \"incaaSam16\",\n \"incaaSam18\",\n \"incaaC\",\n + \ \"incaaUnrated\"\n ],\n \"description\": \"The + video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) + rating.\",\n \"type\": \"string\"\n },\n \"mpaaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n + \ \"! X\",\n \"\"\n ],\n \"description\": + \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enum\": + [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n + \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n + \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"cbfcRating\": {\n \"enum\": [\n + \ \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n + \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n + \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A + 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n + \ \"S\",\n \"\"\n ],\n \"description\": + \"The video's Central Board of Film Certification (CBFC - India) rating.\"\n + \ },\n \"nfrcRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"A\",\n \"B\",\n \"C\",\n + \ \"D\",\n \"X\",\n \"\"\n ],\n \"enum\": + [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n + \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Bulgarian National Film Center.\"\n },\n + \ \"mdaRating\": {\n \"enum\": [\n \"mdaUnspecified\",\n + \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n + \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n + \ \"mdaUnrated\"\n ],\n \"description\": \"The + video's rating from Singapore's Media Development Authority (MDA) and, specifically, + it's Board of Film Censors (BFC).\",\n \"enumDescriptions\": [\n + \ \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n + \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"catvfrRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n + \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n + \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"type\": + \"string\",\n \"description\": \"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.\"\n },\n \"ytRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n + \ \"description\": \"A rating that YouTube uses to identify age-restricted + content.\",\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n + \ ]\n },\n \"pefilmRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n + \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n + \ \"pefilmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n + \ \"18\",\n \"\"\n ],\n \"description\": + \"The video's rating in Peru.\"\n },\n \"cnaRating\": {\n \"description\": + \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI + (CNA).\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"18+\",\n \"\"\n ],\n + \ \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n + \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n + \ \"cnaUnrated\"\n ]\n },\n \"eefilmRating\": + {\n \"description\": \"The video's rating in Estonia.\",\n \"type\": + \"string\",\n \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n + \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n + \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n + \ \"eefilmK16\",\n \"eefilmUnrated\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Pere\",\n + \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n + \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n + \ ]\n },\n \"rcnofRating\": {\n \"enum\": [\n + \ \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n + \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n + \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"description\": + \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee + of the National Office of Film.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"czfilmRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n + \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n + \ \"czfilmUnrated\"\n ],\n \"description\": \"The + video's rating in the Czech Republic.\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n + \ \"18\",\n \"\"\n ]\n },\n \"fpbRatingReasons\": + {\n \"type\": \"array\",\n \"description\": \"Reasons that + explain why the video received its FPB (South Africa) rating.\",\n \"items\": + {\n \"enumDescriptions\": [\n \"\",\n \"South + Africa rating content descriptors.\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n + \ \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n + \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n + \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n + \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n + \ \"fpbImitativeActsTechniques\"\n ]\n }\n + \ },\n \"fcoRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n \ \"II\",\n \"III\",\n \"\"\n ],\n + \ \"description\": \"The video's rating from Hong Kong's Office for + Film, Newspaper and Article Administration.\",\n \"enum\": [\n \"fcoUnspecified\",\n + \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n + \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n + \ ]\n },\n \"ecbmctRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n + \ \"ecbmct7a\",\n \"ecbmct7plus\",\n \"ecbmct13a\",\n + \ \"ecbmct13plus\",\n \"ecbmct15a\",\n \"ecbmct15plus\",\n + \ \"ecbmct18plus\",\n \"ecbmctUnrated\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n + \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n + \ ],\n \"description\": \"Rating system in Turkey - Evaluation + and Classification Board of the Ministry of Culture and Tourism\"\n },\n + \ \"nmcRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n + \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n + \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n + \ ],\n \"description\": \"The National Media Council ratings + system for United Arab Emirates.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"PG-13\",\n \"PG-15\",\n + \ \"15+\",\n \"18+\",\n \"18TC\",\n \"\"\n + \ ]\n },\n \"cscfRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n + \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n + \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n + \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"description\": \"The video's rating from Luxembourg's Commission + de surveillance de la classification des films (CSCF).\"\n },\n \"ifcoRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n + \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See + the IFCO website for more information.\",\n \"enum\": [\n \"ifcoUnspecified\",\n + \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n + \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n + \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n + \ ]\n },\n \"smaisRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"L\",\n + \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"enum\": [\n + \ \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n + \ \"smais12\",\n \"smais14\",\n \"smais16\",\n + \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"description\": + \"The video's rating in Iceland.\"\n },\n \"menaMpaaRating\": + {\n \"description\": \"The rating system for MENA countries, a clone + of MPAA. It is needed to prevent titles go live w/o additional QC check, since + some of them can be inappropriate for the countries at all. See b/33408548 + for more details.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n + \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n + \ ],\n \"enum\": [\n \"menaMpaaUnspecified\",\n + \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n + \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n + \ \"type\": \"string\"\n },\n \"skfilmRating\": {\n + \ \"description\": \"The video's rating in Slovakia.\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n + \ \"P8\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n + \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n + \ \"skfilmUnrated\"\n ]\n },\n \"anatelRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"F\",\n + \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n + \ \"R\",\n \"A\",\n \"\"\n ],\n \"enum\": + [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n + \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n + \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for + Chilean television.\"\n },\n \"grfilmRating\": {\n \"enum\": + [\n \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n + \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n + \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"K\",\n + \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n + \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n + \ \"description\": \"The video's rating in Greece.\",\n \"type\": + \"string\"\n },\n \"nbcplRating\": {\n \"enum\": [\n + \ \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n + \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n + \ \"nbcplUnrated\"\n ],\n \"description\": \"The + video's rating in Poland.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"fmocRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"U\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"\"\n + \ ],\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n + \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n + \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"This property has been deprecated. Use the contentDetails.contentRating.cncRating + instead.\"\n },\n \"mocRating\": {\n \"enum\": [\n + \ \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n + \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n + \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n + \ \"Banned\",\n \"\"\n ]\n },\n \"nkclvRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n + \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n + \ \"nkclvUnrated\"\n ],\n \"description\": \"The + video's rating from the Nacion\xE3lais Kino centrs (National Film Centre of + Latvia).\"\n },\n \"nbcRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n + \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from the Maldives National Bureau of Classification.\",\n \"enum\": + [\n \"nbcUnspecified\",\n \"nbcG\",\n \"nbcPg\",\n + \ \"nbc12plus\",\n \"nbc15plus\",\n \"nbc18plus\",\n + \ \"nbc18plusr\",\n \"nbcPu\",\n \"nbcUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"fpbRating\": + {\n \"description\": \"The video's rating from South Africa's Film + and Publication Board.\",\n \"enum\": [\n \"fpbUnspecified\",\n + \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n + \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n + \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n + \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n + \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n + \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n + \ ],\n \"type\": \"string\"\n },\n \"catvRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n + \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"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.\",\n + \ \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n + \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n + \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n + \ \"catvE\"\n ]\n },\n \"cceRating\": {\n \ \"type\": \"string\",\n \"description\": \"The video's - rating from Hong Kong's Office for Film, Newspaper and Article Administration.\"\n - \ },\n \"agcomRating\": {\n \"description\": \"The video's - rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n - \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"lsfRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"lsfUnspecified\",\n - \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n - \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n - \ \"lsfUnrated\"\n ],\n \"description\": \"The - video's rating from Indonesia's Lembaga Sensor Film.\"\n },\n \"eirinRating\": - {\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ],\n \"description\": \"The - video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n + rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"4\",\n + \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\",\n \"14\"\n ],\n \"enum\": [\n + \ \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n + \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n + \ \"cceUnrated\",\n \"cceM14\"\n ]\n },\n + \ \"resorteviolenciaRating\": {\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n + \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n + \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The video's rating in Venezuela.\"\n },\n \"kijkwijzerRating\": + {\n \"description\": \"The video's NICAM/Kijkwijzer rating from the + Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n + \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n + \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n + \ \"kijkwijzerUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n + \ \"12\",\n \"16\",\n \"\",\n \"\"\n + \ ]\n },\n \"eirinRating\": {\n \"description\": + \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"eirinUnspecified\",\n + \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n + \ \"eirinR18plus\",\n \"eirinUnrated\"\n ],\n \ \"enumDescriptions\": [\n \"\",\n \"G\",\n \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"rtcRating\": - {\n \"description\": \"The video's General Directorate of Radio, - Television and Cinematography (Mexico) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"rtcUnspecified\",\n - \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n - \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n - \ ]\n },\n \"kfcbRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n - \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n - \ \"kfcbUnrated\"\n ],\n \"description\": \"The - video's rating from the Kenya Film Classification Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"incaaRating\": - {\n \"description\": \"The video's INCAA (Instituto Nacional de Cine - y Artes Audiovisuales - Argentina) rating.\",\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"ecbmctRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"7A\",\n \"7+\",\n \"13A\",\n - \ \"13+\",\n \"15A\",\n \"15+\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"Rating system in Turkey - Evaluation and Classification Board of the Ministry - of Culture and Tourism\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ]\n },\n \"mpaaRating\": {\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enum\": - [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n - \ \"! X\",\n \"\"\n ]\n },\n \"cnaRating\": - {\n \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"description\": \"The - video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AP\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"18+\",\n \"\"\n ]\n },\n \"pefilmRating\": + \ ]\n },\n \"ilfilmRating\": {\n \"description\": + \"The video's rating in Israel.\",\n \"enum\": [\n \"ilfilmUnspecified\",\n + \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n + \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n + \ \"16\",\n \"18\",\n \"\"\n ]\n + \ },\n \"russiaRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n + \ \"16+\",\n \"18+\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"russiaUnspecified\",\n + \ \"russia0\",\n \"russia6\",\n \"russia12\",\n + \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n + \ ],\n \"description\": \"The video's National Film Registry + of the Russian Federation (MKRF - Russia) rating.\"\n },\n \"icaaRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"description\": - \"The video's rating in Peru.\"\n },\n \"mdaRating\": {\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ],\n \"enum\": - [\n \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n - \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n - \ \"mdaR21\",\n \"mdaUnrated\"\n ]\n },\n - \ \"fmocRating\": {\n \"description\": \"This property has - been deprecated. Use the contentDetails.contentRating.cncRating instead.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ]\n },\n \"cicfRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"description\": - \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\"\n - \ },\n \"bfvcRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ],\n \"description\": \"The video's rating from Thailand's - Board of Film and Video Censors.\"\n },\n \"chfilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Switzerland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"0\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"chfilmUnspecified\",\n \"chfilm0\",\n \"chfilm6\",\n - \ \"chfilm12\",\n \"chfilm16\",\n \"chfilm18\",\n - \ \"chfilmUnrated\"\n ]\n },\n \"mibacRating\": - {\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"description\": \"The - video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali e - del Turismo (Italy).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"grfilmRating\": - {\n \"description\": \"The video's rating in Greece.\",\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ],\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"cscfRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"description\": \"The video's rating from Luxembourg's - Commission de surveillance de la classification des films (CSCF).\"\n },\n - \ \"csaRating\": {\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from France's - Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\"\n - \ },\n \"smaisRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\",\n - \ \"type\": \"string\"\n },\n \"acbRating\": {\n \"enumDescriptions\": + \ \"APTA\",\n \"7\",\n \"12\",\n \"13\",\n + \ \"16\",\n \"18\",\n \"X\",\n \"\"\n + \ ],\n \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n + \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n + \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n + \ \"icaaUnrated\"\n ],\n \"description\": \"The + video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA + - Spain) rating.\"\n },\n \"acbRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n + \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n + \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n + \ \"acbUnrated\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n \"Programs that have been given a P classification by the Australian Communications and Media Authority. These programs are intended for preschool children.\",\n \"Programs @@ -11484,986 +10595,1872 @@ interactions: \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n \ ],\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"acbUnspecified\",\n - \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n - \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n - \ \"acbR18plus\",\n \"acbUnrated\"\n ]\n },\n - \ \"medietilsynetRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n + ACMA ratings are used to classify children's television programming.\"\n }\n + \ },\n \"description\": \"Ratings schemes. The country-specific ratings + are mostly for movies and shows. LINT.IfChange\",\n \"type\": \"object\"\n + \ },\n \"ChannelConversionPings\": {\n \"type\": \"object\",\n \"id\": + \"ChannelConversionPings\",\n \"properties\": {\n \"pings\": {\n + \ \"type\": \"array\",\n \"description\": \"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.\",\n + \ \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n + \ }\n }\n },\n \"description\": \"The conversionPings + object encapsulates information about conversion pings that need to be respected + by the channel.\"\n },\n \"LiveChatMessageDeletedDetails\": {\n \"id\": + \"LiveChatMessageDeletedDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"deletedMessageId\": {\n \"type\": \"string\"\n }\n + \ }\n },\n \"LiveChatModeratorSnippet\": {\n \"properties\": + {\n \"moderatorDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n + \ \"description\": \"Details about the moderator.\"\n },\n + \ \"liveChatId\": {\n \"description\": \"The ID of the live + chat this moderator can act on.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"LiveChatModeratorSnippet\",\n \"type\": \"object\"\n + \ },\n \"CommentThreadReplies\": {\n \"type\": \"object\",\n \"id\": + \"CommentThreadReplies\",\n \"description\": \"Comments written in (direct + or indirect) reply to the top level comment.\",\n \"properties\": {\n + \ \"comments\": {\n \"items\": {\n \"$ref\": \"Comment\"\n + \ },\n \"type\": \"array\",\n \"description\": \"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.\"\n }\n }\n },\n \"SuperChatEventSnippet\": + {\n \"id\": \"SuperChatEventSnippet\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"supporterDetails\": {\n \"$ref\": + \"ChannelProfileDetails\",\n \"description\": \"Details about the + supporter.\"\n },\n \"messageType\": {\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The tier for the paid message, which is based on the amount of money spent + to purchase the message.\"\n },\n \"superStickerMetadata\": + {\n \"description\": \"If this event is a Super Sticker event, this + field will contain metadata about the Super Sticker.\",\n \"$ref\": + \"SuperStickerMetadata\"\n },\n \"commentText\": {\n \"type\": + \"string\",\n \"description\": \"The text contents of the comment + left by the user.\"\n },\n \"displayString\": {\n \"description\": + \"A rendered string that displays the purchase amount and currency (e.g., + \\\"$1.00\\\"). The string is rendered for the given language.\",\n \"type\": + \"string\"\n },\n \"amountMicros\": {\n \"format\": + \"uint64\",\n \"description\": \"The purchase amount, in micros of + the purchase currency. e.g., 1 is represented as 1000000.\",\n \"type\": + \"string\"\n },\n \"isSuperStickerEvent\": {\n \"description\": + \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n + \ },\n \"channelId\": {\n \"description\": \"Channel + id where the event occurred.\",\n \"type\": \"string\"\n },\n + \ \"createdAt\": {\n \"type\": \"string\",\n \"description\": + \"The date and time when the event occurred.\",\n \"format\": \"date-time\"\n + \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the purchase was made. ISO 4217.\"\n }\n }\n + \ },\n \"RelatedEntity\": {\n \"properties\": {\n \"entity\": + {\n \"$ref\": \"Entity\"\n }\n },\n \"id\": \"RelatedEntity\",\n + \ \"type\": \"object\"\n },\n \"VideoMonetizationDetails\": {\n + \ \"type\": \"object\",\n \"id\": \"VideoMonetizationDetails\",\n + \ \"description\": \"Details about monetization of a YouTube Video.\",\n + \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n + \ \"description\": \"The value of access indicates whether the video + can be monetized or not.\"\n }\n }\n },\n \"LocalizedString\": + {\n \"properties\": {\n \"language\": {\n \"type\": \"string\"\n + \ },\n \"value\": {\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"LocalizedString\",\n \"type\": \"object\"\n + \ },\n \"LiveChatSuperStickerDetails\": {\n \"id\": \"LiveChatSuperStickerDetails\",\n + \ \"properties\": {\n \"currency\": {\n \"type\": \"string\",\n + \ \"description\": \"The currency in which the purchase was made.\"\n + \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n + \ \"description\": \"A rendered string that displays the fund amount + and currency to the user.\"\n },\n \"amountMicros\": {\n \"description\": + \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n + \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n + \ \"superStickerMetadata\": {\n \"description\": \"Information + about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n + \ },\n \"tier\": {\n \"format\": \"uint32\",\n \"type\": + \"integer\",\n \"description\": \"The tier in which the amount belongs. + Lower amounts belong to lower tiers. The lowest tier is 1.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"LiveBroadcast\": {\n \"properties\": + {\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n + \ \"default\": \"youtube#liveBroadcast\"\n },\n \"statistics\": + {\n \"description\": \"The statistics object contains info about + the event's current stats. These include concurrent viewers and total chat + count. Statistics can change (in either direction) during the lifetime of + an event. Statistics are only returned while the event is live.\",\n \"$ref\": + \"LiveBroadcastStatistics\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube assigns + to uniquely identify the broadcast.\",\n \"type\": \"string\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n }\n },\n \"contentDetails\": {\n \"$ref\": + \"LiveBroadcastContentDetails\",\n \"description\": \"The contentDetails + object contains information about the event's video content, such as whether + the content can be shown in an embedded video player or if it will be archived + and therefore available for viewing after the event has concluded.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"LiveBroadcastSnippet\",\n \"description\": + \"The snippet object contains basic details about the event, including its + title, description, start time, and end time.\"\n },\n \"status\": + {\n \"description\": \"The status object contains information about + the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n }\n + \ },\n \"description\": \"A *liveBroadcast* resource represents an + event that will be streamed, via live video, on YouTube.\",\n \"id\": + \"LiveBroadcast\",\n \"type\": \"object\"\n },\n \"LiveStreamHealthStatus\": + {\n \"id\": \"LiveStreamHealthStatus\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"configurationIssues\": {\n \"description\": + \"The configurations issues on this stream\",\n \"items\": {\n \"$ref\": + \"LiveStreamConfigurationIssue\"\n },\n \"type\": \"array\"\n + \ },\n \"lastUpdateTimeSeconds\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The last time + this status was updated (in seconds)\"\n },\n \"status\": {\n + \ \"enum\": [\n \"good\",\n \"ok\",\n \"bad\",\n + \ \"noData\",\n \"revoked\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The status code + of this stream\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"PlaylistLocalization\": {\n \"properties\": {\n \"title\": + {\n \"description\": \"The localized strings for playlist's title.\",\n + \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": + \"The localized strings for playlist's description.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"PlaylistLocalization\",\n + \ \"description\": \"Playlist localization setting\",\n \"type\": + \"object\"\n },\n \"TokenPagination\": {\n \"description\": \"Stub + token pagination template to suppress results.\",\n \"properties\": {},\n + \ \"type\": \"object\",\n \"id\": \"TokenPagination\"\n },\n \"LiveChatBan\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatBan\",\n \"description\": + \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\",\n + \ \"properties\": {\n \"snippet\": {\n \"description\": + \"The `snippet` object contains basic details about the ban.\",\n \"$ref\": + \"LiveChatBanSnippet\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube assigns + to uniquely identify the ban.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#liveChatBan\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"Cuepoint\": + {\n \"properties\": {\n \"walltimeMs\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + wall clock time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms + and walltime_ms may be set at a time.\"\n },\n \"id\": {\n \"description\": + \"The identifier for cuepoint resource.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"type\": \"string\"\n },\n + \ \"durationSecs\": {\n \"type\": \"integer\",\n \"description\": + \"The duration of this cuepoint.\",\n \"format\": \"uint32\"\n },\n + \ \"insertionOffsetTimeMs\": {\n \"description\": \"The time + when the cuepoint should be inserted by offset to the broadcast actual start + time.\",\n \"format\": \"int64\",\n \"type\": \"string\"\n + \ },\n \"cueType\": {\n \"enumDescriptions\": [\n \"\",\n \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"description\": \"The video's rating from Medietilsynet, the Norwegian - Media Authority.\"\n },\n \"cncRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ],\n - \ \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ],\n \"description\": \"Rating system in France - Commission - de classification cinematographique\"\n },\n \"kmrbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"enum\": - [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"description\": \"The - video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"type\": \"string\"\n - \ },\n \"russiaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"description\": - \"The video's National Film Registry of the Russian Federation (MKRF - Russia) - rating.\",\n \"type\": \"string\"\n },\n \"anatelRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ],\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\",\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"catvfrRating\": {\n \"enum\": [\n - \ \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n - \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n - \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"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.\"\n },\n \"ytRating\": - {\n \"type\": \"string\",\n \"description\": \"A rating - that YouTube uses to identify age-restricted content.\",\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"mekuRating\": {\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti - (National Audiovisual Institute).\"\n },\n \"skfilmRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Slovakia.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ]\n },\n \"catvRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"C\",\n - \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n - \ \"18+\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"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.\",\n \"enum\": - [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ],\n \"type\": \"string\"\n },\n \"bmukkRating\": - {\n \"description\": \"The video's rating from the Austrian Board - of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst und Kultur).\",\n - \ \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"mcstRating\": {\n \"enum\": [\n - \ \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating system for Vietnam - MCST\",\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ]\n },\n \"fcbmRating\": {\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"enum\": - [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"kijkwijzerRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\",\n \"enum\": - [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ]\n },\n \"mccaaRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Malta's - Film Age-Classification Board.\"\n }\n }\n },\n \"InvideoBranding\": - {\n \"description\": \"LINT.IfChange Describes an invideo branding.\",\n - \ \"properties\": {\n \"timing\": {\n \"description\": - \"The temporal position within the video where watermark will be displayed.\",\n - \ \"$ref\": \"InvideoTiming\"\n },\n \"imageBytes\": - {\n \"description\": \"The bytes the uploaded image. Only used in - api to youtube communication.\",\n \"format\": \"byte\",\n \"type\": - \"string\"\n },\n \"imageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The url of the uploaded image. Only used in apiary - to api communication.\"\n },\n \"position\": {\n \"$ref\": - \"InvideoPosition\",\n \"description\": \"The spatial position within - the video where the branding watermark will be displayed.\"\n },\n - \ \"targetChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel to which this branding links. If not present it defaults to - the current channel.\"\n }\n },\n \"id\": \"InvideoBranding\",\n - \ \"type\": \"object\"\n },\n \"ThirdPartyLinkStatus\": {\n \"properties\": - {\n \"linkStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ]\n }\n - \ },\n \"description\": \"The third-party link status object contains - information about the status of the link.\",\n \"id\": \"ThirdPartyLinkStatus\",\n - \ \"type\": \"object\"\n },\n \"VideoCategoryListResponse\": {\n - \ \"id\": \"VideoCategoryListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ]\n + \ }\n },\n \"description\": \"Note that there may be a 5-second + end-point resolution issue. For instance, if a cuepoint comes in for 22:03:27, + we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. This is an + artifact of HLS.\",\n \"type\": \"object\",\n \"id\": \"Cuepoint\"\n + \ },\n \"ChannelSectionListResponse\": {\n \"properties\": {\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#channelSectionListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"description\": \"A list of ChannelSections + that match the request criteria.\",\n \"type\": \"array\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"ChannelSectionListResponse\"\n + \ },\n \"SubscriptionContentDetails\": {\n \"properties\": {\n \"totalItemCount\": + {\n \"format\": \"uint32\",\n \"description\": \"The approximate + number of items that the subscription points to.\",\n \"type\": \"integer\"\n + \ },\n \"newItemCount\": {\n \"description\": \"The + number of new items in the subscription since its content was last read.\",\n + \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n + \ \"activityType\": {\n \"description\": \"The type of activity + this subscription is for (only uploads, everything).\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n + \ \"all\",\n \"uploads\"\n ]\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"SubscriptionContentDetails\",\n + \ \"description\": \"Details about the content to witch a subscription + refers.\"\n },\n \"AccessPolicy\": {\n \"properties\": {\n \"exception\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"A list of region codes that identify countries + where the default policy do not apply.\",\n \"type\": \"array\"\n + \ },\n \"allowed\": {\n \"description\": \"The value + of allowed indicates whether the access to the policy is allowed or denied + by default.\",\n \"type\": \"boolean\"\n }\n },\n \"id\": + \"AccessPolicy\",\n \"description\": \"Rights management policy for YouTube + resources.\",\n \"type\": \"object\"\n },\n \"ThirdPartyLink\": + {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource\"\n },\n \"status\": + {\n \"description\": \"The status object contains information about + the status of the link.\",\n \"$ref\": \"ThirdPartyLinkStatus\"\n + \ },\n \"linkingToken\": {\n \"description\": \"The + linking_token identifies a YouTube account and channel with which the third + party account is linked.\",\n \"type\": \"string\"\n },\n + \ \"snippet\": {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n \"description\": + \"The snippet object contains basic details about the third- party account + link.\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n + \ \"default\": \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"ThirdPartyLink\",\n + \ \"description\": \"A *third party account link* resource represents + a link between a YouTube account or a channel and an account on a third-party + service.\"\n },\n \"ImageSettings\": {\n \"description\": \"Branding + properties for images associated with the channel.\",\n \"properties\": + {\n \"backgroundImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n + \ \"description\": \"The URL for the background image shown on the + video watch page. The image should be 1200px by 615px, with a maximum file + size of 128k.\"\n },\n \"bannerMobileMediumHdImageUrl\": {\n + \ \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size medium/high resolution (960x263).\"\n },\n \"bannerTvMediumImageUrl\": + {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n + \ \"type\": \"string\"\n },\n \"trackingImageUrl\": + {\n \"description\": \"The URL for a 1px by 1px tracking pixel that + can be used to collect statistics for views of the channel or video pages.\",\n + \ \"type\": \"string\"\n },\n \"watchIconImageUrl\": + {\n \"type\": \"string\"\n },\n \"bannerImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Desktop size (1060x175).\"\n },\n \"bannerTvHighImageUrl\": + {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n + \ \"type\": \"string\"\n },\n \"bannerTabletLowImageUrl\": + {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n + \ \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": + {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n + \ \"type\": \"string\"\n },\n \"bannerMobileHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size high resolution (1280x360).\"\n },\n \"bannerTabletImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size (1707x283).\"\n },\n \"smallBrandedBannerImageImapScript\": + {\n \"description\": \"The image map script for the small banner + image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTvLowImageUrl\": + {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n + \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": + {\n \"description\": \"The URL for the 640px by 70px banner image + that appears below the video player in the default view of the video watch + page. The URL for the image that appears above the top-left corner of the + video player. This is a 25-pixel-high image with a flexible width that cannot + exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n + \ \"bannerExternalUrl\": {\n \"type\": \"string\",\n \"description\": + \"This is generated when a ChannelBanner.Insert request has succeeded for + the given channel.\"\n },\n \"bannerTvImageUrl\": {\n \"description\": + \"Banner image. TV size extra high resolution (2120x1192).\",\n \"type\": + \"string\"\n },\n \"bannerMobileImageUrl\": {\n \"type\": + \"string\",\n \"description\": \"Banner image. Mobile size (640x175).\"\n + \ },\n \"bannerMobileExtraHdImageUrl\": {\n \"type\": + \"string\",\n \"description\": \"Banner image. Mobile size high resolution + (1440x395).\"\n },\n \"largeBrandedBannerImageImapScript\": + {\n \"description\": \"The image map script for the large banner + image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTabletExtraHdImageUrl\": + {\n \"description\": \"Banner image. Tablet size extra high resolution + (2560x424).\",\n \"type\": \"string\"\n },\n \"bannerTabletHdImageUrl\": + {\n \"description\": \"Banner image. Tablet size high resolution + (2276x377).\",\n \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": + {\n \"description\": \"The URL for the 854px by 70px image that appears + below the video player in the expanded video view of the video watch page.\",\n + \ \"$ref\": \"LocalizedProperty\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"ImageSettings\"\n },\n \"ChannelSectionTargeting\": + {\n \"type\": \"object\",\n \"description\": \"ChannelSection targeting + setting.\",\n \"properties\": {\n \"regions\": {\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"The region the channel section is targeting.\"\n + \ },\n \"countries\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"The country the channel + section is targeting.\",\n \"type\": \"array\"\n },\n \"languages\": + {\n \"type\": \"array\",\n \"description\": \"The language + the channel section is targeting.\",\n \"items\": {\n \"type\": + \"string\"\n }\n }\n },\n \"id\": \"ChannelSectionTargeting\"\n + \ },\n \"VideoLocalization\": {\n \"type\": \"object\",\n \"description\": + \"Localized versions of certain video properties (e.g. title).\",\n \"id\": + \"VideoLocalization\",\n \"properties\": {\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"Localized + version of the video's description.\"\n },\n \"title\": {\n + \ \"description\": \"Localized version of the video's title.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"PlaylistItemStatus\": + {\n \"type\": \"object\",\n \"properties\": {\n \"privacyStatus\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"This resource's + privacy status.\",\n \"type\": \"string\",\n \"enum\": [\n + \ \"public\",\n \"unlisted\",\n \"private\"\n + \ ]\n }\n },\n \"id\": \"PlaylistItemStatus\",\n + \ \"description\": \"Information about the playlist item's privacy status.\"\n + \ },\n \"IngestionInfo\": {\n \"type\": \"object\",\n \"id\": + \"IngestionInfo\",\n \"properties\": {\n \"rtmpsIngestionAddress\": + {\n \"type\": \"string\",\n \"description\": \"This ingestion + url may be used instead of ingestionAddress in order to stream via RTMPS. + Not applicable to non-RTMP streams.\"\n },\n \"rtmpsBackupIngestionAddress\": + {\n \"type\": \"string\",\n \"description\": \"This ingestion + url may be used instead of backupIngestionAddress in order to stream via RTMPS. + Not applicable to non-RTMP streams.\"\n },\n \"ingestionAddress\": + {\n \"type\": \"string\",\n \"description\": \"The primary + ingestion URL that you should use to stream video to YouTube. You must stream + video to this URL. Depending on which application or tool you use to encode + your video stream, you may need to enter the stream URL and stream name separately + or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* + \"\n },\n \"backupIngestionAddress\": {\n \"type\": + \"string\",\n \"description\": \"The backup ingestion URL that you + should use to stream video to YouTube. You have the option of simultaneously + streaming the content that you are sending to the ingestionAddress to this + URL.\"\n },\n \"streamName\": {\n \"description\": + \"The stream name that YouTube assigns to the video stream.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Describes information + necessary for ingesting an RTMP, HTTP, or SRT stream.\"\n },\n \"VideoLiveStreamingDetails\": + {\n \"id\": \"VideoLiveStreamingDetails\",\n \"type\": \"object\",\n + \ \"description\": \"Details about the live streaming metadata.\",\n \"properties\": + {\n \"scheduledStartTime\": {\n \"description\": \"The time + that the broadcast is scheduled to begin.\",\n \"type\": \"string\",\n + \ \"format\": \"date-time\"\n },\n \"activeLiveChatId\": + {\n \"description\": \"The ID of the currently active live chat attached + to this video. This field is filled only if the video is a currently live + broadcast that has live chat. Once the broadcast transitions to complete this + field will be removed and the live chat closed down. For persistent broadcasts + that live chat id will no longer be tied to this video but rather to the new + video being displayed at the persistent page.\",\n \"type\": \"string\"\n + \ },\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n + \ \"description\": \"The time that the broadcast is scheduled to end. + If the value is empty or the property is not present, then the broadcast is + scheduled to contiue indefinitely.\",\n \"type\": \"string\"\n },\n + \ \"concurrentViewers\": {\n \"description\": \"The number + of viewers currently watching the broadcast. The property and its value will + be present if the broadcast has current viewers and the broadcast owner has + not hidden the viewcount for the video. Note that YouTube stops tracking the + number of concurrent viewers for a broadcast when the broadcast ends. So, + this property would not identify the number of viewers watching an archived + video of a live broadcast that already ended.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n },\n \"actualEndTime\": {\n + \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The time that the broadcast actually ended. This value will not be available + until the broadcast is over.\"\n },\n \"actualStartTime\": {\n + \ \"type\": \"string\",\n \"description\": \"The time that + the broadcast actually started. This value will not be available until the + broadcast begins.\",\n \"format\": \"date-time\"\n }\n }\n + \ },\n \"ThirdPartyLinkListResponse\": {\n \"id\": \"ThirdPartyLinkListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"ThirdPartyLink\"\n }\n }\n }\n + \ },\n \"MembershipsLevelSnippet\": {\n \"type\": \"object\",\n + \ \"id\": \"MembershipsLevelSnippet\",\n \"properties\": {\n \"creatorChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The id of + the channel that's offering channel memberships.\"\n },\n \"levelDetails\": + {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details + about the pricing level.\"\n }\n }\n },\n \"ChannelToStoreLinkDetails\": + {\n \"properties\": {\n \"storeName\": {\n \"type\": + \"string\",\n \"description\": \"Name of the store.\"\n },\n + \ \"storeUrl\": {\n \"description\": \"Landing page of the + store.\",\n \"type\": \"string\"\n },\n \"merchantId\": + {\n \"description\": \"Google Merchant Center id of the store.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"ChannelToStoreLinkDetails\",\n \"type\": \"object\",\n + \ \"description\": \"Information specific to a store on a merchandising + platform linked to a YouTube channel.\"\n },\n \"LiveChatMessageListResponse\": + {\n \"id\": \"LiveChatMessageListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveChatMessageListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"LiveChatMessage\"\n },\n \"type\": + \"array\"\n },\n \"offlineAt\": {\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time when the underlying stream + went offline.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n + \ \"pollingIntervalMillis\": {\n \"type\": \"integer\",\n \"description\": + \"The amount of time the client should wait before polling again.\",\n \"format\": + \"uint32\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ }\n }\n },\n \"ChannelContentOwnerDetails\": {\n \"properties\": + {\n \"contentOwner\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the content owner linked to the channel.\"\n },\n \"timeLinked\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time when the channel was linked + to the content owner.\"\n }\n },\n \"description\": \"The + contentOwnerDetails object encapsulates channel data that is relevant for + YouTube Partners linked with the channel.\",\n \"id\": \"ChannelContentOwnerDetails\",\n + \ \"type\": \"object\"\n },\n \"LiveStreamListResponse\": {\n \"properties\": + {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"items\": {\n \"description\": \"A list of live + streams that match the request criteria.\",\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"LiveStream\"\n }\n + \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveStreamListResponse\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"default\": \"youtube#videoCategoryListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of video categories that can be associated - with YouTube videos. In this map, the video category ID is the map key, and - its value is the corresponding videoCategory resource.\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n }\n },\n \"nextPageToken\": + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LiveStreamListResponse\"\n },\n \"PlaylistListResponse\": + {\n \"properties\": {\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n + \ \"default\": \"youtube#playlistListResponse\"\n },\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"MemberSnippet\": - {\n \"id\": \"MemberSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"membershipsDetails\": {\n \"description\": \"Details - about the user's membership.\",\n \"$ref\": \"MembershipsDetails\"\n - \ },\n \"creatorChannelId\": {\n \"description\": \"The - id of the channel that's offering memberships.\",\n \"type\": \"string\"\n - \ },\n \"memberDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the member.\"\n }\n }\n - \ },\n \"VideoRating\": {\n \"id\": \"VideoRating\",\n \"properties\": - {\n \"videoId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ },\n \"rating\": {\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"type\": \"string\",\n \"description\": - \"Rating of a video.\"\n }\n },\n \"description\": \"Basic - details about rating of a video.\",\n \"type\": \"object\"\n },\n - \ \"CommentThreadReplies\": {\n \"type\": \"object\",\n \"description\": - \"Comments written in (direct or indirect) reply to the top level comment.\",\n - \ \"id\": \"CommentThreadReplies\",\n \"properties\": {\n \"comments\": - {\n \"description\": \"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.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Comment\"\n }\n - \ }\n }\n },\n \"VideoGetRatingResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"items\": {\n \"items\": - {\n \"$ref\": \"VideoRating\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of ratings that match the - request criteria.\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoGetRatingResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"VideoGetRatingResponse\"\n - \ },\n \"I18nLanguageSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\",\n \"id\": \"I18nLanguageSnippet\",\n \"properties\": {\n - \ \"name\": {\n \"description\": \"The human-readable name - of the language in the language itself.\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"description\": \"A short BCP-47 - code that uniquely identifies a language.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ActivityContentDetailsPromotedItem\": {\n - \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"Details about a resource which is being promoted.\",\n - \ \"properties\": {\n \"forecastingUrl\": {\n \"type\": - \"array\",\n \"description\": \"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.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"impressionUrl\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The list of impression - URLs. The client should ping all of these URLs to indicate that the user was - shown this promoted item.\"\n },\n \"adTag\": {\n \"description\": - \"The URL the client should fetch to request a promoted item.\",\n \"type\": - \"string\"\n },\n \"ctaType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"type\": \"string\"\n - \ },\n \"creativeViewUrl\": {\n \"description\": \"The - URL the client should ping to indicate that the user was shown this promoted - item.\",\n \"type\": \"string\"\n },\n \"destinationUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should direct the user to, if the user chooses to visit the advertiser's - website.\"\n },\n \"customCtaButtonText\": {\n \"description\": - \"The custom call-to-action button text. If specified, it will override the - default button text for the cta_type.\",\n \"type\": \"string\"\n - \ },\n \"descriptionText\": {\n \"description\": \"The - text description to accompany the promoted item.\",\n \"type\": \"string\"\n - \ },\n \"clickTrackingUrl\": {\n \"description\": \"The - URL the client should ping to indicate that the user clicked through on this - promoted item.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the promoted video.\"\n }\n }\n - \ },\n \"ChannelContentOwnerDetails\": {\n \"description\": \"The - contentOwnerDetails object encapsulates channel data that is relevant for - YouTube Partners linked with the channel.\",\n \"properties\": {\n \"contentOwner\": - {\n \"description\": \"The ID of the content owner linked to the - channel.\",\n \"type\": \"string\"\n },\n \"timeLinked\": - {\n \"description\": \"The date and time when the channel was linked - to the content owner.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ChannelContentOwnerDetails\",\n - \ \"type\": \"object\"\n },\n \"VideoTopicDetails\": {\n \"id\": - \"VideoTopicDetails\",\n \"properties\": {\n \"topicIds\": {\n - \ \"description\": \"A list of Freebase topic IDs that are centrally - associated with the video. These are topics that are centrally featured in - the video, and it can be said that the video is mainly about each of these. - You can retrieve information about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"relevantTopicIds\": {\n \"type\": - \"array\",\n \"description\": \"Similar to topic_id, except that - these topics are merely relevant to the video. These are topics that may be - mentioned in, or appear in the video. You can retrieve information about each - topic using Freebase Topic API.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"topicCategories\": {\n \"type\": - \"array\",\n \"description\": \"A list of Wikipedia URLs that provide - a high-level description of the video's content.\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"description\": - \"Freebase topic information related to the video.\",\n \"type\": \"object\"\n - \ },\n \"VideoAgeGating\": {\n \"type\": \"object\",\n \"id\": - \"VideoAgeGating\",\n \"properties\": {\n \"restricted\": {\n - \ \"description\": \"Age-restricted trailers. For redband trailers - and adult-rated video-games. Only users aged 18+ can view the content. The - the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\",\n \"type\": \"boolean\"\n },\n - \ \"videoGameRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"description\": - \"Video game rating, if any.\"\n },\n \"alcoholContent\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Indicates whether - or not the video has alcoholic beverage content. Only users of legal purchasing - age in a particular country, as identified by ICAP, can view the content.\"\n - \ }\n }\n },\n \"ActivityContentDetails\": {\n \"id\": - \"ActivityContentDetails\",\n \"properties\": {\n \"promotedItem\": - {\n \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\",\n \"$ref\": \"ActivityContentDetailsPromotedItem\"\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"description\": + \"A list of playlists that match the request criteria\",\n \"items\": + {\n \"$ref\": \"Playlist\"\n }\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"PlaylistListResponse\",\n + \ \"type\": \"object\"\n },\n \"CaptionSnippet\": {\n \"type\": + \"object\",\n \"id\": \"CaptionSnippet\",\n \"description\": \"Basic + details about a caption track, such as its language and name.\",\n \"properties\": + {\n \"audioTrackType\": {\n \"description\": \"The type of + audio track associated with the caption track.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"unknown\",\n \"primary\",\n \"commentary\",\n + \ \"descriptive\"\n ]\n },\n \"name\": {\n + \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"description\": \"The name of the + caption track. The name is intended to be visible to the user as an option + during playback.\",\n \"type\": \"string\"\n },\n \"lastUpdated\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time when the caption track was + last updated.\"\n },\n \"trackKind\": {\n \"type\": + \"string\",\n \"enum\": [\n \"standard\",\n \"ASR\",\n + \ \"forced\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The caption track's type.\"\n },\n \"isDraft\": {\n \"description\": + \"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. @mutable youtube.captions.insert + youtube.captions.update\",\n \"type\": \"boolean\"\n },\n + \ \"status\": {\n \"enum\": [\n \"serving\",\n \"syncing\",\n + \ \"failed\"\n ],\n \"description\": \"The caption + track's status.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"failureReason\": {\n \"description\": \"The + reason that YouTube failed to process the caption track. This property is + only present if the state property's value is failed.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"unknownFormat\",\n + \ \"unsupportedFormat\",\n \"processingFailed\"\n ]\n + \ },\n \"isLarge\": {\n \"type\": \"boolean\",\n \"description\": + \"Indicates whether the caption track uses large text for the vision-impaired. + The default value is false.\"\n },\n \"language\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"description\": \"The language of + the caption track. The property value is a BCP-47 language tag.\",\n \"type\": + \"string\"\n },\n \"isEasyReader\": {\n \"description\": + \"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.\",\n + \ \"type\": \"boolean\"\n },\n \"isCC\": {\n \"type\": + \"boolean\",\n \"description\": \"Indicates whether the track contains + closed captions for the deaf and hard of hearing. The default value is false.\"\n + \ },\n \"isAutoSynced\": {\n \"description\": \"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.\",\n + \ \"type\": \"boolean\"\n },\n \"videoId\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + uses to uniquely identify the video associated with the caption track. @mutable + youtube.captions.insert\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"ActivityContentDetailsPlaylistItem\": {\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n + \ \"type\": \"object\",\n \"description\": \"Information about a + new playlist item.\",\n \"properties\": {\n \"resourceId\": {\n + \ \"description\": \"The resourceId object contains information about + the resource that was added to the playlist.\",\n \"$ref\": \"ResourceId\"\n + \ },\n \"playlistId\": {\n \"type\": \"string\",\n \"description\": + \"The value that YouTube uses to uniquely identify the playlist.\"\n },\n + \ \"playlistItemId\": {\n \"type\": \"string\",\n \"description\": + \"ID of the item within the playlist.\"\n }\n }\n },\n \"InvideoPosition\": + {\n \"type\": \"object\",\n \"properties\": {\n \"cornerPosition\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n + \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"description\": + \"Describes in which corner of the video the visual widget will appear.\"\n + \ },\n \"type\": {\n \"type\": \"string\",\n \"enum\": + [\n \"corner\"\n ],\n \"enumDescriptions\": [\n + \ \"\"\n ],\n \"description\": \"Defines the position + type.\"\n }\n },\n \"description\": \"Describes the spatial + position of a visual widget inside a video. It is a union of various position + types, out of which only will be set one.\",\n \"id\": \"InvideoPosition\"\n + \ },\n \"MonitorStreamInfo\": {\n \"type\": \"object\",\n \"properties\": + {\n \"enableMonitorStream\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"type\": \"boolean\",\n \"description\": \"This value + determines whether the monitor stream is enabled for the broadcast. If the + monitor stream is enabled, then YouTube will broadcast the event content on + a special stream intended only for the broadcaster's consumption. The broadcaster + can use the stream to review the event content and also to identify the optimal + times to insert cuepoints. You need to set this value to true if you intend + to have a broadcast delay for your event. *Note:* This property cannot be + updated once the broadcast is in the testing or live state.\"\n },\n + \ \"embedHtml\": {\n \"description\": \"HTML code that embeds + a player that plays the monitor stream.\",\n \"type\": \"string\"\n + \ },\n \"broadcastStreamDelayMs\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"type\": \"integer\",\n \"description\": + \"If you have set the enableMonitorStream property to true, then this property + determines the length of the live broadcast delay.\",\n \"format\": + \"uint32\"\n }\n },\n \"description\": \"Settings and Info + of the monitor stream\",\n \"id\": \"MonitorStreamInfo\"\n },\n \"Caption\": + {\n \"description\": \"A *caption* resource represents a YouTube caption + track. A caption track is associated with exactly one YouTube video.\",\n + \ \"id\": \"Caption\",\n \"properties\": {\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.update\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the caption track.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#caption\",\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#caption\\\".\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"WatchSettings\": {\n \"id\": + \"WatchSettings\",\n \"properties\": {\n \"backgroundColor\": + {\n \"type\": \"string\",\n \"description\": \"The text + color for the video watch page's branded area.\"\n },\n \"featuredPlaylistId\": + {\n \"description\": \"An ID that uniquely identifies a playlist + that displays next to the video player.\",\n \"type\": \"string\"\n + \ },\n \"textColor\": {\n \"type\": \"string\",\n \"description\": + \"The background color for the video watch page's branded area.\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"Branding properties + for the watch. All deprecated.\"\n },\n \"VideoFileDetailsVideoStream\": + {\n \"type\": \"object\",\n \"description\": \"Information about + a video stream.\",\n \"properties\": {\n \"bitrateBps\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The video stream's bitrate, in bits per second.\"\n },\n \"frameRateFps\": + {\n \"format\": \"double\",\n \"description\": \"The video + stream's frame rate, in frames per second.\",\n \"type\": \"number\"\n + \ },\n \"vendor\": {\n \"type\": \"string\",\n \"description\": + \"A value that uniquely identifies a video vendor. Typically, the value is + a four-letter vendor code.\"\n },\n \"codec\": {\n \"type\": + \"string\",\n \"description\": \"The video codec that the stream + uses.\"\n },\n \"heightPixels\": {\n \"type\": \"integer\",\n + \ \"description\": \"The encoded video content's height in pixels.\",\n + \ \"format\": \"uint32\"\n },\n \"rotation\": {\n \"type\": + \"string\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n + \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n + \ ],\n \"description\": \"The amount that YouTube needs to + rotate the original source content to properly display the video.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"widthPixels\": {\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The encoded video content's width in pixels. You can calculate the video's + encoding aspect ratio as width_pixels / height_pixels.\"\n },\n \"aspectRatio\": + {\n \"format\": \"double\",\n \"description\": \"The video + content's display aspect ratio, which specifies the aspect ratio in which + the video should be displayed.\",\n \"type\": \"number\"\n }\n + \ },\n \"id\": \"VideoFileDetailsVideoStream\"\n },\n \"ActivityContentDetailsBulletin\": + {\n \"id\": \"ActivityContentDetailsBulletin\",\n \"description\": + \"Details about a channel bulletin post.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the resource associated with a bulletin post. @mutable youtube.activities.insert\"\n + \ }\n }\n },\n \"LiveChatFanFundingEventDetails\": {\n \"id\": + \"LiveChatFanFundingEventDetails\",\n \"properties\": {\n \"amountDisplayString\": + {\n \"type\": \"string\",\n \"description\": \"A rendered + string that displays the fund amount and currency to the user.\"\n },\n + \ \"currency\": {\n \"description\": \"The currency in which + the fund was made.\",\n \"type\": \"string\"\n },\n \"userComment\": + {\n \"description\": \"The comment added by the user to this fan + funding event.\",\n \"type\": \"string\"\n },\n \"amountMicros\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The amount of the fund.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"VideoProjectDetails\": {\n \"id\": \"VideoProjectDetails\",\n + \ \"description\": \"DEPRECATED. b/157517979: This part was never populated + after it was added. However, it sees non-zero traffic because there is generated + client code in the wild that refers to it [1]. We keep this field and do NOT + remove it because otherwise V3 would return an error when this part gets requested + [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"type\": \"object\",\n \"properties\": {}\n },\n \"ActivityContentDetails\": + {\n \"id\": \"ActivityContentDetails\",\n \"type\": \"object\",\n + \ \"description\": \"Details about the content of an activity: the video + that was shared, the channel that was subscribed to, etc.\",\n \"properties\": + {\n \"bulletin\": {\n \"description\": \"The bulletin object + contains details about a channel bulletin post. This object is only present + if the snippet.type is bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n + \ },\n \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n + \ \"description\": \"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.\"\n },\n \"upload\": {\n \"description\": + \"The upload object contains information about the uploaded video. This property + is only present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n \ },\n \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n \ \"description\": \"The playlistItem object contains information about a new playlist item. This property is only present if the snippet.type - is playlistItem.\"\n },\n \"social\": {\n \"$ref\": - \"ActivityContentDetailsSocial\",\n \"description\": \"The social - object contains details about a social network post. This property is only - present if the snippet.type is social.\"\n },\n \"upload\": - {\n \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\",\n - \ \"$ref\": \"ActivityContentDetailsUpload\"\n },\n \"like\": + is playlistItem.\"\n },\n \"comment\": {\n \"$ref\": + \"ActivityContentDetailsComment\",\n \"description\": \"The comment + object contains information about a resource that received a comment. This + property is only present if the snippet.type is comment.\"\n },\n \"promotedItem\": + {\n \"description\": \"The promotedItem object contains details about + a resource which is being promoted. This property is only present if the snippet.type + is promotedItem.\",\n \"$ref\": \"ActivityContentDetailsPromotedItem\"\n + \ },\n \"subscription\": {\n \"description\": \"The + subscription object contains information about a channel that a user subscribed + to. This property is only present if the snippet.type is subscription.\",\n + \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"like\": {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsLike\"\n - \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\"\n },\n \"bulletin\": {\n \"$ref\": - \"ActivityContentDetailsBulletin\",\n \"description\": \"The bulletin - object contains details about a channel bulletin post. This object is only - present if the snippet.type is bulletin.\"\n },\n \"channelItem\": + \ },\n \"recommendation\": {\n \"description\": \"The + recommendation object contains information about a recommended resource. This + property is only present if the snippet.type is recommendation.\",\n \"$ref\": + \"ActivityContentDetailsRecommendation\"\n },\n \"social\": + {\n \"$ref\": \"ActivityContentDetailsSocial\",\n \"description\": + \"The social object contains details about a social network post. This property + is only present if the snippet.type is social.\"\n },\n \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n \"description\": \"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.\"\n - \ },\n \"subscription\": {\n \"description\": \"The - subscription object contains information about a channel that a user subscribed - to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"comment\": - {\n \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\",\n \"$ref\": \"ActivityContentDetailsComment\"\n },\n - \ \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"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.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Details about the content of an activity: the video - that was shared, the channel that was subscribed to, etc.\"\n },\n \"PlaylistItemSnippet\": - {\n \"properties\": {\n \"videoOwnerChannelTitle\": {\n \"description\": - \"Channel title for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the item was added to the playlist.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The item's description.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the playlist - item belongs to.\"\n },\n \"position\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The id object contains information - that can be used to uniquely identify the resource that is included in the - playlist as the playlist item.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n }\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the playlist item. 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.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the user that added the item to the playlist.\",\n \"type\": \"string\"\n - \ },\n \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist - item is in.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n }\n },\n \"title\": {\n \"description\": - \"The item's title.\",\n \"type\": \"string\"\n },\n \"videoOwnerChannelId\": - {\n \"description\": \"Channel id for the channel this video belongs - to.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"PlaylistItemSnippet\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails. - Basic details of a YouTube Playlist item provided by the author. Next ID: - 15\"\n },\n \"ActivityContentDetailsFavorite\": {\n \"type\": \"object\",\n - \ \"description\": \"Information about a video that was marked as a favorite - video.\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"id\": \"ActivityContentDetailsFavorite\"\n },\n \"CommentListResponse\": - {\n \"id\": \"CommentListResponse\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": + \ }\n }\n },\n \"Thumbnail\": {\n \"id\": \"Thumbnail\",\n + \ \"description\": \"A thumbnail is an image representing a YouTube resource.\",\n + \ \"properties\": {\n \"width\": {\n \"type\": \"integer\",\n + \ \"description\": \"(Optional) Width of the thumbnail image.\",\n + \ \"format\": \"uint32\"\n },\n \"url\": {\n \"type\": + \"string\",\n \"description\": \"The thumbnail image's URL.\"\n },\n + \ \"height\": {\n \"type\": \"integer\",\n \"description\": + \"(Optional) Height of the thumbnail image.\",\n \"format\": \"uint32\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsRecommendation\": + {\n \"description\": \"Information that identifies the recommended resource.\",\n + \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsRecommendation\",\n + \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the recommended resource.\"\n },\n \"seedResourceId\": + {\n \"description\": \"The seedResourceId object contains information + about the resource that caused the recommendation.\",\n \"$ref\": + \"ResourceId\"\n },\n \"reason\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The reason that the resource is recommended to the user.\",\n \"enum\": + [\n \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n + \ \"videoWatched\"\n ]\n }\n }\n },\n \"Member\": + {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": + {\n \"default\": \"youtube#member\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": + \"MemberSnippet\",\n \"description\": \"The snippet object contains + basic details about the member.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n }\n + \ },\n \"description\": \"A *member* resource represents a member + for a YouTube channel. A member provides recurring monetary support to a creator + and receives special benefits.\",\n \"id\": \"Member\"\n },\n \"ActivityContentDetailsLike\": + {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsLike\",\n + \ \"description\": \"Information about a resource that received a positive + (like) rating.\",\n \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the rated resource.\",\n + \ \"$ref\": \"ResourceId\"\n }\n }\n },\n \"PlaylistSnippet\": + {\n \"id\": \"PlaylistSnippet\",\n \"description\": \"Basic details + about a playlist, including title, description and thumbnails.\",\n \"properties\": + {\n \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The date and time that the playlist + was created.\"\n },\n \"tags\": {\n \"type\": \"array\",\n + \ \"description\": \"Keyword tags associated with the playlist.\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n },\n + \ \"channelId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the channel that published the playlist.\",\n \"type\": + \"string\"\n },\n \"thumbnailVideoId\": {\n \"type\": + \"string\",\n \"description\": \"Note: if the playlist has a custom + thumbnail, this field will not be populated. The video id selected by the + user that will be used as the thumbnail of this playlist. This field defaults + to the first publicly viewable video in the playlist, if: 1. The user has + never selected a video to be the thumbnail of the playlist. 2. The user selects + a video to be the thumbnail, and then removes that video from the playlist. + 3. The user selects a non-owned video to be the thumbnail, but that video + becomes private, or gets deleted.\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The language + of the playlist's default title and description.\"\n },\n \"channelTitle\": + {\n \"description\": \"The channel title of the channel that the + video belongs to.\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"description\": \"The playlist's description.\",\n \"type\": + \"string\"\n },\n \"localized\": {\n \"description\": + \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n + \ },\n \"title\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.playlists.insert\",\n \"youtube.playlists.update\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The playlist's title.\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the playlist. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n }\n },\n \"type\": \"object\"\n },\n + \ \"PlaylistPlayer\": {\n \"properties\": {\n \"embedHtml\": + {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e + tag that embeds a player that will play the playlist.\"\n }\n },\n + \ \"id\": \"PlaylistPlayer\",\n \"type\": \"object\"\n },\n \"InvideoTiming\": + {\n \"type\": \"object\",\n \"description\": \"Describes a temporal + position of a visual widget inside a video.\",\n \"id\": \"InvideoTiming\",\n + \ \"properties\": {\n \"offsetMs\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"Defines the + time at which the promotion will appear. Depending on the value of type the + value of the offsetMs field will represent a time offset from the start or + from the end of the video, expressed in milliseconds.\"\n },\n \"type\": + {\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"description\": \"Describes a timing type. If the + value is offsetFromStart, then the offsetMs field represents an offset from + the start of the video. If the value is offsetFromEnd, then the offsetMs field + represents an offset from the end of the video.\",\n \"enum\": [\n + \ \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n + \ \"type\": \"string\"\n },\n \"durationMs\": {\n \"description\": + \"Defines the duration in milliseconds for which the promotion should be displayed. + If missing, the client should use the default.\",\n \"format\": \"uint64\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"LevelDetails\": + {\n \"type\": \"object\",\n \"id\": \"LevelDetails\",\n \"properties\": + {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": + \"The name that should be used when referring to this level.\"\n }\n + \ }\n },\n \"LiveChatModeratorListResponse\": {\n \"id\": \"LiveChatModeratorListResponse\",\n + \ \"properties\": {\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"LiveChatModerator\"\n },\n \"type\": + \"array\",\n \"description\": \"A list of moderators that match the + request criteria.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n + \ \"default\": \"youtube#liveChatModeratorListResponse\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"LiveChatMessageSnippet\": + {\n \"properties\": {\n \"userBannedDetails\": {\n \"$ref\": + \"LiveChatUserBannedMessageDetails\"\n },\n \"messageDeletedDetails\": + {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"memberMilestoneChatDetails\": + {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": + \"Details about the Member Milestone Chat event, this is only set if the type + is 'memberMilestoneChatEvent'.\"\n },\n \"displayMessage\": + {\n \"type\": \"string\",\n \"description\": \"Contains + a string that can be displayed to the user. If this field is not present the + message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT + are silent.\"\n },\n \"giftMembershipReceivedDetails\": {\n + \ \"description\": \"Details about the Gift Membership Received event, + this is only set if the type is 'giftMembershipReceivedEvent'.\",\n \"$ref\": + \"LiveChatGiftMembershipReceivedDetails\"\n },\n \"authorChannelId\": + {\n \"description\": \"The ID of the user that authored this message, + this field is not always filled. textMessageEvent - the user that wrote the + message fanFundingEvent - the user that funded the broadcast newSponsorEvent + - the user that just became a sponsor memberMilestoneChatEvent - the member + that sent the message membershipGiftingEvent - the user that made the purchase + giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent + - the moderator that took the action messageRetractedEvent - the author that + retracted their message userBannedEvent - the moderator that took the action + superChatEvent - the user that made the purchase superStickerEvent - the user + that made the purchase\",\n \"type\": \"string\"\n },\n \"fanFundingEventDetails\": + {\n \"description\": \"Details about the funding event, this is only + set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n + \ },\n \"newSponsorDetails\": {\n \"description\": \"Details + about the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. + Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n + \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"membershipGiftingDetails\": + {\n \"description\": \"Details about the Membership Gifting event, + this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": + \"LiveChatMembershipGiftingDetails\"\n },\n \"superChatDetails\": + {\n \"description\": \"Details about the Super Chat event, this is + only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n + \ },\n \"publishedAt\": {\n \"description\": \"The date + and time when the message was orignally published.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"hasDisplayContent\": + {\n \"description\": \"Whether the message has display content that + should be displayed to users.\",\n \"type\": \"boolean\"\n },\n + \ \"textMessageDetails\": {\n \"description\": \"Details about + the text message, this is only set if the type is 'textMessageEvent'.\",\n + \ \"$ref\": \"LiveChatTextMessageDetails\"\n },\n \"liveChatId\": + {\n \"type\": \"string\"\n },\n \"messageRetractedDetails\": + {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"type\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The type of message, this will always be present, it determines the contents + of the message as well as which fields will be present.\",\n \"enum\": + [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n + \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n + \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n + \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n + \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n + \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n + \ \"superChatEvent\",\n \"superStickerEvent\"\n ]\n + \ },\n \"superStickerDetails\": {\n \"description\": + \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n + \ \"$ref\": \"LiveChatSuperStickerDetails\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"LiveChatMessageSnippet\",\n \"description\": + \"Next ID: 33\"\n },\n \"SuperStickerMetadata\": {\n \"properties\": + {\n \"altText\": {\n \"type\": \"string\",\n \"description\": + \"Internationalized alt text that describes the sticker image and any animation + associated with it.\"\n },\n \"stickerId\": {\n \"type\": + \"string\",\n \"description\": \"Unique identifier of the Super Sticker. + This is a shorter form of the alt_text that includes pack name and a recognizable + characteristic of the sticker.\"\n },\n \"altTextLanguage\": + {\n \"description\": \"Specifies the localization language in which + the alt text is returned.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"SuperStickerMetadata\"\n + \ },\n \"CommentListResponse\": {\n \"type\": \"object\",\n \"id\": + \"CommentListResponse\",\n \"properties\": {\n \"items\": {\n + \ \"description\": \"A list of comments that match the request criteria.\",\n + \ \"items\": {\n \"$ref\": \"Comment\"\n },\n + \ \"type\": \"array\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#commentListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"nextPageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the next page + in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n }\n },\n \"VideoContentDetails\": + {\n \"description\": \"Details about the content of a YouTube Video.\",\n + \ \"properties\": {\n \"caption\": {\n \"enum\": [\n \"true\",\n + \ \"false\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"description\": + \"The value of captions indicates whether the video has captions or not.\"\n + \ },\n \"contentRating\": {\n \"description\": \"Specifies + the ratings that the video received under various rating schemes.\",\n \"$ref\": + \"ContentRating\"\n },\n \"duration\": {\n \"type\": + \"string\",\n \"description\": \"The length of the video. The tag + value is an ISO 8601 duration in the format PT#M#S, in which the letters PT + indicate that the value specifies a period of time, and the letters M and + S refer to length in minutes and seconds, respectively. The # characters preceding + the M and S letters are both integers that specify the number of minutes (or + seconds) of the video. For example, a value of PT15M51S indicates that the + video is 15 minutes and 51 seconds long.\"\n },\n \"licensedContent\": + {\n \"description\": \"The value of is_license_content indicates + whether the video is licensed content.\",\n \"type\": \"boolean\"\n + \ },\n \"definition\": {\n \"enumDescriptions\": [\n + \ \"sd\",\n \"hd\"\n ],\n \"type\": + \"string\",\n \"description\": \"The value of definition indicates + whether the video is available in high definition or only in standard definition.\",\n + \ \"enum\": [\n \"sd\",\n \"hd\"\n ]\n + \ },\n \"dimension\": {\n \"type\": \"string\",\n \"description\": + \"The value of dimension indicates whether the video is available in 3D or + in 2D.\"\n },\n \"regionRestriction\": {\n \"description\": + \"The regionRestriction object contains information about the countries where + a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed + property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": + \"VideoContentDetailsRegionRestriction\"\n },\n \"projection\": + {\n \"enum\": [\n \"rectangular\",\n \"360\"\n + \ ],\n \"description\": \"Specifies the projection format + of the video.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"countryRestriction\": + {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The + countryRestriction object contains information about the countries where a + video is (or is not) viewable.\"\n },\n \"hasCustomThumbnail\": + {\n \"type\": \"boolean\",\n \"description\": \"Indicates + whether the video uploader has provided a custom thumbnail image for the video. + This property is only visible to the video uploader.\"\n }\n },\n + \ \"id\": \"VideoContentDetails\",\n \"type\": \"object\"\n },\n + \ \"SubscriptionSnippet\": {\n \"properties\": {\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A + map of thumbnail images associated with the video. 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.\"\n },\n \"channelTitle\": + {\n \"description\": \"Channel title for the channel that the subscription + belongs to.\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The subscription's + details.\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time that the subscription was created.\"\n },\n \"resourceId\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n + \ ]\n },\n \"$ref\": \"ResourceId\",\n \"description\": + \"The id object contains information about the channel that the user subscribed + to.\"\n },\n \"channelId\": {\n \"description\": \"The + ID that YouTube uses to uniquely identify the subscriber's channel.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The subscription's title.\"\n }\n },\n + \ \"id\": \"SubscriptionSnippet\",\n \"type\": \"object\",\n \"description\": + \"Basic details about a subscription, including title, description and thumbnails + of the subscribed item.\"\n },\n \"PlaylistContentDetails\": {\n \"id\": + \"PlaylistContentDetails\",\n \"properties\": {\n \"itemCount\": + {\n \"description\": \"The number of videos in the playlist.\",\n + \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"LiveChatNewSponsorDetails\": + {\n \"properties\": {\n \"isUpgrade\": {\n \"description\": + \"If the viewer just had upgraded from a lower level. For viewers that were + not members at the time of purchase, this field is false.\",\n \"type\": + \"boolean\"\n },\n \"memberLevelName\": {\n \"description\": + \"The name of the Level that the viewer just had joined. The Level names are + defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"LiveChatNewSponsorDetails\"\n + \ },\n \"LiveBroadcastListResponse\": {\n \"properties\": {\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n + \ \"description\": \"A list of broadcasts that match the request criteria.\",\n + \ \"items\": {\n \"$ref\": \"LiveBroadcast\"\n }\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#liveBroadcastListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n + \ },\n \"pageInfo\": {\n \"description\": \"General + pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ }\n },\n \"id\": \"LiveBroadcastListResponse\",\n \"type\": + \"object\"\n },\n \"CommentThreadSnippet\": {\n \"properties\": + {\n \"isPublic\": {\n \"description\": \"Whether the thread + (and therefore all its comments) is visible to all YouTube users.\",\n \"type\": + \"boolean\"\n },\n \"topLevelComment\": {\n \"description\": + \"The top level comment of this thread.\",\n \"$ref\": \"Comment\"\n + \ },\n \"totalReplyCount\": {\n \"description\": \"The + total number of replies (not including the top level comment).\",\n \"format\": + \"uint32\",\n \"type\": \"integer\"\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the video the comments refer to, if any. No video_id implies a channel discussion + comment.\"\n },\n \"channelId\": {\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n \"canReply\": + {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n }\n },\n + \ \"type\": \"object\",\n \"description\": \"Basic details about + a comment thread.\",\n \"id\": \"CommentThreadSnippet\"\n },\n \"MembershipsLevelListResponse\": + {\n \"properties\": {\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"default\": \"youtube#membershipsLevelListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": + \"A list of pricing levels offered by a creator to the fans.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n + \ }\n }\n },\n \"type\": \"object\",\n \"id\": + \"MembershipsLevelListResponse\"\n },\n \"SubscriptionListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": + {\n \"default\": \"youtube#subscriptionListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"Subscription\"\n + \ },\n \"description\": \"A list of subscriptions that match + the request criteria.\",\n \"type\": \"array\"\n },\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": {\n \"description\": \"The visitorId identifies the visitor.\",\n \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The + \"PageInfo\"\n },\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n }\n },\n \"id\": \"SubscriptionListResponse\"\n + \ },\n \"ActivityContentDetailsSubscription\": {\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + that the user subscribed to.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ActivityContentDetailsSubscription\",\n \"description\": + \"Information about a channel that a user subscribed to.\"\n },\n \"VideoAgeGating\": + {\n \"id\": \"VideoAgeGating\",\n \"type\": \"object\",\n \"properties\": + {\n \"alcoholContent\": {\n \"type\": \"boolean\",\n \"description\": + \"Indicates whether or not the video has alcoholic beverage content. Only + users of legal purchasing age in a particular country, as identified by ICAP, + can view the content.\"\n },\n \"restricted\": {\n \"description\": + \"Age-restricted trailers. For redband trailers and adult-rated video-games. + Only users aged 18+ can view the content. The the field is true the content + is restricted to viewers aged 18+. Otherwise The field won't be present.\",\n + \ \"type\": \"boolean\"\n },\n \"videoGameRating\": + {\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n + \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"type\": + \"string\",\n \"description\": \"Video game rating, if any.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n }\n }\n },\n + \ \"GeoPoint\": {\n \"type\": \"object\",\n \"id\": \"GeoPoint\",\n + \ \"description\": \"Geographical coordinates of a point, in WGS84.\",\n + \ \"properties\": {\n \"latitude\": {\n \"type\": \"number\",\n + \ \"description\": \"Latitude in degrees.\",\n \"format\": + \"double\"\n },\n \"longitude\": {\n \"type\": \"number\",\n + \ \"format\": \"double\",\n \"description\": \"Longitude + in degrees.\"\n },\n \"altitude\": {\n \"type\": \"number\",\n + \ \"format\": \"double\",\n \"description\": \"Altitude above + the reference ellipsoid, in meters.\"\n }\n }\n },\n \"CaptionListResponse\": + {\n \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n + \ \"default\": \"youtube#captionListResponse\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"items\": {\n \"description\": + \"A list of captions that match the request criteria.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Caption\"\n }\n + \ }\n },\n \"id\": \"CaptionListResponse\",\n \"type\": + \"object\"\n },\n \"Video\": {\n \"id\": \"Video\",\n \"description\": + \"A *video* resource represents a YouTube video.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"suggestions\": {\n \"description\": + \"The suggestions object encapsulates suggestions that identify opportunities + to improve the video quality or the metadata for the uploaded video. This + data can only be retrieved by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#video\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#video\\\".\"\n },\n \"recordingDetails\": + {\n \"$ref\": \"VideoRecordingDetails\",\n \"description\": + \"The recordingDetails object encapsulates information about the location, + date and address where the video was recorded.\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the video, such as its title, description, and category.\",\n \"$ref\": + \"VideoSnippet\"\n },\n \"processingDetails\": {\n \"description\": + \"The processingDetails object encapsulates information about YouTube's progress + in processing the uploaded video file. The properties in the object identify + the current processing status and an estimate of the time remaining until + YouTube finishes processing the video. This part also indicates whether different + types of data or content, such as file details or thumbnail images, are available + for the video. The processingProgress object is designed to be polled so that + the video uploaded can track the progress that YouTube has made in processing + the uploaded video file. This data can only be retrieved by the video owner.\",\n + \ \"$ref\": \"VideoProcessingDetails\"\n },\n \"projectDetails\": + {\n \"$ref\": \"VideoProjectDetails\",\n \"description\": + \"The projectDetails object contains information about the project specific + video metadata. b/157517979: This part was never populated after it was added. + However, it sees non-zero traffic because there is generated client code in + the wild that refers to it [1]. We keep this field and do NOT remove it because + otherwise V3 would return an error when this part gets requested [2]. [1] + https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n + \ },\n \"id\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.videos.update\"\n ]\n },\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the video.\",\n \"type\": \"string\"\n },\n \"monetizationDetails\": + {\n \"description\": \"The monetizationDetails object encapsulates + information about the monetization status of the video.\",\n \"$ref\": + \"VideoMonetizationDetails\"\n },\n \"localizations\": {\n \"additionalProperties\": + {\n \"$ref\": \"VideoLocalization\"\n },\n \"description\": + \"The localizations object contains localized versions of the basic details + about the video, such as its title and description.\",\n \"type\": + \"object\"\n },\n \"liveStreamingDetails\": {\n \"description\": + \"The liveStreamingDetails object contains metadata about a live video broadcast. + The object will only be present in a video resource if the video is an upcoming, + live, or completed live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object contains information about the video content, including + the length of the video and its aspect ratio.\",\n \"$ref\": \"VideoContentDetails\"\n + \ },\n \"ageGating\": {\n \"description\": \"Age restriction + details related to a video. This data can only be retrieved by the video owner.\",\n + \ \"$ref\": \"VideoAgeGating\"\n },\n \"status\": {\n + \ \"description\": \"The status object contains information about + the video's uploading, processing, and privacy statuses.\",\n \"$ref\": + \"VideoStatus\"\n },\n \"topicDetails\": {\n \"description\": + \"The topicDetails object encapsulates information about Freebase topics associated + with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n + \ \"fileDetails\": {\n \"description\": \"The fileDetails object + encapsulates information about the video file that was uploaded to YouTube, + including the file's resolution, duration, audio and video codecs, stream + bitrates, and more. This data can only be retrieved by the video owner.\",\n + \ \"$ref\": \"VideoFileDetails\"\n },\n \"player\": + {\n \"$ref\": \"VideoPlayer\",\n \"description\": \"The + player object contains information that you would use to play the video in + an embedded player.\"\n },\n \"statistics\": {\n \"description\": + \"The statistics object contains statistics about the video.\",\n \"$ref\": + \"VideoStatistics\"\n }\n }\n },\n \"ChannelSectionLocalization\": + {\n \"properties\": {\n \"title\": {\n \"description\": + \"The localized strings for channel section's title.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"ChannelSectionLocalization\",\n + \ \"description\": \"ChannelSection localization setting\",\n \"type\": + \"object\"\n },\n \"I18nLanguageSnippet\": {\n \"description\": + \"Basic details about an i18n language, such as language code and human-readable + name.\",\n \"type\": \"object\",\n \"properties\": {\n \"name\": + {\n \"description\": \"The human-readable name of the language in + the language itself.\",\n \"type\": \"string\"\n },\n \"hl\": + {\n \"description\": \"A short BCP-47 code that uniquely identifies + a language.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"I18nLanguageSnippet\"\n },\n \"ChannelAuditDetails\": {\n \"properties\": + {\n \"contentIdClaimsGoodStanding\": {\n \"description\": + \"Whether or not the channel has any unresolved claims.\",\n \"type\": + \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether or not the channel has + any copyright strikes.\"\n },\n \"communityGuidelinesGoodStanding\": + {\n \"description\": \"Whether or not the channel respects the community + guidelines.\",\n \"type\": \"boolean\"\n }\n },\n \"id\": + \"ChannelAuditDetails\",\n \"description\": \"The auditDetails object + encapsulates channel data that is relevant for YouTube Partners during the + audit process.\",\n \"type\": \"object\"\n },\n \"SubscriptionSubscriberSnippet\": + {\n \"type\": \"object\",\n \"properties\": {\n \"title\": + {\n \"description\": \"The title of the subscriber.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The channel ID of the subscriber.\"\n },\n + \ \"description\": {\n \"type\": \"string\",\n \"description\": + \"The description of the subscriber.\"\n },\n \"thumbnails\": + {\n \"description\": \"Thumbnails for this subscriber.\",\n \"$ref\": + \"ThumbnailDetails\"\n }\n },\n \"description\": \"Basic + details about a subscription's subscriber including title, description, channel + ID and thumbnails.\",\n \"id\": \"SubscriptionSubscriberSnippet\"\n },\n + \ \"SearchResultSnippet\": {\n \"description\": \"Basic details about + a search result, including title, description and thumbnails of the item referenced + by the search result.\",\n \"properties\": {\n \"thumbnails\": + {\n \"description\": \"A map of thumbnail images associated with + the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n + \ \"title\": {\n \"type\": \"string\",\n \"description\": + \"The title of the search result.\"\n },\n \"channelId\": {\n + \ \"type\": \"string\",\n \"description\": \"The value that + YouTube uses to uniquely identify the channel that published the resource + that the search result identifies.\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"A description + of the search result.\"\n },\n \"liveBroadcastContent\": {\n + \ \"type\": \"string\",\n \"description\": \"It indicates + if the resource (video or channel) has upcoming/active live broadcast content. + Or it's \\\"none\\\" if there is not any upcoming/active live broadcasts.\",\n + \ \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been completed.\"\n + \ ]\n },\n \"channelTitle\": {\n \"description\": + \"The title of the channel that published the resource that the search result + identifies.\",\n \"type\": \"string\"\n },\n \"publishedAt\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The creation date and time of the resource that + the search result identifies.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"SearchResultSnippet\"\n },\n \"TestItem\": {\n \"id\": + \"TestItem\",\n \"type\": \"object\",\n \"properties\": {\n \"snippet\": + {\n \"$ref\": \"TestItemTestItemSnippet\"\n },\n \"id\": + {\n \"type\": \"string\"\n },\n \"gaia\": {\n \"type\": + \"string\",\n \"format\": \"int64\"\n },\n \"featuredPart\": + {\n \"type\": \"boolean\"\n }\n }\n },\n \"MemberSnippet\": + {\n \"id\": \"MemberSnippet\",\n \"properties\": {\n \"creatorChannelId\": + {\n \"description\": \"The id of the channel that's offering memberships.\",\n + \ \"type\": \"string\"\n },\n \"membershipsDetails\": + {\n \"$ref\": \"MembershipsDetails\",\n \"description\": + \"Details about the user's membership.\"\n },\n \"memberDetails\": + {\n \"description\": \"Details about the member.\",\n \"$ref\": + \"ChannelProfileDetails\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"VideoCategoryListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoCategoryListResponse\",\n \"properties\": {\n \"items\": + {\n \"type\": \"array\",\n \"description\": \"A list of + video categories that can be associated with YouTube videos. In this map, + the video category ID is the map key, and its value is the corresponding videoCategory + resource.\",\n \"items\": {\n \"$ref\": \"VideoCategory\"\n + \ }\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#videoCategoryListResponse\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Comment\"\n - \ },\n \"description\": \"A list of comments that match the - request criteria.\",\n \"type\": \"array\"\n },\n \"etag\": + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n }\n }\n },\n \"ChannelSnippet\": + {\n \"id\": \"ChannelSnippet\",\n \"description\": \"Basic details + about a channel, including title, description and thumbnails.\",\n \"properties\": + {\n \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": + \"The language of the channel's default title and description.\"\n },\n + \ \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n \"description\": + \"Localized title and description, read-only.\"\n },\n \"description\": + {\n \"description\": \"The description of the channel.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The channel's title.\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails + in your application, make sure that your code uses the image URLs exactly + as they are returned in API responses. For example, your application should + not use the http domain instead of the https domain in a URL returned in an + API response. Beginning in July 2018, channel thumbnail URLs will only be + available in the https domain, which is how the URLs appear in API responses. + After that time, you might see broken images in your application if it tries + to load YouTube images from the http domain. Thumbnail images might be empty + for newly created channels and might take up to one day to populate.\"\n },\n + \ \"customUrl\": {\n \"description\": \"The custom url of the + channel.\",\n \"type\": \"string\"\n },\n \"country\": + {\n \"description\": \"The country of the channel.\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time that the channel + was created.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\"\n },\n \"VideoGetRatingResponse\": {\n \"properties\": + {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#videoGetRatingResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"VideoRating\"\n },\n + \ \"description\": \"A list of ratings that match the request criteria.\",\n + \ \"type\": \"array\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ }\n },\n \"id\": \"VideoGetRatingResponse\",\n \"type\": + \"object\"\n },\n \"VideoSuggestions\": {\n \"id\": \"VideoSuggestions\",\n + \ \"properties\": {\n \"tagSuggestions\": {\n \"type\": + \"array\",\n \"description\": \"A list of keyword tags that could + be added to the video's metadata to increase the likelihood that users will + locate your video when searching or browsing on YouTube.\",\n \"items\": + {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n }\n + \ },\n \"processingHints\": {\n \"description\": \"A + list of suggestions that may improve YouTube's ability to process the video.\",\n + \ \"items\": {\n \"type\": \"string\",\n \"enum\": + [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n + \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n + \ \"hdrVideo\"\n ],\n \"enumDescriptions\": + [\n \"The MP4 file is not streamable, this will slow down the + processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably + a better quality version of the video exists. The video has wide screen aspect + ratio, but is not an HD video.\",\n \"Uploaded video is spherical + video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded + video is VR video.\",\n \"Uploaded video is HDR video.\"\n ]\n + \ },\n \"type\": \"array\"\n },\n \"processingErrors\": + {\n \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": + [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image + file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft + Windows Movie Maker project).\",\n \"Other non-video file.\",\n + \ \"Document or text file (e.g., MS Word document).\",\n \"An + archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial + audio layout type.\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"audioFile\",\n \"imageFile\",\n + \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n + \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n + \ ]\n },\n \"description\": \"A list of errors + that will prevent YouTube from successfully processing the uploaded video + video. These errors indicate that, regardless of the video's current processing + status, eventually, that status will almost certainly be failed.\"\n },\n + \ \"editorSuggestions\": {\n \"description\": \"A list of video + editing operations that might improve the video quality or playback experience + of the uploaded video.\",\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n + \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n + \ ],\n \"enumDescriptions\": [\n \"Picture + brightness levels seem off and could be corrected.\",\n \"The + video appears shaky and could be stabilized.\",\n \"Margins (mattes) + detected around the picture could be cropped.\",\n \"The audio + track appears silent and could be swapped with a better quality one.\"\n ]\n + \ }\n },\n \"processingWarnings\": {\n \"items\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n + \ \"Unrecognized file format, transcoding is likely to fail.\",\n + \ \"Unrecognized video codec, transcoding is likely to fail.\",\n + \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n + \ \"Conflicting container and stream resolutions.\",\n \"Edit + lists are not currently supported.\",\n \"Video codec that is + known to cause problems was used.\",\n \"Audio codec that is + known to cause problems was used.\",\n \"Unsupported VR video + stereo mode.\",\n \"Unsupported spherical video projection type.\",\n + \ \"Unsupported HDR pixel format.\",\n \"Unspecified + HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n + \ ],\n \"enum\": [\n \"unknownContainer\",\n + \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n + \ \"inconsistentResolution\",\n \"hasEditlist\",\n + \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n + \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n + \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n + \ \"problematicHdrLookupTable\"\n ]\n },\n + \ \"description\": \"A list of reasons why YouTube may have difficulty + transcoding the uploaded video or that might result in an erroneous transcoding. + These warnings are generated before YouTube actually processes the uploaded + video file. In addition, they identify issues that are unlikely to cause the + video processing to fail but that might cause problems such as sync issues, + video artifacts, or a missing audio track.\",\n \"type\": \"array\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Specifies + suggestions on how to improve video content, including encoding hints, tag + suggestions, and editor suggestions.\"\n },\n \"VideoCategorySnippet\": + {\n \"description\": \"Basic details about a video category, such as + its localized title.\",\n \"id\": \"VideoCategorySnippet\",\n \"type\": + \"object\",\n \"properties\": {\n \"assignable\": {\n \"type\": + \"boolean\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The YouTube channel that created the video category.\",\n + \ \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The video + category's title.\"\n }\n }\n },\n \"Comment\": {\n \"id\": + \"Comment\",\n \"type\": \"object\",\n \"description\": \"A *comment* + represents a single YouTube comment.\",\n \"properties\": {\n \"snippet\": + {\n \"$ref\": \"CommentSnippet\",\n \"description\": \"The + snippet object contains basic details about the comment.\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"default\": \"youtube#commentListResponse\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelBrandingSettings\": - {\n \"type\": \"object\",\n \"properties\": {\n \"watch\": - {\n \"description\": \"Branding properties for the watch page.\",\n - \ \"$ref\": \"WatchSettings\"\n },\n \"image\": {\n - \ \"description\": \"Branding properties for branding images.\",\n - \ \"$ref\": \"ImageSettings\"\n },\n \"channel\": {\n - \ \"$ref\": \"ChannelSettings\",\n \"description\": \"Branding - properties for the channel view.\"\n },\n \"hints\": {\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n },\n \"type\": - \"array\",\n \"description\": \"Additional experimental branding - properties.\"\n }\n },\n \"id\": \"ChannelBrandingSettings\",\n - \ \"description\": \"Branding properties of a YouTube channel.\"\n },\n - \ \"PlaylistItemContentDetails\": {\n \"properties\": {\n \"startAt\": - {\n \"type\": \"string\",\n \"description\": \"The time, - measured in seconds from the start of the video, when the video should start - playing. (The playlist owner can specify the times when the video should start - and stop playing when the video is played in the context of the playlist.) - The default value is 0.\"\n },\n \"note\": {\n \"type\": - \"string\",\n \"description\": \"A user-generated note for this item.\"\n - \ },\n \"videoPublishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the video was published to YouTube.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify a video. To retrieve the video resource, - set the id query parameter to this value in your API request.\"\n },\n - \ \"endAt\": {\n \"description\": \"The time, measured in seconds - from the start of the video, when the video should stop playing. (The playlist - owner can specify the times when the video should start and stop playing when - the video is played in the context of the playlist.) By default, assume that - the video.endTime is the end of the video.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"PlaylistItemContentDetails\",\n \"type\": - \"object\"\n },\n \"SearchResult\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - id object contains information that can be used to uniquely identify the resource - that matches the search request.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#searchResult\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\",\n \"$ref\": \"SearchResultSnippet\"\n }\n - \ },\n \"description\": \"A search result contains information about - a YouTube video, channel, or playlist that matches the search parameters specified - in an API request. While a search result points to a uniquely identifiable - resource, like a video, it does not have its own persistent data.\",\n \"id\": - \"SearchResult\"\n },\n \"Activity\": {\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"ActivitySnippet\",\n \"description\": \"The - snippet object contains basic details about the activity, including the activity's - type and group ID.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ActivityContentDetails\",\n \"description\": \"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.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#activity\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#activity\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource\",\n \"type\": \"string\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the activity.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"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.\",\n - \ \"id\": \"Activity\"\n },\n \"VideoFileDetails\": {\n \"description\": - \"Describes original video file properties, including technical details about - audio and video streams, but also metadata information like content length, - digitization time, or geotagging information.\",\n \"id\": \"VideoFileDetails\",\n - \ \"properties\": {\n \"fileName\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded file's name. This field is present - whether a video file or another type of file was uploaded.\"\n },\n - \ \"bitrateBps\": {\n \"description\": \"The uploaded video - file's combined (video and audio) bitrate in bits per second.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"fileType\": - {\n \"enum\": [\n \"video\",\n \"audio\",\n - \ \"image\",\n \"archive\",\n \"document\",\n - \ \"project\",\n \"other\"\n ],\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"type\": \"string\",\n \"description\": - \"The uploaded file's type as detected by YouTube's video processing engine. - Currently, YouTube only processes video files, but this field is present whether - a video file or another type of file was uploaded.\"\n },\n \"durationMs\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The length of the uploaded video in milliseconds.\"\n },\n \"container\": - {\n \"type\": \"string\",\n \"description\": \"The uploaded - video file's container format.\"\n },\n \"fileSize\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded file's size in bytes. - This field is present whether a video file or another type of file was uploaded.\",\n - \ \"format\": \"uint64\"\n },\n \"creationTime\": {\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the uploaded video file was created. The value is specified in ISO - 8601 format. Currently, the following ISO 8601 formats are supported: - Date - only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \"\n },\n \"audioStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsAudioStream\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of audio streams contained in the uploaded - video file. Each item in the list contains detailed metadata about an audio - stream.\"\n },\n \"videoStreams\": {\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n },\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\"\n },\n \"PlaylistItemStatus\": - {\n \"type\": \"object\",\n \"properties\": {\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"This resource's - privacy status.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"public\",\n \"unlisted\",\n \"private\"\n - \ ]\n }\n },\n \"description\": \"Information about - the playlist item's privacy status.\",\n \"id\": \"PlaylistItemStatus\"\n - \ },\n \"ChannelBannerResource\": {\n \"type\": \"object\",\n \"id\": - \"ChannelBannerResource\",\n \"description\": \"A channel banner returned - as the response to a channel_banner.insert call.\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n - \ },\n \"url\": {\n \"description\": \"The URL of this - banner image.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"LiveStreamHealthStatus\": {\n \"properties\": {\n \"configurationIssues\": - {\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"description\": \"The configurations issues on this - stream\",\n \"type\": \"array\"\n },\n \"status\": - {\n \"enum\": [\n \"good\",\n \"ok\",\n \"bad\",\n - \ \"noData\",\n \"revoked\"\n ],\n \"type\": - \"string\",\n \"description\": \"The status code of this stream\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"lastUpdateTimeSeconds\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The last time this status was updated (in seconds)\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveStreamHealthStatus\",\n - \ \"type\": \"object\"\n },\n \"LiveChatNewSponsorDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"isUpgrade\": - {\n \"description\": \"If the viewer just had upgraded from a lower - level. For viewers that were not members at the time of purchase, this field - is false.\",\n \"type\": \"boolean\"\n },\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level that the viewer just had joined. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n }\n },\n \"id\": \"LiveChatNewSponsorDetails\"\n - \ },\n \"VideoCategory\": {\n \"type\": \"object\",\n \"description\": - \"A *videoCategory* resource identifies a category that has been or could - be associated with uploaded videos.\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the video category.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoCategory\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\"\n - \ }\n },\n \"id\": \"VideoCategory\"\n },\n \"I18nRegionListResponse\": + ID that YouTube uses to uniquely identify the comment.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#comment\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n + \ }\n }\n },\n \"LiveChatSuperChatDetails\": {\n \"type\": + \"object\",\n \"id\": \"LiveChatSuperChatDetails\",\n \"properties\": + {\n \"userComment\": {\n \"type\": \"string\",\n \"description\": + \"The comment added by the user to this Super Chat event.\"\n },\n + \ \"currency\": {\n \"description\": \"The currency in which + the purchase was made.\",\n \"type\": \"string\"\n },\n \"amountDisplayString\": + {\n \"type\": \"string\",\n \"description\": \"A rendered + string that displays the fund amount and currency to the user.\"\n },\n + \ \"tier\": {\n \"description\": \"The tier in which the amount + belongs. Lower amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"amountMicros\": + {\n \"type\": \"string\",\n \"description\": \"The amount + purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": + \"uint64\"\n }\n }\n },\n \"Playlist\": {\n \"id\": + \"Playlist\",\n \"description\": \"A *playlist* resource represents a + YouTube playlist. A playlist is a collection of videos that can be viewed + sequentially and shared with other users. A playlist can contain up to 200 + videos, and YouTube does not limit the number of playlists that each user + creates. By default, playlists are publicly visible to other users, but playlists + can be public or private. YouTube also uses playlists to identify special + collections of videos for a channel, such as: - uploaded videos - favorite + videos - positively rated (liked) videos - watch history - watch later To + be more specific, these lists are associated with a channel, which is a collection + of a person, group, or company's videos, playlists, and other YouTube information. + You can retrieve the playlist IDs for each of these lists from the channel + resource for a given channel. You can then use the playlistItems.list method + to retrieve any of those lists. You can also add or remove items from those + lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the playlist.\"\n },\n \"kind\": {\n \"default\": \"youtube#playlist\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlist\\\".\",\n \"type\": \"string\"\n + \ },\n \"localizations\": {\n \"type\": \"object\",\n + \ \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n + \ },\n \"description\": \"Localizations for different languages\"\n + \ },\n \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the playlist, such as its title and description.\"\n },\n \"status\": + {\n \"description\": \"The status object contains status information + for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n },\n + \ \"player\": {\n \"description\": \"The player object contains + information that you would use to play the playlist in an embedded player.\",\n + \ \"$ref\": \"PlaylistPlayer\"\n },\n \"contentDetails\": + {\n \"$ref\": \"PlaylistContentDetails\",\n \"description\": + \"The contentDetails object contains information like video count.\"\n }\n + \ }\n },\n \"CommentThreadListResponse\": {\n \"properties\": + {\n \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"description\": \"A list of comment threads that + match the request criteria.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n + \ \"description\": \"General pagination information.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n + \ \"default\": \"youtube#commentThreadListResponse\"\n }\n + \ },\n \"id\": \"CommentThreadListResponse\",\n \"type\": \"object\"\n + \ },\n \"LiveChatBanSnippet\": {\n \"id\": \"LiveChatBanSnippet\",\n + \ \"properties\": {\n \"liveChatId\": {\n \"type\": \"string\",\n + \ \"description\": \"The chat this ban is pertinent to.\"\n },\n + \ \"type\": {\n \"type\": \"string\",\n \"enum\": + [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n + \ \"temporary\"\n ],\n \"enumDescriptions\": [\n + \ \"An invalid ban type.\",\n \"A permanent ban.\",\n + \ \"A temporary ban.\"\n ],\n \"description\": + \"The type of ban.\"\n },\n \"bannedUserDetails\": {\n \"$ref\": + \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": {\n + \ \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"PageInfo\": {\n \"id\": + \"PageInfo\",\n \"description\": \"Paging details for lists of resources, + including total number of items available and number of resources returned + in a single page.\",\n \"type\": \"object\",\n \"properties\": {\n + \ \"resultsPerPage\": {\n \"type\": \"integer\",\n \"description\": + \"The number of results included in the API response.\",\n \"format\": + \"int32\"\n },\n \"totalResults\": {\n \"format\": + \"int32\",\n \"description\": \"The total number of results in the + result set.\",\n \"type\": \"integer\"\n }\n }\n },\n + \ \"ActivityContentDetailsPromotedItem\": {\n \"description\": \"Details + about a resource which is being promoted.\",\n \"id\": \"ActivityContentDetailsPromotedItem\",\n + \ \"properties\": {\n \"destinationUrl\": {\n \"description\": + \"The URL the client should direct the user to, if the user chooses to visit + the advertiser's website.\",\n \"type\": \"string\"\n },\n + \ \"creativeViewUrl\": {\n \"description\": \"The URL the client + should ping to indicate that the user was shown this promoted item.\",\n \"type\": + \"string\"\n },\n \"descriptionText\": {\n \"type\": + \"string\",\n \"description\": \"The text description to accompany + the promoted item.\"\n },\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the promoted video.\"\n },\n \"forecastingUrl\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"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.\"\n },\n + \ \"customCtaButtonText\": {\n \"description\": \"The custom + call-to-action button text. If specified, it will override the default button + text for the cta_type.\",\n \"type\": \"string\"\n },\n \"clickTrackingUrl\": + {\n \"description\": \"The URL the client should ping to indicate + that the user clicked through on this promoted item.\",\n \"type\": + \"string\"\n },\n \"adTag\": {\n \"description\": \"The + URL the client should fetch to request a promoted item.\",\n \"type\": + \"string\"\n },\n \"impressionUrl\": {\n \"description\": + \"The list of impression URLs. The client should ping all of these URLs to + indicate that the user was shown this promoted item.\",\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n + \ },\n \"ctaType\": {\n \"enum\": [\n \"ctaTypeUnspecified\",\n + \ \"visitAdvertiserSite\"\n ],\n \"description\": + \"The type of call-to-action, a message to the user indicating action that + can be taken.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\"\n },\n \"LiveBroadcastStatistics\": {\n \"properties\": + {\n \"concurrentViewers\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"The number of viewers currently + watching the broadcast. The property and its value will be present if the + broadcast has current viewers and the broadcast owner has not hidden the viewcount + for the video. Note that YouTube stops tracking the number of concurrent viewers + for a broadcast when the broadcast ends. So, this property would not identify + the number of viewers watching an archived video of a live broadcast that + already ended.\"\n },\n \"totalChatCount\": {\n \"format\": + \"uint64\",\n \"description\": \"The total number of live chat messages + currently on the broadcast. The property and its value will be present if + the broadcast is public, has the live chat feature enabled, and has at least + one message. Note that this field will not be filled after the broadcast ends. + So this property would not identify the number of chat messages for an archived + video of a completed live broadcast.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Statistics about the live broadcast. + These represent a snapshot of the values at the time of the request. Statistics + are only returned for live broadcasts.\",\n \"id\": \"LiveBroadcastStatistics\",\n + \ \"type\": \"object\"\n },\n \"PlaylistItemListResponse\": {\n + \ \"id\": \"PlaylistItemListResponse\",\n \"properties\": {\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of playlist items that match the request criteria.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". + Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"VideoRating\": + {\n \"properties\": {\n \"rating\": {\n \"description\": + \"Rating of a video.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The entity is liked.\",\n \"The entity is disliked.\"\n + \ ],\n \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"type\": \"string\"\n },\n + \ \"videoId\": {\n \"description\": \"The ID that YouTube uses + to uniquely identify the video.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"VideoRating\",\n \"description\": + \"Basic details about rating of a video.\"\n },\n \"LiveStreamSnippet\": + {\n \"properties\": {\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The stream's description. The value + cannot be longer than 10000 characters.\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the stream was created.\"\n + \ },\n \"title\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The stream's title. The value must be between 1 and 128 characters long.\"\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that is transmitting + the stream.\"\n },\n \"isDefaultStream\": {\n \"type\": + \"boolean\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveStreamSnippet\"\n },\n \"VideoRecordingDetails\": {\n \"id\": + \"VideoRecordingDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"location\": {\n \"description\": \"The geolocation information + associated with the video.\",\n \"$ref\": \"GeoPoint\"\n },\n + \ \"recordingDate\": {\n \"format\": \"date-time\",\n \"description\": + \"The date and time when the video was recorded.\",\n \"type\": \"string\"\n + \ },\n \"locationDescription\": {\n \"description\": + \"The text description of the location where the video was recorded.\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Recording information associated with the video.\"\n },\n \"VideoSuggestionsTagSuggestion\": + {\n \"id\": \"VideoSuggestionsTagSuggestion\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"tag\": {\n \"type\": \"string\",\n + \ \"description\": \"The keyword tag suggested for the video.\"\n + \ },\n \"categoryRestricts\": {\n \"description\": \"A + set of video categories for which the tag is relevant. You can use this information + to display appropriate tag suggestions based on the video category that the + video uploader associates with the video. By default, tag suggestions are + relevant for all categories if there are no restricts defined for the keyword.\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": + \"array\"\n }\n },\n \"description\": \"A single tag suggestion + with it's relevance information.\"\n },\n \"ChannelBannerResource\": + {\n \"id\": \"ChannelBannerResource\",\n \"properties\": {\n \"url\": + {\n \"description\": \"The URL of this banner image.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#channelBannerResource\"\n + \ }\n },\n \"description\": \"A channel banner returned as + the response to a channel_banner.insert call.\",\n \"type\": \"object\"\n + \ },\n \"ChannelStatus\": {\n \"properties\": {\n \"madeForKids\": + {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"Privacy status of the channel.\",\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ]\n },\n + \ \"isLinked\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n + \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"longUploadsStatus\": {\n \"description\": \"The + long uploads status of this channel. See https://support.google.com/youtube/answer/71673 + for more information.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"longUploadsUnspecified\",\n + \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n + \ ]\n }\n },\n \"type\": \"object\",\n \"id\": + \"ChannelStatus\",\n \"description\": \"JSON template for the status + part of a channel.\"\n },\n \"ThirdPartyLinkStatus\": {\n \"id\": + \"ThirdPartyLinkStatus\",\n \"properties\": {\n \"linkStatus\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"unknown\",\n \"failed\",\n + \ \"pending\",\n \"linked\"\n ]\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"The third-party + link status object contains information about the status of the link.\"\n + \ },\n \"MembershipsDuration\": {\n \"id\": \"MembershipsDuration\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"memberSince\": + {\n \"description\": \"The date and time when the user became a continuous + member across all levels.\",\n \"type\": \"string\"\n },\n + \ \"memberTotalDurationMonths\": {\n \"format\": \"int32\",\n + \ \"description\": \"The cumulative time the user has been a member + across all levels in complete months (the time is rounded down to the nearest + integer).\",\n \"type\": \"integer\"\n }\n }\n },\n + \ \"LiveBroadcastContentDetails\": {\n \"properties\": {\n \"stereoLayout\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n + \ \"leftRight\",\n \"topBottom\"\n ],\n \"description\": + \"The 3D stereo layout of this broadcast. This defaults to mono.\"\n },\n + \ \"latencyPreference\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"Best for: highest quality viewer playbacks and higher resolutions.\",\n + \ \"Best for: near real-time interaction, with minimal playback + buffering.\",\n \"Best for: real-time interaction Does not support: + Closed captions, 1440p, and 4k resolutions\"\n ],\n \"description\": + \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL + should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true + LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"type\": + \"string\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n + \ \"normal\",\n \"low\",\n \"ultraLow\"\n + \ ]\n },\n \"enableClosedCaptions\": {\n \"description\": + \"This setting indicates whether HTTP POST closed captioning is enabled for + this broadcast. The ingestion URL of the closed captions is returned through + the liveStreams API. This is mutually exclusive with using the closed_captions_type + property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n + \ \"type\": \"boolean\"\n },\n \"closedCaptionsType\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n + \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n + \ ]\n },\n \"projection\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The projection format of this broadcast. + This defaults to rectangular.\",\n \"type\": \"string\",\n \"enum\": + [\n \"projectionUnspecified\",\n \"rectangular\",\n + \ \"360\",\n \"mesh\"\n ]\n },\n \"startWithSlate\": + {\n \"description\": \"This setting indicates whether the broadcast + should automatically begin with an in-stream slate when you update the broadcast's + status to live. After updating the status, you then need to send a liveCuepoints.insert + request that sets the cuepoint's eventState to end to remove the in-stream + slate and make your broadcast stream visible to viewers.\",\n \"type\": + \"boolean\"\n },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether the broadcast + video can be played in an embedded player. If you choose to archive the video + (using the enableArchive property), this setting will also apply to the archived + video.\"\n },\n \"boundStreamId\": {\n \"description\": + \"This value uniquely identifies the live stream bound to the broadcast.\",\n + \ \"type\": \"string\"\n },\n \"recordFromStart\": {\n + \ \"description\": \"Automatically start recording after the event + goes live. The default value for this property is true. *Important:* You must + also set the enableDvr property's value to true if you want the playback to + be available immediately after the broadcast ends. If you set this property's + value to true but do not also set the enableDvr property to true, there may + be a delay of around one day before the archived video will be available for + playback.\",\n \"type\": \"boolean\"\n },\n \"enableAutoStop\": + {\n \"description\": \"This setting indicates whether auto stop is + enabled for this broadcast. The default value for this property is false. + This setting can only be used by Events.\",\n \"type\": \"boolean\"\n + \ },\n \"enableContentEncryption\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether YouTube should + enable content encryption for the broadcast.\"\n },\n \"boundStreamLastUpdateTimeMs\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the live stream referenced + by boundStreamId was last updated.\"\n },\n \"enableAutoStart\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether auto start is enabled for this broadcast. The default value + for this property is false. This setting can only be used by Events.\"\n },\n + \ \"enableLowLatency\": {\n \"description\": \"Indicates whether + this broadcast has low latency enabled.\",\n \"type\": \"boolean\"\n + \ },\n \"enableDvr\": {\n \"type\": \"boolean\",\n \"description\": + \"This setting determines whether viewers can access DVR controls while watching + the video. DVR controls enable the viewer to control the video playback experience + by pausing, rewinding, or fast forwarding content. The default value for this + property is true. *Important:* You must set the value to true and also set + the enableArchive property's value to true if you want to make playback available + immediately after the broadcast ends.\"\n },\n \"monitorStream\": + {\n \"$ref\": \"MonitorStreamInfo\",\n \"description\": + \"The monitorStream object contains information about the monitor stream, + which the broadcaster can use to review the event content before the broadcast + stream is shown publicly.\"\n },\n \"mesh\": {\n \"description\": + \"The mesh for projecting the video if projection is mesh. The mesh value + must be a UTF-8 string containing the base-64 encoding of 3D mesh data that + follows the Spherical Video V2 RFC specification for an mshp box, excluding + the box size and type but including the following four reserved zero bytes + for the version and flags.\",\n \"type\": \"string\",\n \"format\": + \"byte\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveBroadcastContentDetails\",\n \"description\": \"Detailed settings + of a broadcast.\"\n },\n \"ChannelSettings\": {\n \"type\": \"object\",\n + \ \"id\": \"ChannelSettings\",\n \"description\": \"Branding properties + for the channel view.\",\n \"properties\": {\n \"unsubscribedTrailer\": + {\n \"description\": \"The trailer of the channel, for users that + are not subscribers.\",\n \"type\": \"string\"\n },\n \"showBrowseView\": + {\n \"description\": \"Whether the tab to browse the videos should + be displayed.\",\n \"type\": \"boolean\"\n },\n \"defaultTab\": + {\n \"type\": \"string\",\n \"description\": \"Which content + tab users should see when viewing the channel.\"\n },\n \"title\": + {\n \"description\": \"Specifies the channel title.\",\n \"type\": + \"string\"\n },\n \"showRelatedChannels\": {\n \"description\": + \"Whether related channels should be proposed.\",\n \"type\": \"boolean\"\n + \ },\n \"defaultLanguage\": {\n \"type\": \"string\"\n + \ },\n \"description\": {\n \"description\": \"Specifies + the channel description.\",\n \"type\": \"string\"\n },\n + \ \"moderateComments\": {\n \"description\": \"Whether user-submitted + comments left on the channel page need to be approved by the channel owner + to be publicly visible.\",\n \"type\": \"boolean\"\n },\n + \ \"country\": {\n \"type\": \"string\",\n \"description\": + \"The country of the channel.\"\n },\n \"trackingAnalyticsAccountId\": + {\n \"description\": \"The ID for a Google Analytics account to track + and measure traffic to the channels.\",\n \"type\": \"string\"\n + \ },\n \"featuredChannelsTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"Title for the featured channels tab.\"\n },\n + \ \"profileColor\": {\n \"type\": \"string\",\n \"description\": + \"A prominent color that can be rendered on this channel page.\"\n },\n + \ \"featuredChannelsUrls\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\",\n \"description\": + \"The list of featured channels.\"\n },\n \"keywords\": {\n + \ \"description\": \"Lists keywords associated with the channel, comma-separated.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"LiveChatModerator\": {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"default\": \"youtube#i18nRegionListResponse\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + {\n \"type\": \"string\",\n \"default\": \"youtube#liveChatModerator\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveChatModerator\\\".\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube assigns to uniquely identify the moderator.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatModeratorSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the moderator.\"\n }\n },\n \"id\": \"LiveChatModerator\",\n + \ \"description\": \"A *liveChatModerator* resource represents a moderator + for a YouTube live chat. A chat moderator has the ability to ban/unban users + from a chat, remove message, etc.\"\n },\n \"ChannelListResponse\": + {\n \"id\": \"ChannelListResponse\",\n \"properties\": {\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#channelListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\"\n - \ }\n },\n \"id\": \"I18nRegionListResponse\"\n },\n \"MembershipsDetails\": - {\n \"id\": \"MembershipsDetails\",\n \"properties\": {\n \"membershipsDuration\": - {\n \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\",\n \"$ref\": \"MembershipsDuration\"\n - \ },\n \"accessibleLevels\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\"\n - \ },\n \"membershipsDurationAtLevels\": {\n \"description\": - \"Data about memberships duration on particular pricing levels.\",\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"type\": - \"array\"\n },\n \"highestAccessibleLevelDisplayName\": {\n - \ \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n },\n - \ \"highestAccessibleLevel\": {\n \"type\": \"string\",\n \"description\": - \"Id of the highest level that the user has access to at the moment.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ChannelAuditDetails\": - {\n \"type\": \"object\",\n \"description\": \"The auditDetails - object encapsulates channel data that is relevant for YouTube Partners during - the audit process.\",\n \"properties\": {\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any unresolved claims.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n }\n },\n \"id\": - \"ChannelAuditDetails\"\n },\n \"SubscriptionContentDetails\": {\n \"properties\": - {\n \"totalItemCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The approximate number of items that the subscription points to.\",\n \"type\": - \"integer\"\n },\n \"newItemCount\": {\n \"description\": - \"The number of new items in the subscription since its content was last read.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"activityType\": {\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The type of activity this subscription is for - (only uploads, everything).\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"SubscriptionContentDetails\",\n \"description\": - \"Details about the content to witch a subscription refers.\",\n \"type\": - \"object\"\n },\n \"ResourceId\": {\n \"description\": \"A resource - id is a generic reference that points to another YouTube resource.\",\n \"type\": - \"object\",\n \"id\": \"ResourceId\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"The type - of the API resource.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\",\n \"type\": \"string\"\n },\n - \ \"playlistId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a playlist. - This property is only present if the resourceId.kind value is youtube#playlist.\",\n + \"Channel\"\n },\n \"type\": \"array\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReportReason\": + {\n \"id\": \"VideoAbuseReportReason\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#videoAbuseReportReason\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n + \ \"description\": \"The `snippet` object contains basic details about + the abuse report reason.\"\n },\n \"id\": {\n \"description\": + \"The ID of this abuse report reason.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"description\": + \"A `__videoAbuseReportReason__` resource identifies a reason that a video + could be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\"\n + \ },\n \"ChannelTopicDetails\": {\n \"description\": \"Freebase + topic information related to the channel.\",\n \"type\": \"object\",\n + \ \"id\": \"ChannelTopicDetails\",\n \"properties\": {\n \"topicCategories\": + {\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"A list of Wikipedia + URLs that describe the channel's content.\"\n },\n \"topicIds\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"A list of Freebase topic IDs associated with + the channel. You can retrieve information about each topic using the Freebase + Topic API.\",\n \"type\": \"array\"\n }\n }\n },\n + \ \"LiveChatUserBannedMessageDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"banType\": {\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"permanent\",\n \"temporary\"\n + \ ],\n \"description\": \"The type of ban.\"\n },\n + \ \"banDurationSeconds\": {\n \"format\": \"uint64\",\n \"description\": + \"The duration of the ban. This property is only present if the banType is + temporary.\",\n \"type\": \"string\"\n },\n \"bannedUserDetails\": + {\n \"description\": \"The details of the user that was banned.\",\n + \ \"$ref\": \"ChannelProfileDetails\"\n }\n },\n \"id\": + \"LiveChatUserBannedMessageDetails\"\n },\n \"LocalizedProperty\": {\n + \ \"id\": \"LocalizedProperty\",\n \"type\": \"object\",\n \"properties\": + {\n \"defaultLanguage\": {\n \"$ref\": \"LanguageTag\",\n + \ \"description\": \"The language of the default property.\"\n },\n + \ \"localized\": {\n \"items\": {\n \"$ref\": \"LocalizedString\"\n + \ },\n \"type\": \"array\"\n },\n \"default\": + {\n \"type\": \"string\"\n }\n }\n },\n \"VideoAbuseReport\": + {\n \"type\": \"object\",\n \"properties\": {\n \"language\": + {\n \"description\": \"The language that the content was viewed in.\",\n \ \"type\": \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a video. This property - is only present if the resourceId.kind value is youtube#video.\"\n }\n - \ }\n },\n \"LocalizedProperty\": {\n \"id\": \"LocalizedProperty\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"defaultLanguage\": - {\n \"description\": \"The language of the default property.\",\n - \ \"$ref\": \"LanguageTag\"\n },\n \"localized\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n }\n },\n \"default\": {\n \"type\": - \"string\"\n }\n }\n },\n \"PageInfo\": {\n \"id\": - \"PageInfo\",\n \"type\": \"object\",\n \"description\": \"Paging - details for lists of resources, including total number of items available - and number of resources returned in a single page.\",\n \"properties\": - {\n \"resultsPerPage\": {\n \"type\": \"integer\",\n \"format\": - \"int32\",\n \"description\": \"The number of results included in - the API response.\"\n },\n \"totalResults\": {\n \"format\": - \"int32\",\n \"description\": \"The total number of results in the - result set.\",\n \"type\": \"integer\"\n }\n }\n },\n - \ \"CaptionListResponse\": {\n \"id\": \"CaptionListResponse\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of captions - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Caption\"\n },\n \"type\": \"array\"\n }\n }\n - \ },\n \"LiveStream\": {\n \"id\": \"LiveStream\",\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveStreamSnippet\",\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"LiveStreamContentDetails\",\n \"description\": - \"The content_details object contains information about the stream, including - the closed captions ingestion URL.\"\n },\n \"status\": {\n - \ \"description\": \"The status object contains information about - live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n },\n - \ \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveStream\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the stream.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n }\n }\n },\n \"description\": \"A - live stream describes a live ingestion point.\"\n },\n \"MembershipsDuration\": - {\n \"properties\": {\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The cumulative time the user has been a member across all levels in complete - months (the time is rounded down to the nearest integer).\"\n },\n - \ \"memberSince\": {\n \"description\": \"The date and time - when the user became a continuous member across all levels.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"MembershipsDuration\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"channelUrl\": - {\n \"description\": \"The channel's URL.\",\n \"type\": - \"string\"\n },\n \"isChatModerator\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a moderator - of the live chat.\"\n },\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"isChatSponsor\": {\n \"description\": \"Whether the author - is a sponsor of the live chat.\",\n \"type\": \"boolean\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube channel ID.\"\n },\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n },\n \"isChatOwner\": {\n \"description\": - \"Whether the author is the owner of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"displayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's display name.\"\n }\n },\n - \ \"id\": \"LiveChatMessageAuthorDetails\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"properties\": {\n \"giftMembershipsLevelName\": {\n \"description\": - \"The name of the level of the gift memberships purchased by the user. The - Level names are defined by the YouTube channel offering the Membership. In - some situations this field isn't filled.\",\n \"type\": \"string\"\n - \ },\n \"giftMembershipsCount\": {\n \"format\": \"int32\",\n - \ \"type\": \"integer\",\n \"description\": \"The number - of gift memberships purchased by the user.\"\n }\n }\n },\n - \ \"PlaylistSnippet\": {\n \"description\": \"Basic details about a - playlist, including title, description and thumbnails.\",\n \"properties\": - {\n \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.playlists.insert\",\n \"youtube.playlists.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The playlist's title.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that published the playlist.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the playlist's default title - and description.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist. 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.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The playlist's - description.\"\n },\n \"tags\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"Keyword tags associated with the playlist.\"\n - \ },\n \"thumbnailVideoId\": {\n \"description\": \"Note: - if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the playlist - was created.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"$ref\": \"PlaylistLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"channelTitle\": - {\n \"description\": \"The channel title of the channel that the - video belongs to.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"PlaylistSnippet\",\n \"type\": \"object\"\n },\n \"MembershipsLevel\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the memberships level.\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevel\"\n }\n },\n - \ \"id\": \"MembershipsLevel\",\n \"description\": \"A *membershipsLevel* - resource represents an offer made by YouTube creators for their fans. Users - can become members of the channel by joining one of the available levels. - They will provide recurring monetary support and receives special benefits.\",\n - \ \"type\": \"object\"\n },\n \"LevelDetails\": {\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The name that should be used when referring to this level.\"\n }\n - \ },\n \"id\": \"LevelDetails\",\n \"type\": \"object\"\n },\n - \ \"ActivityContentDetailsUpload\": {\n \"type\": \"object\",\n \"properties\": + identify the video.\"\n },\n \"comments\": {\n \"description\": + \"Additional comments regarding the abuse report.\",\n \"type\": + \"string\"\n },\n \"secondaryReasonId\": {\n \"type\": + \"string\",\n \"description\": \"The specific, or secondary, reason + that this content is abusive (if available). The value is an abuse report + reason ID that is a valid secondary reason for the primary reason.\"\n },\n + \ \"reasonId\": {\n \"type\": \"string\",\n \"description\": + \"The high-level, or primary, reason that the content is abusive. The value + is an abuse report reason ID.\"\n }\n },\n \"id\": \"VideoAbuseReport\"\n + \ },\n \"ThumbnailSetResponse\": {\n \"properties\": {\n \"items\": + {\n \"type\": \"array\",\n \"description\": \"A list of + thumbnails.\",\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n + \ }\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#thumbnailSetResponse\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n + \ \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"ThumbnailSetResponse\"\n },\n \"CommentSnippet\": {\n \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\"\n }\n - \ },\n \"description\": \"Information about the uploaded video.\",\n - \ \"id\": \"ActivityContentDetailsUpload\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"kind\": - {\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ThirdPartyLinkListResponse\"\n },\n \"LiveChatMessage\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessage\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the message.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatMessage\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"authorDetails\": {\n \"$ref\": - \"LiveChatMessageAuthorDetails\",\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n - \ }\n },\n \"description\": \"A *liveChatMessage* resource - represents a chat message in a YouTube Live Chat.\"\n },\n \"Subscription\": - {\n \"id\": \"Subscription\",\n \"properties\": {\n \"contentDetails\": - {\n \"$ref\": \"SubscriptionContentDetails\",\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\"\n - \ },\n \"subscriberSnippet\": {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"The subscriberSnippet object contains basic details - about the subscriber.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#subscription\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#subscription\\\".\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the subscription, including its title and the channel - that the user subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\"\n },\n \"InvideoPosition\": - {\n \"description\": \"Describes the spatial position of a visual widget - inside a video. It is a union of various position types, out of which only - will be set one.\",\n \"type\": \"object\",\n \"id\": \"InvideoPosition\",\n - \ \"properties\": {\n \"cornerPosition\": {\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\",\n - \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"type\": - {\n \"description\": \"Defines the position type.\",\n \"enumDescriptions\": - [\n \"\"\n ],\n \"enum\": [\n \"corner\"\n - \ ],\n \"type\": \"string\"\n }\n }\n },\n - \ \"VideoProjectDetails\": {\n \"type\": \"object\",\n \"description\": - \"DEPRECATED. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"id\": \"VideoProjectDetails\",\n \"properties\": {}\n },\n - \ \"ActivityContentDetailsLike\": {\n \"type\": \"object\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\"\n - \ }\n },\n \"description\": \"Information about a resource - that received a positive (like) rating.\",\n \"id\": \"ActivityContentDetailsLike\"\n - \ },\n \"Thumbnail\": {\n \"properties\": {\n \"height\": - {\n \"type\": \"integer\",\n \"description\": \"(Optional) - Height of the thumbnail image.\",\n \"format\": \"uint32\"\n },\n - \ \"width\": {\n \"description\": \"(Optional) Width of the - thumbnail image.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"url\": {\n \"description\": \"The - thumbnail image's URL.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A thumbnail is an image representing a YouTube resource.\",\n - \ \"id\": \"Thumbnail\",\n \"type\": \"object\"\n },\n \"AbuseType\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"AbuseType\",\n \"type\": \"object\"\n - \ },\n \"SuperChatEvent\": {\n \"description\": \"A `__superChatEvent__` - resource represents a Super Chat purchase on a YouTube channel.\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#superChatEvent\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the Super Chat event.\",\n \"$ref\": \"SuperChatEventSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the Super Chat event.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"SuperChatEvent\",\n \"type\": - \"object\"\n },\n \"LiveStreamConfigurationIssue\": {\n \"type\": - \"object\",\n \"properties\": {\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The long-form description of the - issue and how to resolve it.\"\n },\n \"reason\": {\n \"type\": - \"string\",\n \"description\": \"The short-form reason for this issue.\"\n - \ },\n \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ],\n \"enumDescriptions\": + \"The ID of the video the comment refers to, if any.\"\n },\n \"viewerRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"description\": \"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.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"authorProfileImageUrl\": + {\n \"description\": \"The URL for the avatar of the user who posted + the comment.\",\n \"type\": \"string\"\n },\n \"textOriginal\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"parentId\": + {\n \"description\": \"The unique id of the parent comment, only + set for replies.\",\n \"type\": \"string\"\n },\n \"authorDisplayName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the user who posted the comment.\"\n },\n \"updatedAt\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the comment was last updated.\"\n + \ },\n \"authorChannelUrl\": {\n \"description\": \"Link + to the author's YouTube channel, if any.\",\n \"type\": \"string\"\n + \ },\n \"moderationStatus\": {\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ],\n \"description\": + \"The comment's moderation status. Will not be set if the comments were requested + through the id filter.\"\n },\n \"likeCount\": {\n \"description\": + \"The total number of likes this comment has received.\",\n \"format\": + \"uint32\",\n \"type\": \"integer\"\n },\n \"textDisplay\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n + \ \"canRate\": {\n \"description\": \"Whether the current viewer + can rate this comment.\",\n \"type\": \"boolean\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"description\": \"The + date and time when the comment was originally published.\",\n \"type\": + \"string\"\n },\n \"authorChannelId\": {\n \"$ref\": + \"CommentSnippetAuthorChannelId\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"CommentSnippet\",\n \"description\": \"Basic details + about a comment, such as its author and text.\"\n },\n \"LiveChatMembershipGiftingDetails\": + {\n \"properties\": {\n \"giftMembershipsLevelName\": {\n \"type\": + \"string\",\n \"description\": \"The name of the level of the gift + memberships purchased by the user. The Level names are defined by the YouTube + channel offering the Membership. In some situations this field isn't filled.\"\n + \ },\n \"giftMembershipsCount\": {\n \"type\": \"integer\",\n + \ \"description\": \"The number of gift memberships purchased by the + user.\",\n \"format\": \"int32\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n + \ \"CdnSettings\": {\n \"properties\": {\n \"ingestionType\": + {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n + \ ]\n },\n \"description\": \" The method or protocol + used to transmit the video stream.\",\n \"enum\": [\n \"rtmp\",\n + \ \"dash\",\n \"webrtc\",\n \"hls\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"frameRate\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"30fps\",\n + \ \"60fps\",\n \"variable\"\n ],\n \"description\": + \"The frame rate of the inbound video data.\",\n \"type\": \"string\"\n + \ },\n \"resolution\": {\n \"enum\": [\n \"240p\",\n + \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n + \ \"1440p\",\n \"2160p\",\n \"variable\"\n + \ ],\n \"description\": \"The resolution of the inbound video + data.\",\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The kind of error happening.\"\n },\n \"severity\": {\n \"description\": - \"How severe this issue is to the stream.\",\n \"enum\": [\n \"info\",\n - \ \"warning\",\n \"error\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"ImageSettings\": {\n \"id\": \"ImageSettings\",\n \"type\": - \"object\",\n \"description\": \"Branding properties for images associated - with the channel.\",\n \"properties\": {\n \"bannerTabletImageUrl\": - {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n - \ \"type\": \"string\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"largeBrandedBannerImageUrl\": {\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": - {\n \"description\": \"Banner image. Mobile size (640x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size low resolution (1138x188).\"\n },\n \"bannerTvLowImageUrl\": - {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": - {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n - \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"bannerTabletExtraHdImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Tablet size extra high resolution - (2560x424).\"\n },\n \"backgroundImageUrl\": {\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTvImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n },\n \"trackingImageUrl\": - {\n \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ChannelSectionListResponse\": - {\n \"id\": \"ChannelSectionListResponse\",\n \"properties\": {\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of ChannelSections that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ }\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoMonetizationDetails\": {\n \"properties\": {\n \"access\": - {\n \"description\": \"The value of access indicates whether the - video can be monetized or not.\",\n \"$ref\": \"AccessPolicy\"\n - \ }\n },\n \"id\": \"VideoMonetizationDetails\",\n \"description\": - \"Details about monetization of a YouTube Video.\",\n \"type\": \"object\"\n - \ },\n \"VideoAbuseReportReasonSnippet\": {\n \"description\": \"Basic - details about a video category, such as its localized title.\",\n \"type\": - \"object\",\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"properties\": - {\n \"label\": {\n \"description\": \"The localized label - belonging to this abuse report reason.\",\n \"type\": \"string\"\n - \ },\n \"secondaryReasons\": {\n \"type\": \"array\",\n - \ \"description\": \"The secondary reasons associated with this reason, - if any are available. (There might be 0 or more.)\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n }\n - \ }\n }\n },\n \"ChannelStatistics\": {\n \"properties\": - {\n \"subscriberCount\": {\n \"description\": \"The number - of subscribers that the channel has.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"viewCount\": {\n \"description\": - \"The number of times the channel has been viewed.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"videoCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of videos uploaded to the channel.\",\n \"type\": \"string\"\n },\n - \ \"commentCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of comments for the channel.\"\n - \ },\n \"hiddenSubscriberCount\": {\n \"description\": - \"Whether or not the number of subscribers is shown for this user.\",\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelStatistics\",\n \"description\": \"Statistics about a channel: - number of subscribers, number of videos in the channel, etc.\"\n }\n },\n - \ \"fullyEncodeReservedExpansion\": true,\n \"title\": \"YouTube Data API - v3\"\n}\n" + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"ingestionInfo\": {\n \"$ref\": + \"IngestionInfo\",\n \"description\": \"The ingestionInfo object + contains information that YouTube provides that you need to transmit your + RTMP or HTTP stream to YouTube.\"\n },\n \"format\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"description\": \"The format of the video stream that you are sending + to Youtube. \",\n \"type\": \"string\"\n }\n },\n \"description\": + \"Brief description of the live stream cdn settings.\",\n \"type\": \"object\",\n + \ \"id\": \"CdnSettings\"\n }\n },\n \"fullyEncodeReservedExpansion\": + true,\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n + \ \"ownerDomain\": \"google.com\",\n \"description\": \"The YouTube Data + API v3 is an API that provides access to YouTube data, such as videos, playlists, + and channels.\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n + \ \"batchPath\": \"batch\",\n \"name\": \"youtube\",\n \"title\": \"YouTube + Data API v3\",\n \"canonicalName\": \"YouTube\",\n \"basePath\": \"\"\n}\n" headers: Alt-Svc: - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 @@ -12474,7 +12471,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:45 GMT + - Thu, 09 Mar 2023 00:27:07 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: @@ -12534,7 +12531,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:45 GMT + - Thu, 09 Mar 2023 00:27:07 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: diff --git a/tests/cassettes/test_youtube/test_donate_full.yaml b/tests/cassettes/test_youtube/test_donate_full.yaml index 46b4c71c..66e23bf9 100644 --- a/tests/cassettes/test_youtube/test_donate_full.yaml +++ b/tests/cassettes/test_youtube/test_donate_full.yaml @@ -10,8848 +10,2261 @@ interactions: uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest response: body: - string: "{\n \"protocol\": \"rest\",\n \"canonicalName\": \"YouTube\",\n \"resources\": - {\n \"liveChatBans\": {\n \"methods\": {\n \"delete\": {\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.liveChatBans.delete\",\n - \ \"description\": \"Deletes a chat ban.\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n }\n - \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveChatBan\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n }\n }\n }\n - \ },\n \"thumbnails\": {\n \"methods\": {\n \"set\": {\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"path\": - \"youtube/v3/thumbnails/set\",\n \"id\": \"youtube.thumbnails.set\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"videoId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"Returns the Thumbnail with the given - video IDs for Stubby or Apiary.\"\n }\n },\n \"response\": - {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"flatPath\": - \"youtube/v3/thumbnails/set\",\n \"mediaUpload\": {\n \"maxSize\": - \"2097152\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n }\n }\n },\n \"parameterOrder\": - [\n \"videoId\"\n ],\n \"supportsMediaUpload\": - true\n }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"transition\": {\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"description\": \"Transition a broadcast to a given status.\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Broadcast to transition.\",\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"broadcastStatus\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"description\": \"The status to - which the broadcast is going to transition.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"location\": \"query\",\n \"required\": true\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ]\n },\n \"delete\": {\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"id\": - \"youtube.liveBroadcasts.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Delete a given broadcast.\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"Broadcast to delete.\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"update\": {\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.liveBroadcasts.update\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Updates an existing broadcast for the authenticated - user.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/liveBroadcasts\"\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"id\": \"youtube.liveBroadcasts.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieve the list of broadcasts - associated with the given channel.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Return broadcasts with the given - ids from Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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, status and - statistics.\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"maximum\": \"50\"\n },\n \"broadcastType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return only scheduled event broadcasts.\",\n - \ \"Return only persistent broadcasts.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"event\",\n \"description\": \"Return - only broadcasts with the selected type.\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ]\n },\n \"broadcastStatus\": {\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ]\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"GET\"\n },\n \"insert\": {\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ }\n },\n \"bind\": {\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Broadcast to bind to the stream\",\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"streamId\": {\n \"description\": - \"Stream to bind, if not set unbind the current one.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\",\n \"part\"\n ],\n \"description\": - \"Bind a broadcast to a stream.\",\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"insertCuepoint\": - {\n \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"parameterOrder\": [],\n \"description\": \"Insert cuepoints - in a broadcast\",\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Broadcast - to insert ads to, or equivalently `external_video_id` for internal use.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"response\": - {\n \"$ref\": \"Cuepoint\"\n }\n }\n }\n },\n - \ \"comments\": {\n \"methods\": {\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.comments.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"request\": {\n \"$ref\": - \"Comment\"\n }\n },\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.comments.update\",\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\"\n },\n \"list\": {\n \"parameters\": {\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"maxResults\": {\n \"maximum\": - \"100\",\n \"format\": \"uint32\",\n \"minimum\": - \"1\",\n \"type\": \"integer\",\n \"default\": \"20\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"Returns the comments with the - given IDs for One Platform.\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"The *part* parameter specifies a comma-separated - list of one or more comment resource properties that the API response will - include.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"textFormat\": - {\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"html\",\n \"description\": \"The - requested text format for the returned comments.\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ]\n },\n \"parentId\": - {\n \"description\": \"Returns replies to the specified comment. - Note, currently YouTube features only one level of replies (ie replies to - top level comments). However replies to replies may be supported in the future.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.list\",\n \"path\": - \"youtube/v3/comments\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"setModerationStatus\": - {\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"moderationStatus\": - {\n \"required\": true,\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Specifies - the requested moderation status. Note, comments can be in statuses, which - are not available through this call. For example, this call does not allow - to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\"\n },\n - \ \"banAuthor\": {\n \"description\": \"If set to true - the author of the comment gets added to the ban list. This means all future - comments of the author will autmomatically be rejected. Only valid in combination - with STATUS_REJECTED.\",\n \"type\": \"boolean\",\n \"default\": - \"false\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\"\n }\n },\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Sets the moderation status of one - or more comments.\",\n \"parameterOrder\": [\n \"id\",\n - \ \"moderationStatus\"\n ],\n \"id\": \"youtube.comments.setModerationStatus\"\n - \ },\n \"delete\": {\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.comments.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a resource.\",\n \"flatPath\": \"youtube/v3/comments\",\n \"path\": - \"youtube/v3/comments\"\n },\n \"markAsSpam\": {\n \"path\": - \"youtube/v3/comments/markAsSpam\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Flags the comments with the - given IDs as spam in the caller's opinion.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Expresses the caller's opinion - that one or more comments should be flagged as spam.\",\n \"id\": - \"youtube.comments.markAsSpam\"\n }\n }\n },\n \"superChatEvents\": - {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.superChatEvents.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/superChatEvents\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"path\": \"youtube/v3/superChatEvents\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return rendered funding amounts in specified language.\"\n },\n - \ \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - superChatEvent resource parts that the API response will include. This parameter - is currently not supported.\"\n },\n \"maxResults\": - {\n \"minimum\": \"1\",\n \"default\": \"5\",\n - \ \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n }\n }\n }\n }\n },\n \"videoCategories\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videoCategories.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"VideoCategoryListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"regionCode\": {\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Returns the video categories - with the given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"part\": {\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - videoCategory resource properties that the API response will include. Set - the parameter value to snippet.\",\n \"location\": \"query\"\n - \ },\n \"hl\": {\n \"default\": \"en-US\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/videoCategories\"\n - \ }\n }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/videoAbuseReportReasons\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the videoCategory resource parts that the - API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"default\": \"en-US\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.videoAbuseReportReasons.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n }\n }\n },\n \"subscriptions\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"forChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Return the subscriptions to - the subset of these channels that the authenticated user is subscribed to.\",\n - \ \"location\": \"query\"\n },\n \"myRecentSubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"mySubscribers\": {\n \"location\": - \"query\",\n \"description\": \"Return the subscribers of the - given channel owner.\",\n \"type\": \"boolean\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions of the given channel - owner.\"\n },\n \"order\": {\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"The - order of the returned subscriptions\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"default\": \"relevance\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Flag for returning the subscriptions - of the authenticated user.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"path\": - \"youtube/v3/subscriptions\",\n \"response\": {\n \"$ref\": - \"SubscriptionListResponse\"\n },\n \"id\": \"youtube.subscriptions.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/subscriptions\"\n },\n \"delete\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"description\": - \"Deletes a resource.\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.subscriptions.insert\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/subscriptions\",\n \"request\": - {\n \"$ref\": \"Subscription\"\n }\n }\n }\n - \ },\n \"liveStreams\": {\n \"methods\": {\n \"list\": {\n - \ \"parameters\": {\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"Return - LiveStreams with the given ids from Stubby or Apiary.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"format\": \"uint32\",\n \"default\": \"5\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"description\": \"Retrieve the list - of streams associated with the given channel. --\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.liveStreams.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"response\": {\n - \ \"$ref\": \"LiveStreamListResponse\"\n }\n },\n - \ \"update\": {\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.update\",\n \"description\": - \"Updates an existing stream for the authenticated user.\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"httpMethod\": \"PUT\"\n },\n - \ \"insert\": {\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new stream for the authenticated user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.insert\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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, content_details, and status.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"path\": \"youtube/v3/liveStreams\"\n - \ },\n \"delete\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - an existing stream for the authenticated user.\",\n \"id\": \"youtube.liveStreams.delete\"\n - \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"description\": \"Retrieves a list of all pricing - levels offered by a creator to the fans.\",\n \"parameters\": {\n - \ \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"repeated\": - true\n }\n },\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"response\": - {\n \"$ref\": \"MembershipsLevelListResponse\"\n }\n }\n - \ }\n },\n \"liveChatModerators\": {\n \"methods\": {\n \"delete\": - {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Deletes a chat moderator.\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"id\": - \"youtube.liveChatModerators.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"LiveChatModeratorListResponse\"\n },\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"id\": \"youtube.liveChatModerators.list\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"maximum\": - \"50\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the liveChatModerator resource parts that the API response - will include. Supported values are id and snippet.\"\n },\n \"liveChatId\": - {\n \"location\": \"query\",\n \"description\": - \"The id of the live chat for which moderators should be returned.\",\n \"type\": - \"string\",\n \"required\": true\n }\n }\n - \ },\n \"insert\": {\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatModerators.insert\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"i18nRegions\": {\n \"methods\": {\n \"list\": - {\n \"flatPath\": \"youtube/v3/i18nRegions\",\n \"id\": - \"youtube.i18nRegions.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/i18nRegions\",\n \"response\": - {\n \"$ref\": \"I18nRegionListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"hl\": - {\n \"default\": \"en_US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n }\n }\n - \ }\n },\n \"playlists\": {\n \"methods\": {\n \"delete\": - {\n \"id\": \"youtube.playlists.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"update\": {\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.playlists.update\",\n - \ \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/playlists\"\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlists.insert\"\n },\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.playlists.list\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"parameters\": {\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Return - the playlists with the given IDs for Stubby or Apiary.\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Return the playlists owned - by the authenticated user.\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"description\": \"Return the playlists owned by the specified - channel ID.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"description\": \"Return content in specified - language\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"response\": {\n \"$ref\": - \"PlaylistListResponse\"\n }\n }\n }\n },\n \"liveChatMessages\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"parameters\": {\n \"liveChatId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The id of the live chat for which comments - should be returned.\",\n \"required\": true\n },\n - \ \"profileImageSize\": {\n \"maximum\": \"720\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"16\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\",\n \"location\": \"query\",\n - \ \"type\": \"integer\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the localization language in which - the system messages should be returned.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"description\": \"The - *part* parameter specifies the liveChatComment resource parts that the API - response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"default\": \"500\",\n - \ \"minimum\": \"200\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"maximum\": \"2000\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"request\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"response\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveChat/messages\"\n },\n \"delete\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"id\": \"youtube.liveChatMessages.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a chat message.\",\n \"httpMethod\": \"DELETE\",\n \"path\": - \"youtube/v3/liveChat/messages\"\n }\n }\n },\n \"channelBanners\": - {\n \"methods\": {\n \"insert\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"path\": \"youtube/v3/channelBanners/insert\",\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\"\n },\n \"parameterOrder\": - [],\n \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"id\": \"youtube.channelBanners.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"description\": \"Inserts - a new resource into this collection.\",\n \"httpMethod\": \"POST\"\n - \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"path\": \"youtube/v3/captions\",\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is on behalf of.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"description\": \"Returns the captions for the specified - video.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the captions with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"id\": \"youtube.captions.list\",\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ]\n },\n - \ \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"Caption\"\n - \ },\n \"id\": \"youtube.captions.update\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Updates - an existing resource.\",\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"maxSize\": \"104857600\"\n },\n \"supportsMediaUpload\": - true\n },\n \"download\": {\n \"httpMethod\": \"GET\",\n - \ \"supportsMediaDownload\": true,\n \"flatPath\": \"youtube/v3/captions/{id}\",\n - \ \"id\": \"youtube.captions.download\",\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Downloads a caption track.\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"path\",\n - \ \"type\": \"string\",\n \"description\": \"The - ID of the caption track to download, required for One Platform.\"\n },\n - \ \"tlang\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"tlang is the language code; machine - translate the captions into this language.\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n },\n \"tfmt\": - {\n \"location\": \"query\",\n \"description\": - \"Convert the captions into this format. Supported options are sbv, srt, and - vtt.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"useMediaDownloadService\": true\n },\n \"delete\": - {\n \"id\": \"youtube.captions.delete\",\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\",\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"flatPath\": \"youtube/v3/captions\"\n },\n \"insert\": - {\n \"flatPath\": \"youtube/v3/captions\",\n \"supportsMediaUpload\": - true,\n \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ },\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n - \ },\n \"id\": \"youtube.captions.insert\",\n \"path\": - \"youtube/v3/captions\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the caption resource parts that the API response will include. Set the parameter - value to snippet.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is be on behalf of\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"sync\": - {\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"id\": \"youtube.members.list\",\n \"path\": - \"youtube/v3/members\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/members\",\n \"parameters\": - {\n \"mode\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ],\n \"default\": \"all_current\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Parameter - that specifies which channel members to return.\"\n },\n \"filterByMemberChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"1000\",\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\"\n - \ },\n \"hasAccessToLevel\": {\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"description\": - \"Retrieves a list of members that match the request criteria for a channel.\"\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"id\": \"youtube.videos.delete\",\n \"description\": - \"Deletes a resource.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"path\": - \"youtube/v3/videos\",\n \"httpMethod\": \"DELETE\"\n },\n - \ \"rate\": {\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ],\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.rate\",\n \"description\": - \"Adds a like or dislike rating to a video or removes a rating from a video.\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/videos/rate\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"rating\": {\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n }\n },\n - \ \"getRating\": {\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.videos.getRating\",\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/videos/getRating\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Retrieves the ratings that the authorized user gave to a list of specified - videos.\"\n },\n \"reportAbuse\": {\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"description\": \"Report abuse for a video.\",\n \"id\": - \"youtube.videos.reportAbuse\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n - \ },\n \"parameterOrder\": [],\n \"httpMethod\": - \"POST\"\n },\n \"insert\": {\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"id\": \"youtube.videos.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"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.\"\n },\n \"stabilize\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Should stabilize be applied to the upload.\"\n },\n \"autoLevels\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Should auto-levels be applied to the upload.\"\n - \ },\n \"notifySubscribers\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"default\": - \"true\",\n \"description\": \"Notify the channel subscribers - about the new video. As default, the notification is enabled.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"mediaUpload\": {\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/videos\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"274877906944\",\n - \ \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n - \ ]\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"path\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"supportsMediaUpload\": - true\n },\n \"list\": {\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"chart\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - the most popular videos for the specified content region and video category.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": - [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Return the videos that are in the specified chart.\"\n },\n \"videoCategoryId\": - {\n \"type\": \"string\",\n \"description\": \"Use - chart that is specific to the specified video category\",\n \"location\": - \"query\",\n \"default\": \"0\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"regionCode\": {\n \"description\": - \"Use a chart that is specific to the specified region\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true\n },\n \"locale\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxWidth\": {\n \"minimum\": \"72\",\n - \ \"type\": \"integer\",\n \"maximum\": \"8192\",\n - \ \"format\": \"int32\",\n \"location\": \"query\",\n - \ \"description\": \"Return the player with maximum height specified - in\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"description\": \"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.\",\n \"minimum\": \"1\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxHeight\": {\n \"type\": - \"integer\",\n \"minimum\": \"72\",\n \"format\": - \"int32\",\n \"maximum\": \"8192\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Return videos with the given ids.\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"myRating\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"description\": - \"Return videos liked/disliked by the authenticated user. Does not support - RateType.RATED_TYPE_NONE.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ]\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.videos.list\",\n \"response\": - {\n \"$ref\": \"VideoListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/videos\"\n - \ },\n \"update\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"required\": true,\n \"type\": \"string\"\n }\n - \ },\n \"path\": \"youtube/v3/videos\",\n \"description\": - \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"id\": \"youtube.videos.update\",\n \"httpMethod\": - \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos\"\n }\n }\n },\n - \ \"playlistItems\": {\n \"methods\": {\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n }\n - \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.playlistItems.delete\",\n - \ \"description\": \"Deletes a resource.\"\n },\n \"update\": - {\n \"id\": \"youtube.playlistItems.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"PUT\"\n },\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the playlist items associated with the given video ID.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"type\": \"integer\",\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"minimum\": \"0\",\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"playlistId\": - {\n \"description\": \"Return the playlist items within the given - playlist.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.list\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"path\": \"youtube/v3/playlistItems\"\n }\n - \ }\n },\n \"activities\": {\n \"methods\": {\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"parameters\": {\n \"publishedBefore\": - {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n - \ \"type\": \"string\"\n },\n \"publishedAfter\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"home\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"location\": \"query\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"id\": \"youtube.activities.list\",\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n },\n \"path\": - \"youtube/v3/activities\"\n }\n }\n },\n \"watermarks\": - {\n \"methods\": {\n \"set\": {\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"id\": - \"youtube.watermarks.set\",\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n - \ \"supportsMediaUpload\": true,\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"description\": \"Allows upload - of watermark image and setting it for a channel.\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n },\n - \ \"resumable\": {\n \"multipart\": true,\n \"path\": - \"/resumable/upload/youtube/v3/watermarks/set\"\n }\n },\n - \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"10485760\"\n },\n \"parameterOrder\": [\n \"channelId\"\n - \ ]\n },\n \"unset\": {\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/watermarks/unset\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"description\": \"Allows removal of channel watermark.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.watermarks.unset\",\n \"httpMethod\": - \"POST\"\n }\n }\n },\n \"channels\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"path\": \"youtube/v3/channels\",\n \"flatPath\": - \"youtube/v3/channels\",\n \"id\": \"youtube.channels.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Stands - for \\\"host language\\\". Specifies the localization language of the metadata - to be filled into snippet.localized. The field is filled with the default - metadata if there is no localization in the specified language. The parameter - value must be a language code included in the list returned by the i18nLanguages.list - method (e.g. en_US, es_MX).\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"minimum\": \"0\",\n - \ \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"format\": \"uint32\"\n },\n - \ \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Return - the channels with the specified IDs.\"\n },\n \"mySubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channels subscribed to the authenticated - user\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"categoryId\": {\n \"location\": \"query\",\n \"description\": - \"Return the channels within the specified guide category ID.\",\n \"type\": - \"string\"\n },\n \"forUsername\": {\n \"description\": - \"Return the channel associated with a YouTube username.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"description\": \"Return the ids of channels owned by the - authenticated user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"managedByMe\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the channels managed by the authenticated user.\"\n }\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ }\n },\n \"update\": {\n \"httpMethod\": - \"PUT\",\n \"request\": {\n \"$ref\": \"Channel\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/channels\",\n \"path\": \"youtube/v3/channels\",\n \"id\": - \"youtube.channels.update\",\n \"description\": \"Updates an existing - resource.\",\n \"response\": {\n \"$ref\": \"Channel\"\n - \ }\n }\n }\n },\n \"abuseReports\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"path\": \"youtube/v3/abuseReports\",\n \"flatPath\": - \"youtube/v3/abuseReports\",\n \"description\": \"Inserts a new resource - into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n }\n }\n - \ }\n },\n \"channelSections\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"mine\": {\n \"description\": \"Return the ChannelSections - owned by the authenticated user.\",\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\"\n },\n - \ \"hl\": {\n \"description\": \"Return content in - specified language\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the ChannelSections owned by the specified - channel ID.\"\n },\n \"id\": {\n \"description\": - \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.channelSections.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/channelSections\"\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\"\n },\n - \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"id\": \"youtube.channelSections.insert\"\n - \ },\n \"update\": {\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"id\": \"youtube.channelSections.update\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"path\": - \"youtube/v3/channelSections\",\n \"description\": \"Updates an existing - resource.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"httpMethod\": \"PUT\"\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"id\": \"youtube.i18nLanguages.list\",\n \"response\": - {\n \"$ref\": \"I18nLanguageListResponse\"\n },\n \"parameters\": - {\n \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"en_US\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the i18nLanguage resource properties that the API - response will include. Set the parameter value to snippet.\",\n \"repeated\": - true\n }\n },\n \"path\": \"youtube/v3/i18nLanguages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"thirdPartyLinks\": {\n \"methods\": {\n \"update\": - {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\"\n },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel ID to which changes - should be applied, for delegation.\",\n \"location\": \"query\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n }\n },\n \"insert\": {\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"id\": - \"youtube.thirdPartyLinks.insert\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\"\n },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n }\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"httpMethod\": - \"POST\"\n },\n \"delete\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"linkingToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"Delete - the partner links with the given linking token.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Do not use. Required for compatibility.\",\n - \ \"repeated\": true\n },\n \"type\": {\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"description\": \"Type of the link to be - deleted.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"required\": - true\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n - \ ],\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.delete\"\n },\n \"list\": {\n \"id\": - \"youtube.thirdPartyLinks.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"type\": - {\n \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Get a third party link of the given type.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ]\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"linkingToken\": {\n \"description\": - \"Get a third party link with the given linking token.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - response will include. Supported values are linkingToken, status, and snippet.\",\n - \ \"repeated\": true\n }\n }\n }\n - \ }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"id\": \"youtube.tests.insert\",\n \"response\": {\n - \ \"$ref\": \"TestItem\"\n },\n \"request\": {\n - \ \"$ref\": \"TestItem\"\n },\n \"description\": - \"POST method.\",\n \"flatPath\": \"youtube/v3/tests\",\n \"path\": - \"youtube/v3/tests\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n }\n }\n - \ }\n },\n \"commentThreads\": {\n \"methods\": {\n \"insert\": - {\n \"id\": \"youtube.commentThreads.insert\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\",\n - \ \"repeated\": true\n }\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/commentThreads\"\n },\n \"list\": - {\n \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"id\": {\n \"description\": - \"Returns the comment threads with the given IDs for Stubby or Apiary.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"order\": {\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Order by time.\",\n \"Order by relevance.\"\n - \ ],\n \"default\": \"time\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"textFormat\": - {\n \"type\": \"string\",\n \"description\": \"The - requested text format for the returned comments.\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"default\": - \"html\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"required\": true,\n \"type\": - \"string\"\n },\n \"searchTerms\": {\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of the specified video.\",\n \"type\": - \"string\"\n },\n \"moderationStatus\": {\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\",\n \"default\": \"published\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"default\": - \"20\",\n \"location\": \"query\",\n \"maximum\": - \"100\",\n \"minimum\": \"1\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.commentThreads.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"search\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"videoLicense\": {\n \"enum\": - [\n \"any\",\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Filter on the license of the videos.\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"type\": \"string\"\n },\n \"videoCaption\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on the presence of captions on the videos.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter results based on caption availability.\",\n - \ \"Only include videos that have captions.\",\n \"Only - include videos that do not have captions.\"\n ],\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ]\n - \ },\n \"location\": {\n \"location\": \"query\",\n - \ \"description\": \"Filter on location of the video\",\n \"type\": - \"string\"\n },\n \"forDeveloper\": {\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"eventType\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been - completed.\"\n ],\n \"description\": \"Filter on - the livestream status of the videos.\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n - \ },\n \"videoEmbeddable\": {\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, embeddable or not.\",\n \"Only - retrieve embeddable videos.\"\n ],\n \"description\": - \"Filter on embeddable videos.\",\n \"type\": \"string\",\n \"enum\": - [\n \"videoEmbeddableUnspecified\",\n \"any\",\n - \ \"true\"\n ]\n },\n \"videoDuration\": - {\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter video search results based on their duration. This is the default - value.\",\n \"Only include videos that are less than four minutes - long.\",\n \"Only include videos that are between four and - 20 minutes long (inclusive).\",\n \"Only include videos longer - than 20 minutes.\"\n ],\n \"description\": \"Filter - on the duration of the videos.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": true\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"type\": - \"integer\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"format\": \"uint32\"\n },\n \"type\": - {\n \"description\": \"Restrict results to a particular set of - resource types from One Platform.\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"relevanceLanguage\": {\n \"type\": - \"string\",\n \"description\": \"Return results relevant to this - language.\",\n \"location\": \"query\"\n },\n \"locationRadius\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on distance from the location (specified above).\",\n \"location\": - \"query\"\n },\n \"channelType\": {\n \"description\": - \"Add a filter on the channel search.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ]\n },\n - \ \"order\": {\n \"description\": \"Sort order of the - results.\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": - \"relevance\"\n },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Display the content as seen by viewers in this country.\"\n },\n - \ \"relatedToVideoId\": {\n \"location\": \"query\",\n - \ \"description\": \"Search related to a resource.\",\n \"type\": - \"string\"\n },\n \"publishedAfter\": {\n \"type\": - \"string\",\n \"description\": \"Filter on resources published - after this date.\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"videoDimension\": {\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on 3d videos.\"\n },\n \"publishedBefore\": - {\n \"type\": \"string\",\n \"format\": \"google-datetime\",\n - \ \"location\": \"query\",\n \"description\": \"Filter - on resources published before this date.\"\n },\n \"forContentOwner\": - {\n \"type\": \"boolean\",\n \"description\": \"Search - owned by a content owner.\",\n \"location\": \"query\"\n },\n - \ \"q\": {\n \"description\": \"Textual search terms - to match.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoDefinition\": {\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"Return - all videos, regardless of their resolution.\",\n \"Only retrieve - videos in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": - [\n \"any\",\n \"standard\",\n \"high\"\n - \ ],\n \"description\": \"Filter on the definition - of the videos.\"\n },\n \"videoType\": {\n \"description\": - \"Filter on videos of a specific type.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos.\",\n \"Only retrieve movies.\",\n - \ \"Only retrieve episodes of shows.\"\n ]\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"forMine\": {\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"topicId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Restrict results to a particular topic.\"\n - \ },\n \"videoCategoryId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on videos in a specific category.\"\n },\n \"safeSearch\": - {\n \"description\": \"Indicates whether the search results should - include restricted content as well as standard content.\",\n \"enumDescriptions\": - [\n \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"enum\": - [\n \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"type\": \"string\",\n \"default\": \"moderate\",\n - \ \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on resources belonging to this channelId.\"\n - \ },\n \"videoSyndicated\": {\n \"type\": - \"string\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Filter - on syndicated videos.\"\n }\n },\n \"flatPath\": - \"youtube/v3/search\",\n \"path\": \"youtube/v3/search\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.search.list\",\n \"description\": \"Retrieves - a list of search resources\",\n \"response\": {\n \"$ref\": - \"SearchListResponse\"\n }\n }\n }\n },\n \"youtube\": - {\n \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"parameterOrder\": [],\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"CommentThread\"\n }\n }\n }\n }\n - \ }\n }\n },\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"version\": \"v3\",\n \"schemas\": {\n \"ActivityContentDetailsSubscription\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"description\": \"Information about a channel that a user subscribed - to.\"\n },\n \"Cuepoint\": {\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\"\n },\n \"cueType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ]\n },\n \"walltimeMs\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The wall clock time at which the cuepoint should be inserted. Only one of - insertion_offset_time_ms and walltime_ms may be set at a time.\"\n },\n - \ \"insertionOffsetTimeMs\": {\n \"description\": \"The time - when the cuepoint should be inserted by offset to the broadcast actual start - time.\",\n \"format\": \"int64\",\n \"type\": \"string\"\n - \ },\n \"durationSecs\": {\n \"description\": \"The - duration of this cuepoint.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"id\": {\n \"description\": \"The - identifier for cuepoint resource.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"Cuepoint\",\n \"description\": \"Note that - there may be a 5-second end-point resolution issue. For instance, if a cuepoint - comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, - depending. This is an artifact of HLS.\"\n },\n \"VideoContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"countryRestriction\": - {\n \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\",\n \"$ref\": - \"AccessPolicy\"\n },\n \"contentRating\": {\n \"$ref\": - \"ContentRating\",\n \"description\": \"Specifies the ratings that - the video received under various rating schemes.\"\n },\n \"duration\": - {\n \"type\": \"string\",\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"dimension\": {\n \"type\": \"string\",\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\"\n },\n \"hasCustomThumbnail\": {\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n },\n \"caption\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"true\",\n \"false\"\n ],\n - \ \"description\": \"The value of captions indicates whether the video - has captions or not.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ]\n },\n \"projection\": {\n \"description\": - \"Specifies the projection format of the video.\",\n \"enum\": [\n - \ \"rectangular\",\n \"360\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"licensedContent\": {\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\",\n \"type\": \"boolean\"\n },\n \"definition\": - {\n \"enum\": [\n \"sd\",\n \"hd\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"description\": \"The value of - definition indicates whether the video is available in high definition or - only in standard definition.\"\n },\n \"regionRestriction\": - {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\"\n }\n - \ },\n \"description\": \"Details about the content of a YouTube - Video.\",\n \"id\": \"VideoContentDetails\"\n },\n \"VideoFileDetailsAudioStream\": - {\n \"id\": \"VideoFileDetailsAudioStream\",\n \"type\": \"object\",\n - \ \"description\": \"Information about an audio stream.\",\n \"properties\": - {\n \"codec\": {\n \"description\": \"The audio codec that - the stream uses.\",\n \"type\": \"string\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The audio stream's bitrate, in bits per second.\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n },\n \"channelCount\": {\n \"type\": - \"integer\",\n \"description\": \"The number of audio channels that - the stream contains.\",\n \"format\": \"uint32\"\n }\n }\n - \ },\n \"VideoStatistics\": {\n \"description\": \"Statistics about - the video, such as the number of times the video was viewed or liked.\",\n - \ \"id\": \"VideoStatistics\",\n \"type\": \"object\",\n \"properties\": - {\n \"likeCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of users who have indicated that they liked the video by giving - it a positive rating.\",\n \"type\": \"string\"\n },\n \"viewCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of times the video has been viewed.\"\n },\n \"dislikeCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of users who have indicated that they disliked the video by giving - it a negative rating.\"\n },\n \"favoriteCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of users who currently have the video marked as a favorite video.\"\n - \ },\n \"commentCount\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of comments for the video.\",\n \"format\": - \"uint64\"\n }\n }\n },\n \"LiveChatModerator\": {\n \"id\": - \"LiveChatModerator\",\n \"type\": \"object\",\n \"description\": - \"A *liveChatModerator* resource represents a moderator for a YouTube live - chat. A chat moderator has the ability to ban/unban users from a chat, remove - message, etc.\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#liveChatModerator\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the moderator.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the moderator.\",\n \"$ref\": - \"LiveChatModeratorSnippet\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ }\n },\n \"ActivityContentDetailsBulletin\": {\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\"\n }\n - \ },\n \"id\": \"ActivityContentDetailsBulletin\",\n \"type\": - \"object\",\n \"description\": \"Details about a channel bulletin post.\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"description\": - \"Information that identifies the recommended resource.\",\n \"id\": - \"ActivityContentDetailsRecommendation\",\n \"type\": \"object\",\n \"properties\": - {\n \"reason\": {\n \"description\": \"The reason that the - resource is recommended to the user.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"reasonUnspecified\",\n \"videoFavorited\",\n - \ \"videoLiked\",\n \"videoWatched\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the recommended resource.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"seedResourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\"\n }\n }\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"properties\": {\n - \ \"userComment\": {\n \"description\": \"The comment added - by the user to this fan funding event.\",\n \"type\": \"string\"\n - \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\"\n },\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - amount of the fund.\"\n },\n \"currency\": {\n \"type\": - \"string\",\n \"description\": \"The currency in which the fund was - made.\"\n }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"LiveStreamContentDetails\": {\n \"description\": \"Detailed - settings of a stream.\",\n \"id\": \"LiveStreamContentDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"isReusable\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the stream is - reusable, which means that it can be bound to multiple broadcasts. It is common - for broadcasters to reuse the same stream for many different broadcasts if - those broadcasts occur at different times. If you set this value to false, - then the stream will not be reusable, which means that it can only be bound - to one broadcast. Non-reusable streams differ from reusable streams in the - following ways: - A non-reusable stream can only be bound to one broadcast. - - A non-reusable stream might be deleted by an automated process after the - broadcast ends. - The liveStreams.list method does not list non-reusable streams - if you call the method and set the mine parameter to true. The only way to - use that method to retrieve the resource for a non-reusable stream is to use - the id parameter to identify the stream. \"\n },\n \"closedCaptionsIngestionUrl\": - {\n \"description\": \"The ingestion URL where the closed captions - of this stream are sent.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"SearchListResponse\": {\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n \"default\": - \"youtube#searchListResponse\",\n \"type\": \"string\"\n },\n - \ \"regionCode\": {\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"Pagination - information for token pagination.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SearchResult\"\n }\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": - \"SearchListResponse\",\n \"type\": \"object\"\n },\n \"ChannelConversionPings\": - {\n \"properties\": {\n \"pings\": {\n \"type\": \"array\",\n - \ \"description\": \"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.\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n }\n }\n },\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"id\": \"ChannelConversionPings\",\n - \ \"type\": \"object\"\n },\n \"I18nLanguageSnippet\": {\n \"id\": - \"I18nLanguageSnippet\",\n \"properties\": {\n \"name\": {\n \"type\": - \"string\",\n \"description\": \"The human-readable name of the language - in the language itself.\"\n },\n \"hl\": {\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - an i18n language, such as language code and human-readable name.\",\n \"type\": - \"object\"\n },\n \"ResourceId\": {\n \"properties\": {\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the referred resource, if that resource is a channel. This property is only - present if the resourceId.kind value is youtube#channel.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"The type of the API resource.\",\n \"type\": - \"string\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ResourceId\",\n \"description\": \"A resource - id is a generic reference that points to another YouTube resource.\",\n \"type\": - \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": {\n - \ \"description\": \"Video processing progress and completion time estimate.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"timeLeftMs\": - {\n \"description\": \"An estimate of the amount of time, in millseconds, - that YouTube needs to finish processing the video.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"partsTotal\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"An estimate of the total number of parts that need to be processed for the - video. The number may be updated with more precise estimates while YouTube - processes the video.\"\n },\n \"partsProcessed\": {\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoProcessingDetailsProcessingProgress\"\n },\n - \ \"SearchResult\": {\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The id object contains - information that can be used to uniquely identify the resource that matches - the search request.\",\n \"$ref\": \"ResourceId\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about a search result, such as its title or description. For example, if the - search result is a video, then the title will be the video's title and the - description will be the video's description.\",\n \"$ref\": \"SearchResultSnippet\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#searchResult\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"SearchResult\",\n - \ \"description\": \"A search result contains information about a YouTube - video, channel, or playlist that matches the search parameters specified in - an API request. While a search result points to a uniquely identifiable resource, - like a video, it does not have its own persistent data.\"\n },\n \"ChannelSectionTargeting\": - {\n \"description\": \"ChannelSection targeting setting.\",\n \"type\": - \"object\",\n \"id\": \"ChannelSectionTargeting\",\n \"properties\": - {\n \"countries\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"The country the channel section is targeting.\"\n },\n \"languages\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The language the channel section is targeting.\",\n - \ \"type\": \"array\"\n },\n \"regions\": {\n \"description\": - \"The region the channel section is targeting.\",\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ }\n }\n },\n \"LiveBroadcastListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - broadcasts that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"LiveBroadcast\"\n }\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveBroadcastListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n }\n - \ },\n \"id\": \"LiveBroadcastListResponse\"\n },\n \"VideoRating\": - {\n \"id\": \"VideoRating\",\n \"description\": \"Basic details - about rating of a video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"rating\": {\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\",\n \"description\": - \"Rating of a video.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ]\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n }\n }\n },\n \"Playlist\": {\n \"description\": - \"A *playlist* resource represents a YouTube playlist. A playlist is a collection - of videos that can be viewed sequentially and shared with other users. A playlist - can contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"type\": \"object\",\n \"id\": - \"Playlist\",\n \"properties\": {\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the playlist - in an embedded player.\",\n \"$ref\": \"PlaylistPlayer\"\n },\n - \ \"status\": {\n \"$ref\": \"PlaylistStatus\",\n \"description\": - \"The status object contains status information for the playlist.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#playlist\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"PlaylistContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - like video count.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"description\": - \"Localizations for different languages\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the playlist, such as its title and description.\",\n \"$ref\": - \"PlaylistSnippet\"\n }\n }\n },\n \"LiveChatNewSponsorDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"isUpgrade\": {\n \"description\": \"If the viewer just - had upgraded from a lower level. For viewers that were not members at the - time of purchase, this field is false.\",\n \"type\": \"boolean\"\n - \ }\n }\n },\n \"MembershipsDuration\": {\n \"properties\": - {\n \"memberSince\": {\n \"description\": \"The date and time - when the user became a continuous member across all levels.\",\n \"type\": - \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"format\": - \"int32\",\n \"description\": \"The cumulative time the user has - been a member across all levels in complete months (the time is rounded down - to the nearest integer).\",\n \"type\": \"integer\"\n }\n - \ },\n \"id\": \"MembershipsDuration\",\n \"type\": \"object\"\n - \ },\n \"InvideoTiming\": {\n \"type\": \"object\",\n \"id\": - \"InvideoTiming\",\n \"properties\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"Describes a timing type. If the value is offsetFromStart, then the offsetMs - field represents an offset from the start of the video. If the value is offsetFromEnd, - then the offsetMs field represents an offset from the end of the video.\",\n - \ \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"type\": \"string\"\n },\n \"durationMs\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\"\n },\n \"offsetMs\": - {\n \"type\": \"string\",\n \"description\": \"Defines the - time at which the promotion will appear. Depending on the value of type the - value of the offsetMs field will represent a time offset from the start or - from the end of the video, expressed in milliseconds.\",\n \"format\": - \"uint64\"\n }\n },\n \"description\": \"Describes a temporal - position of a visual widget inside a video.\"\n },\n \"ChannelSectionLocalization\": - {\n \"description\": \"ChannelSection localization setting\",\n \"id\": - \"ChannelSectionLocalization\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel section's title.\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoRecordingDetails\": {\n \"properties\": - {\n \"locationDescription\": {\n \"description\": \"The text - description of the location where the video was recorded.\",\n \"type\": - \"string\"\n },\n \"recordingDate\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the video was recorded.\"\n },\n \"location\": - {\n \"description\": \"The geolocation information associated with - the video.\",\n \"$ref\": \"GeoPoint\"\n }\n },\n \"description\": - \"Recording information associated with the video.\",\n \"id\": \"VideoRecordingDetails\",\n - \ \"type\": \"object\"\n },\n \"RelatedEntity\": {\n \"type\": - \"object\",\n \"properties\": {\n \"entity\": {\n \"$ref\": - \"Entity\"\n }\n },\n \"id\": \"RelatedEntity\"\n },\n - \ \"TestItem\": {\n \"id\": \"TestItem\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"gaia\": {\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n },\n \"featuredPart\": {\n - \ \"type\": \"boolean\"\n },\n \"id\": {\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ }\n }\n },\n \"ThirdPartyLinkStatus\": {\n \"type\": - \"object\",\n \"description\": \"The third-party link status object contains - information about the status of the link.\",\n \"id\": \"ThirdPartyLinkStatus\",\n - \ \"properties\": {\n \"linkStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"unknown\",\n - \ \"failed\",\n \"pending\",\n \"linked\"\n - \ ]\n }\n }\n },\n \"VideoCategory\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video category.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"default\": \"youtube#videoCategory\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the video category, including its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - *videoCategory* resource identifies a category that has been or could be associated - with uploaded videos.\",\n \"id\": \"VideoCategory\"\n },\n \"VideoProjectDetails\": - {\n \"type\": \"object\",\n \"properties\": {},\n \"id\": \"VideoProjectDetails\",\n - \ \"description\": \"DEPRECATED. b/157517979: This part was never populated - after it was added. However, it sees non-zero traffic because there is generated - client code in the wild that refers to it [1]. We keep this field and do NOT - remove it because otherwise V3 would return an error when this part gets requested - [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"VideoCategorySnippet\": {\n \"type\": \"object\",\n \"id\": - \"VideoCategorySnippet\",\n \"description\": \"Basic details about a - video category, such as its localized title.\",\n \"properties\": {\n - \ \"assignable\": {\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"description\": - \"The YouTube channel that created the video category.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The video category's title.\"\n }\n }\n - \ },\n \"CommentThreadListResponse\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of comment threads that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"CommentThread\"\n - \ }\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n \"default\": - \"youtube#commentThreadListResponse\"\n }\n },\n \"id\": - \"CommentThreadListResponse\",\n \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": - {\n \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"LiveChatMessage\"\n }\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatMessageListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pollingIntervalMillis\": {\n \"description\": \"The amount - of time the client should wait before polling again.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"offlineAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the underlying - stream went offline.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageListResponse\"\n },\n \"LiveChatBan\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatBan\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n }\n - \ },\n \"description\": \"A `__liveChatBan__` resource represents - a ban for a YouTube live chat.\",\n \"id\": \"LiveChatBan\",\n \"type\": - \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": {\n \"properties\": - {\n \"blocked\": {\n \"type\": \"array\",\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"allowed\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\",\n \"type\": \"array\"\n }\n - \ },\n \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"id\": \"VideoContentDetailsRegionRestriction\",\n \"type\": \"object\"\n - \ },\n \"LiveStreamListResponse\": {\n \"id\": \"LiveStreamListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"description\": \"A list of live streams that match - the request criteria.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"default\": \"youtube#liveStreamListResponse\"\n }\n }\n - \ },\n \"VideoAgeGating\": {\n \"type\": \"object\",\n \"properties\": - {\n \"alcoholContent\": {\n \"description\": \"Indicates whether - or not the video has alcoholic beverage content. Only users of legal purchasing - age in a particular country, as identified by ICAP, can view the content.\",\n - \ \"type\": \"boolean\"\n },\n \"restricted\": {\n \"description\": - \"Age-restricted trailers. For redband trailers and adult-rated video-games. - Only users aged 18+ can view the content. The the field is true the content - is restricted to viewers aged 18+. Otherwise The field won't be present.\",\n - \ \"type\": \"boolean\"\n },\n \"videoGameRating\": - {\n \"description\": \"Video game rating, if any.\",\n \"enum\": - [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"id\": - \"VideoAgeGating\"\n },\n \"VideoProcessingDetails\": {\n \"properties\": - {\n \"editorSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether video editing suggestions, - which might improve video quality or the playback experience, are available - for the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"tagSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether keyword (tag) suggestions are available for the video. Tags - can be added to a video's metadata to make it easier for other users to find - the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"fileDetailsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether file details are available for the uploaded video. You can - retrieve a video's file details by requesting the fileDetails part in your - videos.list() request.\"\n },\n \"processingFailureReason\": - {\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\"\n - \ },\n \"thumbnailsAvailability\": {\n \"description\": - \"This value indicates whether thumbnail images have been generated for the - video.\",\n \"type\": \"string\"\n },\n \"processingProgress\": - {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n },\n \"processingStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's processing status. This value indicates - whether YouTube was able to process the video or if the video is still being - processed.\"\n },\n \"processingIssuesAvailability\": {\n \"description\": - \"This value indicates whether the video processing engine has generated suggestions - that might improve YouTube's ability to process the the video, warnings that - explain video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\",\n \"type\": \"object\",\n \"id\": - \"VideoProcessingDetails\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"properties\": {\n \"channelUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channel's URL.\"\n },\n - \ \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channels's avatar URL.\"\n },\n \"isChatSponsor\": {\n - \ \"description\": \"Whether the author is a sponsor of the live chat.\",\n - \ \"type\": \"boolean\"\n },\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n },\n \"isChatModerator\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a moderator - of the live chat.\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"displayName\": {\n \"description\": \"The channel's display - name.\",\n \"type\": \"string\"\n },\n \"isChatOwner\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is the owner of the live chat.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatMessageAuthorDetails\"\n },\n \"CaptionSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"isAutoSynced\": - {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"isLarge\": {\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\",\n \"type\": \"boolean\"\n },\n - \ \"trackKind\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The caption track's type.\",\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ]\n },\n \"lastUpdated\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the caption - track was last updated.\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"type\": \"string\",\n \"enum\": [\n \"serving\",\n - \ \"syncing\",\n \"failed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The caption track's status.\"\n },\n \"failureReason\": - {\n \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The reason that - YouTube failed to process the caption track. This property is only present - if the state property's value is failed.\"\n },\n \"audioTrackType\": - {\n \"description\": \"The type of audio track associated with the - caption track.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"type\": \"string\"\n - \ },\n \"isDraft\": {\n \"description\": \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video associated with the caption track. @mutable - youtube.captions.insert\"\n },\n \"isEasyReader\": {\n \"description\": - \"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.\",\n - \ \"type\": \"boolean\"\n },\n \"name\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The name of the - caption track. The name is intended to be visible to the user as an option - during playback.\"\n },\n \"isCC\": {\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\",\n \"type\": \"boolean\"\n - \ },\n \"language\": {\n \"description\": \"The language - of the caption track. The property value is a BCP-47 language tag.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Basic details about a caption track, such as its - language and name.\",\n \"id\": \"CaptionSnippet\"\n },\n \"AbuseType\": - {\n \"type\": \"object\",\n \"id\": \"AbuseType\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"Video\": {\n \"properties\": {\n \"player\": {\n - \ \"description\": \"The player object contains information that you - would use to play the video in an embedded player.\",\n \"$ref\": - \"VideoPlayer\"\n },\n \"statistics\": {\n \"$ref\": - \"VideoStatistics\",\n \"description\": \"The statistics object contains - statistics about the video.\"\n },\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"snippet\": {\n - \ \"description\": \"The snippet object contains basic details about - the video, such as its title, description, and category.\",\n \"$ref\": - \"VideoSnippet\"\n },\n \"ageGating\": {\n \"description\": - \"Age restriction details related to a video. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoAgeGating\"\n },\n - \ \"processingDetails\": {\n \"$ref\": \"VideoProcessingDetails\",\n - \ \"description\": \"The processingDetails object encapsulates information - about YouTube's progress in processing the uploaded video file. The properties - in the object identify the current processing status and an estimate of the - time remaining until YouTube finishes processing the video. This part also - indicates whether different types of data or content, such as file details - or thumbnail images, are available for the video. The processingProgress object - is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\"\n },\n \"localizations\": - {\n \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"type\": \"object\",\n \"description\": - \"The localizations object contains localized versions of the basic details - about the video, such as its title and description.\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the video's uploading, processing, and privacy statuses.\",\n \"$ref\": - \"VideoStatus\"\n },\n \"fileDetails\": {\n \"$ref\": - \"VideoFileDetails\",\n \"description\": \"The fileDetails object - encapsulates information about the video file that was uploaded to YouTube, - including the file's resolution, duration, audio and video codecs, stream - bitrates, and more. This data can only be retrieved by the video owner.\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"VideoContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\"\n },\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n }\n },\n \"recordingDetails\": {\n - \ \"$ref\": \"VideoRecordingDetails\",\n \"description\": - \"The recordingDetails object encapsulates information about the location, - date and address where the video was recorded.\"\n },\n \"suggestions\": - {\n \"$ref\": \"VideoSuggestions\",\n \"description\": \"The - suggestions object encapsulates suggestions that identify opportunities to - improve the video quality or the metadata for the uploaded video. This data - can only be retrieved by the video owner.\"\n },\n \"monetizationDetails\": - {\n \"$ref\": \"VideoMonetizationDetails\",\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#video\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"projectDetails\": {\n \"$ref\": - \"VideoProjectDetails\",\n \"description\": \"The projectDetails - object contains information about the project specific video metadata. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ }\n },\n \"description\": \"A *video* resource represents - a YouTube video.\",\n \"id\": \"Video\",\n \"type\": \"object\"\n - \ },\n \"CaptionListResponse\": {\n \"type\": \"object\",\n \"id\": - \"CaptionListResponse\",\n \"properties\": {\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"Caption\"\n },\n - \ \"description\": \"A list of captions that match the request criteria.\",\n - \ \"type\": \"array\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ChannelSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a channel, including title, description and thumbnails.\",\n - \ \"id\": \"ChannelSnippet\",\n \"properties\": {\n \"localized\": - {\n \"description\": \"Localized title and description, read-only.\",\n - \ \"$ref\": \"ChannelLocalization\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the channel.\"\n },\n \"customUrl\": {\n \"description\": - \"The custom url of the channel.\",\n \"type\": \"string\"\n },\n - \ \"country\": {\n \"description\": \"The country of the channel.\",\n - \ \"type\": \"string\"\n },\n \"defaultLanguage\": {\n - \ \"type\": \"string\",\n \"description\": \"The language - of the channel's default title and description.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the channel was created.\"\n - \ },\n \"thumbnails\": {\n \"description\": \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"title\": {\n - \ \"description\": \"The channel's title.\",\n \"type\": - \"string\"\n }\n }\n },\n \"MemberListResponse\": {\n \"id\": - \"MemberListResponse\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Member\"\n },\n - \ \"description\": \"A list of members that match the request criteria.\",\n - \ \"type\": \"array\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#memberListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#memberListResponse\\\".\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoSnippet\": - {\n \"properties\": {\n \"localized\": {\n \"$ref\": - \"VideoLocalization\",\n \"description\": \"Localized snippet selected - with the hl parameter. If no such localization exists, this field is populated - with the default snippet. (Read-only)\"\n },\n \"tags\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of keyword tags - associated with the video. Tags may contain spaces.\"\n },\n \"defaultAudioLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the videos's default snippet.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the video - belongs to.\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"categoryId\": {\n \"description\": - \"The YouTube video category associated with the video.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The video's description. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that the video was uploaded to.\"\n },\n \"liveBroadcastContent\": - {\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the video was uploaded.\"\n }\n },\n \"description\": - \"Basic details about a video, including title, description, uploader, thumbnails - and category.\",\n \"id\": \"VideoSnippet\",\n \"type\": \"object\"\n - \ },\n \"ThumbnailSetResponse\": {\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#thumbnailSetResponse\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"description\": \"A list of thumbnails.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ThumbnailSetResponse\"\n },\n \"WatchSettings\": - {\n \"description\": \"Branding properties for the watch. All deprecated.\",\n - \ \"properties\": {\n \"textColor\": {\n \"type\": \"string\",\n - \ \"description\": \"The background color for the video watch page's - branded area.\"\n },\n \"backgroundColor\": {\n \"description\": - \"The text color for the video watch page's branded area.\",\n \"type\": - \"string\"\n },\n \"featuredPlaylistId\": {\n \"type\": - \"string\",\n \"description\": \"An ID that uniquely identifies a - playlist that displays next to the video player.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"WatchSettings\"\n },\n \"ChannelStatistics\": - {\n \"id\": \"ChannelStatistics\",\n \"description\": \"Statistics - about a channel: number of subscribers, number of videos in the channel, etc.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"hiddenSubscriberCount\": - {\n \"description\": \"Whether or not the number of subscribers is - shown for this user.\",\n \"type\": \"boolean\"\n },\n \"subscriberCount\": - {\n \"description\": \"The number of subscribers that the channel - has.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ },\n \"commentCount\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of comments for the channel.\",\n - \ \"format\": \"uint64\"\n },\n \"viewCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of times the channel - has been viewed.\",\n \"type\": \"string\"\n },\n \"videoCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of videos uploaded to the channel.\"\n }\n }\n },\n - \ \"SubscriptionSubscriberSnippet\": {\n \"description\": \"Basic details - about a subscription's subscriber including title, description, channel ID - and thumbnails.\",\n \"properties\": {\n \"description\": {\n - \ \"type\": \"string\",\n \"description\": \"The description - of the subscriber.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"Thumbnails for this subscriber.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the subscriber.\"\n },\n \"channelId\": {\n \"description\": - \"The channel ID of the subscriber.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"SubscriptionSubscriberSnippet\",\n \"type\": - \"object\"\n },\n \"Entity\": {\n \"properties\": {\n \"id\": - {\n \"type\": \"string\"\n },\n \"typeId\": {\n \"type\": - \"string\"\n },\n \"url\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"Entity\",\n \"type\": \"object\"\n - \ },\n \"ContentRating\": {\n \"id\": \"ContentRating\",\n \"type\": - \"object\",\n \"properties\": {\n \"agcomRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ]\n },\n \"cicfRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from the Commission de Contr\xF4le des Films (Belgium).\",\n \"enum\": - [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ]\n },\n - \ \"kijkwijzerRating\": {\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\"\n },\n \"cscfRating\": - {\n \"description\": \"The video's rating from Luxembourg's Commission - de surveillance de la classification des films (CSCF).\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"nbcRating\": {\n \"enum\": [\n - \ \"nbcUnspecified\",\n \"nbcG\",\n \"nbcPg\",\n - \ \"nbc12plus\",\n \"nbc15plus\",\n \"nbc18plus\",\n - \ \"nbc18plusr\",\n \"nbcPu\",\n \"nbcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n - \ \"18+R\",\n \"PU\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from the Maldives National Bureau of Classification.\"\n },\n - \ \"eefilmRating\": {\n \"description\": \"The video's rating - in Estonia.\",\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ]\n },\n \"ifcoRating\": {\n \"enum\": [\n - \ \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Irish Film Classification Office - (IFCO - Ireland) rating. See the IFCO website for more information.\"\n },\n - \ \"rteRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"description\": \"The video's rating from Ireland's - Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ]\n },\n \"fpbRatingReasons\": - {\n \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ]\n },\n \"description\": \"Reasons that explain - why the video received its FPB (South Africa) rating.\"\n },\n \"menaMpaaRating\": - {\n \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\",\n \"type\": \"string\",\n \"enum\": - [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n - \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To - keep the same enum values as MPAA's items have, skip NC_17.\"\n ]\n - \ },\n \"mcstRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"description\": - \"The video's rating system for Vietnam - MCST\"\n },\n \"smsaRating\": - {\n \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"description\": \"The - video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"All ages\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"djctqRatingReasons\": - {\n \"description\": \"Reasons that explain why the video received - its DJCQT (Brazil) rating.\",\n \"type\": \"array\",\n \"items\": - {\n \"enumDescriptions\": [\n \"\",\n \"Brazil - rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia - (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n - \ \"Conte\xFAdo sexual (Sexual content)\",\n \"Nudez - (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo Expl\xEDcito - (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ]\n }\n },\n - \ \"ilfilmRating\": {\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Israel.\"\n },\n \"moctwRating\": {\n - \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"description\": \"The video's rating from Taiwan's - Ministry of Culture (\u6587\u5316\u90E8).\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ]\n },\n \"pefilmRating\": - {\n \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n - \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n - \ \"pefilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in Peru.\",\n \"type\": \"string\"\n },\n - \ \"lsfRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"description\": \"The video's rating from Indonesia's - Lembaga Sensor Film.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"SU\",\n \"A\",\n \"BO\",\n \"13\",\n - \ \"R\",\n \"17\",\n \"D\",\n \"21\",\n - \ \"\"\n ]\n },\n \"mocRating\": {\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ],\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ]\n },\n \"mccaaRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Malta's Film Age-Classification Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ]\n },\n \"nmcRating\": - {\n \"description\": \"The National Media Council ratings system - for United Arab Emirates.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ]\n },\n - \ \"fcoRating\": {\n \"description\": \"The video's rating - from Hong Kong's Office for Film, Newspaper and Article Administration.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"fcoUnspecified\",\n - \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n - \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"I\",\n - \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n - \ \"\"\n ]\n },\n \"chfilmRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating in Switzerland.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ]\n },\n \"medietilsynetRating\": {\n \"description\": - \"The video's rating from Medietilsynet, the Norwegian Media Authority.\",\n - \ \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"skfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Slovakia.\",\n - \ \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n - \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n - \ \"skfilmUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"nkclvRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n - \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n - \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\"\n - \ },\n \"fskRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle - der Filmwirtschaft (FSK - Germany) rating.\",\n \"enum\": [\n \"fskUnspecified\",\n - \ \"fsk0\",\n \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n - \ \"fsk18\",\n \"fskUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"mccypRating\": {\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ]\n },\n \"icaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\"\n },\n \"csaRating\": - {\n \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ],\n \"description\": - \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, - which rates broadcast content.\",\n \"type\": \"string\"\n },\n - \ \"djctqRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"L\",\n \"10\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Departamento de Justi\xE7a, - Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n - \ \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ]\n },\n \"incaaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"description\": \"The video's INCAA (Instituto Nacional - de Cine y Artes Audiovisuales - Argentina) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ]\n },\n \"mtrcbRating\": - {\n \"description\": \"The video's rating from the Movie and Television - Review and Classification Board (Philippines).\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ]\n },\n \"cbfcRating\": - {\n \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n - \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n - \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n - \ \"cbfcUnrated\"\n ],\n \"description\": \"The - video's Central Board of Film Certification (CBFC - India) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ]\n },\n \"fcbmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n - \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n - \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n - \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ],\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\"\n },\n - \ \"nfvcbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"18\",\n \"RE\",\n \"\"\n - \ ],\n \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Nigeria's National Film - and Video Censors Board.\"\n },\n \"cccRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Consejo de Calificaci\xF3n - Cinematogr\xE1fica (Chile) rating.\"\n },\n \"anatelRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n - \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n - \ ]\n },\n \"mibacRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n - \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n - \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Ministero - dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\"\n },\n - \ \"mpaaRating\": {\n \"enum\": [\n \"mpaaUnspecified\",\n - \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n - \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n - \ \"mpaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"description\": \"The video's Motion Picture Association - of America (MPAA) rating.\",\n \"type\": \"string\"\n },\n - \ \"russiaRating\": {\n \"description\": \"The video's National - Film Registry of the Russian Federation (MKRF - Russia) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"catvfrRating\": {\n \"enum\": [\n - \ \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n - \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n - \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"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.\"\n },\n \"acbRating\": - {\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"description\": \"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.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ]\n },\n \"fmocRating\": {\n \"description\": - \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ]\n },\n \"rtcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"rtcUnspecified\",\n - \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n - \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n - \ ],\n \"description\": \"The video's General Directorate - of Radio, Television and Cinematography (Mexico) rating.\"\n },\n \"mpaatRating\": - {\n \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GB\",\n \"RB\"\n ],\n - \ \"description\": \"The rating system for trailer, DVD, and Ad in - the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n - \ },\n \"cnaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"description\": \"The - video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n - \ \"type\": \"string\"\n },\n \"bmukkRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"enum\": - [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n \"bmukk6\",\n - \ \"bmukk8\",\n \"bmukk10\",\n \"bmukk12\",\n - \ \"bmukk14\",\n \"bmukk16\",\n \"bmukkUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Austrian - Board of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst - und Kultur).\",\n \"type\": \"string\"\n },\n \"bbfcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ],\n - \ \"description\": \"The video's British Board of Film Classification - (BBFC) rating.\",\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"egfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"description\": \"The - video's rating in Egypt.\",\n \"type\": \"string\"\n },\n - \ \"kfcbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"GE\",\n \"PG\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Kenya - Film Classification Board.\"\n },\n \"cncRating\": {\n \"enum\": - [\n \"cncUnspecified\",\n \"cncT\",\n \"cnc10\",\n - \ \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n \"cncE\",\n - \ \"cncInterdiction\",\n \"cncUnrated\"\n ],\n - \ \"description\": \"Rating system in France - Commission de classification - cinematographique\",\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"E\",\n \"interdiction\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"mekuRating\": - {\n \"description\": \"The video's rating from Finland's Kansallinen - Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ]\n },\n \"ytRating\": {\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"type\": - \"string\",\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"chvrsRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ],\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ]\n },\n - \ \"smaisRating\": {\n \"description\": \"The video's rating - in Iceland.\",\n \"type\": \"string\",\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ]\n },\n \"czfilmRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating in the Czech - Republic.\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ]\n },\n \"resorteviolenciaRating\": - {\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ],\n \"description\": - \"The video's rating in Venezuela.\"\n },\n \"grfilmRating\": - {\n \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n - \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n - \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n - \ \"grfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Greece.\"\n },\n \"fpbRating\": {\n - \ \"description\": \"The video's rating from South Africa's Film and - Publication Board.\",\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"type\": \"string\"\n },\n \"bfvcRating\": - {\n \"description\": \"The video's rating from Thailand's Board of - Film and Video Censors.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"E\",\n \"13\",\n \"15\",\n - \ \"18\",\n \"20\",\n \"B\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ]\n },\n - \ \"mdaRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Singapore's - Media Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\"\n },\n \"oflcRating\": {\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\",\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"type\": \"string\"\n },\n \"nbcplRating\": - {\n \"description\": \"The video's rating in Poland.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n - \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n - \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ]\n - \ },\n \"catvRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ],\n \"description\": \"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.\"\n - \ },\n \"eirinRating\": {\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ]\n },\n \"kmrbRating\": - {\n \"enum\": [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n - \ \"kmrb12plus\",\n \"kmrb15plus\",\n \"kmrbTeenr\",\n - \ \"kmrbR\",\n \"kmrbUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Korea Media Rating Board - (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. The KMRB rates - videos in South Korea.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 \uC774\uC0C1 - \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ]\n },\n \"rcnofRating\": {\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ]\n },\n \"nfrcRating\": {\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"ecbmctRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ],\n \"description\": \"Rating system in Turkey - Evaluation - and Classification Board of the Ministry of Culture and Tourism\"\n },\n - \ \"tvpgRating\": {\n \"description\": \"The video's TV Parental - Guidelines (TVPG) rating.\",\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ]\n },\n \"cceRating\": {\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ]\n }\n },\n \"description\": \"Ratings schemes. - The country-specific ratings are mostly for movies and shows. LINT.IfChange\"\n - \ },\n \"ActivitySnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about an activity, including title, description, thumbnails, - activity type and group. Next ID: 12\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the resource primarily associated with the activity.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel associated with the activity.\"\n - \ },\n \"channelTitle\": {\n \"description\": \"Channel - title for the channel responsible for this activity\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the resource primarily associated - with the activity. @mutable youtube.activities.insert\"\n },\n \"type\": - {\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n - \ \"like\",\n \"favorite\",\n \"comment\",\n - \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n - \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of activity that the resource - describes.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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.\"\n },\n \"groupId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the video was uploaded.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ActivitySnippet\"\n },\n \"GeoPoint\": - {\n \"type\": \"object\",\n \"description\": \"Geographical coordinates - of a point, in WGS84.\",\n \"properties\": {\n \"latitude\": {\n - \ \"format\": \"double\",\n \"description\": \"Latitude in - degrees.\",\n \"type\": \"number\"\n },\n \"longitude\": - {\n \"format\": \"double\",\n \"description\": \"Longitude - in degrees.\",\n \"type\": \"number\"\n },\n \"altitude\": - {\n \"description\": \"Altitude above the reference ellipsoid, in - meters.\",\n \"type\": \"number\",\n \"format\": \"double\"\n - \ }\n },\n \"id\": \"GeoPoint\"\n },\n \"SubscriptionListResponse\": - {\n \"type\": \"object\",\n \"id\": \"SubscriptionListResponse\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"default\": \"youtube#subscriptionListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"description\": \"A list of subscriptions that match the request - criteria.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ }\n }\n },\n \"PlaylistItemSnippet\": {\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The id object contains - information that can be used to uniquely identify the resource that is included - in the playlist as the playlist item.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the user that added the item to the playlist.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The item's description.\"\n },\n - \ \"playlistId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify thGe playlist that the playlist item is in.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"position\": {\n \"format\": - \"uint32\",\n \"description\": \"The order in which the item appears - in the playlist. The value uses a zero-based index, so the first item has - a position of 0, the second item has a position of 1, and so forth.\",\n \"type\": - \"integer\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist item. 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.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the item was added to the playlist.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"videoOwnerChannelTitle\": - {\n \"description\": \"Channel title for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the playlist item belongs to.\"\n },\n \"videoOwnerChannelId\": - {\n \"description\": \"Channel id for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The item's title.\"\n - \ }\n },\n \"id\": \"PlaylistItemSnippet\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails. - Basic details of a YouTube Playlist item provided by the author. Next ID: - 15\",\n \"type\": \"object\"\n },\n \"ChannelProfileDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"displayName\": - {\n \"description\": \"The channel's display name.\",\n \"type\": - \"string\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"profileImageUrl\": - {\n \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel ID.\"\n }\n },\n - \ \"id\": \"ChannelProfileDetails\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"description\": \"Information about the uploaded video.\",\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\"\n }\n - \ },\n \"id\": \"ActivityContentDetailsUpload\",\n \"type\": - \"object\"\n },\n \"I18nLanguage\": {\n \"type\": \"object\",\n - \ \"description\": \"An *i18nLanguage* resource identifies a UI language - currently supported by YouTube.\",\n \"id\": \"I18nLanguage\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n language, such as language code and human-readable name.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nLanguage\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the i18n language.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ActivityContentDetailsChannelItem\": {\n - \ \"type\": \"object\",\n \"description\": \"Details about a resource - which was added to a channel.\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that was added to the channel.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"ActivityContentDetailsSocial\": {\n \"type\": \"object\",\n - \ \"description\": \"Details about a social network post.\",\n \"id\": - \"ActivityContentDetailsSocial\",\n \"properties\": {\n \"type\": - {\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n - \ \"facebook\",\n \"twitter\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The name of the social network.\"\n },\n \"imageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"An image of - the post's author.\"\n },\n \"author\": {\n \"type\": - \"string\",\n \"description\": \"The author of the social network - post.\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\"\n },\n - \ \"referenceUrl\": {\n \"description\": \"The URL of the social - network post.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"Member\": {\n \"id\": \"Member\",\n \"description\": \"A *member* - resource represents a member for a YouTube channel. A member provides recurring - monetary support to a creator and receives special benefits.\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#member\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"MemberSnippet\",\n \"description\": \"The snippet object contains - basic details about the member.\"\n }\n }\n },\n \"TokenPagination\": - {\n \"id\": \"TokenPagination\",\n \"description\": \"Stub token - pagination template to suppress results.\",\n \"properties\": {},\n \"type\": - \"object\"\n },\n \"I18nRegionListResponse\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\",\n - \ \"items\": {\n \"$ref\": \"I18nRegion\"\n },\n - \ \"type\": \"array\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#i18nRegionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"I18nRegionListResponse\"\n },\n \"ChannelSettings\": {\n \"id\": - \"ChannelSettings\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"moderateComments\": {\n \"description\": \"Whether user-submitted - comments left on the channel page need to be approved by the channel owner - to be publicly visible.\",\n \"type\": \"boolean\"\n },\n - \ \"title\": {\n \"description\": \"Specifies the channel title.\",\n - \ \"type\": \"string\"\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"description\": \"Specifies the channel - description.\",\n \"type\": \"string\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"type\": \"string\",\n \"description\": \"The ID for - a Google Analytics account to track and measure traffic to the channels.\"\n - \ },\n \"profileColor\": {\n \"type\": \"string\",\n - \ \"description\": \"A prominent color that can be rendered on this - channel page.\"\n },\n \"featuredChannelsTitle\": {\n \"type\": - \"string\",\n \"description\": \"Title for the featured channels - tab.\"\n },\n \"showRelatedChannels\": {\n \"description\": - \"Whether related channels should be proposed.\",\n \"type\": \"boolean\"\n - \ },\n \"defaultTab\": {\n \"type\": \"string\",\n \"description\": - \"Which content tab users should see when viewing the channel.\"\n },\n - \ \"featuredChannelsUrls\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"The list of featured channels.\"\n },\n \"unsubscribedTrailer\": - {\n \"type\": \"string\",\n \"description\": \"The trailer - of the channel, for users that are not subscribers.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"keywords\": {\n \"description\": - \"Lists keywords associated with the channel, comma-separated.\",\n \"type\": - \"string\"\n },\n \"showBrowseView\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the tab to browse the videos - should be displayed.\"\n }\n },\n \"description\": \"Branding - properties for the channel view.\"\n },\n \"LiveStream\": {\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the stream.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveStreamSnippet\",\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\"\n - \ },\n \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\"\n },\n \"status\": {\n \"$ref\": - \"LiveStreamStatus\",\n \"description\": \"The status object contains - information about live stream's status.\"\n },\n \"contentDetails\": - {\n \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\",\n \"$ref\": - \"LiveStreamContentDetails\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStream\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A live stream describes a live ingestion point.\",\n - \ \"id\": \"LiveStream\"\n },\n \"LiveBroadcastContentDetails\": - {\n \"description\": \"Detailed settings of a broadcast.\",\n \"id\": - \"LiveBroadcastContentDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"enableAutoStop\": {\n \"description\": \"This setting - indicates whether auto stop is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\",\n - \ \"type\": \"boolean\"\n },\n \"boundStreamId\": {\n - \ \"description\": \"This value uniquely identifies the live stream - bound to the broadcast.\",\n \"type\": \"string\"\n },\n \"stereoLayout\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The 3D stereo layout of this broadcast. This - defaults to mono.\",\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ]\n },\n \"startWithSlate\": {\n \"description\": - \"This setting indicates whether the broadcast should automatically begin - with an in-stream slate when you update the broadcast's status to live. After - updating the status, you then need to send a liveCuepoints.insert request - that sets the cuepoint's eventState to end to remove the in-stream slate and - make your broadcast stream visible to viewers.\",\n \"type\": \"boolean\"\n - \ },\n \"monitorStream\": {\n \"$ref\": \"MonitorStreamInfo\",\n - \ \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\"\n },\n \"enableClosedCaptions\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether HTTP POST closed captioning is enabled for this broadcast. - The ingestion URL of the closed captions is returned through the liveStreams - API. This is mutually exclusive with using the closed_captions_type property, - and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n - \ },\n \"latencyPreference\": {\n \"description\": \"If - both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Best for: highest quality viewer playbacks - and higher resolutions.\",\n \"Best for: near real-time interaction, - with minimal playback buffering.\",\n \"Best for: real-time interaction - Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n - \ \"type\": \"string\"\n },\n \"closedCaptionsType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ],\n \"type\": \"string\"\n },\n \"enableLowLatency\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast has low latency enabled.\"\n },\n \"mesh\": - {\n \"type\": \"string\",\n \"description\": \"The mesh - for projecting the video if projection is mesh. The mesh value must be a UTF-8 - string containing the base-64 encoding of 3D mesh data that follows the Spherical - Video V2 RFC specification for an mshp box, excluding the box size and type - but including the following four reserved zero bytes for the version and flags.\",\n - \ \"format\": \"byte\"\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the live stream referenced by boundStreamId was last updated.\",\n - \ \"type\": \"string\"\n },\n \"enableAutoStart\": {\n - \ \"description\": \"This setting indicates whether auto start is - enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\",\n \"type\": \"boolean\"\n - \ },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n },\n \"projection\": {\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"type\": \"string\"\n },\n \"enableDvr\": {\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n - \ },\n \"recordFromStart\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\"\n },\n \"enableContentEncryption\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - YouTube should enable content encryption for the broadcast.\"\n }\n - \ }\n },\n \"VideoAbuseReportReasonListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The `visitorId` identifies the visitor.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of valid abuse reasons that are used with `video.ReportAbuse`.\",\n - \ \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ }\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoAbuseReportReasonListResponse\"\n },\n \"I18nLanguageListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"description\": \"A list of supported i18n languages. In this - map, the i18n language ID is the map key, and its value is the corresponding - i18nLanguage resource.\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n - \ },\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\"\n }\n },\n - \ \"id\": \"I18nLanguageListResponse\"\n },\n \"Thumbnail\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"width\": {\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"(Optional) Width of the thumbnail image.\"\n },\n \"height\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"(Optional) Height of the thumbnail image.\"\n },\n \"url\": - {\n \"description\": \"The thumbnail image's URL.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"Thumbnail\",\n \"description\": - \"A thumbnail is an image representing a YouTube resource.\"\n },\n \"SearchResultSnippet\": - {\n \"id\": \"SearchResultSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"properties\": {\n - \ \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The creation - date and time of the resource that the search result identifies.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The title of the search result.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"A description of the search result.\"\n },\n - \ \"channelTitle\": {\n \"description\": \"The title of the - channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The value that YouTube uses to uniquely - identify the channel that published the resource that the search result identifies.\"\n - \ }\n }\n },\n \"ActivityContentDetailsPromotedItem\": {\n - \ \"properties\": {\n \"customCtaButtonText\": {\n \"description\": - \"The custom call-to-action button text. If specified, it will override the - default button text for the cta_type.\",\n \"type\": \"string\"\n - \ },\n \"forecastingUrl\": {\n \"description\": \"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.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"ctaType\": {\n \"enum\": - [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"description\": \"The type of call-to-action, a message - to the user indicating action that can be taken.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"adTag\": {\n \"description\": \"The - URL the client should fetch to request a promoted item.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\"\n },\n \"creativeViewUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user was shown this promoted item.\"\n },\n \"clickTrackingUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user clicked through on this promoted item.\",\n \"type\": - \"string\"\n },\n \"descriptionText\": {\n \"description\": - \"The text description to accompany the promoted item.\",\n \"type\": - \"string\"\n },\n \"impressionUrl\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\",\n \"type\": - \"array\"\n },\n \"destinationUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should direct - the user to, if the user chooses to visit the advertiser's website.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"Details about a resource which is being promoted.\"\n - \ },\n \"CommentThreadReplies\": {\n \"properties\": {\n \"comments\": - {\n \"description\": \"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.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"description\": \"Comments written in (direct - or indirect) reply to the top level comment.\",\n \"type\": \"object\",\n - \ \"id\": \"CommentThreadReplies\"\n },\n \"ChannelSectionContentDetails\": - {\n \"description\": \"Details about a channelsection, including playlists - and channels.\",\n \"type\": \"object\",\n \"properties\": {\n \"playlists\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The playlist ids for type single_playlist and - multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n - \ \"type\": \"array\"\n },\n \"channels\": {\n \"description\": - \"The channel ids for type multiple_channels.\",\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"ChannelSectionContentDetails\"\n },\n - \ \"ActivityContentDetails\": {\n \"type\": \"object\",\n \"description\": - \"Details about the content of an activity: the video that was shared, the - channel that was subscribed to, etc.\",\n \"id\": \"ActivityContentDetails\",\n - \ \"properties\": {\n \"promotedItem\": {\n \"description\": - \"The promotedItem object contains details about a resource which is being - promoted. This property is only present if the snippet.type is promotedItem.\",\n - \ \"$ref\": \"ActivityContentDetailsPromotedItem\"\n },\n \"comment\": - {\n \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\",\n \"$ref\": \"ActivityContentDetailsComment\"\n },\n - \ \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\"\n },\n \"social\": {\n \"description\": - \"The social object contains details about a social network post. This property - is only present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"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.\"\n },\n \"upload\": {\n \"$ref\": - \"ActivityContentDetailsUpload\",\n \"description\": \"The upload - object contains information about the uploaded video. This property is only - present if the snippet.type is upload.\"\n },\n \"bulletin\": - {\n \"description\": \"The bulletin object contains details about - a channel bulletin post. This object is only present if the snippet.type is - bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n },\n - \ \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"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.\"\n },\n \"like\": {\n \"description\": - \"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.\",\n - \ \"$ref\": \"ActivityContentDetailsLike\"\n },\n \"subscription\": - {\n \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\"\n }\n }\n },\n \"AccessPolicy\": {\n - \ \"properties\": {\n \"exception\": {\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"allowed\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of allowed indicates whether the access to the policy is allowed or denied - by default.\"\n }\n },\n \"description\": \"Rights management - policy for YouTube resources.\",\n \"id\": \"AccessPolicy\",\n \"type\": - \"object\"\n },\n \"LiveStreamHealthStatus\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamHealthStatus\",\n \"properties\": {\n \"lastUpdateTimeSeconds\": - {\n \"description\": \"The last time this status was updated (in - seconds)\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"status\": {\n \"description\": \"The status - code of this stream\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"good\",\n - \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n - \ ]\n },\n \"configurationIssues\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"description\": \"The configurations issues on this - stream\"\n }\n }\n },\n \"Subscription\": {\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the subscription, including its title and the - channel that the user subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"default\": \"youtube#subscription\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the subscription.\",\n \"type\": \"string\"\n - \ },\n \"subscriberSnippet\": {\n \"description\": \"The - subscriberSnippet object contains basic details about the subscriber.\",\n - \ \"$ref\": \"SubscriptionSubscriberSnippet\"\n },\n \"contentDetails\": - {\n \"$ref\": \"SubscriptionContentDetails\",\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"A *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\",\n \"type\": \"object\",\n - \ \"id\": \"Subscription\"\n },\n \"PropertyValue\": {\n \"description\": - \"A pair Property / Value.\",\n \"id\": \"PropertyValue\",\n \"properties\": - {\n \"property\": {\n \"description\": \"A property.\",\n - \ \"type\": \"string\"\n },\n \"value\": {\n \"description\": - \"The property's value.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"Activity\": {\n \"properties\": - {\n \"contentDetails\": {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetails\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n \"default\": - \"youtube#activity\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"ActivitySnippet\",\n \"description\": \"The - snippet object contains basic details about the activity, including the activity's - type and group ID.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"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.\",\n \"id\": - \"Activity\"\n },\n \"CommentSnippetAuthorChannelId\": {\n \"description\": - \"The id of the author's YouTube channel, if any.\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"CommentThread\": {\n \"type\": \"object\",\n \"id\": - \"CommentThread\",\n \"description\": \"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.\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#commentThread\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\"\n - \ },\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n - \ \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"CommentThreadSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\"\n }\n - \ }\n },\n \"CommentSnippet\": {\n \"id\": \"CommentSnippet\",\n - \ \"description\": \"Basic details about a comment, such as its author - and text.\",\n \"type\": \"object\",\n \"properties\": {\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"parentId\": {\n - \ \"type\": \"string\",\n \"description\": \"The unique id - of the parent comment, only set for replies.\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"viewerRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n },\n \"authorChannelUrl\": - {\n \"type\": \"string\",\n \"description\": \"Link to the - author's YouTube channel, if any.\"\n },\n \"videoId\": {\n - \ \"description\": \"The ID of the video the comment refers to, if - any.\",\n \"type\": \"string\"\n },\n \"textDisplay\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"moderationStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"description\": \"The comment's moderation status. - Will not be set if the comments were requested through the id filter.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the comment was originally published.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"textOriginal\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"canRate\": {\n \"description\": - \"Whether the current viewer can rate this comment.\",\n \"type\": - \"boolean\"\n },\n \"updatedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the comment was last updated.\"\n },\n \"likeCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The total number of likes this comment has received.\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n }\n }\n - \ },\n \"LiveChatModeratorListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatModeratorListResponse\",\n \"properties\": {\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": - \"A list of moderators that match the request criteria.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n }\n },\n \"ActivityContentDetailsFavorite\": - {\n \"description\": \"Information about a video that was marked as a - favorite video.\",\n \"id\": \"ActivityContentDetailsFavorite\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that was marked as - a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsLike\": {\n - \ \"description\": \"Information about a resource that received a positive - (like) rating.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsLike\"\n },\n - \ \"ChannelAuditDetails\": {\n \"properties\": {\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelAuditDetails\",\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\"\n },\n \"PlaylistListResponse\": - {\n \"properties\": {\n \"items\": {\n \"description\": - \"A list of playlists that match the request criteria\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Playlist\"\n }\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"default\": \"youtube#playlistListResponse\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"PlaylistListResponse\"\n },\n - \ \"Channel\": {\n \"properties\": {\n \"statistics\": {\n \"description\": - \"The statistics object encapsulates statistics for the channel.\",\n \"$ref\": - \"ChannelStatistics\"\n },\n \"conversionPings\": {\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"status\": {\n \"$ref\": - \"ChannelStatus\",\n \"description\": \"The status object encapsulates - information about the privacy status of the channel.\"\n },\n \"auditDetails\": - {\n \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\",\n - \ \"$ref\": \"ChannelAuditDetails\"\n },\n \"snippet\": - {\n \"$ref\": \"ChannelSnippet\",\n \"description\": \"The - snippet object contains basic details about the channel, such as its title, - description, and thumbnail images.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ChannelContentDetails\",\n \"description\": - \"The contentDetails object encapsulates information about the channel's content.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#channel\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channel\\\".\"\n },\n - \ \"brandingSettings\": {\n \"description\": \"The brandingSettings - object encapsulates information about the branding of the channel.\",\n \"$ref\": - \"ChannelBrandingSettings\"\n },\n \"contentOwnerDetails\": - {\n \"$ref\": \"ChannelContentOwnerDetails\",\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\"\n },\n \"localizations\": - {\n \"description\": \"Localizations for different languages\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"type\": \"object\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel.\"\n },\n \"topicDetails\": - {\n \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\",\n \"$ref\": - \"ChannelTopicDetails\"\n }\n },\n \"description\": \"A *channel* - resource contains information about a YouTube channel.\",\n \"id\": \"Channel\",\n - \ \"type\": \"object\"\n },\n \"VideoGetRatingResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"default\": \"youtube#videoGetRatingResponse\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"description\": - \"A list of ratings that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"VideoRating\"\n },\n \"type\": - \"array\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"VideoGetRatingResponse\"\n },\n \"PlaylistStatus\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistStatus\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The playlist's privacy status.\"\n }\n }\n },\n \"ChannelConversionPing\": - {\n \"id\": \"ChannelConversionPing\",\n \"description\": \"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.\",\n \"properties\": {\n \"conversionUrl\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"context\": {\n \"description\": - \"Defines the context of the ping.\",\n \"type\": \"string\",\n \"enum\": - [\n \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"type\": \"object\"\n - \ },\n \"Comment\": {\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#comment\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the comment.\",\n \"$ref\": \"CommentSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the comment.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"Comment\",\n \"description\": \"A - *comment* represents a single YouTube comment.\",\n \"type\": \"object\"\n - \ },\n \"VideoSuggestionsTagSuggestion\": {\n \"type\": \"object\",\n - \ \"description\": \"A single tag suggestion with it's relevance information.\",\n - \ \"id\": \"VideoSuggestionsTagSuggestion\",\n \"properties\": {\n - \ \"tag\": {\n \"type\": \"string\",\n \"description\": - \"The keyword tag suggested for the video.\"\n },\n \"categoryRestricts\": - {\n \"description\": \"A set of video categories for which the tag - is relevant. You can use this information to display appropriate tag suggestions - based on the video category that the video uploader associates with the video. - By default, tag suggestions are relevant for all categories if there are no - restricts defined for the keyword.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n }\n },\n - \ \"CommentListResponse\": {\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"description\": - \"A list of comments that match the request criteria.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#commentListResponse\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"CommentListResponse\"\n - \ },\n \"LiveStreamSnippet\": {\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The stream's title. - The value must be between 1 and 128 characters long.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the stream was created.\"\n - \ },\n \"isDefaultStream\": {\n \"type\": \"boolean\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The stream's description. The value cannot be - longer than 10000 characters.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that is transmitting the stream.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveStreamSnippet\"\n },\n - \ \"LiveChatMessage\": {\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"authorDetails\": - {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n \"description\": - \"The authorDetails object contains basic details about the user that posted - this message.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the message.\",\n \"$ref\": - \"LiveChatMessageSnippet\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatMessage\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ }\n },\n \"id\": \"LiveChatMessage\",\n \"type\": \"object\",\n - \ \"description\": \"A *liveChatMessage* resource represents a chat message - in a YouTube Live Chat.\"\n },\n \"ChannelBannerResource\": {\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#channelBannerResource\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelBannerResource\\\".\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"url\": {\n \"description\": \"The URL of this - banner image.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ChannelBannerResource\",\n \"type\": \"object\"\n },\n \"ThumbnailDetails\": - {\n \"description\": \"Internal representation of thumbnails for a YouTube - resource.\",\n \"type\": \"object\",\n \"properties\": {\n \"default\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The default - image for this resource.\"\n },\n \"standard\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The standard quality image for - this resource.\"\n },\n \"maxres\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The maximum resolution quality image for this - resource.\"\n },\n \"high\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The high quality image for this resource.\"\n - \ },\n \"medium\": {\n \"description\": \"The medium - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n }\n - \ },\n \"id\": \"ThumbnailDetails\"\n },\n \"VideoCategoryListResponse\": - {\n \"id\": \"VideoCategoryListResponse\",\n \"properties\": {\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"items\": {\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n }\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#videoCategoryListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": - \"object\"\n },\n \"MembershipsDetails\": {\n \"id\": \"MembershipsDetails\",\n - \ \"properties\": {\n \"membershipsDurationAtLevels\": {\n \"description\": - \"Data about memberships duration on particular pricing levels.\",\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"type\": - \"array\"\n },\n \"highestAccessibleLevelDisplayName\": {\n - \ \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n },\n - \ \"membershipsDuration\": {\n \"description\": \"Data about - memberships duration without taking into consideration pricing levels.\",\n - \ \"$ref\": \"MembershipsDuration\"\n },\n \"highestAccessibleLevel\": - {\n \"description\": \"Id of the highest level that the user has - access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"accessibleLevels\": {\n \"description\": \"Ids of all levels - that the user has access to. This includes the currently active level and - all other levels that are included because of a higher purchase.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReportReason\": - {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReason\",\n - \ \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"id\": {\n \"description\": - \"The ID of this abuse report reason.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReason\"\n - \ }\n }\n },\n \"ChannelContentDetails\": {\n \"properties\": - {\n \"relatedPlaylists\": {\n \"properties\": {\n \"watchHistory\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"favorites\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"uploads\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s uploaded videos. Use the videos.insert method to - upload new videos and the videos.delete method to delete previously uploaded - videos.\"\n },\n \"watchLater\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s watch later playlist. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"likes\": {\n \"description\": \"The ID of the playlist - that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Details - about the content of a channel.\",\n \"id\": \"ChannelContentDetails\"\n - \ },\n \"VideoTopicDetails\": {\n \"description\": \"Freebase topic - information related to the video.\",\n \"properties\": {\n \"relevantTopicIds\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Similar to topic_id, - except that these topics are merely relevant to the video. These are topics - that may be mentioned in, or appear in the video. You can retrieve information - about each topic using Freebase Topic API.\"\n },\n \"topicCategories\": - {\n \"description\": \"A list of Wikipedia URLs that provide a high-level - description of the video's content.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"topicIds\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Freebase topic IDs that are centrally - associated with the video. These are topics that are centrally featured in - the video, and it can be said that the video is mainly about each of these. - You can retrieve information about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoTopicDetails\"\n },\n \"VideoMonetizationDetails\": - {\n \"properties\": {\n \"access\": {\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\",\n - \ \"$ref\": \"AccessPolicy\"\n }\n },\n \"description\": - \"Details about monetization of a YouTube Video.\",\n \"id\": \"VideoMonetizationDetails\",\n - \ \"type\": \"object\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"properties\": {\n \"banType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of ban.\",\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ],\n \"type\": \"string\"\n - \ },\n \"bannedUserDetails\": {\n \"description\": \"The - details of the user that was banned.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banDurationSeconds\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The duration - of the ban. This property is only present if the banType is temporary.\"\n - \ }\n }\n },\n \"VideoSuggestions\": {\n \"description\": - \"Specifies suggestions on how to improve video content, including encoding - hints, tag suggestions, and editor suggestions.\",\n \"properties\": - {\n \"processingWarnings\": {\n \"description\": \"A list - of reasons why YouTube may have difficulty transcoding the uploaded video - or that might result in an erroneous transcoding. These warnings are generated - before YouTube actually processes the uploaded video file. In addition, they - identify issues that are unlikely to cause the video processing to fail but - that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"editorSuggestions\": - {\n \"description\": \"A list of video editing operations that might - improve the video quality or playback experience of the uploaded video.\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ],\n - \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"processingHints\": {\n \"description\": \"A - list of suggestions that may improve YouTube's ability to process the video.\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"The - MP4 file is not streamable, this will slow down the processing. MOOV atom - was not found at the beginning of the file.\",\n \"Probably a - better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ]\n },\n \"type\": \"array\"\n },\n \"processingErrors\": - {\n \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\"\n },\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\"\n },\n \"tagSuggestions\": {\n \"items\": - {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n },\n - \ \"description\": \"A list of keyword tags that could be added to - the video's metadata to increase the likelihood that users will locate your - video when searching or browsing on YouTube.\",\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"VideoSuggestions\",\n \"type\": - \"object\"\n },\n \"VideoListResponse\": {\n \"properties\": {\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Video\"\n },\n \"type\": \"array\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoListResponse\\\".\",\n \"default\": - \"youtube#videoListResponse\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoListResponse\",\n \"type\": - \"object\"\n },\n \"VideoLocalization\": {\n \"description\": \"Localized - versions of certain video properties (e.g. title).\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"Localized version of the video's title.\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"Localized version of the video's description.\"\n }\n },\n \"id\": - \"VideoLocalization\"\n },\n \"I18nRegion\": {\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n - \ \"id\": \"I18nRegion\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#i18nRegion\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegion\\\".\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the i18n region.\"\n },\n \"snippet\": - {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"MembershipsDurationAtLevel\": - {\n \"id\": \"MembershipsDurationAtLevel\",\n \"properties\": {\n - \ \"memberSince\": {\n \"description\": \"The date and time - when the user became a continuous member for the given level.\",\n \"type\": - \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"format\": - \"int32\",\n \"type\": \"integer\",\n \"description\": \"The - cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\"\n },\n - \ \"level\": {\n \"description\": \"Pricing level ID.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatBanSnippet\": {\n \"type\": \"object\",\n \"id\": - \"LiveChatBanSnippet\",\n \"properties\": {\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"liveChatId\": - {\n \"description\": \"The chat this ban is pertinent to.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"description\": - \"The type of ban.\",\n \"type\": \"string\",\n \"enum\": - [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ]\n },\n \"banDurationSeconds\": - {\n \"description\": \"The duration of a ban, only filled if the - ban has type TEMPORARY.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n }\n }\n },\n \"LanguageTag\": {\n \"id\": - \"LanguageTag\",\n \"type\": \"object\",\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n }\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"secondaryReasons\": - {\n \"description\": \"The secondary reasons associated with this - reason, if any are available. (There might be 0 or more.)\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"type\": \"array\"\n },\n \"label\": {\n \"type\": - \"string\",\n \"description\": \"The localized label belonging to - this abuse report reason.\"\n }\n },\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\"\n },\n \"VideoAbuseReportSecondaryReason\": {\n \"type\": - \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID of this abuse report secondary reason.\"\n },\n \"label\": - {\n \"type\": \"string\",\n \"description\": \"The localized - label for this abuse report secondary reason.\"\n }\n }\n },\n - \ \"LocalizedProperty\": {\n \"type\": \"object\",\n \"id\": \"LocalizedProperty\",\n - \ \"properties\": {\n \"localized\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"LocalizedString\"\n }\n - \ },\n \"default\": {\n \"type\": \"string\"\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the default property.\",\n \"$ref\": \"LanguageTag\"\n }\n - \ }\n },\n \"InvideoBranding\": {\n \"type\": \"object\",\n - \ \"id\": \"InvideoBranding\",\n \"properties\": {\n \"imageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The url of - the uploaded image. Only used in apiary to api communication.\"\n },\n - \ \"position\": {\n \"$ref\": \"InvideoPosition\",\n \"description\": - \"The spatial position within the video where the branding watermark will - be displayed.\"\n },\n \"targetChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The channel to which this branding - links. If not present it defaults to the current channel.\"\n },\n - \ \"imageBytes\": {\n \"type\": \"string\",\n \"format\": - \"byte\",\n \"description\": \"The bytes the uploaded image. Only - used in api to youtube communication.\"\n },\n \"timing\": {\n - \ \"description\": \"The temporal position within the video where - watermark will be displayed.\",\n \"$ref\": \"InvideoTiming\"\n }\n - \ },\n \"description\": \"LINT.IfChange Describes an invideo branding.\"\n - \ },\n \"VideoLiveStreamingDetails\": {\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"Details about the live streaming metadata.\",\n \"type\": - \"object\",\n \"properties\": {\n \"scheduledStartTime\": {\n - \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast is scheduled to begin.\"\n },\n \"actualStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\"\n },\n - \ \"activeLiveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the currently active live chat attached to this video. This field - is filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\"\n },\n \"actualEndTime\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast actually ended. This value will not be available - until the broadcast is over.\"\n },\n \"scheduledEndTime\": - {\n \"description\": \"The time that the broadcast is scheduled to - end. If the value is empty or the property is not present, then the broadcast - is scheduled to contiue indefinitely.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"concurrentViewers\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n }\n }\n - \ },\n \"PlaylistSnippet\": {\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails.\",\n \"properties\": - {\n \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": - \"The language of the playlist's default title and description.\"\n },\n - \ \"thumbnailVideoId\": {\n \"type\": \"string\",\n \"description\": - \"Note: if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that published the playlist.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"channelTitle\": {\n \"description\": \"The - channel title of the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"tags\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"Keyword tags associated with the playlist.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The playlist's - title.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the playlist was created.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The playlist's - description.\"\n }\n },\n \"id\": \"PlaylistSnippet\",\n - \ \"type\": \"object\"\n },\n \"ChannelContentOwnerDetails\": {\n - \ \"type\": \"object\",\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"properties\": {\n \"contentOwner\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID of the - content owner linked to the channel.\"\n },\n \"timeLinked\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the channel was linked to the content owner.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ChannelContentOwnerDetails\"\n - \ },\n \"ChannelSectionListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"description\": - \"A list of ChannelSections that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"type\": - \"array\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelSectionListResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelSectionListResponse\"\n },\n \"ChannelTopicDetails\": - {\n \"description\": \"Freebase topic information related to the channel.\",\n - \ \"properties\": {\n \"topicIds\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of Freebase topic IDs associated with - the channel. You can retrieve information about each topic using the Freebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n },\n \"topicCategories\": {\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"id\": \"ChannelTopicDetails\",\n \"type\": - \"object\"\n },\n \"CommentThreadSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"totalReplyCount\": {\n \"description\": - \"The total number of replies (not including the top level comment).\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"topLevelComment\": {\n \"$ref\": \"Comment\",\n \"description\": - \"The top level comment of this thread.\"\n },\n \"canReply\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the video the comments refer to, if - any. No video_id implies a channel discussion comment.\"\n },\n \"isPublic\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the thread (and therefore all its comments) is visible to all YouTube users.\"\n - \ }\n },\n \"description\": \"Basic details about a comment - thread.\",\n \"id\": \"CommentThreadSnippet\"\n },\n \"CdnSettings\": - {\n \"properties\": {\n \"frameRate\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The frame rate - of the inbound video data.\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ]\n },\n - \ \"resolution\": {\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The resolution of the inbound video data.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"ingestionInfo\": {\n \"description\": - \"The ingestionInfo object contains information that YouTube provides that - you need to transmit your RTMP or HTTP stream to YouTube.\",\n \"$ref\": - \"IngestionInfo\"\n },\n \"format\": {\n \"description\": - \"The format of the video stream that you are sending to Youtube. \",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"ingestionType\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"enum\": [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \" The method or protocol used to transmit the video stream.\"\n }\n - \ },\n \"id\": \"CdnSettings\",\n \"type\": \"object\",\n \"description\": - \"Brief description of the live stream cdn settings.\"\n },\n \"LocalizedString\": - {\n \"type\": \"object\",\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n },\n \"language\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LocalizedString\"\n },\n - \ \"PageInfo\": {\n \"type\": \"object\",\n \"description\": \"Paging - details for lists of resources, including total number of items available - and number of resources returned in a single page.\",\n \"properties\": - {\n \"totalResults\": {\n \"format\": \"int32\",\n \"description\": - \"The total number of results in the result set.\",\n \"type\": \"integer\"\n - \ },\n \"resultsPerPage\": {\n \"description\": \"The - number of results included in the API response.\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n }\n },\n \"id\": - \"PageInfo\"\n },\n \"LiveChatMembershipGiftingDetails\": {\n \"properties\": - {\n \"giftMembershipsLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\"\n },\n - \ \"giftMembershipsCount\": {\n \"description\": \"The number - of gift memberships purchased by the user.\",\n \"format\": \"int32\",\n - \ \"type\": \"integer\"\n }\n },\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"type\": \"object\"\n },\n \"PlaylistLocalization\": {\n \"id\": - \"PlaylistLocalization\",\n \"properties\": {\n \"description\": - {\n \"description\": \"The localized strings for playlist's description.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"The localized strings for playlist's title.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Playlist - localization setting\"\n },\n \"ChannelToStoreLinkDetails\": {\n \"description\": - \"Information specific to a store on a merchandising platform linked to a - YouTube channel.\",\n \"id\": \"ChannelToStoreLinkDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"merchantId\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"Google - Merchant Center id of the store.\"\n },\n \"storeUrl\": {\n - \ \"description\": \"Landing page of the store.\",\n \"type\": - \"string\"\n },\n \"storeName\": {\n \"type\": \"string\",\n - \ \"description\": \"Name of the store.\"\n }\n }\n },\n - \ \"PlaylistItemListResponse\": {\n \"id\": \"PlaylistItemListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of playlist items that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n }\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n }\n }\n },\n \"ChannelSectionSnippet\": - {\n \"properties\": {\n \"position\": {\n \"description\": - \"The position of the channel section in the channel.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel - section's title for multiple_playlists and multiple_channels.\"\n },\n - \ \"style\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The style of the channel section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"type\": \"string\"\n },\n \"type\": {\n \"enum\": - [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The type of the channel section.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"localized\": {\n \"description\": - \"Localized title, read-only.\",\n \"$ref\": \"ChannelSectionLocalization\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the channel section's default - title and description.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that published the channel section.\"\n }\n },\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\",\n \"type\": \"object\",\n \"id\": - \"ChannelSectionSnippet\"\n },\n \"MonitorStreamInfo\": {\n \"description\": - \"Settings and Info of the monitor stream\",\n \"type\": \"object\",\n - \ \"id\": \"MonitorStreamInfo\",\n \"properties\": {\n \"embedHtml\": - {\n \"description\": \"HTML code that embeds a player that plays - the monitor stream.\",\n \"type\": \"string\"\n },\n \"broadcastStreamDelayMs\": - {\n \"description\": \"If you have set the enableMonitorStream property - to true, then this property determines the length of the live broadcast delay.\",\n - \ \"type\": \"integer\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"format\": \"uint32\"\n },\n \"enableMonitorStream\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"boolean\",\n \"description\": - \"This value determines whether the monitor stream is enabled for the broadcast. - If the monitor stream is enabled, then YouTube will broadcast the event content - on a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\"\n }\n - \ }\n },\n \"LiveBroadcast\": {\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the event, including its title, description, - start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - contains info about the event's current stats. These include concurrent viewers - and total chat count. Statistics can change (in either direction) during the - lifetime of an event. Statistics are only returned while the event is live.\",\n - \ \"$ref\": \"LiveBroadcastStatistics\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveBroadcast\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the broadcast.\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n }\n - \ },\n \"id\": \"LiveBroadcast\",\n \"description\": \"A *liveBroadcast* - resource represents an event that will be streamed, via live video, on YouTube.\"\n - \ },\n \"LiveBroadcastStatistics\": {\n \"description\": \"Statistics - about the live broadcast. These represent a snapshot of the values at the - time of the request. Statistics are only returned for live broadcasts.\",\n - \ \"type\": \"object\",\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"properties\": {\n \"concurrentViewers\": {\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"totalChatCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\"\n - \ }\n }\n },\n \"LiveChatSuperStickerDetails\": {\n \"id\": - \"LiveChatSuperStickerDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"superStickerMetadata\": {\n \"description\": \"Information - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"tier\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\"\n },\n - \ \"amountMicros\": {\n \"type\": \"string\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"format\": \"uint64\"\n }\n }\n },\n \"SuperChatEvent\": - {\n \"description\": \"A `__superChatEvent__` resource represents a Super - Chat purchase on a YouTube channel.\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#superChatEvent\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the Super Chat event.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"SuperChatEvent\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"properties\": {\n \"type\": {\n \"description\": - \"The kind of error happening.\",\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"reason\": - {\n \"type\": \"string\",\n \"description\": \"The short-form - reason for this issue.\"\n },\n \"severity\": {\n \"enum\": - [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"How severe this issue is to the stream.\"\n },\n - \ \"description\": {\n \"description\": \"The long-form description - of the issue and how to resolve it.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"InvideoPosition\": {\n \"id\": \"InvideoPosition\",\n \"type\": - \"object\",\n \"properties\": {\n \"type\": {\n \"type\": - \"string\",\n \"description\": \"Defines the position type.\",\n - \ \"enumDescriptions\": [\n \"\"\n ],\n \"enum\": - [\n \"corner\"\n ]\n },\n \"cornerPosition\": - {\n \"type\": \"string\",\n \"enum\": [\n \"topLeft\",\n - \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\"\n - \ }\n },\n \"description\": \"Describes the spatial position - of a visual widget inside a video. It is a union of various position types, - out of which only will be set one.\"\n },\n \"VideoFileDetails\": {\n - \ \"properties\": {\n \"creationTime\": {\n \"description\": - \"The date and time when the uploaded video file was created. The value is - specified in ISO 8601 format. Currently, the following ISO 8601 formats are - supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time - with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n - \ },\n \"fileSize\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The uploaded file's size in bytes. - This field is present whether a video file or another type of file was uploaded.\"\n - \ },\n \"audioStreams\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"description\": \"A list of audio streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about an audio stream.\"\n },\n \"container\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded video file's container - format.\"\n },\n \"durationMs\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The length of - the uploaded video in milliseconds.\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\"\n },\n \"fileType\": {\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The uploaded file's type as detected by YouTube's video processing engine. - Currently, YouTube only processes video files, but this field is present whether - a video file or another type of file was uploaded.\"\n },\n \"fileName\": - {\n \"description\": \"The uploaded file's name. This field is present - whether a video file or another type of file was uploaded.\",\n \"type\": - \"string\"\n },\n \"videoStreams\": {\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n },\n \"type\": - \"array\"\n }\n },\n \"id\": \"VideoFileDetails\",\n \"type\": - \"object\",\n \"description\": \"Describes original video file properties, - including technical details about audio and video streams, but also metadata - information like content length, digitization time, or geotagging information.\"\n - \ },\n \"ActivityListResponse\": {\n \"id\": \"ActivityListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#activityListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#activityListResponse\\\".\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Activity\"\n },\n \"type\": \"array\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoStatus\": {\n \"properties\": {\n \"publishAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the video is scheduled to publish. It can be set only if the - privacy status of the video is private..\",\n \"format\": \"date-time\"\n - \ },\n \"embeddable\": {\n \"description\": \"This value - indicates if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"failureReason\": - {\n \"description\": \"This value explains why a video failed to - upload. This property is only present if the uploadStatus property indicates - that the upload failed.\",\n \"type\": \"string\",\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ],\n \"enumDescriptions\": [\n \"Unable to convert - video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ]\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"rejectionReason\": {\n \"type\": \"string\",\n \"description\": - \"This value explains why YouTube rejected an uploaded video. This property - is only present if the uploadStatus property indicates that the upload was - rejected.\",\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ]\n },\n \"uploadStatus\": {\n \"enumDescriptions\": - [\n \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"description\": - \"The status of the uploaded video.\",\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ],\n \"type\": \"string\"\n },\n - \ \"license\": {\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ]\n },\n \"privacyStatus\": {\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The video's privacy status.\"\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n }\n },\n - \ \"id\": \"VideoStatus\",\n \"type\": \"object\",\n \"description\": - \"Basic details about a video category, such as its localized title. Next - Id: 18\"\n },\n \"LiveChatMessageDeletedDetails\": {\n \"id\": - \"LiveChatMessageDeletedDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"SuperChatEventListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#superChatEventListResponse\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of Super Chat purchases that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n }\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": - \"SuperChatEventListResponse\"\n },\n \"AbuseReport\": {\n \"type\": - \"object\",\n \"properties\": {\n \"description\": {\n \"type\": - \"string\"\n },\n \"relatedEntities\": {\n \"items\": - {\n \"$ref\": \"RelatedEntity\"\n },\n \"type\": - \"array\"\n },\n \"abuseTypes\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"AbuseType\"\n }\n - \ },\n \"subject\": {\n \"$ref\": \"Entity\"\n }\n - \ },\n \"id\": \"AbuseReport\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"properties\": {\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"description\": \"The video stream's bitrate, in bits - per second.\",\n \"type\": \"string\"\n },\n \"codec\": - {\n \"description\": \"The video codec that the stream uses.\",\n - \ \"type\": \"string\"\n },\n \"heightPixels\": {\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's height in pixels.\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n },\n \"aspectRatio\": {\n \"type\": - \"number\",\n \"description\": \"The video content's display aspect - ratio, which specifies the aspect ratio in which the video should be displayed.\",\n - \ \"format\": \"double\"\n },\n \"widthPixels\": {\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\"\n },\n \"rotation\": - {\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\",\n \"type\": \"string\"\n },\n \"frameRateFps\": - {\n \"format\": \"double\",\n \"description\": \"The video - stream's frame rate, in frames per second.\",\n \"type\": \"number\"\n - \ }\n },\n \"description\": \"Information about a video stream.\",\n - \ \"type\": \"object\",\n \"id\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"PlaylistItemContentDetails\": {\n \"id\": \"PlaylistItemContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"startAt\": - {\n \"description\": \"The time, measured in seconds from the start - of the video, when the video should start playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) The default value is 0.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - a video. To retrieve the video resource, set the id query parameter to this - value in your API request.\"\n },\n \"note\": {\n \"description\": - \"A user-generated note for this item.\",\n \"type\": \"string\"\n - \ },\n \"videoPublishedAt\": {\n \"description\": \"The - date and time that the video was published to YouTube.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"endAt\": - {\n \"type\": \"string\",\n \"description\": \"The time, - measured in seconds from the start of the video, when the video should stop - playing. (The playlist owner can specify the times when the video should start - and stop playing when the video is played in the context of the playlist.) - By default, assume that the video.endTime is the end of the video.\"\n }\n - \ }\n },\n \"ChannelLocalization\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelLocalization\",\n \"description\": \"Channel localization - setting\",\n \"properties\": {\n \"description\": {\n \"description\": - \"The localized strings for channel's description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - localized strings for channel's title.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveChatMessageSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"giftMembershipReceivedDetails\": - {\n \"description\": \"Details about the Gift Membership Received - event, this is only set if the type is 'giftMembershipReceivedEvent'.\",\n - \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\"\n },\n \"textMessageDetails\": - {\n \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\",\n \"$ref\": \"LiveChatTextMessageDetails\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the message was orignally - published.\",\n \"type\": \"string\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"displayMessage\": {\n - \ \"type\": \"string\",\n \"description\": \"Contains a string - that can be displayed to the user. If this field is not present the message - is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"hasDisplayContent\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the message has display - content that should be displayed to users.\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"authorChannelId\": {\n \"description\": \"The ID of the - user that authored this message, this field is not always filled. textMessageEvent - - the user that wrote the message fanFundingEvent - the user that funded the - broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\",\n \"type\": \"string\"\n },\n - \ \"fanFundingEventDetails\": {\n \"description\": \"Details - about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n },\n \"superChatDetails\": - {\n \"description\": \"Details about the Super Chat event, this is - only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n - \ },\n \"type\": {\n \"type\": \"string\",\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\",\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"newSponsorDetails\": - {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": - \"Details about the New Member Announcement event, this is only set if the - type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term - for \\\"sponsor\\\".\"\n },\n \"messageRetractedDetails\": {\n - \ \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"superStickerDetails\": - {\n \"description\": \"Details about the Super Sticker event, this - is only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"memberMilestoneChatDetails\": {\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\",\n \"description\": \"Details - about the Member Milestone Chat event, this is only set if the type is 'memberMilestoneChatEvent'.\"\n - \ }\n },\n \"id\": \"LiveChatMessageSnippet\",\n \"description\": - \"Next ID: 33\"\n },\n \"MembershipsLevelListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of pricing levels offered by a creator to the fans.\",\n \"items\": - {\n \"$ref\": \"MembershipsLevel\"\n }\n },\n \"kind\": - {\n \"default\": \"youtube#membershipsLevelListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\"\n - \ },\n \"SuperStickerMetadata\": {\n \"properties\": {\n \"altTextLanguage\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the alt text is returned.\"\n },\n - \ \"altText\": {\n \"description\": \"Internationalized alt - text that describes the sticker image and any animation associated with it.\",\n - \ \"type\": \"string\"\n },\n \"stickerId\": {\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"SuperStickerMetadata\",\n - \ \"type\": \"object\"\n },\n \"LiveChatModeratorSnippet\": {\n - \ \"properties\": {\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the live chat this moderator can act - on.\"\n },\n \"moderatorDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the moderator.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\"\n - \ },\n \"I18nRegionSnippet\": {\n \"description\": \"Basic details - about an i18n region, such as region code and human-readable name.\",\n \"properties\": - {\n \"name\": {\n \"type\": \"string\",\n \"description\": - \"The human-readable name of the region.\"\n },\n \"gl\": {\n - \ \"type\": \"string\",\n \"description\": \"The region code - as a 2-letter ISO country code.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"I18nRegionSnippet\"\n },\n \"ThirdPartyLinkSnippet\": - {\n \"id\": \"ThirdPartyLinkSnippet\",\n \"description\": \"Basic - information about a third party account link, including its type and type-specific - information.\",\n \"properties\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"description\": \"Type of the link named after the entities that - are being linked.\",\n \"type\": \"string\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ]\n },\n \"channelToStoreLink\": {\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ImageSettings\": {\n \"id\": - \"ImageSettings\",\n \"properties\": {\n \"bannerMobileImageUrl\": - {\n \"description\": \"Banner image. Mobile size (640x175).\",\n - \ \"type\": \"string\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size low resolution (320x88).\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size extra high resolution - (2560x424).\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"trackingImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"bannerTvLowImageUrl\": {\n \"description\": \"Banner image. - TV size low resolution (854x480).\",\n \"type\": \"string\"\n },\n - \ \"bannerMobileMediumHdImageUrl\": {\n \"description\": \"Banner - image. Mobile size medium/high resolution (960x263).\",\n \"type\": - \"string\"\n },\n \"bannerTvHighImageUrl\": {\n \"description\": - \"Banner image. TV size high resolution (1920x1080).\",\n \"type\": - \"string\"\n },\n \"bannerTvImageUrl\": {\n \"description\": - \"Banner image. TV size extra high resolution (2120x1192).\",\n \"type\": - \"string\"\n },\n \"bannerTabletImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size (1707x283).\"\n - \ },\n \"bannerTvMediumImageUrl\": {\n \"description\": - \"Banner image. TV size medium resolution (1280x720).\",\n \"type\": - \"string\"\n },\n \"bannerTabletLowImageUrl\": {\n \"description\": - \"Banner image. Tablet size low resolution (1138x188).\",\n \"type\": - \"string\"\n },\n \"largeBrandedBannerImageUrl\": {\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTabletHdImageUrl\": {\n - \ \"description\": \"Banner image. Tablet size high resolution (2276x377).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\",\n \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"largeBrandedBannerImageImapScript\": {\n \"description\": - \"The image map script for the large banner image.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Desktop size (1060x175).\"\n - \ },\n \"bannerMobileHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size high resolution (1280x360).\",\n \"type\": - \"string\"\n },\n \"smallBrandedBannerImageUrl\": {\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\",\n \"$ref\": - \"LocalizedProperty\"\n }\n },\n \"description\": \"Branding - properties for images associated with the channel.\",\n \"type\": \"object\"\n - \ },\n \"LiveStreamStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"healthStatus\": {\n \"$ref\": \"LiveStreamHealthStatus\",\n - \ \"description\": \"The health status of the stream.\"\n },\n - \ \"streamStatus\": {\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"id\": \"LiveStreamStatus\",\n - \ \"description\": \"Brief description of the live stream status.\"\n - \ },\n \"PlaylistContentDetails\": {\n \"properties\": {\n \"itemCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"PlaylistContentDetails\"\n },\n \"ChannelStatus\": - {\n \"properties\": {\n \"privacyStatus\": {\n \"description\": - \"Privacy status of the channel.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"isLinked\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n },\n \"longUploadsStatus\": {\n \"enum\": - [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The long uploads status of this channel. See - https://support.google.com/youtube/answer/71673 for more information.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"JSON template for the status part of a channel.\",\n - \ \"id\": \"ChannelStatus\"\n },\n \"ChannelListResponse\": {\n - \ \"id\": \"ChannelListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Channel\"\n }\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"default\": \"youtube#channelListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ }\n },\n \"LiveBroadcastSnippet\": {\n \"properties\": {\n - \ \"description\": {\n \"description\": \"The broadcast's description. - As with the title, you can set this field by modifying the broadcast resource - or by setting the description field of the corresponding video resource.\",\n - \ \"type\": \"string\"\n },\n \"actualEndTime\": {\n - \ \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"isDefaultBroadcast\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether this broadcast is the default broadcast. Internal only.\"\n - \ },\n \"scheduledEndTime\": {\n \"description\": \"The - date and time that the broadcast is scheduled to end.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast was added to YouTube's live broadcast schedule.\",\n - \ \"format\": \"date-time\"\n },\n \"actualStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast actually - started. This information is only available once the broadcast's state is - live.\"\n },\n \"scheduledStartTime\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the broadcast is scheduled to start.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"title\": {\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that is publishing the broadcast.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the broadcast. For each nested object - in this object, the key is the name of the thumbnail image, and the value - is an object that contains other information about the thumbnail.\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The id of the live chat for this broadcast.\"\n }\n },\n \"id\": - \"LiveBroadcastSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic broadcast information.\"\n },\n \"SubscriptionSnippet\": {\n - \ \"description\": \"Basic details about a subscription, including title, - description and thumbnails of the subscribed item.\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The subscription's details.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the video. 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.\"\n },\n \"resourceId\": {\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\",\n \"$ref\": \"ResourceId\",\n \"annotations\": {\n - \ \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n }\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the subscription was created.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the subscription - belongs to.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The subscription's title.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the subscriber's channel.\"\n }\n },\n \"id\": \"SubscriptionSnippet\",\n - \ \"type\": \"object\"\n },\n \"VideoPlayer\": {\n \"id\": - \"VideoPlayer\",\n \"properties\": {\n \"embedWidth\": {\n \"description\": - \"The embed width\",\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"embedHeight\": {\n \"format\": \"int64\",\n - \ \"type\": \"string\"\n },\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that - embeds a player that will play the video.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Player to be used for a video playback.\"\n - \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viever is a member. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the member to this Member Milestone Chat. This field - is empty for messages without a comment from the member.\"\n },\n \"memberMonth\": - {\n \"description\": \"The total amount of months (rounded up) the - viewer has been a member that granted them this Member Milestone Chat. This - is the same number of months as is being displayed to YouTube users.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n - \ },\n \"id\": \"LiveChatMemberMilestoneChatDetails\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n \"default\": - \"youtube#thirdPartyLinkListResponse\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ThirdPartyLinkListResponse\",\n \"type\": - \"object\"\n },\n \"ChannelSection\": {\n \"id\": \"ChannelSection\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"localizations\": - {\n \"additionalProperties\": {\n \"$ref\": \"ChannelSectionLocalization\"\n - \ },\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\"\n },\n \"targeting\": - {\n \"$ref\": \"ChannelSectionTargeting\",\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\",\n \"$ref\": \"ChannelSectionSnippet\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\",\n \"$ref\": - \"ChannelSectionContentDetails\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n \"default\": - \"youtube#channelSection\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n }\n - \ }\n },\n \"VideoAbuseReport\": {\n \"id\": \"VideoAbuseReport\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"reasonId\": - {\n \"description\": \"The high-level, or primary, reason that the - content is abusive. The value is an abuse report reason ID.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n },\n \"comments\": {\n \"description\": - \"Additional comments regarding the abuse report.\",\n \"type\": - \"string\"\n },\n \"secondaryReasonId\": {\n \"type\": - \"string\",\n \"description\": \"The specific, or secondary, reason - that this content is abusive (if available). The value is an abuse report - reason ID that is a valid secondary reason for the primary reason.\"\n },\n - \ \"language\": {\n \"type\": \"string\",\n \"description\": - \"The language that the content was viewed in.\"\n }\n }\n },\n - \ \"PlaylistItemStatus\": {\n \"id\": \"PlaylistItemStatus\",\n \"description\": - \"Information about the playlist item's privacy status.\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"This resource's - privacy status.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"MembershipsLevelSnippet\": {\n \"properties\": {\n \"levelDetails\": - {\n \"description\": \"Details about the pricing level.\",\n \"$ref\": - \"LevelDetails\"\n },\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"type\": \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"properties\": - {\n \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the Level at which the viewer is a member. This matches the - `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated - membership gifting message. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\"\n },\n - \ \"gifterChannelId\": {\n \"description\": \"The ID of the - user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\",\n \"type\": \"string\"\n - \ },\n \"associatedMembershipGiftingMessageId\": {\n \"description\": - \"The ID of the membership gifting message that is related to this gift membership. - This ID will always refer to a message whose type is 'membershipGiftingEvent'.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"IngestionInfo\": {\n \"description\": \"Describes information - necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"type\": - \"object\",\n \"id\": \"IngestionInfo\",\n \"properties\": {\n \"rtmpsBackupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of backupIngestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"rtmpsIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of ingestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"ingestionAddress\": - {\n \"description\": \"The primary ingestion URL that you should - use to stream video to YouTube. You must stream video to this URL. Depending - on which application or tool you use to encode your video stream, you may - need to enter the stream URL and stream name separately or you may need to - concatenate them in the following format: *STREAM_URL/STREAM_NAME* \",\n \"type\": - \"string\"\n },\n \"streamName\": {\n \"type\": \"string\",\n - \ \"description\": \"The stream name that YouTube assigns to the video - stream.\"\n },\n \"backupIngestionAddress\": {\n \"description\": - \"The backup ingestion URL that you should use to stream video to YouTube. - You have the option of simultaneously streaming the content that you are sending - to the ingestionAddress to this URL.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LevelDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"displayName\": {\n \"description\": - \"The name that should be used when referring to this level.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LevelDetails\"\n },\n - \ \"LiveChatSuperChatDetails\": {\n \"properties\": {\n \"tier\": - {\n \"type\": \"integer\",\n \"description\": \"The tier - in which the amount belongs. Lower amounts belong to lower tiers. The lowest - tier is 1.\",\n \"format\": \"uint32\"\n },\n \"userComment\": - {\n \"description\": \"The comment added by the user to this Super - Chat event.\",\n \"type\": \"string\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made.\"\n },\n \"amountMicros\": {\n - \ \"description\": \"The amount purchased by the user, in micros (1,750,000 - micros = 1.75).\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatSuperChatDetails\"\n },\n \"PlaylistPlayer\": - {\n \"id\": \"PlaylistPlayer\",\n \"type\": \"object\",\n \"properties\": - {\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\"\n - \ }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": {\n - \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"properties\": {\n \"playlistItemId\": {\n \"type\": - \"string\",\n \"description\": \"ID of the item within the playlist.\"\n - \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n },\n \"playlistId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Information about a new playlist item.\"\n },\n \"SuperChatEventSnippet\": - {\n \"id\": \"SuperChatEventSnippet\",\n \"properties\": {\n \"supporterDetails\": - {\n \"description\": \"Details about the supporter.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"superStickerMetadata\": {\n - \ \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\"\n },\n \"displayString\": {\n \"description\": - \"A rendered string that displays the purchase amount and currency (e.g., - \\\"$1.00\\\"). The string is rendered for the given language.\",\n \"type\": - \"string\"\n },\n \"messageType\": {\n \"format\": - \"uint32\",\n \"description\": \"The tier for the paid message, which - is based on the amount of money spent to purchase the message.\",\n \"type\": - \"integer\"\n },\n \"channelId\": {\n \"description\": - \"Channel id where the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\",\n \"type\": \"string\"\n - \ },\n \"commentText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text contents of the comment left by the - user.\"\n },\n \"isSuperStickerEvent\": {\n \"description\": - \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n - \ },\n \"createdAt\": {\n \"description\": \"The date - and time when the event occurred.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"type\": \"string\",\n \"description\": \"The purchase - amount, in micros of the purchase currency. e.g., 1 is represented as 1000000.\",\n - \ \"format\": \"uint64\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveBroadcastStatus\": {\n \"description\": \"Live broadcast - state.\",\n \"id\": \"LiveBroadcastStatus\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n },\n \"liveBroadcastPriority\": - {\n \"enumDescriptions\": [\n \"\",\n \"Low - priority broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ],\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"type\": \"string\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the broadcast is made for kids or not, decided by YouTube instead of the creator. - This field is read only.\"\n },\n \"lifeCycleStatus\": {\n \"enum\": - [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"type\": \"string\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"This field - will be set to True if the creator declares the broadcast to be kids only: - go/live-cw-work.\"\n },\n \"recordingStatus\": {\n \"description\": - \"The broadcast's recording status.\",\n \"enumDescriptions\": [\n - \ \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ],\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"type\": \"string\"\n }\n }\n },\n - \ \"ThirdPartyLink\": {\n \"type\": \"object\",\n \"properties\": - {\n \"linkingToken\": {\n \"type\": \"string\",\n \"description\": - \"The linking_token identifies a YouTube account and channel with which the - third party account is linked.\"\n },\n \"status\": {\n \"$ref\": - \"ThirdPartyLinkStatus\",\n \"description\": \"The status object - contains information about the status of the link.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n \"default\": - \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource\"\n }\n },\n - \ \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\",\n \"id\": \"ThirdPartyLink\"\n },\n \"MemberSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering memberships.\"\n },\n \"membershipsDetails\": - {\n \"$ref\": \"MembershipsDetails\",\n \"description\": - \"Details about the user's membership.\"\n },\n \"memberDetails\": - {\n \"description\": \"Details about the member.\",\n \"$ref\": - \"ChannelProfileDetails\"\n }\n },\n \"id\": \"MemberSnippet\"\n - \ },\n \"TestItemTestItemSnippet\": {\n \"properties\": {},\n \"id\": - \"TestItemTestItemSnippet\",\n \"type\": \"object\"\n },\n \"Caption\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#caption\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the caption track.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the caption.\",\n \"$ref\": - \"CaptionSnippet\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"A *caption* resource represents a YouTube caption track. A caption track - is associated with exactly one YouTube video.\",\n \"id\": \"Caption\"\n - \ },\n \"MembershipsLevel\": {\n \"description\": \"A *membershipsLevel* - resource represents an offer made by YouTube creators for their fans. Users - can become members of the channel by joining one of the available levels. - They will provide recurring monetary support and receives special benefits.\",\n - \ \"type\": \"object\",\n \"id\": \"MembershipsLevel\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevel\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the level.\",\n \"$ref\": - \"MembershipsLevelSnippet\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the memberships level.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsComment\": - {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with the - comment.\"\n }\n },\n \"description\": \"Information about - a resource that received a comment.\",\n \"id\": \"ActivityContentDetailsComment\"\n - \ },\n \"ChannelBrandingSettings\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"watch\": {\n \"$ref\": \"WatchSettings\",\n - \ \"description\": \"Branding properties for the watch page.\"\n },\n - \ \"channel\": {\n \"description\": \"Branding properties for - the channel view.\",\n \"$ref\": \"ChannelSettings\"\n },\n - \ \"hints\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n },\n \"description\": - \"Additional experimental branding properties.\"\n },\n \"image\": - {\n \"description\": \"Branding properties for branding images.\",\n - \ \"$ref\": \"ImageSettings\"\n }\n },\n \"description\": - \"Branding properties of a YouTube channel.\",\n \"id\": \"ChannelBrandingSettings\"\n - \ },\n \"LiveChatTextMessageDetails\": {\n \"properties\": {\n \"messageText\": - {\n \"description\": \"The user's message.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatTextMessageDetails\"\n },\n \"SubscriptionContentDetails\": - {\n \"description\": \"Details about the content to witch a subscription - refers.\",\n \"id\": \"SubscriptionContentDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"activityType\": {\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"newItemCount\": {\n - \ \"format\": \"uint32\",\n \"description\": \"The number - of new items in the subscription since its content was last read.\",\n \"type\": - \"integer\"\n },\n \"totalItemCount\": {\n \"description\": - \"The approximate number of items that the subscription points to.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n }\n }\n },\n - \ \"PlaylistItem\": {\n \"id\": \"PlaylistItem\",\n \"type\": - \"object\",\n \"description\": \"A *playlistItem* resource identifies - another resource, such as a video, that is included in a playlist. In addition, - the playlistItem resource contains details about the included resource that - pertain specifically to how that resource is used in that playlist. YouTube - uses playlists to identify special collections of videos for a channel, such - as: - uploaded videos - favorite videos - positively rated (liked) videos - - watch history - watch later To be more specific, these lists are associated - with a channel, which is a collection of a person, group, or company's videos, - playlists, and other YouTube information. You can retrieve the playlist IDs - for each of these lists from the channel resource for a given channel. You - can then use the playlistItems.list method to retrieve any of those lists. - You can also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods. For example, if a user gives a positive - rating to a video, you would insert that video into the liked videos playlist - for that user's channel.\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"PlaylistItemSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the playlist item.\"\n },\n \"status\": {\n \"$ref\": - \"PlaylistItemStatus\",\n \"description\": \"The status object contains - information about the playlist item's privacy status.\"\n },\n \"kind\": - {\n \"default\": \"youtube#playlistItem\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItem\\\".\"\n },\n \"contentDetails\": - {\n \"$ref\": \"PlaylistItemContentDetails\",\n \"description\": - \"The contentDetails object is included in the resource if the included item - is a YouTube video. The object contains additional information about the video.\"\n - \ }\n }\n },\n \"LiveChatMessageRetractedDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ }\n }\n },\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"basePath\": \"\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"discoveryVersion\": \"v1\",\n \"servicePath\": \"\",\n \"fullyEncodeReservedExpansion\": - true,\n \"description\": \"The YouTube Data API v3 is an API that provides - access to YouTube data, such as videos, playlists, and channels.\",\n \"baseUrl\": - \"https://youtube.googleapis.com/\",\n \"ownerName\": \"Google\",\n \"id\": - \"youtube:v3\",\n \"name\": \"youtube\",\n \"kind\": \"discovery#restDescription\",\n - \ \"batchPath\": \"batch\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": - {\n \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n }\n - \ }\n }\n },\n \"parameters\": {\n \"oauth_token\": {\n \"description\": - \"OAuth 2.0 token for the current user.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"upload_protocol\": {\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"$.xgafv\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": [\n - \ \"v1 error format\",\n \"v2 error format\"\n ],\n \"enum\": - [\n \"1\",\n \"2\"\n ],\n \"description\": \"V1 error - format.\"\n },\n \"uploadType\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Legacy upload protocol - for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n },\n \"fields\": - {\n \"description\": \"Selector specifying which fields to include in - a partial response.\",\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"prettyPrint\": {\n \"type\": \"boolean\",\n \"description\": - \"Returns response with indentations and line breaks.\",\n \"default\": - \"true\",\n \"location\": \"query\"\n },\n \"alt\": {\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"default\": \"json\",\n - \ \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"description\": \"Data format for response.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"callback\": {\n - \ \"description\": \"JSONP\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"quotaUser\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"key\": {\n \"description\": - \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"access_token\": - {\n \"description\": \"OAuth access token.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"revision\": \"20230131\",\n - \ \"documentationLink\": \"https://developers.google.com/youtube/\",\n \"title\": - \"YouTube Data API v3\",\n \"ownerDomain\": \"google.com\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 01 Feb 2023 10:42:43 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/videos?id=rq2SVMXEMPI&part=snippet - response: - body: - string: "{\n \"kind\": \"youtube#videoListResponse\",\n \"etag\": \"JOwQ_OzwZTTm_cDlYuuQGy2qaHE\",\n - \ \"items\": [\n {\n \"kind\": \"youtube#video\",\n \"etag\": - \"R_CVXCQC580o-3GzNd6ABhnxiBE\",\n \"id\": \"rq2SVMXEMPI\",\n \"snippet\": - {\n \"publishedAt\": \"2022-05-11T18:56:54Z\",\n \"channelId\": - \"UCk2OzObixhe_mbMfMQGLuJw\",\n \"title\": \"Linux XanMod build using - AWS instance\",\n \"description\": \"This is recording of linux-xanmod - Archlinux package build.\\nDonate here nbryskin@getalby.com\",\n \"thumbnails\": - {\n \"default\": {\n \"url\": \"https://i.ytimg.com/vi/rq2SVMXEMPI/default.jpg\",\n - \ \"width\": 120,\n \"height\": 90\n },\n \"medium\": - {\n \"url\": \"https://i.ytimg.com/vi/rq2SVMXEMPI/mqdefault.jpg\",\n - \ \"width\": 320,\n \"height\": 180\n },\n \"high\": - {\n \"url\": \"https://i.ytimg.com/vi/rq2SVMXEMPI/hqdefault.jpg\",\n - \ \"width\": 480,\n \"height\": 360\n },\n \"standard\": - {\n \"url\": \"https://i.ytimg.com/vi/rq2SVMXEMPI/sddefault.jpg\",\n - \ \"width\": 640,\n \"height\": 480\n },\n \"maxres\": - {\n \"url\": \"https://i.ytimg.com/vi/rq2SVMXEMPI/maxresdefault.jpg\",\n - \ \"width\": 1280,\n \"height\": 720\n }\n },\n - \ \"channelTitle\": \"Another Channel\",\n \"categoryId\": \"22\",\n - \ \"liveBroadcastContent\": \"none\",\n \"localized\": {\n \"title\": - \"Linux XanMod build using AWS instance\",\n \"description\": \"This - is recording of linux-xanmod Archlinux package build.\\nDonate here nbryskin@getalby.com\"\n - \ }\n }\n }\n ],\n \"pageInfo\": {\n \"totalResults\": - 1,\n \"resultsPerPage\": 1\n }\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 01 Feb 2023 10:42:44 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"id\": \"youtube:v3\",\n - \ \"servicePath\": \"\",\n \"resources\": {\n \"membershipsLevels\": {\n - \ \"methods\": {\n \"list\": {\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the membershipsLevel - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"path\": \"youtube/v3/membershipsLevels\",\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ }\n }\n }\n },\n \"i18nLanguages\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the i18nLanguage resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"en_US\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"path\": \"youtube/v3/i18nLanguages\"\n }\n }\n },\n - \ \"abuseReports\": {\n \"methods\": {\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"path\": - \"youtube/v3/abuseReports\",\n \"description\": \"Inserts a new resource - into this collection.\",\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n }\n }\n - \ }\n },\n \"liveChatModerators\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"id\": - \"youtube.liveChatModerators.list\",\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"parameters\": {\n \"maxResults\": - {\n \"default\": \"5\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the liveChatModerator resource parts that - the API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"liveChatId\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The id of the live chat for which moderators - should be returned.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n },\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat moderator.\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"id\": \"youtube.liveChatModerators.delete\",\n - \ \"httpMethod\": \"DELETE\"\n },\n \"insert\": {\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.liveChatModerators.insert\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n }\n - \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n - \ \"list\": {\n \"id\": \"youtube.i18nRegions.list\",\n \"parameters\": - {\n \"hl\": {\n \"default\": \"en_US\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the i18nRegion resource properties that the API response - will include. Set the parameter value to snippet.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/i18nRegions\",\n \"response\": {\n - \ \"$ref\": \"I18nRegionListResponse\"\n },\n \"flatPath\": - \"youtube/v3/i18nRegions\",\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"members\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/members\",\n \"id\": \"youtube.members.list\",\n - \ \"description\": \"Retrieves a list of members that match the request - criteria for a channel.\",\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"path\": \"youtube/v3/members\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"filterByMemberChannelId\": - {\n \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"hasAccessToLevel\": {\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"mode\": {\n \"location\": \"query\",\n - \ \"description\": \"Parameter that specifies which channel members - to return.\",\n \"type\": \"string\",\n \"enum\": - [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"default\": - \"all_current\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ]\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"maximum\": \"1000\",\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"type\": - \"integer\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - member resource parts that the API response will include. Set the parameter - value to snippet.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"request\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/liveChat/messages\",\n \"id\": - \"youtube.liveChatMessages.insert\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the localization language - in which the system messages should be returned.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"maximum\": - \"2000\",\n \"location\": \"query\",\n \"default\": - \"500\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"200\",\n \"type\": - \"integer\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the liveChatComment resource parts that the - API response will include. Supported values are id and snippet.\"\n },\n - \ \"profileImageSize\": {\n \"format\": \"uint32\",\n - \ \"minimum\": \"16\",\n \"location\": \"query\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\",\n \"type\": \"integer\",\n - \ \"maximum\": \"720\"\n },\n \"liveChatId\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The id of the live chat for which comments - should be returned.\",\n \"type\": \"string\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"id\": \"youtube.liveChatMessages.list\"\n },\n - \ \"delete\": {\n \"description\": \"Deletes a chat message.\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/liveChat/messages\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.liveChatMessages.delete\"\n - \ }\n }\n },\n \"playlistItems\": {\n \"methods\": {\n - \ \"list\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"videoId\": {\n \"location\": - \"query\",\n \"description\": \"Return the playlist items associated - with the given video ID.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"required\": true,\n - \ \"type\": \"string\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the playlist items within the given playlist.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"path\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Deletes a resource.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.delete\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"insert\": {\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ }\n },\n \"update\": {\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.update\",\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"comments\": - {\n \"methods\": {\n \"setModerationStatus\": {\n \"id\": - \"youtube.comments.setModerationStatus\",\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"description\": - \"Sets the moderation status of one or more comments.\",\n \"parameters\": - {\n \"moderationStatus\": {\n \"location\": \"query\",\n - \ \"description\": \"Specifies the requested moderation status. - Note, comments can be in statuses, which are not available through this call. - For example, this call does not allow to mark a comment as 'likely spam'. - Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"required\": true,\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"Modifies - the moderation status of the comments with the given IDs\"\n },\n - \ \"banAuthor\": {\n \"description\": \"If set to true - the author of the comment gets added to the ban list. This means all future - comments of the author will autmomatically be rejected. Only valid in combination - with STATUS_REJECTED.\",\n \"type\": \"boolean\",\n \"default\": - \"false\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments/setModerationStatus\"\n - \ },\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.comments.update\",\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true\n }\n - \ },\n \"request\": {\n \"$ref\": \"Comment\"\n - \ },\n \"response\": {\n \"$ref\": \"Comment\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"flatPath\": - \"youtube/v3/comments\"\n },\n \"list\": {\n \"id\": - \"youtube.comments.list\",\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"parameters\": {\n \"textFormat\": - {\n \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"location\": - \"query\",\n \"default\": \"html\",\n \"description\": - \"The requested text format for the returned comments.\",\n \"type\": - \"string\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ]\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more comment resource properties that the API response will - include.\",\n \"repeated\": true\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"default\": - \"20\",\n \"maximum\": \"100\",\n \"minimum\": \"1\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"parentId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\"\n },\n \"id\": - {\n \"description\": \"Returns the comments with the given IDs - for One Platform.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/comments\",\n \"response\": {\n \"$ref\": - \"CommentListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"path\": \"youtube/v3/comments\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"id\": \"youtube.comments.delete\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.comments.insert\",\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments\",\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n }\n },\n \"markAsSpam\": {\n - \ \"description\": \"Expresses the caller's opinion that one or more - comments should be flagged as spam.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.markAsSpam\",\n \"path\": - \"youtube/v3/comments/markAsSpam\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"parameters\": {\n \"id\": {\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true\n }\n - \ },\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"liveChatBans\": - {\n \"methods\": {\n \"delete\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a chat ban.\",\n \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.liveChatBans.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"path\": \"youtube/v3/liveChat/bans\"\n - \ },\n \"insert\": {\n \"response\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"path\": \"youtube/v3/liveChat/bans\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"id\": \"youtube.liveChatBans.insert\"\n }\n }\n },\n - \ \"thumbnails\": {\n \"methods\": {\n \"set\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.thumbnails.set\",\n \"parameters\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"Returns the Thumbnail with the given - video IDs for Stubby or Apiary.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/thumbnails/set\",\n \"response\": - {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"supportsMediaUpload\": - true,\n \"description\": \"As this is not an insert in a strict sense - (it supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"path\": - \"youtube/v3/thumbnails/set\",\n \"parameterOrder\": [\n \"videoId\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"mediaUpload\": - {\n \"maxSize\": \"2097152\",\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n }\n }\n }\n },\n \"tests\": {\n - \ \"methods\": {\n \"insert\": {\n \"request\": {\n \"$ref\": - \"TestItem\"\n },\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"TestItem\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"path\": \"youtube/v3/tests\",\n - \ \"flatPath\": \"youtube/v3/tests\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"POST method.\",\n \"id\": - \"youtube.tests.insert\"\n }\n }\n },\n \"playlists\": {\n - \ \"methods\": {\n \"delete\": {\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.playlists.delete\",\n \"description\": - \"Deletes a resource.\"\n },\n \"update\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true\n }\n - \ },\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"description\": \"Updates an existing resource.\",\n \"id\": - \"youtube.playlists.update\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"path\": \"youtube/v3/playlists\"\n },\n \"insert\": - {\n \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.playlists.insert\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"httpMethod\": \"POST\"\n },\n \"list\": {\n \"path\": - \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.list\",\n - \ \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the playlists owned by the specified channel ID.\"\n },\n \"mine\": - {\n \"description\": \"Return the playlists owned by the authenticated - user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"hl\": {\n - \ \"description\": \"Return content in specified language\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ }\n }\n },\n \"activities\": {\n \"methods\": {\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.activities.list\",\n \"parameters\": {\n \"publishedAfter\": - {\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"home\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"publishedBefore\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"format\": \"google-datetime\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/activities\"\n }\n - \ }\n },\n \"captions\": {\n \"methods\": {\n \"download\": - {\n \"useMediaDownloadService\": true,\n \"supportsMediaDownload\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/captions/{id}\",\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.captions.download\",\n \"flatPath\": \"youtube/v3/captions/{id}\",\n - \ \"parameters\": {\n \"tfmt\": {\n \"type\": - \"string\",\n \"description\": \"Convert the captions into this - format. Supported options are sbv, srt, and vtt.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"The ID of the caption track to download, required for One Platform.\",\n - \ \"required\": true,\n \"location\": \"path\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"tlang\": {\n \"type\": \"string\",\n - \ \"description\": \"tlang is the language code; machine translate - the captions into this language.\",\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Downloads a caption - track.\"\n },\n \"insert\": {\n \"description\": \"Inserts - a new resource into this collection.\",\n \"id\": \"youtube.captions.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"description\": \"The - *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n },\n \"sync\": {\n - \ \"location\": \"query\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/captions\"\n },\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/captions\",\n \"id\": \"youtube.captions.delete\",\n - \ \"path\": \"youtube/v3/captions\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"description\": \"Deletes a resource.\"\n },\n \"list\": - {\n \"flatPath\": \"youtube/v3/captions\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the captions with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\",\n \"location\": - \"query\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"Returns the captions for the - specified video.\"\n }\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.captions.list\",\n \"response\": - {\n \"$ref\": \"CaptionListResponse\"\n },\n \"path\": - \"youtube/v3/captions\",\n \"description\": \"Retrieves a list of - resources, possibly filtered.\",\n \"parameterOrder\": [\n \"part\",\n - \ \"videoId\"\n ]\n },\n \"update\": {\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\"\n },\n \"sync\": - {\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"path\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"httpMethod\": \"PUT\",\n \"id\": - \"youtube.captions.update\",\n \"mediaUpload\": {\n \"maxSize\": - \"104857600\",\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ }\n }\n }\n }\n },\n \"subscriptions\": - {\n \"methods\": {\n \"insert\": {\n \"response\": {\n - \ \"$ref\": \"Subscription\"\n },\n \"request\": - {\n \"$ref\": \"Subscription\"\n },\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"required\": true\n }\n },\n \"id\": - \"youtube.subscriptions.insert\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/subscriptions\"\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"SubscriptionListResponse\"\n },\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.subscriptions.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"mySubscribers\": {\n - \ \"location\": \"query\",\n \"description\": \"Return - the subscribers of the given channel owner.\",\n \"type\": \"boolean\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"description\": \"Flag for returning the subscriptions of - the authenticated user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"myRecentSubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions of the given channel - owner.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions with the given IDs - for Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"forChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Return - the subscriptions to the subset of these channels that the authenticated user - is subscribed to.\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"maximum\": \"50\"\n - \ },\n \"order\": {\n \"description\": \"The - order of the returned subscriptions\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"relevance\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ]\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\"\n },\n \"delete\": {\n \"id\": - \"youtube.subscriptions.delete\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"description\": \"Deletes a resource.\"\n - \ }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.commentThreads.list\",\n \"response\": - {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"allThreadsRelatedToChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"Returns the comment threads - with the given IDs for Stubby or Apiary.\",\n \"location\": \"query\"\n - \ },\n \"videoId\": {\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads of the specified - video.\",\n \"type\": \"string\"\n },\n \"order\": - {\n \"default\": \"time\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ]\n - \ },\n \"maxResults\": {\n \"type\": \"integer\",\n - \ \"maximum\": \"100\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\",\n \"default\": - \"20\",\n \"minimum\": \"1\",\n \"format\": \"uint32\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Returns the comment threads for - all the channel comments (ie does not include comments left on videos).\",\n - \ \"type\": \"string\"\n },\n \"searchTerms\": - {\n \"description\": \"Limits the returned comment threads to - those matching the specified key words. Not compatible with the 'id' filter.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"textFormat\": {\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"location\": \"query\",\n - \ \"default\": \"html\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The - requested text format for the returned comments.\"\n },\n \"moderationStatus\": - {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"default\": \"published\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"insert\": {\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.commentThreads.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/commentThreads\"\n }\n - \ }\n },\n \"liveBroadcasts\": {\n \"methods\": {\n \"insertCuepoint\": - {\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"description\": - \"Insert cuepoints in a broadcast\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Broadcast to insert ads to, or - equivalently `external_video_id` for internal use.\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [],\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"httpMethod\": \"POST\"\n },\n \"insert\": {\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new stream for the authenticated user.\"\n - \ },\n \"transition\": {\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"broadcastStatus\": {\n \"location\": - \"query\",\n \"description\": \"The status to which the broadcast - is going to transition.\",\n \"type\": \"string\",\n \"enum\": - [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"required\": true,\n \"enumDescriptions\": [\n - \ \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ]\n },\n \"id\": {\n \"description\": - \"Broadcast to transition.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Transition a broadcast to a given status.\",\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/transition\"\n },\n \"update\": - {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing broadcast for the - authenticated user.\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.update\"\n - \ },\n \"list\": {\n \"parameters\": {\n \"maxResults\": - {\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"0\"\n },\n - \ \"id\": {\n \"description\": \"Return broadcasts - with the given ids from Stubby or Apiary.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"broadcastType\": {\n \"description\": - \"Return only broadcasts with the selected type.\",\n \"enum\": - [\n \"broadcastTypeFilterUnspecified\",\n \"all\",\n - \ \"event\",\n \"persistent\"\n ],\n - \ \"default\": \"event\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ]\n },\n \"broadcastStatus\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Return broadcasts with a certain status, - e.g. active broadcasts.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"description\": - \"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, status - and statistics.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieve the list of broadcasts - associated with the given channel.\",\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"id\": \"youtube.liveBroadcasts.list\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\"\n },\n - \ \"bind\": {\n \"id\": \"youtube.liveBroadcasts.bind\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Broadcast to bind to the stream\",\n \"required\": true\n },\n - \ \"streamId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Stream to bind, if not set unbind - the current one.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"description\": \"Bind a broadcast to a stream.\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\"\n },\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.liveBroadcasts.delete\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Delete a given broadcast.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Broadcast - to delete.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ }\n }\n }\n },\n \"youtube\": {\n \"resources\": - {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true\n - \ }\n },\n \"parameterOrder\": [],\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"PUT\",\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"flatPath\": - \"youtube/v3/commentThreads\"\n }\n }\n }\n }\n - \ },\n \"watermarks\": {\n \"methods\": {\n \"unset\": {\n - \ \"path\": \"youtube/v3/watermarks/unset\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.watermarks.unset\",\n - \ \"description\": \"Allows removal of channel watermark.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"flatPath\": \"youtube/v3/watermarks/unset\"\n },\n \"set\": - {\n \"path\": \"youtube/v3/watermarks/set\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"supportsMediaUpload\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n - \ \"httpMethod\": \"POST\",\n \"mediaUpload\": {\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\",\n \"protocols\": - {\n \"resumable\": {\n \"multipart\": true,\n - \ \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n }\n - \ }\n },\n \"description\": \"Allows upload of - watermark image and setting it for a channel.\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"id\": \"youtube.watermarks.set\"\n }\n }\n },\n - \ \"videoCategories\": {\n \"methods\": {\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/videoCategories\",\n \"response\": - {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"parameters\": - {\n \"regionCode\": {\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"default\": \"en-US\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the videoCategory resource properties that the API response will include. - Set the parameter value to snippet.\",\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"description\": \"Returns - the video categories with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.videoCategories.list\"\n }\n }\n },\n - \ \"videos\": {\n \"methods\": {\n \"getRating\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.getRating\",\n \"flatPath\": \"youtube/v3/videos/getRating\",\n - \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Retrieves - the ratings that the authorized user gave to a list of specified videos.\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/videos/getRating\"\n - \ },\n \"reportAbuse\": {\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"parameterOrder\": [],\n \"id\": \"youtube.videos.reportAbuse\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n - \ \"description\": \"Report abuse for a video.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos/reportAbuse\",\n \"httpMethod\": - \"POST\"\n },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/videos\",\n \"id\": \"youtube.videos.delete\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/videos\",\n \"description\": \"Deletes a resource.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/videos\",\n - \ \"id\": \"youtube.videos.list\",\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"VideoListResponse\"\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"chart\": {\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"enum\": [\n - \ \"chartUnspecified\",\n \"mostPopular\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Return - the videos that are in the specified chart.\"\n },\n \"locale\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Use a chart that is specific to the specified - region\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"Return - videos with the given ids.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"minimum\": \"1\",\n \"description\": \"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.\"\n },\n \"maxWidth\": - {\n \"minimum\": \"72\",\n \"location\": \"query\",\n - \ \"description\": \"Return the player with maximum height specified - in\",\n \"maximum\": \"8192\",\n \"type\": \"integer\",\n - \ \"format\": \"int32\"\n },\n \"maxHeight\": - {\n \"format\": \"int32\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"minimum\": \"72\",\n - \ \"maximum\": \"8192\"\n },\n \"videoCategoryId\": - {\n \"type\": \"string\",\n \"default\": \"0\",\n - \ \"location\": \"query\",\n \"description\": \"Use - chart that is specific to the specified video category\"\n },\n - \ \"myRating\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return videos liked/disliked - by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\",\n - \ \"repeated\": true\n }\n },\n \"flatPath\": - \"youtube/v3/videos\"\n },\n \"update\": {\n \"request\": - {\n \"$ref\": \"Video\"\n },\n \"id\": \"youtube.videos.update\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/videos\",\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Updates - an existing resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\"\n },\n - \ \"rate\": {\n \"parameters\": {\n \"rating\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Adds a like or dislike - rating to a video or removes a rating from a video.\",\n \"id\": - \"youtube.videos.rate\",\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/videos/rate\",\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"parameterOrder\": [\n \"id\",\n \"rating\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"insert\": {\n \"id\": \"youtube.videos.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"supportsMediaUpload\": true,\n \"path\": \"youtube/v3/videos\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"request\": {\n - \ \"$ref\": \"Video\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"maxSize\": \"274877906944\",\n - \ \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/videos\"\n }\n - \ }\n },\n \"parameters\": {\n \"notifySubscribers\": - {\n \"default\": \"true\",\n \"location\": \"query\",\n - \ \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"autoLevels\": {\n \"description\": \"Should auto-levels - be applied to the upload.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"stabilize\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Should - stabilize be applied to the upload.\"\n }\n }\n }\n - \ }\n },\n \"thirdPartyLinks\": {\n \"methods\": {\n \"delete\": - {\n \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"description\": \"Deletes a resource.\",\n - \ \"id\": \"youtube.thirdPartyLinks.delete\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"required\": true,\n \"description\": \"Type of - the link to be deleted.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"linkingToken\": - {\n \"description\": \"Delete the partner links with the given - linking token.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"Do not use. Required for compatibility.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n }\n },\n \"list\": {\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"linkingToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Get a third party link with the given linking - token.\"\n },\n \"type\": {\n \"location\": - \"query\",\n \"description\": \"Get a third party link of the - given type.\",\n \"type\": \"string\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ]\n },\n - \ \"part\": {\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"id\": \"youtube.thirdPartyLinks.list\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"ThirdPartyLink\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.insert\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the thirdPartyLink resource parts that the API request - and response will include. Supported values are linkingToken, status, and - snippet.\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": - \"POST\"\n },\n \"update\": {\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"id\": - \"youtube.thirdPartyLinks.update\",\n \"httpMethod\": \"PUT\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\"\n }\n },\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\"\n }\n }\n },\n \"channelBanners\": - {\n \"methods\": {\n \"insert\": {\n \"parameters\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n }\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"parameterOrder\": [],\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/channelBanners/insert\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\"\n },\n \"id\": - \"youtube.channelBanners.insert\",\n \"response\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"supportsMediaUpload\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"httpMethod\": \"POST\"\n }\n }\n },\n - \ \"channels\": {\n \"methods\": {\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"id\": \"youtube.channels.list\",\n - \ \"path\": \"youtube/v3/channels\",\n \"parameters\": {\n - \ \"mine\": {\n \"description\": \"Return the ids of - channels owned by the authenticated user.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"managedByMe\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the channels managed by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"maxResults\": {\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"type\": \"integer\"\n },\n \"forUsername\": - {\n \"description\": \"Return the channel associated with a YouTube - username.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"categoryId\": {\n \"type\": - \"string\",\n \"description\": \"Return the channels within the - specified guide category ID.\",\n \"location\": \"query\"\n },\n - \ \"mySubscribers\": {\n \"description\": \"Return - the channels subscribed to the authenticated user\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Return - the channels with the specified IDs.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ }\n },\n \"update\": {\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"description\": \"Updates an existing resource.\",\n \"response\": - {\n \"$ref\": \"Channel\"\n },\n \"request\": - {\n \"$ref\": \"Channel\"\n },\n \"path\": \"youtube/v3/channels\",\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.channels.update\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"update\": {\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.update\",\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"insert\": {\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channelSections.insert\"\n },\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.channelSections.list\",\n \"response\": {\n \"$ref\": - \"ChannelSectionListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Return - the ChannelSections with the given IDs for Stubby or Apiary.\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Return the ChannelSections - owned by the authenticated user.\"\n },\n \"hl\": {\n - \ \"description\": \"Return content in specified language\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the ChannelSections owned by the specified - channel ID.\"\n }\n },\n \"path\": \"youtube/v3/channelSections\"\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.delete\"\n }\n }\n },\n \"search\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of search resources\",\n \"response\": {\n \"$ref\": - \"SearchListResponse\"\n },\n \"path\": \"youtube/v3/search\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"order\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"default\": - \"relevance\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"description\": \"Sort order of the results.\"\n - \ },\n \"videoCaption\": {\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"type\": - \"string\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ]\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": - true\n },\n \"topicId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Restrict results to a particular topic.\"\n },\n \"videoEmbeddable\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos, embeddable or not.\",\n \"Only retrieve embeddable - videos.\"\n ],\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on embeddable videos.\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Display the content as seen by viewers in - this country.\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"relevanceLanguage\": {\n \"description\": \"Return - results relevant to this language.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"videoDimension\": - {\n \"description\": \"Filter on 3d videos.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ]\n },\n - \ \"relatedToVideoId\": {\n \"description\": \"Search - related to a resource.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoDuration\": {\n \"enum\": - [\n \"videoDurationUnspecified\",\n \"any\",\n - \ \"short\",\n \"medium\",\n \"long\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Filter on the duration of the videos.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter video search results based on their duration. This is the default - value.\",\n \"Only include videos that are less than four minutes - long.\",\n \"Only include videos that are between four and - 20 minutes long (inclusive).\",\n \"Only include videos longer - than 20 minutes.\"\n ]\n },\n \"type\": - {\n \"description\": \"Restrict results to a particular set of - resource types from One Platform.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"q\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Textual - search terms to match.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Filter on resources belonging - to this channelId.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"default\": \"5\",\n - \ \"minimum\": \"0\",\n \"format\": \"uint32\"\n - \ },\n \"videoType\": {\n \"description\": - \"Filter on videos of a specific type.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ]\n },\n \"forContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"Search owned by a content owner.\",\n - \ \"type\": \"boolean\"\n },\n \"videoCategoryId\": - {\n \"description\": \"Filter on videos in a specific category.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"publishedAfter\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on resources published after this date.\",\n \"format\": - \"google-datetime\"\n },\n \"location\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on location of the video\"\n },\n \"locationRadius\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on distance from the location (specified - above).\"\n },\n \"safeSearch\": {\n \"location\": - \"query\",\n \"default\": \"moderate\",\n \"enum\": - [\n \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"description\": \"Indicates whether the search results should - include restricted content as well as standard content.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ]\n },\n \"videoLicense\": - {\n \"enumDescriptions\": [\n \"Return all videos, - regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"description\": \"Filter on - the license of the videos.\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"channelType\": {\n \"description\": - \"Add a filter on the channel search.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"forMine\": - {\n \"location\": \"query\",\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"forDeveloper\": {\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"publishedBefore\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on resources published before this - date.\",\n \"format\": \"google-datetime\"\n },\n - \ \"eventType\": {\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"description\": \"Filter on the livestream - status of the videos.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been - completed.\"\n ]\n },\n \"videoDefinition\": - {\n \"location\": \"query\",\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"description\": \"Filter on the definition - of the videos.\",\n \"type\": \"string\"\n },\n \"videoSyndicated\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"description\": \"Filter on syndicated videos.\",\n \"enum\": - [\n \"videoSyndicatedUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/search\",\n \"id\": \"youtube.search.list\",\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"liveStreams\": - {\n \"methods\": {\n \"insert\": {\n \"response\": {\n - \ \"$ref\": \"LiveStream\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true,\n \"description\": - \"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, content_details, and status.\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Inserts - a new stream for the authenticated user.\"\n },\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.delete\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"description\": - \"Deletes an existing stream for the authenticated user.\"\n },\n \"update\": - {\n \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"id\": \"youtube.liveStreams.update\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"path\": - \"youtube/v3/liveStreams\"\n },\n \"list\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.liveStreams.list\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Return LiveStreams with the given ids - from Stubby or Apiary.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"description\": - \"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.\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveStreams\"\n }\n }\n },\n - \ \"videoAbuseReportReasons\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"id\": - \"youtube.videoAbuseReportReasons.list\",\n \"parameters\": {\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"en-US\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the videoCategory resource parts that the - API response will include. Supported values are id and snippet.\"\n }\n - \ }\n }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/superChatEvents\",\n - \ \"id\": \"youtube.superChatEvents.list\",\n \"response\": - {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/superChatEvents\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"hl\": {\n \"description\": - \"Return rendered funding amounts in specified language.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"1\",\n \"format\": \"uint32\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"part\": {\n \"description\": \"The - *part* parameter specifies the superChatEvent resource parts that the API - response will include. This parameter is currently not supported.\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n }\n }\n }\n - \ }\n }\n },\n \"version\": \"v3\",\n \"name\": \"youtube\",\n \"mtlsRootUrl\": - \"https://youtube.mtls.googleapis.com/\",\n \"auth\": {\n \"oauth2\": - {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": + string: "{\n \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.force-ssl\": + {\n \"description\": \"See, edit, and permanently delete your YouTube + videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": + {\n \"description\": \"Manage your YouTube videos\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": + \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": + {\n \"description\": \"View and manage your assets and associated + content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": {\n \"description\": \"See a list of your current active channel members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n }\n }\n }\n },\n \"documentationLink\": - \"https://developers.google.com/youtube/\",\n \"canonicalName\": \"YouTube\",\n - \ \"ownerName\": \"Google\",\n \"basePath\": \"\",\n \"fullyEncodeReservedExpansion\": - true,\n \"description\": \"The YouTube Data API v3 is an API that provides - access to YouTube data, such as videos, playlists, and channels.\",\n \"parameters\": - {\n \"$.xgafv\": {\n \"description\": \"V1 error format.\",\n \"location\": - \"query\",\n \"enum\": [\n \"1\",\n \"2\"\n ],\n \"enumDescriptions\": - [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"type\": - \"string\"\n },\n \"oauth_token\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"OAuth 2.0 token for - the current user.\"\n },\n \"fields\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Selector specifying - which fields to include in a partial response.\"\n },\n \"upload_protocol\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n },\n - \ \"alt\": {\n \"type\": \"string\",\n \"location\": \"query\",\n + relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube\": + {\n \"description\": \"Manage your YouTube account\"\n }\n + \ }\n }\n },\n \"batchPath\": \"batch\",\n \"discoveryVersion\": + \"v1\",\n \"servicePath\": \"\",\n \"protocol\": \"rest\",\n \"ownerDomain\": + \"google.com\",\n \"kind\": \"discovery#restDescription\",\n \"baseUrl\": + \"https://youtube.googleapis.com/\",\n \"revision\": \"20230308\",\n \"mtlsRootUrl\": + \"https://youtube.mtls.googleapis.com/\",\n \"title\": \"YouTube Data API + v3\",\n \"version\": \"v3\",\n \"parameters\": {\n \"prettyPrint\": {\n + \ \"description\": \"Returns response with indentations and line breaks.\",\n + \ \"type\": \"boolean\",\n \"default\": \"true\",\n \"location\": + \"query\"\n },\n \"callback\": {\n \"description\": \"JSONP\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"quotaUser\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"$.xgafv\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"description\": + \"V1 error format.\",\n \"location\": \"query\",\n \"enum\": [\n + \ \"1\",\n \"2\"\n ]\n },\n \"key\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"oauth_token\": {\n \"type\": \"string\",\n \"description\": + \"OAuth 2.0 token for the current user.\",\n \"location\": \"query\"\n + \ },\n \"uploadType\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"Legacy upload protocol for media (e.g. + \\\"media\\\", \\\"multipart\\\").\"\n },\n \"fields\": {\n \"location\": + \"query\",\n \"description\": \"Selector specifying which fields to include + in a partial response.\",\n \"type\": \"string\"\n },\n \"access_token\": + {\n \"description\": \"OAuth access token.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"upload_protocol\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"Upload + protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n },\n \"alt\": + {\n \"enumDescriptions\": [\n \"Responses with Content-Type of + application/json\",\n \"Media download with context-dependent Content-Type\",\n + \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n \ \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"default\": \"json\",\n \"enumDescriptions\": [\n \"Responses - with Content-Type of application/json\",\n \"Media download with context-dependent - Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n - \ ],\n \"description\": \"Data format for response.\"\n },\n \"access_token\": - {\n \"type\": \"string\",\n \"description\": \"OAuth access token.\",\n - \ \"location\": \"query\"\n },\n \"key\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": \"query\"\n },\n \"callback\": - {\n \"type\": \"string\",\n \"description\": \"JSONP\",\n \"location\": - \"query\"\n },\n \"quotaUser\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"uploadType\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": \"Legacy - upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n },\n - \ \"prettyPrint\": {\n \"location\": \"query\",\n \"description\": - \"Returns response with indentations and line breaks.\",\n \"type\": - \"boolean\",\n \"default\": \"true\"\n }\n },\n \"batchPath\": \"batch\",\n - \ \"kind\": \"discovery#restDescription\",\n \"discoveryVersion\": \"v1\",\n - \ \"ownerDomain\": \"google.com\",\n \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"protocol\": - \"rest\",\n \"revision\": \"20230131\",\n \"schemas\": {\n \"LiveBroadcast\": - {\n \"id\": \"LiveBroadcast\",\n \"description\": \"A *liveBroadcast* - resource represents an event that will be streamed, via live video, on YouTube.\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": + \ ],\n \"location\": \"query\",\n \"default\": \"json\",\n \"type\": + \"string\",\n \"description\": \"Data format for response.\"\n }\n + \ },\n \"ownerName\": \"Google\",\n \"schemas\": {\n \"Subscription\": + {\n \"id\": \"Subscription\",\n \"properties\": {\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the subscription.\"\n },\n \"subscriberSnippet\": + {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n \"description\": + \"The subscriberSnippet object contains basic details about the subscriber.\"\n + \ },\n \"snippet\": {\n \"$ref\": \"SubscriptionSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the subscription, including its title and the channel that the user subscribed + to.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#subscription\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#subscription\\\".\"\n },\n \"contentDetails\": + {\n \"$ref\": \"SubscriptionContentDetails\",\n \"description\": + \"The contentDetails object contains basic statistics about the subscription.\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"A + *subscription* resource contains information about a YouTube user subscription. + A subscription notifies a user when new videos are added to a channel or when + another user takes one of several actions on YouTube, such as uploading a + video, rating a video, or commenting on a video.\"\n },\n \"CaptionListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"items\": + {\n \"items\": {\n \"$ref\": \"Caption\"\n },\n + \ \"type\": \"array\",\n \"description\": \"A list of captions + that match the request criteria.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#captionListResponse\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"CaptionListResponse\"\n },\n + \ \"ActivityContentDetailsPromotedItem\": {\n \"properties\": {\n \"clickTrackingUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL the + client should ping to indicate that the user clicked through on this promoted + item.\"\n },\n \"customCtaButtonText\": {\n \"type\": + \"string\",\n \"description\": \"The custom call-to-action button + text. If specified, it will override the default button text for the cta_type.\"\n + \ },\n \"impressionUrl\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": + \"The list of impression URLs. The client should ping all of these URLs to + indicate that the user was shown this promoted item.\"\n },\n \"adTag\": + {\n \"type\": \"string\",\n \"description\": \"The URL the + client should fetch to request a promoted item.\"\n },\n \"ctaType\": + {\n \"enum\": [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The type of call-to-action, a message to the user indicating action that + can be taken.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ]\n },\n \"descriptionText\": {\n \"description\": + \"The text description to accompany the promoted item.\",\n \"type\": + \"string\"\n },\n \"destinationUrl\": {\n \"type\": + \"string\",\n \"description\": \"The URL the client should direct + the user to, if the user chooses to visit the advertiser's website.\"\n },\n + \ \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the promoted video.\"\n },\n + \ \"forecastingUrl\": {\n \"description\": \"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.\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n + \ },\n \"creativeViewUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The URL the client should ping to indicate that + the user was shown this promoted item.\"\n }\n },\n \"id\": + \"ActivityContentDetailsPromotedItem\",\n \"description\": \"Details + about a resource which is being promoted.\",\n \"type\": \"object\"\n + \ },\n \"VideoFileDetailsAudioStream\": {\n \"description\": \"Information + about an audio stream.\",\n \"type\": \"object\",\n \"id\": \"VideoFileDetailsAudioStream\",\n + \ \"properties\": {\n \"codec\": {\n \"type\": \"string\",\n + \ \"description\": \"The audio codec that the stream uses.\"\n },\n + \ \"vendor\": {\n \"type\": \"string\",\n \"description\": + \"A value that uniquely identifies a video vendor. Typically, the value is + a four-letter vendor code.\"\n },\n \"channelCount\": {\n \"format\": + \"uint32\",\n \"description\": \"The number of audio channels that + the stream contains.\",\n \"type\": \"integer\"\n },\n \"bitrateBps\": + {\n \"format\": \"uint64\",\n \"description\": \"The audio + stream's bitrate, in bits per second.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"ChannelBannerResource\": {\n \"description\": + \"A channel banner returned as the response to a channel_banner.insert call.\",\n + \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#channelBannerResource\\\".\",\n \"default\": + \"youtube#channelBannerResource\"\n },\n \"url\": {\n \"description\": + \"The URL of this banner image.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"ChannelBannerResource\",\n \"type\": \"object\"\n },\n + \ \"VideoSuggestions\": {\n \"description\": \"Specifies suggestions + on how to improve video content, including encoding hints, tag suggestions, + and editor suggestions.\",\n \"properties\": {\n \"editorSuggestions\": + {\n \"description\": \"A list of video editing operations that might + improve the video quality or playback experience of the uploaded video.\",\n + \ \"items\": {\n \"enumDescriptions\": [\n \"Picture + brightness levels seem off and could be corrected.\",\n \"The + video appears shaky and could be stabilized.\",\n \"Margins (mattes) + detected around the picture could be cropped.\",\n \"The audio + track appears silent and could be swapped with a better quality one.\"\n ],\n + \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n + \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n + \ \"type\": \"string\"\n },\n \"type\": \"array\"\n + \ },\n \"processingHints\": {\n \"description\": \"A + list of suggestions that may improve YouTube's ability to process the video.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"enum\": + [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n + \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n + \ \"hdrVideo\"\n ],\n \"enumDescriptions\": + [\n \"The MP4 file is not streamable, this will slow down the + processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably + a better quality version of the video exists. The video has wide screen aspect + ratio, but is not an HD video.\",\n \"Uploaded video is spherical + video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded + video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n + \ \"type\": \"string\"\n }\n },\n \"processingWarnings\": + {\n \"items\": {\n \"type\": \"string\",\n \"enum\": + [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n + \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n + \ \"hasEditlist\",\n \"problematicVideoCodec\",\n + \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n + \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n + \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n + \ ],\n \"enumDescriptions\": [\n \"Unrecognized + file format, transcoding is likely to fail.\",\n \"Unrecognized + video codec, transcoding is likely to fail.\",\n \"Unrecognized + audio codec, transcoding is likely to fail.\",\n \"Conflicting + container and stream resolutions.\",\n \"Edit lists are not currently + supported.\",\n \"Video codec that is known to cause problems + was used.\",\n \"Audio codec that is known to cause problems + was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported + spherical video projection type.\",\n \"Unsupported HDR pixel + format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic + HDR lookup table attached.\"\n ]\n },\n \"type\": + \"array\",\n \"description\": \"A list of reasons why YouTube may + have difficulty transcoding the uploaded video or that might result in an + erroneous transcoding. These warnings are generated before YouTube actually + processes the uploaded video file. In addition, they identify issues that + are unlikely to cause the video processing to fail but that might cause problems + such as sync issues, video artifacts, or a missing audio track.\"\n },\n + \ \"tagSuggestions\": {\n \"description\": \"A list of keyword + tags that could be added to the video's metadata to increase the likelihood + that users will locate your video when searching or browsing on YouTube.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"VideoSuggestionsTagSuggestion\"\n }\n },\n \"processingErrors\": + {\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image + file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft + Windows Movie Maker project).\",\n \"Other non-video file.\",\n + \ \"Document or text file (e.g., MS Word document).\",\n \"An + archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial + audio layout type.\"\n ],\n \"enum\": [\n \"audioFile\",\n + \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n + \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n + \ ]\n },\n \"description\": \"A list of errors + that will prevent YouTube from successfully processing the uploaded video + video. These errors indicate that, regardless of the video's current processing + status, eventually, that status will almost certainly be failed.\",\n \"type\": + \"array\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"VideoSuggestions\"\n },\n \"PlaylistLocalization\": {\n \"properties\": + {\n \"description\": {\n \"description\": \"The localized + strings for playlist's description.\",\n \"type\": \"string\"\n },\n + \ \"title\": {\n \"description\": \"The localized strings for + playlist's title.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"PlaylistLocalization\",\n \"description\": + \"Playlist localization setting\"\n },\n \"I18nRegionSnippet\": {\n + \ \"type\": \"object\",\n \"properties\": {\n \"name\": {\n + \ \"description\": \"The human-readable name of the region.\",\n \"type\": + \"string\"\n },\n \"gl\": {\n \"description\": \"The + region code as a 2-letter ISO country code.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Basic details about an i18n + region, such as region code and human-readable name.\",\n \"id\": \"I18nRegionSnippet\"\n + \ },\n \"ChannelBrandingSettings\": {\n \"description\": \"Branding + properties of a YouTube channel.\",\n \"id\": \"ChannelBrandingSettings\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"watch\": {\n + \ \"description\": \"Branding properties for the watch page.\",\n + \ \"$ref\": \"WatchSettings\"\n },\n \"channel\": {\n + \ \"$ref\": \"ChannelSettings\",\n \"description\": \"Branding + properties for the channel view.\"\n },\n \"hints\": {\n \"items\": + {\n \"$ref\": \"PropertyValue\"\n },\n \"type\": + \"array\",\n \"description\": \"Additional experimental branding + properties.\"\n },\n \"image\": {\n \"description\": + \"Branding properties for branding images.\",\n \"$ref\": \"ImageSettings\"\n + \ }\n }\n },\n \"Member\": {\n \"description\": \"A + *member* resource represents a member for a YouTube channel. A member provides + recurring monetary support to a creator and receives special benefits.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#member\\\".\",\n \"default\": \"youtube#member\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n \"description\": + \"The snippet object contains basic details about the member.\"\n }\n + \ },\n \"id\": \"Member\"\n },\n \"MembershipsLevelListResponse\": + {\n \"properties\": {\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"MembershipsLevel\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of pricing levels offered by a creator to the fans.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"MembershipsLevelListResponse\"\n },\n \"VideoAgeGating\": + {\n \"properties\": {\n \"restricted\": {\n \"type\": + \"boolean\",\n \"description\": \"Age-restricted trailers. For redband + trailers and adult-rated video-games. Only users aged 18+ can view the content. + The the field is true the content is restricted to viewers aged 18+. Otherwise + The field won't be present.\"\n },\n \"videoGameRating\": {\n + \ \"description\": \"Video game rating, if any.\",\n \"enum\": + [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n + \ \"m17Plus\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"alcoholContent\": {\n \"description\": + \"Indicates whether or not the video has alcoholic beverage content. Only + users of legal purchasing age in a particular country, as identified by ICAP, + can view the content.\",\n \"type\": \"boolean\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"VideoAgeGating\"\n },\n \"ChannelListResponse\": + {\n \"id\": \"ChannelListResponse\",\n \"type\": \"object\",\n \"properties\": + {\n \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"Channel\"\n },\n \"type\": \"array\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n + \ \"default\": \"youtube#channelListResponse\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n }\n }\n },\n \"Activity\": {\n \"id\": + \"Activity\",\n \"description\": \"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.\",\n \"properties\": {\n + \ \"id\": {\n \"description\": \"The ID that YouTube uses to + uniquely identify the activity.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#activity\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#activity\\\".\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the activity, including the activity's type and group + ID.\",\n \"$ref\": \"ActivitySnippet\"\n },\n \"contentDetails\": + {\n \"$ref\": \"ActivityContentDetails\",\n \"description\": + \"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.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"TestItem\": {\n \"type\": \"object\",\n \"id\": \"TestItem\",\n + \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n + \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n + \ },\n \"id\": {\n \"type\": \"string\"\n },\n + \ \"gaia\": {\n \"format\": \"int64\",\n \"type\": + \"string\"\n }\n }\n },\n \"LiveStreamListResponse\": {\n + \ \"properties\": {\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"kind\": + {\n \"default\": \"youtube#liveStreamListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n },\n \"items\": {\n + \ \"type\": \"array\",\n \"description\": \"A list of live + streams that match the request criteria.\",\n \"items\": {\n \"$ref\": + \"LiveStream\"\n }\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"LiveStreamListResponse\",\n \"type\": \"object\"\n },\n + \ \"MembershipsDuration\": {\n \"id\": \"MembershipsDuration\",\n \"properties\": + {\n \"memberTotalDurationMonths\": {\n \"type\": \"integer\",\n + \ \"format\": \"int32\",\n \"description\": \"The cumulative + time the user has been a member across all levels in complete months (the + time is rounded down to the nearest integer).\"\n },\n \"memberSince\": + {\n \"description\": \"The date and time when the user became a continuous + member across all levels.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"LiveChatFanFundingEventDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"amountMicros\": + {\n \"description\": \"The amount of the fund.\",\n \"format\": + \"uint64\",\n \"type\": \"string\"\n },\n \"amountDisplayString\": + {\n \"type\": \"string\",\n \"description\": \"A rendered + string that displays the fund amount and currency to the user.\"\n },\n + \ \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the fund was made.\"\n },\n \"userComment\": + {\n \"description\": \"The comment added by the user to this fan + funding event.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"LiveChatFanFundingEventDetails\"\n },\n \"Entity\": {\n \"id\": + \"Entity\",\n \"type\": \"object\",\n \"properties\": {\n \"id\": + {\n \"type\": \"string\"\n },\n \"typeId\": {\n \"type\": + \"string\"\n },\n \"url\": {\n \"type\": \"string\"\n + \ }\n }\n },\n \"LiveStreamHealthStatus\": {\n \"id\": + \"LiveStreamHealthStatus\",\n \"properties\": {\n \"configurationIssues\": + {\n \"description\": \"The configurations issues on this stream\",\n + \ \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n + \ },\n \"type\": \"array\"\n },\n \"status\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The status code of this stream\",\n \"type\": \"string\",\n \"enum\": + [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n + \ \"revoked\"\n ]\n },\n \"lastUpdateTimeSeconds\": + {\n \"description\": \"The last time this status was updated (in + seconds)\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"VideoContentDetails\": + {\n \"id\": \"VideoContentDetails\",\n \"properties\": {\n \"duration\": + {\n \"type\": \"string\",\n \"description\": \"The length + of the video. The tag value is an ISO 8601 duration in the format PT#M#S, + in which the letters PT indicate that the value specifies a period of time, + and the letters M and S refer to length in minutes and seconds, respectively. + The # characters preceding the M and S letters are both integers that specify + the number of minutes (or seconds) of the video. For example, a value of PT15M51S + indicates that the video is 15 minutes and 51 seconds long.\"\n },\n + \ \"hasCustomThumbnail\": {\n \"description\": \"Indicates + whether the video uploader has provided a custom thumbnail image for the video. + This property is only visible to the video uploader.\",\n \"type\": + \"boolean\"\n },\n \"definition\": {\n \"description\": + \"The value of definition indicates whether the video is available in high + definition or only in standard definition.\",\n \"enumDescriptions\": + [\n \"sd\",\n \"hd\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"sd\",\n \"hd\"\n + \ ]\n },\n \"caption\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n + \ \"description\": \"The value of captions indicates whether the video + has captions or not.\",\n \"enum\": [\n \"true\",\n \"false\"\n + \ ]\n },\n \"licensedContent\": {\n \"type\": + \"boolean\",\n \"description\": \"The value of is_license_content + indicates whether the video is licensed content.\"\n },\n \"dimension\": + {\n \"type\": \"string\",\n \"description\": \"The value + of dimension indicates whether the video is available in 3D or in 2D.\"\n + \ },\n \"regionRestriction\": {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n + \ \"description\": \"The regionRestriction object contains information + about the countries where a video is (or is not) viewable. The object will + contain either the contentDetails.regionRestriction.allowed property or the + contentDetails.regionRestriction.blocked property.\"\n },\n \"contentRating\": + {\n \"description\": \"Specifies the ratings that the video received + under various rating schemes.\",\n \"$ref\": \"ContentRating\"\n + \ },\n \"countryRestriction\": {\n \"description\": + \"The countryRestriction object contains information about the countries where + a video is (or is not) viewable.\",\n \"$ref\": \"AccessPolicy\"\n + \ },\n \"projection\": {\n \"type\": \"string\",\n \"description\": + \"Specifies the projection format of the video.\",\n \"enum\": [\n + \ \"rectangular\",\n \"360\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ]\n }\n },\n + \ \"type\": \"object\",\n \"description\": \"Details about the content + of a YouTube Video.\"\n },\n \"AbuseType\": {\n \"properties\": + {\n \"id\": {\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"AbuseType\"\n },\n \"ActivityContentDetailsBulletin\": + {\n \"description\": \"Details about a channel bulletin post.\",\n \"properties\": + {\n \"resourceId\": {\n \"description\": \"The resourceId + object contains information that identifies the resource associated with a + bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": + \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsBulletin\",\n + \ \"type\": \"object\"\n },\n \"PlaylistListResponse\": {\n \"id\": + \"PlaylistListResponse\",\n \"type\": \"object\",\n \"properties\": + {\n \"items\": {\n \"description\": \"A list of playlists + that match the request criteria\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Playlist\"\n }\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#playlistListResponse\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"PlaylistItemStatus\": {\n \"id\": \"PlaylistItemStatus\",\n + \ \"type\": \"object\",\n \"description\": \"Information about the + playlist item's privacy status.\",\n \"properties\": {\n \"privacyStatus\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"type\": + \"string\",\n \"description\": \"This resource's privacy status.\"\n + \ }\n }\n },\n \"VideoPlayer\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoPlayer\",\n \"description\": \"Player to be used + for a video playback.\",\n \"properties\": {\n \"embedHeight\": + {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n + \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": + \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\"\n + \ },\n \"embedWidth\": {\n \"type\": \"string\",\n \"format\": + \"int64\",\n \"description\": \"The embed width\"\n }\n }\n + \ },\n \"PlaylistStatus\": {\n \"id\": \"PlaylistStatus\",\n \"type\": + \"object\",\n \"properties\": {\n \"privacyStatus\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"type\": \"string\",\n \"description\": + \"The playlist's privacy status.\"\n }\n }\n },\n \"ChannelLocalization\": + {\n \"description\": \"Channel localization setting\",\n \"id\": + \"ChannelLocalization\",\n \"type\": \"object\",\n \"properties\": + {\n \"title\": {\n \"description\": \"The localized strings + for channel's title.\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"description\": \"The localized strings for channel's description.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"ChannelSectionListResponse\": + {\n \"id\": \"ChannelSectionListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"ChannelSection\"\n + \ },\n \"description\": \"A list of ChannelSections that + match the request criteria.\",\n \"type\": \"array\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#liveBroadcast\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - contains info about the event's current stats. These include concurrent viewers - and total chat count. Statistics can change (in either direction) during the - lifetime of an event. Statistics are only returned while the event is live.\",\n - \ \"$ref\": \"LiveBroadcastStatistics\"\n },\n \"status\": - {\n \"$ref\": \"LiveBroadcastStatus\",\n \"description\": - \"The status object contains information about the event's status.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveBroadcastSnippet\",\n \"description\": - \"The snippet object contains basic details about the event, including its - title, description, start time, and end time.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"LiveBroadcastContentDetails\",\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\"\n },\n \"id\": {\n \"annotations\": {\n - \ \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the broadcast.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"currency\": - {\n \"description\": \"The currency in which the purchase was made.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n + Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#channelSectionListResponse\"\n + \ }\n }\n },\n \"LiveChatMessageListResponse\": {\n \"properties\": + {\n \"nextPageToken\": {\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n + \ \"default\": \"youtube#liveChatMessageListResponse\"\n },\n + \ \"pollingIntervalMillis\": {\n \"type\": \"integer\",\n \"description\": + \"The amount of time the client should wait before polling again.\",\n \"format\": + \"uint32\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"offlineAt\": {\n \"description\": \"The date and time when + the underlying stream went offline.\",\n \"format\": \"date-time\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"LiveChatMessage\"\n }\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n }\n },\n \"id\": \"LiveChatMessageListResponse\",\n + \ \"type\": \"object\"\n },\n \"I18nLanguageListResponse\": {\n + \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"items\": {\n \"items\": {\n + \ \"$ref\": \"I18nLanguage\"\n },\n \"type\": + \"array\",\n \"description\": \"A list of supported i18n languages. + In this map, the i18n language ID is the map key, and its value is the corresponding + i18nLanguage resource.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#i18nLanguageListResponse\"\n + \ }\n },\n \"id\": \"I18nLanguageListResponse\",\n \"type\": + \"object\"\n },\n \"LocalizedProperty\": {\n \"properties\": {\n + \ \"localized\": {\n \"items\": {\n \"$ref\": \"LocalizedString\"\n + \ },\n \"type\": \"array\"\n },\n \"default\": + {\n \"type\": \"string\"\n },\n \"defaultLanguage\": + {\n \"description\": \"The language of the default property.\",\n + \ \"$ref\": \"LanguageTag\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LocalizedProperty\"\n },\n \"ChannelToStoreLinkDetails\": + {\n \"description\": \"Information specific to a store on a merchandising + platform linked to a YouTube channel.\",\n \"id\": \"ChannelToStoreLinkDetails\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"storeUrl\": + {\n \"description\": \"Landing page of the store.\",\n \"type\": + \"string\"\n },\n \"storeName\": {\n \"type\": \"string\",\n + \ \"description\": \"Name of the store.\"\n },\n \"merchantId\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"Google Merchant Center id of the store.\"\n }\n }\n },\n + \ \"SubscriptionListResponse\": {\n \"properties\": {\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n + \ \"default\": \"youtube#subscriptionListResponse\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"Subscription\"\n + \ },\n \"type\": \"array\",\n \"description\": \"A + list of subscriptions that match the request criteria.\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": + \"SubscriptionListResponse\",\n \"type\": \"object\"\n },\n \"VideoSuggestionsTagSuggestion\": + {\n \"type\": \"object\",\n \"description\": \"A single tag suggestion + with it's relevance information.\",\n \"properties\": {\n \"categoryRestricts\": + {\n \"description\": \"A set of video categories for which the tag + is relevant. You can use this information to display appropriate tag suggestions + based on the video category that the video uploader associates with the video. + By default, tag suggestions are relevant for all categories if there are no + restricts defined for the keyword.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n },\n \"tag\": + {\n \"type\": \"string\",\n \"description\": \"The keyword + tag suggested for the video.\"\n }\n },\n \"id\": \"VideoSuggestionsTagSuggestion\"\n + \ },\n \"PlaylistItemSnippet\": {\n \"description\": \"Basic details + about a playlist, including title, description and thumbnails. Basic details + of a YouTube Playlist item provided by the author. Next ID: 15\",\n \"type\": + \"object\",\n \"properties\": {\n \"description\": {\n \"description\": + \"The item's description.\",\n \"type\": \"string\"\n },\n + \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The id object contains information that can be used to uniquely identify + the resource that is included in the playlist as the playlist item.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.playlistItems.insert\",\n + \ \"youtube.playlistItems.update\"\n ]\n }\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the user that added the item + to the playlist.\"\n },\n \"playlistId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist + item is in.\",\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.playlistItems.insert\",\n + \ \"youtube.playlistItems.update\"\n ]\n }\n + \ },\n \"videoOwnerChannelTitle\": {\n \"description\": + \"Channel title for the channel this video belongs to.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"description\": \"The + item's title.\",\n \"type\": \"string\"\n },\n \"position\": + {\n \"type\": \"integer\",\n \"description\": \"The order + in which the item appears in the playlist. The value uses a zero-based index, + so the first item has a position of 0, the second item has a position of 1, + and so forth.\",\n \"format\": \"uint32\"\n },\n \"videoOwnerChannelId\": + {\n \"type\": \"string\",\n \"description\": \"Channel id + for the channel this video belongs to.\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the item was added to + the playlist.\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the playlist item. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"channelTitle\": {\n \"type\": + \"string\",\n \"description\": \"Channel title for the channel that + the playlist item belongs to.\"\n }\n },\n \"id\": \"PlaylistItemSnippet\"\n + \ },\n \"LiveChatBanSnippet\": {\n \"type\": \"object\",\n \"id\": + \"LiveChatBanSnippet\",\n \"properties\": {\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"type\": + {\n \"type\": \"string\",\n \"description\": \"The type + of ban.\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n + \ \"permanent\",\n \"temporary\"\n ],\n \"enumDescriptions\": + [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n + \ \"A temporary ban.\"\n ]\n },\n \"liveChatId\": + {\n \"type\": \"string\",\n \"description\": \"The chat + this ban is pertinent to.\"\n },\n \"banDurationSeconds\": {\n + \ \"description\": \"The duration of a ban, only filled if the ban + has type TEMPORARY.\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n }\n }\n },\n \"VideoProjectDetails\": {\n \"id\": + \"VideoProjectDetails\",\n \"properties\": {},\n \"type\": \"object\",\n + \ \"description\": \"DEPRECATED. b/157517979: This part was never populated + after it was added. However, it sees non-zero traffic because there is generated + client code in the wild that refers to it [1]. We keep this field and do NOT + remove it because otherwise V3 would return an error when this part gets requested + [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n + \ },\n \"LiveChatTextMessageDetails\": {\n \"properties\": {\n \"messageText\": + {\n \"type\": \"string\",\n \"description\": \"The user's + message.\"\n }\n },\n \"id\": \"LiveChatTextMessageDetails\",\n + \ \"type\": \"object\"\n },\n \"VideoCategoryListResponse\": {\n + \ \"id\": \"VideoCategoryListResponse\",\n \"properties\": {\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"VideoCategory\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of video categories that can be associated with YouTube videos. In + this map, the video category ID is the map key, and its value is the corresponding + videoCategory resource.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"prevPageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n + \ \"type\": \"string\",\n \"default\": \"youtube#videoCategoryListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"ThirdPartyLinkListResponse\": + {\n \"id\": \"ThirdPartyLinkListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"type\": \"array\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n + \ \"default\": \"youtube#thirdPartyLinkListResponse\"\n }\n + \ }\n },\n \"MembershipsLevel\": {\n \"properties\": {\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"default\": \"youtube#membershipsLevel\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube assigns to uniquely identify the memberships level.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"MembershipsLevel\",\n + \ \"description\": \"A *membershipsLevel* resource represents an offer + made by YouTube creators for their fans. Users can become members of the channel + by joining one of the available levels. They will provide recurring monetary + support and receives special benefits.\"\n },\n \"AbuseReport\": {\n + \ \"type\": \"object\",\n \"id\": \"AbuseReport\",\n \"properties\": + {\n \"description\": {\n \"type\": \"string\"\n },\n + \ \"subject\": {\n \"$ref\": \"Entity\"\n },\n \"abuseTypes\": + {\n \"items\": {\n \"$ref\": \"AbuseType\"\n },\n + \ \"type\": \"array\"\n },\n \"relatedEntities\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"RelatedEntity\"\n }\n }\n }\n },\n \"CommentThread\": + {\n \"description\": \"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.\",\n \"properties\": + {\n \"snippet\": {\n \"$ref\": \"CommentThreadSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the comment thread and also the top level comment.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"description\": \"The + ID that YouTube uses to uniquely identify the comment thread.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#commentThread\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#commentThread\\\".\",\n \"type\": \"string\"\n + \ },\n \"replies\": {\n \"description\": \"The replies + object contains a limited number of replies (if any) to the top level comment + found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n }\n + \ },\n \"id\": \"CommentThread\",\n \"type\": \"object\"\n },\n + \ \"CaptionSnippet\": {\n \"description\": \"Basic details about a + caption track, such as its language and name.\",\n \"properties\": {\n + \ \"isDraft\": {\n \"type\": \"boolean\",\n \"description\": + \"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. @mutable youtube.captions.insert + youtube.captions.update\"\n },\n \"audioTrackType\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"unknown\",\n \"primary\",\n + \ \"commentary\",\n \"descriptive\"\n ],\n \"type\": + \"string\",\n \"description\": \"The type of audio track associated + with the caption track.\"\n },\n \"status\": {\n \"description\": + \"The caption track's status.\",\n \"type\": \"string\",\n \"enum\": + [\n \"serving\",\n \"syncing\",\n \"failed\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"lastUpdated\": {\n \"type\": + \"string\",\n \"description\": \"The date and time when the caption + track was last updated.\",\n \"format\": \"date-time\"\n },\n + \ \"trackKind\": {\n \"description\": \"The caption track's + type.\",\n \"enum\": [\n \"standard\",\n \"ASR\",\n + \ \"forced\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"isLarge\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Indicates whether the caption track uses large + text for the vision-impaired. The default value is false.\"\n },\n + \ \"isEasyReader\": {\n \"type\": \"boolean\",\n \"description\": + \"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.\"\n + \ },\n \"isAutoSynced\": {\n \"description\": \"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.\",\n + \ \"type\": \"boolean\"\n },\n \"name\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"description\": \"The name of the + caption track. The name is intended to be visible to the user as an option + during playback.\",\n \"type\": \"string\"\n },\n \"failureReason\": + {\n \"description\": \"The reason that YouTube failed to process + the caption track. This property is only present if the state property's value + is failed.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n + \ ]\n },\n \"language\": {\n \"description\": + \"The language of the caption track. The property value is a BCP-47 language + tag.\",\n \"type\": \"string\",\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n }\n + \ },\n \"isCC\": {\n \"type\": \"boolean\",\n \"description\": + \"Indicates whether the track contains closed captions for the deaf and hard + of hearing. The default value is false.\"\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the video associated with the caption track. + @mutable youtube.captions.insert\",\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n }\n + \ }\n },\n \"id\": \"CaptionSnippet\",\n \"type\": \"object\"\n + \ },\n \"SearchResultSnippet\": {\n \"description\": \"Basic details + about a search result, including title, description and thumbnails of the + item referenced by the search result.\",\n \"properties\": {\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A + map of thumbnail images associated with the search result. 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.\"\n },\n + \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": + \"The title of the channel that published the resource that the search result + identifies.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The value that YouTube uses to uniquely identify + the channel that published the resource that the search result identifies.\"\n + \ },\n \"title\": {\n \"description\": \"The title of + the search result.\",\n \"type\": \"string\"\n },\n \"publishedAt\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The creation date and time of the resource that + the search result identifies.\"\n },\n \"liveBroadcastContent\": + {\n \"enumDescriptions\": [\n \"\",\n \"The + live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n + \ \"The live broadcast has been completed.\"\n ],\n \"enum\": + [\n \"none\",\n \"upcoming\",\n \"live\",\n + \ \"completed\"\n ],\n \"description\": \"It indicates + if the resource (video or channel) has upcoming/active live broadcast content. + Or it's \\\"none\\\" if there is not any upcoming/active live broadcasts.\",\n + \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": + \"A description of the search result.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"SearchResultSnippet\",\n \"type\": + \"object\"\n },\n \"ActivityContentDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"subscription\": {\n \"description\": + \"The subscription object contains information about a channel that a user + subscribed to. This property is only present if the snippet.type is subscription.\",\n + \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"upload\": + {\n \"description\": \"The upload object contains information about + the uploaded video. This property is only present if the snippet.type is upload.\",\n + \ \"$ref\": \"ActivityContentDetailsUpload\"\n },\n \"social\": + {\n \"$ref\": \"ActivityContentDetailsSocial\",\n \"description\": + \"The social object contains details about a social network post. This property + is only present if the snippet.type is social.\"\n },\n \"playlistItem\": + {\n \"description\": \"The playlistItem object contains information + about a new playlist item. This property is only present if the snippet.type + is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n + \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n + \ \"description\": \"The comment object contains information about + a resource that received a comment. This property is only present if the snippet.type + is comment.\"\n },\n \"bulletin\": {\n \"description\": + \"The bulletin object contains details about a channel bulletin post. This + object is only present if the snippet.type is bulletin.\",\n \"$ref\": + \"ActivityContentDetailsBulletin\"\n },\n \"favorite\": {\n + \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsFavorite\"\n + \ },\n \"promotedItem\": {\n \"description\": \"The + promotedItem object contains details about a resource which is being promoted. + This property is only present if the snippet.type is promotedItem.\",\n \"$ref\": + \"ActivityContentDetailsPromotedItem\"\n },\n \"channelItem\": + {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n \"description\": + \"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.\"\n + \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n + \ \"description\": \"The recommendation object contains information + about a recommended resource. This property is only present if the snippet.type + is recommendation.\"\n },\n \"like\": {\n \"$ref\": + \"ActivityContentDetailsLike\",\n \"description\": \"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.\"\n }\n + \ },\n \"description\": \"Details about the content of an activity: + the video that was shared, the channel that was subscribed to, etc.\",\n \"id\": + \"ActivityContentDetails\"\n },\n \"ActivityContentDetailsSubscription\": + {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the resource that the user subscribed to.\"\n + \ }\n },\n \"description\": \"Information about a channel + that a user subscribed to.\",\n \"type\": \"object\",\n \"id\": + \"ActivityContentDetailsSubscription\"\n },\n \"InvideoTiming\": {\n + \ \"id\": \"InvideoTiming\",\n \"type\": \"object\",\n \"properties\": + {\n \"type\": {\n \"type\": \"string\",\n \"enum\": + [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n + \ \"description\": \"Describes a timing type. If the value is offsetFromStart, + then the offsetMs field represents an offset from the start of the video. + If the value is offsetFromEnd, then the offsetMs field represents an offset + from the end of the video.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ]\n },\n \"durationMs\": {\n \"type\": + \"string\",\n \"description\": \"Defines the duration in milliseconds + for which the promotion should be displayed. If missing, the client should + use the default.\",\n \"format\": \"uint64\"\n },\n \"offsetMs\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"Defines the time at which the promotion will appear. Depending on the value + of type the value of the offsetMs field will represent a time offset from + the start or from the end of the video, expressed in milliseconds.\"\n }\n + \ },\n \"description\": \"Describes a temporal position of a visual + widget inside a video.\"\n },\n \"ActivityContentDetailsUpload\": {\n + \ \"type\": \"object\",\n \"properties\": {\n \"videoId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the uploaded video.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"ActivityContentDetailsUpload\",\n \"description\": \"Information + about the uploaded video.\"\n },\n \"LiveChatMessage\": {\n \"type\": + \"object\",\n \"id\": \"LiveChatMessage\",\n \"properties\": {\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": + \"LiveChatMessageSnippet\",\n \"description\": \"The snippet object + contains basic details about the message.\"\n },\n \"authorDetails\": + {\n \"description\": \"The authorDetails object contains basic details + about the user that posted this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + assigns to uniquely identify the message.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n + \ \"default\": \"youtube#liveChatMessage\"\n }\n },\n + \ \"description\": \"A *liveChatMessage* resource represents a chat message + in a YouTube Live Chat.\"\n },\n \"PlaylistSnippet\": {\n \"id\": + \"PlaylistSnippet\",\n \"properties\": {\n \"thumbnailVideoId\": + {\n \"description\": \"Note: if the playlist has a custom thumbnail, + this field will not be populated. The video id selected by the user that will + be used as the thumbnail of this playlist. This field defaults to the first + publicly viewable video in the playlist, if: 1. The user has never selected + a video to be the thumbnail of the playlist. 2. The user selects a video to + be the thumbnail, and then removes that video from the playlist. 3. The user + selects a non-owned video to be the thumbnail, but that video becomes private, + or gets deleted.\",\n \"type\": \"string\"\n },\n \"tags\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"Keyword tags + associated with the playlist.\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The language + of the playlist's default title and description.\"\n },\n \"localized\": + {\n \"description\": \"Localized title and description, read-only.\",\n + \ \"$ref\": \"PlaylistLocalization\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A + map of thumbnail images associated with the playlist. 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.\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel that published the playlist.\"\n + \ },\n \"channelTitle\": {\n \"description\": \"The + channel title of the channel that the video belongs to.\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time that the playlist + was created.\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"description\": \"The playlist's description.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"description\": \"The + playlist's title.\",\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.playlists.insert\",\n + \ \"youtube.playlists.update\"\n ]\n }\n }\n + \ },\n \"description\": \"Basic details about a playlist, including + title, description and thumbnails.\",\n \"type\": \"object\"\n },\n + \ \"SuperChatEventListResponse\": {\n \"type\": \"object\",\n \"properties\": + {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n + \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"description\": \"A + list of Super Chat purchases that match the request criteria.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n + \ }\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ }\n },\n \"id\": \"SuperChatEventListResponse\"\n },\n + \ \"Channel\": {\n \"properties\": {\n \"localizations\": {\n + \ \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n + \ },\n \"description\": \"Localizations for different languages\",\n + \ \"type\": \"object\"\n },\n \"brandingSettings\": + {\n \"description\": \"The brandingSettings object encapsulates information + about the branding of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n + \ },\n \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n + \ \"description\": \"The contentDetails object encapsulates information + about the channel's content.\"\n },\n \"statistics\": {\n \"description\": + \"The statistics object encapsulates statistics for the channel.\",\n \"$ref\": + \"ChannelStatistics\"\n },\n \"conversionPings\": {\n \"description\": + \"The conversionPings object encapsulates information about conversion pings + that need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n + \ },\n \"status\": {\n \"description\": \"The status + object encapsulates information about the privacy status of the channel.\",\n + \ \"$ref\": \"ChannelStatus\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n + \ \"default\": \"youtube#channel\",\n \"type\": \"string\"\n + \ },\n \"topicDetails\": {\n \"description\": \"The + topicDetails object encapsulates information about Freebase topics associated + with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n + \ \"contentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails + object encapsulates channel data that is relevant for YouTube Partners linked + with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel.\"\n },\n \"snippet\": + {\n \"$ref\": \"ChannelSnippet\",\n \"description\": \"The + snippet object contains basic details about the channel, such as its title, + description, and thumbnail images.\"\n },\n \"auditDetails\": + {\n \"$ref\": \"ChannelAuditDetails\",\n \"description\": + \"The auditionDetails object encapsulates channel data that is relevant for + YouTube Partners during the audition process.\"\n }\n },\n \"id\": + \"Channel\",\n \"description\": \"A *channel* resource contains information + about a YouTube channel.\",\n \"type\": \"object\"\n },\n \"Caption\": + {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#caption\\\".\",\n \"default\": + \"youtube#caption\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"CaptionSnippet\",\n \"description\": \"The + snippet object contains basic details about the caption.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.update\"\n ]\n },\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the caption track.\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"A *caption* resource represents a YouTube caption track. A caption track + is associated with exactly one YouTube video.\",\n \"id\": \"Caption\"\n + \ },\n \"VideoStatus\": {\n \"properties\": {\n \"rejectionReason\": + {\n \"enum\": [\n \"copyright\",\n \"inappropriate\",\n + \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n + \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n + \ \"trademark\",\n \"legal\"\n ],\n \"type\": + \"string\",\n \"description\": \"This value explains why YouTube + rejected an uploaded video. This property is only present if the uploadStatus + property indicates that the upload was rejected.\",\n \"enumDescriptions\": + [\n \"Copyright infringement.\",\n \"Inappropriate video + content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms + of use violation.\",\n \"Uploader account was suspended.\",\n \"Video + duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader + closed his/her account.\",\n \"Trademark infringement.\",\n \"An + unspecified legal reason.\"\n ]\n },\n \"publishAt\": + {\n \"description\": \"The date and time when the video is scheduled + to publish. It can be set only if the privacy status of the video is private..\",\n + \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n + \ \"madeForKids\": {\n \"type\": \"boolean\"\n },\n + \ \"uploadStatus\": {\n \"enumDescriptions\": [\n \"Video + has been uploaded but not processed yet.\",\n \"Video has been + successfully processed.\",\n \"Processing has failed. See FailureReason.\",\n + \ \"Video has been rejected. See RejectionReason.\",\n \"Video + has been deleted.\"\n ],\n \"enum\": [\n \"uploaded\",\n + \ \"processed\",\n \"failed\",\n \"rejected\",\n + \ \"deleted\"\n ],\n \"type\": \"string\",\n \"description\": + \"The status of the uploaded video.\"\n },\n \"failureReason\": + {\n \"enumDescriptions\": [\n \"Unable to convert video + content.\",\n \"Invalid file format.\",\n \"Empty file.\",\n + \ \"File was too small.\",\n \"Unsupported codec.\",\n + \ \"Upload wasn't finished.\"\n ],\n \"type\": + \"string\",\n \"description\": \"This value explains why a video + failed to upload. This property is only present if the uploadStatus property + indicates that the upload failed.\",\n \"enum\": [\n \"conversion\",\n + \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n + \ \"codec\",\n \"uploadAborted\"\n ]\n },\n + \ \"privacyStatus\": {\n \"type\": \"string\",\n \"enum\": + [\n \"public\",\n \"unlisted\",\n \"private\"\n + \ ],\n \"description\": \"The video's privacy status.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"embeddable\": {\n \"description\": + \"This value indicates if the video can be embedded on another website. @mutable + youtube.videos.insert youtube.videos.update\",\n \"type\": \"boolean\"\n + \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"publicStatsViewable\": {\n \"description\": + \"This value indicates if the extended video statistics on the watch page + can be viewed by everyone. Note that the view count, likes, etc will still + be visible if this is disabled. @mutable youtube.videos.insert youtube.videos.update\",\n + \ \"type\": \"boolean\"\n },\n \"license\": {\n \"enum\": + [\n \"youtube\",\n \"creativeCommon\"\n ],\n + \ \"description\": \"The video's license. @mutable youtube.videos.insert + youtube.videos.update\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ]\n }\n },\n + \ \"description\": \"Basic details about a video category, such as its + localized title. Next Id: 18\",\n \"type\": \"object\",\n \"id\": + \"VideoStatus\"\n },\n \"MonitorStreamInfo\": {\n \"description\": + \"Settings and Info of the monitor stream\",\n \"type\": \"object\",\n + \ \"id\": \"MonitorStreamInfo\",\n \"properties\": {\n \"broadcastStreamDelayMs\": + {\n \"type\": \"integer\",\n \"description\": \"If you have + set the enableMonitorStream property to true, then this property determines + the length of the live broadcast delay.\",\n \"format\": \"uint32\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n }\n },\n \"enableMonitorStream\": {\n + \ \"description\": \"This value determines whether the monitor stream + is enabled for the broadcast. If the monitor stream is enabled, then YouTube + will broadcast the event content on a special stream intended only for the + broadcaster's consumption. The broadcaster can use the stream to review the + event content and also to identify the optimal times to insert cuepoints. + You need to set this value to true if you intend to have a broadcast delay + for your event. *Note:* This property cannot be updated once the broadcast + is in the testing or live state.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"type\": \"boolean\"\n },\n \"embedHtml\": {\n \"description\": + \"HTML code that embeds a player that plays the monitor stream.\",\n \"type\": + \"string\"\n }\n }\n },\n \"VideoListResponse\": {\n \"properties\": + {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"visitorId\": {\n + \ \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"Video\"\n },\n \"type\": \"array\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#videoListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#videoListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"VideoListResponse\"\n },\n \"InvideoBranding\": {\n + \ \"id\": \"InvideoBranding\",\n \"description\": \"LINT.IfChange + Describes an invideo branding.\",\n \"type\": \"object\",\n \"properties\": + {\n \"imageBytes\": {\n \"format\": \"byte\",\n \"description\": + \"The bytes the uploaded image. Only used in api to youtube communication.\",\n + \ \"type\": \"string\"\n },\n \"imageUrl\": {\n \"description\": + \"The url of the uploaded image. Only used in apiary to api communication.\",\n + \ \"type\": \"string\"\n },\n \"position\": {\n \"$ref\": + \"InvideoPosition\",\n \"description\": \"The spatial position within + the video where the branding watermark will be displayed.\"\n },\n + \ \"targetChannelId\": {\n \"type\": \"string\",\n \"description\": + \"The channel to which this branding links. If not present it defaults to + the current channel.\"\n },\n \"timing\": {\n \"$ref\": + \"InvideoTiming\",\n \"description\": \"The temporal position within + the video where watermark will be displayed.\"\n }\n }\n },\n + \ \"SuperChatEventSnippet\": {\n \"type\": \"object\",\n \"id\": + \"SuperChatEventSnippet\",\n \"properties\": {\n \"channelId\": + {\n \"description\": \"Channel id where the event occurred.\",\n + \ \"type\": \"string\"\n },\n \"supporterDetails\": + {\n \"description\": \"Details about the supporter.\",\n \"$ref\": + \"ChannelProfileDetails\"\n },\n \"messageType\": {\n \"type\": + \"integer\",\n \"description\": \"The tier for the paid message, + which is based on the amount of money spent to purchase the message.\",\n + \ \"format\": \"uint32\"\n },\n \"commentText\": {\n + \ \"type\": \"string\",\n \"description\": \"The text contents + of the comment left by the user.\"\n },\n \"isSuperStickerEvent\": + {\n \"type\": \"boolean\",\n \"description\": \"True if + this event is a Super Sticker event.\"\n },\n \"currency\": + {\n \"description\": \"The currency in which the purchase was made. + ISO 4217.\",\n \"type\": \"string\"\n },\n \"createdAt\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the event occurred.\",\n \"format\": \"date-time\"\n + \ },\n \"amountMicros\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The purchase + amount, in micros of the purchase currency. e.g., 1 is represented as 1000000.\"\n + \ },\n \"superStickerMetadata\": {\n \"$ref\": \"SuperStickerMetadata\",\n + \ \"description\": \"If this event is a Super Sticker event, this + field will contain metadata about the Super Sticker.\"\n },\n \"displayString\": + {\n \"type\": \"string\",\n \"description\": \"A rendered + string that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). + The string is rendered for the given language.\"\n }\n }\n },\n + \ \"VideoCategory\": {\n \"type\": \"object\",\n \"properties\": + {\n \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the video category, including its title.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#videoCategory\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the video category.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"VideoCategory\",\n \"description\": + \"A *videoCategory* resource identifies a category that has been or could + be associated with uploaded videos.\"\n },\n \"VideoAbuseReportReasonSnippet\": + {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"properties\": + {\n \"label\": {\n \"description\": \"The localized label + belonging to this abuse report reason.\",\n \"type\": \"string\"\n + \ },\n \"secondaryReasons\": {\n \"description\": \"The + secondary reasons associated with this reason, if any are available. (There + might be 0 or more.)\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n }\n + \ }\n },\n \"description\": \"Basic details about a video + category, such as its localized title.\",\n \"type\": \"object\"\n },\n + \ \"ChannelSettings\": {\n \"description\": \"Branding properties for + the channel view.\",\n \"type\": \"object\",\n \"id\": \"ChannelSettings\",\n + \ \"properties\": {\n \"defaultTab\": {\n \"description\": + \"Which content tab users should see when viewing the channel.\",\n \"type\": + \"string\"\n },\n \"keywords\": {\n \"description\": + \"Lists keywords associated with the channel, comma-separated.\",\n \"type\": + \"string\"\n },\n \"country\": {\n \"type\": \"string\",\n + \ \"description\": \"The country of the channel.\"\n },\n \"showBrowseView\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the tab to browse the videos should be displayed.\"\n },\n \"featuredChannelsUrls\": + {\n \"type\": \"array\",\n \"description\": \"The list of + featured channels.\",\n \"items\": {\n \"type\": \"string\"\n + \ }\n },\n \"defaultLanguage\": {\n \"type\": + \"string\"\n },\n \"featuredChannelsTitle\": {\n \"type\": + \"string\",\n \"description\": \"Title for the featured channels + tab.\"\n },\n \"showRelatedChannels\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether related channels should + be proposed.\"\n },\n \"trackingAnalyticsAccountId\": {\n \"type\": + \"string\",\n \"description\": \"The ID for a Google Analytics account + to track and measure traffic to the channels.\"\n },\n \"profileColor\": + {\n \"description\": \"A prominent color that can be rendered on + this channel page.\",\n \"type\": \"string\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"Specifies + the channel title.\"\n },\n \"moderateComments\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether user-submitted comments + left on the channel page need to be approved by the channel owner to be publicly + visible.\"\n },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"Specifies the channel description.\"\n },\n + \ \"unsubscribedTrailer\": {\n \"type\": \"string\",\n \"description\": + \"The trailer of the channel, for users that are not subscribers.\"\n }\n + \ }\n },\n \"ActivityContentDetailsFavorite\": {\n \"id\": + \"ActivityContentDetailsFavorite\",\n \"type\": \"object\",\n \"description\": + \"Information about a video that was marked as a favorite video.\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + that was marked as a favorite.\"\n }\n }\n },\n \"ChannelConversionPing\": + {\n \"description\": \"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.\",\n \"properties\": {\n \"context\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"Defines the context + of the ping.\",\n \"type\": \"string\",\n \"enum\": [\n + \ \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n + \ ]\n },\n \"conversionUrl\": {\n \"type\": + \"string\",\n \"description\": \"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.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ChannelConversionPing\"\n },\n \"VideoGetRatingResponse\": + {\n \"id\": \"VideoGetRatingResponse\",\n \"properties\": {\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": + \"youtube#videoGetRatingResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": + \"A list of ratings that match the request criteria.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoRating\"\n + \ }\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\"\n },\n \"Comment\": {\n \"type\": \"object\",\n \"description\": + \"A *comment* represents a single YouTube comment.\",\n \"properties\": + {\n \"snippet\": {\n \"description\": \"The snippet object + contains basic details about the comment.\",\n \"$ref\": \"CommentSnippet\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the comment.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n + \ \"default\": \"youtube#comment\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"Comment\"\n },\n \"LiveChatUserBannedMessageDetails\": + {\n \"properties\": {\n \"banType\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"permanent\",\n \"temporary\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"description\": \"The type of ban.\"\n },\n + \ \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n + \ \"description\": \"The details of the user that was banned.\"\n + \ },\n \"banDurationSeconds\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The duration + of the ban. This property is only present if the banType is temporary.\"\n + \ }\n },\n \"id\": \"LiveChatUserBannedMessageDetails\",\n + \ \"type\": \"object\"\n },\n \"ThirdPartyLinkSnippet\": {\n \"id\": + \"ThirdPartyLinkSnippet\",\n \"description\": \"Basic information about + a third party account link, including its type and type-specific information.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"type\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"A link + that is connecting (or about to connect) a channel with a store on a merchandising + platform in order to enable retail commerce capabilities for that channel + on YouTube.\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"description\": \"Type of the link named after the + entities that are being linked.\"\n },\n \"channelToStoreLink\": + {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n \"description\": + \"Information specific to a link between a channel and a store on a merchandising + platform.\"\n }\n }\n },\n \"MembershipsDetails\": {\n \"id\": + \"MembershipsDetails\",\n \"properties\": {\n \"highestAccessibleLevel\": + {\n \"description\": \"Id of the highest level that the user has + access to at the moment.\",\n \"type\": \"string\"\n },\n + \ \"highestAccessibleLevelDisplayName\": {\n \"description\": + \"Display name for the highest level that the user has access to at the moment.\",\n + \ \"type\": \"string\"\n },\n \"accessibleLevels\": + {\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"Ids of all levels that + the user has access to. This includes the currently active level and all other + levels that are included because of a higher purchase.\"\n },\n \"membershipsDurationAtLevels\": + {\n \"type\": \"array\",\n \"description\": \"Data about + memberships duration on particular pricing levels.\",\n \"items\": + {\n \"$ref\": \"MembershipsDurationAtLevel\"\n }\n },\n + \ \"membershipsDuration\": {\n \"description\": \"Data about + memberships duration without taking into consideration pricing levels.\",\n + \ \"$ref\": \"MembershipsDuration\"\n }\n },\n \"type\": + \"object\"\n },\n \"LiveStreamSnippet\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"description\": {\n \"description\": + \"The stream's description. The value cannot be longer than 10000 characters.\",\n + \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"The stream's title. The value must + be between 1 and 128 characters long.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n + \ ]\n }\n },\n \"publishedAt\": {\n \"type\": + \"string\",\n \"description\": \"The date and time that the stream + was created.\",\n \"format\": \"date-time\"\n },\n \"isDefaultStream\": + {\n \"type\": \"boolean\"\n },\n \"channelId\": {\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel that is transmitting the stream.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"LiveStreamSnippet\"\n },\n \"I18nRegion\": + {\n \"type\": \"object\",\n \"id\": \"I18nRegion\",\n \"description\": + \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n + \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#i18nRegion\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the i18n region.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": + \"The snippet object contains basic details about the i18n region, such as + region code and human-readable name.\"\n },\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n }\n },\n \"LiveChatSuperChatDetails\": + {\n \"properties\": {\n \"currency\": {\n \"description\": + \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n + \ },\n \"amountMicros\": {\n \"format\": \"uint64\",\n \ \"description\": \"The amount purchased by the user, in micros (1,750,000 - micros = 1.75).\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n },\n \"tier\": + micros = 1.75).\",\n \"type\": \"string\"\n },\n \"tier\": + {\n \"type\": \"integer\",\n \"description\": \"The tier + in which the amount belongs. Lower amounts belong to lower tiers. The lowest + tier is 1.\",\n \"format\": \"uint32\"\n },\n \"amountDisplayString\": + {\n \"type\": \"string\",\n \"description\": \"A rendered + string that displays the fund amount and currency to the user.\"\n },\n + \ \"userComment\": {\n \"type\": \"string\",\n \"description\": + \"The comment added by the user to this Super Chat event.\"\n }\n },\n + \ \"id\": \"LiveChatSuperChatDetails\",\n \"type\": \"object\"\n + \ },\n \"VideoLiveStreamingDetails\": {\n \"id\": \"VideoLiveStreamingDetails\",\n + \ \"description\": \"Details about the live streaming metadata.\",\n \"properties\": + {\n \"actualEndTime\": {\n \"type\": \"string\",\n \"description\": + \"The time that the broadcast actually ended. This value will not be available + until the broadcast is over.\",\n \"format\": \"date-time\"\n },\n + \ \"actualStartTime\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The time that the broadcast actually + started. This value will not be available until the broadcast begins.\"\n + \ },\n \"activeLiveChatId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the currently active live chat attached + to this video. This field is filled only if the video is a currently live + broadcast that has live chat. Once the broadcast transitions to complete this + field will be removed and the live chat closed down. For persistent broadcasts + that live chat id will no longer be tied to this video but rather to the new + video being displayed at the persistent page.\"\n },\n \"concurrentViewers\": + {\n \"description\": \"The number of viewers currently watching the + broadcast. The property and its value will be present if the broadcast has + current viewers and the broadcast owner has not hidden the viewcount for the + video. Note that YouTube stops tracking the number of concurrent viewers for + a broadcast when the broadcast ends. So, this property would not identify + the number of viewers watching an archived video of a live broadcast that + already ended.\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n },\n \"scheduledStartTime\": {\n \"description\": + \"The time that the broadcast is scheduled to begin.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"scheduledEndTime\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The time that the broadcast is scheduled to end. + If the value is empty or the property is not present, then the broadcast is + scheduled to contiue indefinitely.\"\n }\n },\n \"type\": + \"object\"\n },\n \"LiveChatBan\": {\n \"properties\": {\n \"kind\": + {\n \"default\": \"youtube#liveChatBan\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube assigns to uniquely identify the ban.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n + \ \"description\": \"The `snippet` object contains basic details about + the ban.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n }\n },\n + \ \"description\": \"A `__liveChatBan__` resource represents a ban for + a YouTube live chat.\",\n \"id\": \"LiveChatBan\",\n \"type\": \"object\"\n + \ },\n \"SubscriptionSnippet\": {\n \"type\": \"object\",\n \"id\": + \"SubscriptionSnippet\",\n \"description\": \"Basic details about a subscription, + including title, description and thumbnails of the subscribed item.\",\n \"properties\": + {\n \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The date and time that the subscription + was created.\"\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The subscription's title.\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the subscriber's channel.\"\n },\n + \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"annotations\": + {\n \"required\": [\n \"youtube.subscriptions.insert\"\n + \ ]\n },\n \"description\": \"The id object contains + information about the channel that the user subscribed to.\"\n },\n + \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": + \"Channel title for the channel that the subscription belongs to.\"\n },\n + \ \"thumbnails\": {\n \"description\": \"A map of thumbnail + images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"description\": {\n \"description\": \"The subscription's + details.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"ActivityContentDetailsLike\": {\n \"id\": \"ActivityContentDetailsLike\",\n + \ \"type\": \"object\",\n \"description\": \"Information about a + resource that received a positive (like) rating.\",\n \"properties\": + {\n \"resourceId\": {\n \"description\": \"The resourceId + object contains information that identifies the rated resource.\",\n \"$ref\": + \"ResourceId\"\n }\n }\n },\n \"CommentSnippet\": {\n \"description\": + \"Basic details about a comment, such as its author and text.\",\n \"properties\": + {\n \"updatedAt\": {\n \"type\": \"string\",\n \"format\": + \"date-time\",\n \"description\": \"The date and time when the comment + was last updated.\"\n },\n \"moderationStatus\": {\n \"type\": + \"string\",\n \"description\": \"The comment's moderation status. + Will not be set if the comments were requested through the id filter.\",\n + \ \"enumDescriptions\": [\n \"The comment is available + for public display.\",\n \"The comment is awaiting review by a + moderator.\",\n \"\",\n \"The comment is unfit for display.\"\n + \ ],\n \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ]\n },\n + \ \"authorChannelId\": {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n + \ },\n \"canRate\": {\n \"description\": \"Whether the + current viewer can rate this comment.\",\n \"type\": \"boolean\"\n + \ },\n \"likeCount\": {\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"description\": \"The total number + of likes this comment has received.\"\n },\n \"authorDisplayName\": + {\n \"description\": \"The name of the user who posted the comment.\",\n + \ \"type\": \"string\"\n },\n \"videoId\": {\n \"description\": + \"The ID of the video the comment refers to, if any.\",\n \"type\": + \"string\"\n },\n \"textOriginal\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n + \ },\n \"textDisplay\": {\n \"description\": \"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.\",\n \"type\": + \"string\"\n },\n \"parentId\": {\n \"type\": \"string\",\n + \ \"description\": \"The unique id of the parent comment, only set + for replies.\"\n },\n \"channelId\": {\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n \"viewerRating\": + {\n \"description\": \"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.\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n \"type\": + \"string\"\n },\n \"authorChannelUrl\": {\n \"description\": + \"Link to the author's YouTube channel, if any.\",\n \"type\": \"string\"\n + \ },\n \"authorProfileImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The URL for the avatar of the user who posted + the comment.\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time when the comment was originally published.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"CommentSnippet\"\n + \ },\n \"PlaylistPlayer\": {\n \"id\": \"PlaylistPlayer\",\n \"properties\": + {\n \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e + tag that embeds a player that will play the playlist.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReport\": + {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReport\",\n \"properties\": + {\n \"language\": {\n \"description\": \"The language that + the content was viewed in.\",\n \"type\": \"string\"\n },\n + \ \"secondaryReasonId\": {\n \"type\": \"string\",\n \"description\": + \"The specific, or secondary, reason that this content is abusive (if available). + The value is an abuse report reason ID that is a valid secondary reason for + the primary reason.\"\n },\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the video.\"\n },\n \"reasonId\": {\n \"type\": + \"string\",\n \"description\": \"The high-level, or primary, reason + that the content is abusive. The value is an abuse report reason ID.\"\n },\n + \ \"comments\": {\n \"type\": \"string\",\n \"description\": + \"Additional comments regarding the abuse report.\"\n }\n }\n + \ },\n \"ChannelSectionSnippet\": {\n \"id\": \"ChannelSectionSnippet\",\n + \ \"description\": \"Basic details about a channel section, including + title, style and position.\",\n \"type\": \"object\",\n \"properties\": + {\n \"defaultLanguage\": {\n \"description\": \"The language + of the channel section's default title and description.\",\n \"type\": + \"string\"\n },\n \"localized\": {\n \"$ref\": \"ChannelSectionLocalization\",\n + \ \"description\": \"Localized title, read-only.\"\n },\n \"title\": + {\n \"description\": \"The channel section's title for multiple_playlists + and multiple_channels.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the channel that published the channel section.\",\n \"type\": \"string\"\n + \ },\n \"type\": {\n \"type\": \"string\",\n \"description\": + \"The type of the channel section.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"channelsectionTypeUndefined\",\n + \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n + \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n + \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n + \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n + \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n + \ \"subscriptions\"\n ]\n },\n \"style\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The style of the channel section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n + \ \"horizontalRow\",\n \"verticalList\"\n ]\n + \ },\n \"position\": {\n \"type\": \"integer\",\n \"description\": + \"The position of the channel section in the channel.\",\n \"format\": + \"uint32\"\n }\n }\n },\n \"VideoAbuseReportReason\": {\n + \ \"properties\": {\n \"id\": {\n \"description\": \"The + ID of this abuse report reason.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": + \"youtube#videoAbuseReportReason\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": + \"The `snippet` object contains basic details about the abuse report reason.\",\n + \ \"$ref\": \"VideoAbuseReportReasonSnippet\"\n }\n },\n + \ \"type\": \"object\",\n \"description\": \"A `__videoAbuseReportReason__` + resource identifies a reason that a video could be reported as abusive. Video + abuse report reasons are used with `video.ReportAbuse`.\",\n \"id\": + \"VideoAbuseReportReason\"\n },\n \"LiveChatMessageSnippet\": {\n \"id\": + \"LiveChatMessageSnippet\",\n \"properties\": {\n \"liveChatId\": + {\n \"type\": \"string\"\n },\n \"publishedAt\": {\n + \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time when the message was orignally published.\"\n },\n + \ \"authorChannelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the user that authored this message, this field is not always + filled. textMessageEvent - the user that wrote the message fanFundingEvent + - the user that funded the broadcast newSponsorEvent - the user that just + became a sponsor memberMilestoneChatEvent - the member that sent the message + membershipGiftingEvent - the user that made the purchase giftMembershipReceivedEvent + - the user that received the gift membership messageDeletedEvent - the moderator + that took the action messageRetractedEvent - the author that retracted their + message userBannedEvent - the moderator that took the action superChatEvent + - the user that made the purchase superStickerEvent - the user that made the + purchase\"\n },\n \"displayMessage\": {\n \"type\": + \"string\",\n \"description\": \"Contains a string that can be displayed + to the user. If this field is not present the message is silent, at the moment + only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\"\n },\n + \ \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n + \ \"description\": \"Details about the Super Chat event, this is only + set if the type is 'superChatEvent'.\"\n },\n \"hasDisplayContent\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the message has display content that should be displayed to users.\"\n },\n + \ \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n + \ },\n \"newSponsorDetails\": {\n \"description\": \"Details + about the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. + Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n + \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"membershipGiftingDetails\": + {\n \"description\": \"Details about the Membership Gifting event, + this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": + \"LiveChatMembershipGiftingDetails\"\n },\n \"userBannedDetails\": + {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n + \ \"superStickerDetails\": {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n + \ \"description\": \"Details about the Super Sticker event, this is + only set if the type is 'superStickerEvent'.\"\n },\n \"type\": + {\n \"type\": \"string\",\n \"enum\": [\n \"invalidType\",\n + \ \"textMessageEvent\",\n \"tombstone\",\n \"fanFundingEvent\",\n + \ \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n + \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n + \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n + \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n + \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n + \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The type of message, this will always be present, it determines the contents + of the message as well as which fields will be present.\"\n },\n \"messageRetractedDetails\": + {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"giftMembershipReceivedDetails\": + {\n \"description\": \"Details about the Gift Membership Received + event, this is only set if the type is 'giftMembershipReceivedEvent'.\",\n + \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n + \ \"memberMilestoneChatDetails\": {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n + \ \"description\": \"Details about the Member Milestone Chat event, + this is only set if the type is 'memberMilestoneChatEvent'.\"\n },\n + \ \"textMessageDetails\": {\n \"description\": \"Details about + the text message, this is only set if the type is 'textMessageEvent'.\",\n + \ \"$ref\": \"LiveChatTextMessageDetails\"\n },\n \"fanFundingEventDetails\": + {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n \"description\": + \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Next + ID: 33\"\n },\n \"SubscriptionSubscriberSnippet\": {\n \"properties\": + {\n \"title\": {\n \"description\": \"The title of the subscriber.\",\n + \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"description\": + \"Thumbnails for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The description of the subscriber.\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The channel ID of the subscriber.\"\n }\n },\n \"id\": + \"SubscriptionSubscriberSnippet\",\n \"description\": \"Basic details + about a subscription's subscriber including title, description, channel ID + and thumbnails.\",\n \"type\": \"object\"\n },\n \"CommentThreadReplies\": + {\n \"properties\": {\n \"comments\": {\n \"description\": + \"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.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Comment\"\n }\n }\n },\n \"description\": + \"Comments written in (direct or indirect) reply to the top level comment.\",\n + \ \"id\": \"CommentThreadReplies\",\n \"type\": \"object\"\n },\n + \ \"Cuepoint\": {\n \"description\": \"Note that there may be a 5-second + end-point resolution issue. For instance, if a cuepoint comes in for 22:03:27, + we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. This is an + artifact of HLS.\",\n \"properties\": {\n \"cueType\": {\n \"enum\": + [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"durationSecs\": {\n + \ \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The duration of this cuepoint.\"\n },\n \"insertionOffsetTimeMs\": + {\n \"description\": \"The time when the cuepoint should be inserted + by offset to the broadcast actual start time.\",\n \"type\": \"string\",\n + \ \"format\": \"int64\"\n },\n \"walltimeMs\": {\n \"description\": + \"The wall clock time at which the cuepoint should be inserted. Only one of + insertion_offset_time_ms and walltime_ms may be set at a time.\",\n \"type\": + \"string\",\n \"format\": \"uint64\"\n },\n \"etag\": + {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The identifier for cuepoint resource.\"\n + \ }\n },\n \"id\": \"Cuepoint\",\n \"type\": \"object\"\n + \ },\n \"VideoStatistics\": {\n \"properties\": {\n \"likeCount\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of users who have indicated that they liked the video by giving + it a positive rating.\"\n },\n \"commentCount\": {\n \"description\": + \"The number of comments for the video.\",\n \"format\": \"uint64\",\n + \ \"type\": \"string\"\n },\n \"viewCount\": {\n \"description\": + \"The number of times the video has been viewed.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n },\n \"dislikeCount\": {\n + \ \"type\": \"string\",\n \"description\": \"The number of + users who have indicated that they disliked the video by giving it a negative + rating.\",\n \"format\": \"uint64\"\n },\n \"favoriteCount\": + {\n \"description\": \"The number of users who currently have the + video marked as a favorite video.\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"VideoStatistics\",\n \"description\": \"Statistics about the video, + such as the number of times the video was viewed or liked.\"\n },\n \"VideoFileDetailsVideoStream\": + {\n \"id\": \"VideoFileDetailsVideoStream\",\n \"properties\": {\n + \ \"codec\": {\n \"type\": \"string\",\n \"description\": + \"The video codec that the stream uses.\"\n },\n \"heightPixels\": {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this Super Chat event.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatSuperChatDetails\"\n - \ },\n \"VideoListResponse\": {\n \"type\": \"object\",\n \"id\": - \"VideoListResponse\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": + \"The encoded video content's height in pixels.\"\n },\n \"aspectRatio\": + {\n \"description\": \"The video content's display aspect ratio, + which specifies the aspect ratio in which the video should be displayed.\",\n + \ \"type\": \"number\",\n \"format\": \"double\"\n },\n + \ \"bitrateBps\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"The video stream's bitrate, in bits + per second.\"\n },\n \"vendor\": {\n \"description\": + \"A value that uniquely identifies a video vendor. Typically, the value is + a four-letter vendor code.\",\n \"type\": \"string\"\n },\n + \ \"widthPixels\": {\n \"description\": \"The encoded video + content's width in pixels. You can calculate the video's encoding aspect ratio + as width_pixels / height_pixels.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n },\n \"frameRateFps\": {\n \"format\": + \"double\",\n \"type\": \"number\",\n \"description\": \"The + video stream's frame rate, in frames per second.\"\n },\n \"rotation\": + {\n \"description\": \"The amount that YouTube needs to rotate the + original source content to properly display the video.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"none\",\n \"clockwise\",\n \"upsideDown\",\n + \ \"counterClockwise\",\n \"other\"\n ]\n }\n + \ },\n \"description\": \"Information about a video stream.\",\n + \ \"type\": \"object\"\n },\n \"LiveChatSuperStickerDetails\": {\n + \ \"id\": \"LiveChatSuperStickerDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"amountDisplayString\": {\n \"description\": + \"A rendered string that displays the fund amount and currency to the user.\",\n + \ \"type\": \"string\"\n },\n \"amountMicros\": {\n + \ \"type\": \"string\",\n \"description\": \"The amount purchased + by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": + \"uint64\"\n },\n \"superStickerMetadata\": {\n \"description\": + \"Information about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n + \ },\n \"tier\": {\n \"description\": \"The tier in + which the amount belongs. Lower amounts belong to lower tiers. The lowest + tier is 1.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n + \ },\n \"currency\": {\n \"description\": \"The currency + in which the purchase was made.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"ChannelContentDetails\": {\n \"id\": \"ChannelContentDetails\",\n + \ \"properties\": {\n \"relatedPlaylists\": {\n \"type\": + \"object\",\n \"properties\": {\n \"uploads\": {\n \"description\": + \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use + the videos.insert method to upload new videos and the videos.delete method + to delete previously uploaded videos.\",\n \"type\": \"string\"\n + \ },\n \"likes\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the playlist that contains the + channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\"\n },\n \"watchHistory\": + {\n \"type\": \"string\",\n \"description\": \"The + ID of the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert + and playlistItems.delete to add or remove items from that list.\"\n },\n + \ \"favorites\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the playlist that contains the channel\\\"s favorite videos. Use + the playlistItems.insert and playlistItems.delete to add or remove items from + that list.\"\n },\n \"watchLater\": {\n \"description\": + \"The ID of the playlist that contains the channel\\\"s watch later playlist. + Use the playlistItems.insert and playlistItems.delete to add or remove items + from that list.\",\n \"type\": \"string\"\n }\n }\n + \ }\n },\n \"description\": \"Details about the content of + a channel.\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsChannelItem\": + {\n \"type\": \"object\",\n \"description\": \"Details about a resource + which was added to a channel.\",\n \"id\": \"ActivityContentDetailsChannelItem\",\n + \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the resource that was added to the channel.\"\n }\n }\n + \ },\n \"VideoTopicDetails\": {\n \"id\": \"VideoTopicDetails\",\n + \ \"properties\": {\n \"topicIds\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": + \"A list of Freebase topic IDs that are centrally associated with the video. + These are topics that are centrally featured in the video, and it can be said + that the video is mainly about each of these. You can retrieve information + about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase + Topic API.\"\n },\n \"relevantTopicIds\": {\n \"description\": + \"Similar to topic_id, except that these topics are merely relevant to the + video. These are topics that may be mentioned in, or appear in the video. + You can retrieve information about each topic using Freebase Topic API.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"topicCategories\": {\n \"description\": + \"A list of Wikipedia URLs that provide a high-level description of the video's + content.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n }\n }\n },\n \"description\": \"Freebase + topic information related to the video.\",\n \"type\": \"object\"\n },\n + \ \"LiveChatModeratorSnippet\": {\n \"type\": \"object\",\n \"properties\": + {\n \"moderatorDetails\": {\n \"description\": \"Details about + the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n + \ \"liveChatId\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the live chat this moderator can act on.\"\n }\n },\n + \ \"id\": \"LiveChatModeratorSnippet\"\n },\n \"Video\": {\n \"properties\": + {\n \"suggestions\": {\n \"description\": \"The suggestions + object encapsulates suggestions that identify opportunities to improve the + video quality or the metadata for the uploaded video. This data can only be + retrieved by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n + \ },\n \"localizations\": {\n \"additionalProperties\": + {\n \"$ref\": \"VideoLocalization\"\n },\n \"description\": + \"The localizations object contains localized versions of the basic details + about the video, such as its title and description.\",\n \"type\": + \"object\"\n },\n \"fileDetails\": {\n \"description\": + \"The fileDetails object encapsulates information about the video file that + was uploaded to YouTube, including the file's resolution, duration, audio + and video codecs, stream bitrates, and more. This data can only be retrieved + by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n },\n + \ \"monetizationDetails\": {\n \"$ref\": \"VideoMonetizationDetails\",\n + \ \"description\": \"The monetizationDetails object encapsulates information + about the monetization status of the video.\"\n },\n \"processingDetails\": + {\n \"description\": \"The processingDetails object encapsulates + information about YouTube's progress in processing the uploaded video file. + The properties in the object identify the current processing status and an + estimate of the time remaining until YouTube finishes processing the video. + This part also indicates whether different types of data or content, such + as file details or thumbnail images, are available for the video. The processingProgress + object is designed to be polled so that the video uploaded can track the progress + that YouTube has made in processing the uploaded video file. This data can + only be retrieved by the video owner.\",\n \"$ref\": \"VideoProcessingDetails\"\n + \ },\n \"ageGating\": {\n \"description\": \"Age restriction + details related to a video. This data can only be retrieved by the video owner.\",\n + \ \"$ref\": \"VideoAgeGating\"\n },\n \"topicDetails\": + {\n \"description\": \"The topicDetails object encapsulates information + about Freebase topics associated with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the video, such as its title, description, + and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n \"statistics\": + {\n \"description\": \"The statistics object contains statistics + about the video.\",\n \"$ref\": \"VideoStatistics\"\n },\n + \ \"projectDetails\": {\n \"description\": \"The projectDetails + object contains information about the project specific video metadata. b/157517979: + This part was never populated after it was added. However, it sees non-zero + traffic because there is generated client code in the wild that refers to + it [1]. We keep this field and do NOT remove it because otherwise V3 would + return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"$ref\": \"VideoProjectDetails\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"id\": {\n \"annotations\": {\n + \ \"required\": [\n \"youtube.videos.update\"\n ]\n + \ },\n \"description\": \"The ID that YouTube uses to uniquely + identify the video.\",\n \"type\": \"string\"\n },\n \"player\": + {\n \"description\": \"The player object contains information that + you would use to play the video in an embedded player.\",\n \"$ref\": + \"VideoPlayer\"\n },\n \"contentDetails\": {\n \"$ref\": + \"VideoContentDetails\",\n \"description\": \"The contentDetails + object contains information about the video content, including the length + of the video and its aspect ratio.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n + \ \"default\": \"youtube#video\",\n \"type\": \"string\"\n + \ },\n \"liveStreamingDetails\": {\n \"$ref\": \"VideoLiveStreamingDetails\",\n + \ \"description\": \"The liveStreamingDetails object contains metadata + about a live video broadcast. The object will only be present in a video resource + if the video is an upcoming, live, or completed live broadcast.\"\n },\n + \ \"status\": {\n \"$ref\": \"VideoStatus\",\n \"description\": + \"The status object contains information about the video's uploading, processing, + and privacy statuses.\"\n },\n \"recordingDetails\": {\n \"$ref\": + \"VideoRecordingDetails\",\n \"description\": \"The recordingDetails + object encapsulates information about the location, date and address where + the video was recorded.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"Video\",\n \"description\": \"A *video* resource represents + a YouTube video.\"\n },\n \"ActivityListResponse\": {\n \"properties\": + {\n \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"Activity\"\n }\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n + \ \"default\": \"youtube#activityListResponse\",\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"ActivityListResponse\"\n + \ },\n \"ChannelStatistics\": {\n \"properties\": {\n \"hiddenSubscriberCount\": + {\n \"description\": \"Whether or not the number of subscribers is + shown for this user.\",\n \"type\": \"boolean\"\n },\n \"commentCount\": + {\n \"description\": \"The number of comments for the channel.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n + \ \"videoCount\": {\n \"description\": \"The number of videos + uploaded to the channel.\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n },\n \"viewCount\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The number + of times the channel has been viewed.\"\n },\n \"subscriberCount\": + {\n \"type\": \"string\",\n \"description\": \"The number + of subscribers that the channel has.\",\n \"format\": \"uint64\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelStatistics\",\n + \ \"description\": \"Statistics about a channel: number of subscribers, + number of videos in the channel, etc.\"\n },\n \"LiveChatMessageDeletedDetails\": + {\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": + \"string\"\n }\n }\n },\n \"LocalizedString\": {\n \"id\": + \"LocalizedString\",\n \"properties\": {\n \"language\": {\n \"type\": + \"string\"\n },\n \"value\": {\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatModerator\": + {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n + \ \"type\": \"string\",\n \"description\": \"The ID that + YouTube assigns to uniquely identify the moderator.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatModeratorSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the moderator.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModerator\"\n + \ }\n },\n \"description\": \"A *liveChatModerator* resource + represents a moderator for a YouTube live chat. A chat moderator has the ability + to ban/unban users from a chat, remove message, etc.\",\n \"id\": \"LiveChatModerator\"\n + \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"memberMonth\": {\n \"format\": + \"uint32\",\n \"description\": \"The total amount of months (rounded + up) the viewer has been a member that granted them this Member Milestone Chat. + This is the same number of months as is being displayed to YouTube users.\",\n + \ \"type\": \"integer\"\n },\n \"userComment\": {\n + \ \"type\": \"string\",\n \"description\": \"The comment + added by the member to this Member Milestone Chat. This field is empty for + messages without a comment from the member.\"\n },\n \"memberLevelName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the Level at which the viever is a member. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\"\n }\n },\n \"id\": \"LiveChatMemberMilestoneChatDetails\"\n + \ },\n \"ChannelContentOwnerDetails\": {\n \"description\": \"The + contentOwnerDetails object encapsulates channel data that is relevant for + YouTube Partners linked with the channel.\",\n \"type\": \"object\",\n + \ \"id\": \"ChannelContentOwnerDetails\",\n \"properties\": {\n \"timeLinked\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the channel was linked + to the content owner.\"\n },\n \"contentOwner\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the content owner linked + to the channel.\"\n }\n }\n },\n \"LiveChatMessageAuthorDetails\": + {\n \"properties\": {\n \"profileImageUrl\": {\n \"description\": + \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n + \ \"channelId\": {\n \"description\": \"The YouTube channel + ID.\",\n \"type\": \"string\"\n },\n \"channelUrl\": + {\n \"type\": \"string\",\n \"description\": \"The channel's + URL.\"\n },\n \"isVerified\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether the author's identity has been verified + by YouTube.\"\n },\n \"isChatOwner\": {\n \"description\": + \"Whether the author is the owner of the live chat.\",\n \"type\": + \"boolean\"\n },\n \"isChatModerator\": {\n \"description\": + \"Whether the author is a moderator of the live chat.\",\n \"type\": + \"boolean\"\n },\n \"isChatSponsor\": {\n \"description\": + \"Whether the author is a sponsor of the live chat.\",\n \"type\": + \"boolean\"\n },\n \"displayName\": {\n \"type\": \"string\",\n + \ \"description\": \"The channel's display name.\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"LiveChatMessageAuthorDetails\"\n + \ },\n \"VideoSnippet\": {\n \"properties\": {\n \"publishedAt\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time when the video was uploaded.\"\n + \ },\n \"defaultAudioLanguage\": {\n \"description\": + \"The default_audio_language property specifies the language spoken in the + video's default audio track.\",\n \"type\": \"string\"\n },\n + \ \"localized\": {\n \"description\": \"Localized snippet selected + with the hl parameter. If no such localization exists, this field is populated + with the default snippet. (Read-only)\",\n \"$ref\": \"VideoLocalization\"\n + \ },\n \"channelTitle\": {\n \"description\": \"Channel + title for the channel that the video belongs to.\",\n \"type\": \"string\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The video's title. @mutable youtube.videos.insert youtube.videos.update\"\n + \ },\n \"tags\": {\n \"type\": \"array\",\n \"description\": + \"A list of keyword tags associated with the video. Tags may contain spaces.\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n },\n + \ \"description\": {\n \"type\": \"string\",\n \"description\": + \"The video's description. @mutable youtube.videos.insert youtube.videos.update\"\n + \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n + \ \"description\": \"The language of the videos's default snippet.\"\n + \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + video. 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.\"\n + \ },\n \"categoryId\": {\n \"type\": \"string\",\n \"description\": + \"The YouTube video category associated with the video.\"\n },\n \"liveBroadcastContent\": + {\n \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The + live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n + \ \"The live broadcast has been completed.\"\n ],\n \"description\": + \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" + if the video is not an upcoming/active live broadcast.\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel that the video was uploaded + to.\"\n }\n },\n \"id\": \"VideoSnippet\",\n \"type\": + \"object\",\n \"description\": \"Basic details about a video, including + title, description, uploader, thumbnails and category.\"\n },\n \"TokenPagination\": + {\n \"id\": \"TokenPagination\",\n \"description\": \"Stub token + pagination template to suppress results.\",\n \"properties\": {},\n \"type\": + \"object\"\n },\n \"LiveChatMessageRetractedDetails\": {\n \"id\": + \"LiveChatMessageRetractedDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n + \ }\n },\n \"VideoProcessingDetails\": {\n \"properties\": + {\n \"processingIssuesAvailability\": {\n \"type\": \"string\",\n + \ \"description\": \"This value indicates whether the video processing + engine has generated suggestions that might improve YouTube's ability to process + the the video, warnings that explain video processing problems, or errors + that cause video processing problems. You can retrieve these suggestions by + requesting the suggestions part in your videos.list() request.\"\n },\n + \ \"processingFailureReason\": {\n \"type\": \"string\",\n + \ \"description\": \"The reason that YouTube failed to process the + video. This property will only have a value if the processingStatus property's + value is failed.\",\n \"enum\": [\n \"uploadFailed\",\n + \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"tagSuggestionsAvailability\": + {\n \"type\": \"string\",\n \"description\": \"This value + indicates whether keyword (tag) suggestions are available for the video. Tags + can be added to a video's metadata to make it easier for other users to find + the video. You can retrieve these suggestions by requesting the suggestions + part in your videos.list() request.\"\n },\n \"editorSuggestionsAvailability\": + {\n \"description\": \"This value indicates whether video editing + suggestions, which might improve video quality or the playback experience, + are available for the video. You can retrieve these suggestions by requesting + the suggestions part in your videos.list() request.\",\n \"type\": + \"string\"\n },\n \"thumbnailsAvailability\": {\n \"description\": + \"This value indicates whether thumbnail images have been generated for the + video.\",\n \"type\": \"string\"\n },\n \"fileDetailsAvailability\": + {\n \"description\": \"This value indicates whether file details + are available for the uploaded video. You can retrieve a video's file details + by requesting the fileDetails part in your videos.list() request.\",\n \"type\": + \"string\"\n },\n \"processingProgress\": {\n \"$ref\": + \"VideoProcessingDetailsProcessingProgress\",\n \"description\": + \"The processingProgress object contains information about the progress YouTube + has made in processing the video. The values are really only relevant if the + video's processing status is processing.\"\n },\n \"processingStatus\": + {\n \"description\": \"The video's processing status. This value + indicates whether YouTube was able to process the video or if the video is + still being processed.\",\n \"type\": \"string\",\n \"enum\": + [\n \"processing\",\n \"succeeded\",\n \"failed\",\n + \ \"terminated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n }\n },\n \"type\": \"object\",\n \"id\": + \"VideoProcessingDetails\",\n \"description\": \"Describes processing + status and progress and availability of some other Video resource parts.\"\n + \ },\n \"SearchResult\": {\n \"properties\": {\n \"id\": + {\n \"description\": \"The id object contains information that can + be used to uniquely identify the resource that matches the search request.\",\n + \ \"$ref\": \"ResourceId\"\n },\n \"kind\": {\n \"default\": + \"youtube#searchResult\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"SearchResultSnippet\",\n \"description\": + \"The snippet object contains basic details about a search result, such as + its title or description. For example, if the search result is a video, then + the title will be the video's title and the description will be the video's + description.\"\n }\n },\n \"id\": \"SearchResult\",\n \"description\": + \"A search result contains information about a YouTube video, channel, or + playlist that matches the search parameters specified in an API request. While + a search result points to a uniquely identifiable resource, like a video, + it does not have its own persistent data.\",\n \"type\": \"object\"\n + \ },\n \"VideoFileDetails\": {\n \"properties\": {\n \"videoStreams\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Video\"\n }\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"prevPageToken\": {\n \"description\": + \"VideoFileDetailsVideoStream\"\n },\n \"description\": + \"A list of video streams contained in the uploaded video file. Each item + in the list contains detailed metadata about a video stream.\"\n },\n + \ \"audioStreams\": {\n \"items\": {\n \"$ref\": + \"VideoFileDetailsAudioStream\"\n },\n \"description\": + \"A list of audio streams contained in the uploaded video file. Each item + in the list contains detailed metadata about an audio stream.\",\n \"type\": + \"array\"\n },\n \"container\": {\n \"description\": + \"The uploaded video file's container format.\",\n \"type\": \"string\"\n + \ },\n \"fileName\": {\n \"description\": \"The uploaded + file's name. This field is present whether a video file or another type of + file was uploaded.\",\n \"type\": \"string\"\n },\n \"fileType\": + {\n \"type\": \"string\",\n \"description\": \"The uploaded + file's type as detected by YouTube's video processing engine. Currently, YouTube + only processes video files, but this field is present whether a video file + or another type of file was uploaded.\",\n \"enum\": [\n \"video\",\n + \ \"audio\",\n \"image\",\n \"archive\",\n + \ \"document\",\n \"project\",\n \"other\"\n + \ ],\n \"enumDescriptions\": [\n \"Known video + file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an MP3 + file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive + file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., + MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file type.\"\n ]\n + \ },\n \"fileSize\": {\n \"format\": \"uint64\",\n \"description\": + \"The uploaded file's size in bytes. This field is present whether a video + file or another type of file was uploaded.\",\n \"type\": \"string\"\n + \ },\n \"bitrateBps\": {\n \"type\": \"string\",\n \"description\": + \"The uploaded video file's combined (video and audio) bitrate in bits per + second.\",\n \"format\": \"uint64\"\n },\n \"durationMs\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The length of the uploaded video in milliseconds.\"\n },\n \"creationTime\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the uploaded video file was created. The value is specified + in ISO 8601 format. Currently, the following ISO 8601 formats are supported: + - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: + YYYY-MM-DDTHH:MM:SS+HH:MM \"\n }\n },\n \"description\": + \"Describes original video file properties, including technical details about + audio and video streams, but also metadata information like content length, + digitization time, or geotagging information.\",\n \"type\": \"object\",\n + \ \"id\": \"VideoFileDetails\"\n },\n \"SearchListResponse\": {\n + \ \"id\": \"SearchListResponse\",\n \"properties\": {\n \"kind\": + {\n \"default\": \"youtube#searchListResponse\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"prevPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"VideoGetRatingResponse\": - {\n \"id\": \"VideoGetRatingResponse\",\n \"properties\": {\n \"items\": - {\n \"description\": \"A list of ratings that match the request criteria.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoRating\"\n }\n },\n \"eventId\": {\n \"description\": + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"items\": {\n \"description\": + \"Pagination information for token pagination.\",\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"SearchResult\"\n }\n + \ },\n \"regionCode\": {\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"LiveBroadcastContentDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"closedCaptionsType\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n + \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n + \ ]\n },\n \"projection\": {\n \"enum\": [\n + \ \"projectionUnspecified\",\n \"rectangular\",\n \"360\",\n + \ \"mesh\"\n ],\n \"description\": \"The projection + format of this broadcast. This defaults to rectangular.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"enableAutoStop\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether auto stop is enabled for this broadcast. The default value + for this property is false. This setting can only be used by Events.\"\n },\n + \ \"latencyPreference\": {\n \"description\": \"If both this + and enable_low_latency are set, they must match. LATENCY_NORMAL should match + enable_low_latency=false LATENCY_LOW should match enable_low_latency=true + LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enumDescriptions\": + [\n \"\",\n \"Best for: highest quality viewer playbacks + and higher resolutions.\",\n \"Best for: near real-time interaction, + with minimal playback buffering.\",\n \"Best for: real-time interaction + Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n + \ \"enum\": [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n + \ \"low\",\n \"ultraLow\"\n ],\n \"type\": + \"string\"\n },\n \"recordFromStart\": {\n \"description\": + \"Automatically start recording after the event goes live. The default value + for this property is true. *Important:* You must also set the enableDvr property's + value to true if you want the playback to be available immediately after the + broadcast ends. If you set this property's value to true but do not also set + the enableDvr property to true, there may be a delay of around one day before + the archived video will be available for playback.\",\n \"type\": + \"boolean\"\n },\n \"monitorStream\": {\n \"$ref\": + \"MonitorStreamInfo\",\n \"description\": \"The monitorStream object + contains information about the monitor stream, which the broadcaster can use + to review the event content before the broadcast stream is shown publicly.\"\n + \ },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether the broadcast + video can be played in an embedded player. If you choose to archive the video + (using the enableArchive property), this setting will also apply to the archived + video.\"\n },\n \"enableAutoStart\": {\n \"description\": + \"This setting indicates whether auto start is enabled for this broadcast. + The default value for this property is false. This setting can only be used + by Events.\",\n \"type\": \"boolean\"\n },\n \"boundStreamLastUpdateTimeMs\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time that the live stream referenced + by boundStreamId was last updated.\"\n },\n \"enableClosedCaptions\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether HTTP POST closed captioning is enabled for this broadcast. + The ingestion URL of the closed captions is returned through the liveStreams + API. This is mutually exclusive with using the closed_captions_type property, + and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n + \ },\n \"stereoLayout\": {\n \"enum\": [\n \"stereoLayoutUnspecified\",\n + \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The 3D stereo layout of this broadcast. This defaults to mono.\",\n \"type\": + \"string\"\n },\n \"enableContentEncryption\": {\n \"description\": + \"This setting indicates whether YouTube should enable content encryption + for the broadcast.\",\n \"type\": \"boolean\"\n },\n \"enableDvr\": + {\n \"description\": \"This setting determines whether viewers can + access DVR controls while watching the video. DVR controls enable the viewer + to control the video playback experience by pausing, rewinding, or fast forwarding + content. The default value for this property is true. *Important:* You must + set the value to true and also set the enableArchive property's value to true + if you want to make playback available immediately after the broadcast ends.\",\n + \ \"type\": \"boolean\"\n },\n \"mesh\": {\n \"description\": + \"The mesh for projecting the video if projection is mesh. The mesh value + must be a UTF-8 string containing the base-64 encoding of 3D mesh data that + follows the Spherical Video V2 RFC specification for an mshp box, excluding + the box size and type but including the following four reserved zero bytes + for the version and flags.\",\n \"type\": \"string\",\n \"format\": + \"byte\"\n },\n \"enableLowLatency\": {\n \"description\": + \"Indicates whether this broadcast has low latency enabled.\",\n \"type\": + \"boolean\"\n },\n \"boundStreamId\": {\n \"description\": + \"This value uniquely identifies the live stream bound to the broadcast.\",\n + \ \"type\": \"string\"\n },\n \"startWithSlate\": {\n + \ \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether the broadcast should automatically begin with an in-stream + slate when you update the broadcast's status to live. After updating the status, + you then need to send a liveCuepoints.insert request that sets the cuepoint's + eventState to end to remove the in-stream slate and make your broadcast stream + visible to viewers.\"\n }\n },\n \"description\": \"Detailed + settings of a broadcast.\",\n \"id\": \"LiveBroadcastContentDetails\"\n + \ },\n \"VideoMonetizationDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"access\": {\n \"description\": + \"The value of access indicates whether the video can be monetized or not.\",\n + \ \"$ref\": \"AccessPolicy\"\n }\n },\n \"description\": + \"Details about monetization of a YouTube Video.\",\n \"id\": \"VideoMonetizationDetails\"\n + \ },\n \"LiveStreamContentDetails\": {\n \"id\": \"LiveStreamContentDetails\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"isReusable\": + {\n \"type\": \"boolean\",\n \"description\": \"Indicates + whether the stream is reusable, which means that it can be bound to multiple + broadcasts. It is common for broadcasters to reuse the same stream for many + different broadcasts if those broadcasts occur at different times. If you + set this value to false, then the stream will not be reusable, which means + that it can only be bound to one broadcast. Non-reusable streams differ from + reusable streams in the following ways: - A non-reusable stream can only be + bound to one broadcast. - A non-reusable stream might be deleted by an automated + process after the broadcast ends. - The liveStreams.list method does not list + non-reusable streams if you call the method and set the mine parameter to + true. The only way to use that method to retrieve the resource for a non-reusable + stream is to use the id parameter to identify the stream. \"\n },\n + \ \"closedCaptionsIngestionUrl\": {\n \"description\": \"The + ingestion URL where the closed captions of this stream are sent.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Detailed settings + of a stream.\"\n },\n \"ActivityContentDetailsSocial\": {\n \"description\": + \"Details about a social network post.\",\n \"type\": \"object\",\n \"id\": + \"ActivityContentDetailsSocial\",\n \"properties\": {\n \"type\": + {\n \"description\": \"The name of the social network.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n + \ \"facebook\",\n \"twitter\"\n ],\n \"type\": + \"string\"\n },\n \"imageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"An image of the post's author.\"\n },\n + \ \"resourceId\": {\n \"description\": \"The resourceId object + encapsulates information that identifies the resource associated with a social + network post.\",\n \"$ref\": \"ResourceId\"\n },\n \"author\": + {\n \"description\": \"The author of the social network post.\",\n + \ \"type\": \"string\"\n },\n \"referenceUrl\": {\n + \ \"description\": \"The URL of the social network post.\",\n \"type\": + \"string\"\n }\n }\n },\n \"ChannelSectionContentDetails\": + {\n \"properties\": {\n \"channels\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": + \"The channel ids for type multiple_channels.\"\n },\n \"playlists\": + {\n \"description\": \"The playlist ids for type single_playlist + and multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n }\n }\n },\n \"type\": \"object\",\n + \ \"description\": \"Details about a channelsection, including playlists + and channels.\",\n \"id\": \"ChannelSectionContentDetails\"\n },\n + \ \"VideoCategorySnippet\": {\n \"properties\": {\n \"assignable\": + {\n \"type\": \"boolean\"\n },\n \"title\": {\n \"description\": + \"The video category's title.\",\n \"type\": \"string\"\n },\n + \ \"channelId\": {\n \"description\": \"The YouTube channel + that created the video category.\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Basic details about a video category, such as its localized title.\",\n + \ \"id\": \"VideoCategorySnippet\",\n \"type\": \"object\"\n },\n + \ \"ThumbnailDetails\": {\n \"properties\": {\n \"maxres\": + {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The maximum + resolution quality image for this resource.\"\n },\n \"default\": + {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The default + image for this resource.\"\n },\n \"medium\": {\n \"description\": + \"The medium quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n + \ },\n \"standard\": {\n \"$ref\": \"Thumbnail\",\n + \ \"description\": \"The standard quality image for this resource.\"\n + \ },\n \"high\": {\n \"description\": \"The high quality + image for this resource.\",\n \"$ref\": \"Thumbnail\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"ThumbnailDetails\",\n + \ \"description\": \"Internal representation of thumbnails for a YouTube + resource.\"\n },\n \"PlaylistItemListResponse\": {\n \"properties\": + {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"description\": \"A list of playlist + items that match the request criteria.\",\n \"items\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"type\": \"array\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"etag\": {\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"default\": \"youtube#videoGetRatingResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatModeratorSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatModeratorSnippet\",\n \"properties\": {\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the live chat this moderator can act on.\"\n },\n \"moderatorDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the moderator.\"\n }\n }\n },\n \"LiveStreamConfigurationIssue\": - {\n \"id\": \"LiveStreamConfigurationIssue\",\n \"properties\": - {\n \"type\": {\n \"description\": \"The kind of error happening.\",\n + \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#playlistItemListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". + Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n }\n },\n \"id\": \"PlaylistItemListResponse\",\n + \ \"type\": \"object\"\n },\n \"MembershipsLevelSnippet\": {\n \"properties\": + {\n \"creatorChannelId\": {\n \"description\": \"The id of + the channel that's offering channel memberships.\",\n \"type\": \"string\"\n + \ },\n \"levelDetails\": {\n \"$ref\": \"LevelDetails\",\n + \ \"description\": \"Details about the pricing level.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"MembershipsLevelSnippet\"\n + \ },\n \"IngestionInfo\": {\n \"type\": \"object\",\n \"description\": + \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n + \ \"id\": \"IngestionInfo\",\n \"properties\": {\n \"rtmpsBackupIngestionAddress\": + {\n \"type\": \"string\",\n \"description\": \"This ingestion + url may be used instead of backupIngestionAddress in order to stream via RTMPS. + Not applicable to non-RTMP streams.\"\n },\n \"rtmpsIngestionAddress\": + {\n \"description\": \"This ingestion url may be used instead of + ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP + streams.\",\n \"type\": \"string\"\n },\n \"ingestionAddress\": + {\n \"description\": \"The primary ingestion URL that you should + use to stream video to YouTube. You must stream video to this URL. Depending + on which application or tool you use to encode your video stream, you may + need to enter the stream URL and stream name separately or you may need to + concatenate them in the following format: *STREAM_URL/STREAM_NAME* \",\n \"type\": + \"string\"\n },\n \"streamName\": {\n \"type\": \"string\",\n + \ \"description\": \"The stream name that YouTube assigns to the video + stream.\"\n },\n \"backupIngestionAddress\": {\n \"type\": + \"string\",\n \"description\": \"The backup ingestion URL that you + should use to stream video to YouTube. You have the option of simultaneously + streaming the content that you are sending to the ingestionAddress to this + URL.\"\n }\n }\n },\n \"LevelDetails\": {\n \"properties\": + {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": + \"The name that should be used when referring to this level.\"\n }\n + \ },\n \"id\": \"LevelDetails\",\n \"type\": \"object\"\n },\n + \ \"ChannelSection\": {\n \"id\": \"ChannelSection\",\n \"type\": + \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the channel section, such + as its type, style and title.\",\n \"$ref\": \"ChannelSectionSnippet\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#channelSection\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n + \ \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n + \ \"description\": \"The targeting object contains basic targeting + settings about the channel section.\"\n },\n \"localizations\": + {\n \"description\": \"Localizations for different languages\",\n + \ \"additionalProperties\": {\n \"$ref\": \"ChannelSectionLocalization\"\n + \ },\n \"type\": \"object\"\n },\n \"contentDetails\": + {\n \"$ref\": \"ChannelSectionContentDetails\",\n \"description\": + \"The contentDetails object contains details about the channel section content, + such as a list of playlists or channels featured in the section.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"VideoRating\": + {\n \"type\": \"object\",\n \"properties\": {\n \"videoId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the video.\",\n \"type\": \"string\"\n },\n \"rating\": + {\n \"enumDescriptions\": [\n \"\",\n \"The + entity is liked.\",\n \"The entity is disliked.\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n \"description\": + \"Rating of a video.\"\n }\n },\n \"description\": \"Basic + details about rating of a video.\",\n \"id\": \"VideoRating\"\n },\n + \ \"VideoContentDetailsRegionRestriction\": {\n \"type\": \"object\",\n + \ \"description\": \"DEPRECATED Region restriction of the video.\",\n + \ \"properties\": {\n \"blocked\": {\n \"description\": + \"A list of region codes that identify countries where the video is blocked. + If this property is present and a country is not listed in its value, then + the video is viewable in that country. If this property is present and contains + an empty list, the video is viewable in all countries.\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n + \ },\n \"allowed\": {\n \"description\": \"A list of + region codes that identify countries where the video is viewable. If this + property is present and a country is not listed in its value, then the video + is blocked from appearing in that country. If this property is present and + contains an empty list, the video is blocked in all countries.\",\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n + \ }\n },\n \"id\": \"VideoContentDetailsRegionRestriction\"\n + \ },\n \"ThirdPartyLink\": {\n \"type\": \"object\",\n \"id\": + \"ThirdPartyLink\",\n \"description\": \"A *third party account link* + resource represents a link between a YouTube account or a channel and an account + on a third-party service.\",\n \"properties\": {\n \"kind\": {\n + \ \"default\": \"youtube#thirdPartyLink\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n + \ \"type\": \"string\"\n },\n \"status\": {\n \"$ref\": + \"ThirdPartyLinkStatus\",\n \"description\": \"The status object + contains information about the status of the link.\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the third- party account link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource\",\n \"type\": \"string\"\n },\n \"linkingToken\": + {\n \"description\": \"The linking_token identifies a YouTube account + and channel with which the third party account is linked.\",\n \"type\": + \"string\"\n }\n }\n },\n \"LiveStreamStatus\": {\n \"description\": + \"Brief description of the live stream status.\",\n \"type\": \"object\",\n + \ \"id\": \"LiveStreamStatus\",\n \"properties\": {\n \"healthStatus\": + {\n \"description\": \"The health status of the stream.\",\n \"$ref\": + \"LiveStreamHealthStatus\"\n },\n \"streamStatus\": {\n \"enum\": + [\n \"created\",\n \"ready\",\n \"active\",\n + \ \"inactive\",\n \"error\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\"\n }\n + \ }\n },\n \"I18nLanguage\": {\n \"type\": \"object\",\n \"id\": + \"I18nLanguage\",\n \"properties\": {\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the i18n language.\"\n },\n \"kind\": {\n \"default\": + \"youtube#i18nLanguage\",\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n \"description\": + \"The snippet object contains basic details about the i18n language, such + as language code and human-readable name.\"\n }\n },\n \"description\": + \"An *i18nLanguage* resource identifies a UI language currently supported + by YouTube.\"\n },\n \"LiveStreamConfigurationIssue\": {\n \"id\": + \"LiveStreamConfigurationIssue\",\n \"type\": \"object\",\n \"properties\": + {\n \"description\": {\n \"type\": \"string\",\n \"description\": + \"The long-form description of the issue and how to resolve it.\"\n },\n + \ \"reason\": {\n \"type\": \"string\",\n \"description\": + \"The short-form reason for this issue.\"\n },\n \"type\": {\n \ \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n @@ -8875,782 +2288,654 @@ interactions: \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ]\n },\n \"reason\": {\n \"description\": - \"The short-form reason for this issue.\",\n \"type\": \"string\"\n + \ ],\n \"description\": \"The kind of error happening.\"\n \ },\n \"severity\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"How severe this issue is to the stream.\",\n \"type\": \"string\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ]\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The long-form description of the issue and how - to resolve it.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"VideoLocalization\": {\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's description.\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"Localized version - of the video's title.\"\n }\n },\n \"id\": \"VideoLocalization\",\n - \ \"type\": \"object\",\n \"description\": \"Localized versions of - certain video properties (e.g. title).\"\n },\n \"Member\": {\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#member\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the member.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"description\": \"A *member* resource represents a member for a YouTube - channel. A member provides recurring monetary support to a creator and receives - special benefits.\",\n \"id\": \"Member\"\n },\n \"VideoAgeGating\": - {\n \"properties\": {\n \"videoGameRating\": {\n \"type\": + \ ],\n \"description\": \"How severe this issue is to the + stream.\"\n }\n }\n },\n \"SuperChatEvent\": {\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely + identify the Super Chat event.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n \"default\": + \"youtube#superChatEvent\"\n },\n \"snippet\": {\n \"$ref\": + \"SuperChatEventSnippet\",\n \"description\": \"The `snippet` object + contains basic details about the Super Chat event.\"\n }\n },\n + \ \"type\": \"object\",\n \"description\": \"A `__superChatEvent__` + resource represents a Super Chat purchase on a YouTube channel.\",\n \"id\": + \"SuperChatEvent\"\n },\n \"RelatedEntity\": {\n \"properties\": + {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n },\n + \ \"id\": \"RelatedEntity\",\n \"type\": \"object\"\n },\n \"LiveChatMembershipGiftingDetails\": + {\n \"properties\": {\n \"giftMembershipsCount\": {\n \"type\": + \"integer\",\n \"description\": \"The number of gift memberships + purchased by the user.\",\n \"format\": \"int32\"\n },\n \"giftMembershipsLevelName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the level of the gift memberships purchased by the user. The Level names + are defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\"\n }\n },\n \"id\": \"LiveChatMembershipGiftingDetails\",\n + \ \"type\": \"object\"\n },\n \"ResourceId\": {\n \"properties\": + {\n \"videoId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the referred resource, if that resource is a video. + This property is only present if the resourceId.kind value is youtube#video.\",\n + \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the referred resource, if that resource is a channel. This property + is only present if the resourceId.kind value is youtube#channel.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"The type of the API resource.\"\n },\n \"playlistId\": {\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the referred resource, if that resource is a playlist. This property is only + present if the resourceId.kind value is youtube#playlist.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"A resource id is + a generic reference that points to another YouTube resource.\",\n \"id\": + \"ResourceId\",\n \"type\": \"object\"\n },\n \"ChannelStatus\": + {\n \"id\": \"ChannelStatus\",\n \"description\": \"JSON template + for the status part of a channel.\",\n \"properties\": {\n \"privacyStatus\": + {\n \"type\": \"string\",\n \"description\": \"Privacy status + of the channel.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"public\",\n \"unlisted\",\n \"private\"\n + \ ]\n },\n \"isLinked\": {\n \"description\": + \"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.\",\n \"type\": + \"boolean\"\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": + \"boolean\"\n },\n \"longUploadsStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"Video game rating, if any.\",\n \"enum\": [\n \"anyone\",\n - \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n - \ ]\n },\n \"restricted\": {\n \"description\": - \"Age-restricted trailers. For redband trailers and adult-rated video-games. - Only users aged 18+ can view the content. The the field is true the content - is restricted to viewers aged 18+. Otherwise The field won't be present.\",\n - \ \"type\": \"boolean\"\n },\n \"alcoholContent\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Indicates whether - or not the video has alcoholic beverage content. Only users of legal purchasing - age in a particular country, as identified by ICAP, can view the content.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAgeGating\"\n - \ },\n \"TokenPagination\": {\n \"type\": \"object\",\n \"properties\": - {},\n \"id\": \"TokenPagination\",\n \"description\": \"Stub token - pagination template to suppress results.\"\n },\n \"PlaylistStatus\": - {\n \"properties\": {\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"The playlist's - privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"id\": - \"PlaylistStatus\",\n \"type\": \"object\"\n },\n \"MonitorStreamInfo\": - {\n \"description\": \"Settings and Info of the monitor stream\",\n \"type\": - \"object\",\n \"id\": \"MonitorStreamInfo\",\n \"properties\": {\n - \ \"broadcastStreamDelayMs\": {\n \"description\": \"If you - have set the enableMonitorStream property to true, then this property determines - the length of the live broadcast delay.\",\n \"format\": \"uint32\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"integer\"\n },\n - \ \"enableMonitorStream\": {\n \"type\": \"boolean\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"This value determines - whether the monitor stream is enabled for the broadcast. If the monitor stream - is enabled, then YouTube will broadcast the event content on a special stream - intended only for the broadcaster's consumption. The broadcaster can use the - stream to review the event content and also to identify the optimal times - to insert cuepoints. You need to set this value to true if you intend to have - a broadcast delay for your event. *Note:* This property cannot be updated - once the broadcast is in the testing or live state.\"\n },\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"HTML code - that embeds a player that plays the monitor stream.\"\n }\n }\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n + \ \"disallowed\"\n ],\n \"description\": \"The + long uploads status of this channel. See https://support.google.com/youtube/answer/71673 + for more information.\"\n },\n \"madeForKids\": {\n \"type\": + \"boolean\"\n }\n },\n \"type\": \"object\"\n },\n \"ThirdPartyLinkStatus\": + {\n \"description\": \"The third-party link status object contains information + about the status of the link.\",\n \"type\": \"object\",\n \"properties\": + {\n \"linkStatus\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"unknown\",\n \"failed\",\n + \ \"pending\",\n \"linked\"\n ]\n }\n + \ },\n \"id\": \"ThirdPartyLinkStatus\"\n },\n \"ChannelTopicDetails\": + {\n \"type\": \"object\",\n \"id\": \"ChannelTopicDetails\",\n \"description\": + \"Freebase topic information related to the channel.\",\n \"properties\": + {\n \"topicIds\": {\n \"description\": \"A list of Freebase + topic IDs associated with the channel. You can retrieve information about + each topic using the Freebase Topic API.\",\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n },\n + \ \"topicCategories\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of Wikipedia URLs that describe the channel's content.\"\n }\n + \ }\n },\n \"CommentListResponse\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"pageInfo\": {\n \"description\": \"General + pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"Comment\"\n + \ },\n \"description\": \"A list of comments that match the + request criteria.\",\n \"type\": \"array\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#commentListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n }\n },\n \"id\": \"CommentListResponse\"\n \ },\n \"GeoPoint\": {\n \"type\": \"object\",\n \"id\": \"GeoPoint\",\n \ \"description\": \"Geographical coordinates of a point, in WGS84.\",\n - \ \"properties\": {\n \"altitude\": {\n \"description\": + \ \"properties\": {\n \"longitude\": {\n \"format\": \"double\",\n + \ \"description\": \"Longitude in degrees.\",\n \"type\": + \"number\"\n },\n \"latitude\": {\n \"format\": \"double\",\n + \ \"type\": \"number\",\n \"description\": \"Latitude in + degrees.\"\n },\n \"altitude\": {\n \"description\": \"Altitude above the reference ellipsoid, in meters.\",\n \"type\": - \"number\",\n \"format\": \"double\"\n },\n \"latitude\": - {\n \"type\": \"number\",\n \"description\": \"Latitude - in degrees.\",\n \"format\": \"double\"\n },\n \"longitude\": - {\n \"format\": \"double\",\n \"type\": \"number\",\n \"description\": - \"Longitude in degrees.\"\n }\n }\n },\n \"InvideoPosition\": - {\n \"type\": \"object\",\n \"properties\": {\n \"type\": - {\n \"type\": \"string\",\n \"description\": \"Defines the - position type.\",\n \"enum\": [\n \"corner\"\n ],\n - \ \"enumDescriptions\": [\n \"\"\n ]\n },\n - \ \"cornerPosition\": {\n \"description\": \"Describes in which - corner of the video the visual widget will appear.\",\n \"type\": + \"number\",\n \"format\": \"double\"\n }\n }\n },\n + \ \"CommentThreadSnippet\": {\n \"type\": \"object\",\n \"id\": + \"CommentThreadSnippet\",\n \"properties\": {\n \"topLevelComment\": + {\n \"$ref\": \"Comment\",\n \"description\": \"The top + level comment of this thread.\"\n },\n \"totalReplyCount\": + {\n \"type\": \"integer\",\n \"description\": \"The total + number of replies (not including the top level comment).\",\n \"format\": + \"uint32\"\n },\n \"canReply\": {\n \"type\": \"boolean\",\n + \ \"description\": \"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.\"\n },\n \"channelId\": {\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n \"isPublic\": + {\n \"description\": \"Whether the thread (and therefore all its + comments) is visible to all YouTube users.\",\n \"type\": \"boolean\"\n + \ },\n \"videoId\": {\n \"description\": \"The ID of + the video the comments refer to, if any. No video_id implies a channel discussion + comment.\",\n \"type\": \"string\"\n }\n },\n \"description\": + \"Basic details about a comment thread.\"\n },\n \"CommentSnippetAuthorChannelId\": + {\n \"type\": \"object\",\n \"description\": \"The id of the author's + YouTube channel, if any.\",\n \"properties\": {\n \"value\": {\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"CommentSnippetAuthorChannelId\"\n + \ },\n \"LiveBroadcastSnippet\": {\n \"id\": \"LiveBroadcastSnippet\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"publishedAt\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time that the broadcast was added + to YouTube's live broadcast schedule.\"\n },\n \"title\": {\n + \ \"description\": \"The broadcast's title. Note that the broadcast + represents exactly one YouTube video. You can set this field by modifying + the broadcast resource or by setting the title field of the corresponding + video resource.\",\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n }\n + \ },\n \"scheduledStartTime\": {\n \"format\": \"date-time\",\n + \ \"type\": \"string\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"The date and time + that the broadcast is scheduled to start.\"\n },\n \"scheduledEndTime\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the broadcast is scheduled + to end.\"\n },\n \"isDefaultBroadcast\": {\n \"type\": + \"boolean\",\n \"description\": \"Indicates whether this broadcast + is the default broadcast. Internal only.\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The broadcast's + description. As with the title, you can set this field by modifying the broadcast + resource or by setting the description field of the corresponding video resource.\"\n + \ },\n \"actualStartTime\": {\n \"description\": \"The + date and time that the broadcast actually started. This information is only + available once the broadcast's state is live.\",\n \"format\": \"date-time\",\n + \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that is publishing + the broadcast.\",\n \"type\": \"string\"\n },\n \"actualEndTime\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the broadcast actually + ended. This information is only available once the broadcast's state is complete.\"\n + \ },\n \"thumbnails\": {\n \"description\": \"A map + of thumbnail images associated with the broadcast. For each nested object + in this object, the key is the name of the thumbnail image, and the value + is an object that contains other information about the thumbnail.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"liveChatId\": {\n \"type\": + \"string\",\n \"description\": \"The id of the live chat for this + broadcast.\"\n }\n },\n \"description\": \"Basic broadcast + information.\"\n },\n \"CdnSettings\": {\n \"properties\": {\n + \ \"format\": {\n \"type\": \"string\",\n \"description\": + \"The format of the video stream that you are sending to Youtube. \",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n }\n + \ },\n \"frameRate\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"30fps\",\n \"60fps\",\n \"variable\"\n + \ ],\n \"description\": \"The frame rate of the inbound video + data.\",\n \"type\": \"string\"\n },\n \"resolution\": + {\n \"enum\": [\n \"240p\",\n \"360p\",\n \"480p\",\n + \ \"720p\",\n \"1080p\",\n \"1440p\",\n \"2160p\",\n + \ \"variable\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The resolution of the inbound video data.\"\n },\n \"ingestionType\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"description\": \" The method or protocol used to transmit the + video stream.\",\n \"enum\": [\n \"rtmp\",\n \"dash\",\n + \ \"webrtc\",\n \"hls\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n - \ \"bottomRight\"\n ]\n }\n },\n \"id\": - \"InvideoPosition\",\n \"description\": \"Describes the spatial position - of a visual widget inside a video. It is a union of various position types, - out of which only will be set one.\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\",\n \"properties\": {\n \"secondaryReasons\": - {\n \"type\": \"array\",\n \"description\": \"The secondary - reasons associated with this reason, if any are available. (There might be - 0 or more.)\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ }\n },\n \"label\": {\n \"description\": - \"The localized label belonging to this abuse report reason.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelSectionListResponse\": - {\n \"id\": \"ChannelSectionListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#channelSectionListResponse\",\n + \ \"\",\n \"\"\n ]\n },\n \"ingestionInfo\": + {\n \"description\": \"The ingestionInfo object contains information + that YouTube provides that you need to transmit your RTMP or HTTP stream to + YouTube.\",\n \"$ref\": \"IngestionInfo\"\n }\n },\n + \ \"id\": \"CdnSettings\",\n \"description\": \"Brief description + of the live stream cdn settings.\",\n \"type\": \"object\"\n },\n + \ \"VideoProcessingDetailsProcessingProgress\": {\n \"properties\": + {\n \"partsTotal\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"An estimate of the total number + of parts that need to be processed for the video. The number may be updated + with more precise estimates while YouTube processes the video.\"\n },\n + \ \"partsProcessed\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"The number of parts of the video + that YouTube has already processed. You can estimate the percentage of the + video that YouTube has already processed by calculating: 100 * parts_processed + / parts_total Note that since the estimated number of parts could increase + without a corresponding increase in the number of parts that have already + been processed, it is possible that the calculated progress could periodically + decrease while YouTube processes a video.\"\n },\n \"timeLeftMs\": + {\n \"format\": \"uint64\",\n \"description\": \"An estimate + of the amount of time, in millseconds, that YouTube needs to finish processing + the video.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"Video processing progress and completion + time estimate.\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\"\n + \ },\n \"LanguageTag\": {\n \"id\": \"LanguageTag\",\n \"type\": + \"object\",\n \"properties\": {\n \"value\": {\n \"type\": + \"string\"\n }\n }\n },\n \"LiveChatNewSponsorDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatNewSponsorDetails\",\n + \ \"properties\": {\n \"isUpgrade\": {\n \"type\": \"boolean\",\n + \ \"description\": \"If the viewer just had upgraded from a lower + level. For viewers that were not members at the time of purchase, this field + is false.\"\n },\n \"memberLevelName\": {\n \"type\": + \"string\",\n \"description\": \"The name of the Level that the viewer + just had joined. The Level names are defined by the YouTube channel offering + the Membership. In some situations this field isn't filled.\"\n }\n + \ }\n },\n \"ChannelSectionLocalization\": {\n \"properties\": + {\n \"title\": {\n \"description\": \"The localized strings + for channel section's title.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"ChannelSection + localization setting\",\n \"id\": \"ChannelSectionLocalization\"\n },\n + \ \"TestItemTestItemSnippet\": {\n \"type\": \"object\",\n \"properties\": + {},\n \"id\": \"TestItemTestItemSnippet\"\n },\n \"LiveStream\": + {\n \"type\": \"object\",\n \"description\": \"A live stream describes + a live ingestion point.\",\n \"properties\": {\n \"kind\": {\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveStream\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of ChannelSections that match the request criteria.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": + the fixed string \\\"youtube#liveStream\\\".\"\n },\n \"etag\": {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n }\n },\n \"ChannelStatistics\": {\n \"type\": - \"object\",\n \"id\": \"ChannelStatistics\",\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\",\n \"properties\": {\n \"viewCount\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of times the channel has been viewed.\"\n },\n \"commentCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of comments for the channel.\"\n },\n \"subscriberCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of subscribers that the channel has.\"\n },\n \"hiddenSubscriberCount\": - {\n \"description\": \"Whether or not the number of subscribers is - shown for this user.\",\n \"type\": \"boolean\"\n },\n \"videoCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of videos uploaded to the channel.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ChannelSnippet\": {\n \"properties\": {\n \"localized\": - {\n \"description\": \"Localized title and description, read-only.\",\n - \ \"$ref\": \"ChannelLocalization\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the channel.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails in your application, make - sure that your code uses the image URLs exactly as they are returned in API - responses. For example, your application should not use the http domain instead - of the https domain in a URL returned in an API response. Beginning in July - 2018, channel thumbnail URLs will only be available in the https domain, which - is how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel's default title - and description.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - title.\"\n },\n \"customUrl\": {\n \"description\": - \"The custom url of the channel.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the channel was created.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Basic details about a channel, including - title, description and thumbnails.\",\n \"id\": \"ChannelSnippet\",\n - \ \"type\": \"object\"\n },\n \"I18nLanguageSnippet\": {\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\",\n \"properties\": {\n \"name\": {\n \"description\": - \"The human-readable name of the language in the language itself.\",\n \"type\": - \"string\"\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"A short BCP-47 code that uniquely identifies - a language.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"I18nLanguageSnippet\"\n },\n \"WatchSettings\": {\n \"type\": - \"object\",\n \"properties\": {\n \"textColor\": {\n \"description\": - \"The background color for the video watch page's branded area.\",\n \"type\": - \"string\"\n },\n \"featuredPlaylistId\": {\n \"type\": - \"string\",\n \"description\": \"An ID that uniquely identifies a - playlist that displays next to the video player.\"\n },\n \"backgroundColor\": - {\n \"description\": \"The text color for the video watch page's - branded area.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"WatchSettings\",\n \"description\": \"Branding properties for the watch. - All deprecated.\"\n },\n \"VideoContentDetails\": {\n \"description\": - \"Details about the content of a YouTube Video.\",\n \"id\": \"VideoContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"hasCustomThumbnail\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\"\n },\n \"countryRestriction\": - {\n \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\",\n \"$ref\": - \"AccessPolicy\"\n },\n \"contentRating\": {\n \"description\": - \"Specifies the ratings that the video received under various rating schemes.\",\n - \ \"$ref\": \"ContentRating\"\n },\n \"licensedContent\": - {\n \"description\": \"The value of is_license_content indicates - whether the video is licensed content.\",\n \"type\": \"boolean\"\n - \ },\n \"duration\": {\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\",\n \"type\": - \"string\"\n },\n \"regionRestriction\": {\n \"$ref\": - \"VideoContentDetailsRegionRestriction\",\n \"description\": \"The - regionRestriction object contains information about the countries where a - video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\"\n },\n - \ \"caption\": {\n \"type\": \"string\",\n \"description\": - \"The value of captions indicates whether the video has captions or not.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"true\",\n \"false\"\n ]\n - \ },\n \"dimension\": {\n \"type\": \"string\",\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\"\n },\n \"projection\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"description\": \"Specifies the projection format - of the video.\"\n },\n \"definition\": {\n \"type\": - \"string\",\n \"description\": \"The value of definition indicates - whether the video is available in high definition or only in standard definition.\",\n - \ \"enum\": [\n \"sd\",\n \"hd\"\n ],\n - \ \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ]\n }\n }\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n - \ \"description\": \"The id of the author's YouTube channel, if any.\"\n - \ },\n \"VideoMonetizationDetails\": {\n \"description\": \"Details - about monetization of a YouTube Video.\",\n \"properties\": {\n \"access\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - value of access indicates whether the video can be monetized or not.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoMonetizationDetails\"\n - \ },\n \"ActivityContentDetailsBulletin\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsBulletin\",\n \"description\": - \"Details about a channel bulletin post.\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with a - bulletin post. @mutable youtube.activities.insert\"\n }\n }\n - \ },\n \"ActivityContentDetailsChannelItem\": {\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\"\n }\n },\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"type\": \"object\",\n \"description\": \"Details about a resource - which was added to a channel.\"\n },\n \"VideoCategoryListResponse\": - {\n \"id\": \"VideoCategoryListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n \"default\": - \"youtube#videoCategoryListResponse\"\n },\n \"eventId\": {\n - \ \"type\": \"string\",\n \"description\": \"Serialized EventId - of the request which produced this response.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"VideoCategory\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of video - categories that can be associated with YouTube videos. In this map, the video - category ID is the map key, and its value is the corresponding videoCategory - resource.\"\n },\n \"prevPageToken\": {\n \"description\": + resource.\"\n },\n \"contentDetails\": {\n \"description\": + \"The content_details object contains information about the stream, including + the closed captions ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.update\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + assigns to uniquely identify the stream.\"\n },\n \"snippet\": + {\n \"$ref\": \"LiveStreamSnippet\",\n \"description\": + \"The snippet object contains basic details about the stream, including its + channel, title, and description.\"\n },\n \"cdn\": {\n \"description\": + \"The cdn object defines the live stream's content delivery network (CDN) + settings. These settings provide details about the manner in which you stream + your content to YouTube.\",\n \"$ref\": \"CdnSettings\"\n },\n + \ \"status\": {\n \"description\": \"The status object contains + information about live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n + \ }\n },\n \"id\": \"LiveStream\"\n },\n \"MembershipsDurationAtLevel\": + {\n \"id\": \"MembershipsDurationAtLevel\",\n \"properties\": {\n + \ \"level\": {\n \"description\": \"Pricing level ID.\",\n + \ \"type\": \"string\"\n },\n \"memberTotalDurationMonths\": + {\n \"type\": \"integer\",\n \"description\": \"The cumulative + time the user has been a member for the given level in complete months (the + time is rounded down to the nearest integer).\",\n \"format\": \"int32\"\n + \ },\n \"memberSince\": {\n \"description\": \"The date + and time when the user became a continuous member for the given level.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"LiveChatModeratorListResponse\": {\n \"properties\": {\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"pageInfo\": {\n \"description\": \"General + pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n }\n },\n \"VideoCategory\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#videoCategory\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video category.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n }\n },\n \"id\": \"VideoCategory\",\n \"description\": - \"A *videoCategory* resource identifies a category that has been or could - be associated with uploaded videos.\"\n },\n \"SubscriptionListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"default\": \"youtube#subscriptionListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": + the next page in the result set.\"\n },\n \"visitorId\": {\n + \ \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"prevPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n + the previous page in the result set.\",\n \"type\": \"string\"\n \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Subscription\"\n },\n \"description\": \"A list of subscriptions - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n },\n \"id\": \"SubscriptionListResponse\"\n - \ },\n \"LiveBroadcastContentDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveBroadcastContentDetails\",\n \"properties\": {\n - \ \"stereoLayout\": {\n \"description\": \"The 3D stereo layout - of this broadcast. This defaults to mono.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n - \ \"leftRight\",\n \"topBottom\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"enableContentEncryption\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - YouTube should enable content encryption for the broadcast.\"\n },\n - \ \"boundStreamLastUpdateTimeMs\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the live stream referenced by boundStreamId was last updated.\"\n - \ },\n \"recordFromStart\": {\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\",\n \"type\": \"boolean\"\n - \ },\n \"enableAutoStart\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether auto start is - enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\"\n },\n \"latencyPreference\": - {\n \"type\": \"string\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"description\": \"If both this and - enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\"\n },\n \"enableDvr\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This setting - determines whether viewers can access DVR controls while watching the video. - DVR controls enable the viewer to control the video playback experience by - pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\"\n },\n \"closedCaptionsType\": + \"LiveChatModerator\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of moderators that match the request criteria.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveChatModeratorListResponse\"\n },\n \"AccessPolicy\": {\n \"type\": + \"object\",\n \"description\": \"Rights management policy for YouTube + resources.\",\n \"properties\": {\n \"exception\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"A list of region codes that identify countries + where the default policy do not apply.\"\n },\n \"allowed\": + {\n \"type\": \"boolean\",\n \"description\": \"The value + of allowed indicates whether the access to the policy is allowed or denied + by default.\"\n }\n },\n \"id\": \"AccessPolicy\"\n },\n + \ \"ActivityContentDetailsRecommendation\": {\n \"id\": \"ActivityContentDetailsRecommendation\",\n + \ \"type\": \"object\",\n \"description\": \"Information that identifies + the recommended resource.\",\n \"properties\": {\n \"reason\": {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ]\n },\n \"enableAutoStop\": {\n \"description\": - \"This setting indicates whether auto stop is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\",\n \"type\": \"boolean\"\n },\n \"mesh\": - {\n \"description\": \"The mesh for projecting the video if projection - is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding - of 3D mesh data that follows the Spherical Video V2 RFC specification for - an mshp box, excluding the box size and type but including the following four - reserved zero bytes for the version and flags.\",\n \"type\": \"string\",\n - \ \"format\": \"byte\"\n },\n \"enableEmbed\": {\n \"description\": - \"This setting indicates whether the broadcast video can be played in an embedded - player. If you choose to archive the video (using the enableArchive property), - this setting will also apply to the archived video.\",\n \"type\": - \"boolean\"\n },\n \"monitorStream\": {\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\",\n \"$ref\": \"MonitorStreamInfo\"\n - \ },\n \"startWithSlate\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\"\n },\n \"boundStreamId\": - {\n \"type\": \"string\",\n \"description\": \"This value - uniquely identifies the live stream bound to the broadcast.\"\n },\n - \ \"enableClosedCaptions\": {\n \"description\": \"This setting - indicates whether HTTP POST closed captioning is enabled for this broadcast. - The ingestion URL of the closed captions is returned through the liveStreams - API. This is mutually exclusive with using the closed_captions_type property, - and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"projection\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ]\n },\n \"enableLowLatency\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast has low latency enabled.\"\n }\n },\n \"description\": - \"Detailed settings of a broadcast.\"\n },\n \"PlaylistItemListResponse\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistItemListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n + \ \"videoWatched\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The reason that the resource is recommended to + the user.\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the recommended resource.\"\n },\n \"seedResourceId\": + {\n \"description\": \"The seedResourceId object contains information + about the resource that caused the recommendation.\",\n \"$ref\": + \"ResourceId\"\n }\n }\n },\n \"CommentThreadListResponse\": + {\n \"id\": \"CommentThreadListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n + \ \"default\": \"youtube#commentThreadListResponse\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"description\": \"A list of playlist items - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"type\": \"array\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n }\n },\n \"PageInfo\": {\n \"id\": \"PageInfo\",\n - \ \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\",\n \"type\": \"object\",\n \"properties\": {\n \"resultsPerPage\": - {\n \"type\": \"integer\",\n \"description\": \"The number - of results included in the API response.\",\n \"format\": \"int32\"\n - \ },\n \"totalResults\": {\n \"type\": \"integer\",\n - \ \"description\": \"The total number of results in the result set.\",\n - \ \"format\": \"int32\"\n }\n }\n },\n \"ChannelStatus\": - {\n \"type\": \"object\",\n \"id\": \"ChannelStatus\",\n \"description\": - \"JSON template for the status part of a channel.\",\n \"properties\": - {\n \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"longUploadsStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The long uploads status of this channel. See - https://support.google.com/youtube/answer/71673 for more information.\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"privacyStatus\": {\n \"enumDescriptions\": + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"CommentThread\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of comment threads that match the request criteria.\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n }\n }\n },\n \"LiveBroadcast\": + {\n \"id\": \"LiveBroadcast\",\n \"type\": \"object\",\n \"properties\": + {\n \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n \"description\": + \"The status object contains information about the event's status.\"\n },\n + \ \"statistics\": {\n \"description\": \"The statistics object + contains info about the event's current stats. These include concurrent viewers + and total chat count. Statistics can change (in either direction) during the + lifetime of an event. Statistics are only returned while the event is live.\",\n + \ \"$ref\": \"LiveBroadcastStatistics\"\n },\n \"kind\": + {\n \"default\": \"youtube#liveBroadcast\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n + \ \"type\": \"string\"\n },\n \"contentDetails\": {\n + \ \"$ref\": \"LiveBroadcastContentDetails\",\n \"description\": + \"The contentDetails object contains information about the event's video content, + such as whether the content can be shown in an embedded video player or if + it will be archived and therefore available for viewing after the event has + concluded.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"id\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + assigns to uniquely identify the broadcast.\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the event, including its title, description, + start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n + \ }\n },\n \"description\": \"A *liveBroadcast* resource represents + an event that will be streamed, via live video, on YouTube.\"\n },\n \"WatchSettings\": + {\n \"type\": \"object\",\n \"description\": \"Branding properties + for the watch. All deprecated.\",\n \"id\": \"WatchSettings\",\n \"properties\": + {\n \"textColor\": {\n \"description\": \"The background color + for the video watch page's branded area.\",\n \"type\": \"string\"\n + \ },\n \"backgroundColor\": {\n \"type\": \"string\",\n + \ \"description\": \"The text color for the video watch page's branded + area.\"\n },\n \"featuredPlaylistId\": {\n \"type\": + \"string\",\n \"description\": \"An ID that uniquely identifies a + playlist that displays next to the video player.\"\n }\n }\n },\n + \ \"ChannelAuditDetails\": {\n \"properties\": {\n \"communityGuidelinesGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel respects the community guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel has any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": + {\n \"description\": \"Whether or not the channel has any unresolved + claims.\",\n \"type\": \"boolean\"\n }\n },\n \"description\": + \"The auditDetails object encapsulates channel data that is relevant for YouTube + Partners during the audit process.\",\n \"type\": \"object\",\n \"id\": + \"ChannelAuditDetails\"\n },\n \"LiveBroadcastStatus\": {\n \"type\": + \"object\",\n \"properties\": {\n \"recordingStatus\": {\n \"enumDescriptions\": + [\n \"No value or the value is unknown.\",\n \"The recording + has not yet been started.\",\n \"The recording is currently on.\",\n + \ \"The recording is completed, and cannot be started again.\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The broadcast's recording status.\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n + \ \"notRecording\",\n \"recording\",\n \"recorded\"\n + \ ]\n },\n \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"Privacy - status of the channel.\",\n \"type\": \"string\"\n },\n \"isLinked\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n }\n }\n - \ },\n \"ActivityContentDetailsUpload\": {\n \"description\": \"Information - about the uploaded video.\",\n \"id\": \"ActivityContentDetailsUpload\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the uploaded video.\"\n }\n }\n - \ },\n \"Caption\": {\n \"description\": \"A *caption* resource - represents a YouTube caption track. A caption track is associated with exactly - one YouTube video.\",\n \"type\": \"object\",\n \"id\": \"Caption\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#caption\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#caption\"\n },\n \"id\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the caption track.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"CaptionSnippet\",\n \"description\": \"The snippet object contains - basic details about the caption.\"\n }\n }\n },\n \"PlaylistPlayer\": - {\n \"type\": \"object\",\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\"\n }\n },\n - \ \"id\": \"PlaylistPlayer\"\n },\n \"CommentListResponse\": {\n - \ \"type\": \"object\",\n \"id\": \"CommentListResponse\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"A list of comments that match the request criteria.\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#commentListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n }\n }\n },\n \"ActivityContentDetailsSubscription\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that the user subscribed to.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"type\": \"object\",\n \"description\": \"Information about a - channel that a user subscribed to.\"\n },\n \"RelatedEntity\": {\n \"id\": - \"RelatedEntity\",\n \"properties\": {\n \"entity\": {\n \"$ref\": - \"Entity\"\n }\n },\n \"type\": \"object\"\n },\n \"LocalizedString\": - {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ },\n \"language\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LocalizedString\",\n \"type\": \"object\"\n - \ },\n \"VideoSuggestions\": {\n \"type\": \"object\",\n \"id\": - \"VideoSuggestions\",\n \"properties\": {\n \"processingHints\": - {\n \"description\": \"A list of suggestions that may improve YouTube's - ability to process the video.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"tagSuggestions\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoSuggestionsTagSuggestion\"\n },\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\"\n },\n \"processingErrors\": {\n \"items\": - {\n \"enumDescriptions\": [\n \"File contains audio - only (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n - \ \"Movie project file (e.g., Microsoft Windows Movie Maker project).\",\n - \ \"Other non-video file.\",\n \"Document or text - file (e.g., MS Word document).\",\n \"An archive file (e.g., - a ZIP archive).\",\n \"Unsupported spatial audio layout type.\"\n - \ ],\n \"enum\": [\n \"audioFile\",\n \"imageFile\",\n - \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n - \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\"\n },\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\",\n \"type\": \"array\"\n },\n \"processingWarnings\": - {\n \"type\": \"array\",\n \"items\": {\n \"enum\": - [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ]\n },\n \"description\": \"A list of reasons - why YouTube may have difficulty transcoding the uploaded video or that might - result in an erroneous transcoding. These warnings are generated before YouTube - actually processes the uploaded video file. In addition, they identify issues - that are unlikely to cause the video processing to fail but that might cause - problems such as sync issues, video artifacts, or a missing audio track.\"\n - \ },\n \"editorSuggestions\": {\n \"items\": {\n \"enum\": - [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ]\n - \ },\n \"description\": \"A list of video editing operations - that might improve the video quality or playback experience of the uploaded - video.\",\n \"type\": \"array\"\n }\n },\n \"description\": - \"Specifies suggestions on how to improve video content, including encoding - hints, tag suggestions, and editor suggestions.\"\n },\n \"I18nLanguage\": - {\n \"type\": \"object\",\n \"id\": \"I18nLanguage\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n language.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"default\": \"youtube#i18nLanguage\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the i18n language, such as language code - and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n - \ }\n },\n \"description\": \"An *i18nLanguage* resource identifies - a UI language currently supported by YouTube.\"\n },\n \"VideoStatistics\": - {\n \"id\": \"VideoStatistics\",\n \"type\": \"object\",\n \"properties\": - {\n \"favoriteCount\": {\n \"description\": \"The number of - users who currently have the video marked as a favorite video.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"commentCount\": - {\n \"description\": \"The number of comments for the video.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"viewCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of times the video has been viewed.\",\n \"type\": \"string\"\n - \ },\n \"dislikeCount\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The number of - users who have indicated that they disliked the video by giving it a negative - rating.\"\n },\n \"likeCount\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of users who have indicated that they - liked the video by giving it a positive rating.\",\n \"format\": - \"uint64\"\n }\n },\n \"description\": \"Statistics about - the video, such as the number of times the video was viewed or liked.\"\n - \ },\n \"LiveStreamStatus\": {\n \"type\": \"object\",\n \"id\": - \"LiveStreamStatus\",\n \"description\": \"Brief description of the live - stream status.\",\n \"properties\": {\n \"healthStatus\": {\n - \ \"description\": \"The health status of the stream.\",\n \"$ref\": - \"LiveStreamHealthStatus\"\n },\n \"streamStatus\": {\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ }\n },\n \"LiveStreamSnippet\": {\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The stream's - description. The value cannot be longer than 10000 characters.\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that is transmitting the stream.\",\n - \ \"type\": \"string\"\n },\n \"isDefaultStream\": {\n - \ \"type\": \"boolean\"\n },\n \"publishedAt\": {\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the stream was created.\",\n \"format\": \"date-time\"\n - \ },\n \"title\": {\n \"description\": \"The stream's - title. The value must be between 1 and 128 characters long.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveStreamSnippet\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsComment\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with the comment.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Information - about a resource that received a comment.\",\n \"id\": \"ActivityContentDetailsComment\"\n - \ },\n \"ChannelConversionPings\": {\n \"properties\": {\n \"pings\": - {\n \"type\": \"array\",\n \"description\": \"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.\",\n - \ \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ }\n }\n },\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"type\": \"object\",\n \"id\": \"ChannelConversionPings\"\n - \ },\n \"ContentRating\": {\n \"type\": \"object\",\n \"id\": - \"ContentRating\",\n \"properties\": {\n \"fcoRating\": {\n \"enum\": - [\n \"fcoUnspecified\",\n \"fcoI\",\n \"fcoIia\",\n - \ \"fcoIib\",\n \"fcoIi\",\n \"fcoIii\",\n - \ \"fcoUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Hong Kong's Office for - Film, Newspaper and Article Administration.\",\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ]\n - \ },\n \"mcstRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n - \ \"description\": \"The video's rating system for Vietnam - MCST\"\n - \ },\n \"chvrsRating\": {\n \"enum\": [\n \"chvrsUnspecified\",\n - \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n - \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n - \ \"chvrsUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Canadian Home Video Rating System - (CHVRS) rating.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"private\"\n ],\n \"type\": \"string\",\n \"description\": + \"The broadcast's privacy status. Note that the broadcast represents exactly + one YouTube video, so the privacy settings are identical to those supported + for videos. In addition, you can set this field by modifying the broadcast + resource or by setting the privacyStatus field of the corresponding video + resource.\"\n },\n \"liveBroadcastPriority\": {\n \"enumDescriptions\": + [\n \"\",\n \"Low priority broadcast: for low view count + HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: + for regular HoAs and broadcasts.\",\n \"High priority broadcast: + for high profile HoAs, like PixelCorp ones.\"\n ],\n \"description\": + \"Priority of the live broadcast event (internal state).\",\n \"enum\": + [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n + \ \"normal\",\n \"high\"\n ],\n \"type\": + \"string\"\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": + \"boolean\",\n \"description\": \"This field will be set to True + if the creator declares the broadcast to be kids only: go/live-cw-work.\"\n + \ },\n \"madeForKids\": {\n \"description\": \"Whether + the broadcast is made for kids or not, decided by YouTube instead of the creator. + This field is read only.\",\n \"type\": \"boolean\"\n },\n + \ \"lifeCycleStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"No value or the value is unknown.\",\n \"Incomplete + settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible + only to partner, may need special UI treatment\",\n \"Viper is + recording; this means the \\\"clock\\\" is running\",\n \"The broadcast + is finished.\",\n \"This broadcast was removed by admin action\",\n + \ \"Transition into TESTING has been requested\",\n \"Transition + into LIVE has been requested\"\n ],\n \"description\": \"The + broadcast's status. The status can be updated using the API's liveBroadcasts.transition + method.\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n + \ \"created\",\n \"ready\",\n \"testing\",\n + \ \"live\",\n \"complete\",\n \"revoked\",\n + \ \"testStarting\",\n \"liveStarting\"\n ]\n + \ }\n },\n \"id\": \"LiveBroadcastStatus\",\n \"description\": + \"Live broadcast state.\"\n },\n \"PlaylistContentDetails\": {\n \"id\": + \"PlaylistContentDetails\",\n \"properties\": {\n \"itemCount\": + {\n \"description\": \"The number of videos in the playlist.\",\n + \ \"type\": \"integer\",\n \"format\": \"uint32\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"ImageSettings\": {\n \"id\": + \"ImageSettings\",\n \"description\": \"Branding properties for images + associated with the channel.\",\n \"type\": \"object\",\n \"properties\": + {\n \"bannerTvMediumImageUrl\": {\n \"description\": \"Banner + image. TV size medium resolution (1280x720).\",\n \"type\": \"string\"\n + \ },\n \"bannerTabletLowImageUrl\": {\n \"description\": + \"Banner image. Tablet size low resolution (1138x188).\",\n \"type\": + \"string\"\n },\n \"largeBrandedBannerImageImapScript\": {\n + \ \"description\": \"The image map script for the large banner image.\",\n + \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTvImageUrl\": + {\n \"description\": \"Banner image. TV size extra high resolution + (2120x1192).\",\n \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": + {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n + \ \"type\": \"string\"\n },\n \"watchIconImageUrl\": + {\n \"type\": \"string\"\n },\n \"bannerImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Desktop size (1060x175).\"\n },\n \"smallBrandedBannerImageUrl\": + {\n \"description\": \"The URL for the 640px by 70px banner image + that appears below the video player in the default view of the video watch + page. The URL for the image that appears above the top-left corner of the + video player. This is a 25-pixel-high image with a flexible width that cannot + exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n + \ \"bannerTabletImageUrl\": {\n \"description\": \"Banner image. + Tablet size (1707x283).\",\n \"type\": \"string\"\n },\n \"trackingImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL for + a 1px by 1px tracking pixel that can be used to collect statistics for views + of the channel or video pages.\"\n },\n \"bannerMobileImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size (640x175).\"\n },\n \"bannerTvHighImageUrl\": {\n + \ \"type\": \"string\",\n \"description\": \"Banner image. + TV size high resolution (1920x1080).\"\n },\n \"backgroundImageUrl\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The URL for the background image shown on the video watch page. The image + should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n + \ \"bannerTvLowImageUrl\": {\n \"type\": \"string\",\n \"description\": + \"Banner image. TV size low resolution (854x480).\"\n },\n \"bannerMobileHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size high resolution (1280x360).\"\n },\n \"bannerMobileExtraHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size high resolution (1440x395).\"\n },\n \"bannerTabletExtraHdImageUrl\": + {\n \"description\": \"Banner image. Tablet size extra high resolution + (2560x424).\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The image map script for the small banner image.\"\n },\n \"bannerTabletHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size high resolution (2276x377).\"\n },\n \"bannerMobileMediumHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size medium/high resolution (960x263).\"\n },\n \"largeBrandedBannerImageUrl\": + {\n \"description\": \"The URL for the 854px by 70px image that appears + below the video player in the expanded video view of the video watch page.\",\n + \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerExternalUrl\": + {\n \"description\": \"This is generated when a ChannelBanner.Insert + request has succeeded for the given channel.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"ContentRating\": {\n \"type\": \"object\",\n + \ \"description\": \"Ratings schemes. The country-specific ratings are + mostly for movies and shows. LINT.IfChange\",\n \"id\": \"ContentRating\",\n + \ \"properties\": {\n \"chvrsRating\": {\n \"enum\": [\n + \ \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n + \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n + \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's Canadian Home Video + Rating System (CHVRS) rating.\",\n \"enumDescriptions\": [\n \"\",\n \ \"G\",\n \"PG\",\n \"14A\",\n \"18A\",\n \ \"R\",\n \"E\",\n \"\"\n ]\n },\n - \ \"djctqRating\": {\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's Departamento de Justi\xE7a, - Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n - \ \"type\": \"string\"\n },\n \"mtrcbRating\": {\n \"enum\": - [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n - \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n - \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ]\n },\n \"cicfRating\": {\n \"enum\": [\n - \ \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Commission - de Contr\xF4le des Films (Belgium).\",\n \"enumDescriptions\": [\n - \ \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ]\n },\n \"chfilmRating\": {\n \"description\": - \"The video's rating in Switzerland.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n - \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n - \ \"chfilm18\",\n \"chfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"pefilmRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in Peru.\",\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"mocRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"description\": \"The - video's Ministerio de Cultura (Colombia) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ]\n },\n \"icaaRating\": - {\n \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ],\n - \ \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ]\n },\n \"smsaRating\": + \ \"eirinRating\": {\n \"description\": \"The video's Eirin + (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n + \ ],\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n + \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n + \ \"eirinUnrated\"\n ]\n },\n \"fcbmRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n + \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from Malaysia's + Film Censorship Board.\",\n \"type\": \"string\",\n \"enum\": + [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n + \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n + \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n + \ \"fcbmUnrated\"\n ]\n },\n \"smsaRating\": {\n \"enumDescriptions\": [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Statens medier\xE5d (Sweden's - National Media Council).\"\n },\n \"csaRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ],\n \"description\": - \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, - which rates broadcast content.\",\n \"enum\": [\n \"csaUnspecified\",\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"smsaUnspecified\",\n + \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n + \ \"smsa15\",\n \"smsaUnrated\"\n ],\n \"description\": + \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\"\n + \ },\n \"ytRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"A rating that YouTube uses to identify age-restricted content.\",\n \"enum\": + [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ]\n + \ },\n \"mccypRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"A\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ],\n \"enum\": [\n + \ \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n + \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) + Media Council for Children and Young People.\"\n },\n \"csaRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"csaUnspecified\",\n \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ]\n },\n \"russiaRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's National Film Registry - of the Russian Federation (MKRF - Russia) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ]\n },\n - \ \"bfvcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n + \ ],\n \"description\": \"The video's rating from France's + Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"Interdiction\",\n \"\"\n ]\n },\n + \ \"egfilmRating\": {\n \"enum\": [\n \"egfilmUnspecified\",\n + \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n + \ \"egfilmUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating in Egypt.\",\n \"enumDescriptions\": + [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n + \ \"\"\n ]\n },\n \"nfrcRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"nfrcUnspecified\",\n \"nfrcA\",\n + \ \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n + \ \"nfrcUnrated\"\n ],\n \"description\": \"The + video's rating from the Bulgarian National Film Center.\",\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n + \ \"D\",\n \"X\",\n \"\"\n ]\n },\n + \ \"kmrbRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 + \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n + \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n + \ \"\"\n ],\n \"enum\": [\n \"kmrbUnspecified\",\n + \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n + \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n + \ ],\n \"description\": \"The video's Korea Media Rating + Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. The KMRB + rates videos in South Korea.\"\n },\n \"pefilmRating\": {\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n \ \"\"\n ],\n \"description\": \"The video's rating - from Thailand's Board of Film and Video Censors.\",\n \"enum\": [\n - \ \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ]\n },\n \"eefilmRating\": {\n \"description\": - \"The video's rating in Estonia.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Pere\",\n \"L\",\n \"MS-6\",\n \"K-6\",\n - \ \"MS-12\",\n \"K-12\",\n \"K-14\",\n \"K-16\",\n - \ \"\"\n ],\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"ecbmctRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"description\": \"Rating system in Turkey - Evaluation - and Classification Board of the Ministry of Culture and Tourism\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ]\n },\n \"acbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n - \ \"description\": \"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.\",\n \"enum\": - [\n \"acbUnspecified\",\n \"acbE\",\n \"acbP\",\n - \ \"acbC\",\n \"acbG\",\n \"acbPg\",\n \"acbM\",\n - \ \"acbMa15plus\",\n \"acbR18plus\",\n \"acbUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"czfilmRating\": - {\n \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n - \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n - \ \"czfilmUnrated\"\n ],\n \"description\": \"The - video's rating in the Czech Republic.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ]\n },\n \"mekuRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Finland's Kansallinen - Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n \"enum\": - [\n \"mekuUnspecified\",\n \"mekuS\",\n \"meku7\",\n - \ \"meku12\",\n \"meku16\",\n \"meku18\",\n - \ \"mekuUnrated\"\n ],\n \"enumDescriptions\": + in Peru.\",\n \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n + \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n + \ \"pefilmUnrated\"\n ]\n },\n \"mekuRating\": + {\n \"description\": \"The video's rating from Finland's Kansallinen + Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n \"enumDescriptions\": [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"rtcRating\": {\n \"enum\": [\n \"rtcUnspecified\",\n - \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n - \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n - \ ],\n \"description\": \"The video's General Directorate - of Radio, Television and Cinematography (Mexico) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"cscfRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n + \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"mekuUnspecified\",\n + \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n + \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n + \ ]\n },\n \"fskRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK + 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"fskUnspecified\",\n + \ \"fsk0\",\n \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n + \ \"fsk18\",\n \"fskUnrated\"\n ],\n \"description\": + \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) + rating.\"\n },\n \"menaMpaaRating\": {\n \"enum\": + [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n + \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"R\",\n \"To keep the same enum values as MPAA's items + have, skip NC_17.\"\n ],\n \"description\": \"The rating + system for MENA countries, a clone of MPAA. It is needed to prevent titles + go live w/o additional QC check, since some of them can be inappropriate for + the countries at all. See b/33408548 for more details.\"\n },\n \"cceRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"4\",\n + \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\",\n \"14\"\n ],\n \"enum\": [\n + \ \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n + \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n + \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"description\": + \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de + Espect\xB4culos.\",\n \"type\": \"string\"\n },\n \"incaaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"ATP + (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 + a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n + \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X + (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) + rating.\",\n \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n + \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n + \ \"incaaC\",\n \"incaaUnrated\"\n ]\n },\n + \ \"catvRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n + \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n + \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"C\",\n + \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n + \ \"18+\",\n \"\",\n \"\"\n ],\n + \ \"description\": \"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.\"\n },\n \"moctwRating\": + {\n \"description\": \"The video's rating from Taiwan's Ministry + of Culture (\u6587\u5316\u90E8).\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"P\",\n \"PG\",\n \"R\",\n + \ \"\",\n \"R-12\",\n \"R-15\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"moctwUnspecified\",\n + \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n + \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n + \ \"moctwR15\"\n ]\n },\n \"anatelRating\": + {\n \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n + \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n + \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n + \ \"anatelUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n + \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n + \ \"\"\n ],\n \"description\": \"The video's Anatel + (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\",\n + \ \"type\": \"string\"\n },\n \"icaaRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's Instituto de la Cinematograf\xEDa + y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n + \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n + \ \"\"\n ],\n \"enum\": [\n \"icaaUnspecified\",\n + \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n + \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n + \ \"icaaX\",\n \"icaaUnrated\"\n ]\n },\n + \ \"mcstRating\": {\n \"description\": \"The video's rating + system for Vietnam - MCST\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n + \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n + \ \"\"\n ],\n \"enum\": [\n \"mcstUnspecified\",\n + \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n + \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n + \ \"mcstGPg\",\n \"mcstUnrated\"\n ]\n },\n + \ \"lsfRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"enum\": + [\n \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n + \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n + \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n + \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n + \ \"17\",\n \"D\",\n \"21\",\n \"\"\n + \ ]\n },\n \"cscfRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"AL\",\n \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n \ \"16\",\n \"18\",\n \"\"\n ],\n \ \"description\": \"The video's rating from Luxembourg's Commission @@ -9658,2370 +2943,6469 @@ interactions: [\n \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"mibacRating\": - {\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Ministero dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n - \ \"type\": \"string\"\n },\n \"cbfcRating\": {\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"cbfcUnspecified\",\n + \ ]\n },\n \"bmukkRating\": {\n \"description\": + \"The video's rating from the Austrian Board of Media Classification (Bundesministerium + f\xFCr Unterricht, Kunst und Kultur).\",\n \"enumDescriptions\": + [\n \"\",\n \"Unrestricted\",\n \"6+\",\n + \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n + \ \"16+\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n + \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n + \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n + \ \"bmukkUnrated\"\n ]\n },\n \"cbfcRating\": + {\n \"description\": \"The video's Central Board of Film Certification + (CBFC - India) rating.\",\n \"enum\": [\n \"cbfcUnspecified\",\n \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ]\n },\n \"lsfRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Indonesia's - Lembaga Sensor Film.\",\n \"enum\": [\n \"lsfUnspecified\",\n - \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n - \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n - \ \"lsfUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"fcbmRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n - \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n - \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n - \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ],\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\"\n },\n - \ \"fskRating\": {\n \"description\": \"The video's Freiwillige - Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"menaMpaaRating\": {\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ],\n \"type\": \"string\"\n },\n \"mpaaRating\": - {\n \"description\": \"The video's Motion Picture Association of - America (MPAA) rating.\",\n \"enum\": [\n \"mpaaUnspecified\",\n - \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n - \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n - \ \"mpaaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n - \ \"! X\",\n \"\"\n ]\n },\n \"fpbRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\"\n },\n \"oflcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"oflcUnspecified\",\n - \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n - \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n - \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n - \ \"oflcRp16\",\n \"oflcRp18\"\n ],\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\"\n },\n \"catvfrRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ],\n \"description\": \"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.\"\n },\n \"anatelRating\": - {\n \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n - \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n - \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n - \ \"anatelUnrated\"\n ],\n \"description\": \"The - video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean - television.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ]\n },\n \"nbcplRating\": {\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"description\": \"The - video's rating in Poland.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"mpaatRating\": {\n \"description\": \"The rating system - for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ],\n \"type\": - \"string\"\n },\n \"fmocRating\": {\n \"enumDescriptions\": + \ \"S\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"cnaRating\": {\n \"enum\": [\n \"cnaUnspecified\",\n + \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n + \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"description\": + \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI + (CNA).\",\n \"enumDescriptions\": [\n \"\",\n \"AP\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"djctqRatingReasons\": {\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\",\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n + \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n + \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n + \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n + \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n + \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"Brazil rating content descriptors. See http://go/brazilratings + section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema + (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n + \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo + Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas + L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n + \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos + Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting + content)\"\n ]\n },\n \"description\": \"Reasons + that explain why the video received its DJCQT (Brazil) rating.\"\n },\n + \ \"acbRating\": {\n \"enum\": [\n \"acbUnspecified\",\n + \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n + \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n + \ \"acbR18plus\",\n \"acbUnrated\"\n ],\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"Programs that have + been given a P classification by the Australian Communications and Media Authority. + These programs are intended for preschool children.\",\n \"Programs + that have been given a C classification by the Australian Communications and + Media Authority. These programs are intended for children (other than preschool + children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n + \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n + \ ]\n },\n \"fmocRating\": {\n \"description\": + \"This property has been deprecated. Use the contentDetails.contentRating.cncRating + instead.\",\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n + \ ],\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ]\n },\n \"bmukkRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"enum\": - [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n \"bmukk6\",\n - \ \"bmukk8\",\n \"bmukk10\",\n \"bmukk12\",\n - \ \"bmukk14\",\n \"bmukk16\",\n \"bmukkUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Austrian - Board of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst - und Kultur).\",\n \"type\": \"string\"\n },\n \"rcnofRating\": - {\n \"description\": \"The video's rating from the Hungarian Nemzeti - Filmiroda, the Rating Committee of the National Office of Film.\",\n \"type\": - \"string\",\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"ilfilmRating\": - {\n \"description\": \"The video's rating in Israel.\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"tvpgRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"description\": \"The video's TV - Parental Guidelines (TVPG) rating.\",\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"smaisRating\": {\n \"description\": \"The video's - rating in Iceland.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ]\n },\n \"fpbRatingReasons\": {\n \"type\": - \"array\",\n \"description\": \"Reasons that explain why the video - received its FPB (South Africa) rating.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ],\n \"type\": - \"string\"\n }\n },\n \"incaaRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n - \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n - \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"description\": - \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ]\n },\n \"skfilmRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Slovakia.\",\n - \ \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n - \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n - \ \"skfilmUnrated\"\n ]\n },\n \"kfcbRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"kfcbUnspecified\",\n - \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n - \ \"kfcbR\",\n \"kfcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\"\n },\n - \ \"grfilmRating\": {\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Greece.\",\n \"type\": - \"string\"\n },\n \"cnaRating\": {\n \"description\": - \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\",\n \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"ytRating\": {\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ]\n },\n \"kmrbRating\": {\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ]\n },\n \"catvRating\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ]\n },\n \"cccRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n - \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Todo espectador\",\n - \ \"6+ - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n - \ \"18+\",\n \"18+ - contenido excesivamente violento\",\n - \ \"18+ - contenido pornogr\xE1fico\",\n \"\"\n ]\n - \ },\n \"nfrcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Bulgarian - National Film Center.\"\n },\n \"nkclvRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Nacion\xE3lais - Kino centrs (National Film Centre of Latvia).\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n - \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n - \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ]\n - \ },\n \"nmcRating\": {\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ],\n - \ \"description\": \"The National Media Council ratings system for - United Arab Emirates.\"\n },\n \"cceRating\": {\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"type\": \"string\"\n },\n \"nbcRating\": - {\n \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n + \ ]\n },\n \"nbcRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n + \ \"18+R\",\n \"PU\",\n \"\"\n ],\n + \ \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Maldives National - Bureau of Classification.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12+\",\n \"15+\",\n - \ \"18+\",\n \"18+R\",\n \"PU\",\n \"\"\n - \ ]\n },\n \"cncRating\": {\n \"description\": - \"Rating system in France - Commission de classification cinematographique\",\n - \ \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n + \ \"nbcUnrated\"\n ],\n \"description\": \"The + video's rating from the Maldives National Bureau of Classification.\"\n },\n + \ \"fpbRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"A\",\n \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n + \ \"13\",\n \"16\",\n \"18\",\n \"X18\",\n + \ \"XX\",\n \"\",\n \"10\"\n ],\n + \ \"description\": \"The video's rating from South Africa's Film and + Publication Board.\",\n \"type\": \"string\",\n \"enum\": + [\n \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n + \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n + \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n + \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n + \ ]\n },\n \"mpaatRating\": {\n \"description\": + \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n + \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n + \ \"mpaatRb\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"GB\",\n \"RB\"\n ],\n + \ \"type\": \"string\"\n },\n \"resorteviolenciaRating\": + {\n \"description\": \"The video's rating in Venezuela.\",\n \"enum\": + [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n + \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n + \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ]\n },\n \"egfilmRating\": {\n \"enum\": - [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n \"egfilm18\",\n - \ \"egfilmBn\",\n \"egfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Egypt.\",\n \"type\": \"string\"\n },\n \"ifcoRating\": - {\n \"description\": \"The video's Irish Film Classification Office - (IFCO - Ireland) rating. See the IFCO website for more information.\",\n \"enum\": - [\n \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"bbfcRating\": {\n \"enum\": [\n \"bbfcUnspecified\",\n + [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n + \ \"D\",\n \"E\",\n \"\"\n ]\n },\n + \ \"czfilmRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating in the Czech Republic.\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n + \ \"18\",\n \"\"\n ],\n \"enum\": [\n + \ \"czfilmUnspecified\",\n \"czfilmU\",\n \"czfilm12\",\n + \ \"czfilm14\",\n \"czfilm18\",\n \"czfilmUnrated\"\n + \ ]\n },\n \"eefilmRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n + \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n + \ \"K-16\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating in Estonia.\",\n + \ \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n + \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n + \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n + \ \"eefilmK16\",\n \"eefilmUnrated\"\n ]\n },\n + \ \"mtrcbRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n + \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from the Movie + and Television Review and Classification Board (Philippines).\",\n \"enum\": + [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n + \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n + \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ]\n },\n + \ \"mccaaRating\": {\n \"description\": \"The video's rating + from Malta's Film Age-Classification Board.\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n + \ \"12\",\n \"14 - this rating was removed from the new + classification structure introduced in 2013.\",\n \"15\",\n \"16 + - this rating was removed from the new classification structure introduced + in 2013.\",\n \"18\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n + \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n + \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n + \ \"mccaa18\",\n \"mccaaUnrated\"\n ]\n },\n + \ \"bbfcRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"U\",\n \"PG\",\n \"12A\",\n \"12\",\n + \ \"15\",\n \"18\",\n \"R18\",\n \"\"\n + \ ],\n \"description\": \"The video's British Board of Film + Classification (BBFC) rating.\",\n \"enum\": [\n \"bbfcUnspecified\",\n \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's British Board of Film - Classification (BBFC) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG\",\n \"12A\",\n \"12\",\n - \ \"15\",\n \"18\",\n \"R18\",\n \"\"\n - \ ]\n },\n \"kijkwijzerRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating - from the Nederlands Instituut voor de Classificatie van Audiovisuele Media - (Netherlands).\"\n },\n \"moctwRating\": {\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n - \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ]\n },\n \"mdaRating\": {\n \"enumDescriptions\": + \"string\"\n },\n \"rcnofRating\": {\n \"enum\": [\n + \ \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n + \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n + \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from the Hungarian + Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\",\n + \ \"type\": \"string\"\n },\n \"smaisRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n + \ \"smais7\",\n \"smais12\",\n \"smais14\",\n + \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n + \ ],\n \"description\": \"The video's rating in Iceland.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"L\",\n + \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n + \ \"18\",\n \"\"\n ]\n },\n \"nmcRating\": + {\n \"type\": \"string\",\n \"description\": \"The National + Media Council ratings system for United Arab Emirates.\",\n \"enum\": + [\n \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n + \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n + \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n + \ \"18+\",\n \"18TC\",\n \"\"\n ]\n + \ },\n \"nkclvRating\": {\n \"description\": \"The video's + rating from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\",\n + \ \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n + \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n + \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"cicfRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n + \ \"enumDescriptions\": [\n \"\",\n \"E\",\n + \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n + \ \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n + \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n + \ ]\n },\n \"ifcoRating\": {\n \"enum\": [\n + \ \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n + \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n + \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n + \ \"ifcoUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n + \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n + \ ],\n \"description\": \"The video's Irish Film Classification + Office (IFCO - Ireland) rating. See the IFCO website for more information.\"\n + \ },\n \"rteRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"GA\",\n + \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n + \ ],\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n + \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n + \ ]\n },\n \"medietilsynetRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from Medietilsynet, + the Norwegian Media Authority.\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n + \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n + \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n + \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n + \ ]\n },\n \"djctqRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n + \ \"14\",\n \"16\",\n \"18\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n + \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n + \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n + \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n + \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n + \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n + \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n + \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n + \ \"djctqUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, + Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\"\n },\n \"cncRating\": + {\n \"description\": \"Rating system in France - Commission de classification + cinematographique\",\n \"enumDescriptions\": [\n \"\",\n + \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n + \ \"18\",\n \"E\",\n \"interdiction\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"cncUnspecified\",\n + \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n + \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n + \ \"cncUnrated\"\n ]\n },\n \"agcomRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"T\",\n \"VM14\",\n \"VM18\",\n \"\"\n + \ ],\n \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n + \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n + \ ],\n \"description\": \"The video's rating from Italy's + Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\"\n },\n \"nfvcbRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n + \ \"18\",\n \"RE\",\n \"\"\n ],\n + \ \"description\": \"The video's rating from Nigeria's National Film + and Video Censors Board.\",\n \"enum\": [\n \"nfvcbUnspecified\",\n + \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n + \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n + \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"nbcplRating\": {\n \"enum\": [\n + \ \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n + \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n + \ \"nbcplUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The video's rating in Poland.\",\n \"type\": \"string\"\n },\n + \ \"mdaRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating from Singapore's Media Development Authority (MDA) and, + specifically, it's Board of Film Censors (BFC).\",\n \"enum\": [\n + \ \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n + \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n + \ \"mdaR21\",\n \"mdaUnrated\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Singapore's - Media Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\",\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"nfvcbRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"18\",\n \"RE\",\n \"\"\n - \ ],\n \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ],\n \"description\": \"The - video's rating from Nigeria's National Film and Video Censors Board.\"\n },\n - \ \"medietilsynetRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Medietilsynet, the Norwegian Media Authority.\",\n \"type\": - \"string\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ]\n },\n \"eirinRating\": {\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG-12\",\n \"R15+\",\n \"R18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ]\n - \ },\n \"agcomRating\": {\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n + \ ]\n },\n \"ilfilmRating\": {\n \"enum\": + [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n + \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n + \ \"ilfilmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n + \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"description\": \"The video's rating in Israel.\",\n \"type\": + \"string\"\n },\n \"bfvcRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n + \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\"\n },\n \"resorteviolenciaRating\": {\n \"description\": - \"The video's rating in Venezuela.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ],\n \"enum\": - [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"mccaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Malta's Film Age-Classification Board.\",\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"djctqRatingReasons\": - {\n \"type\": \"array\",\n \"description\": \"Reasons that - explain why the video received its DJCQT (Brazil) rating.\",\n \"items\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Brazil rating content descriptors. See - http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ],\n \"enum\": [\n - \ \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ]\n }\n },\n - \ \"mccypRating\": {\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Danish Film Institute's - (Det Danske Filminstitut) Media Council for Children and Young People.\"\n - \ },\n \"rteRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"description\": \"The video's rating from Ireland's - Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ]\n }\n },\n - \ \"description\": \"Ratings schemes. The country-specific ratings are - mostly for movies and shows. LINT.IfChange\"\n },\n \"SuperChatEventSnippet\": - {\n \"type\": \"object\",\n \"id\": \"SuperChatEventSnippet\",\n - \ \"properties\": {\n \"displayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the purchase amount and currency (e.g., \\\"$1.00\\\"). The string is rendered - for the given language.\"\n },\n \"messageType\": {\n \"format\": + \"The video's rating from Thailand's Board of Film and Video Censors.\",\n + \ \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n + \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n + \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n + \ \"bfvcUnrated\"\n ]\n },\n \"skfilmRating\": + {\n \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n + \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n + \ \"skfilmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n + \ \"P8\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating in Slovakia.\"\n },\n + \ \"mocRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"E\",\n \"T\",\n \"7\",\n \"12\",\n + \ \"15\",\n \"18\",\n \"X\",\n \"Banned\",\n + \ \"\"\n ],\n \"description\": \"The video's Ministerio + de Cultura (Colombia) rating.\",\n \"enum\": [\n \"mocUnspecified\",\n + \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n + \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n + \ \"mocUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"fpbRatingReasons\": {\n \"items\": {\n \"enumDescriptions\": + [\n \"\",\n \"South Africa rating content descriptors.\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": + [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n + \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n + \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n + \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n + \ \"fpbImitativeActsTechniques\"\n ],\n \"type\": + \"string\"\n },\n \"type\": \"array\",\n \"description\": + \"Reasons that explain why the video received its FPB (South Africa) rating.\"\n + \ },\n \"kfcbRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Kenya Film Classification Board.\",\n \"enum\": + [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n + \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n + \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n + \ ]\n },\n \"catvfrRating\": {\n \"description\": + \"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.\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n + \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"catvfrUnspecified\",\n + \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n + \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n + \ \"catvfrE\"\n ],\n \"type\": \"string\"\n },\n + \ \"mibacRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mibacUnspecified\",\n + \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n + \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n + \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"description\": + \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali + e del Turismo (Italy).\"\n },\n \"ecbmctRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n + \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n + \ \"18+\",\n \"\"\n ],\n \"enum\": + [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n + \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n + \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n + \ \"ecbmctUnrated\"\n ],\n \"description\": \"Rating + system in Turkey - Evaluation and Classification Board of the Ministry of + Culture and Tourism\",\n \"type\": \"string\"\n },\n \"fcoRating\": + {\n \"type\": \"string\",\n \"description\": \"The video's + rating from Hong Kong's Office for Film, Newspaper and Article Administration.\",\n + \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n + \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n + \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n + \ \"II\",\n \"III\",\n \"\"\n ]\n + \ },\n \"kijkwijzerRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n + \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n + \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n + \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de + Classificatie van Audiovisuele Media (Netherlands).\"\n },\n \"grfilmRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"K\",\n + \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n + \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n + \ \"description\": \"The video's rating in Greece.\",\n \"enum\": + [\n \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n + \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n + \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"chfilmRating\": + {\n \"description\": \"The video's rating in Switzerland.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"0\",\n + \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"enum\": [\n \"chfilmUnspecified\",\n + \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n + \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n + \ ]\n },\n \"russiaRating\": {\n \"description\": + \"The video's National Film Registry of the Russian Federation (MKRF - Russia) + rating.\",\n \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n + \ \"russia6\",\n \"russia12\",\n \"russia16\",\n + \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n + \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n + \ \"\"\n ]\n },\n \"rtcRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n + \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's General Directorate of Radio, Television and Cinematography + (Mexico) rating.\",\n \"enum\": [\n \"rtcUnspecified\",\n + \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n + \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n + \ ]\n },\n \"mpaaRating\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's Motion Picture Association of America + (MPAA) rating.\",\n \"enum\": [\n \"mpaaUnspecified\",\n + \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n + \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n + \ \"mpaaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n + \ ]\n },\n \"tvpgRating\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's TV Parental Guidelines (TVPG) rating.\",\n + \ \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n + \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n + \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n + \ \"tvpgUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n + \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n + \ \"\"\n ]\n },\n \"cccRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"Todo espectador\",\n \"6+ - + Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n + \ \"18+ - contenido excesivamente violento\",\n \"18+ + - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"description\": + \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n + \ \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n + \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n + \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"oflcRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n + \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n + \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n + \ ],\n \"description\": \"The video's Office of Film and + Literature Classification (OFLC - New Zealand) rating.\",\n \"type\": + \"string\",\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n + \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n + \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n + \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n + \ \"oflcRp18\"\n ]\n }\n }\n },\n \"SubscriptionContentDetails\": + {\n \"description\": \"Details about the content to witch a subscription + refers.\",\n \"type\": \"object\",\n \"properties\": {\n \"activityType\": + {\n \"description\": \"The type of activity this subscription is + for (only uploads, everything).\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n + \ \"all\",\n \"uploads\"\n ]\n },\n \"newItemCount\": + {\n \"description\": \"The number of new items in the subscription + since its content was last read.\",\n \"format\": \"uint32\",\n \"type\": + \"integer\"\n },\n \"totalItemCount\": {\n \"description\": + \"The approximate number of items that the subscription points to.\",\n \"format\": + \"uint32\",\n \"type\": \"integer\"\n }\n },\n \"id\": + \"SubscriptionContentDetails\"\n },\n \"Thumbnail\": {\n \"properties\": + {\n \"url\": {\n \"type\": \"string\",\n \"description\": + \"The thumbnail image's URL.\"\n },\n \"height\": {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\"\n },\n \"amountMicros\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\"\n },\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the purchase was made. - ISO 4217.\"\n },\n \"isSuperStickerEvent\": {\n \"description\": - \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n - \ },\n \"supporterDetails\": {\n \"description\": \"Details - about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n - \ \"channelId\": {\n \"description\": \"Channel id where the - event occurred.\",\n \"type\": \"string\"\n },\n \"createdAt\": + \"(Optional) Height of the thumbnail image.\"\n },\n \"width\": + {\n \"type\": \"integer\",\n \"description\": \"(Optional) + Width of the thumbnail image.\",\n \"format\": \"uint32\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"Thumbnail\",\n \"description\": + \"A thumbnail is an image representing a YouTube resource.\"\n },\n \"I18nLanguageSnippet\": + {\n \"id\": \"I18nLanguageSnippet\",\n \"properties\": {\n \"hl\": + {\n \"type\": \"string\",\n \"description\": \"A short BCP-47 + code that uniquely identifies a language.\"\n },\n \"name\": + {\n \"type\": \"string\",\n \"description\": \"The human-readable + name of the language in the language itself.\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"Basic details about an i18n language, + such as language code and human-readable name.\"\n },\n \"MemberSnippet\": + {\n \"properties\": {\n \"memberDetails\": {\n \"$ref\": + \"ChannelProfileDetails\",\n \"description\": \"Details about the + member.\"\n },\n \"membershipsDetails\": {\n \"$ref\": + \"MembershipsDetails\",\n \"description\": \"Details about the user's + membership.\"\n },\n \"creatorChannelId\": {\n \"type\": + \"string\",\n \"description\": \"The id of the channel that's offering + memberships.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"MemberSnippet\"\n },\n \"PlaylistItemContentDetails\": {\n \"id\": + \"PlaylistItemContentDetails\",\n \"properties\": {\n \"videoPublishedAt\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the video was published + to YouTube.\"\n },\n \"note\": {\n \"description\": + \"A user-generated note for this item.\",\n \"type\": \"string\"\n + \ },\n \"startAt\": {\n \"description\": \"The time, + measured in seconds from the start of the video, when the video should start + playing. (The playlist owner can specify the times when the video should start + and stop playing when the video is played in the context of the playlist.) + The default value is 0.\",\n \"type\": \"string\"\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify a video. To retrieve the video resource, + set the id query parameter to this value in your API request.\"\n },\n + \ \"endAt\": {\n \"type\": \"string\",\n \"description\": + \"The time, measured in seconds from the start of the video, when the video + should stop playing. (The playlist owner can specify the times when the video + should start and stop playing when the video is played in the context of the + playlist.) By default, assume that the video.endTime is the end of the video.\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"MemberListResponse\": + {\n \"id\": \"MemberListResponse\",\n \"type\": \"object\",\n \"properties\": + {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#memberListResponse\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"Member\"\n },\n \"type\": \"array\",\n + \ \"description\": \"A list of members that match the request criteria.\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n }\n }\n },\n \"ActivitySnippet\": + {\n \"id\": \"ActivitySnippet\",\n \"properties\": {\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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.\"\n },\n \"publishedAt\": {\n \"type\": + \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the video was uploaded.\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The title + of the resource primarily associated with the activity.\"\n },\n \"channelTitle\": + {\n \"description\": \"Channel title for the channel responsible + for this activity\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the channel associated with the activity.\",\n \"type\": \"string\"\n + \ },\n \"groupId\": {\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"description\": {\n \"description\": + \"The description of the resource primarily associated with the activity. + @mutable youtube.activities.insert\",\n \"type\": \"string\"\n },\n + \ \"type\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The type of activity that the resource + describes.\",\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n + \ \"like\",\n \"favorite\",\n \"comment\",\n + \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n + \ \"bulletin\",\n \"social\",\n \"channelItem\",\n + \ \"promotedItem\"\n ]\n }\n },\n \"type\": + \"object\",\n \"description\": \"Basic details about an activity, including + title, description, thumbnails, activity type and group. Next ID: 12\"\n },\n + \ \"PageInfo\": {\n \"id\": \"PageInfo\",\n \"description\": \"Paging + details for lists of resources, including total number of items available + and number of resources returned in a single page.\",\n \"properties\": + {\n \"totalResults\": {\n \"description\": \"The total number + of results in the result set.\",\n \"format\": \"int32\",\n \"type\": + \"integer\"\n },\n \"resultsPerPage\": {\n \"format\": + \"int32\",\n \"description\": \"The number of results included in + the API response.\",\n \"type\": \"integer\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"I18nRegionListResponse\": {\n \"id\": + \"I18nRegionListResponse\",\n \"properties\": {\n \"items\": {\n + \ \"type\": \"array\",\n \"description\": \"A list of regions + where YouTube is available. In this map, the i18n region ID is the map key, + and its value is the corresponding i18nRegion resource.\",\n \"items\": + {\n \"$ref\": \"I18nRegion\"\n }\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"kind\": {\n \"default\": + \"youtube#i18nRegionListResponse\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"properties\": + {\n \"associatedMembershipGiftingMessageId\": {\n \"description\": + \"The ID of the membership gifting message that is related to this gift membership. + This ID will always refer to a message whose type is 'membershipGiftingEvent'.\",\n + \ \"type\": \"string\"\n },\n \"gifterChannelId\": {\n + \ \"description\": \"The ID of the user that made the membership gifting + purchase. This matches the `snippet.authorChannelId` of the associated membership + gifting message.\",\n \"type\": \"string\"\n },\n \"memberLevelName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` + of the associated membership gifting message. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\"\n }\n },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n + \ \"type\": \"object\"\n },\n \"ChannelConversionPings\": {\n \"id\": + \"ChannelConversionPings\",\n \"description\": \"The conversionPings + object encapsulates information about conversion pings that need to be respected + by the channel.\",\n \"type\": \"object\",\n \"properties\": {\n + \ \"pings\": {\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n + \ },\n \"type\": \"array\",\n \"description\": \"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.\"\n }\n }\n },\n \"InvideoPosition\": {\n \"id\": + \"InvideoPosition\",\n \"properties\": {\n \"cornerPosition\": + {\n \"enum\": [\n \"topLeft\",\n \"topRight\",\n + \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"type\": + \"string\",\n \"description\": \"Describes in which corner of the + video the visual widget will appear.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"type\": {\n \"description\": \"Defines + the position type.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\"\n ],\n \"enum\": [\n \"corner\"\n + \ ]\n }\n },\n \"description\": \"Describes the spatial + position of a visual widget inside a video. It is a union of various position + types, out of which only will be set one.\",\n \"type\": \"object\"\n + \ },\n \"PlaylistItem\": {\n \"description\": \"A *playlistItem* + resource identifies another resource, such as a video, that is included in + a playlist. In addition, the playlistItem resource contains details about + the included resource that pertain specifically to how that resource is used + in that playlist. YouTube uses playlists to identify special collections of + videos for a channel, such as: - uploaded videos - favorite videos - positively + rated (liked) videos - watch history - watch later To be more specific, these + lists are associated with a channel, which is a collection of a person, group, + or company's videos, playlists, and other YouTube information. You can retrieve + the playlist IDs for each of these lists from the channel resource for a given + channel. You can then use the playlistItems.list method to retrieve any of + those lists. You can also add or remove items from those lists by calling + the playlistItems.insert and playlistItems.delete methods. For example, if + a user gives a positive rating to a video, you would insert that video into + the liked videos playlist for that user's channel.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the playlist item, such as its title and position in the playlist.\",\n + \ \"$ref\": \"PlaylistItemSnippet\"\n },\n \"contentDetails\": + {\n \"$ref\": \"PlaylistItemContentDetails\",\n \"description\": + \"The contentDetails object is included in the resource if the included item + is a YouTube video. The object contains additional information about the video.\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n + \ \"default\": \"youtube#playlistItem\",\n \"type\": \"string\"\n + \ },\n \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n + \ \"description\": \"The status object contains information about + the playlist item's privacy status.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the playlist item.\"\n }\n },\n \"id\": \"PlaylistItem\"\n + \ },\n \"LiveBroadcastListResponse\": {\n \"properties\": {\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#liveBroadcastListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": + \"A list of broadcasts that match the request criteria.\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveBroadcastListResponse\"\n },\n \"ChannelSectionTargeting\": + {\n \"id\": \"ChannelSectionTargeting\",\n \"description\": \"ChannelSection + targeting setting.\",\n \"properties\": {\n \"languages\": {\n + \ \"type\": \"array\",\n \"description\": \"The language + the channel section is targeting.\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"regions\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"The region the channel section is targeting.\"\n + \ },\n \"countries\": {\n \"type\": \"array\",\n \"description\": + \"The country the channel section is targeting.\",\n \"items\": {\n + \ \"type\": \"string\"\n }\n }\n },\n \"type\": + \"object\"\n },\n \"ChannelProfileDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"profileImageUrl\": {\n \"description\": + \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n + \ \"displayName\": {\n \"type\": \"string\",\n \"description\": + \"The channel's display name.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The YouTube channel ID.\"\n },\n + \ \"channelUrl\": {\n \"type\": \"string\",\n \"description\": + \"The channel's URL.\"\n }\n },\n \"id\": \"ChannelProfileDetails\"\n + \ },\n \"VideoRecordingDetails\": {\n \"type\": \"object\",\n \"id\": + \"VideoRecordingDetails\",\n \"description\": \"Recording information + associated with the video.\",\n \"properties\": {\n \"locationDescription\": + {\n \"description\": \"The text description of the location where + the video was recorded.\",\n \"type\": \"string\"\n },\n \"recordingDate\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the event occurred.\"\n - \ },\n \"superStickerMetadata\": {\n \"$ref\": \"SuperStickerMetadata\",\n - \ \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\"\n },\n \"commentText\": - {\n \"description\": \"The text contents of the comment left by the - user.\",\n \"type\": \"string\"\n }\n }\n },\n \"LiveChatSuperStickerDetails\": - {\n \"properties\": {\n \"superStickerMetadata\": {\n \"description\": - \"Information about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The amount - purchased by the user, in micros (1,750,000 micros = 1.75).\"\n },\n - \ \"tier\": {\n \"format\": \"uint32\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"type\": \"integer\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made.\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatSuperStickerDetails\",\n \"type\": - \"object\"\n },\n \"LiveBroadcastListResponse\": {\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": + \ \"description\": \"The date and time when the video was recorded.\"\n + \ },\n \"location\": {\n \"description\": \"The geolocation + information associated with the video.\",\n \"$ref\": \"GeoPoint\"\n + \ }\n }\n },\n \"LiveBroadcastStatistics\": {\n \"properties\": + {\n \"totalChatCount\": {\n \"description\": \"The total number + of live chat messages currently on the broadcast. The property and its value + will be present if the broadcast is public, has the live chat feature enabled, + and has at least one message. Note that this field will not be filled after + the broadcast ends. So this property would not identify the number of chat + messages for an archived video of a completed live broadcast.\",\n \"format\": + \"uint64\",\n \"type\": \"string\"\n },\n \"concurrentViewers\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The number of viewers currently watching the broadcast. The property and + its value will be present if the broadcast has current viewers and the broadcast + owner has not hidden the viewcount for the video. Note that YouTube stops + tracking the number of concurrent viewers for a broadcast when the broadcast + ends. So, this property would not identify the number of viewers watching + an archived video of a live broadcast that already ended.\"\n }\n },\n + \ \"description\": \"Statistics about the live broadcast. These represent + a snapshot of the values at the time of the request. Statistics are only returned + for live broadcasts.\",\n \"type\": \"object\",\n \"id\": \"LiveBroadcastStatistics\"\n + \ },\n \"VideoAbuseReportReasonListResponse\": {\n \"properties\": + {\n \"items\": {\n \"type\": \"array\",\n \"description\": + \"A list of valid abuse reasons that are used with `video.ReportAbuse`.\",\n + \ \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n + \ }\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n + \ \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The `visitorId` + identifies the visitor.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"VideoAbuseReportReasonListResponse\"\n },\n \"SuperStickerMetadata\": + {\n \"type\": \"object\",\n \"properties\": {\n \"altText\": + {\n \"type\": \"string\",\n \"description\": \"Internationalized + alt text that describes the sticker image and any animation associated with + it.\"\n },\n \"stickerId\": {\n \"type\": \"string\",\n + \ \"description\": \"Unique identifier of the Super Sticker. This + is a shorter form of the alt_text that includes pack name and a recognizable + characteristic of the sticker.\"\n },\n \"altTextLanguage\": + {\n \"type\": \"string\",\n \"description\": \"Specifies + the localization language in which the alt text is returned.\"\n }\n + \ },\n \"id\": \"SuperStickerMetadata\"\n },\n \"PropertyValue\": + {\n \"id\": \"PropertyValue\",\n \"type\": \"object\",\n \"properties\": + {\n \"value\": {\n \"description\": \"The property's value.\",\n + \ \"type\": \"string\"\n },\n \"property\": {\n \"type\": + \"string\",\n \"description\": \"A property.\"\n }\n },\n + \ \"description\": \"A pair Property / Value.\"\n },\n \"VideoAbuseReportSecondaryReason\": + {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"id\": {\n \"description\": \"The + ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n + \ },\n \"label\": {\n \"type\": \"string\",\n \"description\": + \"The localized label for this abuse report secondary reason.\"\n }\n + \ }\n },\n \"VideoLocalization\": {\n \"properties\": {\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"Localized + version of the video's title.\"\n },\n \"description\": {\n + \ \"description\": \"Localized version of the video's description.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"VideoLocalization\",\n \"description\": \"Localized versions + of certain video properties (e.g. title).\"\n },\n \"ActivityContentDetailsComment\": + {\n \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + associated with the comment.\",\n \"$ref\": \"ResourceId\"\n }\n + \ },\n \"description\": \"Information about a resource that received + a comment.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsComment\"\n + \ },\n \"ThumbnailSetResponse\": {\n \"id\": \"ThumbnailSetResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n + \ \"type\": \"array\",\n \"description\": \"A list of thumbnails.\",\n + \ \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n }\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"items\": {\n \"description\": \"A list of broadcasts that - match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"kind\": - {\n \"default\": \"youtube#liveBroadcastListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#thumbnailSetResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n \"type\": + \"string\"\n }\n }\n },\n \"Playlist\": {\n \"id\": + \"Playlist\",\n \"description\": \"A *playlist* resource represents a + YouTube playlist. A playlist is a collection of videos that can be viewed + sequentially and shared with other users. A playlist can contain up to 200 + videos, and YouTube does not limit the number of playlists that each user + creates. By default, playlists are publicly visible to other users, but playlists + can be public or private. YouTube also uses playlists to identify special + collections of videos for a channel, such as: - uploaded videos - favorite + videos - positively rated (liked) videos - watch history - watch later To + be more specific, these lists are associated with a channel, which is a collection + of a person, group, or company's videos, playlists, and other YouTube information. + You can retrieve the playlist IDs for each of these lists from the channel + resource for a given channel. You can then use the playlistItems.list method + to retrieve any of those lists. You can also add or remove items from those + lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"status\": + {\n \"description\": \"The status object contains status information + for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#playlist\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n + \ },\n \"contentDetails\": {\n \"$ref\": \"PlaylistContentDetails\",\n + \ \"description\": \"The contentDetails object contains information + like video count.\"\n },\n \"localizations\": {\n \"description\": + \"Localizations for different languages\",\n \"additionalProperties\": + {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"type\": + \"object\"\n },\n \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n + \ \"description\": \"The player object contains information that you + would use to play the playlist in an embedded player.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the playlist.\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the playlist, such as its title and description.\",\n \"$ref\": + \"PlaylistSnippet\"\n }\n }\n },\n \"ChannelSnippet\": {\n + \ \"properties\": {\n \"localized\": {\n \"description\": + \"Localized title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n + \ },\n \"thumbnails\": {\n \"description\": \"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. When displaying thumbnails + in your application, make sure that your code uses the image URLs exactly + as they are returned in API responses. For example, your application should + not use the http domain instead of the https domain in a URL returned in an + API response. Beginning in July 2018, channel thumbnail URLs will only be + available in the https domain, which is how the URLs appear in API responses. + After that time, you might see broken images in your application if it tries + to load YouTube images from the http domain. Thumbnail images might be empty + for newly created channels and might take up to one day to populate.\",\n + \ \"$ref\": \"ThumbnailDetails\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the channel was created.\"\n + \ },\n \"defaultLanguage\": {\n \"description\": \"The + language of the channel's default title and description.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"description\": \"The + channel's title.\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"description\": \"The description of the channel.\",\n \"type\": + \"string\"\n },\n \"customUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The custom url of the channel.\"\n },\n + \ \"country\": {\n \"description\": \"The country of the channel.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"description\": \"Basic details about a channel, including title, description + and thumbnails.\",\n \"id\": \"ChannelSnippet\"\n },\n \"ActivityContentDetailsPlaylistItem\": + {\n \"description\": \"Information about a new playlist item.\",\n \"properties\": + {\n \"playlistItemId\": {\n \"type\": \"string\",\n \"description\": + \"ID of the item within the playlist.\"\n },\n \"playlistId\": + {\n \"type\": \"string\",\n \"description\": \"The value + that YouTube uses to uniquely identify the playlist.\"\n },\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId + object contains information about the resource that was added to the playlist.\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPlaylistItem\"\n + \ }\n },\n \"name\": \"youtube\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n + \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n + \ },\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n + \ \"resources\": {\n \"videos\": {\n \"methods\": {\n \"rate\": + {\n \"description\": \"Adds a like or dislike rating to a video or + removes a rating from a video.\",\n \"parameterOrder\": [\n \"id\",\n + \ \"rating\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/videos/rate\",\n \"id\": + \"youtube.videos.rate\",\n \"httpMethod\": \"POST\",\n \"path\": + \"youtube/v3/videos/rate\",\n \"parameters\": {\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"rating\": + {\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"required\": true,\n + \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ]\n + \ }\n }\n },\n \"update\": {\n \"response\": + {\n \"$ref\": \"Video\"\n },\n \"flatPath\": + \"youtube/v3/videos\",\n \"description\": \"Updates an existing resource.\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"id\": \"youtube.videos.update\",\n + \ \"request\": {\n \"$ref\": \"Video\"\n },\n + \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/videos\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n },\n \"getRating\": {\n \"id\": \"youtube.videos.getRating\",\n + \ \"description\": \"Retrieves the ratings that the authorized user + gave to a list of specified videos.\",\n \"response\": {\n \"$ref\": + \"VideoGetRatingResponse\"\n },\n \"httpMethod\": \"GET\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"flatPath\": \"youtube/v3/videos/getRating\",\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n + \ \"path\": \"youtube/v3/videos/getRating\"\n },\n \"reportAbuse\": + {\n \"parameterOrder\": [],\n \"httpMethod\": \"POST\",\n + \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Report abuse for a video.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n \"path\": + \"youtube/v3/videos/reportAbuse\",\n \"id\": \"youtube.videos.reportAbuse\"\n + \ },\n \"insert\": {\n \"parameters\": {\n \"autoLevels\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Should auto-levels be applied to the upload.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"description\": \"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.\",\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"notifySubscribers\": + {\n \"location\": \"query\",\n \"default\": \"true\",\n + \ \"type\": \"boolean\",\n \"description\": \"Notify + the channel subscribers about the new video. As default, the notification + is enabled.\"\n },\n \"stabilize\": {\n \"description\": + \"Should stabilize be applied to the upload.\",\n \"type\": \"boolean\",\n + \ \"location\": \"query\"\n }\n },\n \"mediaUpload\": + {\n \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n + \ ],\n \"maxSize\": \"274877906944\",\n \"protocols\": + {\n \"simple\": {\n \"multipart\": true,\n \"path\": + \"/upload/youtube/v3/videos\"\n },\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": + true\n }\n }\n },\n \"description\": + \"Inserts a new resource into this collection.\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"response\": {\n \"$ref\": \"Video\"\n },\n + \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n + \ \"flatPath\": \"youtube/v3/videos\",\n \"id\": \"youtube.videos.insert\",\n + \ \"request\": {\n \"$ref\": \"Video\"\n },\n + \ \"path\": \"youtube/v3/videos\"\n },\n \"delete\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"id\": \"youtube.videos.delete\",\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes + a resource.\",\n \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\"\n }\n + \ },\n \"path\": \"youtube/v3/videos\"\n },\n \"list\": + {\n \"flatPath\": \"youtube/v3/videos\",\n \"response\": + {\n \"$ref\": \"VideoListResponse\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"videoCategoryId\": {\n \"location\": \"query\",\n + \ \"default\": \"0\",\n \"type\": \"string\",\n \"description\": + \"Use chart that is specific to the specified video category\"\n },\n + \ \"maxResults\": {\n \"type\": \"integer\",\n \"minimum\": + \"1\",\n \"location\": \"query\",\n \"format\": + \"uint32\",\n \"maximum\": \"50\",\n \"default\": + \"5\",\n \"description\": \"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.\"\n + \ },\n \"maxHeight\": {\n \"type\": \"integer\",\n + \ \"minimum\": \"72\",\n \"format\": \"int32\",\n + \ \"maximum\": \"8192\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"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.\",\n + \ \"required\": true,\n \"location\": \"query\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"Return videos with the given ids.\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"myRating\": + {\n \"type\": \"string\",\n \"description\": \"Return + videos liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"The + entity is liked.\",\n \"The entity is disliked.\"\n ],\n + \ \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"location\": + \"query\"\n },\n \"hl\": {\n \"description\": + \"Stands for \\\"host language\\\". Specifies the localization language of + the metadata to be filled into snippet.localized. The field is filled with + the default metadata if there is no localization in the specified language. + The parameter value must be a language code included in the list returned + by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n + \ \"type\": \"string\"\n },\n \"locale\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"regionCode\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Use a chart that is specific to the specified region\"\n },\n + \ \"chart\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"Return the most popular videos for the specified content + region and video category.\"\n ],\n \"description\": + \"Return the videos that are in the specified chart.\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"enum\": [\n + \ \"chartUnspecified\",\n \"mostPopular\"\n ]\n + \ },\n \"maxWidth\": {\n \"format\": \"int32\",\n + \ \"maximum\": \"8192\",\n \"type\": \"integer\",\n + \ \"minimum\": \"72\",\n \"description\": \"Return + the player with maximum height specified in\",\n \"location\": + \"query\"\n }\n },\n \"path\": \"youtube/v3/videos\",\n + \ \"id\": \"youtube.videos.list\",\n \"parameterOrder\": + [\n \"part\"\n ]\n }\n }\n },\n \"comments\": + {\n \"methods\": {\n \"markAsSpam\": {\n \"id\": \"youtube.comments.markAsSpam\",\n + \ \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n \"parameters\": + {\n \"id\": {\n \"repeated\": true,\n \"required\": + true,\n \"description\": \"Flags the comments with the given + IDs as spam in the caller's opinion.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"httpMethod\": + \"POST\",\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"description\": \"Expresses the caller's opinion that one or more + comments should be flagged as spam.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/comments/markAsSpam\"\n },\n + \ \"list\": {\n \"path\": \"youtube/v3/comments\",\n \"httpMethod\": + \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"id\": \"youtube.comments.list\",\n \"flatPath\": + \"youtube/v3/comments\",\n \"response\": {\n \"$ref\": + \"CommentListResponse\"\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"parameters\": {\n \"textFormat\": {\n + \ \"enum\": [\n \"textFormatUnspecified\",\n \"html\",\n + \ \"plainText\"\n ],\n \"default\": + \"html\",\n \"description\": \"The requested text format for + the returned comments.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Returns the comments in HTML format. This is the default + value.\",\n \"Returns the comments in plain text format.\"\n + \ ],\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"location\": + \"query\",\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"minimum\": \"1\",\n \"maximum\": + \"100\",\n \"default\": \"20\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\"\n },\n \"part\": {\n + \ \"description\": \"The *part* parameter specifies a comma-separated + list of one or more comment resource properties that the API response will + include.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true\n },\n \"parentId\": {\n \"location\": + \"query\",\n \"description\": \"Returns replies to the specified + comment. Note, currently YouTube features only one level of replies (ie replies + to top level comments). However replies to replies may be supported in the + future.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"repeated\": true,\n \"description\": \"Returns + the comments with the given IDs for One Platform.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n }\n }\n },\n \"setModerationStatus\": + {\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n + \ \"description\": \"Sets the moderation status of one or more comments.\",\n + \ \"path\": \"youtube/v3/comments/setModerationStatus\",\n \"httpMethod\": + \"POST\",\n \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.comments.setModerationStatus\",\n + \ \"parameters\": {\n \"moderationStatus\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Specifies the requested moderation status. + Note, comments can be in statuses, which are not available through this call. + For example, this call does not allow to mark a comment as 'likely spam'. + Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, + MODERATION_STATUS_REJECTED.\",\n \"enumDescriptions\": [\n \"The + comment is available for public display.\",\n \"The comment + is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"enum\": + [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n + \ \"rejected\"\n ]\n },\n \"id\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"required\": true,\n \"description\": + \"Modifies the moderation status of the comments with the given IDs\"\n },\n + \ \"banAuthor\": {\n \"default\": \"false\",\n \"description\": + \"If set to true the author of the comment gets added to the ban list. This + means all future comments of the author will autmomatically be rejected. Only + valid in combination with STATUS_REJECTED.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n }\n }\n + \ },\n \"update\": {\n \"path\": \"youtube/v3/comments\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"PUT\",\n \"request\": {\n \"$ref\": \"Comment\"\n },\n + \ \"description\": \"Updates an existing resource.\",\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true,\n \"description\": + \"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.\",\n + \ \"repeated\": true\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/comments\",\n \"response\": + {\n \"$ref\": \"Comment\"\n },\n \"id\": \"youtube.comments.update\"\n + \ },\n \"insert\": {\n \"description\": \"Inserts a + new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.comments.insert\",\n \"response\": + {\n \"$ref\": \"Comment\"\n },\n \"path\": \"youtube/v3/comments\",\n + \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"repeated\": + true,\n \"required\": true\n }\n },\n \"request\": + {\n \"$ref\": \"Comment\"\n },\n \"flatPath\": + \"youtube/v3/comments\",\n \"parameterOrder\": [\n \"part\"\n + \ ]\n },\n \"delete\": {\n \"parameterOrder\": + [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"id\": \"youtube.comments.delete\",\n \"httpMethod\": + \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Deletes a resource.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/comments\"\n }\n }\n + \ },\n \"channelBanners\": {\n \"methods\": {\n \"insert\": + {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n + \ \"location\": \"query\",\n \"description\": \"*Note:* + This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* + parameter indicates that the request's authorization credentials identify + a YouTube CMS user who is acting on behalf of the content owner specified + in the parameter value. This parameter is intended for YouTube content partners + that own and manage many different YouTube channels. It allows content owners + to authenticate once and get access to all their video and channel data, without + having to provide authentication credentials for each individual channel. + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n + \ \"channelId\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"Unused, channel_id is currently + derived from the security context of the requestor.\"\n }\n },\n + \ \"id\": \"youtube.channelBanners.insert\",\n \"httpMethod\": + \"POST\",\n \"path\": \"youtube/v3/channelBanners/insert\",\n \"response\": + {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"mediaUpload\": + {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ],\n \"protocols\": + {\n \"resumable\": {\n \"multipart\": true,\n + \ \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n + \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n + \ \"multipart\": true\n }\n },\n \"maxSize\": + \"6291456\"\n },\n \"parameterOrder\": [],\n \"description\": + \"Inserts a new resource into this collection.\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n + \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"supportsMediaUpload\": + true,\n \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n + \ }\n }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": + {\n \"list\": {\n \"id\": \"youtube.thirdPartyLinks.list\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"response\": + {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"httpMethod\": + \"GET\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": + {\n \"externalChannelId\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel ID to which changes should be applied, + for delegation.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API response will include. Supported values are linkingToken, status, and + snippet.\",\n \"repeated\": true\n },\n \"type\": + {\n \"location\": \"query\",\n \"description\": + \"Get a third party link of the given type.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"A + link that is connecting (or about to connect) a channel with a store on a + merchandising platform in order to enable retail commerce capabilities for + that channel on YouTube.\"\n ],\n \"enum\": [\n + \ \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ]\n },\n \"linkingToken\": {\n \"description\": + \"Get a third party link with the given linking token.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ]\n },\n + \ \"update\": {\n \"httpMethod\": \"PUT\",\n \"response\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"description\": + \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n + \ },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"id\": + \"youtube.thirdPartyLinks.update\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"The *part* + parameter specifies the thirdPartyLink resource parts that the API request + and response will include. Supported values are linkingToken, status, and + snippet.\"\n },\n \"externalChannelId\": {\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n }\n + \ },\n \"delete\": {\n \"parameters\": {\n \"externalChannelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Channel ID to which changes should be applied, + for delegation.\"\n },\n \"type\": {\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel + with a store on a merchandising platform in order to enable retail commerce + capabilities for that channel on YouTube.\"\n ],\n \"enum\": + [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"type\": \"string\",\n \"required\": + true,\n \"description\": \"Type of the link to be deleted.\"\n + \ },\n \"linkingToken\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true,\n \"description\": \"Delete the partner links with the + given linking token.\"\n },\n \"part\": {\n \"description\": + \"Do not use. Required for compatibility.\",\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"repeated\": true\n + \ }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.delete\",\n + \ \"description\": \"Deletes a resource.\"\n },\n \"insert\": + {\n \"parameters\": {\n \"part\": {\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API request and response will include. Supported values are linkingToken, + status, and snippet.\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ },\n \"externalChannelId\": {\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"id\": \"youtube.thirdPartyLinks.insert\",\n \"response\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": + \"POST\",\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n + \ },\n \"description\": \"Inserts a new resource into this + collection.\"\n }\n }\n },\n \"liveChatBans\": {\n \"methods\": + {\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/bans\",\n + \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"parameters\": + {\n \"id\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true\n }\n },\n + \ \"description\": \"Deletes a chat ban.\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"id\": \"youtube.liveChatBans.delete\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"httpMethod\": \"DELETE\"\n },\n \"insert\": {\n + \ \"id\": \"youtube.liveChatBans.insert\",\n \"response\": + {\n \"$ref\": \"LiveChatBan\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n + \ \"path\": \"youtube/v3/liveChat/bans\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"httpMethod\": + \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"type\": + \"string\",\n \"required\": true,\n \"description\": + \"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.\",\n \"location\": + \"query\"\n }\n }\n }\n }\n },\n \"i18nLanguages\": + {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n + \ \"hl\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"default\": \"en_US\"\n },\n \"part\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"repeated\": true,\n + \ \"description\": \"The *part* parameter specifies the i18nLanguage + resource properties that the API response will include. Set the parameter + value to snippet.\"\n }\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"path\": + \"youtube/v3/i18nLanguages\",\n \"id\": \"youtube.i18nLanguages.list\",\n + \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"search\": + {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"SearchListResponse\"\n },\n \"path\": \"youtube/v3/search\",\n + \ \"id\": \"youtube.search.list\",\n \"httpMethod\": \"GET\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/search\",\n \"parameters\": + {\n \"videoSyndicated\": {\n \"description\": \"Filter + on syndicated videos.\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n + \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos, syndicated + or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"videoDefinition\": {\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"Return + all videos, regardless of their resolution.\",\n \"Only retrieve + videos in standard definition.\",\n \"Only retrieve HD videos.\"\n + \ ],\n \"enum\": [\n \"any\",\n \"standard\",\n + \ \"high\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"Filter on the definition of the videos.\"\n + \ },\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"channelType\": {\n \"enumDescriptions\": + [\n \"\",\n \"Return all channels.\",\n \"Only + retrieve shows.\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"Add a filter on the channel search.\",\n + \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n + \ \"show\"\n ],\n \"location\": \"query\"\n + \ },\n \"forMine\": {\n \"description\": + \"Search for the private videos of the authenticated user.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"relevanceLanguage\": + {\n \"description\": \"Return results relevant to this language.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"videoCaption\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Do not filter results based on + caption availability.\",\n \"Only include videos that have + captions.\",\n \"Only include videos that do not have captions.\"\n + \ ],\n \"enum\": [\n \"videoCaptionUnspecified\",\n + \ \"any\",\n \"closedCaption\",\n \"none\"\n + \ ],\n \"description\": \"Filter on the presence + of captions on the videos.\"\n },\n \"locationRadius\": + {\n \"description\": \"Filter on distance from the location (specified + above).\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"videoDimension\": {\n \"location\": + \"query\",\n \"description\": \"Filter on 3d videos.\",\n \"enumDescriptions\": + [\n \"Include both 3D and non-3D videos in returned results. + This is the default value.\",\n \"Restrict search results to + exclude 3D videos.\",\n \"Restrict search results to only include + 3D videos.\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"any\",\n \"2d\",\n \"3d\"\n + \ ]\n },\n \"videoCategoryId\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Filter on videos in a specific category.\"\n },\n \"type\": + {\n \"type\": \"string\",\n \"description\": \"Restrict + results to a particular set of resource types from One Platform.\",\n \"location\": + \"query\",\n \"repeated\": true\n },\n \"q\": + {\n \"type\": \"string\",\n \"description\": \"Textual + search terms to match.\",\n \"location\": \"query\"\n },\n + \ \"videoLicense\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Filter + on the license of the videos.\",\n \"enumDescriptions\": [\n + \ \"Return all videos, regardless of which license they have, + that match the query parameters.\",\n \"Only return videos + that have the standard YouTube license.\",\n \"Only return + videos that have a Creative Commons license. Users can reuse videos with this + license in other videos that they create. Learn more.\"\n ],\n + \ \"enum\": [\n \"any\",\n \"youtube\",\n + \ \"creativeCommon\"\n ]\n },\n \"publishedBefore\": + {\n \"type\": \"string\",\n \"description\": \"Filter + on resources published before this date.\",\n \"location\": \"query\",\n + \ \"format\": \"google-datetime\"\n },\n \"location\": + {\n \"type\": \"string\",\n \"description\": \"Filter + on location of the video\",\n \"location\": \"query\"\n },\n + \ \"regionCode\": {\n \"location\": \"query\",\n \"description\": + \"Display the content as seen by viewers in this country.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"relatedToVideoId\": + {\n \"description\": \"Search related to a resource.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": + {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n + \ \"minimum\": \"0\",\n \"location\": \"query\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"default\": + \"5\",\n \"maximum\": \"50\"\n },\n \"publishedAfter\": + {\n \"description\": \"Filter on resources published after this + date.\",\n \"type\": \"string\",\n \"format\": \"google-datetime\",\n + \ \"location\": \"query\"\n },\n \"videoType\": + {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos.\",\n \"Only + retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n + \ ],\n \"location\": \"query\",\n \"enum\": + [\n \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n + \ \"episode\"\n ],\n \"description\": + \"Filter on videos of a specific type.\"\n },\n \"forContentOwner\": + {\n \"description\": \"Search owned by a content owner.\",\n + \ \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"safeSearch\": {\n \"enum\": [\n + \ \"safeSearchSettingUnspecified\",\n \"none\",\n + \ \"moderate\",\n \"strict\"\n ],\n + \ \"description\": \"Indicates whether the search results should + include restricted content as well as standard content.\",\n \"default\": + \"moderate\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"YouTube will not filter the search + result set.\",\n \"YouTube will filter some content from search + results and, at the least, will filter content that is restricted in your + locale. Based on their content, search results could be removed from search + results or demoted in search results. This is the default parameter value.\",\n + \ \"YouTube will try to exclude all restricted content from + the search result set. Based on their content, search results could be removed + from search results or demoted in search results.\"\n ],\n \"location\": + \"query\"\n },\n \"topicId\": {\n \"location\": + \"query\",\n \"description\": \"Restrict results to a particular + topic.\",\n \"type\": \"string\"\n },\n \"forDeveloper\": + {\n \"location\": \"query\",\n \"description\": + \"Restrict the search to only retrieve videos uploaded using the project id + of the authenticated user.\",\n \"type\": \"boolean\"\n },\n + \ \"videoEmbeddable\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"Return all videos, embeddable or + not.\",\n \"Only retrieve embeddable videos.\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n + \ \"any\",\n \"true\"\n ],\n \"description\": + \"Filter on embeddable videos.\",\n \"location\": \"query\"\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Filter + on resources belonging to this channelId.\"\n },\n \"order\": + {\n \"type\": \"string\",\n \"default\": \"relevance\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Resources + are sorted in reverse chronological order based on the date they were created.\",\n + \ \"Resources are sorted from highest to lowest rating.\",\n + \ \"Resources are sorted from highest to lowest number of views.\",\n + \ \"Resources are sorted based on their relevance to the search + query. This is the default value for this parameter.\",\n \"Resources + are sorted alphabetically by title.\",\n \"Channels are sorted + in descending order of their number of uploaded videos.\"\n ],\n + \ \"enum\": [\n \"searchSortUnspecified\",\n \"date\",\n + \ \"rating\",\n \"viewCount\",\n \"relevance\",\n + \ \"title\",\n \"videoCount\"\n ],\n + \ \"description\": \"Sort order of the results.\",\n \"location\": + \"query\"\n },\n \"eventType\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n + \ \"The live broadcast is active.\",\n \"The + live broadcast has been completed.\"\n ],\n \"description\": + \"Filter on the livestream status of the videos.\",\n \"enum\": + [\n \"none\",\n \"upcoming\",\n \"live\",\n + \ \"completed\"\n ]\n },\n \"videoDuration\": + {\n \"enumDescriptions\": [\n \"\",\n \"Do + not filter video search results based on their duration. This is the default + value.\",\n \"Only include videos that are less than four minutes + long.\",\n \"Only include videos that are between four and + 20 minutes long (inclusive).\",\n \"Only include videos longer + than 20 minutes.\"\n ],\n \"location\": \"query\",\n + \ \"description\": \"Filter on the duration of the videos.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"videoDurationUnspecified\",\n + \ \"any\",\n \"short\",\n \"medium\",\n + \ \"long\"\n ]\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Retrieves + a list of search resources\"\n }\n }\n },\n \"tests\": {\n + \ \"methods\": {\n \"insert\": {\n \"flatPath\": \"youtube/v3/tests\",\n + \ \"id\": \"youtube.tests.insert\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"request\": {\n \"$ref\": + \"TestItem\"\n },\n \"response\": {\n \"$ref\": + \"TestItem\"\n },\n \"httpMethod\": \"POST\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"description\": \"POST method.\",\n \"parameters\": {\n + \ \"part\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true\n },\n \"externalChannelId\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"path\": \"youtube/v3/tests\"\n }\n }\n },\n \"membershipsLevels\": + {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves + a list of all pricing levels offered by a creator to the fans.\",\n \"id\": + \"youtube.membershipsLevels.list\",\n \"path\": \"youtube/v3/membershipsLevels\",\n + \ \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"httpMethod\": + \"GET\",\n \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"description\": \"The *part* + parameter specifies the membershipsLevel resource parts that the API response + will include. Supported values are id and snippet.\"\n }\n }\n + \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n + \ \"insert\": {\n \"response\": {\n \"$ref\": \"AbuseReport\"\n + \ },\n \"flatPath\": \"youtube/v3/abuseReports\",\n \"request\": + {\n \"$ref\": \"AbuseReport\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/abuseReports\",\n \"id\": + \"youtube.abuseReports.insert\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": + {\n \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"required\": + true\n }\n },\n \"description\": \"Inserts a + new resource into this collection.\"\n }\n }\n },\n \"channelSections\": + {\n \"methods\": {\n \"update\": {\n \"path\": \"youtube/v3/channelSections\",\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.channelSections.update\",\n \"request\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n + \ \"flatPath\": \"youtube/v3/channelSections\",\n \"response\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": + \"Updates an existing resource.\"\n },\n \"delete\": {\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"httpMethod\": + \"DELETE\",\n \"flatPath\": \"youtube/v3/channelSections\",\n \"path\": + \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.delete\",\n + \ \"description\": \"Deletes a resource.\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n },\n \"insert\": {\n \"description\": + \"Inserts a new resource into this collection.\",\n \"request\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"description\": \"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.\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"path\": \"youtube/v3/channelSections\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": + \"youtube.channelSections.insert\",\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n },\n \"list\": {\n \"path\": \"youtube/v3/channelSections\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"flatPath\": \"youtube/v3/channelSections\",\n \"id\": + \"youtube.channelSections.list\",\n \"response\": {\n \"$ref\": + \"ChannelSectionListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"hl\": + {\n \"description\": \"Return content in specified language\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"repeated\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"channelId\": + {\n \"description\": \"Return the ChannelSections owned by the + specified channel ID.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"mine\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Return the ChannelSections owned by the authenticated + user.\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"description\": \"Return the ChannelSections with + the given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n + \ \"type\": \"string\"\n }\n }\n }\n + \ }\n },\n \"liveChatModerators\": {\n \"methods\": {\n \"insert\": + {\n \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": + \"LiveChatModerator\"\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"response\": {\n \"$ref\": \"LiveChatModerator\"\n + \ },\n \"description\": \"Inserts a new resource into this + collection.\",\n \"id\": \"youtube.liveChatModerators.insert\"\n + \ },\n \"list\": {\n \"parameters\": {\n \"liveChatId\": + {\n \"description\": \"The id of the live chat for which moderators + should be returned.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"repeated\": + true,\n \"required\": true,\n \"description\": \"The + *part* parameter specifies the liveChatModerator resource parts that the API + response will include. Supported values are id and snippet.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": + {\n \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"location\": + \"query\",\n \"format\": \"uint32\",\n \"default\": + \"5\",\n \"minimum\": \"0\",\n \"maximum\": \"50\",\n + \ \"type\": \"integer\"\n }\n },\n \"id\": + \"youtube.liveChatModerators.list\",\n \"httpMethod\": \"GET\",\n + \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"response\": + {\n \"$ref\": \"LiveChatModeratorListResponse\"\n },\n + \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"path\": \"youtube/v3/liveChat/moderators\"\n + \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": + \"DELETE\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"id\": + \"youtube.liveChatModerators.delete\",\n \"parameters\": {\n \"id\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true\n }\n },\n \"description\": + \"Deletes a chat moderator.\"\n }\n }\n },\n \"liveBroadcasts\": + {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n + \ },\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.liveBroadcasts.list\",\n + \ \"description\": \"Retrieve the list of broadcasts associated with + the given channel.\",\n \"parameters\": {\n \"id\": {\n + \ \"repeated\": true,\n \"description\": \"Return + broadcasts with the given ids from Stubby or Apiary.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n + \ \"broadcastType\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"Return all broadcasts.\",\n \"Return + only scheduled event broadcasts.\",\n \"Return only persistent + broadcasts.\"\n ],\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Return only broadcasts with the + selected type.\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n + \ \"all\",\n \"event\",\n \"persistent\"\n + \ ],\n \"default\": \"event\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"maxResults\": + {\n \"format\": \"uint32\",\n \"minimum\": \"0\",\n + \ \"location\": \"query\",\n \"default\": \"5\",\n + \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"type\": \"integer\"\n },\n + \ \"broadcastStatus\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"Return all broadcasts.\",\n \"Return + current live broadcasts.\",\n \"Return broadcasts that have + not yet started.\",\n \"Return broadcasts that have already + ended.\"\n ],\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n + \ \"all\",\n \"active\",\n \"upcoming\",\n + \ \"completed\"\n ],\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Return broadcasts with a certain status, e.g. active broadcasts.\"\n },\n + \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true,\n \"repeated\": true,\n \"description\": \"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, status + and statistics.\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\"\n + \ },\n \"transition\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n + \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"broadcastStatus\": + {\n \"enum\": [\n \"statusUnspecified\",\n \"testing\",\n + \ \"live\",\n \"complete\"\n ],\n + \ \"required\": true,\n \"description\": \"The status + to which the broadcast is going to transition.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Start testing the broadcast. YouTube transmits video to + the broadcast's monitor stream. Note that you can only transition a broadcast + to the testing state if its contentDetails.monitorStream.enableMonitorStream + property is set to true.\\\",\",\n \"Return only persistent + broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting + video.\"\n ],\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"required\": true,\n \"description\": + \"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.\",\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\",\n \"description\": \"Broadcast + to transition.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"id\": \"youtube.liveBroadcasts.transition\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"description\": + \"Transition a broadcast to a given status.\",\n \"parameterOrder\": + [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n + \ ]\n },\n \"bind\": {\n \"parameterOrder\": + [\n \"id\",\n \"part\"\n ],\n \"path\": + \"youtube/v3/liveBroadcasts/bind\",\n \"description\": \"Bind a broadcast + to a stream.\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n + \ \"streamId\": {\n \"description\": \"Stream to bind, + if not set unbind the current one.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"repeated\": true,\n + \ \"required\": true\n },\n \"id\": {\n + \ \"required\": true,\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Broadcast to bind to the stream\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"id\": + \"youtube.liveBroadcasts.bind\",\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"httpMethod\": \"POST\"\n },\n \"delete\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"parameters\": {\n \"id\": + {\n \"description\": \"Broadcast to delete.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n }\n },\n \"flatPath\": + \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"DELETE\",\n \"description\": + \"Delete a given broadcast.\",\n \"id\": \"youtube.liveBroadcasts.delete\"\n + \ },\n \"update\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n + \ \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"id\": \"youtube.liveBroadcasts.update\",\n + \ \"description\": \"Updates an existing broadcast for the authenticated + user.\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": + \"PUT\",\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"insert\": {\n \"httpMethod\": + \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"required\": + true,\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n + \ },\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.insert\",\n + \ \"description\": \"Inserts a new stream for the authenticated user.\"\n + \ },\n \"insertCuepoint\": {\n \"parameters\": {\n \"id\": + {\n \"location\": \"query\",\n \"description\": + \"Broadcast to insert ads to, or equivalently `external_video_id` for internal + use.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"description\": \"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.\",\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n + \ },\n \"description\": \"Insert cuepoints in a broadcast\",\n + \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n + \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n + \ \"parameterOrder\": [],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n + \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"flatPath\": + \"youtube/v3/liveBroadcasts/cuepoint\",\n \"httpMethod\": \"POST\"\n + \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"list\": + {\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.channels.list\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"parameters\": {\n \"maxResults\": {\n \"default\": + \"5\",\n \"type\": \"integer\",\n \"maximum\": \"50\",\n + \ \"location\": \"query\",\n \"minimum\": \"0\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"format\": + \"uint32\"\n },\n \"mySubscribers\": {\n \"description\": + \"Return the channels subscribed to the authenticated user\",\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"categoryId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Return the channels within the specified + guide category ID.\"\n },\n \"id\": {\n \"description\": + \"Return the channels with the specified IDs.\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"forUsername\": {\n \"type\": \"string\",\n + \ \"description\": \"Return the channel associated with a YouTube + username.\",\n \"location\": \"query\"\n },\n \"mine\": + {\n \"type\": \"boolean\",\n \"description\": \"Return + the ids of channels owned by the authenticated user.\",\n \"location\": + \"query\"\n },\n \"managedByMe\": {\n \"location\": + \"query\",\n \"description\": \"Return the channels managed by + the authenticated user.\",\n \"type\": \"boolean\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"repeated\": true,\n \"type\": + \"string\",\n \"required\": true\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"hl\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Stands for \\\"host language\\\". Specifies the localization language of + the metadata to be filled into snippet.localized. The field is filled with + the default metadata if there is no localization in the specified language. + The parameter value must be a language code included in the list returned + by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/channels\",\n \"response\": + {\n \"$ref\": \"ChannelListResponse\"\n },\n \"path\": + \"youtube/v3/channels\"\n },\n \"update\": {\n \"request\": + {\n \"$ref\": \"Channel\"\n },\n \"id\": \"youtube.channels.update\",\n + \ \"flatPath\": \"youtube/v3/channels\",\n \"description\": + \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"path\": \"youtube/v3/channels\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": + \"Channel\"\n },\n \"parameters\": {\n \"part\": + {\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n }\n }\n }\n + \ },\n \"watermarks\": {\n \"methods\": {\n \"unset\": {\n + \ \"id\": \"youtube.watermarks.unset\",\n \"description\": + \"Allows removal of channel watermark.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"channelId\": {\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"flatPath\": + \"youtube/v3/watermarks/unset\",\n \"parameterOrder\": [\n \"channelId\"\n + \ ],\n \"path\": \"youtube/v3/watermarks/unset\",\n \"httpMethod\": + \"POST\"\n },\n \"set\": {\n \"httpMethod\": \"POST\",\n + \ \"id\": \"youtube.watermarks.set\",\n \"supportsMediaUpload\": + true,\n \"description\": \"Allows upload of watermark image and setting + it for a channel.\",\n \"flatPath\": \"youtube/v3/watermarks/set\",\n + \ \"path\": \"youtube/v3/watermarks/set\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"mediaUpload\": {\n \"protocols\": {\n + \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n + \ \"multipart\": true\n },\n \"simple\": + {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n + \ }\n },\n \"accept\": [\n \"image/jpeg\",\n + \ \"image/png\",\n \"application/octet-stream\"\n + \ ],\n \"maxSize\": \"10485760\"\n },\n \"request\": + {\n \"$ref\": \"InvideoBranding\"\n },\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n },\n \"parameterOrder\": + [\n \"channelId\"\n ]\n }\n }\n },\n \"activities\": + {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"required\": + true\n },\n \"publishedAfter\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"format\": + \"google-datetime\"\n },\n \"publishedBefore\": {\n + \ \"format\": \"google-datetime\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n + \ },\n \"regionCode\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"format\": \"uint32\",\n \"maximum\": \"50\",\n + \ \"location\": \"query\",\n \"minimum\": \"0\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"default\": + \"5\",\n \"type\": \"integer\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"home\": {\n \"type\": \"boolean\",\n + \ \"location\": \"query\"\n },\n \"mine\": + {\n \"type\": \"boolean\",\n \"location\": \"query\"\n + \ }\n },\n \"description\": \"Retrieves a list + of resources, possibly filtered.\",\n \"id\": \"youtube.activities.list\",\n + \ \"flatPath\": \"youtube/v3/activities\",\n \"path\": \"youtube/v3/activities\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"ActivityListResponse\"\n }\n }\n + \ }\n },\n \"commentThreads\": {\n \"methods\": {\n \"insert\": + {\n \"response\": {\n \"$ref\": \"CommentThread\"\n },\n + \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/commentThreads\",\n + \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"request\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"id\": \"youtube.commentThreads.insert\"\n },\n + \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/commentThreads\",\n \"parameters\": + {\n \"textFormat\": {\n \"type\": \"string\",\n \"default\": + \"html\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Returns the comments in HTML format. This is the default + value.\",\n \"Returns the comments in plain text format.\"\n + \ ],\n \"location\": \"query\",\n \"description\": + \"The requested text format for the returned comments.\",\n \"enum\": + [\n \"textFormatUnspecified\",\n \"html\",\n + \ \"plainText\"\n ]\n },\n \"searchTerms\": + {\n \"description\": \"Limits the returned comment threads to + those matching the specified key words. Not compatible with the 'id' filter.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"description\": \"The *part* parameter specifies a comma-separated + list of one or more commentThread resource properties that the API response + will include.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"repeated\": true\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"description\": + \"Returns the comment threads for all the channel comments (ie does not include + comments left on videos).\",\n \"type\": \"string\"\n },\n + \ \"videoId\": {\n \"location\": \"query\",\n \"description\": + \"Returns the comment threads of the specified video.\",\n \"type\": + \"string\"\n },\n \"moderationStatus\": {\n \"description\": + \"Limits the returned comment threads to those with the specified moderation + status. Not compatible with the 'id' filter. Valid values: published, heldForReview, + likelySpam.\",\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"default\": + \"published\",\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ],\n \"type\": \"string\"\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"order\": {\n \"enum\": + [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n + \ ],\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Order by time.\",\n \"Order + by relevance.\"\n ],\n \"type\": \"string\",\n \"default\": + \"time\"\n },\n \"id\": {\n \"description\": + \"Returns the comment threads with the given IDs for Stubby or Apiary.\",\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true\n },\n \"allThreadsRelatedToChannelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Returns the comment threads of all videos + of the channel and the channel comments as well.\"\n },\n \"maxResults\": + {\n \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"type\": + \"integer\",\n \"location\": \"query\",\n \"default\": + \"20\",\n \"maximum\": \"100\",\n \"format\": \"uint32\",\n + \ \"minimum\": \"1\"\n }\n },\n \"response\": + {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"id\": \"youtube.commentThreads.list\",\n \"flatPath\": + \"youtube/v3/commentThreads\"\n }\n }\n },\n \"playlistItems\": + {\n \"methods\": {\n \"update\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"id\": \"youtube.playlistItems.update\",\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"description\": + \"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.\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n + \ },\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"request\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"description\": \"Updates an existing resource.\"\n },\n + \ \"list\": {\n \"path\": \"youtube/v3/playlistItems\",\n \"parameters\": + {\n \"maxResults\": {\n \"format\": \"uint32\",\n + \ \"minimum\": \"0\",\n \"default\": \"5\",\n \"maximum\": + \"50\",\n \"location\": \"query\",\n \"type\": \"integer\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\"\n },\n + \ \"part\": {\n \"required\": true,\n \"repeated\": + true,\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"playlistId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Return the playlist items within the given + playlist.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true\n },\n \"videoId\": {\n \"description\": + \"Return the playlist items associated with the given video ID.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"id\": + \"youtube.playlistItems.list\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/playlistItems\"\n },\n + \ \"delete\": {\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"description\": \"Deletes a resource.\",\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n }\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.playlistItems.delete\"\n },\n + \ \"insert\": {\n \"description\": \"Inserts a new resource + into this collection.\",\n \"request\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"response\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"id\": \"youtube.playlistItems.insert\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"httpMethod\": + \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"description\": + \"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.\",\n \"required\": true,\n + \ \"type\": \"string\"\n }\n }\n }\n + \ }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": + {\n \"methods\": {\n \"updateCommentThreads\": {\n \"response\": + {\n \"$ref\": \"CommentThread\"\n },\n \"path\": + \"youtube/v3/commentThreads\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"parameterOrder\": + [],\n \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"description\": + \"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.\",\n \"location\": \"query\"\n + \ }\n },\n \"httpMethod\": \"PUT\",\n + \ \"description\": \"Updates an existing resource.\",\n \"request\": + {\n \"$ref\": \"CommentThread\"\n }\n }\n + \ }\n }\n }\n },\n \"thumbnails\": {\n \"methods\": + {\n \"set\": {\n \"supportsMediaUpload\": true,\n \"parameters\": + {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n + \ \"location\": \"query\",\n \"required\": true\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\"\n }\n + \ },\n \"mediaUpload\": {\n \"maxSize\": \"2097152\",\n + \ \"protocols\": {\n \"simple\": {\n \"multipart\": + true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n },\n + \ \"resumable\": {\n \"multipart\": true,\n \"path\": + \"/resumable/upload/youtube/v3/thumbnails/set\"\n }\n },\n + \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ]\n },\n + \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"response\": + {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"path\": + \"youtube/v3/thumbnails/set\",\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n + \ \"description\": \"As this is not an insert in a strict sense (it + supports uploading/setting of a thumbnail for multiple videos, which doesn't + result in creation of a single resource), I use a custom verb here.\",\n \"id\": + \"youtube.thumbnails.set\"\n }\n }\n },\n \"videoAbuseReportReasons\": + {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n + \ \"part\": {\n \"description\": \"The *part* parameter + specifies the videoCategory resource parts that the API response will include. + Supported values are id and snippet.\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"required\": true,\n \"type\": + \"string\"\n },\n \"hl\": {\n \"type\": + \"string\",\n \"default\": \"en-US\",\n \"location\": + \"query\"\n }\n },\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"httpMethod\": + \"GET\"\n }\n }\n },\n \"playlists\": {\n \"methods\": + {\n \"insert\": {\n \"id\": \"youtube.playlists.insert\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/playlists\",\n \"response\": + {\n \"$ref\": \"Playlist\"\n },\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n + \ \"part\": {\n \"required\": true,\n \"description\": + \"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.\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"request\": {\n \"$ref\": + \"Playlist\"\n },\n \"description\": \"Inserts a new resource + into this collection.\",\n \"path\": \"youtube/v3/playlists\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"POST\"\n },\n \"delete\": {\n \"description\": \"Deletes + a resource.\",\n \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.playlists.delete\",\n \"httpMethod\": + \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"path\": \"youtube/v3/playlists\",\n \"flatPath\": \"youtube/v3/playlists\"\n + \ },\n \"list\": {\n \"parameters\": {\n \"hl\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Return content in specified language\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n },\n \"id\": {\n \"description\": + \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"required\": + true\n },\n \"channelId\": {\n \"description\": + \"Return the playlists owned by the specified channel ID.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"mine\": + {\n \"type\": \"boolean\",\n \"description\": \"Return + the playlists owned by the authenticated user.\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"format\": + \"uint32\",\n \"maximum\": \"50\",\n \"location\": + \"query\",\n \"minimum\": \"0\",\n \"default\": + \"5\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"type\": \"integer\"\n }\n },\n \"path\": + \"youtube/v3/playlists\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n + \ },\n \"id\": \"youtube.playlists.list\",\n \"httpMethod\": + \"GET\",\n \"flatPath\": \"youtube/v3/playlists\"\n },\n \"update\": + {\n \"response\": {\n \"$ref\": \"Playlist\"\n },\n + \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"PUT\",\n \"id\": \"youtube.playlists.update\",\n \"path\": + \"youtube/v3/playlists\",\n \"description\": \"Updates an existing + resource.\",\n \"flatPath\": \"youtube/v3/playlists\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n }\n }\n },\n \"captions\": {\n \"methods\": + {\n \"list\": {\n \"path\": \"youtube/v3/captions\",\n \"httpMethod\": + \"GET\",\n \"parameters\": {\n \"videoId\": {\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"Returns the captions for the specified video.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\"\n },\n + \ \"id\": {\n \"description\": \"Returns the captions + with the given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOf\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"ID + of the Google+ Page for the channel that the request is on behalf of.\"\n + \ },\n \"part\": {\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"required\": true,\n + \ \"description\": \"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.\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"id\": + \"youtube.captions.list\",\n \"parameterOrder\": [\n \"part\",\n + \ \"videoId\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/captions\"\n },\n + \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"request\": {\n \"$ref\": \"Caption\"\n + \ },\n \"id\": \"youtube.captions.insert\",\n \"flatPath\": + \"youtube/v3/captions\",\n \"description\": \"Inserts a new resource + into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"Caption\"\n },\n + \ \"path\": \"youtube/v3/captions\",\n \"supportsMediaUpload\": + true,\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOf\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\"\n },\n \"sync\": {\n \"description\": + \"Extra parameter to allow automatically syncing the uploaded caption/transcript + with the audio.\",\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true,\n \"description\": \"The *part* parameter specifies the + caption resource parts that the API response will include. Set the parameter + value to snippet.\",\n \"location\": \"query\"\n }\n + \ },\n \"httpMethod\": \"POST\",\n \"mediaUpload\": + {\n \"protocols\": {\n \"simple\": {\n \"path\": + \"/upload/youtube/v3/captions\",\n \"multipart\": true\n },\n + \ \"resumable\": {\n \"multipart\": true,\n \"path\": + \"/resumable/upload/youtube/v3/captions\"\n }\n },\n + \ \"maxSize\": \"104857600\",\n \"accept\": [\n \"text/xml\",\n + \ \"application/octet-stream\",\n \"*/*\"\n ]\n + \ }\n },\n \"update\": {\n \"id\": \"youtube.captions.update\",\n + \ \"path\": \"youtube/v3/captions\",\n \"mediaUpload\": {\n + \ \"protocols\": {\n \"resumable\": {\n \"path\": + \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": + true\n },\n \"simple\": {\n \"multipart\": + true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n + \ },\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n + \ },\n \"response\": {\n \"$ref\": \"Caption\"\n + \ },\n \"flatPath\": \"youtube/v3/captions\",\n \"httpMethod\": + \"PUT\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*Note:* + This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* + parameter indicates that the request's authorization credentials identify + a YouTube CMS user who is acting on behalf of the content owner specified + in the parameter value. This parameter is intended for YouTube content partners + that own and manage many different YouTube channels. It allows content owners + to authenticate once and get access to all their video and channel data, without + having to provide authentication credentials for each individual channel. + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"required\": true,\n + \ \"repeated\": true\n },\n \"sync\": {\n + \ \"location\": \"query\",\n \"type\": \"boolean\",\n + \ \"description\": \"Extra parameter to allow automatically syncing + the uploaded caption/transcript with the audio.\"\n },\n \"onBehalfOf\": + {\n \"location\": \"query\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Updates an existing resource.\",\n \"supportsMediaUpload\": true,\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"request\": {\n \"$ref\": \"Caption\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ]\n },\n + \ \"delete\": {\n \"id\": \"youtube.captions.delete\",\n \"description\": + \"Deletes a resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n },\n \"onBehalfOf\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"ID of the Google+ Page for the channel that + the request is be on behalf of\"\n },\n \"id\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n },\n \"flatPath\": + \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": + \"DELETE\",\n \"path\": \"youtube/v3/captions\"\n },\n \"download\": + {\n \"useMediaDownloadService\": true,\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"description\": \"Downloads a caption track.\",\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.captions.download\",\n \"flatPath\": + \"youtube/v3/captions/{id}\",\n \"parameters\": {\n \"onBehalfOf\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"ID of the Google+ Page for the channel that + the request is be on behalf of\"\n },\n \"id\": {\n + \ \"type\": \"string\",\n \"location\": \"path\",\n + \ \"required\": true,\n \"description\": \"The ID + of the caption track to download, required for One Platform.\"\n },\n + \ \"tlang\": {\n \"type\": \"string\",\n \"description\": + \"tlang is the language code; machine translate the captions into this language.\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*Note:* + This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* + parameter indicates that the request's authorization credentials identify + a YouTube CMS user who is acting on behalf of the content owner specified + in the parameter value. This parameter is intended for YouTube content partners + that own and manage many different YouTube channels. It allows content owners + to authenticate once and get access to all their video and channel data, without + having to provide authentication credentials for each individual channel. + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\",\n \"location\": \"query\"\n + \ },\n \"tfmt\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Convert + the captions into this format. Supported options are sbv, srt, and vtt.\"\n + \ }\n },\n \"path\": \"youtube/v3/captions/{id}\",\n + \ \"supportsMediaDownload\": true\n }\n }\n },\n \"superChatEvents\": + {\n \"methods\": {\n \"list\": {\n \"response\": {\n + \ \"$ref\": \"SuperChatEventListResponse\"\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"path\": + \"youtube/v3/superChatEvents\",\n \"httpMethod\": \"GET\",\n \"flatPath\": + \"youtube/v3/superChatEvents\",\n \"id\": \"youtube.superChatEvents.list\",\n + \ \"parameters\": {\n \"hl\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return rendered funding amounts in specified language.\"\n },\n + \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"default\": + \"5\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"maximum\": + \"50\",\n \"location\": \"query\",\n \"minimum\": + \"1\"\n },\n \"part\": {\n \"type\": \"string\",\n + \ \"description\": \"The *part* parameter specifies the superChatEvent + resource parts that the API response will include. This parameter is currently + not supported.\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n + \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": + {\n \"id\": \"youtube.members.list\",\n \"description\": + \"Retrieves a list of members that match the request criteria for a channel.\",\n + \ \"path\": \"youtube/v3/members\",\n \"flatPath\": \"youtube/v3/members\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"pageToken\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"maxResults\": + {\n \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"format\": + \"uint32\",\n \"minimum\": \"0\",\n \"maximum\": + \"1000\",\n \"location\": \"query\",\n \"default\": + \"5\",\n \"type\": \"integer\"\n },\n \"filterByMemberChannelId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Comma separated list of channel IDs. Only + data about members that are part of this list will be included in the response.\"\n + \ },\n \"mode\": {\n \"enumDescriptions\": + [\n \"\",\n \"Return only members that joined + after the first call with this mode was made.\",\n \"Return + all current members, from newest to oldest.\"\n ],\n \"enum\": + [\n \"listMembersModeUnknown\",\n \"updates\",\n + \ \"all_current\"\n ],\n \"description\": + \"Parameter that specifies which channel members to return.\",\n \"default\": + \"all_current\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"required\": + true,\n \"description\": \"The *part* parameter specifies the + member resource parts that the API response will include. Set the parameter + value to snippet.\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"hasAccessToLevel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Filter members in the results set to the + ones that have access to a level.\"\n }\n },\n \"response\": + {\n \"$ref\": \"MemberListResponse\"\n }\n }\n + \ }\n },\n \"videoCategories\": {\n \"methods\": {\n \"list\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.videoCategories.list\",\n \"path\": \"youtube/v3/videoCategories\",\n + \ \"parameters\": {\n \"hl\": {\n \"default\": + \"en-US\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"regionCode\": {\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"Returns + the video categories with the given IDs for Stubby or Apiary.\",\n \"location\": + \"query\",\n \"repeated\": true\n },\n \"part\": + {\n \"type\": \"string\",\n \"description\": \"The + *part* parameter specifies the videoCategory resource properties that the + API response will include. Set the parameter value to snippet.\",\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\"\n + \ }\n },\n \"flatPath\": \"youtube/v3/videoCategories\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": + \"VideoCategoryListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ]\n }\n }\n },\n \"subscriptions\": + {\n \"methods\": {\n \"delete\": {\n \"path\": \"youtube/v3/subscriptions\",\n + \ \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"description\": + \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"id\": + \"youtube.subscriptions.delete\"\n },\n \"list\": {\n \"flatPath\": + \"youtube/v3/subscriptions\",\n \"description\": \"Retrieves a list + of resources, possibly filtered.\",\n \"parameters\": {\n \"forChannelId\": + {\n \"location\": \"query\",\n \"description\": + \"Return the subscriptions to the subset of these channels that the authenticated + user is subscribed to.\",\n \"type\": \"string\"\n },\n + \ \"order\": {\n \"type\": \"string\",\n \"enum\": + [\n \"subscriptionOrderUnspecified\",\n \"relevance\",\n + \ \"unread\",\n \"alphabetical\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Sort + by relevance.\",\n \"Sort by order of activity.\",\n \"Sort + alphabetically.\"\n ],\n \"location\": \"query\",\n + \ \"default\": \"relevance\",\n \"description\": + \"The order of the returned subscriptions\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"description\": + \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"type\": + \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"mySubscribers\": {\n \"location\": + \"query\",\n \"description\": \"Return the subscribers of the + given channel owner.\",\n \"type\": \"boolean\"\n },\n + \ \"mine\": {\n \"location\": \"query\",\n \"description\": + \"Flag for returning the subscriptions of the authenticated user.\",\n \"type\": + \"boolean\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"type\": + \"integer\",\n \"default\": \"5\",\n \"location\": + \"query\",\n \"format\": \"uint32\",\n \"minimum\": + \"0\",\n \"maximum\": \"50\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\"\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"description\": + \"Return the subscriptions of the given channel owner.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"description\": + \"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.\",\n \"required\": true,\n \"type\": + \"string\"\n },\n \"myRecentSubscribers\": {\n \"type\": + \"boolean\",\n \"location\": \"query\"\n }\n },\n + \ \"id\": \"youtube.subscriptions.list\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/subscriptions\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": + \"SubscriptionListResponse\"\n }\n },\n \"insert\": + {\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"Subscription\"\n },\n \"httpMethod\": \"POST\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n + \ \"path\": \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.insert\",\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"repeated\": + true\n }\n },\n \"description\": \"Inserts a + new resource into this collection.\"\n }\n }\n },\n \"liveChatMessages\": + {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": + [\n \"liveChatId\",\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n + \ },\n \"parameters\": {\n \"maxResults\": {\n + \ \"type\": \"integer\",\n \"location\": \"query\",\n + \ \"minimum\": \"200\",\n \"format\": \"uint32\",\n + \ \"maximum\": \"2000\",\n \"default\": \"500\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\"\n },\n + \ \"hl\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"Specifies the localization language + in which the system messages should be returned.\"\n },\n \"liveChatId\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\",\n \"description\": \"The + id of the live chat for which comments should be returned.\"\n },\n + \ \"profileImageSize\": {\n \"description\": \"Specifies + the size of the profile image that should be returned for each user.\",\n + \ \"type\": \"integer\",\n \"location\": \"query\",\n + \ \"format\": \"uint32\",\n \"maximum\": \"720\",\n + \ \"minimum\": \"16\"\n },\n \"part\": {\n + \ \"description\": \"The *part* parameter specifies the liveChatComment + resource parts that the API response will include. Supported values are id + and snippet.\",\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"path\": + \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.list\",\n + \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"httpMethod\": + \"GET\"\n },\n \"insert\": {\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"description\": \"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.\",\n \"repeated\": true,\n \"type\": + \"string\"\n }\n },\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.insert\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n + \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n }\n + \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"id\": \"youtube.liveChatMessages.delete\",\n \"description\": + \"Deletes a chat message.\",\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": + {\n \"id\": {\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n }\n }\n }\n + \ }\n },\n \"i18nRegions\": {\n \"methods\": {\n \"list\": + {\n \"id\": \"youtube.i18nRegions.list\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/i18nRegions\",\n \"response\": + {\n \"$ref\": \"I18nRegionListResponse\"\n },\n \"parameters\": + {\n \"hl\": {\n \"default\": \"en_US\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"repeated\": true,\n + \ \"description\": \"The *part* parameter specifies the i18nRegion + resource properties that the API response will include. Set the parameter + value to snippet.\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"flatPath\": \"youtube/v3/i18nRegions\"\n }\n }\n },\n + \ \"liveStreams\": {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"repeated\": true\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"description\": \"Return LiveStreams with the given ids + from Stubby or Apiary.\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"location\": \"query\"\n },\n \"maxResults\": + {\n \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"maximum\": + \"50\",\n \"location\": \"query\",\n \"type\": \"integer\",\n + \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n + \ \"default\": \"5\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n + \ },\n \"mine\": {\n \"location\": \"query\",\n + \ \"type\": \"boolean\"\n }\n },\n \"description\": + \"Retrieve the list of streams associated with the given channel. --\",\n + \ \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n + \ },\n \"httpMethod\": \"GET\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"id\": \"youtube.liveStreams.list\",\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"flatPath\": \"youtube/v3/liveStreams\"\n },\n \"update\": + {\n \"response\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"PUT\",\n \"id\": \"youtube.liveStreams.update\",\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"description\": \"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.\",\n \"required\": + true,\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"request\": + {\n \"$ref\": \"LiveStream\"\n },\n \"path\": + \"youtube/v3/liveStreams\",\n \"description\": \"Updates an existing + stream for the authenticated user.\"\n },\n \"delete\": {\n + \ \"id\": \"youtube.liveStreams.delete\",\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true\n }\n },\n \"description\": \"Deletes an + existing stream for the authenticated user.\",\n \"httpMethod\": + \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveStreams\"\n },\n + \ \"insert\": {\n \"httpMethod\": \"POST\",\n \"path\": + \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"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, content_details, and status.\",\n + \ \"location\": \"query\",\n \"required\": true\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"id\": \"youtube.liveStreams.insert\",\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"request\": {\n \"$ref\": + \"LiveStream\"\n },\n \"description\": \"Inserts a new stream + for the authenticated user.\"\n }\n }\n }\n },\n \"description\": + \"The YouTube Data API v3 is an API that provides access to YouTube data, + such as videos, playlists, and channels.\",\n \"id\": \"youtube:v3\",\n \"basePath\": + \"\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"fullyEncodeReservedExpansion\": + true,\n \"canonicalName\": \"YouTube\"\n}\n" + headers: + Alt-Svc: + - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 + Cache-Control: + - private + Content-Encoding: + - gzip + Content-Type: + - application/json; charset=UTF-8 + Date: + - Thu, 09 Mar 2023 00:27:04 GMT + Server: + - scaffolding on HTTPServer2 + Transfer-Encoding: + - chunked + Vary: + - Origin + - X-Origin + - Referer + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - SAMEORIGIN + X-XSS-Protection: + - '0' + status: + code: 200 + message: OK + url: '' +- request: + body: null + headers: + Accept-Encoding: + - gzip + User-Agent: + - Aiogoogle Aiohttp (gzip) + method: GET + uri: https://youtube.googleapis.com/youtube/v3/videos?id=rq2SVMXEMPI&part=snippet + response: + body: + string: "{\n \"kind\": \"youtube#videoListResponse\",\n \"etag\": \"CqzR8tPfLN7pg9Xvn-SDympY7WY\",\n + \ \"items\": [\n {\n \"kind\": \"youtube#video\",\n \"etag\": + \"eJAFQm9a12Hg6u7ccf2X72XS5Aw\",\n \"id\": \"rq2SVMXEMPI\",\n \"snippet\": + {\n \"publishedAt\": \"2022-05-11T18:56:54Z\",\n \"channelId\": + \"UCk2OzObixhe_mbMfMQGLuJw\",\n \"title\": \"Linux XanMod build using + AWS instance\",\n \"description\": \"This is recording of linux-xanmod + Archlinux package build.\\nDonate here nbryskin@getalby.com\",\n \"thumbnails\": + {\n \"default\": {\n \"url\": \"https://i.ytimg.com/vi/rq2SVMXEMPI/default.jpg\",\n + \ \"width\": 120,\n \"height\": 90\n },\n \"medium\": + {\n \"url\": \"https://i.ytimg.com/vi/rq2SVMXEMPI/mqdefault.jpg\",\n + \ \"width\": 320,\n \"height\": 180\n },\n \"high\": + {\n \"url\": \"https://i.ytimg.com/vi/rq2SVMXEMPI/hqdefault.jpg\",\n + \ \"width\": 480,\n \"height\": 360\n },\n \"standard\": + {\n \"url\": \"https://i.ytimg.com/vi/rq2SVMXEMPI/sddefault.jpg\",\n + \ \"width\": 640,\n \"height\": 480\n },\n \"maxres\": + {\n \"url\": \"https://i.ytimg.com/vi/rq2SVMXEMPI/maxresdefault.jpg\",\n + \ \"width\": 1280,\n \"height\": 720\n }\n },\n + \ \"channelTitle\": \"Another Channel\",\n \"categoryId\": \"22\",\n + \ \"liveBroadcastContent\": \"none\",\n \"localized\": {\n \"title\": + \"Linux XanMod build using AWS instance\",\n \"description\": \"This + is recording of linux-xanmod Archlinux package build.\\nDonate here nbryskin@getalby.com\"\n + \ }\n }\n }\n ],\n \"pageInfo\": {\n \"totalResults\": + 1,\n \"resultsPerPage\": 1\n }\n}\n" + headers: + Alt-Svc: + - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 + Cache-Control: + - private + Content-Encoding: + - gzip + Content-Type: + - application/json; charset=UTF-8 + Date: + - Thu, 09 Mar 2023 00:27:04 GMT + Server: + - scaffolding on HTTPServer2 + Transfer-Encoding: + - chunked + Vary: + - Origin + - X-Origin + - Referer + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - SAMEORIGIN + X-XSS-Protection: + - '0' + status: + code: 200 + message: OK + url: '' +- request: + body: null + headers: + Accept-Encoding: + - gzip + User-Agent: + - Aiogoogle Aiohttp (gzip) + method: GET + uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest + response: + body: + string: "{\n \"fullyEncodeReservedExpansion\": true,\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n + \ \"basePath\": \"\",\n \"description\": \"The YouTube Data API v3 is an + API that provides access to YouTube data, such as videos, playlists, and channels.\",\n + \ \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"name\": \"youtube\",\n + \ \"servicePath\": \"\",\n \"canonicalName\": \"YouTube\",\n \"documentationLink\": + \"https://developers.google.com/youtube/\",\n \"parameters\": {\n \"oauth_token\": + {\n \"description\": \"OAuth 2.0 token for the current user.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"quotaUser\": {\n + \ \"location\": \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n + \ },\n \"key\": {\n \"location\": \"query\",\n \"description\": + \"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.\",\n + \ \"type\": \"string\"\n },\n \"prettyPrint\": {\n \"location\": + \"query\",\n \"description\": \"Returns response with indentations and + line breaks.\",\n \"type\": \"boolean\",\n \"default\": \"true\"\n + \ },\n \"callback\": {\n \"description\": \"JSONP\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"access_token\": + {\n \"type\": \"string\",\n \"description\": \"OAuth access token.\",\n + \ \"location\": \"query\"\n },\n \"$.xgafv\": {\n \"enumDescriptions\": + [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"enum\": + [\n \"1\",\n \"2\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"V1 error format.\",\n \"location\": \"query\"\n + \ },\n \"fields\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Selector specifying which fields to include + in a partial response.\"\n },\n \"uploadType\": {\n \"description\": + \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"alt\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n \"default\": + \"json\",\n \"enumDescriptions\": [\n \"Responses with Content-Type + of application/json\",\n \"Media download with context-dependent Content-Type\",\n + \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n + \ \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n + \ ],\n \"description\": \"Data format for response.\"\n },\n \"upload_protocol\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": + \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n }\n + \ },\n \"schemas\": {\n \"LiveChatFanFundingEventDetails\": {\n \"type\": + \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"properties\": + {\n \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the fund was made.\"\n },\n \"amountMicros\": + {\n \"description\": \"The amount of the fund.\",\n \"type\": + \"string\",\n \"format\": \"uint64\"\n },\n \"amountDisplayString\": + {\n \"type\": \"string\",\n \"description\": \"A rendered + string that displays the fund amount and currency to the user.\"\n },\n + \ \"userComment\": {\n \"description\": \"The comment added + by the user to this fan funding event.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"SuperChatEventListResponse\": {\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#superChatEventListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n \ },\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveBroadcastSnippet\": {\n \"id\": \"LiveBroadcastSnippet\",\n - \ \"properties\": {\n \"actualEndTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - actually ended. This information is only available once the broadcast's state - is complete.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the broadcast. For each nested object - in this object, the key is the name of the thumbnail image, and the value - is an object that contains other information about the thumbnail.\"\n },\n - \ \"description\": {\n \"description\": \"The broadcast's description. - As with the title, you can set this field by modifying the broadcast resource - or by setting the description field of the corresponding video resource.\",\n + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"description\": \"A list of Super Chat purchases + that match the request criteria.\",\n \"items\": {\n \"$ref\": + \"SuperChatEvent\"\n },\n \"type\": \"array\"\n }\n + \ },\n \"id\": \"SuperChatEventListResponse\",\n \"type\": \"object\"\n + \ },\n \"LiveChatModeratorListResponse\": {\n \"id\": \"LiveChatModeratorListResponse\",\n + \ \"properties\": {\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"nextPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the next page + in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"LiveChatModerator\"\n },\n \"description\": \"A list of + moderators that match the request criteria.\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"LiveStreamConfigurationIssue\": + {\n \"id\": \"LiveStreamConfigurationIssue\",\n \"properties\": + {\n \"severity\": {\n \"enum\": [\n \"info\",\n + \ \"warning\",\n \"error\"\n ],\n \"description\": + \"How severe this issue is to the stream.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"type\": {\n \"type\": + \"string\",\n \"description\": \"The kind of error happening.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n + \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n + \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n + \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n + \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n + \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n + \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n + \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n + \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n + \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n + \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n + \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n + \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n + \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n + \ ]\n },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The long-form description of the issue and how + to resolve it.\"\n },\n \"reason\": {\n \"description\": + \"The short-form reason for this issue.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"CdnSettings\": + {\n \"properties\": {\n \"format\": {\n \"type\": \"string\",\n + \ \"description\": \"The format of the video stream that you are sending + to Youtube. \",\n \"annotations\": {\n \"required\": [\n + \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n + \ ]\n }\n },\n \"ingestionInfo\": {\n \"$ref\": + \"IngestionInfo\",\n \"description\": \"The ingestionInfo object + contains information that YouTube provides that you need to transmit your + RTMP or HTTP stream to YouTube.\"\n },\n \"ingestionType\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"enum\": [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n + \ \"hls\"\n ],\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \" The method or protocol used to transmit the video stream.\",\n \"type\": + \"string\"\n },\n \"frameRate\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"30fps\",\n \"60fps\",\n \"variable\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The frame rate + of the inbound video data.\"\n },\n \"resolution\": {\n \"description\": + \"The resolution of the inbound video data.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"240p\",\n + \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n + \ \"1440p\",\n \"2160p\",\n \"variable\"\n + \ ]\n }\n },\n \"id\": \"CdnSettings\",\n \"description\": + \"Brief description of the live stream cdn settings.\",\n \"type\": \"object\"\n + \ },\n \"CommentThreadReplies\": {\n \"type\": \"object\",\n \"description\": + \"Comments written in (direct or indirect) reply to the top level comment.\",\n + \ \"properties\": {\n \"comments\": {\n \"description\": + \"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.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Comment\"\n }\n }\n },\n \"id\": + \"CommentThreadReplies\"\n },\n \"LiveBroadcastSnippet\": {\n \"type\": + \"object\",\n \"id\": \"LiveBroadcastSnippet\",\n \"properties\": + {\n \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The date and time that the broadcast + was added to YouTube's live broadcast schedule.\"\n },\n \"description\": + {\n \"description\": \"The broadcast's description. As with the title, + you can set this field by modifying the broadcast resource or by setting the + description field of the corresponding video resource.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"description\": \"The + broadcast's title. Note that the broadcast represents exactly one YouTube + video. You can set this field by modifying the broadcast resource or by setting + the title field of the corresponding video resource.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images + associated with the broadcast. For each nested object in this object, the + key is the name of the thumbnail image, and the value is an object that contains + other information about the thumbnail.\"\n },\n \"liveChatId\": + {\n \"description\": \"The id of the live chat for this broadcast.\",\n \ \"type\": \"string\"\n },\n \"actualStartTime\": {\n \ \"type\": \"string\",\n \"description\": \"The date and time that the broadcast actually started. This information is only available once the broadcast's state is live.\",\n \"format\": \"date-time\"\n - \ },\n \"isDefaultBroadcast\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the broadcast was added to YouTube's live broadcast - schedule.\"\n },\n \"scheduledStartTime\": {\n \"description\": - \"The date and time that the broadcast is scheduled to start.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"liveChatId\": {\n \"description\": \"The id of the live - chat for this broadcast.\",\n \"type\": \"string\"\n },\n - \ \"scheduledEndTime\": {\n \"description\": \"The date and - time that the broadcast is scheduled to end.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": + \ },\n \"actualEndTime\": {\n \"description\": \"The + date and time that the broadcast actually ended. This information is only + available once the broadcast's state is complete.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"scheduledEndTime\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time that the broadcast is scheduled + to end.\"\n },\n \"isDefaultBroadcast\": {\n \"description\": + \"Indicates whether this broadcast is the default broadcast. Internal only.\",\n + \ \"type\": \"boolean\"\n },\n \"channelId\": {\n \"description\": \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's title. Note that the broadcast - represents exactly one YouTube video. You can set this field by modifying - the broadcast resource or by setting the title field of the corresponding - video resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Basic broadcast information.\",\n \"type\": - \"object\"\n },\n \"LiveChatNewSponsorDetails\": {\n \"properties\": - {\n \"isUpgrade\": {\n \"type\": \"boolean\",\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\"\n },\n - \ \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatNewSponsorDetails\"\n },\n \"ChannelTopicDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"topicCategories\": - {\n \"type\": \"array\",\n \"description\": \"A list of - Wikipedia URLs that describe the channel's content.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicIds\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Freebase - topic IDs associated with the channel. You can retrieve information about - each topic using the Freebase Topic API.\"\n }\n },\n \"description\": - \"Freebase topic information related to the channel.\",\n \"id\": \"ChannelTopicDetails\"\n - \ },\n \"SuperChatEvent\": {\n \"description\": \"A `__superChatEvent__` - resource represents a Super Chat purchase on a YouTube channel.\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the Super Chat event.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"default\": \"youtube#superChatEvent\"\n }\n },\n \"id\": - \"SuperChatEvent\",\n \"type\": \"object\"\n },\n \"MembershipsDetails\": - {\n \"properties\": {\n \"highestAccessibleLevelDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n },\n - \ \"membershipsDuration\": {\n \"description\": \"Data about - memberships duration without taking into consideration pricing levels.\",\n - \ \"$ref\": \"MembershipsDuration\"\n },\n \"highestAccessibleLevel\": - {\n \"description\": \"Id of the highest level that the user has - access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"membershipsDurationAtLevels\": {\n \"description\": \"Data - about memberships duration on particular pricing levels.\",\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"type\": - \"array\"\n },\n \"accessibleLevels\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\",\n - \ \"type\": \"array\"\n }\n },\n \"id\": \"MembershipsDetails\",\n - \ \"type\": \"object\"\n },\n \"VideoRecordingDetails\": {\n \"id\": - \"VideoRecordingDetails\",\n \"type\": \"object\",\n \"description\": - \"Recording information associated with the video.\",\n \"properties\": - {\n \"location\": {\n \"$ref\": \"GeoPoint\",\n \"description\": - \"The geolocation information associated with the video.\"\n },\n \"recordingDate\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the video was recorded.\"\n - \ },\n \"locationDescription\": {\n \"description\": - \"The text description of the location where the video was recorded.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a subscription's subscriber including title, description, channel ID and thumbnails.\",\n - \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the subscriber.\"\n },\n - \ \"thumbnails\": {\n \"description\": \"Thumbnails for this - subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The channel - ID of the subscriber.\"\n },\n \"title\": {\n \"description\": - \"The title of the subscriber.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"SubscriptionSubscriberSnippet\"\n },\n \"ThirdPartyLinkStatus\": - {\n \"id\": \"ThirdPartyLinkStatus\",\n \"description\": \"The third-party - link status object contains information about the status of the link.\",\n - \ \"properties\": {\n \"linkStatus\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"type\": \"object\"\n },\n \"I18nRegionSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - an i18n region, such as region code and human-readable name.\",\n \"id\": - \"I18nRegionSnippet\",\n \"properties\": {\n \"name\": {\n \"type\": - \"string\",\n \"description\": \"The human-readable name of the region.\"\n - \ },\n \"gl\": {\n \"description\": \"The region code - as a 2-letter ISO country code.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"SearchListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"SearchListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"description\": \"Pagination information - for token pagination.\",\n \"items\": {\n \"$ref\": \"SearchResult\"\n - \ },\n \"type\": \"array\"\n },\n \"kind\": - {\n \"default\": \"youtube#searchListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"Video\": {\n \"description\": \"A *video* resource - represents a YouTube video.\",\n \"type\": \"object\",\n \"id\": - \"Video\",\n \"properties\": {\n \"suggestions\": {\n \"description\": - \"The suggestions object encapsulates suggestions that identify opportunities - to improve the video quality or the metadata for the uploaded video. This - data can only be retrieved by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n - \ },\n \"player\": {\n \"description\": \"The player - object contains information that you would use to play the video in an embedded - player.\",\n \"$ref\": \"VideoPlayer\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"liveStreamingDetails\": {\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n - \ },\n \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n - \ \"description\": \"Age restriction details related to a video. This - data can only be retrieved by the video owner.\"\n },\n \"fileDetails\": - {\n \"$ref\": \"VideoFileDetails\",\n \"description\": \"The - fileDetails object encapsulates information about the video file that was - uploaded to YouTube, including the file's resolution, duration, audio and - video codecs, stream bitrates, and more. This data can only be retrieved by - the video owner.\"\n },\n \"snippet\": {\n \"$ref\": - \"VideoSnippet\",\n \"description\": \"The snippet object contains - basic details about the video, such as its title, description, and category.\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the video's uploading, processing, and privacy - statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"description\": \"The localizations - object contains localized versions of the basic details about the video, such - as its title and description.\",\n \"additionalProperties\": {\n - \ \"$ref\": \"VideoLocalization\"\n }\n },\n \"processingDetails\": - {\n \"description\": \"The processingDetails object encapsulates - information about YouTube's progress in processing the uploaded video file. - The properties in the object identify the current processing status and an - estimate of the time remaining until YouTube finishes processing the video. - This part also indicates whether different types of data or content, such - as file details or thumbnail images, are available for the video. The processingProgress - object is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoProcessingDetails\"\n - \ },\n \"monetizationDetails\": {\n \"$ref\": \"VideoMonetizationDetails\",\n - \ \"description\": \"The monetizationDetails object encapsulates information - about the monetization status of the video.\"\n },\n \"topicDetails\": - {\n \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n - \ },\n \"projectDetails\": {\n \"$ref\": \"VideoProjectDetails\",\n - \ \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#video\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#video\\\".\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n }\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information about the video content, - including the length of the video and its aspect ratio.\",\n \"$ref\": - \"VideoContentDetails\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains statistics about the video.\",\n \"$ref\": - \"VideoStatistics\"\n },\n \"recordingDetails\": {\n \"$ref\": - \"VideoRecordingDetails\",\n \"description\": \"The recordingDetails - object encapsulates information about the location, date and address where - the video was recorded.\"\n }\n }\n },\n \"VideoLiveStreamingDetails\": - {\n \"id\": \"VideoLiveStreamingDetails\",\n \"type\": \"object\",\n - \ \"description\": \"Details about the live streaming metadata.\",\n \"properties\": - {\n \"concurrentViewers\": {\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"activeLiveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the currently active live chat attached to this video. This field is filled - only if the video is a currently live broadcast that has live chat. Once the - broadcast transitions to complete this field will be removed and the live - chat closed down. For persistent broadcasts that live chat id will no longer - be tied to this video but rather to the new video being displayed at the persistent - page.\"\n },\n \"scheduledStartTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The time that the broadcast is - scheduled to begin.\",\n \"type\": \"string\"\n },\n \"actualStartTime\": + the broadcast.\",\n \"type\": \"string\"\n },\n \"scheduledStartTime\": + {\n \"format\": \"date-time\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"The date and time + that the broadcast is scheduled to start.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Basic broadcast information.\"\n + \ },\n \"VideoLiveStreamingDetails\": {\n \"properties\": {\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n \"description\": \"The - time that the broadcast actually started. This value will not be available - until the broadcast begins.\",\n \"type\": \"string\"\n },\n - \ \"actualEndTime\": {\n \"format\": \"date-time\",\n \"description\": - \"The time that the broadcast actually ended. This value will not be available - until the broadcast is over.\",\n \"type\": \"string\"\n },\n - \ \"scheduledEndTime\": {\n \"description\": \"The time that - the broadcast is scheduled to end. If the value is empty or the property is - not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n }\n - \ }\n },\n \"CommentSnippet\": {\n \"id\": \"CommentSnippet\",\n - \ \"description\": \"Basic details about a comment, such as its author - and text.\",\n \"properties\": {\n \"textOriginal\": {\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n + time that the broadcast is scheduled to end. If the value is empty or the + property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n + \ \"type\": \"string\"\n },\n \"scheduledStartTime\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The time that the broadcast is scheduled to begin.\"\n + \ },\n \"actualEndTime\": {\n \"format\": \"date-time\",\n + \ \"description\": \"The time that the broadcast actually ended. This + value will not be available until the broadcast is over.\",\n \"type\": + \"string\"\n },\n \"activeLiveChatId\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the currently active live + chat attached to this video. This field is filled only if the video is a currently + live broadcast that has live chat. Once the broadcast transitions to complete + this field will be removed and the live chat closed down. For persistent broadcasts + that live chat id will no longer be tied to this video but rather to the new + video being displayed at the persistent page.\"\n },\n \"actualStartTime\": + {\n \"type\": \"string\",\n \"description\": \"The time + that the broadcast actually started. This value will not be available until + the broadcast begins.\",\n \"format\": \"date-time\"\n },\n + \ \"concurrentViewers\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"The number of viewers currently + watching the broadcast. The property and its value will be present if the + broadcast has current viewers and the broadcast owner has not hidden the viewcount + for the video. Note that YouTube stops tracking the number of concurrent viewers + for a broadcast when the broadcast ends. So, this property would not identify + the number of viewers watching an archived video of a live broadcast that + already ended.\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"Details about the live streaming metadata.\",\n \"id\": \"VideoLiveStreamingDetails\"\n + \ },\n \"VideoSuggestionsTagSuggestion\": {\n \"description\": \"A + single tag suggestion with it's relevance information.\",\n \"id\": \"VideoSuggestionsTagSuggestion\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"categoryRestricts\": + {\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"A set of video categories + for which the tag is relevant. You can use this information to display appropriate + tag suggestions based on the video category that the video uploader associates + with the video. By default, tag suggestions are relevant for all categories + if there are no restricts defined for the keyword.\"\n },\n \"tag\": + {\n \"type\": \"string\",\n \"description\": \"The keyword + tag suggested for the video.\"\n }\n }\n },\n \"VideoStatus\": + {\n \"type\": \"object\",\n \"id\": \"VideoStatus\",\n \"properties\": + {\n \"license\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"youtube\",\n + \ \"creativeCommon\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's license. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"failureReason\": {\n \"description\": + \"This value explains why a video failed to upload. This property is only + present if the uploadStatus property indicates that the upload failed.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"Unable + to convert video content.\",\n \"Invalid file format.\",\n \"Empty + file.\",\n \"File was too small.\",\n \"Unsupported + codec.\",\n \"Upload wasn't finished.\"\n ],\n \"enum\": + [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n + \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n + \ ]\n },\n \"publishAt\": {\n \"type\": \"string\",\n \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the comment was originally published.\"\n },\n \"authorDisplayName\": - {\n \"description\": \"The name of the user who posted the comment.\",\n - \ \"type\": \"string\"\n },\n \"updatedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the comment was last updated.\"\n },\n \"canRate\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the current viewer can rate this comment.\"\n },\n \"textDisplay\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comment refers to, if any.\"\n },\n \"moderationStatus\": - {\n \"description\": \"The comment's moderation status. Will not - be set if the comments were requested through the id filter.\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"enumDescriptions\": [\n - \ \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": \"string\"\n - \ },\n \"viewerRating\": {\n \"description\": \"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.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ],\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\"\n },\n - \ \"authorChannelUrl\": {\n \"type\": \"string\",\n \"description\": - \"Link to the author's YouTube channel, if any.\"\n },\n \"parentId\": - {\n \"description\": \"The unique id of the parent comment, only - set for replies.\",\n \"type\": \"string\"\n },\n \"likeCount\": - {\n \"type\": \"integer\",\n \"description\": \"The total - number of likes this comment has received.\",\n \"format\": \"uint32\"\n - \ },\n \"authorProfileImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL for the avatar of the user who posted - the comment.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"id\": \"LiveChatMessageAuthorDetails\",\n \"properties\": - {\n \"channelUrl\": {\n \"description\": \"The channel's URL.\",\n - \ \"type\": \"string\"\n },\n \"isChatModerator\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether the - author is a moderator of the live chat.\"\n },\n \"profileImageUrl\": - {\n \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel ID.\"\n },\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - display name.\"\n },\n \"isChatOwner\": {\n \"description\": - \"Whether the author is the owner of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"isChatSponsor\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a sponsor - of the live chat.\"\n },\n \"isVerified\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author's identity has - been verified by YouTube.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"properties\": - {\n \"seedResourceId\": {\n \"description\": \"The seedResourceId - object contains information about the resource that caused the recommendation.\",\n - \ \"$ref\": \"ResourceId\"\n },\n \"resourceId\": {\n - \ \"description\": \"The resourceId object contains information that - identifies the recommended resource.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"reason\": {\n \"type\": \"string\",\n \"enum\": - [\n \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The reason that the resource is - recommended to the user.\"\n }\n },\n \"description\": \"Information - that identifies the recommended resource.\",\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsRecommendation\"\n },\n \"ActivitySnippet\": - {\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the resource primarily associated - with the activity.\"\n },\n \"groupId\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the video was uploaded.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"description\": \"The type of - activity that the resource describes.\",\n \"type\": \"string\",\n + and time when the video is scheduled to publish. It can be set only if the + privacy status of the video is private..\"\n },\n \"rejectionReason\": + {\n \"type\": \"string\",\n \"enum\": [\n \"copyright\",\n + \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n + \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n + \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n + \ ],\n \"description\": \"This value explains why YouTube + rejected an uploaded video. This property is only present if the uploadStatus + property indicates that the upload was rejected.\",\n \"enumDescriptions\": + [\n \"Copyright infringement.\",\n \"Inappropriate video + content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms + of use violation.\",\n \"Uploader account was suspended.\",\n \"Video + duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader + closed his/her account.\",\n \"Trademark infringement.\",\n \"An + unspecified legal reason.\"\n ]\n },\n \"uploadStatus\": + {\n \"enumDescriptions\": [\n \"Video has been uploaded + but not processed yet.\",\n \"Video has been successfully processed.\",\n + \ \"Processing has failed. See FailureReason.\",\n \"Video + has been rejected. See RejectionReason.\",\n \"Video has been deleted.\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"uploaded\",\n + \ \"processed\",\n \"failed\",\n \"rejected\",\n + \ \"deleted\"\n ],\n \"description\": \"The status + of the uploaded video.\"\n },\n \"publicStatsViewable\": {\n + \ \"description\": \"This value indicates if the extended video statistics + on the watch page can be viewed by everyone. Note that the view count, likes, + etc will still be visible if this is disabled. @mutable youtube.videos.insert + youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"embeddable\": + {\n \"type\": \"boolean\",\n \"description\": \"This value + indicates if the video can be embedded on another website. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n },\n \"madeForKids\": {\n + \ \"type\": \"boolean\"\n },\n \"privacyStatus\": {\n + \ \"description\": \"The video's privacy status.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"type\": \"string\"\n }\n + \ },\n \"description\": \"Basic details about a video category, such + as its localized title. Next Id: 18\"\n },\n \"SubscriptionSubscriberSnippet\": + {\n \"properties\": {\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The description of the subscriber.\"\n + \ },\n \"title\": {\n \"description\": \"The title of + the subscriber.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The channel + ID of the subscriber.\"\n },\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"Thumbnails for this subscriber.\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic + details about a subscription's subscriber including title, description, channel + ID and thumbnails.\",\n \"id\": \"SubscriptionSubscriberSnippet\"\n },\n + \ \"RelatedEntity\": {\n \"type\": \"object\",\n \"properties\": + {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n },\n + \ \"id\": \"RelatedEntity\"\n },\n \"Thumbnail\": {\n \"id\": + \"Thumbnail\",\n \"properties\": {\n \"width\": {\n \"description\": + \"(Optional) Width of the thumbnail image.\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\"\n },\n \"height\": {\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"(Optional) Height of the thumbnail image.\"\n },\n \"url\": + {\n \"description\": \"The thumbnail image's URL.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"A thumbnail is an + image representing a YouTube resource.\",\n \"type\": \"object\"\n },\n + \ \"ChannelSectionSnippet\": {\n \"description\": \"Basic details about + a channel section, including title, style and position.\",\n \"properties\": + {\n \"position\": {\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"description\": \"The position of the channel section + in the channel.\"\n },\n \"style\": {\n \"enum\": [\n + \ \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n + \ \"verticalList\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"description\": \"The style of the channel section.\",\n \"type\": + \"string\"\n },\n \"type\": {\n \"description\": \"The + type of the channel section.\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n + \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n + \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n + \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n + \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n + \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n + \ \"subscriptions\"\n ],\n \"type\": \"string\",\n \ \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ]\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel responsible - for this activity\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel associated with the activity.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the resource primarily associated with the activity. @mutable youtube.activities.insert\"\n - \ },\n \"thumbnails\": {\n \"description\": \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n }\n - \ },\n \"id\": \"ActivitySnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\"\n },\n - \ \"LiveChatModerator\": {\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the moderator.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n \"default\": - \"youtube#liveChatModerator\"\n }\n },\n \"id\": \"LiveChatModerator\",\n - \ \"description\": \"A *liveChatModerator* resource represents a moderator - for a YouTube live chat. A chat moderator has the ability to ban/unban users - from a chat, remove message, etc.\",\n \"type\": \"object\"\n },\n - \ \"SuperStickerMetadata\": {\n \"id\": \"SuperStickerMetadata\",\n - \ \"properties\": {\n \"altText\": {\n \"type\": \"string\",\n - \ \"description\": \"Internationalized alt text that describes the - sticker image and any animation associated with it.\"\n },\n \"stickerId\": - {\n \"description\": \"Unique identifier of the Super Sticker. This - is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\",\n \"type\": \"string\"\n },\n - \ \"altTextLanguage\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the localization language in which the alt text is returned.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"retractedMessageId\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"LiveChatMessageSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"type\": {\n \"enum\": [\n \"invalidType\",\n - \ \"textMessageEvent\",\n \"tombstone\",\n \"fanFundingEvent\",\n - \ \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"displayMessage\": {\n \"description\": - \"Contains a string that can be displayed to the user. If this field is not - present the message is silent, at the moment only messages of type TOMBSTONE - and CHAT_ENDED_EVENT are silent.\",\n \"type\": \"string\"\n },\n - \ \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n - \ \"description\": \"Details about the Super Chat event, this is only - set if the type is 'superChatEvent'.\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"hasDisplayContent\": - {\n \"description\": \"Whether the message has display content that - should be displayed to users.\",\n \"type\": \"boolean\"\n },\n - \ \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"superStickerDetails\": {\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"memberMilestoneChatDetails\": - {\n \"description\": \"Details about the Member Milestone Chat event, - this is only set if the type is 'memberMilestoneChatEvent'.\",\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"authorChannelId\": - {\n \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\",\n \"type\": \"string\"\n },\n \"newSponsorDetails\": - {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": - \"Details about the New Member Announcement event, this is only set if the - type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term - for \\\"sponsor\\\".\"\n },\n \"liveChatId\": {\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the message was orignally published.\"\n },\n - \ \"fanFundingEventDetails\": {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n - \ \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ }\n },\n \"id\": \"LiveChatMessageSnippet\",\n \"description\": - \"Next ID: 33\"\n },\n \"MemberSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"membershipsDetails\": {\n \"description\": - \"Details about the user's membership.\",\n \"$ref\": \"MembershipsDetails\"\n - \ },\n \"memberDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the member.\"\n },\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering memberships.\"\n }\n },\n \"id\": - \"MemberSnippet\"\n },\n \"VideoRating\": {\n \"id\": \"VideoRating\",\n - \ \"properties\": {\n \"rating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"description\": \"Rating of a video.\"\n },\n \"videoId\": + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that published + the channel section.\"\n },\n \"defaultLanguage\": {\n \"description\": + \"The language of the channel section's default title and description.\",\n + \ \"type\": \"string\"\n },\n \"localized\": {\n \"$ref\": + \"ChannelSectionLocalization\",\n \"description\": \"Localized title, + read-only.\"\n },\n \"title\": {\n \"description\": + \"The channel section's title for multiple_playlists and multiple_channels.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ChannelSectionSnippet\"\n },\n \"Member\": {\n \"properties\": + {\n \"kind\": {\n \"default\": \"youtube#member\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the member.\",\n \"$ref\": \"MemberSnippet\"\n + \ }\n },\n \"description\": \"A *member* resource represents + a member for a YouTube channel. A member provides recurring monetary support + to a creator and receives special benefits.\",\n \"type\": \"object\",\n + \ \"id\": \"Member\"\n },\n \"PlaylistItemListResponse\": {\n \"type\": + \"object\",\n \"id\": \"PlaylistItemListResponse\",\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n },\n + \ \"description\": \"A list of playlist items that match the request + criteria.\",\n \"type\": \"array\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\",\n + \ \"default\": \"youtube#playlistItemListResponse\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ }\n }\n },\n \"MonitorStreamInfo\": {\n \"properties\": + {\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": + \"HTML code that embeds a player that plays the monitor stream.\"\n },\n + \ \"broadcastStreamDelayMs\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"If you have set the enableMonitorStream property + to true, then this property determines the length of the live broadcast delay.\",\n + \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n + \ \"enableMonitorStream\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"This value determines whether the monitor stream + is enabled for the broadcast. If the monitor stream is enabled, then YouTube + will broadcast the event content on a special stream intended only for the + broadcaster's consumption. The broadcaster can use the stream to review the + event content and also to identify the optimal times to insert cuepoints. + You need to set this value to true if you intend to have a broadcast delay + for your event. *Note:* This property cannot be updated once the broadcast + is in the testing or live state.\",\n \"type\": \"boolean\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"MonitorStreamInfo\",\n + \ \"description\": \"Settings and Info of the monitor stream\"\n },\n + \ \"LiveStreamStatus\": {\n \"properties\": {\n \"healthStatus\": + {\n \"description\": \"The health status of the stream.\",\n \"$ref\": + \"LiveStreamHealthStatus\"\n },\n \"streamStatus\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"created\",\n \"ready\",\n \"active\",\n + \ \"inactive\",\n \"error\"\n ]\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"Brief description + of the live stream status.\",\n \"id\": \"LiveStreamStatus\"\n },\n + \ \"PlaylistItem\": {\n \"type\": \"object\",\n \"description\": + \"A *playlistItem* resource identifies another resource, such as a video, + that is included in a playlist. In addition, the playlistItem resource contains + details about the included resource that pertain specifically to how that + resource is used in that playlist. YouTube uses playlists to identify special + collections of videos for a channel, such as: - uploaded videos - favorite + videos - positively rated (liked) videos - watch history - watch later To + be more specific, these lists are associated with a channel, which is a collection + of a person, group, or company's videos, playlists, and other YouTube information. + You can retrieve the playlist IDs for each of these lists from the channel + resource for a given channel. You can then use the playlistItems.list method + to retrieve any of those lists. You can also add or remove items from those + lists by calling the playlistItems.insert and playlistItems.delete methods. + For example, if a user gives a positive rating to a video, you would insert + that video into the liked videos playlist for that user's channel.\",\n \"properties\": + {\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the playlist item.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the playlist item, such + as its title and position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#playlistItem\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlistItem\\\".\",\n \"type\": \"string\"\n + \ },\n \"status\": {\n \"description\": \"The status + object contains information about the playlist item's privacy status.\",\n + \ \"$ref\": \"PlaylistItemStatus\"\n },\n \"contentDetails\": + {\n \"description\": \"The contentDetails object is included in the + resource if the included item is a YouTube video. The object contains additional + information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n + \ }\n },\n \"id\": \"PlaylistItem\"\n },\n \"LiveChatMessageListResponse\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageListResponse\",\n + \ \"properties\": {\n \"offlineAt\": {\n \"description\": + \"The date and time when the underlying stream went offline.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"LiveChatMessage\"\n },\n \"type\": \"array\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n + \ \"default\": \"youtube#liveChatMessageListResponse\",\n \"type\": + \"string\"\n },\n \"pollingIntervalMillis\": {\n \"type\": + \"integer\",\n \"description\": \"The amount of time the client should + wait before polling again.\",\n \"format\": \"uint32\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n }\n }\n },\n \"ImageSettings\": + {\n \"properties\": {\n \"bannerTabletLowImageUrl\": {\n \"type\": + \"string\",\n \"description\": \"Banner image. Tablet size low resolution + (1138x188).\"\n },\n \"bannerMobileHdImageUrl\": {\n \"description\": + \"Banner image. Mobile size high resolution (1280x360).\",\n \"type\": + \"string\"\n },\n \"bannerExternalUrl\": {\n \"description\": + \"This is generated when a ChannelBanner.Insert request has succeeded for + the given channel.\",\n \"type\": \"string\"\n },\n \"bannerTvImageUrl\": + {\n \"description\": \"Banner image. TV size extra high resolution + (2120x1192).\",\n \"type\": \"string\"\n },\n \"backgroundImageUrl\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The URL for the background image shown on the video watch page. The image + should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n + \ \"watchIconImageUrl\": {\n \"type\": \"string\"\n },\n + \ \"bannerImageUrl\": {\n \"description\": \"Banner image. + Desktop size (1060x175).\",\n \"type\": \"string\"\n },\n + \ \"largeBrandedBannerImageImapScript\": {\n \"$ref\": \"LocalizedProperty\",\n + \ \"description\": \"The image map script for the large banner image.\"\n + \ },\n \"bannerMobileLowImageUrl\": {\n \"description\": + \"Banner image. Mobile size low resolution (320x88).\",\n \"type\": + \"string\"\n },\n \"smallBrandedBannerImageUrl\": {\n \"description\": + \"The URL for the 640px by 70px banner image that appears below the video + player in the default view of the video watch page. The URL for the image + that appears above the top-left corner of the video player. This is a 25-pixel-high + image with a flexible width that cannot exceed 170 pixels.\",\n \"$ref\": + \"LocalizedProperty\"\n },\n \"bannerTvLowImageUrl\": {\n \"description\": + \"Banner image. TV size low resolution (854x480).\",\n \"type\": + \"string\"\n },\n \"bannerTvMediumImageUrl\": {\n \"type\": + \"string\",\n \"description\": \"Banner image. TV size medium resolution + (1280x720).\"\n },\n \"bannerTabletImageUrl\": {\n \"type\": + \"string\",\n \"description\": \"Banner image. Tablet size (1707x283).\"\n + \ },\n \"bannerMobileMediumHdImageUrl\": {\n \"type\": + \"string\",\n \"description\": \"Banner image. Mobile size medium/high + resolution (960x263).\"\n },\n \"smallBrandedBannerImageImapScript\": + {\n \"description\": \"The image map script for the small banner + image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileImageUrl\": + {\n \"description\": \"Banner image. Mobile size (640x175).\",\n + \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": + {\n \"description\": \"The URL for the 854px by 70px image that appears + below the video player in the expanded video view of the video watch page.\",\n + \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTabletExtraHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size extra high resolution (2560x424).\"\n },\n \"bannerMobileExtraHdImageUrl\": + {\n \"description\": \"Banner image. Mobile size high resolution + (1440x395).\",\n \"type\": \"string\"\n },\n \"bannerTabletHdImageUrl\": + {\n \"description\": \"Banner image. Tablet size high resolution + (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size high resolution (1920x1080).\"\n },\n \"trackingImageUrl\": + {\n \"description\": \"The URL for a 1px by 1px tracking pixel that + can be used to collect statistics for views of the channel or video pages.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"ImageSettings\",\n + \ \"description\": \"Branding properties for images associated with the + channel.\",\n \"type\": \"object\"\n },\n \"PlaylistSnippet\": + {\n \"type\": \"object\",\n \"id\": \"PlaylistSnippet\",\n \"description\": + \"Basic details about a playlist, including title, description and thumbnails.\",\n + \ \"properties\": {\n \"tags\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": + \"Keyword tags associated with the playlist.\"\n },\n \"thumbnails\": + {\n \"description\": \"A map of thumbnail images associated with + the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the channel that published the playlist.\",\n \"type\": \"string\"\n + \ },\n \"channelTitle\": {\n \"description\": \"The + channel title of the channel that the video belongs to.\",\n \"type\": + \"string\"\n },\n \"defaultLanguage\": {\n \"description\": + \"The language of the playlist's default title and description.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"annotations\": {\n + \ \"required\": [\n \"youtube.playlists.insert\",\n + \ \"youtube.playlists.update\"\n ]\n },\n + \ \"description\": \"The playlist's title.\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"format\": \"date-time\",\n \"description\": \"The date + and time that the playlist was created.\"\n },\n \"localized\": + {\n \"description\": \"Localized title and description, read-only.\",\n + \ \"$ref\": \"PlaylistLocalization\"\n },\n \"thumbnailVideoId\": + {\n \"type\": \"string\",\n \"description\": \"Note: if + the playlist has a custom thumbnail, this field will not be populated. The + video id selected by the user that will be used as the thumbnail of this playlist. + This field defaults to the first publicly viewable video in the playlist, + if: 1. The user has never selected a video to be the thumbnail of the playlist. + 2. The user selects a video to be the thumbnail, and then removes that video + from the playlist. 3. The user selects a non-owned video to be the thumbnail, + but that video becomes private, or gets deleted.\"\n },\n \"description\": + {\n \"description\": \"The playlist's description.\",\n \"type\": + \"string\"\n }\n }\n },\n \"ActivityContentDetailsFavorite\": + {\n \"description\": \"Information about a video that was marked as a + favorite video.\",\n \"type\": \"object\",\n \"properties\": {\n + \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + that was marked as a favorite.\"\n }\n },\n \"id\": \"ActivityContentDetailsFavorite\"\n + \ },\n \"I18nRegionSnippet\": {\n \"description\": \"Basic details + about an i18n region, such as region code and human-readable name.\",\n \"type\": + \"object\",\n \"id\": \"I18nRegionSnippet\",\n \"properties\": {\n + \ \"gl\": {\n \"type\": \"string\",\n \"description\": + \"The region code as a 2-letter ISO country code.\"\n },\n \"name\": + {\n \"type\": \"string\",\n \"description\": \"The human-readable + name of the region.\"\n }\n }\n },\n \"SuperChatEventSnippet\": + {\n \"id\": \"SuperChatEventSnippet\",\n \"properties\": {\n \"messageType\": + {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The tier for the paid message, which is based on the amount of money spent + to purchase the message.\"\n },\n \"currency\": {\n \"description\": + \"The currency in which the purchase was made. ISO 4217.\",\n \"type\": + \"string\"\n },\n \"supporterDetails\": {\n \"$ref\": + \"ChannelProfileDetails\",\n \"description\": \"Details about the + supporter.\"\n },\n \"createdAt\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time when the event + occurred.\",\n \"type\": \"string\"\n },\n \"isSuperStickerEvent\": + {\n \"type\": \"boolean\",\n \"description\": \"True if + this event is a Super Sticker event.\"\n },\n \"amountMicros\": + {\n \"description\": \"The purchase amount, in micros of the purchase + currency. e.g., 1 is represented as 1000000.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n },\n \"displayString\": {\n + \ \"description\": \"A rendered string that displays the purchase + amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the + given language.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"description\": \"Channel id where the event occurred.\",\n + \ \"type\": \"string\"\n },\n \"superStickerMetadata\": + {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": + \"If this event is a Super Sticker event, this field will contain metadata + about the Super Sticker.\"\n },\n \"commentText\": {\n \"description\": + \"The text contents of the comment left by the user.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"IngestionInfo\": + {\n \"type\": \"object\",\n \"description\": \"Describes information + necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"id\": \"IngestionInfo\",\n + \ \"properties\": {\n \"ingestionAddress\": {\n \"type\": + \"string\",\n \"description\": \"The primary ingestion URL that you + should use to stream video to YouTube. You must stream video to this URL. + Depending on which application or tool you use to encode your video stream, + you may need to enter the stream URL and stream name separately or you may + need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* + \"\n },\n \"rtmpsIngestionAddress\": {\n \"type\": + \"string\",\n \"description\": \"This ingestion url may be used instead + of ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP + streams.\"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"type\": + \"string\",\n \"description\": \"This ingestion url may be used instead + of backupIngestionAddress in order to stream via RTMPS. Not applicable to + non-RTMP streams.\"\n },\n \"backupIngestionAddress\": {\n \"type\": + \"string\",\n \"description\": \"The backup ingestion URL that you + should use to stream video to YouTube. You have the option of simultaneously + streaming the content that you are sending to the ingestionAddress to this + URL.\"\n },\n \"streamName\": {\n \"description\": + \"The stream name that YouTube assigns to the video stream.\",\n \"type\": + \"string\"\n }\n }\n },\n \"ChannelSectionListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": + \"youtube#channelSectionListResponse\",\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": + \"A list of ChannelSections that match the request criteria.\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"ChannelSectionListResponse\"\n },\n \"VideoAbuseReportReasonListResponse\": + {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n \"type\": + \"object\",\n \"properties\": {\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n + \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The `visitorId` identifies the visitor.\"\n + \ },\n \"items\": {\n \"description\": \"A list of valid + abuse reasons that are used with `video.ReportAbuse`.\",\n \"items\": + {\n \"$ref\": \"VideoAbuseReportReason\"\n },\n \"type\": + \"array\"\n },\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n }\n }\n },\n \"ChannelSection\": {\n + \ \"id\": \"ChannelSection\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n }\n },\n \"description\": - \"Basic details about rating of a video.\",\n \"type\": \"object\"\n - \ },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"memberLevelName\": - {\n \"description\": \"The name of the Level at which the viewer - is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"gifterChannelId\": - {\n \"description\": \"The ID of the user that made the membership - gifting purchase. This matches the `snippet.authorChannelId` of the associated - membership gifting message.\",\n \"type\": \"string\"\n },\n - \ \"associatedMembershipGiftingMessageId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\"\n }\n }\n },\n \"TestItem\": - {\n \"id\": \"TestItem\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"TestItemTestItemSnippet\"\n },\n \"id\": - {\n \"type\": \"string\"\n },\n \"featuredPart\": {\n - \ \"type\": \"boolean\"\n },\n \"gaia\": {\n \"format\": - \"int64\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"CommentThreadSnippet\": {\n \"description\": - \"Basic details about a comment thread.\",\n \"properties\": {\n \"topLevelComment\": - {\n \"description\": \"The top level comment of this thread.\",\n - \ \"$ref\": \"Comment\"\n },\n \"channelId\": {\n \"type\": + YouTube uses to uniquely identify the channel section.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n + \ \"description\": \"The targeting object contains basic targeting + settings about the channel section.\"\n },\n \"snippet\": {\n + \ \"$ref\": \"ChannelSectionSnippet\",\n \"description\": + \"The snippet object contains basic details about the channel section, such + as its type, style and title.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#channelSection\"\n + \ },\n \"localizations\": {\n \"type\": \"object\",\n + \ \"description\": \"Localizations for different languages\",\n \"additionalProperties\": + {\n \"$ref\": \"ChannelSectionLocalization\"\n }\n },\n + \ \"contentDetails\": {\n \"description\": \"The contentDetails + object contains details about the channel section content, such as a list + of playlists or channels featured in the section.\",\n \"$ref\": + \"ChannelSectionContentDetails\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"CommentThreadSnippet\": {\n \"properties\": {\n \"isPublic\": + {\n \"description\": \"Whether the thread (and therefore all its + comments) is visible to all YouTube users.\",\n \"type\": \"boolean\"\n + \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the video the comments refer to, if any. No video_id implies a + channel discussion comment.\"\n },\n \"topLevelComment\": {\n + \ \"$ref\": \"Comment\",\n \"description\": \"The top level + comment of this thread.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"isPublic\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\"\n },\n \"totalReplyCount\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total number of replies (not including the top level comment).\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID of the video the - comments refer to, if any. No video_id implies a channel discussion comment.\",\n - \ \"type\": \"string\"\n },\n \"canReply\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n }\n },\n \"id\": \"CommentThreadSnippet\",\n - \ \"type\": \"object\"\n },\n \"CommentThreadReplies\": {\n \"description\": - \"Comments written in (direct or indirect) reply to the top level comment.\",\n - \ \"properties\": {\n \"comments\": {\n \"type\": \"array\",\n - \ \"description\": \"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.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n }\n }\n },\n \"id\": - \"CommentThreadReplies\",\n \"type\": \"object\"\n },\n \"TestItemTestItemSnippet\": - {\n \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\",\n - \ \"type\": \"object\"\n },\n \"LiveChatBan\": {\n \"id\": - \"LiveChatBan\",\n \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatBan\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\"\n - \ },\n \"CommentThread\": {\n \"description\": \"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.\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n - \ },\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n - \ \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the comment thread.\",\n \"type\": \"string\"\n + \ \"canReply\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n + \ },\n \"totalReplyCount\": {\n \"type\": \"integer\",\n + \ \"format\": \"uint32\",\n \"description\": \"The total + number of replies (not including the top level comment).\"\n }\n },\n + \ \"id\": \"CommentThreadSnippet\",\n \"description\": \"Basic details + about a comment thread.\",\n \"type\": \"object\"\n },\n \"TestItemTestItemSnippet\": + {\n \"type\": \"object\",\n \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\"\n + \ },\n \"I18nLanguage\": {\n \"type\": \"object\",\n \"properties\": + {\n \"id\": {\n \"description\": \"The ID that YouTube uses + to uniquely identify the i18n language.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#i18nLanguage\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the i18n language, such as language code + and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"I18nLanguage\",\n \"description\": \"An *i18nLanguage* resource identifies + a UI language currently supported by YouTube.\"\n },\n \"ActivityContentDetailsUpload\": + {\n \"id\": \"ActivityContentDetailsUpload\",\n \"properties\": + {\n \"videoId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the uploaded video.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Information about the uploaded + video.\",\n \"type\": \"object\"\n },\n \"PlaylistStatus\": {\n + \ \"properties\": {\n \"privacyStatus\": {\n \"enum\": + [\n \"public\",\n \"unlisted\",\n \"private\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The playlist's privacy status.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ]\n }\n },\n \"type\": + \"object\",\n \"id\": \"PlaylistStatus\"\n },\n \"VideoRating\": + {\n \"description\": \"Basic details about rating of a video.\",\n \"id\": + \"VideoRating\",\n \"type\": \"object\",\n \"properties\": {\n \"rating\": + {\n \"description\": \"Rating of a video.\",\n \"enum\": + [\n \"none\",\n \"like\",\n \"dislike\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ]\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": + \"string\"\n }\n }\n },\n \"LiveChatBanSnippet\": {\n \"type\": + \"object\",\n \"properties\": {\n \"banDurationSeconds\": {\n + \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n },\n + \ \"liveChatId\": {\n \"description\": \"The chat this ban + is pertinent to.\",\n \"type\": \"string\"\n },\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"type\": + {\n \"description\": \"The type of ban.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n + \ \"temporary\"\n ],\n \"enumDescriptions\": [\n + \ \"An invalid ban type.\",\n \"A permanent ban.\",\n + \ \"A temporary ban.\"\n ]\n }\n },\n \"id\": + \"LiveChatBanSnippet\"\n },\n \"LanguageTag\": {\n \"properties\": + {\n \"value\": {\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"LanguageTag\"\n },\n \"ThirdPartyLinkSnippet\": + {\n \"type\": \"object\",\n \"properties\": {\n \"type\": + {\n \"description\": \"Type of the link named after the entities + that are being linked.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel with + a store on a merchandising platform in order to enable retail commerce capabilities + for that channel on YouTube.\"\n ],\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"type\": \"string\"\n + \ },\n \"channelToStoreLink\": {\n \"description\": + \"Information specific to a link between a channel and a store on a merchandising + platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n }\n + \ },\n \"description\": \"Basic information about a third party account + link, including its type and type-specific information.\",\n \"id\": + \"ThirdPartyLinkSnippet\"\n },\n \"Comment\": {\n \"id\": \"Comment\",\n + \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the comment.\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#comment\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"default\": \"youtube#commentThread\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"CommentThread\"\n - \ },\n \"PlaylistContentDetails\": {\n \"properties\": {\n \"itemCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"PlaylistContentDetails\"\n },\n \"ChannelConversionPing\": - {\n \"id\": \"ChannelConversionPing\",\n \"description\": \"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.\",\n \"type\": \"object\",\n \"properties\": {\n \"context\": - {\n \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ],\n \"description\": \"Defines - the context of the ping.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"conversionUrl\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n }\n },\n \"ChannelSectionLocalization\": - {\n \"type\": \"object\",\n \"properties\": {\n \"title\": - {\n \"description\": \"The localized strings for channel section's - title.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"ChannelSection localization setting\",\n \"id\": \"ChannelSectionLocalization\"\n - \ },\n \"ActivityContentDetailsPlaylistItem\": {\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"Information about a new playlist item.\",\n \"type\": - \"object\",\n \"properties\": {\n \"playlistId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\",\n \"$ref\": \"ResourceId\"\n },\n \"playlistItemId\": - {\n \"description\": \"ID of the item within the playlist.\",\n \"type\": - \"string\"\n }\n }\n },\n \"MembershipsLevelListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"items\": - {\n \"description\": \"A list of pricing levels offered by a creator - to the fans.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"$ref\": \"MembershipsLevel\"\n }\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevelListResponse\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\"\n - \ },\n \"PlaylistLocalization\": {\n \"description\": \"Playlist - localization setting\",\n \"id\": \"PlaylistLocalization\",\n \"type\": - \"object\",\n \"properties\": {\n \"description\": {\n \"description\": - \"The localized strings for playlist's description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for playlist's title.\"\n - \ }\n }\n },\n \"ChannelBrandingSettings\": {\n \"type\": - \"object\",\n \"id\": \"ChannelBrandingSettings\",\n \"description\": - \"Branding properties of a YouTube channel.\",\n \"properties\": {\n - \ \"hints\": {\n \"type\": \"array\",\n \"description\": - \"Additional experimental branding properties.\",\n \"items\": {\n - \ \"$ref\": \"PropertyValue\"\n }\n },\n \"image\": - {\n \"description\": \"Branding properties for branding images.\",\n - \ \"$ref\": \"ImageSettings\"\n },\n \"watch\": {\n - \ \"description\": \"Branding properties for the watch page.\",\n - \ \"$ref\": \"WatchSettings\"\n },\n \"channel\": {\n - \ \"description\": \"Branding properties for the channel view.\",\n - \ \"$ref\": \"ChannelSettings\"\n }\n }\n },\n \"ChannelSection\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#channelSection\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n + \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the comment.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"A *comment* represents a single YouTube comment.\"\n },\n \"CommentSnippetAuthorChannelId\": + {\n \"id\": \"CommentSnippetAuthorChannelId\",\n \"description\": + \"The id of the author's YouTube channel, if any.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n + \ }\n }\n },\n \"SearchResultSnippet\": {\n \"id\": + \"SearchResultSnippet\",\n \"type\": \"object\",\n \"properties\": + {\n \"channelTitle\": {\n \"description\": \"The title of + the channel that published the resource that the search result identifies.\",\n + \ \"type\": \"string\"\n },\n \"liveBroadcastContent\": + {\n \"description\": \"It indicates if the resource (video or channel) + has upcoming/active live broadcast content. Or it's \\\"none\\\" if there + is not any upcoming/active live broadcasts.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been completed.\"\n + \ ]\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + search result. 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.\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"description\": \"The creation date and time of + the resource that the search result identifies.\",\n \"type\": \"string\"\n + \ },\n \"channelId\": {\n \"description\": \"The value + that YouTube uses to uniquely identify the channel that published the resource + that the search result identifies.\",\n \"type\": \"string\"\n },\n + \ \"title\": {\n \"type\": \"string\",\n \"description\": + \"The title of the search result.\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"A description + of the search result.\"\n }\n },\n \"description\": \"Basic + details about a search result, including title, description and thumbnails + of the item referenced by the search result.\"\n },\n \"CommentListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Comment\"\n },\n + \ \"description\": \"A list of comments that match the request criteria.\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n + \ }\n },\n \"id\": \"CommentListResponse\"\n },\n \"ActivityContentDetailsLike\": + {\n \"description\": \"Information about a resource that received a positive + (like) rating.\",\n \"id\": \"ActivityContentDetailsLike\",\n \"properties\": + {\n \"resourceId\": {\n \"description\": \"The resourceId + object contains information that identifies the rated resource.\",\n \"$ref\": + \"ResourceId\"\n }\n },\n \"type\": \"object\"\n },\n + \ \"ThirdPartyLinkListResponse\": {\n \"type\": \"object\",\n \"properties\": + {\n \"items\": {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n + \ },\n \"type\": \"array\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\"\n \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\",\n \"$ref\": - \"ChannelSectionContentDetails\"\n },\n \"targeting\": {\n \"$ref\": - \"ChannelSectionTargeting\",\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the channel section, such as its type, style and title.\",\n - \ \"$ref\": \"ChannelSectionSnippet\"\n },\n \"localizations\": - {\n \"description\": \"Localizations for different languages\",\n - \ \"type\": \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n }\n }\n },\n \"id\": - \"ChannelSection\",\n \"type\": \"object\"\n },\n \"AccessPolicy\": - {\n \"description\": \"Rights management policy for YouTube resources.\",\n - \ \"type\": \"object\",\n \"id\": \"AccessPolicy\",\n \"properties\": - {\n \"exception\": {\n \"type\": \"array\",\n \"items\": + \"Etag of this resource.\"\n }\n },\n \"id\": \"ThirdPartyLinkListResponse\"\n + \ },\n \"VideoMonetizationDetails\": {\n \"id\": \"VideoMonetizationDetails\",\n + \ \"description\": \"Details about monetization of a YouTube Video.\",\n + \ \"properties\": {\n \"access\": {\n \"description\": + \"The value of access indicates whether the video can be monetized or not.\",\n + \ \"$ref\": \"AccessPolicy\"\n }\n },\n \"type\": + \"object\"\n },\n \"ChannelSectionContentDetails\": {\n \"properties\": + {\n \"channels\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\"\n },\n \"allowed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"The value of allowed indicates whether the access - to the policy is allowed or denied by default.\"\n }\n }\n },\n - \ \"MembershipsLevelSnippet\": {\n \"properties\": {\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering channel memberships.\"\n },\n \"levelDetails\": - {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details - about the pricing level.\"\n }\n },\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"type\": \"object\"\n },\n \"MembershipsDuration\": {\n \"properties\": - {\n \"memberSince\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the user became a continuous member across all levels.\"\n - \ },\n \"memberTotalDurationMonths\": {\n \"description\": - \"The cumulative time the user has been a member across all levels in complete - months (the time is rounded down to the nearest integer).\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n }\n },\n \"id\": - \"MembershipsDuration\",\n \"type\": \"object\"\n },\n \"LiveStream\": - {\n \"description\": \"A live stream describes a live ingestion point.\",\n - \ \"properties\": {\n \"contentDetails\": {\n \"description\": - \"The content_details object contains information about the stream, including - the closed captions ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n - \ },\n \"snippet\": {\n \"$ref\": \"LiveStreamSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the stream, including its channel, title, and description.\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"default\": \"youtube#liveStream\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the stream.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"cdn\": {\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\",\n \"$ref\": \"CdnSettings\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"LiveStream\",\n - \ \"type\": \"object\"\n },\n \"SuperChatEventListResponse\": {\n - \ \"id\": \"SuperChatEventListResponse\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n \"default\": - \"youtube#superChatEventListResponse\",\n \"type\": \"string\"\n + \"The channel ids for type multiple_channels.\"\n },\n \"playlists\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"The playlist + ids for type single_playlist and multiple_playlists. For singlePlaylist, only + one playlistId is allowed.\"\n }\n },\n \"id\": \"ChannelSectionContentDetails\",\n + \ \"type\": \"object\",\n \"description\": \"Details about a channelsection, + including playlists and channels.\"\n },\n \"VideoProjectDetails\": + {\n \"description\": \"DEPRECATED. b/157517979: This part was never populated + after it was added. However, it sees non-zero traffic because there is generated + client code in the wild that refers to it [1]. We keep this field and do NOT + remove it because otherwise V3 would return an error when this part gets requested + [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"type\": \"object\",\n \"id\": \"VideoProjectDetails\",\n \"properties\": + {}\n },\n \"ChannelTopicDetails\": {\n \"description\": \"Freebase + topic information related to the channel.\",\n \"type\": \"object\",\n + \ \"id\": \"ChannelTopicDetails\",\n \"properties\": {\n \"topicIds\": + {\n \"description\": \"A list of Freebase topic IDs associated with + the channel. You can retrieve information about each topic using the Freebase + Topic API.\",\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"type\": \"array\"\n },\n \"topicCategories\": + {\n \"description\": \"A list of Wikipedia URLs that describe the + channel's content.\",\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n }\n }\n }\n },\n + \ \"VideoCategoryListResponse\": {\n \"properties\": {\n \"kind\": + {\n \"default\": \"youtube#videoCategoryListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"description\": \"A list of video categories + that can be associated with YouTube videos. In this map, the video category + ID is the map key, and its value is the corresponding videoCategory resource.\",\n + \ \"items\": {\n \"$ref\": \"VideoCategory\"\n },\n + \ \"type\": \"array\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n \ },\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n },\n - \ \"description\": \"A list of Super Chat purchases that match the - request criteria.\",\n \"type\": \"array\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"eventId\": {\n - \ \"type\": \"string\",\n \"description\": \"Serialized EventId - of the request which produced this response.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"properties\": {\n \"amountMicros\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The amount of the fund.\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatFanFundingEventDetails\"\n },\n \"LiveChatTextMessageDetails\": - {\n \"id\": \"LiveChatTextMessageDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"messageText\": {\n \"description\": - \"The user's message.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"MembershipsLevel\": {\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the memberships level.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the level.\",\n \"$ref\": - \"MembershipsLevelSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#membershipsLevel\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ }\n },\n \"id\": \"MembershipsLevel\",\n \"type\": - \"object\",\n \"description\": \"A *membershipsLevel* resource represents - an offer made by YouTube creators for their fans. Users can become members - of the channel by joining one of the available levels. They will provide recurring - monetary support and receives special benefits.\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"referenceUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL of the social network post.\"\n },\n - \ \"author\": {\n \"description\": \"The author of the social - network post.\",\n \"type\": \"string\"\n },\n \"imageUrl\": - {\n \"description\": \"An image of the post's author.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"description\": \"The name of the social network.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"description\": \"Details about a social network post.\",\n - \ \"id\": \"ActivityContentDetailsSocial\",\n \"type\": \"object\"\n - \ },\n \"PlaylistSnippet\": {\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails.\",\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the playlist.\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the playlist - was created.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"tags\": - {\n \"description\": \"Keyword tags associated with the playlist.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the playlist's default title and description.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The playlist's description.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.playlists.insert\",\n \"youtube.playlists.update\"\n - \ ]\n },\n \"description\": \"The playlist's title.\",\n - \ \"type\": \"string\"\n },\n \"thumbnailVideoId\": - {\n \"description\": \"Note: if the playlist has a custom thumbnail, - this field will not be populated. The video id selected by the user that will - be used as the thumbnail of this playlist. This field defaults to the first - publicly viewable video in the playlist, if: 1. The user has never selected - a video to be the thumbnail of the playlist. 2. The user selects a video to - be the thumbnail, and then removes that video from the playlist. 3. The user - selects a non-owned video to be the thumbnail, but that video becomes private, - or gets deleted.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"The channel title of the channel that the - video belongs to.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"$ref\": \"PlaylistLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n }\n },\n \"id\": - \"PlaylistSnippet\",\n \"type\": \"object\"\n },\n \"LiveStreamListResponse\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamListResponse\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"default\": \"youtube#liveStreamListResponse\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - live streams that match the request criteria.\",\n \"items\": {\n - \ \"$ref\": \"LiveStream\"\n }\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"Entity\": {\n \"type\": - \"object\",\n \"id\": \"Entity\",\n \"properties\": {\n \"typeId\": - {\n \"type\": \"string\"\n },\n \"url\": {\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"I18nRegion\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the i18n region.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the i18n region, such as region code and human-readable name.\",\n \"$ref\": - \"I18nRegionSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegion\"\n - \ }\n },\n \"id\": \"I18nRegion\",\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\"\n - \ },\n \"ActivityContentDetailsPromotedItem\": {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"creativeViewUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user was shown this promoted item.\",\n \"type\": \"string\"\n - \ },\n \"destinationUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should direct the user to, - if the user chooses to visit the advertiser's website.\"\n },\n \"impressionUrl\": - {\n \"type\": \"array\",\n \"description\": \"The list of - impression URLs. The client should ping all of these URLs to indicate that - the user was shown this promoted item.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"customCtaButtonText\": {\n - \ \"type\": \"string\",\n \"description\": \"The custom call-to-action - button text. If specified, it will override the default button text for the - cta_type.\"\n },\n \"clickTrackingUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user clicked through on this promoted item.\"\n },\n - \ \"forecastingUrl\": {\n \"description\": \"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.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"adTag\": {\n \"type\": \"string\",\n \"description\": - \"The URL the client should fetch to request a promoted item.\"\n },\n - \ \"descriptionText\": {\n \"description\": \"The text description - to accompany the promoted item.\",\n \"type\": \"string\"\n },\n - \ \"ctaType\": {\n \"type\": \"string\",\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Details about a resource which is being promoted.\"\n - \ },\n \"ThirdPartyLinkListResponse\": {\n \"id\": \"ThirdPartyLinkListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"type\": \"array\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#thirdPartyLinkListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n - \ }\n }\n },\n \"ChannelBannerResource\": {\n \"id\": - \"ChannelBannerResource\",\n \"description\": \"A channel banner returned - as the response to a channel_banner.insert call.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"url\": {\n \"description\": \"The URL of this - banner image.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ThirdPartyLinkSnippet\": {\n \"type\": \"object\",\n \"id\": - \"ThirdPartyLinkSnippet\",\n \"description\": \"Basic information about - a third party account link, including its type and type-specific information.\",\n - \ \"properties\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"description\": \"Type of the link named after the entities that - are being linked.\",\n \"type\": \"string\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ]\n },\n \"channelToStoreLink\": {\n \"$ref\": - \"ChannelToStoreLinkDetails\",\n \"description\": \"Information specific - to a link between a channel and a store on a merchandising platform.\"\n }\n - \ }\n },\n \"PlaylistItem\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistItem\",\n \"description\": \"A *playlistItem* resource identifies - another resource, such as a video, that is included in a playlist. In addition, - the playlistItem resource contains details about the included resource that - pertain specifically to how that resource is used in that playlist. YouTube - uses playlists to identify special collections of videos for a channel, such - as: - uploaded videos - favorite videos - positively rated (liked) videos - - watch history - watch later To be more specific, these lists are associated - with a channel, which is a collection of a person, group, or company's videos, - playlists, and other YouTube information. You can retrieve the playlist IDs - for each of these lists from the channel resource for a given channel. You - can then use the playlistItems.list method to retrieve any of those lists. - You can also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods. For example, if a user gives a positive - rating to a video, you would insert that video into the liked videos playlist - for that user's channel.\",\n \"properties\": {\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItem\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#playlistItem\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the playlist item, such as its title and - position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n + \ \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"VideoCategoryListResponse\"\n + \ },\n \"ActivityContentDetailsSubscription\": {\n \"description\": + \"Information about a channel that a user subscribed to.\",\n \"id\": + \"ActivityContentDetailsSubscription\",\n \"properties\": {\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId + object contains information that identifies the resource that the user subscribed + to.\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelContentOwnerDetails\": + {\n \"properties\": {\n \"contentOwner\": {\n \"description\": + \"The ID of the content owner linked to the channel.\",\n \"type\": + \"string\"\n },\n \"timeLinked\": {\n \"format\": \"date-time\",\n + \ \"type\": \"string\",\n \"description\": \"The date and + time when the channel was linked to the content owner.\"\n }\n },\n + \ \"id\": \"ChannelContentOwnerDetails\",\n \"description\": \"The + contentOwnerDetails object encapsulates channel data that is relevant for + YouTube Partners linked with the channel.\",\n \"type\": \"object\"\n + \ },\n \"VideoRecordingDetails\": {\n \"properties\": {\n \"location\": + {\n \"$ref\": \"GeoPoint\",\n \"description\": \"The geolocation + information associated with the video.\"\n },\n \"locationDescription\": + {\n \"type\": \"string\",\n \"description\": \"The text + description of the location where the video was recorded.\"\n },\n + \ \"recordingDate\": {\n \"type\": \"string\",\n \"description\": + \"The date and time when the video was recorded.\",\n \"format\": + \"date-time\"\n }\n },\n \"id\": \"VideoRecordingDetails\",\n + \ \"type\": \"object\",\n \"description\": \"Recording information + associated with the video.\"\n },\n \"ChannelProfileDetails\": {\n \"id\": + \"ChannelProfileDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": + \"The channel's display name.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The YouTube channel ID.\"\n },\n + \ \"profileImageUrl\": {\n \"description\": \"The channels's + avatar URL.\",\n \"type\": \"string\"\n },\n \"channelUrl\": + {\n \"type\": \"string\",\n \"description\": \"The channel's + URL.\"\n }\n }\n },\n \"SubscriptionListResponse\": {\n + \ \"properties\": {\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"Subscription\"\n },\n + \ \"description\": \"A list of subscriptions that match the request + criteria.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": + {\n \"default\": \"youtube#subscriptionListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"SubscriptionListResponse\"\n },\n \"LiveChatMessage\": + {\n \"description\": \"A *liveChatMessage* resource represents a chat + message in a YouTube Live Chat.\",\n \"type\": \"object\",\n \"id\": + \"LiveChatMessage\",\n \"properties\": {\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#liveChatMessage\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the playlist item.\",\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the playlist item's privacy status.\",\n - \ \"$ref\": \"PlaylistItemStatus\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoSnippet\": {\n \"description\": - \"Basic details about a video, including title, description, uploader, thumbnails - and category.\",\n \"id\": \"VideoSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ },\n \"tags\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of keyword tags associated with the video. Tags may contain spaces.\"\n - \ },\n \"liveBroadcastContent\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The live - broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the video - belongs to.\",\n \"type\": \"string\"\n },\n \"description\": + assigns to uniquely identify the message.\",\n \"type\": \"string\"\n + \ },\n \"authorDetails\": {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n + \ \"description\": \"The authorDetails object contains basic details + about the user that posted this message.\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n }\n + \ }\n },\n \"MemberListResponse\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"items\": {\n \"description\": + \"A list of members that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"Member\"\n },\n \"type\": \"array\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": + \"youtube#memberListResponse\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"MemberListResponse\"\n },\n + \ \"ChannelConversionPing\": {\n \"description\": \"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.\",\n + \ \"id\": \"ChannelConversionPing\",\n \"properties\": {\n \"conversionUrl\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"context\": {\n \"description\": + \"Defines the context of the ping.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n + \ \"cview\"\n ]\n }\n },\n \"type\": \"object\"\n + \ },\n \"ChannelBrandingSettings\": {\n \"id\": \"ChannelBrandingSettings\",\n + \ \"properties\": {\n \"image\": {\n \"description\": + \"Branding properties for branding images.\",\n \"$ref\": \"ImageSettings\"\n + \ },\n \"watch\": {\n \"description\": \"Branding properties + for the watch page.\",\n \"$ref\": \"WatchSettings\"\n },\n + \ \"hints\": {\n \"items\": {\n \"$ref\": \"PropertyValue\"\n + \ },\n \"description\": \"Additional experimental branding + properties.\",\n \"type\": \"array\"\n },\n \"channel\": + {\n \"$ref\": \"ChannelSettings\",\n \"description\": \"Branding + properties for the channel view.\"\n }\n },\n \"description\": + \"Branding properties of a YouTube channel.\",\n \"type\": \"object\"\n + \ },\n \"VideoProcessingDetailsProcessingProgress\": {\n \"properties\": + {\n \"partsTotal\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"An estimate of the total number + of parts that need to be processed for the video. The number may be updated + with more precise estimates while YouTube processes the video.\"\n },\n + \ \"timeLeftMs\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"An estimate of the amount of time, + in millseconds, that YouTube needs to finish processing the video.\"\n },\n + \ \"partsProcessed\": {\n \"type\": \"string\",\n \"description\": + \"The number of parts of the video that YouTube has already processed. You + can estimate the percentage of the video that YouTube has already processed + by calculating: 100 * parts_processed / parts_total Note that since the estimated + number of parts could increase without a corresponding increase in the number + of parts that have already been processed, it is possible that the calculated + progress could periodically decrease while YouTube processes a video.\",\n + \ \"format\": \"uint64\"\n }\n },\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n + \ \"description\": \"Video processing progress and completion time estimate.\",\n + \ \"type\": \"object\"\n },\n \"VideoFileDetails\": {\n \"id\": + \"VideoFileDetails\",\n \"description\": \"Describes original video file + properties, including technical details about audio and video streams, but + also metadata information like content length, digitization time, or geotagging + information.\",\n \"properties\": {\n \"bitrateBps\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + uploaded video file's combined (video and audio) bitrate in bits per second.\"\n + \ },\n \"videoStreams\": {\n \"description\": \"A list + of video streams contained in the uploaded video file. Each item in the list + contains detailed metadata about a video stream.\",\n \"items\": + {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n },\n \"type\": + \"array\"\n },\n \"durationMs\": {\n \"description\": + \"The length of the uploaded video in milliseconds.\",\n \"type\": + \"string\",\n \"format\": \"uint64\"\n },\n \"fileSize\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The uploaded file's size in bytes. This field is present whether a video + file or another type of file was uploaded.\"\n },\n \"fileName\": + {\n \"type\": \"string\",\n \"description\": \"The uploaded + file's name. This field is present whether a video file or another type of + file was uploaded.\"\n },\n \"audioStreams\": {\n \"items\": + {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n },\n \"description\": + \"A list of audio streams contained in the uploaded video file. Each item + in the list contains detailed metadata about an audio stream.\",\n \"type\": + \"array\"\n },\n \"creationTime\": {\n \"description\": + \"The date and time when the uploaded video file was created. The value is + specified in ISO 8601 format. Currently, the following ISO 8601 formats are + supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time + with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n + \ },\n \"container\": {\n \"description\": \"The uploaded + video file's container format.\",\n \"type\": \"string\"\n },\n + \ \"fileType\": {\n \"enumDescriptions\": [\n \"Known + video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an + MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive + file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., + MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n + \ \"description\": \"The uploaded file's type as detected by YouTube's + video processing engine. Currently, YouTube only processes video files, but + this field is present whether a video file or another type of file was uploaded.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"video\",\n + \ \"audio\",\n \"image\",\n \"archive\",\n + \ \"document\",\n \"project\",\n \"other\"\n + \ ]\n }\n },\n \"type\": \"object\"\n },\n \"ThirdPartyLinkStatus\": + {\n \"id\": \"ThirdPartyLinkStatus\",\n \"properties\": {\n \"linkStatus\": + {\n \"enum\": [\n \"unknown\",\n \"failed\",\n + \ \"pending\",\n \"linked\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n }\n },\n \"description\": + \"The third-party link status object contains information about the status + of the link.\",\n \"type\": \"object\"\n },\n \"AbuseType\": {\n + \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"AbuseType\",\n \"type\": \"object\"\n + \ },\n \"ContentRating\": {\n \"properties\": {\n \"eefilmRating\": + {\n \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n + \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n + \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n + \ \"eefilmK16\",\n \"eefilmUnrated\"\n ],\n + \ \"description\": \"The video's rating in Estonia.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n + \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n + \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n + \ ]\n },\n \"grfilmRating\": {\n \"description\": + \"The video's rating in Greece.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n + \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"grfilmUnspecified\",\n + \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n + \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n + \ \"grfilmK18\",\n \"grfilmUnrated\"\n ]\n },\n + \ \"czfilmRating\": {\n \"description\": \"The video's rating + in the Czech Republic.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n + \ \"18\",\n \"\"\n ],\n \"enum\": [\n + \ \"czfilmUnspecified\",\n \"czfilmU\",\n \"czfilm12\",\n + \ \"czfilm14\",\n \"czfilm18\",\n \"czfilmUnrated\"\n + \ ]\n },\n \"djctqRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n + \ \"14\",\n \"16\",\n \"18\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The video's Departamento de Justi\xE7a, + Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n + \ \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n + \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n + \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n + \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n + \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n + \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n + \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n + \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n + \ \"djctqUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"nfvcbRating\": {\n \"enum\": [\n \"nfvcbUnspecified\",\n + \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n + \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n + \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"description\": + \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n + \ \"15\",\n \"18\",\n \"RE\",\n \"\"\n + \ ]\n },\n \"acbRating\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"Programs that have + been given a P classification by the Australian Communications and Media Authority. + These programs are intended for preschool children.\",\n \"Programs + that have been given a C classification by the Australian Communications and + Media Authority. These programs are intended for children (other than preschool + children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n + \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n + \ ],\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n + \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n + \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n + \ \"acbUnrated\"\n ]\n },\n \"rteRating\": + {\n \"description\": \"The video's rating from Ireland's Raidi\xF3 + Teilif\xEDs \xC9ireann.\",\n \"enum\": [\n \"rteUnspecified\",\n + \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n + \ \"rteUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"GA\",\n + \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n + \ ]\n },\n \"catvRating\": {\n \"description\": + \"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.\",\n \"enum\": + [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n + \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n + \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n + \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n + \ \"\"\n ]\n },\n \"catvfrRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n + \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"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.\",\n \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n + \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n + \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n + \ ],\n \"type\": \"string\"\n },\n \"mccypRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"7\",\n \"11\",\n \"15\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from the Danish + Film Institute's (Det Danske Filminstitut) Media Council for Children and + Young People.\",\n \"type\": \"string\",\n \"enum\": [\n + \ \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n + \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n + \ ]\n },\n \"cccRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Todo espectador\",\n + \ \"6+ - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n + \ \"18+\",\n \"18+ - contenido excesivamente violento\",\n + \ \"18+ - contenido pornogr\xE1fico\",\n \"\"\n ],\n + \ \"description\": \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica + (Chile) rating.\",\n \"enum\": [\n \"cccUnspecified\",\n + \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n + \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n + \ ]\n },\n \"cceRating\": {\n \"description\": + \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de + Espect\xB4culos.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"4\",\n \"6\",\n \"12\",\n \"16\",\n + \ \"18\",\n \"\",\n \"14\"\n ],\n + \ \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n + \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n + \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n + \ ],\n \"type\": \"string\"\n },\n \"kmrbRating\": + {\n \"enum\": [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n + \ \"kmrb12plus\",\n \"kmrb15plus\",\n \"kmrbTeenr\",\n + \ \"kmrbR\",\n \"kmrbUnrated\"\n ],\n \"description\": + \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) + rating. The KMRB rates videos in South Korea.\",\n \"enumDescriptions\": + [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 + \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n + \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"fmocRating\": {\n \"enum\": [\n \"fmocUnspecified\",\n + \ \"fmocU\",\n \"fmoc10\",\n \"fmoc12\",\n + \ \"fmoc16\",\n \"fmoc18\",\n \"fmocE\",\n + \ \"fmocUnrated\"\n ],\n \"description\": \"This + property has been deprecated. Use the contentDetails.contentRating.cncRating + instead.\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"E\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"smaisRating\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's rating in Iceland.\",\n \"enum\": + [\n \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n + \ \"smais12\",\n \"smais14\",\n \"smais16\",\n + \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n + \ \"14\",\n \"16\",\n \"18\",\n \"\"\n + \ ]\n },\n \"mcstRating\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's rating system for Vietnam - MCST\",\n + \ \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n + \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n + \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n + \ \"mcstUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n + \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n + \ \"\"\n ]\n },\n \"bfvcRating\": {\n \"description\": + \"The video's rating from Thailand's Board of Film and Video Censors.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"bfvcUnspecified\",\n + \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n + \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n + \ \"bfvcB\",\n \"bfvcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n + \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n + \ \"\"\n ]\n },\n \"fcoRating\": {\n \"description\": + \"The video's rating from Hong Kong's Office for Film, Newspaper and Article + Administration.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"I\",\n \"IIA\",\n \"IIB\",\n \"II\",\n + \ \"III\",\n \"\"\n ],\n \"enum\": + [\n \"fcoUnspecified\",\n \"fcoI\",\n \"fcoIia\",\n + \ \"fcoIib\",\n \"fcoIi\",\n \"fcoIii\",\n + \ \"fcoUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"egfilmRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"GN\",\n \"18\",\n \"BN\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n \"egfilm18\",\n + \ \"egfilmBn\",\n \"egfilmUnrated\"\n ],\n \"description\": + \"The video's rating in Egypt.\"\n },\n \"lsfRating\": {\n \"description\": + \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"type\": + \"string\",\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n + \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n + \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n + \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n + \ \"17\",\n \"D\",\n \"21\",\n \"\"\n + \ ]\n },\n \"fpbRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n + \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n + \ \"\",\n \"10\"\n ],\n \"enum\": [\n + \ \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n + \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n + \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n + \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n + \ ],\n \"description\": \"The video's rating from South Africa's + Film and Publication Board.\"\n },\n \"smsaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n + \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n + \ \"smsaUnrated\"\n ],\n \"description\": \"The + video's rating from Statens medier\xE5d (Sweden's National Media Council).\"\n + \ },\n \"ecbmctRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"G\",\n \"7A\",\n \"7+\",\n + \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n + \ \"18+\",\n \"\"\n ],\n \"enum\": + [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n + \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n + \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n + \ \"ecbmctUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"Rating system in Turkey - Evaluation and Classification + Board of the Ministry of Culture and Tourism\"\n },\n \"skfilmRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"P2\",\n \"P5\",\n \"P8\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + in Slovakia.\",\n \"enum\": [\n \"skfilmUnspecified\",\n + \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n + \ \"skfilmP8\",\n \"skfilmUnrated\"\n ]\n },\n + \ \"cicfRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n + \ \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n + \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n + \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ]\n + \ },\n \"eirinRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n + \ ],\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n + \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n + \ \"eirinUnrated\"\n ],\n \"description\": \"The + video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\"\n + \ },\n \"nbcRating\": {\n \"description\": \"The video's + rating from the Maldives National Bureau of Classification.\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n + \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n + \ \"\"\n ],\n \"enum\": [\n \"nbcUnspecified\",\n + \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n + \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n + \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"ytRating\": {\n \"description\": + \"A rating that YouTube uses to identify age-restricted content.\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n + \ \"type\": \"string\"\n },\n \"resorteviolenciaRating\": + {\n \"description\": \"The video's rating in Venezuela.\",\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n + \ \"D\",\n \"E\",\n \"\"\n ],\n \"enum\": + [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n + \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n + \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"menaMpaaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To + keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n + \ \"enum\": [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n + \ \"menaMpaaPg\",\n \"menaMpaaPg13\",\n \"menaMpaaR\",\n + \ \"menaMpaaUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The rating system for MENA countries, a clone + of MPAA. It is needed to prevent titles go live w/o additional QC check, since + some of them can be inappropriate for the countries at all. See b/33408548 + for more details.\"\n },\n \"djctqRatingReasons\": {\n \"type\": + \"array\",\n \"description\": \"Reasons that explain why the video + received its DJCQT (Brazil) rating.\",\n \"items\": {\n \"enumDescriptions\": + [\n \"\",\n \"Brazil rating content descriptors. + See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia + extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual + content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n + \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas + (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas + Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate + language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo + Impactante (Impacting content)\"\n ],\n \"enum\": [\n + \ \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n + \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n + \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n + \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n + \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n + \ \"djctqImpactingContent\"\n ],\n \"type\": + \"string\"\n }\n },\n \"cscfRating\": {\n \"description\": + \"The video's rating from Luxembourg's Commission de surveillance de la classification + des films (CSCF).\",\n \"type\": \"string\",\n \"enum\": + [\n \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n + \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n + \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n + \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\"\n ]\n + \ },\n \"mtrcbRating\": {\n \"description\": \"The video's + rating from the Movie and Television Review and Classification Board (Philippines).\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n + \ \"X\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n + \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n + \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n + \ ]\n },\n \"oflcRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n + \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n + \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n + \ ],\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n + \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n + \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n + \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n + \ \"oflcRp18\"\n ],\n \"description\": \"The video's + Office of Film and Literature Classification (OFLC - New Zealand) rating.\",\n + \ \"type\": \"string\"\n },\n \"medietilsynetRating\": + {\n \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n + \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n + \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n + \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n + \ \"description\": \"The video's rating from Medietilsynet, the Norwegian + Media Authority.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n + \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"\"\n ]\n },\n \"rtcRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n + \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n + \ \"D\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's General Directorate of Radio, Television + and Cinematography (Mexico) rating.\",\n \"enum\": [\n \"rtcUnspecified\",\n + \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n + \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n + \ ]\n },\n \"fskRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK + 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n + \ ],\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n + \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n + \ \"fskUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft + (FSK - Germany) rating.\"\n },\n \"mpaatRating\": {\n \"enum\": + [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n + \ \"RB\"\n ]\n },\n \"nbcplRating\": {\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The video's rating in Poland.\",\n \"enum\": [\n \"nbcplUnspecified\",\n + \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n + \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n + \ ]\n },\n \"mekuRating\": {\n \"description\": + \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti + (National Audiovisual Institute).\",\n \"enum\": [\n \"mekuUnspecified\",\n + \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n + \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\"\n ]\n + \ },\n \"mdaRating\": {\n \"description\": \"The video's + rating from Singapore's Media Development Authority (MDA) and, specifically, + it's Board of Film Censors (BFC).\",\n \"enumDescriptions\": [\n + \ \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n + \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n + \ ],\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n + \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n + \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"mpaaRating\": {\n \"type\": \"string\",\n \"description\": \"The video's - description. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that the video - was uploaded to.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the video - was uploaded.\",\n \"format\": \"date-time\"\n },\n \"defaultAudioLanguage\": - {\n \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the videos's default - snippet.\"\n },\n \"localized\": {\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\",\n - \ \"$ref\": \"VideoLocalization\"\n },\n \"title\": + Motion Picture Association of America (MPAA) rating.\",\n \"enum\": + [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n + \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n + \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n + \ ]\n },\n \"pefilmRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n + \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n + \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n + \ \"pefilmUnrated\"\n ],\n \"description\": \"The + video's rating in Peru.\"\n },\n \"nmcRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n + \ \"18+\",\n \"18TC\",\n \"\"\n ],\n + \ \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n + \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n + \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n + \ \"nmcUnrated\"\n ],\n \"description\": \"The + National Media Council ratings system for United Arab Emirates.\"\n },\n + \ \"bbfcRating\": {\n \"enum\": [\n \"bbfcUnspecified\",\n + \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n + \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n + \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"R18\",\n \"\"\n ],\n + \ \"description\": \"The video's British Board of Film Classification + (BBFC) rating.\"\n },\n \"csaRating\": {\n \"description\": + \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, + which rates broadcast content.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n + \ \"18\",\n \"Interdiction\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"csaUnspecified\",\n + \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n + \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n + \ ]\n },\n \"kfcbRating\": {\n \"description\": + \"The video's rating from the Kenya Film Classification Board.\",\n \"type\": + \"string\",\n \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n + \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n + \ \"kfcbUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n + \ \"18\",\n \"\"\n ]\n },\n \"agcomRating\": + {\n \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n + \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\"\n + \ },\n \"cnaRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"18+\",\n \"\"\n ],\n + \ \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n + \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n + \ \"cnaUnrated\"\n ],\n \"description\": \"The + video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\"\n + \ },\n \"mocRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"E\",\n \"T\",\n \"7\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n + \ \"Banned\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's Ministerio de Cultura + (Colombia) rating.\",\n \"enum\": [\n \"mocUnspecified\",\n + \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n + \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n + \ \"mocUnrated\"\n ]\n },\n \"nkclvRating\": + {\n \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n + \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n + \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Nacion\xE3lais Kino centrs (National Film Centre + of Latvia).\"\n },\n \"cbfcRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n + \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n + \ ],\n \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n + \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n + \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n + \ \"cbfcUnrated\"\n ],\n \"description\": \"The + video's Central Board of Film Certification (CBFC - India) rating.\"\n },\n + \ \"chfilmRating\": {\n \"description\": \"The video's rating + in Switzerland.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n + \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n + \ \"chfilm18\",\n \"chfilmUnrated\"\n ]\n },\n + \ \"ilfilmRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n + \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n + \ \"ilfilmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n + \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"description\": \"The video's rating in Israel.\"\n },\n + \ \"chvrsRating\": {\n \"enum\": [\n \"chvrsUnspecified\",\n + \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n + \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n + \ \"chvrsUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n + \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's Canadian Home Video Rating System (CHVRS) rating.\"\n },\n + \ \"bmukkRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Unrestricted\",\n \"6+\",\n + \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n + \ \"16+\",\n \"\"\n ],\n \"enum\": + [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n \"bmukk6\",\n + \ \"bmukk8\",\n \"bmukk10\",\n \"bmukk12\",\n + \ \"bmukk14\",\n \"bmukk16\",\n \"bmukkUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Austrian + Board of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst + und Kultur).\"\n },\n \"nfrcRating\": {\n \"description\": + \"The video's rating from the Bulgarian National Film Center.\",\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n + \ \"D\",\n \"X\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"nfrcUnspecified\",\n \"nfrcA\",\n + \ \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n + \ \"nfrcUnrated\"\n ]\n },\n \"incaaRating\": {\n \"type\": \"string\",\n \"description\": \"The video's - title. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"categoryId\": {\n \"description\": \"The YouTube video - category associated with the video.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"VideoFileDetails\": {\n \"description\": \"Describes - original video file properties, including technical details about audio and - video streams, but also metadata information like content length, digitization - time, or geotagging information.\",\n \"id\": \"VideoFileDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"fileName\": - {\n \"description\": \"The uploaded file's name. This field is present - whether a video file or another type of file was uploaded.\",\n \"type\": - \"string\"\n },\n \"bitrateBps\": {\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"fileSize\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The uploaded file's size in bytes. - This field is present whether a video file or another type of file was uploaded.\"\n - \ },\n \"durationMs\": {\n \"description\": \"The length - of the uploaded video in milliseconds.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"audioStreams\": {\n - \ \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of audio streams contained in the uploaded video file. Each item in the - list contains detailed metadata about an audio stream.\"\n },\n \"videoStreams\": - {\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"description\": \"A list of video streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about a video stream.\",\n \"type\": \"array\"\n },\n \"fileType\": - {\n \"description\": \"The uploaded file's type as detected by YouTube's - video processing engine. Currently, YouTube only processes video files, but - this field is present whether a video file or another type of file was uploaded.\",\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"enumDescriptions\": [\n \"Known - video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an - MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"type\": \"string\"\n },\n \"creationTime\": {\n - \ \"description\": \"The date and time when the uploaded video file - was created. The value is specified in ISO 8601 format. Currently, the following - ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n - \ },\n \"container\": {\n \"description\": \"The uploaded - video file's container format.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ChannelSectionTargeting\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelSectionTargeting\",\n \"description\": \"ChannelSection - targeting setting.\",\n \"properties\": {\n \"languages\": {\n - \ \"description\": \"The language the channel section is targeting.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"regions\": {\n \"description\": - \"The region the channel section is targeting.\",\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"countries\": {\n \"type\": \"array\",\n \"description\": - \"The country the channel section is targeting.\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n }\n }\n },\n - \ \"VideoAbuseReportSecondaryReason\": {\n \"properties\": {\n \"label\": + INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"ATP (Apta + para todo publico)\",\n \"13 (Solo apta para mayores de 13 a\xF1os)\",\n + \ \"16 (Solo apta para mayores de 16 a\xF1os)\",\n \"18 + (Solo apta para mayores de 18 a\xF1os)\",\n \"X (Solo apta para + mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n \"\"\n + \ ],\n \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n + \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n + \ \"incaaC\",\n \"incaaUnrated\"\n ]\n },\n + \ \"fpbRatingReasons\": {\n \"items\": {\n \"enumDescriptions\": + [\n \"\",\n \"South Africa rating content descriptors.\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n + \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n + \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n + \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n + \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n + \ ]\n },\n \"type\": \"array\",\n \"description\": + \"Reasons that explain why the video received its FPB (South Africa) rating.\"\n + \ },\n \"ifcoRating\": {\n \"description\": \"The video's + Irish Film Classification Office (IFCO - Ireland) rating. See the IFCO website + for more information.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n + \ \"15\",\n \"15A\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"enum\": [\n \"ifcoUnspecified\",\n + \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n + \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n + \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"icaaRating\": + {\n \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n + \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n + \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n + \ \"icaaUnrated\"\n ],\n \"description\": \"The + video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA + - Spain) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n + \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n + \ \"\"\n ]\n },\n \"rcnofRating\": {\n \"enum\": + [\n \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n + \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n + \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee + of the National Office of Film.\"\n },\n \"tvpgRating\": {\n + \ \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n + \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n + \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n + \ \"tvpgUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n + \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The video's TV Parental Guidelines (TVPG) rating.\"\n },\n \"fcbmRating\": + {\n \"description\": \"The video's rating from Malaysia's Film Censorship + Board.\",\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n + \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n + \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n + \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n + \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n + \ \"18PL\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"kijkwijzerRating\": {\n \"enum\": + [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n + \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n + \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n + \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating + from the Nederlands Instituut voor de Classificatie van Audiovisuele Media + (Netherlands).\",\n \"enumDescriptions\": [\n \"\",\n + \ \"AL\",\n \"6\",\n \"9\",\n \"12\",\n + \ \"16\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"cncRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n + \ \"\"\n ],\n \"enum\": [\n \"cncUnspecified\",\n + \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n + \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n + \ \"cncUnrated\"\n ],\n \"description\": \"Rating + system in France - Commission de classification cinematographique\",\n \"type\": + \"string\"\n },\n \"mccaaRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n + \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n + \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n + \ \"mccaa18\",\n \"mccaaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n + \ \"12\",\n \"14 - this rating was removed from the new + classification structure introduced in 2013.\",\n \"15\",\n \"16 + - this rating was removed from the new classification structure introduced + in 2013.\",\n \"18\",\n \"\"\n ],\n \"description\": + \"The video's rating from Malta's Film Age-Classification Board.\"\n },\n + \ \"moctwRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"P\",\n \"PG\",\n \"R\",\n + \ \"\",\n \"R-12\",\n \"R-15\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"moctwUnspecified\",\n + \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n + \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n + \ \"moctwR15\"\n ],\n \"description\": \"The video's + rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\"\n },\n + \ \"anatelRating\": {\n \"enum\": [\n \"anatelUnspecified\",\n + \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n + \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n + \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"F\",\n + \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n + \ \"R\",\n \"A\",\n \"\"\n ],\n \"description\": + \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for + Chilean television.\"\n },\n \"mibacRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's rating from the Ministero + dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"mibacUnspecified\",\n + \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n + \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n + \ \"mibacVm18\",\n \"mibacUnrated\"\n ]\n },\n + \ \"russiaRating\": {\n \"enum\": [\n \"russiaUnspecified\",\n + \ \"russia0\",\n \"russia6\",\n \"russia12\",\n + \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n + \ \"16+\",\n \"18+\",\n \"\"\n ],\n + \ \"description\": \"The video's National Film Registry of the Russian + Federation (MKRF - Russia) rating.\"\n }\n },\n \"description\": + \"Ratings schemes. The country-specific ratings are mostly for movies and + shows. LINT.IfChange\",\n \"id\": \"ContentRating\",\n \"type\": + \"object\"\n },\n \"PlaylistLocalization\": {\n \"type\": \"object\",\n + \ \"id\": \"PlaylistLocalization\",\n \"description\": \"Playlist + localization setting\",\n \"properties\": {\n \"description\": {\n \"type\": \"string\",\n \"description\": \"The localized - label for this abuse report secondary reason.\"\n },\n \"id\": - {\n \"description\": \"The ID of this abuse report secondary reason.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoAbuseReportSecondaryReason\"\n },\n \"InvideoBranding\": - {\n \"type\": \"object\",\n \"properties\": {\n \"imageUrl\": - {\n \"description\": \"The url of the uploaded image. Only used in - apiary to api communication.\",\n \"type\": \"string\"\n },\n + strings for playlist's description.\"\n },\n \"title\": {\n + \ \"description\": \"The localized strings for playlist's title.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"InvideoBranding\": + {\n \"id\": \"InvideoBranding\",\n \"type\": \"object\",\n \"properties\": + {\n \"timing\": {\n \"$ref\": \"InvideoTiming\",\n \"description\": + \"The temporal position within the video where watermark will be displayed.\"\n + \ },\n \"position\": {\n \"$ref\": \"InvideoPosition\",\n + \ \"description\": \"The spatial position within the video where the + branding watermark will be displayed.\"\n },\n \"imageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The url of + the uploaded image. Only used in apiary to api communication.\"\n },\n \ \"imageBytes\": {\n \"format\": \"byte\",\n \"type\": \"string\",\n \"description\": \"The bytes the uploaded image. Only - used in api to youtube communication.\"\n },\n \"timing\": {\n - \ \"description\": \"The temporal position within the video where - watermark will be displayed.\",\n \"$ref\": \"InvideoTiming\"\n },\n - \ \"targetChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel to which this branding links. If not present it defaults to - the current channel.\"\n },\n \"position\": {\n \"$ref\": - \"InvideoPosition\",\n \"description\": \"The spatial position within - the video where the branding watermark will be displayed.\"\n }\n },\n - \ \"description\": \"LINT.IfChange Describes an invideo branding.\",\n - \ \"id\": \"InvideoBranding\"\n },\n \"InvideoTiming\": {\n \"type\": - \"object\",\n \"id\": \"InvideoTiming\",\n \"description\": \"Describes - a temporal position of a visual widget inside a video.\",\n \"properties\": - {\n \"durationMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"Defines the duration in milliseconds - for which the promotion should be displayed. If missing, the client should - use the default.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Describes a - timing type. If the value is offsetFromStart, then the offsetMs field represents - an offset from the start of the video. If the value is offsetFromEnd, then - the offsetMs field represents an offset from the end of the video.\"\n },\n - \ \"offsetMs\": {\n \"type\": \"string\",\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\",\n \"format\": - \"uint64\"\n }\n }\n },\n \"VideoFileDetailsVideoStream\": - {\n \"properties\": {\n \"heightPixels\": {\n \"type\": - \"integer\",\n \"description\": \"The encoded video content's height - in pixels.\",\n \"format\": \"uint32\"\n },\n \"rotation\": - {\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"frameRateFps\": {\n \"description\": - \"The video stream's frame rate, in frames per second.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n },\n \"vendor\": - {\n \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\",\n \"type\": - \"string\"\n },\n \"widthPixels\": {\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"aspectRatio\": - {\n \"type\": \"number\",\n \"description\": \"The video - content's display aspect ratio, which specifies the aspect ratio in which - the video should be displayed.\",\n \"format\": \"double\"\n },\n - \ \"codec\": {\n \"description\": \"The video codec that the - stream uses.\",\n \"type\": \"string\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"description\": \"The video - stream's bitrate, in bits per second.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoFileDetailsVideoStream\",\n - \ \"description\": \"Information about a video stream.\"\n },\n \"LiveStreamHealthStatus\": - {\n \"properties\": {\n \"configurationIssues\": {\n \"description\": - \"The configurations issues on this stream\",\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n },\n \"type\": \"array\"\n - \ },\n \"lastUpdateTimeSeconds\": {\n \"type\": \"string\",\n - \ \"description\": \"The last time this status was updated (in seconds)\",\n - \ \"format\": \"uint64\"\n },\n \"status\": {\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The status code - of this stream\"\n }\n },\n \"id\": \"LiveStreamHealthStatus\",\n - \ \"type\": \"object\"\n },\n \"CdnSettings\": {\n \"type\": - \"object\",\n \"id\": \"CdnSettings\",\n \"description\": \"Brief - description of the live stream cdn settings.\",\n \"properties\": {\n - \ \"frameRate\": {\n \"type\": \"string\",\n \"enum\": - [\n \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The frame rate - of the inbound video data.\"\n },\n \"format\": {\n \"type\": - \"string\",\n \"description\": \"The format of the video stream that - you are sending to Youtube. \",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"ingestionType\": {\n \"description\": - \" The method or protocol used to transmit the video stream.\",\n \"enum\": - [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n - \ \"description\": \"The ingestionInfo object contains information - that YouTube provides that you need to transmit your RTMP or HTTP stream to - YouTube.\"\n },\n \"resolution\": {\n \"enumDescriptions\": + used in api to youtube communication.\"\n },\n \"targetChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The channel + to which this branding links. If not present it defaults to the current channel.\"\n + \ }\n },\n \"description\": \"LINT.IfChange Describes an invideo + branding.\"\n },\n \"AbuseReport\": {\n \"id\": \"AbuseReport\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"subject\": + {\n \"$ref\": \"Entity\"\n },\n \"description\": {\n + \ \"type\": \"string\"\n },\n \"relatedEntities\": {\n + \ \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n + \ \"type\": \"array\"\n },\n \"abuseTypes\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"AbuseType\"\n + \ }\n }\n }\n },\n \"LiveChatNewSponsorDetails\": + {\n \"properties\": {\n \"memberLevelName\": {\n \"type\": + \"string\",\n \"description\": \"The name of the Level that the viewer + just had joined. The Level names are defined by the YouTube channel offering + the Membership. In some situations this field isn't filled.\"\n },\n + \ \"isUpgrade\": {\n \"type\": \"boolean\",\n \"description\": + \"If the viewer just had upgraded from a lower level. For viewers that were + not members at the time of purchase, this field is false.\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"LiveChatNewSponsorDetails\"\n + \ },\n \"VideoAbuseReport\": {\n \"id\": \"VideoAbuseReport\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"reasonId\": + {\n \"type\": \"string\",\n \"description\": \"The high-level, + or primary, reason that the content is abusive. The value is an abuse report + reason ID.\"\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": + \"string\"\n },\n \"language\": {\n \"type\": \"string\",\n + \ \"description\": \"The language that the content was viewed in.\"\n + \ },\n \"secondaryReasonId\": {\n \"type\": \"string\",\n + \ \"description\": \"The specific, or secondary, reason that this + content is abusive (if available). The value is an abuse report reason ID + that is a valid secondary reason for the primary reason.\"\n },\n \"comments\": + {\n \"description\": \"Additional comments regarding the abuse report.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"SubscriptionSnippet\": + {\n \"type\": \"object\",\n \"description\": \"Basic details about + a subscription, including title, description and thumbnails of the subscribed + item.\",\n \"properties\": {\n \"description\": {\n \"description\": + \"The subscription's details.\",\n \"type\": \"string\"\n },\n + \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": + \"A map of thumbnail images associated with the video. 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.\"\n },\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"description\": \"The id + object contains information about the channel that the user subscribed to.\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n + \ ]\n }\n },\n \"title\": {\n \"description\": + \"The subscription's title.\",\n \"type\": \"string\"\n },\n + \ \"channelId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the subscriber's channel.\",\n \"type\": + \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel title for the channel that the subscription + belongs to.\"\n },\n \"publishedAt\": {\n \"type\": + \"string\",\n \"description\": \"The date and time that the subscription + was created.\",\n \"format\": \"date-time\"\n }\n },\n + \ \"id\": \"SubscriptionSnippet\"\n },\n \"VideoGetRatingResponse\": + {\n \"id\": \"VideoGetRatingResponse\",\n \"properties\": {\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"kind\": {\n \"default\": + \"youtube#videoGetRatingResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"description\": \"A + list of ratings that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"VideoRating\"\n },\n \"type\": + \"array\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"ActivitySnippet\": {\n \"properties\": + {\n \"thumbnails\": {\n \"description\": \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"type\": + {\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n + \ \"like\",\n \"favorite\",\n \"comment\",\n + \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n + \ \"bulletin\",\n \"social\",\n \"channelItem\",\n + \ \"promotedItem\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"240p\",\n \"360p\",\n - \ \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\",\n - \ \"2160p\",\n \"variable\"\n ],\n \"description\": - \"The resolution of the inbound video data.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"SubscriptionContentDetails\": {\n \"description\": - \"Details about the content to witch a subscription refers.\",\n \"type\": - \"object\",\n \"id\": \"SubscriptionContentDetails\",\n \"properties\": - {\n \"totalItemCount\": {\n \"description\": \"The approximate - number of items that the subscription points to.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"newItemCount\": {\n - \ \"description\": \"The number of new items in the subscription since - its content was last read.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"activityType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"type\": - \"string\",\n \"description\": \"The type of activity this subscription - is for (only uploads, everything).\"\n }\n }\n },\n \"ChannelContentDetails\": - {\n \"id\": \"ChannelContentDetails\",\n \"type\": \"object\",\n - \ \"description\": \"Details about the content of a channel.\",\n \"properties\": - {\n \"relatedPlaylists\": {\n \"properties\": {\n \"favorites\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s favorite videos. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"likes\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use + \ ],\n \"description\": \"The type of activity that the resource + describes.\",\n \"type\": \"string\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The title + of the resource primarily associated with the activity.\"\n },\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel responsible for this activity\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel associated with the activity.\"\n + \ },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the video was uploaded.\",\n + \ \"format\": \"date-time\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The description + of the resource primarily associated with the activity. @mutable youtube.activities.insert\"\n + \ },\n \"groupId\": {\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n },\n \"id\": \"ActivitySnippet\",\n \"type\": + \"object\",\n \"description\": \"Basic details about an activity, including + title, description, thumbnails, activity type and group. Next ID: 12\"\n },\n + \ \"ActivityContentDetailsSocial\": {\n \"id\": \"ActivityContentDetailsSocial\",\n + \ \"type\": \"object\",\n \"description\": \"Details about a social + network post.\",\n \"properties\": {\n \"type\": {\n \"description\": + \"The name of the social network.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n + \ \"facebook\",\n \"twitter\"\n ],\n \"type\": + \"string\"\n },\n \"referenceUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The URL of the social network post.\"\n },\n + \ \"imageUrl\": {\n \"description\": \"An image of the post's + author.\",\n \"type\": \"string\"\n },\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId + object encapsulates information that identifies the resource associated with + a social network post.\"\n },\n \"author\": {\n \"description\": + \"The author of the social network post.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"Video\": {\n \"type\": \"object\",\n + \ \"description\": \"A *video* resource represents a YouTube video.\",\n + \ \"id\": \"Video\",\n \"properties\": {\n \"player\": {\n + \ \"description\": \"The player object contains information that you + would use to play the video in an embedded player.\",\n \"$ref\": + \"VideoPlayer\"\n },\n \"suggestions\": {\n \"description\": + \"The suggestions object encapsulates suggestions that identify opportunities + to improve the video quality or the metadata for the uploaded video. This + data can only be retrieved by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#video\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object contains information about the video content, including + the length of the video and its aspect ratio.\",\n \"$ref\": \"VideoContentDetails\"\n + \ },\n \"liveStreamingDetails\": {\n \"$ref\": \"VideoLiveStreamingDetails\",\n + \ \"description\": \"The liveStreamingDetails object contains metadata + about a live video broadcast. The object will only be present in a video resource + if the video is an upcoming, live, or completed live broadcast.\"\n },\n + \ \"processingDetails\": {\n \"$ref\": \"VideoProcessingDetails\",\n + \ \"description\": \"The processingDetails object encapsulates information + about YouTube's progress in processing the uploaded video file. The properties + in the object identify the current processing status and an estimate of the + time remaining until YouTube finishes processing the video. This part also + indicates whether different types of data or content, such as file details + or thumbnail images, are available for the video. The processingProgress object + is designed to be polled so that the video uploaded can track the progress + that YouTube has made in processing the uploaded video file. This data can + only be retrieved by the video owner.\"\n },\n \"recordingDetails\": + {\n \"$ref\": \"VideoRecordingDetails\",\n \"description\": + \"The recordingDetails object encapsulates information about the location, + date and address where the video was recorded.\"\n },\n \"fileDetails\": + {\n \"$ref\": \"VideoFileDetails\",\n \"description\": \"The + fileDetails object encapsulates information about the video file that was + uploaded to YouTube, including the file's resolution, duration, audio and + video codecs, stream bitrates, and more. This data can only be retrieved by + the video owner.\"\n },\n \"monetizationDetails\": {\n \"description\": + \"The monetizationDetails object encapsulates information about the monetization + status of the video.\",\n \"$ref\": \"VideoMonetizationDetails\"\n + \ },\n \"statistics\": {\n \"$ref\": \"VideoStatistics\",\n + \ \"description\": \"The statistics object contains statistics about + the video.\"\n },\n \"projectDetails\": {\n \"$ref\": + \"VideoProjectDetails\",\n \"description\": \"The projectDetails + object contains information about the project specific video metadata. b/157517979: + This part was never populated after it was added. However, it sees non-zero + traffic because there is generated client code in the wild that refers to + it [1]. We keep this field and do NOT remove it because otherwise V3 would + return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n + \ },\n \"ageGating\": {\n \"description\": \"Age restriction + details related to a video. This data can only be retrieved by the video owner.\",\n + \ \"$ref\": \"VideoAgeGating\"\n },\n \"localizations\": + {\n \"type\": \"object\",\n \"description\": \"The localizations + object contains localized versions of the basic details about the video, such + as its title and description.\",\n \"additionalProperties\": {\n + \ \"$ref\": \"VideoLocalization\"\n }\n },\n \"snippet\": + {\n \"$ref\": \"VideoSnippet\",\n \"description\": \"The + snippet object contains basic details about the video, such as its title, + description, and category.\"\n },\n \"status\": {\n \"$ref\": + \"VideoStatus\",\n \"description\": \"The status object contains + information about the video's uploading, processing, and privacy statuses.\"\n + \ },\n \"topicDetails\": {\n \"description\": \"The + topicDetails object encapsulates information about Freebase topics associated + with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.videos.update\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\"\n }\n + \ }\n },\n \"LiveChatMessageAuthorDetails\": {\n \"properties\": + {\n \"isChatOwner\": {\n \"type\": \"boolean\",\n \"description\": + \"Whether the author is the owner of the live chat.\"\n },\n \"displayName\": + {\n \"description\": \"The channel's display name.\",\n \"type\": + \"string\"\n },\n \"isChatSponsor\": {\n \"description\": + \"Whether the author is a sponsor of the live chat.\",\n \"type\": + \"boolean\"\n },\n \"channelId\": {\n \"description\": + \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n + \ \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": + \"The channels's avatar URL.\"\n },\n \"isVerified\": {\n \"description\": + \"Whether the author's identity has been verified by YouTube.\",\n \"type\": + \"boolean\"\n },\n \"isChatModerator\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the author is a moderator + of the live chat.\"\n },\n \"channelUrl\": {\n \"type\": + \"string\",\n \"description\": \"The channel's URL.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageAuthorDetails\"\n + \ },\n \"PropertyValue\": {\n \"description\": \"A pair Property + / Value.\",\n \"properties\": {\n \"value\": {\n \"description\": + \"The property's value.\",\n \"type\": \"string\"\n },\n \"property\": + {\n \"description\": \"A property.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"PropertyValue\"\n + \ },\n \"LiveStreamHealthStatus\": {\n \"type\": \"object\",\n \"id\": + \"LiveStreamHealthStatus\",\n \"properties\": {\n \"status\": + {\n \"description\": \"The status code of this stream\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n + \ \"revoked\"\n ]\n },\n \"lastUpdateTimeSeconds\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The last time this status was updated (in seconds)\"\n },\n \"configurationIssues\": + {\n \"description\": \"The configurations issues on this stream\",\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"LiveStreamConfigurationIssue\"\n }\n }\n }\n },\n + \ \"I18nLanguageListResponse\": {\n \"id\": \"I18nLanguageListResponse\",\n + \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"I18nLanguage\"\n },\n \"description\": + \"A list of supported i18n languages. In this map, the i18n language ID is + the map key, and its value is the corresponding i18nLanguage resource.\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": + {\n \"default\": \"youtube#i18nLanguageListResponse\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsComment\": + {\n \"type\": \"object\",\n \"description\": \"Information about + a resource that received a comment.\",\n \"id\": \"ActivityContentDetailsComment\",\n + \ \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + associated with the comment.\",\n \"$ref\": \"ResourceId\"\n }\n + \ }\n },\n \"LiveChatSuperStickerDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"currency\": {\n \"description\": + \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n + \ },\n \"amountMicros\": {\n \"description\": \"The + amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": + \"uint64\",\n \"type\": \"string\"\n },\n \"amountDisplayString\": + {\n \"description\": \"A rendered string that displays the fund amount + and currency to the user.\",\n \"type\": \"string\"\n },\n + \ \"tier\": {\n \"format\": \"uint32\",\n \"description\": + \"The tier in which the amount belongs. Lower amounts belong to lower tiers. + The lowest tier is 1.\",\n \"type\": \"integer\"\n },\n \"superStickerMetadata\": + {\n \"description\": \"Information about the Super Sticker.\",\n + \ \"$ref\": \"SuperStickerMetadata\"\n }\n },\n \"id\": + \"LiveChatSuperStickerDetails\"\n },\n \"Channel\": {\n \"properties\": + {\n \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": + \"ChannelLocalization\"\n },\n \"type\": \"object\",\n \"description\": + \"Localizations for different languages\"\n },\n \"conversionPings\": + {\n \"description\": \"The conversionPings object encapsulates information + about conversion pings that need to be respected by the channel.\",\n \"$ref\": + \"ChannelConversionPings\"\n },\n \"contentDetails\": {\n \"$ref\": + \"ChannelContentDetails\",\n \"description\": \"The contentDetails + object encapsulates information about the channel's content.\"\n },\n + \ \"brandingSettings\": {\n \"$ref\": \"ChannelBrandingSettings\",\n + \ \"description\": \"The brandingSettings object encapsulates information + about the branding of the channel.\"\n },\n \"status\": {\n + \ \"description\": \"The status object encapsulates information about + the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n + \ },\n \"contentOwnerDetails\": {\n \"description\": + \"The contentOwnerDetails object encapsulates channel data that is relevant + for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n + \ \"default\": \"youtube#channel\"\n },\n \"id\": {\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"ChannelSnippet\",\n \"description\": \"The + snippet object contains basic details about the channel, such as its title, + description, and thumbnail images.\"\n },\n \"auditDetails\": + {\n \"description\": \"The auditionDetails object encapsulates channel + data that is relevant for YouTube Partners during the audition process.\",\n + \ \"$ref\": \"ChannelAuditDetails\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"statistics\": {\n \"description\": + \"The statistics object encapsulates statistics for the channel.\",\n \"$ref\": + \"ChannelStatistics\"\n },\n \"topicDetails\": {\n \"$ref\": + \"ChannelTopicDetails\",\n \"description\": \"The topicDetails object + encapsulates information about Freebase topics associated with the channel.\"\n + \ }\n },\n \"description\": \"A *channel* resource contains + information about a YouTube channel.\",\n \"id\": \"Channel\",\n \"type\": + \"object\"\n },\n \"PlaylistItemContentDetails\": {\n \"type\": + \"object\",\n \"id\": \"PlaylistItemContentDetails\",\n \"properties\": + {\n \"videoPublishedAt\": {\n \"description\": \"The date + and time that the video was published to YouTube.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"startAt\": + {\n \"description\": \"The time, measured in seconds from the start + of the video, when the video should start playing. (The playlist owner can + specify the times when the video should start and stop playing when the video + is played in the context of the playlist.) The default value is 0.\",\n \"type\": + \"string\"\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify a video. To retrieve the video + resource, set the id query parameter to this value in your API request.\",\n + \ \"type\": \"string\"\n },\n \"endAt\": {\n \"description\": + \"The time, measured in seconds from the start of the video, when the video + should stop playing. (The playlist owner can specify the times when the video + should start and stop playing when the video is played in the context of the + playlist.) By default, assume that the video.endTime is the end of the video.\",\n + \ \"type\": \"string\"\n },\n \"note\": {\n \"description\": + \"A user-generated note for this item.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"PlaylistContentDetails\": {\n \"id\": + \"PlaylistContentDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"itemCount\": {\n \"description\": \"The number of videos + in the playlist.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n }\n }\n },\n \"CommentSnippet\": {\n \"id\": + \"CommentSnippet\",\n \"description\": \"Basic details about a comment, + such as its author and text.\",\n \"type\": \"object\",\n \"properties\": + {\n \"updatedAt\": {\n \"format\": \"date-time\",\n \"description\": + \"The date and time when the comment was last updated.\",\n \"type\": + \"string\"\n },\n \"parentId\": {\n \"type\": \"string\",\n + \ \"description\": \"The unique id of the parent comment, only set + for replies.\"\n },\n \"videoId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the video the comment refers to, if + any.\"\n },\n \"canRate\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether the current viewer can rate this comment.\"\n + \ },\n \"authorProfileImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The URL for the avatar of the user who posted + the comment.\"\n },\n \"likeCount\": {\n \"description\": + \"The total number of likes this comment has received.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"viewerRating\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"The + entity is liked.\",\n \"The entity is disliked.\"\n ]\n + \ },\n \"moderationStatus\": {\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The comment's moderation status. Will not be set if the comments were requested + through the id filter.\"\n },\n \"authorDisplayName\": {\n \"type\": + \"string\",\n \"description\": \"The name of the user who posted + the comment.\"\n },\n \"authorChannelId\": {\n \"$ref\": + \"CommentSnippetAuthorChannelId\"\n },\n \"textDisplay\": {\n + \ \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"authorChannelUrl\": + {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n + \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n \"publishedAt\": + {\n \"description\": \"The date and time when the comment was originally + published.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n + \ },\n \"textOriginal\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n + \ }\n }\n },\n \"ChannelContentDetails\": {\n \"properties\": + {\n \"relatedPlaylists\": {\n \"type\": \"object\",\n \"properties\": + {\n \"favorites\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the playlist that contains the channel\\\"s favorite videos. Use the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"watchLater\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch later playlist. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"watchHistory\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use + that list.\"\n },\n \"likes\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the playlist that + contains the channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\"\n },\n \"uploads\": + {\n \"type\": \"string\",\n \"description\": \"The + ID of the playlist that contains the channel\\\"s uploaded videos. Use the + videos.insert method to upload new videos and the videos.delete method to + delete previously uploaded videos.\"\n },\n \"watchLater\": + {\n \"type\": \"string\",\n \"description\": \"The + ID of the playlist that contains the channel\\\"s watch later playlist. Use the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"uploads\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s uploaded videos. Use the videos.insert method to upload new videos - and the videos.delete method to delete previously uploaded videos.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n - \ }\n }\n },\n \"VideoPlayer\": {\n \"id\": \"VideoPlayer\",\n - \ \"type\": \"object\",\n \"description\": \"Player to be used for - a video playback.\",\n \"properties\": {\n \"embedHeight\": {\n - \ \"type\": \"string\",\n \"format\": \"int64\"\n },\n - \ \"embedWidth\": {\n \"description\": \"The embed width\",\n - \ \"type\": \"string\",\n \"format\": \"int64\"\n },\n - \ \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\",\n \"type\": - \"string\"\n }\n }\n },\n \"PlaylistListResponse\": {\n - \ \"id\": \"PlaylistListResponse\",\n \"properties\": {\n \"eventId\": + that list.\"\n },\n \"watchHistory\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the playlist that + contains the channel\\\"s watch history. Use the playlistItems.insert and + playlistItems.delete to add or remove items from that list.\"\n }\n + \ }\n }\n },\n \"type\": \"object\",\n \"description\": + \"Details about the content of a channel.\",\n \"id\": \"ChannelContentDetails\"\n + \ },\n \"GeoPoint\": {\n \"properties\": {\n \"longitude\": + {\n \"type\": \"number\",\n \"format\": \"double\",\n \"description\": + \"Longitude in degrees.\"\n },\n \"latitude\": {\n \"description\": + \"Latitude in degrees.\",\n \"type\": \"number\",\n \"format\": + \"double\"\n },\n \"altitude\": {\n \"type\": \"number\",\n + \ \"format\": \"double\",\n \"description\": \"Altitude above + the reference ellipsoid, in meters.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"GeoPoint\",\n \"description\": \"Geographical + coordinates of a point, in WGS84.\"\n },\n \"ChannelStatistics\": {\n + \ \"id\": \"ChannelStatistics\",\n \"properties\": {\n \"commentCount\": + {\n \"format\": \"uint64\",\n \"description\": \"The number + of comments for the channel.\",\n \"type\": \"string\"\n },\n + \ \"hiddenSubscriberCount\": {\n \"type\": \"boolean\",\n \"description\": + \"Whether or not the number of subscribers is shown for this user.\"\n },\n + \ \"subscriberCount\": {\n \"format\": \"uint64\",\n \"description\": + \"The number of subscribers that the channel has.\",\n \"type\": + \"string\"\n },\n \"videoCount\": {\n \"format\": \"uint64\",\n + \ \"type\": \"string\",\n \"description\": \"The number of + videos uploaded to the channel.\"\n },\n \"viewCount\": {\n + \ \"type\": \"string\",\n \"description\": \"The number of + times the channel has been viewed.\",\n \"format\": \"uint64\"\n + \ }\n },\n \"description\": \"Statistics about a channel: + number of subscribers, number of videos in the channel, etc.\",\n \"type\": + \"object\"\n },\n \"SuperStickerMetadata\": {\n \"id\": \"SuperStickerMetadata\",\n + \ \"properties\": {\n \"altTextLanguage\": {\n \"description\": + \"Specifies the localization language in which the alt text is returned.\",\n + \ \"type\": \"string\"\n },\n \"stickerId\": {\n \"type\": + \"string\",\n \"description\": \"Unique identifier of the Super Sticker. + This is a shorter form of the alt_text that includes pack name and a recognizable + characteristic of the sticker.\"\n },\n \"altText\": {\n \"description\": + \"Internationalized alt text that describes the sticker image and any animation + associated with it.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"VideoAbuseReportReasonSnippet\": + {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"properties\": + {\n \"secondaryReasons\": {\n \"type\": \"array\",\n \"description\": + \"The secondary reasons associated with this reason, if any are available. + (There might be 0 or more.)\",\n \"items\": {\n \"$ref\": + \"VideoAbuseReportSecondaryReason\"\n }\n },\n \"label\": + {\n \"description\": \"The localized label belonging to this abuse + report reason.\",\n \"type\": \"string\"\n }\n },\n \"description\": + \"Basic details about a video category, such as its localized title.\",\n + \ \"type\": \"object\"\n },\n \"MemberSnippet\": {\n \"properties\": + {\n \"memberDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n + \ \"description\": \"Details about the member.\"\n },\n \"creatorChannelId\": + {\n \"description\": \"The id of the channel that's offering memberships.\",\n + \ \"type\": \"string\"\n },\n \"membershipsDetails\": + {\n \"description\": \"Details about the user's membership.\",\n + \ \"$ref\": \"MembershipsDetails\"\n }\n },\n \"id\": + \"MemberSnippet\",\n \"type\": \"object\"\n },\n \"Subscription\": + {\n \"type\": \"object\",\n \"properties\": {\n \"contentDetails\": + {\n \"description\": \"The contentDetails object contains basic statistics + about the subscription.\",\n \"$ref\": \"SubscriptionContentDetails\"\n + \ },\n \"snippet\": {\n \"$ref\": \"SubscriptionSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the subscription, including its title and the channel that the user subscribed + to.\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the subscription.\"\n },\n \"subscriberSnippet\": + {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n \"description\": + \"The subscriberSnippet object contains basic details about the subscriber.\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#subscription\",\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\"\n + \ }\n },\n \"description\": \"A *subscription* resource contains + information about a YouTube user subscription. A subscription notifies a user + when new videos are added to a channel or when another user takes one of several + actions on YouTube, such as uploading a video, rating a video, or commenting + on a video.\",\n \"id\": \"Subscription\"\n },\n \"LiveChatUserBannedMessageDetails\": + {\n \"properties\": {\n \"bannedUserDetails\": {\n \"$ref\": + \"ChannelProfileDetails\",\n \"description\": \"The details of the + user that was banned.\"\n },\n \"banType\": {\n \"type\": + \"string\",\n \"description\": \"The type of ban.\",\n \"enum\": + [\n \"permanent\",\n \"temporary\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ]\n },\n \"banDurationSeconds\": + {\n \"format\": \"uint64\",\n \"description\": \"The duration + of the ban. This property is only present if the banType is temporary.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LiveChatUserBannedMessageDetails\"\n },\n \"MembershipsLevel\": + {\n \"properties\": {\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the level.\",\n \"$ref\": + \"MembershipsLevelSnippet\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube assigns to uniquely identify the memberships level.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"default\": \"youtube#membershipsLevel\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"MembershipsLevel\",\n \"description\": + \"A *membershipsLevel* resource represents an offer made by YouTube creators + for their fans. Users can become members of the channel by joining one of + the available levels. They will provide recurring monetary support and receives + special benefits.\",\n \"type\": \"object\"\n },\n \"MembershipsDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"membershipsDurationAtLevels\": + {\n \"type\": \"array\",\n \"description\": \"Data about + memberships duration on particular pricing levels.\",\n \"items\": + {\n \"$ref\": \"MembershipsDurationAtLevel\"\n }\n },\n + \ \"highestAccessibleLevel\": {\n \"description\": \"Id of + the highest level that the user has access to at the moment.\",\n \"type\": + \"string\"\n },\n \"membershipsDuration\": {\n \"description\": + \"Data about memberships duration without taking into consideration pricing + levels.\",\n \"$ref\": \"MembershipsDuration\"\n },\n \"accessibleLevels\": + {\n \"type\": \"array\",\n \"description\": \"Ids of all + levels that the user has access to. This includes the currently active level + and all other levels that are included because of a higher purchase.\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n },\n + \ \"highestAccessibleLevelDisplayName\": {\n \"description\": + \"Display name for the highest level that the user has access to at the moment.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"MembershipsDetails\"\n + \ },\n \"InvideoPosition\": {\n \"id\": \"InvideoPosition\",\n \"description\": + \"Describes the spatial position of a visual widget inside a video. It is + a union of various position types, out of which only will be set one.\",\n + \ \"properties\": {\n \"cornerPosition\": {\n \"enum\": + [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n + \ \"bottomRight\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"Describes in which corner of the + video the visual widget will appear.\",\n \"type\": \"string\"\n + \ },\n \"type\": {\n \"type\": \"string\",\n \"enum\": + [\n \"corner\"\n ],\n \"description\": \"Defines + the position type.\",\n \"enumDescriptions\": [\n \"\"\n + \ ]\n }\n },\n \"type\": \"object\"\n },\n \"CommentThread\": + {\n \"type\": \"object\",\n \"description\": \"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.\",\n + \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"CommentThreadSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the comment thread and also the top level comment.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"id\": {\n \"description\": \"The + ID that YouTube uses to uniquely identify the comment thread.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#commentThread\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#commentThread\\\".\",\n \"type\": \"string\"\n + \ },\n \"replies\": {\n \"description\": \"The replies + object contains a limited number of replies (if any) to the top level comment + found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n }\n + \ },\n \"id\": \"CommentThread\"\n },\n \"ThumbnailSetResponse\": + {\n \"type\": \"object\",\n \"id\": \"ThumbnailSetResponse\",\n + \ \"properties\": {\n \"items\": {\n \"description\": + \"A list of thumbnails.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"ThumbnailDetails\"\n }\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n + \ \"default\": \"youtube#thumbnailSetResponse\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": + this response.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"Playlist\": {\n \"id\": \"Playlist\",\n \"properties\": {\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the playlist, such as its title and description.\",\n + \ \"$ref\": \"PlaylistSnippet\"\n },\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the playlist.\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#playlist\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n + \ },\n \"localizations\": {\n \"description\": \"Localizations + for different languages\",\n \"additionalProperties\": {\n \"$ref\": + \"PlaylistLocalization\"\n },\n \"type\": \"object\"\n },\n + \ \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": + \"The player object contains information that you would use to play the playlist + in an embedded player.\"\n },\n \"contentDetails\": {\n \"description\": + \"The contentDetails object contains information like video count.\",\n \"$ref\": + \"PlaylistContentDetails\"\n },\n \"status\": {\n \"description\": + \"The status object contains status information for the playlist.\",\n \"$ref\": + \"PlaylistStatus\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"A *playlist* resource represents a YouTube playlist. A playlist is a collection + of videos that can be viewed sequentially and shared with other users. A playlist + can contain up to 200 videos, and YouTube does not limit the number of playlists + that each user creates. By default, playlists are publicly visible to other + users, but playlists can be public or private. YouTube also uses playlists + to identify special collections of videos for a channel, such as: - uploaded + videos - favorite videos - positively rated (liked) videos - watch history + - watch later To be more specific, these lists are associated with a channel, + which is a collection of a person, group, or company's videos, playlists, + and other YouTube information. You can retrieve the playlist IDs for each + of these lists from the channel resource for a given channel. You can then + use the playlistItems.list method to retrieve any of those lists. You can + also add or remove items from those lists by calling the playlistItems.insert + and playlistItems.delete methods.\"\n },\n \"ChannelAuditDetails\": + {\n \"description\": \"The auditDetails object encapsulates channel data + that is relevant for YouTube Partners during the audit process.\",\n \"id\": + \"ChannelAuditDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"communityGuidelinesGoodStanding\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether or not the channel respects the community + guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether or not the channel has + any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": + {\n \"description\": \"Whether or not the channel has any unresolved + claims.\",\n \"type\": \"boolean\"\n }\n }\n },\n + \ \"VideoPlayer\": {\n \"id\": \"VideoPlayer\",\n \"description\": + \"Player to be used for a video playback.\",\n \"properties\": {\n \"embedHtml\": + {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e + tag that embeds a player that will play the video.\"\n },\n \"embedWidth\": + {\n \"type\": \"string\",\n \"format\": \"int64\",\n \"description\": + \"The embed width\"\n },\n \"embedHeight\": {\n \"type\": + \"string\",\n \"format\": \"int64\"\n }\n },\n \"type\": + \"object\"\n },\n \"LiveChatModeratorSnippet\": {\n \"id\": \"LiveChatModeratorSnippet\",\n + \ \"properties\": {\n \"moderatorDetails\": {\n \"$ref\": + \"ChannelProfileDetails\",\n \"description\": \"Details about the + moderator.\"\n },\n \"liveChatId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the live chat this moderator can act + on.\"\n }\n },\n \"type\": \"object\"\n },\n \"CommentThreadListResponse\": + {\n \"id\": \"CommentThreadListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#commentThreadListResponse\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"pageInfo\": {\n \"description\": + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n + \ \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"description\": \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlistListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"A list of playlists - that match the request criteria\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Playlist\"\n }\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoFileDetailsAudioStream\": {\n - \ \"properties\": {\n \"vendor\": {\n \"description\": + \ \"items\": {\n \"items\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"description\": \"A list of comment threads that + match the request criteria.\",\n \"type\": \"array\"\n }\n + \ }\n },\n \"PlaylistItemStatus\": {\n \"description\": \"Information + about the playlist item's privacy status.\",\n \"id\": \"PlaylistItemStatus\",\n + \ \"properties\": {\n \"privacyStatus\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"description\": \"This resource's + privacy status.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"ActivityContentDetailsBulletin\": + {\n \"id\": \"ActivityContentDetailsBulletin\",\n \"properties\": + {\n \"resourceId\": {\n \"description\": \"The resourceId + object contains information that identifies the resource associated with a + bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": + \"ResourceId\"\n }\n },\n \"description\": \"Details about + a channel bulletin post.\",\n \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": + {\n \"description\": \"Information about a video stream.\",\n \"id\": + \"VideoFileDetailsVideoStream\",\n \"type\": \"object\",\n \"properties\": + {\n \"bitrateBps\": {\n \"description\": \"The video stream's + bitrate, in bits per second.\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n },\n \"vendor\": {\n \"description\": \"A value that uniquely identifies a video vendor. Typically, the value is a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"bitrateBps\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The audio stream's bitrate, in bits - per second.\"\n },\n \"codec\": {\n \"description\": - \"The audio codec that the stream uses.\",\n \"type\": \"string\"\n - \ },\n \"channelCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The number - of audio channels that the stream contains.\"\n }\n },\n \"description\": - \"Information about an audio stream.\",\n \"id\": \"VideoFileDetailsAudioStream\",\n - \ \"type\": \"object\"\n },\n \"IngestionInfo\": {\n \"properties\": - {\n \"backupIngestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\"\n - \ },\n \"rtmpsIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of ingestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ },\n \"streamName\": {\n \"type\": \"string\",\n \"description\": - \"The stream name that YouTube assigns to the video stream.\"\n },\n - \ \"rtmpsBackupIngestionAddress\": {\n \"description\": \"This - ingestion url may be used instead of backupIngestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ },\n \"ingestionAddress\": {\n \"description\": \"The - primary ingestion URL that you should use to stream video to YouTube. You - must stream video to this URL. Depending on which application or tool you - use to encode your video stream, you may need to enter the stream URL and - stream name separately or you may need to concatenate them in the following - format: *STREAM_URL/STREAM_NAME* \",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Describes information necessary for ingesting - an RTMP, HTTP, or SRT stream.\",\n \"type\": \"object\",\n \"id\": - \"IngestionInfo\"\n },\n \"LiveChatMessageListResponse\": {\n \"id\": - \"LiveChatMessageListResponse\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"pollingIntervalMillis\": - {\n \"format\": \"uint32\",\n \"description\": \"The amount - of time the client should wait before polling again.\",\n \"type\": - \"integer\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatMessageListResponse\",\n + \ \"rotation\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"none\",\n \"clockwise\",\n + \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The amount that YouTube needs to rotate the original source content to properly + display the video.\"\n },\n \"frameRateFps\": {\n \"type\": + \"number\",\n \"description\": \"The video stream's frame rate, in + frames per second.\",\n \"format\": \"double\"\n },\n \"aspectRatio\": + {\n \"format\": \"double\",\n \"description\": \"The video + content's display aspect ratio, which specifies the aspect ratio in which + the video should be displayed.\",\n \"type\": \"number\"\n },\n + \ \"widthPixels\": {\n \"format\": \"uint32\",\n \"type\": + \"integer\",\n \"description\": \"The encoded video content's width + in pixels. You can calculate the video's encoding aspect ratio as width_pixels + / height_pixels.\"\n },\n \"heightPixels\": {\n \"type\": + \"integer\",\n \"description\": \"The encoded video content's height + in pixels.\",\n \"format\": \"uint32\"\n },\n \"codec\": + {\n \"description\": \"The video codec that the stream uses.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"LiveChatMessageDeletedDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"deletedMessageId\": + {\n \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageDeletedDetails\"\n + \ },\n \"LiveChatBan\": {\n \"properties\": {\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#liveChatBan\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"id\": {\n \"description\": \"The + ID that YouTube assigns to uniquely identify the ban.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"description\": + \"The `snippet` object contains basic details about the ban.\",\n \"$ref\": + \"LiveChatBanSnippet\"\n }\n },\n \"description\": \"A `__liveChatBan__` + resource represents a ban for a YouTube live chat.\",\n \"id\": \"LiveChatBan\",\n + \ \"type\": \"object\"\n },\n \"VideoLocalization\": {\n \"type\": + \"object\",\n \"description\": \"Localized versions of certain video + properties (e.g. title).\",\n \"properties\": {\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"Localized + version of the video's description.\"\n },\n \"title\": {\n + \ \"description\": \"Localized version of the video's title.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoLocalization\"\n + \ },\n \"Cuepoint\": {\n \"id\": \"Cuepoint\",\n \"type\": + \"object\",\n \"description\": \"Note that there may be a 5-second end-point + resolution issue. For instance, if a cuepoint comes in for 22:03:27, we may + stuff the cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact + of HLS.\",\n \"properties\": {\n \"cueType\": {\n \"type\": + \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n + \ \"cueTypeAd\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"\"\n ]\n },\n \"walltimeMs\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The wall clock time at which the cuepoint should be inserted. Only one of + insertion_offset_time_ms and walltime_ms may be set at a time.\"\n },\n + \ \"insertionOffsetTimeMs\": {\n \"description\": \"The time + when the cuepoint should be inserted by offset to the broadcast actual start + time.\",\n \"format\": \"int64\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"type\": \"string\"\n },\n + \ \"durationSecs\": {\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"description\": \"The duration of this cuepoint.\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The identifier for cuepoint resource.\"\n }\n }\n },\n \"MembershipsLevelListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"MembershipsLevel\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of pricing levels offered by a creator to the fans.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"default\": \"youtube#membershipsLevelListResponse\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"MembershipsLevelListResponse\"\n },\n + \ \"VideoAbuseReportReason\": {\n \"properties\": {\n \"snippet\": + {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n \"description\": + \"The `snippet` object contains basic details about the abuse report reason.\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#videoAbuseReportReason\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + this abuse report reason.\"\n }\n },\n \"description\": \"A + `__videoAbuseReportReason__` resource identifies a reason that a video could + be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\",\n + \ \"type\": \"object\",\n \"id\": \"VideoAbuseReportReason\"\n },\n + \ \"MembershipsDuration\": {\n \"properties\": {\n \"memberTotalDurationMonths\": + {\n \"format\": \"int32\",\n \"type\": \"integer\",\n \"description\": + \"The cumulative time the user has been a member across all levels in complete + months (the time is rounded down to the nearest integer).\"\n },\n + \ \"memberSince\": {\n \"type\": \"string\",\n \"description\": + \"The date and time when the user became a continuous member across all levels.\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"MembershipsDuration\"\n + \ },\n \"ChannelSectionTargeting\": {\n \"id\": \"ChannelSectionTargeting\",\n + \ \"description\": \"ChannelSection targeting setting.\",\n \"type\": + \"object\",\n \"properties\": {\n \"languages\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"The language the channel section is targeting.\",\n \"type\": \"array\"\n + \ },\n \"countries\": {\n \"description\": \"The country + the channel section is targeting.\",\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"regions\": + {\n \"description\": \"The region the channel section is targeting.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n }\n }\n }\n },\n \"VideoListResponse\": + {\n \"id\": \"VideoListResponse\",\n \"properties\": {\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#videoListResponse\",\n \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"offlineAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the underlying stream went offline.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"type\": - \"array\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": + kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"Video\"\n },\n + \ \"type\": \"array\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"ChannelBannerResource\": + {\n \"id\": \"ChannelBannerResource\",\n \"properties\": {\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n + \ \"default\": \"youtube#channelBannerResource\"\n },\n \"etag\": + {\n \"type\": \"string\"\n },\n \"url\": {\n \"type\": + \"string\",\n \"description\": \"The URL of this banner image.\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"A + channel banner returned as the response to a channel_banner.insert call.\"\n + \ },\n \"ChannelStatus\": {\n \"properties\": {\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n },\n \"isLinked\": {\n + \ \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n \"privacyStatus\": + {\n \"type\": \"string\",\n \"description\": \"Privacy status + of the channel.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"public\",\n \"unlisted\",\n \"private\"\n + \ ]\n },\n \"madeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"longUploadsStatus\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The long uploads status of this + channel. See https://support.google.com/youtube/answer/71673 for more information.\",\n + \ \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n + \ \"eligible\",\n \"disallowed\"\n ],\n \"type\": + \"string\"\n }\n },\n \"id\": \"ChannelStatus\",\n \"description\": + \"JSON template for the status part of a channel.\",\n \"type\": \"object\"\n + \ },\n \"ChannelConversionPings\": {\n \"type\": \"object\",\n \"id\": + \"ChannelConversionPings\",\n \"properties\": {\n \"pings\": {\n + \ \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n + \ },\n \"type\": \"array\",\n \"description\": \"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.\"\n }\n },\n \"description\": \"The conversionPings + object encapsulates information about conversion pings that need to be respected + by the channel.\"\n },\n \"VideoAbuseReportSecondaryReason\": {\n \"id\": + \"VideoAbuseReportSecondaryReason\",\n \"type\": \"object\",\n \"properties\": + {\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID of this abuse report secondary reason.\"\n },\n \"label\": + {\n \"description\": \"The localized label for this abuse report + secondary reason.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"TokenPagination\": {\n \"description\": \"Stub token pagination + template to suppress results.\",\n \"type\": \"object\",\n \"id\": + \"TokenPagination\",\n \"properties\": {}\n },\n \"SearchResult\": + {\n \"id\": \"SearchResult\",\n \"description\": \"A search result + contains information about a YouTube video, channel, or playlist that matches + the search parameters specified in an API request. While a search result points + to a uniquely identifiable resource, like a video, it does not have its own + persistent data.\",\n \"properties\": {\n \"id\": {\n \"description\": + \"The id object contains information that can be used to uniquely identify + the resource that matches the search request.\",\n \"$ref\": \"ResourceId\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#searchResult\",\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"SearchResultSnippet\",\n \"description\": + \"The snippet object contains basic details about a search result, such as + its title or description. For example, if the search result is a video, then + the title will be the video's title and the description will be the video's + description.\"\n }\n },\n \"type\": \"object\"\n },\n + \ \"I18nRegionListResponse\": {\n \"properties\": {\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegionListResponse\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"I18nRegion\"\n },\n \"description\": \"A list of regions + where YouTube is available. In this map, the i18n region ID is the map key, + and its value is the corresponding i18nRegion resource.\",\n \"type\": + \"array\"\n }\n },\n \"id\": \"I18nRegionListResponse\",\n + \ \"type\": \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": + {\n \"properties\": {\n \"associatedMembershipGiftingMessageId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the membership gifting message that is related to this gift membership. This + ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n + \ },\n \"gifterChannelId\": {\n \"description\": \"The + ID of the user that made the membership gifting purchase. This matches the + `snippet.authorChannelId` of the associated membership gifting message.\",\n + \ \"type\": \"string\"\n },\n \"memberLevelName\": {\n + \ \"type\": \"string\",\n \"description\": \"The name of + the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` + of the associated membership gifting message. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\"\n }\n },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n + \ \"type\": \"object\"\n },\n \"LiveChatSuperChatDetails\": {\n + \ \"type\": \"object\",\n \"properties\": {\n \"amountDisplayString\": + {\n \"description\": \"A rendered string that displays the fund amount + and currency to the user.\",\n \"type\": \"string\"\n },\n + \ \"amountMicros\": {\n \"description\": \"The amount purchased + by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": + \"uint64\",\n \"type\": \"string\"\n },\n \"tier\": + {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The tier in which the amount belongs. Lower amounts belong to lower tiers. + The lowest tier is 1.\"\n },\n \"currency\": {\n \"type\": + \"string\",\n \"description\": \"The currency in which the purchase + was made.\"\n },\n \"userComment\": {\n \"type\": \"string\",\n + \ \"description\": \"The comment added by the user to this Super Chat + event.\"\n }\n },\n \"id\": \"LiveChatSuperChatDetails\"\n + \ },\n \"LiveStreamListResponse\": {\n \"properties\": {\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"LiveStream\"\n },\n \"description\": + \"A list of live streams that match the request criteria.\",\n \"type\": + \"array\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveStreamListResponse\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": + \"LiveStreamListResponse\",\n \"type\": \"object\"\n },\n \"AccessPolicy\": + {\n \"id\": \"AccessPolicy\",\n \"type\": \"object\",\n \"properties\": + {\n \"exception\": {\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"A list of region codes that identify countries where the default policy + do not apply.\"\n },\n \"allowed\": {\n \"type\": \"boolean\",\n + \ \"description\": \"The value of allowed indicates whether the access + to the policy is allowed or denied by default.\"\n }\n },\n \"description\": + \"Rights management policy for YouTube resources.\"\n },\n \"ActivityContentDetailsPromotedItem\": + {\n \"type\": \"object\",\n \"properties\": {\n \"customCtaButtonText\": + {\n \"description\": \"The custom call-to-action button text. If + specified, it will override the default button text for the cta_type.\",\n + \ \"type\": \"string\"\n },\n \"clickTrackingUrl\": + {\n \"description\": \"The URL the client should ping to indicate + that the user clicked through on this promoted item.\",\n \"type\": + \"string\"\n },\n \"ctaType\": {\n \"description\": + \"The type of call-to-action, a message to the user indicating action that + can be taken.\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n + \ \"visitAdvertiserSite\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"adTag\": {\n \"description\": \"The + URL the client should fetch to request a promoted item.\",\n \"type\": + \"string\"\n },\n \"creativeViewUrl\": {\n \"type\": + \"string\",\n \"description\": \"The URL the client should ping to + indicate that the user was shown this promoted item.\"\n },\n \"impressionUrl\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"The list of impression + URLs. The client should ping all of these URLs to indicate that the user was + shown this promoted item.\"\n },\n \"forecastingUrl\": {\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"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.\"\n },\n \"descriptionText\": + {\n \"description\": \"The text description to accompany the promoted + item.\",\n \"type\": \"string\"\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the promoted video.\"\n },\n \"destinationUrl\": + {\n \"description\": \"The URL the client should direct the user + to, if the user chooses to visit the advertiser's website.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Details about a + resource which is being promoted.\",\n \"id\": \"ActivityContentDetailsPromotedItem\"\n + \ },\n \"MembershipsDurationAtLevel\": {\n \"properties\": {\n \"level\": + {\n \"description\": \"Pricing level ID.\",\n \"type\": + \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"type\": + \"integer\",\n \"format\": \"int32\",\n \"description\": + \"The cumulative time the user has been a member for the given level in complete + months (the time is rounded down to the nearest integer).\"\n },\n + \ \"memberSince\": {\n \"type\": \"string\",\n \"description\": + \"The date and time when the user became a continuous member for the given + level.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"MembershipsDurationAtLevel\"\n },\n \"LiveChatMessageRetractedDetails\": + {\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"properties\": + {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"Video processing progress and completion time estimate.\",\n - \ \"properties\": {\n \"partsProcessed\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of parts of the video that YouTube has already processed. You can estimate - the percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\"\n },\n - \ \"timeLeftMs\": {\n \"description\": \"An estimate of the - amount of time, in millseconds, that YouTube needs to finish processing the - video.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ },\n \"partsTotal\": {\n \"description\": \"An estimate - of the total number of parts that need to be processed for the video. The - number may be updated with more precise estimates while YouTube processes - the video.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"I18nLanguageListResponse\": {\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n },\n \"description\": - \"A list of supported i18n languages. In this map, the i18n language ID is - the map key, and its value is the corresponding i18nLanguage resource.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nLanguageListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"I18nLanguageListResponse\"\n - \ },\n \"AbuseType\": {\n \"type\": \"object\",\n \"id\": \"AbuseType\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"MembershipsDurationAtLevel\": {\n \"properties\": - {\n \"memberTotalDurationMonths\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"description\": \"The cumulative - time the user has been a member for the given level in complete months (the - time is rounded down to the nearest integer).\"\n },\n \"memberSince\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the user became a continuous member for the given level.\"\n - \ },\n \"level\": {\n \"type\": \"string\",\n \"description\": - \"Pricing level ID.\"\n }\n },\n \"id\": \"MembershipsDurationAtLevel\",\n - \ \"type\": \"object\"\n },\n \"ChannelContentOwnerDetails\": {\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"type\": - \"object\",\n \"id\": \"ChannelContentOwnerDetails\",\n \"properties\": - {\n \"contentOwner\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the content owner linked to the channel.\"\n },\n \"timeLinked\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the channel was linked - to the content owner.\"\n }\n }\n },\n \"ThumbnailDetails\": - {\n \"id\": \"ThumbnailDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"high\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The high quality image for this resource.\"\n },\n \"default\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The default - image for this resource.\"\n },\n \"maxres\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The maximum resolution quality - image for this resource.\"\n },\n \"standard\": {\n \"description\": - \"The standard quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"medium\": {\n \"description\": \"The medium - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n }\n - \ },\n \"description\": \"Internal representation of thumbnails for - a YouTube resource.\"\n },\n \"SearchResultSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The value that YouTube uses to uniquely - identify the channel that published the resource that the search result identifies.\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The creation - date and time of the resource that the search result identifies.\"\n },\n - \ \"liveBroadcastContent\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\",\n \"description\": \"It indicates if the resource (video - or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" - if there is not any upcoming/active live broadcasts.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"The title of the channel that published the resource that the search result - identifies.\"\n },\n \"title\": {\n \"description\": - \"The title of the search result.\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"A description of the search result.\"\n }\n },\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"id\": \"SearchResultSnippet\"\n - \ },\n \"ActivityContentDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"comment\": {\n \"description\": \"The comment object - contains information about a resource that received a comment. This property - is only present if the snippet.type is comment.\",\n \"$ref\": \"ActivityContentDetailsComment\"\n - \ },\n \"favorite\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsFavorite\"\n },\n \"subscription\": - {\n \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"social\": {\n \"$ref\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"The social object contains details about a social - network post. This property is only present if the snippet.type is social.\"\n - \ },\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n },\n \"upload\": {\n \"$ref\": \"ActivityContentDetailsUpload\",\n + resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"description\": \"A list of broadcasts + that match the request criteria.\",\n \"type\": \"array\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"eventId\": {\n + \ \"type\": \"string\",\n \"description\": \"Serialized EventId + of the request which produced this response.\"\n },\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveBroadcastListResponse\",\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"LiveBroadcastListResponse\"\n },\n \"ActivityContentDetails\": {\n + \ \"description\": \"Details about the content of an activity: the video + that was shared, the channel that was subscribed to, etc.\",\n \"type\": + \"object\",\n \"properties\": {\n \"promotedItem\": {\n \"description\": + \"The promotedItem object contains details about a resource which is being + promoted. This property is only present if the snippet.type is promotedItem.\",\n + \ \"$ref\": \"ActivityContentDetailsPromotedItem\"\n },\n \"comment\": + {\n \"description\": \"The comment object contains information about + a resource that received a comment. This property is only present if the snippet.type + is comment.\",\n \"$ref\": \"ActivityContentDetailsComment\"\n },\n + \ \"upload\": {\n \"$ref\": \"ActivityContentDetailsUpload\",\n \ \"description\": \"The upload object contains information about the uploaded video. This property is only present if the snippet.type is upload.\"\n - \ },\n \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\"\n },\n \"promotedItem\": {\n \"$ref\": - \"ActivityContentDetailsPromotedItem\",\n \"description\": \"The - promotedItem object contains details about a resource which is being promoted. - This property is only present if the snippet.type is promotedItem.\"\n },\n - \ \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"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.\"\n },\n \"recommendation\": - {\n \"description\": \"The recommendation object contains information + \ },\n \"channelItem\": {\n \"description\": \"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.\",\n \"$ref\": + \"ActivityContentDetailsChannelItem\"\n },\n \"social\": {\n + \ \"description\": \"The social object contains details about a social + network post. This property is only present if the snippet.type is social.\",\n + \ \"$ref\": \"ActivityContentDetailsSocial\"\n },\n \"subscription\": + {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n \"description\": + \"The subscription object contains information about a channel that a user + subscribed to. This property is only present if the snippet.type is subscription.\"\n + \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n + \ \"description\": \"The recommendation object contains information about a recommended resource. This property is only present if the snippet.type - is recommendation.\",\n \"$ref\": \"ActivityContentDetailsRecommendation\"\n - \ },\n \"like\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsLike\"\n }\n },\n \"id\": \"ActivityContentDetails\",\n - \ \"description\": \"Details about the content of an activity: the video - that was shared, the channel that was subscribed to, etc.\"\n },\n \"ThirdPartyLink\": - {\n \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n },\n \"linkingToken\": - {\n \"type\": \"string\",\n \"description\": \"The linking_token - identifies a YouTube account and channel with which the third party account - is linked.\"\n },\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n - \ \"description\": \"The status object contains information about - the status of the link.\"\n },\n \"snippet\": {\n \"$ref\": - \"ThirdPartyLinkSnippet\",\n \"description\": \"The snippet object - contains basic details about the third- party account link.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"default\": \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ThirdPartyLink\"\n - \ },\n \"ChannelSectionContentDetails\": {\n \"id\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"Details about a channelsection, including playlists - and channels.\",\n \"properties\": {\n \"playlists\": {\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"channels\": - {\n \"type\": \"array\",\n \"description\": \"The channel - ids for type multiple_channels.\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"type\": \"object\"\n - \ },\n \"CaptionSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"isEasyReader\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n - \ },\n \"isLarge\": {\n \"description\": \"Indicates - whether the caption track uses large text for the vision-impaired. The default - value is false.\",\n \"type\": \"boolean\"\n },\n \"isCC\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the track contains closed captions for the deaf and hard of hearing. - The default value is false.\"\n },\n \"language\": {\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"isAutoSynced\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n \"name\": {\n \"description\": \"The - name of the caption track. The name is intended to be visible to the user - as an option during playback.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"failureReason\": {\n - \ \"description\": \"The reason that YouTube failed to process the - caption track. This property is only present if the state property's value - is failed.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ]\n },\n \"videoId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video associated with - the caption track. @mutable youtube.captions.insert\"\n },\n \"isDraft\": - {\n \"type\": \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n },\n \"trackKind\": {\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The caption track's type.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"status\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The caption track's - status.\",\n \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ],\n \"type\": \"string\"\n },\n - \ \"lastUpdated\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the caption track was last updated.\",\n \"format\": - \"date-time\"\n },\n \"audioTrackType\": {\n \"description\": - \"The type of audio track associated with the caption track.\",\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"type\": \"string\",\n + is recommendation.\"\n },\n \"bulletin\": {\n \"description\": + \"The bulletin object contains details about a channel bulletin post. This + object is only present if the snippet.type is bulletin.\",\n \"$ref\": + \"ActivityContentDetailsBulletin\"\n },\n \"playlistItem\": + {\n \"description\": \"The playlistItem object contains information + about a new playlist item. This property is only present if the snippet.type + is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n + \ },\n \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n + \ \"description\": \"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.\"\n },\n \"like\": {\n \"description\": + \"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.\",\n + \ \"$ref\": \"ActivityContentDetailsLike\"\n }\n },\n + \ \"id\": \"ActivityContentDetails\"\n },\n \"VideoStatistics\": + {\n \"properties\": {\n \"favoriteCount\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of users who currently have the video marked as a favorite video.\"\n + \ },\n \"viewCount\": {\n \"description\": \"The number + of times the video has been viewed.\",\n \"format\": \"uint64\",\n + \ \"type\": \"string\"\n },\n \"dislikeCount\": {\n + \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The number of users who have indicated that they disliked the video by giving + it a negative rating.\"\n },\n \"commentCount\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of comments for the video.\"\n },\n \"likeCount\": + {\n \"type\": \"string\",\n \"description\": \"The number + of users who have indicated that they liked the video by giving it a positive + rating.\",\n \"format\": \"uint64\"\n }\n },\n \"description\": + \"Statistics about the video, such as the number of times the video was viewed + or liked.\",\n \"id\": \"VideoStatistics\",\n \"type\": \"object\"\n + \ },\n \"ThumbnailDetails\": {\n \"type\": \"object\",\n \"description\": + \"Internal representation of thumbnails for a YouTube resource.\",\n \"properties\": + {\n \"default\": {\n \"description\": \"The default image + for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"high\": + {\n \"description\": \"The high quality image for this resource.\",\n + \ \"$ref\": \"Thumbnail\"\n },\n \"medium\": {\n \"$ref\": + \"Thumbnail\",\n \"description\": \"The medium quality image for + this resource.\"\n },\n \"maxres\": {\n \"$ref\": \"Thumbnail\",\n + \ \"description\": \"The maximum resolution quality image for this + resource.\"\n },\n \"standard\": {\n \"$ref\": \"Thumbnail\",\n + \ \"description\": \"The standard quality image for this resource.\"\n + \ }\n },\n \"id\": \"ThumbnailDetails\"\n },\n \"LiveChatMessageSnippet\": + {\n \"description\": \"Next ID: 33\",\n \"properties\": {\n \"membershipGiftingDetails\": + {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": + \"Details about the Membership Gifting event, this is only set if the type + is 'membershipGiftingEvent'.\"\n },\n \"authorChannelId\": {\n + \ \"description\": \"The ID of the user that authored this message, + this field is not always filled. textMessageEvent - the user that wrote the + message fanFundingEvent - the user that funded the broadcast newSponsorEvent + - the user that just became a sponsor memberMilestoneChatEvent - the member + that sent the message membershipGiftingEvent - the user that made the purchase + giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent + - the moderator that took the action messageRetractedEvent - the author that + retracted their message userBannedEvent - the moderator that took the action + superChatEvent - the user that made the purchase superStickerEvent - the user + that made the purchase\",\n \"type\": \"string\"\n },\n \"fanFundingEventDetails\": + {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n \"description\": + \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n + \ },\n \"newSponsorDetails\": {\n \"description\": \"Details + about the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. + Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n + \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"publishedAt\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the message was orignally published.\",\n \"format\": + \"date-time\"\n },\n \"userBannedDetails\": {\n \"$ref\": + \"LiveChatUserBannedMessageDetails\"\n },\n \"hasDisplayContent\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the message has display content that should be displayed to users.\"\n },\n + \ \"textMessageDetails\": {\n \"$ref\": \"LiveChatTextMessageDetails\",\n + \ \"description\": \"Details about the text message, this is only + set if the type is 'textMessageEvent'.\"\n },\n \"liveChatId\": + {\n \"type\": \"string\"\n },\n \"superChatDetails\": + {\n \"description\": \"Details about the Super Chat event, this is + only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n + \ },\n \"giftMembershipReceivedDetails\": {\n \"description\": + \"Details about the Gift Membership Received event, this is only set if the + type is 'giftMembershipReceivedEvent'.\",\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n + \ },\n \"type\": {\n \"description\": \"The type of + message, this will always be present, it determines the contents of the message + as well as which fields will be present.\",\n \"type\": \"string\",\n \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"description\": - \"Basic details about a caption track, such as its language and name.\",\n - \ \"id\": \"CaptionSnippet\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n \"type\": - \"object\",\n \"properties\": {\n \"blocked\": {\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"allowed\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of region codes + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n + \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n + \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n + \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n + \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n + \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n + \ \"superChatEvent\",\n \"superStickerEvent\"\n ]\n + \ },\n \"superStickerDetails\": {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n + \ \"description\": \"Details about the Super Sticker event, this is + only set if the type is 'superStickerEvent'.\"\n },\n \"memberMilestoneChatDetails\": + {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": + \"Details about the Member Milestone Chat event, this is only set if the type + is 'memberMilestoneChatEvent'.\"\n },\n \"messageRetractedDetails\": + {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"displayMessage\": + {\n \"type\": \"string\",\n \"description\": \"Contains + a string that can be displayed to the user. If this field is not present the + message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT + are silent.\"\n },\n \"messageDeletedDetails\": {\n \"$ref\": + \"LiveChatMessageDeletedDetails\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LiveChatMessageSnippet\"\n },\n \"ActivityListResponse\": + {\n \"properties\": {\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"pageInfo\": {\n \"description\": \"General + pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"Activity\"\n }\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#activityListResponse\"\n + \ }\n },\n \"id\": \"ActivityListResponse\",\n \"type\": + \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": {\n \"description\": + \"DEPRECATED Region restriction of the video.\",\n \"properties\": {\n + \ \"allowed\": {\n \"description\": \"A list of region codes that identify countries where the video is viewable. If this property is present and a country is not listed in its value, then the video is blocked from appearing in that country. If this property is present and contains an empty list, the - video is blocked in all countries.\",\n \"type\": \"array\"\n }\n - \ },\n \"description\": \"DEPRECATED Region restriction of the video.\"\n - \ },\n \"VideoStatus\": {\n \"id\": \"VideoStatus\",\n \"description\": - \"Basic details about a video category, such as its localized title. Next - Id: 18\",\n \"type\": \"object\",\n \"properties\": {\n \"rejectionReason\": - {\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ],\n \"description\": - \"This value explains why YouTube rejected an uploaded video. This property - is only present if the uploadStatus property indicates that the upload was - rejected.\"\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\"\n },\n \"publicStatsViewable\": {\n \"type\": - \"boolean\",\n \"description\": \"This value indicates if the extended - video statistics on the watch page can be viewed by everyone. Note that the - view count, likes, etc will still be visible if this is disabled. @mutable - youtube.videos.insert youtube.videos.update\"\n },\n \"license\": - {\n \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"uploadStatus\": {\n \"enumDescriptions\": [\n - \ \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"type\": - \"string\",\n \"description\": \"The status of the uploaded video.\",\n - \ \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ]\n },\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The video's privacy status.\"\n },\n \"publishAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the video - is scheduled to publish. It can be set only if the privacy status of the video - is private..\",\n \"format\": \"date-time\"\n },\n \"embeddable\": - {\n \"description\": \"This value indicates if the video can be embedded - on another website. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n },\n \"failureReason\": {\n - \ \"type\": \"string\",\n \"description\": \"This value explains - why a video failed to upload. This property is only present if the uploadStatus - property indicates that the upload failed.\",\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ],\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ]\n }\n }\n },\n \"VideoAbuseReportReason\": - {\n \"id\": \"VideoAbuseReportReason\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#videoAbuseReportReason\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID of this abuse report reason.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\"\n },\n \"ResourceId\": - {\n \"id\": \"ResourceId\",\n \"description\": \"A resource id is - a generic reference that points to another YouTube resource.\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"The type of the API resource.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a video. This property - is only present if the resourceId.kind value is youtube#video.\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a channel. - This property is only present if the resourceId.kind value is youtube#channel.\",\n - \ \"type\": \"string\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"properties\": {\n \"giftMembershipsLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the level of the gift - memberships purchased by the user. The Level names are defined by the YouTube - channel offering the Membership. In some situations this field isn't filled.\"\n - \ },\n \"giftMembershipsCount\": {\n \"type\": \"integer\",\n - \ \"description\": \"The number of gift memberships purchased by the - user.\",\n \"format\": \"int32\"\n }\n }\n },\n \"VideoCategorySnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a video category, such as its localized title.\",\n \"properties\": {\n - \ \"assignable\": {\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"description\": - \"The YouTube channel that created the video category.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - video category's title.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"VideoCategorySnippet\"\n },\n \"ActivityContentDetailsLike\": - {\n \"id\": \"ActivityContentDetailsLike\",\n \"type\": \"object\",\n - \ \"description\": \"Information about a resource that received a positive - (like) rating.\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the rated resource.\"\n }\n }\n },\n - \ \"MemberListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Member\"\n - \ },\n \"description\": \"A list of members that match the - request criteria.\",\n \"type\": \"array\"\n },\n \"kind\": - {\n \"default\": \"youtube#memberListResponse\",\n \"type\": + video is blocked in all countries.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n },\n \"blocked\": + {\n \"description\": \"A list of region codes that identify countries + where the video is blocked. If this property is present and a country is not + listed in its value, then the video is viewable in that country. If this property + is present and contains an empty list, the video is viewable in all countries.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n }\n }\n },\n \"id\": \"VideoContentDetailsRegionRestriction\",\n + \ \"type\": \"object\"\n },\n \"ChannelSectionLocalization\": {\n + \ \"description\": \"ChannelSection localization setting\",\n \"id\": + \"ChannelSectionLocalization\",\n \"type\": \"object\",\n \"properties\": + {\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The localized strings for channel section's title.\"\n }\n }\n + \ },\n \"LocalizedString\": {\n \"properties\": {\n \"value\": + {\n \"type\": \"string\"\n },\n \"language\": {\n \"type\": + \"string\"\n }\n },\n \"id\": \"LocalizedString\",\n \"type\": + \"object\"\n },\n \"PlaylistListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"PlaylistListResponse\",\n \"properties\": {\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"items\": + {\n \"description\": \"A list of playlists that match the request + criteria\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"Playlist\"\n }\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#playlistListResponse\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n }\n }\n },\n \"ChannelSettings\": + {\n \"description\": \"Branding properties for the channel view.\",\n + \ \"properties\": {\n \"trackingAnalyticsAccountId\": {\n \"type\": + \"string\",\n \"description\": \"The ID for a Google Analytics account + to track and measure traffic to the channels.\"\n },\n \"defaultTab\": + {\n \"type\": \"string\",\n \"description\": \"Which content + tab users should see when viewing the channel.\"\n },\n \"unsubscribedTrailer\": + {\n \"type\": \"string\",\n \"description\": \"The trailer + of the channel, for users that are not subscribers.\"\n },\n \"showBrowseView\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the tab to browse the videos should be displayed.\"\n },\n \"featuredChannelsUrls\": + {\n \"description\": \"The list of featured channels.\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n + \ },\n \"moderateComments\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether user-submitted comments left on the channel + page need to be approved by the channel owner to be publicly visible.\"\n + \ },\n \"description\": {\n \"description\": \"Specifies + the channel description.\",\n \"type\": \"string\"\n },\n + \ \"showRelatedChannels\": {\n \"type\": \"boolean\",\n \"description\": + \"Whether related channels should be proposed.\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\"\n },\n \"profileColor\": {\n + \ \"type\": \"string\",\n \"description\": \"A prominent + color that can be rendered on this channel page.\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"Specifies + the channel title.\"\n },\n \"featuredChannelsTitle\": {\n \"description\": + \"Title for the featured channels tab.\",\n \"type\": \"string\"\n + \ },\n \"keywords\": {\n \"type\": \"string\",\n \"description\": + \"Lists keywords associated with the channel, comma-separated.\"\n },\n + \ \"country\": {\n \"type\": \"string\",\n \"description\": + \"The country of the channel.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ChannelSettings\"\n },\n \"PageInfo\": {\n \"type\": + \"object\",\n \"id\": \"PageInfo\",\n \"properties\": {\n \"resultsPerPage\": + {\n \"type\": \"integer\",\n \"format\": \"int32\",\n \"description\": + \"The number of results included in the API response.\"\n },\n \"totalResults\": + {\n \"format\": \"int32\",\n \"description\": \"The total + number of results in the result set.\",\n \"type\": \"integer\"\n + \ }\n },\n \"description\": \"Paging details for lists of + resources, including total number of items available and number of resources + returned in a single page.\"\n },\n \"LiveBroadcast\": {\n \"properties\": + {\n \"id\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the broadcast.\",\n \"type\": \"string\"\n },\n \"status\": + {\n \"$ref\": \"LiveBroadcastStatus\",\n \"description\": + \"The status object contains information about the event's status.\"\n },\n + \ \"contentDetails\": {\n \"$ref\": \"LiveBroadcastContentDetails\",\n + \ \"description\": \"The contentDetails object contains information + about the event's video content, such as whether the content can be shown + in an embedded video player or if it will be archived and therefore available + for viewing after the event has concluded.\"\n },\n \"statistics\": + {\n \"$ref\": \"LiveBroadcastStatistics\",\n \"description\": + \"The statistics object contains info about the event's current stats. These + include concurrent viewers and total chat count. Statistics can change (in + either direction) during the lifetime of an event. Statistics are only returned + while the event is live.\"\n },\n \"kind\": {\n \"type\": \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"MemberListResponse\"\n },\n \"ChannelListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"default\": \"youtube#channelListResponse\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"items\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Channel\"\n }\n }\n },\n \"id\": \"ChannelListResponse\"\n - \ },\n \"Thumbnail\": {\n \"id\": \"Thumbnail\",\n \"properties\": - {\n \"width\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"(Optional) Width of the thumbnail - image.\"\n },\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The thumbnail image's URL.\"\n },\n \"height\": - {\n \"format\": \"uint32\",\n \"description\": \"(Optional) - Height of the thumbnail image.\",\n \"type\": \"integer\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A thumbnail - is an image representing a YouTube resource.\"\n },\n \"PropertyValue\": - {\n \"id\": \"PropertyValue\",\n \"type\": \"object\",\n \"description\": - \"A pair Property / Value.\",\n \"properties\": {\n \"property\": - {\n \"type\": \"string\",\n \"description\": \"A property.\"\n - \ },\n \"value\": {\n \"description\": \"The property's - value.\",\n \"type\": \"string\"\n }\n }\n },\n \"ChannelSectionSnippet\": - {\n \"description\": \"Basic details about a channel section, including - title, style and position.\",\n \"id\": \"ChannelSectionSnippet\",\n - \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the channel section.\"\n },\n \"style\": + this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n \"default\": + \"youtube#liveBroadcast\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"snippet\": {\n \"$ref\": \"LiveBroadcastSnippet\",\n \"description\": + \"The snippet object contains basic details about the event, including its + title, description, start time, and end time.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveBroadcast\",\n \"description\": \"A + *liveBroadcast* resource represents an event that will be streamed, via live + video, on YouTube.\"\n },\n \"WatchSettings\": {\n \"description\": + \"Branding properties for the watch. All deprecated.\",\n \"id\": \"WatchSettings\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"textColor\": + {\n \"type\": \"string\",\n \"description\": \"The background + color for the video watch page's branded area.\"\n },\n \"featuredPlaylistId\": + {\n \"type\": \"string\",\n \"description\": \"An ID that + uniquely identifies a playlist that displays next to the video player.\"\n + \ },\n \"backgroundColor\": {\n \"description\": \"The + text color for the video watch page's branded area.\",\n \"type\": + \"string\"\n }\n }\n },\n \"LiveBroadcastContentDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"mesh\": + {\n \"type\": \"string\",\n \"format\": \"byte\",\n \"description\": + \"The mesh for projecting the video if projection is mesh. The mesh value + must be a UTF-8 string containing the base-64 encoding of 3D mesh data that + follows the Spherical Video V2 RFC specification for an mshp box, excluding + the box size and type but including the following four reserved zero bytes + for the version and flags.\"\n },\n \"closedCaptionsType\": {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"description\": \"The - style of the channel section.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel section's title for - multiple_playlists and multiple_channels.\"\n },\n \"localized\": - {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": - \"Localized title, read-only.\"\n },\n \"position\": {\n \"description\": - \"The position of the channel section in the channel.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel section's default - title and description.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"description\": \"The - type of the channel section.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"memberMonth\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\"\n },\n \"userComment\": - {\n \"description\": \"The comment added by the member to this Member - Milestone Chat. This field is empty for messages without a comment from the - member.\",\n \"type\": \"string\"\n },\n \"memberLevelName\": - {\n \"description\": \"The name of the Level at which the viever - is a member. The Level names are defined by the YouTube channel offering the - Membership. In some situations this field isn't filled.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"LiveStreamContentDetails\": {\n \"properties\": {\n \"closedCaptionsIngestionUrl\": - {\n \"description\": \"The ingestion URL where the closed captions - of this stream are sent.\",\n \"type\": \"string\"\n },\n - \ \"isReusable\": {\n \"description\": \"Indicates whether - the stream is reusable, which means that it can be bound to multiple broadcasts. - It is common for broadcasters to reuse the same stream for many different - broadcasts if those broadcasts occur at different times. If you set this value - to false, then the stream will not be reusable, which means that it can only - be bound to one broadcast. Non-reusable streams differ from reusable streams - in the following ways: - A non-reusable stream can only be bound to one broadcast. - - A non-reusable stream might be deleted by an automated process after the - broadcast ends. - The liveStreams.list method does not list non-reusable streams - if you call the method and set the mine parameter to true. The only way to - use that method to retrieve the resource for a non-reusable stream is to use - the id parameter to identify the stream. \",\n \"type\": \"boolean\"\n - \ }\n },\n \"description\": \"Detailed settings of a stream.\",\n - \ \"type\": \"object\",\n \"id\": \"LiveStreamContentDetails\"\n - \ },\n \"SubscriptionSnippet\": {\n \"id\": \"SubscriptionSnippet\",\n - \ \"description\": \"Basic details about a subscription, including title, - description and thumbnails of the subscribed item.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the subscription belongs to.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the subscriber's channel.\"\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"annotations\": {\n \"required\": - [\n \"youtube.subscriptions.insert\"\n ]\n },\n - \ \"description\": \"The id object contains information about the - channel that the user subscribed to.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"publishedAt\": + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n + \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n + \ ]\n },\n \"stereoLayout\": {\n \"enum\": + [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n + \ \"topBottom\"\n ],\n \"description\": \"The + 3D stereo layout of this broadcast. This defaults to mono.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"enableAutoStart\": + {\n \"description\": \"This setting indicates whether auto start + is enabled for this broadcast. The default value for this property is false. + This setting can only be used by Events.\",\n \"type\": \"boolean\"\n + \ },\n \"enableDvr\": {\n \"type\": \"boolean\",\n \"description\": + \"This setting determines whether viewers can access DVR controls while watching + the video. DVR controls enable the viewer to control the video playback experience + by pausing, rewinding, or fast forwarding content. The default value for this + property is true. *Important:* You must set the value to true and also set + the enableArchive property's value to true if you want to make playback available + immediately after the broadcast ends.\"\n },\n \"enableAutoStop\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether auto stop is enabled for this broadcast. The default value + for this property is false. This setting can only be used by Events.\"\n },\n + \ \"enableClosedCaptions\": {\n \"type\": \"boolean\",\n \"description\": + \"This setting indicates whether HTTP POST closed captioning is enabled for + this broadcast. The ingestion URL of the closed captions is returned through + the liveStreams API. This is mutually exclusive with using the closed_captions_type + property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n + \ },\n \"latencyPreference\": {\n \"enumDescriptions\": + [\n \"\",\n \"Best for: highest quality viewer playbacks + and higher resolutions.\",\n \"Best for: near real-time interaction, + with minimal playback buffering.\",\n \"Best for: real-time interaction + Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n + \ \"description\": \"If both this and enable_low_latency are set, + they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW + should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency + omitted.\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n + \ \"normal\",\n \"low\",\n \"ultraLow\"\n + \ ],\n \"type\": \"string\"\n },\n \"projection\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The projection format of this broadcast. This defaults to rectangular.\",\n + \ \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n + \ \"360\",\n \"mesh\"\n ],\n \"type\": + \"string\"\n },\n \"boundStreamId\": {\n \"type\": + \"string\",\n \"description\": \"This value uniquely identifies the + live stream bound to the broadcast.\"\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the subscription was created.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The subscription's title.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The subscription's details.\"\n - \ }\n }\n },\n \"ImageSettings\": {\n \"description\": - \"Branding properties for images associated with the channel.\",\n \"id\": - \"ImageSettings\",\n \"properties\": {\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1280x360).\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"bannerTvLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size low resolution (854x480).\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size low resolution (1138x188).\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size medium resolution (1280x720).\"\n },\n \"bannerMobileImageUrl\": - {\n \"description\": \"Banner image. Mobile size (640x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"bannerTvHighImageUrl\": - {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n - \ \"type\": \"string\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"bannerTabletExtraHdImageUrl\": {\n \"description\": - \"Banner image. Tablet size extra high resolution (2560x424).\",\n \"type\": - \"string\"\n },\n \"bannerTvImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. TV size extra high - resolution (2120x1192).\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size medium/high resolution (960x263).\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"largeBrandedBannerImageUrl\": {\n \"description\": \"The - URL for the 854px by 70px image that appears below the video player in the - expanded video view of the video watch page.\",\n \"$ref\": \"LocalizedProperty\"\n - \ },\n \"bannerImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Desktop size (1060x175).\"\n },\n - \ \"bannerTabletImageUrl\": {\n \"description\": \"Banner image. - Tablet size (1707x283).\",\n \"type\": \"string\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"trackingImageUrl\": {\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"PlaylistItemSnippet\": - {\n \"properties\": {\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist item. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist - item is in.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the item - was added to the playlist.\"\n },\n \"videoOwnerChannelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel this video belongs to.\"\n },\n \"position\": - {\n \"description\": \"The order in which the item appears in the - playlist. The value uses a zero-based index, so the first item has a position - of 0, the second item has a position of 1, and so forth.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the user that added the item to the playlist.\"\n - \ },\n \"title\": {\n \"description\": \"The item's - title.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"$ref\": \"ResourceId\",\n \"description\": \"The id object - contains information that can be used to uniquely identify the resource that - is included in the playlist as the playlist item.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the playlist - item belongs to.\",\n \"type\": \"string\"\n },\n \"videoOwnerChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel id - for the channel this video belongs to.\"\n },\n \"description\": - {\n \"description\": \"The item's description.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - a playlist, including title, description and thumbnails. Basic details of - a YouTube Playlist item provided by the author. Next ID: 15\",\n \"id\": - \"PlaylistItemSnippet\",\n \"type\": \"object\"\n },\n \"Subscription\": - {\n \"id\": \"Subscription\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#subscription\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscription\\\".\"\n },\n \"snippet\": - {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains basic statistics - about the subscription.\",\n \"$ref\": \"SubscriptionContentDetails\"\n - \ },\n \"subscriberSnippet\": {\n \"description\": \"The - subscriberSnippet object contains basic details about the subscriber.\",\n - \ \"$ref\": \"SubscriptionSubscriberSnippet\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the subscription.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"A *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"properties\": {\n \"banType\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"permanent\",\n \"temporary\"\n - \ ],\n \"description\": \"The type of ban.\"\n },\n - \ \"banDurationSeconds\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The duration of the ban. This property - is only present if the banType is temporary.\"\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"The details of the user that was banned.\"\n }\n }\n },\n - \ \"Playlist\": {\n \"description\": \"A *playlist* resource represents - a YouTube playlist. A playlist is a collection of videos that can be viewed - sequentially and shared with other users. A playlist can contain up to 200 - videos, and YouTube does not limit the number of playlists that each user - creates. By default, playlists are publicly visible to other users, but playlists - can be public or private. YouTube also uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n - \ \"id\": \"Playlist\",\n \"properties\": {\n \"player\": - {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": \"The - player object contains information that you would use to play the playlist - in an embedded player.\"\n },\n \"etag\": {\n \"description\": + date and time that the live stream referenced by boundStreamId was last updated.\",\n + \ \"type\": \"string\"\n },\n \"monitorStream\": {\n + \ \"description\": \"The monitorStream object contains information + about the monitor stream, which the broadcaster can use to review the event + content before the broadcast stream is shown publicly.\",\n \"$ref\": + \"MonitorStreamInfo\"\n },\n \"recordFromStart\": {\n \"description\": + \"Automatically start recording after the event goes live. The default value + for this property is true. *Important:* You must also set the enableDvr property's + value to true if you want the playback to be available immediately after the + broadcast ends. If you set this property's value to true but do not also set + the enableDvr property to true, there may be a delay of around one day before + the archived video will be available for playback.\",\n \"type\": + \"boolean\"\n },\n \"enableContentEncryption\": {\n \"type\": + \"boolean\",\n \"description\": \"This setting indicates whether + YouTube should enable content encryption for the broadcast.\"\n },\n + \ \"startWithSlate\": {\n \"description\": \"This setting indicates + whether the broadcast should automatically begin with an in-stream slate when + you update the broadcast's status to live. After updating the status, you + then need to send a liveCuepoints.insert request that sets the cuepoint's + eventState to end to remove the in-stream slate and make your broadcast stream + visible to viewers.\",\n \"type\": \"boolean\"\n },\n \"enableEmbed\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether the broadcast video can be played in an embedded player. + If you choose to archive the video (using the enableArchive property), this + setting will also apply to the archived video.\"\n },\n \"enableLowLatency\": + {\n \"description\": \"Indicates whether this broadcast has low latency + enabled.\",\n \"type\": \"boolean\"\n }\n },\n \"description\": + \"Detailed settings of a broadcast.\",\n \"id\": \"LiveBroadcastContentDetails\"\n + \ },\n \"LiveChatMembershipGiftingDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveChatMembershipGiftingDetails\",\n \"properties\": + {\n \"giftMembershipsLevelName\": {\n \"type\": \"string\",\n + \ \"description\": \"The name of the level of the gift memberships + purchased by the user. The Level names are defined by the YouTube channel + offering the Membership. In some situations this field isn't filled.\"\n },\n + \ \"giftMembershipsCount\": {\n \"format\": \"int32\",\n \"description\": + \"The number of gift memberships purchased by the user.\",\n \"type\": + \"integer\"\n }\n }\n },\n \"LiveStreamContentDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveStreamContentDetails\",\n + \ \"description\": \"Detailed settings of a stream.\",\n \"properties\": + {\n \"isReusable\": {\n \"type\": \"boolean\",\n \"description\": + \"Indicates whether the stream is reusable, which means that it can be bound + to multiple broadcasts. It is common for broadcasters to reuse the same stream + for many different broadcasts if those broadcasts occur at different times. + If you set this value to false, then the stream will not be reusable, which + means that it can only be bound to one broadcast. Non-reusable streams differ + from reusable streams in the following ways: - A non-reusable stream can only + be bound to one broadcast. - A non-reusable stream might be deleted by an + automated process after the broadcast ends. - The liveStreams.list method + does not list non-reusable streams if you call the method and set the mine + parameter to true. The only way to use that method to retrieve the resource + for a non-reusable stream is to use the id parameter to identify the stream. + \"\n },\n \"closedCaptionsIngestionUrl\": {\n \"description\": + \"The ingestion URL where the closed captions of this stream are sent.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"ChannelListResponse\": + {\n \"properties\": {\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"Channel\"\n },\n \"type\": \"array\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#channelListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistContentDetails\",\n \"description\": \"The contentDetails - object contains information like video count.\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"description\": \"Localizations - for different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"PlaylistLocalization\"\n }\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlist\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the playlist.\",\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains status information for the playlist.\",\n \"$ref\": - \"PlaylistStatus\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"LiveBroadcastStatistics\": {\n \"properties\": {\n \"concurrentViewers\": + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": + \"ChannelListResponse\",\n \"type\": \"object\"\n },\n \"VideoContentDetails\": + {\n \"id\": \"VideoContentDetails\",\n \"properties\": {\n \"projection\": + {\n \"description\": \"Specifies the projection format of the video.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"rectangular\",\n + \ \"360\"\n ],\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ]\n },\n \"regionRestriction\": + {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": + \"The regionRestriction object contains information about the countries where + a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed + property or the contentDetails.regionRestriction.blocked property.\"\n },\n + \ \"contentRating\": {\n \"description\": \"Specifies the ratings + that the video received under various rating schemes.\",\n \"$ref\": + \"ContentRating\"\n },\n \"dimension\": {\n \"description\": + \"The value of dimension indicates whether the video is available in 3D or + in 2D.\",\n \"type\": \"string\"\n },\n \"hasCustomThumbnail\": + {\n \"description\": \"Indicates whether the video uploader has provided + a custom thumbnail image for the video. This property is only visible to the + video uploader.\",\n \"type\": \"boolean\"\n },\n \"duration\": + {\n \"type\": \"string\",\n \"description\": \"The length + of the video. The tag value is an ISO 8601 duration in the format PT#M#S, + in which the letters PT indicate that the value specifies a period of time, + and the letters M and S refer to length in minutes and seconds, respectively. + The # characters preceding the M and S letters are both integers that specify + the number of minutes (or seconds) of the video. For example, a value of PT15M51S + indicates that the video is 15 minutes and 51 seconds long.\"\n },\n + \ \"definition\": {\n \"type\": \"string\",\n \"description\": + \"The value of definition indicates whether the video is available in high + definition or only in standard definition.\",\n \"enumDescriptions\": + [\n \"sd\",\n \"hd\"\n ],\n \"enum\": + [\n \"sd\",\n \"hd\"\n ]\n },\n \"caption\": + {\n \"enum\": [\n \"true\",\n \"false\"\n ],\n + \ \"description\": \"The value of captions indicates whether the video + has captions or not.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ]\n },\n \"countryRestriction\": + {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The + countryRestriction object contains information about the countries where a + video is (or is not) viewable.\"\n },\n \"licensedContent\": + {\n \"type\": \"boolean\",\n \"description\": \"The value + of is_license_content indicates whether the video is licensed content.\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Details + about the content of a YouTube Video.\"\n },\n \"InvideoTiming\": {\n + \ \"id\": \"InvideoTiming\",\n \"properties\": {\n \"offsetMs\": {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n },\n - \ \"totalChatCount\": {\n \"type\": \"string\",\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\",\n - \ \"format\": \"uint64\"\n }\n },\n \"description\": - \"Statistics about the live broadcast. These represent a snapshot of the values - at the time of the request. Statistics are only returned for live broadcasts.\",\n - \ \"id\": \"LiveBroadcastStatistics\",\n \"type\": \"object\"\n },\n - \ \"VideoSuggestionsTagSuggestion\": {\n \"properties\": {\n \"categoryRestricts\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A set of video categories for which the tag is - relevant. You can use this information to display appropriate tag suggestions - based on the video category that the video uploader associates with the video. - By default, tag suggestions are relevant for all categories if there are no - restricts defined for the keyword.\",\n \"type\": \"array\"\n },\n - \ \"tag\": {\n \"type\": \"string\",\n \"description\": - \"The keyword tag suggested for the video.\"\n }\n },\n \"id\": - \"VideoSuggestionsTagSuggestion\",\n \"description\": \"A single tag - suggestion with it's relevance information.\",\n \"type\": \"object\"\n - \ },\n \"PlaylistItemContentDetails\": {\n \"id\": \"PlaylistItemContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"videoPublishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the video was published - to YouTube.\"\n },\n \"note\": {\n \"type\": \"string\",\n - \ \"description\": \"A user-generated note for this item.\"\n },\n - \ \"endAt\": {\n \"description\": \"The time, measured in seconds - from the start of the video, when the video should stop playing. (The playlist - owner can specify the times when the video should start and stop playing when - the video is played in the context of the playlist.) By default, assume that - the video.endTime is the end of the video.\",\n \"type\": \"string\"\n - \ },\n \"startAt\": {\n \"description\": \"The time, - measured in seconds from the start of the video, when the video should start - playing. (The playlist owner can specify the times when the video should start - and stop playing when the video is played in the context of the playlist.) - The default value is 0.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - a video. To retrieve the video resource, set the id query parameter to this - value in your API request.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"PlaylistItemStatus\": {\n \"properties\": {\n - \ \"privacyStatus\": {\n \"type\": \"string\",\n \"description\": - \"This resource's privacy status.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"id\": \"PlaylistItemStatus\",\n \"type\": \"object\",\n - \ \"description\": \"Information about the playlist item's privacy status.\"\n - \ },\n \"ChannelToStoreLinkDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelToStoreLinkDetails\",\n \"properties\": {\n \"storeUrl\": - {\n \"type\": \"string\",\n \"description\": \"Landing page - of the store.\"\n },\n \"storeName\": {\n \"type\": - \"string\",\n \"description\": \"Name of the store.\"\n },\n - \ \"merchantId\": {\n \"description\": \"Google Merchant Center - id of the store.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Information specific - to a store on a merchandising platform linked to a YouTube channel.\"\n },\n - \ \"ChannelAuditDetails\": {\n \"description\": \"The auditDetails - object encapsulates channel data that is relevant for YouTube Partners during - the audit process.\",\n \"id\": \"ChannelAuditDetails\",\n \"properties\": - {\n \"contentIdClaimsGoodStanding\": {\n \"description\": - \"Whether or not the channel has any unresolved claims.\",\n \"type\": - \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether or - not the channel respects the community guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveBroadcastStatus\": {\n \"properties\": - {\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"lifeCycleStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n + \"Defines the time at which the promotion will appear. Depending on the value + of type the value of the offsetMs field will represent a time offset from + the start or from the end of the video, expressed in milliseconds.\"\n },\n + \ \"durationMs\": {\n \"type\": \"string\",\n \"description\": + \"Defines the duration in milliseconds for which the promotion should be displayed. + If missing, the client should use the default.\",\n \"format\": \"uint64\"\n + \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"Describes a timing type. If the value is offsetFromStart, then the offsetMs + field represents an offset from the start of the video. If the value is offsetFromEnd, + then the offsetMs field represents an offset from the end of the video.\",\n + \ \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n + \ ]\n }\n },\n \"description\": \"Describes a temporal + position of a visual widget inside a video.\",\n \"type\": \"object\"\n + \ },\n \"ChannelSnippet\": {\n \"id\": \"ChannelSnippet\",\n \"description\": + \"Basic details about a channel, including title, description and thumbnails.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"description\": + {\n \"description\": \"The description of the channel.\",\n \"type\": + \"string\"\n },\n \"customUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The custom url of the channel.\"\n },\n + \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": + \"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. When displaying thumbnails + in your application, make sure that your code uses the image URLs exactly + as they are returned in API responses. For example, your application should + not use the http domain instead of the https domain in a URL returned in an + API response. Beginning in July 2018, channel thumbnail URLs will only be + available in the https domain, which is how the URLs appear in API responses. + After that time, you might see broken images in your application if it tries + to load YouTube images from the http domain. Thumbnail images might be empty + for newly created channels and might take up to one day to populate.\"\n },\n + \ \"title\": {\n \"type\": \"string\",\n \"description\": + \"The channel's title.\"\n },\n \"localized\": {\n \"description\": + \"Localized title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n + \ },\n \"country\": {\n \"description\": \"The country + of the channel.\",\n \"type\": \"string\"\n },\n \"publishedAt\": + {\n \"description\": \"The date and time that the channel was created.\",\n + \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n + \ \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": + \"The language of the channel's default title and description.\"\n }\n + \ }\n },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"id\": + \"LiveChatMemberMilestoneChatDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"memberLevelName\": {\n \"description\": \"The name of + the Level at which the viever is a member. The Level names are defined by + the YouTube channel offering the Membership. In some situations this field + isn't filled.\",\n \"type\": \"string\"\n },\n \"memberMonth\": + {\n \"description\": \"The total amount of months (rounded up) the + viewer has been a member that granted them this Member Milestone Chat. This + is the same number of months as is being displayed to YouTube users.\",\n + \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n + \ \"userComment\": {\n \"type\": \"string\",\n \"description\": + \"The comment added by the member to this Member Milestone Chat. This field + is empty for messages without a comment from the member.\"\n }\n }\n + \ },\n \"LiveBroadcastStatus\": {\n \"id\": \"LiveBroadcastStatus\",\n + \ \"type\": \"object\",\n \"description\": \"Live broadcast state.\",\n + \ \"properties\": {\n \"recordingStatus\": {\n \"description\": + \"The broadcast's recording status.\",\n \"enumDescriptions\": [\n + \ \"No value or the value is unknown.\",\n \"The recording + has not yet been started.\",\n \"The recording is currently on.\",\n + \ \"The recording is completed, and cannot be started again.\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n + \ \"notRecording\",\n \"recording\",\n \"recorded\"\n + \ ]\n },\n \"madeForKids\": {\n \"description\": + \"Whether the broadcast is made for kids or not, decided by YouTube instead + of the creator. This field is read only.\",\n \"type\": \"boolean\"\n + \ },\n \"liveBroadcastPriority\": {\n \"enumDescriptions\": + [\n \"\",\n \"Low priority broadcast: for low view count + HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: + for regular HoAs and broadcasts.\",\n \"High priority broadcast: + for high profile HoAs, like PixelCorp ones.\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n + \ \"low\",\n \"normal\",\n \"high\"\n ],\n + \ \"description\": \"Priority of the live broadcast event (internal + state).\"\n },\n \"privacyStatus\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"The broadcast's + privacy status. Note that the broadcast represents exactly one YouTube video, + so the privacy settings are identical to those supported for videos. In addition, + you can set this field by modifying the broadcast resource or by setting the + privacyStatus field of the corresponding video resource.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"selfDeclaredMadeForKids\": {\n \"description\": \"This + field will be set to True if the creator declares the broadcast to be kids + only: go/live-cw-work.\",\n \"type\": \"boolean\"\n },\n \"lifeCycleStatus\": + {\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n + \ \"ready\",\n \"testing\",\n \"live\",\n + \ \"complete\",\n \"revoked\",\n \"testStarting\",\n + \ \"liveStarting\"\n ],\n \"type\": \"string\",\n \ \"description\": \"The broadcast's status. The status can be updated using the API's liveBroadcasts.transition method.\",\n \"enumDescriptions\": [\n \"No value or the value is unknown.\",\n \"Incomplete @@ -12030,433 +9414,3047 @@ interactions: recording; this means the \\\"clock\\\" is running\",\n \"The broadcast is finished.\",\n \"This broadcast was removed by admin action\",\n \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ]\n },\n \"madeForKids\": - {\n \"description\": \"Whether the broadcast is made for kids or - not, decided by YouTube instead of the creator. This field is read only.\",\n - \ \"type\": \"boolean\"\n },\n \"liveBroadcastPriority\": - {\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Priority of - the live broadcast event (internal state).\",\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ]\n },\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - privacy status. Note that the broadcast represents exactly one YouTube video, - so the privacy settings are identical to those supported for videos. In addition, - you can set this field by modifying the broadcast resource or by setting the - privacyStatus field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n },\n - \ \"recordingStatus\": {\n \"enumDescriptions\": [\n \"No - value or the value is unknown.\",\n \"The recording has not yet - been started.\",\n \"The recording is currently on.\",\n \"The - recording is completed, and cannot be started again.\"\n ],\n \"description\": - \"The broadcast's recording status.\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveBroadcastStatus\",\n \"type\": \"object\",\n \"description\": - \"Live broadcast state.\"\n },\n \"ChannelLocalization\": {\n \"id\": - \"ChannelLocalization\",\n \"description\": \"Channel localization setting\",\n - \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for channel's description.\"\n - \ },\n \"title\": {\n \"description\": \"The localized - strings for channel's title.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"Comment\": {\n \"description\": - \"A *comment* represents a single YouTube comment.\",\n \"id\": \"Comment\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": + into LIVE has been requested\"\n ]\n }\n }\n },\n + \ \"CaptionListResponse\": {\n \"properties\": {\n \"kind\": {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#comment\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#comment\"\n },\n \"id\": {\n + Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#captionListResponse\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"Caption\"\n },\n + \ \"description\": \"A list of captions that match the request criteria.\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"CaptionListResponse\",\n \"type\": \"object\"\n },\n + \ \"ChannelLocalization\": {\n \"description\": \"Channel localization + setting\",\n \"type\": \"object\",\n \"id\": \"ChannelLocalization\",\n + \ \"properties\": {\n \"title\": {\n \"description\": + \"The localized strings for channel's title.\",\n \"type\": \"string\"\n + \ },\n \"description\": {\n \"description\": \"The localized + strings for channel's description.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"PlaylistPlayer\": {\n \"id\": \"PlaylistPlayer\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"embedHtml\": + {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e + tag that embeds a player that will play the playlist.\"\n }\n }\n + \ },\n \"I18nRegion\": {\n \"type\": \"object\",\n \"description\": + \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n + \ \"id\": \"I18nRegion\",\n \"properties\": {\n \"id\": {\n \ \"description\": \"The ID that YouTube uses to uniquely identify - the comment.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the comment.\",\n \"$ref\": \"CommentSnippet\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoProjectDetails\": - {\n \"id\": \"VideoProjectDetails\",\n \"description\": \"DEPRECATED. - b/157517979: This part was never populated after it was added. However, it - sees non-zero traffic because there is generated client code in the wild that - refers to it [1]. We keep this field and do NOT remove it because otherwise - V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"properties\": {},\n \"type\": \"object\"\n },\n \"Channel\": - {\n \"id\": \"Channel\",\n \"properties\": {\n \"localizations\": - {\n \"description\": \"Localizations for different languages\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"type\": \"object\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ChannelContentDetails\",\n \"description\": - \"The contentDetails object encapsulates information about the channel's content.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"status\": {\n \"$ref\": - \"ChannelStatus\",\n \"description\": \"The status object encapsulates - information about the privacy status of the channel.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the channel, such as its title, description, and thumbnail images.\",\n - \ \"$ref\": \"ChannelSnippet\"\n },\n \"topicDetails\": - {\n \"$ref\": \"ChannelTopicDetails\",\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the channel.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object encapsulates statistics for the channel.\",\n \"$ref\": - \"ChannelStatistics\"\n },\n \"conversionPings\": {\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n - \ },\n \"auditDetails\": {\n \"description\": \"The - auditionDetails object encapsulates channel data that is relevant for YouTube - Partners during the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n - \ },\n \"brandingSettings\": {\n \"$ref\": \"ChannelBrandingSettings\",\n - \ \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\"\n },\n \"contentOwnerDetails\": - {\n \"$ref\": \"ChannelContentOwnerDetails\",\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\"\n },\n \"kind\": - {\n \"default\": \"youtube#channel\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channel\\\".\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel.\"\n }\n },\n \"description\": - \"A *channel* resource contains information about a YouTube channel.\",\n - \ \"type\": \"object\"\n },\n \"VideoTopicDetails\": {\n \"id\": - \"VideoTopicDetails\",\n \"type\": \"object\",\n \"description\": - \"Freebase topic information related to the video.\",\n \"properties\": - {\n \"topicIds\": {\n \"description\": \"A list of Freebase - topic IDs that are centrally associated with the video. These are topics that - are centrally featured in the video, and it can be said that the video is - mainly about each of these. You can retrieve information about each topic - using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"relevantTopicIds\": {\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"topicCategories\": {\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\"\n }\n }\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatModeratorListResponse\": - {\n \"properties\": {\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + the i18n region.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": + \"The snippet object contains basic details about the i18n region, such as + region code and human-readable name.\"\n },\n \"etag\": {\n + \ \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegion\"\n + \ }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": {\n + \ \"properties\": {\n \"playlistId\": {\n \"description\": + \"The value that YouTube uses to uniquely identify the playlist.\",\n \"type\": + \"string\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information about + the resource that was added to the playlist.\"\n },\n \"playlistItemId\": + {\n \"type\": \"string\",\n \"description\": \"ID of the + item within the playlist.\"\n }\n },\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n + \ \"type\": \"object\",\n \"description\": \"Information about a + new playlist item.\"\n },\n \"I18nLanguageSnippet\": {\n \"id\": + \"I18nLanguageSnippet\",\n \"type\": \"object\",\n \"properties\": + {\n \"name\": {\n \"description\": \"The human-readable name + of the language in the language itself.\",\n \"type\": \"string\"\n + \ },\n \"hl\": {\n \"description\": \"A short BCP-47 + code that uniquely identifies a language.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Basic details about an i18n + language, such as language code and human-readable name.\"\n },\n \"VideoSuggestions\": + {\n \"properties\": {\n \"editorSuggestions\": {\n \"items\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n + \ \"Picture brightness levels seem off and could be corrected.\",\n + \ \"The video appears shaky and could be stabilized.\",\n \"Margins + (mattes) detected around the picture could be cropped.\",\n \"The + audio track appears silent and could be swapped with a better quality one.\"\n + \ ],\n \"enum\": [\n \"videoAutoLevels\",\n + \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n + \ ]\n },\n \"description\": \"A list of video + editing operations that might improve the video quality or playback experience + of the uploaded video.\",\n \"type\": \"array\"\n },\n \"tagSuggestions\": + {\n \"type\": \"array\",\n \"description\": \"A list of + keyword tags that could be added to the video's metadata to increase the likelihood + that users will locate your video when searching or browsing on YouTube.\",\n + \ \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n + \ }\n },\n \"processingHints\": {\n \"description\": + \"A list of suggestions that may improve YouTube's ability to process the + video.\",\n \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": + [\n \"The MP4 file is not streamable, this will slow down the + processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably + a better quality version of the video exists. The video has wide screen aspect + ratio, but is not an HD video.\",\n \"Uploaded video is spherical + video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded + video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n + \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n + \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n + \ ]\n }\n },\n \"processingErrors\": {\n + \ \"description\": \"A list of errors that will prevent YouTube from + successfully processing the uploaded video video. These errors indicate that, + regardless of the video's current processing status, eventually, that status + will almost certainly be failed.\",\n \"type\": \"array\",\n \"items\": + {\n \"enum\": [\n \"audioFile\",\n \"imageFile\",\n + \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n + \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n + \ ],\n \"enumDescriptions\": [\n \"File + contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., + a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file.\",\n \"Document + or text file (e.g., MS Word document).\",\n \"An archive file + (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout + type.\"\n ],\n \"type\": \"string\"\n }\n },\n + \ \"processingWarnings\": {\n \"type\": \"array\",\n \"description\": + \"A list of reasons why YouTube may have difficulty transcoding the uploaded + video or that might result in an erroneous transcoding. These warnings are + generated before YouTube actually processes the uploaded video file. In addition, + they identify issues that are unlikely to cause the video processing to fail + but that might cause problems such as sync issues, video artifacts, or a missing + audio track.\",\n \"items\": {\n \"enum\": [\n \"unknownContainer\",\n + \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n + \ \"inconsistentResolution\",\n \"hasEditlist\",\n + \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n + \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n + \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n + \ \"problematicHdrLookupTable\"\n ],\n \"enumDescriptions\": + [\n \"Unrecognized file format, transcoding is likely to fail.\",\n + \ \"Unrecognized video codec, transcoding is likely to fail.\",\n + \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n + \ \"Conflicting container and stream resolutions.\",\n \"Edit + lists are not currently supported.\",\n \"Video codec that is + known to cause problems was used.\",\n \"Audio codec that is + known to cause problems was used.\",\n \"Unsupported VR video + stereo mode.\",\n \"Unsupported spherical video projection type.\",\n + \ \"Unsupported HDR pixel format.\",\n \"Unspecified + HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n + \ ],\n \"type\": \"string\"\n }\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"VideoSuggestions\",\n + \ \"description\": \"Specifies suggestions on how to improve video content, + including encoding hints, tag suggestions, and editor suggestions.\"\n },\n + \ \"SuperChatEvent\": {\n \"type\": \"object\",\n \"properties\": + {\n \"snippet\": {\n \"description\": \"The `snippet` object + contains basic details about the Super Chat event.\",\n \"$ref\": + \"SuperChatEventSnippet\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of moderators that match the request criteria.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorListResponse\"\n - \ },\n \"LocalizedProperty\": {\n \"id\": \"LocalizedProperty\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"default\": + resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n + \ \"default\": \"youtube#superChatEvent\",\n \"type\": \"string\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube assigns to uniquely identify the Super Chat event.\"\n + \ }\n },\n \"id\": \"SuperChatEvent\",\n \"description\": + \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube + channel.\"\n },\n \"PlaylistItemSnippet\": {\n \"type\": \"object\",\n + \ \"description\": \"Basic details about a playlist, including title, + description and thumbnails. Basic details of a YouTube Playlist item provided + by the author. Next ID: 15\",\n \"id\": \"PlaylistItemSnippet\",\n \"properties\": + {\n \"position\": {\n \"type\": \"integer\",\n \"description\": + \"The order in which the item appears in the playlist. The value uses a zero-based + index, so the first item has a position of 0, the second item has a position + of 1, and so forth.\",\n \"format\": \"uint32\"\n },\n \"playlistId\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n + \ \"youtube.playlistItems.update\"\n ]\n },\n + \ \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify thGe playlist that the playlist item is + in.\"\n },\n \"videoOwnerChannelTitle\": {\n \"type\": + \"string\",\n \"description\": \"Channel title for the channel this + video belongs to.\"\n },\n \"resourceId\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.playlistItems.insert\",\n + \ \"youtube.playlistItems.update\"\n ]\n },\n + \ \"$ref\": \"ResourceId\",\n \"description\": \"The id object + contains information that can be used to uniquely identify the resource that + is included in the playlist as the playlist item.\"\n },\n \"publishedAt\": + {\n \"description\": \"The date and time that the item was added + to the playlist.\",\n \"format\": \"date-time\",\n \"type\": + \"string\"\n },\n \"description\": {\n \"description\": + \"The item's description.\",\n \"type\": \"string\"\n },\n + \ \"channelId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the user that added the item to the playlist.\",\n + \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"The item's title.\"\n },\n + \ \"videoOwnerChannelId\": {\n \"type\": \"string\",\n \"description\": + \"Channel id for the channel this video belongs to.\"\n },\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel that the playlist item belongs to.\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A + map of thumbnail images associated with the playlist item. 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.\"\n }\n + \ }\n },\n \"ActivityContentDetailsChannelItem\": {\n \"type\": + \"object\",\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"description\": + \"Details about a resource which was added to a channel.\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + that was added to the channel.\"\n }\n }\n },\n \"ActivityContentDetailsRecommendation\": + {\n \"description\": \"Information that identifies the recommended resource.\",\n + \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsRecommendation\",\n + \ \"properties\": {\n \"seedResourceId\": {\n \"description\": + \"The seedResourceId object contains information about the resource that caused + the recommendation.\",\n \"$ref\": \"ResourceId\"\n },\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId + object contains information that identifies the recommended resource.\"\n + \ },\n \"reason\": {\n \"type\": \"string\",\n \"description\": + \"The reason that the resource is recommended to the user.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"reasonUnspecified\",\n + \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n + \ ]\n }\n }\n },\n \"ResourceId\": {\n \"id\": + \"ResourceId\",\n \"type\": \"object\",\n \"description\": \"A resource + id is a generic reference that points to another YouTube resource.\",\n \"properties\": + {\n \"playlistId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the referred resource, if that resource is a playlist. + This property is only present if the resourceId.kind value is youtube#playlist.\",\n + \ \"type\": \"string\"\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a video. This property is only present if the resourceId.kind + value is youtube#video.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"description\": \"The type of the API resource.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a channel. This property is only present if the resourceId.kind + value is youtube#channel.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"VideoSnippet\": {\n \"id\": \"VideoSnippet\",\n + \ \"description\": \"Basic details about a video, including title, description, + uploader, thumbnails and category.\",\n \"properties\": {\n \"thumbnails\": + {\n \"description\": \"A map of thumbnail images associated with + the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"description\": + {\n \"description\": \"The video's description. @mutable youtube.videos.insert + youtube.videos.update\",\n \"type\": \"string\"\n },\n \"publishedAt\": + {\n \"description\": \"The date and time when the video was uploaded.\",\n + \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n + \ \"title\": {\n \"description\": \"The video's title. @mutable + youtube.videos.insert youtube.videos.update\",\n \"type\": \"string\"\n + \ },\n \"localized\": {\n \"$ref\": \"VideoLocalization\",\n + \ \"description\": \"Localized snippet selected with the hl parameter. + If no such localization exists, this field is populated with the default snippet. + (Read-only)\"\n },\n \"liveBroadcastContent\": {\n \"enum\": + [\n \"none\",\n \"upcoming\",\n \"live\",\n + \ \"completed\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been completed.\"\n + \ ],\n \"description\": \"Indicates if the video is an upcoming/active + live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active + live broadcast.\",\n \"type\": \"string\"\n },\n \"tags\": + {\n \"type\": \"array\",\n \"description\": \"A list of + keyword tags associated with the video. Tags may contain spaces.\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"categoryId\": + {\n \"description\": \"The YouTube video category associated with + the video.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The language + of the videos's default snippet.\"\n },\n \"channelTitle\": + {\n \"description\": \"Channel title for the channel that the video + belongs to.\",\n \"type\": \"string\"\n },\n \"defaultAudioLanguage\": + {\n \"description\": \"The default_audio_language property specifies + the language spoken in the video's default audio track.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel that the video was uploaded to.\"\n }\n },\n \"type\": + \"object\"\n },\n \"LiveStream\": {\n \"type\": \"object\",\n \"properties\": + {\n \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n + \ \"description\": \"The content_details object contains information + about the stream, including the closed captions ingestion URL.\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the stream, including its channel, title, and description.\",\n + \ \"$ref\": \"LiveStreamSnippet\"\n },\n \"status\": + {\n \"description\": \"The status object contains information about + live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n },\n + \ \"cdn\": {\n \"description\": \"The cdn object defines the + live stream's content delivery network (CDN) settings. These settings provide + details about the manner in which you stream your content to YouTube.\",\n + \ \"$ref\": \"CdnSettings\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveStream\",\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube assigns to uniquely identify the stream.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.update\"\n + \ ]\n }\n }\n },\n \"id\": \"LiveStream\",\n + \ \"description\": \"A live stream describes a live ingestion point.\"\n + \ },\n \"TestItem\": {\n \"type\": \"object\",\n \"properties\": + {\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n + \ },\n \"id\": {\n \"type\": \"string\"\n },\n + \ \"featuredPart\": {\n \"type\": \"boolean\"\n },\n + \ \"gaia\": {\n \"format\": \"int64\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"TestItem\"\n },\n \"LocalizedProperty\": + {\n \"type\": \"object\",\n \"properties\": {\n \"default\": {\n \"type\": \"string\"\n },\n \"localized\": {\n \ \"items\": {\n \"$ref\": \"LocalizedString\"\n },\n \ \"type\": \"array\"\n },\n \"defaultLanguage\": {\n - \ \"$ref\": \"LanguageTag\",\n \"description\": \"The language - of the default property.\"\n }\n }\n },\n \"ChannelSettings\": - {\n \"description\": \"Branding properties for the channel view.\",\n - \ \"id\": \"ChannelSettings\",\n \"type\": \"object\",\n \"properties\": - {\n \"moderateComments\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether user-submitted comments left on the channel page need to be approved - by the channel owner to be publicly visible.\"\n },\n \"unsubscribedTrailer\": - {\n \"type\": \"string\",\n \"description\": \"The trailer - of the channel, for users that are not subscribers.\"\n },\n \"keywords\": - {\n \"type\": \"string\",\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\"\n },\n \"featuredChannelsUrls\": - {\n \"type\": \"array\",\n \"description\": \"The list of - featured channels.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n },\n - \ \"trackingAnalyticsAccountId\": {\n \"description\": \"The - ID for a Google Analytics account to track and measure traffic to the channels.\",\n - \ \"type\": \"string\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the channel title.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the channel description.\"\n },\n - \ \"profileColor\": {\n \"description\": \"A prominent color - that can be rendered on this channel page.\",\n \"type\": \"string\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\"\n - \ },\n \"showRelatedChannels\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether related channels should be proposed.\"\n - \ },\n \"showBrowseView\": {\n \"description\": \"Whether - the tab to browse the videos should be displayed.\",\n \"type\": - \"boolean\"\n },\n \"defaultTab\": {\n \"type\": \"string\",\n - \ \"description\": \"Which content tab users should see when viewing - the channel.\"\n }\n }\n },\n \"Activity\": {\n \"description\": - \"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.\",\n - \ \"id\": \"Activity\",\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the activity, including the activity's type and group - ID.\",\n \"$ref\": \"ActivitySnippet\"\n },\n \"contentDetails\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetails\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"default\": \"youtube#activity\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ThumbnailSetResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#thumbnailSetResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of thumbnails.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThumbnailDetails\"\n }\n }\n },\n - \ \"id\": \"ThumbnailSetResponse\",\n \"type\": \"object\"\n },\n - \ \"VideoProcessingDetails\": {\n \"description\": \"Describes processing + \ \"description\": \"The language of the default property.\",\n \"$ref\": + \"LanguageTag\"\n }\n },\n \"id\": \"LocalizedProperty\"\n + \ },\n \"SubscriptionContentDetails\": {\n \"id\": \"SubscriptionContentDetails\",\n + \ \"properties\": {\n \"newItemCount\": {\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The number of new items in the subscription since its content was last read.\"\n + \ },\n \"activityType\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n + \ \"all\",\n \"uploads\"\n ],\n \"description\": + \"The type of activity this subscription is for (only uploads, everything).\"\n + \ },\n \"totalItemCount\": {\n \"type\": \"integer\",\n + \ \"format\": \"uint32\",\n \"description\": \"The approximate + number of items that the subscription points to.\"\n }\n },\n + \ \"description\": \"Details about the content to witch a subscription + refers.\",\n \"type\": \"object\"\n },\n \"LiveChatModerator\": + {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#liveChatModerator\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n + \ },\n \"snippet\": {\n \"$ref\": \"LiveChatModeratorSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the moderator.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube assigns + to uniquely identify the moderator.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"LiveChatModerator\",\n \"type\": \"object\",\n + \ \"description\": \"A *liveChatModerator* resource represents a moderator + for a YouTube live chat. A chat moderator has the ability to ban/unban users + from a chat, remove message, etc.\"\n },\n \"MembershipsLevelSnippet\": + {\n \"properties\": {\n \"levelDetails\": {\n \"$ref\": + \"LevelDetails\",\n \"description\": \"Details about the pricing + level.\"\n },\n \"creatorChannelId\": {\n \"description\": + \"The id of the channel that's offering channel memberships.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"MembershipsLevelSnippet\"\n },\n \"VideoAgeGating\": {\n \"type\": + \"object\",\n \"properties\": {\n \"videoGameRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"Video game rating, if any.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"anyone\",\n + \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n + \ ]\n },\n \"alcoholContent\": {\n \"type\": + \"boolean\",\n \"description\": \"Indicates whether or not the video + has alcoholic beverage content. Only users of legal purchasing age in a particular + country, as identified by ICAP, can view the content.\"\n },\n \"restricted\": + {\n \"type\": \"boolean\",\n \"description\": \"Age-restricted + trailers. For redband trailers and adult-rated video-games. Only users aged + 18+ can view the content. The the field is true the content is restricted + to viewers aged 18+. Otherwise The field won't be present.\"\n }\n + \ },\n \"id\": \"VideoAgeGating\"\n },\n \"LiveChatTextMessageDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatTextMessageDetails\",\n + \ \"properties\": {\n \"messageText\": {\n \"description\": + \"The user's message.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"VideoProcessingDetails\": {\n \"type\": \"object\",\n \"id\": + \"VideoProcessingDetails\",\n \"description\": \"Describes processing status and progress and availability of some other Video resource parts.\",\n \ \"properties\": {\n \"editorSuggestionsAvailability\": {\n \"description\": \"This value indicates whether video editing suggestions, which might improve video quality or the playback experience, are available for the video. You can retrieve these suggestions by requesting the suggestions part in your videos.list() request.\",\n \"type\": \"string\"\n },\n \"processingFailureReason\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ],\n \"description\": \"The reason - that YouTube failed to process the video. This property will only have a value - if the processingStatus property's value is failed.\",\n \"type\": - \"string\"\n },\n \"thumbnailsAvailability\": {\n \"description\": + {\n \"description\": \"The reason that YouTube failed to process + the video. This property will only have a value if the processingStatus property's + value is failed.\",\n \"enum\": [\n \"uploadFailed\",\n + \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"tagSuggestionsAvailability\": {\n \"type\": + \"string\",\n \"description\": \"This value indicates whether keyword + (tag) suggestions are available for the video. Tags can be added to a video's + metadata to make it easier for other users to find the video. You can retrieve + these suggestions by requesting the suggestions part in your videos.list() + request.\"\n },\n \"thumbnailsAvailability\": {\n \"description\": \"This value indicates whether thumbnail images have been generated for the - video.\",\n \"type\": \"string\"\n },\n \"processingProgress\": - {\n \"description\": \"The processingProgress object contains information - about the progress YouTube has made in processing the video. The values are - really only relevant if the video's processing status is processing.\",\n - \ \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n },\n - \ \"processingStatus\": {\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ],\n \"description\": \"The video's processing status. - This value indicates whether YouTube was able to process the video or if the - video is still being processed.\",\n \"type\": \"string\",\n \"enumDescriptions\": + video.\",\n \"type\": \"string\"\n },\n \"processingStatus\": + {\n \"enum\": [\n \"processing\",\n \"succeeded\",\n + \ \"failed\",\n \"terminated\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"fileDetailsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether file - details are available for the uploaded video. You can retrieve a video's file - details by requesting the fileDetails part in your videos.list() request.\"\n - \ },\n \"processingIssuesAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether the - video processing engine has generated suggestions that might improve YouTube's - ability to process the the video, warnings that explain video processing problems, - or errors that cause video processing problems. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"tagSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether keyword (tag) suggestions - are available for the video. Tags can be added to a video's metadata to make - it easier for other users to find the video. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetails\"\n - \ },\n \"Cuepoint\": {\n \"id\": \"Cuepoint\",\n \"properties\": - {\n \"cueType\": {\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"insertionOffsetTimeMs\": {\n \"format\": \"int64\",\n - \ \"description\": \"The time when the cuepoint should be inserted - by offset to the broadcast actual start time.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"walltimeMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The wall clock time at which the - cuepoint should be inserted. Only one of insertion_offset_time_ms and walltime_ms - may be set at a time.\"\n },\n \"id\": {\n \"description\": - \"The identifier for cuepoint resource.\",\n \"type\": \"string\"\n - \ },\n \"durationSecs\": {\n \"description\": \"The - duration of this cuepoint.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n }\n },\n \"description\": \"Note that there - may be a 5-second end-point resolution issue. For instance, if a cuepoint - comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, - depending. This is an artifact of HLS.\",\n \"type\": \"object\"\n },\n - \ \"VideoAbuseReport\": {\n \"properties\": {\n \"reasonId\": - {\n \"type\": \"string\",\n \"description\": \"The high-level, - or primary, reason that the content is abusive. The value is an abuse report - reason ID.\"\n },\n \"comments\": {\n \"type\": \"string\",\n - \ \"description\": \"Additional comments regarding the abuse report.\"\n - \ },\n \"language\": {\n \"description\": \"The language - that the content was viewed in.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the video.\",\n \"type\": \"string\"\n },\n - \ \"secondaryReasonId\": {\n \"type\": \"string\",\n \"description\": - \"The specific, or secondary, reason that this content is abusive (if available). - The value is an abuse report reason ID that is a valid secondary reason for - the primary reason.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoAbuseReport\"\n },\n \"LiveChatMessage\": {\n \"description\": - \"A *liveChatMessage* resource represents a chat message in a YouTube Live - Chat.\",\n \"type\": \"object\",\n \"properties\": {\n \"authorDetails\": - {\n \"description\": \"The authorDetails object contains basic details - about the user that posted this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatMessage\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\"\n }\n - \ },\n \"id\": \"LiveChatMessage\"\n },\n \"LevelDetails\": - {\n \"properties\": {\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The name that should be used when - referring to this level.\"\n }\n },\n \"id\": \"LevelDetails\",\n - \ \"type\": \"object\"\n },\n \"CaptionListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#captionListResponse\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's processing status. This value indicates whether YouTube was + able to process the video or if the video is still being processed.\"\n },\n + \ \"processingIssuesAvailability\": {\n \"type\": \"string\",\n + \ \"description\": \"This value indicates whether the video processing + engine has generated suggestions that might improve YouTube's ability to process + the the video, warnings that explain video processing problems, or errors + that cause video processing problems. You can retrieve these suggestions by + requesting the suggestions part in your videos.list() request.\"\n },\n + \ \"processingProgress\": {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n + \ \"description\": \"The processingProgress object contains information + about the progress YouTube has made in processing the video. The values are + really only relevant if the video's processing status is processing.\"\n },\n + \ \"fileDetailsAvailability\": {\n \"type\": \"string\",\n + \ \"description\": \"This value indicates whether file details are + available for the uploaded video. You can retrieve a video's file details + by requesting the fileDetails part in your videos.list() request.\"\n }\n + \ }\n },\n \"ThirdPartyLink\": {\n \"description\": \"A *third + party account link* resource represents a link between a YouTube account or + a channel and an account on a third-party service.\",\n \"id\": \"ThirdPartyLink\",\n + \ \"properties\": {\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the third- party account + link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#thirdPartyLink\"\n },\n + \ \"linkingToken\": {\n \"type\": \"string\",\n \"description\": + \"The linking_token identifies a YouTube account and channel with which the + third party account is linked.\"\n },\n \"status\": {\n \"description\": + \"The status object contains information about the status of the link.\",\n + \ \"$ref\": \"ThirdPartyLinkStatus\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource\"\n }\n },\n \"type\": \"object\"\n },\n \"Caption\": + {\n \"description\": \"A *caption* resource represents a YouTube caption + track. A caption track is associated with exactly one YouTube video.\",\n + \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#caption\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": + \"CaptionSnippet\",\n \"description\": \"The snippet object contains + basic details about the caption.\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the caption track.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.update\"\n + \ ]\n },\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"Caption\"\n },\n \"VideoCategory\": + {\n \"description\": \"A *videoCategory* resource identifies a category + that has been or could be associated with uploaded videos.\",\n \"type\": + \"object\",\n \"id\": \"VideoCategory\",\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#videoCategory\\\".\",\n \"default\": + \"youtube#videoCategory\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the video category.\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of captions that match the request criteria.\",\n - \ \"items\": {\n \"$ref\": \"Caption\"\n }\n }\n - \ },\n \"id\": \"CaptionListResponse\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"id\": \"ActivityContentDetailsFavorite\",\n \"description\": - \"Information about a video that was marked as a favorite video.\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatBanSnippet\": {\n \"id\": \"LiveChatBanSnippet\",\n - \ \"properties\": {\n \"banDurationSeconds\": {\n \"format\": - \"uint64\",\n \"description\": \"The duration of a ban, only filled - if the ban has type TEMPORARY.\",\n \"type\": \"string\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The chat this ban is pertinent to.\"\n },\n \"type\": {\n - \ \"enumDescriptions\": [\n \"An invalid ban type.\",\n - \ \"A permanent ban.\",\n \"A temporary ban.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"description\": - \"The type of ban.\"\n },\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelProfileDetails\": {\n \"properties\": {\n \"channelId\": - {\n \"description\": \"The YouTube channel ID.\",\n \"type\": - \"string\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n },\n - \ \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channels's avatar URL.\"\n },\n \"channelUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channel's URL.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelProfileDetails\"\n - \ },\n \"AbuseReport\": {\n \"properties\": {\n \"abuseTypes\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"AbuseType\"\n }\n },\n \"subject\": {\n \"$ref\": - \"Entity\"\n },\n \"description\": {\n \"type\": \"string\"\n - \ },\n \"relatedEntities\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"RelatedEntity\"\n }\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"AbuseReport\"\n - \ },\n \"SearchResult\": {\n \"id\": \"SearchResult\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"SearchResultSnippet\",\n \"description\": \"The snippet object - contains basic details about a search result, such as its title or description. - For example, if the search result is a video, then the title will be the video's - title and the description will be the video's description.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#searchResult\"\n - \ },\n \"id\": {\n \"description\": \"The id object - contains information that can be used to uniquely identify the resource that - matches the search request.\",\n \"$ref\": \"ResourceId\"\n },\n + \"string\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the video category, including + its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n }\n }\n + \ },\n \"VideoCategorySnippet\": {\n \"properties\": {\n \"channelId\": + {\n \"type\": \"string\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n + \ \"description\": \"The YouTube channel that created the video category.\"\n + \ },\n \"assignable\": {\n \"type\": \"boolean\"\n },\n + \ \"title\": {\n \"description\": \"The video category's title.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoCategorySnippet\",\n + \ \"type\": \"object\",\n \"description\": \"Basic details about + a video category, such as its localized title.\"\n },\n \"Entity\": + {\n \"type\": \"object\",\n \"id\": \"Entity\",\n \"properties\": + {\n \"typeId\": {\n \"type\": \"string\"\n },\n \"url\": + {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": + \"string\"\n }\n }\n },\n \"VideoFileDetailsAudioStream\": + {\n \"type\": \"object\",\n \"properties\": {\n \"bitrateBps\": + {\n \"format\": \"uint64\",\n \"description\": \"The audio + stream's bitrate, in bits per second.\",\n \"type\": \"string\"\n + \ },\n \"codec\": {\n \"description\": \"The audio codec + that the stream uses.\",\n \"type\": \"string\"\n },\n \"vendor\": + {\n \"type\": \"string\",\n \"description\": \"A value that + uniquely identifies a video vendor. Typically, the value is a four-letter + vendor code.\"\n },\n \"channelCount\": {\n \"description\": + \"The number of audio channels that the stream contains.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n }\n },\n \"description\": + \"Information about an audio stream.\",\n \"id\": \"VideoFileDetailsAudioStream\"\n + \ },\n \"SearchListResponse\": {\n \"properties\": {\n \"items\": + {\n \"type\": \"array\",\n \"description\": \"Pagination + information for token pagination.\",\n \"items\": {\n \"$ref\": + \"SearchResult\"\n }\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A search result contains information about a YouTube video, channel, or - playlist that matches the search parameters specified in an API request. While - a search result points to a uniquely identifiable resource, like a video, - it does not have its own persistent data.\"\n },\n \"CommentThreadListResponse\": - {\n \"id\": \"CommentThreadListResponse\",\n \"properties\": {\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#commentThreadListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"CommentThread\"\n },\n \"description\": - \"A list of comment threads that match the request criteria.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LanguageTag\": {\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LanguageTag\"\n },\n \"ActivityListResponse\": {\n \"id\": - \"ActivityListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Activity\"\n },\n \"type\": \"array\"\n },\n \"kind\": - {\n \"default\": \"youtube#activityListResponse\",\n \"type\": + \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"I18nRegionListResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\",\n - \ \"items\": {\n \"$ref\": \"I18nRegion\"\n },\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nRegionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"I18nRegionListResponse\",\n - \ \"type\": \"object\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n - \ },\n \"items\": {\n \"description\": \"A list of valid - abuse reasons that are used with `video.ReportAbuse`.\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportReason\"\n },\n \"type\": - \"array\"\n },\n \"visitorId\": {\n \"description\": - \"The `visitorId` identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n }\n },\n \"title\": - \"YouTube Data API v3\"\n}\n" + this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n + \ \"default\": \"youtube#searchListResponse\"\n },\n \"regionCode\": + {\n \"type\": \"string\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"SearchListResponse\"\n + \ },\n \"VideoTopicDetails\": {\n \"id\": \"VideoTopicDetails\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"relevantTopicIds\": + {\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"Similar to topic_id, + except that these topics are merely relevant to the video. These are topics + that may be mentioned in, or appear in the video. You can retrieve information + about each topic using Freebase Topic API.\"\n },\n \"topicCategories\": + {\n \"type\": \"array\",\n \"description\": \"A list of + Wikipedia URLs that provide a high-level description of the video's content.\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n },\n + \ \"topicIds\": {\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"A list of Freebase topic IDs that are centrally associated with the video. + These are topics that are centrally featured in the video, and it can be said + that the video is mainly about each of these. You can retrieve information + about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase + Topic API.\"\n }\n },\n \"description\": \"Freebase topic + information related to the video.\"\n },\n \"ChannelToStoreLinkDetails\": + {\n \"id\": \"ChannelToStoreLinkDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"storeName\": {\n \"description\": + \"Name of the store.\",\n \"type\": \"string\"\n },\n \"storeUrl\": + {\n \"type\": \"string\",\n \"description\": \"Landing page + of the store.\"\n },\n \"merchantId\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"Google + Merchant Center id of the store.\"\n }\n },\n \"description\": + \"Information specific to a store on a merchandising platform linked to a + YouTube channel.\"\n },\n \"Activity\": {\n \"type\": \"object\",\n + \ \"id\": \"Activity\",\n \"properties\": {\n \"etag\": {\n + \ \"description\": \"Etag of this resource\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#activity\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the activity.\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the activity, including the activity's type and group + ID.\",\n \"$ref\": \"ActivitySnippet\"\n },\n \"contentDetails\": + {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetails\"\n }\n + \ },\n \"description\": \"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.\"\n },\n \"LiveStreamSnippet\": + {\n \"type\": \"object\",\n \"properties\": {\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel that is transmitting the stream.\"\n + \ },\n \"description\": {\n \"description\": \"The stream's + description. The value cannot be longer than 10000 characters.\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time that the stream was created.\",\n \"type\": \"string\",\n + \ \"format\": \"date-time\"\n },\n \"isDefaultStream\": + {\n \"type\": \"boolean\"\n },\n \"title\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"description\": \"The stream's title. The value must be between + 1 and 128 characters long.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"LiveStreamSnippet\"\n },\n \"LiveBroadcastStatistics\": + {\n \"properties\": {\n \"concurrentViewers\": {\n \"description\": + \"The number of viewers currently watching the broadcast. The property and + its value will be present if the broadcast has current viewers and the broadcast + owner has not hidden the viewcount for the video. Note that YouTube stops + tracking the number of concurrent viewers for a broadcast when the broadcast + ends. So, this property would not identify the number of viewers watching + an archived video of a live broadcast that already ended.\",\n \"type\": + \"string\",\n \"format\": \"uint64\"\n },\n \"totalChatCount\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The total number of live chat messages currently on the broadcast. The property + and its value will be present if the broadcast is public, has the live chat + feature enabled, and has at least one message. Note that this field will not + be filled after the broadcast ends. So this property would not identify the + number of chat messages for an archived video of a completed live broadcast.\"\n + \ }\n },\n \"description\": \"Statistics about the live broadcast. + These represent a snapshot of the values at the time of the request. Statistics + are only returned for live broadcasts.\",\n \"id\": \"LiveBroadcastStatistics\",\n + \ \"type\": \"object\"\n },\n \"CaptionSnippet\": {\n \"description\": + \"Basic details about a caption track, such as its language and name.\",\n + \ \"id\": \"CaptionSnippet\",\n \"properties\": {\n \"trackKind\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"standard\",\n + \ \"ASR\",\n \"forced\"\n ],\n \"description\": + \"The caption track's type.\",\n \"type\": \"string\"\n },\n + \ \"isDraft\": {\n \"type\": \"boolean\",\n \"description\": + \"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. @mutable youtube.captions.insert + youtube.captions.update\"\n },\n \"isCC\": {\n \"description\": + \"Indicates whether the track contains closed captions for the deaf and hard + of hearing. The default value is false.\",\n \"type\": \"boolean\"\n + \ },\n \"videoId\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n },\n + \ \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the video associated with the caption track. + @mutable youtube.captions.insert\"\n },\n \"name\": {\n \"description\": + \"The name of the caption track. The name is intended to be visible to the + user as an option during playback.\",\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n }\n },\n \"failureReason\": {\n \"description\": + \"The reason that YouTube failed to process the caption track. This property + is only present if the state property's value is failed.\",\n \"type\": + \"string\",\n \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n + \ \"processingFailed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"language\": {\n \"type\": \"string\",\n \"description\": + \"The language of the caption track. The property value is a BCP-47 language + tag.\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n }\n },\n \"isLarge\": {\n \"type\": + \"boolean\",\n \"description\": \"Indicates whether the caption track + uses large text for the vision-impaired. The default value is false.\"\n },\n + \ \"audioTrackType\": {\n \"type\": \"string\",\n \"description\": + \"The type of audio track associated with the caption track.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"unknown\",\n \"primary\",\n + \ \"commentary\",\n \"descriptive\"\n ]\n },\n + \ \"status\": {\n \"enum\": [\n \"serving\",\n \"syncing\",\n + \ \"failed\"\n ],\n \"type\": \"string\",\n \"description\": + \"The caption track's status.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"isAutoSynced\": + {\n \"description\": \"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.\",\n \"type\": + \"boolean\"\n },\n \"isEasyReader\": {\n \"description\": + \"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.\",\n + \ \"type\": \"boolean\"\n },\n \"lastUpdated\": {\n + \ \"description\": \"The date and time when the caption track was + last updated.\",\n \"format\": \"date-time\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LevelDetails\": + {\n \"type\": \"object\",\n \"id\": \"LevelDetails\",\n \"properties\": + {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": + \"The name that should be used when referring to this level.\"\n }\n + \ }\n }\n },\n \"kind\": \"discovery#restDescription\",\n \"discoveryVersion\": + \"v1\",\n \"title\": \"YouTube Data API v3\",\n \"batchPath\": \"batch\",\n + \ \"ownerName\": \"Google\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n + \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n + \ },\n \"protocol\": \"rest\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": + {\n \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": + \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": + {\n \"description\": \"See, edit, and permanently delete your YouTube + videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": + {\n \"description\": \"View and manage your assets and associated + content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": + {\n \"description\": \"Manage your YouTube videos\"\n },\n + \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": + {\n \"description\": \"View private information of your YouTube channel + relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube\": + {\n \"description\": \"Manage your YouTube account\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": + {\n \"description\": \"See a list of your current active channel + members, their current level, and when they became a member\"\n }\n + \ }\n }\n },\n \"resources\": {\n \"liveChatMessages\": {\n \"methods\": + {\n \"list\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"parameterOrder\": [\n \"liveChatId\",\n + \ \"part\"\n ],\n \"id\": \"youtube.liveChatMessages.list\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"httpMethod\": + \"GET\",\n \"parameters\": {\n \"liveChatId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true,\n \"description\": \"The id of the live chat for which + comments should be returned.\"\n },\n \"profileImageSize\": + {\n \"type\": \"integer\",\n \"description\": \"Specifies + the size of the profile image that should be returned for each user.\",\n + \ \"location\": \"query\",\n \"minimum\": \"16\",\n + \ \"format\": \"uint32\",\n \"maximum\": \"720\"\n + \ },\n \"part\": {\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"The *part* parameter specifies the liveChatComment + resource parts that the API response will include. Supported values are id + and snippet.\",\n \"required\": true\n },\n \"hl\": + {\n \"description\": \"Specifies the localization language in + which the system messages should be returned.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n + \ },\n \"maxResults\": {\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"maximum\": \"2000\",\n + \ \"format\": \"uint32\",\n \"default\": \"500\",\n + \ \"minimum\": \"200\",\n \"type\": \"integer\",\n + \ \"location\": \"query\"\n }\n }\n },\n + \ \"insert\": {\n \"description\": \"Inserts a new resource + into this collection.\",\n \"request\": {\n \"$ref\": + \"LiveChatMessage\"\n },\n \"httpMethod\": \"POST\",\n \"flatPath\": + \"youtube/v3/liveChat/messages\",\n \"response\": {\n \"$ref\": + \"LiveChatMessage\"\n },\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"required\": + true,\n \"repeated\": true\n }\n },\n \"id\": + \"youtube.liveChatMessages.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ]\n },\n + \ \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"id\": \"youtube.liveChatMessages.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"description\": \"Deletes + a chat message.\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"httpMethod\": \"DELETE\"\n }\n }\n },\n \"search\": + {\n \"methods\": {\n \"list\": {\n \"response\": {\n + \ \"$ref\": \"SearchListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/search\",\n \"id\": \"youtube.search.list\",\n + \ \"flatPath\": \"youtube/v3/search\",\n \"parameters\": + {\n \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"eventType\": + {\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n + \ \"upcoming\",\n \"live\",\n \"completed\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been + completed.\"\n ],\n \"location\": \"query\",\n \"description\": + \"Filter on the livestream status of the videos.\"\n },\n \"videoCategoryId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Filter on videos in a specific category.\"\n + \ },\n \"forContentOwner\": {\n \"type\": + \"boolean\",\n \"location\": \"query\",\n \"description\": + \"Search owned by a content owner.\"\n },\n \"relevanceLanguage\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return results relevant to this language.\"\n + \ },\n \"videoDefinition\": {\n \"type\": + \"string\",\n \"enum\": [\n \"any\",\n \"standard\",\n + \ \"high\"\n ],\n \"location\": \"query\",\n + \ \"description\": \"Filter on the definition of the videos.\",\n + \ \"enumDescriptions\": [\n \"Return all videos, + regardless of their resolution.\",\n \"Only retrieve videos + in standard definition.\",\n \"Only retrieve HD videos.\"\n + \ ]\n },\n \"topicId\": {\n \"location\": + \"query\",\n \"description\": \"Restrict results to a particular + topic.\",\n \"type\": \"string\"\n },\n \"order\": + {\n \"enum\": [\n \"searchSortUnspecified\",\n + \ \"date\",\n \"rating\",\n \"viewCount\",\n + \ \"relevance\",\n \"title\",\n \"videoCount\"\n + \ ],\n \"default\": \"relevance\",\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Resources are sorted in reverse chronological order based + on the date they were created.\",\n \"Resources are sorted + from highest to lowest rating.\",\n \"Resources are sorted + from highest to lowest number of views.\",\n \"Resources are + sorted based on their relevance to the search query. This is the default value + for this parameter.\",\n \"Resources are sorted alphabetically + by title.\",\n \"Channels are sorted in descending order of + their number of uploaded videos.\"\n ],\n \"type\": + \"string\",\n \"description\": \"Sort order of the results.\"\n + \ },\n \"q\": {\n \"description\": \"Textual + search terms to match.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"forDeveloper\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Restrict the search to only retrieve videos + uploaded using the project id of the authenticated user.\"\n },\n + \ \"videoSyndicated\": {\n \"description\": \"Filter + on syndicated videos.\",\n \"type\": \"string\",\n \"enum\": + [\n \"videoSyndicatedUnspecified\",\n \"any\",\n + \ \"true\"\n ],\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Return + all videos, syndicated or not.\",\n \"Only retrieve syndicated + videos.\"\n ]\n },\n \"videoType\": {\n + \ \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos.\",\n \"Only + retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n + \ ],\n \"type\": \"string\",\n \"enum\": + [\n \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n + \ \"episode\"\n ],\n \"description\": + \"Filter on videos of a specific type.\"\n },\n \"channelId\": + {\n \"description\": \"Filter on resources belonging to this + channelId.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"type\": + \"integer\",\n \"default\": \"5\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"minimum\": \"0\",\n \"maximum\": + \"50\",\n \"location\": \"query\",\n \"format\": + \"uint32\"\n },\n \"videoLicense\": {\n \"description\": + \"Filter on the license of the videos.\",\n \"enum\": [\n \"any\",\n + \ \"youtube\",\n \"creativeCommon\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n + \ \"Return all videos, regardless of which license they have, + that match the query parameters.\",\n \"Only return videos + that have the standard YouTube license.\",\n \"Only return + videos that have a Creative Commons license. Users can reuse videos with this + license in other videos that they create. Learn more.\"\n ],\n + \ \"location\": \"query\"\n },\n \"forMine\": + {\n \"location\": \"query\",\n \"description\": + \"Search for the private videos of the authenticated user.\",\n \"type\": + \"boolean\"\n },\n \"regionCode\": {\n \"type\": + \"string\",\n \"description\": \"Display the content as seen + by viewers in this country.\",\n \"location\": \"query\"\n },\n + \ \"safeSearch\": {\n \"default\": \"moderate\",\n + \ \"enum\": [\n \"safeSearchSettingUnspecified\",\n + \ \"none\",\n \"moderate\",\n \"strict\"\n + \ ],\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"YouTube will not filter the search + result set.\",\n \"YouTube will filter some content from search + results and, at the least, will filter content that is restricted in your + locale. Based on their content, search results could be removed from search + results or demoted in search results. This is the default parameter value.\",\n + \ \"YouTube will try to exclude all restricted content from + the search result set. Based on their content, search results could be removed + from search results or demoted in search results.\"\n ],\n \"description\": + \"Indicates whether the search results should include restricted content as + well as standard content.\",\n \"type\": \"string\"\n },\n + \ \"videoDuration\": {\n \"type\": \"string\",\n \"description\": + \"Filter on the duration of the videos.\",\n \"enum\": [\n \"videoDurationUnspecified\",\n + \ \"any\",\n \"short\",\n \"medium\",\n + \ \"long\"\n ],\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Do + not filter video search results based on their duration. This is the default + value.\",\n \"Only include videos that are less than four minutes + long.\",\n \"Only include videos that are between four and + 20 minutes long (inclusive).\",\n \"Only include videos longer + than 20 minutes.\"\n ]\n },\n \"publishedAfter\": + {\n \"format\": \"google-datetime\",\n \"description\": + \"Filter on resources published after this date.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"channelType\": + {\n \"location\": \"query\",\n \"description\": + \"Add a filter on the channel search.\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all channels.\",\n \"Only + retrieve shows.\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n + \ \"show\"\n ]\n },\n \"videoDimension\": + {\n \"enumDescriptions\": [\n \"Include both 3D + and non-3D videos in returned results. This is the default value.\",\n \"Restrict + search results to exclude 3D videos.\",\n \"Restrict search + results to only include 3D videos.\"\n ],\n \"description\": + \"Filter on 3d videos.\",\n \"enum\": [\n \"any\",\n + \ \"2d\",\n \"3d\"\n ],\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"locationRadius\": + {\n \"type\": \"string\",\n \"description\": \"Filter + on distance from the location (specified above).\",\n \"location\": + \"query\"\n },\n \"relatedToVideoId\": {\n \"type\": + \"string\",\n \"description\": \"Search related to a resource.\",\n + \ \"location\": \"query\"\n },\n \"videoEmbeddable\": + {\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n + \ \"any\",\n \"true\"\n ],\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Filter on embeddable videos.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"Return all videos, embeddable or + not.\",\n \"Only retrieve embeddable videos.\"\n ]\n + \ },\n \"location\": {\n \"description\": + \"Filter on location of the video\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"videoCaption\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"videoCaptionUnspecified\",\n + \ \"any\",\n \"closedCaption\",\n \"none\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"Do not filter results based on caption availability.\",\n + \ \"Only include videos that have captions.\",\n \"Only + include videos that do not have captions.\"\n ],\n \"description\": + \"Filter on the presence of captions on the videos.\"\n },\n \"publishedBefore\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"format\": \"google-datetime\",\n \"description\": + \"Filter on resources published before this date.\"\n },\n \"type\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Restrict results to a particular set of resource + types from One Platform.\",\n \"repeated\": true\n }\n + \ },\n \"httpMethod\": \"GET\",\n \"description\": + \"Retrieves a list of search resources\"\n }\n }\n },\n \"watermarks\": + {\n \"methods\": {\n \"unset\": {\n \"parameterOrder\": + [\n \"channelId\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n },\n \"httpMethod\": + \"POST\",\n \"id\": \"youtube.watermarks.unset\",\n \"path\": + \"youtube/v3/watermarks/unset\",\n \"description\": \"Allows removal + of channel watermark.\"\n },\n \"set\": {\n \"id\": + \"youtube.watermarks.set\",\n \"httpMethod\": \"POST\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"request\": {\n \"$ref\": \"InvideoBranding\"\n + \ },\n \"parameterOrder\": [\n \"channelId\"\n + \ ],\n \"supportsMediaUpload\": true,\n \"description\": + \"Allows upload of watermark image and setting it for a channel.\",\n \"mediaUpload\": + {\n \"protocols\": {\n \"simple\": {\n \"multipart\": + true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n },\n + \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n + \ \"multipart\": true\n }\n },\n \"accept\": + [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n + \ ],\n \"maxSize\": \"10485760\"\n },\n \"path\": + \"youtube/v3/watermarks/set\",\n \"flatPath\": \"youtube/v3/watermarks/set\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n }\n }\n }\n + \ }\n },\n \"channelBanners\": {\n \"methods\": {\n \"insert\": + {\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.channelBanners.insert\",\n + \ \"parameterOrder\": [],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*Note:* + This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* + parameter indicates that the request's authorization credentials identify + a YouTube CMS user who is acting on behalf of the content owner specified + in the parameter value. This parameter is intended for YouTube content partners + that own and manage many different YouTube channels. It allows content owners + to authenticate once and get access to all their video and channel data, without + having to provide authentication credentials for each individual channel. + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\",\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Unused, channel_id is currently derived from the security context of the + requestor.\"\n }\n },\n \"request\": {\n \"$ref\": + \"ChannelBannerResource\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n + \ ],\n \"mediaUpload\": {\n \"protocols\": {\n + \ \"resumable\": {\n \"multipart\": true,\n \"path\": + \"/resumable/upload/youtube/v3/channelBanners/insert\"\n },\n + \ \"simple\": {\n \"multipart\": true,\n \"path\": + \"/upload/youtube/v3/channelBanners/insert\"\n }\n },\n + \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ],\n \"maxSize\": + \"6291456\"\n },\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n + \ \"supportsMediaUpload\": true,\n \"description\": \"Inserts + a new resource into this collection.\",\n \"path\": \"youtube/v3/channelBanners/insert\",\n + \ \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n + \ }\n }\n }\n },\n \"liveChatBans\": {\n \"methods\": + {\n \"insert\": {\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"required\": true,\n + \ \"description\": \"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.\"\n }\n },\n \"id\": \"youtube.liveChatBans.insert\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"POST\",\n \"request\": {\n \"$ref\": \"LiveChatBan\"\n + \ },\n \"response\": {\n \"$ref\": \"LiveChatBan\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"path\": + \"youtube/v3/liveChat/bans\"\n },\n \"delete\": {\n \"flatPath\": + \"youtube/v3/liveChat/bans\",\n \"httpMethod\": \"DELETE\",\n \"path\": + \"youtube/v3/liveChat/bans\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.liveChatBans.delete\",\n \"description\": + \"Deletes a chat ban.\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n }\n }\n }\n },\n \"tests\": {\n + \ \"methods\": {\n \"insert\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/tests\",\n + \ \"request\": {\n \"$ref\": \"TestItem\"\n },\n + \ \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\"\n },\n \"externalChannelId\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"id\": \"youtube.tests.insert\",\n + \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/tests\",\n + \ \"description\": \"POST method.\",\n \"response\": {\n + \ \"$ref\": \"TestItem\"\n },\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n + \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": + {\n \"methods\": {\n \"updateCommentThreads\": {\n \"httpMethod\": + \"PUT\",\n \"response\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n + \ \"parameterOrder\": [],\n \"request\": {\n \"$ref\": + \"CommentThread\"\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"path\": \"youtube/v3/commentThreads\",\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"repeated\": + true,\n \"description\": \"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.\"\n }\n },\n \"description\": + \"Updates an existing resource.\"\n }\n }\n }\n + \ }\n },\n \"playlists\": {\n \"methods\": {\n \"update\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Updates an existing resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/playlists\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"youtube.playlists.update\",\n \"response\": {\n + \ \"$ref\": \"Playlist\"\n },\n \"request\": {\n + \ \"$ref\": \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\",\n + \ \"httpMethod\": \"PUT\"\n },\n \"insert\": {\n \"httpMethod\": + \"POST\",\n \"path\": \"youtube/v3/playlists\",\n \"id\": + \"youtube.playlists.insert\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n + \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"required\": + true,\n \"description\": \"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.\"\n }\n + \ },\n \"description\": \"Inserts a new resource into this + collection.\",\n \"flatPath\": \"youtube/v3/playlists\",\n \"request\": + {\n \"$ref\": \"Playlist\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/playlists\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/playlists\",\n \"response\": + {\n \"$ref\": \"PlaylistListResponse\"\n },\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.playlists.list\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n + \ \"hl\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Return content in specified language\"\n + \ },\n \"pageToken\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"type\": + \"integer\",\n \"maximum\": \"50\",\n \"minimum\": + \"0\",\n \"default\": \"5\",\n \"location\": \"query\",\n + \ \"format\": \"uint32\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"description\": \"Return + the playlists with the given IDs for Stubby or Apiary.\"\n },\n + \ \"mine\": {\n \"description\": \"Return the playlists + owned by the authenticated user.\",\n \"type\": \"boolean\",\n + \ \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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.\",\n \"required\": true\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return the playlists owned by the specified + channel ID.\"\n },\n \"onBehalfOfContentOwner\": {\n + \ \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n }\n },\n \"delete\": {\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": + \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"id\": + \"youtube.playlists.delete\",\n \"path\": \"youtube/v3/playlists\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*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.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\"\n }\n },\n \"flatPath\": + \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n }\n }\n },\n \"subscriptions\": {\n \"methods\": + {\n \"delete\": {\n \"id\": \"youtube.subscriptions.delete\",\n + \ \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Deletes a resource.\",\n \"path\": + \"youtube/v3/subscriptions\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": + \"DELETE\"\n },\n \"list\": {\n \"flatPath\": \"youtube/v3/subscriptions\",\n + \ \"path\": \"youtube/v3/subscriptions\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"parameters\": {\n \"mySubscribers\": {\n \"type\": + \"boolean\",\n \"description\": \"Return the subscribers of the + given channel owner.\",\n \"location\": \"query\"\n },\n + \ \"order\": {\n \"description\": \"The order of the + returned subscriptions\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Sort by relevance.\",\n \"Sort by order of + activity.\",\n \"Sort alphabetically.\"\n ],\n + \ \"location\": \"query\",\n \"default\": \"relevance\",\n + \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n + \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n + \ ],\n \"type\": \"string\"\n },\n \"id\": + {\n \"description\": \"Return the subscriptions with the given + IDs for Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"description\": \"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.\",\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"mine\": + {\n \"location\": \"query\",\n \"type\": \"boolean\",\n + \ \"description\": \"Flag for returning the subscriptions of the + authenticated user.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"Return + the subscriptions of the given channel owner.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"myRecentSubscribers\": + {\n \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"maxResults\": {\n \"minimum\": + \"0\",\n \"maximum\": \"50\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"default\": \"5\",\n + \ \"location\": \"query\"\n },\n \"forChannelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return the subscriptions to the subset of + these channels that the authenticated user is subscribed to.\"\n }\n + \ },\n \"id\": \"youtube.subscriptions.list\",\n \"httpMethod\": + \"GET\",\n \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n + \ }\n },\n \"insert\": {\n \"request\": {\n + \ \"$ref\": \"Subscription\"\n },\n \"httpMethod\": + \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": + true,\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"required\": true\n }\n },\n + \ \"id\": \"youtube.subscriptions.insert\",\n \"path\": \"youtube/v3/subscriptions\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"Subscription\"\n }\n }\n }\n + \ },\n \"superChatEvents\": {\n \"methods\": {\n \"list\": + {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"flatPath\": \"youtube/v3/superChatEvents\",\n \"response\": + {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"path\": + \"youtube/v3/superChatEvents\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.superChatEvents.list\",\n + \ \"parameters\": {\n \"hl\": {\n \"description\": + \"Return rendered funding amounts in specified language.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"description\": \"The + *part* parameter specifies the superChatEvent resource parts that the API + response will include. This parameter is currently not supported.\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true\n },\n \"maxResults\": {\n \"minimum\": + \"1\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n + \ \"maximum\": \"50\",\n \"type\": \"integer\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ]\n }\n }\n },\n \"commentThreads\": {\n \"methods\": + {\n \"insert\": {\n \"description\": \"Inserts a new resource + into this collection.\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"repeated\": + true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/commentThreads\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"CommentThread\"\n },\n \"request\": + {\n \"$ref\": \"CommentThread\"\n },\n \"id\": + \"youtube.commentThreads.insert\"\n },\n \"list\": {\n \"flatPath\": + \"youtube/v3/commentThreads\",\n \"response\": {\n \"$ref\": + \"CommentThreadListResponse\"\n },\n \"id\": \"youtube.commentThreads.list\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"parameters\": {\n \"pageToken\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"moderationStatus\": {\n \"description\": \"Limits + the returned comment threads to those with the specified moderation status. + Not compatible with the 'id' filter. Valid values: published, heldForReview, + likelySpam.\",\n \"default\": \"published\",\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ],\n + \ \"location\": \"query\"\n },\n \"textFormat\": + {\n \"description\": \"The requested text format for the returned + comments.\",\n \"default\": \"html\",\n \"enum\": + [\n \"textFormatUnspecified\",\n \"html\",\n + \ \"plainText\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Returns + the comments in HTML format. This is the default value.\",\n \"Returns + the comments in plain text format.\"\n ],\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"minimum\": + \"1\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"type\": \"integer\",\n \"format\": \"uint32\",\n + \ \"location\": \"query\",\n \"default\": \"20\",\n + \ \"maximum\": \"100\"\n },\n \"order\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"default\": \"time\",\n \"enumDescriptions\": + [\n \"\",\n \"Order by time.\",\n \"Order + by relevance.\"\n ],\n \"enum\": [\n \"orderUnspecified\",\n + \ \"time\",\n \"relevance\"\n ]\n + \ },\n \"searchTerms\": {\n \"type\": \"string\",\n + \ \"description\": \"Limits the returned comment threads to those + matching the specified key words. Not compatible with the 'id' filter.\",\n + \ \"location\": \"query\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"Returns + the comment threads with the given IDs for Stubby or Apiary.\",\n \"repeated\": + true,\n \"location\": \"query\"\n },\n \"channelId\": + {\n \"description\": \"Returns the comment threads for all the + channel comments (ie does not include comments left on videos).\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"allThreadsRelatedToChannelId\": + {\n \"description\": \"Returns the comment threads of all videos + of the channel and the channel comments as well.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"videoId\": + {\n \"description\": \"Returns the comment threads of the specified + video.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"description\": + \"The *part* parameter specifies a comma-separated list of one or more commentThread + resource properties that the API response will include.\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"path\": + \"youtube/v3/commentThreads\",\n \"httpMethod\": \"GET\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ]\n }\n + \ }\n },\n \"thumbnails\": {\n \"methods\": {\n \"set\": + {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n + \ \"type\": \"string\",\n \"description\": \"*Note:* + This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* + parameter indicates that the request's authorization credentials identify + a YouTube CMS user who is acting on behalf of the content owner specified + in the parameter value. This parameter is intended for YouTube content partners + that own and manage many different YouTube channels. It allows content owners + to authenticate once and get access to all their video and channel data, without + having to provide authentication credentials for each individual channel. + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\",\n \"location\": \"query\"\n + \ },\n \"videoId\": {\n \"description\": + \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"videoId\"\n ],\n + \ \"mediaUpload\": {\n \"maxSize\": \"2097152\",\n \"accept\": + [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n + \ ],\n \"protocols\": {\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n + \ \"multipart\": true\n },\n \"simple\": + {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": + true\n }\n }\n },\n \"description\": + \"As this is not an insert in a strict sense (it supports uploading/setting + of a thumbnail for multiple videos, which doesn't result in creation of a + single resource), I use a custom verb here.\",\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n + \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.thumbnails.set\",\n + \ \"supportsMediaUpload\": true,\n \"path\": \"youtube/v3/thumbnails/set\",\n + \ \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n + \ }\n }\n }\n },\n \"videos\": {\n \"methods\": + {\n \"list\": {\n \"response\": {\n \"$ref\": \"VideoListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"path\": + \"youtube/v3/videos\",\n \"id\": \"youtube.videos.list\",\n \"flatPath\": + \"youtube/v3/videos\",\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"description\": \"Return videos with the given ids.\",\n + \ \"location\": \"query\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"maxHeight\": {\n \"type\": + \"integer\",\n \"maximum\": \"8192\",\n \"format\": + \"int32\",\n \"location\": \"query\",\n \"minimum\": + \"72\"\n },\n \"videoCategoryId\": {\n \"location\": + \"query\",\n \"description\": \"Use chart that is specific to + the specified video category\",\n \"type\": \"string\",\n \"default\": + \"0\"\n },\n \"part\": {\n \"description\": + \"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.\",\n + \ \"location\": \"query\",\n \"repeated\": true,\n + \ \"required\": true,\n \"type\": \"string\"\n },\n + \ \"chart\": {\n \"enum\": [\n \"chartUnspecified\",\n + \ \"mostPopular\"\n ],\n \"type\": + \"string\",\n \"description\": \"Return the videos that are in + the specified chart.\",\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Return the most popular videos + for the specified content region and video category.\"\n ]\n + \ },\n \"maxWidth\": {\n \"minimum\": \"72\",\n + \ \"maximum\": \"8192\",\n \"format\": \"int32\",\n + \ \"location\": \"query\",\n \"type\": \"integer\",\n + \ \"description\": \"Return the player with maximum height specified + in\"\n },\n \"locale\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"regionCode\": + {\n \"description\": \"Use a chart that is specific to the specified + region\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"hl\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Stands for \\\"host language\\\". Specifies the localization language of + the metadata to be filled into snippet.localized. The field is filled with + the default metadata if there is no localization in the specified language. + The parameter value must be a language code included in the list returned + by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n },\n + \ \"myRating\": {\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"The + entity is liked.\",\n \"The entity is disliked.\"\n ],\n + \ \"description\": \"Return videos liked/disliked by the authenticated + user. Does not support RateType.RATED_TYPE_NONE.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": + {\n \"location\": \"query\",\n \"default\": \"5\",\n + \ \"description\": \"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.\",\n + \ \"format\": \"uint32\",\n \"type\": \"integer\",\n + \ \"minimum\": \"1\",\n \"maximum\": \"50\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n }\n },\n \"insert\": + {\n \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": + true\n },\n \"simple\": {\n \"multipart\": + true,\n \"path\": \"/upload/youtube/v3/videos\"\n }\n + \ },\n \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n + \ ],\n \"maxSize\": \"274877906944\"\n },\n + \ \"supportsMediaUpload\": true,\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"request\": {\n \"$ref\": \"Video\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"POST\",\n \"path\": \"youtube/v3/videos\",\n \"parameters\": + {\n \"notifySubscribers\": {\n \"default\": \"true\",\n + \ \"location\": \"query\",\n \"description\": \"Notify + the channel subscribers about the new video. As default, the notification + is enabled.\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"required\": + true\n },\n \"stabilize\": {\n \"type\": + \"boolean\",\n \"description\": \"Should stabilize be applied + to the upload.\",\n \"location\": \"query\"\n },\n + \ \"autoLevels\": {\n \"type\": \"boolean\",\n \"description\": + \"Should auto-levels be applied to the upload.\",\n \"location\": + \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.videos.insert\",\n \"response\": {\n + \ \"$ref\": \"Video\"\n }\n },\n \"update\": + {\n \"path\": \"youtube/v3/videos\",\n \"description\": + \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"description\": \"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.\",\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"request\": {\n \"$ref\": + \"Video\"\n },\n \"httpMethod\": \"PUT\",\n \"id\": + \"youtube.videos.update\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"Video\"\n + \ }\n },\n \"reportAbuse\": {\n \"httpMethod\": + \"POST\",\n \"description\": \"Report abuse for a video.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.videos.reportAbuse\",\n \"parameterOrder\": + [],\n \"path\": \"youtube/v3/videos/reportAbuse\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n + \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n + \ \"flatPath\": \"youtube/v3/videos/reportAbuse\"\n },\n \"delete\": + {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.videos.delete\",\n \"path\": + \"youtube/v3/videos\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"description\": + \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\"\n },\n + \ \"getRating\": {\n \"id\": \"youtube.videos.getRating\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"repeated\": true\n + \ }\n },\n \"description\": \"Retrieves the ratings + that the authorized user gave to a list of specified videos.\",\n \"flatPath\": + \"youtube/v3/videos/getRating\",\n \"httpMethod\": \"GET\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n + \ },\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"path\": \"youtube/v3/videos/getRating\"\n },\n \"rate\": + {\n \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ },\n \"rating\": {\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"location\": \"query\",\n + \ \"required\": true,\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Adds a like or dislike rating to a video or removes a rating from a video.\",\n + \ \"flatPath\": \"youtube/v3/videos/rate\",\n \"id\": \"youtube.videos.rate\",\n + \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"id\",\n + \ \"rating\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/videos/rate\"\n }\n + \ }\n },\n \"liveBroadcasts\": {\n \"methods\": {\n \"insert\": + {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"id\": + \"youtube.liveBroadcasts.insert\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"required\": true,\n \"type\": + \"string\",\n \"repeated\": true\n }\n },\n + \ \"description\": \"Inserts a new stream for the authenticated user.\",\n + \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"httpMethod\": + \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"delete\": {\n \"httpMethod\": + \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"Broadcast to delete.\",\n \"type\": \"string\"\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"youtube.liveBroadcasts.delete\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": + \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": + \"Delete a given broadcast.\"\n },\n \"list\": {\n \"id\": + \"youtube.liveBroadcasts.list\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"description\": + \"Retrieve the list of broadcasts associated with the given channel.\",\n + \ \"parameters\": {\n \"broadcastStatus\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all broadcasts.\",\n \"Return current + live broadcasts.\",\n \"Return broadcasts that have not yet + started.\",\n \"Return broadcasts that have already ended.\"\n + \ ],\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n + \ \"all\",\n \"active\",\n \"upcoming\",\n + \ \"completed\"\n ],\n \"location\": + \"query\",\n \"description\": \"Return broadcasts with a certain + status, e.g. active broadcasts.\"\n },\n \"mine\": {\n + \ \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n + \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"minimum\": + \"0\",\n \"type\": \"integer\",\n \"location\": + \"query\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n \"pageToken\": {\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"Return broadcasts with the given ids from + Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"broadcastType\": + {\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n + \ \"all\",\n \"event\",\n \"persistent\"\n + \ ],\n \"default\": \"event\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Return only broadcasts with the selected type.\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all broadcasts.\",\n \"Return + only scheduled event broadcasts.\",\n \"Return only persistent + broadcasts.\"\n ]\n },\n \"part\": {\n + \ \"location\": \"query\",\n \"description\": \"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, status + and statistics.\",\n \"repeated\": true,\n \"type\": + \"string\",\n \"required\": true\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n + \ },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": + [\n \"part\"\n ]\n },\n \"insertCuepoint\": + {\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"parameterOrder\": + [],\n \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n + \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"repeated\": true\n + \ },\n \"id\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Broadcast + to insert ads to, or equivalently `external_video_id` for internal use.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n }\n },\n \"description\": + \"Insert cuepoints in a broadcast\",\n \"response\": {\n \"$ref\": + \"Cuepoint\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\"\n + \ },\n \"update\": {\n \"description\": \"Updates an + existing broadcast for the authenticated user.\",\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.liveBroadcasts.update\",\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"request\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"PUT\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*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.\"\n }\n }\n + \ },\n \"bind\": {\n \"description\": \"Bind a broadcast + to a stream.\",\n \"id\": \"youtube.liveBroadcasts.bind\",\n \"parameterOrder\": + [\n \"id\",\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n + \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"streamId\": + {\n \"description\": \"Stream to bind, if not set unbind the + current one.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"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.\"\n + \ },\n \"id\": {\n \"location\": \"query\",\n + \ \"description\": \"Broadcast to bind to the stream\",\n \"type\": + \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n }\n }\n },\n \"transition\": + {\n \"id\": \"youtube.liveBroadcasts.transition\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"description\": \"Broadcast to transition.\",\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"part\": {\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"broadcastStatus\": {\n \"type\": + \"string\",\n \"enum\": [\n \"statusUnspecified\",\n + \ \"testing\",\n \"live\",\n \"complete\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"Start testing the broadcast. YouTube transmits video to + the broadcast's monitor stream. Note that you can only transition a broadcast + to the testing state if its contentDetails.monitorStream.enableMonitorStream + property is set to true.\\\",\",\n \"Return only persistent + broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting + video.\"\n ],\n \"required\": true,\n \"location\": + \"query\",\n \"description\": \"The status to which the broadcast + is going to transition.\"\n }\n },\n \"httpMethod\": + \"POST\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n + \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n + \ \"part\"\n ],\n \"description\": \"Transition + a broadcast to a given status.\"\n }\n }\n },\n \"members\": + {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n + \ \"path\": \"youtube/v3/members\",\n \"id\": \"youtube.members.list\",\n + \ \"response\": {\n \"$ref\": \"MemberListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"parameters\": {\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"maximum\": + \"1000\",\n \"location\": \"query\",\n \"minimum\": + \"0\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\"\n },\n \"hasAccessToLevel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Filter members in the results set to the + ones that have access to a level.\"\n },\n \"filterByMemberChannelId\": + {\n \"description\": \"Comma separated list of channel IDs. Only + data about members that are part of this list will be included in the response.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"The *part* parameter specifies the member + resource parts that the API response will include. Set the parameter value + to snippet.\",\n \"required\": true\n },\n \"mode\": + {\n \"enum\": [\n \"listMembersModeUnknown\",\n + \ \"updates\",\n \"all_current\"\n ],\n + \ \"type\": \"string\",\n \"default\": \"all_current\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Return + only members that joined after the first call with this mode was made.\",\n + \ \"Return all current members, from newest to oldest.\"\n ],\n + \ \"description\": \"Parameter that specifies which channel members + to return.\",\n \"location\": \"query\"\n }\n },\n + \ \"description\": \"Retrieves a list of members that match the request + criteria for a channel.\",\n \"flatPath\": \"youtube/v3/members\"\n + \ }\n }\n },\n \"channelSections\": {\n \"methods\": + {\n \"update\": {\n \"description\": \"Updates an existing + resource.\",\n \"flatPath\": \"youtube/v3/channelSections\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n + \ \"path\": \"youtube/v3/channelSections\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"parameters\": {\n \"part\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"required\": true,\n + \ \"description\": \"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.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"PUT\",\n \"id\": \"youtube.channelSections.update\"\n + \ },\n \"list\": {\n \"id\": \"youtube.channelSections.list\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"parameters\": {\n \"mine\": {\n \"description\": + \"Return the ChannelSections owned by the authenticated user.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"Return the ChannelSections owned + by the specified channel ID.\",\n \"location\": \"query\"\n },\n + \ \"hl\": {\n \"type\": \"string\",\n \"description\": + \"Return content in specified language\",\n \"location\": \"query\"\n + \ },\n \"id\": {\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"description\": \"Return + the ChannelSections with the given IDs for Stubby or Apiary.\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"required\": true,\n \"description\": \"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.\"\n }\n },\n + \ \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/channelSections\",\n \"httpMethod\": + \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/channelSections\"\n },\n \"insert\": + {\n \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"response\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"request\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"description\": \"Inserts a new + resource into this collection.\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true\n }\n },\n \"path\": \"youtube/v3/channelSections\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.channelSections.insert\",\n \"flatPath\": + \"youtube/v3/channelSections\"\n },\n \"delete\": {\n \"httpMethod\": + \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Deletes a resource.\",\n \"flatPath\": + \"youtube/v3/channelSections\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"id\": \"youtube.channelSections.delete\",\n \"path\": + \"youtube/v3/channelSections\"\n }\n }\n },\n \"playlistItems\": + {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"path\": + \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"maxResults\": + {\n \"location\": \"query\",\n \"type\": \"integer\",\n + \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"format\": \"uint32\",\n + \ \"maximum\": \"50\"\n },\n \"part\": {\n + \ \"location\": \"query\",\n \"required\": true,\n + \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"location\": \"query\"\n },\n \"videoId\": + {\n \"description\": \"Return the playlist items associated with + the given video ID.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"playlistId\": {\n \"description\": + \"Return the playlist items within the given playlist.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n + \ },\n \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n + \ },\n \"id\": \"youtube.playlistItems.list\",\n \"httpMethod\": + \"GET\",\n \"parameterOrder\": [\n \"part\"\n ]\n + \ },\n \"update\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"PUT\",\n \"id\": \"youtube.playlistItems.update\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Updates an existing resource.\",\n \"request\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"response\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"path\": + \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"part\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\",\n \"description\": \"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.\",\n \"repeated\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n }\n + \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Deletes a resource.\",\n \"id\": + \"youtube.playlistItems.delete\",\n \"parameterOrder\": [\n \"id\"\n + \ ]\n },\n \"insert\": {\n \"httpMethod\": + \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"required\": true,\n + \ \"description\": \"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.\"\n }\n + \ },\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n + \ },\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"response\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.playlistItems.insert\"\n + \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"list\": + {\n \"id\": \"youtube.channels.list\",\n \"response\": {\n + \ \"$ref\": \"ChannelListResponse\"\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"path\": + \"youtube/v3/channels\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n + \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n + \ ],\n \"parameters\": {\n \"categoryId\": {\n + \ \"type\": \"string\",\n \"description\": \"Return + the channels within the specified guide category ID.\",\n \"location\": + \"query\"\n },\n \"hl\": {\n \"type\": + \"string\",\n \"description\": \"Stands for \\\"host language\\\". + Specifies the localization language of the metadata to be filled into snippet.localized. + The field is filled with the default metadata if there is no localization + in the specified language. The parameter value must be a language code included + in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n + \ \"location\": \"query\"\n },\n \"forUsername\": + {\n \"type\": \"string\",\n \"description\": \"Return + the channel associated with a YouTube username.\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"maximum\": + \"50\",\n \"minimum\": \"0\",\n \"location\": \"query\",\n + \ \"type\": \"integer\",\n \"default\": \"5\",\n + \ \"format\": \"uint32\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"required\": true,\n \"description\": \"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.\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"managedByMe\": + {\n \"type\": \"boolean\",\n \"description\": \"Return + the channels managed by the authenticated user.\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"description\": + \"Return the channels with the specified IDs.\",\n \"location\": + \"query\"\n },\n \"mine\": {\n \"description\": + \"Return the ids of channels owned by the authenticated user.\",\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"mySubscribers\": + {\n \"location\": \"query\",\n \"description\": + \"Return the channels subscribed to the authenticated user\",\n \"type\": + \"boolean\"\n }\n },\n \"flatPath\": \"youtube/v3/channels\"\n + \ },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.channels.update\",\n \"flatPath\": + \"youtube/v3/channels\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"Channel\"\n + \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true\n }\n },\n \"request\": {\n \"$ref\": + \"Channel\"\n },\n \"path\": \"youtube/v3/channels\",\n + \ \"httpMethod\": \"PUT\",\n \"description\": \"Updates an + existing resource.\"\n }\n }\n },\n \"abuseReports\": {\n + \ \"methods\": {\n \"insert\": {\n \"parameters\": {\n + \ \"part\": {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\",\n + \ \"required\": true,\n \"repeated\": true\n }\n + \ },\n \"id\": \"youtube.abuseReports.insert\",\n \"path\": + \"youtube/v3/abuseReports\",\n \"flatPath\": \"youtube/v3/abuseReports\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": + \"AbuseReport\"\n },\n \"response\": {\n \"$ref\": + \"AbuseReport\"\n },\n \"parameterOrder\": [\n \"part\"\n + \ ]\n }\n }\n },\n \"membershipsLevels\": {\n \"methods\": + {\n \"list\": {\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"description\": \"The *part* parameter specifies the + membershipsLevel resource parts that the API response will include. Supported + values are id and snippet.\",\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Retrieves + a list of all pricing levels offered by a creator to the fans.\",\n \"id\": + \"youtube.membershipsLevels.list\",\n \"path\": \"youtube/v3/membershipsLevels\",\n + \ \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n + \ },\n \"httpMethod\": \"GET\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ]\n }\n }\n },\n \"videoAbuseReportReasons\": + {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n + \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"httpMethod\": + \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"The *part* parameter specifies the videoCategory + resource parts that the API response will include. Supported values are id + and snippet.\",\n \"required\": true\n },\n \"hl\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"default\": \"en-US\"\n }\n }\n }\n + \ }\n },\n \"activities\": {\n \"methods\": {\n \"list\": + {\n \"id\": \"youtube.activities.list\",\n \"flatPath\": + \"youtube/v3/activities\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"repeated\": true\n },\n \"publishedBefore\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"format\": \"google-datetime\"\n },\n \"mine\": + {\n \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"publishedAfter\": {\n \"location\": + \"query\",\n \"format\": \"google-datetime\",\n \"type\": + \"string\"\n },\n \"regionCode\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"maximum\": \"50\",\n \"type\": \"integer\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"minimum\": + \"0\",\n \"default\": \"5\",\n \"location\": \"query\",\n + \ \"format\": \"uint32\"\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"pageToken\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n + \ \"home\": {\n \"type\": \"boolean\",\n \"location\": + \"query\"\n }\n },\n \"path\": \"youtube/v3/activities\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ]\n }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": + {\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"parameters\": {\n \"part\": {\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API request and response will include. Supported values are linkingToken, + status, and snippet.\",\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\",\n \"repeated\": true\n + \ },\n \"externalChannelId\": {\n \"type\": + \"string\",\n \"description\": \"Channel ID to which changes + should be applied, for delegation.\",\n \"location\": \"query\"\n + \ }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"httpMethod\": \"PUT\",\n \"id\": \"youtube.thirdPartyLinks.update\",\n + \ \"description\": \"Updates an existing resource.\",\n \"response\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\",\n \"request\": {\n \"$ref\": + \"ThirdPartyLink\"\n }\n },\n \"list\": {\n \"httpMethod\": + \"GET\",\n \"parameters\": {\n \"linkingToken\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Get a third party link with the given linking token.\"\n },\n + \ \"externalChannelId\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Channel + ID to which changes should be applied, for delegation.\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API response will include. Supported values are linkingToken, status, and + snippet.\",\n \"repeated\": true\n },\n \"type\": + {\n \"type\": \"string\",\n \"description\": \"Get + a third party link of the given type.\",\n \"location\": \"query\",\n + \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel + with a store on a merchandising platform in order to enable retail commerce + capabilities for that channel on YouTube.\"\n ]\n }\n + \ },\n \"id\": \"youtube.thirdPartyLinks.list\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"response\": + {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"path\": + \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n },\n + \ \"insert\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"response\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"request\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API request and response will include. Supported values are linkingToken, + status, and snippet.\",\n \"location\": \"query\"\n },\n + \ \"externalChannelId\": {\n \"description\": \"Channel + ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": + \"youtube.thirdPartyLinks.insert\",\n \"httpMethod\": \"POST\"\n + \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n + \ \"id\": \"youtube.thirdPartyLinks.delete\",\n \"description\": + \"Deletes a resource.\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n + \ ],\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": + {\n \"linkingToken\": {\n \"required\": true,\n \"description\": + \"Delete the partner links with the given linking token.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"type\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel + with a store on a merchandising platform in order to enable retail commerce + capabilities for that channel on YouTube.\"\n ],\n \"description\": + \"Type of the link to be deleted.\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"repeated\": true,\n + \ \"description\": \"Do not use. Required for compatibility.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"externalChannelId\": {\n \"type\": + \"string\",\n \"description\": \"Channel ID to which changes + should be applied, for delegation.\",\n \"location\": \"query\"\n + \ }\n }\n }\n }\n },\n \"liveChatModerators\": + {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n + \ ],\n \"id\": \"youtube.liveChatModerators.list\",\n \"httpMethod\": + \"GET\",\n \"description\": \"Retrieves a list of resources, possibly + filtered.\",\n \"parameters\": {\n \"pageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"description\": + \"The *part* parameter specifies the liveChatModerator resource parts that + the API response will include. Supported values are id and snippet.\",\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true\n },\n \"maxResults\": + {\n \"minimum\": \"0\",\n \"location\": \"query\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"maximum\": + \"50\",\n \"type\": \"integer\",\n \"default\": + \"5\",\n \"format\": \"uint32\"\n },\n \"liveChatId\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"The + id of the live chat for which moderators should be returned.\"\n }\n + \ },\n \"path\": \"youtube/v3/liveChat/moderators\"\n },\n + \ \"delete\": {\n \"parameters\": {\n \"id\": {\n + \ \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Deletes a chat moderator.\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": + \"youtube/v3/liveChat/moderators\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"id\": + \"youtube.liveChatModerators.delete\",\n \"parameterOrder\": [\n + \ \"id\"\n ]\n },\n \"insert\": {\n \"response\": + {\n \"$ref\": \"LiveChatModerator\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"request\": {\n \"$ref\": \"LiveChatModerator\"\n + \ },\n \"id\": \"youtube.liveChatModerators.insert\"\n }\n + \ }\n },\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": + {\n \"path\": \"youtube/v3/i18nLanguages\",\n \"httpMethod\": + \"GET\",\n \"description\": \"Retrieves a list of resources, possibly + filtered.\",\n \"parameters\": {\n \"hl\": {\n \"default\": + \"en_US\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"The *part* parameter specifies the i18nLanguage + resource properties that the API response will include. Set the parameter + value to snippet.\",\n \"required\": true\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"I18nLanguageListResponse\"\n },\n \"id\": + \"youtube.i18nLanguages.list\",\n \"flatPath\": \"youtube/v3/i18nLanguages\"\n + \ }\n }\n },\n \"videoCategories\": {\n \"methods\": + {\n \"list\": {\n \"parameters\": {\n \"part\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"repeated\": true,\n \"description\": \"The *part* + parameter specifies the videoCategory resource properties that the API response + will include. Set the parameter value to snippet.\",\n \"location\": + \"query\"\n },\n \"regionCode\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"repeated\": true,\n \"description\": \"Returns + the video categories with the given IDs for Stubby or Apiary.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"hl\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"default\": \"en-US\"\n }\n },\n \"flatPath\": + \"youtube/v3/videoCategories\",\n \"description\": \"Retrieves a + list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.videoCategories.list\",\n \"path\": \"youtube/v3/videoCategories\",\n + \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": + \"VideoCategoryListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ]\n }\n }\n },\n \"comments\": + {\n \"methods\": {\n \"setModerationStatus\": {\n \"parameterOrder\": + [\n \"id\",\n \"moderationStatus\"\n ],\n \"httpMethod\": + \"POST\",\n \"description\": \"Sets the moderation status of one + or more comments.\",\n \"id\": \"youtube.comments.setModerationStatus\",\n + \ \"path\": \"youtube/v3/comments/setModerationStatus\",\n \"parameters\": + {\n \"moderationStatus\": {\n \"required\": true,\n + \ \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ],\n + \ \"enumDescriptions\": [\n \"The comment is available + for public display.\",\n \"The comment is awaiting review by + a moderator.\",\n \"\",\n \"The comment is unfit + for display.\"\n ],\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Specifies the requested moderation + status. Note, comments can be in statuses, which are not available through + this call. For example, this call does not allow to mark a comment as 'likely + spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, + MODERATION_STATUS_REJECTED.\"\n },\n \"banAuthor\": + {\n \"location\": \"query\",\n \"default\": \"false\",\n + \ \"type\": \"boolean\",\n \"description\": \"If + set to true the author of the comment gets added to the ban list. This means + all future comments of the author will autmomatically be rejected. Only valid + in combination with STATUS_REJECTED.\"\n },\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"description\": \"Modifies the moderation status of the comments + with the given IDs\",\n \"location\": \"query\",\n \"repeated\": + true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\"\n + \ },\n \"markAsSpam\": {\n \"path\": \"youtube/v3/comments/markAsSpam\",\n + \ \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n \"id\": + \"youtube.comments.markAsSpam\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"Flags the comments with the + given IDs as spam in the caller's opinion.\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true\n }\n },\n \"description\": \"Expresses + the caller's opinion that one or more comments should be flagged as spam.\",\n + \ \"httpMethod\": \"POST\"\n },\n \"insert\": {\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"description\": + \"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.\",\n \"repeated\": true,\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"request\": {\n \"$ref\": \"Comment\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/comments\",\n \"description\": \"Inserts a new resource + into this collection.\",\n \"response\": {\n \"$ref\": + \"Comment\"\n },\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.comments.insert\",\n \"httpMethod\": + \"POST\"\n },\n \"delete\": {\n \"parameterOrder\": + [\n \"id\"\n ],\n \"id\": \"youtube.comments.delete\",\n + \ \"path\": \"youtube/v3/comments\",\n \"parameters\": {\n + \ \"id\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"description\": + \"Deletes a resource.\"\n },\n \"update\": {\n \"httpMethod\": + \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"description\": \"Updates an existing resource.\",\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true,\n \"description\": + \"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.\",\n + \ \"type\": \"string\"\n }\n },\n \"path\": + \"youtube/v3/comments\",\n \"request\": {\n \"$ref\": + \"Comment\"\n },\n \"id\": \"youtube.comments.update\",\n + \ \"response\": {\n \"$ref\": \"Comment\"\n },\n + \ \"flatPath\": \"youtube/v3/comments\"\n },\n \"list\": + {\n \"path\": \"youtube/v3/comments\",\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.comments.list\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": + {\n \"id\": {\n \"description\": \"Returns the comments + with the given IDs for One Platform.\",\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"repeated\": true\n },\n + \ \"textFormat\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"Returns the comments in HTML format. This is the default + value.\",\n \"Returns the comments in plain text format.\"\n + \ ],\n \"default\": \"html\",\n \"location\": + \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The + requested text format for the returned comments.\"\n },\n \"part\": + {\n \"description\": \"The *part* parameter specifies a comma-separated + list of one or more comment resource properties that the API response will + include.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true\n },\n \"maxResults\": {\n \"maximum\": + \"100\",\n \"default\": \"20\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"minimum\": \"1\",\n + \ \"location\": \"query\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\"\n },\n \"parentId\": {\n + \ \"description\": \"Returns replies to the specified comment. + Note, currently YouTube features only one level of replies (ie replies to + top level comments). However replies to replies may be supported in the future.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"pageToken\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"CommentListResponse\"\n },\n \"flatPath\": + \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n }\n }\n },\n \"liveStreams\": {\n \"methods\": + {\n \"delete\": {\n \"description\": \"Deletes an existing + stream for the authenticated user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"id\": \"youtube.liveStreams.delete\",\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n },\n \"path\": + \"youtube/v3/liveStreams\"\n },\n \"insert\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"repeated\": + true,\n \"description\": \"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, + content_details, and status.\",\n \"location\": \"query\",\n + \ \"required\": true,\n \"type\": \"string\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n + \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"path\": \"youtube/v3/liveStreams\",\n \"response\": {\n + \ \"$ref\": \"LiveStream\"\n },\n \"httpMethod\": + \"POST\",\n \"description\": \"Inserts a new stream for the authenticated + user.\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.insert\"\n + \ },\n \"update\": {\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"required\": true,\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.update\",\n + \ \"description\": \"Updates an existing stream for the authenticated + user.\",\n \"path\": \"youtube/v3/liveStreams\",\n \"request\": + {\n \"$ref\": \"LiveStream\"\n },\n \"response\": + {\n \"$ref\": \"LiveStream\"\n },\n \"httpMethod\": + \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ]\n },\n + \ \"list\": {\n \"id\": \"youtube.liveStreams.list\",\n \"description\": + \"Retrieve the list of streams associated with the given channel. --\",\n + \ \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n + \ },\n \"httpMethod\": \"GET\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"path\": \"youtube/v3/liveStreams\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"description\": + \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"mine\": {\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"maxResults\": + {\n \"maximum\": \"50\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"minimum\": \"0\",\n \"location\": + \"query\",\n \"default\": \"5\"\n },\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ]\n }\n }\n },\n \"captions\": + {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.captions.list\",\n + \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n + \ ],\n \"response\": {\n \"$ref\": \"CaptionListResponse\"\n + \ },\n \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"Returns the captions with the + given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n + \ \"repeated\": true\n },\n \"part\": {\n + \ \"type\": \"string\",\n \"required\": true,\n \"location\": + \"query\",\n \"repeated\": true,\n \"description\": + \"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.\"\n },\n + \ \"videoId\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Returns the captions for the + specified video.\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n },\n \"onBehalfOf\": {\n \"description\": + \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/captions\"\n + \ },\n \"insert\": {\n \"supportsMediaUpload\": true,\n + \ \"request\": {\n \"$ref\": \"Caption\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"POST\",\n \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\"\n },\n + \ \"sync\": {\n \"location\": \"query\",\n \"type\": + \"boolean\",\n \"description\": \"Extra parameter to allow automatically + syncing the uploaded caption/transcript with the audio.\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"The *part* parameter specifies the caption + resource parts that the API response will include. Set the parameter value + to snippet.\"\n },\n \"onBehalfOf\": {\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\",\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"Caption\"\n },\n + \ \"id\": \"youtube.captions.insert\",\n \"mediaUpload\": + {\n \"protocols\": {\n \"simple\": {\n \"multipart\": + true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n + \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n + \ \"multipart\": true\n }\n },\n \"maxSize\": + \"104857600\",\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ]\n },\n \"path\": \"youtube/v3/captions\",\n + \ \"description\": \"Inserts a new resource into this collection.\"\n + \ },\n \"delete\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\"\n },\n \"onBehalfOf\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\"\n }\n },\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"description\": \"Deletes a resource.\",\n \"httpMethod\": + \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"path\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.delete\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ },\n \"download\": {\n \"description\": \"Downloads + a caption track.\",\n \"parameters\": {\n \"onBehalfOf\": + {\n \"description\": \"ID of the Google+ Page for the channel + that the request is be on behalf of\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"tfmt\": + {\n \"location\": \"query\",\n \"description\": + \"Convert the captions into this format. Supported options are sbv, srt, and + vtt.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n },\n \"tlang\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"tlang is the language code; machine translate the captions into this language.\"\n + \ },\n \"id\": {\n \"description\": \"The + ID of the caption track to download, required for One Platform.\",\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"path\"\n + \ }\n },\n \"supportsMediaDownload\": true,\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": + \"youtube/v3/captions/{id}\",\n \"path\": \"youtube/v3/captions/{id}\",\n + \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.captions.download\",\n + \ \"useMediaDownloadService\": true\n },\n \"update\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"PUT\",\n + \ \"request\": {\n \"$ref\": \"Caption\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/captions\",\n \"id\": \"youtube.captions.update\",\n + \ \"path\": \"youtube/v3/captions\",\n \"response\": {\n + \ \"$ref\": \"Caption\"\n },\n \"description\": + \"Updates an existing resource.\",\n \"mediaUpload\": {\n \"maxSize\": + \"104857600\",\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ],\n \"protocols\": {\n \"simple\": + {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": + true\n },\n \"resumable\": {\n \"multipart\": + true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n + \ }\n }\n },\n \"parameters\": {\n + \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*Note:* + This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* + parameter indicates that the request's authorization credentials identify + a YouTube CMS user who is acting on behalf of the content owner specified + in the parameter value. This parameter is intended for YouTube content partners + that own and manage many different YouTube channels. It allows content owners + to authenticate once and get access to all their video and channel data, without + having to provide authentication credentials for each individual channel. + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\",\n \"location\": \"query\"\n + \ },\n \"sync\": {\n \"location\": \"query\",\n + \ \"description\": \"Extra parameter to allow automatically syncing + the uploaded caption/transcript with the audio.\",\n \"type\": + \"boolean\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"required\": + true,\n \"repeated\": true\n }\n }\n }\n + \ }\n },\n \"i18nRegions\": {\n \"methods\": {\n \"list\": + {\n \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the i18nRegion resource properties that the + API response will include. Set the parameter value to snippet.\",\n \"type\": + \"string\",\n \"repeated\": true\n },\n \"hl\": + {\n \"default\": \"en_US\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.i18nRegions.list\",\n + \ \"path\": \"youtube/v3/i18nRegions\",\n \"flatPath\": \"youtube/v3/i18nRegions\",\n + \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n + \ }\n }\n }\n }\n },\n \"id\": \"youtube:v3\",\n + \ \"ownerDomain\": \"google.com\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n + \ \"version\": \"v3\",\n \"revision\": \"20230308\"\n}\n" headers: Alt-Svc: - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 @@ -12467,7 +12465,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:44 GMT + - Thu, 09 Mar 2023 00:27:04 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: @@ -12527,7 +12525,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:44 GMT + - Thu, 09 Mar 2023 00:27:04 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: diff --git a/tests/cassettes/test_youtube/test_donate_video.yaml b/tests/cassettes/test_youtube/test_donate_video.yaml index 030d4d89..4b7dc1f8 100644 --- a/tests/cassettes/test_youtube/test_donate_video.yaml +++ b/tests/cassettes/test_youtube/test_donate_video.yaml @@ -10,274 +10,226 @@ interactions: uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest response: body: - string: "{\n \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube\": + string: "{\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n + \ \"revision\": \"20230307\",\n \"id\": \"youtube:v3\",\n \"auth\": {\n + \ \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube\": {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n + \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": + {\n \"description\": \"View private information of your YouTube channel + relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": + {\n \"description\": \"Manage your YouTube videos\"\n },\n \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n }\n - \ }\n }\n },\n \"version\": \"v3\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"resources\": {\n \"videoAbuseReportReasons\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the videoCategory resource parts that the - API response will include. Supported values are id and snippet.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"hl\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"en-US\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\"\n }\n }\n - \ },\n \"members\": {\n \"methods\": {\n \"list\": {\n \"id\": - \"youtube.members.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"path\": \"youtube/v3/members\",\n \"response\": - {\n \"$ref\": \"MemberListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of members that match - the request criteria for a channel.\",\n \"flatPath\": \"youtube/v3/members\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"pageToken\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"filterByMemberChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Comma - separated list of channel IDs. Only data about members that are part of this - list will be included in the response.\",\n \"location\": \"query\"\n - \ },\n \"mode\": {\n \"default\": \"all_current\",\n - \ \"enum\": [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"type\": - \"string\",\n \"description\": \"Parameter that specifies which - channel members to return.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ]\n },\n - \ \"part\": {\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"hasAccessToLevel\": {\n \"type\": - \"string\",\n \"description\": \"Filter members in the results - set to the ones that have access to a level.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"location\": \"query\",\n - \ \"minimum\": \"0\",\n \"maximum\": \"1000\",\n - \ \"format\": \"uint32\"\n }\n }\n }\n - \ }\n },\n \"abuseReports\": {\n \"methods\": {\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"flatPath\": \"youtube/v3/abuseReports\",\n - \ \"id\": \"youtube.abuseReports.insert\",\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"liveBroadcasts\": - {\n \"methods\": {\n \"transition\": {\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Broadcast to transition.\"\n },\n \"onBehalfOfContentOwnerChannel\": + members, their current level, and when they became a member\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": + \"See, edit, and permanently delete your YouTube videos, ratings, comments + and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": + {\n \"description\": \"View and manage your assets and associated + content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": + {\n \"description\": \"View your YouTube account\"\n }\n }\n + \ }\n },\n \"resources\": {\n \"captions\": {\n \"methods\": {\n + \ \"list\": {\n \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": + {\n \"id\": {\n \"repeated\": true,\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Returns the captions with the given IDs for Stubby or Apiary.\"\n },\n + \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n + \ \"location\": \"query\"\n },\n \"part\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"repeated\": true,\n + \ \"description\": \"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.\"\n + \ },\n \"videoId\": {\n \"description\": + \"Returns the captions for the specified video.\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n }\n + \ },\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/captions\",\n + \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n + \ ],\n \"id\": \"youtube.captions.list\",\n \"response\": + {\n \"$ref\": \"CaptionListResponse\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\"\n },\n \"insert\": {\n \"parameters\": + {\n \"onBehalfOf\": {\n \"description\": \"ID of the + Google+ Page for the channel that the request is be on behalf of\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n },\n \"sync\": {\n \"type\": + \"boolean\",\n \"location\": \"query\",\n \"description\": + \"Extra parameter to allow automatically syncing the uploaded caption/transcript + with the audio.\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"The *part* parameter specifies + the caption resource parts that the API response will include. Set the parameter + value to snippet.\",\n \"required\": true,\n \"repeated\": + true,\n \"type\": \"string\"\n }\n },\n \"mediaUpload\": + {\n \"maxSize\": \"104857600\",\n \"accept\": [\n \"text/xml\",\n + \ \"application/octet-stream\",\n \"*/*\"\n ],\n + \ \"protocols\": {\n \"resumable\": {\n \"multipart\": + true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n + \ },\n \"simple\": {\n \"multipart\": + true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n + \ }\n },\n \"response\": {\n \"$ref\": + \"Caption\"\n },\n \"id\": \"youtube.captions.insert\",\n + \ \"flatPath\": \"youtube/v3/captions\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"request\": {\n \"$ref\": \"Caption\"\n + \ },\n \"httpMethod\": \"POST\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/captions\",\n + \ \"supportsMediaUpload\": true,\n \"parameterOrder\": [\n + \ \"part\"\n ]\n },\n \"update\": {\n \"description\": + \"Updates an existing resource.\",\n \"httpMethod\": \"PUT\",\n \"supportsMediaUpload\": + true,\n \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n + \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ],\n \"protocols\": {\n \"simple\": + {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n + \ },\n \"resumable\": {\n \"multipart\": + true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n + \ }\n }\n },\n \"response\": {\n + \ \"$ref\": \"Caption\"\n },\n \"parameters\": + {\n \"onBehalfOf\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"ID of the Google+ Page for the + channel that the request is on behalf of.\"\n },\n \"sync\": + {\n \"type\": \"boolean\",\n \"description\": \"Extra + parameter to allow automatically syncing the uploaded caption/transcript with + the audio.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n - \ \"required\": true\n },\n \"broadcastStatus\": - {\n \"description\": \"The status to which the broadcast is going - to transition.\",\n \"required\": true,\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Start testing the broadcast. YouTube transmits video to - the broadcast's monitor stream. Note that you can only transition a broadcast - to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"broadcastStatus\",\n - \ \"id\",\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveBroadcasts/transition\",\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Transition a broadcast to a given status.\"\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new stream for the authenticated user.\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"required\": true,\n \"location\": + \"query\",\n \"repeated\": true\n }\n },\n + \ \"id\": \"youtube.captions.update\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/captions\",\n \"request\": {\n + \ \"$ref\": \"Caption\"\n },\n \"path\": \"youtube/v3/captions\"\n + \ },\n \"download\": {\n \"path\": \"youtube/v3/captions/{id}\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"list\": - {\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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, status - and statistics.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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 + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n },\n + \ \"tlang\": {\n \"location\": \"query\",\n \"description\": + \"tlang is the language code; machine translate the captions into this language.\",\n + \ \"type\": \"string\"\n },\n \"tfmt\": + {\n \"description\": \"Convert the captions into this format. + Supported options are sbv, srt, and vtt.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n + \ \"location\": \"path\",\n \"required\": true,\n + \ \"type\": \"string\",\n \"description\": \"The + ID of the caption track to download, required for One Platform.\"\n },\n + \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\",\n \"location\": \"query\"\n }\n },\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": + \"GET\",\n \"supportsMediaDownload\": true,\n \"flatPath\": + \"youtube/v3/captions/{id}\",\n \"useMediaDownloadService\": true,\n + \ \"id\": \"youtube.captions.download\",\n \"description\": + \"Downloads a caption track.\"\n },\n \"delete\": {\n \"path\": + \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Deletes a resource.\",\n \"flatPath\": + \"youtube/v3/captions\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"id\": \"youtube.captions.delete\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"Return broadcasts with the given ids from - Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"broadcastType\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ],\n \"location\": \"query\",\n \"default\": - \"event\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"description\": \"Return only broadcasts - with the selected type.\"\n },\n \"pageToken\": {\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"broadcastStatus\": {\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ]\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"id\": \"youtube.liveBroadcasts.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"insertCuepoint\": - {\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"description\": - \"Insert cuepoints in a broadcast\",\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"request\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\"\n },\n + \ \"id\": {\n \"required\": true,\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": + {\n \"description\": \"ID of the Google+ Page for the channel + that the request is be on behalf of\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n }\n }\n + \ }\n },\n \"subscriptions\": {\n \"methods\": {\n \"list\": + {\n \"id\": \"youtube.subscriptions.list\",\n \"flatPath\": + \"youtube/v3/subscriptions\",\n \"path\": \"youtube/v3/subscriptions\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [],\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Broadcast to insert ads to, - or equivalently `external_video_id` for internal use.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": + \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"order\": + {\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n + \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n + \ ],\n \"description\": \"The order of the returned + subscriptions\",\n \"location\": \"query\",\n \"default\": + \"relevance\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Sort by relevance.\",\n \"Sort by order of + activity.\",\n \"Sort alphabetically.\"\n ],\n + \ \"type\": \"string\"\n },\n \"forChannelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return the subscriptions to the subset of + these channels that the authenticated user is subscribed to.\"\n },\n + \ \"id\": {\n \"description\": \"Return the subscriptions + with the given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"mine\": {\n \"type\": \"boolean\",\n + \ \"location\": \"query\",\n \"description\": \"Flag + for returning the subscriptions of the authenticated user.\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": + {\n \"type\": \"integer\",\n \"minimum\": \"0\",\n + \ \"default\": \"5\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"location\": \"query\",\n \"format\": + \"uint32\",\n \"maximum\": \"50\"\n },\n \"myRecentSubscribers\": + {\n \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -291,114 +243,245 @@ interactions: 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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Broadcast to delete.\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.liveBroadcasts.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Delete a given broadcast.\"\n },\n \"bind\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Broadcast - to bind to the stream\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"streamId\": - {\n \"type\": \"string\",\n \"description\": \"Stream - to bind, if not set unbind the current one.\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Bind - a broadcast to a stream.\",\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.liveBroadcasts.bind\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameterOrder\": [\n \"id\",\n - \ \"part\"\n ]\n },\n \"update\": {\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n + for each separate channel.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"mySubscribers\": {\n \"description\": + \"Return the subscribers of the given channel owner.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"part\": + {\n \"description\": \"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.\",\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Return the subscriptions of the given channel + owner.\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n }\n + \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"path\": + \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.delete\",\n + \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes + a resource.\",\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ }\n }\n },\n \"insert\": {\n \"response\": + {\n \"$ref\": \"Subscription\"\n },\n \"flatPath\": + \"youtube/v3/subscriptions\",\n \"description\": \"Inserts a new + resource into this collection.\",\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"required\": true,\n \ \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + set as well as the properties that the API response will include.\"\n }\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/subscriptions\",\n \"request\": + {\n \"$ref\": \"Subscription\"\n },\n \"httpMethod\": + \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"id\": \"youtube.subscriptions.insert\"\n }\n }\n },\n + \ \"watermarks\": {\n \"methods\": {\n \"unset\": {\n \"flatPath\": + \"youtube/v3/watermarks/unset\",\n \"httpMethod\": \"POST\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\"\n }\n },\n \"id\": + \"youtube.watermarks.unset\",\n \"parameterOrder\": [\n \"channelId\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Allows removal of channel watermark.\",\n + \ \"path\": \"youtube/v3/watermarks/unset\"\n },\n \"set\": + {\n \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n + \ \"path\": \"youtube/v3/watermarks/set\",\n \"mediaUpload\": + {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ],\n \"maxSize\": + \"10485760\",\n \"protocols\": {\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n + \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n + \ \"multipart\": true\n }\n }\n },\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n },\n \"flatPath\": + \"youtube/v3/watermarks/set\",\n \"description\": \"Allows upload + of watermark image and setting it for a channel.\",\n \"parameterOrder\": + [\n \"channelId\"\n ],\n \"id\": \"youtube.watermarks.set\",\n + \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ }\n }\n },\n \"comments\": {\n \"methods\": {\n \"list\": + {\n \"parameters\": {\n \"pageToken\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n + \ \"part\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true,\n \"description\": \"The *part* parameter specifies a comma-separated + list of one or more comment resource properties that the API response will + include.\"\n },\n \"textFormat\": {\n \"default\": + \"html\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ],\n + \ \"description\": \"The requested text format for the returned + comments.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Returns the comments in HTML format. This is the default + value.\",\n \"Returns the comments in plain text format.\"\n + \ ]\n },\n \"parentId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Returns replies to the specified comment. Note, currently YouTube features + only one level of replies (ie replies to top level comments). However replies + to replies may be supported in the future.\"\n },\n \"maxResults\": + {\n \"format\": \"uint32\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"minimum\": \"1\",\n \"default\": + \"20\",\n \"type\": \"integer\",\n \"maximum\": + \"100\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"description\": \"Returns the comments with the given IDs + for One Platform.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"repeated\": true\n }\n },\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.comments.list\",\n + \ \"flatPath\": \"youtube/v3/comments\",\n \"response\": + {\n \"$ref\": \"CommentListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/comments\"\n },\n \"update\": + {\n \"flatPath\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.update\",\n + \ \"path\": \"youtube/v3/comments\",\n \"description\": \"Updates + an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"repeated\": + true\n }\n },\n \"httpMethod\": \"PUT\",\n \"request\": + {\n \"$ref\": \"Comment\"\n }\n },\n \"setModerationStatus\": + {\n \"description\": \"Sets the moderation status of one or more + comments.\",\n \"id\": \"youtube.comments.setModerationStatus\",\n + \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n + \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"required\": + true,\n \"description\": \"Modifies the moderation status of + the comments with the given IDs\",\n \"location\": \"query\",\n + \ \"repeated\": true\n },\n \"banAuthor\": + {\n \"type\": \"boolean\",\n \"description\": \"If + set to true the author of the comment gets added to the ban list. This means + all future comments of the author will autmomatically be rejected. Only valid + in combination with STATUS_REJECTED.\",\n \"location\": \"query\",\n + \ \"default\": \"false\"\n },\n \"moderationStatus\": + {\n \"location\": \"query\",\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"Specifies the requested moderation status. Note, comments can be in statuses, + which are not available through this call. For example, this call does not + allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, + MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"required\": + true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n + \ ]\n },\n \"markAsSpam\": {\n \"parameterOrder\": + [\n \"id\"\n ],\n \"path\": \"youtube/v3/comments/markAsSpam\",\n + \ \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"description\": + \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n + \ \"required\": true,\n \"location\": \"query\"\n + \ }\n },\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"description\": \"Expresses the caller's opinion + that one or more comments should be flagged as spam.\",\n \"httpMethod\": + \"POST\",\n \"id\": \"youtube.comments.markAsSpam\"\n },\n + \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"request\": {\n \"$ref\": \"Comment\"\n + \ },\n \"id\": \"youtube.comments.insert\",\n \"httpMethod\": + \"POST\",\n \"response\": {\n \"$ref\": \"Comment\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"description\": \"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.\",\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/comments\",\n \"description\": \"Inserts a new resource + into this collection.\"\n },\n \"delete\": {\n \"httpMethod\": + \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"id\": + \"youtube.comments.delete\",\n \"parameters\": {\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"flatPath\": + \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"path\": \"youtube/v3/comments\"\n }\n }\n },\n + \ \"i18nRegions\": {\n \"methods\": {\n \"list\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n + \ },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/i18nRegions\",\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"description\": \"The *part* parameter specifies the + i18nRegion resource properties that the API response will include. Set the + parameter value to snippet.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"repeated\": true\n },\n \"hl\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"default\": \"en_US\"\n }\n },\n \"id\": + \"youtube.i18nRegions.list\",\n \"flatPath\": \"youtube/v3/i18nRegions\"\n + \ }\n }\n },\n \"channelBanners\": {\n \"methods\": + {\n \"insert\": {\n \"id\": \"youtube.channelBanners.insert\",\n + \ \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n + \ },\n \"description\": \"Inserts a new resource into this + collection.\",\n \"mediaUpload\": {\n \"protocols\": {\n + \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n + \ \"multipart\": true\n },\n \"simple\": + {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n + \ }\n },\n \"accept\": [\n \"image/jpeg\",\n + \ \"image/png\",\n \"application/octet-stream\"\n + \ ],\n \"maxSize\": \"6291456\"\n },\n \"path\": + \"youtube/v3/channelBanners/insert\",\n \"httpMethod\": \"POST\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\"\n },\n + \ \"channelId\": {\n \"description\": \"Unused, channel_id + is currently derived from the security context of the requestor.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": \"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 @@ -412,8 +495,76 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + for each separate channel.\",\n \"type\": \"string\"\n }\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n + \ ],\n \"parameterOrder\": [],\n \"supportsMediaUpload\": + true,\n \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n + \ },\n \"flatPath\": \"youtube/v3/channelBanners/insert\"\n + \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n + \ \"insert\": {\n \"description\": \"Inserts a new resource + into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n + \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"httpMethod\": + \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/abuseReports\",\n \"request\": {\n + \ \"$ref\": \"AbuseReport\"\n },\n \"id\": \"youtube.abuseReports.insert\",\n + \ \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"description\": + \"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.\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n }\n }\n + \ }\n },\n \"superChatEvents\": {\n \"methods\": {\n \"list\": + {\n \"parameters\": {\n \"pageToken\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"minimum\": \"1\",\n \"location\": \"query\",\n + \ \"format\": \"uint32\",\n \"maximum\": \"50\",\n + \ \"default\": \"5\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"type\": \"integer\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true,\n \"description\": \"The *part* parameter specifies the + superChatEvent resource parts that the API response will include. This parameter + is currently not supported.\"\n },\n \"hl\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return rendered funding amounts in specified language.\"\n }\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"path\": \"youtube/v3/superChatEvents\",\n + \ \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n + \ },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"id\": + \"youtube.superChatEvents.list\"\n }\n }\n },\n \"videos\": + {\n \"methods\": {\n \"getRating\": {\n \"response\": + {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"flatPath\": + \"youtube/v3/videos/getRating\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Retrieves the ratings that the + authorized user gave to a list of specified videos.\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true\n }\n },\n + \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"path\": \"youtube/v3/videos/getRating\",\n \"id\": + \"youtube.videos.getRating\"\n },\n \"reportAbuse\": {\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube @@ -424,326 +575,97 @@ interactions: provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Updates an existing broadcast for the authenticated - user.\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"PUT\",\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"id\": \"youtube.liveBroadcasts.update\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n }\n }\n - \ },\n \"videoCategories\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.videoCategories.list\",\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"VideoCategoryListResponse\"\n },\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"parameters\": {\n \"hl\": {\n \"default\": - \"en-US\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the videoCategory resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Returns - the video categories with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"id\": \"youtube.i18nLanguages.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/i18nLanguages\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"hl\": {\n \"default\": - \"en_US\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the i18nLanguage resource properties that the API response will include. Set - the parameter value to snippet.\",\n \"repeated\": true\n }\n - \ },\n \"flatPath\": \"youtube/v3/i18nLanguages\"\n }\n - \ }\n },\n \"comments\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"path\": \"youtube/v3/comments\",\n \"id\": - \"youtube.comments.list\",\n \"parameters\": {\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more comment - resource properties that the API response will include.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n },\n \"textFormat\": - {\n \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"The requested text format for the returned comments.\",\n \"default\": - \"html\"\n },\n \"maxResults\": {\n \"maximum\": - \"100\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"default\": \"20\",\n \"minimum\": - \"1\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"parentId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns replies to the specified comment. - Note, currently YouTube features only one level of replies (ie replies to - top level comments). However replies to replies may be supported in the future.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Returns - the comments with the given IDs for One Platform.\",\n \"repeated\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"markAsSpam\": {\n \"id\": \"youtube.comments.markAsSpam\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/comments/markAsSpam\",\n - \ \"description\": \"Expresses the caller's opinion that one or more - comments should be flagged as spam.\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"Flags the comments with the given IDs as - spam in the caller's opinion.\",\n \"repeated\": true\n }\n - \ }\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"id\": \"youtube.comments.delete\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/comments\"\n - \ },\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/comments\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.update\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Updates an existing resource.\"\n - \ },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.comments.insert\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/comments\"\n - \ },\n \"setModerationStatus\": {\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Sets the moderation status of one - or more comments.\",\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"parameters\": - {\n \"banAuthor\": {\n \"default\": \"false\",\n \"description\": - \"If set to true the author of the comment gets added to the ban list. This - means all future comments of the author will autmomatically be rejected. Only - valid in combination with STATUS_REJECTED.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"moderationStatus\": - {\n \"description\": \"Specifies the requested moderation status. - Note, comments can be in statuses, which are not available through this call. - For example, this call does not allow to mark a comment as 'likely spam'. - Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"type\": \"string\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"required\": - true,\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"description\": \"Modifies - the moderation status of the comments with the given IDs\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ]\n }\n - \ }\n },\n \"liveChatModerators\": {\n \"methods\": {\n \"insert\": - {\n \"id\": \"youtube.liveChatModerators.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"response\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\"\n },\n \"list\": {\n - \ \"id\": \"youtube.liveChatModerators.list\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - liveChatModerator resource parts that the API response will include. Supported - values are id and snippet.\",\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"type\": - \"integer\"\n },\n \"liveChatId\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The id of the live chat for which moderators - should be returned.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n + \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.videos.reportAbuse\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat moderator.\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.liveChatModerators.delete\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\"\n }\n }\n },\n \"thirdPartyLinks\": - {\n \"methods\": {\n \"insert\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"id\": - \"youtube.thirdPartyLinks.insert\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"POST\"\n - \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\",\n \"repeated\": true\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\"\n },\n \"linkingToken\": {\n \"description\": - \"Get a third party link with the given linking token.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Get a third party link of the given type.\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ]\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.thirdPartyLinks.list\"\n - \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"Do not use. Required for compatibility.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"linkingToken\": - {\n \"required\": true,\n \"description\": \"Delete - the partner links with the given linking token.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"required\": true,\n \"description\": - \"Type of the link to be deleted.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"DELETE\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.delete\",\n - \ \"description\": \"Deletes a resource.\"\n },\n \"update\": - {\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.update\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"repeated\": true\n },\n - \ \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\"\n }\n - \ },\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"description\": - \"Updates an existing resource.\"\n }\n }\n },\n \"activities\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"publishedBefore\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"format\": - \"google-datetime\"\n },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true,\n \"required\": - true\n },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"home\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\"\n },\n \"pageToken\": + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [],\n \"request\": {\n + \ \"$ref\": \"VideoAbuseReport\"\n },\n \"path\": + \"youtube/v3/videos/reportAbuse\",\n \"description\": \"Report abuse + for a video.\",\n \"flatPath\": \"youtube/v3/videos/reportAbuse\"\n + \ },\n \"list\": {\n \"path\": \"youtube/v3/videos\",\n + \ \"parameters\": {\n \"hl\": {\n \"type\": + \"string\",\n \"description\": \"Stands for \\\"host language\\\". + Specifies the localization language of the metadata to be filled into snippet.localized. + The field is filled with the default metadata if there is no localization + in the specified language. The parameter value must be a language code included + in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"myRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n + \ \"description\": \"Return videos liked/disliked by the authenticated + user. Does not support RateType.RATED_TYPE_NONE.\"\n },\n \"maxHeight\": + {\n \"location\": \"query\",\n \"format\": \"int32\",\n + \ \"maximum\": \"8192\",\n \"minimum\": \"72\",\n + \ \"type\": \"integer\"\n },\n \"pageToken\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"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.\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.activities.list\",\n \"path\": \"youtube/v3/activities\",\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"channelBanners\": - {\n \"methods\": {\n \"insert\": {\n \"supportsMediaUpload\": - true,\n \"id\": \"youtube.channelBanners.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n - \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"path\": - \"youtube/v3/channelBanners/insert\",\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + 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.\"\n },\n \"maxResults\": {\n \"type\": + \"integer\",\n \"location\": \"query\",\n \"minimum\": + \"1\",\n \"description\": \"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.\",\n + \ \"maximum\": \"50\",\n \"default\": \"5\",\n \"format\": + \"uint32\"\n },\n \"regionCode\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Use a chart that is specific to the specified region\"\n },\n + \ \"part\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"required\": + true,\n \"repeated\": true\n },\n \"chart\": + {\n \"location\": \"query\",\n \"description\": + \"Return the videos that are in the specified chart.\",\n \"enumDescriptions\": + [\n \"\",\n \"Return the most popular videos + for the specified content region and video category.\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"chartUnspecified\",\n + \ \"mostPopular\"\n ]\n },\n \"locale\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"videoCategoryId\": {\n \"description\": + \"Use chart that is specific to the specified video category\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"default\": + \"0\"\n },\n \"id\": {\n \"description\": + \"Return videos with the given ids.\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"location\": \"query\"\n + \ },\n \"maxWidth\": {\n \"type\": \"integer\",\n + \ \"description\": \"Return the player with maximum height specified + in\",\n \"format\": \"int32\",\n \"location\": \"query\",\n + \ \"maximum\": \"8192\",\n \"minimum\": \"72\"\n + \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"flatPath\": \"youtube/v3/videos\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n + \ \"id\": \"youtube.videos.list\",\n \"response\": {\n \"$ref\": + \"VideoListResponse\"\n }\n },\n \"delete\": {\n \"description\": + \"Deletes a resource.\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"path\": + \"youtube/v3/videos\",\n \"parameters\": {\n \"id\": {\n + \ \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": \"*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 @@ -753,11 +675,38 @@ interactions: channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Unused, channel_id is currently derived from - the security context of the requestor.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": + \"string\"\n }\n },\n \"httpMethod\": \"DELETE\",\n + \ \"id\": \"youtube.videos.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n },\n \"insert\": {\n \"mediaUpload\": + {\n \"protocols\": {\n \"simple\": {\n \"path\": + \"/upload/youtube/v3/videos\",\n \"multipart\": true\n },\n + \ \"resumable\": {\n \"multipart\": true,\n \"path\": + \"/resumable/upload/youtube/v3/videos\"\n }\n },\n + \ \"maxSize\": \"274877906944\",\n \"accept\": [\n \"video/*\",\n + \ \"application/octet-stream\"\n ]\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"supportsMediaUpload\": true,\n \"path\": \"youtube/v3/videos\",\n + \ \"flatPath\": \"youtube/v3/videos\",\n \"id\": \"youtube.videos.insert\",\n + \ \"request\": {\n \"$ref\": \"Video\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"parameters\": {\n \"autoLevels\": {\n + \ \"location\": \"query\",\n \"type\": \"boolean\",\n + \ \"description\": \"Should auto-levels be applied to the upload.\"\n + \ },\n \"part\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"repeated\": true,\n + \ \"required\": true,\n \"description\": \"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.\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -771,120 +720,110 @@ interactions: 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.\",\n \"type\": \"string\"\n }\n - \ },\n \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\",\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"parameterOrder\": []\n }\n }\n },\n - \ \"channelSections\": {\n \"methods\": {\n \"list\": {\n \"response\": - {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.channelSections.list\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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 + for each separate channel.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"notifySubscribers\": {\n \"type\": + \"boolean\",\n \"default\": \"true\",\n \"description\": + \"Notify the channel subscribers about the new video. As default, the notification + is enabled.\",\n \"location\": \"query\"\n },\n \"stabilize\": + {\n \"description\": \"Should stabilize be applied to the upload.\",\n + \ \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"hl\": - {\n \"description\": \"Return content in specified language\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the ChannelSections owned by the specified - channel ID.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more channelSection + owner.\",\n \"type\": \"string\"\n }\n },\n + \ \"response\": {\n \"$ref\": \"Video\"\n }\n + \ },\n \"rate\": {\n \"parameters\": {\n \"rating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n + \ \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"required\": true\n + \ },\n \"id\": {\n \"type\": \"string\",\n + \ \"required\": true,\n \"location\": \"query\"\n + \ }\n },\n \"parameterOrder\": [\n \"id\",\n + \ \"rating\"\n ],\n \"flatPath\": \"youtube/v3/videos/rate\",\n + \ \"path\": \"youtube/v3/videos/rate\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Adds a like or dislike rating to a video or removes + a rating from a video.\",\n \"id\": \"youtube.videos.rate\",\n \"httpMethod\": + \"POST\"\n },\n \"update\": {\n \"parameters\": {\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*Note:* + This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* + parameter indicates that the request's authorization credentials identify + a YouTube CMS user who is acting on behalf of the content owner specified + in the parameter value. This parameter is intended for YouTube content partners + that own and manage many different YouTube channels. It allows content owners + to authenticate once and get access to all their video and channel data, without + having to provide authentication credentials for each individual channel. + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\"\n },\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"path\": \"youtube/v3/videos\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"id\": + \"youtube.videos.update\",\n \"description\": \"Updates an existing + resource.\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"response\": {\n \"$ref\": \"Video\"\n },\n + \ \"request\": {\n \"$ref\": \"Video\"\n },\n + \ \"httpMethod\": \"PUT\"\n }\n }\n },\n \"liveBroadcasts\": + {\n \"methods\": {\n \"insertCuepoint\": {\n \"path\": + \"youtube/v3/liveBroadcasts/cuepoint\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [],\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n + \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"description\": + \"Insert cuepoints in a broadcast\",\n \"request\": {\n \"$ref\": + \"Cuepoint\"\n },\n \"parameters\": {\n \"part\": + {\n \"location\": \"query\",\n \"description\": + \"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, 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.\"\n },\n \"mine\": - {\n \"description\": \"Return the ChannelSections owned by the - authenticated user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"insert\": {\n - \ \"path\": \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.insert\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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 + you can include in the parameter value are id, snippet, contentDetails, and + status.\",\n \"repeated\": true,\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\"\n },\n \"delete\": {\n \"id\": - \"youtube.channelSections.delete\",\n \"description\": \"Deletes - a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n }\n },\n \"update\": {\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + for each separate channel.\"\n },\n \"id\": {\n \"description\": + \"Broadcast to insert ads to, or equivalently `external_video_id` for internal + use.\",\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -894,45 +833,9 @@ interactions: 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.\"\n },\n \"part\": - {\n \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.update\",\n \"httpMethod\": \"PUT\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"captions\": {\n \"methods\": - {\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"path\": \"youtube/v3/captions\",\n \"supportsMediaUpload\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/captions\"\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ }\n },\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ]\n - \ },\n \"parameters\": {\n \"sync\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n },\n \"onBehalfOfContentOwner\": + be linked to the specified YouTube content owner.\"\n }\n },\n + \ \"httpMethod\": \"POST\"\n },\n \"update\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify @@ -941,107 +844,108 @@ interactions: that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n },\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"id\": \"youtube.captions.insert\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n }\n - \ },\n \"list\": {\n \"id\": \"youtube.captions.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ],\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"videoId\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Returns the captions for the specified video.\"\n },\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Returns the captions with the given IDs for - Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is on behalf of.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"CaptionListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/captions\"\n - \ },\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"description\": \"Updates an existing - resource.\",\n \"id\": \"youtube.captions.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"maxSize\": \"104857600\",\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ }\n },\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"parameters\": {\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is on behalf of.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively + The CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n \"part\": {\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"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.\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"request\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"id\": \"youtube.liveBroadcasts.update\",\n + \ \"description\": \"Updates an existing broadcast for the authenticated + user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"httpMethod\": \"PUT\"\n },\n \"transition\": {\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n + \ \"broadcastStatus\": {\n \"required\": true,\n \"enumDescriptions\": + [\n \"\",\n \"Start testing the broadcast. YouTube + transmits video to the broadcast's monitor stream. Note that you can only + transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream + property is set to true.\\\",\",\n \"Return only persistent + broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting + video.\"\n ],\n \"location\": \"query\",\n \"description\": + \"The status to which the broadcast is going to transition.\",\n \"type\": + \"string\",\n \"enum\": [\n \"statusUnspecified\",\n + \ \"testing\",\n \"live\",\n \"complete\"\n + \ ]\n },\n \"part\": {\n \"required\": + true,\n \"description\": \"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.\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Broadcast + to transition.\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"supportsMediaUpload\": - true,\n \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"path\": \"youtube/v3/captions\"\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is be on behalf of\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/captions\"\n - \ },\n \"download\": {\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/captions/{id}\",\n \"parameters\": - {\n \"tlang\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"tlang is the language code; machine - translate the captions into this language.\"\n },\n \"onBehalfOfContentOwner\": + provide authentication credentials for each individual channel. The CMS account + that the user authenticates with must be linked to the specified YouTube content + owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"httpMethod\": \"POST\",\n + \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameterOrder\": + [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"description\": + \"Transition a broadcast to a given status.\"\n },\n \"delete\": + {\n \"description\": \"Delete a given broadcast.\",\n \"flatPath\": + \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.delete\",\n + \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"parameters\": {\n \"id\": {\n \"description\": + \"Broadcast to delete.\",\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify @@ -1050,101 +954,34 @@ interactions: that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"tfmt\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Convert - the captions into this format. Supported options are sbv, srt, and vtt.\"\n - \ },\n \"id\": {\n \"required\": true,\n - \ \"location\": \"path\",\n \"description\": \"The - ID of the caption track to download, required for One Platform.\",\n \"type\": - \"string\"\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.captions.download\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/captions/{id}\",\n \"description\": \"Downloads a caption - track.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"useMediaDownloadService\": true,\n \"supportsMediaDownload\": - true\n }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"request\": {\n \"$ref\": - \"CommentThread\"\n }\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"videoId\": - {\n \"description\": \"Returns the comment threads of the specified - video.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"order\": {\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"type\": \"string\",\n \"default\": - \"time\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n },\n \"moderationStatus\": - {\n \"description\": \"Limits the returned comment threads to - those with the specified moderation status. Not compatible with the 'id' filter. - Valid values: published, heldForReview, likelySpam.\",\n \"default\": - \"published\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Returns - the comment threads with the given IDs for Stubby or Apiary.\"\n },\n - \ \"allThreadsRelatedToChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Returns - the comment threads of all videos of the channel and the channel comments - as well.\"\n },\n \"searchTerms\": {\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"textFormat\": - {\n \"type\": \"string\",\n \"description\": \"The - requested text format for the returned comments.\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"default\": \"html\",\n \"location\": - \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ]\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\",\n \"type\": \"string\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"100\",\n \"minimum\": - \"1\",\n \"location\": \"query\",\n \"default\": - \"20\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"response\": {\n \"$ref\": - \"CommentThreadListResponse\"\n },\n \"id\": \"youtube.commentThreads.list\",\n - \ \"path\": \"youtube/v3/commentThreads\"\n }\n }\n },\n - \ \"playlists\": {\n \"methods\": {\n \"delete\": {\n \"id\": - \"youtube.playlists.delete\",\n \"description\": \"Deletes a resource.\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + The CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n + \ },\n \"httpMethod\": \"DELETE\"\n },\n \"list\": + {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"description\": \"Retrieve the list of broadcasts associated with + the given channel.\",\n \"id\": \"youtube.liveBroadcasts.list\",\n + \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": + \"GET\",\n \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -1154,36 +991,112 @@ interactions: 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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/playlists\"\n },\n \"insert\": - {\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.playlists.insert\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": + be linked to the specified YouTube content owner.\"\n },\n \"mine\": + {\n \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"part\": {\n \"description\": \"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, status + and statistics.\",\n \"type\": \"string\",\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\"\n + \ },\n \"broadcastStatus\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"enum\": + [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n + \ \"active\",\n \"upcoming\",\n \"completed\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all broadcasts.\",\n \"Return current + live broadcasts.\",\n \"Return broadcasts that have not yet + started.\",\n \"Return broadcasts that have already ended.\"\n + \ ],\n \"description\": \"Return broadcasts with + a certain status, e.g. active broadcasts.\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"Return + broadcasts with the given ids from Stubby or Apiary.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"maxResults\": + {\n \"location\": \"query\",\n \"format\": \"uint32\",\n + \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"default\": \"5\",\n \"minimum\": + \"0\",\n \"type\": \"integer\"\n },\n \"broadcastType\": + {\n \"description\": \"Return only broadcasts with the selected + type.\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n + \ \"all\",\n \"event\",\n \"persistent\"\n + \ ],\n \"type\": \"string\",\n \"default\": + \"event\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all broadcasts.\",\n \"Return only + scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n + \ ],\n \"location\": \"query\"\n }\n }\n + \ },\n \"bind\": {\n \"httpMethod\": \"POST\",\n \"flatPath\": + \"youtube/v3/liveBroadcasts/bind\",\n \"id\": \"youtube.liveBroadcasts.bind\",\n + \ \"description\": \"Bind a broadcast to a stream.\",\n \"path\": + \"youtube/v3/liveBroadcasts/bind\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"id\",\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true,\n \"description\": \"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.\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"streamId\": {\n \"description\": + \"Stream to bind, if not set unbind the current one.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"required\": true,\n \"description\": \"Broadcast + to bind to the stream\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n }\n },\n \"insert\": {\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"POST\",\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -1197,28 +1110,159 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n }\n - \ },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + for each separate channel.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n + \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"description\": + \"Inserts a new stream for the authenticated user.\"\n }\n }\n + \ },\n \"channels\": {\n \"methods\": {\n \"list\": {\n \"parameters\": + {\n \"hl\": {\n \"description\": \"Stands for \\\"host + language\\\". Specifies the localization language of the metadata to be filled + into snippet.localized. The field is filled with the default metadata if there + is no localization in the specified language. The parameter value must be + a language code included in the list returned by the i18nLanguages.list method + (e.g. en_US, es_MX).\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"description\": + \"Return the channels with the specified IDs.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"type\": \"integer\",\n + \ \"location\": \"query\",\n \"default\": \"5\",\n + \ \"minimum\": \"0\",\n \"maximum\": \"50\",\n \"format\": + \"uint32\"\n },\n \"categoryId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return the channels within the specified guide category ID.\"\n },\n + \ \"mine\": {\n \"description\": \"Return the ids of + channels owned by the authenticated user.\",\n \"type\": \"boolean\",\n + \ \"location\": \"query\"\n },\n \"mySubscribers\": + {\n \"location\": \"query\",\n \"type\": \"boolean\",\n + \ \"description\": \"Return the channels subscribed to the authenticated + user\"\n },\n \"forUsername\": {\n \"description\": + \"Return the channel associated with a YouTube username.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"required\": true,\n \"type\": + \"string\",\n \"repeated\": true\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"managedByMe\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Return the channels managed by the authenticated + user.\"\n }\n },\n \"id\": \"youtube.channels.list\",\n + \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/channels\",\n + \ \"response\": {\n \"$ref\": \"ChannelListResponse\"\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"path\": \"youtube/v3/channels\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n + \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n + \ },\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"path\": \"youtube/v3/channels\",\n \"request\": + {\n \"$ref\": \"Channel\"\n },\n \"description\": + \"Updates an existing resource.\",\n \"id\": \"youtube.channels.update\",\n + \ \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"required\": true,\n \"location\": + \"query\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"response\": {\n \"$ref\": \"Channel\"\n },\n + \ \"httpMethod\": \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.playlists.update\",\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ ],\n \"flatPath\": \"youtube/v3/channels\"\n }\n + \ }\n },\n \"members\": {\n \"methods\": {\n \"list\": + {\n \"path\": \"youtube/v3/members\",\n \"description\": + \"Retrieves a list of members that match the request criteria for a channel.\",\n + \ \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"The *part* parameter specifies + the member resource parts that the API response will include. Set the parameter + value to snippet.\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true\n },\n \"filterByMemberChannelId\": + {\n \"location\": \"query\",\n \"description\": + \"Comma separated list of channel IDs. Only data about members that are part + of this list will be included in the response.\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"location\": + \"query\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"type\": \"integer\",\n \"maximum\": \"1000\",\n + \ \"minimum\": \"0\",\n \"default\": \"5\",\n \"format\": + \"uint32\"\n },\n \"mode\": {\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return only members that joined after the first call with + this mode was made.\",\n \"Return all current members, from + newest to oldest.\"\n ],\n \"type\": \"string\",\n + \ \"default\": \"all_current\",\n \"enum\": [\n \"listMembersModeUnknown\",\n + \ \"updates\",\n \"all_current\"\n ],\n + \ \"description\": \"Parameter that specifies which channel members + to return.\"\n },\n \"pageToken\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"hasAccessToLevel\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Filter + members in the results set to the ones that have access to a level.\"\n }\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"flatPath\": \"youtube/v3/members\",\n \"httpMethod\": + \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"id\": \"youtube.members.list\",\n \"response\": + {\n \"$ref\": \"MemberListResponse\"\n }\n }\n + \ }\n },\n \"playlists\": {\n \"methods\": {\n \"list\": + {\n \"path\": \"youtube/v3/playlists\",\n \"httpMethod\": + \"GET\",\n \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"description\": \"Return the playlists with the given + IDs for Stubby or Apiary.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n \ \"description\": \"*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 @@ -1228,16 +1272,33 @@ interactions: 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.\"\n }\n },\n \"response\": {\n \"$ref\": - \"Playlist\"\n }\n },\n \"list\": {\n \"id\": - \"youtube.playlists.list\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"channelId\": {\n \"description\": - \"Return the playlists owned by the specified channel ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + owner.\"\n },\n \"channelId\": {\n \"location\": + \"query\",\n \"description\": \"Return the playlists owned by + the specified channel ID.\",\n \"type\": \"string\"\n },\n + \ \"mine\": {\n \"description\": \"Return the playlists + owned by the authenticated user.\",\n \"location\": \"query\",\n + \ \"type\": \"boolean\"\n },\n \"maxResults\": + {\n \"default\": \"5\",\n \"minimum\": \"0\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"maximum\": + \"50\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n + \ \"location\": \"query\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n + \ },\n \"hl\": {\n \"description\": \"Return + content in specified language\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \ \"description\": \"This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube @@ -1253,25 +1314,17 @@ interactions: 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.\"\n },\n \"pageToken\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\"\n },\n \"id\": {\n \"repeated\": - true,\n \"description\": \"Return the playlists with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": + for each separate channel.\"\n }\n },\n \"flatPath\": + \"youtube/v3/playlists\",\n \"description\": \"Retrieves a list of + resources, possibly filtered.\",\n \"response\": {\n \"$ref\": + \"PlaylistListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.playlists.list\",\n \"parameterOrder\": + [\n \"part\"\n ]\n },\n \"delete\": {\n + \ \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -1280,264 +1333,68 @@ interactions: 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.\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"description\": - \"Return the playlists owned by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"type\": - \"integer\",\n \"maximum\": \"50\",\n \"default\": - \"5\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return content in specified language\"\n }\n },\n \"response\": - {\n \"$ref\": \"PlaylistListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/playlists\"\n - \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/search\",\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"youtube.playlists.delete\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of search resources\",\n \"id\": - \"youtube.search.list\",\n \"flatPath\": \"youtube/v3/search\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"publishedBefore\": {\n \"format\": \"google-datetime\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on resources published before this - date.\"\n },\n \"videoLicense\": {\n \"enum\": - [\n \"any\",\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Filter on the license of the - videos.\",\n \"enumDescriptions\": [\n \"Return - all videos, regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ]\n },\n \"relevanceLanguage\": - {\n \"description\": \"Return results relevant to this language.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"forMine\": {\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"q\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Textual search terms to match.\"\n - \ },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"description\": \"Filter on resources - published after this date.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoCategoryId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on videos in a specific category.\"\n },\n \"topicId\": - {\n \"type\": \"string\",\n \"description\": \"Restrict - results to a particular topic.\",\n \"location\": \"query\"\n - \ },\n \"eventType\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on the livestream status of the videos.\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n },\n \"forContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Search owned by a content owner.\"\n },\n - \ \"order\": {\n \"description\": \"Sort order of the - results.\",\n \"default\": \"relevance\",\n \"type\": - \"string\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"location\": {\n \"description\": - \"Filter on location of the video\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"forDeveloper\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\"\n },\n - \ \"videoSyndicated\": {\n \"description\": \"Filter - on syndicated videos.\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ]\n - \ },\n \"maxResults\": {\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"location\": \"query\"\n - \ },\n \"videoEmbeddable\": {\n \"description\": - \"Filter on embeddable videos.\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, embeddable or not.\",\n \"Only - retrieve embeddable videos.\"\n ]\n },\n \"videoType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos.\",\n \"Only retrieve movies.\",\n \"Only - retrieve episodes of shows.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"videoTypeUnspecified\",\n \"any\",\n - \ \"movie\",\n \"episode\"\n ],\n - \ \"description\": \"Filter on videos of a specific type.\",\n - \ \"location\": \"query\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on resources belonging to this channelId.\",\n \"type\": - \"string\"\n },\n \"videoCaption\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ]\n },\n \"safeSearch\": {\n \"default\": - \"moderate\",\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ]\n },\n \"locationRadius\": {\n \"description\": - \"Filter on distance from the location (specified above).\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"regionCode\": {\n \"description\": - \"Display the content as seen by viewers in this country.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"relatedToVideoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Search related to a resource.\"\n },\n - \ \"videoDuration\": {\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"description\": - \"Filter on the duration of the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"videoDimension\": {\n \"description\": - \"Filter on 3d videos.\",\n \"type\": \"string\",\n \"enum\": - [\n \"any\",\n \"2d\",\n \"3d\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ]\n },\n \"type\": {\n \"repeated\": - true,\n \"description\": \"Restrict results to a particular set - of resource types from One Platform.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"videoDefinition\": - {\n \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ],\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Filter on the definition of the videos.\"\n },\n \"channelType\": - {\n \"description\": \"Add a filter on the channel search.\",\n - \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ]\n }\n },\n \"response\": - {\n \"$ref\": \"SearchListResponse\"\n }\n }\n - \ }\n },\n \"liveChatBans\": {\n \"methods\": {\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/playlists\",\n + \ \"description\": \"Deletes a resource.\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/playlists\"\n + \ },\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"path\": \"youtube/v3/playlists\",\n \"request\": + {\n \"$ref\": \"Playlist\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true,\n \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveChatBan\"\n - \ },\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n }\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a chat ban.\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"id\": - \"youtube.liveChatBans.delete\",\n \"path\": \"youtube/v3/liveChat/bans\"\n - \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"id\": \"youtube.membershipsLevels.list\",\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"channels\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"parameters\": {\n \"forUsername\": {\n \"description\": - \"Return the channel associated with a YouTube username.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\",\n \"minimum\": - \"0\",\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"default\": \"5\"\n },\n \"mySubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channels subscribed to the authenticated - user\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"hl\": {\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"managedByMe\": - {\n \"location\": \"query\",\n \"description\": - \"Return the channels managed by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"id\": {\n \"description\": - \"Return the channels with the specified IDs.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n + 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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"description\": \"Updates + an existing resource.\",\n \"httpMethod\": \"PUT\",\n \"flatPath\": + \"youtube/v3/playlists\",\n \"response\": {\n \"$ref\": + \"Playlist\"\n },\n \"id\": \"youtube.playlists.update\"\n + \ },\n \"insert\": {\n \"id\": \"youtube.playlists.insert\",\n + \ \"path\": \"youtube/v3/playlists\",\n \"httpMethod\": \"POST\",\n + \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"description\": + \"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.\",\n \"type\": \"string\",\n + \ \"required\": true,\n \"location\": \"query\"\n \ },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -1548,350 +1405,333 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"description\": \"Return the ids of channels owned by the - authenticated user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"categoryId\": {\n \"description\": - \"Return the channels within the specified guide category ID.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/channels\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"id\": \"youtube.channels.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\"\n },\n \"update\": {\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"id\": \"youtube.channels.update\",\n \"request\": {\n - \ \"$ref\": \"Channel\"\n },\n \"path\": \"youtube/v3/channels\",\n - \ \"httpMethod\": \"PUT\"\n }\n }\n },\n \"playlistItems\": - {\n \"methods\": {\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"description\": \"Inserts a new - resource into this collection.\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"scopes\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"Playlist\"\n },\n \"request\": + {\n \"$ref\": \"Playlist\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n - \ }\n },\n \"update\": {\n \"id\": \"youtube.playlistItems.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n }\n },\n \"list\": {\n \"path\": - \"youtube/v3/playlistItems\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"pageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"location\": \"query\",\n \"maximum\": - \"50\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the playlist items associated with - the given video ID.\"\n },\n \"playlistId\": {\n \"description\": - \"Return the playlist items within the given playlist.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"description\": \"Inserts a new resource into this collection.\"\n + \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": + {\n \"list\": {\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/membershipsLevels\",\n \"response\": {\n \"$ref\": + \"MembershipsLevelListResponse\"\n },\n \"httpMethod\": + \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"id\": \"youtube.membershipsLevels.list\",\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"description\": + \"The *part* parameter specifies the membershipsLevel resource parts that + the API response will include. Supported values are id and snippet.\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true\n }\n },\n \"description\": \"Retrieves + a list of all pricing levels offered by a creator to the fans.\"\n }\n + \ }\n },\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": + {\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"httpMethod\": + \"GET\",\n \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"parameters\": {\n \"hl\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"default\": + \"en_US\"\n },\n \"part\": {\n \"description\": + \"The *part* parameter specifies the i18nLanguage resource properties that + the API response will include. Set the parameter value to snippet.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true\n }\n },\n + \ \"id\": \"youtube.i18nLanguages.list\",\n \"path\": \"youtube/v3/i18nLanguages\",\n \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.list\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"PlaylistItemListResponse\"\n }\n },\n \"delete\": - {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n - \ \"location\": \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.playlistItems.delete\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"description\": \"Deletes a resource.\"\n - \ }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"liveChatId\": {\n - \ \"location\": \"query\",\n \"description\": \"The - id of the live chat for which comments should be returned.\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"default\": \"500\",\n \"type\": \"integer\",\n - \ \"minimum\": \"200\",\n \"description\": \"The + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ }\n }\n },\n \"activities\": {\n \"methods\": {\n + \ \"list\": {\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"mine\": {\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"maxResults\": {\n \"default\": + \"5\",\n \"type\": \"integer\",\n \"maximum\": \"50\",\n + \ \"location\": \"query\",\n \"minimum\": \"0\",\n + \ \"format\": \"uint32\",\n \"description\": \"The *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"2000\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the liveChatComment resource parts that the API response will include. Supported - values are id and snippet.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"profileImageSize\": {\n \"location\": - \"query\",\n \"description\": \"Specifies the size of the profile - image that should be returned for each user.\",\n \"type\": \"integer\",\n - \ \"maximum\": \"720\",\n \"minimum\": \"16\",\n - \ \"format\": \"uint32\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Specifies the localization language in which - the system messages should be returned.\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n + returned in the result set.\"\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"regionCode\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"publishedBefore\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"format\": + \"google-datetime\"\n },\n \"home\": {\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n \ \"description\": \"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.\"\n }\n - \ },\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"response\": - {\n \"$ref\": \"LiveChatMessageListResponse\"\n }\n },\n - \ \"insert\": {\n \"response\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"id\": - \"youtube.liveChatMessages.insert\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"httpMethod\": - \"POST\"\n },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat message.\",\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.liveChatMessages.delete\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n }\n }\n },\n \"subscriptions\": {\n \"methods\": - {\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.subscriptions.delete\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"DELETE\"\n },\n \"list\": {\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"forChannelId\": {\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"order\": {\n \"enum\": - [\n \"subscriptionOrderUnspecified\",\n \"relevance\",\n - \ \"unread\",\n \"alphabetical\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Sort - by relevance.\",\n \"Sort by order of activity.\",\n \"Sort - alphabetically.\"\n ],\n \"location\": \"query\",\n - \ \"default\": \"relevance\",\n \"description\": - \"The order of the returned subscriptions\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"required\": - true\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Flag for returning the subscriptions of the - authenticated user.\"\n },\n \"myRecentSubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"mySubscribers\": - {\n \"description\": \"Return the subscribers of the given channel - owner.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the subscriptions of the - given channel owner.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"Return the subscriptions with - the given IDs for Stubby or Apiary.\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"id\": \"youtube.subscriptions.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n + and prevPageToken properties identify other pages that could be retrieved.\"\n + \ },\n \"publishedAfter\": {\n \"format\": + \"google-datetime\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"path\": \"youtube/v3/activities\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"id\": \"youtube.activities.list\",\n \"flatPath\": + \"youtube/v3/activities\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n + \ }\n }\n }\n },\n \"thumbnails\": {\n \"methods\": + {\n \"set\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"SubscriptionListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n },\n \"insert\": - {\n \"path\": \"youtube/v3/subscriptions\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ }\n },\n \"id\": \"youtube.subscriptions.insert\"\n - \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"id\": - \"youtube.youtube.v3.updateCommentThreads\",\n \"request\": {\n - \ \"$ref\": \"CommentThread\"\n },\n \"parameterOrder\": - [],\n \"parameters\": {\n \"part\": {\n \"description\": + \ \"supportsMediaUpload\": true,\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n + \ \"description\": \"As this is not an insert in a strict sense (it + supports uploading/setting of a thumbnail for multiple videos, which doesn't + result in creation of a single resource), I use a custom verb here.\",\n \"parameters\": + {\n \"videoId\": {\n \"location\": \"query\",\n \"description\": + \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n + \ \"type\": \"string\",\n \"required\": true\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\"\n }\n + \ },\n \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n + \ },\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.thumbnails.set\",\n + \ \"mediaUpload\": {\n \"maxSize\": \"2097152\",\n \"protocols\": + {\n \"simple\": {\n \"multipart\": true,\n \"path\": + \"/upload/youtube/v3/thumbnails/set\"\n },\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n + \ }\n },\n \"accept\": [\n \"image/jpeg\",\n + \ \"image/png\",\n \"application/octet-stream\"\n + \ ]\n },\n \"path\": \"youtube/v3/thumbnails/set\",\n + \ \"parameterOrder\": [\n \"videoId\"\n ]\n }\n + \ }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": + {\n \"methods\": {\n \"updateCommentThreads\": {\n \"parameterOrder\": + [],\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n + \ \"response\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"request\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"description\": \"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.\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"description\": \"Updates an existing resource.\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/commentThreads\"\n }\n - \ }\n }\n }\n },\n \"watermarks\": {\n \"methods\": - {\n \"set\": {\n \"id\": \"youtube.watermarks.set\",\n \"path\": - \"youtube/v3/watermarks/set\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + that the API request can update.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n + \ \"path\": \"youtube/v3/commentThreads\",\n \"description\": + \"Updates an existing resource.\",\n \"httpMethod\": \"PUT\"\n + \ }\n }\n }\n }\n },\n \"liveChatMessages\": + {\n \"methods\": {\n \"insert\": {\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true,\n \"description\": \"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.\"\n }\n },\n \"id\": \"youtube.liveChatMessages.insert\",\n + \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n + \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n },\n + \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"parameterOrder\": [\n \"part\"\n ]\n },\n + \ \"delete\": {\n \"parameters\": {\n \"id\": {\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true\n }\n },\n \"parameterOrder\": + [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"description\": \"Deletes a chat message.\",\n \"id\": + \"youtube.liveChatMessages.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/liveChat/messages\",\n \"httpMethod\": + \"DELETE\"\n },\n \"list\": {\n \"parameters\": {\n + \ \"hl\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Specifies the localization language + in which the system messages should be returned.\"\n },\n \"liveChatId\": + {\n \"type\": \"string\",\n \"description\": \"The + id of the live chat for which comments should be returned.\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"profileImageSize\": + {\n \"minimum\": \"16\",\n \"description\": \"Specifies + the size of the profile image that should be returned for each user.\",\n + \ \"format\": \"uint32\",\n \"location\": \"query\",\n + \ \"type\": \"integer\",\n \"maximum\": \"720\"\n + \ },\n \"maxResults\": {\n \"default\": + \"500\",\n \"minimum\": \"200\",\n \"type\": \"integer\",\n + \ \"format\": \"uint32\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"maximum\": \"2000\",\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n + \ \"location\": \"query\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the liveChatComment resource parts that the + API response will include. Supported values are id and snippet.\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"required\": true\n + \ }\n },\n \"id\": \"youtube.liveChatMessages.list\",\n + \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n + \ },\n \"parameterOrder\": [\n \"liveChatId\",\n + \ \"part\"\n ]\n }\n }\n },\n \"search\": + {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n + \ \"path\": \"youtube/v3/search\",\n \"flatPath\": \"youtube/v3/search\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": + {\n \"videoCategoryId\": {\n \"location\": \"query\",\n + \ \"description\": \"Filter on videos in a specific category.\",\n + \ \"type\": \"string\"\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Filter on resources belonging to this channelId.\"\n + \ },\n \"q\": {\n \"location\": \"query\",\n + \ \"description\": \"Textual search terms to match.\",\n \"type\": + \"string\"\n },\n \"publishedBefore\": {\n \"type\": + \"string\",\n \"description\": \"Filter on resources published + before this date.\",\n \"format\": \"google-datetime\",\n \"location\": + \"query\"\n },\n \"forDeveloper\": {\n \"description\": + \"Restrict the search to only retrieve videos uploaded using the project id + of the authenticated user.\",\n \"type\": \"boolean\",\n \"location\": + \"query\"\n },\n \"forContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"Search owned by a content owner.\",\n + \ \"type\": \"boolean\"\n },\n \"videoDuration\": + {\n \"enumDescriptions\": [\n \"\",\n \"Do + not filter video search results based on their duration. This is the default + value.\",\n \"Only include videos that are less than four minutes + long.\",\n \"Only include videos that are between four and + 20 minutes long (inclusive).\",\n \"Only include videos longer + than 20 minutes.\"\n ],\n \"description\": \"Filter + on the duration of the videos.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"enum\": [\n \"videoDurationUnspecified\",\n + \ \"any\",\n \"short\",\n \"medium\",\n + \ \"long\"\n ]\n },\n \"locationRadius\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Filter on distance from the location (specified + above).\"\n },\n \"relatedToVideoId\": {\n \"description\": + \"Search related to a resource.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"videoLicense\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"any\",\n \"youtube\",\n + \ \"creativeCommon\"\n ],\n \"enumDescriptions\": + [\n \"Return all videos, regardless of which license they have, + that match the query parameters.\",\n \"Only return videos + that have the standard YouTube license.\",\n \"Only return + videos that have a Creative Commons license. Users can reuse videos with this + license in other videos that they create. Learn more.\"\n ],\n + \ \"description\": \"Filter on the license of the videos.\"\n + \ },\n \"videoCaption\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Do + not filter results based on caption availability.\",\n \"Only + include videos that have captions.\",\n \"Only include videos + that do not have captions.\"\n ],\n \"location\": + \"query\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n + \ \"any\",\n \"closedCaption\",\n \"none\"\n + \ ],\n \"description\": \"Filter on the presence + of captions on the videos.\"\n },\n \"maxResults\": + {\n \"format\": \"uint32\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"type\": \"integer\",\n \"maximum\": + \"50\",\n \"minimum\": \"0\",\n \"location\": \"query\",\n + \ \"default\": \"5\"\n },\n \"forMine\": + {\n \"location\": \"query\",\n \"description\": + \"Search for the private videos of the authenticated user.\",\n \"type\": + \"boolean\"\n },\n \"relevanceLanguage\": {\n \"location\": + \"query\",\n \"description\": \"Return results relevant to this + language.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"description\": \"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.\",\n \"required\": + true,\n \"type\": \"string\"\n },\n \"safeSearch\": + {\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n + \ \"none\",\n \"moderate\",\n \"strict\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"YouTube will not filter the search result set.\",\n \"YouTube + will filter some content from search results and, at the least, will filter + content that is restricted in your locale. Based on their content, search + results could be removed from search results or demoted in search results. + This is the default parameter value.\",\n \"YouTube will try + to exclude all restricted content from the search result set. Based on their + content, search results could be removed from search results or demoted in + search results.\"\n ],\n \"location\": \"query\",\n + \ \"description\": \"Indicates whether the search results should + include restricted content as well as standard content.\",\n \"type\": + \"string\",\n \"default\": \"moderate\"\n },\n \"pageToken\": {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n + \ },\n \"order\": {\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Resources + are sorted in reverse chronological order based on the date they were created.\",\n + \ \"Resources are sorted from highest to lowest rating.\",\n + \ \"Resources are sorted from highest to lowest number of views.\",\n + \ \"Resources are sorted based on their relevance to the search + query. This is the default value for this parameter.\",\n \"Resources + are sorted alphabetically by title.\",\n \"Channels are sorted + in descending order of their number of uploaded videos.\"\n ],\n + \ \"enum\": [\n \"searchSortUnspecified\",\n \"date\",\n + \ \"rating\",\n \"viewCount\",\n \"relevance\",\n + \ \"title\",\n \"videoCount\"\n ],\n + \ \"default\": \"relevance\",\n \"type\": \"string\",\n + \ \"description\": \"Sort order of the results.\"\n },\n + \ \"videoDefinition\": {\n \"enum\": [\n \"any\",\n + \ \"standard\",\n \"high\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"Filter + on the definition of the videos.\",\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"Return all videos, + regardless of their resolution.\",\n \"Only retrieve videos + in standard definition.\",\n \"Only retrieve HD videos.\"\n + \ ]\n },\n \"videoSyndicated\": {\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos, syndicated + or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n + \ \"location\": \"query\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n + \ \"any\",\n \"true\"\n ],\n \"type\": + \"string\",\n \"description\": \"Filter on syndicated videos.\"\n + \ },\n \"channelType\": {\n \"type\": \"string\",\n + \ \"description\": \"Add a filter on the channel search.\",\n + \ \"location\": \"query\",\n \"enum\": [\n \"channelTypeUnspecified\",\n + \ \"any\",\n \"show\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return all channels.\",\n \"Only + retrieve shows.\"\n ]\n },\n \"location\": + {\n \"description\": \"Filter on location of the video\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"videoEmbeddable\": + {\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos, embeddable + or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n + \ \"description\": \"Filter on embeddable videos.\",\n \"enum\": + [\n \"videoEmbeddableUnspecified\",\n \"any\",\n + \ \"true\"\n ],\n \"type\": \"string\"\n + \ },\n \"eventType\": {\n \"description\": + \"Filter on the livestream status of the videos.\",\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been + completed.\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"none\",\n \"upcoming\",\n \"live\",\n + \ \"completed\"\n ]\n },\n \"videoType\": + {\n \"description\": \"Filter on videos of a specific type.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"videoTypeUnspecified\",\n + \ \"any\",\n \"movie\",\n \"episode\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all videos.\",\n \"Only retrieve movies.\",\n + \ \"Only retrieve episodes of shows.\"\n ],\n \"location\": + \"query\"\n },\n \"videoDimension\": {\n \"description\": + \"Filter on 3d videos.\",\n \"enum\": [\n \"any\",\n + \ \"2d\",\n \"3d\"\n ],\n \"location\": + \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"Include both 3D and non-3D videos in returned results. + This is the default value.\",\n \"Restrict search results to + exclude 3D videos.\",\n \"Restrict search results to only include + 3D videos.\"\n ]\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"*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 @@ -1901,27 +1741,247 @@ interactions: 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.\"\n },\n \"channelId\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Allows upload of - watermark image and setting it for a channel.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/watermarks/set\",\n \"supportsMediaUpload\": - true,\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"mediaUpload\": {\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n - \ }\n },\n \"maxSize\": \"10485760\",\n - \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ]\n }\n },\n - \ \"unset\": {\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n - \ \"id\": \"youtube.watermarks.unset\",\n \"parameters\": - {\n \"channelId\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + owner.\"\n },\n \"type\": {\n \"description\": + \"Restrict results to a particular set of resource types from One Platform.\",\n + \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"regionCode\": {\n \"description\": + \"Display the content as seen by viewers in this country.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"publishedAfter\": + {\n \"description\": \"Filter on resources published after this + date.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"format\": \"google-datetime\"\n },\n + \ \"topicId\": {\n \"location\": \"query\",\n \"description\": + \"Restrict results to a particular topic.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"youtube.search.list\",\n + \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n + \ },\n \"description\": \"Retrieves a list of search resources\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ }\n }\n },\n \"commentThreads\": {\n \"methods\": + {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"id\": + \"youtube.commentThreads.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameters\": {\n \"maxResults\": {\n + \ \"format\": \"uint32\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"maximum\": \"100\",\n \"default\": + \"20\",\n \"location\": \"query\",\n \"type\": \"integer\",\n + \ \"minimum\": \"1\"\n },\n \"id\": {\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"Returns + the comment threads with the given IDs for Stubby or Apiary.\"\n },\n + \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"Returns + the comment threads of the specified video.\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies a comma-separated list of one or more commentThread + resource properties that the API response will include.\",\n \"type\": + \"string\",\n \"repeated\": true\n },\n \"textFormat\": + {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Returns the comments in HTML format. + This is the default value.\",\n \"Returns the comments in plain + text format.\"\n ],\n \"location\": \"query\",\n + \ \"description\": \"The requested text format for the returned + comments.\",\n \"default\": \"html\",\n \"enum\": + [\n \"textFormatUnspecified\",\n \"html\",\n + \ \"plainText\"\n ]\n },\n \"allThreadsRelatedToChannelId\": + {\n \"location\": \"query\",\n \"description\": + \"Returns the comment threads of all videos of the channel and the channel + comments as well.\",\n \"type\": \"string\"\n },\n + \ \"searchTerms\": {\n \"type\": \"string\",\n \"description\": + \"Limits the returned comment threads to those matching the specified key + words. Not compatible with the 'id' filter.\",\n \"location\": + \"query\"\n },\n \"order\": {\n \"default\": + \"time\",\n \"location\": \"query\",\n \"enum\": + [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"Order by time.\",\n \"Order by relevance.\"\n + \ ],\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Returns the comment threads for all the channel + comments (ie does not include comments left on videos).\"\n },\n + \ \"moderationStatus\": {\n \"enumDescriptions\": [\n + \ \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"type\": + \"string\",\n \"description\": \"Limits the returned comment + threads to those with the specified moderation status. Not compatible with + the 'id' filter. Valid values: published, heldForReview, likelySpam.\",\n + \ \"location\": \"query\",\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ],\n \"default\": \"published\"\n }\n + \ },\n \"path\": \"youtube/v3/commentThreads\",\n \"httpMethod\": + \"GET\",\n \"description\": \"Retrieves a list of resources, possibly + filtered.\"\n },\n \"insert\": {\n \"response\": {\n + \ \"$ref\": \"CommentThread\"\n },\n \"description\": + \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.commentThreads.insert\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n + \ \"path\": \"youtube/v3/commentThreads\",\n \"flatPath\": + \"youtube/v3/commentThreads\",\n \"parameters\": {\n \"part\": + {\n \"description\": \"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.\",\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"httpMethod\": + \"POST\"\n }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": + {\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n + \ },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"location\": + \"query\",\n \"repeated\": true,\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API request and response will include. Supported values are linkingToken, + status, and snippet.\",\n \"type\": \"string\"\n },\n + \ \"externalChannelId\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Channel + ID to which changes should be applied, for delegation.\"\n }\n + \ },\n \"description\": \"Updates an existing resource.\",\n + \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": + \"youtube.thirdPartyLinks.update\",\n \"response\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"httpMethod\": \"PUT\"\n },\n + \ \"list\": {\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"externalChannelId\": {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Channel ID to which changes should be applied, + for delegation.\"\n },\n \"part\": {\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API response will include. Supported values are linkingToken, status, and + snippet.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true\n },\n \"type\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"location\": \"query\",\n \"description\": + \"Get a third party link of the given type.\",\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or + about to connect) a channel with a store on a merchandising platform in order + to enable retail commerce capabilities for that channel on YouTube.\"\n ]\n + \ },\n \"linkingToken\": {\n \"type\": \"string\",\n + \ \"description\": \"Get a third party link with the given linking + token.\",\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.thirdPartyLinks.list\",\n + \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n + \ }\n },\n \"delete\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"description\": \"Deletes a resource.\",\n \"httpMethod\": + \"DELETE\",\n \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"Do not use. Required for compatibility.\",\n + \ \"location\": \"query\",\n \"repeated\": true\n + \ },\n \"type\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or + about to connect) a channel with a store on a merchandising platform in order + to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n + \ \"required\": true,\n \"description\": \"Type of + the link to be deleted.\",\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ]\n },\n + \ \"externalChannelId\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel ID to which changes should be applied, + for delegation.\",\n \"location\": \"query\"\n },\n + \ \"linkingToken\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"Delete the partner links with the given linking token.\"\n }\n + \ },\n \"id\": \"youtube.thirdPartyLinks.delete\",\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"linkingToken\",\n + \ \"type\"\n ]\n },\n \"insert\": {\n \"request\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\",\n \"response\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"parameters\": {\n \"part\": + {\n \"type\": \"string\",\n \"description\": \"The + *part* parameter specifies the thirdPartyLink resource parts that the API + request and response will include. Supported values are linkingToken, status, + and snippet.\",\n \"required\": true,\n \"location\": + \"query\",\n \"repeated\": true\n },\n \"externalChannelId\": + {\n \"description\": \"Channel ID to which changes should be + applied, for delegation.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"id\": \"youtube.thirdPartyLinks.insert\",\n \"httpMethod\": + \"POST\",\n \"parameterOrder\": [\n \"part\"\n ]\n + \ }\n }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"POST\",\n \"parameters\": {\n \"externalChannelId\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"type\": \"string\",\n + \ \"required\": true,\n \"repeated\": true,\n \"location\": + \"query\"\n }\n },\n \"description\": \"POST + method.\",\n \"request\": {\n \"$ref\": \"TestItem\"\n + \ },\n \"response\": {\n \"$ref\": \"TestItem\"\n + \ },\n \"id\": \"youtube.tests.insert\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"path\": \"youtube/v3/tests\",\n \"flatPath\": \"youtube/v3/tests\"\n + \ }\n }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": + {\n \"list\": {\n \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n + \ },\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"flatPath\": + \"youtube/v3/videoAbuseReportReasons\",\n \"parameters\": {\n \"part\": + {\n \"type\": \"string\",\n \"description\": \"The + *part* parameter specifies the videoCategory resource parts that the API response + will include. Supported values are id and snippet.\",\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true\n },\n \"hl\": {\n \"default\": \"en-US\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Retrieves a list + of resources, possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"path\": \"youtube/v3/videoAbuseReportReasons\"\n + \ }\n }\n },\n \"liveChatBans\": {\n \"methods\": {\n + \ \"insert\": {\n \"response\": {\n \"$ref\": \"LiveChatBan\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true\n }\n },\n + \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": + \"LiveChatBan\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Inserts a new resource into this collection.\",\n \"flatPath\": + \"youtube/v3/liveChat/bans\",\n \"path\": \"youtube/v3/liveChat/bans\",\n + \ \"id\": \"youtube.liveChatBans.insert\"\n },\n \"delete\": + {\n \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": + \"Deletes a chat ban.\",\n \"path\": \"youtube/v3/liveChat/bans\",\n + \ \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n }\n },\n \"id\": \"youtube.liveChatBans.delete\",\n + \ \"flatPath\": \"youtube/v3/liveChat/bans\"\n }\n }\n + \ },\n \"videoCategories\": {\n \"methods\": {\n \"list\": + {\n \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n + \ },\n \"id\": \"youtube.videoCategories.list\",\n \"parameters\": + {\n \"hl\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"default\": \"en-US\"\n },\n \"id\": + {\n \"repeated\": true,\n \"description\": \"Returns + the video categories with the given IDs for Stubby or Apiary.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"regionCode\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"part\": {\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true,\n \"description\": \"The *part* + parameter specifies the videoCategory resource properties that the API response + will include. Set the parameter value to snippet.\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/videoCategories\",\n \"path\": + \"youtube/v3/videoCategories\",\n \"description\": \"Retrieves a + list of resources, possibly filtered.\"\n }\n }\n },\n \"liveStreams\": + {\n \"methods\": {\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveStreams\",\n + \ \"path\": \"youtube/v3/liveStreams\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \ \"description\": \"*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 @@ -1931,68 +1991,41 @@ interactions: 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.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"description\": - \"Allows removal of channel watermark.\",\n \"path\": \"youtube/v3/watermarks/unset\"\n - \ }\n }\n },\n \"liveStreams\": {\n \"methods\": {\n - \ \"insert\": {\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"description\": \"Inserts a new stream for the authenticated - user.\",\n \"path\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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 + owner.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"description\": - \"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, content_details, and status.\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.liveStreams.insert\"\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Deletes an existing stream for - the authenticated user.\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": + for each separate channel.\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ }\n },\n \"httpMethod\": \"DELETE\",\n \"description\": + \"Deletes an existing stream for the authenticated user.\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.liveStreams.delete\"\n },\n \"list\": + {\n \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n + \ },\n \"id\": \"youtube.liveStreams.list\",\n \"httpMethod\": + \"GET\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"pageToken\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -2007,19 +2040,44 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"DELETE\",\n \"id\": - \"youtube.liveStreams.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"update\": {\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"path\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"This parameter can only be used in a properly authorized request. *Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* + for each separate channel.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"location\": + \"query\",\n \"minimum\": \"0\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"format\": \"uint32\",\n + \ \"default\": \"5\",\n \"type\": \"integer\",\n + \ \"maximum\": \"50\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"mine\": {\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"id\": {\n \"description\": + \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true\n },\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"required\": + true,\n \"repeated\": true,\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Retrieve the list + of streams associated with the given channel. --\"\n },\n \"update\": + {\n \"id\": \"youtube.liveStreams.update\",\n \"description\": + \"Updates an existing stream for the authenticated user.\",\n \"request\": + {\n \"$ref\": \"LiveStream\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"httpMethod\": + \"PUT\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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 @@ -2031,76 +2089,62 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.liveStreams.update\",\n + for each separate channel.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"response\": {\n \"$ref\": \"LiveStream\"\n }\n + \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.insert\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return LiveStreams with the given ids from - Stubby or Apiary.\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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 + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/liveStreams\",\n \"description\": + \"Inserts a new stream for the authenticated user.\",\n \"response\": + {\n \"$ref\": \"LiveStream\"\n },\n \"request\": + {\n \"$ref\": \"LiveStream\"\n },\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"default\": - \"5\",\n \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively + for each separate channel.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true,\n \"description\": + \"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, content_details, and status.\",\n + \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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. @@ -2109,23 +2153,66 @@ interactions: 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.\"\n }\n },\n \"id\": \"youtube.liveStreams.list\",\n - \ \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\"\n }\n - \ }\n },\n \"thumbnails\": {\n \"methods\": {\n \"set\": - {\n \"httpMethod\": \"POST\",\n \"supportsMediaUpload\": - true,\n \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"description\": \"As this is not an insert in a strict - sense (it supports uploading/setting of a thumbnail for multiple videos, which - doesn't result in creation of a single resource), I use a custom verb here.\",\n + owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"parameterOrder\": [\n + \ \"part\"\n ]\n }\n }\n },\n \"channelSections\": + {\n \"methods\": {\n \"insert\": {\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n + \ },\n \"response\": {\n \"$ref\": \"ChannelSection\"\n + \ },\n \"id\": \"youtube.channelSections.insert\",\n \"path\": + \"youtube/v3/channelSections\",\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"parameters\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n - \ \"required\": true,\n \"location\": \"query\"\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"httpMethod\": \"POST\"\n },\n \"list\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"id\": \"youtube.channelSections.list\",\n \"response\": + {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"parameters\": + {\n \"hl\": {\n \"description\": \"Return content + in specified language\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return the ChannelSections owned by the specified channel ID.\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"description\": + \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n + \ \"location\": \"query\",\n \"repeated\": true\n \ },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -2134,79 +2221,121 @@ interactions: content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"mediaUpload\": {\n \"maxSize\": \"2097152\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ }\n }\n },\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"path\": \"youtube/v3/thumbnails/set\",\n \"id\": \"youtube.thumbnails.set\"\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"insert\": - {\n \"mediaUpload\": {\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"274877906944\",\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/videos\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ }\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\"\n },\n - \ \"stabilize\": {\n \"description\": \"Should stabilize - be applied to the upload.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"autoLevels\": {\n \"description\": - \"Should auto-levels be applied to the upload.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"notifySubscribers\": {\n \"type\": - \"boolean\",\n \"description\": \"Notify the channel subscribers - about the new video. As default, the notification is enabled.\",\n \"location\": - \"query\",\n \"default\": \"true\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"path\": \"youtube/v3/videos\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"id\": \"youtube.videos.insert\",\n \"supportsMediaUpload\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"parameters\": {\n \"id\": + individual channel. The CMS account that the user authenticates with must + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"mine\": + {\n \"description\": \"Return the ChannelSections owned by the + authenticated user.\",\n \"type\": \"boolean\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"path\": + \"youtube/v3/channelSections\",\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"httpMethod\": \"GET\"\n },\n \"update\": {\n \"id\": + \"youtube.channelSections.update\",\n \"httpMethod\": \"PUT\",\n + \ \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"repeated\": + true,\n \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Updates + an existing resource.\",\n \"response\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"request\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"path\": + \"youtube/v3/channelSections\"\n },\n \"delete\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Deletes a resource.\",\n \"httpMethod\": + \"DELETE\",\n \"flatPath\": \"youtube/v3/channelSections\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true\n }\n },\n \"path\": + \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.delete\",\n + \ \"parameterOrder\": [\n \"id\"\n ]\n }\n + \ }\n },\n \"liveChatModerators\": {\n \"methods\": {\n \"list\": + {\n \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n + \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"required\": true,\n + \ \"description\": \"The *part* parameter specifies the liveChatModerator + resource parts that the API response will include. Supported values are id + and snippet.\",\n \"location\": \"query\"\n },\n \"liveChatId\": + {\n \"type\": \"string\",\n \"description\": \"The + id of the live chat for which moderators should be returned.\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"maxResults\": + {\n \"location\": \"query\",\n \"minimum\": \"0\",\n + \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"type\": \"integer\",\n + \ \"format\": \"uint32\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n }\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n + \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.liveChatModerators.list\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n + \ }\n },\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": + \"youtube/v3/liveChat/moderators\",\n \"id\": \"youtube.liveChatModerators.delete\",\n + \ \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes + a chat moderator.\"\n },\n \"insert\": {\n \"description\": + \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.liveChatModerators.insert\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"response\": + {\n \"$ref\": \"LiveChatModerator\"\n },\n \"path\": + \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"request\": {\n \"$ref\": \"LiveChatModerator\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n + \ \"required\": true,\n \"location\": \"query\"\n + \ }\n },\n \"httpMethod\": \"POST\"\n }\n + \ }\n },\n \"playlistItems\": {\n \"methods\": {\n \"delete\": + {\n \"path\": \"youtube/v3/playlistItems\",\n \"description\": + \"Deletes a resource.\",\n \"parameters\": {\n \"id\": {\n \"location\": \"query\",\n \"required\": true,\n \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*Note:* This parameter is intended exclusively @@ -2216,34 +2345,27 @@ interactions: This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"path\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.videos.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"rate\": {\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"path\": \"youtube/v3/videos/rate\",\n \"httpMethod\": + provide authentication credentials for each individual channel. The CMS account + that the user authenticates with must be linked to the specified YouTube content + owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"parameterOrder\": [\n + \ \"id\"\n ],\n \"id\": \"youtube.playlistItems.delete\",\n + \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"DELETE\"\n },\n \"insert\": {\n + \ \"id\": \"youtube.playlistItems.insert\",\n \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Adds a like or dislike rating to - a video or removes a rating from a video.\",\n \"id\": \"youtube.videos.rate\",\n - \ \"parameterOrder\": [\n \"id\",\n \"rating\"\n - \ ],\n \"parameters\": {\n \"rating\": {\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"required\": true,\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"type\": \"string\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n }\n },\n - \ \"getRating\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + \ ],\n \"description\": \"Inserts a new resource into this + collection.\",\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n + \ },\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -2254,1021 +2376,981 @@ interactions: provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"VideoGetRatingResponse\"\n },\n \"description\": \"Retrieves - the ratings that the authorized user gave to a list of specified videos.\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.videos.getRating\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos/getRating\",\n \"path\": - \"youtube/v3/videos/getRating\"\n },\n \"list\": {\n \"parameters\": - {\n \"id\": {\n \"description\": \"Return videos with - the given ids.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"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 + \"query\"\n }\n },\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/playlistItems\"\n },\n \"list\": {\n \"id\": + \"youtube.playlistItems.list\",\n \"response\": {\n \"$ref\": + \"PlaylistItemListResponse\"\n },\n \"parameters\": {\n + \ \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"required\": true,\n \"description\": \"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 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.\",\n - \ \"location\": \"query\"\n },\n \"hl\": - {\n \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"myRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxHeight\": - {\n \"maximum\": \"8192\",\n \"type\": \"integer\",\n - \ \"minimum\": \"72\",\n \"format\": \"int32\",\n - \ \"location\": \"query\"\n },\n \"locale\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"maxWidth\": {\n \"minimum\": \"72\",\n - \ \"location\": \"query\",\n \"maximum\": \"8192\",\n - \ \"type\": \"integer\",\n \"format\": \"int32\",\n - \ \"description\": \"Return the player with maximum height specified - in\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"minimum\": \"1\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"description\": - \"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.\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"description\": - \"Use a chart that is specific to the specified region\",\n \"type\": - \"string\"\n },\n \"chart\": {\n \"enum\": - [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ],\n - \ \"description\": \"Return the videos that are in the specified - chart.\",\n \"type\": \"string\"\n },\n \"videoCategoryId\": - {\n \"type\": \"string\",\n \"description\": \"Use - chart that is specific to the specified video category\",\n \"location\": - \"query\",\n \"default\": \"0\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + 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.\"\n },\n \"playlistId\": + {\n \"description\": \"Return the playlist items within the given + playlist.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"minimum\": + \"0\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"format\": \"uint32\",\n \"type\": \"integer\",\n + \ \"default\": \"5\",\n \"location\": \"query\",\n + \ \"maximum\": \"50\"\n },\n \"id\": {\n + \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"Return the playlist items associated + with the given video ID.\",\n \"location\": \"query\"\n }\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"response\": {\n - \ \"$ref\": \"VideoListResponse\"\n },\n \"id\": - \"youtube.videos.list\"\n },\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"id\": \"youtube.videos.update\",\n \"path\": \"youtube/v3/videos\",\n - \ \"description\": \"Updates an existing resource.\",\n \"response\": - {\n \"$ref\": \"Video\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"description\": + \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"httpMethod\": + \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/playlistItems\"\n },\n \"update\": + {\n \"id\": \"youtube.playlistItems.update\",\n \"description\": + \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"response\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"path\": + \"youtube/v3/playlistItems\",\n \"httpMethod\": \"PUT\",\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n }\n },\n \"request\": - {\n \"$ref\": \"Video\"\n },\n \"flatPath\": - \"youtube/v3/videos\"\n },\n \"reportAbuse\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [],\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n - \ \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n \"id\": - \"youtube.videos.reportAbuse\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Report abuse for a video.\"\n }\n }\n - \ },\n \"tests\": {\n \"methods\": {\n \"insert\": {\n \"response\": - {\n \"$ref\": \"TestItem\"\n },\n \"flatPath\": - \"youtube/v3/tests\",\n \"path\": \"youtube/v3/tests\",\n \"description\": - \"POST method.\",\n \"id\": \"youtube.tests.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"request\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n }\n }\n }\n },\n \"superChatEvents\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"path\": \"youtube/v3/superChatEvents\",\n \"parameters\": - {\n \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the superChatEvent - resource parts that the API response will include. This parameter is currently - not supported.\",\n \"required\": true\n },\n \"hl\": - {\n \"description\": \"Return rendered funding amounts in specified - language.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"minimum\": \"1\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.superChatEvents.list\"\n - \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n - \ \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.i18nRegions.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the i18nRegion resource properties that the API response will include. Set - the parameter value to snippet.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"default\": \"en_US\"\n }\n },\n \"response\": - {\n \"$ref\": \"I18nRegionListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/i18nRegions\",\n \"flatPath\": \"youtube/v3/i18nRegions\"\n - \ }\n }\n }\n },\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"description\": \"The YouTube Data API v3 is an API that provides access - to YouTube data, such as videos, playlists, and channels.\",\n \"parameters\": - {\n \"upload_protocol\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", - \\\"multipart\\\").\"\n },\n \"uploadType\": {\n \"location\": - \"query\",\n \"description\": \"Legacy upload protocol for media (e.g. - \\\"media\\\", \\\"multipart\\\").\",\n \"type\": \"string\"\n },\n - \ \"oauth_token\": {\n \"location\": \"query\",\n \"description\": - \"OAuth 2.0 token for the current user.\",\n \"type\": \"string\"\n },\n - \ \"prettyPrint\": {\n \"location\": \"query\",\n \"description\": - \"Returns response with indentations and line breaks.\",\n \"default\": - \"true\",\n \"type\": \"boolean\"\n },\n \"key\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": \"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.\"\n },\n - \ \"quotaUser\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"alt\": {\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"location\": \"query\",\n - \ \"default\": \"json\",\n \"description\": \"Data format for response.\",\n - \ \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"type\": \"string\"\n },\n \"callback\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": \"JSONP\"\n - \ },\n \"access_token\": {\n \"description\": \"OAuth access token.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"fields\": - {\n \"type\": \"string\",\n \"description\": \"Selector specifying - which fields to include in a partial response.\",\n \"location\": \"query\"\n - \ },\n \"$.xgafv\": {\n \"location\": \"query\",\n \"enum\": - [\n \"1\",\n \"2\"\n ],\n \"description\": \"V1 error - format.\",\n \"enumDescriptions\": [\n \"v1 error format\",\n - \ \"v2 error format\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"ownerDomain\": \"google.com\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"schemas\": {\n \"VideoListResponse\": {\n \"properties\": {\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": + 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.\",\n \"required\": + true,\n \"location\": \"query\",\n \"repeated\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*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.\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ]\n }\n + \ }\n }\n },\n \"version\": \"v3\",\n \"canonicalName\": \"YouTube\",\n + \ \"title\": \"YouTube Data API v3\",\n \"fullyEncodeReservedExpansion\": + true,\n \"ownerName\": \"Google\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n + \ \"ownerDomain\": \"google.com\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n + \ \"schemas\": {\n \"I18nLanguage\": {\n \"properties\": {\n \"kind\": + {\n \"default\": \"youtube#i18nLanguage\",\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#i18nLanguage\\\".\"\n },\n \"snippet\": + {\n \"$ref\": \"I18nLanguageSnippet\",\n \"description\": + \"The snippet object contains basic details about the i18n language, such + as language code and human-readable name.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"id\": {\n \"description\": \"The + ID that YouTube uses to uniquely identify the i18n language.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"I18nLanguage\",\n \"description\": \"An *i18nLanguage* resource identifies + a UI language currently supported by YouTube.\"\n },\n \"VideoListResponse\": + {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#videoListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Video\"\n },\n \"type\": \"array\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"Video\"\n },\n \"type\": \"array\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": + \"VideoListResponse\",\n \"type\": \"object\"\n },\n \"I18nRegionListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"default\": + \"youtube#i18nRegionListResponse\",\n \"type\": \"string\"\n },\n \ \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoListResponse\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoListResponse\"\n - \ },\n \"ChannelSection\": {\n \"properties\": {\n \"localizations\": - {\n \"additionalProperties\": {\n \"$ref\": \"ChannelSectionLocalization\"\n - \ },\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelSection\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSection\\\".\"\n },\n \"targeting\": - {\n \"description\": \"The targeting object contains basic targeting - settings about the channel section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\",\n \"$ref\": - \"ChannelSectionContentDetails\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel section.\"\n }\n },\n \"id\": \"ChannelSection\",\n - \ \"type\": \"object\"\n },\n \"GeoPoint\": {\n \"type\": \"object\",\n - \ \"id\": \"GeoPoint\",\n \"description\": \"Geographical coordinates - of a point, in WGS84.\",\n \"properties\": {\n \"longitude\": - {\n \"type\": \"number\",\n \"description\": \"Longitude - in degrees.\",\n \"format\": \"double\"\n },\n \"latitude\": - {\n \"description\": \"Latitude in degrees.\",\n \"type\": - \"number\",\n \"format\": \"double\"\n },\n \"altitude\": - {\n \"description\": \"Altitude above the reference ellipsoid, in - meters.\",\n \"type\": \"number\",\n \"format\": \"double\"\n - \ }\n }\n },\n \"VideoProjectDetails\": {\n \"type\": - \"object\",\n \"properties\": {},\n \"id\": \"VideoProjectDetails\",\n - \ \"description\": \"DEPRECATED. b/157517979: This part was never populated - after it was added. However, it sees non-zero traffic because there is generated - client code in the wild that refers to it [1]. We keep this field and do NOT - remove it because otherwise V3 would return an error when this part gets requested - [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"VideoAbuseReport\": {\n \"properties\": {\n \"secondaryReasonId\": - {\n \"type\": \"string\",\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\"\n },\n \"comments\": {\n \"type\": \"string\",\n - \ \"description\": \"Additional comments regarding the abuse report.\"\n - \ },\n \"reasonId\": {\n \"description\": \"The high-level, - or primary, reason that the content is abusive. The value is an abuse report - reason ID.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n },\n \"language\": - {\n \"type\": \"string\",\n \"description\": \"The language - that the content was viewed in.\"\n }\n },\n \"id\": \"VideoAbuseReport\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamStatus\": {\n \"type\": - \"object\",\n \"description\": \"Brief description of the live stream - status.\",\n \"id\": \"LiveStreamStatus\",\n \"properties\": {\n - \ \"healthStatus\": {\n \"description\": \"The health status - of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n },\n - \ \"streamStatus\": {\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n }\n },\n \"LiveChatMessage\": - {\n \"type\": \"object\",\n \"properties\": {\n \"authorDetails\": - {\n \"description\": \"The authorDetails object contains basic details - about the user that posted this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatMessage\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the message.\",\n \"$ref\": - \"LiveChatMessageSnippet\"\n }\n },\n \"description\": \"A - *liveChatMessage* resource represents a chat message in a YouTube Live Chat.\",\n - \ \"id\": \"LiveChatMessage\"\n },\n \"CommentThreadListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"description\": \"A list of comment threads that - match the request criteria.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#commentThreadListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n }\n },\n \"id\": \"CommentThreadListResponse\"\n - \ },\n \"ThumbnailSetResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"default\": \"youtube#thumbnailSetResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"description\": \"A list of thumbnails.\",\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ThumbnailSetResponse\"\n },\n \"ThirdPartyLink\": {\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n \"default\": - \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the status of the link.\",\n - \ \"$ref\": \"ThirdPartyLinkStatus\"\n },\n \"linkingToken\": - {\n \"type\": \"string\",\n \"description\": \"The linking_token - identifies a YouTube account and channel with which the third party account - is linked.\"\n }\n },\n \"description\": \"A *third party - account link* resource represents a link between a YouTube account or a channel - and an account on a third-party service.\",\n \"id\": \"ThirdPartyLink\"\n - \ },\n \"LiveStream\": {\n \"properties\": {\n \"status\": - {\n \"description\": \"The status object contains information about - live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\",\n - \ \"$ref\": \"LiveStreamSnippet\"\n },\n \"etag\": {\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"annotations\": {\n - \ \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the stream.\",\n \"type\": \"string\"\n - \ },\n \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\"\n },\n \"contentDetails\": {\n \"description\": - \"The content_details object contains information about the stream, including - the closed captions ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveStream\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n - \ }\n },\n \"id\": \"LiveStream\",\n \"type\": \"object\",\n - \ \"description\": \"A live stream describes a live ingestion point.\"\n - \ },\n \"VideoMonetizationDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"Details about monetization of a YouTube Video.\",\n - \ \"id\": \"VideoMonetizationDetails\",\n \"properties\": {\n \"access\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - value of access indicates whether the video can be monetized or not.\"\n }\n - \ }\n },\n \"ChannelProfileDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelProfileDetails\",\n \"properties\": {\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"displayName\": {\n \"description\": \"The channel's display - name.\",\n \"type\": \"string\"\n },\n \"channelUrl\": - {\n \"description\": \"The channel's URL.\",\n \"type\": - \"string\"\n }\n }\n },\n \"TestItemTestItemSnippet\": {\n - \ \"id\": \"TestItemTestItemSnippet\",\n \"properties\": {},\n \"type\": - \"object\"\n },\n \"VideoGetRatingResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoGetRatingResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"VideoRating\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of ratings that match the - request criteria.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"id\": \"VideoGetRatingResponse\"\n },\n \"ActivityContentDetailsComment\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource associated with the comment.\"\n - \ }\n },\n \"description\": \"Information about a resource - that received a comment.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsComment\"\n - \ },\n \"LiveChatMessageListResponse\": {\n \"id\": \"LiveChatMessageListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatMessageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n \"type\": \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"LiveChatMessage\"\n }\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"visitorId\": {\n - \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": - \"string\"\n },\n \"pollingIntervalMillis\": {\n \"description\": - \"The amount of time the client should wait before polling again.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"offlineAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the underlying stream went offline.\",\n \"type\": - \"string\"\n }\n }\n },\n \"Member\": {\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n \"description\": - \"The snippet object contains basic details about the member.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n \"default\": - \"youtube#member\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"Member\",\n \"description\": \"A *member* resource represents a member - for a YouTube channel. A member provides recurring monetary support to a creator - and receives special benefits.\"\n },\n \"VideoCategoryListResponse\": - {\n \"id\": \"VideoCategoryListResponse\",\n \"properties\": {\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"description\": \"A list of regions where YouTube is available. + In this map, the i18n region ID is the map key, and its value is the corresponding + i18nRegion resource.\",\n \"items\": {\n \"$ref\": \"I18nRegion\"\n + \ }\n }\n },\n \"id\": \"I18nRegionListResponse\"\n + \ },\n \"ThirdPartyLinkSnippet\": {\n \"id\": \"ThirdPartyLinkSnippet\",\n + \ \"type\": \"object\",\n \"description\": \"Basic information about + a third party account link, including its type and type-specific information.\",\n + \ \"properties\": {\n \"type\": {\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"A link + that is connecting (or about to connect) a channel with a store on a merchandising + platform in order to enable retail commerce capabilities for that channel + on YouTube.\"\n ],\n \"description\": \"Type of the link + named after the entities that are being linked.\"\n },\n \"channelToStoreLink\": + {\n \"description\": \"Information specific to a link between a channel + and a store on a merchandising platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n + \ }\n }\n },\n \"MonitorStreamInfo\": {\n \"type\": + \"object\",\n \"properties\": {\n \"broadcastStreamDelayMs\": + {\n \"type\": \"integer\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"If you have set the enableMonitorStream property + to true, then this property determines the length of the live broadcast delay.\",\n + \ \"format\": \"uint32\"\n },\n \"enableMonitorStream\": + {\n \"type\": \"boolean\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"This value determines whether the monitor stream + is enabled for the broadcast. If the monitor stream is enabled, then YouTube + will broadcast the event content on a special stream intended only for the + broadcaster's consumption. The broadcaster can use the stream to review the + event content and also to identify the optimal times to insert cuepoints. + You need to set this value to true if you intend to have a broadcast delay + for your event. *Note:* This property cannot be updated once the broadcast + is in the testing or live state.\"\n },\n \"embedHtml\": {\n + \ \"type\": \"string\",\n \"description\": \"HTML code that + embeds a player that plays the monitor stream.\"\n }\n },\n \"description\": + \"Settings and Info of the monitor stream\",\n \"id\": \"MonitorStreamInfo\"\n + \ },\n \"LiveChatModeratorListResponse\": {\n \"properties\": {\n \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoCategoryListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"VideoCategory\"\n },\n - \ \"description\": \"A list of video categories that can be associated - with YouTube videos. In this map, the video category ID is the map key, and - its value is the corresponding videoCategory resource.\",\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\"\n },\n \"ActivityListResponse\": - {\n \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n + \"youtube#liveChatModeratorListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": + \"A list of moderators that match the request criteria.\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"default\": \"youtube#activityListResponse\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Activity\"\n }\n }\n },\n - \ \"id\": \"ActivityListResponse\",\n \"type\": \"object\"\n },\n - \ \"ActivityContentDetailsLike\": {\n \"description\": \"Information - about a resource that received a positive (like) rating.\",\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsLike\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\"\n - \ }\n }\n },\n \"Activity\": {\n \"id\": \"Activity\",\n - \ \"properties\": {\n \"contentDetails\": {\n \"$ref\": - \"ActivityContentDetails\",\n \"description\": \"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.\"\n },\n \"snippet\": - {\n \"$ref\": \"ActivitySnippet\",\n \"description\": \"The - snippet object contains basic details about the activity, including the activity's - type and group ID.\"\n },\n \"kind\": {\n \"default\": - \"youtube#activity\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the activity.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"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.\"\n },\n \"ChannelBrandingSettings\": - {\n \"description\": \"Branding properties of a YouTube channel.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"image\": {\n - \ \"$ref\": \"ImageSettings\",\n \"description\": \"Branding - properties for branding images.\"\n },\n \"channel\": {\n \"description\": - \"Branding properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n - \ },\n \"hints\": {\n \"description\": \"Additional - experimental branding properties.\",\n \"items\": {\n \"$ref\": - \"PropertyValue\"\n },\n \"type\": \"array\"\n },\n - \ \"watch\": {\n \"$ref\": \"WatchSettings\",\n \"description\": - \"Branding properties for the watch page.\"\n }\n },\n \"id\": - \"ChannelBrandingSettings\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"properties\": {\n \"giftMembershipsLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the level of the gift - memberships purchased by the user. The Level names are defined by the YouTube - channel offering the Membership. In some situations this field isn't filled.\"\n - \ },\n \"giftMembershipsCount\": {\n \"type\": \"integer\",\n - \ \"description\": \"The number of gift memberships purchased by the - user.\",\n \"format\": \"int32\"\n }\n },\n \"id\": - \"LiveChatMembershipGiftingDetails\",\n \"type\": \"object\"\n },\n - \ \"VideoProcessingDetails\": {\n \"description\": \"Describes processing - status and progress and availability of some other Video resource parts.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"processingProgress\": - {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n },\n \"processingFailureReason\": - {\n \"description\": \"The reason that YouTube failed to process - the video. This property will only have a value if the processingStatus property's - value is failed.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ]\n },\n - \ \"editorSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether video editing suggestions, - which might improve video quality or the playback experience, are available - for the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"tagSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether keyword (tag) - suggestions are available for the video. Tags can be added to a video's metadata - to make it easier for other users to find the video. You can retrieve these - suggestions by requesting the suggestions part in your videos.list() request.\",\n - \ \"type\": \"string\"\n },\n \"processingIssuesAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether the video processing engine has generated suggestions that - might improve YouTube's ability to process the the video, warnings that explain - video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\"\n },\n \"thumbnailsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether thumbnail images have been generated for the video.\"\n - \ },\n \"fileDetailsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether file details are - available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\"\n },\n - \ \"processingStatus\": {\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's processing status. This value indicates - whether YouTube was able to process the video or if the video is still being - processed.\"\n }\n },\n \"id\": \"VideoProcessingDetails\"\n - \ },\n \"VideoAbuseReportReasonListResponse\": {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the next page + in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveChatModeratorListResponse\"\n },\n \"ChannelSectionContentDetails\": + {\n \"id\": \"ChannelSectionContentDetails\",\n \"description\": + \"Details about a channelsection, including playlists and channels.\",\n \"properties\": + {\n \"channels\": {\n \"description\": \"The channel ids for + type multiple_channels.\",\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"playlists\": + {\n \"type\": \"array\",\n \"description\": \"The playlist + ids for type single_playlist and multiple_playlists. For singlePlaylist, only + one playlistId is allowed.\",\n \"items\": {\n \"type\": + \"string\"\n }\n }\n },\n \"type\": \"object\"\n + \ },\n \"ThumbnailSetResponse\": {\n \"id\": \"ThumbnailSetResponse\",\n \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - valid abuse reasons that are used with `video.ReportAbuse`.\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportReason\"\n }\n },\n - \ \"visitorId\": {\n \"description\": \"The `visitorId` identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n }\n - \ },\n \"ChannelConversionPings\": {\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"pings\": {\n \"type\": \"array\",\n \"description\": - \"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.\",\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ }\n }\n },\n \"id\": \"ChannelConversionPings\"\n - \ },\n \"LiveChatModeratorSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatModeratorSnippet\",\n \"properties\": {\n \"moderatorDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the moderator.\"\n },\n \"liveChatId\": {\n - \ \"description\": \"The ID of the live chat this moderator can act - on.\",\n \"type\": \"string\"\n }\n }\n },\n \"LiveBroadcastSnippet\": - {\n \"id\": \"LiveBroadcastSnippet\",\n \"properties\": {\n \"isDefaultBroadcast\": - {\n \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\",\n \"type\": \"boolean\"\n },\n - \ \"scheduledEndTime\": {\n \"description\": \"The date and - time that the broadcast is scheduled to end.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"scheduledStartTime\": - {\n \"format\": \"date-time\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The date and time - that the broadcast is scheduled to start.\",\n \"type\": \"string\"\n - \ },\n \"actualEndTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the broadcast actually ended. This information is only available - once the broadcast's state is complete.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the broadcast. For each nested object in this object, the key is the name - of the thumbnail image, and the value is an object that contains other information - about the thumbnail.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"description\": {\n \"description\": \"The broadcast's description. - As with the title, you can set this field by modifying the broadcast resource - or by setting the description field of the corresponding video resource.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\",\n \"type\": \"string\"\n },\n \"actualStartTime\": - {\n \"description\": \"The date and time that the broadcast actually - started. This information is only available once the broadcast's state is - live.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"title\": {\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"liveChatId\": {\n \"description\": - \"The id of the live chat for this broadcast.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the broadcast was added to YouTube's live broadcast schedule.\"\n - \ }\n },\n \"description\": \"Basic broadcast information.\",\n - \ \"type\": \"object\"\n },\n \"InvideoPosition\": {\n \"id\": - \"InvideoPosition\",\n \"description\": \"Describes the spatial position - of a visual widget inside a video. It is a union of various position types, - out of which only will be set one.\",\n \"properties\": {\n \"type\": - {\n \"description\": \"Defines the position type.\",\n \"enum\": - [\n \"corner\"\n ],\n \"enumDescriptions\": [\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"cornerPosition\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"Describes in which corner of the - video the visual widget will appear.\",\n \"enum\": [\n \"topLeft\",\n - \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n - \ ]\n }\n },\n \"type\": \"object\"\n },\n \"ChannelSectionSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"position\": - {\n \"description\": \"The position of the channel section in the - channel.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n + the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#thumbnailSetResponse\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of thumbnails.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n }\n }\n },\n \"ActivityContentDetailsUpload\": + {\n \"type\": \"object\",\n \"properties\": {\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the uploaded video.\"\n }\n },\n + \ \"id\": \"ActivityContentDetailsUpload\",\n \"description\": \"Information + about the uploaded video.\"\n },\n \"LiveStreamConfigurationIssue\": + {\n \"properties\": {\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The long-form description of the + issue and how to resolve it.\"\n },\n \"reason\": {\n \"description\": + \"The short-form reason for this issue.\",\n \"type\": \"string\"\n + \ },\n \"type\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of the channel section.\",\n - \ \"enum\": [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ],\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel - section's title for multiple_playlists and multiple_channels.\"\n },\n - \ \"style\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"description\": \"The - style of the channel section.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel section's default title and description.\"\n },\n \"localized\": - {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": - \"Localized title, read-only.\"\n },\n \"channelId\": {\n \"type\": + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The kind of error happening.\",\n \"enum\": [\n \"gopSizeOver\",\n + \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n + \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n + \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n + \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n + \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n + \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n + \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n + \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n + \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n + \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n + \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n + \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n + \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n + \ ]\n },\n \"severity\": {\n \"enum\": [\n + \ \"info\",\n \"warning\",\n \"error\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"How severe this + issue is to the stream.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ]\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveStreamConfigurationIssue\"\n },\n \"VideoSuggestionsTagSuggestion\": + {\n \"type\": \"object\",\n \"description\": \"A single tag suggestion + with it's relevance information.\",\n \"id\": \"VideoSuggestionsTagSuggestion\",\n + \ \"properties\": {\n \"tag\": {\n \"type\": \"string\",\n + \ \"description\": \"The keyword tag suggested for the video.\"\n + \ },\n \"categoryRestricts\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"A set of video categories + for which the tag is relevant. You can use this information to display appropriate + tag suggestions based on the video category that the video uploader associates + with the video. By default, tag suggestions are relevant for all categories + if there are no restricts defined for the keyword.\",\n \"type\": + \"array\"\n }\n }\n },\n \"Activity\": {\n \"properties\": + {\n \"kind\": {\n \"default\": \"youtube#activity\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the activity, including + the activity's type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that published the channel section.\"\n }\n },\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\",\n \"id\": \"ChannelSectionSnippet\"\n },\n - \ \"ChannelSectionContentDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"channels\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The channel ids for type multiple_channels.\"\n },\n \"playlists\": - {\n \"type\": \"array\",\n \"description\": \"The playlist - ids for type single_playlist and multiple_playlists. For singlePlaylist, only - one playlistId is allowed.\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"id\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"Details about a channelsection, including playlists - and channels.\"\n },\n \"CommentSnippetAuthorChannelId\": {\n \"type\": - \"object\",\n \"description\": \"The id of the author's YouTube channel, - if any.\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"ChannelContentOwnerDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"contentOwner\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the content owner linked - to the channel.\"\n },\n \"timeLinked\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the channel - was linked to the content owner.\",\n \"format\": \"date-time\"\n - \ }\n },\n \"description\": \"The contentOwnerDetails object - encapsulates channel data that is relevant for YouTube Partners linked with - the channel.\",\n \"id\": \"ChannelContentOwnerDetails\"\n },\n \"PlaylistItemContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistItemContentDetails\",\n - \ \"properties\": {\n \"note\": {\n \"type\": \"string\",\n - \ \"description\": \"A user-generated note for this item.\"\n },\n - \ \"videoPublishedAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the video was published to YouTube.\",\n \"format\": - \"date-time\"\n },\n \"endAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The time, measured in seconds from the start - of the video, when the video should stop playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) By default, assume that the video.endTime - is the end of the video.\"\n },\n \"startAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify a video. To retrieve the video resource, set the id query - parameter to this value in your API request.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveChatModeratorListResponse\": {\n \"id\": - \"LiveChatModeratorListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": + identify the activity.\"\n },\n \"contentDetails\": {\n \"description\": + \"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.\",\n \"$ref\": + \"ActivityContentDetails\"\n }\n },\n \"id\": \"Activity\",\n + \ \"type\": \"object\",\n \"description\": \"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.\"\n },\n \"CommentListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"prevPageToken\": {\n \"description\": + resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n + \ \"default\": \"youtube#commentListResponse\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"pageInfo\": + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"Comment\"\n + \ },\n \"type\": \"array\",\n \"description\": \"A + list of comments that match the request criteria.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of moderators that match the - request criteria.\",\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n - \ }\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n }\n },\n \"MembershipsDuration\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsDuration\",\n \"properties\": - {\n \"memberSince\": {\n \"description\": \"The date and time - when the user became a continuous member across all levels.\",\n \"type\": - \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"format\": - \"int32\",\n \"type\": \"integer\",\n \"description\": \"The - cumulative time the user has been a member across all levels in complete months - (the time is rounded down to the nearest integer).\"\n }\n }\n - \ },\n \"LocalizedString\": {\n \"id\": \"LocalizedString\",\n \"type\": - \"object\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n },\n \"language\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveBroadcastStatus\": {\n \"type\": - \"object\",\n \"properties\": {\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"The broadcast's - privacy status. Note that the broadcast represents exactly one YouTube video, - so the privacy settings are identical to those supported for videos. In addition, - you can set this field by modifying the broadcast resource or by setting the - privacyStatus field of the corresponding video resource.\",\n \"type\": - \"string\"\n },\n \"liveBroadcastPriority\": {\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"description\": - \"Priority of the live broadcast event (internal state).\",\n \"enum\": - [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ],\n \"type\": - \"string\"\n },\n \"lifeCycleStatus\": {\n \"enum\": - [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"enumDescriptions\": [\n \"No value or the - value is unknown.\",\n \"Incomplete settings, but otherwise valid\",\n - \ \"Complete settings\",\n \"Visible only to partner, - may need special UI treatment\",\n \"Viper is recording; this means - the \\\"clock\\\" is running\",\n \"The broadcast is finished.\",\n - \ \"This broadcast was removed by admin action\",\n \"Transition - into TESTING has been requested\",\n \"Transition into LIVE has - been requested\"\n ],\n \"type\": \"string\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"description\": \"This - field will be set to True if the creator declares the broadcast to be kids - only: go/live-cw-work.\",\n \"type\": \"boolean\"\n },\n \"madeForKids\": - {\n \"description\": \"Whether the broadcast is made for kids or - not, decided by YouTube instead of the creator. This field is read only.\",\n - \ \"type\": \"boolean\"\n },\n \"recordingStatus\": - {\n \"enumDescriptions\": [\n \"No value or the value - is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"enum\": - [\n \"liveBroadcastRecordingStatusUnspecified\",\n \"notRecording\",\n - \ \"recording\",\n \"recorded\"\n ],\n \"type\": - \"string\",\n \"description\": \"The broadcast's recording status.\"\n - \ }\n },\n \"id\": \"LiveBroadcastStatus\",\n \"description\": - \"Live broadcast state.\"\n },\n \"ChannelLocalization\": {\n \"description\": - \"Channel localization setting\",\n \"properties\": {\n \"title\": - {\n \"description\": \"The localized strings for channel's title.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"The localized strings for channel's description.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ChannelLocalization\",\n - \ \"type\": \"object\"\n },\n \"MembershipsDetails\": {\n \"properties\": - {\n \"highestAccessibleLevel\": {\n \"type\": \"string\",\n - \ \"description\": \"Id of the highest level that the user has access - to at the moment.\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n },\n - \ \"membershipsDurationAtLevels\": {\n \"items\": {\n \"$ref\": - \"MembershipsDurationAtLevel\"\n },\n \"description\": \"Data - about memberships duration on particular pricing levels.\",\n \"type\": - \"array\"\n },\n \"membershipsDuration\": {\n \"$ref\": - \"MembershipsDuration\",\n \"description\": \"Data about memberships - duration without taking into consideration pricing levels.\"\n },\n - \ \"accessibleLevels\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\"\n - \ }\n },\n \"id\": \"MembershipsDetails\",\n \"type\": - \"object\"\n },\n \"I18nRegionSnippet\": {\n \"properties\": {\n - \ \"name\": {\n \"description\": \"The human-readable name - of the region.\",\n \"type\": \"string\"\n },\n \"gl\": - {\n \"type\": \"string\",\n \"description\": \"The region - code as a 2-letter ISO country code.\"\n }\n },\n \"id\": - \"I18nRegionSnippet\",\n \"description\": \"Basic details about an i18n - region, such as region code and human-readable name.\",\n \"type\": \"object\"\n - \ },\n \"LiveStreamHealthStatus\": {\n \"id\": \"LiveStreamHealthStatus\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"status\": - {\n \"enum\": [\n \"good\",\n \"ok\",\n \"bad\",\n - \ \"noData\",\n \"revoked\"\n ],\n \"description\": - \"The status code of this stream\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"lastUpdateTimeSeconds\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The last time this status was updated (in seconds)\"\n },\n \"configurationIssues\": - {\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"type\": \"array\",\n \"description\": \"The - configurations issues on this stream\"\n }\n }\n },\n \"LiveChatModerator\": - {\n \"description\": \"A *liveChatModerator* resource represents a moderator - for a YouTube live chat. A chat moderator has the ability to ban/unban users - from a chat, remove message, etc.\",\n \"properties\": {\n \"snippet\": + pagination information.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"CommentListResponse\"\n },\n + \ \"Cuepoint\": {\n \"description\": \"Note that there may be a 5-second + end-point resolution issue. For instance, if a cuepoint comes in for 22:03:27, + we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. This is an + artifact of HLS.\",\n \"type\": \"object\",\n \"properties\": {\n + \ \"etag\": {\n \"type\": \"string\"\n },\n \"insertionOffsetTimeMs\": + {\n \"description\": \"The time when the cuepoint should be inserted + by offset to the broadcast actual start time.\",\n \"type\": \"string\",\n + \ \"format\": \"int64\"\n },\n \"cueType\": {\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n + \ \"cueTypeAd\"\n ]\n },\n \"durationSecs\": + {\n \"type\": \"integer\",\n \"description\": \"The duration + of this cuepoint.\",\n \"format\": \"uint32\"\n },\n \"walltimeMs\": + {\n \"description\": \"The wall clock time at which the cuepoint + should be inserted. Only one of insertion_offset_time_ms and walltime_ms may + be set at a time.\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"description\": \"The + identifier for cuepoint resource.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"Cuepoint\"\n },\n \"VideoTopicDetails\": {\n + \ \"type\": \"object\",\n \"id\": \"VideoTopicDetails\",\n \"properties\": + {\n \"topicCategories\": {\n \"type\": \"array\",\n \"description\": + \"A list of Wikipedia URLs that provide a high-level description of the video's + content.\",\n \"items\": {\n \"type\": \"string\"\n }\n + \ },\n \"topicIds\": {\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"A list of Freebase topic IDs that are centrally associated with the video. + These are topics that are centrally featured in the video, and it can be said + that the video is mainly about each of these. You can retrieve information + about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase + Topic API.\"\n },\n \"relevantTopicIds\": {\n \"type\": + \"array\",\n \"description\": \"Similar to topic_id, except that + these topics are merely relevant to the video. These are topics that may be + mentioned in, or appear in the video. You can retrieve information about each + topic using Freebase Topic API.\",\n \"items\": {\n \"type\": + \"string\"\n }\n }\n },\n \"description\": \"Freebase + topic information related to the video.\"\n },\n \"ActivityListResponse\": + {\n \"type\": \"object\",\n \"id\": \"ActivityListResponse\",\n + \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#activityListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"Activity\"\n },\n \"type\": \"array\"\n }\n }\n + \ },\n \"ThirdPartyLink\": {\n \"type\": \"object\",\n \"description\": + \"A *third party account link* resource represents a link between a YouTube + account or a channel and an account on a third-party service.\",\n \"id\": + \"ThirdPartyLink\",\n \"properties\": {\n \"etag\": {\n \"description\": + \"Etag of this resource\",\n \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": \"The snippet object contains basic details - about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": + about the third- party account link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n + \ },\n \"linkingToken\": {\n \"description\": \"The + linking_token identifies a YouTube account and channel with which the third + party account is linked.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLink\"\n + \ },\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n + \ \"description\": \"The status object contains information about + the status of the link.\"\n }\n }\n },\n \"ActivityContentDetailsBulletin\": + {\n \"description\": \"Details about a channel bulletin post.\",\n \"id\": + \"ActivityContentDetailsBulletin\",\n \"type\": \"object\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + associated with a bulletin post. @mutable youtube.activities.insert\"\n }\n + \ }\n },\n \"SearchListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"SearchListResponse\",\n \"properties\": {\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#searchListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n + \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\"\n },\n + \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\"\n },\n \"items\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"SearchResult\"\n },\n \"description\": \"Pagination information + for token pagination.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"regionCode\": {\n \"type\": + \"string\"\n }\n }\n },\n \"LiveChatGiftMembershipReceivedDetails\": + {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"properties\": + {\n \"associatedMembershipGiftingMessageId\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the membership gifting + message that is related to this gift membership. This ID will always refer + to a message whose type is 'membershipGiftingEvent'.\"\n },\n \"gifterChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the user that made the membership gifting purchase. This matches the `snippet.authorChannelId` + of the associated membership gifting message.\"\n },\n \"memberLevelName\": + {\n \"description\": \"The name of the Level at which the viewer + is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` + of the associated membership gifting message. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\"\n },\n \"ChannelSnippet\": {\n \"properties\": {\n \"localized\": + {\n \"$ref\": \"ChannelLocalization\",\n \"description\": + \"Localized title and description, read-only.\"\n },\n \"description\": + {\n \"description\": \"The description of the channel.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"description\": \"The + channel's title.\",\n \"type\": \"string\"\n },\n \"customUrl\": + {\n \"description\": \"The custom url of the channel.\",\n \"type\": + \"string\"\n },\n \"defaultLanguage\": {\n \"description\": + \"The language of the channel's default title and description.\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"format\": \"date-time\",\n \"description\": \"The date + and time that the channel was created.\"\n },\n \"country\": + {\n \"description\": \"The country of the channel.\",\n \"type\": + \"string\"\n },\n \"thumbnails\": {\n \"description\": + \"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. When displaying thumbnails + in your application, make sure that your code uses the image URLs exactly + as they are returned in API responses. For example, your application should + not use the http domain instead of the https domain in a URL returned in an + API response. Beginning in July 2018, channel thumbnail URLs will only be + available in the https domain, which is how the URLs appear in API responses. + After that time, you might see broken images in your application if it tries + to load YouTube images from the http domain. Thumbnail images might be empty + for newly created channels and might take up to one day to populate.\",\n + \ \"$ref\": \"ThumbnailDetails\"\n }\n },\n \"description\": + \"Basic details about a channel, including title, description and thumbnails.\",\n + \ \"id\": \"ChannelSnippet\",\n \"type\": \"object\"\n },\n \"ChannelSectionListResponse\": + {\n \"id\": \"ChannelSectionListResponse\",\n \"properties\": {\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"items\": {\n \"type\": \"array\",\n + \ \"description\": \"A list of ChannelSections that match the request + criteria.\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n + \ }\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n + \ \"default\": \"youtube#channelSectionListResponse\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelToStoreLinkDetails\": + {\n \"description\": \"Information specific to a store on a merchandising + platform linked to a YouTube channel.\",\n \"type\": \"object\",\n \"properties\": + {\n \"merchantId\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"Google Merchant Center id of the + store.\"\n },\n \"storeUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"Landing page of the store.\"\n },\n \"storeName\": + {\n \"description\": \"Name of the store.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"ChannelToStoreLinkDetails\"\n + \ },\n \"VideoStatus\": {\n \"type\": \"object\",\n \"id\": + \"VideoStatus\",\n \"description\": \"Basic details about a video category, + such as its localized title. Next Id: 18\",\n \"properties\": {\n \"publicStatsViewable\": + {\n \"description\": \"This value indicates if the extended video + statistics on the watch page can be viewed by everyone. Note that the view + count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert + youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"license\": + {\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n + \ \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n + \ ]\n },\n \"failureReason\": {\n \"enum\": + [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n + \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n + \ ],\n \"enumDescriptions\": [\n \"Unable to convert + video content.\",\n \"Invalid file format.\",\n \"Empty + file.\",\n \"File was too small.\",\n \"Unsupported + codec.\",\n \"Upload wasn't finished.\"\n ],\n \"type\": + \"string\",\n \"description\": \"This value explains why a video + failed to upload. This property is only present if the uploadStatus property + indicates that the upload failed.\"\n },\n \"privacyStatus\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's privacy status.\"\n + \ },\n \"publishAt\": {\n \"format\": \"date-time\",\n + \ \"type\": \"string\",\n \"description\": \"The date and + time when the video is scheduled to publish. It can be set only if the privacy + status of the video is private..\"\n },\n \"rejectionReason\": + {\n \"enum\": [\n \"copyright\",\n \"inappropriate\",\n + \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n + \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n + \ \"trademark\",\n \"legal\"\n ],\n \"description\": + \"This value explains why YouTube rejected an uploaded video. This property + is only present if the uploadStatus property indicates that the upload was + rejected.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"Copyright infringement.\",\n \"Inappropriate video + content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms + of use violation.\",\n \"Uploader account was suspended.\",\n \"Video + duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader + closed his/her account.\",\n \"Trademark infringement.\",\n \"An + unspecified legal reason.\"\n ]\n },\n \"madeForKids\": + {\n \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n },\n \"uploadStatus\": + {\n \"enumDescriptions\": [\n \"Video has been uploaded + but not processed yet.\",\n \"Video has been successfully processed.\",\n + \ \"Processing has failed. See FailureReason.\",\n \"Video + has been rejected. See RejectionReason.\",\n \"Video has been deleted.\"\n + \ ],\n \"description\": \"The status of the uploaded video.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"uploaded\",\n + \ \"processed\",\n \"failed\",\n \"rejected\",\n + \ \"deleted\"\n ]\n },\n \"embeddable\": + {\n \"description\": \"This value indicates if the video can be embedded + on another website. @mutable youtube.videos.insert youtube.videos.update\",\n + \ \"type\": \"boolean\"\n }\n }\n },\n \"MemberListResponse\": + {\n \"type\": \"object\",\n \"id\": \"MemberListResponse\",\n \"properties\": + {\n \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n \"default\": - \"youtube#liveChatModerator\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the moderator.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatModerator\",\n \"type\": \"object\"\n - \ },\n \"ImageSettings\": {\n \"id\": \"ImageSettings\",\n \"type\": - \"object\",\n \"description\": \"Branding properties for images associated - with the channel.\",\n \"properties\": {\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"bannerImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size high resolution (2276x377).\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\",\n - \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size medium/high resolution (960x263).\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"bannerTvLowImageUrl\": {\n \"description\": \"Banner image. - TV size low resolution (854x480).\",\n \"type\": \"string\"\n },\n - \ \"bannerExternalUrl\": {\n \"type\": \"string\",\n \"description\": - \"This is generated when a ChannelBanner.Insert request has succeeded for - the given channel.\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"largeBrandedBannerImageImapScript\": {\n \"$ref\": \"LocalizedProperty\",\n - \ \"description\": \"The image map script for the large banner image.\"\n - \ },\n \"bannerTvHighImageUrl\": {\n \"description\": - \"Banner image. TV size high resolution (1920x1080).\",\n \"type\": - \"string\"\n },\n \"bannerMobileImageUrl\": {\n \"description\": - \"Banner image. Mobile size (640x175).\",\n \"type\": \"string\"\n - \ },\n \"bannerTvImageUrl\": {\n \"description\": \"Banner - image. TV size extra high resolution (2120x1192).\",\n \"type\": - \"string\"\n },\n \"smallBrandedBannerImageImapScript\": {\n - \ \"$ref\": \"LocalizedProperty\",\n \"description\": \"The - image map script for the small banner image.\"\n },\n \"trackingImageUrl\": - {\n \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size medium resolution (1280x720).\"\n },\n \"bannerTabletImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n }\n }\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"properties\": {\n \"timeLeftMs\": {\n \"format\": - \"uint64\",\n \"description\": \"An estimate of the amount of time, - in millseconds, that YouTube needs to finish processing the video.\",\n \"type\": - \"string\"\n },\n \"partsProcessed\": {\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"partsTotal\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"An estimate of the total number - of parts that need to be processed for the video. The number may be updated - with more precise estimates while YouTube processes the video.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Video processing - progress and completion time estimate.\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"CommentThreadReplies\": {\n \"type\": \"object\",\n \"description\": - \"Comments written in (direct or indirect) reply to the top level comment.\",\n - \ \"properties\": {\n \"comments\": {\n \"type\": \"array\",\n - \ \"description\": \"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.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n }\n }\n },\n \"id\": - \"CommentThreadReplies\"\n },\n \"LiveChatTextMessageDetails\": {\n - \ \"id\": \"LiveChatTextMessageDetails\",\n \"properties\": {\n \"messageText\": - {\n \"description\": \"The user's message.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"PlaylistLocalization\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistLocalization\",\n - \ \"description\": \"Playlist localization setting\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for playlist's title.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's description.\"\n }\n }\n },\n \"ChannelTopicDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"topicIds\": - {\n \"type\": \"array\",\n \"description\": \"A list of - Freebase topic IDs associated with the channel. You can retrieve information - about each topic using the Freebase Topic API.\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n },\n \"topicCategories\": - {\n \"description\": \"A list of Wikipedia URLs that describe the - channel's content.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"description\": - \"Freebase topic information related to the channel.\",\n \"id\": \"ChannelTopicDetails\"\n - \ },\n \"PropertyValue\": {\n \"description\": \"A pair Property - / Value.\",\n \"type\": \"object\",\n \"id\": \"PropertyValue\",\n - \ \"properties\": {\n \"property\": {\n \"type\": \"string\",\n - \ \"description\": \"A property.\"\n },\n \"value\": - {\n \"description\": \"The property's value.\",\n \"type\": - \"string\"\n }\n }\n },\n \"Video\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"annotations\": + Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n \"default\": + \"youtube#memberListResponse\",\n \"type\": \"string\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"items\": + {\n \"description\": \"A list of members that match the request criteria.\",\n + \ \"items\": {\n \"$ref\": \"Member\"\n },\n \"type\": + \"array\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n }\n }\n },\n \"SuperStickerMetadata\": + {\n \"id\": \"SuperStickerMetadata\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"altTextLanguage\": {\n \"description\": + \"Specifies the localization language in which the alt text is returned.\",\n + \ \"type\": \"string\"\n },\n \"stickerId\": {\n \"description\": + \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text + that includes pack name and a recognizable characteristic of the sticker.\",\n + \ \"type\": \"string\"\n },\n \"altText\": {\n \"type\": + \"string\",\n \"description\": \"Internationalized alt text that + describes the sticker image and any animation associated with it.\"\n }\n + \ }\n },\n \"VideoPlayer\": {\n \"type\": \"object\",\n \"id\": + \"VideoPlayer\",\n \"description\": \"Player to be used for a video playback.\",\n + \ \"properties\": {\n \"embedHeight\": {\n \"format\": + \"int64\",\n \"type\": \"string\"\n },\n \"embedWidth\": + {\n \"type\": \"string\",\n \"description\": \"The embed + width\",\n \"format\": \"int64\"\n },\n \"embedHtml\": + {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e + tag that embeds a player that will play the video.\"\n }\n }\n + \ },\n \"PlaylistContentDetails\": {\n \"properties\": {\n \"itemCount\": + {\n \"format\": \"uint32\",\n \"description\": \"The number + of videos in the playlist.\",\n \"type\": \"integer\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"PlaylistContentDetails\"\n + \ },\n \"ActivityContentDetailsFavorite\": {\n \"description\": + \"Information about a video that was marked as a favorite video.\",\n \"id\": + \"ActivityContentDetailsFavorite\",\n \"type\": \"object\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + that was marked as a favorite.\"\n }\n }\n },\n \"PlaylistItemStatus\": + {\n \"description\": \"Information about the playlist item's privacy + status.\",\n \"properties\": {\n \"privacyStatus\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"description\": + \"This resource's privacy status.\"\n }\n },\n \"id\": \"PlaylistItemStatus\",\n + \ \"type\": \"object\"\n },\n \"VideoAbuseReportReasonSnippet\": + {\n \"description\": \"Basic details about a video category, such as + its localized title.\",\n \"id\": \"VideoAbuseReportReasonSnippet\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"secondaryReasons\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"VideoAbuseReportSecondaryReason\"\n },\n \"description\": + \"The secondary reasons associated with this reason, if any are available. + (There might be 0 or more.)\"\n },\n \"label\": {\n \"type\": + \"string\",\n \"description\": \"The localized label belonging to + this abuse report reason.\"\n }\n }\n },\n \"SuperChatEventSnippet\": + {\n \"properties\": {\n \"commentText\": {\n \"type\": + \"string\",\n \"description\": \"The text contents of the comment + left by the user.\"\n },\n \"isSuperStickerEvent\": {\n \"description\": + \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n + \ },\n \"createdAt\": {\n \"type\": \"string\",\n \"format\": + \"date-time\",\n \"description\": \"The date and time when the event + occurred.\"\n },\n \"displayString\": {\n \"description\": + \"A rendered string that displays the purchase amount and currency (e.g., + \\\"$1.00\\\"). The string is rendered for the given language.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"description\": + \"Channel id where the event occurred.\",\n \"type\": \"string\"\n + \ },\n \"amountMicros\": {\n \"description\": \"The + purchase amount, in micros of the purchase currency. e.g., 1 is represented + as 1000000.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n + \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the purchase was made. ISO 4217.\"\n },\n \"superStickerMetadata\": + {\n \"description\": \"If this event is a Super Sticker event, this + field will contain metadata about the Super Sticker.\",\n \"$ref\": + \"SuperStickerMetadata\"\n },\n \"supporterDetails\": {\n \"description\": + \"Details about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n + \ },\n \"messageType\": {\n \"description\": \"The tier + for the paid message, which is based on the amount of money spent to purchase + the message.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n + \ }\n },\n \"id\": \"SuperChatEventSnippet\",\n \"type\": + \"object\"\n },\n \"TestItemTestItemSnippet\": {\n \"type\": \"object\",\n + \ \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\"\n },\n + \ \"LiveChatMessageAuthorDetails\": {\n \"type\": \"object\",\n \"id\": + \"LiveChatMessageAuthorDetails\",\n \"properties\": {\n \"displayName\": + {\n \"description\": \"The channel's display name.\",\n \"type\": + \"string\"\n },\n \"isVerified\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether the author's identity has been verified + by YouTube.\"\n },\n \"channelUrl\": {\n \"type\": + \"string\",\n \"description\": \"The channel's URL.\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The YouTube channel ID.\"\n },\n \"isChatModerator\": {\n + \ \"type\": \"boolean\",\n \"description\": \"Whether the + author is a moderator of the live chat.\"\n },\n \"isChatOwner\": + {\n \"description\": \"Whether the author is the owner of the live + chat.\",\n \"type\": \"boolean\"\n },\n \"isChatSponsor\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the author is a sponsor of the live chat.\"\n },\n \"profileImageUrl\": + {\n \"description\": \"The channels's avatar URL.\",\n \"type\": + \"string\"\n }\n }\n },\n \"ChannelAuditDetails\": {\n \"id\": + \"ChannelAuditDetails\",\n \"properties\": {\n \"communityGuidelinesGoodStanding\": + {\n \"description\": \"Whether or not the channel respects the community + guidelines.\",\n \"type\": \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel has any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": + {\n \"description\": \"Whether or not the channel has any unresolved + claims.\",\n \"type\": \"boolean\"\n }\n },\n \"description\": + \"The auditDetails object encapsulates channel data that is relevant for YouTube + Partners during the audit process.\",\n \"type\": \"object\"\n },\n + \ \"ActivityContentDetails\": {\n \"id\": \"ActivityContentDetails\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"recommendation\": + {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n \"description\": + \"The recommendation object contains information about a recommended resource. + This property is only present if the snippet.type is recommendation.\"\n },\n + \ \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n + \ \"description\": \"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.\"\n },\n \"comment\": {\n \"$ref\": + \"ActivityContentDetailsComment\",\n \"description\": \"The comment + object contains information about a resource that received a comment. This + property is only present if the snippet.type is comment.\"\n },\n \"subscription\": + {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n \"description\": + \"The subscription object contains information about a channel that a user + subscribed to. This property is only present if the snippet.type is subscription.\"\n + \ },\n \"promotedItem\": {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n + \ \"description\": \"The promotedItem object contains details about + a resource which is being promoted. This property is only present if the snippet.type + is promotedItem.\"\n },\n \"social\": {\n \"$ref\": + \"ActivityContentDetailsSocial\",\n \"description\": \"The social + object contains details about a social network post. This property is only + present if the snippet.type is social.\"\n },\n \"upload\": + {\n \"description\": \"The upload object contains information about + the uploaded video. This property is only present if the snippet.type is upload.\",\n + \ \"$ref\": \"ActivityContentDetailsUpload\"\n },\n \"bulletin\": + {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n \"description\": + \"The bulletin object contains details about a channel bulletin post. This + object is only present if the snippet.type is bulletin.\"\n },\n \"playlistItem\": + {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": + \"The playlistItem object contains information about a new playlist item. + This property is only present if the snippet.type is playlistItem.\"\n },\n + \ \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n + \ \"description\": \"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.\"\n },\n \"like\": {\n \"description\": + \"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.\",\n + \ \"$ref\": \"ActivityContentDetailsLike\"\n }\n },\n + \ \"description\": \"Details about the content of an activity: the video + that was shared, the channel that was subscribed to, etc.\"\n },\n \"VideoFileDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"fileType\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"Known + video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an + MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive + file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., + MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n + \ \"description\": \"The uploaded file's type as detected by YouTube's + video processing engine. Currently, YouTube only processes video files, but + this field is present whether a video file or another type of file was uploaded.\",\n + \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n + \ \"archive\",\n \"document\",\n \"project\",\n + \ \"other\"\n ]\n },\n \"fileName\": {\n + \ \"type\": \"string\",\n \"description\": \"The uploaded + file's name. This field is present whether a video file or another type of + file was uploaded.\"\n },\n \"durationMs\": {\n \"format\": + \"uint64\",\n \"description\": \"The length of the uploaded video + in milliseconds.\",\n \"type\": \"string\"\n },\n \"audioStreams\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"VideoFileDetailsAudioStream\"\n },\n \"description\": + \"A list of audio streams contained in the uploaded video file. Each item + in the list contains detailed metadata about an audio stream.\"\n },\n + \ \"videoStreams\": {\n \"description\": \"A list of video + streams contained in the uploaded video file. Each item in the list contains + detailed metadata about a video stream.\",\n \"items\": {\n \"$ref\": + \"VideoFileDetailsVideoStream\"\n },\n \"type\": \"array\"\n + \ },\n \"bitrateBps\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"The uploaded video file's combined + (video and audio) bitrate in bits per second.\"\n },\n \"container\": + {\n \"description\": \"The uploaded video file's container format.\",\n + \ \"type\": \"string\"\n },\n \"creationTime\": {\n + \ \"type\": \"string\",\n \"description\": \"The date and + time when the uploaded video file was created. The value is specified in ISO + 8601 format. Currently, the following ISO 8601 formats are supported: - Date + only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM + \"\n },\n \"fileSize\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The uploaded + file's size in bytes. This field is present whether a video file or another + type of file was uploaded.\"\n }\n },\n \"id\": \"VideoFileDetails\",\n + \ \"description\": \"Describes original video file properties, including + technical details about audio and video streams, but also metadata information + like content length, digitization time, or geotagging information.\"\n },\n + \ \"VideoCategory\": {\n \"properties\": {\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video category.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n + \ \"default\": \"youtube#videoCategory\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the video category, including its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoCategory\",\n + \ \"description\": \"A *videoCategory* resource identifies a category + that has been or could be associated with uploaded videos.\"\n },\n \"LiveBroadcastStatistics\": + {\n \"type\": \"object\",\n \"id\": \"LiveBroadcastStatistics\",\n + \ \"description\": \"Statistics about the live broadcast. These represent + a snapshot of the values at the time of the request. Statistics are only returned + for live broadcasts.\",\n \"properties\": {\n \"concurrentViewers\": + {\n \"type\": \"string\",\n \"description\": \"The number + of viewers currently watching the broadcast. The property and its value will + be present if the broadcast has current viewers and the broadcast owner has + not hidden the viewcount for the video. Note that YouTube stops tracking the + number of concurrent viewers for a broadcast when the broadcast ends. So, + this property would not identify the number of viewers watching an archived + video of a live broadcast that already ended.\",\n \"format\": \"uint64\"\n + \ },\n \"totalChatCount\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The total + number of live chat messages currently on the broadcast. The property and + its value will be present if the broadcast is public, has the live chat feature + enabled, and has at least one message. Note that this field will not be filled + after the broadcast ends. So this property would not identify the number of + chat messages for an archived video of a completed live broadcast.\"\n }\n + \ }\n },\n \"ChannelConversionPings\": {\n \"properties\": + {\n \"pings\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"ChannelConversionPing\"\n },\n \"description\": + \"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.\"\n }\n },\n \"description\": \"The conversionPings + object encapsulates information about conversion pings that need to be respected + by the channel.\",\n \"type\": \"object\",\n \"id\": \"ChannelConversionPings\"\n + \ },\n \"MembershipsDetails\": {\n \"properties\": {\n \"accessibleLevels\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"Ids of all levels + that the user has access to. This includes the currently active level and + all other levels that are included because of a higher purchase.\"\n },\n + \ \"highestAccessibleLevel\": {\n \"type\": \"string\",\n \"description\": + \"Id of the highest level that the user has access to at the moment.\"\n },\n + \ \"membershipsDuration\": {\n \"description\": \"Data about + memberships duration without taking into consideration pricing levels.\",\n + \ \"$ref\": \"MembershipsDuration\"\n },\n \"membershipsDurationAtLevels\": + {\n \"description\": \"Data about memberships duration on particular + pricing levels.\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n + \ },\n \"type\": \"array\"\n },\n \"highestAccessibleLevelDisplayName\": + {\n \"description\": \"Display name for the highest level that the + user has access to at the moment.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"MembershipsDetails\"\n + \ },\n \"GeoPoint\": {\n \"properties\": {\n \"altitude\": + {\n \"description\": \"Altitude above the reference ellipsoid, in + meters.\",\n \"type\": \"number\",\n \"format\": \"double\"\n + \ },\n \"longitude\": {\n \"format\": \"double\",\n + \ \"description\": \"Longitude in degrees.\",\n \"type\": + \"number\"\n },\n \"latitude\": {\n \"format\": \"double\",\n + \ \"description\": \"Latitude in degrees.\",\n \"type\": + \"number\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"GeoPoint\",\n \"description\": \"Geographical coordinates of a point, + in WGS84.\"\n },\n \"SearchResultSnippet\": {\n \"properties\": + {\n \"liveBroadcastContent\": {\n \"description\": \"It indicates + if the resource (video or channel) has upcoming/active live broadcast content. + Or it's \\\"none\\\" if there is not any upcoming/active live broadcasts.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The live broadcast is upcoming.\",\n \"The live broadcast + is active.\",\n \"The live broadcast has been completed.\"\n ],\n + \ \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ]\n },\n + \ \"channelId\": {\n \"description\": \"The value that YouTube + uses to uniquely identify the channel that published the resource that the + search result identifies.\",\n \"type\": \"string\"\n },\n + \ \"description\": {\n \"type\": \"string\",\n \"description\": + \"A description of the search result.\"\n },\n \"channelTitle\": + {\n \"description\": \"The title of the channel that published the + resource that the search result identifies.\",\n \"type\": \"string\"\n + \ },\n \"publishedAt\": {\n \"description\": \"The creation + date and time of the resource that the search result identifies.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"thumbnails\": + {\n \"description\": \"A map of thumbnail images associated with + the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n + \ \"title\": {\n \"type\": \"string\",\n \"description\": + \"The title of the search result.\"\n }\n },\n \"description\": + \"Basic details about a search result, including title, description and thumbnails + of the item referenced by the search result.\",\n \"type\": \"object\",\n + \ \"id\": \"SearchResultSnippet\"\n },\n \"ChannelConversionPing\": + {\n \"description\": \"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.\",\n \"properties\": {\n \"conversionUrl\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"context\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n + \ \"cview\"\n ],\n \"description\": \"Defines + the context of the ping.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"ChannelConversionPing\"\n },\n + \ \"LiveBroadcastListResponse\": {\n \"properties\": {\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#liveBroadcastListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": + \"A list of broadcasts that match the request criteria.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n + \ }\n }\n },\n \"id\": \"LiveBroadcastListResponse\",\n + \ \"type\": \"object\"\n },\n \"CaptionSnippet\": {\n \"properties\": + {\n \"isAutoSynced\": {\n \"type\": \"boolean\",\n \"description\": + \"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.\"\n },\n \"isDraft\": {\n \"type\": \"boolean\",\n + \ \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\"\n + \ },\n \"videoId\": {\n \"description\": \"The ID that + YouTube uses to uniquely identify the video associated with the caption track. + @mutable youtube.captions.insert\",\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"failureReason\": {\n + \ \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n + \ \"processingFailed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The reason that + YouTube failed to process the caption track. This property is only present + if the state property's value is failed.\"\n },\n \"status\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"serving\",\n \"syncing\",\n \"failed\"\n + \ ],\n \"description\": \"The caption track's status.\"\n + \ },\n \"isCC\": {\n \"description\": \"Indicates whether + the track contains closed captions for the deaf and hard of hearing. The default + value is false.\",\n \"type\": \"boolean\"\n },\n \"isEasyReader\": + {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n + \ },\n \"lastUpdated\": {\n \"description\": \"The date + and time when the caption track was last updated.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"name\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the caption track. The name is intended to be visible to the user as an + option during playback.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n }\n + \ },\n \"audioTrackType\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The type of audio track associated + with the caption track.\",\n \"type\": \"string\",\n \"enum\": + [\n \"unknown\",\n \"primary\",\n \"commentary\",\n + \ \"descriptive\"\n ]\n },\n \"language\": + {\n \"description\": \"The language of the caption track. The property + value is a BCP-47 language tag.\",\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n }\n },\n \"isLarge\": {\n \"type\": + \"boolean\",\n \"description\": \"Indicates whether the caption track + uses large text for the vision-impaired. The default value is false.\"\n },\n + \ \"trackKind\": {\n \"description\": \"The caption track's + type.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"standard\",\n \"ASR\",\n \"forced\"\n + \ ]\n }\n },\n \"id\": \"CaptionSnippet\",\n \"type\": + \"object\",\n \"description\": \"Basic details about a caption track, + such as its language and name.\"\n },\n \"ChannelSectionTargeting\": + {\n \"description\": \"ChannelSection targeting setting.\",\n \"id\": + \"ChannelSectionTargeting\",\n \"properties\": {\n \"countries\": + {\n \"description\": \"The country the channel section is targeting.\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": + \"array\"\n },\n \"regions\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": + \"The region the channel section is targeting.\"\n },\n \"languages\": + {\n \"description\": \"The language the channel section is targeting.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n }\n }\n },\n \"type\": \"object\"\n + \ },\n \"ActivityContentDetailsLike\": {\n \"type\": \"object\",\n + \ \"id\": \"ActivityContentDetailsLike\",\n \"description\": \"Information + about a resource that received a positive (like) rating.\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the rated resource.\"\n + \ }\n }\n },\n \"ActivityContentDetailsSubscription\": {\n + \ \"description\": \"Information about a channel that a user subscribed + to.\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the resource that the user subscribed to.\"\n + \ }\n },\n \"id\": \"ActivityContentDetailsSubscription\",\n + \ \"type\": \"object\"\n },\n \"LiveStreamHealthStatus\": {\n \"id\": + \"LiveStreamHealthStatus\",\n \"properties\": {\n \"configurationIssues\": + {\n \"type\": \"array\",\n \"description\": \"The configurations + issues on this stream\",\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n + \ }\n },\n \"lastUpdateTimeSeconds\": {\n \"description\": + \"The last time this status was updated (in seconds)\",\n \"format\": + \"uint64\",\n \"type\": \"string\"\n },\n \"status\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"good\",\n \"ok\",\n + \ \"bad\",\n \"noData\",\n \"revoked\"\n ],\n + \ \"description\": \"The status code of this stream\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"Video\": {\n \"type\": + \"object\",\n \"id\": \"Video\",\n \"properties\": {\n \"contentDetails\": + {\n \"$ref\": \"VideoContentDetails\",\n \"description\": + \"The contentDetails object contains information about the video content, + including the length of the video and its aspect ratio.\"\n },\n \"suggestions\": + {\n \"$ref\": \"VideoSuggestions\",\n \"description\": \"The + suggestions object encapsulates suggestions that identify opportunities to + improve the video quality or the metadata for the uploaded video. This data + can only be retrieved by the video owner.\"\n },\n \"localizations\": + {\n \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n + \ },\n \"type\": \"object\",\n \"description\": + \"The localizations object contains localized versions of the basic details + about the video, such as its title and description.\"\n },\n \"topicDetails\": + {\n \"$ref\": \"VideoTopicDetails\",\n \"description\": + \"The topicDetails object encapsulates information about Freebase topics associated + with the video.\"\n },\n \"liveStreamingDetails\": {\n \"description\": + \"The liveStreamingDetails object contains metadata about a live video broadcast. + The object will only be present in a video resource if the video is an upcoming, + live, or completed live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n + \ },\n \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n + \ \"description\": \"Age restriction details related to a video. This + data can only be retrieved by the video owner.\"\n },\n \"statistics\": + {\n \"$ref\": \"VideoStatistics\",\n \"description\": \"The + statistics object contains statistics about the video.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the video.\",\n \"annotations\": {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n }\n },\n \"fileDetails\": {\n \"$ref\": + \ ]\n }\n },\n \"recordingDetails\": {\n + \ \"description\": \"The recordingDetails object encapsulates information + about the location, date and address where the video was recorded.\",\n \"$ref\": + \"VideoRecordingDetails\"\n },\n \"fileDetails\": {\n \"$ref\": \"VideoFileDetails\",\n \"description\": \"The fileDetails object encapsulates information about the video file that was uploaded to YouTube, including the file's resolution, duration, audio and video codecs, stream bitrates, and more. This data can only be retrieved by the video owner.\"\n - \ },\n \"projectDetails\": {\n \"$ref\": \"VideoProjectDetails\",\n - \ \"description\": \"The projectDetails object contains information + \ },\n \"monetizationDetails\": {\n \"description\": + \"The monetizationDetails object encapsulates information about the monetization + status of the video.\",\n \"$ref\": \"VideoMonetizationDetails\"\n + \ },\n \"status\": {\n \"$ref\": \"VideoStatus\",\n + \ \"description\": \"The status object contains information about + the video's uploading, processing, and privacy statuses.\"\n },\n \"projectDetails\": + {\n \"description\": \"The projectDetails object contains information about the project specific video metadata. b/157517979: This part was never populated after it was added. However, it sees non-zero traffic because there is generated client code in the wild that refers to it [1]. We keep this field and do NOT remove it because otherwise V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"player\": {\n \"description\": \"The player - object contains information that you would use to play the video in an embedded - player.\",\n \"$ref\": \"VideoPlayer\"\n },\n \"contentDetails\": - {\n \"$ref\": \"VideoContentDetails\",\n \"description\": - \"The contentDetails object contains information about the video content, - including the length of the video and its aspect ratio.\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the video's uploading, processing, and privacy statuses.\",\n \"$ref\": - \"VideoStatus\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#video\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\"\n - \ },\n \"recordingDetails\": {\n \"description\": \"The - recordingDetails object encapsulates information about the location, date - and address where the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the video, such as its title, description, - and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"topicDetails\": {\n \"description\": \"The topicDetails - object encapsulates information about Freebase topics associated with the - video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n \"processingDetails\": - {\n \"$ref\": \"VideoProcessingDetails\",\n \"description\": + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"$ref\": \"VideoProjectDetails\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"processingDetails\": {\n \"description\": \"The processingDetails object encapsulates information about YouTube's progress in processing the uploaded video file. The properties in the object identify the current processing status and an estimate of the time remaining until @@ -3276,945 +3358,501 @@ interactions: types of data or content, such as file details or thumbnail images, are available for the video. The processingProgress object is designed to be polled so that the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\"\n - \ },\n \"monetizationDetails\": {\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\",\n \"$ref\": \"VideoMonetizationDetails\"\n - \ },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"VideoLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\"\n },\n \"statistics\": {\n \"$ref\": - \"VideoStatistics\",\n \"description\": \"The statistics object contains - statistics about the video.\"\n },\n \"ageGating\": {\n \"description\": - \"Age restriction details related to a video. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoAgeGating\"\n },\n - \ \"suggestions\": {\n \"$ref\": \"VideoSuggestions\",\n \"description\": - \"The suggestions object encapsulates suggestions that identify opportunities - to improve the video quality or the metadata for the uploaded video. This - data can only be retrieved by the video owner.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"Video\",\n \"description\": \"A *video* - resource represents a YouTube video.\"\n },\n \"MembershipsDurationAtLevel\": - {\n \"properties\": {\n \"memberSince\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the user - became a continuous member for the given level.\"\n },\n \"level\": - {\n \"description\": \"Pricing level ID.\",\n \"type\": - \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"format\": - \"int32\",\n \"description\": \"The cumulative time the user has - been a member for the given level in complete months (the time is rounded - down to the nearest integer).\",\n \"type\": \"integer\"\n }\n - \ },\n \"id\": \"MembershipsDurationAtLevel\",\n \"type\": \"object\"\n - \ },\n \"I18nLanguage\": {\n \"id\": \"I18nLanguage\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#i18nLanguage\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n language.\"\n }\n - \ },\n \"description\": \"An *i18nLanguage* resource identifies a - UI language currently supported by YouTube.\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"description\": \"Basic details about a subscription's subscriber - including title, description, channel ID and thumbnails.\",\n \"properties\": - {\n \"channelId\": {\n \"description\": \"The channel ID of - the subscriber.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"Thumbnails for this subscriber.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The title of the subscriber.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the subscriber.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"SubscriptionSubscriberSnippet\"\n - \ },\n \"Entity\": {\n \"properties\": {\n \"typeId\": {\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\"\n },\n \"url\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Entity\"\n - \ },\n \"InvideoBranding\": {\n \"properties\": {\n \"position\": - {\n \"description\": \"The spatial position within the video where - the branding watermark will be displayed.\",\n \"$ref\": \"InvideoPosition\"\n - \ },\n \"timing\": {\n \"description\": \"The temporal - position within the video where watermark will be displayed.\",\n \"$ref\": - \"InvideoTiming\"\n },\n \"targetChannelId\": {\n \"description\": - \"The channel to which this branding links. If not present it defaults to - the current channel.\",\n \"type\": \"string\"\n },\n \"imageUrl\": - {\n \"description\": \"The url of the uploaded image. Only used in - apiary to api communication.\",\n \"type\": \"string\"\n },\n - \ \"imageBytes\": {\n \"format\": \"byte\",\n \"type\": - \"string\",\n \"description\": \"The bytes the uploaded image. Only - used in api to youtube communication.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"InvideoBranding\",\n \"description\": \"LINT.IfChange - Describes an invideo branding.\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"id\": \"LiveStreamConfigurationIssue\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"severity\": {\n \"description\": - \"How severe this issue is to the stream.\",\n \"enum\": [\n \"info\",\n - \ \"warning\",\n \"error\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"reason\": {\n \"description\": - \"The short-form reason for this issue.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"type\": \"string\",\n \"enumDescriptions\": + the uploaded video file. This data can only be retrieved by the video owner.\",\n + \ \"$ref\": \"VideoProcessingDetails\"\n },\n \"player\": + {\n \"$ref\": \"VideoPlayer\",\n \"description\": \"The + player object contains information that you would use to play the video in + an embedded player.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the video, such as its title, + description, and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n \"default\": + \"youtube#video\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"A *video* resource represents a YouTube video.\"\n + \ },\n \"ChannelSectionSnippet\": {\n \"description\": \"Basic details + about a channel section, including title, style and position.\",\n \"properties\": + {\n \"type\": {\n \"description\": \"The type of the channel + section.\",\n \"type\": \"string\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n + \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n + \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n + \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n + \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n + \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n + \ \"subscriptions\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ],\n \"description\": - \"The kind of error happening.\"\n },\n \"description\": {\n - \ \"description\": \"The long-form description of the issue and how - to resolve it.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"SuperChatEventSnippet\": {\n \"properties\": {\n \"supporterDetails\": - {\n \"description\": \"Details about the supporter.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"amountMicros\": {\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"superStickerMetadata\": {\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"channelId\": {\n \"description\": \"Channel - id where the event occurred.\",\n \"type\": \"string\"\n },\n - \ \"commentText\": {\n \"type\": \"string\",\n \"description\": - \"The text contents of the comment left by the user.\"\n },\n \"displayString\": - {\n \"description\": \"A rendered string that displays the purchase - amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the - given language.\",\n \"type\": \"string\"\n },\n \"isSuperStickerEvent\": - {\n \"type\": \"boolean\",\n \"description\": \"True if - this event is a Super Sticker event.\"\n },\n \"createdAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the event occurred.\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\",\n \"type\": \"string\"\n - \ },\n \"messageType\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The tier for - the paid message, which is based on the amount of money spent to purchase - the message.\"\n }\n },\n \"id\": \"SuperChatEventSnippet\",\n - \ \"type\": \"object\"\n },\n \"ChannelStatus\": {\n \"properties\": - {\n \"isLinked\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n - \ \"longUploadsStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The long uploads status of this - channel. See https://support.google.com/youtube/answer/71673 for more information.\",\n - \ \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ]\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"privacyStatus\": {\n \"description\": \"Privacy status - of the channel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n }\n },\n \"id\": \"ChannelStatus\",\n - \ \"description\": \"JSON template for the status part of a channel.\",\n - \ \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": {\n - \ \"description\": \"Information about a video stream.\",\n \"id\": - \"VideoFileDetailsVideoStream\",\n \"type\": \"object\",\n \"properties\": - {\n \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"bitrateBps\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The video stream's bitrate, in bits per second.\"\n },\n \"widthPixels\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\"\n },\n \"frameRateFps\": - {\n \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"The video stream's frame rate, in frames per second.\"\n },\n \"rotation\": - {\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\",\n \"type\": \"string\"\n },\n \"aspectRatio\": - {\n \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\"\n },\n \"heightPixels\": - {\n \"type\": \"integer\",\n \"description\": \"The encoded - video content's height in pixels.\",\n \"format\": \"uint32\"\n },\n - \ \"codec\": {\n \"description\": \"The video codec that the - stream uses.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"RelatedEntity\": {\n \"id\": \"RelatedEntity\",\n \"type\": - \"object\",\n \"properties\": {\n \"entity\": {\n \"$ref\": - \"Entity\"\n }\n }\n },\n \"SuperStickerMetadata\": {\n - \ \"properties\": {\n \"stickerId\": {\n \"type\": \"string\",\n - \ \"description\": \"Unique identifier of the Super Sticker. This - is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\"\n },\n \"altTextLanguage\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the alt text is returned.\"\n },\n - \ \"altText\": {\n \"type\": \"string\",\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"SuperStickerMetadata\"\n },\n \"ChannelSettings\": {\n - \ \"description\": \"Branding properties for the channel view.\",\n \"id\": - \"ChannelSettings\",\n \"properties\": {\n \"featuredChannelsUrls\": - {\n \"description\": \"The list of featured channels.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n + \ \"\"\n ]\n },\n \"defaultLanguage\": {\n + \ \"description\": \"The language of the channel section's default + title and description.\",\n \"type\": \"string\"\n },\n \"position\": + {\n \"type\": \"integer\",\n \"description\": \"The position + of the channel section in the channel.\",\n \"format\": \"uint32\"\n \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the channel title.\"\n },\n \"showBrowseView\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the tab to browse the videos should be displayed.\"\n },\n \"keywords\": - {\n \"description\": \"Lists keywords associated with the channel, - comma-separated.\",\n \"type\": \"string\"\n },\n \"profileColor\": - {\n \"type\": \"string\",\n \"description\": \"A prominent - color that can be rendered on this channel page.\"\n },\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"unsubscribedTrailer\": {\n \"description\": - \"The trailer of the channel, for users that are not subscribers.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the channel description.\"\n },\n - \ \"country\": {\n \"description\": \"The country of the channel.\",\n - \ \"type\": \"string\"\n },\n \"defaultTab\": {\n \"type\": - \"string\",\n \"description\": \"Which content tab users should see - when viewing the channel.\"\n },\n \"moderateComments\": {\n - \ \"description\": \"Whether user-submitted comments left on the channel - page need to be approved by the channel owner to be publicly visible.\",\n - \ \"type\": \"boolean\"\n },\n \"featuredChannelsTitle\": - {\n \"type\": \"string\",\n \"description\": \"Title for - the featured channels tab.\"\n },\n \"defaultLanguage\": {\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoRecordingDetails\": {\n \"description\": \"Recording - information associated with the video.\",\n \"id\": \"VideoRecordingDetails\",\n - \ \"properties\": {\n \"location\": {\n \"description\": - \"The geolocation information associated with the video.\",\n \"$ref\": - \"GeoPoint\"\n },\n \"locationDescription\": {\n \"description\": - \"The text description of the location where the video was recorded.\",\n - \ \"type\": \"string\"\n },\n \"recordingDate\": {\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the video was recorded.\",\n \"format\": \"date-time\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"CaptionSnippet\": - {\n \"id\": \"CaptionSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"videoId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video associated with the caption track. - @mutable youtube.captions.insert\"\n },\n \"audioTrackType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ],\n \"description\": - \"The type of audio track associated with the caption track.\"\n },\n - \ \"status\": {\n \"description\": \"The caption track's status.\",\n + \"The channel section's title for multiple_playlists and multiple_channels.\"\n + \ },\n \"channelId\": {\n \"description\": \"The ID + that YouTube uses to uniquely identify the channel that published the channel + section.\",\n \"type\": \"string\"\n },\n \"localized\": + {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": + \"Localized title, read-only.\"\n },\n \"style\": {\n \"description\": + \"The style of the channel section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n + \ \"horizontalRow\",\n \"verticalList\"\n ],\n \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"serving\",\n \"syncing\",\n \"failed\"\n - \ ]\n },\n \"name\": {\n \"annotations\": {\n - \ \"required\": [\n \"youtube.captions.insert\"\n ]\n - \ },\n \"type\": \"string\",\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\"\n },\n \"isCC\": {\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\",\n \"type\": \"boolean\"\n - \ },\n \"language\": {\n \"description\": \"The language - of the caption track. The property value is a BCP-47 language tag.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"failureReason\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ],\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\"\n },\n \"isEasyReader\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"isAutoSynced\": {\n \"description\": \"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.\",\n - \ \"type\": \"boolean\"\n },\n \"isLarge\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the caption track - uses large text for the vision-impaired. The default value is false.\"\n },\n - \ \"lastUpdated\": {\n \"description\": \"The date and time - when the caption track was last updated.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"isDraft\": {\n \"type\": - \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\"\n - \ },\n \"trackKind\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The caption track's type.\",\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ]\n }\n },\n \"description\": \"Basic details about - a caption track, such as its language and name.\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"userComment\": - {\n \"description\": \"The comment added by the user to this Super - Chat event.\",\n \"type\": \"string\"\n },\n \"tier\": - {\n \"description\": \"The tier in which the amount belongs. Lower - amounts belong to lower tiers. The lowest tier is 1.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made.\"\n },\n \"amountMicros\": - {\n \"description\": \"The amount purchased by the user, in micros - (1,750,000 micros = 1.75).\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatSuperChatDetails\"\n - \ },\n \"MemberListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": + \ \"\",\n \"\"\n ]\n }\n },\n \"id\": + \"ChannelSectionSnippet\",\n \"type\": \"object\"\n },\n \"ChannelProfileDetails\": + {\n \"id\": \"ChannelProfileDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The YouTube channel ID.\"\n },\n \"channelUrl\": + {\n \"description\": \"The channel's URL.\",\n \"type\": + \"string\"\n },\n \"profileImageUrl\": {\n \"description\": + \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n + \ \"displayName\": {\n \"description\": \"The channel's display + name.\",\n \"type\": \"string\"\n }\n }\n },\n \"LiveStreamContentDetails\": + {\n \"id\": \"LiveStreamContentDetails\",\n \"description\": \"Detailed + settings of a stream.\",\n \"type\": \"object\",\n \"properties\": + {\n \"closedCaptionsIngestionUrl\": {\n \"description\": \"The + ingestion URL where the closed captions of this stream are sent.\",\n \"type\": + \"string\"\n },\n \"isReusable\": {\n \"description\": + \"Indicates whether the stream is reusable, which means that it can be bound + to multiple broadcasts. It is common for broadcasters to reuse the same stream + for many different broadcasts if those broadcasts occur at different times. + If you set this value to false, then the stream will not be reusable, which + means that it can only be bound to one broadcast. Non-reusable streams differ + from reusable streams in the following ways: - A non-reusable stream can only + be bound to one broadcast. - A non-reusable stream might be deleted by an + automated process after the broadcast ends. - The liveStreams.list method + does not list non-reusable streams if you call the method and set the mine + parameter to true. The only way to use that method to retrieve the resource + for a non-reusable stream is to use the id parameter to identify the stream. + \",\n \"type\": \"boolean\"\n }\n }\n },\n \"MembershipsLevelListResponse\": + {\n \"properties\": {\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"default\": \"youtube#membershipsLevelListResponse\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"description\": \"A list of pricing levels offered by a creator + to the fans.\",\n \"type\": \"array\",\n \"items\": {\n + \ \"$ref\": \"MembershipsLevel\"\n }\n }\n },\n + \ \"id\": \"MembershipsLevelListResponse\",\n \"type\": \"object\"\n + \ },\n \"VideoCategoryListResponse\": {\n \"id\": \"VideoCategoryListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#videoCategoryListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"items\": {\n \"description\": + \"A list of video categories that can be associated with YouTube videos. In + this map, the video category ID is the map key, and its value is the corresponding + videoCategory resource.\",\n \"items\": {\n \"$ref\": + \"VideoCategory\"\n },\n \"type\": \"array\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"description\": + page in the result set.\"\n }\n }\n },\n \"LiveBroadcast\": + {\n \"id\": \"LiveBroadcast\",\n \"description\": \"A *liveBroadcast* + resource represents an event that will be streamed, via live video, on YouTube.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"contentDetails\": + {\n \"$ref\": \"LiveBroadcastContentDetails\",\n \"description\": + \"The contentDetails object contains information about the event's video content, + such as whether the content can be shown in an embedded video player or if + it will be archived and therefore available for viewing after the event has + concluded.\"\n },\n \"id\": {\n \"description\": \"The + ID that YouTube assigns to uniquely identify the broadcast.\",\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n }\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"description\": \"A list of members that - match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Member\"\n }\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"MemberListResponse\"\n },\n \"PlaylistItemListResponse\": - {\n \"properties\": {\n \"prevPageToken\": {\n \"type\": + \ \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n + \ \"description\": \"The statistics object contains info about the + event's current stats. These include concurrent viewers and total chat count. + Statistics can change (in either direction) during the lifetime of an event. + Statistics are only returned while the event is live.\"\n },\n \"kind\": + {\n \"default\": \"youtube#liveBroadcast\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the event, including its + title, description, start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n + \ },\n \"status\": {\n \"description\": \"The status + object contains information about the event's status.\",\n \"$ref\": + \"LiveBroadcastStatus\"\n }\n }\n },\n \"LiveChatFanFundingEventDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"amountDisplayString\": + {\n \"type\": \"string\",\n \"description\": \"A rendered + string that displays the fund amount and currency to the user.\"\n },\n + \ \"currency\": {\n \"description\": \"The currency in which + the fund was made.\",\n \"type\": \"string\"\n },\n \"userComment\": + {\n \"type\": \"string\",\n \"description\": \"The comment + added by the user to this fan funding event.\"\n },\n \"amountMicros\": + {\n \"description\": \"The amount of the fund.\",\n \"type\": + \"string\",\n \"format\": \"uint64\"\n }\n },\n \"id\": + \"LiveChatFanFundingEventDetails\"\n },\n \"CommentThreadListResponse\": + {\n \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"items\": {\n \"description\": + \"A list of comment threads that match the request criteria.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"CommentThread\"\n + \ }\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"visitorId\": {\n - \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#commentThreadListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n }\n + \ },\n \"id\": \"CommentThreadListResponse\",\n \"type\": \"object\"\n + \ },\n \"ChannelListResponse\": {\n \"id\": \"ChannelListResponse\",\n + \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"nextPageToken\": {\n \ \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"description\": \"A list of playlist - items that match the request criteria.\",\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"PlaylistItemListResponse\",\n \"type\": - \"object\"\n },\n \"LiveChatMessageSnippet\": {\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"newSponsorDetails\": - {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": - \"Details about the New Member Announcement event, this is only set if the - type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term - for \\\"sponsor\\\".\"\n },\n \"messageDeletedDetails\": {\n - \ \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"displayMessage\": - {\n \"type\": \"string\",\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"giftMembershipReceivedDetails\": {\n - \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"superStickerDetails\": - {\n \"description\": \"Details about the Super Sticker event, this - is only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"type\": {\n \"enum\": [\n \"invalidType\",\n - \ \"textMessageEvent\",\n \"tombstone\",\n \"fanFundingEvent\",\n - \ \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"membershipGiftingDetails\": {\n \"$ref\": - \"LiveChatMembershipGiftingDetails\",\n \"description\": \"Details - about the Membership Gifting event, this is only set if the type is 'membershipGiftingEvent'.\"\n - \ },\n \"fanFundingEventDetails\": {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n - \ \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\"\n },\n \"hasDisplayContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the message has display content that should be displayed to users.\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"authorChannelId\": {\n \"description\": \"The ID of the - user that authored this message, this field is not always filled. textMessageEvent - - the user that wrote the message fanFundingEvent - the user that funded the - broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\",\n \"type\": \"string\"\n },\n - \ \"memberMilestoneChatDetails\": {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"description\": \"Details about the Member Milestone Chat event, - this is only set if the type is 'memberMilestoneChatEvent'.\"\n },\n - \ \"textMessageDetails\": {\n \"description\": \"Details about - the text message, this is only set if the type is 'textMessageEvent'.\",\n - \ \"$ref\": \"LiveChatTextMessageDetails\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the message was orignally - published.\"\n },\n \"messageRetractedDetails\": {\n \"$ref\": - \"LiveChatMessageRetractedDetails\"\n },\n \"superChatDetails\": - {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ }\n },\n \"description\": \"Next ID: 33\"\n },\n \"CdnSettings\": - {\n \"id\": \"CdnSettings\",\n \"properties\": {\n \"resolution\": + in the result set.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n + \ \"default\": \"youtube#channelListResponse\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"Channel\"\n }\n },\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n }\n },\n \"type\": \"object\"\n },\n \"CommentThreadSnippet\": + {\n \"id\": \"CommentThreadSnippet\",\n \"description\": \"Basic + details about a comment thread.\",\n \"properties\": {\n \"topLevelComment\": + {\n \"description\": \"The top level comment of this thread.\",\n + \ \"$ref\": \"Comment\"\n },\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the video the comments + refer to, if any. No video_id implies a channel discussion comment.\"\n },\n + \ \"totalReplyCount\": {\n \"format\": \"uint32\",\n \"description\": + \"The total number of replies (not including the top level comment).\",\n + \ \"type\": \"integer\"\n },\n \"canReply\": {\n \"type\": + \"boolean\",\n \"description\": \"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.\"\n },\n \"isPublic\": {\n \"description\": + \"Whether the thread (and therefore all its comments) is visible to all YouTube + users.\",\n \"type\": \"boolean\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsRecommendation\": + {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the recommended resource.\"\n },\n \"reason\": {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The resolution of the inbound video data.\"\n },\n \"format\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The format of - the video stream that you are sending to Youtube. \"\n },\n \"ingestionType\": - {\n \"enum\": [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"description\": \" The method - or protocol used to transmit the video stream.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n \"description\": - \"The ingestionInfo object contains information that YouTube provides that - you need to transmit your RTMP or HTTP stream to YouTube.\"\n },\n - \ \"frameRate\": {\n \"description\": \"The frame rate of the - inbound video data.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ]\n }\n },\n \"description\": \"Brief description - of the live stream cdn settings.\",\n \"type\": \"object\"\n },\n - \ \"LiveChatMessageRetractedDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageRetractedDetails\",\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"I18nRegion\": {\n \"type\": \"object\",\n \"id\": - \"I18nRegion\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"default\": \"youtube#i18nRegion\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n region.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n - \ }\n },\n \"description\": \"A *i18nRegion* resource identifies - a region where YouTube is available.\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"description\": \"Information that identifies the recommended resource.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the recommended resource.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"seedResourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\"\n },\n \"reason\": - {\n \"enum\": [\n \"reasonUnspecified\",\n \"videoFavorited\",\n - \ \"videoLiked\",\n \"videoWatched\"\n ],\n - \ \"description\": \"The reason that the resource is recommended to - the user.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"id\": \"ActivityContentDetailsRecommendation\"\n - \ },\n \"MembershipsLevelListResponse\": {\n \"properties\": {\n - \ \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of pricing levels offered by a creator - to the fans.\",\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n - \ },\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"MembershipsLevelListResponse\"\n },\n \"LiveBroadcastStatistics\": - {\n \"id\": \"LiveBroadcastStatistics\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"concurrentViewers\": {\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"totalChatCount\": - {\n \"type\": \"string\",\n \"description\": \"The total - number of live chat messages currently on the broadcast. The property and - its value will be present if the broadcast is public, has the live chat feature - enabled, and has at least one message. Note that this field will not be filled - after the broadcast ends. So this property would not identify the number of - chat messages for an archived video of a completed live broadcast.\",\n \"format\": - \"uint64\"\n }\n },\n \"description\": \"Statistics about - the live broadcast. These represent a snapshot of the values at the time of - the request. Statistics are only returned for live broadcasts.\"\n },\n - \ \"SearchResult\": {\n \"type\": \"object\",\n \"id\": \"SearchResult\",\n - \ \"description\": \"A search result contains information about a YouTube - video, channel, or playlist that matches the search parameters specified in - an API request. While a search result points to a uniquely identifiable resource, - like a video, it does not have its own persistent data.\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#searchResult\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The id object contains information - that can be used to uniquely identify the resource that matches the search - request.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\",\n \"$ref\": \"SearchResultSnippet\"\n }\n - \ }\n },\n \"LiveBroadcastContentDetails\": {\n \"properties\": - {\n \"recordFromStart\": {\n \"type\": \"boolean\",\n \"description\": - \"Automatically start recording after the event goes live. The default value - for this property is true. *Important:* You must also set the enableDvr property's - value to true if you want the playback to be available immediately after the - broadcast ends. If you set this property's value to true but do not also set - the enableDvr property to true, there may be a delay of around one day before - the archived video will be available for playback.\"\n },\n \"mesh\": - {\n \"format\": \"byte\",\n \"description\": \"The mesh - for projecting the video if projection is mesh. The mesh value must be a UTF-8 - string containing the base-64 encoding of 3D mesh data that follows the Spherical - Video V2 RFC specification for an mshp box, excluding the box size and type - but including the following four reserved zero bytes for the version and flags.\",\n - \ \"type\": \"string\"\n },\n \"enableContentEncryption\": - {\n \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n - \ },\n \"projection\": {\n \"type\": \"string\",\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"projectionUnspecified\",\n \"rectangular\",\n \"360\",\n - \ \"mesh\"\n ]\n },\n \"enableEmbed\": {\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\",\n \"type\": \"boolean\"\n },\n \"enableDvr\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - determines whether viewers can access DVR controls while watching the video. - DVR controls enable the viewer to control the video playback experience by - pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\"\n },\n \"enableAutoStart\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"stereoLayout\": {\n \"type\": \"string\",\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ]\n },\n \"closedCaptionsType\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ]\n },\n \"startWithSlate\": {\n \"description\": - \"This setting indicates whether the broadcast should automatically begin - with an in-stream slate when you update the broadcast's status to live. After - updating the status, you then need to send a liveCuepoints.insert request - that sets the cuepoint's eventState to end to remove the in-stream slate and - make your broadcast stream visible to viewers.\",\n \"type\": \"boolean\"\n - \ },\n \"enableLowLatency\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether this broadcast has low latency - enabled.\"\n },\n \"boundStreamId\": {\n \"type\": - \"string\",\n \"description\": \"This value uniquely identifies the - live stream bound to the broadcast.\"\n },\n \"enableAutoStop\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto stop is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"latencyPreference\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Best for: highest quality viewer playbacks and higher resolutions.\",\n - \ \"Best for: near real-time interaction, with minimal playback - buffering.\",\n \"Best for: real-time interaction Does not support: - Closed captions, 1440p, and 4k resolutions\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"description\": \"If both this and enable_low_latency - are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\"\n },\n \"enableClosedCaptions\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether HTTP POST closed captioning is enabled for this broadcast. - The ingestion URL of the closed captions is returned through the liveStreams - API. This is mutually exclusive with using the closed_captions_type property, - and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n - \ },\n \"boundStreamLastUpdateTimeMs\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the live - stream referenced by boundStreamId was last updated.\",\n \"format\": - \"date-time\"\n },\n \"monitorStream\": {\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\",\n \"$ref\": \"MonitorStreamInfo\"\n - \ }\n },\n \"description\": \"Detailed settings of a broadcast.\",\n - \ \"id\": \"LiveBroadcastContentDetails\",\n \"type\": \"object\"\n - \ },\n \"VideoAbuseReportReason\": {\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the abuse report reason.\",\n \"$ref\": - \"VideoAbuseReportReasonSnippet\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID of this abuse report reason.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoAbuseReportReason\",\n \"type\": + \ \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n + \ \"videoWatched\"\n ],\n \"description\": \"The + reason that the resource is recommended to the user.\",\n \"type\": + \"string\"\n },\n \"seedResourceId\": {\n \"description\": + \"The seedResourceId object contains information about the resource that caused + the recommendation.\",\n \"$ref\": \"ResourceId\"\n }\n },\n + \ \"description\": \"Information that identifies the recommended resource.\",\n + \ \"id\": \"ActivityContentDetailsRecommendation\",\n \"type\": \"object\"\n + \ },\n \"AbuseReport\": {\n \"id\": \"AbuseReport\",\n \"properties\": + {\n \"abuseTypes\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"AbuseType\"\n }\n },\n \"relatedEntities\": + {\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n + \ \"type\": \"array\"\n },\n \"description\": {\n \"type\": + \"string\"\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"ThumbnailDetails\": + {\n \"properties\": {\n \"medium\": {\n \"$ref\": \"Thumbnail\",\n + \ \"description\": \"The medium quality image for this resource.\"\n + \ },\n \"standard\": {\n \"description\": \"The standard + quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n + \ \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": + \"The default image for this resource.\"\n },\n \"maxres\": + {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The maximum + resolution quality image for this resource.\"\n },\n \"high\": + {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The high + quality image for this resource.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ThumbnailDetails\",\n \"description\": \"Internal representation + of thumbnails for a YouTube resource.\"\n },\n \"PlaylistItemSnippet\": + {\n \"id\": \"PlaylistItemSnippet\",\n \"properties\": {\n \"description\": + {\n \"description\": \"The item's description.\",\n \"type\": + \"string\"\n },\n \"playlistId\": {\n \"type\": \"string\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n + \ \"youtube.playlistItems.update\"\n ]\n },\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + thGe playlist that the playlist item is in.\"\n },\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the user that added the item to the playlist.\",\n \"type\": \"string\"\n + \ },\n \"publishedAt\": {\n \"description\": \"The date + and time that the item was added to the playlist.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The item's + title.\"\n },\n \"videoOwnerChannelId\": {\n \"type\": + \"string\",\n \"description\": \"Channel id for the channel this + video belongs to.\"\n },\n \"position\": {\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The order in which the item appears in the playlist. The value uses a zero-based + index, so the first item has a position of 0, the second item has a position + of 1, and so forth.\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the playlist item. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"resourceId\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.playlistItems.insert\",\n + \ \"youtube.playlistItems.update\"\n ]\n },\n + \ \"$ref\": \"ResourceId\",\n \"description\": \"The id object + contains information that can be used to uniquely identify the resource that + is included in the playlist as the playlist item.\"\n },\n \"videoOwnerChannelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel this video belongs to.\"\n },\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel that the playlist item belongs to.\"\n }\n },\n + \ \"description\": \"Basic details about a playlist, including title, + description and thumbnails. Basic details of a YouTube Playlist item provided + by the author. Next ID: 15\",\n \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": + {\n \"id\": \"LiveBroadcastStatus\",\n \"type\": \"object\",\n \"properties\": + {\n \"liveBroadcastPriority\": {\n \"description\": \"Priority + of the live broadcast event (internal state).\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n + \ \"low\",\n \"normal\",\n \"high\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Low priority + broadcast: for low view count HoAs or other low priority broadcasts.\",\n + \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n + \ \"High priority broadcast: for high profile HoAs, like PixelCorp + ones.\"\n ]\n },\n \"recordingStatus\": {\n \"description\": + \"The broadcast's recording status.\",\n \"enumDescriptions\": [\n + \ \"No value or the value is unknown.\",\n \"The recording + has not yet been started.\",\n \"The recording is currently on.\",\n + \ \"The recording is completed, and cannot be started again.\"\n + \ ],\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n + \ \"notRecording\",\n \"recording\",\n \"recorded\"\n + \ ],\n \"type\": \"string\"\n },\n \"madeForKids\": + {\n \"description\": \"Whether the broadcast is made for kids or + not, decided by YouTube instead of the creator. This field is read only.\",\n + \ \"type\": \"boolean\"\n },\n \"lifeCycleStatus\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"No + value or the value is unknown.\",\n \"Incomplete settings, but + otherwise valid\",\n \"Complete settings\",\n \"Visible + only to partner, may need special UI treatment\",\n \"Viper is + recording; this means the \\\"clock\\\" is running\",\n \"The broadcast + is finished.\",\n \"This broadcast was removed by admin action\",\n + \ \"Transition into TESTING has been requested\",\n \"Transition + into LIVE has been requested\"\n ],\n \"description\": \"The + broadcast's status. The status can be updated using the API's liveBroadcasts.transition + method.\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n + \ \"created\",\n \"ready\",\n \"testing\",\n + \ \"live\",\n \"complete\",\n \"revoked\",\n + \ \"testStarting\",\n \"liveStarting\"\n ]\n + \ },\n \"privacyStatus\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"The broadcast's + privacy status. Note that the broadcast represents exactly one YouTube video, + so the privacy settings are identical to those supported for videos. In addition, + you can set this field by modifying the broadcast resource or by setting the + privacyStatus field of the corresponding video resource.\",\n \"enum\": + [\n \"public\",\n \"unlisted\",\n \"private\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"selfDeclaredMadeForKids\": {\n \"description\": \"This + field will be set to True if the creator declares the broadcast to be kids + only: go/live-cw-work.\",\n \"type\": \"boolean\"\n }\n },\n + \ \"description\": \"Live broadcast state.\"\n },\n \"I18nRegion\": + {\n \"type\": \"object\",\n \"id\": \"I18nRegion\",\n \"properties\": + {\n \"kind\": {\n \"default\": \"youtube#i18nRegion\",\n \"type\": \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n - \ }\n },\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\",\n \"id\": - \"VideoAbuseReportReason\"\n },\n \"I18nRegionListResponse\": {\n \"id\": - \"I18nRegionListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#i18nRegionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n },\n \"etag\": + this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the i18n region.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"I18nRegionSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the i18n region, such as region code and human-readable name.\"\n }\n + \ },\n \"description\": \"A *i18nRegion* resource identifies a region + where YouTube is available.\"\n },\n \"PlaylistItemListResponse\": {\n + \ \"type\": \"object\",\n \"properties\": {\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"description\": \"A list of + playlist items that match the request criteria.\",\n \"items\": {\n + \ \"$ref\": \"PlaylistItem\"\n }\n },\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". + Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\"\n + \ },\n \"etag\": {\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"PlaylistItemListResponse\"\n },\n \"ActivityContentDetailsComment\": + {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the resource associated with the comment.\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsComment\",\n + \ \"description\": \"Information about a resource that received a comment.\"\n + \ },\n \"SearchResult\": {\n \"properties\": {\n \"kind\": + {\n \"default\": \"youtube#searchResult\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about a search result, such as its title or description. For + example, if the search result is a video, then the title will be the video's + title and the description will be the video's description.\",\n \"$ref\": + \"SearchResultSnippet\"\n },\n \"id\": {\n \"description\": + \"The id object contains information that can be used to uniquely identify + the resource that matches the search request.\",\n \"$ref\": \"ResourceId\"\n + \ }\n },\n \"id\": \"SearchResult\",\n \"type\": \"object\",\n + \ \"description\": \"A search result contains information about a YouTube + video, channel, or playlist that matches the search parameters specified in + an API request. While a search result points to a uniquely identifiable resource, + like a video, it does not have its own persistent data.\"\n },\n \"InvideoPosition\": + {\n \"properties\": {\n \"cornerPosition\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"Describes in which corner of the + video the visual widget will appear.\",\n \"enum\": [\n \"topLeft\",\n + \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n + \ ],\n \"type\": \"string\"\n },\n \"type\": + {\n \"enumDescriptions\": [\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"corner\"\n ],\n + \ \"description\": \"Defines the position type.\"\n }\n },\n + \ \"description\": \"Describes the spatial position of a visual widget + inside a video. It is a union of various position types, out of which only + will be set one.\",\n \"type\": \"object\",\n \"id\": \"InvideoPosition\"\n + \ },\n \"WatchSettings\": {\n \"description\": \"Branding properties + for the watch. All deprecated.\",\n \"properties\": {\n \"textColor\": + {\n \"description\": \"The background color for the video watch page's + branded area.\",\n \"type\": \"string\"\n },\n \"featuredPlaylistId\": + {\n \"description\": \"An ID that uniquely identifies a playlist + that displays next to the video player.\",\n \"type\": \"string\"\n + \ },\n \"backgroundColor\": {\n \"type\": \"string\",\n + \ \"description\": \"The text color for the video watch page's branded + area.\"\n }\n },\n \"type\": \"object\",\n \"id\": \"WatchSettings\"\n + \ },\n \"PlaylistLocalization\": {\n \"properties\": {\n \"title\": + {\n \"description\": \"The localized strings for playlist's title.\",\n + \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": + \"The localized strings for playlist's description.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"PlaylistLocalization\",\n + \ \"type\": \"object\",\n \"description\": \"Playlist localization + setting\"\n },\n \"VideoGetRatingResponse\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#videoGetRatingResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n + \ },\n \"items\": {\n \"description\": \"A list of ratings + that match the request criteria.\",\n \"items\": {\n \"$ref\": + \"VideoRating\"\n },\n \"type\": \"array\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"I18nRegion\"\n },\n - \ \"description\": \"A list of regions where YouTube is available. - In this map, the i18n region ID is the map key, and its value is the corresponding - i18nRegion resource.\"\n }\n }\n },\n \"LiveStreamContentDetails\": - {\n \"id\": \"LiveStreamContentDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"closedCaptionsIngestionUrl\": {\n \"type\": - \"string\",\n \"description\": \"The ingestion URL where the closed - captions of this stream are sent.\"\n },\n \"isReusable\": {\n - \ \"description\": \"Indicates whether the stream is reusable, which - means that it can be bound to multiple broadcasts. It is common for broadcasters - to reuse the same stream for many different broadcasts if those broadcasts - occur at different times. If you set this value to false, then the stream - will not be reusable, which means that it can only be bound to one broadcast. - Non-reusable streams differ from reusable streams in the following ways: - - A non-reusable stream can only be bound to one broadcast. - A non-reusable - stream might be deleted by an automated process after the broadcast ends. - - The liveStreams.list method does not list non-reusable streams if you call - the method and set the mine parameter to true. The only way to use that method - to retrieve the resource for a non-reusable stream is to use the id parameter - to identify the stream. \",\n \"type\": \"boolean\"\n }\n - \ },\n \"description\": \"Detailed settings of a stream.\"\n },\n - \ \"ActivityContentDetailsSocial\": {\n \"id\": \"ActivityContentDetailsSocial\",\n - \ \"properties\": {\n \"referenceUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL of the social network post.\"\n - \ },\n \"author\": {\n \"description\": \"The author - of the social network post.\",\n \"type\": \"string\"\n },\n - \ \"imageUrl\": {\n \"description\": \"An image of the post's - author.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\",\n \"$ref\": - \"ResourceId\"\n },\n \"type\": {\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The name of the social network.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"type\": \"object\",\n \"description\": - \"Details about a social network post.\"\n },\n \"SubscriptionSnippet\": - {\n \"properties\": {\n \"description\": {\n \"description\": - \"The subscription's details.\",\n \"type\": \"string\"\n },\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\",\n \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n }\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the subscription - was created.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the subscription - belongs to.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the subscriber's channel.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The subscription's title.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a subscription, including title, - description and thumbnails of the subscribed item.\",\n \"id\": \"SubscriptionSnippet\"\n + \"string\"\n }\n },\n \"id\": \"VideoGetRatingResponse\"\n + \ },\n \"TokenPagination\": {\n \"type\": \"object\",\n \"id\": + \"TokenPagination\",\n \"description\": \"Stub token pagination template + to suppress results.\",\n \"properties\": {}\n },\n \"RelatedEntity\": + {\n \"properties\": {\n \"entity\": {\n \"$ref\": \"Entity\"\n + \ }\n },\n \"id\": \"RelatedEntity\",\n \"type\": \"object\"\n \ },\n \"CaptionListResponse\": {\n \"type\": \"object\",\n \"id\": - \"CaptionListResponse\",\n \"properties\": {\n \"items\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Caption\"\n },\n \"description\": \"A list of captions - that match the request criteria.\"\n },\n \"etag\": {\n \"description\": + \"CaptionListResponse\",\n \"properties\": {\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"MemberSnippet\": {\n \"id\": \"MemberSnippet\",\n - \ \"properties\": {\n \"membershipsDetails\": {\n \"description\": - \"Details about the user's membership.\",\n \"$ref\": \"MembershipsDetails\"\n - \ },\n \"memberDetails\": {\n \"description\": \"Details - about the member.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n - \ \"creatorChannelId\": {\n \"description\": \"The id of the - channel that's offering memberships.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatBanSnippet\": - {\n \"id\": \"LiveChatBanSnippet\",\n \"properties\": {\n \"type\": - {\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"An invalid ban type.\",\n - \ \"A permanent ban.\",\n \"A temporary ban.\"\n ],\n - \ \"description\": \"The type of ban.\"\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The chat - this ban is pertinent to.\"\n },\n \"banDurationSeconds\": {\n - \ \"format\": \"uint64\",\n \"description\": \"The duration - of a ban, only filled if the ban has type TEMPORARY.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"Subscription\": - {\n \"properties\": {\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\",\n - \ \"$ref\": \"SubscriptionContentDetails\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the subscription, including its title and the channel that the user - subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the subscription.\"\n },\n \"subscriberSnippet\": {\n - \ \"description\": \"The subscriberSnippet object contains basic details - about the subscriber.\",\n \"$ref\": \"SubscriptionSubscriberSnippet\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"default\": \"youtube#subscription\"\n }\n },\n \"description\": - \"A *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\",\n \"type\": \"object\",\n - \ \"id\": \"Subscription\"\n },\n \"ChannelContentDetails\": {\n - \ \"id\": \"ChannelContentDetails\",\n \"description\": \"Details - about the content of a channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"relatedPlaylists\": {\n \"properties\": {\n \"likes\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"uploads\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s uploaded videos. Use the videos.insert method to upload new videos - and the videos.delete method to delete previously uploaded videos.\"\n },\n - \ \"favorites\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"watchLater\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s watch later playlist. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"watchHistory\": {\n \"description\": \"The ID of - the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n - \ }\n }\n },\n \"ChannelToStoreLinkDetails\": {\n \"id\": - \"ChannelToStoreLinkDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"storeName\": {\n \"description\": \"Name of the store.\",\n - \ \"type\": \"string\"\n },\n \"merchantId\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"Google Merchant Center id of the store.\"\n },\n \"storeUrl\": - {\n \"type\": \"string\",\n \"description\": \"Landing page - of the store.\"\n }\n },\n \"description\": \"Information - specific to a store on a merchandising platform linked to a YouTube channel.\"\n - \ },\n \"VideoSnippet\": {\n \"id\": \"VideoSnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about a video, including - title, description, uploader, thumbnails and category.\",\n \"properties\": - {\n \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the video - was uploaded.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that the video was uploaded to.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The video's - description. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"defaultAudioLanguage\": {\n \"type\": \"string\",\n \"description\": - \"The default_audio_language property specifies the language spoken in the - video's default audio track.\"\n },\n \"channelTitle\": {\n - \ \"description\": \"Channel title for the channel that the video - belongs to.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The video's - title. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"liveBroadcastContent\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n },\n - \ \"tags\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of keyword tags associated - with the video. Tags may contain spaces.\",\n \"type\": \"array\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"localized\": {\n \"$ref\": \"VideoLocalization\",\n - \ \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the videos's default - snippet.\"\n },\n \"categoryId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube video category associated with the - video.\"\n }\n }\n },\n \"LiveChatSuperStickerDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatSuperStickerDetails\",\n - \ \"properties\": {\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n },\n - \ \"tier\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\"\n },\n - \ \"currency\": {\n \"type\": \"string\",\n \"description\": + \ \"items\": {\n \"items\": {\n \"$ref\": \"Caption\"\n + \ },\n \"description\": \"A list of captions that match the + request criteria.\",\n \"type\": \"array\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n \"default\": + \"youtube#captionListResponse\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"LiveChatSuperStickerDetails\": {\n \"properties\": + {\n \"currency\": {\n \"type\": \"string\",\n \"description\": \"The currency in which the purchase was made.\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n },\n \"amountDisplayString\": + {\n \"description\": \"Information about the Super Sticker.\",\n + \ \"$ref\": \"SuperStickerMetadata\"\n },\n \"amountDisplayString\": {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n }\n - \ }\n },\n \"PlaylistSnippet\": {\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a playlist, including title, - description and thumbnails.\",\n \"id\": \"PlaylistSnippet\",\n \"properties\": - {\n \"tags\": {\n \"description\": \"Keyword tags associated - with the playlist.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the playlist.\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel title of the channel that the video - belongs to.\"\n },\n \"title\": {\n \"description\": - \"The playlist's title.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlists.insert\",\n \"youtube.playlists.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": - \"The language of the playlist's default title and description.\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the playlist was created.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"$ref\": \"PlaylistLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The playlist's description.\"\n },\n \"thumbnailVideoId\": - {\n \"description\": \"Note: if the playlist has a custom thumbnail, - this field will not be populated. The video id selected by the user that will - be used as the thumbnail of this playlist. This field defaults to the first - publicly viewable video in the playlist, if: 1. The user has never selected - a video to be the thumbnail of the playlist. 2. The user selects a video to - be the thumbnail, and then removes that video from the playlist. 3. The user - selects a non-owned video to be the thumbnail, but that video becomes private, - or gets deleted.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n }\n }\n - \ },\n \"VideoAbuseReportSecondaryReason\": {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"label\": {\n - \ \"type\": \"string\",\n \"description\": \"The localized - label for this abuse report secondary reason.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - this abuse report secondary reason.\"\n }\n }\n },\n \"SubscriptionContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"SubscriptionContentDetails\",\n - \ \"properties\": {\n \"totalItemCount\": {\n \"description\": - \"The approximate number of items that the subscription points to.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"newItemCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of new items in the subscription since its content was last read.\"\n - \ },\n \"activityType\": {\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The type of - activity this subscription is for (only uploads, everything).\"\n }\n - \ },\n \"description\": \"Details about the content to witch a subscription - refers.\"\n },\n \"ChannelConversionPing\": {\n \"properties\": - {\n \"conversionUrl\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"context\": {\n \"description\": \"Defines the context of - the ping.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ]\n }\n },\n \"description\": - \"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.\",\n \"type\": \"object\",\n \"id\": \"ChannelConversionPing\"\n - \ },\n \"LiveChatMessageDeletedDetails\": {\n \"id\": \"LiveChatMessageDeletedDetails\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"PageInfo\": - {\n \"type\": \"object\",\n \"description\": \"Paging details for - lists of resources, including total number of items available and number of - resources returned in a single page.\",\n \"id\": \"PageInfo\",\n \"properties\": - {\n \"totalResults\": {\n \"type\": \"integer\",\n \"format\": - \"int32\",\n \"description\": \"The total number of results in the - result set.\"\n },\n \"resultsPerPage\": {\n \"type\": - \"integer\",\n \"description\": \"The number of results included - in the API response.\",\n \"format\": \"int32\"\n }\n }\n - \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"properties\": - {\n \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the member to this Member Milestone Chat. This field - is empty for messages without a comment from the member.\"\n },\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level at which the viever is a member. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"memberMonth\": {\n \"type\": - \"integer\",\n \"description\": \"The total amount of months (rounded - up) the viewer has been a member that granted them this Member Milestone Chat. - This is the same number of months as is being displayed to YouTube users.\",\n - \ \"format\": \"uint32\"\n }\n },\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"type\": \"object\"\n },\n \"VideoSuggestions\": {\n \"description\": - \"Specifies suggestions on how to improve video content, including encoding - hints, tag suggestions, and editor suggestions.\",\n \"properties\": - {\n \"tagSuggestions\": {\n \"type\": \"array\",\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\",\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ }\n },\n \"processingHints\": {\n \"type\": - \"array\",\n \"items\": {\n \"enum\": [\n \"nonStreamableMov\",\n + string that displays the fund amount and currency to the user.\"\n },\n + \ \"amountMicros\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"The amount purchased by the user, + in micros (1,750,000 micros = 1.75).\"\n },\n \"tier\": {\n + \ \"format\": \"uint32\",\n \"description\": \"The tier in + which the amount belongs. Lower amounts belong to lower tiers. The lowest + tier is 1.\",\n \"type\": \"integer\"\n }\n },\n \"id\": + \"LiveChatSuperStickerDetails\",\n \"type\": \"object\"\n },\n \"VideoSuggestions\": + {\n \"type\": \"object\",\n \"properties\": {\n \"processingHints\": + {\n \"items\": {\n \"enum\": [\n \"nonStreamableMov\",\n \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n + \ ],\n \"enumDescriptions\": [\n \"The MP4 + file is not streamable, this will slow down the processing. MOOV atom was + not found at the beginning of the file.\",\n \"Probably a better + quality version of the video exists. The video has wide screen aspect ratio, + but is not an HD video.\",\n \"Uploaded video is spherical video.\",\n + \ \"Uploaded video has spatial audio.\",\n \"Uploaded + video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n + \ \"type\": \"string\"\n },\n \"description\": + \"A list of suggestions that may improve YouTube's ability to process the + video.\",\n \"type\": \"array\"\n },\n \"editorSuggestions\": + {\n \"items\": {\n \"enum\": [\n \"videoAutoLevels\",\n + \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ]\n - \ },\n \"description\": \"A list of suggestions that may - improve YouTube's ability to process the video.\"\n },\n \"processingWarnings\": - {\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"enum\": [\n \"unknownContainer\",\n + [\n \"Picture brightness levels seem off and could be corrected.\",\n + \ \"The video appears shaky and could be stabilized.\",\n \"Margins + (mattes) detected around the picture could be cropped.\",\n \"The + audio track appears silent and could be swapped with a better quality one.\"\n + \ ]\n },\n \"description\": \"A list of video + editing operations that might improve the video quality or playback experience + of the uploaded video.\",\n \"type\": \"array\"\n },\n \"processingWarnings\": + {\n \"description\": \"A list of reasons why YouTube may have difficulty + transcoding the uploaded video or that might result in an erroneous transcoding. + These warnings are generated before YouTube actually processes the uploaded + video file. In addition, they identify issues that are unlikely to cause the + video processing to fail but that might cause problems such as sync issues, + video artifacts, or a missing audio track.\",\n \"type\": \"array\",\n + \ \"items\": {\n \"enumDescriptions\": [\n \"Unrecognized + file format, transcoding is likely to fail.\",\n \"Unrecognized + video codec, transcoding is likely to fail.\",\n \"Unrecognized + audio codec, transcoding is likely to fail.\",\n \"Conflicting + container and stream resolutions.\",\n \"Edit lists are not currently + supported.\",\n \"Video codec that is known to cause problems + was used.\",\n \"Audio codec that is known to cause problems + was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported + spherical video projection type.\",\n \"Unsupported HDR pixel + format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic + HDR lookup table attached.\"\n ],\n \"enum\": [\n \"unknownContainer\",\n \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n \ \"inconsistentResolution\",\n \"hasEditlist\",\n \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ]\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of reasons - why YouTube may have difficulty transcoding the uploaded video or that might - result in an erroneous transcoding. These warnings are generated before YouTube - actually processes the uploaded video file. In addition, they identify issues - that are unlikely to cause the video processing to fail but that might cause - problems such as sync issues, video artifacts, or a missing audio track.\"\n - \ },\n \"processingErrors\": {\n \"items\": {\n \"enumDescriptions\": + \ \"problematicHdrLookupTable\"\n ],\n \"type\": + \"string\"\n }\n },\n \"tagSuggestions\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n + \ },\n \"description\": \"A list of keyword tags that could + be added to the video's metadata to increase the likelihood that users will + locate your video when searching or browsing on YouTube.\"\n },\n \"processingErrors\": + {\n \"description\": \"A list of errors that will prevent YouTube + from successfully processing the uploaded video video. These errors indicate + that, regardless of the video's current processing status, eventually, that + status will almost certainly be failed.\",\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video file.\",\n @@ -4223,6208 +3861,2810 @@ interactions: audio layout type.\"\n ],\n \"enum\": [\n \"audioFile\",\n \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of errors that will prevent - YouTube from successfully processing the uploaded video video. These errors - indicate that, regardless of the video's current processing status, eventually, - that status will almost certainly be failed.\"\n },\n \"editorSuggestions\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ],\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ]\n - \ },\n \"description\": \"A list of video editing operations - that might improve the video quality or playback experience of the uploaded - video.\"\n }\n },\n \"id\": \"VideoSuggestions\",\n \"type\": - \"object\"\n },\n \"CommentListResponse\": {\n \"id\": \"CommentListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentListResponse\\\".\",\n \"default\": - \"youtube#commentListResponse\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Comment\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of comments that match the request criteria.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"description\": \"Information about a video that was marked - as a favorite video.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"PlaylistContentDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"itemCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The number of videos in the playlist.\",\n \"type\": \"integer\"\n - \ }\n },\n \"id\": \"PlaylistContentDetails\"\n },\n \"VideoContentDetails\": - {\n \"properties\": {\n \"definition\": {\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\",\n \"enumDescriptions\": - [\n \"sd\",\n \"hd\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"sd\",\n \"hd\"\n - \ ]\n },\n \"caption\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"true\",\n \"false\"\n ],\n \"type\": - \"string\",\n \"description\": \"The value of captions indicates - whether the video has captions or not.\"\n },\n \"dimension\": - {\n \"type\": \"string\",\n \"description\": \"The value - of dimension indicates whether the video is available in 3D or in 2D.\"\n - \ },\n \"countryRestriction\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\"\n },\n - \ \"regionRestriction\": {\n \"description\": \"The regionRestriction - object contains information about the countries where a video is (or is not) - viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"contentRating\": - {\n \"description\": \"Specifies the ratings that the video received - under various rating schemes.\",\n \"$ref\": \"ContentRating\"\n - \ },\n \"licensedContent\": {\n \"description\": \"The - value of is_license_content indicates whether the video is licensed content.\",\n - \ \"type\": \"boolean\"\n },\n \"duration\": {\n \"type\": - \"string\",\n \"description\": \"The length of the video. The tag - value is an ISO 8601 duration in the format PT#M#S, in which the letters PT - indicate that the value specifies a period of time, and the letters M and - S refer to length in minutes and seconds, respectively. The # characters preceding - the M and S letters are both integers that specify the number of minutes (or - seconds) of the video. For example, a value of PT15M51S indicates that the - video is 15 minutes and 51 seconds long.\"\n },\n \"hasCustomThumbnail\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\"\n },\n \"projection\": - {\n \"description\": \"Specifies the projection format of the video.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ]\n }\n },\n \"description\": - \"Details about the content of a YouTube Video.\",\n \"type\": \"object\",\n - \ \"id\": \"VideoContentDetails\"\n },\n \"AbuseReport\": {\n \"type\": - \"object\",\n \"id\": \"AbuseReport\",\n \"properties\": {\n \"subject\": - {\n \"$ref\": \"Entity\"\n },\n \"relatedEntities\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n }\n },\n \"abuseTypes\": {\n \"items\": - {\n \"$ref\": \"AbuseType\"\n },\n \"type\": - \"array\"\n },\n \"description\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"ActivityContentDetailsPromotedItem\": {\n - \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"properties\": {\n \"creativeViewUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user was shown this promoted item.\"\n },\n \"forecastingUrl\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"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.\"\n },\n - \ \"customCtaButtonText\": {\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\",\n \"type\": \"string\"\n },\n \"destinationUrl\": - {\n \"description\": \"The URL the client should direct the user - to, if the user chooses to visit the advertiser's website.\",\n \"type\": - \"string\"\n },\n \"adTag\": {\n \"description\": \"The - URL the client should fetch to request a promoted item.\",\n \"type\": - \"string\"\n },\n \"impressionUrl\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\",\n \"type\": - \"array\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\"\n },\n \"descriptionText\": {\n \"description\": - \"The text description to accompany the promoted item.\",\n \"type\": - \"string\"\n },\n \"ctaType\": {\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"clickTrackingUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user clicked through - on this promoted item.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Details about a resource which is being promoted.\"\n - \ },\n \"AccessPolicy\": {\n \"description\": \"Rights management - policy for YouTube resources.\",\n \"properties\": {\n \"allowed\": - {\n \"description\": \"The value of allowed indicates whether the - access to the policy is allowed or denied by default.\",\n \"type\": - \"boolean\"\n },\n \"exception\": {\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n }\n },\n \"id\": - \"AccessPolicy\",\n \"type\": \"object\"\n },\n \"VideoLocalization\": - {\n \"description\": \"Localized versions of certain video properties - (e.g. title).\",\n \"id\": \"VideoLocalization\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"Localized version of the video's description.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's title.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsPlaylistItem\": {\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\",\n \"$ref\": \"ResourceId\"\n },\n \"playlistId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n },\n \"playlistItemId\": - {\n \"type\": \"string\",\n \"description\": \"ID of the - item within the playlist.\"\n }\n },\n \"description\": \"Information - about a new playlist item.\",\n \"type\": \"object\"\n },\n \"LiveStreamListResponse\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n \"default\": - \"youtube#liveStreamListResponse\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - live streams that match the request criteria.\",\n \"items\": {\n - \ \"$ref\": \"LiveStream\"\n }\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n - \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n }\n },\n \"VideoFileDetailsAudioStream\": - {\n \"id\": \"VideoFileDetailsAudioStream\",\n \"description\": - \"Information about an audio stream.\",\n \"type\": \"object\",\n \"properties\": - {\n \"codec\": {\n \"description\": \"The audio codec that - the stream uses.\",\n \"type\": \"string\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"description\": \"The audio - stream's bitrate, in bits per second.\",\n \"type\": \"string\"\n - \ },\n \"channelCount\": {\n \"type\": \"integer\",\n - \ \"description\": \"The number of audio channels that the stream - contains.\",\n \"format\": \"uint32\"\n },\n \"vendor\": - {\n \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\",\n \"type\": - \"string\"\n }\n }\n },\n \"PlaylistStatus\": {\n \"properties\": - {\n \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The playlist's privacy status.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ]\n }\n },\n \"id\": \"PlaylistStatus\",\n \"type\": - \"object\"\n },\n \"Caption\": {\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the caption.\",\n \"$ref\": - \"CaptionSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"default\": \"youtube#caption\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the caption track.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A *caption* resource represents a YouTube caption - track. A caption track is associated with exactly one YouTube video.\",\n - \ \"id\": \"Caption\"\n },\n \"ChannelSectionTargeting\": {\n \"id\": - \"ChannelSectionTargeting\",\n \"properties\": {\n \"languages\": - {\n \"type\": \"array\",\n \"description\": \"The language - the channel section is targeting.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"regions\": {\n \"description\": - \"The region the channel section is targeting.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"countries\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"The country the channel section - is targeting.\",\n \"type\": \"array\"\n }\n },\n \"description\": - \"ChannelSection targeting setting.\",\n \"type\": \"object\"\n },\n - \ \"MembershipsLevel\": {\n \"description\": \"A *membershipsLevel* - resource represents an offer made by YouTube creators for their fans. Users - can become members of the channel by joining one of the available levels. - They will provide recurring monetary support and receives special benefits.\",\n - \ \"type\": \"object\",\n \"id\": \"MembershipsLevel\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the memberships level.\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevel\"\n - \ }\n }\n },\n \"ActivityContentDetailsBulletin\": {\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Details about - a channel bulletin post.\",\n \"id\": \"ActivityContentDetailsBulletin\"\n - \ },\n \"I18nLanguageListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"I18nLanguageListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of supported i18n languages. - In this map, the i18n language ID is the map key, and its value is the corresponding - i18nLanguage resource.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoTopicDetails\": {\n \"properties\": - {\n \"topicCategories\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\"\n },\n \"relevantTopicIds\": {\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"topicIds\": {\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Freebase topic information related to - the video.\",\n \"id\": \"VideoTopicDetails\"\n },\n \"I18nLanguageSnippet\": - {\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the language in the - language itself.\"\n },\n \"hl\": {\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - an i18n language, such as language code and human-readable name.\",\n \"id\": - \"I18nLanguageSnippet\",\n \"type\": \"object\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"properties\": {\n \"bannedUserDetails\": {\n \"description\": - \"The details of the user that was banned.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banType\": {\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"description\": \"The type of ban.\"\n },\n \"banDurationSeconds\": - {\n \"description\": \"The duration of the ban. This property is - only present if the banType is temporary.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n }\n },\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"type\": \"object\"\n },\n \"VideoLiveStreamingDetails\": {\n - \ \"description\": \"Details about the live streaming metadata.\",\n \"properties\": - {\n \"concurrentViewers\": {\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"scheduledEndTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast is scheduled to end. - If the value is empty or the property is not present, then the broadcast is - scheduled to contiue indefinitely.\"\n },\n \"actualEndTime\": - {\n \"type\": \"string\",\n \"description\": \"The time - that the broadcast actually ended. This value will not be available until - the broadcast is over.\",\n \"format\": \"date-time\"\n },\n - \ \"scheduledStartTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast is scheduled to begin.\",\n - \ \"type\": \"string\"\n },\n \"actualStartTime\": {\n - \ \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"activeLiveChatId\": + \ ]\n }\n }\n },\n \"id\": \"VideoSuggestions\",\n + \ \"description\": \"Specifies suggestions on how to improve video content, + including encoding hints, tag suggestions, and editor suggestions.\"\n },\n + \ \"VideoLiveStreamingDetails\": {\n \"id\": \"VideoLiveStreamingDetails\",\n + \ \"properties\": {\n \"actualEndTime\": {\n \"format\": + \"date-time\",\n \"description\": \"The time that the broadcast actually + ended. This value will not be available until the broadcast is over.\",\n + \ \"type\": \"string\"\n },\n \"activeLiveChatId\": {\n \"type\": \"string\",\n \"description\": \"The ID of the currently active live chat attached to this video. This field is filled only if the video is a currently live broadcast that has live chat. Once the broadcast transitions to complete this field will be removed and the live chat closed down. For persistent broadcasts that live chat id will no longer be tied to this video but rather to the new video being displayed at the persistent - page.\"\n }\n },\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"type\": \"object\"\n },\n \"LevelDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"displayName\": {\n \"description\": - \"The name that should be used when referring to this level.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LevelDetails\"\n },\n - \ \"WatchSettings\": {\n \"id\": \"WatchSettings\",\n \"properties\": - {\n \"backgroundColor\": {\n \"description\": \"The text color - for the video watch page's branded area.\",\n \"type\": \"string\"\n - \ },\n \"textColor\": {\n \"type\": \"string\",\n \"description\": - \"The background color for the video watch page's branded area.\"\n },\n - \ \"featuredPlaylistId\": {\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Branding properties for the watch. All deprecated.\",\n \"type\": \"object\"\n - \ },\n \"LiveBroadcastListResponse\": {\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"description\": \"A list of broadcasts - that match the request criteria.\"\n },\n \"pageInfo\": {\n - \ \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"default\": \"youtube#liveBroadcastListResponse\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n }\n },\n \"ThirdPartyLinkStatus\": - {\n \"id\": \"ThirdPartyLinkStatus\",\n \"properties\": {\n \"linkStatus\": - {\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"type\": - \"object\",\n \"description\": \"The third-party link status object contains - information about the status of the link.\"\n },\n \"InvideoTiming\": - {\n \"properties\": {\n \"offsetMs\": {\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"durationMs\": - {\n \"format\": \"uint64\",\n \"description\": \"Defines + page.\"\n },\n \"actualStartTime\": {\n \"description\": + \"The time that the broadcast actually started. This value will not be available + until the broadcast begins.\",\n \"format\": \"date-time\",\n \"type\": + \"string\"\n },\n \"scheduledStartTime\": {\n \"description\": + \"The time that the broadcast is scheduled to begin.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"scheduledEndTime\": + {\n \"description\": \"The time that the broadcast is scheduled to + end. If the value is empty or the property is not present, then the broadcast + is scheduled to contiue indefinitely.\",\n \"format\": \"date-time\",\n + \ \"type\": \"string\"\n },\n \"concurrentViewers\": + {\n \"description\": \"The number of viewers currently watching the + broadcast. The property and its value will be present if the broadcast has + current viewers and the broadcast owner has not hidden the viewcount for the + video. Note that YouTube stops tracking the number of concurrent viewers for + a broadcast when the broadcast ends. So, this property would not identify + the number of viewers watching an archived video of a live broadcast that + already ended.\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n }\n },\n \"description\": \"Details about the + live streaming metadata.\",\n \"type\": \"object\"\n },\n \"ChannelSectionLocalization\": + {\n \"description\": \"ChannelSection localization setting\",\n \"id\": + \"ChannelSectionLocalization\",\n \"type\": \"object\",\n \"properties\": + {\n \"title\": {\n \"description\": \"The localized strings + for channel section's title.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"SubscriptionSnippet\": {\n \"properties\": {\n + \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The date and time that the subscription + was created.\"\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The subscription's title.\"\n },\n \"description\": + {\n \"description\": \"The subscription's details.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the subscriber's channel.\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"channelTitle\": {\n \"description\": + \"Channel title for the channel that the subscription belongs to.\",\n \"type\": + \"string\"\n },\n \"resourceId\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.subscriptions.insert\"\n + \ ]\n },\n \"$ref\": \"ResourceId\",\n \"description\": + \"The id object contains information about the channel that the user subscribed + to.\"\n }\n },\n \"type\": \"object\",\n \"id\": \"SubscriptionSnippet\",\n + \ \"description\": \"Basic details about a subscription, including title, + description and thumbnails of the subscribed item.\"\n },\n \"LiveChatMessage\": + {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#liveChatMessage\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n + \ },\n \"authorDetails\": {\n \"description\": \"The + authorDetails object contains basic details about the user that posted this + message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube assigns + to uniquely identify the message.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"LiveChatMessage\",\n \"description\": \"A *liveChatMessage* + resource represents a chat message in a YouTube Live Chat.\",\n \"type\": + \"object\"\n },\n \"LiveChatModeratorSnippet\": {\n \"properties\": + {\n \"liveChatId\": {\n \"description\": \"The ID of the live + chat this moderator can act on.\",\n \"type\": \"string\"\n },\n + \ \"moderatorDetails\": {\n \"description\": \"Details about + the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n }\n + \ },\n \"id\": \"LiveChatModeratorSnippet\",\n \"type\": \"object\"\n + \ },\n \"Thumbnail\": {\n \"id\": \"Thumbnail\",\n \"description\": + \"A thumbnail is an image representing a YouTube resource.\",\n \"properties\": + {\n \"height\": {\n \"description\": \"(Optional) Height of + the thumbnail image.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n },\n \"width\": {\n \"description\": \"(Optional) + Width of the thumbnail image.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n },\n \"url\": {\n \"type\": \"string\",\n + \ \"description\": \"The thumbnail image's URL.\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"VideoProjectDetails\": {\n \"properties\": + {},\n \"id\": \"VideoProjectDetails\",\n \"type\": \"object\",\n + \ \"description\": \"DEPRECATED. b/157517979: This part was never populated + after it was added. However, it sees non-zero traffic because there is generated + client code in the wild that refers to it [1]. We keep this field and do NOT + remove it because otherwise V3 would return an error when this part gets requested + [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n + \ },\n \"VideoRecordingDetails\": {\n \"description\": \"Recording + information associated with the video.\",\n \"type\": \"object\",\n \"id\": + \"VideoRecordingDetails\",\n \"properties\": {\n \"locationDescription\": + {\n \"description\": \"The text description of the location where + the video was recorded.\",\n \"type\": \"string\"\n },\n \"recordingDate\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the video was recorded.\",\n \"format\": \"date-time\"\n + \ },\n \"location\": {\n \"$ref\": \"GeoPoint\",\n \"description\": + \"The geolocation information associated with the video.\"\n }\n }\n + \ },\n \"InvideoTiming\": {\n \"type\": \"object\",\n \"description\": + \"Describes a temporal position of a visual widget inside a video.\",\n \"id\": + \"InvideoTiming\",\n \"properties\": {\n \"durationMs\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n - \ \"description\": \"Describes a timing type. If the value is offsetFromStart, - then the offsetMs field represents an offset from the start of the video. - If the value is offsetFromEnd, then the offsetMs field represents an offset - from the end of the video.\"\n }\n },\n \"id\": \"InvideoTiming\",\n - \ \"description\": \"Describes a temporal position of a visual widget - inside a video.\",\n \"type\": \"object\"\n },\n \"SearchResultSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a search result, including title, description and thumbnails of the item referenced - by the search result.\",\n \"properties\": {\n \"description\": - {\n \"description\": \"A description of the search result.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - title of the search result.\",\n \"type\": \"string\"\n },\n - \ \"liveBroadcastContent\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"description\": \"It indicates if the resource (video - or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" - if there is not any upcoming/active live broadcasts.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The creation date and time of the resource that - the search result identifies.\"\n },\n \"channelTitle\": {\n - \ \"type\": \"string\",\n \"description\": \"The title of - the channel that published the resource that the search result identifies.\"\n - \ }\n },\n \"id\": \"SearchResultSnippet\"\n },\n \"VideoCategorySnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"title\": - {\n \"description\": \"The video category's title.\",\n \"type\": - \"string\"\n },\n \"assignable\": {\n \"type\": \"boolean\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"description\": \"The YouTube channel - that created the video category.\"\n }\n },\n \"id\": \"VideoCategorySnippet\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\"\n },\n \"VideoAbuseReportReasonSnippet\": {\n \"description\": - \"Basic details about a video category, such as its localized title.\",\n - \ \"properties\": {\n \"secondaryReasons\": {\n \"description\": - \"The secondary reasons associated with this reason, if any are available. - (There might be 0 or more.)\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportSecondaryReason\"\n },\n \"type\": \"array\"\n - \ },\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label belonging to this abuse report reason.\"\n }\n - \ },\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"type\": - \"object\"\n },\n \"Comment\": {\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#comment\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the comment.\",\n \"$ref\": \"CommentSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the comment.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"Comment\",\n \"description\": \"A - *comment* represents a single YouTube comment.\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"gifterChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ },\n \"memberLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the Level at which the viewer is - a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n }\n },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"ActivitySnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"thumbnails\": {\n \"description\": \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the video was uploaded.\"\n - \ },\n \"channelTitle\": {\n \"description\": \"Channel - title for the channel responsible for this activity\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the resource primarily associated - with the activity.\"\n },\n \"type\": {\n \"description\": - \"The type of activity that the resource describes.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ]\n },\n \"groupId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The description of the resource primarily - associated with the activity. @mutable youtube.activities.insert\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel associated with - the activity.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about an activity, including title, description, thumbnails, - activity type and group. Next ID: 12\",\n \"id\": \"ActivitySnippet\"\n - \ },\n \"LocalizedProperty\": {\n \"type\": \"object\",\n \"properties\": - {\n \"localized\": {\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n },\n \"type\": \"array\"\n },\n - \ \"defaultLanguage\": {\n \"$ref\": \"LanguageTag\",\n \"description\": - \"The language of the default property.\"\n },\n \"default\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LocalizedProperty\"\n - \ },\n \"MembershipsLevelSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"levelDetails\": {\n \"$ref\": - \"LevelDetails\",\n \"description\": \"Details about the pricing - level.\"\n },\n \"creatorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the channel that's offering - channel memberships.\"\n }\n },\n \"id\": \"MembershipsLevelSnippet\"\n - \ },\n \"PlaylistItemSnippet\": {\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails. Basic details - of a YouTube Playlist item provided by the author. Next ID: 15\",\n \"type\": - \"object\",\n \"id\": \"PlaylistItemSnippet\",\n \"properties\": - {\n \"publishedAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the item was added to the playlist.\",\n \"format\": - \"date-time\"\n },\n \"videoOwnerChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel id for the channel this - video belongs to.\"\n },\n \"resourceId\": {\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that is included in the playlist as the playlist item.\",\n \"$ref\": - \"ResourceId\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n }\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist item. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify thGe playlist that the playlist item is in.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"description\": {\n \"description\": \"The item's - description.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the playlist - item belongs to.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The item's - title.\"\n },\n \"videoOwnerChannelTitle\": {\n \"description\": - \"Channel title for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the user that added the item - to the playlist.\",\n \"type\": \"string\"\n },\n \"position\": - {\n \"description\": \"The order in which the item appears in the - playlist. The value uses a zero-based index, so the first item has a position - of 0, the second item has a position of 1, and so forth.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n }\n }\n },\n - \ \"ActivityContentDetailsSubscription\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource that the user subscribed to.\"\n }\n },\n - \ \"id\": \"ActivityContentDetailsSubscription\",\n \"description\": - \"Information about a channel that a user subscribed to.\"\n },\n \"PlaylistPlayer\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistPlayer\",\n \"properties\": - {\n \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\",\n \"type\": - \"string\"\n }\n }\n },\n \"TokenPagination\": {\n \"id\": - \"TokenPagination\",\n \"properties\": {},\n \"type\": \"object\",\n - \ \"description\": \"Stub token pagination template to suppress results.\"\n - \ },\n \"VideoFileDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"creationTime\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the uploaded video file was created. The value is - specified in ISO 8601 format. Currently, the following ISO 8601 formats are - supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time - with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"videoStreams\": - {\n \"type\": \"array\",\n \"description\": \"A list of - video streams contained in the uploaded video file. Each item in the list - contains detailed metadata about a video stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n }\n },\n - \ \"container\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded video file's container format.\"\n },\n \"durationMs\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The length of the uploaded video in milliseconds.\"\n },\n \"fileType\": - {\n \"enumDescriptions\": [\n \"Known video file (e.g., - an MP4 file).\",\n \"Audio only file (e.g., an MP3 file).\",\n - \ \"Image file (e.g., a JPEG image).\",\n \"Archive file - (e.g., a ZIP archive).\",\n \"Document or text file (e.g., MS Word - document).\",\n \"Movie project file (e.g., Microsoft Windows Movie - Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ],\n \"description\": \"The uploaded file's type as detected - by YouTube's video processing engine. Currently, YouTube only processes video - files, but this field is present whether a video file or another type of file - was uploaded.\"\n },\n \"audioStreams\": {\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ }\n },\n \"fileSize\": {\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"bitrateBps\": {\n - \ \"description\": \"The uploaded video file's combined (video and - audio) bitrate in bits per second.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"fileName\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded file's name. This field is present - whether a video file or another type of file was uploaded.\"\n }\n - \ },\n \"id\": \"VideoFileDetails\",\n \"description\": \"Describes - original video file properties, including technical details about audio and - video streams, but also metadata information like content length, digitization - time, or geotagging information.\"\n },\n \"SuperChatEvent\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the Super Chat event.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\",\n - \ \"$ref\": \"SuperChatEventSnippet\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#superChatEvent\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n }\n },\n - \ \"description\": \"A `__superChatEvent__` resource represents a Super - Chat purchase on a YouTube channel.\",\n \"type\": \"object\",\n \"id\": - \"SuperChatEvent\"\n },\n \"LiveChatBan\": {\n \"description\": + If missing, the client should use the default.\"\n },\n \"offsetMs\": + {\n \"description\": \"Defines the time at which the promotion will + appear. Depending on the value of type the value of the offsetMs field will + represent a time offset from the start or from the end of the video, expressed + in milliseconds.\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n },\n \"type\": {\n \"enum\": [\n \"offsetFromStart\",\n + \ \"offsetFromEnd\"\n ],\n \"description\": \"Describes + a timing type. If the value is offsetFromStart, then the offsetMs field represents + an offset from the start of the video. If the value is offsetFromEnd, then + the offsetMs field represents an offset from the end of the video.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ]\n }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": + {\n \"properties\": {\n \"playlistId\": {\n \"type\": + \"string\",\n \"description\": \"The value that YouTube uses to uniquely + identify the playlist.\"\n },\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information about the resource that was added to the playlist.\"\n },\n + \ \"playlistItemId\": {\n \"description\": \"ID of the item + within the playlist.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n + \ \"description\": \"Information about a new playlist item.\"\n },\n + \ \"VideoRating\": {\n \"type\": \"object\",\n \"id\": \"VideoRating\",\n + \ \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the video.\"\n },\n \"rating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"The + entity is liked.\",\n \"The entity is disliked.\"\n ],\n + \ \"description\": \"Rating of a video.\"\n }\n },\n \"description\": + \"Basic details about rating of a video.\"\n },\n \"LanguageTag\": {\n + \ \"type\": \"object\",\n \"id\": \"LanguageTag\",\n \"properties\": + {\n \"value\": {\n \"type\": \"string\"\n }\n }\n + \ },\n \"LiveChatBan\": {\n \"type\": \"object\",\n \"description\": \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\",\n - \ \"id\": \"LiveChatBan\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n + \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": + \"The `snippet` object contains basic details about the ban.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \ \"type\": \"string\",\n \"default\": \"youtube#liveChatBan\"\n \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely identify the ban.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"AbuseType\": {\n \"id\": - \"AbuseType\",\n \"type\": \"object\",\n \"properties\": {\n \"id\": - {\n \"type\": \"string\"\n }\n }\n },\n \"SuperChatEventListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#superChatEventListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of Super Chat purchases that - match the request criteria.\",\n \"items\": {\n \"$ref\": - \"SuperChatEvent\"\n }\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": - \"SuperChatEventListResponse\"\n },\n \"VideoPlayer\": {\n \"properties\": - {\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\"\n - \ },\n \"embedHeight\": {\n \"format\": \"int64\",\n - \ \"type\": \"string\"\n },\n \"embedWidth\": {\n \"description\": - \"The embed width\",\n \"type\": \"string\",\n \"format\": - \"int64\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoPlayer\",\n \"description\": \"Player to be used for a video playback.\"\n - \ },\n \"IngestionInfo\": {\n \"id\": \"IngestionInfo\",\n \"properties\": - {\n \"rtmpsIngestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"This ingestion url may be used instead of ingestionAddress - in order to stream via RTMPS. Not applicable to non-RTMP streams.\"\n },\n - \ \"streamName\": {\n \"description\": \"The stream name that - YouTube assigns to the video stream.\",\n \"type\": \"string\"\n - \ },\n \"ingestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"The primary ingestion URL that you should use - to stream video to YouTube. You must stream video to this URL. Depending on - which application or tool you use to encode your video stream, you may need - to enter the stream URL and stream name separately or you may need to concatenate - them in the following format: *STREAM_URL/STREAM_NAME* \"\n },\n \"backupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The backup - ingestion URL that you should use to stream video to YouTube. You have the - option of simultaneously streaming the content that you are sending to the - ingestionAddress to this URL.\"\n },\n \"rtmpsBackupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of backupIngestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Describes information necessary for - ingesting an RTMP, HTTP, or SRT stream.\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the user to this fan funding event.\"\n },\n \"amountMicros\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The amount of the fund.\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"VideoAgeGating\": {\n \"type\": \"object\",\n \"id\": - \"VideoAgeGating\",\n \"properties\": {\n \"restricted\": {\n - \ \"description\": \"Age-restricted trailers. For redband trailers - and adult-rated video-games. Only users aged 18+ can view the content. The - the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\",\n \"type\": \"boolean\"\n },\n - \ \"videoGameRating\": {\n \"enum\": [\n \"anyone\",\n - \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Video game rating, if any.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"alcoholContent\": {\n \"description\": \"Indicates whether - or not the video has alcoholic beverage content. Only users of legal purchasing - age in a particular country, as identified by ICAP, can view the content.\",\n - \ \"type\": \"boolean\"\n }\n }\n },\n \"ChannelSectionListResponse\": - {\n \"id\": \"ChannelSectionListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"description\": \"A list of ChannelSections that - match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n }\n },\n \"TestItem\": - {\n \"id\": \"TestItem\",\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"gaia\": {\n \"format\": \"int64\",\n \"type\": - \"string\"\n }\n }\n },\n \"PlaylistListResponse\": {\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"default\": \"youtube#playlistListResponse\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"description\": \"A list of playlists that match the request criteria\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistListResponse\"\n },\n \"ChannelAuditDetails\": - {\n \"properties\": {\n \"communityGuidelinesGoodStanding\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether or - not the channel respects the community guidelines.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any unresolved claims.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelAuditDetails\",\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"properties\": {\n \"items\": {\n \"items\": {\n - \ \"$ref\": \"ThirdPartyLink\"\n },\n \"type\": - \"array\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n \"default\": - \"youtube#thirdPartyLinkListResponse\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ThirdPartyLinkListResponse\",\n - \ \"type\": \"object\"\n },\n \"Playlist\": {\n \"type\": \"object\",\n - \ \"description\": \"A *playlist* resource represents a YouTube playlist. - A playlist is a collection of videos that can be viewed sequentially and shared - with other users. A playlist can contain up to 200 videos, and YouTube does - not limit the number of playlists that each user creates. By default, playlists - are publicly visible to other users, but playlists can be public or private. - YouTube also uses playlists to identify special collections of videos for - a channel, such as: - uploaded videos - favorite videos - positively rated - (liked) videos - watch history - watch later To be more specific, these lists - are associated with a channel, which is a collection of a person, group, or - company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods.\",\n \"properties\": - {\n \"status\": {\n \"$ref\": \"PlaylistStatus\",\n \"description\": - \"The status object contains status information for the playlist.\"\n },\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"PlaylistLocalization\"\n },\n \"type\": \"object\",\n - \ \"description\": \"Localizations for different languages\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistSnippet\",\n \"description\": \"The snippet object contains - basic details about the playlist, such as its title and description.\"\n },\n - \ \"player\": {\n \"description\": \"The player object contains - information that you would use to play the playlist in an embedded player.\",\n - \ \"$ref\": \"PlaylistPlayer\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlist\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlist\\\".\"\n },\n \"contentDetails\": - {\n \"$ref\": \"PlaylistContentDetails\",\n \"description\": - \"The contentDetails object contains information like video count.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\"\n }\n - \ },\n \"id\": \"Playlist\"\n },\n \"ThumbnailDetails\": {\n - \ \"description\": \"Internal representation of thumbnails for a YouTube - resource.\",\n \"type\": \"object\",\n \"properties\": {\n \"high\": - {\n \"description\": \"The high quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"standard\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The standard quality image for - this resource.\"\n },\n \"medium\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The medium quality image for this resource.\"\n - \ },\n \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The default image for this resource.\"\n },\n \"maxres\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The maximum - resolution quality image for this resource.\"\n }\n },\n \"id\": - \"ThumbnailDetails\"\n },\n \"ChannelStatistics\": {\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\",\n \"type\": \"object\",\n \"id\": \"ChannelStatistics\",\n - \ \"properties\": {\n \"subscriberCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of subscribers that the - channel has.\",\n \"format\": \"uint64\"\n },\n \"commentCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of comments for the channel.\",\n \"type\": \"string\"\n },\n - \ \"viewCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of times the channel has been viewed.\",\n \"type\": - \"string\"\n },\n \"hiddenSubscriberCount\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the number of subscribers - is shown for this user.\"\n },\n \"videoCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of videos uploaded to - the channel.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"VideoSuggestionsTagSuggestion\": {\n \"id\": \"VideoSuggestionsTagSuggestion\",\n - \ \"description\": \"A single tag suggestion with it's relevance information.\",\n - \ \"properties\": {\n \"tag\": {\n \"type\": \"string\",\n - \ \"description\": \"The keyword tag suggested for the video.\"\n - \ },\n \"categoryRestricts\": {\n \"description\": \"A - set of video categories for which the tag is relevant. You can use this information - to display appropriate tag suggestions based on the video category that the - video uploader associates with the video. By default, tag suggestions are - relevant for all categories if there are no restricts defined for the keyword.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a channel, including title, description and thumbnails.\",\n \"id\": - \"ChannelSnippet\",\n \"properties\": {\n \"thumbnails\": {\n - \ \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\"\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the channel's default title and description.\",\n \"type\": \"string\"\n - \ },\n \"country\": {\n \"description\": \"The country - of the channel.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the channel was created.\",\n \"format\": \"date-time\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The channel's title.\"\n },\n \"customUrl\": {\n \"description\": - \"The custom url of the channel.\",\n \"type\": \"string\"\n },\n - \ \"localized\": {\n \"description\": \"Localized title and - description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"description\": {\n \"description\": \"The description - of the channel.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"VideoContentDetailsRegionRestriction\": {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"properties\": {\n \"allowed\": {\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"blocked\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"DEPRECATED Region restriction - of the video.\"\n },\n \"SearchListResponse\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"Pagination information for token - pagination.\",\n \"items\": {\n \"$ref\": \"SearchResult\"\n - \ }\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#searchListResponse\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"SearchListResponse\"\n - \ },\n \"LiveChatNewSponsorDetails\": {\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"properties\": {\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level that the viewer - just had joined. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n },\n - \ \"isUpgrade\": {\n \"description\": \"If the viewer just - had upgraded from a lower level. For viewers that were not members at the - time of purchase, this field is false.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoRating\": - {\n \"description\": \"Basic details about rating of a video.\",\n \"id\": - \"VideoRating\",\n \"type\": \"object\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n },\n \"rating\": - {\n \"type\": \"string\",\n \"description\": \"Rating of - a video.\",\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ]\n }\n }\n },\n \"VideoStatistics\": {\n \"type\": - \"object\",\n \"id\": \"VideoStatistics\",\n \"properties\": {\n - \ \"viewCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of times the video has - been viewed.\"\n },\n \"likeCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of users who have indicated - that they liked the video by giving it a positive rating.\",\n \"format\": - \"uint64\"\n },\n \"dislikeCount\": {\n \"description\": - \"The number of users who have indicated that they disliked the video by giving - it a negative rating.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"favoriteCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of users who currently - have the video marked as a favorite video.\",\n \"format\": \"uint64\"\n - \ },\n \"commentCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of comments for the video.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Statistics about - the video, such as the number of times the video was viewed or liked.\"\n - \ },\n \"CommentThread\": {\n \"id\": \"CommentThread\",\n \"description\": - \"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.\",\n \"properties\": {\n \"replies\": {\n - \ \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\",\n \"$ref\": - \"CommentThreadReplies\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#commentThread\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the comment thread.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetails\": - {\n \"id\": \"ActivityContentDetails\",\n \"type\": \"object\",\n - \ \"description\": \"Details about the content of an activity: the video - that was shared, the channel that was subscribed to, etc.\",\n \"properties\": - {\n \"promotedItem\": {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\"\n },\n \"social\": {\n \"description\": - \"The social object contains details about a social network post. This property - is only present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"subscription\": {\n \"description\": \"The - subscription object contains information about a channel that a user subscribed - to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"upload\": - {\n \"$ref\": \"ActivityContentDetailsUpload\",\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\"\n },\n \"channelItem\": - {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n \"description\": - \"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.\"\n - \ },\n \"like\": {\n \"$ref\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"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.\"\n },\n \"recommendation\": {\n - \ \"$ref\": \"ActivityContentDetailsRecommendation\",\n \"description\": - \"The recommendation object contains information about a recommended resource. - This property is only present if the snippet.type is recommendation.\"\n },\n - \ \"favorite\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsFavorite\"\n },\n \"playlistItem\": - {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"The playlistItem object contains information about a new playlist item. - This property is only present if the snippet.type is playlistItem.\"\n },\n - \ \"comment\": {\n \"description\": \"The comment object contains - information about a resource that received a comment. This property is only - present if the snippet.type is comment.\",\n \"$ref\": \"ActivityContentDetailsComment\"\n - \ },\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n }\n }\n },\n \"ContentRating\": {\n \"id\": - \"ContentRating\",\n \"description\": \"Ratings schemes. The country-specific - ratings are mostly for movies and shows. LINT.IfChange\",\n \"type\": - \"object\",\n \"properties\": {\n \"anatelRating\": {\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n - \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ]\n },\n - \ \"oflcRating\": {\n \"enum\": [\n \"oflcUnspecified\",\n - \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n - \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n - \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n - \ \"oflcRp16\",\n \"oflcRp18\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Office of Film and Literature - Classification (OFLC - New Zealand) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ]\n },\n \"moctwRating\": {\n \"enum\": [\n - \ \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n - \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n - \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ],\n \"description\": \"The video's rating from Taiwan's - Ministry of Culture (\u6587\u5316\u90E8).\",\n \"type\": \"string\"\n - \ },\n \"fpbRatingReasons\": {\n \"description\": \"Reasons - that explain why the video received its FPB (South Africa) rating.\",\n \"type\": - \"array\",\n \"items\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ],\n \"type\": - \"string\"\n }\n },\n \"catvfrRating\": {\n \"enum\": - [\n \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n - \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n - \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n + \ },\n \"id\": \"LiveChatBan\"\n },\n \"MemberSnippet\": {\n + \ \"id\": \"MemberSnippet\",\n \"properties\": {\n \"memberDetails\": + {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": + \"Details about the member.\"\n },\n \"membershipsDetails\": + {\n \"$ref\": \"MembershipsDetails\",\n \"description\": + \"Details about the user's membership.\"\n },\n \"creatorChannelId\": + {\n \"description\": \"The id of the channel that's offering memberships.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"ContentRating\": {\n \"description\": \"Ratings schemes. + The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n + \ \"properties\": {\n \"icaaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n + \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n + \ \"\"\n ],\n \"enum\": [\n \"icaaUnspecified\",\n + \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n + \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n + \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"description\": + \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales + (ICAA - Spain) rating.\",\n \"type\": \"string\"\n },\n \"smsaRating\": + {\n \"description\": \"The video's rating from Statens medier\xE5d + (Sweden's National Media Council).\",\n \"type\": \"string\",\n \"enum\": + [\n \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n + \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"All + ages\",\n \"7\",\n \"11\",\n \"15\",\n \"\"\n + \ ]\n },\n \"djctqRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"L\",\n + \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n + \ \"18\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\"\n ],\n \"description\": - \"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.\"\n },\n \"nbcplRating\": + \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o + e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enum\": [\n \"djctqUnspecified\",\n + \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n + \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n + \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n + \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n + \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n + \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n + \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n + \ \"djctq1618\",\n \"djctqUnrated\"\n ]\n },\n + \ \"tvpgRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n + \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The video's TV Parental Guidelines (TVPG) rating.\",\n \"enum\": + [\n \"tvpgUnspecified\",\n \"tvpgY\",\n \"tvpgY7\",\n + \ \"tvpgY7Fv\",\n \"tvpgG\",\n \"tvpgPg\",\n + \ \"pg14\",\n \"tvpgMa\",\n \"tvpgUnrated\"\n + \ ]\n },\n \"lsfRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n + \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n + \ \"21\",\n \"\"\n ],\n \"description\": + \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"enum\": + [\n \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n + \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n + \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"fpbRating\": + {\n \"description\": \"The video's rating from South Africa's Film + and Publication Board.\",\n \"type\": \"string\",\n \"enum\": + [\n \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n + \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n + \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n + \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n + \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n + \ \"\",\n \"10\"\n ]\n },\n \"bmukkRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"bmukkUnspecified\",\n + \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n + \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n + \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"description\": + \"The video's rating from the Austrian Board of Media Classification (Bundesministerium + f\xFCr Unterricht, Kunst und Kultur).\",\n \"enumDescriptions\": + [\n \"\",\n \"Unrestricted\",\n \"6+\",\n + \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n + \ \"16+\",\n \"\"\n ]\n },\n \"nkclvRating\": + {\n \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n + \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n + \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The video's + rating from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\",\n + \ \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n + \ \"\"\n ]\n },\n \"ilfilmRating\": {\n \"enum\": + [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n + \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n + \ \"ilfilmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n + \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"description\": \"The video's rating in Israel.\",\n \"type\": + \"string\"\n },\n \"fcbmRating\": {\n \"enum\": [\n + \ \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n + \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n + \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n + \ \"fcbmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n + \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n + \ \"18PL\",\n \"\"\n ],\n \"description\": + \"The video's rating from Malaysia's Film Censorship Board.\",\n \"type\": + \"string\"\n },\n \"csaRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"Interdiction\",\n \"\"\n ],\n \"enum\": + [\n \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n + \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n + \ \"csaUnrated\"\n ],\n \"description\": \"The + video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, which + rates broadcast content.\"\n },\n \"cnaRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's rating from Romania's + CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"enum\": [\n \"cnaUnspecified\",\n + \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n + \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"18+\",\n \"\"\n ]\n + \ },\n \"cccRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Todo espectador\",\n \"6+ - + Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n + \ \"18+ - contenido excesivamente violento\",\n \"18+ + - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"enum\": + [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n + \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n + \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"description\": + \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\"\n + \ },\n \"russiaRating\": {\n \"description\": \"The + video's National Film Registry of the Russian Federation (MKRF - Russia) rating.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"0+\",\n + \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n + \ \"\"\n ],\n \"enum\": [\n \"russiaUnspecified\",\n + \ \"russia0\",\n \"russia6\",\n \"russia12\",\n + \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"mocRating\": + {\n \"description\": \"The video's Ministerio de Cultura (Colombia) + rating.\",\n \"enumDescriptions\": [\n \"\",\n \"E\",\n + \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mocUnspecified\",\n + \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n + \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n + \ \"mocUnrated\"\n ]\n },\n \"mdaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n + \ \"R21\",\n \"\"\n ],\n \"description\": + \"The video's rating from Singapore's Media Development Authority (MDA) and, + specifically, it's Board of Film Censors (BFC).\",\n \"enum\": [\n + \ \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n + \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n + \ \"mdaR21\",\n \"mdaUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"djctqRatingReasons\": {\n \"description\": + \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"enum\": + [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n + \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n + \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n + \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n + \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n + \ \"djctqImpactingContent\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Brazil rating content descriptors. + See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia + extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual + content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n + \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas + (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas + Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate + language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo + Impactante (Impacting content)\"\n ],\n \"type\": \"string\"\n + \ }\n },\n \"catvRating\": {\n \"description\": + \"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.\",\n \"enum\": + [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n + \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n + \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"C\",\n + \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n + \ \"18+\",\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"menaMpaaRating\": {\n + \ \"enum\": [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n + \ \"menaMpaaPg\",\n \"menaMpaaPg13\",\n \"menaMpaaR\",\n + \ \"menaMpaaUnrated\"\n ],\n \"description\": + \"The rating system for MENA countries, a clone of MPAA. It is needed to prevent + titles go live w/o additional QC check, since some of them can be inappropriate + for the countries at all. See b/33408548 for more details.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To + keep the same enum values as MPAA's items have, skip NC_17.\"\n ]\n + \ },\n \"kfcbRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"enum\": [\n + \ \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n + \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Kenya + Film Classification Board.\"\n },\n \"fskRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK + 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n + \ ],\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n + \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n + \ \"fskUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft + (FSK - Germany) rating.\"\n },\n \"chvrsRating\": {\n \"enum\": + [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n + \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n + \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's Canadian Home Video + Rating System (CHVRS) rating.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"14A\",\n \"18A\",\n + \ \"R\",\n \"E\",\n \"\"\n ]\n },\n + \ \"ifcoRating\": {\n \"description\": \"The video's Irish + Film Classification Office (IFCO - Ireland) rating. See the IFCO website for + more information.\",\n \"enum\": [\n \"ifcoUnspecified\",\n + \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n + \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n + \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n + \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n + \ \"18\",\n \"\"\n ]\n },\n \"mpaaRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n + \ \"NC-17\",\n \"! X\",\n \"\"\n ],\n + \ \"description\": \"The video's Motion Picture Association of America + (MPAA) rating.\",\n \"enum\": [\n \"mpaaUnspecified\",\n + \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n + \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n + \ \"mpaaUnrated\"\n ]\n },\n \"rteRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"GA\",\n + \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n + \ ],\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n + \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\"\n + \ },\n \"cncRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"T\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"Rating system in France - Commission de classification cinematographique\",\n + \ \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n + \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n + \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n + \ ]\n },\n \"eirinRating\": {\n \"description\": + \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n + \ \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n + \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n + \ \"eirinUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n + \ \"R18+\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"skfilmRating\": {\n \"enum\": [\n + \ \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n + \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n + \ \"P8\",\n \"\"\n ],\n \"description\": + \"The video's rating in Slovakia.\"\n },\n \"catvfrRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"8+\",\n \"13+\",\n \"16+\",\n + \ \"18+\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n + \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n + \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n + \ ],\n \"description\": \"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.\"\n },\n \"mibacRating\": {\n \"description\": + \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali + e del Turismo (Italy).\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n + \ \"\"\n ],\n \"enum\": [\n \"mibacUnspecified\",\n + \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n + \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n + \ \"mibacVm18\",\n \"mibacUnrated\"\n ]\n },\n + \ \"ytRating\": {\n \"description\": \"A rating that YouTube + uses to identify age-restricted content.\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n + \ ]\n },\n \"czfilmRating\": {\n \"description\": + \"The video's rating in the Czech Republic.\",\n \"enum\": [\n \"czfilmUnspecified\",\n + \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n + \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n + \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"rcnofRating\": {\n \"description\": \"The video's + rating from the Hungarian Nemzeti Filmiroda, the Rating Committee of the National + Office of Film.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n + \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n + \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n + \ ]\n },\n \"cceRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n + \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n + \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"4\",\n + \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\",\n \"14\"\n ],\n \"description\": + \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de + Espect\xB4culos.\"\n },\n \"kmrbRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n + \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 + \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 + \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"enum\": + [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n + \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n + \ \"kmrbUnrated\"\n ],\n \"description\": \"The + video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) + rating. The KMRB rates videos in South Korea.\"\n },\n \"nbcplRating\": + {\n \"description\": \"The video's rating in Poland.\",\n \"enum\": + [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"description\": \"The - video's rating in Poland.\"\n },\n \"mpaatRating\": {\n \"description\": - \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n - \ ]\n },\n \"mtrcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ],\n \"description\": \"The - video's rating from the Movie and Television Review and Classification Board - (Philippines).\"\n },\n \"medietilsynetRating\": {\n \"enumDescriptions\": + \ \"nbcplUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"cicfRating\": {\n \"enum\": + [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n + \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"description\": + \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n + \ ]\n },\n \"nfrcRating\": {\n \"enum\": [\n + \ \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n + \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Bulgarian National Film Center.\",\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n + \ \"D\",\n \"X\",\n \"\"\n ]\n },\n + \ \"nbcRating\": {\n \"enum\": [\n \"nbcUnspecified\",\n + \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n + \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n + \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n + \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Maldives National Bureau of Classification.\"\n + \ },\n \"mccypRating\": {\n \"description\": \"The video's + rating from the Danish Film Institute's (Det Danske Filminstitut) Media Council + for Children and Young People.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A\",\n \"7\",\n \"11\",\n \"15\",\n + \ \"\"\n ],\n \"enum\": [\n \"mccypUnspecified\",\n + \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n + \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"medietilsynetRating\": {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n + \ \"18\",\n \"\"\n ],\n \"description\": + \"The video's rating from Medietilsynet, the Norwegian Media Authority.\",\n + \ \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"description\": \"The video's rating from Medietilsynet, the Norwegian - Media Authority.\",\n \"type\": \"string\"\n },\n \"eirinRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"The video's Eirin (\u6620\u502B) - rating. Eirin is the Japanese rating system.\",\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"djctqRatingReasons\": - {\n \"type\": \"array\",\n \"description\": \"Reasons that - explain why the video received its DJCQT (Brazil) rating.\",\n \"items\": - {\n \"type\": \"string\",\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ]\n }\n },\n \"russiaRating\": - {\n \"description\": \"The video's National Film Registry of the - Russian Federation (MKRF - Russia) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"bbfcRating\": {\n \"enum\": [\n - \ \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ],\n \"description\": \"The video's British Board of Film - Classification (BBFC) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ]\n },\n \"bfvcRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Thailand's Board of Film and Video Censors.\"\n },\n \"kijkwijzerRating\": + \ \"type\": \"string\"\n },\n \"pefilmRating\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"PT\",\n + \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n + \ ],\n \"enum\": [\n \"pefilmUnspecified\",\n + \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n + \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"description\": + \"The video's rating in Peru.\",\n \"type\": \"string\"\n },\n + \ \"egfilmRating\": {\n \"enum\": [\n \"egfilmUnspecified\",\n + \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n + \ \"egfilmUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating in Egypt.\",\n \"enumDescriptions\": + [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n + \ \"\"\n ]\n },\n \"acbRating\": {\n \"enum\": + [\n \"acbUnspecified\",\n \"acbE\",\n \"acbP\",\n + \ \"acbC\",\n \"acbG\",\n \"acbPg\",\n \"acbM\",\n + \ \"acbMa15plus\",\n \"acbR18plus\",\n \"acbUnrated\"\n + \ ],\n \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"E\",\n \"Programs that have been given a P classification + by the Australian Communications and Media Authority. These programs are intended + for preschool children.\",\n \"Programs that have been given a + C classification by the Australian Communications and Media Authority. These + programs are intended for children (other than preschool children) who are + younger than 14 years of age.\",\n \"G\",\n \"PG\",\n + \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n + \ ]\n },\n \"eefilmRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n + \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n + \ \"K-16\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n + \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n + \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n + \ \"eefilmK16\",\n \"eefilmUnrated\"\n ],\n + \ \"description\": \"The video's rating in Estonia.\"\n },\n + \ \"mtrcbRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n + \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n + \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n + \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from the Movie + and Television Review and Classification Board (Philippines).\"\n },\n + \ \"nmcRating\": {\n \"description\": \"The National Media + Council ratings system for United Arab Emirates.\",\n \"enum\": [\n + \ \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n + \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n + \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n + \ \"18+\",\n \"18TC\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"agcomRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n + \ \"\"\n ],\n \"enum\": [\n \"agcomUnspecified\",\n + \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n + \ \"agcomUnrated\"\n ],\n \"description\": \"The + video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni + (AGCOM).\",\n \"type\": \"string\"\n },\n \"kijkwijzerRating\": {\n \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating - from the Nederlands Instituut voor de Classificatie van Audiovisuele Media - (Netherlands).\"\n },\n \"fmocRating\": {\n \"type\": - \"string\",\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ],\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ]\n },\n \"incaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's INCAA (Instituto Nacional de Cine - y Artes Audiovisuales - Argentina) rating.\",\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ]\n },\n \"mibacRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n - \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n - \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Ministero - dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\"\n },\n - \ \"icaaRating\": {\n \"description\": \"The video's Instituto - de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ]\n },\n \"chfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n - \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n - \ \"chfilm18\",\n \"chfilmUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in Switzerland.\"\n - \ },\n \"mekuRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"S\",\n \"7\",\n \"12\",\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n + \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de + Classificatie van Audiovisuele Media (Netherlands).\",\n \"type\": + \"string\"\n },\n \"anatelRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n + \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n + \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n + \ \"anatelUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n + \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n + \ \"\"\n ],\n \"description\": \"The video's Anatel + (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\"\n + \ },\n \"smaisRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n + \ \"smais7\",\n \"smais12\",\n \"smais14\",\n + \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"L\",\n + \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"description\": + \"The video's rating in Iceland.\"\n },\n \"rtcRating\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"AA\",\n + \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n + \ \"D\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n + \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n + \ \"rtcD\",\n \"rtcUnrated\"\n ],\n \"description\": + \"The video's General Directorate of Radio, Television and Cinematography + (Mexico) rating.\"\n },\n \"mekuRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"description\": - \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti - (National Audiovisual Institute).\",\n \"type\": \"string\"\n },\n - \ \"agcomRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"VM14\",\n \"VM18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"description\": \"The - video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\"\n },\n \"mccypRating\": {\n \"enum\": [\n - \ \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n - \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ]\n },\n \"csaRating\": - {\n \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n - \ \"description\": \"The video's rating from France's Conseil sup\xE9rieur - de l\u2019audiovisuel, which rates broadcast content.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ]\n },\n - \ \"mcstRating\": {\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n - \ \"description\": \"The video's rating system for Vietnam - MCST\"\n - \ },\n \"nfrcRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"nfrcUnspecified\",\n \"nfrcA\",\n - \ \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n - \ \"nfrcUnrated\"\n ],\n \"description\": \"The - video's rating from the Bulgarian National Film Center.\"\n },\n \"egfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating in Egypt.\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ]\n },\n \"ecbmctRating\": - {\n \"description\": \"Rating system in Turkey - Evaluation and Classification - Board of the Ministry of Culture and Tourism\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + \ \"type\": \"string\",\n \"enum\": [\n \"mekuUnspecified\",\n + \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n + \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n + \ ],\n \"description\": \"The video's rating from Finland's + Kansallinen Audiovisuaalinen Instituutti (National Audiovisual Institute).\"\n + \ },\n \"cscfRating\": {\n \"enum\": [\n \"cscfUnspecified\",\n + \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n + \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n + \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"description\": + \"The video's rating from Luxembourg's Commission de surveillance de la classification + des films (CSCF).\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n + \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ]\n },\n \"fpbRatingReasons\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": + [\n \"\",\n \"South Africa rating content descriptors.\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n + \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n + \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n + \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n + \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n + \ ]\n },\n \"description\": \"Reasons that explain + why the video received its FPB (South Africa) rating.\"\n },\n \"moctwRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n + \ \"R-12\",\n \"R-15\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from Taiwan's + Ministry of Culture (\u6587\u5316\u90E8).\",\n \"enum\": [\n \"moctwUnspecified\",\n + \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n + \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n + \ \"moctwR15\"\n ]\n },\n \"grfilmRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n + \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n + \ ],\n \"description\": \"The video's rating in Greece.\",\n + \ \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n + \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n + \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n + \ \"grfilmUnrated\"\n ]\n },\n \"nfvcbRating\": + {\n \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n + \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n + \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n + \ \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n + \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from Nigeria's National Film and Video Censors Board.\",\n \"type\": + \"string\"\n },\n \"ecbmctRating\": {\n \"description\": + \"Rating system in Turkey - Evaluation and Classification Board of the Ministry + of Culture and Tourism\",\n \"type\": \"string\",\n \"enum\": + [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n + \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n + \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n + \ \"ecbmctUnrated\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ]\n },\n \"skfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ],\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in Slovakia.\"\n - \ },\n \"rtcRating\": {\n \"description\": \"The video's - General Directorate of Radio, Television and Cinematography (Mexico) rating.\",\n - \ \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"rcnofRating\": - {\n \"description\": \"The video's rating from the Hungarian Nemzeti - Filmiroda, the Rating Committee of the National Office of Film.\",\n \"enum\": - [\n \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n - \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n - \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"mocRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ],\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Ministerio de Cultura (Colombia) - rating.\"\n },\n \"cbfcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ],\n \"enum\": [\n - \ \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\"\n - \ },\n \"ytRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"A rating that - YouTube uses to identify age-restricted content.\",\n \"enum\": [\n - \ \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n - \ \"type\": \"string\"\n },\n \"cceRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ]\n },\n \"mdaRating\": {\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Singapore's Media Development Authority (MDA) and, specifically, - it's Board of Film Censors (BFC).\",\n \"enum\": [\n \"mdaUnspecified\",\n - \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n - \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n - \ \"mdaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ]\n },\n \"resorteviolenciaRating\": {\n \"enum\": + \ \"18+\",\n \"\"\n ]\n },\n \"cbfcRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n + \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n + \ ],\n \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n + \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n + \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n + \ \"cbfcUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's Central Board of Film Certification + (CBFC - India) rating.\"\n },\n \"resorteviolenciaRating\": + {\n \"description\": \"The video's rating in Venezuela.\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Venezuela.\",\n \"type\": \"string\"\n },\n \"cscfRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Luxembourg's Commission de surveillance de la classification des - films (CSCF).\",\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"cccRating\": {\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Todo espectador\",\n \"6+ - Inconveniente para menores - de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n \"18+ - - contenido excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ]\n },\n \"smsaRating\": {\n \"enum\": [\n - \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"All - ages\",\n \"7\",\n \"11\",\n \"15\",\n \"\"\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"oflcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n + \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n + \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n + \ ],\n \"description\": \"The video's Office of Film and + Literature Classification (OFLC - New Zealand) rating.\",\n \"enum\": + [\n \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n + \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n + \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n + \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n + \ ]\n },\n \"fmocRating\": {\n \"enum\": [\n + \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n + \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n + \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"\"\n \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\"\n - \ },\n \"menaMpaaRating\": {\n \"description\": \"The - rating system for MENA countries, a clone of MPAA. It is needed to prevent - titles go live w/o additional QC check, since some of them can be inappropriate - for the countries at all. See b/33408548 for more details.\",\n \"enum\": - [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n - \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ]\n },\n \"nmcRating\": {\n \"type\": - \"string\",\n \"description\": \"The National Media Council ratings - system for United Arab Emirates.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"PG-15\",\n - \ \"15+\",\n \"18+\",\n \"18TC\",\n \"\"\n - \ ],\n \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ]\n },\n \"cicfRating\": - {\n \"description\": \"The video's rating from the Commission de - Contr\xF4le des Films (Belgium).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ]\n },\n \"nkclvRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Nacion\xE3lais - Kino centrs (National Film Centre of Latvia).\",\n \"type\": \"string\"\n - \ },\n \"ifcoRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"description\": \"The - video's Irish Film Classification Office (IFCO - Ireland) rating. See the - IFCO website for more information.\",\n \"type\": \"string\"\n },\n - \ \"kmrbRating\": {\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Korea Media Rating Board - (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. The KMRB rates - videos in South Korea.\"\n },\n \"kfcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"type\": - \"string\",\n \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n - \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n - \ \"kfcbUnrated\"\n ]\n },\n \"bmukkRating\": - {\n \"description\": \"The video's rating from the Austrian Board - of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst und Kultur).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ],\n - \ \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"cnaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"enum\": - [\n \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n - \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ]\n },\n \"catvRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ],\n \"description\": - \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ]\n },\n \"mccaaRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 + \"This property has been deprecated. Use the contentDetails.contentRating.cncRating + instead.\"\n },\n \"mccaaRating\": {\n \"enum\": [\n + \ \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n + \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n + \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n + \ \"mccaaUnrated\"\n ],\n \"description\": \"The + video's rating from Malta's Film Age-Classification Board.\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n + \ \"12\",\n \"14 - this rating was removed from the new + classification structure introduced in 2013.\",\n \"15\",\n \"16 - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Malta's - Film Age-Classification Board.\"\n },\n \"fskRating\": {\n \"enum\": - [\n \"fskUnspecified\",\n \"fsk0\",\n \"fsk6\",\n - \ \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n \"fskUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle - der Filmwirtschaft (FSK - Germany) rating.\"\n },\n \"rteRating\": - {\n \"description\": \"The video's rating from Ireland's Raidi\xF3 - Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GA\",\n \"CH\",\n \"PS\",\n \"MA\",\n - \ \"\"\n ],\n \"enum\": [\n \"rteUnspecified\",\n - \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n - \ \"rteUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"mpaaRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ]\n },\n \"acbRating\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ]\n },\n \"fcoRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"I\",\n - \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n + in 2013.\",\n \"18\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"bfvcRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n + \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n \ \"\"\n ],\n \"description\": \"The video's rating - from Hong Kong's Office for Film, Newspaper and Article Administration.\",\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n + from Thailand's Board of Film and Video Censors.\",\n \"enum\": [\n + \ \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n + \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n + \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"fcoRating\": + {\n \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"chvrsRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Canadian Home Video Rating System - (CHVRS) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"14A\",\n \"18A\",\n - \ \"R\",\n \"E\",\n \"\"\n ],\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ]\n },\n - \ \"ilfilmRating\": {\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Israel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"lsfRating\": - {\n \"description\": \"The video's rating from Indonesia's Lembaga - Sensor Film.\",\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"lsfUnspecified\",\n - \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n - \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n - \ \"lsfUnrated\"\n ]\n },\n \"cncRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ],\n - \ \"description\": \"Rating system in France - Commission de classification - cinematographique\",\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"fcbmRating\": {\n \"description\": \"The video's - rating from Malaysia's Film Censorship Board.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ],\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n - \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n - \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n - \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ]\n },\n - \ \"smaisRating\": {\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ],\n \"description\": \"The - video's rating in Iceland.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ]\n },\n \"eefilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n - \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n - \ \"K-16\",\n \"\"\n ],\n \"enum\": - [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n \"eefilmL\",\n - \ \"eefilmMs6\",\n \"eefilmK6\",\n \"eefilmMs12\",\n - \ \"eefilmK12\",\n \"eefilmK14\",\n \"eefilmK16\",\n - \ \"eefilmUnrated\"\n ],\n \"description\": \"The - video's rating in Estonia.\",\n \"type\": \"string\"\n },\n - \ \"fpbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X18\",\n - \ \"XX\",\n \"\",\n \"10\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\"\n },\n - \ \"czfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"12\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in the Czech - Republic.\"\n },\n \"grfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n + \"string\",\n \"description\": \"The video's rating from Hong Kong's + Office for Film, Newspaper and Article Administration.\",\n \"enumDescriptions\": + [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n + \ \"II\",\n \"III\",\n \"\"\n ]\n + \ },\n \"bbfcRating\": {\n \"description\": \"The video's + British Board of Film Classification (BBFC) rating.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"R18\",\n \"\"\n ],\n + \ \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n + \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n + \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n + \ \"bbfcUnrated\"\n ]\n },\n \"mcstRating\": + {\n \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n + \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n + \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n + \ \"mcstUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n + \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n \ \"\"\n ],\n \"description\": \"The video's rating - in Greece.\",\n \"type\": \"string\",\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ]\n },\n - \ \"tvpgRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's TV Parental Guidelines (TVPG) rating.\",\n \"enum\": - [\n \"tvpgUnspecified\",\n \"tvpgY\",\n \"tvpgY7\",\n - \ \"tvpgY7Fv\",\n \"tvpgG\",\n \"tvpgPg\",\n - \ \"pg14\",\n \"tvpgMa\",\n \"tvpgUnrated\"\n - \ ]\n },\n \"pefilmRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n - \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n - \ \"pefilmUnrated\"\n ],\n \"description\": \"The - video's rating in Peru.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n - \ \"\"\n ]\n },\n \"djctqRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ]\n },\n - \ \"nfvcbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"18\",\n \"RE\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ]\n },\n \"nbcRating\": - {\n \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Maldives National - Bureau of Classification.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12+\",\n \"15+\",\n - \ \"18+\",\n \"18+R\",\n \"PU\",\n \"\"\n - \ ]\n }\n }\n },\n \"ChannelBannerResource\": {\n - \ \"id\": \"ChannelBannerResource\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#channelBannerResource\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n - \ },\n \"url\": {\n \"description\": \"The URL of this - banner image.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\",\n - \ \"type\": \"object\"\n },\n \"LanguageTag\": {\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LanguageTag\"\n },\n \"Thumbnail\": - {\n \"description\": \"A thumbnail is an image representing a YouTube - resource.\",\n \"properties\": {\n \"url\": {\n \"description\": - \"The thumbnail image's URL.\",\n \"type\": \"string\"\n },\n - \ \"height\": {\n \"description\": \"(Optional) Height of the - thumbnail image.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"width\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"(Optional) - Width of the thumbnail image.\"\n }\n },\n \"id\": \"Thumbnail\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the uploaded video.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Information about the uploaded video.\",\n \"id\": - \"ActivityContentDetailsUpload\"\n },\n \"CommentThreadSnippet\": {\n - \ \"id\": \"CommentThreadSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"topLevelComment\": {\n \"description\": \"The top level - comment of this thread.\",\n \"$ref\": \"Comment\"\n },\n - \ \"totalReplyCount\": {\n \"type\": \"integer\",\n \"description\": - \"The total number of replies (not including the top level comment).\",\n - \ \"format\": \"uint32\"\n },\n \"isPublic\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the thread (and therefore - all its comments) is visible to all YouTube users.\"\n },\n \"canReply\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Basic details about a comment thread.\"\n - \ },\n \"PlaylistItem\": {\n \"id\": \"PlaylistItem\",\n \"type\": + system for Vietnam - MCST\",\n \"type\": \"string\"\n },\n + \ \"chfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"0\",\n \"6\",\n \"12\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"description\": + \"The video's rating in Switzerland.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n + \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n + \ \"chfilm18\",\n \"chfilmUnrated\"\n ]\n },\n + \ \"mpaatRating\": {\n \"enum\": [\n \"mpaatUnspecified\",\n + \ \"mpaatGb\",\n \"mpaatRb\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"GB\",\n \"RB\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The rating system + for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n + \ },\n \"incaaRating\": {\n \"enum\": [\n \"incaaUnspecified\",\n + \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n + \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 + (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para + mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 + a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n + condicionada)\",\n \"\"\n ],\n \"description\": + \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) + rating.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"ContentRating\"\n },\n \"VideoAbuseReportSecondaryReason\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"PlaylistItemContentDetails\",\n \"description\": - \"The contentDetails object is included in the resource if the included item - is a YouTube video. The object contains additional information about the video.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#playlistItem\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\"\n - \ },\n \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n - \ \"description\": \"The status object contains information about - the playlist item's privacy status.\"\n },\n \"snippet\": {\n - \ \"$ref\": \"PlaylistItemSnippet\",\n \"description\": \"The - snippet object contains basic details about the playlist item, such as its - title and position in the playlist.\"\n }\n },\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\"\n },\n - \ \"VideoStatus\": {\n \"id\": \"VideoStatus\",\n \"description\": - \"Basic details about a video category, such as its localized title. Next - Id: 18\",\n \"properties\": {\n \"failureReason\": {\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ],\n \"description\": \"This value explains why a video - failed to upload. This property is only present if the uploadStatus property - indicates that the upload failed.\",\n \"enumDescriptions\": [\n - \ \"Unable to convert video content.\",\n \"Invalid file - format.\",\n \"Empty file.\",\n \"File was too small.\",\n - \ \"Unsupported codec.\",\n \"Upload wasn't finished.\"\n - \ ],\n \"type\": \"string\"\n },\n \"rejectionReason\": - {\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"This value explains why YouTube rejected an uploaded video. This property - is only present if the uploadStatus property indicates that the upload was - rejected.\"\n },\n \"uploadStatus\": {\n \"enumDescriptions\": - [\n \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"enum\": - [\n \"uploaded\",\n \"processed\",\n \"failed\",\n - \ \"rejected\",\n \"deleted\"\n ],\n \"type\": - \"string\",\n \"description\": \"The status of the uploaded video.\"\n - \ },\n \"license\": {\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"description\": \"The video's privacy status.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n + \"The ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n + \ },\n \"label\": {\n \"type\": \"string\",\n \"description\": + \"The localized label for this abuse report secondary reason.\"\n }\n + \ },\n \"id\": \"VideoAbuseReportSecondaryReason\"\n },\n \"AbuseType\": + {\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"AbuseType\"\n + \ },\n \"LiveBroadcastContentDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"recordFromStart\": {\n \"type\": + \"boolean\",\n \"description\": \"Automatically start recording after + the event goes live. The default value for this property is true. *Important:* + You must also set the enableDvr property's value to true if you want the playback + to be available immediately after the broadcast ends. If you set this property's + value to true but do not also set the enableDvr property to true, there may + be a delay of around one day before the archived video will be available for + playback.\"\n },\n \"enableAutoStart\": {\n \"type\": + \"boolean\",\n \"description\": \"This setting indicates whether + auto start is enabled for this broadcast. The default value for this property + is false. This setting can only be used by Events.\"\n },\n \"startWithSlate\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether the broadcast should automatically begin with an in-stream + slate when you update the broadcast's status to live. After updating the status, + you then need to send a liveCuepoints.insert request that sets the cuepoint's + eventState to end to remove the in-stream slate and make your broadcast stream + visible to viewers.\"\n },\n \"stereoLayout\": {\n \"description\": + \"The 3D stereo layout of this broadcast. This defaults to mono.\",\n \"type\": + \"string\",\n \"enum\": [\n \"stereoLayoutUnspecified\",\n + \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"enableAutoStop\": + {\n \"description\": \"This setting indicates whether auto stop is + enabled for this broadcast. The default value for this property is false. + This setting can only be used by Events.\",\n \"type\": \"boolean\"\n + \ },\n \"enableClosedCaptions\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether HTTP POST closed + captioning is enabled for this broadcast. The ingestion URL of the closed + captions is returned through the liveStreams API. This is mutually exclusive + with using the closed_captions_type property, and is equivalent to setting + closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n \"enableEmbed\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether the broadcast video can be played in an embedded player. + If you choose to archive the video (using the enableArchive property), this + setting will also apply to the archived video.\"\n },\n \"boundStreamLastUpdateTimeMs\": + {\n \"description\": \"The date and time that the live stream referenced + by boundStreamId was last updated.\",\n \"format\": \"date-time\",\n + \ \"type\": \"string\"\n },\n \"boundStreamId\": {\n + \ \"description\": \"This value uniquely identifies the live stream + bound to the broadcast.\",\n \"type\": \"string\"\n },\n \"projection\": + {\n \"type\": \"string\",\n \"enum\": [\n \"projectionUnspecified\",\n + \ \"rectangular\",\n \"360\",\n \"mesh\"\n + \ ],\n \"description\": \"The projection format of this broadcast. + This defaults to rectangular.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"closedCaptionsType\": {\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n + \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n + \ \"closedCaptionsEmbedded\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"enableContentEncryption\": + {\n \"description\": \"This setting indicates whether YouTube should + enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n + \ },\n \"enableDvr\": {\n \"type\": \"boolean\",\n \"description\": + \"This setting determines whether viewers can access DVR controls while watching + the video. DVR controls enable the viewer to control the video playback experience + by pausing, rewinding, or fast forwarding content. The default value for this + property is true. *Important:* You must set the value to true and also set + the enableArchive property's value to true if you want to make playback available + immediately after the broadcast ends.\"\n },\n \"latencyPreference\": + {\n \"enumDescriptions\": [\n \"\",\n \"Best + for: highest quality viewer playbacks and higher resolutions.\",\n \"Best + for: near real-time interaction, with minimal playback buffering.\",\n \"Best + for: real-time interaction Does not support: Closed captions, 1440p, and 4k + resolutions\"\n ],\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n + \ \"normal\",\n \"low\",\n \"ultraLow\"\n + \ ],\n \"description\": \"If both this and enable_low_latency + are set, they must match. LATENCY_NORMAL should match enable_low_latency=false + LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should + have enable_low_latency omitted.\",\n \"type\": \"string\"\n },\n + \ \"mesh\": {\n \"format\": \"byte\",\n \"type\": + \"string\",\n \"description\": \"The mesh for projecting the video + if projection is mesh. The mesh value must be a UTF-8 string containing the + base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC specification + for an mshp box, excluding the box size and type but including the following + four reserved zero bytes for the version and flags.\"\n },\n \"monitorStream\": + {\n \"description\": \"The monitorStream object contains information + about the monitor stream, which the broadcaster can use to review the event + content before the broadcast stream is shown publicly.\",\n \"$ref\": + \"MonitorStreamInfo\"\n },\n \"enableLowLatency\": {\n \"description\": + \"Indicates whether this broadcast has low latency enabled.\",\n \"type\": + \"boolean\"\n }\n },\n \"description\": \"Detailed settings + of a broadcast.\",\n \"id\": \"LiveBroadcastContentDetails\"\n },\n + \ \"SubscriptionContentDetails\": {\n \"properties\": {\n \"activityType\": + {\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n + \ \"all\",\n \"uploads\"\n ],\n \"description\": + \"The type of activity this subscription is for (only uploads, everything).\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"publishAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the video is scheduled to publish. It can be set - only if the privacy status of the video is private..\",\n \"type\": - \"string\"\n },\n \"embeddable\": {\n \"description\": - \"This value indicates if the video can be embedded on another website. @mutable - youtube.videos.insert youtube.videos.update\",\n \"type\": \"boolean\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"Channel\": - {\n \"id\": \"Channel\",\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel.\"\n },\n - \ \"topicDetails\": {\n \"$ref\": \"ChannelTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\"\n },\n \"statistics\": - {\n \"$ref\": \"ChannelStatistics\",\n \"description\": - \"The statistics object encapsulates statistics for the channel.\"\n },\n - \ \"localizations\": {\n \"description\": \"Localizations for - different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelLocalization\"\n },\n \"type\": \"object\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel, such as its - title, description, and thumbnail images.\"\n },\n \"brandingSettings\": - {\n \"$ref\": \"ChannelBrandingSettings\",\n \"description\": - \"The brandingSettings object encapsulates information about the branding - of the channel.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object encapsulates information about the channel's content.\",\n - \ \"$ref\": \"ChannelContentDetails\"\n },\n \"conversionPings\": - {\n \"$ref\": \"ChannelConversionPings\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\"\n },\n \"auditDetails\": - {\n \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\",\n - \ \"$ref\": \"ChannelAuditDetails\"\n },\n \"contentOwnerDetails\": - {\n \"description\": \"The contentOwnerDetails object encapsulates - channel data that is relevant for YouTube Partners linked with the channel.\",\n - \ \"$ref\": \"ChannelContentOwnerDetails\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channel\\\".\",\n \"default\": \"youtube#channel\"\n - \ },\n \"status\": {\n \"description\": \"The status - object encapsulates information about the privacy status of the channel.\",\n - \ \"$ref\": \"ChannelStatus\"\n }\n },\n \"description\": - \"A *channel* resource contains information about a YouTube channel.\"\n },\n - \ \"LiveStreamSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"totalItemCount\": {\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"description\": \"The approximate number of items + that the subscription points to.\"\n },\n \"newItemCount\": + {\n \"type\": \"integer\",\n \"description\": \"The number + of new items in the subscription since its content was last read.\",\n \"format\": + \"uint32\"\n }\n },\n \"id\": \"SubscriptionContentDetails\",\n + \ \"description\": \"Details about the content to witch a subscription + refers.\",\n \"type\": \"object\"\n },\n \"CdnSettings\": {\n \"properties\": + {\n \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n + \ \"description\": \"The ingestionInfo object contains information + that YouTube provides that you need to transmit your RTMP or HTTP stream to + YouTube.\"\n },\n \"frameRate\": {\n \"description\": + \"The frame rate of the inbound video data.\",\n \"enum\": [\n \"30fps\",\n + \ \"60fps\",\n \"variable\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"format\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The stream's title. The value must be between - 1 and 128 characters long.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the stream - was created.\",\n \"format\": \"date-time\"\n },\n \"description\": - {\n \"description\": \"The stream's description. The value cannot - be longer than 10000 characters.\",\n \"type\": \"string\"\n },\n - \ \"isDefaultStream\": {\n \"type\": \"boolean\"\n }\n - \ },\n \"id\": \"LiveStreamSnippet\"\n },\n \"VideoCategory\": - {\n \"type\": \"object\",\n \"description\": \"A *videoCategory* - resource identifies a category that has been or could be associated with uploaded - videos.\",\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video category.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"default\": \"youtube#videoCategory\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"VideoCategory\"\n },\n - \ \"ResourceId\": {\n \"description\": \"A resource id is a generic - reference that points to another YouTube resource.\",\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a channel. This property - is only present if the resourceId.kind value is youtube#channel.\"\n },\n - \ \"kind\": {\n \"description\": \"The type of the API resource.\",\n - \ \"type\": \"string\"\n },\n \"playlistId\": {\n \"type\": + \ \"type\": \"string\",\n \"description\": \"The format of + the video stream that you are sending to Youtube. \"\n },\n \"ingestionType\": + {\n \"description\": \" The method or protocol used to transmit the + video stream.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"rtmp\",\n \"dash\",\n \"webrtc\",\n \"hls\"\n + \ ],\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n }\n + \ },\n \"resolution\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"240p\",\n \"360p\",\n + \ \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\",\n + \ \"2160p\",\n \"variable\"\n ],\n \"description\": + \"The resolution of the inbound video data.\"\n }\n },\n \"id\": + \"CdnSettings\",\n \"type\": \"object\",\n \"description\": \"Brief + description of the live stream cdn settings.\"\n },\n \"PlaylistSnippet\": + {\n \"id\": \"PlaylistSnippet\",\n \"description\": \"Basic details + about a playlist, including title, description and thumbnails.\",\n \"type\": + \"object\",\n \"properties\": {\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the playlist. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a playlist. This property - is only present if the resourceId.kind value is youtube#playlist.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ResourceId\"\n },\n - \ \"LiveBroadcast\": {\n \"type\": \"object\",\n \"description\": - \"A *liveBroadcast* resource represents an event that will be streamed, via - live video, on YouTube.\",\n \"id\": \"LiveBroadcast\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the event, including its title, description, - start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveBroadcast\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the broadcast.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n - \ }\n }\n },\n \"ChannelSectionLocalization\": {\n \"description\": - \"ChannelSection localization setting\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel section's title.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelSectionLocalization\"\n },\n \"ThirdPartyLinkSnippet\": - {\n \"description\": \"Basic information about a third party account - link, including its type and type-specific information.\",\n \"type\": - \"object\",\n \"id\": \"ThirdPartyLinkSnippet\",\n \"properties\": - {\n \"type\": {\n \"description\": \"Type of the link named - after the entities that are being linked.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A link - that is connecting (or about to connect) a channel with a store on a merchandising - platform in order to enable retail commerce capabilities for that channel - on YouTube.\"\n ]\n },\n \"channelToStoreLink\": {\n - \ \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n - \ }\n }\n },\n \"CommentSnippet\": {\n \"id\": \"CommentSnippet\",\n - \ \"description\": \"Basic details about a comment, such as its author - and text.\",\n \"type\": \"object\",\n \"properties\": {\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"textOriginal\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"canRate\": - {\n \"description\": \"Whether the current viewer can rate this comment.\",\n - \ \"type\": \"boolean\"\n },\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"viewerRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"textDisplay\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"likeCount\": {\n \"description\": - \"The total number of likes this comment has received.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the comment was originally published.\",\n \"type\": - \"string\"\n },\n \"updatedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was last updated.\",\n - \ \"format\": \"date-time\"\n },\n \"parentId\": {\n - \ \"description\": \"The unique id of the parent comment, only set - for replies.\",\n \"type\": \"string\"\n },\n \"moderationStatus\": - {\n \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by a - moderator.\",\n \"\",\n \"The comment is unfit for display.\"\n - \ ],\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"type\": - \"string\",\n \"description\": \"The comment's moderation status. - Will not be set if the comments were requested through the id filter.\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comment refers to, if any.\"\n },\n \"authorProfileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - the avatar of the user who posted the comment.\"\n }\n }\n },\n - \ \"SubscriptionListResponse\": {\n \"id\": \"SubscriptionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Subscription\"\n },\n \"description\": \"A list of subscriptions - that match the request criteria.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#subscriptionListResponse\",\n + identify the channel that published the playlist.\"\n },\n \"thumbnailVideoId\": + {\n \"type\": \"string\",\n \"description\": \"Note: if + the playlist has a custom thumbnail, this field will not be populated. The + video id selected by the user that will be used as the thumbnail of this playlist. + This field defaults to the first publicly viewable video in the playlist, + if: 1. The user has never selected a video to be the thumbnail of the playlist. + 2. The user selects a video to be the thumbnail, and then removes that video + from the playlist. 3. The user selects a non-owned video to be the thumbnail, + but that video becomes private, or gets deleted.\"\n },\n \"defaultLanguage\": + {\n \"description\": \"The language of the playlist's default title + and description.\",\n \"type\": \"string\"\n },\n \"tags\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"Keyword tags associated with the playlist.\",\n + \ \"type\": \"array\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The playlist's description.\"\n + \ },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"The channel title of the channel that the video + belongs to.\"\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The playlist's title.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.playlists.insert\",\n + \ \"youtube.playlists.update\"\n ]\n }\n },\n + \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": + \"date-time\",\n \"description\": \"The date and time that the playlist + was created.\"\n },\n \"localized\": {\n \"$ref\": + \"PlaylistLocalization\",\n \"description\": \"Localized title and + description, read-only.\"\n }\n }\n },\n \"VideoAbuseReportReasonListResponse\": + {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonListResponse\",\n + \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n }\n - \ }\n },\n \"ActivityContentDetailsChannelItem\": {\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"description\": \"Details about a resource which was added - to a channel.\",\n \"id\": \"ActivityContentDetailsChannelItem\"\n },\n - \ \"ChannelListResponse\": {\n \"properties\": {\n \"items\": - {\n \"items\": {\n \"$ref\": \"Channel\"\n },\n - \ \"type\": \"array\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n + \ \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n },\n + \ \"items\": {\n \"description\": \"A list of valid abuse reasons + that are used with `video.ReportAbuse`.\",\n \"items\": {\n \"$ref\": + \"VideoAbuseReportReason\"\n },\n \"type\": \"array\"\n \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": + \"The `visitorId` identifies the visitor.\",\n \"type\": \"string\"\n \ },\n \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#channelListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelListResponse\"\n },\n \"MonitorStreamInfo\": - {\n \"description\": \"Settings and Info of the monitor stream\",\n \"type\": - \"object\",\n \"id\": \"MonitorStreamInfo\",\n \"properties\": {\n - \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\"\n },\n - \ \"broadcastStreamDelayMs\": {\n \"type\": \"integer\",\n - \ \"description\": \"If you have set the enableMonitorStream property - to true, then this property determines the length of the live broadcast delay.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"format\": \"uint32\"\n },\n - \ \"enableMonitorStream\": {\n \"type\": \"boolean\",\n \"description\": - \"This value determines whether the monitor stream is enabled for the broadcast. - If the monitor stream is enabled, then YouTube will broadcast the event content - on a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n }\n }\n },\n \"Cuepoint\": - {\n \"type\": \"object\",\n \"description\": \"Note that there may - be a 5-second end-point resolution issue. For instance, if a cuepoint comes - in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. - This is an artifact of HLS.\",\n \"id\": \"Cuepoint\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The identifier for cuepoint - resource.\",\n \"type\": \"string\"\n },\n \"insertionOffsetTimeMs\": - {\n \"format\": \"int64\",\n \"type\": \"string\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"cueType\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n + \"string\"\n }\n }\n },\n \"PlaylistStatus\": {\n \"properties\": + {\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"description\": + \"The playlist's privacy status.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"PlaylistStatus\"\n + \ },\n \"PlaylistItemContentDetails\": {\n \"id\": \"PlaylistItemContentDetails\",\n + \ \"properties\": {\n \"note\": {\n \"type\": \"string\",\n + \ \"description\": \"A user-generated note for this item.\"\n },\n + \ \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify a video. To retrieve the video + resource, set the id query parameter to this value in your API request.\"\n + \ },\n \"startAt\": {\n \"type\": \"string\",\n \"description\": + \"The time, measured in seconds from the start of the video, when the video + should start playing. (The playlist owner can specify the times when the video + should start and stop playing when the video is played in the context of the + playlist.) The default value is 0.\"\n },\n \"endAt\": {\n \"type\": + \"string\",\n \"description\": \"The time, measured in seconds from + the start of the video, when the video should stop playing. (The playlist + owner can specify the times when the video should start and stop playing when + the video is played in the context of the playlist.) By default, assume that + the video.endTime is the end of the video.\"\n },\n \"videoPublishedAt\": + {\n \"format\": \"date-time\",\n \"description\": \"The + date and time that the video was published to YouTube.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelBrandingSettings\": + {\n \"type\": \"object\",\n \"id\": \"ChannelBrandingSettings\",\n + \ \"description\": \"Branding properties of a YouTube channel.\",\n \"properties\": + {\n \"watch\": {\n \"$ref\": \"WatchSettings\",\n \"description\": + \"Branding properties for the watch page.\"\n },\n \"hints\": + {\n \"items\": {\n \"$ref\": \"PropertyValue\"\n },\n + \ \"type\": \"array\",\n \"description\": \"Additional experimental + branding properties.\"\n },\n \"channel\": {\n \"description\": + \"Branding properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n + \ },\n \"image\": {\n \"description\": \"Branding properties + for branding images.\",\n \"$ref\": \"ImageSettings\"\n }\n + \ }\n },\n \"Member\": {\n \"type\": \"object\",\n \"id\": + \"Member\",\n \"properties\": {\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#member\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": + \"MemberSnippet\",\n \"description\": \"The snippet object contains + basic details about the member.\"\n }\n },\n \"description\": + \"A *member* resource represents a member for a YouTube channel. A member + provides recurring monetary support to a creator and receives special benefits.\"\n + \ },\n \"MembershipsDurationAtLevel\": {\n \"properties\": {\n \"level\": + {\n \"type\": \"string\",\n \"description\": \"Pricing level + ID.\"\n },\n \"memberSince\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the user became a continuous + member for the given level.\"\n },\n \"memberTotalDurationMonths\": + {\n \"description\": \"The cumulative time the user has been a member + for the given level in complete months (the time is rounded down to the nearest + integer).\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n + \ }\n },\n \"id\": \"MembershipsDurationAtLevel\",\n \"type\": + \"object\"\n },\n \"I18nLanguageSnippet\": {\n \"properties\": + {\n \"name\": {\n \"type\": \"string\",\n \"description\": + \"The human-readable name of the language in the language itself.\"\n },\n + \ \"hl\": {\n \"description\": \"A short BCP-47 code that uniquely + identifies a language.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"I18nLanguageSnippet\",\n \"type\": \"object\",\n \"description\": + \"Basic details about an i18n language, such as language code and human-readable + name.\"\n },\n \"LocalizedString\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"language\": {\n \"type\": \"string\"\n + \ },\n \"value\": {\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"LocalizedString\"\n },\n \"MembershipsLevel\": + {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube assigns to uniquely identify the memberships level.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"MembershipsLevelSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the level.\"\n },\n \"kind\": {\n \"default\": \"youtube#membershipsLevel\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"MembershipsLevel\",\n \"type\": + \"object\",\n \"description\": \"A *membershipsLevel* resource represents + an offer made by YouTube creators for their fans. Users can become members + of the channel by joining one of the available levels. They will provide recurring + monetary support and receives special benefits.\"\n },\n \"VideoCategorySnippet\": + {\n \"type\": \"object\",\n \"properties\": {\n \"assignable\": + {\n \"type\": \"boolean\"\n },\n \"channelId\": {\n + \ \"type\": \"string\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n + \ \"description\": \"The YouTube channel that created the video category.\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The video category's title.\"\n }\n },\n \"description\": + \"Basic details about a video category, such as its localized title.\",\n + \ \"id\": \"VideoCategorySnippet\"\n },\n \"ChannelLocalization\": + {\n \"id\": \"ChannelLocalization\",\n \"properties\": {\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The localized + strings for channel's description.\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"The localized strings for channel's + title.\"\n }\n },\n \"description\": \"Channel localization + setting\",\n \"type\": \"object\"\n },\n \"VideoContentDetails\": + {\n \"description\": \"Details about the content of a YouTube Video.\",\n + \ \"id\": \"VideoContentDetails\",\n \"properties\": {\n \"duration\": + {\n \"description\": \"The length of the video. The tag value is + an ISO 8601 duration in the format PT#M#S, in which the letters PT indicate + that the value specifies a period of time, and the letters M and S refer to + length in minutes and seconds, respectively. The # characters preceding the + M and S letters are both integers that specify the number of minutes (or seconds) + of the video. For example, a value of PT15M51S indicates that the video is + 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n },\n + \ \"dimension\": {\n \"description\": \"The value of dimension + indicates whether the video is available in 3D or in 2D.\",\n \"type\": + \"string\"\n },\n \"caption\": {\n \"description\": + \"The value of captions indicates whether the video has captions or not.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"true\",\n + \ \"false\"\n ]\n },\n \"countryRestriction\": + {\n \"description\": \"The countryRestriction object contains information + about the countries where a video is (or is not) viewable.\",\n \"$ref\": + \"AccessPolicy\"\n },\n \"projection\": {\n \"type\": + \"string\",\n \"enum\": [\n \"rectangular\",\n \"360\"\n \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"walltimeMs\": {\n \"type\": \"string\",\n - \ \"description\": \"The wall clock time at which the cuepoint should - be inserted. Only one of insertion_offset_time_ms and walltime_ms may be set - at a time.\",\n \"format\": \"uint64\"\n },\n \"durationSecs\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The duration of this cuepoint.\"\n }\n }\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"isChatSponsor\": - {\n \"description\": \"Whether the author is a sponsor of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"isChatOwner\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is the owner - of the live chat.\"\n },\n \"isVerified\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author's identity has - been verified by YouTube.\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"isChatModerator\": - {\n \"description\": \"Whether the author is a moderator of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatMessageAuthorDetails\"\n },\n \"PlaylistItemStatus\": - {\n \"description\": \"Information about the playlist item's privacy - status.\",\n \"type\": \"object\",\n \"properties\": {\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"This resource's - privacy status.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"id\": \"PlaylistItemStatus\"\n }\n },\n \"protocol\": - \"rest\",\n \"revision\": \"20230131\",\n \"ownerName\": \"Google\",\n \"icons\": - {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"batchPath\": \"batch\",\n \"discoveryVersion\": \"v1\",\n \"documentationLink\": - \"https://developers.google.com/youtube/\",\n \"basePath\": \"\",\n \"title\": - \"YouTube Data API v3\",\n \"fullyEncodeReservedExpansion\": true,\n \"name\": - \"youtube\",\n \"id\": \"youtube:v3\",\n \"servicePath\": \"\",\n \"canonicalName\": - \"YouTube\",\n \"kind\": \"discovery#restDescription\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 01 Feb 2023 10:42:39 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/videos?id=7qH7WMzqOlU&part=snippet - response: - body: - string: "{\n \"kind\": \"youtube#videoListResponse\",\n \"etag\": \"HBv8oJBdmh0xiwK-aaaXOIN2WPw\",\n - \ \"items\": [\n {\n \"kind\": \"youtube#video\",\n \"etag\": - \"Aog0RAV4wJjg9tP3dXVA5cLDcGA\",\n \"id\": \"7qH7WMzqOlU\",\n \"snippet\": - {\n \"publishedAt\": \"2022-07-03T14:00:06Z\",\n \"channelId\": - \"UC3ptU7hyNeFlJdvQj2nZHJg\",\n \"title\": \"\u0418\u0413\u0420\u042B - \u041F\u041E\u0416\u0418\u041B\u041E\u0413\u041E \u0413\u0415\u0419\u041C\u0415\u0420\u0410: - \u041F\u0435\u0440\u0432\u0430\u044F \u043B\u0430\u0434\u0434\u0435\u0440\u043D\u0430\u044F - \u0441\u0435\u0441\u0441\u0438\u044F \u0421\u0435\u043A\u0440\u0435\u0442\u043D\u043E\u0433\u043E - \u0410\u0433\u0435\u043D\u0442\u0430 \u0432 StarCraft II \u043F\u043E\u0441\u043B\u0435 - \u0442\u0440\u0438\u0434\u0446\u0430\u0442\u0438\u043B\u0435\u0442\u0438\u044F!\",\n - \ \"description\": \"\u0421\u0442\u0430\u043D\u044C \u0441\u043F\u043E\u043D\u0441\u043E\u0440\u043E\u043C - \u043A\u0430\u043D\u0430\u043B\u0430: https://www.youtube.com/alex007sc2/join - \\n\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0430 \u043F\u0440\u043E\u0435\u043A\u0442\u0430: - http://clever.press/donate \\n\u0418\u0413\u0420\u042B \u041F\u041E\u0416\u0418\u041B\u041E\u0413\u041E - \u0413\u0415\u0419\u041C\u0415\u0420\u0410: \u041F\u0435\u0440\u0432\u0430\u044F - \u043B\u0430\u0434\u0434\u0435\u0440\u043D\u0430\u044F \u0441\u0435\u0441\u0441\u0438\u044F - \u0421\u0435\u043A\u0440\u0435\u0442\u043D\u043E\u0433\u043E \u0410\u0433\u0435\u043D\u0442\u0430 - \u0432 StarCraft II \u043F\u043E\u0441\u043B\u0435 \u0442\u0440\u0438\u0434\u0446\u0430\u0442\u0438\u043B\u0435\u0442\u0438\u044F, - \u0438\u0433\u0440\u0430\u0435\u0442 \u0438 \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0438\u0440\u0443\u0435\u0442 - \u0410\u043B\u0435\u043A\u0441007\\n\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0430 - \u043A\u0430\u043D\u0430\u043B\u0430 \u0432 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0435: - \\nBTC [BTC Network] - 16x6pgcBDd6tQtJuuAECViHUG7R1C4vjM6\\nETH [ERC20 Network] - - 0x852f71593b43ea8323640688f333819c6d21bbda\\nUSDT [TRC20 Network] - TYFV5Sj92uPGoMfPhfn74hpyGACZWMQ81W\\nDiscord-\u0441\u0435\u0440\u0432\u0435\u0440: - http://discord.gg/alex007\\n\u041E \u043A\u0430\u043D\u0430\u043B\u0435: \u0417\u0434\u0435\u0441\u044C - \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043D\u0430\u0439\u0442\u0438 - \u0432\u0441\u0435 \u043B\u0443\u0447\u0448\u0438\u0435 \u0432\u0438\u0434\u0435\u043E - \u043F\u043E StarCraft 2 - \u043C\u0430\u0442\u0447\u0438 \u043F\u0440\u043E\u0444\u0435\u0441\u0441\u0438\u043E\u043D\u0430\u043B\u043E\u0432, - \u0438\u0433\u0440\u044B \u043E\u0442 \u043F\u0435\u0440\u0432\u043E\u0433\u043E - \u043B\u0438\u0446\u0430 \u0437\u0430 \u0441\u043B\u0443\u0447\u0430\u0439\u043D\u0443\u044E - \u0440\u0430\u0441\u0443, \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0435 - \u043C\u0430\u0442\u0435\u0440\u0438\u0430\u043B\u044B \u043E\u0442 \u043A\u0438\u0431\u0435\u0440\u0441\u043F\u043E\u0440\u0442\u0438\u0432\u043D\u043E\u0433\u043E - \u0430\u043D\u0430\u043B\u0438\u0442\u0438\u043A\u0430 \u0438 \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0442\u043E\u0440\u0430 - Alex007.\",\n \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://i.ytimg.com/vi/7qH7WMzqOlU/default.jpg\",\n \"width\": - 120,\n \"height\": 90\n },\n \"medium\": {\n - \ \"url\": \"https://i.ytimg.com/vi/7qH7WMzqOlU/mqdefault.jpg\",\n - \ \"width\": 320,\n \"height\": 180\n },\n \"high\": - {\n \"url\": \"https://i.ytimg.com/vi/7qH7WMzqOlU/hqdefault.jpg\",\n - \ \"width\": 480,\n \"height\": 360\n },\n \"standard\": - {\n \"url\": \"https://i.ytimg.com/vi/7qH7WMzqOlU/sddefault.jpg\",\n - \ \"width\": 640,\n \"height\": 480\n },\n \"maxres\": - {\n \"url\": \"https://i.ytimg.com/vi/7qH7WMzqOlU/maxresdefault.jpg\",\n - \ \"width\": 1280,\n \"height\": 720\n }\n },\n - \ \"channelTitle\": \"Alex007SC2\",\n \"tags\": [\n \"StarCraft - 2\",\n \"Alex007\",\n \"Legacy of the Void\",\n \"StarCraft - II\",\n \"StarCraft\",\n \"\u0421\u0442\u0430\u0440\u043A\u0440\u0430\u0444\u0442\",\n - \ \"\u0421\u0442\u0430\u0440\u043A\u0440\u0430\u0444\u0442 2\",\n - \ \"\u0410\u043B\u0435\u043A\u0441007\",\n \"\u041A\u0438\u0431\u0435\u0440\u0441\u043F\u043E\u0440\u0442\",\n - \ \"\u0413\u0435\u0439\u043C\u0438\u043D\u0433\",\n \"Gaming\",\n - \ \"Esports\",\n \"SC2\",\n \"\u0421\u041A2\",\n - \ \"Alex 007\",\n \"\u0410\u043B\u0435\u043A\u0441 007\",\n - \ \"\u0410\u043B\u0435\u043A\u0441\u0435\u0439 \u0422\u0440\u0443\u0448\u043B\u044F\u043A\u043E\u0432\",\n - \ \"\u0410\u0433\u0435\u043D\u0442\",\n \"\u0421\u0435\u043A\u0440\u0435\u0442\u043D\u044B\u0439 - \u0410\u0433\u0435\u043D\u0442\",\n \"Agent\",\n \"Secret - Agent\",\n \"\u041F\u043E\u0436\u0438\u043B\u043E\u0439 \u0433\u0435\u0439\u043C\u0438\u043D\u0433\",\n - \ \"First Person\",\n \"\u041E\u0431\u0443\u0447\u0435\u043D\u0438\u0435\",\n - \ \"\u0410\u043D\u0430\u043B\u0438\u0442\u0438\u043A\u0430\",\n \"FP - SC2\"\n ],\n \"categoryId\": \"20\",\n \"liveBroadcastContent\": - \"none\",\n \"localized\": {\n \"title\": \"\u0418\u0413\u0420\u042B - \u041F\u041E\u0416\u0418\u041B\u041E\u0413\u041E \u0413\u0415\u0419\u041C\u0415\u0420\u0410: - \u041F\u0435\u0440\u0432\u0430\u044F \u043B\u0430\u0434\u0434\u0435\u0440\u043D\u0430\u044F - \u0441\u0435\u0441\u0441\u0438\u044F \u0421\u0435\u043A\u0440\u0435\u0442\u043D\u043E\u0433\u043E - \u0410\u0433\u0435\u043D\u0442\u0430 \u0432 StarCraft II \u043F\u043E\u0441\u043B\u0435 - \u0442\u0440\u0438\u0434\u0446\u0430\u0442\u0438\u043B\u0435\u0442\u0438\u044F!\",\n - \ \"description\": \"\u0421\u0442\u0430\u043D\u044C \u0441\u043F\u043E\u043D\u0441\u043E\u0440\u043E\u043C - \u043A\u0430\u043D\u0430\u043B\u0430: https://www.youtube.com/alex007sc2/join - \\n\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0430 \u043F\u0440\u043E\u0435\u043A\u0442\u0430: - http://clever.press/donate \\n\u0418\u0413\u0420\u042B \u041F\u041E\u0416\u0418\u041B\u041E\u0413\u041E - \u0413\u0415\u0419\u041C\u0415\u0420\u0410: \u041F\u0435\u0440\u0432\u0430\u044F - \u043B\u0430\u0434\u0434\u0435\u0440\u043D\u0430\u044F \u0441\u0435\u0441\u0441\u0438\u044F - \u0421\u0435\u043A\u0440\u0435\u0442\u043D\u043E\u0433\u043E \u0410\u0433\u0435\u043D\u0442\u0430 - \u0432 StarCraft II \u043F\u043E\u0441\u043B\u0435 \u0442\u0440\u0438\u0434\u0446\u0430\u0442\u0438\u043B\u0435\u0442\u0438\u044F, - \u0438\u0433\u0440\u0430\u0435\u0442 \u0438 \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0438\u0440\u0443\u0435\u0442 - \u0410\u043B\u0435\u043A\u0441007\\n\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0430 - \u043A\u0430\u043D\u0430\u043B\u0430 \u0432 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0435: - \\nBTC [BTC Network] - 16x6pgcBDd6tQtJuuAECViHUG7R1C4vjM6\\nETH [ERC20 Network] - - 0x852f71593b43ea8323640688f333819c6d21bbda\\nUSDT [TRC20 Network] - TYFV5Sj92uPGoMfPhfn74hpyGACZWMQ81W\\nDiscord-\u0441\u0435\u0440\u0432\u0435\u0440: - http://discord.gg/alex007\\n\u041E \u043A\u0430\u043D\u0430\u043B\u0435: \u0417\u0434\u0435\u0441\u044C - \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043D\u0430\u0439\u0442\u0438 - \u0432\u0441\u0435 \u043B\u0443\u0447\u0448\u0438\u0435 \u0432\u0438\u0434\u0435\u043E - \u043F\u043E StarCraft 2 - \u043C\u0430\u0442\u0447\u0438 \u043F\u0440\u043E\u0444\u0435\u0441\u0441\u0438\u043E\u043D\u0430\u043B\u043E\u0432, - \u0438\u0433\u0440\u044B \u043E\u0442 \u043F\u0435\u0440\u0432\u043E\u0433\u043E - \u043B\u0438\u0446\u0430 \u0437\u0430 \u0441\u043B\u0443\u0447\u0430\u0439\u043D\u0443\u044E - \u0440\u0430\u0441\u0443, \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0435 - \u043C\u0430\u0442\u0435\u0440\u0438\u0430\u043B\u044B \u043E\u0442 \u043A\u0438\u0431\u0435\u0440\u0441\u043F\u043E\u0440\u0442\u0438\u0432\u043D\u043E\u0433\u043E - \u0430\u043D\u0430\u043B\u0438\u0442\u0438\u043A\u0430 \u0438 \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0442\u043E\u0440\u0430 - Alex007.\"\n },\n \"defaultAudioLanguage\": \"ru\"\n }\n - \ }\n ],\n \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": - 1\n }\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 01 Feb 2023 10:42:40 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"kind\": \"discovery#restDescription\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"title\": \"YouTube Data API v3\",\n \"protocol\": \"rest\",\n \"discoveryVersion\": - \"v1\",\n \"parameters\": {\n \"oauth_token\": {\n \"type\": \"string\",\n - \ \"description\": \"OAuth 2.0 token for the current user.\",\n \"location\": - \"query\"\n },\n \"fields\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Selector specifying which fields to include - in a partial response.\"\n },\n \"alt\": {\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"Responses with Content-Type of application/json\",\n - \ \"Media download with context-dependent Content-Type\",\n \"Responses - with Content-Type of application/x-protobuf\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"description\": \"Data format for response.\",\n \"default\": - \"json\"\n },\n \"access_token\": {\n \"type\": \"string\",\n \"description\": - \"OAuth access token.\",\n \"location\": \"query\"\n },\n \"uploadType\": - {\n \"location\": \"query\",\n \"description\": \"Legacy upload - protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"type\": - \"string\"\n },\n \"upload_protocol\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Upload protocol for - media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n },\n \"prettyPrint\": - {\n \"location\": \"query\",\n \"description\": \"Returns response - with indentations and line breaks.\",\n \"type\": \"boolean\",\n \"default\": - \"true\"\n },\n \"key\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"$.xgafv\": {\n \"description\": - \"V1 error format.\",\n \"enumDescriptions\": [\n \"v1 error format\",\n - \ \"v2 error format\"\n ],\n \"enum\": [\n \"1\",\n - \ \"2\"\n ],\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"callback\": {\n \"description\": \"JSONP\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"quotaUser\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n - \ }\n },\n \"basePath\": \"\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"schemas\": {\n \"ChannelTopicDetails\": {\n \"properties\": {\n - \ \"topicCategories\": {\n \"type\": \"array\",\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicIds\": - {\n \"type\": \"array\",\n \"description\": \"A list of - Freebase topic IDs associated with the channel. You can retrieve information - about each topic using the Freebase Topic API.\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n }\n },\n \"description\": - \"Freebase topic information related to the channel.\",\n \"type\": \"object\",\n - \ \"id\": \"ChannelTopicDetails\"\n },\n \"LiveBroadcast\": {\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveBroadcast\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the event's status.\",\n \"$ref\": - \"LiveBroadcastStatus\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the broadcast.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - contains info about the event's current stats. These include concurrent viewers - and total chat count. Statistics can change (in either direction) during the - lifetime of an event. Statistics are only returned while the event is live.\",\n - \ \"$ref\": \"LiveBroadcastStatistics\"\n },\n \"snippet\": + \ ],\n \"description\": \"Specifies the projection format + of the video.\"\n },\n \"licensedContent\": {\n \"description\": + \"The value of is_license_content indicates whether the video is licensed + content.\",\n \"type\": \"boolean\"\n },\n \"definition\": + {\n \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n + \ ],\n \"enum\": [\n \"sd\",\n \"hd\"\n + \ ],\n \"description\": \"The value of definition indicates + whether the video is available in high definition or only in standard definition.\",\n + \ \"type\": \"string\"\n },\n \"regionRestriction\": + {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": + \"The regionRestriction object contains information about the countries where + a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed + property or the contentDetails.regionRestriction.blocked property.\"\n },\n + \ \"hasCustomThumbnail\": {\n \"description\": \"Indicates + whether the video uploader has provided a custom thumbnail image for the video. + This property is only visible to the video uploader.\",\n \"type\": + \"boolean\"\n },\n \"contentRating\": {\n \"description\": + \"Specifies the ratings that the video received under various rating schemes.\",\n + \ \"$ref\": \"ContentRating\"\n }\n },\n \"type\": + \"object\"\n },\n \"VideoMonetizationDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n + \ \"description\": \"The value of access indicates whether the video + can be monetized or not.\"\n }\n },\n \"description\": \"Details + about monetization of a YouTube Video.\",\n \"id\": \"VideoMonetizationDetails\"\n + \ },\n \"LiveChatTextMessageDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveChatTextMessageDetails\",\n \"properties\": {\n \"messageText\": + {\n \"description\": \"The user's message.\",\n \"type\": + \"string\"\n }\n }\n },\n \"Channel\": {\n \"description\": + \"A *channel* resource contains information about a YouTube channel.\",\n + \ \"id\": \"Channel\",\n \"type\": \"object\",\n \"properties\": + {\n \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n + \ \"description\": \"The statistics object encapsulates statistics + for the channel.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"conversionPings\": + {\n \"$ref\": \"ChannelConversionPings\",\n \"description\": + \"The conversionPings object encapsulates information about conversion pings + that need to be respected by the channel.\"\n },\n \"id\": {\n + \ \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel.\"\n },\n \"status\": + {\n \"description\": \"The status object encapsulates information + about the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n + \ },\n \"topicDetails\": {\n \"$ref\": \"ChannelTopicDetails\",\n + \ \"description\": \"The topicDetails object encapsulates information + about Freebase topics associated with the channel.\"\n },\n \"snippet\": {\n \"description\": \"The snippet object contains basic details - about the event, including its title, description, start time, and end time.\",\n - \ \"$ref\": \"LiveBroadcastSnippet\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"LiveBroadcast\",\n \"description\": - \"A *liveBroadcast* resource represents an event that will be streamed, via - live video, on YouTube.\",\n \"type\": \"object\"\n },\n \"LiveChatMessage\": - {\n \"description\": \"A *liveChatMessage* resource represents a chat - message in a YouTube Live Chat.\",\n \"type\": \"object\",\n \"properties\": - {\n \"authorDetails\": {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n - \ \"description\": \"The authorDetails object contains basic details - about the user that posted this message.\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveChatMessageSnippet\",\n \"description\": - \"The snippet object contains basic details about the message.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the message.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n \"default\": - \"youtube#liveChatMessage\"\n }\n },\n \"id\": \"LiveChatMessage\"\n - \ },\n \"ChannelSectionTargeting\": {\n \"properties\": {\n \"languages\": - {\n \"description\": \"The language the channel section is targeting.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"regions\": {\n \"description\": - \"The region the channel section is targeting.\",\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"countries\": {\n \"type\": \"array\",\n \"description\": - \"The country the channel section is targeting.\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelSectionTargeting\",\n \"description\": - \"ChannelSection targeting setting.\"\n },\n \"PlaylistItemContentDetails\": - {\n \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - a video. To retrieve the video resource, set the id query parameter to this - value in your API request.\"\n },\n \"videoPublishedAt\": {\n - \ \"description\": \"The date and time that the video was published - to YouTube.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"note\": {\n \"type\": \"string\",\n - \ \"description\": \"A user-generated note for this item.\"\n },\n - \ \"endAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\"\n - \ },\n \"startAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"PlaylistItemContentDetails\"\n },\n \"AbuseReport\": - {\n \"id\": \"AbuseReport\",\n \"type\": \"object\",\n \"properties\": - {\n \"abuseTypes\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"AbuseType\"\n }\n },\n \"subject\": - {\n \"$ref\": \"Entity\"\n },\n \"relatedEntities\": - {\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n - \ \"type\": \"array\"\n },\n \"description\": {\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"properties\": {\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"isChatModerator\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is a moderator of the live chat.\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"isChatSponsor\": {\n \"description\": - \"Whether the author is a sponsor of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"displayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's display name.\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"isChatOwner\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is the owner - of the live chat.\"\n },\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageAuthorDetails\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"properties\": {\n \"creativeViewUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user was shown this promoted item.\"\n },\n \"forecastingUrl\": - {\n \"description\": \"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.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"descriptionText\": {\n \"description\": \"The text description - to accompany the promoted item.\",\n \"type\": \"string\"\n },\n - \ \"impressionUrl\": {\n \"items\": {\n \"type\": + about the channel, such as its title, description, and thumbnail images.\",\n + \ \"$ref\": \"ChannelSnippet\"\n },\n \"brandingSettings\": + {\n \"description\": \"The brandingSettings object encapsulates information + about the branding of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n + \ },\n \"localizations\": {\n \"description\": \"Localizations + for different languages\",\n \"type\": \"object\",\n \"additionalProperties\": + {\n \"$ref\": \"ChannelLocalization\"\n }\n },\n + \ \"contentOwnerDetails\": {\n \"$ref\": \"ChannelContentOwnerDetails\",\n + \ \"description\": \"The contentOwnerDetails object encapsulates channel + data that is relevant for YouTube Partners linked with the channel.\"\n },\n + \ \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n + \ \"description\": \"The auditionDetails object encapsulates channel + data that is relevant for YouTube Partners during the audition process.\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object encapsulates information about the channel's content.\",\n + \ \"$ref\": \"ChannelContentDetails\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#channel\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#channel\\\".\"\n }\n }\n },\n + \ \"SubscriptionSubscriberSnippet\": {\n \"description\": \"Basic details + about a subscription's subscriber including title, description, channel ID + and thumbnails.\",\n \"type\": \"object\",\n \"id\": \"SubscriptionSubscriberSnippet\",\n + \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The title of the subscriber.\"\n },\n + \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": + \"Thumbnails for this subscriber.\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The description + of the subscriber.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The channel ID of the subscriber.\"\n + \ }\n }\n },\n \"LiveChatMemberMilestoneChatDetails\": {\n + \ \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"memberLevelName\": {\n \"description\": + \"The name of the Level at which the viever is a member. The Level names are + defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\",\n \"type\": \"string\"\n },\n + \ \"userComment\": {\n \"description\": \"The comment added + by the member to this Member Milestone Chat. This field is empty for messages + without a comment from the member.\",\n \"type\": \"string\"\n },\n + \ \"memberMonth\": {\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"description\": \"The total amount of months (rounded + up) the viewer has been a member that granted them this Member Milestone Chat. + This is the same number of months as is being displayed to YouTube users.\"\n + \ }\n }\n },\n \"LiveBroadcastSnippet\": {\n \"properties\": + {\n \"isDefaultBroadcast\": {\n \"type\": \"boolean\",\n \"description\": + \"Indicates whether this broadcast is the default broadcast. Internal only.\"\n + \ },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"format\": \"date-time\",\n \"description\": \"The date + and time that the broadcast was added to YouTube's live broadcast schedule.\"\n + \ },\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": + \"The id of the live chat for this broadcast.\"\n },\n \"scheduledStartTime\": + {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"The date and time + that the broadcast is scheduled to start.\",\n \"format\": \"date-time\"\n + \ },\n \"scheduledEndTime\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the broadcast is scheduled + to end.\",\n \"format\": \"date-time\"\n },\n \"actualStartTime\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the broadcast actually + started. This information is only available once the broadcast's state is + live.\"\n },\n \"title\": {\n \"description\": \"The + broadcast's title. Note that the broadcast represents exactly one YouTube + video. You can set this field by modifying the broadcast resource or by setting + the title field of the corresponding video resource.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images + associated with the broadcast. For each nested object in this object, the + key is the name of the thumbnail image, and the value is an object that contains + other information about the thumbnail.\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel that is publishing the broadcast.\"\n + \ },\n \"description\": {\n \"description\": \"The broadcast's + description. As with the title, you can set this field by modifying the broadcast + resource or by setting the description field of the corresponding video resource.\",\n + \ \"type\": \"string\"\n },\n \"actualEndTime\": {\n + \ \"format\": \"date-time\",\n \"description\": \"The date + and time that the broadcast actually ended. This information is only available + once the broadcast's state is complete.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveBroadcastSnippet\",\n + \ \"description\": \"Basic broadcast information.\"\n },\n \"LiveChatMembershipGiftingDetails\": + {\n \"properties\": {\n \"giftMembershipsLevelName\": {\n \"description\": + \"The name of the level of the gift memberships purchased by the user. The + Level names are defined by the YouTube channel offering the Membership. In + some situations this field isn't filled.\",\n \"type\": \"string\"\n + \ },\n \"giftMembershipsCount\": {\n \"description\": + \"The number of gift memberships purchased by the user.\",\n \"type\": + \"integer\",\n \"format\": \"int32\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n + \ \"ChannelContentOwnerDetails\": {\n \"id\": \"ChannelContentOwnerDetails\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"contentOwner\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the content owner linked to the channel.\"\n },\n \"timeLinked\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the channel was linked to the content owner.\",\n \"format\": + \"date-time\"\n }\n },\n \"description\": \"The contentOwnerDetails + object encapsulates channel data that is relevant for YouTube Partners linked + with the channel.\"\n },\n \"SuperChatEvent\": {\n \"description\": + \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube + channel.\",\n \"type\": \"object\",\n \"properties\": {\n \"snippet\": + {\n \"description\": \"The `snippet` object contains basic details + about the Super Chat event.\",\n \"$ref\": \"SuperChatEventSnippet\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"default\": \"youtube#superChatEvent\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube assigns to uniquely identify the Super Chat event.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"SuperChatEvent\"\n + \ },\n \"VideoStatistics\": {\n \"id\": \"VideoStatistics\",\n \"properties\": + {\n \"favoriteCount\": {\n \"type\": \"string\",\n \"description\": + \"The number of users who currently have the video marked as a favorite video.\",\n + \ \"format\": \"uint64\"\n },\n \"viewCount\": {\n \"format\": + \"uint64\",\n \"description\": \"The number of times the video has + been viewed.\",\n \"type\": \"string\"\n },\n \"commentCount\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The number of comments for the video.\"\n },\n \"dislikeCount\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The number of users who have indicated that they disliked the video by giving + it a negative rating.\"\n },\n \"likeCount\": {\n \"description\": + \"The number of users who have indicated that they liked the video by giving + it a positive rating.\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"Statistics about the video, such as the number of times the video was viewed + or liked.\"\n },\n \"CommentSnippetAuthorChannelId\": {\n \"description\": + \"The id of the author's YouTube channel, if any.\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n + \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"PageInfo\": + {\n \"properties\": {\n \"resultsPerPage\": {\n \"format\": + \"int32\",\n \"description\": \"The number of results included in + the API response.\",\n \"type\": \"integer\"\n },\n \"totalResults\": + {\n \"format\": \"int32\",\n \"type\": \"integer\",\n \"description\": + \"The total number of results in the result set.\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"PageInfo\",\n \"description\": + \"Paging details for lists of resources, including total number of items available + and number of resources returned in a single page.\"\n },\n \"ChannelTopicDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"topicIds\": + {\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"A list of Freebase + topic IDs associated with the channel. You can retrieve information about + each topic using the Freebase Topic API.\"\n },\n \"topicCategories\": + {\n \"description\": \"A list of Wikipedia URLs that describe the + channel's content.\",\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"type\": \"array\"\n }\n },\n \"description\": + \"Freebase topic information related to the channel.\",\n \"id\": \"ChannelTopicDetails\"\n + \ },\n \"ActivityContentDetailsChannelItem\": {\n \"description\": + \"Details about a resource which was added to a channel.\",\n \"id\": + \"ActivityContentDetailsChannelItem\",\n \"type\": \"object\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + that was added to the channel.\"\n }\n }\n },\n \"VideoContentDetailsRegionRestriction\": + {\n \"type\": \"object\",\n \"properties\": {\n \"allowed\": + {\n \"type\": \"array\",\n \"description\": \"A list of + region codes that identify countries where the video is viewable. If this + property is present and a country is not listed in its value, then the video + is blocked from appearing in that country. If this property is present and + contains an empty list, the video is blocked in all countries.\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"blocked\": + {\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"A list of region codes + that identify countries where the video is blocked. If this property is present + and a country is not listed in its value, then the video is viewable in that + country. If this property is present and contains an empty list, the video + is viewable in all countries.\"\n }\n },\n \"id\": \"VideoContentDetailsRegionRestriction\",\n + \ \"description\": \"DEPRECATED Region restriction of the video.\"\n },\n + \ \"Comment\": {\n \"type\": \"object\",\n \"properties\": {\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the comment.\",\n \"$ref\": \"CommentSnippet\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n + \ \"default\": \"youtube#comment\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the comment.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"Comment\",\n \"description\": \"A *comment* represents a single YouTube + comment.\"\n },\n \"LiveChatUserBannedMessageDetails\": {\n \"properties\": + {\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n + \ \"description\": \"The details of the user that was banned.\"\n + \ },\n \"banType\": {\n \"description\": \"The type + of ban.\",\n \"enum\": [\n \"permanent\",\n \"temporary\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"banDurationSeconds\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The duration of the ban. This property is only present if the banType is + temporary.\"\n }\n },\n \"id\": \"LiveChatUserBannedMessageDetails\",\n + \ \"type\": \"object\"\n },\n \"VideoAbuseReportReason\": {\n \"id\": + \"VideoAbuseReportReason\",\n \"description\": \"A `__videoAbuseReportReason__` + resource identifies a reason that a video could be reported as abusive. Video + abuse report reasons are used with `video.ReportAbuse`.\",\n \"properties\": + {\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n + \ \"description\": \"The `snippet` object contains basic details about + the abuse report reason.\"\n },\n \"id\": {\n \"description\": + \"The ID of this abuse report reason.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": + \"youtube#videoAbuseReportReason\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"CommentSnippet\": {\n \"description\": \"Basic details + about a comment, such as its author and text.\",\n \"properties\": {\n + \ \"likeCount\": {\n \"description\": \"The total number of + likes this comment has received.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n },\n \"parentId\": {\n \"type\": \"string\",\n + \ \"description\": \"The unique id of the parent comment, only set + for replies.\"\n },\n \"textDisplay\": {\n \"type\": + \"string\",\n \"description\": \"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.\"\n },\n \"authorChannelUrl\": + {\n \"type\": \"string\",\n \"description\": \"Link to the + author's YouTube channel, if any.\"\n },\n \"authorDisplayName\": + {\n \"description\": \"The name of the user who posted the comment.\",\n + \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"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.\"\n },\n \"videoId\": + {\n \"description\": \"The ID of the video the comment refers to, + if any.\",\n \"type\": \"string\"\n },\n \"publishedAt\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the comment was originally published.\",\n \"format\": + \"date-time\"\n },\n \"textOriginal\": {\n \"description\": + \"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.\",\n \"type\": + \"string\"\n },\n \"authorProfileImageUrl\": {\n \"type\": + \"string\",\n \"description\": \"The URL for the avatar of the user + who posted the comment.\"\n },\n \"moderationStatus\": {\n \"type\": + \"string\",\n \"description\": \"The comment's moderation status. + Will not be set if the comments were requested through the id filter.\",\n + \ \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ],\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ]\n },\n \"authorChannelId\": + {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"viewerRating\": + {\n \"description\": \"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.\",\n \"enum\": [\n + \ \"none\",\n \"like\",\n \"dislike\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The entity is liked.\",\n \"The entity is disliked.\"\n + \ ]\n },\n \"canRate\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether the current viewer can rate this comment.\"\n + \ },\n \"updatedAt\": {\n \"description\": \"The date + and time when the comment was last updated.\",\n \"type\": \"string\",\n + \ \"format\": \"date-time\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"CommentSnippet\"\n },\n \"Entity\": {\n + \ \"type\": \"object\",\n \"id\": \"Entity\",\n \"properties\": + {\n \"id\": {\n \"type\": \"string\"\n },\n \"typeId\": + {\n \"type\": \"string\"\n },\n \"url\": {\n \"type\": + \"string\"\n }\n }\n },\n \"LiveChatNewSponsorDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatNewSponsorDetails\",\n + \ \"properties\": {\n \"isUpgrade\": {\n \"description\": + \"If the viewer just had upgraded from a lower level. For viewers that were + not members at the time of purchase, this field is false.\",\n \"type\": + \"boolean\"\n },\n \"memberLevelName\": {\n \"type\": + \"string\",\n \"description\": \"The name of the Level that the viewer + just had joined. The Level names are defined by the YouTube channel offering + the Membership. In some situations this field isn't filled.\"\n }\n + \ }\n },\n \"VideoAgeGating\": {\n \"id\": \"VideoAgeGating\",\n + \ \"properties\": {\n \"alcoholContent\": {\n \"description\": + \"Indicates whether or not the video has alcoholic beverage content. Only + users of legal purchasing age in a particular country, as identified by ICAP, + can view the content.\",\n \"type\": \"boolean\"\n },\n \"restricted\": + {\n \"description\": \"Age-restricted trailers. For redband trailers + and adult-rated video-games. Only users aged 18+ can view the content. The + the field is true the content is restricted to viewers aged 18+. Otherwise + The field won't be present.\",\n \"type\": \"boolean\"\n },\n + \ \"videoGameRating\": {\n \"description\": \"Video game rating, + if any.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"anyone\",\n \"m15Plus\",\n + \ \"m16Plus\",\n \"m17Plus\"\n ]\n }\n + \ },\n \"type\": \"object\"\n },\n \"IngestionInfo\": {\n \"type\": + \"object\",\n \"id\": \"IngestionInfo\",\n \"properties\": {\n \"rtmpsIngestionAddress\": + {\n \"description\": \"This ingestion url may be used instead of + ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP + streams.\",\n \"type\": \"string\"\n },\n \"backupIngestionAddress\": + {\n \"description\": \"The backup ingestion URL that you should use + to stream video to YouTube. You have the option of simultaneously streaming + the content that you are sending to the ingestionAddress to this URL.\",\n + \ \"type\": \"string\"\n },\n \"streamName\": {\n \"type\": + \"string\",\n \"description\": \"The stream name that YouTube assigns + to the video stream.\"\n },\n \"rtmpsBackupIngestionAddress\": + {\n \"type\": \"string\",\n \"description\": \"This ingestion + url may be used instead of backupIngestionAddress in order to stream via RTMPS. + Not applicable to non-RTMP streams.\"\n },\n \"ingestionAddress\": + {\n \"type\": \"string\",\n \"description\": \"The primary + ingestion URL that you should use to stream video to YouTube. You must stream + video to this URL. Depending on which application or tool you use to encode + your video stream, you may need to enter the stream URL and stream name separately + or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* + \"\n }\n },\n \"description\": \"Describes information necessary + for ingesting an RTMP, HTTP, or SRT stream.\"\n },\n \"LiveChatMessageDeletedDetails\": + {\n \"properties\": {\n \"deletedMessageId\": {\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveChatMessageDeletedDetails\"\n },\n \"ThirdPartyLinkListResponse\": + {\n \"type\": \"object\",\n \"id\": \"ThirdPartyLinkListResponse\",\n + \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"type\": \"array\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\"\n + \ }\n }\n },\n \"MembershipsDuration\": {\n \"properties\": + {\n \"memberTotalDurationMonths\": {\n \"description\": \"The + cumulative time the user has been a member across all levels in complete months + (the time is rounded down to the nearest integer).\",\n \"type\": + \"integer\",\n \"format\": \"int32\"\n },\n \"memberSince\": + {\n \"description\": \"The date and time when the user became a continuous + member across all levels.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"MembershipsDuration\",\n \"type\": \"object\"\n + \ },\n \"ActivityContentDetailsPromotedItem\": {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"clickTrackingUrl\": + {\n \"description\": \"The URL the client should ping to indicate + that the user clicked through on this promoted item.\",\n \"type\": + \"string\"\n },\n \"forecastingUrl\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"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.\",\n \"type\": \"array\"\n },\n \"destinationUrl\": + {\n \"description\": \"The URL the client should direct the user + to, if the user chooses to visit the advertiser's website.\",\n \"type\": + \"string\"\n },\n \"customCtaButtonText\": {\n \"type\": + \"string\",\n \"description\": \"The custom call-to-action button + text. If specified, it will override the default button text for the cta_type.\"\n + \ },\n \"impressionUrl\": {\n \"items\": {\n \"type\": \"string\"\n },\n \"description\": \"The list of impression URLs. The client should ping all of these URLs to indicate that the user was shown this promoted item.\",\n \"type\": \"array\"\n },\n - \ \"customCtaButtonText\": {\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\",\n \"type\": \"string\"\n },\n \"adTag\": - {\n \"description\": \"The URL the client should fetch to request - a promoted item.\",\n \"type\": \"string\"\n },\n \"destinationUrl\": - {\n \"description\": \"The URL the client should direct the user - to, if the user chooses to visit the advertiser's website.\",\n \"type\": - \"string\"\n },\n \"ctaType\": {\n \"description\": + \ \"creativeViewUrl\": {\n \"type\": \"string\",\n \"description\": + \"The URL the client should ping to indicate that the user was shown this + promoted item.\"\n },\n \"descriptionText\": {\n \"description\": + \"The text description to accompany the promoted item.\",\n \"type\": + \"string\"\n },\n \"ctaType\": {\n \"enum\": [\n \"ctaTypeUnspecified\",\n + \ \"visitAdvertiserSite\"\n ],\n \"description\": \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the promoted video.\"\n },\n - \ \"clickTrackingUrl\": {\n \"description\": \"The URL the - client should ping to indicate that the user clicked through on this promoted - item.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ActivityContentDetailsPromotedItem\",\n \"description\": \"Details - about a resource which is being promoted.\",\n \"type\": \"object\"\n - \ },\n \"CommentThreadReplies\": {\n \"type\": \"object\",\n \"properties\": - {\n \"comments\": {\n \"type\": \"array\",\n \"description\": - \"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.\",\n \"items\": {\n \"$ref\": - \"Comment\"\n }\n }\n },\n \"id\": \"CommentThreadReplies\",\n - \ \"description\": \"Comments written in (direct or indirect) reply to - the top level comment.\"\n },\n \"RelatedEntity\": {\n \"type\": - \"object\",\n \"id\": \"RelatedEntity\",\n \"properties\": {\n \"entity\": - {\n \"$ref\": \"Entity\"\n }\n }\n },\n \"VideoProjectDetails\": - {\n \"type\": \"object\",\n \"id\": \"VideoProjectDetails\",\n \"description\": - \"DEPRECATED. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"properties\": {}\n },\n \"Caption\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"default\": \"youtube#caption\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the caption track.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n }\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the caption.\",\n \"$ref\": - \"CaptionSnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A *caption* resource represents a YouTube caption - track. A caption track is associated with exactly one YouTube video.\",\n - \ \"id\": \"Caption\"\n },\n \"MonitorStreamInfo\": {\n \"type\": - \"object\",\n \"id\": \"MonitorStreamInfo\",\n \"properties\": {\n - \ \"enableMonitorStream\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"boolean\",\n \"description\": \"This value - determines whether the monitor stream is enabled for the broadcast. If the - monitor stream is enabled, then YouTube will broadcast the event content on - a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\"\n },\n - \ \"broadcastStreamDelayMs\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"If you have set the enableMonitorStream property to true, then this property - determines the length of the live broadcast delay.\"\n },\n \"embedHtml\": - {\n \"description\": \"HTML code that embeds a player that plays - the monitor stream.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Settings and Info of the monitor stream\"\n },\n - \ \"LiveBroadcastStatistics\": {\n \"type\": \"object\",\n \"id\": - \"LiveBroadcastStatistics\",\n \"properties\": {\n \"totalChatCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The total - number of live chat messages currently on the broadcast. The property and - its value will be present if the broadcast is public, has the live chat feature - enabled, and has at least one message. Note that this field will not be filled - after the broadcast ends. So this property would not identify the number of - chat messages for an archived video of a completed live broadcast.\",\n \"type\": - \"string\"\n },\n \"concurrentViewers\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of viewers currently watching the broadcast. The property and its value - will be present if the broadcast has current viewers and the broadcast owner - has not hidden the viewcount for the video. Note that YouTube stops tracking - the number of concurrent viewers for a broadcast when the broadcast ends. - So, this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\"\n }\n },\n \"description\": - \"Statistics about the live broadcast. These represent a snapshot of the values - at the time of the request. Statistics are only returned for live broadcasts.\"\n - \ },\n \"ThumbnailSetResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThumbnailDetails\"\n },\n \"description\": - \"A list of thumbnails.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"default\": \"youtube#thumbnailSetResponse\"\n }\n },\n - \ \"id\": \"ThumbnailSetResponse\"\n },\n \"CommentSnippet\": {\n - \ \"description\": \"Basic details about a comment, such as its author - and text.\",\n \"id\": \"CommentSnippet\",\n \"properties\": {\n - \ \"authorDisplayName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the user who posted the comment.\"\n },\n \"textDisplay\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"updatedAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the comment was last updated.\",\n \"format\": - \"date-time\"\n },\n \"moderationStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment is - awaiting review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ]\n },\n \"videoId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID of the - video the comment refers to, if any.\"\n },\n \"likeCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The total - number of likes this comment has received.\",\n \"type\": \"integer\"\n - \ },\n \"authorProfileImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL for the avatar of the user who posted - the comment.\"\n },\n \"canRate\": {\n \"description\": - \"Whether the current viewer can rate this comment.\",\n \"type\": - \"boolean\"\n },\n \"parentId\": {\n \"description\": - \"The unique id of the parent comment, only set for replies.\",\n \"type\": - \"string\"\n },\n \"viewerRating\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ]\n - \ },\n \"textOriginal\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"authorChannelId\": {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time when the comment was originally published.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"authorChannelUrl\": - {\n \"type\": \"string\",\n \"description\": \"Link to the - author's YouTube channel, if any.\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"PlaylistLocalization\": - {\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for playlist's title.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for playlist's description.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Playlist - localization setting\",\n \"id\": \"PlaylistLocalization\"\n },\n - \ \"PlaylistItem\": {\n \"description\": \"A *playlistItem* resource - identifies another resource, such as a video, that is included in a playlist. - In addition, the playlistItem resource contains details about the included - resource that pertain specifically to how that resource is used in that playlist. - YouTube uses playlists to identify special collections of videos for a channel, - such as: - uploaded videos - favorite videos - positively rated (liked) videos - - watch history - watch later To be more specific, these lists are associated - with a channel, which is a collection of a person, group, or company's videos, - playlists, and other YouTube information. You can retrieve the playlist IDs - for each of these lists from the channel resource for a given channel. You - can then use the playlistItems.list method to retrieve any of those lists. - You can also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods. For example, if a user gives a positive - rating to a video, you would insert that video into the liked videos playlist - for that user's channel.\",\n \"id\": \"PlaylistItem\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlistItem\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the playlist item.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist item, such as its title and position in the playlist.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"PlaylistItemContentDetails\",\n - \ \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\"\n },\n \"status\": {\n \"$ref\": - \"PlaylistItemStatus\",\n \"description\": \"The status object contains - information about the playlist item's privacy status.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelBrandingSettings\": {\n - \ \"description\": \"Branding properties of a YouTube channel.\",\n \"type\": - \"object\",\n \"properties\": {\n \"channel\": {\n \"$ref\": - \"ChannelSettings\",\n \"description\": \"Branding properties for - the channel view.\"\n },\n \"image\": {\n \"description\": - \"Branding properties for branding images.\",\n \"$ref\": \"ImageSettings\"\n - \ },\n \"watch\": {\n \"$ref\": \"WatchSettings\",\n - \ \"description\": \"Branding properties for the watch page.\"\n },\n - \ \"hints\": {\n \"description\": \"Additional experimental - branding properties.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n }\n }\n },\n - \ \"id\": \"ChannelBrandingSettings\"\n },\n \"Subscription\": {\n - \ \"description\": \"A *subscription* resource contains information about - a YouTube user subscription. A subscription notifies a user when new videos - are added to a channel or when another user takes one of several actions on - YouTube, such as uploading a video, rating a video, or commenting on a video.\",\n - \ \"id\": \"Subscription\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#subscription\\\".\",\n \"default\": - \"youtube#subscription\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the subscription, including its title and the channel that the user - subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains basic statistics about the subscription.\",\n \"$ref\": - \"SubscriptionContentDetails\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"subscriberSnippet\": {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"The subscriberSnippet object contains basic details - about the subscriber.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"Comment\": {\n \"type\": \"object\",\n \"id\": \"Comment\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#comment\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"A *comment* represents - a single YouTube comment.\"\n },\n \"SubscriptionListResponse\": {\n - \ \"id\": \"SubscriptionListResponse\",\n \"properties\": {\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - subscriptions that match the request criteria.\",\n \"items\": {\n - \ \"$ref\": \"Subscription\"\n }\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n + can be taken.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ]\n },\n \"videoId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the promoted video.\",\n \"type\": \"string\"\n },\n \"adTag\": + {\n \"type\": \"string\",\n \"description\": \"The URL the + client should fetch to request a promoted item.\"\n }\n },\n \"description\": + \"Details about a resource which is being promoted.\"\n },\n \"PropertyValue\": + {\n \"properties\": {\n \"value\": {\n \"type\": \"string\",\n + \ \"description\": \"The property's value.\"\n },\n \"property\": + {\n \"description\": \"A property.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"A pair Property / Value.\",\n + \ \"type\": \"object\",\n \"id\": \"PropertyValue\"\n },\n \"ChannelContentDetails\": + {\n \"type\": \"object\",\n \"description\": \"Details about the + content of a channel.\",\n \"id\": \"ChannelContentDetails\",\n \"properties\": + {\n \"relatedPlaylists\": {\n \"type\": \"object\",\n \"properties\": + {\n \"uploads\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use + the videos.insert method to upload new videos and the videos.delete method + to delete previously uploaded videos.\"\n },\n \"watchLater\": + {\n \"type\": \"string\",\n \"description\": \"The + ID of the playlist that contains the channel\\\"s watch later playlist. Use + the playlistItems.insert and playlistItems.delete to add or remove items from + that list.\"\n },\n \"watchHistory\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the playlist that + contains the channel\\\"s watch history. Use the playlistItems.insert and + playlistItems.delete to add or remove items from that list.\"\n },\n + \ \"likes\": {\n \"description\": \"The ID of the playlist + that contains the channel\\\"s liked videos. Use the playlistItems.insert + and playlistItems.delete to add or remove items from that list.\",\n \"type\": + \"string\"\n },\n \"favorites\": {\n \"description\": + \"The ID of the playlist that contains the channel\\\"s favorite videos. Use + the playlistItems.insert and playlistItems.delete to add or remove items from + that list.\",\n \"type\": \"string\"\n }\n }\n + \ }\n }\n },\n \"Playlist\": {\n \"properties\": {\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the playlist, such as its title and description.\",\n + \ \"$ref\": \"PlaylistSnippet\"\n },\n \"etag\": {\n + \ \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"status\": {\n \"description\": + \"The status object contains status information for the playlist.\",\n \"$ref\": + \"PlaylistStatus\"\n },\n \"localizations\": {\n \"additionalProperties\": + {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"description\": + \"Localizations for different languages\",\n \"type\": \"object\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object contains information like video count.\",\n \"$ref\": + \"PlaylistContentDetails\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n + \ \"default\": \"youtube#playlist\",\n \"type\": \"string\"\n + \ },\n \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n + \ \"description\": \"The player object contains information that you + would use to play the playlist in an embedded player.\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the playlist.\",\n \"type\": \"string\"\n }\n },\n \"description\": + \"A *playlist* resource represents a YouTube playlist. A playlist is a collection + of videos that can be viewed sequentially and shared with other users. A playlist + can contain up to 200 videos, and YouTube does not limit the number of playlists + that each user creates. By default, playlists are publicly visible to other + users, but playlists can be public or private. YouTube also uses playlists + to identify special collections of videos for a channel, such as: - uploaded + videos - favorite videos - positively rated (liked) videos - watch history + - watch later To be more specific, these lists are associated with a channel, + which is a collection of a person, group, or company's videos, playlists, + and other YouTube information. You can retrieve the playlist IDs for each + of these lists from the channel resource for a given channel. You can then + use the playlistItems.list method to retrieve any of those lists. You can + also add or remove items from those lists by calling the playlistItems.insert + and playlistItems.delete methods.\",\n \"id\": \"Playlist\",\n \"type\": + \"object\"\n },\n \"I18nLanguageListResponse\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"description\": \"A list of supported + i18n languages. In this map, the i18n language ID is the map key, and its + value is the corresponding i18nLanguage resource.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n + \ }\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n + \ \"default\": \"youtube#i18nLanguageListResponse\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n }\n + \ },\n \"id\": \"I18nLanguageListResponse\"\n },\n \"LiveChatMessageRetractedDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"retractedMessageId\": + {\n \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\"\n + \ },\n \"ActivityContentDetailsSocial\": {\n \"id\": \"ActivityContentDetailsSocial\",\n + \ \"properties\": {\n \"author\": {\n \"description\": + \"The author of the social network post.\",\n \"type\": \"string\"\n + \ },\n \"resourceId\": {\n \"description\": \"The resourceId + object encapsulates information that identifies the resource associated with + a social network post.\",\n \"$ref\": \"ResourceId\"\n },\n + \ \"imageUrl\": {\n \"description\": \"An image of the post's + author.\",\n \"type\": \"string\"\n },\n \"type\": + {\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n + \ \"facebook\",\n \"twitter\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The name of the social network.\"\n },\n \"referenceUrl\": + {\n \"description\": \"The URL of the social network post.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"Details about a social network post.\"\n },\n \"PlaylistListResponse\": + {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#playlistListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlistListResponse\\\".\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"description\": \"A list of playlists that match the + request criteria\",\n \"items\": {\n \"$ref\": \"Playlist\"\n + \ }\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n \ },\n \"prevPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsUpload\": {\n \"id\": - \"ActivityContentDetailsUpload\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the uploaded video.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Information about the - uploaded video.\"\n },\n \"ChannelSectionListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of ChannelSections that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ }\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#channelSectionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n }\n - \ },\n \"id\": \"ChannelSectionListResponse\"\n },\n \"PlaylistStatus\": - {\n \"properties\": {\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The playlist's privacy status.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistStatus\"\n },\n \"PlaylistListResponse\": {\n - \ \"id\": \"PlaylistListResponse\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"default\": \"youtube#playlistListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Playlist\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of playlists that match the request criteria\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"ChannelAuditDetails\": {\n \"id\": \"ChannelAuditDetails\",\n \"properties\": - {\n \"communityGuidelinesGoodStanding\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether or not the channel respects the community - guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the channel has - any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n }\n },\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\",\n \"type\": \"object\"\n },\n - \ \"ChannelProfileDetails\": {\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n },\n \"profileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channels's avatar URL.\"\n },\n - \ \"channelUrl\": {\n \"description\": \"The channel's URL.\",\n - \ \"type\": \"string\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelProfileDetails\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"PlaylistListResponse\"\n \ },\n \"VideoFileDetailsVideoStream\": {\n \"properties\": {\n - \ \"heightPixels\": {\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's height in pixels.\",\n \"type\": \"integer\"\n - \ },\n \"codec\": {\n \"description\": \"The video codec - that the stream uses.\",\n \"type\": \"string\"\n },\n \"widthPixels\": - {\n \"description\": \"The encoded video content's width in pixels. - You can calculate the video's encoding aspect ratio as width_pixels / height_pixels.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n + \ \"rotation\": {\n \"enum\": [\n \"none\",\n \"clockwise\",\n + \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n + \ ],\n \"description\": \"The amount that YouTube needs to + rotate the original source content to properly display the video.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n \ \"vendor\": {\n \"type\": \"string\",\n \"description\": \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"bitrateBps\": {\n \"format\": + a four-letter vendor code.\"\n },\n \"codec\": {\n \"type\": + \"string\",\n \"description\": \"The video codec that the stream + uses.\"\n },\n \"frameRateFps\": {\n \"description\": + \"The video stream's frame rate, in frames per second.\",\n \"type\": + \"number\",\n \"format\": \"double\"\n },\n \"heightPixels\": + {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The encoded video content's height in pixels.\"\n },\n \"widthPixels\": + {\n \"type\": \"integer\",\n \"description\": \"The encoded + video content's width in pixels. You can calculate the video's encoding aspect + ratio as width_pixels / height_pixels.\",\n \"format\": \"uint32\"\n + \ },\n \"bitrateBps\": {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": \"The video stream's bitrate, in bits - per second.\",\n \"type\": \"string\"\n },\n \"aspectRatio\": - {\n \"description\": \"The video content's display aspect ratio, - which specifies the aspect ratio in which the video should be displayed.\",\n - \ \"format\": \"double\",\n \"type\": \"number\"\n },\n - \ \"rotation\": {\n \"description\": \"The amount that YouTube - needs to rotate the original source content to properly display the video.\",\n - \ \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"frameRateFps\": {\n \"type\": \"number\",\n - \ \"description\": \"The video stream's frame rate, in frames per - second.\",\n \"format\": \"double\"\n }\n },\n \"description\": - \"Information about a video stream.\",\n \"type\": \"object\",\n \"id\": - \"VideoFileDetailsVideoStream\"\n },\n \"ChannelSettings\": {\n \"description\": - \"Branding properties for the channel view.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"profileColor\": {\n \"description\": - \"A prominent color that can be rendered on this channel page.\",\n \"type\": - \"string\"\n },\n \"moderateComments\": {\n \"description\": - \"Whether user-submitted comments left on the channel page need to be approved - by the channel owner to be publicly visible.\",\n \"type\": \"boolean\"\n - \ },\n \"featuredChannelsUrls\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"description\": - \"The list of featured channels.\",\n \"type\": \"array\"\n },\n - \ \"trackingAnalyticsAccountId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\"\n },\n \"showBrowseView\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the tab to browse the videos should be displayed.\"\n },\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"defaultTab\": - {\n \"description\": \"Which content tab users should see when viewing - the channel.\",\n \"type\": \"string\"\n },\n \"unsubscribedTrailer\": - {\n \"type\": \"string\",\n \"description\": \"The trailer - of the channel, for users that are not subscribers.\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"Specifies the channel title.\",\n \"type\": \"string\"\n },\n - \ \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"keywords\": {\n \"type\": - \"string\",\n \"description\": \"Lists keywords associated with the - channel, comma-separated.\"\n },\n \"defaultLanguage\": {\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the channel description.\"\n - \ }\n },\n \"id\": \"ChannelSettings\"\n },\n \"PageInfo\": - {\n \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\",\n \"type\": \"object\",\n \"properties\": {\n \"totalResults\": - {\n \"description\": \"The total number of results in the result - set.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ },\n \"resultsPerPage\": {\n \"format\": \"int32\",\n - \ \"description\": \"The number of results included in the API response.\",\n - \ \"type\": \"integer\"\n }\n },\n \"id\": \"PageInfo\"\n - \ },\n \"ChannelListResponse\": {\n \"id\": \"ChannelListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#channelListResponse\",\n + per second.\"\n },\n \"aspectRatio\": {\n \"description\": + \"The video content's display aspect ratio, which specifies the aspect ratio + in which the video should be displayed.\",\n \"type\": \"number\",\n + \ \"format\": \"double\"\n }\n },\n \"type\": \"object\",\n + \ \"description\": \"Information about a video stream.\",\n \"id\": + \"VideoFileDetailsVideoStream\"\n },\n \"LiveChatMessageListResponse\": + {\n \"properties\": {\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n },\n + \ \"type\": \"array\"\n },\n \"pollingIntervalMillis\": + {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The amount of time the client should wait before polling again.\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveChatMessageListResponse\",\n \"type\": \"string\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Channel\"\n }\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatModeratorSnippet\": {\n \"properties\": {\n \"moderatorDetails\": - {\n \"description\": \"Details about the moderator.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"liveChatId\": {\n \"description\": - \"The ID of the live chat this moderator can act on.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatModeratorSnippet\"\n },\n \"ChannelContentOwnerDetails\": - {\n \"properties\": {\n \"contentOwner\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the content owner linked - to the channel.\"\n },\n \"timeLinked\": {\n \"description\": - \"The date and time when the channel was linked to the content owner.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelContentOwnerDetails\",\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\"\n },\n - \ \"ChannelConversionPing\": {\n \"type\": \"object\",\n \"description\": - \"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.\",\n \"properties\": {\n \"context\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"Defines the context of the ping.\",\n \"type\": - \"string\",\n \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ]\n },\n \"conversionUrl\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelConversionPing\"\n },\n \"I18nRegionSnippet\": - {\n \"properties\": {\n \"name\": {\n \"description\": - \"The human-readable name of the region.\",\n \"type\": \"string\"\n - \ },\n \"gl\": {\n \"type\": \"string\",\n \"description\": - \"The region code as a 2-letter ISO country code.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"I18nRegionSnippet\",\n \"description\": - \"Basic details about an i18n region, such as region code and human-readable - name.\"\n },\n \"ResourceId\": {\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"The type - of the API resource.\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a playlist. This property - is only present if the resourceId.kind value is youtube#playlist.\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a channel. - This property is only present if the resourceId.kind value is youtube#channel.\",\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a video. This property - is only present if the resourceId.kind value is youtube#video.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A resource - id is a generic reference that points to another YouTube resource.\",\n \"id\": - \"ResourceId\"\n },\n \"VideoRating\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"rating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"description\": - \"Rating of a video.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about rating of a video.\",\n \"id\": \"VideoRating\"\n - \ },\n \"LiveChatSuperStickerDetails\": {\n \"properties\": {\n - \ \"tier\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\"\n },\n - \ \"superStickerMetadata\": {\n \"description\": \"Information - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"currency\": {\n \"type\": - \"string\",\n \"description\": \"The currency in which the purchase - was made.\"\n },\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n }\n - \ },\n \"id\": \"LiveChatSuperStickerDetails\",\n \"type\": - \"object\"\n },\n \"CommentSnippetAuthorChannelId\": {\n \"description\": - \"The id of the author's YouTube channel, if any.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"CommentSnippetAuthorChannelId\"\n },\n - \ \"VideoLiveStreamingDetails\": {\n \"properties\": {\n \"actualEndTime\": - {\n \"description\": \"The time that the broadcast actually ended. - This value will not be available until the broadcast is over.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"activeLiveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the currently active live chat attached to this video. This field is filled - only if the video is a currently live broadcast that has live chat. Once the - broadcast transitions to complete this field will be removed and the live - chat closed down. For persistent broadcasts that live chat id will no longer - be tied to this video but rather to the new video being displayed at the persistent - page.\"\n },\n \"scheduledStartTime\": {\n \"description\": - \"The time that the broadcast is scheduled to begin.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"actualStartTime\": - {\n \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"scheduledEndTime\": - {\n \"description\": \"The time that the broadcast is scheduled to - end. If the value is empty or the property is not present, then the broadcast - is scheduled to contiue indefinitely.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"concurrentViewers\": - {\n \"type\": \"string\",\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"format\": \"uint64\"\n - \ }\n },\n \"description\": \"Details about the live streaming - metadata.\",\n \"type\": \"object\",\n \"id\": \"VideoLiveStreamingDetails\"\n - \ },\n \"ActivityContentDetailsFavorite\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsFavorite\",\n \"properties\": {\n - \ \"resourceId\": {\n \"description\": \"The resourceId object - contains information that identifies the resource that was marked as a favorite.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"description\": - \"Information about a video that was marked as a favorite video.\"\n },\n - \ \"Thumbnail\": {\n \"type\": \"object\",\n \"id\": \"Thumbnail\",\n - \ \"properties\": {\n \"height\": {\n \"description\": - \"(Optional) Height of the thumbnail image.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"url\": {\n \"type\": - \"string\",\n \"description\": \"The thumbnail image's URL.\"\n },\n - \ \"width\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"(Optional) Width of the thumbnail - image.\"\n }\n },\n \"description\": \"A thumbnail is an - image representing a YouTube resource.\"\n },\n \"InvideoTiming\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"durationMs\": - {\n \"type\": \"string\",\n \"description\": \"Defines the - duration in milliseconds for which the promotion should be displayed. If missing, - the client should use the default.\",\n \"format\": \"uint64\"\n - \ },\n \"type\": {\n \"description\": \"Describes a - timing type. If the value is offsetFromStart, then the offsetMs field represents - an offset from the start of the video. If the value is offsetFromEnd, then - the offsetMs field represents an offset from the end of the video.\",\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"offsetMs\": {\n \"format\": - \"uint64\",\n \"description\": \"Defines the time at which the promotion - will appear. Depending on the value of type the value of the offsetMs field - will represent a time offset from the start or from the end of the video, - expressed in milliseconds.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"InvideoTiming\",\n \"description\": \"Describes - a temporal position of a visual widget inside a video.\"\n },\n \"LiveStream\": - {\n \"description\": \"A live stream describes a live ingestion point.\",\n - \ \"id\": \"LiveStream\",\n \"type\": \"object\",\n \"properties\": - {\n \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n \"description\": - \"The status object contains information about live stream's status.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n },\n - \ \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the stream.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the stream, including its channel, title, and description.\",\n \"$ref\": - \"LiveStreamSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStream\"\n - \ },\n \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"properties\": {\n \"gifterChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the user that made the - membership gifting purchase. This matches the `snippet.authorChannelId` of - the associated membership gifting message.\"\n },\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"SearchResult\": + the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n + \ \"offlineAt\": {\n \"type\": \"string\",\n \"description\": + \"The date and time when the underlying stream went offline.\",\n \"format\": + \"date-time\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveChatMessageListResponse\"\n },\n \"LiveChatBanSnippet\": {\n \"properties\": + {\n \"type\": {\n \"type\": \"string\",\n \"enum\": + [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n + \ \"temporary\"\n ],\n \"enumDescriptions\": [\n + \ \"An invalid ban type.\",\n \"A permanent ban.\",\n + \ \"A temporary ban.\"\n ],\n \"description\": + \"The type of ban.\"\n },\n \"liveChatId\": {\n \"type\": + \"string\",\n \"description\": \"The chat this ban is pertinent to.\"\n + \ },\n \"banDurationSeconds\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The duration + of a ban, only filled if the ban has type TEMPORARY.\"\n },\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveChatBanSnippet\"\n },\n \"ChannelSection\": {\n \"properties\": {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about a search result, such as its title or description. For - example, if the search result is a video, then the title will be the video's - title and the description will be the video's description.\",\n \"$ref\": - \"SearchResultSnippet\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n \"default\": - \"youtube#searchResult\"\n },\n \"id\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The id object contains information - that can be used to uniquely identify the resource that matches the search - request.\"\n }\n },\n \"id\": \"SearchResult\",\n \"type\": - \"object\",\n \"description\": \"A search result contains information - about a YouTube video, channel, or playlist that matches the search parameters - specified in an API request. While a search result points to a uniquely identifiable - resource, like a video, it does not have its own persistent data.\"\n },\n - \ \"VideoFileDetails\": {\n \"description\": \"Describes original video - file properties, including technical details about audio and video streams, - but also metadata information like content length, digitization time, or geotagging - information.\",\n \"properties\": {\n \"creationTime\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the uploaded - video file was created. The value is specified in ISO 8601 format. Currently, - the following ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive - time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \"\n },\n \"audioStreams\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"description\": \"A list of audio streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about an audio stream.\"\n },\n \"fileSize\": {\n \"format\": - \"uint64\",\n \"description\": \"The uploaded file's size in bytes. - This field is present whether a video file or another type of file was uploaded.\",\n - \ \"type\": \"string\"\n },\n \"container\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded video file's container - format.\"\n },\n \"durationMs\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The length of the uploaded video in milliseconds.\",\n - \ \"type\": \"string\"\n },\n \"videoStreams\": {\n - \ \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of video streams contained in the uploaded video file. Each item in the - list contains detailed metadata about a video stream.\"\n },\n \"fileType\": - {\n \"description\": \"The uploaded file's type as detected by YouTube's - video processing engine. Currently, YouTube only processes video files, but - this field is present whether a video file or another type of file was uploaded.\",\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"enumDescriptions\": [\n \"Known - video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an - MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"type\": \"string\"\n },\n \"fileName\": {\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\",\n \"type\": \"string\"\n },\n - \ \"bitrateBps\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\",\n \"format\": \"uint64\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoFileDetails\"\n },\n \"ContentRating\": - {\n \"description\": \"Ratings schemes. The country-specific ratings - are mostly for movies and shows. LINT.IfChange\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"mcstRating\": {\n \"enum\": [\n - \ \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating system for Vietnam - MCST\"\n },\n \"kijkwijzerRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n + \ \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n + \ \"description\": \"The targeting object contains basic targeting + settings about the channel section.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n + \ \"default\": \"youtube#channelSection\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the channel section, such as its type, style and title.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel section.\"\n },\n \"localizations\": + {\n \"additionalProperties\": {\n \"$ref\": \"ChannelSectionLocalization\"\n + \ },\n \"type\": \"object\",\n \"description\": + \"Localizations for different languages\"\n },\n \"contentDetails\": + {\n \"$ref\": \"ChannelSectionContentDetails\",\n \"description\": + \"The contentDetails object contains details about the channel section content, + such as a list of playlists or channels featured in the section.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"ChannelSection\"\n + \ },\n \"VideoAbuseReport\": {\n \"type\": \"object\",\n \"id\": + \"VideoAbuseReport\",\n \"properties\": {\n \"reasonId\": {\n + \ \"type\": \"string\",\n \"description\": \"The high-level, + or primary, reason that the content is abusive. The value is an abuse report + reason ID.\"\n },\n \"comments\": {\n \"description\": + \"Additional comments regarding the abuse report.\",\n \"type\": + \"string\"\n },\n \"language\": {\n \"description\": + \"The language that the content was viewed in.\",\n \"type\": \"string\"\n + \ },\n \"secondaryReasonId\": {\n \"description\": \"The + specific, or secondary, reason that this content is abusive (if available). + The value is an abuse report reason ID that is a valid secondary reason for + the primary reason.\",\n \"type\": \"string\"\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the video.\"\n }\n }\n },\n + \ \"ResourceId\": {\n \"properties\": {\n \"channelId\": {\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the referred resource, if that resource is a channel. This property is only + present if the resourceId.kind value is youtube#channel.\",\n \"type\": + \"string\"\n },\n \"playlistId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the referred resource, if that resource is a playlist. This property is only + present if the resourceId.kind value is youtube#playlist.\"\n },\n + \ \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a video. This property is only present if the resourceId.kind + value is youtube#video.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"The type of the API resource.\"\n + \ }\n },\n \"description\": \"A resource id is a generic reference + that points to another YouTube resource.\",\n \"id\": \"ResourceId\",\n + \ \"type\": \"object\"\n },\n \"LiveStreamSnippet\": {\n \"properties\": + {\n \"description\": {\n \"description\": \"The stream's description. + The value cannot be longer than 10000 characters.\",\n \"type\": + \"string\"\n },\n \"isDefaultStream\": {\n \"type\": + \"boolean\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel that is transmitting the stream.\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The stream's + title. The value must be between 1 and 128 characters long.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n }\n + \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time that the stream was created.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LiveStreamSnippet\"\n },\n \"VideoProcessingDetails\": + {\n \"type\": \"object\",\n \"description\": \"Describes processing + status and progress and availability of some other Video resource parts.\",\n + \ \"id\": \"VideoProcessingDetails\",\n \"properties\": {\n \"thumbnailsAvailability\": + {\n \"description\": \"This value indicates whether thumbnail images + have been generated for the video.\",\n \"type\": \"string\"\n },\n + \ \"editorSuggestionsAvailability\": {\n \"description\": \"This + value indicates whether video editing suggestions, which might improve video + quality or the playback experience, are available for the video. You can retrieve + these suggestions by requesting the suggestions part in your videos.list() + request.\",\n \"type\": \"string\"\n },\n \"processingFailureReason\": + {\n \"type\": \"string\",\n \"enum\": [\n \"uploadFailed\",\n + \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n + \ ],\n \"description\": \"The reason that YouTube failed + to process the video. This property will only have a value if the processingStatus + property's value is failed.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"tagSuggestionsAvailability\": {\n \"description\": \"This + value indicates whether keyword (tag) suggestions are available for the video. + Tags can be added to a video's metadata to make it easier for other users + to find the video. You can retrieve these suggestions by requesting the suggestions + part in your videos.list() request.\",\n \"type\": \"string\"\n },\n + \ \"processingStatus\": {\n \"description\": \"The video's + processing status. This value indicates whether YouTube was able to process + the video or if the video is still being processed.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"processing\",\n + \ \"succeeded\",\n \"failed\",\n \"terminated\"\n + \ ]\n },\n \"fileDetailsAvailability\": {\n \"description\": + \"This value indicates whether file details are available for the uploaded + video. You can retrieve a video's file details by requesting the fileDetails + part in your videos.list() request.\",\n \"type\": \"string\"\n },\n + \ \"processingIssuesAvailability\": {\n \"type\": \"string\",\n + \ \"description\": \"This value indicates whether the video processing + engine has generated suggestions that might improve YouTube's ability to process + the the video, warnings that explain video processing problems, or errors + that cause video processing problems. You can retrieve these suggestions by + requesting the suggestions part in your videos.list() request.\"\n },\n + \ \"processingProgress\": {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n + \ \"description\": \"The processingProgress object contains information + about the progress YouTube has made in processing the video. The values are + really only relevant if the video's processing status is processing.\"\n }\n + \ }\n },\n \"Caption\": {\n \"id\": \"Caption\",\n \"description\": + \"A *caption* resource represents a YouTube caption track. A caption track + is associated with exactly one YouTube video.\",\n \"properties\": {\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n + \ \"default\": \"youtube#caption\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube uses to + uniquely identify the caption track.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.update\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"LiveChatSuperChatDetails\": {\n + \ \"id\": \"LiveChatSuperChatDetails\",\n \"properties\": {\n \"amountDisplayString\": + {\n \"description\": \"A rendered string that displays the fund amount + and currency to the user.\",\n \"type\": \"string\"\n },\n + \ \"userComment\": {\n \"type\": \"string\",\n \"description\": + \"The comment added by the user to this Super Chat event.\"\n },\n + \ \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the purchase was made.\"\n },\n \"tier\": + {\n \"description\": \"The tier in which the amount belongs. Lower + amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"amountMicros\": + {\n \"type\": \"string\",\n \"description\": \"The amount + purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": + \"uint64\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoLocalization\": + {\n \"properties\": {\n \"title\": {\n \"description\": + \"Localized version of the video's title.\",\n \"type\": \"string\"\n + \ },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"Localized version of the video's description.\"\n + \ }\n },\n \"description\": \"Localized versions of certain + video properties (e.g. title).\",\n \"type\": \"object\",\n \"id\": + \"VideoLocalization\"\n },\n \"ChannelStatus\": {\n \"description\": + \"JSON template for the status part of a channel.\",\n \"id\": \"ChannelStatus\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n },\n \"isLinked\": {\n + \ \"description\": \"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.\",\n \"type\": \"boolean\"\n },\n \"privacyStatus\": + {\n \"type\": \"string\",\n \"description\": \"Privacy status + of the channel.\",\n \"enumDescriptions\": [\n \"\",\n \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n \"kijkwijzer6\",\n - \ \"kijkwijzer9\",\n \"kijkwijzer12\",\n \"kijkwijzer16\",\n - \ \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n ],\n - \ \"description\": \"The video's NICAM/Kijkwijzer rating from the - Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\",\n - \ \"type\": \"string\"\n },\n \"mtrcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ]\n },\n \"cccRating\": - {\n \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n - \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"type\": \"string\"\n },\n \"mpaaRating\": {\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enum\": - [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n - \ \"! X\",\n \"\"\n ]\n },\n \"djctqRatingReasons\": - {\n \"items\": {\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ]\n },\n \"type\": - \"array\",\n \"description\": \"Reasons that explain why the video - received its DJCQT (Brazil) rating.\"\n },\n \"ilfilmRating\": - {\n \"description\": \"The video's rating in Israel.\",\n \"type\": - \"string\",\n \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"fpbRatingReasons\": {\n \"items\": {\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ]\n },\n \"type\": \"array\",\n \"description\": - \"Reasons that explain why the video received its FPB (South Africa) rating.\"\n - \ },\n \"kmrbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ],\n \"description\": \"The video's Korea Media Rating - Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. The KMRB - rates videos in South Korea.\",\n \"type\": \"string\"\n },\n - \ \"mocRating\": {\n \"description\": \"The video's Ministerio - de Cultura (Colombia) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ]\n },\n \"mccaaRating\": {\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"type\": - \"string\",\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n - \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n - \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n - \ \"mccaa18\",\n \"mccaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ]\n },\n - \ \"bmukkRating\": {\n \"description\": \"The video's rating - from the Austrian Board of Media Classification (Bundesministerium f\xFCr - Unterricht, Kunst und Kultur).\",\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ]\n - \ },\n \"smsaRating\": {\n \"enum\": [\n \"smsaUnspecified\",\n - \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n - \ \"smsa15\",\n \"smsaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"type\": \"string\"\n },\n \"lsfRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n - \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n - \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"description\": \"The video's rating from Indonesia's - Lembaga Sensor Film.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"SU\",\n \"A\",\n \"BO\",\n \"13\",\n - \ \"R\",\n \"17\",\n \"D\",\n \"21\",\n - \ \"\"\n ]\n },\n \"fpbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\"\n },\n - \ \"egfilmRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Egypt.\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ]\n },\n \"oflcRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"oflcUnspecified\",\n - \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n - \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n - \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n - \ \"oflcRp16\",\n \"oflcRp18\"\n ],\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ]\n },\n \"bbfcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ],\n - \ \"description\": \"The video's British Board of Film Classification - (BBFC) rating.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ]\n },\n \"ecbmctRating\": {\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Rating system in Turkey - Evaluation and Classification - Board of the Ministry of Culture and Tourism\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ]\n },\n \"mccypRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ],\n \"description\": \"The - video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"type\": \"string\"\n - \ },\n \"chfilmRating\": {\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Switzerland.\"\n },\n \"cceRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"4\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\",\n \"14\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Portugal's Comiss\xE3o - de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ]\n },\n \"mpaatRating\": - {\n \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GB\",\n \"RB\"\n ],\n - \ \"description\": \"The rating system for trailer, DVD, and Ad in - the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n - \ },\n \"incaaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"enum\": [\n - \ \"incaaUnspecified\",\n \"incaaAtp\",\n \"incaaSam13\",\n - \ \"incaaSam16\",\n \"incaaSam18\",\n \"incaaC\",\n - \ \"incaaUnrated\"\n ],\n \"description\": \"The - video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\",\n \"type\": \"string\"\n },\n \"cicfRating\": - {\n \"description\": \"The video's rating from the Commission de - Contr\xF4le des Films (Belgium).\",\n \"type\": \"string\",\n \"enum\": - [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ]\n },\n \"medietilsynetRating\": - {\n \"description\": \"The video's rating from Medietilsynet, the - Norwegian Media Authority.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ]\n - \ },\n \"nkclvRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n - \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n - \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n - \ \"description\": \"The video's rating from the Nacion\xE3lais Kino - centrs (National Film Centre of Latvia).\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"catvfrRating\": {\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ],\n \"description\": \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"cnaRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AP\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"18+\",\n \"\"\n ],\n \"description\": - \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\",\n \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ]\n },\n \"csaRating\": - {\n \"description\": \"The video's rating from France's Conseil sup\xE9rieur - de l\u2019audiovisuel, which rates broadcast content.\",\n \"enum\": - [\n \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n - \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n - \ \"csaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ]\n },\n - \ \"eirinRating\": {\n \"description\": \"The video's Eirin - (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ]\n },\n \"kfcbRating\": - {\n \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n - \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n - \ \"kfcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"type\": - \"string\"\n },\n \"ifcoRating\": {\n \"enum\": [\n - \ \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Irish Film Classification Office - (IFCO - Ireland) rating. See the IFCO website for more information.\"\n },\n - \ \"resorteviolenciaRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ],\n \"description\": - \"The video's rating in Venezuela.\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ]\n },\n \"rcnofRating\": {\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\",\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"russiaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"description\": \"The video's National Film Registry - of the Russian Federation (MKRF - Russia) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"mekuRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ],\n \"description\": \"The video's rating from Finland's - Kansallinen Audiovisuaalinen Instituutti (National Audiovisual Institute).\"\n - \ },\n \"rteRating\": {\n \"description\": \"The video's - rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"enum\": [\n - \ \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"icaaRating\": - {\n \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales - (ICAA - Spain) rating.\"\n },\n \"eefilmRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating in Estonia.\",\n - \ \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n - \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n - \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n - \ \"eefilmK16\",\n \"eefilmUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ]\n },\n \"czfilmRating\": {\n \"enum\": - [\n \"czfilmUnspecified\",\n \"czfilmU\",\n \"czfilm12\",\n - \ \"czfilm14\",\n \"czfilm18\",\n \"czfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in the Czech - Republic.\",\n \"type\": \"string\"\n },\n \"djctqRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"public\",\n \"unlisted\",\n \"private\"\n + \ ]\n },\n \"longUploadsStatus\": {\n \"description\": + \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 + for more information.\",\n \"enum\": [\n \"longUploadsUnspecified\",\n + \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"madeForKids\": {\n \"type\": \"boolean\"\n + \ }\n }\n },\n \"CommentThreadReplies\": {\n \"properties\": + {\n \"comments\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Comment\"\n },\n \"description\": + \"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.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"CommentThreadReplies\",\n \"description\": \"Comments + written in (direct or indirect) reply to the top level comment.\"\n },\n + \ \"ChannelStatistics\": {\n \"id\": \"ChannelStatistics\",\n \"type\": + \"object\",\n \"description\": \"Statistics about a channel: number of + subscribers, number of videos in the channel, etc.\",\n \"properties\": + {\n \"videoCount\": {\n \"description\": \"The number of videos + uploaded to the channel.\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n },\n \"hiddenSubscriberCount\": {\n \"description\": + \"Whether or not the number of subscribers is shown for this user.\",\n \"type\": + \"boolean\"\n },\n \"commentCount\": {\n \"description\": + \"The number of comments for the channel.\",\n \"format\": \"uint64\",\n + \ \"type\": \"string\"\n },\n \"viewCount\": {\n \"format\": + \"uint64\",\n \"description\": \"The number of times the channel + has been viewed.\",\n \"type\": \"string\"\n },\n \"subscriberCount\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of subscribers that the channel has.\"\n }\n }\n + \ },\n \"I18nRegionSnippet\": {\n \"description\": \"Basic details + about an i18n region, such as region code and human-readable name.\",\n \"id\": + \"I18nRegionSnippet\",\n \"type\": \"object\",\n \"properties\": + {\n \"gl\": {\n \"description\": \"The region code as a 2-letter + ISO country code.\",\n \"type\": \"string\"\n },\n \"name\": + {\n \"type\": \"string\",\n \"description\": \"The human-readable + name of the region.\"\n }\n }\n },\n \"LevelDetails\": {\n + \ \"properties\": {\n \"displayName\": {\n \"type\": \"string\",\n + \ \"description\": \"The name that should be used when referring to + this level.\"\n }\n },\n \"id\": \"LevelDetails\",\n \"type\": + \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": {\n + \ \"description\": \"Video processing progress and completion time estimate.\",\n + \ \"properties\": {\n \"partsTotal\": {\n \"format\": + \"uint64\",\n \"description\": \"An estimate of the total number + of parts that need to be processed for the video. The number may be updated + with more precise estimates while YouTube processes the video.\",\n \"type\": + \"string\"\n },\n \"timeLeftMs\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"An estimate + of the amount of time, in millseconds, that YouTube needs to finish processing + the video.\"\n },\n \"partsProcessed\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of parts of the video that YouTube has already processed. You + can estimate the percentage of the video that YouTube has already processed + by calculating: 100 * parts_processed / parts_total Note that since the estimated + number of parts could increase without a corresponding increase in the number + of parts that have already been processed, it is possible that the calculated + progress could periodically decrease while YouTube processes a video.\"\n + \ }\n },\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n + \ \"type\": \"object\"\n },\n \"InvideoBranding\": {\n \"id\": + \"InvideoBranding\",\n \"description\": \"LINT.IfChange Describes an + invideo branding.\",\n \"type\": \"object\",\n \"properties\": {\n + \ \"targetChannelId\": {\n \"description\": \"The channel to + which this branding links. If not present it defaults to the current channel.\",\n + \ \"type\": \"string\"\n },\n \"imageBytes\": {\n \"description\": + \"The bytes the uploaded image. Only used in api to youtube communication.\",\n + \ \"format\": \"byte\",\n \"type\": \"string\"\n },\n + \ \"imageUrl\": {\n \"description\": \"The url of the uploaded + image. Only used in apiary to api communication.\",\n \"type\": \"string\"\n + \ },\n \"timing\": {\n \"description\": \"The temporal + position within the video where watermark will be displayed.\",\n \"$ref\": + \"InvideoTiming\"\n },\n \"position\": {\n \"description\": + \"The spatial position within the video where the branding watermark will + be displayed.\",\n \"$ref\": \"InvideoPosition\"\n }\n }\n + \ },\n \"LiveChatMessageSnippet\": {\n \"id\": \"LiveChatMessageSnippet\",\n + \ \"type\": \"object\",\n \"description\": \"Next ID: 33\",\n \"properties\": + {\n \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n + \ },\n \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n + \ \"description\": \"Details about the Super Chat event, this is only + set if the type is 'superChatEvent'.\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the message was orignally + published.\"\n },\n \"superStickerDetails\": {\n \"description\": + \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n + \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"memberMilestoneChatDetails\": + {\n \"description\": \"Details about the Member Milestone Chat event, + this is only set if the type is 'memberMilestoneChatEvent'.\",\n \"$ref\": + \"LiveChatMemberMilestoneChatDetails\"\n },\n \"giftMembershipReceivedDetails\": + {\n \"description\": \"Details about the Gift Membership Received + event, this is only set if the type is 'giftMembershipReceivedEvent'.\",\n + \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n + \ \"type\": {\n \"type\": \"string\",\n \"enum\": + [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n + \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n + \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n + \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n + \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n + \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n + \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n + \ \"description\": \"The type of message, this will always be present, + it determines the contents of the message as well as which fields will be + present.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n - \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n - \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n - \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n - \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n - \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n - \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n - \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\"\n },\n \"smaisRating\": - {\n \"description\": \"The video's rating in Iceland.\",\n \"enum\": - [\n \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n - \ \"smais12\",\n \"smais14\",\n \"smais16\",\n - \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"cbfcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\"\n - \ },\n \"cscfRating\": {\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AL\",\n \"A\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"fcbmRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"fcbmUnspecified\",\n - \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n - \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n - \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n - \ ],\n \"description\": \"The video's rating from Malaysia's - Film Censorship Board.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG13\",\n \"P13\",\n \"18\",\n - \ \"18SX\",\n \"18PA\",\n \"18SG\",\n \"18PL\",\n - \ \"\"\n ]\n },\n \"chvrsRating\": {\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\"\n },\n - \ \"tvpgRating\": {\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"description\": \"The - video's TV Parental Guidelines (TVPG) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"fcoRating\": {\n \"enum\": [\n \"fcoUnspecified\",\n - \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n - \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Hong Kong's Office for Film, Newspaper and Article - Administration.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"I\",\n \"IIA\",\n \"IIB\",\n \"II\",\n - \ \"III\",\n \"\"\n ]\n },\n \"fmocRating\": - {\n \"description\": \"This property has been deprecated. Use the - contentDetails.contentRating.cncRating instead.\",\n \"enum\": [\n - \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ]\n },\n \"ytRating\": - {\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\"\n },\n - \ \"nbcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\"\n - \ },\n \"menaMpaaRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To - keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n - \ \"enum\": [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n - \ \"menaMpaaPg\",\n \"menaMpaaPg13\",\n \"menaMpaaR\",\n - \ \"menaMpaaUnrated\"\n ],\n \"description\": - \"The rating system for MENA countries, a clone of MPAA. It is needed to prevent - titles go live w/o additional QC check, since some of them can be inappropriate - for the countries at all. See b/33408548 for more details.\"\n },\n - \ \"nbcplRating\": {\n \"description\": \"The video's rating - in Poland.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ]\n },\n \"fskRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"FSK 0\",\n \"FSK 6\",\n \"FSK 12\",\n - \ \"FSK 16\",\n \"FSK 18\",\n \"\"\n ],\n - \ \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"description\": \"The - video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.\"\n - \ },\n \"pefilmRating\": {\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"description\": - \"The video's rating in Peru.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"agcomRating\": {\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Italy's Autorit\xE0 per - le Garanzie nelle Comunicazioni (AGCOM).\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ]\n },\n \"grfilmRating\": {\n \"description\": - \"The video's rating in Greece.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ],\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ]\n },\n - \ \"catvRating\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"enum\": - [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"C\",\n - \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n - \ \"18+\",\n \"\",\n \"\"\n ]\n },\n - \ \"skfilmRating\": {\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Slovakia.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"nfrcRating\": {\n \"enum\": [\n \"nfrcUnspecified\",\n - \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n - \ \"nfrcX\",\n \"nfrcUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Bulgarian National Film Center.\"\n },\n \"mibacRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from the Ministero dei Beni e delle Attivit\xE0 Culturali e del Turismo - (Italy).\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n - \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n - \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n - \ ]\n },\n \"anatelRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n - \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n - \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n - \ \"anatelUnrated\"\n ],\n \"description\": \"The - video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean - television.\",\n \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ]\n },\n - \ \"nfvcbRating\": {\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Nigeria's National Film and Video Censors Board.\",\n \"type\": - \"string\"\n },\n \"bfvcRating\": {\n \"enum\": [\n - \ \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Thailand's Board of Film - and Video Censors.\",\n \"type\": \"string\"\n },\n \"acbRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"Programs that have been given a P classification - by the Australian Communications and Media Authority. These programs are intended - for preschool children.\",\n \"Programs that have been given a - C classification by the Australian Communications and Media Authority. These - programs are intended for children (other than preschool children) who are - younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"description\": \"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.\"\n },\n \"cncRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ],\n - \ \"description\": \"Rating system in France - Commission de classification - cinematographique\"\n },\n \"mdaRating\": {\n \"enum\": - [\n \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n - \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n - \ \"mdaR21\",\n \"mdaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\"\n },\n \"moctwRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"moctwUnspecified\",\n - \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n - \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n - \ \"moctwR15\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ],\n \"description\": \"The video's rating from Taiwan's - Ministry of Culture (\u6587\u5316\u90E8).\"\n },\n \"nmcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\"\n - \ },\n \"rtcRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"description\": \"The video's General Directorate - of Radio, Television and Cinematography (Mexico) rating.\"\n }\n },\n - \ \"id\": \"ContentRating\"\n },\n \"PlaylistContentDetails\": {\n - \ \"properties\": {\n \"itemCount\": {\n \"description\": - \"The number of videos in the playlist.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistContentDetails\"\n },\n \"ChannelConversionPings\": - {\n \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\",\n \"id\": - \"ChannelConversionPings\",\n \"type\": \"object\",\n \"properties\": - {\n \"pings\": {\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ },\n \"description\": \"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.\",\n \"type\": \"array\"\n - \ }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": {\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n },\n \"playlistItemId\": - {\n \"description\": \"ID of the item within the playlist.\",\n \"type\": - \"string\"\n },\n \"playlistId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsPlaylistItem\",\n \"description\": \"Information - about a new playlist item.\"\n },\n \"CommentListResponse\": {\n \"id\": - \"CommentListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ \"\",\n \"\"\n ]\n },\n \"liveChatId\": + {\n \"type\": \"string\"\n },\n \"authorChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the user that authored this message, this field is not always filled. textMessageEvent + - the user that wrote the message fanFundingEvent - the user that funded the + broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent + - the member that sent the message membershipGiftingEvent - the user that + made the purchase giftMembershipReceivedEvent - the user that received the + gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent + - the author that retracted their message userBannedEvent - the moderator + that took the action superChatEvent - the user that made the purchase superStickerEvent + - the user that made the purchase\"\n },\n \"membershipGiftingDetails\": + {\n \"description\": \"Details about the Membership Gifting event, + this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": + \"LiveChatMembershipGiftingDetails\"\n },\n \"messageDeletedDetails\": + {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"newSponsorDetails\": + {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": + \"Details about the New Member Announcement event, this is only set if the + type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term + for \\\"sponsor\\\".\"\n },\n \"textMessageDetails\": {\n \"$ref\": + \"LiveChatTextMessageDetails\",\n \"description\": \"Details about + the text message, this is only set if the type is 'textMessageEvent'.\"\n + \ },\n \"displayMessage\": {\n \"description\": \"Contains + a string that can be displayed to the user. If this field is not present the + message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT + are silent.\",\n \"type\": \"string\"\n },\n \"messageRetractedDetails\": + {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"hasDisplayContent\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the message has display content that should be displayed to users.\"\n },\n + \ \"fanFundingEventDetails\": {\n \"description\": \"Details + about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n + \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n }\n }\n + \ },\n \"TestItem\": {\n \"properties\": {\n \"gaia\": {\n + \ \"format\": \"int64\",\n \"type\": \"string\"\n },\n + \ \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n + \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n + \ },\n \"id\": {\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"TestItem\",\n \"type\": \"object\"\n },\n + \ \"ThirdPartyLinkStatus\": {\n \"id\": \"ThirdPartyLinkStatus\",\n + \ \"description\": \"The third-party link status object contains information + about the status of the link.\",\n \"type\": \"object\",\n \"properties\": + {\n \"linkStatus\": {\n \"enum\": [\n \"unknown\",\n + \ \"failed\",\n \"pending\",\n \"linked\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n }\n }\n },\n \"SuperChatEventListResponse\": + {\n \"type\": \"object\",\n \"id\": \"SuperChatEventListResponse\",\n + \ \"properties\": {\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n \"default\": + \"youtube#superChatEventListResponse\",\n \"type\": \"string\"\n \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"description\": - \"A list of comments that match the request criteria.\"\n },\n \"kind\": - {\n \"default\": \"youtube#commentListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ }\n },\n \"I18nRegion\": {\n \"description\": \"A *i18nRegion* - resource identifies a region where YouTube is available.\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#i18nRegion\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the i18n region, such as region code and - human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the i18n region.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"I18nRegion\",\n \"type\": \"object\"\n },\n - \ \"CommentThreadListResponse\": {\n \"type\": \"object\",\n \"id\": - \"CommentThreadListResponse\",\n \"properties\": {\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of comment threads that match the request criteria.\"\n },\n \"kind\": + {\n \"$ref\": \"SuperChatEvent\"\n },\n \"description\": + \"A list of Super Chat purchases that match the request criteria.\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n }\n }\n },\n \"CommentThread\": {\n \"id\": + \"CommentThread\",\n \"type\": \"object\",\n \"properties\": {\n + \ \"replies\": {\n \"description\": \"The replies object contains + a limited number of replies (if any) to the top level comment found in the + snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n },\n \"kind\": {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#commentThreadListResponse\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n }\n },\n \"LanguageTag\": - {\n \"type\": \"object\",\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LanguageTag\"\n - \ },\n \"ChannelSection\": {\n \"type\": \"object\",\n \"id\": - \"ChannelSection\",\n \"properties\": {\n \"etag\": {\n \"type\": + Value: the fixed string \\\"youtube#commentThread\\\".\",\n \"default\": + \"youtube#commentThread\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"CommentThreadSnippet\",\n \"description\": + \"The snippet object contains basic details about the comment thread and also + the top level comment.\"\n },\n \"etag\": {\n \"type\": \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n },\n \"snippet\": {\n \"$ref\": - \"ChannelSectionSnippet\",\n \"description\": \"The snippet object - contains basic details about the channel section, such as its type, style - and title.\"\n },\n \"targeting\": {\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n },\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"type\": \"object\",\n - \ \"description\": \"Localizations for different languages\"\n },\n \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#channelSection\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSection\\\".\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoCategory\": {\n \"id\": \"VideoCategory\",\n - \ \"type\": \"object\",\n \"description\": \"A *videoCategory* resource - identifies a category that has been or could be associated with uploaded videos.\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoCategory\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the video category.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the video category, including its title.\",\n - \ \"$ref\": \"VideoCategorySnippet\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ThirdPartyLinkSnippet\": {\n - \ \"description\": \"Basic information about a third party account link, - including its type and type-specific information.\",\n \"id\": \"ThirdPartyLinkSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"channelToStoreLink\": - {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\"\n },\n \"type\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A link - that is connecting (or about to connect) a channel with a store on a merchandising - platform in order to enable retail commerce capabilities for that channel - on YouTube.\"\n ],\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"description\": - \"Type of the link named after the entities that are being linked.\"\n }\n - \ }\n },\n \"LiveStreamStatus\": {\n \"properties\": {\n \"streamStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"healthStatus\": {\n \"description\": - \"The health status of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n - \ }\n },\n \"description\": \"Brief description of the live - stream status.\",\n \"type\": \"object\",\n \"id\": \"LiveStreamStatus\"\n - \ },\n \"PlaylistSnippet\": {\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails.\",\n \"properties\": - {\n \"localized\": {\n \"$ref\": \"PlaylistLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that published the playlist.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the playlist - was created.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist. 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.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the playlist's default title and description.\"\n },\n \"description\": - {\n \"description\": \"The playlist's description.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"description\": - \"The channel title of the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"description\": \"The playlist's title.\"\n },\n \"tags\": - {\n \"description\": \"Keyword tags associated with the playlist.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"thumbnailVideoId\": {\n \"description\": - \"Note: if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"PlaylistSnippet\",\n \"type\": - \"object\"\n },\n \"VideoCategoryListResponse\": {\n \"type\": - \"object\",\n \"id\": \"VideoCategoryListResponse\",\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n },\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#videoCategoryListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n },\n + \"The ID that YouTube uses to uniquely identify the comment thread.\"\n }\n + \ },\n \"description\": \"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.\"\n },\n \"LiveStreamListResponse\": + {\n \"id\": \"LiveStreamListResponse\",\n \"properties\": {\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"items\": {\n \"description\": \"A list of live + streams that match the request criteria.\",\n \"items\": {\n \"$ref\": + \"LiveStream\"\n },\n \"type\": \"array\"\n },\n \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n \ \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n }\n }\n },\n \"VideoTopicDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"relevantTopicIds\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Similar to topic_id, - except that these topics are merely relevant to the video. These are topics - that may be mentioned in, or appear in the video. You can retrieve information - about each topic using Freebase Topic API.\"\n },\n \"topicCategories\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Wikipedia URLs that provide a high-level - description of the video's content.\",\n \"type\": \"array\"\n },\n - \ \"topicIds\": {\n \"description\": \"A list of Freebase topic - IDs that are centrally associated with the video. These are topics that are - centrally featured in the video, and it can be said that the video is mainly - about each of these. You can retrieve information about each topic using the - \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"description\": - \"Freebase topic information related to the video.\",\n \"id\": \"VideoTopicDetails\"\n - \ },\n \"ChannelToStoreLinkDetails\": {\n \"description\": \"Information - specific to a store on a merchandising platform linked to a YouTube channel.\",\n - \ \"type\": \"object\",\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"properties\": {\n \"storeUrl\": {\n \"description\": - \"Landing page of the store.\",\n \"type\": \"string\"\n },\n - \ \"merchantId\": {\n \"type\": \"string\",\n \"description\": - \"Google Merchant Center id of the store.\",\n \"format\": \"uint64\"\n - \ },\n \"storeName\": {\n \"type\": \"string\",\n \"description\": - \"Name of the store.\"\n }\n }\n },\n \"LiveChatModerator\": - {\n \"description\": \"A *liveChatModerator* resource represents a moderator - for a YouTube live chat. A chat moderator has the ability to ban/unban users - from a chat, remove message, etc.\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#liveChatModerator\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the moderator.\",\n \"$ref\": - \"LiveChatModeratorSnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the moderator.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatModerator\",\n \"type\": \"object\"\n - \ },\n \"VideoStatus\": {\n \"properties\": {\n \"uploadStatus\": - {\n \"description\": \"The status of the uploaded video.\",\n \"enum\": - [\n \"uploaded\",\n \"processed\",\n \"failed\",\n - \ \"rejected\",\n \"deleted\"\n ],\n \"enumDescriptions\": - [\n \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"type\": - \"string\"\n },\n \"license\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"failureReason\": - {\n \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ],\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ],\n \"type\": \"string\",\n \"description\": - \"This value explains why a video failed to upload. This property is only - present if the uploadStatus property indicates that the upload failed.\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"privacyStatus\": {\n \"description\": \"The - video's privacy status.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n },\n \"rejectionReason\": - {\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ],\n \"description\": - \"This value explains why YouTube rejected an uploaded video. This property - is only present if the uploadStatus property indicates that the upload was - rejected.\"\n },\n \"publishAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the video is scheduled to publish. It can be set only if the privacy - status of the video is private..\"\n },\n \"embeddable\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This value - indicates if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"madeForKids\": {\n \"type\": - \"boolean\"\n },\n \"publicStatsViewable\": {\n \"description\": - \"This value indicates if the extended video statistics on the watch page - can be viewed by everyone. Note that the view count, likes, etc will still - be visible if this is disabled. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title. Next Id: 18\",\n \"id\": \"VideoStatus\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ },\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label for this abuse report secondary reason.\"\n }\n - \ },\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"type\": - \"object\"\n },\n \"VideoMonetizationDetails\": {\n \"properties\": - {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\"\n - \ }\n },\n \"description\": \"Details about monetization of - a YouTube Video.\",\n \"type\": \"object\",\n \"id\": \"VideoMonetizationDetails\"\n - \ },\n \"LiveStreamListResponse\": {\n \"id\": \"LiveStreamListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n \"default\": - \"youtube#liveStreamListResponse\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + page in the result set.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveStreamListResponse\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"MembershipsLevelSnippet\": + {\n \"id\": \"MembershipsLevelSnippet\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"levelDetails\": {\n \"$ref\": + \"LevelDetails\",\n \"description\": \"Details about the pricing + level.\"\n },\n \"creatorChannelId\": {\n \"description\": + \"The id of the channel that's offering channel memberships.\",\n \"type\": + \"string\"\n }\n }\n },\n \"LiveStream\": {\n \"description\": + \"A live stream describes a live ingestion point.\",\n \"properties\": + {\n \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": + \"The cdn object defines the live stream's content delivery network (CDN) + settings. These settings provide details about the manner in which you stream + your content to YouTube.\"\n },\n \"id\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.update\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube assigns to uniquely identify the stream.\"\n },\n + \ \"status\": {\n \"description\": \"The status object contains + information about live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n + \ },\n \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n + \ \"description\": \"The content_details object contains information + about the stream, including the closed captions ingestion URL.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n + \ \"default\": \"youtube#liveStream\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"$ref\": \"LiveStreamSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the stream, including its channel, title, and description.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"LiveStream\"\n },\n + \ \"SubscriptionListResponse\": {\n \"properties\": {\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"items\": {\n \"description\": + \"A list of subscriptions that match the request criteria.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Subscription\"\n + \ }\n },\n \"prevPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveStream\"\n },\n \"description\": - \"A list of live streams that match the request criteria.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"properties\": {\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level at which the - viever is a member. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n },\n - \ \"memberMonth\": {\n \"type\": \"integer\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"format\": \"uint32\"\n - \ },\n \"userComment\": {\n \"description\": \"The comment - added by the member to this Member Milestone Chat. This field is empty for - messages without a comment from the member.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"ChannelContentDetails\": {\n \"id\": \"ChannelContentDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Details about the content - of a channel.\",\n \"properties\": {\n \"relatedPlaylists\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"watchLater\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch later playlist. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"likes\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"uploads\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s uploaded videos. Use the videos.insert method to upload new videos - and the videos.delete method to delete previously uploaded videos.\",\n \"type\": - \"string\"\n },\n \"favorites\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"watchHistory\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ }\n }\n }\n }\n },\n \"I18nRegionListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"eventId\": + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#i18nRegionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": - \"I18nRegionListResponse\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"description\": \"Details about a channel bulletin post.\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsBulletin\"\n - \ },\n \"ChannelStatistics\": {\n \"type\": \"object\",\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\",\n \"id\": \"ChannelStatistics\",\n \"properties\": - {\n \"videoCount\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of videos uploaded to - the channel.\"\n },\n \"viewCount\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of times the channel has been viewed.\"\n },\n \"subscriberCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of subscribers that the channel has.\",\n \"type\": \"string\"\n - \ },\n \"hiddenSubscriberCount\": {\n \"description\": - \"Whether or not the number of subscribers is shown for this user.\",\n \"type\": - \"boolean\"\n },\n \"commentCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of comments for the channel.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"Entity\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"url\": {\n \"type\": \"string\"\n },\n - \ \"typeId\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"Entity\"\n },\n \"I18nLanguage\": - {\n \"id\": \"I18nLanguage\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the i18n language.\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nLanguage\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the i18n language, such as language code - and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"An - *i18nLanguage* resource identifies a UI language currently supported by YouTube.\"\n - \ },\n \"LiveStreamSnippet\": {\n \"properties\": {\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n },\n \"description\": {\n - \ \"description\": \"The stream's description. The value cannot be - longer than 10000 characters.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The stream's title. The value must be between - 1 and 128 characters long.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the stream - was created.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveStreamSnippet\"\n },\n \"MembershipsLevel\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsLevel\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#membershipsLevel\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the memberships level.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A *membershipsLevel* resource represents an offer - made by YouTube creators for their fans. Users can become members of the channel - by joining one of the available levels. They will provide recurring monetary - support and receives special benefits.\"\n },\n \"ChannelBannerResource\": - {\n \"type\": \"object\",\n \"description\": \"A channel banner - returned as the response to a channel_banner.insert call.\",\n \"id\": - \"ChannelBannerResource\",\n \"properties\": {\n \"url\": {\n - \ \"description\": \"The URL of this banner image.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n + this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"SubscriptionListResponse\"\n },\n \"LiveChatModerator\": {\n \"id\": + \"LiveChatModerator\",\n \"description\": \"A *liveChatModerator* resource + represents a moderator for a YouTube live chat. A chat moderator has the ability + to ban/unban users from a chat, remove message, etc.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube assigns to uniquely identify the moderator.\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n + \ \"default\": \"youtube#liveChatModerator\"\n }\n }\n + \ },\n \"LiveStreamStatus\": {\n \"description\": \"Brief description + of the live stream status.\",\n \"properties\": {\n \"healthStatus\": + {\n \"$ref\": \"LiveStreamHealthStatus\",\n \"description\": + \"The health status of the stream.\"\n },\n \"streamStatus\": + {\n \"enum\": [\n \"created\",\n \"ready\",\n + \ \"active\",\n \"inactive\",\n \"error\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ]\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LiveStreamStatus\"\n },\n \"LocalizedProperty\": {\n + \ \"type\": \"object\",\n \"id\": \"LocalizedProperty\",\n \"properties\": + {\n \"default\": {\n \"type\": \"string\"\n },\n \"defaultLanguage\": + {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The + language of the default property.\"\n },\n \"localized\": {\n + \ \"items\": {\n \"$ref\": \"LocalizedString\"\n },\n + \ \"type\": \"array\"\n }\n }\n },\n \"ChannelBannerResource\": + {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": + {\n \"type\": \"string\"\n },\n \"url\": {\n \"type\": + \"string\",\n \"description\": \"The URL of this banner image.\"\n \ },\n \"kind\": {\n \"description\": \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelBannerResource\"\n - \ }\n }\n },\n \"LiveChatMessageListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pollingIntervalMillis\": - {\n \"description\": \"The amount of time the client should wait - before polling again.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"offlineAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the underlying stream went offline.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"eventId\": {\n - \ \"type\": \"string\",\n \"description\": \"Serialized EventId - of the request which produced this response.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatMessageListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageListResponse\"\n - \ },\n \"VideoFileDetailsAudioStream\": {\n \"description\": \"Information - about an audio stream.\",\n \"properties\": {\n \"channelCount\": - {\n \"description\": \"The number of audio channels that the stream - contains.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ },\n \"bitrateBps\": {\n \"type\": \"string\",\n \"description\": - \"The audio stream's bitrate, in bits per second.\",\n \"format\": - \"uint64\"\n },\n \"codec\": {\n \"type\": \"string\",\n - \ \"description\": \"The audio codec that the stream uses.\"\n },\n - \ \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n }\n },\n \"id\": \"VideoFileDetailsAudioStream\",\n - \ \"type\": \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"properties\": {\n \"allowed\": {\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"blocked\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"DEPRECATED Region restriction - of the video.\",\n \"id\": \"VideoContentDetailsRegionRestriction\"\n - \ },\n \"SuperStickerMetadata\": {\n \"properties\": {\n \"altText\": - {\n \"description\": \"Internationalized alt text that describes - the sticker image and any animation associated with it.\",\n \"type\": - \"string\"\n },\n \"stickerId\": {\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\",\n - \ \"type\": \"string\"\n },\n \"altTextLanguage\": {\n - \ \"description\": \"Specifies the localization language in which - the alt text is returned.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"SuperStickerMetadata\",\n \"type\": \"object\"\n - \ },\n \"AbuseType\": {\n \"id\": \"AbuseType\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"MemberSnippet\": {\n \"id\": - \"MemberSnippet\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"creatorChannelId\": {\n \"description\": \"The id of the - channel that's offering memberships.\",\n \"type\": \"string\"\n - \ },\n \"memberDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the member.\"\n },\n \"membershipsDetails\": - {\n \"description\": \"Details about the user's membership.\",\n - \ \"$ref\": \"MembershipsDetails\"\n }\n }\n },\n \"ChannelSectionSnippet\": - {\n \"id\": \"ChannelSectionSnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\",\n \"properties\": {\n \"style\": - {\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The style of - the channel section.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel section's default - title and description.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"description\": \"Localized title, read-only.\",\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel section's title for - multiple_playlists and multiple_channels.\"\n },\n \"position\": - {\n \"format\": \"uint32\",\n \"description\": \"The position - of the channel section in the channel.\",\n \"type\": \"integer\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ],\n \"description\": \"The type of the channel section.\"\n - \ }\n }\n },\n \"SubscriptionSnippet\": {\n \"description\": - \"Basic details about a subscription, including title, description and thumbnails - of the subscribed item.\",\n \"id\": \"SubscriptionSnippet\",\n \"properties\": - {\n \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"resourceId\": {\n \"description\": \"The id - object contains information about the channel that the user subscribed to.\",\n - \ \"$ref\": \"ResourceId\",\n \"annotations\": {\n \"required\": - [\n \"youtube.subscriptions.insert\"\n ]\n }\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the subscription was created.\",\n - \ \"format\": \"date-time\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the subscription - belongs to.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the subscriber's channel.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"description\": \"The subscription's title.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"The subscription's details.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LocalizedProperty\": {\n - \ \"properties\": {\n \"defaultLanguage\": {\n \"$ref\": - \"LanguageTag\",\n \"description\": \"The language of the default - property.\"\n },\n \"localized\": {\n \"items\": {\n - \ \"$ref\": \"LocalizedString\"\n },\n \"type\": - \"array\"\n },\n \"default\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LocalizedProperty\"\n - \ },\n \"MembershipsDurationAtLevel\": {\n \"type\": \"object\",\n - \ \"id\": \"MembershipsDurationAtLevel\",\n \"properties\": {\n \"memberSince\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the user became a continuous member for the given level.\"\n - \ },\n \"level\": {\n \"type\": \"string\",\n \"description\": - \"Pricing level ID.\"\n },\n \"memberTotalDurationMonths\": - {\n \"format\": \"int32\",\n \"type\": \"integer\",\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\"\n }\n }\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"properties\": - {\n \"seedResourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The seedResourceId object contains information about the resource that caused - the recommendation.\"\n },\n \"reason\": {\n \"type\": - \"string\",\n \"description\": \"The reason that the resource is - recommended to the user.\",\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the recommended resource.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"Information that identifies the recommended resource.\"\n - \ },\n \"ActivityContentDetailsSocial\": {\n \"id\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"Details about a social network post.\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"An image of the post's author.\"\n },\n \"author\": {\n \"description\": - \"The author of the social network post.\",\n \"type\": \"string\"\n - \ },\n \"referenceUrl\": {\n \"description\": \"The - URL of the social network post.\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"description\": \"The name of the social network.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n - \ \"facebook\",\n \"twitter\"\n ]\n }\n - \ }\n },\n \"CdnSettings\": {\n \"type\": \"object\",\n \"properties\": - {\n \"resolution\": {\n \"description\": \"The resolution - of the inbound video data.\",\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + \ \"default\": \"youtube#channelBannerResource\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"A channel banner + returned as the response to a channel_banner.insert call.\",\n \"id\": + \"ChannelBannerResource\"\n },\n \"PlaylistPlayer\": {\n \"type\": + \"object\",\n \"properties\": {\n \"embedHtml\": {\n \"type\": + \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that + embeds a player that will play the playlist.\"\n }\n },\n \"id\": + \"PlaylistPlayer\"\n },\n \"VideoFileDetailsAudioStream\": {\n \"id\": + \"VideoFileDetailsAudioStream\",\n \"properties\": {\n \"bitrateBps\": + {\n \"description\": \"The audio stream's bitrate, in bits per second.\",\n + \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n + \ \"vendor\": {\n \"description\": \"A value that uniquely + identifies a video vendor. Typically, the value is a four-letter vendor code.\",\n + \ \"type\": \"string\"\n },\n \"codec\": {\n \"type\": + \"string\",\n \"description\": \"The audio codec that the stream + uses.\"\n },\n \"channelCount\": {\n \"description\": + \"The number of audio channels that the stream contains.\",\n \"format\": + \"uint32\",\n \"type\": \"integer\"\n }\n },\n \"description\": + \"Information about an audio stream.\",\n \"type\": \"object\"\n },\n + \ \"ImageSettings\": {\n \"id\": \"ImageSettings\",\n \"description\": + \"Branding properties for images associated with the channel.\",\n \"type\": + \"object\",\n \"properties\": {\n \"bannerMobileExtraHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size high resolution (1440x395).\"\n },\n \"bannerTabletExtraHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size extra high resolution (2560x424).\"\n },\n \"bannerMobileMediumHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size medium/high resolution (960x263).\"\n },\n \"watchIconImageUrl\": + {\n \"type\": \"string\"\n },\n \"bannerTabletImageUrl\": + {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n + \ \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size high resolution (1920x1080).\"\n },\n \"largeBrandedBannerImageUrl\": + {\n \"description\": \"The URL for the 854px by 70px image that appears + below the video player in the expanded video view of the video watch page.\",\n + \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTabletLowImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size low resolution (1138x188).\"\n },\n \"bannerMobileLowImageUrl\": + {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n + \ \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size (640x175).\"\n },\n \"bannerTvMediumImageUrl\": + {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n + \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The image map script for the small banner image.\"\n },\n \"smallBrandedBannerImageUrl\": + {\n \"description\": \"The URL for the 640px by 70px banner image + that appears below the video player in the default view of the video watch + page. The URL for the image that appears above the top-left corner of the + video player. This is a 25-pixel-high image with a flexible width that cannot + exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n + \ \"bannerImageUrl\": {\n \"description\": \"Banner image. + Desktop size (1060x175).\",\n \"type\": \"string\"\n },\n + \ \"trackingImageUrl\": {\n \"description\": \"The URL for + a 1px by 1px tracking pixel that can be used to collect statistics for views + of the channel or video pages.\",\n \"type\": \"string\"\n },\n + \ \"bannerMobileHdImageUrl\": {\n \"type\": \"string\",\n \"description\": + \"Banner image. Mobile size high resolution (1280x360).\"\n },\n \"largeBrandedBannerImageImapScript\": + {\n \"description\": \"The image map script for the large banner + image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTvImageUrl\": + {\n \"description\": \"Banner image. TV size extra high resolution + (2120x1192).\",\n \"type\": \"string\"\n },\n \"backgroundImageUrl\": + {\n \"description\": \"The URL for the background image shown on + the video watch page. The image should be 1200px by 615px, with a maximum + file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n + \ \"bannerTabletHdImageUrl\": {\n \"type\": \"string\",\n \"description\": + \"Banner image. Tablet size high resolution (2276x377).\"\n },\n \"bannerExternalUrl\": + {\n \"type\": \"string\",\n \"description\": \"This is generated + when a ChannelBanner.Insert request has succeeded for the given channel.\"\n + \ },\n \"bannerTvLowImageUrl\": {\n \"description\": + \"Banner image. TV size low resolution (854x480).\",\n \"type\": + \"string\"\n }\n }\n },\n \"VideoSnippet\": {\n \"type\": + \"object\",\n \"properties\": {\n \"categoryId\": {\n \"description\": + \"The YouTube video category associated with the video.\",\n \"type\": + \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's description. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"title\": {\n \"description\": + \"The video's title. @mutable youtube.videos.insert youtube.videos.update\",\n + \ \"type\": \"string\"\n },\n \"tags\": {\n \"description\": + \"A list of keyword tags associated with the video. Tags may contain spaces.\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": + \"array\"\n },\n \"localized\": {\n \"description\": + \"Localized snippet selected with the hl parameter. If no such localization + exists, this field is populated with the default snippet. (Read-only)\",\n + \ \"$ref\": \"VideoLocalization\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The language + of the videos's default snippet.\"\n },\n \"publishedAt\": {\n + \ \"description\": \"The date and time when the video was uploaded.\",\n + \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n + \ \"defaultAudioLanguage\": {\n \"description\": \"The default_audio_language + property specifies the language spoken in the video's default audio track.\",\n + \ \"type\": \"string\"\n },\n \"channelTitle\": {\n + \ \"description\": \"Channel title for the channel that the video + belongs to.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel that the video was uploaded + to.\"\n },\n \"liveBroadcastContent\": {\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been completed.\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n + \ \"upcoming\",\n \"live\",\n \"completed\"\n + \ ],\n \"description\": \"Indicates if the video is an upcoming/active + live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active + live broadcast.\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n }\n },\n \"id\": \"VideoSnippet\",\n + \ \"description\": \"Basic details about a video, including title, description, + uploader, thumbnails and category.\"\n },\n \"ActivitySnippet\": {\n + \ \"description\": \"Basic details about an activity, including title, + description, thumbnails, activity type and group. Next ID: 12\",\n \"id\": + \"ActivitySnippet\",\n \"properties\": {\n \"groupId\": {\n \"type\": + \"string\",\n \"description\": \"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.\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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.\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"The title of the resource primarily + associated with the activity.\"\n },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"frameRate\": {\n \"description\": - \"The frame rate of the inbound video data.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ],\n \"type\": \"string\"\n },\n \"ingestionInfo\": - {\n \"description\": \"The ingestionInfo object contains information - that YouTube provides that you need to transmit your RTMP or HTTP stream to - YouTube.\",\n \"$ref\": \"IngestionInfo\"\n },\n \"ingestionType\": - {\n \"enum\": [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \" The method or protocol - used to transmit the video stream.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"format\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The format of the video stream that you are sending - to Youtube. \"\n }\n },\n \"id\": \"CdnSettings\",\n \"description\": - \"Brief description of the live stream cdn settings.\"\n },\n \"PlaylistPlayer\": - {\n \"type\": \"object\",\n \"properties\": {\n \"embedHtml\": - {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a - player that will play the playlist.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"PlaylistPlayer\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageDeletedDetails\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatNewSponsorDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"properties\": {\n \"isUpgrade\": {\n \"type\": \"boolean\",\n - \ \"description\": \"If the viewer just had upgraded from a lower - level. For viewers that were not members at the time of purchase, this field - is false.\"\n },\n \"memberLevelName\": {\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveStreamConfigurationIssue\": {\n \"id\": \"LiveStreamConfigurationIssue\",\n - \ \"properties\": {\n \"severity\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"description\": \"How severe this issue is to the - stream.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The long-form description of the issue and - how to resolve it.\",\n \"type\": \"string\"\n },\n \"reason\": - {\n \"description\": \"The short-form reason for this issue.\",\n - \ \"type\": \"string\"\n },\n \"type\": {\n \"description\": - \"The kind of error happening.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ]\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"id\": \"VideoSuggestionsTagSuggestion\",\n \"description\": - \"A single tag suggestion with it's relevance information.\",\n \"type\": - \"object\",\n \"properties\": {\n \"categoryRestricts\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A set of video categories for which the tag is - relevant. You can use this information to display appropriate tag suggestions - based on the video category that the video uploader associates with the video. - By default, tag suggestions are relevant for all categories if there are no - restricts defined for the keyword.\"\n },\n \"tag\": {\n \"type\": - \"string\",\n \"description\": \"The keyword tag suggested for the - video.\"\n }\n }\n },\n \"SuperChatEvent\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the Super Chat event.\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\",\n - \ \"$ref\": \"SuperChatEventSnippet\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"default\": \"youtube#superChatEvent\"\n }\n },\n \"description\": - \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\",\n \"id\": \"SuperChatEvent\",\n \"type\": \"object\"\n - \ },\n \"SuperChatEventListResponse\": {\n \"id\": \"SuperChatEventListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"description\": \"A list of Super Chat purchases - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"SuperChatEvent\"\n },\n \"type\": \"array\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ThumbnailDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"default\": {\n \"description\": - \"The default image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"medium\": {\n \"description\": \"The medium - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"standard\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The standard quality image for this resource.\"\n },\n \"maxres\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The maximum - resolution quality image for this resource.\"\n },\n \"high\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The high - quality image for this resource.\"\n }\n },\n \"description\": - \"Internal representation of thumbnails for a YouTube resource.\",\n \"id\": - \"ThumbnailDetails\"\n },\n \"I18nLanguageSnippet\": {\n \"properties\": - {\n \"hl\": {\n \"type\": \"string\",\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\"\n },\n - \ \"name\": {\n \"type\": \"string\",\n \"description\": - \"The human-readable name of the language in the language itself.\"\n }\n - \ },\n \"description\": \"Basic details about an i18n language, such - as language code and human-readable name.\",\n \"type\": \"object\",\n - \ \"id\": \"I18nLanguageSnippet\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was added to the channel.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"Details about a resource which was added to a channel.\",\n - \ \"type\": \"object\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"description\": \"Basic details about a subscription's subscriber - including title, description, channel ID and thumbnails.\",\n \"type\": - \"object\",\n \"id\": \"SubscriptionSubscriberSnippet\",\n \"properties\": - {\n \"description\": {\n \"description\": \"The description - of the subscriber.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"Thumbnails - for this subscriber.\"\n },\n \"channelId\": {\n \"description\": - \"The channel ID of the subscriber.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the subscriber.\"\n }\n }\n },\n \"LiveChatModeratorListResponse\": - {\n \"id\": \"LiveChatModeratorListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#liveChatModeratorListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of moderators that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n }\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n }\n }\n },\n \"LiveBroadcastSnippet\": - {\n \"description\": \"Basic broadcast information.\",\n \"type\": - \"object\",\n \"properties\": {\n \"actualEndTime\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast actually ended. This information is - only available once the broadcast's state is complete.\"\n },\n \"isDefaultBroadcast\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast is the default broadcast. Internal only.\"\n },\n - \ \"scheduledStartTime\": {\n \"description\": \"The date and - time that the broadcast is scheduled to start.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"format\": \"date-time\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the broadcast. For each nested object - in this object, the key is the name of the thumbnail image, and the value - is an object that contains other information about the thumbnail.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"actualStartTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - actually started. This information is only available once the broadcast's - state is live.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the broadcast was added - to YouTube's live broadcast schedule.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"title\": {\n \"description\": - \"The broadcast's title. Note that the broadcast represents exactly one YouTube - video. You can set this field by modifying the broadcast resource or by setting - the title field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"liveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the live chat for this - broadcast.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\",\n \"type\": \"string\"\n },\n \"scheduledEndTime\": - {\n \"description\": \"The date and time that the broadcast is scheduled - to end.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ }\n },\n \"id\": \"LiveBroadcastSnippet\"\n },\n \"Channel\": - {\n \"description\": \"A *channel* resource contains information about - a YouTube channel.\",\n \"type\": \"object\",\n \"id\": \"Channel\",\n - \ \"properties\": {\n \"brandingSettings\": {\n \"description\": - \"The brandingSettings object encapsulates information about the branding - of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"default\": \"youtube#channel\"\n },\n \"localizations\": - {\n \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"description\": \"Localizations for different languages\",\n - \ \"type\": \"object\"\n },\n \"topicDetails\": {\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\",\n \"$ref\": - \"ChannelTopicDetails\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"contentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"status\": {\n \"description\": \"The status - object encapsulates information about the privacy status of the channel.\",\n - \ \"$ref\": \"ChannelStatus\"\n },\n \"snippet\": {\n - \ \"$ref\": \"ChannelSnippet\",\n \"description\": \"The - snippet object contains basic details about the channel, such as its title, - description, and thumbnail images.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel.\"\n },\n \"conversionPings\": {\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object encapsulates information about the channel's content.\",\n - \ \"$ref\": \"ChannelContentDetails\"\n },\n \"auditDetails\": - {\n \"$ref\": \"ChannelAuditDetails\",\n \"description\": - \"The auditionDetails object encapsulates channel data that is relevant for - YouTube Partners during the audition process.\"\n }\n }\n },\n - \ \"ThirdPartyLinkStatus\": {\n \"properties\": {\n \"linkStatus\": - {\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"id\": - \"ThirdPartyLinkStatus\",\n \"description\": \"The third-party link status - object contains information about the status of the link.\",\n \"type\": - \"object\"\n },\n \"LevelDetails\": {\n \"properties\": {\n \"displayName\": - {\n \"description\": \"The name that should be used when referring - to this level.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LevelDetails\"\n },\n \"VideoSuggestions\": - {\n \"type\": \"object\",\n \"description\": \"Specifies suggestions - on how to improve video content, including encoding hints, tag suggestions, - and editor suggestions.\",\n \"properties\": {\n \"tagSuggestions\": - {\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\"\n },\n \"editorSuggestions\": {\n \"items\": - {\n \"enumDescriptions\": [\n \"Picture brightness - levels seem off and could be corrected.\",\n \"The video appears - shaky and could be stabilized.\",\n \"Margins (mattes) detected - around the picture could be cropped.\",\n \"The audio track appears - silent and could be swapped with a better quality one.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ]\n },\n \"description\": \"A list of video - editing operations that might improve the video quality or playback experience - of the uploaded video.\",\n \"type\": \"array\"\n },\n \"processingHints\": - {\n \"description\": \"A list of suggestions that may improve YouTube's - ability to process the video.\",\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ],\n \"enumDescriptions\": [\n \"The MP4 - file is not streamable, this will slow down the processing. MOOV atom was - not found at the beginning of the file.\",\n \"Probably a better - quality version of the video exists. The video has wide screen aspect ratio, - but is not an HD video.\",\n \"Uploaded video is spherical video.\",\n - \ \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ]\n - \ },\n \"type\": \"array\"\n },\n \"processingErrors\": - {\n \"type\": \"array\",\n \"description\": \"A list of - errors that will prevent YouTube from successfully processing the uploaded - video video. These errors indicate that, regardless of the video's current - processing status, eventually, that status will almost certainly be failed.\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"File - contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., - a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file.\",\n \"Document - or text file (e.g., MS Word document).\",\n \"An archive file - (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout - type.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n - \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n - \ \"unsupportedSpatialAudioLayout\"\n ]\n }\n - \ },\n \"processingWarnings\": {\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ]\n }\n - \ }\n },\n \"id\": \"VideoSuggestions\"\n },\n \"LiveChatMessageSnippet\": - {\n \"id\": \"LiveChatMessageSnippet\",\n \"properties\": {\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"textMessageDetails\": - {\n \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\",\n \"$ref\": \"LiveChatTextMessageDetails\"\n - \ },\n \"hasDisplayContent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the message has display content that - should be displayed to users.\"\n },\n \"memberMilestoneChatDetails\": - {\n \"description\": \"Details about the Member Milestone Chat event, - this is only set if the type is 'memberMilestoneChatEvent'.\",\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the message was orignally published.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\"\n },\n \"displayMessage\": {\n \"description\": - \"Contains a string that can be displayed to the user. If this field is not - present the message is silent, at the moment only messages of type TOMBSTONE - and CHAT_ENDED_EVENT are silent.\",\n \"type\": \"string\"\n },\n - \ \"superStickerDetails\": {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n - \ \"description\": \"Details about the Super Sticker event, this is - only set if the type is 'superStickerEvent'.\"\n },\n \"authorChannelId\": - {\n \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\",\n \"type\": \"string\"\n },\n \"fanFundingEventDetails\": - {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n - \ },\n \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n - \ \"description\": \"Details about the Super Chat event, this is only - set if the type is 'superChatEvent'.\"\n },\n \"newSponsorDetails\": - {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": - \"Details about the New Member Announcement event, this is only set if the - type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term - for \\\"sponsor\\\".\"\n },\n \"userBannedDetails\": {\n \"$ref\": - \"LiveChatUserBannedMessageDetails\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"liveChatId\": - {\n \"type\": \"string\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Next ID: 33\"\n },\n - \ \"VideoAbuseReport\": {\n \"type\": \"object\",\n \"properties\": - {\n \"secondaryReasonId\": {\n \"type\": \"string\",\n \"description\": - \"The specific, or secondary, reason that this content is abusive (if available). - The value is an abuse report reason ID that is a valid secondary reason for - the primary reason.\"\n },\n \"language\": {\n \"description\": - \"The language that the content was viewed in.\",\n \"type\": \"string\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n },\n - \ \"comments\": {\n \"description\": \"Additional comments - regarding the abuse report.\",\n \"type\": \"string\"\n },\n - \ \"reasonId\": {\n \"description\": \"The high-level, or primary, - reason that the content is abusive. The value is an abuse report reason ID.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoAbuseReport\"\n - \ },\n \"ActivitySnippet\": {\n \"properties\": {\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the video was uploaded.\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel responsible for - this activity\"\n },\n \"groupId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The description of the resource - primarily associated with the activity. @mutable youtube.activities.insert\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of activity that the resource describes.\",\n \"type\": - \"string\",\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n \ \"like\",\n \"favorite\",\n \"comment\",\n \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ]\n },\n \"title\": - {\n \"description\": \"The title of the resource primarily associated - with the activity.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel associated with the activity.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about an activity, including title, description, thumbnails, activity - type and group. Next ID: 12\",\n \"id\": \"ActivitySnippet\"\n },\n - \ \"ActivityContentDetailsLike\": {\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"Information about a resource that received a positive - (like) rating.\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoCategorySnippet\": {\n \"description\": \"Basic details - about a video category, such as its localized title.\",\n \"id\": \"VideoCategorySnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"assignable\": - {\n \"type\": \"boolean\"\n },\n \"channelId\": {\n - \ \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"description\": - \"The YouTube channel that created the video category.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - video category's title.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"I18nLanguageListResponse\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"I18nLanguage\"\n },\n - \ \"description\": \"A list of supported i18n languages. In this map, - the i18n language ID is the map key, and its value is the corresponding i18nLanguage - resource.\"\n }\n },\n \"id\": \"I18nLanguageListResponse\",\n - \ \"type\": \"object\"\n },\n \"MembershipsLevelListResponse\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsLevelListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"default\": \"youtube#membershipsLevelListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": + \ \"promotedItem\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The type of activity that the resource describes.\"\n + \ },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"format\": \"date-time\",\n \"description\": \"The date + and time that the video was uploaded.\"\n },\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the channel associated with the activity.\",\n \"type\": \"string\"\n + \ },\n \"channelTitle\": {\n \"description\": \"Channel + title for the channel responsible for this activity\",\n \"type\": + \"string\"\n },\n \"description\": {\n \"description\": + \"The description of the resource primarily associated with the activity. + @mutable youtube.activities.insert\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"AccessPolicy\": {\n \"description\": + \"Rights management policy for YouTube resources.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"allowed\": {\n \"type\": \"boolean\",\n + \ \"description\": \"The value of allowed indicates whether the access + to the policy is allowed or denied by default.\"\n },\n \"exception\": {\n \"type\": \"array\",\n \"description\": \"A list of - pricing levels offered by a creator to the fans.\",\n \"items\": - {\n \"$ref\": \"MembershipsLevel\"\n }\n }\n }\n - \ },\n \"TestItem\": {\n \"id\": \"TestItem\",\n \"type\": - \"object\",\n \"properties\": {\n \"gaia\": {\n \"format\": - \"int64\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"TestItemTestItemSnippet\"\n },\n \"id\": - {\n \"type\": \"string\"\n },\n \"featuredPart\": {\n - \ \"type\": \"boolean\"\n }\n }\n },\n \"LiveChatTextMessageDetails\": - {\n \"id\": \"LiveChatTextMessageDetails\",\n \"properties\": {\n - \ \"messageText\": {\n \"type\": \"string\",\n \"description\": - \"The user's message.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"CaptionListResponse\": {\n \"properties\": {\n \"etag\": + region codes that identify countries where the default policy do not apply.\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n }\n + \ },\n \"id\": \"AccessPolicy\"\n },\n \"PlaylistItem\": {\n + \ \"description\": \"A *playlistItem* resource identifies another resource, + such as a video, that is included in a playlist. In addition, the playlistItem + resource contains details about the included resource that pertain specifically + to how that resource is used in that playlist. YouTube uses playlists to identify + special collections of videos for a channel, such as: - uploaded videos - + favorite videos - positively rated (liked) videos - watch history - watch + later To be more specific, these lists are associated with a channel, which + is a collection of a person, group, or company's videos, playlists, and other + YouTube information. You can retrieve the playlist IDs for each of these lists + from the channel resource for a given channel. You can then use the playlistItems.list + method to retrieve any of those lists. You can also add or remove items from + those lists by calling the playlistItems.insert and playlistItems.delete methods. + For example, if a user gives a positive rating to a video, you would insert + that video into the liked videos playlist for that user's channel.\",\n \"id\": + \"PlaylistItem\",\n \"type\": \"object\",\n \"properties\": {\n + \ \"contentDetails\": {\n \"description\": \"The contentDetails + object is included in the resource if the included item is a YouTube video. + The object contains additional information about the video.\",\n \"$ref\": + \"PlaylistItemContentDetails\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#playlistItem\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the playlist item, such as its title and + position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the playlist item.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"status\": {\n \"description\": + \"The status object contains information about the playlist item's privacy + status.\",\n \"$ref\": \"PlaylistItemStatus\"\n }\n }\n + \ },\n \"ChannelSettings\": {\n \"id\": \"ChannelSettings\",\n \"type\": + \"object\",\n \"properties\": {\n \"showRelatedChannels\": {\n + \ \"type\": \"boolean\",\n \"description\": \"Whether related + channels should be proposed.\"\n },\n \"defaultTab\": {\n \"type\": + \"string\",\n \"description\": \"Which content tab users should see + when viewing the channel.\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"Specifies the channel description.\"\n + \ },\n \"keywords\": {\n \"description\": \"Lists keywords + associated with the channel, comma-separated.\",\n \"type\": \"string\"\n + \ },\n \"showBrowseView\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether the tab to browse the videos should be + displayed.\"\n },\n \"featuredChannelsUrls\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"The list of featured channels.\",\n \"type\": \"array\"\n },\n + \ \"defaultLanguage\": {\n \"type\": \"string\"\n },\n + \ \"unsubscribedTrailer\": {\n \"type\": \"string\",\n \"description\": + \"The trailer of the channel, for users that are not subscribers.\"\n },\n + \ \"trackingAnalyticsAccountId\": {\n \"description\": \"The + ID for a Google Analytics account to track and measure traffic to the channels.\",\n + \ \"type\": \"string\"\n },\n \"moderateComments\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + user-submitted comments left on the channel page need to be approved by the + channel owner to be publicly visible.\"\n },\n \"country\": + {\n \"description\": \"The country of the channel.\",\n \"type\": + \"string\"\n },\n \"profileColor\": {\n \"description\": + \"A prominent color that can be rendered on this channel page.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"Specifies the channel title.\"\n },\n + \ \"featuredChannelsTitle\": {\n \"type\": \"string\",\n \"description\": + \"Title for the featured channels tab.\"\n }\n },\n \"description\": + \"Branding properties for the channel view.\"\n },\n \"Subscription\": + {\n \"type\": \"object\",\n \"description\": \"A *subscription* + resource contains information about a YouTube user subscription. A subscription + notifies a user when new videos are added to a channel or when another user + takes one of several actions on YouTube, such as uploading a video, rating + a video, or commenting on a video.\",\n \"properties\": {\n \"subscriberSnippet\": + {\n \"description\": \"The subscriberSnippet object contains basic + details about the subscriber.\",\n \"$ref\": \"SubscriptionSubscriberSnippet\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#subscription\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object contains basic statistics about the subscription.\",\n + \ \"$ref\": \"SubscriptionContentDetails\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the subscription.\",\n \"type\": \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"items\": {\n \"description\": - \"A list of captions that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Caption\"\n },\n \"type\": \"array\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"CaptionListResponse\",\n \"type\": \"object\"\n },\n - \ \"LocalizedString\": {\n \"id\": \"LocalizedString\",\n \"properties\": - {\n \"language\": {\n \"type\": \"string\"\n },\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelStatus\": {\n \"properties\": {\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"longUploadsStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ],\n \"type\": \"string\"\n },\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"Privacy status of the channel.\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"isLinked\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"description\": \"JSON template for the status - part of a channel.\",\n \"type\": \"object\",\n \"id\": \"ChannelStatus\"\n - \ },\n \"VideoAbuseReportReasonListResponse\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"description\": - \"A list of valid abuse reasons that are used with `video.ReportAbuse`.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n }\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n },\n - \ \"visitorId\": {\n \"description\": \"The `visitorId` identifies - the visitor.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"ActivityListResponse\": {\n \"type\": \"object\",\n \"id\": - \"ActivityListResponse\",\n \"properties\": {\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"Activity\"\n },\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#activityListResponse\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n }\n },\n \"ActivityContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"channelItem\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\"\n },\n \"subscription\": {\n \"description\": - \"The subscription object contains information about a channel that a user - subscribed to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"bulletin\": - {\n \"description\": \"The bulletin object contains details about - a channel bulletin post. This object is only present if the snippet.type is - bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n },\n - \ \"like\": {\n \"$ref\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"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.\"\n },\n \"favorite\": {\n \"description\": - \"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.\",\n - \ \"$ref\": \"ActivityContentDetailsFavorite\"\n },\n \"comment\": - {\n \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\",\n \"$ref\": \"ActivityContentDetailsComment\"\n },\n - \ \"social\": {\n \"$ref\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"The social object contains details about a social - network post. This property is only present if the snippet.type is social.\"\n - \ },\n \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\"\n },\n \"promotedItem\": {\n \"description\": - \"The promotedItem object contains details about a resource which is being - promoted. This property is only present if the snippet.type is promotedItem.\",\n - \ \"$ref\": \"ActivityContentDetailsPromotedItem\"\n },\n \"upload\": - {\n \"$ref\": \"ActivityContentDetailsUpload\",\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\"\n }\n },\n \"id\": - \"ActivityContentDetails\",\n \"description\": \"Details about the content - of an activity: the video that was shared, the channel that was subscribed - to, etc.\"\n },\n \"SuperChatEventSnippet\": {\n \"id\": \"SuperChatEventSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"displayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). - The string is rendered for the given language.\"\n },\n \"commentText\": - {\n \"description\": \"The text contents of the comment left by the - user.\",\n \"type\": \"string\"\n },\n \"amountMicros\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\",\n \"type\": - \"string\"\n },\n \"isSuperStickerEvent\": {\n \"description\": - \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n - \ },\n \"superStickerMetadata\": {\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"createdAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the event occurred.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel id where the event occurred.\"\n - \ },\n \"messageType\": {\n \"type\": \"integer\",\n - \ \"description\": \"The tier for the paid message, which is based - on the amount of money spent to purchase the message.\",\n \"format\": - \"uint32\"\n },\n \"supporterDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - supporter.\"\n }\n }\n },\n \"VideoAbuseReportReason\": - {\n \"id\": \"VideoAbuseReportReason\",\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the abuse report reason.\",\n - \ \"$ref\": \"VideoAbuseReportReasonSnippet\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of this abuse report reason.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReason\"\n - \ }\n }\n },\n \"VideoAbuseReportReasonSnippet\": {\n \"description\": - \"Basic details about a video category, such as its localized title.\",\n - \ \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"properties\": {\n \"secondaryReasons\": {\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"description\": \"The secondary reasons associated with this reason, - if any are available. (There might be 0 or more.)\",\n \"type\": - \"array\"\n },\n \"label\": {\n \"description\": \"The - localized label belonging to this abuse report reason.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoProcessingDetails\": {\n - \ \"properties\": {\n \"processingProgress\": {\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"editorSuggestionsAvailability\": {\n \"description\": - \"This value indicates whether video editing suggestions, which might improve - video quality or the playback experience, are available for the video. You - can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"processingIssuesAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether the video processing engine has generated suggestions that - might improve YouTube's ability to process the the video, warnings that explain - video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\"\n },\n \"tagSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether keyword (tag) suggestions are available for the video. Tags - can be added to a video's metadata to make it easier for other users to find - the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n },\n - \ \"processingFailureReason\": {\n \"description\": \"The reason - that YouTube failed to process the video. This property will only have a value - if the processingStatus property's value is failed.\",\n \"enum\": - [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"fileDetailsAvailability\": {\n \"description\": - \"This value indicates whether file details are available for the uploaded - video. You can retrieve a video's file details by requesting the fileDetails - part in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"processingStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's processing status. This - value indicates whether YouTube was able to process the video or if the video - is still being processed.\",\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ]\n }\n },\n \"type\": \"object\",\n \"description\": - \"Describes processing status and progress and availability of some other - Video resource parts.\",\n \"id\": \"VideoProcessingDetails\"\n },\n - \ \"Video\": {\n \"properties\": {\n \"status\": {\n \"$ref\": - \"VideoStatus\",\n \"description\": \"The status object contains - information about the video's uploading, processing, and privacy statuses.\"\n - \ },\n \"ageGating\": {\n \"description\": \"Age restriction - details related to a video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoAgeGating\"\n },\n \"monetizationDetails\": - {\n \"$ref\": \"VideoMonetizationDetails\",\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\"\n },\n \"topicDetails\": {\n \"$ref\": - \"VideoTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the video.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#video\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#video\\\".\",\n \"type\": \"string\"\n - \ },\n \"player\": {\n \"$ref\": \"VideoPlayer\",\n - \ \"description\": \"The player object contains information that you - would use to play the video in an embedded player.\"\n },\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"description\": \"The localizations - object contains localized versions of the basic details about the video, such - as its title and description.\",\n \"additionalProperties\": {\n - \ \"$ref\": \"VideoLocalization\"\n }\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"fileDetails\": {\n \"description\": - \"The fileDetails object encapsulates information about the video file that - was uploaded to YouTube, including the file's resolution, duration, audio - and video codecs, stream bitrates, and more. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - contains statistics about the video.\",\n \"$ref\": \"VideoStatistics\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the video, such as its title, description, - and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n \"id\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ },\n \"processingDetails\": {\n \"$ref\": \"VideoProcessingDetails\",\n - \ \"description\": \"The processingDetails object encapsulates information - about YouTube's progress in processing the uploaded video file. The properties - in the object identify the current processing status and an estimate of the - time remaining until YouTube finishes processing the video. This part also - indicates whether different types of data or content, such as file details - or thumbnail images, are available for the video. The processingProgress object - is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\"\n },\n \"suggestions\": - {\n \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoSuggestions\"\n },\n \"projectDetails\": - {\n \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"recordingDetails\": - {\n \"$ref\": \"VideoRecordingDetails\",\n \"description\": - \"The recordingDetails object encapsulates information about the location, - date and address where the video was recorded.\"\n }\n },\n \"description\": - \"A *video* resource represents a YouTube video.\",\n \"type\": \"object\",\n - \ \"id\": \"Video\"\n },\n \"LiveChatSuperChatDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"amountDisplayString\": {\n - \ \"type\": \"string\",\n \"description\": \"A rendered string - that displays the fund amount and currency to the user.\"\n },\n \"amountMicros\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ },\n \"tier\": {\n \"description\": \"The tier in - which the amount belongs. Lower amounts belong to lower tiers. The lowest - tier is 1.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made.\"\n },\n \"userComment\": - {\n \"description\": \"The comment added by the user to this Super - Chat event.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveChatSuperChatDetails\"\n },\n \"VideoPlayer\": {\n \"id\": - \"VideoPlayer\",\n \"type\": \"object\",\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\"\n },\n \"embedHeight\": - {\n \"type\": \"string\",\n \"format\": \"int64\"\n },\n - \ \"embedWidth\": {\n \"format\": \"int64\",\n \"description\": - \"The embed width\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Player to be used for a video playback.\"\n },\n - \ \"Playlist\": {\n \"properties\": {\n \"localizations\": {\n - \ \"description\": \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"type\": - \"object\"\n },\n \"status\": {\n \"description\": - \"The status object contains status information for the playlist.\",\n \"$ref\": - \"PlaylistStatus\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": \"The - snippet object contains basic details about the playlist, such as its title - and description.\"\n },\n \"player\": {\n \"$ref\": - \"PlaylistPlayer\",\n \"description\": \"The player object contains - information that you would use to play the playlist in an embedded player.\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the playlist.\",\n \"type\": \"string\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains information like video count.\",\n \"$ref\": - \"PlaylistContentDetails\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlist\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"Playlist\",\n \"description\": \"A *playlist* resource represents a - YouTube playlist. A playlist is a collection of videos that can be viewed - sequentially and shared with other users. A playlist can contain up to 200 - videos, and YouTube does not limit the number of playlists that each user - creates. By default, playlists are publicly visible to other users, but playlists - can be public or private. YouTube also uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods.\"\n - \ },\n \"Cuepoint\": {\n \"description\": \"Note that there may - be a 5-second end-point resolution issue. For instance, if a cuepoint comes - in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. - This is an artifact of HLS.\",\n \"id\": \"Cuepoint\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The identifier for cuepoint - resource.\",\n \"type\": \"string\"\n },\n \"durationSecs\": - {\n \"description\": \"The duration of this cuepoint.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"cueType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ]\n },\n \"walltimeMs\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The wall clock time at which the cuepoint should be inserted. Only one of - insertion_offset_time_ms and walltime_ms may be set at a time.\"\n },\n - \ \"etag\": {\n \"type\": \"string\"\n },\n \"insertionOffsetTimeMs\": - {\n \"type\": \"string\",\n \"description\": \"The time - when the cuepoint should be inserted by offset to the broadcast actual start - time.\",\n \"format\": \"int64\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoGetRatingResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n \"default\": - \"youtube#videoGetRatingResponse\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"VideoRating\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of ratings - that match the request criteria.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n },\n \"id\": \"VideoGetRatingResponse\"\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"properties\": {\n - \ \"currency\": {\n \"description\": \"The currency in which - the fund was made.\",\n \"type\": \"string\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"userComment\": {\n \"description\": \"The comment added - by the user to this fan funding event.\",\n \"type\": \"string\"\n - \ },\n \"amountMicros\": {\n \"description\": \"The - amount of the fund.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatFanFundingEventDetails\"\n },\n \"PlaylistItemStatus\": {\n - \ \"properties\": {\n \"privacyStatus\": {\n \"description\": - \"This resource's privacy status.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Information about the playlist item's - privacy status.\",\n \"id\": \"PlaylistItemStatus\"\n },\n \"ActivityContentDetailsComment\": - {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with the - comment.\"\n }\n },\n \"id\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"Information about a resource that received a comment.\"\n - \ },\n \"ChannelLocalization\": {\n \"description\": \"Channel localization - setting\",\n \"id\": \"ChannelLocalization\",\n \"properties\": - {\n \"description\": {\n \"description\": \"The localized - strings for channel's description.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel's title.\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoContentDetails\": {\n \"properties\": - {\n \"hasCustomThumbnail\": {\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n },\n \"contentRating\": {\n \"$ref\": - \"ContentRating\",\n \"description\": \"Specifies the ratings that - the video received under various rating schemes.\"\n },\n \"licensedContent\": - {\n \"description\": \"The value of is_license_content indicates - whether the video is licensed content.\",\n \"type\": \"boolean\"\n - \ },\n \"caption\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The value of captions indicates whether the video has captions or not.\",\n - \ \"enum\": [\n \"true\",\n \"false\"\n ]\n - \ },\n \"dimension\": {\n \"type\": \"string\",\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\"\n },\n \"regionRestriction\": {\n \"$ref\": - \"VideoContentDetailsRegionRestriction\",\n \"description\": \"The - regionRestriction object contains information about the countries where a - video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\"\n },\n - \ \"projection\": {\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"Specifies the projection format of the video.\"\n },\n \"duration\": - {\n \"type\": \"string\",\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"definition\": {\n \"enum\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"description\": \"The value of definition indicates - whether the video is available in high definition or only in standard definition.\",\n - \ \"type\": \"string\"\n },\n \"countryRestriction\": - {\n \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\",\n \"$ref\": - \"AccessPolicy\"\n }\n },\n \"id\": \"VideoContentDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Details about the content - of a YouTube Video.\"\n },\n \"SubscriptionContentDetails\": {\n \"properties\": - {\n \"totalItemCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The approximate number of items that the subscription points to.\",\n \"type\": - \"integer\"\n },\n \"newItemCount\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of new items in the subscription since its content was last read.\"\n - \ },\n \"activityType\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Details about the content to witch a subscription refers.\",\n \"id\": - \"SubscriptionContentDetails\"\n },\n \"VideoStatistics\": {\n \"id\": - \"VideoStatistics\",\n \"description\": \"Statistics about the video, - such as the number of times the video was viewed or liked.\",\n \"type\": - \"object\",\n \"properties\": {\n \"viewCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of times the video has - been viewed.\",\n \"type\": \"string\"\n },\n \"likeCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of users who have indicated that they liked the video by giving it a positive - rating.\",\n \"type\": \"string\"\n },\n \"favoriteCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\"\n - \ },\n \"dislikeCount\": {\n \"description\": \"The - number of users who have indicated that they disliked the video by giving - it a negative rating.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"commentCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of comments for the video.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"PropertyValue\": - {\n \"id\": \"PropertyValue\",\n \"properties\": {\n \"property\": - {\n \"type\": \"string\",\n \"description\": \"A property.\"\n - \ },\n \"value\": {\n \"type\": \"string\",\n \"description\": - \"The property's value.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A pair Property / Value.\"\n },\n \"TokenPagination\": - {\n \"type\": \"object\",\n \"id\": \"TokenPagination\",\n \"description\": - \"Stub token pagination template to suppress results.\",\n \"properties\": - {}\n },\n \"ThirdPartyLinkListResponse\": {\n \"properties\": {\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ }\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"IngestionInfo\": {\n \"description\": \"Describes information - necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"type\": - \"object\",\n \"properties\": {\n \"streamName\": {\n \"type\": - \"string\",\n \"description\": \"The stream name that YouTube assigns - to the video stream.\"\n },\n \"rtmpsBackupIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - backupIngestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"backupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The backup - ingestion URL that you should use to stream video to YouTube. You have the - option of simultaneously streaming the content that you are sending to the - ingestionAddress to this URL.\"\n },\n \"rtmpsIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of ingestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"ingestionAddress\": - {\n \"description\": \"The primary ingestion URL that you should - use to stream video to YouTube. You must stream video to this URL. Depending - on which application or tool you use to encode your video stream, you may - need to enter the stream URL and stream name separately or you may need to - concatenate them in the following format: *STREAM_URL/STREAM_NAME* \",\n \"type\": - \"string\"\n }\n },\n \"id\": \"IngestionInfo\"\n },\n - \ \"VideoSnippet\": {\n \"description\": \"Basic details about a video, - including title, description, uploader, thumbnails and category.\",\n \"type\": - \"object\",\n \"id\": \"VideoSnippet\",\n \"properties\": {\n \"categoryId\": - {\n \"description\": \"The YouTube video category associated with - the video.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the video was uploaded.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"localized\": {\n \"$ref\": \"VideoLocalization\",\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the videos's default snippet.\"\n - \ },\n \"description\": {\n \"description\": \"The video's - description. @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - video's title. @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that the video - was uploaded to.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the video - belongs to.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n },\n \"tags\": - {\n \"type\": \"array\",\n \"description\": \"A list of - keyword tags associated with the video. Tags may contain spaces.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"liveBroadcastContent\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"type\": - \"string\",\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n },\n - \ \"defaultAudioLanguage\": {\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"SearchResultSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a search result, including title, description and thumbnails of the item referenced - by the search result.\",\n \"id\": \"SearchResultSnippet\",\n \"properties\": - {\n \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"The title of the channel that published the resource that the search result - identifies.\"\n },\n \"publishedAt\": {\n \"description\": - \"The creation date and time of the resource that the search result identifies.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"channelId\": {\n \"description\": \"The value that YouTube - uses to uniquely identify the channel that published the resource that the - search result identifies.\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"A map of thumbnail images associated with the search result. 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.\"\n },\n - \ \"liveBroadcastContent\": {\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The title of the search result.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"A description of the search result.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoAgeGating\": {\n \"id\": \"VideoAgeGating\",\n - \ \"properties\": {\n \"restricted\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Age-restricted trailers. For redband trailers - and adult-rated video-games. Only users aged 18+ can view the content. The - the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\"\n },\n \"videoGameRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Video game rating, if any.\",\n \"enum\": - [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ]\n },\n \"alcoholContent\": - {\n \"description\": \"Indicates whether or not the video has alcoholic - beverage content. Only users of legal purchasing age in a particular country, - as identified by ICAP, can view the content.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"SearchListResponse\": - {\n \"id\": \"SearchListResponse\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"regionCode\": {\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#searchListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#searchListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"items\": {\n \"description\": \"Pagination information - for token pagination.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SearchResult\"\n }\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcastContentDetails\": - {\n \"id\": \"LiveBroadcastContentDetails\",\n \"properties\": {\n - \ \"latencyPreference\": {\n \"type\": \"string\",\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Best for: highest quality viewer playbacks - and higher resolutions.\",\n \"Best for: near real-time interaction, - with minimal playback buffering.\",\n \"Best for: real-time interaction - Does not support: Closed captions, 1440p, and 4k resolutions\"\n ]\n - \ },\n \"projection\": {\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"enableClosedCaptions\": - {\n \"description\": \"This setting indicates whether HTTP POST closed - captioning is enabled for this broadcast. The ingestion URL of the closed - captions is returned through the liveStreams API. This is mutually exclusive - with using the closed_captions_type property, and is equivalent to setting - closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n \"type\": - \"boolean\"\n },\n \"closedCaptionsType\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ]\n },\n \"recordFromStart\": {\n \"type\": - \"boolean\",\n \"description\": \"Automatically start recording after - the event goes live. The default value for this property is true. *Important:* - You must also set the enableDvr property's value to true if you want the playback - to be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\"\n },\n \"mesh\": {\n \"format\": \"byte\",\n - \ \"description\": \"The mesh for projecting the video if projection - is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding - of 3D mesh data that follows the Spherical Video V2 RFC specification for - an mshp box, excluding the box size and type but including the following four - reserved zero bytes for the version and flags.\",\n \"type\": \"string\"\n - \ },\n \"enableAutoStart\": {\n \"description\": \"This - setting indicates whether auto start is enabled for this broadcast. The default - value for this property is false. This setting can only be used by Events.\",\n - \ \"type\": \"boolean\"\n },\n \"startWithSlate\": {\n - \ \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n },\n \"enableAutoStop\": {\n \"description\": - \"This setting indicates whether auto stop is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\",\n \"type\": \"boolean\"\n },\n \"enableContentEncryption\": - {\n \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n - \ },\n \"stereoLayout\": {\n \"description\": \"The - 3D stereo layout of this broadcast. This defaults to mono.\",\n \"type\": - \"string\",\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"monitorStream\": - {\n \"$ref\": \"MonitorStreamInfo\",\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\"\n },\n \"enableEmbed\": {\n \"description\": - \"This setting indicates whether the broadcast video can be played in an embedded - player. If you choose to archive the video (using the enableArchive property), - this setting will also apply to the archived video.\",\n \"type\": - \"boolean\"\n },\n \"enableDvr\": {\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n - \ },\n \"boundStreamLastUpdateTimeMs\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the live stream referenced by boundStreamId was last - updated.\"\n },\n \"enableLowLatency\": {\n \"description\": - \"Indicates whether this broadcast has low latency enabled.\",\n \"type\": - \"boolean\"\n },\n \"boundStreamId\": {\n \"description\": - \"This value uniquely identifies the live stream bound to the broadcast.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Detailed settings of a broadcast.\",\n \"type\": \"object\"\n },\n - \ \"MemberListResponse\": {\n \"id\": \"MemberListResponse\",\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Member\"\n },\n \"description\": \"A list of members that - match the request criteria.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#memberListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#memberListResponse\\\".\"\n }\n }\n - \ },\n \"ChannelSectionLocalization\": {\n \"type\": \"object\",\n - \ \"description\": \"ChannelSection localization setting\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel section's title.\"\n }\n },\n - \ \"id\": \"ChannelSectionLocalization\"\n },\n \"ChannelSectionContentDetails\": - {\n \"description\": \"Details about a channelsection, including playlists - and channels.\",\n \"type\": \"object\",\n \"id\": \"ChannelSectionContentDetails\",\n - \ \"properties\": {\n \"playlists\": {\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"channels\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The channel ids - for type multiple_channels.\"\n }\n }\n },\n \"MembershipsLevelSnippet\": - {\n \"id\": \"MembershipsLevelSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"levelDetails\": {\n \"description\": - \"Details about the pricing level.\",\n \"$ref\": \"LevelDetails\"\n - \ },\n \"creatorChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The id of the channel that's offering channel - memberships.\"\n }\n }\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"properties\": {\n \"partsProcessed\": {\n \"type\": - \"string\",\n \"description\": \"The number of parts of the video - that YouTube has already processed. You can estimate the percentage of the - video that YouTube has already processed by calculating: 100 * parts_processed - / parts_total Note that since the estimated number of parts could increase - without a corresponding increase in the number of parts that have already - been processed, it is possible that the calculated progress could periodically - decrease while YouTube processes a video.\",\n \"format\": \"uint64\"\n - \ },\n \"timeLeftMs\": {\n \"description\": \"An estimate - of the amount of time, in millseconds, that YouTube needs to finish processing - the video.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"partsTotal\": {\n \"description\": \"An estimate - of the total number of parts that need to be processed for the video. The - number may be updated with more precise estimates while YouTube processes - the video.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ }\n },\n \"description\": \"Video processing progress and - completion time estimate.\",\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"GeoPoint\": {\n \"type\": \"object\",\n \"id\": \"GeoPoint\",\n - \ \"properties\": {\n \"latitude\": {\n \"type\": \"number\",\n - \ \"format\": \"double\",\n \"description\": \"Latitude in - degrees.\"\n },\n \"longitude\": {\n \"description\": - \"Longitude in degrees.\",\n \"format\": \"double\",\n \"type\": - \"number\"\n },\n \"altitude\": {\n \"format\": \"double\",\n - \ \"description\": \"Altitude above the reference ellipsoid, in meters.\",\n - \ \"type\": \"number\"\n }\n },\n \"description\": - \"Geographical coordinates of a point, in WGS84.\"\n },\n \"PlaylistItemSnippet\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistItemSnippet\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails. - Basic details of a YouTube Playlist item provided by the author. Next ID: - 15\",\n \"properties\": {\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": - \"string\"\n },\n \"playlistId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the user that added the item - to the playlist.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the item - was added to the playlist.\",\n \"format\": \"date-time\"\n },\n - \ \"position\": {\n \"description\": \"The order in which the - item appears in the playlist. The value uses a zero-based index, so the first - item has a position of 0, the second item has a position of 1, and so forth.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"resourceId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that is included in the playlist as the playlist item.\"\n },\n - \ \"description\": {\n \"description\": \"The item's description.\",\n - \ \"type\": \"string\"\n },\n \"videoOwnerChannelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel this video belongs to.\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The item's title.\"\n - \ },\n \"videoOwnerChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel id for the channel this video belongs - to.\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist item. 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.\"\n }\n }\n },\n \"InvideoBranding\": {\n \"type\": - \"object\",\n \"id\": \"InvideoBranding\",\n \"properties\": {\n - \ \"imageBytes\": {\n \"type\": \"string\",\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"format\": \"byte\"\n },\n \"timing\": {\n \"$ref\": - \"InvideoTiming\",\n \"description\": \"The temporal position within - the video where watermark will be displayed.\"\n },\n \"targetChannelId\": - {\n \"description\": \"The channel to which this branding links. - If not present it defaults to the current channel.\",\n \"type\": - \"string\"\n },\n \"imageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The url of the uploaded image. Only used in apiary - to api communication.\"\n },\n \"position\": {\n \"description\": - \"The spatial position within the video where the branding watermark will - be displayed.\",\n \"$ref\": \"InvideoPosition\"\n }\n },\n - \ \"description\": \"LINT.IfChange Describes an invideo branding.\"\n - \ },\n \"LiveStreamHealthStatus\": {\n \"properties\": {\n \"lastUpdateTimeSeconds\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The last time this status was updated (in seconds)\"\n },\n \"status\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ],\n \"type\": \"string\",\n \"description\": - \"The status code of this stream\"\n },\n \"configurationIssues\": - {\n \"description\": \"The configurations issues on this stream\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n }\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveStreamHealthStatus\"\n },\n \"LiveChatBan\": - {\n \"id\": \"LiveChatBan\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"default\": \"youtube#liveChatBan\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the ban.\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\"\n - \ },\n \"ImageSettings\": {\n \"properties\": {\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"bannerTabletImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Tablet size (1707x283).\"\n },\n - \ \"bannerTabletLowImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Tablet size low resolution (1138x188).\"\n - \ },\n \"smallBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 640px - by 70px banner image that appears below the video player in the default view - of the video watch page. The URL for the image that appears above the top-left - corner of the video player. This is a 25-pixel-high image with a flexible - width that cannot exceed 170 pixels.\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"smallBrandedBannerImageImapScript\": {\n \"description\": - \"The image map script for the small banner image.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTvImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. TV size extra high - resolution (2120x1192).\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size medium resolution (1280x720).\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\",\n \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": - {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1280x360).\"\n },\n \"trackingImageUrl\": - {\n \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size medium/high resolution (960x263).\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerImageUrl\": - {\n \"description\": \"Banner image. Desktop size (1060x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": - {\n \"description\": \"Banner image. Mobile size (640x175).\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ImageSettings\",\n - \ \"type\": \"object\",\n \"description\": \"Branding properties - for images associated with the channel.\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"Activity\": {\n \"description\": - \"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.\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#activity\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the activity, including the activity's - type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n - \ \"description\": \"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.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource\"\n }\n },\n - \ \"id\": \"Activity\",\n \"type\": \"object\"\n },\n \"PlaylistItemListResponse\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistItemListResponse\",\n - \ \"properties\": {\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#playlistItemListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of playlist items that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n }\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n }\n }\n },\n \"VideoListResponse\": {\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Video\"\n }\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n \"default\": - \"youtube#videoListResponse\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoListResponse\"\n },\n \"CommentThreadSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comments refer to, if any. No video_id implies a channel discussion - comment.\"\n },\n \"totalReplyCount\": {\n \"type\": - \"integer\",\n \"description\": \"The total number of replies (not - including the top level comment).\",\n \"format\": \"uint32\"\n },\n - \ \"canReply\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n - \ \"channelId\": {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"isPublic\": {\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\",\n \"type\": \"boolean\"\n },\n \"topLevelComment\": - {\n \"$ref\": \"Comment\",\n \"description\": \"The top - level comment of this thread.\"\n }\n },\n \"description\": - \"Basic details about a comment thread.\",\n \"id\": \"CommentThreadSnippet\"\n - \ },\n \"MembershipsDuration\": {\n \"type\": \"object\",\n \"id\": - \"MembershipsDuration\",\n \"properties\": {\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - across all levels in complete months (the time is rounded down to the nearest - integer).\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ },\n \"memberSince\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the user became a continuous - member across all levels.\"\n }\n }\n },\n \"LiveChatBanSnippet\": - {\n \"id\": \"LiveChatBanSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"banDurationSeconds\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The duration of a ban, only filled - if the ban has type TEMPORARY.\"\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"An invalid ban type.\",\n - \ \"A permanent ban.\",\n \"A temporary ban.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"description\": - \"The type of ban.\"\n },\n \"liveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The chat this ban is pertinent to.\"\n - \ }\n }\n },\n \"MembershipsDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"accessibleLevels\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"Ids of all levels that the user has access to. - This includes the currently active level and all other levels that are included - because of a higher purchase.\"\n },\n \"membershipsDurationAtLevels\": - {\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ },\n \"type\": \"array\",\n \"description\": \"Data - about memberships duration on particular pricing levels.\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n },\n - \ \"highestAccessibleLevel\": {\n \"description\": \"Id of - the highest level that the user has access to at the moment.\",\n \"type\": - \"string\"\n },\n \"membershipsDuration\": {\n \"$ref\": - \"MembershipsDuration\",\n \"description\": \"Data about memberships - duration without taking into consideration pricing levels.\"\n }\n - \ },\n \"id\": \"MembershipsDetails\"\n },\n \"VideoRecordingDetails\": - {\n \"description\": \"Recording information associated with the video.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"locationDescription\": - {\n \"description\": \"The text description of the location where - the video was recorded.\",\n \"type\": \"string\"\n },\n \"location\": - {\n \"$ref\": \"GeoPoint\",\n \"description\": \"The geolocation - information associated with the video.\"\n },\n \"recordingDate\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the video was recorded.\"\n - \ }\n },\n \"id\": \"VideoRecordingDetails\"\n },\n \"LiveBroadcastListResponse\": - {\n \"id\": \"LiveBroadcastListResponse\",\n \"properties\": {\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of broadcasts that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"kind\": - {\n \"default\": \"youtube#liveBroadcastListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveStreamContentDetails\": - {\n \"properties\": {\n \"closedCaptionsIngestionUrl\": {\n \"type\": - \"string\",\n \"description\": \"The ingestion URL where the closed - captions of this stream are sent.\"\n },\n \"isReusable\": {\n - \ \"description\": \"Indicates whether the stream is reusable, which - means that it can be bound to multiple broadcasts. It is common for broadcasters - to reuse the same stream for many different broadcasts if those broadcasts - occur at different times. If you set this value to false, then the stream - will not be reusable, which means that it can only be bound to one broadcast. - Non-reusable streams differ from reusable streams in the following ways: - - A non-reusable stream can only be bound to one broadcast. - A non-reusable - stream might be deleted by an automated process after the broadcast ends. - - The liveStreams.list method does not list non-reusable streams if you call - the method and set the mine parameter to true. The only way to use that method - to retrieve the resource for a non-reusable stream is to use the id parameter - to identify the stream. \",\n \"type\": \"boolean\"\n }\n - \ },\n \"description\": \"Detailed settings of a stream.\",\n \"type\": - \"object\",\n \"id\": \"LiveStreamContentDetails\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"properties\": {\n \"giftMembershipsLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the level of the gift - memberships purchased by the user. The Level names are defined by the YouTube - channel offering the Membership. In some situations this field isn't filled.\"\n - \ },\n \"giftMembershipsCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"description\": \"The number - of gift memberships purchased by the user.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n - \ \"CaptionSnippet\": {\n \"id\": \"CaptionSnippet\",\n \"properties\": - {\n \"failureReason\": {\n \"enum\": [\n \"unknownFormat\",\n - \ \"unsupportedFormat\",\n \"processingFailed\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\"\n },\n \"isCC\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the track contains closed captions for the deaf and hard of hearing. - The default value is false.\"\n },\n \"name\": {\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"isLarge\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the caption track - uses large text for the vision-impaired. The default value is false.\"\n },\n - \ \"language\": {\n \"description\": \"The language of the - caption track. The property value is a BCP-47 language tag.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"trackKind\": {\n \"enum\": [\n \"standard\",\n - \ \"ASR\",\n \"forced\"\n ],\n \"type\": - \"string\",\n \"description\": \"The caption track's type.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"lastUpdated\": {\n \"description\": \"The date and time - when the caption track was last updated.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"audioTrackType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of audio track associated with the caption - track.\"\n },\n \"videoId\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the video associated with the caption - track. @mutable youtube.captions.insert\",\n \"annotations\": {\n - \ \"required\": [\n \"youtube.captions.insert\"\n ]\n - \ },\n \"type\": \"string\"\n },\n \"isAutoSynced\": - {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"isDraft\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\"\n - \ },\n \"status\": {\n \"type\": \"string\",\n \"description\": - \"The caption track's status.\",\n \"enum\": [\n \"serving\",\n - \ \"syncing\",\n \"failed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"isEasyReader\": {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n }\n },\n \"description\": \"Basic details about - a caption track, such as its language and name.\",\n \"type\": \"object\"\n - \ },\n \"Member\": {\n \"description\": \"A *member* resource represents - a member for a YouTube channel. A member provides recurring monetary support - to a creator and receives special benefits.\",\n \"id\": \"Member\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"default\": \"youtube#member\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"MemberSnippet\",\n \"description\": \"The snippet object contains - basic details about the member.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveBroadcastStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"madeForKids\": {\n \"description\": \"Whether the broadcast - is made for kids or not, decided by YouTube instead of the creator. This field - is read only.\",\n \"type\": \"boolean\"\n },\n \"lifeCycleStatus\": - {\n \"enumDescriptions\": [\n \"No value or the value - is unknown.\",\n \"Incomplete settings, but otherwise valid\",\n - \ \"Complete settings\",\n \"Visible only to partner, - may need special UI treatment\",\n \"Viper is recording; this means - the \\\"clock\\\" is running\",\n \"The broadcast is finished.\",\n - \ \"This broadcast was removed by admin action\",\n \"Transition - into TESTING has been requested\",\n \"Transition into LIVE has - been requested\"\n ],\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The broadcast's - status. The status can be updated using the API's liveBroadcasts.transition - method.\"\n },\n \"selfDeclaredMadeForKids\": {\n \"description\": - \"This field will be set to True if the creator declares the broadcast to - be kids only: go/live-cw-work.\",\n \"type\": \"boolean\"\n },\n - \ \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"recordingStatus\": {\n \"type\": \"string\",\n \"description\": - \"The broadcast's recording status.\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ]\n },\n \"liveBroadcastPriority\": - {\n \"enumDescriptions\": [\n \"\",\n \"Low - priority broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ],\n \"description\": \"Priority of the live broadcast - event (internal state).\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Live broadcast state.\",\n \"id\": \"LiveBroadcastStatus\"\n },\n - \ \"AccessPolicy\": {\n \"properties\": {\n \"allowed\": {\n - \ \"type\": \"boolean\",\n \"description\": \"The value of - allowed indicates whether the access to the policy is allowed or denied by - default.\"\n },\n \"exception\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\"\n }\n },\n \"description\": \"Rights management - policy for YouTube resources.\",\n \"type\": \"object\",\n \"id\": - \"AccessPolicy\"\n },\n \"InvideoPosition\": {\n \"type\": \"object\",\n - \ \"description\": \"Describes the spatial position of a visual widget - inside a video. It is a union of various position types, out of which only - will be set one.\",\n \"id\": \"InvideoPosition\",\n \"properties\": - {\n \"cornerPosition\": {\n \"type\": \"string\",\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n - \ \"bottomRight\"\n ]\n },\n \"type\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\"\n - \ ],\n \"enum\": [\n \"corner\"\n ],\n - \ \"description\": \"Defines the position type.\"\n }\n }\n - \ },\n \"VideoLocalization\": {\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's title.\"\n },\n \"description\": {\n - \ \"description\": \"Localized version of the video's description.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Localized versions of certain video properties (e.g. title).\",\n \"type\": - \"object\",\n \"id\": \"VideoLocalization\"\n },\n \"CommentThread\": - {\n \"id\": \"CommentThread\",\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment thread.\"\n },\n \"replies\": - {\n \"$ref\": \"CommentThreadReplies\",\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThread\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#commentThread\"\n },\n \"snippet\": - {\n \"$ref\": \"CommentThreadSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"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.\",\n \"type\": \"object\"\n },\n - \ \"ChannelSnippet\": {\n \"description\": \"Basic details about a - channel, including title, description and thumbnails.\",\n \"type\": - \"object\",\n \"properties\": {\n \"defaultLanguage\": {\n \"description\": - \"The language of the channel's default title and description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - channel's title.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the channel was created.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"thumbnails\": {\n \"description\": \"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. When displaying thumbnails in your - application, make sure that your code uses the image URLs exactly as they - are returned in API responses. For example, your application should not use - the http domain instead of the https domain in a URL returned in an API response. - Beginning in July 2018, channel thumbnail URLs will only be available in the - https domain, which is how the URLs appear in API responses. After that time, - you might see broken images in your application if it tries to load YouTube - images from the http domain. Thumbnail images might be empty for newly created - channels and might take up to one day to populate.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"country\": {\n \"type\": - \"string\",\n \"description\": \"The country of the channel.\"\n - \ },\n \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"description\": {\n \"description\": \"The description - of the channel.\",\n \"type\": \"string\"\n },\n \"customUrl\": - {\n \"type\": \"string\",\n \"description\": \"The custom - url of the channel.\"\n }\n },\n \"id\": \"ChannelSnippet\"\n - \ },\n \"TestItemTestItemSnippet\": {\n \"id\": \"TestItemTestItemSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {}\n },\n \"ActivityContentDetailsSubscription\": - {\n \"id\": \"ActivityContentDetailsSubscription\",\n \"description\": - \"Information about a channel that a user subscribed to.\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that the user subscribed to.\"\n - \ }\n }\n },\n \"WatchSettings\": {\n \"id\": \"WatchSettings\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"backgroundColor\": - {\n \"description\": \"The text color for the video watch page's - branded area.\",\n \"type\": \"string\"\n },\n \"featuredPlaylistId\": - {\n \"description\": \"An ID that uniquely identifies a playlist - that displays next to the video player.\",\n \"type\": \"string\"\n - \ },\n \"textColor\": {\n \"type\": \"string\",\n \"description\": - \"The background color for the video watch page's branded area.\"\n }\n - \ },\n \"description\": \"Branding properties for the watch. All - deprecated.\"\n },\n \"LiveChatUserBannedMessageDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\",\n \"properties\": - {\n \"banDurationSeconds\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The duration of the ban. This property - is only present if the banType is temporary.\"\n },\n \"bannedUserDetails\": - {\n \"description\": \"The details of the user that was banned.\",\n - \ \"$ref\": \"ChannelProfileDetails\"\n },\n \"banType\": - {\n \"description\": \"The type of ban.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"permanent\",\n \"temporary\"\n - \ ]\n }\n }\n },\n \"ThirdPartyLink\": {\n \"type\": - \"object\",\n \"description\": \"A *third party account link* resource - represents a link between a YouTube account or a channel and an account on - a third-party service.\",\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLink\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLink\\\".\"\n },\n \"linkingToken\": - {\n \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n + resource.\"\n },\n \"snippet\": {\n \"$ref\": \"SubscriptionSnippet\",\n \ \"description\": \"The snippet object contains basic details about - the third- party account link.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the status of the link.\",\n - \ \"$ref\": \"ThirdPartyLinkStatus\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ThirdPartyLink\"\n }\n - \ },\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"resources\": {\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"description\": - \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ }\n },\n \"parameterOrder\": [],\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/commentThreads\"\n - \ }\n }\n }\n }\n },\n \"subscriptions\": - {\n \"methods\": {\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"channelId\": - {\n \"description\": \"Return the subscriptions of the given - channel owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Return the subscriptions with - the given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + the subscription, including its title and the channel that the user subscribed + to.\"\n }\n },\n \"id\": \"Subscription\"\n }\n },\n + \ \"batchPath\": \"batch\",\n \"protocol\": \"rest\",\n \"servicePath\": + \"\",\n \"basePath\": \"\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n + \ \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n + \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n + \ },\n \"kind\": \"discovery#restDescription\",\n \"name\": \"youtube\",\n + \ \"parameters\": {\n \"key\": {\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"$.xgafv\": {\n \"enumDescriptions\": + [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"description\": + \"V1 error format.\",\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"1\",\n \"2\"\n ]\n },\n \"oauth_token\": + {\n \"description\": \"OAuth 2.0 token for the current user.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"access_token\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": + \"OAuth access token.\"\n },\n \"alt\": {\n \"enum\": [\n \"json\",\n + \ \"media\",\n \"proto\"\n ],\n \"enumDescriptions\": + [\n \"Responses with Content-Type of application/json\",\n \"Media + download with context-dependent Content-Type\",\n \"Responses with + Content-Type of application/x-protobuf\"\n ],\n \"default\": \"json\",\n + \ \"description\": \"Data format for response.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"uploadType\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"Legacy + upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n },\n + \ \"upload_protocol\": {\n \"type\": \"string\",\n \"description\": + \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"location\": + \"query\"\n },\n \"fields\": {\n \"description\": \"Selector specifying + which fields to include in a partial response.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"callback\": {\n \"description\": + \"JSONP\",\n \"type\": \"string\",\n \"location\": \"query\"\n },\n + \ \"quotaUser\": {\n \"location\": \"query\",\n \"description\": + \"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.\",\n + \ \"type\": \"string\"\n },\n \"prettyPrint\": {\n \"type\": + \"boolean\",\n \"default\": \"true\",\n \"location\": \"query\",\n + \ \"description\": \"Returns response with indentations and line breaks.\"\n + \ }\n },\n \"discoveryVersion\": \"v1\",\n \"description\": \"The YouTube + Data API v3 is an API that provides access to YouTube data, such as videos, + playlists, and channels.\"\n}\n" + headers: + Alt-Svc: + - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 + Cache-Control: + - private + Content-Encoding: + - gzip + Content-Type: + - application/json; charset=UTF-8 + Date: + - Thu, 09 Mar 2023 00:26:51 GMT + Server: + - scaffolding on HTTPServer2 + Transfer-Encoding: + - chunked + Vary: + - Origin + - X-Origin + - Referer + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - SAMEORIGIN + X-XSS-Protection: + - '0' + status: + code: 200 + message: OK + url: '' +- request: + body: null + headers: + Accept-Encoding: + - gzip + User-Agent: + - Aiogoogle Aiohttp (gzip) + method: GET + uri: https://youtube.googleapis.com/youtube/v3/videos?id=7qH7WMzqOlU&part=snippet + response: + body: + string: "{\n \"kind\": \"youtube#videoListResponse\",\n \"etag\": \"HBv8oJBdmh0xiwK-aaaXOIN2WPw\",\n + \ \"items\": [\n {\n \"kind\": \"youtube#video\",\n \"etag\": + \"Aog0RAV4wJjg9tP3dXVA5cLDcGA\",\n \"id\": \"7qH7WMzqOlU\",\n \"snippet\": + {\n \"publishedAt\": \"2022-07-03T14:00:06Z\",\n \"channelId\": + \"UC3ptU7hyNeFlJdvQj2nZHJg\",\n \"title\": \"\u0418\u0413\u0420\u042B + \u041F\u041E\u0416\u0418\u041B\u041E\u0413\u041E \u0413\u0415\u0419\u041C\u0415\u0420\u0410: + \u041F\u0435\u0440\u0432\u0430\u044F \u043B\u0430\u0434\u0434\u0435\u0440\u043D\u0430\u044F + \u0441\u0435\u0441\u0441\u0438\u044F \u0421\u0435\u043A\u0440\u0435\u0442\u043D\u043E\u0433\u043E + \u0410\u0433\u0435\u043D\u0442\u0430 \u0432 StarCraft II \u043F\u043E\u0441\u043B\u0435 + \u0442\u0440\u0438\u0434\u0446\u0430\u0442\u0438\u043B\u0435\u0442\u0438\u044F!\",\n + \ \"description\": \"\u0421\u0442\u0430\u043D\u044C \u0441\u043F\u043E\u043D\u0441\u043E\u0440\u043E\u043C + \u043A\u0430\u043D\u0430\u043B\u0430: https://www.youtube.com/alex007sc2/join + \\n\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0430 \u043F\u0440\u043E\u0435\u043A\u0442\u0430: + http://clever.press/donate \\n\u0418\u0413\u0420\u042B \u041F\u041E\u0416\u0418\u041B\u041E\u0413\u041E + \u0413\u0415\u0419\u041C\u0415\u0420\u0410: \u041F\u0435\u0440\u0432\u0430\u044F + \u043B\u0430\u0434\u0434\u0435\u0440\u043D\u0430\u044F \u0441\u0435\u0441\u0441\u0438\u044F + \u0421\u0435\u043A\u0440\u0435\u0442\u043D\u043E\u0433\u043E \u0410\u0433\u0435\u043D\u0442\u0430 + \u0432 StarCraft II \u043F\u043E\u0441\u043B\u0435 \u0442\u0440\u0438\u0434\u0446\u0430\u0442\u0438\u043B\u0435\u0442\u0438\u044F, + \u0438\u0433\u0440\u0430\u0435\u0442 \u0438 \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0438\u0440\u0443\u0435\u0442 + \u0410\u043B\u0435\u043A\u0441007\\n\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0430 + \u043A\u0430\u043D\u0430\u043B\u0430 \u0432 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0435: + \\nBTC [BTC Network] - 16x6pgcBDd6tQtJuuAECViHUG7R1C4vjM6\\nETH [ERC20 Network] + - 0x852f71593b43ea8323640688f333819c6d21bbda\\nUSDT [TRC20 Network] - TYFV5Sj92uPGoMfPhfn74hpyGACZWMQ81W\\nDiscord-\u0441\u0435\u0440\u0432\u0435\u0440: + http://discord.gg/alex007\\n\u041E \u043A\u0430\u043D\u0430\u043B\u0435: \u0417\u0434\u0435\u0441\u044C + \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043D\u0430\u0439\u0442\u0438 + \u0432\u0441\u0435 \u043B\u0443\u0447\u0448\u0438\u0435 \u0432\u0438\u0434\u0435\u043E + \u043F\u043E StarCraft 2 - \u043C\u0430\u0442\u0447\u0438 \u043F\u0440\u043E\u0444\u0435\u0441\u0441\u0438\u043E\u043D\u0430\u043B\u043E\u0432, + \u0438\u0433\u0440\u044B \u043E\u0442 \u043F\u0435\u0440\u0432\u043E\u0433\u043E + \u043B\u0438\u0446\u0430 \u0437\u0430 \u0441\u043B\u0443\u0447\u0430\u0439\u043D\u0443\u044E + \u0440\u0430\u0441\u0443, \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0435 + \u043C\u0430\u0442\u0435\u0440\u0438\u0430\u043B\u044B \u043E\u0442 \u043A\u0438\u0431\u0435\u0440\u0441\u043F\u043E\u0440\u0442\u0438\u0432\u043D\u043E\u0433\u043E + \u0430\u043D\u0430\u043B\u0438\u0442\u0438\u043A\u0430 \u0438 \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0442\u043E\u0440\u0430 + Alex007.\",\n \"thumbnails\": {\n \"default\": {\n \"url\": + \"https://i.ytimg.com/vi/7qH7WMzqOlU/default.jpg\",\n \"width\": + 120,\n \"height\": 90\n },\n \"medium\": {\n + \ \"url\": \"https://i.ytimg.com/vi/7qH7WMzqOlU/mqdefault.jpg\",\n + \ \"width\": 320,\n \"height\": 180\n },\n \"high\": + {\n \"url\": \"https://i.ytimg.com/vi/7qH7WMzqOlU/hqdefault.jpg\",\n + \ \"width\": 480,\n \"height\": 360\n },\n \"standard\": + {\n \"url\": \"https://i.ytimg.com/vi/7qH7WMzqOlU/sddefault.jpg\",\n + \ \"width\": 640,\n \"height\": 480\n },\n \"maxres\": + {\n \"url\": \"https://i.ytimg.com/vi/7qH7WMzqOlU/maxresdefault.jpg\",\n + \ \"width\": 1280,\n \"height\": 720\n }\n },\n + \ \"channelTitle\": \"Alex007SC2\",\n \"tags\": [\n \"StarCraft + 2\",\n \"Alex007\",\n \"Legacy of the Void\",\n \"StarCraft + II\",\n \"StarCraft\",\n \"\u0421\u0442\u0430\u0440\u043A\u0440\u0430\u0444\u0442\",\n + \ \"\u0421\u0442\u0430\u0440\u043A\u0440\u0430\u0444\u0442 2\",\n + \ \"\u0410\u043B\u0435\u043A\u0441007\",\n \"\u041A\u0438\u0431\u0435\u0440\u0441\u043F\u043E\u0440\u0442\",\n + \ \"\u0413\u0435\u0439\u043C\u0438\u043D\u0433\",\n \"Gaming\",\n + \ \"Esports\",\n \"SC2\",\n \"\u0421\u041A2\",\n + \ \"Alex 007\",\n \"\u0410\u043B\u0435\u043A\u0441 007\",\n + \ \"\u0410\u043B\u0435\u043A\u0441\u0435\u0439 \u0422\u0440\u0443\u0448\u043B\u044F\u043A\u043E\u0432\",\n + \ \"\u0410\u0433\u0435\u043D\u0442\",\n \"\u0421\u0435\u043A\u0440\u0435\u0442\u043D\u044B\u0439 + \u0410\u0433\u0435\u043D\u0442\",\n \"Agent\",\n \"Secret + Agent\",\n \"\u041F\u043E\u0436\u0438\u043B\u043E\u0439 \u0433\u0435\u0439\u043C\u0438\u043D\u0433\",\n + \ \"First Person\",\n \"\u041E\u0431\u0443\u0447\u0435\u043D\u0438\u0435\",\n + \ \"\u0410\u043D\u0430\u043B\u0438\u0442\u0438\u043A\u0430\",\n \"FP + SC2\"\n ],\n \"categoryId\": \"20\",\n \"liveBroadcastContent\": + \"none\",\n \"localized\": {\n \"title\": \"\u0418\u0413\u0420\u042B + \u041F\u041E\u0416\u0418\u041B\u041E\u0413\u041E \u0413\u0415\u0419\u041C\u0415\u0420\u0410: + \u041F\u0435\u0440\u0432\u0430\u044F \u043B\u0430\u0434\u0434\u0435\u0440\u043D\u0430\u044F + \u0441\u0435\u0441\u0441\u0438\u044F \u0421\u0435\u043A\u0440\u0435\u0442\u043D\u043E\u0433\u043E + \u0410\u0433\u0435\u043D\u0442\u0430 \u0432 StarCraft II \u043F\u043E\u0441\u043B\u0435 + \u0442\u0440\u0438\u0434\u0446\u0430\u0442\u0438\u043B\u0435\u0442\u0438\u044F!\",\n + \ \"description\": \"\u0421\u0442\u0430\u043D\u044C \u0441\u043F\u043E\u043D\u0441\u043E\u0440\u043E\u043C + \u043A\u0430\u043D\u0430\u043B\u0430: https://www.youtube.com/alex007sc2/join + \\n\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0430 \u043F\u0440\u043E\u0435\u043A\u0442\u0430: + http://clever.press/donate \\n\u0418\u0413\u0420\u042B \u041F\u041E\u0416\u0418\u041B\u041E\u0413\u041E + \u0413\u0415\u0419\u041C\u0415\u0420\u0410: \u041F\u0435\u0440\u0432\u0430\u044F + \u043B\u0430\u0434\u0434\u0435\u0440\u043D\u0430\u044F \u0441\u0435\u0441\u0441\u0438\u044F + \u0421\u0435\u043A\u0440\u0435\u0442\u043D\u043E\u0433\u043E \u0410\u0433\u0435\u043D\u0442\u0430 + \u0432 StarCraft II \u043F\u043E\u0441\u043B\u0435 \u0442\u0440\u0438\u0434\u0446\u0430\u0442\u0438\u043B\u0435\u0442\u0438\u044F, + \u0438\u0433\u0440\u0430\u0435\u0442 \u0438 \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0438\u0440\u0443\u0435\u0442 + \u0410\u043B\u0435\u043A\u0441007\\n\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0430 + \u043A\u0430\u043D\u0430\u043B\u0430 \u0432 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0435: + \\nBTC [BTC Network] - 16x6pgcBDd6tQtJuuAECViHUG7R1C4vjM6\\nETH [ERC20 Network] + - 0x852f71593b43ea8323640688f333819c6d21bbda\\nUSDT [TRC20 Network] - TYFV5Sj92uPGoMfPhfn74hpyGACZWMQ81W\\nDiscord-\u0441\u0435\u0440\u0432\u0435\u0440: + http://discord.gg/alex007\\n\u041E \u043A\u0430\u043D\u0430\u043B\u0435: \u0417\u0434\u0435\u0441\u044C + \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043D\u0430\u0439\u0442\u0438 + \u0432\u0441\u0435 \u043B\u0443\u0447\u0448\u0438\u0435 \u0432\u0438\u0434\u0435\u043E + \u043F\u043E StarCraft 2 - \u043C\u0430\u0442\u0447\u0438 \u043F\u0440\u043E\u0444\u0435\u0441\u0441\u0438\u043E\u043D\u0430\u043B\u043E\u0432, + \u0438\u0433\u0440\u044B \u043E\u0442 \u043F\u0435\u0440\u0432\u043E\u0433\u043E + \u043B\u0438\u0446\u0430 \u0437\u0430 \u0441\u043B\u0443\u0447\u0430\u0439\u043D\u0443\u044E + \u0440\u0430\u0441\u0443, \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0435 + \u043C\u0430\u0442\u0435\u0440\u0438\u0430\u043B\u044B \u043E\u0442 \u043A\u0438\u0431\u0435\u0440\u0441\u043F\u043E\u0440\u0442\u0438\u0432\u043D\u043E\u0433\u043E + \u0430\u043D\u0430\u043B\u0438\u0442\u0438\u043A\u0430 \u0438 \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0442\u043E\u0440\u0430 + Alex007.\"\n },\n \"defaultAudioLanguage\": \"ru\"\n }\n + \ }\n ],\n \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": + 1\n }\n}\n" + headers: + Alt-Svc: + - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 + Cache-Control: + - private + Content-Encoding: + - gzip + Content-Type: + - application/json; charset=UTF-8 + Date: + - Thu, 09 Mar 2023 00:26:51 GMT + Server: + - scaffolding on HTTPServer2 + Transfer-Encoding: + - chunked + Vary: + - Origin + - X-Origin + - Referer + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - SAMEORIGIN + X-XSS-Protection: + - '0' + status: + code: 200 + message: OK + url: '' +- request: + body: null + headers: + Accept-Encoding: + - gzip + User-Agent: + - Aiogoogle Aiohttp (gzip) + method: GET + uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest + response: + body: + string: "{\n \"revision\": \"20230308\",\n \"auth\": {\n \"oauth2\": {\n + \ \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": + {\n \"description\": \"See a list of your current active channel + members, their current level, and when they became a member\"\n },\n + \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": + \"View and manage your assets and associated content on YouTube\"\n },\n + \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": + \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": + {\n \"description\": \"View private information of your YouTube channel + relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": + {\n \"description\": \"View your YouTube account\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": + \"See, edit, and permanently delete your YouTube videos, ratings, comments + and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": + {\n \"description\": \"Manage your YouTube videos\"\n }\n + \ }\n }\n },\n \"batchPath\": \"batch\",\n \"name\": \"youtube\",\n + \ \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"canonicalName\": + \"YouTube\",\n \"ownerDomain\": \"google.com\",\n \"version\": \"v3\",\n + \ \"discoveryVersion\": \"v1\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n + \ \"parameters\": {\n \"access_token\": {\n \"type\": \"string\",\n + \ \"description\": \"OAuth access token.\",\n \"location\": \"query\"\n + \ },\n \"alt\": {\n \"enumDescriptions\": [\n \"Responses + with Content-Type of application/json\",\n \"Media download with context-dependent + Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n + \ ],\n \"location\": \"query\",\n \"type\": \"string\",\n \"enum\": + [\n \"json\",\n \"media\",\n \"proto\"\n ],\n \"description\": + \"Data format for response.\",\n \"default\": \"json\"\n },\n \"$.xgafv\": + {\n \"enum\": [\n \"1\",\n \"2\"\n ],\n \"enumDescriptions\": + [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"type\": + \"string\",\n \"description\": \"V1 error format.\",\n \"location\": + \"query\"\n },\n \"callback\": {\n \"location\": \"query\",\n \"description\": + \"JSONP\",\n \"type\": \"string\"\n },\n \"fields\": {\n \"location\": + \"query\",\n \"description\": \"Selector specifying which fields to include + in a partial response.\",\n \"type\": \"string\"\n },\n \"prettyPrint\": + {\n \"default\": \"true\",\n \"type\": \"boolean\",\n \"location\": + \"query\",\n \"description\": \"Returns response with indentations and + line breaks.\"\n },\n \"quotaUser\": {\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"oauth_token\": {\n \"description\": + \"OAuth 2.0 token for the current user.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"uploadType\": {\n \"description\": + \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"upload_protocol\": + {\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"key\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n + \ }\n },\n \"fullyEncodeReservedExpansion\": true,\n \"resources\": {\n + \ \"members\": {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"id\": \"youtube.members.list\",\n \"flatPath\": + \"youtube/v3/members\",\n \"path\": \"youtube/v3/members\",\n \"response\": + {\n \"$ref\": \"MemberListResponse\"\n },\n \"description\": + \"Retrieves a list of members that match the request criteria for a channel.\",\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the member resource parts that the API response + will include. Set the parameter value to snippet.\",\n \"type\": + \"string\",\n \"required\": true\n },\n \"hasAccessToLevel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Filter members in the results set to the + ones that have access to a level.\"\n },\n \"maxResults\": + {\n \"minimum\": \"0\",\n \"location\": \"query\",\n + \ \"default\": \"5\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"format\": \"uint32\",\n \"maximum\": + \"1000\",\n \"type\": \"integer\"\n },\n \"pageToken\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"myRecentSubscribers\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"forChannelId\": {\n \"description\": \"Return the - subscriptions to the subset of these channels that the authenticated user - is subscribed to.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mySubscribers\": {\n \"description\": - \"Return the subscribers of the given channel owner.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\"\n },\n \"order\": {\n \"location\": - \"query\",\n \"default\": \"relevance\",\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The - order of the returned subscriptions\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ]\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"description\": \"Flag for returning the subscriptions - of the authenticated user.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"default\": \"5\",\n - \ \"minimum\": \"0\",\n \"maximum\": \"50\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.list\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ }\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"id\": \"youtube.subscriptions.insert\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"required\": true\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/subscriptions\"\n }\n }\n },\n - \ \"liveChatMessages\": {\n \"methods\": {\n \"delete\": {\n - \ \"id\": \"youtube.liveChatMessages.delete\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"httpMethod\": \"DELETE\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a chat message.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.liveChatMessages.list\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveChatMessageListResponse\"\n },\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the liveChatComment - resource parts that the API response will include. Supported values are id - and snippet.\"\n },\n \"hl\": {\n \"description\": - \"Specifies the localization language in which the system messages should - be returned.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"type\": + \ \"description\": \"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.\"\n + \ },\n \"mode\": {\n \"enum\": [\n \"listMembersModeUnknown\",\n + \ \"updates\",\n \"all_current\"\n ],\n + \ \"default\": \"all_current\",\n \"location\": \"query\",\n + \ \"description\": \"Parameter that specifies which channel members + to return.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return only members that joined after the first call with + this mode was made.\",\n \"Return all current members, from + newest to oldest.\"\n ],\n \"type\": \"string\"\n + \ },\n \"filterByMemberChannelId\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"liveChatId\": - {\n \"required\": true,\n \"description\": \"The - id of the live chat for which comments should be returned.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"minimum\": \"200\",\n \"type\": \"integer\",\n - \ \"maximum\": \"2000\",\n \"format\": \"uint32\",\n - \ \"default\": \"500\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\"\n },\n - \ \"profileImageSize\": {\n \"location\": \"query\",\n - \ \"minimum\": \"16\",\n \"description\": \"Specifies - the size of the profile image that should be returned for each user.\",\n - \ \"type\": \"integer\",\n \"maximum\": \"720\",\n - \ \"format\": \"uint32\"\n }\n }\n },\n - \ \"insert\": {\n \"id\": \"youtube.liveChatMessages.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"description\": \"Inserts a - new resource into this collection.\",\n \"request\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/messages\"\n }\n - \ }\n },\n \"commentThreads\": {\n \"methods\": {\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"httpMethod\": \"POST\"\n },\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"id\": \"youtube.commentThreads.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"minimum\": \"1\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"default\": \"20\",\n - \ \"maximum\": \"100\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\"\n },\n - \ \"searchTerms\": {\n \"type\": \"string\",\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"Returns the comment threads with the given IDs for Stubby or Apiary.\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n + \"Comma separated list of channel IDs. Only data about members that are part + of this list will be included in the response.\"\n }\n }\n + \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": + {\n \"list\": {\n \"id\": \"youtube.membershipsLevels.list\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n + \ \"path\": \"youtube/v3/membershipsLevels\",\n \"response\": + {\n \"$ref\": \"MembershipsLevelListResponse\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n + \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"part\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies a comma-separated list of one or more commentThread resource - properties that the API response will include.\",\n \"location\": - \"query\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of the specified video.\"\n },\n - \ \"moderationStatus\": {\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"description\": \"Limits the returned comment - threads to those with the specified moderation status. Not compatible with - the 'id' filter. Valid values: published, heldForReview, likelySpam.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by - a moderator.\",\n \"\",\n \"The comment is unfit - for display.\"\n ],\n \"default\": \"published\"\n - \ },\n \"allThreadsRelatedToChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Returns the comment threads - of all videos of the channel and the channel comments as well.\",\n \"location\": - \"query\"\n },\n \"textFormat\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"textFormatUnspecified\",\n \"html\",\n \"plainText\"\n - \ ],\n \"description\": \"The requested text format - for the returned comments.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"default\": \"html\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\",\n \"type\": \"string\"\n },\n - \ \"order\": {\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"type\": \"string\",\n \"default\": \"time\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ]\n }\n },\n \"response\": - {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/commentThreads\"\n - \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n - \ \"list\": {\n \"parameters\": {\n \"hl\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"en_US\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the i18nRegion - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"repeated\": true,\n \"location\": + parameter specifies the membershipsLevel resource parts that the API response + will include. Supported values are id and snippet.\",\n \"required\": + true\n }\n }\n }\n }\n },\n \"videoAbuseReportReasons\": + {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n + \ \"parameters\": {\n \"hl\": {\n \"default\": + \"en-US\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/i18nRegions\",\n \"flatPath\": - \"youtube/v3/i18nRegions\"\n }\n }\n },\n \"abuseReports\": - {\n \"methods\": {\n \"insert\": {\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"type\": + true,\n \"description\": \"The *part* parameter specifies the + videoCategory resource parts that the API response will include. Supported + values are id and snippet.\",\n \"repeated\": true\n }\n + \ },\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"response\": + {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n }\n + \ }\n }\n },\n \"commentThreads\": {\n \"methods\": + {\n \"list\": {\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"parameters\": {\n \"textFormat\": + {\n \"enumDescriptions\": [\n \"\",\n \"Returns + the comments in HTML format. This is the default value.\",\n \"Returns + the comments in plain text format.\"\n ],\n \"type\": + \"string\",\n \"description\": \"The requested text format for + the returned comments.\",\n \"default\": \"html\",\n \"enum\": + [\n \"textFormatUnspecified\",\n \"html\",\n + \ \"plainText\"\n ],\n \"location\": + \"query\"\n },\n \"id\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true\n - \ }\n },\n \"request\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"description\": \"Inserts a new - resource into this collection.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/abuseReports\",\n \"id\": - \"youtube.abuseReports.insert\",\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"channels\": - {\n \"methods\": {\n \"update\": {\n \"path\": \"youtube/v3/channels\",\n - \ \"description\": \"Updates an existing resource.\",\n \"flatPath\": - \"youtube/v3/channels\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channels.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"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.\",\n \"location\": + \"Returns the comment threads with the given IDs for Stubby or Apiary.\",\n + \ \"repeated\": true\n },\n \"order\": {\n + \ \"default\": \"time\",\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Order + by time.\",\n \"Order by relevance.\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"orderUnspecified\",\n + \ \"time\",\n \"relevance\"\n ]\n + \ },\n \"moderationStatus\": {\n \"enum\": + [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n + \ \"rejected\"\n ],\n \"default\": + \"published\",\n \"enumDescriptions\": [\n \"The + comment is available for public display.\",\n \"The comment + is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Limits the returned comment threads to those with the specified moderation + status. Not compatible with the 'id' filter. Valid values: published, heldForReview, + likelySpam.\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true,\n \"description\": \"The *part* parameter specifies a comma-separated + list of one or more commentThread resource properties that the API response + will include.\",\n \"repeated\": true\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"Returns the comment threads + of the specified video.\",\n \"location\": \"query\"\n },\n + \ \"allThreadsRelatedToChannelId\": {\n \"type\": \"string\",\n + \ \"description\": \"Returns the comment threads of all videos + of the channel and the channel comments as well.\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"maximum\": \"100\",\n \"location\": + \"query\",\n \"default\": \"20\",\n \"minimum\": + \"1\"\n },\n \"searchTerms\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Limits the returned comment threads to those matching the specified key + words. Not compatible with the 'id' filter.\"\n },\n \"channelId\": + {\n \"description\": \"Returns the comment threads for all the + channel comments (ie does not include comments left on videos).\",\n \"location\": \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"Channel\"\n },\n - \ \"response\": {\n \"$ref\": \"Channel\"\n }\n - \ },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"path\": \"youtube/v3/channels\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.channels.list\",\n - \ \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"parameters\": {\n \"mySubscribers\": - {\n \"location\": \"query\",\n \"description\": - \"Return the channels subscribed to the authenticated user\",\n \"type\": - \"boolean\"\n },\n \"categoryId\": {\n \"location\": - \"query\",\n \"description\": \"Return the channels within the - specified guide category ID.\",\n \"type\": \"string\"\n },\n - \ \"forUsername\": {\n \"description\": \"Return the - channel associated with a YouTube username.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n },\n \"maxResults\": + \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"id\": + \"youtube.commentThreads.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/commentThreads\",\n \"response\": + {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"httpMethod\": + \"GET\",\n \"parameterOrder\": [\n \"part\"\n ]\n + \ },\n \"insert\": {\n \"description\": \"Inserts a + new resource into this collection.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"response\": + {\n \"$ref\": \"CommentThread\"\n },\n \"flatPath\": + \"youtube/v3/commentThreads\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.commentThreads.insert\",\n \"path\": + \"youtube/v3/commentThreads\",\n \"request\": {\n \"$ref\": + \"CommentThread\"\n },\n \"parameters\": {\n \"part\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"repeated\": true\n }\n }\n }\n + \ }\n },\n \"liveBroadcasts\": {\n \"methods\": {\n \"list\": + {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"description\": + \"Retrieve the list of broadcasts associated with the given channel.\",\n + \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n + \ },\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": + \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"type\": - \"integer\",\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\"\n },\n \"id\": - {\n \"description\": \"Return the channels with the specified - IDs.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"managedByMe\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channels managed by the authenticated - user.\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n + \ \"maxResults\": {\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"location\": \"query\",\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"default\": + \"5\",\n \"maximum\": \"50\",\n \"minimum\": \"0\"\n + \ },\n \"broadcastStatus\": {\n \"description\": + \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"enum\": + [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n + \ \"active\",\n \"upcoming\",\n \"completed\"\n + \ ],\n \"type\": \"string\",\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all broadcasts.\",\n \"Return current + live broadcasts.\",\n \"Return broadcasts that have not yet + started.\",\n \"Return broadcasts that have already ended.\"\n + \ ]\n },\n \"onBehalfOfContentOwner\": {\n + \ \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"description\": \"Return the ids of channels owned by the - authenticated user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"boolean\",\n \"location\": \"query\"\n + \ },\n \"id\": {\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return broadcasts with the given ids from + Stubby or Apiary.\"\n },\n \"broadcastType\": {\n \"default\": + \"event\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all broadcasts.\",\n \"Return only + scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n + \ ],\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n + \ \"all\",\n \"event\",\n \"persistent\"\n + \ ],\n \"description\": \"Return only broadcasts + with the selected type.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"description\": + \"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, status + and statistics.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"required\": + true\n }\n },\n \"id\": \"youtube.liveBroadcasts.list\"\n + \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true,\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Inserts a new stream for the authenticated user.\",\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"id\": + \"youtube.liveBroadcasts.insert\",\n \"request\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"flatPath\": + \"youtube/v3/liveBroadcasts\"\n },\n \"bind\": {\n \"flatPath\": + \"youtube/v3/liveBroadcasts/bind\",\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n + \ \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\",\n \"description\": \"Broadcast to bind to the stream\"\n + \ },\n \"streamId\": {\n \"description\": + \"Stream to bind, if not set unbind the current one.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify @@ -10434,63 +6674,7 @@ interactions: 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.\",\n \"location\": \"query\"\n }\n - \ },\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/channels\",\n \"description\": \"Retrieves a list of - resources, possibly filtered.\"\n }\n }\n },\n \"activities\": - {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"home\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"publishedBefore\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"publishedAfter\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"minimum\": \"0\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.activities.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"path\": \"youtube/v3/activities\",\n \"response\": {\n - \ \"$ref\": \"ActivityListResponse\"\n }\n }\n }\n - \ },\n \"playlists\": {\n \"methods\": {\n \"insert\": {\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"path\": \"youtube/v3/playlists\",\n \"request\": {\n - \ \"$ref\": \"Playlist\"\n },\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.playlists.insert\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n + YouTube content owner.\",\n \"location\": \"query\"\n },\n \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* @@ -10505,94 +6689,58 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.update\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"flatPath\": \"youtube/v3/playlists\"\n },\n \"delete\": - {\n \"description\": \"Deletes a resource.\",\n \"id\": - \"youtube.playlists.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n }\n },\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlists\",\n \"path\": - \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the playlists owned by the authenticated - user.\"\n },\n \"id\": {\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"This - parameter can only be used in a properly authorized request. *Note:* This - parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* + for each separate channel.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"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.\"\n }\n },\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"id\",\n \"part\"\n + \ ],\n \"id\": \"youtube.liveBroadcasts.bind\",\n \"description\": + \"Bind a broadcast to a stream.\",\n \"httpMethod\": \"POST\"\n },\n + \ \"delete\": {\n \"description\": \"Delete a given broadcast.\",\n + \ \"id\": \"youtube.liveBroadcasts.delete\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"description\": \"Broadcast to delete.\",\n \"location\": + \"query\"\n }\n },\n \"httpMethod\": \"DELETE\"\n + \ },\n \"transition\": {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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 @@ -10604,121 +6752,47 @@ interactions: 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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return content in specified language\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlists owned by the specified channel ID.\"\n },\n - \ \"maxResults\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The *maxResults* parameter - specifies the maximum number of items that should be returned in the result - set.\",\n \"default\": \"5\",\n \"maximum\": \"50\",\n - \ \"location\": \"query\",\n \"minimum\": \"0\"\n - \ }\n }\n }\n }\n },\n \"liveChatModerators\": - {\n \"methods\": {\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.liveChatModerators.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"request\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"required\": true\n }\n }\n },\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the liveChatModerator resource parts that - the API response will include. Supported values are id and snippet.\",\n \"repeated\": - true\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"maximum\": \"50\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n },\n \"liveChatId\": - {\n \"required\": true,\n \"description\": \"The - id of the live chat for which moderators should be returned.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveChatModeratorListResponse\"\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.liveChatModerators.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.liveChatModerators.delete\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + for each separate channel.\",\n \"type\": \"string\"\n },\n + \ \"id\": {\n \"location\": \"query\",\n \"required\": + true,\n \"description\": \"Broadcast to transition.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"broadcastStatus\": + {\n \"description\": \"The status to which the broadcast is going + to transition.\",\n \"type\": \"string\",\n \"enum\": + [\n \"statusUnspecified\",\n \"testing\",\n + \ \"live\",\n \"complete\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Start + testing the broadcast. YouTube transmits video to the broadcast's monitor + stream. Note that you can only transition a broadcast to the testing state + if its contentDetails.monitorStream.enableMonitorStream property is set to + true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The + broadcast is over. YouTube stops transmitting video.\"\n ],\n + \ \"location\": \"query\",\n \"required\": true\n + \ }\n },\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n + \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"httpMethod\": + \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat moderator.\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": - \"DELETE\"\n }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"response\": - {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"parameters\": - {\n \"maxResults\": {\n \"type\": \"integer\",\n \"maximum\": - \"50\",\n \"minimum\": \"1\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"hl\": {\n \"description\": \"Return rendered funding - amounts in specified language.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the superChatEvent resource parts that the API - response will include. This parameter is currently not supported.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/superChatEvents\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.superChatEvents.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"insert\": - {\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"supportsMediaUpload\": - true,\n \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"274877906944\",\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": - true\n },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/videos\"\n }\n - \ }\n },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + \ \"description\": \"Transition a broadcast to a given status.\",\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"parameterOrder\": + [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n + \ ]\n },\n \"update\": {\n \"httpMethod\": + \"PUT\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": \"query\",\n \"description\": \"This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* @@ -10734,47 +6808,8 @@ interactions: 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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"autoLevels\": {\n - \ \"description\": \"Should auto-levels be applied to the upload.\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"stabilize\": {\n \"location\": - \"query\",\n \"description\": \"Should stabilize be applied to - the upload.\",\n \"type\": \"boolean\"\n },\n \"notifySubscribers\": - {\n \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\",\n \"type\": - \"boolean\",\n \"default\": \"true\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/videos\",\n - \ \"id\": \"youtube.videos.insert\",\n \"response\": {\n - \ \"$ref\": \"Video\"\n }\n },\n \"getRating\": - {\n \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/videos/getRating\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.videos.getRating\",\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/videos/getRating\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"description\": \"*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. @@ -10783,94 +6818,100 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieves the ratings that the authorized user - gave to a list of specified videos.\"\n },\n \"list\": {\n \"response\": - {\n \"$ref\": \"VideoListResponse\"\n },\n \"flatPath\": - \"youtube/v3/videos\",\n \"id\": \"youtube.videos.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Return - videos with the given ids.\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"part\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true,\n \"description\": - \"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.\",\n - \ \"location\": \"query\"\n },\n \"locale\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"location\": \"query\"\n },\n \"maxWidth\": - {\n \"format\": \"int32\",\n \"maximum\": \"8192\",\n - \ \"location\": \"query\",\n \"minimum\": \"72\",\n - \ \"description\": \"Return the player with maximum height specified - in\",\n \"type\": \"integer\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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 + owner.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"required\": true\n }\n + \ },\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"id\": + \"youtube.liveBroadcasts.update\",\n \"description\": \"Updates an + existing broadcast for the authenticated user.\",\n \"request\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"insertCuepoint\": + {\n \"parameterOrder\": [],\n \"httpMethod\": \"POST\",\n + \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"description\": + \"Insert cuepoints in a broadcast\",\n \"response\": {\n \"$ref\": + \"Cuepoint\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n + \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"request\": + {\n \"$ref\": \"Cuepoint\"\n },\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"Broadcast + to insert ads to, or equivalently `external_video_id` for internal use.\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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 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.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"minimum\": \"1\",\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"default\": \"5\"\n - \ },\n \"chart\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the videos that are in the specified - chart.\",\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ]\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"regionCode\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Use a chart that is specific to the specified region\"\n },\n - \ \"videoCategoryId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Use - chart that is specific to the specified video category\",\n \"default\": - \"0\"\n },\n \"myRating\": {\n \"description\": - \"Return videos liked/disliked by the authenticated user. Does not support - RateType.RATED_TYPE_NONE.\",\n \"type\": \"string\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"location\": \"query\"\n },\n - \ \"maxHeight\": {\n \"type\": \"integer\",\n \"minimum\": - \"72\",\n \"format\": \"int32\",\n \"location\": - \"query\",\n \"maximum\": \"8192\"\n }\n },\n - \ \"path\": \"youtube/v3/videos\",\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ },\n \"reportAbuse\": {\n \"path\": \"youtube/v3/videos/reportAbuse\",\n + 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.\",\n \"type\": \"string\"\n }\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n }\n }\n },\n \"channelSections\": {\n \"methods\": + {\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/channelSections\",\n + \ \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n + \ \"id\": \"youtube.channelSections.delete\",\n \"flatPath\": + \"youtube/v3/channelSections\",\n \"description\": \"Deletes a resource.\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": + \ ]\n },\n \"insert\": {\n \"response\": {\n + \ \"$ref\": \"ChannelSection\"\n },\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -10879,31 +6920,38 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Report abuse - for a video.\",\n \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n - \ },\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"id\": \"youtube.videos.reportAbuse\"\n },\n \"rate\": - {\n \"parameters\": {\n \"rating\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"description\": - \"Adds a like or dislike rating to a video or removes a rating from a video.\",\n - \ \"path\": \"youtube/v3/videos/rate\",\n \"id\": \"youtube.videos.rate\",\n + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"path\": \"youtube/v3/channelSections\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": + \"youtube.channelSections.insert\",\n \"request\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/videos/rate\"\n },\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + \ ],\n \"httpMethod\": \"POST\",\n \"description\": + \"Inserts a new resource into this collection.\"\n },\n \"update\": + {\n \"httpMethod\": \"PUT\",\n \"parameters\": {\n \"part\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"required\": true,\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -10912,91 +6960,75 @@ interactions: content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.videos.delete\",\n - \ \"path\": \"youtube/v3/videos\"\n },\n \"update\": - {\n \"description\": \"Updates an existing resource.\",\n \"id\": - \"youtube.videos.update\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Video\"\n - \ },\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"flatPath\": \"youtube/v3/videos\",\n \"path\": - \"youtube/v3/videos\",\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"search\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.search.list\",\n \"parameters\": {\n - \ \"forDeveloper\": {\n \"location\": \"query\",\n - \ \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"forContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Search owned by a content owner.\"\n },\n \"order\": - {\n \"location\": \"query\",\n \"default\": \"relevance\",\n - \ \"type\": \"string\",\n \"description\": \"Sort - order of the results.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ]\n - \ },\n \"location\": {\n \"description\": - \"Filter on location of the video\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"videoCaption\": - {\n \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ]\n - \ },\n \"videoCategoryId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on videos in a specific category.\"\n },\n \"onBehalfOfContentOwner\": + individual channel. The CMS account that the user authenticates with must + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Updates an existing resource.\",\n + \ \"id\": \"youtube.channelSections.update\",\n \"path\": + \"youtube/v3/channelSections\",\n \"request\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"response\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"parameterOrder\": [\n \"part\"\n + \ ]\n },\n \"list\": {\n \"response\": {\n + \ \"$ref\": \"ChannelSectionListResponse\"\n },\n \"httpMethod\": + \"GET\",\n \"flatPath\": \"youtube/v3/channelSections\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"id\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n + \ \"location\": \"query\"\n },\n \"mine\": + {\n \"description\": \"Return the ChannelSections owned by the + authenticated user.\",\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"hl\": {\n \"location\": + \"query\",\n \"description\": \"Return content in specified language\",\n + \ \"type\": \"string\"\n },\n \"part\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"required\": true,\n \"description\": \"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.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return the ChannelSections owned by the specified channel ID.\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"id\": \"youtube.channelSections.list\",\n \"path\": \"youtube/v3/channelSections\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"parameterOrder\": [\n \"part\"\n ]\n }\n + \ }\n },\n \"captions\": {\n \"methods\": {\n \"download\": + {\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"useMediaDownloadService\": + true,\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"supportsMediaDownload\": true,\n \"parameters\": {\n + \ \"tfmt\": {\n \"description\": \"Convert the captions + into this format. Supported options are sbv, srt, and vtt.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": + {\n \"description\": \"ID of the Google+ Page for the channel + that the request is be on behalf of\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"path\",\n \"description\": \"The + ID of the caption track to download, required for One Platform.\"\n },\n + \ \"tlang\": {\n \"description\": \"tlang is the language + code; machine translate the captions into this language.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify @@ -11005,178 +7037,23 @@ interactions: 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.\",\n \"location\": \"query\"\n },\n - \ \"videoType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos.\",\n \"Only retrieve movies.\",\n - \ \"Only retrieve episodes of shows.\"\n ],\n \"location\": - \"query\",\n \"description\": \"Filter on videos of a specific - type.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ]\n },\n \"publishedBefore\": - {\n \"type\": \"string\",\n \"format\": \"google-datetime\",\n - \ \"description\": \"Filter on resources published before this - date.\",\n \"location\": \"query\"\n },\n \"publishedAfter\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on resources published after this date.\",\n \"type\": - \"string\",\n \"format\": \"google-datetime\"\n },\n - \ \"q\": {\n \"type\": \"string\",\n \"description\": - \"Textual search terms to match.\",\n \"location\": \"query\"\n - \ },\n \"safeSearch\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"enum\": - [\n \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"default\": \"moderate\",\n \"description\": \"Indicates - whether the search results should include restricted content as well as standard - content.\"\n },\n \"forMine\": {\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"eventType\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on the livestream status of the videos.\",\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n - \ },\n \"videoDefinition\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"any\",\n \"standard\",\n \"high\"\n - \ ],\n \"enumDescriptions\": [\n \"Return - all videos, regardless of their resolution.\",\n \"Only retrieve - videos in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"description\": \"Filter on the definition - of the videos.\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"description\": \"Restrict results to a particular - set of resource types from One Platform.\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"description\": - \"Display the content as seen by viewers in this country.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Filter on resources belonging - to this channelId.\",\n \"type\": \"string\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"videoDimension\": - {\n \"enumDescriptions\": [\n \"Include both 3D - and non-3D videos in returned results. This is the default value.\",\n \"Restrict - search results to exclude 3D videos.\",\n \"Restrict search - results to only include 3D videos.\"\n ],\n \"description\": - \"Filter on 3d videos.\",\n \"location\": \"query\",\n \"enum\": - [\n \"any\",\n \"2d\",\n \"3d\"\n - \ ],\n \"type\": \"string\"\n },\n \"topicId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Restrict results to a particular topic.\"\n - \ },\n \"channelType\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"description\": \"Add - a filter on the channel search.\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ]\n },\n - \ \"relatedToVideoId\": {\n \"location\": \"query\",\n - \ \"description\": \"Search related to a resource.\",\n \"type\": - \"string\"\n },\n \"locationRadius\": {\n \"description\": - \"Filter on distance from the location (specified above).\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoSyndicated\": - {\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, syndicated or not.\",\n \"Only - retrieve syndicated videos.\"\n ],\n \"description\": - \"Filter on syndicated videos.\",\n \"location\": \"query\"\n - \ },\n \"videoDuration\": {\n \"enum\": - [\n \"videoDurationUnspecified\",\n \"any\",\n - \ \"short\",\n \"medium\",\n \"long\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter video search results based on their duration. - This is the default value.\",\n \"Only include videos that - are less than four minutes long.\",\n \"Only include videos - that are between four and 20 minutes long (inclusive).\",\n \"Only - include videos longer than 20 minutes.\"\n ],\n \"location\": - \"query\",\n \"description\": \"Filter on the duration of the - videos.\",\n \"type\": \"string\"\n },\n \"videoEmbeddable\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos, embeddable or not.\",\n \"Only retrieve embeddable - videos.\"\n ],\n \"description\": \"Filter on embeddable - videos.\",\n \"location\": \"query\",\n \"enum\": - [\n \"videoEmbeddableUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"type\": \"string\"\n - \ },\n \"relevanceLanguage\": {\n \"description\": - \"Return results relevant to this language.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"default\": \"5\",\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"format\": \"uint32\"\n },\n - \ \"videoLicense\": {\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on the license of the videos.\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ]\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"SearchListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/search\",\n \"path\": \"youtube/v3/search\",\n - \ \"description\": \"Retrieves a list of search resources\"\n }\n - \ }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"parameters\": {\n \"maxResults\": - {\n \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\",\n \"maximum\": - \"1000\",\n \"minimum\": \"0\"\n },\n \"hasAccessToLevel\": - {\n \"description\": \"Filter members in the results set to the - ones that have access to a level.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"filterByMemberChannelId\": {\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mode\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"enum\": - [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"default\": - \"all_current\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Retrieves - a list of members that match the request criteria for a channel.\",\n \"path\": - \"youtube/v3/members\",\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.members.list\",\n \"flatPath\": \"youtube/v3/members\"\n - \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\",\n \"location\": \"query\"\n + \ }\n },\n \"path\": \"youtube/v3/captions/{id}\",\n + \ \"id\": \"youtube.captions.download\",\n \"description\": + \"Downloads a caption track.\"\n },\n \"delete\": {\n \"httpMethod\": + \"DELETE\",\n \"id\": \"youtube.captions.delete\",\n \"path\": + \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"videoId\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"Returns the captions for the specified video.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \ \"flatPath\": \"youtube/v3/captions\",\n \"description\": + \"Deletes a resource.\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"parameters\": {\n \"onBehalfOf\": {\n + \ \"description\": \"ID of the Google+ Page for the channel that + the request is be on behalf of\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"*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 @@ -11185,55 +7062,22 @@ interactions: content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Returns the captions with the given IDs for - Stubby or Apiary.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true,\n \"description\": - \"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.\"\n }\n - \ },\n \"id\": \"youtube.captions.list\",\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ],\n \"response\": - {\n \"$ref\": \"CaptionListResponse\"\n },\n \"path\": - \"youtube/v3/captions\",\n \"description\": \"Retrieves a list of - resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/captions\"\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"id\": - \"youtube.captions.delete\"\n },\n \"update\": {\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n - \ \"resumable\": {\n \"multipart\": true,\n \"path\": - \"/resumable/upload/youtube/v3/captions\"\n }\n },\n - \ \"maxSize\": \"104857600\",\n \"accept\": [\n \"text/xml\",\n + must be linked to the specified YouTube content owner.\"\n }\n + \ }\n },\n \"insert\": {\n \"response\": {\n + \ \"$ref\": \"Caption\"\n },\n \"mediaUpload\": + {\n \"maxSize\": \"104857600\",\n \"protocols\": {\n + \ \"simple\": {\n \"multipart\": true,\n \"path\": + \"/upload/youtube/v3/captions\"\n },\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n + \ }\n },\n \"accept\": [\n \"text/xml\",\n \ \"application/octet-stream\",\n \"*/*\"\n ]\n - \ },\n \"supportsMediaUpload\": true,\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"supportsMediaUpload\": true,\n \"path\": \"youtube/v3/captions\",\n + \ \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": + {\n \"onBehalfOf\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"ID of + the Google+ Page for the channel that the request is be on behalf of\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -11243,168 +7087,73 @@ interactions: channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": + \"string\",\n \"location\": \"query\"\n },\n \"sync\": {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"type\": \"string\"\n },\n \"sync\": - {\n \"type\": \"boolean\",\n \"description\": \"Extra + \"Extra parameter to allow automatically syncing the uploaded caption/transcript + with the audio.\",\n \"type\": \"boolean\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"The *part* parameter specifies the caption + resource parts that the API response will include. Set the parameter value + to snippet.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts + a new resource into this collection.\",\n \"id\": \"youtube.captions.insert\",\n + \ \"request\": {\n \"$ref\": \"Caption\"\n }\n + \ },\n \"update\": {\n \"description\": \"Updates an + existing resource.\",\n \"supportsMediaUpload\": true,\n \"httpMethod\": + \"PUT\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*Note:* + This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* + parameter indicates that the request's authorization credentials identify + a YouTube CMS user who is acting on behalf of the content owner specified + in the parameter value. This parameter is intended for YouTube content partners + that own and manage many different YouTube channels. It allows content owners + to authenticate once and get access to all their video and channel data, without + having to provide authentication credentials for each individual channel. + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\",\n \"location\": \"query\"\n + \ },\n \"sync\": {\n \"description\": \"Extra parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true\n }\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"httpMethod\": \"PUT\",\n \"id\": \"youtube.captions.update\",\n - \ \"path\": \"youtube/v3/captions\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Caption\"\n - \ }\n },\n \"download\": {\n \"description\": - \"Downloads a caption track.\",\n \"id\": \"youtube.captions.download\",\n - \ \"supportsMediaDownload\": true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + the audio.\",\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"part\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true,\n \"repeated\": true\n },\n \"onBehalfOf\": + {\n \"location\": \"query\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n + \ \"type\": \"string\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"id\": \"youtube.captions.update\",\n \"path\": \"youtube/v3/captions\",\n + \ \"response\": {\n \"$ref\": \"Caption\"\n },\n + \ \"request\": {\n \"$ref\": \"Caption\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"useMediaDownloadService\": true,\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"tfmt\": {\n \"description\": - \"Convert the captions into this format. Supported options are sbv, srt, and - vtt.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"tlang\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"tlang is the language code; machine translate the captions into this language.\"\n - \ },\n \"id\": {\n \"description\": \"The - ID of the caption track to download, required for One Platform.\",\n \"location\": - \"path\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/captions/{id}\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/captions/{id}\"\n },\n - \ \"insert\": {\n \"description\": \"Inserts a new resource - into this collection.\",\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"supportsMediaUpload\": true,\n \"id\": \"youtube.captions.insert\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ },\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n - \ },\n \"response\": {\n \"$ref\": \"Caption\"\n - \ },\n \"request\": {\n \"$ref\": \"Caption\"\n - \ },\n \"flatPath\": \"youtube/v3/captions\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/captions\"\n - \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API response will include. Supported values are linkingToken, - status, and snippet.\"\n },\n \"linkingToken\": {\n + \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n + \ \"application/octet-stream\",\n \"*/*\"\n ],\n + \ \"protocols\": {\n \"simple\": {\n \"path\": + \"/upload/youtube/v3/captions\",\n \"multipart\": true\n },\n + \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n + \ \"multipart\": true\n }\n },\n \"maxSize\": + \"104857600\"\n }\n },\n \"list\": {\n \"path\": + \"youtube/v3/captions\",\n \"id\": \"youtube.captions.list\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": + \"GET\",\n \"parameterOrder\": [\n \"part\",\n \"videoId\"\n + \ ],\n \"parameters\": {\n \"onBehalfOf\": {\n \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Get a third party link with the given linking - token.\"\n },\n \"type\": {\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"description\": \"Get a third party link - of the given type.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"location\": \"query\"\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"id\": \"youtube.thirdPartyLinks.list\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"delete\": {\n - \ \"id\": \"youtube.thirdPartyLinks.delete\",\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a resource.\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Do not use. Required for compatibility.\",\n - \ \"location\": \"query\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"description\": \"Type of the link to be - deleted.\"\n },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"linkingToken\": {\n \"location\": \"query\",\n - \ \"description\": \"Delete the partner links with the given linking - token.\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n - \ },\n \"update\": {\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Channel ID to which changes should - be applied, for delegation.\",\n \"type\": \"string\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"path\": - \"youtube/v3/thirdPartyLinks\"\n },\n \"insert\": {\n \"id\": - \"youtube.thirdPartyLinks.insert\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Inserts - a new resource into this collection.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"channelSections\": {\n \"methods\": {\n \"delete\": - {\n \"flatPath\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": + \ \"description\": \"ID of the Google+ Page for the channel that + the request is on behalf of.\"\n },\n \"videoId\": {\n + \ \"type\": \"string\",\n \"description\": \"Returns + the captions for the specified video.\",\n \"required\": true,\n + \ \"location\": \"query\"\n },\n \"part\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n + \ \"repeated\": true,\n \"type\": \"string\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -11412,69 +7161,39 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"id\": - \"youtube.channelSections.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"description\": - \"Deletes a resource.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"insert\": {\n \"path\": \"youtube/v3/channelSections\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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 + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"description\": \"Returns the captions with the given IDs for + Stubby or Apiary.\",\n \"location\": \"query\"\n }\n + \ },\n \"response\": {\n \"$ref\": \"CaptionListResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/captions\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n }\n }\n },\n \"watermarks\": {\n \"methods\": + {\n \"unset\": {\n \"parameterOrder\": [\n \"channelId\"\n + \ ],\n \"parameters\": {\n \"channelId\": {\n + \ \"type\": \"string\",\n \"required\": true,\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"id\": - \"youtube.channelSections.insert\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\"\n },\n \"update\": {\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n + owner.\",\n \"location\": \"query\"\n }\n },\n + \ \"description\": \"Allows removal of channel watermark.\",\n \"id\": + \"youtube.watermarks.unset\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/watermarks/unset\",\n \"httpMethod\": + \"POST\",\n \"flatPath\": \"youtube/v3/watermarks/unset\"\n },\n + \ \"set\": {\n \"description\": \"Allows upload of watermark + image and setting it for a channel.\",\n \"path\": \"youtube/v3/watermarks/set\",\n + \ \"id\": \"youtube.watermarks.set\",\n \"parameters\": {\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \ \"description\": \"*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 @@ -11484,104 +7203,189 @@ interactions: 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.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/channelSections\",\n - \ \"id\": \"youtube.channelSections.update\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n }\n },\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"scopes\": + owner.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"Return the ChannelSections with the - given IDs for Stubby or Apiary.\"\n },\n \"mine\": {\n - \ \"location\": \"query\",\n \"description\": \"Return - the ChannelSections owned by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\"\n },\n \"hl\": + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"channelId\"\n + \ ],\n \"mediaUpload\": {\n \"maxSize\": \"10485760\",\n + \ \"protocols\": {\n \"resumable\": {\n \"multipart\": + true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n + \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n + \ \"multipart\": true\n }\n },\n \"accept\": + [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n + \ ]\n },\n \"supportsMediaUpload\": true,\n \"flatPath\": + \"youtube/v3/watermarks/set\",\n \"httpMethod\": \"POST\",\n \"request\": + {\n \"$ref\": \"InvideoBranding\"\n }\n }\n }\n + \ },\n \"youtube\": {\n \"resources\": {\n \"v3\": {\n \"methods\": + {\n \"updateCommentThreads\": {\n \"request\": {\n + \ \"$ref\": \"CommentThread\"\n },\n \"id\": + \"youtube.youtube.v3.updateCommentThreads\",\n \"response\": + {\n \"$ref\": \"CommentThread\"\n },\n \"description\": + \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"description\": + \"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.\",\n \"location\": \"query\"\n + \ }\n },\n \"parameterOrder\": [],\n + \ \"path\": \"youtube/v3/commentThreads\",\n \"httpMethod\": + \"PUT\"\n }\n }\n }\n }\n },\n \"search\": + {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves + a list of search resources\",\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"videoDuration\": {\n \"enum\": [\n \"videoDurationUnspecified\",\n + \ \"any\",\n \"short\",\n \"medium\",\n + \ \"long\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Do not filter video search results + based on their duration. This is the default value.\",\n \"Only + include videos that are less than four minutes long.\",\n \"Only + include videos that are between four and 20 minutes long (inclusive).\",\n + \ \"Only include videos longer than 20 minutes.\"\n ],\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Filter on the duration of the videos.\"\n + \ },\n \"videoLicense\": {\n \"enumDescriptions\": + [\n \"Return all videos, regardless of which license they have, + that match the query parameters.\",\n \"Only return videos + that have the standard YouTube license.\",\n \"Only return + videos that have a Creative Commons license. Users can reuse videos with this + license in other videos that they create. Learn more.\"\n ],\n + \ \"enum\": [\n \"any\",\n \"youtube\",\n + \ \"creativeCommon\"\n ],\n \"description\": + \"Filter on the license of the videos.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"videoSyndicated\": + {\n \"description\": \"Filter on syndicated videos.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all videos, syndicated or not.\",\n \"Only + retrieve syndicated videos.\"\n ],\n \"enum\": [\n + \ \"videoSyndicatedUnspecified\",\n \"any\",\n + \ \"true\"\n ],\n \"location\": \"query\"\n + \ },\n \"publishedBefore\": {\n \"format\": + \"google-datetime\",\n \"description\": \"Filter on resources + published before this date.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"channelType\": {\n \"enum\": + [\n \"channelTypeUnspecified\",\n \"any\",\n + \ \"show\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return all channels.\",\n \"Only + retrieve shows.\"\n ],\n \"description\": \"Add + a filter on the channel search.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\"\n },\n \"relatedToVideoId\": + {\n \"description\": \"Search related to a resource.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"channelId\": + {\n \"description\": \"Filter on resources belonging to this + channelId.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"videoDimension\": {\n \"enumDescriptions\": + [\n \"Include both 3D and non-3D videos in returned results. + This is the default value.\",\n \"Restrict search results to + exclude 3D videos.\",\n \"Restrict search results to only include + 3D videos.\"\n ],\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Filter on 3d videos.\",\n \"enum\": + [\n \"any\",\n \"2d\",\n \"3d\"\n + \ ]\n },\n \"videoCategoryId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Filter on videos in a specific category.\"\n },\n \"videoCaption\": + {\n \"enum\": [\n \"videoCaptionUnspecified\",\n + \ \"any\",\n \"closedCaption\",\n \"none\"\n + \ ],\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Filter on the presence of captions + on the videos.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Do not filter results based on caption availability.\",\n + \ \"Only include videos that have captions.\",\n \"Only + include videos that do not have captions.\"\n ]\n },\n + \ \"topicId\": {\n \"description\": \"Restrict results + to a particular topic.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"type\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Restrict results to a particular set of resource types from One Platform.\",\n + \ \"repeated\": true\n },\n \"safeSearch\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"default\": \"moderate\",\n \"description\": \"Indicates + whether the search results should include restricted content as well as standard + content.\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n + \ \"none\",\n \"moderate\",\n \"strict\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"YouTube will not filter the search result set.\",\n \"YouTube + will filter some content from search results and, at the least, will filter + content that is restricted in your locale. Based on their content, search + results could be removed from search results or demoted in search results. + This is the default parameter value.\",\n \"YouTube will try + to exclude all restricted content from the search result set. Based on their + content, search results could be removed from search results or demoted in + search results.\"\n ]\n },\n \"regionCode\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return content in specified language\"\n - \ },\n \"channelId\": {\n \"location\": + \ \"description\": \"Display the content as seen by viewers in + this country.\"\n },\n \"location\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n }\n },\n \"id\": \"youtube.channelSections.list\"\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.i18nLanguages.list\",\n \"parameters\": - {\n \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"en_US\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the i18nLanguage - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/i18nLanguages\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"I18nLanguageListResponse\"\n }\n }\n }\n },\n \"tests\": - {\n \"methods\": {\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.tests.insert\",\n - \ \"response\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"path\": \"youtube/v3/tests\",\n \"request\": {\n \"$ref\": - \"TestItem\"\n },\n \"description\": \"POST method.\",\n - \ \"flatPath\": \"youtube/v3/tests\",\n \"parameters\": {\n - \ \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"POST\"\n }\n }\n },\n - \ \"channelBanners\": {\n \"methods\": {\n \"insert\": {\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"parameterOrder\": - [],\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"Filter on location of the video\"\n },\n \"publishedAfter\": + {\n \"description\": \"Filter on resources published after this + date.\",\n \"format\": \"google-datetime\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"forContentOwner\": + {\n \"description\": \"Search owned by a content owner.\",\n + \ \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"order\": {\n \"enum\": [\n \"searchSortUnspecified\",\n + \ \"date\",\n \"rating\",\n \"viewCount\",\n + \ \"relevance\",\n \"title\",\n \"videoCount\"\n + \ ],\n \"description\": \"Sort order of the results.\",\n + \ \"default\": \"relevance\",\n \"enumDescriptions\": + [\n \"\",\n \"Resources are sorted in reverse + chronological order based on the date they were created.\",\n \"Resources + are sorted from highest to lowest rating.\",\n \"Resources + are sorted from highest to lowest number of views.\",\n \"Resources + are sorted based on their relevance to the search query. This is the default + value for this parameter.\",\n \"Resources are sorted alphabetically + by title.\",\n \"Channels are sorted in descending order of + their number of uploaded videos.\"\n ],\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"relevanceLanguage\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return results relevant to this language.\"\n + \ },\n \"forMine\": {\n \"location\": \"query\",\n + \ \"description\": \"Search for the private videos of the authenticated + user.\",\n \"type\": \"boolean\"\n },\n \"videoType\": + {\n \"location\": \"query\",\n \"enum\": [\n \"videoTypeUnspecified\",\n + \ \"any\",\n \"movie\",\n \"episode\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos.\",\n \"Only + retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n + \ ],\n \"description\": \"Filter on videos of a specific + type.\"\n },\n \"videoEmbeddable\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"enum\": + [\n \"videoEmbeddableUnspecified\",\n \"any\",\n + \ \"true\"\n ],\n \"description\": + \"Filter on embeddable videos.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"Return all videos, embeddable or + not.\",\n \"Only retrieve embeddable videos.\"\n ]\n + \ },\n \"forDeveloper\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Restrict the search to only retrieve videos + uploaded using the project id of the authenticated user.\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"location\": + \"query\",\n \"minimum\": \"0\",\n \"default\": + \"5\",\n \"maximum\": \"50\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\"\n },\n \"eventType\": + {\n \"location\": \"query\",\n \"enum\": [\n \"none\",\n + \ \"upcoming\",\n \"live\",\n \"completed\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"Filter on the livestream status of the videos.\",\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n + \ \"The live broadcast is active.\",\n \"The + live broadcast has been completed.\"\n ]\n },\n \"locationRadius\": + {\n \"description\": \"Filter on distance from the location (specified + above).\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"q\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Textual search terms to match.\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -11589,231 +7393,321 @@ interactions: content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"scopes\": + individual channel. The CMS account that the user authenticates with must + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"videoDefinition\": + {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"Return all videos, regardless of their resolution.\",\n + \ \"Only retrieve videos in standard definition.\",\n \"Only + retrieve HD videos.\"\n ],\n \"enum\": [\n \"any\",\n + \ \"standard\",\n \"high\"\n ],\n + \ \"description\": \"Filter on the definition of the videos.\",\n + \ \"location\": \"query\"\n }\n },\n \"flatPath\": + \"youtube/v3/search\",\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n + \ },\n \"id\": \"youtube.search.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"id\": \"youtube.channelBanners.insert\",\n - \ \"mediaUpload\": {\n \"maxSize\": \"6291456\",\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ }\n }\n }\n },\n \"liveChatBans\": {\n \"methods\": - {\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/search\"\n }\n }\n },\n \"liveChatBans\": + {\n \"methods\": {\n \"delete\": {\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n }\n },\n + \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"id\": \"youtube.liveChatBans.delete\",\n \"flatPath\": + \"youtube/v3/liveChat/bans\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"id\": \"youtube.liveChatBans.insert\",\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n + \ \"description\": \"Deletes a chat ban.\",\n \"path\": \"youtube/v3/liveChat/bans\"\n + \ },\n \"insert\": {\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n + \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n },\n + \ \"id\": \"youtube.liveChatBans.insert\",\n \"request\": + {\n \"$ref\": \"LiveChatBan\"\n },\n \"httpMethod\": + \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"required\": true,\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"location\": \"query\"\n }\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/liveChat/bans\"\n }\n }\n },\n + \ \"i18nRegions\": {\n \"methods\": {\n \"list\": {\n \"flatPath\": + \"youtube/v3/i18nRegions\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"parameters\": {\n \"hl\": {\n \"type\": + \"string\",\n \"default\": \"en_US\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"repeated\": + true,\n \"required\": true,\n \"description\": \"The + *part* parameter specifies the i18nRegion resource properties that the API + response will include. Set the parameter value to snippet.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/i18nRegions\",\n + \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.i18nRegions.list\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\"\n }\n }\n + \ },\n \"thirdPartyLinks\": {\n \"methods\": {\n \"update\": + {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"description\": + \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"parameters\": {\n \"part\": {\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API request and response will include. Supported values are linkingToken, + status, and snippet.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true\n },\n \"externalChannelId\": {\n \"location\": + \"query\",\n \"description\": \"Channel ID to which changes should + be applied, for delegation.\",\n \"type\": \"string\"\n }\n + \ },\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.thirdPartyLinks.update\",\n + \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n }\n + \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": + \"query\",\n \"required\": true,\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"The *part* + parameter specifies the thirdPartyLink resource parts that the API response + will include. Supported values are linkingToken, status, and snippet.\"\n + \ },\n \"linkingToken\": {\n \"description\": + \"Get a third party link with the given linking token.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"externalChannelId\": + {\n \"type\": \"string\",\n \"description\": \"Channel + ID to which changes should be applied, for delegation.\",\n \"location\": + \"query\"\n },\n \"type\": {\n \"enum\": + [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"location\": \"query\",\n \"description\": + \"Get a third party link of the given type.\",\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or + about to connect) a channel with a store on a merchandising platform in order + to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n + \ \"type\": \"string\"\n }\n },\n \"httpMethod\": + \"GET\",\n \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n + \ },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"id\": + \"youtube.thirdPartyLinks.list\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\"\n },\n \"insert\": {\n \"request\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"description\": + \"Inserts a new resource into this collection.\",\n \"parameters\": + {\n \"externalChannelId\": {\n \"description\": \"Channel + ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API request and response will include. Supported values are linkingToken, + status, and snippet.\",\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"id\": \"youtube.thirdPartyLinks.insert\",\n \"httpMethod\": + \"POST\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"response\": + {\n \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"delete\": + {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": + {\n \"externalChannelId\": {\n \"description\": \"Channel + ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"linkingToken\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Delete the partner links with the given linking + token.\",\n \"required\": true\n },\n \"type\": + {\n \"description\": \"Type of the link to be deleted.\",\n \"enum\": + [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or + about to connect) a channel with a store on a merchandising platform in order + to enable retail commerce capabilities for that channel on YouTube.\"\n ]\n + \ },\n \"part\": {\n \"description\": \"Do + not use. Required for compatibility.\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"parameterOrder\": [\n \"linkingToken\",\n + \ \"type\"\n ],\n \"id\": \"youtube.thirdPartyLinks.delete\",\n + \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"httpMethod\": \"DELETE\"\n }\n }\n },\n \"liveChatMessages\": + {\n \"methods\": {\n \"delete\": {\n \"id\": \"youtube.liveChatMessages.delete\",\n + \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n }\n },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/liveChat/messages\",\n \"description\": + \"Deletes a chat message.\"\n },\n \"insert\": {\n \"request\": + {\n \"$ref\": \"LiveChatMessage\"\n },\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"repeated\": + true\n }\n },\n \"description\": \"Inserts a + new resource into this collection.\",\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"id\": \"youtube.liveChatMessages.insert\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"httpMethod\": + \"POST\",\n \"response\": {\n \"$ref\": \"LiveChatMessage\"\n + \ }\n },\n \"list\": {\n \"parameterOrder\": + [\n \"liveChatId\",\n \"part\"\n ],\n \"id\": + \"youtube.liveChatMessages.list\",\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n + \ \"parameters\": {\n \"profileImageSize\": {\n \"type\": + \"integer\",\n \"minimum\": \"16\",\n \"format\": + \"uint32\",\n \"description\": \"Specifies the size of the profile + image that should be returned for each user.\",\n \"location\": + \"query\",\n \"maximum\": \"720\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"description\": + \"The *part* parameter specifies the liveChatComment resource parts that the + API response will include. Supported values are id and snippet.\",\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"hl\": {\n \"location\": \"query\",\n + \ \"description\": \"Specifies the localization language in which + the system messages should be returned.\",\n \"type\": \"string\"\n + \ },\n \"liveChatId\": {\n \"required\": + true,\n \"description\": \"The id of the live chat for which + comments should be returned.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"format\": + \"uint32\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"default\": \"500\",\n \"location\": \"query\",\n + \ \"maximum\": \"2000\",\n \"type\": \"integer\",\n + \ \"minimum\": \"200\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"path\": \"youtube/v3/liveChat/messages\",\n \"response\": + {\n \"$ref\": \"LiveChatMessageListResponse\"\n },\n \"flatPath\": + \"youtube/v3/liveChat/messages\"\n }\n }\n },\n \"abuseReports\": + {\n \"methods\": {\n \"insert\": {\n \"response\": {\n + \ \"$ref\": \"AbuseReport\"\n },\n \"id\": \"youtube.abuseReports.insert\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n }\n },\n \"delete\": - {\n \"description\": \"Deletes a chat ban.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"id\": - \"youtube.liveChatBans.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"path\": \"youtube/v3/liveChat/bans\"\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"default\": \"en-US\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Returns the video categories with the given IDs for Stubby or Apiary.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the videoCategory resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"flatPath\": \"youtube/v3/videoCategories\",\n \"response\": - {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"id\": - \"youtube.videoCategories.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\"\n - \ }\n }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + that the API response will include.\"\n }\n },\n \"path\": + \"youtube/v3/abuseReports\",\n \"httpMethod\": \"POST\",\n \"flatPath\": + \"youtube/v3/abuseReports\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"request\": {\n \"$ref\": \"AbuseReport\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n + \ }\n }\n },\n \"activities\": {\n \"methods\": {\n + \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/activities\",\n \"httpMethod\": + \"GET\",\n \"path\": \"youtube/v3/activities\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"id\": + \"youtube.activities.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"response\": - {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"required\": + \ ],\n \"parameters\": {\n \"publishedBefore\": + {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n + \ \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"publishedAfter\": {\n \"format\": + \"google-datetime\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"required\": true,\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the videoCategory resource parts that the API response - will include. Supported values are id and snippet.\"\n },\n \"hl\": - {\n \"default\": \"en-US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n }\n }\n - \ }\n },\n \"comments\": {\n \"methods\": {\n \"delete\": - {\n \"path\": \"youtube/v3/comments\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/comments\",\n \"id\": \"youtube.comments.delete\",\n - \ \"httpMethod\": \"DELETE\"\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"maxResults\": {\n \"minimum\": \"1\",\n \"location\": - \"query\",\n \"maximum\": \"100\",\n \"default\": - \"20\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + 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.\"\n },\n \"mine\": + {\n \"type\": \"boolean\",\n \"location\": \"query\"\n + \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"default\": \"5\",\n + \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"maximum\": \"50\",\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"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.\"\n },\n - \ \"parentId\": {\n \"location\": \"query\",\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more comment resource - properties that the API response will include.\"\n },\n \"textFormat\": - {\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"The - requested text format for the returned comments.\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"default\": \"html\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": - \"Returns the comments with the given IDs for One Platform.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.list\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"httpMethod\": \"GET\"\n },\n \"update\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Updates an existing resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"id\": - \"youtube.comments.update\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"repeated\": - true\n }\n },\n \"httpMethod\": \"PUT\",\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"flatPath\": - \"youtube/v3/comments\"\n },\n \"setModerationStatus\": {\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Sets the - moderation status of one or more comments.\",\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"parameters\": - {\n \"id\": {\n \"description\": \"Modifies the moderation - status of the comments with the given IDs\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n },\n \"moderationStatus\": - {\n \"description\": \"Specifies the requested moderation status. - Note, comments can be in statuses, which are not available through this call. - For example, this call does not allow to mark a comment as 'likely spam'. - Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ]\n - \ },\n \"banAuthor\": {\n \"default\": \"false\",\n - \ \"location\": \"query\",\n \"description\": \"If - set to true the author of the comment gets added to the ban list. This means - all future comments of the author will autmomatically be rejected. Only valid - in combination with STATUS_REJECTED.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ]\n },\n \"markAsSpam\": {\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.markAsSpam\",\n \"flatPath\": - \"youtube/v3/comments/markAsSpam\",\n \"path\": \"youtube/v3/comments/markAsSpam\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Flags - the comments with the given IDs as spam in the caller's opinion.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"insert\": {\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/comments\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"id\": \"youtube.comments.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"membershipsLevels\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"id\": \"youtube.membershipsLevels.list\",\n \"path\": - \"youtube/v3/membershipsLevels\"\n }\n }\n },\n \"liveStreams\": - {\n \"methods\": {\n \"update\": {\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n + \ \"home\": {\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"regionCode\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n }\n + \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"delete\": + {\n \"id\": \"youtube.videos.delete\",\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"path\": \"youtube/v3/videos\",\n \"parameters\": {\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*Note:* + This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* + parameter indicates that the request's authorization credentials identify + a YouTube CMS user who is acting on behalf of the content owner specified + in the parameter value. This parameter is intended for YouTube content partners + that own and manage many different YouTube channels. It allows content owners + to authenticate once and get access to all their video and channel data, without + having to provide authentication credentials for each individual channel. + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Deletes a resource.\"\n },\n \"rate\": {\n \"parameters\": + {\n \"id\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true\n },\n \"rating\": + {\n \"required\": true,\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n + \ \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"location\": \"query\"\n + \ }\n },\n \"httpMethod\": \"POST\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"id\",\n \"rating\"\n + \ ],\n \"flatPath\": \"youtube/v3/videos/rate\",\n \"description\": + \"Adds a like or dislike rating to a video or removes a rating from a video.\",\n + \ \"path\": \"youtube/v3/videos/rate\",\n \"id\": \"youtube.videos.rate\"\n + \ },\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"response\": {\n \"$ref\": \"Video\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"mediaUpload\": + {\n \"maxSize\": \"274877906944\",\n \"protocols\": + {\n \"simple\": {\n \"multipart\": true,\n \"path\": + \"/upload/youtube/v3/videos\"\n },\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": + true\n }\n },\n \"accept\": [\n \"video/*\",\n + \ \"application/octet-stream\"\n ]\n },\n + \ \"parameters\": {\n \"autoLevels\": {\n \"type\": + \"boolean\",\n \"location\": \"query\",\n \"description\": + \"Should auto-levels be applied to the upload.\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"required\": true,\n \ \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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 + 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.\",\n \"repeated\": + true,\n \"type\": \"string\"\n },\n \"stabilize\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Should stabilize be applied to the upload.\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + for each separate channel.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -11822,61 +7716,196 @@ interactions: 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.\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"notifySubscribers\": + {\n \"type\": \"boolean\",\n \"default\": \"true\",\n + \ \"description\": \"Notify the channel subscribers about the + new video. As default, the notification is enabled.\",\n \"location\": + \"query\"\n }\n },\n \"path\": \"youtube/v3/videos\",\n + \ \"flatPath\": \"youtube/v3/videos\",\n \"id\": \"youtube.videos.insert\",\n + \ \"httpMethod\": \"POST\",\n \"supportsMediaUpload\": true,\n + \ \"request\": {\n \"$ref\": \"Video\"\n }\n },\n + \ \"reportAbuse\": {\n \"request\": {\n \"$ref\": + \"VideoAbuseReport\"\n },\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n + \ \"id\": \"youtube.videos.reportAbuse\",\n \"parameterOrder\": + [],\n \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"description\": \"Report + abuse for a video.\",\n \"path\": \"youtube/v3/videos/reportAbuse\"\n + \ },\n \"getRating\": {\n \"id\": \"youtube.videos.getRating\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"id\": \"youtube.liveStreams.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"response\": - {\n \"$ref\": \"LiveStream\"\n }\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.liveStreams.delete\",\n - \ \"description\": \"Deletes an existing stream for the authenticated - user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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 + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"repeated\": true,\n \"location\": \"query\"\n + \ }\n },\n \"flatPath\": \"youtube/v3/videos/getRating\",\n + \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n + \ },\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"path\": \"youtube/v3/videos/getRating\",\n \"description\": + \"Retrieves the ratings that the authorized user gave to a list of specified + videos.\"\n },\n \"list\": {\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"parameters\": {\n \"regionCode\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Use a chart that is specific to the specified region\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n }\n },\n \"list\": {\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"path\": - \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.liveStreams.list\",\n - \ \"parameters\": {\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + owner.\",\n \"type\": \"string\"\n },\n \"locale\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"maxHeight\": {\n \"maximum\": \"8192\",\n + \ \"minimum\": \"72\",\n \"type\": \"integer\",\n + \ \"format\": \"int32\",\n \"location\": \"query\"\n + \ },\n \"videoCategoryId\": {\n \"location\": + \"query\",\n \"description\": \"Use chart that is specific to + the specified video category\",\n \"type\": \"string\",\n \"default\": + \"0\"\n },\n \"myRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The entity is liked.\",\n \"The entity is + disliked.\"\n ],\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n + \ \"location\": \"query\",\n \"description\": \"Return + videos liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\"\n + \ },\n \"id\": {\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Return videos with the given ids.\"\n },\n + \ \"chart\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"Return the most popular videos for the specified content + region and video category.\"\n ],\n \"description\": + \"Return the videos that are in the specified chart.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"enum\": + [\n \"chartUnspecified\",\n \"mostPopular\"\n + \ ]\n },\n \"maxResults\": {\n \"default\": + \"5\",\n \"type\": \"integer\",\n \"maximum\": \"50\",\n + \ \"minimum\": \"1\",\n \"format\": \"uint32\",\n + \ \"description\": \"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.\",\n + \ \"location\": \"query\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": + 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.\",\n + \ \"type\": \"string\"\n },\n \"hl\": {\n + \ \"description\": \"Stands for \\\"host language\\\". Specifies + the localization language of the metadata to be filled into snippet.localized. + The field is filled with the default metadata if there is no localization + in the specified language. The parameter value must be a language code included + in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"maxWidth\": {\n \"location\": \"query\",\n + \ \"type\": \"integer\",\n \"maximum\": \"8192\",\n + \ \"format\": \"int32\",\n \"description\": \"Return + the player with maximum height specified in\",\n \"minimum\": + \"72\"\n },\n \"part\": {\n \"required\": + true,\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n + \ }\n },\n \"httpMethod\": \"GET\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"VideoListResponse\"\n + \ },\n \"path\": \"youtube/v3/videos\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.videos.list\"\n + \ },\n \"update\": {\n \"description\": \"Updates an + existing resource.\",\n \"path\": \"youtube/v3/videos\",\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": + true,\n \"required\": true,\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n }\n },\n \"response\": {\n \"$ref\": + \"Video\"\n },\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.videos.update\",\n \"request\": + {\n \"$ref\": \"Video\"\n }\n }\n }\n },\n + \ \"subscriptions\": {\n \"methods\": {\n \"delete\": {\n \"httpMethod\": + \"DELETE\",\n \"path\": \"youtube/v3/subscriptions\",\n \"description\": + \"Deletes a resource.\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.subscriptions.delete\",\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n }\n + \ },\n \"list\": {\n \"description\": \"Retrieves a + list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"maxResults\": {\n \"default\": + \"5\",\n \"type\": \"integer\",\n \"maximum\": \"50\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"minimum\": + \"0\",\n \"format\": \"uint32\",\n \"location\": + \"query\"\n },\n \"mine\": {\n \"type\": + \"boolean\",\n \"description\": \"Flag for returning the subscriptions + of the authenticated user.\",\n \"location\": \"query\"\n },\n + \ \"mySubscribers\": {\n \"type\": \"boolean\",\n \"description\": + \"Return the subscribers of the given channel owner.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"*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 @@ -11885,60 +7914,200 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"50\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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 + be linked to the specified YouTube content owner.\"\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"myRecentSubscribers\": {\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"description\": \"Return + the subscriptions with the given IDs for Stubby or Apiary.\"\n },\n + \ \"order\": {\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Sort by relevance.\",\n \"Sort + by order of activity.\",\n \"Sort alphabetically.\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The + order of the returned subscriptions\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n + \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n + \ ],\n \"default\": \"relevance\"\n },\n + \ \"forChannelId\": {\n \"description\": \"Return the + subscriptions to the subset of these channels that the authenticated user + is subscribed to.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"required\": + true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"Return LiveStreams with the given - ids from Stubby or Apiary.\",\n \"location\": \"query\"\n }\n + for each separate channel.\"\n },\n \"channelId\": {\n + \ \"description\": \"Return the subscriptions of the given channel + owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"path\": \"youtube/v3/subscriptions\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.list\",\n + \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": + \"SubscriptionListResponse\"\n }\n },\n \"insert\": + {\n \"response\": {\n \"$ref\": \"Subscription\"\n },\n + \ \"id\": \"youtube.subscriptions.insert\",\n \"flatPath\": + \"youtube/v3/subscriptions\",\n \"description\": \"Inserts a new + resource into this collection.\",\n \"request\": {\n \"$ref\": + \"Subscription\"\n },\n \"parameters\": {\n \"part\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n }\n \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n },\n \"insert\": {\n \"response\": {\n - \ \"$ref\": \"LiveStream\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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 + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/subscriptions\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"POST\"\n + \ }\n }\n },\n \"comments\": {\n \"methods\": {\n \"insert\": + {\n \"request\": {\n \"$ref\": \"Comment\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/comments\",\n \"path\": \"youtube/v3/comments\",\n \"id\": + \"youtube.comments.insert\",\n \"response\": {\n \"$ref\": + \"Comment\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"description\": \"Inserts a new resource into this + collection.\",\n \"httpMethod\": \"POST\",\n \"parameters\": + {\n \"part\": {\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true\n }\n }\n + \ },\n \"update\": {\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": + \"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.\"\n + \ }\n },\n \"httpMethod\": \"PUT\",\n \"description\": + \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": + \"Comment\"\n },\n \"request\": {\n \"$ref\": + \"Comment\"\n },\n \"id\": \"youtube.comments.update\",\n + \ \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"list\": {\n \"response\": {\n + \ \"$ref\": \"CommentListResponse\"\n },\n \"parameters\": + {\n \"maxResults\": {\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"maximum\": \"100\",\n \"minimum\": + \"1\",\n \"location\": \"query\",\n \"default\": + \"20\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"Returns the comments with the given IDs for + One Platform.\",\n \"location\": \"query\",\n \"repeated\": + true\n },\n \"parentId\": {\n \"description\": + \"Returns replies to the specified comment. Note, currently YouTube features + only one level of replies (ie replies to top level comments). However replies + to replies may be supported in the future.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"textFormat\": + {\n \"enumDescriptions\": [\n \"\",\n \"Returns + the comments in HTML format. This is the default value.\",\n \"Returns + the comments in plain text format.\"\n ],\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"The requested text format for the returned comments.\",\n \"enum\": + [\n \"textFormatUnspecified\",\n \"html\",\n + \ \"plainText\"\n ],\n \"default\": + \"html\"\n },\n \"part\": {\n \"description\": + \"The *part* parameter specifies a comma-separated list of one or more comment + resource properties that the API response will include.\",\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\",\n \"repeated\": true\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n }\n },\n \"id\": \"youtube.comments.list\",\n + \ \"path\": \"youtube/v3/comments\",\n \"httpMethod\": \"GET\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/comments\"\n },\n \"setModerationStatus\": + {\n \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n + \ \"id\": \"youtube.comments.setModerationStatus\",\n \"path\": + \"youtube/v3/comments/setModerationStatus\",\n \"parameterOrder\": + [\n \"id\",\n \"moderationStatus\"\n ],\n \"parameters\": + {\n \"banAuthor\": {\n \"location\": \"query\",\n + \ \"default\": \"false\",\n \"description\": \"If + set to true the author of the comment gets added to the ban list. This means + all future comments of the author will autmomatically be rejected. Only valid + in combination with STATUS_REJECTED.\",\n \"type\": \"boolean\"\n + \ },\n \"moderationStatus\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"The comment is available + for public display.\",\n \"The comment is awaiting review by + a moderator.\",\n \"\",\n \"The comment is unfit + for display.\"\n ],\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ],\n \"description\": \"Specifies the requested + moderation status. Note, comments can be in statuses, which are not available + through this call. For example, this call does not allow to mark a comment + as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, + MODERATION_STATUS_REJECTED.\"\n },\n \"id\": {\n \"repeated\": + true,\n \"description\": \"Modifies the moderation status of + the comments with the given IDs\",\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Sets the moderation status of one or more comments.\"\n + \ },\n \"markAsSpam\": {\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": + {\n \"id\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"Flags the comments with the + given IDs as spam in the caller's opinion.\",\n \"required\": + true,\n \"repeated\": true\n }\n },\n \"path\": + \"youtube/v3/comments/markAsSpam\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"id\": \"youtube.comments.markAsSpam\",\n \"description\": + \"Expresses the caller's opinion that one or more comments should be flagged + as spam.\"\n },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.comments.delete\",\n \"path\": + \"youtube/v3/comments\",\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true\n }\n },\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"description\": \"Deletes a resource.\",\n \"httpMethod\": + \"DELETE\"\n }\n }\n },\n \"channelBanners\": {\n \"methods\": + {\n \"insert\": {\n \"parameterOrder\": [],\n \"httpMethod\": + \"POST\",\n \"id\": \"youtube.channelBanners.insert\",\n \"flatPath\": + \"youtube/v3/channelBanners/insert\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwner\": + for each separate channel.\",\n \"type\": \"string\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"Unused, channel_id is currently derived from the security context of the + requestor.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \ \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates @@ -11947,135 +8116,92 @@ interactions: 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.\"\n },\n \"part\": {\n \"description\": - \"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, content_details, and status.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"path\": - \"youtube/v3/liveStreams\"\n }\n }\n },\n \"thumbnails\": - {\n \"methods\": {\n \"set\": {\n \"parameterOrder\": - [\n \"videoId\"\n ],\n \"description\": \"As - this is not an insert in a strict sense (it supports uploading/setting of - a thumbnail for multiple videos, which doesn't result in creation of a single - resource), I use a custom verb here.\",\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"2097152\",\n - \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"supportsMediaUpload\": true,\n \"parameters\": {\n \"videoId\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"Returns the Thumbnail with the given video - IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"youtube.thumbnails.set\",\n \"response\": - {\n \"$ref\": \"ThumbnailSetResponse\"\n }\n }\n - \ }\n },\n \"playlistItems\": {\n \"methods\": {\n \"insert\": - {\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.playlistItems.insert\"\n - \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"path\": \"youtube/v3/playlistItems\",\n \"id\": - \"youtube.playlistItems.list\",\n \"parameters\": {\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"type\": \"integer\",\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return the playlist items associated - with the given video ID.\"\n },\n \"playlistId\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the playlist items within the given - playlist.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\"\n },\n \"delete\": {\n \"id\": \"youtube.playlistItems.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"description\": \"Deletes a resource.\",\n \"scopes\": + YouTube content owner.\"\n }\n },\n \"supportsMediaUpload\": + true,\n \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n + \ },\n \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n + \ },\n \"mediaUpload\": {\n \"protocols\": {\n + \ \"resumable\": {\n \"multipart\": true,\n \"path\": + \"/resumable/upload/youtube/v3/channelBanners/insert\"\n },\n + \ \"simple\": {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n + \ \"multipart\": true\n }\n },\n \"accept\": + [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n + \ ],\n \"maxSize\": \"6291456\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"path\": \"youtube/v3/channelBanners/insert\"\n }\n }\n + \ },\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": + {\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"location\": + \"query\",\n \"description\": \"The *part* parameter specifies + the i18nLanguage resource properties that the API response will include. Set + the parameter value to snippet.\",\n \"required\": true,\n \"type\": + \"string\"\n },\n \"hl\": {\n \"default\": + \"en_US\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"path\": \"youtube/v3/i18nLanguages\",\n + \ \"id\": \"youtube.i18nLanguages.list\",\n \"response\": + {\n \"$ref\": \"I18nLanguageListResponse\"\n },\n \"httpMethod\": + \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": + \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n + \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"update\": + {\n \"id\": \"youtube.channels.update\",\n \"httpMethod\": + \"PUT\",\n \"request\": {\n \"$ref\": \"Channel\"\n },\n + \ \"response\": {\n \"$ref\": \"Channel\"\n },\n + \ \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n }\n },\n \"description\": + \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/channels\",\n + \ \"path\": \"youtube/v3/channels\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n + \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n + \ ],\n \"path\": \"youtube/v3/channels\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"id\": + \"youtube.channels.list\",\n \"httpMethod\": \"GET\",\n \"response\": + {\n \"$ref\": \"ChannelListResponse\"\n },\n \"parameters\": + {\n \"mine\": {\n \"description\": \"Return the ids + of channels owned by the authenticated user.\",\n \"type\": \"boolean\",\n + \ \"location\": \"query\"\n },\n \"managedByMe\": {\n \"location\": \"query\",\n \"description\": + \"Return the channels managed by the authenticated user.\",\n \"type\": + \"boolean\"\n },\n \"forUsername\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Return the channel associated with a YouTube username.\"\n },\n + \ \"id\": {\n \"description\": \"Return the channels + with the specified IDs.\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"type\": \"string\"\n },\n \"hl\": + {\n \"description\": \"Stands for \\\"host language\\\". Specifies + the localization language of the metadata to be filled into snippet.localized. + The field is filled with the default metadata if there is no localization + in the specified language. The parameter value must be a language code included + in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"*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 @@ -12084,52 +8210,95 @@ interactions: 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.\",\n \"type\": - \"string\"\n }\n }\n },\n \"update\": {\n - \ \"httpMethod\": \"PUT\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"description\": - \"Updates an existing resource.\",\n \"id\": \"youtube.playlistItems.update\",\n + be linked to the specified YouTube content owner.\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"required\": + true,\n \"repeated\": true\n },\n \"categoryId\": + {\n \"type\": \"string\",\n \"description\": \"Return + the channels within the specified guide category ID.\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"default\": + \"5\",\n \"maximum\": \"50\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"minimum\": \"0\",\n \"location\": + \"query\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n },\n \"mySubscribers\": {\n \"location\": + \"query\",\n \"description\": \"Return the channels subscribed + to the authenticated user\",\n \"type\": \"boolean\"\n },\n + \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"location\": + \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/channels\"\n + \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": + {\n \"list\": {\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"description\": \"The *part* parameter specifies the superChatEvent + resource parts that the API response will include. This parameter is currently + not supported.\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"minimum\": + \"1\",\n \"location\": \"query\",\n \"default\": + \"5\",\n \"format\": \"uint32\",\n \"maximum\": + \"50\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"type\": \"integer\"\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"hl\": {\n \"description\": + \"Return rendered funding amounts in specified language.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.superChatEvents.list\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"liveBroadcasts\": - {\n \"methods\": {\n \"delete\": {\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"description\": \"Delete a given broadcast.\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"SuperChatEventListResponse\"\n },\n \"path\": \"youtube/v3/superChatEvents\"\n + \ }\n }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": + {\n \"flatPath\": \"youtube/v3/tests\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true\n },\n \"externalChannelId\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"response\": {\n \"$ref\": + \"TestItem\"\n },\n \"description\": \"POST method.\",\n + \ \"path\": \"youtube/v3/tests\",\n \"id\": \"youtube.tests.insert\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"request\": {\n \"$ref\": \"TestItem\"\n + \ }\n }\n }\n },\n \"liveStreams\": {\n \"methods\": + {\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"description\": \"Broadcast to delete.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"id\": \"youtube.liveStreams.update\",\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"httpMethod\": \"PUT\",\n \"description\": \"Updates an + existing stream for the authenticated user.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": \"*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 @@ -12138,7 +8307,28 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwnerChannel\": + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"required\": + true,\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"description\": \"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.\",\n \"location\": + \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/liveStreams\"\n + \ },\n \"insert\": {\n \"description\": \"Inserts a + new stream for the authenticated user.\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n + \ \"path\": \"youtube/v3/liveStreams\",\n \"httpMethod\": + \"POST\",\n \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"description\": \"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, + content_details, and status.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -12154,58 +8344,42 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n }\n },\n \"insert\": {\n - \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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 + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"id\": \"youtube.liveStreams.insert\",\n \"parameterOrder\": + [\n \"part\"\n ]\n },\n \"delete\": {\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": + \"DELETE\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"description\": + \"Deletes an existing stream for the authenticated user.\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\"\n }\n },\n \"description\": \"Inserts - a new stream for the authenticated user.\",\n \"httpMethod\": \"POST\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"insertCuepoint\": - {\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"This parameter can only be used in a properly authorized request. *Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* + owner.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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 @@ -12217,35 +8391,19 @@ interactions: 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.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Broadcast to insert ads to, - or equivalently `external_video_id` for internal use.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n },\n \"path\": - \"youtube/v3/liveBroadcasts/cuepoint\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n + for each separate channel.\",\n \"location\": \"query\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n }\n },\n + \ \"path\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.delete\"\n + \ },\n \"list\": {\n \"path\": \"youtube/v3/liveStreams\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"description\": \"Insert cuepoints in a broadcast\",\n \"response\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"parameterOrder\": - []\n },\n \"transition\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"description\": \"Transition - a broadcast to a given status.\",\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"parameters\": {\n \"id\": {\n \"description\": + \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"mine\": {\n \"location\": \"query\",\n + \ \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -12261,7 +8419,111 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"string\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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.\",\n + \ \"required\": true\n },\n \"maxResults\": + {\n \"maximum\": \"50\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"location\": \"query\",\n \"type\": + \"integer\",\n \"default\": \"5\",\n \"minimum\": + \"0\",\n \"format\": \"uint32\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n + \ \"id\": \"youtube.liveStreams.list\",\n \"description\": + \"Retrieve the list of streams associated with the given channel. --\",\n + \ \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n + \ },\n \"httpMethod\": \"GET\"\n }\n }\n },\n + \ \"playlistItems\": {\n \"methods\": {\n \"delete\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Deletes a resource.\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"parameters\": {\n \"id\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n }\n },\n \"httpMethod\": \"DELETE\",\n + \ \"path\": \"youtube/v3/playlistItems\",\n \"flatPath\": + \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.delete\"\n + \ },\n \"list\": {\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.list\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n + \ },\n \"parameters\": {\n \"id\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"description\": \"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.\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*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.\"\n },\n \"videoId\": + {\n \"location\": \"query\",\n \"description\": + \"Return the playlist items associated with the given video ID.\",\n \"type\": + \"string\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"playlistId\": + {\n \"type\": \"string\",\n \"description\": \"Return + the playlist items within the given playlist.\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"minimum\": + \"0\",\n \"location\": \"query\",\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"default\": \"5\",\n \"maximum\": + \"50\"\n }\n },\n \"httpMethod\": \"GET\"\n },\n + \ \"insert\": {\n \"description\": \"Inserts a new resource + into this collection.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n + \ \"path\": \"youtube/v3/playlistItems\",\n \"httpMethod\": + \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.playlistItems.insert\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -12272,74 +8534,35 @@ interactions: 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.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"id\": {\n - \ \"required\": true,\n \"description\": \"Broadcast - to transition.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"broadcastStatus\": {\n \"description\": - \"The status to which the broadcast is going to transition.\",\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"required\": true,\n \"location\": - \"query\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"id\": - \"youtube.liveBroadcasts.transition\"\n },\n \"bind\": {\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Broadcast to bind to the stream\",\n \"required\": true\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n },\n \"streamId\": - {\n \"type\": \"string\",\n \"description\": \"Stream - to bind, if not set unbind the current one.\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"POST\",\n + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"request\": + {\n \"$ref\": \"PlaylistItem\"\n }\n },\n \"update\": + {\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"id\": + \"youtube.playlistItems.update\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"description\": \"Updates an existing resource.\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"description\": - \"Bind a broadcast to a stream.\",\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n }\n - \ },\n \"update\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"request\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"*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 @@ -12348,23 +8571,131 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true,\n \"description\": + be linked to the specified YouTube content owner.\"\n }\n },\n + \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": + \"PlaylistItem\"\n }\n }\n }\n },\n \"liveChatModerators\": + {\n \"methods\": {\n \"insert\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"LiveChatModerator\"\n },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.liveChatModerators.insert\",\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": + that the API response returns. Set the parameter value to snippet.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n }\n },\n \"description\": \"Inserts a + new resource into this collection.\",\n \"request\": {\n \"$ref\": + \"LiveChatModerator\"\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n + \ \"httpMethod\": \"POST\"\n },\n \"list\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"response\": + {\n \"$ref\": \"LiveChatModeratorListResponse\"\n },\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"parameters\": {\n \"liveChatId\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"The id of the live chat for which moderators + should be returned.\"\n },\n \"pageToken\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n + \ \"maxResults\": {\n \"type\": \"integer\",\n \"minimum\": + \"0\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"location\": \"query\",\n \"format\": \"uint32\",\n + \ \"maximum\": \"50\",\n \"default\": \"5\"\n },\n + \ \"part\": {\n \"description\": \"The *part* parameter + specifies the liveChatModerator resource parts that the API response will + include. Supported values are id and snippet.\",\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"id\": + \"youtube.liveChatModerators.list\",\n \"path\": \"youtube/v3/liveChat/moderators\"\n + \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.liveChatModerators.delete\",\n \"path\": + \"youtube/v3/liveChat/moderators\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": + \"Deletes a chat moderator.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n }\n + \ }\n }\n },\n \"playlists\": {\n \"methods\": {\n \"update\": + {\n \"path\": \"youtube/v3/playlists\",\n \"request\": {\n + \ \"$ref\": \"Playlist\"\n },\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true,\n \"description\": \"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.\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": + \"PUT\",\n \"response\": {\n \"$ref\": \"Playlist\"\n + \ },\n \"id\": \"youtube.playlists.update\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/playlists\"\n },\n + \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"id\": \"youtube.playlists.list\",\n \"flatPath\": \"youtube/v3/playlists\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/playlists\",\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"pageToken\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"part\": + {\n \"required\": true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"mine\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Return the playlists owned by the authenticated + user.\"\n },\n \"maxResults\": {\n \"default\": + \"5\",\n \"type\": \"integer\",\n \"maximum\": \"50\",\n + \ \"format\": \"uint32\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"location\": \"query\",\n \"minimum\": + \"0\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*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.\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"Return + the playlists owned by the specified channel ID.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": \"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 @@ -12378,34 +8709,35 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"description\": \"Updates an - existing broadcast for the authenticated user.\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"id\": \"youtube.liveBroadcasts.update\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"httpMethod\": - \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameters\": {\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"broadcastType\": - {\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Return only broadcasts with the selected type.\",\n \"default\": - \"event\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ]\n },\n \"id\": {\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + for each separate channel.\",\n \"type\": \"string\"\n },\n + \ \"id\": {\n \"repeated\": true,\n \"description\": + \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"hl\": + {\n \"description\": \"Return content in specified language\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"response\": {\n \"$ref\": + \"PlaylistListResponse\"\n }\n },\n \"delete\": {\n + \ \"path\": \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Deletes a resource.\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n }\n },\n \"id\": + \"youtube.playlists.delete\",\n \"flatPath\": \"youtube/v3/playlists\"\n + \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"flatPath\": + \"youtube/v3/playlists\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": \"query\",\n \"description\": \"This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* @@ -12421,78 +8753,50 @@ interactions: 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.\",\n \"type\": \"string\"\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"maximum\": \"50\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"broadcastStatus\": {\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ]\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"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, status and statistics.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"id\": \"youtube.liveBroadcasts.list\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"description\": \"Retrieve the - list of broadcasts associated with the given channel.\"\n }\n }\n - \ },\n \"watermarks\": {\n \"methods\": {\n \"set\": {\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n - \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n - \ \"path\": \"youtube/v3/watermarks/set\",\n \"description\": - \"Allows upload of watermark image and setting it for a channel.\",\n \"mediaUpload\": - {\n \"maxSize\": \"10485760\",\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n }\n }\n },\n \"id\": \"youtube.watermarks.set\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"part\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n + \ \"required\": true,\n \"repeated\": true,\n \"location\": + \"query\"\n }\n },\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"request\": {\n \"$ref\": \"Playlist\"\n + \ },\n \"response\": {\n \"$ref\": \"Playlist\"\n + \ },\n \"path\": \"youtube/v3/playlists\",\n \"id\": + \"youtube.playlists.insert\"\n }\n }\n },\n \"thumbnails\": + {\n \"methods\": {\n \"set\": {\n \"path\": \"youtube/v3/thumbnails/set\",\n + \ \"id\": \"youtube.thumbnails.set\",\n \"description\": + \"As this is not an insert in a strict sense (it supports uploading/setting + of a thumbnail for multiple videos, which doesn't result in creation of a + single resource), I use a custom verb here.\",\n \"supportsMediaUpload\": + true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n }\n },\n - \ \"unset\": {\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/watermarks/unset\",\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"id\": \"youtube.watermarks.unset\",\n \"parameters\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"flatPath\": \"youtube/v3/thumbnails/set\",\n \"response\": + {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"parameterOrder\": + [\n \"videoId\"\n ],\n \"httpMethod\": \"POST\",\n + \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": + {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": + true\n },\n \"resumable\": {\n \"multipart\": + true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n + \ }\n },\n \"maxSize\": \"2097152\",\n \"accept\": + [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n + \ ]\n },\n \"parameters\": {\n \"videoId\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Returns + the Thumbnail with the given video IDs for Stubby or Apiary.\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \ \"description\": \"*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 @@ -12500,34 +8804,3734 @@ interactions: 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.\"\n }\n },\n \"description\": \"Allows - removal of channel watermark.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"channelId\"\n - \ ]\n }\n }\n }\n },\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"batchPath\": \"batch\",\n \"description\": \"The YouTube Data API v3 - is an API that provides access to YouTube data, such as videos, playlists, - and channels.\",\n \"canonicalName\": \"YouTube\",\n \"name\": \"youtube\",\n - \ \"version\": \"v3\",\n \"servicePath\": \"\",\n \"auth\": {\n \"oauth2\": - {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n }\n }\n }\n },\n \"ownerDomain\": - \"google.com\",\n \"id\": \"youtube:v3\",\n \"fullyEncodeReservedExpansion\": - true,\n \"revision\": \"20230131\",\n \"ownerName\": \"Google\"\n}\n" + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n }\n + \ }\n }\n }\n },\n \"videoCategories\": {\n \"methods\": + {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": + {\n \"regionCode\": {\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"repeated\": + true,\n \"description\": \"The *part* parameter specifies the + videoCategory resource properties that the API response will include. Set + the parameter value to snippet.\",\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"description\": \"Returns the video categories with the + given IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"location\": \"query\"\n + \ },\n \"hl\": {\n \"default\": \"en-US\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"path\": \"youtube/v3/videoCategories\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/videoCategories\",\n \"id\": \"youtube.videoCategories.list\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n + \ }\n }\n }\n }\n },\n \"basePath\": \"\",\n \"id\": + \"youtube:v3\",\n \"description\": \"The YouTube Data API v3 is an API that + provides access to YouTube data, such as videos, playlists, and channels.\",\n + \ \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"title\": + \"YouTube Data API v3\",\n \"schemas\": {\n \"LiveBroadcastSnippet\": + {\n \"properties\": {\n \"description\": {\n \"description\": + \"The broadcast's description. As with the title, you can set this field by + modifying the broadcast resource or by setting the description field of the + corresponding video resource.\",\n \"type\": \"string\"\n },\n + \ \"publishedAt\": {\n \"type\": \"string\",\n \"description\": + \"The date and time that the broadcast was added to YouTube's live broadcast + schedule.\",\n \"format\": \"date-time\"\n },\n \"actualStartTime\": + {\n \"description\": \"The date and time that the broadcast actually + started. This information is only available once the broadcast's state is + live.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n + \ },\n \"isDefaultBroadcast\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Indicates whether this broadcast is the default + broadcast. Internal only.\"\n },\n \"actualEndTime\": {\n \"type\": + \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the broadcast actually ended. This information is + only available once the broadcast's state is complete.\"\n },\n \"scheduledEndTime\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the broadcast is scheduled + to end.\"\n },\n \"title\": {\n \"description\": \"The + broadcast's title. Note that the broadcast represents exactly one YouTube + video. You can set this field by modifying the broadcast resource or by setting + the title field of the corresponding video resource.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"liveChatId\": {\n \"type\": + \"string\",\n \"description\": \"The id of the live chat for this + broadcast.\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that is publishing + the broadcast.\",\n \"type\": \"string\"\n },\n \"scheduledStartTime\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"format\": \"date-time\",\n \"description\": \"The date + and time that the broadcast is scheduled to start.\",\n \"type\": + \"string\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the broadcast. For each nested + object in this object, the key is the name of the thumbnail image, and the + value is an object that contains other information about the thumbnail.\",\n + \ \"$ref\": \"ThumbnailDetails\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveBroadcastSnippet\",\n \"description\": + \"Basic broadcast information.\"\n },\n \"ChannelSectionListResponse\": + {\n \"id\": \"ChannelSectionListResponse\",\n \"properties\": {\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#channelSectionListResponse\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"items\": + {\n \"description\": \"A list of ChannelSections that match the request + criteria.\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n + \ },\n \"type\": \"array\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"Subscription\": {\n \"description\": \"A *subscription* + resource contains information about a YouTube user subscription. A subscription + notifies a user when new videos are added to a channel or when another user + takes one of several actions on YouTube, such as uploading a video, rating + a video, or commenting on a video.\",\n \"id\": \"Subscription\",\n \"type\": + \"object\",\n \"properties\": {\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the subscription.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"contentDetails\": + {\n \"$ref\": \"SubscriptionContentDetails\",\n \"description\": + \"The contentDetails object contains basic statistics about the subscription.\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n + \ \"default\": \"youtube#subscription\",\n \"type\": \"string\"\n + \ },\n \"subscriberSnippet\": {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n + \ \"description\": \"The subscriberSnippet object contains basic details + about the subscriber.\"\n },\n \"snippet\": {\n \"$ref\": + \"SubscriptionSnippet\",\n \"description\": \"The snippet object + contains basic details about the subscription, including its title and the + channel that the user subscribed to.\"\n }\n }\n },\n \"VideoTopicDetails\": + {\n \"properties\": {\n \"relevantTopicIds\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"Similar to topic_id, except that these topics + are merely relevant to the video. These are topics that may be mentioned in, + or appear in the video. You can retrieve information about each topic using + Freebase Topic API.\"\n },\n \"topicIds\": {\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"A list of Freebase topic IDs that are centrally + associated with the video. These are topics that are centrally featured in + the video, and it can be said that the video is mainly about each of these. + You can retrieve information about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase + Topic API.\"\n },\n \"topicCategories\": {\n \"description\": + \"A list of Wikipedia URLs that provide a high-level description of the video's + content.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n }\n }\n },\n \"description\": \"Freebase + topic information related to the video.\",\n \"id\": \"VideoTopicDetails\",\n + \ \"type\": \"object\"\n },\n \"LiveBroadcastContentDetails\": {\n + \ \"id\": \"LiveBroadcastContentDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"enableEmbed\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether the broadcast + video can be played in an embedded player. If you choose to archive the video + (using the enableArchive property), this setting will also apply to the archived + video.\"\n },\n \"recordFromStart\": {\n \"description\": + \"Automatically start recording after the event goes live. The default value + for this property is true. *Important:* You must also set the enableDvr property's + value to true if you want the playback to be available immediately after the + broadcast ends. If you set this property's value to true but do not also set + the enableDvr property to true, there may be a delay of around one day before + the archived video will be available for playback.\",\n \"type\": + \"boolean\"\n },\n \"projection\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"projectionUnspecified\",\n \"rectangular\",\n \"360\",\n + \ \"mesh\"\n ],\n \"description\": \"The projection + format of this broadcast. This defaults to rectangular.\"\n },\n \"closedCaptionsType\": + {\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n + \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n + \ \"closedCaptionsEmbedded\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"boundStreamLastUpdateTimeMs\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time that the live stream referenced + by boundStreamId was last updated.\"\n },\n \"enableAutoStart\": + {\n \"description\": \"This setting indicates whether auto start + is enabled for this broadcast. The default value for this property is false. + This setting can only be used by Events.\",\n \"type\": \"boolean\"\n + \ },\n \"latencyPreference\": {\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n + \ \"normal\",\n \"low\",\n \"ultraLow\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"Best + for: highest quality viewer playbacks and higher resolutions.\",\n \"Best + for: near real-time interaction, with minimal playback buffering.\",\n \"Best + for: real-time interaction Does not support: Closed captions, 1440p, and 4k + resolutions\"\n ],\n \"description\": \"If both this and + enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false + LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should + have enable_low_latency omitted.\",\n \"type\": \"string\"\n },\n + \ \"enableLowLatency\": {\n \"type\": \"boolean\",\n \"description\": + \"Indicates whether this broadcast has low latency enabled.\"\n },\n + \ \"mesh\": {\n \"format\": \"byte\",\n \"description\": + \"The mesh for projecting the video if projection is mesh. The mesh value + must be a UTF-8 string containing the base-64 encoding of 3D mesh data that + follows the Spherical Video V2 RFC specification for an mshp box, excluding + the box size and type but including the following four reserved zero bytes + for the version and flags.\",\n \"type\": \"string\"\n },\n + \ \"enableContentEncryption\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether YouTube should + enable content encryption for the broadcast.\"\n },\n \"stereoLayout\": + {\n \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n + \ \"leftRight\",\n \"topBottom\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The 3D stereo layout of this broadcast. + This defaults to mono.\",\n \"type\": \"string\"\n },\n \"boundStreamId\": + {\n \"type\": \"string\",\n \"description\": \"This value + uniquely identifies the live stream bound to the broadcast.\"\n },\n + \ \"enableDvr\": {\n \"type\": \"boolean\",\n \"description\": + \"This setting determines whether viewers can access DVR controls while watching + the video. DVR controls enable the viewer to control the video playback experience + by pausing, rewinding, or fast forwarding content. The default value for this + property is true. *Important:* You must set the value to true and also set + the enableArchive property's value to true if you want to make playback available + immediately after the broadcast ends.\"\n },\n \"enableAutoStop\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether auto stop is enabled for this broadcast. The default value + for this property is false. This setting can only be used by Events.\"\n },\n + \ \"startWithSlate\": {\n \"type\": \"boolean\",\n \"description\": + \"This setting indicates whether the broadcast should automatically begin + with an in-stream slate when you update the broadcast's status to live. After + updating the status, you then need to send a liveCuepoints.insert request + that sets the cuepoint's eventState to end to remove the in-stream slate and + make your broadcast stream visible to viewers.\"\n },\n \"monitorStream\": + {\n \"$ref\": \"MonitorStreamInfo\",\n \"description\": + \"The monitorStream object contains information about the monitor stream, + which the broadcaster can use to review the event content before the broadcast + stream is shown publicly.\"\n },\n \"enableClosedCaptions\": + {\n \"description\": \"This setting indicates whether HTTP POST closed + captioning is enabled for this broadcast. The ingestion URL of the closed + captions is returned through the liveStreams API. This is mutually exclusive + with using the closed_captions_type property, and is equivalent to setting + closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n \"type\": + \"boolean\"\n }\n },\n \"description\": \"Detailed settings + of a broadcast.\"\n },\n \"ChannelContentOwnerDetails\": {\n \"id\": + \"ChannelContentOwnerDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"contentOwner\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the content owner linked to the channel.\"\n },\n \"timeLinked\": + {\n \"format\": \"date-time\",\n \"description\": \"The + date and time when the channel was linked to the content owner.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"The contentOwnerDetails + object encapsulates channel data that is relevant for YouTube Partners linked + with the channel.\"\n },\n \"ChannelConversionPing\": {\n \"description\": + \"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.\",\n \"properties\": {\n \"context\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"subscribe\",\n + \ \"unsubscribe\",\n \"cview\"\n ],\n \"description\": + \"Defines the context of the ping.\"\n },\n \"conversionUrl\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n }\n },\n \"id\": \"ChannelConversionPing\",\n + \ \"type\": \"object\"\n },\n \"VideoCategorySnippet\": {\n \"type\": + \"object\",\n \"description\": \"Basic details about a video category, + such as its localized title.\",\n \"id\": \"VideoCategorySnippet\",\n + \ \"properties\": {\n \"assignable\": {\n \"type\": \"boolean\"\n + \ },\n \"title\": {\n \"description\": \"The video category's + title.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"description\": \"The YouTube channel that created the video + category.\",\n \"type\": \"string\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\"\n + \ }\n }\n },\n \"VideoProjectDetails\": {\n \"type\": + \"object\",\n \"id\": \"VideoProjectDetails\",\n \"description\": + \"DEPRECATED. b/157517979: This part was never populated after it was added. + However, it sees non-zero traffic because there is generated client code in + the wild that refers to it [1]. We keep this field and do NOT remove it because + otherwise V3 would return an error when this part gets requested [2]. [1] + https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"properties\": {}\n },\n \"ThumbnailDetails\": {\n \"id\": + \"ThumbnailDetails\",\n \"properties\": {\n \"high\": {\n \"description\": + \"The high quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n + \ },\n \"medium\": {\n \"$ref\": \"Thumbnail\",\n \"description\": + \"The medium quality image for this resource.\"\n },\n \"standard\": + {\n \"description\": \"The standard quality image for this resource.\",\n + \ \"$ref\": \"Thumbnail\"\n },\n \"default\": {\n \"$ref\": + \"Thumbnail\",\n \"description\": \"The default image for this resource.\"\n + \ },\n \"maxres\": {\n \"$ref\": \"Thumbnail\",\n \"description\": + \"The maximum resolution quality image for this resource.\"\n }\n },\n + \ \"description\": \"Internal representation of thumbnails for a YouTube + resource.\",\n \"type\": \"object\"\n },\n \"SubscriptionListResponse\": + {\n \"id\": \"SubscriptionListResponse\",\n \"properties\": {\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#subscriptionListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"Subscription\"\n + \ },\n \"type\": \"array\",\n \"description\": \"A + list of subscriptions that match the request criteria.\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"LiveBroadcastStatistics\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"concurrentViewers\": {\n \"type\": + \"string\",\n \"description\": \"The number of viewers currently + watching the broadcast. The property and its value will be present if the + broadcast has current viewers and the broadcast owner has not hidden the viewcount + for the video. Note that YouTube stops tracking the number of concurrent viewers + for a broadcast when the broadcast ends. So, this property would not identify + the number of viewers watching an archived video of a live broadcast that + already ended.\",\n \"format\": \"uint64\"\n },\n \"totalChatCount\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The total number of live chat messages currently on the broadcast. The property + and its value will be present if the broadcast is public, has the live chat + feature enabled, and has at least one message. Note that this field will not + be filled after the broadcast ends. So this property would not identify the + number of chat messages for an archived video of a completed live broadcast.\"\n + \ }\n },\n \"description\": \"Statistics about the live broadcast. + These represent a snapshot of the values at the time of the request. Statistics + are only returned for live broadcasts.\",\n \"id\": \"LiveBroadcastStatistics\"\n + \ },\n \"ActivityContentDetailsFavorite\": {\n \"properties\": {\n + \ \"resourceId\": {\n \"description\": \"The resourceId object + contains information that identifies the resource that was marked as a favorite.\",\n + \ \"$ref\": \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsFavorite\",\n + \ \"description\": \"Information about a video that was marked as a favorite + video.\",\n \"type\": \"object\"\n },\n \"LiveChatModeratorListResponse\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorListResponse\",\n + \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveChatModeratorListResponse\",\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n + \ },\n \"description\": \"A list of moderators that match + the request criteria.\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"ResourceId\": {\n \"description\": + \"A resource id is a generic reference that points to another YouTube resource.\",\n + \ \"id\": \"ResourceId\",\n \"properties\": {\n \"playlistId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the referred resource, if that resource is a playlist. This property is only + present if the resourceId.kind value is youtube#playlist.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"description\": \"The + type of the API resource.\",\n \"type\": \"string\"\n },\n + \ \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a video. This property is only present if the resourceId.kind + value is youtube#video.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the referred resource, if that resource is a channel. This property + is only present if the resourceId.kind value is youtube#channel.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"I18nRegionSnippet\": {\n + \ \"properties\": {\n \"name\": {\n \"description\": \"The + human-readable name of the region.\",\n \"type\": \"string\"\n },\n + \ \"gl\": {\n \"type\": \"string\",\n \"description\": + \"The region code as a 2-letter ISO country code.\"\n }\n },\n + \ \"id\": \"I18nRegionSnippet\",\n \"description\": \"Basic details + about an i18n region, such as region code and human-readable name.\",\n \"type\": + \"object\"\n },\n \"VideoSnippet\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoSnippet\",\n \"description\": \"Basic details about + a video, including title, description, uploader, thumbnails and category.\",\n + \ \"properties\": {\n \"localized\": {\n \"$ref\": \"VideoLocalization\",\n + \ \"description\": \"Localized snippet selected with the hl parameter. + If no such localization exists, this field is populated with the default snippet. + (Read-only)\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel that the video was uploaded to.\"\n },\n \"description\": + {\n \"description\": \"The video's description. @mutable youtube.videos.insert + youtube.videos.update\",\n \"type\": \"string\"\n },\n \"publishedAt\": + {\n \"description\": \"The date and time when the video was uploaded.\",\n + \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n + \ \"liveBroadcastContent\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"The live broadcast is upcoming.\",\n \"The live broadcast + is active.\",\n \"The live broadcast has been completed.\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n + \ \"upcoming\",\n \"live\",\n \"completed\"\n + \ ],\n \"description\": \"Indicates if the video is an upcoming/active + live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active + live broadcast.\"\n },\n \"tags\": {\n \"items\": {\n + \ \"type\": \"string\"\n },\n \"description\": + \"A list of keyword tags associated with the video. Tags may contain spaces.\",\n + \ \"type\": \"array\"\n },\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images + associated with the video. 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.\"\n },\n \"categoryId\": {\n \"type\": + \"string\",\n \"description\": \"The YouTube video category associated + with the video.\"\n },\n \"defaultLanguage\": {\n \"type\": + \"string\",\n \"description\": \"The language of the videos's default + snippet.\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel title for the channel that the video + belongs to.\"\n },\n \"title\": {\n \"description\": + \"The video's title. @mutable youtube.videos.insert youtube.videos.update\",\n + \ \"type\": \"string\"\n },\n \"defaultAudioLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The default_audio_language + property specifies the language spoken in the video's default audio track.\"\n + \ }\n }\n },\n \"PageInfo\": {\n \"description\": \"Paging + details for lists of resources, including total number of items available + and number of resources returned in a single page.\",\n \"id\": \"PageInfo\",\n + \ \"properties\": {\n \"resultsPerPage\": {\n \"type\": + \"integer\",\n \"description\": \"The number of results included + in the API response.\",\n \"format\": \"int32\"\n },\n \"totalResults\": + {\n \"type\": \"integer\",\n \"description\": \"The total + number of results in the result set.\",\n \"format\": \"int32\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"AbuseType\": + {\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"AbuseType\"\n + \ },\n \"PlaylistItemSnippet\": {\n \"description\": \"Basic details + about a playlist, including title, description and thumbnails. Basic details + of a YouTube Playlist item provided by the author. Next ID: 15\",\n \"properties\": + {\n \"title\": {\n \"description\": \"The item's title.\",\n + \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time that the item was added to the playlist.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"annotations\": {\n \"required\": + [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n + \ ]\n },\n \"description\": \"The id object contains + information that can be used to uniquely identify the resource that is included + in the playlist as the playlist item.\"\n },\n \"videoOwnerChannelId\": + {\n \"description\": \"Channel id for the channel this video belongs + to.\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The item's + description.\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the playlist item. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the user that added the item + to the playlist.\",\n \"type\": \"string\"\n },\n \"position\": + {\n \"format\": \"uint32\",\n \"description\": \"The order + in which the item appears in the playlist. The value uses a zero-based index, + so the first item has a position of 0, the second item has a position of 1, + and so forth.\",\n \"type\": \"integer\"\n },\n \"playlistId\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n + \ \"youtube.playlistItems.update\"\n ]\n },\n + \ \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify thGe playlist that the playlist item is + in.\"\n },\n \"channelTitle\": {\n \"description\": + \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": + \"string\"\n },\n \"videoOwnerChannelTitle\": {\n \"type\": + \"string\",\n \"description\": \"Channel title for the channel this + video belongs to.\"\n }\n },\n \"id\": \"PlaylistItemSnippet\",\n + \ \"type\": \"object\"\n },\n \"PlaylistContentDetails\": {\n \"id\": + \"PlaylistContentDetails\",\n \"properties\": {\n \"itemCount\": + {\n \"format\": \"uint32\",\n \"description\": \"The number + of videos in the playlist.\",\n \"type\": \"integer\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"MembershipsDetails\": + {\n \"properties\": {\n \"highestAccessibleLevelDisplayName\": + {\n \"description\": \"Display name for the highest level that the + user has access to at the moment.\",\n \"type\": \"string\"\n },\n + \ \"accessibleLevels\": {\n \"type\": \"array\",\n \"description\": + \"Ids of all levels that the user has access to. This includes the currently + active level and all other levels that are included because of a higher purchase.\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n },\n + \ \"highestAccessibleLevel\": {\n \"description\": \"Id of + the highest level that the user has access to at the moment.\",\n \"type\": + \"string\"\n },\n \"membershipsDuration\": {\n \"description\": + \"Data about memberships duration without taking into consideration pricing + levels.\",\n \"$ref\": \"MembershipsDuration\"\n },\n \"membershipsDurationAtLevels\": + {\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n + \ },\n \"type\": \"array\",\n \"description\": \"Data + about memberships duration on particular pricing levels.\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"MembershipsDetails\"\n },\n + \ \"PlaylistListResponse\": {\n \"id\": \"PlaylistListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#playlistListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"Playlist\"\n },\n \"description\": \"A list of playlists + that match the request criteria\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n }\n }\n },\n \"ActivityContentDetailsPromotedItem\": + {\n \"properties\": {\n \"adTag\": {\n \"type\": \"string\",\n + \ \"description\": \"The URL the client should fetch to request a + promoted item.\"\n },\n \"clickTrackingUrl\": {\n \"description\": + \"The URL the client should ping to indicate that the user clicked through + on this promoted item.\",\n \"type\": \"string\"\n },\n \"creativeViewUrl\": + {\n \"description\": \"The URL the client should ping to indicate + that the user was shown this promoted item.\",\n \"type\": \"string\"\n + \ },\n \"descriptionText\": {\n \"type\": \"string\",\n + \ \"description\": \"The text description to accompany the promoted + item.\"\n },\n \"customCtaButtonText\": {\n \"description\": + \"The custom call-to-action button text. If specified, it will override the + default button text for the cta_type.\",\n \"type\": \"string\"\n + \ },\n \"destinationUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The URL the client should direct the user to, + if the user chooses to visit the advertiser's website.\"\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the promoted video.\"\n },\n \"ctaType\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"description\": \"The type of call-to-action, + a message to the user indicating action that can be taken.\",\n \"enum\": + [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n + \ ]\n },\n \"impressionUrl\": {\n \"description\": + \"The list of impression URLs. The client should ping all of these URLs to + indicate that the user was shown this promoted item.\",\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n + \ },\n \"forecastingUrl\": {\n \"description\": \"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.\",\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"type\": \"array\"\n }\n },\n \"description\": + \"Details about a resource which is being promoted.\",\n \"type\": \"object\",\n + \ \"id\": \"ActivityContentDetailsPromotedItem\"\n },\n \"ChannelConversionPings\": + {\n \"id\": \"ChannelConversionPings\",\n \"type\": \"object\",\n + \ \"description\": \"The conversionPings object encapsulates information + about conversion pings that need to be respected by the channel.\",\n \"properties\": + {\n \"pings\": {\n \"type\": \"array\",\n \"description\": + \"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.\",\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n + \ }\n }\n }\n },\n \"VideoFileDetails\": {\n \"type\": + \"object\",\n \"description\": \"Describes original video file properties, + including technical details about audio and video streams, but also metadata + information like content length, digitization time, or geotagging information.\",\n + \ \"id\": \"VideoFileDetails\",\n \"properties\": {\n \"audioStreams\": + {\n \"description\": \"A list of audio streams contained in the uploaded + video file. Each item in the list contains detailed metadata about an audio + stream.\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n + \ },\n \"type\": \"array\"\n },\n \"creationTime\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the uploaded video file was created. The value is specified + in ISO 8601 format. Currently, the following ISO 8601 formats are supported: + - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: + YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"bitrateBps\": {\n \"format\": + \"uint64\",\n \"description\": \"The uploaded video file's combined + (video and audio) bitrate in bits per second.\",\n \"type\": \"string\"\n + \ },\n \"fileSize\": {\n \"description\": \"The uploaded + file's size in bytes. This field is present whether a video file or another + type of file was uploaded.\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n },\n \"container\": {\n \"description\": + \"The uploaded video file's container format.\",\n \"type\": \"string\"\n + \ },\n \"fileName\": {\n \"type\": \"string\",\n \"description\": + \"The uploaded file's name. This field is present whether a video file or + another type of file was uploaded.\"\n },\n \"videoStreams\": + {\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n + \ },\n \"type\": \"array\",\n \"description\": \"A + list of video streams contained in the uploaded video file. Each item in the + list contains detailed metadata about a video stream.\"\n },\n \"durationMs\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The length of the uploaded video in milliseconds.\"\n },\n \"fileType\": + {\n \"enumDescriptions\": [\n \"Known video file (e.g., + an MP4 file).\",\n \"Audio only file (e.g., an MP3 file).\",\n + \ \"Image file (e.g., a JPEG image).\",\n \"Archive file + (e.g., a ZIP archive).\",\n \"Document or text file (e.g., MS Word + document).\",\n \"Movie project file (e.g., Microsoft Windows Movie + Maker project).\",\n \"Other non-video file type.\"\n ],\n + \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n + \ \"archive\",\n \"document\",\n \"project\",\n + \ \"other\"\n ],\n \"description\": \"The uploaded + file's type as detected by YouTube's video processing engine. Currently, YouTube + only processes video files, but this field is present whether a video file + or another type of file was uploaded.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"VideoAgeGating\": {\n \"id\": \"VideoAgeGating\",\n + \ \"properties\": {\n \"videoGameRating\": {\n \"enum\": + [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n + \ \"m17Plus\"\n ],\n \"type\": \"string\",\n \"description\": + \"Video game rating, if any.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"restricted\": {\n \"type\": \"boolean\",\n \"description\": + \"Age-restricted trailers. For redband trailers and adult-rated video-games. + Only users aged 18+ can view the content. The the field is true the content + is restricted to viewers aged 18+. Otherwise The field won't be present.\"\n + \ },\n \"alcoholContent\": {\n \"description\": \"Indicates + whether or not the video has alcoholic beverage content. Only users of legal + purchasing age in a particular country, as identified by ICAP, can view the + content.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": + \"object\"\n },\n \"ChannelBannerResource\": {\n \"type\": \"object\",\n + \ \"description\": \"A channel banner returned as the response to a channel_banner.insert + call.\",\n \"id\": \"ChannelBannerResource\",\n \"properties\": + {\n \"url\": {\n \"type\": \"string\",\n \"description\": + \"The URL of this banner image.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n + \ \"default\": \"youtube#channelBannerResource\"\n },\n \"etag\": + {\n \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsRecommendation\": + {\n \"id\": \"ActivityContentDetailsRecommendation\",\n \"description\": + \"Information that identifies the recommended resource.\",\n \"type\": + \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the recommended + resource.\",\n \"$ref\": \"ResourceId\"\n },\n \"reason\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The reason that the resource is recommended to + the user.\",\n \"enum\": [\n \"reasonUnspecified\",\n + \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n + \ ]\n },\n \"seedResourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The seedResourceId object contains + information about the resource that caused the recommendation.\"\n }\n + \ }\n },\n \"ActivityContentDetailsSubscription\": {\n \"description\": + \"Information about a channel that a user subscribed to.\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + that the user subscribed to.\"\n }\n },\n \"id\": \"ActivityContentDetailsSubscription\",\n + \ \"type\": \"object\"\n },\n \"ChannelSectionContentDetails\": + {\n \"description\": \"Details about a channelsection, including playlists + and channels.\",\n \"properties\": {\n \"playlists\": {\n \"description\": + \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, + only one playlistId is allowed.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n },\n \"channels\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"The channel ids + for type multiple_channels.\"\n }\n },\n \"id\": \"ChannelSectionContentDetails\",\n + \ \"type\": \"object\"\n },\n \"InvideoTiming\": {\n \"properties\": + {\n \"type\": {\n \"description\": \"Describes a timing type. + If the value is offsetFromStart, then the offsetMs field represents an offset + from the start of the video. If the value is offsetFromEnd, then the offsetMs + field represents an offset from the end of the video.\",\n \"type\": + \"string\",\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ]\n },\n \"offsetMs\": {\n \"format\": \"uint64\",\n + \ \"type\": \"string\",\n \"description\": \"Defines the + time at which the promotion will appear. Depending on the value of type the + value of the offsetMs field will represent a time offset from the start or + from the end of the video, expressed in milliseconds.\"\n },\n \"durationMs\": + {\n \"description\": \"Defines the duration in milliseconds for which + the promotion should be displayed. If missing, the client should use the default.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"InvideoTiming\",\n \"description\": \"Describes + a temporal position of a visual widget inside a video.\",\n \"type\": + \"object\"\n },\n \"WatchSettings\": {\n \"properties\": {\n \"featuredPlaylistId\": + {\n \"type\": \"string\",\n \"description\": \"An ID that + uniquely identifies a playlist that displays next to the video player.\"\n + \ },\n \"textColor\": {\n \"description\": \"The background + color for the video watch page's branded area.\",\n \"type\": \"string\"\n + \ },\n \"backgroundColor\": {\n \"type\": \"string\",\n + \ \"description\": \"The text color for the video watch page's branded + area.\"\n }\n },\n \"description\": \"Branding properties + for the watch. All deprecated.\",\n \"id\": \"WatchSettings\",\n \"type\": + \"object\"\n },\n \"LiveStreamListResponse\": {\n \"properties\": + {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n + \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\"\n },\n \"kind\": {\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n + \ \"default\": \"youtube#liveStreamListResponse\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"items\": {\n \"description\": \"A list of live + streams that match the request criteria.\",\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"LiveStream\"\n }\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveStreamListResponse\"\n },\n \"ChannelSection\": + {\n \"properties\": {\n \"contentDetails\": {\n \"description\": + \"The contentDetails object contains details about the channel section content, + such as a list of playlists or channels featured in the section.\",\n \"$ref\": + \"ChannelSectionContentDetails\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"localizations\": {\n \"type\": \"object\",\n \"additionalProperties\": + {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"description\": + \"Localizations for different languages\"\n },\n \"id\": {\n + \ \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel section.\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the channel section, such as its type, style and title.\",\n \"$ref\": + \"ChannelSectionSnippet\"\n },\n \"targeting\": {\n \"description\": + \"The targeting object contains basic targeting settings about the channel + section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n + \ \"default\": \"youtube#channelSection\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"ChannelSection\",\n \"type\": \"object\"\n + \ },\n \"CommentThreadReplies\": {\n \"properties\": {\n \"comments\": + {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n + \ \"type\": \"array\",\n \"description\": \"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.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"CommentThreadReplies\",\n \"description\": \"Comments written in (direct + or indirect) reply to the top level comment.\"\n },\n \"MembershipsLevelListResponse\": + {\n \"id\": \"MembershipsLevelListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"description\": \"A + list of pricing levels offered by a creator to the fans.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n + \ }\n }\n }\n },\n \"PlaylistItemStatus\": {\n \"properties\": + {\n \"privacyStatus\": {\n \"description\": \"This resource's + privacy status.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ]\n }\n },\n \"type\": + \"object\",\n \"id\": \"PlaylistItemStatus\",\n \"description\": + \"Information about the playlist item's privacy status.\"\n },\n \"LiveStreamStatus\": + {\n \"description\": \"Brief description of the live stream status.\",\n + \ \"id\": \"LiveStreamStatus\",\n \"type\": \"object\",\n \"properties\": + {\n \"streamStatus\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"created\",\n + \ \"ready\",\n \"active\",\n \"inactive\",\n + \ \"error\"\n ]\n },\n \"healthStatus\": + {\n \"description\": \"The health status of the stream.\",\n \"$ref\": + \"LiveStreamHealthStatus\"\n }\n }\n },\n \"MembershipsDuration\": + {\n \"type\": \"object\",\n \"id\": \"MembershipsDuration\",\n \"properties\": + {\n \"memberTotalDurationMonths\": {\n \"format\": \"int32\",\n + \ \"description\": \"The cumulative time the user has been a member + across all levels in complete months (the time is rounded down to the nearest + integer).\",\n \"type\": \"integer\"\n },\n \"memberSince\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the user became a continuous member across all levels.\"\n }\n + \ }\n },\n \"AbuseReport\": {\n \"type\": \"object\",\n \"id\": + \"AbuseReport\",\n \"properties\": {\n \"abuseTypes\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"AbuseType\"\n + \ }\n },\n \"description\": {\n \"type\": \"string\"\n + \ },\n \"relatedEntities\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"RelatedEntity\"\n }\n + \ },\n \"subject\": {\n \"$ref\": \"Entity\"\n }\n + \ }\n },\n \"LanguageTag\": {\n \"type\": \"object\",\n \"id\": + \"LanguageTag\",\n \"properties\": {\n \"value\": {\n \"type\": + \"string\"\n }\n }\n },\n \"CommentThreadSnippet\": {\n + \ \"properties\": {\n \"canReply\": {\n \"description\": + \"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.\",\n \"type\": + \"boolean\"\n },\n \"videoId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the video the comments refer to, if + any. No video_id implies a channel discussion comment.\"\n },\n \"channelId\": + {\n \"description\": \"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.\",\n \"type\": + \"string\"\n },\n \"isPublic\": {\n \"description\": + \"Whether the thread (and therefore all its comments) is visible to all YouTube + users.\",\n \"type\": \"boolean\"\n },\n \"topLevelComment\": + {\n \"$ref\": \"Comment\",\n \"description\": \"The top + level comment of this thread.\"\n },\n \"totalReplyCount\": + {\n \"description\": \"The total number of replies (not including + the top level comment).\",\n \"format\": \"uint32\",\n \"type\": + \"integer\"\n }\n },\n \"id\": \"CommentThreadSnippet\",\n + \ \"type\": \"object\",\n \"description\": \"Basic details about + a comment thread.\"\n },\n \"I18nLanguage\": {\n \"type\": \"object\",\n + \ \"id\": \"I18nLanguage\",\n \"description\": \"An *i18nLanguage* + resource identifies a UI language currently supported by YouTube.\",\n \"properties\": + {\n \"kind\": {\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n + \ \"default\": \"youtube#i18nLanguage\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the i18n language, such as language code + and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the i18n language.\"\n }\n }\n },\n \"ActivityContentDetailsChannelItem\": + {\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + that was added to the channel.\",\n \"$ref\": \"ResourceId\"\n }\n + \ },\n \"description\": \"Details about a resource which was added + to a channel.\"\n },\n \"Channel\": {\n \"properties\": {\n \"snippet\": + {\n \"$ref\": \"ChannelSnippet\",\n \"description\": \"The + snippet object contains basic details about the channel, such as its title, + description, and thumbnail images.\"\n },\n \"status\": {\n + \ \"$ref\": \"ChannelStatus\",\n \"description\": \"The status + object encapsulates information about the privacy status of the channel.\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel.\"\n },\n + \ \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n \"description\": + \"The statistics object encapsulates statistics for the channel.\"\n },\n + \ \"localizations\": {\n \"type\": \"object\",\n \"additionalProperties\": + {\n \"$ref\": \"ChannelLocalization\"\n },\n \"description\": + \"Localizations for different languages\"\n },\n \"kind\": {\n + \ \"type\": \"string\",\n \"default\": \"youtube#channel\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#channel\\\".\"\n },\n \"auditDetails\": + {\n \"description\": \"The auditionDetails object encapsulates channel + data that is relevant for YouTube Partners during the audition process.\",\n + \ \"$ref\": \"ChannelAuditDetails\"\n },\n \"conversionPings\": + {\n \"description\": \"The conversionPings object encapsulates information + about conversion pings that need to be respected by the channel.\",\n \"$ref\": + \"ChannelConversionPings\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"topicDetails\": {\n \"description\": \"The topicDetails + object encapsulates information about Freebase topics associated with the + channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n \"brandingSettings\": + {\n \"description\": \"The brandingSettings object encapsulates information + about the branding of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object encapsulates information about the channel's content.\",\n + \ \"$ref\": \"ChannelContentDetails\"\n },\n \"contentOwnerDetails\": + {\n \"$ref\": \"ChannelContentOwnerDetails\",\n \"description\": + \"The contentOwnerDetails object encapsulates channel data that is relevant + for YouTube Partners linked with the channel.\"\n }\n },\n \"description\": + \"A *channel* resource contains information about a YouTube channel.\",\n + \ \"id\": \"Channel\",\n \"type\": \"object\"\n },\n \"GeoPoint\": + {\n \"description\": \"Geographical coordinates of a point, in WGS84.\",\n + \ \"properties\": {\n \"longitude\": {\n \"format\": \"double\",\n + \ \"type\": \"number\",\n \"description\": \"Longitude in + degrees.\"\n },\n \"altitude\": {\n \"description\": + \"Altitude above the reference ellipsoid, in meters.\",\n \"format\": + \"double\",\n \"type\": \"number\"\n },\n \"latitude\": + {\n \"description\": \"Latitude in degrees.\",\n \"format\": + \"double\",\n \"type\": \"number\"\n }\n },\n \"id\": + \"GeoPoint\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsBulletin\": + {\n \"id\": \"ActivityContentDetailsBulletin\",\n \"type\": \"object\",\n + \ \"description\": \"Details about a channel bulletin post.\",\n \"properties\": + {\n \"resourceId\": {\n \"description\": \"The resourceId + object contains information that identifies the resource associated with a + bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": + \"ResourceId\"\n }\n }\n },\n \"SuperChatEventSnippet\": + {\n \"properties\": {\n \"amountMicros\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + purchase amount, in micros of the purchase currency. e.g., 1 is represented + as 1000000.\"\n },\n \"isSuperStickerEvent\": {\n \"description\": + \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n + \ },\n \"displayString\": {\n \"type\": \"string\",\n + \ \"description\": \"A rendered string that displays the purchase + amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the + given language.\"\n },\n \"superStickerMetadata\": {\n \"$ref\": + \"SuperStickerMetadata\",\n \"description\": \"If this event is a + Super Sticker event, this field will contain metadata about the Super Sticker.\"\n + \ },\n \"currency\": {\n \"description\": \"The currency + in which the purchase was made. ISO 4217.\",\n \"type\": \"string\"\n + \ },\n \"supporterDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n + \ \"description\": \"Details about the supporter.\"\n },\n + \ \"channelId\": {\n \"description\": \"Channel id where the + event occurred.\",\n \"type\": \"string\"\n },\n \"messageType\": + {\n \"format\": \"uint32\",\n \"description\": \"The tier + for the paid message, which is based on the amount of money spent to purchase + the message.\",\n \"type\": \"integer\"\n },\n \"commentText\": + {\n \"type\": \"string\",\n \"description\": \"The text + contents of the comment left by the user.\"\n },\n \"createdAt\": + {\n \"description\": \"The date and time when the event occurred.\",\n + \ \"format\": \"date-time\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"SuperChatEventSnippet\"\n + \ },\n \"LocalizedProperty\": {\n \"id\": \"LocalizedProperty\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"localized\": + {\n \"items\": {\n \"$ref\": \"LocalizedString\"\n },\n + \ \"type\": \"array\"\n },\n \"default\": {\n \"type\": + \"string\"\n },\n \"defaultLanguage\": {\n \"$ref\": + \"LanguageTag\",\n \"description\": \"The language of the default + property.\"\n }\n }\n },\n \"ActivityContentDetailsComment\": + {\n \"description\": \"Information about a resource that received a comment.\",\n + \ \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + associated with the comment.\",\n \"$ref\": \"ResourceId\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsComment\"\n + \ },\n \"ChannelSettings\": {\n \"properties\": {\n \"unsubscribedTrailer\": + {\n \"description\": \"The trailer of the channel, for users that + are not subscribers.\",\n \"type\": \"string\"\n },\n \"keywords\": + {\n \"description\": \"Lists keywords associated with the channel, + comma-separated.\",\n \"type\": \"string\"\n },\n \"trackingAnalyticsAccountId\": + {\n \"description\": \"The ID for a Google Analytics account to track + and measure traffic to the channels.\",\n \"type\": \"string\"\n + \ },\n \"defaultLanguage\": {\n \"type\": \"string\"\n + \ },\n \"profileColor\": {\n \"type\": \"string\",\n + \ \"description\": \"A prominent color that can be rendered on this + channel page.\"\n },\n \"showRelatedChannels\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether related channels should + be proposed.\"\n },\n \"country\": {\n \"type\": \"string\",\n + \ \"description\": \"The country of the channel.\"\n },\n \"title\": + {\n \"description\": \"Specifies the channel title.\",\n \"type\": + \"string\"\n },\n \"defaultTab\": {\n \"description\": + \"Which content tab users should see when viewing the channel.\",\n \"type\": + \"string\"\n },\n \"moderateComments\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether user-submitted comments + left on the channel page need to be approved by the channel owner to be publicly + visible.\"\n },\n \"featuredChannelsTitle\": {\n \"type\": + \"string\",\n \"description\": \"Title for the featured channels + tab.\"\n },\n \"description\": {\n \"description\": + \"Specifies the channel description.\",\n \"type\": \"string\"\n + \ },\n \"featuredChannelsUrls\": {\n \"items\": {\n + \ \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"The list of featured channels.\"\n },\n + \ \"showBrowseView\": {\n \"type\": \"boolean\",\n \"description\": + \"Whether the tab to browse the videos should be displayed.\"\n }\n + \ },\n \"id\": \"ChannelSettings\",\n \"type\": \"object\",\n + \ \"description\": \"Branding properties for the channel view.\"\n },\n + \ \"SubscriptionSnippet\": {\n \"id\": \"SubscriptionSnippet\",\n \"properties\": + {\n \"title\": {\n \"description\": \"The subscription's title.\",\n + \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": + \"The subscription's details.\",\n \"type\": \"string\"\n },\n + \ \"channelId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the subscriber's channel.\",\n \"type\": + \"string\"\n },\n \"resourceId\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.subscriptions.insert\"\n + \ ]\n },\n \"description\": \"The id object contains + information about the channel that the user subscribed to.\",\n \"$ref\": + \"ResourceId\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time that the subscription was created.\"\n },\n \"channelTitle\": + {\n \"description\": \"Channel title for the channel that the subscription + belongs to.\",\n \"type\": \"string\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A + map of thumbnail images associated with the video. 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.\"\n }\n },\n + \ \"type\": \"object\",\n \"description\": \"Basic details about + a subscription, including title, description and thumbnails of the subscribed + item.\"\n },\n \"ChannelTopicDetails\": {\n \"id\": \"ChannelTopicDetails\",\n + \ \"properties\": {\n \"topicCategories\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"A list of Wikipedia URLs that describe the channel's + content.\"\n },\n \"topicIds\": {\n \"description\": + \"A list of Freebase topic IDs associated with the channel. You can retrieve + information about each topic using the Freebase Topic API.\",\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Freebase + topic information related to the channel.\"\n },\n \"TestItem\": {\n + \ \"id\": \"TestItem\",\n \"type\": \"object\",\n \"properties\": + {\n \"id\": {\n \"type\": \"string\"\n },\n \"featuredPart\": + {\n \"type\": \"boolean\"\n },\n \"gaia\": {\n \"format\": + \"int64\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"TestItemTestItemSnippet\"\n }\n }\n },\n + \ \"ChannelProfileDetails\": {\n \"id\": \"ChannelProfileDetails\",\n + \ \"properties\": {\n \"channelUrl\": {\n \"description\": + \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"description\": \"The YouTube channel ID.\",\n \"type\": + \"string\"\n },\n \"profileImageUrl\": {\n \"description\": + \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n + \ \"displayName\": {\n \"type\": \"string\",\n \"description\": + \"The channel's display name.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"MemberSnippet\": {\n \"properties\": {\n \"membershipsDetails\": + {\n \"description\": \"Details about the user's membership.\",\n + \ \"$ref\": \"MembershipsDetails\"\n },\n \"memberDetails\": + {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": + \"Details about the member.\"\n },\n \"creatorChannelId\": {\n + \ \"description\": \"The id of the channel that's offering memberships.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"MemberSnippet\"\n },\n \"SearchResultSnippet\": {\n + \ \"id\": \"SearchResultSnippet\",\n \"description\": \"Basic details + about a search result, including title, description and thumbnails of the + item referenced by the search result.\",\n \"properties\": {\n \"title\": + {\n \"description\": \"The title of the search result.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The value that YouTube uses to uniquely identify + the channel that published the resource that the search result identifies.\"\n + \ },\n \"thumbnails\": {\n \"description\": \"A map + of thumbnail images associated with the search result. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"description\": {\n \"description\": + \"A description of the search result.\",\n \"type\": \"string\"\n + \ },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"The title of the channel that published the resource + that the search result identifies.\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"description\": \"The + creation date and time of the resource that the search result identifies.\",\n + \ \"type\": \"string\"\n },\n \"liveBroadcastContent\": + {\n \"enumDescriptions\": [\n \"\",\n \"The + live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n + \ \"The live broadcast has been completed.\"\n ],\n \"description\": + \"It indicates if the resource (video or channel) has upcoming/active live + broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active + live broadcasts.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ],\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"SearchResult\": + {\n \"description\": \"A search result contains information about a YouTube + video, channel, or playlist that matches the search parameters specified in + an API request. While a search result points to a uniquely identifiable resource, + like a video, it does not have its own persistent data.\",\n \"type\": + \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#searchResult\"\n + \ },\n \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The id object contains information that can be used to uniquely identify + the resource that matches the search request.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"SearchResultSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + a search result, such as its title or description. For example, if the search + result is a video, then the title will be the video's title and the description + will be the video's description.\"\n }\n },\n \"id\": \"SearchResult\"\n + \ },\n \"Video\": {\n \"type\": \"object\",\n \"id\": \"Video\",\n + \ \"description\": \"A *video* resource represents a YouTube video.\",\n + \ \"properties\": {\n \"projectDetails\": {\n \"$ref\": + \"VideoProjectDetails\",\n \"description\": \"The projectDetails + object contains information about the project specific video metadata. b/157517979: + This part was never populated after it was added. However, it sees non-zero + traffic because there is generated client code in the wild that refers to + it [1]. We keep this field and do NOT remove it because otherwise V3 would + return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"processingDetails\": + {\n \"$ref\": \"VideoProcessingDetails\",\n \"description\": + \"The processingDetails object encapsulates information about YouTube's progress + in processing the uploaded video file. The properties in the object identify + the current processing status and an estimate of the time remaining until + YouTube finishes processing the video. This part also indicates whether different + types of data or content, such as file details or thumbnail images, are available + for the video. The processingProgress object is designed to be polled so that + the video uploaded can track the progress that YouTube has made in processing + the uploaded video file. This data can only be retrieved by the video owner.\"\n + \ },\n \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n + \ \"description\": \"Age restriction details related to a video. This + data can only be retrieved by the video owner.\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the video, such as its title, description, and category.\",\n \"$ref\": + \"VideoSnippet\"\n },\n \"kind\": {\n \"default\": + \"youtube#video\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#video\\\".\",\n \"type\": + \"string\"\n },\n \"topicDetails\": {\n \"description\": + \"The topicDetails object encapsulates information about Freebase topics associated + with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n + \ \"monetizationDetails\": {\n \"$ref\": \"VideoMonetizationDetails\",\n + \ \"description\": \"The monetizationDetails object encapsulates information + about the monetization status of the video.\"\n },\n \"suggestions\": + {\n \"description\": \"The suggestions object encapsulates suggestions + that identify opportunities to improve the video quality or the metadata for + the uploaded video. This data can only be retrieved by the video owner.\",\n + \ \"$ref\": \"VideoSuggestions\"\n },\n \"statistics\": + {\n \"$ref\": \"VideoStatistics\",\n \"description\": \"The + statistics object contains statistics about the video.\"\n },\n \"player\": + {\n \"$ref\": \"VideoPlayer\",\n \"description\": \"The + player object contains information that you would use to play the video in + an embedded player.\"\n },\n \"recordingDetails\": {\n \"description\": + \"The recordingDetails object encapsulates information about the location, + date and address where the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n + \ },\n \"fileDetails\": {\n \"$ref\": \"VideoFileDetails\",\n + \ \"description\": \"The fileDetails object encapsulates information + about the video file that was uploaded to YouTube, including the file's resolution, + duration, audio and video codecs, stream bitrates, and more. This data can + only be retrieved by the video owner.\"\n },\n \"liveStreamingDetails\": + {\n \"description\": \"The liveStreamingDetails object contains metadata + about a live video broadcast. The object will only be present in a video resource + if the video is an upcoming, live, or completed live broadcast.\",\n \"$ref\": + \"VideoLiveStreamingDetails\"\n },\n \"status\": {\n \"$ref\": + \"VideoStatus\",\n \"description\": \"The status object contains + information about the video's uploading, processing, and privacy statuses.\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object contains information about the video content, including + the length of the video and its aspect ratio.\",\n \"$ref\": \"VideoContentDetails\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the video.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.videos.update\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"localizations\": {\n + \ \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n + \ },\n \"type\": \"object\",\n \"description\": + \"The localizations object contains localized versions of the basic details + about the video, such as its title and description.\"\n }\n }\n + \ },\n \"ChannelSectionLocalization\": {\n \"properties\": {\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The localized + strings for channel section's title.\"\n }\n },\n \"description\": + \"ChannelSection localization setting\",\n \"type\": \"object\",\n \"id\": + \"ChannelSectionLocalization\"\n },\n \"CommentThreadListResponse\": + {\n \"properties\": {\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#commentThreadListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n },\n + \ \"items\": {\n \"description\": \"A list of comment threads + that match the request criteria.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"CommentThread\"\n }\n },\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"CommentThreadListResponse\",\n + \ \"type\": \"object\"\n },\n \"SuperChatEventListResponse\": {\n + \ \"id\": \"SuperChatEventListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"items\": {\n \"description\": + \"A list of Super Chat purchases that match the request criteria.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n + \ }\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"kind\": {\n \"default\": + \"youtube#superChatEventListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ }\n }\n },\n \"VideoAbuseReportSecondaryReason\": {\n \"type\": + \"object\",\n \"properties\": {\n \"label\": {\n \"type\": + \"string\",\n \"description\": \"The localized label for this abuse + report secondary reason.\"\n },\n \"id\": {\n \"description\": + \"The ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"VideoAbuseReportSecondaryReason\"\n },\n + \ \"VideoAbuseReportReason\": {\n \"type\": \"object\",\n \"description\": + \"A `__videoAbuseReportReason__` resource identifies a reason that a video + could be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\",\n + \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n + \ \"description\": \"The `snippet` object contains basic details about + the abuse report reason.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#videoAbuseReportReason\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID of this abuse report reason.\"\n },\n \"etag\": {\n + \ \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"VideoAbuseReportReason\"\n + \ },\n \"ChannelSectionSnippet\": {\n \"description\": \"Basic details + about a channel section, including title, style and position.\",\n \"type\": + \"object\",\n \"properties\": {\n \"localized\": {\n \"$ref\": + \"ChannelSectionLocalization\",\n \"description\": \"Localized title, + read-only.\"\n },\n \"style\": {\n \"description\": + \"The style of the channel section.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n + \ \"verticalList\"\n ],\n \"type\": \"string\"\n + \ },\n \"defaultLanguage\": {\n \"description\": \"The + language of the channel section's default title and description.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that published + the channel section.\",\n \"type\": \"string\"\n },\n \"type\": + {\n \"enum\": [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n + \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n + \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n + \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n + \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n + \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The type of the channel section.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"title\": {\n \"description\": + \"The channel section's title for multiple_playlists and multiple_channels.\",\n + \ \"type\": \"string\"\n },\n \"position\": {\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The position of the channel section in the channel.\"\n }\n },\n + \ \"id\": \"ChannelSectionSnippet\"\n },\n \"ActivityContentDetails\": + {\n \"id\": \"ActivityContentDetails\",\n \"properties\": {\n \"playlistItem\": + {\n \"description\": \"The playlistItem object contains information + about a new playlist item. This property is only present if the snippet.type + is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n + \ },\n \"recommendation\": {\n \"description\": \"The + recommendation object contains information about a recommended resource. This + property is only present if the snippet.type is recommendation.\",\n \"$ref\": + \"ActivityContentDetailsRecommendation\"\n },\n \"subscription\": + {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n \"description\": + \"The subscription object contains information about a channel that a user + subscribed to. This property is only present if the snippet.type is subscription.\"\n + \ },\n \"comment\": {\n \"description\": \"The comment + object contains information about a resource that received a comment. This + property is only present if the snippet.type is comment.\",\n \"$ref\": + \"ActivityContentDetailsComment\"\n },\n \"favorite\": {\n \"$ref\": + \"ActivityContentDetailsFavorite\",\n \"description\": \"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.\"\n },\n + \ \"upload\": {\n \"$ref\": \"ActivityContentDetailsUpload\",\n + \ \"description\": \"The upload object contains information about + the uploaded video. This property is only present if the snippet.type is upload.\"\n + \ },\n \"bulletin\": {\n \"description\": \"The bulletin + object contains details about a channel bulletin post. This object is only + present if the snippet.type is bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n + \ },\n \"social\": {\n \"$ref\": \"ActivityContentDetailsSocial\",\n + \ \"description\": \"The social object contains details about a social + network post. This property is only present if the snippet.type is social.\"\n + \ },\n \"promotedItem\": {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n + \ \"description\": \"The promotedItem object contains details about + a resource which is being promoted. This property is only present if the snippet.type + is promotedItem.\"\n },\n \"channelItem\": {\n \"description\": + \"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.\",\n + \ \"$ref\": \"ActivityContentDetailsChannelItem\"\n },\n \"like\": + {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsLike\"\n + \ }\n },\n \"description\": \"Details about the content of + an activity: the video that was shared, the channel that was subscribed to, + etc.\",\n \"type\": \"object\"\n },\n \"CdnSettings\": {\n \"type\": + \"object\",\n \"id\": \"CdnSettings\",\n \"properties\": {\n \"format\": + {\n \"type\": \"string\",\n \"description\": \"The format + of the video stream that you are sending to Youtube. \",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n }\n + \ },\n \"frameRate\": {\n \"description\": \"The frame + rate of the inbound video data.\",\n \"type\": \"string\",\n \"enum\": + [\n \"30fps\",\n \"60fps\",\n \"variable\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"resolution\": {\n \"enum\": + [\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n + \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The resolution of the inbound video data.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"ingestionType\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n + \ \"hls\"\n ],\n \"description\": \" The method + or protocol used to transmit the video stream.\"\n },\n \"ingestionInfo\": + {\n \"$ref\": \"IngestionInfo\",\n \"description\": \"The + ingestionInfo object contains information that YouTube provides that you need + to transmit your RTMP or HTTP stream to YouTube.\"\n }\n },\n + \ \"description\": \"Brief description of the live stream cdn settings.\"\n + \ },\n \"VideoListResponse\": {\n \"type\": \"object\",\n \"id\": + \"VideoListResponse\",\n \"properties\": {\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"Video\"\n },\n \"type\": \"array\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#videoListResponse\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"TestItemTestItemSnippet\": {\n \"type\": + \"object\",\n \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\"\n + \ },\n \"LiveChatNewSponsorDetails\": {\n \"id\": \"LiveChatNewSponsorDetails\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"isUpgrade\": + {\n \"type\": \"boolean\",\n \"description\": \"If the viewer + just had upgraded from a lower level. For viewers that were not members at + the time of purchase, this field is false.\"\n },\n \"memberLevelName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the Level that the viewer just had joined. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\"\n }\n }\n },\n \"ThirdPartyLinkSnippet\": + {\n \"type\": \"object\",\n \"properties\": {\n \"type\": + {\n \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"description\": \"Type of the link named after the + entities that are being linked.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or about to + connect) a channel with a store on a merchandising platform in order to enable + retail commerce capabilities for that channel on YouTube.\"\n ]\n + \ },\n \"channelToStoreLink\": {\n \"description\": + \"Information specific to a link between a channel and a store on a merchandising + platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n }\n + \ },\n \"id\": \"ThirdPartyLinkSnippet\",\n \"description\": + \"Basic information about a third party account link, including its type and + type-specific information.\"\n },\n \"VideoSuggestions\": {\n \"description\": + \"Specifies suggestions on how to improve video content, including encoding + hints, tag suggestions, and editor suggestions.\",\n \"id\": \"VideoSuggestions\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"editorSuggestions\": + {\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"Picture + brightness levels seem off and could be corrected.\",\n \"The + video appears shaky and could be stabilized.\",\n \"Margins (mattes) + detected around the picture could be cropped.\",\n \"The audio + track appears silent and could be swapped with a better quality one.\"\n ],\n + \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n + \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ]\n + \ },\n \"description\": \"A list of video editing operations + that might improve the video quality or playback experience of the uploaded + video.\"\n },\n \"processingErrors\": {\n \"items\": + {\n \"enum\": [\n \"audioFile\",\n \"imageFile\",\n + \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n + \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n + \ ],\n \"enumDescriptions\": [\n \"File + contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., + a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file.\",\n \"Document + or text file (e.g., MS Word document).\",\n \"An archive file + (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout + type.\"\n ],\n \"type\": \"string\"\n },\n + \ \"description\": \"A list of errors that will prevent YouTube from + successfully processing the uploaded video video. These errors indicate that, + regardless of the video's current processing status, eventually, that status + will almost certainly be failed.\",\n \"type\": \"array\"\n },\n + \ \"processingWarnings\": {\n \"description\": \"A list of + reasons why YouTube may have difficulty transcoding the uploaded video or + that might result in an erroneous transcoding. These warnings are generated + before YouTube actually processes the uploaded video file. In addition, they + identify issues that are unlikely to cause the video processing to fail but + that might cause problems such as sync issues, video artifacts, or a missing + audio track.\",\n \"items\": {\n \"enum\": [\n \"unknownContainer\",\n + \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n + \ \"inconsistentResolution\",\n \"hasEditlist\",\n + \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n + \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n + \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n + \ \"problematicHdrLookupTable\"\n ],\n \"enumDescriptions\": + [\n \"Unrecognized file format, transcoding is likely to fail.\",\n + \ \"Unrecognized video codec, transcoding is likely to fail.\",\n + \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n + \ \"Conflicting container and stream resolutions.\",\n \"Edit + lists are not currently supported.\",\n \"Video codec that is + known to cause problems was used.\",\n \"Audio codec that is + known to cause problems was used.\",\n \"Unsupported VR video + stereo mode.\",\n \"Unsupported spherical video projection type.\",\n + \ \"Unsupported HDR pixel format.\",\n \"Unspecified + HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n + \ ],\n \"type\": \"string\"\n },\n \"type\": + \"array\"\n },\n \"processingHints\": {\n \"items\": + {\n \"enumDescriptions\": [\n \"The MP4 file is not + streamable, this will slow down the processing. MOOV atom was not found at + the beginning of the file.\",\n \"Probably a better quality version + of the video exists. The video has wide screen aspect ratio, but is not an + HD video.\",\n \"Uploaded video is spherical video.\",\n \"Uploaded + video has spatial audio.\",\n \"Uploaded video is VR video.\",\n + \ \"Uploaded video is HDR video.\"\n ],\n \"enum\": + [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n + \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n + \ \"hdrVideo\"\n ],\n \"type\": \"string\"\n + \ },\n \"type\": \"array\",\n \"description\": \"A + list of suggestions that may improve YouTube's ability to process the video.\"\n + \ },\n \"tagSuggestions\": {\n \"items\": {\n \"$ref\": + \"VideoSuggestionsTagSuggestion\"\n },\n \"type\": \"array\",\n + \ \"description\": \"A list of keyword tags that could be added to + the video's metadata to increase the likelihood that users will locate your + video when searching or browsing on YouTube.\"\n }\n }\n },\n + \ \"ActivityContentDetailsLike\": {\n \"id\": \"ActivityContentDetailsLike\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": + {\n \"description\": \"The resourceId object contains information + that identifies the rated resource.\",\n \"$ref\": \"ResourceId\"\n + \ }\n },\n \"description\": \"Information about a resource + that received a positive (like) rating.\"\n },\n \"Comment\": {\n \"description\": + \"A *comment* represents a single YouTube comment.\",\n \"properties\": + {\n \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#comment\",\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": + \"CommentSnippet\",\n \"description\": \"The snippet object contains + basic details about the comment.\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the comment.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"Comment\",\n \"type\": + \"object\"\n },\n \"MembershipsLevel\": {\n \"properties\": {\n + \ \"id\": {\n \"description\": \"The ID that YouTube assigns + to uniquely identify the memberships level.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"default\": \"youtube#membershipsLevel\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n + \ }\n },\n \"description\": \"A *membershipsLevel* resource + represents an offer made by YouTube creators for their fans. Users can become + members of the channel by joining one of the available levels. They will provide + recurring monetary support and receives special benefits.\",\n \"id\": + \"MembershipsLevel\",\n \"type\": \"object\"\n },\n \"ChannelContentDetails\": + {\n \"properties\": {\n \"relatedPlaylists\": {\n \"properties\": + {\n \"favorites\": {\n \"description\": \"The ID of + the playlist that contains the channel\\\"s favorite videos. Use the playlistItems.insert + and playlistItems.delete to add or remove items from that list.\",\n \"type\": + \"string\"\n },\n \"likes\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the playlist that + contains the channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\"\n },\n \"watchHistory\": + {\n \"description\": \"The ID of the playlist that contains the + channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\",\n \"type\": \"string\"\n + \ },\n \"uploads\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the playlist that contains the + channel\\\"s uploaded videos. Use the videos.insert method to upload new videos + and the videos.delete method to delete previously uploaded videos.\"\n },\n + \ \"watchLater\": {\n \"description\": \"The ID of + the playlist that contains the channel\\\"s watch later playlist. Use the + playlistItems.insert and playlistItems.delete to add or remove items from + that list.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ChannelContentDetails\",\n \"description\": \"Details + about the content of a channel.\"\n },\n \"PlaylistSnippet\": {\n \"id\": + \"PlaylistSnippet\",\n \"description\": \"Basic details about a playlist, + including title, description and thumbnails.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"title\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.playlists.insert\",\n + \ \"youtube.playlists.update\"\n ]\n },\n + \ \"type\": \"string\",\n \"description\": \"The playlist's + title.\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"The channel title of the channel that the video + belongs to.\"\n },\n \"localized\": {\n \"description\": + \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n + \ },\n \"tags\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"Keyword tags associated + with the playlist.\",\n \"type\": \"array\"\n },\n \"defaultLanguage\": + {\n \"description\": \"The language of the playlist's default title + and description.\",\n \"type\": \"string\"\n },\n \"publishedAt\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time that the playlist was created.\"\n + \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + playlist. 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.\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that published + the playlist.\",\n \"type\": \"string\"\n },\n \"thumbnailVideoId\": + {\n \"description\": \"Note: if the playlist has a custom thumbnail, + this field will not be populated. The video id selected by the user that will + be used as the thumbnail of this playlist. This field defaults to the first + publicly viewable video in the playlist, if: 1. The user has never selected + a video to be the thumbnail of the playlist. 2. The user selects a video to + be the thumbnail, and then removes that video from the playlist. 3. The user + selects a non-owned video to be the thumbnail, but that video becomes private, + or gets deleted.\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"description\": \"The playlist's description.\",\n \"type\": + \"string\"\n }\n }\n },\n \"I18nLanguageListResponse\": + {\n \"id\": \"I18nLanguageListResponse\",\n \"properties\": {\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#i18nLanguageListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"I18nLanguage\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of supported i18n languages. In this map, the i18n language ID is + the map key, and its value is the corresponding i18nLanguage resource.\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": + {\n \"type\": \"object\",\n \"description\": \"Live broadcast state.\",\n + \ \"properties\": {\n \"madeForKids\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether the broadcast is made for kids or not, + decided by YouTube instead of the creator. This field is read only.\"\n },\n + \ \"selfDeclaredMadeForKids\": {\n \"description\": \"This + field will be set to True if the creator declares the broadcast to be kids + only: go/live-cw-work.\",\n \"type\": \"boolean\"\n },\n \"liveBroadcastPriority\": + {\n \"enumDescriptions\": [\n \"\",\n \"Low + priority broadcast: for low view count HoAs or other low priority broadcasts.\",\n + \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n + \ \"High priority broadcast: for high profile HoAs, like PixelCorp + ones.\"\n ],\n \"type\": \"string\",\n \"description\": + \"Priority of the live broadcast event (internal state).\",\n \"enum\": + [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n + \ \"normal\",\n \"high\"\n ]\n },\n \"privacyStatus\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The broadcast's privacy status. Note that the broadcast represents exactly + one YouTube video, so the privacy settings are identical to those supported + for videos. In addition, you can set this field by modifying the broadcast + resource or by setting the privacyStatus field of the corresponding video + resource.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ]\n },\n \"recordingStatus\": + {\n \"description\": \"The broadcast's recording status.\",\n \"enumDescriptions\": + [\n \"No value or the value is unknown.\",\n \"The recording + has not yet been started.\",\n \"The recording is currently on.\",\n + \ \"The recording is completed, and cannot be started again.\"\n + \ ],\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n + \ \"notRecording\",\n \"recording\",\n \"recorded\"\n + \ ],\n \"type\": \"string\"\n },\n \"lifeCycleStatus\": + {\n \"type\": \"string\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n + \ \"created\",\n \"ready\",\n \"testing\",\n + \ \"live\",\n \"complete\",\n \"revoked\",\n + \ \"testStarting\",\n \"liveStarting\"\n ],\n + \ \"enumDescriptions\": [\n \"No value or the value is + unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete + settings\",\n \"Visible only to partner, may need special UI treatment\",\n + \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n + \ \"The broadcast is finished.\",\n \"This broadcast + was removed by admin action\",\n \"Transition into TESTING has + been requested\",\n \"Transition into LIVE has been requested\"\n + \ ],\n \"description\": \"The broadcast's status. The status + can be updated using the API's liveBroadcasts.transition method.\"\n }\n + \ },\n \"id\": \"LiveBroadcastStatus\"\n },\n \"LiveChatMessageRetractedDetails\": + {\n \"properties\": {\n \"retractedMessageId\": {\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveChatMessageRetractedDetails\"\n },\n \"SuperChatEvent\": {\n \"id\": + \"SuperChatEvent\",\n \"type\": \"object\",\n \"description\": \"A + `__superChatEvent__` resource represents a Super Chat purchase on a YouTube + channel.\",\n \"properties\": {\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n \"default\": + \"youtube#superChatEvent\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely + identify the Super Chat event.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"snippet\": {\n \"description\": \"The `snippet` object + contains basic details about the Super Chat event.\",\n \"$ref\": + \"SuperChatEventSnippet\"\n }\n }\n },\n \"ChannelToStoreLinkDetails\": + {\n \"properties\": {\n \"storeUrl\": {\n \"description\": + \"Landing page of the store.\",\n \"type\": \"string\"\n },\n + \ \"merchantId\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"Google Merchant Center id of the + store.\"\n },\n \"storeName\": {\n \"type\": \"string\",\n + \ \"description\": \"Name of the store.\"\n }\n },\n \"description\": + \"Information specific to a store on a merchandising platform linked to a + YouTube channel.\",\n \"id\": \"ChannelToStoreLinkDetails\",\n \"type\": + \"object\"\n },\n \"PlaylistItemListResponse\": {\n \"id\": \"PlaylistItemListResponse\",\n + \ \"properties\": {\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n },\n + \ \"description\": \"A list of playlist items that match the request + criteria.\",\n \"type\": \"array\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\"\n },\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#playlistItemListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". + Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n }\n },\n \"type\": \"object\"\n },\n + \ \"RelatedEntity\": {\n \"id\": \"RelatedEntity\",\n \"properties\": + {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"LiveChatMessageDeletedDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageDeletedDetails\",\n + \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": + \"string\"\n }\n }\n },\n \"SearchListResponse\": {\n \"type\": + \"object\",\n \"properties\": {\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"regionCode\": {\n \"type\": \"string\"\n },\n + \ \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"kind\": {\n \"default\": + \"youtube#searchListResponse\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": + \"Pagination information for token pagination.\",\n \"items\": {\n + \ \"$ref\": \"SearchResult\"\n }\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"SearchListResponse\"\n },\n + \ \"CommentSnippetAuthorChannelId\": {\n \"description\": \"The id + of the author's YouTube channel, if any.\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"value\": {\n + \ \"type\": \"string\"\n }\n }\n },\n \"LiveChatTextMessageDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"messageText\": + {\n \"description\": \"The user's message.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveChatTextMessageDetails\"\n + \ },\n \"Caption\": {\n \"type\": \"object\",\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the caption.\",\n \"$ref\": + \"CaptionSnippet\"\n },\n \"id\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.update\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the caption track.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#caption\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#caption\\\".\"\n }\n },\n + \ \"description\": \"A *caption* resource represents a YouTube caption + track. A caption track is associated with exactly one YouTube video.\",\n + \ \"id\": \"Caption\"\n },\n \"Playlist\": {\n \"description\": + \"A *playlist* resource represents a YouTube playlist. A playlist is a collection + of videos that can be viewed sequentially and shared with other users. A playlist + can contain up to 200 videos, and YouTube does not limit the number of playlists + that each user creates. By default, playlists are publicly visible to other + users, but playlists can be public or private. YouTube also uses playlists + to identify special collections of videos for a channel, such as: - uploaded + videos - favorite videos - positively rated (liked) videos - watch history + - watch later To be more specific, these lists are associated with a channel, + which is a collection of a person, group, or company's videos, playlists, + and other YouTube information. You can retrieve the playlist IDs for each + of these lists from the channel resource for a given channel. You can then + use the playlistItems.list method to retrieve any of those lists. You can + also add or remove items from those lists by calling the playlistItems.insert + and playlistItems.delete methods.\",\n \"type\": \"object\",\n \"properties\": + {\n \"kind\": {\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n + \ \"default\": \"youtube#playlist\",\n \"type\": \"string\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the playlist.\"\n },\n + \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": + \"PlaylistLocalization\"\n },\n \"description\": \"Localizations + for different languages\",\n \"type\": \"object\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"status\": {\n \"description\": + \"The status object contains status information for the playlist.\",\n \"$ref\": + \"PlaylistStatus\"\n },\n \"player\": {\n \"$ref\": + \"PlaylistPlayer\",\n \"description\": \"The player object contains + information that you would use to play the playlist in an embedded player.\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the playlist, such as its title and description.\",\n + \ \"$ref\": \"PlaylistSnippet\"\n },\n \"contentDetails\": + {\n \"$ref\": \"PlaylistContentDetails\",\n \"description\": + \"The contentDetails object contains information like video count.\"\n }\n + \ },\n \"id\": \"Playlist\"\n },\n \"LiveChatMembershipGiftingDetails\": + {\n \"properties\": {\n \"giftMembershipsCount\": {\n \"type\": + \"integer\",\n \"description\": \"The number of gift memberships + purchased by the user.\",\n \"format\": \"int32\"\n },\n \"giftMembershipsLevelName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the level of the gift memberships purchased by the user. The Level names + are defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n \"ChannelSnippet\": + {\n \"description\": \"Basic details about a channel, including title, + description and thumbnails.\",\n \"type\": \"object\",\n \"id\": + \"ChannelSnippet\",\n \"properties\": {\n \"publishedAt\": {\n + \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time that the channel was created.\"\n },\n \"country\": + {\n \"description\": \"The country of the channel.\",\n \"type\": + \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"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. When displaying thumbnails in your application, make sure that + your code uses the image URLs exactly as they are returned in API responses. + For example, your application should not use the http domain instead of the + https domain in a URL returned in an API response. Beginning in July 2018, + channel thumbnail URLs will only be available in the https domain, which is + how the URLs appear in API responses. After that time, you might see broken + images in your application if it tries to load YouTube images from the http + domain. Thumbnail images might be empty for newly created channels and might + take up to one day to populate.\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The language + of the channel's default title and description.\"\n },\n \"customUrl\": + {\n \"type\": \"string\",\n \"description\": \"The custom + url of the channel.\"\n },\n \"localized\": {\n \"$ref\": + \"ChannelLocalization\",\n \"description\": \"Localized title and + description, read-only.\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The description of the channel.\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The channel's title.\"\n }\n }\n },\n \"SuperStickerMetadata\": + {\n \"id\": \"SuperStickerMetadata\",\n \"properties\": {\n \"stickerId\": + {\n \"type\": \"string\",\n \"description\": \"Unique identifier + of the Super Sticker. This is a shorter form of the alt_text that includes + pack name and a recognizable characteristic of the sticker.\"\n },\n + \ \"altText\": {\n \"type\": \"string\",\n \"description\": + \"Internationalized alt text that describes the sticker image and any animation + associated with it.\"\n },\n \"altTextLanguage\": {\n \"type\": + \"string\",\n \"description\": \"Specifies the localization language + in which the alt text is returned.\"\n }\n },\n \"type\": + \"object\"\n },\n \"LiveChatFanFundingEventDetails\": {\n \"properties\": + {\n \"amountDisplayString\": {\n \"type\": \"string\",\n \"description\": + \"A rendered string that displays the fund amount and currency to the user.\"\n + \ },\n \"userComment\": {\n \"description\": \"The comment + added by the user to this fan funding event.\",\n \"type\": \"string\"\n + \ },\n \"amountMicros\": {\n \"format\": \"uint64\",\n + \ \"type\": \"string\",\n \"description\": \"The amount of + the fund.\"\n },\n \"currency\": {\n \"description\": + \"The currency in which the fund was made.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"type\": + \"object\"\n },\n \"VideoCategory\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoCategory\",\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#videoCategory\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#videoCategory\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video category.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the video category, including its title.\"\n }\n },\n \"description\": + \"A *videoCategory* resource identifies a category that has been or could + be associated with uploaded videos.\"\n },\n \"VideoContentDetails\": + {\n \"description\": \"Details about the content of a YouTube Video.\",\n + \ \"properties\": {\n \"projection\": {\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"rectangular\",\n \"360\"\n ],\n \"type\": + \"string\",\n \"description\": \"Specifies the projection format + of the video.\"\n },\n \"dimension\": {\n \"description\": + \"The value of dimension indicates whether the video is available in 3D or + in 2D.\",\n \"type\": \"string\"\n },\n \"duration\": + {\n \"type\": \"string\",\n \"description\": \"The length + of the video. The tag value is an ISO 8601 duration in the format PT#M#S, + in which the letters PT indicate that the value specifies a period of time, + and the letters M and S refer to length in minutes and seconds, respectively. + The # characters preceding the M and S letters are both integers that specify + the number of minutes (or seconds) of the video. For example, a value of PT15M51S + indicates that the video is 15 minutes and 51 seconds long.\"\n },\n + \ \"contentRating\": {\n \"$ref\": \"ContentRating\",\n \"description\": + \"Specifies the ratings that the video received under various rating schemes.\"\n + \ },\n \"licensedContent\": {\n \"type\": \"boolean\",\n + \ \"description\": \"The value of is_license_content indicates whether + the video is licensed content.\"\n },\n \"countryRestriction\": + {\n \"description\": \"The countryRestriction object contains information + about the countries where a video is (or is not) viewable.\",\n \"$ref\": + \"AccessPolicy\"\n },\n \"regionRestriction\": {\n \"$ref\": + \"VideoContentDetailsRegionRestriction\",\n \"description\": \"The + regionRestriction object contains information about the countries where a + video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed + property or the contentDetails.regionRestriction.blocked property.\"\n },\n + \ \"caption\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"true\",\n + \ \"false\"\n ],\n \"description\": \"The value + of captions indicates whether the video has captions or not.\",\n \"type\": + \"string\"\n },\n \"hasCustomThumbnail\": {\n \"type\": + \"boolean\",\n \"description\": \"Indicates whether the video uploader + has provided a custom thumbnail image for the video. This property is only + visible to the video uploader.\"\n },\n \"definition\": {\n + \ \"description\": \"The value of definition indicates whether the + video is available in high definition or only in standard definition.\",\n + \ \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"sd\",\n + \ \"hd\"\n ]\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"VideoContentDetails\"\n },\n \"ThirdPartyLinkListResponse\": + {\n \"properties\": {\n \"items\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n }\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n + \ \"default\": \"youtube#thirdPartyLinkListResponse\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ThirdPartyLinkListResponse\"\n },\n \"TokenPagination\": + {\n \"description\": \"Stub token pagination template to suppress results.\",\n + \ \"properties\": {},\n \"type\": \"object\",\n \"id\": \"TokenPagination\"\n + \ },\n \"ImageSettings\": {\n \"description\": \"Branding properties + for images associated with the channel.\",\n \"properties\": {\n \"bannerTabletExtraHdImageUrl\": + {\n \"description\": \"Banner image. Tablet size extra high resolution + (2560x424).\",\n \"type\": \"string\"\n },\n \"watchIconImageUrl\": + {\n \"type\": \"string\"\n },\n \"trackingImageUrl\": + {\n \"description\": \"The URL for a 1px by 1px tracking pixel that + can be used to collect statistics for views of the channel or video pages.\",\n + \ \"type\": \"string\"\n },\n \"backgroundImageUrl\": + {\n \"description\": \"The URL for the background image shown on + the video watch page. The image should be 1200px by 615px, with a maximum + file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n + \ \"bannerMobileHdImageUrl\": {\n \"type\": \"string\",\n \"description\": + \"Banner image. Mobile size high resolution (1280x360).\"\n },\n \"smallBrandedBannerImageUrl\": + {\n \"description\": \"The URL for the 640px by 70px banner image + that appears below the video player in the default view of the video watch + page. The URL for the image that appears above the top-left corner of the + video player. This is a 25-pixel-high image with a flexible width that cannot + exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n + \ \"bannerMobileExtraHdImageUrl\": {\n \"description\": \"Banner + image. Mobile size high resolution (1440x395).\",\n \"type\": \"string\"\n + \ },\n \"largeBrandedBannerImageUrl\": {\n \"$ref\": + \"LocalizedProperty\",\n \"description\": \"The URL for the 854px + by 70px image that appears below the video player in the expanded video view + of the video watch page.\"\n },\n \"bannerExternalUrl\": {\n + \ \"type\": \"string\",\n \"description\": \"This is generated + when a ChannelBanner.Insert request has succeeded for the given channel.\"\n + \ },\n \"bannerMobileImageUrl\": {\n \"description\": + \"Banner image. Mobile size (640x175).\",\n \"type\": \"string\"\n + \ },\n \"bannerTvMediumImageUrl\": {\n \"description\": + \"Banner image. TV size medium resolution (1280x720).\",\n \"type\": + \"string\"\n },\n \"largeBrandedBannerImageImapScript\": {\n + \ \"$ref\": \"LocalizedProperty\",\n \"description\": \"The + image map script for the large banner image.\"\n },\n \"bannerImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Desktop size (1060x175).\"\n },\n \"bannerTvImageUrl\": {\n + \ \"description\": \"Banner image. TV size extra high resolution (2120x1192).\",\n + \ \"type\": \"string\"\n },\n \"bannerTabletLowImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size low resolution (1138x188).\"\n },\n \"bannerTvHighImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size high resolution (1920x1080).\"\n },\n \"bannerTabletHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size high resolution (2276x377).\"\n },\n \"bannerTabletImageUrl\": + {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n + \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": + {\n \"description\": \"The image map script for the small banner + image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileLowImageUrl\": + {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n + \ \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size medium/high resolution (960x263).\"\n },\n \"bannerTvLowImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size low resolution (854x480).\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"ImageSettings\"\n },\n \"VideoFileDetailsAudioStream\": + {\n \"properties\": {\n \"channelCount\": {\n \"type\": + \"integer\",\n \"description\": \"The number of audio channels that + the stream contains.\",\n \"format\": \"uint32\"\n },\n \"vendor\": + {\n \"description\": \"A value that uniquely identifies a video vendor. + Typically, the value is a four-letter vendor code.\",\n \"type\": + \"string\"\n },\n \"codec\": {\n \"description\": \"The + audio codec that the stream uses.\",\n \"type\": \"string\"\n },\n + \ \"bitrateBps\": {\n \"description\": \"The audio stream's + bitrate, in bits per second.\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n }\n },\n \"id\": \"VideoFileDetailsAudioStream\",\n + \ \"description\": \"Information about an audio stream.\",\n \"type\": + \"object\"\n },\n \"CommentThread\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"id\": {\n \"description\": \"The + ID that YouTube uses to uniquely identify the comment thread.\",\n \"type\": + \"string\"\n },\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n + \ \"description\": \"The replies object contains a limited number + of replies (if any) to the top level comment found in the snippet.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": + \"youtube#commentThread\",\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": + \"CommentThreadSnippet\",\n \"description\": \"The snippet object + contains basic details about the comment thread and also the top level comment.\"\n + \ }\n },\n \"description\": \"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.\",\n \"id\": + \"CommentThread\"\n },\n \"LiveChatMessage\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveChatMessage\",\n \"description\": \"A *liveChatMessage* + resource represents a chat message in a YouTube Live Chat.\",\n \"properties\": + {\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the message.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"authorDetails\": + {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n \"description\": + \"The authorDetails object contains basic details about the user that posted + this message.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the message.\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#liveChatMessage\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n + \ }\n }\n },\n \"IngestionInfo\": {\n \"id\": \"IngestionInfo\",\n + \ \"properties\": {\n \"ingestionAddress\": {\n \"description\": + \"The primary ingestion URL that you should use to stream video to YouTube. + You must stream video to this URL. Depending on which application or tool + you use to encode your video stream, you may need to enter the stream URL + and stream name separately or you may need to concatenate them in the following + format: *STREAM_URL/STREAM_NAME* \",\n \"type\": \"string\"\n },\n + \ \"streamName\": {\n \"type\": \"string\",\n \"description\": + \"The stream name that YouTube assigns to the video stream.\"\n },\n + \ \"backupIngestionAddress\": {\n \"description\": \"The backup + ingestion URL that you should use to stream video to YouTube. You have the + option of simultaneously streaming the content that you are sending to the + ingestionAddress to this URL.\",\n \"type\": \"string\"\n },\n + \ \"rtmpsBackupIngestionAddress\": {\n \"description\": \"This + ingestion url may be used instead of backupIngestionAddress in order to stream + via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n + \ },\n \"rtmpsIngestionAddress\": {\n \"description\": + \"This ingestion url may be used instead of ingestionAddress in order to stream + via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Describes information necessary + for ingesting an RTMP, HTTP, or SRT stream.\",\n \"type\": \"object\"\n + \ },\n \"ContentRating\": {\n \"description\": \"Ratings schemes. + The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n + \ \"id\": \"ContentRating\",\n \"type\": \"object\",\n \"properties\": + {\n \"pefilmRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n + \ \"18\",\n \"\"\n ],\n \"description\": + \"The video's rating in Peru.\",\n \"enum\": [\n \"pefilmUnspecified\",\n + \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n + \ \"pefilm18\",\n \"pefilmUnrated\"\n ]\n },\n + \ \"csaRating\": {\n \"description\": \"The video's rating + from France's Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast + content.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"Interdiction\",\n + \ \"\"\n ],\n \"enum\": [\n \"csaUnspecified\",\n + \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n + \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n + \ ]\n },\n \"skfilmRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n + \ ],\n \"enum\": [\n \"skfilmUnspecified\",\n + \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n + \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"description\": + \"The video's rating in Slovakia.\"\n },\n \"czfilmRating\": + {\n \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n + \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n + \ \"czfilmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n + \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating in the Czech Republic.\"\n + \ },\n \"eefilmRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n + \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n + \ \"K-16\",\n \"\"\n ],\n \"enum\": + [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n \"eefilmL\",\n + \ \"eefilmMs6\",\n \"eefilmK6\",\n \"eefilmMs12\",\n + \ \"eefilmK12\",\n \"eefilmK14\",\n \"eefilmK16\",\n + \ \"eefilmUnrated\"\n ],\n \"description\": \"The + video's rating in Estonia.\",\n \"type\": \"string\"\n },\n + \ \"nkclvRating\": {\n \"description\": \"The video's rating + from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"U\",\n \"7+\",\n \"12+\",\n \"! + 16+\",\n \"18+\",\n \"\"\n ],\n \"enum\": + [\n \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n + \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n + \ \"nkclvUnrated\"\n ]\n },\n \"resorteviolenciaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n + \ \"\"\n ],\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n + \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n + \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating in Venezuela.\"\n },\n \"mccaaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG\",\n \"12A\",\n \"12\",\n \"14 + - this rating was removed from the new classification structure introduced + in 2013.\",\n \"15\",\n \"16 - this rating was removed + from the new classification structure introduced in 2013.\",\n \"18\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n + \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n + \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n + \ \"mccaaUnrated\"\n ],\n \"description\": \"The + video's rating from Malta's Film Age-Classification Board.\"\n },\n + \ \"agcomRating\": {\n \"enum\": [\n \"agcomUnspecified\",\n + \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n + \ \"agcomUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n + \ \"type\": \"string\"\n },\n \"incaaRating\": {\n \"enum\": + [\n \"incaaUnspecified\",\n \"incaaAtp\",\n \"incaaSam13\",\n + \ \"incaaSam16\",\n \"incaaSam18\",\n \"incaaC\",\n + \ \"incaaUnrated\"\n ],\n \"description\": \"The + video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) + rating.\",\n \"enumDescriptions\": [\n \"\",\n \"ATP + (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 + a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n + \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X + (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"smaisRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating in Iceland.\",\n \"enum\": [\n \"smaisUnspecified\",\n + \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n + \ \"smais14\",\n \"smais16\",\n \"smais18\",\n + \ \"smaisUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n + \ \"14\",\n \"16\",\n \"18\",\n \"\"\n + \ ]\n },\n \"egfilmRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n + \ \"egfilm18\",\n \"egfilmBn\",\n \"egfilmUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n + \ \"18\",\n \"BN\",\n \"\"\n ],\n + \ \"description\": \"The video's rating in Egypt.\"\n },\n + \ \"cccRating\": {\n \"description\": \"The video's Consejo + de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n \"enum\": + [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n + \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n + \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Todo espectador\",\n \"6+ - + Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n + \ \"18+ - contenido excesivamente violento\",\n \"18+ + - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"fskRating\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft + (FSK - Germany) rating.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"FSK 0\",\n \"FSK 6\",\n \"FSK 12\",\n + \ \"FSK 16\",\n \"FSK 18\",\n \"\"\n ],\n + \ \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n + \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n + \ \"fskUnrated\"\n ]\n },\n \"oflcRating\": + {\n \"description\": \"The video's Office of Film and Literature + Classification (OFLC - New Zealand) rating.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n + \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n + \ \"RP16\",\n \"RP18\"\n ],\n \"enum\": + [\n \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n + \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n + \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n + \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n + \ ]\n },\n \"mcstRating\": {\n \"description\": + \"The video's rating system for Vietnam - MCST\",\n \"enum\": [\n + \ \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n + \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n + \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n + \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n + \ \"\"\n ]\n },\n \"nfrcRating\": {\n \"enum\": + [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n + \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Bulgarian + National Film Center.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n + \ \"D\",\n \"X\",\n \"\"\n ]\n },\n + \ \"fcoRating\": {\n \"enum\": [\n \"fcoUnspecified\",\n + \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n + \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from Hong Kong's Office for Film, Newspaper and Article + Administration.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"I\",\n \"IIA\",\n \"IIB\",\n \"II\",\n + \ \"III\",\n \"\"\n ]\n },\n \"catvfrRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"8+\",\n \"13+\",\n \"16+\",\n + \ \"18+\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n + \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n + \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n + \ ],\n \"description\": \"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.\"\n },\n \"fcbmRating\": {\n \"enum\": [\n + \ \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n + \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n + \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n + \ \"fcbmUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n + \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from Malaysia's + Film Censorship Board.\"\n },\n \"cncRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"E\",\n \"interdiction\",\n \"\"\n ],\n + \ \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n + \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n + \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n + \ ],\n \"description\": \"Rating system in France - Commission + de classification cinematographique\"\n },\n \"kijkwijzerRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n + \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's NICAM/Kijkwijzer rating from the + Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\",\n + \ \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n + \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n + \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n + \ ]\n },\n \"djctqRating\": {\n \"enum\": [\n + \ \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n + \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n + \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n + \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n + \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n + \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n + \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n + \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"L\",\n + \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n + \ \"18\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o + e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"type\": \"string\"\n + \ },\n \"rteRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n + \ \"MA\",\n \"\"\n ],\n \"description\": + \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n + \ \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n + \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"cscfRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n + \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"description\": \"The video's rating from Luxembourg's Commission + de surveillance de la classification des films (CSCF).\",\n \"enum\": + [\n \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n + \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n + \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"nfvcbRating\": + {\n \"description\": \"The video's rating from Nigeria's National + Film and Video Censors Board.\",\n \"type\": \"string\",\n \"enum\": + [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n \"nfvcbPg\",\n + \ \"nfvcb12\",\n \"nfvcb12a\",\n \"nfvcb15\",\n + \ \"nfvcb18\",\n \"nfvcbRe\",\n \"nfvcbUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n + \ \"18\",\n \"RE\",\n \"\"\n ]\n + \ },\n \"kfcbRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n + \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Kenya + Film Classification Board.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"GE\",\n \"PG\",\n \"16\",\n \"18\",\n + \ \"\"\n ]\n },\n \"russiaRating\": {\n \"enum\": + [\n \"russiaUnspecified\",\n \"russia0\",\n \"russia6\",\n + \ \"russia12\",\n \"russia16\",\n \"russia18\",\n + \ \"russiaUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's National Film Registry of the Russian + Federation (MKRF - Russia) rating.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n + \ \"16+\",\n \"18+\",\n \"\"\n ]\n + \ },\n \"menaMpaaRating\": {\n \"type\": \"string\",\n + \ \"description\": \"The rating system for MENA countries, a clone + of MPAA. It is needed to prevent titles go live w/o additional QC check, since + some of them can be inappropriate for the countries at all. See b/33408548 + for more details.\",\n \"enum\": [\n \"menaMpaaUnspecified\",\n + \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n + \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To + keep the same enum values as MPAA's items have, skip NC_17.\"\n ]\n + \ },\n \"mibacRating\": {\n \"enum\": [\n \"mibacUnspecified\",\n + \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n + \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n + \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"description\": + \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali + e del Turismo (Italy).\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"acbRating\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n + \ \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n + \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n + \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n + \ \"acbUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"Programs that have + been given a P classification by the Australian Communications and Media Authority. + These programs are intended for preschool children.\",\n \"Programs + that have been given a C classification by the Australian Communications and + Media Authority. These programs are intended for children (other than preschool + children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n + \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n + \ ]\n },\n \"chfilmRating\": {\n \"description\": + \"The video's rating in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n + \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n + \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\"\n ]\n + \ },\n \"mpaatRating\": {\n \"description\": \"The rating + system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n + \ \"RB\"\n ],\n \"enum\": [\n \"mpaatUnspecified\",\n + \ \"mpaatGb\",\n \"mpaatRb\"\n ],\n \"type\": + \"string\"\n },\n \"nbcRating\": {\n \"description\": + \"The video's rating from the Maldives National Bureau of Classification.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n + \ \"18+R\",\n \"PU\",\n \"\"\n ],\n + \ \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n + \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n + \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n + \ \"nbcUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"mccypRating\": {\n \"enum\": [\n \"mccypUnspecified\",\n + \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n + \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"7\",\n \"11\",\n \"15\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from the Danish + Film Institute's (Det Danske Filminstitut) Media Council for Children and + Young People.\"\n },\n \"rcnofRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"rcnofUnspecified\",\n + \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n + \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n + \ \"rcnofUnrated\"\n ],\n \"description\": \"The + video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee + of the National Office of Film.\"\n },\n \"moctwRating\": {\n + \ \"description\": \"The video's rating from Taiwan's Ministry of + Culture (\u6587\u5316\u90E8).\",\n \"enum\": [\n \"moctwUnspecified\",\n + \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n + \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n + \ \"moctwR15\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"G\",\n \"P\",\n \"PG\",\n + \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n + \ ],\n \"type\": \"string\"\n },\n \"cceRating\": + {\n \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n + \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n + \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n + \ ],\n \"description\": \"The video's rating from Portugal's + Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enumDescriptions\": + [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\",\n \"14\"\n + \ ],\n \"type\": \"string\"\n },\n \"ifcoRating\": + {\n \"type\": \"string\",\n \"description\": \"The video's + Irish Film Classification Office (IFCO - Ireland) rating. See the IFCO website + for more information.\",\n \"enum\": [\n \"ifcoUnspecified\",\n + \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n + \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n + \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n + \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n + \ ]\n },\n \"anatelRating\": {\n \"enum\": + [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n + \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n + \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for + Chilean television.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n + \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n + \ ]\n },\n \"bfvcRating\": {\n \"enum\": [\n + \ \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n + \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n + \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n + \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from Thailand's Board of Film and Video Censors.\"\n },\n \"cbfcRating\": + {\n \"description\": \"The video's Central Board of Film Certification + (CBFC - India) rating.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"U\",\n \"U/A\",\n \"U/A 7+\",\n \"U/A + 13+\",\n \"U/A 16+\",\n \"A\",\n \"S\",\n + \ \"\"\n ],\n \"enum\": [\n \"cbfcUnspecified\",\n + \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n + \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n + \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"ytRating\": {\n \"enum\": [\n \"ytUnspecified\",\n + \ \"ytAgeRestricted\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"A rating that YouTube uses to identify + age-restricted content.\"\n },\n \"fpbRatingReasons\": {\n \"items\": + {\n \"enumDescriptions\": [\n \"\",\n \"South + Africa rating content descriptors.\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n + \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n + \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n + \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n + \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n + \ ],\n \"type\": \"string\"\n },\n \"type\": + \"array\",\n \"description\": \"Reasons that explain why the video + received its FPB (South Africa) rating.\"\n },\n \"mdaRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"mdaUnspecified\",\n + \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n + \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n + \ \"mdaUnrated\"\n ],\n \"description\": \"The + video's rating from Singapore's Media Development Authority (MDA) and, specifically, + it's Board of Film Censors (BFC).\",\n \"enumDescriptions\": [\n + \ \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n + \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n + \ ]\n },\n \"kmrbRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 + \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n + \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n + \ \"\"\n ],\n \"enum\": [\n \"kmrbUnspecified\",\n + \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n + \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) + rating. The KMRB rates videos in South Korea.\"\n },\n \"bbfcRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"bbfcUnspecified\",\n + \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n + \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n + \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n + \ \"\"\n ],\n \"description\": \"The video's British + Board of Film Classification (BBFC) rating.\"\n },\n \"medietilsynetRating\": + {\n \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n + \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n + \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n + \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from Medietilsynet, the Norwegian Media Authority.\"\n + \ },\n \"icaaRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales + (ICAA - Spain) rating.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"APTA\",\n \"7\",\n \"12\",\n \"13\",\n + \ \"16\",\n \"18\",\n \"X\",\n \"\"\n + \ ],\n \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n + \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n + \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n + \ \"icaaUnrated\"\n ]\n },\n \"mpaaRating\": + {\n \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n + \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n + \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n + \ \"! X\",\n \"\"\n ],\n \"description\": + \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"type\": + \"string\"\n },\n \"chvrsRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"chvrsUnspecified\",\n \"chvrsG\",\n + \ \"chvrsPg\",\n \"chvrs14a\",\n \"chvrs18a\",\n + \ \"chvrsR\",\n \"chvrsE\",\n \"chvrsUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n + \ \"E\",\n \"\"\n ],\n \"description\": + \"The video's Canadian Home Video Rating System (CHVRS) rating.\"\n },\n + \ \"rtcRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"AA\",\n \"A\",\n \"B\",\n \"B15\",\n + \ \"C\",\n \"D\",\n \"\"\n ],\n \"enum\": + [\n \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n + \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n + \ \"rtcUnrated\"\n ],\n \"description\": \"The + video's General Directorate of Radio, Television and Cinematography (Mexico) + rating.\",\n \"type\": \"string\"\n },\n \"cicfRating\": + {\n \"description\": \"The video's rating from the Commission de + Contr\xF4le des Films (Belgium).\",\n \"enumDescriptions\": [\n \"\",\n + \ \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"cicfUnspecified\",\n + \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n + \ \"cicfUnrated\"\n ]\n },\n \"nbcplRating\": + {\n \"description\": \"The video's rating in Poland.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"nbcplUnspecified\",\n + \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n + \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n + \ ]\n },\n \"fmocRating\": {\n \"enum\": [\n + \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n + \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n + \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"This property has been deprecated. Use the contentDetails.contentRating.cncRating + instead.\"\n },\n \"ecbmctRating\": {\n \"enum\": [\n + \ \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n + \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n + \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n + \ \"ecbmctUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n + \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n + \ ],\n \"description\": \"Rating system in Turkey - Evaluation + and Classification Board of the Ministry of Culture and Tourism\"\n },\n + \ \"smsaRating\": {\n \"enum\": [\n \"smsaUnspecified\",\n + \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n + \ \"smsa15\",\n \"smsaUnrated\"\n ],\n \"description\": + \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n + \ \"enumDescriptions\": [\n \"\",\n \"All ages\",\n + \ \"7\",\n \"11\",\n \"15\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"djctqRatingReasons\": + {\n \"items\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"Brazil rating content descriptors. See http://go/brazilratings + section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema + (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n + \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo + Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas + L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n + \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos + Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting + content)\"\n ],\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n + \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n + \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n + \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n + \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n + \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n + \ ],\n \"type\": \"string\"\n },\n \"type\": + \"array\",\n \"description\": \"Reasons that explain why the video + received its DJCQT (Brazil) rating.\"\n },\n \"mocRating\": + {\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n + \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n + \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n + \ \"mocUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n + \ \"Banned\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's Ministerio de Cultura + (Colombia) rating.\"\n },\n \"grfilmRating\": {\n \"description\": + \"The video's rating in Greece.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n + \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n + \ ],\n \"enum\": [\n \"grfilmUnspecified\",\n + \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n + \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n + \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n + \ \"type\": \"string\"\n },\n \"nmcRating\": {\n \"description\": + \"The National Media Council ratings system for United Arab Emirates.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"PG-13\",\n \"PG-15\",\n + \ \"15+\",\n \"18+\",\n \"18TC\",\n \"\"\n + \ ],\n \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n + \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n + \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n + \ \"nmcUnrated\"\n ]\n },\n \"cnaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"AP\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n + \ \"\"\n ],\n \"enum\": [\n \"cnaUnspecified\",\n + \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n + \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from Romania's + CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\"\n },\n \"tvpgRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n + \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n + \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n + \ ],\n \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n + \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n + \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n + \ \"tvpgUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's TV Parental Guidelines (TVPG) rating.\"\n + \ },\n \"ilfilmRating\": {\n \"enum\": [\n \"ilfilmUnspecified\",\n + \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n + \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n + \ ],\n \"description\": \"The video's rating in Israel.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"AA\",\n + \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"mekuRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"S\",\n \"7\",\n \"12\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"enum\": [\n + \ \"mekuUnspecified\",\n \"mekuS\",\n \"meku7\",\n + \ \"meku12\",\n \"meku16\",\n \"meku18\",\n + \ \"mekuUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from Finland's Kansallinen + Audiovisuaalinen Instituutti (National Audiovisual Institute).\"\n },\n + \ \"mtrcbRating\": {\n \"enum\": [\n \"mtrcbUnspecified\",\n + \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n + \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n + \ \"mtrcbUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n + \ \"X\",\n \"\"\n ],\n \"description\": + \"The video's rating from the Movie and Television Review and Classification + Board (Philippines).\"\n },\n \"fpbRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n + \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n + \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n + \ ],\n \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n + \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n + \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n + \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from South Africa's Film and Publication Board.\"\n },\n + \ \"bmukkRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Unrestricted\",\n \"6+\",\n + \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n + \ \"16+\",\n \"\"\n ],\n \"enum\": + [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n \"bmukk6\",\n + \ \"bmukk8\",\n \"bmukk10\",\n \"bmukk12\",\n + \ \"bmukk14\",\n \"bmukk16\",\n \"bmukkUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Austrian + Board of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst + und Kultur).\"\n },\n \"eirinRating\": {\n \"enum\": + [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n + \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n + \ ],\n \"description\": \"The video's Eirin (\u6620\u502B) + rating. Eirin is the Japanese rating system.\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n + \ \"R18+\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"lsfRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"SU\",\n + \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n + \ \"17\",\n \"D\",\n \"21\",\n \"\"\n + \ ],\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n + \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n + \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n + \ ],\n \"description\": \"The video's rating from Indonesia's + Lembaga Sensor Film.\"\n },\n \"catvRating\": {\n \"enum\": + [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n + \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n + \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"enumDescriptions\": + [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n + \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n + \ \"\"\n ]\n }\n }\n },\n \"I18nRegion\": + {\n \"type\": \"object\",\n \"description\": \"A *i18nRegion* resource + identifies a region where YouTube is available.\",\n \"id\": \"I18nRegion\",\n + \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"I18nRegionSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the i18n region, such as region code and human-readable name.\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube uses to + uniquely identify the i18n region.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#i18nRegion\",\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"VideoStatus\": {\n \"type\": \"object\",\n \"description\": + \"Basic details about a video category, such as its localized title. Next + Id: 18\",\n \"id\": \"VideoStatus\",\n \"properties\": {\n \"license\": + {\n \"description\": \"The video's license. @mutable youtube.videos.insert + youtube.videos.update\",\n \"enum\": [\n \"youtube\",\n + \ \"creativeCommon\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n + \ },\n \"failureReason\": {\n \"enum\": [\n \"conversion\",\n + \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n + \ \"codec\",\n \"uploadAborted\"\n ],\n \"enumDescriptions\": + [\n \"Unable to convert video content.\",\n \"Invalid + file format.\",\n \"Empty file.\",\n \"File was too + small.\",\n \"Unsupported codec.\",\n \"Upload wasn't + finished.\"\n ],\n \"type\": \"string\",\n \"description\": + \"This value explains why a video failed to upload. This property is only + present if the uploadStatus property indicates that the upload failed.\"\n + \ },\n \"publicStatsViewable\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This value indicates if the extended video statistics + on the watch page can be viewed by everyone. Note that the view count, likes, + etc will still be visible if this is disabled. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"privacyStatus\": {\n \"enum\": + [\n \"public\",\n \"unlisted\",\n \"private\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The video's privacy + status.\",\n \"type\": \"string\"\n },\n \"embeddable\": + {\n \"type\": \"boolean\",\n \"description\": \"This value + indicates if the video can be embedded on another website. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"rejectionReason\": {\n \"type\": + \"string\",\n \"description\": \"This value explains why YouTube + rejected an uploaded video. This property is only present if the uploadStatus + property indicates that the upload was rejected.\",\n \"enumDescriptions\": + [\n \"Copyright infringement.\",\n \"Inappropriate video + content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms + of use violation.\",\n \"Uploader account was suspended.\",\n \"Video + duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader + closed his/her account.\",\n \"Trademark infringement.\",\n \"An + unspecified legal reason.\"\n ],\n \"enum\": [\n \"copyright\",\n + \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n + \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n + \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n + \ ]\n },\n \"madeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"uploadStatus\": {\n \"enum\": [\n \"uploaded\",\n + \ \"processed\",\n \"failed\",\n \"rejected\",\n + \ \"deleted\"\n ],\n \"enumDescriptions\": [\n + \ \"Video has been uploaded but not processed yet.\",\n \"Video + has been successfully processed.\",\n \"Processing has failed. + See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n + \ \"Video has been deleted.\"\n ],\n \"description\": + \"The status of the uploaded video.\",\n \"type\": \"string\"\n },\n + \ \"publishAt\": {\n \"description\": \"The date and time when + the video is scheduled to publish. It can be set only if the privacy status + of the video is private..\",\n \"type\": \"string\",\n \"format\": + \"date-time\"\n }\n }\n },\n \"LiveChatMessageAuthorDetails\": + {\n \"id\": \"LiveChatMessageAuthorDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"isChatOwner\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether the author is the owner of the live chat.\"\n + \ },\n \"profileImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The channels's avatar URL.\"\n },\n \"isChatModerator\": + {\n \"description\": \"Whether the author is a moderator of the live + chat.\",\n \"type\": \"boolean\"\n },\n \"isChatSponsor\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the author is a sponsor of the live chat.\"\n },\n \"channelUrl\": + {\n \"description\": \"The channel's URL.\",\n \"type\": + \"string\"\n },\n \"displayName\": {\n \"type\": \"string\",\n + \ \"description\": \"The channel's display name.\"\n },\n \"isVerified\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the author's identity has been verified by YouTube.\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The YouTube + channel ID.\"\n }\n }\n },\n \"LiveChatUserBannedMessageDetails\": + {\n \"properties\": {\n \"banType\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"permanent\",\n \"temporary\"\n + \ ],\n \"description\": \"The type of ban.\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ]\n },\n \"banDurationSeconds\": + {\n \"description\": \"The duration of the ban. This property is + only present if the banType is temporary.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n },\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": + \"The details of the user that was banned.\"\n }\n },\n \"id\": + \"LiveChatUserBannedMessageDetails\",\n \"type\": \"object\"\n },\n + \ \"ActivityContentDetailsUpload\": {\n \"description\": \"Information + about the uploaded video.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsUpload\",\n + \ \"properties\": {\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the uploaded video.\",\n \"type\": + \"string\"\n }\n }\n },\n \"LiveChatMessageListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"offlineAt\": {\n \"description\": + \"The date and time when the underlying stream went offline.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"LiveChatMessage\"\n },\n \"type\": + \"array\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#liveChatMessageListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\"\n },\n \"pollingIntervalMillis\": + {\n \"description\": \"The amount of time the client should wait + before polling again.\",\n \"format\": \"uint32\",\n \"type\": + \"integer\"\n }\n },\n \"id\": \"LiveChatMessageListResponse\"\n + \ },\n \"VideoLiveStreamingDetails\": {\n \"properties\": {\n \"actualEndTime\": + {\n \"type\": \"string\",\n \"description\": \"The time + that the broadcast actually ended. This value will not be available until + the broadcast is over.\",\n \"format\": \"date-time\"\n },\n + \ \"concurrentViewers\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"The number of viewers currently + watching the broadcast. The property and its value will be present if the + broadcast has current viewers and the broadcast owner has not hidden the viewcount + for the video. Note that YouTube stops tracking the number of concurrent viewers + for a broadcast when the broadcast ends. So, this property would not identify + the number of viewers watching an archived video of a live broadcast that + already ended.\"\n },\n \"scheduledEndTime\": {\n \"description\": + \"The time that the broadcast is scheduled to end. If the value is empty or + the property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n + \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n + \ \"actualStartTime\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The time that the broadcast actually + started. This value will not be available until the broadcast begins.\"\n + \ },\n \"activeLiveChatId\": {\n \"description\": \"The + ID of the currently active live chat attached to this video. This field is + filled only if the video is a currently live broadcast that has live chat. + Once the broadcast transitions to complete this field will be removed and + the live chat closed down. For persistent broadcasts that live chat id will + no longer be tied to this video but rather to the new video being displayed + at the persistent page.\",\n \"type\": \"string\"\n },\n \"scheduledStartTime\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The time that the broadcast is scheduled to begin.\"\n + \ }\n },\n \"description\": \"Details about the live streaming + metadata.\",\n \"type\": \"object\",\n \"id\": \"VideoLiveStreamingDetails\"\n + \ },\n \"VideoRecordingDetails\": {\n \"properties\": {\n \"location\": + {\n \"description\": \"The geolocation information associated with + the video.\",\n \"$ref\": \"GeoPoint\"\n },\n \"recordingDate\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the video was recorded.\"\n + \ },\n \"locationDescription\": {\n \"description\": + \"The text description of the location where the video was recorded.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoRecordingDetails\",\n + \ \"type\": \"object\",\n \"description\": \"Recording information + associated with the video.\"\n },\n \"VideoMonetizationDetails\": {\n + \ \"type\": \"object\",\n \"properties\": {\n \"access\": + {\n \"description\": \"The value of access indicates whether the + video can be monetized or not.\",\n \"$ref\": \"AccessPolicy\"\n + \ }\n },\n \"id\": \"VideoMonetizationDetails\",\n \"description\": + \"Details about monetization of a YouTube Video.\"\n },\n \"I18nRegionListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"items\": + {\n \"description\": \"A list of regions where YouTube is available. + In this map, the i18n region ID is the map key, and its value is the corresponding + i18nRegion resource.\",\n \"items\": {\n \"$ref\": \"I18nRegion\"\n + \ },\n \"type\": \"array\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"default\": + \"youtube#i18nRegionListResponse\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"id\": \"I18nRegionListResponse\"\n + \ },\n \"ChannelAuditDetails\": {\n \"type\": \"object\",\n \"properties\": + {\n \"copyrightStrikesGoodStanding\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether or not the channel has any copyright + strikes.\"\n },\n \"contentIdClaimsGoodStanding\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether or not the channel has + any unresolved claims.\"\n },\n \"communityGuidelinesGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel respects the community guidelines.\"\n }\n },\n + \ \"id\": \"ChannelAuditDetails\",\n \"description\": \"The auditDetails + object encapsulates channel data that is relevant for YouTube Partners during + the audit process.\"\n },\n \"CommentListResponse\": {\n \"id\": + \"CommentListResponse\",\n \"properties\": {\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n \"default\": + \"youtube#commentListResponse\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Comment\"\n },\n + \ \"description\": \"A list of comments that match the request criteria.\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveStreamHealthStatus\": + {\n \"properties\": {\n \"status\": {\n \"enum\": [\n + \ \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n + \ \"revoked\"\n ],\n \"type\": \"string\",\n \"description\": + \"The status code of this stream\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"configurationIssues\": {\n \"items\": + {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n },\n + \ \"type\": \"array\",\n \"description\": \"The configurations + issues on this stream\"\n },\n \"lastUpdateTimeSeconds\": {\n + \ \"type\": \"string\",\n \"description\": \"The last time + this status was updated (in seconds)\",\n \"format\": \"uint64\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveStreamHealthStatus\"\n + \ },\n \"Activity\": {\n \"id\": \"Activity\",\n \"description\": + \"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.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the activity, including the activity's type and group ID.\",\n \"$ref\": + \"ActivitySnippet\"\n },\n \"contentDetails\": {\n \"description\": + \"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.\",\n \"$ref\": + \"ActivityContentDetails\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n + \ \"default\": \"youtube#activity\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource\",\n \"type\": \"string\"\n },\n \"id\": {\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the activity.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"Member\": {\n \"type\": \"object\",\n \"id\": \"Member\",\n + \ \"description\": \"A *member* resource represents a member for a YouTube + channel. A member provides recurring monetary support to a creator and receives + special benefits.\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": + \"MemberSnippet\",\n \"description\": \"The snippet object contains + basic details about the member.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n + \ \"default\": \"youtube#member\"\n }\n }\n },\n \"LiveStreamConfigurationIssue\": + {\n \"properties\": {\n \"type\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n + \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n + \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n + \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n + \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n + \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n + \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n + \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n + \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n + \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n + \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n + \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n + \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n + \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n + \ ],\n \"description\": \"The kind of error happening.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"severity\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n + \ ],\n \"description\": \"How severe this issue is to the + stream.\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The long-form + description of the issue and how to resolve it.\"\n },\n \"reason\": + {\n \"description\": \"The short-form reason for this issue.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveStreamConfigurationIssue\",\n + \ \"type\": \"object\"\n },\n \"PlaylistPlayer\": {\n \"type\": + \"object\",\n \"id\": \"PlaylistPlayer\",\n \"properties\": {\n + \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": + \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\"\n + \ }\n }\n },\n \"LiveBroadcastListResponse\": {\n \"id\": + \"LiveBroadcastListResponse\",\n \"type\": \"object\",\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"items\": {\n \"description\": \"A list of broadcasts + that match the request criteria.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"kind\": + {\n \"default\": \"youtube#liveBroadcastListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"SubscriptionSubscriberSnippet\": + {\n \"properties\": {\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"Thumbnails for this subscriber.\"\n + \ },\n \"title\": {\n \"description\": \"The title of + the subscriber.\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The description + of the subscriber.\"\n },\n \"channelId\": {\n \"description\": + \"The channel ID of the subscriber.\",\n \"type\": \"string\"\n }\n + \ },\n \"description\": \"Basic details about a subscription's subscriber + including title, description, channel ID and thumbnails.\",\n \"type\": + \"object\",\n \"id\": \"SubscriptionSubscriberSnippet\"\n },\n \"VideoProcessingDetails\": + {\n \"id\": \"VideoProcessingDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"processingStatus\": {\n \"type\": + \"string\",\n \"enum\": [\n \"processing\",\n \"succeeded\",\n + \ \"failed\",\n \"terminated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The video's processing status. + This value indicates whether YouTube was able to process the video or if the + video is still being processed.\"\n },\n \"processingProgress\": + {\n \"description\": \"The processingProgress object contains information + about the progress YouTube has made in processing the video. The values are + really only relevant if the video's processing status is processing.\",\n + \ \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n },\n + \ \"processingFailureReason\": {\n \"enum\": [\n \"uploadFailed\",\n + \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The reason that YouTube failed to process the video. This property will + only have a value if the processingStatus property's value is failed.\",\n + \ \"type\": \"string\"\n },\n \"tagSuggestionsAvailability\": + {\n \"description\": \"This value indicates whether keyword (tag) + suggestions are available for the video. Tags can be added to a video's metadata + to make it easier for other users to find the video. You can retrieve these + suggestions by requesting the suggestions part in your videos.list() request.\",\n + \ \"type\": \"string\"\n },\n \"fileDetailsAvailability\": + {\n \"type\": \"string\",\n \"description\": \"This value + indicates whether file details are available for the uploaded video. You can + retrieve a video's file details by requesting the fileDetails part in your + videos.list() request.\"\n },\n \"thumbnailsAvailability\": + {\n \"description\": \"This value indicates whether thumbnail images + have been generated for the video.\",\n \"type\": \"string\"\n },\n + \ \"processingIssuesAvailability\": {\n \"description\": \"This + value indicates whether the video processing engine has generated suggestions + that might improve YouTube's ability to process the the video, warnings that + explain video processing problems, or errors that cause video processing problems. + You can retrieve these suggestions by requesting the suggestions part in your + videos.list() request.\",\n \"type\": \"string\"\n },\n \"editorSuggestionsAvailability\": + {\n \"description\": \"This value indicates whether video editing + suggestions, which might improve video quality or the playback experience, + are available for the video. You can retrieve these suggestions by requesting + the suggestions part in your videos.list() request.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Describes processing + status and progress and availability of some other Video resource parts.\"\n + \ },\n \"LiveBroadcast\": {\n \"description\": \"A *liveBroadcast* + resource represents an event that will be streamed, via live video, on YouTube.\",\n + \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"statistics\": + {\n \"description\": \"The statistics object contains info about + the event's current stats. These include concurrent viewers and total chat + count. Statistics can change (in either direction) during the lifetime of + an event. Statistics are only returned while the event is live.\",\n \"$ref\": + \"LiveBroadcastStatistics\"\n },\n \"contentDetails\": {\n \"description\": + \"The contentDetails object contains information about the event's video content, + such as whether the content can be shown in an embedded video player or if + it will be archived and therefore available for viewing after the event has + concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the event, including its title, description, start time, + and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n + \ \"default\": \"youtube#liveBroadcast\",\n \"type\": \"string\"\n + \ },\n \"id\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"type\": \"string\",\n \"description\": \"The ID that + YouTube assigns to uniquely identify the broadcast.\"\n },\n \"status\": + {\n \"description\": \"The status object contains information about + the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"LiveBroadcast\"\n },\n + \ \"ChannelLocalization\": {\n \"description\": \"Channel localization + setting\",\n \"id\": \"ChannelLocalization\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"title\": {\n \"description\": + \"The localized strings for channel's title.\",\n \"type\": \"string\"\n + \ },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The localized strings for channel's description.\"\n + \ }\n }\n },\n \"ChannelBrandingSettings\": {\n \"description\": + \"Branding properties of a YouTube channel.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"image\": {\n \"$ref\": \"ImageSettings\",\n + \ \"description\": \"Branding properties for branding images.\"\n + \ },\n \"watch\": {\n \"description\": \"Branding properties + for the watch page.\",\n \"$ref\": \"WatchSettings\"\n },\n + \ \"channel\": {\n \"$ref\": \"ChannelSettings\",\n \"description\": + \"Branding properties for the channel view.\"\n },\n \"hints\": + {\n \"items\": {\n \"$ref\": \"PropertyValue\"\n },\n + \ \"type\": \"array\",\n \"description\": \"Additional experimental + branding properties.\"\n }\n },\n \"id\": \"ChannelBrandingSettings\"\n + \ },\n \"VideoFileDetailsVideoStream\": {\n \"properties\": {\n + \ \"heightPixels\": {\n \"format\": \"uint32\",\n \"description\": + \"The encoded video content's height in pixels.\",\n \"type\": \"integer\"\n + \ },\n \"codec\": {\n \"description\": \"The video codec + that the stream uses.\",\n \"type\": \"string\"\n },\n \"rotation\": + {\n \"enum\": [\n \"none\",\n \"clockwise\",\n + \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The amount that YouTube needs to + rotate the original source content to properly display the video.\"\n },\n + \ \"widthPixels\": {\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"description\": \"The encoded video content's width + in pixels. You can calculate the video's encoding aspect ratio as width_pixels + / height_pixels.\"\n },\n \"frameRateFps\": {\n \"type\": + \"number\",\n \"description\": \"The video stream's frame rate, in + frames per second.\",\n \"format\": \"double\"\n },\n \"vendor\": + {\n \"type\": \"string\",\n \"description\": \"A value that + uniquely identifies a video vendor. Typically, the value is a four-letter + vendor code.\"\n },\n \"aspectRatio\": {\n \"type\": + \"number\",\n \"format\": \"double\",\n \"description\": + \"The video content's display aspect ratio, which specifies the aspect ratio + in which the video should be displayed.\"\n },\n \"bitrateBps\": + {\n \"description\": \"The video stream's bitrate, in bits per second.\",\n + \ \"type\": \"string\",\n \"format\": \"uint64\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"Information + about a video stream.\",\n \"id\": \"VideoFileDetailsVideoStream\"\n + \ },\n \"ChannelSectionTargeting\": {\n \"type\": \"object\",\n + \ \"id\": \"ChannelSectionTargeting\",\n \"description\": \"ChannelSection + targeting setting.\",\n \"properties\": {\n \"languages\": {\n + \ \"description\": \"The language the channel section is targeting.\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": + \"array\"\n },\n \"countries\": {\n \"description\": + \"The country the channel section is targeting.\",\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n },\n + \ \"regions\": {\n \"type\": \"array\",\n \"description\": + \"The region the channel section is targeting.\",\n \"items\": {\n + \ \"type\": \"string\"\n }\n }\n }\n },\n + \ \"PlaylistLocalization\": {\n \"properties\": {\n \"description\": + {\n \"description\": \"The localized strings for playlist's description.\",\n + \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": + \"The localized strings for playlist's title.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"PlaylistLocalization\",\n + \ \"description\": \"Playlist localization setting\"\n },\n \"LiveStreamContentDetails\": + {\n \"properties\": {\n \"isReusable\": {\n \"type\": + \"boolean\",\n \"description\": \"Indicates whether the stream is + reusable, which means that it can be bound to multiple broadcasts. It is common + for broadcasters to reuse the same stream for many different broadcasts if + those broadcasts occur at different times. If you set this value to false, + then the stream will not be reusable, which means that it can only be bound + to one broadcast. Non-reusable streams differ from reusable streams in the + following ways: - A non-reusable stream can only be bound to one broadcast. + - A non-reusable stream might be deleted by an automated process after the + broadcast ends. - The liveStreams.list method does not list non-reusable streams + if you call the method and set the mine parameter to true. The only way to + use that method to retrieve the resource for a non-reusable stream is to use + the id parameter to identify the stream. \"\n },\n \"closedCaptionsIngestionUrl\": + {\n \"description\": \"The ingestion URL where the closed captions + of this stream are sent.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"description\": \"Detailed settings of + a stream.\",\n \"id\": \"LiveStreamContentDetails\"\n },\n \"MemberListResponse\": + {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#memberListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": + \"A list of members that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"Member\"\n }\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n }\n },\n + \ \"id\": \"MemberListResponse\",\n \"type\": \"object\"\n },\n + \ \"LiveChatSuperChatDetails\": {\n \"properties\": {\n \"tier\": + {\n \"description\": \"The tier in which the amount belongs. Lower + amounts belong to lower tiers. The lowest tier is 1.\",\n \"format\": + \"uint32\",\n \"type\": \"integer\"\n },\n \"amountMicros\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n + \ },\n \"currency\": {\n \"description\": \"The currency + in which the purchase was made.\",\n \"type\": \"string\"\n },\n + \ \"userComment\": {\n \"type\": \"string\",\n \"description\": + \"The comment added by the user to this Super Chat event.\"\n },\n + \ \"amountDisplayString\": {\n \"type\": \"string\",\n \"description\": + \"A rendered string that displays the fund amount and currency to the user.\"\n + \ }\n },\n \"id\": \"LiveChatSuperChatDetails\",\n \"type\": + \"object\"\n },\n \"LiveChatBanSnippet\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"banDurationSeconds\": {\n \"description\": + \"The duration of a ban, only filled if the ban has type TEMPORARY.\",\n \"type\": + \"string\",\n \"format\": \"uint64\"\n },\n \"type\": + {\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n + \ \"temporary\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"An invalid ban type.\",\n + \ \"A permanent ban.\",\n \"A temporary ban.\"\n ],\n + \ \"description\": \"The type of ban.\"\n },\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"liveChatId\": + {\n \"description\": \"The chat this ban is pertinent to.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveChatBanSnippet\"\n },\n + \ \"LiveChatBan\": {\n \"description\": \"A `__liveChatBan__` resource + represents a ban for a YouTube live chat.\",\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"default\": + \"youtube#liveChatBan\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": + \"The `snippet` object contains basic details about the ban.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube assigns to uniquely identify the ban.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveChatBan\",\n \"type\": + \"object\"\n },\n \"ThirdPartyLink\": {\n \"description\": \"A + *third party account link* resource represents a link between a YouTube account + or a channel and an account on a third-party service.\",\n \"properties\": + {\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n + \ \"description\": \"The status object contains information about + the status of the link.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the third- party account + link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n + \ \"default\": \"youtube#thirdPartyLink\"\n },\n \"linkingToken\": + {\n \"type\": \"string\",\n \"description\": \"The linking_token + identifies a YouTube account and channel with which the third party account + is linked.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource\"\n }\n },\n + \ \"id\": \"ThirdPartyLink\",\n \"type\": \"object\"\n },\n \"LiveChatModerator\": + {\n \"type\": \"object\",\n \"description\": \"A *liveChatModerator* + resource represents a moderator for a YouTube live chat. A chat moderator + has the ability to ban/unban users from a chat, remove message, etc.\",\n + \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube assigns to uniquely identify + the moderator.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n + \ \"default\": \"youtube#liveChatModerator\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveChatModerator\"\n },\n + \ \"VideoPlayer\": {\n \"properties\": {\n \"embedWidth\": {\n + \ \"description\": \"The embed width\",\n \"format\": \"int64\",\n + \ \"type\": \"string\"\n },\n \"embedHtml\": {\n \"type\": + \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that + embeds a player that will play the video.\"\n },\n \"embedHeight\": + {\n \"type\": \"string\",\n \"format\": \"int64\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"Player to + be used for a video playback.\",\n \"id\": \"VideoPlayer\"\n },\n + \ \"ChannelStatus\": {\n \"properties\": {\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": + {\n \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"description\": \"Privacy status of the channel.\"\n },\n + \ \"isLinked\": {\n \"type\": \"boolean\",\n \"description\": + \"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.\"\n },\n + \ \"longUploadsStatus\": {\n \"description\": \"The long uploads + status of this channel. See https://support.google.com/youtube/answer/71673 + for more information.\",\n \"type\": \"string\",\n \"enum\": + [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n + \ \"disallowed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"madeForKids\": {\n \"type\": \"boolean\"\n + \ }\n },\n \"id\": \"ChannelStatus\",\n \"description\": + \"JSON template for the status part of a channel.\",\n \"type\": \"object\"\n + \ },\n \"VideoAbuseReportReasonListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoAbuseReportReasonListResponse\",\n \"properties\": + {\n \"visitorId\": {\n \"description\": \"The `visitorId` + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"VideoAbuseReportReason\"\n },\n \"type\": \"array\",\n + \ \"description\": \"A list of valid abuse reasons that are used with + `video.ReportAbuse`.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n + \ }\n }\n },\n \"VideoSuggestionsTagSuggestion\": {\n \"properties\": + {\n \"categoryRestricts\": {\n \"description\": \"A set of + video categories for which the tag is relevant. You can use this information + to display appropriate tag suggestions based on the video category that the + video uploader associates with the video. By default, tag suggestions are + relevant for all categories if there are no restricts defined for the keyword.\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": + \"array\"\n },\n \"tag\": {\n \"description\": \"The + keyword tag suggested for the video.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"A single tag suggestion with + it's relevance information.\",\n \"type\": \"object\",\n \"id\": + \"VideoSuggestionsTagSuggestion\"\n },\n \"ThumbnailSetResponse\": {\n + \ \"type\": \"object\",\n \"id\": \"ThumbnailSetResponse\",\n \"properties\": + {\n \"eventId\": {\n \"description\": \"Serialized EventId + of the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": + \"A list of thumbnails.\",\n \"items\": {\n \"$ref\": + \"ThumbnailDetails\"\n }\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#thumbnailSetResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"LiveChatSuperStickerDetails\": + {\n \"id\": \"LiveChatSuperStickerDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"amountDisplayString\": {\n \"type\": + \"string\",\n \"description\": \"A rendered string that displays + the fund amount and currency to the user.\"\n },\n \"amountMicros\": + {\n \"description\": \"The amount purchased by the user, in micros + (1,750,000 micros = 1.75).\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n },\n \"superStickerMetadata\": {\n \"$ref\": + \"SuperStickerMetadata\",\n \"description\": \"Information about + the Super Sticker.\"\n },\n \"tier\": {\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The tier in which the amount belongs. Lower amounts belong to lower tiers. + The lowest tier is 1.\"\n },\n \"currency\": {\n \"type\": + \"string\",\n \"description\": \"The currency in which the purchase + was made.\"\n }\n }\n },\n \"ActivitySnippet\": {\n \"type\": + \"object\",\n \"properties\": {\n \"publishedAt\": {\n \"type\": + \"string\",\n \"description\": \"The date and time that the video + was uploaded.\",\n \"format\": \"date-time\"\n },\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the channel associated with the activity.\",\n \"type\": \"string\"\n + \ },\n \"description\": {\n \"description\": \"The description + of the resource primarily associated with the activity. @mutable youtube.activities.insert\",\n + \ \"type\": \"string\"\n },\n \"channelTitle\": {\n + \ \"description\": \"Channel title for the channel responsible for + this activity\",\n \"type\": \"string\"\n },\n \"groupId\": + {\n \"description\": \"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.\",\n \"type\": \"string\"\n + \ },\n \"title\": {\n \"description\": \"The title of + the resource primarily associated with the activity.\",\n \"type\": + \"string\"\n },\n \"type\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The type of activity that the resource + describes.\",\n \"type\": \"string\",\n \"enum\": [\n \"typeUnspecified\",\n + \ \"upload\",\n \"like\",\n \"favorite\",\n + \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n + \ \"recommendation\",\n \"bulletin\",\n \"social\",\n + \ \"channelItem\",\n \"promotedItem\"\n ]\n + \ },\n \"thumbnails\": {\n \"description\": \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n }\n + \ },\n \"description\": \"Basic details about an activity, including + title, description, thumbnails, activity type and group. Next ID: 12\",\n + \ \"id\": \"ActivitySnippet\"\n },\n \"VideoAbuseReport\": {\n \"properties\": + {\n \"reasonId\": {\n \"description\": \"The high-level, or + primary, reason that the content is abusive. The value is an abuse report + reason ID.\",\n \"type\": \"string\"\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the video.\"\n },\n \"secondaryReasonId\": + {\n \"description\": \"The specific, or secondary, reason that this + content is abusive (if available). The value is an abuse report reason ID + that is a valid secondary reason for the primary reason.\",\n \"type\": + \"string\"\n },\n \"comments\": {\n \"description\": + \"Additional comments regarding the abuse report.\",\n \"type\": + \"string\"\n },\n \"language\": {\n \"type\": \"string\",\n + \ \"description\": \"The language that the content was viewed in.\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReport\"\n + \ },\n \"I18nLanguageSnippet\": {\n \"type\": \"object\",\n \"properties\": + {\n \"hl\": {\n \"type\": \"string\",\n \"description\": + \"A short BCP-47 code that uniquely identifies a language.\"\n },\n + \ \"name\": {\n \"description\": \"The human-readable name + of the language in the language itself.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Basic details about an i18n + language, such as language code and human-readable name.\",\n \"id\": + \"I18nLanguageSnippet\"\n },\n \"CaptionListResponse\": {\n \"id\": + \"CaptionListResponse\",\n \"type\": \"object\",\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#captionListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"description\": + \"A list of captions that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"Caption\"\n }\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"LiveStream\": + {\n \"type\": \"object\",\n \"id\": \"LiveStream\",\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the stream, including its + channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n + \ },\n \"status\": {\n \"description\": \"The status + object contains information about live stream's status.\",\n \"$ref\": + \"LiveStreamStatus\"\n },\n \"cdn\": {\n \"description\": + \"The cdn object defines the live stream's content delivery network (CDN) + settings. These settings provide details about the manner in which you stream + your content to YouTube.\",\n \"$ref\": \"CdnSettings\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#liveStream\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n },\n + \ \"contentDetails\": {\n \"description\": \"The content_details + object contains information about the stream, including the closed captions + ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube assigns + to uniquely identify the stream.\",\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.update\"\n + \ ]\n }\n }\n },\n \"description\": \"A + live stream describes a live ingestion point.\"\n },\n \"ThirdPartyLinkStatus\": + {\n \"id\": \"ThirdPartyLinkStatus\",\n \"description\": \"The third-party + link status object contains information about the status of the link.\",\n + \ \"properties\": {\n \"linkStatus\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"unknown\",\n \"failed\",\n \"pending\",\n + \ \"linked\"\n ]\n }\n },\n \"type\": + \"object\"\n },\n \"VideoAbuseReportReasonSnippet\": {\n \"properties\": + {\n \"secondaryReasons\": {\n \"description\": \"The secondary + reasons associated with this reason, if any are available. (There might be + 0 or more.)\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n + \ },\n \"type\": \"array\"\n },\n \"label\": + {\n \"type\": \"string\",\n \"description\": \"The localized + label belonging to this abuse report reason.\"\n }\n },\n \"id\": + \"VideoAbuseReportReasonSnippet\",\n \"type\": \"object\",\n \"description\": + \"Basic details about a video category, such as its localized title.\"\n },\n + \ \"LiveChatMessageSnippet\": {\n \"id\": \"LiveChatMessageSnippet\",\n + \ \"properties\": {\n \"fanFundingEventDetails\": {\n \"$ref\": + \"LiveChatFanFundingEventDetails\",\n \"description\": \"Details + about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n + \ },\n \"memberMilestoneChatDetails\": {\n \"description\": + \"Details about the Member Milestone Chat event, this is only set if the type + is 'memberMilestoneChatEvent'.\",\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n + \ },\n \"superStickerDetails\": {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n + \ \"description\": \"Details about the Super Sticker event, this is + only set if the type is 'superStickerEvent'.\"\n },\n \"hasDisplayContent\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the message has display content that should be displayed to users.\"\n },\n + \ \"textMessageDetails\": {\n \"$ref\": \"LiveChatTextMessageDetails\",\n + \ \"description\": \"Details about the text message, this is only + set if the type is 'textMessageEvent'.\"\n },\n \"type\": {\n + \ \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n + \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n + \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n + \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n + \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n + \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n + \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The type of message, this will always be present, it determines the contents + of the message as well as which fields will be present.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"publishedAt\": {\n \"description\": + \"The date and time when the message was orignally published.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"liveChatId\": + {\n \"type\": \"string\"\n },\n \"membershipGiftingDetails\": + {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": + \"Details about the Membership Gifting event, this is only set if the type + is 'membershipGiftingEvent'.\"\n },\n \"newSponsorDetails\": + {\n \"description\": \"Details about the New Member Announcement + event, this is only set if the type is 'newSponsorEvent'. Please note that + \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n \"$ref\": + \"LiveChatNewSponsorDetails\"\n },\n \"authorChannelId\": {\n + \ \"description\": \"The ID of the user that authored this message, + this field is not always filled. textMessageEvent - the user that wrote the + message fanFundingEvent - the user that funded the broadcast newSponsorEvent + - the user that just became a sponsor memberMilestoneChatEvent - the member + that sent the message membershipGiftingEvent - the user that made the purchase + giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent + - the moderator that took the action messageRetractedEvent - the author that + retracted their message userBannedEvent - the moderator that took the action + superChatEvent - the user that made the purchase superStickerEvent - the user + that made the purchase\",\n \"type\": \"string\"\n },\n \"messageRetractedDetails\": + {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"giftMembershipReceivedDetails\": + {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": + \"Details about the Gift Membership Received event, this is only set if the + type is 'giftMembershipReceivedEvent'.\"\n },\n \"userBannedDetails\": + {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n + \ \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n + \ },\n \"displayMessage\": {\n \"description\": \"Contains + a string that can be displayed to the user. If this field is not present the + message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT + are silent.\",\n \"type\": \"string\"\n },\n \"superChatDetails\": + {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": + \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n + \ }\n },\n \"description\": \"Next ID: 33\",\n \"type\": + \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": {\n \"id\": + \"VideoContentDetailsRegionRestriction\",\n \"properties\": {\n \"blocked\": + {\n \"description\": \"A list of region codes that identify countries + where the video is blocked. If this property is present and a country is not + listed in its value, then the video is viewable in that country. If this property + is present and contains an empty list, the video is viewable in all countries.\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": + \"array\"\n },\n \"allowed\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"A list of region codes + that identify countries where the video is viewable. If this property is present + and a country is not listed in its value, then the video is blocked from appearing + in that country. If this property is present and contains an empty list, the + video is blocked in all countries.\",\n \"type\": \"array\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"DEPRECATED + Region restriction of the video.\"\n },\n \"VideoProcessingDetailsProcessingProgress\": + {\n \"description\": \"Video processing progress and completion time + estimate.\",\n \"properties\": {\n \"partsTotal\": {\n \"description\": + \"An estimate of the total number of parts that need to be processed for the + video. The number may be updated with more precise estimates while YouTube + processes the video.\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n },\n \"partsProcessed\": {\n \"description\": + \"The number of parts of the video that YouTube has already processed. You + can estimate the percentage of the video that YouTube has already processed + by calculating: 100 * parts_processed / parts_total Note that since the estimated + number of parts could increase without a corresponding increase in the number + of parts that have already been processed, it is possible that the calculated + progress could periodically decrease while YouTube processes a video.\",\n + \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n + \ \"timeLeftMs\": {\n \"format\": \"uint64\",\n \"description\": + \"An estimate of the amount of time, in millseconds, that YouTube needs to + finish processing the video.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\"\n + \ },\n \"Cuepoint\": {\n \"id\": \"Cuepoint\",\n \"description\": + \"Note that there may be a 5-second end-point resolution issue. For instance, + if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 + or 22:03:30, depending. This is an artifact of HLS.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"durationSecs\": {\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The duration of this cuepoint.\"\n },\n \"insertionOffsetTimeMs\": + {\n \"type\": \"string\",\n \"description\": \"The time + when the cuepoint should be inserted by offset to the broadcast actual start + time.\",\n \"format\": \"int64\"\n },\n \"etag\": {\n + \ \"type\": \"string\"\n },\n \"walltimeMs\": {\n \"format\": + \"uint64\",\n \"description\": \"The wall clock time at which the + cuepoint should be inserted. Only one of insertion_offset_time_ms and walltime_ms + may be set at a time.\",\n \"type\": \"string\"\n },\n \"cueType\": + {\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"cueTypeUnspecified\",\n + \ \"cueTypeAd\"\n ],\n \"type\": \"string\"\n + \ },\n \"id\": {\n \"description\": \"The identifier + for cuepoint resource.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"VideoRating\": {\n \"type\": \"object\",\n \"description\": + \"Basic details about rating of a video.\",\n \"id\": \"VideoRating\",\n + \ \"properties\": {\n \"rating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"The + entity is liked.\",\n \"The entity is disliked.\"\n ],\n + \ \"description\": \"Rating of a video.\"\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the video.\"\n }\n }\n },\n + \ \"VideoGetRatingResponse\": {\n \"id\": \"VideoGetRatingResponse\",\n + \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#videoGetRatingResponse\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"VideoRating\"\n },\n + \ \"type\": \"array\",\n \"description\": \"A list of ratings + that match the request criteria.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"VideoStatistics\": {\n \"type\": \"object\",\n \"properties\": + {\n \"dislikeCount\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"The number of users who have indicated + that they disliked the video by giving it a negative rating.\"\n },\n + \ \"viewCount\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"The number of times the video has + been viewed.\"\n },\n \"favoriteCount\": {\n \"format\": + \"uint64\",\n \"description\": \"The number of users who currently + have the video marked as a favorite video.\",\n \"type\": \"string\"\n + \ },\n \"commentCount\": {\n \"format\": \"uint64\",\n + \ \"description\": \"The number of comments for the video.\",\n \"type\": + \"string\"\n },\n \"likeCount\": {\n \"description\": + \"The number of users who have indicated that they liked the video by giving + it a positive rating.\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n }\n },\n \"description\": \"Statistics about + the video, such as the number of times the video was viewed or liked.\",\n + \ \"id\": \"VideoStatistics\"\n },\n \"PlaylistItemContentDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"note\": + {\n \"type\": \"string\",\n \"description\": \"A user-generated + note for this item.\"\n },\n \"endAt\": {\n \"type\": + \"string\",\n \"description\": \"The time, measured in seconds from + the start of the video, when the video should stop playing. (The playlist + owner can specify the times when the video should start and stop playing when + the video is played in the context of the playlist.) By default, assume that + the video.endTime is the end of the video.\"\n },\n \"startAt\": + {\n \"type\": \"string\",\n \"description\": \"The time, + measured in seconds from the start of the video, when the video should start + playing. (The playlist owner can specify the times when the video should start + and stop playing when the video is played in the context of the playlist.) + The default value is 0.\"\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify a video. To retrieve the video + resource, set the id query parameter to this value in your API request.\",\n + \ \"type\": \"string\"\n },\n \"videoPublishedAt\": + {\n \"description\": \"The date and time that the video was published + to YouTube.\",\n \"format\": \"date-time\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"PlaylistItemContentDetails\"\n + \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"properties\": + {\n \"userComment\": {\n \"type\": \"string\",\n \"description\": + \"The comment added by the member to this Member Milestone Chat. This field + is empty for messages without a comment from the member.\"\n },\n \"memberLevelName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the Level at which the viever is a member. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\"\n },\n \"memberMonth\": {\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The total amount of months (rounded up) the viewer has been a member that + granted them this Member Milestone Chat. This is the same number of months + as is being displayed to YouTube users.\"\n }\n }\n },\n \"VideoCategoryListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n \"default\": + \"youtube#videoCategoryListResponse\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\"\n },\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"items\": {\n \"type\": \"array\",\n + \ \"description\": \"A list of video categories that can be associated + with YouTube videos. In this map, the video category ID is the map key, and + its value is the corresponding videoCategory resource.\",\n \"items\": + {\n \"$ref\": \"VideoCategory\"\n }\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n }\n },\n \"id\": \"VideoCategoryListResponse\"\n + \ },\n \"ChannelStatistics\": {\n \"id\": \"ChannelStatistics\",\n + \ \"properties\": {\n \"subscriberCount\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of subscribers that the channel has.\"\n },\n \"videoCount\": + {\n \"format\": \"uint64\",\n \"description\": \"The number + of videos uploaded to the channel.\",\n \"type\": \"string\"\n },\n + \ \"viewCount\": {\n \"type\": \"string\",\n \"description\": + \"The number of times the channel has been viewed.\",\n \"format\": + \"uint64\"\n },\n \"hiddenSubscriberCount\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether or not the number of subscribers + is shown for this user.\"\n },\n \"commentCount\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + number of comments for the channel.\"\n }\n },\n \"description\": + \"Statistics about a channel: number of subscribers, number of videos in the + channel, etc.\",\n \"type\": \"object\"\n },\n \"CommentSnippet\": + {\n \"type\": \"object\",\n \"properties\": {\n \"updatedAt\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the comment was last updated.\"\n + \ },\n \"authorChannelUrl\": {\n \"description\": \"Link + to the author's YouTube channel, if any.\",\n \"type\": \"string\"\n + \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time when the comment was originally + published.\",\n \"type\": \"string\"\n },\n \"authorChannelId\": + {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"moderationStatus\": + {\n \"type\": \"string\",\n \"description\": \"The comment's + moderation status. Will not be set if the comments were requested through + the id filter.\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ],\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ]\n },\n \"textOriginal\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"canRate\": + {\n \"description\": \"Whether the current viewer can rate this comment.\",\n + \ \"type\": \"boolean\"\n },\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the video the comment + refers to, if any.\"\n },\n \"textDisplay\": {\n \"type\": + \"string\",\n \"description\": \"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.\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"authorProfileImageUrl\": {\n \"description\": + \"The URL for the avatar of the user who posted the comment.\",\n \"type\": + \"string\"\n },\n \"viewerRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n + \ ],\n \"description\": \"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.\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ]\n },\n \"parentId\": {\n + \ \"description\": \"The unique id of the parent comment, only set + for replies.\",\n \"type\": \"string\"\n },\n \"likeCount\": + {\n \"format\": \"uint32\",\n \"description\": \"The total + number of likes this comment has received.\",\n \"type\": \"integer\"\n + \ },\n \"authorDisplayName\": {\n \"type\": \"string\",\n + \ \"description\": \"The name of the user who posted the comment.\"\n + \ }\n },\n \"id\": \"CommentSnippet\",\n \"description\": + \"Basic details about a comment, such as its author and text.\"\n },\n + \ \"LiveChatModeratorSnippet\": {\n \"properties\": {\n \"moderatorDetails\": + {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": + \"Details about the moderator.\"\n },\n \"liveChatId\": {\n + \ \"type\": \"string\",\n \"description\": \"The ID of the + live chat this moderator can act on.\"\n }\n },\n \"id\": + \"LiveChatModeratorSnippet\",\n \"type\": \"object\"\n },\n \"InvideoPosition\": + {\n \"description\": \"Describes the spatial position of a visual widget + inside a video. It is a union of various position types, out of which only + will be set one.\",\n \"properties\": {\n \"cornerPosition\": + {\n \"type\": \"string\",\n \"description\": \"Describes + in which corner of the video the visual widget will appear.\",\n \"enum\": + [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n + \ \"bottomRight\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"type\": {\n \"type\": \"string\",\n + \ \"description\": \"Defines the position type.\",\n \"enum\": + [\n \"corner\"\n ],\n \"enumDescriptions\": [\n + \ \"\"\n ]\n }\n },\n \"id\": \"InvideoPosition\",\n + \ \"type\": \"object\"\n },\n \"ActivityListResponse\": {\n \"id\": + \"ActivityListResponse\",\n \"properties\": {\n \"eventId\": {\n + \ \"type\": \"string\",\n \"description\": \"Serialized EventId + of the request which produced this response.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#activityListResponse\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"Activity\"\n },\n \"type\": \"array\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"properties\": + {\n \"gifterChannelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the user that made the membership gifting purchase. This matches + the `snippet.authorChannelId` of the associated membership gifting message.\"\n + \ },\n \"memberLevelName\": {\n \"description\": \"The + name of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` + of the associated membership gifting message. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\",\n \"type\": \"string\"\n },\n \"associatedMembershipGiftingMessageId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the membership gifting message that is related to this gift membership. This + ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n + \ },\n \"ChannelListResponse\": {\n \"type\": \"object\",\n \"id\": + \"ChannelListResponse\",\n \"properties\": {\n \"items\": {\n + \ \"items\": {\n \"$ref\": \"Channel\"\n },\n + \ \"type\": \"array\"\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n },\n \"kind\": {\n + \ \"default\": \"youtube#channelListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n }\n },\n \"InvideoBranding\": {\n \"id\": + \"InvideoBranding\",\n \"properties\": {\n \"imageUrl\": {\n \"type\": + \"string\",\n \"description\": \"The url of the uploaded image. Only + used in apiary to api communication.\"\n },\n \"position\": + {\n \"$ref\": \"InvideoPosition\",\n \"description\": \"The + spatial position within the video where the branding watermark will be displayed.\"\n + \ },\n \"imageBytes\": {\n \"description\": \"The bytes + the uploaded image. Only used in api to youtube communication.\",\n \"format\": + \"byte\",\n \"type\": \"string\"\n },\n \"timing\": + {\n \"$ref\": \"InvideoTiming\",\n \"description\": \"The + temporal position within the video where watermark will be displayed.\"\n + \ },\n \"targetChannelId\": {\n \"description\": \"The + channel to which this branding links. If not present it defaults to the current + channel.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"LINT.IfChange Describes an invideo branding.\"\n + \ },\n \"LiveStreamSnippet\": {\n \"id\": \"LiveStreamSnippet\",\n + \ \"properties\": {\n \"isDefaultStream\": {\n \"type\": + \"boolean\"\n },\n \"description\": {\n \"description\": + \"The stream's description. The value cannot be longer than 10000 characters.\",\n + \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that is transmitting + the stream.\",\n \"type\": \"string\"\n },\n \"title\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"type\": \"string\",\n \"description\": \"The stream's + title. The value must be between 1 and 128 characters long.\"\n },\n + \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the stream was created.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"Thumbnail\": + {\n \"type\": \"object\",\n \"id\": \"Thumbnail\",\n \"description\": + \"A thumbnail is an image representing a YouTube resource.\",\n \"properties\": + {\n \"height\": {\n \"format\": \"uint32\",\n \"type\": + \"integer\",\n \"description\": \"(Optional) Height of the thumbnail + image.\"\n },\n \"url\": {\n \"type\": \"string\",\n + \ \"description\": \"The thumbnail image's URL.\"\n },\n \"width\": + {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"(Optional) Width of the thumbnail image.\"\n }\n }\n },\n + \ \"PlaylistItem\": {\n \"id\": \"PlaylistItem\",\n \"description\": + \"A *playlistItem* resource identifies another resource, such as a video, + that is included in a playlist. In addition, the playlistItem resource contains + details about the included resource that pertain specifically to how that + resource is used in that playlist. YouTube uses playlists to identify special + collections of videos for a channel, such as: - uploaded videos - favorite + videos - positively rated (liked) videos - watch history - watch later To + be more specific, these lists are associated with a channel, which is a collection + of a person, group, or company's videos, playlists, and other YouTube information. + You can retrieve the playlist IDs for each of these lists from the channel + resource for a given channel. You can then use the playlistItems.list method + to retrieve any of those lists. You can also add or remove items from those + lists by calling the playlistItems.insert and playlistItems.delete methods. + For example, if a user gives a positive rating to a video, you would insert + that video into the liked videos playlist for that user's channel.\",\n \"type\": + \"object\",\n \"properties\": {\n \"contentDetails\": {\n \"description\": + \"The contentDetails object is included in the resource if the included item + is a YouTube video. The object contains additional information about the video.\",\n + \ \"$ref\": \"PlaylistItemContentDetails\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the playlist item.\"\n },\n \"status\": {\n \"description\": + \"The status object contains information about the playlist item's privacy + status.\",\n \"$ref\": \"PlaylistItemStatus\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#playlistItem\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#playlistItem\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the playlist item, such as its title and position in the + playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n }\n }\n + \ },\n \"VideoLocalization\": {\n \"id\": \"VideoLocalization\",\n + \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"Localized version of the video's description.\"\n + \ },\n \"title\": {\n \"description\": \"Localized version + of the video's title.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"description\": \"Localized versions of + certain video properties (e.g. title).\"\n },\n \"SubscriptionContentDetails\": + {\n \"id\": \"SubscriptionContentDetails\",\n \"description\": \"Details + about the content to witch a subscription refers.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"totalItemCount\": {\n \"format\": + \"uint32\",\n \"description\": \"The approximate number of items + that the subscription points to.\",\n \"type\": \"integer\"\n },\n + \ \"newItemCount\": {\n \"description\": \"The number of new + items in the subscription since its content was last read.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"activityType\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"subscriptionActivityTypeUnspecified\",\n \"all\",\n + \ \"uploads\"\n ],\n \"description\": \"The type + of activity this subscription is for (only uploads, everything).\"\n }\n + \ }\n },\n \"Entity\": {\n \"type\": \"object\",\n \"properties\": + {\n \"url\": {\n \"type\": \"string\"\n },\n \"typeId\": + {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": + \"string\"\n }\n },\n \"id\": \"Entity\"\n },\n \"CaptionSnippet\": + {\n \"description\": \"Basic details about a caption track, such as its + language and name.\",\n \"type\": \"object\",\n \"properties\": + {\n \"isDraft\": {\n \"description\": \"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. @mutable youtube.captions.insert + youtube.captions.update\",\n \"type\": \"boolean\"\n },\n + \ \"language\": {\n \"description\": \"The language of the + caption track. The property value is a BCP-47 language tag.\",\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n }\n },\n \"name\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The name of the caption track. The name is intended to be visible to the + user as an option during playback.\"\n },\n \"status\": {\n + \ \"enum\": [\n \"serving\",\n \"syncing\",\n + \ \"failed\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The caption track's status.\",\n \"type\": \"string\"\n },\n + \ \"videoId\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n },\n + \ \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the video associated with the caption track. + @mutable youtube.captions.insert\"\n },\n \"isAutoSynced\": + {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n + \ },\n \"isEasyReader\": {\n \"description\": \"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.\",\n + \ \"type\": \"boolean\"\n },\n \"isCC\": {\n \"type\": + \"boolean\",\n \"description\": \"Indicates whether the track contains + closed captions for the deaf and hard of hearing. The default value is false.\"\n + \ },\n \"audioTrackType\": {\n \"description\": \"The + type of audio track associated with the caption track.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"unknown\",\n \"primary\",\n \"commentary\",\n + \ \"descriptive\"\n ]\n },\n \"trackKind\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The caption track's + type.\",\n \"enum\": [\n \"standard\",\n \"ASR\",\n + \ \"forced\"\n ],\n \"type\": \"string\"\n },\n + \ \"lastUpdated\": {\n \"format\": \"date-time\",\n \"description\": + \"The date and time when the caption track was last updated.\",\n \"type\": + \"string\"\n },\n \"isLarge\": {\n \"description\": + \"Indicates whether the caption track uses large text for the vision-impaired. + The default value is false.\",\n \"type\": \"boolean\"\n },\n + \ \"failureReason\": {\n \"enum\": [\n \"unknownFormat\",\n + \ \"unsupportedFormat\",\n \"processingFailed\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The reason that + YouTube failed to process the caption track. This property is only present + if the state property's value is failed.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n }\n + \ },\n \"id\": \"CaptionSnippet\"\n },\n \"PropertyValue\": + {\n \"description\": \"A pair Property / Value.\",\n \"properties\": + {\n \"property\": {\n \"type\": \"string\",\n \"description\": + \"A property.\"\n },\n \"value\": {\n \"description\": + \"The property's value.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"PropertyValue\",\n \"type\": \"object\"\n },\n \"LevelDetails\": + {\n \"properties\": {\n \"displayName\": {\n \"description\": + \"The name that should be used when referring to this level.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LevelDetails\"\n },\n \"MembershipsLevelSnippet\": {\n \"properties\": + {\n \"creatorChannelId\": {\n \"type\": \"string\",\n \"description\": + \"The id of the channel that's offering channel memberships.\"\n },\n + \ \"levelDetails\": {\n \"$ref\": \"LevelDetails\",\n \"description\": + \"Details about the pricing level.\"\n }\n },\n \"id\": \"MembershipsLevelSnippet\",\n + \ \"type\": \"object\"\n },\n \"ActivityContentDetailsSocial\": + {\n \"id\": \"ActivityContentDetailsSocial\",\n \"type\": \"object\",\n + \ \"description\": \"Details about a social network post.\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object encapsulates information that identifies the resource + associated with a social network post.\"\n },\n \"imageUrl\": + {\n \"description\": \"An image of the post's author.\",\n \"type\": + \"string\"\n },\n \"referenceUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The URL of the social network post.\"\n },\n + \ \"author\": {\n \"description\": \"The author of the social + network post.\",\n \"type\": \"string\"\n },\n \"type\": + {\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n + \ \"facebook\",\n \"twitter\"\n ],\n \"description\": + \"The name of the social network.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n }\n }\n },\n \"LocalizedString\": {\n \"id\": + \"LocalizedString\",\n \"properties\": {\n \"value\": {\n \"type\": + \"string\"\n },\n \"language\": {\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"AccessPolicy\": + {\n \"properties\": {\n \"allowed\": {\n \"description\": + \"The value of allowed indicates whether the access to the policy is allowed + or denied by default.\",\n \"type\": \"boolean\"\n },\n \"exception\": + {\n \"description\": \"A list of region codes that identify countries + where the default policy do not apply.\",\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n }\n + \ },\n \"id\": \"AccessPolicy\",\n \"type\": \"object\",\n \"description\": + \"Rights management policy for YouTube resources.\"\n },\n \"ActivityContentDetailsPlaylistItem\": + {\n \"description\": \"Information about a new playlist item.\",\n \"type\": + \"object\",\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"properties\": + {\n \"playlistItemId\": {\n \"description\": \"ID of the item + within the playlist.\",\n \"type\": \"string\"\n },\n \"resourceId\": + {\n \"description\": \"The resourceId object contains information + about the resource that was added to the playlist.\",\n \"$ref\": + \"ResourceId\"\n },\n \"playlistId\": {\n \"description\": + \"The value that YouTube uses to uniquely identify the playlist.\",\n \"type\": + \"string\"\n }\n }\n },\n \"MembershipsDurationAtLevel\": + {\n \"properties\": {\n \"memberTotalDurationMonths\": {\n \"description\": + \"The cumulative time the user has been a member for the given level in complete + months (the time is rounded down to the nearest integer).\",\n \"type\": + \"integer\",\n \"format\": \"int32\"\n },\n \"memberSince\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the user became a continuous member for the given level.\"\n + \ },\n \"level\": {\n \"description\": \"Pricing level + ID.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"MembershipsDurationAtLevel\",\n \"type\": \"object\"\n },\n \"PlaylistStatus\": + {\n \"type\": \"object\",\n \"id\": \"PlaylistStatus\",\n \"properties\": + {\n \"privacyStatus\": {\n \"description\": \"The playlist's + privacy status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n }\n + \ }\n },\n \"MonitorStreamInfo\": {\n \"properties\": {\n \"enableMonitorStream\": + {\n \"description\": \"This value determines whether the monitor + stream is enabled for the broadcast. If the monitor stream is enabled, then + YouTube will broadcast the event content on a special stream intended only + for the broadcaster's consumption. The broadcaster can use the stream to review + the event content and also to identify the optimal times to insert cuepoints. + You need to set this value to true if you intend to have a broadcast delay + for your event. *Note:* This property cannot be updated once the broadcast + is in the testing or live state.\",\n \"type\": \"boolean\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n }\n },\n \"broadcastStreamDelayMs\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"type\": \"integer\",\n \"description\": + \"If you have set the enableMonitorStream property to true, then this property + determines the length of the live broadcast delay.\",\n \"format\": + \"uint32\"\n },\n \"embedHtml\": {\n \"type\": \"string\",\n + \ \"description\": \"HTML code that embeds a player that plays the + monitor stream.\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"Settings and Info of the monitor stream\",\n \"id\": \"MonitorStreamInfo\"\n + \ }\n },\n \"ownerName\": \"Google\",\n \"servicePath\": \"\",\n \"protocol\": + \"rest\",\n \"kind\": \"discovery#restDescription\",\n \"icons\": {\n \"x32\": + \"http://www.google.com/images/icons/product/search-32.gif\",\n \"x16\": + \"http://www.google.com/images/icons/product/search-16.gif\"\n },\n \"baseUrl\": + \"https://youtube.googleapis.com/\"\n}\n" headers: Alt-Svc: - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 @@ -12538,7 +12542,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:40 GMT + - Thu, 09 Mar 2023 00:26:51 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: @@ -12656,7 +12660,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:40 GMT + - Thu, 09 Mar 2023 00:26:52 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: diff --git a/tests/cassettes/test_youtube/test_query_or_fetch_youtube_video[VOG-fFhq7kk].yaml b/tests/cassettes/test_youtube/test_query_or_fetch_youtube_video[VOG-fFhq7kk].yaml index d071067f..5c76a34e 100644 --- a/tests/cassettes/test_youtube/test_query_or_fetch_youtube_video[VOG-fFhq7kk].yaml +++ b/tests/cassettes/test_youtube/test_query_or_fetch_youtube_video[VOG-fFhq7kk].yaml @@ -10,64 +10,33 @@ interactions: uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest response: body: - string: "{\n \"name\": \"youtube\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"fullyEncodeReservedExpansion\": true,\n \"basePath\": \"\",\n \"canonicalName\": - \"YouTube\",\n \"revision\": \"20230131\",\n \"batchPath\": \"batch\",\n - \ \"discoveryVersion\": \"v1\",\n \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"ownerDomain\": \"google.com\",\n \"servicePath\": \"\",\n \"mtlsRootUrl\": - \"https://youtube.mtls.googleapis.com/\",\n \"id\": \"youtube:v3\",\n \"resources\": - {\n \"tests\": {\n \"methods\": {\n \"insert\": {\n \"description\": - \"POST method.\",\n \"request\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"id\": \"youtube.tests.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/tests\",\n \"response\": - {\n \"$ref\": \"TestItem\"\n },\n \"path\": \"youtube/v3/tests\"\n - \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"delete\": - {\n \"id\": \"youtube.captions.delete\",\n \"path\": \"youtube/v3/captions\",\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"mediaUpload\": {\n \"maxSize\": - \"104857600\",\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"parameters\": {\n \"sync\": {\n \"type\": - \"boolean\",\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"description\": \"The - *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + string: "{\n \"title\": \"YouTube Data API v3\",\n \"documentationLink\": + \"https://developers.google.com/youtube/\",\n \"resources\": {\n \"liveBroadcasts\": + {\n \"methods\": {\n \"insertCuepoint\": {\n \"parameterOrder\": + [],\n \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"id\": {\n \"location\": \"query\",\n \"description\": + \"Broadcast to insert ads to, or equivalently `external_video_id` for internal + use.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -76,243 +45,50 @@ interactions: content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"supportsMediaUpload\": true,\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"path\": \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.insert\",\n \"response\": {\n - \ \"$ref\": \"Caption\"\n }\n },\n \"list\": - {\n \"path\": \"youtube/v3/captions\",\n \"response\": {\n - \ \"$ref\": \"CaptionListResponse\"\n },\n \"id\": - \"youtube.captions.list\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"description\": - \"Returns the captions with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the captions for the specified video.\",\n \"required\": - true\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is on behalf of.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"httpMethod\": \"GET\"\n },\n \"update\": - {\n \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/captions\",\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.update\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"supportsMediaUpload\": true,\n \"parameters\": {\n \"sync\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"type\": \"string\"\n }\n },\n \"mediaUpload\": - {\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ }\n },\n \"maxSize\": \"104857600\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"download\": {\n \"httpMethod\": - \"GET\",\n \"useMediaDownloadService\": true,\n \"path\": - \"youtube/v3/captions/{id}\",\n \"supportsMediaDownload\": true,\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"tfmt\": {\n \"location\": - \"query\",\n \"description\": \"Convert the captions into this - format. Supported options are sbv, srt, and vtt.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"tlang\": {\n \"description\": \"tlang is the language - code; machine translate the captions into this language.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"path\",\n \"description\": \"The - ID of the caption track to download, required for One Platform.\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is be on behalf of\",\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Downloads a caption track.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"id\": - \"youtube.captions.download\"\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"en-US\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the videoCategory resource parts that the API response - will include. Supported values are id and snippet.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/videoAbuseReportReasons\"\n }\n }\n - \ },\n \"playlistItems\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/playlistItems\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.list\",\n \"response\": - {\n \"$ref\": \"PlaylistItemListResponse\"\n },\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"pageToken\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"maximum\": \"50\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"minimum\": \"0\"\n },\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"Return the playlist - items associated with the given video ID.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the playlist items within the given - playlist.\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"delete\": {\n \"id\": \"youtube.playlistItems.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n }\n },\n \"update\": {\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \"string\"\n }\n },\n \"response\": {\n \"$ref\": + \"Cuepoint\"\n },\n \"httpMethod\": \"POST\",\n \"request\": + {\n \"$ref\": \"Cuepoint\"\n },\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"id\": + \"youtube.liveBroadcasts.insertCuepoint\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"description\": \"Updates an existing resource.\",\n \"id\": - \"youtube.playlistItems.update\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"flatPath\": \"youtube/v3/playlistItems\"\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new resource into this collection.\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \ ],\n \"description\": \"Insert cuepoints in a broadcast\"\n + \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n + \ },\n \"httpMethod\": \"GET\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": + {\n \"broadcastType\": {\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n + \ \"all\",\n \"event\",\n \"persistent\"\n + \ ],\n \"location\": \"query\",\n \"default\": + \"event\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all broadcasts.\",\n \"Return only + scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"Return only broadcasts with the selected type.\"\n },\n \"part\": + {\n \"description\": \"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, status and statistics.\",\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true,\n \"type\": \"string\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"repeated\": + true\n },\n \"mine\": {\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"maxResults\": + {\n \"type\": \"integer\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"format\": \"uint32\",\n \"minimum\": + \"0\",\n \"maximum\": \"50\",\n \"default\": \"5\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": \"*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 @@ -322,32 +98,34 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"id\": \"youtube.playlistItems.insert\"\n }\n }\n },\n - \ \"youtube\": {\n \"resources\": {\n \"v3\": {\n \"methods\": - {\n \"updateCommentThreads\": {\n \"response\": {\n - \ \"$ref\": \"CommentThread\"\n },\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": - \"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.\"\n }\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"id\": - \"youtube.youtube.v3.updateCommentThreads\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"parameterOrder\": []\n - \ }\n }\n }\n }\n },\n \"playlists\": - {\n \"methods\": {\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"Playlist\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"flatPath\": \"youtube/v3/playlists\",\n \"id\": - \"youtube.playlists.insert\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + \"string\"\n },\n \"broadcastStatus\": {\n \"description\": + \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all broadcasts.\",\n \"Return + current live broadcasts.\",\n \"Return broadcasts that have + not yet started.\",\n \"Return broadcasts that have already + ended.\"\n ],\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n + \ \"all\",\n \"active\",\n \"upcoming\",\n + \ \"completed\"\n ]\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"description\": + \"Retrieve the list of broadcasts associated with the given channel.\",\n + \ \"id\": \"youtube.liveBroadcasts.list\"\n },\n \"update\": + {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": \"string\",\n \"description\": \"This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* @@ -363,30 +141,21 @@ interactions: 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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\"\n },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlists.delete\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"httpMethod\": \"DELETE\",\n \"path\": - \"youtube/v3/playlists\",\n \"description\": \"Deletes a resource.\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + \ \"part\": {\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -395,53 +164,49 @@ interactions: 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.\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"list\": {\n \"id\": - \"youtube.playlists.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/playlists\",\n \"parameters\": - {\n \"channelId\": {\n \"description\": \"Return the - playlists owned by the specified channel ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"mine\": {\n \"description\": \"Return the playlists - owned by the authenticated user.\",\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"type\": - \"integer\",\n \"maximum\": \"50\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"This parameter can only be used in a properly + be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Updates an existing broadcast for the authenticated + user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.update\",\n + \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"request\": + {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"transition\": + {\n \"description\": \"Transition a broadcast to a given status.\",\n + \ \"parameters\": {\n \"broadcastStatus\": {\n \"type\": + \"string\",\n \"description\": \"The status to which the broadcast + is going to transition.\",\n \"enum\": [\n \"statusUnspecified\",\n + \ \"testing\",\n \"live\",\n \"complete\"\n + \ ],\n \"required\": true,\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Start testing the broadcast. YouTube transmits video to + the broadcast's monitor stream. Note that you can only transition a broadcast + to the testing state if its contentDetails.monitorStream.enableMonitorStream + property is set to true.\\\",\",\n \"Return only persistent + broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting + video.\"\n ]\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Broadcast to transition.\",\n \"required\": true\n },\n + \ \"part\": {\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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 @@ -455,51 +220,28 @@ interactions: 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.\"\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the playlists with the given IDs for - Stubby or Apiary.\",\n \"repeated\": true\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"PlaylistListResponse\"\n }\n },\n - \ \"update\": {\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"path\": - \"youtube/v3/playlists\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ],\n + for each separate channel.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"parameterOrder\": [\n \"broadcastStatus\",\n + \ \"id\",\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/liveBroadcasts/transition\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"id\": \"youtube.playlists.update\"\n }\n - \ }\n },\n \"channelBanners\": {\n \"methods\": {\n \"insert\": - {\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"response\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"parameters\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts/transition\"\n + \ },\n \"insert\": {\n \"request\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"httpMethod\": \"POST\",\n \"id\": + \"youtube.liveBroadcasts.insert\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"description\": \"Inserts a new stream for the authenticated + user.\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"required\": true,\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -515,8 +257,8 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"*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 @@ -524,220 +266,30 @@ interactions: content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameterOrder\": [],\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"6291456\"\n },\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.channelBanners.insert\",\n \"supportsMediaUpload\": true\n - \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/channels\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"flatPath\": \"youtube/v3/channels\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.channels.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the ids of channels owned by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"Return the channels with the - specified IDs.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"mySubscribers\": {\n \"description\": - \"Return the channels subscribed to the authenticated user\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"categoryId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the channels within the specified - guide category ID.\"\n },\n \"managedByMe\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the channels managed - by the authenticated user.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"location\": \"query\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": true\n },\n - \ \"forUsername\": {\n \"description\": \"Return the - channel associated with a YouTube username.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"hl\": - {\n \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n }\n },\n \"update\": {\n \"response\": - {\n \"$ref\": \"Channel\"\n },\n \"flatPath\": - \"youtube/v3/channels\",\n \"description\": \"Updates an existing - resource.\",\n \"id\": \"youtube.channels.update\",\n \"path\": - \"youtube/v3/channels\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"Channel\"\n - \ },\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"The *onBehalfOfContentOwner* parameter indicates - that the authenticated user is acting on behalf of the content owner specified + individual channel. The CMS account that the user authenticates with must + be linked to the specified YouTube content owner.\"\n }\n },\n + \ \"path\": \"youtube/v3/liveBroadcasts\"\n },\n \"delete\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": + \"DELETE\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"id\": + \"youtube.liveBroadcasts.delete\",\n \"description\": \"Delete a + given broadcast.\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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 needs to be linked - to the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/commentThreads\"\n },\n - \ \"list\": {\n \"id\": \"youtube.commentThreads.list\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"Returns the comment threads with the given IDs for Stubby or Apiary.\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Returns the comment threads - for all the channel comments (ie does not include comments left on videos).\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"moderationStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"default\": \"published\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\",\n \"description\": \"Limits the returned comment threads - to those with the specified moderation status. Not compatible with the 'id' - filter. Valid values: published, heldForReview, likelySpam.\"\n },\n - \ \"allThreadsRelatedToChannelId\": {\n \"description\": - \"Returns the comment threads of all videos of the channel and the channel - comments as well.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"maximum\": - \"100\",\n \"default\": \"20\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"1\"\n },\n \"searchTerms\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\"\n },\n \"textFormat\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"default\": \"html\",\n \"description\": - \"The requested text format for the returned comments.\",\n \"location\": - \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ]\n - \ },\n \"videoId\": {\n \"description\": - \"Returns the comment threads of the specified video.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"order\": - {\n \"location\": \"query\",\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Order - by time.\",\n \"Order by relevance.\"\n ],\n \"default\": - \"time\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"path\": \"youtube/v3/commentThreads\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"flatPath\": \"youtube/v3/commentThreads\"\n }\n - \ }\n },\n \"subscriptions\": {\n \"methods\": {\n \"insert\": - {\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"response\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"id\": \"youtube.subscriptions.insert\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/subscriptions\",\n \"flatPath\": - \"youtube/v3/subscriptions\"\n },\n \"delete\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n }\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"response\": - {\n \"$ref\": \"SubscriptionListResponse\"\n },\n \"id\": - \"youtube.subscriptions.list\",\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"pageToken\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"This parameter can only be used in a properly + The CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n },\n + \ \"id\": {\n \"required\": true,\n \"description\": + \"Broadcast to delete.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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 @@ -751,35 +303,19 @@ interactions: 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.\"\n },\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions with the given IDs - for Stubby or Apiary.\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the subscriptions of the - given channel owner.\",\n \"type\": \"string\"\n },\n - \ \"mine\": {\n \"description\": \"Flag for returning - the subscriptions of the authenticated user.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"mySubscribers\": - {\n \"description\": \"Return the subscribers of the given channel - owner.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"order\": {\n \"location\": - \"query\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"description\": \"The order of the returned - subscriptions\",\n \"default\": \"relevance\",\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"maximum\": \"50\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"default\": \"5\"\n },\n \"myRecentSubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"forChannelId\": {\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + for each separate channel.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n }\n },\n \"bind\": {\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"description\": + \"Bind a broadcast to a stream.\",\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"id\": \"youtube.liveBroadcasts.bind\",\n + \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameterOrder\": + [\n \"id\",\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": + {\n \"streamId\": {\n \"location\": \"query\",\n \"description\": + \"Stream to bind, if not set unbind the current one.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"*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 @@ -788,123 +324,425 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n - \ \"set\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"videoId\": {\n \"location\": \"query\",\n - \ \"description\": \"Returns the Thumbnail with the given video - IDs for Stubby or Apiary.\",\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"2097152\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"path\": \"youtube/v3/thumbnails/set\",\n \"parameterOrder\": - [\n \"videoId\"\n ],\n \"response\": {\n \"$ref\": - \"ThumbnailSetResponse\"\n },\n \"id\": \"youtube.thumbnails.set\",\n - \ \"supportsMediaUpload\": true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"flatPath\": - \"youtube/v3/thumbnails/set\"\n }\n }\n },\n \"members\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/members\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"id\": \"youtube.members.list\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"type\": - \"integer\",\n \"maximum\": \"1000\",\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"format\": - \"uint32\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"hasAccessToLevel\": {\n \"type\": \"string\",\n - \ \"description\": \"Filter members in the results set to the - ones that have access to a level.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"repeated\": true\n },\n \"filterByMemberChannelId\": - {\n \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"mode\": {\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - only members that joined after the first call with this mode was made.\",\n - \ \"Return all current members, from newest to oldest.\"\n ],\n - \ \"default\": \"all_current\",\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/members\",\n \"description\": \"Retrieves - a list of members that match the request criteria for a channel.\",\n \"response\": - {\n \"$ref\": \"MemberListResponse\"\n }\n }\n - \ }\n },\n \"superChatEvents\": {\n \"methods\": {\n \"list\": - {\n \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"description\": \"Return rendered funding amounts - in specified language.\",\n \"type\": \"string\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"1\"\n + be linked to the specified YouTube content owner.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"description\": + \"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.\",\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"id\": + {\n \"description\": \"Broadcast to bind to the stream\",\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\"\n }\n }\n }\n }\n },\n \"i18nLanguages\": + {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"hl\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"default\": \"en_US\"\n },\n \"part\": + {\n \"description\": \"The *part* parameter specifies the i18nLanguage + resource properties that the API response will include. Set the parameter + value to snippet.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true\n }\n },\n \"path\": \"youtube/v3/i18nLanguages\",\n + \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": + \"I18nLanguageListResponse\"\n },\n \"id\": \"youtube.i18nLanguages.list\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n + \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n + \ \"list\": {\n \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n + \ },\n \"path\": \"youtube/v3/i18nRegions\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": + \"youtube/v3/i18nRegions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.i18nRegions.list\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n + \ \"parameters\": {\n \"hl\": {\n \"default\": + \"en_US\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"description\": + \"The *part* parameter specifies the i18nRegion resource properties that the + API response will include. Set the parameter value to snippet.\",\n \"type\": + \"string\",\n \"repeated\": true\n }\n }\n + \ }\n }\n },\n \"comments\": {\n \"methods\": {\n \"insert\": + {\n \"path\": \"youtube/v3/comments\",\n \"request\": {\n + \ \"$ref\": \"Comment\"\n },\n \"response\": {\n + \ \"$ref\": \"Comment\"\n },\n \"httpMethod\": + \"POST\",\n \"flatPath\": \"youtube/v3/comments\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"repeated\": + true,\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": + \"youtube.comments.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"update\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"Comment\"\n },\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"path\": \"youtube/v3/comments\",\n \"request\": {\n \"$ref\": + \"Comment\"\n },\n \"id\": \"youtube.comments.update\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"required\": true\n + \ }\n },\n \"httpMethod\": \"PUT\",\n \"description\": + \"Updates an existing resource.\"\n },\n \"setModerationStatus\": + {\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n + \ \"parameters\": {\n \"banAuthor\": {\n \"description\": + \"If set to true the author of the comment gets added to the ban list. This + means all future comments of the author will autmomatically be rejected. Only + valid in combination with STATUS_REJECTED.\",\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"default\": + \"false\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true,\n \"description\": \"Modifies the moderation status of + the comments with the given IDs\",\n \"location\": \"query\"\n + \ },\n \"moderationStatus\": {\n \"description\": + \"Specifies the requested moderation status. Note, comments can be in statuses, + which are not available through this call. For example, this call does not + allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, + MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"enum\": + [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n + \ \"rejected\"\n ],\n \"type\": \"string\",\n + \ \"required\": true,\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"The comment is available + for public display.\",\n \"The comment is awaiting review by + a moderator.\",\n \"\",\n \"The comment is unfit + for display.\"\n ]\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/comments/setModerationStatus\",\n \"description\": + \"Sets the moderation status of one or more comments.\",\n \"id\": + \"youtube.comments.setModerationStatus\",\n \"parameterOrder\": [\n + \ \"id\",\n \"moderationStatus\"\n ],\n \"httpMethod\": + \"POST\"\n },\n \"delete\": {\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\"\n }\n },\n \"parameterOrder\": [\n + \ \"id\"\n ],\n \"description\": \"Deletes a resource.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/comments\",\n \"id\": + \"youtube.comments.delete\",\n \"httpMethod\": \"DELETE\"\n },\n + \ \"markAsSpam\": {\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"path\": \"youtube/v3/comments/markAsSpam\",\n \"flatPath\": + \"youtube/v3/comments/markAsSpam\",\n \"httpMethod\": \"POST\",\n + \ \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true,\n \"description\": \"Flags the comments with the given + IDs as spam in the caller's opinion.\",\n \"location\": \"query\"\n + \ }\n },\n \"description\": \"Expresses the caller's + opinion that one or more comments should be flagged as spam.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.comments.markAsSpam\"\n },\n \"list\": + {\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n + \ },\n \"parameters\": {\n \"parentId\": {\n \"location\": + \"query\",\n \"description\": \"Returns replies to the specified + comment. Note, currently YouTube features only one level of replies (ie replies + to top level comments). However replies to replies may be supported in the + future.\",\n \"type\": \"string\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the superChatEvent resource parts that the API - response will include. This parameter is currently not supported.\",\n \"repeated\": - true,\n \"required\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"id\": \"youtube.superChatEvents.list\",\n \"flatPath\": - \"youtube/v3/superChatEvents\",\n \"path\": \"youtube/v3/superChatEvents\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\"\n }\n }\n },\n \"search\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.search.list\",\n \"description\": - \"Retrieves a list of search resources\",\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Filter on resources belonging - to this channelId.\",\n \"type\": \"string\"\n },\n - \ \"q\": {\n \"description\": \"Textual search terms - to match.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"relatedToVideoId\": {\n \"description\": - \"Search related to a resource.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"safeSearch\": - {\n \"enumDescriptions\": [\n \"\",\n \"YouTube + \ \"description\": \"The *part* parameter specifies a comma-separated + list of one or more comment resource properties that the API response will + include.\",\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"Returns + the comments with the given IDs for One Platform.\"\n },\n \"textFormat\": + {\n \"type\": \"string\",\n \"description\": \"The + requested text format for the returned comments.\",\n \"default\": + \"html\",\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Returns + the comments in HTML format. This is the default value.\",\n \"Returns + the comments in plain text format.\"\n ],\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"default\": + \"20\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"type\": \"integer\",\n \"format\": \"uint32\",\n + \ \"location\": \"query\",\n \"minimum\": \"1\",\n + \ \"maximum\": \"100\"\n }\n },\n \"flatPath\": + \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"id\": \"youtube.comments.list\",\n \"path\": + \"youtube/v3/comments\",\n \"httpMethod\": \"GET\"\n }\n }\n + \ },\n \"abuseReports\": {\n \"methods\": {\n \"insert\": + {\n \"description\": \"Inserts a new resource into this collection.\",\n + \ \"id\": \"youtube.abuseReports.insert\",\n \"path\": \"youtube/v3/abuseReports\",\n + \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": + \"AbuseReport\"\n },\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"type\": \"string\"\n }\n + \ },\n \"response\": {\n \"$ref\": \"AbuseReport\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/abuseReports\"\n }\n }\n },\n \"channels\": + {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n + \ ],\n \"parameters\": {\n \"managedByMe\": {\n + \ \"location\": \"query\",\n \"description\": \"Return + the channels managed by the authenticated user.\",\n \"type\": + \"boolean\"\n },\n \"mine\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"description\": + \"Return the ids of channels owned by the authenticated user.\"\n },\n + \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"maxResults\": + {\n \"minimum\": \"0\",\n \"maximum\": \"50\",\n + \ \"type\": \"integer\",\n \"location\": \"query\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"default\": + \"5\",\n \"format\": \"uint32\"\n },\n \"forUsername\": + {\n \"description\": \"Return the channel associated with a YouTube + username.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"required\": + true\n },\n \"hl\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Stands + for \\\"host language\\\". Specifies the localization language of the metadata + to be filled into snippet.localized. The field is filled with the default + metadata if there is no localization in the specified language. The parameter + value must be a language code included in the list returned by the i18nLanguages.list + method (e.g. en_US, es_MX).\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"categoryId\": {\n \"description\": \"Return the + channels within the specified guide category ID.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"description\": \"Return + the channels with the specified IDs.\"\n },\n \"mySubscribers\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Return the channels subscribed to the authenticated + user\"\n }\n },\n \"httpMethod\": \"GET\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"path\": + \"youtube/v3/channels\",\n \"response\": {\n \"$ref\": + \"ChannelListResponse\"\n },\n \"flatPath\": \"youtube/v3/channels\",\n + \ \"id\": \"youtube.channels.list\"\n },\n \"update\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"request\": {\n \"$ref\": + \"Channel\"\n },\n \"id\": \"youtube.channels.update\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": + \"Channel\"\n },\n \"httpMethod\": \"PUT\",\n \"path\": + \"youtube/v3/channels\",\n \"flatPath\": \"youtube/v3/channels\"\n + \ }\n }\n },\n \"channelBanners\": {\n \"methods\": + {\n \"insert\": {\n \"mediaUpload\": {\n \"maxSize\": + \"6291456\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ],\n \"protocols\": + {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n + \ \"multipart\": true\n },\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n + \ }\n }\n },\n \"httpMethod\": \"POST\",\n + \ \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n + \ },\n \"parameterOrder\": [],\n \"path\": \"youtube/v3/channelBanners/insert\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n + \ ],\n \"id\": \"youtube.channelBanners.insert\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"request\": + {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"parameters\": + {\n \"channelId\": {\n \"description\": \"Unused, + channel_id is currently derived from the security context of the requestor.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*Note:* + This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* + parameter indicates that the request's authorization credentials identify + a YouTube CMS user who is acting on behalf of the content owner specified + in the parameter value. This parameter is intended for YouTube content partners + that own and manage many different YouTube channels. It allows content owners + to authenticate once and get access to all their video and channel data, without + having to provide authentication credentials for each individual channel. + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\"\n }\n },\n \"supportsMediaUpload\": + true,\n \"flatPath\": \"youtube/v3/channelBanners/insert\"\n }\n + \ }\n },\n \"search\": {\n \"methods\": {\n \"list\": + {\n \"flatPath\": \"youtube/v3/search\",\n \"description\": + \"Retrieves a list of search resources\",\n \"path\": \"youtube/v3/search\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.search.list\",\n \"parameters\": + {\n \"relevanceLanguage\": {\n \"location\": \"query\",\n + \ \"description\": \"Return results relevant to this language.\",\n + \ \"type\": \"string\"\n },\n \"topicId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Restrict results to a particular topic.\"\n + \ },\n \"videoCaption\": {\n \"description\": + \"Filter on the presence of captions on the videos.\",\n \"location\": + \"query\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n + \ \"any\",\n \"closedCaption\",\n \"none\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Do not filter results based on + caption availability.\",\n \"Only include videos that have + captions.\",\n \"Only include videos that do not have captions.\"\n + \ ]\n },\n \"videoLicense\": {\n \"description\": + \"Filter on the license of the videos.\",\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"Return all videos, + regardless of which license they have, that match the query parameters.\",\n + \ \"Only return videos that have the standard YouTube license.\",\n + \ \"Only return videos that have a Creative Commons license. + Users can reuse videos with this license in other videos that they create. + Learn more.\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"any\",\n \"youtube\",\n \"creativeCommon\"\n + \ ]\n },\n \"videoSyndicated\": {\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all videos, syndicated or not.\",\n \"Only + retrieve syndicated videos.\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"videoSyndicatedUnspecified\",\n + \ \"any\",\n \"true\"\n ],\n \"description\": + \"Filter on syndicated videos.\"\n },\n \"videoDefinition\": + {\n \"enum\": [\n \"any\",\n \"standard\",\n + \ \"high\"\n ],\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"Return all videos, + regardless of their resolution.\",\n \"Only retrieve videos + in standard definition.\",\n \"Only retrieve HD videos.\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"Filter on the definition of the videos.\"\n },\n \"videoDuration\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"videoDurationUnspecified\",\n + \ \"any\",\n \"short\",\n \"medium\",\n + \ \"long\"\n ],\n \"description\": + \"Filter on the duration of the videos.\",\n \"enumDescriptions\": + [\n \"\",\n \"Do not filter video search results + based on their duration. This is the default value.\",\n \"Only + include videos that are less than four minutes long.\",\n \"Only + include videos that are between four and 20 minutes long (inclusive).\",\n + \ \"Only include videos longer than 20 minutes.\"\n ]\n + \ },\n \"relatedToVideoId\": {\n \"description\": + \"Search related to a resource.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"channelType\": + {\n \"enumDescriptions\": [\n \"\",\n \"Return + all channels.\",\n \"Only retrieve shows.\"\n ],\n + \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n + \ \"show\"\n ],\n \"description\": + \"Add a filter on the channel search.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"q\": + {\n \"location\": \"query\",\n \"description\": + \"Textual search terms to match.\",\n \"type\": \"string\"\n + \ },\n \"videoDimension\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"enum\": [\n + \ \"any\",\n \"2d\",\n \"3d\"\n + \ ],\n \"description\": \"Filter on 3d videos.\",\n + \ \"enumDescriptions\": [\n \"Include both 3D and + non-3D videos in returned results. This is the default value.\",\n \"Restrict + search results to exclude 3D videos.\",\n \"Restrict search + results to only include 3D videos.\"\n ]\n },\n \"videoCategoryId\": + {\n \"location\": \"query\",\n \"description\": + \"Filter on videos in a specific category.\",\n \"type\": \"string\"\n + \ },\n \"channelId\": {\n \"description\": + \"Filter on resources belonging to this channelId.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"publishedAfter\": + {\n \"description\": \"Filter on resources published after this + date.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"format\": \"google-datetime\"\n },\n + \ \"forContentOwner\": {\n \"location\": \"query\",\n + \ \"type\": \"boolean\",\n \"description\": \"Search + owned by a content owner.\"\n },\n \"forMine\": {\n + \ \"description\": \"Search for the private videos of the authenticated + user.\",\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"order\": {\n \"default\": + \"relevance\",\n \"description\": \"Sort order of the results.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n + \ \"\",\n \"Resources are sorted in reverse chronological + order based on the date they were created.\",\n \"Resources + are sorted from highest to lowest rating.\",\n \"Resources + are sorted from highest to lowest number of views.\",\n \"Resources + are sorted based on their relevance to the search query. This is the default + value for this parameter.\",\n \"Resources are sorted alphabetically + by title.\",\n \"Channels are sorted in descending order of + their number of uploaded videos.\"\n ],\n \"enum\": + [\n \"searchSortUnspecified\",\n \"date\",\n + \ \"rating\",\n \"viewCount\",\n \"relevance\",\n + \ \"title\",\n \"videoCount\"\n ],\n + \ \"location\": \"query\"\n },\n \"locationRadius\": + {\n \"type\": \"string\",\n \"description\": \"Filter + on distance from the location (specified above).\",\n \"location\": + \"query\"\n },\n \"safeSearch\": {\n \"default\": + \"moderate\",\n \"location\": \"query\",\n \"enum\": + [\n \"safeSearchSettingUnspecified\",\n \"none\",\n + \ \"moderate\",\n \"strict\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"YouTube will not filter the search result set.\",\n \"YouTube will filter some content from search results and, at the least, will filter content that is restricted in your locale. Based on their content, search results @@ -912,74 +750,123 @@ interactions: the default parameter value.\",\n \"YouTube will try to exclude all restricted content from the search result set. Based on their content, search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Indicates whether the search results should include restricted content as - well as standard content.\",\n \"location\": \"query\",\n \"default\": - \"moderate\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ]\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"publishedBefore\": {\n \"format\": - \"google-datetime\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Filter on resources published - before this date.\"\n },\n \"videoSyndicated\": {\n - \ \"description\": \"Filter on syndicated videos.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"videoSyndicatedUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ]\n - \ },\n \"maxResults\": {\n \"description\": + \ ],\n \"description\": \"Indicates whether the search + results should include restricted content as well as standard content.\",\n + \ \"type\": \"string\"\n },\n \"forDeveloper\": + {\n \"description\": \"Restrict the search to only retrieve videos + uploaded using the project id of the authenticated user.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n + \ },\n \"type\": {\n \"location\": \"query\",\n + \ \"description\": \"Restrict results to a particular set of resource + types from One Platform.\",\n \"type\": \"string\",\n \"repeated\": + true\n },\n \"publishedBefore\": {\n \"type\": + \"string\",\n \"description\": \"Filter on resources published + before this date.\",\n \"format\": \"google-datetime\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"description\": \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\"\n - \ },\n \"forDeveloper\": {\n \"location\": - \"query\",\n \"description\": \"Restrict the search to only retrieve - videos uploaded using the project id of the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"videoDefinition\": {\n \"description\": - \"Filter on the definition of the videos.\",\n \"enum\": [\n - \ \"any\",\n \"standard\",\n \"high\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"location\": \"query\"\n - \ },\n \"videoType\": {\n \"type\": \"string\",\n - \ \"description\": \"Filter on videos of a specific type.\",\n - \ \"enum\": [\n \"videoTypeUnspecified\",\n \"any\",\n - \ \"movie\",\n \"episode\"\n ],\n - \ \"location\": \"query\",\n \"enumDescriptions\": + be returned in the result set.\",\n \"type\": \"integer\",\n + \ \"minimum\": \"0\",\n \"maximum\": \"50\",\n \"format\": + \"uint32\",\n \"default\": \"5\",\n \"location\": + \"query\"\n },\n \"videoEmbeddable\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Filter on embeddable videos.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"Return all videos, embeddable or + not.\",\n \"Only retrieve embeddable videos.\"\n ],\n + \ \"enum\": [\n \"videoEmbeddableUnspecified\",\n + \ \"any\",\n \"true\"\n ]\n },\n + \ \"location\": {\n \"description\": \"Filter on location + of the video\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true\n },\n \"videoType\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"enum\": + [\n \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n + \ \"episode\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"Return all videos.\",\n \"Only retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ]\n },\n \"videoDuration\": {\n \"location\": + \ ],\n \"description\": \"Filter on videos of a specific + type.\"\n },\n \"eventType\": {\n \"description\": + \"Filter on the livestream status of the videos.\",\n \"enum\": + [\n \"none\",\n \"upcoming\",\n \"live\",\n + \ \"completed\"\n ],\n \"location\": \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter video search results based on their duration. - This is the default value.\",\n \"Only include videos that - are less than four minutes long.\",\n \"Only include videos - that are between four and 20 minutes long (inclusive).\",\n \"Only - include videos longer than 20 minutes.\"\n ],\n \"type\": - \"string\",\n \"description\": \"Filter on the duration of the - videos.\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ]\n },\n \"publishedAfter\": + \ \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been + completed.\"\n ],\n \"type\": \"string\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"regionCode\": + {\n \"description\": \"Display the content as seen by viewers + in this country.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n + \ }\n }\n }\n },\n \"tests\": {\n \"methods\": + {\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"response\": {\n \"$ref\": \"TestItem\"\n },\n + \ \"request\": {\n \"$ref\": \"TestItem\"\n },\n + \ \"path\": \"youtube/v3/tests\",\n \"flatPath\": \"youtube/v3/tests\",\n + \ \"description\": \"POST method.\",\n \"parameters\": {\n + \ \"externalChannelId\": {\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"repeated\": true,\n \"type\": \"string\"\n }\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"id\": \"youtube.tests.insert\"\n }\n }\n },\n \"watermarks\": + {\n \"methods\": {\n \"set\": {\n \"flatPath\": \"youtube/v3/watermarks/set\",\n + \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Allows upload of + watermark image and setting it for a channel.\",\n \"supportsMediaUpload\": + true,\n \"mediaUpload\": {\n \"maxSize\": \"10485760\",\n + \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ],\n \"protocols\": + {\n \"simple\": {\n \"multipart\": true,\n \"path\": + \"/upload/youtube/v3/watermarks/set\"\n },\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n + \ \"multipart\": true\n }\n }\n },\n + \ \"parameterOrder\": [\n \"channelId\"\n ],\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/watermarks/set\",\n \"id\": \"youtube.watermarks.set\",\n + \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n }\n + \ },\n \"unset\": {\n \"parameterOrder\": [\n \"channelId\"\n + \ ],\n \"id\": \"youtube.watermarks.unset\",\n \"httpMethod\": + \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"channelId\": {\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\",\n \"description\": - \"Filter on resources published after this date.\"\n },\n \"videoCaption\": - {\n \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Filter on the presence of captions on the - videos.\",\n \"location\": \"query\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ]\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Display - the content as seen by viewers in this country.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"*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 @@ -989,277 +876,113 @@ interactions: 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.\"\n },\n \"forMine\": {\n \"location\": - \"query\",\n \"description\": \"Search for the private videos - of the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"eventType\": {\n \"description\": \"Filter on the - livestream status of the videos.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n - \ \"location\": \"query\"\n },\n \"forContentOwner\": - {\n \"description\": \"Search owned by a content owner.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"videoLicense\": {\n \"description\": - \"Filter on the license of the videos.\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"location\": \"query\"\n },\n \"channelType\": - {\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Add - a filter on the channel search.\"\n },\n \"locationRadius\": - {\n \"description\": \"Filter on distance from the location (specified - above).\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"type\": {\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular set of resource types from One Platform.\",\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"order\": {\n \"type\": \"string\",\n \"default\": - \"relevance\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Sort - order of the results.\"\n },\n \"videoEmbeddable\": - {\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"description\": - \"Filter on embeddable videos.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all videos, embeddable or - not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"videoDimension\": {\n \"enum\": - [\n \"any\",\n \"2d\",\n \"3d\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Filter on 3d videos.\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ]\n },\n \"location\": {\n - \ \"location\": \"query\",\n \"description\": \"Filter - on location of the video\",\n \"type\": \"string\"\n },\n - \ \"videoCategoryId\": {\n \"description\": \"Filter - on videos in a specific category.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"relevanceLanguage\": + owner.\"\n }\n },\n \"path\": \"youtube/v3/watermarks/unset\",\n + \ \"description\": \"Allows removal of channel watermark.\",\n \"flatPath\": + \"youtube/v3/watermarks/unset\"\n }\n }\n },\n \"captions\": + {\n \"methods\": {\n \"insert\": {\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies the caption resource parts that the API response + will include. Set the parameter value to snippet.\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"required\": + true\n },\n \"sync\": {\n \"description\": + \"Extra parameter to allow automatically syncing the uploaded caption/transcript + with the audio.\",\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\"\n },\n + \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"ID of the Google+ Page for the + channel that the request is be on behalf of\"\n }\n },\n + \ \"supportsMediaUpload\": true,\n \"id\": \"youtube.captions.insert\",\n + \ \"response\": {\n \"$ref\": \"Caption\"\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/captions\",\n \"request\": {\n \"$ref\": + \"Caption\"\n },\n \"mediaUpload\": {\n \"protocols\": + {\n \"simple\": {\n \"multipart\": true,\n \"path\": + \"/upload/youtube/v3/captions\"\n },\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n + \ }\n },\n \"accept\": [\n \"text/xml\",\n + \ \"application/octet-stream\",\n \"*/*\"\n ],\n + \ \"maxSize\": \"104857600\"\n },\n \"path\": + \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"POST\"\n },\n \"download\": {\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.captions.download\",\n \"useMediaDownloadService\": + true,\n \"path\": \"youtube/v3/captions/{id}\",\n \"httpMethod\": + \"GET\",\n \"supportsMediaDownload\": true,\n \"description\": + \"Downloads a caption track.\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return results relevant to this language.\"\n - \ },\n \"topicId\": {\n \"location\": \"query\",\n - \ \"description\": \"Restrict results to a particular topic.\",\n - \ \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/search\",\n \"response\": {\n \"$ref\": - \"SearchListResponse\"\n },\n \"flatPath\": \"youtube/v3/search\"\n - \ }\n }\n },\n \"activities\": {\n \"methods\": {\n - \ \"list\": {\n \"id\": \"youtube.activities.list\",\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n },\n \"path\": - \"youtube/v3/activities\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/activities\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"parameters\": {\n \"channelId\": {\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"regionCode\": {\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"publishedBefore\": {\n \"format\": - \"google-datetime\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"default\": - \"5\"\n },\n \"publishedAfter\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"format\": - \"google-datetime\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"home\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n }\n }\n }\n - \ }\n },\n \"i18nRegions\": {\n \"methods\": {\n \"list\": - {\n \"parameters\": {\n \"hl\": {\n \"default\": - \"en_US\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"id\": \"youtube.i18nRegions.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"path\": \"youtube/v3/i18nRegions\",\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"insert\": {\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"description\": \"Inserts a new - resource into this collection.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"path\": - \"youtube/v3/channelSections\",\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.channelSections.insert\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively + \ \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n }\n },\n \"list\": {\n \"parameters\": - {\n \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Return the ChannelSections - owned by the authenticated user.\"\n },\n \"channelId\": - {\n \"description\": \"Return the ChannelSections owned by the - specified channel ID.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return content in specified - language\"\n }\n },\n \"id\": \"youtube.channelSections.list\",\n - \ \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\"\n },\n \"update\": {\n \"path\": - \"youtube/v3/channelSections\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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 + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n },\n \"tlang\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"tlang is the language code; machine translate the captions into this language.\"\n + \ },\n \"onBehalfOf\": {\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\",\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"tfmt\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Convert + the captions into this format. Supported options are sbv, srt, and vtt.\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n + \ \"required\": true,\n \"description\": \"The ID + of the caption track to download, required for One Platform.\",\n \"location\": + \"path\"\n }\n },\n \"flatPath\": \"youtube/v3/captions/{id}\"\n + \ },\n \"delete\": {\n \"path\": \"youtube/v3/captions\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n },\n \"onBehalfOf\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\"\n }\n },\n - \ \"id\": \"youtube.channelSections.update\",\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.channelSections.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"path\": \"youtube/v3/channelSections\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"description\": \"Deletes a resource.\"\n - \ }\n }\n },\n \"watermarks\": {\n \"methods\": {\n - \ \"unset\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"parameters\": {\n \"channelId\": {\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/captions\",\n \"id\": + \"youtube.captions.delete\",\n \"httpMethod\": \"DELETE\",\n \"description\": + \"Deletes a resource.\"\n },\n \"list\": {\n \"parameters\": + {\n \"onBehalfOf\": {\n \"description\": \"ID of the + Google+ Page for the channel that the request is on behalf of.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n + \ \"required\": true,\n \"repeated\": true\n },\n + \ \"id\": {\n \"description\": \"Returns the captions + with the given IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"repeated\": true\n + \ },\n \"videoId\": {\n \"required\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Returns the captions for the specified video.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -1268,206 +991,189 @@ interactions: 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.\"\n }\n },\n - \ \"id\": \"youtube.watermarks.unset\",\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n - \ \"path\": \"youtube/v3/watermarks/unset\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Allows removal of channel watermark.\"\n - \ },\n \"set\": {\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\"\n },\n \"description\": - \"Allows upload of watermark image and setting it for a channel.\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"id\": \"youtube.watermarks.set\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\"\n }\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"supportsMediaUpload\": true,\n - \ \"parameters\": {\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/watermarks/set\"\n }\n }\n - \ },\n \"liveChatMessages\": {\n \"methods\": {\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"description\": - \"Deletes a chat message.\",\n \"httpMethod\": \"DELETE\",\n \"id\": - \"youtube.liveChatMessages.delete\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/messages\",\n \"id\": - \"youtube.liveChatMessages.insert\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"request\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"description\": \"Inserts a - new resource into this collection.\",\n \"response\": {\n \"$ref\": - \"LiveChatMessage\"\n }\n },\n \"list\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"response\": - {\n \"$ref\": \"LiveChatMessageListResponse\"\n },\n \"parameters\": - {\n \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n - \ },\n \"liveChatId\": {\n \"description\": - \"The id of the live chat for which comments should be returned.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"maximum\": - \"2000\",\n \"minimum\": \"200\",\n \"location\": - \"query\",\n \"default\": \"500\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"hl\": {\n - \ \"description\": \"Specifies the localization language in which - the system messages should be returned.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"profileImageSize\": - {\n \"type\": \"integer\",\n \"minimum\": \"16\",\n - \ \"location\": \"query\",\n \"description\": \"Specifies - the size of the profile image that should be returned for each user.\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"720\"\n - \ },\n \"part\": {\n \"description\": \"The - *part* parameter specifies the liveChatComment resource parts that the API - response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"id\": - \"youtube.liveChatMessages.list\",\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n }\n }\n },\n \"comments\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"textFormat\": {\n \"description\": \"The requested - text format for the returned comments.\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"default\": \"html\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"type\": \"integer\",\n \"default\": \"20\",\n - \ \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"100\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more comment - resource properties that the API response will include.\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"parentId\": {\n \"type\": \"string\",\n - \ \"description\": \"Returns replies to the specified comment. - Note, currently YouTube features only one level of replies (ie replies to - top level comments). However replies to replies may be supported in the future.\",\n - \ \"location\": \"query\"\n },\n \"id\": + \ \"path\": \"youtube/v3/captions\",\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"id\": \"youtube.captions.list\",\n + \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n + \ },\n \"parameterOrder\": [\n \"part\",\n \"videoId\"\n + \ ]\n },\n \"update\": {\n \"response\": {\n + \ \"$ref\": \"Caption\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/captions\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Updates an existing resource.\",\n \"flatPath\": + \"youtube/v3/captions\",\n \"mediaUpload\": {\n \"accept\": + [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n + \ },\n \"simple\": {\n \"multipart\": + true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n + \ },\n \"maxSize\": \"104857600\"\n },\n \"supportsMediaUpload\": + true,\n \"httpMethod\": \"PUT\",\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": + \"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.\"\n },\n + \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"ID of the Google+ Page for the + channel that the request is on behalf of.\"\n },\n \"sync\": + {\n \"description\": \"Extra parameter to allow automatically + syncing the uploaded caption/transcript with the audio.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n }\n },\n \"id\": \"youtube.captions.update\",\n + \ \"request\": {\n \"$ref\": \"Caption\"\n }\n + \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": + {\n \"response\": {\n \"$ref\": \"MemberListResponse\"\n + \ },\n \"id\": \"youtube.members.list\",\n \"flatPath\": + \"youtube/v3/members\",\n \"httpMethod\": \"GET\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"mode\": + {\n \"enum\": [\n \"listMembersModeUnknown\",\n + \ \"updates\",\n \"all_current\"\n ],\n + \ \"description\": \"Parameter that specifies which channel members + to return.\",\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Return only members that joined + after the first call with this mode was made.\",\n \"Return + all current members, from newest to oldest.\"\n ],\n \"default\": + \"all_current\",\n \"type\": \"string\"\n },\n \"hasAccessToLevel\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comments with the given IDs for - One Platform.\",\n \"repeated\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"CommentListResponse\"\n },\n \"id\": - \"youtube.comments.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"update\": {\n \"scopes\": [\n + \ \"description\": \"Filter members in the results set to the + ones that have access to a level.\"\n },\n \"filterByMemberChannelId\": + {\n \"location\": \"query\",\n \"description\": + \"Comma separated list of channel IDs. Only data about members that are part + of this list will be included in the response.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"required\": + true,\n \"repeated\": true,\n \"description\": \"The + *part* parameter specifies the member resource parts that the API response + will include. Set the parameter value to snippet.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"default\": + \"5\",\n \"type\": \"integer\",\n \"maximum\": \"1000\",\n + \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n + \ \"location\": \"query\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"description\": \"Retrieves a list of members that + match the request criteria for a channel.\",\n \"path\": \"youtube/v3/members\"\n + \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": + {\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"description\": \"Deletes a chat moderator.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"path\": \"youtube/v3/comments\",\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"id\": \"youtube.comments.update\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n - \ }\n },\n \"httpMethod\": \"PUT\"\n },\n - \ \"setModerationStatus\": {\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"Modifies the moderation status of - the comments with the given IDs\",\n \"type\": \"string\"\n },\n - \ \"moderationStatus\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ]\n },\n \"banAuthor\": - {\n \"description\": \"If set to true the author of the comment - gets added to the ban list. This means all future comments of the author will - autmomatically be rejected. Only valid in combination with STATUS_REJECTED.\",\n - \ \"type\": \"boolean\",\n \"default\": \"false\",\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Sets the moderation status of one or more comments.\",\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\",\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ]\n },\n - \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"request\": {\n - \ \"$ref\": \"Comment\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\"\n }\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"id\": \"youtube.comments.insert\",\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/comments\",\n \"response\": - {\n \"$ref\": \"Comment\"\n }\n },\n \"markAsSpam\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"id\": \"youtube.comments.markAsSpam\",\n \"path\": - \"youtube/v3/comments/markAsSpam\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n + \ \"id\": \"youtube.liveChatModerators.delete\",\n \"flatPath\": + \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": \"DELETE\",\n + \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\"\n }\n }\n + \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"id\": + \"youtube.liveChatModerators.insert\",\n \"parameters\": {\n \"part\": + {\n \"description\": \"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.\",\n \"required\": true,\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true\n }\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n + \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/liveChat/moderators\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n }\n + \ },\n \"list\": {\n \"description\": \"Retrieves a + list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"parameters\": {\n \"pageToken\": {\n \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n }\n },\n - \ \"delete\": {\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": + \ \"description\": \"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.\"\n + \ },\n \"maxResults\": {\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"location\": \"query\",\n + \ \"type\": \"integer\",\n \"maximum\": \"50\",\n + \ \"minimum\": \"0\",\n \"format\": \"uint32\",\n + \ \"default\": \"5\"\n },\n \"part\": {\n + \ \"repeated\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"required\": true,\n \"description\": + \"The *part* parameter specifies the liveChatModerator resource parts that + the API response will include. Supported values are id and snippet.\"\n },\n + \ \"liveChatId\": {\n \"description\": \"The id of + the live chat for which moderators should be returned.\",\n \"required\": true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.comments.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"id\"\n ]\n }\n }\n },\n \"liveStreams\": - {\n \"methods\": {\n \"insert\": {\n \"response\": {\n - \ \"$ref\": \"LiveStream\"\n },\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \ }\n },\n \"id\": \"youtube.liveChatModerators.list\",\n + \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n + \ },\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": + \"GET\"\n }\n }\n },\n \"playlists\": {\n \"methods\": + {\n \"delete\": {\n \"id\": \"youtube.playlists.delete\",\n + \ \"flatPath\": \"youtube/v3/playlists\",\n \"path\": \"youtube/v3/playlists\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"httpMethod\": \"DELETE\",\n + \ \"description\": \"Deletes a resource.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ },\n \"list\": {\n \"path\": \"youtube/v3/playlists\",\n + \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameters\": + {\n \"hl\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Return content in specified language\"\n + \ },\n \"mine\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Return the playlists owned by the authenticated + user.\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"required\": true,\n \"location\": \"query\",\n + \ \"repeated\": true\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"maximum\": + \"50\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"format\": \"uint32\",\n \"default\": \"5\",\n + \ \"minimum\": \"0\",\n \"type\": \"integer\",\n + \ \"location\": \"query\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"description\": \"Return the playlists with the given IDs for + Stubby or Apiary.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -1476,15 +1182,8 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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, - content_details, and status.\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": + be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -1499,51 +1198,55 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"id\": \"youtube.liveStreams.insert\",\n + for each separate channel.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"channelId\": {\n \"description\": + \"Return the playlists owned by the specified channel ID.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"response\": + {\n \"$ref\": \"PlaylistListResponse\"\n },\n \"id\": + \"youtube.playlists.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"GET\"\n },\n \"update\": {\n \"response\": + {\n \"$ref\": \"Playlist\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n + \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n + \ \"path\": \"youtube/v3/playlists\",\n \"flatPath\": \"youtube/v3/playlists\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new stream for the authenticated user.\"\n },\n \"list\": - {\n \"path\": \"youtube/v3/liveStreams\",\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"format\": \"uint32\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"Return LiveStreams with the given - ids from Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"description\": \"This - parameter can only be used in a properly authorized request. *Note:* This - parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"repeated\": + true,\n \"description\": \"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.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"youtube.playlists.update\",\n \"description\": + \"Updates an existing resource.\"\n },\n \"insert\": {\n \"response\": + {\n \"$ref\": \"Playlist\"\n },\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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 @@ -1555,67 +1258,147 @@ interactions: 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.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"youtube.liveStreams.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + for each separate channel.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/playlists\",\n \"request\": + {\n \"$ref\": \"Playlist\"\n },\n \"id\": \"youtube.playlists.insert\",\n + \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"description\": \"Inserts a new resource into this + collection.\",\n \"flatPath\": \"youtube/v3/playlists\"\n }\n + \ }\n },\n \"liveChatBans\": {\n \"methods\": {\n \"delete\": + {\n \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Deletes a chat ban.\",\n + \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveChat/bans\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": + \"youtube.liveChatBans.delete\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n + \ },\n \"insert\": {\n \"path\": \"youtube/v3/liveChat/bans\",\n + \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/liveStreams\"\n },\n - \ \"update\": {\n \"description\": \"Updates an existing stream - for the authenticated user.\",\n \"httpMethod\": \"PUT\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"request\": + {\n \"$ref\": \"LiveChatBan\"\n },\n \"parameters\": + {\n \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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 + \ ],\n \"id\": \"youtube.liveChatBans.insert\"\n }\n + \ }\n },\n \"playlistItems\": {\n \"methods\": {\n \"list\": + {\n \"parameters\": {\n \"maxResults\": {\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"default\": \"5\",\n + \ \"maximum\": \"50\",\n \"location\": \"query\",\n + \ \"minimum\": \"0\"\n },\n \"id\": {\n + \ \"location\": \"query\",\n \"repeated\": true,\n + \ \"type\": \"string\"\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"Return + the playlist items associated with the given video ID.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"playlistId\": + {\n \"type\": \"string\",\n \"description\": \"Return + the playlist items within the given playlist.\",\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n + \ },\n \"path\": \"youtube/v3/playlistItems\",\n \"httpMethod\": + \"GET\",\n \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"id\": \"youtube.playlistItems.list\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"description\": \"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.\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*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 perform actions on behalf of the channel specified - in the parameter value, without having to provide authentication credentials - for each separate channel.\",\n \"type\": \"string\"\n }\n - \ },\n \"path\": \"youtube/v3/liveStreams\"\n },\n - \ \"delete\": {\n \"id\": \"youtube.liveStreams.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - an existing stream for the authenticated user.\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"id\": + 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.\"\n }\n },\n \"flatPath\": + \"youtube/v3/playlistItems\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n + \ },\n \"id\": \"youtube.playlistItems.insert\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n }\n + \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"path\": + \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"id\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Deletes + a resource.\",\n \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.playlistItems.delete\"\n + \ },\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"id\": \"youtube.playlistItems.update\",\n \"httpMethod\": + \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"flatPath\": + \"youtube/v3/playlistItems\",\n \"description\": \"Updates an existing + resource.\",\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n + \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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. @@ -1624,35 +1407,56 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ }\n }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"transition\": {\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"This parameter can only be used in a properly authorized request. *Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* + owner.\"\n },\n \"part\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true,\n \"repeated\": true\n }\n },\n \"request\": + {\n \"$ref\": \"PlaylistItem\"\n }\n }\n }\n + \ },\n \"subscriptions\": {\n \"methods\": {\n \"delete\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Deletes a resource.\",\n \"httpMethod\": + \"DELETE\",\n \"path\": \"youtube/v3/subscriptions\",\n \"flatPath\": + \"youtube/v3/subscriptions\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"id\": \"youtube.subscriptions.delete\"\n + \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/subscriptions\",\n + \ \"parameters\": {\n \"channelId\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Return the subscriptions of the given channel owner.\"\n },\n + \ \"id\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"description\": + \"Return the subscriptions with the given IDs for Stubby or Apiary.\"\n },\n + \ \"order\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"Sort by relevance.\",\n \"Sort by order of + activity.\",\n \"Sort alphabetically.\"\n ],\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n + \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n + \ ],\n \"default\": \"relevance\",\n \"description\": + \"The order of the returned subscriptions\"\n },\n \"mine\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Flag for returning the subscriptions of the + authenticated user.\"\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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 @@ -1664,10 +1468,30 @@ interactions: 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.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"Broadcast to transition.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + for each separate channel.\",\n \"location\": \"query\"\n },\n + \ \"mySubscribers\": {\n \"description\": \"Return + the subscribers of the given channel owner.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"myRecentSubscribers\": + {\n \"type\": \"boolean\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": + true,\n \"repeated\": true,\n \"type\": \"string\"\n + \ },\n \"maxResults\": {\n \"location\": + \"query\",\n \"format\": \"uint32\",\n \"maximum\": + \"50\",\n \"default\": \"5\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"type\": \"integer\",\n + \ \"minimum\": \"0\"\n },\n \"forChannelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return the subscriptions to the subset of + these channels that the authenticated user is subscribed to.\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -1677,49 +1501,31 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"broadcastStatus\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"enum\": [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Start - testing the broadcast. YouTube transmits video to the broadcast's monitor - stream. Note that you can only transition a broadcast to the testing state - if its contentDetails.monitorStream.enableMonitorStream property is set to - true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The - broadcast is over. YouTube stops transmitting video.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The - status to which the broadcast is going to transition.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\"\n }\n },\n - \ \"description\": \"Transition a broadcast to a given status.\"\n - \ },\n \"insert\": {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"id\": \"youtube.subscriptions.list\",\n \"response\": + {\n \"$ref\": \"SubscriptionListResponse\"\n },\n \"path\": + \"youtube/v3/subscriptions\"\n },\n \"insert\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/subscriptions\",\n + \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.insert\",\n + \ \"response\": {\n \"$ref\": \"Subscription\"\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"request\": + {\n \"$ref\": \"Subscription\"\n }\n }\n }\n + \ },\n \"channelSections\": {\n \"methods\": {\n \"delete\": + {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n + \ \"description\": \"*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. @@ -1728,47 +1534,24 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.liveBroadcasts.insert\"\n - \ },\n \"update\": {\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + owner.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"youtube.channelSections.delete\",\n + \ \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"description\": + \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\"\n },\n + \ \"insert\": {\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"response\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"id\": + \"youtube.channelSections.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Inserts a new resource into this + collection.\",\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/channelSections\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube @@ -1778,63 +1561,36 @@ interactions: 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.\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"description\": \"Updates an existing broadcast for - the authenticated user.\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"id\": \"youtube.liveBroadcasts.update\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\"\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"description\": \"Retrieve the list of broadcasts - associated with the given channel.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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, status - and statistics.\",\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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 + owner.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"maximum\": \"50\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Return - broadcasts with the given ids from Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"broadcastStatus\": - {\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return current - live broadcasts.\",\n \"Return broadcasts that have not yet - started.\",\n \"Return broadcasts that have already ended.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*Note:* + for each separate channel.\",\n \"type\": \"string\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"type\": + \"string\",\n \"required\": true,\n \"description\": + \"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.\",\n \"location\": + \"query\"\n }\n }\n },\n \"update\": {\n + \ \"description\": \"Updates an existing resource.\",\n \"response\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"PUT\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*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 @@ -1843,27 +1599,429 @@ interactions: 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.\"\n },\n \"broadcastType\": {\n - \ \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"default\": \"event\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Return - only broadcasts with the selected type.\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": + YouTube content owner.\"\n },\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n },\n + \ \"id\": \"youtube.channelSections.update\",\n \"request\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"path\": + \"youtube/v3/channelSections\",\n \"flatPath\": \"youtube/v3/channelSections\"\n + \ },\n \"list\": {\n \"response\": {\n \"$ref\": + \"ChannelSectionListResponse\"\n },\n \"id\": \"youtube.channelSections.list\",\n + \ \"path\": \"youtube/v3/channelSections\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": + {\n \"mine\": {\n \"description\": \"Return the ChannelSections + owned by the authenticated user.\",\n \"type\": \"boolean\",\n + \ \"location\": \"query\"\n },\n \"hl\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return content in specified language\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"repeated\": true,\n \"description\": \"Return + the ChannelSections with the given IDs for Stubby or Apiary.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"description\": \"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.\",\n \"type\": + \"string\",\n \"repeated\": true\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return the ChannelSections owned by the specified + channel ID.\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/channelSections\"\n }\n }\n + \ },\n \"commentThreads\": {\n \"methods\": {\n \"insert\": + {\n \"response\": {\n \"$ref\": \"CommentThread\"\n },\n + \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"required\": true,\n \"repeated\": true,\n \"location\": + \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/commentThreads\",\n \"id\": \"youtube.commentThreads.insert\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"request\": {\n \"$ref\": \"CommentThread\"\n }\n + \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": + \"youtube.commentThreads.list\",\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"maxResults\": {\n \"type\": \"integer\",\n \"maximum\": + \"100\",\n \"location\": \"query\",\n \"default\": + \"20\",\n \"minimum\": \"1\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"format\": \"uint32\"\n + \ },\n \"part\": {\n \"location\": \"query\",\n + \ \"required\": true,\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies a comma-separated list of one or more commentThread + resource properties that the API response will include.\",\n \"repeated\": + true\n },\n \"pageToken\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"id\": \"youtube.liveBroadcasts.list\"\n },\n \"bind\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \"string\",\n \"location\": \"query\"\n },\n \"order\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"default\": \"time\",\n \"enum\": [\n \"orderUnspecified\",\n + \ \"time\",\n \"relevance\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Order + by time.\",\n \"Order by relevance.\"\n ]\n },\n + \ \"textFormat\": {\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ],\n + \ \"description\": \"The requested text format for the returned + comments.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"default\": \"html\",\n \"enumDescriptions\": + [\n \"\",\n \"Returns the comments in HTML format. + This is the default value.\",\n \"Returns the comments in plain + text format.\"\n ]\n },\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Returns the comment threads with the given IDs for Stubby or Apiary.\",\n + \ \"repeated\": true\n },\n \"searchTerms\": + {\n \"location\": \"query\",\n \"description\": + \"Limits the returned comment threads to those matching the specified key + words. Not compatible with the 'id' filter.\",\n \"type\": \"string\"\n + \ },\n \"channelId\": {\n \"location\": + \"query\",\n \"description\": \"Returns the comment threads for + all the channel comments (ie does not include comments left on videos).\",\n + \ \"type\": \"string\"\n },\n \"moderationStatus\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"default\": \"published\",\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"enum\": + [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n + \ \"rejected\"\n ],\n \"description\": + \"Limits the returned comment threads to those with the specified moderation + status. Not compatible with the 'id' filter. Valid values: published, heldForReview, + likelySpam.\"\n },\n \"allThreadsRelatedToChannelId\": + {\n \"description\": \"Returns the comment threads of all videos + of the channel and the channel comments as well.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"videoId\": + {\n \"location\": \"query\",\n \"description\": + \"Returns the comment threads of the specified video.\",\n \"type\": + \"string\"\n }\n },\n \"response\": {\n \"$ref\": + \"CommentThreadListResponse\"\n },\n \"path\": \"youtube/v3/commentThreads\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": + {\n \"update\": {\n \"parameters\": {\n \"externalChannelId\": + {\n \"location\": \"query\",\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"required\": + true,\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"description\": \"The + *part* parameter specifies the thirdPartyLink resource parts that the API + request and response will include. Supported values are linkingToken, status, + and snippet.\"\n }\n },\n \"response\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"id\": \"youtube.thirdPartyLinks.update\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": + \"PUT\",\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n + \ }\n },\n \"list\": {\n \"response\": {\n + \ \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"externalChannelId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Channel ID to which changes should be applied, + for delegation.\"\n },\n \"type\": {\n \"enum\": + [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel + with a store on a merchandising platform in order to enable retail commerce + capabilities for that channel on YouTube.\"\n ],\n \"location\": + \"query\",\n \"description\": \"Get a third party link of the + given type.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"required\": true,\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API response will include. Supported values are linkingToken, status, and + snippet.\"\n },\n \"linkingToken\": {\n \"type\": + \"string\",\n \"description\": \"Get a third party link with + the given linking token.\",\n \"location\": \"query\"\n }\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.thirdPartyLinks.list\",\n + \ \"path\": \"youtube/v3/thirdPartyLinks\"\n },\n \"insert\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": + {\n \"externalChannelId\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Channel + ID to which changes should be applied, for delegation.\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"The *part* parameter specifies the thirdPartyLink + resource parts that the API request and response will include. Supported values + are linkingToken, status, and snippet.\"\n }\n },\n \"response\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\",\n \"request\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"id\": \"youtube.thirdPartyLinks.insert\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"httpMethod\": + \"POST\"\n },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n + \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"path\": + \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"type\": + {\n \"enumDescriptions\": [\n \"\",\n \"A + link that is connecting (or about to connect) a channel with a store on a + merchandising platform in order to enable retail commerce capabilities for + that channel on YouTube.\"\n ],\n \"description\": + \"Type of the link to be deleted.\",\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true\n },\n \"externalChannelId\": {\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"description\": \"Do not use. Required for compatibility.\",\n + \ \"type\": \"string\"\n },\n \"linkingToken\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Delete + the partner links with the given linking token.\"\n }\n },\n + \ \"id\": \"youtube.thirdPartyLinks.delete\",\n \"description\": + \"Deletes a resource.\",\n \"parameterOrder\": [\n \"linkingToken\",\n + \ \"type\"\n ]\n }\n }\n },\n \"superChatEvents\": + {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n + \ \"path\": \"youtube/v3/superChatEvents\",\n \"id\": \"youtube.superChatEvents.list\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"parameters\": {\n \"hl\": {\n \"location\": + \"query\",\n \"description\": \"Return rendered funding amounts + in specified language.\",\n \"type\": \"string\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"required\": + true,\n \"description\": \"The *part* parameter specifies the + superChatEvent resource parts that the API response will include. This parameter + is currently not supported.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"minimum\": + \"1\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"location\": \"query\",\n \"type\": \"integer\",\n + \ \"maximum\": \"50\",\n \"default\": \"5\",\n \"format\": + \"uint32\"\n },\n \"pageToken\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n }\n + \ }\n }\n }\n },\n \"youtube\": {\n \"resources\": + {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": + {\n \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"description\": \"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.\"\n }\n },\n \"request\": + {\n \"$ref\": \"CommentThread\"\n },\n \"response\": + {\n \"$ref\": \"CommentThread\"\n },\n \"path\": + \"youtube/v3/commentThreads\",\n \"parameterOrder\": [],\n \"httpMethod\": + \"PUT\",\n \"description\": \"Updates an existing resource.\",\n + \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"id\": + \"youtube.youtube.v3.updateCommentThreads\"\n }\n }\n + \ }\n }\n },\n \"liveChatMessages\": {\n \"methods\": + {\n \"insert\": {\n \"request\": {\n \"$ref\": + \"LiveChatMessage\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.bind\",\n \"path\": - \"youtube/v3/liveBroadcasts/bind\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"This parameter can only be used in a properly + \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameters\": + {\n \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"location\": \"query\",\n + \ \"required\": true\n }\n },\n \"path\": + \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.insert\",\n + \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n + \ ]\n },\n \"list\": {\n \"response\": {\n + \ \"$ref\": \"LiveChatMessageListResponse\"\n },\n \"path\": + \"youtube/v3/liveChat/messages\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"parameters\": {\n \"pageToken\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true,\n \"description\": \"The *part* parameter specifies the + liveChatComment resource parts that the API response will include. Supported + values are id and snippet.\"\n },\n \"hl\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Specifies the localization language in which the system messages should + be returned.\"\n },\n \"maxResults\": {\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"type\": \"integer\",\n + \ \"maximum\": \"2000\",\n \"location\": \"query\",\n + \ \"default\": \"500\",\n \"format\": \"uint32\",\n + \ \"minimum\": \"200\"\n },\n \"liveChatId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"The id of the live chat for which comments + should be returned.\",\n \"required\": true\n },\n + \ \"profileImageSize\": {\n \"type\": \"integer\",\n + \ \"maximum\": \"720\",\n \"format\": \"uint32\",\n + \ \"location\": \"query\",\n \"minimum\": \"16\",\n + \ \"description\": \"Specifies the size of the profile image that + should be returned for each user.\"\n }\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": + \"GET\",\n \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n + \ ],\n \"id\": \"youtube.liveChatMessages.list\",\n \"flatPath\": + \"youtube/v3/liveChat/messages\"\n },\n \"delete\": {\n \"parameterOrder\": + [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"description\": \"Deletes a chat message.\",\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.liveChatMessages.delete\",\n \"httpMethod\": + \"DELETE\",\n \"path\": \"youtube/v3/liveChat/messages\"\n }\n + \ }\n },\n \"activities\": {\n \"methods\": {\n \"list\": + {\n \"flatPath\": \"youtube/v3/activities\",\n \"path\": + \"youtube/v3/activities\",\n \"description\": \"Retrieves a list + of resources, possibly filtered.\",\n \"id\": \"youtube.activities.list\",\n + \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": + \"ActivityListResponse\"\n },\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"parameters\": {\n \"publishedBefore\": + {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n + \ \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"mine\": {\n \"location\": \"query\",\n + \ \"type\": \"boolean\"\n },\n \"home\": + {\n \"type\": \"boolean\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"location\": \"query\",\n + \ \"required\": true,\n \"description\": \"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.\"\n },\n \"regionCode\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"type\": + \"integer\",\n \"default\": \"5\",\n \"format\": + \"uint32\",\n \"minimum\": \"0\",\n \"maximum\": + \"50\",\n \"location\": \"query\"\n },\n \"publishedAfter\": + {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n + \ \"type\": \"string\"\n }\n }\n }\n + \ }\n },\n \"thumbnails\": {\n \"methods\": {\n \"set\": + {\n \"supportsMediaUpload\": true,\n \"parameters\": {\n + \ \"videoId\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"youtube.thumbnails.set\",\n \"httpMethod\": + \"POST\",\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n \"response\": + {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"parameterOrder\": + [\n \"videoId\"\n ],\n \"path\": \"youtube/v3/thumbnails/set\",\n + \ \"description\": \"As this is not an insert in a strict sense (it + supports uploading/setting of a thumbnail for multiple videos, which doesn't + result in creation of a single resource), I use a custom verb here.\",\n \"mediaUpload\": + {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ],\n \"maxSize\": + \"2097152\",\n \"protocols\": {\n \"resumable\": {\n + \ \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n + \ },\n \"simple\": {\n \"multipart\": + true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n }\n + \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ }\n }\n },\n \"videoCategories\": {\n \"methods\": + {\n \"list\": {\n \"id\": \"youtube.videoCategories.list\",\n + \ \"flatPath\": \"youtube/v3/videoCategories\",\n \"path\": + \"youtube/v3/videoCategories\",\n \"httpMethod\": \"GET\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"hl\": + {\n \"default\": \"en-US\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"regionCode\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"description\": \"The *part* parameter specifies the videoCategory + resource properties that the API response will include. Set the parameter + value to snippet.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"repeated\": true\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"Returns + the video categories with the given IDs for Stubby or Apiary.\",\n \"location\": + \"query\",\n \"repeated\": true\n }\n },\n + \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n + \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"reportAbuse\": + {\n \"parameterOrder\": [],\n \"httpMethod\": \"POST\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.videos.reportAbuse\",\n \"path\": + \"youtube/v3/videos/reportAbuse\",\n \"description\": \"Report abuse + for a video.\",\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n + \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n }\n + \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"description\": \"Inserts a new resource into this + collection.\",\n \"supportsMediaUpload\": true,\n \"httpMethod\": + \"POST\",\n \"path\": \"youtube/v3/videos\",\n \"request\": + {\n \"$ref\": \"Video\"\n },\n \"mediaUpload\": + {\n \"protocols\": {\n \"simple\": {\n \"multipart\": + true,\n \"path\": \"/upload/youtube/v3/videos\"\n },\n + \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n + \ \"multipart\": true\n }\n },\n \"accept\": + [\n \"video/*\",\n \"application/octet-stream\"\n + \ ],\n \"maxSize\": \"274877906944\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"Video\"\n },\n + \ \"id\": \"youtube.videos.insert\",\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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 @@ -1877,19 +2035,12 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Broadcast to bind to the stream\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"streamId\": {\n \"description\": - \"Stream to bind, if not set unbind the current one.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + for each separate channel.\"\n },\n \"stabilize\": {\n + \ \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Should stabilize be applied to the upload.\"\n + \ },\n \"autoLevels\": {\n \"location\": + \"query\",\n \"description\": \"Should auto-levels be applied + to the upload.\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -1899,74 +2050,118 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"httpMethod\": \"POST\",\n \"description\": - \"Bind a broadcast to a stream.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\"\n - \ },\n \"delete\": {\n \"description\": \"Delete a given - broadcast.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Broadcast to delete.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"insertCuepoint\": {\n \"request\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"notifySubscribers\": {\n \"description\": + \"Notify the channel subscribers about the new video. As default, the notification + is enabled.\",\n \"default\": \"true\",\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"required\": true,\n \"description\": \"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.\",\n + \ \"type\": \"string\"\n }\n }\n },\n + \ \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [],\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \ ],\n \"path\": \"youtube/v3/videos\",\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"description\": + \"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.\",\n + \ \"repeated\": true,\n \"required\": true,\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n }\n + \ },\n \"response\": {\n \"$ref\": \"Video\"\n + \ },\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.videos.update\",\n + \ \"description\": \"Updates an existing resource.\",\n \"flatPath\": + \"youtube/v3/videos\",\n \"request\": {\n \"$ref\": \"Video\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ]\n + \ },\n \"rate\": {\n \"parameterOrder\": [\n \"id\",\n + \ \"rating\"\n ],\n \"httpMethod\": \"POST\",\n + \ \"flatPath\": \"youtube/v3/videos/rate\",\n \"description\": + \"Adds a like or dislike rating to a video or removes a rating from a video.\",\n + \ \"id\": \"youtube.videos.rate\",\n \"path\": \"youtube/v3/videos/rate\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n },\n \"rating\": {\n \"location\": + \"query\",\n \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"The + entity is liked.\",\n \"The entity is disliked.\"\n ],\n + \ \"required\": true\n }\n }\n },\n + \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"VideoListResponse\"\n + \ },\n \"id\": \"youtube.videos.list\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": + \"youtube/v3/videos\",\n \"path\": \"youtube/v3/videos\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"locale\": {\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"maxHeight\": {\n \"minimum\": + \"72\",\n \"format\": \"int32\",\n \"maximum\": + \"8192\",\n \"type\": \"integer\",\n \"location\": + \"query\"\n },\n \"hl\": {\n \"description\": + \"Stands for \\\"host language\\\". Specifies the localization language of + the metadata to be filled into snippet.localized. The field is filled with + the default metadata if there is no localization in the specified language. + The parameter value must be a language code included in the list returned + by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"videoCategoryId\": {\n \"description\": + \"Use chart that is specific to the specified video category\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"default\": + \"0\"\n },\n \"maxWidth\": {\n \"minimum\": + \"72\",\n \"location\": \"query\",\n \"type\": \"integer\",\n + \ \"maximum\": \"8192\",\n \"format\": \"int32\",\n + \ \"description\": \"Return the player with maximum height specified + in\"\n },\n \"regionCode\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Broadcast to insert ads to, - or equivalently `external_video_id` for internal use.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"Use a chart that is specific to the specified region\"\n },\n + \ \"myRating\": {\n \"description\": \"Return videos + liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n + \ \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ]\n },\n \"id\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"description\": \"Return videos with the given ids.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"*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 @@ -1975,240 +2170,103 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"description\": \"Insert cuepoints in a broadcast\"\n }\n - \ }\n },\n \"liveChatBans\": {\n \"methods\": {\n \"insert\": - {\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"request\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatBan\"\n - \ }\n },\n \"delete\": {\n \"id\": \"youtube.liveChatBans.delete\",\n - \ \"description\": \"Deletes a chat ban.\",\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\"\n }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"delete\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"Do not use. Required for compatibility.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"type\": - {\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"description\": - \"Type of the link to be deleted.\",\n \"location\": \"query\"\n - \ },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel ID to which changes - should be applied, for delegation.\",\n \"location\": \"query\"\n - \ },\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Delete - the partner links with the given linking token.\",\n \"required\": - true\n }\n },\n \"id\": \"youtube.thirdPartyLinks.delete\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"httpMethod\": - \"DELETE\"\n },\n \"update\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\"\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n }\n },\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n }\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"description\": \"Inserts a new - resource into this collection.\",\n \"id\": \"youtube.thirdPartyLinks.insert\"\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API response will include. Supported values are linkingToken, - status, and snippet.\",\n \"repeated\": true,\n \"required\": - true\n },\n \"type\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"description\": - \"Get a third party link of the given type.\",\n \"location\": - \"query\"\n },\n \"linkingToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Get a third party link with the given linking token.\"\n },\n - \ \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.thirdPartyLinks.list\"\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/videoCategories\",\n \"id\": \"youtube.videoCategories.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/videoCategories\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"regionCode\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Returns the video categories with - the given IDs for Stubby or Apiary.\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"default\": \"en-US\",\n - \ \"location\": \"query\"\n }\n }\n }\n - \ }\n },\n \"membershipsLevels\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/membershipsLevels\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"description\": \"Retrieves - a list of all pricing levels offered by a creator to the fans.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"id\": \"youtube.membershipsLevels.list\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"path\": \"youtube/v3/i18nLanguages\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.i18nLanguages.list\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the i18nLanguage resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n },\n \"hl\": {\n \"default\": \"en_US\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n - \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n - \ \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"id\": \"youtube.abuseReports.insert\",\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/abuseReports\",\n \"request\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/abuseReports\"\n }\n }\n - \ },\n \"videos\": {\n \"methods\": {\n \"reportAbuse\": - {\n \"id\": \"youtube.videos.reportAbuse\",\n \"parameterOrder\": - [],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Report abuse for a video.\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n - \ \"path\": \"youtube/v3/videos/reportAbuse\"\n },\n \"getRating\": - {\n \"description\": \"Retrieves the ratings that the authorized - user gave to a list of specified videos.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + be linked to the specified YouTube content owner.\"\n },\n \"maxResults\": + {\n \"minimum\": \"1\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"description\": \"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.\",\n \"default\": + \"5\",\n \"maximum\": \"50\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"description\": \"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.\",\n + \ \"required\": true,\n \"type\": \"string\"\n },\n + \ \"chart\": {\n \"enum\": [\n \"chartUnspecified\",\n + \ \"mostPopular\"\n ],\n \"description\": + \"Return the videos that are in the specified chart.\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Return the most popular videos + for the specified content region and video category.\"\n ]\n + \ }\n }\n },\n \"delete\": {\n \"path\": + \"youtube/v3/videos\",\n \"flatPath\": \"youtube/v3/videos\",\n \"httpMethod\": + \"DELETE\",\n \"id\": \"youtube.videos.delete\",\n \"description\": + \"Deletes a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.videos.getRating\",\n - \ \"path\": \"youtube/v3/videos/getRating\",\n \"response\": - {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"flatPath\": - \"youtube/v3/videos/getRating\",\n \"parameters\": {\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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 + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"insert\": {\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/videos\",\n \"parameters\": {\n \"stabilize\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Should stabilize be applied to the upload.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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 + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n }\n },\n \"parameterOrder\": [\n \"id\"\n + \ ]\n },\n \"getRating\": {\n \"httpMethod\": + \"GET\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"This parameter can only be used in a properly + owner.\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true,\n \"type\": \"string\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Retrieves the ratings that the authorized user + gave to a list of specified videos.\",\n \"flatPath\": \"youtube/v3/videos/getRating\",\n + \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n + \ },\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"path\": \"youtube/v3/videos/getRating\",\n \"id\": \"youtube.videos.getRating\"\n + \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": + {\n \"list\": {\n \"path\": \"youtube/v3/membershipsLevels\",\n + \ \"description\": \"Retrieves a list of all pricing levels offered + by a creator to the fans.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n + \ },\n \"id\": \"youtube.membershipsLevels.list\",\n \"httpMethod\": + \"GET\",\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"parameters\": {\n \"part\": {\n \"description\": + \"The *part* parameter specifies the membershipsLevel resource parts that + the API response will include. Supported values are id and snippet.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true\n }\n }\n + \ }\n }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": + {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"path\": + \"youtube/v3/videoAbuseReportReasons\",\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the videoCategory resource parts that the + API response will include. Supported values are id and snippet.\"\n },\n + \ \"hl\": {\n \"location\": \"query\",\n \"default\": + \"en-US\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": + \"youtube/v3/videoAbuseReportReasons\"\n }\n }\n },\n \"liveStreams\": + {\n \"methods\": {\n \"insert\": {\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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 @@ -2222,70 +2280,83 @@ interactions: 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.\"\n },\n \"notifySubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\",\n \"default\": - \"true\"\n },\n \"autoLevels\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Should auto-levels be applied to the upload.\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"id\": \"youtube.videos.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"274877906944\",\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": - true\n },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/videos\"\n }\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"update\": {\n \"request\": {\n - \ \"$ref\": \"Video\"\n },\n \"response\": {\n - \ \"$ref\": \"Video\"\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended + for each separate channel.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n + provide authentication credentials for each individual channel. The CMS account + that the user authenticates with must be linked to the specified YouTube content + owner.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"description\": \"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, content_details, and status.\",\n + \ \"repeated\": true,\n \"location\": \"query\",\n \ \"required\": true\n }\n },\n \"path\": - \"youtube/v3/videos\",\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.videos.update\"\n },\n \"list\": - {\n \"flatPath\": \"youtube/v3/videos\",\n \"response\": - {\n \"$ref\": \"VideoListResponse\"\n },\n \"parameters\": - {\n \"maxHeight\": {\n \"minimum\": \"72\",\n \"location\": - \"query\",\n \"maximum\": \"8192\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively + \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"id\": \"youtube.liveStreams.insert\",\n \"description\": + \"Inserts a new stream for the authenticated user.\",\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"request\": {\n \"$ref\": + \"LiveStream\"\n },\n \"httpMethod\": \"POST\",\n \"response\": + {\n \"$ref\": \"LiveStream\"\n }\n },\n \"update\": + {\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"request\": + {\n \"$ref\": \"LiveStream\"\n },\n \"description\": + \"Updates an existing stream for the authenticated user.\",\n \"path\": + \"youtube/v3/liveStreams\",\n \"response\": {\n \"$ref\": + \"LiveStream\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"required\": true,\n \"repeated\": + true,\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n + \ },\n \"id\": \"youtube.liveStreams.update\"\n },\n + \ \"delete\": {\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"description\": \"Deletes an existing stream for + the authenticated user.\",\n \"parameters\": {\n \"id\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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. @@ -2294,90 +2365,50 @@ interactions: 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.\"\n },\n \"videoCategoryId\": {\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"default\": - \"0\",\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Return - videos with the given ids.\",\n \"location\": \"query\"\n },\n - \ \"chart\": {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Return - the videos that are in the specified chart.\",\n \"enum\": [\n - \ \"chartUnspecified\",\n \"mostPopular\"\n ]\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + owner.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.delete\"\n + \ },\n \"list\": {\n \"description\": \"Retrieve the + list of streams associated with the given channel. --\",\n \"httpMethod\": + \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": + \"youtube.liveStreams.list\",\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"parameters\": {\n \"pageToken\": {\n \"description\": \"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.\"\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"description\": - \"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.\",\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"minimum\": \"1\",\n - \ \"format\": \"uint32\"\n },\n \"locale\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"regionCode\": {\n \"description\": - \"Use a chart that is specific to the specified region\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxWidth\": - {\n \"type\": \"integer\",\n \"format\": \"int32\",\n - \ \"description\": \"Return the player with maximum height specified - in\",\n \"maximum\": \"8192\",\n \"location\": \"query\",\n - \ \"minimum\": \"72\"\n },\n \"myRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Return - videos liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ]\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ },\n \"hl\": {\n \"description\": \"Stands - for \\\"host language\\\". Specifies the localization language of the metadata - to be filled into snippet.localized. The field is filled with the default - metadata if there is no localization in the specified language. The parameter - value must be a language code included in the list returned by the i18nLanguages.list - method (e.g. en_US, es_MX).\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.videos.list\",\n - \ \"path\": \"youtube/v3/videos\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n },\n \"rate\": {\n - \ \"flatPath\": \"youtube/v3/videos/rate\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.rate\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"rating\": - {\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ]\n - \ }\n },\n \"path\": \"youtube/v3/videos/rate\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Adds a like - or dislike rating to a video or removes a rating from a video.\"\n },\n - \ \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.videos.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/videos\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n + properties identify other pages that could be retrieved.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\",\n \"repeated\": + true\n },\n \"maxResults\": {\n \"maximum\": + \"50\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"default\": \"5\",\n \"type\": \"integer\",\n + \ \"location\": \"query\",\n \"format\": \"uint32\",\n + \ \"minimum\": \"0\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"*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 @@ -2385,1457 +2416,913 @@ interactions: This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Deletes a resource.\",\n - \ \"path\": \"youtube/v3/videos\"\n }\n }\n },\n \"liveChatModerators\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the liveChatModerator resource parts that - the API response will include. Supported values are id and snippet.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"The id of the live chat for which moderators - should be returned.\",\n \"location\": \"query\"\n }\n - \ },\n \"id\": \"youtube.liveChatModerators.list\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ]\n },\n - \ \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.liveChatModerators.delete\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"description\": \"Deletes - a chat moderator.\",\n \"parameters\": {\n \"id\": {\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n }\n },\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"version\": \"v3\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": - {\n \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n }\n }\n }\n },\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"kind\": \"discovery#restDescription\",\n \"parameters\": {\n \"quotaUser\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n - \ },\n \"callback\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"JSONP\"\n },\n \"upload_protocol\": - {\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"$.xgafv\": - {\n \"enum\": [\n \"1\",\n \"2\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"v1 - error format\",\n \"v2 error format\"\n ],\n \"description\": - \"V1 error format.\"\n },\n \"uploadType\": {\n \"location\": \"query\",\n - \ \"description\": \"Legacy upload protocol for media (e.g. \\\"media\\\", - \\\"multipart\\\").\",\n \"type\": \"string\"\n },\n \"key\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n - \ },\n \"access_token\": {\n \"type\": \"string\",\n \"description\": - \"OAuth access token.\",\n \"location\": \"query\"\n },\n \"alt\": - {\n \"type\": \"string\",\n \"enum\": [\n \"json\",\n \"media\",\n - \ \"proto\"\n ],\n \"description\": \"Data format for response.\",\n - \ \"default\": \"json\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ]\n },\n \"prettyPrint\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n \"default\": - \"true\",\n \"description\": \"Returns response with indentations and - line breaks.\"\n },\n \"fields\": {\n \"type\": \"string\",\n \"description\": - \"Selector specifying which fields to include in a partial response.\",\n - \ \"location\": \"query\"\n },\n \"oauth_token\": {\n \"location\": - \"query\",\n \"description\": \"OAuth 2.0 token for the current user.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": \"The YouTube - Data API v3 is an API that provides access to YouTube data, such as videos, - playlists, and channels.\",\n \"title\": \"YouTube Data API v3\",\n \"protocol\": - \"rest\",\n \"ownerName\": \"Google\",\n \"schemas\": {\n \"InvideoPosition\": - {\n \"properties\": {\n \"type\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\"\n ],\n \"description\": - \"Defines the position type.\",\n \"enum\": [\n \"corner\"\n - \ ]\n },\n \"cornerPosition\": {\n \"enumDescriptions\": + provide authentication credentials for each individual channel. The CMS account + that the user authenticates with must be linked to the specified YouTube content + owner.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"mine\": {\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"Return + LiveStreams with the given ids from Stubby or Apiary.\",\n \"repeated\": + true,\n \"location\": \"query\"\n }\n }\n + \ }\n }\n }\n },\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n + \ \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n + \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n + \ },\n \"canonicalName\": \"YouTube\",\n \"batchPath\": \"batch\",\n \"revision\": + \"20230308\",\n \"id\": \"youtube:v3\",\n \"ownerDomain\": \"google.com\",\n + \ \"description\": \"The YouTube Data API v3 is an API that provides access + to YouTube data, such as videos, playlists, and channels.\",\n \"servicePath\": + \"\",\n \"protocol\": \"rest\",\n \"discoveryVersion\": \"v1\",\n \"basePath\": + \"\",\n \"ownerName\": \"Google\",\n \"schemas\": {\n \"ActivityContentDetailsPlaylistItem\": + {\n \"properties\": {\n \"playlistItemId\": {\n \"type\": + \"string\",\n \"description\": \"ID of the item within the playlist.\"\n + \ },\n \"playlistId\": {\n \"type\": \"string\",\n \"description\": + \"The value that YouTube uses to uniquely identify the playlist.\"\n },\n + \ \"resourceId\": {\n \"description\": \"The resourceId object + contains information about the resource that was added to the playlist.\",\n + \ \"$ref\": \"ResourceId\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": + \"Information about a new playlist item.\"\n },\n \"LocalizedString\": + {\n \"type\": \"object\",\n \"id\": \"LocalizedString\",\n \"properties\": + {\n \"value\": {\n \"type\": \"string\"\n },\n \"language\": + {\n \"type\": \"string\"\n }\n }\n },\n \"LiveBroadcastSnippet\": + {\n \"description\": \"Basic broadcast information.\",\n \"properties\": + {\n \"title\": {\n \"description\": \"The broadcast's title. + Note that the broadcast represents exactly one YouTube video. You can set + this field by modifying the broadcast resource or by setting the title field + of the corresponding video resource.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"type\": \"string\"\n },\n + \ \"liveChatId\": {\n \"description\": \"The id of the live + chat for this broadcast.\",\n \"type\": \"string\"\n },\n + \ \"actualStartTime\": {\n \"description\": \"The date and + time that the broadcast actually started. This information is only available + once the broadcast's state is live.\",\n \"type\": \"string\",\n + \ \"format\": \"date-time\"\n },\n \"publishedAt\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time that the broadcast was added + to YouTube's live broadcast schedule.\"\n },\n \"thumbnails\": + {\n \"description\": \"A map of thumbnail images associated with + the broadcast. For each nested object in this object, the key is the name + of the thumbnail image, and the value is an object that contains other information + about the thumbnail.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n + \ \"scheduledEndTime\": {\n \"description\": \"The date and + time that the broadcast is scheduled to end.\",\n \"type\": \"string\",\n + \ \"format\": \"date-time\"\n },\n \"channelId\": {\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel that is publishing the broadcast.\",\n \"type\": \"string\"\n + \ },\n \"scheduledStartTime\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the broadcast is scheduled to start.\"\n },\n + \ \"isDefaultBroadcast\": {\n \"description\": \"Indicates + whether this broadcast is the default broadcast. Internal only.\",\n \"type\": + \"boolean\"\n },\n \"actualEndTime\": {\n \"type\": + \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the broadcast actually ended. This information is + only available once the broadcast's state is complete.\"\n },\n \"description\": + {\n \"description\": \"The broadcast's description. As with the title, + you can set this field by modifying the broadcast resource or by setting the + description field of the corresponding video resource.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveBroadcastSnippet\",\n + \ \"type\": \"object\"\n },\n \"VideoStatus\": {\n \"id\": + \"VideoStatus\",\n \"type\": \"object\",\n \"description\": \"Basic + details about a video category, such as its localized title. Next Id: 18\",\n + \ \"properties\": {\n \"madeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"embeddable\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This value indicates if the video can be embedded + on another website. @mutable youtube.videos.insert youtube.videos.update\"\n + \ },\n \"license\": {\n \"enum\": [\n \"youtube\",\n + \ \"creativeCommon\"\n ],\n \"description\": \"The + video's license. @mutable youtube.videos.insert youtube.videos.update\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ]\n },\n \"publicStatsViewable\": + {\n \"type\": \"boolean\",\n \"description\": \"This value + indicates if the extended video statistics on the watch page can be viewed + by everyone. Note that the view count, likes, etc will still be visible if + this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n + \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"rejectionReason\": {\n \"enum\": [\n \"copyright\",\n + \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n + \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n + \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n + \ ],\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n + \ \"Inappropriate video content.\",\n \"Duplicate upload + in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader + account was suspended.\",\n \"Video duration was too long.\",\n + \ \"Blocked by content owner.\",\n \"Uploader closed + his/her account.\",\n \"Trademark infringement.\",\n \"An + unspecified legal reason.\"\n ],\n \"description\": \"This + value explains why YouTube rejected an uploaded video. This property is only + present if the uploadStatus property indicates that the upload was rejected.\",\n + \ \"type\": \"string\"\n },\n \"privacyStatus\": {\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"type\": \"string\",\n \"description\": + \"The video's privacy status.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"failureReason\": + {\n \"enumDescriptions\": [\n \"Unable to convert video + content.\",\n \"Invalid file format.\",\n \"Empty file.\",\n + \ \"File was too small.\",\n \"Unsupported codec.\",\n + \ \"Upload wasn't finished.\"\n ],\n \"enum\": + [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n + \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"This value explains why a video failed to upload. This property is only + present if the uploadStatus property indicates that the upload failed.\"\n + \ },\n \"publishAt\": {\n \"type\": \"string\",\n \"description\": + \"The date and time when the video is scheduled to publish. It can be set + only if the privacy status of the video is private..\",\n \"format\": + \"date-time\"\n },\n \"uploadStatus\": {\n \"enumDescriptions\": + [\n \"Video has been uploaded but not processed yet.\",\n \"Video + has been successfully processed.\",\n \"Processing has failed. + See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n + \ \"Video has been deleted.\"\n ],\n \"description\": + \"The status of the uploaded video.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"uploaded\",\n \"processed\",\n + \ \"failed\",\n \"rejected\",\n \"deleted\"\n + \ ]\n }\n }\n },\n \"ChannelSectionContentDetails\": + {\n \"properties\": {\n \"channels\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"The channel ids for type multiple_channels.\"\n + \ },\n \"playlists\": {\n \"description\": \"The playlist + ids for type single_playlist and multiple_playlists. For singlePlaylist, only + one playlistId is allowed.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n }\n },\n + \ \"id\": \"ChannelSectionContentDetails\",\n \"description\": \"Details + about a channelsection, including playlists and channels.\",\n \"type\": + \"object\"\n },\n \"ChannelContentOwnerDetails\": {\n \"properties\": + {\n \"timeLinked\": {\n \"description\": \"The date and time + when the channel was linked to the content owner.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"contentOwner\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the content owner linked to the channel.\"\n }\n },\n \"id\": + \"ChannelContentOwnerDetails\",\n \"type\": \"object\",\n \"description\": + \"The contentOwnerDetails object encapsulates channel data that is relevant + for YouTube Partners linked with the channel.\"\n },\n \"ActivityContentDetailsSocial\": + {\n \"id\": \"ActivityContentDetailsSocial\",\n \"type\": \"object\",\n + \ \"description\": \"Details about a social network post.\",\n \"properties\": + {\n \"author\": {\n \"type\": \"string\",\n \"description\": + \"The author of the social network post.\"\n },\n \"resourceId\": + {\n \"description\": \"The resourceId object encapsulates information + that identifies the resource associated with a social network post.\",\n \"$ref\": + \"ResourceId\"\n },\n \"imageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"An image of the post's author.\"\n },\n + \ \"referenceUrl\": {\n \"type\": \"string\",\n \"description\": + \"The URL of the social network post.\"\n },\n \"type\": {\n + \ \"description\": \"The name of the social network.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"id\": \"InvideoPosition\",\n \"type\": \"object\"\n },\n \"I18nRegion\": - {\n \"id\": \"I18nRegion\",\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nRegion\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n - \ }\n },\n \"description\": \"A *i18nRegion* resource identifies - a region where YouTube is available.\"\n },\n \"Thumbnail\": {\n \"properties\": - {\n \"url\": {\n \"type\": \"string\",\n \"description\": - \"The thumbnail image's URL.\"\n },\n \"width\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"(Optional) Width of the thumbnail image.\"\n },\n \"height\": - {\n \"type\": \"integer\",\n \"description\": \"(Optional) - Height of the thumbnail image.\",\n \"format\": \"uint32\"\n }\n - \ },\n \"description\": \"A thumbnail is an image representing a - YouTube resource.\",\n \"type\": \"object\",\n \"id\": \"Thumbnail\"\n - \ },\n \"VideoLiveStreamingDetails\": {\n \"properties\": {\n \"scheduledEndTime\": - {\n \"description\": \"The time that the broadcast is scheduled to - end. If the value is empty or the property is not present, then the broadcast - is scheduled to contiue indefinitely.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast is scheduled to begin.\"\n - \ },\n \"actualEndTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The time - that the broadcast actually ended. This value will not be available until - the broadcast is over.\"\n },\n \"concurrentViewers\": {\n \"type\": + \ ],\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n + \ \"facebook\",\n \"twitter\"\n ],\n \"type\": + \"string\"\n }\n }\n },\n \"ResourceId\": {\n \"properties\": + {\n \"channelId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the referred resource, if that resource is a channel. + This property is only present if the resourceId.kind value is youtube#channel.\",\n + \ \"type\": \"string\"\n },\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the referred resource, if that resource is a video. This property + is only present if the resourceId.kind value is youtube#video.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"The type of the API resource.\"\n },\n \"playlistId\": {\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the referred resource, if that resource is a playlist. This property is only + present if the resourceId.kind value is youtube#playlist.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"A resource id is a generic reference that points to another YouTube resource.\",\n + \ \"id\": \"ResourceId\"\n },\n \"VideoFileDetailsVideoStream\": + {\n \"description\": \"Information about a video stream.\",\n \"type\": + \"object\",\n \"properties\": {\n \"bitrateBps\": {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n },\n - \ \"activeLiveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the currently active live chat attached to this video. This field - is filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\"\n },\n \"actualStartTime\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The time that the broadcast actually started. This value will not be available - until the broadcast begins.\"\n }\n },\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"Details about the live streaming metadata.\",\n \"type\": - \"object\"\n },\n \"MembershipsDetails\": {\n \"properties\": {\n - \ \"highestAccessibleLevel\": {\n \"description\": \"Id of - the highest level that the user has access to at the moment.\",\n \"type\": - \"string\"\n },\n \"membershipsDurationAtLevels\": {\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"type\": - \"array\",\n \"description\": \"Data about memberships duration on - particular pricing levels.\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n },\n - \ \"accessibleLevels\": {\n \"description\": \"Ids of all levels - that the user has access to. This includes the currently active level and - all other levels that are included because of a higher purchase.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"membershipsDuration\": {\n \"$ref\": \"MembershipsDuration\",\n - \ \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\"\n }\n },\n \"id\": \"MembershipsDetails\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"description\": \"Details about a channel bulletin post.\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsBulletin\"\n - \ },\n \"SearchResult\": {\n \"id\": \"SearchResult\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#searchResult\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"SearchResultSnippet\",\n \"description\": \"The snippet object - contains basic details about a search result, such as its title or description. - For example, if the search result is a video, then the title will be the video's - title and the description will be the video's description.\"\n },\n - \ \"id\": {\n \"description\": \"The id object contains information - that can be used to uniquely identify the resource that matches the search - request.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A search result contains information - about a YouTube video, channel, or playlist that matches the search parameters - specified in an API request. While a search result points to a uniquely identifiable - resource, like a video, it does not have its own persistent data.\"\n },\n - \ \"MemberListResponse\": {\n \"id\": \"MemberListResponse\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": + \"The video stream's bitrate, in bits per second.\"\n },\n \"frameRateFps\": + {\n \"description\": \"The video stream's frame rate, in frames per + second.\",\n \"format\": \"double\",\n \"type\": \"number\"\n + \ },\n \"aspectRatio\": {\n \"description\": \"The video + content's display aspect ratio, which specifies the aspect ratio in which + the video should be displayed.\",\n \"format\": \"double\",\n \"type\": + \"number\"\n },\n \"codec\": {\n \"description\": \"The + video codec that the stream uses.\",\n \"type\": \"string\"\n },\n + \ \"widthPixels\": {\n \"description\": \"The encoded video + content's width in pixels. You can calculate the video's encoding aspect ratio + as width_pixels / height_pixels.\",\n \"format\": \"uint32\",\n \"type\": + \"integer\"\n },\n \"vendor\": {\n \"description\": + \"A value that uniquely identifies a video vendor. Typically, the value is + a four-letter vendor code.\",\n \"type\": \"string\"\n },\n + \ \"heightPixels\": {\n \"format\": \"uint32\",\n \"description\": + \"The encoded video content's height in pixels.\",\n \"type\": \"integer\"\n + \ },\n \"rotation\": {\n \"description\": \"The amount + that YouTube needs to rotate the original source content to properly display + the video.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"none\",\n \"clockwise\",\n \"upsideDown\",\n + \ \"counterClockwise\",\n \"other\"\n ],\n \"type\": + \"string\"\n }\n },\n \"id\": \"VideoFileDetailsVideoStream\"\n + \ },\n \"SubscriptionListResponse\": {\n \"id\": \"SubscriptionListResponse\",\n + \ \"properties\": {\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Subscription\"\n + \ },\n \"description\": \"A list of subscriptions that match + the request criteria.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Member\"\n },\n \"description\": \"A list of members that - match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#memberListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n + \ \"default\": \"youtube#subscriptionListResponse\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReportReasonSnippet\": + {\n \"properties\": {\n \"secondaryReasons\": {\n \"description\": + \"The secondary reasons associated with this reason, if any are available. + (There might be 0 or more.)\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n }\n + \ },\n \"label\": {\n \"type\": \"string\",\n \"description\": + \"The localized label belonging to this abuse report reason.\"\n }\n + \ },\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"description\": + \"Basic details about a video category, such as its localized title.\",\n + \ \"type\": \"object\"\n },\n \"ChannelAuditDetails\": {\n \"type\": + \"object\",\n \"id\": \"ChannelAuditDetails\",\n \"properties\": + {\n \"contentIdClaimsGoodStanding\": {\n \"description\": + \"Whether or not the channel has any unresolved claims.\",\n \"type\": + \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": {\n + \ \"description\": \"Whether or not the channel respects the community + guidelines.\",\n \"type\": \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel has any copyright strikes.\"\n }\n },\n \"description\": + \"The auditDetails object encapsulates channel data that is relevant for YouTube + Partners during the audit process.\"\n },\n \"VideoCategoryListResponse\": + {\n \"id\": \"VideoCategoryListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n + \ \"description\": \"A list of video categories that can be associated + with YouTube videos. In this map, the video category ID is the map key, and + its value is the corresponding videoCategory resource.\",\n \"items\": + {\n \"$ref\": \"VideoCategory\"\n }\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"pageInfo\": {\n \"description\": \"General + pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"WatchSettings\": {\n \"properties\": - {\n \"featuredPlaylistId\": {\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\",\n - \ \"type\": \"string\"\n },\n \"textColor\": {\n \"description\": - \"The background color for the video watch page's branded area.\",\n \"type\": - \"string\"\n },\n \"backgroundColor\": {\n \"type\": - \"string\",\n \"description\": \"The text color for the video watch - page's branded area.\"\n }\n },\n \"description\": \"Branding - properties for the watch. All deprecated.\",\n \"type\": \"object\",\n - \ \"id\": \"WatchSettings\"\n },\n \"ChannelStatistics\": {\n \"properties\": - {\n \"subscriberCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of subscribers that the - channel has.\"\n },\n \"viewCount\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of times the channel has been viewed.\"\n },\n \"videoCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of videos uploaded to the channel.\",\n \"format\": \"uint64\"\n - \ },\n \"hiddenSubscriberCount\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether or not the number of subscribers is shown - for this user.\"\n },\n \"commentCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of comments for the channel.\"\n }\n },\n \"id\": - \"ChannelStatistics\",\n \"type\": \"object\",\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\"\n },\n \"LiveBroadcastStatistics\": {\n \"id\": - \"LiveBroadcastStatistics\",\n \"properties\": {\n \"totalChatCount\": - {\n \"description\": \"The total number of live chat messages currently - on the broadcast. The property and its value will be present if the broadcast - is public, has the live chat feature enabled, and has at least one message. - Note that this field will not be filled after the broadcast ends. So this - property would not identify the number of chat messages for an archived video - of a completed live broadcast.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"concurrentViewers\": {\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Statistics about the live broadcast. These represent a snapshot of the values - at the time of the request. Statistics are only returned for live broadcasts.\",\n - \ \"type\": \"object\"\n },\n \"ThirdPartyLinkStatus\": {\n \"id\": - \"ThirdPartyLinkStatus\",\n \"description\": \"The third-party link status - object contains information about the status of the link.\",\n \"type\": - \"object\",\n \"properties\": {\n \"linkStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"unknown\",\n - \ \"failed\",\n \"pending\",\n \"linked\"\n - \ ]\n }\n }\n },\n \"ChannelListResponse\": {\n - \ \"type\": \"object\",\n \"id\": \"ChannelListResponse\",\n \"properties\": - {\n \"pageInfo\": {\n \"description\": \"General pagination - information.\",\n \"$ref\": \"PageInfo\"\n },\n \"etag\": + pageToken parameter to retrieve the previous page in the result set.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#videoCategoryListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n }\n }\n },\n \"ActivityContentDetailsLike\": + {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId + object contains information that identifies the rated resource.\"\n }\n + \ },\n \"id\": \"ActivityContentDetailsLike\",\n \"description\": + \"Information about a resource that received a positive (like) rating.\"\n + \ },\n \"ChannelBrandingSettings\": {\n \"description\": \"Branding + properties of a YouTube channel.\",\n \"type\": \"object\",\n \"id\": + \"ChannelBrandingSettings\",\n \"properties\": {\n \"hints\": + {\n \"items\": {\n \"$ref\": \"PropertyValue\"\n },\n + \ \"type\": \"array\",\n \"description\": \"Additional experimental + branding properties.\"\n },\n \"channel\": {\n \"description\": + \"Branding properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n + \ },\n \"watch\": {\n \"description\": \"Branding properties + for the watch page.\",\n \"$ref\": \"WatchSettings\"\n },\n + \ \"image\": {\n \"description\": \"Branding properties for + branding images.\",\n \"$ref\": \"ImageSettings\"\n }\n }\n + \ },\n \"LiveStreamConfigurationIssue\": {\n \"properties\": {\n + \ \"type\": {\n \"type\": \"string\",\n \"enum\": + [\n \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n + \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n + \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n + \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n + \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n + \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n + \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n + \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n + \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n + \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n + \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n + \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n + \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n + \ \"videoIngestionFasterThanRealtime\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The kind of error happening.\"\n },\n \"reason\": {\n \"type\": + \"string\",\n \"description\": \"The short-form reason for this issue.\"\n + \ },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The long-form description of the issue and how + to resolve it.\"\n },\n \"severity\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"description\": \"How severe this issue is to the stream.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"info\",\n + \ \"warning\",\n \"error\"\n ]\n }\n + \ },\n \"id\": \"LiveStreamConfigurationIssue\",\n \"type\": + \"object\"\n },\n \"I18nLanguage\": {\n \"properties\": {\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the i18n language, such as language code and human-readable name.\",\n + \ \"$ref\": \"I18nLanguageSnippet\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#i18nLanguage\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#i18nLanguage\\\".\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the i18n language.\",\n \"type\": \"string\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#channelListResponse\",\n + \"string\"\n }\n },\n \"id\": \"I18nLanguage\",\n \"type\": + \"object\",\n \"description\": \"An *i18nLanguage* resource identifies + a UI language currently supported by YouTube.\"\n },\n \"CommentThreadReplies\": + {\n \"type\": \"object\",\n \"properties\": {\n \"comments\": + {\n \"type\": \"array\",\n \"description\": \"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.\",\n \"items\": {\n \"$ref\": \"Comment\"\n + \ }\n }\n },\n \"id\": \"CommentThreadReplies\",\n + \ \"description\": \"Comments written in (direct or indirect) reply to + the top level comment.\"\n },\n \"LiveChatMembershipGiftingDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"giftMembershipsCount\": + {\n \"description\": \"The number of gift memberships purchased by + the user.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n + \ },\n \"giftMembershipsLevelName\": {\n \"description\": + \"The name of the level of the gift memberships purchased by the user. The + Level names are defined by the YouTube channel offering the Membership. In + some situations this field isn't filled.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"LiveChatMembershipGiftingDetails\"\n + \ },\n \"ActivityContentDetailsSubscription\": {\n \"description\": + \"Information about a channel that a user subscribed to.\",\n \"type\": + \"object\",\n \"id\": \"ActivityContentDetailsSubscription\",\n \"properties\": + {\n \"resourceId\": {\n \"description\": \"The resourceId + object contains information that identifies the resource that the user subscribed + to.\",\n \"$ref\": \"ResourceId\"\n }\n }\n },\n \"ChannelSettings\": + {\n \"id\": \"ChannelSettings\",\n \"description\": \"Branding properties + for the channel view.\",\n \"type\": \"object\",\n \"properties\": + {\n \"showRelatedChannels\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether related channels should be proposed.\"\n + \ },\n \"keywords\": {\n \"description\": \"Lists keywords + associated with the channel, comma-separated.\",\n \"type\": \"string\"\n + \ },\n \"featuredChannelsUrls\": {\n \"type\": \"array\",\n + \ \"description\": \"The list of featured channels.\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"defaultLanguage\": + {\n \"type\": \"string\"\n },\n \"showBrowseView\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the tab to browse the videos should be displayed.\"\n },\n \"featuredChannelsTitle\": + {\n \"description\": \"Title for the featured channels tab.\",\n + \ \"type\": \"string\"\n },\n \"unsubscribedTrailer\": + {\n \"description\": \"The trailer of the channel, for users that + are not subscribers.\",\n \"type\": \"string\"\n },\n \"trackingAnalyticsAccountId\": + {\n \"description\": \"The ID for a Google Analytics account to track + and measure traffic to the channels.\",\n \"type\": \"string\"\n + \ },\n \"defaultTab\": {\n \"description\": \"Which + content tab users should see when viewing the channel.\",\n \"type\": + \"string\"\n },\n \"country\": {\n \"description\": + \"The country of the channel.\",\n \"type\": \"string\"\n },\n + \ \"title\": {\n \"description\": \"Specifies the channel title.\",\n + \ \"type\": \"string\"\n },\n \"moderateComments\": + {\n \"description\": \"Whether user-submitted comments left on the + channel page need to be approved by the channel owner to be publicly visible.\",\n + \ \"type\": \"boolean\"\n },\n \"description\": {\n + \ \"description\": \"Specifies the channel description.\",\n \"type\": + \"string\"\n },\n \"profileColor\": {\n \"type\": \"string\",\n + \ \"description\": \"A prominent color that can be rendered on this + channel page.\"\n }\n }\n },\n \"I18nLanguageSnippet\": + {\n \"type\": \"object\",\n \"properties\": {\n \"hl\": {\n + \ \"description\": \"A short BCP-47 code that uniquely identifies + a language.\",\n \"type\": \"string\"\n },\n \"name\": + {\n \"type\": \"string\",\n \"description\": \"The human-readable + name of the language in the language itself.\"\n }\n },\n \"description\": + \"Basic details about an i18n language, such as language code and human-readable + name.\",\n \"id\": \"I18nLanguageSnippet\"\n },\n \"VideoSuggestions\": + {\n \"type\": \"object\",\n \"properties\": {\n \"processingHints\": + {\n \"items\": {\n \"enum\": [\n \"nonStreamableMov\",\n + \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n + \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n + \ ],\n \"enumDescriptions\": [\n \"The MP4 + file is not streamable, this will slow down the processing. MOOV atom was + not found at the beginning of the file.\",\n \"Probably a better + quality version of the video exists. The video has wide screen aspect ratio, + but is not an HD video.\",\n \"Uploaded video is spherical video.\",\n + \ \"Uploaded video has spatial audio.\",\n \"Uploaded + video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n + \ \"type\": \"string\"\n },\n \"description\": + \"A list of suggestions that may improve YouTube's ability to process the + video.\",\n \"type\": \"array\"\n },\n \"processingWarnings\": + {\n \"items\": {\n \"enumDescriptions\": [\n \"Unrecognized + file format, transcoding is likely to fail.\",\n \"Unrecognized + video codec, transcoding is likely to fail.\",\n \"Unrecognized + audio codec, transcoding is likely to fail.\",\n \"Conflicting + container and stream resolutions.\",\n \"Edit lists are not currently + supported.\",\n \"Video codec that is known to cause problems + was used.\",\n \"Audio codec that is known to cause problems + was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported + spherical video projection type.\",\n \"Unsupported HDR pixel + format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic + HDR lookup table attached.\"\n ],\n \"enum\": [\n \"unknownContainer\",\n + \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n + \ \"inconsistentResolution\",\n \"hasEditlist\",\n + \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n + \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n + \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n + \ \"problematicHdrLookupTable\"\n ],\n \"type\": + \"string\"\n },\n \"description\": \"A list of reasons why + YouTube may have difficulty transcoding the uploaded video or that might result + in an erroneous transcoding. These warnings are generated before YouTube actually + processes the uploaded video file. In addition, they identify issues that + are unlikely to cause the video processing to fail but that might cause problems + such as sync issues, video artifacts, or a missing audio track.\",\n \"type\": + \"array\"\n },\n \"processingErrors\": {\n \"description\": + \"A list of errors that will prevent YouTube from successfully processing + the uploaded video video. These errors indicate that, regardless of the video's + current processing status, eventually, that status will almost certainly be + failed.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\",\n \"enum\": [\n \"audioFile\",\n \"imageFile\",\n + \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n + \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n + \ ],\n \"enumDescriptions\": [\n \"File + contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., + a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file.\",\n \"Document + or text file (e.g., MS Word document).\",\n \"An archive file + (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout + type.\"\n ]\n }\n },\n \"tagSuggestions\": + {\n \"description\": \"A list of keyword tags that could be added + to the video's metadata to increase the likelihood that users will locate + your video when searching or browsing on YouTube.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n + \ }\n },\n \"editorSuggestions\": {\n \"type\": + \"array\",\n \"description\": \"A list of video editing operations + that might improve the video quality or playback experience of the uploaded + video.\",\n \"items\": {\n \"enumDescriptions\": [\n \"Picture + brightness levels seem off and could be corrected.\",\n \"The + video appears shaky and could be stabilized.\",\n \"Margins (mattes) + detected around the picture could be cropped.\",\n \"The audio + track appears silent and could be swapped with a better quality one.\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n + \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n + \ ]\n }\n }\n },\n \"id\": \"VideoSuggestions\",\n + \ \"description\": \"Specifies suggestions on how to improve video content, + including encoding hints, tag suggestions, and editor suggestions.\"\n },\n + \ \"ChannelSectionLocalization\": {\n \"description\": \"ChannelSection + localization setting\",\n \"type\": \"object\",\n \"properties\": + {\n \"title\": {\n \"description\": \"The localized strings + for channel section's title.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"ChannelSectionLocalization\"\n },\n \"LiveChatBan\": + {\n \"id\": \"LiveChatBan\",\n \"description\": \"A `__liveChatBan__` + resource represents a ban for a YouTube live chat.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"id\": {\n \"description\": \"The + ID that YouTube assigns to uniquely identify the ban.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n + \ \"default\": \"youtube#liveChatBan\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"description\": \"The `snippet` + object contains basic details about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"InvideoBranding\": {\n \"id\": \"InvideoBranding\",\n \"type\": + \"object\",\n \"properties\": {\n \"targetChannelId\": {\n \"type\": + \"string\",\n \"description\": \"The channel to which this branding + links. If not present it defaults to the current channel.\"\n },\n + \ \"imageBytes\": {\n \"description\": \"The bytes the uploaded + image. Only used in api to youtube communication.\",\n \"format\": + \"byte\",\n \"type\": \"string\"\n },\n \"imageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The url of + the uploaded image. Only used in apiary to api communication.\"\n },\n + \ \"timing\": {\n \"description\": \"The temporal position + within the video where watermark will be displayed.\",\n \"$ref\": + \"InvideoTiming\"\n },\n \"position\": {\n \"description\": + \"The spatial position within the video where the branding watermark will + be displayed.\",\n \"$ref\": \"InvideoPosition\"\n }\n },\n + \ \"description\": \"LINT.IfChange Describes an invideo branding.\"\n + \ },\n \"LiveChatMessageListResponse\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n + \ \"description\": \"General pagination information.\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"LiveChatMessage\"\n }\n },\n \"offlineAt\": + {\n \"description\": \"The date and time when the underlying stream + went offline.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"pollingIntervalMillis\": + {\n \"description\": \"The amount of time the client should wait + before polling again.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelListResponse\\\".\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Channel\"\n }\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n }\n },\n \"SubscriptionSnippet\": {\n \"type\": - \"object\",\n \"id\": \"SubscriptionSnippet\",\n \"description\": - \"Basic details about a subscription, including title, description and thumbnails - of the subscribed item.\",\n \"properties\": {\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the subscription was - created.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"channelTitle\": {\n \"description\": \"Channel - title for the channel that the subscription belongs to.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"description\": \"The id object contains - information about the channel that the user subscribed to.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The subscription's title.\"\n },\n \"description\": {\n \"description\": - \"The subscription's details.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the subscriber's channel.\",\n \"type\": - \"string\"\n }\n }\n },\n \"InvideoTiming\": {\n \"type\": - \"object\",\n \"description\": \"Describes a temporal position of a visual - widget inside a video.\",\n \"id\": \"InvideoTiming\",\n \"properties\": - {\n \"offsetMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"Defines the time at which the promotion - will appear. Depending on the value of type the value of the offsetMs field - will represent a time offset from the start or from the end of the video, - expressed in milliseconds.\"\n },\n \"type\": {\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"Describes a timing - type. If the value is offsetFromStart, then the offsetMs field represents - an offset from the start of the video. If the value is offsetFromEnd, then - the offsetMs field represents an offset from the end of the video.\"\n },\n - \ \"durationMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"Defines the duration in milliseconds - for which the promotion should be displayed. If missing, the client should - use the default.\"\n }\n }\n },\n \"LiveChatTextMessageDetails\": - {\n \"properties\": {\n \"messageText\": {\n \"type\": - \"string\",\n \"description\": \"The user's message.\"\n }\n - \ },\n \"id\": \"LiveChatTextMessageDetails\",\n \"type\": \"object\"\n - \ },\n \"TokenPagination\": {\n \"properties\": {},\n \"type\": - \"object\",\n \"id\": \"TokenPagination\",\n \"description\": \"Stub - token pagination template to suppress results.\"\n },\n \"ActivityContentDetailsLike\": - {\n \"type\": \"object\",\n \"description\": \"Information about - a resource that received a positive (like) rating.\",\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the rated resource.\"\n }\n }\n },\n \"ActivityContentDetails\": - {\n \"description\": \"Details about the content of an activity: the - video that was shared, the channel that was subscribed to, etc.\",\n \"properties\": - {\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n },\n \"like\": {\n \"description\": \"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.\",\n - \ \"$ref\": \"ActivityContentDetailsLike\"\n },\n \"channelItem\": - {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n \"description\": - \"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.\"\n - \ },\n \"subscription\": {\n \"description\": \"The - subscription object contains information about a channel that a user subscribed - to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"upload\": - {\n \"$ref\": \"ActivityContentDetailsUpload\",\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\"\n },\n \"social\": - {\n \"$ref\": \"ActivityContentDetailsSocial\",\n \"description\": - \"The social object contains details about a social network post. This property - is only present if the snippet.type is social.\"\n },\n \"favorite\": - {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n \"description\": - \"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.\"\n - \ },\n \"promotedItem\": {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\"\n },\n \"recommendation\": {\n \"description\": - \"The recommendation object contains information about a recommended resource. - This property is only present if the snippet.type is recommendation.\",\n - \ \"$ref\": \"ActivityContentDetailsRecommendation\"\n },\n - \ \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetails\"\n },\n \"VideoStatistics\": {\n \"id\": - \"VideoStatistics\",\n \"properties\": {\n \"viewCount\": {\n - \ \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of times the video has been viewed.\"\n },\n \"likeCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of users who have indicated that they liked the video by giving it a positive - rating.\",\n \"type\": \"string\"\n },\n \"dislikeCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of users who have indicated that they disliked the video by giving - it a negative rating.\"\n },\n \"favoriteCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of users who currently have the video marked as a favorite video.\"\n - \ },\n \"commentCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of comments for the video.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Statistics about - the video, such as the number of times the video was viewed or liked.\",\n - \ \"type\": \"object\"\n },\n \"ImageSettings\": {\n \"properties\": - {\n \"largeBrandedBannerImageUrl\": {\n \"description\": \"The - URL for the 854px by 70px image that appears below the video player in the - expanded video view of the video watch page.\",\n \"$ref\": \"LocalizedProperty\"\n - \ },\n \"smallBrandedBannerImageUrl\": {\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTabletLowImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size low resolution (1138x188).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"largeBrandedBannerImageImapScript\": {\n \"description\": - \"The image map script for the large banner image.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"watchIconImageUrl\": {\n \"type\": - \"string\"\n },\n \"bannerTvHighImageUrl\": {\n \"description\": - \"Banner image. TV size high resolution (1920x1080).\",\n \"type\": - \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size extra - high resolution (2560x424).\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"bannerTvImageUrl\": - {\n \"description\": \"Banner image. TV size extra high resolution - (2120x1192).\",\n \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size medium resolution (1280x720).\"\n },\n \"bannerTvLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size low resolution (854x480).\"\n },\n \"bannerMobileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size (640x175).\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1280x360).\"\n },\n \"trackingImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\"\n },\n \"bannerImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size high resolution (2276x377).\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\",\n \"type\": \"string\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"bannerMobileLowImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Mobile size low resolution (320x88).\"\n - \ },\n \"bannerTabletImageUrl\": {\n \"description\": - \"Banner image. Tablet size (1707x283).\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ImageSettings\",\n \"type\": \"object\",\n - \ \"description\": \"Branding properties for images associated with the - channel.\"\n },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"properties\": - {\n \"memberMonth\": {\n \"type\": \"integer\",\n \"description\": + the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n }\n + \ },\n \"id\": \"LiveChatMessageListResponse\"\n },\n \"MembershipsLevelSnippet\": + {\n \"id\": \"MembershipsLevelSnippet\",\n \"properties\": {\n \"creatorChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The id of + the channel that's offering channel memberships.\"\n },\n \"levelDetails\": + {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details + about the pricing level.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"ActivityContentDetailsFavorite\": {\n \"type\": \"object\",\n + \ \"description\": \"Information about a video that was marked as a favorite + video.\",\n \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n + \ },\n \"id\": \"ActivityContentDetailsFavorite\"\n },\n \"VideoSuggestionsTagSuggestion\": + {\n \"properties\": {\n \"categoryRestricts\": {\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"A set of video categories for which the tag is + relevant. You can use this information to display appropriate tag suggestions + based on the video category that the video uploader associates with the video. + By default, tag suggestions are relevant for all categories if there are no + restricts defined for the keyword.\"\n },\n \"tag\": {\n \"description\": + \"The keyword tag suggested for the video.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"A + single tag suggestion with it's relevance information.\",\n \"id\": \"VideoSuggestionsTagSuggestion\"\n + \ },\n \"MemberSnippet\": {\n \"type\": \"object\",\n \"properties\": + {\n \"membershipsDetails\": {\n \"description\": \"Details + about the user's membership.\",\n \"$ref\": \"MembershipsDetails\"\n + \ },\n \"memberDetails\": {\n \"description\": \"Details + about the member.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n + \ \"creatorChannelId\": {\n \"type\": \"string\",\n \"description\": + \"The id of the channel that's offering memberships.\"\n }\n },\n + \ \"id\": \"MemberSnippet\"\n },\n \"LiveChatModerator\": {\n \"id\": + \"LiveChatModerator\",\n \"properties\": {\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n + \ \"default\": \"youtube#liveChatModerator\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube assigns to uniquely identify the moderator.\"\n },\n \"snippet\": + {\n \"$ref\": \"LiveChatModeratorSnippet\",\n \"description\": + \"The snippet object contains basic details about the moderator.\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"A *liveChatModerator* + resource represents a moderator for a YouTube live chat. A chat moderator + has the ability to ban/unban users from a chat, remove message, etc.\"\n },\n + \ \"LiveChatMemberMilestoneChatDetails\": {\n \"properties\": {\n \"memberMonth\": + {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": \"The total amount of months (rounded up) the viewer has been a member that granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"format\": \"uint32\"\n - \ },\n \"memberLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the Level at which the viever is - a member. The Level names are defined by the YouTube channel offering the - Membership. In some situations this field isn't filled.\"\n },\n \"userComment\": - {\n \"description\": \"The comment added by the member to this Member + as is being displayed to YouTube users.\"\n },\n \"memberLevelName\": + {\n \"description\": \"The name of the Level at which the viever + is a member. The Level names are defined by the YouTube channel offering the + Membership. In some situations this field isn't filled.\",\n \"type\": + \"string\"\n },\n \"userComment\": {\n \"type\": \"string\",\n + \ \"description\": \"The comment added by the member to this Member Milestone Chat. This field is empty for messages without a comment from the - member.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveChatMemberMilestoneChatDetails\",\n \"type\": \"object\"\n },\n - \ \"VideoContentDetailsRegionRestriction\": {\n \"description\": \"DEPRECATED - Region restriction of the video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"allowed\": {\n \"type\": \"array\",\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"blocked\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of region codes that identify countries - where the video is blocked. If this property is present and a country is not - listed in its value, then the video is viewable in that country. If this property - is present and contains an empty list, the video is viewable in all countries.\",\n - \ \"type\": \"array\"\n }\n },\n \"id\": \"VideoContentDetailsRegionRestriction\"\n - \ },\n \"ContentRating\": {\n \"id\": \"ContentRating\",\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\",\n \"properties\": {\n \"skfilmRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P2\",\n \"P5\",\n \"P8\",\n - \ \"\"\n ],\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Slovakia.\"\n },\n \"cncRating\": {\n - \ \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ],\n \"description\": \"Rating system in France - Commission - de classification cinematographique\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ]\n - \ },\n \"rtcRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"A\",\n \"B\",\n \"B15\",\n - \ \"C\",\n \"D\",\n \"\"\n ],\n \"enum\": - [\n \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ]\n },\n \"cnaRating\": - {\n \"description\": \"The video's rating from Romania's CONSILIUL - NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ]\n },\n \"cbfcRating\": - {\n \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n - \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n - \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n - \ \"cbfcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Central Board of Film Certification - (CBFC - India) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"U/A\",\n \"U/A 7+\",\n \"U/A - 13+\",\n \"U/A 16+\",\n \"A\",\n \"S\",\n - \ \"\"\n ]\n },\n \"moctwRating\": {\n \"enum\": - [\n \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n - \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n - \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ],\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\"\n - \ },\n \"tvpgRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"tvpgUnspecified\",\n \"tvpgY\",\n \"tvpgY7\",\n - \ \"tvpgY7Fv\",\n \"tvpgG\",\n \"tvpgPg\",\n - \ \"pg14\",\n \"tvpgMa\",\n \"tvpgUnrated\"\n - \ ],\n \"description\": \"The video's TV Parental Guidelines - (TVPG) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ]\n },\n \"agcomRating\": {\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\",\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n - \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"russiaRating\": - {\n \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"description\": \"The video's National Film Registry of the Russian - Federation (MKRF - Russia) rating.\",\n \"type\": \"string\"\n },\n - \ \"mcstRating\": {\n \"description\": \"The video's rating - system for Vietnam - MCST\",\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ]\n - \ },\n \"oflcRating\": {\n \"enum\": [\n \"oflcUnspecified\",\n - \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n - \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n - \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n - \ \"oflcRp16\",\n \"oflcRp18\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ],\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\"\n },\n \"egfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Egypt.\",\n \"type\": \"string\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ]\n },\n \"catvRating\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ]\n },\n - \ \"ytRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"ytUnspecified\",\n - \ \"ytAgeRestricted\"\n ],\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"type\": - \"string\"\n },\n \"smsaRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"description\": \"The - video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"All ages\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ]\n },\n \"mpaatRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"description\": \"The rating - system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ]\n },\n \"djctqRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos - (DJCQT - Brazil) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"L\",\n \"10\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n - \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n - \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n - \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n - \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n - \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n - \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n - \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n - \ ]\n },\n \"fcbmRating\": {\n \"enum\": [\n - \ \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"description\": \"The - video's rating from Malaysia's Film Censorship Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"fmocRating\": {\n \"description\": - \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ],\n \"enum\": [\n - \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"ilfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Israel.\"\n - \ },\n \"mccaaRating\": {\n \"description\": \"The video's - rating from Malta's Film Age-Classification Board.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ]\n },\n \"smaisRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in Iceland.\",\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ]\n },\n \"cscfRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\"\n },\n \"cceRating\": {\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"type\": \"string\",\n \"enum\": - [\n \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n - \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n - \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ]\n },\n \"fpbRatingReasons\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"description\": - \"Reasons that explain why the video received its FPB (South Africa) rating.\"\n - \ },\n \"csaRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, - which rates broadcast content.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"Interdiction\",\n \"\"\n ],\n - \ \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ]\n - \ },\n \"chfilmRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n - \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n - \ \"chfilm18\",\n \"chfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Switzerland.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"nfvcbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Nigeria's National Film and Video Censors Board.\",\n \"type\": - \"string\",\n \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ]\n },\n \"czfilmRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"description\": - \"The video's rating in the Czech Republic.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ]\n },\n \"cicfRating\": - {\n \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n - \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ]\n - \ },\n \"acbRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"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.\",\n - \ \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ]\n },\n \"lsfRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"lsfUnspecified\",\n - \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n - \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n - \ \"lsfUnrated\"\n ],\n \"description\": \"The - video's rating from Indonesia's Lembaga Sensor Film.\"\n },\n \"cccRating\": - {\n \"description\": \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica - (Chile) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ]\n },\n - \ \"resorteviolenciaRating\": {\n \"description\": \"The video's - rating in Venezuela.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"B\",\n \"C\",\n \"D\",\n - \ \"E\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ]\n },\n \"kmrbRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enum\": [\n - \ \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ]\n },\n \"anatelRating\": {\n \"enum\": - [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"description\": \"The video's Anatel - (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\"\n - \ },\n \"nbcRating\": {\n \"description\": \"The video's - rating from the Maldives National Bureau of Classification.\",\n \"enum\": - [\n \"nbcUnspecified\",\n \"nbcG\",\n \"nbcPg\",\n - \ \"nbc12plus\",\n \"nbc15plus\",\n \"nbc18plus\",\n - \ \"nbc18plusr\",\n \"nbcPu\",\n \"nbcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n - \ \"18+R\",\n \"PU\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"medietilsynetRating\": - {\n \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"description\": \"The video's rating from Medietilsynet, the Norwegian - Media Authority.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n - \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"\"\n ]\n },\n \"nbcplRating\": - {\n \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n - \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n - \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ],\n + member.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveChatMemberMilestoneChatDetails\"\n },\n \"LiveChatModeratorListResponse\": + {\n \"id\": \"LiveChatModeratorListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"items\": {\n \"description\": + \"A list of moderators that match the request criteria.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n + \ }\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"eventId\": {\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n }\n }\n },\n \"PageInfo\": {\n + \ \"id\": \"PageInfo\",\n \"description\": \"Paging details for lists + of resources, including total number of items available and number of resources + returned in a single page.\",\n \"type\": \"object\",\n \"properties\": + {\n \"resultsPerPage\": {\n \"format\": \"int32\",\n \"type\": + \"integer\",\n \"description\": \"The number of results included + in the API response.\"\n },\n \"totalResults\": {\n \"format\": + \"int32\",\n \"type\": \"integer\",\n \"description\": \"The + total number of results in the result set.\"\n }\n }\n },\n + \ \"SuperChatEvent\": {\n \"description\": \"A `__superChatEvent__` + resource represents a Super Chat purchase on a YouTube channel.\",\n \"type\": + \"object\",\n \"id\": \"SuperChatEvent\",\n \"properties\": {\n + \ \"snippet\": {\n \"description\": \"The `snippet` object + contains basic details about the Super Chat event.\",\n \"$ref\": + \"SuperChatEventSnippet\"\n },\n \"kind\": {\n \"default\": + \"youtube#superChatEvent\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + assigns to uniquely identify the Super Chat event.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n }\n }\n + \ },\n \"VideoAbuseReportSecondaryReason\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"label\": {\n \"type\": \"string\",\n + \ \"description\": \"The localized label for this abuse report secondary + reason.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of this abuse report secondary reason.\"\n + \ }\n },\n \"id\": \"VideoAbuseReportSecondaryReason\"\n },\n + \ \"AbuseType\": {\n \"id\": \"AbuseType\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n + \ }\n }\n },\n \"VideoRating\": {\n \"properties\": + {\n \"rating\": {\n \"description\": \"Rating of a video.\",\n \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The entity is liked.\",\n \"The entity is disliked.\"\n + \ ],\n \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ]\n },\n \"videoId\": {\n + \ \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the video.\"\n }\n },\n \"id\": + \"VideoRating\",\n \"description\": \"Basic details about rating of a + video.\",\n \"type\": \"object\"\n },\n \"ChannelProfileDetails\": + {\n \"id\": \"ChannelProfileDetails\",\n \"properties\": {\n \"channelUrl\": + {\n \"type\": \"string\",\n \"description\": \"The channel's + URL.\"\n },\n \"displayName\": {\n \"description\": + \"The channel's display name.\",\n \"type\": \"string\"\n },\n + \ \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": + \"The channels's avatar URL.\"\n },\n \"channelId\": {\n \"description\": + \"The YouTube channel ID.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"VideoCategory\": {\n \"description\": + \"A *videoCategory* resource identifies a category that has been or could + be associated with uploaded videos.\",\n \"id\": \"VideoCategory\",\n + \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the video category, including its title.\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#videoCategory\\\".\",\n \"default\": + \"youtube#videoCategory\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the video category.\"\n }\n },\n \"type\": \"object\"\n },\n + \ \"ChannelStatus\": {\n \"id\": \"ChannelStatus\",\n \"type\": + \"object\",\n \"properties\": {\n \"madeForKids\": {\n \"type\": + \"boolean\"\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": + \"boolean\"\n },\n \"privacyStatus\": {\n \"enum\": + [\n \"public\",\n \"unlisted\",\n \"private\"\n + \ ],\n \"description\": \"Privacy status of the channel.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"longUploadsStatus\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 + for more information.\",\n \"enum\": [\n \"longUploadsUnspecified\",\n + \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n + \ ],\n \"type\": \"string\"\n },\n \"isLinked\": + {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n }\n },\n + \ \"description\": \"JSON template for the status part of a channel.\"\n + \ },\n \"LiveChatMessageDeletedDetails\": {\n \"properties\": {\n + \ \"deletedMessageId\": {\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageDeletedDetails\"\n + \ },\n \"CommentThread\": {\n \"type\": \"object\",\n \"description\": + \"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.\",\n \"properties\": {\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n + \ \"default\": \"youtube#commentThread\",\n \"type\": \"string\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the comment thread.\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"$ref\": \"CommentThreadSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the comment thread and also the top level comment.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n + \ \"description\": \"The replies object contains a limited number + of replies (if any) to the top level comment found in the snippet.\"\n }\n + \ },\n \"id\": \"CommentThread\"\n },\n \"LiveStreamStatus\": + {\n \"id\": \"LiveStreamStatus\",\n \"description\": \"Brief description + of the live stream status.\",\n \"properties\": {\n \"healthStatus\": + {\n \"description\": \"The health status of the stream.\",\n \"$ref\": + \"LiveStreamHealthStatus\"\n },\n \"streamStatus\": {\n \"enum\": + [\n \"created\",\n \"ready\",\n \"active\",\n + \ \"inactive\",\n \"error\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"LiveChatMessageSnippet\": + {\n \"description\": \"Next ID: 33\",\n \"properties\": {\n \"superChatDetails\": + {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": + \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n + \ },\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n + \ },\n \"type\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's rating in Poland.\"\n },\n \"chvrsRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Canadian Home Video Rating System - (CHVRS) rating.\",\n \"enum\": [\n \"chvrsUnspecified\",\n - \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n - \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n - \ \"chvrsUnrated\"\n ]\n },\n \"nfrcRating\": - {\n \"enum\": [\n \"nfrcUnspecified\",\n \"nfrcA\",\n - \ \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n - \ \"nfrcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"type\": - \"string\"\n },\n \"mccypRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Danish Film Institute's - (Det Danske Filminstitut) Media Council for Children and Young People.\",\n - \ \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ]\n },\n \"eirinRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG-12\",\n \"R15+\",\n \"R18+\",\n - \ \"\"\n ],\n \"description\": \"The video's Eirin - (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n \"enum\": - [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ]\n },\n \"fpbRating\": {\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\",\n - \ \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ],\n \"type\": \"string\"\n - \ },\n \"menaMpaaRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ],\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ]\n - \ },\n \"djctqRatingReasons\": {\n \"items\": {\n \"enum\": - [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ],\n \"type\": \"string\"\n - \ },\n \"type\": \"array\",\n \"description\": \"Reasons - that explain why the video received its DJCQT (Brazil) rating.\"\n },\n - \ \"bfvcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"E\",\n \"13\",\n \"15\",\n - \ \"18\",\n \"20\",\n \"B\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ],\n \"description\": - \"The video's rating from Thailand's Board of Film and Video Censors.\"\n - \ },\n \"kfcbRating\": {\n \"description\": \"The video's - rating from the Kenya Film Classification Board.\",\n \"enum\": [\n - \ \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"rcnofRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n - \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n - \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\"\n },\n \"bmukkRating\": {\n - \ \"description\": \"The video's rating from the Austrian Board of - Media Classification (Bundesministerium f\xFCr Unterricht, Kunst und Kultur).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ],\n - \ \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"catvfrRating\": {\n \"description\": \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ]\n },\n \"mibacRating\": - {\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"description\": \"The - video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali e - del Turismo (Italy).\",\n \"type\": \"string\",\n \"enumDescriptions\": + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n + \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n + \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n + \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n + \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n + \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n + \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n + \ ],\n \"description\": \"The type of message, this will + always be present, it determines the contents of the message as well as which + fields will be present.\"\n },\n \"membershipGiftingDetails\": + {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": + \"Details about the Membership Gifting event, this is only set if the type + is 'membershipGiftingEvent'.\"\n },\n \"userBannedDetails\": + {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n + \ \"liveChatId\": {\n \"type\": \"string\"\n },\n \"memberMilestoneChatDetails\": + {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": + \"Details about the Member Milestone Chat event, this is only set if the type + is 'memberMilestoneChatEvent'.\"\n },\n \"fanFundingEventDetails\": + {\n \"description\": \"Details about the funding event, this is only + set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n + \ },\n \"displayMessage\": {\n \"description\": \"Contains + a string that can be displayed to the user. If this field is not present the + message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT + are silent.\",\n \"type\": \"string\"\n },\n \"hasDisplayContent\": + {\n \"description\": \"Whether the message has display content that + should be displayed to users.\",\n \"type\": \"boolean\"\n },\n + \ \"superStickerDetails\": {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n + \ \"description\": \"Details about the Super Sticker event, this is + only set if the type is 'superStickerEvent'.\"\n },\n \"messageRetractedDetails\": + {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"newSponsorDetails\": + {\n \"description\": \"Details about the New Member Announcement + event, this is only set if the type is 'newSponsorEvent'. Please note that + \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n \"$ref\": + \"LiveChatNewSponsorDetails\"\n },\n \"authorChannelId\": {\n + \ \"description\": \"The ID of the user that authored this message, + this field is not always filled. textMessageEvent - the user that wrote the + message fanFundingEvent - the user that funded the broadcast newSponsorEvent + - the user that just became a sponsor memberMilestoneChatEvent - the member + that sent the message membershipGiftingEvent - the user that made the purchase + giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent + - the moderator that took the action messageRetractedEvent - the author that + retracted their message userBannedEvent - the moderator that took the action + superChatEvent - the user that made the purchase superStickerEvent - the user + that made the purchase\",\n \"type\": \"string\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the message was orignally + published.\"\n },\n \"giftMembershipReceivedDetails\": {\n \"description\": + \"Details about the Gift Membership Received event, this is only set if the + type is 'giftMembershipReceivedEvent'.\",\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n + \ },\n \"textMessageDetails\": {\n \"description\": + \"Details about the text message, this is only set if the type is 'textMessageEvent'.\",\n + \ \"$ref\": \"LiveChatTextMessageDetails\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"LiveChatMessageSnippet\"\n },\n + \ \"LiveStreamHealthStatus\": {\n \"type\": \"object\",\n \"properties\": + {\n \"status\": {\n \"enum\": [\n \"good\",\n \"ok\",\n + \ \"bad\",\n \"noData\",\n \"revoked\"\n ],\n + \ \"description\": \"The status code of this stream\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"ifcoRating\": {\n \"enum\": - [\n \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's Irish Film Classification - Office (IFCO - Ireland) rating. See the IFCO website for more information.\"\n - \ },\n \"eefilmRating\": {\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Estonia.\"\n },\n \"mpaaRating\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"NC-17\",\n \"! X\",\n \"\"\n ],\n - \ \"description\": \"The video's Motion Picture Association of America - (MPAA) rating.\",\n \"enum\": [\n \"mpaaUnspecified\",\n - \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n - \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n - \ \"mpaaUnrated\"\n ]\n },\n \"kijkwijzerRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ],\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ]\n },\n \"mekuRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ],\n \"description\": \"The video's rating from Finland's - Kansallinen Audiovisuaalinen Instituutti (National Audiovisual Institute).\"\n - \ },\n \"ecbmctRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ],\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ],\n \"description\": \"Rating - system in Turkey - Evaluation and Classification Board of the Ministry of - Culture and Tourism\",\n \"type\": \"string\"\n },\n \"mdaRating\": - {\n \"description\": \"The video's rating from Singapore's Media - Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\",\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ]\n },\n \"bbfcRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n - \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n - \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n - \ \"bbfcUnrated\"\n ],\n \"description\": \"The - video's British Board of Film Classification (BBFC) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ]\n },\n \"nkclvRating\": {\n \"enum\": - [\n \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n - \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n - \ \"nkclvUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\"\n - \ },\n \"pefilmRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n - \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n - \ \"pefilmUnrated\"\n ],\n \"description\": \"The - video's rating in Peru.\"\n },\n \"mtrcbRating\": {\n \"enum\": - [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n - \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n - \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ]\n },\n \"icaaRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"enum\": - [\n \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n - \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n - \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ]\n },\n - \ \"fskRating\": {\n \"enum\": [\n \"fskUnspecified\",\n - \ \"fsk0\",\n \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n - \ \"fsk18\",\n \"fskUnrated\"\n ],\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"FSK - 0\",\n \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"nmcRating\": {\n \"enum\": [\n - \ \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n - \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n - \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"description\": \"The National - Media Council ratings system for United Arab Emirates.\"\n },\n \"grfilmRating\": - {\n \"description\": \"The video's rating in Greece.\",\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n - \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n - \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n - \ ]\n },\n \"fcoRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Hong Kong's Office for - Film, Newspaper and Article Administration.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ]\n },\n - \ \"rteRating\": {\n \"enum\": [\n \"rteUnspecified\",\n - \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n - \ \"rteUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Ireland's - Raidi\xF3 Teilif\xEDs \xC9ireann.\"\n },\n \"incaaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"description\": \"The video's INCAA - (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.\"\n - \ },\n \"mocRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ]\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatModerator\": - {\n \"id\": \"LiveChatModerator\",\n \"description\": \"A *liveChatModerator* - resource represents a moderator for a YouTube live chat. A chat moderator - has the ability to ban/unban users from a chat, remove message, etc.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"LiveChatModeratorSnippet\",\n \"description\": - \"The snippet object contains basic details about the moderator.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModerator\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the moderator.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"LiveChatModeratorSnippet\": - {\n \"properties\": {\n \"moderatorDetails\": {\n \"description\": - \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the live chat this moderator can act on.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\"\n - \ },\n \"MembershipsLevelListResponse\": {\n \"id\": \"MembershipsLevelListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"etag\": {\n \"description\": + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"configurationIssues\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n },\n + \ \"description\": \"The configurations issues on this stream\"\n + \ },\n \"lastUpdateTimeSeconds\": {\n \"description\": + \"The last time this status was updated (in seconds)\",\n \"type\": + \"string\",\n \"format\": \"uint64\"\n }\n },\n \"id\": + \"LiveStreamHealthStatus\"\n },\n \"LiveBroadcastListResponse\": {\n + \ \"id\": \"LiveBroadcastListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n - \ },\n \"description\": \"A list of pricing levels offered - by a creator to the fans.\",\n \"type\": \"array\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevelListResponse\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"MembershipsDuration\": - {\n \"type\": \"object\",\n \"properties\": {\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member across all levels.\",\n \"type\": \"string\"\n },\n - \ \"memberTotalDurationMonths\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"description\": \"The cumulative - time the user has been a member across all levels in complete months (the - time is rounded down to the nearest integer).\"\n }\n },\n \"id\": - \"MembershipsDuration\"\n },\n \"LiveStreamContentDetails\": {\n \"id\": - \"LiveStreamContentDetails\",\n \"description\": \"Detailed settings - of a stream.\",\n \"type\": \"object\",\n \"properties\": {\n \"closedCaptionsIngestionUrl\": - {\n \"type\": \"string\",\n \"description\": \"The ingestion - URL where the closed captions of this stream are sent.\"\n },\n \"isReusable\": - {\n \"description\": \"Indicates whether the stream is reusable, - which means that it can be bound to multiple broadcasts. It is common for - broadcasters to reuse the same stream for many different broadcasts if those - broadcasts occur at different times. If you set this value to false, then - the stream will not be reusable, which means that it can only be bound to - one broadcast. Non-reusable streams differ from reusable streams in the following - ways: - A non-reusable stream can only be bound to one broadcast. - A non-reusable - stream might be deleted by an automated process after the broadcast ends. - - The liveStreams.list method does not list non-reusable streams if you call - the method and set the mine parameter to true. The only way to use that method - to retrieve the resource for a non-reusable stream is to use the id parameter - to identify the stream. \",\n \"type\": \"boolean\"\n }\n - \ }\n },\n \"LiveStreamSnippet\": {\n \"id\": \"LiveStreamSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the stream was created.\"\n - \ },\n \"description\": {\n \"description\": \"The stream's - description. The value cannot be longer than 10000 characters.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - stream's title. The value must be between 1 and 128 characters long.\",\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that is transmitting the stream.\"\n },\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n }\n }\n },\n \"GeoPoint\": - {\n \"properties\": {\n \"longitude\": {\n \"description\": - \"Longitude in degrees.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n },\n \"latitude\": {\n \"type\": \"number\",\n - \ \"description\": \"Latitude in degrees.\",\n \"format\": - \"double\"\n },\n \"altitude\": {\n \"type\": \"number\",\n - \ \"format\": \"double\",\n \"description\": \"Altitude above - the reference ellipsoid, in meters.\"\n }\n },\n \"description\": - \"Geographical coordinates of a point, in WGS84.\",\n \"id\": \"GeoPoint\",\n - \ \"type\": \"object\"\n },\n \"InvideoBranding\": {\n \"type\": - \"object\",\n \"id\": \"InvideoBranding\",\n \"properties\": {\n - \ \"position\": {\n \"$ref\": \"InvideoPosition\",\n \"description\": - \"The spatial position within the video where the branding watermark will - be displayed.\"\n },\n \"targetChannelId\": {\n \"description\": - \"The channel to which this branding links. If not present it defaults to - the current channel.\",\n \"type\": \"string\"\n },\n \"imageBytes\": - {\n \"format\": \"byte\",\n \"type\": \"string\",\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\"\n - \ },\n \"imageUrl\": {\n \"description\": \"The url - of the uploaded image. Only used in apiary to api communication.\",\n \"type\": - \"string\"\n },\n \"timing\": {\n \"$ref\": \"InvideoTiming\",\n - \ \"description\": \"The temporal position within the video where - watermark will be displayed.\"\n }\n },\n \"description\": - \"LINT.IfChange Describes an invideo branding.\"\n },\n \"LiveChatBan\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveChatBan\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n - \ },\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the ban.\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the ban.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatBan\",\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\"\n - \ },\n \"AbuseType\": {\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"AbuseType\"\n },\n \"ChannelConversionPing\": {\n \"properties\": - {\n \"conversionUrl\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"context\": {\n \"description\": \"Defines - the context of the ping.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"description\": \"A list of broadcasts that match the request + criteria.\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"type\": \"array\"\n },\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveBroadcastListResponse\",\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n }\n }\n },\n \"CaptionSnippet\": + {\n \"description\": \"Basic details about a caption track, such as its + language and name.\",\n \"type\": \"object\",\n \"properties\": + {\n \"trackKind\": {\n \"type\": \"string\",\n \"description\": + \"The caption track's type.\",\n \"enumDescriptions\": [\n \"\",\n \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"description\": - \"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.\",\n \"id\": \"ChannelConversionPing\",\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageRetractedDetails\": {\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"ChannelSectionTargeting\": {\n \"type\": \"object\",\n - \ \"description\": \"ChannelSection targeting setting.\",\n \"properties\": - {\n \"regions\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The region the channel section is targeting.\"\n },\n \"countries\": - {\n \"description\": \"The country the channel section is targeting.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"languages\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"The language the channel section is targeting.\"\n }\n },\n - \ \"id\": \"ChannelSectionTargeting\"\n },\n \"Video\": {\n \"id\": - \"Video\",\n \"type\": \"object\",\n \"properties\": {\n \"projectDetails\": - {\n \"$ref\": \"VideoProjectDetails\",\n \"description\": - \"The projectDetails object contains information about the project specific - video metadata. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"fileDetails\": {\n \"$ref\": \"VideoFileDetails\",\n - \ \"description\": \"The fileDetails object encapsulates information - about the video file that was uploaded to YouTube, including the file's resolution, - duration, audio and video codecs, stream bitrates, and more. This data can - only be retrieved by the video owner.\"\n },\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"suggestions\": - {\n \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoSuggestions\"\n },\n \"monetizationDetails\": - {\n \"description\": \"The monetizationDetails object encapsulates - information about the monetization status of the video.\",\n \"$ref\": - \"VideoMonetizationDetails\"\n },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"VideoLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\"\n },\n \"recordingDetails\": {\n \"description\": - \"The recordingDetails object encapsulates information about the location, - date and address where the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"ageGating\": {\n \"description\": \"Age restriction - details related to a video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoAgeGating\"\n },\n \"statistics\": - {\n \"$ref\": \"VideoStatistics\",\n \"description\": \"The - statistics object contains statistics about the video.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n - \ \"player\": {\n \"description\": \"The player object contains - information that you would use to play the video in an embedded player.\",\n - \ \"$ref\": \"VideoPlayer\"\n },\n \"status\": {\n \"$ref\": - \"VideoStatus\",\n \"description\": \"The status object contains - information about the video's uploading, processing, and privacy statuses.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#video\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#video\\\".\"\n },\n \"id\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video, such as its title, description, and category.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"processingDetails\": - {\n \"$ref\": \"VideoProcessingDetails\",\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\"\n - \ }\n },\n \"description\": \"A *video* resource represents - a YouTube video.\"\n },\n \"VideoAbuseReport\": {\n \"properties\": - {\n \"reasonId\": {\n \"description\": \"The high-level, or - primary, reason that the content is abusive. The value is an abuse report - reason ID.\",\n \"type\": \"string\"\n },\n \"secondaryReasonId\": - {\n \"type\": \"string\",\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\"\n },\n \"comments\": {\n \"description\": - \"Additional comments regarding the abuse report.\",\n \"type\": - \"string\"\n },\n \"language\": {\n \"description\": - \"The language that the content was viewed in.\",\n \"type\": \"string\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n }\n - \ },\n \"id\": \"VideoAbuseReport\",\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageSnippet\": {\n \"properties\": {\n \"authorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that authored this message, this field is not always filled. textMessageEvent - - the user that wrote the message fanFundingEvent - the user that funded the - broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the message was orignally - published.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"fanFundingEventDetails\": {\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n },\n \"liveChatId\": - {\n \"type\": \"string\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"superChatDetails\": - {\n \"description\": \"Details about the Super Chat event, this is - only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n - \ },\n \"superStickerDetails\": {\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"type\": - {\n \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ]\n },\n \"messageDeletedDetails\": {\n \"$ref\": - \"LiveChatMessageDeletedDetails\"\n },\n \"displayMessage\": - {\n \"type\": \"string\",\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"textMessageDetails\": {\n \"$ref\": - \"LiveChatTextMessageDetails\",\n \"description\": \"Details about - the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"membershipGiftingDetails\": {\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\",\n \"$ref\": \"LiveChatMembershipGiftingDetails\"\n - \ },\n \"memberMilestoneChatDetails\": {\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\",\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n - \ \"description\": \"Details about the New Member Announcement event, - this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" - is the new term for \\\"sponsor\\\".\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"hasDisplayContent\": {\n \"description\": \"Whether the - message has display content that should be displayed to users.\",\n \"type\": - \"boolean\"\n }\n },\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"Next ID: 33\",\n \"type\": \"object\"\n },\n - \ \"ChannelContentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"type\": \"object\",\n \"id\": \"ChannelContentOwnerDetails\",\n - \ \"properties\": {\n \"contentOwner\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the content owner linked - to the channel.\"\n },\n \"timeLinked\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the channel - was linked to the content owner.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ActivityContentDetailsSocial\": {\n \"properties\": - {\n \"author\": {\n \"type\": \"string\",\n \"description\": - \"The author of the social network post.\"\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\",\n \"$ref\": - \"ResourceId\"\n },\n \"referenceUrl\": {\n \"description\": - \"The URL of the social network post.\",\n \"type\": \"string\"\n - \ },\n \"imageUrl\": {\n \"description\": \"An image - of the post's author.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the social network.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ]\n }\n },\n \"id\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"Details about a social network post.\",\n \"type\": - \"object\"\n },\n \"VideoLocalization\": {\n \"properties\": {\n - \ \"description\": {\n \"description\": \"Localized version - of the video's description.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"description\": \"Localized version of the - video's title.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Localized versions of certain video properties (e.g. title).\",\n \"type\": - \"object\",\n \"id\": \"VideoLocalization\"\n },\n \"LiveChatMessageListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"pollingIntervalMillis\": - {\n \"format\": \"uint32\",\n \"description\": \"The amount - of time the client should wait before polling again.\",\n \"type\": - \"integer\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"offlineAt\": {\n \"description\": \"The date - and time when the underlying stream went offline.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatMessage\"\n }\n }\n },\n - \ \"id\": \"LiveChatMessageListResponse\"\n },\n \"VideoRecordingDetails\": - {\n \"description\": \"Recording information associated with the video.\",\n - \ \"id\": \"VideoRecordingDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"recordingDate\": {\n \"description\": \"The date and - time when the video was recorded.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"location\": {\n \"description\": - \"The geolocation information associated with the video.\",\n \"$ref\": - \"GeoPoint\"\n },\n \"locationDescription\": {\n \"type\": - \"string\",\n \"description\": \"The text description of the location - where the video was recorded.\"\n }\n }\n },\n \"CommentListResponse\": - {\n \"id\": \"CommentListResponse\",\n \"properties\": {\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - comments that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Comment\"\n }\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"eventId\": {\n - \ \"type\": \"string\",\n \"description\": \"Serialized EventId - of the request which produced this response.\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoRating\": {\n \"description\": \"Basic - details about rating of a video.\",\n \"properties\": {\n \"rating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"description\": \"Rating of a video.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoRating\"\n },\n \"PlaylistItemStatus\": {\n \"description\": - \"Information about the playlist item's privacy status.\",\n \"properties\": - {\n \"privacyStatus\": {\n \"description\": \"This resource's - privacy status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"PlaylistItemStatus\"\n },\n \"Playlist\": {\n \"description\": + \ \"standard\",\n \"ASR\",\n \"forced\"\n + \ ]\n },\n \"lastUpdated\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the caption track was + last updated.\",\n \"format\": \"date-time\"\n },\n \"isAutoSynced\": + {\n \"description\": \"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.\",\n \"type\": + \"boolean\"\n },\n \"status\": {\n \"description\": + \"The caption track's status.\",\n \"enum\": [\n \"serving\",\n + \ \"syncing\",\n \"failed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"language\": {\n \"description\": + \"The language of the caption track. The property value is a BCP-47 language + tag.\",\n \"type\": \"string\",\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n }\n + \ },\n \"isDraft\": {\n \"description\": \"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. @mutable youtube.captions.insert + youtube.captions.update\",\n \"type\": \"boolean\"\n },\n + \ \"name\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n },\n + \ \"description\": \"The name of the caption track. The name is intended + to be visible to the user as an option during playback.\",\n \"type\": + \"string\"\n },\n \"isLarge\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Indicates whether the caption track uses large + text for the vision-impaired. The default value is false.\"\n },\n + \ \"audioTrackType\": {\n \"type\": \"string\",\n \"description\": + \"The type of audio track associated with the caption track.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"unknown\",\n \"primary\",\n + \ \"commentary\",\n \"descriptive\"\n ]\n },\n + \ \"videoId\": {\n \"description\": \"The ID that YouTube uses + to uniquely identify the video associated with the caption track. @mutable + youtube.captions.insert\",\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n }\n },\n \"isEasyReader\": {\n \"description\": + \"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.\",\n + \ \"type\": \"boolean\"\n },\n \"isCC\": {\n \"description\": + \"Indicates whether the track contains closed captions for the deaf and hard + of hearing. The default value is false.\",\n \"type\": \"boolean\"\n + \ },\n \"failureReason\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"unknownFormat\",\n + \ \"unsupportedFormat\",\n \"processingFailed\"\n ],\n + \ \"description\": \"The reason that YouTube failed to process the + caption track. This property is only present if the state property's value + is failed.\"\n }\n },\n \"id\": \"CaptionSnippet\"\n },\n + \ \"ChannelLocalization\": {\n \"type\": \"object\",\n \"id\": + \"ChannelLocalization\",\n \"description\": \"Channel localization setting\",\n + \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The localized strings for channel's description.\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The localized strings for channel's title.\"\n }\n }\n },\n + \ \"TokenPagination\": {\n \"properties\": {},\n \"type\": \"object\",\n + \ \"id\": \"TokenPagination\",\n \"description\": \"Stub token pagination + template to suppress results.\"\n },\n \"PlaylistSnippet\": {\n \"description\": + \"Basic details about a playlist, including title, description and thumbnails.\",\n + \ \"properties\": {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + playlist. 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.\"\n },\n \"localized\": {\n \"description\": + \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n + \ },\n \"description\": {\n \"description\": \"The playlist's + description.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": + {\n \"description\": \"The language of the playlist's default title + and description.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the channel that published the playlist.\",\n \"type\": \"string\"\n + \ },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the playlist was created.\",\n + \ \"format\": \"date-time\"\n },\n \"thumbnailVideoId\": + {\n \"description\": \"Note: if the playlist has a custom thumbnail, + this field will not be populated. The video id selected by the user that will + be used as the thumbnail of this playlist. This field defaults to the first + publicly viewable video in the playlist, if: 1. The user has never selected + a video to be the thumbnail of the playlist. 2. The user selects a video to + be the thumbnail, and then removes that video from the playlist. 3. The user + selects a non-owned video to be the thumbnail, but that video becomes private, + or gets deleted.\",\n \"type\": \"string\"\n },\n \"channelTitle\": + {\n \"description\": \"The channel title of the channel that the + video belongs to.\",\n \"type\": \"string\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": + [\n \"youtube.playlists.insert\",\n \"youtube.playlists.update\"\n + \ ]\n },\n \"description\": \"The playlist's title.\"\n + \ },\n \"tags\": {\n \"description\": \"Keyword tags + associated with the playlist.\",\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n }\n }\n },\n \"type\": + \"object\",\n \"id\": \"PlaylistSnippet\"\n },\n \"LevelDetails\": + {\n \"properties\": {\n \"displayName\": {\n \"description\": + \"The name that should be used when referring to this level.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"LevelDetails\",\n \"type\": + \"object\"\n },\n \"CommentSnippetAuthorChannelId\": {\n \"description\": + \"The id of the author's YouTube channel, if any.\",\n \"properties\": + {\n \"value\": {\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"CommentSnippetAuthorChannelId\"\n + \ },\n \"Playlist\": {\n \"type\": \"object\",\n \"description\": \"A *playlist* resource represents a YouTube playlist. A playlist is a collection of videos that can be viewed sequentially and shared with other users. A playlist can contain up to 200 videos, and YouTube does not limit the number of playlists @@ -3849,7160 +3336,6014 @@ interactions: of these lists from the channel resource for a given channel. You can then use the playlistItems.list method to retrieve any of those lists. You can also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"id\": \"Playlist\",\n \"properties\": - {\n \"status\": {\n \"description\": \"The status object contains - status information for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the playlist.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"player\": - {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": \"The - player object contains information that you would use to play the playlist - in an embedded player.\"\n },\n \"snippet\": {\n \"$ref\": + and playlistItems.delete methods.\",\n \"properties\": {\n \"localizations\": + {\n \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n + \ },\n \"description\": \"Localizations for different languages\",\n + \ \"type\": \"object\"\n },\n \"status\": {\n \"$ref\": + \"PlaylistStatus\",\n \"description\": \"The status object contains + status information for the playlist.\"\n },\n \"kind\": {\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlist\\\".\",\n \"default\": \"youtube#playlist\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the playlist.\"\n },\n \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": \"The snippet object contains basic details about the playlist, such as its title and description.\"\n },\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"PlaylistLocalization\"\n },\n \"type\": \"object\",\n - \ \"description\": \"Localizations for different languages\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"default\": \"youtube#playlist\"\n },\n \"contentDetails\": - {\n \"$ref\": \"PlaylistContentDetails\",\n \"description\": - \"The contentDetails object contains information like video count.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"PlaylistItemContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistItemContentDetails\",\n - \ \"properties\": {\n \"startAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The time, measured in seconds from the start - of the video, when the video should start playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) The default value is 0.\"\n },\n - \ \"endAt\": {\n \"description\": \"The time, measured in seconds - from the start of the video, when the video should stop playing. (The playlist - owner can specify the times when the video should start and stop playing when - the video is played in the context of the playlist.) By default, assume that - the video.endTime is the end of the video.\",\n \"type\": \"string\"\n - \ },\n \"note\": {\n \"type\": \"string\",\n \"description\": - \"A user-generated note for this item.\"\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - a video. To retrieve the video resource, set the id query parameter to this - value in your API request.\",\n \"type\": \"string\"\n },\n - \ \"videoPublishedAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the video was published to YouTube.\",\n \"type\": - \"string\"\n }\n }\n },\n \"PlaylistPlayer\": {\n \"properties\": - {\n \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\",\n \"type\": + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"contentDetails\": {\n + \ \"description\": \"The contentDetails object contains information + like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n },\n + \ \"player\": {\n \"description\": \"The player object contains + information that you would use to play the playlist in an embedded player.\",\n + \ \"$ref\": \"PlaylistPlayer\"\n }\n },\n \"id\": + \"Playlist\"\n },\n \"SubscriptionSubscriberSnippet\": {\n \"properties\": + {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The channel ID of the subscriber.\"\n },\n \"description\": + {\n \"description\": \"The description of the subscriber.\",\n \"type\": + \"string\"\n },\n \"thumbnails\": {\n \"description\": + \"Thumbnails for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"title\": {\n \"description\": \"The title of + the subscriber.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"SubscriptionSubscriberSnippet\",\n \"description\": \"Basic + details about a subscription's subscriber including title, description, channel + ID and thumbnails.\",\n \"type\": \"object\"\n },\n \"VideoAbuseReportReason\": + {\n \"type\": \"object\",\n \"description\": \"A `__videoAbuseReportReason__` + resource identifies a reason that a video could be reported as abusive. Video + abuse report reasons are used with `video.ReportAbuse`.\",\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": + \"The `snippet` object contains basic details about the abuse report reason.\",\n + \ \"$ref\": \"VideoAbuseReportReasonSnippet\"\n },\n \"id\": + {\n \"description\": \"The ID of this abuse report reason.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n + \ \"default\": \"youtube#videoAbuseReportReason\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"VideoAbuseReportReason\"\n + \ },\n \"VideoContentDetails\": {\n \"description\": \"Details about + the content of a YouTube Video.\",\n \"properties\": {\n \"regionRestriction\": + {\n \"description\": \"The regionRestriction object contains information + about the countries where a video is (or is not) viewable. The object will + contain either the contentDetails.regionRestriction.allowed property or the + contentDetails.regionRestriction.blocked property.\",\n \"$ref\": + \"VideoContentDetailsRegionRestriction\"\n },\n \"duration\": + {\n \"description\": \"The length of the video. The tag value is + an ISO 8601 duration in the format PT#M#S, in which the letters PT indicate + that the value specifies a period of time, and the letters M and S refer to + length in minutes and seconds, respectively. The # characters preceding the + M and S letters are both integers that specify the number of minutes (or seconds) + of the video. For example, a value of PT15M51S indicates that the video is + 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n },\n + \ \"hasCustomThumbnail\": {\n \"description\": \"Indicates + whether the video uploader has provided a custom thumbnail image for the video. + This property is only visible to the video uploader.\",\n \"type\": + \"boolean\"\n },\n \"caption\": {\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"description\": + \"The value of captions indicates whether the video has captions or not.\",\n + \ \"enum\": [\n \"true\",\n \"false\"\n ],\n + \ \"type\": \"string\"\n },\n \"countryRestriction\": + {\n \"description\": \"The countryRestriction object contains information + about the countries where a video is (or is not) viewable.\",\n \"$ref\": + \"AccessPolicy\"\n },\n \"licensedContent\": {\n \"description\": + \"The value of is_license_content indicates whether the video is licensed + content.\",\n \"type\": \"boolean\"\n },\n \"contentRating\": + {\n \"description\": \"Specifies the ratings that the video received + under various rating schemes.\",\n \"$ref\": \"ContentRating\"\n + \ },\n \"definition\": {\n \"description\": \"The value + of definition indicates whether the video is available in high definition + or only in standard definition.\",\n \"enum\": [\n \"sd\",\n + \ \"hd\"\n ],\n \"enumDescriptions\": [\n \"sd\",\n + \ \"hd\"\n ],\n \"type\": \"string\"\n },\n + \ \"projection\": {\n \"description\": \"Specifies the projection + format of the video.\",\n \"enum\": [\n \"rectangular\",\n + \ \"360\"\n ],\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"dimension\": {\n \"description\": \"The value of dimension + indicates whether the video is available in 3D or in 2D.\",\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"PlaylistPlayer\"\n },\n \"LiveChatBanSnippet\": {\n \"id\": \"LiveChatBanSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"liveChatId\": - {\n \"description\": \"The chat this ban is pertinent to.\",\n \"type\": - \"string\"\n },\n \"banDurationSeconds\": {\n \"type\": - \"string\",\n \"description\": \"The duration of a ban, only filled - if the ban has type TEMPORARY.\",\n \"format\": \"uint64\"\n },\n - \ \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"type\": {\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"An invalid ban - type.\",\n \"A permanent ban.\",\n \"A temporary ban.\"\n - \ ],\n \"description\": \"The type of ban.\"\n }\n - \ }\n },\n \"AccessPolicy\": {\n \"description\": \"Rights - management policy for YouTube resources.\",\n \"type\": \"object\",\n - \ \"id\": \"AccessPolicy\",\n \"properties\": {\n \"allowed\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of allowed indicates whether the access to the policy is allowed or denied - by default.\"\n },\n \"exception\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\"\n }\n }\n },\n \"ChannelSection\": {\n \"properties\": - {\n \"localizations\": {\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n }\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the channel section, such as its type, style and title.\",\n - \ \"$ref\": \"ChannelSectionSnippet\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"default\": \"youtube#channelSection\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains details - about the channel section content, such as a list of playlists or channels - featured in the section.\",\n \"$ref\": \"ChannelSectionContentDetails\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"targeting\": {\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\",\n \"$ref\": - \"ChannelSectionTargeting\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ChannelSection\",\n \"type\": \"object\"\n },\n \"VideoFileDetails\": - {\n \"description\": \"Describes original video file properties, including - technical details about audio and video streams, but also metadata information - like content length, digitization time, or geotagging information.\",\n \"id\": - \"VideoFileDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"fileName\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\"\n },\n \"fileType\": {\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"description\": \"The uploaded - file's type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\",\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"type\": \"string\"\n },\n \"bitrateBps\": - {\n \"type\": \"string\",\n \"description\": \"The uploaded - video file's combined (video and audio) bitrate in bits per second.\",\n \"format\": - \"uint64\"\n },\n \"container\": {\n \"description\": - \"The uploaded video file's container format.\",\n \"type\": \"string\"\n - \ },\n \"audioStreams\": {\n \"description\": \"A list - of audio streams contained in the uploaded video file. Each item in the list - contains detailed metadata about an audio stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n },\n \"type\": - \"array\"\n },\n \"creationTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the uploaded video file - was created. The value is specified in ISO 8601 format. Currently, the following - ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"durationMs\": - {\n \"description\": \"The length of the uploaded video in milliseconds.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"videoStreams\": {\n \"description\": \"A list of video - streams contained in the uploaded video file. Each item in the list contains - detailed metadata about a video stream.\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n },\n \"type\": \"array\"\n - \ },\n \"fileSize\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The uploaded file's size in bytes. - This field is present whether a video file or another type of file was uploaded.\"\n - \ }\n }\n },\n \"AbuseReport\": {\n \"type\": \"object\",\n - \ \"id\": \"AbuseReport\",\n \"properties\": {\n \"subject\": - {\n \"$ref\": \"Entity\"\n },\n \"description\": {\n - \ \"type\": \"string\"\n },\n \"relatedEntities\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n }\n },\n \"abuseTypes\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"AbuseType\"\n - \ }\n }\n }\n },\n \"PlaylistLocalization\": {\n - \ \"description\": \"Playlist localization setting\",\n \"id\": \"PlaylistLocalization\",\n - \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for playlist's title.\"\n - \ },\n \"description\": {\n \"description\": \"The localized - strings for playlist's description.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": - {\n \"description\": \"Live broadcast state.\",\n \"type\": \"object\",\n - \ \"id\": \"LiveBroadcastStatus\",\n \"properties\": {\n \"madeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the broadcast is made for kids or not, decided by YouTube instead of the creator. - This field is read only.\"\n },\n \"lifeCycleStatus\": {\n \"description\": - \"The broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"enumDescriptions\": [\n \"No value or the - value is unknown.\",\n \"Incomplete settings, but otherwise valid\",\n - \ \"Complete settings\",\n \"Visible only to partner, - may need special UI treatment\",\n \"Viper is recording; this means - the \\\"clock\\\" is running\",\n \"The broadcast is finished.\",\n - \ \"This broadcast was removed by admin action\",\n \"Transition - into TESTING has been requested\",\n \"Transition into LIVE has - been requested\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ]\n },\n \"recordingStatus\": - {\n \"enumDescriptions\": [\n \"No value or the value - is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"enum\": - [\n \"liveBroadcastRecordingStatusUnspecified\",\n \"notRecording\",\n - \ \"recording\",\n \"recorded\"\n ],\n \"type\": - \"string\",\n \"description\": \"The broadcast's recording status.\"\n - \ },\n \"liveBroadcastPriority\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Low priority - broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ],\n \"description\": \"Priority of the live broadcast - event (internal state).\"\n },\n \"privacyStatus\": {\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"I18nLanguageSnippet\": {\n - \ \"id\": \"I18nLanguageSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\",\n \"properties\": {\n \"name\": {\n \"type\": - \"string\",\n \"description\": \"The human-readable name of the language - in the language itself.\"\n },\n \"hl\": {\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoTopicDetails\": {\n \"description\": - \"Freebase topic information related to the video.\",\n \"type\": \"object\",\n - \ \"id\": \"VideoTopicDetails\",\n \"properties\": {\n \"relevantTopicIds\": - {\n \"type\": \"array\",\n \"description\": \"Similar to - topic_id, except that these topics are merely relevant to the video. These - are topics that may be mentioned in, or appear in the video. You can retrieve - information about each topic using Freebase Topic API.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicIds\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of Freebase - topic IDs that are centrally associated with the video. These are topics that - are centrally featured in the video, and it can be said that the video is - mainly about each of these. You can retrieve information about each topic - using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n },\n \"topicCategories\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of Wikipedia URLs that provide a high-level - description of the video's content.\"\n }\n }\n },\n \"MonitorStreamInfo\": - {\n \"id\": \"MonitorStreamInfo\",\n \"type\": \"object\",\n \"description\": - \"Settings and Info of the monitor stream\",\n \"properties\": {\n \"enableMonitorStream\": - {\n \"description\": \"This value determines whether the monitor - stream is enabled for the broadcast. If the monitor stream is enabled, then - YouTube will broadcast the event content on a special stream intended only - for the broadcaster's consumption. The broadcaster can use the stream to review - the event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"type\": \"boolean\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"embedHtml\": {\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\",\n \"type\": - \"string\"\n },\n \"broadcastStreamDelayMs\": {\n \"format\": - \"uint32\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"If you have set - the enableMonitorStream property to true, then this property determines the - length of the live broadcast delay.\",\n \"type\": \"integer\"\n - \ }\n }\n },\n \"Channel\": {\n \"properties\": {\n - \ \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n \"description\": - \"The statistics object encapsulates statistics for the channel.\"\n },\n - \ \"brandingSettings\": {\n \"description\": \"The brandingSettings - object encapsulates information about the branding of the channel.\",\n \"$ref\": - \"ChannelBrandingSettings\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channel\"\n - \ },\n \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n + \"VideoContentDetails\"\n },\n \"PlaylistItem\": {\n \"description\": + \"A *playlistItem* resource identifies another resource, such as a video, + that is included in a playlist. In addition, the playlistItem resource contains + details about the included resource that pertain specifically to how that + resource is used in that playlist. YouTube uses playlists to identify special + collections of videos for a channel, such as: - uploaded videos - favorite + videos - positively rated (liked) videos - watch history - watch later To + be more specific, these lists are associated with a channel, which is a collection + of a person, group, or company's videos, playlists, and other YouTube information. + You can retrieve the playlist IDs for each of these lists from the channel + resource for a given channel. You can then use the playlistItems.list method + to retrieve any of those lists. You can also add or remove items from those + lists by calling the playlistItems.insert and playlistItems.delete methods. + For example, if a user gives a positive rating to a video, you would insert + that video into the liked videos playlist for that user's channel.\",\n \"id\": + \"PlaylistItem\",\n \"type\": \"object\",\n \"properties\": {\n + \ \"contentDetails\": {\n \"description\": \"The contentDetails + object is included in the resource if the included item is a YouTube video. + The object contains additional information about the video.\",\n \"$ref\": + \"PlaylistItemContentDetails\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the playlist item, such + as its title and position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n + \ \"default\": \"youtube#playlistItem\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the playlist item.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"status\": {\n \"description\": + \"The status object contains information about the playlist item's privacy + status.\",\n \"$ref\": \"PlaylistItemStatus\"\n }\n }\n + \ },\n \"TestItem\": {\n \"properties\": {\n \"id\": {\n + \ \"type\": \"string\"\n },\n \"gaia\": {\n \"format\": + \"int64\",\n \"type\": \"string\"\n },\n \"featuredPart\": + {\n \"type\": \"boolean\"\n },\n \"snippet\": {\n \"$ref\": + \"TestItemTestItemSnippet\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"TestItem\"\n },\n \"MembershipsDuration\": {\n \"type\": + \"object\",\n \"properties\": {\n \"memberTotalDurationMonths\": + {\n \"type\": \"integer\",\n \"description\": \"The cumulative + time the user has been a member across all levels in complete months (the + time is rounded down to the nearest integer).\",\n \"format\": \"int32\"\n + \ },\n \"memberSince\": {\n \"description\": \"The date + and time when the user became a continuous member across all levels.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"MembershipsDuration\"\n + \ },\n \"ActivityContentDetailsPromotedItem\": {\n \"description\": + \"Details about a resource which is being promoted.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"creativeViewUrl\": {\n \"description\": + \"The URL the client should ping to indicate that the user was shown this + promoted item.\",\n \"type\": \"string\"\n },\n \"ctaType\": + {\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"ctaTypeUnspecified\",\n + \ \"visitAdvertiserSite\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The type of call-to-action, a message to the + user indicating action that can be taken.\"\n },\n \"customCtaButtonText\": + {\n \"description\": \"The custom call-to-action button text. If + specified, it will override the default button text for the cta_type.\",\n + \ \"type\": \"string\"\n },\n \"forecastingUrl\": {\n + \ \"description\": \"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.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n },\n \"adTag\": + {\n \"description\": \"The URL the client should fetch to request + a promoted item.\",\n \"type\": \"string\"\n },\n \"impressionUrl\": + {\n \"description\": \"The list of impression URLs. The client should + ping all of these URLs to indicate that the user was shown this promoted item.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"descriptionText\": {\n \"type\": + \"string\",\n \"description\": \"The text description to accompany + the promoted item.\"\n },\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the promoted video.\"\n },\n \"clickTrackingUrl\": + {\n \"description\": \"The URL the client should ping to indicate + that the user clicked through on this promoted item.\",\n \"type\": + \"string\"\n },\n \"destinationUrl\": {\n \"type\": + \"string\",\n \"description\": \"The URL the client should direct + the user to, if the user chooses to visit the advertiser's website.\"\n }\n + \ },\n \"id\": \"ActivityContentDetailsPromotedItem\"\n },\n \"ThumbnailSetResponse\": + {\n \"properties\": {\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n + \ \"default\": \"youtube#thumbnailSetResponse\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"description\": \"A list of thumbnails.\",\n \"items\": + {\n \"$ref\": \"ThumbnailDetails\"\n },\n \"type\": + \"array\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"ThumbnailSetResponse\"\n },\n \"LiveChatMessage\": {\n \"description\": + \"A *liveChatMessage* resource represents a chat message in a YouTube Live + Chat.\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": + \"LiveChatMessageSnippet\",\n \"description\": \"The snippet object + contains basic details about the message.\"\n },\n \"authorDetails\": + {\n \"description\": \"The authorDetails object contains basic details + about the user that posted this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube assigns to uniquely identify the message.\"\n },\n \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"topicDetails\": {\n \"$ref\": - \"ChannelTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the channel.\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the channel, such as its title, description, - and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel.\",\n \"type\": \"string\"\n },\n - \ \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n - \ \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\"\n - \ },\n \"contentOwnerDetails\": {\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"status\": {\n \"description\": \"The status - object encapsulates information about the privacy status of the channel.\",\n - \ \"$ref\": \"ChannelStatus\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object encapsulates information - about the channel's content.\",\n \"$ref\": \"ChannelContentDetails\"\n - \ },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - *channel* resource contains information about a YouTube channel.\",\n \"id\": - \"Channel\"\n },\n \"Caption\": {\n \"description\": \"A *caption* - resource represents a YouTube caption track. A caption track is associated - with exactly one YouTube video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#caption\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the caption track.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n + \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveChatMessage\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LiveChatMessage\"\n },\n \"CdnSettings\": {\n \"id\": + \"CdnSettings\",\n \"type\": \"object\",\n \"description\": \"Brief + description of the live stream cdn settings.\",\n \"properties\": {\n + \ \"frameRate\": {\n \"description\": \"The frame rate of the + inbound video data.\",\n \"enum\": [\n \"30fps\",\n \"60fps\",\n + \ \"variable\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"format\": {\n \"type\": + \"string\",\n \"description\": \"The format of the video stream that + you are sending to Youtube. \",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n + \ ]\n }\n },\n \"resolution\": {\n \"enum\": + [\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n + \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n + \ ],\n \"description\": \"The resolution of the inbound video + data.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"ingestionType\": {\n \"enum\": [\n \"rtmp\",\n + \ \"dash\",\n \"webrtc\",\n \"hls\"\n ],\n + \ \"description\": \" The method or protocol used to transmit the + video stream.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"annotations\": {\n \"required\": [\n + \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n + \ ]\n }\n },\n \"ingestionInfo\": {\n \"description\": + \"The ingestionInfo object contains information that YouTube provides that + you need to transmit your RTMP or HTTP stream to YouTube.\",\n \"$ref\": + \"IngestionInfo\"\n }\n }\n },\n \"LiveChatMessageRetractedDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"retractedMessageId\": + {\n \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\"\n + \ },\n \"PlaylistItemSnippet\": {\n \"type\": \"object\",\n \"properties\": + {\n \"channelId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the user that added the item to the playlist.\",\n + \ \"type\": \"string\"\n },\n \"position\": {\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The order in which the item appears in the playlist. The value uses a zero-based + index, so the first item has a position of 0, the second item has a position + of 1, and so forth.\"\n },\n \"playlistId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist + item is in.\",\n \"annotations\": {\n \"required\": [\n + \ \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n \ ]\n },\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n - \ }\n },\n \"id\": \"Caption\"\n },\n \"LiveStreamListResponse\": - {\n \"id\": \"LiveStreamListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve + \ \"description\": {\n \"type\": \"string\",\n \"description\": + \"The item's description.\"\n },\n \"videoOwnerChannelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel this video belongs to.\"\n },\n \"videoOwnerChannelId\": + {\n \"description\": \"Channel id for the channel this video belongs + to.\",\n \"type\": \"string\"\n },\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"annotations\": {\n \"required\": + [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n + \ ]\n },\n \"description\": \"The id object contains + information that can be used to uniquely identify the resource that is included + in the playlist as the playlist item.\"\n },\n \"title\": {\n + \ \"type\": \"string\",\n \"description\": \"The item's title.\"\n + \ },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel title for the channel that the playlist + item belongs to.\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time that the item was added to the playlist.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A + map of thumbnail images associated with the playlist item. 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.\"\n }\n + \ },\n \"id\": \"PlaylistItemSnippet\",\n \"description\": \"Basic + details about a playlist, including title, description and thumbnails. Basic + details of a YouTube Playlist item provided by the author. Next ID: 15\"\n + \ },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n + \ \"properties\": {\n \"memberLevelName\": {\n \"description\": + \"The name of the Level at which the viewer is a member. This matches the + `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated + membership gifting message. The Level names are defined by the YouTube channel + offering the Membership. In some situations this field isn't filled.\",\n + \ \"type\": \"string\"\n },\n \"gifterChannelId\": {\n + \ \"type\": \"string\",\n \"description\": \"The ID of the + user that made the membership gifting purchase. This matches the `snippet.authorChannelId` + of the associated membership gifting message.\"\n },\n \"associatedMembershipGiftingMessageId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the membership gifting message that is related to this gift membership. This + ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatNewSponsorDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"isUpgrade\": + {\n \"type\": \"boolean\",\n \"description\": \"If the viewer + just had upgraded from a lower level. For viewers that were not members at + the time of purchase, this field is false.\"\n },\n \"memberLevelName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the Level that the viewer just had joined. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\"\n }\n },\n \"id\": \"LiveChatNewSponsorDetails\"\n + \ },\n \"SearchListResponse\": {\n \"id\": \"SearchListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n + \ \"type\": \"string\",\n \"default\": \"youtube#searchListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#searchListResponse\\\".\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"regionCode\": {\n \"type\": \"string\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"SearchResult\"\n },\n \"type\": \"array\",\n \"description\": + \"Pagination information for token pagination.\"\n }\n }\n },\n + \ \"VideoStatistics\": {\n \"properties\": {\n \"likeCount\": + {\n \"type\": \"string\",\n \"description\": \"The number + of users who have indicated that they liked the video by giving it a positive + rating.\",\n \"format\": \"uint64\"\n },\n \"favoriteCount\": + {\n \"type\": \"string\",\n \"description\": \"The number + of users who currently have the video marked as a favorite video.\",\n \"format\": + \"uint64\"\n },\n \"dislikeCount\": {\n \"format\": + \"uint64\",\n \"description\": \"The number of users who have indicated + that they disliked the video by giving it a negative rating.\",\n \"type\": + \"string\"\n },\n \"viewCount\": {\n \"description\": + \"The number of times the video has been viewed.\",\n \"format\": + \"uint64\",\n \"type\": \"string\"\n },\n \"commentCount\": + {\n \"description\": \"The number of comments for the video.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n + \ },\n \"description\": \"Statistics about the video, such as the + number of times the video was viewed or liked.\",\n \"type\": \"object\",\n + \ \"id\": \"VideoStatistics\"\n },\n \"ActivityContentDetails\": + {\n \"properties\": {\n \"comment\": {\n \"description\": + \"The comment object contains information about a resource that received a + comment. This property is only present if the snippet.type is comment.\",\n + \ \"$ref\": \"ActivityContentDetailsComment\"\n },\n \"channelItem\": + {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n \"description\": + \"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.\"\n + \ },\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n + \ \"description\": \"The bulletin object contains details about a + channel bulletin post. This object is only present if the snippet.type is + bulletin.\"\n },\n \"upload\": {\n \"$ref\": \"ActivityContentDetailsUpload\",\n + \ \"description\": \"The upload object contains information about + the uploaded video. This property is only present if the snippet.type is upload.\"\n + \ },\n \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n + \ \"description\": \"The playlistItem object contains information + about a new playlist item. This property is only present if the snippet.type + is playlistItem.\"\n },\n \"recommendation\": {\n \"description\": + \"The recommendation object contains information about a recommended resource. + This property is only present if the snippet.type is recommendation.\",\n + \ \"$ref\": \"ActivityContentDetailsRecommendation\"\n },\n + \ \"social\": {\n \"$ref\": \"ActivityContentDetailsSocial\",\n + \ \"description\": \"The social object contains details about a social + network post. This property is only present if the snippet.type is social.\"\n + \ },\n \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n + \ \"description\": \"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.\"\n },\n \"like\": {\n \"description\": + \"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.\",\n + \ \"$ref\": \"ActivityContentDetailsLike\"\n },\n \"subscription\": + {\n \"description\": \"The subscription object contains information + about a channel that a user subscribed to. This property is only present if + the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n + \ },\n \"promotedItem\": {\n \"description\": \"The + promotedItem object contains details about a resource which is being promoted. + This property is only present if the snippet.type is promotedItem.\",\n \"$ref\": + \"ActivityContentDetailsPromotedItem\"\n }\n },\n \"id\": + \"ActivityContentDetails\",\n \"description\": \"Details about the content + of an activity: the video that was shared, the channel that was subscribed + to, etc.\",\n \"type\": \"object\"\n },\n \"SuperChatEventListResponse\": + {\n \"id\": \"SuperChatEventListResponse\",\n \"properties\": {\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n },\n + \ \"type\": \"array\",\n \"description\": \"A list of Super + Chat purchases that match the request criteria.\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#superChatEventListResponse\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsBulletin\": + {\n \"description\": \"Details about a channel bulletin post.\",\n \"type\": + \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + associated with a bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": + \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsBulletin\"\n + \ },\n \"LiveBroadcastContentDetails\": {\n \"type\": \"object\",\n + \ \"description\": \"Detailed settings of a broadcast.\",\n \"properties\": + {\n \"startWithSlate\": {\n \"type\": \"boolean\",\n \"description\": + \"This setting indicates whether the broadcast should automatically begin + with an in-stream slate when you update the broadcast's status to live. After + updating the status, you then need to send a liveCuepoints.insert request + that sets the cuepoint's eventState to end to remove the in-stream slate and + make your broadcast stream visible to viewers.\"\n },\n \"recordFromStart\": + {\n \"type\": \"boolean\",\n \"description\": \"Automatically + start recording after the event goes live. The default value for this property + is true. *Important:* You must also set the enableDvr property's value to + true if you want the playback to be available immediately after the broadcast + ends. If you set this property's value to true but do not also set the enableDvr + property to true, there may be a delay of around one day before the archived + video will be available for playback.\"\n },\n \"closedCaptionsType\": + {\n \"type\": \"string\",\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n + \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n + \ \"closedCaptionsEmbedded\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"boundStreamId\": {\n \"description\": + \"This value uniquely identifies the live stream bound to the broadcast.\",\n + \ \"type\": \"string\"\n },\n \"monitorStream\": {\n + \ \"$ref\": \"MonitorStreamInfo\",\n \"description\": \"The + monitorStream object contains information about the monitor stream, which + the broadcaster can use to review the event content before the broadcast stream + is shown publicly.\"\n },\n \"enableAutoStart\": {\n \"type\": + \"boolean\",\n \"description\": \"This setting indicates whether + auto start is enabled for this broadcast. The default value for this property + is false. This setting can only be used by Events.\"\n },\n \"stereoLayout\": + {\n \"description\": \"The 3D stereo layout of this broadcast. This + defaults to mono.\",\n \"type\": \"string\",\n \"enum\": + [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n + \ \"topBottom\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"latencyPreference\": {\n \"enumDescriptions\": + [\n \"\",\n \"Best for: highest quality viewer playbacks + and higher resolutions.\",\n \"Best for: near real-time interaction, + with minimal playback buffering.\",\n \"Best for: real-time interaction + Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n + \ \"enum\": [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n + \ \"low\",\n \"ultraLow\"\n ],\n \"description\": + \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL + should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true + LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"type\": + \"string\"\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"description\": + \"The date and time that the live stream referenced by boundStreamId was last + updated.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n + \ },\n \"enableAutoStop\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether auto stop is enabled + for this broadcast. The default value for this property is false. This setting + can only be used by Events.\"\n },\n \"projection\": {\n \"type\": + \"string\",\n \"description\": \"The projection format of this broadcast. + This defaults to rectangular.\",\n \"enum\": [\n \"projectionUnspecified\",\n + \ \"rectangular\",\n \"360\",\n \"mesh\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"enableContentEncryption\": + {\n \"description\": \"This setting indicates whether YouTube should + enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n + \ },\n \"enableClosedCaptions\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether HTTP POST closed + captioning is enabled for this broadcast. The ingestion URL of the closed + captions is returned through the liveStreams API. This is mutually exclusive + with using the closed_captions_type property, and is equivalent to setting + closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n \"mesh\": + {\n \"type\": \"string\",\n \"format\": \"byte\",\n \"description\": + \"The mesh for projecting the video if projection is mesh. The mesh value + must be a UTF-8 string containing the base-64 encoding of 3D mesh data that + follows the Spherical Video V2 RFC specification for an mshp box, excluding + the box size and type but including the following four reserved zero bytes + for the version and flags.\"\n },\n \"enableDvr\": {\n \"description\": + \"This setting determines whether viewers can access DVR controls while watching + the video. DVR controls enable the viewer to control the video playback experience + by pausing, rewinding, or fast forwarding content. The default value for this + property is true. *Important:* You must set the value to true and also set + the enableArchive property's value to true if you want to make playback available + immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n + \ },\n \"enableLowLatency\": {\n \"description\": \"Indicates + whether this broadcast has low latency enabled.\",\n \"type\": \"boolean\"\n + \ },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether the broadcast + video can be played in an embedded player. If you choose to archive the video + (using the enableArchive property), this setting will also apply to the archived + video.\"\n }\n },\n \"id\": \"LiveBroadcastContentDetails\"\n + \ },\n \"PlaylistListResponse\": {\n \"properties\": {\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveStreamListResponse\",\n \"type\": + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"default\": \"youtube#playlistListResponse\",\n \"type\": \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of live streams that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n + this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"items\": {\n \"description\": + \"A list of playlists that match the request criteria\",\n \"items\": + {\n \"$ref\": \"Playlist\"\n },\n \"type\": \"array\"\n + \ }\n },\n \"id\": \"PlaylistListResponse\",\n \"type\": + \"object\"\n },\n \"ThirdPartyLinkListResponse\": {\n \"properties\": + {\n \"items\": {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n \ },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ActivityContentDetailsUpload\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsUpload\",\n - \ \"description\": \"Information about the uploaded video.\",\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\"\n }\n - \ }\n },\n \"ActivityContentDetailsComment\": {\n \"id\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"Information about a resource that received a comment.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with the - comment.\"\n }\n }\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"channelId\": - {\n \"description\": \"The channel ID of the subscriber.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"Thumbnails for this subscriber.\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the subscriber.\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The title of - the subscriber.\"\n }\n },\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"Basic details about a subscription's subscriber including - title, description, channel ID and thumbnails.\"\n },\n \"ChannelConversionPings\": - {\n \"properties\": {\n \"pings\": {\n \"description\": - \"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.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n }\n }\n },\n \"id\": - \"ChannelConversionPings\",\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"type\": \"object\"\n },\n \"Member\": {\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the member.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#member\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"description\": \"A - *member* resource represents a member for a YouTube channel. A member provides - recurring monetary support to a creator and receives special benefits.\",\n - \ \"id\": \"Member\",\n \"type\": \"object\"\n },\n \"VideoAbuseReportReason\": - {\n \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"id\": \"VideoAbuseReportReason\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#videoAbuseReportReason\",\n + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of this abuse report reason.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"isChatOwner\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is the owner of the live chat.\"\n },\n \"profileImageUrl\": - {\n \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The channel's display name.\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"isChatModerator\": - {\n \"description\": \"Whether the author is a moderator of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"isVerified\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author's identity has been verified by YouTube.\"\n },\n \"isChatSponsor\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is a sponsor of the live chat.\"\n }\n },\n \"id\": - \"LiveChatMessageAuthorDetails\"\n },\n \"VideoStatus\": {\n \"properties\": - {\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"embeddable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value indicates if the video can be embedded - on another website. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"uploadStatus\": {\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ],\n \"description\": \"The status - of the uploaded video.\",\n \"enumDescriptions\": [\n \"Video - has been uploaded but not processed yet.\",\n \"Video has been - successfully processed.\",\n \"Processing has failed. See FailureReason.\",\n - \ \"Video has been rejected. See RejectionReason.\",\n \"Video - has been deleted.\"\n ],\n \"type\": \"string\"\n },\n - \ \"publishAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time when the video - is scheduled to publish. It can be set only if the privacy status of the video - is private..\"\n },\n \"license\": {\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ]\n },\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The video's privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"rejectionReason\": - {\n \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ],\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"This value explains why YouTube rejected an uploaded - video. This property is only present if the uploadStatus property indicates - that the upload was rejected.\"\n },\n \"failureReason\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ],\n \"description\": - \"This value explains why a video failed to upload. This property is only - present if the uploadStatus property indicates that the upload failed.\",\n - \ \"enumDescriptions\": [\n \"Unable to convert video content.\",\n - \ \"Invalid file format.\",\n \"Empty file.\",\n \"File - was too small.\",\n \"Unsupported codec.\",\n \"Upload - wasn't finished.\"\n ]\n },\n \"publicStatsViewable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n - \ }\n },\n \"description\": \"Basic details about a video - category, such as its localized title. Next Id: 18\",\n \"id\": \"VideoStatus\",\n - \ \"type\": \"object\"\n },\n \"Subscription\": {\n \"description\": - \"A *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\",\n \"id\": \"Subscription\",\n + the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"ThirdPartyLinkListResponse\",\n + \ \"type\": \"object\"\n },\n \"Comment\": {\n \"description\": + \"A *comment* represents a single YouTube comment.\",\n \"id\": \"Comment\",\n \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#subscription\\\".\",\n \"default\": - \"youtube#subscription\",\n \"type\": \"string\"\n },\n \"id\": + of this resource.\",\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the subscription.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"SubscriptionContentDetails\",\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\"\n - \ },\n \"subscriberSnippet\": {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"The subscriberSnippet object contains basic details - about the subscriber.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelContentDetails\": {\n \"description\": \"Details - about the content of a channel.\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"type\": \"object\",\n \"properties\": {\n \"watchHistory\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"uploads\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use - the videos.insert method to upload new videos and the videos.delete method - to delete previously uploaded videos.\",\n \"type\": \"string\"\n - \ },\n \"favorites\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s favorite videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n },\n \"likes\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"watchLater\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\",\n \"type\": \"string\"\n }\n }\n - \ }\n },\n \"id\": \"ChannelContentDetails\",\n \"type\": - \"object\"\n },\n \"TestItem\": {\n \"properties\": {\n \"gaia\": - {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n - \ \"featuredPart\": {\n \"type\": \"boolean\"\n },\n - \ \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"TestItem\",\n \"type\": \"object\"\n },\n - \ \"ActivityContentDetailsPromotedItem\": {\n \"properties\": {\n \"creativeViewUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user was shown this promoted item.\",\n \"type\": \"string\"\n - \ },\n \"destinationUrl\": {\n \"description\": \"The - URL the client should direct the user to, if the user chooses to visit the - advertiser's website.\",\n \"type\": \"string\"\n },\n \"impressionUrl\": - {\n \"type\": \"array\",\n \"description\": \"The list of - impression URLs. The client should ping all of these URLs to indicate that - the user was shown this promoted item.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"clickTrackingUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user clicked through - on this promoted item.\",\n \"type\": \"string\"\n },\n \"videoId\": + YouTube uses to uniquely identify the comment.\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the comment.\",\n \"$ref\": \"CommentSnippet\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n \"default\": + \"youtube#comment\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"ActivitySnippet\": {\n \"type\": + \"object\",\n \"id\": \"ActivitySnippet\",\n \"description\": \"Basic + details about an activity, including title, description, thumbnails, activity + type and group. Next ID: 12\",\n \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the promoted video.\"\n },\n \"forecastingUrl\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"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.\"\n },\n - \ \"customCtaButtonText\": {\n \"type\": \"string\",\n \"description\": - \"The custom call-to-action button text. If specified, it will override the - default button text for the cta_type.\"\n },\n \"adTag\": {\n - \ \"type\": \"string\",\n \"description\": \"The URL the - client should fetch to request a promoted item.\"\n },\n \"ctaType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of call-to-action, a message - to the user indicating action that can be taken.\",\n \"enum\": [\n - \ \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"type\": \"string\"\n },\n \"descriptionText\": - {\n \"description\": \"The text description to accompany the promoted - item.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ActivityContentDetailsPromotedItem\",\n \"type\": \"object\",\n \"description\": - \"Details about a resource which is being promoted.\"\n },\n \"SubscriptionContentDetails\": - {\n \"type\": \"object\",\n \"description\": \"Details about the - content to witch a subscription refers.\",\n \"properties\": {\n \"totalItemCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The approximate - number of items that the subscription points to.\",\n \"type\": \"integer\"\n - \ },\n \"activityType\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"newItemCount\": {\n \"description\": - \"The number of new items in the subscription since its content was last read.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n }\n - \ },\n \"id\": \"SubscriptionContentDetails\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"properties\": {\n \"seedResourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The seedResourceId object contains - information about the resource that caused the recommendation.\"\n },\n - \ \"reason\": {\n \"type\": \"string\",\n \"enum\": - [\n \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"description\": \"The - reason that the resource is recommended to the user.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"id\": - \"ActivityContentDetailsRecommendation\",\n \"description\": \"Information - that identifies the recommended resource.\",\n \"type\": \"object\"\n - \ },\n \"SubscriptionListResponse\": {\n \"id\": \"SubscriptionListResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Subscription\"\n },\n \"description\": - \"A list of subscriptions that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"default\": \"youtube#subscriptionListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoProjectDetails\": {\n \"properties\": - {},\n \"id\": \"VideoProjectDetails\",\n \"description\": \"DEPRECATED. - b/157517979: This part was never populated after it was added. However, it - sees non-zero traffic because there is generated client code in the wild that - refers to it [1]. We keep this field and do NOT remove it because otherwise - V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"type\": \"object\"\n },\n \"MembershipsLevelSnippet\": {\n \"id\": - \"MembershipsLevelSnippet\",\n \"properties\": {\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering channel memberships.\"\n },\n \"levelDetails\": - {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details - about the pricing level.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ActivitySnippet\": {\n \"properties\": {\n \"thumbnails\": - {\n \"description\": \"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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": {\n \"description\": - \"The description of the resource primarily associated with the activity. - @mutable youtube.activities.insert\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"description\": \"The title of the resource - primarily associated with the activity.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel associated with - the activity.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"typeUnspecified\",\n + YouTube uses to uniquely identify the channel associated with the activity.\"\n + \ },\n \"type\": {\n \"enum\": [\n \"typeUnspecified\",\n \ \"upload\",\n \"like\",\n \"favorite\",\n \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n \ \"recommendation\",\n \"bulletin\",\n \"social\",\n \ \"channelItem\",\n \"promotedItem\"\n ],\n - \ \"description\": \"The type of activity that the resource describes.\"\n - \ },\n \"channelTitle\": {\n \"description\": \"Channel - title for the channel responsible for this activity\",\n \"type\": - \"string\"\n },\n \"groupId\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the video was uploaded.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ActivitySnippet\",\n \"description\": - \"Basic details about an activity, including title, description, thumbnails, - activity type and group. Next ID: 12\",\n \"type\": \"object\"\n },\n - \ \"ChannelLocalization\": {\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel's title.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - description.\"\n }\n },\n \"id\": \"ChannelLocalization\",\n - \ \"type\": \"object\",\n \"description\": \"Channel localization - setting\"\n },\n \"LiveChatModeratorListResponse\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatModeratorListResponse\",\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of moderators that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n }\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"CommentThread\": {\n \"description\": \"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.\",\n - \ \"id\": \"CommentThread\",\n \"type\": \"object\",\n \"properties\": - {\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n - \ \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#commentThread\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentThread\\\".\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the comment thread and also the top level comment.\",\n - \ \"$ref\": \"CommentThreadSnippet\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment thread.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"I18nLanguage\": {\n \"type\": - \"object\",\n \"id\": \"I18nLanguage\",\n \"description\": \"An - *i18nLanguage* resource identifies a UI language currently supported by YouTube.\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n language, such as language code and human-readable name.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n language.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nLanguage\"\n - \ }\n }\n },\n \"ActivityContentDetailsFavorite\": {\n \"id\": - \"ActivityContentDetailsFavorite\",\n \"description\": \"Information - about a video that was marked as a favorite video.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource that was marked as a favorite.\"\n }\n }\n - \ },\n \"Entity\": {\n \"properties\": {\n \"typeId\": {\n - \ \"type\": \"string\"\n },\n \"url\": {\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Entity\"\n - \ },\n \"VideoSnippet\": {\n \"properties\": {\n \"categoryId\": - {\n \"description\": \"The YouTube video category associated with - the video.\",\n \"type\": \"string\"\n },\n \"tags\": - {\n \"description\": \"A list of keyword tags associated with the - video. Tags may contain spaces.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that the video was uploaded - to.\"\n },\n \"defaultAudioLanguage\": {\n \"description\": - \"The default_audio_language property specifies the language spoken in the - video's default audio track.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The video's title. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the videos's default snippet.\"\n - \ },\n \"localized\": {\n \"$ref\": \"VideoLocalization\",\n - \ \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the video belongs to.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The video's description. @mutable - youtube.videos.insert youtube.videos.update\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the video was uploaded.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"liveBroadcastContent\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ],\n - \ \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic details about a video, including title, description, uploader, thumbnails - and category.\",\n \"id\": \"VideoSnippet\"\n },\n \"ChannelSnippet\": - {\n \"properties\": {\n \"customUrl\": {\n \"description\": - \"The custom url of the channel.\",\n \"type\": \"string\"\n },\n + \ \"description\": \"The type of activity that the resource describes.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\"\n },\n - \ \"country\": {\n \"description\": \"The country of the channel.\",\n - \ \"type\": \"string\"\n },\n \"defaultLanguage\": {\n - \ \"type\": \"string\",\n \"description\": \"The language - of the channel's default title and description.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the channel.\"\n },\n \"title\": {\n \"description\": - \"The channel's title.\",\n \"type\": \"string\"\n },\n \"localized\": + \"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.\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The description of the resource + primarily associated with the activity. @mutable youtube.activities.insert\"\n + \ },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel title for the channel responsible for + this activity\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time that the video + was uploaded.\",\n \"type\": \"string\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The title + of the resource primarily associated with the activity.\"\n },\n \"groupId\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n + \ }\n }\n },\n \"LiveChatUserBannedMessageDetails\": {\n + \ \"id\": \"LiveChatUserBannedMessageDetails\",\n \"properties\": + {\n \"banType\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"description\": \"The type of ban.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"permanent\",\n + \ \"temporary\"\n ]\n },\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": + \"The details of the user that was banned.\"\n },\n \"banDurationSeconds\": + {\n \"type\": \"string\",\n \"description\": \"The duration + of the ban. This property is only present if the banType is temporary.\",\n + \ \"format\": \"uint64\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"LiveChatBanSnippet\": {\n \"properties\": {\n \"banDurationSeconds\": + {\n \"description\": \"The duration of a ban, only filled if the + ban has type TEMPORARY.\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n },\n \"liveChatId\": {\n \"type\": \"string\",\n + \ \"description\": \"The chat this ban is pertinent to.\"\n },\n + \ \"type\": {\n \"description\": \"The type of ban.\",\n \"enumDescriptions\": + [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n + \ \"A temporary ban.\"\n ],\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n + \ \"permanent\",\n \"temporary\"\n ],\n \"type\": + \"string\"\n },\n \"bannedUserDetails\": {\n \"$ref\": + \"ChannelProfileDetails\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LiveChatBanSnippet\"\n },\n \"PropertyValue\": {\n \"properties\": + {\n \"value\": {\n \"type\": \"string\",\n \"description\": + \"The property's value.\"\n },\n \"property\": {\n \"description\": + \"A property.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"A pair Property / Value.\",\n \"id\": + \"PropertyValue\"\n },\n \"ChannelSnippet\": {\n \"description\": + \"Basic details about a channel, including title, description and thumbnails.\",\n + \ \"type\": \"object\",\n \"id\": \"ChannelSnippet\",\n \"properties\": + {\n \"defaultLanguage\": {\n \"description\": \"The language + of the channel's default title and description.\",\n \"type\": \"string\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The channel's title.\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time that the channel was created.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the channel was created.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelSnippet\",\n - \ \"description\": \"Basic details about a channel, including title, description - and thumbnails.\"\n },\n \"SuperStickerMetadata\": {\n \"properties\": - {\n \"stickerId\": {\n \"type\": \"string\",\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\"\n - \ },\n \"altText\": {\n \"type\": \"string\",\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\"\n },\n \"altTextLanguage\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the localization language - in which the alt text is returned.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"SuperStickerMetadata\"\n },\n \"VideoListResponse\": - {\n \"id\": \"VideoListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Localized title and description, read-only.\"\n },\n \"description\": + {\n \"description\": \"The description of the channel.\",\n \"type\": + \"string\"\n },\n \"customUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The custom url of the channel.\"\n },\n + \ \"country\": {\n \"type\": \"string\",\n \"description\": + \"The country of the channel.\"\n },\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails in your application, make + sure that your code uses the image URLs exactly as they are returned in API + responses. For example, your application should not use the http domain instead + of the https domain in a URL returned in an API response. Beginning in July + 2018, channel thumbnail URLs will only be available in the https domain, which + is how the URLs appear in API responses. After that time, you might see broken + images in your application if it tries to load YouTube images from the http + domain. Thumbnail images might be empty for newly created channels and might + take up to one day to populate.\"\n }\n }\n },\n \"CommentListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Video\"\n - \ },\n \"type\": \"array\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"default\": \"youtube#videoListResponse\",\n \"type\": - \"string\"\n }\n }\n },\n \"SuperChatEventSnippet\": {\n - \ \"id\": \"SuperChatEventSnippet\",\n \"properties\": {\n \"supporterDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the supporter.\"\n },\n \"displayString\": {\n - \ \"description\": \"A rendered string that displays the purchase - amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the - given language.\",\n \"type\": \"string\"\n },\n \"messageType\": - {\n \"type\": \"integer\",\n \"description\": \"The tier - for the paid message, which is based on the amount of money spent to purchase - the message.\",\n \"format\": \"uint32\"\n },\n \"commentText\": - {\n \"type\": \"string\",\n \"description\": \"The text - contents of the comment left by the user.\"\n },\n \"channelId\": - {\n \"description\": \"Channel id where the event occurred.\",\n - \ \"type\": \"string\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\"\n },\n \"amountMicros\": {\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\"\n },\n \"isSuperStickerEvent\": - {\n \"type\": \"boolean\",\n \"description\": \"True if - this event is a Super Sticker event.\"\n },\n \"createdAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the event occurred.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"MembershipsLevel\": - {\n \"id\": \"MembershipsLevel\",\n \"description\": \"A *membershipsLevel* - resource represents an offer made by YouTube creators for their fans. Users - can become members of the channel by joining one of the available levels. - They will provide recurring monetary support and receives special benefits.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the memberships level.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the level.\",\n \"$ref\": - \"MembershipsLevelSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#membershipsLevel\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ }\n }\n },\n \"ActivityContentDetailsChannelItem\": {\n - \ \"id\": \"ActivityContentDetailsChannelItem\",\n \"description\": - \"Details about a resource which was added to a channel.\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"TestItemTestItemSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"TestItemTestItemSnippet\",\n \"properties\": {}\n },\n - \ \"LocalizedProperty\": {\n \"properties\": {\n \"default\": - {\n \"type\": \"string\"\n },\n \"localized\": {\n - \ \"items\": {\n \"$ref\": \"LocalizedString\"\n },\n - \ \"type\": \"array\"\n },\n \"defaultLanguage\": {\n - \ \"description\": \"The language of the default property.\",\n \"$ref\": - \"LanguageTag\"\n }\n },\n \"id\": \"LocalizedProperty\",\n - \ \"type\": \"object\"\n },\n \"ChannelBannerResource\": {\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\"\n },\n \"url\": {\n \"description\": \"The - URL of this banner image.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ChannelBannerResource\",\n \"description\": \"A channel - banner returned as the response to a channel_banner.insert call.\"\n },\n - \ \"LiveBroadcast\": {\n \"type\": \"object\",\n \"description\": - \"A *liveBroadcast* resource represents an event that will be streamed, via - live video, on YouTube.\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n + \ \"type\": \"array\",\n \"description\": \"A list of comments + that match the request criteria.\"\n },\n \"kind\": {\n \"default\": + \"youtube#commentListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n + \ },\n \"id\": \"CommentListResponse\"\n },\n \"I18nRegionListResponse\": + {\n \"id\": \"I18nRegionListResponse\",\n \"properties\": {\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveBroadcast\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n - \ },\n \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"The statistics object contains info about the - event's current stats. These include concurrent viewers and total chat count. - Statistics can change (in either direction) during the lifetime of an event. - Statistics are only returned while the event is live.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the broadcast.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the event, including its title, description, start time, and end time.\",\n - \ \"$ref\": \"LiveBroadcastSnippet\"\n },\n \"status\": - {\n \"$ref\": \"LiveBroadcastStatus\",\n \"description\": - \"The status object contains information about the event's status.\"\n }\n - \ },\n \"id\": \"LiveBroadcast\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"description\": \"Basic details about a video category, such as - its localized title.\",\n \"properties\": {\n \"secondaryReasons\": - {\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"type\": \"array\",\n \"description\": \"The - secondary reasons associated with this reason, if any are available. (There - might be 0 or more.)\"\n },\n \"label\": {\n \"description\": - \"The localized label belonging to this abuse report reason.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"type\": \"object\"\n },\n \"VideoCategory\": {\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"default\": + \"youtube#i18nRegionListResponse\"\n },\n \"visitorId\": {\n + \ \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"description\": \"A list of regions where YouTube is + available. In this map, the i18n region ID is the map key, and its value is + the corresponding i18nRegion resource.\",\n \"items\": {\n \"$ref\": + \"I18nRegion\"\n }\n }\n },\n \"type\": \"object\"\n + \ },\n \"SuperStickerMetadata\": {\n \"id\": \"SuperStickerMetadata\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"altTextLanguage\": + {\n \"type\": \"string\",\n \"description\": \"Specifies + the localization language in which the alt text is returned.\"\n },\n + \ \"altText\": {\n \"type\": \"string\",\n \"description\": + \"Internationalized alt text that describes the sticker image and any animation + associated with it.\"\n },\n \"stickerId\": {\n \"description\": + \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text + that includes pack name and a recognizable characteristic of the sticker.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"MembershipsDetails\": + {\n \"id\": \"MembershipsDetails\",\n \"properties\": {\n \"membershipsDurationAtLevels\": + {\n \"description\": \"Data about memberships duration on particular + pricing levels.\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n + \ },\n \"type\": \"array\"\n },\n \"accessibleLevels\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"Ids of all levels that the user has access to. + This includes the currently active level and all other levels that are included + because of a higher purchase.\",\n \"type\": \"array\"\n },\n + \ \"highestAccessibleLevelDisplayName\": {\n \"type\": \"string\",\n + \ \"description\": \"Display name for the highest level that the user + has access to at the moment.\"\n },\n \"membershipsDuration\": + {\n \"description\": \"Data about memberships duration without taking + into consideration pricing levels.\",\n \"$ref\": \"MembershipsDuration\"\n + \ },\n \"highestAccessibleLevel\": {\n \"type\": \"string\",\n + \ \"description\": \"Id of the highest level that the user has access + to at the moment.\"\n }\n },\n \"type\": \"object\"\n },\n + \ \"ActivityContentDetailsUpload\": {\n \"properties\": {\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the uploaded video.\"\n }\n },\n + \ \"id\": \"ActivityContentDetailsUpload\",\n \"description\": \"Information + about the uploaded video.\",\n \"type\": \"object\"\n },\n \"RelatedEntity\": + {\n \"id\": \"RelatedEntity\",\n \"properties\": {\n \"entity\": + {\n \"$ref\": \"Entity\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"Video\": {\n \"description\": \"A *video* resource represents + a YouTube video.\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": + \"VideoSnippet\",\n \"description\": \"The snippet object contains + basic details about the video, such as its title, description, and category.\"\n + \ },\n \"topicDetails\": {\n \"$ref\": \"VideoTopicDetails\",\n + \ \"description\": \"The topicDetails object encapsulates information + about Freebase topics associated with the video.\"\n },\n \"localizations\": + {\n \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n + \ },\n \"description\": \"The localizations object contains + localized versions of the basic details about the video, such as its title + and description.\",\n \"type\": \"object\"\n },\n \"recordingDetails\": + {\n \"description\": \"The recordingDetails object encapsulates information + about the location, date and address where the video was recorded.\",\n \"$ref\": + \"VideoRecordingDetails\"\n },\n \"processingDetails\": {\n + \ \"description\": \"The processingDetails object encapsulates information + about YouTube's progress in processing the uploaded video file. The properties + in the object identify the current processing status and an estimate of the + time remaining until YouTube finishes processing the video. This part also + indicates whether different types of data or content, such as file details + or thumbnail images, are available for the video. The processingProgress object + is designed to be polled so that the video uploaded can track the progress + that YouTube has made in processing the uploaded video file. This data can + only be retrieved by the video owner.\",\n \"$ref\": \"VideoProcessingDetails\"\n + \ },\n \"contentDetails\": {\n \"$ref\": \"VideoContentDetails\",\n + \ \"description\": \"The contentDetails object contains information + about the video content, including the length of the video and its aspect + ratio.\"\n },\n \"status\": {\n \"description\": \"The + status object contains information about the video's uploading, processing, + and privacy statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n + \ \"ageGating\": {\n \"description\": \"Age restriction details + related to a video. This data can only be retrieved by the video owner.\",\n + \ \"$ref\": \"VideoAgeGating\"\n },\n \"monetizationDetails\": + {\n \"description\": \"The monetizationDetails object encapsulates + information about the monetization status of the video.\",\n \"$ref\": + \"VideoMonetizationDetails\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#video\\\".\",\n \"default\": + \"youtube#video\"\n },\n \"player\": {\n \"description\": + \"The player object contains information that you would use to play the video + in an embedded player.\",\n \"$ref\": \"VideoPlayer\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.videos.update\"\n + \ ]\n }\n },\n \"liveStreamingDetails\": + {\n \"description\": \"The liveStreamingDetails object contains metadata + about a live video broadcast. The object will only be present in a video resource + if the video is an upcoming, live, or completed live broadcast.\",\n \"$ref\": + \"VideoLiveStreamingDetails\"\n },\n \"statistics\": {\n \"$ref\": + \"VideoStatistics\",\n \"description\": \"The statistics object contains + statistics about the video.\"\n },\n \"fileDetails\": {\n \"description\": + \"The fileDetails object encapsulates information about the video file that + was uploaded to YouTube, including the file's resolution, duration, audio + and video codecs, stream bitrates, and more. This data can only be retrieved + by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n },\n + \ \"projectDetails\": {\n \"description\": \"The projectDetails + object contains information about the project specific video metadata. b/157517979: + This part was never populated after it was added. However, it sees non-zero + traffic because there is generated client code in the wild that refers to + it [1]. We keep this field and do NOT remove it because otherwise V3 would + return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"$ref\": \"VideoProjectDetails\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"suggestions\": {\n \"description\": + \"The suggestions object encapsulates suggestions that identify opportunities + to improve the video quality or the metadata for the uploaded video. This + data can only be retrieved by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n + \ }\n },\n \"id\": \"Video\",\n \"type\": \"object\"\n + \ },\n \"CommentThreadSnippet\": {\n \"type\": \"object\",\n \"description\": + \"Basic details about a comment thread.\",\n \"properties\": {\n \"canReply\": + {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n + \ \"topLevelComment\": {\n \"description\": \"The top level + comment of this thread.\",\n \"$ref\": \"Comment\"\n },\n + \ \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the video the comments refer to, if any. No video_id implies a + channel discussion comment.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"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.\"\n },\n + \ \"isPublic\": {\n \"description\": \"Whether the thread (and + therefore all its comments) is visible to all YouTube users.\",\n \"type\": + \"boolean\"\n },\n \"totalReplyCount\": {\n \"format\": + \"uint32\",\n \"description\": \"The total number of replies (not + including the top level comment).\",\n \"type\": \"integer\"\n }\n + \ },\n \"id\": \"CommentThreadSnippet\"\n },\n \"Caption\": + {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n + \ \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + uses to uniquely identify the caption track.\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"$ref\": \"CaptionSnippet\",\n \ \"description\": \"The snippet object contains basic details about - the video category, including its title.\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoCategory\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video category.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"A *videoCategory* resource - identifies a category that has been or could be associated with uploaded videos.\",\n - \ \"id\": \"VideoCategory\"\n },\n \"ThumbnailSetResponse\": {\n - \ \"type\": \"object\",\n \"id\": \"ThumbnailSetResponse\",\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - thumbnails.\",\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n - \ }\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"default\": \"youtube#thumbnailSetResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LocalizedString\": {\n \"type\": \"object\",\n \"id\": - \"LocalizedString\",\n \"properties\": {\n \"language\": {\n \"type\": - \"string\"\n },\n \"value\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"IngestionInfo\": {\n \"description\": - \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n - \ \"id\": \"IngestionInfo\",\n \"properties\": {\n \"rtmpsIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of ingestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"ingestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The primary - ingestion URL that you should use to stream video to YouTube. You must stream - video to this URL. Depending on which application or tool you use to encode - your video stream, you may need to enter the stream URL and stream name separately - or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \"\n },\n \"backupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The backup ingestion URL that you - should use to stream video to YouTube. You have the option of simultaneously - streaming the content that you are sending to the ingestionAddress to this - URL.\"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of backupIngestionAddress in order - to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": - \"string\"\n },\n \"streamName\": {\n \"description\": - \"The stream name that YouTube assigns to the video stream.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"properties\": {\n \"playlistId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n },\n \"playlistItemId\": - {\n \"type\": \"string\",\n \"description\": \"ID of the - item within the playlist.\"\n }\n },\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"type\": \"object\",\n \"description\": \"Information about a - new playlist item.\"\n },\n \"VideoAgeGating\": {\n \"id\": \"VideoAgeGating\",\n - \ \"properties\": {\n \"videoGameRating\": {\n \"enumDescriptions\": + the caption.\"\n },\n \"kind\": {\n \"default\": \"youtube#caption\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#caption\\\".\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n },\n \"id\": \"Caption\",\n + \ \"description\": \"A *caption* resource represents a YouTube caption + track. A caption track is associated with exactly one YouTube video.\"\n },\n + \ \"ThirdPartyLinkSnippet\": {\n \"id\": \"ThirdPartyLinkSnippet\",\n + \ \"description\": \"Basic information about a third party account link, + including its type and type-specific information.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"channelToStoreLink\": {\n \"$ref\": + \"ChannelToStoreLinkDetails\",\n \"description\": \"Information specific + to a link between a channel and a store on a merchandising platform.\"\n },\n + \ \"type\": {\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"description\": + \"Type of the link named after the entities that are being linked.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"A + link that is connecting (or about to connect) a channel with a store on a + merchandising platform in order to enable retail commerce capabilities for + that channel on YouTube.\"\n ]\n }\n }\n },\n \"CommentThreadListResponse\": + {\n \"id\": \"CommentThreadListResponse\",\n \"properties\": {\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#commentThreadListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"description\": \"A list of comment threads that + match the request criteria.\",\n \"type\": \"array\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\"\n },\n \"MembershipsDurationAtLevel\": {\n \"id\": \"MembershipsDurationAtLevel\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"level\": {\n + \ \"description\": \"Pricing level ID.\",\n \"type\": \"string\"\n + \ },\n \"memberSince\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the user became a continuous + member for the given level.\"\n },\n \"memberTotalDurationMonths\": + {\n \"type\": \"integer\",\n \"format\": \"int32\",\n \"description\": + \"The cumulative time the user has been a member for the given level in complete + months (the time is rounded down to the nearest integer).\"\n }\n }\n + \ },\n \"ActivityListResponse\": {\n \"type\": \"object\",\n \"id\": + \"ActivityListResponse\",\n \"properties\": {\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"Activity\"\n },\n \"type\": \"array\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n \"default\": + \"youtube#activityListResponse\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ }\n }\n },\n \"ActivityContentDetailsRecommendation\": + {\n \"properties\": {\n \"seedResourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The seedResourceId object contains + information about the resource that caused the recommendation.\"\n },\n + \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the recommended + resource.\"\n },\n \"reason\": {\n \"description\": + \"The reason that the resource is recommended to the user.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"reasonUnspecified\",\n + \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n + \ ],\n \"type\": \"string\"\n }\n },\n \"description\": + \"Information that identifies the recommended resource.\",\n \"type\": + \"object\",\n \"id\": \"ActivityContentDetailsRecommendation\"\n },\n + \ \"ContentRating\": {\n \"description\": \"Ratings schemes. The country-specific + ratings are mostly for movies and shows. LINT.IfChange\",\n \"type\": + \"object\",\n \"id\": \"ContentRating\",\n \"properties\": {\n \"czfilmRating\": + {\n \"description\": \"The video's rating in the Czech Republic.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"12\",\n \"14\",\n \"18\",\n \"\"\n + \ ],\n \"enum\": [\n \"czfilmUnspecified\",\n + \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n + \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"eefilmRating\": {\n \"description\": + \"The video's rating in Estonia.\",\n \"enum\": [\n \"eefilmUnspecified\",\n + \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n + \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n + \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n + \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n + \ \"K-16\",\n \"\"\n ]\n },\n \"smaisRating\": + {\n \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n + \ \"smais7\",\n \"smais12\",\n \"smais14\",\n + \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n + \ ],\n \"description\": \"The video's rating in Iceland.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"L\",\n + \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"kijkwijzerRating\": {\n \"enum\": [\n \"kijkwijzerUnspecified\",\n + \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n + \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n + \ \"kijkwijzerUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's NICAM/Kijkwijzer rating from the + Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\",\n + \ \"enumDescriptions\": [\n \"\",\n \"AL\",\n + \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n + \ \"\",\n \"\"\n ]\n },\n \"agcomRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The video's + rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n + \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n + \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n + \ ]\n },\n \"tvpgRating\": {\n \"description\": + \"The video's TV Parental Guidelines (TVPG) rating.\",\n \"enum\": + [\n \"tvpgUnspecified\",\n \"tvpgY\",\n \"tvpgY7\",\n + \ \"tvpgY7Fv\",\n \"tvpgG\",\n \"tvpgPg\",\n + \ \"pg14\",\n \"tvpgMa\",\n \"tvpgUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n + \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n + \ \"\"\n ]\n },\n \"nmcRating\": {\n \"enum\": + [\n \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n + \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n + \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n \ ],\n \"type\": \"string\",\n \"description\": - \"Video game rating, if any.\",\n \"enum\": [\n \"anyone\",\n - \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n - \ ]\n },\n \"alcoholContent\": {\n \"description\": - \"Indicates whether or not the video has alcoholic beverage content. Only - users of legal purchasing age in a particular country, as identified by ICAP, - can view the content.\",\n \"type\": \"boolean\"\n },\n \"restricted\": - {\n \"description\": \"Age-restricted trailers. For redband trailers - and adult-rated video-games. Only users aged 18+ can view the content. The - the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\",\n \"type\": \"boolean\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoCategorySnippet\": - {\n \"properties\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube channel that created - the video category.\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\"\n - \ },\n \"assignable\": {\n \"type\": \"boolean\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The video category's title.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoCategorySnippet\",\n \"description\": \"Basic details - about a video category, such as its localized title.\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"properties\": {\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level at which the - viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ },\n \"gifterChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the user that made the membership gifting - purchase. This matches the `snippet.authorChannelId` of the associated membership - gifting message.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatGiftMembershipReceivedDetails\"\n },\n \"Cuepoint\": {\n \"type\": - \"object\",\n \"properties\": {\n \"cueType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ]\n },\n \"walltimeMs\": - {\n \"description\": \"The wall clock time at which the cuepoint - should be inserted. Only one of insertion_offset_time_ms and walltime_ms may - be set at a time.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The identifier - for cuepoint resource.\",\n \"type\": \"string\"\n },\n \"insertionOffsetTimeMs\": - {\n \"format\": \"int64\",\n \"description\": \"The time - when the cuepoint should be inserted by offset to the broadcast actual start - time.\",\n \"type\": \"string\"\n },\n \"durationSecs\": - {\n \"format\": \"uint32\",\n \"description\": \"The duration - of this cuepoint.\",\n \"type\": \"integer\"\n }\n },\n - \ \"description\": \"Note that there may be a 5-second end-point resolution - issue. For instance, if a cuepoint comes in for 22:03:27, we may stuff the - cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact of HLS.\",\n - \ \"id\": \"Cuepoint\"\n },\n \"ChannelBrandingSettings\": {\n \"type\": - \"object\",\n \"id\": \"ChannelBrandingSettings\",\n \"properties\": - {\n \"image\": {\n \"$ref\": \"ImageSettings\",\n \"description\": - \"Branding properties for branding images.\"\n },\n \"watch\": - {\n \"description\": \"Branding properties for the watch page.\",\n - \ \"$ref\": \"WatchSettings\"\n },\n \"channel\": {\n - \ \"description\": \"Branding properties for the channel view.\",\n - \ \"$ref\": \"ChannelSettings\"\n },\n \"hints\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"PropertyValue\"\n },\n \"description\": \"Additional experimental - branding properties.\"\n }\n },\n \"description\": \"Branding - properties of a YouTube channel.\"\n },\n \"ChannelAuditDetails\": {\n - \ \"description\": \"The auditDetails object encapsulates channel data - that is relevant for YouTube Partners during the audit process.\",\n \"id\": - \"ChannelAuditDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"communityGuidelinesGoodStanding\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether or not the channel respects the community - guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the channel has - any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n }\n }\n },\n - \ \"Activity\": {\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the activity, including the activity's type and group - ID.\",\n \"$ref\": \"ActivitySnippet\"\n },\n \"contentDetails\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetails\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"default\": \"youtube#activity\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"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.\",\n \"id\": \"Activity\"\n - \ },\n \"RelatedEntity\": {\n \"properties\": {\n \"entity\": - {\n \"$ref\": \"Entity\"\n }\n },\n \"id\": \"RelatedEntity\",\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastContentDetails\": {\n - \ \"type\": \"object\",\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"properties\": {\n \"enableAutoStart\": {\n \"description\": - \"This setting indicates whether auto start is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\",\n \"type\": \"boolean\"\n },\n \"enableLowLatency\": - {\n \"description\": \"Indicates whether this broadcast has low latency - enabled.\",\n \"type\": \"boolean\"\n },\n \"enableContentEncryption\": - {\n \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n - \ },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n },\n \"enableDvr\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting determines whether viewers can access - DVR controls while watching the video. DVR controls enable the viewer to control - the video playback experience by pausing, rewinding, or fast forwarding content. - The default value for this property is true. *Important:* You must set the - value to true and also set the enableArchive property's value to true if you - want to make playback available immediately after the broadcast ends.\"\n - \ },\n \"latencyPreference\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enumDescriptions\": - [\n \"\",\n \"Best for: highest quality viewer playbacks - and higher resolutions.\",\n \"Best for: near real-time interaction, - with minimal playback buffering.\",\n \"Best for: real-time interaction - Does not support: Closed captions, 1440p, and 4k resolutions\"\n ]\n - \ },\n \"enableClosedCaptions\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether HTTP POST closed - captioning is enabled for this broadcast. The ingestion URL of the closed - captions is returned through the liveStreams API. This is mutually exclusive - with using the closed_captions_type property, and is equivalent to setting - closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n \"mesh\": - {\n \"type\": \"string\",\n \"description\": \"The mesh - for projecting the video if projection is mesh. The mesh value must be a UTF-8 - string containing the base-64 encoding of 3D mesh data that follows the Spherical - Video V2 RFC specification for an mshp box, excluding the box size and type - but including the following four reserved zero bytes for the version and flags.\",\n - \ \"format\": \"byte\"\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\"\n },\n \"stereoLayout\": - {\n \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n - \ \"leftRight\",\n \"topBottom\"\n ],\n \"type\": - \"string\",\n \"description\": \"The 3D stereo layout of this broadcast. - This defaults to mono.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"enableAutoStop\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether auto stop is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\"\n },\n \"boundStreamId\": {\n \"type\": - \"string\",\n \"description\": \"This value uniquely identifies the - live stream bound to the broadcast.\"\n },\n \"recordFromStart\": - {\n \"type\": \"boolean\",\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\"\n },\n \"closedCaptionsType\": - {\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"monitorStream\": - {\n \"$ref\": \"MonitorStreamInfo\",\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\"\n },\n \"startWithSlate\": {\n \"description\": - \"This setting indicates whether the broadcast should automatically begin - with an in-stream slate when you update the broadcast's status to live. After - updating the status, you then need to send a liveCuepoints.insert request - that sets the cuepoint's eventState to end to remove the in-stream slate and - make your broadcast stream visible to viewers.\",\n \"type\": \"boolean\"\n - \ },\n \"projection\": {\n \"type\": \"string\",\n \"enum\": - [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The projection format of this broadcast. - This defaults to rectangular.\"\n }\n },\n \"description\": - \"Detailed settings of a broadcast.\"\n },\n \"SuperChatEvent\": {\n - \ \"type\": \"object\",\n \"id\": \"SuperChatEvent\",\n \"description\": - \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#superChatEvent\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the Super Chat event.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\",\n - \ \"$ref\": \"SuperChatEventSnippet\"\n }\n }\n },\n - \ \"ChannelSectionLocalization\": {\n \"description\": \"ChannelSection - localization setting\",\n \"id\": \"ChannelSectionLocalization\",\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for channel section's title.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LanguageTag\": {\n \"id\": - \"LanguageTag\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoCategoryListResponse\": - {\n \"id\": \"VideoCategoryListResponse\",\n \"properties\": {\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"default\": \"youtube#videoCategoryListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"VideoCategory\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of video categories that can be associated with YouTube videos. In this - map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatSuperStickerDetails\": - {\n \"properties\": {\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"type\": \"string\",\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": - \"uint64\"\n },\n \"tier\": {\n \"description\": \"The - tier in which the amount belongs. Lower amounts belong to lower tiers. The - lowest tier is 1.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"superStickerMetadata\": {\n \"description\": - \"Information about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ }\n },\n \"id\": \"LiveChatSuperStickerDetails\",\n \"type\": - \"object\"\n },\n \"ResourceId\": {\n \"description\": \"A resource - id is a generic reference that points to another YouTube resource.\",\n \"type\": - \"object\",\n \"id\": \"ResourceId\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the referred resource, if that resource - is a video. This property is only present if the resourceId.kind value is - youtube#video.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\",\n \"type\": \"string\"\n },\n - \ \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"The type of the API resource.\"\n - \ }\n }\n },\n \"PageInfo\": {\n \"description\": \"Paging - details for lists of resources, including total number of items available - and number of resources returned in a single page.\",\n \"type\": \"object\",\n - \ \"id\": \"PageInfo\",\n \"properties\": {\n \"totalResults\": - {\n \"type\": \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The total number of results in the result set.\"\n },\n \"resultsPerPage\": - {\n \"format\": \"int32\",\n \"description\": \"The number - of results included in the API response.\",\n \"type\": \"integer\"\n - \ }\n }\n },\n \"ThirdPartyLinkSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"type\": {\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Type of the link named after the entities that are being linked.\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ]\n - \ },\n \"channelToStoreLink\": {\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n }\n - \ },\n \"description\": \"Basic information about a third party account - link, including its type and type-specific information.\",\n \"id\": - \"ThirdPartyLinkSnippet\"\n },\n \"PlaylistSnippet\": {\n \"type\": - \"object\",\n \"description\": \"Basic details about a playlist, including - title, description and thumbnails.\",\n \"id\": \"PlaylistSnippet\",\n - \ \"properties\": {\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The playlist's description.\"\n - \ },\n \"localized\": {\n \"$ref\": \"PlaylistLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the playlist's default title and description.\",\n \"type\": - \"string\"\n },\n \"thumbnailVideoId\": {\n \"description\": - \"Note: if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel title of the channel that the video - belongs to.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The playlist's title.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the playlist was created.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the playlist.\"\n },\n \"tags\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"Keyword tags associated with the playlist.\",\n - \ \"type\": \"array\"\n }\n }\n },\n \"CommentThreadListResponse\": - {\n \"id\": \"CommentThreadListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"CommentThread\"\n },\n \"description\": \"A list of comment - threads that match the request criteria.\",\n \"type\": \"array\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#commentThreadListResponse\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ }\n },\n \"I18nLanguageListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"I18nLanguage\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of supported i18n languages. In this map, the i18n language ID is - the map key, and its value is the corresponding i18nLanguage resource.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"id\": \"I18nLanguageListResponse\"\n },\n \"LiveBroadcastListResponse\": - {\n \"type\": \"object\",\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"default\": \"youtube#liveBroadcastListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of broadcasts that match the request criteria.\",\n - \ \"items\": {\n \"$ref\": \"LiveBroadcast\"\n }\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n }\n },\n \"ChannelSettings\": {\n \"id\": \"ChannelSettings\",\n - \ \"type\": \"object\",\n \"description\": \"Branding properties - for the channel view.\",\n \"properties\": {\n \"trackingAnalyticsAccountId\": - {\n \"type\": \"string\",\n \"description\": \"The ID for - a Google Analytics account to track and measure traffic to the channels.\"\n - \ },\n \"unsubscribedTrailer\": {\n \"type\": \"string\",\n - \ \"description\": \"The trailer of the channel, for users that are - not subscribers.\"\n },\n \"profileColor\": {\n \"type\": - \"string\",\n \"description\": \"A prominent color that can be rendered - on this channel page.\"\n },\n \"moderateComments\": {\n \"description\": - \"Whether user-submitted comments left on the channel page need to be approved - by the channel owner to be publicly visible.\",\n \"type\": \"boolean\"\n - \ },\n \"country\": {\n \"description\": \"The country - of the channel.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"Specifies the channel title.\",\n \"type\": - \"string\"\n },\n \"featuredChannelsTitle\": {\n \"description\": - \"Title for the featured channels tab.\",\n \"type\": \"string\"\n - \ },\n \"showBrowseView\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the tab to browse the videos should be - displayed.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\"\n },\n \"keywords\": {\n \"description\": - \"Lists keywords associated with the channel, comma-separated.\",\n \"type\": - \"string\"\n },\n \"featuredChannelsUrls\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The list of featured channels.\",\n \"type\": \"array\"\n },\n - \ \"defaultTab\": {\n \"description\": \"Which content tab - users should see when viewing the channel.\",\n \"type\": \"string\"\n - \ },\n \"showRelatedChannels\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether related channels should be proposed.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the channel description.\"\n }\n - \ }\n },\n \"ChannelTopicDetails\": {\n \"properties\": {\n - \ \"topicIds\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of Freebase topic IDs associated - with the channel. You can retrieve information about each topic using the - Freebase Topic API.\",\n \"type\": \"array\"\n },\n \"topicCategories\": - {\n \"type\": \"array\",\n \"description\": \"A list of - Wikipedia URLs that describe the channel's content.\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"type\": - \"object\",\n \"description\": \"Freebase topic information related to - the channel.\",\n \"id\": \"ChannelTopicDetails\"\n },\n \"VideoProcessingDetails\": - {\n \"id\": \"VideoProcessingDetails\",\n \"properties\": {\n \"processingProgress\": - {\n \"description\": \"The processingProgress object contains information - about the progress YouTube has made in processing the video. The values are - really only relevant if the video's processing status is processing.\",\n - \ \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n },\n - \ \"thumbnailsAvailability\": {\n \"description\": \"This value - indicates whether thumbnail images have been generated for the video.\",\n - \ \"type\": \"string\"\n },\n \"processingIssuesAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether the video processing engine has generated suggestions that - might improve YouTube's ability to process the the video, warnings that explain - video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\"\n },\n \"editorSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether video editing - suggestions, which might improve video quality or the playback experience, - are available for the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingStatus\": {\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\",\n \"type\": - \"string\",\n \"enum\": [\n \"processing\",\n \"succeeded\",\n - \ \"failed\",\n \"terminated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"fileDetailsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether file - details are available for the uploaded video. You can retrieve a video's file - details by requesting the fileDetails part in your videos.list() request.\"\n - \ },\n \"tagSuggestionsAvailability\": {\n \"description\": - \"This value indicates whether keyword (tag) suggestions are available for - the video. Tags can be added to a video's metadata to make it easier for other - users to find the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingFailureReason\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The reason that YouTube failed - to process the video. This property will only have a value if the processingStatus - property's value is failed.\",\n \"type\": \"string\",\n \"enum\": - [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ]\n }\n },\n \"description\": - \"Describes processing status and progress and availability of some other - Video resource parts.\",\n \"type\": \"object\"\n },\n \"PlaylistListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlistListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of playlists that match the request - criteria\",\n \"items\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"id\": - \"PlaylistListResponse\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"giftMembershipsCount\": - {\n \"type\": \"integer\",\n \"description\": \"The number - of gift memberships purchased by the user.\",\n \"format\": \"int32\"\n - \ },\n \"giftMembershipsLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\"\n }\n - \ },\n \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n \"I18nRegionSnippet\": - {\n \"id\": \"I18nRegionSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"name\": {\n \"description\": \"The human-readable name - of the region.\",\n \"type\": \"string\"\n },\n \"gl\": - {\n \"description\": \"The region code as a 2-letter ISO country - code.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about an i18n region, such as region code and human-readable - name.\"\n },\n \"ChannelStatus\": {\n \"properties\": {\n \"isLinked\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"longUploadsStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ],\n \"description\": \"The - long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"type\": \"string\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"Privacy status of the channel.\"\n - \ }\n },\n \"description\": \"JSON template for the status - part of a channel.\",\n \"id\": \"ChannelStatus\",\n \"type\": \"object\"\n - \ },\n \"LiveChatMessage\": {\n \"description\": \"A *liveChatMessage* - resource represents a chat message in a YouTube Live Chat.\",\n \"id\": - \"LiveChatMessage\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the message.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatMessage\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"authorDetails\": {\n \"description\": \"The - authorDetails object contains basic details about the user that posted this - message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the message.\",\n \"$ref\": - \"LiveChatMessageSnippet\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ThirdPartyLink\": {\n \"id\": \"ThirdPartyLink\",\n \"type\": - \"object\",\n \"properties\": {\n \"status\": {\n \"$ref\": - \"ThirdPartyLinkStatus\",\n \"description\": \"The status object - contains information about the status of the link.\"\n },\n \"snippet\": - {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\"\n },\n \"kind\": {\n \"default\": \"youtube#thirdPartyLink\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"linkingToken\": {\n \"type\": - \"string\",\n \"description\": \"The linking_token identifies a YouTube - account and channel with which the third party account is linked.\"\n }\n - \ },\n \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\"\n },\n \"LiveStreamStatus\": {\n \"properties\": {\n - \ \"healthStatus\": {\n \"description\": \"The health status - of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n },\n - \ \"streamStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ]\n }\n },\n \"id\": \"LiveStreamStatus\",\n - \ \"type\": \"object\",\n \"description\": \"Brief description of - the live stream status.\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageDeletedDetails\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelSectionContentDetails\": - {\n \"id\": \"ChannelSectionContentDetails\",\n \"properties\": - {\n \"channels\": {\n \"description\": \"The channel ids for - type multiple_channels.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"playlists\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The playlist ids for type single_playlist and - multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n - \ \"type\": \"array\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Details about a channelsection, including playlists - and channels.\"\n },\n \"SearchListResponse\": {\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"regionCode\": - {\n \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#searchListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"Pagination information for token pagination.\",\n \"items\": {\n - \ \"$ref\": \"SearchResult\"\n },\n \"type\": - \"array\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"id\": \"SearchListResponse\",\n \"type\": - \"object\"\n },\n \"ActivityListResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"default\": \"youtube#activityListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Activity\"\n }\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ActivityListResponse\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"properties\": {\n \"severity\": {\n \"enum\": [\n - \ \"info\",\n \"warning\",\n \"error\"\n ],\n - \ \"description\": \"How severe this issue is to the stream.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"reason\": - {\n \"type\": \"string\",\n \"description\": \"The short-form - reason for this issue.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The long-form description of the - issue and how to resolve it.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n - \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n - \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n - \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n - \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n - \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"description\": \"The kind of error happening.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"LiveBroadcastSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"isDefaultBroadcast\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether this broadcast is the default broadcast. Internal only.\"\n - \ },\n \"scheduledStartTime\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the broadcast is scheduled to start.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's title. Note that the broadcast - represents exactly one YouTube video. You can set this field by modifying - the broadcast resource or by setting the title field of the corresponding - video resource.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the broadcast. For each nested - object in this object, the key is the name of the thumbnail image, and the - value is an object that contains other information about the thumbnail.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"actualEndTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast actually ended. This information is only available - once the broadcast's state is complete.\",\n \"format\": \"date-time\"\n - \ },\n \"actualStartTime\": {\n \"description\": \"The - date and time that the broadcast actually started. This information is only - available once the broadcast's state is live.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"liveChatId\": {\n - \ \"type\": \"string\",\n \"description\": \"The id of the - live chat for this broadcast.\"\n },\n \"publishedAt\": {\n - \ \"description\": \"The date and time that the broadcast was added - to YouTube's live broadcast schedule.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"description\": - {\n \"description\": \"The broadcast's description. As with the title, - you can set this field by modifying the broadcast resource or by setting the - description field of the corresponding video resource.\",\n \"type\": - \"string\"\n },\n \"scheduledEndTime\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast is scheduled to end.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\"\n }\n },\n \"description\": \"Basic broadcast - information.\",\n \"id\": \"LiveBroadcastSnippet\"\n },\n \"PropertyValue\": - {\n \"type\": \"object\",\n \"description\": \"A pair Property / - Value.\",\n \"id\": \"PropertyValue\",\n \"properties\": {\n \"value\": - {\n \"description\": \"The property's value.\",\n \"type\": - \"string\"\n },\n \"property\": {\n \"type\": \"string\",\n - \ \"description\": \"A property.\"\n }\n }\n },\n \"PlaylistContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistContentDetails\",\n - \ \"properties\": {\n \"itemCount\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The number - of videos in the playlist.\"\n }\n }\n },\n \"CommentSnippet\": - {\n \"properties\": {\n \"textDisplay\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"authorProfileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - the avatar of the user who posted the comment.\"\n },\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"likeCount\": - {\n \"description\": \"The total number of likes this comment has - received.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID of - the video the comment refers to, if any.\",\n \"type\": \"string\"\n - \ },\n \"canRate\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the current viewer can rate this comment.\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"authorChannelId\": {\n \"$ref\": - \"CommentSnippetAuthorChannelId\"\n },\n \"moderationStatus\": - {\n \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by a - moderator.\",\n \"\",\n \"The comment is unfit for display.\"\n - \ ],\n \"description\": \"The comment's moderation status. - Will not be set if the comments were requested through the id filter.\",\n - \ \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"type\": - \"string\"\n },\n \"textOriginal\": {\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the comment was originally published.\"\n },\n \"updatedAt\": - {\n \"description\": \"The date and time when the comment was last - updated.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"parentId\": {\n \"description\": \"The unique - id of the parent comment, only set for replies.\",\n \"type\": \"string\"\n - \ },\n \"authorChannelUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Link to the author's YouTube channel, if any.\"\n - \ },\n \"viewerRating\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n }\n },\n - \ \"description\": \"Basic details about a comment, such as its author - and text.\",\n \"type\": \"object\",\n \"id\": \"CommentSnippet\"\n - \ },\n \"Comment\": {\n \"type\": \"object\",\n \"id\": \"Comment\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#comment\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"CommentSnippet\",\n \"description\": \"The snippet object contains - basic details about the comment.\"\n }\n },\n \"description\": - \"A *comment* represents a single YouTube comment.\"\n },\n \"VideoGetRatingResponse\": - {\n \"id\": \"VideoGetRatingResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoGetRatingResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"description\": \"A list of ratings - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoFileDetailsAudioStream\": - {\n \"description\": \"Information about an audio stream.\",\n \"properties\": - {\n \"bitrateBps\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The audio stream's bitrate, in bits - per second.\"\n },\n \"vendor\": {\n \"type\": \"string\",\n - \ \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\"\n },\n \"codec\": - {\n \"description\": \"The audio codec that the stream uses.\",\n - \ \"type\": \"string\"\n },\n \"channelCount\": {\n - \ \"description\": \"The number of audio channels that the stream - contains.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"VideoContentDetails\": {\n \"description\": \"Details about - the content of a YouTube Video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"definition\": {\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"description\": \"The value of - definition indicates whether the video is available in high definition or - only in standard definition.\",\n \"type\": \"string\",\n \"enum\": - [\n \"sd\",\n \"hd\"\n ]\n },\n \"duration\": - {\n \"type\": \"string\",\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"contentRating\": {\n \"$ref\": \"ContentRating\",\n \"description\": - \"Specifies the ratings that the video received under various rating schemes.\"\n - \ },\n \"projection\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"rectangular\",\n \"360\"\n ],\n \"type\": - \"string\",\n \"description\": \"Specifies the projection format - of the video.\"\n },\n \"caption\": {\n \"description\": - \"The value of captions indicates whether the video has captions or not.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"true\",\n - \ \"false\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ]\n },\n \"dimension\": {\n \"type\": - \"string\",\n \"description\": \"The value of dimension indicates - whether the video is available in 3D or in 2D.\"\n },\n \"regionRestriction\": - {\n \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"licensedContent\": - {\n \"description\": \"The value of is_license_content indicates - whether the video is licensed content.\",\n \"type\": \"boolean\"\n - \ },\n \"countryRestriction\": {\n \"description\": - \"The countryRestriction object contains information about the countries where - a video is (or is not) viewable.\",\n \"$ref\": \"AccessPolicy\"\n - \ },\n \"hasCustomThumbnail\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether the video uploader has provided - a custom thumbnail image for the video. This property is only visible to the - video uploader.\"\n }\n },\n \"id\": \"VideoContentDetails\"\n - \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"banType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of ban.\",\n \"type\": - \"string\",\n \"enum\": [\n \"permanent\",\n \"temporary\"\n - \ ]\n },\n \"bannedUserDetails\": {\n \"description\": - \"The details of the user that was banned.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banDurationSeconds\": {\n \"description\": - \"The duration of the ban. This property is only present if the banType is - temporary.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ }\n }\n },\n \"CommentThreadSnippet\": {\n \"properties\": - {\n \"isPublic\": {\n \"description\": \"Whether the thread - (and therefore all its comments) is visible to all YouTube users.\",\n \"type\": - \"boolean\"\n },\n \"totalReplyCount\": {\n \"description\": - \"The total number of replies (not including the top level comment).\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"topLevelComment\": {\n \"$ref\": \"Comment\",\n \"description\": - \"The top level comment of this thread.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the video the comments refer to, if - any. No video_id implies a channel discussion comment.\"\n },\n \"canReply\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a comment thread.\",\n \"id\": \"CommentThreadSnippet\"\n },\n \"ChannelToStoreLinkDetails\": - {\n \"type\": \"object\",\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"properties\": {\n \"storeName\": {\n \"type\": \"string\",\n - \ \"description\": \"Name of the store.\"\n },\n \"storeUrl\": - {\n \"description\": \"Landing page of the store.\",\n \"type\": - \"string\"\n },\n \"merchantId\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"Google Merchant - Center id of the store.\"\n }\n },\n \"description\": \"Information - specific to a store on a merchandising platform linked to a YouTube channel.\"\n - \ },\n \"CaptionSnippet\": {\n \"id\": \"CaptionSnippet\",\n \"properties\": - {\n \"lastUpdated\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the caption track was last updated.\",\n \"type\": - \"string\"\n },\n \"language\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\"\n },\n \"status\": {\n \"description\": \"The - caption track's status.\",\n \"enum\": [\n \"serving\",\n - \ \"syncing\",\n \"failed\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"isAutoSynced\": {\n \"description\": - \"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.\",\n \"type\": \"boolean\"\n },\n \"trackKind\": - {\n \"description\": \"The caption track's type.\",\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video associated with - the caption track. @mutable youtube.captions.insert\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"failureReason\": {\n \"type\": - \"string\",\n \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ],\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"isDraft\": {\n \"type\": \"boolean\",\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n },\n \"isLarge\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the caption track - uses large text for the vision-impaired. The default value is false.\"\n },\n - \ \"name\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The name of - the caption track. The name is intended to be visible to the user as an option - during playback.\"\n },\n \"isCC\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether the track contains closed captions - for the deaf and hard of hearing. The default value is false.\"\n },\n - \ \"isEasyReader\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n - \ },\n \"audioTrackType\": {\n \"type\": \"string\",\n - \ \"description\": \"The type of audio track associated with the caption - track.\",\n \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"description\": \"Basic details about - a caption track, such as its language and name.\",\n \"type\": \"object\"\n - \ },\n \"VideoPlayer\": {\n \"description\": \"Player to be used - for a video playback.\",\n \"type\": \"object\",\n \"id\": \"VideoPlayer\",\n - \ \"properties\": {\n \"embedWidth\": {\n \"format\": - \"int64\",\n \"type\": \"string\",\n \"description\": \"The - embed width\"\n },\n \"embedHeight\": {\n \"type\": - \"string\",\n \"format\": \"int64\"\n },\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\"\n }\n }\n - \ },\n \"MemberSnippet\": {\n \"properties\": {\n \"membershipsDetails\": - {\n \"description\": \"Details about the user's membership.\",\n - \ \"$ref\": \"MembershipsDetails\"\n },\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering memberships.\"\n },\n \"memberDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the member.\"\n }\n },\n \"id\": \"MemberSnippet\",\n - \ \"type\": \"object\"\n },\n \"I18nRegionListResponse\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#i18nRegionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n },\n \"description\": \"A list of regions - where YouTube is available. In this map, the i18n region ID is the map key, - and its value is the corresponding i18nRegion resource.\",\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n }\n },\n \"id\": \"I18nRegionListResponse\",\n - \ \"type\": \"object\"\n },\n \"ChannelProfileDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube channel ID.\"\n },\n - \ \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The channel's display name.\"\n },\n \"channelUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channel's URL.\"\n },\n - \ \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channels's avatar URL.\"\n }\n },\n \"id\": \"ChannelProfileDetails\"\n - \ },\n \"VideoMonetizationDetails\": {\n \"id\": \"VideoMonetizationDetails\",\n - \ \"description\": \"Details about monetization of a YouTube Video.\",\n - \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The value of access indicates whether the video - can be monetized or not.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoFileDetailsVideoStream\": {\n \"id\": \"VideoFileDetailsVideoStream\",\n - \ \"properties\": {\n \"widthPixels\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\"\n },\n \"aspectRatio\": - {\n \"description\": \"The video content's display aspect ratio, - which specifies the aspect ratio in which the video should be displayed.\",\n - \ \"type\": \"number\",\n \"format\": \"double\"\n },\n - \ \"rotation\": {\n \"type\": \"string\",\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"vendor\": {\n \"description\": \"A value that uniquely - identifies a video vendor. Typically, the value is a four-letter vendor code.\",\n - \ \"type\": \"string\"\n },\n \"frameRateFps\": {\n - \ \"description\": \"The video stream's frame rate, in frames per - second.\",\n \"format\": \"double\",\n \"type\": \"number\"\n - \ },\n \"heightPixels\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The encoded video content's height in pixels.\",\n - \ \"type\": \"integer\"\n },\n \"bitrateBps\": {\n \"description\": - \"The video stream's bitrate, in bits per second.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The video - codec that the stream uses.\"\n }\n },\n \"description\": - \"Information about a video stream.\",\n \"type\": \"object\"\n },\n - \ \"ChannelSectionListResponse\": {\n \"id\": \"ChannelSectionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"description\": \"A list of ChannelSections that - match the request criteria.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelSectionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ }\n },\n \"ThirdPartyLinkListResponse\": {\n \"id\": \"ThirdPartyLinkListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"default\": - \"youtube#thirdPartyLinkListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ }\n },\n \"CommentThreadReplies\": {\n \"type\": \"object\",\n - \ \"description\": \"Comments written in (direct or indirect) reply to - the top level comment.\",\n \"properties\": {\n \"comments\": - {\n \"type\": \"array\",\n \"description\": \"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.\",\n \"items\": {\n \"$ref\": \"Comment\"\n - \ }\n }\n },\n \"id\": \"CommentThreadReplies\"\n - \ },\n \"MembershipsDurationAtLevel\": {\n \"type\": \"object\",\n - \ \"id\": \"MembershipsDurationAtLevel\",\n \"properties\": {\n \"level\": - {\n \"description\": \"Pricing level ID.\",\n \"type\": - \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n },\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member for the given level.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"CdnSettings\": {\n \"type\": \"object\",\n \"description\": - \"Brief description of the live stream cdn settings.\",\n \"id\": \"CdnSettings\",\n - \ \"properties\": {\n \"ingestionInfo\": {\n \"$ref\": - \"IngestionInfo\",\n \"description\": \"The ingestionInfo object - contains information that YouTube provides that you need to transmit your - RTMP or HTTP stream to YouTube.\"\n },\n \"format\": {\n \"description\": - \"The format of the video stream that you are sending to Youtube. \",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"frameRate\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The frame rate - of the inbound video data.\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ]\n },\n - \ \"ingestionType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \" The method or protocol - used to transmit the video stream.\",\n \"enum\": [\n \"rtmp\",\n - \ \"dash\",\n \"webrtc\",\n \"hls\"\n ]\n - \ },\n \"resolution\": {\n \"description\": \"The resolution - of the inbound video data.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"240p\",\n \"360p\",\n - \ \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\",\n - \ \"2160p\",\n \"variable\"\n ]\n }\n - \ }\n },\n \"SuperChatEventListResponse\": {\n \"id\": \"SuperChatEventListResponse\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#superChatEventListResponse\"\n - \ },\n \"items\": {\n \"description\": \"A list of Super - Chat purchases that match the request criteria.\",\n \"items\": {\n - \ \"$ref\": \"SuperChatEvent\"\n },\n \"type\": - \"array\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"CaptionListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - captions that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Caption\"\n }\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"CaptionListResponse\"\n - \ },\n \"ThumbnailDetails\": {\n \"properties\": {\n \"medium\": - {\n \"description\": \"The medium quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"default\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The default image for this resource.\"\n - \ },\n \"maxres\": {\n \"description\": \"The maximum - resolution quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"high\": {\n \"description\": \"The high quality - image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"standard\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The standard quality image for this resource.\"\n }\n },\n \"description\": - \"Internal representation of thumbnails for a YouTube resource.\",\n \"id\": - \"ThumbnailDetails\",\n \"type\": \"object\"\n },\n \"VideoSuggestions\": - {\n \"type\": \"object\",\n \"description\": \"Specifies suggestions - on how to improve video content, including encoding hints, tag suggestions, - and editor suggestions.\",\n \"properties\": {\n \"tagSuggestions\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoSuggestionsTagSuggestion\"\n },\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\"\n },\n \"editorSuggestions\": {\n \"items\": - {\n \"enumDescriptions\": [\n \"Picture brightness - levels seem off and could be corrected.\",\n \"The video appears - shaky and could be stabilized.\",\n \"Margins (mattes) detected - around the picture could be cropped.\",\n \"The audio track appears - silent and could be swapped with a better quality one.\"\n ],\n - \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n - \ \"type\": \"string\"\n },\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\",\n \"type\": \"array\"\n - \ },\n \"processingHints\": {\n \"items\": {\n \"enum\": - [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of suggestions that may improve YouTube's - ability to process the video.\"\n },\n \"processingWarnings\": - {\n \"items\": {\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ]\n },\n \"type\": \"array\",\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\"\n },\n \"processingErrors\": {\n \"type\": - \"array\",\n \"items\": {\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ]\n },\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\"\n }\n },\n \"id\": \"VideoSuggestions\"\n },\n - \ \"SearchResultSnippet\": {\n \"description\": \"Basic details about - a search result, including title, description and thumbnails of the item referenced - by the search result.\",\n \"properties\": {\n \"channelTitle\": - {\n \"description\": \"The title of the channel that published the - resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"A description - of the search result.\",\n \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"description\": \"It indicates - if the resource (video or channel) has upcoming/active live broadcast content. - Or it's \\\"none\\\" if there is not any upcoming/active live broadcasts.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The value that YouTube uses to uniquely - identify the channel that published the resource that the search result identifies.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the search result.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The creation - date and time of the resource that the search result identifies.\",\n \"format\": - \"date-time\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the search result. 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.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"SearchResultSnippet\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\",\n - \ \"properties\": {\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The amount of the fund.\"\n },\n \"currency\": {\n \"type\": - \"string\",\n \"description\": \"The currency in which the fund was - made.\"\n },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the user to this fan funding - event.\"\n }\n }\n },\n \"ChannelSectionSnippet\": {\n \"description\": - \"Basic details about a channel section, including title, style and position.\",\n - \ \"id\": \"ChannelSectionSnippet\",\n \"properties\": {\n \"style\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The style of the channel section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ]\n - \ },\n \"type\": {\n \"description\": \"The type of - the channel section.\",\n \"enumDescriptions\": [\n \"\",\n + \"The National Media Council ratings system for United Arab Emirates.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n + \ \"18+\",\n \"18TC\",\n \"\"\n ]\n + \ },\n \"cncRating\": {\n \"enum\": [\n \"cncUnspecified\",\n + \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n + \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n + \ \"cncUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n + \ \"\"\n ],\n \"description\": \"Rating system + in France - Commission de classification cinematographique\",\n \"type\": + \"string\"\n },\n \"grfilmRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n + \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n + \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n + \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n + \ ],\n \"description\": \"The video's rating in Greece.\"\n + \ },\n \"mccypRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"A\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from the Danish Film Institute's + (Det Danske Filminstitut) Media Council for Children and Young People.\",\n + \ \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n + \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n + \ \"mccypUnrated\"\n ]\n },\n \"djctqRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"L\",\n + \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n + \ \"18\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ]\n },\n \"title\": - {\n \"description\": \"The channel section's title for multiple_playlists - and multiple_channels.\",\n \"type\": \"string\"\n },\n \"position\": - {\n \"description\": \"The position of the channel section in the - channel.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that published the channel - section.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel section's default title and description.\"\n },\n \"localized\": - {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": - \"Localized title, read-only.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"PlaylistStatus\": {\n \"properties\": {\n \"privacyStatus\": - {\n \"description\": \"The playlist's privacy status.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"PlaylistStatus\"\n - \ },\n \"VideoSuggestionsTagSuggestion\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"tag\": {\n \"type\": \"string\",\n - \ \"description\": \"The keyword tag suggested for the video.\"\n - \ },\n \"categoryRestricts\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A set of video categories - for which the tag is relevant. You can use this information to display appropriate - tag suggestions based on the video category that the video uploader associates - with the video. By default, tag suggestions are relevant for all categories - if there are no restricts defined for the keyword.\",\n \"type\": - \"array\"\n }\n },\n \"id\": \"VideoSuggestionsTagSuggestion\",\n - \ \"description\": \"A single tag suggestion with it's relevance information.\"\n - \ },\n \"PlaylistItemListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"PlaylistItemListResponse\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlistItemListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"description\": \"A list of playlist - items that match the request criteria.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"PlaylistItem\"\n }\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n \"type\": - \"object\",\n \"properties\": {\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ },\n \"description\": \"A list of valid abuse reasons that - are used with `video.ReportAbuse`.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The `visitorId` identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"id\": \"CommentSnippetAuthorChannelId\",\n \"properties\": {\n - \ \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveStreamHealthStatus\": {\n \"properties\": - {\n \"configurationIssues\": {\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The configurations issues on this stream\"\n - \ },\n \"lastUpdateTimeSeconds\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The last time - this status was updated (in seconds)\"\n },\n \"status\": {\n - \ \"enum\": [\n \"good\",\n \"ok\",\n \"bad\",\n - \ \"noData\",\n \"revoked\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The status code - of this stream\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveStreamHealthStatus\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made.\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"tier\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\"\n },\n - \ \"userComment\": {\n \"description\": \"The comment added - by the user to this Super Chat event.\",\n \"type\": \"string\"\n - \ },\n \"amountMicros\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\"\n }\n },\n - \ \"id\": \"LiveChatSuperChatDetails\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"description\": \"The ID of this abuse report secondary reason.\",\n - \ \"type\": \"string\"\n },\n \"label\": {\n \"type\": - \"string\",\n \"description\": \"The localized label for this abuse - report secondary reason.\"\n }\n },\n \"id\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"LiveStream\": {\n \"description\": \"A live stream describes - a live ingestion point.\",\n \"id\": \"LiveStream\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStream\"\n - \ },\n \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n - \ \"description\": \"The status object contains information about - live stream's status.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\",\n - \ \"$ref\": \"LiveStreamSnippet\"\n },\n \"cdn\": {\n - \ \"description\": \"The cdn object defines the live stream's content - delivery network (CDN) settings. These settings provide details about the - manner in which you stream your content to YouTube.\",\n \"$ref\": - \"CdnSettings\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the stream.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LevelDetails\": - {\n \"type\": \"object\",\n \"id\": \"LevelDetails\",\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The name that should be used when referring to this level.\"\n }\n - \ }\n },\n \"LiveChatNewSponsorDetails\": {\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"properties\": {\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level that the viewer - just had joined. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n },\n - \ \"isUpgrade\": {\n \"type\": \"boolean\",\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"PlaylistItem\": {\n \"id\": - \"PlaylistItem\",\n \"type\": \"object\",\n \"description\": \"A - *playlistItem* resource identifies another resource, such as a video, that - is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"status\": {\n \"$ref\": - \"PlaylistItemStatus\",\n \"description\": \"The status object contains - information about the playlist item's privacy status.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the playlist item.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"PlaylistItemContentDetails\",\n \"description\": - \"The contentDetails object is included in the resource if the included item - is a YouTube video. The object contains additional information about the video.\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the playlist item, such as its title and - position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#playlistItem\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\"\n - \ }\n }\n },\n \"PlaylistItemSnippet\": {\n \"properties\": - {\n \"videoOwnerChannelId\": {\n \"type\": \"string\",\n \"description\": - \"Channel id for the channel this video belongs to.\"\n },\n \"position\": - {\n \"description\": \"The order in which the item appears in the - playlist. The value uses a zero-based index, so the first item has a position - of 0, the second item has a position of 1, and so forth.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"videoOwnerChannelTitle\": - {\n \"description\": \"Channel title for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the playlist item. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the user that added the item to the playlist.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the item - was added to the playlist.\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The item's description.\"\n },\n \"title\": {\n \"description\": - \"The item's title.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The id - object contains information that can be used to uniquely identify the resource - that is included in the playlist as the playlist item.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the playlist - item belongs to.\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist - item is in.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a playlist, including title, description and thumbnails. Basic details of - a YouTube Playlist item provided by the author. Next ID: 15\",\n \"id\": - \"PlaylistItemSnippet\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"Video processing progress and completion time estimate.\",\n \"properties\": - {\n \"partsTotal\": {\n \"description\": \"An estimate of - the total number of parts that need to be processed for the video. The number - may be updated with more precise estimates while YouTube processes the video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"partsProcessed\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of parts of the video - that YouTube has already processed. You can estimate the percentage of the - video that YouTube has already processed by calculating: 100 * parts_processed - / parts_total Note that since the estimated number of parts could increase - without a corresponding increase in the number of parts that have already - been processed, it is possible that the calculated progress could periodically - decrease while YouTube processes a video.\"\n },\n \"timeLeftMs\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsSubscription\": {\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that the user subscribed - to.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsSubscription\",\n \"description\": - \"Information about a channel that a user subscribed to.\"\n }\n }\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 01 Feb 2023 10:42:46 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/videos?id=VOG-fFhq7kk&part=snippet - response: - body: - string: "{\n \"kind\": \"youtube#videoListResponse\",\n \"etag\": \"Sf8L_yk_W0NDqPksFeK1nmC2Wis\",\n - \ \"items\": [\n {\n \"kind\": \"youtube#video\",\n \"etag\": - \"uJeC8cRJpacJxGVl5VtAD_-bby4\",\n \"id\": \"VOG-fFhq7kk\",\n \"snippet\": - {\n \"publishedAt\": \"2022-09-15T18:14:34Z\",\n \"channelId\": - \"UCk2OzObixhe_mbMfMQGLuJw\",\n \"title\": \"YouTube Bolt button\",\n - \ \"description\": \"\",\n \"thumbnails\": {\n \"default\": - {\n \"url\": \"https://i.ytimg.com/vi/VOG-fFhq7kk/default.jpg\",\n - \ \"width\": 120,\n \"height\": 90\n },\n \"medium\": - {\n \"url\": \"https://i.ytimg.com/vi/VOG-fFhq7kk/mqdefault.jpg\",\n - \ \"width\": 320,\n \"height\": 180\n },\n \"high\": - {\n \"url\": \"https://i.ytimg.com/vi/VOG-fFhq7kk/hqdefault.jpg\",\n - \ \"width\": 480,\n \"height\": 360\n },\n \"standard\": - {\n \"url\": \"https://i.ytimg.com/vi/VOG-fFhq7kk/sddefault.jpg\",\n - \ \"width\": 640,\n \"height\": 480\n }\n },\n - \ \"channelTitle\": \"Another Channel\",\n \"categoryId\": \"22\",\n - \ \"liveBroadcastContent\": \"none\",\n \"localized\": {\n \"title\": - \"YouTube Bolt button\",\n \"description\": \"\"\n }\n }\n - \ }\n ],\n \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": - 1\n }\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 01 Feb 2023 10:42:46 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"parameters\": {\n \"prettyPrint\": {\n \"type\": \"boolean\",\n - \ \"default\": \"true\",\n \"description\": \"Returns response with - indentations and line breaks.\",\n \"location\": \"query\"\n },\n - \ \"$.xgafv\": {\n \"description\": \"V1 error format.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"v1 error format\",\n - \ \"v2 error format\"\n ],\n \"enum\": [\n \"1\",\n - \ \"2\"\n ],\n \"type\": \"string\"\n },\n \"quotaUser\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"oauth_token\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"OAuth 2.0 token for - the current user.\"\n },\n \"key\": {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"access_token\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"OAuth access token.\"\n },\n \"uploadType\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"Legacy upload - protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n },\n \"upload_protocol\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n },\n - \ \"callback\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"JSONP\"\n },\n \"fields\": {\n \"location\": - \"query\",\n \"description\": \"Selector specifying which fields to include - in a partial response.\",\n \"type\": \"string\"\n },\n \"alt\": - {\n \"type\": \"string\",\n \"description\": \"Data format for response.\",\n - \ \"enumDescriptions\": [\n \"Responses with Content-Type of application/json\",\n - \ \"Media download with context-dependent Content-Type\",\n \"Responses - with Content-Type of application/x-protobuf\"\n ],\n \"enum\": [\n - \ \"json\",\n \"media\",\n \"proto\"\n ],\n \"location\": - \"query\",\n \"default\": \"json\"\n }\n },\n \"documentationLink\": - \"https://developers.google.com/youtube/\",\n \"resources\": {\n \"videos\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"id\": \"youtube.videos.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"VideoListResponse\"\n },\n \"path\": \"youtube/v3/videos\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"videoCategoryId\": {\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"location\": - \"query\",\n \"default\": \"0\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"description\": \"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.\",\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"chart\": {\n \"location\": - \"query\",\n \"description\": \"Return the videos that are in - the specified chart.\",\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ],\n - \ \"type\": \"string\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Use a chart that is specific to the specified - region\"\n },\n \"maxWidth\": {\n \"description\": - \"Return the player with maximum height specified in\",\n \"maximum\": - \"8192\",\n \"location\": \"query\",\n \"minimum\": - \"72\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Return - videos with the given ids.\",\n \"repeated\": true\n },\n - \ \"locale\": {\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxHeight\": {\n \"minimum\": - \"72\",\n \"location\": \"query\",\n \"maximum\": - \"8192\",\n \"type\": \"integer\",\n \"format\": - \"int32\"\n },\n \"myRating\": {\n \"location\": - \"query\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\"\n },\n \"hl\": - {\n \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\"\n },\n \"rate\": {\n \"id\": - \"youtube.videos.rate\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Adds a like or dislike rating to a video or removes - a rating from a video.\",\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"path\": \"youtube/v3/videos/rate\",\n \"parameters\": - {\n \"rating\": {\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"required\": true\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n }\n },\n - \ \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"path\": \"youtube/v3/videos\",\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"id\": \"youtube.videos.update\",\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\"\n }\n }\n - \ },\n \"getRating\": {\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"response\": - {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.getRating\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Retrieves the ratings that the authorized user - gave to a list of specified videos.\",\n \"flatPath\": \"youtube/v3/videos/getRating\",\n - \ \"httpMethod\": \"GET\"\n },\n \"insert\": {\n \"id\": - \"youtube.videos.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"path\": \"youtube/v3/videos\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\"\n },\n \"stabilize\": {\n \"description\": - \"Should stabilize be applied to the upload.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"notifySubscribers\": {\n \"default\": - \"true\",\n \"description\": \"Notify the channel subscribers - about the new video. As default, the notification is enabled.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"autoLevels\": {\n \"description\": - \"Should auto-levels be applied to the upload.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"mediaUpload\": - {\n \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": true\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/videos\"\n }\n - \ },\n \"maxSize\": \"274877906944\",\n \"accept\": - [\n \"video/*\",\n \"application/octet-stream\"\n - \ ]\n },\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"description\": \"Inserts a new resource - into this collection.\"\n },\n \"delete\": {\n \"path\": - \"youtube/v3/videos\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.videos.delete\"\n - \ },\n \"reportAbuse\": {\n \"description\": \"Report - abuse for a video.\",\n \"parameterOrder\": [],\n \"path\": - \"youtube/v3/videos/reportAbuse\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.videos.reportAbuse\",\n - \ \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n \"request\": - {\n \"$ref\": \"VideoAbuseReport\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n }\n }\n }\n - \ },\n \"commentThreads\": {\n \"methods\": {\n \"insert\": - {\n \"path\": \"youtube/v3/commentThreads\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"description\": \"Inserts a new - resource into this collection.\",\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/commentThreads\"\n },\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.commentThreads.list\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"response\": {\n \"$ref\": - \"CommentThreadListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\"\n },\n \"videoId\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads of the specified - video.\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads for all the channel - comments (ie does not include comments left on videos).\"\n },\n - \ \"moderationStatus\": {\n \"enumDescriptions\": [\n - \ \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": - \"string\",\n \"default\": \"published\",\n \"location\": - \"query\",\n \"description\": \"Limits the returned comment threads - to those with the specified moderation status. Not compatible with the 'id' - filter. Valid values: published, heldForReview, likelySpam.\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ]\n },\n \"allThreadsRelatedToChannelId\": - {\n \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"searchTerms\": - {\n \"description\": \"Limits the returned comment threads to - those matching the specified key words. Not compatible with the 'id' filter.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"textFormat\": {\n \"description\": - \"The requested text format for the returned comments.\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"default\": \"html\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"order\": - {\n \"enum\": [\n \"orderUnspecified\",\n \"time\",\n - \ \"relevance\"\n ],\n \"default\": - \"time\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Order by time.\",\n \"Order by relevance.\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"1\",\n \"default\": - \"20\",\n \"format\": \"uint32\",\n \"maximum\": - \"100\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - a comma-separated list of one or more commentThread resource properties that - the API response will include.\",\n \"required\": true\n }\n - \ }\n }\n }\n },\n \"tests\": {\n \"methods\": - {\n \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"required\": true\n - \ },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/tests\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/tests\",\n \"response\": {\n \"$ref\": - \"TestItem\"\n },\n \"request\": {\n \"$ref\": - \"TestItem\"\n },\n \"httpMethod\": \"POST\",\n \"description\": - \"POST method.\",\n \"id\": \"youtube.tests.insert\"\n }\n - \ }\n },\n \"thumbnails\": {\n \"methods\": {\n \"set\": - {\n \"id\": \"youtube.thumbnails.set\",\n \"parameters\": - {\n \"videoId\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n }\n - \ },\n \"parameterOrder\": [\n \"videoId\"\n ],\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"path\": - \"youtube/v3/thumbnails/set\",\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"mediaUpload\": - {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"2097152\"\n },\n \"supportsMediaUpload\": true,\n \"flatPath\": - \"youtube/v3/thumbnails/set\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"hl\": - {\n \"default\": \"en-US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the videoCategory resource parts that the API response - will include. Supported values are id and snippet.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/i18nLanguages\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - i18nLanguage resource properties that the API response will include. Set the - parameter value to snippet.\",\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"default\": \"en_US\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/i18nLanguages\",\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"I18nLanguageListResponse\"\n }\n }\n - \ }\n },\n \"liveStreams\": {\n \"methods\": {\n \"update\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"response\": {\n - \ \"$ref\": \"LiveStream\"\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"id\": \"youtube.liveStreams.update\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Updates - an existing stream for the authenticated user.\"\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.delete\",\n - \ \"description\": \"Deletes an existing stream for the authenticated - user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"list\": {\n \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"description\": \"Retrieve the list of streams associated - with the given channel. --\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"Return LiveStreams with the given - ids from Stubby or Apiary.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"maxResults\": {\n \"default\": \"5\",\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"type\": - \"integer\",\n \"minimum\": \"0\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.liveStreams.list\"\n },\n \"insert\": {\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveStreams\",\n \"description\": \"Inserts a new stream - for the authenticated user.\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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, - content_details, and status.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveStream\"\n }\n }\n }\n - \ },\n \"captions\": {\n \"methods\": {\n \"download\": {\n - \ \"parameters\": {\n \"tlang\": {\n \"description\": - \"tlang is the language code; machine translate the captions into this language.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"tfmt\": {\n \"description\": \"Convert - the captions into this format. Supported options are sbv, srt, and vtt.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The - ID of the caption track to download, required for One Platform.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"path\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n }\n - \ },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"useMediaDownloadService\": - true,\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"description\": - \"Downloads a caption track.\",\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"supportsMediaDownload\": true,\n \"id\": \"youtube.captions.download\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.captions.delete\",\n - \ \"path\": \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n }\n },\n \"description\": - \"Deletes a resource.\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"parameters\": {\n \"onBehalfOf\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\"\n },\n \"part\": {\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\"\n },\n - \ \"id\": {\n \"description\": \"Returns the captions - with the given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Returns the captions for the specified video.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\",\n - \ \"videoId\"\n ],\n \"id\": \"youtube.captions.list\"\n - \ },\n \"insert\": {\n \"mediaUpload\": {\n \"maxSize\": - \"104857600\",\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"supportsMediaUpload\": - true,\n \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"id\": \"youtube.captions.insert\",\n \"parameters\": - {\n \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is be on behalf of\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"sync\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - caption resource parts that the API response will include. Set the parameter - value to snippet.\",\n \"location\": \"query\"\n }\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"update\": {\n \"mediaUpload\": {\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\",\n - \ \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"httpMethod\": \"PUT\",\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"supportsMediaUpload\": - true,\n \"id\": \"youtube.captions.update\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"parameters\": {\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"type\": \"string\"\n },\n \"sync\": - {\n \"location\": \"query\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"type\": \"boolean\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"repeated\": - true\n }\n }\n }\n }\n },\n \"superChatEvents\": - {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.superChatEvents.list\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/superChatEvents\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the superChatEvent resource parts that the API - response will include. This parameter is currently not supported.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - rendered funding amounts in specified language.\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"minimum\": \"1\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"format\": \"uint32\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"SuperChatEventListResponse\"\n },\n \"flatPath\": \"youtube/v3/superChatEvents\"\n - \ }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.channelSections.insert\",\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true,\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\"\n },\n \"list\": - {\n \"parameters\": {\n \"id\": {\n \"description\": - \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"description\": - \"Return the ChannelSections owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"hl\": - {\n \"description\": \"Return content in specified language\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the ChannelSections owned by the specified channel ID.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.list\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"update\": {\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channelSections.update\",\n \"path\": - \"youtube/v3/channelSections\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.channelSections.delete\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Deletes a resource.\"\n }\n }\n },\n - \ \"playlists\": {\n \"methods\": {\n \"delete\": {\n \"path\": - \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\"\n },\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"id\": \"youtube.playlists.update\",\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/playlists\",\n \"description\": \"Updates an existing - resource.\"\n },\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/playlists\",\n \"description\": \"Retrieves a list of - resources, possibly filtered.\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\",\n \"default\": \"5\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return content in specified language\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlists owned by the specified channel ID.\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"description\": - \"Return the playlists owned by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"id\": \"youtube.playlists.list\"\n },\n \"insert\": - {\n \"path\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"id\": \"youtube.playlists.insert\"\n }\n }\n },\n - \ \"liveChatBans\": {\n \"methods\": {\n \"delete\": {\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.liveChatBans.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"description\": \"Deletes a - chat ban.\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/liveChat/bans\"\n },\n \"insert\": {\n \"request\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true\n }\n },\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"flatPath\": \"youtube/v3/liveChat/bans\"\n - \ }\n }\n },\n \"comments\": {\n \"methods\": {\n \"insert\": - {\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"id\": \"youtube.comments.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"setModerationStatus\": {\n \"description\": - \"Sets the moderation status of one or more comments.\",\n \"path\": - \"youtube/v3/comments/setModerationStatus\",\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Modifies the moderation status - of the comments with the given IDs\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"required\": true\n - \ },\n \"moderationStatus\": {\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"required\": - true,\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\"\n },\n \"banAuthor\": {\n \"default\": - \"false\",\n \"location\": \"query\",\n \"description\": - \"If set to true the author of the comment gets added to the ban list. This - means all future comments of the author will autmomatically be rejected. Only - valid in combination with STATUS_REJECTED.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\"\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"description\": - \"Deletes a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"id\": \"youtube.comments.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n }\n },\n \"markAsSpam\": {\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Flags the comments with the given - IDs as spam in the caller's opinion.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true\n }\n - \ },\n \"path\": \"youtube/v3/comments/markAsSpam\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"id\": \"youtube.comments.markAsSpam\"\n },\n - \ \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"path\": \"youtube/v3/comments\",\n \"parameters\": {\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"flatPath\": - \"youtube/v3/comments\",\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.comments.update\"\n - \ },\n \"list\": {\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"parentId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies a comma-separated - list of one or more comment resource properties that the API response will - include.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"maxResults\": {\n \"default\": - \"20\",\n \"minimum\": \"1\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"maximum\": \"100\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Returns the comments with the given IDs for - One Platform.\",\n \"location\": \"query\"\n },\n - \ \"textFormat\": {\n \"location\": \"query\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"description\": - \"The requested text format for the returned comments.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"default\": \"html\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ }\n },\n \"id\": \"youtube.comments.list\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ }\n }\n }\n },\n \"subscriptions\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.subscriptions.list\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Flag for returning the subscriptions of the - authenticated user.\"\n },\n \"order\": {\n \"default\": - \"relevance\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"description\": \"The order of the returned - subscriptions\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Return the subscriptions with - the given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n },\n \"mySubscribers\": - {\n \"description\": \"Return the subscribers of the given channel - owner.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\"\n },\n \"forChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": - \"Return the subscriptions of the given channel owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"myRecentSubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ }\n },\n \"delete\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"httpMethod\": \"DELETE\"\n },\n - \ \"insert\": {\n \"response\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"id\": \"youtube.subscriptions.insert\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"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.\"\n }\n - \ },\n \"request\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"list\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"parameters\": {\n \"linkingToken\": {\n - \ \"description\": \"Get a third party link with the given linking - token.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"description\": - \"Get a third party link of the given type.\"\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - response will include. Supported values are linkingToken, status, and snippet.\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.thirdPartyLinks.list\"\n },\n - \ \"delete\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"type\": {\n \"description\": - \"Type of the link to be deleted.\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Do not - use. Required for compatibility.\"\n },\n \"linkingToken\": - {\n \"description\": \"Delete the partner links with the given - linking token.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Deletes - a resource.\",\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ],\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.thirdPartyLinks.delete\"\n - \ },\n \"insert\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"part\": {\n \"description\": \"The *part* parameter - specifies the thirdPartyLink resource parts that the API request and response - will include. Supported values are linkingToken, status, and snippet.\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n },\n - \ \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"httpMethod\": \"PUT\",\n \"id\": - \"youtube.thirdPartyLinks.update\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\"\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"VideoCategoryListResponse\"\n },\n \"parameters\": {\n - \ \"hl\": {\n \"location\": \"query\",\n \"default\": - \"en-US\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"repeated\": true,\n \"required\": - true\n },\n \"regionCode\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"Returns - the video categories with the given IDs for Stubby or Apiary.\"\n }\n - \ },\n \"path\": \"youtube/v3/videoCategories\",\n \"id\": - \"youtube.videoCategories.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"path\": \"youtube/v3/membershipsLevels\",\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"MembershipsLevelListResponse\"\n }\n }\n }\n },\n - \ \"channels\": {\n \"methods\": {\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/channels\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/channels\",\n - \ \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"parameters\": {\n \"forUsername\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the channel associated with a YouTube - username.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Return - the channels with the specified IDs.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"hl\": {\n - \ \"type\": \"string\",\n \"description\": \"Stands - for \\\"host language\\\". Specifies the localization language of the metadata - to be filled into snippet.localized. The field is filled with the default - metadata if there is no localization in the specified language. The parameter - value must be a language code included in the list returned by the i18nLanguages.list - method (e.g. en_US, es_MX).\",\n \"location\": \"query\"\n },\n - \ \"managedByMe\": {\n \"type\": \"boolean\",\n \"description\": - \"Return the channels managed by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"mySubscribers\": {\n \"description\": - \"Return the channels subscribed to the authenticated user\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"default\": \"5\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the ids of channels owned by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channels within the specified - guide category ID.\"\n }\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"id\": \"youtube.channels.list\"\n },\n \"update\": - {\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"id\": \"youtube.channels.update\",\n \"request\": {\n - \ \"$ref\": \"Channel\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/channels\"\n - \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"list\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"id\": \"youtube.liveChatModerators.list\",\n \"response\": - {\n \"$ref\": \"LiveChatModeratorListResponse\"\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"liveChatId\": {\n \"location\": - \"query\",\n \"description\": \"The id of the live chat for which - moderators should be returned.\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"description\": \"Deletes a chat moderator.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.liveChatModerators.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"watermarks\": {\n \"methods\": {\n - \ \"unset\": {\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"description\": \"Allows removal of channel watermark.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"path\": \"youtube/v3/watermarks/unset\",\n \"flatPath\": - \"youtube/v3/watermarks/unset\",\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.watermarks.unset\"\n },\n \"set\": {\n \"request\": - {\n \"$ref\": \"InvideoBranding\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/watermarks/set\",\n \"supportsMediaUpload\": true,\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\"\n },\n \"description\": - \"Allows upload of watermark image and setting it for a channel.\",\n \"path\": - \"youtube/v3/watermarks/set\",\n \"id\": \"youtube.watermarks.set\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n }\n }\n - \ }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"parameterOrder\": - [],\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"path\": - \"youtube/v3/commentThreads\"\n }\n }\n }\n }\n - \ },\n \"liveChatMessages\": {\n \"methods\": {\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Deletes a chat message.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.liveChatMessages.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new resource into this collection.\",\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.liveChatMessages.insert\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveChatMessage\"\n }\n },\n \"list\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"profileImageSize\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"minimum\": \"16\",\n \"maximum\": \"720\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the liveChatComment - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"default\": \"500\",\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"maximum\": - \"2000\",\n \"format\": \"uint32\",\n \"minimum\": - \"200\"\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the localization language in which - the system messages should be returned.\",\n \"location\": \"query\"\n - \ },\n \"liveChatId\": {\n \"required\": - true,\n \"description\": \"The id of the live chat for which - comments should be returned.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"path\": \"youtube/v3/liveChat/messages\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/liveChat/messages\"\n }\n - \ }\n },\n \"abuseReports\": {\n \"methods\": {\n \"insert\": - {\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"response\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/abuseReports\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.abuseReports.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n }\n - \ }\n }\n },\n \"activities\": {\n \"methods\": {\n - \ \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/activities\",\n \"parameters\": - {\n \"home\": {\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"regionCode\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"location\": - \"query\"\n },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"publishedBefore\": {\n \"location\": - \"query\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/activities\",\n \"id\": \"youtube.activities.list\",\n - \ \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"transition\": {\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameters\": {\n \"broadcastStatus\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"The status to which the broadcast is going to transition.\",\n \"required\": - true,\n \"enumDescriptions\": [\n \"\",\n \"Start - testing the broadcast. YouTube transmits video to the broadcast's monitor - stream. Note that you can only transition a broadcast to the testing state - if its contentDetails.monitorStream.enableMonitorStream property is set to - true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The - broadcast is over. YouTube stops transmitting video.\"\n ],\n - \ \"enum\": [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ]\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"description\": \"Broadcast to transition.\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"description\": \"Transition - a broadcast to a given status.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"httpMethod\": \"POST\"\n },\n \"bind\": {\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"path\": - \"youtube/v3/liveBroadcasts/bind\",\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Broadcast to bind to the stream\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"streamId\": {\n \"location\": \"query\",\n \"description\": - \"Stream to bind, if not set unbind the current one.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true\n - \ }\n },\n \"id\": \"youtube.liveBroadcasts.bind\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Bind a broadcast to a stream.\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\"\n },\n \"delete\": {\n \"description\": - \"Delete a given broadcast.\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Broadcast - to delete.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"id\": \"youtube.liveBroadcasts.delete\",\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.list\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"broadcastStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"description\": \"Return broadcasts - with a certain status, e.g. active broadcasts.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ]\n },\n \"broadcastType\": {\n \"enum\": - [\n \"broadcastTypeFilterUnspecified\",\n \"all\",\n - \ \"event\",\n \"persistent\"\n ],\n - \ \"default\": \"event\",\n \"description\": \"Return - only broadcasts with the selected type.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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, status - and statistics.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Return - broadcasts with the given ids from Stubby or Apiary.\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"maxResults\": {\n \"default\": \"5\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\",\n \"format\": \"uint32\"\n - \ }\n },\n \"description\": \"Retrieve the list - of broadcasts associated with the given channel.\",\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n }\n },\n - \ \"insert\": {\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new stream for the authenticated user.\",\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n }\n - \ },\n \"insertCuepoint\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [],\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"Cuepoint\"\n - \ },\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"request\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Broadcast to insert ads to, - or equivalently `external_video_id` for internal use.\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Insert - cuepoints in a broadcast\"\n },\n \"update\": {\n \"id\": - \"youtube.liveBroadcasts.update\",\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Updates an existing broadcast for the authenticated user.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"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.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n }\n }\n }\n },\n \"playlistItems\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlistItems.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"PlaylistItemListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"minimum\": - \"0\",\n \"type\": \"integer\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": true,\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"videoId\": {\n \"location\": \"query\",\n - \ \"description\": \"Return the playlist items associated with - the given video ID.\",\n \"type\": \"string\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"playlistId\": {\n \"description\": - \"Return the playlist items within the given playlist.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"path\": \"youtube/v3/playlistItems\",\n \"id\": - \"youtube.playlistItems.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"update\": {\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlistItems.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\"\n },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.playlistItems.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of search resources\",\n - \ \"id\": \"youtube.search.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"videoCaption\": - {\n \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ],\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"publishedAfter\": {\n \"location\": - \"query\",\n \"format\": \"google-datetime\",\n \"description\": - \"Filter on resources published after this date.\",\n \"type\": - \"string\"\n },\n \"videoLicense\": {\n \"enum\": - [\n \"any\",\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Filter on the license of the videos.\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"type\": \"string\"\n },\n \"topicId\": - {\n \"description\": \"Restrict results to a particular topic.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"relevanceLanguage\": {\n \"location\": - \"query\",\n \"description\": \"Return results relevant to this - language.\",\n \"type\": \"string\"\n },\n \"locationRadius\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on distance from the location (specified - above).\"\n },\n \"location\": {\n \"description\": - \"Filter on location of the video\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"q\": {\n - \ \"location\": \"query\",\n \"description\": \"Textual - search terms to match.\",\n \"type\": \"string\"\n },\n - \ \"order\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"location\": \"query\",\n \"default\": - \"relevance\",\n \"description\": \"Sort order of the results.\"\n - \ },\n \"channelType\": {\n \"description\": - \"Add a filter on the channel search.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ]\n },\n - \ \"videoDefinition\": {\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"description\": \"Filter on the definition - of the videos.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"videoType\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Filter on videos of a specific type.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"videoTypeUnspecified\",\n \"any\",\n - \ \"movie\",\n \"episode\"\n ]\n - \ },\n \"videoSyndicated\": {\n \"location\": - \"query\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"description\": - \"Filter on syndicated videos.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all videos, syndicated or - not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"type\": \"string\"\n },\n \"videoDimension\": - {\n \"description\": \"Filter on 3d videos.\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ]\n },\n \"forDeveloper\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Restrict - results to a particular set of resource types from One Platform.\"\n },\n - \ \"publishedBefore\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"format\": \"google-datetime\",\n - \ \"description\": \"Filter on resources published before this - date.\"\n },\n \"videoEmbeddable\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Filter - on embeddable videos.\",\n \"type\": \"string\",\n \"enum\": - [\n \"videoEmbeddableUnspecified\",\n \"any\",\n - \ \"true\"\n ]\n },\n \"videoCategoryId\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on videos in a specific category.\",\n \"type\": \"string\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Display - the content as seen by viewers in this country.\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"forMine\": {\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"eventType\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"description\": \"Filter on the livestream status of the videos.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"relatedToVideoId\": {\n \"type\": \"string\",\n - \ \"description\": \"Search related to a resource.\",\n \"location\": - \"query\"\n },\n \"forContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"Search owned by a content owner.\",\n - \ \"type\": \"boolean\"\n },\n \"videoDuration\": - {\n \"description\": \"Filter on the duration of the videos.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter video search results based on their duration. This is the default - value.\",\n \"Only include videos that are less than four minutes - long.\",\n \"Only include videos that are between four and - 20 minutes long (inclusive).\",\n \"Only include videos longer - than 20 minutes.\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ]\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"safeSearch\": {\n \"description\": - \"Indicates whether the search results should include restricted content as - well as standard content.\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ],\n \"default\": \"moderate\"\n - \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"minimum\": - \"0\"\n },\n \"channelId\": {\n \"description\": - \"Filter on resources belonging to this channelId.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/search\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/search\",\n \"response\": {\n - \ \"$ref\": \"SearchListResponse\"\n }\n }\n }\n - \ },\n \"members\": {\n \"methods\": {\n \"list\": {\n \"flatPath\": - \"youtube/v3/members\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/members\",\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"filterByMemberChannelId\": {\n - \ \"type\": \"string\",\n \"description\": \"Comma - separated list of channel IDs. Only data about members that are part of this - list will be included in the response.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - member resource parts that the API response will include. Set the parameter - value to snippet.\"\n },\n \"hasAccessToLevel\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter members in the results set to the - ones that have access to a level.\"\n },\n \"mode\": - {\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"location\": \"query\",\n \"default\": \"all_current\",\n - \ \"type\": \"string\",\n \"description\": \"Parameter - that specifies which channel members to return.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ]\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"location\": - \"query\",\n \"maximum\": \"1000\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.members.list\",\n - \ \"description\": \"Retrieves a list of members that match the request - criteria for a channel.\"\n }\n }\n },\n \"channelBanners\": - {\n \"methods\": {\n \"insert\": {\n \"id\": \"youtube.channelBanners.insert\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"6291456\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"parameterOrder\": [],\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/channelBanners/insert\",\n \"supportsMediaUpload\": - true,\n \"path\": \"youtube/v3/channelBanners/insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n - \ \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n },\n \"channelId\": - {\n \"description\": \"Unused, channel_id is currently derived - from the security context of the requestor.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n }\n }\n - \ }\n },\n \"i18nRegions\": {\n \"methods\": {\n \"list\": - {\n \"flatPath\": \"youtube/v3/i18nRegions\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"description\": \"The *part* parameter specifies the i18nRegion - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"default\": \"en_US\"\n - \ }\n },\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"I18nRegionListResponse\"\n },\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n }\n },\n \"schemas\": {\n \"ChannelProfileDetails\": - {\n \"properties\": {\n \"profileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channels's avatar URL.\"\n },\n - \ \"channelUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channel's URL.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube channel ID.\"\n },\n - \ \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The channel's display name.\"\n }\n },\n \"id\": \"ChannelProfileDetails\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"properties\": - {\n \"playlistItemId\": {\n \"type\": \"string\",\n \"description\": - \"ID of the item within the playlist.\"\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information about the resource that was added to the playlist.\"\n - \ },\n \"playlistId\": {\n \"description\": \"The value - that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Information about - a new playlist item.\",\n \"type\": \"object\"\n },\n \"MembershipsDetails\": - {\n \"properties\": {\n \"membershipsDuration\": {\n \"description\": - \"Data about memberships duration without taking into consideration pricing - levels.\",\n \"$ref\": \"MembershipsDuration\"\n },\n \"accessibleLevels\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"Ids of all levels that the user has access to. - This includes the currently active level and all other levels that are included - because of a higher purchase.\",\n \"type\": \"array\"\n },\n - \ \"highestAccessibleLevelDisplayName\": {\n \"type\": \"string\",\n - \ \"description\": \"Display name for the highest level that the user - has access to at the moment.\"\n },\n \"highestAccessibleLevel\": - {\n \"description\": \"Id of the highest level that the user has - access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"membershipsDurationAtLevels\": {\n \"description\": \"Data - about memberships duration on particular pricing levels.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ }\n }\n },\n \"type\": \"object\",\n \"id\": - \"MembershipsDetails\"\n },\n \"LiveChatNewSponsorDetails\": {\n \"id\": - \"LiveChatNewSponsorDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n },\n \"isUpgrade\": {\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"VideoFileDetails\": {\n \"id\": - \"VideoFileDetails\",\n \"type\": \"object\",\n \"description\": - \"Describes original video file properties, including technical details about - audio and video streams, but also metadata information like content length, - digitization time, or geotagging information.\",\n \"properties\": {\n - \ \"videoStreams\": {\n \"description\": \"A list of video - streams contained in the uploaded video file. Each item in the list contains - detailed metadata about a video stream.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ }\n },\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - uploaded video file's combined (video and audio) bitrate in bits per second.\"\n - \ },\n \"fileType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ],\n \"description\": \"The uploaded file's type as detected - by YouTube's video processing engine. Currently, YouTube only processes video - files, but this field is present whether a video file or another type of file - was uploaded.\"\n },\n \"creationTime\": {\n \"description\": - \"The date and time when the uploaded video file was created. The value is - specified in ISO 8601 format. Currently, the following ISO 8601 formats are - supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time - with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n - \ },\n \"durationMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The length of the uploaded video - in milliseconds.\"\n },\n \"audioStreams\": {\n \"items\": - {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n },\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\",\n \"type\": - \"array\"\n },\n \"fileName\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded file's name. This field is present - whether a video file or another type of file was uploaded.\"\n },\n - \ \"fileSize\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\",\n \"format\": \"uint64\"\n - \ },\n \"container\": {\n \"description\": \"The uploaded - video file's container format.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveChatUserBannedMessageDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"banType\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"permanent\",\n \"temporary\"\n - \ ],\n \"description\": \"The type of ban.\"\n },\n - \ \"banDurationSeconds\": {\n \"format\": \"uint64\",\n \"description\": - \"The duration of the ban. This property is only present if the banType is - temporary.\",\n \"type\": \"string\"\n },\n \"bannedUserDetails\": - {\n \"description\": \"The details of the user that was banned.\",\n - \ \"$ref\": \"ChannelProfileDetails\"\n }\n },\n \"id\": - \"LiveChatUserBannedMessageDetails\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"id\": \"VideoFileDetailsVideoStream\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"heightPixels\": {\n \"format\": - \"uint32\",\n \"description\": \"The encoded video content's height - in pixels.\",\n \"type\": \"integer\"\n },\n \"widthPixels\": - {\n \"type\": \"integer\",\n \"description\": \"The encoded - video content's width in pixels. You can calculate the video's encoding aspect - ratio as width_pixels / height_pixels.\",\n \"format\": \"uint32\"\n - \ },\n \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The video codec that the stream uses.\"\n },\n \"rotation\": - {\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ],\n \"description\": \"The amount - that YouTube needs to rotate the original source content to properly display - the video.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"frameRateFps\": {\n \"type\": \"number\",\n \"format\": - \"double\",\n \"description\": \"The video stream's frame rate, in - frames per second.\"\n },\n \"aspectRatio\": {\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\",\n \"type\": \"number\",\n - \ \"format\": \"double\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"bitrateBps\": {\n \"format\": \"uint64\",\n \"description\": - \"The video stream's bitrate, in bits per second.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Information about - a video stream.\"\n },\n \"SuperStickerMetadata\": {\n \"id\": - \"SuperStickerMetadata\",\n \"properties\": {\n \"altText\": {\n - \ \"type\": \"string\",\n \"description\": \"Internationalized - alt text that describes the sticker image and any animation associated with - it.\"\n },\n \"altTextLanguage\": {\n \"description\": - \"Specifies the localization language in which the alt text is returned.\",\n - \ \"type\": \"string\"\n },\n \"stickerId\": {\n \"type\": - \"string\",\n \"description\": \"Unique identifier of the Super Sticker. - This is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SubscriptionSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel that the subscription belongs to.\"\n },\n - \ \"title\": {\n \"description\": \"The subscription's title.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The subscription's details.\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the subscription was created.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"thumbnails\": {\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the subscriber's channel.\",\n \"type\": \"string\"\n },\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\",\n \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n }\n }\n },\n \"id\": \"SubscriptionSnippet\",\n - \ \"description\": \"Basic details about a subscription, including title, - description and thumbnails of the subscribed item.\"\n },\n \"SuperChatEventSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"channelId\": - {\n \"description\": \"Channel id where the event occurred.\",\n - \ \"type\": \"string\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n },\n \"createdAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the event - occurred.\",\n \"type\": \"string\"\n },\n \"amountMicros\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\"\n },\n \"displayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the purchase amount and currency (e.g., \\\"$1.00\\\"). The string is rendered - for the given language.\"\n },\n \"currency\": {\n \"type\": - \"string\",\n \"description\": \"The currency in which the purchase - was made. ISO 4217.\"\n },\n \"messageType\": {\n \"type\": - \"integer\",\n \"description\": \"The tier for the paid message, - which is based on the amount of money spent to purchase the message.\",\n - \ \"format\": \"uint32\"\n },\n \"isSuperStickerEvent\": - {\n \"type\": \"boolean\",\n \"description\": \"True if - this event is a Super Sticker event.\"\n },\n \"supporterDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the supporter.\"\n },\n \"commentText\": {\n - \ \"type\": \"string\",\n \"description\": \"The text contents - of the comment left by the user.\"\n }\n },\n \"id\": \"SuperChatEventSnippet\"\n - \ },\n \"VideoCategoryListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#videoCategoryListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoCategory\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\"\n }\n },\n \"id\": \"VideoCategoryListResponse\",\n - \ \"type\": \"object\"\n },\n \"ChannelListResponse\": {\n \"properties\": - {\n \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n \"default\": - \"youtube#channelListResponse\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Channel\"\n }\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n },\n \"id\": \"ChannelListResponse\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageDeletedDetails\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"imageUrl\": {\n \"description\": \"An image - of the post's author.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n - \ \"facebook\",\n \"twitter\"\n ],\n \"type\": - \"string\",\n \"description\": \"The name of the social network.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"author\": - {\n \"type\": \"string\",\n \"description\": \"The author - of the social network post.\"\n },\n \"referenceUrl\": {\n \"description\": - \"The URL of the social network post.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsSocial\",\n \"type\": - \"object\",\n \"description\": \"Details about a social network post.\"\n - \ },\n \"LiveBroadcastContentDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"Detailed settings of a broadcast.\",\n \"id\": - \"LiveBroadcastContentDetails\",\n \"properties\": {\n \"enableAutoStop\": - {\n \"description\": \"This setting indicates whether auto stop is - enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\",\n \"type\": \"boolean\"\n - \ },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n },\n \"startWithSlate\": {\n \"description\": - \"This setting indicates whether the broadcast should automatically begin - with an in-stream slate when you update the broadcast's status to live. After - updating the status, you then need to send a liveCuepoints.insert request - that sets the cuepoint's eventState to end to remove the in-stream slate and - make your broadcast stream visible to viewers.\",\n \"type\": \"boolean\"\n - \ },\n \"latencyPreference\": {\n \"description\": \"If - both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enumDescriptions\": - [\n \"\",\n \"Best for: highest quality viewer playbacks - and higher resolutions.\",\n \"Best for: near real-time interaction, - with minimal playback buffering.\",\n \"Best for: real-time interaction - Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ]\n },\n \"enableLowLatency\": {\n \"description\": - \"Indicates whether this broadcast has low latency enabled.\",\n \"type\": - \"boolean\"\n },\n \"closedCaptionsType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"type\": - \"string\"\n },\n \"monitorStream\": {\n \"$ref\": - \"MonitorStreamInfo\",\n \"description\": \"The monitorStream object - contains information about the monitor stream, which the broadcaster can use - to review the event content before the broadcast stream is shown publicly.\"\n - \ },\n \"enableAutoStart\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether auto start is - enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\"\n },\n \"enableClosedCaptions\": - {\n \"description\": \"This setting indicates whether HTTP POST closed - captioning is enabled for this broadcast. The ingestion URL of the closed - captions is returned through the liveStreams API. This is mutually exclusive - with using the closed_captions_type property, and is equivalent to setting - closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n \"type\": - \"boolean\"\n },\n \"boundStreamId\": {\n \"type\": - \"string\",\n \"description\": \"This value uniquely identifies the - live stream bound to the broadcast.\"\n },\n \"projection\": - {\n \"description\": \"The projection format of this broadcast. This - defaults to rectangular.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"type\": - \"string\"\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"description\": - \"The date and time that the live stream referenced by boundStreamId was last - updated.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"stereoLayout\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\"\n },\n - \ \"enableContentEncryption\": {\n \"description\": \"This - setting indicates whether YouTube should enable content encryption for the - broadcast.\",\n \"type\": \"boolean\"\n },\n \"mesh\": - {\n \"type\": \"string\",\n \"description\": \"The mesh - for projecting the video if projection is mesh. The mesh value must be a UTF-8 - string containing the base-64 encoding of 3D mesh data that follows the Spherical - Video V2 RFC specification for an mshp box, excluding the box size and type - but including the following four reserved zero bytes for the version and flags.\",\n - \ \"format\": \"byte\"\n },\n \"recordFromStart\": {\n - \ \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\",\n \"type\": \"boolean\"\n },\n \"enableDvr\": - {\n \"description\": \"This setting determines whether viewers can - access DVR controls while watching the video. DVR controls enable the viewer - to control the video playback experience by pausing, rewinding, or fast forwarding - content. The default value for this property is true. *Important:* You must - set the value to true and also set the enableArchive property's value to true - if you want to make playback available immediately after the broadcast ends.\",\n - \ \"type\": \"boolean\"\n }\n }\n },\n \"VideoStatus\": - {\n \"description\": \"Basic details about a video category, such as - its localized title. Next Id: 18\",\n \"properties\": {\n \"failureReason\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"Unable - to convert video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ],\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ],\n \"description\": \"This value explains why a video - failed to upload. This property is only present if the uploadStatus property - indicates that the upload failed.\"\n },\n \"publishAt\": {\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the video is scheduled to publish. It can be set only if the privacy - status of the video is private..\",\n \"format\": \"date-time\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"uploadStatus\": {\n \"enumDescriptions\": [\n - \ \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"enum\": - [\n \"uploaded\",\n \"processed\",\n \"failed\",\n - \ \"rejected\",\n \"deleted\"\n ],\n \"description\": - \"The status of the uploaded video.\",\n \"type\": \"string\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"license\": {\n \"description\": \"The video's - license. @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ]\n },\n \"rejectionReason\": {\n \"description\": - \"This value explains why YouTube rejected an uploaded video. This property - is only present if the uploadStatus property indicates that the upload was - rejected.\",\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ]\n },\n - \ \"publicStatsViewable\": {\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n },\n \"privacyStatus\": {\n - \ \"description\": \"The video's privacy status.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\"\n },\n - \ \"embeddable\": {\n \"type\": \"boolean\",\n \"description\": - \"This value indicates if the video can be embedded on another website. @mutable - youtube.videos.insert youtube.videos.update\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoStatus\"\n },\n \"PlaylistItemSnippet\": - {\n \"id\": \"PlaylistItemSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The id object contains - information that can be used to uniquely identify the resource that is included - in the playlist as the playlist item.\",\n \"$ref\": \"ResourceId\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the item was added to - the playlist.\",\n \"format\": \"date-time\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the user that added the item to the playlist.\"\n - \ },\n \"playlistId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist - item is in.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the playlist item. 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.\"\n },\n \"position\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\"\n },\n \"videoOwnerChannelId\": {\n \"description\": - \"Channel id for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": - \"string\"\n },\n \"videoOwnerChannelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel this - video belongs to.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The item's description.\"\n },\n - \ \"title\": {\n \"description\": \"The item's title.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails. - Basic details of a YouTube Playlist item provided by the author. Next ID: - 15\"\n },\n \"ThirdPartyLinkListResponse\": {\n \"id\": \"ThirdPartyLinkListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoContentDetailsRegionRestriction\": {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"properties\": {\n \"blocked\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\"\n },\n \"allowed\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of region codes - that identify countries where the video is viewable. If this property is present - and a country is not listed in its value, then the video is blocked from appearing - in that country. If this property is present and contains an empty list, the - video is blocked in all countries.\"\n }\n },\n \"type\": - \"object\"\n },\n \"SuperChatEvent\": {\n \"description\": \"A - `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\",\n \"id\": \"SuperChatEvent\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"$ref\": \"SuperChatEventSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the Super Chat event.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#superChatEvent\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n - \ }\n }\n },\n \"I18nRegion\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"default\": \"youtube#i18nRegion\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n region.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n - \ }\n },\n \"description\": \"A *i18nRegion* resource identifies - a region where YouTube is available.\",\n \"id\": \"I18nRegion\"\n },\n - \ \"ThirdPartyLinkStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"linkStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"The third-party link status object contains - information about the status of the link.\",\n \"id\": \"ThirdPartyLinkStatus\"\n - \ },\n \"LevelDetails\": {\n \"id\": \"LevelDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"displayName\": {\n \"description\": - \"The name that should be used when referring to this level.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoContentDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"hasCustomThumbnail\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Indicates whether - the video uploader has provided a custom thumbnail image for the video. This - property is only visible to the video uploader.\"\n },\n \"countryRestriction\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - countryRestriction object contains information about the countries where a - video is (or is not) viewable.\"\n },\n \"projection\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"description\": \"Specifies the projection format of the video.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ]\n },\n \"caption\": {\n \"enum\": - [\n \"true\",\n \"false\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The value of captions indicates - whether the video has captions or not.\"\n },\n \"dimension\": - {\n \"description\": \"The value of dimension indicates whether the - video is available in 3D or in 2D.\",\n \"type\": \"string\"\n },\n - \ \"contentRating\": {\n \"description\": \"Specifies the ratings - that the video received under various rating schemes.\",\n \"$ref\": - \"ContentRating\"\n },\n \"duration\": {\n \"type\": - \"string\",\n \"description\": \"The length of the video. The tag - value is an ISO 8601 duration in the format PT#M#S, in which the letters PT - indicate that the value specifies a period of time, and the letters M and - S refer to length in minutes and seconds, respectively. The # characters preceding - the M and S letters are both integers that specify the number of minutes (or - seconds) of the video. For example, a value of PT15M51S indicates that the - video is 15 minutes and 51 seconds long.\"\n },\n \"regionRestriction\": - {\n \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"licensedContent\": - {\n \"description\": \"The value of is_license_content indicates - whether the video is licensed content.\",\n \"type\": \"boolean\"\n - \ },\n \"definition\": {\n \"description\": \"The value - of definition indicates whether the video is available in high definition - or only in standard definition.\",\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoContentDetails\",\n \"description\": \"Details - about the content of a YouTube Video.\"\n },\n \"Thumbnail\": {\n \"id\": - \"Thumbnail\",\n \"type\": \"object\",\n \"properties\": {\n \"url\": - {\n \"description\": \"The thumbnail image's URL.\",\n \"type\": - \"string\"\n },\n \"height\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"(Optional) - Height of the thumbnail image.\"\n },\n \"width\": {\n \"type\": - \"integer\",\n \"description\": \"(Optional) Width of the thumbnail - image.\",\n \"format\": \"uint32\"\n }\n },\n \"description\": - \"A thumbnail is an image representing a YouTube resource.\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"id\": \"ActivityContentDetailsUpload\",\n \"description\": - \"Information about the uploaded video.\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the uploaded video.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoCategory\": {\n \"type\": - \"object\",\n \"description\": \"A *videoCategory* resource identifies - a category that has been or could be associated with uploaded videos.\",\n - \ \"id\": \"VideoCategory\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video category.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"default\": \"youtube#videoCategory\"\n }\n }\n },\n - \ \"ThirdPartyLink\": {\n \"properties\": {\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLink\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#thirdPartyLink\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the third- party account link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n - \ },\n \"linkingToken\": {\n \"description\": \"The - linking_token identifies a YouTube account and channel with which the third - party account is linked.\",\n \"type\": \"string\"\n },\n - \ \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The status object contains information about the status of the link.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ThirdPartyLink\",\n \"description\": \"A *third party account link* - resource represents a link between a YouTube account or a channel and an account - on a third-party service.\",\n \"type\": \"object\"\n },\n \"ChannelBrandingSettings\": - {\n \"properties\": {\n \"watch\": {\n \"description\": - \"Branding properties for the watch page.\",\n \"$ref\": \"WatchSettings\"\n - \ },\n \"channel\": {\n \"$ref\": \"ChannelSettings\",\n - \ \"description\": \"Branding properties for the channel view.\"\n - \ },\n \"hints\": {\n \"description\": \"Additional - experimental branding properties.\",\n \"items\": {\n \"$ref\": - \"PropertyValue\"\n },\n \"type\": \"array\"\n },\n - \ \"image\": {\n \"$ref\": \"ImageSettings\",\n \"description\": - \"Branding properties for branding images.\"\n }\n },\n \"description\": - \"Branding properties of a YouTube channel.\",\n \"type\": \"object\",\n - \ \"id\": \"ChannelBrandingSettings\"\n },\n \"I18nLanguageSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"hl\": {\n - \ \"description\": \"A short BCP-47 code that uniquely identifies - a language.\",\n \"type\": \"string\"\n },\n \"name\": - {\n \"description\": \"The human-readable name of the language in - the language itself.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Basic details about an i18n language, such as language - code and human-readable name.\",\n \"id\": \"I18nLanguageSnippet\"\n - \ },\n \"ActivityListResponse\": {\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#activityListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#activityListResponse\\\".\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Activity\"\n }\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ActivityListResponse\",\n \"type\": - \"object\"\n },\n \"LiveBroadcastStatistics\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"totalChatCount\": {\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"concurrentViewers\": {\n \"type\": \"string\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\",\n \"format\": - \"uint64\"\n }\n },\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"Statistics about the live broadcast. These represent - a snapshot of the values at the time of the request. Statistics are only returned - for live broadcasts.\"\n },\n \"SubscriptionContentDetails\": {\n \"id\": - \"SubscriptionContentDetails\",\n \"description\": \"Details about the - content to witch a subscription refers.\",\n \"properties\": {\n \"newItemCount\": - {\n \"description\": \"The number of new items in the subscription - since its content was last read.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"totalItemCount\": {\n \"description\": - \"The approximate number of items that the subscription points to.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"activityType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ]\n }\n },\n - \ \"type\": \"object\"\n },\n \"MembershipsLevel\": {\n \"description\": - \"A *membershipsLevel* resource represents an offer made by YouTube creators - for their fans. Users can become members of the channel by joining one of - the available levels. They will provide recurring monetary support and receives - special benefits.\",\n \"id\": \"MembershipsLevel\",\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#membershipsLevel\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"MembershipsLevelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the level.\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the memberships level.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ActivityContentDetails\": {\n - \ \"id\": \"ActivityContentDetails\",\n \"type\": \"object\",\n \"description\": - \"Details about the content of an activity: the video that was shared, the - channel that was subscribed to, etc.\",\n \"properties\": {\n \"social\": - {\n \"description\": \"The social object contains details about a - social network post. This property is only present if the snippet.type is - social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n },\n - \ \"like\": {\n \"$ref\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"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.\"\n },\n \"upload\": {\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"comment\": {\n \"description\": \"The comment - object contains information about a resource that received a comment. This - property is only present if the snippet.type is comment.\",\n \"$ref\": - \"ActivityContentDetailsComment\"\n },\n \"recommendation\": - {\n \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\",\n \"$ref\": \"ActivityContentDetailsRecommendation\"\n - \ },\n \"promotedItem\": {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\"\n },\n \"favorite\": {\n \"$ref\": - \"ActivityContentDetailsFavorite\",\n \"description\": \"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.\"\n },\n - \ \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n },\n \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"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.\"\n },\n \"subscription\": - {\n \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\"\n }\n }\n },\n \"InvideoTiming\": {\n - \ \"properties\": {\n \"type\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"description\": \"Describes a timing type. If the - value is offsetFromStart, then the offsetMs field represents an offset from - the start of the video. If the value is offsetFromEnd, then the offsetMs field - represents an offset from the end of the video.\"\n },\n \"offsetMs\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\"\n },\n - \ \"durationMs\": {\n \"format\": \"uint64\",\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"InvideoTiming\",\n - \ \"description\": \"Describes a temporal position of a visual widget - inside a video.\"\n },\n \"PlaylistItemListResponse\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistItemListResponse\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"type\": \"string\",\n \"default\": - \"youtube#playlistItemListResponse\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of playlist - items that match the request criteria.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n }\n },\n \"PlaylistPlayer\": {\n \"properties\": - {\n \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"PlaylistPlayer\"\n },\n \"VideoAgeGating\": {\n \"properties\": - {\n \"restricted\": {\n \"type\": \"boolean\",\n \"description\": - \"Age-restricted trailers. For redband trailers and adult-rated video-games. - Only users aged 18+ can view the content. The the field is true the content - is restricted to viewers aged 18+. Otherwise The field won't be present.\"\n - \ },\n \"videoGameRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"description\": - \"Video game rating, if any.\",\n \"type\": \"string\"\n },\n - \ \"alcoholContent\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether or not the video has alcoholic beverage content. Only - users of legal purchasing age in a particular country, as identified by ICAP, - can view the content.\"\n }\n },\n \"id\": \"VideoAgeGating\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamHealthStatus\": {\n \"properties\": - {\n \"lastUpdateTimeSeconds\": {\n \"type\": \"string\",\n - \ \"description\": \"The last time this status was updated (in seconds)\",\n - \ \"format\": \"uint64\"\n },\n \"status\": {\n \"type\": - \"string\",\n \"enum\": [\n \"good\",\n \"ok\",\n - \ \"bad\",\n \"noData\",\n \"revoked\"\n ],\n - \ \"description\": \"The status code of this stream\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"configurationIssues\": - {\n \"description\": \"The configurations issues on this stream\",\n - \ \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveStreamHealthStatus\"\n },\n \"ResourceId\": - {\n \"description\": \"A resource id is a generic reference that points - to another YouTube resource.\",\n \"id\": \"ResourceId\",\n \"properties\": - {\n \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\"\n },\n \"kind\": {\n \"description\": - \"The type of the API resource.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the referred resource, if that resource is a video. This - property is only present if the resourceId.kind value is youtube#video.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveStreamSnippet\": {\n - \ \"properties\": {\n \"description\": {\n \"description\": - \"The stream's description. The value cannot be longer than 10000 characters.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that is transmitting the stream.\"\n },\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n },\n \"publishedAt\": {\n - \ \"description\": \"The date and time that the stream was created.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"title\": {\n \"description\": \"The stream's title. The - value must be between 1 and 128 characters long.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamSnippet\"\n },\n \"LanguageTag\": {\n \"type\": - \"object\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LanguageTag\"\n },\n \"LiveChatModeratorSnippet\": - {\n \"id\": \"LiveChatModeratorSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the live chat this moderator can act - on.\"\n },\n \"moderatorDetails\": {\n \"description\": - \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ }\n }\n },\n \"CdnSettings\": {\n \"id\": \"CdnSettings\",\n - \ \"properties\": {\n \"frameRate\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The frame rate of the inbound video data.\",\n - \ \"enum\": [\n \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ],\n \"type\": \"string\"\n },\n \"ingestionInfo\": - {\n \"$ref\": \"IngestionInfo\",\n \"description\": \"The - ingestionInfo object contains information that YouTube provides that you need - to transmit your RTMP or HTTP stream to YouTube.\"\n },\n \"ingestionType\": + \ \"\",\n \"\"\n ],\n \"description\": + \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o + e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enum\": [\n \"djctqUnspecified\",\n + \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n + \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n + \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n + \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n + \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n + \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n + \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n + \ \"djctq1618\",\n \"djctqUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"bfvcRating\": {\n \"description\": + \"The video's rating from Thailand's Board of Film and Video Censors.\",\n + \ \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n + \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n + \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n + \ \"bfvcUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n + \ \"20\",\n \"B\",\n \"\"\n ]\n },\n + \ \"ytRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n + \ \"description\": \"A rating that YouTube uses to identify age-restricted + content.\"\n },\n \"ecbmctRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n + \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n + \ \"18+\",\n \"\"\n ],\n \"description\": + \"Rating system in Turkey - Evaluation and Classification Board of the Ministry + of Culture and Tourism\",\n \"enum\": [\n \"ecbmctUnspecified\",\n + \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n + \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n + \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"smsaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"All + ages\",\n \"7\",\n \"11\",\n \"15\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"smsaUnspecified\",\n + \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n + \ \"smsa15\",\n \"smsaUnrated\"\n ],\n \"description\": + \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\"\n + \ },\n \"egfilmRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"GN\",\n \"18\",\n \"BN\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n \"egfilm18\",\n + \ \"egfilmBn\",\n \"egfilmUnrated\"\n ],\n \"description\": + \"The video's rating in Egypt.\"\n },\n \"russiaRating\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"0+\",\n + \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n + \ \"\"\n ],\n \"enum\": [\n \"russiaUnspecified\",\n + \ \"russia0\",\n \"russia6\",\n \"russia12\",\n + \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's National Film Registry of the Russian Federation (MKRF - Russia) + rating.\"\n },\n \"nfrcRating\": {\n \"description\": + \"The video's rating from the Bulgarian National Film Center.\",\n \"enum\": + [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n + \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"nkclvRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"U\",\n \"7+\",\n \"12+\",\n \"! + 16+\",\n \"18+\",\n \"\"\n ],\n \"description\": + \"The video's rating from the Nacion\xE3lais Kino centrs (National Film Centre + of Latvia).\",\n \"enum\": [\n \"nkclvUnspecified\",\n + \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n + \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"chfilmRating\": + {\n \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n + \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n + \ \"chfilm18\",\n \"chfilmUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"0\",\n + \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + in Switzerland.\"\n },\n \"mpaaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n + \ ],\n \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n + \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n + \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n + \ ],\n \"description\": \"The video's Motion Picture Association + of America (MPAA) rating.\",\n \"type\": \"string\"\n },\n + \ \"catvRating\": {\n \"description\": \"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.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n + \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n + \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n + \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n + \ \"catvE\"\n ],\n \"type\": \"string\"\n },\n + \ \"icaaRating\": {\n \"description\": \"The video's Instituto + de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"APTA\",\n + \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n + \ \"18\",\n \"X\",\n \"\"\n ],\n + \ \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n + \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n + \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n + \ \"icaaUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"medietilsynetRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"\"\n + \ ],\n \"enum\": [\n \"medietilsynetUnspecified\",\n + \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n + \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n + \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n + \ ],\n \"description\": \"The video's rating from Medietilsynet, + the Norwegian Media Authority.\"\n },\n \"cceRating\": {\n \"enum\": + [\n \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n + \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n + \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"4\",\n + \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\",\n \"14\"\n ],\n \"description\": + \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de + Espect\xB4culos.\"\n },\n \"mekuRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n + \ \"meku7\",\n \"meku12\",\n \"meku16\",\n + \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"description\": \"The video's rating from Finland's Kansallinen + Audiovisuaalinen Instituutti (National Audiovisual Institute).\"\n },\n + \ \"cccRating\": {\n \"description\": \"The video's Consejo + de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n \"enum\": + [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n + \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n + \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Todo + espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n + \ \"14+\",\n \"18+\",\n \"18+ - contenido + excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n + \ \"\"\n ]\n },\n \"oflcRating\": {\n \"enum\": + [\n \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n + \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n + \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n + \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n + \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n + \ \"RP16\",\n \"RP18\"\n ],\n \"description\": + \"The video's Office of Film and Literature Classification (OFLC - New Zealand) + rating.\",\n \"type\": \"string\"\n },\n \"fcoRating\": + {\n \"description\": \"The video's rating from Hong Kong's Office + for Film, Newspaper and Article Administration.\",\n \"enum\": [\n + \ \"fcoUnspecified\",\n \"fcoI\",\n \"fcoIia\",\n + \ \"fcoIib\",\n \"fcoIi\",\n \"fcoIii\",\n + \ \"fcoUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"I\",\n + \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n + \ \"\"\n ]\n },\n \"djctqRatingReasons\": + {\n \"items\": {\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n + \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n + \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n + \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n + \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n + \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Brazil rating content descriptors. + See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia + extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual + content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n + \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas + (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas + Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate + language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo + Impactante (Impacting content)\"\n ]\n },\n \"type\": + \"array\",\n \"description\": \"Reasons that explain why the video + received its DJCQT (Brazil) rating.\"\n },\n \"ifcoRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \" The method or protocol - used to transmit the video stream.\"\n },\n \"resolution\": - {\n \"type\": \"string\",\n \"description\": \"The resolution - of the inbound video data.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n + \ \"15\",\n \"15A\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"description\": \"The video's Irish + Film Classification Office (IFCO - Ireland) rating. See the IFCO website for + more information.\",\n \"enum\": [\n \"ifcoUnspecified\",\n + \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n + \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n + \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n + \ ]\n },\n \"kmrbRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 + \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n + \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n + \ \"\"\n ],\n \"enum\": [\n \"kmrbUnspecified\",\n + \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n + \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) + rating. The KMRB rates videos in South Korea.\"\n },\n \"nbcplRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ]\n },\n \"format\": {\n \"description\": - \"The format of the video stream that you are sending to Youtube. \",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Brief - description of the live stream cdn settings.\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"type\": \"object\",\n \"properties\": {\n \"label\": - {\n \"description\": \"The localized label for this abuse report - secondary reason.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The ID of this abuse report secondary reason.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"VideoSuggestions\": {\n \"properties\": {\n \"tagSuggestions\": - {\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\"\n },\n \"processingHints\": {\n \"description\": - \"A list of suggestions that may improve YouTube's ability to process the - video.\",\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ]\n },\n \"type\": - \"array\"\n },\n \"processingErrors\": {\n \"items\": - {\n \"type\": \"string\",\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"enumDescriptions\": [\n \"File - contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., - a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file.\",\n \"Document - or text file (e.g., MS Word document).\",\n \"An archive file - (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout - type.\"\n ]\n },\n \"type\": \"array\",\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\"\n },\n \"processingWarnings\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ],\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ]\n },\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\"\n },\n \"editorSuggestions\": {\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\",\n \"items\": {\n - \ \"enumDescriptions\": [\n \"Picture brightness levels - seem off and could be corrected.\",\n \"The video appears shaky - and could be stabilized.\",\n \"Margins (mattes) detected around - the picture could be cropped.\",\n \"The audio track appears - silent and could be swapped with a better quality one.\"\n ],\n - \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"description\": \"Specifies suggestions on how - to improve video content, including encoding hints, tag suggestions, and editor - suggestions.\",\n \"type\": \"object\",\n \"id\": \"VideoSuggestions\"\n - \ },\n \"ThumbnailSetResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of thumbnails.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n }\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thumbnailSetResponse\"\n - \ }\n },\n \"id\": \"ThumbnailSetResponse\"\n },\n \"VideoCategorySnippet\": - {\n \"id\": \"VideoCategorySnippet\",\n \"properties\": {\n \"assignable\": - {\n \"type\": \"boolean\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The YouTube - channel that created the video category.\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\"\n - \ },\n \"title\": {\n \"description\": \"The video category's - title.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about a video category, - such as its localized title.\"\n },\n \"ActivitySnippet\": {\n \"id\": - \"ActivitySnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about an activity, including title, description, thumbnails, - activity type and group. Next ID: 12\",\n \"properties\": {\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the video was uploaded.\",\n \"format\": \"date-time\"\n - \ },\n \"description\": {\n \"description\": \"The description - of the resource primarily associated with the activity. @mutable youtube.activities.insert\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"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.\"\n - \ },\n \"type\": {\n \"description\": \"The type of - activity that the resource describes.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n - \ \"like\",\n \"favorite\",\n \"comment\",\n - \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n - \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ],\n \"enumDescriptions\": + \ \"\"\n ],\n \"description\": \"The video's rating + in Poland.\",\n \"type\": \"string\",\n \"enum\": [\n \"nbcplUnspecified\",\n + \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n + \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n + \ ]\n },\n \"lsfRating\": {\n \"description\": + \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"enumDescriptions\": + [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n + \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n + \ \"21\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n + \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n + \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n + \ ]\n },\n \"nfvcbRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n + \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n + \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n + \ \"nfvcbUnrated\"\n ],\n \"description\": \"The + video's rating from Nigeria's National Film and Video Censors Board.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n + \ \"18\",\n \"RE\",\n \"\"\n ]\n + \ },\n \"bmukkRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n + \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n + \ \"14+\",\n \"16+\",\n \"\"\n ],\n + \ \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n + \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n + \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n + \ \"bmukkUnrated\"\n ],\n \"description\": \"The + video's rating from the Austrian Board of Media Classification (Bundesministerium + f\xFCr Unterricht, Kunst und Kultur).\"\n },\n \"mpaatRating\": + {\n \"type\": \"string\",\n \"description\": \"The rating + system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n + \ \"RB\"\n ],\n \"enum\": [\n \"mpaatUnspecified\",\n + \ \"mpaatGb\",\n \"mpaatRb\"\n ]\n },\n + \ \"fskRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) + rating.\",\n \"enumDescriptions\": [\n \"\",\n \"FSK + 0\",\n \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n + \ \"FSK 18\",\n \"\"\n ],\n \"enum\": + [\n \"fskUnspecified\",\n \"fsk0\",\n \"fsk6\",\n + \ \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n \"fskUnrated\"\n + \ ]\n },\n \"rteRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n + \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n + \ ],\n \"description\": \"The video's rating from Ireland's + Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n + \ \"MA\",\n \"\"\n ]\n },\n \"anatelRating\": + {\n \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n + \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n + \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n + \ \"anatelUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n + \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n + \ \"\"\n ],\n \"description\": \"The video's Anatel + (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\",\n + \ \"type\": \"string\"\n },\n \"catvfrRating\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n + \ \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n + \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n + \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n + \ ]\n },\n \"mibacRating\": {\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"groupId\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the resource primarily associated with the activity.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel responsible - for this activity\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel associated with the activity.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelToStoreLinkDetails\": {\n \"type\": - \"object\",\n \"id\": \"ChannelToStoreLinkDetails\",\n \"properties\": - {\n \"merchantId\": {\n \"description\": \"Google Merchant - Center id of the store.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"storeUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Landing page of the store.\"\n },\n \"storeName\": - {\n \"type\": \"string\",\n \"description\": \"Name of the - store.\"\n }\n },\n \"description\": \"Information specific - to a store on a merchandising platform linked to a YouTube channel.\"\n },\n - \ \"CommentListResponse\": {\n \"id\": \"CommentListResponse\",\n \"properties\": - {\n \"items\": {\n \"description\": \"A list of comments that - match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Comment\"\n }\n },\n \"kind\": - {\n \"default\": \"youtube#commentListResponse\",\n \"type\": + \ \"\"\n ],\n \"enum\": [\n \"mibacUnspecified\",\n + \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n + \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n + \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from the Ministero + dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\"\n },\n + \ \"fpbRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating from South Africa's Film and Publication Board.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n + \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n + \ \"\",\n \"10\"\n ],\n \"enum\": [\n + \ \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n + \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n + \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n + \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n + \ ]\n },\n \"acbRating\": {\n \"description\": + \"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.\",\n \"enum\": [\n \"acbUnspecified\",\n + \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n + \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n + \ \"acbR18plus\",\n \"acbUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"E\",\n + \ \"Programs that have been given a P classification by the Australian + Communications and Media Authority. These programs are intended for preschool + children.\",\n \"Programs that have been given a C classification + by the Australian Communications and Media Authority. These programs are intended + for children (other than preschool children) who are younger than 14 years + of age.\",\n \"G\",\n \"PG\",\n \"M\",\n + \ \"MA15+\",\n \"R18+\",\n \"\"\n ]\n + \ },\n \"menaMpaaRating\": {\n \"description\": \"The + rating system for MENA countries, a clone of MPAA. It is needed to prevent + titles go live w/o additional QC check, since some of them can be inappropriate + for the countries at all. See b/33408548 for more details.\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"R\",\n \"To keep the same enum values as MPAA's items + have, skip NC_17.\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n + \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n + \ ]\n },\n \"cbfcRating\": {\n \"description\": + \"The video's Central Board of Film Certification (CBFC - India) rating.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n + \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n + \ ],\n \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n + \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n + \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n + \ \"cbfcUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"mtrcbRating\": {\n \"description\": \"The video's + rating from the Movie and Television Review and Classification Board (Philippines).\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"mtrcbUnspecified\",\n + \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n + \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n + \ \"mtrcbUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n + \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n + \ ]\n },\n \"resorteviolenciaRating\": {\n \"enum\": + [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n + \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n + \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n + \ ],\n \"description\": \"The video's rating in Venezuela.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"bbfcRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's British Board of Film Classification (BBFC) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n + \ \"\"\n ],\n \"enum\": [\n \"bbfcUnspecified\",\n + \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n + \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n + \ \"bbfcR18\",\n \"bbfcUnrated\"\n ]\n },\n + \ \"fcbmRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating from Malaysia's Film Censorship Board.\",\n \"enum\": + [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n + \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n + \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n + \ \"fcbmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n + \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n + \ \"18PL\",\n \"\"\n ]\n },\n \"fpbRatingReasons\": + {\n \"type\": \"array\",\n \"items\": {\n \"enum\": + [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n + \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n + \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n + \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n + \ \"fpbImitativeActsTechniques\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"South Africa rating content descriptors.\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"description\": \"Reasons that explain + why the video received its FPB (South Africa) rating.\"\n },\n \"nbcRating\": + {\n \"description\": \"The video's rating from the Maldives National + Bureau of Classification.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"12+\",\n \"15+\",\n + \ \"18+\",\n \"18+R\",\n \"PU\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"nbcUnspecified\",\n + \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n + \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n + \ \"nbcPu\",\n \"nbcUnrated\"\n ]\n },\n + \ \"cnaRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"AP\",\n \"12\",\n \"15\",\n \"18\",\n + \ \"18+\",\n \"\"\n ],\n \"description\": + \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI + (CNA).\",\n \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n + \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n + \ \"cnaUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"mocRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n + \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n + \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n + \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n + \ ],\n \"description\": \"The video's Ministerio de Cultura + (Colombia) rating.\"\n },\n \"mdaRating\": {\n \"enum\": + [\n \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n + \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n + \ \"mdaR21\",\n \"mdaUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from Singapore's + Media Development Authority (MDA) and, specifically, it's Board of Film Censors + (BFC).\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n + \ \"R21\",\n \"\"\n ]\n },\n \"moctwRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n + \ \"R-12\",\n \"R-15\"\n ],\n \"enum\": + [\n \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n + \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n + \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"description\": + \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n + \ \"type\": \"string\"\n },\n \"mcstRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n + \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + system for Vietnam - MCST\",\n \"type\": \"string\",\n \"enum\": + [\n \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n + \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n + \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n + \ ]\n },\n \"kfcbRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"enum\": [\n + \ \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n + \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Kenya Film Classification Board.\"\n },\n + \ \"eirinRating\": {\n \"description\": \"The video's Eirin + (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n \"enum\": + [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n + \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n + \ \"R18+\",\n \"\"\n ]\n },\n \"incaaRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"ATP (Apta para todo publico)\",\n \"13 (Solo apta + para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para mayores de + 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 a\xF1os)\",\n + \ \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n + \ \"\"\n ],\n \"description\": \"The video's INCAA + (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.\",\n + \ \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n + \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n + \ \"incaaC\",\n \"incaaUnrated\"\n ]\n },\n + \ \"fmocRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"U\",\n \"10\",\n \"12\",\n \"16\",\n + \ \"18\",\n \"E\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"This property + has been deprecated. Use the contentDetails.contentRating.cncRating instead.\",\n + \ \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n + \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n + \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n + \ ]\n },\n \"skfilmRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n + \ \"P8\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n + \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n + \ \"skfilmUnrated\"\n ],\n \"description\": \"The + video's rating in Slovakia.\"\n },\n \"csaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"Interdiction\",\n + \ \"\"\n ],\n \"enum\": [\n \"csaUnspecified\",\n + \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n + \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, + which rates broadcast content.\"\n },\n \"rcnofRating\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee + of the National Office of Film.\",\n \"type\": \"string\",\n \"enum\": + [\n \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n + \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n + \ \"rcnofVi\",\n \"rcnofUnrated\"\n ]\n },\n + \ \"pefilmRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n + \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"PT\",\n + \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n + \ ],\n \"description\": \"The video's rating in Peru.\"\n + \ },\n \"cicfRating\": {\n \"enum\": [\n \"cicfUnspecified\",\n + \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n + \ \"cicfUnrated\"\n ],\n \"description\": \"The + video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n + \ ]\n },\n \"rtcRating\": {\n \"enum\": [\n + \ \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n + \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n + \ \"rtcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n + \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n + \ ],\n \"description\": \"The video's General Directorate + of Radio, Television and Cinematography (Mexico) rating.\",\n \"type\": + \"string\"\n },\n \"mccaaRating\": {\n \"description\": + \"The video's rating from Malta's Film Age-Classification Board.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG\",\n \"12A\",\n \"12\",\n \"14 + - this rating was removed from the new classification structure introduced + in 2013.\",\n \"15\",\n \"16 - this rating was removed + from the new classification structure introduced in 2013.\",\n \"18\",\n + \ \"\"\n ],\n \"enum\": [\n \"mccaaUnspecified\",\n + \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n + \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n + \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n + \ ]\n },\n \"ilfilmRating\": {\n \"enum\": + [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n + \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n + \ \"ilfilmUnrated\"\n ],\n \"description\": \"The + video's rating in Israel.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n + \ \"16\",\n \"18\",\n \"\"\n ]\n + \ },\n \"chvrsRating\": {\n \"description\": \"The video's + Canadian Home Video Rating System (CHVRS) rating.\",\n \"enum\": + [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n + \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n + \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n + \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"cscfRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n + \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"description\": \"The video's rating from Luxembourg's Commission + de surveillance de la classification des films (CSCF).\",\n \"enum\": + [\n \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n + \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n + \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n + \ ],\n \"type\": \"string\"\n }\n }\n },\n + \ \"VideoProjectDetails\": {\n \"description\": \"DEPRECATED. b/157517979: + This part was never populated after it was added. However, it sees non-zero + traffic because there is generated client code in the wild that refers to + it [1]. We keep this field and do NOT remove it because otherwise V3 would + return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"id\": \"VideoProjectDetails\",\n \"type\": \"object\",\n \"properties\": + {}\n },\n \"SuperChatEventSnippet\": {\n \"type\": \"object\",\n + \ \"id\": \"SuperChatEventSnippet\",\n \"properties\": {\n \"commentText\": + {\n \"description\": \"The text contents of the comment left by the + user.\",\n \"type\": \"string\"\n },\n \"isSuperStickerEvent\": + {\n \"description\": \"True if this event is a Super Sticker event.\",\n + \ \"type\": \"boolean\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"Channel id where the event occurred.\"\n + \ },\n \"messageType\": {\n \"type\": \"integer\",\n + \ \"description\": \"The tier for the paid message, which is based + on the amount of money spent to purchase the message.\",\n \"format\": + \"uint32\"\n },\n \"superStickerMetadata\": {\n \"description\": + \"If this event is a Super Sticker event, this field will contain metadata + about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n + \ },\n \"amountMicros\": {\n \"format\": \"uint64\",\n + \ \"type\": \"string\",\n \"description\": \"The purchase + amount, in micros of the purchase currency. e.g., 1 is represented as 1000000.\"\n + \ },\n \"displayString\": {\n \"description\": \"A rendered + string that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). + The string is rendered for the given language.\",\n \"type\": \"string\"\n + \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the purchase was made. ISO 4217.\"\n },\n \"createdAt\": + {\n \"format\": \"date-time\",\n \"description\": \"The + date and time when the event occurred.\",\n \"type\": \"string\"\n + \ },\n \"supporterDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n + \ \"description\": \"Details about the supporter.\"\n }\n }\n + \ },\n \"ChannelBannerResource\": {\n \"type\": \"object\",\n \"properties\": + {\n \"kind\": {\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#channelBannerResource\"\n + \ },\n \"url\": {\n \"type\": \"string\",\n \"description\": + \"The URL of this banner image.\"\n },\n \"etag\": {\n \"type\": + \"string\"\n }\n },\n \"id\": \"ChannelBannerResource\",\n + \ \"description\": \"A channel banner returned as the response to a channel_banner.insert + call.\"\n },\n \"VideoTopicDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoTopicDetails\",\n \"properties\": {\n \"topicCategories\": + {\n \"type\": \"array\",\n \"description\": \"A list of + Wikipedia URLs that provide a high-level description of the video's content.\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n },\n + \ \"relevantTopicIds\": {\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"Similar to topic_id, except that these topics are merely relevant to the + video. These are topics that may be mentioned in, or appear in the video. + You can retrieve information about each topic using Freebase Topic API.\"\n + \ },\n \"topicIds\": {\n \"description\": \"A list of + Freebase topic IDs that are centrally associated with the video. These are + topics that are centrally featured in the video, and it can be said that the + video is mainly about each of these. You can retrieve information about each + topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase + Topic API.\",\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"type\": \"array\"\n }\n },\n \"description\": + \"Freebase topic information related to the video.\"\n },\n \"InvideoPosition\": + {\n \"type\": \"object\",\n \"id\": \"InvideoPosition\",\n \"description\": + \"Describes the spatial position of a visual widget inside a video. It is + a union of various position types, out of which only will be set one.\",\n + \ \"properties\": {\n \"type\": {\n \"enum\": [\n \"corner\"\n + \ ],\n \"description\": \"Defines the position type.\",\n + \ \"enumDescriptions\": [\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"cornerPosition\": {\n \"description\": + \"Describes in which corner of the video the visual widget will appear.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n + \ \"bottomRight\"\n ]\n }\n }\n },\n \"LiveChatSuperStickerDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"tier\": + {\n \"description\": \"The tier in which the amount belongs. Lower + amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"superStickerMetadata\": + {\n \"description\": \"Information about the Super Sticker.\",\n + \ \"$ref\": \"SuperStickerMetadata\"\n },\n \"amountDisplayString\": + {\n \"description\": \"A rendered string that displays the fund amount + and currency to the user.\",\n \"type\": \"string\"\n },\n + \ \"amountMicros\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"The amount purchased by the user, + in micros (1,750,000 micros = 1.75).\"\n },\n \"currency\": + {\n \"description\": \"The currency in which the purchase was made.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatSuperStickerDetails\"\n + \ },\n \"ThirdPartyLink\": {\n \"properties\": {\n \"linkingToken\": + {\n \"type\": \"string\",\n \"description\": \"The linking_token + identifies a YouTube account and channel with which the third party account + is linked.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the third- party account + link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource\",\n \"type\": + \"string\"\n },\n \"status\": {\n \"description\": + \"The status object contains information about the status of the link.\",\n + \ \"$ref\": \"ThirdPartyLinkStatus\"\n },\n \"kind\": + {\n \"default\": \"youtube#thirdPartyLink\",\n \"type\": \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": + this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n }\n + \ },\n \"description\": \"A *third party account link* resource represents + a link between a YouTube account or a channel and an account on a third-party + service.\",\n \"type\": \"object\",\n \"id\": \"ThirdPartyLink\"\n + \ },\n \"TestItemTestItemSnippet\": {\n \"type\": \"object\",\n + \ \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\"\n },\n + \ \"Thumbnail\": {\n \"properties\": {\n \"url\": {\n \"type\": + \"string\",\n \"description\": \"The thumbnail image's URL.\"\n },\n + \ \"width\": {\n \"description\": \"(Optional) Width of the + thumbnail image.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n },\n \"height\": {\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"description\": \"(Optional) + Height of the thumbnail image.\"\n }\n },\n \"type\": \"object\",\n + \ \"description\": \"A thumbnail is an image representing a YouTube resource.\",\n + \ \"id\": \"Thumbnail\"\n },\n \"LiveStreamListResponse\": {\n \"properties\": + {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"LiveStream\"\n },\n \"type\": + \"array\",\n \"description\": \"A list of live streams that match + the request criteria.\"\n },\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n }\n },\n \"type\": - \"object\"\n },\n \"I18nRegionSnippet\": {\n \"type\": \"object\",\n - \ \"description\": \"Basic details about an i18n region, such as region - code and human-readable name.\",\n \"id\": \"I18nRegionSnippet\",\n \"properties\": - {\n \"gl\": {\n \"type\": \"string\",\n \"description\": - \"The region code as a 2-letter ISO country code.\"\n },\n \"name\": - {\n \"description\": \"The human-readable name of the region.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"PlaylistItemStatus\": - {\n \"id\": \"PlaylistItemStatus\",\n \"description\": \"Information - about the playlist item's privacy status.\",\n \"properties\": {\n \"privacyStatus\": + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n + \ \"default\": \"youtube#liveStreamListResponse\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ }\n },\n \"id\": \"LiveStreamListResponse\",\n \"type\": + \"object\"\n },\n \"Channel\": {\n \"id\": \"Channel\",\n \"type\": + \"object\",\n \"description\": \"A *channel* resource contains information + about a YouTube channel.\",\n \"properties\": {\n \"etag\": {\n + \ \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"statistics\": {\n \"description\": + \"The statistics object encapsulates statistics for the channel.\",\n \"$ref\": + \"ChannelStatistics\"\n },\n \"contentOwnerDetails\": {\n \"description\": + \"The contentOwnerDetails object encapsulates channel data that is relevant + for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n + \ },\n \"brandingSettings\": {\n \"description\": \"The + brandingSettings object encapsulates information about the branding of the + channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n },\n + \ \"contentDetails\": {\n \"description\": \"The contentDetails + object encapsulates information about the channel's content.\",\n \"$ref\": + \"ChannelContentDetails\"\n },\n \"localizations\": {\n \"description\": + \"Localizations for different languages\",\n \"type\": \"object\",\n + \ \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n + \ }\n },\n \"topicDetails\": {\n \"description\": + \"The topicDetails object encapsulates information about Freebase topics associated + with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n + \ \"auditDetails\": {\n \"description\": \"The auditionDetails + object encapsulates channel data that is relevant for YouTube Partners during + the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n \"default\": + \"youtube#channel\",\n \"type\": \"string\"\n },\n \"conversionPings\": + {\n \"$ref\": \"ChannelConversionPings\",\n \"description\": + \"The conversionPings object encapsulates information about conversion pings + that need to be respected by the channel.\"\n },\n \"id\": {\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel.\",\n \"type\": \"string\"\n },\n \"status\": + {\n \"$ref\": \"ChannelStatus\",\n \"description\": \"The + status object encapsulates information about the privacy status of the channel.\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the channel, such as its title, description, + and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n }\n + \ }\n },\n \"AccessPolicy\": {\n \"id\": \"AccessPolicy\",\n + \ \"description\": \"Rights management policy for YouTube resources.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"exception\": + {\n \"type\": \"array\",\n \"description\": \"A list of + region codes that identify countries where the default policy do not apply.\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n },\n + \ \"allowed\": {\n \"description\": \"The value of allowed + indicates whether the access to the policy is allowed or denied by default.\",\n + \ \"type\": \"boolean\"\n }\n }\n },\n \"LiveChatModeratorSnippet\": + {\n \"properties\": {\n \"moderatorDetails\": {\n \"description\": + \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n + \ },\n \"liveChatId\": {\n \"description\": \"The ID + of the live chat this moderator can act on.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"LiveChatModeratorSnippet\",\n \"type\": + \"object\"\n },\n \"GeoPoint\": {\n \"description\": \"Geographical + coordinates of a point, in WGS84.\",\n \"id\": \"GeoPoint\",\n \"properties\": + {\n \"latitude\": {\n \"type\": \"number\",\n \"description\": + \"Latitude in degrees.\",\n \"format\": \"double\"\n },\n + \ \"longitude\": {\n \"format\": \"double\",\n \"description\": + \"Longitude in degrees.\",\n \"type\": \"number\"\n },\n \"altitude\": + {\n \"description\": \"Altitude above the reference ellipsoid, in + meters.\",\n \"format\": \"double\",\n \"type\": \"number\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"WatchSettings\": + {\n \"id\": \"WatchSettings\",\n \"type\": \"object\",\n \"description\": + \"Branding properties for the watch. All deprecated.\",\n \"properties\": + {\n \"backgroundColor\": {\n \"type\": \"string\",\n \"description\": + \"The text color for the video watch page's branded area.\"\n },\n + \ \"featuredPlaylistId\": {\n \"description\": \"An ID that + uniquely identifies a playlist that displays next to the video player.\",\n + \ \"type\": \"string\"\n },\n \"textColor\": {\n \"type\": + \"string\",\n \"description\": \"The background color for the video + watch page's branded area.\"\n }\n }\n },\n \"PlaylistStatus\": + {\n \"id\": \"PlaylistStatus\",\n \"properties\": {\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": + \ \"private\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The playlist's privacy status.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"Entity\": {\n \"id\": + \"Entity\",\n \"type\": \"object\",\n \"properties\": {\n \"typeId\": + {\n \"type\": \"string\"\n },\n \"url\": {\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n + \ }\n }\n },\n \"LiveChatMessageAuthorDetails\": {\n \"id\": + \"LiveChatMessageAuthorDetails\",\n \"properties\": {\n \"isChatOwner\": + {\n \"description\": \"Whether the author is the owner of the live + chat.\",\n \"type\": \"boolean\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The YouTube + channel ID.\"\n },\n \"channelUrl\": {\n \"description\": + \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"profileImageUrl\": + {\n \"description\": \"The channels's avatar URL.\",\n \"type\": + \"string\"\n },\n \"isChatSponsor\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the author is a sponsor + of the live chat.\"\n },\n \"isChatModerator\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the author is a moderator + of the live chat.\"\n },\n \"isVerified\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the author's identity has + been verified by YouTube.\"\n },\n \"displayName\": {\n \"type\": + \"string\",\n \"description\": \"The channel's display name.\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": + {\n \"description\": \"Video processing progress and completion time + estimate.\",\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n + \ \"properties\": {\n \"timeLeftMs\": {\n \"description\": + \"An estimate of the amount of time, in millseconds, that YouTube needs to + finish processing the video.\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n },\n \"partsTotal\": {\n \"type\": \"string\",\n + \ \"description\": \"An estimate of the total number of parts that + need to be processed for the video. The number may be updated with more precise + estimates while YouTube processes the video.\",\n \"format\": \"uint64\"\n + \ },\n \"partsProcessed\": {\n \"format\": \"uint64\",\n + \ \"description\": \"The number of parts of the video that YouTube + has already processed. You can estimate the percentage of the video that YouTube + has already processed by calculating: 100 * parts_processed / parts_total + Note that since the estimated number of parts could increase without a corresponding + increase in the number of parts that have already been processed, it is possible + that the calculated progress could periodically decrease while YouTube processes + a video.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"LiveBroadcast\": {\n \"properties\": {\n \"statistics\": + {\n \"description\": \"The statistics object contains info about + the event's current stats. These include concurrent viewers and total chat + count. Statistics can change (in either direction) during the lifetime of + an event. Statistics are only returned while the event is live.\",\n \"$ref\": + \"LiveBroadcastStatistics\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + assigns to uniquely identify the broadcast.\"\n },\n \"contentDetails\": + {\n \"description\": \"The contentDetails object contains information + about the event's video content, such as whether the content can be shown + in an embedded video player or if it will be archived and therefore available + for viewing after the event has concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the event, including its + title, description, start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n + \ \"default\": \"youtube#liveBroadcast\"\n },\n \"status\": + {\n \"$ref\": \"LiveBroadcastStatus\",\n \"description\": + \"The status object contains information about the event's status.\"\n }\n + \ },\n \"id\": \"LiveBroadcast\",\n \"description\": \"A *liveBroadcast* + resource represents an event that will be streamed, via live video, on YouTube.\",\n + \ \"type\": \"object\"\n },\n \"ChannelConversionPing\": {\n \"description\": + \"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.\",\n \"id\": \"ChannelConversionPing\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"context\": {\n \"enum\": [\n \"subscribe\",\n + \ \"unsubscribe\",\n \"cview\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"Defines the context + of the ping.\"\n },\n \"conversionUrl\": {\n \"description\": + \"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.\",\n \"type\": \"string\"\n }\n }\n },\n \"PlaylistItemStatus\": + {\n \"description\": \"Information about the playlist item's privacy + status.\",\n \"id\": \"PlaylistItemStatus\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"This resource's privacy status.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#liveChatMessageListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pollingIntervalMillis\": {\n \"description\": - \"The amount of time the client should wait before polling again.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"offlineAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the underlying stream - went offline.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"type\": \"array\"\n }\n - \ },\n \"id\": \"LiveChatMessageListResponse\",\n \"type\": - \"object\"\n },\n \"LiveStreamContentDetails\": {\n \"properties\": - {\n \"closedCaptionsIngestionUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The ingestion URL where the closed captions of - this stream are sent.\"\n },\n \"isReusable\": {\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \",\n \"type\": \"boolean\"\n }\n },\n \"id\": \"LiveStreamContentDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Detailed settings of - a stream.\"\n },\n \"VideoListResponse\": {\n \"properties\": {\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Video\"\n }\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"default\": \"youtube#videoListResponse\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"VideoListResponse\"\n },\n - \ \"I18nRegionListResponse\": {\n \"id\": \"I18nRegionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#i18nRegionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"I18nRegion\"\n - \ },\n \"description\": \"A list of regions where YouTube - is available. In this map, the i18n region ID is the map key, and its value - is the corresponding i18nRegion resource.\"\n },\n \"visitorId\": + \ \"description\": \"This resource's privacy status.\",\n \"enum\": + [\n \"public\",\n \"unlisted\",\n \"private\"\n + \ ],\n \"type\": \"string\"\n }\n }\n },\n + \ \"CaptionListResponse\": {\n \"properties\": {\n \"visitorId\": {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"properties\": - {\n \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the member to this Member Milestone Chat. This field - is empty for messages without a comment from the member.\"\n },\n \"memberLevelName\": - {\n \"description\": \"The name of the Level at which the viever - is a member. The Level names are defined by the YouTube channel offering the - Membership. In some situations this field isn't filled.\",\n \"type\": - \"string\"\n },\n \"memberMonth\": {\n \"format\": - \"uint32\",\n \"description\": \"The total amount of months (rounded - up) the viewer has been a member that granted them this Member Milestone Chat. - This is the same number of months as is being displayed to YouTube users.\",\n - \ \"type\": \"integer\"\n }\n }\n },\n \"ThirdPartyLinkSnippet\": - {\n \"description\": \"Basic information about a third party account - link, including its type and type-specific information.\",\n \"id\": - \"ThirdPartyLinkSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"type\": {\n \"type\": \"string\",\n \"description\": - \"Type of the link named after the entities that are being linked.\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ]\n },\n \"channelToStoreLink\": - {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\"\n }\n }\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"description\": \"A single tag suggestion with it's relevance information.\",\n - \ \"id\": \"VideoSuggestionsTagSuggestion\",\n \"properties\": {\n - \ \"categoryRestricts\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A set of video categories for which the tag is relevant. You can use this - information to display appropriate tag suggestions based on the video category - that the video uploader associates with the video. By default, tag suggestions - are relevant for all categories if there are no restricts defined for the - keyword.\"\n },\n \"tag\": {\n \"description\": \"The - keyword tag suggested for the video.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"properties\": {\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level at which the - viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"gifterChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the user that made the - membership gifting purchase. This matches the `snippet.authorChannelId` of - the associated membership gifting message.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoSnippet\": {\n \"properties\": - {\n \"defaultAudioLanguage\": {\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the video was uploaded.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The video's - description. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"channelTitle\": {\n \"description\": \"Channel title for - the channel that the video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the videos's default snippet.\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that the video was uploaded - to.\",\n \"type\": \"string\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The video's - title. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"localized\": {\n \"$ref\": \"VideoLocalization\",\n - \ \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\"\n },\n \"liveBroadcastContent\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"description\": \"Indicates - if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" if - the video is not an upcoming/active live broadcast.\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - video category associated with the video.\"\n },\n \"tags\": - {\n \"description\": \"A list of keyword tags associated with the - video. Tags may contain spaces.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"VideoSnippet\",\n \"description\": - \"Basic details about a video, including title, description, uploader, thumbnails - and category.\"\n },\n \"MembershipsDurationAtLevel\": {\n \"id\": - \"MembershipsDurationAtLevel\",\n \"properties\": {\n \"level\": - {\n \"description\": \"Pricing level ID.\",\n \"type\": - \"string\"\n },\n \"memberSince\": {\n \"description\": - \"The date and time when the user became a continuous member for the given - level.\",\n \"type\": \"string\"\n },\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"description\": \"The cumulative - time the user has been a member for the given level in complete months (the - time is rounded down to the nearest integer).\",\n \"format\": \"int32\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"PropertyValue\": - {\n \"description\": \"A pair Property / Value.\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\",\n \"description\": - \"The property's value.\"\n },\n \"property\": {\n \"type\": - \"string\",\n \"description\": \"A property.\"\n }\n },\n - \ \"id\": \"PropertyValue\",\n \"type\": \"object\"\n },\n \"CommentSnippet\": - {\n \"properties\": {\n \"parentId\": {\n \"description\": - \"The unique id of the parent comment, only set for replies.\",\n \"type\": - \"string\"\n },\n \"viewerRating\": {\n \"description\": - \"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.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ],\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\"\n },\n - \ \"authorChannelId\": {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the comment was originally - published.\",\n \"type\": \"string\"\n },\n \"textOriginal\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comment refers to, if any.\",\n \"type\": - \"string\"\n },\n \"likeCount\": {\n \"description\": - \"The total number of likes this comment has received.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"textDisplay\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"canRate\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the current viewer can rate this comment.\"\n },\n \"updatedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was last updated.\"\n - \ },\n \"channelId\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"moderationStatus\": - {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment is - unfit for display.\"\n ],\n \"description\": \"The comment's - moderation status. Will not be set if the comments were requested through - the id filter.\"\n },\n \"authorProfileImageUrl\": {\n \"description\": - \"The URL for the avatar of the user who posted the comment.\",\n \"type\": - \"string\"\n },\n \"authorDisplayName\": {\n \"description\": - \"The name of the user who posted the comment.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Basic details about a comment, - such as its author and text.\",\n \"id\": \"CommentSnippet\",\n \"type\": - \"object\"\n },\n \"TestItem\": {\n \"properties\": {\n \"id\": - {\n \"type\": \"string\"\n },\n \"featuredPart\": {\n - \ \"type\": \"boolean\"\n },\n \"snippet\": {\n \"$ref\": - \"TestItemTestItemSnippet\"\n },\n \"gaia\": {\n \"type\": - \"string\",\n \"format\": \"int64\"\n }\n },\n \"id\": - \"TestItem\",\n \"type\": \"object\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"giftMembershipsCount\": - {\n \"description\": \"The number of gift memberships purchased by - the user.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ },\n \"giftMembershipsLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\"\n }\n - \ },\n \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n \"MembershipsLevelListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Caption\"\n },\n \"description\": + \"A list of captions that match the request criteria.\"\n },\n \"kind\": {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevelListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"MembershipsLevel\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of pricing levels offered - by a creator to the fans.\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\"\n - \ },\n \"ThumbnailDetails\": {\n \"type\": \"object\",\n \"description\": - \"Internal representation of thumbnails for a YouTube resource.\",\n \"id\": - \"ThumbnailDetails\",\n \"properties\": {\n \"maxres\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The maximum resolution quality - image for this resource.\"\n },\n \"default\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The default image for this resource.\"\n - \ },\n \"medium\": {\n \"description\": \"The medium - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"high\": {\n \"description\": \"The high quality image for - this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"standard\": - {\n \"description\": \"The standard quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n }\n }\n },\n \"CommentThread\": - {\n \"type\": \"object\",\n \"description\": \"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.\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the comment thread.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"CommentThreadSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"default\": \"youtube#commentThread\",\n \"type\": \"string\"\n - \ },\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n - \ \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\"\n }\n - \ },\n \"id\": \"CommentThread\"\n },\n \"ChannelStatus\": - {\n \"properties\": {\n \"madeForKids\": {\n \"type\": - \"boolean\"\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\"\n },\n \"isLinked\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n },\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"Privacy - status of the channel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"longUploadsStatus\": - {\n \"description\": \"The long uploads status of this channel. See - https://support.google.com/youtube/answer/71673 for more information.\",\n - \ \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelStatus\",\n \"description\": \"JSON - template for the status part of a channel.\"\n },\n \"VideoPlayer\": - {\n \"description\": \"Player to be used for a video playback.\",\n \"type\": - \"object\",\n \"id\": \"VideoPlayer\",\n \"properties\": {\n \"embedHeight\": - {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n - \ \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\",\n \"type\": - \"string\"\n },\n \"embedWidth\": {\n \"type\": \"string\",\n - \ \"format\": \"int64\",\n \"description\": \"The embed width\"\n - \ }\n }\n },\n \"CaptionSnippet\": {\n \"properties\": - {\n \"trackKind\": {\n \"type\": \"string\",\n \"description\": - \"The caption track's type.\",\n \"enum\": [\n \"standard\",\n - \ \"ASR\",\n \"forced\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"failureReason\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\",\n \"type\": - \"string\",\n \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ]\n },\n \"status\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"serving\",\n - \ \"syncing\",\n \"failed\"\n ],\n \"description\": - \"The caption track's status.\",\n \"type\": \"string\"\n },\n - \ \"audioTrackType\": {\n \"description\": \"The type of audio - track associated with the caption track.\",\n \"enum\": [\n \"unknown\",\n - \ \"primary\",\n \"commentary\",\n \"descriptive\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"language\": {\n \"type\": \"string\",\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"isAutoSynced\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the video associated with the caption track. @mutable - youtube.captions.insert\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"name\": {\n \"type\": - \"string\",\n \"description\": \"The name of the caption track. The - name is intended to be visible to the user as an option during playback.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"isEasyReader\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n \"lastUpdated\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the caption track was - last updated.\"\n },\n \"isCC\": {\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\",\n \"type\": \"boolean\"\n - \ },\n \"isLarge\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\"\n },\n \"isDraft\": {\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n }\n },\n - \ \"id\": \"CaptionSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about a caption track, such as its language and name.\"\n - \ },\n \"VideoRating\": {\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n },\n \"rating\": - {\n \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Rating of a video.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ]\n }\n },\n \"description\": \"Basic details about - rating of a video.\",\n \"id\": \"VideoRating\",\n \"type\": \"object\"\n - \ },\n \"VideoStatistics\": {\n \"description\": \"Statistics about - the video, such as the number of times the video was viewed or liked.\",\n - \ \"properties\": {\n \"likeCount\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The number of - users who have indicated that they liked the video by giving it a positive - rating.\"\n },\n \"favoriteCount\": {\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"viewCount\": {\n \"description\": \"The number of times - the video has been viewed.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"dislikeCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of users who have indicated that they disliked the video by giving - it a negative rating.\"\n },\n \"commentCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of comments for the video.\",\n - \ \"format\": \"uint64\"\n }\n },\n \"id\": \"VideoStatistics\",\n - \ \"type\": \"object\"\n },\n \"TokenPagination\": {\n \"type\": - \"object\",\n \"id\": \"TokenPagination\",\n \"description\": \"Stub - token pagination template to suppress results.\",\n \"properties\": {}\n - \ },\n \"Activity\": {\n \"id\": \"Activity\",\n \"type\": - \"object\",\n \"description\": \"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.\",\n \"properties\": {\n - \ \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the activity.\"\n },\n \"kind\": {\n \"default\": - \"youtube#activity\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the activity, including the activity's - type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n },\n - \ \"contentDetails\": {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetails\"\n - \ }\n }\n },\n \"MembershipsDuration\": {\n \"type\": - \"object\",\n \"properties\": {\n \"memberSince\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the user - became a continuous member across all levels.\"\n },\n \"memberTotalDurationMonths\": - {\n \"format\": \"int32\",\n \"type\": \"integer\",\n \"description\": - \"The cumulative time the user has been a member across all levels in complete - months (the time is rounded down to the nearest integer).\"\n }\n },\n - \ \"id\": \"MembershipsDuration\"\n },\n \"InvideoPosition\": {\n - \ \"properties\": {\n \"type\": {\n \"enum\": [\n \"corner\"\n - \ ],\n \"enumDescriptions\": [\n \"\"\n ],\n - \ \"description\": \"Defines the position type.\",\n \"type\": - \"string\"\n },\n \"cornerPosition\": {\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ]\n }\n - \ },\n \"description\": \"Describes the spatial position of a visual - widget inside a video. It is a union of various position types, out of which - only will be set one.\",\n \"type\": \"object\",\n \"id\": \"InvideoPosition\"\n - \ },\n \"WatchSettings\": {\n \"description\": \"Branding properties - for the watch. All deprecated.\",\n \"id\": \"WatchSettings\",\n \"type\": - \"object\",\n \"properties\": {\n \"textColor\": {\n \"type\": - \"string\",\n \"description\": \"The background color for the video - watch page's branded area.\"\n },\n \"featuredPlaylistId\": - {\n \"description\": \"An ID that uniquely identifies a playlist - that displays next to the video player.\",\n \"type\": \"string\"\n - \ },\n \"backgroundColor\": {\n \"type\": \"string\",\n - \ \"description\": \"The text color for the video watch page's branded - area.\"\n }\n }\n },\n \"ImageSettings\": {\n \"type\": - \"object\",\n \"description\": \"Branding properties for images associated - with the channel.\",\n \"properties\": {\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTvHighImageUrl\": - {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n - \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"bannerImageUrl\": {\n \"description\": \"Banner image. - Desktop size (1060x175).\",\n \"type\": \"string\"\n },\n - \ \"bannerMobileLowImageUrl\": {\n \"description\": \"Banner - image. Mobile size low resolution (320x88).\",\n \"type\": \"string\"\n - \ },\n \"bannerTabletLowImageUrl\": {\n \"description\": - \"Banner image. Tablet size low resolution (1138x188).\",\n \"type\": - \"string\"\n },\n \"bannerMobileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size (640x175).\"\n - \ },\n \"bannerMobileExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\",\n - \ \"$ref\": \"LocalizedProperty\"\n },\n \"backgroundImageUrl\": + Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n \"default\": + \"youtube#captionListResponse\",\n \"type\": \"string\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"CaptionListResponse\"\n + \ },\n \"VideoAbuseReport\": {\n \"id\": \"VideoAbuseReport\",\n + \ \"properties\": {\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": + \"string\"\n },\n \"language\": {\n \"type\": \"string\",\n + \ \"description\": \"The language that the content was viewed in.\"\n + \ },\n \"comments\": {\n \"description\": \"Additional + comments regarding the abuse report.\",\n \"type\": \"string\"\n + \ },\n \"reasonId\": {\n \"type\": \"string\",\n \"description\": + \"The high-level, or primary, reason that the content is abusive. The value + is an abuse report reason ID.\"\n },\n \"secondaryReasonId\": + {\n \"description\": \"The specific, or secondary, reason that this + content is abusive (if available). The value is an abuse report reason ID + that is a valid secondary reason for the primary reason.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelToStoreLinkDetails\": + {\n \"id\": \"ChannelToStoreLinkDetails\",\n \"type\": \"object\",\n + \ \"description\": \"Information specific to a store on a merchandising + platform linked to a YouTube channel.\",\n \"properties\": {\n \"storeUrl\": + {\n \"description\": \"Landing page of the store.\",\n \"type\": + \"string\"\n },\n \"merchantId\": {\n \"description\": + \"Google Merchant Center id of the store.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n },\n \"storeName\": {\n \"type\": + \"string\",\n \"description\": \"Name of the store.\"\n }\n + \ }\n },\n \"ActivityContentDetailsComment\": {\n \"properties\": + {\n \"resourceId\": {\n \"description\": \"The resourceId + object contains information that identifies the resource associated with the + comment.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"description\": + \"Information about a resource that received a comment.\",\n \"id\": + \"ActivityContentDetailsComment\",\n \"type\": \"object\"\n },\n \"LiveStreamContentDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"isReusable\": + {\n \"type\": \"boolean\",\n \"description\": \"Indicates + whether the stream is reusable, which means that it can be bound to multiple + broadcasts. It is common for broadcasters to reuse the same stream for many + different broadcasts if those broadcasts occur at different times. If you + set this value to false, then the stream will not be reusable, which means + that it can only be bound to one broadcast. Non-reusable streams differ from + reusable streams in the following ways: - A non-reusable stream can only be + bound to one broadcast. - A non-reusable stream might be deleted by an automated + process after the broadcast ends. - The liveStreams.list method does not list + non-reusable streams if you call the method and set the mine parameter to + true. The only way to use that method to retrieve the resource for a non-reusable + stream is to use the id parameter to identify the stream. \"\n },\n + \ \"closedCaptionsIngestionUrl\": {\n \"description\": \"The + ingestion URL where the closed captions of this stream are sent.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveStreamContentDetails\",\n + \ \"description\": \"Detailed settings of a stream.\"\n },\n \"I18nRegionSnippet\": + {\n \"properties\": {\n \"name\": {\n \"description\": + \"The human-readable name of the region.\",\n \"type\": \"string\"\n + \ },\n \"gl\": {\n \"description\": \"The region code + as a 2-letter ISO country code.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"Basic details + about an i18n region, such as region code and human-readable name.\",\n \"id\": + \"I18nRegionSnippet\"\n },\n \"PlaylistItemListResponse\": {\n \"properties\": + {\n \"items\": {\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n + \ },\n \"description\": \"A list of playlist items that match + the request criteria.\",\n \"type\": \"array\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". + Etag of this resource.\",\n \"type\": \"string\",\n \"default\": + \"youtube#playlistItemListResponse\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\"\n },\n + \ \"etag\": {\n \"type\": \"string\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n }\n },\n + \ \"id\": \"PlaylistItemListResponse\",\n \"type\": \"object\"\n + \ },\n \"CommentSnippet\": {\n \"id\": \"CommentSnippet\",\n \"type\": + \"object\",\n \"properties\": {\n \"textDisplay\": {\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n \"likeCount\": + {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The total number of likes this comment has received.\"\n },\n \"canRate\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the current viewer can rate this comment.\"\n },\n \"moderationStatus\": + {\n \"description\": \"The comment's moderation status. Will not + be set if the comments were requested through the id filter.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"The comment + is available for public display.\",\n \"The comment is awaiting + review by a moderator.\",\n \"\",\n \"The comment is + unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ]\n },\n \"authorProfileImageUrl\": {\n \"type\": + \"string\",\n \"description\": \"The URL for the avatar of the user + who posted the comment.\"\n },\n \"updatedAt\": {\n \"type\": + \"string\",\n \"description\": \"The date and time when the comment + was last updated.\",\n \"format\": \"date-time\"\n },\n \"videoId\": + {\n \"description\": \"The ID of the video the comment refers to, + if any.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"authorDisplayName\": {\n \"type\": + \"string\",\n \"description\": \"The name of the user who posted + the comment.\"\n },\n \"authorChannelId\": {\n \"$ref\": + \"CommentSnippetAuthorChannelId\"\n },\n \"parentId\": {\n \"description\": + \"The unique id of the parent comment, only set for replies.\",\n \"type\": + \"string\"\n },\n \"viewerRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"none\",\n \"like\",\n \"dislike\"\n + \ ],\n \"description\": \"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.\"\n },\n + \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The date and time when the comment + was originally published.\"\n },\n \"authorChannelUrl\": {\n + \ \"description\": \"Link to the author's YouTube channel, if any.\",\n + \ \"type\": \"string\"\n },\n \"textOriginal\": {\n + \ \"description\": \"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.\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Basic details about a comment, such as its author and text.\"\n },\n + \ \"VideoSnippet\": {\n \"description\": \"Basic details about a video, + including title, description, uploader, thumbnails and category.\",\n \"properties\": + {\n \"channelId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the channel that the video was uploaded to.\",\n + \ \"type\": \"string\"\n },\n \"tags\": {\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"A list of keyword tags associated with the video. + Tags may contain spaces.\"\n },\n \"liveBroadcastContent\": + {\n \"description\": \"Indicates if the video is an upcoming/active + live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active + live broadcast.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been completed.\"\n + \ ],\n \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ]\n },\n + \ \"defaultAudioLanguage\": {\n \"description\": \"The default_audio_language + property specifies the language spoken in the video's default audio track.\",\n + \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The video's description. @mutable + youtube.videos.insert youtube.videos.update\"\n },\n \"categoryId\": + {\n \"description\": \"The YouTube video category associated with + the video.\",\n \"type\": \"string\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The video's + title. @mutable youtube.videos.insert youtube.videos.update\"\n },\n + \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": + \"A map of thumbnail images associated with the video. 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.\"\n },\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel that the video belongs to.\"\n },\n \"localized\": + {\n \"description\": \"Localized snippet selected with the hl parameter. + If no such localization exists, this field is populated with the default snippet. + (Read-only)\",\n \"$ref\": \"VideoLocalization\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The language + of the videos's default snippet.\"\n },\n \"publishedAt\": {\n + \ \"format\": \"date-time\",\n \"description\": \"The date + and time when the video was uploaded.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoSnippet\"\n + \ },\n \"ImageSettings\": {\n \"properties\": {\n \"backgroundImageUrl\": {\n \"description\": \"The URL for the background image shown on the video watch page. The image should be 1200px by 615px, with a maximum file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerTabletImageUrl\": {\n \"description\": \"Banner image. - Tablet size (1707x283).\",\n \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": + \ \"bannerTabletHdImageUrl\": {\n \"description\": \"Banner + image. Tablet size high resolution (2276x377).\",\n \"type\": \"string\"\n + \ },\n \"largeBrandedBannerImageUrl\": {\n \"description\": + \"The URL for the 854px by 70px image that appears below the video player + in the expanded video view of the video watch page.\",\n \"$ref\": + \"LocalizedProperty\"\n },\n \"bannerMobileHdImageUrl\": {\n + \ \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size high resolution (1280x360).\"\n },\n \"bannerImageUrl\": + {\n \"description\": \"Banner image. Desktop size (1060x175).\",\n + \ \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size medium/high resolution (960x263).\"\n },\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"bannerTabletExtraHdImageUrl\": {\n \"description\": - \"Banner image. Tablet size extra high resolution (2560x424).\",\n \"type\": - \"string\"\n },\n \"bannerTabletHdImageUrl\": {\n \"description\": - \"Banner image. Tablet size high resolution (2276x377).\",\n \"type\": - \"string\"\n },\n \"bannerTvImageUrl\": {\n \"description\": - \"Banner image. TV size extra high resolution (2120x1192).\",\n \"type\": - \"string\"\n },\n \"bannerTvLowImageUrl\": {\n \"description\": - \"Banner image. TV size low resolution (854x480).\",\n \"type\": - \"string\"\n },\n \"trackingImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL for a 1px by 1px tracking - pixel that can be used to collect statistics for views of the channel or video - pages.\"\n }\n },\n \"id\": \"ImageSettings\"\n },\n \"ChannelContentOwnerDetails\": - {\n \"properties\": {\n \"contentOwner\": {\n \"description\": - \"The ID of the content owner linked to the channel.\",\n \"type\": - \"string\"\n },\n \"timeLinked\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the channel was linked - to the content owner.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"id\": - \"ChannelContentOwnerDetails\",\n \"type\": \"object\"\n },\n \"SuperChatEventListResponse\": - {\n \"type\": \"object\",\n \"id\": \"SuperChatEventListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#superChatEventListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of Super - Chat purchases that match the request criteria.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"SuperChatEvent\"\n }\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"PlaylistLocalization\": {\n \"properties\": {\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for playlist's description.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's title.\"\n }\n },\n \"description\": - \"Playlist localization setting\",\n \"id\": \"PlaylistLocalization\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamStatus\": {\n \"description\": - \"Brief description of the live stream status.\",\n \"properties\": {\n - \ \"healthStatus\": {\n \"description\": \"The health status - of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n },\n - \ \"streamStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ]\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamStatus\"\n },\n \"LiveBroadcastStatus\": {\n - \ \"id\": \"LiveBroadcastStatus\",\n \"type\": \"object\",\n \"properties\": - {\n \"liveBroadcastPriority\": {\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n + Tablet size extra high resolution (2560x424).\"\n },\n \"bannerMobileImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size (640x175).\"\n },\n \"watchIconImageUrl\": {\n \"type\": + \"string\"\n },\n \"bannerTabletImageUrl\": {\n \"type\": + \"string\",\n \"description\": \"Banner image. Tablet size (1707x283).\"\n + \ },\n \"bannerTvLowImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"Banner image. TV size low resolution (854x480).\"\n + \ },\n \"bannerTabletLowImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"Banner image. Tablet size low resolution (1138x188).\"\n + \ },\n \"bannerTvImageUrl\": {\n \"description\": \"Banner + image. TV size extra high resolution (2120x1192).\",\n \"type\": + \"string\"\n },\n \"largeBrandedBannerImageImapScript\": {\n + \ \"description\": \"The image map script for the large banner image.\",\n + \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileMediumHdImageUrl\": + {\n \"description\": \"Banner image. Mobile size medium/high resolution + (960x263).\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": + {\n \"description\": \"The image map script for the small banner + image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileLowImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size low resolution (320x88).\"\n },\n \"bannerTvHighImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size high resolution (1920x1080).\"\n },\n \"bannerMobileExtraHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size high resolution (1440x395).\"\n },\n \"trackingImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL for + a 1px by 1px tracking pixel that can be used to collect statistics for views + of the channel or video pages.\"\n },\n \"smallBrandedBannerImageUrl\": + {\n \"description\": \"The URL for the 640px by 70px banner image + that appears below the video player in the default view of the video watch + page. The URL for the image that appears above the top-left corner of the + video player. This is a 25-pixel-high image with a flexible width that cannot + exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n + \ \"bannerTvMediumImageUrl\": {\n \"description\": \"Banner + image. TV size medium resolution (1280x720).\",\n \"type\": \"string\"\n + \ },\n \"bannerExternalUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"This is generated when a ChannelBanner.Insert + request has succeeded for the given channel.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"ImageSettings\",\n \"description\": \"Branding + properties for images associated with the channel.\"\n },\n \"LiveBroadcastStatus\": + {\n \"type\": \"object\",\n \"properties\": {\n \"privacyStatus\": + {\n \"type\": \"string\",\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"description\": + \"The broadcast's privacy status. Note that the broadcast represents exactly + one YouTube video, so the privacy settings are identical to those supported + for videos. In addition, you can set this field by modifying the broadcast + resource or by setting the privacyStatus field of the corresponding video + resource.\",\n \"annotations\": {\n \"required\": [\n + \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"recordingStatus\": + {\n \"enumDescriptions\": [\n \"No value or the value + is unknown.\",\n \"The recording has not yet been started.\",\n + \ \"The recording is currently on.\",\n \"The recording + is completed, and cannot be started again.\"\n ],\n \"enum\": + [\n \"liveBroadcastRecordingStatusUnspecified\",\n \"notRecording\",\n + \ \"recording\",\n \"recorded\"\n ],\n \"description\": + \"The broadcast's recording status.\",\n \"type\": \"string\"\n },\n + \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This field will be set to True if the creator + declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"liveBroadcastPriority\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Low priority broadcast: for low view count HoAs or other low + priority broadcasts.\",\n \"Normal priority broadcast: for regular + HoAs and broadcasts.\",\n \"High priority broadcast: for high profile + HoAs, like PixelCorp ones.\"\n ],\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n \ \"low\",\n \"normal\",\n \"high\"\n ],\n \ \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"enumDescriptions\": [\n \"\",\n \"Low - priority broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ],\n \"type\": \"string\"\n },\n \"madeForKids\": - {\n \"description\": \"Whether the broadcast is made for kids or - not, decided by YouTube instead of the creator. This field is read only.\",\n - \ \"type\": \"boolean\"\n },\n \"lifeCycleStatus\": - {\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's status. The status can be updated - using the API's liveBroadcasts.transition method.\",\n \"enumDescriptions\": + state).\"\n },\n \"madeForKids\": {\n \"description\": + \"Whether the broadcast is made for kids or not, decided by YouTube instead + of the creator. This field is read only.\",\n \"type\": \"boolean\"\n + \ },\n \"lifeCycleStatus\": {\n \"enumDescriptions\": [\n \"No value or the value is unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible only to partner, may need special UI treatment\",\n \"Viper is recording; this means the \\\"clock\\\" is running\",\n \"The broadcast is finished.\",\n \"This broadcast was removed by admin action\",\n \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ]\n },\n \"recordingStatus\": - {\n \"enumDescriptions\": [\n \"No value or the value - is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"description\": \"The broadcast's recording status.\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"privacyStatus\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"The broadcast's - privacy status. Note that the broadcast represents exactly one YouTube video, - so the privacy settings are identical to those supported for videos. In addition, - you can set this field by modifying the broadcast resource or by setting the - privacyStatus field of the corresponding video resource.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n + into LIVE has been requested\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The broadcast's status. The status can be updated + using the API's liveBroadcasts.transition method.\",\n \"enum\": + [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n + \ \"ready\",\n \"testing\",\n \"live\",\n + \ \"complete\",\n \"revoked\",\n \"testStarting\",\n + \ \"liveStarting\"\n ]\n }\n },\n \"id\": + \"LiveBroadcastStatus\",\n \"description\": \"Live broadcast state.\"\n + \ },\n \"VideoProcessingDetails\": {\n \"properties\": {\n \"processingStatus\": + {\n \"enum\": [\n \"processing\",\n \"succeeded\",\n + \ \"failed\",\n \"terminated\"\n ],\n \"description\": + \"The video's processing status. This value indicates whether YouTube was + able to process the video or if the video is still being processed.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"fileDetailsAvailability\": + {\n \"description\": \"This value indicates whether file details + are available for the uploaded video. You can retrieve a video's file details + by requesting the fileDetails part in your videos.list() request.\",\n \"type\": + \"string\"\n },\n \"processingProgress\": {\n \"description\": + \"The processingProgress object contains information about the progress YouTube + has made in processing the video. The values are really only relevant if the + video's processing status is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n + \ },\n \"tagSuggestionsAvailability\": {\n \"type\": + \"string\",\n \"description\": \"This value indicates whether keyword + (tag) suggestions are available for the video. Tags can be added to a video's + metadata to make it easier for other users to find the video. You can retrieve + these suggestions by requesting the suggestions part in your videos.list() + request.\"\n },\n \"processingIssuesAvailability\": {\n \"type\": + \"string\",\n \"description\": \"This value indicates whether the + video processing engine has generated suggestions that might improve YouTube's + ability to process the the video, warnings that explain video processing problems, + or errors that cause video processing problems. You can retrieve these suggestions + by requesting the suggestions part in your videos.list() request.\"\n },\n + \ \"processingFailureReason\": {\n \"type\": \"string\",\n + \ \"description\": \"The reason that YouTube failed to process the + video. This property will only have a value if the processingStatus property's + value is failed.\",\n \"enum\": [\n \"uploadFailed\",\n + \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"editorSuggestionsAvailability\": + {\n \"description\": \"This value indicates whether video editing + suggestions, which might improve video quality or the playback experience, + are available for the video. You can retrieve these suggestions by requesting + the suggestions part in your videos.list() request.\",\n \"type\": + \"string\"\n },\n \"thumbnailsAvailability\": {\n \"description\": + \"This value indicates whether thumbnail images have been generated for the + video.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"VideoProcessingDetails\",\n \"description\": \"Describes processing + status and progress and availability of some other Video resource parts.\",\n + \ \"type\": \"object\"\n },\n \"Cuepoint\": {\n \"id\": \"Cuepoint\",\n + \ \"description\": \"Note that there may be a 5-second end-point resolution + issue. For instance, if a cuepoint comes in for 22:03:27, we may stuff the + cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact of HLS.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n + \ \"description\": \"The identifier for cuepoint resource.\",\n \"type\": + \"string\"\n },\n \"cueType\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ]\n },\n \"insertionOffsetTimeMs\": {\n \"description\": + \"The time when the cuepoint should be inserted by offset to the broadcast + actual start time.\",\n \"format\": \"int64\",\n \"type\": + \"string\"\n },\n \"walltimeMs\": {\n \"format\": \"uint64\",\n + \ \"description\": \"The wall clock time at which the cuepoint should + be inserted. Only one of insertion_offset_time_ms and walltime_ms may be set + at a time.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\"\n },\n \"durationSecs\": {\n + \ \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The duration of this cuepoint.\"\n }\n }\n },\n \"LocalizedProperty\": + {\n \"type\": \"object\",\n \"id\": \"LocalizedProperty\",\n \"properties\": + {\n \"default\": {\n \"type\": \"string\"\n },\n \"defaultLanguage\": + {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The + language of the default property.\"\n },\n \"localized\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"LocalizedString\"\n }\n }\n }\n },\n \"MonitorStreamInfo\": + {\n \"type\": \"object\",\n \"id\": \"MonitorStreamInfo\",\n \"description\": + \"Settings and Info of the monitor stream\",\n \"properties\": {\n \"embedHtml\": + {\n \"type\": \"string\",\n \"description\": \"HTML code + that embeds a player that plays the monitor stream.\"\n },\n \"broadcastStreamDelayMs\": + {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"If you have set + the enableMonitorStream property to true, then this property determines the + length of the live broadcast delay.\"\n },\n \"enableMonitorStream\": + {\n \"description\": \"This value determines whether the monitor + stream is enabled for the broadcast. If the monitor stream is enabled, then + YouTube will broadcast the event content on a special stream intended only + for the broadcaster's consumption. The broadcaster can use the stream to review + the event content and also to identify the optimal times to insert cuepoints. + You need to set this value to true if you intend to have a broadcast delay + for your event. *Note:* This property cannot be updated once the broadcast + is in the testing or live state.\",\n \"type\": \"boolean\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n }\n }\n }\n },\n \"MembershipsLevelListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"items\": + {\n \"description\": \"A list of pricing levels offered by a creator + to the fans.\",\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n + \ },\n \"type\": \"array\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\"\n + \ },\n \"SubscriptionSnippet\": {\n \"id\": \"SubscriptionSnippet\",\n + \ \"properties\": {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + video. 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.\"\n + \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time that the subscription was created.\",\n + \ \"type\": \"string\"\n },\n \"resourceId\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.subscriptions.insert\"\n + \ ]\n },\n \"$ref\": \"ResourceId\",\n \"description\": + \"The id object contains information about the channel that the user subscribed + to.\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel title for the channel that the subscription + belongs to.\"\n },\n \"title\": {\n \"description\": + \"The subscription's title.\",\n \"type\": \"string\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the subscriber's channel.\"\n + \ },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The subscription's details.\"\n }\n },\n + \ \"description\": \"Basic details about a subscription, including title, + description and thumbnails of the subscribed item.\",\n \"type\": \"object\"\n + \ },\n \"VideoCategorySnippet\": {\n \"type\": \"object\",\n \"description\": + \"Basic details about a video category, such as its localized title.\",\n + \ \"id\": \"VideoCategorySnippet\",\n \"properties\": {\n \"assignable\": + {\n \"type\": \"boolean\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"The video category's title.\"\n + \ },\n \"channelId\": {\n \"description\": \"The YouTube + channel that created the video category.\",\n \"type\": \"string\",\n + \ \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\"\n }\n }\n + \ },\n \"ThumbnailDetails\": {\n \"type\": \"object\",\n \"properties\": + {\n \"standard\": {\n \"description\": \"The standard quality + image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n + \ \"medium\": {\n \"description\": \"The medium quality image + for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"high\": + {\n \"description\": \"The high quality image for this resource.\",\n + \ \"$ref\": \"Thumbnail\"\n },\n \"default\": {\n \"$ref\": + \"Thumbnail\",\n \"description\": \"The default image for this resource.\"\n + \ },\n \"maxres\": {\n \"$ref\": \"Thumbnail\",\n \"description\": + \"The maximum resolution quality image for this resource.\"\n }\n },\n + \ \"description\": \"Internal representation of thumbnails for a YouTube + resource.\",\n \"id\": \"ThumbnailDetails\"\n },\n \"VideoFileDetails\": + {\n \"type\": \"object\",\n \"id\": \"VideoFileDetails\",\n \"properties\": + {\n \"fileType\": {\n \"enum\": [\n \"video\",\n + \ \"audio\",\n \"image\",\n \"archive\",\n + \ \"document\",\n \"project\",\n \"other\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio + only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG + image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document + or text file (e.g., MS Word document).\",\n \"Movie project file + (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video + file type.\"\n ],\n \"description\": \"The uploaded file's + type as detected by YouTube's video processing engine. Currently, YouTube + only processes video files, but this field is present whether a video file + or another type of file was uploaded.\"\n },\n \"creationTime\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the uploaded video file was created. The value is specified + in ISO 8601 format. Currently, the following ISO 8601 formats are supported: + - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: + YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"durationMs\": {\n \"format\": + \"uint64\",\n \"description\": \"The length of the uploaded video + in milliseconds.\",\n \"type\": \"string\"\n },\n \"container\": + {\n \"description\": \"The uploaded video file's container format.\",\n + \ \"type\": \"string\"\n },\n \"fileSize\": {\n \"format\": + \"uint64\",\n \"description\": \"The uploaded file's size in bytes. + This field is present whether a video file or another type of file was uploaded.\",\n + \ \"type\": \"string\"\n },\n \"videoStreams\": {\n + \ \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n + \ },\n \"description\": \"A list of video streams contained + in the uploaded video file. Each item in the list contains detailed metadata + about a video stream.\",\n \"type\": \"array\"\n },\n \"bitrateBps\": + {\n \"description\": \"The uploaded video file's combined (video + and audio) bitrate in bits per second.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n },\n \"fileName\": {\n \"description\": + \"The uploaded file's name. This field is present whether a video file or + another type of file was uploaded.\",\n \"type\": \"string\"\n },\n + \ \"audioStreams\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n },\n \"description\": + \"A list of audio streams contained in the uploaded video file. Each item + in the list contains detailed metadata about an audio stream.\"\n }\n + \ },\n \"description\": \"Describes original video file properties, + including technical details about audio and video streams, but also metadata + information like content length, digitization time, or geotagging information.\"\n + \ },\n \"VideoListResponse\": {\n \"properties\": {\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n },\n \"items\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"Video\"\n }\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#videoListResponse\"\n + \ },\n \"pageInfo\": {\n \"description\": \"General + pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"VideoListResponse\"\n },\n \"LiveChatSuperChatDetails\": + {\n \"properties\": {\n \"tier\": {\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"description\": \"The tier in + which the amount belongs. Lower amounts belong to lower tiers. The lowest + tier is 1.\"\n },\n \"amountDisplayString\": {\n \"type\": + \"string\",\n \"description\": \"A rendered string that displays + the fund amount and currency to the user.\"\n },\n \"currency\": + {\n \"description\": \"The currency in which the purchase was made.\",\n + \ \"type\": \"string\"\n },\n \"userComment\": {\n \"description\": + \"The comment added by the user to this Super Chat event.\",\n \"type\": + \"string\"\n },\n \"amountMicros\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The amount + purchased by the user, in micros (1,750,000 micros = 1.75).\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"LiveChatSuperChatDetails\"\n + \ },\n \"ActivityContentDetailsChannelItem\": {\n \"description\": + \"Details about a resource which was added to a channel.\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + that was added to the channel.\"\n }\n },\n \"id\": \"ActivityContentDetailsChannelItem\",\n + \ \"type\": \"object\"\n },\n \"LiveStreamSnippet\": {\n \"properties\": + {\n \"description\": {\n \"description\": \"The stream's description. + The value cannot be longer than 10000 characters.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that is transmitting + the stream.\",\n \"type\": \"string\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The stream's + title. The value must be between 1 and 128 characters long.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n }\n + \ },\n \"isDefaultStream\": {\n \"type\": \"boolean\"\n + \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n + \ \"type\": \"string\",\n \"description\": \"The date and + time that the stream was created.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveStreamSnippet\"\n },\n \"ChannelListResponse\": + {\n \"id\": \"ChannelListResponse\",\n \"properties\": {\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#channelListResponse\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"Channel\"\n }\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": + \"object\"\n },\n \"VideoPlayer\": {\n \"id\": \"VideoPlayer\",\n + \ \"type\": \"object\",\n \"description\": \"Player to be used for + a video playback.\",\n \"properties\": {\n \"embedHeight\": {\n + \ \"type\": \"string\",\n \"format\": \"int64\"\n },\n + \ \"embedWidth\": {\n \"format\": \"int64\",\n \"description\": + \"The embed width\",\n \"type\": \"string\"\n },\n \"embedHtml\": + {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a + player that will play the video.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"VideoContentDetailsRegionRestriction\": {\n \"id\": + \"VideoContentDetailsRegionRestriction\",\n \"properties\": {\n \"allowed\": + {\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"A list of region codes + that identify countries where the video is viewable. If this property is present + and a country is not listed in its value, then the video is blocked from appearing + in that country. If this property is present and contains an empty list, the + video is blocked in all countries.\"\n },\n \"blocked\": {\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": + \"A list of region codes that identify countries where the video is blocked. + If this property is present and a country is not listed in its value, then + the video is viewable in that country. If this property is present and contains + an empty list, the video is viewable in all countries.\",\n \"type\": + \"array\"\n }\n },\n \"description\": \"DEPRECATED Region + restriction of the video.\",\n \"type\": \"object\"\n },\n \"SubscriptionContentDetails\": + {\n \"id\": \"SubscriptionContentDetails\",\n \"properties\": {\n + \ \"totalItemCount\": {\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"description\": \"The approximate number of items + that the subscription points to.\"\n },\n \"activityType\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n + \ \"all\",\n \"uploads\"\n ],\n \"description\": + \"The type of activity this subscription is for (only uploads, everything).\",\n + \ \"type\": \"string\"\n },\n \"newItemCount\": {\n + \ \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The number of new items in the subscription since its content was last read.\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Details + about the content to witch a subscription refers.\"\n },\n \"ChannelSection\": + {\n \"id\": \"ChannelSection\",\n \"type\": \"object\",\n \"properties\": + {\n \"kind\": {\n \"default\": \"youtube#channelSection\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object contains details about the channel section content, + such as a list of playlists or channels featured in the section.\",\n \"$ref\": + \"ChannelSectionContentDetails\"\n },\n \"localizations\": {\n + \ \"additionalProperties\": {\n \"$ref\": \"ChannelSectionLocalization\"\n + \ },\n \"description\": \"Localizations for different languages\",\n + \ \"type\": \"object\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel section.\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": + \"ChannelSectionSnippet\",\n \"description\": \"The snippet object + contains basic details about the channel section, such as its type, style + and title.\"\n },\n \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n + \ \"description\": \"The targeting object contains basic targeting + settings about the channel section.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n }\n + \ }\n },\n \"PlaylistItemContentDetails\": {\n \"id\": \"PlaylistItemContentDetails\",\n + \ \"properties\": {\n \"startAt\": {\n \"description\": + \"The time, measured in seconds from the start of the video, when the video + should start playing. (The playlist owner can specify the times when the video + should start and stop playing when the video is played in the context of the + playlist.) The default value is 0.\",\n \"type\": \"string\"\n },\n + \ \"endAt\": {\n \"type\": \"string\",\n \"description\": + \"The time, measured in seconds from the start of the video, when the video + should stop playing. (The playlist owner can specify the times when the video + should start and stop playing when the video is played in the context of the + playlist.) By default, assume that the video.endTime is the end of the video.\"\n + \ },\n \"videoPublishedAt\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the video was published + to YouTube.\",\n \"format\": \"date-time\"\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify a video. To retrieve the video resource, + set the id query parameter to this value in your API request.\"\n },\n + \ \"note\": {\n \"description\": \"A user-generated note for + this item.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\"\n },\n \"SearchResultSnippet\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"channelId\": {\n \"description\": + \"The value that YouTube uses to uniquely identify the channel that published + the resource that the search result identifies.\",\n \"type\": \"string\"\n + \ },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"description\": \"The creation date and time of the resource that + the search result identifies.\",\n \"format\": \"date-time\"\n },\n + \ \"title\": {\n \"type\": \"string\",\n \"description\": + \"The title of the search result.\"\n },\n \"liveBroadcastContent\": + {\n \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been completed.\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"It indicates if the resource (video or channel) has upcoming/active live + broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active + live broadcasts.\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"A description of the search result.\"\n + \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + search result. 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.\"\n },\n \"channelTitle\": {\n \"description\": + \"The title of the channel that published the resource that the search result + identifies.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"SearchResultSnippet\",\n \"description\": \"Basic details about a search + result, including title, description and thumbnails of the item referenced + by the search result.\"\n },\n \"ChannelConversionPings\": {\n \"properties\": + {\n \"pings\": {\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n + \ },\n \"type\": \"array\",\n \"description\": \"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.\"\n }\n },\n \"type\": \"object\",\n \"id\": \"ChannelConversionPings\",\n + \ \"description\": \"The conversionPings object encapsulates information + about conversion pings that need to be respected by the channel.\"\n },\n + \ \"VideoLocalization\": {\n \"type\": \"object\",\n \"properties\": + {\n \"description\": {\n \"description\": \"Localized version + of the video's description.\",\n \"type\": \"string\"\n },\n + \ \"title\": {\n \"description\": \"Localized version of the + video's title.\",\n \"type\": \"string\"\n }\n },\n \"description\": + \"Localized versions of certain video properties (e.g. title).\",\n \"id\": + \"VideoLocalization\"\n },\n \"SearchResult\": {\n \"description\": + \"A search result contains information about a YouTube video, channel, or + playlist that matches the search parameters specified in an API request. While + a search result points to a uniquely identifiable resource, like a video, + it does not have its own persistent data.\",\n \"id\": \"SearchResult\",\n + \ \"properties\": {\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about a search result, such as + its title or description. For example, if the search result is a video, then + the title will be the video's title and the description will be the video's + description.\",\n \"$ref\": \"SearchResultSnippet\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The id object contains information + that can be used to uniquely identify the resource that matches the search + request.\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#searchResult\\\".\",\n \"default\": + \"youtube#searchResult\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"MemberListResponse\": {\n \"id\": \"MemberListResponse\",\n + \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n + \ \"description\": \"A list of members that match the request criteria.\",\n + \ \"items\": {\n \"$ref\": \"Member\"\n }\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": + \"youtube#memberListResponse\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"nextPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the next page + in the result set.\",\n \"type\": \"string\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n }\n },\n \"type\": + \"object\"\n },\n \"ThirdPartyLinkStatus\": {\n \"properties\": + {\n \"linkStatus\": {\n \"type\": \"string\",\n \"enum\": + [\n \"unknown\",\n \"failed\",\n \"pending\",\n + \ \"linked\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n }\n },\n \"type\": \"object\",\n \"description\": + \"The third-party link status object contains information about the status + of the link.\",\n \"id\": \"ThirdPartyLinkStatus\"\n },\n \"Member\": + {\n \"type\": \"object\",\n \"description\": \"A *member* resource + represents a member for a YouTube channel. A member provides recurring monetary + support to a creator and receives special benefits.\",\n \"id\": \"Member\",\n + \ \"properties\": {\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the member.\",\n \"$ref\": + \"MemberSnippet\"\n },\n \"kind\": {\n \"default\": + \"youtube#member\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"LiveBroadcastStatistics\": {\n \"description\": \"Statistics about + the live broadcast. These represent a snapshot of the values at the time of + the request. Statistics are only returned for live broadcasts.\",\n \"properties\": + {\n \"totalChatCount\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"The total number of live chat messages + currently on the broadcast. The property and its value will be present if + the broadcast is public, has the live chat feature enabled, and has at least + one message. Note that this field will not be filled after the broadcast ends. + So this property would not identify the number of chat messages for an archived + video of a completed live broadcast.\"\n },\n \"concurrentViewers\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of viewers currently watching the broadcast. The property and + its value will be present if the broadcast has current viewers and the broadcast + owner has not hidden the viewcount for the video. Note that YouTube stops + tracking the number of concurrent viewers for a broadcast when the broadcast + ends. So, this property would not identify the number of viewers watching + an archived video of a live broadcast that already ended.\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"LiveBroadcastStatistics\"\n },\n + \ \"ChannelContentDetails\": {\n \"properties\": {\n \"relatedPlaylists\": + {\n \"type\": \"object\",\n \"properties\": {\n \"watchLater\": + {\n \"description\": \"The ID of the playlist that contains the + channel\\\"s watch later playlist. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\",\n \"type\": \"string\"\n + \ },\n \"favorites\": {\n \"description\": + \"The ID of the playlist that contains the channel\\\"s favorite videos. Use + the playlistItems.insert and playlistItems.delete to add or remove items from + that list.\",\n \"type\": \"string\"\n },\n \"uploads\": + {\n \"description\": \"The ID of the playlist that contains the + channel\\\"s uploaded videos. Use the videos.insert method to upload new videos + and the videos.delete method to delete previously uploaded videos.\",\n \"type\": + \"string\"\n },\n \"likes\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the playlist that + contains the channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\"\n },\n \"watchHistory\": + {\n \"description\": \"The ID of the playlist that contains the + channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\",\n \"type\": \"string\"\n + \ }\n }\n }\n },\n \"description\": \"Details + about the content of a channel.\",\n \"type\": \"object\",\n \"id\": + \"ChannelContentDetails\"\n },\n \"Activity\": {\n \"properties\": + {\n \"snippet\": {\n \"description\": \"The snippet object + contains basic details about the activity, including the activity's type and + group ID.\",\n \"$ref\": \"ActivitySnippet\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource\",\n \"type\": + \"string\"\n },\n \"contentDetails\": {\n \"$ref\": + \"ActivityContentDetails\",\n \"description\": \"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.\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#activity\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#activity\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the activity.\"\n }\n },\n \"id\": + \"Activity\",\n \"description\": \"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.\",\n \"type\": \"object\"\n + \ },\n \"I18nRegion\": {\n \"id\": \"I18nRegion\",\n \"type\": + \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the i18n region, such as + region code and human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#i18nRegion\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the i18n region.\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"A *i18nRegion* resource identifies a region where + YouTube is available.\"\n },\n \"AbuseReport\": {\n \"type\": \"object\",\n + \ \"id\": \"AbuseReport\",\n \"properties\": {\n \"description\": + {\n \"type\": \"string\"\n },\n \"subject\": {\n \"$ref\": + \"Entity\"\n },\n \"abuseTypes\": {\n \"items\": {\n + \ \"$ref\": \"AbuseType\"\n },\n \"type\": \"array\"\n + \ },\n \"relatedEntities\": {\n \"items\": {\n \"$ref\": + \"RelatedEntity\"\n },\n \"type\": \"array\"\n }\n + \ }\n },\n \"InvideoTiming\": {\n \"id\": \"InvideoTiming\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"offsetMs\": + {\n \"description\": \"Defines the time at which the promotion will + appear. Depending on the value of type the value of the offsetMs field will + represent a time offset from the start or from the end of the video, expressed + in milliseconds.\",\n \"type\": \"string\",\n \"format\": + \"uint64\"\n },\n \"durationMs\": {\n \"format\": \"uint64\",\n + \ \"description\": \"Defines the duration in milliseconds for which + the promotion should be displayed. If missing, the client should use the default.\",\n + \ \"type\": \"string\"\n },\n \"type\": {\n \"description\": + \"Describes a timing type. If the value is offsetFromStart, then the offsetMs + field represents an offset from the start of the video. If the value is offsetFromEnd, + then the offsetMs field represents an offset from the end of the video.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"offsetFromStart\",\n + \ \"offsetFromEnd\"\n ]\n }\n },\n \"description\": + \"Describes a temporal position of a visual widget inside a video.\"\n },\n + \ \"VideoLiveStreamingDetails\": {\n \"id\": \"VideoLiveStreamingDetails\",\n + \ \"description\": \"Details about the live streaming metadata.\",\n \"properties\": + {\n \"activeLiveChatId\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the currently active live chat attached to this video. This field + is filled only if the video is a currently live broadcast that has live chat. + Once the broadcast transitions to complete this field will be removed and + the live chat closed down. For persistent broadcasts that live chat id will + no longer be tied to this video but rather to the new video being displayed + at the persistent page.\"\n },\n \"scheduledEndTime\": {\n \"description\": + \"The time that the broadcast is scheduled to end. If the value is empty or + the property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n + \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n + \ \"concurrentViewers\": {\n \"description\": \"The number + of viewers currently watching the broadcast. The property and its value will + be present if the broadcast has current viewers and the broadcast owner has + not hidden the viewcount for the video. Note that YouTube stops tracking the + number of concurrent viewers for a broadcast when the broadcast ends. So, + this property would not identify the number of viewers watching an archived + video of a live broadcast that already ended.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n },\n \"actualStartTime\": + {\n \"type\": \"string\",\n \"description\": \"The time + that the broadcast actually started. This value will not be available until + the broadcast begins.\",\n \"format\": \"date-time\"\n },\n + \ \"scheduledStartTime\": {\n \"format\": \"date-time\",\n + \ \"type\": \"string\",\n \"description\": \"The time that + the broadcast is scheduled to begin.\"\n },\n \"actualEndTime\": + {\n \"type\": \"string\",\n \"description\": \"The time + that the broadcast actually ended. This value will not be available until + the broadcast is over.\",\n \"format\": \"date-time\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"LiveChatTextMessageDetails\": + {\n \"id\": \"LiveChatTextMessageDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"messageText\": {\n \"type\": \"string\",\n + \ \"description\": \"The user's message.\"\n }\n }\n },\n + \ \"LiveChatFanFundingEventDetails\": {\n \"properties\": {\n \"amountDisplayString\": + {\n \"description\": \"A rendered string that displays the fund amount + and currency to the user.\",\n \"type\": \"string\"\n },\n + \ \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the fund was made.\"\n },\n \"userComment\": + {\n \"type\": \"string\",\n \"description\": \"The comment + added by the user to this fan funding event.\"\n },\n \"amountMicros\": + {\n \"description\": \"The amount of the fund.\",\n \"type\": + \"string\",\n \"format\": \"uint64\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\"\n },\n \"VideoFileDetailsAudioStream\": + {\n \"properties\": {\n \"bitrateBps\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The audio stream's bitrate, in bits per second.\"\n },\n \"vendor\": + {\n \"description\": \"A value that uniquely identifies a video vendor. + Typically, the value is a four-letter vendor code.\",\n \"type\": + \"string\"\n },\n \"channelCount\": {\n \"format\": + \"uint32\",\n \"description\": \"The number of audio channels that + the stream contains.\",\n \"type\": \"integer\"\n },\n \"codec\": + {\n \"description\": \"The audio codec that the stream uses.\",\n \ \"type\": \"string\"\n }\n },\n \"description\": - \"Live broadcast state.\"\n },\n \"VideoFileDetailsAudioStream\": {\n - \ \"description\": \"Information about an audio stream.\",\n \"properties\": - {\n \"vendor\": {\n \"description\": \"A value that uniquely - identifies a video vendor. Typically, the value is a four-letter vendor code.\",\n - \ \"type\": \"string\"\n },\n \"channelCount\": {\n - \ \"description\": \"The number of audio channels that the stream - contains.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The audio codec that the stream uses.\"\n },\n \"bitrateBps\": - {\n \"description\": \"The audio stream's bitrate, in bits per second.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoFileDetailsAudioStream\",\n \"type\": - \"object\"\n },\n \"CommentThreadSnippet\": {\n \"description\": - \"Basic details about a comment thread.\",\n \"properties\": {\n \"isPublic\": - {\n \"description\": \"Whether the thread (and therefore all its - comments) is visible to all YouTube users.\",\n \"type\": \"boolean\"\n - \ },\n \"totalReplyCount\": {\n \"description\": \"The - total number of replies (not including the top level comment).\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comments refer to, if any. No video_id implies a channel discussion - comment.\"\n },\n \"canReply\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n },\n \"topLevelComment\": {\n \"$ref\": - \"Comment\",\n \"description\": \"The top level comment of this thread.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"CommentThreadSnippet\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n \"properties\": - {\n \"ctaType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"type\": \"string\"\n },\n \"destinationUrl\": - {\n \"description\": \"The URL the client should direct the user - to, if the user chooses to visit the advertiser's website.\",\n \"type\": - \"string\"\n },\n \"forecastingUrl\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"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.\",\n \"type\": \"array\"\n },\n \"clickTrackingUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user clicked through on this promoted item.\",\n \"type\": - \"string\"\n },\n \"descriptionText\": {\n \"type\": - \"string\",\n \"description\": \"The text description to accompany - the promoted item.\"\n },\n \"creativeViewUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user was shown this promoted item.\"\n },\n \"impressionUrl\": - {\n \"type\": \"array\",\n \"description\": \"The list of - impression URLs. The client should ping all of these URLs to indicate that - the user was shown this promoted item.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the promoted video.\"\n },\n \"customCtaButtonText\": - {\n \"type\": \"string\",\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\"\n },\n \"adTag\": {\n \"description\": - \"The URL the client should fetch to request a promoted item.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Details about a resource which is being promoted.\"\n },\n \"LiveChatBanSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"type\": - {\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"enumDescriptions\": [\n - \ \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of ban.\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The chat - this ban is pertinent to.\"\n },\n \"bannedUserDetails\": {\n - \ \"$ref\": \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": + \"Information about an audio stream.\",\n \"id\": \"VideoFileDetailsAudioStream\",\n + \ \"type\": \"object\"\n },\n \"ChannelTopicDetails\": {\n \"properties\": + {\n \"topicCategories\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"A list of Wikipedia + URLs that describe the channel's content.\",\n \"type\": \"array\"\n + \ },\n \"topicIds\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of Freebase topic IDs associated with the channel. You can retrieve + information about each topic using the Freebase Topic API.\"\n }\n + \ },\n \"id\": \"ChannelTopicDetails\",\n \"type\": \"object\",\n + \ \"description\": \"Freebase topic information related to the channel.\"\n + \ },\n \"ChannelStatistics\": {\n \"properties\": {\n \"subscriberCount\": {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n }\n - \ },\n \"id\": \"LiveChatBanSnippet\"\n },\n \"PageInfo\": - {\n \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\",\n \"type\": \"object\",\n \"properties\": {\n \"totalResults\": - {\n \"description\": \"The total number of results in the result - set.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ },\n \"resultsPerPage\": {\n \"description\": \"The - number of results included in the API response.\",\n \"type\": \"integer\",\n - \ \"format\": \"int32\"\n }\n },\n \"id\": \"PageInfo\"\n - \ },\n \"LiveChatModeratorListResponse\": {\n \"properties\": {\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": - \"A list of moderators that match the request criteria.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \"The number of subscribers that the channel has.\"\n },\n \"hiddenSubscriberCount\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the number of subscribers is shown for this user.\"\n },\n \"videoCount\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The number of videos uploaded to the channel.\"\n },\n \"commentCount\": + {\n \"format\": \"uint64\",\n \"description\": \"The number + of comments for the channel.\",\n \"type\": \"string\"\n },\n + \ \"viewCount\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"The number of times the channel + has been viewed.\"\n }\n },\n \"description\": \"Statistics + about a channel: number of subscribers, number of videos in the channel, etc.\",\n + \ \"id\": \"ChannelStatistics\",\n \"type\": \"object\"\n },\n + \ \"PlaylistPlayer\": {\n \"id\": \"PlaylistPlayer\",\n \"type\": + \"object\",\n \"properties\": {\n \"embedHtml\": {\n \"type\": + \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that + embeds a player that will play the playlist.\"\n }\n }\n },\n + \ \"ChannelSectionTargeting\": {\n \"id\": \"ChannelSectionTargeting\",\n + \ \"description\": \"ChannelSection targeting setting.\",\n \"properties\": + {\n \"languages\": {\n \"description\": \"The language the + channel section is targeting.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n },\n \"countries\": + {\n \"description\": \"The country the channel section is targeting.\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": + \"array\"\n },\n \"regions\": {\n \"description\": + \"The region the channel section is targeting.\",\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n }\n + \ },\n \"type\": \"object\"\n },\n \"ChannelSectionListResponse\": + {\n \"id\": \"ChannelSectionListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"ChannelSection\"\n + \ },\n \"description\": \"A list of ChannelSections that + match the request criteria.\",\n \"type\": \"array\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": + \"youtube#channelSectionListResponse\",\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n }\n + \ }\n },\n \"LanguageTag\": {\n \"id\": \"LanguageTag\",\n + \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"PlaylistLocalization\": + {\n \"id\": \"PlaylistLocalization\",\n \"description\": \"Playlist + localization setting\",\n \"type\": \"object\",\n \"properties\": + {\n \"description\": {\n \"description\": \"The localized + strings for playlist's description.\",\n \"type\": \"string\"\n },\n + \ \"title\": {\n \"type\": \"string\",\n \"description\": + \"The localized strings for playlist's title.\"\n }\n }\n },\n + \ \"I18nLanguageListResponse\": {\n \"properties\": {\n \"kind\": + {\n \"default\": \"youtube#i18nLanguageListResponse\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"I18nLanguage\"\n },\n \"description\": \"A list of supported + i18n languages. In this map, the i18n language ID is the map key, and its + value is the corresponding i18nLanguage resource.\",\n \"type\": + \"array\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"I18nLanguageListResponse\"\n },\n \"ChannelSectionSnippet\": {\n \"id\": + \"ChannelSectionSnippet\",\n \"description\": \"Basic details about a + channel section, including title, style and position.\",\n \"type\": + \"object\",\n \"properties\": {\n \"localized\": {\n \"$ref\": + \"ChannelSectionLocalization\",\n \"description\": \"Localized title, + read-only.\"\n },\n \"defaultLanguage\": {\n \"description\": + \"The language of the channel section's default title and description.\",\n + \ \"type\": \"string\"\n },\n \"type\": {\n \"description\": + \"The type of the channel section.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n + \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n + \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n + \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n + \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n + \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n + \ ]\n },\n \"position\": {\n \"description\": + \"The position of the channel section in the channel.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"style\": + {\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n + \ \"horizontalRow\",\n \"verticalList\"\n ],\n + \ \"description\": \"The style of the channel section.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the channel that published the channel section.\"\n },\n \"title\": + {\n \"description\": \"The channel section's title for multiple_playlists + and multiple_channels.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"IngestionInfo\": {\n \"id\": \"IngestionInfo\",\n \"properties\": + {\n \"ingestionAddress\": {\n \"description\": \"The primary + ingestion URL that you should use to stream video to YouTube. You must stream + video to this URL. Depending on which application or tool you use to encode + your video stream, you may need to enter the stream URL and stream name separately + or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* + \",\n \"type\": \"string\"\n },\n \"rtmpsIngestionAddress\": + {\n \"description\": \"This ingestion url may be used instead of + ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP + streams.\",\n \"type\": \"string\"\n },\n \"streamName\": + {\n \"description\": \"The stream name that YouTube assigns to the + video stream.\",\n \"type\": \"string\"\n },\n \"rtmpsBackupIngestionAddress\": + {\n \"description\": \"This ingestion url may be used instead of + backupIngestionAddress in order to stream via RTMPS. Not applicable to non-RTMP + streams.\",\n \"type\": \"string\"\n },\n \"backupIngestionAddress\": + {\n \"type\": \"string\",\n \"description\": \"The backup + ingestion URL that you should use to stream video to YouTube. You have the + option of simultaneously streaming the content that you are sending to the + ingestionAddress to this URL.\"\n }\n },\n \"type\": \"object\",\n + \ \"description\": \"Describes information necessary for ingesting an + RTMP, HTTP, or SRT stream.\"\n },\n \"MembershipsLevel\": {\n \"description\": + \"A *membershipsLevel* resource represents an offer made by YouTube creators + for their fans. Users can become members of the channel by joining one of + the available levels. They will provide recurring monetary support and receives + special benefits.\",\n \"properties\": {\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#membershipsLevel\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube assigns to uniquely identify the memberships level.\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"MembershipsLevel\"\n + \ },\n \"PlaylistContentDetails\": {\n \"type\": \"object\",\n \"id\": + \"PlaylistContentDetails\",\n \"properties\": {\n \"itemCount\": + {\n \"type\": \"integer\",\n \"description\": \"The number + of videos in the playlist.\",\n \"format\": \"uint32\"\n }\n + \ }\n },\n \"VideoAbuseReportReasonListResponse\": {\n \"type\": + \"object\",\n \"properties\": {\n \"items\": {\n \"type\": + \"array\",\n \"description\": \"A list of valid abuse reasons that + are used with `video.ReportAbuse`.\",\n \"items\": {\n \"$ref\": + \"VideoAbuseReportReason\"\n }\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"visitorId\": {\n \"description\": + \"The `visitorId` identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#videoAbuseReportReasonListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n + \ }\n },\n \"id\": \"VideoAbuseReportReasonListResponse\"\n + \ },\n \"Subscription\": {\n \"id\": \"Subscription\",\n \"description\": + \"A *subscription* resource contains information about a YouTube user subscription. + A subscription notifies a user when new videos are added to a channel or when + another user takes one of several actions on YouTube, such as uploading a + video, rating a video, or commenting on a video.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"subscriberSnippet\": {\n \"description\": + \"The subscriberSnippet object contains basic details about the subscriber.\",\n + \ \"$ref\": \"SubscriptionSubscriberSnippet\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the subscription.\",\n \"type\": \"string\"\n },\n \"contentDetails\": + {\n \"$ref\": \"SubscriptionContentDetails\",\n \"description\": + \"The contentDetails object contains basic statistics about the subscription.\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": + \"SubscriptionSnippet\",\n \"description\": \"The snippet object + contains basic details about the subscription, including its title and the + channel that the user subscribed to.\"\n },\n \"kind\": {\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n + \ \"default\": \"youtube#subscription\"\n }\n }\n },\n + \ \"VideoMonetizationDetails\": {\n \"properties\": {\n \"access\": + {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The + value of access indicates whether the video can be monetized or not.\"\n }\n + \ },\n \"id\": \"VideoMonetizationDetails\",\n \"description\": + \"Details about monetization of a YouTube Video.\",\n \"type\": \"object\"\n + \ },\n \"VideoRecordingDetails\": {\n \"type\": \"object\",\n \"id\": + \"VideoRecordingDetails\",\n \"description\": \"Recording information + associated with the video.\",\n \"properties\": {\n \"recordingDate\": + {\n \"description\": \"The date and time when the video was recorded.\",\n + \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n + \ \"location\": {\n \"description\": \"The geolocation information + associated with the video.\",\n \"$ref\": \"GeoPoint\"\n },\n + \ \"locationDescription\": {\n \"description\": \"The text + description of the location where the video was recorded.\",\n \"type\": + \"string\"\n }\n }\n },\n \"LiveStream\": {\n \"properties\": + {\n \"contentDetails\": {\n \"description\": \"The content_details + object contains information about the stream, including the closed captions + ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#liveStream\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"LiveStreamSnippet\",\n \"description\": + \"The snippet object contains basic details about the stream, including its + channel, title, and description.\"\n },\n \"status\": {\n \"$ref\": + \"LiveStreamStatus\",\n \"description\": \"The status object contains + information about live stream's status.\"\n },\n \"cdn\": {\n + \ \"$ref\": \"CdnSettings\",\n \"description\": \"The cdn + object defines the live stream's content delivery network (CDN) settings. + These settings provide details about the manner in which you stream your content + to YouTube.\"\n },\n \"id\": {\n \"description\": \"The + ID that YouTube assigns to uniquely identify the stream.\",\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.update\"\n + \ ]\n }\n }\n },\n \"id\": \"LiveStream\",\n + \ \"type\": \"object\",\n \"description\": \"A live stream describes + a live ingestion point.\"\n },\n \"VideoAgeGating\": {\n \"properties\": + {\n \"videoGameRating\": {\n \"description\": \"Video game + rating, if any.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n + \ \"m16Plus\",\n \"m17Plus\"\n ]\n },\n + \ \"restricted\": {\n \"type\": \"boolean\",\n \"description\": + \"Age-restricted trailers. For redband trailers and adult-rated video-games. + Only users aged 18+ can view the content. The the field is true the content + is restricted to viewers aged 18+. Otherwise The field won't be present.\"\n + \ },\n \"alcoholContent\": {\n \"description\": \"Indicates + whether or not the video has alcoholic beverage content. Only users of legal + purchasing age in a particular country, as identified by ICAP, can view the + content.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"VideoAgeGating\"\n },\n \"VideoGetRatingResponse\": + {\n \"properties\": {\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n + \ \"default\": \"youtube#videoGetRatingResponse\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"items\": {\n \"description\": + \"A list of ratings that match the request criteria.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoRating\"\n + \ }\n }\n },\n \"id\": \"VideoGetRatingResponse\",\n + \ \"type\": \"object\"\n }\n },\n \"auth\": {\n \"oauth2\": {\n + \ \"scopes\": {\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": + {\n \"description\": \"View private information of your YouTube channel + relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": + {\n \"description\": \"View and manage your assets and associated + content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": + {\n \"description\": \"See, edit, and permanently delete your YouTube + videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube\": + {\n \"description\": \"Manage your YouTube account\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": + \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": + {\n \"description\": \"See a list of your current active channel + members, their current level, and when they became a member\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": + \"Manage your YouTube videos\"\n }\n }\n }\n },\n \"parameters\": + {\n \"alt\": {\n \"type\": \"string\",\n \"default\": \"json\",\n + \ \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n + \ ],\n \"location\": \"query\",\n \"enumDescriptions\": [\n + \ \"Responses with Content-Type of application/json\",\n \"Media + download with context-dependent Content-Type\",\n \"Responses with + Content-Type of application/x-protobuf\"\n ],\n \"description\": + \"Data format for response.\"\n },\n \"quotaUser\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"fields\": {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Selector specifying which fields to include in a + partial response.\"\n },\n \"access_token\": {\n \"description\": + \"OAuth access token.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"upload_protocol\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Upload protocol for + media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n },\n \"key\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"$.xgafv\": {\n \"enum\": [\n \"1\",\n \"2\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"V1 error format.\",\n + \ \"enumDescriptions\": [\n \"v1 error format\",\n \"v2 + error format\"\n ],\n \"location\": \"query\"\n },\n \"prettyPrint\": + {\n \"type\": \"boolean\",\n \"description\": \"Returns response + with indentations and line breaks.\",\n \"location\": \"query\",\n \"default\": + \"true\"\n },\n \"uploadType\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Legacy upload protocol + for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n },\n \"oauth_token\": + {\n \"location\": \"query\",\n \"description\": \"OAuth 2.0 token + for the current user.\",\n \"type\": \"string\"\n },\n \"callback\": + {\n \"location\": \"query\",\n \"description\": \"JSONP\",\n \"type\": + \"string\"\n }\n },\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n + \ \"version\": \"v3\",\n \"kind\": \"discovery#restDescription\",\n \"mtlsRootUrl\": + \"https://youtube.mtls.googleapis.com/\",\n \"name\": \"youtube\",\n \"fullyEncodeReservedExpansion\": + true\n}\n" + headers: + Alt-Svc: + - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 + Cache-Control: + - private + Content-Encoding: + - gzip + Content-Type: + - application/json; charset=UTF-8 + Date: + - Thu, 09 Mar 2023 00:27:09 GMT + Server: + - scaffolding on HTTPServer2 + Transfer-Encoding: + - chunked + Vary: + - Origin + - X-Origin + - Referer + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - SAMEORIGIN + X-XSS-Protection: + - '0' + status: + code: 200 + message: OK + url: '' +- request: + body: null + headers: + Accept-Encoding: + - gzip + User-Agent: + - Aiogoogle Aiohttp (gzip) + method: GET + uri: https://youtube.googleapis.com/youtube/v3/videos?id=VOG-fFhq7kk&part=snippet + response: + body: + string: "{\n \"kind\": \"youtube#videoListResponse\",\n \"etag\": \"Sf8L_yk_W0NDqPksFeK1nmC2Wis\",\n + \ \"items\": [\n {\n \"kind\": \"youtube#video\",\n \"etag\": + \"uJeC8cRJpacJxGVl5VtAD_-bby4\",\n \"id\": \"VOG-fFhq7kk\",\n \"snippet\": + {\n \"publishedAt\": \"2022-09-15T18:14:34Z\",\n \"channelId\": + \"UCk2OzObixhe_mbMfMQGLuJw\",\n \"title\": \"YouTube Bolt button\",\n + \ \"description\": \"\",\n \"thumbnails\": {\n \"default\": + {\n \"url\": \"https://i.ytimg.com/vi/VOG-fFhq7kk/default.jpg\",\n + \ \"width\": 120,\n \"height\": 90\n },\n \"medium\": + {\n \"url\": \"https://i.ytimg.com/vi/VOG-fFhq7kk/mqdefault.jpg\",\n + \ \"width\": 320,\n \"height\": 180\n },\n \"high\": + {\n \"url\": \"https://i.ytimg.com/vi/VOG-fFhq7kk/hqdefault.jpg\",\n + \ \"width\": 480,\n \"height\": 360\n },\n \"standard\": + {\n \"url\": \"https://i.ytimg.com/vi/VOG-fFhq7kk/sddefault.jpg\",\n + \ \"width\": 640,\n \"height\": 480\n }\n },\n + \ \"channelTitle\": \"Another Channel\",\n \"categoryId\": \"22\",\n + \ \"liveBroadcastContent\": \"none\",\n \"localized\": {\n \"title\": + \"YouTube Bolt button\",\n \"description\": \"\"\n }\n }\n + \ }\n ],\n \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": + 1\n }\n}\n" + headers: + Alt-Svc: + - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 + Cache-Control: + - private + Content-Encoding: + - gzip + Content-Type: + - application/json; charset=UTF-8 + Date: + - Thu, 09 Mar 2023 00:27:09 GMT + Server: + - scaffolding on HTTPServer2 + Transfer-Encoding: + - chunked + Vary: + - Origin + - X-Origin + - Referer + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - SAMEORIGIN + X-XSS-Protection: + - '0' + status: + code: 200 + message: OK + url: '' +- request: + body: null + headers: + Accept-Encoding: + - gzip + User-Agent: + - Aiogoogle Aiohttp (gzip) + method: GET + uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest + response: + body: + string: "{\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"ownerName\": + \"Google\",\n \"batchPath\": \"batch\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n + \ \"protocol\": \"rest\",\n \"version\": \"v3\",\n \"parameters\": {\n \"fields\": + {\n \"description\": \"Selector specifying which fields to include in + a partial response.\",\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"oauth_token\": {\n \"location\": \"query\",\n \"description\": + \"OAuth 2.0 token for the current user.\",\n \"type\": \"string\"\n },\n + \ \"upload_protocol\": {\n \"type\": \"string\",\n \"description\": + \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"location\": + \"query\"\n },\n \"access_token\": {\n \"type\": \"string\",\n + \ \"description\": \"OAuth access token.\",\n \"location\": \"query\"\n + \ },\n \"quotaUser\": {\n \"location\": \"query\",\n \"description\": + \"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.\",\n + \ \"type\": \"string\"\n },\n \"alt\": {\n \"default\": \"json\",\n + \ \"location\": \"query\",\n \"description\": \"Data format for response.\",\n + \ \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"Responses + with Content-Type of application/json\",\n \"Media download with context-dependent + Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n + \ ]\n },\n \"$.xgafv\": {\n \"enumDescriptions\": [\n \"v1 + error format\",\n \"v2 error format\"\n ],\n \"location\": + \"query\",\n \"description\": \"V1 error format.\",\n \"type\": + \"string\",\n \"enum\": [\n \"1\",\n \"2\"\n ]\n },\n + \ \"uploadType\": {\n \"description\": \"Legacy upload protocol for + media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"callback\": {\n \"description\": + \"JSONP\",\n \"location\": \"query\",\n \"type\": \"string\"\n },\n + \ \"key\": {\n \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": + \"string\"\n },\n \"prettyPrint\": {\n \"type\": \"boolean\",\n + \ \"default\": \"true\",\n \"description\": \"Returns response with + indentations and line breaks.\",\n \"location\": \"query\"\n }\n },\n + \ \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"title\": \"YouTube + Data API v3\",\n \"resources\": {\n \"videoCategories\": {\n \"methods\": + {\n \"list\": {\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"parameters\": {\n \"part\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": + \"The *part* parameter specifies the videoCategory resource properties that + the API response will include. Set the parameter value to snippet.\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"description\": + \"Returns the video categories with the given IDs for Stubby or Apiary.\"\n + \ },\n \"hl\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"default\": \"en-US\"\n + \ },\n \"regionCode\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n + \ },\n \"path\": \"youtube/v3/videoCategories\",\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.videoCategories.list\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/videoCategories\"\n }\n }\n + \ },\n \"liveStreams\": {\n \"methods\": {\n \"insert\": + {\n \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Inserts a new stream for the authenticated user.\",\n \"request\": + {\n \"$ref\": \"LiveStream\"\n },\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.insert\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"description\": \"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, + content_details, and status.\",\n \"required\": true,\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n }\n },\n \"path\": + \"youtube/v3/liveStreams\"\n },\n \"delete\": {\n \"path\": + \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"id\": \"youtube.liveStreams.delete\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"description\": \"Deletes an existing stream for + the authenticated user.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/liveStreams\"\n },\n + \ \"update\": {\n \"description\": \"Updates an existing stream + for the authenticated user.\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"LiveStream\"\n },\n \"id\": \"youtube.liveStreams.update\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"required\": + true,\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n + \ }\n },\n \"httpMethod\": \"PUT\",\n \"path\": + \"youtube/v3/liveStreams\",\n \"request\": {\n \"$ref\": + \"LiveStream\"\n }\n },\n \"list\": {\n \"path\": + \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.list\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Retrieve + the list of streams associated with the given channel. --\",\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"response\": {\n \"$ref\": + \"LiveStreamListResponse\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"description\": + \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"minimum\": + \"0\",\n \"location\": \"query\",\n \"default\": + \"5\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"maximum\": \"50\",\n \"type\": \"integer\",\n + \ \"format\": \"uint32\"\n },\n \"mine\": + {\n \"type\": \"boolean\",\n \"location\": \"query\"\n + \ },\n \"pageToken\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"repeated\": + true,\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n + \ }\n }\n }\n },\n \"commentThreads\": {\n \"methods\": + {\n \"insert\": {\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.commentThreads.insert\",\n + \ \"path\": \"youtube/v3/commentThreads\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"request\": + {\n \"$ref\": \"CommentThread\"\n },\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true,\n \"description\": + \"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.\",\n \"type\": \"string\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"CommentThread\"\n }\n },\n \"list\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/commentThreads\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n + \ },\n \"id\": \"youtube.commentThreads.list\",\n \"path\": + \"youtube/v3/commentThreads\",\n \"parameters\": {\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"Returns + the comment threads with the given IDs for Stubby or Apiary.\",\n \"location\": + \"query\",\n \"repeated\": true\n },\n \"maxResults\": + {\n \"minimum\": \"1\",\n \"location\": \"query\",\n + \ \"type\": \"integer\",\n \"format\": \"uint32\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"default\": + \"20\",\n \"maximum\": \"100\"\n },\n \"order\": + {\n \"enumDescriptions\": [\n \"\",\n \"Order + by time.\",\n \"Order by relevance.\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"orderUnspecified\",\n + \ \"time\",\n \"relevance\"\n ],\n + \ \"default\": \"time\",\n \"location\": \"query\"\n + \ },\n \"searchTerms\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Limits + the returned comment threads to those matching the specified key words. Not + compatible with the 'id' filter.\"\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Returns the comment threads of the specified + video.\"\n },\n \"allThreadsRelatedToChannelId\": {\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Returns the comment threads of all videos + of the channel and the channel comments as well.\"\n },\n \"part\": + {\n \"description\": \"The *part* parameter specifies a comma-separated + list of one or more commentThread resource properties that the API response + will include.\",\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true\n },\n \"textFormat\": {\n \"enumDescriptions\": + [\n \"\",\n \"Returns the comments in HTML format. + This is the default value.\",\n \"Returns the comments in plain + text format.\"\n ],\n \"default\": \"html\",\n \"description\": + \"The requested text format for the returned comments.\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"enum\": [\n + \ \"textFormatUnspecified\",\n \"html\",\n \"plainText\"\n + \ ]\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Returns the comment threads for all the channel comments (ie does not include + comments left on videos).\"\n },\n \"moderationStatus\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"The comment is available + for public display.\",\n \"The comment is awaiting review by + a moderator.\",\n \"\",\n \"The comment is unfit + for display.\"\n ],\n \"description\": \"Limits + the returned comment threads to those with the specified moderation status. + Not compatible with the 'id' filter. Valid values: published, heldForReview, + likelySpam.\",\n \"default\": \"published\",\n \"enum\": + [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n + \ \"rejected\"\n ]\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\"\n + \ }\n }\n },\n \"channelBanners\": {\n \"methods\": + {\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"response\": + {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"id\": + \"youtube.channelBanners.insert\",\n \"mediaUpload\": {\n \"protocols\": + {\n \"simple\": {\n \"multipart\": true,\n \"path\": + \"/upload/youtube/v3/channelBanners/insert\"\n },\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n + \ }\n },\n \"maxSize\": \"6291456\",\n \"accept\": + [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n + \ ]\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n + \ ],\n \"description\": \"Inserts a new resource into this + collection.\",\n \"parameterOrder\": [],\n \"parameters\": + {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"Unused, channel_id is currently derived from the security context of the + requestor.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\"\n }\n + \ },\n \"supportsMediaUpload\": true,\n \"path\": + \"youtube/v3/channelBanners/insert\",\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n + \ \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n + \ }\n }\n }\n },\n \"playlistItems\": {\n \"methods\": + {\n \"delete\": {\n \"description\": \"Deletes a resource.\",\n + \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.delete\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\"\n }\n },\n \"path\": + \"youtube/v3/playlistItems\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ },\n \"list\": {\n \"response\": {\n \"$ref\": + \"PlaylistItemListResponse\"\n },\n \"httpMethod\": \"GET\",\n + \ \"id\": \"youtube.playlistItems.list\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"maxResults\": + {\n \"format\": \"uint32\",\n \"minimum\": \"0\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"location\": + \"query\",\n \"maximum\": \"50\",\n \"default\": + \"5\",\n \"type\": \"integer\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"playlistId\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Return the playlist items within the given playlist.\"\n },\n + \ \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"Return the playlist items associated with the given video ID.\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"required\": + true\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n }\n + \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"response\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"request\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"path\": + \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"repeated\": true,\n + \ \"required\": true\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"id\": \"youtube.playlistItems.insert\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ },\n \"update\": {\n \"id\": \"youtube.playlistItems.update\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Updates an existing resource.\",\n + \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n + \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"required\": true,\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n }\n + \ }\n }\n },\n \"activities\": {\n \"methods\": {\n + \ \"list\": {\n \"httpMethod\": \"GET\",\n \"path\": + \"youtube/v3/activities\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"parameters\": {\n \"publishedBefore\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"format\": \"google-datetime\"\n },\n \"mine\": + {\n \"type\": \"boolean\",\n \"location\": \"query\"\n + \ },\n \"home\": {\n \"location\": \"query\",\n + \ \"type\": \"boolean\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": + \"string\"\n },\n \"regionCode\": {\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"required\": + true,\n \"type\": \"string\",\n \"repeated\": true\n + \ },\n \"channelId\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"default\": \"5\",\n \"minimum\": \"0\",\n + \ \"location\": \"query\",\n \"format\": \"uint32\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"maximum\": + \"50\",\n \"type\": \"integer\"\n },\n \"publishedAfter\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"format\": \"google-datetime\"\n }\n },\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"id\": \"youtube.activities.list\",\n \"flatPath\": \"youtube/v3/activities\",\n + \ \"response\": {\n \"$ref\": \"ActivityListResponse\"\n + \ }\n }\n }\n },\n \"watermarks\": {\n \"methods\": + {\n \"unset\": {\n \"parameterOrder\": [\n \"channelId\"\n + \ ],\n \"description\": \"Allows removal of channel watermark.\",\n + \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n }\n },\n \"id\": + \"youtube.watermarks.unset\",\n \"httpMethod\": \"POST\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/watermarks/unset\"\n },\n \"set\": + {\n \"parameters\": {\n \"channelId\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"parameterOrder\": [\n \"channelId\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"mediaUpload\": {\n \"maxSize\": + \"10485760\",\n \"protocols\": {\n \"simple\": {\n + \ \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": + true\n },\n \"resumable\": {\n \"multipart\": + true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n + \ }\n },\n \"accept\": [\n \"image/jpeg\",\n + \ \"image/png\",\n \"application/octet-stream\"\n + \ ]\n },\n \"path\": \"youtube/v3/watermarks/set\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n + \ \"description\": \"Allows upload of watermark image and setting + it for a channel.\",\n \"supportsMediaUpload\": true,\n \"id\": + \"youtube.watermarks.set\",\n \"flatPath\": \"youtube/v3/watermarks/set\"\n + \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": + {\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/search\",\n \"parameters\": + {\n \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"videoDefinition\": + {\n \"enum\": [\n \"any\",\n \"standard\",\n + \ \"high\"\n ],\n \"enumDescriptions\": + [\n \"Return all videos, regardless of their resolution.\",\n + \ \"Only retrieve videos in standard definition.\",\n \"Only + retrieve HD videos.\"\n ],\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Filter + on the definition of the videos.\"\n },\n \"eventType\": + {\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n + \ \"The live broadcast is active.\",\n \"The + live broadcast has been completed.\"\n ],\n \"description\": + \"Filter on the livestream status of the videos.\",\n \"enum\": + [\n \"none\",\n \"upcoming\",\n \"live\",\n + \ \"completed\"\n ],\n \"type\": \"string\"\n + \ },\n \"videoDuration\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"enum\": + [\n \"videoDurationUnspecified\",\n \"any\",\n + \ \"short\",\n \"medium\",\n \"long\"\n + \ ],\n \"description\": \"Filter on the duration + of the videos.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Do not filter video search results based on their duration. + This is the default value.\",\n \"Only include videos that + are less than four minutes long.\",\n \"Only include videos + that are between four and 20 minutes long (inclusive).\",\n \"Only + include videos longer than 20 minutes.\"\n ]\n },\n + \ \"maxResults\": {\n \"default\": \"5\",\n \"minimum\": + \"0\",\n \"location\": \"query\",\n \"type\": \"integer\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"format\": + \"uint32\",\n \"maximum\": \"50\"\n },\n \"q\": + {\n \"description\": \"Textual search terms to match.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"topicId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Restrict results to a particular topic.\"\n + \ },\n \"videoCaption\": {\n \"description\": + \"Filter on the presence of captions on the videos.\",\n \"location\": + \"query\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n + \ \"any\",\n \"closedCaption\",\n \"none\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"Do not filter results based on caption availability.\",\n + \ \"Only include videos that have captions.\",\n \"Only + include videos that do not have captions.\"\n ],\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"description\": + \"Filter on resources belonging to this channelId.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"type\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"Restrict + results to a particular set of resource types from One Platform.\"\n },\n + \ \"location\": {\n \"description\": \"Filter on location + of the video\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"publishedBefore\": {\n \"format\": + \"google-datetime\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Filter on resources published + before this date.\"\n },\n \"publishedAfter\": {\n \"format\": + \"google-datetime\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"Filter on resources published + after this date.\"\n },\n \"part\": {\n \"description\": + \"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.\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true\n },\n \"forDeveloper\": {\n \"description\": + \"Restrict the search to only retrieve videos uploaded using the project id + of the authenticated user.\",\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"videoCategoryId\": {\n \"location\": + \"query\",\n \"description\": \"Filter on videos in a specific + category.\",\n \"type\": \"string\"\n },\n \"order\": + {\n \"enum\": [\n \"searchSortUnspecified\",\n + \ \"date\",\n \"rating\",\n \"viewCount\",\n + \ \"relevance\",\n \"title\",\n \"videoCount\"\n + \ ],\n \"description\": \"Sort order of the results.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n + \ \"\",\n \"Resources are sorted in reverse chronological + order based on the date they were created.\",\n \"Resources + are sorted from highest to lowest rating.\",\n \"Resources + are sorted from highest to lowest number of views.\",\n \"Resources + are sorted based on their relevance to the search query. This is the default + value for this parameter.\",\n \"Resources are sorted alphabetically + by title.\",\n \"Channels are sorted in descending order of + their number of uploaded videos.\"\n ],\n \"default\": + \"relevance\",\n \"location\": \"query\"\n },\n \"relevanceLanguage\": + {\n \"description\": \"Return results relevant to this language.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"forMine\": {\n \"description\": + \"Search for the private videos of the authenticated user.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"forContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"boolean\",\n + \ \"description\": \"Search owned by a content owner.\"\n },\n + \ \"locationRadius\": {\n \"description\": \"Filter + on distance from the location (specified above).\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"safeSearch\": + {\n \"description\": \"Indicates whether the search results should + include restricted content as well as standard content.\",\n \"location\": + \"query\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n + \ \"none\",\n \"moderate\",\n \"strict\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"YouTube will not filter the search result set.\",\n \"YouTube + will filter some content from search results and, at the least, will filter + content that is restricted in your locale. Based on their content, search + results could be removed from search results or demoted in search results. + This is the default parameter value.\",\n \"YouTube will try + to exclude all restricted content from the search result set. Based on their + content, search results could be removed from search results or demoted in + search results.\"\n ],\n \"default\": \"moderate\",\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"regionCode\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Display the content as seen by viewers in this country.\"\n },\n + \ \"videoEmbeddable\": {\n \"type\": \"string\",\n + \ \"description\": \"Filter on embeddable videos.\",\n \"enum\": + [\n \"videoEmbeddableUnspecified\",\n \"any\",\n + \ \"true\"\n ],\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Return + all videos, embeddable or not.\",\n \"Only retrieve embeddable + videos.\"\n ]\n },\n \"videoSyndicated\": + {\n \"type\": \"string\",\n \"description\": \"Filter + on syndicated videos.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all videos, syndicated or not.\",\n \"Only + retrieve syndicated videos.\"\n ],\n \"enum\": [\n + \ \"videoSyndicatedUnspecified\",\n \"any\",\n + \ \"true\"\n ],\n \"location\": \"query\"\n + \ },\n \"videoLicense\": {\n \"location\": + \"query\",\n \"description\": \"Filter on the license of the + videos.\",\n \"type\": \"string\",\n \"enum\": [\n + \ \"any\",\n \"youtube\",\n \"creativeCommon\"\n + \ ],\n \"enumDescriptions\": [\n \"Return + all videos, regardless of which license they have, that match the query parameters.\",\n + \ \"Only return videos that have the standard YouTube license.\",\n + \ \"Only return videos that have a Creative Commons license. + Users can reuse videos with this license in other videos that they create. + Learn more.\"\n ]\n },\n \"channelType\": + {\n \"enum\": [\n \"channelTypeUnspecified\",\n + \ \"any\",\n \"show\"\n ],\n \"description\": + \"Add a filter on the channel search.\",\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Return + all channels.\",\n \"Only retrieve shows.\"\n ],\n + \ \"type\": \"string\"\n },\n \"videoType\": + {\n \"enum\": [\n \"videoTypeUnspecified\",\n + \ \"any\",\n \"movie\",\n \"episode\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"Filter on videos of a specific type.\",\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Return + all videos.\",\n \"Only retrieve movies.\",\n \"Only + retrieve episodes of shows.\"\n ]\n },\n \"relatedToVideoId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Search related to a resource.\"\n },\n + \ \"videoDimension\": {\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"Include both 3D and + non-3D videos in returned results. This is the default value.\",\n \"Restrict + search results to exclude 3D videos.\",\n \"Restrict search + results to only include 3D videos.\"\n ],\n \"type\": + \"string\",\n \"description\": \"Filter on 3d videos.\",\n \"enum\": + [\n \"any\",\n \"2d\",\n \"3d\"\n + \ ]\n }\n },\n \"httpMethod\": \"GET\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/search\",\n \"id\": + \"youtube.search.list\",\n \"description\": \"Retrieves a list of + search resources\"\n }\n }\n },\n \"superChatEvents\": {\n + \ \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"path\": \"youtube/v3/superChatEvents\",\n + \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.superChatEvents.list\",\n + \ \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"parameters\": + {\n \"part\": {\n \"description\": \"The *part* parameter + specifies the superChatEvent resource parts that the API response will include. + This parameter is currently not supported.\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\"\n },\n \"maxResults\": + {\n \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"format\": + \"uint32\",\n \"maximum\": \"50\",\n \"minimum\": + \"1\",\n \"default\": \"5\",\n \"type\": \"integer\",\n + \ \"location\": \"query\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": + \"string\"\n },\n \"hl\": {\n \"location\": + \"query\",\n \"description\": \"Return rendered funding amounts + in specified language.\",\n \"type\": \"string\"\n }\n + \ },\n \"parameterOrder\": [\n \"part\"\n ]\n + \ }\n }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": + {\n \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true\n },\n \"externalChannelId\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"request\": {\n \"$ref\": + \"TestItem\"\n },\n \"path\": \"youtube/v3/tests\",\n \"description\": + \"POST method.\",\n \"httpMethod\": \"POST\",\n \"response\": + {\n \"$ref\": \"TestItem\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/tests\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"id\": \"youtube.tests.insert\"\n }\n }\n + \ },\n \"videoAbuseReportReasons\": {\n \"methods\": {\n \"list\": + {\n \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"description\": \"The *part* + parameter specifies the videoCategory resource parts that the API response + will include. Supported values are id and snippet.\"\n },\n \"hl\": + {\n \"type\": \"string\",\n \"default\": \"en-US\",\n + \ \"location\": \"query\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"flatPath\": + \"youtube/v3/videoAbuseReportReasons\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n + \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": + \"VideoAbuseReportReasonListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ]\n }\n }\n },\n \"i18nLanguages\": + {\n \"methods\": {\n \"list\": {\n \"response\": {\n + \ \"$ref\": \"I18nLanguageListResponse\"\n },\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies the i18nLanguage resource properties that + the API response will include. Set the parameter value to snippet.\",\n \"repeated\": + true\n },\n \"hl\": {\n \"type\": \"string\",\n + \ \"default\": \"en_US\",\n \"location\": \"query\"\n + \ }\n },\n \"httpMethod\": \"GET\",\n \"path\": + \"youtube/v3/i18nLanguages\",\n \"description\": \"Retrieves a list + of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.i18nLanguages.list\"\n }\n + \ }\n },\n \"liveChatModerators\": {\n \"methods\": {\n \"delete\": + {\n \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": + \"DELETE\",\n \"description\": \"Deletes a chat moderator.\",\n \"flatPath\": + \"youtube/v3/liveChat/moderators\",\n \"id\": \"youtube.liveChatModerators.delete\",\n + \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n + \ },\n \"list\": {\n \"id\": \"youtube.liveChatModerators.list\",\n + \ \"parameters\": {\n \"maxResults\": {\n \"default\": + \"5\",\n \"maximum\": \"50\",\n \"type\": \"integer\",\n + \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"format\": \"uint32\",\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n + \ \"liveChatId\": {\n \"type\": \"string\",\n \"description\": + \"The id of the live chat for which moderators should be returned.\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"The *part* parameter specifies the liveChatModerator + resource parts that the API response will include. Supported values are id + and snippet.\"\n }\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n + \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"parameterOrder\": [\n \"liveChatId\",\n + \ \"part\"\n ],\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\"\n + \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"parameters\": + {\n \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"required\": true,\n + \ \"repeated\": true\n }\n },\n \"path\": + \"youtube/v3/liveChat/moderators\",\n \"id\": \"youtube.liveChatModerators.insert\",\n + \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"response\": + {\n \"$ref\": \"LiveChatModerator\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n }\n + \ }\n }\n },\n \"liveChatBans\": {\n \"methods\": {\n + \ \"delete\": {\n \"parameters\": {\n \"id\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n },\n \"httpMethod\": + \"DELETE\",\n \"description\": \"Deletes a chat ban.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"path\": + \"youtube/v3/liveChat/bans\",\n \"id\": \"youtube.liveChatBans.delete\",\n + \ \"parameterOrder\": [\n \"id\"\n ]\n },\n + \ \"insert\": {\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"request\": {\n \"$ref\": + \"LiveChatBan\"\n },\n \"path\": \"youtube/v3/liveChat/bans\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"POST\",\n \"response\": {\n \"$ref\": \"LiveChatBan\"\n + \ },\n \"description\": \"Inserts a new resource into this + collection.\",\n \"id\": \"youtube.liveChatBans.insert\",\n \"flatPath\": + \"youtube/v3/liveChat/bans\"\n }\n }\n },\n \"abuseReports\": + {\n \"methods\": {\n \"insert\": {\n \"response\": {\n + \ \"$ref\": \"AbuseReport\"\n },\n \"request\": + {\n \"$ref\": \"AbuseReport\"\n },\n \"flatPath\": + \"youtube/v3/abuseReports\",\n \"id\": \"youtube.abuseReports.insert\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ }\n },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/abuseReports\"\n }\n }\n },\n + \ \"youtube\": {\n \"resources\": {\n \"v3\": {\n \"methods\": + {\n \"updateCommentThreads\": {\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n + \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": + [],\n \"path\": \"youtube/v3/commentThreads\",\n \"response\": + {\n \"$ref\": \"CommentThread\"\n },\n \"description\": + \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": + \"CommentThread\"\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"type\": \"string\"\n + \ }\n }\n }\n }\n }\n + \ }\n },\n \"comments\": {\n \"methods\": {\n \"insert\": + {\n \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"required\": true,\n \"type\": + \"string\",\n \"repeated\": true\n }\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"path\": + \"youtube/v3/comments\",\n \"id\": \"youtube.comments.insert\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": + {\n \"$ref\": \"Comment\"\n },\n \"response\": + {\n \"$ref\": \"Comment\"\n }\n },\n \"list\": + {\n \"id\": \"youtube.comments.list\",\n \"parameters\": + {\n \"id\": {\n \"repeated\": true,\n \"description\": + \"Returns the comments with the given IDs for One Platform.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": + \"string\"\n },\n \"textFormat\": {\n \"enum\": + [\n \"textFormatUnspecified\",\n \"html\",\n + \ \"plainText\"\n ],\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Returns the comments in HTML format. This is the default + value.\",\n \"Returns the comments in plain text format.\"\n + \ ],\n \"type\": \"string\",\n \"default\": + \"html\",\n \"description\": \"The requested text format for + the returned comments.\"\n },\n \"maxResults\": {\n + \ \"type\": \"integer\",\n \"location\": \"query\",\n + \ \"maximum\": \"100\",\n \"minimum\": \"1\",\n \"format\": + \"uint32\",\n \"default\": \"20\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\"\n },\n \"part\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"The *part* parameter specifies a comma-separated + list of one or more comment resource properties that the API response will + include.\",\n \"repeated\": true,\n \"required\": + true\n },\n \"parentId\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Returns replies to the specified comment. Note, currently YouTube features + only one level of replies (ie replies to top level comments). However replies + to replies may be supported in the future.\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/comments\",\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": + \"CommentListResponse\"\n }\n },\n \"markAsSpam\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"Flags the comments with the given IDs as spam in the caller's opinion.\"\n + \ }\n },\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": + \"POST\",\n \"id\": \"youtube.comments.markAsSpam\",\n \"description\": + \"Expresses the caller's opinion that one or more comments should be flagged + as spam.\",\n \"path\": \"youtube/v3/comments/markAsSpam\"\n },\n + \ \"update\": {\n \"description\": \"Updates an existing resource.\",\n + \ \"path\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.update\",\n + \ \"request\": {\n \"$ref\": \"Comment\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"response\": {\n \"$ref\": \"Comment\"\n },\n + \ \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true\n }\n },\n \"httpMethod\": \"PUT\",\n \"flatPath\": + \"youtube/v3/comments\"\n },\n \"setModerationStatus\": {\n + \ \"path\": \"youtube/v3/comments/setModerationStatus\",\n \"httpMethod\": + \"POST\",\n \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n + \ ],\n \"id\": \"youtube.comments.setModerationStatus\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n + \ \"parameters\": {\n \"moderationStatus\": {\n \"type\": + \"string\",\n \"required\": true,\n \"description\": + \"Specifies the requested moderation status. Note, comments can be in statuses, + which are not available through this call. For example, this call does not + allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, + MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"The comment + is available for public display.\",\n \"The comment is awaiting + review by a moderator.\",\n \"\",\n \"The comment + is unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ]\n },\n \"banAuthor\": {\n \"default\": + \"false\",\n \"type\": \"boolean\",\n \"description\": + \"If set to true the author of the comment gets added to the ban list. This + means all future comments of the author will autmomatically be rejected. Only + valid in combination with STATUS_REJECTED.\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"description\": \"Modifies the moderation status + of the comments with the given IDs\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"required\": true\n }\n + \ },\n \"description\": \"Sets the moderation status of one + or more comments.\"\n },\n \"delete\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/comments\",\n \"httpMethod\": + \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"path\": \"youtube/v3/comments\",\n \"parameters\": {\n + \ \"id\": {\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"id\": + \"youtube.comments.delete\",\n \"description\": \"Deletes a resource.\"\n + \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"list\": + {\n \"id\": \"youtube.channels.list\",\n \"parameters\": + {\n \"hl\": {\n \"description\": \"Stands for \\\"host + language\\\". Specifies the localization language of the metadata to be filled + into snippet.localized. The field is filled with the default metadata if there + is no localization in the specified language. The parameter value must be + a language code included in the list returned by the i18nLanguages.list method + (e.g. en_US, es_MX).\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"mine\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Return the ids of channels owned by the authenticated + user.\"\n },\n \"categoryId\": {\n \"location\": + \"query\",\n \"description\": \"Return the channels within the + specified guide category ID.\",\n \"type\": \"string\"\n },\n + \ \"mySubscribers\": {\n \"type\": \"boolean\",\n \"description\": + \"Return the channels subscribed to the authenticated user\",\n \"location\": + \"query\"\n },\n \"managedByMe\": {\n \"type\": + \"boolean\",\n \"description\": \"Return the channels managed + by the authenticated user.\",\n \"location\": \"query\"\n },\n + \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"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.\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true\n },\n \"id\": {\n \"repeated\": true,\n + \ \"description\": \"Return the channels with the specified IDs.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"forUsername\": {\n \"location\": + \"query\",\n \"description\": \"Return the channel associated + with a YouTube username.\",\n \"type\": \"string\"\n },\n + \ \"maxResults\": {\n \"format\": \"uint32\",\n \"minimum\": + \"0\",\n \"default\": \"5\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"type\": \"integer\",\n + \ \"maximum\": \"50\",\n \"location\": \"query\"\n + \ }\n },\n \"description\": \"Retrieves a list + of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": + \"ChannelListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/channels\",\n + \ \"flatPath\": \"youtube/v3/channels\"\n },\n \"update\": + {\n \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/channels\",\n + \ \"description\": \"Updates an existing resource.\",\n \"path\": + \"youtube/v3/channels\",\n \"parameters\": {\n \"part\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"required\": true,\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n }\n },\n \"request\": + {\n \"$ref\": \"Channel\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.channels.update\",\n \"response\": {\n + \ \"$ref\": \"Channel\"\n },\n \"parameterOrder\": + [\n \"part\"\n ]\n }\n }\n },\n \"channelSections\": + {\n \"methods\": {\n \"update\": {\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"request\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"response\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"path\": \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.update\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n }\n },\n \"httpMethod\": \"PUT\"\n + \ },\n \"delete\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes + a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"path\": + \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.delete\",\n + \ \"parameterOrder\": [\n \"id\"\n ]\n },\n + \ \"insert\": {\n \"id\": \"youtube.channelSections.insert\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"request\": {\n \"$ref\": \"ChannelSection\"\n + \ },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"part\": {\n \"repeated\": + true,\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n + \ },\n \"description\": \"Inserts a new resource into this + collection.\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"path\": \"youtube/v3/channelSections\"\n },\n \"list\": + {\n \"id\": \"youtube.channelSections.list\",\n \"path\": + \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": + \"ChannelSectionListResponse\"\n },\n \"httpMethod\": \"GET\",\n + \ \"parameters\": {\n \"hl\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return content in specified language\"\n },\n \"part\": + {\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\",\n \"repeated\": true\n },\n \"mine\": + {\n \"type\": \"boolean\",\n \"description\": \"Return + the ChannelSections owned by the authenticated user.\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n + \ \"repeated\": true\n },\n \"channelId\": + {\n \"description\": \"Return the ChannelSections owned by the + specified channel ID.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n }\n + \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n + \ \"list\": {\n \"path\": \"youtube/v3/i18nRegions\",\n \"parameters\": + {\n \"hl\": {\n \"default\": \"en_US\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"The *part* parameter specifies the i18nRegion + resource properties that the API response will include. Set the parameter + value to snippet.\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/i18nRegions\",\n + \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"id\": \"youtube.i18nRegions.list\"\n + \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": + {\n \"list\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": + \"GET\",\n \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"parameters\": {\n \"type\": {\n \"enum\": + [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or + about to connect) a channel with a store on a merchandising platform in order + to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n + \ \"description\": \"Get a third party link of the given type.\",\n + \ \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"required\": true,\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API response will include. Supported values are linkingToken, status, and + snippet.\"\n },\n \"linkingToken\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Get a third party link with the given linking token.\"\n },\n + \ \"externalChannelId\": {\n \"location\": \"query\",\n + \ \"description\": \"Channel ID to which changes should be applied, + for delegation.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"youtube.thirdPartyLinks.list\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\"\n },\n \"update\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"PUT\",\n \"id\": \"youtube.thirdPartyLinks.update\",\n \"path\": + \"youtube/v3/thirdPartyLinks\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"parameters\": {\n \"externalChannelId\": {\n \"type\": + \"string\",\n \"description\": \"Channel ID to which changes + should be applied, for delegation.\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"description\": \"The + *part* parameter specifies the thirdPartyLink resource parts that the API + request and response will include. Supported values are linkingToken, status, + and snippet.\",\n \"type\": \"string\",\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\"\n + \ }\n },\n \"description\": \"Updates an existing + resource.\"\n },\n \"insert\": {\n \"parameters\": + {\n \"externalChannelId\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Channel + ID to which changes should be applied, for delegation.\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"location\": + \"query\",\n \"description\": \"The *part* parameter specifies + the thirdPartyLink resource parts that the API request and response will include. + Supported values are linkingToken, status, and snippet.\",\n \"required\": + true,\n \"type\": \"string\"\n }\n },\n \"description\": + \"Inserts a new resource into this collection.\",\n \"httpMethod\": + \"POST\",\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n + \ },\n \"id\": \"youtube.thirdPartyLinks.insert\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"request\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n },\n \"delete\": + {\n \"id\": \"youtube.thirdPartyLinks.delete\",\n \"parameterOrder\": + [\n \"linkingToken\",\n \"type\"\n ],\n \"parameters\": + {\n \"part\": {\n \"description\": \"Do not use. Required + for compatibility.\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"type\": \"string\"\n },\n \"type\": + {\n \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"Type of the link to be deleted.\",\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or + about to connect) a channel with a store on a merchandising platform in order + to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n + \ \"location\": \"query\",\n \"required\": true\n + \ },\n \"linkingToken\": {\n \"location\": + \"query\",\n \"description\": \"Delete the partner links with + the given linking token.\",\n \"type\": \"string\",\n \"required\": + true\n },\n \"externalChannelId\": {\n \"type\": + \"string\",\n \"description\": \"Channel ID to which changes + should be applied, for delegation.\",\n \"location\": \"query\"\n + \ }\n },\n \"description\": \"Deletes a resource.\",\n + \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n }\n }\n + \ },\n \"subscriptions\": {\n \"methods\": {\n \"insert\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"path\": + \"youtube/v3/subscriptions\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"request\": {\n \"$ref\": \"Subscription\"\n + \ },\n \"id\": \"youtube.subscriptions.insert\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"httpMethod\": + \"POST\",\n \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": + true\n }\n },\n \"response\": {\n \"$ref\": + \"Subscription\"\n }\n },\n \"list\": {\n \"id\": + \"youtube.subscriptions.list\",\n \"response\": {\n \"$ref\": + \"SubscriptionListResponse\"\n },\n \"httpMethod\": \"GET\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return the subscriptions of the given channel owner.\"\n },\n + \ \"mySubscribers\": {\n \"location\": \"query\",\n + \ \"description\": \"Return the subscribers of the given channel + owner.\",\n \"type\": \"boolean\"\n },\n \"forChannelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return the subscriptions to the subset of + these channels that the authenticated user is subscribed to.\"\n },\n + \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"mine\": {\n \"type\": + \"boolean\",\n \"location\": \"query\",\n \"description\": + \"Flag for returning the subscriptions of the authenticated user.\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"description\": + \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"location\": + \"query\",\n \"repeated\": true\n },\n \"maxResults\": + {\n \"location\": \"query\",\n \"default\": \"5\",\n + \ \"maximum\": \"50\",\n \"format\": \"uint32\",\n + \ \"minimum\": \"0\",\n \"type\": \"integer\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\"\n },\n + \ \"order\": {\n \"default\": \"relevance\",\n \"description\": + \"The order of the returned subscriptions\",\n \"enumDescriptions\": + [\n \"\",\n \"Sort by relevance.\",\n \"Sort + by order of activity.\",\n \"Sort alphabetically.\"\n ],\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n + \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n + \ ]\n },\n \"myRecentSubscribers\": {\n + \ \"type\": \"boolean\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": + true\n }\n },\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/subscriptions\",\n \"flatPath\": + \"youtube/v3/subscriptions\"\n },\n \"delete\": {\n \"parameterOrder\": + [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.subscriptions.delete\",\n \"flatPath\": + \"youtube/v3/subscriptions\",\n \"httpMethod\": \"DELETE\",\n \"description\": + \"Deletes a resource.\",\n \"parameters\": {\n \"id\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n }\n },\n \"path\": + \"youtube/v3/subscriptions\"\n }\n }\n },\n \"liveChatMessages\": + {\n \"methods\": {\n \"insert\": {\n \"id\": \"youtube.liveChatMessages.insert\",\n + \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"path\": \"youtube/v3/liveChat/messages\",\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true\n }\n },\n \"request\": {\n \"$ref\": + \"LiveChatMessage\"\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"description\": \"Inserts a new resource into this + collection.\"\n },\n \"delete\": {\n \"id\": \"youtube.liveChatMessages.delete\",\n + \ \"description\": \"Deletes a chat message.\",\n \"path\": + \"youtube/v3/liveChat/messages\",\n \"parameters\": {\n \"id\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true\n }\n },\n \"httpMethod\": + \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ]\n + \ },\n \"list\": {\n \"response\": {\n \"$ref\": + \"LiveChatMessageListResponse\"\n },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"id\": \"youtube.liveChatMessages.list\",\n \"httpMethod\": + \"GET\",\n \"path\": \"youtube/v3/liveChat/messages\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"liveChatId\",\n \"part\"\n ],\n \"parameters\": + {\n \"hl\": {\n \"type\": \"string\",\n \"description\": + \"Specifies the localization language in which the system messages should + be returned.\",\n \"location\": \"query\"\n },\n \"liveChatId\": + {\n \"description\": \"The id of the live chat for which comments + should be returned.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"profileImageSize\": + {\n \"description\": \"Specifies the size of the profile image + that should be returned for each user.\",\n \"location\": \"query\",\n + \ \"type\": \"integer\",\n \"maximum\": \"720\",\n + \ \"format\": \"uint32\",\n \"minimum\": \"16\"\n + \ },\n \"maxResults\": {\n \"minimum\": + \"200\",\n \"type\": \"integer\",\n \"default\": + \"500\",\n \"maximum\": \"2000\",\n \"format\": + \"uint32\",\n \"location\": \"query\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\"\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"part\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"required\": true,\n \"description\": + \"The *part* parameter specifies the liveChatComment resource parts that the + API response will include. Supported values are id and snippet.\",\n \"repeated\": + true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ]\n }\n }\n },\n \"videos\": {\n \"methods\": + {\n \"getRating\": {\n \"response\": {\n \"$ref\": + \"VideoGetRatingResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.videos.getRating\",\n \"description\": + \"Retrieves the ratings that the authorized user gave to a list of specified + videos.\",\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/videos/getRating\",\n + \ \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n }\n },\n \"path\": \"youtube/v3/videos/getRating\"\n + \ },\n \"insert\": {\n \"parameters\": {\n \"notifySubscribers\": + {\n \"description\": \"Notify the channel subscribers about the + new video. As default, the notification is enabled.\",\n \"default\": + \"true\",\n \"type\": \"boolean\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"required\": + true,\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"stabilize\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"description\": + \"Should stabilize be applied to the upload.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"autoLevels\": {\n \"type\": + \"boolean\",\n \"location\": \"query\",\n \"description\": + \"Should auto-levels be applied to the upload.\"\n }\n },\n + \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"request\": {\n \"$ref\": \"Video\"\n + \ },\n \"response\": {\n \"$ref\": \"Video\"\n + \ },\n \"path\": \"youtube/v3/videos\",\n \"supportsMediaUpload\": + true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.videos.insert\",\n \"description\": \"Inserts + a new resource into this collection.\",\n \"mediaUpload\": {\n \"maxSize\": + \"274877906944\",\n \"protocols\": {\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n + \ },\n \"simple\": {\n \"multipart\": + true,\n \"path\": \"/upload/youtube/v3/videos\"\n }\n + \ },\n \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n + \ ]\n },\n \"flatPath\": \"youtube/v3/videos\"\n + \ },\n \"list\": {\n \"id\": \"youtube.videos.list\",\n + \ \"parameters\": {\n \"maxWidth\": {\n \"maximum\": + \"8192\",\n \"location\": \"query\",\n \"description\": + \"Return the player with maximum height specified in\",\n \"format\": + \"int32\",\n \"type\": \"integer\",\n \"minimum\": + \"72\"\n },\n \"regionCode\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Use a chart that is specific to the specified region\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"maxResults\": + {\n \"minimum\": \"1\",\n \"format\": \"uint32\",\n + \ \"location\": \"query\",\n \"type\": \"integer\",\n + \ \"description\": \"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.\",\n + \ \"default\": \"5\",\n \"maximum\": \"50\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"description\": \"Return videos with the given ids.\",\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true\n },\n \"maxHeight\": + {\n \"maximum\": \"8192\",\n \"format\": \"int32\",\n + \ \"location\": \"query\",\n \"type\": \"integer\",\n + \ \"minimum\": \"72\"\n },\n \"locale\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"chart\": {\n \"enum\": [\n \"chartUnspecified\",\n + \ \"mostPopular\"\n ],\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return the videos that are in the specified chart.\",\n \"enumDescriptions\": + [\n \"\",\n \"Return the most popular videos + for the specified content region and video category.\"\n ]\n + \ },\n \"pageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"videoCategoryId\": {\n \"description\": \"Use chart + that is specific to the specified video category\",\n \"default\": + \"0\",\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"hl\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Stands + for \\\"host language\\\". Specifies the localization language of the metadata + to be filled into snippet.localized. The field is filled with the default + metadata if there is no localization in the specified language. The parameter + value must be a language code included in the list returned by the i18nLanguages.list + method (e.g. en_US, es_MX).\"\n },\n \"myRating\": {\n + \ \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"description\": + \"Return videos liked/disliked by the authenticated user. Does not support + RateType.RATED_TYPE_NONE.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The entity is liked.\",\n \"The entity is + disliked.\"\n ]\n }\n },\n \"path\": + \"youtube/v3/videos\",\n \"httpMethod\": \"GET\",\n \"response\": + {\n \"$ref\": \"VideoListResponse\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"flatPath\": \"youtube/v3/videos\",\n \"parameterOrder\": + [\n \"part\"\n ]\n },\n \"delete\": {\n + \ \"description\": \"Deletes a resource.\",\n \"parameters\": + {\n \"id\": {\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"path\": + \"youtube/v3/videos\",\n \"httpMethod\": \"DELETE\",\n \"id\": + \"youtube.videos.delete\",\n \"parameterOrder\": [\n \"id\"\n + \ ]\n },\n \"rate\": {\n \"path\": \"youtube/v3/videos/rate\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"rating\": {\n \"type\": \"string\",\n + \ \"required\": true,\n \"location\": \"query\",\n + \ \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ]\n }\n },\n \"description\": + \"Adds a like or dislike rating to a video or removes a rating from a video.\",\n + \ \"parameterOrder\": [\n \"id\",\n \"rating\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.videos.rate\",\n + \ \"flatPath\": \"youtube/v3/videos/rate\"\n },\n \"reportAbuse\": + {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.videos.reportAbuse\",\n \"request\": + {\n \"$ref\": \"VideoAbuseReport\"\n },\n \"flatPath\": + \"youtube/v3/videos/reportAbuse\",\n \"parameterOrder\": [],\n \"description\": + \"Report abuse for a video.\",\n \"httpMethod\": \"POST\",\n \"path\": + \"youtube/v3/videos/reportAbuse\"\n },\n \"update\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"description\": + \"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.\",\n + \ \"type\": \"string\",\n \"required\": true\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"id\": \"youtube.videos.update\",\n \"path\": \"youtube/v3/videos\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"Video\"\n },\n \"description\": + \"Updates an existing resource.\",\n \"httpMethod\": \"PUT\",\n \"flatPath\": + \"youtube/v3/videos\",\n \"request\": {\n \"$ref\": \"Video\"\n + \ }\n }\n }\n },\n \"playlists\": {\n \"methods\": + {\n \"list\": {\n \"id\": \"youtube.playlists.list\",\n \"path\": + \"youtube/v3/playlists\",\n \"parameters\": {\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return the playlists owned by the specified + channel ID.\"\n },\n \"onBehalfOfContentOwner\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n },\n \"mine\": {\n \"type\": + \"boolean\",\n \"location\": \"query\",\n \"description\": + \"Return the playlists owned by the authenticated user.\"\n },\n + \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"maxResults\": + {\n \"format\": \"uint32\",\n \"minimum\": \"0\",\n + \ \"location\": \"query\",\n \"maximum\": \"50\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"type\": + \"integer\",\n \"default\": \"5\"\n },\n \"id\": + {\n \"description\": \"Return the playlists with the given IDs + for Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"repeated\": true\n },\n \"hl\": + {\n \"type\": \"string\",\n \"description\": \"Return + content in specified language\",\n \"location\": \"query\"\n + \ }\n },\n \"flatPath\": \"youtube/v3/playlists\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"GET\"\n },\n \"update\": + {\n \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"repeated\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Updates an existing resource.\",\n \"response\": + {\n \"$ref\": \"Playlist\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"PUT\",\n \"flatPath\": \"youtube/v3/playlists\",\n \"request\": + {\n \"$ref\": \"Playlist\"\n },\n \"id\": \"youtube.playlists.update\",\n + \ \"path\": \"youtube/v3/playlists\"\n },\n \"delete\": + {\n \"description\": \"Deletes a resource.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.playlists.delete\",\n \"httpMethod\": + \"DELETE\",\n \"flatPath\": \"youtube/v3/playlists\",\n \"parameters\": + {\n \"id\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n + \ },\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"path\": \"youtube/v3/playlists\"\n },\n \"insert\": + {\n \"description\": \"Inserts a new resource into this collection.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/playlists\",\n \"path\": + \"youtube/v3/playlists\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n + \ \"repeated\": true,\n \"location\": \"query\",\n + \ \"required\": true\n }\n },\n \"response\": + {\n \"$ref\": \"Playlist\"\n },\n \"request\": + {\n \"$ref\": \"Playlist\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n + \ \"id\": \"youtube.playlists.insert\"\n }\n }\n },\n + \ \"captions\": {\n \"methods\": {\n \"download\": {\n \"parameterOrder\": + [\n \"id\"\n ],\n \"path\": \"youtube/v3/captions/{id}\",\n + \ \"description\": \"Downloads a caption track.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"useMediaDownloadService\": true,\n \"flatPath\": + \"youtube/v3/captions/{id}\",\n \"parameters\": {\n \"id\": + {\n \"description\": \"The ID of the caption track to download, + required for One Platform.\",\n \"location\": \"path\",\n \"required\": + true,\n \"type\": \"string\"\n },\n \"tlang\": + {\n \"description\": \"tlang is the language code; machine translate + the captions into this language.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"tfmt\": {\n \"location\": + \"query\",\n \"description\": \"Convert the captions into this + format. Supported options are sbv, srt, and vtt.\",\n \"type\": + \"string\"\n },\n \"onBehalfOf\": {\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\",\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"supportsMediaDownload\": true,\n + \ \"id\": \"youtube.captions.download\",\n \"httpMethod\": + \"GET\"\n },\n \"list\": {\n \"path\": \"youtube/v3/captions\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": + \"CaptionListResponse\"\n },\n \"parameters\": {\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"Returns + the captions with the given IDs for Stubby or Apiary.\",\n \"repeated\": + true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOf\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is on behalf of.\"\n + \ },\n \"videoId\": {\n \"description\": + \"Returns the captions for the specified video.\",\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ },\n \"part\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n + \ \"location\": \"query\",\n \"required\": true,\n + \ \"repeated\": true\n }\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": + \"youtube/v3/captions\",\n \"parameterOrder\": [\n \"part\",\n + \ \"videoId\"\n ],\n \"id\": \"youtube.captions.list\"\n + \ },\n \"insert\": {\n \"mediaUpload\": {\n \"accept\": + [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n + \ \"multipart\": true\n },\n \"simple\": + {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n + \ }\n },\n \"maxSize\": \"104857600\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"response\": {\n \"$ref\": \"Caption\"\n },\n + \ \"httpMethod\": \"POST\",\n \"supportsMediaUpload\": true,\n + \ \"path\": \"youtube/v3/captions\",\n \"parameters\": {\n + \ \"part\": {\n \"required\": true,\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies the caption resource parts that the API response + will include. Set the parameter value to snippet.\",\n \"location\": + \"query\"\n },\n \"onBehalfOf\": {\n \"type\": + \"string\",\n \"description\": \"ID of the Google+ Page for the + channel that the request is be on behalf of\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"sync\": + {\n \"description\": \"Extra parameter to allow automatically + syncing the uploaded caption/transcript with the audio.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n }\n },\n + \ \"id\": \"youtube.captions.insert\",\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"request\": {\n \"$ref\": \"Caption\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ },\n \"delete\": {\n \"path\": \"youtube/v3/captions\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": + \"youtube/v3/captions\",\n \"httpMethod\": \"DELETE\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.captions.delete\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOf\": + {\n \"description\": \"ID of the Google+ Page for the channel + that the request is be on behalf of\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"description\": + \"Deletes a resource.\"\n },\n \"update\": {\n \"flatPath\": + \"youtube/v3/captions\",\n \"httpMethod\": \"PUT\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"Caption\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n + \ \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOf\": {\n \"location\": + \"query\",\n \"description\": \"ID of the Google+ Page for the + channel that the request is on behalf of.\",\n \"type\": \"string\"\n + \ },\n \"sync\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Extra parameter to allow automatically syncing + the uploaded caption/transcript with the audio.\",\n \"location\": + \"query\"\n }\n },\n \"id\": \"youtube.captions.update\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": + {\n \"$ref\": \"Caption\"\n },\n \"supportsMediaUpload\": + true,\n \"path\": \"youtube/v3/captions\",\n \"mediaUpload\": + {\n \"maxSize\": \"104857600\",\n \"accept\": [\n \"text/xml\",\n + \ \"application/octet-stream\",\n \"*/*\"\n ],\n + \ \"protocols\": {\n \"resumable\": {\n \"path\": + \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": + true\n },\n \"simple\": {\n \"multipart\": + true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n + \ }\n },\n \"description\": \"Updates an existing + resource.\"\n }\n }\n },\n \"thumbnails\": {\n \"methods\": + {\n \"set\": {\n \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n + \ },\n \"mediaUpload\": {\n \"protocols\": {\n + \ \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n + \ \"multipart\": true\n },\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n + \ \"multipart\": true\n }\n },\n \"accept\": + [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n + \ ],\n \"maxSize\": \"2097152\"\n },\n \"httpMethod\": + \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"videoId\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Returns the Thumbnail with the given video + IDs for Stubby or Apiary.\"\n }\n },\n \"parameterOrder\": + [\n \"videoId\"\n ],\n \"path\": \"youtube/v3/thumbnails/set\",\n + \ \"description\": \"As this is not an insert in a strict sense (it + supports uploading/setting of a thumbnail for multiple videos, which doesn't + result in creation of a single resource), I use a custom verb here.\",\n \"flatPath\": + \"youtube/v3/thumbnails/set\",\n \"supportsMediaUpload\": true,\n + \ \"id\": \"youtube.thumbnails.set\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": + {\n \"insertCuepoint\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n + \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"response\": + {\n \"$ref\": \"Cuepoint\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [],\n \"request\": {\n \"$ref\": + \"Cuepoint\"\n },\n \"httpMethod\": \"POST\",\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"description\": \"Broadcast to insert ads to, or equivalently + `external_video_id` for internal use.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"part\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"location\": \"query\"\n + \ }\n },\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n + \ \"description\": \"Insert cuepoints in a broadcast\"\n },\n + \ \"transition\": {\n \"parameterOrder\": [\n \"broadcastStatus\",\n + \ \"id\",\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": + \"youtube/v3/liveBroadcasts/transition\",\n \"httpMethod\": \"POST\",\n + \ \"description\": \"Transition a broadcast to a given status.\",\n + \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"id\": + \"youtube.liveBroadcasts.transition\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"required\": true\n + \ },\n \"id\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"required\": true,\n \"description\": + \"Broadcast to transition.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"broadcastStatus\": {\n \"enumDescriptions\": + [\n \"\",\n \"Start testing the broadcast. YouTube + transmits video to the broadcast's monitor stream. Note that you can only + transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream + property is set to true.\\\",\",\n \"Return only persistent + broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting + video.\"\n ],\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"The status to which the broadcast is going to transition.\",\n \"enum\": + [\n \"statusUnspecified\",\n \"testing\",\n + \ \"live\",\n \"complete\"\n ]\n + \ }\n }\n },\n \"insert\": {\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"request\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": + \"Inserts a new stream for the authenticated user.\",\n \"httpMethod\": + \"POST\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"required\": + true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n }\n },\n \"list\": + {\n \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n + \ \"description\": \"Retrieve the list of broadcasts associated with + the given channel.\",\n \"id\": \"youtube.liveBroadcasts.list\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n + \ },\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": + {\n \"pageToken\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"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, status + and statistics.\"\n },\n \"broadcastStatus\": {\n \"enum\": + [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n + \ \"active\",\n \"upcoming\",\n \"completed\"\n + \ ],\n \"location\": \"query\",\n \"description\": + \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all broadcasts.\",\n \"Return + current live broadcasts.\",\n \"Return broadcasts that have + not yet started.\",\n \"Return broadcasts that have already + ended.\"\n ],\n \"type\": \"string\"\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"id\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return broadcasts with the given ids from + Stubby or Apiary.\"\n },\n \"mine\": {\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"maxResults\": + {\n \"location\": \"query\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"type\": \"integer\",\n + \ \"format\": \"uint32\",\n \"default\": \"5\",\n + \ \"minimum\": \"0\",\n \"maximum\": \"50\"\n },\n + \ \"broadcastType\": {\n \"type\": \"string\",\n \"enum\": + [\n \"broadcastTypeFilterUnspecified\",\n \"all\",\n + \ \"event\",\n \"persistent\"\n ],\n + \ \"location\": \"query\",\n \"default\": \"event\",\n + \ \"description\": \"Return only broadcasts with the selected + type.\",\n \"enumDescriptions\": [\n \"\",\n \"Return + all broadcasts.\",\n \"Return only scheduled event broadcasts.\",\n + \ \"Return only persistent broadcasts.\"\n ]\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ]\n },\n + \ \"update\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"PUT\",\n \"flatPath\": + \"youtube/v3/liveBroadcasts\",\n \"description\": \"Updates an existing + broadcast for the authenticated user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.liveBroadcasts.update\",\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"description\": + \"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.\",\n \"required\": + true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n + \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"path\": \"youtube/v3/liveBroadcasts\"\n },\n \"bind\": + {\n \"parameterOrder\": [\n \"id\",\n \"part\"\n + \ ],\n \"id\": \"youtube.liveBroadcasts.bind\",\n \"path\": + \"youtube/v3/liveBroadcasts/bind\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"streamId\": {\n \"location\": + \"query\",\n \"description\": \"Stream to bind, if not set unbind + the current one.\",\n \"type\": \"string\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true\n },\n \"id\": + {\n \"location\": \"query\",\n \"description\": + \"Broadcast to bind to the stream\",\n \"type\": \"string\",\n + \ \"required\": true\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"description\": \"Bind a broadcast to a stream.\",\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"httpMethod\": + \"POST\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n + \ }\n },\n \"delete\": {\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.liveBroadcasts.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n + \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": + \"Delete a given broadcast.\",\n \"parameters\": {\n \"id\": + {\n \"description\": \"Broadcast to delete.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"DELETE\"\n }\n }\n },\n \"membershipsLevels\": + {\n \"methods\": {\n \"list\": {\n \"response\": {\n + \ \"$ref\": \"MembershipsLevelListResponse\"\n },\n \"httpMethod\": + \"GET\",\n \"path\": \"youtube/v3/membershipsLevels\",\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the membershipsLevel resource parts that + the API response will include. Supported values are id and snippet.\",\n \"repeated\": + true\n }\n },\n \"id\": \"youtube.membershipsLevels.list\",\n + \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"description\": \"Retrieves a list of all pricing + levels offered by a creator to the fans.\"\n }\n }\n },\n \"members\": + {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves + a list of members that match the request criteria for a channel.\",\n \"id\": + \"youtube.members.list\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"MemberListResponse\"\n + \ },\n \"httpMethod\": \"GET\",\n \"flatPath\": + \"youtube/v3/members\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"parameters\": {\n \"mode\": {\n \"description\": + \"Parameter that specifies which channel members to return.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"enum\": + [\n \"listMembersModeUnknown\",\n \"updates\",\n + \ \"all_current\"\n ],\n \"default\": + \"all_current\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return only members that joined after the first call with + this mode was made.\",\n \"Return all current members, from + newest to oldest.\"\n ]\n },\n \"hasAccessToLevel\": + {\n \"type\": \"string\",\n \"description\": \"Filter + members in the results set to the ones that have access to a level.\",\n \"location\": + \"query\"\n },\n \"filterByMemberChannelId\": {\n \"location\": + \"query\",\n \"description\": \"Comma separated list of channel + IDs. Only data about members that are part of this list will be included in + the response.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"description\": \"The *part* parameter specifies the member + resource parts that the API response will include. Set the parameter value + to snippet.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n + \ \"maxResults\": {\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"default\": \"5\",\n \"format\": + \"uint32\",\n \"maximum\": \"1000\",\n \"location\": + \"query\",\n \"minimum\": \"0\",\n \"type\": \"integer\"\n + \ }\n },\n \"path\": \"youtube/v3/members\"\n + \ }\n }\n }\n },\n \"fullyEncodeReservedExpansion\": true,\n + \ \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"revision\": + \"20230308\",\n \"canonicalName\": \"YouTube\",\n \"kind\": \"discovery#restDescription\",\n + \ \"description\": \"The YouTube Data API v3 is an API that provides access + to YouTube data, such as videos, playlists, and channels.\",\n \"name\": + \"youtube\",\n \"servicePath\": \"\",\n \"ownerDomain\": \"google.com\",\n + \ \"discoveryVersion\": \"v1\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n + \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n + \ },\n \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtubepartner\": + {\n \"description\": \"View and manage your assets and associated + content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": + {\n \"description\": \"See a list of your current active channel + members, their current level, and when they became a member\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": + \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube\": + {\n \"description\": \"Manage your YouTube account\"\n },\n + \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": + {\n \"description\": \"View private information of your YouTube channel + relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": + {\n \"description\": \"See, edit, and permanently delete your YouTube + videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": + {\n \"description\": \"Manage your YouTube videos\"\n }\n + \ }\n }\n },\n \"schemas\": {\n \"I18nLanguageListResponse\": + {\n \"type\": \"object\",\n \"id\": \"I18nLanguageListResponse\",\n + \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatModeratorListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatModeratorListResponse\"\n },\n \"ChannelStatistics\": - {\n \"properties\": {\n \"hiddenSubscriberCount\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the number of subscribers - is shown for this user.\"\n },\n \"viewCount\": {\n \"description\": - \"The number of times the channel has been viewed.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"videoCount\": - {\n \"description\": \"The number of videos uploaded to the channel.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"subscriberCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of subscribers that the channel has.\",\n \"format\": - \"uint64\"\n },\n \"commentCount\": {\n \"description\": - \"The number of comments for the channel.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n }\n },\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\",\n \"id\": \"ChannelStatistics\",\n \"type\": \"object\"\n - \ },\n \"PlaylistSnippet\": {\n \"properties\": {\n \"localized\": - {\n \"description\": \"Localized title and description, read-only.\",\n - \ \"$ref\": \"PlaylistLocalization\"\n },\n \"description\": - {\n \"description\": \"The playlist's description.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the playlist's default - title and description.\"\n },\n \"thumbnailVideoId\": {\n \"type\": - \"string\",\n \"description\": \"Note: if the playlist has a custom - thumbnail, this field will not be populated. The video id selected by the - user that will be used as the thumbnail of this playlist. This field defaults - to the first publicly viewable video in the playlist, if: 1. The user has - never selected a video to be the thumbnail of the playlist. 2. The user selects - a video to be the thumbnail, and then removes that video from the playlist. - 3. The user selects a non-owned video to be the thumbnail, but that video - becomes private, or gets deleted.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The playlist's title.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"channelTitle\": {\n \"description\": \"The channel title - of the channel that the video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist. 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.\"\n },\n \"tags\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"Keyword tags associated with the playlist.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the playlist.\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the playlist was created.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"PlaylistSnippet\",\n - \ \"description\": \"Basic details about a playlist, including title, - description and thumbnails.\",\n \"type\": \"object\"\n },\n \"LocalizedProperty\": - {\n \"type\": \"object\",\n \"id\": \"LocalizedProperty\",\n \"properties\": - {\n \"localized\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LocalizedString\"\n }\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the default property.\",\n - \ \"$ref\": \"LanguageTag\"\n },\n \"default\": {\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"properties\": - {\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label belonging to this abuse report reason.\"\n },\n - \ \"secondaryReasons\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"description\": \"The secondary reasons associated with this reason, - if any are available. (There might be 0 or more.)\"\n }\n },\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\",\n \"type\": \"object\"\n },\n \"Video\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"statistics\": - {\n \"description\": \"The statistics object contains statistics - about the video.\",\n \"$ref\": \"VideoStatistics\"\n },\n - \ \"topicDetails\": {\n \"description\": \"The topicDetails - object encapsulates information about Freebase topics associated with the - video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"suggestions\": - {\n \"$ref\": \"VideoSuggestions\",\n \"description\": \"The - suggestions object encapsulates suggestions that identify opportunities to - improve the video quality or the metadata for the uploaded video. This data - can only be retrieved by the video owner.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"default\": \"youtube#video\"\n },\n \"recordingDetails\": - {\n \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\",\n \"$ref\": - \"VideoRecordingDetails\"\n },\n \"processingDetails\": {\n - \ \"$ref\": \"VideoProcessingDetails\",\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\"\n - \ },\n \"projectDetails\": {\n \"description\": \"The - projectDetails object contains information about the project specific video - metadata. b/157517979: This part was never populated after it was added. However, - it sees non-zero traffic because there is generated client code in the wild - that refers to it [1]. We keep this field and do NOT remove it because otherwise - V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"monetizationDetails\": - {\n \"$ref\": \"VideoMonetizationDetails\",\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\"\n },\n \"ageGating\": {\n \"description\": - \"Age restriction details related to a video. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoAgeGating\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"player\": {\n \"$ref\": - \"VideoPlayer\",\n \"description\": \"The player object contains - information that you would use to play the video in an embedded player.\"\n - \ },\n \"liveStreamingDetails\": {\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n - \ },\n \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video, such as its title, description, and category.\"\n },\n \"fileDetails\": - {\n \"$ref\": \"VideoFileDetails\",\n \"description\": \"The - fileDetails object encapsulates information about the video file that was - uploaded to YouTube, including the file's resolution, duration, audio and - video codecs, stream bitrates, and more. This data can only be retrieved by - the video owner.\"\n },\n \"localizations\": {\n \"description\": - \"The localizations object contains localized versions of the basic details - about the video, such as its title and description.\",\n \"additionalProperties\": - {\n \"$ref\": \"VideoLocalization\"\n },\n \"type\": - \"object\"\n },\n \"status\": {\n \"$ref\": \"VideoStatus\",\n - \ \"description\": \"The status object contains information about - the video's uploading, processing, and privacy statuses.\"\n },\n \"id\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A *video* resource represents - a YouTube video.\",\n \"id\": \"Video\"\n },\n \"ChannelTopicDetails\": - {\n \"type\": \"object\",\n \"description\": \"Freebase topic information - related to the channel.\",\n \"properties\": {\n \"topicIds\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Freebase - topic IDs associated with the channel. You can retrieve information about - each topic using the Freebase Topic API.\"\n },\n \"topicCategories\": - {\n \"description\": \"A list of Wikipedia URLs that describe the - channel's content.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"id\": - \"ChannelTopicDetails\"\n },\n \"ActivityContentDetailsBulletin\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with a - bulletin post. @mutable youtube.activities.insert\"\n }\n },\n - \ \"id\": \"ActivityContentDetailsBulletin\",\n \"description\": - \"Details about a channel bulletin post.\"\n },\n \"Entity\": {\n \"type\": - \"object\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\"\n },\n \"typeId\": {\n \"type\": \"string\"\n - \ },\n \"url\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"Entity\"\n },\n \"ChannelSectionTargeting\": - {\n \"properties\": {\n \"languages\": {\n \"type\": - \"array\",\n \"description\": \"The language the channel section - is targeting.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n },\n \"regions\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"The region the channel section is targeting.\"\n },\n \"countries\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The country the channel - section is targeting.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"ChannelSection targeting setting.\",\n \"id\": - \"ChannelSectionTargeting\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"type\": \"object\",\n \"properties\": {\n \"reason\": - {\n \"description\": \"The short-form reason for this issue.\",\n - \ \"type\": \"string\"\n },\n \"severity\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"How severe this issue is to the stream.\",\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"type\": \"string\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n - \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n - \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n - \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n - \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n - \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The kind of error happening.\"\n },\n \"description\": {\n - \ \"description\": \"The long-form description of the issue and how - to resolve it.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveStreamConfigurationIssue\"\n },\n \"CaptionListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"description\": \"A list of captions that match the request criteria.\",\n - \ \"items\": {\n \"$ref\": \"Caption\"\n },\n - \ \"type\": \"array\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#captionListResponse\"\n - \ }\n },\n \"id\": \"CaptionListResponse\"\n },\n \"I18nLanguage\": - {\n \"type\": \"object\",\n \"description\": \"An *i18nLanguage* - resource identifies a UI language currently supported by YouTube.\",\n \"id\": - \"I18nLanguage\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"I18nLanguageSnippet\",\n \"description\": \"The snippet object - contains basic details about the i18n language, such as language code and - human-readable name.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n language.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nLanguage\"\n - \ }\n }\n },\n \"Caption\": {\n \"id\": \"Caption\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the caption track.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#caption\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\"\n - \ }\n },\n \"description\": \"A *caption* resource represents - a YouTube caption track. A caption track is associated with exactly one YouTube - video.\",\n \"type\": \"object\"\n },\n \"AbuseReport\": {\n \"properties\": - {\n \"subject\": {\n \"$ref\": \"Entity\"\n },\n \"relatedEntities\": - {\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n - \ \"type\": \"array\"\n },\n \"description\": {\n \"type\": - \"string\"\n },\n \"abuseTypes\": {\n \"items\": {\n - \ \"$ref\": \"AbuseType\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"AbuseReport\",\n \"type\": \"object\"\n - \ },\n \"CommentThreadListResponse\": {\n \"id\": \"CommentThreadListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"description\": - \"A list of comment threads that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"CommentThread\"\n },\n \"type\": - \"array\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"default\": \"youtube#commentThreadListResponse\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"TestItemTestItemSnippet\": - {\n \"id\": \"TestItemTestItemSnippet\",\n \"properties\": {},\n - \ \"type\": \"object\"\n },\n \"GeoPoint\": {\n \"properties\": - {\n \"altitude\": {\n \"format\": \"double\",\n \"type\": - \"number\",\n \"description\": \"Altitude above the reference ellipsoid, - in meters.\"\n },\n \"latitude\": {\n \"type\": \"number\",\n - \ \"description\": \"Latitude in degrees.\",\n \"format\": - \"double\"\n },\n \"longitude\": {\n \"type\": \"number\",\n - \ \"format\": \"double\",\n \"description\": \"Longitude - in degrees.\"\n }\n },\n \"id\": \"GeoPoint\",\n \"description\": - \"Geographical coordinates of a point, in WGS84.\",\n \"type\": \"object\"\n - \ },\n \"LiveChatSuperStickerDetails\": {\n \"properties\": {\n - \ \"superStickerMetadata\": {\n \"$ref\": \"SuperStickerMetadata\",\n - \ \"description\": \"Information about the Super Sticker.\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n },\n \"tier\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n },\n \"amountDisplayString\": {\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The amount purchased by the user, - in micros (1,750,000 micros = 1.75).\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatSuperStickerDetails\"\n },\n \"PlaylistContentDetails\": - {\n \"properties\": {\n \"itemCount\": {\n \"type\": - \"integer\",\n \"description\": \"The number of videos in the playlist.\",\n - \ \"format\": \"uint32\"\n }\n },\n \"id\": \"PlaylistContentDetails\",\n - \ \"type\": \"object\"\n },\n \"LiveStream\": {\n \"description\": - \"A live stream describes a live ingestion point.\",\n \"type\": \"object\",\n - \ \"id\": \"LiveStream\",\n \"properties\": {\n \"cdn\": {\n - \ \"$ref\": \"CdnSettings\",\n \"description\": \"The cdn - object defines the live stream's content delivery network (CDN) settings. - These settings provide details about the manner in which you stream your content - to YouTube.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStream\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about live stream's status.\",\n \"$ref\": - \"LiveStreamStatus\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the stream.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveStreamSnippet\",\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\"\n },\n \"etag\": {\n \"description\": + \"youtube#i18nLanguageListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"description\": \"A list of + supported i18n languages. In this map, the i18n language ID is the map key, + and its value is the corresponding i18nLanguage resource.\",\n \"items\": + {\n \"$ref\": \"I18nLanguage\"\n }\n }\n }\n + \ },\n \"VideoFileDetails\": {\n \"properties\": {\n \"container\": + {\n \"type\": \"string\",\n \"description\": \"The uploaded + video file's container format.\"\n },\n \"audioStreams\": {\n + \ \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n + \ },\n \"description\": \"A list of audio streams contained + in the uploaded video file. Each item in the list contains detailed metadata + about an audio stream.\",\n \"type\": \"array\"\n },\n \"durationMs\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The length of the uploaded video in milliseconds.\"\n },\n \"fileSize\": + {\n \"description\": \"The uploaded file's size in bytes. This field + is present whether a video file or another type of file was uploaded.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n + \ \"fileType\": {\n \"description\": \"The uploaded file's + type as detected by YouTube's video processing engine. Currently, YouTube + only processes video files, but this field is present whether a video file + or another type of file was uploaded.\",\n \"enum\": [\n \"video\",\n + \ \"audio\",\n \"image\",\n \"archive\",\n + \ \"document\",\n \"project\",\n \"other\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio + only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG + image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document + or text file (e.g., MS Word document).\",\n \"Movie project file + (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video + file type.\"\n ]\n },\n \"videoStreams\": {\n \"items\": + {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n },\n \"type\": + \"array\",\n \"description\": \"A list of video streams contained + in the uploaded video file. Each item in the list contains detailed metadata + about a video stream.\"\n },\n \"creationTime\": {\n \"description\": + \"The date and time when the uploaded video file was created. The value is + specified in ISO 8601 format. Currently, the following ISO 8601 formats are + supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time + with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n + \ },\n \"fileName\": {\n \"type\": \"string\",\n \"description\": + \"The uploaded file's name. This field is present whether a video file or + another type of file was uploaded.\"\n },\n \"bitrateBps\": + {\n \"description\": \"The uploaded video file's combined (video + and audio) bitrate in bits per second.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"VideoFileDetails\",\n \"description\": \"Describes original + video file properties, including technical details about audio and video streams, + but also metadata information like content length, digitization time, or geotagging + information.\"\n },\n \"SearchResult\": {\n \"description\": \"A + search result contains information about a YouTube video, channel, or playlist + that matches the search parameters specified in an API request. While a search + result points to a uniquely identifiable resource, like a video, it does not + have its own persistent data.\",\n \"type\": \"object\",\n \"properties\": + {\n \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The id object contains information that can be used to uniquely identify + the resource that matches the search request.\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#searchResult\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#searchResult\\\".\"\n },\n \"snippet\": + {\n \"$ref\": \"SearchResultSnippet\",\n \"description\": + \"The snippet object contains basic details about a search result, such as + its title or description. For example, if the search result is a video, then + the title will be the video's title and the description will be the video's + description.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"SearchResult\"\n },\n \"PlaylistPlayer\": {\n \"id\": + \"PlaylistPlayer\",\n \"properties\": {\n \"embedHtml\": {\n \"description\": + \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"Subscription\": {\n \"type\": \"object\",\n \"description\": + \"A *subscription* resource contains information about a YouTube user subscription. + A subscription notifies a user when new videos are added to a channel or when + another user takes one of several actions on YouTube, such as uploading a + video, rating a video, or commenting on a video.\",\n \"id\": \"Subscription\",\n + \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the subscription.\"\n },\n \"subscriberSnippet\": {\n \"description\": + \"The subscriberSnippet object contains basic details about the subscriber.\",\n + \ \"$ref\": \"SubscriptionSubscriberSnippet\"\n },\n \"kind\": + {\n \"default\": \"youtube#subscription\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the subscription, including its title and the channel + that the user subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n + \ },\n \"contentDetails\": {\n \"$ref\": \"SubscriptionContentDetails\",\n + \ \"description\": \"The contentDetails object contains basic statistics + about the subscription.\"\n }\n }\n },\n \"VideoAbuseReportReason\": + {\n \"properties\": {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n - \ \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\"\n }\n - \ }\n },\n \"Member\": {\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#member\",\n + \ \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID of this abuse report reason.\"\n },\n \"kind\": {\n + \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReason\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#member\\\".\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n + the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n + \ \"description\": \"The `snippet` object contains basic details about + the abuse report reason.\"\n }\n },\n \"id\": \"VideoAbuseReportReason\",\n + \ \"description\": \"A `__videoAbuseReportReason__` resource identifies + a reason that a video could be reported as abusive. Video abuse report reasons + are used with `video.ReportAbuse`.\",\n \"type\": \"object\"\n },\n + \ \"VideoCategory\": {\n \"type\": \"object\",\n \"properties\": + {\n \"kind\": {\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#videoCategory\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the video category, including its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the video category.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"VideoCategory\",\n \"description\": + \"A *videoCategory* resource identifies a category that has been or could + be associated with uploaded videos.\"\n },\n \"I18nLanguage\": {\n \"properties\": + {\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n \ \"description\": \"The snippet object contains basic details about - the member.\"\n }\n },\n \"id\": \"Member\",\n \"type\": - \"object\",\n \"description\": \"A *member* resource represents a member - for a YouTube channel. A member provides recurring monetary support to a creator - and receives special benefits.\"\n },\n \"CommentThreadReplies\": {\n - \ \"description\": \"Comments written in (direct or indirect) reply to - the top level comment.\",\n \"type\": \"object\",\n \"id\": \"CommentThreadReplies\",\n - \ \"properties\": {\n \"comments\": {\n \"type\": \"array\",\n - \ \"description\": \"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.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n }\n }\n }\n },\n - \ \"LiveStreamListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of live streams that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n - \ }\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveStreamListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveStreamListResponse\"\n - \ },\n \"VideoAbuseReport\": {\n \"properties\": {\n \"language\": - {\n \"type\": \"string\",\n \"description\": \"The language - that the content was viewed in.\"\n },\n \"reasonId\": {\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\",\n \"type\": \"string\"\n },\n - \ \"comments\": {\n \"description\": \"Additional comments - regarding the abuse report.\",\n \"type\": \"string\"\n },\n - \ \"secondaryReasonId\": {\n \"type\": \"string\",\n \"description\": - \"The specific, or secondary, reason that this content is abusive (if available). - The value is an abuse report reason ID that is a valid secondary reason for - the primary reason.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video.\"\n }\n },\n \"id\": \"VideoAbuseReport\",\n - \ \"type\": \"object\"\n },\n \"VideoTopicDetails\": {\n \"description\": - \"Freebase topic information related to the video.\",\n \"properties\": - {\n \"topicIds\": {\n \"type\": \"array\",\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n },\n \"relevantTopicIds\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"Similar to topic_id, except that these topics - are merely relevant to the video. These are topics that may be mentioned in, - or appear in the video. You can retrieve information about each topic using - Freebase Topic API.\"\n },\n \"topicCategories\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\",\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoTopicDetails\"\n },\n \"MonitorStreamInfo\": - {\n \"description\": \"Settings and Info of the monitor stream\",\n \"properties\": - {\n \"embedHtml\": {\n \"description\": \"HTML code that embeds - a player that plays the monitor stream.\",\n \"type\": \"string\"\n - \ },\n \"enableMonitorStream\": {\n \"description\": - \"This value determines whether the monitor stream is enabled for the broadcast. - If the monitor stream is enabled, then YouTube will broadcast the event content - on a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"boolean\"\n },\n - \ \"broadcastStreamDelayMs\": {\n \"type\": \"integer\",\n - \ \"description\": \"If you have set the enableMonitorStream property - to true, then this property determines the length of the live broadcast delay.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"format\": \"uint32\"\n }\n - \ },\n \"id\": \"MonitorStreamInfo\",\n \"type\": \"object\"\n - \ },\n \"PlaylistListResponse\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistListResponse\",\n \"properties\": {\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"default\": \"youtube#playlistListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of playlists that match the request criteria\",\n \"items\": - {\n \"$ref\": \"Playlist\"\n }\n }\n }\n },\n - \ \"ContentRating\": {\n \"id\": \"ContentRating\",\n \"properties\": - {\n \"mpaaRating\": {\n \"description\": \"The video's Motion - Picture Association of America (MPAA) rating.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n - \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n - \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n + the i18n language, such as language code and human-readable name.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#i18nLanguage\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the i18n language.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"An *i18nLanguage* resource identifies a UI language currently supported + by YouTube.\",\n \"id\": \"I18nLanguage\",\n \"type\": \"object\"\n + \ },\n \"ActivityContentDetailsLike\": {\n \"description\": \"Information + about a resource that received a positive (like) rating.\",\n \"type\": + \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the rated resource.\",\n + \ \"$ref\": \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsLike\"\n + \ },\n \"ContentRating\": {\n \"id\": \"ContentRating\",\n \"properties\": + {\n \"fpbRatingReasons\": {\n \"description\": \"Reasons that + explain why the video received its FPB (South Africa) rating.\",\n \"type\": + \"array\",\n \"items\": {\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n + \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n + \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n + \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n + \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"South Africa rating content descriptors.\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\"\n }\n + \ },\n \"mtrcbRating\": {\n \"enum\": [\n \"mtrcbUnspecified\",\n + \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n + \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n + \ \"mtrcbUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n + \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Movie and Television Review and Classification + Board (Philippines).\"\n },\n \"moctwRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n + \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n + \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n - \ \"! X\",\n \"\"\n ]\n },\n \"acbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"acbUnspecified\",\n + \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n + \ \"R-12\",\n \"R-15\"\n ],\n \"description\": + \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\"\n + \ },\n \"acbRating\": {\n \"enum\": [\n \"acbUnspecified\",\n \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n \ \"acbR18plus\",\n \"acbUnrated\"\n ],\n \"description\": \"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.\"\n },\n \"ecbmctRating\": {\n \"enumDescriptions\": + television programming.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"Programs that have + been given a P classification by the Australian Communications and Media Authority. + These programs are intended for preschool children.\",\n \"Programs + that have been given a C classification by the Australian Communications and + Media Authority. These programs are intended for children (other than preschool + children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n + \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n + \ ]\n },\n \"chvrsRating\": {\n \"description\": + \"The video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n + \ \"E\",\n \"\"\n ],\n \"enum\": [\n + \ \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n + \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n + \ \"chvrsE\",\n \"chvrsUnrated\"\n ]\n },\n + \ \"ecbmctRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n + \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n + \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n + \ \"ecbmctUnrated\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n \ \"18+\",\n \"\"\n ],\n \"description\": \"Rating system in Turkey - Evaluation and Classification Board of the Ministry - of Culture and Tourism\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"mcstRating\": - {\n \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n + of Culture and Tourism\"\n },\n \"fskRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK + 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n + \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle + der Filmwirtschaft (FSK - Germany) rating.\",\n \"enum\": [\n \"fskUnspecified\",\n + \ \"fsk0\",\n \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n + \ \"fsk18\",\n \"fskUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"mekuRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"S\",\n + \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"enum\": [\n \"mekuUnspecified\",\n + \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n + \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n + \ ],\n \"description\": \"The video's rating from Finland's + Kansallinen Audiovisuaalinen Instituutti (National Audiovisual Institute).\"\n + \ },\n \"cicfRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n + \ \"\"\n ],\n \"enum\": [\n \"cicfUnspecified\",\n + \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n + \ \"cicfUnrated\"\n ],\n \"description\": \"The + video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n + \ \"type\": \"string\"\n },\n \"bmukkRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"Unrestricted\",\n \"6+\",\n + \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n + \ \"16+\",\n \"\"\n ],\n \"enum\": + [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n \"bmukk6\",\n + \ \"bmukk8\",\n \"bmukk10\",\n \"bmukk12\",\n + \ \"bmukk14\",\n \"bmukk16\",\n \"bmukkUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Austrian Board of Media Classification (Bundesministerium + f\xFCr Unterricht, Kunst und Kultur).\"\n },\n \"resorteviolenciaRating\": + {\n \"description\": \"The video's rating in Venezuela.\",\n \"type\": + \"string\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n + \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n + \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n + \ \"\"\n ]\n },\n \"catvRating\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n + \ \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n + \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n + \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n + \ \"catvE\"\n ],\n \"enumDescriptions\": [\n \"\",\n + \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n + \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n + \ ]\n },\n \"rtcRating\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's General Directorate of Radio, Television + and Cinematography (Mexico) rating.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"AA\",\n \"A\",\n \"B\",\n + \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n + \ ],\n \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n + \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n + \ \"rtcD\",\n \"rtcUnrated\"\n ]\n },\n + \ \"djctqRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"L\",\n \"10\",\n \"12\",\n \"14\",\n + \ \"16\",\n \"18\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n + \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n + \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n + \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n + \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n + \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n + \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n + \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o + e T\xEDtulos (DJCQT - Brazil) rating.\"\n },\n \"eefilmRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n + \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n + \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n + \ ],\n \"description\": \"The video's rating in Estonia.\",\n + \ \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n + \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n + \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n + \ \"eefilmK16\",\n \"eefilmUnrated\"\n ],\n + \ \"type\": \"string\"\n },\n \"oflcRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's Office of Film and Literature + Classification (OFLC - New Zealand) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n + \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n + \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n + \ ],\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n + \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n + \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n + \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n + \ \"oflcRp18\"\n ]\n },\n \"rcnofRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"rcnofUnspecified\",\n + \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n + \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n + \ \"rcnofUnrated\"\n ],\n \"description\": \"The + video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee + of the National Office of Film.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"mibacRating\": {\n \"description\": \"The video's rating + from the Ministero dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"mibacUnspecified\",\n + \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n + \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n + \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"cccRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"Todo espectador\",\n \"6+ - + Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n + \ \"18+ - contenido excesivamente violento\",\n \"18+ + - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"enum\": + [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n + \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n + \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"description\": + \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n + \ \"type\": \"string\"\n },\n \"nkclvRating\": {\n \"description\": + \"The video's rating from the Nacion\xE3lais Kino centrs (National Film Centre + of Latvia).\",\n \"type\": \"string\",\n \"enum\": [\n \"nkclvUnspecified\",\n + \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n + \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n + \ \"\"\n ]\n },\n \"mpaaRating\": {\n \"enum\": + [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n + \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n + \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's Motion Picture Association of America (MPAA) rating.\"\n },\n + \ \"skfilmRating\": {\n \"description\": \"The video's rating + in Slovakia.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n + \ \"P8\",\n \"\"\n ],\n \"enum\": [\n + \ \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n + \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n + \ ]\n },\n \"fmocRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"fmocUnspecified\",\n + \ \"fmocU\",\n \"fmoc10\",\n \"fmoc12\",\n + \ \"fmoc16\",\n \"fmoc18\",\n \"fmocE\",\n + \ \"fmocUnrated\"\n ],\n \"description\": \"This + property has been deprecated. Use the contentDetails.contentRating.cncRating + instead.\"\n },\n \"cscfRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n + \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n \ \"\"\n ],\n \"description\": \"The video's rating - system for Vietnam - MCST\",\n \"type\": \"string\"\n },\n - \ \"cncRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + from Luxembourg's Commission de surveillance de la classification des films + (CSCF).\",\n \"type\": \"string\",\n \"enum\": [\n \"cscfUnspecified\",\n + \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n + \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n + \ \"cscf18\",\n \"cscfUnrated\"\n ]\n },\n + \ \"russiaRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's National Film Registry of the Russian Federation (MKRF - Russia) + rating.\",\n \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n + \ \"russia6\",\n \"russia12\",\n \"russia16\",\n + \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n + \ \"16+\",\n \"18+\",\n \"\"\n ]\n + \ },\n \"tvpgRating\": {\n \"description\": \"The video's + TV Parental Guidelines (TVPG) rating.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n + \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n + \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n + \ ],\n \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n + \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n + \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n + \ \"tvpgUnrated\"\n ]\n },\n \"cncRating\": + {\n \"type\": \"string\",\n \"description\": \"Rating system + in France - Commission de classification cinematographique\",\n \"enumDescriptions\": [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n \ \"\"\n ],\n \"enum\": [\n \"cncUnspecified\",\n \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"description\": \"Rating - system in France - Commission de classification cinematographique\"\n },\n - \ \"medietilsynetRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"description\": \"The video's rating from Medietilsynet, the Norwegian - Media Authority.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ]\n },\n \"cceRating\": {\n \"enum\": - [\n \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n - \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n - \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"description\": \"The video's rating from Portugal's - Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"type\": - \"string\"\n },\n \"cbfcRating\": {\n \"enumDescriptions\": + \ \"cncUnrated\"\n ]\n },\n \"bbfcRating\": + {\n \"description\": \"The video's British Board of Film Classification + (BBFC) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n + \ \"\"\n ],\n \"enum\": [\n \"bbfcUnspecified\",\n + \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n + \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n + \ \"bbfcR18\",\n \"bbfcUnrated\"\n ]\n },\n + \ \"kfcbRating\": {\n \"description\": \"The video's rating + from the Kenya Film Classification Board.\",\n \"enumDescriptions\": + [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n + \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n + \ \"kfcbUnrated\"\n ]\n },\n \"bfvcRating\": + {\n \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n + \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n + \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n + \ \"bfvcUnrated\"\n ],\n \"description\": \"The + video's rating from Thailand's Board of Film and Video Censors.\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n + \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"cnaRating\": {\n \"description\": \"The video's rating + from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"enum\": + [\n \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n + \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n + \ \"cnaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"18+\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"egfilmRating\": {\n + \ \"type\": \"string\",\n \"enum\": [\n \"egfilmUnspecified\",\n + \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n + \ \"egfilmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + in Egypt.\"\n },\n \"fcbmRating\": {\n \"description\": + \"The video's rating from Malaysia's Film Censorship Board.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n + \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n + \ ],\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n + \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n + \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n + \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ]\n },\n + \ \"anatelRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for + Chilean television.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n + \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n + \ ],\n \"enum\": [\n \"anatelUnspecified\",\n + \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n + \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n + \ \"anatelA\",\n \"anatelUnrated\"\n ]\n },\n + \ \"czfilmRating\": {\n \"description\": \"The video's rating + in the Czech Republic.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n + \ \"18\",\n \"\"\n ],\n \"enum\": [\n + \ \"czfilmUnspecified\",\n \"czfilmU\",\n \"czfilm12\",\n + \ \"czfilm14\",\n \"czfilm18\",\n \"czfilmUnrated\"\n + \ ]\n },\n \"rteRating\": {\n \"description\": + \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"rteUnspecified\",\n + \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n + \ \"rteUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n + \ \"MA\",\n \"\"\n ]\n },\n \"icaaRating\": + {\n \"description\": \"The video's Instituto de la Cinematograf\xEDa + y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n + \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n + \ \"\"\n ],\n \"enum\": [\n \"icaaUnspecified\",\n + \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n + \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n + \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"nfvcbRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n + \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n + \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n + \ \"nfvcbUnrated\"\n ],\n \"description\": \"The + video's rating from Nigeria's National Film and Video Censors Board.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n + \ \"18\",\n \"RE\",\n \"\"\n ]\n + \ },\n \"nbcRating\": {\n \"enum\": [\n \"nbcUnspecified\",\n + \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n + \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n + \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n + \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from the Maldives National Bureau of Classification.\",\n \"type\": + \"string\"\n },\n \"mccypRating\": {\n \"description\": + \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) + Media Council for Children and Young People.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n + \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n + \ \"mccypUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ]\n },\n \"chfilmRating\": + {\n \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n + \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n + \ \"chfilm18\",\n \"chfilmUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating in Switzerland.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"0\",\n + \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ]\n },\n \"cbfcRating\": {\n \"enum\": + [\n \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n + \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n + \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n \ \"S\",\n \"\"\n ],\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\",\n - \ \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n - \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n - \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n - \ \"cbfcUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"fcoRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"description\": - \"The video's rating from Hong Kong's Office for Film, Newspaper and Article - Administration.\"\n },\n \"kijkwijzerRating\": {\n \"enumDescriptions\": + \"The video's Central Board of Film Certification (CBFC - India) rating.\"\n + \ },\n \"catvfrRating\": {\n \"description\": \"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.\",\n \"enum\": + [\n \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n + \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n + \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n + \ \"\",\n \"\"\n ]\n },\n \"incaaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"ATP + (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 + a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n + \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X + (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n + \ \"\"\n ],\n \"description\": \"The video's INCAA + (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"incaaUnspecified\",\n + \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n + \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n + \ ]\n },\n \"ifcoRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n + \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n + \ ],\n \"description\": \"The video's Irish Film Classification + Office (IFCO - Ireland) rating. See the IFCO website for more information.\",\n + \ \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n + \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n + \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n + \ \"ifco18\",\n \"ifcoUnrated\"\n ]\n },\n + \ \"kijkwijzerRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n + \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating + from the Nederlands Instituut voor de Classificatie van Audiovisuele Media + (Netherlands).\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ],\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\"\n },\n \"grfilmRating\": - {\n \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n - \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n - \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n - \ \"grfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Greece.\"\n },\n - \ \"cicfRating\": {\n \"description\": \"The video's rating - from the Commission de Contr\xF4le des Films (Belgium).\",\n \"enum\": - [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"eirinRating\": {\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ],\n + \ \"kijkwijzerUnrated\"\n ]\n },\n \"menaMpaaRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"menaMpaaUnspecified\",\n + \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n + \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n + \ \"description\": \"The rating system for MENA countries, a clone + of MPAA. It is needed to prevent titles go live w/o additional QC check, since + some of them can be inappropriate for the countries at all. See b/33408548 + for more details.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n + \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n + \ ]\n },\n \"nmcRating\": {\n \"enum\": [\n + \ \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n + \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n + \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n + \ ],\n \"description\": \"The National Media Council ratings + system for United Arab Emirates.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n + \ \"\"\n ]\n },\n \"eirinRating\": {\n \"description\": + \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n + \ \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n + \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n + \ \"eirinUnrated\"\n ],\n \"type\": \"string\",\n \ \"enumDescriptions\": [\n \"\",\n \"G\",\n \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\"\n - \ },\n \"agcomRating\": {\n \"description\": \"The video's - rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ]\n },\n \"mocRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\"\n },\n \"smsaRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Statens medier\xE5d (Sweden's National Media Council).\",\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"enum\": [\n - \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ]\n },\n \"mpaatRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The rating system for trailer, DVD, and Ad in - the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ]\n },\n - \ \"fpbRatingReasons\": {\n \"items\": {\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"Reasons that explain why the video received its FPB (South Africa) rating.\"\n - \ },\n \"cnaRating\": {\n \"description\": \"The video's - rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"type\": - \"string\",\n \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"bbfcRating\": {\n \"description\": \"The video's - British Board of Film Classification (BBFC) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ]\n },\n \"fskRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"FSK 0\",\n - \ \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"enum\": - [\n \"fskUnspecified\",\n \"fsk0\",\n \"fsk6\",\n - \ \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n \"fskUnrated\"\n - \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle - der Filmwirtschaft (FSK - Germany) rating.\"\n },\n \"smaisRating\": - {\n \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"mccaaRating\": {\n \"description\": \"The video's - rating from Malta's Film Age-Classification Board.\",\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n + \ ]\n },\n \"smaisRating\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's rating in Iceland.\",\n \"enum\": + [\n \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n + \ \"smais12\",\n \"smais14\",\n \"smais16\",\n + \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n + \ \"14\",\n \"16\",\n \"18\",\n \"\"\n + \ ]\n },\n \"mccaaRating\": {\n \"enum\": [\n + \ \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n \ \"mccaaUnrated\"\n ],\n \"enumDescriptions\": @@ -11010,1176 +9351,3094 @@ interactions: \ \"12\",\n \"14 - this rating was removed from the new classification structure introduced in 2013.\",\n \"15\",\n \"16 - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"bmukkRating\": {\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ]\n },\n \"russiaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"description\": \"The video's National Film Registry - of the Russian Federation (MKRF - Russia) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"mibacRating\": {\n \"enumDescriptions\": [\n + in 2013.\",\n \"18\",\n \"\"\n ],\n \"description\": + \"The video's rating from Malta's Film Age-Classification Board.\",\n \"type\": + \"string\"\n },\n \"lsfRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"SU\",\n + \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n + \ \"17\",\n \"D\",\n \"21\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from Indonesia's + Lembaga Sensor Film.\",\n \"enum\": [\n \"lsfUnspecified\",\n + \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n + \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n + \ \"lsfUnrated\"\n ]\n },\n \"djctqRatingReasons\": + {\n \"type\": \"array\",\n \"items\": {\n \"enum\": + [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n + \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n + \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n + \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n + \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n + \ \"djctqImpactingContent\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Brazil + rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia + (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n + \ \"Conte\xFAdo sexual (Sexual content)\",\n \"Nudez + (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo Expl\xEDcito + (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas + L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n + \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos + Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting + content)\"\n ]\n },\n \"description\": \"Reasons + that explain why the video received its DJCQT (Brazil) rating.\"\n },\n + \ \"nfrcRating\": {\n \"description\": \"The video's rating + from the Bulgarian National Film Center.\",\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n + \ \"D\",\n \"X\",\n \"\"\n ],\n \"enum\": + [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n + \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"smsaRating\": + {\n \"description\": \"The video's rating from Statens medier\xE5d + (Sweden's National Media Council).\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ],\n \"enum\": [\n + \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n + \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n + \ ]\n },\n \"fcoRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n + \ \"II\",\n \"III\",\n \"\"\n ],\n + \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n + \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n + \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from Hong Kong's + Office for Film, Newspaper and Article Administration.\"\n },\n \"ytRating\": + {\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"description\": \"A rating that YouTube uses to identify + age-restricted content.\",\n \"type\": \"string\"\n },\n \"mpaatRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"GB\",\n + \ \"RB\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n + \ ],\n \"description\": \"The rating system for trailer, + DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n + \ },\n \"kmrbRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 + \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n + \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n + \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n + \ \"kmrbUnrated\"\n ],\n \"description\": \"The + video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) + rating. The KMRB rates videos in South Korea.\"\n },\n \"csaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"Interdiction\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n + \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n + \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n + \ \"description\": \"The video's rating from France's Conseil sup\xE9rieur + de l\u2019audiovisuel, which rates broadcast content.\"\n },\n \"medietilsynetRating\": + {\n \"description\": \"The video's rating from Medietilsynet, the + Norwegian Media Authority.\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n + \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n + \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n + \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n + \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"\"\n ]\n },\n \"nbcplRating\": + {\n \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n + \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n + \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The video's rating in Poland.\"\n },\n \"mcstRating\": {\n + \ \"description\": \"The video's rating system for Vietnam - MCST\",\n + \ \"enumDescriptions\": [\n \"\",\n \"P\",\n + \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n + \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"mcstUnspecified\",\n + \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n + \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n + \ \"mcstGPg\",\n \"mcstUnrated\"\n ]\n },\n + \ \"fpbRating\": {\n \"description\": \"The video's rating + from South Africa's Film and Publication Board.\",\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n + \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n + \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"fpbUnspecified\",\n + \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n + \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n + \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n + \ \"fpbUnrated\",\n \"fpb10\"\n ]\n },\n + \ \"mocRating\": {\n \"description\": \"The video's Ministerio + de Cultura (Colombia) rating.\",\n \"enum\": [\n \"mocUnspecified\",\n + \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n + \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n + \ \"mocUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"E\",\n + \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n + \ ]\n },\n \"mdaRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n + \ \"R21\",\n \"\"\n ],\n \"enum\": + [\n \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n + \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n + \ \"mdaR21\",\n \"mdaUnrated\"\n ],\n \"description\": + \"The video's rating from Singapore's Media Development Authority (MDA) and, + specifically, it's Board of Film Censors (BFC).\"\n },\n \"cceRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"4\",\n + \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\",\n \"14\"\n ],\n \"description\": + \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de + Espect\xB4culos.\",\n \"enum\": [\n \"cceUnspecified\",\n + \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n + \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n + \ \"cceM14\"\n ],\n \"type\": \"string\"\n },\n + \ \"grfilmRating\": {\n \"description\": \"The video's rating + in Greece.\",\n \"enum\": [\n \"grfilmUnspecified\",\n + \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n + \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n + \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n + \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n + \ ]\n },\n \"ilfilmRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n + \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n + \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n + \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating in Israel.\"\n + \ },\n \"agcomRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n + \ \"\"\n ],\n \"enum\": [\n \"agcomUnspecified\",\n + \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n + \ \"agcomUnrated\"\n ],\n \"description\": \"The + video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni + (AGCOM).\",\n \"type\": \"string\"\n },\n \"pefilmRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"PT\",\n + \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n + \ ],\n \"enum\": [\n \"pefilmUnspecified\",\n + \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n + \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"description\": + \"The video's rating in Peru.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"Ratings schemes. + The country-specific ratings are mostly for movies and shows. LINT.IfChange\"\n + \ },\n \"VideoAbuseReportSecondaryReason\": {\n \"properties\": + {\n \"id\": {\n \"description\": \"The ID of this abuse report + secondary reason.\",\n \"type\": \"string\"\n },\n \"label\": + {\n \"description\": \"The localized label for this abuse report + secondary reason.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\"\n + \ },\n \"CommentSnippetAuthorChannelId\": {\n \"properties\": {\n + \ \"value\": {\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"CommentSnippetAuthorChannelId\",\n \"description\": \"The + id of the author's YouTube channel, if any.\",\n \"type\": \"object\"\n + \ },\n \"ActivityContentDetailsBulletin\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the resource associated with a bulletin post. @mutable youtube.activities.insert\"\n + \ }\n },\n \"id\": \"ActivityContentDetailsBulletin\",\n \"description\": + \"Details about a channel bulletin post.\"\n },\n \"CdnSettings\": {\n + \ \"properties\": {\n \"format\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"description\": \"The format of the video stream that you are sending + to Youtube. \",\n \"type\": \"string\"\n },\n \"resolution\": + {\n \"enum\": [\n \"240p\",\n \"360p\",\n \"480p\",\n + \ \"720p\",\n \"1080p\",\n \"1440p\",\n \"2160p\",\n + \ \"variable\"\n ],\n \"description\": \"The resolution + of the inbound video data.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"ingestionType\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \" The method or protocol used to transmit the video stream.\",\n \"enum\": + [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n + \ \"hls\"\n ],\n \"annotations\": {\n \"required\": + [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n + \ ]\n }\n },\n \"ingestionInfo\": {\n \"description\": + \"The ingestionInfo object contains information that YouTube provides that + you need to transmit your RTMP or HTTP stream to YouTube.\",\n \"$ref\": + \"IngestionInfo\"\n },\n \"frameRate\": {\n \"enum\": + [\n \"30fps\",\n \"60fps\",\n \"variable\"\n + \ ],\n \"description\": \"The frame rate of the inbound video + data.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"CdnSettings\",\n \"type\": \"object\",\n \"description\": + \"Brief description of the live stream cdn settings.\"\n },\n \"ChannelContentOwnerDetails\": + {\n \"type\": \"object\",\n \"description\": \"The contentOwnerDetails + object encapsulates channel data that is relevant for YouTube Partners linked + with the channel.\",\n \"id\": \"ChannelContentOwnerDetails\",\n \"properties\": + {\n \"contentOwner\": {\n \"description\": \"The ID of the + content owner linked to the channel.\",\n \"type\": \"string\"\n + \ },\n \"timeLinked\": {\n \"type\": \"string\",\n \"description\": + \"The date and time when the channel was linked to the content owner.\",\n + \ \"format\": \"date-time\"\n }\n }\n },\n \"LiveBroadcast\": + {\n \"properties\": {\n \"statistics\": {\n \"description\": + \"The statistics object contains info about the event's current stats. These + include concurrent viewers and total chat count. Statistics can change (in + either direction) during the lifetime of an event. Statistics are only returned + while the event is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n + \ },\n \"contentDetails\": {\n \"$ref\": \"LiveBroadcastContentDetails\",\n + \ \"description\": \"The contentDetails object contains information + about the event's video content, such as whether the content can be shown + in an embedded video player or if it will be archived and therefore available + for viewing after the event has concluded.\"\n },\n \"snippet\": + {\n \"$ref\": \"LiveBroadcastSnippet\",\n \"description\": + \"The snippet object contains basic details about the event, including its + title, description, start time, and end time.\"\n },\n \"status\": + {\n \"description\": \"The status object contains information about + the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#liveBroadcast\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube assigns to uniquely identify the broadcast.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n }\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"A *liveBroadcast* resource represents an event that + will be streamed, via live video, on YouTube.\",\n \"type\": \"object\",\n + \ \"id\": \"LiveBroadcast\"\n },\n \"Member\": {\n \"type\": + \"object\",\n \"description\": \"A *member* resource represents a member + for a YouTube channel. A member provides recurring monetary support to a creator + and receives special benefits.\",\n \"properties\": {\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the member.\",\n \"$ref\": \"MemberSnippet\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#member\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"Member\"\n },\n \"ThirdPartyLinkSnippet\": {\n \"description\": + \"Basic information about a third party account link, including its type and + type-specific information.\",\n \"type\": \"object\",\n \"id\": + \"ThirdPartyLinkSnippet\",\n \"properties\": {\n \"channelToStoreLink\": + {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n \"description\": + \"Information specific to a link between a channel and a store on a merchandising + platform.\"\n },\n \"type\": {\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or about to + connect) a channel with a store on a merchandising platform in order to enable + retail commerce capabilities for that channel on YouTube.\"\n ],\n + \ \"description\": \"Type of the link named after the entities that + are being linked.\",\n \"type\": \"string\",\n \"enum\": + [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ]\n }\n }\n },\n \"WatchSettings\": {\n \"type\": + \"object\",\n \"description\": \"Branding properties for the watch. All + deprecated.\",\n \"properties\": {\n \"backgroundColor\": {\n + \ \"type\": \"string\",\n \"description\": \"The text color + for the video watch page's branded area.\"\n },\n \"textColor\": + {\n \"type\": \"string\",\n \"description\": \"The background + color for the video watch page's branded area.\"\n },\n \"featuredPlaylistId\": + {\n \"description\": \"An ID that uniquely identifies a playlist + that displays next to the video player.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"WatchSettings\"\n },\n \"PlaylistItemStatus\": + {\n \"description\": \"Information about the playlist item's privacy + status.\",\n \"id\": \"PlaylistItemStatus\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"privacyStatus\": {\n \"enum\": + [\n \"public\",\n \"unlisted\",\n \"private\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"This resource's privacy status.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ]\n }\n + \ }\n },\n \"ActivitySnippet\": {\n \"type\": \"object\",\n + \ \"description\": \"Basic details about an activity, including title, + description, thumbnails, activity type and group. Next ID: 12\",\n \"properties\": + {\n \"description\": {\n \"type\": \"string\",\n \"description\": + \"The description of the resource primarily associated with the activity. + @mutable youtube.activities.insert\"\n },\n \"groupId\": {\n + \ \"description\": \"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.\",\n \"type\": \"string\"\n + \ },\n \"title\": {\n \"description\": \"The title of + the resource primarily associated with the activity.\",\n \"type\": + \"string\"\n },\n \"type\": {\n \"description\": \"The + type of activity that the resource describes.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n + \ \"like\",\n \"favorite\",\n \"comment\",\n + \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n + \ \"bulletin\",\n \"social\",\n \"channelItem\",\n + \ \"promotedItem\"\n ],\n \"type\": \"string\"\n + \ },\n \"thumbnails\": {\n \"description\": \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n + \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the video was uploaded.\",\n \"type\": \"string\"\n + \ },\n \"channelTitle\": {\n \"description\": \"Channel + title for the channel responsible for this activity\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel associated with + the activity.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"ActivitySnippet\"\n },\n \"ThirdPartyLink\": {\n \"properties\": + {\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n + \ \"description\": \"The status object contains information about + the status of the link.\"\n },\n \"linkingToken\": {\n \"type\": + \"string\",\n \"description\": \"The linking_token identifies a YouTube + account and channel with which the third party account is linked.\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the third- party account link.\",\n \"$ref\": + \"ThirdPartyLinkSnippet\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#thirdPartyLink\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"ThirdPartyLink\",\n + \ \"description\": \"A *third party account link* resource represents + a link between a YouTube account or a channel and an account on a third-party + service.\"\n },\n \"VideoAbuseReportReasonListResponse\": {\n \"properties\": + {\n \"eventId\": {\n \"description\": \"Serialized EventId + of the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"VideoAbuseReportReason\"\n },\n \"description\": \"A list + of valid abuse reasons that are used with `video.ReportAbuse`.\",\n \"type\": + \"array\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n + \ \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The `visitorId` identifies the visitor.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonListResponse\"\n + \ },\n \"InvideoTiming\": {\n \"id\": \"InvideoTiming\",\n \"description\": + \"Describes a temporal position of a visual widget inside a video.\",\n \"properties\": + {\n \"durationMs\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"Defines the duration in milliseconds + for which the promotion should be displayed. If missing, the client should + use the default.\"\n },\n \"offsetMs\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"Defines the time at which the promotion will appear. Depending on the value + of type the value of the offsetMs field will represent a time offset from + the start or from the end of the video, expressed in milliseconds.\"\n },\n + \ \"type\": {\n \"description\": \"Describes a timing type. + If the value is offsetFromStart, then the offsetMs field represents an offset + from the start of the video. If the value is offsetFromEnd, then the offsetMs + field represents an offset from the end of the video.\",\n \"enum\": + [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"LiveStreamHealthStatus\": {\n \"properties\": {\n \"status\": + {\n \"description\": \"The status code of this stream\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"good\",\n + \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n + \ ],\n \"type\": \"string\"\n },\n \"configurationIssues\": + {\n \"description\": \"The configurations issues on this stream\",\n + \ \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n + \ },\n \"type\": \"array\"\n },\n \"lastUpdateTimeSeconds\": + {\n \"description\": \"The last time this status was updated (in + seconds)\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveStreamHealthStatus\"\n + \ },\n \"LiveBroadcastContentDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"startWithSlate\": {\n \"type\": + \"boolean\",\n \"description\": \"This setting indicates whether + the broadcast should automatically begin with an in-stream slate when you + update the broadcast's status to live. After updating the status, you then + need to send a liveCuepoints.insert request that sets the cuepoint's eventState + to end to remove the in-stream slate and make your broadcast stream visible + to viewers.\"\n },\n \"latencyPreference\": {\n \"description\": + \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL + should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true + LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"type\": + \"string\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n + \ \"normal\",\n \"low\",\n \"ultraLow\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"Best + for: highest quality viewer playbacks and higher resolutions.\",\n \"Best + for: near real-time interaction, with minimal playback buffering.\",\n \"Best + for: real-time interaction Does not support: Closed captions, 1440p, and 4k + resolutions\"\n ]\n },\n \"boundStreamId\": {\n \"type\": + \"string\",\n \"description\": \"This value uniquely identifies the + live stream bound to the broadcast.\"\n },\n \"enableDvr\": + {\n \"description\": \"This setting determines whether viewers can + access DVR controls while watching the video. DVR controls enable the viewer + to control the video playback experience by pausing, rewinding, or fast forwarding + content. The default value for this property is true. *Important:* You must + set the value to true and also set the enableArchive property's value to true + if you want to make playback available immediately after the broadcast ends.\",\n + \ \"type\": \"boolean\"\n },\n \"projection\": {\n \"enum\": + [\n \"projectionUnspecified\",\n \"rectangular\",\n + \ \"360\",\n \"mesh\"\n ],\n \"type\": + \"string\",\n \"description\": \"The projection format of this broadcast. + This defaults to rectangular.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"stereoLayout\": {\n \"enum\": [\n \"stereoLayoutUnspecified\",\n + \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The 3D stereo layout of this broadcast. This + defaults to mono.\"\n },\n \"boundStreamLastUpdateTimeMs\": + {\n \"description\": \"The date and time that the live stream referenced + by boundStreamId was last updated.\",\n \"format\": \"date-time\",\n + \ \"type\": \"string\"\n },\n \"enableEmbed\": {\n \"type\": + \"boolean\",\n \"description\": \"This setting indicates whether + the broadcast video can be played in an embedded player. If you choose to + archive the video (using the enableArchive property), this setting will also + apply to the archived video.\"\n },\n \"recordFromStart\": {\n + \ \"description\": \"Automatically start recording after the event + goes live. The default value for this property is true. *Important:* You must + also set the enableDvr property's value to true if you want the playback to + be available immediately after the broadcast ends. If you set this property's + value to true but do not also set the enableDvr property to true, there may + be a delay of around one day before the archived video will be available for + playback.\",\n \"type\": \"boolean\"\n },\n \"enableContentEncryption\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether YouTube should enable content encryption for the broadcast.\"\n + \ },\n \"enableLowLatency\": {\n \"description\": \"Indicates + whether this broadcast has low latency enabled.\",\n \"type\": \"boolean\"\n + \ },\n \"closedCaptionsType\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n + \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n + \ \"closedCaptionsEmbedded\"\n ],\n \"type\": + \"string\"\n },\n \"monitorStream\": {\n \"description\": + \"The monitorStream object contains information about the monitor stream, + which the broadcaster can use to review the event content before the broadcast + stream is shown publicly.\",\n \"$ref\": \"MonitorStreamInfo\"\n + \ },\n \"enableClosedCaptions\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether HTTP POST closed + captioning is enabled for this broadcast. The ingestion URL of the closed + captions is returned through the liveStreams API. This is mutually exclusive + with using the closed_captions_type property, and is equivalent to setting + closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n \"enableAutoStart\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether auto start is enabled for this broadcast. The default value + for this property is false. This setting can only be used by Events.\"\n },\n + \ \"mesh\": {\n \"type\": \"string\",\n \"description\": + \"The mesh for projecting the video if projection is mesh. The mesh value + must be a UTF-8 string containing the base-64 encoding of 3D mesh data that + follows the Spherical Video V2 RFC specification for an mshp box, excluding + the box size and type but including the following four reserved zero bytes + for the version and flags.\",\n \"format\": \"byte\"\n },\n + \ \"enableAutoStop\": {\n \"type\": \"boolean\",\n \"description\": + \"This setting indicates whether auto stop is enabled for this broadcast. + The default value for this property is false. This setting can only be used + by Events.\"\n }\n },\n \"id\": \"LiveBroadcastContentDetails\",\n + \ \"description\": \"Detailed settings of a broadcast.\"\n },\n \"SuperStickerMetadata\": + {\n \"id\": \"SuperStickerMetadata\",\n \"properties\": {\n \"altText\": + {\n \"type\": \"string\",\n \"description\": \"Internationalized + alt text that describes the sticker image and any animation associated with + it.\"\n },\n \"altTextLanguage\": {\n \"type\": \"string\",\n + \ \"description\": \"Specifies the localization language in which + the alt text is returned.\"\n },\n \"stickerId\": {\n \"type\": + \"string\",\n \"description\": \"Unique identifier of the Super Sticker. + This is a shorter form of the alt_text that includes pack name and a recognizable + characteristic of the sticker.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"CommentListResponse\": {\n \"type\": \"object\",\n \"properties\": + {\n \"kind\": {\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n + \ \"default\": \"youtube#commentListResponse\",\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n + \ \"description\": \"A list of comments that match the request criteria.\",\n + \ \"items\": {\n \"$ref\": \"Comment\"\n }\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n }\n },\n \"id\": \"CommentListResponse\"\n + \ },\n \"CommentThread\": {\n \"properties\": {\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the comment thread.\"\n },\n \"replies\": {\n \"$ref\": + \"CommentThreadReplies\",\n \"description\": \"The replies object + contains a limited number of replies (if any) to the top level comment found + in the snippet.\"\n },\n \"snippet\": {\n \"$ref\": + \"CommentThreadSnippet\",\n \"description\": \"The snippet object + contains basic details about the comment thread and also the top level comment.\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#commentThread\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\"\n + \ }\n },\n \"id\": \"CommentThread\",\n \"type\": \"object\",\n + \ \"description\": \"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.\"\n },\n \"ChannelSectionTargeting\": + {\n \"id\": \"ChannelSectionTargeting\",\n \"properties\": {\n \"languages\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"The language + the channel section is targeting.\"\n },\n \"countries\": {\n + \ \"description\": \"The country the channel section is targeting.\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": + \"array\"\n },\n \"regions\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"The region the channel + section is targeting.\",\n \"type\": \"array\"\n }\n },\n + \ \"description\": \"ChannelSection targeting setting.\",\n \"type\": + \"object\"\n },\n \"LiveChatNewSponsorDetails\": {\n \"type\": + \"object\",\n \"properties\": {\n \"memberLevelName\": {\n \"type\": + \"string\",\n \"description\": \"The name of the Level that the viewer + just had joined. The Level names are defined by the YouTube channel offering + the Membership. In some situations this field isn't filled.\"\n },\n + \ \"isUpgrade\": {\n \"description\": \"If the viewer just + had upgraded from a lower level. For viewers that were not members at the + time of purchase, this field is false.\",\n \"type\": \"boolean\"\n + \ }\n },\n \"id\": \"LiveChatNewSponsorDetails\"\n },\n + \ \"PlaylistContentDetails\": {\n \"id\": \"PlaylistContentDetails\",\n + \ \"properties\": {\n \"itemCount\": {\n \"type\": \"integer\",\n + \ \"description\": \"The number of videos in the playlist.\",\n \"format\": + \"uint32\"\n }\n },\n \"type\": \"object\"\n },\n \"LevelDetails\": + {\n \"properties\": {\n \"displayName\": {\n \"type\": + \"string\",\n \"description\": \"The name that should be used when + referring to this level.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LevelDetails\"\n },\n \"I18nRegion\": {\n \"type\": + \"object\",\n \"id\": \"I18nRegion\",\n \"properties\": {\n \"snippet\": + {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": + \"The snippet object contains basic details about the i18n region, such as + region code and human-readable name.\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the i18n region.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#i18nRegion\\\".\",\n \"default\": \"youtube#i18nRegion\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"description\": + \"A *i18nRegion* resource identifies a region where YouTube is available.\"\n + \ },\n \"PlaylistSnippet\": {\n \"type\": \"object\",\n \"description\": + \"Basic details about a playlist, including title, description and thumbnails.\",\n + \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The playlist's description.\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": + [\n \"youtube.playlists.insert\",\n \"youtube.playlists.update\"\n + \ ]\n },\n \"description\": \"The playlist's title.\"\n + \ },\n \"tags\": {\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"Keyword tags associated with the playlist.\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The language + of the playlist's default title and description.\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel that published the playlist.\"\n + \ },\n \"thumbnailVideoId\": {\n \"description\": \"Note: + if the playlist has a custom thumbnail, this field will not be populated. + The video id selected by the user that will be used as the thumbnail of this + playlist. This field defaults to the first publicly viewable video in the + playlist, if: 1. The user has never selected a video to be the thumbnail of + the playlist. 2. The user selects a video to be the thumbnail, and then removes + that video from the playlist. 3. The user selects a non-owned video to be + the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": + \"string\"\n },\n \"channelTitle\": {\n \"description\": + \"The channel title of the channel that the video belongs to.\",\n \"type\": + \"string\"\n },\n \"localized\": {\n \"$ref\": \"PlaylistLocalization\",\n + \ \"description\": \"Localized title and description, read-only.\"\n + \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n + \ \"type\": \"string\",\n \"description\": \"The date and + time that the playlist was created.\"\n },\n \"thumbnails\": + {\n \"description\": \"A map of thumbnail images associated with + the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n }\n },\n + \ \"id\": \"PlaylistSnippet\"\n },\n \"VideoFileDetailsVideoStream\": + {\n \"type\": \"object\",\n \"properties\": {\n \"vendor\": + {\n \"type\": \"string\",\n \"description\": \"A value that + uniquely identifies a video vendor. Typically, the value is a four-letter + vendor code.\"\n },\n \"widthPixels\": {\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The encoded video content's width in pixels. You can calculate the video's + encoding aspect ratio as width_pixels / height_pixels.\"\n },\n \"bitrateBps\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The video stream's bitrate, in bits per second.\"\n },\n \"heightPixels\": + {\n \"format\": \"uint32\",\n \"description\": \"The encoded + video content's height in pixels.\",\n \"type\": \"integer\"\n },\n + \ \"codec\": {\n \"description\": \"The video codec that the + stream uses.\",\n \"type\": \"string\"\n },\n \"rotation\": + {\n \"enum\": [\n \"none\",\n \"clockwise\",\n + \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n + \ ],\n \"description\": \"The amount that YouTube needs to + rotate the original source content to properly display the video.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"aspectRatio\": {\n \"format\": \"double\",\n \"description\": + \"The video content's display aspect ratio, which specifies the aspect ratio + in which the video should be displayed.\",\n \"type\": \"number\"\n + \ },\n \"frameRateFps\": {\n \"type\": \"number\",\n + \ \"description\": \"The video stream's frame rate, in frames per + second.\",\n \"format\": \"double\"\n }\n },\n \"description\": + \"Information about a video stream.\",\n \"id\": \"VideoFileDetailsVideoStream\"\n + \ },\n \"LiveChatModeratorSnippet\": {\n \"id\": \"LiveChatModeratorSnippet\",\n + \ \"properties\": {\n \"liveChatId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the live chat this moderator can act + on.\"\n },\n \"moderatorDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n + \ \"description\": \"Details about the moderator.\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"ChannelLocalization\": {\n \"type\": + \"object\",\n \"description\": \"Channel localization setting\",\n \"id\": + \"ChannelLocalization\",\n \"properties\": {\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The localized + strings for channel's description.\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"The localized strings for channel's + title.\"\n }\n }\n },\n \"Activity\": {\n \"type\": + \"object\",\n \"description\": \"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.\",\n \"properties\": {\n + \ \"id\": {\n \"description\": \"The ID that YouTube uses to + uniquely identify the activity.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the activity, including + the activity's type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#activity\",\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n },\n + \ \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n + \ \"description\": \"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.\"\n }\n },\n \"id\": \"Activity\"\n },\n + \ \"VideoContentDetails\": {\n \"description\": \"Details about the + content of a YouTube Video.\",\n \"properties\": {\n \"countryRestriction\": + {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The + countryRestriction object contains information about the countries where a + video is (or is not) viewable.\"\n },\n \"caption\": {\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"true\",\n \"false\"\n ],\n \"description\": + \"The value of captions indicates whether the video has captions or not.\",\n + \ \"type\": \"string\"\n },\n \"projection\": {\n \"description\": + \"Specifies the projection format of the video.\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"rectangular\",\n \"360\"\n ],\n \"type\": + \"string\"\n },\n \"regionRestriction\": {\n \"$ref\": + \"VideoContentDetailsRegionRestriction\",\n \"description\": \"The + regionRestriction object contains information about the countries where a + video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed + property or the contentDetails.regionRestriction.blocked property.\"\n },\n + \ \"definition\": {\n \"description\": \"The value of definition + indicates whether the video is available in high definition or only in standard + definition.\",\n \"enum\": [\n \"sd\",\n \"hd\"\n + \ ],\n \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n + \ ],\n \"type\": \"string\"\n },\n \"dimension\": + {\n \"type\": \"string\",\n \"description\": \"The value + of dimension indicates whether the video is available in 3D or in 2D.\"\n + \ },\n \"licensedContent\": {\n \"type\": \"boolean\",\n + \ \"description\": \"The value of is_license_content indicates whether + the video is licensed content.\"\n },\n \"hasCustomThumbnail\": + {\n \"type\": \"boolean\",\n \"description\": \"Indicates + whether the video uploader has provided a custom thumbnail image for the video. + This property is only visible to the video uploader.\"\n },\n \"contentRating\": + {\n \"description\": \"Specifies the ratings that the video received + under various rating schemes.\",\n \"$ref\": \"ContentRating\"\n + \ },\n \"duration\": {\n \"type\": \"string\",\n \"description\": + \"The length of the video. The tag value is an ISO 8601 duration in the format + PT#M#S, in which the letters PT indicate that the value specifies a period + of time, and the letters M and S refer to length in minutes and seconds, respectively. + The # characters preceding the M and S letters are both integers that specify + the number of minutes (or seconds) of the video. For example, a value of PT15M51S + indicates that the video is 15 minutes and 51 seconds long.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"VideoContentDetails\"\n + \ },\n \"ChannelBannerResource\": {\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n \"default\": + \"youtube#channelBannerResource\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"type\": \"string\"\n },\n \"url\": + {\n \"type\": \"string\",\n \"description\": \"The URL of + this banner image.\"\n }\n },\n \"description\": \"A channel + banner returned as the response to a channel_banner.insert call.\",\n \"type\": + \"object\",\n \"id\": \"ChannelBannerResource\"\n },\n \"SubscriptionContentDetails\": + {\n \"id\": \"SubscriptionContentDetails\",\n \"description\": \"Details + about the content to witch a subscription refers.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"newItemCount\": {\n \"format\": + \"uint32\",\n \"description\": \"The number of new items in the subscription + since its content was last read.\",\n \"type\": \"integer\"\n },\n + \ \"totalItemCount\": {\n \"description\": \"The approximate + number of items that the subscription points to.\",\n \"format\": + \"uint32\",\n \"type\": \"integer\"\n },\n \"activityType\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n + \ \"all\",\n \"uploads\"\n ],\n \"description\": + \"The type of activity this subscription is for (only uploads, everything).\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"ChannelSectionLocalization\": + {\n \"properties\": {\n \"title\": {\n \"description\": + \"The localized strings for channel section's title.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"ChannelSectionLocalization\",\n + \ \"description\": \"ChannelSection localization setting\",\n \"type\": + \"object\"\n },\n \"VideoSuggestions\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"tagSuggestions\": {\n \"description\": + \"A list of keyword tags that could be added to the video's metadata to increase + the likelihood that users will locate your video when searching or browsing + on YouTube.\",\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n + \ },\n \"type\": \"array\"\n },\n \"processingWarnings\": + {\n \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": + [\n \"Unrecognized file format, transcoding is likely to fail.\",\n + \ \"Unrecognized video codec, transcoding is likely to fail.\",\n + \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n + \ \"Conflicting container and stream resolutions.\",\n \"Edit + lists are not currently supported.\",\n \"Video codec that is + known to cause problems was used.\",\n \"Audio codec that is + known to cause problems was used.\",\n \"Unsupported VR video + stereo mode.\",\n \"Unsupported spherical video projection type.\",\n + \ \"Unsupported HDR pixel format.\",\n \"Unspecified + HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n + \ ],\n \"enum\": [\n \"unknownContainer\",\n + \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n + \ \"inconsistentResolution\",\n \"hasEditlist\",\n + \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n + \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n + \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n + \ \"problematicHdrLookupTable\"\n ],\n \"type\": + \"string\"\n },\n \"description\": \"A list of reasons why + YouTube may have difficulty transcoding the uploaded video or that might result + in an erroneous transcoding. These warnings are generated before YouTube actually + processes the uploaded video file. In addition, they identify issues that + are unlikely to cause the video processing to fail but that might cause problems + such as sync issues, video artifacts, or a missing audio track.\"\n },\n + \ \"processingHints\": {\n \"type\": \"array\",\n \"description\": + \"A list of suggestions that may improve YouTube's ability to process the + video.\",\n \"items\": {\n \"enumDescriptions\": [\n \"The + MP4 file is not streamable, this will slow down the processing. MOOV atom + was not found at the beginning of the file.\",\n \"Probably a + better quality version of the video exists. The video has wide screen aspect + ratio, but is not an HD video.\",\n \"Uploaded video is spherical + video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded + video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n + \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n + \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n + \ ]\n }\n },\n \"processingErrors\": {\n + \ \"items\": {\n \"enum\": [\n \"audioFile\",\n + \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n + \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n + \ ],\n \"enumDescriptions\": [\n \"File + contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., + a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file.\",\n \"Document + or text file (e.g., MS Word document).\",\n \"An archive file + (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout + type.\"\n ],\n \"type\": \"string\"\n },\n + \ \"description\": \"A list of errors that will prevent YouTube from + successfully processing the uploaded video video. These errors indicate that, + regardless of the video's current processing status, eventually, that status + will almost certainly be failed.\",\n \"type\": \"array\"\n },\n + \ \"editorSuggestions\": {\n \"type\": \"array\",\n \"description\": + \"A list of video editing operations that might improve the video quality + or playback experience of the uploaded video.\",\n \"items\": {\n + \ \"enumDescriptions\": [\n \"Picture brightness levels + seem off and could be corrected.\",\n \"The video appears shaky + and could be stabilized.\",\n \"Margins (mattes) detected around + the picture could be cropped.\",\n \"The audio track appears + silent and could be swapped with a better quality one.\"\n ],\n + \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n + \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n + \ \"type\": \"string\"\n }\n }\n },\n \"id\": + \"VideoSuggestions\",\n \"description\": \"Specifies suggestions on how + to improve video content, including encoding hints, tag suggestions, and editor + suggestions.\"\n },\n \"ActivityContentDetailsPromotedItem\": {\n \"properties\": + {\n \"forecastingUrl\": {\n \"type\": \"array\",\n \"description\": + \"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.\",\n \"items\": {\n \"type\": \"string\"\n + \ }\n },\n \"descriptionText\": {\n \"description\": + \"The text description to accompany the promoted item.\",\n \"type\": + \"string\"\n },\n \"clickTrackingUrl\": {\n \"type\": + \"string\",\n \"description\": \"The URL the client should ping to + indicate that the user clicked through on this promoted item.\"\n },\n + \ \"impressionUrl\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"The list of impression + URLs. The client should ping all of these URLs to indicate that the user was + shown this promoted item.\",\n \"type\": \"array\"\n },\n + \ \"creativeViewUrl\": {\n \"description\": \"The URL the client + should ping to indicate that the user was shown this promoted item.\",\n \"type\": + \"string\"\n },\n \"destinationUrl\": {\n \"description\": + \"The URL the client should direct the user to, if the user chooses to visit + the advertiser's website.\",\n \"type\": \"string\"\n },\n + \ \"adTag\": {\n \"type\": \"string\",\n \"description\": + \"The URL the client should fetch to request a promoted item.\"\n },\n + \ \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the promoted video.\"\n },\n + \ \"ctaType\": {\n \"enum\": [\n \"ctaTypeUnspecified\",\n + \ \"visitAdvertiserSite\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n + \ \"description\": \"The type of call-to-action, a message to the + user indicating action that can be taken.\"\n },\n \"customCtaButtonText\": + {\n \"type\": \"string\",\n \"description\": \"The custom + call-to-action button text. If specified, it will override the default button + text for the cta_type.\"\n }\n },\n \"description\": \"Details + about a resource which is being promoted.\",\n \"type\": \"object\",\n + \ \"id\": \"ActivityContentDetailsPromotedItem\"\n },\n \"VideoAbuseReportReasonSnippet\": + {\n \"properties\": {\n \"label\": {\n \"description\": + \"The localized label belonging to this abuse report reason.\",\n \"type\": + \"string\"\n },\n \"secondaryReasons\": {\n \"items\": + {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n },\n + \ \"description\": \"The secondary reasons associated with this reason, + if any are available. (There might be 0 or more.)\",\n \"type\": + \"array\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"Basic details about a video category, such as its localized title.\",\n + \ \"id\": \"VideoAbuseReportReasonSnippet\"\n },\n \"SuperChatEvent\": + {\n \"description\": \"A `__superChatEvent__` resource represents a Super + Chat purchase on a YouTube channel.\",\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n \"type\": + \"string\",\n \"default\": \"youtube#superChatEvent\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube assigns + to uniquely identify the Super Chat event.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"description\": \"The `snippet` object contains basic details + about the Super Chat event.\",\n \"$ref\": \"SuperChatEventSnippet\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"SuperChatEvent\"\n + \ },\n \"PageInfo\": {\n \"description\": \"Paging details for lists + of resources, including total number of items available and number of resources + returned in a single page.\",\n \"type\": \"object\",\n \"id\": + \"PageInfo\",\n \"properties\": {\n \"resultsPerPage\": {\n \"description\": + \"The number of results included in the API response.\",\n \"format\": + \"int32\",\n \"type\": \"integer\"\n },\n \"totalResults\": + {\n \"type\": \"integer\",\n \"format\": \"int32\",\n \"description\": + \"The total number of results in the result set.\"\n }\n }\n },\n + \ \"Entity\": {\n \"id\": \"Entity\",\n \"properties\": {\n \"id\": + {\n \"type\": \"string\"\n },\n \"url\": {\n \"type\": + \"string\"\n },\n \"typeId\": {\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"ChannelProfileDetails\": + {\n \"properties\": {\n \"channelId\": {\n \"description\": + \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n + \ \"displayName\": {\n \"type\": \"string\",\n \"description\": + \"The channel's display name.\"\n },\n \"profileImageUrl\": + {\n \"description\": \"The channels's avatar URL.\",\n \"type\": + \"string\"\n },\n \"channelUrl\": {\n \"description\": + \"The channel's URL.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"ChannelProfileDetails\"\n },\n + \ \"LiveChatMessage\": {\n \"type\": \"object\",\n \"properties\": + {\n \"id\": {\n \"description\": \"The ID that YouTube assigns + to uniquely identify the message.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"authorDetails\": {\n + \ \"$ref\": \"LiveChatMessageAuthorDetails\",\n \"description\": + \"The authorDetails object contains basic details about the user that posted + this message.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveChatMessage\"\n + \ },\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the message.\"\n }\n },\n \"id\": \"LiveChatMessage\",\n + \ \"description\": \"A *liveChatMessage* resource represents a chat message + in a YouTube Live Chat.\"\n },\n \"LiveChatMessageSnippet\": {\n \"id\": + \"LiveChatMessageSnippet\",\n \"description\": \"Next ID: 33\",\n \"properties\": + {\n \"memberMilestoneChatDetails\": {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n + \ \"description\": \"Details about the Member Milestone Chat event, + this is only set if the type is 'memberMilestoneChatEvent'.\"\n },\n + \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"description\": + \"The date and time when the message was orignally published.\",\n \"type\": + \"string\"\n },\n \"membershipGiftingDetails\": {\n \"$ref\": + \"LiveChatMembershipGiftingDetails\",\n \"description\": \"Details + about the Membership Gifting event, this is only set if the type is 'membershipGiftingEvent'.\"\n + \ },\n \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n + \ },\n \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n + \ \"description\": \"Details about the New Member Announcement event, + this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" + is the new term for \\\"sponsor\\\".\"\n },\n \"fanFundingEventDetails\": + {\n \"description\": \"Details about the funding event, this is only + set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n + \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Ministero dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n - \ \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"ifcoRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n - \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n - \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n - \ \"ifco18\",\n \"ifcoUnrated\"\n ]\n },\n - \ \"fmocRating\": {\n \"description\": \"This property has - been deprecated. Use the contentDetails.contentRating.cncRating instead.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ]\n },\n \"lsfRating\": {\n \"enum\": [\n - \ \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ]\n },\n \"chvrsRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"14A\",\n \"18A\",\n - \ \"R\",\n \"E\",\n \"\"\n ],\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ]\n },\n - \ \"nbcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12+\",\n \"15+\",\n - \ \"18+\",\n \"18+R\",\n \"PU\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Maldives - National Bureau of Classification.\",\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"resorteviolenciaRating\": {\n \"description\": - \"The video's rating in Venezuela.\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ]\n },\n - \ \"skfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P2\",\n \"P5\",\n \"P8\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n - \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Slovakia.\"\n - \ },\n \"oflcRating\": {\n \"enum\": [\n \"oflcUnspecified\",\n - \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n - \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n - \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n - \ \"oflcRp16\",\n \"oflcRp18\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Office of Film and Literature - Classification (OFLC - New Zealand) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ]\n },\n \"cccRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica - (Chile) rating.\",\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Todo - espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n - \ \"14+\",\n \"18+\",\n \"18+ - contenido - excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ]\n },\n \"menaMpaaRating\": {\n - \ \"type\": \"string\",\n \"description\": \"The rating system - for MENA countries, a clone of MPAA. It is needed to prevent titles go live - w/o additional QC check, since some of them can be inappropriate for the countries - at all. See b/33408548 for more details.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ],\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ]\n - \ },\n \"mdaRating\": {\n \"description\": \"The video's - rating from Singapore's Media Development Authority (MDA) and, specifically, - it's Board of Film Censors (BFC).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ]\n },\n \"catvfrRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"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.\",\n \"type\": \"string\",\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ]\n },\n \"fcbmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"enum\": - [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ]\n },\n \"rtcRating\": - {\n \"description\": \"The video's General Directorate of Radio, - Television and Cinematography (Mexico) rating.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n - \ \"D\",\n \"\"\n ],\n \"enum\": [\n - \ \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ]\n },\n \"djctqRatingReasons\": - {\n \"items\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ]\n },\n \"type\": - \"array\",\n \"description\": \"Reasons that explain why the video - received its DJCQT (Brazil) rating.\"\n },\n \"bfvcRating\": - {\n \"description\": \"The video's rating from Thailand's Board of - Film and Video Censors.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"E\",\n \"13\",\n \"15\",\n - \ \"18\",\n \"20\",\n \"B\",\n \"\"\n - \ ],\n \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"nbcplRating\": {\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ],\n \"description\": \"The video's rating in Poland.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"rcnofRating\": - {\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Hungarian - Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\"\n - \ },\n \"eefilmRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n - \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n - \ \"K-16\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n - \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n - \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n - \ \"eefilmK16\",\n \"eefilmUnrated\"\n ],\n - \ \"description\": \"The video's rating in Estonia.\"\n },\n - \ \"kmrbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 \uC774\uC0C1 - \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"description\": \"The video's Korea - Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. - The KMRB rates videos in South Korea.\",\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"csaRating\": - {\n \"description\": \"The video's rating from France's Conseil sup\xE9rieur - de l\u2019audiovisuel, which rates broadcast content.\",\n \"type\": - \"string\",\n \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ]\n },\n - \ \"ytRating\": {\n \"description\": \"A rating that YouTube - uses to identify age-restricted content.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n - \ \"type\": \"string\"\n },\n \"nmcRating\": {\n \"enum\": - [\n \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n - \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n - \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The National - Media Council ratings system for United Arab Emirates.\"\n },\n \"rteRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ]\n },\n \"tvpgRating\": {\n \"enum\": [\n - \ \"tvpgUnspecified\",\n \"tvpgY\",\n \"tvpgY7\",\n - \ \"tvpgY7Fv\",\n \"tvpgG\",\n \"tvpgPg\",\n - \ \"pg14\",\n \"tvpgMa\",\n \"tvpgUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's TV Parental Guidelines (TVPG) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ]\n },\n \"nfvcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Nigeria's - National Film and Video Censors Board.\"\n },\n \"czfilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in the Czech Republic.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"12\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ]\n },\n - \ \"kfcbRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"enum\": - [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ]\n },\n \"pefilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n - \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n - \ \"pefilmUnrated\"\n ],\n \"description\": \"The - video's rating in Peru.\"\n },\n \"ilfilmRating\": {\n \"description\": - \"The video's rating in Israel.\",\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"mccypRating\": {\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"chfilmRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ]\n },\n \"anatelRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\",\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ]\n },\n - \ \"icaaRating\": {\n \"description\": \"The video's Instituto - de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ],\n - \ \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"mtrcbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Movie - and Television Review and Classification Board (Philippines).\",\n \"enum\": - [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n - \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n - \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"fpbRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ],\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\"\n },\n - \ \"catvRating\": {\n \"description\": \"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.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n - \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n - \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n - \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n - \ \"catvE\"\n ],\n \"type\": \"string\"\n },\n - \ \"cscfRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\",\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"moctwRating\": {\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ],\n \"enum\": - [\n \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n - \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n - \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"type\": - \"string\"\n },\n \"nkclvRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n - \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n - \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n - \ \"description\": \"The video's rating from the Nacion\xE3lais Kino - centrs (National Film Centre of Latvia).\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"incaaRating\": {\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"description\": - \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\"\n },\n \"egfilmRating\": {\n \"description\": - \"The video's rating in Egypt.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GN\",\n \"18\",\n \"BN\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ]\n },\n \"djctqRating\": - {\n \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, - Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The type of message, this will always be present, it determines the contents + of the message as well as which fields will be present.\",\n \"enum\": + [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n + \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n + \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n + \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n + \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n + \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n + \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n + \ \"type\": \"string\"\n },\n \"messageRetractedDetails\": + {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"textMessageDetails\": + {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": + \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n + \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n + \ \"displayMessage\": {\n \"type\": \"string\",\n \"description\": + \"Contains a string that can be displayed to the user. If this field is not + present the message is silent, at the moment only messages of type TOMBSTONE + and CHAT_ENDED_EVENT are silent.\"\n },\n \"hasDisplayContent\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the message has display content that should be displayed to users.\"\n },\n + \ \"authorChannelId\": {\n \"description\": \"The ID of the + user that authored this message, this field is not always filled. textMessageEvent + - the user that wrote the message fanFundingEvent - the user that funded the + broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent + - the member that sent the message membershipGiftingEvent - the user that + made the purchase giftMembershipReceivedEvent - the user that received the + gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent + - the author that retracted their message userBannedEvent - the moderator + that took the action superChatEvent - the user that made the purchase superStickerEvent + - the user that made the purchase\",\n \"type\": \"string\"\n },\n + \ \"superStickerDetails\": {\n \"description\": \"Details about + the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n + \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"superChatDetails\": + {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": + \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n + \ },\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n + \ },\n \"giftMembershipReceivedDetails\": {\n \"description\": + \"Details about the Gift Membership Received event, this is only set if the + type is 'giftMembershipReceivedEvent'.\",\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsUpload\": + {\n \"type\": \"object\",\n \"description\": \"Information about + the uploaded video.\",\n \"id\": \"ActivityContentDetailsUpload\",\n + \ \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the uploaded video.\"\n }\n }\n },\n \"CommentThreadReplies\": + {\n \"description\": \"Comments written in (direct or indirect) reply + to the top level comment.\",\n \"id\": \"CommentThreadReplies\",\n \"type\": + \"object\",\n \"properties\": {\n \"comments\": {\n \"type\": + \"array\",\n \"description\": \"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.\",\n \"items\": + {\n \"$ref\": \"Comment\"\n }\n }\n }\n },\n + \ \"VideoAgeGating\": {\n \"properties\": {\n \"restricted\": + {\n \"description\": \"Age-restricted trailers. For redband trailers + and adult-rated video-games. Only users aged 18+ can view the content. The + the field is true the content is restricted to viewers aged 18+. Otherwise + The field won't be present.\",\n \"type\": \"boolean\"\n },\n + \ \"videoGameRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n + \ \"m17Plus\"\n ],\n \"type\": \"string\",\n \"description\": + \"Video game rating, if any.\"\n },\n \"alcoholContent\": {\n + \ \"type\": \"boolean\",\n \"description\": \"Indicates whether + or not the video has alcoholic beverage content. Only users of legal purchasing + age in a particular country, as identified by ICAP, can view the content.\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAgeGating\"\n + \ },\n \"ActivityContentDetailsSocial\": {\n \"description\": \"Details + about a social network post.\",\n \"type\": \"object\",\n \"properties\": + {\n \"imageUrl\": {\n \"description\": \"An image of the post's + author.\",\n \"type\": \"string\"\n },\n \"author\": + {\n \"description\": \"The author of the social network post.\",\n + \ \"type\": \"string\"\n },\n \"resourceId\": {\n \"description\": + \"The resourceId object encapsulates information that identifies the resource + associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n + \ },\n \"type\": {\n \"enum\": [\n \"unspecified\",\n + \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n + \ ],\n \"description\": \"The name of the social network.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"referenceUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The URL of the social network post.\"\n }\n + \ },\n \"id\": \"ActivityContentDetailsSocial\"\n },\n \"ChannelSectionContentDetails\": + {\n \"description\": \"Details about a channelsection, including playlists + and channels.\",\n \"properties\": {\n \"playlists\": {\n \"type\": + \"array\",\n \"description\": \"The playlist ids for type single_playlist + and multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n },\n + \ \"channels\": {\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"type\": \"array\",\n \"description\": \"The + channel ids for type multiple_channels.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"ChannelSectionContentDetails\"\n },\n \"MembershipsLevel\": + {\n \"id\": \"MembershipsLevel\",\n \"type\": \"object\",\n \"properties\": + {\n \"kind\": {\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevel\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube assigns to uniquely identify the memberships level.\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": + \"MembershipsLevelSnippet\",\n \"description\": \"The snippet object + contains basic details about the level.\"\n }\n },\n \"description\": + \"A *membershipsLevel* resource represents an offer made by YouTube creators + for their fans. Users can become members of the channel by joining one of + the available levels. They will provide recurring monetary support and receives + special benefits.\"\n },\n \"VideoStatistics\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoStatistics\",\n \"description\": \"Statistics about + the video, such as the number of times the video was viewed or liked.\",\n + \ \"properties\": {\n \"favoriteCount\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of users who currently have the video marked as a favorite video.\"\n + \ },\n \"commentCount\": {\n \"format\": \"uint64\",\n + \ \"type\": \"string\",\n \"description\": \"The number of + comments for the video.\"\n },\n \"likeCount\": {\n \"format\": + \"uint64\",\n \"description\": \"The number of users who have indicated + that they liked the video by giving it a positive rating.\",\n \"type\": + \"string\"\n },\n \"dislikeCount\": {\n \"description\": + \"The number of users who have indicated that they disliked the video by giving + it a negative rating.\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n },\n \"viewCount\": {\n \"type\": \"string\",\n + \ \"description\": \"The number of times the video has been viewed.\",\n + \ \"format\": \"uint64\"\n }\n }\n },\n \"Channel\": + {\n \"description\": \"A *channel* resource contains information about + a YouTube channel.\",\n \"id\": \"Channel\",\n \"properties\": {\n + \ \"localizations\": {\n \"type\": \"object\",\n \"description\": + \"Localizations for different languages\",\n \"additionalProperties\": + {\n \"$ref\": \"ChannelLocalization\"\n }\n },\n + \ \"topicDetails\": {\n \"description\": \"The topicDetails + object encapsulates information about Freebase topics associated with the + channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel.\"\n },\n \"auditDetails\": + {\n \"description\": \"The auditionDetails object encapsulates channel + data that is relevant for YouTube Partners during the audition process.\",\n + \ \"$ref\": \"ChannelAuditDetails\"\n },\n \"brandingSettings\": + {\n \"description\": \"The brandingSettings object encapsulates information + about the branding of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n + \ },\n \"contentOwnerDetails\": {\n \"$ref\": \"ChannelContentOwnerDetails\",\n + \ \"description\": \"The contentOwnerDetails object encapsulates channel + data that is relevant for YouTube Partners linked with the channel.\"\n },\n + \ \"status\": {\n \"$ref\": \"ChannelStatus\",\n \"description\": + \"The status object encapsulates information about the privacy status of the + channel.\"\n },\n \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n + \ \"description\": \"The statistics object encapsulates statistics + for the channel.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#channel\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object encapsulates information about the channel's content.\",\n + \ \"$ref\": \"ChannelContentDetails\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the channel, such as its + title, description, and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n + \ },\n \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n + \ \"description\": \"The conversionPings object encapsulates information + about conversion pings that need to be respected by the channel.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"VideoSuggestionsTagSuggestion\": + {\n \"type\": \"object\",\n \"properties\": {\n \"tag\": + {\n \"type\": \"string\",\n \"description\": \"The keyword + tag suggested for the video.\"\n },\n \"categoryRestricts\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"A set of video categories for which the tag is + relevant. You can use this information to display appropriate tag suggestions + based on the video category that the video uploader associates with the video. + By default, tag suggestions are relevant for all categories if there are no + restricts defined for the keyword.\",\n \"type\": \"array\"\n }\n + \ },\n \"description\": \"A single tag suggestion with it's relevance + information.\",\n \"id\": \"VideoSuggestionsTagSuggestion\"\n },\n + \ \"IngestionInfo\": {\n \"type\": \"object\",\n \"description\": + \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n + \ \"id\": \"IngestionInfo\",\n \"properties\": {\n \"rtmpsBackupIngestionAddress\": + {\n \"type\": \"string\",\n \"description\": \"This ingestion + url may be used instead of backupIngestionAddress in order to stream via RTMPS. + Not applicable to non-RTMP streams.\"\n },\n \"ingestionAddress\": + {\n \"type\": \"string\",\n \"description\": \"The primary + ingestion URL that you should use to stream video to YouTube. You must stream + video to this URL. Depending on which application or tool you use to encode + your video stream, you may need to enter the stream URL and stream name separately + or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* + \"\n },\n \"rtmpsIngestionAddress\": {\n \"description\": + \"This ingestion url may be used instead of ingestionAddress in order to stream + via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n + \ },\n \"backupIngestionAddress\": {\n \"type\": \"string\",\n + \ \"description\": \"The backup ingestion URL that you should use + to stream video to YouTube. You have the option of simultaneously streaming + the content that you are sending to the ingestionAddress to this URL.\"\n + \ },\n \"streamName\": {\n \"description\": \"The stream + name that YouTube assigns to the video stream.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"LiveStream\": {\n \"type\": \"object\",\n + \ \"description\": \"A live stream describes a live ingestion point.\",\n + \ \"id\": \"LiveStream\",\n \"properties\": {\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the stream.\",\n \"annotations\": {\n \"required\": [\n + \ \"youtube.liveStreams.update\"\n ]\n }\n + \ },\n \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": + \"The cdn object defines the live stream's content delivery network (CDN) + settings. These settings provide details about the manner in which you stream + your content to YouTube.\"\n },\n \"contentDetails\": {\n \"description\": + \"The content_details object contains information about the stream, including + the closed captions ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n + \ },\n \"snippet\": {\n \"$ref\": \"LiveStreamSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the stream, including its channel, title, and description.\"\n },\n + \ \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n \"description\": + \"The status object contains information about live stream's status.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#liveStream\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n }\n + \ }\n },\n \"GeoPoint\": {\n \"properties\": {\n \"altitude\": + {\n \"description\": \"Altitude above the reference ellipsoid, in + meters.\",\n \"type\": \"number\",\n \"format\": \"double\"\n + \ },\n \"latitude\": {\n \"description\": \"Latitude + in degrees.\",\n \"type\": \"number\",\n \"format\": \"double\"\n + \ },\n \"longitude\": {\n \"format\": \"double\",\n + \ \"description\": \"Longitude in degrees.\",\n \"type\": + \"number\"\n }\n },\n \"id\": \"GeoPoint\",\n \"description\": + \"Geographical coordinates of a point, in WGS84.\",\n \"type\": \"object\"\n + \ },\n \"SuperChatEventListResponse\": {\n \"properties\": {\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"nextPageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the next page + in the result set.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n + \ },\n \"type\": \"array\",\n \"description\": \"A + list of Super Chat purchases that match the request criteria.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#superChatEventListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"SuperChatEventListResponse\"\n },\n \"ChannelConversionPing\": {\n + \ \"properties\": {\n \"conversionUrl\": {\n \"type\": + \"string\",\n \"description\": \"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.\"\n },\n \"context\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n + \ \"cview\"\n ],\n \"description\": \"Defines + the context of the ping.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"ChannelConversionPing\",\n \"description\": + \"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.\"\n },\n \"SubscriptionListResponse\": {\n \"id\": \"SubscriptionListResponse\",\n + \ \"properties\": {\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#subscriptionListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n + \ \"description\": \"A list of subscriptions that match the request + criteria.\",\n \"items\": {\n \"$ref\": \"Subscription\"\n + \ }\n }\n },\n \"type\": \"object\"\n },\n \"ResourceId\": + {\n \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the referred resource, if that resource is a video. This property is only + present if the resourceId.kind value is youtube#video.\"\n },\n \"kind\": + {\n \"description\": \"The type of the API resource.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a channel. This property is only present if the resourceId.kind + value is youtube#channel.\",\n \"type\": \"string\"\n },\n + \ \"playlistId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the referred resource, if that resource is a playlist. + This property is only present if the resourceId.kind value is youtube#playlist.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"description\": \"A resource id is a generic reference that points + to another YouTube resource.\",\n \"id\": \"ResourceId\"\n },\n \"ChannelTopicDetails\": + {\n \"properties\": {\n \"topicIds\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"A list of Freebase topic IDs associated with + the channel. You can retrieve information about each topic using the Freebase + Topic API.\"\n },\n \"topicCategories\": {\n \"description\": + \"A list of Wikipedia URLs that describe the channel's content.\",\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n + \ }\n },\n \"description\": \"Freebase topic information related + to the channel.\",\n \"type\": \"object\",\n \"id\": \"ChannelTopicDetails\"\n + \ },\n \"VideoLocalization\": {\n \"type\": \"object\",\n \"properties\": + {\n \"description\": {\n \"description\": \"Localized version + of the video's description.\",\n \"type\": \"string\"\n },\n + \ \"title\": {\n \"description\": \"Localized version of the + video's title.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"VideoLocalization\",\n \"description\": \"Localized versions of certain + video properties (e.g. title).\"\n },\n \"VideoLiveStreamingDetails\": + {\n \"properties\": {\n \"actualStartTime\": {\n \"description\": + \"The time that the broadcast actually started. This value will not be available + until the broadcast begins.\",\n \"type\": \"string\",\n \"format\": + \"date-time\"\n },\n \"scheduledStartTime\": {\n \"description\": + \"The time that the broadcast is scheduled to begin.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"scheduledEndTime\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The time that the broadcast is scheduled to end. + If the value is empty or the property is not present, then the broadcast is + scheduled to contiue indefinitely.\"\n },\n \"actualEndTime\": + {\n \"type\": \"string\",\n \"description\": \"The time + that the broadcast actually ended. This value will not be available until + the broadcast is over.\",\n \"format\": \"date-time\"\n },\n + \ \"activeLiveChatId\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the currently active live chat attached to this video. This field + is filled only if the video is a currently live broadcast that has live chat. + Once the broadcast transitions to complete this field will be removed and + the live chat closed down. For persistent broadcasts that live chat id will + no longer be tied to this video but rather to the new video being displayed + at the persistent page.\"\n },\n \"concurrentViewers\": {\n + \ \"format\": \"uint64\",\n \"description\": \"The number + of viewers currently watching the broadcast. The property and its value will + be present if the broadcast has current viewers and the broadcast owner has + not hidden the viewcount for the video. Note that YouTube stops tracking the + number of concurrent viewers for a broadcast when the broadcast ends. So, + this property would not identify the number of viewers watching an archived + video of a live broadcast that already ended.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Details + about the live streaming metadata.\",\n \"id\": \"VideoLiveStreamingDetails\"\n + \ },\n \"PlaylistItemListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"PlaylistItemListResponse\",\n \"properties\": {\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#playlistItemListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"items\": {\n \"description\": \"A list of playlist items + that match the request criteria.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"PlaylistItem\"\n }\n },\n \"etag\": + {\n \"type\": \"string\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n }\n }\n },\n \"VideoProcessingDetailsProcessingProgress\": + {\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n + \ \"properties\": {\n \"partsTotal\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"An estimate + of the total number of parts that need to be processed for the video. The + number may be updated with more precise estimates while YouTube processes + the video.\"\n },\n \"partsProcessed\": {\n \"format\": + \"uint64\",\n \"description\": \"The number of parts of the video + that YouTube has already processed. You can estimate the percentage of the + video that YouTube has already processed by calculating: 100 * parts_processed + / parts_total Note that since the estimated number of parts could increase + without a corresponding increase in the number of parts that have already + been processed, it is possible that the calculated progress could periodically + decrease while YouTube processes a video.\",\n \"type\": \"string\"\n + \ },\n \"timeLeftMs\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"An estimate of the amount of time, + in millseconds, that YouTube needs to finish processing the video.\"\n }\n + \ },\n \"description\": \"Video processing progress and completion + time estimate.\"\n },\n \"InvideoPosition\": {\n \"description\": + \"Describes the spatial position of a visual widget inside a video. It is + a union of various position types, out of which only will be set one.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"cornerPosition\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n + \ \"bottomRight\"\n ],\n \"description\": \"Describes + in which corner of the video the visual widget will appear.\",\n \"type\": + \"string\"\n },\n \"type\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"corner\"\n ],\n \"enumDescriptions\": + [\n \"\"\n ],\n \"description\": \"Defines the + position type.\"\n }\n },\n \"id\": \"InvideoPosition\"\n + \ },\n \"MembershipsDurationAtLevel\": {\n \"properties\": {\n \"memberTotalDurationMonths\": + {\n \"description\": \"The cumulative time the user has been a member + for the given level in complete months (the time is rounded down to the nearest + integer).\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n + \ },\n \"memberSince\": {\n \"description\": \"The date + and time when the user became a continuous member for the given level.\",\n + \ \"type\": \"string\"\n },\n \"level\": {\n \"description\": + \"Pricing level ID.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"MembershipsDurationAtLevel\",\n \"type\": \"object\"\n + \ },\n \"CommentSnippet\": {\n \"type\": \"object\",\n \"id\": + \"CommentSnippet\",\n \"description\": \"Basic details about a comment, + such as its author and text.\",\n \"properties\": {\n \"textDisplay\": + {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"authorDisplayName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the user who posted the comment.\"\n },\n \"updatedAt\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the comment was last updated.\",\n \"format\": \"date-time\"\n + \ },\n \"videoId\": {\n \"description\": \"The ID of + the video the comment refers to, if any.\",\n \"type\": \"string\"\n + \ },\n \"moderationStatus\": {\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ],\n \"description\": \"The comment's moderation status. + Will not be set if the comments were requested through the id filter.\",\n + \ \"enumDescriptions\": [\n \"The comment is available + for public display.\",\n \"The comment is awaiting review by a + moderator.\",\n \"\",\n \"The comment is unfit for display.\"\n + \ ],\n \"type\": \"string\"\n },\n \"publishedAt\": + {\n \"description\": \"The date and time when the comment was originally + published.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n + \ },\n \"viewerRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"none\",\n \"like\",\n \"dislike\"\n + \ ],\n \"description\": \"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.\"\n },\n + \ \"canRate\": {\n \"description\": \"Whether the current viewer + can rate this comment.\",\n \"type\": \"boolean\"\n },\n \"likeCount\": + {\n \"type\": \"integer\",\n \"description\": \"The total + number of likes this comment has received.\",\n \"format\": \"uint32\"\n + \ },\n \"textOriginal\": {\n \"description\": \"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.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"authorChannelUrl\": + {\n \"type\": \"string\",\n \"description\": \"Link to the + author's YouTube channel, if any.\"\n },\n \"parentId\": {\n + \ \"description\": \"The unique id of the parent comment, only set + for replies.\",\n \"type\": \"string\"\n },\n \"authorProfileImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL for + the avatar of the user who posted the comment.\"\n },\n \"authorChannelId\": + {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n }\n }\n + \ },\n \"VideoGetRatingResponse\": {\n \"id\": \"VideoGetRatingResponse\",\n + \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoRating\"\n + \ },\n \"description\": \"A list of ratings that match the + request criteria.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#videoGetRatingResponse\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"Cuepoint\": + {\n \"id\": \"Cuepoint\",\n \"description\": \"Note that there may + be a 5-second end-point resolution issue. For instance, if a cuepoint comes + in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. + This is an artifact of HLS.\",\n \"properties\": {\n \"insertionOffsetTimeMs\": + {\n \"type\": \"string\",\n \"format\": \"int64\",\n \"description\": + \"The time when the cuepoint should be inserted by offset to the broadcast + actual start time.\"\n },\n \"walltimeMs\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + wall clock time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms + and walltime_ms may be set at a time.\"\n },\n \"durationSecs\": + {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The duration of this cuepoint.\"\n },\n \"etag\": {\n \"type\": + \"string\"\n },\n \"cueType\": {\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n + \ \"cueTypeAd\"\n ]\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The identifier for cuepoint resource.\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": + {\n \"id\": \"LiveBroadcastStatus\",\n \"properties\": {\n \"liveBroadcastPriority\": + {\n \"enumDescriptions\": [\n \"\",\n \"Low + priority broadcast: for low view count HoAs or other low priority broadcasts.\",\n + \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n + \ \"High priority broadcast: for high profile HoAs, like PixelCorp + ones.\"\n ],\n \"description\": \"Priority of the live broadcast + event (internal state).\",\n \"type\": \"string\",\n \"enum\": + [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n + \ \"normal\",\n \"high\"\n ]\n },\n \"recordingStatus\": + {\n \"enumDescriptions\": [\n \"No value or the value + is unknown.\",\n \"The recording has not yet been started.\",\n + \ \"The recording is currently on.\",\n \"The recording + is completed, and cannot be started again.\"\n ],\n \"enum\": + [\n \"liveBroadcastRecordingStatusUnspecified\",\n \"notRecording\",\n + \ \"recording\",\n \"recorded\"\n ],\n \"description\": + \"The broadcast's recording status.\",\n \"type\": \"string\"\n },\n + \ \"lifeCycleStatus\": {\n \"enumDescriptions\": [\n \"No + value or the value is unknown.\",\n \"Incomplete settings, but + otherwise valid\",\n \"Complete settings\",\n \"Visible + only to partner, may need special UI treatment\",\n \"Viper is + recording; this means the \\\"clock\\\" is running\",\n \"The broadcast + is finished.\",\n \"This broadcast was removed by admin action\",\n + \ \"Transition into TESTING has been requested\",\n \"Transition + into LIVE has been requested\"\n ],\n \"description\": \"The + broadcast's status. The status can be updated using the API's liveBroadcasts.transition + method.\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n + \ \"created\",\n \"ready\",\n \"testing\",\n + \ \"live\",\n \"complete\",\n \"revoked\",\n + \ \"testStarting\",\n \"liveStarting\"\n ],\n + \ \"type\": \"string\"\n },\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\",\n \"description\": \"This field + will be set to True if the creator declares the broadcast to be kids only: + go/live-cw-work.\"\n },\n \"madeForKids\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the broadcast is made for + kids or not, decided by YouTube instead of the creator. This field is read + only.\"\n },\n \"privacyStatus\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"description\": + \"The broadcast's privacy status. Note that the broadcast represents exactly + one YouTube video, so the privacy settings are identical to those supported + for videos. In addition, you can set this field by modifying the broadcast + resource or by setting the privacyStatus field of the corresponding video + resource.\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"Live broadcast state.\"\n },\n \"ActivityContentDetailsPlaylistItem\": + {\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"type\": + \"object\",\n \"description\": \"Information about a new playlist item.\",\n + \ \"properties\": {\n \"playlistItemId\": {\n \"description\": + \"ID of the item within the playlist.\",\n \"type\": \"string\"\n + \ },\n \"playlistId\": {\n \"type\": \"string\",\n \"description\": + \"The value that YouTube uses to uniquely identify the playlist.\"\n },\n + \ \"resourceId\": {\n \"description\": \"The resourceId object + contains information about the resource that was added to the playlist.\",\n + \ \"$ref\": \"ResourceId\"\n }\n }\n },\n \"MembershipsLevelListResponse\": + {\n \"properties\": {\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"description\": \"A + list of pricing levels offered by a creator to the fans.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n + \ }\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"MembershipsLevelListResponse\",\n \"type\": \"object\"\n + \ },\n \"ChannelBrandingSettings\": {\n \"id\": \"ChannelBrandingSettings\",\n + \ \"description\": \"Branding properties of a YouTube channel.\",\n \"type\": + \"object\",\n \"properties\": {\n \"channel\": {\n \"description\": + \"Branding properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n + \ },\n \"hints\": {\n \"description\": \"Additional + experimental branding properties.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"PropertyValue\"\n }\n },\n \"image\": + {\n \"description\": \"Branding properties for branding images.\",\n + \ \"$ref\": \"ImageSettings\"\n },\n \"watch\": {\n + \ \"description\": \"Branding properties for the watch page.\",\n + \ \"$ref\": \"WatchSettings\"\n }\n }\n },\n \"LiveChatBanSnippet\": + {\n \"properties\": {\n \"liveChatId\": {\n \"type\": + \"string\",\n \"description\": \"The chat this ban is pertinent to.\"\n + \ },\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n + \ },\n \"banDurationSeconds\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The duration + of a ban, only filled if the ban has type TEMPORARY.\"\n },\n \"type\": + {\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n + \ \"temporary\"\n ],\n \"enumDescriptions\": [\n + \ \"An invalid ban type.\",\n \"A permanent ban.\",\n + \ \"A temporary ban.\"\n ],\n \"description\": + \"The type of ban.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"LiveChatBanSnippet\"\n },\n + \ \"RelatedEntity\": {\n \"properties\": {\n \"entity\": {\n + \ \"$ref\": \"Entity\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"RelatedEntity\"\n },\n \"Comment\": {\n \"type\": + \"object\",\n \"description\": \"A *comment* represents a single YouTube + comment.\",\n \"properties\": {\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the comment.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the comment.\",\n \"$ref\": + \"CommentSnippet\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": + {\n \"default\": \"youtube#comment\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"Comment\"\n + \ },\n \"I18nRegionListResponse\": {\n \"id\": \"I18nRegionListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": + \"A list of regions where YouTube is available. In this map, the i18n region + ID is the map key, and its value is the corresponding i18nRegion resource.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"I18nRegion\"\n }\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n + \ \"default\": \"youtube#i18nRegionListResponse\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n }\n },\n \"ActivityContentDetailsSubscription\": + {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the resource that the user subscribed to.\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Information + about a channel that a user subscribed to.\",\n \"id\": \"ActivityContentDetailsSubscription\"\n + \ },\n \"Thumbnail\": {\n \"type\": \"object\",\n \"description\": + \"A thumbnail is an image representing a YouTube resource.\",\n \"id\": + \"Thumbnail\",\n \"properties\": {\n \"width\": {\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"(Optional) Width of the thumbnail image.\"\n },\n \"height\": + {\n \"description\": \"(Optional) Height of the thumbnail image.\",\n + \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n + \ \"url\": {\n \"description\": \"The thumbnail image's URL.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"LiveBroadcastListResponse\": + {\n \"id\": \"LiveBroadcastListResponse\",\n \"properties\": {\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"description\": \"A + list of broadcasts that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"type\": + \"array\"\n },\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#liveBroadcastListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n }\n },\n \"type\": + \"object\"\n },\n \"SuperChatEventSnippet\": {\n \"id\": \"SuperChatEventSnippet\",\n + \ \"properties\": {\n \"supporterDetails\": {\n \"description\": + \"Details about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n + \ },\n \"displayString\": {\n \"description\": \"A rendered + string that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). + The string is rendered for the given language.\",\n \"type\": \"string\"\n + \ },\n \"isSuperStickerEvent\": {\n \"type\": \"boolean\",\n + \ \"description\": \"True if this event is a Super Sticker event.\"\n + \ },\n \"commentText\": {\n \"description\": \"The text + contents of the comment left by the user.\",\n \"type\": \"string\"\n + \ },\n \"currency\": {\n \"description\": \"The currency + in which the purchase was made. ISO 4217.\",\n \"type\": \"string\"\n + \ },\n \"superStickerMetadata\": {\n \"description\": + \"If this event is a Super Sticker event, this field will contain metadata + about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n + \ },\n \"amountMicros\": {\n \"description\": \"The + purchase amount, in micros of the purchase currency. e.g., 1 is represented + as 1000000.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n + \ },\n \"createdAt\": {\n \"type\": \"string\",\n \"format\": + \"date-time\",\n \"description\": \"The date and time when the event + occurred.\"\n },\n \"messageType\": {\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The tier for the paid message, which is based on the amount of money spent + to purchase the message.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"Channel id where the event occurred.\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"VideoPlayer\": + {\n \"id\": \"VideoPlayer\",\n \"description\": \"Player to be used + for a video playback.\",\n \"properties\": {\n \"embedHeight\": + {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n + \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": + \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\"\n + \ },\n \"embedWidth\": {\n \"type\": \"string\",\n \"description\": + \"The embed width\",\n \"format\": \"int64\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"LiveChatMessageDeletedDetails\": + {\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"properties\": + {\n \"deletedMessageId\": {\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"ThumbnailSetResponse\": + {\n \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"items\": + {\n \"description\": \"A list of thumbnails.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n + \ }\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n + \ \"default\": \"youtube#thumbnailSetResponse\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"ThumbnailSetResponse\"\n + \ },\n \"VideoMonetizationDetails\": {\n \"description\": \"Details + about monetization of a YouTube Video.\",\n \"id\": \"VideoMonetizationDetails\",\n + \ \"properties\": {\n \"access\": {\n \"description\": + \"The value of access indicates whether the video can be monetized or not.\",\n + \ \"$ref\": \"AccessPolicy\"\n }\n },\n \"type\": + \"object\"\n },\n \"ThirdPartyLinkListResponse\": {\n \"id\": \"ThirdPartyLinkListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"ThirdPartyLink\"\n }\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"ChannelSnippet\": {\n \"description\": \"Basic details about a + channel, including title, description and thumbnails.\",\n \"type\": + \"object\",\n \"properties\": {\n \"localized\": {\n \"$ref\": + \"ChannelLocalization\",\n \"description\": \"Localized title and + description, read-only.\"\n },\n \"thumbnails\": {\n \"description\": + \"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. When displaying thumbnails + in your application, make sure that your code uses the image URLs exactly + as they are returned in API responses. For example, your application should + not use the http domain instead of the https domain in a URL returned in an + API response. Beginning in July 2018, channel thumbnail URLs will only be + available in the https domain, which is how the URLs appear in API responses. + After that time, you might see broken images in your application if it tries + to load YouTube images from the http domain. Thumbnail images might be empty + for newly created channels and might take up to one day to populate.\",\n + \ \"$ref\": \"ThumbnailDetails\"\n },\n \"country\": + {\n \"type\": \"string\",\n \"description\": \"The country + of the channel.\"\n },\n \"publishedAt\": {\n \"type\": + \"string\",\n \"description\": \"The date and time that the channel + was created.\",\n \"format\": \"date-time\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The language + of the channel's default title and description.\"\n },\n \"customUrl\": + {\n \"type\": \"string\",\n \"description\": \"The custom + url of the channel.\"\n },\n \"title\": {\n \"description\": + \"The channel's title.\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"description\": \"The description of the channel.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"ChannelSnippet\"\n },\n + \ \"CaptionListResponse\": {\n \"id\": \"CaptionListResponse\",\n \"type\": + \"object\",\n \"properties\": {\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#captionListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#captionListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Caption\"\n },\n + \ \"description\": \"A list of captions that match the request criteria.\"\n + \ }\n }\n },\n \"MemberSnippet\": {\n \"id\": \"MemberSnippet\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"creatorChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The id of + the channel that's offering memberships.\"\n },\n \"membershipsDetails\": + {\n \"description\": \"Details about the user's membership.\",\n + \ \"$ref\": \"MembershipsDetails\"\n },\n \"memberDetails\": + {\n \"description\": \"Details about the member.\",\n \"$ref\": + \"ChannelProfileDetails\"\n }\n }\n },\n \"ChannelSettings\": + {\n \"id\": \"ChannelSettings\",\n \"description\": \"Branding properties + for the channel view.\",\n \"properties\": {\n \"featuredChannelsUrls\": + {\n \"type\": \"array\",\n \"description\": \"The list of + featured channels.\",\n \"items\": {\n \"type\": \"string\"\n + \ }\n },\n \"country\": {\n \"description\": + \"The country of the channel.\",\n \"type\": \"string\"\n },\n + \ \"title\": {\n \"description\": \"Specifies the channel title.\",\n + \ \"type\": \"string\"\n },\n \"showRelatedChannels\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + related channels should be proposed.\"\n },\n \"profileColor\": + {\n \"description\": \"A prominent color that can be rendered on + this channel page.\",\n \"type\": \"string\"\n },\n \"defaultTab\": + {\n \"type\": \"string\",\n \"description\": \"Which content + tab users should see when viewing the channel.\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\"\n },\n \"unsubscribedTrailer\": + {\n \"type\": \"string\",\n \"description\": \"The trailer + of the channel, for users that are not subscribers.\"\n },\n \"moderateComments\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + user-submitted comments left on the channel page need to be approved by the + channel owner to be publicly visible.\"\n },\n \"showBrowseView\": + {\n \"description\": \"Whether the tab to browse the videos should + be displayed.\",\n \"type\": \"boolean\"\n },\n \"featuredChannelsTitle\": + {\n \"description\": \"Title for the featured channels tab.\",\n + \ \"type\": \"string\"\n },\n \"keywords\": {\n \"description\": + \"Lists keywords associated with the channel, comma-separated.\",\n \"type\": + \"string\"\n },\n \"trackingAnalyticsAccountId\": {\n \"type\": + \"string\",\n \"description\": \"The ID for a Google Analytics account + to track and measure traffic to the channels.\"\n },\n \"description\": + {\n \"description\": \"Specifies the channel description.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveStreamListResponse\": + {\n \"id\": \"LiveStreamListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"description\": \"A list of live streams that match the request + criteria.\",\n \"type\": \"array\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\"\n },\n \"kind\": {\n \"default\": \"youtube#liveStreamListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n + \ }\n }\n },\n \"VideoSnippet\": {\n \"properties\": + {\n \"description\": {\n \"description\": \"The video's description. + @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": + \"string\"\n },\n \"defaultLanguage\": {\n \"description\": + \"The language of the videos's default snippet.\",\n \"type\": \"string\"\n + \ },\n \"liveBroadcastContent\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"The live + broadcast is upcoming.\",\n \"The live broadcast is active.\",\n + \ \"The live broadcast has been completed.\"\n ],\n \"enum\": + [\n \"none\",\n \"upcoming\",\n \"live\",\n + \ \"completed\"\n ],\n \"description\": \"Indicates + if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" if + the video is not an upcoming/active live broadcast.\"\n },\n \"categoryId\": + {\n \"type\": \"string\",\n \"description\": \"The YouTube + video category associated with the video.\"\n },\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel that the video belongs to.\"\n },\n \"localized\": + {\n \"description\": \"Localized snippet selected with the hl parameter. + If no such localization exists, this field is populated with the default snippet. + (Read-only)\",\n \"$ref\": \"VideoLocalization\"\n },\n \"tags\": + {\n \"type\": \"array\",\n \"description\": \"A list of + keyword tags associated with the video. Tags may contain spaces.\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"publishedAt\": + {\n \"description\": \"The date and time when the video was uploaded.\",\n + \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n + \ \"channelId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the channel that the video was uploaded to.\",\n + \ \"type\": \"string\"\n },\n \"defaultAudioLanguage\": + {\n \"description\": \"The default_audio_language property specifies + the language spoken in the video's default audio track.\",\n \"type\": + \"string\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"title\": {\n \"description\": + \"The video's title. @mutable youtube.videos.insert youtube.videos.update\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoSnippet\",\n + \ \"description\": \"Basic details about a video, including title, description, + uploader, thumbnails and category.\",\n \"type\": \"object\"\n },\n + \ \"VideoProjectDetails\": {\n \"properties\": {},\n \"type\": + \"object\",\n \"description\": \"DEPRECATED. b/157517979: This part was + never populated after it was added. However, it sees non-zero traffic because + there is generated client code in the wild that refers to it [1]. We keep + this field and do NOT remove it because otherwise V3 would return an error + when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"id\": \"VideoProjectDetails\"\n },\n \"ChannelStatus\": {\n + \ \"properties\": {\n \"madeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"isLinked\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n + \ },\n \"privacyStatus\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"description\": \"Privacy + status of the channel.\",\n \"type\": \"string\"\n },\n \"longUploadsStatus\": + {\n \"description\": \"The long uploads status of this channel. See + https://support.google.com/youtube/answer/71673 for more information.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n + \ \"disallowed\"\n ],\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"JSON template for the status + part of a channel.\",\n \"type\": \"object\",\n \"id\": \"ChannelStatus\"\n + \ },\n \"LiveChatMessageRetractedDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\"\n + \ },\n \"VideoTopicDetails\": {\n \"type\": \"object\",\n \"properties\": + {\n \"topicCategories\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"A list of Wikipedia + URLs that provide a high-level description of the video's content.\",\n \"type\": + \"array\"\n },\n \"topicIds\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of Freebase topic IDs that are centrally associated with the video. + These are topics that are centrally featured in the video, and it can be said + that the video is mainly about each of these. You can retrieve information + about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase + Topic API.\"\n },\n \"relevantTopicIds\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"Similar to topic_id, except that these topics are merely relevant to the + video. These are topics that may be mentioned in, or appear in the video. + You can retrieve information about each topic using Freebase Topic API.\",\n + \ \"type\": \"array\"\n }\n },\n \"id\": \"VideoTopicDetails\",\n + \ \"description\": \"Freebase topic information related to the video.\"\n + \ },\n \"LiveChatSuperStickerDetails\": {\n \"id\": \"LiveChatSuperStickerDetails\",\n + \ \"properties\": {\n \"superStickerMetadata\": {\n \"$ref\": + \"SuperStickerMetadata\",\n \"description\": \"Information about + the Super Sticker.\"\n },\n \"tier\": {\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The tier in which the amount belongs. Lower amounts belong to lower tiers. + The lowest tier is 1.\"\n },\n \"amountDisplayString\": {\n + \ \"type\": \"string\",\n \"description\": \"A rendered string + that displays the fund amount and currency to the user.\"\n },\n \"amountMicros\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n + \ },\n \"currency\": {\n \"description\": \"The currency + in which the purchase was made.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"MemberListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": + {\n \"default\": \"youtube#memberListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"Member\"\n },\n \"description\": + \"A list of members that match the request criteria.\",\n \"type\": + \"array\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"MemberListResponse\"\n + \ },\n \"ChannelSectionSnippet\": {\n \"description\": \"Basic details + about a channel section, including title, style and position.\",\n \"id\": + \"ChannelSectionSnippet\",\n \"type\": \"object\",\n \"properties\": + {\n \"style\": {\n \"description\": \"The style of the channel + section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n + \ \"horizontalRow\",\n \"verticalList\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"localized\": {\n \"description\": \"Localized title, read-only.\",\n + \ \"$ref\": \"ChannelSectionLocalization\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The channel + section's title for multiple_playlists and multiple_channels.\"\n },\n + \ \"defaultLanguage\": {\n \"description\": \"The language + of the channel section's default title and description.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel that published the channel section.\"\n },\n \"position\": + {\n \"format\": \"uint32\",\n \"description\": \"The position + of the channel section in the channel.\",\n \"type\": \"integer\"\n + \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"nfrcRating\": {\n \"enum\": [\n - \ \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Bulgarian National Film Center.\",\n \"type\": \"string\"\n - \ },\n \"mekuRating\": {\n \"description\": \"The video's - rating from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual - Institute).\",\n \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"mekuUnspecified\",\n \"mekuS\",\n \"meku7\",\n - \ \"meku12\",\n \"meku16\",\n \"meku18\",\n - \ \"mekuUnrated\"\n ]\n }\n },\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\",\n \"type\": \"object\"\n },\n \"IngestionInfo\": - {\n \"description\": \"Describes information necessary for ingesting - an RTMP, HTTP, or SRT stream.\",\n \"properties\": {\n \"ingestionAddress\": - {\n \"description\": \"The primary ingestion URL that you should - use to stream video to YouTube. You must stream video to this URL. Depending - on which application or tool you use to encode your video stream, you may - need to enter the stream URL and stream name separately or you may need to - concatenate them in the following format: *STREAM_URL/STREAM_NAME* \",\n \"type\": - \"string\"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of backupIngestionAddress in order to stream via RTMPS. Not applicable to - non-RTMP streams.\"\n },\n \"backupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The backup ingestion URL that you - should use to stream video to YouTube. You have the option of simultaneously - streaming the content that you are sending to the ingestionAddress to this - URL.\"\n },\n \"rtmpsIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\"\n },\n \"streamName\": {\n \"description\": - \"The stream name that YouTube assigns to the video stream.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"IngestionInfo\",\n \"type\": - \"object\"\n },\n \"VideoGetRatingResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#videoGetRatingResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of ratings that match the request criteria.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoGetRatingResponse\"\n - \ },\n \"SubscriptionSubscriberSnippet\": {\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a subscription's subscriber including - title, description, channel ID and thumbnails.\",\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the subscriber.\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the subscriber.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"Thumbnails - for this subscriber.\"\n },\n \"channelId\": {\n \"type\": + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n + \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n + \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n + \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n + \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n + \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n + \ \"subscriptions\"\n ],\n \"description\": \"The + type of the channel section.\"\n }\n }\n },\n \"AbuseType\": + {\n \"id\": \"AbuseType\",\n \"type\": \"object\",\n \"properties\": + {\n \"id\": {\n \"type\": \"string\"\n }\n }\n + \ },\n \"TokenPagination\": {\n \"type\": \"object\",\n \"properties\": + {},\n \"description\": \"Stub token pagination template to suppress results.\",\n + \ \"id\": \"TokenPagination\"\n },\n \"PlaylistStatus\": {\n \"id\": + \"PlaylistStatus\",\n \"type\": \"object\",\n \"properties\": {\n + \ \"privacyStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"description\": \"The playlist's + privacy status.\"\n }\n }\n },\n \"ImageSettings\": {\n + \ \"id\": \"ImageSettings\",\n \"description\": \"Branding properties + for images associated with the channel.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"bannerTvMediumImageUrl\": {\n \"description\": + \"Banner image. TV size medium resolution (1280x720).\",\n \"type\": + \"string\"\n },\n \"bannerTabletImageUrl\": {\n \"description\": + \"Banner image. Tablet size (1707x283).\",\n \"type\": \"string\"\n + \ },\n \"bannerTabletExtraHdImageUrl\": {\n \"type\": + \"string\",\n \"description\": \"Banner image. Tablet size extra + high resolution (2560x424).\"\n },\n \"largeBrandedBannerImageImapScript\": + {\n \"description\": \"The image map script for the large banner + image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"trackingImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL for + a 1px by 1px tracking pixel that can be used to collect statistics for views + of the channel or video pages.\"\n },\n \"smallBrandedBannerImageImapScript\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The image map script for the small banner image.\"\n },\n \"bannerTvHighImageUrl\": + {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n + \ \"type\": \"string\"\n },\n \"bannerTvImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size extra high resolution (2120x1192).\"\n },\n \"bannerMobileMediumHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size medium/high resolution (960x263).\"\n },\n \"backgroundImageUrl\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The URL for the background image shown on the video watch page. The image + should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n + \ \"smallBrandedBannerImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n + \ \"description\": \"The URL for the 640px by 70px banner image that + appears below the video player in the default view of the video watch page. + The URL for the image that appears above the top-left corner of the video + player. This is a 25-pixel-high image with a flexible width that cannot exceed + 170 pixels.\"\n },\n \"bannerTabletLowImageUrl\": {\n \"description\": + \"Banner image. Tablet size low resolution (1138x188).\",\n \"type\": + \"string\"\n },\n \"bannerMobileImageUrl\": {\n \"description\": + \"Banner image. Mobile size (640x175).\",\n \"type\": \"string\"\n + \ },\n \"bannerImageUrl\": {\n \"description\": \"Banner + image. Desktop size (1060x175).\",\n \"type\": \"string\"\n },\n + \ \"bannerTabletHdImageUrl\": {\n \"type\": \"string\",\n \"description\": + \"Banner image. Tablet size high resolution (2276x377).\"\n },\n \"bannerMobileLowImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size low resolution (320x88).\"\n },\n \"bannerTvLowImageUrl\": + {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n + \ \"type\": \"string\"\n },\n \"watchIconImageUrl\": + {\n \"type\": \"string\"\n },\n \"bannerExternalUrl\": + {\n \"description\": \"This is generated when a ChannelBanner.Insert + request has succeeded for the given channel.\",\n \"type\": \"string\"\n + \ },\n \"bannerMobileHdImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"Banner image. Mobile size high resolution (1280x360).\"\n + \ },\n \"bannerMobileExtraHdImageUrl\": {\n \"description\": + \"Banner image. Mobile size high resolution (1440x395).\",\n \"type\": + \"string\"\n },\n \"largeBrandedBannerImageUrl\": {\n \"description\": + \"The URL for the 854px by 70px image that appears below the video player + in the expanded video view of the video watch page.\",\n \"$ref\": + \"LocalizedProperty\"\n }\n }\n },\n \"VideoCategorySnippet\": + {\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The video category's title.\"\n },\n \"channelId\": + {\n \"description\": \"The YouTube channel that created the video + category.\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"type\": + \"string\"\n },\n \"assignable\": {\n \"type\": \"boolean\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoCategorySnippet\",\n + \ \"description\": \"Basic details about a video category, such as its + localized title.\"\n },\n \"PlaylistLocalization\": {\n \"type\": + \"object\",\n \"description\": \"Playlist localization setting\",\n \"properties\": + {\n \"title\": {\n \"description\": \"The localized strings + for playlist's title.\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The localized + strings for playlist's description.\"\n }\n },\n \"id\": + \"PlaylistLocalization\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"memberLevelName\": + {\n \"description\": \"The name of the Level at which the viewer + is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` + of the associated membership gifting message. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\",\n \"type\": \"string\"\n },\n \"gifterChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the user that made the membership gifting purchase. This matches the `snippet.authorChannelId` + of the associated membership gifting message.\"\n },\n \"associatedMembershipGiftingMessageId\": + {\n \"description\": \"The ID of the membership gifting message that + is related to this gift membership. This ID will always refer to a message + whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n + \ },\n \"VideoContentDetailsRegionRestriction\": {\n \"description\": + \"DEPRECATED Region restriction of the video.\",\n \"id\": \"VideoContentDetailsRegionRestriction\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"allowed\": + {\n \"type\": \"array\",\n \"description\": \"A list of + region codes that identify countries where the video is viewable. If this + property is present and a country is not listed in its value, then the video + is blocked from appearing in that country. If this property is present and + contains an empty list, the video is blocked in all countries.\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"blocked\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"A list of region codes that identify countries + where the video is blocked. If this property is present and a country is not + listed in its value, then the video is viewable in that country. If this property + is present and contains an empty list, the video is viewable in all countries.\",\n + \ \"type\": \"array\"\n }\n }\n },\n \"SubscriptionSnippet\": + {\n \"description\": \"Basic details about a subscription, including + title, description and thumbnails of the subscribed item.\",\n \"type\": + \"object\",\n \"id\": \"SubscriptionSnippet\",\n \"properties\": + {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + video. 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.\"\n + \ },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"format\": \"date-time\",\n \"description\": \"The date + and time that the subscription was created.\"\n },\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"annotations\": {\n \"required\": + [\n \"youtube.subscriptions.insert\"\n ]\n },\n + \ \"description\": \"The id object contains information about the + channel that the user subscribed to.\"\n },\n \"title\": {\n + \ \"type\": \"string\",\n \"description\": \"The subscription's + title.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the subscriber's channel.\"\n },\n \"channelTitle\": {\n \"description\": + \"Channel title for the channel that the subscription belongs to.\",\n \"type\": + \"string\"\n },\n \"description\": {\n \"description\": + \"The subscription's details.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"PropertyValue\": {\n \"type\": \"object\",\n \"description\": + \"A pair Property / Value.\",\n \"properties\": {\n \"property\": + {\n \"description\": \"A property.\",\n \"type\": \"string\"\n + \ },\n \"value\": {\n \"description\": \"The property's + value.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"PropertyValue\"\n },\n \"SubscriptionSubscriberSnippet\": {\n \"type\": + \"object\",\n \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": \"The channel ID of the subscriber.\"\n - \ }\n }\n },\n \"ActivityContentDetailsSubscription\": {\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource that the user subscribed to.\"\n }\n },\n - \ \"description\": \"Information about a channel that a user subscribed - to.\",\n \"id\": \"ActivityContentDetailsSubscription\",\n \"type\": - \"object\"\n },\n \"ChannelAuditDetails\": {\n \"id\": \"ChannelAuditDetails\",\n - \ \"description\": \"The auditDetails object encapsulates channel data - that is relevant for YouTube Partners during the audit process.\",\n \"type\": - \"object\",\n \"properties\": {\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any unresolved claims.\"\n }\n }\n },\n - \ \"LiveChatMessage\": {\n \"properties\": {\n \"authorDetails\": - {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n \"description\": - \"The authorDetails object contains basic details about the user that posted - this message.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the message.\",\n \"$ref\": - \"LiveChatMessageSnippet\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatMessage\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessage\\\".\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the message.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessage\",\n \"type\": - \"object\",\n \"description\": \"A *liveChatMessage* resource represents - a chat message in a YouTube Live Chat.\"\n },\n \"SearchResultSnippet\": - {\n \"properties\": {\n \"channelTitle\": {\n \"description\": - \"The title of the channel that published the resource that the search result - identifies.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"A description of the search result.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The creation - date and time of the resource that the search result identifies.\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"A map of thumbnail images associated with the search result. 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.\"\n },\n - \ \"liveBroadcastContent\": {\n \"description\": \"It indicates - if the resource (video or channel) has upcoming/active live broadcast content. - Or it's \\\"none\\\" if there is not any upcoming/active live broadcasts.\",\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ]\n },\n - \ \"channelId\": {\n \"description\": \"The value that YouTube - uses to uniquely identify the channel that published the resource that the - search result identifies.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the search result.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about a search result, - including title, description and thumbnails of the item referenced by the - search result.\",\n \"id\": \"SearchResultSnippet\"\n },\n \"SubscriptionListResponse\": - {\n \"id\": \"SubscriptionListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"description\": - \"A list of subscriptions that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Subscription\"\n - \ }\n },\n \"prevPageToken\": {\n \"type\": + \ },\n \"title\": {\n \"description\": \"The title of + the subscriber.\",\n \"type\": \"string\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"Thumbnails + for this subscriber.\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The description of the subscriber.\"\n + \ }\n },\n \"description\": \"Basic details about a subscription's + subscriber including title, description, channel ID and thumbnails.\",\n \"id\": + \"SubscriptionSubscriberSnippet\"\n },\n \"PlaylistItemSnippet\": {\n + \ \"description\": \"Basic details about a playlist, including title, + description and thumbnails. Basic details of a YouTube Playlist item provided + by the author. Next ID: 15\",\n \"properties\": {\n \"videoOwnerChannelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel this video belongs to.\"\n },\n \"videoOwnerChannelId\": + {\n \"type\": \"string\",\n \"description\": \"Channel id + for the channel this video belongs to.\"\n },\n \"title\": {\n + \ \"description\": \"The item's title.\",\n \"type\": \"string\"\n + \ },\n \"position\": {\n \"description\": \"The order + in which the item appears in the playlist. The value uses a zero-based index, + so the first item has a position of 0, the second item has a position of 1, + and so forth.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n },\n \"playlistId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist + item is in.\",\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.playlistItems.insert\",\n + \ \"youtube.playlistItems.update\"\n ]\n }\n + \ },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The item's description.\"\n },\n \"resourceId\": + {\n \"description\": \"The id object contains information that can + be used to uniquely identify the resource that is included in the playlist + as the playlist item.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n + \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n + \ \"thumbnails\": {\n \"description\": \"A map of thumbnail + images associated with the playlist item. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"channelTitle\": {\n \"description\": \"Channel + title for the channel that the playlist item belongs to.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the user that added the item + to the playlist.\",\n \"type\": \"string\"\n },\n \"publishedAt\": + {\n \"description\": \"The date and time that the item was added + to the playlist.\",\n \"type\": \"string\",\n \"format\": + \"date-time\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"PlaylistItemSnippet\"\n },\n \"PlaylistListResponse\": {\n \"type\": + \"object\",\n \"properties\": {\n \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n }\n },\n \"AbuseType\": {\n \"properties\": {\n - \ \"id\": {\n \"type\": \"string\"\n }\n },\n \"id\": - \"AbuseType\",\n \"type\": \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"description\": \"Video processing progress and completion time - estimate.\",\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"properties\": {\n \"partsProcessed\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\"\n - \ },\n \"timeLeftMs\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"An estimate - of the amount of time, in millseconds, that YouTube needs to finish processing - the video.\"\n },\n \"partsTotal\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"An - estimate of the total number of parts that need to be processed for the video. - The number may be updated with more precise estimates while YouTube processes - the video.\"\n }\n }\n },\n \"LiveBroadcastListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of broadcasts that match the - request criteria.\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n - \ }\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveBroadcastListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n + set.\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n },\n \"kind\": {\n + \ \"default\": \"youtube#playlistListResponse\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Playlist\"\n },\n \"description\": + \"A list of playlists that match the request criteria\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n + \"Serialized EventId of the request which produced this response.\"\n }\n + \ },\n \"id\": \"PlaylistListResponse\"\n },\n \"AbuseReport\": + {\n \"properties\": {\n \"description\": {\n \"type\": + \"string\"\n },\n \"relatedEntities\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n + \ }\n },\n \"abuseTypes\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"AbuseType\"\n }\n + \ },\n \"subject\": {\n \"$ref\": \"Entity\"\n }\n + \ },\n \"id\": \"AbuseReport\",\n \"type\": \"object\"\n },\n + \ \"ActivityContentDetailsFavorite\": {\n \"properties\": {\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId + object contains information that identifies the resource that was marked as + a favorite.\"\n }\n },\n \"description\": \"Information about + a video that was marked as a favorite video.\",\n \"id\": \"ActivityContentDetailsFavorite\",\n + \ \"type\": \"object\"\n },\n \"InvideoBranding\": {\n \"description\": + \"LINT.IfChange Describes an invideo branding.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"targetChannelId\": {\n \"description\": + \"The channel to which this branding links. If not present it defaults to + the current channel.\",\n \"type\": \"string\"\n },\n \"position\": + {\n \"description\": \"The spatial position within the video where + the branding watermark will be displayed.\",\n \"$ref\": \"InvideoPosition\"\n + \ },\n \"timing\": {\n \"description\": \"The temporal + position within the video where watermark will be displayed.\",\n \"$ref\": + \"InvideoTiming\"\n },\n \"imageBytes\": {\n \"format\": + \"byte\",\n \"description\": \"The bytes the uploaded image. Only + used in api to youtube communication.\",\n \"type\": \"string\"\n + \ },\n \"imageUrl\": {\n \"description\": \"The url + of the uploaded image. Only used in apiary to api communication.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"InvideoBranding\"\n },\n + \ \"TestItem\": {\n \"id\": \"TestItem\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"gaia\": {\n \"format\": \"int64\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": + \"string\"\n },\n \"featuredPart\": {\n \"type\": \"boolean\"\n + \ },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n + \ }\n }\n },\n \"LiveChatTextMessageDetails\": {\n \"id\": + \"LiveChatTextMessageDetails\",\n \"properties\": {\n \"messageText\": + {\n \"type\": \"string\",\n \"description\": \"The user's + message.\"\n }\n },\n \"type\": \"object\"\n },\n \"TestItemTestItemSnippet\": + {\n \"id\": \"TestItemTestItemSnippet\",\n \"type\": \"object\",\n + \ \"properties\": {}\n },\n \"ActivityListResponse\": {\n \"type\": + \"object\",\n \"properties\": {\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LiveBroadcastListResponse\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"id\": \"LiveChatSuperChatDetails\",\n \"properties\": {\n - \ \"tier\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The amount purchased by the user, - in micros (1,750,000 micros = 1.75).\"\n },\n \"userComment\": - {\n \"description\": \"The comment added by the user to this Super - Chat event.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsChannelItem\": {\n \"id\": - \"ActivityContentDetailsChannelItem\",\n \"type\": \"object\",\n \"description\": - \"Details about a resource which was added to a channel.\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\"\n }\n }\n },\n \"Subscription\": - {\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\",\n \"$ref\": - \"SubscriptionSnippet\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the subscription.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#subscription\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains basic statistics about the subscription.\",\n - \ \"$ref\": \"SubscriptionContentDetails\"\n },\n \"subscriberSnippet\": - {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n \"description\": - \"The subscriberSnippet object contains basic details about the subscriber.\"\n + the previous page in the result set.\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"kind\": {\n \"default\": + \"youtube#activityListResponse\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"description\": \"A - *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\",\n \"id\": \"Subscription\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"description\": \"Information about a video that was marked - as a favorite video.\",\n \"id\": \"ActivityContentDetailsFavorite\",\n - \ \"type\": \"object\"\n },\n \"ChannelSectionListResponse\": {\n - \ \"type\": \"object\",\n \"id\": \"ChannelSectionListResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": + \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"visitorId\": {\n \"description\": \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#channelSectionListResponse\",\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"Activity\"\n },\n \"type\": \"array\"\n }\n },\n + \ \"id\": \"ActivityListResponse\"\n },\n \"CommentThreadListResponse\": + {\n \"properties\": {\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"items\": {\n \"description\": \"A list of comment + threads that match the request criteria.\",\n \"items\": {\n \"$ref\": + \"CommentThread\"\n },\n \"type\": \"array\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n },\n \"kind\": {\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n + \ \"default\": \"youtube#commentThreadListResponse\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"nextPageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the next page + in the result set.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"CommentThreadListResponse\"\n },\n \"ChannelContentDetails\": {\n + \ \"type\": \"object\",\n \"description\": \"Details about the content + of a channel.\",\n \"properties\": {\n \"relatedPlaylists\": {\n + \ \"properties\": {\n \"watchHistory\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the playlist that + contains the channel\\\"s watch history. Use the playlistItems.insert and + playlistItems.delete to add or remove items from that list.\"\n },\n + \ \"watchLater\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the playlist that contains the channel\\\"s watch later playlist. + Use the playlistItems.insert and playlistItems.delete to add or remove items + from that list.\"\n },\n \"favorites\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the playlist that + contains the channel\\\"s favorite videos. Use the playlistItems.insert and + playlistItems.delete to add or remove items from that list.\"\n },\n + \ \"uploads\": {\n \"description\": \"The ID of the + playlist that contains the channel\\\"s uploaded videos. Use the videos.insert + method to upload new videos and the videos.delete method to delete previously + uploaded videos.\",\n \"type\": \"string\"\n },\n + \ \"likes\": {\n \"description\": \"The ID of the playlist + that contains the channel\\\"s liked videos. Use the playlistItems.insert + and playlistItems.delete to add or remove items from that list.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n + \ }\n },\n \"id\": \"ChannelContentDetails\"\n },\n \"VideoProcessingDetails\": + {\n \"properties\": {\n \"thumbnailsAvailability\": {\n \"type\": + \"string\",\n \"description\": \"This value indicates whether thumbnail + images have been generated for the video.\"\n },\n \"fileDetailsAvailability\": + {\n \"description\": \"This value indicates whether file details + are available for the uploaded video. You can retrieve a video's file details + by requesting the fileDetails part in your videos.list() request.\",\n \"type\": + \"string\"\n },\n \"processingProgress\": {\n \"$ref\": + \"VideoProcessingDetailsProcessingProgress\",\n \"description\": + \"The processingProgress object contains information about the progress YouTube + has made in processing the video. The values are really only relevant if the + video's processing status is processing.\"\n },\n \"processingStatus\": + {\n \"type\": \"string\",\n \"description\": \"The video's + processing status. This value indicates whether YouTube was able to process + the video or if the video is still being processed.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"processing\",\n \"succeeded\",\n + \ \"failed\",\n \"terminated\"\n ]\n },\n + \ \"processingFailureReason\": {\n \"description\": \"The reason + that YouTube failed to process the video. This property will only have a value + if the processingStatus property's value is failed.\",\n \"type\": + \"string\",\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n + \ \"streamingFailed\",\n \"other\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"editorSuggestionsAvailability\": {\n \"description\": + \"This value indicates whether video editing suggestions, which might improve + video quality or the playback experience, are available for the video. You + can retrieve these suggestions by requesting the suggestions part in your + videos.list() request.\",\n \"type\": \"string\"\n },\n \"tagSuggestionsAvailability\": + {\n \"type\": \"string\",\n \"description\": \"This value + indicates whether keyword (tag) suggestions are available for the video. Tags + can be added to a video's metadata to make it easier for other users to find + the video. You can retrieve these suggestions by requesting the suggestions + part in your videos.list() request.\"\n },\n \"processingIssuesAvailability\": + {\n \"description\": \"This value indicates whether the video processing + engine has generated suggestions that might improve YouTube's ability to process + the the video, warnings that explain video processing problems, or errors + that cause video processing problems. You can retrieve these suggestions by + requesting the suggestions part in your videos.list() request.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"VideoProcessingDetails\",\n \"description\": \"Describes processing + status and progress and availability of some other Video resource parts.\"\n + \ },\n \"ThirdPartyLinkStatus\": {\n \"id\": \"ThirdPartyLinkStatus\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"linkStatus\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"unknown\",\n \"failed\",\n + \ \"pending\",\n \"linked\"\n ]\n }\n + \ },\n \"description\": \"The third-party link status object contains + information about the status of the link.\"\n },\n \"LiveChatMessageAuthorDetails\": + {\n \"id\": \"LiveChatMessageAuthorDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"isVerified\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether the author's identity has been verified + by YouTube.\"\n },\n \"isChatModerator\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the author is a moderator + of the live chat.\"\n },\n \"isChatSponsor\": {\n \"description\": + \"Whether the author is a sponsor of the live chat.\",\n \"type\": + \"boolean\"\n },\n \"profileImageUrl\": {\n \"type\": + \"string\",\n \"description\": \"The channels's avatar URL.\"\n },\n + \ \"isChatOwner\": {\n \"description\": \"Whether the author + is the owner of the live chat.\",\n \"type\": \"boolean\"\n },\n + \ \"channelId\": {\n \"description\": \"The YouTube channel + ID.\",\n \"type\": \"string\"\n },\n \"channelUrl\": + {\n \"description\": \"The channel's URL.\",\n \"type\": + \"string\"\n },\n \"displayName\": {\n \"type\": \"string\",\n + \ \"description\": \"The channel's display name.\"\n }\n }\n + \ },\n \"ChannelAuditDetails\": {\n \"description\": \"The auditDetails + object encapsulates channel data that is relevant for YouTube Partners during + the audit process.\",\n \"properties\": {\n \"contentIdClaimsGoodStanding\": + {\n \"description\": \"Whether or not the channel has any unresolved + claims.\",\n \"type\": \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": + {\n \"description\": \"Whether or not the channel has any copyright + strikes.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": + {\n \"description\": \"Whether or not the channel respects the community + guidelines.\",\n \"type\": \"boolean\"\n }\n },\n \"id\": + \"ChannelAuditDetails\",\n \"type\": \"object\"\n },\n \"LiveChatBan\": + {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#liveChatBan\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n + \ \"description\": \"The `snippet` object contains basic details about + the ban.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube assigns to uniquely identify the ban.\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"A `__liveChatBan__` resource represents + a ban for a YouTube live chat.\",\n \"id\": \"LiveChatBan\"\n },\n + \ \"CommentThreadSnippet\": {\n \"description\": \"Basic details about + a comment thread.\",\n \"type\": \"object\",\n \"properties\": {\n + \ \"topLevelComment\": {\n \"description\": \"The top level + comment of this thread.\",\n \"$ref\": \"Comment\"\n },\n + \ \"totalReplyCount\": {\n \"type\": \"integer\",\n \"description\": + \"The total number of replies (not including the top level comment).\",\n + \ \"format\": \"uint32\"\n },\n \"canReply\": {\n \"description\": + \"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.\",\n \"type\": + \"boolean\"\n },\n \"isPublic\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether the thread (and therefore all its comments) + is visible to all YouTube users.\"\n },\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the video the comments + refer to, if any. No video_id implies a channel discussion comment.\"\n },\n + \ \"channelId\": {\n \"description\": \"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.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"CommentThreadSnippet\"\n + \ },\n \"ActivityContentDetailsComment\": {\n \"properties\": {\n + \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + associated with the comment.\"\n }\n },\n \"description\": + \"Information about a resource that received a comment.\",\n \"id\": + \"ActivityContentDetailsComment\",\n \"type\": \"object\"\n },\n \"ChannelStatistics\": + {\n \"description\": \"Statistics about a channel: number of subscribers, + number of videos in the channel, etc.\",\n \"type\": \"object\",\n \"properties\": + {\n \"viewCount\": {\n \"format\": \"uint64\",\n \"description\": + \"The number of times the channel has been viewed.\",\n \"type\": + \"string\"\n },\n \"subscriberCount\": {\n \"description\": + \"The number of subscribers that the channel has.\",\n \"format\": + \"uint64\",\n \"type\": \"string\"\n },\n \"hiddenSubscriberCount\": + {\n \"description\": \"Whether or not the number of subscribers is + shown for this user.\",\n \"type\": \"boolean\"\n },\n \"commentCount\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The number of comments for the channel.\"\n },\n \"videoCount\": + {\n \"description\": \"The number of videos uploaded to the channel.\",\n + \ \"type\": \"string\",\n \"format\": \"uint64\"\n }\n + \ },\n \"id\": \"ChannelStatistics\"\n },\n \"LiveChatSuperChatDetails\": + {\n \"id\": \"LiveChatSuperChatDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"amountMicros\": {\n \"description\": + \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n + \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n + \ \"amountDisplayString\": {\n \"description\": \"A rendered + string that displays the fund amount and currency to the user.\",\n \"type\": + \"string\"\n },\n \"currency\": {\n \"type\": \"string\",\n + \ \"description\": \"The currency in which the purchase was made.\"\n + \ },\n \"tier\": {\n \"type\": \"integer\",\n \"description\": + \"The tier in which the amount belongs. Lower amounts belong to lower tiers. + The lowest tier is 1.\",\n \"format\": \"uint32\"\n },\n \"userComment\": + {\n \"type\": \"string\",\n \"description\": \"The comment + added by the user to this Super Chat event.\"\n }\n }\n },\n + \ \"VideoRating\": {\n \"type\": \"object\",\n \"properties\": + {\n \"rating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"The entity is liked.\",\n \"The entity is disliked.\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"Rating of a video.\",\n \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ]\n },\n \"videoId\": {\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the video.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"VideoRating\",\n \"description\": \"Basic details about rating of a + video.\"\n },\n \"LiveStreamSnippet\": {\n \"properties\": {\n + \ \"isDefaultStream\": {\n \"type\": \"boolean\"\n },\n + \ \"description\": {\n \"type\": \"string\",\n \"description\": + \"The stream's description. The value cannot be longer than 10000 characters.\"\n + \ },\n \"title\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The stream's title. The value must be between 1 and 128 characters long.\"\n + \ },\n \"channelId\": {\n \"description\": \"The ID + that YouTube uses to uniquely identify the channel that is transmitting the + stream.\",\n \"type\": \"string\"\n },\n \"publishedAt\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time that the stream was created.\",\n \"format\": \"date-time\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveStreamSnippet\"\n + \ },\n \"ThumbnailDetails\": {\n \"properties\": {\n \"standard\": + {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The standard + quality image for this resource.\"\n },\n \"medium\": {\n \"$ref\": + \"Thumbnail\",\n \"description\": \"The medium quality image for + this resource.\"\n },\n \"default\": {\n \"$ref\": + \"Thumbnail\",\n \"description\": \"The default image for this resource.\"\n + \ },\n \"maxres\": {\n \"description\": \"The maximum + resolution quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n + \ },\n \"high\": {\n \"description\": \"The high quality + image for this resource.\",\n \"$ref\": \"Thumbnail\"\n }\n + \ },\n \"id\": \"ThumbnailDetails\",\n \"type\": \"object\",\n + \ \"description\": \"Internal representation of thumbnails for a YouTube + resource.\"\n },\n \"ChannelConversionPings\": {\n \"id\": \"ChannelConversionPings\",\n + \ \"type\": \"object\",\n \"description\": \"The conversionPings + object encapsulates information about conversion pings that need to be respected + by the channel.\",\n \"properties\": {\n \"pings\": {\n \"description\": + \"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.\",\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n + \ },\n \"type\": \"array\"\n }\n }\n },\n + \ \"LiveChatMessageListResponse\": {\n \"type\": \"object\",\n \"id\": + \"LiveChatMessageListResponse\",\n \"properties\": {\n \"offlineAt\": + {\n \"description\": \"The date and time when the underlying stream + went offline.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"LiveChatMessage\"\n },\n \"type\": \"array\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"pollingIntervalMillis\": + {\n \"type\": \"integer\",\n \"description\": \"The amount + of time the client should wait before polling again.\",\n \"format\": + \"uint32\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\"\n + \ }\n }\n },\n \"Video\": {\n \"type\": \"object\",\n + \ \"description\": \"A *video* resource represents a YouTube video.\",\n + \ \"id\": \"Video\",\n \"properties\": {\n \"contentDetails\": + {\n \"description\": \"The contentDetails object contains information + about the video content, including the length of the video and its aspect + ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"player\": {\n \"description\": + \"The player object contains information that you would use to play the video + in an embedded player.\",\n \"$ref\": \"VideoPlayer\"\n },\n + \ \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n \"description\": + \"The snippet object contains basic details about the video, such as its title, + description, and category.\"\n },\n \"statistics\": {\n \"$ref\": + \"VideoStatistics\",\n \"description\": \"The statistics object contains + statistics about the video.\"\n },\n \"recordingDetails\": {\n + \ \"$ref\": \"VideoRecordingDetails\",\n \"description\": + \"The recordingDetails object encapsulates information about the location, + date and address where the video was recorded.\"\n },\n \"monetizationDetails\": + {\n \"$ref\": \"VideoMonetizationDetails\",\n \"description\": + \"The monetizationDetails object encapsulates information about the monetization + status of the video.\"\n },\n \"status\": {\n \"description\": + \"The status object contains information about the video's uploading, processing, + and privacy statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n + \ \"projectDetails\": {\n \"description\": \"The projectDetails + object contains information about the project specific video metadata. b/157517979: + This part was never populated after it was added. However, it sees non-zero + traffic because there is generated client code in the wild that refers to + it [1]. We keep this field and do NOT remove it because otherwise V3 would + return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"$ref\": \"VideoProjectDetails\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#video\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of ChannelSections that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ }\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"VideoLocalization\": {\n \"properties\": {\n \"description\": - {\n \"description\": \"Localized version of the video's description.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"Localized version of the video's title.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Localized - versions of certain video properties (e.g. title).\",\n \"id\": \"VideoLocalization\"\n - \ },\n \"VideoProcessingDetails\": {\n \"id\": \"VideoProcessingDetails\",\n - \ \"properties\": {\n \"tagSuggestionsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether keyword - (tag) suggestions are available for the video. Tags can be added to a video's - metadata to make it easier for other users to find the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\"\n },\n \"fileDetailsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether file - details are available for the uploaded video. You can retrieve a video's file - details by requesting the fileDetails part in your videos.list() request.\"\n - \ },\n \"processingProgress\": {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"The processingProgress object contains information - about the progress YouTube has made in processing the video. The values are - really only relevant if the video's processing status is processing.\"\n },\n - \ \"processingIssuesAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"processingStatus\": {\n \"description\": \"The video's - processing status. This value indicates whether YouTube was able to process - the video or if the video is still being processed.\",\n \"type\": - \"string\",\n \"enum\": [\n \"processing\",\n \"succeeded\",\n - \ \"failed\",\n \"terminated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"thumbnailsAvailability\": {\n \"description\": - \"This value indicates whether thumbnail images have been generated for the - video.\",\n \"type\": \"string\"\n },\n \"processingFailureReason\": + the fixed string \\\"youtube#video\\\".\"\n },\n \"id\": {\n + \ \"annotations\": {\n \"required\": [\n \"youtube.videos.update\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + uses to uniquely identify the video.\",\n \"type\": \"string\"\n + \ },\n \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n + \ \"description\": \"Age restriction details related to a video. This + data can only be retrieved by the video owner.\"\n },\n \"localizations\": + {\n \"description\": \"The localizations object contains localized + versions of the basic details about the video, such as its title and description.\",\n + \ \"type\": \"object\",\n \"additionalProperties\": {\n \"$ref\": + \"VideoLocalization\"\n }\n },\n \"fileDetails\": {\n + \ \"description\": \"The fileDetails object encapsulates information + about the video file that was uploaded to YouTube, including the file's resolution, + duration, audio and video codecs, stream bitrates, and more. This data can + only be retrieved by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n + \ },\n \"processingDetails\": {\n \"$ref\": \"VideoProcessingDetails\",\n + \ \"description\": \"The processingDetails object encapsulates information + about YouTube's progress in processing the uploaded video file. The properties + in the object identify the current processing status and an estimate of the + time remaining until YouTube finishes processing the video. This part also + indicates whether different types of data or content, such as file details + or thumbnail images, are available for the video. The processingProgress object + is designed to be polled so that the video uploaded can track the progress + that YouTube has made in processing the uploaded video file. This data can + only be retrieved by the video owner.\"\n },\n \"topicDetails\": + {\n \"$ref\": \"VideoTopicDetails\",\n \"description\": + \"The topicDetails object encapsulates information about Freebase topics associated + with the video.\"\n },\n \"liveStreamingDetails\": {\n \"$ref\": + \"VideoLiveStreamingDetails\",\n \"description\": \"The liveStreamingDetails + object contains metadata about a live video broadcast. The object will only + be present in a video resource if the video is an upcoming, live, or completed + live broadcast.\"\n },\n \"suggestions\": {\n \"$ref\": + \"VideoSuggestions\",\n \"description\": \"The suggestions object + encapsulates suggestions that identify opportunities to improve the video + quality or the metadata for the uploaded video. This data can only be retrieved + by the video owner.\"\n }\n }\n },\n \"LocalizedString\": + {\n \"properties\": {\n \"language\": {\n \"type\": \"string\"\n + \ },\n \"value\": {\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"LocalizedString\",\n \"type\": \"object\"\n + \ },\n \"LiveStreamContentDetails\": {\n \"properties\": {\n \"isReusable\": + {\n \"type\": \"boolean\",\n \"description\": \"Indicates + whether the stream is reusable, which means that it can be bound to multiple + broadcasts. It is common for broadcasters to reuse the same stream for many + different broadcasts if those broadcasts occur at different times. If you + set this value to false, then the stream will not be reusable, which means + that it can only be bound to one broadcast. Non-reusable streams differ from + reusable streams in the following ways: - A non-reusable stream can only be + bound to one broadcast. - A non-reusable stream might be deleted by an automated + process after the broadcast ends. - The liveStreams.list method does not list + non-reusable streams if you call the method and set the mine parameter to + true. The only way to use that method to retrieve the resource for a non-reusable + stream is to use the id parameter to identify the stream. \"\n },\n + \ \"closedCaptionsIngestionUrl\": {\n \"description\": \"The + ingestion URL where the closed captions of this stream are sent.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"Detailed settings of a stream.\",\n \"id\": \"LiveStreamContentDetails\"\n + \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"banType\": {\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"permanent\",\n \"temporary\"\n + \ ],\n \"description\": \"The type of ban.\"\n },\n + \ \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n + \ \"description\": \"The details of the user that was banned.\"\n + \ },\n \"banDurationSeconds\": {\n \"format\": \"uint64\",\n + \ \"type\": \"string\",\n \"description\": \"The duration + of the ban. This property is only present if the banType is temporary.\"\n + \ }\n },\n \"id\": \"LiveChatUserBannedMessageDetails\"\n + \ },\n \"VideoStatus\": {\n \"id\": \"VideoStatus\",\n \"type\": + \"object\",\n \"description\": \"Basic details about a video category, + such as its localized title. Next Id: 18\",\n \"properties\": {\n \"embeddable\": + {\n \"type\": \"boolean\",\n \"description\": \"This value + indicates if the video can be embedded on another website. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"license\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"description\": \"The video's license. @mutable youtube.videos.insert + youtube.videos.update\",\n \"enum\": [\n \"youtube\",\n + \ \"creativeCommon\"\n ]\n },\n \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"type\": - \"string\"\n },\n \"editorSuggestionsAvailability\": {\n \"description\": - \"This value indicates whether video editing suggestions, which might improve - video quality or the playback experience, are available for the video. You - can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\",\n \"type\": \"object\"\n },\n - \ \"LocalizedString\": {\n \"type\": \"object\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n },\n \"language\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LocalizedString\"\n - \ },\n \"LiveBroadcastSnippet\": {\n \"description\": \"Basic broadcast - information.\",\n \"id\": \"LiveBroadcastSnippet\",\n \"properties\": - {\n \"isDefaultBroadcast\": {\n \"description\": \"Indicates - whether this broadcast is the default broadcast. Internal only.\",\n \"type\": - \"boolean\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the broadcast. For each nested - object in this object, the key is the name of the thumbnail image, and the - value is an object that contains other information about the thumbnail.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"scheduledEndTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to end.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"\"\n ],\n \"description\": \"The video's privacy + status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"type\": \"string\"\n },\n + \ \"failureReason\": {\n \"enumDescriptions\": [\n \"Unable + to convert video content.\",\n \"Invalid file format.\",\n \"Empty + file.\",\n \"File was too small.\",\n \"Unsupported + codec.\",\n \"Upload wasn't finished.\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"conversion\",\n \"invalidFile\",\n + \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n + \ \"uploadAborted\"\n ],\n \"description\": \"This + value explains why a video failed to upload. This property is only present + if the uploadStatus property indicates that the upload failed.\"\n },\n + \ \"publishAt\": {\n \"type\": \"string\",\n \"description\": + \"The date and time when the video is scheduled to publish. It can be set + only if the privacy status of the video is private..\",\n \"format\": + \"date-time\"\n },\n \"uploadStatus\": {\n \"description\": + \"The status of the uploaded video.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"uploaded\",\n \"processed\",\n + \ \"failed\",\n \"rejected\",\n \"deleted\"\n + \ ],\n \"enumDescriptions\": [\n \"Video has been + uploaded but not processed yet.\",\n \"Video has been successfully + processed.\",\n \"Processing has failed. See FailureReason.\",\n + \ \"Video has been rejected. See RejectionReason.\",\n \"Video + has been deleted.\"\n ]\n },\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n },\n \"rejectionReason\": + {\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n + \ \"Inappropriate video content.\",\n \"Duplicate upload + in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader + account was suspended.\",\n \"Video duration was too long.\",\n + \ \"Blocked by content owner.\",\n \"Uploader closed + his/her account.\",\n \"Trademark infringement.\",\n \"An + unspecified legal reason.\"\n ],\n \"enum\": [\n \"copyright\",\n + \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n + \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n + \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n + \ ],\n \"description\": \"This value explains why YouTube + rejected an uploaded video. This property is only present if the uploadStatus + property indicates that the upload was rejected.\",\n \"type\": \"string\"\n + \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"publicStatsViewable\": {\n \"description\": + \"This value indicates if the extended video statistics on the watch page + can be viewed by everyone. Note that the view count, likes, etc will still + be visible if this is disabled. @mutable youtube.videos.insert youtube.videos.update\",\n + \ \"type\": \"boolean\"\n }\n }\n },\n \"LiveBroadcastStatistics\": + {\n \"properties\": {\n \"totalChatCount\": {\n \"description\": + \"The total number of live chat messages currently on the broadcast. The property + and its value will be present if the broadcast is public, has the live chat + feature enabled, and has at least one message. Note that this field will not + be filled after the broadcast ends. So this property would not identify the + number of chat messages for an archived video of a completed live broadcast.\",\n + \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n + \ \"concurrentViewers\": {\n \"description\": \"The number + of viewers currently watching the broadcast. The property and its value will + be present if the broadcast has current viewers and the broadcast owner has + not hidden the viewcount for the video. Note that YouTube stops tracking the + number of concurrent viewers for a broadcast when the broadcast ends. So, + this property would not identify the number of viewers watching an archived + video of a live broadcast that already ended.\",\n \"format\": \"uint64\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LiveBroadcastStatistics\",\n \"description\": \"Statistics + about the live broadcast. These represent a snapshot of the values at the + time of the request. Statistics are only returned for live broadcasts.\"\n + \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"properties\": + {\n \"memberMonth\": {\n \"description\": \"The total amount + of months (rounded up) the viewer has been a member that granted them this + Member Milestone Chat. This is the same number of months as is being displayed + to YouTube users.\",\n \"format\": \"uint32\",\n \"type\": + \"integer\"\n },\n \"memberLevelName\": {\n \"description\": + \"The name of the Level at which the viever is a member. The Level names are + defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\",\n \"type\": \"string\"\n },\n + \ \"userComment\": {\n \"description\": \"The comment added + by the member to this Member Milestone Chat. This field is empty for messages + without a comment from the member.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"type\": + \"object\"\n },\n \"AccessPolicy\": {\n \"properties\": {\n \"allowed\": + {\n \"description\": \"The value of allowed indicates whether the + access to the policy is allowed or denied by default.\",\n \"type\": + \"boolean\"\n },\n \"exception\": {\n \"items\": {\n + \ \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"A list of region codes that identify countries + where the default policy do not apply.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"AccessPolicy\",\n \"description\": \"Rights + management policy for YouTube resources.\"\n },\n \"MembershipsDuration\": + {\n \"id\": \"MembershipsDuration\",\n \"type\": \"object\",\n \"properties\": + {\n \"memberSince\": {\n \"description\": \"The date and time + when the user became a continuous member across all levels.\",\n \"type\": + \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"type\": + \"integer\",\n \"format\": \"int32\",\n \"description\": + \"The cumulative time the user has been a member across all levels in complete + months (the time is rounded down to the nearest integer).\"\n }\n }\n + \ },\n \"LiveChatMembershipGiftingDetails\": {\n \"properties\": + {\n \"giftMembershipsLevelName\": {\n \"description\": \"The + name of the level of the gift memberships purchased by the user. The Level + names are defined by the YouTube channel offering the Membership. In some + situations this field isn't filled.\",\n \"type\": \"string\"\n },\n + \ \"giftMembershipsCount\": {\n \"description\": \"The number + of gift memberships purchased by the user.\",\n \"format\": \"int32\",\n + \ \"type\": \"integer\"\n }\n },\n \"id\": \"LiveChatMembershipGiftingDetails\",\n + \ \"type\": \"object\"\n },\n \"CaptionSnippet\": {\n \"type\": + \"object\",\n \"properties\": {\n \"language\": {\n \"description\": + \"The language of the caption track. The property value is a BCP-47 language + tag.\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"type\": \"string\"\n },\n + \ \"isLarge\": {\n \"type\": \"boolean\",\n \"description\": + \"Indicates whether the caption track uses large text for the vision-impaired. + The default value is false.\"\n },\n \"trackKind\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The caption + track's type.\",\n \"enum\": [\n \"standard\",\n \"ASR\",\n + \ \"forced\"\n ]\n },\n \"videoId\": {\n + \ \"type\": \"string\",\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n },\n \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is publishing the broadcast.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\"\n - \ },\n \"actualStartTime\": {\n \"type\": \"string\",\n + the video associated with the caption track. @mutable youtube.captions.insert\"\n + \ },\n \"name\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n },\n + \ \"description\": \"The name of the caption track. The name is intended + to be visible to the user as an option during playback.\",\n \"type\": + \"string\"\n },\n \"audioTrackType\": {\n \"enum\": + [\n \"unknown\",\n \"primary\",\n \"commentary\",\n + \ \"descriptive\"\n ],\n \"description\": \"The + type of audio track associated with the caption track.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"status\": + {\n \"type\": \"string\",\n \"enum\": [\n \"serving\",\n + \ \"syncing\",\n \"failed\"\n ],\n \"description\": + \"The caption track's status.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"isCC\": + {\n \"description\": \"Indicates whether the track contains closed + captions for the deaf and hard of hearing. The default value is false.\",\n + \ \"type\": \"boolean\"\n },\n \"isEasyReader\": {\n + \ \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n \"isAutoSynced\": + {\n \"description\": \"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.\",\n \"type\": + \"boolean\"\n },\n \"isDraft\": {\n \"description\": + \"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. @mutable youtube.captions.insert + youtube.captions.update\",\n \"type\": \"boolean\"\n },\n + \ \"failureReason\": {\n \"description\": \"The reason that + YouTube failed to process the caption track. This property is only present + if the state property's value is failed.\",\n \"enum\": [\n \"unknownFormat\",\n + \ \"unsupportedFormat\",\n \"processingFailed\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"lastUpdated\": + {\n \"description\": \"The date and time when the caption track was + last updated.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n + \ }\n },\n \"description\": \"Basic details about a caption + track, such as its language and name.\",\n \"id\": \"CaptionSnippet\"\n + \ },\n \"Caption\": {\n \"id\": \"Caption\",\n \"description\": + \"A *caption* resource represents a YouTube caption track. A caption track + is associated with exactly one YouTube video.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"id\": {\n \"annotations\": {\n + \ \"required\": [\n \"youtube.captions.update\"\n ]\n + \ },\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the caption track.\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n + \ \"default\": \"youtube#caption\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n }\n },\n \"LiveBroadcastSnippet\": {\n + \ \"description\": \"Basic broadcast information.\",\n \"type\": + \"object\",\n \"properties\": {\n \"scheduledStartTime\": {\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the broadcast is scheduled to start.\"\n },\n + \ \"title\": {\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"The broadcast's title. Note that the broadcast + represents exactly one YouTube video. You can set this field by modifying + the broadcast resource or by setting the title field of the corresponding + video resource.\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The broadcast's description. As + with the title, you can set this field by modifying the broadcast resource + or by setting the description field of the corresponding video resource.\"\n + \ },\n \"actualStartTime\": {\n \"format\": \"date-time\",\n \ \"description\": \"The date and time that the broadcast actually started. This information is only available once the broadcast's state is - live.\",\n \"format\": \"date-time\"\n },\n \"scheduledStartTime\": + live.\",\n \"type\": \"string\"\n },\n \"liveChatId\": + {\n \"description\": \"The id of the live chat for this broadcast.\",\n + \ \"type\": \"string\"\n },\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the broadcast is scheduled to start.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"actualEndTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the broadcast actually ended. This information is only available - once the broadcast's state is complete.\"\n },\n \"title\": - {\n \"description\": \"The broadcast's title. Note that the broadcast - represents exactly one YouTube video. You can set this field by modifying - the broadcast resource or by setting the title field of the corresponding - video resource.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"liveChatId\": {\n \"description\": \"The id of the live - chat for this broadcast.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": + date and time that the broadcast is scheduled to end.\",\n \"type\": + \"string\"\n },\n \"actualEndTime\": {\n \"format\": \"date-time\",\n \"description\": \"The date and time that the broadcast - was added to YouTube's live broadcast schedule.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatBan\": {\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"default\": \"youtube#liveChatBan\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\"\n }\n - \ },\n \"id\": \"LiveChatBan\",\n \"type\": \"object\",\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\"\n - \ },\n \"ChannelContentDetails\": {\n \"properties\": {\n \"relatedPlaylists\": - {\n \"properties\": {\n \"favorites\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s favorite videos. Use the playlistItems.insert and - playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"uploads\": {\n \"description\": \"The ID of the - playlist that contains the channel\\\"s uploaded videos. Use the videos.insert - method to upload new videos and the videos.delete method to delete previously - uploaded videos.\",\n \"type\": \"string\"\n },\n - \ \"watchLater\": {\n \"description\": \"The ID of - the playlist that contains the channel\\\"s watch later playlist. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"likes\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"watchHistory\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n }\n },\n \"type\": \"object\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Details - about the content of a channel.\",\n \"id\": \"ChannelContentDetails\"\n - \ },\n \"AccessPolicy\": {\n \"id\": \"AccessPolicy\",\n \"description\": - \"Rights management policy for YouTube resources.\",\n \"properties\": - {\n \"allowed\": {\n \"description\": \"The value of allowed - indicates whether the access to the policy is allowed or denied by default.\",\n - \ \"type\": \"boolean\"\n },\n \"exception\": {\n \"type\": - \"array\",\n \"description\": \"A list of region codes that identify - countries where the default policy do not apply.\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelSectionContentDetails\": {\n \"description\": - \"Details about a channelsection, including playlists and channels.\",\n \"id\": - \"ChannelSectionContentDetails\",\n \"properties\": {\n \"channels\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"type\": \"array\"\n },\n \"playlists\": {\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelSection\": {\n \"properties\": {\n \"targeting\": - {\n \"$ref\": \"ChannelSectionTargeting\",\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ChannelSectionContentDetails\",\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel section.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#channelSection\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the channel section, such as its type, - style and title.\",\n \"$ref\": \"ChannelSectionSnippet\"\n },\n - \ \"localizations\": {\n \"description\": \"Localizations for - different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"type\": \"object\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelSection\"\n - \ },\n \"ActivityContentDetailsComment\": {\n \"id\": \"ActivityContentDetailsComment\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with the comment.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"description\": \"Information about a resource that received - a comment.\",\n \"type\": \"object\"\n },\n \"Comment\": {\n \"description\": - \"A *comment* represents a single YouTube comment.\",\n \"id\": \"Comment\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#comment\\\".\",\n \"default\": \"youtube#comment\"\n - \ },\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoMonetizationDetails\": {\n - \ \"type\": \"object\",\n \"description\": \"Details about monetization - of a YouTube Video.\",\n \"properties\": {\n \"access\": {\n \"$ref\": - \"AccessPolicy\",\n \"description\": \"The value of access indicates - whether the video can be monetized or not.\"\n }\n },\n \"id\": - \"VideoMonetizationDetails\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"id\": \"ActivityContentDetailsRecommendation\",\n \"type\": - \"object\",\n \"properties\": {\n \"reason\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ],\n \"description\": \"The reason that the resource is - recommended to the user.\",\n \"type\": \"string\"\n },\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\"\n },\n \"seedResourceId\": {\n \"description\": - \"The seedResourceId object contains information about the resource that caused - the recommendation.\",\n \"$ref\": \"ResourceId\"\n }\n },\n - \ \"description\": \"Information that identifies the recommended resource.\"\n - \ },\n \"PlaylistItemContentDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"videoPublishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the video - was published to YouTube.\",\n \"format\": \"date-time\"\n },\n - \ \"startAt\": {\n \"description\": \"The time, measured in - seconds from the start of the video, when the video should start playing. - (The playlist owner can specify the times when the video should start and - stop playing when the video is played in the context of the playlist.) The - default value is 0.\",\n \"type\": \"string\"\n },\n \"endAt\": + actually ended. This information is only available once the broadcast's state + is complete.\",\n \"type\": \"string\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"description\": \"The + date and time that the broadcast was added to YouTube's live broadcast schedule.\",\n + \ \"type\": \"string\"\n },\n \"isDefaultBroadcast\": + {\n \"type\": \"boolean\",\n \"description\": \"Indicates + whether this broadcast is the default broadcast. Internal only.\"\n },\n + \ \"thumbnails\": {\n \"description\": \"A map of thumbnail + images associated with the broadcast. For each nested object in this object, + the key is the name of the thumbnail image, and the value is an object that + contains other information about the thumbnail.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"channelId\": {\n \"description\": \"The ID + that YouTube uses to uniquely identify the channel that is publishing the + broadcast.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"LiveBroadcastSnippet\"\n },\n \"LiveStreamStatus\": {\n \"description\": + \"Brief description of the live stream status.\",\n \"properties\": {\n + \ \"healthStatus\": {\n \"description\": \"The health status + of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n },\n + \ \"streamStatus\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"created\",\n \"ready\",\n + \ \"active\",\n \"inactive\",\n \"error\"\n + \ ],\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveStreamStatus\"\n },\n \"ChannelSectionListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"description\": + \"A list of ChannelSections that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"ChannelSection\"\n }\n },\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n + \ \"default\": \"youtube#channelSectionListResponse\"\n }\n + \ },\n \"id\": \"ChannelSectionListResponse\"\n },\n \"ChannelToStoreLinkDetails\": + {\n \"description\": \"Information specific to a store on a merchandising + platform linked to a YouTube channel.\",\n \"type\": \"object\",\n \"id\": + \"ChannelToStoreLinkDetails\",\n \"properties\": {\n \"merchantId\": + {\n \"description\": \"Google Merchant Center id of the store.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n + \ \"storeName\": {\n \"type\": \"string\",\n \"description\": + \"Name of the store.\"\n },\n \"storeUrl\": {\n \"type\": + \"string\",\n \"description\": \"Landing page of the store.\"\n }\n + \ }\n },\n \"LiveChatModerator\": {\n \"description\": \"A + *liveChatModerator* resource represents a moderator for a YouTube live chat. + A chat moderator has the ability to ban/unban users from a chat, remove message, + etc.\",\n \"type\": \"object\",\n \"properties\": {\n \"kind\": + {\n \"default\": \"youtube#liveChatModerator\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube assigns + to uniquely identify the moderator.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": + \"LiveChatModeratorSnippet\",\n \"description\": \"The snippet object + contains basic details about the moderator.\"\n }\n },\n \"id\": + \"LiveChatModerator\"\n },\n \"ChannelListResponse\": {\n \"id\": + \"ChannelListResponse\",\n \"type\": \"object\",\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n + \ \"default\": \"youtube#channelListResponse\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\"\n },\n \"items\": {\n + \ \"items\": {\n \"$ref\": \"Channel\"\n },\n + \ \"type\": \"array\"\n },\n \"nextPageToken\": {\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ }\n }\n },\n \"PlaylistItemContentDetails\": {\n \"properties\": + {\n \"videoId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify a video. To retrieve the video resource, set the + id query parameter to this value in your API request.\",\n \"type\": + \"string\"\n },\n \"videoPublishedAt\": {\n \"description\": + \"The date and time that the video was published to YouTube.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"startAt\": {\n \"description\": \"The time, measured in seconds from the start + of the video, when the video should start playing. (The playlist owner can + specify the times when the video should start and stop playing when the video + is played in the context of the playlist.) The default value is 0.\",\n \"type\": + \"string\"\n },\n \"endAt\": {\n \"type\": \"string\",\n + \ \"description\": \"The time, measured in seconds from the start of the video, when the video should stop playing. (The playlist owner can specify the times when the video should start and stop playing when the video is played in the context of the playlist.) By default, assume that the video.endTime - is the end of the video.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify a video. To retrieve the video resource, set the id query - parameter to this value in your API request.\",\n \"type\": \"string\"\n - \ },\n \"note\": {\n \"description\": \"A user-generated - note for this item.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"PlaylistItemContentDetails\"\n },\n \"ChannelSectionSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a channel section, including title, style and position.\",\n \"properties\": - {\n \"defaultLanguage\": {\n \"description\": \"The language - of the channel section's default title and description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel section's title for multiple_playlists - and multiple_channels.\"\n },\n \"position\": {\n \"type\": - \"integer\",\n \"description\": \"The position of the channel section - in the channel.\",\n \"format\": \"uint32\"\n },\n \"style\": - {\n \"description\": \"The style of the channel section.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that published the channel - section.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": - \"Localized title, read-only.\"\n },\n \"type\": {\n \"description\": - \"The type of the channel section.\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n + is the end of the video.\"\n },\n \"note\": {\n \"type\": + \"string\",\n \"description\": \"A user-generated note for this item.\"\n + \ }\n },\n \"id\": \"PlaylistItemContentDetails\",\n \"type\": + \"object\"\n },\n \"VideoFileDetailsAudioStream\": {\n \"properties\": + {\n \"vendor\": {\n \"description\": \"A value that uniquely + identifies a video vendor. Typically, the value is a four-letter vendor code.\",\n + \ \"type\": \"string\"\n },\n \"bitrateBps\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The audio stream's bitrate, in bits per second.\"\n },\n \"codec\": + {\n \"type\": \"string\",\n \"description\": \"The audio + codec that the stream uses.\"\n },\n \"channelCount\": {\n \"type\": + \"integer\",\n \"description\": \"The number of audio channels that + the stream contains.\",\n \"format\": \"uint32\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"VideoFileDetailsAudioStream\",\n + \ \"description\": \"Information about an audio stream.\"\n },\n \"SearchResultSnippet\": + {\n \"id\": \"SearchResultSnippet\",\n \"description\": \"Basic + details about a search result, including title, description and thumbnails + of the item referenced by the search result.\",\n \"properties\": {\n + \ \"title\": {\n \"description\": \"The title of the search + result.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The value + that YouTube uses to uniquely identify the channel that published the resource + that the search result identifies.\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"A description + of the search result.\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the search result. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"publishedAt\": {\n \"description\": + \"The creation date and time of the resource that the search result identifies.\",\n + \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n + \ \"liveBroadcastContent\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"The live broadcast is upcoming.\",\n \"The live broadcast + is active.\",\n \"The live broadcast has been completed.\"\n ],\n + \ \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ],\n \"type\": + \"string\",\n \"description\": \"It indicates if the resource (video + or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" + if there is not any upcoming/active live broadcasts.\"\n },\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"The title + of the channel that published the resource that the search result identifies.\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"I18nLanguageSnippet\": + {\n \"type\": \"object\",\n \"id\": \"I18nLanguageSnippet\",\n \"properties\": + {\n \"name\": {\n \"type\": \"string\",\n \"description\": + \"The human-readable name of the language in the language itself.\"\n },\n + \ \"hl\": {\n \"description\": \"A short BCP-47 code that uniquely + identifies a language.\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Basic details about an i18n language, such as language + code and human-readable name.\"\n },\n \"LocalizedProperty\": {\n \"id\": + \"LocalizedProperty\",\n \"type\": \"object\",\n \"properties\": + {\n \"defaultLanguage\": {\n \"$ref\": \"LanguageTag\",\n + \ \"description\": \"The language of the default property.\"\n },\n + \ \"default\": {\n \"type\": \"string\"\n },\n \"localized\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"LocalizedString\"\n }\n }\n }\n },\n \"VideoCategoryListResponse\": + {\n \"id\": \"VideoCategoryListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n + \ \"default\": \"youtube#videoCategoryListResponse\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoCategory\"\n + \ },\n \"description\": \"A list of video categories that + can be associated with YouTube videos. In this map, the video category ID + is the map key, and its value is the corresponding videoCategory resource.\"\n + \ }\n }\n },\n \"MembershipsLevelSnippet\": {\n \"id\": + \"MembershipsLevelSnippet\",\n \"properties\": {\n \"creatorChannelId\": + {\n \"description\": \"The id of the channel that's offering channel + memberships.\",\n \"type\": \"string\"\n },\n \"levelDetails\": + {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details + about the pricing level.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"LiveChatFanFundingEventDetails\": {\n \"properties\": {\n + \ \"amountMicros\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"The amount of the fund.\"\n },\n + \ \"amountDisplayString\": {\n \"type\": \"string\",\n \"description\": + \"A rendered string that displays the fund amount and currency to the user.\"\n + \ },\n \"userComment\": {\n \"description\": \"The comment + added by the user to this fan funding event.\",\n \"type\": \"string\"\n + \ },\n \"currency\": {\n \"description\": \"The currency + in which the fund was made.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\"\n + \ },\n \"MembershipsDetails\": {\n \"type\": \"object\",\n \"id\": + \"MembershipsDetails\",\n \"properties\": {\n \"highestAccessibleLevel\": + {\n \"description\": \"Id of the highest level that the user has + access to at the moment.\",\n \"type\": \"string\"\n },\n + \ \"highestAccessibleLevelDisplayName\": {\n \"description\": + \"Display name for the highest level that the user has access to at the moment.\",\n + \ \"type\": \"string\"\n },\n \"accessibleLevels\": + {\n \"description\": \"Ids of all levels that the user has access + to. This includes the currently active level and all other levels that are + included because of a higher purchase.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n },\n \"membershipsDuration\": + {\n \"$ref\": \"MembershipsDuration\",\n \"description\": + \"Data about memberships duration without taking into consideration pricing + levels.\"\n },\n \"membershipsDurationAtLevels\": {\n \"description\": + \"Data about memberships duration on particular pricing levels.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n + \ }\n }\n }\n },\n \"I18nRegionSnippet\": {\n \"type\": + \"object\",\n \"description\": \"Basic details about an i18n region, + such as region code and human-readable name.\",\n \"properties\": {\n + \ \"name\": {\n \"description\": \"The human-readable name + of the region.\",\n \"type\": \"string\"\n },\n \"gl\": + {\n \"type\": \"string\",\n \"description\": \"The region + code as a 2-letter ISO country code.\"\n }\n },\n \"id\": + \"I18nRegionSnippet\"\n },\n \"LiveStreamConfigurationIssue\": {\n \"type\": + \"object\",\n \"id\": \"LiveStreamConfigurationIssue\",\n \"properties\": + {\n \"description\": {\n \"description\": \"The long-form + description of the issue and how to resolve it.\",\n \"type\": \"string\"\n + \ },\n \"severity\": {\n \"description\": \"How severe + this issue is to the stream.\",\n \"type\": \"string\",\n \"enum\": + [\n \"info\",\n \"warning\",\n \"error\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"type\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelSectionSnippet\"\n },\n \"InvideoBranding\": - {\n \"description\": \"LINT.IfChange Describes an invideo branding.\",\n - \ \"id\": \"InvideoBranding\",\n \"properties\": {\n \"targetChannelId\": - {\n \"description\": \"The channel to which this branding links. - If not present it defaults to the current channel.\",\n \"type\": - \"string\"\n },\n \"position\": {\n \"description\": - \"The spatial position within the video where the branding watermark will - be displayed.\",\n \"$ref\": \"InvideoPosition\"\n },\n \"imageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The url of - the uploaded image. Only used in apiary to api communication.\"\n },\n - \ \"imageBytes\": {\n \"type\": \"string\",\n \"format\": - \"byte\",\n \"description\": \"The bytes the uploaded image. Only - used in api to youtube communication.\"\n },\n \"timing\": {\n - \ \"$ref\": \"InvideoTiming\",\n \"description\": \"The temporal - position within the video where watermark will be displayed.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatTextMessageDetails\": - {\n \"properties\": {\n \"messageText\": {\n \"description\": - \"The user's message.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatTextMessageDetails\"\n - \ },\n \"CommentSnippetAuthorChannelId\": {\n \"type\": \"object\",\n - \ \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"CommentSnippetAuthorChannelId\"\n },\n - \ \"LiveBroadcast\": {\n \"description\": \"A *liveBroadcast* resource - represents an event that will be streamed, via live video, on YouTube.\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"status\": - {\n \"$ref\": \"LiveBroadcastStatus\",\n \"description\": - \"The status object contains information about the event's status.\"\n },\n - \ \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"The statistics object contains info about the - event's current stats. These include concurrent viewers and total chat count. - Statistics can change (in either direction) during the lifetime of an event. - Statistics are only returned while the event is live.\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveBroadcastSnippet\",\n \"description\": - \"The snippet object contains basic details about the event, including its - title, description, start time, and end time.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"LiveBroadcastContentDetails\",\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveBroadcast\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the broadcast.\"\n }\n },\n - \ \"id\": \"LiveBroadcast\",\n \"type\": \"object\"\n },\n \"SearchListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n + \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n + \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n + \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n + \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n + \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n + \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n + \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n + \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n + \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n + \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n + \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n + \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n + \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n + \ ],\n \"description\": \"The kind of error happening.\"\n + \ },\n \"reason\": {\n \"description\": \"The short-form + reason for this issue.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"VideoListResponse\": {\n \"id\": \"VideoListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Video\"\n }\n },\n \"kind\": + {\n \"default\": \"youtube#videoListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"regionCode\": {\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"VideoRecordingDetails\": {\n \"id\": \"VideoRecordingDetails\",\n + \ \"type\": \"object\",\n \"description\": \"Recording information + associated with the video.\",\n \"properties\": {\n \"locationDescription\": + {\n \"description\": \"The text description of the location where + the video was recorded.\",\n \"type\": \"string\"\n },\n \"recordingDate\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the video was recorded.\",\n \"format\": \"date-time\"\n + \ },\n \"location\": {\n \"description\": \"The geolocation + information associated with the video.\",\n \"$ref\": \"GeoPoint\"\n + \ }\n }\n },\n \"ChannelSection\": {\n \"id\": \"ChannelSection\",\n + \ \"properties\": {\n \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n + \ \"description\": \"The targeting object contains basic targeting + settings about the channel section.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#channelSection\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": + \"The snippet object contains basic details about the channel section, such + as its type, style and title.\"\n },\n \"localizations\": {\n + \ \"description\": \"Localizations for different languages\",\n \"additionalProperties\": + {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"type\": + \"object\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"contentDetails\": + {\n \"$ref\": \"ChannelSectionContentDetails\",\n \"description\": + \"The contentDetails object contains details about the channel section content, + such as a list of playlists or channels featured in the section.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"ActivityContentDetails\": + {\n \"properties\": {\n \"promotedItem\": {\n \"$ref\": + \"ActivityContentDetailsPromotedItem\",\n \"description\": \"The + promotedItem object contains details about a resource which is being promoted. + This property is only present if the snippet.type is promotedItem.\"\n },\n + \ \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n + \ \"description\": \"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.\"\n },\n \"subscription\": + {\n \"description\": \"The subscription object contains information + about a channel that a user subscribed to. This property is only present if + the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n + \ },\n \"favorite\": {\n \"description\": \"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.\",\n \"$ref\": + \"ActivityContentDetailsFavorite\"\n },\n \"like\": {\n \"$ref\": + \"ActivityContentDetailsLike\",\n \"description\": \"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.\"\n },\n + \ \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n + \ \"description\": \"The playlistItem object contains information + about a new playlist item. This property is only present if the snippet.type + is playlistItem.\"\n },\n \"social\": {\n \"description\": + \"The social object contains details about a social network post. This property + is only present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n + \ },\n \"upload\": {\n \"$ref\": \"ActivityContentDetailsUpload\",\n + \ \"description\": \"The upload object contains information about + the uploaded video. This property is only present if the snippet.type is upload.\"\n + \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n + \ \"description\": \"The comment object contains information about + a resource that received a comment. This property is only present if the snippet.type + is comment.\"\n },\n \"bulletin\": {\n \"description\": + \"The bulletin object contains details about a channel bulletin post. This + object is only present if the snippet.type is bulletin.\",\n \"$ref\": + \"ActivityContentDetailsBulletin\"\n },\n \"recommendation\": + {\n \"description\": \"The recommendation object contains information + about a recommended resource. This property is only present if the snippet.type + is recommendation.\",\n \"$ref\": \"ActivityContentDetailsRecommendation\"\n + \ }\n },\n \"id\": \"ActivityContentDetails\",\n \"type\": + \"object\",\n \"description\": \"Details about the content of an activity: + the video that was shared, the channel that was subscribed to, etc.\"\n },\n + \ \"ActivityContentDetailsChannelItem\": {\n \"id\": \"ActivityContentDetailsChannelItem\",\n + \ \"description\": \"Details about a resource which was added to a channel.\",\n + \ \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + that was added to the channel.\",\n \"$ref\": \"ResourceId\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"LanguageTag\": {\n \"id\": + \"LanguageTag\",\n \"properties\": {\n \"value\": {\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"SearchListResponse\": + {\n \"properties\": {\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"eventId\": {\n + \ \"type\": \"string\",\n \"description\": \"Serialized EventId + of the request which produced this response.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"description\": - \"Pagination information for token pagination.\",\n \"items\": {\n - \ \"$ref\": \"SearchResult\"\n },\n \"type\": - \"array\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#searchListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"SearchListResponse\"\n - \ },\n \"PlaylistStatus\": {\n \"properties\": {\n \"privacyStatus\": - {\n \"description\": \"The playlist's privacy status.\",\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"PlaylistStatus\"\n - \ },\n \"Cuepoint\": {\n \"type\": \"object\",\n \"properties\": - {\n \"insertionOffsetTimeMs\": {\n \"format\": \"int64\",\n - \ \"type\": \"string\",\n \"description\": \"The time when - the cuepoint should be inserted by offset to the broadcast actual start time.\"\n - \ },\n \"durationSecs\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The duration of this cuepoint.\",\n \"type\": - \"integer\"\n },\n \"cueType\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The identifier for cuepoint resource.\"\n },\n - \ \"walltimeMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The wall clock time at which the - cuepoint should be inserted. Only one of insertion_offset_time_ms and walltime_ms - may be set at a time.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n }\n },\n \"description\": \"Note that there - may be a 5-second end-point resolution issue. For instance, if a cuepoint - comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, - depending. This is an artifact of HLS.\",\n \"id\": \"Cuepoint\"\n },\n - \ \"MembershipsLevelSnippet\": {\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"levelDetails\": - {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details - about the pricing level.\"\n },\n \"creatorChannelId\": {\n - \ \"description\": \"The id of the channel that's offering channel - memberships.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ChannelConversionPings\": {\n \"type\": \"object\",\n \"properties\": - {\n \"pings\": {\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ },\n \"type\": \"array\",\n \"description\": \"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.\"\n }\n },\n \"id\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n - \ \"Playlist\": {\n \"properties\": {\n \"id\": {\n \"description\": + identifies the visitor.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n + \ \"default\": \"youtube#searchListResponse\",\n \"type\": + \"string\"\n },\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n },\n \"regionCode\": {\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"description\": \"Pagination + information for token pagination.\",\n \"items\": {\n \"$ref\": + \"SearchResult\"\n },\n \"type\": \"array\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"SearchListResponse\"\n },\n \"Playlist\": {\n \"properties\": + {\n \"localizations\": {\n \"description\": \"Localizations + for different languages\",\n \"type\": \"object\",\n \"additionalProperties\": + {\n \"$ref\": \"PlaylistLocalization\"\n }\n },\n + \ \"status\": {\n \"description\": \"The status object contains + status information for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": + \"youtube#playlist\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n + \ },\n \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the playlist, such as its title and description.\"\n },\n \"contentDetails\": + {\n \"description\": \"The contentDetails object contains information + like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n },\n + \ \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": + \"The player object contains information that you would use to play the playlist + in an embedded player.\"\n },\n \"id\": {\n \"description\": \"The ID that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"default\": \"youtube#playlist\",\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"$ref\": \"PlaylistStatus\",\n - \ \"description\": \"The status object contains status information - for the playlist.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\",\n - \ \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n - \ }\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\",\n \"$ref\": \"PlaylistSnippet\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n - \ },\n \"player\": {\n \"description\": \"The player - object contains information that you would use to play the playlist in an - embedded player.\",\n \"$ref\": \"PlaylistPlayer\"\n },\n + \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"A *playlist* resource represents a YouTube playlist. A playlist is a collection + of videos that can be viewed sequentially and shared with other users. A playlist + can contain up to 200 videos, and YouTube does not limit the number of playlists + that each user creates. By default, playlists are publicly visible to other + users, but playlists can be public or private. YouTube also uses playlists + to identify special collections of videos for a channel, such as: - uploaded + videos - favorite videos - positively rated (liked) videos - watch history + - watch later To be more specific, these lists are associated with a channel, + which is a collection of a person, group, or company's videos, playlists, + and other YouTube information. You can retrieve the playlist IDs for each + of these lists from the channel resource for a given channel. You can then + use the playlistItems.list method to retrieve any of those lists. You can + also add or remove items from those lists by calling the playlistItems.insert + and playlistItems.delete methods.\",\n \"id\": \"Playlist\"\n },\n + \ \"LiveChatModeratorListResponse\": {\n \"type\": \"object\",\n \"properties\": + {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n + \ \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n + \ \"default\": \"youtube#liveChatModeratorListResponse\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\"\n },\n \"items\": {\n + \ \"type\": \"array\",\n \"description\": \"A list of moderators + that match the request criteria.\",\n \"items\": {\n \"$ref\": + \"LiveChatModerator\"\n }\n }\n },\n \"id\": \"LiveChatModeratorListResponse\"\n + \ },\n \"VideoAbuseReport\": {\n \"id\": \"VideoAbuseReport\",\n + \ \"properties\": {\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": + \"string\"\n },\n \"secondaryReasonId\": {\n \"type\": + \"string\",\n \"description\": \"The specific, or secondary, reason + that this content is abusive (if available). The value is an abuse report + reason ID that is a valid secondary reason for the primary reason.\"\n },\n + \ \"reasonId\": {\n \"type\": \"string\",\n \"description\": + \"The high-level, or primary, reason that the content is abusive. The value + is an abuse report reason ID.\"\n },\n \"language\": {\n \"type\": + \"string\",\n \"description\": \"The language that the content was + viewed in.\"\n },\n \"comments\": {\n \"type\": \"string\",\n + \ \"description\": \"Additional comments regarding the abuse report.\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsRecommendation\": + {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsRecommendation\",\n + \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the recommended resource.\"\n },\n \"seedResourceId\": + {\n \"description\": \"The seedResourceId object contains information + about the resource that caused the recommendation.\",\n \"$ref\": + \"ResourceId\"\n },\n \"reason\": {\n \"enum\": [\n + \ \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n + \ \"videoWatched\"\n ],\n \"description\": \"The + reason that the resource is recommended to the user.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n }\n },\n \"description\": + \"Information that identifies the recommended resource.\"\n },\n \"PlaylistItem\": + {\n \"properties\": {\n \"status\": {\n \"description\": + \"The status object contains information about the playlist item's privacy + status.\",\n \"$ref\": \"PlaylistItemStatus\"\n },\n \"contentDetails\": + {\n \"$ref\": \"PlaylistItemContentDetails\",\n \"description\": + \"The contentDetails object is included in the resource if the included item + is a YouTube video. The object contains additional information about the video.\"\n + \ },\n \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the playlist item, such as its title and position in the playlist.\"\n },\n \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"Playlist\",\n \"description\": \"A *playlist* resource - represents a YouTube playlist. A playlist is a collection of videos that can - be viewed sequentially and shared with other users. A playlist can contain - up to 200 videos, and YouTube does not limit the number of playlists that - each user creates. By default, playlists are publicly visible to other users, - but playlists can be public or private. YouTube also uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods.\"\n - \ },\n \"I18nLanguageListResponse\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of supported - i18n languages. In this map, the i18n language ID is the map key, and its - value is the corresponding i18nLanguage resource.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n - \ }\n },\n \"kind\": {\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"I18nLanguageListResponse\"\n },\n \"LiveChatMessageSnippet\": {\n - \ \"properties\": {\n \"memberMilestoneChatDetails\": {\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\",\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"fanFundingEventDetails\": {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n - \ \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\"\n },\n \"displayMessage\": - {\n \"type\": \"string\",\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"liveChatId\": - {\n \"type\": \"string\"\n },\n \"superChatDetails\": - {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"authorChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\"\n },\n \"membershipGiftingDetails\": - {\n \"description\": \"Details about the Membership Gifting event, - this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": - \"LiveChatMembershipGiftingDetails\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"giftMembershipReceivedDetails\": {\n \"$ref\": - \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": \"Details - about the Gift Membership Received event, this is only set if the type is - 'giftMembershipReceivedEvent'.\"\n },\n \"publishedAt\": {\n - \ \"description\": \"The date and time when the message was orignally - published.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"superStickerDetails\": {\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"newSponsorDetails\": - {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": - \"Details about the New Member Announcement event, this is only set if the - type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term - for \\\"sponsor\\\".\"\n },\n \"hasDisplayContent\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the message has display - content that should be displayed to users.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Next ID: 33\",\n \"id\": \"LiveChatMessageSnippet\"\n - \ },\n \"LiveChatMessageAuthorDetails\": {\n \"properties\": {\n - \ \"isChatOwner\": {\n \"description\": \"Whether the author - is the owner of the live chat.\",\n \"type\": \"boolean\"\n },\n - \ \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The channel's display name.\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel ID.\"\n },\n \"isChatSponsor\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is a sponsor of the live chat.\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"isChatModerator\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author is a moderator of the live - chat.\"\n },\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n }\n },\n \"id\": \"LiveChatMessageAuthorDetails\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageRetractedDetails\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": - {\n \"description\": \"The `visitorId` identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of valid abuse reasons that are used with `video.ReportAbuse`.\",\n - \ \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ }\n }\n }\n },\n \"ChannelConversionPing\": {\n - \ \"properties\": {\n \"context\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"Defines the context - of the ping.\",\n \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ]\n },\n \"conversionUrl\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"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.\",\n - \ \"id\": \"ChannelConversionPing\"\n },\n \"SearchResult\": {\n - \ \"type\": \"object\",\n \"description\": \"A search result contains - information about a YouTube video, channel, or playlist that matches the search - parameters specified in an API request. While a search result points to a - uniquely identifiable resource, like a video, it does not have its own persistent - data.\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about a search result, such as its title or description. For - example, if the search result is a video, then the title will be the video's - title and the description will be the video's description.\",\n \"$ref\": - \"SearchResultSnippet\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n \"default\": - \"youtube#searchResult\"\n },\n \"id\": {\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\",\n \"$ref\": \"ResourceId\"\n - \ }\n },\n \"id\": \"SearchResult\"\n },\n \"ChannelLocalization\": - {\n \"id\": \"ChannelLocalization\",\n \"type\": \"object\",\n \"properties\": - {\n \"description\": {\n \"description\": \"The localized - strings for channel's description.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"description\": \"The localized strings for - channel's title.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Channel localization setting\"\n },\n \"PlaylistItem\": - {\n \"description\": \"A *playlistItem* resource identifies another resource, + \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the playlist item.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#playlistItem\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\"\n + \ }\n },\n \"id\": \"PlaylistItem\",\n \"type\": \"object\",\n + \ \"description\": \"A *playlistItem* resource identifies another resource, such as a video, that is included in a playlist. In addition, the playlistItem resource contains details about the included resource that pertain specifically to how that resource is used in that playlist. YouTube uses playlists to identify @@ -12192,272 +12451,27 @@ interactions: method to retrieve any of those lists. You can also add or remove items from those lists by calling the playlistItems.insert and playlistItems.delete methods. For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"PlaylistItemSnippet\",\n \"description\": \"The snippet object - contains basic details about the playlist item, such as its title and position - in the playlist.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the playlist item.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\",\n \"$ref\": \"PlaylistItemStatus\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"default\": \"youtube#playlistItem\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object is included in the resource if the included item - is a YouTube video. The object contains additional information about the video.\",\n - \ \"$ref\": \"PlaylistItemContentDetails\"\n }\n },\n - \ \"id\": \"PlaylistItem\"\n },\n \"VideoProjectDetails\": {\n \"id\": - \"VideoProjectDetails\",\n \"type\": \"object\",\n \"description\": - \"DEPRECATED. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"properties\": {}\n },\n \"RelatedEntity\": {\n \"id\": - \"RelatedEntity\",\n \"properties\": {\n \"entity\": {\n \"$ref\": - \"Entity\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"properties\": {\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the fund was made.\"\n },\n \"userComment\": {\n \"type\": - \"string\",\n \"description\": \"The comment added by the user to - this fan funding event.\"\n },\n \"amountMicros\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The amount of the fund.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatFanFundingEventDetails\"\n },\n \"MemberSnippet\": - {\n \"properties\": {\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering memberships.\",\n \"type\": - \"string\"\n },\n \"membershipsDetails\": {\n \"description\": - \"Details about the user's membership.\",\n \"$ref\": \"MembershipsDetails\"\n - \ },\n \"memberDetails\": {\n \"description\": \"Details - about the member.\",\n \"$ref\": \"ChannelProfileDetails\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"MemberSnippet\"\n },\n - \ \"ActivityContentDetailsLike\": {\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the rated resource.\"\n }\n - \ },\n \"description\": \"Information about a resource that received - a positive (like) rating.\",\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"type\": \"object\"\n },\n \"MemberListResponse\": {\n \"properties\": - {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"default\": \"youtube#memberListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Member\"\n },\n \"description\": - \"A list of members that match the request criteria.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"MemberListResponse\"\n },\n - \ \"ChannelSettings\": {\n \"description\": \"Branding properties for - the channel view.\",\n \"properties\": {\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"profileColor\": {\n - \ \"type\": \"string\",\n \"description\": \"A prominent - color that can be rendered on this channel page.\"\n },\n \"featuredChannelsTitle\": - {\n \"type\": \"string\",\n \"description\": \"Title for - the featured channels tab.\"\n },\n \"unsubscribedTrailer\": - {\n \"description\": \"The trailer of the channel, for users that - are not subscribers.\",\n \"type\": \"string\"\n },\n \"featuredChannelsUrls\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The list of featured - channels.\"\n },\n \"moderateComments\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether user-submitted comments - left on the channel page need to be approved by the channel owner to be publicly - visible.\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the channel description.\"\n },\n - \ \"defaultTab\": {\n \"description\": \"Which content tab - users should see when viewing the channel.\",\n \"type\": \"string\"\n - \ },\n \"showBrowseView\": {\n \"description\": \"Whether - the tab to browse the videos should be displayed.\",\n \"type\": - \"boolean\"\n },\n \"title\": {\n \"description\": - \"Specifies the channel title.\",\n \"type\": \"string\"\n },\n - \ \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"keywords\": {\n \"type\": \"string\",\n \"description\": - \"Lists keywords associated with the channel, comma-separated.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelSettings\"\n - \ },\n \"ChannelSnippet\": {\n \"id\": \"ChannelSnippet\",\n \"properties\": - {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\"\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n },\n - \ \"customUrl\": {\n \"type\": \"string\",\n \"description\": - \"The custom url of the channel.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel's title.\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": - \"The language of the channel's default title and description.\"\n },\n - \ \"description\": {\n \"description\": \"The description of - the channel.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"$ref\": \"ChannelLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the channel was created.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n }\n - \ },\n \"description\": \"Basic details about a channel, including - title, description and thumbnails.\",\n \"type\": \"object\"\n },\n - \ \"VideoRecordingDetails\": {\n \"description\": \"Recording information - associated with the video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"recordingDate\": {\n \"description\": \"The date and - time when the video was recorded.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"location\": {\n \"description\": - \"The geolocation information associated with the video.\",\n \"$ref\": - \"GeoPoint\"\n },\n \"locationDescription\": {\n \"description\": - \"The text description of the location where the video was recorded.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoRecordingDetails\"\n - \ },\n \"ChannelBannerResource\": {\n \"description\": \"A channel - banner returned as the response to a channel_banner.insert call.\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\"\n },\n \"url\": - {\n \"description\": \"The URL of this banner image.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelBannerResource\"\n },\n \"VideoLiveStreamingDetails\": {\n - \ \"id\": \"VideoLiveStreamingDetails\",\n \"description\": \"Details - about the live streaming metadata.\",\n \"type\": \"object\",\n \"properties\": - {\n \"concurrentViewers\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\",\n \"type\": - \"string\"\n },\n \"actualStartTime\": {\n \"description\": - \"The time that the broadcast actually started. This value will not be available - until the broadcast begins.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"scheduledStartTime\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast is scheduled to begin.\"\n },\n \"activeLiveChatId\": - {\n \"description\": \"The ID of the currently active live chat attached - to this video. This field is filled only if the video is a currently live - broadcast that has live chat. Once the broadcast transitions to complete this - field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\",\n \"type\": \"string\"\n - \ },\n \"scheduledEndTime\": {\n \"description\": \"The - time that the broadcast is scheduled to end. If the value is empty or the - property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"actualEndTime\": {\n \"description\": \"The time that the - broadcast actually ended. This value will not be available until the broadcast - is over.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelSectionLocalization\": {\n \"description\": - \"ChannelSection localization setting\",\n \"id\": \"ChannelSectionLocalization\",\n - \ \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for channel section's title.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatModerator\": - {\n \"description\": \"A *liveChatModerator* resource represents a moderator - for a YouTube live chat. A chat moderator has the ability to ban/unban users - from a chat, remove message, etc.\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the moderator.\",\n \"$ref\": - \"LiveChatModeratorSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatModerator\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the moderator.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveChatModerator\",\n \"type\": - \"object\"\n },\n \"VideoAbuseReportReason\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoAbuseReportReason\",\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"id\": {\n \"description\": - \"The ID of this abuse report reason.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReason\"\n }\n }\n - \ },\n \"Channel\": {\n \"properties\": {\n \"contentOwnerDetails\": - {\n \"description\": \"The contentOwnerDetails object encapsulates - channel data that is relevant for YouTube Partners linked with the channel.\",\n - \ \"$ref\": \"ChannelContentOwnerDetails\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#channel\\\".\",\n \"default\": - \"youtube#channel\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"$ref\": \"ChannelStatus\",\n \"description\": \"The - status object encapsulates information about the privacy status of the channel.\"\n - \ },\n \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n - \ \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\"\n - \ },\n \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n - \ \"description\": \"The statistics object encapsulates statistics - for the channel.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel, such as its - title, description, and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n - \ \"description\": \"The contentDetails object encapsulates information - about the channel's content.\"\n },\n \"localizations\": {\n - \ \"type\": \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelLocalization\"\n },\n \"description\": \"Localizations - for different languages\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel.\",\n \"type\": \"string\"\n },\n - \ \"topicDetails\": {\n \"description\": \"The topicDetails - object encapsulates information about Freebase topics associated with the - channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n \"conversionPings\": - {\n \"$ref\": \"ChannelConversionPings\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\"\n },\n \"brandingSettings\": - {\n \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n - \ }\n },\n \"description\": \"A *channel* resource contains - information about a YouTube channel.\",\n \"id\": \"Channel\",\n \"type\": - \"object\"\n }\n },\n \"description\": \"The YouTube Data API v3 is an - API that provides access to YouTube data, such as videos, playlists, and channels.\",\n - \ \"fullyEncodeReservedExpansion\": true,\n \"servicePath\": \"\",\n \"canonicalName\": - \"YouTube\",\n \"title\": \"YouTube Data API v3\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"basePath\": \"\",\n - \ \"discoveryVersion\": \"v1\",\n \"revision\": \"20230131\",\n \"icons\": - {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n }\n }\n }\n },\n \"version\": \"v3\",\n - \ \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"name\": - \"youtube\",\n \"ownerDomain\": \"google.com\",\n \"ownerName\": \"Google\",\n - \ \"id\": \"youtube:v3\",\n \"kind\": \"discovery#restDescription\",\n \"protocol\": - \"rest\",\n \"batchPath\": \"batch\"\n}\n" + that video into the liked videos playlist for that user's channel.\"\n },\n + \ \"MonitorStreamInfo\": {\n \"description\": \"Settings and Info of + the monitor stream\",\n \"properties\": {\n \"broadcastStreamDelayMs\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"type\": \"integer\",\n \"description\": + \"If you have set the enableMonitorStream property to true, then this property + determines the length of the live broadcast delay.\",\n \"format\": + \"uint32\"\n },\n \"embedHtml\": {\n \"type\": \"string\",\n + \ \"description\": \"HTML code that embeds a player that plays the + monitor stream.\"\n },\n \"enableMonitorStream\": {\n \"description\": + \"This value determines whether the monitor stream is enabled for the broadcast. + If the monitor stream is enabled, then YouTube will broadcast the event content + on a special stream intended only for the broadcaster's consumption. The broadcaster + can use the stream to review the event content and also to identify the optimal + times to insert cuepoints. You need to set this value to true if you intend + to have a broadcast delay for your event. *Note:* This property cannot be + updated once the broadcast is in the testing or live state.\",\n \"type\": + \"boolean\",\n \"annotations\": {\n \"required\": [\n + \ \"youtube.liveBroadcasts.update\"\n ]\n }\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"MonitorStreamInfo\"\n + \ }\n },\n \"basePath\": \"\",\n \"id\": \"youtube:v3\"\n}\n" headers: Alt-Svc: - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 @@ -12468,7 +12482,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:46 GMT + - Thu, 09 Mar 2023 00:27:09 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: @@ -12528,7 +12542,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:46 GMT + - Thu, 09 Mar 2023 00:27:09 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: diff --git a/tests/cassettes/test_youtube/test_query_or_fetch_youtube_video[tOu3f-j4ukY].yaml b/tests/cassettes/test_youtube/test_query_or_fetch_youtube_video[tOu3f-j4ukY].yaml index 2f45d484..52083d1e 100644 --- a/tests/cassettes/test_youtube/test_query_or_fetch_youtube_video[tOu3f-j4ukY].yaml +++ b/tests/cassettes/test_youtube/test_query_or_fetch_youtube_video[tOu3f-j4ukY].yaml @@ -10,4002 +10,4061 @@ interactions: uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest response: body: - string: "{\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"name\": - \"youtube\",\n \"title\": \"YouTube Data API v3\",\n \"ownerName\": \"Google\",\n - \ \"schemas\": {\n \"PlaylistItemStatus\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"description\": - \"This resource's privacy status.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Information about the playlist item's privacy status.\",\n \"id\": - \"PlaylistItemStatus\"\n },\n \"TokenPagination\": {\n \"description\": - \"Stub token pagination template to suppress results.\",\n \"properties\": - {},\n \"id\": \"TokenPagination\",\n \"type\": \"object\"\n },\n - \ \"LiveBroadcast\": {\n \"type\": \"object\",\n \"id\": \"LiveBroadcast\",\n - \ \"properties\": {\n \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"The statistics object contains info about the - event's current stats. These include concurrent viewers and total chat count. - Statistics can change (in either direction) during the lifetime of an event. - Statistics are only returned while the event is live.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the broadcast.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"default\": \"youtube#liveBroadcast\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"LiveBroadcastSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the event, including its title, description, start time, and end time.\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n - \ \"description\": \"The status object contains information about - the event's status.\"\n }\n },\n \"description\": \"A *liveBroadcast* - resource represents an event that will be streamed, via live video, on YouTube.\"\n - \ },\n \"VideoRating\": {\n \"type\": \"object\",\n \"id\": - \"VideoRating\",\n \"description\": \"Basic details about rating of a - video.\",\n \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n },\n \"rating\": {\n \"description\": - \"Rating of a video.\",\n \"type\": \"string\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ]\n - \ }\n }\n },\n \"LiveChatMessageDeletedDetails\": {\n \"id\": - \"LiveChatMessageDeletedDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"PlaylistSnippet\": {\n \"id\": \"PlaylistSnippet\",\n - \ \"description\": \"Basic details about a playlist, including title, - description and thumbnails.\",\n \"properties\": {\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"description\": \"The playlist's title.\",\n \"type\": - \"string\"\n },\n \"tags\": {\n \"type\": \"array\",\n - \ \"description\": \"Keyword tags associated with the playlist.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": - \"The language of the playlist's default title and description.\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the playlist was created.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that published the playlist.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the playlist. 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.\"\n },\n \"thumbnailVideoId\": {\n \"type\": - \"string\",\n \"description\": \"Note: if the playlist has a custom - thumbnail, this field will not be populated. The video id selected by the - user that will be used as the thumbnail of this playlist. This field defaults - to the first publicly viewable video in the playlist, if: 1. The user has - never selected a video to be the thumbnail of the playlist. 2. The user selects - a video to be the thumbnail, and then removes that video from the playlist. - 3. The user selects a non-owned video to be the thumbnail, but that video - becomes private, or gets deleted.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The playlist's - description.\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"The channel title of the channel - that the video belongs to.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SuperStickerMetadata\": {\n \"properties\": {\n \"stickerId\": - {\n \"type\": \"string\",\n \"description\": \"Unique identifier - of the Super Sticker. This is a shorter form of the alt_text that includes - pack name and a recognizable characteristic of the sticker.\"\n },\n - \ \"altText\": {\n \"type\": \"string\",\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\"\n },\n \"altTextLanguage\": {\n \"description\": - \"Specifies the localization language in which the alt text is returned.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"SuperStickerMetadata\",\n - \ \"type\": \"object\"\n },\n \"SuperChatEvent\": {\n \"id\": - \"SuperChatEvent\",\n \"description\": \"A `__superChatEvent__` resource - represents a Super Chat purchase on a YouTube channel.\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#superChatEvent\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the Super Chat event.\"\n - \ },\n \"snippet\": {\n \"description\": \"The `snippet` - object contains basic details about the Super Chat event.\",\n \"$ref\": - \"SuperChatEventSnippet\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"Information about a new playlist item.\",\n \"properties\": {\n \"playlistId\": - {\n \"type\": \"string\",\n \"description\": \"The value - that YouTube uses to uniquely identify the playlist.\"\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information about the resource that was added to the playlist.\"\n - \ },\n \"playlistItemId\": {\n \"description\": \"ID - of the item within the playlist.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatBanSnippet\": - {\n \"id\": \"LiveChatBanSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"liveChatId\": {\n \"description\": \"The chat this ban - is pertinent to.\",\n \"type\": \"string\"\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": - {\n \"description\": \"The duration of a ban, only filled if the - ban has type TEMPORARY.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"type\": {\n \"description\": \"The - type of ban.\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"type\": \"string\"\n - \ }\n }\n },\n \"GeoPoint\": {\n \"id\": \"GeoPoint\",\n - \ \"properties\": {\n \"altitude\": {\n \"type\": \"number\",\n - \ \"description\": \"Altitude above the reference ellipsoid, in meters.\",\n - \ \"format\": \"double\"\n },\n \"latitude\": {\n \"description\": - \"Latitude in degrees.\",\n \"format\": \"double\",\n \"type\": - \"number\"\n },\n \"longitude\": {\n \"format\": \"double\",\n - \ \"type\": \"number\",\n \"description\": \"Longitude in - degrees.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Geographical coordinates of a point, in WGS84.\"\n },\n \"VideoSuggestions\": - {\n \"description\": \"Specifies suggestions on how to improve video - content, including encoding hints, tag suggestions, and editor suggestions.\",\n - \ \"id\": \"VideoSuggestions\",\n \"properties\": {\n \"editorSuggestions\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ],\n - \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ]\n - \ },\n \"description\": \"A list of video editing operations - that might improve the video quality or playback experience of the uploaded - video.\"\n },\n \"processingErrors\": {\n \"type\": - \"array\",\n \"items\": {\n \"enumDescriptions\": [\n - \ \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"audioFile\",\n \"imageFile\",\n - \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n - \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n },\n \"description\": \"A list of errors - that will prevent YouTube from successfully processing the uploaded video - video. These errors indicate that, regardless of the video's current processing - status, eventually, that status will almost certainly be failed.\"\n },\n - \ \"processingHints\": {\n \"items\": {\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of suggestions that may - improve YouTube's ability to process the video.\",\n \"type\": \"array\"\n - \ },\n \"tagSuggestions\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"description\": \"A list of keyword tags that could - be added to the video's metadata to increase the likelihood that users will - locate your video when searching or browsing on YouTube.\"\n },\n \"processingWarnings\": - {\n \"items\": {\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ]\n },\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatMessageSnippet\": {\n \"description\": - \"Next ID: 33\",\n \"type\": \"object\",\n \"properties\": {\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"liveChatId\": - {\n \"type\": \"string\"\n },\n \"hasDisplayContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the message has display content that should be displayed to users.\"\n },\n - \ \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n - \ \"description\": \"Details about the New Member Announcement event, - this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" - is the new term for \\\"sponsor\\\".\"\n },\n \"displayMessage\": - {\n \"description\": \"Contains a string that can be displayed to - the user. If this field is not present the message is silent, at the moment - only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"description\": \"The - type of message, this will always be present, it determines the contents of - the message as well as which fields will be present.\",\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n + string: "{\n \"title\": \"YouTube Data API v3\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n + \ \"description\": \"The YouTube Data API v3 is an API that provides access + to YouTube data, such as videos, playlists, and channels.\",\n \"icons\": + {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n + \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n + \ },\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"revision\": + \"20230308\",\n \"servicePath\": \"\",\n \"auth\": {\n \"oauth2\": {\n + \ \"scopes\": {\n \"https://www.googleapis.com/auth/youtubepartner\": + {\n \"description\": \"View and manage your assets and associated + content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube\": + {\n \"description\": \"Manage your YouTube account\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": + {\n \"description\": \"See a list of your current active channel + members, their current level, and when they became a member\"\n },\n + \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": + {\n \"description\": \"View private information of your YouTube channel + relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": + {\n \"description\": \"Manage your YouTube videos\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": + \"See, edit, and permanently delete your YouTube videos, ratings, comments + and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": + {\n \"description\": \"View your YouTube account\"\n }\n }\n + \ }\n },\n \"name\": \"youtube\",\n \"ownerDomain\": \"google.com\",\n + \ \"batchPath\": \"batch\",\n \"basePath\": \"\",\n \"schemas\": {\n \"LiveStreamConfigurationIssue\": + {\n \"id\": \"LiveStreamConfigurationIssue\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"reason\": {\n \"description\": + \"The short-form reason for this issue.\",\n \"type\": \"string\"\n + \ },\n \"type\": {\n \"description\": \"The kind of + error happening.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n + \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n + \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n + \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n + \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n + \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n + \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n + \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n + \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n + \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n + \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n + \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n + \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n + \ \"videoIngestionFasterThanRealtime\"\n ]\n },\n + \ \"severity\": {\n \"enum\": [\n \"info\",\n \"warning\",\n + \ \"error\"\n ],\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"How severe this issue is to the stream.\"\n },\n + \ \"description\": {\n \"type\": \"string\",\n \"description\": + \"The long-form description of the issue and how to resolve it.\"\n }\n + \ }\n },\n \"MembershipsDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"MembershipsDetails\",\n \"properties\": {\n \"highestAccessibleLevel\": + {\n \"description\": \"Id of the highest level that the user has + access to at the moment.\",\n \"type\": \"string\"\n },\n + \ \"membershipsDurationAtLevels\": {\n \"description\": \"Data + about memberships duration on particular pricing levels.\",\n \"items\": + {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"type\": + \"array\"\n },\n \"membershipsDuration\": {\n \"description\": + \"Data about memberships duration without taking into consideration pricing + levels.\",\n \"$ref\": \"MembershipsDuration\"\n },\n \"highestAccessibleLevelDisplayName\": + {\n \"description\": \"Display name for the highest level that the + user has access to at the moment.\",\n \"type\": \"string\"\n },\n + \ \"accessibleLevels\": {\n \"description\": \"Ids of all levels + that the user has access to. This includes the currently active level and + all other levels that are included because of a higher purchase.\",\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n + \ }\n }\n },\n \"VideoAgeGating\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoAgeGating\",\n \"properties\": {\n \"alcoholContent\": + {\n \"description\": \"Indicates whether or not the video has alcoholic + beverage content. Only users of legal purchasing age in a particular country, + as identified by ICAP, can view the content.\",\n \"type\": \"boolean\"\n + \ },\n \"restricted\": {\n \"description\": \"Age-restricted + trailers. For redband trailers and adult-rated video-games. Only users aged + 18+ can view the content. The the field is true the content is restricted + to viewers aged 18+. Otherwise The field won't be present.\",\n \"type\": + \"boolean\"\n },\n \"videoGameRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n + \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"Video game rating, if any.\"\n + \ }\n }\n },\n \"ContentRating\": {\n \"properties\": + {\n \"bmukkRating\": {\n \"enum\": [\n \"bmukkUnspecified\",\n + \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n + \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n + \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n + \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n + \ \"14+\",\n \"16+\",\n \"\"\n ],\n + \ \"description\": \"The video's rating from the Austrian Board of + Media Classification (Bundesministerium f\xFCr Unterricht, Kunst und Kultur).\"\n + \ },\n \"bfvcRating\": {\n \"description\": \"The video's + rating from Thailand's Board of Film and Video Censors.\",\n \"enum\": + [\n \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n + \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n + \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n + \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n + \ \"\"\n ]\n },\n \"fpbRating\": {\n \"description\": + \"The video's rating from South Africa's Film and Publication Board.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"fpbUnspecified\",\n + \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n + \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n + \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n + \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n + \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n + \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n + \ ]\n },\n \"cccRating\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica + (Chile) rating.\",\n \"enum\": [\n \"cccUnspecified\",\n + \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n + \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"Todo + espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n + \ \"14+\",\n \"18+\",\n \"18+ - contenido + excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n + \ \"\"\n ]\n },\n \"mpaatRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n + \ \"mpaatRb\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"GB\",\n \"RB\"\n ],\n + \ \"description\": \"The rating system for trailer, DVD, and Ad in + the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n + \ },\n \"skfilmRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"G\",\n \"P2\",\n \"P5\",\n + \ \"P8\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n + \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n + \ \"skfilmUnrated\"\n ],\n \"description\": \"The + video's rating in Slovakia.\"\n },\n \"cbfcRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's Central Board of Film + Certification (CBFC - India) rating.\",\n \"enum\": [\n \"cbfcUnspecified\",\n + \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n + \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n + \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A + 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n + \ \"S\",\n \"\"\n ]\n },\n \"nfvcbRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n + \ \"18\",\n \"RE\",\n \"\"\n ],\n + \ \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n + \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n + \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n + \ \"nfvcbUnrated\"\n ],\n \"description\": \"The + video's rating from Nigeria's National Film and Video Censors Board.\",\n + \ \"type\": \"string\"\n },\n \"cceRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's rating from Portugal's + Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enumDescriptions\": + [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\",\n \"14\"\n + \ ],\n \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n + \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n + \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n + \ ]\n },\n \"rcnofRating\": {\n \"description\": + \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee + of the National Office of Film.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n + \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n + \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"mpaaRating\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's Motion Picture Association of America + (MPAA) rating.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n + \ \"NC-17\",\n \"! X\",\n \"\"\n ],\n + \ \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n + \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n + \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n + \ ]\n },\n \"anatelRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n + \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n + \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n + \ \"anatelUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n + \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n + \ \"\"\n ],\n \"description\": \"The video's Anatel + (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\"\n + \ },\n \"mccaaRating\": {\n \"description\": \"The video's + rating from Malta's Film Age-Classification Board.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG\",\n \"12A\",\n \"12\",\n \"14 + - this rating was removed from the new classification structure introduced + in 2013.\",\n \"15\",\n \"16 - this rating was removed + from the new classification structure introduced in 2013.\",\n \"18\",\n + \ \"\"\n ],\n \"enum\": [\n \"mccaaUnspecified\",\n + \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n + \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n + \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n + \ ]\n },\n \"djctqRatingReasons\": {\n \"type\": + \"array\",\n \"description\": \"Reasons that explain why the video + received its DJCQT (Brazil) rating.\",\n \"items\": {\n \"enum\": + [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n + \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n + \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n + \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n + \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n + \ \"djctqImpactingContent\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Brazil + rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia + (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n + \ \"Conte\xFAdo sexual (Sexual content)\",\n \"Nudez + (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo Expl\xEDcito + (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas + L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n + \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos + Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting + content)\"\n ]\n }\n },\n \"mdaRating\": + {\n \"description\": \"The video's rating from Singapore's Media + Development Authority (MDA) and, specifically, it's Board of Film Censors + (BFC).\",\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n + \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n + \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n + \ \"R21\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"kijkwijzerRating\": {\n \"description\": + \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de + Classificatie van Audiovisuele Media (Netherlands).\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n + \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n \"kijkwijzer6\",\n + \ \"kijkwijzer9\",\n \"kijkwijzer12\",\n \"kijkwijzer16\",\n + \ \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n ]\n + \ },\n \"mtrcbRating\": {\n \"enum\": [\n \"mtrcbUnspecified\",\n + \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n + \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n + \ \"mtrcbUnrated\"\n ],\n \"description\": \"The + video's rating from the Movie and Television Review and Classification Board + (Philippines).\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"R-13\",\n \"R-16\",\n + \ \"R-18\",\n \"X\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"mibacRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n + \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n + \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Ministero + dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\"\n },\n + \ \"eefilmRating\": {\n \"description\": \"The video's rating + in Estonia.\",\n \"enum\": [\n \"eefilmUnspecified\",\n + \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n + \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n + \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n + \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n + \ \"K-16\",\n \"\"\n ]\n },\n \"oflcRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n + \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n + \ \"RP16\",\n \"RP18\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n + \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n + \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n + \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n + \ \"oflcRp18\"\n ],\n \"description\": \"The video's + Office of Film and Literature Classification (OFLC - New Zealand) rating.\"\n + \ },\n \"rteRating\": {\n \"description\": \"The video's + rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"type\": + \"string\",\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n + \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"GA\",\n + \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n + \ ]\n },\n \"czfilmRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n + \ \"18\",\n \"\"\n ],\n \"enum\": [\n + \ \"czfilmUnspecified\",\n \"czfilmU\",\n \"czfilm12\",\n + \ \"czfilm14\",\n \"czfilm18\",\n \"czfilmUnrated\"\n + \ ],\n \"description\": \"The video's rating in the Czech + Republic.\",\n \"type\": \"string\"\n },\n \"rtcRating\": + {\n \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n + \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n + \ \"rtcD\",\n \"rtcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n + \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's General Directorate of Radio, Television and Cinematography + (Mexico) rating.\"\n },\n \"fcoRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"I\",\n + \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n + \ \"\"\n ],\n \"enum\": [\n \"fcoUnspecified\",\n + \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n + \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n + \ ],\n \"description\": \"The video's rating from Hong Kong's + Office for Film, Newspaper and Article Administration.\"\n },\n \"kmrbRating\": + {\n \"description\": \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) + rating. The KMRB rates videos in South Korea.\",\n \"enum\": [\n + \ \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n + \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n + \ \"kmrbUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n + \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 + \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 + \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ]\n },\n \"fcbmRating\": + {\n \"description\": \"The video's rating from Malaysia's Film Censorship + Board.\",\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n + \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n + \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n + \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n + \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n + \ ]\n },\n \"pefilmRating\": {\n \"enum\": + [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n + \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n + \ ],\n \"description\": \"The video's rating in Peru.\",\n \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n + \ \"\"\n ]\n },\n \"mekuRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n + \ \"meku7\",\n \"meku12\",\n \"meku16\",\n + \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"description\": + \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti + (National Audiovisual Institute).\",\n \"enumDescriptions\": [\n + \ \"\",\n \"S\",\n \"7\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\"\n ]\n + \ },\n \"cncRating\": {\n \"type\": \"string\",\n \"description\": + \"Rating system in France - Commission de classification cinematographique\",\n + \ \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n + \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n + \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"E\",\n \"interdiction\",\n \"\"\n ]\n + \ },\n \"djctqRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"L\",\n \"10\",\n \"12\",\n + \ \"14\",\n \"16\",\n \"18\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The video's Departamento de Justi\xE7a, + Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n + \ \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n + \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n + \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n + \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n + \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n + \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n + \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n + \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n + \ \"djctqUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"moctwRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n + \ \"R-12\",\n \"R-15\"\n ],\n \"enum\": + [\n \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n + \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n + \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"description\": + \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\"\n + \ },\n \"catvfrRating\": {\n \"description\": \"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.\",\n \"enum\": + [\n \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n + \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n + \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n + \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"smaisRating\": + {\n \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n + \ \"smais7\",\n \"smais12\",\n \"smais14\",\n + \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating in Iceland.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"L\",\n \"7\",\n \"12\",\n \"14\",\n + \ \"16\",\n \"18\",\n \"\"\n ]\n + \ },\n \"eirinRating\": {\n \"enum\": [\n \"eirinUnspecified\",\n + \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n + \ \"eirinR18plus\",\n \"eirinUnrated\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n + \ ],\n \"description\": \"The video's Eirin (\u6620\u502B) + rating. Eirin is the Japanese rating system.\",\n \"type\": \"string\"\n + \ },\n \"cicfRating\": {\n \"enum\": [\n \"cicfUnspecified\",\n + \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n + \ \"cicfUnrated\"\n ],\n \"description\": \"The + video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n + \ ]\n },\n \"nbcplRating\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's rating in Poland.\",\n \"enum\": + [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n + \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n + \ \"nbcplUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"superStickerDetails\": {\n \"description\": \"Details about - the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"memberMilestoneChatDetails\": {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"description\": \"Details about the Member Milestone Chat event, - this is only set if the type is 'memberMilestoneChatEvent'.\"\n },\n - \ \"authorChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the user that authored this message, this field is not always - filled. textMessageEvent - the user that wrote the message fanFundingEvent - - the user that funded the broadcast newSponsorEvent - the user that just - became a sponsor memberMilestoneChatEvent - the member that sent the message - membershipGiftingEvent - the user that made the purchase giftMembershipReceivedEvent - - the user that received the gift membership messageDeletedEvent - the moderator - that took the action messageRetractedEvent - the author that retracted their - message userBannedEvent - the moderator that took the action superChatEvent - - the user that made the purchase superStickerEvent - the user that made the - purchase\"\n },\n \"giftMembershipReceivedDetails\": {\n \"$ref\": - \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": \"Details - about the Gift Membership Received event, this is only set if the type is - 'giftMembershipReceivedEvent'.\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"textMessageDetails\": - {\n \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\",\n \"$ref\": \"LiveChatTextMessageDetails\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the message was orignally published.\"\n },\n \"fanFundingEventDetails\": - {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n - \ },\n \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n - \ \"description\": \"Details about the Super Chat event, this is only - set if the type is 'superChatEvent'.\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n }\n },\n - \ \"id\": \"LiveChatMessageSnippet\"\n },\n \"InvideoTiming\": {\n - \ \"properties\": {\n \"offsetMs\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"Defines the - time at which the promotion will appear. Depending on the value of type the - value of the offsetMs field will represent a time offset from the start or - from the end of the video, expressed in milliseconds.\"\n },\n \"durationMs\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\"\n },\n \"type\": - {\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"description\": \"Describes a timing type. If the - value is offsetFromStart, then the offsetMs field represents an offset from - the start of the video. If the value is offsetFromEnd, then the offsetMs field - represents an offset from the end of the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n }\n },\n \"id\": \"InvideoTiming\",\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\",\n \"type\": - \"object\"\n },\n \"LiveBroadcastStatistics\": {\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"totalChatCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\"\n - \ },\n \"concurrentViewers\": {\n \"description\": \"The - number of viewers currently watching the broadcast. The property and its value - will be present if the broadcast has current viewers and the broadcast owner - has not hidden the viewcount for the video. Note that YouTube stops tracking - the number of concurrent viewers for a broadcast when the broadcast ends. - So, this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n }\n },\n \"description\": - \"Statistics about the live broadcast. These represent a snapshot of the values - at the time of the request. Statistics are only returned for live broadcasts.\"\n - \ },\n \"LiveChatModeratorSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the live chat this moderator can act - on.\"\n },\n \"moderatorDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the moderator.\"\n }\n },\n - \ \"id\": \"LiveChatModeratorSnippet\"\n },\n \"ActivityContentDetailsComment\": - {\n \"description\": \"Information about a resource that received a comment.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with the - comment.\"\n }\n },\n \"id\": \"ActivityContentDetailsComment\"\n - \ },\n \"ChannelBrandingSettings\": {\n \"properties\": {\n \"hints\": - {\n \"description\": \"Additional experimental branding properties.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"PropertyValue\"\n }\n },\n \"image\": {\n \"$ref\": - \"ImageSettings\",\n \"description\": \"Branding properties for branding - images.\"\n },\n \"channel\": {\n \"$ref\": \"ChannelSettings\",\n - \ \"description\": \"Branding properties for the channel view.\"\n - \ },\n \"watch\": {\n \"description\": \"Branding properties - for the watch page.\",\n \"$ref\": \"WatchSettings\"\n }\n - \ },\n \"description\": \"Branding properties of a YouTube channel.\",\n - \ \"type\": \"object\",\n \"id\": \"ChannelBrandingSettings\"\n },\n - \ \"ChannelProfileDetails\": {\n \"id\": \"ChannelProfileDetails\",\n - \ \"properties\": {\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube channel ID.\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\",\n - \ \"type\": \"object\"\n },\n \"VideoCategorySnippet\": {\n \"properties\": - {\n \"title\": {\n \"description\": \"The video category's - title.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel that created the video category.\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\"\n - \ },\n \"assignable\": {\n \"type\": \"boolean\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Basic details - about a video category, such as its localized title.\",\n \"id\": \"VideoCategorySnippet\"\n - \ },\n \"Cuepoint\": {\n \"properties\": {\n \"cueType\": - {\n \"enum\": [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\"\n },\n \"insertionOffsetTimeMs\": - {\n \"description\": \"The time when the cuepoint should be inserted - by offset to the broadcast actual start time.\",\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n },\n \"walltimeMs\": {\n \"description\": - \"The wall clock time at which the cuepoint should be inserted. Only one of - insertion_offset_time_ms and walltime_ms may be set at a time.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"durationSecs\": - {\n \"description\": \"The duration of this cuepoint.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The identifier - for cuepoint resource.\"\n }\n },\n \"id\": \"Cuepoint\",\n - \ \"type\": \"object\",\n \"description\": \"Note that there may - be a 5-second end-point resolution issue. For instance, if a cuepoint comes - in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. - This is an artifact of HLS.\"\n },\n \"IngestionInfo\": {\n \"properties\": - {\n \"ingestionAddress\": {\n \"type\": \"string\",\n \"description\": - \"The primary ingestion URL that you should use to stream video to YouTube. - You must stream video to this URL. Depending on which application or tool - you use to encode your video stream, you may need to enter the stream URL - and stream name separately or you may need to concatenate them in the following - format: *STREAM_URL/STREAM_NAME* \"\n },\n \"rtmpsBackupIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - backupIngestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"streamName\": - {\n \"description\": \"The stream name that YouTube assigns to the - video stream.\",\n \"type\": \"string\"\n },\n \"backupIngestionAddress\": - {\n \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\",\n - \ \"type\": \"string\"\n },\n \"rtmpsIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of ingestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"IngestionInfo\",\n \"description\": \"Describes - information necessary for ingesting an RTMP, HTTP, or SRT stream.\"\n },\n - \ \"ActivityContentDetailsSubscription\": {\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource that the user subscribed - to.\"\n }\n },\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"description\": \"Information about a channel that a user subscribed - to.\",\n \"type\": \"object\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of moderators that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n - \ }\n }\n },\n \"id\": \"LiveChatModeratorListResponse\"\n - \ },\n \"ChannelSectionListResponse\": {\n \"id\": \"ChannelSectionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#channelSectionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of ChannelSections that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ }\n },\n \"visitorId\": {\n \"description\": + \ \"icaaRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"APTA\",\n \"7\",\n \"12\",\n \"13\",\n + \ \"16\",\n \"18\",\n \"X\",\n \"\"\n + \ ],\n \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n + \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n + \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n + \ \"icaaUnrated\"\n ],\n \"description\": \"The + video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA + - Spain) rating.\",\n \"type\": \"string\"\n },\n \"menaMpaaRating\": + {\n \"description\": \"The rating system for MENA countries, a clone + of MPAA. It is needed to prevent titles go live w/o additional QC check, since + some of them can be inappropriate for the countries at all. See b/33408548 + for more details.\",\n \"enum\": [\n \"menaMpaaUnspecified\",\n + \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n + \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n + \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n + \ ]\n },\n \"kfcbRating\": {\n \"description\": + \"The video's rating from the Kenya Film Classification Board.\",\n \"type\": + \"string\",\n \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n + \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n + \ \"kfcbUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n + \ \"18\",\n \"\"\n ]\n },\n \"medietilsynetRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n + \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n + \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n + \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n + \ ],\n \"description\": \"The video's rating from Medietilsynet, + the Norwegian Media Authority.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n + \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n + \ \"\"\n ]\n },\n \"egfilmRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's rating in Egypt.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"GN\",\n + \ \"18\",\n \"BN\",\n \"\"\n ],\n + \ \"enum\": [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n + \ \"egfilm18\",\n \"egfilmBn\",\n \"egfilmUnrated\"\n + \ ]\n },\n \"incaaRating\": {\n \"enum\": [\n + \ \"incaaUnspecified\",\n \"incaaAtp\",\n \"incaaSam13\",\n + \ \"incaaSam16\",\n \"incaaSam18\",\n \"incaaC\",\n + \ \"incaaUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's INCAA (Instituto Nacional de Cine + y Artes Audiovisuales - Argentina) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 + (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para + mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 + a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n + condicionada)\",\n \"\"\n ]\n },\n \"agcomRating\": + {\n \"description\": \"The video's rating from Italy's Autorit\xE0 + per le Garanzie nelle Comunicazioni (AGCOM).\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n + \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"VM14\",\n \"VM18\",\n \"\"\n ]\n + \ },\n \"nbcRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"G\",\n \"PG\",\n \"12+\",\n + \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n + \ \"\"\n ],\n \"enum\": [\n \"nbcUnspecified\",\n + \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n + \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n + \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"description\": + \"The video's rating from the Maldives National Bureau of Classification.\",\n + \ \"type\": \"string\"\n },\n \"fmocRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"\"\n + \ ],\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n + \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n + \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n + \ ],\n \"description\": \"This property has been deprecated. + Use the contentDetails.contentRating.cncRating instead.\",\n \"type\": + \"string\"\n },\n \"cnaRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n + \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n + \ \"cnaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"18+\",\n \"\"\n ],\n + \ \"description\": \"The video's rating from Romania's CONSILIUL NATIONAL + AL AUDIOVIZUALULUI (CNA).\"\n },\n \"resorteviolenciaRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n + \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n + \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + in Venezuela.\"\n },\n \"lsfRating\": {\n \"enum\": + [\n \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n + \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n + \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n + \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n + \ \"21\",\n \"\"\n ],\n \"description\": + \"The video's rating from Indonesia's Lembaga Sensor Film.\"\n },\n + \ \"fskRating\": {\n \"enum\": [\n \"fskUnspecified\",\n + \ \"fsk0\",\n \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n + \ \"fsk18\",\n \"fskUnrated\"\n ],\n \"description\": + \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) + rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK + 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n + \ ]\n },\n \"russiaRating\": {\n \"enum\": + [\n \"russiaUnspecified\",\n \"russia0\",\n \"russia6\",\n + \ \"russia12\",\n \"russia16\",\n \"russia18\",\n + \ \"russiaUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"0+\",\n + \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n + \ \"\"\n ],\n \"description\": \"The video's National + Film Registry of the Russian Federation (MKRF - Russia) rating.\"\n },\n + \ \"cscfRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"AL\",\n \"A\",\n \"6\",\n \"9\",\n + \ \"12\",\n \"16\",\n \"18\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from Luxembourg's + Commission de surveillance de la classification des films (CSCF).\",\n \"enum\": + [\n \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n + \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n + \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"nmcRating\": + {\n \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n + \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n + \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n + \ \"nmcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The National Media Council ratings system for United Arab Emirates.\"\n + \ },\n \"ilfilmRating\": {\n \"description\": \"The + video's rating in Israel.\",\n \"enum\": [\n \"ilfilmUnspecified\",\n + \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n + \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n + \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"grfilmRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n + \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n + \ \"\"\n ],\n \"enum\": [\n \"grfilmUnspecified\",\n + \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n + \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n + \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n + \ \"description\": \"The video's rating in Greece.\"\n },\n + \ \"tvpgRating\": {\n \"description\": \"The video's TV Parental + Guidelines (TVPG) rating.\",\n \"type\": \"string\",\n \"enum\": + [\n \"tvpgUnspecified\",\n \"tvpgY\",\n \"tvpgY7\",\n + \ \"tvpgY7Fv\",\n \"tvpgG\",\n \"tvpgPg\",\n + \ \"pg14\",\n \"tvpgMa\",\n \"tvpgUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n + \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n + \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n + \ ]\n },\n \"mocRating\": {\n \"description\": + \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"enum\": + [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n + \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n + \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n + \ \"Banned\",\n \"\"\n ]\n },\n \"fpbRatingReasons\": + {\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"South Africa rating content descriptors.\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": + [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n + \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n + \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n + \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n + \ \"fpbImitativeActsTechniques\"\n ]\n },\n + \ \"type\": \"array\",\n \"description\": \"Reasons that + explain why the video received its FPB (South Africa) rating.\"\n },\n + \ \"mccypRating\": {\n \"enum\": [\n \"mccypUnspecified\",\n + \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n + \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"description\": + \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) + Media Council for Children and Young People.\",\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"chfilmRating\": {\n \"description\": \"The + video's rating in Switzerland.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n + \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n + \ \"chfilm18\",\n \"chfilmUnrated\"\n ]\n },\n + \ \"acbRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"Programs that have + been given a P classification by the Australian Communications and Media Authority. + These programs are intended for preschool children.\",\n \"Programs + that have been given a C classification by the Australian Communications and + Media Authority. These programs are intended for children (other than preschool + children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n + \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n + \ ],\n \"description\": \"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.\",\n + \ \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n + \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n + \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n + \ \"acbUnrated\"\n ]\n },\n \"bbfcRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n + \ \"18\",\n \"R18\",\n \"\"\n ],\n + \ \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n + \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n + \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n + \ \"bbfcUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's British Board of Film Classification + (BBFC) rating.\"\n },\n \"ytRating\": {\n \"enum\": + [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"A rating that + YouTube uses to identify age-restricted content.\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ]\n },\n \"smsaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"All + ages\",\n \"7\",\n \"11\",\n \"15\",\n \"\"\n + \ ],\n \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n + \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n + \ \"smsaUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from Statens medier\xE5d (Sweden's + National Media Council).\"\n },\n \"csaRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's rating from France's + Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\",\n + \ \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n + \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n + \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"Interdiction\",\n \"\"\n ]\n },\n + \ \"catvRating\": {\n \"description\": \"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.\",\n \"enum\": [\n \"catvUnspecified\",\n + \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n + \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n + \ \"catvUnrated\",\n \"catvE\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"C\",\n + \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n + \ \"18+\",\n \"\",\n \"\"\n ]\n },\n + \ \"nkclvRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"U\",\n \"7+\",\n \"12+\",\n \"! + 16+\",\n \"18+\",\n \"\"\n ],\n \"description\": + \"The video's rating from the Nacion\xE3lais Kino centrs (National Film Centre + of Latvia).\",\n \"type\": \"string\",\n \"enum\": [\n \"nkclvUnspecified\",\n + \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n + \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n + \ ]\n },\n \"chvrsRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"chvrsUnspecified\",\n \"chvrsG\",\n + \ \"chvrsPg\",\n \"chvrs14a\",\n \"chvrs18a\",\n + \ \"chvrsR\",\n \"chvrsE\",\n \"chvrsUnrated\"\n + \ ],\n \"description\": \"The video's Canadian Home Video + Rating System (CHVRS) rating.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"14A\",\n \"18A\",\n + \ \"R\",\n \"E\",\n \"\"\n ]\n },\n + \ \"nfrcRating\": {\n \"enum\": [\n \"nfrcUnspecified\",\n + \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n + \ \"nfrcX\",\n \"nfrcUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from the Bulgarian + National Film Center.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A\",\n \"B\",\n \"C\",\n \"D\",\n + \ \"X\",\n \"\"\n ]\n },\n \"mcstRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"mcstUnspecified\",\n + \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n + \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n + \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"description\": + \"The video's rating system for Vietnam - MCST\",\n \"enumDescriptions\": + [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n + \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n + \ \"\"\n ]\n },\n \"ifcoRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's Irish Film Classification + Office (IFCO - Ireland) rating. See the IFCO website for more information.\",\n + \ \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n + \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n + \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n + \ \"ifco18\",\n \"ifcoUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n + \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n + \ \"18\",\n \"\"\n ]\n },\n \"ecbmctRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"7A\",\n \"7+\",\n \"13A\",\n + \ \"13+\",\n \"15A\",\n \"15+\",\n \"18+\",\n + \ \"\"\n ],\n \"enum\": [\n \"ecbmctUnspecified\",\n + \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n + \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n + \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n + \ ],\n \"description\": \"Rating system in Turkey - Evaluation + and Classification Board of the Ministry of Culture and Tourism\"\n }\n + \ },\n \"id\": \"ContentRating\",\n \"description\": \"Ratings + schemes. The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n + \ \"type\": \"object\"\n },\n \"VideoRecordingDetails\": {\n \"type\": + \"object\",\n \"properties\": {\n \"location\": {\n \"description\": + \"The geolocation information associated with the video.\",\n \"$ref\": + \"GeoPoint\"\n },\n \"recordingDate\": {\n \"type\": + \"string\",\n \"description\": \"The date and time when the video + was recorded.\",\n \"format\": \"date-time\"\n },\n \"locationDescription\": + {\n \"type\": \"string\",\n \"description\": \"The text + description of the location where the video was recorded.\"\n }\n },\n + \ \"description\": \"Recording information associated with the video.\",\n + \ \"id\": \"VideoRecordingDetails\"\n },\n \"VideoSnippet\": {\n + \ \"type\": \"object\",\n \"description\": \"Basic details about + a video, including title, description, uploader, thumbnails and category.\",\n + \ \"properties\": {\n \"tags\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"A list of keyword tags + associated with the video. Tags may contain spaces.\",\n \"type\": + \"array\"\n },\n \"defaultLanguage\": {\n \"type\": + \"string\",\n \"description\": \"The language of the videos's default + snippet.\"\n },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's description. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the channel that the video was uploaded to.\"\n },\n \"localized\": + {\n \"$ref\": \"VideoLocalization\",\n \"description\": + \"Localized snippet selected with the hl parameter. If no such localization + exists, this field is populated with the default snippet. (Read-only)\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The video's title. @mutable youtube.videos.insert youtube.videos.update\"\n + \ },\n \"defaultAudioLanguage\": {\n \"type\": \"string\",\n + \ \"description\": \"The default_audio_language property specifies + the language spoken in the video's default audio track.\"\n },\n \"liveBroadcastContent\": + {\n \"description\": \"Indicates if the video is an upcoming/active + live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active + live broadcast.\",\n \"type\": \"string\",\n \"enum\": [\n + \ \"none\",\n \"upcoming\",\n \"live\",\n + \ \"completed\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been completed.\"\n + \ ]\n },\n \"channelTitle\": {\n \"description\": + \"Channel title for the channel that the video belongs to.\",\n \"type\": + \"string\"\n },\n \"categoryId\": {\n \"description\": + \"The YouTube video category associated with the video.\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the video was uploaded.\",\n + \ \"format\": \"date-time\"\n },\n \"thumbnails\": {\n + \ \"description\": \"A map of thumbnail images associated with the + video. 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.\",\n + \ \"$ref\": \"ThumbnailDetails\"\n }\n },\n \"id\": + \"VideoSnippet\"\n },\n \"VideoMonetizationDetails\": {\n \"properties\": + {\n \"access\": {\n \"description\": \"The value of access + indicates whether the video can be monetized or not.\",\n \"$ref\": + \"AccessPolicy\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"VideoMonetizationDetails\",\n \"description\": \"Details about monetization + of a YouTube Video.\"\n },\n \"VideoAbuseReportReason\": {\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID of this abuse report reason.\"\n + \ },\n \"snippet\": {\n \"description\": \"The `snippet` + object contains basic details about the abuse report reason.\",\n \"$ref\": + \"VideoAbuseReportReasonSnippet\"\n },\n \"kind\": {\n \"default\": + \"youtube#videoAbuseReportReason\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"A `__videoAbuseReportReason__` resource identifies a reason that a video + could be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\",\n + \ \"id\": \"VideoAbuseReportReason\",\n \"type\": \"object\"\n },\n + \ \"ActivityContentDetailsPromotedItem\": {\n \"properties\": {\n \"impressionUrl\": + {\n \"description\": \"The list of impression URLs. The client should + ping all of these URLs to indicate that the user was shown this promoted item.\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": + \"array\"\n },\n \"destinationUrl\": {\n \"type\": + \"string\",\n \"description\": \"The URL the client should direct + the user to, if the user chooses to visit the advertiser's website.\"\n },\n + \ \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the promoted video.\"\n },\n + \ \"clickTrackingUrl\": {\n \"description\": \"The URL the + client should ping to indicate that the user clicked through on this promoted + item.\",\n \"type\": \"string\"\n },\n \"ctaType\": + {\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"ctaTypeUnspecified\",\n + \ \"visitAdvertiserSite\"\n ],\n \"description\": + \"The type of call-to-action, a message to the user indicating action that + can be taken.\",\n \"type\": \"string\"\n },\n \"descriptionText\": + {\n \"description\": \"The text description to accompany the promoted + item.\",\n \"type\": \"string\"\n },\n \"adTag\": {\n + \ \"type\": \"string\",\n \"description\": \"The URL the + client should fetch to request a promoted item.\"\n },\n \"creativeViewUrl\": + {\n \"description\": \"The URL the client should ping to indicate + that the user was shown this promoted item.\",\n \"type\": \"string\"\n + \ },\n \"forecastingUrl\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\",\n \"description\": + \"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.\"\n },\n \"customCtaButtonText\": {\n \"description\": + \"The custom call-to-action button text. If specified, it will override the + default button text for the cta_type.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"ActivityContentDetailsPromotedItem\",\n + \ \"description\": \"Details about a resource which is being promoted.\",\n + \ \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": {\n + \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#liveChatMessageListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"visitorId\": {\n \"description\": \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"pollingIntervalMillis\": {\n \"format\": \"uint32\",\n + \ \"description\": \"The amount of time the client should wait before + polling again.\",\n \"type\": \"integer\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"VideoLiveStreamingDetails\": - {\n \"properties\": {\n \"actualEndTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The time that the broadcast actually - ended. This value will not be available until the broadcast is over.\",\n - \ \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"description\": \"The time that the broadcast is scheduled to - begin.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"scheduledEndTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The time - that the broadcast is scheduled to end. If the value is empty or the property - is not present, then the broadcast is scheduled to contiue indefinitely.\"\n - \ },\n \"activeLiveChatId\": {\n \"description\": \"The - ID of the currently active live chat attached to this video. This field is - filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\",\n \"type\": \"string\"\n },\n \"actualStartTime\": - {\n \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"concurrentViewers\": - {\n \"description\": \"The number of viewers currently watching the - broadcast. The property and its value will be present if the broadcast has - current viewers and the broadcast owner has not hidden the viewcount for the - video. Note that YouTube stops tracking the number of concurrent viewers for - a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Details about the live streaming metadata.\",\n \"id\": \"VideoLiveStreamingDetails\"\n - \ },\n \"MembershipsDuration\": {\n \"type\": \"object\",\n \"properties\": - {\n \"memberSince\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the user became a continuous member across all levels.\"\n - \ },\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"description\": + \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n + \ }\n },\n \"offlineAt\": {\n \"description\": + \"The date and time when the underlying stream went offline.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n }\n },\n \"id\": + \"LiveChatMessageListResponse\",\n \"type\": \"object\"\n },\n \"VideoProcessingDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"processingProgress\": + {\n \"description\": \"The processingProgress object contains information + about the progress YouTube has made in processing the video. The values are + really only relevant if the video's processing status is processing.\",\n + \ \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n },\n + \ \"editorSuggestionsAvailability\": {\n \"description\": \"This + value indicates whether video editing suggestions, which might improve video + quality or the playback experience, are available for the video. You can retrieve + these suggestions by requesting the suggestions part in your videos.list() + request.\",\n \"type\": \"string\"\n },\n \"processingIssuesAvailability\": + {\n \"type\": \"string\",\n \"description\": \"This value + indicates whether the video processing engine has generated suggestions that + might improve YouTube's ability to process the the video, warnings that explain + video processing problems, or errors that cause video processing problems. + You can retrieve these suggestions by requesting the suggestions part in your + videos.list() request.\"\n },\n \"processingFailureReason\": + {\n \"description\": \"The reason that YouTube failed to process + the video. This property will only have a value if the processingStatus property's + value is failed.\",\n \"type\": \"string\",\n \"enum\": + [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n + \ \"other\"\n ],\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"processingStatus\": {\n \"description\": \"The video's + processing status. This value indicates whether YouTube was able to process + the video or if the video is still being processed.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"processing\",\n \"succeeded\",\n \"failed\",\n + \ \"terminated\"\n ]\n },\n \"tagSuggestionsAvailability\": + {\n \"description\": \"This value indicates whether keyword (tag) + suggestions are available for the video. Tags can be added to a video's metadata + to make it easier for other users to find the video. You can retrieve these + suggestions by requesting the suggestions part in your videos.list() request.\",\n + \ \"type\": \"string\"\n },\n \"thumbnailsAvailability\": + {\n \"description\": \"This value indicates whether thumbnail images + have been generated for the video.\",\n \"type\": \"string\"\n },\n + \ \"fileDetailsAvailability\": {\n \"type\": \"string\",\n + \ \"description\": \"This value indicates whether file details are + available for the uploaded video. You can retrieve a video's file details + by requesting the fileDetails part in your videos.list() request.\"\n }\n + \ },\n \"id\": \"VideoProcessingDetails\",\n \"description\": + \"Describes processing status and progress and availability of some other + Video resource parts.\"\n },\n \"LiveChatNewSponsorDetails\": {\n \"type\": + \"object\",\n \"properties\": {\n \"isUpgrade\": {\n \"type\": + \"boolean\",\n \"description\": \"If the viewer just had upgraded + from a lower level. For viewers that were not members at the time of purchase, + this field is false.\"\n },\n \"memberLevelName\": {\n \"description\": + \"The name of the Level that the viewer just had joined. The Level names are + defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"LiveChatNewSponsorDetails\"\n },\n \"VideoContentDetails\": + {\n \"type\": \"object\",\n \"id\": \"VideoContentDetails\",\n \"properties\": + {\n \"definition\": {\n \"enum\": [\n \"sd\",\n + \ \"hd\"\n ],\n \"description\": \"The value of + definition indicates whether the video is available in high definition or + only in standard definition.\",\n \"enumDescriptions\": [\n \"sd\",\n + \ \"hd\"\n ],\n \"type\": \"string\"\n },\n + \ \"regionRestriction\": {\n \"description\": \"The regionRestriction + object contains information about the countries where a video is (or is not) + viewable. The object will contain either the contentDetails.regionRestriction.allowed + property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": + \"VideoContentDetailsRegionRestriction\"\n },\n \"caption\": + {\n \"type\": \"string\",\n \"enum\": [\n \"true\",\n + \ \"false\"\n ],\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"description\": \"The value of + captions indicates whether the video has captions or not.\"\n },\n + \ \"hasCustomThumbnail\": {\n \"type\": \"boolean\",\n \"description\": + \"Indicates whether the video uploader has provided a custom thumbnail image + for the video. This property is only visible to the video uploader.\"\n },\n + \ \"dimension\": {\n \"description\": \"The value of dimension + indicates whether the video is available in 3D or in 2D.\",\n \"type\": + \"string\"\n },\n \"projection\": {\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"rectangular\",\n \"360\"\n + \ ],\n \"description\": \"Specifies the projection format + of the video.\"\n },\n \"duration\": {\n \"type\": + \"string\",\n \"description\": \"The length of the video. The tag + value is an ISO 8601 duration in the format PT#M#S, in which the letters PT + indicate that the value specifies a period of time, and the letters M and + S refer to length in minutes and seconds, respectively. The # characters preceding + the M and S letters are both integers that specify the number of minutes (or + seconds) of the video. For example, a value of PT15M51S indicates that the + video is 15 minutes and 51 seconds long.\"\n },\n \"contentRating\": + {\n \"$ref\": \"ContentRating\",\n \"description\": \"Specifies + the ratings that the video received under various rating schemes.\"\n },\n + \ \"countryRestriction\": {\n \"description\": \"The countryRestriction + object contains information about the countries where a video is (or is not) + viewable.\",\n \"$ref\": \"AccessPolicy\"\n },\n \"licensedContent\": + {\n \"type\": \"boolean\",\n \"description\": \"The value + of is_license_content indicates whether the video is licensed content.\"\n + \ }\n },\n \"description\": \"Details about the content of + a YouTube Video.\"\n },\n \"PlaylistItemSnippet\": {\n \"description\": + \"Basic details about a playlist, including title, description and thumbnails. + Basic details of a YouTube Playlist item provided by the author. Next ID: + 15\",\n \"properties\": {\n \"videoOwnerChannelId\": {\n \"description\": + \"Channel id for the channel this video belongs to.\",\n \"type\": + \"string\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the playlist item. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"videoOwnerChannelTitle\": {\n + \ \"type\": \"string\",\n \"description\": \"Channel title + for the channel this video belongs to.\"\n },\n \"resourceId\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n + \ \"youtube.playlistItems.update\"\n ]\n },\n + \ \"$ref\": \"ResourceId\",\n \"description\": \"The id object + contains information that can be used to uniquely identify the resource that + is included in the playlist as the playlist item.\"\n },\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The item's + title.\"\n },\n \"channelTitle\": {\n \"description\": + \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": + \"string\"\n },\n \"position\": {\n \"description\": + \"The order in which the item appears in the playlist. The value uses a zero-based + index, so the first item has a position of 0, the second item has a position + of 1, and so forth.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n },\n \"playlistId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist + item is in.\",\n \"annotations\": {\n \"required\": [\n + \ \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n + \ ]\n },\n \"type\": \"string\"\n },\n + \ \"description\": {\n \"type\": \"string\",\n \"description\": + \"The item's description.\"\n },\n \"publishedAt\": {\n \"type\": + \"string\",\n \"description\": \"The date and time that the item + was added to the playlist.\",\n \"format\": \"date-time\"\n },\n + \ \"channelId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the user that added the item to the playlist.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"PlaylistItemSnippet\"\n },\n \"CdnSettings\": {\n \"id\": + \"CdnSettings\",\n \"type\": \"object\",\n \"description\": \"Brief + description of the live stream cdn settings.\",\n \"properties\": {\n + \ \"ingestionInfo\": {\n \"description\": \"The ingestionInfo + object contains information that YouTube provides that you need to transmit + your RTMP or HTTP stream to YouTube.\",\n \"$ref\": \"IngestionInfo\"\n + \ },\n \"frameRate\": {\n \"type\": \"string\",\n \"enum\": + [\n \"30fps\",\n \"60fps\",\n \"variable\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The frame rate + of the inbound video data.\"\n },\n \"ingestionType\": {\n \"enum\": + [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n + \ \"hls\"\n ],\n \"annotations\": {\n \"required\": + [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \" The method or protocol used to transmit the video stream.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"format\": {\n \"description\": + \"The format of the video stream that you are sending to Youtube. \",\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n }\n + \ },\n \"resolution\": {\n \"description\": \"The resolution + of the inbound video data.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n + \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n + \ ],\n \"type\": \"string\"\n }\n }\n },\n + \ \"TestItemTestItemSnippet\": {\n \"type\": \"object\",\n \"properties\": + {},\n \"id\": \"TestItemTestItemSnippet\"\n },\n \"ActivityContentDetailsUpload\": + {\n \"description\": \"Information about the uploaded video.\",\n \"type\": + \"object\",\n \"id\": \"ActivityContentDetailsUpload\",\n \"properties\": + {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the uploaded video.\"\n }\n + \ }\n },\n \"MembershipsDuration\": {\n \"properties\": {\n + \ \"memberSince\": {\n \"description\": \"The date and time + when the user became a continuous member across all levels.\",\n \"type\": + \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"description\": \"The cumulative time the user has been a member across all levels in complete - months (the time is rounded down to the nearest integer).\"\n }\n },\n - \ \"id\": \"MembershipsDuration\"\n },\n \"LocalizedProperty\": - {\n \"properties\": {\n \"defaultLanguage\": {\n \"description\": - \"The language of the default property.\",\n \"$ref\": \"LanguageTag\"\n - \ },\n \"localized\": {\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n },\n \"type\": \"array\"\n },\n - \ \"default\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LocalizedProperty\"\n },\n - \ \"LiveChatSuperChatDetails\": {\n \"id\": \"LiveChatSuperChatDetails\",\n - \ \"properties\": {\n \"amountMicros\": {\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the user to this Super Chat event.\"\n },\n - \ \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made.\"\n },\n \"tier\": - {\n \"description\": \"The tier in which the amount belongs. Lower - amounts belong to lower tiers. The lowest tier is 1.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"MonitorStreamInfo\": {\n - \ \"id\": \"MonitorStreamInfo\",\n \"type\": \"object\",\n \"description\": - \"Settings and Info of the monitor stream\",\n \"properties\": {\n \"enableMonitorStream\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - determines whether the monitor stream is enabled for the broadcast. If the - monitor stream is enabled, then YouTube will broadcast the event content on - a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"embedHtml\": {\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\",\n \"type\": - \"string\"\n },\n \"broadcastStreamDelayMs\": {\n \"type\": - \"integer\",\n \"description\": \"If you have set the enableMonitorStream - property to true, then this property determines the length of the live broadcast - delay.\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"format\": \"uint32\"\n }\n - \ }\n },\n \"LiveChatMessageListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageListResponse\",\n \"properties\": {\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"offlineAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the underlying stream - went offline.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatMessage\"\n }\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\"\n - \ },\n \"pollingIntervalMillis\": {\n \"description\": - \"The amount of time the client should wait before polling again.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n }\n }\n },\n - \ \"ActivitySnippet\": {\n \"properties\": {\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The title of - the resource primarily associated with the activity.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel responsible - for this activity\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The description of the resource - primarily associated with the activity. @mutable youtube.activities.insert\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel associated with the activity.\",\n - \ \"type\": \"string\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n + months (the time is rounded down to the nearest integer).\",\n \"format\": + \"int32\",\n \"type\": \"integer\"\n }\n },\n \"id\": + \"MembershipsDuration\",\n \"type\": \"object\"\n },\n \"PageInfo\": + {\n \"id\": \"PageInfo\",\n \"properties\": {\n \"totalResults\": + {\n \"format\": \"int32\",\n \"type\": \"integer\",\n \"description\": + \"The total number of results in the result set.\"\n },\n \"resultsPerPage\": + {\n \"format\": \"int32\",\n \"description\": \"The number + of results included in the API response.\",\n \"type\": \"integer\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Paging + details for lists of resources, including total number of items available + and number of resources returned in a single page.\"\n },\n \"InvideoPosition\": + {\n \"properties\": {\n \"type\": {\n \"type\": \"string\",\n + \ \"description\": \"Defines the position type.\",\n \"enum\": + [\n \"corner\"\n ],\n \"enumDescriptions\": [\n + \ \"\"\n ]\n },\n \"cornerPosition\": {\n + \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n + \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"Describes in which corner of the video the visual widget will appear.\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"InvideoPosition\",\n + \ \"description\": \"Describes the spatial position of a visual widget + inside a video. It is a union of various position types, out of which only + will be set one.\"\n },\n \"I18nRegion\": {\n \"description\": + \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n + \ \"properties\": {\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the i18n region, such as + region code and human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the i18n region.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n + \ \"default\": \"youtube#i18nRegion\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"I18nRegion\"\n },\n \"PlaylistStatus\": + {\n \"id\": \"PlaylistStatus\",\n \"type\": \"object\",\n \"properties\": + {\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"type\": + \"string\",\n \"description\": \"The playlist's privacy status.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ]\n }\n }\n },\n \"ChannelContentDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"relatedPlaylists\": + {\n \"properties\": {\n \"likes\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the playlist that + contains the channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\"\n },\n \"uploads\": + {\n \"type\": \"string\",\n \"description\": \"The + ID of the playlist that contains the channel\\\"s uploaded videos. Use the + videos.insert method to upload new videos and the videos.delete method to + delete previously uploaded videos.\"\n },\n \"favorites\": + {\n \"type\": \"string\",\n \"description\": \"The + ID of the playlist that contains the channel\\\"s favorite videos. Use the + playlistItems.insert and playlistItems.delete to add or remove items from + that list.\"\n },\n \"watchLater\": {\n \"description\": + \"The ID of the playlist that contains the channel\\\"s watch later playlist. + Use the playlistItems.insert and playlistItems.delete to add or remove items + from that list.\",\n \"type\": \"string\"\n },\n \"watchHistory\": + {\n \"description\": \"The ID of the playlist that contains the + channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n }\n },\n + \ \"id\": \"ChannelContentDetails\",\n \"description\": \"Details + about the content of a channel.\"\n },\n \"SubscriptionListResponse\": + {\n \"type\": \"object\",\n \"id\": \"SubscriptionListResponse\",\n + \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\"\n },\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n },\n \"items\": {\n \"description\": \"A list + of subscriptions that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"Subscription\"\n },\n \"type\": + \"array\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"ResourceId\": {\n \"description\": \"A resource id is a + generic reference that points to another YouTube resource.\",\n \"properties\": + {\n \"kind\": {\n \"description\": \"The type of the API resource.\",\n + \ \"type\": \"string\"\n },\n \"playlistId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the referred resource, if that resource is a playlist. This property + is only present if the resourceId.kind value is youtube#playlist.\"\n },\n + \ \"videoId\": {\n \"description\": \"The ID that YouTube uses + to uniquely identify the referred resource, if that resource is a video. This + property is only present if the resourceId.kind value is youtube#video.\",\n + \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a channel. This property is only present if the resourceId.kind + value is youtube#channel.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"ResourceId\"\n },\n + \ \"SubscriptionSnippet\": {\n \"description\": \"Basic details about + a subscription, including title, description and thumbnails of the subscribed + item.\",\n \"type\": \"object\",\n \"id\": \"SubscriptionSnippet\",\n + \ \"properties\": {\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the subscriber's channel.\",\n + \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": + \"The subscription's details.\",\n \"type\": \"string\"\n },\n + \ \"publishedAt\": {\n \"description\": \"The date and time + that the subscription was created.\",\n \"type\": \"string\",\n \"format\": + \"date-time\"\n },\n \"title\": {\n \"description\": + \"The subscription's title.\",\n \"type\": \"string\"\n },\n + \ \"thumbnails\": {\n \"description\": \"A map of thumbnail + images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel title for the channel that the subscription + belongs to.\"\n },\n \"resourceId\": {\n \"description\": + \"The id object contains information about the channel that the user subscribed + to.\",\n \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n + \ ]\n },\n \"$ref\": \"ResourceId\"\n }\n + \ }\n },\n \"LiveBroadcastStatistics\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveBroadcastStatistics\",\n \"properties\": {\n \"totalChatCount\": + {\n \"type\": \"string\",\n \"description\": \"The total + number of live chat messages currently on the broadcast. The property and + its value will be present if the broadcast is public, has the live chat feature + enabled, and has at least one message. Note that this field will not be filled + after the broadcast ends. So this property would not identify the number of + chat messages for an archived video of a completed live broadcast.\",\n \"format\": + \"uint64\"\n },\n \"concurrentViewers\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + number of viewers currently watching the broadcast. The property and its value + will be present if the broadcast has current viewers and the broadcast owner + has not hidden the viewcount for the video. Note that YouTube stops tracking + the number of concurrent viewers for a broadcast when the broadcast ends. + So, this property would not identify the number of viewers watching an archived + video of a live broadcast that already ended.\"\n }\n },\n \"description\": + \"Statistics about the live broadcast. These represent a snapshot of the values + at the time of the request. Statistics are only returned for live broadcasts.\"\n + \ },\n \"VideoAbuseReport\": {\n \"id\": \"VideoAbuseReport\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"language\": + {\n \"type\": \"string\",\n \"description\": \"The language + that the content was viewed in.\"\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": + \"string\"\n },\n \"reasonId\": {\n \"type\": \"string\",\n + \ \"description\": \"The high-level, or primary, reason that the content + is abusive. The value is an abuse report reason ID.\"\n },\n \"comments\": + {\n \"description\": \"Additional comments regarding the abuse report.\",\n + \ \"type\": \"string\"\n },\n \"secondaryReasonId\": + {\n \"description\": \"The specific, or secondary, reason that this + content is abusive (if available). The value is an abuse report reason ID + that is a valid secondary reason for the primary reason.\",\n \"type\": + \"string\"\n }\n }\n },\n \"ActivitySnippet\": {\n \"id\": + \"ActivitySnippet\",\n \"type\": \"object\",\n \"properties\": {\n + \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": + \"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.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the channel associated with the activity.\"\n },\n \"description\": + {\n \"description\": \"The description of the resource primarily + associated with the activity. @mutable youtube.activities.insert\",\n \"type\": + \"string\"\n },\n \"groupId\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"type\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n \ \"like\",\n \"favorite\",\n \"comment\",\n \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n \ \"bulletin\",\n \"social\",\n \"channelItem\",\n \ \"promotedItem\"\n ],\n \"description\": \"The - type of activity that the resource describes.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the video was uploaded.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"groupId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n + type of activity that the resource describes.\"\n },\n \"title\": + {\n \"description\": \"The title of the resource primarily associated + with the activity.\",\n \"type\": \"string\"\n },\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel responsible for this activity\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time that the video was uploaded.\"\n \ }\n },\n \"description\": \"Basic details about an activity, including title, description, thumbnails, activity type and group. Next ID: - 12\",\n \"type\": \"object\",\n \"id\": \"ActivitySnippet\"\n },\n - \ \"LiveBroadcastSnippet\": {\n \"properties\": {\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the broadcast was added to YouTube's live broadcast schedule.\",\n - \ \"type\": \"string\"\n },\n \"isDefaultBroadcast\": - {\n \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\",\n \"type\": \"boolean\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The broadcast's title. Note that the broadcast represents exactly one YouTube - video. You can set this field by modifying the broadcast resource or by setting - the title field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - broadcast. For each nested object in this object, the key is the name of the - thumbnail image, and the value is an object that contains other information - about the thumbnail.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The broadcast's description. As - with the title, you can set this field by modifying the broadcast resource - or by setting the description field of the corresponding video resource.\"\n - \ },\n \"liveChatId\": {\n \"description\": \"The id - of the live chat for this broadcast.\",\n \"type\": \"string\"\n - \ },\n \"actualEndTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the broadcast actually ended. This information is only available - once the broadcast's state is complete.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that is publishing the broadcast.\"\n - \ },\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to end.\",\n \"type\": \"string\"\n },\n \"actualStartTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the broadcast actually started. This information is only - available once the broadcast's state is live.\",\n \"type\": \"string\"\n - \ },\n \"scheduledStartTime\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast is scheduled to start.\"\n }\n - \ },\n \"id\": \"LiveBroadcastSnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic broadcast information.\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"properties\": {\n \"bannedUserDetails\": {\n \"description\": - \"The details of the user that was banned.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banDurationSeconds\": {\n \"description\": - \"The duration of the ban. This property is only present if the banType is - temporary.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"banType\": {\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of ban.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"VideoSuggestionsTagSuggestion\": {\n \"id\": \"VideoSuggestionsTagSuggestion\",\n - \ \"properties\": {\n \"tag\": {\n \"type\": \"string\",\n - \ \"description\": \"The keyword tag suggested for the video.\"\n - \ },\n \"categoryRestricts\": {\n \"type\": \"array\",\n - \ \"description\": \"A set of video categories for which the tag is - relevant. You can use this information to display appropriate tag suggestions - based on the video category that the video uploader associates with the video. - By default, tag suggestions are relevant for all categories if there are no - restricts defined for the keyword.\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"description\": \"A single - tag suggestion with it's relevance information.\",\n \"type\": \"object\"\n - \ },\n \"CdnSettings\": {\n \"id\": \"CdnSettings\",\n \"type\": - \"object\",\n \"properties\": {\n \"frameRate\": {\n \"type\": - \"string\",\n \"description\": \"The frame rate of the inbound video - data.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ]\n },\n - \ \"ingestionInfo\": {\n \"description\": \"The ingestionInfo - object contains information that YouTube provides that you need to transmit - your RTMP or HTTP stream to YouTube.\",\n \"$ref\": \"IngestionInfo\"\n - \ },\n \"format\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The format of the video stream that you are sending - to Youtube. \"\n },\n \"ingestionType\": {\n \"enum\": - [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \" The method or protocol used to transmit the video stream.\",\n \"type\": - \"string\"\n },\n \"resolution\": {\n \"enum\": [\n - \ \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"description\": \"Brief description - of the live stream cdn settings.\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"memberMonth\": - {\n \"format\": \"uint32\",\n \"description\": \"The total - amount of months (rounded up) the viewer has been a member that granted them - this Member Milestone Chat. This is the same number of months as is being - displayed to YouTube users.\",\n \"type\": \"integer\"\n },\n - \ \"userComment\": {\n \"description\": \"The comment added - by the member to this Member Milestone Chat. This field is empty for messages - without a comment from the member.\",\n \"type\": \"string\"\n },\n - \ \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the Level at which the viever is a member. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n }\n },\n \"id\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"ChannelStatus\": {\n \"type\": \"object\",\n \"description\": - \"JSON template for the status part of a channel.\",\n \"properties\": - {\n \"privacyStatus\": {\n \"type\": \"string\",\n \"description\": - \"Privacy status of the channel.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"longUploadsStatus\": {\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"type\": \"string\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"isLinked\": {\n - \ \"type\": \"boolean\",\n \"description\": \"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.\"\n }\n },\n - \ \"id\": \"ChannelStatus\"\n },\n \"CommentListResponse\": {\n - \ \"id\": \"CommentListResponse\",\n \"properties\": {\n \"items\": - {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of comments - that match the request criteria.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"default\": \"youtube#commentListResponse\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": + 12\"\n },\n \"MemberListResponse\": {\n \"properties\": {\n \"items\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n },\n \"description\": \"A list - of valid abuse reasons that are used with `video.ReportAbuse`.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The `visitorId` identifies the visitor.\"\n }\n }\n },\n - \ \"SubscriptionListResponse\": {\n \"id\": \"SubscriptionListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"description\": \"A list of subscriptions that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Subscription\"\n }\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"default\": \"youtube#subscriptionListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": + \"Member\"\n },\n \"description\": \"A list of members that + match the request criteria.\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\"\n },\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"CommentThreadSnippet\": {\n \"properties\": {\n \"canReply\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n },\n \"isPublic\": - {\n \"description\": \"Whether the thread (and therefore all its - comments) is visible to all YouTube users.\",\n \"type\": \"boolean\"\n - \ },\n \"totalReplyCount\": {\n \"type\": \"integer\",\n - \ \"description\": \"The total number of replies (not including the - top level comment).\",\n \"format\": \"uint32\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comments refer to, if any. No video_id implies a channel discussion - comment.\"\n },\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"topLevelComment\": - {\n \"$ref\": \"Comment\",\n \"description\": \"The top - level comment of this thread.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a comment thread.\",\n \"id\": - \"CommentThreadSnippet\"\n },\n \"Playlist\": {\n \"type\": \"object\",\n - \ \"id\": \"Playlist\",\n \"description\": \"A *playlist* resource - represents a YouTube playlist. A playlist is a collection of videos that can - be viewed sequentially and shared with other users. A playlist can contain - up to 200 videos, and YouTube does not limit the number of playlists that - each user creates. By default, playlists are publicly visible to other users, - but playlists can be public or private. YouTube also uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n - \ \"properties\": {\n \"contentDetails\": {\n \"$ref\": - \"PlaylistContentDetails\",\n \"description\": \"The contentDetails - object contains information like video count.\"\n },\n \"etag\": + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\",\n \"$ref\": \"PlaylistSnippet\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - status information for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\"\n },\n - \ \"player\": {\n \"description\": \"The player object contains - information that you would use to play the playlist in an embedded player.\",\n - \ \"$ref\": \"PlaylistPlayer\"\n },\n \"kind\": {\n + resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlist\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#playlist\"\n },\n \"localizations\": - {\n \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\"\n }\n }\n },\n \"VideoCategory\": - {\n \"id\": \"VideoCategory\",\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video category, including its title.\"\n },\n \"id\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video category.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"default\": \"youtube#videoCategory\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"A *videoCategory* - resource identifies a category that has been or could be associated with uploaded - videos.\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"properties\": - {\n \"gifterChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the user that made the membership gifting purchase. This matches - the `snippet.authorChannelId` of the associated membership gifting message.\"\n - \ },\n \"memberLevelName\": {\n \"description\": \"The - name of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"VideoListResponse\": {\n \"id\": \"VideoListResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n + the fixed string \\\"youtube#memberListResponse\\\".\",\n \"default\": + \"youtube#memberListResponse\"\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"MemberListResponse\",\n \"type\": \"object\"\n },\n \"Caption\": + {\n \"id\": \"Caption\",\n \"type\": \"object\",\n \"description\": + \"A *caption* resource represents a YouTube caption track. A caption track + is associated with exactly one YouTube video.\",\n \"properties\": {\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the caption track.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.update\"\n + \ ]\n },\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n \"default\": + \"youtube#caption\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n }\n },\n \"CommentListResponse\": {\n + \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#commentListResponse\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"items\": {\n \"description\": + \"A list of comments that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"Comment\"\n },\n \"type\": \"array\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"CommentListResponse\"\n },\n \"LiveChatMemberMilestoneChatDetails\": + {\n \"properties\": {\n \"memberLevelName\": {\n \"description\": + \"The name of the Level at which the viever is a member. The Level names are + defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\",\n \"type\": \"string\"\n },\n + \ \"memberMonth\": {\n \"type\": \"integer\",\n \"description\": + \"The total amount of months (rounded up) the viewer has been a member that + granted them this Member Milestone Chat. This is the same number of months + as is being displayed to YouTube users.\",\n \"format\": \"uint32\"\n + \ },\n \"userComment\": {\n \"type\": \"string\",\n + \ \"description\": \"The comment added by the member to this Member + Milestone Chat. This field is empty for messages without a comment from the + member.\"\n }\n },\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n + \ \"type\": \"object\"\n },\n \"VideoAbuseReportReasonListResponse\": + {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n \"type\": + \"object\",\n \"properties\": {\n \"visitorId\": {\n \"description\": + \"The `visitorId` identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n + \ \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"VideoAbuseReportReason\"\n },\n \"description\": + \"A list of valid abuse reasons that are used with `video.ReportAbuse`.\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n }\n },\n \"CommentThreadListResponse\": + {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#commentThreadListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n + pageToken parameter to retrieve the next page in the result set.\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"CommentThread\"\n },\n \"description\": \"A list of comment + threads that match the request criteria.\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n }\n },\n + \ \"id\": \"CommentThreadListResponse\",\n \"type\": \"object\"\n + \ },\n \"TestItem\": {\n \"properties\": {\n \"featuredPart\": + {\n \"type\": \"boolean\"\n },\n \"gaia\": {\n \"format\": + \"int64\",\n \"type\": \"string\"\n },\n \"id\": {\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": + \"TestItemTestItemSnippet\"\n }\n },\n \"id\": \"TestItem\",\n + \ \"type\": \"object\"\n },\n \"InvideoBranding\": {\n \"id\": + \"InvideoBranding\",\n \"type\": \"object\",\n \"description\": + \"LINT.IfChange Describes an invideo branding.\",\n \"properties\": {\n + \ \"position\": {\n \"description\": \"The spatial position + within the video where the branding watermark will be displayed.\",\n \"$ref\": + \"InvideoPosition\"\n },\n \"imageBytes\": {\n \"type\": + \"string\",\n \"format\": \"byte\",\n \"description\": \"The + bytes the uploaded image. Only used in api to youtube communication.\"\n },\n + \ \"targetChannelId\": {\n \"description\": \"The channel to + which this branding links. If not present it defaults to the current channel.\",\n + \ \"type\": \"string\"\n },\n \"imageUrl\": {\n \"type\": + \"string\",\n \"description\": \"The url of the uploaded image. Only + used in apiary to api communication.\"\n },\n \"timing\": {\n + \ \"description\": \"The temporal position within the video where + watermark will be displayed.\",\n \"$ref\": \"InvideoTiming\"\n }\n + \ }\n },\n \"PlaylistItemContentDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"PlaylistItemContentDetails\",\n \"properties\": {\n \"videoId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + a video. To retrieve the video resource, set the id query parameter to this + value in your API request.\",\n \"type\": \"string\"\n },\n + \ \"endAt\": {\n \"description\": \"The time, measured in seconds + from the start of the video, when the video should stop playing. (The playlist + owner can specify the times when the video should start and stop playing when + the video is played in the context of the playlist.) By default, assume that + the video.endTime is the end of the video.\",\n \"type\": \"string\"\n + \ },\n \"note\": {\n \"type\": \"string\",\n \"description\": + \"A user-generated note for this item.\"\n },\n \"startAt\": + {\n \"type\": \"string\",\n \"description\": \"The time, + measured in seconds from the start of the video, when the video should start + playing. (The playlist owner can specify the times when the video should start + and stop playing when the video is played in the context of the playlist.) + The default value is 0.\"\n },\n \"videoPublishedAt\": {\n \"type\": + \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the video was published to YouTube.\"\n }\n + \ }\n },\n \"LiveChatMessageAuthorDetails\": {\n \"properties\": + {\n \"isChatModerator\": {\n \"description\": \"Whether the + author is a moderator of the live chat.\",\n \"type\": \"boolean\"\n + \ },\n \"isChatOwner\": {\n \"description\": \"Whether + the author is the owner of the live chat.\",\n \"type\": \"boolean\"\n + \ },\n \"isChatSponsor\": {\n \"description\": \"Whether + the author is a sponsor of the live chat.\",\n \"type\": \"boolean\"\n + \ },\n \"profileImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The channels's avatar URL.\"\n },\n \"displayName\": + {\n \"type\": \"string\",\n \"description\": \"The channel's + display name.\"\n },\n \"channelUrl\": {\n \"type\": + \"string\",\n \"description\": \"The channel's URL.\"\n },\n + \ \"isVerified\": {\n \"description\": \"Whether the author's + identity has been verified by YouTube.\",\n \"type\": \"boolean\"\n + \ },\n \"channelId\": {\n \"description\": \"The YouTube + channel ID.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveChatMessageAuthorDetails\"\n },\n \"PlaylistItemStatus\": + {\n \"id\": \"PlaylistItemStatus\",\n \"properties\": {\n \"privacyStatus\": + {\n \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"description\": \"This resource's privacy status.\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"Information + about the playlist item's privacy status.\"\n },\n \"SearchListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n \ },\n \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve + \"TokenPagination\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"description\": \"Pagination information for token + pagination.\",\n \"items\": {\n \"$ref\": \"SearchResult\"\n + \ }\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Video\"\n - \ },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"type\": \"object\"\n },\n \"SubscriptionSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the subscription was created.\",\n \"format\": \"date-time\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"title\": {\n \"description\": \"The subscription's - title.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the subscription - belongs to.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the subscriber's channel.\",\n \"type\": \"string\"\n },\n - \ \"resourceId\": {\n \"description\": \"The id object contains - information about the channel that the user subscribed to.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n - \ \"description\": {\n \"description\": \"The subscription's - details.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"SubscriptionSnippet\",\n \"description\": \"Basic details about a subscription, - including title, description and thumbnails of the subscribed item.\"\n },\n - \ \"SubscriptionContentDetails\": {\n \"id\": \"SubscriptionContentDetails\",\n - \ \"description\": \"Details about the content to witch a subscription - refers.\",\n \"type\": \"object\",\n \"properties\": {\n \"totalItemCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The approximate number of items that the subscription points to.\"\n },\n - \ \"newItemCount\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The number of new items in the subscription - since its content was last read.\"\n },\n \"activityType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoGetRatingResponse\": - {\n \"type\": \"object\",\n \"id\": \"VideoGetRatingResponse\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of ratings that match the request criteria.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n \"default\": - \"youtube#videoGetRatingResponse\"\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n }\n },\n \"VideoLocalization\": - {\n \"id\": \"VideoLocalization\",\n \"description\": \"Localized - versions of certain video properties (e.g. title).\",\n \"properties\": - {\n \"description\": {\n \"description\": \"Localized version - of the video's description.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"description\": \"Localized version of the - video's title.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatMessage\": {\n \"description\": \"A - *liveChatMessage* resource represents a chat message in a YouTube Live Chat.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n - \ \"default\": \"youtube#liveChatMessage\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the message.\"\n },\n \"authorDetails\": {\n \"description\": - \"The authorDetails object contains basic details about the user that posted - this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n }\n },\n \"id\": \"LiveChatMessage\"\n },\n - \ \"CommentThreadReplies\": {\n \"type\": \"object\",\n \"properties\": - {\n \"comments\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"description\": - \"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.\"\n }\n },\n \"id\": \"CommentThreadReplies\",\n - \ \"description\": \"Comments written in (direct or indirect) reply to - the top level comment.\"\n },\n \"InvideoPosition\": {\n \"id\": - \"InvideoPosition\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"cornerPosition\": {\n \"enum\": [\n \"topLeft\",\n - \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n + \ \"regionCode\": {\n \"type\": \"string\"\n },\n \"kind\": + {\n \"default\": \"youtube#searchListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"SearchListResponse\"\n + \ },\n \"LanguageTag\": {\n \"id\": \"LanguageTag\",\n \"properties\": + {\n \"value\": {\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"CommentThread\": {\n \"id\": + \"CommentThread\",\n \"type\": \"object\",\n \"description\": \"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.\",\n \"properties\": {\n \"kind\": {\n \"default\": + \"youtube#commentThread\",\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n + \ \"type\": \"string\"\n },\n \"replies\": {\n \"$ref\": + \"CommentThreadReplies\",\n \"description\": \"The replies object + contains a limited number of replies (if any) to the top level comment found + in the snippet.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the comment thread and also the top level comment.\",\n \"$ref\": + \"CommentThreadSnippet\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the comment thread.\",\n \"type\": + \"string\"\n }\n }\n },\n \"VideoSuggestions\": {\n \"type\": + \"object\",\n \"description\": \"Specifies suggestions on how to improve + video content, including encoding hints, tag suggestions, and editor suggestions.\",\n + \ \"properties\": {\n \"processingWarnings\": {\n \"items\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n + \ \"Unrecognized file format, transcoding is likely to fail.\",\n + \ \"Unrecognized video codec, transcoding is likely to fail.\",\n + \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n + \ \"Conflicting container and stream resolutions.\",\n \"Edit + lists are not currently supported.\",\n \"Video codec that is + known to cause problems was used.\",\n \"Audio codec that is + known to cause problems was used.\",\n \"Unsupported VR video + stereo mode.\",\n \"Unsupported spherical video projection type.\",\n + \ \"Unsupported HDR pixel format.\",\n \"Unspecified + HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n + \ ],\n \"enum\": [\n \"unknownContainer\",\n + \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n + \ \"inconsistentResolution\",\n \"hasEditlist\",\n + \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n + \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n + \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n + \ \"problematicHdrLookupTable\"\n ]\n },\n + \ \"description\": \"A list of reasons why YouTube may have difficulty + transcoding the uploaded video or that might result in an erroneous transcoding. + These warnings are generated before YouTube actually processes the uploaded + video file. In addition, they identify issues that are unlikely to cause the + video processing to fail but that might cause problems such as sync issues, + video artifacts, or a missing audio track.\",\n \"type\": \"array\"\n + \ },\n \"processingHints\": {\n \"description\": \"A + list of suggestions that may improve YouTube's ability to process the video.\",\n + \ \"items\": {\n \"enumDescriptions\": [\n \"The + MP4 file is not streamable, this will slow down the processing. MOOV atom + was not found at the beginning of the file.\",\n \"Probably a + better quality version of the video exists. The video has wide screen aspect + ratio, but is not an HD video.\",\n \"Uploaded video is spherical + video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded + video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n + \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n + \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n + \ ]\n },\n \"type\": \"array\"\n },\n \"editorSuggestions\": + {\n \"items\": {\n \"enum\": [\n \"videoAutoLevels\",\n + \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"Picture brightness levels seem off and could be corrected.\",\n + \ \"The video appears shaky and could be stabilized.\",\n \"Margins + (mattes) detected around the picture could be cropped.\",\n \"The + audio track appears silent and could be swapped with a better quality one.\"\n + \ ]\n },\n \"description\": \"A list of video + editing operations that might improve the video quality or playback experience + of the uploaded video.\",\n \"type\": \"array\"\n },\n \"processingErrors\": + {\n \"items\": {\n \"enumDescriptions\": [\n \"File + contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., + a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file.\",\n \"Document + or text file (e.g., MS Word document).\",\n \"An archive file + (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout + type.\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n + \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n + \ \"unsupportedSpatialAudioLayout\"\n ]\n },\n + \ \"type\": \"array\",\n \"description\": \"A list of errors + that will prevent YouTube from successfully processing the uploaded video + video. These errors indicate that, regardless of the video's current processing + status, eventually, that status will almost certainly be failed.\"\n },\n + \ \"tagSuggestions\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n },\n + \ \"description\": \"A list of keyword tags that could be added to + the video's metadata to increase the likelihood that users will locate your + video when searching or browsing on YouTube.\"\n }\n },\n \"id\": + \"VideoSuggestions\"\n },\n \"ActivityContentDetailsBulletin\": {\n + \ \"description\": \"Details about a channel bulletin post.\",\n \"type\": + \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the resource associated with a bulletin post. + @mutable youtube.activities.insert\"\n }\n },\n \"id\": \"ActivityContentDetailsBulletin\"\n + \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"properties\": + {\n \"banDurationSeconds\": {\n \"description\": \"The duration + of the ban. This property is only present if the banType is temporary.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n + \ \"bannedUserDetails\": {\n \"description\": \"The details + of the user that was banned.\",\n \"$ref\": \"ChannelProfileDetails\"\n + \ },\n \"banType\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"permanent\",\n \"temporary\"\n ],\n \"description\": + \"The type of ban.\"\n }\n },\n \"id\": \"LiveChatUserBannedMessageDetails\",\n + \ \"type\": \"object\"\n },\n \"I18nRegionSnippet\": {\n \"description\": + \"Basic details about an i18n region, such as region code and human-readable + name.\",\n \"type\": \"object\",\n \"properties\": {\n \"gl\": + {\n \"type\": \"string\",\n \"description\": \"The region + code as a 2-letter ISO country code.\"\n },\n \"name\": {\n + \ \"type\": \"string\",\n \"description\": \"The human-readable + name of the region.\"\n }\n },\n \"id\": \"I18nRegionSnippet\"\n + \ },\n \"PlaylistLocalization\": {\n \"description\": \"Playlist + localization setting\",\n \"properties\": {\n \"title\": {\n \"description\": + \"The localized strings for playlist's title.\",\n \"type\": \"string\"\n + \ },\n \"description\": {\n \"description\": \"The localized + strings for playlist's description.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"PlaylistLocalization\",\n \"type\": \"object\"\n + \ },\n \"ThirdPartyLinkSnippet\": {\n \"description\": \"Basic information + about a third party account link, including its type and type-specific information.\",\n + \ \"properties\": {\n \"type\": {\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or about to + connect) a channel with a store on a merchandising platform in order to enable + retail commerce capabilities for that channel on YouTube.\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"Type of the + link named after the entities that are being linked.\",\n \"enum\": + [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ]\n },\n \"channelToStoreLink\": {\n \"description\": + \"Information specific to a link between a channel and a store on a merchandising + platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"ThirdPartyLinkSnippet\"\n + \ },\n \"Entity\": {\n \"properties\": {\n \"id\": {\n \"type\": + \"string\"\n },\n \"typeId\": {\n \"type\": \"string\"\n + \ },\n \"url\": {\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"Entity\",\n \"type\": \"object\"\n },\n + \ \"VideoGetRatingResponse\": {\n \"properties\": {\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#videoGetRatingResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"VideoRating\"\n },\n \"description\": \"A list of ratings + that match the request criteria.\",\n \"type\": \"array\"\n }\n + \ },\n \"id\": \"VideoGetRatingResponse\",\n \"type\": \"object\"\n + \ },\n \"ThirdPartyLinkStatus\": {\n \"type\": \"object\",\n \"properties\": + {\n \"linkStatus\": {\n \"enum\": [\n \"unknown\",\n + \ \"failed\",\n \"pending\",\n \"linked\"\n \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"ThirdPartyLinkStatus\",\n \"description\": + \"The third-party link status object contains information about the status + of the link.\"\n },\n \"PlaylistPlayer\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"embedHtml\": {\n \"description\": + \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"PlaylistPlayer\"\n + \ },\n \"LiveBroadcastContentDetails\": {\n \"description\": \"Detailed + settings of a broadcast.\",\n \"id\": \"LiveBroadcastContentDetails\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"enableDvr\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + determines whether viewers can access DVR controls while watching the video. + DVR controls enable the viewer to control the video playback experience by + pausing, rewinding, or fast forwarding content. The default value for this + property is true. *Important:* You must set the value to true and also set + the enableArchive property's value to true if you want to make playback available + immediately after the broadcast ends.\"\n },\n \"monitorStream\": + {\n \"$ref\": \"MonitorStreamInfo\",\n \"description\": + \"The monitorStream object contains information about the monitor stream, + which the broadcaster can use to review the event content before the broadcast + stream is shown publicly.\"\n },\n \"enableEmbed\": {\n \"type\": + \"boolean\",\n \"description\": \"This setting indicates whether + the broadcast video can be played in an embedded player. If you choose to + archive the video (using the enableArchive property), this setting will also + apply to the archived video.\"\n },\n \"stereoLayout\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Describes in which corner of the video the visual - widget will appear.\"\n },\n \"type\": {\n \"description\": - \"Defines the position type.\",\n \"enumDescriptions\": [\n \"\"\n - \ ],\n \"enum\": [\n \"corner\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\"\n - \ },\n \"VideoAbuseReportSecondaryReason\": {\n \"properties\": - {\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label for this abuse report secondary reason.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID of this abuse report secondary reason.\"\n }\n },\n \"id\": - \"VideoAbuseReportSecondaryReason\",\n \"type\": \"object\"\n },\n - \ \"ChannelListResponse\": {\n \"type\": \"object\",\n \"id\": - \"ChannelListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n \"default\": - \"youtube#channelListResponse\",\n \"type\": \"string\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Channel\"\n }\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ThumbnailDetails\": {\n \"id\": - \"ThumbnailDetails\",\n \"properties\": {\n \"medium\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The medium quality image for - this resource.\"\n },\n \"standard\": {\n \"description\": - \"The standard quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The default image for this resource.\"\n },\n \"maxres\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The maximum - resolution quality image for this resource.\"\n },\n \"high\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The high - quality image for this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Internal representation of thumbnails for a YouTube - resource.\"\n },\n \"LiveStreamContentDetails\": {\n \"description\": - \"Detailed settings of a stream.\",\n \"id\": \"LiveStreamContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"isReusable\": - {\n \"description\": \"Indicates whether the stream is reusable, - which means that it can be bound to multiple broadcasts. It is common for - broadcasters to reuse the same stream for many different broadcasts if those - broadcasts occur at different times. If you set this value to false, then - the stream will not be reusable, which means that it can only be bound to - one broadcast. Non-reusable streams differ from reusable streams in the following - ways: - A non-reusable stream can only be bound to one broadcast. - A non-reusable - stream might be deleted by an automated process after the broadcast ends. - - The liveStreams.list method does not list non-reusable streams if you call - the method and set the mine parameter to true. The only way to use that method - to retrieve the resource for a non-reusable stream is to use the id parameter - to identify the stream. \",\n \"type\": \"boolean\"\n },\n - \ \"closedCaptionsIngestionUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The ingestion URL where the closed captions of - this stream are sent.\"\n }\n }\n },\n \"LiveBroadcastListResponse\": - {\n \"id\": \"LiveBroadcastListResponse\",\n \"properties\": {\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"eventId\": {\n + \ \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n + \ \"leftRight\",\n \"topBottom\"\n ],\n \"description\": + \"The 3D stereo layout of this broadcast. This defaults to mono.\"\n },\n + \ \"startWithSlate\": {\n \"description\": \"This setting indicates + whether the broadcast should automatically begin with an in-stream slate when + you update the broadcast's status to live. After updating the status, you + then need to send a liveCuepoints.insert request that sets the cuepoint's + eventState to end to remove the in-stream slate and make your broadcast stream + visible to viewers.\",\n \"type\": \"boolean\"\n },\n \"enableLowLatency\": + {\n \"description\": \"Indicates whether this broadcast has low latency + enabled.\",\n \"type\": \"boolean\"\n },\n \"enableContentEncryption\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether YouTube should enable content encryption for the broadcast.\"\n + \ },\n \"recordFromStart\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Automatically start recording after the event + goes live. The default value for this property is true. *Important:* You must + also set the enableDvr property's value to true if you want the playback to + be available immediately after the broadcast ends. If you set this property's + value to true but do not also set the enableDvr property to true, there may + be a delay of around one day before the archived video will be available for + playback.\"\n },\n \"closedCaptionsType\": {\n \"type\": + \"string\",\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n + \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n + \ \"closedCaptionsEmbedded\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"type\": + \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the live stream referenced by boundStreamId was last + updated.\"\n },\n \"enableAutoStop\": {\n \"type\": + \"boolean\",\n \"description\": \"This setting indicates whether + auto stop is enabled for this broadcast. The default value for this property + is false. This setting can only be used by Events.\"\n },\n \"mesh\": + {\n \"format\": \"byte\",\n \"description\": \"The mesh + for projecting the video if projection is mesh. The mesh value must be a UTF-8 + string containing the base-64 encoding of 3D mesh data that follows the Spherical + Video V2 RFC specification for an mshp box, excluding the box size and type + but including the following four reserved zero bytes for the version and flags.\",\n + \ \"type\": \"string\"\n },\n \"enableAutoStart\": {\n + \ \"description\": \"This setting indicates whether auto start is + enabled for this broadcast. The default value for this property is false. + This setting can only be used by Events.\",\n \"type\": \"boolean\"\n + \ },\n \"projection\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"projectionUnspecified\",\n + \ \"rectangular\",\n \"360\",\n \"mesh\"\n + \ ],\n \"description\": \"The projection format of this broadcast. + This defaults to rectangular.\"\n },\n \"enableClosedCaptions\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether HTTP POST closed captioning is enabled for this broadcast. + The ingestion URL of the closed captions is returned through the liveStreams + API. This is mutually exclusive with using the closed_captions_type property, + and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n + \ },\n \"latencyPreference\": {\n \"enumDescriptions\": + [\n \"\",\n \"Best for: highest quality viewer playbacks + and higher resolutions.\",\n \"Best for: near real-time interaction, + with minimal playback buffering.\",\n \"Best for: real-time interaction + Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n + \ \"enum\": [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n + \ \"low\",\n \"ultraLow\"\n ],\n \"type\": + \"string\",\n \"description\": \"If both this and enable_low_latency + are set, they must match. LATENCY_NORMAL should match enable_low_latency=false + LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should + have enable_low_latency omitted.\"\n },\n \"boundStreamId\": + {\n \"type\": \"string\",\n \"description\": \"This value + uniquely identifies the live stream bound to the broadcast.\"\n }\n + \ }\n },\n \"GeoPoint\": {\n \"type\": \"object\",\n \"description\": + \"Geographical coordinates of a point, in WGS84.\",\n \"id\": \"GeoPoint\",\n + \ \"properties\": {\n \"latitude\": {\n \"description\": + \"Latitude in degrees.\",\n \"type\": \"number\",\n \"format\": + \"double\"\n },\n \"longitude\": {\n \"description\": + \"Longitude in degrees.\",\n \"type\": \"number\",\n \"format\": + \"double\"\n },\n \"altitude\": {\n \"description\": + \"Altitude above the reference ellipsoid, in meters.\",\n \"format\": + \"double\",\n \"type\": \"number\"\n }\n }\n },\n + \ \"ChannelSectionListResponse\": {\n \"id\": \"ChannelSectionListResponse\",\n + \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n \ \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"description\": \"A list of broadcasts that match - the request criteria.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"default\": \"youtube#liveBroadcastListResponse\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelSectionSnippet\": {\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\",\n \"id\": \"ChannelSectionSnippet\",\n - \ \"properties\": {\n \"position\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The position - of the channel section in the channel.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the channel section.\",\n \"type\": \"string\"\n - \ },\n \"style\": {\n \"description\": \"The style of - the channel section.\",\n \"type\": \"string\",\n \"enum\": + this response.\"\n },\n \"items\": {\n \"type\": \"array\",\n + \ \"description\": \"A list of ChannelSections that match the request + criteria.\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n + \ }\n },\n \"kind\": {\n \"default\": \"youtube#channelSectionListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"TokenPagination\": {\n \"type\": \"object\",\n \"properties\": + {},\n \"description\": \"Stub token pagination template to suppress results.\",\n + \ \"id\": \"TokenPagination\"\n },\n \"VideoLiveStreamingDetails\": + {\n \"description\": \"Details about the live streaming metadata.\",\n + \ \"id\": \"VideoLiveStreamingDetails\",\n \"properties\": {\n \"scheduledStartTime\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The time that the broadcast is scheduled to begin.\"\n + \ },\n \"actualEndTime\": {\n \"description\": \"The + time that the broadcast actually ended. This value will not be available until + the broadcast is over.\",\n \"type\": \"string\",\n \"format\": + \"date-time\"\n },\n \"concurrentViewers\": {\n \"description\": + \"The number of viewers currently watching the broadcast. The property and + its value will be present if the broadcast has current viewers and the broadcast + owner has not hidden the viewcount for the video. Note that YouTube stops + tracking the number of concurrent viewers for a broadcast when the broadcast + ends. So, this property would not identify the number of viewers watching + an archived video of a live broadcast that already ended.\",\n \"type\": + \"string\",\n \"format\": \"uint64\"\n },\n \"activeLiveChatId\": + {\n \"description\": \"The ID of the currently active live chat attached + to this video. This field is filled only if the video is a currently live + broadcast that has live chat. Once the broadcast transitions to complete this + field will be removed and the live chat closed down. For persistent broadcasts + that live chat id will no longer be tied to this video but rather to the new + video being displayed at the persistent page.\",\n \"type\": \"string\"\n + \ },\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n + \ \"description\": \"The time that the broadcast is scheduled to end. + If the value is empty or the property is not present, then the broadcast is + scheduled to contiue indefinitely.\",\n \"type\": \"string\"\n },\n + \ \"actualStartTime\": {\n \"description\": \"The time that + the broadcast actually started. This value will not be available until the + broadcast begins.\",\n \"type\": \"string\",\n \"format\": + \"date-time\"\n }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsRecommendation\": + {\n \"id\": \"ActivityContentDetailsRecommendation\",\n \"type\": + \"object\",\n \"description\": \"Information that identifies the recommended + resource.\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the recommended resource.\"\n },\n \"seedResourceId\": + {\n \"description\": \"The seedResourceId object contains information + about the resource that caused the recommendation.\",\n \"$ref\": + \"ResourceId\"\n },\n \"reason\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"reasonUnspecified\",\n \"videoFavorited\",\n + \ \"videoLiked\",\n \"videoWatched\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The reason that the resource is recommended to the user.\"\n }\n + \ }\n },\n \"ActivityContentDetails\": {\n \"id\": \"ActivityContentDetails\",\n + \ \"description\": \"Details about the content of an activity: the video + that was shared, the channel that was subscribed to, etc.\",\n \"type\": + \"object\",\n \"properties\": {\n \"channelItem\": {\n \"description\": + \"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.\",\n + \ \"$ref\": \"ActivityContentDetailsChannelItem\"\n },\n \"bulletin\": + {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n \"description\": + \"The bulletin object contains details about a channel bulletin post. This + object is only present if the snippet.type is bulletin.\"\n },\n \"social\": + {\n \"$ref\": \"ActivityContentDetailsSocial\",\n \"description\": + \"The social object contains details about a social network post. This property + is only present if the snippet.type is social.\"\n },\n \"comment\": + {\n \"$ref\": \"ActivityContentDetailsComment\",\n \"description\": + \"The comment object contains information about a resource that received a + comment. This property is only present if the snippet.type is comment.\"\n + \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n + \ \"description\": \"The recommendation object contains information + about a recommended resource. This property is only present if the snippet.type + is recommendation.\"\n },\n \"like\": {\n \"description\": + \"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.\",\n + \ \"$ref\": \"ActivityContentDetailsLike\"\n },\n \"upload\": + {\n \"description\": \"The upload object contains information about + the uploaded video. This property is only present if the snippet.type is upload.\",\n + \ \"$ref\": \"ActivityContentDetailsUpload\"\n },\n \"favorite\": + {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsFavorite\"\n + \ },\n \"promotedItem\": {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n + \ \"description\": \"The promotedItem object contains details about + a resource which is being promoted. This property is only present if the snippet.type + is promotedItem.\"\n },\n \"subscription\": {\n \"description\": + \"The subscription object contains information about a channel that a user + subscribed to. This property is only present if the snippet.type is subscription.\",\n + \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"playlistItem\": + {\n \"description\": \"The playlistItem object contains information + about a new playlist item. This property is only present if the snippet.type + is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n + \ }\n }\n },\n \"ChannelSectionSnippet\": {\n \"id\": + \"ChannelSectionSnippet\",\n \"description\": \"Basic details about a + channel section, including title, style and position.\",\n \"type\": + \"object\",\n \"properties\": {\n \"position\": {\n \"type\": + \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The position of the channel section in the channel.\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel that published the channel section.\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The channel section's title for multiple_playlists and multiple_channels.\"\n + \ },\n \"style\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The style of the channel section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the channel section's default title and description.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"description\": \"The - type of the channel section.\",\n \"type\": \"string\",\n \"enum\": + \ \"verticalList\"\n ]\n },\n \"localized\": + {\n \"description\": \"Localized title, read-only.\",\n \"$ref\": + \"ChannelSectionLocalization\"\n },\n \"defaultLanguage\": {\n + \ \"type\": \"string\",\n \"description\": \"The language + of the channel section's default title and description.\"\n },\n \"type\": + {\n \"description\": \"The type of the channel section.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"localized\": {\n \"description\": \"Localized title, read-only.\",\n - \ \"$ref\": \"ChannelSectionLocalization\"\n },\n \"title\": - {\n \"description\": \"The channel section's title for multiple_playlists - and multiple_channels.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ActivityContentDetailsSocial\": {\n \"description\": \"Details - about a social network post.\",\n \"properties\": {\n \"imageUrl\": - {\n \"type\": \"string\",\n \"description\": \"An image - of the post's author.\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n - \ \"facebook\",\n \"twitter\"\n ],\n \"description\": - \"The name of the social network.\"\n },\n \"referenceUrl\": - {\n \"description\": \"The URL of the social network post.\",\n \"type\": - \"string\"\n },\n \"author\": {\n \"type\": \"string\",\n - \ \"description\": \"The author of the social network post.\"\n }\n - \ },\n \"id\": \"ActivityContentDetailsSocial\",\n \"type\": - \"object\"\n },\n \"ChannelBannerResource\": {\n \"id\": \"ChannelBannerResource\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#channelBannerResource\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelBannerResource\\\".\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"url\": {\n \"type\": \"string\",\n \"description\": - \"The URL of this banner image.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A channel banner returned as the response to a channel_banner.insert - call.\"\n },\n \"ChannelSectionContentDetails\": {\n \"description\": - \"Details about a channelsection, including playlists and channels.\",\n \"id\": - \"ChannelSectionContentDetails\",\n \"properties\": {\n \"playlists\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The playlist - ids for type single_playlist and multiple_playlists. For singlePlaylist, only - one playlistId is allowed.\"\n },\n \"channels\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The channel ids for type multiple_channels.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"PlaylistListResponse\": - {\n \"id\": \"PlaylistListResponse\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"description\": \"A list of playlists that match the request - criteria\",\n \"items\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"type\": \"array\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#playlistListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoSnippet\": - {\n \"description\": \"Basic details about a video, including title, - description, uploader, thumbnails and category.\",\n \"id\": \"VideoSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"liveBroadcastContent\": - {\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\"\n },\n \"localized\": {\n \"$ref\": \"VideoLocalization\",\n - \ \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"tags\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A list of keyword tags associated with the video. Tags may contain spaces.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the video - was uploaded.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The video's - title. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"defaultAudioLanguage\": {\n \"type\": \"string\",\n \"description\": - \"The default_audio_language property specifies the language spoken in the - video's default audio track.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that the video was uploaded to.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the videos's default snippet.\"\n },\n \"categoryId\": {\n - \ \"description\": \"The YouTube video category associated with the - video.\",\n \"type\": \"string\"\n }\n }\n },\n \"VideoAbuseReportReason\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the abuse report reason.\",\n \"$ref\": \"VideoAbuseReportReasonSnippet\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReason\"\n },\n \"id\": - {\n \"description\": \"The ID of this abuse report reason.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoAbuseReportReason\",\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\"\n },\n \"AccessPolicy\": - {\n \"description\": \"Rights management policy for YouTube resources.\",\n - \ \"type\": \"object\",\n \"id\": \"AccessPolicy\",\n \"properties\": - {\n \"allowed\": {\n \"description\": \"The value of allowed - indicates whether the access to the policy is allowed or denied by default.\",\n - \ \"type\": \"boolean\"\n },\n \"exception\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of region codes that identify countries - where the default policy do not apply.\"\n }\n }\n },\n \"ChannelLocalization\": - {\n \"properties\": {\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - description.\"\n },\n \"title\": {\n \"description\": - \"The localized strings for channel's title.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Channel - localization setting\",\n \"id\": \"ChannelLocalization\"\n },\n \"CommentThreadListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"default\": \"youtube#commentThreadListResponse\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"CommentThread\"\n },\n \"description\": \"A list of comment - threads that match the request criteria.\"\n },\n \"etag\": + \ ]\n }\n }\n },\n \"I18nRegionListResponse\": {\n + \ \"id\": \"I18nRegionListResponse\",\n \"properties\": {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"CommentThreadListResponse\"\n - \ },\n \"LiveChatNewSponsorDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"isUpgrade\": {\n \"description\": \"If the viewer just - had upgraded from a lower level. For viewers that were not members at the - time of purchase, this field is false.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"id\": \"LiveChatNewSponsorDetails\"\n },\n - \ \"VideoProcessingDetails\": {\n \"id\": \"VideoProcessingDetails\",\n - \ \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\",\n \"type\": \"object\",\n \"properties\": - {\n \"editorSuggestionsAvailability\": {\n \"description\": - \"This value indicates whether video editing suggestions, which might improve - video quality or the playback experience, are available for the video. You - can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n },\n - \ \"fileDetailsAvailability\": {\n \"description\": \"This - value indicates whether file details are available for the uploaded video. - You can retrieve a video's file details by requesting the fileDetails part - in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"processingIssuesAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"processingProgress\": {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"The processingProgress object contains information - about the progress YouTube has made in processing the video. The values are - really only relevant if the video's processing status is processing.\"\n },\n - \ \"tagSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether keyword (tag) suggestions - are available for the video. Tags can be added to a video's metadata to make - it easier for other users to find the video. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"processingFailureReason\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ]\n },\n - \ \"processingStatus\": {\n \"description\": \"The video's - processing status. This value indicates whether YouTube was able to process - the video or if the video is still being processed.\",\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n }\n },\n - \ \"CommentSnippetAuthorChannelId\": {\n \"type\": \"object\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"id\": \"CommentSnippetAuthorChannelId\"\n },\n \"VideoStatistics\": - {\n \"description\": \"Statistics about the video, such as the number - of times the video was viewed or liked.\",\n \"id\": \"VideoStatistics\",\n - \ \"properties\": {\n \"dislikeCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of users who have indicated that they disliked the video by giving - it a negative rating.\"\n },\n \"viewCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of times the video has - been viewed.\",\n \"type\": \"string\"\n },\n \"likeCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of users who have indicated that they liked the video by giving it a positive - rating.\",\n \"type\": \"string\"\n },\n \"favoriteCount\": - {\n \"description\": \"The number of users who currently have the - video marked as a favorite video.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"commentCount\": {\n \"description\": - \"The number of comments for the video.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"I18nLanguageListResponse\": {\n \"id\": \"I18nLanguageListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"A list of supported - i18n languages. In this map, the i18n language ID is the map key, and its - value is the corresponding i18nLanguage resource.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n - \ }\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"description\": + \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n + \ \"description\": \"A list of regions where YouTube is available. + In this map, the i18n region ID is the map key, and its value is the corresponding + i18nRegion resource.\",\n \"items\": {\n \"$ref\": \"I18nRegion\"\n + \ }\n },\n \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"CaptionListResponse\": - {\n \"type\": \"object\",\n \"id\": \"CaptionListResponse\",\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n + \ \"default\": \"youtube#i18nRegionListResponse\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"SuperChatEventSnippet\": + {\n \"properties\": {\n \"superStickerMetadata\": {\n \"description\": + \"If this event is a Super Sticker event, this field will contain metadata + about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n + \ },\n \"messageType\": {\n \"description\": \"The tier + for the paid message, which is based on the amount of money spent to purchase + the message.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n + \ },\n \"supporterDetails\": {\n \"description\": \"Details + about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n + \ \"createdAt\": {\n \"format\": \"date-time\",\n \"description\": + \"The date and time when the event occurred.\",\n \"type\": \"string\"\n + \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the purchase was made. ISO 4217.\"\n },\n \"amountMicros\": + {\n \"format\": \"uint64\",\n \"description\": \"The purchase + amount, in micros of the purchase currency. e.g., 1 is represented as 1000000.\",\n + \ \"type\": \"string\"\n },\n \"isSuperStickerEvent\": + {\n \"description\": \"True if this event is a Super Sticker event.\",\n + \ \"type\": \"boolean\"\n },\n \"commentText\": {\n + \ \"type\": \"string\",\n \"description\": \"The text contents + of the comment left by the user.\"\n },\n \"displayString\": + {\n \"type\": \"string\",\n \"description\": \"A rendered + string that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). + The string is rendered for the given language.\"\n },\n \"channelId\": + {\n \"description\": \"Channel id where the event occurred.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"SuperChatEventSnippet\",\n + \ \"type\": \"object\"\n },\n \"VideoFileDetailsAudioStream\": {\n + \ \"description\": \"Information about an audio stream.\",\n \"id\": + \"VideoFileDetailsAudioStream\",\n \"type\": \"object\",\n \"properties\": + {\n \"bitrateBps\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"The audio stream's bitrate, in bits + per second.\"\n },\n \"vendor\": {\n \"description\": + \"A value that uniquely identifies a video vendor. Typically, the value is + a four-letter vendor code.\",\n \"type\": \"string\"\n },\n + \ \"channelCount\": {\n \"description\": \"The number of audio + channels that the stream contains.\",\n \"type\": \"integer\",\n + \ \"format\": \"uint32\"\n },\n \"codec\": {\n \"description\": + \"The audio codec that the stream uses.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"SubscriptionContentDetails\": {\n \"id\": + \"SubscriptionContentDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"newItemCount\": {\n \"type\": \"integer\",\n \"description\": + \"The number of new items in the subscription since its content was last read.\",\n + \ \"format\": \"uint32\"\n },\n \"totalItemCount\": + {\n \"description\": \"The approximate number of items that the subscription + points to.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n + \ },\n \"activityType\": {\n \"description\": \"The + type of activity this subscription is for (only uploads, everything).\",\n + \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n + \ \"all\",\n \"uploads\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ]\n }\n },\n \"description\": + \"Details about the content to witch a subscription refers.\"\n },\n \"ChannelSettings\": + {\n \"description\": \"Branding properties for the channel view.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"trackingAnalyticsAccountId\": + {\n \"description\": \"The ID for a Google Analytics account to track + and measure traffic to the channels.\",\n \"type\": \"string\"\n + \ },\n \"featuredChannelsUrls\": {\n \"description\": + \"The list of featured channels.\",\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"defaultLanguage\": + {\n \"type\": \"string\"\n },\n \"description\": {\n + \ \"description\": \"Specifies the channel description.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"Specifies the channel title.\"\n },\n + \ \"country\": {\n \"type\": \"string\",\n \"description\": + \"The country of the channel.\"\n },\n \"showRelatedChannels\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + related channels should be proposed.\"\n },\n \"moderateComments\": + {\n \"description\": \"Whether user-submitted comments left on the + channel page need to be approved by the channel owner to be publicly visible.\",\n + \ \"type\": \"boolean\"\n },\n \"keywords\": {\n \"description\": + \"Lists keywords associated with the channel, comma-separated.\",\n \"type\": + \"string\"\n },\n \"defaultTab\": {\n \"type\": \"string\",\n + \ \"description\": \"Which content tab users should see when viewing + the channel.\"\n },\n \"featuredChannelsTitle\": {\n \"type\": + \"string\",\n \"description\": \"Title for the featured channels + tab.\"\n },\n \"unsubscribedTrailer\": {\n \"type\": + \"string\",\n \"description\": \"The trailer of the channel, for + users that are not subscribers.\"\n },\n \"profileColor\": {\n + \ \"type\": \"string\",\n \"description\": \"A prominent + color that can be rendered on this channel page.\"\n },\n \"showBrowseView\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the tab to browse the videos should be displayed.\"\n }\n },\n + \ \"id\": \"ChannelSettings\"\n },\n \"PropertyValue\": {\n \"id\": + \"PropertyValue\",\n \"properties\": {\n \"property\": {\n \"description\": + \"A property.\",\n \"type\": \"string\"\n },\n \"value\": + {\n \"type\": \"string\",\n \"description\": \"The property's + value.\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"A pair Property / Value.\"\n },\n \"LevelDetails\": {\n \"id\": + \"LevelDetails\",\n \"type\": \"object\",\n \"properties\": {\n + \ \"displayName\": {\n \"description\": \"The name that should + be used when referring to this level.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"LiveChatMessage\": {\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely + identify the message.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the message.\",\n \"$ref\": + \"LiveChatMessageSnippet\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveChatMessage\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n + \ \"type\": \"string\"\n },\n \"authorDetails\": {\n + \ \"description\": \"The authorDetails object contains basic details + about the user that posted this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n + \ }\n },\n \"description\": \"A *liveChatMessage* resource + represents a chat message in a YouTube Live Chat.\",\n \"id\": \"LiveChatMessage\",\n + \ \"type\": \"object\"\n },\n \"Playlist\": {\n \"id\": \"Playlist\",\n + \ \"description\": \"A *playlist* resource represents a YouTube playlist. + A playlist is a collection of videos that can be viewed sequentially and shared + with other users. A playlist can contain up to 200 videos, and YouTube does + not limit the number of playlists that each user creates. By default, playlists + are publicly visible to other users, but playlists can be public or private. + YouTube also uses playlists to identify special collections of videos for + a channel, such as: - uploaded videos - favorite videos - positively rated + (liked) videos - watch history - watch later To be more specific, these lists + are associated with a channel, which is a collection of a person, group, or + company's videos, playlists, and other YouTube information. You can retrieve + the playlist IDs for each of these lists from the channel resource for a given + channel. You can then use the playlistItems.list method to retrieve any of + those lists. You can also add or remove items from those lists by calling + the playlistItems.insert and playlistItems.delete methods.\",\n \"type\": + \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n + \ \"default\": \"youtube#playlist\",\n \"type\": \"string\"\n + \ },\n \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n + \ \"description\": \"The player object contains information that you + would use to play the playlist in an embedded player.\"\n },\n \"contentDetails\": + {\n \"$ref\": \"PlaylistContentDetails\",\n \"description\": + \"The contentDetails object contains information like video count.\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube uses to + uniquely identify the playlist.\",\n \"type\": \"string\"\n },\n + \ \"status\": {\n \"$ref\": \"PlaylistStatus\",\n \"description\": + \"The status object contains status information for the playlist.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": + \"The snippet object contains basic details about the playlist, such as its + title and description.\"\n },\n \"localizations\": {\n \"description\": + \"Localizations for different languages\",\n \"additionalProperties\": + {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"type\": + \"object\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n }\n }\n + \ },\n \"LiveChatBan\": {\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"default\": + \"youtube#liveChatBan\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"description\": + \"The `snippet` object contains basic details about the ban.\",\n \"$ref\": + \"LiveChatBanSnippet\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely + identify the ban.\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\",\n + \ \"id\": \"LiveChatBan\"\n },\n \"MembershipsLevel\": {\n \"id\": + \"MembershipsLevel\",\n \"type\": \"object\",\n \"description\": + \"A *membershipsLevel* resource represents an offer made by YouTube creators + for their fans. Users can become members of the channel by joining one of + the available levels. They will provide recurring monetary support and receives + special benefits.\",\n \"properties\": {\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube assigns to uniquely identify the memberships level.\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"default\": \"youtube#membershipsLevel\"\n },\n \"snippet\": + {\n \"$ref\": \"MembershipsLevelSnippet\",\n \"description\": + \"The snippet object contains basic details about the level.\"\n }\n + \ }\n },\n \"LiveChatTextMessageDetails\": {\n \"properties\": + {\n \"messageText\": {\n \"description\": \"The user's message.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatTextMessageDetails\",\n + \ \"type\": \"object\"\n },\n \"AbuseType\": {\n \"type\": + \"object\",\n \"id\": \"AbuseType\",\n \"properties\": {\n \"id\": + {\n \"type\": \"string\"\n }\n }\n },\n \"CommentSnippet\": + {\n \"type\": \"object\",\n \"properties\": {\n \"parentId\": + {\n \"description\": \"The unique id of the parent comment, only + set for replies.\",\n \"type\": \"string\"\n },\n \"authorProfileImageUrl\": + {\n \"description\": \"The URL for the avatar of the user who posted + the comment.\",\n \"type\": \"string\"\n },\n \"canRate\": + {\n \"description\": \"Whether the current viewer can rate this comment.\",\n + \ \"type\": \"boolean\"\n },\n \"moderationStatus\": + {\n \"description\": \"The comment's moderation status. Will not + be set if the comments were requested through the id filter.\",\n \"enum\": + [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n + \ \"rejected\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"The comment is available + for public display.\",\n \"The comment is awaiting review by a + moderator.\",\n \"\",\n \"The comment is unfit for display.\"\n + \ ]\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time when the comment + was originally published.\",\n \"type\": \"string\"\n },\n + \ \"authorDisplayName\": {\n \"type\": \"string\",\n \"description\": + \"The name of the user who posted the comment.\"\n },\n \"likeCount\": + {\n \"description\": \"The total number of likes this comment has + received.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n + \ },\n \"viewerRating\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ]\n },\n + \ \"videoId\": {\n \"description\": \"The ID of the video the + comment refers to, if any.\",\n \"type\": \"string\"\n },\n + \ \"updatedAt\": {\n \"description\": \"The date and time when + the comment was last updated.\",\n \"format\": \"date-time\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n \"textDisplay\": + {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"authorChannelId\": + {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"authorChannelUrl\": + {\n \"type\": \"string\",\n \"description\": \"Link to the + author's YouTube channel, if any.\"\n },\n \"textOriginal\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n }\n },\n \"id\": + \"CommentSnippet\",\n \"description\": \"Basic details about a comment, + such as its author and text.\"\n },\n \"ChannelStatistics\": {\n \"description\": + \"Statistics about a channel: number of subscribers, number of videos in the + channel, etc.\",\n \"type\": \"object\",\n \"properties\": {\n \"videoCount\": + {\n \"type\": \"string\",\n \"description\": \"The number + of videos uploaded to the channel.\",\n \"format\": \"uint64\"\n + \ },\n \"commentCount\": {\n \"type\": \"string\",\n + \ \"description\": \"The number of comments for the channel.\",\n + \ \"format\": \"uint64\"\n },\n \"hiddenSubscriberCount\": + {\n \"description\": \"Whether or not the number of subscribers is + shown for this user.\",\n \"type\": \"boolean\"\n },\n \"subscriberCount\": + {\n \"description\": \"The number of subscribers that the channel + has.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n + \ },\n \"viewCount\": {\n \"description\": \"The number + of times the channel has been viewed.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n }\n },\n \"id\": \"ChannelStatistics\"\n + \ },\n \"RelatedEntity\": {\n \"properties\": {\n \"entity\": + {\n \"$ref\": \"Entity\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"RelatedEntity\"\n },\n \"Activity\": {\n \"type\": + \"object\",\n \"properties\": {\n \"contentDetails\": {\n \"description\": + \"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.\",\n \"$ref\": + \"ActivityContentDetails\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n + \ \"default\": \"youtube#activity\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the activity, including the activity's + type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the activity.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource\"\n }\n },\n \"description\": \"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.\",\n + \ \"id\": \"Activity\"\n },\n \"ActivityContentDetailsChannelItem\": + {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the resource that was added to the channel.\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Details + about a resource which was added to a channel.\",\n \"id\": \"ActivityContentDetailsChannelItem\"\n + \ },\n \"ActivityContentDetailsComment\": {\n \"properties\": {\n + \ \"resourceId\": {\n \"description\": \"The resourceId object + contains information that identifies the resource associated with the comment.\",\n + \ \"$ref\": \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsComment\",\n + \ \"type\": \"object\",\n \"description\": \"Information about a + resource that received a comment.\"\n },\n \"VideoStatistics\": {\n + \ \"type\": \"object\",\n \"properties\": {\n \"dislikeCount\": + {\n \"format\": \"uint64\",\n \"description\": \"The number + of users who have indicated that they disliked the video by giving it a negative + rating.\",\n \"type\": \"string\"\n },\n \"likeCount\": + {\n \"format\": \"uint64\",\n \"description\": \"The number + of users who have indicated that they liked the video by giving it a positive + rating.\",\n \"type\": \"string\"\n },\n \"commentCount\": + {\n \"description\": \"The number of comments for the video.\",\n + \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n + \ \"favoriteCount\": {\n \"description\": \"The number of users + who currently have the video marked as a favorite video.\",\n \"type\": + \"string\",\n \"format\": \"uint64\"\n },\n \"viewCount\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of times the video has been viewed.\"\n }\n },\n + \ \"description\": \"Statistics about the video, such as the number of + times the video was viewed or liked.\",\n \"id\": \"VideoStatistics\"\n + \ },\n \"VideoFileDetailsVideoStream\": {\n \"properties\": {\n + \ \"bitrateBps\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"The video stream's bitrate, in bits + per second.\"\n },\n \"frameRateFps\": {\n \"description\": + \"The video stream's frame rate, in frames per second.\",\n \"type\": + \"number\",\n \"format\": \"double\"\n },\n \"vendor\": + {\n \"type\": \"string\",\n \"description\": \"A value that + uniquely identifies a video vendor. Typically, the value is a four-letter + vendor code.\"\n },\n \"rotation\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The amount that + YouTube needs to rotate the original source content to properly display the + video.\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n + \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n + \ ],\n \"type\": \"string\"\n },\n \"widthPixels\": + {\n \"type\": \"integer\",\n \"description\": \"The encoded + video content's width in pixels. You can calculate the video's encoding aspect + ratio as width_pixels / height_pixels.\",\n \"format\": \"uint32\"\n + \ },\n \"heightPixels\": {\n \"type\": \"integer\",\n + \ \"description\": \"The encoded video content's height in pixels.\",\n + \ \"format\": \"uint32\"\n },\n \"codec\": {\n \"description\": + \"The video codec that the stream uses.\",\n \"type\": \"string\"\n + \ },\n \"aspectRatio\": {\n \"type\": \"number\",\n + \ \"description\": \"The video content's display aspect ratio, which + specifies the aspect ratio in which the video should be displayed.\",\n \"format\": + \"double\"\n }\n },\n \"id\": \"VideoFileDetailsVideoStream\",\n + \ \"description\": \"Information about a video stream.\",\n \"type\": + \"object\"\n },\n \"SuperChatEvent\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#captionListResponse\\\".\",\n \"default\": - \"youtube#captionListResponse\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of captions that match the - request criteria.\",\n \"items\": {\n \"$ref\": \"Caption\"\n - \ }\n }\n }\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"properties\": {\n \"allowed\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"blocked\": {\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"type\": \"object\"\n },\n \"SearchListResponse\": {\n \"type\": - \"object\",\n \"id\": \"SearchListResponse\",\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n \"default\": + \"youtube#superChatEvent\"\n },\n \"etag\": {\n \"type\": \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"regionCode\": {\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#searchListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"Pagination - information for token pagination.\",\n \"items\": {\n \"$ref\": - \"SearchResult\"\n },\n \"type\": \"array\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n }\n },\n \"VideoFileDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoFileDetails\",\n \"properties\": {\n \"videoStreams\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n },\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\"\n },\n - \ \"bitrateBps\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The uploaded video file's combined - (video and audio) bitrate in bits per second.\"\n },\n \"audioStreams\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsAudioStream\"\n },\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\"\n },\n - \ \"fileSize\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The uploaded file's size in bytes. - This field is present whether a video file or another type of file was uploaded.\"\n - \ },\n \"fileType\": {\n \"type\": \"string\",\n \"enum\": - [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"enumDescriptions\": [\n \"Known - video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an - MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"description\": \"The uploaded file's type as detected by YouTube's - video processing engine. Currently, YouTube only processes video files, but - this field is present whether a video file or another type of file was uploaded.\"\n - \ },\n \"container\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded video file's container format.\"\n },\n \"creationTime\": - {\n \"description\": \"The date and time when the uploaded video - file was created. The value is specified in ISO 8601 format. Currently, the - following ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive - time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \",\n \"type\": \"string\"\n },\n \"fileName\": {\n - \ \"description\": \"The uploaded file's name. This field is present - whether a video file or another type of file was uploaded.\",\n \"type\": - \"string\"\n },\n \"durationMs\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The length of the uploaded video in milliseconds.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Describes original video file properties, including technical details about - audio and video streams, but also metadata information like content length, - digitization time, or geotagging information.\"\n },\n \"Activity\": - {\n \"type\": \"object\",\n \"description\": \"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.\",\n \"id\": - \"Activity\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#activity\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the activity, including the activity's type and group ID.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the activity.\",\n \"type\": \"string\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n - \ \"description\": \"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.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveStreamConfigurationIssue\": {\n \"id\": \"LiveStreamConfigurationIssue\",\n - \ \"properties\": {\n \"severity\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"description\": \"How severe this issue is to the - stream.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n - \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n - \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n - \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n - \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n - \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"description\": \"The kind of error happening.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The long-form description of the - issue and how to resolve it.\"\n },\n \"reason\": {\n \"type\": - \"string\",\n \"description\": \"The short-form reason for this issue.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelContentOwnerDetails\": - {\n \"id\": \"ChannelContentOwnerDetails\",\n \"type\": \"object\",\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"properties\": - {\n \"contentOwner\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the content owner linked to the channel.\"\n },\n \"timeLinked\": + \ \"snippet\": {\n \"description\": \"The `snippet` object + contains basic details about the Super Chat event.\",\n \"$ref\": + \"SuperChatEventSnippet\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely + identify the Super Chat event.\"\n }\n },\n \"id\": \"SuperChatEvent\",\n + \ \"description\": \"A `__superChatEvent__` resource represents a Super + Chat purchase on a YouTube channel.\"\n },\n \"LiveChatMembershipGiftingDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\",\n + \ \"properties\": {\n \"giftMembershipsCount\": {\n \"type\": + \"integer\",\n \"description\": \"The number of gift memberships + purchased by the user.\",\n \"format\": \"int32\"\n },\n \"giftMembershipsLevelName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the level of the gift memberships purchased by the user. The Level names + are defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\"\n }\n }\n },\n \"I18nLanguageSnippet\": + {\n \"id\": \"I18nLanguageSnippet\",\n \"type\": \"object\",\n \"description\": + \"Basic details about an i18n language, such as language code and human-readable + name.\",\n \"properties\": {\n \"name\": {\n \"description\": + \"The human-readable name of the language in the language itself.\",\n \"type\": + \"string\"\n },\n \"hl\": {\n \"description\": \"A + short BCP-47 code that uniquely identifies a language.\",\n \"type\": + \"string\"\n }\n }\n },\n \"LiveBroadcast\": {\n \"description\": + \"A *liveBroadcast* resource represents an event that will be streamed, via + live video, on YouTube.\",\n \"id\": \"LiveBroadcast\",\n \"type\": + \"object\",\n \"properties\": {\n \"id\": {\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + assigns to uniquely identify the broadcast.\"\n },\n \"statistics\": + {\n \"$ref\": \"LiveBroadcastStatistics\",\n \"description\": + \"The statistics object contains info about the event's current stats. These + include concurrent viewers and total chat count. Statistics can change (in + either direction) during the lifetime of an event. Statistics are only returned + while the event is live.\"\n },\n \"status\": {\n \"description\": + \"The status object contains information about the event's status.\",\n \"$ref\": + \"LiveBroadcastStatus\"\n },\n \"contentDetails\": {\n \"$ref\": + \"LiveBroadcastContentDetails\",\n \"description\": \"The contentDetails + object contains information about the event's video content, such as whether + the content can be shown in an embedded video player or if it will be archived + and therefore available for viewing after the event has concluded.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveBroadcast\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the event, including its title, description, start time, and end time.\",\n + \ \"$ref\": \"LiveBroadcastSnippet\"\n }\n }\n },\n + \ \"ChannelContentOwnerDetails\": {\n \"id\": \"ChannelContentOwnerDetails\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"contentOwner\": + {\n \"description\": \"The ID of the content owner linked to the + channel.\",\n \"type\": \"string\"\n },\n \"timeLinked\": {\n \"format\": \"date-time\",\n \"description\": \"The date and time when the channel was linked to the content owner.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ContentRating\": {\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\",\n \"id\": \"ContentRating\",\n \"type\": - \"object\",\n \"properties\": {\n \"icaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales - (ICAA - Spain) rating.\",\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ]\n },\n - \ \"mdaRating\": {\n \"enum\": [\n \"mdaUnspecified\",\n - \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n - \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n - \ \"mdaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Singapore's Media Development - Authority (MDA) and, specifically, it's Board of Film Censors (BFC).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ]\n },\n \"catvfrRating\": - {\n \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n + \"string\"\n }\n },\n \"description\": \"The contentOwnerDetails + object encapsulates channel data that is relevant for YouTube Partners linked + with the channel.\"\n },\n \"LiveStreamContentDetails\": {\n \"properties\": + {\n \"closedCaptionsIngestionUrl\": {\n \"description\": \"The + ingestion URL where the closed captions of this stream are sent.\",\n \"type\": + \"string\"\n },\n \"isReusable\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Indicates whether the stream is reusable, which + means that it can be bound to multiple broadcasts. It is common for broadcasters + to reuse the same stream for many different broadcasts if those broadcasts + occur at different times. If you set this value to false, then the stream + will not be reusable, which means that it can only be bound to one broadcast. + Non-reusable streams differ from reusable streams in the following ways: - + A non-reusable stream can only be bound to one broadcast. - A non-reusable + stream might be deleted by an automated process after the broadcast ends. + - The liveStreams.list method does not list non-reusable streams if you call + the method and set the mine parameter to true. The only way to use that method + to retrieve the resource for a non-reusable stream is to use the id parameter + to identify the stream. \"\n }\n },\n \"id\": \"LiveStreamContentDetails\",\n + \ \"description\": \"Detailed settings of a stream.\",\n \"type\": + \"object\"\n },\n \"LocalizedString\": {\n \"id\": \"LocalizedString\",\n + \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n + \ },\n \"language\": {\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"ChannelAuditDetails\": + {\n \"type\": \"object\",\n \"id\": \"ChannelAuditDetails\",\n \"properties\": + {\n \"copyrightStrikesGoodStanding\": {\n \"description\": + \"Whether or not the channel has any copyright strikes.\",\n \"type\": + \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether or not the channel has + any unresolved claims.\"\n },\n \"communityGuidelinesGoodStanding\": + {\n \"description\": \"Whether or not the channel respects the community + guidelines.\",\n \"type\": \"boolean\"\n }\n },\n \"description\": + \"The auditDetails object encapsulates channel data that is relevant for YouTube + Partners during the audit process.\"\n },\n \"LiveChatBanSnippet\": + {\n \"properties\": {\n \"type\": {\n \"type\": \"string\",\n + \ \"description\": \"The type of ban.\",\n \"enum\": [\n + \ \"liveChatBanTypeUnspecified\",\n \"permanent\",\n + \ \"temporary\"\n ],\n \"enumDescriptions\": [\n + \ \"An invalid ban type.\",\n \"A permanent ban.\",\n + \ \"A temporary ban.\"\n ]\n },\n \"banDurationSeconds\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n },\n + \ \"liveChatId\": {\n \"description\": \"The chat this ban + is pertinent to.\",\n \"type\": \"string\"\n },\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\"\n }\n },\n \"id\": + \"LiveChatBanSnippet\",\n \"type\": \"object\"\n },\n \"ThirdPartyLinkListResponse\": + {\n \"id\": \"ThirdPartyLinkListResponse\",\n \"properties\": {\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"kind\": + {\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"Thumbnail\": {\n \"id\": \"Thumbnail\",\n \"type\": + \"object\",\n \"properties\": {\n \"height\": {\n \"type\": + \"integer\",\n \"description\": \"(Optional) Height of the thumbnail + image.\",\n \"format\": \"uint32\"\n },\n \"width\": + {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"(Optional) Width of the thumbnail image.\"\n },\n \"url\": + {\n \"type\": \"string\",\n \"description\": \"The thumbnail + image's URL.\"\n }\n },\n \"description\": \"A thumbnail + is an image representing a YouTube resource.\"\n },\n \"MemberSnippet\": + {\n \"properties\": {\n \"membershipsDetails\": {\n \"$ref\": + \"MembershipsDetails\",\n \"description\": \"Details about the user's + membership.\"\n },\n \"creatorChannelId\": {\n \"description\": + \"The id of the channel that's offering memberships.\",\n \"type\": + \"string\"\n },\n \"memberDetails\": {\n \"$ref\": + \"ChannelProfileDetails\",\n \"description\": \"Details about the + member.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"MemberSnippet\"\n },\n \"ActivityContentDetailsFavorite\": {\n \"properties\": + {\n \"resourceId\": {\n \"description\": \"The resourceId + object contains information that identifies the resource that was marked as + a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n },\n + \ \"id\": \"ActivityContentDetailsFavorite\",\n \"type\": \"object\",\n + \ \"description\": \"Information about a video that was marked as a favorite + video.\"\n },\n \"LiveBroadcastStatus\": {\n \"id\": \"LiveBroadcastStatus\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"privacyStatus\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The broadcast's + privacy status. Note that the broadcast represents exactly one YouTube video, + so the privacy settings are identical to those supported for videos. In addition, + you can set this field by modifying the broadcast resource or by setting the + privacyStatus field of the corresponding video resource.\",\n \"type\": + \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ]\n },\n \"selfDeclaredMadeForKids\": + {\n \"description\": \"This field will be set to True if the creator + declares the broadcast to be kids only: go/live-cw-work.\",\n \"type\": + \"boolean\"\n },\n \"lifeCycleStatus\": {\n \"description\": + \"The broadcast's status. The status can be updated using the API's liveBroadcasts.transition + method.\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n + \ \"created\",\n \"ready\",\n \"testing\",\n + \ \"live\",\n \"complete\",\n \"revoked\",\n + \ \"testStarting\",\n \"liveStarting\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"No + value or the value is unknown.\",\n \"Incomplete settings, but + otherwise valid\",\n \"Complete settings\",\n \"Visible + only to partner, may need special UI treatment\",\n \"Viper is + recording; this means the \\\"clock\\\" is running\",\n \"The broadcast + is finished.\",\n \"This broadcast was removed by admin action\",\n + \ \"Transition into TESTING has been requested\",\n \"Transition + into LIVE has been requested\"\n ]\n },\n \"madeForKids\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the broadcast is made for kids or not, decided by YouTube instead of the creator. + This field is read only.\"\n },\n \"recordingStatus\": {\n \"description\": + \"The broadcast's recording status.\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n + \ \"notRecording\",\n \"recording\",\n \"recorded\"\n + \ ],\n \"enumDescriptions\": [\n \"No value or + the value is unknown.\",\n \"The recording has not yet been started.\",\n + \ \"The recording is currently on.\",\n \"The recording + is completed, and cannot be started again.\"\n ],\n \"type\": + \"string\"\n },\n \"liveBroadcastPriority\": {\n \"enumDescriptions\": + [\n \"\",\n \"Low priority broadcast: for low view count + HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: + for regular HoAs and broadcasts.\",\n \"High priority broadcast: + for high profile HoAs, like PixelCorp ones.\"\n ],\n \"type\": + \"string\",\n \"description\": \"Priority of the live broadcast event + (internal state).\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n + \ \"low\",\n \"normal\",\n \"high\"\n ]\n + \ }\n },\n \"description\": \"Live broadcast state.\"\n },\n + \ \"CaptionSnippet\": {\n \"id\": \"CaptionSnippet\",\n \"description\": + \"Basic details about a caption track, such as its language and name.\",\n + \ \"properties\": {\n \"lastUpdated\": {\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the caption track was + last updated.\",\n \"format\": \"date-time\"\n },\n \"isDraft\": + {\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\",\n + \ \"type\": \"boolean\"\n },\n \"isEasyReader\": {\n + \ \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n \"isAutoSynced\": + {\n \"description\": \"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.\",\n \"type\": + \"boolean\"\n },\n \"videoId\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the video associated with + the caption track. @mutable youtube.captions.insert\"\n },\n \"trackKind\": + {\n \"description\": \"The caption track's type.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"standard\",\n + \ \"ASR\",\n \"forced\"\n ]\n },\n \"language\": + {\n \"description\": \"The language of the caption track. The property + value is a BCP-47 language tag.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"audioTrackType\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\"\n ],\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"rtcRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n - \ \"D\",\n \"\"\n ],\n \"enum\": [\n - \ \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ],\n \"description\": \"The - video's General Directorate of Radio, Television and Cinematography (Mexico) - rating.\"\n },\n \"mccaaRating\": {\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"smaisRating\": {\n \"description\": \"The video's - rating in Iceland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"L\",\n \"7\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"ifcoRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n - \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n - \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n - \ \"ifco18\",\n \"ifcoUnrated\"\n ],\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\",\n \"type\": \"string\"\n - \ },\n \"cnaRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Romania's CONSILIUL NATIONAL - AL AUDIOVIZUALULUI (CNA).\",\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ]\n },\n - \ \"mibacRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\",\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ]\n },\n - \ \"mekuRating\": {\n \"description\": \"The video's rating - from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual - Institute).\",\n \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"mekuUnspecified\",\n \"mekuS\",\n \"meku7\",\n - \ \"meku12\",\n \"meku16\",\n \"meku18\",\n - \ \"mekuUnrated\"\n ]\n },\n \"eefilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Estonia.\",\n - \ \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n - \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n - \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n - \ \"eefilmK16\",\n \"eefilmUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"mccypRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Danish - Film Institute's (Det Danske Filminstitut) Media Council for Children and - Young People.\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ]\n },\n \"incaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"description\": \"The video's INCAA - (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ]\n },\n \"resorteviolenciaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in Venezuela.\",\n - \ \"enum\": [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ]\n },\n \"eirinRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Eirin (\u6620\u502B) rating. Eirin - is the Japanese rating system.\",\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ]\n },\n \"czfilmRating\": {\n \"enum\": - [\n \"czfilmUnspecified\",\n \"czfilmU\",\n \"czfilm12\",\n - \ \"czfilm14\",\n \"czfilm18\",\n \"czfilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in the Czech Republic.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ]\n },\n \"cbfcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ],\n \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n - \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n - \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n - \ \"cbfcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Central Board of Film Certification - (CBFC - India) rating.\"\n },\n \"bmukkRating\": {\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"enum\": - [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n \"bmukk6\",\n - \ \"bmukk8\",\n \"bmukk10\",\n \"bmukk12\",\n - \ \"bmukk14\",\n \"bmukk16\",\n \"bmukkUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"skfilmRating\": - {\n \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n - \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n - \ \"skfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ],\n \"description\": - \"The video's rating in Slovakia.\",\n \"type\": \"string\"\n },\n - \ \"cceRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"4\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\",\n \"14\"\n ],\n - \ \"description\": \"The video's rating from Portugal's Comiss\xE3o - de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ]\n },\n \"nfvcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"type\": \"string\"\n },\n \"rteRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"description\": \"The video's rating from Ireland's - Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ]\n },\n \"nbcRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from the Maldives National Bureau of Classification.\",\n \"enum\": - [\n \"nbcUnspecified\",\n \"nbcG\",\n \"nbcPg\",\n - \ \"nbc12plus\",\n \"nbc15plus\",\n \"nbc18plus\",\n - \ \"nbc18plusr\",\n \"nbcPu\",\n \"nbcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n - \ \"18+R\",\n \"PU\",\n \"\"\n ]\n - \ },\n \"oflcRating\": {\n \"enum\": [\n \"oflcUnspecified\",\n - \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n - \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n - \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n - \ \"oflcRp16\",\n \"oflcRp18\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\"\n },\n \"bbfcRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's British Board of Film Classification - (BBFC) rating.\",\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ]\n },\n \"mcstRating\": {\n \"enum\": - [\n \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating system for Vietnam - MCST\"\n },\n \"anatelRating\": - {\n \"description\": \"The video's Anatel (Asociaci\xF3n Nacional - de Televisi\xF3n) rating for Chilean television.\",\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"agcomRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ],\n \"description\": \"The video's rating from Italy's - Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ]\n },\n \"djctqRatingReasons\": - {\n \"description\": \"Reasons that explain why the video received - its DJCQT (Brazil) rating.\",\n \"type\": \"array\",\n \"items\": - {\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"cncRating\": {\n \"type\": \"string\",\n \"description\": - \"Rating system in France - Commission de classification cinematographique\",\n - \ \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ]\n - \ },\n \"fskRating\": {\n \"description\": \"The video's - Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.\",\n - \ \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"ecbmctRating\": - {\n \"type\": \"string\",\n \"description\": \"Rating system - in Turkey - Evaluation and Classification Board of the Ministry of Culture - and Tourism\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ]\n },\n \"fcbmRating\": {\n \"enum\": [\n - \ \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Malaysia's - Film Censorship Board.\"\n },\n \"fcoRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Hong Kong's Office for - Film, Newspaper and Article Administration.\"\n },\n \"mpaatRating\": - {\n \"type\": \"string\",\n \"description\": \"The rating - system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ]\n },\n - \ \"fpbRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\",\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ]\n },\n - \ \"catvRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n - \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"enum\": - [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ]\n },\n \"mocRating\": {\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"kmrbRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ]\n },\n \"kijkwijzerRating\": {\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ]\n },\n \"cscfRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Luxembourg's Commission - de surveillance de la classification des films (CSCF).\",\n \"type\": - \"string\",\n \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ]\n },\n \"medietilsynetRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Medietilsynet, - the Norwegian Media Authority.\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ]\n },\n \"chfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Switzerland.\",\n \"enum\": - [\n \"chfilmUnspecified\",\n \"chfilm0\",\n \"chfilm6\",\n - \ \"chfilm12\",\n \"chfilm16\",\n \"chfilm18\",\n - \ \"chfilmUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"bfvcRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ],\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Thailand's - Board of Film and Video Censors.\"\n },\n \"cicfRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ],\n \"description\": \"The - video's rating from the Commission de Contr\xF4le des Films (Belgium).\"\n - \ },\n \"menaMpaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ],\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The rating system - for MENA countries, a clone of MPAA. It is needed to prevent titles go live - w/o additional QC check, since some of them can be inappropriate for the countries - at all. See b/33408548 for more details.\"\n },\n \"cccRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Todo - espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n - \ \"14+\",\n \"18+\",\n \"18+ - contenido - excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"description\": \"The video's Consejo - de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"ytRating\": {\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"nmcRating\": {\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\",\n - \ \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"lsfRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"SU\",\n \"A\",\n \"BO\",\n \"13\",\n - \ \"R\",\n \"17\",\n \"D\",\n \"21\",\n - \ \"\"\n ],\n \"enum\": [\n \"lsfUnspecified\",\n - \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n - \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n - \ \"lsfUnrated\"\n ],\n \"description\": \"The - video's rating from Indonesia's Lembaga Sensor Film.\",\n \"type\": - \"string\"\n },\n \"moctwRating\": {\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n - \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ]\n },\n \"pefilmRating\": {\n \"enum\": - [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Peru.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n - \ \"\"\n ]\n },\n \"kfcbRating\": {\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n - \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n - \ \"kfcbUnrated\"\n ]\n },\n \"russiaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"russiaUnspecified\",\n \"russia0\",\n \"russia6\",\n - \ \"russia12\",\n \"russia16\",\n \"russia18\",\n - \ \"russiaUnrated\"\n ],\n \"description\": \"The - video's National Film Registry of the Russian Federation (MKRF - Russia) rating.\"\n - \ },\n \"chvrsRating\": {\n \"description\": \"The video's - Canadian Home Video Rating System (CHVRS) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ],\n \"enum\": [\n - \ \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ]\n },\n - \ \"egfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"GN\",\n \"18\",\n \"BN\",\n \"\"\n - \ ],\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"description\": \"The - video's rating in Egypt.\",\n \"type\": \"string\"\n },\n - \ \"acbRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"acbUnspecified\",\n \"acbE\",\n \"acbP\",\n - \ \"acbC\",\n \"acbG\",\n \"acbPg\",\n \"acbM\",\n - \ \"acbMa15plus\",\n \"acbR18plus\",\n \"acbUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n - \ \"description\": \"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.\"\n },\n \"djctqRating\": - {\n \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ],\n \"description\": \"The - video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"csaRating\": - {\n \"description\": \"The video's rating from France's Conseil sup\xE9rieur - de l\u2019audiovisuel, which rates broadcast content.\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n - \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n - \ \"csaUnrated\"\n ]\n },\n \"tvpgRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ],\n \"description\": \"The video's TV Parental Guidelines - (TVPG) rating.\",\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"grfilmRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Greece.\",\n \"enum\": - [\n \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n - \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n - \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ]\n - \ },\n \"rcnofRating\": {\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\"\n },\n \"smsaRating\": {\n - \ \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Statens medier\xE5d (Sweden's - National Media Council).\"\n },\n \"mpaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n - \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n - \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\"\n },\n - \ \"nbcplRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"description\": \"The - video's rating in Poland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"fpbRatingReasons\": - {\n \"description\": \"Reasons that explain why the video received - its FPB (South Africa) rating.\",\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"South Africa rating content descriptors.\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"type\": \"array\"\n - \ },\n \"ilfilmRating\": {\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Israel.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"fmocRating\": {\n \"enum\": [\n \"fmocUnspecified\",\n - \ \"fmocU\",\n \"fmoc10\",\n \"fmoc12\",\n - \ \"fmoc16\",\n \"fmoc18\",\n \"fmocE\",\n - \ \"fmocUnrated\"\n ],\n \"description\": \"This - property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ]\n },\n \"mtrcbRating\": {\n \"enum\": [\n - \ \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n - \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n - \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Movie - and Television Review and Classification Board (Philippines).\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ]\n },\n \"nfrcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"nfrcUnspecified\",\n \"nfrcA\",\n - \ \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n - \ \"nfrcUnrated\"\n ],\n \"description\": \"The - video's rating from the Bulgarian National Film Center.\"\n },\n \"nkclvRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Nacion\xE3lais Kino centrs (National Film Centre - of Latvia).\",\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ]\n }\n }\n },\n \"ChannelTopicDetails\": {\n - \ \"properties\": {\n \"topicIds\": {\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"topicCategories\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Wikipedia - URLs that describe the channel's content.\",\n \"type\": \"array\"\n - \ }\n },\n \"description\": \"Freebase topic information related - to the channel.\",\n \"type\": \"object\",\n \"id\": \"ChannelTopicDetails\"\n - \ },\n \"ActivityContentDetailsBulletin\": {\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"Details about a channel bulletin post.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource associated with a - bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"I18nRegionListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n }\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#i18nRegionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"I18nRegionListResponse\"\n },\n \"ThirdPartyLinkListResponse\": {\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n }\n },\n - \ \"id\": \"ThirdPartyLinkListResponse\",\n \"type\": \"object\"\n - \ },\n \"PropertyValue\": {\n \"type\": \"object\",\n \"description\": - \"A pair Property / Value.\",\n \"properties\": {\n \"value\": - {\n \"type\": \"string\",\n \"description\": \"The property's - value.\"\n },\n \"property\": {\n \"description\": - \"A property.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"PropertyValue\"\n },\n \"I18nLanguageSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"name\": {\n \"type\": - \"string\",\n \"description\": \"The human-readable name of the language - in the language itself.\"\n },\n \"hl\": {\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - an i18n language, such as language code and human-readable name.\",\n \"id\": - \"I18nLanguageSnippet\"\n },\n \"Thumbnail\": {\n \"type\": \"object\",\n - \ \"description\": \"A thumbnail is an image representing a YouTube resource.\",\n - \ \"properties\": {\n \"width\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"(Optional) - Width of the thumbnail image.\"\n },\n \"height\": {\n \"description\": - \"(Optional) Height of the thumbnail image.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"url\": {\n \"description\": - \"The thumbnail image's URL.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"Thumbnail\"\n },\n \"LanguageTag\": {\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LanguageTag\"\n },\n \"I18nRegionSnippet\": - {\n \"properties\": {\n \"gl\": {\n \"description\": - \"The region code as a 2-letter ISO country code.\",\n \"type\": - \"string\"\n },\n \"name\": {\n \"description\": \"The - human-readable name of the region.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"I18nRegionSnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about an i18n region, such as region - code and human-readable name.\"\n },\n \"PlaylistItem\": {\n \"properties\": - {\n \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItem\\\".\",\n \"default\": - \"youtube#playlistItem\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the playlist item.\",\n \"type\": \"string\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"PlaylistItemContentDetails\",\n - \ \"description\": \"The contentDetails object is included in the + \"The type of audio track associated with the caption track.\",\n \"type\": + \"string\",\n \"enum\": [\n \"unknown\",\n \"primary\",\n + \ \"commentary\",\n \"descriptive\"\n ]\n },\n + \ \"status\": {\n \"type\": \"string\",\n \"enum\": + [\n \"serving\",\n \"syncing\",\n \"failed\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The caption track's + status.\"\n },\n \"failureReason\": {\n \"description\": + \"The reason that YouTube failed to process the caption track. This property + is only present if the state property's value is failed.\",\n \"type\": + \"string\",\n \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n + \ \"processingFailed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"isLarge\": {\n \"type\": \"boolean\",\n \"description\": + \"Indicates whether the caption track uses large text for the vision-impaired. + The default value is false.\"\n },\n \"name\": {\n \"description\": + \"The name of the caption track. The name is intended to be visible to the + user as an option during playback.\",\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n }\n },\n \"isCC\": {\n \"type\": + \"boolean\",\n \"description\": \"Indicates whether the track contains + closed captions for the deaf and hard of hearing. The default value is false.\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"AbuseReport\": + {\n \"type\": \"object\",\n \"id\": \"AbuseReport\",\n \"properties\": + {\n \"description\": {\n \"type\": \"string\"\n },\n + \ \"relatedEntities\": {\n \"items\": {\n \"$ref\": + \"RelatedEntity\"\n },\n \"type\": \"array\"\n },\n + \ \"abuseTypes\": {\n \"items\": {\n \"$ref\": \"AbuseType\"\n + \ },\n \"type\": \"array\"\n },\n \"subject\": + {\n \"$ref\": \"Entity\"\n }\n }\n },\n \"ChannelSectionLocalization\": + {\n \"description\": \"ChannelSection localization setting\",\n \"properties\": + {\n \"title\": {\n \"description\": \"The localized strings + for channel section's title.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"ChannelSectionLocalization\",\n \"type\": \"object\"\n + \ },\n \"ChannelToStoreLinkDetails\": {\n \"description\": \"Information + specific to a store on a merchandising platform linked to a YouTube channel.\",\n + \ \"properties\": {\n \"storeName\": {\n \"description\": + \"Name of the store.\",\n \"type\": \"string\"\n },\n \"merchantId\": + {\n \"format\": \"uint64\",\n \"description\": \"Google + Merchant Center id of the store.\",\n \"type\": \"string\"\n },\n + \ \"storeUrl\": {\n \"type\": \"string\",\n \"description\": + \"Landing page of the store.\"\n }\n },\n \"id\": \"ChannelToStoreLinkDetails\",\n + \ \"type\": \"object\"\n },\n \"MembershipsLevelListResponse\": + {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"default\": \"youtube#membershipsLevelListResponse\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"MembershipsLevel\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of pricing levels offered by a creator to the fans.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"MembershipsLevelListResponse\"\n + \ },\n \"VideoPlayer\": {\n \"type\": \"object\",\n \"id\": + \"VideoPlayer\",\n \"description\": \"Player to be used for a video playback.\",\n + \ \"properties\": {\n \"embedWidth\": {\n \"format\": + \"int64\",\n \"description\": \"The embed width\",\n \"type\": + \"string\"\n },\n \"embedHeight\": {\n \"type\": \"string\",\n + \ \"format\": \"int64\"\n },\n \"embedHtml\": {\n \"type\": + \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that + embeds a player that will play the video.\"\n }\n }\n },\n + \ \"LiveStream\": {\n \"description\": \"A live stream describes a + live ingestion point.\",\n \"id\": \"LiveStream\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"LiveStreamSnippet\",\n \"description\": + \"The snippet object contains basic details about the stream, including its + channel, title, and description.\"\n },\n \"status\": {\n \"$ref\": + \"LiveStreamStatus\",\n \"description\": \"The status object contains + information about live stream's status.\"\n },\n \"cdn\": {\n + \ \"description\": \"The cdn object defines the live stream's content + delivery network (CDN) settings. These settings provide details about the + manner in which you stream your content to YouTube.\",\n \"$ref\": + \"CdnSettings\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#liveStream\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + assigns to uniquely identify the stream.\",\n \"type\": \"string\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.update\"\n + \ ]\n }\n },\n \"contentDetails\": {\n \"description\": + \"The content_details object contains information about the stream, including + the closed captions ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n + \ }\n }\n },\n \"PlaylistItem\": {\n \"properties\": + {\n \"id\": {\n \"description\": \"The ID that YouTube uses + to uniquely identify the playlist item.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#playlistItem\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"contentDetails\": + {\n \"description\": \"The contentDetails object is included in the resource if the included item is a YouTube video. The object contains additional - information about the video.\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistItemSnippet\",\n \"description\": \"The snippet object - contains basic details about the playlist item, such as its title and position - in the playlist.\"\n }\n },\n \"description\": \"A *playlistItem* - resource identifies another resource, such as a video, that is included in - a playlist. In addition, the playlistItem resource contains details about - the included resource that pertain specifically to how that resource is used - in that playlist. YouTube uses playlists to identify special collections of - videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods. For example, if - a user gives a positive rating to a video, you would insert that video into - the liked videos playlist for that user's channel.\",\n \"id\": \"PlaylistItem\",\n - \ \"type\": \"object\"\n },\n \"VideoStatus\": {\n \"type\": - \"object\",\n \"properties\": {\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The video's privacy status.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\"\n },\n \"publishAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the video is scheduled - to publish. It can be set only if the privacy status of the video is private..\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"failureReason\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ],\n \"description\": \"This - value explains why a video failed to upload. This property is only present - if the uploadStatus property indicates that the upload failed.\",\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ]\n },\n \"embeddable\": {\n \"description\": - \"This value indicates if the video can be embedded on another website. @mutable - youtube.videos.insert youtube.videos.update\",\n \"type\": \"boolean\"\n - \ },\n \"publicStatsViewable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value indicates if the extended video statistics - on the watch page can be viewed by everyone. Note that the view count, likes, - etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"license\": {\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"rejectionReason\": {\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"This value explains why YouTube rejected an uploaded video. This property - is only present if the uploadStatus property indicates that the upload was - rejected.\",\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n },\n \"uploadStatus\": - {\n \"enumDescriptions\": [\n \"Video has been uploaded - but not processed yet.\",\n \"Video has been successfully processed.\",\n - \ \"Processing has failed. See FailureReason.\",\n \"Video - has been rejected. See RejectionReason.\",\n \"Video has been deleted.\"\n - \ ],\n \"description\": \"The status of the uploaded video.\",\n - \ \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about a video category, such as its localized title. Next - Id: 18\",\n \"id\": \"VideoStatus\"\n },\n \"ThirdPartyLink\": - {\n \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#thirdPartyLink\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n - \ },\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n - \ \"description\": \"The status object contains information about - the status of the link.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n },\n \"linkingToken\": - {\n \"type\": \"string\",\n \"description\": \"The linking_token - identifies a YouTube account and channel with which the third party account - is linked.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ThirdPartyLink\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"properties\": {\n \"reason\": {\n \"description\": - \"The reason that the resource is recommended to the user.\",\n \"enum\": - [\n \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the recommended resource.\"\n - \ },\n \"seedResourceId\": {\n \"description\": \"The - seedResourceId object contains information about the resource that caused - the recommendation.\",\n \"$ref\": \"ResourceId\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"Information that identifies the recommended resource.\"\n - \ },\n \"VideoFileDetailsVideoStream\": {\n \"properties\": {\n - \ \"bitrateBps\": {\n \"description\": \"The video stream's - bitrate, in bits per second.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"widthPixels\": {\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"vendor\": - {\n \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\",\n \"type\": - \"string\"\n },\n \"heightPixels\": {\n \"description\": - \"The encoded video content's height in pixels.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"frameRateFps\": {\n - \ \"type\": \"number\",\n \"description\": \"The video stream's - frame rate, in frames per second.\",\n \"format\": \"double\"\n },\n - \ \"aspectRatio\": {\n \"type\": \"number\",\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\",\n \"format\": \"double\"\n - \ },\n \"rotation\": {\n \"type\": \"string\",\n \"enum\": - [\n \"none\",\n \"clockwise\",\n \"upsideDown\",\n - \ \"counterClockwise\",\n \"other\"\n ],\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"codec\": {\n \"description\": - \"The video codec that the stream uses.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoFileDetailsVideoStream\",\n \"type\": - \"object\",\n \"description\": \"Information about a video stream.\"\n - \ },\n \"VideoAgeGating\": {\n \"type\": \"object\",\n \"id\": - \"VideoAgeGating\",\n \"properties\": {\n \"videoGameRating\": - {\n \"description\": \"Video game rating, if any.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ]\n },\n \"alcoholContent\": - {\n \"description\": \"Indicates whether or not the video has alcoholic - beverage content. Only users of legal purchasing age in a particular country, - as identified by ICAP, can view the content.\",\n \"type\": \"boolean\"\n - \ },\n \"restricted\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Age-restricted trailers. For redband trailers - and adult-rated video-games. Only users aged 18+ can view the content. The - the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\"\n }\n }\n },\n \"LiveChatBan\": - {\n \"description\": \"A `__liveChatBan__` resource represents a ban - for a YouTube live chat.\",\n \"id\": \"LiveChatBan\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"default\": - \"youtube#liveChatBan\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveChatBanSnippet\",\n \"description\": \"The `snippet` object - contains basic details about the ban.\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoAbuseReport\": {\n \"properties\": {\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n },\n - \ \"comments\": {\n \"description\": \"Additional comments - regarding the abuse report.\",\n \"type\": \"string\"\n },\n - \ \"reasonId\": {\n \"description\": \"The high-level, or primary, - reason that the content is abusive. The value is an abuse report reason ID.\",\n - \ \"type\": \"string\"\n },\n \"secondaryReasonId\": - {\n \"description\": \"The specific, or secondary, reason that this - content is abusive (if available). The value is an abuse report reason ID - that is a valid secondary reason for the primary reason.\",\n \"type\": - \"string\"\n },\n \"language\": {\n \"type\": \"string\",\n - \ \"description\": \"The language that the content was viewed in.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReport\"\n - \ },\n \"TestItem\": {\n \"id\": \"TestItem\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"TestItemTestItemSnippet\"\n },\n \"id\": {\n \"type\": - \"string\"\n },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"gaia\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n }\n }\n },\n \"LiveStreamSnippet\": {\n \"id\": - \"LiveStreamSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"description\": {\n \"description\": \"The stream's description. - The value cannot be longer than 10000 characters.\",\n \"type\": - \"string\"\n },\n \"isDefaultStream\": {\n \"type\": - \"boolean\"\n },\n \"title\": {\n \"description\": - \"The stream's title. The value must be between 1 and 128 characters long.\",\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that is transmitting the stream.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the stream was created.\",\n \"format\": \"date-time\"\n - \ }\n }\n },\n \"MemberSnippet\": {\n \"id\": \"MemberSnippet\",\n - \ \"properties\": {\n \"memberDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - member.\"\n },\n \"membershipsDetails\": {\n \"description\": - \"Details about the user's membership.\",\n \"$ref\": \"MembershipsDetails\"\n - \ },\n \"creatorChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The id of the channel that's offering memberships.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsLike\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the rated resource.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Information about a resource that received - a positive (like) rating.\",\n \"id\": \"ActivityContentDetailsLike\"\n - \ },\n \"VideoTopicDetails\": {\n \"properties\": {\n \"relevantTopicIds\": - {\n \"type\": \"array\",\n \"description\": \"Similar to - topic_id, except that these topics are merely relevant to the video. These - are topics that may be mentioned in, or appear in the video. You can retrieve - information about each topic using Freebase Topic API.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicCategories\": - {\n \"description\": \"A list of Wikipedia URLs that provide a high-level - description of the video's content.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"topicIds\": - {\n \"type\": \"array\",\n \"description\": \"A list of - Freebase topic IDs that are centrally associated with the video. These are - topics that are centrally featured in the video, and it can be said that the - video is mainly about each of these. You can retrieve information about each - topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"id\": \"VideoTopicDetails\",\n \"type\": - \"object\",\n \"description\": \"Freebase topic information related to - the video.\"\n },\n \"MemberListResponse\": {\n \"properties\": - {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n + information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the playlist item, such as its title and + position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n + \ },\n \"status\": {\n \"description\": \"The status + object contains information about the playlist item's privacy status.\",\n + \ \"$ref\": \"PlaylistItemStatus\"\n }\n },\n \"description\": + \"A *playlistItem* resource identifies another resource, such as a video, + that is included in a playlist. In addition, the playlistItem resource contains + details about the included resource that pertain specifically to how that + resource is used in that playlist. YouTube uses playlists to identify special + collections of videos for a channel, such as: - uploaded videos - favorite + videos - positively rated (liked) videos - watch history - watch later To + be more specific, these lists are associated with a channel, which is a collection + of a person, group, or company's videos, playlists, and other YouTube information. + You can retrieve the playlist IDs for each of these lists from the channel + resource for a given channel. You can then use the playlistItems.list method + to retrieve any of those lists. You can also add or remove items from those + lists by calling the playlistItems.insert and playlistItems.delete methods. + For example, if a user gives a positive rating to a video, you would insert + that video into the liked videos playlist for that user's channel.\",\n \"type\": + \"object\",\n \"id\": \"PlaylistItem\"\n },\n \"LiveChatSuperChatDetails\": + {\n \"id\": \"LiveChatSuperChatDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"userComment\": {\n \"type\": \"string\",\n + \ \"description\": \"The comment added by the user to this Super Chat + event.\"\n },\n \"amountDisplayString\": {\n \"type\": + \"string\",\n \"description\": \"A rendered string that displays + the fund amount and currency to the user.\"\n },\n \"amountMicros\": + {\n \"description\": \"The amount purchased by the user, in micros + (1,750,000 micros = 1.75).\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n },\n \"currency\": {\n \"description\": + \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n + \ },\n \"tier\": {\n \"format\": \"uint32\",\n \"description\": + \"The tier in which the amount belongs. Lower amounts belong to lower tiers. + The lowest tier is 1.\",\n \"type\": \"integer\"\n }\n }\n + \ },\n \"LiveBroadcastSnippet\": {\n \"id\": \"LiveBroadcastSnippet\",\n + \ \"properties\": {\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that is publishing + the broadcast.\",\n \"type\": \"string\"\n },\n \"isDefaultBroadcast\": + {\n \"type\": \"boolean\",\n \"description\": \"Indicates + whether this broadcast is the default broadcast. Internal only.\"\n },\n + \ \"title\": {\n \"description\": \"The broadcast's title. + Note that the broadcast represents exactly one YouTube video. You can set + this field by modifying the broadcast resource or by setting the title field + of the corresponding video resource.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"type\": \"string\"\n },\n + \ \"description\": {\n \"description\": \"The broadcast's description. + As with the title, you can set this field by modifying the broadcast resource + or by setting the description field of the corresponding video resource.\",\n + \ \"type\": \"string\"\n },\n \"scheduledEndTime\": + {\n \"description\": \"The date and time that the broadcast is scheduled + to end.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n + \ },\n \"actualEndTime\": {\n \"description\": \"The + date and time that the broadcast actually ended. This information is only + available once the broadcast's state is complete.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"liveChatId\": + {\n \"description\": \"The id of the live chat for this broadcast.\",\n + \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"type\": + \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the broadcast was added to YouTube's live broadcast + schedule.\"\n },\n \"actualStartTime\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time that the broadcast + actually started. This information is only available once the broadcast's + state is live.\",\n \"type\": \"string\"\n },\n \"scheduledStartTime\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time that the broadcast is scheduled to start.\"\n },\n + \ \"thumbnails\": {\n \"description\": \"A map of thumbnail + images associated with the broadcast. For each nested object in this object, + the key is the name of the thumbnail image, and the value is an object that + contains other information about the thumbnail.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ }\n },\n \"description\": \"Basic broadcast information.\",\n + \ \"type\": \"object\"\n },\n \"CommentThreadSnippet\": {\n \"description\": + \"Basic details about a comment thread.\",\n \"id\": \"CommentThreadSnippet\",\n + \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"canReply\": + {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n + \ \"totalReplyCount\": {\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"description\": \"The total number of replies (not + including the top level comment).\"\n },\n \"topLevelComment\": + {\n \"$ref\": \"Comment\",\n \"description\": \"The top + level comment of this thread.\"\n },\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the video the comments + refer to, if any. No video_id implies a channel discussion comment.\"\n },\n + \ \"isPublic\": {\n \"type\": \"boolean\",\n \"description\": + \"Whether the thread (and therefore all its comments) is visible to all YouTube + users.\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReportReasonSnippet\": + {\n \"properties\": {\n \"secondaryReasons\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n + \ },\n \"description\": \"The secondary reasons associated + with this reason, if any are available. (There might be 0 or more.)\"\n },\n + \ \"label\": {\n \"type\": \"string\",\n \"description\": + \"The localized label belonging to this abuse report reason.\"\n }\n + \ },\n \"description\": \"Basic details about a video category, such + as its localized title.\",\n \"id\": \"VideoAbuseReportReasonSnippet\",\n + \ \"type\": \"object\"\n },\n \"PlaylistItemListResponse\": {\n + \ \"properties\": {\n \"etag\": {\n \"type\": \"string\"\n + \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": + \"A list of playlist items that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"type\": + \"array\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n \ \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#playlistItemListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"PlaylistItemListResponse\",\n + \ \"type\": \"object\"\n },\n \"LiveChatSuperStickerDetails\": {\n + \ \"type\": \"object\",\n \"properties\": {\n \"tier\": {\n + \ \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The tier in which the amount belongs. Lower amounts belong to lower tiers. + The lowest tier is 1.\"\n },\n \"amountDisplayString\": {\n + \ \"description\": \"A rendered string that displays the fund amount + and currency to the user.\",\n \"type\": \"string\"\n },\n + \ \"amountMicros\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"The amount purchased by the user, + in micros (1,750,000 micros = 1.75).\"\n },\n \"superStickerMetadata\": + {\n \"description\": \"Information about the Super Sticker.\",\n + \ \"$ref\": \"SuperStickerMetadata\"\n },\n \"currency\": + {\n \"description\": \"The currency in which the purchase was made.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatSuperStickerDetails\"\n + \ },\n \"ThirdPartyLink\": {\n \"id\": \"ThirdPartyLink\",\n \"type\": + \"object\",\n \"description\": \"A *third party account link* resource + represents a link between a YouTube account or a channel and an account on + a third-party service.\",\n \"properties\": {\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource\"\n },\n \"snippet\": {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the third- party account link.\"\n },\n \"linkingToken\": {\n + \ \"description\": \"The linking_token identifies a YouTube account + and channel with which the third party account is linked.\",\n \"type\": + \"string\"\n },\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n + \ \"description\": \"The status object contains information about + the status of the link.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n + \ \"default\": \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"CommentThreadReplies\": {\n \"type\": + \"object\",\n \"properties\": {\n \"comments\": {\n \"description\": + \"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.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Comment\"\n }\n }\n },\n \"id\": + \"CommentThreadReplies\",\n \"description\": \"Comments written in (direct + or indirect) reply to the top level comment.\"\n },\n \"SearchResult\": + {\n \"properties\": {\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n + \ \"default\": \"youtube#searchResult\",\n \"type\": \"string\"\n + \ },\n \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The id object contains information that can be used to uniquely identify + the resource that matches the search request.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about a search result, such as + its title or description. For example, if the search result is a video, then + the title will be the video's title and the description will be the video's + description.\",\n \"$ref\": \"SearchResultSnippet\"\n }\n + \ },\n \"description\": \"A search result contains information about + a YouTube video, channel, or playlist that matches the search parameters specified + in an API request. While a search result points to a uniquely identifiable + resource, like a video, it does not have its own persistent data.\",\n \"id\": + \"SearchResult\",\n \"type\": \"object\"\n },\n \"LiveStreamStatus\": + {\n \"description\": \"Brief description of the live stream status.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"healthStatus\": + {\n \"description\": \"The health status of the stream.\",\n \"$ref\": + \"LiveStreamHealthStatus\"\n },\n \"streamStatus\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"created\",\n + \ \"ready\",\n \"active\",\n \"inactive\",\n + \ \"error\"\n ],\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"LiveStreamStatus\"\n },\n \"LiveChatMessageRetractedDetails\": + {\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": + \"string\"\n }\n }\n },\n \"LocalizedProperty\": {\n \"type\": + \"object\",\n \"id\": \"LocalizedProperty\",\n \"properties\": {\n + \ \"localized\": {\n \"items\": {\n \"$ref\": \"LocalizedString\"\n + \ },\n \"type\": \"array\"\n },\n \"defaultLanguage\": + {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The + language of the default property.\"\n },\n \"default\": {\n + \ \"type\": \"string\"\n }\n }\n },\n \"VideoAbuseReportSecondaryReason\": + {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"properties\": + {\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID of this abuse report secondary reason.\"\n },\n \"label\": + {\n \"type\": \"string\",\n \"description\": \"The localized + label for this abuse report secondary reason.\"\n }\n },\n \"type\": + \"object\"\n },\n \"CommentSnippetAuthorChannelId\": {\n \"properties\": + {\n \"value\": {\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n + \ \"description\": \"The id of the author's YouTube channel, if any.\"\n + \ },\n \"ImageSettings\": {\n \"properties\": {\n \"smallBrandedBannerImageUrl\": + {\n \"description\": \"The URL for the 640px by 70px banner image + that appears below the video player in the default view of the video watch + page. The URL for the image that appears above the top-left corner of the + video player. This is a 25-pixel-high image with a flexible width that cannot + exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n + \ \"smallBrandedBannerImageImapScript\": {\n \"$ref\": \"LocalizedProperty\",\n + \ \"description\": \"The image map script for the small banner image.\"\n + \ },\n \"largeBrandedBannerImageImapScript\": {\n \"$ref\": + \"LocalizedProperty\",\n \"description\": \"The image map script + for the large banner image.\"\n },\n \"bannerMobileLowImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size low resolution (320x88).\"\n },\n \"backgroundImageUrl\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The URL for the background image shown on the video watch page. The image + should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n + \ \"bannerTvHighImageUrl\": {\n \"type\": \"string\",\n \"description\": + \"Banner image. TV size high resolution (1920x1080).\"\n },\n \"bannerMobileMediumHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size medium/high resolution (960x263).\"\n },\n \"bannerTabletExtraHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size extra high resolution (2560x424).\"\n },\n \"bannerTabletHdImageUrl\": + {\n \"description\": \"Banner image. Tablet size high resolution + (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerTabletImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size (1707x283).\"\n },\n \"bannerTvLowImageUrl\": {\n + \ \"description\": \"Banner image. TV size low resolution (854x480).\",\n + \ \"type\": \"string\"\n },\n \"bannerMobileHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size high resolution (1280x360).\"\n },\n \"bannerTvImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size extra high resolution (2120x1192).\"\n },\n \"watchIconImageUrl\": + {\n \"type\": \"string\"\n },\n \"trackingImageUrl\": + {\n \"description\": \"The URL for a 1px by 1px tracking pixel that + can be used to collect statistics for views of the channel or video pages.\",\n + \ \"type\": \"string\"\n },\n \"bannerTabletLowImageUrl\": + {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n + \ \"type\": \"string\"\n },\n \"bannerExternalUrl\": + {\n \"description\": \"This is generated when a ChannelBanner.Insert + request has succeeded for the given channel.\",\n \"type\": \"string\"\n + \ },\n \"bannerTvMediumImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"Banner image. TV size medium resolution (1280x720).\"\n + \ },\n \"bannerImageUrl\": {\n \"description\": \"Banner + image. Desktop size (1060x175).\",\n \"type\": \"string\"\n },\n + \ \"bannerMobileImageUrl\": {\n \"type\": \"string\",\n \"description\": + \"Banner image. Mobile size (640x175).\"\n },\n \"bannerMobileExtraHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size high resolution (1440x395).\"\n },\n \"largeBrandedBannerImageUrl\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The URL for the 854px by 70px image that appears below the video player + in the expanded video view of the video watch page.\"\n }\n },\n + \ \"type\": \"object\",\n \"description\": \"Branding properties + for images associated with the channel.\",\n \"id\": \"ImageSettings\"\n + \ },\n \"I18nLanguageListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"I18nLanguageListResponse\",\n \"properties\": {\n \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#memberListResponse\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Member\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of members that match the request criteria.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"MemberListResponse\",\n \"type\": - \"object\"\n },\n \"LiveStreamListResponse\": {\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of live streams that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveStream\"\n }\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": + {\n \"default\": \"youtube#i18nLanguageListResponse\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"I18nLanguage\"\n },\n \"description\": \"A list of supported + i18n languages. In this map, the i18n language ID is the map key, and its + value is the corresponding i18nLanguage resource.\",\n \"type\": + \"array\"\n }\n }\n },\n \"PlaylistListResponse\": {\n \"type\": + \"object\",\n \"properties\": {\n \"items\": {\n \"items\": + {\n \"$ref\": \"Playlist\"\n },\n \"description\": + \"A list of playlists that match the request criteria\",\n \"type\": + \"array\"\n },\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"visitorId\": {\n \"type\": + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"kind\": {\n \"default\": + \"youtube#playlistListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStreamListResponse\"\n + pageToken parameter to retrieve the previous page in the result set.\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n }\n },\n \"id\": \"PlaylistListResponse\"\n + \ },\n \"ChannelSnippet\": {\n \"description\": \"Basic details + about a channel, including title, description and thumbnails.\",\n \"type\": + \"object\",\n \"id\": \"ChannelSnippet\",\n \"properties\": {\n + \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": + \"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. When displaying thumbnails + in your application, make sure that your code uses the image URLs exactly + as they are returned in API responses. For example, your application should + not use the http domain instead of the https domain in a URL returned in an + API response. Beginning in July 2018, channel thumbnail URLs will only be + available in the https domain, which is how the URLs appear in API responses. + After that time, you might see broken images in your application if it tries + to load YouTube images from the http domain. Thumbnail images might be empty + for newly created channels and might take up to one day to populate.\"\n },\n + \ \"title\": {\n \"description\": \"The channel's title.\",\n + \ \"type\": \"string\"\n },\n \"defaultLanguage\": {\n + \ \"description\": \"The language of the channel's default title and + description.\",\n \"type\": \"string\"\n },\n \"localized\": + {\n \"$ref\": \"ChannelLocalization\",\n \"description\": + \"Localized title and description, read-only.\"\n },\n \"publishedAt\": + {\n \"description\": \"The date and time that the channel was created.\",\n + \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n + \ \"description\": {\n \"type\": \"string\",\n \"description\": + \"The description of the channel.\"\n },\n \"country\": {\n + \ \"description\": \"The country of the channel.\",\n \"type\": + \"string\"\n },\n \"customUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The custom url of the channel.\"\n }\n + \ }\n },\n \"WatchSettings\": {\n \"id\": \"WatchSettings\",\n + \ \"type\": \"object\",\n \"description\": \"Branding properties + for the watch. All deprecated.\",\n \"properties\": {\n \"featuredPlaylistId\": + {\n \"description\": \"An ID that uniquely identifies a playlist + that displays next to the video player.\",\n \"type\": \"string\"\n + \ },\n \"textColor\": {\n \"description\": \"The background + color for the video watch page's branded area.\",\n \"type\": \"string\"\n + \ },\n \"backgroundColor\": {\n \"type\": \"string\",\n + \ \"description\": \"The text color for the video watch page's branded + area.\"\n }\n }\n },\n \"ThumbnailSetResponse\": {\n \"type\": + \"object\",\n \"properties\": {\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"description\": \"A list of thumbnails.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#thumbnailSetResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n \ },\n \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n },\n \"id\": \"ThumbnailSetResponse\"\n + \ },\n \"MonitorStreamInfo\": {\n \"type\": \"object\",\n \"properties\": + {\n \"broadcastStreamDelayMs\": {\n \"description\": \"If + you have set the enableMonitorStream property to true, then this property + determines the length of the live broadcast delay.\",\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n }\n },\n \"enableMonitorStream\": {\n + \ \"type\": \"boolean\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"This value determines whether the monitor stream + is enabled for the broadcast. If the monitor stream is enabled, then YouTube + will broadcast the event content on a special stream intended only for the + broadcaster's consumption. The broadcaster can use the stream to review the + event content and also to identify the optimal times to insert cuepoints. + You need to set this value to true if you intend to have a broadcast delay + for your event. *Note:* This property cannot be updated once the broadcast + is in the testing or live state.\"\n },\n \"embedHtml\": {\n + \ \"description\": \"HTML code that embeds a player that plays the + monitor stream.\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Settings and Info of the monitor stream\",\n \"id\": + \"MonitorStreamInfo\"\n },\n \"LiveStreamHealthStatus\": {\n \"type\": + \"object\",\n \"id\": \"LiveStreamHealthStatus\",\n \"properties\": + {\n \"configurationIssues\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n },\n + \ \"description\": \"The configurations issues on this stream\"\n + \ },\n \"lastUpdateTimeSeconds\": {\n \"description\": + \"The last time this status was updated (in seconds)\",\n \"type\": + \"string\",\n \"format\": \"uint64\"\n },\n \"status\": + {\n \"enum\": [\n \"good\",\n \"ok\",\n \"bad\",\n + \ \"noData\",\n \"revoked\"\n ],\n \"type\": + \"string\",\n \"description\": \"The status code of this stream\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n }\n + \ }\n },\n \"ChannelProfileDetails\": {\n \"id\": \"ChannelProfileDetails\",\n + \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The YouTube channel ID.\"\n },\n \"profileImageUrl\": + {\n \"description\": \"The channels's avatar URL.\",\n \"type\": + \"string\"\n },\n \"displayName\": {\n \"type\": \"string\",\n + \ \"description\": \"The channel's display name.\"\n },\n \"channelUrl\": + {\n \"description\": \"The channel's URL.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"CaptionListResponse\": + {\n \"properties\": {\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"Caption\"\n },\n \"description\": \"A list of captions + that match the request criteria.\",\n \"type\": \"array\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n + \ \"default\": \"youtube#captionListResponse\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n }\n },\n + \ \"id\": \"CaptionListResponse\",\n \"type\": \"object\"\n },\n + \ \"LiveStreamListResponse\": {\n \"properties\": {\n \"items\": + {\n \"description\": \"A list of live streams that match the request + criteria.\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n + \ },\n \"type\": \"array\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"default\": \"youtube#liveStreamListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n + \ \"description\": \"Etag of this resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveStreamListResponse\"\n },\n \"ChannelSectionLocalization\": {\n - \ \"description\": \"ChannelSection localization setting\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The localized strings - for channel section's title.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelSectionLocalization\",\n \"type\": \"object\"\n - \ },\n \"Channel\": {\n \"id\": \"Channel\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the channel, such as its title, description, - and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n },\n - \ \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n \"description\": - \"The statistics object encapsulates statistics for the channel.\"\n },\n + \"TokenPagination\"\n },\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"LiveStreamListResponse\",\n \"type\": + \"object\"\n },\n \"ChannelSection\": {\n \"id\": \"ChannelSection\",\n + \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#channelSection\\\".\",\n \"default\": + \"youtube#channelSection\"\n },\n \"targeting\": {\n \"description\": + \"The targeting object contains basic targeting settings about the channel + section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n },\n \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel.\",\n \"type\": \"string\"\n },\n + uniquely identify the channel section.\",\n \"type\": \"string\"\n + \ },\n \"localizations\": {\n \"additionalProperties\": + {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"description\": + \"Localizations for different languages\",\n \"type\": \"object\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object contains details about the channel section content, + such as a list of playlists or channels featured in the section.\",\n \"$ref\": + \"ChannelSectionContentDetails\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the channel section, such + as its type, style and title.\",\n \"$ref\": \"ChannelSectionSnippet\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"Channel\": {\n \"properties\": {\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"brandingSettings\": {\n \"description\": + \"The brandingSettings object encapsulates information about the branding + of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n },\n \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n \"default\": - \"youtube#channel\",\n \"type\": \"string\"\n },\n \"auditDetails\": - {\n \"$ref\": \"ChannelAuditDetails\",\n \"description\": - \"The auditionDetails object encapsulates channel data that is relevant for - YouTube Partners during the audition process.\"\n },\n \"contentOwnerDetails\": + resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#channel\"\n },\n \"snippet\": + {\n \"$ref\": \"ChannelSnippet\",\n \"description\": \"The + snippet object contains basic details about the channel, such as its title, + description, and thumbnail images.\"\n },\n \"auditDetails\": + {\n \"description\": \"The auditionDetails object encapsulates channel + data that is relevant for YouTube Partners during the audition process.\",\n + \ \"$ref\": \"ChannelAuditDetails\"\n },\n \"contentOwnerDetails\": {\n \"$ref\": \"ChannelContentOwnerDetails\",\n \"description\": \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\"\n },\n \"conversionPings\": - {\n \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\",\n \"$ref\": - \"ChannelConversionPings\"\n },\n \"brandingSettings\": {\n - \ \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"description\": \"The status object encapsulates information - about the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n - \ },\n \"topicDetails\": {\n \"$ref\": \"ChannelTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object encapsulates information - about the channel's content.\",\n \"$ref\": \"ChannelContentDetails\"\n - \ },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"description\": \"Localizations for different languages\"\n - \ }\n },\n \"description\": \"A *channel* resource contains - information about a YouTube channel.\",\n \"type\": \"object\"\n },\n - \ \"ThirdPartyLinkSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic information about a third party account link, including its type and - type-specific information.\",\n \"properties\": {\n \"channelToStoreLink\": - {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\"\n },\n \"type\": {\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A link - that is connecting (or about to connect) a channel with a store on a merchandising - platform in order to enable retail commerce capabilities for that channel - on YouTube.\"\n ],\n \"description\": \"Type of the link - named after the entities that are being linked.\"\n }\n },\n \"id\": - \"ThirdPartyLinkSnippet\"\n },\n \"SearchResult\": {\n \"type\": - \"object\",\n \"description\": \"A search result contains information - about a YouTube video, channel, or playlist that matches the search parameters - specified in an API request. While a search result points to a uniquely identifiable - resource, like a video, it does not have its own persistent data.\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"SearchResultSnippet\",\n + for YouTube Partners linked with the channel.\"\n },\n \"localizations\": + {\n \"type\": \"object\",\n \"description\": \"Localizations + for different languages\",\n \"additionalProperties\": {\n \"$ref\": + \"ChannelLocalization\"\n }\n },\n \"topicDetails\": + {\n \"$ref\": \"ChannelTopicDetails\",\n \"description\": + \"The topicDetails object encapsulates information about Freebase topics associated + with the channel.\"\n },\n \"contentDetails\": {\n \"description\": + \"The contentDetails object encapsulates information about the channel's content.\",\n + \ \"$ref\": \"ChannelContentDetails\"\n },\n \"status\": + {\n \"$ref\": \"ChannelStatus\",\n \"description\": \"The + status object encapsulates information about the privacy status of the channel.\"\n + \ },\n \"statistics\": {\n \"description\": \"The statistics + object encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel.\"\n },\n + \ \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n + \ \"description\": \"The conversionPings object encapsulates information + about conversion pings that need to be respected by the channel.\"\n }\n + \ },\n \"description\": \"A *channel* resource contains information + about a YouTube channel.\",\n \"id\": \"Channel\",\n \"type\": \"object\"\n + \ },\n \"LiveChatModeratorListResponse\": {\n \"id\": \"LiveChatModeratorListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveChatModeratorListResponse\",\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"LiveChatModerator\"\n },\n \"description\": \"A list of + moderators that match the request criteria.\",\n \"type\": \"array\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"LiveChatGiftMembershipReceivedDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"gifterChannelId\": + {\n \"description\": \"The ID of the user that made the membership + gifting purchase. This matches the `snippet.authorChannelId` of the associated + membership gifting message.\",\n \"type\": \"string\"\n },\n + \ \"associatedMembershipGiftingMessageId\": {\n \"description\": + \"The ID of the membership gifting message that is related to this gift membership. + This ID will always refer to a message whose type is 'membershipGiftingEvent'.\",\n + \ \"type\": \"string\"\n },\n \"memberLevelName\": {\n + \ \"type\": \"string\",\n \"description\": \"The name of + the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` + of the associated membership gifting message. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\"\n }\n },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n + \ },\n \"Member\": {\n \"type\": \"object\",\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#member\"\n + \ },\n \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n \ \"description\": \"The snippet object contains basic details about - a search result, such as its title or description. For example, if the search - result is a video, then the title will be the video's title and the description - will be the video's description.\"\n },\n \"id\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The id object contains information - that can be used to uniquely identify the resource that matches the search - request.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"default\": \"youtube#searchResult\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"SearchResult\"\n - \ },\n \"ChannelAuditDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"communityGuidelinesGoodStanding\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether or not the channel respects the community - guidelines.\"\n },\n \"contentIdClaimsGoodStanding\": {\n \"description\": - \"Whether or not the channel has any unresolved claims.\",\n \"type\": - \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": {\n \"description\": - \"Whether or not the channel has any copyright strikes.\",\n \"type\": - \"boolean\"\n }\n },\n \"description\": \"The auditDetails - object encapsulates channel data that is relevant for YouTube Partners during - the audit process.\",\n \"id\": \"ChannelAuditDetails\"\n },\n \"ActivityContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetails\",\n - \ \"description\": \"Details about the content of an activity: the video - that was shared, the channel that was subscribed to, etc.\",\n \"properties\": - {\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"promotedItem\": {\n \"description\": - \"The promotedItem object contains details about a resource which is being - promoted. This property is only present if the snippet.type is promotedItem.\",\n - \ \"$ref\": \"ActivityContentDetailsPromotedItem\"\n },\n \"social\": - {\n \"$ref\": \"ActivityContentDetailsSocial\",\n \"description\": - \"The social object contains details about a social network post. This property - is only present if the snippet.type is social.\"\n },\n \"recommendation\": - {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n \"description\": - \"The recommendation object contains information about a recommended resource. - This property is only present if the snippet.type is recommendation.\"\n },\n - \ \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n },\n \"playlistItem\": {\n \"$ref\": - \"ActivityContentDetailsPlaylistItem\",\n \"description\": \"The - playlistItem object contains information about a new playlist item. This property - is only present if the snippet.type is playlistItem.\"\n },\n \"like\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsLike\"\n - \ },\n \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"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.\"\n },\n \"channelItem\": {\n - \ \"$ref\": \"ActivityContentDetailsChannelItem\",\n \"description\": - \"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.\"\n - \ },\n \"upload\": {\n \"description\": \"The upload - object contains information about the uploaded video. This property is only - present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"subscription\": {\n \"description\": \"The - subscription object contains information about a channel that a user subscribed - to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n }\n }\n - \ },\n \"VideoProcessingDetailsProcessingProgress\": {\n \"description\": - \"Video processing progress and completion time estimate.\",\n \"type\": - \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"properties\": {\n \"partsProcessed\": {\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"partsTotal\": {\n \"description\": \"An estimate of the - total number of parts that need to be processed for the video. The number - may be updated with more precise estimates while YouTube processes the video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"timeLeftMs\": {\n \"format\": \"uint64\",\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveBroadcastStatus\": {\n \"properties\": {\n - \ \"recordingStatus\": {\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The broadcast's recording status.\",\n \"enumDescriptions\": [\n - \ \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ]\n },\n \"liveBroadcastPriority\": {\n \"description\": - \"Priority of the live broadcast event (internal state).\",\n \"enum\": - [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"type\": - \"string\"\n },\n \"lifeCycleStatus\": {\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\"\n },\n \"madeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the broadcast is made for kids or not, - decided by YouTube instead of the creator. This field is read only.\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's privacy status. Note that the - broadcast represents exactly one YouTube video, so the privacy settings are - identical to those supported for videos. In addition, you can set this field - by modifying the broadcast resource or by setting the privacyStatus field - of the corresponding video resource.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"description\": \"Live broadcast state.\",\n \"id\": - \"LiveBroadcastStatus\",\n \"type\": \"object\"\n },\n \"ChannelStatistics\": - {\n \"properties\": {\n \"videoCount\": {\n \"description\": - \"The number of videos uploaded to the channel.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"commentCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of comments for the channel.\",\n \"format\": \"uint64\"\n },\n - \ \"subscriberCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of subscribers that the channel has.\",\n \"type\": - \"string\"\n },\n \"viewCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of times the channel has been viewed.\",\n - \ \"type\": \"string\"\n },\n \"hiddenSubscriberCount\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the number of subscribers is shown for this user.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ChannelStatistics\",\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\"\n },\n \"AbuseType\": {\n \"properties\": {\n \"id\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"AbuseType\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"id\": \"ActivityContentDetailsFavorite\",\n \"description\": - \"Information about a video that was marked as a favorite video.\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"LiveChatModerator\": {\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"default\": \"youtube#liveChatModerator\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the moderator.\",\n \"$ref\": - \"LiveChatModeratorSnippet\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A *liveChatModerator* resource represents a moderator - for a YouTube live chat. A chat moderator has the ability to ban/unban users - from a chat, remove message, etc.\",\n \"id\": \"LiveChatModerator\"\n - \ },\n \"Subscription\": {\n \"type\": \"object\",\n \"description\": - \"A *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the subscription.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\",\n \"$ref\": - \"SubscriptionSnippet\"\n },\n \"contentDetails\": {\n \"$ref\": - \"SubscriptionContentDetails\",\n \"description\": \"The contentDetails - object contains basic statistics about the subscription.\"\n },\n \"kind\": - {\n \"default\": \"youtube#subscription\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"type\": \"string\"\n },\n \"subscriberSnippet\": - {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n \"description\": - \"The subscriberSnippet object contains basic details about the subscriber.\"\n - \ }\n },\n \"id\": \"Subscription\"\n },\n \"LocalizedString\": - {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ },\n \"language\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LocalizedString\"\n - \ },\n \"I18nRegion\": {\n \"type\": \"object\",\n \"id\": - \"I18nRegion\",\n \"description\": \"A *i18nRegion* resource identifies - a region where YouTube is available.\",\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the i18n region.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the i18n region, such as region code and human-readable name.\",\n \"$ref\": - \"I18nRegionSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nRegion\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"TestItemTestItemSnippet\": {\n \"id\": \"TestItemTestItemSnippet\",\n - \ \"properties\": {},\n \"type\": \"object\"\n },\n \"SearchResultSnippet\": + the member.\"\n }\n },\n \"id\": \"Member\",\n \"description\": + \"A *member* resource represents a member for a YouTube channel. A member + provides recurring monetary support to a creator and receives special benefits.\"\n + \ },\n \"ChannelTopicDetails\": {\n \"description\": \"Freebase + topic information related to the channel.\",\n \"properties\": {\n \"topicCategories\": + {\n \"type\": \"array\",\n \"description\": \"A list of + Wikipedia URLs that describe the channel's content.\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"topicIds\": + {\n \"type\": \"array\",\n \"description\": \"A list of + Freebase topic IDs associated with the channel. You can retrieve information + about each topic using the Freebase Topic API.\",\n \"items\": {\n + \ \"type\": \"string\"\n }\n }\n },\n \"id\": + \"ChannelTopicDetails\",\n \"type\": \"object\"\n },\n \"SearchResultSnippet\": {\n \"description\": \"Basic details about a search result, including title, description and thumbnails of the item referenced by the search result.\",\n - \ \"id\": \"SearchResultSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"The title of the channel that published the resource that the search result - identifies.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"A description of the search result.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the search result.\"\n },\n \"channelId\": {\n - \ \"description\": \"The value that YouTube uses to uniquely identify - the channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the search result. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The creation date and time of the resource that the search result identifies.\"\n - \ },\n \"liveBroadcastContent\": {\n \"enumDescriptions\": + \ \"type\": \"object\",\n \"id\": \"SearchResultSnippet\",\n \"properties\": + {\n \"thumbnails\": {\n \"description\": \"A map of thumbnail + images associated with the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"channelId\": {\n \"description\": \"The value + that YouTube uses to uniquely identify the channel that published the resource + that the search result identifies.\",\n \"type\": \"string\"\n },\n + \ \"channelTitle\": {\n \"description\": \"The title of the + channel that published the resource that the search result identifies.\",\n + \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"type\": + \"string\",\n \"description\": \"The creation date and time of the + resource that the search result identifies.\",\n \"format\": \"date-time\"\n + \ },\n \"title\": {\n \"description\": \"The title of + the search result.\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"A description + of the search result.\"\n },\n \"liveBroadcastContent\": {\n + \ \"description\": \"It indicates if the resource (video or channel) + has upcoming/active live broadcast content. Or it's \\\"none\\\" if there + is not any upcoming/active live broadcasts.\",\n \"enumDescriptions\": [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n \"The live broadcast has been completed.\"\n \ ],\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatTextMessageDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"messageText\": {\n \"type\": \"string\",\n - \ \"description\": \"The user's message.\"\n }\n },\n - \ \"id\": \"LiveChatTextMessageDetails\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"secondaryReasons\": - {\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"type\": \"array\",\n \"description\": \"The - secondary reasons associated with this reason, if any are available. (There - might be 0 or more.)\"\n },\n \"label\": {\n \"type\": - \"string\",\n \"description\": \"The localized label belonging to - this abuse report reason.\"\n }\n },\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\"\n },\n \"ChannelConversionPing\": {\n \"id\": - \"ChannelConversionPing\",\n \"description\": \"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.\",\n \"properties\": - {\n \"context\": {\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ],\n \"description\": - \"Defines the context of the ping.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"conversionUrl\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ActivityListResponse\": {\n \"id\": \"ActivityListResponse\",\n - \ \"properties\": {\n \"prevPageToken\": {\n \"type\": + \ \"live\",\n \"completed\"\n ],\n \"type\": + \"string\"\n }\n }\n },\n \"InvideoTiming\": {\n \"properties\": + {\n \"type\": {\n \"enum\": [\n \"offsetFromStart\",\n + \ \"offsetFromEnd\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"Describes a timing type. If the value is offsetFromStart, + then the offsetMs field represents an offset from the start of the video. + If the value is offsetFromEnd, then the offsetMs field represents an offset + from the end of the video.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ]\n },\n \"offsetMs\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"Defines + the time at which the promotion will appear. Depending on the value of type + the value of the offsetMs field will represent a time offset from the start + or from the end of the video, expressed in milliseconds.\"\n },\n \"durationMs\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"Defines the duration in milliseconds for which the promotion should be displayed. + If missing, the client should use the default.\"\n }\n },\n \"description\": + \"Describes a temporal position of a visual widget inside a video.\",\n \"type\": + \"object\",\n \"id\": \"InvideoTiming\"\n },\n \"ActivityContentDetailsSocial\": + {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsSocial\",\n + \ \"properties\": {\n \"type\": {\n \"enum\": [\n \"unspecified\",\n + \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n + \ ],\n \"description\": \"The name of the social network.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": + \"An image of the post's author.\"\n },\n \"referenceUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL of + the social network post.\"\n },\n \"resourceId\": {\n \"description\": + \"The resourceId object encapsulates information that identifies the resource + associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n + \ },\n \"author\": {\n \"type\": \"string\",\n \"description\": + \"The author of the social network post.\"\n }\n },\n \"description\": + \"Details about a social network post.\"\n },\n \"VideoLocalization\": + {\n \"id\": \"VideoLocalization\",\n \"type\": \"object\",\n \"properties\": + {\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"Localized version of the video's title.\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"Localized + version of the video's description.\"\n }\n },\n \"description\": + \"Localized versions of certain video properties (e.g. title).\"\n },\n + \ \"LiveStreamSnippet\": {\n \"id\": \"LiveStreamSnippet\",\n \"properties\": + {\n \"isDefaultStream\": {\n \"type\": \"boolean\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that is transmitting + the stream.\"\n },\n \"description\": {\n \"description\": + \"The stream's description. The value cannot be longer than 10000 characters.\",\n + \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": + \"The stream's title. The value must be between 1 and 128 characters long.\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time that the stream was created.\",\n \"type\": \"string\",\n + \ \"format\": \"date-time\"\n }\n },\n \"type\": + \"object\"\n },\n \"VideoFileDetails\": {\n \"properties\": {\n + \ \"videoStreams\": {\n \"type\": \"array\",\n \"description\": + \"A list of video streams contained in the uploaded video file. Each item + in the list contains detailed metadata about a video stream.\",\n \"items\": + {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n }\n },\n + \ \"bitrateBps\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"The uploaded video file's combined + (video and audio) bitrate in bits per second.\"\n },\n \"creationTime\": + {\n \"description\": \"The date and time when the uploaded video + file was created. The value is specified in ISO 8601 format. Currently, the + following ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive + time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM + \",\n \"type\": \"string\"\n },\n \"container\": {\n + \ \"description\": \"The uploaded video file's container format.\",\n + \ \"type\": \"string\"\n },\n \"fileSize\": {\n \"description\": + \"The uploaded file's size in bytes. This field is present whether a video + file or another type of file was uploaded.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n },\n \"durationMs\": {\n + \ \"type\": \"string\",\n \"description\": \"The length of + the uploaded video in milliseconds.\",\n \"format\": \"uint64\"\n + \ },\n \"fileName\": {\n \"type\": \"string\",\n \"description\": + \"The uploaded file's name. This field is present whether a video file or + another type of file was uploaded.\"\n },\n \"fileType\": {\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"Known + video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an + MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive + file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., + MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n + \ \"description\": \"The uploaded file's type as detected by YouTube's + video processing engine. Currently, YouTube only processes video files, but + this field is present whether a video file or another type of file was uploaded.\",\n + \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n + \ \"archive\",\n \"document\",\n \"project\",\n + \ \"other\"\n ]\n },\n \"audioStreams\": + {\n \"description\": \"A list of audio streams contained in the uploaded + video file. Each item in the list contains detailed metadata about an audio + stream.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"VideoFileDetailsAudioStream\"\n }\n }\n },\n \"id\": + \"VideoFileDetails\",\n \"description\": \"Describes original video file + properties, including technical details about audio and video streams, but + also metadata information like content length, digitization time, or geotagging + information.\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsSubscription\": + {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the resource that the user subscribed to.\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"Information + about a channel that a user subscribed to.\",\n \"id\": \"ActivityContentDetailsSubscription\"\n + \ },\n \"VideoProcessingDetailsProcessingProgress\": {\n \"id\": + \"VideoProcessingDetailsProcessingProgress\",\n \"properties\": {\n \"timeLeftMs\": + {\n \"type\": \"string\",\n \"description\": \"An estimate + of the amount of time, in millseconds, that YouTube needs to finish processing + the video.\",\n \"format\": \"uint64\"\n },\n \"partsTotal\": + {\n \"description\": \"An estimate of the total number of parts that + need to be processed for the video. The number may be updated with more precise + estimates while YouTube processes the video.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n },\n \"partsProcessed\": + {\n \"format\": \"uint64\",\n \"description\": \"The number + of parts of the video that YouTube has already processed. You can estimate + the percentage of the video that YouTube has already processed by calculating: + 100 * parts_processed / parts_total Note that since the estimated number of + parts could increase without a corresponding increase in the number of parts + that have already been processed, it is possible that the calculated progress + could periodically decrease while YouTube processes a video.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Video processing + progress and completion time estimate.\",\n \"type\": \"object\"\n },\n + \ \"ChannelSectionContentDetails\": {\n \"properties\": {\n \"channels\": + {\n \"description\": \"The channel ids for type multiple_channels.\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": + \"array\"\n },\n \"playlists\": {\n \"description\": + \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, + only one playlistId is allowed.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"ChannelSectionContentDetails\",\n + \ \"description\": \"Details about a channelsection, including playlists + and channels.\"\n },\n \"SubscriptionSubscriberSnippet\": {\n \"type\": + \"object\",\n \"properties\": {\n \"thumbnails\": {\n \"description\": + \"Thumbnails for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"title\": {\n \"description\": \"The title of + the subscriber.\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"description\": \"The description of the subscriber.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"description\": + \"The channel ID of the subscriber.\",\n \"type\": \"string\"\n }\n + \ },\n \"description\": \"Basic details about a subscription's subscriber + including title, description, channel ID and thumbnails.\",\n \"id\": + \"SubscriptionSubscriberSnippet\"\n },\n \"ActivityContentDetailsPlaylistItem\": + {\n \"properties\": {\n \"playlistItemId\": {\n \"type\": + \"string\",\n \"description\": \"ID of the item within the playlist.\"\n + \ },\n \"playlistId\": {\n \"type\": \"string\",\n \"description\": + \"The value that YouTube uses to uniquely identify the playlist.\"\n },\n + \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information about the resource that was added + to the playlist.\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"Information about a new playlist item.\",\n \"id\": \"ActivityContentDetailsPlaylistItem\"\n + \ },\n \"LiveChatFanFundingEventDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"amountDisplayString\": {\n \"description\": + \"A rendered string that displays the fund amount and currency to the user.\",\n + \ \"type\": \"string\"\n },\n \"amountMicros\": {\n + \ \"type\": \"string\",\n \"description\": \"The amount of + the fund.\",\n \"format\": \"uint64\"\n },\n \"currency\": + {\n \"type\": \"string\",\n \"description\": \"The currency + in which the fund was made.\"\n },\n \"userComment\": {\n \"description\": + \"The comment added by the user to this fan funding event.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveChatFanFundingEventDetails\"\n + \ },\n \"ChannelSectionTargeting\": {\n \"description\": \"ChannelSection + targeting setting.\",\n \"id\": \"ChannelSectionTargeting\",\n \"type\": + \"object\",\n \"properties\": {\n \"regions\": {\n \"description\": + \"The region the channel section is targeting.\",\n \"items\": {\n + \ \"type\": \"string\"\n },\n \"type\": \"array\"\n + \ },\n \"countries\": {\n \"description\": \"The country + the channel section is targeting.\",\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"languages\": + {\n \"description\": \"The language the channel section is targeting.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n }\n }\n }\n },\n \"I18nLanguage\": + {\n \"id\": \"I18nLanguage\",\n \"description\": \"An *i18nLanguage* + resource identifies a UI language currently supported by YouTube.\",\n \"properties\": + {\n \"id\": {\n \"description\": \"The ID that YouTube uses + to uniquely identify the i18n language.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#i18nLanguage\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the i18n language, such as language code and human-readable name.\",\n + \ \"$ref\": \"I18nLanguageSnippet\"\n }\n },\n \"type\": + \"object\"\n },\n \"VideoCategorySnippet\": {\n \"description\": + \"Basic details about a video category, such as its localized title.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"channelId\": + {\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"type\": + \"string\",\n \"description\": \"The YouTube channel that created + the video category.\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"The video category's title.\"\n + \ },\n \"assignable\": {\n \"type\": \"boolean\"\n }\n + \ },\n \"id\": \"VideoCategorySnippet\"\n },\n \"IngestionInfo\": + {\n \"type\": \"object\",\n \"properties\": {\n \"rtmpsBackupIngestionAddress\": + {\n \"type\": \"string\",\n \"description\": \"This ingestion + url may be used instead of backupIngestionAddress in order to stream via RTMPS. + Not applicable to non-RTMP streams.\"\n },\n \"rtmpsIngestionAddress\": + {\n \"type\": \"string\",\n \"description\": \"This ingestion + url may be used instead of ingestionAddress in order to stream via RTMPS. + Not applicable to non-RTMP streams.\"\n },\n \"ingestionAddress\": + {\n \"description\": \"The primary ingestion URL that you should + use to stream video to YouTube. You must stream video to this URL. Depending + on which application or tool you use to encode your video stream, you may + need to enter the stream URL and stream name separately or you may need to + concatenate them in the following format: *STREAM_URL/STREAM_NAME* \",\n \"type\": + \"string\"\n },\n \"streamName\": {\n \"description\": + \"The stream name that YouTube assigns to the video stream.\",\n \"type\": + \"string\"\n },\n \"backupIngestionAddress\": {\n \"description\": + \"The backup ingestion URL that you should use to stream video to YouTube. + You have the option of simultaneously streaming the content that you are sending + to the ingestionAddress to this URL.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"IngestionInfo\",\n \"description\": + \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\"\n + \ },\n \"SuperStickerMetadata\": {\n \"id\": \"SuperStickerMetadata\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"stickerId\": + {\n \"description\": \"Unique identifier of the Super Sticker. This + is a shorter form of the alt_text that includes pack name and a recognizable + characteristic of the sticker.\",\n \"type\": \"string\"\n },\n + \ \"altTextLanguage\": {\n \"description\": \"Specifies the + localization language in which the alt text is returned.\",\n \"type\": + \"string\"\n },\n \"altText\": {\n \"description\": + \"Internationalized alt text that describes the sticker image and any animation + associated with it.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"MembershipsLevelSnippet\": {\n \"properties\": {\n \"levelDetails\": + {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details + about the pricing level.\"\n },\n \"creatorChannelId\": {\n + \ \"description\": \"The id of the channel that's offering channel + memberships.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"MembershipsLevelSnippet\"\n },\n \"VideoStatus\": + {\n \"description\": \"Basic details about a video category, such as + its localized title. Next Id: 18\",\n \"properties\": {\n \"license\": + {\n \"type\": \"string\",\n \"description\": \"The video's + license. @mutable youtube.videos.insert youtube.videos.update\",\n \"enum\": + [\n \"youtube\",\n \"creativeCommon\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n + \ },\n \"uploadStatus\": {\n \"enumDescriptions\": [\n + \ \"Video has been uploaded but not processed yet.\",\n \"Video + has been successfully processed.\",\n \"Processing has failed. + See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n + \ \"Video has been deleted.\"\n ],\n \"enum\": + [\n \"uploaded\",\n \"processed\",\n \"failed\",\n + \ \"rejected\",\n \"deleted\"\n ],\n \"description\": + \"The status of the uploaded video.\",\n \"type\": \"string\"\n },\n + \ \"publishAt\": {\n \"description\": \"The date and time when + the video is scheduled to publish. It can be set only if the privacy status + of the video is private..\",\n \"format\": \"date-time\",\n \"type\": + \"string\"\n },\n \"madeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"publicStatsViewable\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This value indicates if the extended video statistics + on the watch page can be viewed by everyone. Note that the view count, likes, + etc will still be visible if this is disabled. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"privacyStatus\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"description\": + \"The video's privacy status.\"\n },\n \"rejectionReason\": + {\n \"enum\": [\n \"copyright\",\n \"inappropriate\",\n + \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n + \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n + \ \"trademark\",\n \"legal\"\n ],\n \"description\": + \"This value explains why YouTube rejected an uploaded video. This property + is only present if the uploadStatus property indicates that the upload was + rejected.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"Copyright infringement.\",\n \"Inappropriate video + content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms + of use violation.\",\n \"Uploader account was suspended.\",\n \"Video + duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader + closed his/her account.\",\n \"Trademark infringement.\",\n \"An + unspecified legal reason.\"\n ]\n },\n \"failureReason\": + {\n \"description\": \"This value explains why a video failed to + upload. This property is only present if the uploadStatus property indicates + that the upload failed.\",\n \"enum\": [\n \"conversion\",\n + \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n + \ \"codec\",\n \"uploadAborted\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"Unable to convert + video content.\",\n \"Invalid file format.\",\n \"Empty + file.\",\n \"File was too small.\",\n \"Unsupported + codec.\",\n \"Upload wasn't finished.\"\n ]\n },\n + \ \"embeddable\": {\n \"description\": \"This value indicates + if the video can be embedded on another website. @mutable youtube.videos.insert + youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n }\n },\n \"id\": \"VideoStatus\",\n + \ \"type\": \"object\"\n },\n \"PlaylistSnippet\": {\n \"id\": + \"PlaylistSnippet\",\n \"description\": \"Basic details about a playlist, + including title, description and thumbnails.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"channelTitle\": {\n \"description\": + \"The channel title of the channel that the video belongs to.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"annotations\": {\n + \ \"required\": [\n \"youtube.playlists.insert\",\n + \ \"youtube.playlists.update\"\n ]\n },\n + \ \"description\": \"The playlist's title.\",\n \"type\": + \"string\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the playlist. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"thumbnailVideoId\": {\n \"description\": + \"Note: if the playlist has a custom thumbnail, this field will not be populated. + The video id selected by the user that will be used as the thumbnail of this + playlist. This field defaults to the first publicly viewable video in the + playlist, if: 1. The user has never selected a video to be the thumbnail of + the playlist. 2. The user selects a video to be the thumbnail, and then removes + that video from the playlist. 3. The user selects a non-owned video to be + the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time that the playlist + was created.\",\n \"type\": \"string\"\n },\n \"localized\": + {\n \"$ref\": \"PlaylistLocalization\",\n \"description\": + \"Localized title and description, read-only.\"\n },\n \"tags\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"Keyword tags associated with the playlist.\",\n + \ \"type\": \"array\"\n },\n \"defaultLanguage\": {\n + \ \"description\": \"The language of the playlist's default title + and description.\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the channel that published the playlist.\",\n \"type\": \"string\"\n + \ },\n \"description\": {\n \"description\": \"The playlist's + description.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"ActivityListResponse\": {\n \"properties\": {\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#activityListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#activityListResponse\\\".\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Activity\"\n }\n },\n \"kind\": - {\n \"default\": \"youtube#activityListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"Activity\"\n },\n + \ \"type\": \"array\"\n },\n \"prevPageToken\": {\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n },\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"id\": \"ActivityListResponse\",\n + \ \"type\": \"object\"\n },\n \"ActivityContentDetailsLike\": {\n + \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsLike\",\n + \ \"description\": \"Information about a resource that received a positive + (like) rating.\",\n \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the rated resource.\",\n + \ \"$ref\": \"ResourceId\"\n }\n }\n },\n \"SuperChatEventListResponse\": + {\n \"properties\": {\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"SuperChatEvent\"\n },\n \"description\": \"A list of Super + Chat purchases that match the request criteria.\",\n \"type\": \"array\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"PlaylistItemListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#playlistItemListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": + page in the result set.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n + \ \"default\": \"youtube#superChatEventListResponse\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"SuperChatEventListResponse\",\n \"type\": + \"object\"\n },\n \"LiveChatModerator\": {\n \"properties\": {\n + \ \"id\": {\n \"description\": \"The ID that YouTube assigns + to uniquely identify the moderator.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveChatModerator\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the moderator.\",\n \"$ref\": + \"LiveChatModeratorSnippet\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LiveChatModerator\",\n \"description\": \"A *liveChatModerator* + resource represents a moderator for a YouTube live chat. A chat moderator + has the ability to ban/unban users from a chat, remove message, etc.\"\n },\n + \ \"ThumbnailDetails\": {\n \"properties\": {\n \"medium\": + {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The medium + quality image for this resource.\"\n },\n \"standard\": {\n + \ \"$ref\": \"Thumbnail\",\n \"description\": \"The standard + quality image for this resource.\"\n },\n \"high\": {\n \"$ref\": + \"Thumbnail\",\n \"description\": \"The high quality image for this + resource.\"\n },\n \"default\": {\n \"description\": + \"The default image for this resource.\",\n \"$ref\": \"Thumbnail\"\n + \ },\n \"maxres\": {\n \"description\": \"The maximum + resolution quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n + \ }\n },\n \"description\": \"Internal representation of thumbnails + for a YouTube resource.\",\n \"id\": \"ThumbnailDetails\",\n \"type\": + \"object\"\n },\n \"ChannelBrandingSettings\": {\n \"description\": + \"Branding properties of a YouTube channel.\",\n \"type\": \"object\",\n + \ \"id\": \"ChannelBrandingSettings\",\n \"properties\": {\n \"hints\": + {\n \"description\": \"Additional experimental branding properties.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"PropertyValue\"\n }\n },\n \"channel\": {\n \"description\": + \"Branding properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n + \ },\n \"watch\": {\n \"description\": \"Branding properties + for the watch page.\",\n \"$ref\": \"WatchSettings\"\n },\n + \ \"image\": {\n \"description\": \"Branding properties for + branding images.\",\n \"$ref\": \"ImageSettings\"\n }\n }\n + \ },\n \"ChannelListResponse\": {\n \"id\": \"ChannelListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n + \ \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#channelListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#channelListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"prevPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"Channel\"\n },\n \"type\": \"array\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ }\n }\n },\n \"Comment\": {\n \"properties\": {\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the comment.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#comment\\\".\",\n \"default\": + \"youtube#comment\"\n },\n \"snippet\": {\n \"$ref\": + \"CommentSnippet\",\n \"description\": \"The snippet object contains + basic details about the comment.\"\n }\n },\n \"id\": \"Comment\",\n + \ \"description\": \"A *comment* represents a single YouTube comment.\",\n + \ \"type\": \"object\"\n },\n \"ChannelBannerResource\": {\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\"\n },\n \"url\": + {\n \"description\": \"The URL of this banner image.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#channelBannerResource\\\".\",\n \"default\": + \"youtube#channelBannerResource\"\n }\n },\n \"type\": \"object\",\n + \ \"description\": \"A channel banner returned as the response to a channel_banner.insert + call.\",\n \"id\": \"ChannelBannerResource\"\n },\n \"Cuepoint\": + {\n \"properties\": {\n \"walltimeMs\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + wall clock time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms + and walltime_ms may be set at a time.\"\n },\n \"id\": {\n \"description\": + \"The identifier for cuepoint resource.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"type\": \"string\"\n },\n + \ \"insertionOffsetTimeMs\": {\n \"type\": \"string\",\n \"format\": + \"int64\",\n \"description\": \"The time when the cuepoint should + be inserted by offset to the broadcast actual start time.\"\n },\n + \ \"cueType\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ]\n + \ },\n \"durationSecs\": {\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"description\": \"The duration + of this cuepoint.\"\n }\n },\n \"description\": \"Note that + there may be a 5-second end-point resolution issue. For instance, if a cuepoint + comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, + depending. This is an artifact of HLS.\",\n \"id\": \"Cuepoint\",\n \"type\": + \"object\"\n },\n \"PlaylistContentDetails\": {\n \"id\": \"PlaylistContentDetails\",\n + \ \"properties\": {\n \"itemCount\": {\n \"description\": + \"The number of videos in the playlist.\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"LiveChatMessageDeletedDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveChatMessageDeletedDetails\",\n \"properties\": {\n + \ \"deletedMessageId\": {\n \"type\": \"string\"\n }\n + \ }\n },\n \"VideoSuggestionsTagSuggestion\": {\n \"id\": \"VideoSuggestionsTagSuggestion\",\n + \ \"description\": \"A single tag suggestion with it's relevance information.\",\n + \ \"properties\": {\n \"tag\": {\n \"type\": \"string\",\n + \ \"description\": \"The keyword tag suggested for the video.\"\n + \ },\n \"categoryRestricts\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"A set of video categories + for which the tag is relevant. You can use this information to display appropriate + tag suggestions based on the video category that the video uploader associates + with the video. By default, tag suggestions are relevant for all categories + if there are no restricts defined for the keyword.\",\n \"type\": + \"array\"\n }\n },\n \"type\": \"object\"\n },\n \"Subscription\": + {\n \"properties\": {\n \"subscriberSnippet\": {\n \"description\": + \"The subscriberSnippet object contains basic details about the subscriber.\",\n + \ \"$ref\": \"SubscriptionSubscriberSnippet\"\n },\n \"contentDetails\": + {\n \"$ref\": \"SubscriptionContentDetails\",\n \"description\": + \"The contentDetails object contains basic statistics about the subscription.\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the subscription.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#subscription\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#subscription\\\".\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": + \"SubscriptionSnippet\",\n \"description\": \"The snippet object + contains basic details about the subscription, including its title and the + channel that the user subscribed to.\"\n }\n },\n \"description\": + \"A *subscription* resource contains information about a YouTube user subscription. + A subscription notifies a user when new videos are added to a channel or when + another user takes one of several actions on YouTube, such as uploading a + video, rating a video, or commenting on a video.\",\n \"id\": \"Subscription\",\n + \ \"type\": \"object\"\n },\n \"VideoRating\": {\n \"properties\": + {\n \"rating\": {\n \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"description\": \"Rating + of a video.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ]\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Basic details about + rating of a video.\",\n \"type\": \"object\",\n \"id\": \"VideoRating\"\n + \ },\n \"ChannelLocalization\": {\n \"description\": \"Channel localization + setting\",\n \"properties\": {\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The localized strings for channel's + description.\"\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The localized strings for channel's title.\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelLocalization\"\n + \ },\n \"VideoCategory\": {\n \"description\": \"A *videoCategory* + resource identifies a category that has been or could be associated with uploaded + videos.\",\n \"id\": \"VideoCategory\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the video category, including its title.\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#videoCategory\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#videoCategory\\\".\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the video category.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n }\n },\n \"ChannelConversionPings\": {\n + \ \"properties\": {\n \"pings\": {\n \"items\": {\n \"$ref\": + \"ChannelConversionPing\"\n },\n \"description\": \"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.\",\n \"type\": \"array\"\n }\n },\n \"id\": + \"ChannelConversionPings\",\n \"type\": \"object\",\n \"description\": + \"The conversionPings object encapsulates information about conversion pings + that need to be respected by the channel.\"\n },\n \"LiveBroadcastListResponse\": + {\n \"type\": \"object\",\n \"id\": \"LiveBroadcastListResponse\",\n + \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveBroadcastListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the previous page in the result set.\",\n \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of playlist items that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n - \ }\n },\n \"nextPageToken\": {\n \"type\": + \"A list of broadcasts that match the request criteria.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n + \ }\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n }\n }\n + \ },\n \"MembershipsDurationAtLevel\": {\n \"id\": \"MembershipsDurationAtLevel\",\n + \ \"properties\": {\n \"memberSince\": {\n \"description\": + \"The date and time when the user became a continuous member for the given + level.\",\n \"type\": \"string\"\n },\n \"memberTotalDurationMonths\": + {\n \"description\": \"The cumulative time the user has been a member + for the given level in complete months (the time is rounded down to the nearest + integer).\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n + \ },\n \"level\": {\n \"description\": \"Pricing level + ID.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\"\n },\n \"VideoProjectDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoProjectDetails\",\n \"properties\": {},\n \"description\": + \"DEPRECATED. b/157517979: This part was never populated after it was added. + However, it sees non-zero traffic because there is generated client code in + the wild that refers to it [1]. We keep this field and do NOT remove it because + otherwise V3 would return an error when this part gets requested [2]. [1] + https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n + \ },\n \"VideoListResponse\": {\n \"properties\": {\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\"\n \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": - \"PlaylistItemListResponse\"\n },\n \"ChannelSnippet\": {\n \"id\": - \"ChannelSnippet\",\n \"type\": \"object\",\n \"description\": \"Basic - details about a channel, including title, description and thumbnails.\",\n - \ \"properties\": {\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the channel's default - title and description.\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"thumbnails\": {\n \"description\": \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"customUrl\": - {\n \"type\": \"string\",\n \"description\": \"The custom - url of the channel.\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the channel - was created.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the channel.\"\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The channel's title.\"\n }\n }\n },\n \"VideoRecordingDetails\": - {\n \"properties\": {\n \"locationDescription\": {\n \"description\": - \"The text description of the location where the video was recorded.\",\n - \ \"type\": \"string\"\n },\n \"recordingDate\": {\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the video was recorded.\",\n \"format\": \"date-time\"\n - \ },\n \"location\": {\n \"description\": \"The geolocation - information associated with the video.\",\n \"$ref\": \"GeoPoint\"\n - \ }\n },\n \"description\": \"Recording information associated - with the video.\",\n \"type\": \"object\",\n \"id\": \"VideoRecordingDetails\"\n - \ },\n \"LiveChatMessageAuthorDetails\": {\n \"id\": \"LiveChatMessageAuthorDetails\",\n - \ \"properties\": {\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - display name.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube channel ID.\"\n },\n - \ \"isChatModerator\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is a moderator of the live chat.\"\n },\n \"isChatSponsor\": - {\n \"description\": \"Whether the author is a sponsor of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n },\n \"isChatOwner\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author is the owner of the live chat.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"PlaylistContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"itemCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n },\n \"id\": - \"PlaylistContentDetails\"\n },\n \"Video\": {\n \"description\": - \"A *video* resource represents a YouTube video.\",\n \"id\": \"Video\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#video\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"VideoContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\"\n },\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the video.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n }\n },\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"suggestions\": - {\n \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoSuggestions\"\n },\n \"player\": - {\n \"description\": \"The player object contains information that - you would use to play the video in an embedded player.\",\n \"$ref\": - \"VideoPlayer\"\n },\n \"status\": {\n \"$ref\": \"VideoStatus\",\n - \ \"description\": \"The status object contains information about - the video's uploading, processing, and privacy statuses.\"\n },\n \"projectDetails\": - {\n \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + \ \"items\": {\n \"items\": {\n \"$ref\": \"Video\"\n + \ },\n \"type\": \"array\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#videoListResponse\"\n },\n + \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoListResponse\"\n + \ },\n \"AccessPolicy\": {\n \"properties\": {\n \"exception\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"A list of region codes that identify countries + where the default policy do not apply.\",\n \"type\": \"array\"\n + \ },\n \"allowed\": {\n \"type\": \"boolean\",\n \"description\": + \"The value of allowed indicates whether the access to the policy is allowed + or denied by default.\"\n }\n },\n \"description\": \"Rights + management policy for YouTube resources.\",\n \"type\": \"object\",\n + \ \"id\": \"AccessPolicy\"\n },\n \"Video\": {\n \"description\": + \"A *video* resource represents a YouTube video.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"localizations\": {\n \"additionalProperties\": + {\n \"$ref\": \"VideoLocalization\"\n },\n \"type\": + \"object\",\n \"description\": \"The localizations object contains + localized versions of the basic details about the video, such as its title + and description.\"\n },\n \"ageGating\": {\n \"description\": + \"Age restriction details related to a video. This data can only be retrieved + by the video owner.\",\n \"$ref\": \"VideoAgeGating\"\n },\n + \ \"fileDetails\": {\n \"description\": \"The fileDetails object + encapsulates information about the video file that was uploaded to YouTube, + including the file's resolution, duration, audio and video codecs, stream + bitrates, and more. This data can only be retrieved by the video owner.\",\n + \ \"$ref\": \"VideoFileDetails\"\n },\n \"topicDetails\": + {\n \"description\": \"The topicDetails object encapsulates information + about Freebase topics associated with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n + \ },\n \"liveStreamingDetails\": {\n \"$ref\": \"VideoLiveStreamingDetails\",\n + \ \"description\": \"The liveStreamingDetails object contains metadata + about a live video broadcast. The object will only be present in a video resource + if the video is an upcoming, live, or completed live broadcast.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"status\": {\n \"description\": + \"The status object contains information about the video's uploading, processing, + and privacy statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n + \ \"projectDetails\": {\n \"description\": \"The projectDetails + object contains information about the project specific video metadata. b/157517979: + This part was never populated after it was added. However, it sees non-zero + traffic because there is generated client code in the wild that refers to + it [1]. We keep this field and do NOT remove it because otherwise V3 would + return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"processingDetails\": - {\n \"description\": \"The processingDetails object encapsulates - information about YouTube's progress in processing the uploaded video file. - The properties in the object identify the current processing status and an - estimate of the time remaining until YouTube finishes processing the video. - This part also indicates whether different types of data or content, such - as file details or thumbnail images, are available for the video. The processingProgress - object is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoProcessingDetails\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the video, such as its title, description, - and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n \"fileDetails\": - {\n \"description\": \"The fileDetails object encapsulates information - about the video file that was uploaded to YouTube, including the file's resolution, - duration, audio and video codecs, stream bitrates, and more. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n - \ },\n \"ageGating\": {\n \"description\": \"Age restriction - details related to a video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoAgeGating\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"description\": \"The localizations - object contains localized versions of the basic details about the video, such - as its title and description.\",\n \"additionalProperties\": {\n - \ \"$ref\": \"VideoLocalization\"\n }\n },\n \"recordingDetails\": - {\n \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\",\n \"$ref\": - \"VideoRecordingDetails\"\n },\n \"statistics\": {\n \"$ref\": - \"VideoStatistics\",\n \"description\": \"The statistics object contains - statistics about the video.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"monetizationDetails\": {\n \"description\": \"The monetizationDetails - object encapsulates information about the monetization status of the video.\",\n - \ \"$ref\": \"VideoMonetizationDetails\"\n }\n },\n \"type\": - \"object\"\n },\n \"I18nLanguage\": {\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the i18n language.\",\n \"type\": \"string\"\n },\n \"snippet\": + \ \"$ref\": \"VideoProjectDetails\"\n },\n \"kind\": + {\n \"default\": \"youtube#video\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.videos.update\"\n + \ ]\n }\n },\n \"statistics\": {\n \"description\": + \"The statistics object contains statistics about the video.\",\n \"$ref\": + \"VideoStatistics\"\n },\n \"processingDetails\": {\n \"$ref\": + \"VideoProcessingDetails\",\n \"description\": \"The processingDetails + object encapsulates information about YouTube's progress in processing the + uploaded video file. The properties in the object identify the current processing + status and an estimate of the time remaining until YouTube finishes processing + the video. This part also indicates whether different types of data or content, + such as file details or thumbnail images, are available for the video. The + processingProgress object is designed to be polled so that the video uploaded + can track the progress that YouTube has made in processing the uploaded video + file. This data can only be retrieved by the video owner.\"\n },\n + \ \"monetizationDetails\": {\n \"$ref\": \"VideoMonetizationDetails\",\n + \ \"description\": \"The monetizationDetails object encapsulates information + about the monetization status of the video.\"\n },\n \"snippet\": {\n \"description\": \"The snippet object contains basic details - about the i18n language, such as language code and human-readable name.\",\n - \ \"$ref\": \"I18nLanguageSnippet\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#i18nLanguage\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\"\n - \ }\n },\n \"description\": \"An *i18nLanguage* resource identifies - a UI language currently supported by YouTube.\",\n \"type\": \"object\",\n - \ \"id\": \"I18nLanguage\"\n },\n \"ResourceId\": {\n \"properties\": - {\n \"videoId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a video. - This property is only present if the resourceId.kind value is youtube#video.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a channel. This property - is only present if the resourceId.kind value is youtube#channel.\"\n },\n - \ \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\"\n },\n \"kind\": {\n \"description\": - \"The type of the API resource.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"A resource id is a generic reference that - points to another YouTube resource.\",\n \"id\": \"ResourceId\",\n \"type\": - \"object\"\n },\n \"MembershipsLevel\": {\n \"description\": \"A - *membershipsLevel* resource represents an offer made by YouTube creators for - their fans. Users can become members of the channel by joining one of the - available levels. They will provide recurring monetary support and receives - special benefits.\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the memberships level.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevel\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"MembershipsLevel\",\n - \ \"type\": \"object\"\n },\n \"CommentThread\": {\n \"description\": - \"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.\",\n \"type\": \"object\",\n \"properties\": - {\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n - \ \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentThread\"\n - \ },\n \"snippet\": {\n \"$ref\": \"CommentThreadSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment thread and also the top level comment.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment thread.\"\n }\n },\n - \ \"id\": \"CommentThread\"\n },\n \"Entity\": {\n \"id\": - \"Entity\",\n \"type\": \"object\",\n \"properties\": {\n \"url\": - {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\"\n },\n \"typeId\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoCategoryListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n + about the video, such as its title, description, and category.\",\n \"$ref\": + \"VideoSnippet\"\n },\n \"contentDetails\": {\n \"$ref\": + \"VideoContentDetails\",\n \"description\": \"The contentDetails + object contains information about the video content, including the length + of the video and its aspect ratio.\"\n },\n \"player\": {\n + \ \"description\": \"The player object contains information that you + would use to play the video in an embedded player.\",\n \"$ref\": + \"VideoPlayer\"\n },\n \"suggestions\": {\n \"$ref\": + \"VideoSuggestions\",\n \"description\": \"The suggestions object + encapsulates suggestions that identify opportunities to improve the video + quality or the metadata for the uploaded video. This data can only be retrieved + by the video owner.\"\n },\n \"recordingDetails\": {\n \"description\": + \"The recordingDetails object encapsulates information about the location, + date and address where the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n + \ }\n },\n \"id\": \"Video\"\n },\n \"ChannelConversionPing\": + {\n \"description\": \"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.\",\n \"properties\": {\n \"context\": + {\n \"description\": \"Defines the context of the ping.\",\n \"enum\": + [\n \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"conversionUrl\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"ChannelConversionPing\",\n \"type\": \"object\"\n + \ },\n \"VideoTopicDetails\": {\n \"properties\": {\n \"relevantTopicIds\": + {\n \"description\": \"Similar to topic_id, except that these topics + are merely relevant to the video. These are topics that may be mentioned in, + or appear in the video. You can retrieve information about each topic using + Freebase Topic API.\",\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"type\": \"array\"\n },\n \"topicIds\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"A list of Freebase topic IDs that are centrally + associated with the video. These are topics that are centrally featured in + the video, and it can be said that the video is mainly about each of these. + You can retrieve information about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase + Topic API.\",\n \"type\": \"array\"\n },\n \"topicCategories\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"A list of Wikipedia + URLs that provide a high-level description of the video's content.\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"Freebase topic + information related to the video.\",\n \"id\": \"VideoTopicDetails\"\n + \ },\n \"LiveChatModeratorSnippet\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveChatModeratorSnippet\",\n \"properties\": {\n \"moderatorDetails\": + {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": + \"Details about the moderator.\"\n },\n \"liveChatId\": {\n + \ \"description\": \"The ID of the live chat this moderator can act + on.\",\n \"type\": \"string\"\n }\n }\n },\n \"LiveChatMessageSnippet\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageSnippet\",\n + \ \"description\": \"Next ID: 33\",\n \"properties\": {\n \"membershipGiftingDetails\": + {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": + \"Details about the Membership Gifting event, this is only set if the type + is 'membershipGiftingEvent'.\"\n },\n \"newSponsorDetails\": + {\n \"description\": \"Details about the New Member Announcement + event, this is only set if the type is 'newSponsorEvent'. Please note that + \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n \"$ref\": + \"LiveChatNewSponsorDetails\"\n },\n \"displayMessage\": {\n + \ \"description\": \"Contains a string that can be displayed to the + user. If this field is not present the message is silent, at the moment only + messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\",\n \"type\": + \"string\"\n },\n \"type\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The type of message, this will always be present, it determines the contents + of the message as well as which fields will be present.\",\n \"enum\": + [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n + \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n + \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n + \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n + \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n + \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n + \ \"superChatEvent\",\n \"superStickerEvent\"\n ]\n + \ },\n \"authorChannelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the user that authored this message, + this field is not always filled. textMessageEvent - the user that wrote the + message fanFundingEvent - the user that funded the broadcast newSponsorEvent + - the user that just became a sponsor memberMilestoneChatEvent - the member + that sent the message membershipGiftingEvent - the user that made the purchase + giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent + - the moderator that took the action messageRetractedEvent - the author that + retracted their message userBannedEvent - the moderator that took the action + superChatEvent - the user that made the purchase superStickerEvent - the user + that made the purchase\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time when the message was orignally published.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"superStickerDetails\": + {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n \"description\": + \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\"\n + \ },\n \"textMessageDetails\": {\n \"description\": + \"Details about the text message, this is only set if the type is 'textMessageEvent'.\",\n + \ \"$ref\": \"LiveChatTextMessageDetails\"\n },\n \"liveChatId\": + {\n \"type\": \"string\"\n },\n \"fanFundingEventDetails\": + {\n \"description\": \"Details about the funding event, this is only + set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n + \ },\n \"hasDisplayContent\": {\n \"description\": \"Whether + the message has display content that should be displayed to users.\",\n \"type\": + \"boolean\"\n },\n \"memberMilestoneChatDetails\": {\n \"description\": + \"Details about the Member Milestone Chat event, this is only set if the type + is 'memberMilestoneChatEvent'.\",\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n + \ },\n \"giftMembershipReceivedDetails\": {\n \"$ref\": + \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": \"Details + about the Gift Membership Received event, this is only set if the type is + 'giftMembershipReceivedEvent'.\"\n },\n \"messageRetractedDetails\": + {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"userBannedDetails\": + {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n + \ \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n + \ },\n \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n + \ \"description\": \"Details about the Super Chat event, this is only + set if the type is 'superChatEvent'.\"\n }\n }\n },\n \"ChannelStatus\": + {\n \"type\": \"object\",\n \"description\": \"JSON template for + the status part of a channel.\",\n \"id\": \"ChannelStatus\",\n \"properties\": + {\n \"isLinked\": {\n \"type\": \"boolean\",\n \"description\": + \"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.\"\n },\n + \ \"madeForKids\": {\n \"type\": \"boolean\"\n },\n + \ \"longUploadsStatus\": {\n \"description\": \"The long uploads + status of this channel. See https://support.google.com/youtube/answer/71673 + for more information.\",\n \"type\": \"string\",\n \"enum\": + [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n + \ \"disallowed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": + \"boolean\"\n },\n \"privacyStatus\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"description\": \"Privacy status of the channel.\",\n \"enum\": + [\n \"public\",\n \"unlisted\",\n \"private\"\n + \ ],\n \"type\": \"string\"\n }\n }\n },\n + \ \"VideoCategoryListResponse\": {\n \"properties\": {\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n \ \"default\": \"youtube#videoCategoryListResponse\"\n },\n \ \"eventId\": {\n \"description\": \"Serialized EventId of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": + \ },\n \"pageInfo\": {\n \"description\": \"General + pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": {\n \"description\": \"A list of video categories that can be associated with YouTube videos. In this map, the video category ID is the map key, and - its value is the corresponding videoCategory resource.\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n },\n \"type\": - \"array\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"id\": \"VideoCategoryListResponse\"\n },\n \"LiveChatSuperStickerDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatSuperStickerDetails\",\n - \ \"properties\": {\n \"amountMicros\": {\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made.\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n },\n \"tier\": {\n - \ \"description\": \"The tier in which the amount belongs. Lower amounts - belong to lower tiers. The lowest tier is 1.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"VideoProjectDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoProjectDetails\",\n \"description\": \"DEPRECATED. - b/157517979: This part was never populated after it was added. However, it - sees non-zero traffic because there is generated client code in the wild that - refers to it [1]. We keep this field and do NOT remove it because otherwise - V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"properties\": {}\n },\n \"SubscriptionSubscriberSnippet\": {\n - \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the subscriber.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel ID of the subscriber.\"\n },\n \"title\": {\n - \ \"description\": \"The title of the subscriber.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"Thumbnails for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a subscription's subscriber including title, description, channel - ID and thumbnails.\",\n \"id\": \"SubscriptionSubscriberSnippet\"\n },\n - \ \"RelatedEntity\": {\n \"properties\": {\n \"entity\": {\n - \ \"$ref\": \"Entity\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"RelatedEntity\"\n },\n \"SuperChatEventSnippet\": {\n - \ \"id\": \"SuperChatEventSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"channelId\": {\n \"description\": \"Channel id where - the event occurred.\",\n \"type\": \"string\"\n },\n \"createdAt\": - {\n \"description\": \"The date and time when the event occurred.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"messageType\": {\n \"format\": \"uint32\",\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\",\n \"type\": \"integer\"\n },\n - \ \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\"\n },\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"description\": \"The purchase amount, in micros of - the purchase currency. e.g., 1 is represented as 1000000.\",\n \"type\": - \"string\"\n },\n \"isSuperStickerEvent\": {\n \"type\": - \"boolean\",\n \"description\": \"True if this event is a Super Sticker - event.\"\n },\n \"displayString\": {\n \"description\": - \"A rendered string that displays the purchase amount and currency (e.g., - \\\"$1.00\\\"). The string is rendered for the given language.\",\n \"type\": - \"string\"\n },\n \"commentText\": {\n \"description\": - \"The text contents of the comment left by the user.\",\n \"type\": - \"string\"\n },\n \"supporterDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - supporter.\"\n }\n }\n },\n \"Caption\": {\n \"description\": - \"A *caption* resource represents a YouTube caption track. A caption track - is associated with exactly one YouTube video.\",\n \"id\": \"Caption\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the caption track.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n }\n },\n \"kind\": {\n \"default\": - \"youtube#caption\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"CaptionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the caption.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"PlaylistStatus\": {\n \"id\": \"PlaylistStatus\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The playlist's privacy status.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"PlaylistPlayer\": - {\n \"properties\": {\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"PlaylistPlayer\",\n - \ \"type\": \"object\"\n },\n \"ChannelToStoreLinkDetails\": {\n - \ \"type\": \"object\",\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"properties\": {\n \"storeUrl\": - {\n \"type\": \"string\",\n \"description\": \"Landing page - of the store.\"\n },\n \"storeName\": {\n \"type\": - \"string\",\n \"description\": \"Name of the store.\"\n },\n - \ \"merchantId\": {\n \"description\": \"Google Merchant Center - id of the store.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n }\n }\n },\n \"PlaylistItemSnippet\": {\n \"id\": - \"PlaylistItemSnippet\",\n \"description\": \"Basic details about a playlist, - including title, description and thumbnails. Basic details of a YouTube Playlist - item provided by the author. Next ID: 15\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"videoOwnerChannelTitle\": {\n \"description\": - \"Channel title for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"playlistId\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the playlist item. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The item's description.\"\n },\n \"title\": {\n \"description\": - \"The item's title.\",\n \"type\": \"string\"\n },\n \"position\": - {\n \"type\": \"integer\",\n \"description\": \"The order - in which the item appears in the playlist. The value uses a zero-based index, - so the first item has a position of 0, the second item has a position of 1, - and so forth.\",\n \"format\": \"uint32\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the item was added to the playlist.\",\n \"type\": - \"string\"\n },\n \"videoOwnerChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel id for the channel this - video belongs to.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the user that added the item to the playlist.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the playlist - item belongs to.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The id object contains information that can be - used to uniquely identify the resource that is included in the playlist as - the playlist item.\",\n \"$ref\": \"ResourceId\"\n }\n }\n - \ },\n \"ActivityContentDetailsPromotedItem\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsPromotedItem\",\n \"description\": - \"Details about a resource which is being promoted.\",\n \"properties\": - {\n \"customCtaButtonText\": {\n \"type\": \"string\",\n \"description\": - \"The custom call-to-action button text. If specified, it will override the - default button text for the cta_type.\"\n },\n \"clickTrackingUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user clicked through on this promoted item.\",\n \"type\": - \"string\"\n },\n \"destinationUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should direct - the user to, if the user chooses to visit the advertiser's website.\"\n },\n - \ \"forecastingUrl\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"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.\",\n \"type\": - \"array\"\n },\n \"impressionUrl\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\"\n },\n \"creativeViewUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user was shown this promoted item.\",\n \"type\": \"string\"\n - \ },\n \"ctaType\": {\n \"description\": \"The type - of call-to-action, a message to the user indicating action that can be taken.\",\n - \ \"enum\": [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\",\n \"type\": \"string\"\n },\n \"adTag\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should fetch to request a promoted item.\"\n },\n \"descriptionText\": - {\n \"description\": \"The text description to accompany the promoted - item.\",\n \"type\": \"string\"\n }\n }\n },\n \"CaptionSnippet\": - {\n \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video associated with the caption track. @mutable youtube.captions.insert\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"trackKind\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The caption track's - type.\",\n \"enum\": [\n \"standard\",\n \"ASR\",\n - \ \"forced\"\n ]\n },\n \"isEasyReader\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"audioTrackType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of audio track associated - with the caption track.\",\n \"type\": \"string\",\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ]\n },\n \"isLarge\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the caption track uses large text for the vision-impaired. The default - value is false.\"\n },\n \"failureReason\": {\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\",\n \"enum\": - [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"lastUpdated\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the caption - track was last updated.\"\n },\n \"language\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The language of - the caption track. The property value is a BCP-47 language tag.\",\n \"type\": - \"string\"\n },\n \"status\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The caption track's status.\",\n \"type\": - \"string\",\n \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ]\n },\n \"isDraft\": {\n - \ \"type\": \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n },\n \"isAutoSynced\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n - \ \"isCC\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\"\n },\n \"name\": {\n - \ \"description\": \"The name of the caption track. The name is intended - to be visible to the user as an option during playback.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a caption track, such as its language and name.\",\n \"id\": \"CaptionSnippet\"\n - \ },\n \"LiveBroadcastContentDetails\": {\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"Detailed settings of a broadcast.\",\n \"type\": - \"object\",\n \"properties\": {\n \"enableContentEncryption\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether YouTube should enable content encryption for the broadcast.\"\n - \ },\n \"boundStreamId\": {\n \"description\": \"This - value uniquely identifies the live stream bound to the broadcast.\",\n \"type\": - \"string\"\n },\n \"enableLowLatency\": {\n \"description\": - \"Indicates whether this broadcast has low latency enabled.\",\n \"type\": - \"boolean\"\n },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"enableEmbed\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast video can be played in an embedded player. - If you choose to archive the video (using the enableArchive property), this - setting will also apply to the archived video.\"\n },\n \"closedCaptionsType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ]\n },\n \"monitorStream\": {\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\",\n \"$ref\": \"MonitorStreamInfo\"\n - \ },\n \"recordFromStart\": {\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\",\n \"type\": \"boolean\"\n - \ },\n \"startWithSlate\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\"\n },\n \"projection\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ]\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"latencyPreference\": - {\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"type\": \"string\",\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\"\n },\n - \ \"enableDvr\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\"\n },\n \"enableAutoStart\": - {\n \"description\": \"This setting indicates whether auto start - is enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\",\n \"type\": \"boolean\"\n - \ },\n \"stereoLayout\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\",\n \"enum\": - [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ]\n },\n \"mesh\": {\n - \ \"format\": \"byte\",\n \"description\": \"The mesh for - projecting the video if projection is mesh. The mesh value must be a UTF-8 - string containing the base-64 encoding of 3D mesh data that follows the Spherical - Video V2 RFC specification for an mshp box, excluding the box size and type - but including the following four reserved zero bytes for the version and flags.\",\n - \ \"type\": \"string\"\n },\n \"enableAutoStop\": {\n - \ \"description\": \"This setting indicates whether auto stop is enabled - for this broadcast. The default value for this property is false. This setting - can only be used by Events.\",\n \"type\": \"boolean\"\n }\n - \ }\n },\n \"CommentSnippet\": {\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a comment, such as its author - and text.\",\n \"properties\": {\n \"authorChannelUrl\": {\n \"description\": - \"Link to the author's YouTube channel, if any.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the comment was originally published.\"\n },\n \"updatedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the comment was last updated.\"\n - \ },\n \"textDisplay\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"authorChannelId\": {\n \"$ref\": - \"CommentSnippetAuthorChannelId\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"viewerRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ]\n },\n \"parentId\": {\n \"type\": \"string\",\n - \ \"description\": \"The unique id of the parent comment, only set - for replies.\"\n },\n \"moderationStatus\": {\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment is - awaiting review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ]\n },\n \"textOriginal\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"authorDisplayName\": - {\n \"description\": \"The name of the user who posted the comment.\",\n - \ \"type\": \"string\"\n },\n \"canRate\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the current viewer can - rate this comment.\"\n },\n \"likeCount\": {\n \"description\": - \"The total number of likes this comment has received.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comment refers to, if any.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"CommentSnippet\"\n },\n - \ \"AbuseReport\": {\n \"type\": \"object\",\n \"properties\": - {\n \"relatedEntities\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"RelatedEntity\"\n }\n },\n \"subject\": - {\n \"$ref\": \"Entity\"\n },\n \"abuseTypes\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"AbuseType\"\n }\n },\n \"description\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"AbuseReport\"\n },\n \"LiveStreamHealthStatus\": - {\n \"properties\": {\n \"lastUpdateTimeSeconds\": {\n \"format\": - \"uint64\",\n \"description\": \"The last time this status was updated - (in seconds)\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ],\n \"description\": \"The status - code of this stream\",\n \"type\": \"string\"\n },\n \"configurationIssues\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n },\n \"description\": - \"The configurations issues on this stream\"\n }\n },\n \"id\": - \"LiveStreamHealthStatus\",\n \"type\": \"object\"\n },\n \"VideoPlayer\": - {\n \"description\": \"Player to be used for a video playback.\",\n \"type\": - \"object\",\n \"properties\": {\n \"embedWidth\": {\n \"description\": - \"The embed width\",\n \"format\": \"int64\",\n \"type\": - \"string\"\n },\n \"embedHeight\": {\n \"format\": - \"int64\",\n \"type\": \"string\"\n },\n \"embedHtml\": - {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a - player that will play the video.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoPlayer\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"type\": \"object\",\n \"description\": \"Details about a resource - which was added to a channel.\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource that was added to - the channel.\"\n }\n },\n \"id\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"PlaylistItemContentDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"note\": {\n \"type\": \"string\",\n - \ \"description\": \"A user-generated note for this item.\"\n },\n - \ \"endAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify a video. To retrieve the video resource, - set the id query parameter to this value in your API request.\",\n \"type\": - \"string\"\n },\n \"videoPublishedAt\": {\n \"description\": - \"The date and time that the video was published to YouTube.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"startAt\": - {\n \"description\": \"The time, measured in seconds from the start - of the video, when the video should start playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) The default value is 0.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"PlaylistItemContentDetails\"\n - \ },\n \"MembershipsLevelListResponse\": {\n \"properties\": {\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of pricing levels offered by a creator to the fans.\",\n \"items\": - {\n \"$ref\": \"MembershipsLevel\"\n },\n \"type\": - \"array\"\n },\n \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\",\n - \ \"type\": \"object\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"properties\": {\n \"userComment\": {\n \"type\": - \"string\",\n \"description\": \"The comment added by the user to - this fan funding event.\"\n },\n \"amountMicros\": {\n \"description\": - \"The amount of the fund.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatFanFundingEventDetails\"\n },\n \"ImageSettings\": - {\n \"description\": \"Branding properties for images associated with - the channel.\",\n \"type\": \"object\",\n \"id\": \"ImageSettings\",\n - \ \"properties\": {\n \"bannerTabletExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size extra - high resolution (2560x424).\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"trackingImageUrl\": - {\n \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerTvImageUrl\": - {\n \"description\": \"Banner image. TV size extra high resolution - (2120x1192).\",\n \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": - {\n \"description\": \"Banner image. Mobile size (640x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"largeBrandedBannerImageImapScript\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The image map script - for the large banner image.\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\"\n },\n \"backgroundImageUrl\": - {\n \"description\": \"The URL for the background image shown on - the video watch page. The image should be 1200px by 615px, with a maximum - file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerImageUrl\": {\n \"description\": \"Banner image. - Desktop size (1060x175).\",\n \"type\": \"string\"\n },\n - \ \"bannerMobileMediumHdImageUrl\": {\n \"description\": \"Banner - image. Mobile size medium/high resolution (960x263).\",\n \"type\": - \"string\"\n },\n \"bannerMobileHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\"\n },\n \"smallBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 640px - by 70px banner image that appears below the video player in the default view - of the video watch page. The URL for the image that appears above the top-left - corner of the video player. This is a 25-pixel-high image with a flexible - width that cannot exceed 170 pixels.\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"bannerTvLowImageUrl\": - {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size high resolution (2276x377).\"\n },\n \"bannerTabletImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"SuperChatEventListResponse\": - {\n \"type\": \"object\",\n \"id\": \"SuperChatEventListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#superChatEventListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"SuperChatEvent\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of Super Chat purchases that match the request criteria.\"\n }\n - \ }\n },\n \"Member\": {\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the member.\",\n \"$ref\": \"MemberSnippet\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#member\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - *member* resource represents a member for a YouTube channel. A member provides - recurring monetary support to a creator and receives special benefits.\",\n - \ \"id\": \"Member\"\n },\n \"VideoMonetizationDetails\": {\n \"description\": - \"Details about monetization of a YouTube Video.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The value of access indicates whether the video - can be monetized or not.\"\n }\n },\n \"id\": \"VideoMonetizationDetails\"\n - \ },\n \"LevelDetails\": {\n \"properties\": {\n \"displayName\": - {\n \"description\": \"The name that should be used when referring - to this level.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LevelDetails\",\n \"type\": \"object\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"properties\": {\n \"giftMembershipsCount\": {\n \"description\": - \"The number of gift memberships purchased by the user.\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n },\n \"giftMembershipsLevelName\": - {\n \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n \"VideoFileDetailsAudioStream\": - {\n \"description\": \"Information about an audio stream.\",\n \"id\": - \"VideoFileDetailsAudioStream\",\n \"type\": \"object\",\n \"properties\": - {\n \"vendor\": {\n \"description\": \"A value that uniquely - identifies a video vendor. Typically, the value is a four-letter vendor code.\",\n - \ \"type\": \"string\"\n },\n \"codec\": {\n \"description\": - \"The audio codec that the stream uses.\",\n \"type\": \"string\"\n - \ },\n \"bitrateBps\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The audio stream's bitrate, in bits per second.\",\n - \ \"type\": \"string\"\n },\n \"channelCount\": {\n - \ \"type\": \"integer\",\n \"description\": \"The number - of audio channels that the stream contains.\",\n \"format\": \"uint32\"\n - \ }\n }\n },\n \"PlaylistLocalization\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistLocalization\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for playlist's title.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's description.\"\n }\n },\n \"description\": - \"Playlist localization setting\"\n },\n \"LiveStream\": {\n \"properties\": - {\n \"status\": {\n \"description\": \"The status object contains - information about live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n - \ \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\",\n - \ \"$ref\": \"LiveStreamSnippet\"\n },\n \"cdn\": {\n - \ \"$ref\": \"CdnSettings\",\n \"description\": \"The cdn - object defines the live stream's content delivery network (CDN) settings. - These settings provide details about the manner in which you stream your content - to YouTube.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveStream\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the stream.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n }\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A live stream describes a live ingestion point.\",\n - \ \"id\": \"LiveStream\"\n },\n \"ChannelConversionPings\": {\n - \ \"properties\": {\n \"pings\": {\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n },\n \"description\": \"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.\",\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"The conversionPings object encapsulates - information about conversion pings that need to be respected by the channel.\",\n - \ \"id\": \"ChannelConversionPings\"\n },\n \"ChannelSettings\": - {\n \"description\": \"Branding properties for the channel view.\",\n - \ \"type\": \"object\",\n \"id\": \"ChannelSettings\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the channel description.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"featuredChannelsTitle\": {\n \"description\": - \"Title for the featured channels tab.\",\n \"type\": \"string\"\n - \ },\n \"unsubscribedTrailer\": {\n \"description\": - \"The trailer of the channel, for users that are not subscribers.\",\n \"type\": - \"string\"\n },\n \"keywords\": {\n \"type\": \"string\",\n - \ \"description\": \"Lists keywords associated with the channel, comma-separated.\"\n - \ },\n \"profileColor\": {\n \"type\": \"string\",\n - \ \"description\": \"A prominent color that can be rendered on this - channel page.\"\n },\n \"title\": {\n \"description\": - \"Specifies the channel title.\",\n \"type\": \"string\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\"\n },\n - \ \"showBrowseView\": {\n \"description\": \"Whether the tab - to browse the videos should be displayed.\",\n \"type\": \"boolean\"\n - \ },\n \"moderateComments\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether user-submitted comments left on the channel - page need to be approved by the channel owner to be publicly visible.\"\n - \ },\n \"defaultTab\": {\n \"description\": \"Which - content tab users should see when viewing the channel.\",\n \"type\": - \"string\"\n },\n \"showRelatedChannels\": {\n \"description\": - \"Whether related channels should be proposed.\",\n \"type\": \"boolean\"\n - \ },\n \"country\": {\n \"description\": \"The country - of the channel.\",\n \"type\": \"string\"\n },\n \"featuredChannelsUrls\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The list of featured - channels.\"\n }\n }\n },\n \"MembershipsLevelSnippet\": - {\n \"id\": \"MembershipsLevelSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"creatorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the channel that's offering - channel memberships.\"\n },\n \"levelDetails\": {\n \"description\": - \"Details about the pricing level.\",\n \"$ref\": \"LevelDetails\"\n - \ }\n }\n },\n \"WatchSettings\": {\n \"properties\": - {\n \"backgroundColor\": {\n \"description\": \"The text color - for the video watch page's branded area.\",\n \"type\": \"string\"\n - \ },\n \"featuredPlaylistId\": {\n \"type\": \"string\",\n - \ \"description\": \"An ID that uniquely identifies a playlist that - displays next to the video player.\"\n },\n \"textColor\": {\n - \ \"type\": \"string\",\n \"description\": \"The background - color for the video watch page's branded area.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"WatchSettings\",\n \"description\": \"Branding - properties for the watch. All deprecated.\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"id\": \"ActivityContentDetailsUpload\",\n \"description\": - \"Information about the uploaded video.\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the uploaded video.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ChannelSection\": {\n \"id\": - \"ChannelSection\",\n \"properties\": {\n \"contentDetails\": - {\n \"$ref\": \"ChannelSectionContentDetails\",\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\"\n },\n - \ \"targeting\": {\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\",\n \"$ref\": - \"ChannelSectionTargeting\"\n },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"default\": \"youtube#channelSection\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel section.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\",\n \"$ref\": \"ChannelSectionSnippet\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"Comment\": - {\n \"id\": \"Comment\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#comment\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment.\",\n \"$ref\": - \"CommentSnippet\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"description\": \"A *comment* represents a single YouTube comment.\"\n - \ },\n \"VideoContentDetails\": {\n \"properties\": {\n \"projection\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Specifies the projection format of the video.\",\n \"enum\": [\n - \ \"rectangular\",\n \"360\"\n ]\n },\n - \ \"duration\": {\n \"type\": \"string\",\n \"description\": - \"The length of the video. The tag value is an ISO 8601 duration in the format - PT#M#S, in which the letters PT indicate that the value specifies a period - of time, and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"contentRating\": {\n \"description\": \"Specifies the ratings - that the video received under various rating schemes.\",\n \"$ref\": - \"ContentRating\"\n },\n \"licensedContent\": {\n \"type\": - \"boolean\",\n \"description\": \"The value of is_license_content - indicates whether the video is licensed content.\"\n },\n \"definition\": - {\n \"enum\": [\n \"sd\",\n \"hd\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"description\": \"The value of - definition indicates whether the video is available in high definition or - only in standard definition.\"\n },\n \"hasCustomThumbnail\": - {\n \"description\": \"Indicates whether the video uploader has provided - a custom thumbnail image for the video. This property is only visible to the - video uploader.\",\n \"type\": \"boolean\"\n },\n \"dimension\": - {\n \"type\": \"string\",\n \"description\": \"The value - of dimension indicates whether the video is available in 3D or in 2D.\"\n - \ },\n \"countryRestriction\": {\n \"description\": - \"The countryRestriction object contains information about the countries where - a video is (or is not) viewable.\",\n \"$ref\": \"AccessPolicy\"\n - \ },\n \"caption\": {\n \"description\": \"The value - of captions indicates whether the video has captions or not.\",\n \"enum\": - [\n \"true\",\n \"false\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"regionRestriction\": {\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n }\n },\n \"id\": - \"VideoContentDetails\",\n \"description\": \"Details about the content - of a YouTube Video.\",\n \"type\": \"object\"\n },\n \"ThirdPartyLinkStatus\": - {\n \"description\": \"The third-party link status object contains information - about the status of the link.\",\n \"type\": \"object\",\n \"properties\": - {\n \"linkStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"id\": \"ThirdPartyLinkStatus\"\n - \ },\n \"ThumbnailSetResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of thumbnails.\"\n },\n \"kind\": {\n \"default\": - \"youtube#thumbnailSetResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n - \ }\n },\n \"id\": \"ThumbnailSetResponse\"\n },\n \"MembershipsDetails\": - {\n \"properties\": {\n \"membershipsDurationAtLevels\": {\n \"type\": - \"array\",\n \"description\": \"Data about memberships duration on - particular pricing levels.\",\n \"items\": {\n \"$ref\": - \"MembershipsDurationAtLevel\"\n }\n },\n \"membershipsDuration\": - {\n \"$ref\": \"MembershipsDuration\",\n \"description\": - \"Data about memberships duration without taking into consideration pricing - levels.\"\n },\n \"highestAccessibleLevelDisplayName\": {\n - \ \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n },\n - \ \"accessibleLevels\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Ids of all levels that - the user has access to. This includes the currently active level and all other - levels that are included because of a higher purchase.\",\n \"type\": - \"array\"\n },\n \"highestAccessibleLevel\": {\n \"type\": - \"string\",\n \"description\": \"Id of the highest level that the - user has access to at the moment.\"\n }\n },\n \"id\": \"MembershipsDetails\",\n - \ \"type\": \"object\"\n },\n \"ChannelContentDetails\": {\n \"properties\": - {\n \"relatedPlaylists\": {\n \"type\": \"object\",\n \"properties\": - {\n \"likes\": {\n \"description\": \"The ID of the - playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n },\n \"uploads\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use - the videos.insert method to upload new videos and the videos.delete method - to delete previously uploaded videos.\",\n \"type\": \"string\"\n - \ },\n \"watchHistory\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n },\n \"favorites\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s favorite videos. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"watchLater\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\",\n \"type\": \"string\"\n }\n }\n - \ }\n },\n \"id\": \"ChannelContentDetails\",\n \"type\": - \"object\",\n \"description\": \"Details about the content of a channel.\"\n - \ },\n \"LiveStreamStatus\": {\n \"properties\": {\n \"healthStatus\": - {\n \"$ref\": \"LiveStreamHealthStatus\",\n \"description\": - \"The health status of the stream.\"\n },\n \"streamStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"created\",\n \"ready\",\n - \ \"active\",\n \"inactive\",\n \"error\"\n - \ ]\n }\n },\n \"type\": \"object\",\n \"description\": - \"Brief description of the live stream status.\",\n \"id\": \"LiveStreamStatus\"\n - \ },\n \"PageInfo\": {\n \"id\": \"PageInfo\",\n \"properties\": - {\n \"resultsPerPage\": {\n \"format\": \"int32\",\n \"description\": - \"The number of results included in the API response.\",\n \"type\": - \"integer\"\n },\n \"totalResults\": {\n \"type\": - \"integer\",\n \"description\": \"The total number of results in - the result set.\",\n \"format\": \"int32\"\n }\n },\n - \ \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\",\n \"type\": \"object\"\n },\n \"InvideoBranding\": {\n - \ \"id\": \"InvideoBranding\",\n \"properties\": {\n \"timing\": - {\n \"$ref\": \"InvideoTiming\",\n \"description\": \"The - temporal position within the video where watermark will be displayed.\"\n - \ },\n \"targetChannelId\": {\n \"description\": \"The - channel to which this branding links. If not present it defaults to the current - channel.\",\n \"type\": \"string\"\n },\n \"position\": - {\n \"description\": \"The spatial position within the video where - the branding watermark will be displayed.\",\n \"$ref\": \"InvideoPosition\"\n - \ },\n \"imageBytes\": {\n \"type\": \"string\",\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"format\": \"byte\"\n },\n \"imageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The url of the uploaded image. Only - used in apiary to api communication.\"\n }\n },\n \"description\": - \"LINT.IfChange Describes an invideo branding.\",\n \"type\": \"object\"\n - \ },\n \"ChannelSectionTargeting\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"regions\": {\n \"description\": - \"The region the channel section is targeting.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"languages\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"The language the channel section - is targeting.\",\n \"type\": \"array\"\n },\n \"countries\": + its value is the corresponding videoCategory resource.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoCategory\"\n + \ }\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"VideoCategoryListResponse\"\n + \ },\n \"VideoContentDetailsRegionRestriction\": {\n \"description\": + \"DEPRECATED Region restriction of the video.\",\n \"id\": \"VideoContentDetailsRegionRestriction\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"blocked\": {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The country the - channel section is targeting.\"\n }\n },\n \"description\": - \"ChannelSection targeting setting.\",\n \"id\": \"ChannelSectionTargeting\"\n - \ },\n \"MembershipsDurationAtLevel\": {\n \"id\": \"MembershipsDurationAtLevel\",\n - \ \"properties\": {\n \"memberTotalDurationMonths\": {\n \"format\": - \"int32\",\n \"description\": \"The cumulative time the user has - been a member for the given level in complete months (the time is rounded - down to the nearest integer).\",\n \"type\": \"integer\"\n },\n - \ \"level\": {\n \"type\": \"string\",\n \"description\": - \"Pricing level ID.\"\n },\n \"memberSince\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the user - became a continuous member for the given level.\"\n }\n },\n \"type\": - \"object\"\n }\n },\n \"resources\": {\n \"liveChatModerators\": {\n - \ \"methods\": {\n \"delete\": {\n \"description\": \"Deletes - a chat moderator.\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"DELETE\",\n \"id\": - \"youtube.liveChatModerators.delete\",\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\"\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ \"type\": \"array\",\n \"description\": \"A list of region + codes that identify countries where the video is blocked. If this property + is present and a country is not listed in its value, then the video is viewable + in that country. If this property is present and contains an empty list, the + video is viewable in all countries.\"\n },\n \"allowed\": {\n + \ \"type\": \"array\",\n \"description\": \"A list of region + codes that identify countries where the video is viewable. If this property + is present and a country is not listed in its value, then the video is blocked + from appearing in that country. If this property is present and contains an + empty list, the video is blocked in all countries.\",\n \"items\": + {\n \"type\": \"string\"\n }\n }\n }\n }\n + \ },\n \"ownerName\": \"Google\",\n \"kind\": \"discovery#restDescription\",\n + \ \"discoveryVersion\": \"v1\",\n \"protocol\": \"rest\",\n \"id\": \"youtube:v3\",\n + \ \"documentationLink\": \"https://developers.google.com/youtube/\",\n \"parameters\": + {\n \"oauth_token\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"OAuth 2.0 token for the current user.\"\n + \ },\n \"upload_protocol\": {\n \"type\": \"string\",\n \"description\": + \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"location\": + \"query\"\n },\n \"key\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n + \ \"location\": \"query\"\n },\n \"quotaUser\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n + \ \"alt\": {\n \"default\": \"json\",\n \"description\": \"Data + format for response.\",\n \"location\": \"query\",\n \"enum\": [\n + \ \"json\",\n \"media\",\n \"proto\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"Responses with Content-Type + of application/json\",\n \"Media download with context-dependent Content-Type\",\n + \ \"Responses with Content-Type of application/x-protobuf\"\n ]\n + \ },\n \"$.xgafv\": {\n \"type\": \"string\",\n \"description\": + \"V1 error format.\",\n \"enum\": [\n \"1\",\n \"2\"\n + \ ],\n \"location\": \"query\",\n \"enumDescriptions\": [\n + \ \"v1 error format\",\n \"v2 error format\"\n ]\n },\n + \ \"uploadType\": {\n \"description\": \"Legacy upload protocol for + media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"prettyPrint\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"default\": \"true\",\n \"description\": + \"Returns response with indentations and line breaks.\"\n },\n \"callback\": + {\n \"location\": \"query\",\n \"description\": \"JSONP\",\n \"type\": + \"string\"\n },\n \"access_token\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"OAuth access token.\"\n + \ },\n \"fields\": {\n \"location\": \"query\",\n \"description\": + \"Selector specifying which fields to include in a partial response.\",\n + \ \"type\": \"string\"\n }\n },\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n + \ \"fullyEncodeReservedExpansion\": true,\n \"canonicalName\": \"YouTube\",\n + \ \"version\": \"v3\",\n \"resources\": {\n \"commentThreads\": {\n \"methods\": + {\n \"insert\": {\n \"response\": {\n \"$ref\": + \"CommentThread\"\n },\n \"parameterOrder\": [\n \"part\"\n \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"response\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"request\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"id\": \"youtube.liveChatModerators.insert\"\n },\n \"list\": - {\n \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"id\": \"youtube.liveChatModerators.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": - {\n \"maxResults\": {\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"default\": \"5\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"liveChatId\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"The id of the live chat for which moderators - should be returned.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - liveChatModerator resource parts that the API response will include. Supported - values are id and snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"subscriptions\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"path\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.subscriptions.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + collection.\",\n \"request\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"id\": \"youtube.commentThreads.insert\",\n \"httpMethod\": + \"POST\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"path\": + \"youtube/v3/commentThreads\",\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"list\": {\n \"path\": \"youtube/v3/commentThreads\",\n + \ \"id\": \"youtube.commentThreads.list\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"CommentThreadListResponse\"\n },\n \"httpMethod\": \"GET\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"parameters\": + {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"Returns the comment threads of the specified video.\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"description\": + \"Returns the comment threads with the given IDs for Stubby or Apiary.\",\n + \ \"repeated\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"maxResults\": + {\n \"maximum\": \"100\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\",\n \"location\": \"query\",\n \"default\": + \"20\",\n \"minimum\": \"1\"\n },\n \"textFormat\": + {\n \"description\": \"The requested text format for the returned + comments.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Returns the comments in HTML format. This is the default + value.\",\n \"Returns the comments in plain text format.\"\n + \ ],\n \"type\": \"string\",\n \"enum\": + [\n \"textFormatUnspecified\",\n \"html\",\n + \ \"plainText\"\n ],\n \"location\": + \"query\",\n \"default\": \"html\"\n },\n \"moderationStatus\": + {\n \"enumDescriptions\": [\n \"The comment is + available for public display.\",\n \"The comment is awaiting + review by a moderator.\",\n \"\",\n \"The comment + is unfit for display.\"\n ],\n \"description\": + \"Limits the returned comment threads to those with the specified moderation + status. Not compatible with the 'id' filter. Valid values: published, heldForReview, + likelySpam.\",\n \"location\": \"query\",\n \"default\": + \"published\",\n \"type\": \"string\",\n \"enum\": + [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n + \ \"rejected\"\n ]\n },\n \"channelId\": + {\n \"description\": \"Returns the comment threads for all the + channel comments (ie does not include comments left on videos).\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"allThreadsRelatedToChannelId\": + {\n \"type\": \"string\",\n \"description\": \"Returns + the comment threads of all videos of the channel and the channel comments + as well.\",\n \"location\": \"query\"\n },\n \"searchTerms\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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 + \ \"description\": \"Limits the returned comment threads to those + matching the specified key words. Not compatible with the 'id' filter.\"\n + \ },\n \"pageToken\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"order\": + {\n \"enum\": [\n \"orderUnspecified\",\n \"time\",\n + \ \"relevance\"\n ],\n \"location\": + \"query\",\n \"default\": \"time\",\n \"enumDescriptions\": + [\n \"\",\n \"Order by time.\",\n \"Order + by relevance.\"\n ],\n \"type\": \"string\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies a comma-separated list of one or more commentThread + resource properties that the API response will include.\",\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\"\n + \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": + {\n \"insert\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"location\": \"query\"\n - \ },\n \"forChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the subscriptions to the - subset of these channels that the authenticated user is subscribed to.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\"\n },\n \"order\": {\n \"enum\": - [\n \"subscriptionOrderUnspecified\",\n \"relevance\",\n - \ \"unread\",\n \"alphabetical\"\n ],\n - \ \"description\": \"The order of the returned subscriptions\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"default\": \"relevance\",\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the subscriptions of the given channel - owner.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"required\": - true\n },\n \"mySubscribers\": {\n \"description\": - \"Return the subscribers of the given channel owner.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"myRecentSubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"mine\": {\n \"description\": \"Flag - for returning the subscriptions of the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"insert\": {\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"response\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"Subscription\"\n },\n \"id\": \"youtube.subscriptions.insert\"\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/subscriptions\",\n + for each separate channel.\",\n \"type\": \"string\"\n }\n + \ },\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Inserts + a new stream for the authenticated user.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n + \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.subscriptions.delete\"\n }\n }\n },\n \"comments\": - {\n \"methods\": {\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/comments\",\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.comments.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"setModerationStatus\": {\n \"scopes\": [\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"description\": \"Sets the moderation status of one or more comments.\",\n - \ \"id\": \"youtube.comments.setModerationStatus\",\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\",\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"banAuthor\": {\n \"description\": - \"If set to true the author of the comment gets added to the ban list. This - means all future comments of the author will autmomatically be rejected. Only - valid in combination with STATUS_REJECTED.\",\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"default\": - \"false\"\n },\n \"moderationStatus\": {\n \"required\": - true,\n \"description\": \"Specifies the requested moderation - status. Note, comments can be in statuses, which are not available through - this call. For example, this call does not allow to mark a comment as 'likely - spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\",\n \"repeated\": true,\n \"required\": - true\n }\n }\n },\n \"markAsSpam\": {\n - \ \"description\": \"Expresses the caller's opinion that one or more - comments should be flagged as spam.\",\n \"id\": \"youtube.comments.markAsSpam\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"POST\",\n + \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"httpMethod\": + \"POST\"\n },\n \"insertCuepoint\": {\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n + \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n + \ \"description\": \"Insert cuepoints in a broadcast\",\n \"httpMethod\": + \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [],\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n + \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Flags the comments with the - given IDs as spam in the caller's opinion.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n }\n }\n },\n \"update\": {\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\"\n }\n },\n \"path\": - \"youtube/v3/comments\",\n \"id\": \"youtube.comments.update\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n }\n - \ },\n \"insert\": {\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"path\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": + \"string\",\n \"description\": \"Broadcast to insert ads to, + or equivalently `external_video_id` for internal use.\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"description\": + \"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.\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\"\n },\n + \ \"list\": {\n \"httpMethod\": \"GET\",\n \"flatPath\": + \"youtube/v3/liveBroadcasts\",\n \"description\": \"Retrieve the + list of broadcasts associated with the given channel.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n + \ },\n \"parameters\": {\n \"pageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"mine\": {\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"broadcastStatus\": + {\n \"description\": \"Return broadcasts with a certain status, + e.g. active broadcasts.\",\n \"type\": \"string\",\n \"enum\": + [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n + \ \"active\",\n \"upcoming\",\n \"completed\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all broadcasts.\",\n \"Return current + live broadcasts.\",\n \"Return broadcasts that have not yet + started.\",\n \"Return broadcasts that have already ended.\"\n + \ ],\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"broadcastType\": {\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all broadcasts.\",\n \"Return only + scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n + \ ],\n \"description\": \"Return only broadcasts + with the selected type.\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n + \ \"all\",\n \"event\",\n \"persistent\"\n + \ ],\n \"type\": \"string\",\n \"default\": + \"event\"\n },\n \"maxResults\": {\n \"location\": + \"query\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"minimum\": \"0\",\n \"default\": \"5\",\n \"maximum\": + \"50\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n + \ },\n \"id\": {\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": + \"Return broadcasts with the given ids from Stubby or Apiary.\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"description\": \"Inserts a - new resource into this collection.\",\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"Comment\"\n }\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"response\": - {\n \"$ref\": \"CommentListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.comments.list\",\n - \ \"path\": \"youtube/v3/comments\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"parentId\": {\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more comment - resource properties that the API response will include.\"\n },\n - \ \"textFormat\": {\n \"default\": \"html\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"description\": - \"The requested text format for the returned comments.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ]\n },\n \"maxResults\": - {\n \"default\": \"20\",\n \"minimum\": \"1\",\n - \ \"maximum\": \"100\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Returns the comments with the given IDs for One Platform.\"\n }\n - \ }\n }\n }\n },\n \"youtube\": {\n \"resources\": - {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"description\": \"Updates an existing resource.\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"parameterOrder\": [],\n - \ \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true\n - \ }\n }\n }\n }\n }\n - \ }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"flatPath\": \"youtube/v3/search\",\n \"id\": \"youtube.search.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of search resources\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"parameters\": {\n \"forDeveloper\": {\n - \ \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\"\n },\n - \ \"order\": {\n \"description\": \"Sort order of the - results.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"type\": - \"string\",\n \"default\": \"relevance\",\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + true,\n \"description\": \"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, status and statistics.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n }\n },\n \"id\": \"youtube.liveBroadcasts.list\",\n + \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": + [\n \"part\"\n ]\n },\n \"delete\": {\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"description\": + \"Broadcast to delete.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"path\": \"youtube/v3/liveBroadcasts\",\n + \ \"id\": \"youtube.liveBroadcasts.delete\",\n \"flatPath\": + \"youtube/v3/liveBroadcasts\",\n \"description\": \"Delete a given + broadcast.\",\n \"httpMethod\": \"DELETE\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"transition\": {\n \"id\": \"youtube.liveBroadcasts.transition\",\n + \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"flatPath\": + \"youtube/v3/liveBroadcasts/transition\",\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"description\": \"Transition a + broadcast to a given status.\",\n \"parameterOrder\": [\n \"broadcastStatus\",\n + \ \"id\",\n \"part\"\n ],\n \"parameters\": + {\n \"broadcastStatus\": {\n \"location\": \"query\",\n + \ \"description\": \"The status to which the broadcast is going + to transition.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Start testing the broadcast. YouTube transmits video to + the broadcast's monitor stream. Note that you can only transition a broadcast + to the testing state if its contentDetails.monitorStream.enableMonitorStream + property is set to true.\\\",\",\n \"Return only persistent + broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting + video.\"\n ],\n \"enum\": [\n \"statusUnspecified\",\n + \ \"testing\",\n \"live\",\n \"complete\"\n + \ ],\n \"required\": true,\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"required\": + true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -4016,311 +4075,87 @@ interactions: provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"videoType\": {\n \"enum\": - [\n \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Filter on videos of a specific type.\",\n \"location\": \"query\"\n - \ },\n \"topicId\": {\n \"location\": \"query\",\n - \ \"description\": \"Restrict results to a particular topic.\",\n - \ \"type\": \"string\"\n },\n \"videoDefinition\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ],\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"description\": \"Filter - on the definition of the videos.\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"type\": \"integer\",\n \"default\": - \"5\",\n \"location\": \"query\"\n },\n \"videoDuration\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on the duration of the videos.\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"location\": \"query\"\n },\n \"videoEmbeddable\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos, embeddable or not.\",\n \"Only retrieve embeddable - videos.\"\n ],\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on embeddable videos.\"\n },\n \"safeSearch\": - {\n \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"default\": \"moderate\",\n \"location\": - \"query\",\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"type\": \"string\"\n },\n \"videoLicense\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"location\": \"query\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"description\": \"Filter on the license of the videos.\"\n - \ },\n \"relevanceLanguage\": {\n \"description\": - \"Return results relevant to this language.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"videoCaption\": - {\n \"description\": \"Filter on the presence of captions on - the videos.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"relatedToVideoId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Search - related to a resource.\"\n },\n \"videoSyndicated\": + \"string\"\n },\n \"id\": {\n \"required\": + true,\n \"description\": \"Broadcast to transition.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n + \ },\n \"bind\": {\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n + \ \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"description\": \"Broadcast to bind to the stream\",\n + \ \"type\": \"string\",\n \"required\": true\n },\n + \ \"streamId\": {\n \"description\": \"Stream to bind, + if not set unbind the current one.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos, syndicated or not.\",\n \"Only retrieve syndicated - videos.\"\n ],\n \"description\": \"Filter on syndicated - videos.\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ]\n },\n - \ \"publishedAfter\": {\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\",\n \"description\": - \"Filter on resources published after this date.\",\n \"type\": - \"string\"\n },\n \"publishedBefore\": {\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\",\n \"description\": \"Filter on resources published - before this date.\"\n },\n \"regionCode\": {\n \"description\": - \"Display the content as seen by viewers in this country.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"eventType\": + \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"required\": + true,\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"parameterOrder\": + [\n \"id\",\n \"part\"\n ],\n \"description\": + \"Bind a broadcast to a stream.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": + \"youtube/v3/liveBroadcasts/bind\",\n \"httpMethod\": \"POST\"\n + \ },\n \"update\": {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"description\": \"Filter on the livestream status of the videos.\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Filter on resources belonging - to this channelId.\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular set of resource types from One Platform.\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"videoCategoryId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Filter - on videos in a specific category.\"\n },\n \"videoDimension\": - {\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"Include both 3D and - non-3D videos in returned results. This is the default value.\",\n \"Restrict - search results to exclude 3D videos.\",\n \"Restrict search - results to only include 3D videos.\"\n ],\n \"type\": - \"string\",\n \"description\": \"Filter on 3d videos.\"\n },\n - \ \"channelType\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"description\": \"Add - a filter on the channel search.\"\n },\n \"q\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Textual search terms to match.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"forContentOwner\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Search owned by a content owner.\"\n },\n - \ \"forMine\": {\n \"location\": \"query\",\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"locationRadius\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on distance from the location (specified above).\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"location\": {\n \"location\": - \"query\",\n \"description\": \"Filter on location of the video\",\n - \ \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/search\"\n }\n }\n },\n \"thirdPartyLinks\": - {\n \"methods\": {\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"id\": \"youtube.thirdPartyLinks.insert\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"The *part* parameter - specifies the thirdPartyLink resource parts that the API request and response - will include. Supported values are linkingToken, status, and snippet.\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"id\": \"youtube.thirdPartyLinks.delete\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"Do not use. Required for compatibility.\",\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"type\": {\n \"description\": \"Type of the link - to be deleted.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ]\n },\n \"linkingToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"Delete the partner links with the - given linking token.\"\n }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ]\n },\n - \ \"update\": {\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"location\": \"query\"\n },\n - \ \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"id\": - \"youtube.thirdPartyLinks.update\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"list\": {\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\"\n },\n \"linkingToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Get a third party link with the given linking token.\"\n },\n - \ \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"enum\": [\n - \ \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Get a third party link of the - given type.\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.thirdPartyLinks.list\"\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"part\": {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ },\n \"hl\": {\n \"default\": \"en_US\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.i18nRegions.list\",\n \"path\": \"youtube/v3/i18nRegions\"\n - \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"download\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/captions/{id}\",\n \"description\": \"Downloads a caption - track.\",\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"id\": {\n \"location\": \"path\",\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The ID of the caption track to download, required for One Platform.\"\n - \ },\n \"tlang\": {\n \"description\": \"tlang - is the language code; machine translate the captions into this language.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"tfmt\": {\n \"description\": \"Convert - the captions into this format. Supported options are sbv, srt, and vtt.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"useMediaDownloadService\": true,\n - \ \"httpMethod\": \"GET\",\n \"supportsMediaDownload\": true,\n - \ \"id\": \"youtube.captions.download\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"supportsMediaUpload\": true,\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"path\": \"youtube/v3/captions\",\n - \ \"parameters\": {\n \"sync\": {\n \"type\": - \"boolean\",\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is be on behalf of\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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 + \ \"description\": \"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 get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.captions.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ }\n }\n },\n \"update\": {\n \"path\": - \"youtube/v3/captions\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"required\": true\n },\n + 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.\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"required\": true\n },\n \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \ \"location\": \"query\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* @@ -4330,155 +4165,81 @@ interactions: that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\"\n },\n \"sync\": {\n - \ \"location\": \"query\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"id\": \"youtube.captions.update\",\n \"supportsMediaUpload\": - true,\n \"description\": \"Updates an existing resource.\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"mediaUpload\": {\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/captions\"\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n - \ }\n },\n \"list\": {\n \"id\": \"youtube.captions.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Returns the captions with the given IDs for - Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\"\n - \ },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"videoId\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"Returns the captions for the specified video.\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/captions\",\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ],\n \"path\": - \"youtube/v3/captions\",\n \"description\": \"Retrieves a list of - resources, possibly filtered.\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended + The CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"id\": \"youtube.liveBroadcasts.update\",\n + \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": + \"PUT\",\n \"description\": \"Updates an existing broadcast for the + authenticated user.\"\n }\n }\n },\n \"liveStreams\": {\n + \ \"methods\": {\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"description\": \"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.\",\n \"required\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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 + provide authentication credentials for each individual channel. The CMS account + that the user authenticates with must be linked to the specified YouTube content + owner.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"youtube.liveStreams.update\",\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"httpMethod\": \"PUT\",\n \"description\": \"Updates an + existing stream for the authenticated user.\",\n \"response\": {\n + \ \"$ref\": \"LiveStream\"\n },\n \"flatPath\": + \"youtube/v3/liveStreams\"\n },\n \"insert\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.captions.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions\"\n }\n }\n },\n - \ \"playlists\": {\n \"methods\": {\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"description\": + \ \"part\": {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"PUT\",\n \"id\": \"youtube.playlists.update\"\n },\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlists.delete\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/playlists\",\n - \ \"flatPath\": \"youtube/v3/playlists\"\n },\n \"list\": - {\n \"id\": \"youtube.playlists.list\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"response\": - {\n \"$ref\": \"PlaylistListResponse\"\n },\n \"parameters\": - {\n \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return content in specified language\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the playlists owned by the authenticated user.\",\n \"location\": + that the API response will include. The part properties that you can include + in the parameter value are id, snippet, cdn, content_details, and status.\",\n + \ \"required\": true,\n \"repeated\": true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"This parameter can only be used in a properly + {\n \"description\": \"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 @@ -4492,49 +4253,38 @@ interactions: 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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the playlists owned by the specified - channel ID.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Return the playlists with the - given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"default\": \"5\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"insert\": {\n \"id\": \"youtube.playlists.insert\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n + for each separate channel.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"httpMethod\": + \"POST\",\n \"response\": {\n \"$ref\": \"LiveStream\"\n + \ },\n \"id\": \"youtube.liveStreams.insert\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Inserts + a new stream for the authenticated user.\",\n \"request\": {\n \"$ref\": + \"LiveStream\"\n }\n },\n \"list\": {\n \"description\": + \"Retrieve the list of streams associated with the given channel. --\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"response\": + {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"parameters\": + {\n \"id\": {\n \"description\": \"Return LiveStreams + with the given ids from Stubby or Apiary.\",\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"repeated\": true\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -4544,8 +4294,35 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": + \"query\",\n \"type\": \"string\"\n },\n \"mine\": + {\n \"type\": \"boolean\",\n \"location\": \"query\"\n + \ },\n \"maxResults\": {\n \"minimum\": + \"0\",\n \"maximum\": \"50\",\n \"default\": \"5\",\n + \ \"location\": \"query\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\"\n + \ }\n },\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"id\": \"youtube.liveStreams.list\"\n },\n + \ \"delete\": {\n \"description\": \"Deletes an existing stream + for the authenticated user.\",\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"httpMethod\": + \"DELETE\",\n \"id\": \"youtube.liveStreams.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -4559,221 +4336,8 @@ interactions: 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.\",\n \"type\": \"string\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/playlists\"\n }\n - \ }\n },\n \"activities\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.activities.list\",\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/activities\",\n \"parameters\": {\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"publishedAfter\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"format\": - \"google-datetime\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"default\": \"5\",\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"repeated\": - true\n },\n \"publishedBefore\": {\n \"format\": - \"google-datetime\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"home\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"path\": \"youtube/v3/activities\"\n }\n }\n - \ },\n \"liveChatMessages\": {\n \"methods\": {\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a chat message.\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatMessages.delete\"\n },\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"liveChatId\": {\n - \ \"description\": \"The id of the live chat for which comments - should be returned.\",\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the system messages should be returned.\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"maximum\": \"2000\",\n \"default\": \"500\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"200\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the liveChatComment - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"profileImageSize\": - {\n \"description\": \"Specifies the size of the profile image - that should be returned for each user.\",\n \"maximum\": \"720\",\n - \ \"minimum\": \"16\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"format\": \"uint32\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ]\n },\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"id\": \"youtube.liveChatMessages.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"flatPath\": \"youtube/v3/liveChat/messages\"\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"id\": - \"youtube.superChatEvents.list\",\n \"response\": {\n \"$ref\": - \"SuperChatEventListResponse\"\n },\n \"path\": \"youtube/v3/superChatEvents\",\n - \ \"parameters\": {\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"minimum\": \"1\",\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"default\": - \"5\",\n \"maximum\": \"50\",\n \"type\": \"integer\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"Return rendered funding amounts in specified - language.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the superChatEvent resource parts that the API - response will include. This parameter is currently not supported.\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\"\n }\n }\n - \ },\n \"playlistItems\": {\n \"methods\": {\n \"update\": - {\n \"id\": \"youtube.playlistItems.update\",\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/playlistItems\"\n },\n \"insert\": - {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n - \ \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"id\": \"youtube.playlistItems.insert\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"description\": \"Inserts a new - resource into this collection.\"\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a resource.\",\n \"path\": \"youtube/v3/playlistItems\",\n \"id\": - \"youtube.playlistItems.delete\"\n },\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"playlistId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlist items within the given playlist.\"\n },\n - \ \"videoId\": {\n \"description\": \"Return the playlist - items associated with the given video ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + for each separate channel.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -4783,334 +4347,177 @@ interactions: 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.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"required\": true\n - \ },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"type\": - \"integer\"\n }\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlistItems.list\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"PlaylistItemListResponse\"\n }\n }\n - \ }\n },\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/i18nLanguages\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"default\": \"en_US\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the i18nLanguage resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n }\n },\n \"id\": - \"youtube.i18nLanguages.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"response\": - {\n \"$ref\": \"I18nLanguageListResponse\"\n }\n }\n - \ }\n },\n \"channelBanners\": {\n \"methods\": {\n \"insert\": - {\n \"path\": \"youtube/v3/channelBanners/insert\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": + be linked to the specified YouTube content owner.\"\n }\n }\n + \ }\n }\n },\n \"channelBanners\": {\n \"methods\": + {\n \"insert\": {\n \"mediaUpload\": {\n \"maxSize\": + \"6291456\",\n \"protocols\": {\n \"simple\": {\n + \ \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n + \ \"multipart\": true\n },\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n + \ \"multipart\": true\n }\n },\n \"accept\": + [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n + \ ]\n },\n \"supportsMediaUpload\": true,\n \"httpMethod\": + \"POST\",\n \"parameterOrder\": [],\n \"path\": \"youtube/v3/channelBanners/insert\",\n + \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"parameters\": + {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": \"Unused, channel_id is currently derived from the security context of the - requestor.\"\n },\n \"onBehalfOfContentOwner\": {\n - \ \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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 + requestor.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"parameterOrder\": [],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/channelBanners/insert\",\n \"response\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\",\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ }\n }\n },\n \"request\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"supportsMediaUpload\": - true,\n \"id\": \"youtube.channelBanners.insert\"\n }\n }\n - \ },\n \"videoCategories\": {\n \"methods\": {\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ },\n \"id\": \"youtube.channelBanners.insert\",\n \"request\": + {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"response\": + {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\"\n ]\n + \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n + \ \"list\": {\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"id\": \"youtube.i18nRegions.list\",\n \"httpMethod\": + \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"path\": \"youtube/v3/i18nRegions\",\n \"flatPath\": \"youtube/v3/i18nRegions\",\n + \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videoCategories\",\n \"id\": - \"youtube.videoCategories.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"path\": \"youtube/v3/videoCategories\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"id\": - {\n \"description\": \"Returns the video categories with the - given IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"default\": \"en-US\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n }\n }\n }\n },\n \"members\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of members that match the request criteria for a channel.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"pageToken\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"required\": - true\n },\n \"mode\": {\n \"default\": - \"all_current\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"description\": \"Parameter that specifies which channel members - to return.\"\n },\n \"filterByMemberChannelId\": {\n - \ \"type\": \"string\",\n \"description\": \"Comma - separated list of channel IDs. Only data about members that are part of this - list will be included in the response.\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"minimum\": \"0\",\n \"maximum\": \"1000\",\n - \ \"default\": \"5\"\n },\n \"hasAccessToLevel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter members in the results set to the - ones that have access to a level.\"\n }\n },\n \"flatPath\": - \"youtube/v3/members\",\n \"path\": \"youtube/v3/members\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ },\n \"id\": \"youtube.members.list\"\n }\n }\n - \ },\n \"channels\": {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"mine\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the ids of channels owned by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"forUsername\": - {\n \"location\": \"query\",\n \"description\": - \"Return the channel associated with a YouTube username.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n },\n \"managedByMe\": - {\n \"description\": \"Return the channels managed by the authenticated - user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Return the channels with the specified IDs.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the channels subscribed to the authenticated user\"\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"categoryId\": - {\n \"description\": \"Return the channels within the specified - guide category ID.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"id\": \"youtube.channels.list\",\n - \ \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n + \ \"parameters\": {\n \"hl\": {\n \"type\": + \"string\",\n \"default\": \"en_US\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"description\": + \"The *part* parameter specifies the i18nRegion resource properties that the + API response will include. Set the parameter value to snippet.\",\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true,\n \"type\": \"string\"\n }\n }\n }\n + \ }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": + {\n \"methods\": {\n \"updateCommentThreads\": {\n \"response\": + {\n \"$ref\": \"CommentThread\"\n },\n \"id\": + \"youtube.youtube.v3.updateCommentThreads\",\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n },\n + \ \"httpMethod\": \"PUT\",\n \"description\": \"Updates + an existing resource.\",\n \"parameterOrder\": [],\n \"path\": + \"youtube/v3/commentThreads\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"request\": {\n \"$ref\": \"CommentThread\"\n + \ }\n }\n }\n }\n }\n },\n + \ \"liveChatModerators\": {\n \"methods\": {\n \"list\": {\n + \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n + \ },\n \"parameters\": {\n \"maxResults\": {\n + \ \"minimum\": \"0\",\n \"location\": \"query\",\n + \ \"default\": \"5\",\n \"format\": \"uint32\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"type\": + \"integer\",\n \"maximum\": \"50\"\n },\n \"liveChatId\": + {\n \"description\": \"The id of the live chat for which moderators + should be returned.\",\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\"\n },\n \"part\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": + \"The *part* parameter specifies the liveChatModerator resource parts that + the API response will include. Supported values are id and snippet.\"\n },\n + \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": + [\n \"liveChatId\",\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/liveChat/moderators\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/channels\"\n },\n - \ \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.channels.update\",\n - \ \"request\": {\n \"$ref\": \"Channel\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": + possibly filtered.\",\n \"id\": \"youtube.liveChatModerators.list\",\n + \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": + \"GET\"\n },\n \"insert\": {\n \"response\": {\n \"$ref\": + \"LiveChatModerator\"\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n + \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": + \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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 the API response returns. Set the parameter value to snippet.\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true,\n \"repeated\": true\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"description\": \"Inserts a new resource into this + collection.\",\n \"request\": {\n \"$ref\": \"LiveChatModerator\"\n + \ },\n \"id\": \"youtube.liveChatModerators.insert\"\n },\n + \ \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"id\": \"youtube.liveChatModerators.delete\",\n + \ \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true\n }\n },\n \"httpMethod\": \"DELETE\",\n + \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"description\": + \"Deletes a chat moderator.\"\n }\n }\n },\n \"subscriptions\": + {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/subscriptions\",\n + \ \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n + \ },\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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 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.\"\n }\n },\n \"path\": - \"youtube/v3/channels\",\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Channel\"\n - \ },\n \"description\": \"Updates an existing resource.\"\n - \ }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"insert\": {\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"CommentThreadListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads for all the channel - comments (ie does not include comments left on videos).\"\n },\n - \ \"allThreadsRelatedToChannelId\": {\n \"description\": - \"Returns the comment threads of all videos of the channel and the channel - comments as well.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"searchTerms\": {\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"order\": - {\n \"enum\": [\n \"orderUnspecified\",\n \"time\",\n - \ \"relevance\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"default\": \"time\"\n },\n - \ \"moderationStatus\": {\n \"enumDescriptions\": [\n - \ \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Limits the returned comment threads to those - with the specified moderation status. Not compatible with the 'id' filter. - Valid values: published, heldForReview, likelySpam.\",\n \"location\": - \"query\",\n \"default\": \"published\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"default\": \"20\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"maximum\": - \"100\",\n \"minimum\": \"1\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"Returns - the comment threads with the given IDs for Stubby or Apiary.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - a comma-separated list of one or more commentThread resource properties that - the API response will include.\",\n \"repeated\": true,\n \"required\": - true\n },\n \"pageToken\": {\n \"location\": + 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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"myRecentSubscribers\": {\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"maxResults\": + {\n \"default\": \"5\",\n \"type\": \"integer\",\n + \ \"maximum\": \"50\",\n \"minimum\": \"0\",\n \"format\": + \"uint32\",\n \"location\": \"query\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\"\n },\n \"part\": {\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": + \"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.\",\n \"location\": \"query\",\n \"required\": + true\n },\n \"channelId\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"textFormat\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"default\": \"html\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"location\": - \"query\",\n \"description\": \"The requested text format for - the returned comments.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of the specified video.\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.commentThreads.list\",\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"flatPath\": - \"youtube/v3/commentThreads\"\n }\n }\n },\n \"videos\": - {\n \"methods\": {\n \"reportAbuse\": {\n \"description\": - \"Report abuse for a video.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n \"parameterOrder\": - [],\n \"path\": \"youtube/v3/videos/reportAbuse\",\n \"request\": - {\n \"$ref\": \"VideoAbuseReport\"\n },\n \"id\": - \"youtube.videos.reportAbuse\"\n },\n \"update\": {\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* + \"Return the subscriptions of the given channel owner.\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"description\": \"Return the subscriptions with the + given IDs for Stubby or Apiary.\",\n \"location\": \"query\"\n + \ },\n \"mine\": {\n \"location\": \"query\",\n + \ \"type\": \"boolean\",\n \"description\": \"Flag + for returning the subscriptions of the authenticated user.\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"*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 @@ -5118,309 +4525,341 @@ interactions: that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\",\n \"description\": \"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.\"\n }\n },\n + The CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n },\n \"mySubscribers\": {\n + \ \"location\": \"query\",\n \"description\": \"Return + the subscribers of the given channel owner.\",\n \"type\": \"boolean\"\n + \ },\n \"pageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n + \ \"location\": \"query\"\n },\n \"order\": + {\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n + \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n + \ ],\n \"type\": \"string\",\n \"location\": + \"query\",\n \"default\": \"relevance\",\n \"enumDescriptions\": + [\n \"\",\n \"Sort by relevance.\",\n \"Sort + by order of activity.\",\n \"Sort alphabetically.\"\n ],\n + \ \"description\": \"The order of the returned subscriptions\"\n + \ },\n \"forChannelId\": {\n \"description\": + \"Return the subscriptions to the subset of these channels that the authenticated + user is subscribed to.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.update\",\n \"path\": - \"youtube/v3/videos\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"Video\"\n - \ }\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.videos.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/videos\"\n - \ },\n \"getRating\": {\n \"description\": \"Retrieves - the ratings that the authorized user gave to a list of specified videos.\",\n - \ \"id\": \"youtube.videos.getRating\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos/getRating\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/videos/getRating\",\n \"response\": - {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"httpMethod\": - \"GET\"\n },\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"id\": \"youtube.videos.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoCategoryId\": - {\n \"default\": \"0\",\n \"location\": \"query\",\n - \ \"description\": \"Use chart that is specific to the specified - video category\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Use a chart that is specific to the specified region\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"minimum\": \"1\",\n \"description\": \"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.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"default\": - \"5\"\n },\n \"id\": {\n \"description\": - \"Return videos with the given ids.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"maxWidth\": {\n \"minimum\": \"72\",\n - \ \"maximum\": \"8192\",\n \"location\": \"query\",\n - \ \"format\": \"int32\",\n \"description\": \"Return - the player with maximum height specified in\",\n \"type\": \"integer\"\n - \ },\n \"locale\": {\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"chart\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - the most popular videos for the specified content region and video category.\"\n - \ ],\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ],\n \"type\": - \"string\",\n \"description\": \"Return the videos that are in - the specified chart.\",\n \"location\": \"query\"\n },\n - \ \"myRating\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\"\n },\n \"maxHeight\": - {\n \"minimum\": \"72\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"format\": \"int32\",\n - \ \"maximum\": \"8192\"\n }\n },\n \"response\": - {\n \"$ref\": \"VideoListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos\"\n },\n \"insert\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"Video\"\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"274877906944\",\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/videos\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ }\n }\n },\n \"id\": \"youtube.videos.insert\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"path\": \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"parameters\": {\n \"notifySubscribers\": - {\n \"type\": \"boolean\",\n \"description\": \"Notify - the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"location\": \"query\",\n \"default\": - \"true\"\n },\n \"stabilize\": {\n \"location\": - \"query\",\n \"description\": \"Should stabilize be applied to - the upload.\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"id\": \"youtube.subscriptions.list\"\n },\n \"insert\": + {\n \"description\": \"Inserts a new resource into this collection.\",\n + \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.subscriptions.insert\",\n + \ \"response\": {\n \"$ref\": \"Subscription\"\n },\n + \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"path\": + \"youtube/v3/subscriptions\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"request\": {\n \"$ref\": \"Subscription\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n + \ \"repeated\": true,\n \"required\": true,\n \"type\": + \"string\"\n }\n }\n },\n \"delete\": {\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"id\": \"youtube.subscriptions.delete\",\n + \ \"path\": \"youtube/v3/subscriptions\",\n \"description\": + \"Deletes a resource.\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n + \ \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\"\n }\n }\n }\n }\n },\n \"comments\": + {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n + \ \"response\": {\n \"$ref\": \"CommentListResponse\"\n + \ },\n \"parameters\": {\n \"id\": {\n \"description\": + \"Returns the comments with the given IDs for One Platform.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"textFormat\": {\n \"enumDescriptions\": + [\n \"\",\n \"Returns the comments in HTML format. + This is the default value.\",\n \"Returns the comments in plain + text format.\"\n ],\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"default\": \"html\",\n + \ \"description\": \"The requested text format for the returned + comments.\",\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ]\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"type\": \"string\",\n \"description\": \"The + *part* parameter specifies a comma-separated list of one or more comment resource + properties that the API response will include.\",\n \"repeated\": + true,\n \"location\": \"query\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"minimum\": + \"1\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n + \ \"location\": \"query\",\n \"maximum\": \"100\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"default\": + \"20\"\n },\n \"parentId\": {\n \"description\": + \"Returns replies to the specified comment. Note, currently YouTube features + only one level of replies (ie replies to top level comments). However replies + to replies may be supported in the future.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"path\": + \"youtube/v3/comments\",\n \"id\": \"youtube.comments.list\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/comments\"\n },\n \"setModerationStatus\": + {\n \"parameters\": {\n \"moderationStatus\": {\n \"description\": + \"Specifies the requested moderation status. Note, comments can be in statuses, + which are not available through this call. For example, this call does not + allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, + MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ],\n + \ \"enumDescriptions\": [\n \"The comment is available + for public display.\",\n \"The comment is awaiting review by + a moderator.\",\n \"\",\n \"The comment is unfit + for display.\"\n ]\n },\n \"banAuthor\": + {\n \"description\": \"If set to true the author of the comment + gets added to the ban list. This means all future comments of the author will + autmomatically be rejected. Only valid in combination with STATUS_REJECTED.\",\n + \ \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"default\": \"false\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"required\": true,\n \"description\": + \"Modifies the moderation status of the comments with the given IDs\"\n }\n + \ },\n \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n + \ ],\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n + \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.comments.setModerationStatus\",\n + \ \"path\": \"youtube/v3/comments/setModerationStatus\",\n \"description\": + \"Sets the moderation status of one or more comments.\"\n },\n \"delete\": + {\n \"description\": \"Deletes a resource.\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"id\": \"youtube.comments.delete\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/comments\",\n \"httpMethod\": \"DELETE\",\n + \ \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n }\n }\n },\n \"update\": {\n \"description\": + \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": + \"Comment\"\n },\n \"id\": \"youtube.comments.update\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"response\": {\n \"$ref\": \"Comment\"\n },\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"repeated\": true\n }\n + \ },\n \"path\": \"youtube/v3/comments\",\n \"httpMethod\": + \"PUT\",\n \"flatPath\": \"youtube/v3/comments\"\n },\n \"markAsSpam\": + {\n \"description\": \"Expresses the caller's opinion that one or + more comments should be flagged as spam.\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n + \ \"id\": \"youtube.comments.markAsSpam\",\n \"path\": \"youtube/v3/comments/markAsSpam\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\",\n \"repeated\": true,\n \"description\": + \"Flags the comments with the given IDs as spam in the caller's opinion.\"\n + \ }\n },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": + [\n \"id\"\n ]\n },\n \"insert\": {\n \"description\": + \"Inserts a new resource into this collection.\",\n \"request\": + {\n \"$ref\": \"Comment\"\n },\n \"response\": + {\n \"$ref\": \"Comment\"\n },\n \"id\": \"youtube.comments.insert\",\n + \ \"path\": \"youtube/v3/comments\",\n \"parameters\": {\n + \ \"part\": {\n \"required\": true,\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"repeated\": true\n }\n },\n + \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n + \ }\n }\n },\n \"activities\": {\n \"methods\": {\n + \ \"list\": {\n \"httpMethod\": \"GET\",\n \"id\": + \"youtube.activities.list\",\n \"path\": \"youtube/v3/activities\",\n + \ \"flatPath\": \"youtube/v3/activities\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"ActivityListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"parameters\": {\n \"maxResults\": {\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"format\": + \"uint32\",\n \"maximum\": \"50\",\n \"minimum\": + \"0\",\n \"location\": \"query\",\n \"type\": \"integer\",\n + \ \"default\": \"5\"\n },\n \"publishedAfter\": + {\n \"type\": \"string\",\n \"format\": \"google-datetime\",\n + \ \"location\": \"query\"\n },\n \"regionCode\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"channelId\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"mine\": + {\n \"type\": \"boolean\",\n \"location\": \"query\"\n + \ },\n \"home\": {\n \"location\": \"query\",\n + \ \"type\": \"boolean\"\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true,\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"publishedBefore\": + {\n \"format\": \"google-datetime\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n + \ }\n }\n },\n \"playlistItems\": {\n \"methods\": {\n + \ \"update\": {\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"httpMethod\": \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"description\": + \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"id\": \"youtube.playlistItems.update\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"repeated\": true,\n \ \"description\": \"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.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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 + 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.\",\n \"location\": \"query\",\n \"required\": + true\n }\n }\n },\n \"delete\": {\n \"id\": + \"youtube.playlistItems.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Deletes a resource.\",\n \"flatPath\": + \"youtube/v3/playlistItems\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true\n }\n },\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"httpMethod\": \"DELETE\"\n },\n \"list\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"httpMethod\": + \"GET\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"playlistId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Return the playlist items within the given + playlist.\"\n },\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"Return the playlist items associated + with the given video ID.\",\n \"location\": \"query\"\n },\n + \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"autoLevels\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Should auto-levels be applied to the upload.\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/videos\"\n - \ },\n \"rate\": {\n \"parameters\": {\n \"rating\": - {\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"required\": true,\n + owner.\"\n },\n \"maxResults\": {\n \"type\": + \"integer\",\n \"maximum\": \"50\",\n \"location\": + \"query\",\n \"minimum\": \"0\",\n \"default\": + \"5\",\n \"format\": \"uint32\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\"\n },\n \"part\": {\n + \ \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"required\": true,\n \"location\": \"query\"\n + \ },\n \"id\": {\n \"repeated\": true,\n \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.videos.rate\",\n - \ \"description\": \"Adds a like or dislike rating to a video or removes - a rating from a video.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos/rate\",\n \"flatPath\": - \"youtube/v3/videos/rate\",\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ],\n \"httpMethod\": \"POST\"\n - \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n - \ \"set\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ }\n },\n \"description\": \"Retrieves a list + of resources, possibly filtered.\",\n \"id\": \"youtube.playlistItems.list\",\n + \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n + \ }\n },\n \"insert\": {\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\"\n - \ }\n },\n \"mediaUpload\": {\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"2097152\"\n },\n \"flatPath\": - \"youtube/v3/thumbnails/set\",\n \"supportsMediaUpload\": true,\n - \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/thumbnails/set\",\n \"description\": - \"As this is not an insert in a strict sense (it supports uploading/setting - of a thumbnail for multiple videos, which doesn't result in creation of a - single resource), I use a custom verb here.\",\n \"response\": {\n - \ \"$ref\": \"ThumbnailSetResponse\"\n },\n \"id\": - \"youtube.thumbnails.set\"\n }\n }\n },\n \"abuseReports\": - {\n \"methods\": {\n \"insert\": {\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"id\": \"youtube.abuseReports.insert\",\n \"request\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"liveStreams\": {\n \"methods\": {\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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 + \ \"id\": \"youtube.playlistItems.insert\",\n \"request\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"path\": \"youtube/v3/playlistItems\",\n \"httpMethod\": + \"POST\",\n \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n }\n }\n + \ }\n }\n },\n \"playlists\": {\n \"methods\": {\n \"insert\": + {\n \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"default\": - \"5\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"type\": \"integer\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"description\": \"Return - LiveStreams with the given ids from Stubby or Apiary.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": + owner.\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true,\n \"description\": \"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.\",\n \"repeated\": + true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -5435,17 +4874,23 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveStreamListResponse\"\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.list\",\n - \ \"description\": \"Retrieve the list of streams associated with - the given channel. --\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"query\"\n }\n },\n \"description\": \"Inserts + a new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n + \ },\n \"path\": \"youtube/v3/playlists\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"request\": {\n \"$ref\": + \"Playlist\"\n },\n \"flatPath\": \"youtube/v3/playlists\",\n + \ \"id\": \"youtube.playlists.insert\"\n },\n \"list\": + {\n \"httpMethod\": \"GET\",\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": + \"PlaylistListResponse\"\n },\n \"path\": \"youtube/v3/playlists\",\n + \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.playlists.list\",\n \"parameters\": {\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": \"This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* @@ -5460,25 +4905,29 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"description\": \"Deletes an existing stream for the authenticated - user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n + for each separate channel.\"\n },\n \"channelId\": {\n + \ \"description\": \"Return the playlists owned by the specified + channel ID.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": + true\n },\n \"maxResults\": {\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"minimum\": \"0\",\n \"type\": + \"integer\",\n \"location\": \"query\",\n \"default\": + \"5\",\n \"format\": \"uint32\",\n \"maximum\": + \"50\"\n },\n \"pageToken\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \ \"description\": \"*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 @@ -5488,88 +4937,28 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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, content_details, and status.\",\n - \ \"required\": true\n }\n },\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"path\": - \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"update\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Updates an existing stream for - the authenticated user.\",\n \"parameters\": {\n \"part\": + owner.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"description\": \"Return the playlists with the given IDs + for Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"hl\": + {\n \"description\": \"Return content in specified language\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"mine\": {\n \"type\": \"boolean\",\n + \ \"location\": \"query\",\n \"description\": \"Return + the playlists owned by the authenticated user.\"\n }\n }\n + \ },\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"path\": + \"youtube/v3/playlists\",\n \"response\": {\n \"$ref\": + \"Playlist\"\n },\n \"parameters\": {\n \"part\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.update\",\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"watermarks\": {\n \"methods\": {\n \"set\": - {\n \"flatPath\": \"youtube/v3/watermarks/set\",\n \"description\": - \"Allows upload of watermark image and setting it for a channel.\",\n \"id\": - \"youtube.watermarks.set\",\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"supportsMediaUpload\": true,\n \"path\": - \"youtube/v3/watermarks/set\",\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": + 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.\",\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates @@ -5580,19 +4969,20 @@ interactions: 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.\"\n }\n },\n \"mediaUpload\": {\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/watermarks/set\"\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"10485760\",\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"unset\": {\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.watermarks.unset\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively + owner.\"\n }\n },\n \"id\": \"youtube.playlists.update\",\n + \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"request\": {\n \"$ref\": \"Playlist\"\n + \ },\n \"flatPath\": \"youtube/v3/playlists\"\n },\n + \ \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Deletes a resource.\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/playlists\",\n + \ \"path\": \"youtube/v3/playlists\",\n \"parameters\": {\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"description\": \"*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. @@ -5601,103 +4991,451 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"required\": + owner.\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true\n }\n },\n \"id\": + \"youtube.playlists.delete\"\n }\n }\n },\n \"superChatEvents\": + {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"flatPath\": \"youtube/v3/superChatEvents\",\n + \ \"id\": \"youtube.superChatEvents.list\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/superChatEvents\",\n + \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"pageToken\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"default\": + \"5\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"location\": \"query\",\n \"type\": \"integer\",\n + \ \"format\": \"uint32\",\n \"minimum\": \"1\",\n + \ \"maximum\": \"50\"\n },\n \"hl\": {\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Return rendered funding amounts in specified + language.\"\n },\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true,\n \"description\": \"The *part* + parameter specifies the superChatEvent resource parts that the API response + will include. This parameter is currently not supported.\"\n }\n + \ },\n \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n + \ }\n }\n }\n },\n \"membershipsLevels\": {\n \"methods\": + {\n \"list\": {\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n + \ \"description\": \"Retrieves a list of all pricing levels offered + by a creator to the fans.\",\n \"response\": {\n \"$ref\": + \"MembershipsLevelListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/membershipsLevels\",\n + \ \"id\": \"youtube.membershipsLevels.list\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"part\": {\n \"description\": \"The *part* parameter + specifies the membershipsLevel resource parts that the API response will include. + Supported values are id and snippet.\",\n \"required\": true,\n + \ \"location\": \"query\",\n \"repeated\": true,\n + \ \"type\": \"string\"\n }\n }\n }\n + \ }\n },\n \"liveChatMessages\": {\n \"methods\": {\n \"list\": + {\n \"id\": \"youtube.liveChatMessages.list\",\n \"path\": + \"youtube/v3/liveChat/messages\",\n \"response\": {\n \"$ref\": + \"LiveChatMessageListResponse\"\n },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"description\": + \"The *part* parameter specifies the liveChatComment resource parts that the + API response will include. Supported values are id and snippet.\",\n \"required\": true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n - \ \"description\": \"Allows removal of channel watermark.\",\n \"path\": - \"youtube/v3/watermarks/unset\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.channelSections.insert\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + \ },\n \"profileImageSize\": {\n \"maximum\": + \"720\",\n \"location\": \"query\",\n \"format\": + \"uint32\",\n \"description\": \"Specifies the size of the profile + image that should be returned for each user.\",\n \"minimum\": + \"16\",\n \"type\": \"integer\"\n },\n \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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 + \"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.\",\n \"type\": \"string\"\n + \ },\n \"maxResults\": {\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"default\": \"500\",\n \"minimum\": + \"200\",\n \"maximum\": \"2000\",\n \"type\": \"integer\",\n + \ \"location\": \"query\",\n \"format\": \"uint32\"\n + \ },\n \"liveChatId\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"The id of the live chat for which comments + should be returned.\"\n },\n \"hl\": {\n \"type\": + \"string\",\n \"description\": \"Specifies the localization language + in which the system messages should be returned.\",\n \"location\": + \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ]\n },\n \"delete\": {\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes + a chat message.\",\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"id\": \"youtube.liveChatMessages.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n + \ },\n \"insert\": {\n \"id\": \"youtube.liveChatMessages.insert\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/liveChat/messages\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"required\": true\n }\n },\n + \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n },\n + \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"tests\": + {\n \"methods\": {\n \"insert\": {\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"response\": {\n \"$ref\": \"TestItem\"\n },\n + \ \"id\": \"youtube.tests.insert\",\n \"request\": {\n \"$ref\": + \"TestItem\"\n },\n \"path\": \"youtube/v3/tests\",\n \"flatPath\": + \"youtube/v3/tests\",\n \"httpMethod\": \"POST\",\n \"description\": + \"POST method.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\"\n },\n \"externalChannelId\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n }\n }\n }\n },\n \"captions\": + {\n \"methods\": {\n \"download\": {\n \"id\": \"youtube.captions.download\",\n + \ \"path\": \"youtube/v3/captions/{id}\",\n \"useMediaDownloadService\": + true,\n \"supportsMediaDownload\": true,\n \"parameterOrder\": + [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"tfmt\": {\n \"description\": + \"Convert the captions into this format. Supported options are sbv, srt, and + vtt.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"tlang\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"tlang is the language code; machine translate the captions into this language.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n },\n + \ \"id\": {\n \"location\": \"path\",\n \"required\": + true,\n \"type\": \"string\",\n \"description\": + \"The ID of the caption track to download, required for One Platform.\"\n + \ },\n \"onBehalfOf\": {\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\",\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"httpMethod\": \"GET\",\n \"description\": + \"Downloads a caption track.\",\n \"flatPath\": \"youtube/v3/captions/{id}\"\n + \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"description\": \"Deletes a resource.\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*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 perform actions on behalf of the channel specified - in the parameter value, without having to provide authentication credentials - for each separate channel.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively + to authenticate once and get access to all their video and channel data, without + having to provide authentication credentials for each individual channel. + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\"\n },\n \"onBehalfOf\": + {\n \"location\": \"query\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\"\n }\n },\n \"httpMethod\": + \"DELETE\",\n \"path\": \"youtube/v3/captions\",\n \"id\": + \"youtube.captions.delete\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ },\n \"update\": {\n \"description\": \"Updates an + existing resource.\",\n \"mediaUpload\": {\n \"maxSize\": + \"104857600\",\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ],\n \"protocols\": {\n \"simple\": + {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": + true\n },\n \"resumable\": {\n \"path\": + \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": + true\n }\n }\n },\n \"response\": + {\n \"$ref\": \"Caption\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"PUT\",\n \"supportsMediaUpload\": true,\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n + \ \"required\": true\n },\n \"onBehalfOf\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"ID of the Google+ Page for the channel that + the request is on behalf of.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"description\": \"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.\",\n + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"sync\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"description\": + \"Extra parameter to allow automatically syncing the uploaded caption/transcript + with the audio.\"\n }\n },\n \"id\": \"youtube.captions.update\",\n + \ \"path\": \"youtube/v3/captions\",\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"request\": {\n \"$ref\": \"Caption\"\n }\n + \ },\n \"list\": {\n \"description\": \"Retrieves a + list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n + \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n + \ },\n \"path\": \"youtube/v3/captions\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.captions.list\",\n \"parameters\": + {\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"required\": true,\n \"repeated\": true,\n \"type\": + \"string\"\n },\n \"onBehalfOf\": {\n \"description\": + \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n },\n + \ \"id\": {\n \"repeated\": true,\n \"type\": + \"string\",\n \"description\": \"Returns the captions with the + given IDs for Stubby or Apiary.\",\n \"location\": \"query\"\n + \ },\n \"videoId\": {\n \"required\": true,\n + \ \"description\": \"Returns the captions for the specified video.\",\n \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/channelSections\"\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"response\": {\n \"$ref\": - \"ChannelSectionListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.channelSections.list\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"parameters\": {\n \"channelId\": {\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the ChannelSections with the given IDs for Stubby or Apiary.\"\n },\n - \ \"hl\": {\n \"location\": \"query\",\n \"description\": - \"Return content in specified language\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. + \ }\n },\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n + \ ]\n },\n \"insert\": {\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/captions\",\n \"flatPath\": + \"youtube/v3/captions\",\n \"id\": \"youtube.captions.insert\",\n + \ \"parameters\": {\n \"onBehalfOf\": {\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\",\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"description\": \"Return the ChannelSections owned by the - authenticated user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"delete\": {\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"description\": - \"Deletes a resource.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.channelSections.delete\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"description\": \"The *part* parameter specifies the caption + resource parts that the API response will include. Set the parameter value + to snippet.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"sync\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"description\": + \"Extra parameter to allow automatically syncing the uploaded caption/transcript + with the audio.\"\n }\n },\n \"mediaUpload\": + {\n \"maxSize\": \"104857600\",\n \"accept\": [\n \"text/xml\",\n + \ \"application/octet-stream\",\n \"*/*\"\n ],\n + \ \"protocols\": {\n \"resumable\": {\n \"multipart\": + true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n + \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/captions\",\n + \ \"multipart\": true\n }\n }\n },\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"request\": {\n \"$ref\": \"Caption\"\n },\n + \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"Caption\"\n }\n }\n }\n },\n + \ \"members\": {\n \"methods\": {\n \"list\": {\n \"id\": + \"youtube.members.list\",\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"description\": + \"The *part* parameter specifies the member resource parts that the API response + will include. Set the parameter value to snippet.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"hasAccessToLevel\": {\n \"type\": + \"string\",\n \"description\": \"Filter members in the results + set to the ones that have access to a level.\",\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"filterByMemberChannelId\": + {\n \"description\": \"Comma separated list of channel IDs. Only + data about members that are part of this list will be included in the response.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"mode\": {\n \"type\": \"string\",\n + \ \"default\": \"all_current\",\n \"enum\": [\n \"listMembersModeUnknown\",\n + \ \"updates\",\n \"all_current\"\n ],\n + \ \"description\": \"Parameter that specifies which channel members + to return.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return only members that joined after the first call with + this mode was made.\",\n \"Return all current members, from + newest to oldest.\"\n ],\n \"location\": \"query\"\n + \ },\n \"maxResults\": {\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"type\": \"integer\",\n + \ \"minimum\": \"0\",\n \"location\": \"query\",\n + \ \"format\": \"uint32\",\n \"maximum\": \"1000\",\n + \ \"default\": \"5\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"flatPath\": \"youtube/v3/members\",\n \"description\": + \"Retrieves a list of members that match the request criteria for a channel.\",\n + \ \"path\": \"youtube/v3/members\",\n \"response\": {\n \"$ref\": + \"MemberListResponse\"\n }\n }\n }\n },\n \"i18nLanguages\": + {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.i18nLanguages.list\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"path\": + \"youtube/v3/i18nLanguages\",\n \"parameters\": {\n \"hl\": + {\n \"default\": \"en_US\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"part\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"The + *part* parameter specifies the i18nLanguage resource properties that the API + response will include. Set the parameter value to snippet.\",\n \"required\": + true\n }\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n + \ },\n \"httpMethod\": \"GET\"\n }\n }\n },\n + \ \"search\": {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Retrieves + a list of search resources\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.search.list\",\n \"response\": {\n \"$ref\": + \"SearchListResponse\"\n },\n \"flatPath\": \"youtube/v3/search\",\n + \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"forContentOwner\": + {\n \"description\": \"Search owned by a content owner.\",\n + \ \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"q\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Textual + search terms to match.\"\n },\n \"publishedBefore\": + {\n \"description\": \"Filter on resources published before this + date.\",\n \"format\": \"google-datetime\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"location\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Filter on location of the video\"\n },\n + \ \"regionCode\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Display the content as seen by + viewers in this country.\"\n },\n \"type\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"description\": + \"Restrict results to a particular set of resource types from One Platform.\",\n + \ \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"repeated\": + true,\n \"required\": true\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"relatedToVideoId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Search related to a resource.\"\n },\n \"videoLicense\": + {\n \"location\": \"query\",\n \"description\": + \"Filter on the license of the videos.\",\n \"enumDescriptions\": + [\n \"Return all videos, regardless of which license they have, + that match the query parameters.\",\n \"Only return videos + that have the standard YouTube license.\",\n \"Only return + videos that have a Creative Commons license. Users can reuse videos with this + license in other videos that they create. Learn more.\"\n ],\n + \ \"enum\": [\n \"any\",\n \"youtube\",\n + \ \"creativeCommon\"\n ],\n \"type\": + \"string\"\n },\n \"videoCategoryId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Filter on videos in a specific category.\"\n },\n \"videoType\": + {\n \"enum\": [\n \"videoTypeUnspecified\",\n + \ \"any\",\n \"movie\",\n \"episode\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all videos.\",\n \"Only retrieve movies.\",\n + \ \"Only retrieve episodes of shows.\"\n ],\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Filter on videos of a specific type.\"\n },\n \"videoEmbeddable\": + {\n \"type\": \"string\",\n \"description\": \"Filter + on embeddable videos.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all videos, embeddable or not.\",\n \"Only + retrieve embeddable videos.\"\n ],\n \"enum\": [\n + \ \"videoEmbeddableUnspecified\",\n \"any\",\n + \ \"true\"\n ],\n \"location\": \"query\"\n + \ },\n \"maxResults\": {\n \"maximum\": + \"50\",\n \"type\": \"integer\",\n \"minimum\": + \"0\",\n \"format\": \"uint32\",\n \"default\": + \"5\",\n \"location\": \"query\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\"\n },\n \"topicId\": + {\n \"location\": \"query\",\n \"description\": + \"Restrict results to a particular topic.\",\n \"type\": \"string\"\n + \ },\n \"videoDefinition\": {\n \"description\": + \"Filter on the definition of the videos.\",\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"Return + all videos, regardless of their resolution.\",\n \"Only retrieve + videos in standard definition.\",\n \"Only retrieve HD videos.\"\n + \ ],\n \"type\": \"string\",\n \"enum\": + [\n \"any\",\n \"standard\",\n \"high\"\n + \ ]\n },\n \"forDeveloper\": {\n \"location\": + \"query\",\n \"description\": \"Restrict the search to only retrieve + videos uploaded using the project id of the authenticated user.\",\n \"type\": + \"boolean\"\n },\n \"locationRadius\": {\n \"description\": + \"Filter on distance from the location (specified above).\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"channelType\": + {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all channels.\",\n \"Only + retrieve shows.\"\n ],\n \"description\": \"Add + a filter on the channel search.\",\n \"location\": \"query\",\n + \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n + \ \"show\"\n ]\n },\n \"videoCaption\": + {\n \"location\": \"query\",\n \"description\": + \"Filter on the presence of captions on the videos.\",\n \"enumDescriptions\": + [\n \"\",\n \"Do not filter results based on + caption availability.\",\n \"Only include videos that have + captions.\",\n \"Only include videos that do not have captions.\"\n + \ ],\n \"type\": \"string\",\n \"enum\": + [\n \"videoCaptionUnspecified\",\n \"any\",\n + \ \"closedCaption\",\n \"none\"\n ]\n + \ },\n \"videoDimension\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"Include + both 3D and non-3D videos in returned results. This is the default value.\",\n + \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict + search results to only include 3D videos.\"\n ],\n \"enum\": + [\n \"any\",\n \"2d\",\n \"3d\"\n + \ ],\n \"description\": \"Filter on 3d videos.\",\n + \ \"location\": \"query\"\n },\n \"videoDuration\": + {\n \"type\": \"string\",\n \"enum\": [\n \"videoDurationUnspecified\",\n + \ \"any\",\n \"short\",\n \"medium\",\n + \ \"long\"\n ],\n \"description\": + \"Filter on the duration of the videos.\",\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Do + not filter video search results based on their duration. This is the default + value.\",\n \"Only include videos that are less than four minutes + long.\",\n \"Only include videos that are between four and + 20 minutes long (inclusive).\",\n \"Only include videos longer + than 20 minutes.\"\n ]\n },\n \"eventType\": + {\n \"enumDescriptions\": [\n \"\",\n \"The + live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n + \ \"The live broadcast has been completed.\"\n ],\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ],\n + \ \"description\": \"Filter on the livestream status of the videos.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -5707,17 +5445,206 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"path\": - \"youtube/v3/channelSections\"\n },\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"description\": \"Updates an - existing resource.\",\n \"path\": \"youtube/v3/channelSections\",\n + \"string\",\n \"location\": \"query\"\n },\n \"relevanceLanguage\": + {\n \"type\": \"string\",\n \"description\": \"Return + results relevant to this language.\",\n \"location\": \"query\"\n + \ },\n \"safeSearch\": {\n \"description\": + \"Indicates whether the search results should include restricted content as + well as standard content.\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n + \ \"none\",\n \"moderate\",\n \"strict\"\n + \ ],\n \"type\": \"string\",\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"YouTube will not filter the search result set.\",\n \"YouTube + will filter some content from search results and, at the least, will filter + content that is restricted in your locale. Based on their content, search + results could be removed from search results or demoted in search results. + This is the default parameter value.\",\n \"YouTube will try + to exclude all restricted content from the search result set. Based on their + content, search results could be removed from search results or demoted in + search results.\"\n ],\n \"default\": \"moderate\"\n + \ },\n \"videoSyndicated\": {\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all videos, syndicated or not.\",\n \"Only + retrieve syndicated videos.\"\n ],\n \"enum\": [\n + \ \"videoSyndicatedUnspecified\",\n \"any\",\n + \ \"true\"\n ],\n \"description\": + \"Filter on syndicated videos.\",\n \"type\": \"string\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"Filter on resources belonging to this channelId.\",\n \"location\": + \"query\"\n },\n \"forMine\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"description\": + \"Search for the private videos of the authenticated user.\"\n },\n + \ \"publishedAfter\": {\n \"description\": \"Filter + on resources published after this date.\",\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"format\": \"google-datetime\"\n + \ },\n \"order\": {\n \"description\": \"Sort + order of the results.\",\n \"type\": \"string\",\n \"enum\": + [\n \"searchSortUnspecified\",\n \"date\",\n + \ \"rating\",\n \"viewCount\",\n \"relevance\",\n + \ \"title\",\n \"videoCount\"\n ],\n + \ \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Resources are sorted in reverse + chronological order based on the date they were created.\",\n \"Resources + are sorted from highest to lowest rating.\",\n \"Resources + are sorted from highest to lowest number of views.\",\n \"Resources + are sorted based on their relevance to the search query. This is the default + value for this parameter.\",\n \"Resources are sorted alphabetically + by title.\",\n \"Channels are sorted in descending order of + their number of uploaded videos.\"\n ],\n \"default\": + \"relevance\"\n }\n },\n \"path\": \"youtube/v3/search\"\n + \ }\n }\n },\n \"liveChatBans\": {\n \"methods\": {\n + \ \"delete\": {\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n + \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.liveChatBans.delete\",\n + \ \"description\": \"Deletes a chat ban.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"parameters\": {\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n }\n },\n + \ \"insert\": {\n \"path\": \"youtube/v3/liveChat/bans\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Inserts a new resource into this collection.\",\n \"flatPath\": + \"youtube/v3/liveChat/bans\",\n \"id\": \"youtube.liveChatBans.insert\",\n + \ \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true,\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n + \ },\n \"response\": {\n \"$ref\": \"LiveChatBan\"\n + \ },\n \"httpMethod\": \"POST\",\n \"request\": + {\n \"$ref\": \"LiveChatBan\"\n }\n }\n }\n + \ },\n \"videos\": {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"parameters\": {\n \"maxResults\": {\n \"default\": + \"5\",\n \"type\": \"integer\",\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"maximum\": \"50\",\n \"minimum\": + \"1\",\n \"format\": \"uint32\"\n },\n \"id\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"description\": \"Return videos with the given ids.\",\n \"location\": + \"query\"\n },\n \"hl\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Stands for \\\"host language\\\". Specifies the localization language of + the metadata to be filled into snippet.localized. The field is filled with + the default metadata if there is no localization in the specified language. + The parameter value must be a language code included in the list returned + by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n },\n + \ \"maxHeight\": {\n \"format\": \"int32\",\n \"location\": + \"query\",\n \"type\": \"integer\",\n \"maximum\": + \"8192\",\n \"minimum\": \"72\"\n },\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"description\": \"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.\",\n + \ \"location\": \"query\"\n },\n \"myRating\": + {\n \"type\": \"string\",\n \"description\": \"Return + videos liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n + \ \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The entity is liked.\",\n \"The entity is + disliked.\"\n ]\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"videoCategoryId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Use chart that is specific to the specified video category\",\n \"default\": + \"0\"\n },\n \"locale\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"chart\": + {\n \"enum\": [\n \"chartUnspecified\",\n \"mostPopular\"\n + \ ],\n \"description\": \"Return the videos that + are in the specified chart.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Return the most popular videos + for the specified content region and video category.\"\n ],\n + \ \"location\": \"query\"\n },\n \"regionCode\": + {\n \"location\": \"query\",\n \"description\": + \"Use a chart that is specific to the specified region\",\n \"type\": + \"string\"\n },\n \"pageToken\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n + \ },\n \"maxWidth\": {\n \"location\": \"query\",\n + \ \"description\": \"Return the player with maximum height specified + in\",\n \"minimum\": \"72\",\n \"maximum\": \"8192\",\n + \ \"format\": \"int32\",\n \"type\": \"integer\"\n + \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"VideoListResponse\"\n },\n + \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.videos.list\",\n + \ \"path\": \"youtube/v3/videos\",\n \"description\": \"Retrieves + a list of resources, possibly filtered.\"\n },\n \"delete\": + {\n \"path\": \"youtube/v3/videos\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"description\": \"Deletes + a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"id\": + \"youtube.videos.delete\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\"\n },\n + \ \"id\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"rate\": {\n \"parameters\": {\n \"id\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"rating\": + {\n \"required\": true,\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"location\": \"query\",\n + \ \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"type\": \"string\"\n + \ }\n },\n \"flatPath\": \"youtube/v3/videos/rate\",\n + \ \"id\": \"youtube.videos.rate\",\n \"httpMethod\": \"POST\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": + \ ],\n \"parameterOrder\": [\n \"id\",\n \"rating\"\n + \ ],\n \"description\": \"Adds a like or dislike rating to + a video or removes a rating from a video.\",\n \"path\": \"youtube/v3/videos/rate\"\n + \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"mediaUpload\": + {\n \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n + \ ],\n \"protocols\": {\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": + true\n },\n \"simple\": {\n \"path\": + \"/upload/youtube/v3/videos\",\n \"multipart\": true\n }\n + \ },\n \"maxSize\": \"274877906944\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"request\": {\n \"$ref\": \"Video\"\n },\n + \ \"flatPath\": \"youtube/v3/videos\",\n \"id\": \"youtube.videos.insert\",\n + \ \"response\": {\n \"$ref\": \"Video\"\n },\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"*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 @@ -5726,78 +5653,51 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n + be linked to the specified YouTube content owner.\"\n },\n \"stabilize\": + {\n \"location\": \"query\",\n \"type\": \"boolean\",\n + \ \"description\": \"Should stabilize be applied to the upload.\"\n + \ },\n \"part\": {\n \"required\": true,\n \ \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"flatPath\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.update\"\n }\n }\n },\n \"membershipsLevels\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"part\": {\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"description\": \"Retrieves a list of all pricing - levels offered by a creator to the fans.\",\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"id\": \"youtube.membershipsLevels.list\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/membershipsLevels\"\n }\n - \ }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": {\n - \ \"list\": {\n \"parameters\": {\n \"hl\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"en-US\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the videoCategory resource parts that the API response - will include. Supported values are id and snippet.\",\n \"required\": - true\n }\n },\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"liveChatBans\": {\n \"methods\": - {\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.liveChatBans.delete\",\n \"description\": - \"Deletes a chat ban.\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ]\n - \ },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"transition\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + 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.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n + \ \"autoLevels\": {\n \"type\": \"boolean\",\n \"description\": + \"Should auto-levels be applied to the upload.\",\n \"location\": + \"query\"\n },\n \"notifySubscribers\": {\n \"type\": + \"boolean\",\n \"default\": \"true\",\n \"location\": + \"query\",\n \"description\": \"Notify the channel subscribers + about the new video. As default, the notification is enabled.\"\n }\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"supportsMediaUpload\": true,\n \"path\": \"youtube/v3/videos\"\n + \ },\n \"reportAbuse\": {\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n + \ \"id\": \"youtube.videos.reportAbuse\",\n \"path\": \"youtube/v3/videos/reportAbuse\",\n + \ \"parameterOrder\": [],\n \"request\": {\n \"$ref\": + \"VideoAbuseReport\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Report abuse for a video.\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"*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 @@ -5806,109 +5706,48 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Broadcast to transition.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"broadcastStatus\": - {\n \"enum\": [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"required\": true,\n \"description\": \"The status - to which the broadcast is going to transition.\",\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"description\": - \"Transition a broadcast to a given status.\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"broadcastStatus\",\n - \ \"id\",\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"path\": - \"youtube/v3/liveBroadcasts/transition\"\n },\n \"delete\": - {\n \"id\": \"youtube.liveBroadcasts.delete\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Delete a given broadcast.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Broadcast to delete.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"update\": {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": + be linked to the specified YouTube content owner.\"\n }\n },\n + \ \"httpMethod\": \"POST\"\n },\n \"update\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/videos\",\n \"id\": \"youtube.videos.update\",\n \"flatPath\": + \"youtube/v3/videos\",\n \"response\": {\n \"$ref\": \"Video\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": true,\n \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + 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.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n }\n },\n \"description\": + \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": + \"Video\"\n },\n \"httpMethod\": \"PUT\"\n },\n \"getRating\": + {\n \"id\": \"youtube.videos.getRating\",\n \"parameters\": + {\n \"id\": {\n \"location\": \"query\",\n \"repeated\": + true,\n \"type\": \"string\",\n \"required\": true\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -5917,17 +5756,97 @@ interactions: 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.\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Updates an existing broadcast for the authenticated user.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"id\": - \"youtube.liveBroadcasts.update\"\n },\n \"insertCuepoint\": - {\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"parameters\": + be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/videos/getRating\",\n \"response\": + {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"parameterOrder\": + [\n \"id\"\n ],\n \"description\": \"Retrieves + the ratings that the authorized user gave to a list of specified videos.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/videos/getRating\"\n + \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": + {\n \"delete\": {\n \"parameterOrder\": [\n \"linkingToken\",\n + \ \"type\"\n ],\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": + \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"id\": + \"youtube.thirdPartyLinks.delete\",\n \"parameters\": {\n \"type\": + {\n \"location\": \"query\",\n \"description\": + \"Type of the link to be deleted.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"A + link that is connecting (or about to connect) a channel with a store on a + merchandising platform in order to enable retail commerce capabilities for + that channel on YouTube.\"\n ],\n \"enum\": [\n + \ \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"required\": true\n },\n \"externalChannelId\": + {\n \"type\": \"string\",\n \"description\": \"Channel + ID to which changes should be applied, for delegation.\",\n \"location\": + \"query\"\n },\n \"linkingToken\": {\n \"required\": + true,\n \"description\": \"Delete the partner links with the + given linking token.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"Do not use. Required for compatibility.\",\n + \ \"repeated\": true,\n \"type\": \"string\"\n }\n + \ }\n },\n \"list\": {\n \"response\": {\n + \ \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"path\": + \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": + {\n \"linkingToken\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Get + a third party link with the given linking token.\"\n },\n \"externalChannelId\": + {\n \"location\": \"query\",\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\"\n },\n \"type\": {\n \"enum\": + [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel + with a store on a merchandising platform in order to enable retail commerce + capabilities for that channel on YouTube.\"\n ],\n \"description\": + \"Get a third party link of the given type.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"description\": \"The *part* parameter specifies the thirdPartyLink + resource parts that the API response will include. Supported values are linkingToken, + status, and snippet.\",\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"id\": \"youtube.thirdPartyLinks.list\"\n },\n \"insert\": + {\n \"id\": \"youtube.thirdPartyLinks.insert\",\n \"request\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"httpMethod\": + \"POST\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Inserts + a new resource into this collection.\",\n \"response\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"required\": + true,\n \"description\": \"The *part* parameter specifies the + thirdPartyLink resource parts that the API request and response will include. + Supported values are linkingToken, status, and snippet.\",\n \"type\": + \"string\"\n },\n \"externalChannelId\": {\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n }\n + \ },\n \"update\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": + \"PUT\",\n \"description\": \"Updates an existing resource.\",\n + \ \"parameters\": {\n \"part\": {\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API request and response will include. Supported values are linkingToken, + status, and snippet.\",\n \"type\": \"string\",\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\"\n + \ },\n \"externalChannelId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\"\n }\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"id\": \"youtube.thirdPartyLinks.update\",\n \"request\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"response\": + {\n \"$ref\": \"ThirdPartyLink\"\n }\n }\n }\n + \ },\n \"thumbnails\": {\n \"methods\": {\n \"set\": {\n + \ \"flatPath\": \"youtube/v3/thumbnails/set\",\n \"supportsMediaUpload\": + true,\n \"description\": \"As this is not an insert in a strict sense + (it supports uploading/setting of a thumbnail for multiple videos, which doesn't + result in creation of a single resource), I use a custom verb here.\",\n \"httpMethod\": + \"POST\",\n \"id\": \"youtube.thumbnails.set\",\n \"response\": + {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. @@ -5937,66 +5856,128 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwnerChannel\": + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\"\n },\n + \ \"videoId\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"Returns the Thumbnail with the + given video IDs for Stubby or Apiary.\",\n \"required\": true\n + \ }\n },\n \"path\": \"youtube/v3/thumbnails/set\",\n + \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": + {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n + \ },\n \"resumable\": {\n \"path\": + \"/resumable/upload/youtube/v3/thumbnails/set\",\n \"multipart\": + true\n }\n },\n \"accept\": [\n \"image/jpeg\",\n + \ \"image/png\",\n \"application/octet-stream\"\n + \ ],\n \"maxSize\": \"2097152\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"videoId\"\n ]\n + \ }\n }\n },\n \"videoCategories\": {\n \"methods\": + {\n \"list\": {\n \"id\": \"youtube.videoCategories.list\",\n + \ \"flatPath\": \"youtube/v3/videoCategories\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"VideoCategoryListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"regionCode\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"The *part* parameter specifies the videoCategory + resource properties that the API response will include. Set the parameter + value to snippet.\"\n },\n \"id\": {\n \"description\": + \"Returns the video categories with the given IDs for Stubby or Apiary.\",\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true\n },\n \"hl\": {\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"default\": \"en-US\"\n }\n },\n \"httpMethod\": + \"GET\",\n \"path\": \"youtube/v3/videoCategories\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\"\n }\n }\n + \ },\n \"channelSections\": {\n \"methods\": {\n \"delete\": + {\n \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"id\": \"youtube.channelSections.delete\",\n + \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/channelSections\",\n + \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Broadcast to insert ads to, - or equivalently `external_video_id` for internal use.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Insert cuepoints in a broadcast\",\n \"request\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"parameterOrder\": [],\n \"response\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"description\": \"*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.\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"bind\": {\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Bind a broadcast - to a stream.\",\n \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ ]\n },\n \"list\": {\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": + {\n \"id\": {\n \"repeated\": true,\n \"description\": + \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"hl\": + {\n \"location\": \"query\",\n \"description\": + \"Return content in specified language\",\n \"type\": \"string\"\n + \ },\n \"mine\": {\n \"location\": \"query\",\n + \ \"description\": \"Return the ChannelSections owned by the authenticated + user.\",\n \"type\": \"boolean\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n \ \"required\": true,\n \"description\": \"The *part* - parameter specifies a comma-separated list of one or more liveBroadcast resource + 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, contentDetails, and status.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + 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.\",\n \"repeated\": + true\n },\n \"channelId\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Broadcast - to bind to the stream\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"streamId\": {\n \"description\": - \"Stream to bind, if not set unbind the current one.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n + \"Return the ChannelSections owned by the specified channel ID.\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/channelSections\",\n \"response\": + {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"path\": + \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.channelSections.list\"\n },\n \"insert\": + {\n \"description\": \"Inserts a new resource into this collection.\",\n + \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n + \ \"id\": \"youtube.channelSections.insert\",\n \"path\": + \"youtube/v3/channelSections\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"flatPath\": + \"youtube/v3/channelSections\",\n \"response\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"parameters\": {\n \"part\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"description\": \"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.\",\n + \ \"repeated\": true,\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n \ \"description\": \"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 @@ -6011,191 +5992,204 @@ interactions: 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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"list\": - {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"format\": - \"uint32\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"broadcastType\": {\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"default\": \"event\",\n \"type\": - \"string\",\n \"description\": \"Return only broadcasts with - the selected type.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ]\n },\n \"mine\": {\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"part\": {\n \"description\": \"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, status - and statistics.\",\n \"type\": \"string\",\n \"required\": + for each separate channel.\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ },\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"id\": \"youtube.channelSections.update\",\n \"flatPath\": + \"youtube/v3/channelSections\",\n \"description\": \"Updates an existing + resource.\",\n \"request\": {\n \"$ref\": \"ChannelSection\"\n + \ },\n \"response\": {\n \"$ref\": \"ChannelSection\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"required\": true,\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"broadcastStatus\": {\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"description\": \"Return broadcasts with - a certain status, e.g. active broadcasts.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ]\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Return broadcasts with the given ids - from Stubby or Apiary.\"\n }\n },\n \"id\": \"youtube.liveBroadcasts.list\",\n + true,\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n }\n },\n \"httpMethod\": \"PUT\",\n + \ \"path\": \"youtube/v3/channelSections\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"update\": + {\n \"response\": {\n \"$ref\": \"Channel\"\n },\n + \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": + \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"repeated\": + true,\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n }\n + \ },\n \"request\": {\n \"$ref\": \"Channel\"\n + \ },\n \"flatPath\": \"youtube/v3/channels\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/channels\",\n + \ \"id\": \"youtube.channels.update\"\n },\n \"list\": + {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/channels\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n + \ ],\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Retrieve the list of broadcasts associated with - the given channel.\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"GET\"\n },\n \"insert\": {\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + \ \"path\": \"youtube/v3/channels\",\n \"parameters\": {\n + \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"maxResults\": + {\n \"location\": \"query\",\n \"minimum\": \"0\",\n + \ \"default\": \"5\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"maximum\": \"50\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\"\n },\n + \ \"id\": {\n \"repeated\": true,\n \"location\": + \"query\",\n \"description\": \"Return the channels with the + specified IDs.\",\n \"type\": \"string\"\n },\n \"forUsername\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n - \ },\n \"id\": \"youtube.liveBroadcasts.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": + \ \"description\": \"Return the channel associated with a YouTube + username.\"\n },\n \"hl\": {\n \"location\": + \"query\",\n \"description\": \"Stands for \\\"host language\\\". + Specifies the localization language of the metadata to be filled into snippet.localized. + The field is filled with the default metadata if there is no localization + in the specified language. The parameter value must be a language code included + in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n + \ \"type\": \"string\"\n },\n \"mySubscribers\": + {\n \"description\": \"Return the channels subscribed to the + authenticated user\",\n \"type\": \"boolean\",\n \"location\": + \"query\"\n },\n \"mine\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"description\": + \"Return the ids of channels owned by the authenticated user.\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"categoryId\": + {\n \"type\": \"string\",\n \"description\": \"Return + the channels within the specified guide category ID.\",\n \"location\": + \"query\"\n },\n \"managedByMe\": {\n \"type\": + \"boolean\",\n \"description\": \"Return the channels managed + by the authenticated user.\",\n \"location\": \"query\"\n }\n + \ },\n \"id\": \"youtube.channels.list\"\n }\n }\n + \ },\n \"videoAbuseReportReasons\": {\n \"methods\": {\n \"list\": + {\n \"httpMethod\": \"GET\",\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"The *part* + parameter specifies the videoCategory resource parts that the API response + will include. Supported values are id and snippet.\",\n \"location\": + \"query\"\n },\n \"hl\": {\n \"default\": + \"en-US\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n + \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"flatPath\": + \"youtube/v3/videoAbuseReportReasons\",\n \"response\": {\n \"$ref\": + \"VideoAbuseReportReasonListResponse\"\n }\n }\n }\n + \ },\n \"watermarks\": {\n \"methods\": {\n \"unset\": {\n + \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"httpMethod\": + \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"channelId\": {\n + \ \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n }\n },\n \"parameterOrder\": [\n \"channelId\"\n + \ ],\n \"id\": \"youtube.watermarks.unset\",\n \"path\": + \"youtube/v3/watermarks/unset\",\n \"description\": \"Allows removal + of channel watermark.\"\n },\n \"set\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"mediaUpload\": {\n \"protocols\": {\n + \ \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n + \ \"multipart\": true\n },\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n + \ }\n },\n \"maxSize\": \"10485760\",\n + \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ]\n },\n + \ \"description\": \"Allows upload of watermark image and setting + it for a channel.\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": + [\n \"channelId\"\n ],\n \"path\": \"youtube/v3/watermarks/set\",\n + \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"parameters\": + {\n \"channelId\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"request\": {\n \"$ref\": + \"InvideoBranding\"\n },\n \"id\": \"youtube.watermarks.set\",\n + \ \"supportsMediaUpload\": true\n }\n }\n },\n \"abuseReports\": + {\n \"methods\": {\n \"insert\": {\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n }\n + \ },\n \"path\": \"youtube/v3/abuseReports\",\n \"response\": + {\n \"$ref\": \"AbuseReport\"\n },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts\"\n }\n }\n },\n - \ \"tests\": {\n \"methods\": {\n \"insert\": {\n \"flatPath\": - \"youtube/v3/tests\",\n \"id\": \"youtube.tests.insert\",\n \"request\": - {\n \"$ref\": \"TestItem\"\n },\n \"description\": - \"POST method.\",\n \"path\": \"youtube/v3/tests\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n }\n }\n }\n }\n },\n \"auth\": {\n - \ \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n }\n }\n }\n },\n \"batchPath\": \"batch\",\n - \ \"fullyEncodeReservedExpansion\": true,\n \"description\": \"The YouTube - Data API v3 is an API that provides access to YouTube data, such as videos, - playlists, and channels.\",\n \"id\": \"youtube:v3\",\n \"ownerDomain\": - \"google.com\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"documentationLink\": - \"https://developers.google.com/youtube/\",\n \"kind\": \"discovery#restDescription\",\n - \ \"protocol\": \"rest\",\n \"servicePath\": \"\",\n \"discoveryVersion\": - \"v1\",\n \"version\": \"v3\",\n \"canonicalName\": \"YouTube\",\n \"revision\": - \"20230131\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"parameters\": {\n \"fields\": {\n \"description\": \"Selector - specifying which fields to include in a partial response.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"key\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": \"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.\"\n },\n - \ \"oauth_token\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"OAuth 2.0 token for the current user.\"\n },\n - \ \"access_token\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"OAuth access token.\"\n },\n \"$.xgafv\": - {\n \"description\": \"V1 error format.\",\n \"enum\": [\n \"1\",\n - \ \"2\"\n ],\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"v1 error format\",\n \"v2 - error format\"\n ]\n },\n \"quotaUser\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"prettyPrint\": {\n \"type\": \"boolean\",\n \"default\": \"true\",\n - \ \"location\": \"query\",\n \"description\": \"Returns response - with indentations and line breaks.\"\n },\n \"upload_protocol\": {\n - \ \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"uploadType\": - {\n \"location\": \"query\",\n \"description\": \"Legacy upload - protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"type\": - \"string\"\n },\n \"alt\": {\n \"enum\": [\n \"json\",\n - \ \"media\",\n \"proto\"\n ],\n \"type\": \"string\",\n - \ \"default\": \"json\",\n \"enumDescriptions\": [\n \"Responses - with Content-Type of application/json\",\n \"Media download with context-dependent - Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n - \ ],\n \"location\": \"query\",\n \"description\": \"Data format - for response.\"\n },\n \"callback\": {\n \"location\": \"query\",\n - \ \"description\": \"JSONP\",\n \"type\": \"string\"\n }\n },\n - \ \"basePath\": \"\"\n}\n" + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.abuseReports.insert\",\n \"flatPath\": + \"youtube/v3/abuseReports\",\n \"request\": {\n \"$ref\": + \"AbuseReport\"\n },\n \"description\": \"Inserts a new + resource into this collection.\"\n }\n }\n }\n }\n}\n" headers: Alt-Svc: - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 @@ -6206,7 +6200,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:47 GMT + - Thu, 09 Mar 2023 00:27:09 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: @@ -6265,7 +6259,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:47 GMT + - Thu, 09 Mar 2023 00:27:10 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: @@ -6295,724 +6289,621 @@ interactions: uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest response: body: - string: "{\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"ownerName\": - \"Google\",\n \"protocol\": \"rest\",\n \"discoveryVersion\": \"v1\",\n - \ \"ownerDomain\": \"google.com\",\n \"kind\": \"discovery#restDescription\",\n - \ \"title\": \"YouTube Data API v3\",\n \"schemas\": {\n \"I18nRegionSnippet\": - {\n \"description\": \"Basic details about an i18n region, such as region - code and human-readable name.\",\n \"id\": \"I18nRegionSnippet\",\n \"properties\": - {\n \"name\": {\n \"type\": \"string\",\n \"description\": - \"The human-readable name of the region.\"\n },\n \"gl\": {\n - \ \"description\": \"The region code as a 2-letter ISO country code.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ContentRating\": {\n \"type\": \"object\",\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\",\n \"properties\": {\n \"fpbRatingReasons\": - {\n \"type\": \"array\",\n \"description\": \"Reasons that - explain why the video received its FPB (South Africa) rating.\",\n \"items\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ]\n }\n - \ },\n \"cncRating\": {\n \"description\": \"Rating - system in France - Commission de classification cinematographique\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"nfvcbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ]\n },\n \"kijkwijzerRating\": - {\n \"description\": \"The video's NICAM/Kijkwijzer rating from the - Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\",\n - \ \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ]\n },\n \"anatelRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"description\": \"The video's Anatel - (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ]\n },\n - \ \"mpaaRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n - \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n - \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n - \ ],\n \"description\": \"The video's Motion Picture Association - of America (MPAA) rating.\"\n },\n \"rtcRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n - \ \"D\",\n \"\"\n ],\n \"enum\": [\n - \ \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ],\n \"description\": \"The - video's General Directorate of Radio, Television and Cinematography (Mexico) - rating.\"\n },\n \"ytRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"A rating that YouTube uses to identify - age-restricted content.\"\n },\n \"ilfilmRating\": {\n \"description\": - \"The video's rating in Israel.\",\n \"type\": \"string\",\n \"enum\": - [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n - \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"rcnofRating\": {\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ],\n \"description\": \"The - video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n + string: "{\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"mtlsRootUrl\": + \"https://youtube.mtls.googleapis.com/\",\n \"discoveryVersion\": \"v1\",\n + \ \"servicePath\": \"\",\n \"basePath\": \"\",\n \"name\": \"youtube\",\n + \ \"title\": \"YouTube Data API v3\",\n \"auth\": {\n \"oauth2\": {\n + \ \"scopes\": {\n \"https://www.googleapis.com/auth/youtube\": + {\n \"description\": \"Manage your YouTube account\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": + \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": + {\n \"description\": \"See a list of your current active channel + members, their current level, and when they became a member\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": + \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": + {\n \"description\": \"View and manage your assets and associated + content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": + {\n \"description\": \"See, edit, and permanently delete your YouTube + videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": + {\n \"description\": \"View private information of your YouTube channel + relevant during the audit process with a YouTube partner\"\n }\n }\n + \ }\n },\n \"schemas\": {\n \"LiveChatFanFundingEventDetails\": {\n + \ \"id\": \"LiveChatFanFundingEventDetails\",\n \"properties\": {\n + \ \"userComment\": {\n \"description\": \"The comment added + by the user to this fan funding event.\",\n \"type\": \"string\"\n + \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the fund was made.\"\n },\n \"amountMicros\": + {\n \"description\": \"The amount of the fund.\",\n \"type\": + \"string\",\n \"format\": \"uint64\"\n },\n \"amountDisplayString\": + {\n \"description\": \"A rendered string that displays the fund amount + and currency to the user.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"ImageSettings\": {\n \"id\": + \"ImageSettings\",\n \"description\": \"Branding properties for images + associated with the channel.\",\n \"type\": \"object\",\n \"properties\": + {\n \"backgroundImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n + \ \"description\": \"The URL for the background image shown on the + video watch page. The image should be 1200px by 615px, with a maximum file + size of 128k.\"\n },\n \"bannerTabletExtraHdImageUrl\": {\n + \ \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size extra high resolution (2560x424).\"\n },\n \"bannerTabletImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size (1707x283).\"\n },\n \"smallBrandedBannerImageImapScript\": + {\n \"description\": \"The image map script for the small banner + image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Desktop size (1060x175).\"\n },\n \"bannerTvHighImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size high resolution (1920x1080).\"\n },\n \"bannerMobileMediumHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size medium/high resolution (960x263).\"\n },\n \"bannerMobileExtraHdImageUrl\": + {\n \"description\": \"Banner image. Mobile size high resolution + (1440x395).\",\n \"type\": \"string\"\n },\n \"bannerMobileHdImageUrl\": + {\n \"description\": \"Banner image. Mobile size high resolution + (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerTvImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size extra high resolution (2120x1192).\"\n },\n \"bannerTvLowImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size low resolution (854x480).\"\n },\n \"bannerTvMediumImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size medium resolution (1280x720).\"\n },\n \"largeBrandedBannerImageUrl\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The URL for the 854px by 70px image that appears below the video player + in the expanded video view of the video watch page.\"\n },\n \"bannerTabletHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size high resolution (2276x377).\"\n },\n \"bannerTabletLowImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size low resolution (1138x188).\"\n },\n \"smallBrandedBannerImageUrl\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The URL for the 640px by 70px banner image that appears below the video + player in the default view of the video watch page. The URL for the image + that appears above the top-left corner of the video player. This is a 25-pixel-high + image with a flexible width that cannot exceed 170 pixels.\"\n },\n + \ \"bannerExternalUrl\": {\n \"type\": \"string\",\n \"description\": + \"This is generated when a ChannelBanner.Insert request has succeeded for + the given channel.\"\n },\n \"trackingImageUrl\": {\n \"description\": + \"The URL for a 1px by 1px tracking pixel that can be used to collect statistics + for views of the channel or video pages.\",\n \"type\": \"string\"\n + \ },\n \"bannerMobileLowImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"Banner image. Mobile size low resolution (320x88).\"\n + \ },\n \"bannerMobileImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"Banner image. Mobile size (640x175).\"\n },\n + \ \"largeBrandedBannerImageImapScript\": {\n \"$ref\": \"LocalizedProperty\",\n + \ \"description\": \"The image map script for the large banner image.\"\n + \ },\n \"watchIconImageUrl\": {\n \"type\": \"string\"\n + \ }\n }\n },\n \"MemberListResponse\": {\n \"type\": + \"object\",\n \"id\": \"MemberListResponse\",\n \"properties\": + {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#memberListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"Member\"\n + \ },\n \"type\": \"array\",\n \"description\": \"A + list of members that match the request criteria.\"\n }\n }\n },\n + \ \"LiveStreamStatus\": {\n \"type\": \"object\",\n \"properties\": + {\n \"streamStatus\": {\n \"enumDescriptions\": [\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"rteRating\": {\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ],\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"egfilmRating\": - {\n \"description\": \"The video's rating in Egypt.\",\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n \"egfilm18\",\n - \ \"egfilmBn\",\n \"egfilmUnrated\"\n ]\n },\n - \ \"djctqRating\": {\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ],\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"mocRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ],\n \"description\": \"The video's Ministerio de Cultura - (Colombia) rating.\",\n \"enum\": [\n \"mocUnspecified\",\n - \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n - \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"cccRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\"\n - \ },\n \"csaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ],\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ],\n \"description\": \"The video's rating from France's - Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\",\n - \ \"type\": \"string\"\n },\n \"djctqRatingReasons\": - {\n \"type\": \"array\",\n \"description\": \"Reasons that - explain why the video received its DJCQT (Brazil) rating.\",\n \"items\": - {\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ]\n }\n },\n - \ \"pefilmRating\": {\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"PT\",\n - \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Peru.\"\n - \ },\n \"czfilmRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"czfilmUnspecified\",\n \"czfilmU\",\n \"czfilm12\",\n - \ \"czfilm14\",\n \"czfilm18\",\n \"czfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in the Czech - Republic.\",\n \"type\": \"string\"\n },\n \"cbfcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ],\n \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n - \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n - \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n - \ \"cbfcUnrated\"\n ],\n \"description\": \"The - video's Central Board of Film Certification (CBFC - India) rating.\",\n \"type\": - \"string\"\n },\n \"cceRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"4\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\",\n \"14\"\n ],\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ]\n },\n \"kfcbRating\": {\n - \ \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n - \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n - \ \"kfcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"type\": - \"string\"\n },\n \"resorteviolenciaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ],\n \"description\": - \"The video's rating in Venezuela.\",\n \"type\": \"string\",\n \"enum\": - [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ]\n },\n \"mccaaRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Malta's Film Age-Classification Board.\",\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ]\n },\n \"nkclvRating\": {\n \"enum\": [\n - \ \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n - \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n - \ \"nkclvUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\"\n - \ },\n \"mcstRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating system for Vietnam - MCST\",\n \"enum\": [\n - \ \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ]\n },\n \"mdaRating\": {\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ],\n \"enum\": - [\n \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n - \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n - \ \"mdaR21\",\n \"mdaUnrated\"\n ]\n },\n - \ \"mpaatRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"GB\",\n \"RB\"\n ],\n \"description\": - \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ]\n },\n - \ \"catvRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n - \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n - \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n - \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n - \ \"catvE\"\n ],\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"incaaRating\": {\n \"description\": \"The video's - INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.\",\n - \ \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n - \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n - \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"cnaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"description\": - \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\"\n },\n \"cscfRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\",\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ]\n },\n - \ \"smsaRating\": {\n \"description\": \"The video's rating - from Statens medier\xE5d (Sweden's National Media Council).\",\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"enum\": [\n - \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"acbRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"acbUnspecified\",\n - \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n - \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n - \ \"acbR18plus\",\n \"acbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"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.\"\n },\n - \ \"eirinRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG-12\",\n \"R15+\",\n \"R18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ],\n - \ \"description\": \"The video's Eirin (\u6620\u502B) rating. Eirin - is the Japanese rating system.\",\n \"type\": \"string\"\n },\n - \ \"tvpgRating\": {\n \"description\": \"The video's TV Parental - Guidelines (TVPG) rating.\",\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ]\n },\n \"bbfcRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ],\n - \ \"description\": \"The video's British Board of Film Classification - (BBFC) rating.\",\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ]\n },\n - \ \"nfrcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ]\n },\n \"fmocRating\": {\n \"description\": - \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ],\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ]\n },\n \"fcbmRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n - \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n - \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n - \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ],\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ]\n },\n \"bmukkRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Austrian Board of - Media Classification (Bundesministerium f\xFCr Unterricht, Kunst und Kultur).\",\n - \ \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"mccypRating\": {\n \"description\": \"The video's - rating from the Danish Film Institute's (Det Danske Filminstitut) Media Council - for Children and Young People.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"7\",\n \"11\",\n \"15\",\n - \ \"\"\n ],\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"smaisRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Iceland.\"\n },\n \"bfvcRating\": {\n - \ \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Thailand's Board of Film - and Video Censors.\"\n },\n \"catvfrRating\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n - \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n - \ \"catvfrUnrated\",\n \"catvfrE\"\n ]\n },\n - \ \"eefilmRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n - \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n - \ \"K-16\",\n \"\"\n ],\n \"description\": - \"The video's rating in Estonia.\",\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ]\n },\n \"medietilsynetRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n - \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"description\": \"The video's rating from Medietilsynet, the Norwegian - Media Authority.\"\n },\n \"chvrsRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ],\n \"enum\": [\n \"chvrsUnspecified\",\n \"chvrsG\",\n - \ \"chvrsPg\",\n \"chvrs14a\",\n \"chvrs18a\",\n - \ \"chvrsR\",\n \"chvrsE\",\n \"chvrsUnrated\"\n - \ ],\n \"description\": \"The video's Canadian Home Video - Rating System (CHVRS) rating.\",\n \"type\": \"string\"\n },\n - \ \"fcoRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"fcoUnspecified\",\n \"fcoI\",\n \"fcoIia\",\n - \ \"fcoIib\",\n \"fcoIi\",\n \"fcoIii\",\n - \ \"fcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Hong Kong's Office for - Film, Newspaper and Article Administration.\"\n },\n \"russiaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"description\": \"The video's National Film Registry - of the Russian Federation (MKRF - Russia) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"fpbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\",\n \"type\": \"string\",\n \"enum\": - [\n \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n - \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n - \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ]\n },\n \"mekuRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"description\": - \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti - (National Audiovisual Institute).\",\n \"type\": \"string\"\n },\n - \ \"oflcRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ],\n \"enum\": - [\n \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n - \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n - \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n - \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n - \ ]\n },\n \"nbcplRating\": {\n \"description\": - \"The video's rating in Poland.\",\n \"type\": \"string\",\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"lsfRating\": {\n \"description\": \"The video's rating - from Indonesia's Lembaga Sensor Film.\",\n \"enum\": [\n \"lsfUnspecified\",\n - \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n - \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n - \ \"lsfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"kmrbRating\": {\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"description\": \"The video's Korea - Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. - The KMRB rates videos in South Korea.\"\n },\n \"nbcRating\": - {\n \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ],\n \"description\": \"The - video's rating from the Maldives National Bureau of Classification.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"grfilmRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating in Greece.\",\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ]\n - \ },\n \"ecbmctRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ],\n \"description\": - \"Rating system in Turkey - Evaluation and Classification Board of the Ministry - of Culture and Tourism\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"mibacRating\": - {\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"description\": \"The - video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali e - del Turismo (Italy).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"cicfRating\": - {\n \"description\": \"The video's rating from the Commission de - Contr\xF4le des Films (Belgium).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n - \ ],\n \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n - \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"fskRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"FSK - 0\",\n \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"enum\": - [\n \"fskUnspecified\",\n \"fsk0\",\n \"fsk6\",\n - \ \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n \"fskUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\"\n },\n \"menaMpaaRating\": {\n \"type\": - \"string\",\n \"description\": \"The rating system for MENA countries, - a clone of MPAA. It is needed to prevent titles go live w/o additional QC - check, since some of them can be inappropriate for the countries at all. See - b/33408548 for more details.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ],\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ]\n - \ },\n \"chfilmRating\": {\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Switzerland.\",\n \"type\": \"string\"\n },\n \"mtrcbRating\": - {\n \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Movie - and Television Review and Classification Board (Philippines).\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n - \ \"X\",\n \"\"\n ]\n },\n \"agcomRating\": - {\n \"description\": \"The video's rating from Italy's Autorit\xE0 - per le Garanzie nelle Comunicazioni (AGCOM).\",\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"moctwRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n - \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ]\n },\n \"skfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ],\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Slovakia.\",\n \"type\": \"string\"\n },\n - \ \"icaaRating\": {\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales - (ICAA - Spain) rating.\"\n },\n \"ifcoRating\": {\n \"enum\": - [\n \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Irish Film Classification Office - (IFCO - Ireland) rating. See the IFCO website for more information.\"\n },\n - \ \"nmcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\"\n - \ }\n },\n \"id\": \"ContentRating\"\n },\n \"ChannelListResponse\": - {\n \"id\": \"ChannelListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Channel\"\n },\n \"type\": \"array\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"created\",\n + \ \"ready\",\n \"active\",\n \"inactive\",\n + \ \"error\"\n ]\n },\n \"healthStatus\": + {\n \"description\": \"The health status of the stream.\",\n \"$ref\": + \"LiveStreamHealthStatus\"\n }\n },\n \"id\": \"LiveStreamStatus\",\n + \ \"description\": \"Brief description of the live stream status.\"\n + \ },\n \"PlaylistItem\": {\n \"description\": \"A *playlistItem* + resource identifies another resource, such as a video, that is included in + a playlist. In addition, the playlistItem resource contains details about + the included resource that pertain specifically to how that resource is used + in that playlist. YouTube uses playlists to identify special collections of + videos for a channel, such as: - uploaded videos - favorite videos - positively + rated (liked) videos - watch history - watch later To be more specific, these + lists are associated with a channel, which is a collection of a person, group, + or company's videos, playlists, and other YouTube information. You can retrieve + the playlist IDs for each of these lists from the channel resource for a given + channel. You can then use the playlistItems.list method to retrieve any of + those lists. You can also add or remove items from those lists by calling + the playlistItems.insert and playlistItems.delete methods. For example, if + a user gives a positive rating to a video, you would insert that video into + the liked videos playlist for that user's channel.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": + {\n \"$ref\": \"PlaylistItemSnippet\",\n \"description\": + \"The snippet object contains basic details about the playlist item, such + as its title and position in the playlist.\"\n },\n \"status\": + {\n \"description\": \"The status object contains information about + the playlist item's privacy status.\",\n \"$ref\": \"PlaylistItemStatus\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#playlistItem\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlistItem\\\".\",\n \"type\": \"string\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the playlist item.\",\n \"type\": \"string\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object is included in the resource if the included item is + a YouTube video. The object contains additional information about the video.\",\n + \ \"$ref\": \"PlaylistItemContentDetails\"\n }\n },\n + \ \"id\": \"PlaylistItem\"\n },\n \"Caption\": {\n \"description\": + \"A *caption* resource represents a YouTube caption track. A caption track + is associated with exactly one YouTube video.\",\n \"type\": \"object\",\n + \ \"id\": \"Caption\",\n \"properties\": {\n \"snippet\": + {\n \"$ref\": \"CaptionSnippet\",\n \"description\": \"The + snippet object contains basic details about the caption.\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#caption\\\".\",\n \"type\": \"string\",\n + \ \"default\": \"youtube#caption\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the caption track.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.update\"\n ]\n }\n + \ }\n }\n },\n \"I18nLanguageListResponse\": {\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n + \ },\n \"description\": \"A list of supported i18n languages. + In this map, the i18n language ID is the map key, and its value is the corresponding + i18nLanguage resource.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#i18nLanguageListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"I18nLanguageListResponse\"\n },\n \"LiveChatMessageListResponse\": + {\n \"id\": \"LiveChatMessageListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ChannelSnippet\": {\n \"description\": \"Basic details about a - channel, including title, description and thumbnails.\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the channel.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel's title.\"\n },\n - \ \"customUrl\": {\n \"description\": \"The custom url of the - channel.\",\n \"type\": \"string\"\n },\n \"country\": - {\n \"description\": \"The country of the channel.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\"\n },\n \"publishedAt\": {\n - \ \"description\": \"The date and time that the channel was created.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the channel's default title and description.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelSnippet\"\n - \ },\n \"CommentSnippetAuthorChannelId\": {\n \"description\": \"The - id of the author's YouTube channel, if any.\",\n \"properties\": {\n - \ \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"CommentSnippetAuthorChannelId\",\n \"type\": \"object\"\n - \ },\n \"LiveBroadcastContentDetails\": {\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"properties\": {\n \"monitorStream\": {\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\",\n \"$ref\": \"MonitorStreamInfo\"\n - \ },\n \"enableDvr\": {\n \"description\": \"This setting - determines whether viewers can access DVR controls while watching the video. - DVR controls enable the viewer to control the video playback experience by - pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n - \ },\n \"boundStreamLastUpdateTimeMs\": {\n \"description\": - \"The date and time that the live stream referenced by boundStreamId was last - updated.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"startWithSlate\": {\n - \ \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n },\n \"latencyPreference\": {\n \"type\": - \"string\",\n \"description\": \"If both this and enable_low_latency - are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Best for: highest quality viewer playbacks and higher resolutions.\",\n - \ \"Best for: near real-time interaction, with minimal playback - buffering.\",\n \"Best for: real-time interaction Does not support: - Closed captions, 1440p, and 4k resolutions\"\n ],\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ]\n },\n - \ \"boundStreamId\": {\n \"type\": \"string\",\n \"description\": - \"This value uniquely identifies the live stream bound to the broadcast.\"\n - \ },\n \"projection\": {\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The projection format of this broadcast. - This defaults to rectangular.\"\n },\n \"mesh\": {\n \"format\": - \"byte\",\n \"description\": \"The mesh for projecting the video - if projection is mesh. The mesh value must be a UTF-8 string containing the - base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC specification - for an mshp box, excluding the box size and type but including the following - four reserved zero bytes for the version and flags.\",\n \"type\": - \"string\"\n },\n \"stereoLayout\": {\n \"enumDescriptions\": + \ },\n \"kind\": {\n \"default\": \"youtube#liveChatMessageListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n + \ },\n \"offlineAt\": {\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time when the underlying stream + went offline.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n + \ }\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"pollingIntervalMillis\": + {\n \"format\": \"uint32\",\n \"description\": \"The amount + of time the client should wait before polling again.\",\n \"type\": + \"integer\"\n }\n }\n },\n \"LiveBroadcast\": {\n \"type\": + \"object\",\n \"description\": \"A *liveBroadcast* resource represents + an event that will be streamed, via live video, on YouTube.\",\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n \"default\": + \"youtube#liveBroadcast\"\n },\n \"id\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + assigns to uniquely identify the broadcast.\",\n \"type\": \"string\"\n + \ },\n \"status\": {\n \"description\": \"The status + object contains information about the event's status.\",\n \"$ref\": + \"LiveBroadcastStatus\"\n },\n \"snippet\": {\n \"$ref\": + \"LiveBroadcastSnippet\",\n \"description\": \"The snippet object + contains basic details about the event, including its title, description, + start time, and end time.\"\n },\n \"statistics\": {\n \"description\": + \"The statistics object contains info about the event's current stats. These + include concurrent viewers and total chat count. Statistics can change (in + either direction) during the lifetime of an event. Statistics are only returned + while the event is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object contains information about the event's video content, + such as whether the content can be shown in an embedded video player or if + it will be archived and therefore available for viewing after the event has + concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n }\n + \ },\n \"id\": \"LiveBroadcast\"\n },\n \"ThirdPartyLinkStatus\": + {\n \"type\": \"object\",\n \"properties\": {\n \"linkStatus\": + {\n \"enum\": [\n \"unknown\",\n \"failed\",\n + \ \"pending\",\n \"linked\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The 3D stereo layout of this broadcast. - This defaults to mono.\",\n \"type\": \"string\",\n \"enum\": - [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ]\n },\n \"recordFromStart\": + \ ],\n \"type\": \"string\"\n }\n },\n \"id\": + \"ThirdPartyLinkStatus\",\n \"description\": \"The third-party link status + object contains information about the status of the link.\"\n },\n \"ChannelToStoreLinkDetails\": + {\n \"id\": \"ChannelToStoreLinkDetails\",\n \"description\": \"Information + specific to a store on a merchandising platform linked to a YouTube channel.\",\n + \ \"properties\": {\n \"merchantId\": {\n \"format\": + \"uint64\",\n \"description\": \"Google Merchant Center id of the + store.\",\n \"type\": \"string\"\n },\n \"storeName\": + {\n \"type\": \"string\",\n \"description\": \"Name of the + store.\"\n },\n \"storeUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"Landing page of the store.\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"LanguageTag\": {\n \"type\": + \"object\",\n \"properties\": {\n \"value\": {\n \"type\": + \"string\"\n }\n },\n \"id\": \"LanguageTag\"\n },\n \"LiveChatBan\": + {\n \"description\": \"A `__liveChatBan__` resource represents a ban + for a YouTube live chat.\",\n \"properties\": {\n \"snippet\": + {\n \"description\": \"The `snippet` object contains basic details + about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#liveChatBan\",\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + assigns to uniquely identify the ban.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"LiveChatBan\",\n \"type\": \"object\"\n },\n \"LiveStreamSnippet\": + {\n \"id\": \"LiveStreamSnippet\",\n \"type\": \"object\",\n \"properties\": + {\n \"publishedAt\": {\n \"description\": \"The date and time + that the stream was created.\",\n \"format\": \"date-time\",\n \"type\": + \"string\"\n },\n \"isDefaultStream\": {\n \"type\": + \"boolean\"\n },\n \"title\": {\n \"description\": + \"The stream's title. The value must be between 1 and 128 characters long.\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the channel that is transmitting the stream.\"\n },\n \"description\": + {\n \"description\": \"The stream's description. The value cannot + be longer than 10000 characters.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"ThirdPartyLinkSnippet\": {\n \"id\": \"ThirdPartyLinkSnippet\",\n + \ \"description\": \"Basic information about a third party account link, + including its type and type-specific information.\",\n \"properties\": + {\n \"channelToStoreLink\": {\n \"description\": \"Information + specific to a link between a channel and a store on a merchandising platform.\",\n + \ \"$ref\": \"ChannelToStoreLinkDetails\"\n },\n \"type\": + {\n \"type\": \"string\",\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or about to + connect) a channel with a store on a merchandising platform in order to enable + retail commerce capabilities for that channel on YouTube.\"\n ],\n + \ \"description\": \"Type of the link named after the entities that + are being linked.\"\n }\n },\n \"type\": \"object\"\n },\n + \ \"CommentListResponse\": {\n \"id\": \"CommentListResponse\",\n \"properties\": + {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n + \ \"default\": \"youtube#commentListResponse\",\n \"type\": + \"string\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"items\": {\n \"description\": \"A list of comments + that match the request criteria.\",\n \"items\": {\n \"$ref\": + \"Comment\"\n },\n \"type\": \"array\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"SuperChatEvent\": + {\n \"id\": \"SuperChatEvent\",\n \"type\": \"object\",\n \"properties\": + {\n \"snippet\": {\n \"description\": \"The `snippet` object + contains basic details about the Super Chat event.\",\n \"$ref\": + \"SuperChatEventSnippet\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#superChatEvent\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube assigns to uniquely identify the Super Chat event.\"\n + \ }\n },\n \"description\": \"A `__superChatEvent__` resource + represents a Super Chat purchase on a YouTube channel.\"\n },\n \"ActivityContentDetailsSubscription\": + {\n \"id\": \"ActivityContentDetailsSubscription\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + that the user subscribed to.\"\n }\n },\n \"description\": + \"Information about a channel that a user subscribed to.\",\n \"type\": + \"object\"\n },\n \"PlaylistContentDetails\": {\n \"properties\": + {\n \"itemCount\": {\n \"format\": \"uint32\",\n \"type\": + \"integer\",\n \"description\": \"The number of videos in the playlist.\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"PlaylistContentDetails\"\n + \ },\n \"Comment\": {\n \"type\": \"object\",\n \"properties\": + {\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the comment.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n \"description\": + \"The snippet object contains basic details about the comment.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n + \ \"default\": \"youtube#comment\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"description\": \"A *comment* represents + a single YouTube comment.\",\n \"id\": \"Comment\"\n },\n \"ChannelSectionContentDetails\": + {\n \"properties\": {\n \"channels\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"The channel ids for type multiple_channels.\"\n + \ },\n \"playlists\": {\n \"type\": \"array\",\n \"description\": + \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, + only one playlistId is allowed.\",\n \"items\": {\n \"type\": + \"string\"\n }\n }\n },\n \"id\": \"ChannelSectionContentDetails\",\n + \ \"type\": \"object\",\n \"description\": \"Details about a channelsection, + including playlists and channels.\"\n },\n \"VideoProcessingDetailsProcessingProgress\": + {\n \"description\": \"Video processing progress and completion time + estimate.\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n + \ \"properties\": {\n \"timeLeftMs\": {\n \"description\": + \"An estimate of the amount of time, in millseconds, that YouTube needs to + finish processing the video.\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n },\n \"partsTotal\": {\n \"format\": \"uint64\",\n + \ \"type\": \"string\",\n \"description\": \"An estimate + of the total number of parts that need to be processed for the video. The + number may be updated with more precise estimates while YouTube processes + the video.\"\n },\n \"partsProcessed\": {\n \"description\": + \"The number of parts of the video that YouTube has already processed. You + can estimate the percentage of the video that YouTube has already processed + by calculating: 100 * parts_processed / parts_total Note that since the estimated + number of parts could increase without a corresponding increase in the number + of parts that have already been processed, it is possible that the calculated + progress could periodically decrease while YouTube processes a video.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"VideoMonetizationDetails\": + {\n \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n + \ \"description\": \"The value of access indicates whether the video + can be monetized or not.\"\n }\n },\n \"id\": \"VideoMonetizationDetails\",\n + \ \"type\": \"object\",\n \"description\": \"Details about monetization + of a YouTube Video.\"\n },\n \"Cuepoint\": {\n \"description\": + \"Note that there may be a 5-second end-point resolution issue. For instance, + if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 + or 22:03:30, depending. This is an artifact of HLS.\",\n \"properties\": + {\n \"durationSecs\": {\n \"format\": \"uint32\",\n \"type\": + \"integer\",\n \"description\": \"The duration of this cuepoint.\"\n + \ },\n \"insertionOffsetTimeMs\": {\n \"type\": \"string\",\n + \ \"format\": \"int64\",\n \"description\": \"The time when + the cuepoint should be inserted by offset to the broadcast actual start time.\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The identifier for cuepoint resource.\"\n },\n \"walltimeMs\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The wall clock time at which the cuepoint should be inserted. Only one of + insertion_offset_time_ms and walltime_ms may be set at a time.\"\n },\n + \ \"cueType\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"cueTypeUnspecified\",\n + \ \"cueTypeAd\"\n ],\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"Cuepoint\"\n },\n + \ \"ActivityContentDetailsPlaylistItem\": {\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n + \ \"description\": \"Information about a new playlist item.\",\n \"properties\": + {\n \"playlistItemId\": {\n \"description\": \"ID of the item + within the playlist.\",\n \"type\": \"string\"\n },\n \"playlistId\": + {\n \"type\": \"string\",\n \"description\": \"The value + that YouTube uses to uniquely identify the playlist.\"\n },\n \"resourceId\": + {\n \"description\": \"The resourceId object contains information + about the resource that was added to the playlist.\",\n \"$ref\": + \"ResourceId\"\n }\n },\n \"type\": \"object\"\n },\n + \ \"ResourceId\": {\n \"id\": \"ResourceId\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a channel. This property is only present if the resourceId.kind + value is youtube#channel.\",\n \"type\": \"string\"\n },\n + \ \"playlistId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a playlist. This property is only present if the resourceId.kind + value is youtube#playlist.\"\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a video. This property is only present if the resourceId.kind + value is youtube#video.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"description\": \"The type of the API resource.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"A resource id is + a generic reference that points to another YouTube resource.\"\n },\n \"ChannelListResponse\": + {\n \"properties\": {\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"kind\": {\n \"default\": + \"youtube#channelListResponse\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"prevPageToken\": {\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Channel\"\n }\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelListResponse\"\n + \ },\n \"TokenPagination\": {\n \"id\": \"TokenPagination\",\n \"properties\": + {},\n \"type\": \"object\",\n \"description\": \"Stub token pagination + template to suppress results.\"\n },\n \"ChannelSettings\": {\n \"description\": + \"Branding properties for the channel view.\",\n \"properties\": {\n + \ \"description\": {\n \"type\": \"string\",\n \"description\": + \"Specifies the channel description.\"\n },\n \"profileColor\": + {\n \"description\": \"A prominent color that can be rendered on + this channel page.\",\n \"type\": \"string\"\n },\n \"featuredChannelsTitle\": + {\n \"type\": \"string\",\n \"description\": \"Title for + the featured channels tab.\"\n },\n \"defaultTab\": {\n \"description\": + \"Which content tab users should see when viewing the channel.\",\n \"type\": + \"string\"\n },\n \"moderateComments\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether user-submitted comments + left on the channel page need to be approved by the channel owner to be publicly + visible.\"\n },\n \"unsubscribedTrailer\": {\n \"description\": + \"The trailer of the channel, for users that are not subscribers.\",\n \"type\": + \"string\"\n },\n \"featuredChannelsUrls\": {\n \"description\": + \"The list of featured channels.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n },\n \"country\": + {\n \"description\": \"The country of the channel.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"Specifies the channel title.\"\n },\n + \ \"showBrowseView\": {\n \"description\": \"Whether the tab + to browse the videos should be displayed.\",\n \"type\": \"boolean\"\n + \ },\n \"showRelatedChannels\": {\n \"description\": + \"Whether related channels should be proposed.\",\n \"type\": \"boolean\"\n + \ },\n \"defaultLanguage\": {\n \"type\": \"string\"\n + \ },\n \"trackingAnalyticsAccountId\": {\n \"description\": + \"The ID for a Google Analytics account to track and measure traffic to the + channels.\",\n \"type\": \"string\"\n },\n \"keywords\": + {\n \"description\": \"Lists keywords associated with the channel, + comma-separated.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"ChannelSettings\"\n },\n \"VideoAgeGating\": + {\n \"properties\": {\n \"alcoholContent\": {\n \"type\": + \"boolean\",\n \"description\": \"Indicates whether or not the video + has alcoholic beverage content. Only users of legal purchasing age in a particular + country, as identified by ICAP, can view the content.\"\n },\n \"videoGameRating\": + {\n \"description\": \"Video game rating, if any.\",\n \"enum\": + [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n + \ \"m17Plus\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"restricted\": + {\n \"type\": \"boolean\",\n \"description\": \"Age-restricted + trailers. For redband trailers and adult-rated video-games. Only users aged + 18+ can view the content. The the field is true the content is restricted + to viewers aged 18+. Otherwise The field won't be present.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"VideoAgeGating\"\n + \ },\n \"VideoLiveStreamingDetails\": {\n \"type\": \"object\",\n + \ \"description\": \"Details about the live streaming metadata.\",\n \"id\": + \"VideoLiveStreamingDetails\",\n \"properties\": {\n \"activeLiveChatId\": + {\n \"description\": \"The ID of the currently active live chat attached + to this video. This field is filled only if the video is a currently live + broadcast that has live chat. Once the broadcast transitions to complete this + field will be removed and the live chat closed down. For persistent broadcasts + that live chat id will no longer be tied to this video but rather to the new + video being displayed at the persistent page.\",\n \"type\": \"string\"\n + \ },\n \"scheduledStartTime\": {\n \"format\": \"date-time\",\n + \ \"type\": \"string\",\n \"description\": \"The time that + the broadcast is scheduled to begin.\"\n },\n \"actualEndTime\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The time that the broadcast actually ended. This + value will not be available until the broadcast is over.\"\n },\n \"actualStartTime\": + {\n \"format\": \"date-time\",\n \"description\": \"The + time that the broadcast actually started. This value will not be available + until the broadcast begins.\",\n \"type\": \"string\"\n },\n + \ \"concurrentViewers\": {\n \"description\": \"The number + of viewers currently watching the broadcast. The property and its value will + be present if the broadcast has current viewers and the broadcast owner has + not hidden the viewcount for the video. Note that YouTube stops tracking the + number of concurrent viewers for a broadcast when the broadcast ends. So, + this property would not identify the number of viewers watching an archived + video of a live broadcast that already ended.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n },\n \"scheduledEndTime\": + {\n \"type\": \"string\",\n \"description\": \"The time + that the broadcast is scheduled to end. If the value is empty or the property + is not present, then the broadcast is scheduled to contiue indefinitely.\",\n + \ \"format\": \"date-time\"\n }\n }\n },\n \"ActivityContentDetailsComment\": + {\n \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + associated with the comment.\",\n \"$ref\": \"ResourceId\"\n }\n + \ },\n \"description\": \"Information about a resource that received + a comment.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsComment\"\n + \ },\n \"MemberSnippet\": {\n \"properties\": {\n \"memberDetails\": + {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": + \"Details about the member.\"\n },\n \"membershipsDetails\": + {\n \"$ref\": \"MembershipsDetails\",\n \"description\": + \"Details about the user's membership.\"\n },\n \"creatorChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The id of + the channel that's offering memberships.\"\n }\n },\n \"id\": + \"MemberSnippet\",\n \"type\": \"object\"\n },\n \"VideoFileDetailsAudioStream\": + {\n \"description\": \"Information about an audio stream.\",\n \"type\": + \"object\",\n \"properties\": {\n \"channelCount\": {\n \"format\": + \"uint32\",\n \"description\": \"The number of audio channels that + the stream contains.\",\n \"type\": \"integer\"\n },\n \"bitrateBps\": + {\n \"type\": \"string\",\n \"description\": \"The audio + stream's bitrate, in bits per second.\",\n \"format\": \"uint64\"\n + \ },\n \"codec\": {\n \"description\": \"The audio codec + that the stream uses.\",\n \"type\": \"string\"\n },\n \"vendor\": + {\n \"description\": \"A value that uniquely identifies a video vendor. + Typically, the value is a four-letter vendor code.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"VideoFileDetailsAudioStream\"\n + \ },\n \"SubscriptionSubscriberSnippet\": {\n \"description\": \"Basic + details about a subscription's subscriber including title, description, channel + ID and thumbnails.\",\n \"type\": \"object\",\n \"properties\": + {\n \"channelId\": {\n \"description\": \"The channel ID of + the subscriber.\",\n \"type\": \"string\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"Thumbnails + for this subscriber.\"\n },\n \"description\": {\n \"description\": + \"The description of the subscriber.\",\n \"type\": \"string\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The title of the subscriber.\"\n }\n },\n \"id\": \"SubscriptionSubscriberSnippet\"\n + \ },\n \"ChannelSectionTargeting\": {\n \"id\": \"ChannelSectionTargeting\",\n + \ \"description\": \"ChannelSection targeting setting.\",\n \"properties\": + {\n \"regions\": {\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"type\": \"array\",\n \"description\": \"The + region the channel section is targeting.\"\n },\n \"countries\": + {\n \"description\": \"The country the channel section is targeting.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"languages\": {\n \"description\": + \"The language the channel section is targeting.\",\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n }\n + \ },\n \"type\": \"object\"\n },\n \"ChannelConversionPings\": + {\n \"description\": \"The conversionPings object encapsulates information + about conversion pings that need to be respected by the channel.\",\n \"id\": + \"ChannelConversionPings\",\n \"type\": \"object\",\n \"properties\": + {\n \"pings\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"ChannelConversionPing\"\n },\n \"description\": + \"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.\"\n }\n }\n },\n \"ChannelBannerResource\": {\n + \ \"properties\": {\n \"url\": {\n \"description\": \"The + URL of this banner image.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n + \ \"default\": \"youtube#channelBannerResource\"\n },\n \"etag\": + {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ChannelBannerResource\",\n \"description\": \"A channel + banner returned as the response to a channel_banner.insert call.\"\n },\n + \ \"I18nRegionSnippet\": {\n \"type\": \"object\",\n \"properties\": + {\n \"name\": {\n \"description\": \"The human-readable name + of the region.\",\n \"type\": \"string\"\n },\n \"gl\": + {\n \"description\": \"The region code as a 2-letter ISO country + code.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"I18nRegionSnippet\",\n \"description\": \"Basic details about an i18n + region, such as region code and human-readable name.\"\n },\n \"ChannelTopicDetails\": + {\n \"type\": \"object\",\n \"description\": \"Freebase topic information + related to the channel.\",\n \"properties\": {\n \"topicIds\": + {\n \"description\": \"A list of Freebase topic IDs associated with + the channel. You can retrieve information about each topic using the Freebase + Topic API.\",\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"type\": \"array\"\n },\n \"topicCategories\": + {\n \"type\": \"array\",\n \"description\": \"A list of + Wikipedia URLs that describe the channel's content.\",\n \"items\": + {\n \"type\": \"string\"\n }\n }\n },\n \"id\": + \"ChannelTopicDetails\"\n },\n \"Entity\": {\n \"id\": \"Entity\",\n + \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n + \ },\n \"typeId\": {\n \"type\": \"string\"\n },\n + \ \"url\": {\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"InvideoPosition\": {\n \"type\": + \"object\",\n \"id\": \"InvideoPosition\",\n \"properties\": {\n + \ \"cornerPosition\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"topLeft\",\n \"topRight\",\n + \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"description\": + \"Describes in which corner of the video the visual widget will appear.\"\n + \ },\n \"type\": {\n \"description\": \"Defines the + position type.\",\n \"enum\": [\n \"corner\"\n ],\n + \ \"enumDescriptions\": [\n \"\"\n ],\n \"type\": + \"string\"\n }\n },\n \"description\": \"Describes the spatial + position of a visual widget inside a video. It is a union of various position + types, out of which only will be set one.\"\n },\n \"LiveBroadcastContentDetails\": + {\n \"description\": \"Detailed settings of a broadcast.\",\n \"id\": + \"LiveBroadcastContentDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"enableAutoStop\": {\n \"type\": \"boolean\",\n \"description\": + \"This setting indicates whether auto stop is enabled for this broadcast. + The default value for this property is false. This setting can only be used + by Events.\"\n },\n \"startWithSlate\": {\n \"type\": + \"boolean\",\n \"description\": \"This setting indicates whether + the broadcast should automatically begin with an in-stream slate when you + update the broadcast's status to live. After updating the status, you then + need to send a liveCuepoints.insert request that sets the cuepoint's eventState + to end to remove the in-stream slate and make your broadcast stream visible + to viewers.\"\n },\n \"boundStreamId\": {\n \"description\": + \"This value uniquely identifies the live stream bound to the broadcast.\",\n + \ \"type\": \"string\"\n },\n \"latencyPreference\": + {\n \"description\": \"If both this and enable_low_latency are set, + they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW + should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency + omitted.\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n + \ \"normal\",\n \"low\",\n \"ultraLow\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Best for: highest quality viewer playbacks + and higher resolutions.\",\n \"Best for: near real-time interaction, + with minimal playback buffering.\",\n \"Best for: real-time interaction + Does not support: Closed captions, 1440p, and 4k resolutions\"\n ]\n + \ },\n \"enableClosedCaptions\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This setting indicates whether HTTP POST closed + captioning is enabled for this broadcast. The ingestion URL of the closed + captions is returned through the liveStreams API. This is mutually exclusive + with using the closed_captions_type property, and is equivalent to setting + closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n \"recordFromStart\": {\n \"description\": \"Automatically start recording after the event goes live. The default value for this property is true. *Important:* You must also set the enableDvr property's value to true if you want the playback to @@ -7021,963 +6912,1182 @@ interactions: be a delay of around one day before the archived video will be available for playback.\",\n \"type\": \"boolean\"\n },\n \"enableLowLatency\": {\n \"description\": \"Indicates whether this broadcast has low latency - enabled.\",\n \"type\": \"boolean\"\n },\n \"enableAutoStop\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto stop is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"enableAutoStart\": {\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\",\n - \ \"type\": \"boolean\"\n },\n \"closedCaptionsType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + enabled.\",\n \"type\": \"boolean\"\n },\n \"monitorStream\": + {\n \"$ref\": \"MonitorStreamInfo\",\n \"description\": + \"The monitorStream object contains information about the monitor stream, + which the broadcaster can use to review the event content before the broadcast + stream is shown publicly.\"\n },\n \"enableEmbed\": {\n \"type\": + \"boolean\",\n \"description\": \"This setting indicates whether + the broadcast video can be played in an embedded player. If you choose to + archive the video (using the enableArchive property), this setting will also + apply to the archived video.\"\n },\n \"stereoLayout\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n + \ \"leftRight\",\n \"topBottom\"\n ],\n \"description\": + \"The 3D stereo layout of this broadcast. This defaults to mono.\"\n },\n + \ \"projection\": {\n \"type\": \"string\",\n \"description\": + \"The projection format of this broadcast. This defaults to rectangular.\",\n + \ \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n + \ \"360\",\n \"mesh\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"type\": + \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the live stream referenced by boundStreamId was last + updated.\"\n },\n \"closedCaptionsType\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\"\n ],\n \"enum\": [\n \ \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ],\n \"type\": \"string\"\n },\n \"enableEmbed\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast video can be played in an embedded player. - If you choose to archive the video (using the enableArchive property), this - setting will also apply to the archived video.\"\n },\n \"enableContentEncryption\": - {\n \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Detailed - settings of a broadcast.\"\n },\n \"VideoGetRatingResponse\": {\n \"id\": - \"VideoGetRatingResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoGetRatingResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"description\": - \"A list of ratings that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"VideoRating\"\n },\n \"type\": - \"array\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ActivitySnippet\": {\n \"properties\": - {\n \"groupId\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel associated with the activity.\"\n },\n \"thumbnails\": - {\n \"description\": \"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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The description of the resource - primarily associated with the activity. @mutable youtube.activities.insert\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel responsible for - this activity\"\n },\n \"title\": {\n \"description\": - \"The title of the resource primarily associated with the activity.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"type\": \"string\",\n - \ \"description\": \"The type of activity that the resource describes.\",\n - \ \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n - \ \"like\",\n \"favorite\",\n \"comment\",\n - \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n - \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the video was uploaded.\"\n }\n },\n \"id\": - \"ActivitySnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about an activity, including title, description, thumbnails, - activity type and group. Next ID: 12\"\n },\n \"LiveChatTextMessageDetails\": - {\n \"id\": \"LiveChatTextMessageDetails\",\n \"properties\": {\n - \ \"messageText\": {\n \"type\": \"string\",\n \"description\": - \"The user's message.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoStatistics\": {\n \"properties\": {\n \"dislikeCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of users who have indicated that they disliked the video by giving it a negative - rating.\",\n \"format\": \"uint64\"\n },\n \"commentCount\": - {\n \"description\": \"The number of comments for the video.\",\n + \ ]\n },\n \"enableContentEncryption\": {\n \"description\": + \"This setting indicates whether YouTube should enable content encryption + for the broadcast.\",\n \"type\": \"boolean\"\n },\n \"mesh\": + {\n \"type\": \"string\",\n \"description\": \"The mesh + for projecting the video if projection is mesh. The mesh value must be a UTF-8 + string containing the base-64 encoding of 3D mesh data that follows the Spherical + Video V2 RFC specification for an mshp box, excluding the box size and type + but including the following four reserved zero bytes for the version and flags.\",\n + \ \"format\": \"byte\"\n },\n \"enableAutoStart\": {\n + \ \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether auto start is enabled for this broadcast. The default value + for this property is false. This setting can only be used by Events.\"\n },\n + \ \"enableDvr\": {\n \"type\": \"boolean\",\n \"description\": + \"This setting determines whether viewers can access DVR controls while watching + the video. DVR controls enable the viewer to control the video playback experience + by pausing, rewinding, or fast forwarding content. The default value for this + property is true. *Important:* You must set the value to true and also set + the enableArchive property's value to true if you want to make playback available + immediately after the broadcast ends.\"\n }\n }\n },\n \"MembershipsLevelSnippet\": + {\n \"id\": \"MembershipsLevelSnippet\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"creatorChannelId\": {\n \"description\": + \"The id of the channel that's offering channel memberships.\",\n \"type\": + \"string\"\n },\n \"levelDetails\": {\n \"description\": + \"Details about the pricing level.\",\n \"$ref\": \"LevelDetails\"\n + \ }\n }\n },\n \"CommentThreadSnippet\": {\n \"properties\": + {\n \"isPublic\": {\n \"type\": \"boolean\",\n \"description\": + \"Whether the thread (and therefore all its comments) is visible to all YouTube + users.\"\n },\n \"totalReplyCount\": {\n \"format\": + \"uint32\",\n \"description\": \"The total number of replies (not + including the top level comment).\",\n \"type\": \"integer\"\n },\n + \ \"videoId\": {\n \"description\": \"The ID of the video the + comments refer to, if any. No video_id implies a channel discussion comment.\",\n + \ \"type\": \"string\"\n },\n \"topLevelComment\": {\n + \ \"$ref\": \"Comment\",\n \"description\": \"The top level + comment of this thread.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"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.\"\n },\n + \ \"canReply\": {\n \"type\": \"boolean\",\n \"description\": + \"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.\"\n }\n + \ },\n \"description\": \"Basic details about a comment thread.\",\n + \ \"id\": \"CommentThreadSnippet\",\n \"type\": \"object\"\n },\n + \ \"ThirdPartyLinkListResponse\": {\n \"properties\": {\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n + \ },\n \"type\": \"array\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"ThirdPartyLinkListResponse\",\n + \ \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": {\n + \ \"description\": \"Information about a video stream.\",\n \"id\": + \"VideoFileDetailsVideoStream\",\n \"type\": \"object\",\n \"properties\": + {\n \"codec\": {\n \"description\": \"The video codec that + the stream uses.\",\n \"type\": \"string\"\n },\n \"vendor\": + {\n \"description\": \"A value that uniquely identifies a video vendor. + Typically, the value is a four-letter vendor code.\",\n \"type\": + \"string\"\n },\n \"aspectRatio\": {\n \"description\": + \"The video content's display aspect ratio, which specifies the aspect ratio + in which the video should be displayed.\",\n \"type\": \"number\",\n + \ \"format\": \"double\"\n },\n \"heightPixels\": {\n + \ \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The encoded video content's height in pixels.\"\n },\n \"widthPixels\": + {\n \"format\": \"uint32\",\n \"description\": \"The encoded + video content's width in pixels. You can calculate the video's encoding aspect + ratio as width_pixels / height_pixels.\",\n \"type\": \"integer\"\n + \ },\n \"frameRateFps\": {\n \"format\": \"double\",\n + \ \"description\": \"The video stream's frame rate, in frames per + second.\",\n \"type\": \"number\"\n },\n \"bitrateBps\": + {\n \"description\": \"The video stream's bitrate, in bits per second.\",\n \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"favoriteCount\": {\n \"description\": \"The number of users - who currently have the video marked as a favorite video.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"viewCount\": - {\n \"description\": \"The number of times the video has been viewed.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"likeCount\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of users who have indicated - that they liked the video by giving it a positive rating.\"\n }\n },\n - \ \"description\": \"Statistics about the video, such as the number of - times the video was viewed or liked.\",\n \"type\": \"object\",\n \"id\": - \"VideoStatistics\"\n },\n \"PlaylistItemSnippet\": {\n \"properties\": - {\n \"title\": {\n \"description\": \"The item's title.\",\n - \ \"type\": \"string\"\n },\n \"videoOwnerChannelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel this video belongs to.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the playlist item. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The item's description.\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist - item is in.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"position\": {\n \"description\": \"The order in which the - item appears in the playlist. The value uses a zero-based index, so the first - item has a position of 0, the second item has a position of 1, and so forth.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the item - was added to the playlist.\"\n },\n \"resourceId\": {\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that is included in the playlist as the playlist item.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"$ref\": \"ResourceId\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the playlist - item belongs to.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the user that added the item to the playlist.\"\n - \ },\n \"videoOwnerChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel id for the channel this video belongs - to.\"\n }\n },\n \"id\": \"PlaylistItemSnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about a playlist, including - title, description and thumbnails. Basic details of a YouTube Playlist item - provided by the author. Next ID: 15\"\n },\n \"PropertyValue\": {\n - \ \"type\": \"object\",\n \"description\": \"A pair Property / Value.\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\",\n - \ \"description\": \"The property's value.\"\n },\n \"property\": - {\n \"type\": \"string\",\n \"description\": \"A property.\"\n - \ }\n },\n \"id\": \"PropertyValue\"\n },\n \"ChannelConversionPing\": - {\n \"id\": \"ChannelConversionPing\",\n \"properties\": {\n \"conversionUrl\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"context\": {\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ],\n \"enumDescriptions\": + \ \"rotation\": {\n \"type\": \"string\",\n \"enum\": + [\n \"none\",\n \"clockwise\",\n \"upsideDown\",\n + \ \"counterClockwise\",\n \"other\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The amount that + YouTube needs to rotate the original source content to properly display the + video.\"\n }\n }\n },\n \"ChannelSnippet\": {\n \"description\": + \"Basic details about a channel, including title, description and thumbnails.\",\n + \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The channel's title.\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"description\": \"The + date and time that the channel was created.\",\n \"type\": \"string\"\n + \ },\n \"country\": {\n \"description\": \"The country + of the channel.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The language + of the channel's default title and description.\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails + in your application, make sure that your code uses the image URLs exactly + as they are returned in API responses. For example, your application should + not use the http domain instead of the https domain in a URL returned in an + API response. Beginning in July 2018, channel thumbnail URLs will only be + available in the https domain, which is how the URLs appear in API responses. + After that time, you might see broken images in your application if it tries + to load YouTube images from the http domain. Thumbnail images might be empty + for newly created channels and might take up to one day to populate.\"\n },\n + \ \"customUrl\": {\n \"type\": \"string\",\n \"description\": + \"The custom url of the channel.\"\n },\n \"localized\": {\n + \ \"description\": \"Localized title and description, read-only.\",\n + \ \"$ref\": \"ChannelLocalization\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The description + of the channel.\"\n }\n },\n \"id\": \"ChannelSnippet\",\n + \ \"type\": \"object\"\n },\n \"CommentSnippet\": {\n \"id\": + \"CommentSnippet\",\n \"properties\": {\n \"canRate\": {\n \"description\": + \"Whether the current viewer can rate this comment.\",\n \"type\": + \"boolean\"\n },\n \"parentId\": {\n \"type\": \"string\",\n + \ \"description\": \"The unique id of the parent comment, only set + for replies.\"\n },\n \"updatedAt\": {\n \"description\": + \"The date and time when the comment was last updated.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"authorChannelId\": + {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"videoId\": + {\n \"description\": \"The ID of the video the comment refers to, + if any.\",\n \"type\": \"string\"\n },\n \"authorDisplayName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the user who posted the comment.\"\n },\n \"viewerRating\": + {\n \"description\": \"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.\",\n \"enum\": [\n + \ \"none\",\n \"like\",\n \"dislike\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"The entity + is liked.\",\n \"The entity is disliked.\"\n ],\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n \"authorChannelUrl\": + {\n \"type\": \"string\",\n \"description\": \"Link to the + author's YouTube channel, if any.\"\n },\n \"moderationStatus\": + {\n \"enumDescriptions\": [\n \"The comment is available + for public display.\",\n \"The comment is awaiting review by a + moderator.\",\n \"\",\n \"The comment is unfit for display.\"\n + \ ],\n \"description\": \"The comment's moderation status. + Will not be set if the comments were requested through the id filter.\",\n + \ \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ],\n \"type\": + \"string\"\n },\n \"textDisplay\": {\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n \"likeCount\": + {\n \"type\": \"integer\",\n \"description\": \"The total + number of likes this comment has received.\",\n \"format\": \"uint32\"\n + \ },\n \"publishedAt\": {\n \"description\": \"The date + and time when the comment was originally published.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"authorProfileImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL for + the avatar of the user who posted the comment.\"\n },\n \"textOriginal\": + {\n \"description\": \"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.\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Basic details about a comment, such as its author and text.\",\n \"type\": + \"object\"\n },\n \"SuperChatEventListResponse\": {\n \"id\": \"SuperChatEventListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"items\": {\n \"description\": + \"A list of Super Chat purchases that match the request criteria.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n + \ }\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n + \ \"default\": \"youtube#superChatEventListResponse\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"SubscriptionContentDetails\": + {\n \"properties\": {\n \"newItemCount\": {\n \"description\": + \"The number of new items in the subscription since its content was last read.\",\n + \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n + \ \"activityType\": {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Defines the - context of the ping.\"\n }\n },\n \"description\": \"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.\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"Details about a resource which is being promoted.\",\n - \ \"properties\": {\n \"customCtaButtonText\": {\n \"description\": - \"The custom call-to-action button text. If specified, it will override the - default button text for the cta_type.\",\n \"type\": \"string\"\n - \ },\n \"creativeViewUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should ping to indicate that - the user was shown this promoted item.\"\n },\n \"adTag\": {\n - \ \"description\": \"The URL the client should fetch to request a - promoted item.\",\n \"type\": \"string\"\n },\n \"clickTrackingUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user clicked through on this promoted - item.\"\n },\n \"impressionUrl\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The list of impression URLs. The client should - ping all of these URLs to indicate that the user was shown this promoted item.\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify the promoted video.\",\n \"type\": - \"string\"\n },\n \"forecastingUrl\": {\n \"description\": - \"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.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"destinationUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should direct the user to, if the user chooses to visit the advertiser's - website.\"\n },\n \"ctaType\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of call-to-action, a message - to the user indicating action that can be taken.\"\n },\n \"descriptionText\": - {\n \"type\": \"string\",\n \"description\": \"The text - description to accompany the promoted item.\"\n }\n }\n },\n - \ \"PlaylistListResponse\": {\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#playlistListResponse\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": + \ \"description\": \"The type of activity this subscription is for + (only uploads, everything).\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n + \ \"all\",\n \"uploads\"\n ]\n },\n \"totalItemCount\": + {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The approximate number of items that the subscription points to.\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"Details about + the content to witch a subscription refers.\",\n \"id\": \"SubscriptionContentDetails\"\n + \ },\n \"VideoTopicDetails\": {\n \"properties\": {\n \"relevantTopicIds\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"Similar to topic_id, except that these topics + are merely relevant to the video. These are topics that may be mentioned in, + or appear in the video. You can retrieve information about each topic using + Freebase Topic API.\",\n \"type\": \"array\"\n },\n \"topicCategories\": + {\n \"description\": \"A list of Wikipedia URLs that provide a high-level + description of the video's content.\",\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n }\n },\n \"topicIds\": + {\n \"description\": \"A list of Freebase topic IDs that are centrally + associated with the video. These are topics that are centrally featured in + the video, and it can be said that the video is mainly about each of these. + You can retrieve information about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase + Topic API.\",\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"type\": \"array\"\n }\n },\n \"description\": + \"Freebase topic information related to the video.\",\n \"id\": \"VideoTopicDetails\",\n + \ \"type\": \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": + {\n \"properties\": {\n \"allowed\": {\n \"items\": {\n + \ \"type\": \"string\"\n },\n \"description\": + \"A list of region codes that identify countries where the video is viewable. + If this property is present and a country is not listed in its value, then + the video is blocked from appearing in that country. If this property is present + and contains an empty list, the video is blocked in all countries.\",\n \"type\": + \"array\"\n },\n \"blocked\": {\n \"description\": + \"A list of region codes that identify countries where the video is blocked. + If this property is present and a country is not listed in its value, then + the video is viewable in that country. If this property is present and contains + an empty list, the video is viewable in all countries.\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n + \ }\n },\n \"description\": \"DEPRECATED Region restriction + of the video.\",\n \"id\": \"VideoContentDetailsRegionRestriction\",\n + \ \"type\": \"object\"\n },\n \"VideoRating\": {\n \"type\": + \"object\",\n \"properties\": {\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the video.\"\n },\n \"rating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"description\": \"Rating + of a video.\",\n \"enumDescriptions\": [\n \"\",\n \"The + entity is liked.\",\n \"The entity is disliked.\"\n ]\n + \ }\n },\n \"id\": \"VideoRating\",\n \"description\": + \"Basic details about rating of a video.\"\n },\n \"VideoLocalization\": + {\n \"type\": \"object\",\n \"properties\": {\n \"title\": + {\n \"description\": \"Localized version of the video's title.\",\n + \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"Localized version of the video's + description.\"\n }\n },\n \"description\": \"Localized versions + of certain video properties (e.g. title).\",\n \"id\": \"VideoLocalization\"\n + \ },\n \"VideoGetRatingResponse\": {\n \"type\": \"object\",\n \"id\": + \"VideoGetRatingResponse\",\n \"properties\": {\n \"items\": {\n + \ \"type\": \"array\",\n \"description\": \"A list of ratings + that match the request criteria.\",\n \"items\": {\n \"$ref\": + \"VideoRating\"\n }\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n \"default\": + \"youtube#videoGetRatingResponse\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n }\n + \ }\n },\n \"Video\": {\n \"type\": \"object\",\n \"description\": + \"A *video* resource represents a YouTube video.\",\n \"id\": \"Video\",\n + \ \"properties\": {\n \"player\": {\n \"description\": + \"The player object contains information that you would use to play the video + in an embedded player.\",\n \"$ref\": \"VideoPlayer\"\n },\n + \ \"localizations\": {\n \"type\": \"object\",\n \"additionalProperties\": + {\n \"$ref\": \"VideoLocalization\"\n },\n \"description\": + \"The localizations object contains localized versions of the basic details + about the video, such as its title and description.\"\n },\n \"processingDetails\": + {\n \"description\": \"The processingDetails object encapsulates + information about YouTube's progress in processing the uploaded video file. + The properties in the object identify the current processing status and an + estimate of the time remaining until YouTube finishes processing the video. + This part also indicates whether different types of data or content, such + as file details or thumbnail images, are available for the video. The processingProgress + object is designed to be polled so that the video uploaded can track the progress + that YouTube has made in processing the uploaded video file. This data can + only be retrieved by the video owner.\",\n \"$ref\": \"VideoProcessingDetails\"\n + \ },\n \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n + \ \"description\": \"Age restriction details related to a video. This + data can only be retrieved by the video owner.\"\n },\n \"monetizationDetails\": + {\n \"$ref\": \"VideoMonetizationDetails\",\n \"description\": + \"The monetizationDetails object encapsulates information about the monetization + status of the video.\"\n },\n \"topicDetails\": {\n \"description\": + \"The topicDetails object encapsulates information about Freebase topics associated + with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n + \ \"projectDetails\": {\n \"$ref\": \"VideoProjectDetails\",\n + \ \"description\": \"The projectDetails object contains information + about the project specific video metadata. b/157517979: This part was never + populated after it was added. However, it sees non-zero traffic because there + is generated client code in the wild that refers to it [1]. We keep this field + and do NOT remove it because otherwise V3 would return an error when this + part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n + \ },\n \"recordingDetails\": {\n \"$ref\": \"VideoRecordingDetails\",\n + \ \"description\": \"The recordingDetails object encapsulates information + about the location, date and address where the video was recorded.\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.videos.update\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + uses to uniquely identify the video.\"\n },\n \"contentDetails\": + {\n \"description\": \"The contentDetails object contains information + about the video content, including the length of the video and its aspect + ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"status\": + {\n \"$ref\": \"VideoStatus\",\n \"description\": \"The + status object contains information about the video's uploading, processing, + and privacy statuses.\"\n },\n \"liveStreamingDetails\": {\n + \ \"description\": \"The liveStreamingDetails object contains metadata + about a live video broadcast. The object will only be present in a video resource + if the video is an upcoming, live, or completed live broadcast.\",\n \"$ref\": + \"VideoLiveStreamingDetails\"\n },\n \"kind\": {\n \"default\": + \"youtube#video\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\"\n + \ },\n \"statistics\": {\n \"$ref\": \"VideoStatistics\",\n + \ \"description\": \"The statistics object contains statistics about + the video.\"\n },\n \"suggestions\": {\n \"description\": + \"The suggestions object encapsulates suggestions that identify opportunities + to improve the video quality or the metadata for the uploaded video. This + data can only be retrieved by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"VideoSnippet\",\n \"description\": \"The + snippet object contains basic details about the video, such as its title, + description, and category.\"\n },\n \"fileDetails\": {\n \"$ref\": + \"VideoFileDetails\",\n \"description\": \"The fileDetails object + encapsulates information about the video file that was uploaded to YouTube, + including the file's resolution, duration, audio and video codecs, stream + bitrates, and more. This data can only be retrieved by the video owner.\"\n + \ }\n }\n },\n \"AbuseType\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"AbuseType\"\n },\n \"Playlist\": + {\n \"id\": \"Playlist\",\n \"description\": \"A *playlist* resource + represents a YouTube playlist. A playlist is a collection of videos that can + be viewed sequentially and shared with other users. A playlist can contain + up to 200 videos, and YouTube does not limit the number of playlists that + each user creates. By default, playlists are publicly visible to other users, + but playlists can be public or private. YouTube also uses playlists to identify + special collections of videos for a channel, such as: - uploaded videos - + favorite videos - positively rated (liked) videos - watch history - watch + later To be more specific, these lists are associated with a channel, which + is a collection of a person, group, or company's videos, playlists, and other + YouTube information. You can retrieve the playlist IDs for each of these lists + from the channel resource for a given channel. You can then use the playlistItems.list + method to retrieve any of those lists. You can also add or remove items from + those lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"contentDetails\": + {\n \"description\": \"The contentDetails object contains information + like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#playlist\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n + \ \"type\": \"string\"\n },\n \"localizations\": {\n + \ \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n + \ },\n \"description\": \"Localizations for different languages\",\n + \ \"type\": \"object\"\n },\n \"player\": {\n \"description\": + \"The player object contains information that you would use to play the playlist + in an embedded player.\",\n \"$ref\": \"PlaylistPlayer\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the playlist, such as its + title and description.\",\n \"$ref\": \"PlaylistSnippet\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube uses to + uniquely identify the playlist.\",\n \"type\": \"string\"\n },\n + \ \"status\": {\n \"$ref\": \"PlaylistStatus\",\n \"description\": + \"The status object contains status information for the playlist.\"\n }\n + \ }\n },\n \"ChannelBrandingSettings\": {\n \"properties\": + {\n \"channel\": {\n \"$ref\": \"ChannelSettings\",\n \"description\": + \"Branding properties for the channel view.\"\n },\n \"watch\": + {\n \"$ref\": \"WatchSettings\",\n \"description\": \"Branding + properties for the watch page.\"\n },\n \"hints\": {\n \"description\": + \"Additional experimental branding properties.\",\n \"items\": {\n + \ \"$ref\": \"PropertyValue\"\n },\n \"type\": + \"array\"\n },\n \"image\": {\n \"$ref\": \"ImageSettings\",\n + \ \"description\": \"Branding properties for branding images.\"\n + \ }\n },\n \"id\": \"ChannelBrandingSettings\",\n \"type\": + \"object\",\n \"description\": \"Branding properties of a YouTube channel.\"\n + \ },\n \"VideoRecordingDetails\": {\n \"description\": \"Recording + information associated with the video.\",\n \"properties\": {\n \"recordingDate\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the video was recorded.\"\n + \ },\n \"location\": {\n \"$ref\": \"GeoPoint\",\n \"description\": + \"The geolocation information associated with the video.\"\n },\n \"locationDescription\": + {\n \"description\": \"The text description of the location where + the video was recorded.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"VideoRecordingDetails\"\n },\n + \ \"LiveStreamListResponse\": {\n \"type\": \"object\",\n \"properties\": + {\n \"eventId\": {\n \"description\": \"Serialized EventId + of the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\"\n },\n + \ \"items\": {\n \"description\": \"A list of live streams + that match the request criteria.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"LiveStream\"\n }\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"items\": {\n \"description\": \"A list of playlists that - match the request criteria\",\n \"items\": {\n \"$ref\": - \"Playlist\"\n },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"PlaylistListResponse\",\n \"type\": - \"object\"\n },\n \"LiveBroadcastStatistics\": {\n \"properties\": - {\n \"concurrentViewers\": {\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"totalChatCount\": {\n - \ \"format\": \"uint64\",\n \"description\": \"The total - number of live chat messages currently on the broadcast. The property and - its value will be present if the broadcast is public, has the live chat feature - enabled, and has at least one message. Note that this field will not be filled - after the broadcast ends. So this property would not identify the number of - chat messages for an archived video of a completed live broadcast.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"Statistics about the live broadcast. These represent - a snapshot of the values at the time of the request. Statistics are only returned - for live broadcasts.\",\n \"type\": \"object\"\n },\n \"LiveStreamContentDetails\": - {\n \"description\": \"Detailed settings of a stream.\",\n \"type\": - \"object\",\n \"id\": \"LiveStreamContentDetails\",\n \"properties\": - {\n \"isReusable\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \"\n },\n \"closedCaptionsIngestionUrl\": {\n \"description\": - \"The ingestion URL where the closed captions of this stream are sent.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ChannelSectionListResponse\": - {\n \"id\": \"ChannelSectionListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelSectionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveStreamListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveStreamListResponse\"\n + \ },\n \"GeoPoint\": {\n \"id\": \"GeoPoint\",\n \"description\": + \"Geographical coordinates of a point, in WGS84.\",\n \"properties\": + {\n \"altitude\": {\n \"type\": \"number\",\n \"format\": + \"double\",\n \"description\": \"Altitude above the reference ellipsoid, + in meters.\"\n },\n \"longitude\": {\n \"format\": + \"double\",\n \"description\": \"Longitude in degrees.\",\n \"type\": + \"number\"\n },\n \"latitude\": {\n \"type\": \"number\",\n + \ \"description\": \"Latitude in degrees.\",\n \"format\": + \"double\"\n }\n },\n \"type\": \"object\"\n },\n \"CommentThread\": + {\n \"description\": \"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.\",\n \"properties\": + {\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n + \ \"description\": \"The replies object contains a limited number + of replies (if any) to the top level comment found in the snippet.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#commentThread\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of ChannelSections that match the request criteria.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n }\n },\n \"LiveChatModeratorListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n + \ \"id\": {\n \"description\": \"The ID that YouTube uses to + uniquely identify the comment thread.\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the comment thread and also the top level + comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"CommentThread\"\n },\n \"ActivityContentDetailsSocial\": + {\n \"description\": \"Details about a social network post.\",\n \"id\": + \"ActivityContentDetailsSocial\",\n \"type\": \"object\",\n \"properties\": + {\n \"author\": {\n \"type\": \"string\",\n \"description\": + \"The author of the social network post.\"\n },\n \"imageUrl\": + {\n \"type\": \"string\",\n \"description\": \"An image + of the post's author.\"\n },\n \"referenceUrl\": {\n \"description\": + \"The URL of the social network post.\",\n \"type\": \"string\"\n + \ },\n \"type\": {\n \"enum\": [\n \"unspecified\",\n + \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The name of the social network.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object encapsulates information + that identifies the resource associated with a social network post.\"\n }\n + \ }\n },\n \"VideoSuggestionsTagSuggestion\": {\n \"type\": + \"object\",\n \"description\": \"A single tag suggestion with it's relevance + information.\",\n \"id\": \"VideoSuggestionsTagSuggestion\",\n \"properties\": + {\n \"categoryRestricts\": {\n \"type\": \"array\",\n \"description\": + \"A set of video categories for which the tag is relevant. You can use this + information to display appropriate tag suggestions based on the video category + that the video uploader associates with the video. By default, tag suggestions + are relevant for all categories if there are no restricts defined for the + keyword.\",\n \"items\": {\n \"type\": \"string\"\n }\n + \ },\n \"tag\": {\n \"description\": \"The keyword tag + suggested for the video.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"ChannelStatus\": {\n \"properties\": {\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n },\n \"longUploadsStatus\": + {\n \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n + \ \"eligible\",\n \"disallowed\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 + for more information.\"\n },\n \"madeForKids\": {\n \"type\": + \"boolean\"\n },\n \"isLinked\": {\n \"type\": \"boolean\",\n + \ \"description\": \"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.\"\n },\n \"privacyStatus\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"Privacy status + of the channel.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ]\n }\n },\n \"type\": + \"object\",\n \"description\": \"JSON template for the status part of + a channel.\",\n \"id\": \"ChannelStatus\"\n },\n \"PlaylistItemStatus\": + {\n \"properties\": {\n \"privacyStatus\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"description\": \"This resource's + privacy status.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"PlaylistItemStatus\",\n \"description\": + \"Information about the playlist item's privacy status.\"\n },\n \"PlaylistItemListResponse\": + {\n \"id\": \"PlaylistItemListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"etag\": {\n \"type\": \"string\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#playlistItemListResponse\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n \"default\": - \"youtube#liveChatModeratorListResponse\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"description\": \"A list of moderators that match the request criteria.\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": + the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"description\": + \"A list of playlist items that match the request criteria.\",\n \"type\": + \"array\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"visitorId\": {\n + \ \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n }\n }\n },\n \"SearchListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#searchListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#searchListResponse\\\".\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"SearchResult\"\n },\n \"type\": \"array\",\n \"description\": + \"Pagination information for token pagination.\"\n },\n \"regionCode\": + {\n \"type\": \"string\"\n },\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"SearchListResponse\"\n },\n \"ChannelProfileDetails\": + {\n \"id\": \"ChannelProfileDetails\",\n \"properties\": {\n \"channelUrl\": + {\n \"type\": \"string\",\n \"description\": \"The channel's + URL.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The YouTube channel ID.\"\n },\n \"profileImageUrl\": + {\n \"description\": \"The channels's avatar URL.\",\n \"type\": + \"string\"\n },\n \"displayName\": {\n \"type\": \"string\",\n + \ \"description\": \"The channel's display name.\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"I18nRegion\": {\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": + \"youtube#i18nRegion\",\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the i18n region.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the i18n region, such as + region code and human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n + \ }\n },\n \"id\": \"I18nRegion\",\n \"type\": \"object\",\n + \ \"description\": \"A *i18nRegion* resource identifies a region where + YouTube is available.\"\n },\n \"MembershipsDuration\": {\n \"type\": + \"object\",\n \"properties\": {\n \"memberTotalDurationMonths\": + {\n \"type\": \"integer\",\n \"format\": \"int32\",\n \"description\": + \"The cumulative time the user has been a member across all levels in complete + months (the time is rounded down to the nearest integer).\"\n },\n + \ \"memberSince\": {\n \"type\": \"string\",\n \"description\": + \"The date and time when the user became a continuous member across all levels.\"\n + \ }\n },\n \"id\": \"MembershipsDuration\"\n },\n \"ActivityContentDetailsFavorite\": + {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsFavorite\",\n + \ \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n + \ },\n \"description\": \"Information about a video that was marked + as a favorite video.\"\n },\n \"VideoProcessingDetails\": {\n \"type\": + \"object\",\n \"id\": \"VideoProcessingDetails\",\n \"description\": + \"Describes processing status and progress and availability of some other + Video resource parts.\",\n \"properties\": {\n \"processingStatus\": + {\n \"description\": \"The video's processing status. This value + indicates whether YouTube was able to process the video or if the video is + still being processed.\",\n \"type\": \"string\",\n \"enum\": + [\n \"processing\",\n \"succeeded\",\n \"failed\",\n + \ \"terminated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"processingProgress\": {\n \"description\": + \"The processingProgress object contains information about the progress YouTube + has made in processing the video. The values are really only relevant if the + video's processing status is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n + \ },\n \"processingFailureReason\": {\n \"type\": \"string\",\n + \ \"description\": \"The reason that YouTube failed to process the + video. This property will only have a value if the processingStatus property's + value is failed.\",\n \"enum\": [\n \"uploadFailed\",\n + \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"tagSuggestionsAvailability\": + {\n \"type\": \"string\",\n \"description\": \"This value + indicates whether keyword (tag) suggestions are available for the video. Tags + can be added to a video's metadata to make it easier for other users to find + the video. You can retrieve these suggestions by requesting the suggestions + part in your videos.list() request.\"\n },\n \"editorSuggestionsAvailability\": + {\n \"description\": \"This value indicates whether video editing + suggestions, which might improve video quality or the playback experience, + are available for the video. You can retrieve these suggestions by requesting + the suggestions part in your videos.list() request.\",\n \"type\": + \"string\"\n },\n \"processingIssuesAvailability\": {\n \"type\": + \"string\",\n \"description\": \"This value indicates whether the + video processing engine has generated suggestions that might improve YouTube's + ability to process the the video, warnings that explain video processing problems, + or errors that cause video processing problems. You can retrieve these suggestions + by requesting the suggestions part in your videos.list() request.\"\n },\n + \ \"fileDetailsAvailability\": {\n \"type\": \"string\",\n + \ \"description\": \"This value indicates whether file details are + available for the uploaded video. You can retrieve a video's file details + by requesting the fileDetails part in your videos.list() request.\"\n },\n + \ \"thumbnailsAvailability\": {\n \"type\": \"string\",\n \"description\": + \"This value indicates whether thumbnail images have been generated for the + video.\"\n }\n }\n },\n \"VideoContentDetails\": {\n \"id\": + \"VideoContentDetails\",\n \"properties\": {\n \"duration\": {\n + \ \"type\": \"string\",\n \"description\": \"The length of + the video. The tag value is an ISO 8601 duration in the format PT#M#S, in + which the letters PT indicate that the value specifies a period of time, and + the letters M and S refer to length in minutes and seconds, respectively. + The # characters preceding the M and S letters are both integers that specify + the number of minutes (or seconds) of the video. For example, a value of PT15M51S + indicates that the video is 15 minutes and 51 seconds long.\"\n },\n + \ \"countryRestriction\": {\n \"$ref\": \"AccessPolicy\",\n + \ \"description\": \"The countryRestriction object contains information + about the countries where a video is (or is not) viewable.\"\n },\n + \ \"licensedContent\": {\n \"description\": \"The value of + is_license_content indicates whether the video is licensed content.\",\n \"type\": + \"boolean\"\n },\n \"definition\": {\n \"description\": + \"The value of definition indicates whether the video is available in high + definition or only in standard definition.\",\n \"enumDescriptions\": + [\n \"sd\",\n \"hd\"\n ],\n \"enum\": + [\n \"sd\",\n \"hd\"\n ],\n \"type\": + \"string\"\n },\n \"regionRestriction\": {\n \"description\": + \"The regionRestriction object contains information about the countries where + a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed + property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": + \"VideoContentDetailsRegionRestriction\"\n },\n \"caption\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"true\",\n + \ \"false\"\n ],\n \"description\": \"The value + of captions indicates whether the video has captions or not.\"\n },\n + \ \"dimension\": {\n \"description\": \"The value of dimension + indicates whether the video is available in 3D or in 2D.\",\n \"type\": + \"string\"\n },\n \"contentRating\": {\n \"description\": + \"Specifies the ratings that the video received under various rating schemes.\",\n + \ \"$ref\": \"ContentRating\"\n },\n \"projection\": + {\n \"description\": \"Specifies the projection format of the video.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"rectangular\",\n + \ \"360\"\n ]\n },\n \"hasCustomThumbnail\": + {\n \"type\": \"boolean\",\n \"description\": \"Indicates + whether the video uploader has provided a custom thumbnail image for the video. + This property is only visible to the video uploader.\"\n }\n },\n + \ \"description\": \"Details about the content of a YouTube Video.\",\n + \ \"type\": \"object\"\n },\n \"ActivityContentDetailsLike\": {\n + \ \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the rated resource.\",\n + \ \"$ref\": \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsLike\",\n + \ \"description\": \"Information about a resource that received a positive + (like) rating.\",\n \"type\": \"object\"\n },\n \"ChannelContentDetails\": + {\n \"properties\": {\n \"relatedPlaylists\": {\n \"type\": + \"object\",\n \"properties\": {\n \"watchLater\": {\n + \ \"type\": \"string\",\n \"description\": \"The + ID of the playlist that contains the channel\\\"s watch later playlist. Use + the playlistItems.insert and playlistItems.delete to add or remove items from + that list.\"\n },\n \"uploads\": {\n \"description\": + \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use + the videos.insert method to upload new videos and the videos.delete method + to delete previously uploaded videos.\",\n \"type\": \"string\"\n + \ },\n \"likes\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the playlist that contains the + channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\"\n },\n \"favorites\": + {\n \"description\": \"The ID of the playlist that contains the + channel\\\"s favorite videos. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\",\n \"type\": \"string\"\n + \ },\n \"watchHistory\": {\n \"description\": + \"The ID of the playlist that contains the channel\\\"s watch history. Use + the playlistItems.insert and playlistItems.delete to add or remove items from + that list.\",\n \"type\": \"string\"\n }\n }\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelContentDetails\",\n + \ \"description\": \"Details about the content of a channel.\"\n },\n + \ \"RelatedEntity\": {\n \"id\": \"RelatedEntity\",\n \"properties\": + {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"ChannelConversionPing\": {\n \"id\": + \"ChannelConversionPing\",\n \"type\": \"object\",\n \"description\": + \"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.\",\n \"properties\": {\n \"conversionUrl\": {\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n \"context\": + {\n \"type\": \"string\",\n \"enum\": [\n \"subscribe\",\n + \ \"unsubscribe\",\n \"cview\"\n ],\n \"description\": + \"Defines the context of the ping.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ]\n }\n + \ }\n },\n \"LiveBroadcastListResponse\": {\n \"properties\": + {\n \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"id\": \"LiveChatModeratorListResponse\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsChannelItem\": {\n \"type\": - \"object\",\n \"description\": \"Details about a resource which was added - to a channel.\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was added to the channel.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"LiveChatMessageDeletedDetails\": {\n \"id\": \"LiveChatMessageDeletedDetails\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelSectionContentDetails\": - {\n \"properties\": {\n \"playlists\": {\n \"type\": - \"array\",\n \"description\": \"The playlist ids for type single_playlist - and multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"channels\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"type\": \"array\"\n }\n },\n \"id\": \"ChannelSectionContentDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Details about a channelsection, - including playlists and channels.\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"id\": \"LiveChatMembershipGiftingDetails\",\n \"properties\": - {\n \"giftMembershipsLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\"\n },\n - \ \"giftMembershipsCount\": {\n \"description\": \"The number - of gift memberships purchased by the user.\",\n \"type\": \"integer\",\n - \ \"format\": \"int32\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoCategory\": {\n \"id\": \"VideoCategory\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the video category.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the video category, including its title.\",\n - \ \"$ref\": \"VideoCategorySnippet\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#videoCategory\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#videoCategory\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A *videoCategory* resource identifies a category - that has been or could be associated with uploaded videos.\"\n },\n \"VideoSnippet\": - {\n \"properties\": {\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the videos's default - snippet.\"\n },\n \"tags\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of keyword tags associated with the video. - Tags may contain spaces.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that the video was uploaded to.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the video belongs to.\"\n },\n \"title\": - {\n \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The video's - description. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"categoryId\": {\n \"description\": \"The YouTube video - category associated with the video.\",\n \"type\": \"string\"\n },\n - \ \"localized\": {\n \"description\": \"Localized snippet selected - with the hl parameter. If no such localization exists, this field is populated - with the default snippet. (Read-only)\",\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"defaultAudioLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the video was uploaded.\",\n \"type\": \"string\"\n - \ },\n \"liveBroadcastContent\": {\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoSnippet\",\n \"description\": \"Basic - details about a video, including title, description, uploader, thumbnails - and category.\"\n },\n \"ChannelSection\": {\n \"id\": \"ChannelSection\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the channel section, such as its type, style and title.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"description\": \"Localizations - for different languages\"\n },\n \"targeting\": {\n \"$ref\": - \"ChannelSectionTargeting\",\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains details about the channel section content, such as a list - of playlists or channels featured in the section.\",\n \"$ref\": - \"ChannelSectionContentDetails\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#channelSection\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel section.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelSettings\": - {\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the channel title.\"\n },\n - \ \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"showBrowseView\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether the - tab to browse the videos should be displayed.\"\n },\n \"showRelatedChannels\": - {\n \"description\": \"Whether related channels should be proposed.\",\n - \ \"type\": \"boolean\"\n },\n \"unsubscribedTrailer\": - {\n \"description\": \"The trailer of the channel, for users that - are not subscribers.\",\n \"type\": \"string\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"featuredChannelsUrls\": {\n \"type\": \"array\",\n - \ \"description\": \"The list of featured channels.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"profileColor\": - {\n \"description\": \"A prominent color that can be rendered on - this channel page.\",\n \"type\": \"string\"\n },\n \"keywords\": - {\n \"type\": \"string\",\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\"\n },\n \"featuredChannelsTitle\": - {\n \"type\": \"string\",\n \"description\": \"Title for - the featured channels tab.\"\n },\n \"defaultLanguage\": {\n - \ \"type\": \"string\"\n },\n \"moderateComments\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - user-submitted comments left on the channel page need to be approved by the - channel owner to be publicly visible.\"\n },\n \"defaultTab\": - {\n \"description\": \"Which content tab users should see when viewing - the channel.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"Specifies the channel description.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Branding properties - for the channel view.\",\n \"id\": \"ChannelSettings\",\n \"type\": - \"object\"\n },\n \"SearchResult\": {\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#searchResult\",\n \"type\": \"string\",\n + page in the result set.\"\n },\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": + \"A list of broadcasts that match the request criteria.\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#liveBroadcastListResponse\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#searchResult\\\".\"\n },\n \"id\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The id - object contains information that can be used to uniquely identify the resource - that matches the search request.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about a search result, such as its title or description. For - example, if the search result is a video, then the title will be the video's - title and the description will be the video's description.\",\n \"$ref\": - \"SearchResultSnippet\"\n }\n },\n \"id\": \"SearchResult\",\n - \ \"type\": \"object\",\n \"description\": \"A search result contains - information about a YouTube video, channel, or playlist that matches the search - parameters specified in an API request. While a search result points to a - uniquely identifiable resource, like a video, it does not have its own persistent - data.\"\n },\n \"PlaylistStatus\": {\n \"properties\": {\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"description\": - \"The playlist's privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"id\": - \"PlaylistStatus\",\n \"type\": \"object\"\n },\n \"ImageSettings\": - {\n \"description\": \"Branding properties for images associated with - the channel.\",\n \"id\": \"ImageSettings\",\n \"properties\": {\n - \ \"bannerTabletHdImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. Tablet size high resolution (2276x377).\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size low resolution (1138x188).\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"smallBrandedBannerImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n - \ \"description\": \"The URL for the 640px by 70px banner image that - appears below the video player in the default view of the video watch page. - The URL for the image that appears above the top-left corner of the video - player. This is a 25-pixel-high image with a flexible width that cannot exceed - 170 pixels.\"\n },\n \"largeBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 854px - by 70px image that appears below the video player in the expanded video view - of the video watch page.\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": - {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\",\n \"type\": \"string\"\n },\n \"bannerTvImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size low resolution (320x88).\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"trackingImageUrl\": - {\n \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerTabletImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n },\n \"bannerMobileImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size (640x175).\"\n },\n \"bannerExternalUrl\": {\n \"description\": - \"This is generated when a ChannelBanner.Insert request has succeeded for - the given channel.\",\n \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\"\n },\n \"bannerImageUrl\": - {\n \"description\": \"Banner image. Desktop size (1060x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"PlaylistContentDetails\": {\n \"id\": - \"PlaylistContentDetails\",\n \"properties\": {\n \"itemCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveBroadcast\": {\n \"id\": \"LiveBroadcast\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#liveBroadcast\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcast\\\".\"\n },\n \"statistics\": - {\n \"description\": \"The statistics object contains info about - the event's current stats. These include concurrent viewers and total chat - count. Statistics can change (in either direction) during the lifetime of - an event. Statistics are only returned while the event is live.\",\n \"$ref\": - \"LiveBroadcastStatistics\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the broadcast.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"contentDetails\": {\n \"$ref\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\"\n },\n \"status\": - {\n \"$ref\": \"LiveBroadcastStatus\",\n \"description\": - \"The status object contains information about the event's status.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the event, including its title, description, start time, - and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n }\n - \ },\n \"description\": \"A *liveBroadcast* resource represents an - event that will be streamed, via live video, on YouTube.\",\n \"type\": - \"object\"\n },\n \"ChannelBrandingSettings\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelBrandingSettings\",\n \"properties\": {\n \"image\": - {\n \"$ref\": \"ImageSettings\",\n \"description\": \"Branding - properties for branding images.\"\n },\n \"watch\": {\n \"$ref\": - \"WatchSettings\",\n \"description\": \"Branding properties for the - watch page.\"\n },\n \"hints\": {\n \"items\": {\n - \ \"$ref\": \"PropertyValue\"\n },\n \"type\": - \"array\",\n \"description\": \"Additional experimental branding - properties.\"\n },\n \"channel\": {\n \"description\": - \"Branding properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n - \ }\n },\n \"description\": \"Branding properties of a YouTube - channel.\"\n },\n \"ChannelToStoreLinkDetails\": {\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"merchantId\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"Google Merchant Center id of the - store.\"\n },\n \"storeUrl\": {\n \"description\": - \"Landing page of the store.\",\n \"type\": \"string\"\n },\n - \ \"storeName\": {\n \"type\": \"string\",\n \"description\": - \"Name of the store.\"\n }\n }\n },\n \"LanguageTag\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"value\": {\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LanguageTag\"\n - \ },\n \"ChannelConversionPings\": {\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"pings\": {\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ },\n \"description\": \"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.\",\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"ChannelConversionPings\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Information about - the uploaded video.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsUpload\"\n - \ },\n \"VideoAbuseReportSecondaryReason\": {\n \"properties\": - {\n \"label\": {\n \"description\": \"The localized label - for this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The ID of this - abuse report secondary reason.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"type\": - \"object\"\n },\n \"VideoStatus\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"embeddable\": {\n \"description\": - \"This value indicates if the video can be embedded on another website. @mutable - youtube.videos.insert youtube.videos.update\",\n \"type\": \"boolean\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"rejectionReason\": {\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"description\": \"This value explains why YouTube - rejected an uploaded video. This property is only present if the uploadStatus - property indicates that the upload was rejected.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"Copyright infringement.\",\n + the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ }\n },\n \"id\": \"LiveBroadcastListResponse\",\n \"type\": + \"object\"\n },\n \"LiveStreamConfigurationIssue\": {\n \"properties\": + {\n \"description\": {\n \"description\": \"The long-form + description of the issue and how to resolve it.\",\n \"type\": \"string\"\n + \ },\n \"type\": {\n \"enum\": [\n \"gopSizeOver\",\n + \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n + \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n + \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n + \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n + \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n + \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n + \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n + \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n + \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n + \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n + \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n + \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n + \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The kind of error happening.\"\n },\n \"reason\": {\n \"type\": + \"string\",\n \"description\": \"The short-form reason for this issue.\"\n + \ },\n \"severity\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"How severe this issue is to the stream.\",\n + \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n + \ ]\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveStreamConfigurationIssue\"\n },\n \"VideoProjectDetails\": {\n + \ \"id\": \"VideoProjectDetails\",\n \"description\": \"DEPRECATED. + b/157517979: This part was never populated after it was added. However, it + sees non-zero traffic because there is generated client code in the wild that + refers to it [1]. We keep this field and do NOT remove it because otherwise + V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"properties\": {},\n \"type\": \"object\"\n },\n \"PlaylistSnippet\": + {\n \"properties\": {\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The playlist's description.\"\n + \ },\n \"localized\": {\n \"$ref\": \"PlaylistLocalization\",\n + \ \"description\": \"Localized title and description, read-only.\"\n + \ },\n \"title\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.playlists.insert\",\n \"youtube.playlists.update\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The playlist's title.\"\n },\n \"channelTitle\": {\n \"description\": + \"The channel title of the channel that the video belongs to.\",\n \"type\": + \"string\"\n },\n \"thumbnailVideoId\": {\n \"description\": + \"Note: if the playlist has a custom thumbnail, this field will not be populated. + The video id selected by the user that will be used as the thumbnail of this + playlist. This field defaults to the first publicly viewable video in the + playlist, if: 1. The user has never selected a video to be the thumbnail of + the playlist. 2. The user selects a video to be the thumbnail, and then removes + that video from the playlist. 3. The user selects a non-owned video to be + the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": + \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + playlist. 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.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel that published the playlist.\"\n },\n \"tags\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"Keyword tags + associated with the playlist.\"\n },\n \"publishedAt\": {\n + \ \"type\": \"string\",\n \"description\": \"The date and + time that the playlist was created.\",\n \"format\": \"date-time\"\n + \ },\n \"defaultLanguage\": {\n \"description\": \"The + language of the playlist's default title and description.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"PlaylistSnippet\",\n \"description\": \"Basic details about a playlist, + including title, description and thumbnails.\"\n },\n \"ActivityContentDetailsBulletin\": + {\n \"description\": \"Details about a channel bulletin post.\",\n \"id\": + \"ActivityContentDetailsBulletin\",\n \"type\": \"object\",\n \"properties\": + {\n \"resourceId\": {\n \"description\": \"The resourceId + object contains information that identifies the resource associated with a + bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": + \"ResourceId\"\n }\n }\n },\n \"LiveChatMessageSnippet\": + {\n \"id\": \"LiveChatMessageSnippet\",\n \"properties\": {\n \"userBannedDetails\": + {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n + \ \"liveChatId\": {\n \"type\": \"string\"\n },\n \"messageDeletedDetails\": + {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"superStickerDetails\": + {\n \"description\": \"Details about the Super Sticker event, this + is only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n + \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n + \ },\n \"fanFundingEventDetails\": {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n + \ \"description\": \"Details about the funding event, this is only + set if the type is 'fanFundingEvent'.\"\n },\n \"textMessageDetails\": + {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": + \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n + \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n + \ \"type\": \"string\",\n \"description\": \"The date and + time when the message was orignally published.\"\n },\n \"displayMessage\": + {\n \"description\": \"Contains a string that can be displayed to + the user. If this field is not present the message is silent, at the moment + only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\",\n \"type\": + \"string\"\n },\n \"type\": {\n \"description\": \"The + type of message, this will always be present, it determines the contents of + the message as well as which fields will be present.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n + \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n + \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n + \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n + \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n + \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n + \ \"superChatEvent\",\n \"superStickerEvent\"\n ]\n + \ },\n \"giftMembershipReceivedDetails\": {\n \"$ref\": + \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": \"Details + about the Gift Membership Received event, this is only set if the type is + 'giftMembershipReceivedEvent'.\"\n },\n \"membershipGiftingDetails\": + {\n \"description\": \"Details about the Membership Gifting event, + this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": + \"LiveChatMembershipGiftingDetails\"\n },\n \"newSponsorDetails\": + {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": + \"Details about the New Member Announcement event, this is only set if the + type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term + for \\\"sponsor\\\".\"\n },\n \"authorChannelId\": {\n \"description\": + \"The ID of the user that authored this message, this field is not always + filled. textMessageEvent - the user that wrote the message fanFundingEvent + - the user that funded the broadcast newSponsorEvent - the user that just + became a sponsor memberMilestoneChatEvent - the member that sent the message + membershipGiftingEvent - the user that made the purchase giftMembershipReceivedEvent + - the user that received the gift membership messageDeletedEvent - the moderator + that took the action messageRetractedEvent - the author that retracted their + message userBannedEvent - the moderator that took the action superChatEvent + - the user that made the purchase superStickerEvent - the user that made the + purchase\",\n \"type\": \"string\"\n },\n \"hasDisplayContent\": + {\n \"description\": \"Whether the message has display content that + should be displayed to users.\",\n \"type\": \"boolean\"\n },\n + \ \"memberMilestoneChatDetails\": {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n + \ \"description\": \"Details about the Member Milestone Chat event, + this is only set if the type is 'memberMilestoneChatEvent'.\"\n },\n + \ \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n + \ \"description\": \"Details about the Super Chat event, this is only + set if the type is 'superChatEvent'.\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"Next ID: 33\"\n },\n \"InvideoBranding\": + {\n \"description\": \"LINT.IfChange Describes an invideo branding.\",\n + \ \"properties\": {\n \"position\": {\n \"description\": + \"The spatial position within the video where the branding watermark will + be displayed.\",\n \"$ref\": \"InvideoPosition\"\n },\n \"imageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The url of + the uploaded image. Only used in apiary to api communication.\"\n },\n + \ \"timing\": {\n \"description\": \"The temporal position + within the video where watermark will be displayed.\",\n \"$ref\": + \"InvideoTiming\"\n },\n \"imageBytes\": {\n \"type\": + \"string\",\n \"format\": \"byte\",\n \"description\": \"The + bytes the uploaded image. Only used in api to youtube communication.\"\n },\n + \ \"targetChannelId\": {\n \"description\": \"The channel to + which this branding links. If not present it defaults to the current channel.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"InvideoBranding\",\n + \ \"type\": \"object\"\n },\n \"Member\": {\n \"type\": \"object\",\n + \ \"id\": \"Member\",\n \"properties\": {\n \"etag\": {\n + \ \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#member\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\"\n + \ },\n \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the member.\"\n }\n },\n \"description\": \"A *member* resource + represents a member for a YouTube channel. A member provides recurring monetary + support to a creator and receives special benefits.\"\n },\n \"SuperStickerMetadata\": + {\n \"id\": \"SuperStickerMetadata\",\n \"properties\": {\n \"altTextLanguage\": + {\n \"description\": \"Specifies the localization language in which + the alt text is returned.\",\n \"type\": \"string\"\n },\n + \ \"altText\": {\n \"description\": \"Internationalized alt + text that describes the sticker image and any animation associated with it.\",\n + \ \"type\": \"string\"\n },\n \"stickerId\": {\n \"description\": + \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text + that includes pack name and a recognizable characteristic of the sticker.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"LevelDetails\": {\n \"type\": \"object\",\n \"id\": + \"LevelDetails\",\n \"properties\": {\n \"displayName\": {\n \"description\": + \"The name that should be used when referring to this level.\",\n \"type\": + \"string\"\n }\n }\n },\n \"ThumbnailSetResponse\": {\n + \ \"type\": \"object\",\n \"id\": \"ThumbnailSetResponse\",\n \"properties\": + {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"description\": \"A list of + thumbnails.\",\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n + \ }\n },\n \"eventId\": {\n \"type\": \"string\",\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n + \ \"default\": \"youtube#thumbnailSetResponse\"\n }\n }\n + \ },\n \"ActivityContentDetailsChannelItem\": {\n \"description\": + \"Details about a resource which was added to a channel.\",\n \"id\": + \"ActivityContentDetailsChannelItem\",\n \"type\": \"object\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + that was added to the channel.\"\n }\n }\n },\n \"LiveChatBanSnippet\": + {\n \"type\": \"object\",\n \"properties\": {\n \"liveChatId\": + {\n \"description\": \"The chat this ban is pertinent to.\",\n \"type\": + \"string\"\n },\n \"bannedUserDetails\": {\n \"$ref\": + \"ChannelProfileDetails\"\n },\n \"type\": {\n \"enumDescriptions\": + [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n + \ \"A temporary ban.\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n + \ \"temporary\"\n ],\n \"description\": \"The + type of ban.\"\n },\n \"banDurationSeconds\": {\n \"description\": + \"The duration of a ban, only filled if the ban has type TEMPORARY.\",\n \"type\": + \"string\",\n \"format\": \"uint64\"\n }\n },\n \"id\": + \"LiveChatBanSnippet\"\n },\n \"MembershipsDurationAtLevel\": {\n \"properties\": + {\n \"level\": {\n \"type\": \"string\",\n \"description\": + \"Pricing level ID.\"\n },\n \"memberSince\": {\n \"description\": + \"The date and time when the user became a continuous member for the given + level.\",\n \"type\": \"string\"\n },\n \"memberTotalDurationMonths\": + {\n \"description\": \"The cumulative time the user has been a member + for the given level in complete months (the time is rounded down to the nearest + integer).\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n + \ }\n },\n \"id\": \"MembershipsDurationAtLevel\",\n \"type\": + \"object\"\n },\n \"VideoStatus\": {\n \"description\": \"Basic + details about a video category, such as its localized title. Next Id: 18\",\n + \ \"properties\": {\n \"rejectionReason\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n \ \"Inappropriate video content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader account was suspended.\",\n \"Video duration was too long.\",\n \ \"Blocked by content owner.\",\n \"Uploader closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n },\n \"failureReason\": - {\n \"type\": \"string\",\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ],\n \"description\": + unspecified legal reason.\"\n ],\n \"enum\": [\n \"copyright\",\n + \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n + \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n + \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n + \ ],\n \"description\": \"This value explains why YouTube + rejected an uploaded video. This property is only present if the uploadStatus + property indicates that the upload was rejected.\"\n },\n \"license\": + {\n \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"description\": + \"The video's license. @mutable youtube.videos.insert youtube.videos.update\"\n + \ },\n \"publishAt\": {\n \"type\": \"string\",\n \"description\": + \"The date and time when the video is scheduled to publish. It can be set + only if the privacy status of the video is private..\",\n \"format\": + \"date-time\"\n },\n \"failureReason\": {\n \"enum\": + [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n + \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n + \ ],\n \"enumDescriptions\": [\n \"Unable to convert + video content.\",\n \"Invalid file format.\",\n \"Empty + file.\",\n \"File was too small.\",\n \"Unsupported + codec.\",\n \"Upload wasn't finished.\"\n ],\n \"description\": \"This value explains why a video failed to upload. This property is only present if the uploadStatus property indicates that the upload failed.\",\n - \ \"enumDescriptions\": [\n \"Unable to convert video content.\",\n - \ \"Invalid file format.\",\n \"Empty file.\",\n \"File - was too small.\",\n \"Unsupported codec.\",\n \"Upload - wasn't finished.\"\n ]\n },\n \"license\": {\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's license. - @mutable youtube.videos.insert youtube.videos.update\"\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"uploadStatus\": - {\n \"description\": \"The status of the uploaded video.\",\n \"type\": + \ \"type\": \"string\"\n },\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n },\n \"madeForKids\": {\n + \ \"type\": \"boolean\"\n },\n \"uploadStatus\": {\n + \ \"description\": \"The status of the uploaded video.\",\n \"enum\": + [\n \"uploaded\",\n \"processed\",\n \"failed\",\n + \ \"rejected\",\n \"deleted\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"Video has been uploaded but not processed yet.\",\n \"Video has been successfully processed.\",\n \"Processing has failed. See FailureReason.\",\n \ \"Video has been rejected. See RejectionReason.\",\n \"Video - has been deleted.\"\n ],\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ]\n },\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's privacy - status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\"\n },\n - \ \"publishAt\": {\n \"description\": \"The date and time when - the video is scheduled to publish. It can be set only if the privacy status - of the video is private..\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n }\n },\n \"id\": \"VideoStatus\",\n \"description\": - \"Basic details about a video category, such as its localized title. Next - Id: 18\"\n },\n \"ActivityContentDetails\": {\n \"id\": \"ActivityContentDetails\",\n - \ \"properties\": {\n \"recommendation\": {\n \"description\": - \"The recommendation object contains information about a recommended resource. - This property is only present if the snippet.type is recommendation.\",\n - \ \"$ref\": \"ActivityContentDetailsRecommendation\"\n },\n - \ \"like\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsLike\"\n },\n \"social\": {\n \"$ref\": - \"ActivityContentDetailsSocial\",\n \"description\": \"The social - object contains details about a social network post. This property is only - present if the snippet.type is social.\"\n },\n \"subscription\": - {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n \"description\": - \"The subscription object contains information about a channel that a user - subscribed to. This property is only present if the snippet.type is subscription.\"\n - \ },\n \"promotedItem\": {\n \"description\": \"The - promotedItem object contains details about a resource which is being promoted. - This property is only present if the snippet.type is promotedItem.\",\n \"$ref\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"bulletin\": - {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n \"description\": - \"The bulletin object contains details about a channel bulletin post. This - object is only present if the snippet.type is bulletin.\"\n },\n \"playlistItem\": - {\n \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"upload\": {\n \"$ref\": \"ActivityContentDetailsUpload\",\n - \ \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\"\n - \ },\n \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"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.\"\n },\n \"favorite\": {\n - \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Details about the content of an activity: the video that was shared, the - channel that was subscribed to, etc.\"\n },\n \"ChannelProfileDetails\": - {\n \"properties\": {\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube channel ID.\"\n },\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The channel's display name.\"\n - \ },\n \"channelUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channel's URL.\"\n }\n },\n \"id\": \"ChannelProfileDetails\",\n - \ \"type\": \"object\"\n },\n \"ChannelSectionTargeting\": {\n \"type\": - \"object\",\n \"description\": \"ChannelSection targeting setting.\",\n - \ \"id\": \"ChannelSectionTargeting\",\n \"properties\": {\n \"languages\": - {\n \"type\": \"array\",\n \"description\": \"The language - the channel section is targeting.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"regions\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The region the channel section is targeting.\"\n - \ },\n \"countries\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The country the channel - section is targeting.\",\n \"type\": \"array\"\n }\n }\n - \ },\n \"LiveChatModeratorSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatModeratorSnippet\",\n \"properties\": {\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the live chat this moderator can act on.\"\n },\n \"moderatorDetails\": - {\n \"description\": \"Details about the moderator.\",\n \"$ref\": - \"ChannelProfileDetails\"\n }\n }\n },\n \"ChannelTopicDetails\": - {\n \"properties\": {\n \"topicIds\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of Freebase topic IDs associated with - the channel. You can retrieve information about each topic using the Freebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n },\n \"topicCategories\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of Wikipedia URLs that describe the channel's - content.\"\n }\n },\n \"id\": \"ChannelTopicDetails\",\n - \ \"description\": \"Freebase topic information related to the channel.\",\n - \ \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": {\n - \ \"id\": \"VideoFileDetailsVideoStream\",\n \"type\": \"object\",\n - \ \"description\": \"Information about a video stream.\",\n \"properties\": - {\n \"codec\": {\n \"description\": \"The video codec that - the stream uses.\",\n \"type\": \"string\"\n },\n \"heightPixels\": - {\n \"type\": \"integer\",\n \"description\": \"The encoded - video content's height in pixels.\",\n \"format\": \"uint32\"\n },\n - \ \"bitrateBps\": {\n \"type\": \"string\",\n \"description\": - \"The video stream's bitrate, in bits per second.\",\n \"format\": - \"uint64\"\n },\n \"aspectRatio\": {\n \"format\": - \"double\",\n \"description\": \"The video content's display aspect - ratio, which specifies the aspect ratio in which the video should be displayed.\",\n - \ \"type\": \"number\"\n },\n \"frameRateFps\": {\n - \ \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"The video stream's frame rate, in frames per second.\"\n },\n \"vendor\": - {\n \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\",\n \"type\": - \"string\"\n },\n \"widthPixels\": {\n \"format\": - \"uint32\",\n \"description\": \"The encoded video content's width - in pixels. You can calculate the video's encoding aspect ratio as width_pixels - / height_pixels.\",\n \"type\": \"integer\"\n },\n \"rotation\": - {\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The amount that YouTube needs to - rotate the original source content to properly display the video.\"\n }\n - \ }\n },\n \"LiveChatMessage\": {\n \"id\": \"LiveChatMessage\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the message.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n },\n - \ \"authorDetails\": {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n - \ \"description\": \"The authorDetails object contains basic details - about the user that posted this message.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessage\\\".\",\n \"default\": - \"youtube#liveChatMessage\"\n }\n },\n \"description\": \"A - *liveChatMessage* resource represents a chat message in a YouTube Live Chat.\"\n - \ },\n \"ChannelContentOwnerDetails\": {\n \"description\": \"The - contentOwnerDetails object encapsulates channel data that is relevant for - YouTube Partners linked with the channel.\",\n \"id\": \"ChannelContentOwnerDetails\",\n - \ \"properties\": {\n \"contentOwner\": {\n \"description\": - \"The ID of the content owner linked to the channel.\",\n \"type\": - \"string\"\n },\n \"timeLinked\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the channel was linked to the content owner.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoPlayer\": {\n \"description\": - \"Player to be used for a video playback.\",\n \"type\": \"object\",\n - \ \"id\": \"VideoPlayer\",\n \"properties\": {\n \"embedWidth\": - {\n \"description\": \"The embed width\",\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n },\n \"embedHeight\": {\n - \ \"type\": \"string\",\n \"format\": \"int64\"\n },\n - \ \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoRating\": {\n \"id\": - \"VideoRating\",\n \"properties\": {\n \"rating\": {\n \"type\": - \"string\",\n \"description\": \"Rating of a video.\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ]\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Basic details - about rating of a video.\"\n },\n \"CommentThread\": {\n \"description\": - \"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.\",\n \"id\": \"CommentThread\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the comment thread and also the top level comment.\",\n - \ \"$ref\": \"CommentThreadSnippet\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the comment thread.\",\n \"type\": \"string\"\n },\n \"replies\": - {\n \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\",\n \"$ref\": - \"CommentThreadReplies\"\n },\n \"kind\": {\n \"type\": + has been deleted.\"\n ]\n },\n \"embeddable\": {\n + \ \"description\": \"This value indicates if the video can be embedded + on another website. @mutable youtube.videos.insert youtube.videos.update\",\n + \ \"type\": \"boolean\"\n },\n \"privacyStatus\": {\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"description\": \"The video's + privacy status.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"publicStatsViewable\": {\n \"description\": + \"This value indicates if the extended video statistics on the watch page + can be viewed by everyone. Note that the view count, likes, etc will still + be visible if this is disabled. @mutable youtube.videos.insert youtube.videos.update\",\n + \ \"type\": \"boolean\"\n }\n },\n \"id\": \"VideoStatus\",\n + \ \"type\": \"object\"\n },\n \"WatchSettings\": {\n \"type\": + \"object\",\n \"description\": \"Branding properties for the watch. All + deprecated.\",\n \"properties\": {\n \"textColor\": {\n \"type\": + \"string\",\n \"description\": \"The background color for the video + watch page's branded area.\"\n },\n \"featuredPlaylistId\": + {\n \"description\": \"An ID that uniquely identifies a playlist + that displays next to the video player.\",\n \"type\": \"string\"\n + \ },\n \"backgroundColor\": {\n \"description\": \"The + text color for the video watch page's branded area.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"WatchSettings\"\n },\n + \ \"CaptionListResponse\": {\n \"properties\": {\n \"items\": + {\n \"items\": {\n \"$ref\": \"Caption\"\n },\n + \ \"type\": \"array\",\n \"description\": \"A list of captions + that match the request criteria.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": + {\n \"default\": \"youtube#captionListResponse\",\n \"type\": \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n \"default\": - \"youtube#commentThread\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"PlaylistItemStatus\": - {\n \"id\": \"PlaylistItemStatus\",\n \"description\": \"Information - about the playlist item's privacy status.\",\n \"properties\": {\n \"privacyStatus\": - {\n \"description\": \"This resource's privacy status.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"Channel\": {\n \"type\": - \"object\",\n \"description\": \"A *channel* resource contains information - about a YouTube channel.\",\n \"id\": \"Channel\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"auditDetails\": {\n - \ \"$ref\": \"ChannelAuditDetails\",\n \"description\": \"The - auditionDetails object encapsulates channel data that is relevant for YouTube - Partners during the audition process.\"\n },\n \"localizations\": + this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"CaptionListResponse\"\n },\n + \ \"LiveBroadcastStatistics\": {\n \"description\": \"Statistics about + the live broadcast. These represent a snapshot of the values at the time of + the request. Statistics are only returned for live broadcasts.\",\n \"type\": + \"object\",\n \"properties\": {\n \"totalChatCount\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + total number of live chat messages currently on the broadcast. The property + and its value will be present if the broadcast is public, has the live chat + feature enabled, and has at least one message. Note that this field will not + be filled after the broadcast ends. So this property would not identify the + number of chat messages for an archived video of a completed live broadcast.\"\n + \ },\n \"concurrentViewers\": {\n \"description\": \"The + number of viewers currently watching the broadcast. The property and its value + will be present if the broadcast has current viewers and the broadcast owner + has not hidden the viewcount for the video. Note that YouTube stops tracking + the number of concurrent viewers for a broadcast when the broadcast ends. + So, this property would not identify the number of viewers watching an archived + video of a live broadcast that already ended.\",\n \"format\": \"uint64\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveBroadcastStatistics\"\n + \ },\n \"Channel\": {\n \"description\": \"A *channel* resource + contains information about a YouTube channel.\",\n \"id\": \"Channel\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"contentOwnerDetails\": + {\n \"description\": \"The contentOwnerDetails object encapsulates + channel data that is relevant for YouTube Partners linked with the channel.\",\n + \ \"$ref\": \"ChannelContentOwnerDetails\"\n },\n \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n \ },\n \"description\": \"Localizations for different languages\",\n - \ \"type\": \"object\"\n },\n \"snippet\": {\n \"$ref\": - \"ChannelSnippet\",\n \"description\": \"The snippet object contains - basic details about the channel, such as its title, description, and thumbnail - images.\"\n },\n \"contentOwnerDetails\": {\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"status\": {\n \"description\": \"The status - object encapsulates information about the privacy status of the channel.\",\n - \ \"$ref\": \"ChannelStatus\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#channel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\"\n - \ },\n \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"topicDetails\": {\n \"description\": \"The - topicDetails object encapsulates information about Freebase topics associated - with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n - \ \"brandingSettings\": {\n \"description\": \"The brandingSettings - object encapsulates information about the branding of the channel.\",\n \"$ref\": - \"ChannelBrandingSettings\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel.\",\n \"type\": - \"string\"\n },\n \"contentDetails\": {\n \"$ref\": + \ \"type\": \"object\"\n },\n \"status\": {\n \"description\": + \"The status object encapsulates information about the privacy status of the + channel.\",\n \"$ref\": \"ChannelStatus\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel.\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the channel, such as its title, description, and thumbnail images.\",\n + \ \"$ref\": \"ChannelSnippet\"\n },\n \"brandingSettings\": + {\n \"$ref\": \"ChannelBrandingSettings\",\n \"description\": + \"The brandingSettings object encapsulates information about the branding + of the channel.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n + \ \"default\": \"youtube#channel\",\n \"type\": \"string\"\n + \ },\n \"conversionPings\": {\n \"description\": \"The + conversionPings object encapsulates information about conversion pings that + need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n + \ },\n \"statistics\": {\n \"description\": \"The statistics + object encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n + \ },\n \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n + \ \"description\": \"The auditionDetails object encapsulates channel + data that is relevant for YouTube Partners during the audition process.\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"topicDetails\": + {\n \"$ref\": \"ChannelTopicDetails\",\n \"description\": + \"The topicDetails object encapsulates information about Freebase topics associated + with the channel.\"\n },\n \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n \"description\": \"The contentDetails object encapsulates information about the channel's content.\"\n }\n - \ }\n },\n \"MembershipsDurationAtLevel\": {\n \"id\": \"MembershipsDurationAtLevel\",\n - \ \"properties\": {\n \"memberSince\": {\n \"description\": - \"The date and time when the user became a continuous member for the given - level.\",\n \"type\": \"string\"\n },\n \"level\": - {\n \"description\": \"Pricing level ID.\",\n \"type\": - \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"description\": \"The cumulative time the user has - been a member for the given level in complete months (the time is rounded - down to the nearest integer).\",\n \"format\": \"int32\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ChannelContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"ChannelContentDetails\",\n - \ \"properties\": {\n \"relatedPlaylists\": {\n \"type\": - \"object\",\n \"properties\": {\n \"watchHistory\": {\n - \ \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"uploads\": {\n \"description\": \"The ID of the - playlist that contains the channel\\\"s uploaded videos. Use the videos.insert - method to upload new videos and the videos.delete method to delete previously - uploaded videos.\",\n \"type\": \"string\"\n },\n - \ \"favorites\": {\n \"description\": \"The ID of the - playlist that contains the channel\\\"s favorite videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n },\n \"likes\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n },\n \"watchLater\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch later playlist. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n }\n }\n }\n },\n \"description\": - \"Details about the content of a channel.\"\n },\n \"InvideoTiming\": - {\n \"type\": \"object\",\n \"description\": \"Describes a temporal - position of a visual widget inside a video.\",\n \"id\": \"InvideoTiming\",\n - \ \"properties\": {\n \"type\": {\n \"enum\": [\n \"offsetFromStart\",\n - \ \"offsetFromEnd\"\n ],\n \"description\": \"Describes - a timing type. If the value is offsetFromStart, then the offsetMs field represents - an offset from the start of the video. If the value is offsetFromEnd, then - the offsetMs field represents an offset from the end of the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"offsetMs\": {\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"durationMs\": - {\n \"description\": \"Defines the duration in milliseconds for which - the promotion should be displayed. If missing, the client should use the default.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n }\n - \ }\n },\n \"VideoSuggestionsTagSuggestion\": {\n \"properties\": - {\n \"categoryRestricts\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A set of video categories for which the tag is relevant. You can use this - information to display appropriate tag suggestions based on the video category - that the video uploader associates with the video. By default, tag suggestions - are relevant for all categories if there are no restricts defined for the - keyword.\"\n },\n \"tag\": {\n \"description\": \"The - keyword tag suggested for the video.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A single tag suggestion with - it's relevance information.\",\n \"id\": \"VideoSuggestionsTagSuggestion\",\n - \ \"type\": \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"Video processing progress and completion time estimate.\",\n \"type\": - \"object\",\n \"properties\": {\n \"partsTotal\": {\n \"type\": - \"string\",\n \"description\": \"An estimate of the total number - of parts that need to be processed for the video. The number may be updated - with more precise estimates while YouTube processes the video.\",\n \"format\": - \"uint64\"\n },\n \"timeLeftMs\": {\n \"format\": \"uint64\",\n - \ \"description\": \"An estimate of the amount of time, in millseconds, - that YouTube needs to finish processing the video.\",\n \"type\": - \"string\"\n },\n \"partsProcessed\": {\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n }\n - \ }\n },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"properties\": - {\n \"userComment\": {\n \"description\": \"The comment added - by the member to this Member Milestone Chat. This field is empty for messages - without a comment from the member.\",\n \"type\": \"string\"\n },\n - \ \"memberLevelName\": {\n \"description\": \"The name of the - Level at which the viever is a member. The Level names are defined by the - YouTube channel offering the Membership. In some situations this field isn't - filled.\",\n \"type\": \"string\"\n },\n \"memberMonth\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\"\n }\n },\n \"id\": - \"LiveChatMemberMilestoneChatDetails\",\n \"type\": \"object\"\n },\n - \ \"CdnSettings\": {\n \"description\": \"Brief description of the - live stream cdn settings.\",\n \"properties\": {\n \"ingestionInfo\": - {\n \"$ref\": \"IngestionInfo\",\n \"description\": \"The - ingestionInfo object contains information that YouTube provides that you need - to transmit your RTMP or HTTP stream to YouTube.\"\n },\n \"ingestionType\": - {\n \"type\": \"string\",\n \"description\": \" The method - or protocol used to transmit the video stream.\",\n \"enum\": [\n - \ \"rtmp\",\n \"dash\",\n \"webrtc\",\n \"hls\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"resolution\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The resolution of the inbound video data.\"\n },\n \"frameRate\": - {\n \"type\": \"string\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"description\": - \"The frame rate of the inbound video data.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"format\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The format of the video stream that you are sending - to Youtube. \"\n }\n },\n \"id\": \"CdnSettings\",\n \"type\": - \"object\"\n },\n \"I18nRegionListResponse\": {\n \"id\": \"I18nRegionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": + \ }\n },\n \"PlaylistListResponse\": {\n \"properties\": {\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n + \ \"default\": \"youtube#playlistListResponse\",\n \"type\": \"string\"\n },\n \"items\": {\n \"description\": \"A - list of regions where YouTube is available. In this map, the i18n region ID - is the map key, and its value is the corresponding i18nRegion resource.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n }\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#i18nRegionListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n - \ }\n }\n },\n \"VideoAgeGating\": {\n \"id\": \"VideoAgeGating\",\n - \ \"properties\": {\n \"videoGameRating\": {\n \"type\": - \"string\",\n \"description\": \"Video game rating, if any.\",\n - \ \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"alcoholContent\": {\n \"description\": - \"Indicates whether or not the video has alcoholic beverage content. Only - users of legal purchasing age in a particular country, as identified by ICAP, - can view the content.\",\n \"type\": \"boolean\"\n },\n \"restricted\": - {\n \"type\": \"boolean\",\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoSuggestions\": {\n - \ \"description\": \"Specifies suggestions on how to improve video content, - including encoding hints, tag suggestions, and editor suggestions.\",\n \"id\": - \"VideoSuggestions\",\n \"properties\": {\n \"processingHints\": - {\n \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of suggestions that may - improve YouTube's ability to process the video.\"\n },\n \"processingWarnings\": + list of playlists that match the request criteria\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Playlist\"\n }\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"visitorId\": {\n \"description\": \"The visitorId + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n }\n },\n \"id\": \"PlaylistListResponse\",\n + \ \"type\": \"object\"\n },\n \"MembershipsLevel\": {\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": + \"MembershipsLevelSnippet\",\n \"description\": \"The snippet object + contains basic details about the level.\"\n },\n \"id\": {\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the memberships level.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"default\": \"youtube#membershipsLevel\"\n }\n },\n + \ \"type\": \"object\",\n \"description\": \"A *membershipsLevel* + resource represents an offer made by YouTube creators for their fans. Users + can become members of the channel by joining one of the available levels. + They will provide recurring monetary support and receives special benefits.\",\n + \ \"id\": \"MembershipsLevel\"\n },\n \"CommentThreadReplies\": + {\n \"properties\": {\n \"comments\": {\n \"items\": + {\n \"$ref\": \"Comment\"\n },\n \"description\": + \"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.\",\n \"type\": \"array\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"Comments written + in (direct or indirect) reply to the top level comment.\",\n \"id\": + \"CommentThreadReplies\"\n },\n \"ChannelAuditDetails\": {\n \"type\": + \"object\",\n \"properties\": {\n \"contentIdClaimsGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel has any unresolved claims.\"\n },\n \"copyrightStrikesGoodStanding\": + {\n \"description\": \"Whether or not the channel has any copyright + strikes.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel respects the community guidelines.\"\n }\n },\n + \ \"description\": \"The auditDetails object encapsulates channel data + that is relevant for YouTube Partners during the audit process.\",\n \"id\": + \"ChannelAuditDetails\"\n },\n \"ChannelSectionListResponse\": {\n \"id\": + \"ChannelSectionListResponse\",\n \"type\": \"object\",\n \"properties\": + {\n \"items\": {\n \"items\": {\n \"$ref\": \"ChannelSection\"\n + \ },\n \"description\": \"A list of ChannelSections that + match the request criteria.\",\n \"type\": \"array\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n + \ \"default\": \"youtube#channelSectionListResponse\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n }\n },\n + \ \"PlaylistItemContentDetails\": {\n \"properties\": {\n \"note\": + {\n \"type\": \"string\",\n \"description\": \"A user-generated + note for this item.\"\n },\n \"startAt\": {\n \"description\": + \"The time, measured in seconds from the start of the video, when the video + should start playing. (The playlist owner can specify the times when the video + should start and stop playing when the video is played in the context of the + playlist.) The default value is 0.\",\n \"type\": \"string\"\n },\n + \ \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify a video. To retrieve the video + resource, set the id query parameter to this value in your API request.\"\n + \ },\n \"videoPublishedAt\": {\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time that the video was published + to YouTube.\",\n \"type\": \"string\"\n },\n \"endAt\": + {\n \"description\": \"The time, measured in seconds from the start + of the video, when the video should stop playing. (The playlist owner can + specify the times when the video should start and stop playing when the video + is played in the context of the playlist.) By default, assume that the video.endTime + is the end of the video.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"PlaylistItemContentDetails\",\n \"type\": \"object\"\n + \ },\n \"LiveChatMessageDeletedDetails\": {\n \"id\": \"LiveChatMessageDeletedDetails\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"deletedMessageId\": + {\n \"type\": \"string\"\n }\n }\n },\n \"PlaylistPlayer\": + {\n \"properties\": {\n \"embedHtml\": {\n \"type\": + \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that + embeds a player that will play the playlist.\"\n }\n },\n \"id\": + \"PlaylistPlayer\",\n \"type\": \"object\"\n },\n \"VideoSuggestions\": + {\n \"type\": \"object\",\n \"description\": \"Specifies suggestions + on how to improve video content, including encoding hints, tag suggestions, + and editor suggestions.\",\n \"id\": \"VideoSuggestions\",\n \"properties\": + {\n \"editorSuggestions\": {\n \"description\": \"A list of + video editing operations that might improve the video quality or playback + experience of the uploaded video.\",\n \"type\": \"array\",\n \"items\": + {\n \"enumDescriptions\": [\n \"Picture brightness + levels seem off and could be corrected.\",\n \"The video appears + shaky and could be stabilized.\",\n \"Margins (mattes) detected + around the picture could be cropped.\",\n \"The audio track appears + silent and could be swapped with a better quality one.\"\n ],\n + \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n + \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n + \ \"type\": \"string\"\n }\n },\n \"processingWarnings\": {\n \"type\": \"array\",\n \"description\": \"A list of reasons why YouTube may have difficulty transcoding the uploaded video or that might result in an erroneous transcoding. These warnings are generated @@ -7995,2944 +8105,1946 @@ interactions: stereo mode.\",\n \"Unsupported spherical video projection type.\",\n \ \"Unsupported HDR pixel format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n - \ \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ]\n }\n },\n \"tagSuggestions\": {\n \"items\": - {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of keyword - tags that could be added to the video's metadata to increase the likelihood - that users will locate your video when searching or browsing on YouTube.\"\n - \ },\n \"processingErrors\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"enum\": [\n \"audioFile\",\n + \ ],\n \"enum\": [\n \"unknownContainer\",\n + \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n + \ \"inconsistentResolution\",\n \"hasEditlist\",\n + \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n + \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n + \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n + \ \"problematicHdrLookupTable\"\n ],\n \"type\": + \"string\"\n }\n },\n \"tagSuggestions\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n + \ },\n \"description\": \"A list of keyword tags that could + be added to the video's metadata to increase the likelihood that users will + locate your video when searching or browsing on YouTube.\"\n },\n \"processingErrors\": + {\n \"type\": \"array\",\n \"description\": \"A list of + errors that will prevent YouTube from successfully processing the uploaded + video video. These errors indicate that, regardless of the video's current + processing status, eventually, that status will almost certainly be failed.\",\n + \ \"items\": {\n \"enumDescriptions\": [\n \"File + contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., + a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file.\",\n \"Document + or text file (e.g., MS Word document).\",\n \"An archive file + (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout + type.\"\n ],\n \"enum\": [\n \"audioFile\",\n \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ]\n },\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\"\n },\n \"editorSuggestions\": {\n \"type\": - \"array\",\n \"items\": {\n \"enumDescriptions\": [\n - \ \"Picture brightness levels seem off and could be corrected.\",\n - \ \"The video appears shaky and could be stabilized.\",\n \"Margins - (mattes) detected around the picture could be cropped.\",\n \"The - audio track appears silent and could be swapped with a better quality one.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n - \ \"videoAutoLevels\",\n \"videoStabilize\",\n \"videoCrop\",\n - \ \"audioQuietAudioSwap\"\n ]\n },\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoAbuseReport\": {\n \"properties\": {\n - \ \"secondaryReasonId\": {\n \"type\": \"string\",\n \"description\": - \"The specific, or secondary, reason that this content is abusive (if available). - The value is an abuse report reason ID that is a valid secondary reason for - the primary reason.\"\n },\n \"language\": {\n \"type\": - \"string\",\n \"description\": \"The language that the content was - viewed in.\"\n },\n \"comments\": {\n \"type\": \"string\",\n - \ \"description\": \"Additional comments regarding the abuse report.\"\n - \ },\n \"reasonId\": {\n \"description\": \"The high-level, - or primary, reason that the content is abusive. The value is an abuse report - reason ID.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"VideoAbuseReport\",\n \"type\": \"object\"\n },\n \"Thumbnail\": - {\n \"properties\": {\n \"height\": {\n \"description\": - \"(Optional) Height of the thumbnail image.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"url\": {\n \"description\": - \"The thumbnail image's URL.\",\n \"type\": \"string\"\n },\n - \ \"width\": {\n \"description\": \"(Optional) Width of the - thumbnail image.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n }\n },\n \"id\": \"Thumbnail\",\n \"description\": - \"A thumbnail is an image representing a YouTube resource.\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsRecommendation\": {\n \"description\": - \"Information that identifies the recommended resource.\",\n \"properties\": - {\n \"seedResourceId\": {\n \"description\": \"The seedResourceId - object contains information about the resource that caused the recommendation.\",\n - \ \"$ref\": \"ResourceId\"\n },\n \"reason\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"description\": \"The - reason that the resource is recommended to the user.\"\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the recommended resource.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"type\": \"object\"\n },\n \"SearchListResponse\": {\n \"id\": - \"SearchListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"regionCode\": {\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": + \ ],\n \"type\": \"string\"\n }\n },\n + \ \"processingHints\": {\n \"description\": \"A list of suggestions + that may improve YouTube's ability to process the video.\",\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"The MP4 file is not streamable, this will slow down the + processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably + a better quality version of the video exists. The video has wide screen aspect + ratio, but is not an HD video.\",\n \"Uploaded video is spherical + video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded + video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n + \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n + \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n + \ \"hdrVideo\"\n ]\n }\n }\n }\n + \ },\n \"ActivityContentDetails\": {\n \"description\": \"Details + about the content of an activity: the video that was shared, the channel that + was subscribed to, etc.\",\n \"properties\": {\n \"comment\": + {\n \"$ref\": \"ActivityContentDetailsComment\",\n \"description\": + \"The comment object contains information about a resource that received a + comment. This property is only present if the snippet.type is comment.\"\n + \ },\n \"upload\": {\n \"description\": \"The upload + object contains information about the uploaded video. This property is only + present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n + \ },\n \"favorite\": {\n \"description\": \"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.\",\n \"$ref\": + \"ActivityContentDetailsFavorite\"\n },\n \"promotedItem\": + {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n \"description\": + \"The promotedItem object contains details about a resource which is being + promoted. This property is only present if the snippet.type is promotedItem.\"\n + \ },\n \"like\": {\n \"$ref\": \"ActivityContentDetailsLike\",\n + \ \"description\": \"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.\"\n },\n \"subscription\": {\n + \ \"description\": \"The subscription object contains information + about a channel that a user subscribed to. This property is only present if + the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n + \ },\n \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n + \ \"description\": \"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.\"\n },\n \"social\": {\n \"$ref\": + \"ActivityContentDetailsSocial\",\n \"description\": \"The social + object contains details about a social network post. This property is only + present if the snippet.type is social.\"\n },\n \"playlistItem\": + {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": + \"The playlistItem object contains information about a new playlist item. + This property is only present if the snippet.type is playlistItem.\"\n },\n + \ \"bulletin\": {\n \"description\": \"The bulletin object + contains details about a channel bulletin post. This object is only present + if the snippet.type is bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n + \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n + \ \"description\": \"The recommendation object contains information + about a recommended resource. This property is only present if the snippet.type + is recommendation.\"\n }\n },\n \"id\": \"ActivityContentDetails\",\n + \ \"type\": \"object\"\n },\n \"SuperChatEventSnippet\": {\n \"type\": + \"object\",\n \"properties\": {\n \"isSuperStickerEvent\": {\n + \ \"description\": \"True if this event is a Super Sticker event.\",\n + \ \"type\": \"boolean\"\n },\n \"currency\": {\n \"type\": + \"string\",\n \"description\": \"The currency in which the purchase + was made. ISO 4217.\"\n },\n \"supporterDetails\": {\n \"description\": + \"Details about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n + \ },\n \"createdAt\": {\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time when the event occurred.\",\n + \ \"type\": \"string\"\n },\n \"displayString\": {\n + \ \"type\": \"string\",\n \"description\": \"A rendered string + that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). The + string is rendered for the given language.\"\n },\n \"commentText\": + {\n \"type\": \"string\",\n \"description\": \"The text + contents of the comment left by the user.\"\n },\n \"amountMicros\": + {\n \"description\": \"The purchase amount, in micros of the purchase + currency. e.g., 1 is represented as 1000000.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n },\n \"superStickerMetadata\": + {\n \"description\": \"If this event is a Super Sticker event, this + field will contain metadata about the Super Sticker.\",\n \"$ref\": + \"SuperStickerMetadata\"\n },\n \"messageType\": {\n \"format\": + \"uint32\",\n \"description\": \"The tier for the paid message, which + is based on the amount of money spent to purchase the message.\",\n \"type\": + \"integer\"\n },\n \"channelId\": {\n \"description\": + \"Channel id where the event occurred.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"SuperChatEventSnippet\"\n },\n \"ThumbnailDetails\": + {\n \"type\": \"object\",\n \"id\": \"ThumbnailDetails\",\n \"description\": + \"Internal representation of thumbnails for a YouTube resource.\",\n \"properties\": + {\n \"maxres\": {\n \"$ref\": \"Thumbnail\",\n \"description\": + \"The maximum resolution quality image for this resource.\"\n },\n + \ \"high\": {\n \"description\": \"The high quality image for + this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"standard\": + {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The standard + quality image for this resource.\"\n },\n \"medium\": {\n \"description\": + \"The medium quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n + \ },\n \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": + \"The default image for this resource.\"\n }\n }\n },\n \"Subscription\": + {\n \"id\": \"Subscription\",\n \"properties\": {\n \"contentDetails\": + {\n \"$ref\": \"SubscriptionContentDetails\",\n \"description\": + \"The contentDetails object contains basic statistics about the subscription.\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the subscription.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": + \"SubscriptionSnippet\",\n \"description\": \"The snippet object + contains basic details about the subscription, including its title and the + channel that the user subscribed to.\"\n },\n \"subscriberSnippet\": + {\n \"description\": \"The subscriberSnippet object contains basic + details about the subscriber.\",\n \"$ref\": \"SubscriptionSubscriberSnippet\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#subscription\"\n + \ }\n },\n \"description\": \"A *subscription* resource contains + information about a YouTube user subscription. A subscription notifies a user + when new videos are added to a channel or when another user takes one of several + actions on YouTube, such as uploading a video, rating a video, or commenting + on a video.\",\n \"type\": \"object\"\n },\n \"ThirdPartyLink\": + {\n \"id\": \"ThirdPartyLink\",\n \"description\": \"A *third party + account link* resource represents a link between a YouTube account or a channel + and an account on a third-party service.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n + \ \"description\": \"The status object contains information about + the status of the link.\"\n },\n \"snippet\": {\n \"$ref\": + \"ThirdPartyLinkSnippet\",\n \"description\": \"The snippet object + contains basic details about the third- party account link.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource\"\n },\n \"linkingToken\": {\n \"description\": + \"The linking_token identifies a YouTube account and channel with which the + third party account is linked.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLink\"\n + \ }\n }\n },\n \"VideoStatistics\": {\n \"properties\": + {\n \"commentCount\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"The number of comments for the video.\"\n + \ },\n \"viewCount\": {\n \"description\": \"The number + of times the video has been viewed.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n },\n \"dislikeCount\": {\n + \ \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of users who have indicated that they disliked the video by giving + it a negative rating.\"\n },\n \"likeCount\": {\n \"description\": + \"The number of users who have indicated that they liked the video by giving + it a positive rating.\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n },\n \"favoriteCount\": {\n \"format\": + \"uint64\",\n \"description\": \"The number of users who currently + have the video marked as a favorite video.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"VideoStatistics\",\n \"type\": \"object\",\n + \ \"description\": \"Statistics about the video, such as the number of + times the video was viewed or liked.\"\n },\n \"LiveChatTextMessageDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatTextMessageDetails\",\n + \ \"properties\": {\n \"messageText\": {\n \"description\": + \"The user's message.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveChatUserBannedMessageDetails\",\n \"properties\": + {\n \"banType\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"permanent\",\n \"temporary\"\n ],\n \"description\": + \"The type of ban.\"\n },\n \"bannedUserDetails\": {\n \"$ref\": + \"ChannelProfileDetails\",\n \"description\": \"The details of the + user that was banned.\"\n },\n \"banDurationSeconds\": {\n \"description\": + \"The duration of the ban. This property is only present if the banType is + temporary.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n + \ }\n }\n },\n \"CaptionSnippet\": {\n \"properties\": + {\n \"failureReason\": {\n \"description\": \"The reason that + YouTube failed to process the caption track. This property is only present + if the state property's value is failed.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n + \ \"processingFailed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"isCC\": {\n \"type\": \"boolean\",\n \"description\": + \"Indicates whether the track contains closed captions for the deaf and hard + of hearing. The default value is false.\"\n },\n \"videoId\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the video associated with + the caption track. @mutable youtube.captions.insert\"\n },\n \"isDraft\": + {\n \"type\": \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert + youtube.captions.update\"\n },\n \"audioTrackType\": {\n \"description\": + \"The type of audio track associated with the caption track.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"unknown\",\n + \ \"primary\",\n \"commentary\",\n \"descriptive\"\n + \ ]\n },\n \"trackKind\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The caption track's + type.\",\n \"enum\": [\n \"standard\",\n \"ASR\",\n + \ \"forced\"\n ]\n },\n \"isEasyReader\": + {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n + \ },\n \"name\": {\n \"type\": \"string\",\n \"description\": + \"The name of the caption track. The name is intended to be visible to the + user as an option during playback.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n }\n + \ },\n \"lastUpdated\": {\n \"format\": \"date-time\",\n + \ \"type\": \"string\",\n \"description\": \"The date and + time when the caption track was last updated.\"\n },\n \"isAutoSynced\": + {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n + \ },\n \"status\": {\n \"description\": \"The caption + track's status.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"serving\",\n \"syncing\",\n + \ \"failed\"\n ]\n },\n \"language\": {\n + \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The language of the caption track. The property value is a BCP-47 language + tag.\"\n },\n \"isLarge\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Indicates whether the caption track uses large + text for the vision-impaired. The default value is false.\"\n }\n },\n + \ \"type\": \"object\",\n \"description\": \"Basic details about + a caption track, such as its language and name.\",\n \"id\": \"CaptionSnippet\"\n + \ },\n \"CdnSettings\": {\n \"id\": \"CdnSettings\",\n \"description\": + \"Brief description of the live stream cdn settings.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"ingestionType\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"description\": \" The method or protocol used to transmit the + video stream.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n + \ \"hls\"\n ]\n },\n \"resolution\": {\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The resolution of the inbound video data.\",\n \"enum\": [\n \"240p\",\n + \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n + \ \"1440p\",\n \"2160p\",\n \"variable\"\n + \ ]\n },\n \"format\": {\n \"type\": \"string\",\n + \ \"description\": \"The format of the video stream that you are sending + to Youtube. \",\n \"annotations\": {\n \"required\": [\n + \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n + \ ]\n }\n },\n \"ingestionInfo\": {\n \"$ref\": + \"IngestionInfo\",\n \"description\": \"The ingestionInfo object + contains information that YouTube provides that you need to transmit your + RTMP or HTTP stream to YouTube.\"\n },\n \"frameRate\": {\n + \ \"type\": \"string\",\n \"enum\": [\n \"30fps\",\n + \ \"60fps\",\n \"variable\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"description\": \"The frame rate of the inbound video data.\"\n + \ }\n }\n },\n \"I18nRegionListResponse\": {\n \"type\": + \"object\",\n \"properties\": {\n \"items\": {\n \"type\": + \"array\",\n \"description\": \"A list of regions where YouTube is + available. In this map, the i18n region ID is the map key, and its value is + the corresponding i18nRegion resource.\",\n \"items\": {\n \"$ref\": + \"I18nRegion\"\n }\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n + \ \"default\": \"youtube#i18nRegionListResponse\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"I18nRegionListResponse\"\n + \ },\n \"VideoCategoryListResponse\": {\n \"id\": \"VideoCategoryListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\"\n \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SearchResult\"\n },\n \"description\": - \"Pagination information for token pagination.\"\n },\n \"kind\": + identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"default\": \"youtube#searchListResponse\"\n }\n }\n - \ },\n \"AbuseType\": {\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"AbuseType\"\n },\n \"SubscriptionContentDetails\": {\n - \ \"properties\": {\n \"totalItemCount\": {\n \"description\": - \"The approximate number of items that the subscription points to.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"newItemCount\": - {\n \"description\": \"The number of new items in the subscription - since its content was last read.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"activityType\": {\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"description\": - \"Details about the content to witch a subscription refers.\",\n \"id\": - \"SubscriptionContentDetails\",\n \"type\": \"object\"\n },\n \"PlaylistItemContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistItemContentDetails\",\n - \ \"properties\": {\n \"note\": {\n \"description\": \"A - user-generated note for this item.\",\n \"type\": \"string\"\n },\n - \ \"videoPublishedAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the video was published to YouTube.\",\n \"format\": - \"date-time\"\n },\n \"startAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The time, measured in seconds from the start - of the video, when the video should start playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) The default value is 0.\"\n },\n - \ \"endAt\": {\n \"description\": \"The time, measured in seconds - from the start of the video, when the video should stop playing. (The playlist - owner can specify the times when the video should start and stop playing when - the video is played in the context of the playlist.) By default, assume that - the video.endTime is the end of the video.\",\n \"type\": \"string\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify a video. To retrieve the video - resource, set the id query parameter to this value in your API request.\"\n - \ }\n }\n },\n \"ActivityContentDetailsComment\": {\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource associated with the - comment.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"description\": - \"Information about a resource that received a comment.\",\n \"id\": - \"ActivityContentDetailsComment\",\n \"type\": \"object\"\n },\n \"VideoAbuseReportReason\": - {\n \"id\": \"VideoAbuseReportReason\",\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\",\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReason\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"id\": {\n \"description\": - \"The ID of this abuse report reason.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ThumbnailDetails\": {\n \"id\": \"ThumbnailDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Internal representation - of thumbnails for a YouTube resource.\",\n \"properties\": {\n \"high\": - {\n \"description\": \"The high quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"default\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The default image for this resource.\"\n - \ },\n \"maxres\": {\n \"description\": \"The maximum - resolution quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"medium\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The medium quality image for this resource.\"\n },\n \"standard\": - {\n \"description\": \"The standard quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n }\n }\n },\n \"MembershipsDuration\": - {\n \"id\": \"MembershipsDuration\",\n \"type\": \"object\",\n \"properties\": - {\n \"memberTotalDurationMonths\": {\n \"type\": \"integer\",\n - \ \"description\": \"The cumulative time the user has been a member - across all levels in complete months (the time is rounded down to the nearest - integer).\",\n \"format\": \"int32\"\n },\n \"memberSince\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the user became a continuous member across all levels.\"\n }\n - \ }\n },\n \"VideoCategorySnippet\": {\n \"id\": \"VideoCategorySnippet\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\",\n \"properties\": {\n \"title\": {\n \"description\": - \"The video category's title.\",\n \"type\": \"string\"\n },\n - \ \"assignable\": {\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"description\": \"The YouTube channel that created the video - category.\",\n \"type\": \"string\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"SuperChatEvent\": - {\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\",\n - \ \"$ref\": \"SuperChatEventSnippet\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the Super Chat event.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#superChatEvent\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\",\n \"id\": \"SuperChatEvent\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"id\": \"LiveChatMessageAuthorDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"isChatModerator\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is a moderator of the live chat.\"\n },\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - display name.\"\n },\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n },\n \"isChatSponsor\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a sponsor - of the live chat.\"\n },\n \"isChatOwner\": {\n \"description\": - \"Whether the author is the owner of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel ID.\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n }\n }\n },\n \"ActivityContentDetailsFavorite\": - {\n \"description\": \"Information about a video that was marked as a - favorite video.\",\n \"id\": \"ActivityContentDetailsFavorite\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was marked as a favorite.\"\n - \ }\n }\n },\n \"PlaylistSnippet\": {\n \"properties\": - {\n \"description\": {\n \"description\": \"The playlist's - description.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the playlist.\"\n - \ },\n \"title\": {\n \"description\": \"The playlist's - title.\",\n \"type\": \"string\",\n \"annotations\": {\n - \ \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the playlist was created.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the playlist's default - title and description.\"\n },\n \"thumbnailVideoId\": {\n \"description\": - \"Note: if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"description\": - \"The channel title of the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"tags\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"Keyword tags associated with the playlist.\"\n - \ },\n \"localized\": {\n \"description\": \"Localized - title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ }\n },\n \"description\": \"Basic details about a playlist, - including title, description and thumbnails.\",\n \"id\": \"PlaylistSnippet\",\n - \ \"type\": \"object\"\n },\n \"InvideoPosition\": {\n \"type\": - \"object\",\n \"id\": \"InvideoPosition\",\n \"description\": \"Describes - the spatial position of a visual widget inside a video. It is a union of various - position types, out of which only will be set one.\",\n \"properties\": - {\n \"type\": {\n \"description\": \"Defines the position - type.\",\n \"enumDescriptions\": [\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"corner\"\n - \ ]\n },\n \"cornerPosition\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"Describes in which corner of the - video the visual widget will appear.\",\n \"enum\": [\n \"topLeft\",\n - \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n - \ ],\n \"type\": \"string\"\n }\n }\n },\n - \ \"VideoFileDetailsAudioStream\": {\n \"type\": \"object\",\n \"description\": - \"Information about an audio stream.\",\n \"id\": \"VideoFileDetailsAudioStream\",\n - \ \"properties\": {\n \"channelCount\": {\n \"description\": - \"The number of audio channels that the stream contains.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The audio - codec that the stream uses.\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"bitrateBps\": {\n \"format\": \"uint64\",\n \"description\": - \"The audio stream's bitrate, in bits per second.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ResourceId\": {\n \"type\": - \"object\",\n \"properties\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a channel. This property - is only present if the resourceId.kind value is youtube#channel.\"\n },\n - \ \"kind\": {\n \"description\": \"The type of the API resource.\",\n - \ \"type\": \"string\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a playlist. This property - is only present if the resourceId.kind value is youtube#playlist.\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\"\n }\n },\n \"description\": \"A - resource id is a generic reference that points to another YouTube resource.\",\n - \ \"id\": \"ResourceId\"\n },\n \"PlaylistItem\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n + \ \"default\": \"youtube#videoCategoryListResponse\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"items\": {\n \"description\": + \"A list of video categories that can be associated with YouTube videos. In + this map, the video category ID is the map key, and its value is the corresponding + videoCategory resource.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"VideoCategory\"\n }\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n }\n }\n },\n \"ActivityContentDetailsUpload\": + {\n \"id\": \"ActivityContentDetailsUpload\",\n \"type\": \"object\",\n + \ \"description\": \"Information about the uploaded video.\",\n \"properties\": + {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the uploaded video.\"\n }\n + \ }\n },\n \"VideoAbuseReportReasonListResponse\": {\n \"type\": + \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n + \ \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n \"type\": + \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"description\": \"The `visitorId` identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n + \ },\n \"description\": \"A list of valid abuse reasons that + are used with `video.ReportAbuse`.\"\n }\n },\n \"id\": \"VideoAbuseReportReasonListResponse\"\n + \ },\n \"VideoCategory\": {\n \"type\": \"object\",\n \"properties\": + {\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the video category.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the video category, including + its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#videoCategory\",\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\"\n + \ }\n },\n \"description\": \"A *videoCategory* resource identifies + a category that has been or could be associated with uploaded videos.\",\n + \ \"id\": \"VideoCategory\"\n },\n \"InvideoTiming\": {\n \"type\": + \"object\",\n \"properties\": {\n \"offsetMs\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"Defines + the time at which the promotion will appear. Depending on the value of type + the value of the offsetMs field will represent a time offset from the start + or from the end of the video, expressed in milliseconds.\"\n },\n \"durationMs\": + {\n \"format\": \"uint64\",\n \"description\": \"Defines + the duration in milliseconds for which the promotion should be displayed. + If missing, the client should use the default.\",\n \"type\": \"string\"\n + \ },\n \"type\": {\n \"description\": \"Describes a + timing type. If the value is offsetFromStart, then the offsetMs field represents + an offset from the start of the video. If the value is offsetFromEnd, then + the offsetMs field represents an offset from the end of the video.\",\n \"type\": + \"string\",\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ]\n }\n },\n \"description\": \"Describes a temporal + position of a visual widget inside a video.\",\n \"id\": \"InvideoTiming\"\n + \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"memberMonth\": {\n \"description\": + \"The total amount of months (rounded up) the viewer has been a member that + granted them this Member Milestone Chat. This is the same number of months + as is being displayed to YouTube users.\",\n \"type\": \"integer\",\n + \ \"format\": \"uint32\"\n },\n \"userComment\": {\n + \ \"type\": \"string\",\n \"description\": \"The comment + added by the member to this Member Milestone Chat. This field is empty for + messages without a comment from the member.\"\n },\n \"memberLevelName\": + {\n \"description\": \"The name of the Level at which the viever + is a member. The Level names are defined by the YouTube channel offering the + Membership. In some situations this field isn't filled.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"LiveChatMemberMilestoneChatDetails\"\n + \ },\n \"ChannelLocalization\": {\n \"description\": \"Channel localization + setting\",\n \"type\": \"object\",\n \"id\": \"ChannelLocalization\",\n + \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The localized strings for channel's description.\"\n + \ },\n \"title\": {\n \"description\": \"The localized + strings for channel's title.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"LiveBroadcastSnippet\": {\n \"type\": \"object\",\n + \ \"description\": \"Basic broadcast information.\",\n \"properties\": + {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that is publishing + the broadcast.\"\n },\n \"actualEndTime\": {\n \"description\": + \"The date and time that the broadcast actually ended. This information is + only available once the broadcast's state is complete.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The broadcast's + description. As with the title, you can set this field by modifying the broadcast + resource or by setting the description field of the corresponding video resource.\"\n + \ },\n \"scheduledStartTime\": {\n \"description\": + \"The date and time that the broadcast is scheduled to start.\",\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"format\": \"date-time\"\n },\n \"thumbnails\": {\n + \ \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A + map of thumbnail images associated with the broadcast. For each nested object + in this object, the key is the name of the thumbnail image, and the value + is an object that contains other information about the thumbnail.\"\n },\n + \ \"scheduledEndTime\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The date and time that the broadcast + is scheduled to end.\"\n },\n \"isDefaultBroadcast\": {\n \"description\": + \"Indicates whether this broadcast is the default broadcast. Internal only.\",\n + \ \"type\": \"boolean\"\n },\n \"publishedAt\": {\n + \ \"description\": \"The date and time that the broadcast was added + to YouTube's live broadcast schedule.\",\n \"type\": \"string\",\n + \ \"format\": \"date-time\"\n },\n \"actualStartTime\": + {\n \"format\": \"date-time\",\n \"description\": \"The + date and time that the broadcast actually started. This information is only + available once the broadcast's state is live.\",\n \"type\": \"string\"\n + \ },\n \"liveChatId\": {\n \"description\": \"The id + of the live chat for this broadcast.\",\n \"type\": \"string\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"description\": \"The broadcast's title. Note that the broadcast + represents exactly one YouTube video. You can set this field by modifying + the broadcast resource or by setting the title field of the corresponding + video resource.\"\n }\n },\n \"id\": \"LiveBroadcastSnippet\"\n + \ },\n \"LiveStream\": {\n \"description\": \"A live stream describes + a live ingestion point.\",\n \"type\": \"object\",\n \"id\": \"LiveStream\",\n + \ \"properties\": {\n \"contentDetails\": {\n \"description\": + \"The content_details object contains information about the stream, including + the closed captions ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + assigns to uniquely identify the stream.\",\n \"annotations\": {\n + \ \"required\": [\n \"youtube.liveStreams.update\"\n + \ ]\n },\n \"type\": \"string\"\n },\n + \ \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n \"description\": + \"The status object contains information about live stream's status.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistItemSnippet\",\n \"description\": \"The snippet object - contains basic details about the playlist item, such as its title and position - in the playlist.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\",\n \"type\": - \"string\"\n },\n \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n - \ \"description\": \"The status object contains information about - the playlist item's privacy status.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#playlistItem\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"PlaylistItemContentDetails\",\n - \ \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\"\n }\n },\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"type\": - \"object\",\n \"id\": \"PlaylistItem\"\n },\n \"MemberListResponse\": - {\n \"type\": \"object\",\n \"id\": \"MemberListResponse\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Member\"\n },\n \"description\": - \"A list of members that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n }\n }\n },\n \"LiveStreamConfigurationIssue\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamConfigurationIssue\",\n - \ \"properties\": {\n \"severity\": {\n \"enum\": [\n - \ \"info\",\n \"warning\",\n \"error\"\n ],\n - \ \"description\": \"How severe this issue is to the stream.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The long-form - description of the issue and how to resolve it.\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"description\": \"The kind of error happening.\"\n - \ },\n \"reason\": {\n \"description\": \"The short-form - reason for this issue.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"Playlist\": {\n \"id\": \"Playlist\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#playlist\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n \"type\": - \"string\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\",\n - \ \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n - \ }\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"player\": - {\n \"description\": \"The player object contains information that - you would use to play the playlist in an embedded player.\",\n \"$ref\": - \"PlaylistPlayer\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the playlist.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistContentDetails\",\n \"description\": \"The contentDetails - object contains information like video count.\"\n },\n \"status\": - {\n \"$ref\": \"PlaylistStatus\",\n \"description\": \"The - status object contains status information for the playlist.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the playlist, such as its title and description.\",\n - \ \"$ref\": \"PlaylistSnippet\"\n }\n },\n \"description\": - \"A *playlist* resource represents a YouTube playlist. A playlist is a collection - of videos that can be viewed sequentially and shared with other users. A playlist - can contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\"\n },\n \"LiveStreamStatus\": {\n - \ \"properties\": {\n \"streamStatus\": {\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"healthStatus\": {\n \"$ref\": \"LiveStreamHealthStatus\",\n - \ \"description\": \"The health status of the stream.\"\n }\n - \ },\n \"description\": \"Brief description of the live stream status.\",\n - \ \"type\": \"object\",\n \"id\": \"LiveStreamStatus\"\n },\n - \ \"ActivityListResponse\": {\n \"properties\": {\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Activity\"\n }\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#activityListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n + \"LiveStreamSnippet\",\n \"description\": \"The snippet object contains + basic details about the stream, including its channel, title, and description.\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n + \ \"default\": \"youtube#liveStream\"\n },\n \"cdn\": + {\n \"description\": \"The cdn object defines the live stream's content + delivery network (CDN) settings. These settings provide details about the + manner in which you stream your content to YouTube.\",\n \"$ref\": + \"CdnSettings\"\n }\n }\n },\n \"ChannelSectionLocalization\": + {\n \"description\": \"ChannelSection localization setting\",\n \"properties\": + {\n \"title\": {\n \"description\": \"The localized strings + for channel section's title.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"ChannelSectionLocalization\"\n + \ },\n \"LiveChatModeratorListResponse\": {\n \"id\": \"LiveChatModeratorListResponse\",\n + \ \"properties\": {\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivityListResponse\"\n - \ },\n \"MemberSnippet\": {\n \"id\": \"MemberSnippet\",\n \"properties\": - {\n \"membershipsDetails\": {\n \"description\": \"Details - about the user's membership.\",\n \"$ref\": \"MembershipsDetails\"\n - \ },\n \"creatorChannelId\": {\n \"description\": \"The - id of the channel that's offering memberships.\",\n \"type\": \"string\"\n - \ },\n \"memberDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the member.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"SuperChatEventListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"description\": \"A list of Super Chat purchases that match the - request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n }\n },\n \"nextPageToken\": + \"General pagination information.\"\n },\n \"eventId\": {\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"default\": \"youtube#liveChatModeratorListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": + \"A list of moderators that match the request criteria.\",\n \"type\": + \"array\"\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\",\n \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#superChatEventListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n - \ }\n },\n \"id\": \"SuperChatEventListResponse\"\n },\n - \ \"LiveChatMessageSnippet\": {\n \"properties\": {\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"fanFundingEventDetails\": {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n - \ \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\"\n },\n \"type\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"invalidType\",\n - \ \"textMessageEvent\",\n \"tombstone\",\n \"fanFundingEvent\",\n - \ \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"LiveChatSuperStickerDetails\": {\n \"properties\": {\n + \ \"superStickerMetadata\": {\n \"description\": \"Information + about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n + \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n + \ \"description\": \"A rendered string that displays the fund amount + and currency to the user.\"\n },\n \"tier\": {\n \"description\": + \"The tier in which the amount belongs. Lower amounts belong to lower tiers. + The lowest tier is 1.\",\n \"format\": \"uint32\",\n \"type\": + \"integer\"\n },\n \"amountMicros\": {\n \"format\": + \"uint64\",\n \"description\": \"The amount purchased by the user, + in micros (1,750,000 micros = 1.75).\",\n \"type\": \"string\"\n + \ },\n \"currency\": {\n \"description\": \"The currency + in which the purchase was made.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"LiveChatSuperStickerDetails\",\n \"type\": + \"object\"\n },\n \"LiveChatMembershipGiftingDetails\": {\n \"id\": + \"LiveChatMembershipGiftingDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"giftMembershipsCount\": {\n \"description\": \"The number + of gift memberships purchased by the user.\",\n \"format\": \"int32\",\n + \ \"type\": \"integer\"\n },\n \"giftMembershipsLevelName\": + {\n \"description\": \"The name of the level of the gift memberships + purchased by the user. The Level names are defined by the YouTube channel + offering the Membership. In some situations this field isn't filled.\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"VideoAbuseReport\": + {\n \"properties\": {\n \"reasonId\": {\n \"description\": + \"The high-level, or primary, reason that the content is abusive. The value + is an abuse report reason ID.\",\n \"type\": \"string\"\n },\n + \ \"language\": {\n \"type\": \"string\",\n \"description\": + \"The language that the content was viewed in.\"\n },\n \"secondaryReasonId\": + {\n \"description\": \"The specific, or secondary, reason that this + content is abusive (if available). The value is an abuse report reason ID + that is a valid secondary reason for the primary reason.\",\n \"type\": + \"string\"\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": + \"string\"\n },\n \"comments\": {\n \"type\": \"string\",\n + \ \"description\": \"Additional comments regarding the abuse report.\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReport\"\n + \ },\n \"PlaylistItemSnippet\": {\n \"type\": \"object\",\n \"id\": + \"PlaylistItemSnippet\",\n \"properties\": {\n \"title\": {\n + \ \"description\": \"The item's title.\",\n \"type\": \"string\"\n + \ },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The item's description.\"\n },\n \"videoOwnerChannelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel this video belongs to.\"\n },\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"annotations\": {\n \"required\": + [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n + \ ]\n },\n \"description\": \"The id object contains + information that can be used to uniquely identify the resource that is included + in the playlist as the playlist item.\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"description\": \"The + date and time that the item was added to the playlist.\",\n \"type\": + \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel title for the channel that the playlist + item belongs to.\"\n },\n \"position\": {\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The order in which the item appears in the playlist. The value uses a zero-based + index, so the first item has a position of 0, the second item has a position + of 1, and so forth.\"\n },\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images + associated with the playlist item. 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.\"\n },\n \"videoOwnerChannelId\": + {\n \"type\": \"string\",\n \"description\": \"Channel id + for the channel this video belongs to.\"\n },\n \"playlistId\": + {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": + [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + uses to uniquely identify thGe playlist that the playlist item is in.\"\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the user that added the item + to the playlist.\"\n }\n },\n \"description\": \"Basic details + about a playlist, including title, description and thumbnails. Basic details + of a YouTube Playlist item provided by the author. Next ID: 15\"\n },\n + \ \"PlaylistLocalization\": {\n \"id\": \"PlaylistLocalization\",\n + \ \"properties\": {\n \"description\": {\n \"description\": + \"The localized strings for playlist's description.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"description\": \"The + localized strings for playlist's title.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Playlist localization setting\",\n + \ \"type\": \"object\"\n },\n \"TestItem\": {\n \"id\": \"TestItem\",\n + \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n + \ },\n \"id\": {\n \"type\": \"string\"\n },\n + \ \"gaia\": {\n \"type\": \"string\",\n \"format\": + \"int64\"\n },\n \"featuredPart\": {\n \"type\": \"boolean\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatNewSponsorDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatNewSponsorDetails\",\n + \ \"properties\": {\n \"memberLevelName\": {\n \"type\": + \"string\",\n \"description\": \"The name of the Level that the viewer + just had joined. The Level names are defined by the YouTube channel offering + the Membership. In some situations this field isn't filled.\"\n },\n + \ \"isUpgrade\": {\n \"description\": \"If the viewer just + had upgraded from a lower level. For viewers that were not members at the + time of purchase, this field is false.\",\n \"type\": \"boolean\"\n + \ }\n }\n },\n \"LiveChatModeratorSnippet\": {\n \"id\": + \"LiveChatModeratorSnippet\",\n \"type\": \"object\",\n \"properties\": + {\n \"liveChatId\": {\n \"description\": \"The ID of the live + chat this moderator can act on.\",\n \"type\": \"string\"\n },\n + \ \"moderatorDetails\": {\n \"description\": \"Details about + the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n }\n + \ }\n },\n \"LiveStreamHealthStatus\": {\n \"properties\": + {\n \"lastUpdateTimeSeconds\": {\n \"format\": \"uint64\",\n + \ \"type\": \"string\",\n \"description\": \"The last time + this status was updated (in seconds)\"\n },\n \"configurationIssues\": + {\n \"description\": \"The configurations issues on this stream\",\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"LiveStreamConfigurationIssue\"\n }\n },\n \"status\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The status code of this stream\",\n + \ \"enum\": [\n \"good\",\n \"ok\",\n \"bad\",\n + \ \"noData\",\n \"revoked\"\n ]\n }\n + \ },\n \"id\": \"LiveStreamHealthStatus\",\n \"type\": \"object\"\n + \ },\n \"LocalizedProperty\": {\n \"type\": \"object\",\n \"properties\": + {\n \"default\": {\n \"type\": \"string\"\n },\n \"localized\": + {\n \"items\": {\n \"$ref\": \"LocalizedString\"\n },\n + \ \"type\": \"array\"\n },\n \"defaultLanguage\": {\n + \ \"description\": \"The language of the default property.\",\n \"$ref\": + \"LanguageTag\"\n }\n },\n \"id\": \"LocalizedProperty\"\n + \ },\n \"ActivitySnippet\": {\n \"id\": \"ActivitySnippet\",\n \"description\": + \"Basic details about an activity, including title, description, thumbnails, + activity type and group. Next ID: 12\",\n \"properties\": {\n \"title\": + {\n \"description\": \"The title of the resource primarily associated + with the activity.\",\n \"type\": \"string\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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.\"\n },\n \"publishedAt\": {\n \"type\": + \"string\",\n \"description\": \"The date and time that the video + was uploaded.\",\n \"format\": \"date-time\"\n },\n \"groupId\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n + \ },\n \"channelId\": {\n \"description\": \"The ID + that YouTube uses to uniquely identify the channel associated with the activity.\",\n + \ \"type\": \"string\"\n },\n \"type\": {\n \"description\": + \"The type of activity that the resource describes.\",\n \"enum\": + [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n + \ \"favorite\",\n \"comment\",\n \"subscription\",\n + \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n + \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\"\n },\n \"newSponsorDetails\": - {\n \"description\": \"Details about the New Member Announcement - event, this is only set if the type is 'newSponsorEvent'. Please note that - \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n \"$ref\": - \"LiveChatNewSponsorDetails\"\n },\n \"liveChatId\": {\n \"type\": - \"string\"\n },\n \"displayMessage\": {\n \"description\": - \"Contains a string that can be displayed to the user. If this field is not - present the message is silent, at the moment only messages of type TOMBSTONE - and CHAT_ENDED_EVENT are silent.\",\n \"type\": \"string\"\n },\n - \ \"superStickerDetails\": {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n - \ \"description\": \"Details about the Super Sticker event, this is - only set if the type is 'superStickerEvent'.\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"description\": \"Details about the Gift Membership Received - event, this is only set if the type is 'giftMembershipReceivedEvent'.\",\n - \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n - \ \"authorChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the user that authored this message, this field is not always - filled. textMessageEvent - the user that wrote the message fanFundingEvent - - the user that funded the broadcast newSponsorEvent - the user that just - became a sponsor memberMilestoneChatEvent - the member that sent the message - membershipGiftingEvent - the user that made the purchase giftMembershipReceivedEvent - - the user that received the gift membership messageDeletedEvent - the moderator - that took the action messageRetractedEvent - the author that retracted their - message userBannedEvent - the moderator that took the action superChatEvent - - the user that made the purchase superStickerEvent - the user that made the - purchase\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the message was orignally - published.\",\n \"format\": \"date-time\"\n },\n \"membershipGiftingDetails\": - {\n \"description\": \"Details about the Membership Gifting event, - this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": - \"LiveChatMembershipGiftingDetails\"\n },\n \"superChatDetails\": - {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"memberMilestoneChatDetails\": {\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\",\n \"description\": \"Details - about the Member Milestone Chat event, this is only set if the type is 'memberMilestoneChatEvent'.\"\n - \ },\n \"hasDisplayContent\": {\n \"description\": \"Whether - the message has display content that should be displayed to users.\",\n \"type\": - \"boolean\"\n },\n \"userBannedDetails\": {\n \"$ref\": - \"LiveChatUserBannedMessageDetails\"\n }\n },\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Next ID: 33\"\n },\n - \ \"IngestionInfo\": {\n \"description\": \"Describes information necessary - for ingesting an RTMP, HTTP, or SRT stream.\",\n \"id\": \"IngestionInfo\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"rtmpsBackupIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - backupIngestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"streamName\": - {\n \"type\": \"string\",\n \"description\": \"The stream - name that YouTube assigns to the video stream.\"\n },\n \"rtmpsIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"backupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The backup - ingestion URL that you should use to stream video to YouTube. You have the - option of simultaneously streaming the content that you are sending to the - ingestionAddress to this URL.\"\n },\n \"ingestionAddress\": - {\n \"description\": \"The primary ingestion URL that you should - use to stream video to YouTube. You must stream video to this URL. Depending - on which application or tool you use to encode your video stream, you may - need to enter the stream URL and stream name separately or you may need to - concatenate them in the following format: *STREAM_URL/STREAM_NAME* \",\n \"type\": - \"string\"\n }\n }\n },\n \"Cuepoint\": {\n \"id\": - \"Cuepoint\",\n \"description\": \"Note that there may be a 5-second - end-point resolution issue. For instance, if a cuepoint comes in for 22:03:27, - we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. This is an - artifact of HLS.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The identifier for cuepoint resource.\"\n },\n \"insertionOffsetTimeMs\": - {\n \"format\": \"int64\",\n \"description\": \"The time - when the cuepoint should be inserted by offset to the broadcast actual start - time.\",\n \"type\": \"string\"\n },\n \"durationSecs\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The duration of this cuepoint.\"\n },\n \"cueType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ],\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"walltimeMs\": {\n \"type\": \"string\",\n - \ \"description\": \"The wall clock time at which the cuepoint should - be inserted. Only one of insertion_offset_time_ms and walltime_ms may be set - at a time.\",\n \"format\": \"uint64\"\n }\n }\n },\n - \ \"ActivityContentDetailsSocial\": {\n \"description\": \"Details - about a social network post.\",\n \"properties\": {\n \"type\": - {\n \"type\": \"string\",\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The name of the social network.\"\n },\n \"referenceUrl\": - {\n \"description\": \"The URL of the social network post.\",\n \"type\": - \"string\"\n },\n \"imageUrl\": {\n \"description\": - \"An image of the post's author.\",\n \"type\": \"string\"\n },\n - \ \"author\": {\n \"description\": \"The author of the social - network post.\",\n \"type\": \"string\"\n },\n \"resourceId\": + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"description\": {\n \"description\": + \"The description of the resource primarily associated with the activity. + @mutable youtube.activities.insert\",\n \"type\": \"string\"\n },\n + \ \"channelTitle\": {\n \"description\": \"Channel title for + the channel responsible for this activity\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessageAuthorDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageAuthorDetails\",\n + \ \"properties\": {\n \"displayName\": {\n \"type\": \"string\",\n + \ \"description\": \"The channel's display name.\"\n },\n \"isChatOwner\": + {\n \"description\": \"Whether the author is the owner of the live + chat.\",\n \"type\": \"boolean\"\n },\n \"channelId\": + {\n \"description\": \"The YouTube channel ID.\",\n \"type\": + \"string\"\n },\n \"isVerified\": {\n \"description\": + \"Whether the author's identity has been verified by YouTube.\",\n \"type\": + \"boolean\"\n },\n \"profileImageUrl\": {\n \"description\": + \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n + \ \"isChatSponsor\": {\n \"description\": \"Whether the author + is a sponsor of the live chat.\",\n \"type\": \"boolean\"\n },\n + \ \"channelUrl\": {\n \"type\": \"string\",\n \"description\": + \"The channel's URL.\"\n },\n \"isChatModerator\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the author is a moderator + of the live chat.\"\n }\n }\n },\n \"AccessPolicy\": {\n + \ \"description\": \"Rights management policy for YouTube resources.\",\n + \ \"id\": \"AccessPolicy\",\n \"properties\": {\n \"exception\": + {\n \"type\": \"array\",\n \"description\": \"A list of + region codes that identify countries where the default policy do not apply.\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n },\n + \ \"allowed\": {\n \"description\": \"The value of allowed + indicates whether the access to the policy is allowed or denied by default.\",\n + \ \"type\": \"boolean\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"ActivityContentDetailsRecommendation\": {\n \"description\": + \"Information that identifies the recommended resource.\",\n \"type\": + \"object\",\n \"properties\": {\n \"reason\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The reason that the resource is + recommended to the user.\",\n \"enum\": [\n \"reasonUnspecified\",\n + \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n + \ ],\n \"type\": \"string\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object encapsulates information that identifies the resource associated with - a social network post.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsSocial\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Details about a channel bulletin post.\",\n \"id\": \"ActivityContentDetailsBulletin\"\n - \ },\n \"ThirdPartyLink\": {\n \"type\": \"object\",\n \"id\": - \"ThirdPartyLink\",\n \"description\": \"A *third party account link* - resource represents a link between a YouTube account or a channel and an account - on a third-party service.\",\n \"properties\": {\n \"status\": - {\n \"$ref\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The status object contains information about the status of the link.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"default\": \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n - \ },\n \"linkingToken\": {\n \"description\": \"The - linking_token identifies a YouTube account and channel with which the third - party account is linked.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource\"\n }\n }\n - \ },\n \"VideoRecordingDetails\": {\n \"type\": \"object\",\n \"description\": - \"Recording information associated with the video.\",\n \"id\": \"VideoRecordingDetails\",\n - \ \"properties\": {\n \"locationDescription\": {\n \"description\": - \"The text description of the location where the video was recorded.\",\n - \ \"type\": \"string\"\n },\n \"recordingDate\": {\n - \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the video was recorded.\"\n },\n \"location\": - {\n \"$ref\": \"GeoPoint\",\n \"description\": \"The geolocation - information associated with the video.\"\n }\n }\n },\n \"LiveBroadcastSnippet\": - {\n \"id\": \"LiveBroadcastSnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic broadcast information.\",\n \"properties\": - {\n \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that is publishing the broadcast.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the broadcast. For each nested - object in this object, the key is the name of the thumbnail image, and the - value is an object that contains other information about the thumbnail.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the live chat for this broadcast.\"\n },\n \"title\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\"\n },\n \"actualEndTime\": + object contains information that identifies the recommended resource.\"\n + \ },\n \"seedResourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The seedResourceId object contains information + about the resource that caused the recommendation.\"\n }\n },\n + \ \"id\": \"ActivityContentDetailsRecommendation\"\n },\n \"I18nLanguage\": + {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n + \ \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the i18n language.\"\n },\n \"snippet\": + {\n \"$ref\": \"I18nLanguageSnippet\",\n \"description\": + \"The snippet object contains basic details about the i18n language, such + as language code and human-readable name.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#i18nLanguage\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#i18nLanguage\\\".\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"I18nLanguage\",\n \"description\": + \"An *i18nLanguage* resource identifies a UI language currently supported + by YouTube.\"\n },\n \"VideoFileDetails\": {\n \"properties\": + {\n \"videoStreams\": {\n \"description\": \"A list of video + streams contained in the uploaded video file. Each item in the list contains + detailed metadata about a video stream.\",\n \"items\": {\n \"$ref\": + \"VideoFileDetailsVideoStream\"\n },\n \"type\": \"array\"\n + \ },\n \"container\": {\n \"type\": \"string\",\n \"description\": + \"The uploaded video file's container format.\"\n },\n \"creationTime\": {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast actually ended. This information is only available - once the broadcast's state is complete.\",\n \"format\": \"date-time\"\n - \ },\n \"scheduledStartTime\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"actualStartTime\": {\n \"description\": \"The - date and time that the broadcast actually started. This information is only - available once the broadcast's state is live.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"isDefaultBroadcast\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast is the default broadcast. Internal only.\"\n },\n - \ \"scheduledEndTime\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the broadcast is scheduled to end.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast was added - to YouTube's live broadcast schedule.\",\n \"format\": \"date-time\"\n - \ },\n \"description\": {\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"properties\": {\n \"allowed\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\"\n },\n - \ \"blocked\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\"\n }\n },\n - \ \"id\": \"VideoContentDetailsRegionRestriction\",\n \"description\": - \"DEPRECATED Region restriction of the video.\",\n \"type\": \"object\"\n - \ },\n \"MonitorStreamInfo\": {\n \"properties\": {\n \"embedHtml\": - {\n \"description\": \"HTML code that embeds a player that plays - the monitor stream.\",\n \"type\": \"string\"\n },\n \"broadcastStreamDelayMs\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"If you have set the enableMonitorStream property to true, then this property - determines the length of the live broadcast delay.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"enableMonitorStream\": {\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"boolean\",\n \"description\": - \"This value determines whether the monitor stream is enabled for the broadcast. - If the monitor stream is enabled, then YouTube will broadcast the event content - on a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\"\n }\n - \ },\n \"id\": \"MonitorStreamInfo\",\n \"type\": \"object\",\n - \ \"description\": \"Settings and Info of the monitor stream\"\n },\n - \ \"ThirdPartyLinkStatus\": {\n \"description\": \"The third-party - link status object contains information about the status of the link.\",\n - \ \"id\": \"ThirdPartyLinkStatus\",\n \"type\": \"object\",\n \"properties\": - {\n \"linkStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ],\n \"type\": \"string\"\n }\n - \ }\n },\n \"PlaylistLocalization\": {\n \"properties\": {\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for playlist's description.\"\n },\n \"title\": - {\n \"description\": \"The localized strings for playlist's title.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistLocalization\",\n \"description\": \"Playlist - localization setting\"\n },\n \"LiveChatBanSnippet\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatBanSnippet\",\n \"properties\": - {\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banDurationSeconds\": {\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"type\": - {\n \"description\": \"The type of ban.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"An invalid ban type.\",\n - \ \"A permanent ban.\",\n \"A temporary ban.\"\n ],\n - \ \"enum\": [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ]\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The chat - this ban is pertinent to.\"\n }\n }\n },\n \"ChannelSectionLocalization\": - {\n \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for channel section's title.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ChannelSectionLocalization\",\n - \ \"description\": \"ChannelSection localization setting\",\n \"type\": - \"object\"\n },\n \"LocalizedProperty\": {\n \"properties\": {\n - \ \"localized\": {\n \"items\": {\n \"$ref\": \"LocalizedString\"\n - \ },\n \"type\": \"array\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the default property.\",\n - \ \"$ref\": \"LanguageTag\"\n },\n \"default\": {\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LocalizedProperty\"\n },\n \"CommentThreadListResponse\": - {\n \"type\": \"object\",\n \"id\": \"CommentThreadListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#commentThreadListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"CommentThread\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of comment threads that match the request criteria.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"pageInfo\": {\n - \ \"description\": \"General pagination information.\",\n \"$ref\": + and time when the uploaded video file was created. The value is specified + in ISO 8601 format. Currently, the following ISO 8601 formats are supported: + - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: + YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"bitrateBps\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The uploaded video file's combined (video and audio) bitrate in bits per + second.\"\n },\n \"audioStreams\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n + \ },\n \"description\": \"A list of audio streams contained + in the uploaded video file. Each item in the list contains detailed metadata + about an audio stream.\"\n },\n \"fileSize\": {\n \"type\": + \"string\",\n \"description\": \"The uploaded file's size in bytes. + This field is present whether a video file or another type of file was uploaded.\",\n + \ \"format\": \"uint64\"\n },\n \"durationMs\": {\n + \ \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The length of the uploaded video in milliseconds.\"\n },\n \"fileName\": + {\n \"type\": \"string\",\n \"description\": \"The uploaded + file's name. This field is present whether a video file or another type of + file was uploaded.\"\n },\n \"fileType\": {\n \"type\": + \"string\",\n \"enum\": [\n \"video\",\n \"audio\",\n + \ \"image\",\n \"archive\",\n \"document\",\n + \ \"project\",\n \"other\"\n ],\n \"description\": + \"The uploaded file's type as detected by YouTube's video processing engine. + Currently, YouTube only processes video files, but this field is present whether + a video file or another type of file was uploaded.\",\n \"enumDescriptions\": + [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio + only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG + image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document + or text file (e.g., MS Word document).\",\n \"Movie project file + (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video + file type.\"\n ]\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"VideoFileDetails\",\n \"description\": \"Describes original + video file properties, including technical details about audio and video streams, + but also metadata information like content length, digitization time, or geotagging + information.\"\n },\n \"ActivityListResponse\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n \"default\": + \"youtube#activityListResponse\",\n \"type\": \"string\"\n },\n + \ \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n \"eventId\": {\n \"type\": \"string\",\n \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n }\n }\n },\n \"CommentThreadSnippet\": - {\n \"properties\": {\n \"canReply\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n },\n \"topLevelComment\": {\n \"$ref\": - \"Comment\",\n \"description\": \"The top level comment of this thread.\"\n - \ },\n \"isPublic\": {\n \"description\": \"Whether - the thread (and therefore all its comments) is visible to all YouTube users.\",\n - \ \"type\": \"boolean\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\",\n \"type\": \"string\"\n },\n - \ \"totalReplyCount\": {\n \"type\": \"integer\",\n \"description\": - \"The total number of replies (not including the top level comment).\",\n - \ \"format\": \"uint32\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n }\n - \ },\n \"id\": \"CommentThreadSnippet\",\n \"description\": - \"Basic details about a comment thread.\",\n \"type\": \"object\"\n },\n - \ \"TestItem\": {\n \"id\": \"TestItem\",\n \"properties\": {\n - \ \"gaia\": {\n \"format\": \"int64\",\n \"type\": - \"string\"\n },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"type\": \"object\",\n \"description\": \"Information about - a channel that a user subscribed to.\",\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"MembershipsLevelSnippet\": {\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"levelDetails\": - {\n \"description\": \"Details about the pricing level.\",\n \"$ref\": - \"LevelDetails\"\n },\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n }\n }\n },\n \"CommentListResponse\": {\n \"id\": - \"CommentListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"pageInfo\": {\n \"description\": \"General pagination - information.\",\n \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"description\": - \"A list of comments that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"nextPageToken\": {\n \"description\": + this response.\"\n },\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentListResponse\\\".\",\n \"default\": - \"youtube#commentListResponse\"\n }\n }\n },\n \"ThumbnailSetResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#thumbnailSetResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"ThumbnailDetails\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of thumbnails.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ThumbnailSetResponse\",\n \"type\": \"object\"\n },\n \"ChannelBannerResource\": - {\n \"properties\": {\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL of this banner image.\"\n },\n - \ \"etag\": {\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#channelBannerResource\"\n }\n - \ },\n \"description\": \"A channel banner returned as the response - to a channel_banner.insert call.\",\n \"type\": \"object\",\n \"id\": - \"ChannelBannerResource\"\n },\n \"LiveChatSuperChatDetails\": {\n \"properties\": - {\n \"amountDisplayString\": {\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\",\n \"type\": - \"string\"\n },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The amount - purchased by the user, in micros (1,750,000 micros = 1.75).\"\n },\n - \ \"tier\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\"\n },\n - \ \"userComment\": {\n \"description\": \"The comment added - by the user to this Super Chat event.\",\n \"type\": \"string\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatSuperChatDetails\"\n - \ },\n \"Member\": {\n \"description\": \"A *member* resource represents - a member for a YouTube channel. A member provides recurring monetary support - to a creator and receives special benefits.\",\n \"type\": \"object\",\n - \ \"id\": \"Member\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#member\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"MemberSnippet\",\n \"description\": \"The snippet object contains - basic details about the member.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ }\n },\n \"VideoLocalization\": {\n \"properties\": {\n \"title\": - {\n \"description\": \"Localized version of the video's title.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"Localized version of the video's description.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Localized versions of certain - video properties (e.g. title).\",\n \"id\": \"VideoLocalization\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": {\n - \ \"properties\": {\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n }\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"pollingIntervalMillis\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The amount - of time the client should wait before polling again.\"\n },\n \"offlineAt\": - {\n \"description\": \"The date and time when the underlying stream - went offline.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\"\n - \ }\n },\n \"id\": \"LiveChatMessageListResponse\",\n \"type\": - \"object\"\n },\n \"Activity\": {\n \"id\": \"Activity\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#activity\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the activity.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the activity, including the activity's - type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"Activity\"\n + \ },\n \"type\": \"array\"\n }\n },\n \"id\": + \"ActivityListResponse\"\n },\n \"Activity\": {\n \"description\": + \"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.\",\n + \ \"id\": \"Activity\",\n \"type\": \"object\",\n \"properties\": + {\n \"id\": {\n \"description\": \"The ID that YouTube uses + to uniquely identify the activity.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the activity, including + the activity's type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n + \ },\n \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n \ \"description\": \"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.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource\"\n }\n },\n - \ \"description\": \"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.\"\n },\n \"SearchResultSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"channelTitle\": - {\n \"description\": \"The title of the channel that published the - resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\"\n },\n \"liveBroadcastContent\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The creation date and time of the resource that the search result identifies.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"A description of the search result.\"\n },\n - \ \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"title\": {\n \"description\": \"The title of - the search result.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Basic details about a search result, including title, - description and thumbnails of the item referenced by the search result.\",\n - \ \"id\": \"SearchResultSnippet\"\n },\n \"ChannelStatistics\": - {\n \"type\": \"object\",\n \"description\": \"Statistics about - a channel: number of subscribers, number of videos in the channel, etc.\",\n - \ \"properties\": {\n \"subscriberCount\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of subscribers that the channel has.\"\n },\n \"videoCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of videos uploaded to the channel.\",\n \"type\": \"string\"\n },\n - \ \"viewCount\": {\n \"description\": \"The number of times - the channel has been viewed.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"hiddenSubscriberCount\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the number of subscribers - is shown for this user.\"\n },\n \"commentCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of comments for the channel.\",\n - \ \"format\": \"uint64\"\n }\n },\n \"id\": \"ChannelStatistics\"\n - \ },\n \"ChannelSectionSnippet\": {\n \"description\": \"Basic details - about a channel section, including title, style and position.\",\n \"id\": - \"ChannelSectionSnippet\",\n \"properties\": {\n \"style\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"description\": \"The - style of the channel section.\"\n },\n \"position\": {\n \"description\": - \"The position of the channel section in the channel.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"defaultLanguage\": + rated video.\"\n },\n \"kind\": {\n \"default\": \"youtube#activity\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#activity\\\".\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"LiveChatModerator\": {\n \"id\": \"LiveChatModerator\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n + \ \"type\": \"string\",\n \"description\": \"The ID that + YouTube assigns to uniquely identify the moderator.\"\n },\n \"snippet\": + {\n \"$ref\": \"LiveChatModeratorSnippet\",\n \"description\": + \"The snippet object contains basic details about the moderator.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#liveChatModerator\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveChatModerator\\\".\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"A *liveChatModerator* resource represents a moderator + for a YouTube live chat. A chat moderator has the ability to ban/unban users + from a chat, remove message, etc.\"\n },\n \"LiveChatMessageRetractedDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageRetractedDetails\",\n + \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": + \"string\"\n }\n }\n },\n \"VideoAbuseReportReasonSnippet\": + {\n \"properties\": {\n \"secondaryReasons\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n + \ },\n \"description\": \"The secondary reasons associated + with this reason, if any are available. (There might be 0 or more.)\"\n },\n + \ \"label\": {\n \"type\": \"string\",\n \"description\": + \"The localized label belonging to this abuse report reason.\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"Basic details + about a video category, such as its localized title.\",\n \"id\": \"VideoAbuseReportReasonSnippet\"\n + \ },\n \"PageInfo\": {\n \"type\": \"object\",\n \"properties\": + {\n \"totalResults\": {\n \"description\": \"The total number + of results in the result set.\",\n \"type\": \"integer\",\n \"format\": + \"int32\"\n },\n \"resultsPerPage\": {\n \"description\": + \"The number of results included in the API response.\",\n \"type\": + \"integer\",\n \"format\": \"int32\"\n }\n },\n \"id\": + \"PageInfo\",\n \"description\": \"Paging details for lists of resources, + including total number of items available and number of resources returned + in a single page.\"\n },\n \"ChannelSectionSnippet\": {\n \"id\": + \"ChannelSectionSnippet\",\n \"properties\": {\n \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": \"The language of the channel section's default title and description.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the channel section.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the channel that published the channel section.\"\n + \ },\n \"position\": {\n \"type\": \"integer\",\n \"description\": + \"The position of the channel section in the channel.\",\n \"format\": + \"uint32\"\n },\n \"type\": {\n \"description\": \"The + type of the channel section.\",\n \"enumDescriptions\": [\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of the channel section.\",\n - \ \"enum\": [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ],\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel - section's title for multiple_playlists and multiple_channels.\"\n },\n - \ \"localized\": {\n \"$ref\": \"ChannelSectionLocalization\",\n - \ \"description\": \"Localized title, read-only.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viewer is a member. This matches the - `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated - membership gifting message. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n },\n \"gifterChannelId\": {\n - \ \"description\": \"The ID of the user that made the membership gifting - purchase. This matches the `snippet.authorChannelId` of the associated membership - gifting message.\",\n \"type\": \"string\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ }\n }\n },\n \"Caption\": {\n \"properties\": {\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n \"default\": - \"youtube#caption\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"CaptionSnippet\",\n \"description\": \"The - snippet object contains basic details about the caption.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the caption track.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"Caption\",\n \"description\": - \"A *caption* resource represents a YouTube caption track. A caption track - is associated with exactly one YouTube video.\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"properties\": {\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"description\": \"The amount of the fund.\",\n \"format\": - \"uint64\"\n }\n },\n \"id\": \"LiveChatFanFundingEventDetails\",\n - \ \"type\": \"object\"\n },\n \"VideoListResponse\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n + \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n + \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n + \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n + \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n + \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n + \ \"subscriptions\"\n ]\n },\n \"style\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n + \ \"verticalList\"\n ],\n \"description\": \"The + style of the channel section.\"\n },\n \"localized\": {\n \"$ref\": + \"ChannelSectionLocalization\",\n \"description\": \"Localized title, + read-only.\"\n },\n \"title\": {\n \"description\": + \"The channel section's title for multiple_playlists and multiple_channels.\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Basic details about a channel section, including title, style and position.\",\n + \ \"type\": \"object\"\n },\n \"PropertyValue\": {\n \"properties\": + {\n \"property\": {\n \"type\": \"string\",\n \"description\": + \"A property.\"\n },\n \"value\": {\n \"type\": \"string\",\n + \ \"description\": \"The property's value.\"\n }\n },\n + \ \"type\": \"object\",\n \"description\": \"A pair Property / Value.\",\n + \ \"id\": \"PropertyValue\"\n },\n \"CommentThreadListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": + \"A list of comment threads that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"CommentThread\"\n }\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Video\"\n }\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n \"default\": - \"youtube#videoListResponse\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoListResponse\"\n - \ },\n \"ChannelAuditDetails\": {\n \"type\": \"object\",\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\",\n \"id\": \"ChannelAuditDetails\",\n - \ \"properties\": {\n \"contentIdClaimsGoodStanding\": {\n \"description\": - \"Whether or not the channel has any unresolved claims.\",\n \"type\": - \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": {\n \"description\": - \"Whether or not the channel has any copyright strikes.\",\n \"type\": - \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether or - not the channel respects the community guidelines.\"\n }\n }\n - \ },\n \"ChannelStatus\": {\n \"id\": \"ChannelStatus\",\n \"type\": - \"object\",\n \"description\": \"JSON template for the status part of - a channel.\",\n \"properties\": {\n \"longUploadsStatus\": {\n - \ \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\"\n },\n \"isLinked\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n },\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"Privacy status of the channel.\"\n },\n \"madeForKids\": {\n - \ \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n }\n }\n },\n \"Subscription\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"subscriberSnippet\": - {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n \"description\": - \"The subscriberSnippet object contains basic details about the subscriber.\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains basic statistics about the subscription.\",\n - \ \"$ref\": \"SubscriptionContentDetails\"\n },\n \"snippet\": - {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the subscription.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"default\": \"youtube#subscription\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"Subscription\",\n \"description\": \"A *subscription* - resource contains information about a YouTube user subscription. A subscription - notifies a user when new videos are added to a channel or when another user - takes one of several actions on YouTube, such as uploading a video, rating - a video, or commenting on a video.\"\n },\n \"LiveStreamSnippet\": {\n - \ \"type\": \"object\",\n \"id\": \"LiveStreamSnippet\",\n \"properties\": - {\n \"publishedAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the stream was created.\",\n \"format\": - \"date-time\"\n },\n \"isDefaultStream\": {\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is transmitting the stream.\"\n },\n \"description\": - {\n \"description\": \"The stream's description. The value cannot - be longer than 10000 characters.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"description\": \"The stream's title. The - value must be between 1 and 128 characters long.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n }\n }\n },\n \"SubscriptionSnippet\": - {\n \"description\": \"Basic details about a subscription, including - title, description and thumbnails of the subscribed item.\",\n \"id\": - \"SubscriptionSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\"\n - \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"description\": \"The id object contains - information about the channel that the user subscribed to.\"\n },\n - \ \"channelTitle\": {\n \"description\": \"Channel title for - the channel that the subscription belongs to.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The subscription's details.\"\n },\n \"title\": - {\n \"description\": \"The subscription's title.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the subscription was created.\",\n - \ \"format\": \"date-time\"\n }\n }\n },\n \"LiveChatSuperStickerDetails\": - {\n \"properties\": {\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the purchase was made.\"\n - \ },\n \"superStickerMetadata\": {\n \"description\": - \"Information about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"tier\": {\n \"description\": \"The tier in - which the amount belongs. Lower amounts belong to lower tiers. The lowest - tier is 1.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ },\n \"amountMicros\": {\n \"description\": \"The - amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n }\n - \ },\n \"id\": \"LiveChatSuperStickerDetails\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsPlaylistItem\": {\n \"description\": - \"Information about a new playlist item.\",\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"properties\": {\n \"playlistId\": {\n \"type\": \"string\",\n - \ \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\"\n },\n \"playlistItemId\": {\n \"description\": - \"ID of the item within the playlist.\",\n \"type\": \"string\"\n - \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n }\n },\n \"type\": - \"object\"\n },\n \"PlaylistPlayer\": {\n \"id\": \"PlaylistPlayer\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"embedHtml\": - {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a - player that will play the playlist.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"Video\": {\n \"type\": \"object\",\n \"id\": - \"Video\",\n \"description\": \"A *video* resource represents a YouTube - video.\",\n \"properties\": {\n \"player\": {\n \"$ref\": - \"VideoPlayer\",\n \"description\": \"The player object contains - information that you would use to play the video in an embedded player.\"\n - \ },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"VideoLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\"\n },\n \"ageGating\": {\n \"$ref\": - \"VideoAgeGating\",\n \"description\": \"Age restriction details - related to a video. This data can only be retrieved by the video owner.\"\n - \ },\n \"recordingDetails\": {\n \"$ref\": \"VideoRecordingDetails\",\n - \ \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\"\n },\n - \ \"suggestions\": {\n \"description\": \"The suggestions object - encapsulates suggestions that identify opportunities to improve the video - quality or the metadata for the uploaded video. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information about the video content, including the length - of the video and its aspect ratio.\",\n \"$ref\": \"VideoContentDetails\"\n - \ },\n \"projectDetails\": {\n \"$ref\": \"VideoProjectDetails\",\n - \ \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object contains statistics about the video.\",\n \"$ref\": \"VideoStatistics\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the video's uploading, processing, - and privacy statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n - \ \"topicDetails\": {\n \"$ref\": \"VideoTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the video.\"\n },\n \"monetizationDetails\": - {\n \"description\": \"The monetizationDetails object encapsulates - information about the monetization status of the video.\",\n \"$ref\": - \"VideoMonetizationDetails\"\n },\n \"fileDetails\": {\n \"description\": - \"The fileDetails object encapsulates information about the video file that - was uploaded to YouTube, including the file's resolution, duration, audio - and video codecs, stream bitrates, and more. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the video.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n }\n },\n \"liveStreamingDetails\": - {\n \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\",\n \"$ref\": - \"VideoLiveStreamingDetails\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video, such as its title, - description, and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n - \ \"processingDetails\": {\n \"description\": \"The processingDetails - object encapsulates information about YouTube's progress in processing the - uploaded video file. The properties in the object identify the current processing - status and an estimate of the time remaining until YouTube finishes processing - the video. This part also indicates whether different types of data or content, - such as file details or thumbnail images, are available for the video. The - processingProgress object is designed to be polled so that the video uploaded - can track the progress that YouTube has made in processing the uploaded video - file. This data can only be retrieved by the video owner.\",\n \"$ref\": - \"VideoProcessingDetails\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#video\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\"\n - \ }\n }\n },\n \"VideoTopicDetails\": {\n \"description\": - \"Freebase topic information related to the video.\",\n \"properties\": - {\n \"topicIds\": {\n \"type\": \"array\",\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n },\n \"relevantTopicIds\": {\n \"items\": + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#commentThreadListResponse\"\n + \ }\n },\n \"id\": \"CommentThreadListResponse\"\n },\n + \ \"VideoSnippet\": {\n \"description\": \"Basic details about a video, + including title, description, uploader, thumbnails and category.\",\n \"properties\": + {\n \"channelId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the channel that the video was uploaded to.\",\n + \ \"type\": \"string\"\n },\n \"tags\": {\n \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\",\n - \ \"type\": \"array\"\n },\n \"topicCategories\": {\n - \ \"description\": \"A list of Wikipedia URLs that provide a high-level - description of the video's content.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"id\": \"VideoTopicDetails\",\n \"type\": \"object\"\n },\n - \ \"LiveChatModerator\": {\n \"id\": \"LiveChatModerator\",\n \"type\": - \"object\",\n \"description\": \"A *liveChatModerator* resource represents - a moderator for a YouTube live chat. A chat moderator has the ability to ban/unban - users from a chat, remove message, etc.\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"LiveChatModeratorSnippet\",\n \"description\": - \"The snippet object contains basic details about the moderator.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatModerator\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n + \"A list of keyword tags associated with the video. Tags may contain spaces.\",\n + \ \"type\": \"array\"\n },\n \"defaultLanguage\": {\n + \ \"description\": \"The language of the videos's default snippet.\",\n + \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"The video's title. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"channelTitle\": {\n \"type\": + \"string\",\n \"description\": \"Channel title for the channel that + the video belongs to.\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time when the video + was uploaded.\",\n \"type\": \"string\"\n },\n \"defaultAudioLanguage\": + {\n \"description\": \"The default_audio_language property specifies + the language spoken in the video's default audio track.\",\n \"type\": + \"string\"\n },\n \"localized\": {\n \"$ref\": \"VideoLocalization\",\n + \ \"description\": \"Localized snippet selected with the hl parameter. + If no such localization exists, this field is populated with the default snippet. + (Read-only)\"\n },\n \"categoryId\": {\n \"type\": + \"string\",\n \"description\": \"The YouTube video category associated + with the video.\"\n },\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images + associated with the video. 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.\"\n },\n \"liveBroadcastContent\": {\n + \ \"description\": \"Indicates if the video is an upcoming/active + live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active + live broadcast.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been completed.\"\n + \ ],\n \"type\": \"string\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The video's + description. @mutable youtube.videos.insert youtube.videos.update\"\n }\n + \ },\n \"id\": \"VideoSnippet\",\n \"type\": \"object\"\n },\n + \ \"Thumbnail\": {\n \"properties\": {\n \"width\": {\n \"format\": + \"uint32\",\n \"description\": \"(Optional) Width of the thumbnail + image.\",\n \"type\": \"integer\"\n },\n \"url\": {\n + \ \"type\": \"string\",\n \"description\": \"The thumbnail + image's URL.\"\n },\n \"height\": {\n \"description\": + \"(Optional) Height of the thumbnail image.\",\n \"type\": \"integer\",\n + \ \"format\": \"uint32\"\n }\n },\n \"description\": + \"A thumbnail is an image representing a YouTube resource.\",\n \"type\": + \"object\",\n \"id\": \"Thumbnail\"\n },\n \"ChannelSection\": + {\n \"properties\": {\n \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the channel section, such as its type, style and title.\"\n },\n \"contentDetails\": + {\n \"description\": \"The contentDetails object contains details + about the channel section content, such as a list of playlists or channels + featured in the section.\",\n \"$ref\": \"ChannelSectionContentDetails\"\n + \ },\n \"targeting\": {\n \"description\": \"The targeting + object contains basic targeting settings about the channel section.\",\n \"$ref\": + \"ChannelSectionTargeting\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n \"default\": + \"youtube#channelSection\"\n },\n \"localizations\": {\n \"additionalProperties\": + {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"description\": + \"Localizations for different languages\",\n \"type\": \"object\"\n \ },\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the moderator.\"\n }\n }\n - \ },\n \"VideoAbuseReportReasonListResponse\": {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The `visitorId` identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"VideoAbuseReportReason\"\n },\n \"description\": - \"A list of valid abuse reasons that are used with `video.ReportAbuse`.\",\n - \ \"type\": \"array\"\n }\n }\n },\n \"I18nLanguageListResponse\": - {\n \"type\": \"object\",\n \"id\": \"I18nLanguageListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of supported i18n languages. - In this map, the i18n language ID is the map key, and its value is the corresponding - i18nLanguage resource.\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n - \ }\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"default\": - \"youtube#i18nLanguageListResponse\"\n }\n }\n },\n \"GeoPoint\": - {\n \"description\": \"Geographical coordinates of a point, in WGS84.\",\n - \ \"id\": \"GeoPoint\",\n \"type\": \"object\",\n \"properties\": - {\n \"latitude\": {\n \"description\": \"Latitude in degrees.\",\n - \ \"type\": \"number\",\n \"format\": \"double\"\n },\n - \ \"longitude\": {\n \"type\": \"number\",\n \"description\": - \"Longitude in degrees.\",\n \"format\": \"double\"\n },\n - \ \"altitude\": {\n \"description\": \"Altitude above the reference - ellipsoid, in meters.\",\n \"format\": \"double\",\n \"type\": - \"number\"\n }\n }\n },\n \"ThirdPartyLinkSnippet\": {\n - \ \"type\": \"object\",\n \"description\": \"Basic information about - a third party account link, including its type and type-specific information.\",\n - \ \"properties\": {\n \"channelToStoreLink\": {\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n },\n - \ \"type\": {\n \"description\": \"Type of the link named after - the entities that are being linked.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ]\n }\n },\n \"id\": - \"ThirdPartyLinkSnippet\"\n },\n \"VideoCategoryListResponse\": {\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"default\": \"youtube#videoCategoryListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoCategory\"\n - \ },\n \"description\": \"A list of video categories that - can be associated with YouTube videos. In this map, the video category ID - is the map key, and its value is the corresponding videoCategory resource.\"\n - \ }\n },\n \"id\": \"VideoCategoryListResponse\",\n \"type\": - \"object\"\n },\n \"CaptionSnippet\": {\n \"description\": \"Basic - details about a caption track, such as its language and name.\",\n \"id\": - \"CaptionSnippet\",\n \"properties\": {\n \"isAutoSynced\": {\n - \ \"type\": \"boolean\",\n \"description\": \"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.\"\n - \ },\n \"trackKind\": {\n \"description\": \"The caption - track's type.\",\n \"enum\": [\n \"standard\",\n \"ASR\",\n - \ \"forced\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"failureReason\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The reason that - YouTube failed to process the caption track. This property is only present - if the state property's value is failed.\",\n \"enum\": [\n \"unknownFormat\",\n - \ \"unsupportedFormat\",\n \"processingFailed\"\n ]\n - \ },\n \"isEasyReader\": {\n \"description\": \"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.\",\n - \ \"type\": \"boolean\"\n },\n \"isCC\": {\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\",\n \"type\": \"boolean\"\n - \ },\n \"audioTrackType\": {\n \"enum\": [\n \"unknown\",\n - \ \"primary\",\n \"commentary\",\n \"descriptive\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of audio track associated - with the caption track.\"\n },\n \"isLarge\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the caption track - uses large text for the vision-impaired. The default value is false.\"\n },\n - \ \"isDraft\": {\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\",\n - \ \"type\": \"boolean\"\n },\n \"name\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The name of the - caption track. The name is intended to be visible to the user as an option - during playback.\",\n \"type\": \"string\"\n },\n \"language\": - {\n \"description\": \"The language of the caption track. The property - value is a BCP-47 language tag.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video associated with the caption track. @mutable - youtube.captions.insert\"\n },\n \"lastUpdated\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the caption track was last updated.\"\n },\n - \ \"status\": {\n \"description\": \"The caption track's status.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"serving\",\n \"syncing\",\n \"failed\"\n - \ ]\n }\n },\n \"type\": \"object\"\n },\n \"CommentThreadReplies\": - {\n \"description\": \"Comments written in (direct or indirect) reply - to the top level comment.\",\n \"type\": \"object\",\n \"properties\": - {\n \"comments\": {\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"type\": \"array\",\n \"description\": - \"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.\"\n }\n },\n \"id\": \"CommentThreadReplies\"\n - \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"properties\": - {\n \"banType\": {\n \"description\": \"The type of ban.\",\n - \ \"enum\": [\n \"permanent\",\n \"temporary\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"banDurationSeconds\": - {\n \"type\": \"string\",\n \"description\": \"The duration - of the ban. This property is only present if the banType is temporary.\",\n - \ \"format\": \"uint64\"\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"The details of the user that was banned.\"\n }\n },\n \"id\": - \"LiveChatUserBannedMessageDetails\",\n \"type\": \"object\"\n },\n - \ \"LiveChatBan\": {\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#liveChatBan\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A `__liveChatBan__` - resource represents a ban for a YouTube live chat.\",\n \"id\": \"LiveChatBan\"\n - \ },\n \"ActivityContentDetailsLike\": {\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the rated resource.\",\n \"$ref\": \"ResourceId\"\n - \ }\n },\n \"description\": \"Information about a resource - that received a positive (like) rating.\",\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"type\": \"object\"\n },\n \"I18nRegion\": {\n \"id\": \"I18nRegion\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"default\": \"youtube#i18nRegion\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"I18nRegionSnippet\",\n \"description\": \"The snippet object contains - basic details about the i18n region, such as region code and human-readable - name.\"\n },\n \"id\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the i18n region.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\"\n - \ },\n \"AccessPolicy\": {\n \"id\": \"AccessPolicy\",\n \"properties\": - {\n \"allowed\": {\n \"description\": \"The value of allowed - indicates whether the access to the policy is allowed or denied by default.\",\n - \ \"type\": \"boolean\"\n },\n \"exception\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"type\": \"array\"\n }\n },\n \"description\": - \"Rights management policy for YouTube resources.\",\n \"type\": \"object\"\n - \ },\n \"AbuseReport\": {\n \"properties\": {\n \"description\": - {\n \"type\": \"string\"\n },\n \"abuseTypes\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"AbuseType\"\n }\n },\n \"relatedEntities\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n - \ }\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n - \ }\n },\n \"id\": \"AbuseReport\",\n \"type\": \"object\"\n - \ },\n \"LiveStreamHealthStatus\": {\n \"properties\": {\n \"configurationIssues\": - {\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"type\": \"array\",\n \"description\": \"The - configurations issues on this stream\"\n },\n \"status\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"good\",\n - \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The status code of this stream\"\n },\n \"lastUpdateTimeSeconds\": - {\n \"description\": \"The last time this status was updated (in - seconds)\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ }\n },\n \"id\": \"LiveStreamHealthStatus\",\n \"type\": - \"object\"\n },\n \"I18nLanguageSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"I18nLanguageSnippet\",\n \"properties\": {\n \"hl\": - {\n \"type\": \"string\",\n \"description\": \"A short BCP-47 - code that uniquely identifies a language.\"\n },\n \"name\": - {\n \"description\": \"The human-readable name of the language in - the language itself.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Basic details about an i18n language, such as language - code and human-readable name.\"\n },\n \"Comment\": {\n \"id\": - \"Comment\",\n \"description\": \"A *comment* represents a single YouTube - comment.\",\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment.\"\n },\n \"kind\": {\n \"default\": \"youtube#comment\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SubscriptionListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#subscriptionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"description\": \"A list of subscriptions that match - the request criteria.\",\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"id\": \"SubscriptionListResponse\"\n },\n \"InvideoBranding\": - {\n \"type\": \"object\",\n \"properties\": {\n \"imageBytes\": - {\n \"description\": \"The bytes the uploaded image. Only used in - api to youtube communication.\",\n \"type\": \"string\",\n \"format\": - \"byte\"\n },\n \"timing\": {\n \"$ref\": \"InvideoTiming\",\n - \ \"description\": \"The temporal position within the video where - watermark will be displayed.\"\n },\n \"targetChannelId\": {\n - \ \"description\": \"The channel to which this branding links. If - not present it defaults to the current channel.\",\n \"type\": \"string\"\n - \ },\n \"imageUrl\": {\n \"description\": \"The url - of the uploaded image. Only used in apiary to api communication.\",\n \"type\": - \"string\"\n },\n \"position\": {\n \"description\": - \"The spatial position within the video where the branding watermark will - be displayed.\",\n \"$ref\": \"InvideoPosition\"\n }\n },\n - \ \"description\": \"LINT.IfChange Describes an invideo branding.\",\n - \ \"id\": \"InvideoBranding\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\",\n - \ \"type\": \"object\"\n },\n \"VideoProcessingDetails\": {\n \"type\": - \"object\",\n \"description\": \"Describes processing status and progress - and availability of some other Video resource parts.\",\n \"id\": \"VideoProcessingDetails\",\n - \ \"properties\": {\n \"processingFailureReason\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"type\": \"string\"\n },\n \"processingProgress\": - {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n },\n \"processingStatus\": - {\n \"description\": \"The video's processing status. This value - indicates whether YouTube was able to process the video or if the video is - still being processed.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"processing\",\n \"succeeded\",\n - \ \"failed\",\n \"terminated\"\n ]\n },\n - \ \"processingIssuesAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"fileDetailsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether file details are - available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether video editing suggestions, which might improve video - quality or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\",\n \"type\": \"string\"\n },\n \"thumbnailsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether thumbnail images have been generated for the video.\"\n - \ },\n \"tagSuggestionsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether keyword - (tag) suggestions are available for the video. Tags can be added to a video's - metadata to make it easier for other users to find the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\"\n }\n }\n },\n \"VideoProjectDetails\": {\n \"properties\": - {},\n \"type\": \"object\",\n \"id\": \"VideoProjectDetails\",\n - \ \"description\": \"DEPRECATED. b/157517979: This part was never populated - after it was added. However, it sees non-zero traffic because there is generated - client code in the wild that refers to it [1]. We keep this field and do NOT - remove it because otherwise V3 would return an error when this part gets requested - [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"TokenPagination\": {\n \"id\": \"TokenPagination\",\n \"properties\": - {},\n \"type\": \"object\",\n \"description\": \"Stub token pagination - template to suppress results.\"\n },\n \"MembershipsLevelListResponse\": - {\n \"id\": \"MembershipsLevelListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"MembershipsLevel\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of pricing levels offered by a creator to the fans.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n }\n }\n },\n \"SuperStickerMetadata\": - {\n \"id\": \"SuperStickerMetadata\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"altText\": {\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\",\n \"type\": \"string\"\n },\n \"altTextLanguage\": - {\n \"description\": \"Specifies the localization language in which - the alt text is returned.\",\n \"type\": \"string\"\n },\n - \ \"stickerId\": {\n \"description\": \"Unique identifier of - the Super Sticker. This is a shorter form of the alt_text that includes pack - name and a recognizable characteristic of the sticker.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveStream\": {\n \"id\": - \"LiveStream\",\n \"type\": \"object\",\n \"properties\": {\n \"cdn\": - {\n \"$ref\": \"CdnSettings\",\n \"description\": \"The - cdn object defines the live stream's content delivery network (CDN) settings. - These settings provide details about the manner in which you stream your content - to YouTube.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n - \ },\n \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n - \ \"description\": \"The status object contains information about - live stream's status.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the stream.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"LiveStreamContentDetails\",\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStream\"\n - \ }\n },\n \"description\": \"A live stream describes a live - ingestion point.\"\n },\n \"LiveBroadcastStatus\": {\n \"id\": - \"LiveBroadcastStatus\",\n \"description\": \"Live broadcast state.\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's privacy status. Note that the - broadcast represents exactly one YouTube video, so the privacy settings are - identical to those supported for videos. In addition, you can set this field - by modifying the broadcast resource or by setting the privacyStatus field - of the corresponding video resource.\"\n },\n \"liveBroadcastPriority\": - {\n \"type\": \"string\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"enumDescriptions\": [\n \"\",\n \"Low - priority broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ]\n },\n \"selfDeclaredMadeForKids\": {\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\",\n \"type\": - \"boolean\"\n },\n \"lifeCycleStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete - settings\",\n \"Visible only to partner, may need special UI treatment\",\n - \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n - \ \"The broadcast is finished.\",\n \"This broadcast - was removed by admin action\",\n \"Transition into TESTING has - been requested\",\n \"Transition into LIVE has been requested\"\n - \ ],\n \"description\": \"The broadcast's status. The status - can be updated using the API's liveBroadcasts.transition method.\"\n },\n - \ \"recordingStatus\": {\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"description\": - \"The broadcast's recording status.\",\n \"type\": \"string\"\n },\n - \ \"madeForKids\": {\n \"description\": \"Whether the broadcast - is made for kids or not, decided by YouTube instead of the creator. This field - is read only.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatNewSponsorDetails\": {\n \"properties\": - {\n \"isUpgrade\": {\n \"description\": \"If the viewer just - had upgraded from a lower level. For viewers that were not members at the - time of purchase, this field is false.\",\n \"type\": \"boolean\"\n - \ },\n \"memberLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the Level that the viewer just had - joined. The Level names are defined by the YouTube channel offering the Membership. - In some situations this field isn't filled.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatNewSponsorDetails\"\n },\n \"CommentSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"authorChannelId\": {\n \"$ref\": - \"CommentSnippetAuthorChannelId\"\n },\n \"publishedAt\": {\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the comment was originally published.\",\n \"type\": - \"string\"\n },\n \"likeCount\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The total number - of likes this comment has received.\"\n },\n \"textOriginal\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"updatedAt\": - {\n \"description\": \"The date and time when the comment was last - updated.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comment refers to, if any.\"\n },\n \"textDisplay\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"canRate\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the current viewer can rate this comment.\"\n },\n \"parentId\": - {\n \"description\": \"The unique id of the parent comment, only - set for replies.\",\n \"type\": \"string\"\n },\n \"viewerRating\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n },\n \"authorProfileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - the avatar of the user who posted the comment.\"\n },\n \"moderationStatus\": - {\n \"description\": \"The comment's moderation status. Will not - be set if the comments were requested through the id filter.\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ]\n },\n - \ \"authorChannelUrl\": {\n \"type\": \"string\",\n \"description\": - \"Link to the author's YouTube channel, if any.\"\n }\n },\n \"description\": - \"Basic details about a comment, such as its author and text.\",\n \"id\": - \"CommentSnippet\"\n },\n \"ThirdPartyLinkListResponse\": {\n \"id\": - \"ThirdPartyLinkListResponse\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n \"default\": - \"youtube#thirdPartyLinkListResponse\"\n },\n \"items\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n }\n }\n },\n \"type\": \"object\"\n - \ },\n \"RelatedEntity\": {\n \"id\": \"RelatedEntity\",\n \"type\": - \"object\",\n \"properties\": {\n \"entity\": {\n \"$ref\": - \"Entity\"\n }\n }\n },\n \"LocalizedString\": {\n \"properties\": - {\n \"language\": {\n \"type\": \"string\"\n },\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LocalizedString\",\n - \ \"type\": \"object\"\n },\n \"WatchSettings\": {\n \"description\": - \"Branding properties for the watch. All deprecated.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"textColor\": {\n \"type\": \"string\",\n - \ \"description\": \"The background color for the video watch page's - branded area.\"\n },\n \"featuredPlaylistId\": {\n \"type\": - \"string\",\n \"description\": \"An ID that uniquely identifies a - playlist that displays next to the video player.\"\n },\n \"backgroundColor\": - {\n \"type\": \"string\",\n \"description\": \"The text - color for the video watch page's branded area.\"\n }\n },\n \"id\": - \"WatchSettings\"\n },\n \"MembershipsDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"membershipsDurationAtLevels\": - {\n \"description\": \"Data about memberships duration on particular - pricing levels.\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ },\n \"type\": \"array\"\n },\n \"accessibleLevels\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Ids of all levels that - the user has access to. This includes the currently active level and all other - levels that are included because of a higher purchase.\"\n },\n \"highestAccessibleLevel\": - {\n \"description\": \"Id of the highest level that the user has - access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"highestAccessibleLevelDisplayName\": {\n \"description\": - \"Display name for the highest level that the user has access to at the moment.\",\n - \ \"type\": \"string\"\n },\n \"membershipsDuration\": - {\n \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\",\n \"$ref\": \"MembershipsDuration\"\n - \ }\n },\n \"id\": \"MembershipsDetails\"\n },\n \"PageInfo\": - {\n \"id\": \"PageInfo\",\n \"type\": \"object\",\n \"description\": - \"Paging details for lists of resources, including total number of items available - and number of resources returned in a single page.\",\n \"properties\": - {\n \"resultsPerPage\": {\n \"description\": \"The number - of results included in the API response.\",\n \"format\": \"int32\",\n - \ \"type\": \"integer\"\n },\n \"totalResults\": {\n - \ \"type\": \"integer\",\n \"description\": \"The total number - of results in the result set.\",\n \"format\": \"int32\"\n }\n - \ }\n },\n \"ChannelLocalization\": {\n \"properties\": {\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel's description.\"\n },\n \"title\": - {\n \"description\": \"The localized strings for channel's title.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Channel localization setting\",\n \"type\": \"object\",\n \"id\": - \"ChannelLocalization\"\n },\n \"MembershipsLevel\": {\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#membershipsLevel\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the memberships level.\"\n - \ }\n },\n \"id\": \"MembershipsLevel\",\n \"type\": - \"object\",\n \"description\": \"A *membershipsLevel* resource represents - an offer made by YouTube creators for their fans. Users can become members - of the channel by joining one of the available levels. They will provide recurring - monetary support and receives special benefits.\"\n },\n \"CaptionListResponse\": - {\n \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Caption\"\n },\n - \ \"description\": \"A list of captions that match the request criteria.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#captionListResponse\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"CaptionListResponse\"\n },\n \"Entity\": {\n \"id\": \"Entity\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"typeId\": - {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\"\n },\n \"url\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoContentDetails\": {\n \"id\": - \"VideoContentDetails\",\n \"description\": \"Details about the content - of a YouTube Video.\",\n \"properties\": {\n \"projection\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Specifies the projection format of the video.\"\n },\n \"hasCustomThumbnail\": - {\n \"description\": \"Indicates whether the video uploader has provided - a custom thumbnail image for the video. This property is only visible to the - video uploader.\",\n \"type\": \"boolean\"\n },\n \"definition\": - {\n \"description\": \"The value of definition indicates whether - the video is available in high definition or only in standard definition.\",\n - \ \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ]\n },\n \"duration\": {\n \"type\": - \"string\",\n \"description\": \"The length of the video. The tag - value is an ISO 8601 duration in the format PT#M#S, in which the letters PT - indicate that the value specifies a period of time, and the letters M and - S refer to length in minutes and seconds, respectively. The # characters preceding - the M and S letters are both integers that specify the number of minutes (or - seconds) of the video. For example, a value of PT15M51S indicates that the - video is 15 minutes and 51 seconds long.\"\n },\n \"countryRestriction\": - {\n \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\",\n \"$ref\": - \"AccessPolicy\"\n },\n \"licensedContent\": {\n \"type\": - \"boolean\",\n \"description\": \"The value of is_license_content - indicates whether the video is licensed content.\"\n },\n \"contentRating\": - {\n \"description\": \"Specifies the ratings that the video received - under various rating schemes.\",\n \"$ref\": \"ContentRating\"\n - \ },\n \"regionRestriction\": {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\"\n },\n \"caption\": - {\n \"type\": \"string\",\n \"enum\": [\n \"true\",\n - \ \"false\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"The value of - captions indicates whether the video has captions or not.\"\n },\n - \ \"dimension\": {\n \"type\": \"string\",\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\"\n }\n },\n \"type\": \"object\"\n },\n \"TestItemTestItemSnippet\": - {\n \"type\": \"object\",\n \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\"\n - \ },\n \"VideoLiveStreamingDetails\": {\n \"properties\": {\n \"actualEndTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast actually ended. This - value will not be available until the broadcast is over.\"\n },\n \"scheduledEndTime\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the channel section.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"ChannelSection\"\n },\n \"VideoAbuseReportReason\": + {\n \"description\": \"A `__videoAbuseReportReason__` resource identifies + a reason that a video could be reported as abusive. Video abuse report reasons + are used with `video.ReportAbuse`.\",\n \"properties\": {\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + this abuse report reason.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReason\"\n + \ },\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n + \ \"description\": \"The `snippet` object contains basic details about + the abuse report reason.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"VideoAbuseReportReason\",\n \"type\": \"object\"\n },\n + \ \"ChannelContentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails + object encapsulates channel data that is relevant for YouTube Partners linked + with the channel.\",\n \"properties\": {\n \"contentOwner\": {\n + \ \"type\": \"string\",\n \"description\": \"The ID of the + content owner linked to the channel.\"\n },\n \"timeLinked\": {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast is scheduled to end. - If the value is empty or the property is not present, then the broadcast is - scheduled to contiue indefinitely.\"\n },\n \"actualStartTime\": - {\n \"type\": \"string\",\n \"description\": \"The time - that the broadcast actually started. This value will not be available until - the broadcast begins.\",\n \"format\": \"date-time\"\n },\n - \ \"scheduledStartTime\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The time that the broadcast is - scheduled to begin.\"\n },\n \"activeLiveChatId\": {\n \"description\": - \"The ID of the currently active live chat attached to this video. This field - is filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\",\n \"type\": \"string\"\n },\n \"concurrentViewers\": - {\n \"description\": \"The number of viewers currently watching the - broadcast. The property and its value will be present if the broadcast has - current viewers and the broadcast owner has not hidden the viewcount for the - video. Note that YouTube stops tracking the number of concurrent viewers for - a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Details about the live - streaming metadata.\"\n },\n \"LevelDetails\": {\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The name that should be used when referring to this level.\"\n }\n - \ },\n \"id\": \"LevelDetails\",\n \"type\": \"object\"\n },\n - \ \"VideoMonetizationDetails\": {\n \"properties\": {\n \"access\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - value of access indicates whether the video can be monetized or not.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Details about - monetization of a YouTube Video.\",\n \"id\": \"VideoMonetizationDetails\"\n - \ },\n \"VideoAbuseReportReasonSnippet\": {\n \"properties\": {\n - \ \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label belonging to this abuse report reason.\"\n },\n - \ \"secondaryReasons\": {\n \"description\": \"The secondary - reasons associated with this reason, if any are available. (There might be - 0 or more.)\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"id\": - \"VideoAbuseReportReasonSnippet\",\n \"description\": \"Basic details - about a video category, such as its localized title.\",\n \"type\": \"object\"\n - \ },\n \"VideoFileDetails\": {\n \"id\": \"VideoFileDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"fileType\": - {\n \"enum\": [\n \"video\",\n \"audio\",\n - \ \"image\",\n \"archive\",\n \"document\",\n - \ \"project\",\n \"other\"\n ],\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"description\": \"The uploaded file's - type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\",\n \"type\": \"string\"\n - \ },\n \"container\": {\n \"description\": \"The uploaded - video file's container format.\",\n \"type\": \"string\"\n },\n - \ \"bitrateBps\": {\n \"description\": \"The uploaded video - file's combined (video and audio) bitrate in bits per second.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"videoStreams\": - {\n \"type\": \"array\",\n \"description\": \"A list of - video streams contained in the uploaded video file. Each item in the list - contains detailed metadata about a video stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n }\n },\n - \ \"audioStreams\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n },\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\"\n },\n - \ \"durationMs\": {\n \"format\": \"uint64\",\n \"description\": - \"The length of the uploaded video in milliseconds.\",\n \"type\": - \"string\"\n },\n \"fileName\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded file's name. This field is present - whether a video file or another type of file was uploaded.\"\n },\n - \ \"creationTime\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the uploaded video file was created. The value is - specified in ISO 8601 format. Currently, the following ISO 8601 formats are - supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time - with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"fileSize\": - {\n \"description\": \"The uploaded file's size in bytes. This field - is present whether a video file or another type of file was uploaded.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Describes original video file properties, - including technical details about audio and video streams, but also metadata - information like content length, digitization time, or geotagging information.\"\n - \ },\n \"PlaylistItemListResponse\": {\n \"id\": \"PlaylistItemListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"description\": \"A list of playlist items that match the request - criteria.\",\n \"type\": \"array\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": - {\n \"id\": \"LiveBroadcastListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"default\": \"youtube#liveBroadcastListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"description\": \"A list of broadcasts that match - the request criteria.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n }\n }\n },\n \"LiveStreamListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"LiveStream\"\n },\n \"description\": - \"A list of live streams that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveStreamListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": - \"LiveStreamListResponse\"\n },\n \"I18nLanguage\": {\n \"id\": - \"I18nLanguage\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the i18n language.\"\n },\n \"kind\": - {\n \"default\": \"youtube#i18nLanguage\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguage\\\".\"\n }\n },\n \"description\": - \"An *i18nLanguage* resource identifies a UI language currently supported - by YouTube.\",\n \"type\": \"object\"\n },\n \"SuperChatEventSnippet\": - {\n \"id\": \"SuperChatEventSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\",\n \"type\": - \"string\"\n },\n \"supporterDetails\": {\n \"description\": - \"Details about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"channelId\": {\n \"description\": \"Channel - id where the event occurred.\",\n \"type\": \"string\"\n },\n - \ \"displayString\": {\n \"description\": \"A rendered string - that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). The - string is rendered for the given language.\",\n \"type\": \"string\"\n - \ },\n \"superStickerMetadata\": {\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The purchase - amount, in micros of the purchase currency. e.g., 1 is represented as 1000000.\"\n - \ },\n \"commentText\": {\n \"description\": \"The text - contents of the comment left by the user.\",\n \"type\": \"string\"\n - \ },\n \"createdAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the event occurred.\",\n \"format\": \"date-time\"\n - \ },\n \"messageType\": {\n \"description\": \"The tier - for the paid message, which is based on the amount of money spent to purchase - the message.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"isSuperStickerEvent\": {\n \"description\": - \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n - \ }\n }\n },\n \"SubscriptionSubscriberSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"description\": - \"The title of the subscriber.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The channel ID of the - subscriber.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"Thumbnails - for this subscriber.\"\n },\n \"description\": {\n \"description\": - \"The description of the subscriber.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Basic details about a subscription's - subscriber including title, description, channel ID and thumbnails.\",\n \"id\": - \"SubscriptionSubscriberSnippet\"\n }\n },\n \"version\": \"v3\",\n \"id\": - \"youtube:v3\",\n \"resources\": {\n \"captions\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.captions.list\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ },\n \"onBehalfOf\": {\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"description\": \"Returns the captions - with the given IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Returns - the captions for the specified video.\"\n }\n },\n \"response\": - {\n \"$ref\": \"CaptionListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/captions\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ]\n },\n \"update\": {\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n },\n - \ \"resumable\": {\n \"multipart\": true,\n \"path\": - \"/resumable/upload/youtube/v3/captions\"\n }\n },\n - \ \"maxSize\": \"104857600\",\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ]\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"httpMethod\": \"PUT\",\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameters\": {\n \"sync\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\"\n - \ },\n \"part\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"supportsMediaUpload\": - true,\n \"flatPath\": \"youtube/v3/captions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"id\": \"youtube.captions.update\"\n },\n \"download\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"tlang\": {\n \"description\": - \"tlang is the language code; machine translate the captions into this language.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is be on behalf of\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"tfmt\": - {\n \"type\": \"string\",\n \"description\": \"Convert - the captions into this format. Supported options are sbv, srt, and vtt.\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"path\",\n \"description\": \"The - ID of the caption track to download, required for One Platform.\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"useMediaDownloadService\": - true,\n \"id\": \"youtube.captions.download\",\n \"supportsMediaDownload\": - true,\n \"description\": \"Downloads a caption track.\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/captions/{id}\",\n \"flatPath\": - \"youtube/v3/captions/{id}\"\n },\n \"insert\": {\n \"parameters\": - {\n \"onBehalfOf\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"ID of - the Google+ Page for the channel that the request is be on behalf of\"\n },\n - \ \"sync\": {\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"mediaUpload\": {\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\",\n - \ \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n }\n - \ }\n },\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"supportsMediaUpload\": true,\n \"path\": - \"youtube/v3/captions\",\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"id\": \"youtube.captions.insert\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"delete\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true\n }\n - \ },\n \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/captions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/captions\",\n \"id\": - \"youtube.captions.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n }\n }\n },\n \"subscriptions\": {\n \"methods\": - {\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"request\": {\n \"$ref\": - \"Subscription\"\n },\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"response\": - {\n \"$ref\": \"Subscription\"\n }\n },\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.subscriptions.delete\",\n \"path\": - \"youtube/v3/subscriptions\",\n \"description\": \"Deletes a resource.\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n }\n },\n - \ \"list\": {\n \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"path\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true\n },\n \"forChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the subscriptions to the subset of - these channels that the authenticated user is subscribed to.\"\n },\n - \ \"mySubscribers\": {\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Return the subscribers of the - given channel owner.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"myRecentSubscribers\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"maximum\": \"50\",\n \"location\": - \"query\",\n \"minimum\": \"0\"\n },\n \"order\": - {\n \"description\": \"The order of the returned subscriptions\",\n - \ \"default\": \"relevance\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Sort - by relevance.\",\n \"Sort by order of activity.\",\n \"Sort - alphabetically.\"\n ],\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Flag for returning the subscriptions - of the authenticated user.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return the subscriptions of the - given channel owner.\"\n },\n \"id\": {\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.subscriptions.list\"\n }\n }\n },\n - \ \"activities\": {\n \"methods\": {\n \"list\": {\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"publishedAfter\": {\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"home\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"publishedBefore\": - {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"default\": \"5\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.activities.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/activities\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"members\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"flatPath\": \"youtube/v3/members\",\n \"path\": - \"youtube/v3/members\",\n \"description\": \"Retrieves a list of - members that match the request criteria for a channel.\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.members.list\",\n \"response\": - {\n \"$ref\": \"MemberListResponse\"\n },\n \"parameters\": - {\n \"mode\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ],\n \"description\": \"Parameter - that specifies which channel members to return.\",\n \"type\": - \"string\",\n \"default\": \"all_current\",\n \"location\": - \"query\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ]\n - \ },\n \"hasAccessToLevel\": {\n \"location\": - \"query\",\n \"description\": \"Filter members in the results - set to the ones that have access to a level.\",\n \"type\": \"string\"\n - \ },\n \"filterByMemberChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Comma separated list of channel - IDs. Only data about members that are part of this list will be included in - the response.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"default\": \"5\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"maximum\": - \"1000\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"minimum\": \"0\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n }\n }\n }\n }\n },\n \"watermarks\": - {\n \"methods\": {\n \"unset\": {\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"channelId\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/watermarks/unset\",\n \"description\": - \"Allows removal of channel watermark.\",\n \"id\": \"youtube.watermarks.unset\",\n - \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"channelId\"\n ]\n - \ },\n \"set\": {\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"channelId\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"description\": - \"Allows upload of watermark image and setting it for a channel.\",\n \"request\": - {\n \"$ref\": \"InvideoBranding\"\n },\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"mediaUpload\": {\n - \ \"maxSize\": \"10485760\",\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n }\n }\n },\n \"id\": \"youtube.watermarks.set\"\n - \ }\n }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"response\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.tests.insert\",\n \"description\": - \"POST method.\",\n \"request\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"path\": \"youtube/v3/tests\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/tests\",\n \"parameters\": {\n - \ \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"getRating\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos/getRating\",\n \"response\": - {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"description\": - \"Retrieves the ratings that the authorized user gave to a list of specified - videos.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.videos.getRating\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/videos/getRating\"\n - \ },\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"description\": \"Updates an - existing resource.\",\n \"path\": \"youtube/v3/videos\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"id\": \"youtube.videos.update\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"rate\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\",\n \"rating\"\n - \ ],\n \"path\": \"youtube/v3/videos/rate\",\n \"id\": - \"youtube.videos.rate\",\n \"description\": \"Adds a like or dislike - rating to a video or removes a rating from a video.\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"rating\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n - \ }\n },\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"httpMethod\": \"POST\"\n },\n \"list\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"VideoListResponse\"\n },\n - \ \"parameters\": {\n \"videoCategoryId\": {\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"0\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Return videos with the given - ids.\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"default\": \"5\",\n \"description\": - \"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.\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"format\": \"uint32\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Use a chart that is specific to the specified - region\"\n },\n \"chart\": {\n \"description\": - \"Return the videos that are in the specified chart.\",\n \"location\": - \"query\",\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ]\n },\n \"maxHeight\": - {\n \"location\": \"query\",\n \"maximum\": \"8192\",\n - \ \"minimum\": \"72\",\n \"type\": \"integer\",\n - \ \"format\": \"int32\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"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.\",\n - \ \"location\": \"query\"\n },\n \"myRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Return - videos liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"location\": - \"query\"\n },\n \"maxWidth\": {\n \"location\": - \"query\",\n \"maximum\": \"8192\",\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"description\": - \"Return the player with maximum height specified in\",\n \"minimum\": - \"72\"\n },\n \"locale\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/videos\",\n - \ \"id\": \"youtube.videos.list\"\n },\n \"reportAbuse\": - {\n \"path\": \"youtube/v3/videos/reportAbuse\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [],\n \"httpMethod\": \"POST\",\n \"description\": - \"Report abuse for a video.\",\n \"id\": \"youtube.videos.reportAbuse\",\n - \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n - \ \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/videos\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.videos.delete\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"insert\": {\n \"supportsMediaUpload\": - true,\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"stabilize\": {\n \"type\": - \"boolean\",\n \"description\": \"Should stabilize be applied - to the upload.\",\n \"location\": \"query\"\n },\n - \ \"autoLevels\": {\n \"location\": \"query\",\n \"description\": - \"Should auto-levels be applied to the upload.\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"notifySubscribers\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Notify - the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"default\": \"true\"\n }\n },\n - \ \"mediaUpload\": {\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/videos\"\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"274877906944\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.insert\",\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/videos\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"request\": {\n \"$ref\": \"Video\"\n }\n }\n - \ }\n },\n \"liveStreams\": {\n \"methods\": {\n \"insert\": - {\n \"path\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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, content_details, and status.\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieve the list of streams associated - with the given channel. --\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"0\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"LiveStreamListResponse\"\n }\n },\n \"delete\": {\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/liveStreams\",\n \"id\": - \"youtube.liveStreams.delete\",\n \"description\": \"Deletes an existing - stream for the authenticated user.\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"update\": {\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"path\": \"youtube/v3/liveStreams\",\n \"id\": - \"youtube.liveStreams.update\"\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"description\": \"The date and time when the channel was linked + to the content owner.\"\n }\n },\n \"id\": \"ChannelContentOwnerDetails\",\n + \ \"type\": \"object\"\n },\n \"ContentRating\": {\n \"id\": + \"ContentRating\",\n \"type\": \"object\",\n \"properties\": {\n + \ \"eirinRating\": {\n \"description\": \"The video's Eirin + (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n \"enum\": + [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n + \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"chfilmRating\": + {\n \"type\": \"string\",\n \"description\": \"The video's + rating in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n + \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n + \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"0\",\n + \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ]\n },\n \"mibacRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from the Ministero dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n + \ \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n + \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n + \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n + \ \"mibacUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"ilfilmRating\": {\n \"description\": \"The + video's rating in Israel.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n + \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n + \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ]\n },\n + \ \"tvpgRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"tvpgUnspecified\",\n \"tvpgY\",\n \"tvpgY7\",\n + \ \"tvpgY7Fv\",\n \"tvpgG\",\n \"tvpgPg\",\n + \ \"pg14\",\n \"tvpgMa\",\n \"tvpgUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n + \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n + \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n + \ ],\n \"description\": \"The video's TV Parental Guidelines + (TVPG) rating.\"\n },\n \"nfrcRating\": {\n \"description\": + \"The video's rating from the Bulgarian National Film Center.\",\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n + \ \"D\",\n \"X\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"nfrcUnspecified\",\n \"nfrcA\",\n + \ \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n + \ \"nfrcUnrated\"\n ]\n },\n \"mdaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n + \ \"R21\",\n \"\"\n ],\n \"enum\": + [\n \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n + \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n + \ \"mdaR21\",\n \"mdaUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from Singapore's + Media Development Authority (MDA) and, specifically, it's Board of Film Censors + (BFC).\"\n },\n \"fpbRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n + \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n + \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n + \ ],\n \"description\": \"The video's rating from South Africa's + Film and Publication Board.\",\n \"type\": \"string\",\n \"enum\": + [\n \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n + \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n + \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n + \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n + \ ]\n },\n \"acbRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"Programs that have + been given a P classification by the Australian Communications and Media Authority. + These programs are intended for preschool children.\",\n \"Programs + that have been given a C classification by the Australian Communications and + Media Authority. These programs are intended for children (other than preschool + children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n + \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"enum\": [\n \"acbUnspecified\",\n + \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n + \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n + \ \"acbR18plus\",\n \"acbUnrated\"\n ]\n },\n + \ \"mpaaRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n + \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n + \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"description\": + \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n + \ ]\n },\n \"nmcRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The National Media Council ratings system for United Arab Emirates.\",\n + \ \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n + \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n + \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n + \ \"nmcUnrated\"\n ]\n },\n \"nkclvRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n + \ \"\"\n ],\n \"enum\": [\n \"nkclvUnspecified\",\n + \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n + \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Nacion\xE3lais + Kino centrs (National Film Centre of Latvia).\",\n \"type\": \"string\"\n + \ },\n \"oflcRating\": {\n \"enum\": [\n \"oflcUnspecified\",\n + \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n + \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n + \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n + \ \"oflcRp16\",\n \"oflcRp18\"\n ],\n \"description\": + \"The video's Office of Film and Literature Classification (OFLC - New Zealand) + rating.\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n + \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n + \ \"RP16\",\n \"RP18\"\n ],\n \"type\": + \"string\"\n },\n \"cbfcRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n + \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n + \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n + \ \"cbfcUnrated\"\n ],\n \"description\": \"The + video's Central Board of Film Certification (CBFC - India) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A + 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n + \ \"S\",\n \"\"\n ]\n },\n \"smaisRating\": + {\n \"description\": \"The video's rating in Iceland.\",\n \"type\": + \"string\",\n \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n + \ \"smais7\",\n \"smais12\",\n \"smais14\",\n + \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"L\",\n + \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n + \ \"18\",\n \"\"\n ]\n },\n \"mccypRating\": + {\n \"description\": \"The video's rating from the Danish Film Institute's + (Det Danske Filminstitut) Media Council for Children and Young People.\",\n + \ \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n + \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n + \ \"mccypUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"7\",\n \"11\",\n \"15\",\n \"\"\n + \ ]\n },\n \"czfilmRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n + \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n + \ \"czfilmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n + \ \"18\",\n \"\"\n ],\n \"description\": + \"The video's rating in the Czech Republic.\"\n },\n \"medietilsynetRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n + \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n + \ \"\"\n ],\n \"enum\": [\n \"medietilsynetUnspecified\",\n + \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n + \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n + \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n + \ ],\n \"description\": \"The video's rating from Medietilsynet, + the Norwegian Media Authority.\"\n },\n \"cncRating\": {\n \"enum\": + [\n \"cncUnspecified\",\n \"cncT\",\n \"cnc10\",\n + \ \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n \"cncE\",\n + \ \"cncInterdiction\",\n \"cncUnrated\"\n ],\n + \ \"description\": \"Rating system in France - Commission de classification + cinematographique\",\n \"enumDescriptions\": [\n \"\",\n + \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n + \ \"18\",\n \"E\",\n \"interdiction\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"csaRating\": + {\n \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n + \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n + \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"Interdiction\",\n \"\"\n ],\n \"description\": + \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, + which rates broadcast content.\",\n \"type\": \"string\"\n },\n + \ \"nfvcbRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n + \ \"15\",\n \"18\",\n \"RE\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from Nigeria's + National Film and Video Censors Board.\",\n \"enum\": [\n \"nfvcbUnspecified\",\n + \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n + \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n + \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"fmocRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"\"\n + \ ],\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n + \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n + \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"This property has been deprecated. Use the contentDetails.contentRating.cncRating + instead.\"\n },\n \"nbcplRating\": {\n \"description\": + \"The video's rating in Poland.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n + \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n + \ \"nbcplUnrated\"\n ]\n },\n \"bbfcRating\": + {\n \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n + \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n + \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n + \ \"bbfcUnrated\"\n ],\n \"description\": \"The + video's British Board of Film Classification (BBFC) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"catvRating\": {\n \"enum\": [\n \"catvUnspecified\",\n + \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n + \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n + \ \"catvUnrated\",\n \"catvE\"\n ],\n \"description\": + \"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.\",\n \"enumDescriptions\": + [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n + \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"rcnofRating\": {\n \"description\": \"The video's rating + from the Hungarian Nemzeti Filmiroda, the Rating Committee of the National + Office of Film.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n + \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n + \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n + \ ]\n },\n \"bmukkRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"Unrestricted\",\n \"6+\",\n + \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n + \ \"16+\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from the Austrian + Board of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst + und Kultur).\",\n \"enum\": [\n \"bmukkUnspecified\",\n + \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n + \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n + \ \"bmukk16\",\n \"bmukkUnrated\"\n ]\n },\n + \ \"nbcRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"nbcUnspecified\",\n \"nbcG\",\n \"nbcPg\",\n + \ \"nbc12plus\",\n \"nbc15plus\",\n \"nbc18plus\",\n + \ \"nbc18plusr\",\n \"nbcPu\",\n \"nbcUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Maldives + National Bureau of Classification.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"G\",\n \"PG\",\n \"12+\",\n + \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n + \ \"\"\n ]\n },\n \"rtcRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n + \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n + \ \"rtcD\",\n \"rtcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n + \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n + \ ],\n \"description\": \"The video's General Directorate + of Radio, Television and Cinematography (Mexico) rating.\"\n },\n \"menaMpaaRating\": + {\n \"enum\": [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n + \ \"menaMpaaPg\",\n \"menaMpaaPg13\",\n \"menaMpaaR\",\n + \ \"menaMpaaUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To + keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n + \ \"description\": \"The rating system for MENA countries, a clone + of MPAA. It is needed to prevent titles go live w/o additional QC check, since + some of them can be inappropriate for the countries at all. See b/33408548 + for more details.\"\n },\n \"fskRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n + \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n + \ \"fskUnrated\"\n ],\n \"description\": \"The + video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"FSK 0\",\n + \ \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n + \ \"FSK 18\",\n \"\"\n ]\n },\n \"eefilmRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Pere\",\n \"L\",\n \"MS-6\",\n \"K-6\",\n + \ \"MS-12\",\n \"K-12\",\n \"K-14\",\n \"K-16\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + in Estonia.\",\n \"enum\": [\n \"eefilmUnspecified\",\n + \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n + \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n + \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n + \ ]\n },\n \"cscfRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n + \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n + \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n + \ ],\n \"description\": \"The video's rating from Luxembourg's + Commission de surveillance de la classification des films (CSCF).\",\n \"enumDescriptions\": + [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n + \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ]\n },\n \"cccRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's Consejo de Calificaci\xF3n + Cinematogr\xE1fica (Chile) rating.\",\n \"enum\": [\n \"cccUnspecified\",\n + \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n + \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"Todo + espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n + \ \"14+\",\n \"18+\",\n \"18+ - contenido + excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n + \ \"\"\n ]\n },\n \"kmrbRating\": {\n \"description\": + \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) + rating. The KMRB rates videos in South Korea.\",\n \"enum\": [\n + \ \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n + \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n + \ \"kmrbUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n + \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 + \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 + \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ]\n },\n \"skfilmRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n + \ ],\n \"description\": \"The video's rating in Slovakia.\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"skfilmUnspecified\",\n + \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n + \ \"skfilmP8\",\n \"skfilmUnrated\"\n ]\n },\n + \ \"fcbmRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"U\",\n \"PG13\",\n \"P13\",\n \"18\",\n + \ \"18SX\",\n \"18PA\",\n \"18SG\",\n \"18PL\",\n + \ \"\"\n ],\n \"enum\": [\n \"fcbmUnspecified\",\n + \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n + \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n + \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n + \ ],\n \"description\": \"The video's rating from Malaysia's + Film Censorship Board.\",\n \"type\": \"string\"\n },\n \"mekuRating\": + {\n \"description\": \"The video's rating from Finland's Kansallinen + Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n \"type\": + \"string\",\n \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n + \ \"meku7\",\n \"meku12\",\n \"meku16\",\n + \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\"\n ]\n + \ },\n \"cceRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"4\",\n \"6\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\",\n \"14\"\n + \ ],\n \"description\": \"The video's rating from Portugal's + Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enum\": + [\n \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n + \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n + \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"type\": + \"string\"\n },\n \"mtrcbRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n + \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n + \ ],\n \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n + \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n + \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Movie and Television Review and Classification + Board (Philippines).\"\n },\n \"catvfrRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n + \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"catvfrUnspecified\",\n + \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n + \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n + \ \"catvfrE\"\n ],\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"fpbRatingReasons\": + {\n \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": + [\n \"\",\n \"South Africa rating content descriptors.\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": + [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n + \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n + \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n + \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n + \ \"fpbImitativeActsTechniques\"\n ],\n \"type\": + \"string\"\n },\n \"description\": \"Reasons that explain + why the video received its FPB (South Africa) rating.\"\n },\n \"russiaRating\": + {\n \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n + \ \"russia6\",\n \"russia12\",\n \"russia16\",\n + \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n + \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n + \ \"\"\n ],\n \"description\": \"The video's National + Film Registry of the Russian Federation (MKRF - Russia) rating.\"\n },\n + \ \"moctwRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n + \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n + \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n + \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n + \ \"R-12\",\n \"R-15\"\n ]\n },\n \"mocRating\": + {\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n + \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n + \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n + \ \"mocUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n + \ \"Banned\",\n \"\"\n ],\n \"description\": + \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"type\": + \"string\"\n },\n \"pefilmRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n + \ \"18\",\n \"\"\n ],\n \"description\": + \"The video's rating in Peru.\",\n \"type\": \"string\",\n \"enum\": + [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n + \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n + \ ]\n },\n \"mccaaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n + \ \"12\",\n \"14 - this rating was removed from the new + classification structure introduced in 2013.\",\n \"15\",\n \"16 + - this rating was removed from the new classification structure introduced + in 2013.\",\n \"18\",\n \"\"\n ],\n \"description\": + \"The video's rating from Malta's Film Age-Classification Board.\",\n \"type\": + \"string\",\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n + \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n + \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n + \ \"mccaa18\",\n \"mccaaUnrated\"\n ]\n },\n + \ \"anatelRating\": {\n \"enum\": [\n \"anatelUnspecified\",\n + \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n + \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n + \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n + \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n + \ \"\"\n ],\n \"description\": \"The video's Anatel + (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\",\n + \ \"type\": \"string\"\n },\n \"egfilmRating\": {\n + \ \"type\": \"string\",\n \"description\": \"The video's + rating in Egypt.\",\n \"enum\": [\n \"egfilmUnspecified\",\n + \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n + \ \"egfilmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n + \ \"\"\n ]\n },\n \"kijkwijzerRating\": {\n + \ \"description\": \"The video's NICAM/Kijkwijzer rating from the + Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\",\n + \ \"type\": \"string\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n + \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n + \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n + \ \"kijkwijzerUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n + \ \"12\",\n \"16\",\n \"\",\n \"\"\n + \ ]\n },\n \"djctqRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n + \ \"14\",\n \"16\",\n \"18\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o + e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enum\": [\n \"djctqUnspecified\",\n + \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n + \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n + \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n + \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n + \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n + \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n + \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n + \ \"djctq1618\",\n \"djctqUnrated\"\n ]\n },\n + \ \"cicfRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"cicfUnspecified\",\n + \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n + \ \"cicfUnrated\"\n ],\n \"description\": \"The + video's rating from the Commission de Contr\xF4le des Films (Belgium).\"\n + \ },\n \"bfvcRating\": {\n \"description\": \"The video's + rating from Thailand's Board of Film and Video Censors.\",\n \"type\": + \"string\",\n \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n + \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n + \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n + \ \"bfvcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n + \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n + \ \"\"\n ]\n },\n \"kfcbRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's rating from the Kenya + Film Classification Board.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"GE\",\n \"PG\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"enum\": [\n \"kfcbUnspecified\",\n + \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n + \ \"kfcbR\",\n \"kfcbUnrated\"\n ]\n },\n + \ \"mcstRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating system for Vietnam - MCST\",\n \"enum\": [\n + \ \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n + \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n + \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"P\",\n + \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n + \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ]\n + \ },\n \"djctqRatingReasons\": {\n \"items\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Brazil + rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia + (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n + \ \"Conte\xFAdo sexual (Sexual content)\",\n \"Nudez + (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo Expl\xEDcito + (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas + L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n + \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos + Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting + content)\"\n ],\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n + \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n + \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n + \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n + \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n + \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n + \ ]\n },\n \"type\": \"array\",\n \"description\": + \"Reasons that explain why the video received its DJCQT (Brazil) rating.\"\n + \ },\n \"cnaRating\": {\n \"enum\": [\n \"cnaUnspecified\",\n + \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n + \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AP\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\"\n },\n + \ \"icaaRating\": {\n \"enum\": [\n \"icaaUnspecified\",\n + \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n + \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n + \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"description\": + \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales + (ICAA - Spain) rating.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"APTA\",\n \"7\",\n \"12\",\n \"13\",\n + \ \"16\",\n \"18\",\n \"X\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"grfilmRating\": + {\n \"description\": \"The video's rating in Greece.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"K\",\n + \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n + \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n + \ \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n + \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n + \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n + \ \"grfilmUnrated\"\n ]\n },\n \"incaaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"ATP + (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 + a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n + \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X + (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n + \ \"\"\n ],\n \"description\": \"The video's INCAA + (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.\",\n + \ \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n + \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n + \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"agcomRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n + \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n + \ \"description\": \"The video's rating from Italy's Autorit\xE0 per + le Garanzie nelle Comunicazioni (AGCOM).\"\n },\n \"ytRating\": + {\n \"description\": \"A rating that YouTube uses to identify age-restricted + content.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ]\n + \ },\n \"chvrsRating\": {\n \"enum\": [\n \"chvrsUnspecified\",\n + \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n + \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n + \ \"chvrsUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n + \ \"E\",\n \"\"\n ],\n \"description\": + \"The video's Canadian Home Video Rating System (CHVRS) rating.\"\n },\n + \ \"mpaatRating\": {\n \"enum\": [\n \"mpaatUnspecified\",\n + \ \"mpaatGb\",\n \"mpaatRb\"\n ],\n \"description\": + \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n + \ \"RB\"\n ],\n \"type\": \"string\"\n },\n + \ \"resorteviolenciaRating\": {\n \"description\": \"The video's + rating in Venezuela.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A\",\n \"B\",\n \"C\",\n \"D\",\n + \ \"E\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n + \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n + \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n + \ ]\n },\n \"fcoRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n + \ \"II\",\n \"III\",\n \"\"\n ],\n + \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n + \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n + \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from Hong Kong's + Office for Film, Newspaper and Article Administration.\"\n },\n \"ecbmctRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n + \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n + \ ],\n \"description\": \"Rating system in Turkey - Evaluation + and Classification Board of the Ministry of Culture and Tourism\",\n \"type\": + \"string\",\n \"enum\": [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n + \ \"ecbmct7a\",\n \"ecbmct7plus\",\n \"ecbmct13a\",\n + \ \"ecbmct13plus\",\n \"ecbmct15a\",\n \"ecbmct15plus\",\n + \ \"ecbmct18plus\",\n \"ecbmctUnrated\"\n ]\n + \ },\n \"lsfRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n + \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n + \ \"21\",\n \"\"\n ],\n \"enum\": [\n + \ \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n + \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n + \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n + \ ],\n \"description\": \"The video's rating from Indonesia's + Lembaga Sensor Film.\"\n },\n \"smsaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from Statens medier\xE5d (Sweden's + National Media Council).\",\n \"enum\": [\n \"smsaUnspecified\",\n + \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n + \ \"smsa15\",\n \"smsaUnrated\"\n ]\n },\n + \ \"rteRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n + \ \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n + \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"GA\",\n + \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n + \ ]\n },\n \"ifcoRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n + \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"description\": + \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See + the IFCO website for more information.\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n + \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n + \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n + \ \"ifco18\",\n \"ifcoUnrated\"\n ]\n }\n + \ },\n \"description\": \"Ratings schemes. The country-specific ratings + are mostly for movies and shows. LINT.IfChange\"\n },\n \"MembershipsDetails\": + {\n \"type\": \"object\",\n \"id\": \"MembershipsDetails\",\n \"properties\": + {\n \"highestAccessibleLevelDisplayName\": {\n \"description\": + \"Display name for the highest level that the user has access to at the moment.\",\n + \ \"type\": \"string\"\n },\n \"membershipsDurationAtLevels\": + {\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n + \ },\n \"description\": \"Data about memberships duration + on particular pricing levels.\",\n \"type\": \"array\"\n },\n + \ \"highestAccessibleLevel\": {\n \"description\": \"Id of + the highest level that the user has access to at the moment.\",\n \"type\": + \"string\"\n },\n \"membershipsDuration\": {\n \"$ref\": + \"MembershipsDuration\",\n \"description\": \"Data about memberships + duration without taking into consideration pricing levels.\"\n },\n + \ \"accessibleLevels\": {\n \"type\": \"array\",\n \"description\": + \"Ids of all levels that the user has access to. This includes the currently + active level and all other levels that are included because of a higher purchase.\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n }\n + \ }\n },\n \"CommentSnippetAuthorChannelId\": {\n \"description\": + \"The id of the author's YouTube channel, if any.\",\n \"type\": \"object\",\n + \ \"id\": \"CommentSnippetAuthorChannelId\",\n \"properties\": {\n + \ \"value\": {\n \"type\": \"string\"\n }\n }\n + \ },\n \"MonitorStreamInfo\": {\n \"properties\": {\n \"embedHtml\": + {\n \"type\": \"string\",\n \"description\": \"HTML code + that embeds a player that plays the monitor stream.\"\n },\n \"broadcastStreamDelayMs\": + {\n \"format\": \"uint32\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"type\": \"integer\",\n \"description\": \"If you have + set the enableMonitorStream property to true, then this property determines + the length of the live broadcast delay.\"\n },\n \"enableMonitorStream\": + {\n \"type\": \"boolean\",\n \"description\": \"This value + determines whether the monitor stream is enabled for the broadcast. If the + monitor stream is enabled, then YouTube will broadcast the event content on + a special stream intended only for the broadcaster's consumption. The broadcaster + can use the stream to review the event content and also to identify the optimal + times to insert cuepoints. You need to set this value to true if you intend + to have a broadcast delay for your event. *Note:* This property cannot be + updated once the broadcast is in the testing or live state.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n }\n }\n },\n \"description\": \"Settings + and Info of the monitor stream\",\n \"type\": \"object\",\n \"id\": + \"MonitorStreamInfo\"\n },\n \"VideoAbuseReportSecondaryReason\": {\n + \ \"properties\": {\n \"label\": {\n \"type\": \"string\",\n + \ \"description\": \"The localized label for this abuse report secondary + reason.\"\n },\n \"id\": {\n \"description\": \"The + ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\"\n + \ },\n \"LiveBroadcastStatus\": {\n \"properties\": {\n \"liveBroadcastPriority\": + {\n \"type\": \"string\",\n \"description\": \"Priority + of the live broadcast event (internal state).\",\n \"enum\": [\n + \ \"liveBroadcastPriorityUnspecified\",\n \"low\",\n + \ \"normal\",\n \"high\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Low priority broadcast: for low view count + HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: + for regular HoAs and broadcasts.\",\n \"High priority broadcast: + for high profile HoAs, like PixelCorp ones.\"\n ]\n },\n \"madeForKids\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the broadcast is made for kids or not, decided by YouTube instead of the creator. + This field is read only.\"\n },\n \"lifeCycleStatus\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"No value or + the value is unknown.\",\n \"Incomplete settings, but otherwise + valid\",\n \"Complete settings\",\n \"Visible only to + partner, may need special UI treatment\",\n \"Viper is recording; + this means the \\\"clock\\\" is running\",\n \"The broadcast is + finished.\",\n \"This broadcast was removed by admin action\",\n + \ \"Transition into TESTING has been requested\",\n \"Transition + into LIVE has been requested\"\n ],\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n + \ \"created\",\n \"ready\",\n \"testing\",\n + \ \"live\",\n \"complete\",\n \"revoked\",\n + \ \"testStarting\",\n \"liveStarting\"\n ],\n + \ \"description\": \"The broadcast's status. The status can be updated + using the API's liveBroadcasts.transition method.\"\n },\n \"recordingStatus\": + {\n \"enumDescriptions\": [\n \"No value or the value + is unknown.\",\n \"The recording has not yet been started.\",\n + \ \"The recording is currently on.\",\n \"The recording + is completed, and cannot be started again.\"\n ],\n \"enum\": + [\n \"liveBroadcastRecordingStatusUnspecified\",\n \"notRecording\",\n + \ \"recording\",\n \"recorded\"\n ],\n \"type\": + \"string\",\n \"description\": \"The broadcast's recording status.\"\n + \ },\n \"privacyStatus\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"description\": + \"The broadcast's privacy status. Note that the broadcast represents exactly + one YouTube video, so the privacy settings are identical to those supported + for videos. In addition, you can set this field by modifying the broadcast + resource or by setting the privacyStatus field of the corresponding video + resource.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This field will be set to True if the creator + declares the broadcast to be kids only: go/live-cw-work.\"\n }\n },\n + \ \"id\": \"LiveBroadcastStatus\",\n \"type\": \"object\",\n \"description\": + \"Live broadcast state.\"\n },\n \"SearchResultSnippet\": {\n \"description\": + \"Basic details about a search result, including title, description and thumbnails + of the item referenced by the search result.\",\n \"properties\": {\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The value that YouTube uses to uniquely identify the channel that published + the resource that the search result identifies.\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"description\": \"The + creation date and time of the resource that the search result identifies.\",\n + \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": + \"The title of the search result.\",\n \"type\": \"string\"\n },\n + \ \"liveBroadcastContent\": {\n \"type\": \"string\",\n \"enum\": + [\n \"none\",\n \"upcoming\",\n \"live\",\n + \ \"completed\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been completed.\"\n + \ ],\n \"description\": \"It indicates if the resource (video + or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" + if there is not any upcoming/active live broadcasts.\"\n },\n \"channelTitle\": + {\n \"description\": \"The title of the channel that published the + resource that the search result identifies.\",\n \"type\": \"string\"\n + \ },\n \"thumbnails\": {\n \"description\": \"A map + of thumbnail images associated with the search result. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"A description of the search result.\"\n + \ }\n },\n \"id\": \"SearchResultSnippet\",\n \"type\": + \"object\"\n },\n \"PlaylistStatus\": {\n \"type\": \"object\",\n + \ \"id\": \"PlaylistStatus\",\n \"properties\": {\n \"privacyStatus\": + {\n \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"description\": \"The playlist's + privacy status.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n + \ }\n }\n },\n \"SearchResult\": {\n \"id\": \"SearchResult\",\n + \ \"properties\": {\n \"id\": {\n \"description\": \"The + id object contains information that can be used to uniquely identify the resource + that matches the search request.\",\n \"$ref\": \"ResourceId\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#searchResult\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"$ref\": \"SearchResultSnippet\",\n \"description\": + \"The snippet object contains basic details about a search result, such as + its title or description. For example, if the search result is a video, then + the title will be the video's title and the description will be the video's + description.\"\n }\n },\n \"type\": \"object\",\n \"description\": + \"A search result contains information about a YouTube video, channel, or + playlist that matches the search parameters specified in an API request. While + a search result points to a uniquely identifiable resource, like a video, + it does not have its own persistent data.\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"memberLevelName\": + {\n \"description\": \"The name of the Level at which the viewer + is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` + of the associated membership gifting message. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\",\n \"type\": \"string\"\n },\n \"associatedMembershipGiftingMessageId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the membership gifting message that is related to this gift membership. This + ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n + \ },\n \"gifterChannelId\": {\n \"description\": \"The + ID of the user that made the membership gifting purchase. This matches the + `snippet.authorChannelId` of the associated membership gifting message.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n + \ },\n \"ActivityContentDetailsPromotedItem\": {\n \"description\": + \"Details about a resource which is being promoted.\",\n \"properties\": + {\n \"creativeViewUrl\": {\n \"description\": \"The URL the + client should ping to indicate that the user was shown this promoted item.\",\n + \ \"type\": \"string\"\n },\n \"customCtaButtonText\": + {\n \"description\": \"The custom call-to-action button text. If + specified, it will override the default button text for the cta_type.\",\n + \ \"type\": \"string\"\n },\n \"destinationUrl\": {\n + \ \"description\": \"The URL the client should direct the user to, + if the user chooses to visit the advertiser's website.\",\n \"type\": + \"string\"\n },\n \"adTag\": {\n \"type\": \"string\",\n + \ \"description\": \"The URL the client should fetch to request a + promoted item.\"\n },\n \"descriptionText\": {\n \"description\": + \"The text description to accompany the promoted item.\",\n \"type\": + \"string\"\n },\n \"ctaType\": {\n \"enum\": [\n \"ctaTypeUnspecified\",\n + \ \"visitAdvertiserSite\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The type of call-to-action, a message to the + user indicating action that can be taken.\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ]\n },\n \"impressionUrl\": + {\n \"type\": \"array\",\n \"description\": \"The list of + impression URLs. The client should ping all of these URLs to indicate that + the user was shown this promoted item.\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"forecastingUrl\": {\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"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.\"\n },\n \"clickTrackingUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL the + client should ping to indicate that the user clicked through on this promoted + item.\"\n },\n \"videoId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the promoted video.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ActivityContentDetailsPromotedItem\"\n },\n \"AbuseReport\": + {\n \"properties\": {\n \"abuseTypes\": {\n \"items\": + {\n \"$ref\": \"AbuseType\"\n },\n \"type\": + \"array\"\n },\n \"relatedEntities\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n + \ }\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n + \ },\n \"description\": {\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"AbuseReport\"\n },\n + \ \"TestItemTestItemSnippet\": {\n \"properties\": {},\n \"id\": + \"TestItemTestItemSnippet\",\n \"type\": \"object\"\n },\n \"LiveStreamContentDetails\": + {\n \"id\": \"LiveStreamContentDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"isReusable\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Indicates whether the stream is reusable, which + means that it can be bound to multiple broadcasts. It is common for broadcasters + to reuse the same stream for many different broadcasts if those broadcasts + occur at different times. If you set this value to false, then the stream + will not be reusable, which means that it can only be bound to one broadcast. + Non-reusable streams differ from reusable streams in the following ways: - + A non-reusable stream can only be bound to one broadcast. - A non-reusable + stream might be deleted by an automated process after the broadcast ends. + - The liveStreams.list method does not list non-reusable streams if you call + the method and set the mine parameter to true. The only way to use that method + to retrieve the resource for a non-reusable stream is to use the id parameter + to identify the stream. \"\n },\n \"closedCaptionsIngestionUrl\": + {\n \"type\": \"string\",\n \"description\": \"The ingestion + URL where the closed captions of this stream are sent.\"\n }\n },\n + \ \"description\": \"Detailed settings of a stream.\"\n },\n \"VideoPlayer\": + {\n \"type\": \"object\",\n \"description\": \"Player to be used + for a video playback.\",\n \"id\": \"VideoPlayer\",\n \"properties\": + {\n \"embedWidth\": {\n \"format\": \"int64\",\n \"type\": + \"string\",\n \"description\": \"The embed width\"\n },\n + \ \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e + tag that embeds a player that will play the video.\",\n \"type\": + \"string\"\n },\n \"embedHeight\": {\n \"type\": \"string\",\n + \ \"format\": \"int64\"\n }\n }\n },\n \"VideoListResponse\": + {\n \"id\": \"VideoListResponse\",\n \"type\": \"object\",\n \"properties\": + {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"Video\"\n },\n \"type\": \"array\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#videoListResponse\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n + \ }\n }\n },\n \"LocalizedString\": {\n \"properties\": + {\n \"language\": {\n \"type\": \"string\"\n },\n \"value\": + {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"LocalizedString\"\n },\n \"VideoCategorySnippet\": {\n + \ \"type\": \"object\",\n \"description\": \"Basic details about + a video category, such as its localized title.\",\n \"id\": \"VideoCategorySnippet\",\n + \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n + \ \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"description\": + \"The YouTube channel that created the video category.\"\n },\n \"assignable\": + {\n \"type\": \"boolean\"\n },\n \"title\": {\n \"description\": + \"The video category's title.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"LiveChatMessage\": {\n \"description\": \"A *liveChatMessage* + resource represents a chat message in a YouTube Live Chat.\",\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube assigns to uniquely identify the message.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the message.\"\n },\n \"authorDetails\": {\n \"description\": + \"The authorDetails object contains basic details about the user that posted + this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#liveChatMessage\"\n + \ }\n },\n \"id\": \"LiveChatMessage\",\n \"type\": \"object\"\n + \ },\n \"ChannelStatistics\": {\n \"type\": \"object\",\n \"description\": + \"Statistics about a channel: number of subscribers, number of videos in the + channel, etc.\",\n \"properties\": {\n \"hiddenSubscriberCount\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the number of subscribers is shown for this user.\"\n },\n \"commentCount\": + {\n \"format\": \"uint64\",\n \"description\": \"The number + of comments for the channel.\",\n \"type\": \"string\"\n },\n + \ \"viewCount\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"The number of times the channel + has been viewed.\"\n },\n \"videoCount\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of videos uploaded to the channel.\"\n },\n \"subscriberCount\": + {\n \"description\": \"The number of subscribers that the channel + has.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"ChannelStatistics\"\n },\n \"I18nLanguageSnippet\": + {\n \"id\": \"I18nLanguageSnippet\",\n \"description\": \"Basic + details about an i18n language, such as language code and human-readable name.\",\n + \ \"properties\": {\n \"hl\": {\n \"type\": \"string\",\n + \ \"description\": \"A short BCP-47 code that uniquely identifies + a language.\"\n },\n \"name\": {\n \"description\": + \"The human-readable name of the language in the language itself.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"SubscriptionSnippet\": + {\n \"type\": \"object\",\n \"description\": \"Basic details about + a subscription, including title, description and thumbnails of the subscribed + item.\",\n \"properties\": {\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time that the subscription + was created.\",\n \"type\": \"string\"\n },\n \"thumbnails\": + {\n \"description\": \"A map of thumbnail images associated with + the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel that the subscription belongs to.\"\n },\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the subscriber's channel.\",\n \"type\": \"string\"\n },\n + \ \"description\": {\n \"type\": \"string\",\n \"description\": + \"The subscription's details.\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"The subscription's title.\"\n },\n + \ \"resourceId\": {\n \"description\": \"The id object contains + information about the channel that the user subscribed to.\",\n \"$ref\": + \"ResourceId\",\n \"annotations\": {\n \"required\": [\n + \ \"youtube.subscriptions.insert\"\n ]\n }\n + \ }\n },\n \"id\": \"SubscriptionSnippet\"\n },\n \"LiveChatSuperChatDetails\": + {\n \"id\": \"LiveChatSuperChatDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"tier\": {\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"description\": \"The tier in + which the amount belongs. Lower amounts belong to lower tiers. The lowest + tier is 1.\"\n },\n \"userComment\": {\n \"type\": + \"string\",\n \"description\": \"The comment added by the user to + this Super Chat event.\"\n },\n \"amountMicros\": {\n \"description\": + \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n + \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n + \ \"amountDisplayString\": {\n \"type\": \"string\",\n \"description\": + \"A rendered string that displays the fund amount and currency to the user.\"\n + \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the purchase was made.\"\n }\n }\n },\n + \ \"MembershipsLevelListResponse\": {\n \"id\": \"MembershipsLevelListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"MembershipsLevel\"\n },\n \"description\": \"A list of + pricing levels offered by a creator to the fans.\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"default\": \"youtube#membershipsLevelListResponse\",\n \"type\": + \"string\"\n }\n }\n },\n \"SubscriptionListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n + \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n + \ \"default\": \"youtube#subscriptionListResponse\",\n \"type\": + \"string\"\n },\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"Subscription\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of subscriptions that match the request criteria.\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"SubscriptionListResponse\"\n },\n \"IngestionInfo\": {\n \"properties\": + {\n \"ingestionAddress\": {\n \"type\": \"string\",\n \"description\": + \"The primary ingestion URL that you should use to stream video to YouTube. + You must stream video to this URL. Depending on which application or tool + you use to encode your video stream, you may need to enter the stream URL + and stream name separately or you may need to concatenate them in the following + format: *STREAM_URL/STREAM_NAME* \"\n },\n \"backupIngestionAddress\": + {\n \"description\": \"The backup ingestion URL that you should use + to stream video to YouTube. You have the option of simultaneously streaming + the content that you are sending to the ingestionAddress to this URL.\",\n + \ \"type\": \"string\"\n },\n \"rtmpsIngestionAddress\": + {\n \"type\": \"string\",\n \"description\": \"This ingestion + url may be used instead of ingestionAddress in order to stream via RTMPS. + Not applicable to non-RTMP streams.\"\n },\n \"streamName\": + {\n \"type\": \"string\",\n \"description\": \"The stream + name that YouTube assigns to the video stream.\"\n },\n \"rtmpsBackupIngestionAddress\": + {\n \"type\": \"string\",\n \"description\": \"This ingestion + url may be used instead of backupIngestionAddress in order to stream via RTMPS. + Not applicable to non-RTMP streams.\"\n }\n },\n \"id\": + \"IngestionInfo\",\n \"description\": \"Describes information necessary + for ingesting an RTMP, HTTP, or SRT stream.\",\n \"type\": \"object\"\n + \ }\n },\n \"id\": \"youtube:v3\",\n \"description\": \"The YouTube Data + API v3 is an API that provides access to YouTube data, such as videos, playlists, + and channels.\",\n \"resources\": {\n \"videoAbuseReportReasons\": {\n + \ \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": - \"en-US\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the videoCategory resource parts that the API response will include. Supported - values are id and snippet.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true\n }\n },\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"VideoAbuseReportReasonListResponse\"\n }\n }\n }\n - \ },\n \"channels\": {\n \"methods\": {\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ChannelListResponse\"\n },\n \"id\": \"youtube.channels.list\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n \ ],\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"managedByMe\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the channels managed by the authenticated user.\"\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"type\": \"integer\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"description\": \"Return the channels with the specified IDs.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"forUsername\": {\n \"description\": - \"Return the channel associated with a YouTube username.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"mySubscribers\": {\n \"description\": - \"Return the channels subscribed to the authenticated user\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channels within the specified - guide category ID.\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the ids of channels owned by the authenticated user.\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/channels\",\n \"path\": - \"youtube/v3/channels\"\n },\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Updates - an existing resource.\",\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"Channel\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/channels\",\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"id\": \"youtube.channels.update\",\n - \ \"request\": {\n \"$ref\": \"Channel\"\n }\n - \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [],\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"description\": \"Updates - an existing resource.\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"id\": - \"youtube.youtube.v3.updateCommentThreads\"\n }\n }\n - \ }\n }\n },\n \"playlists\": {\n \"methods\": {\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + \"The *part* parameter specifies the videoCategory resource parts that the + API response will include. Supported values are id and snippet.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"required\": true\n },\n \"hl\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"default\": \"en-US\"\n }\n },\n \"id\": + \"youtube.videoAbuseReportReasons.list\",\n \"httpMethod\": \"GET\",\n + \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"path\": + \"youtube/v3/videoAbuseReportReasons\",\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"response\": {\n \"$ref\": + \"VideoAbuseReportReasonListResponse\"\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\"\n }\n }\n + \ },\n \"channelBanners\": {\n \"methods\": {\n \"insert\": + {\n \"mediaUpload\": {\n \"maxSize\": \"6291456\",\n \"protocols\": + {\n \"resumable\": {\n \"multipart\": true,\n + \ \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n + \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n + \ \"multipart\": true\n }\n },\n \"accept\": + [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n + \ ]\n },\n \"response\": {\n \"$ref\": + \"ChannelBannerResource\"\n },\n \"request\": {\n \"$ref\": + \"ChannelBannerResource\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n + \ ],\n \"description\": \"Inserts a new resource into this + collection.\",\n \"path\": \"youtube/v3/channelBanners/insert\",\n + \ \"parameters\": {\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"Unused, channel_id is currently + derived from the security context of the requestor.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -10940,15 +10052,72 @@ interactions: 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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"id\": \"youtube.channelBanners.insert\",\n \"httpMethod\": + \"POST\",\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n + \ \"parameterOrder\": [],\n \"supportsMediaUpload\": true\n + \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": + {\n \"list\": {\n \"id\": \"youtube.membershipsLevels.list\",\n + \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the membershipsLevel resource parts that + the API response will include. Supported values are id and snippet.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Retrieves + a list of all pricing levels offered by a creator to the fans.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"MembershipsLevelListResponse\"\n },\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"path\": \"youtube/v3/membershipsLevels\",\n \"httpMethod\": + \"GET\"\n }\n }\n },\n \"superChatEvents\": {\n \"methods\": + {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/superChatEvents\",\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"The *part* parameter specifies the superChatEvent + resource parts that the API response will include. This parameter is currently + not supported.\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"hl\": + {\n \"location\": \"query\",\n \"description\": + \"Return rendered funding amounts in specified language.\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"location\": + \"query\",\n \"default\": \"5\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"minimum\": \"1\",\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"maximum\": + \"50\"\n }\n },\n \"path\": \"youtube/v3/superChatEvents\",\n + \ \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"id\": \"youtube.superChatEvents.list\"\n + \ }\n }\n },\n \"playlists\": {\n \"methods\": {\n \"list\": + {\n \"flatPath\": \"youtube/v3/playlists\",\n \"httpMethod\": + \"GET\",\n \"description\": \"Retrieves a list of resources, possibly + filtered.\",\n \"path\": \"youtube/v3/playlists\",\n \"id\": + \"youtube.playlists.list\",\n \"response\": {\n \"$ref\": + \"PlaylistListResponse\"\n },\n \"parameters\": {\n \"mine\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Return the playlists owned by the authenticated + user.\"\n },\n \"pageToken\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n + \ \"maxResults\": {\n \"maximum\": \"50\",\n \"default\": + \"5\",\n \"type\": \"integer\",\n \"minimum\": \"0\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"location\": + \"query\",\n \"format\": \"uint32\"\n },\n \"hl\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Return content in specified language\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -10962,47 +10131,17 @@ interactions: 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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"path\": \"youtube/v3/playlists\",\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"id\": \"youtube.playlists.insert\"\n - \ },\n \"delete\": {\n \"id\": \"youtube.playlists.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlists\",\n \"path\": - \"youtube/v3/playlists\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"description\": \"Deletes a resource.\"\n },\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"id\": \"youtube.playlists.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"description\": \"Return - content in specified language\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n + for each separate channel.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"required\": + true,\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n \ \"description\": \"*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 @@ -11012,8 +10151,32 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"description\": \"This parameter can only be used in a properly + owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"description\": + \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"location\": + \"query\"\n },\n \"channelId\": {\n \"description\": + \"Return the playlists owned by the specified channel ID.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ]\n },\n + \ \"insert\": {\n \"response\": {\n \"$ref\": \"Playlist\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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 @@ -11028,105 +10191,254 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"default\": \"5\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\",\n \"maximum\": \"50\"\n },\n \"mine\": - {\n \"description\": \"Return the playlists owned by the authenticated - user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlists owned by the specified channel ID.\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n }\n },\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"path\": \"youtube/v3/playlists\"\n },\n \"update\": - {\n \"id\": \"youtube.playlists.update\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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 + \"string\"\n },\n \"part\": {\n \"description\": + \"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.\",\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n }\n },\n \"flatPath\": + \"youtube/v3/playlists\",\n \"request\": {\n \"$ref\": + \"Playlist\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.playlists.insert\",\n \"httpMethod\": + \"POST\",\n \"path\": \"youtube/v3/playlists\"\n },\n \"update\": + {\n \"request\": {\n \"$ref\": \"Playlist\"\n },\n + \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n + \ \"description\": \"Updates an existing resource.\",\n \"id\": + \"youtube.playlists.update\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"description\": - \"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.\"\n }\n },\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"abuseReports\": {\n \"methods\": {\n \"insert\": - {\n \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": + owner.\"\n },\n \"part\": {\n \"required\": + true,\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n + \ }\n },\n \"path\": \"youtube/v3/playlists\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/playlists\",\n \"httpMethod\": \"PUT\"\n },\n + \ \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"path\": + \"youtube/v3/playlists\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"id\": \"youtube.playlists.delete\",\n \"flatPath\": + \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Deletes a resource.\"\n }\n + \ }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": + {\n \"parameters\": {\n \"externalChannelId\": {\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true,\n \"repeated\": true\n }\n + \ },\n \"path\": \"youtube/v3/tests\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n + \ \"flatPath\": \"youtube/v3/tests\",\n \"request\": {\n + \ \"$ref\": \"TestItem\"\n },\n \"response\": + {\n \"$ref\": \"TestItem\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"id\": \"youtube.tests.insert\",\n \"description\": \"POST + method.\"\n }\n }\n },\n \"i18nLanguages\": {\n \"methods\": + {\n \"list\": {\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.i18nLanguages.list\",\n + \ \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"path\": + \"youtube/v3/i18nLanguages\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"hl\": {\n \"default\": + \"en_US\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"repeated\": true,\n \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + *part* parameter specifies the i18nLanguage resource properties that the API + response will include. Set the parameter value to snippet.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n + \ }\n }\n }\n },\n \"thumbnails\": {\n \"methods\": + {\n \"set\": {\n \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n + \ },\n \"httpMethod\": \"POST\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"mediaUpload\": {\n \"protocols\": {\n + \ \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n + \ \"multipart\": true\n },\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n + \ \"multipart\": true\n }\n },\n \"maxSize\": + \"2097152\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ]\n },\n + \ \"supportsMediaUpload\": true,\n \"path\": \"youtube/v3/thumbnails/set\",\n + \ \"parameters\": {\n \"videoId\": {\n \"required\": + true,\n \"description\": \"Returns the Thumbnail with the given + video IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"As this + is not an insert in a strict sense (it supports uploading/setting of a thumbnail + for multiple videos, which doesn't result in creation of a single resource), + I use a custom verb here.\",\n \"parameterOrder\": [\n \"videoId\"\n + \ ],\n \"id\": \"youtube.thumbnails.set\",\n \"flatPath\": + \"youtube/v3/thumbnails/set\"\n }\n }\n },\n \"comments\": + {\n \"methods\": {\n \"insert\": {\n \"id\": \"youtube.comments.insert\",\n + \ \"path\": \"youtube/v3/comments\",\n \"httpMethod\": \"POST\",\n + \ \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true,\n \"description\": \"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.\",\n \"repeated\": + true\n }\n },\n \"request\": {\n \"$ref\": + \"Comment\"\n },\n \"description\": \"Inserts a new resource + into this collection.\",\n \"response\": {\n \"$ref\": + \"Comment\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"flatPath\": \"youtube/v3/comments\"\n },\n \"update\": + {\n \"path\": \"youtube/v3/comments\",\n \"scopes\": [\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"path\": \"youtube/v3/abuseReports\"\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return rendered funding amounts in specified language.\"\n },\n - \ \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the superChatEvent resource parts that the API response will include. This - parameter is currently not supported.\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"maximum\": \"50\",\n - \ \"minimum\": \"1\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"default\": \"5\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.superChatEvents.list\",\n \"flatPath\": - \"youtube/v3/superChatEvents\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/superChatEvents\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n }\n }\n },\n \"channelSections\": - {\n \"methods\": {\n \"delete\": {\n \"id\": \"youtube.channelSections.delete\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"description\": - \"Deletes a resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* + \ \"description\": \"Updates an existing resource.\",\n \"request\": + {\n \"$ref\": \"Comment\"\n },\n \"httpMethod\": + \"PUT\",\n \"id\": \"youtube.comments.update\",\n \"flatPath\": + \"youtube/v3/comments\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"description\": \"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.\",\n \"required\": true\n }\n + \ }\n },\n \"setModerationStatus\": {\n \"parameters\": + {\n \"moderationStatus\": {\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ],\n \"required\": true,\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"The comment + is available for public display.\",\n \"The comment is awaiting + review by a moderator.\",\n \"\",\n \"The comment + is unfit for display.\"\n ],\n \"description\": + \"Specifies the requested moderation status. Note, comments can be in statuses, + which are not available through this call. For example, this call does not + allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, + MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true,\n \"description\": \"Modifies the moderation status of + the comments with the given IDs\",\n \"location\": \"query\"\n + \ },\n \"banAuthor\": {\n \"type\": \"boolean\",\n + \ \"location\": \"query\",\n \"default\": \"false\",\n + \ \"description\": \"If set to true the author of the comment + gets added to the ban list. This means all future comments of the author will + autmomatically be rejected. Only valid in combination with STATUS_REJECTED.\"\n + \ }\n },\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n + \ \"httpMethod\": \"POST\",\n \"description\": \"Sets the + moderation status of one or more comments.\",\n \"parameterOrder\": + [\n \"id\",\n \"moderationStatus\"\n ],\n \"flatPath\": + \"youtube/v3/comments/setModerationStatus\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.comments.setModerationStatus\"\n + \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"path\": \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.comments.delete\",\n + \ \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n }\n },\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"description\": \"Deletes a resource.\"\n },\n + \ \"list\": {\n \"id\": \"youtube.comments.list\",\n \"parameters\": + {\n \"textFormat\": {\n \"type\": \"string\",\n \"default\": + \"html\",\n \"location\": \"query\",\n \"enum\": + [\n \"textFormatUnspecified\",\n \"html\",\n + \ \"plainText\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Returns the comments in HTML format. + This is the default value.\",\n \"Returns the comments in plain + text format.\"\n ],\n \"description\": \"The requested + text format for the returned comments.\"\n },\n \"maxResults\": + {\n \"type\": \"integer\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"minimum\": \"1\",\n \"location\": + \"query\",\n \"default\": \"20\",\n \"maximum\": + \"100\",\n \"format\": \"uint32\"\n },\n \"parentId\": + {\n \"description\": \"Returns replies to the specified comment. + Note, currently YouTube features only one level of replies (ie replies to + top level comments). However replies to replies may be supported in the future.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"pageToken\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"description\": \"The + *part* parameter specifies a comma-separated list of one or more comment resource + properties that the API response will include.\",\n \"repeated\": + true,\n \"required\": true,\n \"location\": \"query\"\n + \ },\n \"id\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": + \"Returns the comments with the given IDs for One Platform.\"\n }\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n + \ }\n },\n \"markAsSpam\": {\n \"parameterOrder\": + [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/comments/markAsSpam\",\n \"id\": + \"youtube.comments.markAsSpam\",\n \"httpMethod\": \"POST\",\n \"parameters\": + {\n \"id\": {\n \"repeated\": true,\n \"location\": + \"query\",\n \"description\": \"Flags the comments with the given + IDs as spam in the caller's opinion.\",\n \"required\": true,\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Expresses the caller's opinion that one or more comments should be flagged + as spam.\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\"\n + \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": + {\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\",\n \"description\": \"Broadcast to delete.\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"*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 @@ -11135,56 +10447,59 @@ interactions: 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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"DELETE\"\n },\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"id\": \"youtube.channelSections.update\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Updates an existing resource.\"\n },\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"path\": \"youtube/v3/channelSections\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.channelSections.insert\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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 + YouTube content owner.\"\n }\n },\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"DELETE\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"id\": \"youtube.liveBroadcasts.delete\",\n \"description\": + \"Delete a given broadcast.\"\n },\n \"bind\": {\n \"flatPath\": + \"youtube/v3/liveBroadcasts/bind\",\n \"parameterOrder\": [\n \"id\",\n + \ \"part\"\n ],\n \"description\": \"Bind a broadcast + to a stream.\",\n \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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 - snippet and contentDetails.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + id, snippet, contentDetails, and status.\",\n \"repeated\": true\n + \ },\n \"id\": {\n \"required\": true,\n + \ \"location\": \"query\",\n \"description\": \"Broadcast + to bind to the stream\",\n \"type\": \"string\"\n },\n + \ \"streamId\": {\n \"location\": \"query\",\n \"description\": + \"Stream to bind, if not set unbind the current one.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n }\n },\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"path\": + \"youtube/v3/liveBroadcasts/bind\",\n \"httpMethod\": \"POST\",\n + \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"insert\": {\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"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 @@ -11199,6 +10514,32 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\"\n },\n \"part\": {\n \"required\": + true,\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"id\": \"youtube.liveBroadcasts.insert\",\n + \ \"description\": \"Inserts a new stream for the authenticated user.\",\n + \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": + \"POST\"\n },\n \"list\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify @@ -11208,120 +10549,77 @@ interactions: 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.\",\n \"location\": \"query\"\n }\n - \ }\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ChannelSectionListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more channelSection + YouTube content owner.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"required\": + true,\n \"repeated\": true,\n \"description\": \"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, 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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the ChannelSections owned by the authenticated - user.\"\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"Return content in specified language\",\n - \ \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the ChannelSections owned by the specified channel ID.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.list\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"flatPath\": \"youtube/v3/videoCategories\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.videoCategories.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"en-US\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the videoCategory resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Returns - the video categories with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"VideoCategoryListResponse\"\n }\n }\n }\n },\n \"thumbnails\": - {\n \"methods\": {\n \"set\": {\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"As this - is not an insert in a strict sense (it supports uploading/setting of a thumbnail - for multiple videos, which doesn't result in creation of a single resource), - I use a custom verb here.\",\n \"parameterOrder\": [\n \"videoId\"\n - \ ],\n \"mediaUpload\": {\n \"protocols\": {\n - \ \"resumable\": {\n \"multipart\": true,\n \"path\": - \"/resumable/upload/youtube/v3/thumbnails/set\"\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ }\n },\n \"maxSize\": \"2097152\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"response\": {\n \"$ref\": - \"ThumbnailSetResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.thumbnails.set\",\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"supportsMediaUpload\": true,\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"videoId\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\"\n - \ }\n }\n }\n }\n },\n \"liveBroadcasts\": - {\n \"methods\": {\n \"bind\": {\n \"parameters\": {\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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 + you can include in the parameter value are id, snippet, contentDetails, status + and statistics.\",\n \"location\": \"query\"\n },\n + \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"format\": \"uint32\",\n + \ \"default\": \"5\",\n \"type\": \"integer\",\n + \ \"maximum\": \"50\",\n \"minimum\": \"0\",\n \"location\": + \"query\"\n },\n \"broadcastType\": {\n \"enumDescriptions\": + [\n \"\",\n \"Return all broadcasts.\",\n \"Return + only scheduled event broadcasts.\",\n \"Return only persistent + broadcasts.\"\n ],\n \"description\": \"Return only + broadcasts with the selected type.\",\n \"default\": \"event\",\n + \ \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n + \ \"all\",\n \"event\",\n \"persistent\"\n + \ ],\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"mine\": {\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"streamId\": {\n \"location\": + for each separate channel.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"description\": \"Return broadcasts with the given + ids from Stubby or Apiary.\"\n },\n \"broadcastStatus\": + {\n \"enumDescriptions\": [\n \"\",\n \"Return + all broadcasts.\",\n \"Return current live broadcasts.\",\n + \ \"Return broadcasts that have not yet started.\",\n \"Return + broadcasts that have already ended.\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n + \ \"all\",\n \"active\",\n \"upcoming\",\n + \ \"completed\"\n ],\n \"location\": + \"query\",\n \"description\": \"Return broadcasts with a certain + status, e.g. active broadcasts.\"\n }\n },\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"GET\",\n \"flatPath\": + \"youtube/v3/liveBroadcasts\",\n \"description\": \"Retrieve the + list of broadcasts associated with the given channel.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"id\": + \"youtube.liveBroadcasts.list\"\n },\n \"update\": {\n \"httpMethod\": + \"PUT\",\n \"id\": \"youtube.liveBroadcasts.update\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n + \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"Stream to bind, if not set unbind the current one.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": \"*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 @@ -11330,39 +10628,7 @@ interactions: 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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to bind to the stream\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"description\": \"Bind a broadcast to a stream.\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts/bind\"\n },\n - \ \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + be linked to the specified YouTube content owner.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -11377,8 +10643,260 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + for each separate channel.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"description\": \"Updates an existing broadcast for the authenticated + user.\"\n },\n \"insertCuepoint\": {\n \"parameterOrder\": + [],\n \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n + \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n + \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"parameters\": + {\n \"id\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"Broadcast to insert ads to, + or equivalently `external_video_id` for internal use.\"\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Insert cuepoints in a broadcast\",\n + \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n + \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\"\n },\n \"transition\": + {\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"httpMethod\": + \"POST\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"description\": \"Transition a broadcast to a given + status.\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"required\": true\n },\n \"id\": {\n + \ \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"Broadcast to transition.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"broadcastStatus\": + {\n \"enumDescriptions\": [\n \"\",\n \"Start + testing the broadcast. YouTube transmits video to the broadcast's monitor + stream. Note that you can only transition a broadcast to the testing state + if its contentDetails.monitorStream.enableMonitorStream property is set to + true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The + broadcast is over. YouTube stops transmitting video.\"\n ],\n + \ \"type\": \"string\",\n \"required\": true,\n \"enum\": + [\n \"statusUnspecified\",\n \"testing\",\n + \ \"live\",\n \"complete\"\n ],\n + \ \"location\": \"query\",\n \"description\": \"The + status to which the broadcast is going to transition.\"\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n },\n \"parameterOrder\": + [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n + \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": + {\n \"delete\": {\n \"description\": \"Deletes a chat moderator.\",\n + \ \"id\": \"youtube.liveChatModerators.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"parameters\": {\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveChat/moderators\"\n + \ },\n \"list\": {\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"description\": \"The + *part* parameter specifies the liveChatModerator resource parts that the API + response will include. Supported values are id and snippet.\",\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"maxResults\": {\n \"maximum\": + \"50\",\n \"location\": \"query\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"default\": \"5\",\n \"format\": + \"uint32\",\n \"minimum\": \"0\",\n \"type\": \"integer\"\n + \ },\n \"liveChatId\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true,\n \"description\": \"The id of the live chat for which + moderators should be returned.\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n }\n },\n \"id\": \"youtube.liveChatModerators.list\",\n + \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": + \"LiveChatModeratorListResponse\"\n },\n \"parameterOrder\": + [\n \"liveChatId\",\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/liveChat/moderators\",\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"path\": \"youtube/v3/liveChat/moderators\"\n },\n + \ \"insert\": {\n \"response\": {\n \"$ref\": \"LiveChatModerator\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n + \ \"id\": \"youtube.liveChatModerators.insert\",\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true,\n \"description\": \"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.\"\n }\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"POST\"\n + \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n + \ \"insert\": {\n \"description\": \"Inserts a new resource + into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": + \"youtube.abuseReports.insert\",\n \"request\": {\n \"$ref\": + \"AbuseReport\"\n },\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n },\n \"path\": + \"youtube/v3/abuseReports\",\n \"flatPath\": \"youtube/v3/abuseReports\",\n + \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n + \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"liveChatBans\": + {\n \"methods\": {\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/bans\",\n + \ \"id\": \"youtube.liveChatBans.delete\",\n \"flatPath\": + \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes + a chat ban.\"\n },\n \"insert\": {\n \"request\": {\n + \ \"$ref\": \"LiveChatBan\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"path\": \"youtube/v3/liveChat/bans\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"response\": + {\n \"$ref\": \"LiveChatBan\"\n },\n \"httpMethod\": + \"POST\",\n \"id\": \"youtube.liveChatBans.insert\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n }\n }\n },\n \"channels\": {\n \"methods\": + {\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"description\": + \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"request\": {\n \"$ref\": \"Channel\"\n + \ },\n \"response\": {\n \"$ref\": \"Channel\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/channels\",\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"required\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n }\n },\n \"path\": + \"youtube/v3/channels\",\n \"id\": \"youtube.channels.update\"\n + \ },\n \"list\": {\n \"response\": {\n \"$ref\": + \"ChannelListResponse\"\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"parameters\": {\n \"id\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return the channels with the specified IDs.\"\n + \ },\n \"mine\": {\n \"description\": \"Return + the ids of channels owned by the authenticated user.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"maxResults\": + {\n \"maximum\": \"50\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"default\": \"5\",\n \"format\": + \"uint32\",\n \"minimum\": \"0\",\n \"location\": + \"query\",\n \"type\": \"integer\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n + \ },\n \"hl\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Stands + for \\\"host language\\\". Specifies the localization language of the metadata + to be filled into snippet.localized. The field is filled with the default + metadata if there is no localization in the specified language. The parameter + value must be a language code included in the list returned by the i18nLanguages.list + method (e.g. en_US, es_MX).\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": \"*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 @@ -11387,21 +10905,215 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n },\n \"mySubscribers\": {\n \"description\": + \"Return the channels subscribed to the authenticated user\",\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"required\": true,\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"categoryId\": {\n \"location\": + \"query\",\n \"description\": \"Return the channels within the + specified guide category ID.\",\n \"type\": \"string\"\n },\n + \ \"forUsername\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"Return the channel associated + with a YouTube username.\"\n },\n \"managedByMe\": {\n + \ \"location\": \"query\",\n \"type\": \"boolean\",\n + \ \"description\": \"Return the channels managed by the authenticated + user.\"\n }\n },\n \"flatPath\": \"youtube/v3/channels\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"id\": \"youtube.channels.list\",\n \"path\": \"youtube/v3/channels\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"description\": \"Updates an - existing broadcast for the authenticated user.\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"id\": \"youtube.liveBroadcasts.update\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\"\n },\n \"insertCuepoint\": - {\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"request\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n + \ ],\n \"httpMethod\": \"GET\"\n }\n }\n },\n + \ \"search\": {\n \"methods\": {\n \"list\": {\n \"flatPath\": + \"youtube/v3/search\",\n \"httpMethod\": \"GET\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.search.list\",\n + \ \"description\": \"Retrieves a list of search resources\",\n \"response\": + {\n \"$ref\": \"SearchListResponse\"\n },\n \"parameters\": + {\n \"maxResults\": {\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"location\": \"query\",\n \"maximum\": + \"50\",\n \"format\": \"uint32\",\n \"minimum\": + \"0\",\n \"default\": \"5\",\n \"type\": \"integer\"\n + \ },\n \"type\": {\n \"type\": \"string\",\n + \ \"description\": \"Restrict results to a particular set of resource + types from One Platform.\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"videoSyndicated\": {\n \"enum\": + [\n \"videoSyndicatedUnspecified\",\n \"any\",\n + \ \"true\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos, syndicated + or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Filter on syndicated videos.\"\n },\n + \ \"videoDimension\": {\n \"description\": \"Filter + on 3d videos.\",\n \"enum\": [\n \"any\",\n \"2d\",\n + \ \"3d\"\n ],\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"enumDescriptions\": + [\n \"Include both 3D and non-3D videos in returned results. + This is the default value.\",\n \"Restrict search results to + exclude 3D videos.\",\n \"Restrict search results to only include + 3D videos.\"\n ]\n },\n \"publishedBefore\": + {\n \"description\": \"Filter on resources published before this + date.\",\n \"format\": \"google-datetime\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"safeSearch\": + {\n \"description\": \"Indicates whether the search results should + include restricted content as well as standard content.\",\n \"location\": + \"query\",\n \"default\": \"moderate\",\n \"enum\": + [\n \"safeSearchSettingUnspecified\",\n \"none\",\n + \ \"moderate\",\n \"strict\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"YouTube + will not filter the search result set.\",\n \"YouTube will + filter some content from search results and, at the least, will filter content + that is restricted in your locale. Based on their content, search results + could be removed from search results or demoted in search results. This is + the default parameter value.\",\n \"YouTube will try to exclude + all restricted content from the search result set. Based on their content, + search results could be removed from search results or demoted in search results.\"\n + \ ],\n \"type\": \"string\"\n },\n \"eventType\": + {\n \"description\": \"Filter on the livestream status of the + videos.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been + completed.\"\n ],\n \"enum\": [\n \"none\",\n + \ \"upcoming\",\n \"live\",\n \"completed\"\n + \ ]\n },\n \"pageToken\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n + \ \"relevanceLanguage\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Return + results relevant to this language.\"\n },\n \"location\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Filter on location of the video\"\n },\n + \ \"videoDuration\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"Do not filter video search results + based on their duration. This is the default value.\",\n \"Only + include videos that are less than four minutes long.\",\n \"Only + include videos that are between four and 20 minutes long (inclusive).\",\n + \ \"Only include videos longer than 20 minutes.\"\n ],\n + \ \"location\": \"query\",\n \"description\": \"Filter + on the duration of the videos.\",\n \"enum\": [\n \"videoDurationUnspecified\",\n + \ \"any\",\n \"short\",\n \"medium\",\n + \ \"long\"\n ],\n \"type\": \"string\"\n + \ },\n \"order\": {\n \"description\": \"Sort + order of the results.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Resources are sorted in reverse chronological order based + on the date they were created.\",\n \"Resources are sorted + from highest to lowest rating.\",\n \"Resources are sorted + from highest to lowest number of views.\",\n \"Resources are + sorted based on their relevance to the search query. This is the default value + for this parameter.\",\n \"Resources are sorted alphabetically + by title.\",\n \"Channels are sorted in descending order of + their number of uploaded videos.\"\n ],\n \"location\": + \"query\",\n \"type\": \"string\",\n \"default\": + \"relevance\",\n \"enum\": [\n \"searchSortUnspecified\",\n + \ \"date\",\n \"rating\",\n \"viewCount\",\n + \ \"relevance\",\n \"title\",\n \"videoCount\"\n + \ ]\n },\n \"videoCaption\": {\n \"enumDescriptions\": + [\n \"\",\n \"Do not filter results based on + caption availability.\",\n \"Only include videos that have + captions.\",\n \"Only include videos that do not have captions.\"\n + \ ],\n \"enum\": [\n \"videoCaptionUnspecified\",\n + \ \"any\",\n \"closedCaption\",\n \"none\"\n + \ ],\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"Filter on the presence of captions + on the videos.\"\n },\n \"regionCode\": {\n \"location\": + \"query\",\n \"description\": \"Display the content as seen by + viewers in this country.\",\n \"type\": \"string\"\n },\n + \ \"forContentOwner\": {\n \"location\": \"query\",\n + \ \"type\": \"boolean\",\n \"description\": \"Search + owned by a content owner.\"\n },\n \"forDeveloper\": + {\n \"location\": \"query\",\n \"type\": \"boolean\",\n + \ \"description\": \"Restrict the search to only retrieve videos + uploaded using the project id of the authenticated user.\"\n },\n + \ \"locationRadius\": {\n \"description\": \"Filter + on distance from the location (specified above).\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Filter on resources belonging to this channelId.\"\n + \ },\n \"videoEmbeddable\": {\n \"description\": + \"Filter on embeddable videos.\",\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Return + all videos, embeddable or not.\",\n \"Only retrieve embeddable + videos.\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"videoEmbeddableUnspecified\",\n \"any\",\n + \ \"true\"\n ]\n },\n \"videoType\": + {\n \"description\": \"Filter on videos of a specific type.\",\n + \ \"enum\": [\n \"videoTypeUnspecified\",\n \"any\",\n + \ \"movie\",\n \"episode\"\n ],\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Return + all videos.\",\n \"Only retrieve movies.\",\n \"Only + retrieve episodes of shows.\"\n ]\n },\n \"topicId\": + {\n \"description\": \"Restrict results to a particular topic.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"channelType\": {\n \"location\": + \"query\",\n \"enum\": [\n \"channelTypeUnspecified\",\n + \ \"any\",\n \"show\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Return all channels.\",\n \"Only + retrieve shows.\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"Add a filter on the channel search.\"\n },\n + \ \"forMine\": {\n \"location\": \"query\",\n \"description\": + \"Search for the private videos of the authenticated user.\",\n \"type\": + \"boolean\"\n },\n \"publishedAfter\": {\n \"type\": + \"string\",\n \"format\": \"google-datetime\",\n \"description\": + \"Filter on resources published after this date.\",\n \"location\": + \"query\"\n },\n \"relatedToVideoId\": {\n \"description\": + \"Search related to a resource.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"videoDefinition\": + {\n \"description\": \"Filter on the definition of the videos.\",\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"enum\": [\n \"any\",\n \"standard\",\n + \ \"high\"\n ],\n \"enumDescriptions\": + [\n \"Return all videos, regardless of their resolution.\",\n + \ \"Only retrieve videos in standard definition.\",\n \"Only + retrieve HD videos.\"\n ]\n },\n \"videoCategoryId\": + {\n \"description\": \"Filter on videos in a specific category.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"q\": + {\n \"location\": \"query\",\n \"description\": + \"Textual search terms to match.\",\n \"type\": \"string\"\n + \ },\n \"part\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true\n },\n \"videoLicense\": {\n \"location\": + \"query\",\n \"description\": \"Filter on the license of the + videos.\",\n \"enumDescriptions\": [\n \"Return + all videos, regardless of which license they have, that match the query parameters.\",\n + \ \"Only return videos that have the standard YouTube license.\",\n + \ \"Only return videos that have a Creative Commons license. + Users can reuse videos with this license in other videos that they create. + Learn more.\"\n ],\n \"enum\": [\n \"any\",\n + \ \"youtube\",\n \"creativeCommon\"\n ],\n + \ \"type\": \"string\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/search\"\n }\n }\n + \ },\n \"liveStreams\": {\n \"methods\": {\n \"delete\": + {\n \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": + \"DELETE\",\n \"id\": \"youtube.liveStreams.delete\",\n \"path\": + \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates @@ -11412,13 +11124,8 @@ interactions: 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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n + owner.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n + \ \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"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 @@ -11432,126 +11139,64 @@ interactions: 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.\"\n }\n },\n \"id\": - \"youtube.liveBroadcasts.insertCuepoint\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Insert cuepoints - in a broadcast\",\n \"parameterOrder\": []\n },\n \"insert\": - {\n \"description\": \"Inserts a new stream for the authenticated - user.\",\n \"httpMethod\": \"POST\",\n \"response\": {\n - \ \"$ref\": \"LiveBroadcast\"\n },\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"delete\": - {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n - \ \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"Broadcast to delete.\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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 + in the parameter value, without having to provide authentication credentials + for each separate channel.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\"\n }\n },\n \"description\": \"Deletes + an existing stream for the authenticated user.\",\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n + \ },\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Delete a given broadcast.\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"transition\": {\n \"httpMethod\": \"POST\",\n \"description\": - \"Transition a broadcast to a given status.\",\n \"scopes\": [\n + for each separate channel.\",\n \"type\": \"string\"\n },\n + \ \"part\": {\n \"description\": \"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.\",\n + \ \"required\": true,\n \"repeated\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\"\n }\n },\n \"description\": \"Updates + an existing stream for the authenticated user.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"LiveStream\"\n },\n \"request\": {\n \"$ref\": + \"LiveStream\"\n },\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"id\": \"youtube.liveStreams.update\",\n \"scopes\": [\n \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameters\": - {\n \"broadcastStatus\": {\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"type\": \"string\",\n \"description\": - \"The status to which the broadcast is going to transition.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Broadcast to transition.\",\n \"required\": true,\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \ ]\n },\n \"insert\": {\n \"description\": + \"Inserts a new stream for the authenticated user.\",\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": + {\n \"$ref\": \"LiveStream\"\n },\n \"response\": + {\n \"$ref\": \"LiveStream\"\n },\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -11565,22 +11210,31 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ]\n },\n \"list\": {\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n + for each separate channel.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"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, content_details, and status.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n }\n },\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.list\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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, status - and statistics.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveStreams.insert\"\n + \ },\n \"list\": {\n \"id\": \"youtube.liveStreams.list\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -11596,8 +11250,343 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"pageToken\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n + \ \"part\": {\n \"required\": true,\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"description\": \"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.\"\n },\n \"maxResults\": + {\n \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"default\": + \"5\",\n \"format\": \"uint32\",\n \"minimum\": + \"0\",\n \"type\": \"integer\",\n \"location\": + \"query\",\n \"maximum\": \"50\"\n },\n \"mine\": + {\n \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*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.\"\n },\n \"id\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"description\": \"Return LiveStreams with the given ids from + Stubby or Apiary.\",\n \"location\": \"query\"\n }\n + \ },\n \"path\": \"youtube/v3/liveStreams\",\n \"response\": + {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"httpMethod\": + \"GET\",\n \"description\": \"Retrieve the list of streams associated + with the given channel. --\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ]\n }\n }\n },\n \"i18nRegions\": {\n \"methods\": + {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n + \ },\n \"path\": \"youtube/v3/i18nRegions\",\n \"id\": + \"youtube.i18nRegions.list\",\n \"description\": \"Retrieves a list + of resources, possibly filtered.\",\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"description\": \"The + *part* parameter specifies the i18nRegion resource properties that the API + response will include. Set the parameter value to snippet.\",\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"hl\": {\n \"default\": \"en_US\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"flatPath\": \"youtube/v3/i18nRegions\"\n }\n + \ }\n },\n \"captions\": {\n \"methods\": {\n \"insert\": + {\n \"flatPath\": \"youtube/v3/captions\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n + \ \"response\": {\n \"$ref\": \"Caption\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"request\": {\n \"$ref\": \"Caption\"\n },\n + \ \"supportsMediaUpload\": true,\n \"path\": \"youtube/v3/captions\",\n + \ \"id\": \"youtube.captions.insert\",\n \"mediaUpload\": + {\n \"protocols\": {\n \"simple\": {\n \"path\": + \"/upload/youtube/v3/captions\",\n \"multipart\": true\n },\n + \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n + \ \"multipart\": true\n }\n },\n \"accept\": + [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n + \ },\n \"parameters\": {\n \"onBehalfOf\": {\n + \ \"location\": \"query\",\n \"description\": \"ID + of the Google+ Page for the channel that the request is be on behalf of\",\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n },\n \"sync\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"description\": + \"Extra parameter to allow automatically syncing the uploaded caption/transcript + with the audio.\"\n },\n \"part\": {\n \"description\": + \"The *part* parameter specifies the caption resource parts that the API response + will include. Set the parameter value to snippet.\",\n \"required\": + true,\n \"location\": \"query\",\n \"repeated\": + true,\n \"type\": \"string\"\n }\n }\n },\n + \ \"download\": {\n \"path\": \"youtube/v3/captions/{id}\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"tfmt\": + {\n \"type\": \"string\",\n \"description\": \"Convert + the captions into this format. Supported options are sbv, srt, and vtt.\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOf\": + {\n \"location\": \"query\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The + ID of the caption track to download, required for One Platform.\",\n \"required\": + true,\n \"location\": \"path\"\n },\n \"tlang\": + {\n \"description\": \"tlang is the language code; machine translate + the captions into this language.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"flatPath\": + \"youtube/v3/captions/{id}\",\n \"description\": \"Downloads a caption + track.\",\n \"supportsMediaDownload\": true,\n \"id\": \"youtube.captions.download\",\n + \ \"useMediaDownloadService\": true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"id\"\n + \ ]\n },\n \"delete\": {\n \"httpMethod\": + \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\"\n },\n + \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is be on behalf + of\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"path\": + \"youtube/v3/captions\",\n \"id\": \"youtube.captions.delete\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Deletes a resource.\",\n \"flatPath\": + \"youtube/v3/captions\"\n },\n \"list\": {\n \"parameterOrder\": + [\n \"part\",\n \"videoId\"\n ],\n \"path\": + \"youtube/v3/captions\",\n \"description\": \"Retrieves a list of + resources, possibly filtered.\",\n \"response\": {\n \"$ref\": + \"CaptionListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"id\": \"youtube.captions.list\",\n \"parameters\": {\n + \ \"videoId\": {\n \"required\": true,\n \"type\": + \"string\",\n \"description\": \"Returns the captions for the + specified video.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*Note:* + This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* + parameter indicates that the request's authorization credentials identify + a YouTube CMS user who is acting on behalf of the content owner specified + in the parameter value. This parameter is intended for YouTube content partners + that own and manage many different YouTube channels. It allows content owners + to authenticate once and get access to all their video and channel data, without + having to provide authentication credentials for each individual channel. + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\"\n },\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"Returns the captions with the given IDs for + Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"onBehalfOf\": {\n \"type\": + \"string\",\n \"description\": \"ID of the Google+ Page for the + channel that the request is on behalf of.\",\n \"location\": + \"query\"\n }\n }\n },\n \"update\": {\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n + \ \"multipart\": true\n },\n \"simple\": + {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n + \ }\n },\n \"maxSize\": \"104857600\",\n + \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ]\n },\n \"supportsMediaUpload\": + true,\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"response\": {\n \"$ref\": \"Caption\"\n },\n + \ \"path\": \"youtube/v3/captions\",\n \"httpMethod\": \"PUT\",\n + \ \"flatPath\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.update\",\n + \ \"request\": {\n \"$ref\": \"Caption\"\n },\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"description\": \"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.\",\n + \ \"location\": \"query\"\n },\n \"sync\": + {\n \"location\": \"query\",\n \"type\": \"boolean\",\n + \ \"description\": \"Extra parameter to allow automatically syncing + the uploaded caption/transcript with the audio.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOf\": {\n \"description\": + \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Updates an existing + resource.\"\n }\n }\n },\n \"liveChatMessages\": {\n \"methods\": + {\n \"list\": {\n \"parameterOrder\": [\n \"liveChatId\",\n + \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"path\": \"youtube/v3/liveChat/messages\",\n \"parameters\": + {\n \"hl\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"Specifies the localization language + in which the system messages should be returned.\"\n },\n \"liveChatId\": + {\n \"location\": \"query\",\n \"description\": + \"The id of the live chat for which comments should be returned.\",\n \"type\": + \"string\",\n \"required\": true\n },\n \"part\": + {\n \"required\": true,\n \"description\": \"The + *part* parameter specifies the liveChatComment resource parts that the API + response will include. Supported values are id and snippet.\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"profileImageSize\": + {\n \"type\": \"integer\",\n \"maximum\": \"720\",\n + \ \"minimum\": \"16\",\n \"description\": \"Specifies + the size of the profile image that should be returned for each user.\",\n + \ \"format\": \"uint32\",\n \"location\": \"query\"\n + \ },\n \"maxResults\": {\n \"maximum\": + \"2000\",\n \"location\": \"query\",\n \"default\": + \"500\",\n \"minimum\": \"200\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\"\n }\n },\n \"id\": + \"youtube.liveChatMessages.list\",\n \"httpMethod\": \"GET\",\n \"response\": + {\n \"$ref\": \"LiveChatMessageListResponse\"\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n + \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"id\": \"youtube.liveChatMessages.delete\",\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"description\": \"Deletes a chat message.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"parameterOrder\": [\n \"id\"\n ]\n },\n + \ \"insert\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n },\n + \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n + \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\"\n + \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/liveChat/messages\",\n \"description\": \"Inserts a + new resource into this collection.\",\n \"id\": \"youtube.liveChatMessages.insert\"\n + \ }\n }\n },\n \"activities\": {\n \"methods\": {\n + \ \"list\": {\n \"id\": \"youtube.activities.list\",\n \"response\": + {\n \"$ref\": \"ActivityListResponse\"\n },\n \"parameters\": + {\n \"home\": {\n \"location\": \"query\",\n \"type\": + \"boolean\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true,\n \"repeated\": true,\n \"description\": + \"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.\"\n },\n \"publishedBefore\": + {\n \"format\": \"google-datetime\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": + {\n \"default\": \"5\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"maximum\": \"50\",\n \"format\": + \"uint32\",\n \"minimum\": \"0\",\n \"location\": + \"query\",\n \"type\": \"integer\"\n },\n \"regionCode\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"publishedAfter\": {\n \"location\": + \"query\",\n \"format\": \"google-datetime\",\n \"type\": \"string\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + \"boolean\",\n \"location\": \"query\"\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"httpMethod\": \"GET\",\n \"flatPath\": + \"youtube/v3/activities\",\n \"description\": \"Retrieves a list + of resources, possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"path\": \"youtube/v3/activities\"\n }\n }\n + \ },\n \"watermarks\": {\n \"methods\": {\n \"set\": {\n + \ \"path\": \"youtube/v3/watermarks/set\",\n \"parameters\": + {\n \"channelId\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.watermarks.set\",\n \"httpMethod\": \"POST\",\n + \ \"supportsMediaUpload\": true,\n \"request\": {\n \"$ref\": + \"InvideoBranding\"\n },\n \"flatPath\": \"youtube/v3/watermarks/set\",\n + \ \"parameterOrder\": [\n \"channelId\"\n ],\n + \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n + \ \"image/png\",\n \"application/octet-stream\"\n + \ ],\n \"maxSize\": \"10485760\",\n \"protocols\": + {\n \"simple\": {\n \"multipart\": true,\n \"path\": + \"/upload/youtube/v3/watermarks/set\"\n },\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n + \ \"multipart\": true\n }\n }\n },\n + \ \"description\": \"Allows upload of watermark image and setting + it for a channel.\"\n },\n \"unset\": {\n \"parameters\": + {\n \"channelId\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -11608,361 +11597,442 @@ interactions: provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"broadcastStatus\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"description\": \"Return broadcasts with - a certain status, e.g. active broadcasts.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ]\n },\n \"id\": {\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"broadcastType\": + \"string\"\n }\n },\n \"description\": \"Allows + removal of channel watermark.\",\n \"id\": \"youtube.watermarks.unset\",\n + \ \"path\": \"youtube/v3/watermarks/unset\",\n \"parameterOrder\": + [\n \"channelId\"\n ],\n \"httpMethod\": \"POST\",\n + \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": + {\n \"parameters\": {\n \"hasAccessToLevel\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Filter members in the results set to the ones that have access to a level.\"\n + \ },\n \"filterByMemberChannelId\": {\n \"location\": + \"query\",\n \"description\": \"Comma separated list of channel + IDs. Only data about members that are part of this list will be included in + the response.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"description\": \"The *part* parameter specifies the member + resource parts that the API response will include. Set the parameter value + to snippet.\",\n \"location\": \"query\",\n \"required\": + true\n },\n \"maxResults\": {\n \"maximum\": + \"1000\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"type\": + \"integer\",\n \"location\": \"query\",\n \"minimum\": + \"0\"\n },\n \"pageToken\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n + \ \"mode\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Return only members that joined + after the first call with this mode was made.\",\n \"Return + all current members, from newest to oldest.\"\n ],\n \"default\": + \"all_current\",\n \"description\": \"Parameter that specifies + which channel members to return.\",\n \"enum\": [\n \"listMembersModeUnknown\",\n + \ \"updates\",\n \"all_current\"\n ],\n + \ \"location\": \"query\"\n }\n },\n \"id\": + \"youtube.members.list\",\n \"flatPath\": \"youtube/v3/members\",\n + \ \"response\": {\n \"$ref\": \"MemberListResponse\"\n + \ },\n \"description\": \"Retrieves a list of members that + match the request criteria for a channel.\",\n \"path\": \"youtube/v3/members\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"youtube\": + {\n \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": + {\n \"response\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"path\": \"youtube/v3/commentThreads\",\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n },\n + \ \"parameterOrder\": [],\n \"httpMethod\": \"PUT\",\n + \ \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"description\": + \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": + \"CommentThread\"\n }\n }\n }\n }\n + \ }\n },\n \"thirdPartyLinks\": {\n \"methods\": {\n \"list\": + {\n \"id\": \"youtube.thirdPartyLinks.list\",\n \"path\": + \"youtube/v3/thirdPartyLinks\",\n \"response\": {\n \"$ref\": + \"ThirdPartyLinkListResponse\"\n },\n \"httpMethod\": \"GET\",\n + \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"externalChannelId\": + {\n \"type\": \"string\",\n \"description\": \"Channel + ID to which changes should be applied, for delegation.\",\n \"location\": + \"query\"\n },\n \"type\": {\n \"enum\": + [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"Get a third party link of the given type.\",\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or + about to connect) a channel with a store on a merchandising platform in order + to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n + \ \"location\": \"query\"\n },\n \"part\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return only scheduled event broadcasts.\",\n - \ \"Return only persistent broadcasts.\"\n ],\n - \ \"default\": \"event\",\n \"description\": \"Return - only broadcasts with the selected type.\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ]\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"format\": \"uint32\"\n - \ }\n },\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n }\n }\n - \ }\n },\n \"liveChatModerators\": {\n \"methods\": {\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat moderator.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.liveChatModerators.delete\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"parameters\": {\n \"id\": + \ \"description\": \"The *part* parameter specifies the thirdPartyLink + resource parts that the API response will include. Supported values are linkingToken, + status, and snippet.\",\n \"required\": true,\n \"repeated\": + true\n },\n \"linkingToken\": {\n \"type\": + \"string\",\n \"description\": \"Get a third party link with + the given linking token.\",\n \"location\": \"query\"\n }\n + \ }\n },\n \"update\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"description\": \"Updates an existing resource.\",\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API request and response will include. Supported values are linkingToken, + status, and snippet.\",\n \"location\": \"query\"\n },\n + \ \"externalChannelId\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel ID to which changes should be applied, + for delegation.\",\n \"location\": \"query\"\n }\n + \ },\n \"id\": \"youtube.thirdPartyLinks.update\",\n \"httpMethod\": + \"PUT\",\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n + \ },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": + [\n \"part\"\n ]\n },\n \"insert\": {\n + \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.thirdPartyLinks.insert\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"parameters\": {\n \"externalChannelId\": {\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"required\": true,\n \"description\": \"The *part* + parameter specifies the thirdPartyLink resource parts that the API request + and response will include. Supported values are linkingToken, status, and + snippet.\",\n \"type\": \"string\"\n }\n },\n + \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n + \ },\n \"delete\": {\n \"parameterOrder\": [\n \"linkingToken\",\n + \ \"type\"\n ],\n \"id\": \"youtube.thirdPartyLinks.delete\",\n + \ \"parameters\": {\n \"type\": {\n \"description\": + \"Type of the link to be deleted.\",\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or + about to connect) a channel with a store on a merchandising platform in order + to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n + \ \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"description\": \"Do not + use. Required for compatibility.\"\n },\n \"linkingToken\": {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n }\n },\n - \ \"list\": {\n \"id\": \"youtube.liveChatModerators.list\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveChatModeratorListResponse\"\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the liveChatModerator resource parts that the API - response will include. Supported values are id and snippet.\",\n \"type\": - \"string\"\n },\n \"liveChatId\": {\n \"description\": - \"The id of the live chat for which moderators should be returned.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"default\": \"5\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n }\n - \ }\n },\n \"insert\": {\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"LiveChatModerator\"\n }\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"type\": \"string\",\n \"description\": \"Delete + the partner links with the given linking token.\"\n },\n \"externalChannelId\": + {\n \"location\": \"query\",\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Deletes + a resource.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/thirdPartyLinks\"\n + \ }\n }\n },\n \"videoCategories\": {\n \"methods\": + {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"default\": \"en_US\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the i18nRegion - resource properties that the API response will include. Set the parameter - value to snippet.\"\n }\n },\n \"parameterOrder\": + \ \"path\": \"youtube/v3/videoCategories\",\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.videoCategories.list\",\n \"parameterOrder\": [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"I18nRegionListResponse\"\n },\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"path\": \"youtube/v3/i18nRegions\",\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"path\": \"youtube/v3/membershipsLevels\",\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the membershipsLevel resource parts that the API response - will include. Supported values are id and snippet.\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ]\n }\n }\n },\n \"liveChatBans\": {\n \"methods\": - {\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Deletes a chat ban.\",\n - \ \"id\": \"youtube.liveChatBans.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/bans\"\n - \ },\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n }\n - \ }\n }\n },\n \"comments\": {\n \"methods\": {\n \"setModerationStatus\": - {\n \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"path\": - \"youtube/v3/comments/setModerationStatus\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"moderationStatus\": - {\n \"required\": true,\n \"description\": \"Specifies - the requested moderation status. Note, comments can be in statuses, which - are not available through this call. For example, this call does not allow - to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"banAuthor\": + \"VideoCategoryListResponse\"\n },\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/videoCategories\",\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"The *part* parameter specifies + the videoCategory resource properties that the API response will include. + Set the parameter value to snippet.\",\n \"type\": \"string\",\n + \ \"required\": true,\n \"repeated\": true\n },\n + \ \"hl\": {\n \"default\": \"en-US\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": {\n \"location\": \"query\",\n \"description\": - \"If set to true the author of the comment gets added to the ban list. This - means all future comments of the author will autmomatically be rejected. Only - valid in combination with STATUS_REJECTED.\",\n \"type\": \"boolean\",\n - \ \"default\": \"false\"\n },\n \"id\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\"\n }\n },\n \"description\": - \"Sets the moderation status of one or more comments.\",\n \"httpMethod\": - \"POST\"\n },\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.comments.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"request\": - {\n \"$ref\": \"Comment\"\n }\n },\n \"update\": - {\n \"flatPath\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.update\",\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"response\": - {\n \"$ref\": \"Comment\"\n }\n },\n \"markAsSpam\": - {\n \"id\": \"youtube.comments.markAsSpam\",\n \"flatPath\": - \"youtube/v3/comments/markAsSpam\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Expresses the caller's opinion - that one or more comments should be flagged as spam.\",\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n - \ \"required\": true\n }\n },\n \"path\": - \"youtube/v3/comments/markAsSpam\",\n \"httpMethod\": \"POST\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"list\": {\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"description\": \"Returns the comments with the given - IDs for One Platform.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"default\": - \"20\",\n \"location\": \"query\",\n \"minimum\": - \"1\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"100\",\n - \ \"type\": \"integer\"\n },\n \"pageToken\": + \"Returns the video categories with the given IDs for Stubby or Apiary.\",\n + \ \"repeated\": true,\n \"type\": \"string\"\n },\n + \ \"regionCode\": {\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n }\n }\n }\n },\n \"commentThreads\": + {\n \"methods\": {\n \"insert\": {\n \"description\": + \"Inserts a new resource into this collection.\",\n \"request\": + {\n \"$ref\": \"CommentThread\"\n },\n \"path\": + \"youtube/v3/commentThreads\",\n \"parameters\": {\n \"part\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\",\n \"repeated\": true,\n + \ \"description\": \"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.\"\n }\n },\n + \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": + \"CommentThread\"\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": + \"youtube.commentThreads.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"list\": {\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": + \"CommentThreadListResponse\"\n },\n \"parameters\": {\n + \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"textFormat\": {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"textFormat\": {\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"location\": - \"query\",\n \"default\": \"html\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n + requested text format for the returned comments.\",\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n \ \"Returns the comments in HTML format. This is the default value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"description\": \"The requested text format - for the returned comments.\"\n },\n \"parentId\": {\n - \ \"location\": \"query\",\n \"description\": \"Returns - replies to the specified comment. Note, currently YouTube features only one - level of replies (ie replies to top level comments). However replies to replies - may be supported in the future.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"description\": \"The *part* parameter - specifies a comma-separated list of one or more comment resource properties - that the API response will include.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"id\": \"youtube.comments.list\",\n \"httpMethod\": - \"GET\"\n },\n \"delete\": {\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.delete\",\n \"path\": - \"youtube/v3/comments\"\n }\n }\n },\n \"commentThreads\": - {\n \"methods\": {\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"CommentThread\"\n },\n \"path\": - \"youtube/v3/commentThreads\",\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"id\": \"youtube.commentThreads.insert\"\n },\n - \ \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"channelId\": - {\n \"description\": \"Returns the comment threads for all the - channel comments (ie does not include comments left on videos).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"searchTerms\": - {\n \"location\": \"query\",\n \"description\": + \ ],\n \"default\": \"html\",\n \"enum\": + [\n \"textFormatUnspecified\",\n \"html\",\n + \ \"plainText\"\n ]\n },\n \"moderationStatus\": + {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n + \ \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"description\": + \"Limits the returned comment threads to those with the specified moderation + status. Not compatible with the 'id' filter. Valid values: published, heldForReview, + likelySpam.\",\n \"default\": \"published\",\n \"location\": + \"query\"\n },\n \"searchTerms\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"minimum\": \"1\",\n - \ \"default\": \"20\",\n \"maximum\": \"100\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"location\": \"query\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"moderationStatus\": - {\n \"enumDescriptions\": [\n \"The comment is - available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"default\": \"published\",\n - \ \"location\": \"query\",\n \"description\": \"Limits - the returned comment threads to those with the specified moderation status. - Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"type\": \"string\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ]\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads of the specified - video.\"\n },\n \"order\": {\n \"enum\": + words. Not compatible with the 'id' filter.\"\n },\n \"order\": + {\n \"enumDescriptions\": [\n \"\",\n \"Order + by time.\",\n \"Order by relevance.\"\n ],\n \"enum\": [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Order by time.\",\n \"Order by relevance.\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"time\",\n \"location\": \"query\"\n },\n \"part\": + \ ],\n \"location\": \"query\",\n \"type\": + \"string\",\n \"default\": \"time\"\n },\n \"part\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"textFormat\": {\n \"type\": - \"string\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"description\": - \"The requested text format for the returned comments.\",\n \"default\": - \"html\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.commentThreads.list\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"playlistItems\": {\n \"methods\": {\n - \ \"insert\": {\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": + \ \"required\": true,\n \"repeated\": true,\n \"description\": + \"The *part* parameter specifies a comma-separated list of one or more commentThread + resource properties that the API response will include.\"\n },\n + \ \"maxResults\": {\n \"format\": \"uint32\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"location\": \"query\",\n + \ \"type\": \"integer\",\n \"default\": \"20\",\n + \ \"minimum\": \"1\",\n \"maximum\": \"100\"\n },\n + \ \"id\": {\n \"description\": \"Returns the comment + threads with the given IDs for Stubby or Apiary.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true\n },\n \"videoId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Returns the comment threads of the specified video.\"\n },\n + \ \"allThreadsRelatedToChannelId\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": + \"Returns the comment threads of all videos of the channel and the channel + comments as well.\"\n },\n \"channelId\": {\n \"description\": + \"Returns the comment threads for all the channel comments (ie does not include + comments left on videos).\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"path\": \"youtube/v3/commentThreads\",\n + \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.commentThreads.list\",\n + \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n }\n }\n },\n \"videos\": {\n \"methods\": + {\n \"getRating\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/videos/getRating\",\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.videos.getRating\",\n \"description\": + \"Retrieves the ratings that the authorized user gave to a list of specified + videos.\",\n \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"path\": \"youtube/v3/videos/getRating\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"response\": + {\n \"$ref\": \"VideoGetRatingResponse\"\n }\n },\n + \ \"update\": {\n \"httpMethod\": \"PUT\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/videos\",\n \"request\": {\n \"$ref\": \"Video\"\n + \ },\n \"description\": \"Updates an existing resource.\",\n + \ \"response\": {\n \"$ref\": \"Video\"\n },\n + \ \"path\": \"youtube/v3/videos\",\n \"parameters\": {\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*Note:* + This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* + parameter indicates that the request's authorization credentials identify + a YouTube CMS user who is acting on behalf of the content owner specified + in the parameter value. This parameter is intended for YouTube content partners + that own and manage many different YouTube channels. It allows content owners + to authenticate once and get access to all their video and channel data, without + having to provide authentication credentials for each individual channel. + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\"\n },\n \"part\": + {\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"youtube.videos.update\"\n + \ },\n \"delete\": {\n \"path\": \"youtube/v3/videos\",\n + \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.videos.delete\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/videos\",\n \"description\": + \"Deletes a resource.\"\n },\n \"reportAbuse\": {\n \"flatPath\": + \"youtube/v3/videos/reportAbuse\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Report abuse for a video.\",\n + \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/videos/reportAbuse\",\n + \ \"parameterOrder\": [],\n \"request\": {\n \"$ref\": + \"VideoAbuseReport\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n + \ },\n \"id\": \"youtube.videos.reportAbuse\"\n },\n + \ \"list\": {\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"hl\": {\n \"description\": \"Stands for \\\"host + language\\\". Specifies the localization language of the metadata to be filled + into snippet.localized. The field is filled with the default metadata if there + is no localization in the specified language. The parameter value must be + a language code included in the list returned by the i18nLanguages.list method + (e.g. en_US, es_MX).\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"maxHeight\": {\n \"minimum\": + \"72\",\n \"format\": \"int32\",\n \"maximum\": + \"8192\",\n \"location\": \"query\",\n \"type\": + \"integer\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"locale\": {\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"required\": + true,\n \"location\": \"query\",\n \"repeated\": + true\n },\n \"maxResults\": {\n \"type\": + \"integer\",\n \"maximum\": \"50\",\n \"location\": + \"query\",\n \"description\": \"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.\",\n + \ \"default\": \"5\",\n \"format\": \"uint32\",\n + \ \"minimum\": \"1\"\n },\n \"regionCode\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true,\n \"description\": - \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"description\": \"Use a chart that is specific to the specified + region\"\n },\n \"videoCategoryId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Use chart that is specific to the specified video category\",\n \"default\": + \"0\"\n },\n \"myRating\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n + \ \"description\": \"Return videos liked/disliked by the authenticated + user. Does not support RateType.RATED_TYPE_NONE.\"\n },\n \"maxWidth\": + {\n \"maximum\": \"8192\",\n \"description\": \"Return + the player with maximum height specified in\",\n \"location\": + \"query\",\n \"minimum\": \"72\",\n \"format\": + \"int32\",\n \"type\": \"integer\"\n },\n \"id\": + {\n \"repeated\": true,\n \"description\": \"Return + videos with the given ids.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"chart\": {\n \"type\": + \"string\",\n \"description\": \"Return the videos that are in + the specified chart.\",\n \"location\": \"query\",\n \"enum\": + [\n \"chartUnspecified\",\n \"mostPopular\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"Return the most popular videos for the specified content + region and video category.\"\n ]\n }\n },\n + \ \"id\": \"youtube.videos.list\",\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"VideoListResponse\"\n },\n \"path\": \"youtube/v3/videos\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.playlistItems.insert\"\n },\n \"update\": - {\n \"path\": \"youtube/v3/playlistItems\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"flatPath\": \"youtube/v3/videos\"\n },\n \"rate\": + {\n \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n + \ \"id\",\n \"rating\"\n ],\n \"description\": + \"Adds a like or dislike rating to a video or removes a rating from a video.\",\n + \ \"parameters\": {\n \"rating\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n + \ \"required\": true\n },\n \"id\": {\n + \ \"type\": \"string\",\n \"required\": true,\n \"location\": + \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/videos/rate\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.videos.rate\",\n \"path\": + \"youtube/v3/videos/rate\"\n },\n \"insert\": {\n \"path\": + \"youtube/v3/videos\",\n \"httpMethod\": \"POST\",\n \"supportsMediaUpload\": + true,\n \"id\": \"youtube.videos.insert\",\n \"request\": + {\n \"$ref\": \"Video\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"mediaUpload\": {\n \"maxSize\": + \"274877906944\",\n \"accept\": [\n \"video/*\",\n + \ \"application/octet-stream\"\n ],\n \"protocols\": + {\n \"resumable\": {\n \"multipart\": true,\n + \ \"path\": \"/resumable/upload/youtube/v3/videos\"\n },\n + \ \"simple\": {\n \"multipart\": true,\n \"path\": + \"/upload/youtube/v3/videos\"\n }\n }\n },\n + \ \"response\": {\n \"$ref\": \"Video\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"parameters\": {\n \"stabilize\": {\n \"location\": + \"query\",\n \"description\": \"Should stabilize be applied to + the upload.\",\n \"type\": \"boolean\"\n },\n \"autoLevels\": + {\n \"location\": \"query\",\n \"description\": + \"Should auto-levels be applied to the upload.\",\n \"type\": + \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -11972,16 +12042,51 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.update\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"httpMethod\": \"PUT\"\n },\n \"delete\": {\n \"scopes\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"notifySubscribers\": {\n \"location\": + \"query\",\n \"default\": \"true\",\n \"type\": + \"boolean\",\n \"description\": \"Notify the channel subscribers + about the new video. As default, the notification is enabled.\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/videos\"\n }\n }\n + \ },\n \"channelSections\": {\n \"methods\": {\n \"list\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"path\": \"youtube/v3/channelSections\",\n + \ \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"Return the ChannelSections with + the given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n + \ \"location\": \"query\"\n },\n \"hl\": + {\n \"description\": \"Return content in specified language\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -11990,27 +12095,35 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"description\": - \"Deletes a resource.\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.playlistItems.delete\",\n \"httpMethod\": \"DELETE\"\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"maxResults\": - {\n \"location\": \"query\",\n \"minimum\": \"0\",\n - \ \"default\": \"5\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"type\": \"integer\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the playlist items within the given playlist.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"description\": + \"Return the ChannelSections owned by the specified channel ID.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true,\n \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"mine\": {\n \"location\": + \"query\",\n \"description\": \"Return the ChannelSections owned + by the authenticated user.\",\n \"type\": \"boolean\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/channelSections\",\n \"id\": + \"youtube.channelSections.list\",\n \"httpMethod\": \"GET\"\n },\n + \ \"update\": {\n \"path\": \"youtube/v3/channelSections\",\n + \ \"id\": \"youtube.channelSections.update\",\n \"response\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization @@ -12020,272 +12133,116 @@ interactions: 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.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n - \ },\n \"videoId\": {\n \"description\": - \"Return the playlist items associated with the given video ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true\n }\n - \ },\n \"id\": \"youtube.playlistItems.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"request\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"parameters\": {\n \"channelId\": {\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n }\n },\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/channelBanners/insert\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"maxSize\": \"6291456\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"id\": \"youtube.channelBanners.insert\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"supportsMediaUpload\": true,\n \"description\": \"Inserts - a new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"parameterOrder\": [],\n \"response\": {\n - \ \"$ref\": \"ChannelBannerResource\"\n }\n }\n - \ }\n },\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/i18nLanguages\",\n \"flatPath\": - \"youtube/v3/i18nLanguages\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.i18nLanguages.list\",\n \"response\": - {\n \"$ref\": \"I18nLanguageListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"hl\": {\n \"default\": - \"en_US\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the i18nLanguage resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"required\": - true,\n \"type\": \"string\"\n }\n }\n }\n - \ }\n },\n \"liveChatMessages\": {\n \"methods\": {\n \"list\": - {\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveChatMessageListResponse\"\n },\n \"parameters\": - {\n \"maxResults\": {\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"maximum\": \"2000\",\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"minimum\": \"200\",\n \"default\": \"500\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"part\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the liveChatComment resource parts that the API response - will include. Supported values are id and snippet.\",\n \"required\": - true\n },\n \"liveChatId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"The id of the live chat for which - comments should be returned.\"\n },\n \"profileImageSize\": - {\n \"minimum\": \"16\",\n \"type\": \"integer\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\",\n \"maximum\": \"720\",\n - \ \"location\": \"query\",\n \"format\": \"uint32\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the localization language in which - the system messages should be returned.\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/messages\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"id\": \"youtube.liveChatMessages.delete\",\n \"description\": - \"Deletes a chat message.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\"\n },\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveChatMessages.insert\",\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"request\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameters\": - {\n \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"id\": - \"youtube.thirdPartyLinks.update\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n }\n },\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the thirdPartyLink resource parts that the API response will include. Supported - values are linkingToken, status, and snippet.\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"linkingToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Get a third party link with the given linking - token.\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"description\": \"Get a third party link - of the given type.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ]\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.list\"\n },\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"linkingToken\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"Delete the partner links with the given linking token.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Do not use. Required for compatibility.\",\n - \ \"type\": \"string\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"description\": \"Type - of the link to be deleted.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"required\": - true,\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.thirdPartyLinks.delete\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": - \"DELETE\"\n },\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"ThirdPartyLink\"\n },\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the thirdPartyLink resource parts that the API request and response will include. - Supported values are linkingToken, status, and snippet.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ }\n },\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/thirdPartyLinks\"\n }\n - \ }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/search\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.search.list\",\n \"response\": {\n \"$ref\": - \"SearchListResponse\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of search resources\",\n - \ \"path\": \"youtube/v3/search\",\n \"parameters\": {\n - \ \"videoSyndicated\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos, syndicated or not.\",\n \"Only retrieve syndicated - videos.\"\n ],\n \"location\": \"query\",\n \"description\": - \"Filter on syndicated videos.\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ]\n },\n - \ \"videoDuration\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"description\": - \"Filter on the duration of the videos.\"\n },\n \"eventType\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Filter - on the livestream status of the videos.\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n - \ },\n \"videoDimension\": {\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Filter on 3d videos.\",\n \"enum\": - [\n \"any\",\n \"2d\",\n \"3d\"\n - \ ]\n },\n \"topicId\": {\n \"location\": - \"query\",\n \"description\": \"Restrict results to a particular - topic.\",\n \"type\": \"string\"\n },\n \"videoType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos.\",\n \"Only retrieve movies.\",\n \"Only - retrieve episodes of shows.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"videoTypeUnspecified\",\n \"any\",\n - \ \"movie\",\n \"episode\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Filter - on videos of a specific type.\"\n },\n \"onBehalfOfContentOwner\": + be linked to the specified YouTube content owner.\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"PUT\",\n \"description\": + \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ]\n },\n + \ \"delete\": {\n \"description\": \"Deletes a resource.\",\n + \ \"path\": \"youtube/v3/channelSections\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n }\n },\n \"id\": + \"youtube.channelSections.delete\",\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"DELETE\"\n },\n \"insert\": {\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"POST\",\n \"request\": {\n \"$ref\": \"ChannelSection\"\n + \ },\n \"id\": \"youtube.channelSections.insert\",\n \"flatPath\": + \"youtube/v3/channelSections\",\n \"response\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"path\": \"youtube/v3/channelSections\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n + \ \"part\": {\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"location\": + \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Inserts a new resource into this + collection.\"\n }\n }\n },\n \"playlistItems\": {\n \"methods\": + {\n \"insert\": {\n \"request\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true\n }\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Inserts a new resource into this + collection.\",\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n + \ },\n \"id\": \"youtube.playlistItems.insert\",\n \"httpMethod\": + \"POST\"\n },\n \"update\": {\n \"id\": \"youtube.playlistItems.update\",\n + \ \"path\": \"youtube/v3/playlistItems\",\n \"response\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameters\": + {\n \"part\": {\n \"required\": true,\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -12295,179 +12252,215 @@ interactions: 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.\",\n \"type\": - \"string\"\n },\n \"videoEmbeddable\": {\n \"enum\": - [\n \"videoEmbeddableUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"description\": - \"Filter on embeddable videos.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"location\": \"query\"\n },\n \"forDeveloper\": - {\n \"location\": \"query\",\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"regionCode\": {\n \"description\": \"Display the - content as seen by viewers in this country.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"relatedToVideoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Search related to a resource.\"\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"maximum\": \"50\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"minimum\": - \"0\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\"\n - \ },\n \"channelType\": {\n \"enum\": [\n - \ \"channelTypeUnspecified\",\n \"any\",\n \"show\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all channels.\",\n \"Only retrieve - shows.\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Add a filter on the channel search.\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"location\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on location of the video\",\n \"location\": \"query\"\n },\n - \ \"videoCaption\": {\n \"type\": \"string\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ],\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"location\": - \"query\"\n },\n \"forContentOwner\": {\n \"description\": - \"Search owned by a content owner.\",\n \"type\": \"boolean\",\n + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Updates an existing resource.\",\n + \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"request\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"httpMethod\": + \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ]\n + \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.playlistItems.delete\",\n + \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"path\": + \"youtube/v3/playlistItems\"\n },\n \"list\": {\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": + \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.list\",\n + \ \"path\": \"youtube/v3/playlistItems\",\n \"response\": + {\n \"$ref\": \"PlaylistItemListResponse\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"pageToken\": {\n + \ \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"minimum\": + \"0\",\n \"type\": \"integer\",\n \"maximum\": \"50\",\n + \ \"default\": \"5\",\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"videoId\": + {\n \"description\": \"Return the playlist items associated with + the given video ID.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"description\": \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true\n },\n \"playlistId\": {\n \"type\": + \"string\",\n \"description\": \"Return the playlist items within + the given playlist.\",\n \"location\": \"query\"\n }\n + \ }\n }\n }\n },\n \"subscriptions\": {\n \"methods\": + {\n \"insert\": {\n \"description\": \"Inserts a new resource + into this collection.\",\n \"response\": {\n \"$ref\": + \"Subscription\"\n },\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"type\": + \"string\",\n \"repeated\": true\n }\n },\n + \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.insert\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": + {\n \"$ref\": \"Subscription\"\n },\n \"httpMethod\": + \"POST\"\n },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n + \ \"id\": \"youtube.subscriptions.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"required\": + true\n }\n },\n \"description\": \"Deletes a + resource.\",\n \"path\": \"youtube/v3/subscriptions\",\n \"flatPath\": + \"youtube/v3/subscriptions\"\n },\n \"list\": {\n \"path\": + \"youtube/v3/subscriptions\",\n \"description\": \"Retrieves a list + of resources, possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.subscriptions.list\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"parameters\": + {\n \"mySubscribers\": {\n \"description\": \"Return + the subscribers of the given channel owner.\",\n \"type\": \"boolean\",\n \ \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"q\": - {\n \"location\": \"query\",\n \"description\": - \"Textual search terms to match.\",\n \"type\": \"string\"\n - \ },\n \"forMine\": {\n \"location\": \"query\",\n - \ \"description\": \"Search for the private videos of the authenticated - user.\",\n \"type\": \"boolean\"\n },\n \"order\": - {\n \"location\": \"query\",\n \"default\": \"relevance\",\n - \ \"type\": \"string\",\n \"description\": \"Sort - order of the results.\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ]\n },\n \"publishedAfter\": - {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n - \ \"description\": \"Filter on resources published after this - date.\",\n \"type\": \"string\"\n },\n \"videoCategoryId\": - {\n \"description\": \"Filter on videos in a specific category.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"videoDefinition\": {\n \"enum\": - [\n \"any\",\n \"standard\",\n \"high\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Return - all videos, regardless of their resolution.\",\n \"Only retrieve - videos in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"description\": \"Filter on the definition - of the videos.\"\n },\n \"videoLicense\": {\n \"description\": - \"Filter on the license of the videos.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"any\",\n \"youtube\",\n \"creativeCommon\"\n - \ ]\n },\n \"channelId\": {\n \"description\": - \"Filter on resources belonging to this channelId.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"publishedBefore\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on resources published before this - date.\",\n \"format\": \"google-datetime\"\n },\n - \ \"safeSearch\": {\n \"description\": \"Indicates - whether the search results should include restricted content as well as standard - content.\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"moderate\",\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ],\n \"location\": \"query\"\n - \ },\n \"locationRadius\": {\n \"location\": - \"query\",\n \"description\": \"Filter on distance from the location - (specified above).\",\n \"type\": \"string\"\n },\n - \ \"relevanceLanguage\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - results relevant to this language.\"\n },\n \"type\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"required\": true,\n \"description\": + \"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.\"\n },\n \"order\": {\n \"enum\": + [\n \"subscriptionOrderUnspecified\",\n \"relevance\",\n + \ \"unread\",\n \"alphabetical\"\n ],\n + \ \"description\": \"The order of the returned subscriptions\",\n + \ \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Sort by relevance.\",\n \"Sort + by order of activity.\",\n \"Sort alphabetically.\"\n ],\n + \ \"default\": \"relevance\",\n \"type\": \"string\"\n + \ },\n \"pageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n + \ \"location\": \"query\"\n },\n \"myRecentSubscribers\": + {\n \"type\": \"boolean\",\n \"location\": \"query\"\n + \ },\n \"mine\": {\n \"location\": \"query\",\n + \ \"type\": \"boolean\",\n \"description\": \"Flag + for returning the subscriptions of the authenticated user.\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"Return the subscriptions of the given channel owner.\",\n \"location\": + \"query\"\n },\n \"forChannelId\": {\n \"type\": + \"string\",\n \"description\": \"Return the subscriptions to + the subset of these channels that the authenticated user is subscribed to.\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"Restrict - results to a particular set of resource types from One Platform.\"\n }\n - \ }\n }\n }\n }\n },\n \"canonicalName\": \"YouTube\",\n - \ \"revision\": \"20230131\",\n \"basePath\": \"\",\n \"auth\": {\n \"oauth2\": - {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n }\n }\n }\n },\n \"description\": - \"The YouTube Data API v3 is an API that provides access to YouTube data, - such as videos, playlists, and channels.\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"parameters\": {\n \"uploadType\": {\n \"type\": \"string\",\n - \ \"description\": \"Legacy upload protocol for media (e.g. \\\"media\\\", - \\\"multipart\\\").\",\n \"location\": \"query\"\n },\n \"prettyPrint\": - {\n \"description\": \"Returns response with indentations and line breaks.\",\n + \ \"description\": \"*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.\"\n },\n \"maxResults\": {\n \"maximum\": + \"50\",\n \"minimum\": \"0\",\n \"location\": \"query\",\n + \ \"type\": \"integer\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"format\": \"uint32\",\n \"default\": + \"5\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"id\": {\n \"description\": + \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true\n }\n }\n }\n }\n }\n },\n \"ownerName\": + \"Google\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"canonicalName\": + \"YouTube\",\n \"batchPath\": \"batch\",\n \"kind\": \"discovery#restDescription\",\n + \ \"ownerDomain\": \"google.com\",\n \"fullyEncodeReservedExpansion\": true,\n + \ \"documentationLink\": \"https://developers.google.com/youtube/\",\n \"revision\": + \"20230307\",\n \"protocol\": \"rest\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n + \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n + \ },\n \"parameters\": {\n \"fields\": {\n \"description\": \"Selector + specifying which fields to include in a partial response.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"prettyPrint\": {\n \ \"default\": \"true\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"oauth_token\": {\n \"location\": \"query\",\n - \ \"description\": \"OAuth 2.0 token for the current user.\",\n \"type\": - \"string\"\n },\n \"alt\": {\n \"default\": \"json\",\n \"description\": - \"Data format for response.\",\n \"type\": \"string\",\n \"enum\": + \"query\",\n \"description\": \"Returns response with indentations and + line breaks.\"\n },\n \"callback\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"JSONP\"\n },\n + \ \"upload_protocol\": {\n \"location\": \"query\",\n \"description\": + \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": + \"string\"\n },\n \"uploadType\": {\n \"description\": \"Legacy + upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"oauth_token\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n \"description\": + \"OAuth 2.0 token for the current user.\"\n },\n \"$.xgafv\": {\n \"location\": + \"query\",\n \"enum\": [\n \"1\",\n \"2\"\n ],\n \"description\": + \"V1 error format.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"v1 error format\",\n \"v2 error format\"\n ]\n },\n + \ \"quotaUser\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n + \ \"location\": \"query\"\n },\n \"alt\": {\n \"location\": + \"query\",\n \"description\": \"Data format for response.\",\n \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n ],\n \"enumDescriptions\": [\n \"Responses with Content-Type of application/json\",\n \"Media download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"location\": \"query\"\n - \ },\n \"fields\": {\n \"location\": \"query\",\n \"description\": - \"Selector specifying which fields to include in a partial response.\",\n - \ \"type\": \"string\"\n },\n \"quotaUser\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"access_token\": {\n \"description\": \"OAuth access token.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"callback\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"JSONP\"\n },\n \"$.xgafv\": {\n \"location\": \"query\",\n \"enum\": - [\n \"1\",\n \"2\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"V1 error format.\",\n \"enumDescriptions\": - [\n \"v1 error format\",\n \"v2 error format\"\n ]\n },\n - \ \"key\": {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"upload_protocol\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Upload protocol for - media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n }\n },\n \"name\": \"youtube\",\n - \ \"fullyEncodeReservedExpansion\": true,\n \"batchPath\": \"batch\",\n \"documentationLink\": - \"https://developers.google.com/youtube/\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"servicePath\": \"\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ }\n}\n" + Content-Type of application/x-protobuf\"\n ],\n \"type\": \"string\",\n + \ \"default\": \"json\"\n },\n \"key\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"access_token\": + {\n \"type\": \"string\",\n \"description\": \"OAuth access token.\",\n + \ \"location\": \"query\"\n }\n },\n \"version\": \"v3\"\n}\n" headers: Alt-Svc: - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 @@ -12478,7 +12471,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:47 GMT + - Thu, 09 Mar 2023 00:27:10 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: @@ -12538,7 +12531,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:47 GMT + - Thu, 09 Mar 2023 00:27:10 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: diff --git a/tests/cassettes/test_youtube/test_refetch_youtube_channels[None].yaml b/tests/cassettes/test_youtube/test_refetch_youtube_channels[None].yaml index e0665e4b..11a47cc5 100644 --- a/tests/cassettes/test_youtube/test_refetch_youtube_channels[None].yaml +++ b/tests/cassettes/test_youtube/test_refetch_youtube_channels[None].yaml @@ -10,3831 +10,25 @@ interactions: uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest response: body: - string: "{\n \"description\": \"The YouTube Data API v3 is an API that provides - access to YouTube data, such as videos, playlists, and channels.\",\n \"auth\": - {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n }\n }\n - \ }\n },\n \"servicePath\": \"\",\n \"basePath\": \"\",\n \"discoveryVersion\": - \"v1\",\n \"title\": \"YouTube Data API v3\",\n \"name\": \"youtube\",\n - \ \"version\": \"v3\",\n \"schemas\": {\n \"LiveStreamSnippet\": {\n \"type\": - \"object\",\n \"id\": \"LiveStreamSnippet\",\n \"properties\": {\n - \ \"title\": {\n \"description\": \"The stream's title. The - value must be between 1 and 128 characters long.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"isDefaultStream\": {\n \"type\": \"boolean\"\n - \ },\n \"description\": {\n \"description\": \"The stream's - description. The value cannot be longer than 10000 characters.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the stream was created.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is transmitting the stream.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoCategory\": {\n \"type\": \"object\",\n - \ \"description\": \"A *videoCategory* resource identifies a category - that has been or could be associated with uploaded videos.\",\n \"id\": - \"VideoCategory\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoCategory\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video category, including its title.\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video category.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ImageSettings\": {\n \"id\": - \"ImageSettings\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"bannerTvHighImageUrl\": {\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\",\n \"type\": \"string\"\n - \ },\n \"watchIconImageUrl\": {\n \"type\": \"string\"\n - \ },\n \"bannerMobileImageUrl\": {\n \"description\": - \"Banner image. Mobile size (640x175).\",\n \"type\": \"string\"\n - \ },\n \"bannerTvImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. TV size extra high resolution (2120x1192).\"\n - \ },\n \"bannerTvLowImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. TV size low resolution (854x480).\"\n - \ },\n \"smallBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 640px - by 70px banner image that appears below the video player in the default view - of the video watch page. The URL for the image that appears above the top-left - corner of the video player. This is a 25-pixel-high image with a flexible - width that cannot exceed 170 pixels.\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"bannerImageUrl\": - {\n \"description\": \"Banner image. Desktop size (1060x175).\",\n - \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"trackingImageUrl\": - {\n \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"bannerTabletLowImageUrl\": {\n \"description\": \"Banner - image. Tablet size low resolution (1138x188).\",\n \"type\": \"string\"\n - \ },\n \"bannerTvMediumImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. TV size medium resolution (1280x720).\"\n - \ },\n \"bannerExternalUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerTabletImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Branding properties for images associated with the channel.\"\n },\n - \ \"ContentRating\": {\n \"id\": \"ContentRating\",\n \"type\": - \"object\",\n \"properties\": {\n \"mpaaRating\": {\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"type\": - \"string\",\n \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n - \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n - \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n - \ \"! X\",\n \"\"\n ]\n },\n \"nkclvRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"7+\",\n \"12+\",\n \"! - 16+\",\n \"18+\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Nacion\xE3lais Kino centrs (National Film Centre - of Latvia).\",\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ]\n },\n \"rteRating\": {\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"rteUnspecified\",\n - \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n - \ \"rteUnrated\"\n ]\n },\n \"nfvcbRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Nigeria's National Film and Video Censors Board.\",\n \"enum\": - [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n \"nfvcbPg\",\n - \ \"nfvcb12\",\n \"nfvcb12a\",\n \"nfvcb15\",\n - \ \"nfvcb18\",\n \"nfvcbRe\",\n \"nfvcbUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"18\",\n \"RE\",\n \"\"\n ]\n - \ },\n \"rcnofRating\": {\n \"description\": \"The video's - rating from the Hungarian Nemzeti Filmiroda, the Rating Committee of the National - Office of Film.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ]\n },\n \"ecbmctRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n - \ \"ecbmct7a\",\n \"ecbmct7plus\",\n \"ecbmct13a\",\n - \ \"ecbmct13plus\",\n \"ecbmct15a\",\n \"ecbmct15plus\",\n - \ \"ecbmct18plus\",\n \"ecbmctUnrated\"\n ],\n - \ \"description\": \"Rating system in Turkey - Evaluation and Classification - Board of the Ministry of Culture and Tourism\"\n },\n \"fmocRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"E\",\n \"\"\n ],\n - \ \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ],\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\"\n },\n \"mccaaRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG\",\n \"12A\",\n \"12\",\n - \ \"14 - this rating was removed from the new classification structure - introduced in 2013.\",\n \"15\",\n \"16 - this rating - was removed from the new classification structure introduced in 2013.\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ]\n },\n \"mocRating\": - {\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"type\": - \"string\"\n },\n \"ilfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Israel.\",\n \"type\": \"string\"\n },\n - \ \"smsaRating\": {\n \"enum\": [\n \"smsaUnspecified\",\n - \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n - \ \"smsa15\",\n \"smsaUnrated\"\n ],\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"All ages\",\n \"7\",\n \"11\",\n \"15\",\n - \ \"\"\n ]\n },\n \"mdaRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Singapore's - Media Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ]\n },\n \"czfilmRating\": - {\n \"description\": \"The video's rating in the Czech Republic.\",\n - \ \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n - \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n - \ \"czfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"rtcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"description\": \"The video's General Directorate - of Radio, Television and Cinematography (Mexico) rating.\",\n \"enum\": - [\n \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ]\n },\n \"skfilmRating\": - {\n \"description\": \"The video's rating in Slovakia.\",\n \"enum\": - [\n \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n - \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ]\n },\n \"cbfcRating\": - {\n \"description\": \"The video's Central Board of Film Certification - (CBFC - India) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"U/A\",\n \"U/A 7+\",\n \"U/A - 13+\",\n \"U/A 16+\",\n \"A\",\n \"S\",\n - \ \"\"\n ],\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"agcomRating\": {\n \"enum\": [\n - \ \"agcomUnspecified\",\n \"agcomT\",\n \"agcomVm14\",\n - \ \"agcomVm18\",\n \"agcomUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\"\n },\n \"medietilsynetRating\": {\n \"description\": - \"The video's rating from Medietilsynet, the Norwegian Media Authority.\",\n - \ \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ]\n },\n \"mcstRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - system for Vietnam - MCST\"\n },\n \"fpbRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X18\",\n - \ \"XX\",\n \"\",\n \"10\"\n ],\n - \ \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ]\n },\n \"nbcplRating\": {\n \"description\": - \"The video's rating in Poland.\",\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"kfcbRating\": {\n \"description\": \"The video's rating - from the Kenya Film Classification Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"chfilmRating\": - {\n \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n - \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n - \ \"chfilm18\",\n \"chfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating in Switzerland.\"\n },\n \"kmrbRating\": {\n \"enum\": - [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\"\n },\n \"cncRating\": - {\n \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"description\": \"Rating system - in France - Commission de classification cinematographique\"\n },\n - \ \"cceRating\": {\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ],\n \"description\": \"The video's - rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"4\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\",\n \"14\"\n ],\n \"type\": \"string\"\n - \ },\n \"djctqRatingReasons\": {\n \"items\": {\n \"enum\": - [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Brazil - rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia - (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n - \ \"Conte\xFAdo sexual (Sexual content)\",\n \"Nudez - (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo Expl\xEDcito - (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ]\n },\n \"description\": \"Reasons - that explain why the video received its DJCQT (Brazil) rating.\",\n \"type\": - \"array\"\n },\n \"cccRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Consejo de Calificaci\xF3n - Cinematogr\xE1fica (Chile) rating.\",\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ]\n },\n \"incaaRating\": {\n \"enum\": [\n - \ \"incaaUnspecified\",\n \"incaaAtp\",\n \"incaaSam13\",\n - \ \"incaaSam16\",\n \"incaaSam18\",\n \"incaaC\",\n - \ \"incaaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's INCAA (Instituto Nacional de Cine - y Artes Audiovisuales - Argentina) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ]\n },\n \"pefilmRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in Peru.\"\n },\n \"smaisRating\": {\n - \ \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\"\n - \ },\n \"kijkwijzerRating\": {\n \"description\": \"The - video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de Classificatie - van Audiovisuele Media (Netherlands).\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n \"kijkwijzer6\",\n - \ \"kijkwijzer9\",\n \"kijkwijzer12\",\n \"kijkwijzer16\",\n - \ \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n ]\n - \ },\n \"ifcoRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\",\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"nmcRating\": - {\n \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ],\n \"description\": \"The - National Media Council ratings system for United Arab Emirates.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"catvfrRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"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.\",\n \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ]\n },\n \"bmukkRating\": {\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ]\n },\n \"eefilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Estonia.\",\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ]\n },\n \"chvrsRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Canadian Home Video Rating System - (CHVRS) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"14A\",\n \"18A\",\n - \ \"R\",\n \"E\",\n \"\"\n ],\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ]\n },\n - \ \"anatelRating\": {\n \"description\": \"The video's Anatel - (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n - \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n - \ ],\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ]\n },\n - \ \"lsfRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"SU\",\n \"A\",\n \"BO\",\n \"13\",\n - \ \"R\",\n \"17\",\n \"D\",\n \"21\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Indonesia's Lembaga Sensor Film.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n - \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n - \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ]\n },\n \"mekuRating\": {\n \"enum\": [\n - \ \"mekuUnspecified\",\n \"mekuS\",\n \"meku7\",\n - \ \"meku12\",\n \"meku16\",\n \"meku18\",\n - \ \"mekuUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual - Institute).\"\n },\n \"cscfRating\": {\n \"enum\": - [\n \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n - \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"description\": \"The video's rating from Luxembourg's - Commission de surveillance de la classification des films (CSCF).\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"catvRating\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"enum\": - [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"C\",\n - \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n - \ \"18+\",\n \"\",\n \"\"\n ]\n },\n - \ \"acbRating\": {\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"acbUnspecified\",\n - \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n - \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n - \ \"acbR18plus\",\n \"acbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ]\n },\n \"icaaRating\": {\n \"description\": - \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales - (ICAA - Spain) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n - \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n - \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ]\n },\n - \ \"resorteviolenciaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in Venezuela.\",\n - \ \"enum\": [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ]\n },\n \"bfvcRating\": {\n \"enum\": [\n - \ \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Thailand's Board of Film and Video Censors.\"\n },\n \"cnaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\",\n \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ]\n },\n \"egfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating in Egypt.\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ]\n },\n \"mtrcbRating\": - {\n \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n - \ \"X\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Movie and Television - Review and Classification Board (Philippines).\"\n },\n \"nfrcRating\": - {\n \"enum\": [\n \"nfrcUnspecified\",\n \"nfrcA\",\n - \ \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n - \ \"nfrcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Bulgarian - National Film Center.\"\n },\n \"fcbmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"enum\": - [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"bbfcRating\": {\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ],\n \"description\": \"The video's British - Board of Film Classification (BBFC) rating.\",\n \"type\": \"string\"\n - \ },\n \"fcoRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Hong Kong's Office for - Film, Newspaper and Article Administration.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ]\n },\n - \ \"eirinRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG-12\",\n \"R15+\",\n \"R18+\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ],\n \"description\": \"The video's Eirin (\u6620\u502B) - rating. Eirin is the Japanese rating system.\"\n },\n \"cicfRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n - \ ],\n \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n - \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Commission - de Contr\xF4le des Films (Belgium).\"\n },\n \"mccypRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ]\n },\n - \ \"nbcRating\": {\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n - \ \"18+R\",\n \"PU\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Maldives National - Bureau of Classification.\"\n },\n \"moctwRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ],\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n - \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ]\n },\n \"tvpgRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"description\": \"The - video's TV Parental Guidelines (TVPG) rating.\",\n \"type\": \"string\"\n - \ },\n \"ytRating\": {\n \"enum\": [\n \"ytUnspecified\",\n - \ \"ytAgeRestricted\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"A rating that YouTube uses to identify - age-restricted content.\"\n },\n \"russiaRating\": {\n \"description\": - \"The video's National Film Registry of the Russian Federation (MKRF - Russia) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"russiaUnspecified\",\n \"russia0\",\n \"russia6\",\n - \ \"russia12\",\n \"russia16\",\n \"russia18\",\n - \ \"russiaUnrated\"\n ]\n },\n \"mibacRating\": - {\n \"description\": \"The video's rating from the Ministero dei - Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"oflcRating\": {\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ]\n },\n \"menaMpaaRating\": - {\n \"enum\": [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n - \ \"menaMpaaPg\",\n \"menaMpaaPg13\",\n \"menaMpaaR\",\n - \ \"menaMpaaUnrated\"\n ],\n \"description\": - \"The rating system for MENA countries, a clone of MPAA. It is needed to prevent - titles go live w/o additional QC check, since some of them can be inappropriate - for the countries at all. See b/33408548 for more details.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ],\n \"type\": \"string\"\n },\n - \ \"djctqRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's Departamento de Justi\xE7a, - Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n - \ \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ]\n },\n \"grfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n - \ \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n - \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n - \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n - \ \"grfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Greece.\"\n },\n - \ \"fskRating\": {\n \"enum\": [\n \"fskUnspecified\",\n - \ \"fsk0\",\n \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n - \ \"fsk18\",\n \"fskUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle - der Filmwirtschaft (FSK - Germany) rating.\",\n \"type\": \"string\"\n - \ },\n \"csaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, - which rates broadcast content.\",\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ]\n },\n \"mpaatRating\": {\n \"description\": - \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GB\",\n \"RB\"\n ]\n - \ },\n \"fpbRatingReasons\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"South Africa rating content descriptors.\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"description\": \"Reasons that explain why the video received its - FPB (South Africa) rating.\"\n }\n },\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\"\n },\n \"CommentThreadReplies\": {\n \"id\": - \"CommentThreadReplies\",\n \"type\": \"object\",\n \"description\": - \"Comments written in (direct or indirect) reply to the top level comment.\",\n - \ \"properties\": {\n \"comments\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"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.\"\n }\n }\n - \ },\n \"ThumbnailDetails\": {\n \"id\": \"ThumbnailDetails\",\n - \ \"description\": \"Internal representation of thumbnails for a YouTube - resource.\",\n \"properties\": {\n \"maxres\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The maximum resolution quality - image for this resource.\"\n },\n \"standard\": {\n \"description\": - \"The standard quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"high\": {\n \"description\": \"The high quality - image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"medium\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The medium quality image for this resource.\"\n },\n \"default\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The default - image for this resource.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageAuthorDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageAuthorDetails\",\n \"properties\": {\n - \ \"isChatSponsor\": {\n \"description\": \"Whether the author - is a sponsor of the live chat.\",\n \"type\": \"boolean\"\n },\n - \ \"isVerified\": {\n \"description\": \"Whether the author's - identity has been verified by YouTube.\",\n \"type\": \"boolean\"\n - \ },\n \"isChatModerator\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author is a moderator of the live - chat.\"\n },\n \"isChatOwner\": {\n \"description\": - \"Whether the author is the owner of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube channel ID.\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n },\n - \ \"channelUrl\": {\n \"description\": \"The channel's URL.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"properties\": {\n \"reason\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The reason that the resource is - recommended to the user.\",\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ],\n \"type\": \"string\"\n },\n \"seedResourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The seedResourceId - object contains information about the resource that caused the recommendation.\"\n - \ },\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the recommended resource.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Information that identifies the recommended resource.\",\n - \ \"id\": \"ActivityContentDetailsRecommendation\"\n },\n \"ChannelBannerResource\": - {\n \"id\": \"ChannelBannerResource\",\n \"description\": \"A channel - banner returned as the response to a channel_banner.insert call.\",\n \"properties\": - {\n \"url\": {\n \"type\": \"string\",\n \"description\": - \"The URL of this banner image.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\"\n },\n \"etag\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageSnippet\": {\n \"description\": \"Next ID: - 33\",\n \"id\": \"LiveChatMessageSnippet\",\n \"properties\": {\n - \ \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"memberMilestoneChatDetails\": {\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\",\n \"description\": \"Details - about the Member Milestone Chat event, this is only set if the type is 'memberMilestoneChatEvent'.\"\n - \ },\n \"superChatDetails\": {\n \"description\": \"Details - about the Super Chat event, this is only set if the type is 'superChatEvent'.\",\n - \ \"$ref\": \"LiveChatSuperChatDetails\"\n },\n \"newSponsorDetails\": - {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": - \"Details about the New Member Announcement event, this is only set if the - type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term - for \\\"sponsor\\\".\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"liveChatId\": {\n \"type\": - \"string\"\n },\n \"displayMessage\": {\n \"description\": - \"Contains a string that can be displayed to the user. If this field is not - present the message is silent, at the moment only messages of type TOMBSTONE - and CHAT_ENDED_EVENT are silent.\",\n \"type\": \"string\"\n },\n - \ \"giftMembershipReceivedDetails\": {\n \"description\": \"Details - about the Gift Membership Received event, this is only set if the type is - 'giftMembershipReceivedEvent'.\",\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"hasDisplayContent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the message has display content that - should be displayed to users.\"\n },\n \"fanFundingEventDetails\": - {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n - \ },\n \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"authorChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\"\n },\n \"superStickerDetails\": {\n - \ \"$ref\": \"LiveChatSuperStickerDetails\",\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"textMessageDetails\": {\n \"$ref\": \"LiveChatTextMessageDetails\",\n - \ \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the message was orignally published.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"enum\": [\n \"invalidType\",\n - \ \"textMessageEvent\",\n \"tombstone\",\n \"fanFundingEvent\",\n - \ \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatMessage\": {\n \"type\": - \"object\",\n \"description\": \"A *liveChatMessage* resource represents - a chat message in a YouTube Live Chat.\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the message.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveChatMessageSnippet\",\n \"description\": - \"The snippet object contains basic details about the message.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatMessage\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"authorDetails\": {\n \"description\": \"The - authorDetails object contains basic details about the user that posted this - message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n }\n - \ },\n \"id\": \"LiveChatMessage\"\n },\n \"LiveBroadcastListResponse\": - {\n \"id\": \"LiveBroadcastListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"items\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"description\": \"A list of broadcasts - that match the request criteria.\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveBroadcastListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"VideoStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"embeddable\": {\n \"type\": \"boolean\",\n \"description\": - \"This value indicates if the video can be embedded on another website. @mutable - youtube.videos.insert youtube.videos.update\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"uploadStatus\": - {\n \"description\": \"The status of the uploaded video.\",\n \"enum\": - [\n \"uploaded\",\n \"processed\",\n \"failed\",\n - \ \"rejected\",\n \"deleted\"\n ],\n \"enumDescriptions\": - [\n \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"type\": - \"string\"\n },\n \"privacyStatus\": {\n \"description\": - \"The video's privacy status.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"rejectionReason\": - {\n \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ],\n \"description\": - \"This value explains why YouTube rejected an uploaded video. This property - is only present if the uploadStatus property indicates that the upload was - rejected.\",\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"type\": \"string\"\n - \ },\n \"license\": {\n \"type\": \"string\",\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ]\n },\n \"publishAt\": {\n \"description\": - \"The date and time when the video is scheduled to publish. It can be set - only if the privacy status of the video is private..\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"failureReason\": - {\n \"description\": \"This value explains why a video failed to - upload. This property is only present if the uploadStatus property indicates - that the upload failed.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ],\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ]\n }\n - \ },\n \"id\": \"VideoStatus\",\n \"description\": \"Basic details - about a video category, such as its localized title. Next Id: 18\"\n },\n - \ \"MemberSnippet\": {\n \"id\": \"MemberSnippet\",\n \"type\": - \"object\",\n \"properties\": {\n \"creatorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the channel that's offering - memberships.\"\n },\n \"memberDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - member.\"\n },\n \"membershipsDetails\": {\n \"$ref\": - \"MembershipsDetails\",\n \"description\": \"Details about the user's - membership.\"\n }\n }\n },\n \"VideoGetRatingResponse\": - {\n \"id\": \"VideoGetRatingResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"VideoRating\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of ratings that match the - request criteria.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#videoGetRatingResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"SuperChatEvent\": - {\n \"properties\": {\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n },\n \"kind\": {\n \"default\": - \"youtube#superChatEvent\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the Super Chat event.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"SuperChatEvent\",\n \"type\": \"object\",\n \"description\": \"A - `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\"\n },\n \"Video\": {\n \"id\": \"Video\",\n \"description\": - \"A *video* resource represents a YouTube video.\",\n \"properties\": - {\n \"recordingDetails\": {\n \"$ref\": \"VideoRecordingDetails\",\n - \ \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\"\n },\n - \ \"monetizationDetails\": {\n \"$ref\": \"VideoMonetizationDetails\",\n - \ \"description\": \"The monetizationDetails object encapsulates information - about the monetization status of the video.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"VideoContentDetails\",\n \"description\": - \"The contentDetails object contains information about the video content, - including the length of the video and its aspect ratio.\"\n },\n \"topicDetails\": - {\n \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n - \ },\n \"ageGating\": {\n \"description\": \"Age restriction - details related to a video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoAgeGating\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#video\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#video\"\n },\n \"fileDetails\": - {\n \"description\": \"The fileDetails object encapsulates information - about the video file that was uploaded to YouTube, including the file's resolution, - duration, audio and video codecs, stream bitrates, and more. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n - \ },\n \"player\": {\n \"$ref\": \"VideoPlayer\",\n - \ \"description\": \"The player object contains information that you - would use to play the video in an embedded player.\"\n },\n \"processingDetails\": - {\n \"$ref\": \"VideoProcessingDetails\",\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\"\n - \ },\n \"projectDetails\": {\n \"$ref\": \"VideoProjectDetails\",\n - \ \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the video's uploading, processing, and privacy statuses.\",\n \"$ref\": - \"VideoStatus\"\n },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"VideoLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video, such as its title, - description, and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n - \ \"suggestions\": {\n \"description\": \"The suggestions object - encapsulates suggestions that identify opportunities to improve the video - quality or the metadata for the uploaded video. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n },\n - \ \"liveStreamingDetails\": {\n \"$ref\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\"\n },\n - \ \"statistics\": {\n \"$ref\": \"VideoStatistics\",\n \"description\": - \"The statistics object contains statistics about the video.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoAbuseReportReasonListResponse\": {\n \"id\": - \"VideoAbuseReportReasonListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The `visitorId` identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of valid abuse reasons that - are used with `video.ReportAbuse`.\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n }\n }\n },\n \"type\": - \"object\"\n },\n \"LiveBroadcastStatus\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"lifeCycleStatus\": {\n \"description\": - \"The broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ]\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"description\": - \"This field will be set to True if the creator declares the broadcast to - be kids only: go/live-cw-work.\",\n \"type\": \"boolean\"\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the broadcast is made for kids or not, decided by YouTube instead - of the creator. This field is read only.\"\n },\n \"recordingStatus\": - {\n \"enumDescriptions\": [\n \"No value or the value - is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"description\": - \"The broadcast's recording status.\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"type\": \"string\"\n },\n \"liveBroadcastPriority\": - {\n \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"enum\": - [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ]\n },\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - privacy status. Note that the broadcast represents exactly one YouTube video, - so the privacy settings are identical to those supported for videos. In addition, - you can set this field by modifying the broadcast resource or by setting the - privacyStatus field of the corresponding video resource.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"description\": - \"Live broadcast state.\",\n \"id\": \"LiveBroadcastStatus\"\n },\n - \ \"PlaylistStatus\": {\n \"type\": \"object\",\n \"id\": \"PlaylistStatus\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The playlist's privacy status.\"\n }\n }\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"properties\": {\n \"amountMicros\": {\n \"description\": - \"The amount of the fund.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the fund was made.\"\n },\n \"userComment\": {\n \"type\": - \"string\",\n \"description\": \"The comment added by the user to - this fan funding event.\"\n }\n },\n \"id\": \"LiveChatFanFundingEventDetails\",\n - \ \"type\": \"object\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n \"properties\": - {\n \"bannedUserDetails\": {\n \"description\": \"The details - of the user that was banned.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banType\": {\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ],\n \"description\": \"The - type of ban.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"banDurationSeconds\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The duration of the ban. This property is only present if the banType is - temporary.\"\n }\n },\n \"type\": \"object\"\n },\n \"SuperStickerMetadata\": - {\n \"type\": \"object\",\n \"id\": \"SuperStickerMetadata\",\n - \ \"properties\": {\n \"altTextLanguage\": {\n \"description\": - \"Specifies the localization language in which the alt text is returned.\",\n - \ \"type\": \"string\"\n },\n \"altText\": {\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\",\n \"type\": \"string\"\n },\n \"stickerId\": - {\n \"description\": \"Unique identifier of the Super Sticker. This - is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveChatTextMessageDetails\": {\n \"properties\": - {\n \"messageText\": {\n \"type\": \"string\",\n \"description\": - \"The user's message.\"\n }\n },\n \"id\": \"LiveChatTextMessageDetails\",\n - \ \"type\": \"object\"\n },\n \"VideoContentDetails\": {\n \"id\": - \"VideoContentDetails\",\n \"properties\": {\n \"duration\": {\n - \ \"description\": \"The length of the video. The tag value is an - ISO 8601 duration in the format PT#M#S, in which the letters PT indicate that - the value specifies a period of time, and the letters M and S refer to length - in minutes and seconds, respectively. The # characters preceding the M and - S letters are both integers that specify the number of minutes (or seconds) - of the video. For example, a value of PT15M51S indicates that the video is - 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n },\n - \ \"dimension\": {\n \"description\": \"The value of dimension - indicates whether the video is available in 3D or in 2D.\",\n \"type\": - \"string\"\n },\n \"countryRestriction\": {\n \"description\": - \"The countryRestriction object contains information about the countries where - a video is (or is not) viewable.\",\n \"$ref\": \"AccessPolicy\"\n - \ },\n \"regionRestriction\": {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\"\n },\n \"definition\": - {\n \"description\": \"The value of definition indicates whether - the video is available in high definition or only in standard definition.\",\n - \ \"enum\": [\n \"sd\",\n \"hd\"\n ],\n - \ \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"type\": \"string\"\n },\n \"licensedContent\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of is_license_content indicates whether the video is licensed content.\"\n - \ },\n \"caption\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"The value of - captions indicates whether the video has captions or not.\",\n \"type\": - \"string\",\n \"enum\": [\n \"true\",\n \"false\"\n - \ ]\n },\n \"projection\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"description\": \"Specifies the projection format - of the video.\"\n },\n \"hasCustomThumbnail\": {\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n },\n \"contentRating\": {\n \"description\": - \"Specifies the ratings that the video received under various rating schemes.\",\n - \ \"$ref\": \"ContentRating\"\n }\n },\n \"description\": - \"Details about the content of a YouTube Video.\",\n \"type\": \"object\"\n - \ },\n \"ChannelStatistics\": {\n \"id\": \"ChannelStatistics\",\n - \ \"properties\": {\n \"videoCount\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of videos uploaded to the channel.\",\n - \ \"format\": \"uint64\"\n },\n \"hiddenSubscriberCount\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the number of subscribers is shown for this user.\"\n },\n \"commentCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of comments for the channel.\"\n },\n \"viewCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of times the channel has been viewed.\",\n \"type\": \"string\"\n - \ },\n \"subscriberCount\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of subscribers that the channel has.\",\n - \ \"format\": \"uint64\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Statistics about a channel: number of subscribers, - number of videos in the channel, etc.\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"properties\": {\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level at which the - viever is a member. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n },\n - \ \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the member to this Member Milestone Chat. This field - is empty for messages without a comment from the member.\"\n },\n \"memberMonth\": - {\n \"description\": \"The total amount of months (rounded up) the - viewer has been a member that granted them this Member Milestone Chat. This - is the same number of months as is being displayed to YouTube users.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n }\n - \ }\n },\n \"ActivityContentDetailsFavorite\": {\n \"description\": - \"Information about a video that was marked as a favorite video.\",\n \"id\": - \"ActivityContentDetailsFavorite\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource that was marked as - a favorite.\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"type\": \"object\",\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"properties\": {\n \"blocked\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the video is blocked. If this property is present and a country is not - listed in its value, then the video is viewable in that country. If this property - is present and contains an empty list, the video is viewable in all countries.\"\n - \ },\n \"allowed\": {\n \"description\": \"A list of - region codes that identify countries where the video is viewable. If this - property is present and a country is not listed in its value, then the video - is blocked from appearing in that country. If this property is present and - contains an empty list, the video is blocked in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"description\": \"DEPRECATED Region restriction - of the video.\"\n },\n \"PlaylistSnippet\": {\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails.\",\n - \ \"properties\": {\n \"thumbnailVideoId\": {\n \"description\": - \"Note: if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the playlist's default title and description.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The playlist's description.\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel title of the channel that the video - belongs to.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"description\": \"The playlist's title.\"\n },\n \"tags\": - {\n \"description\": \"Keyword tags associated with the playlist.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the playlist.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the playlist was created.\",\n \"format\": \"date-time\"\n - \ },\n \"localized\": {\n \"$ref\": \"PlaylistLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"PlaylistSnippet\"\n - \ },\n \"ActivityContentDetailsSubscription\": {\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"type\": \"object\",\n \"description\": \"Information about a - channel that a user subscribed to.\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that the user subscribed to.\",\n \"$ref\": - \"ResourceId\"\n }\n }\n },\n \"LiveChatBanSnippet\": {\n - \ \"id\": \"LiveChatBanSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banDurationSeconds\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The duration - of a ban, only filled if the ban has type TEMPORARY.\"\n },\n \"type\": - {\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of ban.\",\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ]\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The chat - this ban is pertinent to.\"\n }\n }\n },\n \"VideoFileDetailsAudioStream\": - {\n \"id\": \"VideoFileDetailsAudioStream\",\n \"description\": - \"Information about an audio stream.\",\n \"properties\": {\n \"codec\": - {\n \"description\": \"The audio codec that the stream uses.\",\n - \ \"type\": \"string\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"bitrateBps\": {\n \"format\": \"uint64\",\n \"description\": - \"The audio stream's bitrate, in bits per second.\",\n \"type\": - \"string\"\n },\n \"channelCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The number - of audio channels that the stream contains.\"\n }\n },\n \"type\": - \"object\"\n },\n \"RelatedEntity\": {\n \"type\": \"object\",\n - \ \"id\": \"RelatedEntity\",\n \"properties\": {\n \"entity\": - {\n \"$ref\": \"Entity\"\n }\n }\n },\n \"SearchListResponse\": - {\n \"id\": \"SearchListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"default\": \"youtube#searchListResponse\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"regionCode\": {\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"items\": {\n \"description\": \"Pagination - information for token pagination.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SearchResult\"\n }\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"VideoMonetizationDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"Details about monetization of a YouTube Video.\",\n - \ \"properties\": {\n \"access\": {\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\",\n - \ \"$ref\": \"AccessPolicy\"\n }\n },\n \"id\": \"VideoMonetizationDetails\"\n - \ },\n \"ActivityContentDetailsUpload\": {\n \"description\": \"Information - about the uploaded video.\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the uploaded video.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsUpload\"\n - \ },\n \"ActivityContentDetailsSocial\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsSocial\",\n \"description\": \"Details - about a social network post.\",\n \"properties\": {\n \"author\": - {\n \"description\": \"The author of the social network post.\",\n - \ \"type\": \"string\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"referenceUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL of the social network post.\"\n },\n - \ \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"An image of the post's author.\"\n },\n \"type\": {\n \"description\": - \"The name of the social network.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ]\n }\n }\n },\n \"ChannelAuditDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n }\n },\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\",\n \"id\": \"ChannelAuditDetails\"\n - \ },\n \"LiveChatModeratorSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"moderatorDetails\": {\n \"description\": - \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the live chat this moderator can act on.\"\n }\n },\n - \ \"id\": \"LiveChatModeratorSnippet\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"description\": - \"Basic details about a video category, such as its localized title.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"secondaryReasons\": - {\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"description\": \"The secondary reasons associated - with this reason, if any are available. (There might be 0 or more.)\",\n \"type\": - \"array\"\n },\n \"label\": {\n \"description\": \"The - localized label belonging to this abuse report reason.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelConversionPings\": {\n - \ \"properties\": {\n \"pings\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ },\n \"description\": \"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.\"\n }\n },\n \"id\": - \"ChannelConversionPings\",\n \"type\": \"object\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\"\n },\n \"ThirdPartyLinkSnippet\": - {\n \"properties\": {\n \"type\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A link - that is connecting (or about to connect) a channel with a store on a merchandising - platform in order to enable retail commerce capabilities for that channel - on YouTube.\"\n ],\n \"description\": \"Type of the link - named after the entities that are being linked.\",\n \"enum\": [\n - \ \"linkUnspecified\",\n \"channelToStoreLink\"\n ]\n - \ },\n \"channelToStoreLink\": {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n - \ \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"Basic information about a third party account link, including its type and - type-specific information.\"\n },\n \"VideoPlayer\": {\n \"id\": - \"VideoPlayer\",\n \"type\": \"object\",\n \"description\": \"Player - to be used for a video playback.\",\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\"\n },\n \"embedWidth\": - {\n \"type\": \"string\",\n \"description\": \"The embed - width\",\n \"format\": \"int64\"\n },\n \"embedHeight\": - {\n \"format\": \"int64\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"SearchResultSnippet\": {\n \"id\": \"SearchResultSnippet\",\n - \ \"description\": \"Basic details about a search result, including title, - description and thumbnails of the item referenced by the search result.\",\n - \ \"properties\": {\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The creation date and time of the resource that - the search result identifies.\",\n \"format\": \"date-time\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\"\n },\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"description\": \"It indicates if the resource (video - or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" - if there is not any upcoming/active live broadcasts.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the channel that published the resource - that the search result identifies.\"\n },\n \"description\": - {\n \"description\": \"A description of the search result.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the search result.\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"A map of thumbnail images associated with the search result. 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.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"properties\": {\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n },\n \"userComment\": - {\n \"description\": \"The comment added by the user to this Super - Chat event.\",\n \"type\": \"string\"\n },\n \"tier\": - {\n \"type\": \"integer\",\n \"description\": \"The tier - in which the amount belongs. Lower amounts belong to lower tiers. The lowest - tier is 1.\",\n \"format\": \"uint32\"\n },\n \"amountMicros\": - {\n \"format\": \"uint64\",\n \"description\": \"The amount - purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatSuperChatDetails\"\n - \ },\n \"VideoLiveStreamingDetails\": {\n \"properties\": {\n \"scheduledEndTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast is scheduled to end. - If the value is empty or the property is not present, then the broadcast is - scheduled to contiue indefinitely.\"\n },\n \"actualEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast actually ended. This - value will not be available until the broadcast is over.\"\n },\n \"concurrentViewers\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n },\n - \ \"actualStartTime\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The time that the broadcast actually - started. This value will not be available until the broadcast begins.\"\n - \ },\n \"scheduledStartTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast is scheduled to begin.\",\n - \ \"format\": \"date-time\"\n },\n \"activeLiveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the currently active live chat attached to this video. This field is filled - only if the video is a currently live broadcast that has live chat. Once the - broadcast transitions to complete this field will be removed and the live - chat closed down. For persistent broadcasts that live chat id will no longer - be tied to this video but rather to the new video being displayed at the persistent - page.\"\n }\n },\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Details about the live - streaming metadata.\"\n },\n \"ThumbnailSetResponse\": {\n \"id\": - \"ThumbnailSetResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"items\": {\n \"description\": \"A list of thumbnails.\",\n - \ \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"type\": \"array\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#thumbnailSetResponse\"\n }\n - \ }\n },\n \"AbuseReport\": {\n \"properties\": {\n \"relatedEntities\": - {\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n - \ \"type\": \"array\"\n },\n \"subject\": {\n \"$ref\": - \"Entity\"\n },\n \"abuseTypes\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"AbuseType\"\n }\n - \ },\n \"description\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"AbuseReport\"\n },\n - \ \"LiveChatMessageRetractedDetails\": {\n \"properties\": {\n \"retractedMessageId\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageRetractedDetails\"\n },\n \"InvideoTiming\": - {\n \"id\": \"InvideoTiming\",\n \"description\": \"Describes a - temporal position of a visual widget inside a video.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"durationMs\": {\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"offsetMs\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"description\": \"Describes a timing type. If the value is offsetFromStart, - then the offsetMs field represents an offset from the start of the video. - If the value is offsetFromEnd, then the offsetMs field represents an offset - from the end of the video.\"\n }\n }\n },\n \"MembershipsLevelSnippet\": - {\n \"properties\": {\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n },\n \"levelDetails\": {\n \"$ref\": \"LevelDetails\",\n - \ \"description\": \"Details about the pricing level.\"\n }\n - \ },\n \"id\": \"MembershipsLevelSnippet\",\n \"type\": \"object\"\n - \ },\n \"PlaylistItem\": {\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the playlist item.\"\n },\n \"contentDetails\": {\n - \ \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the playlist item's privacy status.\",\n - \ \"$ref\": \"PlaylistItemStatus\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the playlist item, such as its title and position in the playlist.\",\n - \ \"$ref\": \"PlaylistItemSnippet\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#playlistItem\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItem\\\".\"\n }\n },\n \"id\": - \"PlaylistItem\",\n \"description\": \"A *playlistItem* resource identifies - another resource, such as a video, that is included in a playlist. In addition, - the playlistItem resource contains details about the included resource that - pertain specifically to how that resource is used in that playlist. YouTube - uses playlists to identify special collections of videos for a channel, such - as: - uploaded videos - favorite videos - positively rated (liked) videos - - watch history - watch later To be more specific, these lists are associated - with a channel, which is a collection of a person, group, or company's videos, - playlists, and other YouTube information. You can retrieve the playlist IDs - for each of these lists from the channel resource for a given channel. You - can then use the playlistItems.list method to retrieve any of those lists. - You can also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods. For example, if a user gives a positive - rating to a video, you would insert that video into the liked videos playlist - for that user's channel.\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of this abuse report secondary reason.\"\n - \ },\n \"label\": {\n \"description\": \"The localized - label for this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"InvideoBranding\": {\n \"id\": \"InvideoBranding\",\n - \ \"description\": \"LINT.IfChange Describes an invideo branding.\",\n - \ \"properties\": {\n \"imageBytes\": {\n \"format\": - \"byte\",\n \"type\": \"string\",\n \"description\": \"The - bytes the uploaded image. Only used in api to youtube communication.\"\n },\n - \ \"timing\": {\n \"description\": \"The temporal position - within the video where watermark will be displayed.\",\n \"$ref\": - \"InvideoTiming\"\n },\n \"position\": {\n \"$ref\": - \"InvideoPosition\",\n \"description\": \"The spatial position within - the video where the branding watermark will be displayed.\"\n },\n - \ \"imageUrl\": {\n \"description\": \"The url of the uploaded - image. Only used in apiary to api communication.\",\n \"type\": \"string\"\n - \ },\n \"targetChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel to which this branding links. If - not present it defaults to the current channel.\"\n }\n },\n \"type\": - \"object\"\n },\n \"SubscriptionListResponse\": {\n \"id\": \"SubscriptionListResponse\",\n - \ \"properties\": {\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of subscriptions that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Subscription\"\n }\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n \"default\": - \"youtube#subscriptionListResponse\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveStreamListResponse\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamListResponse\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"default\": \"youtube#liveStreamListResponse\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of live streams that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n - \ }\n }\n }\n },\n \"LiveChatBan\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the ban.\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the ban.\",\n \"$ref\": - \"LiveChatBanSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatBan\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A `__liveChatBan__` resource represents a ban for - a YouTube live chat.\",\n \"id\": \"LiveChatBan\"\n },\n \"LiveStreamStatus\": - {\n \"description\": \"Brief description of the live stream status.\",\n - \ \"type\": \"object\",\n \"id\": \"LiveStreamStatus\",\n \"properties\": - {\n \"streamStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"healthStatus\": {\n \"description\": - \"The health status of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n - \ }\n }\n },\n \"VideoCategoryListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of video categories that can - be associated with YouTube videos. In this map, the video category ID is the - map key, and its value is the corresponding videoCategory resource.\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n }\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoCategoryListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n }\n - \ },\n \"id\": \"VideoCategoryListResponse\"\n },\n \"LiveBroadcast\": - {\n \"id\": \"LiveBroadcast\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"default\": \"youtube#liveBroadcast\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the broadcast.\"\n },\n \"statistics\": {\n \"$ref\": - \"LiveBroadcastStatistics\",\n \"description\": \"The statistics - object contains info about the event's current stats. These include concurrent - viewers and total chat count. Statistics can change (in either direction) - during the lifetime of an event. Statistics are only returned while the event - is live.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the event's status.\",\n \"$ref\": - \"LiveBroadcastStatus\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the event, including its title, description, start time, and end time.\",\n - \ \"$ref\": \"LiveBroadcastSnippet\"\n }\n },\n \"description\": - \"A *liveBroadcast* resource represents an event that will be streamed, via - live video, on YouTube.\"\n },\n \"PlaylistItemStatus\": {\n \"id\": - \"PlaylistItemStatus\",\n \"properties\": {\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"This resource's - privacy status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Information about the playlist item's privacy - status.\",\n \"type\": \"object\"\n },\n \"SubscriptionContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"activityType\": - {\n \"description\": \"The type of activity this subscription is - for (only uploads, everything).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ]\n },\n \"totalItemCount\": - {\n \"type\": \"integer\",\n \"description\": \"The approximate - number of items that the subscription points to.\",\n \"format\": - \"uint32\"\n },\n \"newItemCount\": {\n \"description\": - \"The number of new items in the subscription since its content was last read.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n }\n - \ },\n \"description\": \"Details about the content to witch a subscription - refers.\",\n \"id\": \"SubscriptionContentDetails\"\n },\n \"MembershipsDurationAtLevel\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsDurationAtLevel\",\n - \ \"properties\": {\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"description\": \"The cumulative time the user has - been a member for the given level in complete months (the time is rounded - down to the nearest integer).\",\n \"format\": \"int32\"\n },\n - \ \"level\": {\n \"description\": \"Pricing level ID.\",\n - \ \"type\": \"string\"\n },\n \"memberSince\": {\n \"description\": - \"The date and time when the user became a continuous member for the given - level.\",\n \"type\": \"string\"\n }\n }\n },\n \"VideoFileDetails\": - {\n \"id\": \"VideoFileDetails\",\n \"properties\": {\n \"audioStreams\": - {\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"description\": \"A list of audio streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about an audio stream.\",\n \"type\": \"array\"\n },\n \"container\": - {\n \"description\": \"The uploaded video file's container format.\",\n - \ \"type\": \"string\"\n },\n \"videoStreams\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n },\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\"\n },\n - \ \"bitrateBps\": {\n \"description\": \"The uploaded video - file's combined (video and audio) bitrate in bits per second.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"durationMs\": - {\n \"description\": \"The length of the uploaded video in milliseconds.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"creationTime\": {\n \"description\": \"The date and time - when the uploaded video file was created. The value is specified in ISO 8601 - format. Currently, the following ISO 8601 formats are supported: - Date only: - YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \",\n \"type\": \"string\"\n },\n \"fileSize\": {\n - \ \"format\": \"uint64\",\n \"description\": \"The uploaded - file's size in bytes. This field is present whether a video file or another - type of file was uploaded.\",\n \"type\": \"string\"\n },\n - \ \"fileName\": {\n \"description\": \"The uploaded file's - name. This field is present whether a video file or another type of file was - uploaded.\",\n \"type\": \"string\"\n },\n \"fileType\": - {\n \"description\": \"The uploaded file's type as detected by YouTube's - video processing engine. Currently, YouTube only processes video files, but - this field is present whether a video file or another type of file was uploaded.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"Known video - file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an MP3 - file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ]\n - \ }\n },\n \"description\": \"Describes original video file - properties, including technical details about audio and video streams, but - also metadata information like content length, digitization time, or geotagging - information.\",\n \"type\": \"object\"\n },\n \"PlaylistItemContentDetails\": - {\n \"properties\": {\n \"note\": {\n \"type\": \"string\",\n - \ \"description\": \"A user-generated note for this item.\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify a video. To retrieve the video resource, set the id query - parameter to this value in your API request.\",\n \"type\": \"string\"\n - \ },\n \"endAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\"\n - \ },\n \"videoPublishedAt\": {\n \"description\": \"The - date and time that the video was published to YouTube.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"startAt\": - {\n \"description\": \"The time, measured in seconds from the start - of the video, when the video should start playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) The default value is 0.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"PlaylistItemContentDetails\"\n },\n \"ChannelSettings\": {\n \"id\": - \"ChannelSettings\",\n \"properties\": {\n \"moderateComments\": - {\n \"description\": \"Whether user-submitted comments left on the - channel page need to be approved by the channel owner to be publicly visible.\",\n - \ \"type\": \"boolean\"\n },\n \"unsubscribedTrailer\": - {\n \"type\": \"string\",\n \"description\": \"The trailer - of the channel, for users that are not subscribers.\"\n },\n \"defaultTab\": - {\n \"type\": \"string\",\n \"description\": \"Which content - tab users should see when viewing the channel.\"\n },\n \"keywords\": - {\n \"type\": \"string\",\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\"\n },\n \"showBrowseView\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the tab to browse the videos should be displayed.\"\n },\n \"profileColor\": - {\n \"description\": \"A prominent color that can be rendered on - this channel page.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"Specifies the channel description.\",\n \"type\": - \"string\"\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"description\": \"Specifies the channel title.\",\n - \ \"type\": \"string\"\n },\n \"defaultLanguage\": {\n - \ \"type\": \"string\"\n },\n \"featuredChannelsTitle\": - {\n \"type\": \"string\",\n \"description\": \"Title for - the featured channels tab.\"\n },\n \"featuredChannelsUrls\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The list of featured - channels.\"\n },\n \"showRelatedChannels\": {\n \"description\": - \"Whether related channels should be proposed.\",\n \"type\": \"boolean\"\n - \ },\n \"trackingAnalyticsAccountId\": {\n \"type\": - \"string\",\n \"description\": \"The ID for a Google Analytics account - to track and measure traffic to the channels.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Branding properties for the channel - view.\"\n },\n \"Activity\": {\n \"description\": \"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.\",\n - \ \"id\": \"Activity\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"ActivitySnippet\",\n \"description\": \"The - snippet object contains basic details about the activity, including the activity's - type and group ID.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#activity\\\".\",\n \"default\": - \"youtube#activity\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ActivityContentDetails\",\n \"description\": \"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.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the activity.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelContentDetails\": - {\n \"id\": \"ChannelContentDetails\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"type\": \"object\",\n \"properties\": {\n \"watchLater\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch later playlist. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"uploads\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use - the videos.insert method to upload new videos and the videos.delete method - to delete previously uploaded videos.\",\n \"type\": \"string\"\n - \ },\n \"favorites\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"likes\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"watchHistory\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n }\n }\n }\n - \ },\n \"description\": \"Details about the content of a channel.\",\n - \ \"type\": \"object\"\n },\n \"LevelDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The name that should be used when - referring to this level.\"\n }\n },\n \"id\": \"LevelDetails\"\n - \ },\n \"Member\": {\n \"id\": \"Member\",\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the member.\",\n \"$ref\": - \"MemberSnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#member\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#member\\\".\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoSuggestions\": {\n - \ \"type\": \"object\",\n \"id\": \"VideoSuggestions\",\n \"description\": - \"Specifies suggestions on how to improve video content, including encoding - hints, tag suggestions, and editor suggestions.\",\n \"properties\": - {\n \"processingErrors\": {\n \"type\": \"array\",\n \"items\": - {\n \"enumDescriptions\": [\n \"File contains audio - only (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n - \ \"Movie project file (e.g., Microsoft Windows Movie Maker project).\",\n - \ \"Other non-video file.\",\n \"Document or text - file (e.g., MS Word document).\",\n \"An archive file (e.g., - a ZIP archive).\",\n \"Unsupported spatial audio layout type.\"\n - \ ],\n \"enum\": [\n \"audioFile\",\n \"imageFile\",\n - \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n - \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\"\n },\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\"\n },\n \"processingHints\": {\n \"description\": - \"A list of suggestions that may improve YouTube's ability to process the - video.\",\n \"items\": {\n \"enumDescriptions\": [\n \"The - MP4 file is not streamable, this will slow down the processing. MOOV atom - was not found at the beginning of the file.\",\n \"Probably a - better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"tagSuggestions\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoSuggestionsTagSuggestion\"\n },\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\"\n },\n \"processingWarnings\": {\n \"type\": - \"array\",\n \"description\": \"A list of reasons why YouTube may - have difficulty transcoding the uploaded video or that might result in an - erroneous transcoding. These warnings are generated before YouTube actually - processes the uploaded video file. In addition, they identify issues that - are unlikely to cause the video processing to fail but that might cause problems - such as sync issues, video artifacts, or a missing audio track.\",\n \"items\": - {\n \"enumDescriptions\": [\n \"Unrecognized file - format, transcoding is likely to fail.\",\n \"Unrecognized video - codec, transcoding is likely to fail.\",\n \"Unrecognized audio - codec, transcoding is likely to fail.\",\n \"Conflicting container - and stream resolutions.\",\n \"Edit lists are not currently supported.\",\n - \ \"Video codec that is known to cause problems was used.\",\n - \ \"Audio codec that is known to cause problems was used.\",\n - \ \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ]\n }\n },\n \"editorSuggestions\": {\n - \ \"items\": {\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ]\n },\n \"type\": \"array\",\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\"\n }\n }\n },\n - \ \"ChannelSectionContentDetails\": {\n \"description\": \"Details - about a channelsection, including playlists and channels.\",\n \"id\": - \"ChannelSectionContentDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"playlists\": {\n \"description\": \"The playlist ids - for type single_playlist and multiple_playlists. For singlePlaylist, only - one playlistId is allowed.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"channels\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The channel ids for - type multiple_channels.\"\n }\n }\n },\n \"IngestionInfo\": - {\n \"description\": \"Describes information necessary for ingesting - an RTMP, HTTP, or SRT stream.\",\n \"type\": \"object\",\n \"properties\": - {\n \"streamName\": {\n \"type\": \"string\",\n \"description\": - \"The stream name that YouTube assigns to the video stream.\"\n },\n - \ \"backupIngestionAddress\": {\n \"description\": \"The backup - ingestion URL that you should use to stream video to YouTube. You have the - option of simultaneously streaming the content that you are sending to the - ingestionAddress to this URL.\",\n \"type\": \"string\"\n },\n - \ \"ingestionAddress\": {\n \"type\": \"string\",\n \"description\": - \"The primary ingestion URL that you should use to stream video to YouTube. - You must stream video to this URL. Depending on which application or tool - you use to encode your video stream, you may need to enter the stream URL - and stream name separately or you may need to concatenate them in the following - format: *STREAM_URL/STREAM_NAME* \"\n },\n \"rtmpsIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"rtmpsBackupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of backupIngestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n }\n },\n \"id\": - \"IngestionInfo\"\n },\n \"CommentSnippet\": {\n \"properties\": - {\n \"moderationStatus\": {\n \"description\": \"The comment's - moderation status. Will not be set if the comments were requested through - the id filter.\",\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment is - unfit for display.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ]\n },\n \"likeCount\": - {\n \"description\": \"The total number of likes this comment has - received.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"channelId\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"canRate\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the current viewer can rate this comment.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comment refers to, if any.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the comment was originally - published.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"textOriginal\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"authorChannelUrl\": {\n \"description\": - \"Link to the author's YouTube channel, if any.\",\n \"type\": \"string\"\n - \ },\n \"textDisplay\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"authorDisplayName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the user who posted - the comment.\"\n },\n \"viewerRating\": {\n \"description\": - \"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.\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ]\n - \ },\n \"authorProfileImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL for the avatar of the user who posted - the comment.\"\n },\n \"authorChannelId\": {\n \"$ref\": - \"CommentSnippetAuthorChannelId\"\n },\n \"updatedAt\": {\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the comment was last updated.\",\n \"format\": \"date-time\"\n - \ },\n \"parentId\": {\n \"type\": \"string\",\n \"description\": - \"The unique id of the parent comment, only set for replies.\"\n }\n - \ },\n \"description\": \"Basic details about a comment, such as - its author and text.\",\n \"id\": \"CommentSnippet\",\n \"type\": - \"object\"\n },\n \"MembershipsLevel\": {\n \"properties\": {\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the memberships level.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevel\"\n },\n \"snippet\": - {\n \"$ref\": \"MembershipsLevelSnippet\",\n \"description\": - \"The snippet object contains basic details about the level.\"\n }\n - \ },\n \"id\": \"MembershipsLevel\",\n \"description\": \"A - *membershipsLevel* resource represents an offer made by YouTube creators for - their fans. Users can become members of the channel by joining one of the - available levels. They will provide recurring monetary support and receives - special benefits.\",\n \"type\": \"object\"\n },\n \"I18nRegion\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#i18nRegion\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n - \ \"id\": \"I18nRegion\"\n },\n \"LiveBroadcastSnippet\": {\n \"id\": - \"LiveBroadcastSnippet\",\n \"properties\": {\n \"scheduledEndTime\": - {\n \"description\": \"The date and time that the broadcast is scheduled - to end.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The broadcast's title. Note that the broadcast represents exactly one YouTube - video. You can set this field by modifying the broadcast resource or by setting - the title field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the broadcast. For each nested object - in this object, the key is the name of the thumbnail image, and the value - is an object that contains other information about the thumbnail.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"actualStartTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - actually started. This information is only available once the broadcast's - state is live.\",\n \"type\": \"string\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the live chat for this broadcast.\"\n },\n \"isDefaultBroadcast\": - {\n \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\",\n \"type\": \"boolean\"\n },\n - \ \"actualEndTime\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - actually ended. This information is only available once the broadcast's state - is complete.\"\n },\n \"scheduledStartTime\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the broadcast was added to YouTube's live broadcast schedule.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"description\": \"The broadcast's description. - As with the title, you can set this field by modifying the broadcast resource - or by setting the description field of the corresponding video resource.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic broadcast information.\"\n },\n - \ \"AccessPolicy\": {\n \"properties\": {\n \"exception\": {\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of region codes that identify - countries where the default policy do not apply.\"\n },\n \"allowed\": - {\n \"description\": \"The value of allowed indicates whether the - access to the policy is allowed or denied by default.\",\n \"type\": - \"boolean\"\n }\n },\n \"description\": \"Rights management - policy for YouTube resources.\",\n \"type\": \"object\",\n \"id\": - \"AccessPolicy\"\n },\n \"MembershipsLevelListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"description\": \"A list of pricing - levels offered by a creator to the fans.\",\n \"items\": {\n \"$ref\": - \"MembershipsLevel\"\n },\n \"type\": \"array\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\"\n - \ },\n \"VideoCategorySnippet\": {\n \"id\": \"VideoCategorySnippet\",\n - \ \"properties\": {\n \"assignable\": {\n \"type\": \"boolean\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The video category's title.\"\n },\n \"channelId\": {\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"type\": \"string\",\n \"description\": - \"The YouTube channel that created the video category.\"\n }\n },\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\",\n \"type\": \"object\"\n },\n \"LiveBroadcastContentDetails\": - {\n \"description\": \"Detailed settings of a broadcast.\",\n \"id\": - \"LiveBroadcastContentDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"recordFromStart\": {\n \"type\": \"boolean\",\n \"description\": - \"Automatically start recording after the event goes live. The default value - for this property is true. *Important:* You must also set the enableDvr property's - value to true if you want the playback to be available immediately after the - broadcast ends. If you set this property's value to true but do not also set - the enableDvr property to true, there may be a delay of around one day before - the archived video will be available for playback.\"\n },\n \"mesh\": - {\n \"type\": \"string\",\n \"format\": \"byte\",\n \"description\": - \"The mesh for projecting the video if projection is mesh. The mesh value - must be a UTF-8 string containing the base-64 encoding of 3D mesh data that - follows the Spherical Video V2 RFC specification for an mshp box, excluding - the box size and type but including the following four reserved zero bytes - for the version and flags.\"\n },\n \"enableClosedCaptions\": - {\n \"description\": \"This setting indicates whether HTTP POST closed - captioning is enabled for this broadcast. The ingestion URL of the closed - captions is returned through the liveStreams API. This is mutually exclusive - with using the closed_captions_type property, and is equivalent to setting - closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n \"type\": - \"boolean\"\n },\n \"stereoLayout\": {\n \"enum\": - [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ],\n \"description\": \"The - 3D stereo layout of this broadcast. This defaults to mono.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"enableEmbed\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast video can be played in an embedded player. - If you choose to archive the video (using the enableArchive property), this - setting will also apply to the archived video.\"\n },\n \"enableContentEncryption\": - {\n \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n - \ },\n \"boundStreamId\": {\n \"description\": \"This - value uniquely identifies the live stream bound to the broadcast.\",\n \"type\": - \"string\"\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"description\": - \"The date and time that the live stream referenced by boundStreamId was last - updated.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"enableLowLatency\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether this broadcast has low latency - enabled.\"\n },\n \"enableDvr\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting determines whether viewers can access - DVR controls while watching the video. DVR controls enable the viewer to control - the video playback experience by pausing, rewinding, or fast forwarding content. - The default value for this property is true. *Important:* You must set the - value to true and also set the enableArchive property's value to true if you - want to make playback available immediately after the broadcast ends.\"\n - \ },\n \"closedCaptionsType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"type\": - \"string\"\n },\n \"latencyPreference\": {\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Best for: highest quality viewer playbacks - and higher resolutions.\",\n \"Best for: near real-time interaction, - with minimal playback buffering.\",\n \"Best for: real-time interaction - Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"If both this - and enable_low_latency are set, they must match. LATENCY_NORMAL should match - enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\"\n },\n - \ \"monitorStream\": {\n \"$ref\": \"MonitorStreamInfo\",\n - \ \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\"\n },\n \"enableAutoStart\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"startWithSlate\": {\n \"description\": \"This setting indicates - whether the broadcast should automatically begin with an in-stream slate when - you update the broadcast's status to live. After updating the status, you - then need to send a liveCuepoints.insert request that sets the cuepoint's - eventState to end to remove the in-stream slate and make your broadcast stream - visible to viewers.\",\n \"type\": \"boolean\"\n },\n \"projection\": - {\n \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\"\n - \ },\n \"enableAutoStop\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether auto stop is enabled - for this broadcast. The default value for this property is false. This setting - can only be used by Events.\"\n }\n }\n },\n \"WatchSettings\": - {\n \"type\": \"object\",\n \"properties\": {\n \"textColor\": - {\n \"description\": \"The background color for the video watch page's - branded area.\",\n \"type\": \"string\"\n },\n \"featuredPlaylistId\": - {\n \"type\": \"string\",\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\"\n - \ },\n \"backgroundColor\": {\n \"type\": \"string\",\n - \ \"description\": \"The text color for the video watch page's branded - area.\"\n }\n },\n \"id\": \"WatchSettings\",\n \"description\": - \"Branding properties for the watch. All deprecated.\"\n },\n \"SuperChatEventSnippet\": - {\n \"properties\": {\n \"displayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the purchase amount and currency (e.g., \\\"$1.00\\\"). The string is rendered - for the given language.\"\n },\n \"superStickerMetadata\": {\n - \ \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n },\n \"createdAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the event - occurred.\",\n \"type\": \"string\"\n },\n \"isSuperStickerEvent\": - {\n \"type\": \"boolean\",\n \"description\": \"True if - this event is a Super Sticker event.\"\n },\n \"messageType\": - {\n \"format\": \"uint32\",\n \"description\": \"The tier - for the paid message, which is based on the amount of money spent to purchase - the message.\",\n \"type\": \"integer\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel id - where the event occurred.\"\n },\n \"commentText\": {\n \"type\": - \"string\",\n \"description\": \"The text contents of the comment - left by the user.\"\n },\n \"amountMicros\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\",\n \"type\": - \"string\"\n },\n \"supporterDetails\": {\n \"description\": - \"Details about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"SuperChatEventSnippet\"\n - \ },\n \"ActivityListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Activity\"\n }\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"default\": \"youtube#activityListResponse\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ },\n \"id\": \"ActivityListResponse\"\n },\n \"VideoProjectDetails\": - {\n \"description\": \"DEPRECATED. b/157517979: This part was never populated - after it was added. However, it sees non-zero traffic because there is generated - client code in the wild that refers to it [1]. We keep this field and do NOT - remove it because otherwise V3 would return an error when this part gets requested - [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"properties\": {},\n \"type\": \"object\",\n \"id\": \"VideoProjectDetails\"\n - \ },\n \"MembershipsDuration\": {\n \"properties\": {\n \"memberSince\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the user became a continuous member across all levels.\"\n },\n - \ \"memberTotalDurationMonths\": {\n \"type\": \"integer\",\n - \ \"description\": \"The cumulative time the user has been a member - across all levels in complete months (the time is rounded down to the nearest - integer).\",\n \"format\": \"int32\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"MembershipsDuration\"\n },\n \"VideoRating\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - rating of a video.\",\n \"id\": \"VideoRating\",\n \"properties\": - {\n \"videoId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ },\n \"rating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"description\": - \"Rating of a video.\"\n }\n }\n },\n \"MemberListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - members that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Member\"\n }\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"MemberListResponse\"\n },\n \"ActivityContentDetailsComment\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with the comment.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"id\": \"ActivityContentDetailsComment\",\n \"type\": - \"object\",\n \"description\": \"Information about a resource that received - a comment.\"\n },\n \"ThirdPartyLinkListResponse\": {\n \"id\": - \"ThirdPartyLinkListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"items\": {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"type\": \"array\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"description\": \"Details about a resource which is being promoted.\",\n - \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"properties\": {\n \"descriptionText\": {\n \"description\": - \"The text description to accompany the promoted item.\",\n \"type\": - \"string\"\n },\n \"ctaType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ]\n },\n \"forecastingUrl\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"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.\"\n },\n \"impressionUrl\": - {\n \"type\": \"array\",\n \"description\": \"The list of - impression URLs. The client should ping all of these URLs to indicate that - the user was shown this promoted item.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"creativeViewUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user was shown this promoted item.\"\n },\n \"customCtaButtonText\": - {\n \"description\": \"The custom call-to-action button text. If - specified, it will override the default button text for the cta_type.\",\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the promoted video.\"\n },\n \"adTag\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should fetch - to request a promoted item.\"\n },\n \"clickTrackingUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user clicked through on this promoted - item.\"\n },\n \"destinationUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should direct the user to, - if the user chooses to visit the advertiser's website.\"\n }\n }\n - \ },\n \"PlaylistPlayer\": {\n \"id\": \"PlaylistPlayer\",\n \"type\": - \"object\",\n \"properties\": {\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"id\": \"LiveChatMembershipGiftingDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"giftMembershipsLevelName\": {\n \"description\": - \"The name of the level of the gift memberships purchased by the user. The - Level names are defined by the YouTube channel offering the Membership. In - some situations this field isn't filled.\",\n \"type\": \"string\"\n - \ },\n \"giftMembershipsCount\": {\n \"description\": - \"The number of gift memberships purchased by the user.\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n }\n }\n },\n - \ \"SubscriptionSubscriberSnippet\": {\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"Basic details about a subscription's subscriber including - title, description, channel ID and thumbnails.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the subscriber.\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"Thumbnails for this subscriber.\"\n },\n \"channelId\": {\n - \ \"description\": \"The channel ID of the subscriber.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the subscriber.\"\n }\n }\n - \ },\n \"Caption\": {\n \"id\": \"Caption\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the caption track.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n }\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"default\": \"youtube#caption\"\n }\n },\n \"description\": - \"A *caption* resource represents a YouTube caption track. A caption track - is associated with exactly one YouTube video.\",\n \"type\": \"object\"\n - \ },\n \"ChannelSection\": {\n \"type\": \"object\",\n \"id\": - \"ChannelSection\",\n \"properties\": {\n \"localizations\": {\n - \ \"type\": \"object\",\n \"description\": \"Localizations - for different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n }\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#channelSection\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSection\\\".\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the channel section, such as its type, style and title.\"\n },\n \"targeting\": - {\n \"$ref\": \"ChannelSectionTargeting\",\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel section.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ChannelSectionContentDetails\",\n \"description\": \"The contentDetails - object contains details about the channel section content, such as a list - of playlists or channels featured in the section.\"\n }\n }\n - \ },\n \"ThirdPartyLinkStatus\": {\n \"properties\": {\n \"linkStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"The third-party link status object contains - information about the status of the link.\",\n \"id\": \"ThirdPartyLinkStatus\",\n - \ \"type\": \"object\"\n },\n \"ChannelSectionSnippet\": {\n \"properties\": - {\n \"style\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"description\": \"The - style of the channel section.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel section's title for - multiple_playlists and multiple_channels.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the channel section.\",\n \"type\": \"string\"\n - \ },\n \"position\": {\n \"description\": \"The position - of the channel section in the channel.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"localized\": {\n \"$ref\": - \"ChannelSectionLocalization\",\n \"description\": \"Localized title, - read-only.\"\n },\n \"type\": {\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"description\": \"The - type of the channel section.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel section's default - title and description.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ChannelSectionSnippet\",\n \"description\": \"Basic details - about a channel section, including title, style and position.\",\n \"type\": - \"object\"\n },\n \"CommentThreadSnippet\": {\n \"id\": \"CommentThreadSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a comment thread.\",\n \"properties\": {\n \"canReply\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n \"channelId\": {\n - \ \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"isPublic\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the thread (and therefore all its comments) - is visible to all YouTube users.\"\n },\n \"totalReplyCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The total - number of replies (not including the top level comment).\",\n \"type\": - \"integer\"\n },\n \"topLevelComment\": {\n \"description\": - \"The top level comment of this thread.\",\n \"$ref\": \"Comment\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\"\n }\n }\n },\n \"LiveChatModeratorListResponse\": - {\n \"id\": \"LiveChatModeratorListResponse\",\n \"properties\": - {\n \"items\": {\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"description\": \"A list of moderators that match - the request criteria.\",\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveChatModeratorListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoListResponse\": {\n \"type\": - \"object\",\n \"id\": \"VideoListResponse\",\n \"properties\": {\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n \"default\": - \"youtube#videoListResponse\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Video\"\n },\n - \ \"type\": \"array\"\n }\n }\n },\n \"CdnSettings\": - {\n \"id\": \"CdnSettings\",\n \"properties\": {\n \"resolution\": - {\n \"type\": \"string\",\n \"description\": \"The resolution - of the inbound video data.\",\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"ingestionType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"enum\": [\n \"rtmp\",\n - \ \"dash\",\n \"webrtc\",\n \"hls\"\n ],\n - \ \"description\": \" The method or protocol used to transmit the - video stream.\"\n },\n \"frameRate\": {\n \"description\": - \"The frame rate of the inbound video data.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"format\": {\n \"description\": - \"The format of the video stream that you are sending to Youtube. \",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"ingestionInfo\": {\n - \ \"description\": \"The ingestionInfo object contains information - that YouTube provides that you need to transmit your RTMP or HTTP stream to - YouTube.\",\n \"$ref\": \"IngestionInfo\"\n }\n },\n - \ \"description\": \"Brief description of the live stream cdn settings.\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"id\": \"ActivityContentDetailsBulletin\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"description\": \"Details about - a channel bulletin post.\"\n },\n \"AbuseType\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"AbuseType\"\n },\n \"VideoProcessingDetails\": - {\n \"id\": \"VideoProcessingDetails\",\n \"description\": \"Describes - processing status and progress and availability of some other Video resource - parts.\",\n \"properties\": {\n \"tagSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether keyword (tag) - suggestions are available for the video. Tags can be added to a video's metadata - to make it easier for other users to find the video. You can retrieve these - suggestions by requesting the suggestions part in your videos.list() request.\",\n - \ \"type\": \"string\"\n },\n \"processingFailureReason\": - {\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"type\": - \"string\",\n \"description\": \"The reason that YouTube failed to - process the video. This property will only have a value if the processingStatus - property's value is failed.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"processingIssuesAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether video editing suggestions, which might improve video - quality or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\",\n \"type\": \"string\"\n },\n \"processingProgress\": - {\n \"description\": \"The processingProgress object contains information - about the progress YouTube has made in processing the video. The values are - really only relevant if the video's processing status is processing.\",\n - \ \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n },\n - \ \"thumbnailsAvailability\": {\n \"type\": \"string\",\n \"description\": - \"This value indicates whether thumbnail images have been generated for the - video.\"\n },\n \"processingStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ],\n \"description\": \"The video's processing status. - This value indicates whether YouTube was able to process the video or if the - video is still being processed.\"\n },\n \"fileDetailsAvailability\": - {\n \"description\": \"This value indicates whether file details - are available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ThirdPartyLink\": - {\n \"id\": \"ThirdPartyLink\",\n \"type\": \"object\",\n \"properties\": - {\n \"linkingToken\": {\n \"type\": \"string\",\n \"description\": - \"The linking_token identifies a YouTube account and channel with which the - third party account is linked.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\"\n },\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n - \ \"description\": \"The status object contains information about - the status of the link.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"default\": \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A *third party account link* - resource represents a link between a YouTube account or a channel and an account - on a third-party service.\"\n },\n \"LiveChatSuperStickerDetails\": - {\n \"id\": \"LiveChatSuperStickerDetails\",\n \"properties\": {\n - \ \"amountMicros\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The amount purchased by the user, - in micros (1,750,000 micros = 1.75).\"\n },\n \"tier\": {\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n },\n \"superStickerMetadata\": {\n - \ \"description\": \"Information about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n },\n \"currency\": {\n \"type\": - \"string\",\n \"description\": \"The currency in which the purchase - was made.\"\n },\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n }\n },\n \"type\": - \"object\"\n },\n \"MonitorStreamInfo\": {\n \"id\": \"MonitorStreamInfo\",\n - \ \"properties\": {\n \"embedHtml\": {\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\",\n \"type\": - \"string\"\n },\n \"broadcastStreamDelayMs\": {\n \"type\": - \"integer\",\n \"description\": \"If you have set the enableMonitorStream - property to true, then this property determines the length of the live broadcast - delay.\",\n \"format\": \"uint32\",\n \"annotations\": {\n - \ \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"enableMonitorStream\": {\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"This value determines - whether the monitor stream is enabled for the broadcast. If the monitor stream - is enabled, then YouTube will broadcast the event content on a special stream - intended only for the broadcaster's consumption. The broadcaster can use the - stream to review the event content and also to identify the optimal times - to insert cuepoints. You need to set this value to true if you intend to have - a broadcast delay for your event. *Note:* This property cannot be updated - once the broadcast is in the testing or live state.\",\n \"type\": - \"boolean\"\n }\n },\n \"description\": \"Settings and Info - of the monitor stream\",\n \"type\": \"object\"\n },\n \"CaptionSnippet\": - {\n \"description\": \"Basic details about a caption track, such as its - language and name.\",\n \"type\": \"object\",\n \"id\": \"CaptionSnippet\",\n - \ \"properties\": {\n \"audioTrackType\": {\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"description\": \"The - type of audio track associated with the caption track.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"name\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The name of the - caption track. The name is intended to be visible to the user as an option - during playback.\",\n \"type\": \"string\"\n },\n \"trackKind\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The caption track's - type.\",\n \"type\": \"string\",\n \"enum\": [\n \"standard\",\n - \ \"ASR\",\n \"forced\"\n ]\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video associated with the caption track. - @mutable youtube.captions.insert\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n }\n - \ },\n \"isCC\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\"\n },\n \"lastUpdated\": - {\n \"description\": \"The date and time when the caption track was - last updated.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"language\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The language - of the caption track. The property value is a BCP-47 language tag.\"\n },\n - \ \"isDraft\": {\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\",\n - \ \"type\": \"boolean\"\n },\n \"failureReason\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\",\n \"enum\": - [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ]\n },\n \"isAutoSynced\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n - \ \"isEasyReader\": {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"status\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ],\n \"description\": \"The caption - track's status.\",\n \"type\": \"string\"\n },\n \"isLarge\": - {\n \"description\": \"Indicates whether the caption track uses large - text for the vision-impaired. The default value is false.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"PropertyValue\": {\n \"id\": - \"PropertyValue\",\n \"properties\": {\n \"value\": {\n \"description\": - \"The property's value.\",\n \"type\": \"string\"\n },\n \"property\": - {\n \"description\": \"A property.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - pair Property / Value.\"\n },\n \"LiveStream\": {\n \"properties\": - {\n \"status\": {\n \"description\": \"The status object contains - information about live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n - \ },\n \"cdn\": {\n \"description\": \"The cdn object - defines the live stream's content delivery network (CDN) settings. These settings - provide details about the manner in which you stream your content to YouTube.\",\n - \ \"$ref\": \"CdnSettings\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n \"default\": - \"youtube#liveStream\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveStreamSnippet\",\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the stream.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n - \ \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\"\n }\n - \ },\n \"id\": \"LiveStream\",\n \"type\": \"object\",\n \"description\": - \"A live stream describes a live ingestion point.\"\n },\n \"ChannelBrandingSettings\": - {\n \"description\": \"Branding properties of a YouTube channel.\",\n - \ \"type\": \"object\",\n \"id\": \"ChannelBrandingSettings\",\n - \ \"properties\": {\n \"hints\": {\n \"description\": - \"Additional experimental branding properties.\",\n \"items\": {\n - \ \"$ref\": \"PropertyValue\"\n },\n \"type\": - \"array\"\n },\n \"channel\": {\n \"$ref\": \"ChannelSettings\",\n - \ \"description\": \"Branding properties for the channel view.\"\n - \ },\n \"watch\": {\n \"description\": \"Branding properties - for the watch page.\",\n \"$ref\": \"WatchSettings\"\n },\n - \ \"image\": {\n \"$ref\": \"ImageSettings\",\n \"description\": - \"Branding properties for branding images.\"\n }\n }\n },\n - \ \"PlaylistLocalization\": {\n \"id\": \"PlaylistLocalization\",\n - \ \"description\": \"Playlist localization setting\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for playlist's description.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's title.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelProfileDetails\": {\n \"id\": \"ChannelProfileDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"channelUrl\": - {\n \"description\": \"The channel's URL.\",\n \"type\": - \"string\"\n },\n \"displayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's display name.\"\n },\n \"channelId\": - {\n \"description\": \"The YouTube channel ID.\",\n \"type\": - \"string\"\n },\n \"profileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channels's avatar URL.\"\n }\n - \ }\n },\n \"LanguageTag\": {\n \"type\": \"object\",\n \"id\": - \"LanguageTag\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelSectionListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of ChannelSections that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ }\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n \"default\": - \"youtube#channelSectionListResponse\"\n },\n \"eventId\": {\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ChannelSectionListResponse\"\n - \ },\n \"LiveChatMessageDeletedDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"I18nLanguage\": {\n \"type\": \"object\",\n \"id\": - \"I18nLanguage\",\n \"description\": \"An *i18nLanguage* resource identifies - a UI language currently supported by YouTube.\",\n \"properties\": {\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nLanguage\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n language.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n language, such as language code and human-readable name.\"\n }\n - \ }\n },\n \"ChannelTopicDetails\": {\n \"description\": \"Freebase - topic information related to the channel.\",\n \"properties\": {\n \"topicCategories\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Wikipedia - URLs that describe the channel's content.\"\n },\n \"topicIds\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Freebase - topic IDs associated with the channel. You can retrieve information about - each topic using the Freebase Topic API.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelTopicDetails\"\n },\n \"TokenPagination\": - {\n \"description\": \"Stub token pagination template to suppress results.\",\n - \ \"type\": \"object\",\n \"id\": \"TokenPagination\",\n \"properties\": - {}\n },\n \"CommentThread\": {\n \"type\": \"object\",\n \"id\": - \"CommentThread\",\n \"properties\": {\n \"replies\": {\n \"$ref\": - \"CommentThreadReplies\",\n \"description\": \"The replies object - contains a limited number of replies (if any) to the top level comment found - in the snippet.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the comment thread and also the top level comment.\",\n - \ \"$ref\": \"CommentThreadSnippet\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentThread\\\".\",\n \"default\": - \"youtube#commentThread\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"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.\"\n },\n \"ChannelToStoreLinkDetails\": - {\n \"id\": \"ChannelToStoreLinkDetails\",\n \"type\": \"object\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"properties\": {\n \"storeUrl\": - {\n \"type\": \"string\",\n \"description\": \"Landing page - of the store.\"\n },\n \"storeName\": {\n \"description\": - \"Name of the store.\",\n \"type\": \"string\"\n },\n \"merchantId\": - {\n \"type\": \"string\",\n \"description\": \"Google Merchant - Center id of the store.\",\n \"format\": \"uint64\"\n }\n - \ }\n },\n \"LocalizedProperty\": {\n \"id\": \"LocalizedProperty\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"defaultLanguage\": - {\n \"description\": \"The language of the default property.\",\n - \ \"$ref\": \"LanguageTag\"\n },\n \"default\": {\n - \ \"type\": \"string\"\n },\n \"localized\": {\n \"items\": - {\n \"$ref\": \"LocalizedString\"\n },\n \"type\": - \"array\"\n }\n }\n },\n \"Thumbnail\": {\n \"description\": - \"A thumbnail is an image representing a YouTube resource.\",\n \"properties\": - {\n \"height\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"(Optional) Height of the thumbnail - image.\"\n },\n \"width\": {\n \"description\": \"(Optional) - Width of the thumbnail image.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"url\": {\n \"description\": \"The - thumbnail image's URL.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"Thumbnail\",\n \"type\": \"object\"\n },\n \"VideoAbuseReportReason\": - {\n \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID of this abuse report reason.\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n \"type\": - \"string\",\n \"default\": \"youtube#videoAbuseReportReason\"\n }\n - \ },\n \"id\": \"VideoAbuseReportReason\"\n },\n \"I18nRegionListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"I18nRegion\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of regions where YouTube is available. In this map, the i18n region ID - is the map key, and its value is the corresponding i18nRegion resource.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"default\": \"youtube#i18nRegionListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"I18nRegionListResponse\"\n - \ },\n \"TestItemTestItemSnippet\": {\n \"properties\": {},\n \"id\": - \"TestItemTestItemSnippet\",\n \"type\": \"object\"\n },\n \"VideoLocalization\": - {\n \"description\": \"Localized versions of certain video properties - (e.g. title).\",\n \"id\": \"VideoLocalization\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"title\": {\n \"description\": - \"Localized version of the video's title.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Localized version of the video's description.\"\n - \ }\n }\n },\n \"Entity\": {\n \"properties\": {\n \"url\": - {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\"\n },\n \"typeId\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Entity\"\n - \ },\n \"Subscription\": {\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"default\": \"youtube#subscription\"\n },\n \"contentDetails\": - {\n \"$ref\": \"SubscriptionContentDetails\",\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"subscriberSnippet\": - {\n \"description\": \"The subscriberSnippet object contains basic - details about the subscriber.\",\n \"$ref\": \"SubscriptionSubscriberSnippet\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the subscription, including its title - and the channel that the user subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n - \ }\n },\n \"id\": \"Subscription\",\n \"description\": - \"A *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\"\n },\n \"SearchResult\": - {\n \"type\": \"object\",\n \"id\": \"SearchResult\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"SearchResultSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - a search result, such as its title or description. For example, if the search - result is a video, then the title will be the video's title and the description - will be the video's description.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#searchResult\"\n - \ },\n \"id\": {\n \"description\": \"The id object - contains information that can be used to uniquely identify the resource that - matches the search request.\",\n \"$ref\": \"ResourceId\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A search result contains information about a YouTube video, channel, or - playlist that matches the search parameters specified in an API request. While - a search result points to a uniquely identifiable resource, like a video, - it does not have its own persistent data.\"\n },\n \"MembershipsDetails\": - {\n \"properties\": {\n \"highestAccessibleLevel\": {\n \"type\": - \"string\",\n \"description\": \"Id of the highest level that the - user has access to at the moment.\"\n },\n \"membershipsDuration\": - {\n \"$ref\": \"MembershipsDuration\",\n \"description\": - \"Data about memberships duration without taking into consideration pricing - levels.\"\n },\n \"membershipsDurationAtLevels\": {\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"description\": - \"Data about memberships duration on particular pricing levels.\",\n \"type\": - \"array\"\n },\n \"accessibleLevels\": {\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"highestAccessibleLevelDisplayName\": {\n - \ \"description\": \"Display name for the highest level that the user - has access to at the moment.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"MembershipsDetails\"\n - \ },\n \"ChannelSectionTargeting\": {\n \"id\": \"ChannelSectionTargeting\",\n - \ \"properties\": {\n \"regions\": {\n \"description\": - \"The region the channel section is targeting.\",\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"languages\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The language the channel section is targeting.\"\n },\n \"countries\": - {\n \"type\": \"array\",\n \"description\": \"The country - the channel section is targeting.\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"ChannelSection targeting setting.\"\n },\n \"ActivitySnippet\": - {\n \"properties\": {\n \"description\": {\n \"description\": - \"The description of the resource primarily associated with the activity. - @mutable youtube.activities.insert\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel associated with the activity.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the resource primarily associated - with the activity.\"\n },\n \"thumbnails\": {\n \"description\": - \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the video was uploaded.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The type of activity that the resource describes.\",\n \"enum\": - [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ]\n },\n \"groupId\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel responsible for this activity\"\n }\n },\n \"id\": - \"ActivitySnippet\",\n \"description\": \"Basic details about an activity, - including title, description, thumbnails, activity type and group. Next ID: - 12\",\n \"type\": \"object\"\n },\n \"PlaylistItemListResponse\": - {\n \"id\": \"PlaylistItemListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"description\": - \"A list of playlist items that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"type\": - \"array\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"etag\": {\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"description\": \"Information about a new playlist item.\",\n \"id\": - \"ActivityContentDetailsPlaylistItem\",\n \"type\": \"object\",\n \"properties\": - {\n \"playlistId\": {\n \"description\": \"The value that - YouTube uses to uniquely identify the playlist.\",\n \"type\": \"string\"\n - \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n },\n \"playlistItemId\": - {\n \"description\": \"ID of the item within the playlist.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoAgeGating\": {\n \"type\": - \"object\",\n \"id\": \"VideoAgeGating\",\n \"properties\": {\n - \ \"videoGameRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ],\n \"description\": \"Video - game rating, if any.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"restricted\": {\n \"type\": \"boolean\",\n \"description\": - \"Age-restricted trailers. For redband trailers and adult-rated video-games. - Only users aged 18+ can view the content. The the field is true the content - is restricted to viewers aged 18+. Otherwise The field won't be present.\"\n - \ },\n \"alcoholContent\": {\n \"description\": \"Indicates - whether or not the video has alcoholic beverage content. Only users of legal - purchasing age in a particular country, as identified by ICAP, can view the - content.\",\n \"type\": \"boolean\"\n }\n }\n },\n - \ \"VideoFileDetailsVideoStream\": {\n \"id\": \"VideoFileDetailsVideoStream\",\n - \ \"description\": \"Information about a video stream.\",\n \"type\": - \"object\",\n \"properties\": {\n \"frameRateFps\": {\n \"description\": - \"The video stream's frame rate, in frames per second.\",\n \"type\": - \"number\",\n \"format\": \"double\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"description\": \"The video - stream's bitrate, in bits per second.\",\n \"type\": \"string\"\n - \ },\n \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"widthPixels\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\"\n },\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The video - codec that the stream uses.\"\n },\n \"aspectRatio\": {\n \"type\": - \"number\",\n \"description\": \"The video content's display aspect - ratio, which specifies the aspect ratio in which the video should be displayed.\",\n - \ \"format\": \"double\"\n },\n \"rotation\": {\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ]\n },\n \"heightPixels\": - {\n \"description\": \"The encoded video content's height in pixels.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n - \ }\n },\n \"ChannelConversionPing\": {\n \"description\": - \"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.\",\n \"properties\": {\n \"conversionUrl\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"context\": - {\n \"type\": \"string\",\n \"description\": \"Defines the - context of the ping.\",\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"id\": \"ChannelConversionPing\",\n \"type\": \"object\"\n - \ },\n \"VideoAbuseReport\": {\n \"properties\": {\n \"comments\": - {\n \"description\": \"Additional comments regarding the abuse report.\",\n - \ \"type\": \"string\"\n },\n \"language\": {\n \"type\": - \"string\",\n \"description\": \"The language that the content was - viewed in.\"\n },\n \"secondaryReasonId\": {\n \"type\": - \"string\",\n \"description\": \"The specific, or secondary, reason - that this content is abusive (if available). The value is an abuse report - reason ID that is a valid secondary reason for the primary reason.\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the video.\",\n \"type\": \"string\"\n },\n - \ \"reasonId\": {\n \"description\": \"The high-level, or primary, - reason that the content is abusive. The value is an abuse report reason ID.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoAbuseReport\"\n },\n \"LocalizedString\": {\n \"id\": - \"LocalizedString\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"language\": {\n \"type\": \"string\"\n },\n \"value\": - {\n \"type\": \"string\"\n }\n }\n },\n \"SuperChatEventListResponse\": - {\n \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"default\": \"youtube#superChatEventListResponse\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n },\n \"description\": - \"A list of Super Chat purchases that match the request criteria.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"SuperChatEventListResponse\"\n },\n \"VideoStatistics\": {\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\",\n \"type\": \"object\",\n \"id\": \"VideoStatistics\",\n - \ \"properties\": {\n \"likeCount\": {\n \"description\": - \"The number of users who have indicated that they liked the video by giving - it a positive rating.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"commentCount\": {\n \"description\": - \"The number of comments for the video.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"favoriteCount\": {\n - \ \"description\": \"The number of users who currently have the video - marked as a favorite video.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"dislikeCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of users who have indicated that they disliked the video by giving - it a negative rating.\"\n },\n \"viewCount\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of times the video has been viewed.\"\n }\n }\n },\n - \ \"PageInfo\": {\n \"description\": \"Paging details for lists of - resources, including total number of items available and number of resources - returned in a single page.\",\n \"properties\": {\n \"totalResults\": - {\n \"description\": \"The total number of results in the result - set.\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ },\n \"resultsPerPage\": {\n \"type\": \"integer\",\n - \ \"description\": \"The number of results included in the API response.\",\n - \ \"format\": \"int32\"\n }\n },\n \"id\": \"PageInfo\",\n - \ \"type\": \"object\"\n },\n \"ChannelListResponse\": {\n \"properties\": - {\n \"pageInfo\": {\n \"description\": \"General pagination - information.\",\n \"$ref\": \"PageInfo\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#channelListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Channel\"\n },\n - \ \"type\": \"array\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n },\n \"id\": \"ChannelListResponse\",\n - \ \"type\": \"object\"\n },\n \"LiveChatModerator\": {\n \"description\": - \"A *liveChatModerator* resource represents a moderator for a YouTube live - chat. A chat moderator has the ability to ban/unban users from a chat, remove - message, etc.\",\n \"type\": \"object\",\n \"id\": \"LiveChatModerator\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the moderator.\",\n \"$ref\": - \"LiveChatModeratorSnippet\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the moderator.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"default\": \"youtube#liveChatModerator\"\n }\n }\n - \ },\n \"I18nRegionSnippet\": {\n \"id\": \"I18nRegionSnippet\",\n - \ \"properties\": {\n \"gl\": {\n \"description\": \"The - region code as a 2-letter ISO country code.\",\n \"type\": \"string\"\n - \ },\n \"name\": {\n \"description\": \"The human-readable - name of the region.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - an i18n region, such as region code and human-readable name.\"\n },\n \"ChannelContentOwnerDetails\": - {\n \"properties\": {\n \"timeLinked\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the channel was linked to the content owner.\"\n - \ },\n \"contentOwner\": {\n \"description\": \"The - ID of the content owner linked to the channel.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"The - contentOwnerDetails object encapsulates channel data that is relevant for - YouTube Partners linked with the channel.\",\n \"id\": \"ChannelContentOwnerDetails\"\n - \ },\n \"VideoRecordingDetails\": {\n \"properties\": {\n \"locationDescription\": - {\n \"description\": \"The text description of the location where - the video was recorded.\",\n \"type\": \"string\"\n },\n \"recordingDate\": - {\n \"description\": \"The date and time when the video was recorded.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"location\": {\n \"$ref\": \"GeoPoint\",\n \"description\": - \"The geolocation information associated with the video.\"\n }\n },\n - \ \"description\": \"Recording information associated with the video.\",\n - \ \"type\": \"object\",\n \"id\": \"VideoRecordingDetails\"\n },\n - \ \"I18nLanguageSnippet\": {\n \"type\": \"object\",\n \"id\": - \"I18nLanguageSnippet\",\n \"properties\": {\n \"name\": {\n \"type\": - \"string\",\n \"description\": \"The human-readable name of the language - in the language itself.\"\n },\n \"hl\": {\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - an i18n language, such as language code and human-readable name.\"\n },\n - \ \"ChannelStatus\": {\n \"type\": \"object\",\n \"id\": \"ChannelStatus\",\n - \ \"description\": \"JSON template for the status part of a channel.\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"description\": - \"Privacy status of the channel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\"\n },\n \"longUploadsStatus\": - {\n \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"isLinked\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ }\n }\n },\n \"CommentListResponse\": {\n \"id\": - \"CommentListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of comments that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n }\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n }\n },\n \"LiveStreamContentDetails\": {\n \"properties\": - {\n \"isReusable\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \"\n },\n \"closedCaptionsIngestionUrl\": {\n \"description\": - \"The ingestion URL where the closed captions of this stream are sent.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Detailed settings of a stream.\",\n \"type\": \"object\",\n \"id\": - \"LiveStreamContentDetails\"\n },\n \"ChannelLocalization\": {\n \"type\": - \"object\",\n \"properties\": {\n \"description\": {\n \"description\": - \"The localized strings for channel's description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - localized strings for channel's title.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Channel localization setting\",\n - \ \"id\": \"ChannelLocalization\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"CommentSnippetAuthorChannelId\",\n \"description\": - \"The id of the author's YouTube channel, if any.\",\n \"type\": \"object\"\n - \ },\n \"ChannelSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"publishedAt\": {\n \"description\": \"The date and time - that the channel was created.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"customUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The custom url of the channel.\"\n },\n - \ \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"country\": - {\n \"description\": \"The country of the channel.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the channel.\"\n },\n - \ \"thumbnails\": {\n \"description\": \"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. When displaying thumbnails in your - application, make sure that your code uses the image URLs exactly as they - are returned in API responses. For example, your application should not use - the http domain instead of the https domain in a URL returned in an API response. - Beginning in July 2018, channel thumbnail URLs will only be available in the - https domain, which is how the URLs appear in API responses. After that time, - you might see broken images in your application if it tries to load YouTube - images from the http domain. Thumbnail images might be empty for newly created - channels and might take up to one day to populate.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"title\": {\n \"description\": - \"The channel's title.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel's default title and description.\"\n }\n },\n \"id\": - \"ChannelSnippet\",\n \"description\": \"Basic details about a channel, - including title, description and thumbnails.\"\n },\n \"Cuepoint\": - {\n \"id\": \"Cuepoint\",\n \"description\": \"Note that there may - be a 5-second end-point resolution issue. For instance, if a cuepoint comes - in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. - This is an artifact of HLS.\",\n \"properties\": {\n \"walltimeMs\": - {\n \"description\": \"The wall clock time at which the cuepoint - should be inserted. Only one of insertion_offset_time_ms and walltime_ms may - be set at a time.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"insertionOffsetTimeMs\": {\n \"format\": - \"int64\",\n \"description\": \"The time when the cuepoint should - be inserted by offset to the broadcast actual start time.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The identifier for cuepoint resource.\"\n },\n \"durationSecs\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The duration of this cuepoint.\"\n },\n \"cueType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ]\n }\n },\n \"type\": - \"object\"\n },\n \"LiveStreamHealthStatus\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamHealthStatus\",\n \"properties\": {\n \"configurationIssues\": - {\n \"description\": \"The configurations issues on this stream\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n }\n },\n \"lastUpdateTimeSeconds\": - {\n \"description\": \"The last time this status was updated (in - seconds)\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"description\": \"The status - code of this stream\",\n \"type\": \"string\",\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n }\n },\n \"PlaylistListResponse\": - {\n \"id\": \"PlaylistListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"description\": - \"A list of playlists that match the request criteria\",\n \"items\": - {\n \"$ref\": \"Playlist\"\n },\n \"type\": \"array\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlistListResponse\"\n - \ }\n }\n },\n \"ResourceId\": {\n \"type\": \"object\",\n - \ \"id\": \"ResourceId\",\n \"description\": \"A resource id is a - generic reference that points to another YouTube resource.\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"The type of the API resource.\"\n },\n \"playlistId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the referred resource, if that resource - is a playlist. This property is only present if the resourceId.kind value - is youtube#playlist.\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the referred resource, if that resource is a channel. This property is only - present if the resourceId.kind value is youtube#channel.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelSectionLocalization\": - {\n \"description\": \"ChannelSection localization setting\",\n \"type\": - \"object\",\n \"id\": \"ChannelSectionLocalization\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The localized strings - for channel section's title.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"Playlist\": {\n \"properties\": {\n \"status\": - {\n \"description\": \"The status object contains status information - for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n },\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"PlaylistLocalization\"\n },\n \"description\": \"Localizations - for different languages\",\n \"type\": \"object\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n - \ \"description\": \"The player object contains information that you - would use to play the playlist in an embedded player.\"\n },\n \"kind\": - {\n \"default\": \"youtube#playlist\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlist\\\".\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the playlist, such as its title and description.\",\n \"$ref\": - \"PlaylistSnippet\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the playlist.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistContentDetails\",\n \"description\": \"The contentDetails - object contains information like video count.\"\n }\n },\n \"id\": - \"Playlist\",\n \"description\": \"A *playlist* resource represents a - YouTube playlist. A playlist is a collection of videos that can be viewed - sequentially and shared with other users. A playlist can contain up to 200 - videos, and YouTube does not limit the number of playlists that each user - creates. By default, playlists are publicly visible to other users, but playlists - can be public or private. YouTube also uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n - \ \"type\": \"object\"\n },\n \"I18nLanguageListResponse\": {\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of supported i18n languages. In this map, - the i18n language ID is the map key, and its value is the corresponding i18nLanguage - resource.\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n - \ }\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"I18nLanguageListResponse\",\n \"type\": \"object\"\n - \ },\n \"LiveBroadcastStatistics\": {\n \"type\": \"object\",\n - \ \"description\": \"Statistics about the live broadcast. These represent - a snapshot of the values at the time of the request. Statistics are only returned - for live broadcasts.\",\n \"properties\": {\n \"concurrentViewers\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n },\n - \ \"totalChatCount\": {\n \"description\": \"The total number - of live chat messages currently on the broadcast. The property and its value - will be present if the broadcast is public, has the live chat feature enabled, - and has at least one message. Note that this field will not be filled after - the broadcast ends. So this property would not identify the number of chat - messages for an archived video of a completed live broadcast.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n }\n },\n \"id\": - \"LiveBroadcastStatistics\"\n },\n \"TestItem\": {\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"TestItemTestItemSnippet\"\n },\n \"gaia\": {\n \"type\": - \"string\",\n \"format\": \"int64\"\n },\n \"featuredPart\": - {\n \"type\": \"boolean\"\n },\n \"id\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"TestItem\"\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"id\": \"VideoSuggestionsTagSuggestion\",\n \"properties\": - {\n \"categoryRestricts\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A set of video categories - for which the tag is relevant. You can use this information to display appropriate - tag suggestions based on the video category that the video uploader associates - with the video. By default, tag suggestions are relevant for all categories - if there are no restricts defined for the keyword.\",\n \"type\": - \"array\"\n },\n \"tag\": {\n \"description\": \"The - keyword tag suggested for the video.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A single tag suggestion with - it's relevance information.\",\n \"type\": \"object\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"isUpgrade\": {\n \"type\": \"boolean\",\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatNewSponsorDetails\"\n - \ },\n \"Channel\": {\n \"description\": \"A *channel* resource - contains information about a YouTube channel.\",\n \"id\": \"Channel\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#channel\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the channel, such as its title, description, - and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n },\n - \ \"status\": {\n \"$ref\": \"ChannelStatus\",\n \"description\": - \"The status object encapsulates information about the privacy status of the - channel.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object encapsulates information about the channel's content.\",\n - \ \"$ref\": \"ChannelContentDetails\"\n },\n \"brandingSettings\": - {\n \"$ref\": \"ChannelBrandingSettings\",\n \"description\": - \"The brandingSettings object encapsulates information about the branding - of the channel.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object encapsulates statistics for the channel.\",\n \"$ref\": - \"ChannelStatistics\"\n },\n \"contentOwnerDetails\": {\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel.\",\n \"type\": \"string\"\n - \ },\n \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n - \ }\n },\n \"topicDetails\": {\n \"$ref\": - \"ChannelTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the channel.\"\n - \ },\n \"auditDetails\": {\n \"description\": \"The - auditionDetails object encapsulates channel data that is relevant for YouTube - Partners during the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"items\": - {\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"type\": \"array\"\n },\n \"offlineAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the underlying - stream went offline.\",\n \"format\": \"date-time\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pollingIntervalMillis\": - {\n \"format\": \"uint32\",\n \"description\": \"The amount - of time the client should wait before polling again.\",\n \"type\": - \"integer\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatMessageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageListResponse\"\n - \ },\n \"LiveStreamConfigurationIssue\": {\n \"properties\": {\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The long-form description of the issue and how to resolve it.\"\n },\n - \ \"reason\": {\n \"description\": \"The short-form reason - for this issue.\",\n \"type\": \"string\"\n },\n \"severity\": - {\n \"description\": \"How severe this issue is to the stream.\",\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"description\": - \"The kind of error happening.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ]\n }\n },\n \"id\": \"LiveStreamConfigurationIssue\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetails\": {\n \"type\": - \"object\",\n \"description\": \"Details about the content of an activity: - the video that was shared, the channel that was subscribed to, etc.\",\n \"properties\": - {\n \"social\": {\n \"$ref\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"The social object contains details about a social - network post. This property is only present if the snippet.type is social.\"\n - \ },\n \"promotedItem\": {\n \"description\": \"The - promotedItem object contains details about a resource which is being promoted. - This property is only present if the snippet.type is promotedItem.\",\n \"$ref\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"upload\": {\n - \ \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\",\n - \ \"$ref\": \"ActivityContentDetailsUpload\"\n },\n \"playlistItem\": - {\n \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"subscription\": {\n \"description\": \"The - subscription object contains information about a channel that a user subscribed - to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"recommendation\": - {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n \"description\": - \"The recommendation object contains information about a recommended resource. - This property is only present if the snippet.type is recommendation.\"\n },\n - \ \"comment\": {\n \"description\": \"The comment object contains - information about a resource that received a comment. This property is only - present if the snippet.type is comment.\",\n \"$ref\": \"ActivityContentDetailsComment\"\n - \ },\n \"like\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsLike\"\n },\n \"favorite\": {\n \"$ref\": - \"ActivityContentDetailsFavorite\",\n \"description\": \"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.\"\n },\n - \ \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"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.\"\n },\n \"bulletin\": {\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n }\n - \ },\n \"id\": \"ActivityContentDetails\"\n },\n \"PlaylistContentDetails\": - {\n \"id\": \"PlaylistContentDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"itemCount\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The number of videos in the playlist.\",\n \"type\": - \"integer\"\n }\n }\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"properties\": {\n \"partsTotal\": {\n \"description\": - \"An estimate of the total number of parts that need to be processed for the - video. The number may be updated with more precise estimates while YouTube - processes the video.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"timeLeftMs\": {\n \"format\": \"uint64\",\n - \ \"description\": \"An estimate of the amount of time, in millseconds, - that YouTube needs to finish processing the video.\",\n \"type\": - \"string\"\n },\n \"partsProcessed\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\"\n - \ }\n },\n \"description\": \"Video processing progress and - completion time estimate.\",\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"VideoTopicDetails\": {\n \"type\": \"object\",\n \"id\": - \"VideoTopicDetails\",\n \"description\": \"Freebase topic information - related to the video.\",\n \"properties\": {\n \"relevantTopicIds\": - {\n \"description\": \"Similar to topic_id, except that these topics - are merely relevant to the video. These are topics that may be mentioned in, - or appear in the video. You can retrieve information about each topic using - Freebase Topic API.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicIds\": - {\n \"description\": \"A list of Freebase topic IDs that are centrally - associated with the video. These are topics that are centrally featured in - the video, and it can be said that the video is mainly about each of these. - You can retrieve information about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"topicCategories\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of Wikipedia URLs that provide a high-level - description of the video's content.\"\n }\n }\n },\n \"PlaylistItemSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a playlist, including title, description and thumbnails. Basic details of - a YouTube Playlist item provided by the author. Next ID: 15\",\n \"properties\": - {\n \"position\": {\n \"description\": \"The order in which - the item appears in the playlist. The value uses a zero-based index, so the - first item has a position of 0, the second item has a position of 1, and so - forth.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The item's title.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the item - was added to the playlist.\",\n \"format\": \"date-time\"\n },\n - \ \"channelTitle\": {\n \"description\": \"Channel title for - the channel that the playlist item belongs to.\",\n \"type\": \"string\"\n - \ },\n \"playlistId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify thGe playlist that the playlist item is in.\",\n - \ \"type\": \"string\"\n },\n \"videoOwnerChannelTitle\": - {\n \"description\": \"Channel title for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"description\": \"The id object contains information that can - be used to uniquely identify the resource that is included in the playlist - as the playlist item.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the user that added the item - to the playlist.\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist item. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"videoOwnerChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel id for the channel this - video belongs to.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The item's description.\"\n }\n - \ },\n \"id\": \"PlaylistItemSnippet\"\n },\n \"InvideoPosition\": - {\n \"id\": \"InvideoPosition\",\n \"description\": \"Describes - the spatial position of a visual widget inside a video. It is a union of various - position types, out of which only will be set one.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"type\": {\n \"enum\": [\n \"corner\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\"\n ],\n \"description\": \"Defines the - position type.\"\n },\n \"cornerPosition\": {\n \"type\": - \"string\",\n \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"Describes in which corner of the - video the visual widget will appear.\"\n }\n }\n },\n \"CommentThreadListResponse\": - {\n \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentThreadListResponse\"\n - \ },\n \"items\": {\n \"description\": \"A list of comment - threads that match the request criteria.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"CommentThread\"\n }\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n },\n \"id\": \"CommentThreadListResponse\",\n - \ \"type\": \"object\"\n },\n \"GeoPoint\": {\n \"properties\": - {\n \"altitude\": {\n \"format\": \"double\",\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\",\n \"type\": - \"number\"\n },\n \"longitude\": {\n \"type\": \"number\",\n - \ \"description\": \"Longitude in degrees.\",\n \"format\": - \"double\"\n },\n \"latitude\": {\n \"description\": - \"Latitude in degrees.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Geographical coordinates of a point, in WGS84.\",\n \"id\": \"GeoPoint\"\n - \ },\n \"Comment\": {\n \"id\": \"Comment\",\n \"description\": - \"A *comment* represents a single YouTube comment.\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#comment\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"ActivityContentDetailsLike\": {\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"description\": - \"Information about a resource that received a positive (like) rating.\",\n - \ \"type\": \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"associatedMembershipGiftingMessageId\": - {\n \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n - \ },\n \"memberLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the Level at which the viewer is - a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"gifterChannelId\": {\n \"description\": - \"The ID of the user that made the membership gifting purchase. This matches - the `snippet.authorChannelId` of the associated membership gifting message.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"SubscriptionSnippet\": {\n \"description\": \"Basic details - about a subscription, including title, description and thumbnails of the subscribed - item.\",\n \"type\": \"object\",\n \"id\": \"SubscriptionSnippet\",\n - \ \"properties\": {\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the subscription belongs to.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The subscription's title.\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the subscription was created.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the subscriber's channel.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The subscription's - details.\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ },\n \"resourceId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.subscriptions.insert\"\n ]\n },\n - \ \"description\": \"The id object contains information about the - channel that the user subscribed to.\",\n \"$ref\": \"ResourceId\"\n - \ }\n }\n },\n \"CaptionListResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#captionListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#captionListResponse\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Caption\"\n },\n - \ \"description\": \"A list of captions that match the request criteria.\"\n - \ }\n },\n \"id\": \"CaptionListResponse\",\n \"type\": - \"object\"\n },\n \"VideoSnippet\": {\n \"id\": \"VideoSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the videos's default snippet.\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that the video was uploaded - to.\"\n },\n \"defaultAudioLanguage\": {\n \"description\": - \"The default_audio_language property specifies the language spoken in the - video's default audio track.\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"description\": \"The video's description. - @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the video was uploaded.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"$ref\": \"VideoLocalization\",\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\"\n - \ },\n \"categoryId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube video category associated with the video.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the video - belongs to.\",\n \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ]\n },\n - \ \"title\": {\n \"description\": \"The video's title. @mutable - youtube.videos.insert youtube.videos.update\",\n \"type\": \"string\"\n - \ },\n \"tags\": {\n \"description\": \"A list of keyword - tags associated with the video. Tags may contain spaces.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ }\n },\n \"description\": \"Basic details about a video, - including title, description, uploader, thumbnails and category.\"\n },\n - \ \"ActivityContentDetailsChannelItem\": {\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource that was added to the channel.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Details about a resource - which was added to a channel.\"\n }\n },\n \"ownerDomain\": \"google.com\",\n - \ \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"fullyEncodeReservedExpansion\": - true,\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"icons\": {\n \"x32\": - \"http://www.google.com/images/icons/product/search-32.gif\",\n \"x16\": - \"http://www.google.com/images/icons/product/search-16.gif\"\n },\n \"revision\": - \"20230131\",\n \"protocol\": \"rest\",\n \"batchPath\": \"batch\",\n \"baseUrl\": - \"https://youtube.googleapis.com/\",\n \"ownerName\": \"Google\",\n \"canonicalName\": - \"YouTube\",\n \"resources\": {\n \"liveStreams\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieve the list of streams associated - with the given channel. --\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": true\n },\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"format\": \"uint32\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"Return LiveStreams with the given ids from - Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": - \"youtube.liveStreams.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\"\n },\n - \ \"insert\": {\n \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveStreams.insert\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"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, content_details, and status.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new stream for the authenticated user.\",\n \"httpMethod\": \"POST\"\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"description\": - \"Deletes an existing stream for the authenticated user.\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"This parameter can only be used in a properly + string: "{\n \"kind\": \"discovery#restDescription\",\n \"fullyEncodeReservedExpansion\": + true,\n \"resources\": {\n \"channelBanners\": {\n \"methods\": {\n + \ \"insert\": {\n \"parameterOrder\": [],\n \"path\": + \"youtube/v3/channelBanners/insert\",\n \"httpMethod\": \"POST\",\n + \ \"id\": \"youtube.channelBanners.insert\",\n \"supportsMediaUpload\": + true,\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"mediaUpload\": + {\n \"maxSize\": \"6291456\",\n \"protocols\": {\n \"simple\": + {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n + \ \"multipart\": true\n },\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n + \ }\n },\n \"accept\": [\n \"image/jpeg\",\n + \ \"image/png\",\n \"application/octet-stream\"\n + \ ]\n },\n \"response\": {\n \"$ref\": + \"ChannelBannerResource\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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 @@ -3848,82 +42,6 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.liveStreams.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"update\": {\n \"id\": \"youtube.liveStreams.update\",\n - \ \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"repeated\": true\n }\n - \ },\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"path\": \"youtube/v3/liveStreams\",\n \"flatPath\": - \"youtube/v3/liveStreams\"\n }\n }\n },\n \"playlists\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"parameters\": {\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Return the playlists owned by the specified channel ID.\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates @@ -3932,102 +50,64 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"description\": - \"Return the playlists owned by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"default\": - \"5\"\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"PlaylistListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.playlists.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"channelId\": {\n \"description\": + \"Unused, channel_id is currently derived from the security context of the + requestor.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"request\": {\n \"$ref\": + \"ChannelBannerResource\"\n }\n }\n }\n },\n \"tests\": + {\n \"methods\": {\n \"insert\": {\n \"httpMethod\": + \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"id\": \"youtube.tests.insert\",\n \"request\": {\n \"$ref\": + \"TestItem\"\n },\n \"parameters\": {\n \"externalChannelId\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"repeated\": true,\n + \ \"required\": true\n }\n },\n \"flatPath\": + \"youtube/v3/tests\",\n \"description\": \"POST method.\",\n \"response\": + {\n \"$ref\": \"TestItem\"\n },\n \"path\": \"youtube/v3/tests\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ]\n }\n }\n },\n \"playlistItems\": {\n \"methods\": + {\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"path\": \"youtube/v3/playlistItems\",\n \"flatPath\": + \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.delete\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": \"*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.\"\n }\n },\n - \ \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/playlists\",\n - \ \"id\": \"youtube.playlists.delete\"\n },\n \"insert\": - {\n \"id\": \"youtube.playlists.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"path\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n }\n },\n \"update\": - {\n \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.update\",\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": + 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.\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true\n }\n },\n \"description\": + \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\"\n },\n + \ \"update\": {\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n + \ \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"required\": true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates @@ -4038,125 +118,59 @@ interactions: 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.\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + owner.\"\n }\n },\n \"id\": \"youtube.playlistItems.update\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.videoCategories.list\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the videoCategory resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true\n },\n \"id\": {\n \"repeated\": true,\n - \ \"description\": \"Returns the video categories with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"default\": - \"en-US\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"regionCode\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"path\": \"youtube/v3/videoCategories\",\n \"flatPath\": - \"youtube/v3/videoCategories\"\n }\n }\n },\n \"i18nLanguages\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the i18nLanguage resource properties that the API response - will include. Set the parameter value to snippet.\"\n },\n \"hl\": + \ ],\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n + \ },\n \"httpMethod\": \"PUT\"\n },\n \"list\": + {\n \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n + \ },\n \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.playlistItems.list\",\n + \ \"parameters\": {\n \"pageToken\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": + {\n \"type\": \"integer\",\n \"default\": \"5\",\n + \ \"location\": \"query\",\n \"format\": \"uint32\",\n + \ \"maximum\": \"50\",\n \"minimum\": \"0\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"default\": \"en_US\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"path\": \"youtube/v3/i18nLanguages\",\n \"flatPath\": - \"youtube/v3/i18nLanguages\",\n \"response\": {\n \"$ref\": - \"I18nLanguageListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.i18nLanguages.list\"\n - \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"insert\": {\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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 + \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"POST\"\n },\n \"transition\": {\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"id\": - \"youtube.liveBroadcasts.transition\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Transition a broadcast to a given status.\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"required\": true,\n - \ \"repeated\": true\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"Broadcast - to transition.\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"broadcastStatus\": {\n \"enum\": - [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"description\": \"The status to which the broadcast is going - to transition.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Start testing the broadcast. YouTube transmits video to - the broadcast's monitor stream. Note that you can only transition a broadcast - to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively + owner.\"\n },\n \"videoId\": {\n \"description\": + \"Return the playlist items associated with the given video ID.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true\n },\n \"playlistId\": + {\n \"type\": \"string\",\n \"description\": \"Return + the playlist items within the given playlist.\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": + true,\n \"type\": \"string\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"flatPath\": + \"youtube/v3/playlistItems\"\n },\n \"insert\": {\n \"path\": + \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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. @@ -4165,53 +179,415 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + owner.\"\n },\n \"part\": {\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"type\": + \"string\"\n }\n },\n \"response\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Inserts a new resource into this + collection.\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"id\": \"youtube.playlistItems.insert\",\n \"request\": + {\n \"$ref\": \"PlaylistItem\"\n },\n \"flatPath\": + \"youtube/v3/playlistItems\",\n \"httpMethod\": \"POST\"\n }\n + \ }\n },\n \"channels\": {\n \"methods\": {\n \"list\": + {\n \"flatPath\": \"youtube/v3/channels\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"mySubscribers\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Return the channels subscribed to the authenticated + user\"\n },\n \"categoryId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return the channels within the specified guide category ID.\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"required\": + true,\n \"description\": \"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.\",\n \"repeated\": + true,\n \"location\": \"query\"\n },\n \"pageToken\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n }\n },\n \"bind\": - {\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n + \ \"description\": \"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.\"\n + \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"location\": \"query\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"maximum\": + \"50\",\n \"default\": \"5\",\n \"minimum\": \"0\"\n + \ },\n \"managedByMe\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"description\": + \"Return the channels managed by the authenticated user.\"\n },\n + \ \"mine\": {\n \"description\": \"Return the ids of + channels owned by the authenticated user.\",\n \"type\": \"boolean\",\n + \ \"location\": \"query\"\n },\n \"forUsername\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return the channel associated with a YouTube + username.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"description\": \"Return the channels with the specified + IDs.\"\n },\n \"hl\": {\n \"location\": + \"query\",\n \"description\": \"Stands for \\\"host language\\\". + Specifies the localization language of the metadata to be filled into snippet.localized. + The field is filled with the default metadata if there is no localization + in the specified language. The parameter value must be a language code included + in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n + \ \"type\": \"string\"\n }\n },\n \"path\": + \"youtube/v3/channels\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n + \ ],\n \"id\": \"youtube.channels.list\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"response\": + {\n \"$ref\": \"ChannelListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"GET\"\n + \ },\n \"update\": {\n \"request\": {\n \"$ref\": + \"Channel\"\n },\n \"flatPath\": \"youtube/v3/channels\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"Channel\"\n },\n \"httpMethod\": + \"PUT\",\n \"description\": \"Updates an existing resource.\",\n + \ \"id\": \"youtube.channels.update\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"part\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\"\n }\n },\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"parameters\": {\n \"streamId\": {\n \"type\": + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/channels\"\n }\n }\n + \ },\n \"liveChatBans\": {\n \"methods\": {\n \"insert\": + {\n \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n + \ \"path\": \"youtube/v3/liveChat/bans\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.liveChatBans.insert\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"httpMethod\": + \"POST\",\n \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"required\": true\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"LiveChatBan\"\n },\n \"flatPath\": + \"youtube/v3/liveChat/bans\"\n },\n \"delete\": {\n \"description\": + \"Deletes a chat ban.\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n + \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.liveChatBans.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"path\": \"youtube/v3/liveChat/bans\"\n + \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": + {\n \"insert\": {\n \"description\": \"Inserts a new resource + into this collection.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n + \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"response\": + {\n \"$ref\": \"LiveChatModerator\"\n },\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n + \ \"required\": true\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.liveChatModerators.insert\",\n \"httpMethod\": + \"POST\"\n },\n \"delete\": {\n \"parameters\": {\n + \ \"id\": {\n \"required\": true,\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"description\": \"Deletes a chat moderator.\",\n \"httpMethod\": + \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"id\": \"youtube.liveChatModerators.delete\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": + [\n \"id\"\n ]\n },\n \"list\": {\n \"path\": + \"youtube/v3/liveChat/moderators\",\n \"id\": \"youtube.liveChatModerators.list\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"parameterOrder\": [\n \"liveChatId\",\n + \ \"part\"\n ],\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"pageToken\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"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.\"\n },\n \"maxResults\": {\n \"format\": + \"uint32\",\n \"location\": \"query\",\n \"type\": + \"integer\",\n \"maximum\": \"50\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"minimum\": \"0\",\n \"default\": + \"5\"\n },\n \"liveChatId\": {\n \"required\": + true,\n \"description\": \"The id of the live chat for which + moderators should be returned.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"part\": + {\n \"location\": \"query\",\n \"repeated\": true,\n + \ \"description\": \"The *part* parameter specifies the liveChatModerator + resource parts that the API response will include. Supported values are id + and snippet.\",\n \"required\": true,\n \"type\": + \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/liveChat/moderators\"\n + \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": + {\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/search\",\n + \ \"parameters\": {\n \"type\": {\n \"type\": + \"string\",\n \"description\": \"Restrict results to a particular + set of resource types from One Platform.\",\n \"location\": \"query\",\n + \ \"repeated\": true\n },\n \"videoLicense\": + {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"Return all videos, regardless of which license they have, + that match the query parameters.\",\n \"Only return videos + that have the standard YouTube license.\",\n \"Only return + videos that have a Creative Commons license. Users can reuse videos with this + license in other videos that they create. Learn more.\"\n ],\n + \ \"description\": \"Filter on the license of the videos.\",\n + \ \"location\": \"query\",\n \"enum\": [\n \"any\",\n + \ \"youtube\",\n \"creativeCommon\"\n ]\n + \ },\n \"relatedToVideoId\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Search related to a resource.\"\n },\n \"locationRadius\": + {\n \"location\": \"query\",\n \"description\": + \"Filter on distance from the location (specified above).\",\n \"type\": + \"string\"\n },\n \"relevanceLanguage\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Return results relevant to this language.\"\n },\n \"topicId\": + {\n \"description\": \"Restrict results to a particular topic.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"publishedAfter\": {\n \"location\": + \"query\",\n \"description\": \"Filter on resources published + after this date.\",\n \"format\": \"google-datetime\",\n \"type\": + \"string\"\n },\n \"eventType\": {\n \"description\": + \"Filter on the livestream status of the videos.\",\n \"enum\": + [\n \"none\",\n \"upcoming\",\n \"live\",\n + \ \"completed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n + \ \"The live broadcast is active.\",\n \"The + live broadcast has been completed.\"\n ],\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"default\": + \"5\",\n \"location\": \"query\",\n \"minimum\": + \"0\",\n \"maximum\": \"50\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\"\n },\n \"publishedBefore\": + {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n + \ \"type\": \"string\",\n \"description\": \"Filter + on resources published before this date.\"\n },\n \"videoDefinition\": + {\n \"type\": \"string\",\n \"enum\": [\n \"any\",\n + \ \"standard\",\n \"high\"\n ],\n + \ \"enumDescriptions\": [\n \"Return all videos, + regardless of their resolution.\",\n \"Only retrieve videos + in standard definition.\",\n \"Only retrieve HD videos.\"\n + \ ],\n \"location\": \"query\",\n \"description\": + \"Filter on the definition of the videos.\"\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"videoDimension\": {\n \"enum\": + [\n \"any\",\n \"2d\",\n \"3d\"\n + \ ],\n \"description\": \"Filter on 3d videos.\",\n + \ \"location\": \"query\",\n \"enumDescriptions\": + [\n \"Include both 3D and non-3D videos in returned results. + This is the default value.\",\n \"Restrict search results to + exclude 3D videos.\",\n \"Restrict search results to only include + 3D videos.\"\n ],\n \"type\": \"string\"\n },\n + \ \"forMine\": {\n \"type\": \"boolean\",\n \"description\": + \"Search for the private videos of the authenticated user.\",\n \"location\": + \"query\"\n },\n \"videoCategoryId\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"Stream to bind, if not set unbind the current one.\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"id\": {\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Broadcast to bind to the stream\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + \"Filter on videos in a specific category.\"\n },\n \"location\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"This parameter can only be used in a properly + \ \"description\": \"Filter on location of the video\"\n },\n + \ \"videoSyndicated\": {\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n + \ \"any\",\n \"true\"\n ],\n \"type\": + \"string\",\n \"description\": \"Filter on syndicated videos.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Return + all videos, syndicated or not.\",\n \"Only retrieve syndicated + videos.\"\n ],\n \"location\": \"query\"\n },\n + \ \"forDeveloper\": {\n \"description\": \"Restrict + the search to only retrieve videos uploaded using the project id of the authenticated + user.\",\n \"type\": \"boolean\",\n \"location\": + \"query\"\n },\n \"order\": {\n \"type\": + \"string\",\n \"default\": \"relevance\",\n \"description\": + \"Sort order of the results.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Resources are sorted in reverse chronological order based + on the date they were created.\",\n \"Resources are sorted + from highest to lowest rating.\",\n \"Resources are sorted + from highest to lowest number of views.\",\n \"Resources are + sorted based on their relevance to the search query. This is the default value + for this parameter.\",\n \"Resources are sorted alphabetically + by title.\",\n \"Channels are sorted in descending order of + their number of uploaded videos.\"\n ],\n \"location\": + \"query\",\n \"enum\": [\n \"searchSortUnspecified\",\n + \ \"date\",\n \"rating\",\n \"viewCount\",\n + \ \"relevance\",\n \"title\",\n \"videoCount\"\n + \ ]\n },\n \"videoCaption\": {\n \"description\": + \"Filter on the presence of captions on the videos.\",\n \"location\": + \"query\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n + \ \"any\",\n \"closedCaption\",\n \"none\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Do not filter results based on + caption availability.\",\n \"Only include videos that have + captions.\",\n \"Only include videos that do not have captions.\"\n + \ ]\n },\n \"regionCode\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Display the content as seen by viewers in this country.\"\n },\n + \ \"videoType\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all videos.\",\n \"Only + retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n + \ ],\n \"location\": \"query\",\n \"description\": + \"Filter on videos of a specific type.\",\n \"enum\": [\n \"videoTypeUnspecified\",\n + \ \"any\",\n \"movie\",\n \"episode\"\n + \ ]\n },\n \"safeSearch\": {\n \"description\": + \"Indicates whether the search results should include restricted content as + well as standard content.\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n + \ \"none\",\n \"moderate\",\n \"strict\"\n + \ ],\n \"default\": \"moderate\",\n \"enumDescriptions\": + [\n \"\",\n \"YouTube will not filter the search + result set.\",\n \"YouTube will filter some content from search + results and, at the least, will filter content that is restricted in your + locale. Based on their content, search results could be removed from search + results or demoted in search results. This is the default parameter value.\",\n + \ \"YouTube will try to exclude all restricted content from + the search result set. Based on their content, search results could be removed + from search results or demoted in search results.\"\n ],\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": + true,\n \"location\": \"query\"\n },\n \"forContentOwner\": + {\n \"description\": \"Search owned by a content owner.\",\n + \ \"type\": \"boolean\",\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*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.\"\n },\n \"channelType\": + {\n \"description\": \"Add a filter on the channel search.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Return + all channels.\",\n \"Only retrieve shows.\"\n ],\n + \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n + \ \"show\"\n ],\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"videoDuration\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"enum\": [\n \"videoDurationUnspecified\",\n + \ \"any\",\n \"short\",\n \"medium\",\n + \ \"long\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Do not filter video search results + based on their duration. This is the default value.\",\n \"Only + include videos that are less than four minutes long.\",\n \"Only + include videos that are between four and 20 minutes long (inclusive).\",\n + \ \"Only include videos longer than 20 minutes.\"\n ],\n + \ \"description\": \"Filter on the duration of the videos.\"\n + \ },\n \"channelId\": {\n \"description\": + \"Filter on resources belonging to this channelId.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"videoEmbeddable\": + {\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n + \ \"any\",\n \"true\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all videos, embeddable or not.\",\n \"Only + retrieve embeddable videos.\"\n ],\n \"location\": + \"query\",\n \"description\": \"Filter on embeddable videos.\"\n + \ },\n \"q\": {\n \"type\": \"string\",\n + \ \"description\": \"Textual search terms to match.\",\n \"location\": + \"query\"\n }\n },\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/search\",\n + \ \"description\": \"Retrieves a list of search resources\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n + \ },\n \"id\": \"youtube.search.list\"\n }\n }\n + \ },\n \"i18nRegions\": {\n \"methods\": {\n \"list\": {\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"description\": + \"The *part* parameter specifies the i18nRegion resource properties that the + API response will include. Set the parameter value to snippet.\",\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true\n },\n \"hl\": {\n + \ \"default\": \"en_US\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.i18nRegions.list\",\n + \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n + \ },\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/i18nRegions\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"flatPath\": \"youtube/v3/i18nRegions\"\n }\n }\n },\n + \ \"membershipsLevels\": {\n \"methods\": {\n \"list\": {\n + \ \"id\": \"youtube.membershipsLevels.list\",\n \"flatPath\": + \"youtube/v3/membershipsLevels\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/membershipsLevels\",\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"The *part* parameter specifies + the membershipsLevel resource parts that the API response will include. Supported + values are id and snippet.\",\n \"required\": true,\n \"repeated\": + true,\n \"type\": \"string\"\n }\n },\n \"description\": + \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"MembershipsLevelListResponse\"\n }\n }\n + \ }\n },\n \"videoCategories\": {\n \"methods\": {\n \"list\": + {\n \"id\": \"youtube.videoCategories.list\",\n \"path\": + \"youtube/v3/videoCategories\",\n \"description\": \"Retrieves a + list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": + \"VideoCategoryListResponse\"\n },\n \"flatPath\": \"youtube/v3/videoCategories\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies the videoCategory resource properties that + the API response will include. Set the parameter value to snippet.\",\n \"required\": + true,\n \"repeated\": true\n },\n \"id\": + {\n \"repeated\": true,\n \"description\": \"Returns + the video categories with the given IDs for Stubby or Apiary.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"regionCode\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"hl\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"default\": \"en-US\"\n + \ }\n },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": + [\n \"part\"\n ]\n }\n }\n },\n \"playlists\": + {\n \"methods\": {\n \"insert\": {\n \"description\": + \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/playlists\",\n + \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"Playlist\"\n },\n \"parameters\": {\n \"part\": + {\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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 @@ -4224,18 +600,32 @@ interactions: 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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"id\": \"youtube.liveBroadcasts.bind\",\n - \ \"description\": \"Bind a broadcast to a stream.\"\n },\n - \ \"delete\": {\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"Broadcast - to delete.\"\n },\n \"onBehalfOfContentOwner\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n + in the parameter value, without having to provide authentication credentials + for each separate channel.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"request\": {\n \"$ref\": \"Playlist\"\n + \ },\n \"id\": \"youtube.playlists.insert\"\n },\n + \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"PlaylistListResponse\"\n },\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.playlists.list\",\n \"path\": + \"youtube/v3/playlists\",\n \"description\": \"Retrieves a list of + resources, possibly filtered.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n \ \"description\": \"*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 @@ -4245,10 +635,22 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"description\": \"This - parameter can only be used in a properly authorized request. *Note:* This - parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* + owner.\"\n },\n \"hl\": {\n \"description\": + \"Return content in specified language\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n + \ \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"Return the playlists with the given IDs for + Stubby or Apiary.\",\n \"type\": \"string\"\n },\n + \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"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.\"\n },\n \"channelId\": {\n \"description\": + \"Return the playlists owned by the specified channel ID.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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 @@ -4260,12 +662,31 @@ interactions: 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.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Delete a given broadcast.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insertCuepoint\": {\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + for each separate channel.\",\n \"type\": \"string\"\n },\n + \ \"mine\": {\n \"description\": \"Return the playlists + owned by the authenticated user.\",\n \"type\": \"boolean\",\n + \ \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"required\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"maxResults\": + {\n \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"location\": + \"query\",\n \"type\": \"integer\",\n \"maximum\": + \"50\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n + \ \"minimum\": \"0\"\n }\n },\n \"flatPath\": + \"youtube/v3/playlists\"\n },\n \"delete\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/playlists\",\n + \ \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -4274,89 +695,25 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"id\": {\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [],\n \"request\": {\n - \ \"$ref\": \"Cuepoint\"\n },\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"Cuepoint\"\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"description\": \"Insert cuepoints in a broadcast\",\n \"id\": - \"youtube.liveBroadcasts.insertCuepoint\"\n },\n \"list\": {\n - \ \"id\": \"youtube.liveBroadcasts.list\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"broadcastType\": {\n \"location\": - \"query\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ],\n \"default\": \"event\",\n \"description\": - \"Return only broadcasts with the selected type.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return broadcasts with the given ids from - Stubby or Apiary.\"\n },\n \"broadcastStatus\": {\n - \ \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"type\": \"string\",\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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, status - and statistics.\"\n },\n \"pageToken\": {\n \"type\": + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"path\": \"youtube/v3/playlists\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"description\": \"Deletes + a resource.\",\n \"id\": \"youtube.playlists.delete\"\n },\n + \ \"update\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"description\": \"Updates an existing resource.\",\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -4365,24 +722,69 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"default\": \"5\",\n - \ \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"type\": \"integer\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"description\": \"Retrieve the - list of broadcasts associated with the given channel.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\"\n },\n \"update\": - {\n \"httpMethod\": \"PUT\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"This - parameter can only be used in a properly authorized request. *Note:* This - parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* + be linked to the specified YouTube content owner.\"\n }\n },\n + \ \"path\": \"youtube/v3/playlists\",\n \"flatPath\": \"youtube/v3/playlists\",\n + \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n + \ \"id\": \"youtube.playlists.update\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": + \"Playlist\"\n }\n }\n }\n },\n \"members\": {\n + \ \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/members\",\n + \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": + \"MemberListResponse\"\n },\n \"flatPath\": \"youtube/v3/members\",\n + \ \"parameters\": {\n \"pageToken\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n + \ \"filterByMemberChannelId\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Comma + separated list of channel IDs. Only data about members that are part of this + list will be included in the response.\"\n },\n \"part\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"repeated\": true,\n + \ \"description\": \"The *part* parameter specifies the member + resource parts that the API response will include. Set the parameter value + to snippet.\"\n },\n \"hasAccessToLevel\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Filter members in the results set to the ones that have access to a level.\"\n + \ },\n \"mode\": {\n \"default\": \"all_current\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n + \ \"\",\n \"Return only members that joined after + the first call with this mode was made.\",\n \"Return all current + members, from newest to oldest.\"\n ],\n \"location\": + \"query\",\n \"enum\": [\n \"listMembersModeUnknown\",\n + \ \"updates\",\n \"all_current\"\n ],\n + \ \"description\": \"Parameter that specifies which channel members + to return.\"\n },\n \"maxResults\": {\n \"default\": + \"5\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n + \ \"minimum\": \"0\",\n \"location\": \"query\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"maximum\": + \"1000\"\n }\n },\n \"id\": \"youtube.members.list\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"description\": \"Retrieves a list of members that + match the request criteria for a channel.\"\n }\n }\n },\n + \ \"subscriptions\": {\n \"methods\": {\n \"list\": {\n \"id\": + \"youtube.subscriptions.list\",\n \"response\": {\n \"$ref\": + \"SubscriptionListResponse\"\n },\n \"flatPath\": \"youtube/v3/subscriptions\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": + {\n \"mine\": {\n \"location\": \"query\",\n \"description\": + \"Flag for returning the subscriptions of the authenticated user.\",\n \"type\": + \"boolean\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"required\": true,\n \"repeated\": + true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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 @@ -4394,136 +796,38 @@ interactions: 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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Updates an existing broadcast for the authenticated - user.\",\n \"id\": \"youtube.liveBroadcasts.update\"\n }\n - \ }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"flatPath\": \"youtube/v3/search\",\n \"description\": - \"Retrieves a list of search resources\",\n \"path\": \"youtube/v3/search\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.search.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"parameters\": {\n \"q\": {\n \"type\": - \"string\",\n \"description\": \"Textual search terms to match.\",\n - \ \"location\": \"query\"\n },\n \"videoType\": - {\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos.\",\n \"Only retrieve movies.\",\n - \ \"Only retrieve episodes of shows.\"\n ],\n \"location\": - \"query\",\n \"description\": \"Filter on videos of a specific - type.\",\n \"type\": \"string\"\n },\n \"forDeveloper\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\"\n },\n - \ \"videoLicense\": {\n \"description\": \"Filter on - the license of the videos.\",\n \"type\": \"string\",\n \"enum\": - [\n \"any\",\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"enumDescriptions\": [\n \"Return - all videos, regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"location\": \"query\"\n },\n - \ \"locationRadius\": {\n \"description\": \"Filter - on distance from the location (specified above).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoDimension\": - {\n \"enumDescriptions\": [\n \"Include both 3D - and non-3D videos in returned results. This is the default value.\",\n \"Restrict - search results to exclude 3D videos.\",\n \"Restrict search - results to only include 3D videos.\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on 3d videos.\",\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ]\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Filter on resources belonging to this channelId.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"safeSearch\": {\n \"location\": - \"query\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"moderate\",\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ],\n \"description\": \"Indicates - whether the search results should include restricted content as well as standard - content.\"\n },\n \"location\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on location of the video\"\n },\n \"topicId\": - {\n \"description\": \"Restrict results to a particular topic.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"publishedAfter\": {\n \"description\": - \"Filter on resources published after this date.\",\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"videoDefinition\": {\n \"description\": - \"Filter on the definition of the videos.\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ],\n \"location\": \"query\"\n - \ },\n \"order\": {\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Resources - are sorted in reverse chronological order based on the date they were created.\",\n - \ \"Resources are sorted from highest to lowest rating.\",\n - \ \"Resources are sorted from highest to lowest number of views.\",\n - \ \"Resources are sorted based on their relevance to the search - query. This is the default value for this parameter.\",\n \"Resources - are sorted alphabetically by title.\",\n \"Channels are sorted - in descending order of their number of uploaded videos.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"description\": \"Sort order of the results.\",\n - \ \"default\": \"relevance\"\n },\n \"videoEmbeddable\": - {\n \"type\": \"string\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"description\": - \"Filter on embeddable videos.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all videos, embeddable or - not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + for each separate channel.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"forChannelId\": {\n \"location\": + \"query\",\n \"description\": \"Return the subscriptions to the + subset of these channels that the authenticated user is subscribed to.\",\n + \ \"type\": \"string\"\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"order\": {\n \"type\": + \"string\",\n \"default\": \"relevance\",\n \"description\": + \"The order of the returned subscriptions\",\n \"enumDescriptions\": + [\n \"\",\n \"Sort by relevance.\",\n \"Sort + by order of activity.\",\n \"Sort alphabetically.\"\n ],\n + \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n + \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n + \ ],\n \"location\": \"query\"\n },\n + \ \"mySubscribers\": {\n \"description\": \"Return + the subscribers of the given channel owner.\",\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"myRecentSubscribers\": + {\n \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"id\": {\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return the subscriptions with the given IDs + for Stubby or Apiary.\"\n },\n \"maxResults\": {\n \"format\": + \"uint32\",\n \"maximum\": \"50\",\n \"type\": \"integer\",\n + \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"location\": \"query\"\n + \ },\n \"channelId\": {\n \"description\": + \"Return the subscriptions of the given channel owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \ \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates @@ -4534,235 +838,67 @@ interactions: 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.\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Restrict results to a particular set - of resource types from One Platform.\"\n },\n \"relevanceLanguage\": - {\n \"description\": \"Return results relevant to this language.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"channelType\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Add - a filter on the channel search.\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ]\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"relatedToVideoId\": {\n \"description\": - \"Search related to a resource.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"publishedBefore\": - {\n \"format\": \"google-datetime\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on resources published before this date.\"\n },\n \"videoCaption\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"description\": \"Filter on the presence - of captions on the videos.\",\n \"type\": \"string\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ]\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"description\": \"Display the content as seen by viewers in - this country.\",\n \"location\": \"query\"\n },\n - \ \"eventType\": {\n \"description\": \"Filter on the - livestream status of the videos.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"type\": \"integer\"\n },\n \"videoDuration\": - {\n \"enumDescriptions\": [\n \"\",\n \"Do - not filter video search results based on their duration. This is the default - value.\",\n \"Only include videos that are less than four minutes - long.\",\n \"Only include videos that are between four and - 20 minutes long (inclusive).\",\n \"Only include videos longer - than 20 minutes.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Filter - on the duration of the videos.\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ]\n },\n \"videoCategoryId\": - {\n \"description\": \"Filter on videos in a specific category.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"forMine\": {\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"forContentOwner\": - {\n \"description\": \"Search owned by a content owner.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"videoSyndicated\": {\n \"enum\": - [\n \"videoSyndicatedUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"description\": - \"Filter on syndicated videos.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all videos, syndicated or - not.\",\n \"Only retrieve syndicated videos.\"\n ]\n - \ }\n }\n }\n }\n },\n \"members\": {\n - \ \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/members\",\n - \ \"description\": \"Retrieves a list of members that match the request - criteria for a channel.\",\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"maxResults\": {\n - \ \"location\": \"query\",\n \"default\": \"5\",\n - \ \"minimum\": \"0\",\n \"maximum\": \"1000\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"type\": \"integer\"\n },\n - \ \"filterByMemberChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Comma - separated list of channel IDs. Only data about members that are part of this - list will be included in the response.\"\n },\n \"hasAccessToLevel\": - {\n \"description\": \"Filter members in the results set to the - ones that have access to a level.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"mode\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - only members that joined after the first call with this mode was made.\",\n - \ \"Return all current members, from newest to oldest.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"default\": \"all_current\",\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - member resource parts that the API response will include. Set the parameter - value to snippet.\"\n }\n },\n \"flatPath\": - \"youtube/v3/members\",\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"id\": \"youtube.members.list\"\n - \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"delete\": {\n \"description\": \"Deletes a resource.\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"linkingToken\": - {\n \"required\": true,\n \"description\": \"Delete - the partner links with the given linking token.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"type\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Type of the link to be deleted.\",\n \"required\": true\n },\n - \ \"part\": {\n \"repeated\": true,\n \"description\": - \"Do not use. Required for compatibility.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.thirdPartyLinks.delete\",\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ]\n },\n - \ \"update\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\",\n \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n - \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.thirdPartyLinks.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"description\": \"Get - a third party link of the given type.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"linkingToken\": {\n \"description\": - \"Get a third party link with the given linking token.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"description\": \"Inserts a new - resource into this collection.\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"repeated\": true,\n - \ \"required\": true\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.insert\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/thirdPartyLinks\"\n }\n - \ }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"request\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"id\": \"youtube.tests.insert\",\n \"description\": \"POST - method.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/tests\",\n \"response\": - {\n \"$ref\": \"TestItem\"\n },\n \"parameters\": - {\n \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true\n }\n - \ },\n \"path\": \"youtube/v3/tests\",\n \"httpMethod\": - \"POST\"\n }\n }\n },\n \"watermarks\": {\n \"methods\": - {\n \"unset\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"required\": + owner.\"\n }\n },\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/subscriptions\"\n + \ },\n \"delete\": {\n \"path\": \"youtube/v3/subscriptions\",\n + \ \"id\": \"youtube.subscriptions.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n + \ \"parameters\": {\n \"id\": {\n \"required\": true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Allows removal of - channel watermark.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.watermarks.unset\",\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/watermarks/unset\",\n \"flatPath\": - \"youtube/v3/watermarks/unset\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ]\n },\n \"set\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"id\": - \"youtube.watermarks.set\",\n \"mediaUpload\": {\n \"maxSize\": - \"10485760\",\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"description\": \"Allows upload of watermark image - and setting it for a channel.\",\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": + \ ],\n \"description\": \"Deletes a resource.\",\n \"flatPath\": + \"youtube/v3/subscriptions\"\n },\n \"insert\": {\n \"request\": + {\n \"$ref\": \"Subscription\"\n },\n \"response\": + {\n \"$ref\": \"Subscription\"\n },\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"required\": true,\n + \ \"repeated\": true,\n \"location\": \"query\"\n + \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"flatPath\": + \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.insert\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/subscriptions\"\n + \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": + {\n \"methods\": {\n \"updateCommentThreads\": {\n \"path\": + \"youtube/v3/commentThreads\",\n \"parameterOrder\": [],\n \"flatPath\": + \"youtube/v3/commentThreads\",\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"description\": + \"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.\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n + \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": + \"PUT\",\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n + \ \"response\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"request\": {\n \"$ref\": + \"CommentThread\"\n }\n }\n }\n }\n + \ }\n },\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": + {\n \"parameters\": {\n \"hl\": {\n \"location\": + \"query\",\n \"default\": \"en_US\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true,\n \"description\": \"The *part* + parameter specifies the i18nLanguage resource properties that the API response + will include. Set the parameter value to snippet.\"\n }\n },\n + \ \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"response\": + {\n \"$ref\": \"I18nLanguageListResponse\"\n },\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.i18nLanguages.list\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/i18nLanguages\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Retrieves + a list of resources, possibly filtered.\"\n }\n }\n },\n \"liveBroadcasts\": + {\n \"methods\": {\n \"insertCuepoint\": {\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"*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 @@ -4771,146 +907,128 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelId\": + be linked to the specified YouTube content owner.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"description\": + \"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.\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"description\": \"Broadcast to insert ads to, or + equivalently `external_video_id` for internal use.\",\n \"type\": + \"string\"\n }\n },\n \"request\": {\n \"$ref\": + \"Cuepoint\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n + \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"response\": + {\n \"$ref\": \"Cuepoint\"\n },\n \"description\": + \"Insert cuepoints in a broadcast\",\n \"parameterOrder\": [],\n + \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"POST\"\n },\n \"bind\": {\n \"id\": + \"youtube.liveBroadcasts.bind\",\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n + \ \"parameterOrder\": [\n \"id\",\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"description\": \"Bind a broadcast to a stream.\",\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"httpMethod\": + \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n }\n }\n - \ }\n },\n \"comments\": {\n \"methods\": {\n \"insert\": - {\n \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.comments.insert\",\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"setModerationStatus\": {\n \"id\": - \"youtube.comments.setModerationStatus\",\n \"parameters\": {\n \"id\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"Modifies - the moderation status of the comments with the given IDs\",\n \"location\": - \"query\"\n },\n \"moderationStatus\": {\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by - a moderator.\",\n \"\",\n \"The comment is unfit - for display.\"\n ],\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"banAuthor\": - {\n \"default\": \"false\",\n \"type\": \"boolean\",\n - \ \"description\": \"If set to true the author of the comment - gets added to the ban list. This means all future comments of the author will - autmomatically be rejected. Only valid in combination with STATUS_REJECTED.\",\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Sets the moderation status of one or more comments.\",\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ],\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\",\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"update\": {\n \"scopes\": [\n + \ \"description\": \"*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.\"\n },\n \"streamId\": {\n \"description\": + \"Stream to bind, if not set unbind the current one.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Broadcast to bind to the stream\",\n \"required\": + true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"repeated\": true\n + \ }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\"\n + \ },\n \"transition\": {\n \"httpMethod\": \"POST\",\n + \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n + \ \"part\"\n ],\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n }\n - \ },\n \"request\": {\n \"$ref\": \"Comment\"\n - \ },\n \"flatPath\": \"youtube/v3/comments\",\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.comments.update\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n }\n - \ },\n \"markAsSpam\": {\n \"id\": \"youtube.comments.markAsSpam\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Expresses the caller's opinion - that one or more comments should be flagged as spam.\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"repeated\": + \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"description\": + \"Transition a broadcast to a given status.\",\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"repeated\": true,\n \"location\": \"query\",\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n - \ \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/comments/markAsSpam\",\n \"httpMethod\": \"POST\",\n - \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.comments.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"path\": - \"youtube/v3/comments\",\n \"description\": \"Deletes a resource.\"\n - \ },\n \"list\": {\n \"id\": \"youtube.comments.list\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"parentId\": {\n \"description\": \"Returns replies - to the specified comment. Note, currently YouTube features only one level - of replies (ie replies to top level comments). However replies to replies - may be supported in the future.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"default\": \"20\",\n \"minimum\": \"1\",\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"100\",\n \"format\": \"uint32\"\n },\n \"textFormat\": - {\n \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"location\": - \"query\",\n \"description\": \"The requested text format for - the returned comments.\",\n \"default\": \"html\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comments with the given IDs for - One Platform.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more comment - resource properties that the API response will include.\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"path\": \"youtube/v3/comments\",\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"videoAbuseReportReasons\": {\n - \ \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - videoCategory resource parts that the API response will include. Supported - values are id and snippet.\",\n \"repeated\": true\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"default\": - \"en-US\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"thumbnails\": - {\n \"methods\": {\n \"set\": {\n \"mediaUpload\": {\n - \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"2097152\",\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ }\n }\n },\n \"id\": \"youtube.thumbnails.set\",\n - \ \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"path\": \"youtube/v3/thumbnails/set\",\n \"supportsMediaUpload\": - true,\n \"httpMethod\": \"POST\",\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*Note:* + \"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.\",\n \"required\": true\n },\n \"id\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Broadcast + to transition.\"\n },\n \"broadcastStatus\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Start testing the broadcast. YouTube + transmits video to the broadcast's monitor stream. Note that you can only + transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream + property is set to true.\\\",\",\n \"Return only persistent + broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting + video.\"\n ],\n \"enum\": [\n \"statusUnspecified\",\n + \ \"testing\",\n \"live\",\n \"complete\"\n + \ ],\n \"description\": \"The status to which the + broadcast is going to transition.\",\n \"required\": true\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"*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 @@ -4918,31 +1036,20 @@ interactions: that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"Returns the Thumbnail with the given video - IDs for Stubby or Apiary.\",\n \"location\": \"query\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n \"description\": - \"As this is not an insert in a strict sense (it supports uploading/setting - of a thumbnail for multiple videos, which doesn't result in creation of a - single resource), I use a custom verb here.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"videoId\"\n ]\n - \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/channels\",\n - \ \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/channels\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"id\": \"youtube.channels.list\",\n - \ \"parameters\": {\n \"managedByMe\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the channels managed by the authenticated user.\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"description\": - \"Return the channels with the specified IDs.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": + The CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n }\n }\n },\n \"insert\": + {\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"httpMethod\": + \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"required\": + true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"*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 @@ -4951,103 +1058,87 @@ interactions: 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.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"0\",\n \"location\": - \"query\"\n },\n \"mySubscribers\": {\n \"description\": - \"Return the channels subscribed to the authenticated user\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n },\n - \ \"forUsername\": {\n \"description\": \"Return the - channel associated with a YouTube username.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"mine\": - {\n \"description\": \"Return the ids of channels owned by the - authenticated user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"categoryId\": {\n \"type\": - \"string\",\n \"description\": \"Return the channels within the - specified guide category ID.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ]\n },\n \"update\": {\n \"id\": \"youtube.channels.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/channels\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"request\": {\n - \ \"$ref\": \"Channel\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"path\": \"youtube/v3/channels\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"request\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"parameterOrder\": [],\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/channelBanners/insert\",\n \"response\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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 + be linked to the specified YouTube content owner.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n }\n },\n \"flatPath\": + \"youtube/v3/liveBroadcasts\",\n \"description\": \"Inserts a new + stream for the authenticated user.\",\n \"id\": \"youtube.liveBroadcasts.insert\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n + \ },\n \"update\": {\n \"description\": \"Updates an + existing broadcast for the authenticated user.\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"LiveBroadcast\"\n },\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"description\": \"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.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"This parameter can only be used in a properly + provide authentication credentials for each individual channel. The CMS account + that the user authenticates with must be linked to the specified YouTube content + owner.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"youtube.liveBroadcasts.update\",\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"PUT\"\n },\n + \ \"delete\": {\n \"id\": \"youtube.liveBroadcasts.delete\",\n + \ \"description\": \"Delete a given broadcast.\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n + \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Broadcast to delete.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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 @@ -5061,389 +1152,321 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.channelBanners.insert\",\n - \ \"httpMethod\": \"POST\",\n \"supportsMediaUpload\": true,\n - \ \"path\": \"youtube/v3/channelBanners/insert\"\n }\n }\n - \ },\n \"commentThreads\": {\n \"methods\": {\n \"insert\": - {\n \"request\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"id\": \"youtube.commentThreads.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": + for each separate channel.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n }\n },\n \"list\": {\n + \ \"id\": \"youtube.liveBroadcasts.list\",\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n + \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"broadcastStatus\": + {\n \"enumDescriptions\": [\n \"\",\n \"Return + all broadcasts.\",\n \"Return current live broadcasts.\",\n + \ \"Return broadcasts that have not yet started.\",\n \"Return + broadcasts that have already ended.\"\n ],\n \"enum\": + [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n + \ \"active\",\n \"upcoming\",\n \"completed\"\n + \ ],\n \"location\": \"query\",\n \"description\": + \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"format\": + \"uint32\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"location\": \"query\",\n \"default\": \"5\",\n + \ \"minimum\": \"0\",\n \"maximum\": \"50\",\n \"type\": + \"integer\"\n },\n \"id\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": - true\n }\n },\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"list\": {\n \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"id\": \"youtube.commentThreads.list\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"moderationStatus\": - {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": - \"string\",\n \"description\": \"Limits the returned comment - threads to those with the specified moderation status. Not compatible with - the 'id' filter. Valid values: published, heldForReview, likelySpam.\",\n - \ \"default\": \"published\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"textFormat\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": - \"html\",\n \"description\": \"The requested text format for - the returned comments.\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ]\n },\n \"videoId\": + true,\n \"description\": \"Return broadcasts with the given ids + from Stubby or Apiary.\"\n },\n \"mine\": {\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"description\": \"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, status + and statistics.\",\n \"location\": \"query\",\n \"required\": + true,\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads of the specified - video.\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"minimum\": \"1\",\n \"maximum\": \"100\",\n \"default\": - \"20\"\n },\n \"allThreadsRelatedToChannelId\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\"\n },\n \"order\": - {\n \"enumDescriptions\": [\n \"\",\n \"Order - by time.\",\n \"Order by relevance.\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"default\": \"time\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"searchTerms\": {\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"Returns - the comment threads with the given IDs for Stubby or Apiary.\"\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Returns the comment threads - for all the channel comments (ie does not include comments left on videos).\"\n - \ }\n }\n }\n }\n },\n \"superChatEvents\": - {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.superChatEvents.list\",\n + \ \"description\": \"*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.\"\n },\n \"broadcastType\": {\n \"enum\": + [\n \"broadcastTypeFilterUnspecified\",\n \"all\",\n + \ \"event\",\n \"persistent\"\n ],\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Return + all broadcasts.\",\n \"Return only scheduled event broadcasts.\",\n + \ \"Return only persistent broadcasts.\"\n ],\n + \ \"description\": \"Return only broadcasts with the selected + type.\",\n \"default\": \"event\"\n }\n },\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"path\": - \"youtube/v3/superChatEvents\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"parameters\": {\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ ],\n \"httpMethod\": \"GET\",\n \"description\": + \"Retrieve the list of broadcasts associated with the given channel.\",\n + \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"response\": + {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\"\n + \ }\n }\n },\n \"commentThreads\": {\n \"methods\": + {\n \"list\": {\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"parameters\": {\n \"channelId\": + {\n \"location\": \"query\",\n \"description\": + \"Returns the comment threads for all the channel comments (ie does not include + comments left on videos).\",\n \"type\": \"string\"\n },\n + \ \"searchTerms\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Limits the returned comment threads + to those matching the specified key words. Not compatible with the 'id' filter.\"\n + \ },\n \"textFormat\": {\n \"enum\": [\n + \ \"textFormatUnspecified\",\n \"html\",\n \"plainText\"\n + \ ],\n \"default\": \"html\",\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"The requested text format for the returned comments.\",\n \"enumDescriptions\": + [\n \"\",\n \"Returns the comments in HTML format. + This is the default value.\",\n \"Returns the comments in plain + text format.\"\n ]\n },\n \"pageToken\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n \ \"description\": \"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.\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"Return rendered funding amounts in specified - language.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the superChatEvent resource parts that the API response - will include. This parameter is currently not supported.\",\n \"required\": - true\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"minimum\": \"1\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"type\": + \ },\n \"moderationStatus\": {\n \"default\": + \"published\",\n \"enumDescriptions\": [\n \"The + comment is available for public display.\",\n \"The comment + is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Limits the returned comment threads to those with the specified moderation + status. Not compatible with the 'id' filter. Valid values: published, heldForReview, + likelySpam.\",\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ]\n },\n \"order\": {\n \"enumDescriptions\": + [\n \"\",\n \"Order by time.\",\n \"Order + by relevance.\"\n ],\n \"default\": \"time\",\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"enum\": [\n \"orderUnspecified\",\n \"time\",\n + \ \"relevance\"\n ]\n },\n \"maxResults\": + {\n \"default\": \"20\",\n \"minimum\": \"1\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ }\n }\n }\n },\n \"abuseReports\": {\n \"methods\": - {\n \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n }\n - \ }\n }\n },\n \"activities\": {\n \"methods\": {\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"format\": - \"uint32\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"pageToken\": + \"100\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"description\": \"The *part* parameter specifies a comma-separated + list of one or more commentThread resource properties that the API response + will include.\",\n \"required\": true,\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"videoId\": {\n \"type\": \"string\",\n + \ \"description\": \"Returns the comment threads of the specified + video.\",\n \"location\": \"query\"\n },\n \"id\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"publishedAfter\": - {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n - \ \"type\": \"string\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"home\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"publishedBefore\": - {\n \"format\": \"google-datetime\",\n \"type\": + \ \"description\": \"Returns the comment threads with the given + IDs for Stubby or Apiary.\",\n \"repeated\": true\n },\n + \ \"allThreadsRelatedToChannelId\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Returns the comment threads of all videos of the channel and the channel + comments as well.\"\n }\n },\n \"path\": \"youtube/v3/commentThreads\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"id\": + \"youtube.commentThreads.list\"\n },\n \"insert\": {\n \"id\": + \"youtube.commentThreads.insert\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"request\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"required\": true,\n \"repeated\": + true\n }\n },\n \"description\": \"Inserts a + new resource into this collection.\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/commentThreads\",\n + \ \"response\": {\n \"$ref\": \"CommentThread\"\n }\n + \ }\n }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": + {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"parameters\": {\n \"hl\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"default\": + \"en-US\"\n },\n \"part\": {\n \"repeated\": + true,\n \"description\": \"The *part* parameter specifies the + videoCategory resource parts that the API response will include. Supported + values are id and snippet.\",\n \"required\": true,\n \"type\": \"string\",\n \"location\": \"query\"\n }\n },\n \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/activities\",\n \"response\": {\n - \ \"$ref\": \"ActivityListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.activities.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/activities\"\n }\n - \ }\n },\n \"i18nRegions\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"hl\": {\n \"default\": - \"en_US\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": + \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": + \"youtube.videoAbuseReportReasons.list\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n + \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n + \ },\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n + \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"comments\": + {\n \"methods\": {\n \"insert\": {\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"required\": true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\"\n }\n - \ },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/i18nRegions\",\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ }\n }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.liveChatMessages.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n },\n + \"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.\",\n \"repeated\": true\n }\n },\n + \ \"request\": {\n \"$ref\": \"Comment\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n + \ },\n \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.comments.insert\",\n \ \"description\": \"Inserts a new resource into this collection.\"\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"parameters\": - {\n \"maxResults\": {\n \"minimum\": \"200\",\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"500\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"maximum\": \"2000\"\n - \ },\n \"profileImageSize\": {\n \"minimum\": - \"16\",\n \"type\": \"integer\",\n \"maximum\": - \"720\",\n \"format\": \"uint32\",\n \"description\": - \"Specifies the size of the profile image that should be returned for each - user.\",\n \"location\": \"query\"\n },\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for which comments - should be returned.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the liveChatComment resource parts that the API - response will include. Supported values are id and snippet.\",\n \"required\": - true\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"hl\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Specifies the localization language in which - the system messages should be returned.\"\n }\n },\n \"id\": - \"youtube.liveChatMessages.list\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"httpMethod\": \"GET\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat message.\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"id\": \"youtube.liveChatMessages.delete\"\n }\n }\n - \ },\n \"youtube\": {\n \"resources\": {\n \"v3\": {\n \"methods\": - {\n \"updateCommentThreads\": {\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [],\n - \ \"httpMethod\": \"PUT\"\n }\n }\n }\n - \ }\n },\n \"liveChatBans\": {\n \"methods\": {\n \"insert\": - {\n \"path\": \"youtube/v3/liveChat/bans\",\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.liveChatBans.insert\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\"\n }\n }\n - \ },\n \"delete\": {\n \"id\": \"youtube.liveChatBans.delete\",\n - \ \"description\": \"Deletes a chat ban.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"insert\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"youtube.liveChatModerators.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"list\": {\n \"response\": - {\n \"$ref\": \"LiveChatModeratorListResponse\"\n },\n - \ \"id\": \"youtube.liveChatModerators.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": - {\n \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\",\n \"type\": - \"integer\",\n \"maximum\": \"50\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n },\n \"liveChatId\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The id of the live chat for which moderators should be returned.\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\"\n },\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"description\": \"Deletes a - chat moderator.\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.liveChatModerators.delete\"\n }\n }\n },\n \"membershipsLevels\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the membershipsLevel resource parts that the API response will include. Supported - values are id and snippet.\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"description\": \"Retrieves a list of all pricing levels offered - by a creator to the fans.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"path\": \"youtube/v3/membershipsLevels\"\n }\n - \ }\n },\n \"channelSections\": {\n \"methods\": {\n \"insert\": - {\n \"path\": \"youtube/v3/channelSections\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"id\": \"youtube.channelSections.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n + \ },\n \"setModerationStatus\": {\n \"httpMethod\": + \"POST\",\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n + \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n + \ ],\n \"description\": \"Sets the moderation status of one + or more comments.\",\n \"id\": \"youtube.comments.setModerationStatus\",\n + \ \"parameters\": {\n \"moderationStatus\": {\n \"required\": + true,\n \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ],\n + \ \"location\": \"query\",\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ],\n \"description\": + \"Specifies the requested moderation status. Note, comments can be in statuses, + which are not available through this call. For example, this call does not + allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, + MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"type\": + \"string\"\n },\n \"banAuthor\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"default\": + \"false\",\n \"description\": \"If set to true the author of + the comment gets added to the ban list. This means all future comments of + the author will autmomatically be rejected. Only valid in combination with + STATUS_REJECTED.\"\n },\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"description\": + \"Modifies the moderation status of the comments with the given IDs\",\n \"type\": + \"string\",\n \"repeated\": true\n }\n }\n + \ },\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"request\": {\n \"$ref\": \"Comment\"\n },\n + \ \"response\": {\n \"$ref\": \"Comment\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/comments\",\n \"description\": \"Updates an existing + resource.\",\n \"path\": \"youtube/v3/comments\",\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\",\n \"description\": + \"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.\",\n + \ \"location\": \"query\"\n }\n },\n \"id\": + \"youtube.comments.update\"\n },\n \"delete\": {\n \"parameterOrder\": + [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"path\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.delete\",\n + \ \"description\": \"Deletes a resource.\",\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ]\n },\n \"markAsSpam\": {\n \"flatPath\": + \"youtube/v3/comments/markAsSpam\",\n \"path\": \"youtube/v3/comments/markAsSpam\",\n + \ \"description\": \"Expresses the caller's opinion that one or more + comments should be flagged as spam.\",\n \"httpMethod\": \"POST\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.comments.markAsSpam\",\n \"parameters\": + {\n \"id\": {\n \"description\": \"Flags the comments + with the given IDs as spam in the caller's opinion.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"required\": true\n }\n },\n \"parameterOrder\": + [\n \"id\"\n ]\n },\n \"list\": {\n \"response\": + {\n \"$ref\": \"CommentListResponse\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\",\n \ \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": + parameter specifies a comma-separated list of one or more comment resource + properties that the API response will include.\"\n },\n \"parentId\": + {\n \"location\": \"query\",\n \"description\": + \"Returns replies to the specified comment. Note, currently YouTube features + only one level of replies (ie replies to top level comments). However replies + to replies may be supported in the future.\",\n \"type\": \"string\"\n + \ },\n \"textFormat\": {\n \"location\": + \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ],\n + \ \"default\": \"html\",\n \"enumDescriptions\": + [\n \"\",\n \"Returns the comments in HTML format. + This is the default value.\",\n \"Returns the comments in plain + text format.\"\n ],\n \"description\": \"The requested + text format for the returned comments.\",\n \"type\": \"string\"\n + \ },\n \"maxResults\": {\n \"type\": \"integer\",\n + \ \"location\": \"query\",\n \"maximum\": \"100\",\n + \ \"format\": \"uint32\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"minimum\": \"1\",\n \"default\": + \"20\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n }\n },\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"parameters\": {\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\",\n \"location\": \"query\"\n },\n - \ \"hl\": {\n \"description\": \"Return content in - specified language\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"description\": \"Return the ChannelSections owned - by the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": + \ \"repeated\": true,\n \"description\": \"Returns + the comments with the given IDs for One Platform.\"\n }\n },\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"id\": \"youtube.comments.list\",\n \"httpMethod\": \"GET\",\n + \ \"flatPath\": \"youtube/v3/comments\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/comments\"\n + \ }\n }\n },\n \"watermarks\": {\n \"methods\": {\n + \ \"set\": {\n \"request\": {\n \"$ref\": \"InvideoBranding\"\n + \ },\n \"path\": \"youtube/v3/watermarks/set\",\n \"supportsMediaUpload\": + true,\n \"mediaUpload\": {\n \"maxSize\": \"10485760\",\n + \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ],\n \"protocols\": + {\n \"simple\": {\n \"multipart\": true,\n \"path\": + \"/upload/youtube/v3/watermarks/set\"\n },\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n + \ \"multipart\": true\n }\n }\n },\n + \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"parameters\": + {\n \"channelId\": {\n \"required\": true,\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*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.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Allows + upload of watermark image and setting it for a channel.\",\n \"httpMethod\": + \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"channelId\"\n ],\n + \ \"id\": \"youtube.watermarks.set\"\n },\n \"unset\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameters\": {\n \"channelId\": {\n + \ \"required\": true,\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -5453,10 +1476,65 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the ChannelSections owned by the specified - channel ID.\"\n },\n \"part\": {\n \"repeated\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Allows removal of channel watermark.\",\n \"flatPath\": + \"youtube/v3/watermarks/unset\",\n \"id\": \"youtube.watermarks.unset\",\n + \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/watermarks/unset\",\n + \ \"parameterOrder\": [\n \"channelId\"\n ]\n + \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": + {\n \"list\": {\n \"id\": \"youtube.superChatEvents.list\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": + {\n \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"maxResults\": + {\n \"type\": \"integer\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"location\": \"query\",\n \"maximum\": + \"50\",\n \"minimum\": \"1\",\n \"default\": \"5\",\n + \ \"format\": \"uint32\"\n },\n \"hl\": + {\n \"location\": \"query\",\n \"description\": + \"Return rendered funding amounts in specified language.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"repeated\": + true,\n \"description\": \"The *part* parameter specifies the + superChatEvent resource parts that the API response will include. This parameter + is currently not supported.\",\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": + \"SuperChatEventListResponse\"\n },\n \"path\": \"youtube/v3/superChatEvents\",\n + \ \"flatPath\": \"youtube/v3/superChatEvents\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n + \ }\n }\n },\n \"channelSections\": {\n \"methods\": + {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/channelSections\",\n \"response\": + {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"hl\": {\n \"description\": + \"Return content in specified language\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"mine\": + {\n \"type\": \"boolean\",\n \"location\": \"query\",\n + \ \"description\": \"Return the ChannelSections owned by the authenticated + user.\"\n },\n \"id\": {\n \"description\": + \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true\n },\n \"channelId\": + {\n \"description\": \"Return the ChannelSections owned by the + specified channel ID.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"repeated\": true,\n \"description\": \"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 @@ -5464,20 +1542,88 @@ interactions: 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.\",\n \"required\": + the API response will also contain all of those nested properties.\",\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\"\n }\n },\n \"parameterOrder\": [\n + \ \"part\"\n ],\n \"id\": \"youtube.channelSections.list\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/channelSections\"\n + \ },\n \"delete\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"required\": true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.channelSections.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/channelSections\",\n \"response\": {\n \"$ref\": - \"ChannelSectionListResponse\"\n },\n \"httpMethod\": \"GET\",\n + \ }\n },\n \"path\": \"youtube/v3/channelSections\",\n + \ \"id\": \"youtube.channelSections.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"description\": \"Deletes + a resource.\",\n \"flatPath\": \"youtube/v3/channelSections\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"DELETE\"\n },\n \"insert\": + {\n \"description\": \"Inserts a new resource into this collection.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"ChannelSection\"\n + \ },\n \"id\": \"youtube.channelSections.insert\",\n \"httpMethod\": + \"POST\",\n \"request\": {\n \"$ref\": \"ChannelSection\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"required\": + true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"path\": \"youtube/v3/channelSections\"\n },\n \"update\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.update\",\n + \ \"description\": \"Updates an existing resource.\",\n \"flatPath\": + \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"response\": {\n \"$ref\": \"ChannelSection\"\n + \ },\n \"request\": {\n \"$ref\": \"ChannelSection\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"required\": true,\n \"location\": + \"query\",\n \"description\": \"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.\",\n + \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify @@ -5488,17 +1634,68 @@ interactions: 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.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.delete\"\n - \ },\n \"update\": {\n \"id\": \"youtube.channelSections.update\",\n + \ },\n \"httpMethod\": \"PUT\"\n }\n }\n },\n + \ \"liveChatMessages\": {\n \"methods\": {\n \"insert\": {\n + \ \"id\": \"youtube.liveChatMessages.insert\",\n \"flatPath\": + \"youtube/v3/liveChat/messages\",\n \"request\": {\n \"$ref\": + \"LiveChatMessage\"\n },\n \"description\": \"Inserts a + new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"required\": true\n }\n },\n \"httpMethod\": + \"POST\",\n \"path\": \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"LiveChatMessage\"\n }\n },\n \"delete\": {\n \"flatPath\": + \"youtube/v3/liveChat/messages\",\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"id\": \"youtube.liveChatMessages.delete\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"description\": \"Deletes a chat message.\",\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"httpMethod\": \"DELETE\"\n },\n \"list\": {\n \"parameterOrder\": + [\n \"liveChatId\",\n \"part\"\n ],\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": + {\n \"liveChatId\": {\n \"description\": \"The id + of the live chat for which comments should be returned.\",\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"pageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"profileImageSize\": {\n \"minimum\": + \"16\",\n \"location\": \"query\",\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"Specifies the size of the profile image that should be returned for each + user.\",\n \"maximum\": \"720\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"description\": \"The *part* parameter specifies the liveChatComment + resource parts that the API response will include. Supported values are id + and snippet.\",\n \"location\": \"query\",\n \"repeated\": + true\n },\n \"hl\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Specifies + the localization language in which the system messages should be returned.\"\n + \ },\n \"maxResults\": {\n \"maximum\": + \"2000\",\n \"format\": \"uint32\",\n \"default\": + \"500\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"minimum\": \"200\",\n \"location\": \"query\",\n + \ \"type\": \"integer\"\n }\n },\n \"path\": + \"youtube/v3/liveChat/messages\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"flatPath\": + \"youtube/v3/liveChat/messages\",\n \"response\": {\n \"$ref\": + \"LiveChatMessageListResponse\"\n },\n \"id\": \"youtube.liveChatMessages.list\"\n + \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"delete\": + {\n \"flatPath\": \"youtube/v3/videos\",\n \"id\": \"youtube.videos.delete\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + \ ],\n \"httpMethod\": \"DELETE\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -5506,102 +1703,160 @@ interactions: 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.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"path\": \"youtube/v3/channelSections\"\n }\n }\n },\n - \ \"captions\": {\n \"methods\": {\n \"update\": {\n \"path\": - \"youtube/v3/captions\",\n \"mediaUpload\": {\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ }\n },\n \"maxSize\": \"104857600\"\n - \ },\n \"flatPath\": \"youtube/v3/captions\",\n \"id\": - \"youtube.captions.update\",\n \"httpMethod\": \"PUT\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Caption\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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 + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n },\n \"parameterOrder\": + [\n \"id\"\n ],\n \"description\": \"Deletes + a resource.\",\n \"path\": \"youtube/v3/videos\"\n },\n \"insert\": + {\n \"description\": \"Inserts a new resource into this collection.\",\n + \ \"path\": \"youtube/v3/videos\",\n \"supportsMediaUpload\": + true,\n \"request\": {\n \"$ref\": \"Video\"\n },\n + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"stabilize\": {\n \"type\": + \"boolean\",\n \"location\": \"query\",\n \"description\": + \"Should stabilize be applied to the upload.\"\n },\n \"autoLevels\": + {\n \"description\": \"Should auto-levels be applied to the upload.\",\n + \ \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"sync\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Updates an existing resource.\",\n \"supportsMediaUpload\": true,\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"download\": {\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"id\": \"youtube.captions.download\",\n \"httpMethod\": - \"GET\",\n \"useMediaDownloadService\": true,\n \"flatPath\": - \"youtube/v3/captions/{id}\",\n \"supportsMediaDownload\": true,\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + provide authentication credentials for each individual channel. The CMS account + that the user authenticates with must be linked to the specified YouTube content + owner.\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n + \ \"notifySubscribers\": {\n \"description\": \"Notify + the channel subscribers about the new video. As default, the notification + is enabled.\",\n \"location\": \"query\",\n \"default\": + \"true\",\n \"type\": \"boolean\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Downloads a caption track.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"location\": \"path\",\n \"type\": \"string\",\n - \ \"description\": \"The ID of the caption track to download, - required for One Platform.\",\n \"required\": true\n },\n - \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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 + \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/videos\",\n \"mediaUpload\": {\n \"accept\": + [\n \"video/*\",\n \"application/octet-stream\"\n + \ ],\n \"maxSize\": \"274877906944\",\n \"protocols\": + {\n \"resumable\": {\n \"multipart\": true,\n + \ \"path\": \"/resumable/upload/youtube/v3/videos\"\n },\n + \ \"simple\": {\n \"path\": \"/upload/youtube/v3/videos\",\n + \ \"multipart\": true\n }\n }\n },\n + \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.videos.insert\",\n + \ \"response\": {\n \"$ref\": \"Video\"\n }\n + \ },\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"path\": + \"youtube/v3/videos\",\n \"request\": {\n \"$ref\": \"Video\"\n + \ },\n \"response\": {\n \"$ref\": \"Video\"\n + \ },\n \"flatPath\": \"youtube/v3/videos\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"repeated\": + true,\n \"required\": true,\n \"type\": \"string\"\n + \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.videos.update\",\n \"description\": + \"Updates an existing resource.\"\n },\n \"reportAbuse\": {\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Report abuse for a video.\",\n + \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n + \ \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*Note:* This parameter is intended + exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter + indicates that the request's authorization credentials identify a YouTube + CMS user who is acting on behalf of the content owner specified in the parameter + value. This parameter is intended for YouTube content partners that own and + manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"tlang\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"tlang is the language code; machine translate the captions into this language.\"\n - \ },\n \"tfmt\": {\n \"type\": \"string\",\n - \ \"description\": \"Convert the captions into this format. Supported - options are sbv, srt, and vtt.\",\n \"location\": \"query\"\n - \ }\n }\n },\n \"insert\": {\n \"path\": - \"youtube/v3/captions\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"id\": \"youtube.captions.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"maxSize\": \"104857600\",\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n }\n },\n \"parameters\": - {\n \"sync\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + provide authentication credentials for each individual channel. The CMS account + that the user authenticates with must be linked to the specified YouTube content + owner.\",\n \"type\": \"string\"\n }\n },\n + \ \"path\": \"youtube/v3/videos/reportAbuse\",\n \"id\": + \"youtube.videos.reportAbuse\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": + []\n },\n \"list\": {\n \"id\": \"youtube.videos.list\",\n + \ \"flatPath\": \"youtube/v3/videos\",\n \"response\": {\n + \ \"$ref\": \"VideoListResponse\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"regionCode\": + {\n \"location\": \"query\",\n \"description\": + \"Use a chart that is specific to the specified region\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"description\": + \"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.\",\n + \ \"repeated\": true,\n \"type\": \"string\"\n },\n + \ \"hl\": {\n \"description\": \"Stands for \\\"host + language\\\". Specifies the localization language of the metadata to be filled + into snippet.localized. The field is filled with the default metadata if there + is no localization in the specified language. The parameter value must be + a language code included in the list returned by the i18nLanguages.list method + (e.g. en_US, es_MX).\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"type\": + \"integer\",\n \"location\": \"query\",\n \"default\": + \"5\",\n \"format\": \"uint32\",\n \"description\": + \"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.\",\n \"minimum\": + \"1\",\n \"maximum\": \"50\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n \ \"description\": \"*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 @@ -5609,30 +1864,65 @@ interactions: This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the caption - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + provide authentication credentials for each individual channel. The CMS account + that the user authenticates with must be linked to the specified YouTube content + owner.\"\n },\n \"maxHeight\": {\n \"location\": + \"query\",\n \"minimum\": \"72\",\n \"type\": \"integer\",\n + \ \"format\": \"int32\",\n \"maximum\": \"8192\"\n + \ },\n \"pageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"maxWidth\": {\n \"type\": \"integer\",\n \"maximum\": + \"8192\",\n \"description\": \"Return the player with maximum + height specified in\",\n \"minimum\": \"72\",\n \"location\": + \"query\",\n \"format\": \"int32\"\n },\n \"videoCategoryId\": + {\n \"description\": \"Use chart that is specific to the specified + video category\",\n \"location\": \"query\",\n \"default\": + \"0\",\n \"type\": \"string\"\n },\n \"chart\": + {\n \"enumDescriptions\": [\n \"\",\n \"Return + the most popular videos for the specified content region and video category.\"\n + \ ],\n \"type\": \"string\",\n \"location\": + \"query\",\n \"enum\": [\n \"chartUnspecified\",\n + \ \"mostPopular\"\n ],\n \"description\": + \"Return the videos that are in the specified chart.\"\n },\n \"locale\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"myRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Return videos liked/disliked by the authenticated + user. Does not support RateType.RATED_TYPE_NONE.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return videos with the given ids.\",\n \"repeated\": + true\n }\n },\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"request\": {\n \"$ref\": - \"Caption\"\n }\n },\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/captions\",\n \"parameterOrder\": [\n \"part\",\n - \ \"videoId\"\n ],\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \ \"path\": \"youtube/v3/videos\"\n },\n \"rate\": {\n + \ \"path\": \"youtube/v3/videos/rate\",\n \"description\": + \"Adds a like or dislike rating to a video or removes a rating from a video.\",\n + \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.videos.rate\",\n + \ \"flatPath\": \"youtube/v3/videos/rate\",\n \"parameters\": + {\n \"rating\": {\n \"required\": true,\n \"location\": + \"query\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The entity is liked.\",\n \"The entity is + disliked.\"\n ],\n \"enum\": [\n \"none\",\n + \ \"like\",\n \"dislike\"\n ],\n + \ \"type\": \"string\"\n },\n \"id\": {\n + \ \"type\": \"string\",\n \"required\": true,\n \"location\": + \"query\"\n }\n },\n \"parameterOrder\": [\n + \ \"id\",\n \"rating\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ },\n \"getRating\": {\n \"path\": \"youtube/v3/videos/getRating\",\n + \ \"id\": \"youtube.videos.getRating\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -5640,29 +1930,24 @@ interactions: content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Returns - the captions with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the captions for the specified video.\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + individual channel. The CMS account that the user authenticates with must + be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"required\": true\n }\n + \ },\n \"flatPath\": \"youtube/v3/videos/getRating\",\n \"response\": + {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.list\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ }\n },\n \"delete\": {\n \"parameters\": - {\n \"onBehalfOf\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"ID of - the Google+ Page for the channel that the request is be on behalf of\"\n },\n - \ \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively + \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": + \"Retrieves the ratings that the authorized user gave to a list of specified + videos.\",\n \"httpMethod\": \"GET\"\n }\n }\n },\n + \ \"captions\": {\n \"methods\": {\n \"delete\": {\n \"path\": + \"youtube/v3/captions\",\n \"parameters\": {\n \"id\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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. @@ -5671,92 +1956,27 @@ interactions: once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"description\": \"Deletes a resource.\",\n - \ \"id\": \"youtube.captions.delete\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + YouTube content owner.\"\n },\n \"onBehalfOf\": {\n + \ \"description\": \"ID of the Google+ Page for the channel that + the request is be on behalf of\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"httpMethod\": + \"DELETE\",\n \"id\": \"youtube.captions.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"description\": \"Deletes + a resource.\",\n \"flatPath\": \"youtube/v3/captions\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n },\n \"download\": {\n \"id\": \"youtube.captions.download\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": + \"youtube/v3/captions/{id}\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/captions\"\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"rate\": - {\n \"description\": \"Adds a like or dislike rating to a video or - removes a rating from a video.\",\n \"path\": \"youtube/v3/videos/rate\",\n - \ \"parameters\": {\n \"rating\": {\n \"required\": - true,\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"useMediaDownloadService\": + true,\n \"path\": \"youtube/v3/captions/{id}\",\n \"description\": + \"Downloads a caption track.\",\n \"parameters\": {\n \"onBehalfOf\": + {\n \"type\": \"string\",\n \"description\": \"ID + of the Google+ Page for the channel that the request is be on behalf of\",\n \ \"location\": \"query\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/videos/rate\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.rate\"\n },\n \"insert\": - {\n \"flatPath\": \"youtube/v3/videos\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"notifySubscribers\": {\n \"default\": \"true\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\"\n },\n \"stabilize\": - {\n \"description\": \"Should stabilize be applied to the upload.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"autoLevels\": {\n \"location\": - \"query\",\n \"description\": \"Should auto-levels be applied - to the upload.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos\",\n \"supportsMediaUpload\": - true,\n \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"id\": \"youtube.videos.insert\",\n \"mediaUpload\": - {\n \"maxSize\": \"274877906944\",\n \"accept\": [\n - \ \"video/*\",\n \"application/octet-stream\"\n ],\n - \ \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/videos\"\n }\n - \ }\n }\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"path\",\n \"description\": \"The + ID of the caption track to download, required for One Platform.\",\n \"required\": + true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify @@ -5767,99 +1987,32 @@ interactions: having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"DELETE\",\n \"path\": - \"youtube/v3/videos\",\n \"id\": \"youtube.videos.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"flatPath\": \"youtube/v3/videos\"\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/videos\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"minimum\": \"1\",\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"videoCategoryId\": - {\n \"description\": \"Use chart that is specific to the specified - video category\",\n \"location\": \"query\",\n \"default\": - \"0\",\n \"type\": \"string\"\n },\n \"chart\": - {\n \"type\": \"string\",\n \"description\": \"Return - the videos that are in the specified chart.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ],\n - \ \"enum\": [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"maxWidth\": {\n \"format\": \"int32\",\n \"description\": - \"Return the player with maximum height specified in\",\n \"maximum\": - \"8192\",\n \"location\": \"query\",\n \"type\": - \"integer\",\n \"minimum\": \"72\"\n },\n \"locale\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"maxHeight\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"location\": \"query\",\n - \ \"maximum\": \"8192\",\n \"minimum\": \"72\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"description\": \"Return videos with the given ids.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"description\": \"Use - a chart that is specific to the specified region\",\n \"location\": - \"query\"\n },\n \"myRating\": {\n \"description\": - \"Return videos liked/disliked by the authenticated user. Does not support - RateType.RATED_TYPE_NONE.\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n - \ \"repeated\": true\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.videos.list\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"VideoListResponse\"\n }\n },\n - \ \"reportAbuse\": {\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Report abuse for a video.\",\n - \ \"id\": \"youtube.videos.reportAbuse\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*Note:* + \ },\n \"tlang\": {\n \"location\": \"query\",\n + \ \"description\": \"tlang is the language code; machine translate + the captions into this language.\",\n \"type\": \"string\"\n + \ },\n \"tfmt\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"Convert + the captions into this format. Supported options are sbv, srt, and vtt.\"\n + \ }\n },\n \"supportsMediaDownload\": true\n },\n + \ \"update\": {\n \"id\": \"youtube.captions.update\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/captions\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"Caption\"\n },\n \"supportsMediaUpload\": true,\n \"httpMethod\": + \"PUT\",\n \"description\": \"Updates an existing resource.\",\n + \ \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n \"accept\": + [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n + \ \"multipart\": true\n },\n \"simple\": + {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": + true\n }\n }\n },\n \"request\": + {\n \"$ref\": \"Caption\"\n },\n \"flatPath\": + \"youtube/v3/captions\",\n \"parameters\": {\n \"sync\": + {\n \"location\": \"query\",\n \"type\": \"boolean\",\n + \ \"description\": \"Extra parameter to allow automatically syncing + the uploaded caption/transcript with the audio.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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 @@ -5867,11 +2020,68 @@ interactions: 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.\"\n }\n },\n \"parameterOrder\": - []\n },\n \"update\": {\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"repeated\": true,\n + \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"onBehalfOf\": + {\n \"location\": \"query\",\n \"description\": + \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n + \ \"type\": \"string\"\n }\n }\n },\n + \ \"insert\": {\n \"parameters\": {\n \"onBehalfOf\": + {\n \"description\": \"ID of the Google+ Page for the channel + that the request is be on behalf of\",\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n },\n \"sync\": {\n \"description\": + \"Extra parameter to allow automatically syncing the uploaded caption/transcript + with the audio.\",\n \"type\": \"boolean\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true,\n \"description\": \"The *part* parameter specifies the + caption resource parts that the API response will include. Set the parameter + value to snippet.\",\n \"type\": \"string\"\n }\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"id\": \"youtube.captions.insert\",\n \"mediaUpload\": + {\n \"maxSize\": \"104857600\",\n \"protocols\": {\n + \ \"simple\": {\n \"multipart\": true,\n \"path\": + \"/upload/youtube/v3/captions\"\n },\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n + \ \"multipart\": true\n }\n },\n \"accept\": + [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ]\n },\n \"path\": \"youtube/v3/captions\",\n + \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n + \ \"request\": {\n \"$ref\": \"Caption\"\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/captions\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"response\": + {\n \"$ref\": \"Caption\"\n }\n },\n \"list\": + {\n \"parameters\": {\n \"onBehalfOf\": {\n \"description\": + \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n + \ \"repeated\": true\n },\n \"videoId\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"description\": \"Returns the captions for the specified video.\",\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"*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 @@ -5881,160 +2091,111 @@ interactions: once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"id\": - \"youtube.videos.update\",\n \"path\": \"youtube/v3/videos\",\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"getRating\": {\n \"id\": \"youtube.videos.getRating\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/videos/getRating\",\n \"description\": - \"Retrieves the ratings that the authorized user gave to a list of specified - videos.\",\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ }\n }\n }\n }\n },\n \"subscriptions\": - {\n \"methods\": {\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/subscriptions\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ }\n },\n \"request\": {\n \"$ref\": - \"Subscription\"\n },\n \"response\": {\n \"$ref\": - \"Subscription\"\n },\n \"description\": \"Inserts a new - resource into this collection.\",\n \"id\": \"youtube.subscriptions.insert\"\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"description\": \"Deletes a resource.\"\n },\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + YouTube content owner.\"\n },\n \"id\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Returns the captions with the given IDs for + Stubby or Apiary.\"\n }\n },\n \"flatPath\": + \"youtube/v3/captions\",\n \"description\": \"Retrieves a list of + resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"order\": - {\n \"type\": \"string\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"description\": \"The order of the returned - subscriptions\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"default\": \"relevance\",\n \"location\": \"query\"\n - \ },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the subscribers of the - given channel owner.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Return the subscriptions of the given channel owner.\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"forChannelId\": - {\n \"description\": \"Return the subscriptions to the subset - of these channels that the authenticated user is subscribed to.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"default\": \"5\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\"\n },\n \"pageToken\": + \ \"path\": \"youtube/v3/captions\",\n \"response\": {\n + \ \"$ref\": \"CaptionListResponse\"\n },\n \"parameterOrder\": + [\n \"part\",\n \"videoId\"\n ],\n \"id\": + \"youtube.captions.list\",\n \"httpMethod\": \"GET\"\n }\n + \ }\n },\n \"abuseReports\": {\n \"methods\": {\n \"insert\": + {\n \"id\": \"youtube.abuseReports.insert\",\n \"request\": + {\n \"$ref\": \"AbuseReport\"\n },\n \"flatPath\": + \"youtube/v3/abuseReports\",\n \"description\": \"Inserts a new resource + into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n + \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\"\n },\n - \ \"myRecentSubscribers\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.list\",\n + \ \"required\": true,\n \"description\": \"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.\",\n \"repeated\": true\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/abuseReports\"\n }\n }\n },\n \"thirdPartyLinks\": + {\n \"methods\": {\n \"update\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Updates + an existing resource.\",\n \"response\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"request\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"httpMethod\": \"PUT\",\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.update\",\n + \ \"parameters\": {\n \"externalChannelId\": {\n \"type\": + \"string\",\n \"description\": \"Channel ID to which changes + should be applied, for delegation.\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"required\": true,\n + \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies the thirdPartyLink resource parts that the + API request and response will include. Supported values are linkingToken, + status, and snippet.\",\n \"location\": \"query\"\n }\n + \ },\n \"path\": \"youtube/v3/thirdPartyLinks\"\n },\n + \ \"list\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"response\": - {\n \"$ref\": \"SubscriptionListResponse\"\n }\n }\n - \ }\n },\n \"playlistItems\": {\n \"methods\": {\n \"list\": - {\n \"parameters\": {\n \"videoId\": {\n \"description\": - \"Return the playlist items associated with the given video ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"type\": {\n \"description\": \"Get a third party + link of the given type.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel + with a store on a merchandising platform in order to enable retail commerce + capabilities for that channel on YouTube.\"\n ],\n \"location\": + \"query\",\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"type\": + \"string\"\n },\n \"externalChannelId\": {\n \"type\": + \"string\",\n \"description\": \"Channel ID to which changes + should be applied, for delegation.\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"location\": \"query\",\n + \ \"description\": \"The *part* parameter specifies the thirdPartyLink + resource parts that the API response will include. Supported values are linkingToken, + status, and snippet.\",\n \"required\": true,\n \"type\": + \"string\",\n \"repeated\": true\n },\n \"linkingToken\": + {\n \"description\": \"Get a third party link with the given + linking token.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"response\": {\n \"$ref\": + \"ThirdPartyLinkListResponse\"\n },\n \"id\": \"youtube.thirdPartyLinks.list\"\n + \ },\n \"delete\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"description\": \"Deletes a resource.\",\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": + {\n \"type\": {\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"Type of the link to be deleted.\",\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or + about to connect) a channel with a store on a merchandising platform in order + to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n + \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ]\n },\n \"externalChannelId\": {\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"description\": \"Do not use. Required for compatibility.\",\n + \ \"location\": \"query\"\n },\n \"linkingToken\": + {\n \"description\": \"Delete the partner links with the given + linking token.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true\n }\n },\n + \ \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n + \ ],\n \"id\": \"youtube.thirdPartyLinks.delete\"\n },\n + \ \"insert\": {\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n + \ },\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n + \ },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"parameters\": {\n \"externalChannelId\": {\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"description\": \"The *part* parameter specifies the thirdPartyLink + resource parts that the API request and response will include. Supported values + are linkingToken, status, and snippet.\",\n \"required\": true,\n + \ \"location\": \"query\"\n }\n },\n \"id\": + \"youtube.thirdPartyLinks.insert\",\n \"path\": \"youtube/v3/thirdPartyLinks\"\n + \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n + \ \"set\": {\n \"parameters\": {\n \"videoId\": + {\n \"location\": \"query\",\n \"description\": + \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n + \ \"required\": true,\n \"type\": \"string\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -6042,58 +2203,117 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"default\": \"5\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": true\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ },\n \"playlistId\": {\n \"type\": \"string\",\n - \ \"description\": \"Return the playlist items within the given - playlist.\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": + {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": + true\n },\n \"resumable\": {\n \"path\": + \"/resumable/upload/youtube/v3/thumbnails/set\",\n \"multipart\": + true\n }\n },\n \"maxSize\": \"2097152\",\n + \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ]\n },\n + \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n + \ \"description\": \"As this is not an insert in a strict sense (it + supports uploading/setting of a thumbnail for multiple videos, which doesn't + result in creation of a single resource), I use a custom verb here.\",\n \"flatPath\": + \"youtube/v3/thumbnails/set\",\n \"id\": \"youtube.thumbnails.set\",\n + \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/thumbnails/set\",\n \"response\": + {\n \"$ref\": \"ThumbnailSetResponse\"\n }\n }\n + \ }\n },\n \"activities\": {\n \"methods\": {\n \"list\": + {\n \"id\": \"youtube.activities.list\",\n \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItemListResponse\"\n },\n \"scopes\": + \ \"flatPath\": \"youtube/v3/activities\",\n \"response\": + {\n \"$ref\": \"ActivityListResponse\"\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.list\"\n },\n - \ \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"path\": - \"youtube/v3/playlistItems\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.playlistItems.update\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"path\": \"youtube/v3/activities\",\n \"parameters\": + {\n \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"part\": + {\n \"required\": true,\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": + true\n },\n \"regionCode\": {\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"home\": + {\n \"location\": \"query\",\n \"type\": \"boolean\"\n + \ },\n \"publishedAfter\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"format\": + \"google-datetime\"\n },\n \"mine\": {\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"maxResults\": {\n \"minimum\": + \"0\",\n \"default\": \"5\",\n \"maximum\": \"50\",\n + \ \"location\": \"query\",\n \"type\": \"integer\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"format\": + \"uint32\"\n },\n \"publishedBefore\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"format\": + \"google-datetime\"\n }\n }\n }\n }\n },\n + \ \"liveStreams\": {\n \"methods\": {\n \"delete\": {\n \"path\": + \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"httpMethod\": + \"DELETE\",\n \"id\": \"youtube.liveStreams.delete\",\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"*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.\"\n }\n },\n \"description\": + \"Deletes an existing stream for the authenticated user.\"\n },\n \"update\": + {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -6102,14 +2322,106 @@ interactions: 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.\",\n \"type\": - \"string\"\n }\n },\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"description\": \"Updates an existing - resource.\"\n },\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n + be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"id\": \"youtube.liveStreams.update\",\n \"request\": + {\n \"$ref\": \"LiveStream\"\n },\n \"path\": + \"youtube/v3/liveStreams\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n + \ \"description\": \"Updates an existing stream for the authenticated + user.\",\n \"parameterOrder\": [\n \"part\"\n ]\n + \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"response\": + {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"httpMethod\": + \"GET\",\n \"id\": \"youtube.liveStreams.list\",\n \"parameters\": + {\n \"part\": {\n \"description\": \"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.\",\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n + \ \"maxResults\": {\n \"minimum\": \"0\",\n \"maximum\": + \"50\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"type\": \"integer\",\n \"location\": \"query\",\n + \ \"default\": \"5\",\n \"format\": \"uint32\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"Return + LiveStreams with the given ids from Stubby or Apiary.\",\n \"location\": + \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"pageToken\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n + \ },\n \"mine\": {\n \"type\": \"boolean\",\n + \ \"location\": \"query\"\n }\n },\n \"description\": + \"Retrieve the list of streams associated with the given channel. --\"\n },\n + \ \"insert\": {\n \"description\": \"Inserts a new stream for + the authenticated user.\",\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": + \"LiveStream\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": + {\n \"$ref\": \"LiveStream\"\n },\n \"flatPath\": + \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.insert\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \ \"description\": \"*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 @@ -6119,70 +2431,3764 @@ interactions: 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.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ }\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"id\": \"youtube.playlistItems.delete\"\n },\n - \ \"insert\": {\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"id\": \"youtube.playlistItems.insert\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"httpMethod\": \"POST\"\n }\n - \ }\n }\n },\n \"id\": \"youtube:v3\",\n \"kind\": \"discovery#restDescription\",\n - \ \"parameters\": {\n \"oauth_token\": {\n \"type\": \"string\",\n - \ \"description\": \"OAuth 2.0 token for the current user.\",\n \"location\": - \"query\"\n },\n \"key\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"prettyPrint\": {\n \"location\": - \"query\",\n \"default\": \"true\",\n \"description\": \"Returns - response with indentations and line breaks.\",\n \"type\": \"boolean\"\n - \ },\n \"$.xgafv\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"V1 error format.\",\n \"enumDescriptions\": - [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"enum\": - [\n \"1\",\n \"2\"\n ]\n },\n \"upload_protocol\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": + owner.\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"repeated\": true,\n \"description\": \"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, content_details, and status.\",\n \"location\": + \"query\"\n }\n }\n }\n }\n }\n },\n \"description\": + \"The YouTube Data API v3 is an API that provides access to YouTube data, + such as videos, playlists, and channels.\",\n \"batchPath\": \"batch\",\n + \ \"title\": \"YouTube Data API v3\",\n \"ownerDomain\": \"google.com\",\n + \ \"name\": \"youtube\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n + \ \"ownerName\": \"Google\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": + {\n \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": + \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": + {\n \"description\": \"View and manage your assets and associated + content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": + {\n \"description\": \"See, edit, and permanently delete your YouTube + videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": + {\n \"description\": \"View private information of your YouTube channel + relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": + {\n \"description\": \"View your YouTube account\"\n },\n + \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": + \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": + {\n \"description\": \"See a list of your current active channel + members, their current level, and when they became a member\"\n }\n + \ }\n }\n },\n \"version\": \"v3\",\n \"canonicalName\": \"YouTube\",\n + \ \"revision\": \"20230308\",\n \"protocol\": \"rest\",\n \"icons\": {\n + \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n + \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n + \ },\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"basePath\": + \"\",\n \"id\": \"youtube:v3\",\n \"servicePath\": \"\",\n \"schemas\": + {\n \"LocalizedProperty\": {\n \"type\": \"object\",\n \"properties\": + {\n \"defaultLanguage\": {\n \"$ref\": \"LanguageTag\",\n + \ \"description\": \"The language of the default property.\"\n },\n + \ \"default\": {\n \"type\": \"string\"\n },\n \"localized\": + {\n \"items\": {\n \"$ref\": \"LocalizedString\"\n },\n + \ \"type\": \"array\"\n }\n },\n \"id\": \"LocalizedProperty\"\n + \ },\n \"ActivityContentDetailsLike\": {\n \"description\": \"Information + about a resource that received a positive (like) rating.\",\n \"id\": + \"ActivityContentDetailsLike\",\n \"type\": \"object\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the rated resource.\"\n + \ }\n }\n },\n \"VideoAbuseReportSecondaryReason\": {\n \"properties\": + {\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID of this abuse report secondary reason.\"\n },\n \"label\": + {\n \"description\": \"The localized label for this abuse report + secondary reason.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\"\n + \ },\n \"LiveChatMessageSnippet\": {\n \"properties\": {\n \"type\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The type of message, this will always be present, it determines the contents + of the message as well as which fields will be present.\",\n \"enum\": + [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n + \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n + \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n + \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n + \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n + \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n + \ \"superChatEvent\",\n \"superStickerEvent\"\n ]\n + \ },\n \"newSponsorDetails\": {\n \"description\": \"Details + about the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. + Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n + \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"messageDeletedDetails\": + {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"hasDisplayContent\": + {\n \"description\": \"Whether the message has display content that + should be displayed to users.\",\n \"type\": \"boolean\"\n },\n + \ \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n + \ \"description\": \"Details about the Super Chat event, this is only + set if the type is 'superChatEvent'.\"\n },\n \"publishedAt\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time when the message was orignally + published.\"\n },\n \"textMessageDetails\": {\n \"$ref\": + \"LiveChatTextMessageDetails\",\n \"description\": \"Details about + the text message, this is only set if the type is 'textMessageEvent'.\"\n + \ },\n \"authorChannelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the user that authored this message, + this field is not always filled. textMessageEvent - the user that wrote the + message fanFundingEvent - the user that funded the broadcast newSponsorEvent + - the user that just became a sponsor memberMilestoneChatEvent - the member + that sent the message membershipGiftingEvent - the user that made the purchase + giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent + - the moderator that took the action messageRetractedEvent - the author that + retracted their message userBannedEvent - the moderator that took the action + superChatEvent - the user that made the purchase superStickerEvent - the user + that made the purchase\"\n },\n \"userBannedDetails\": {\n \"$ref\": + \"LiveChatUserBannedMessageDetails\"\n },\n \"superStickerDetails\": + {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n \"description\": + \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\"\n + \ },\n \"memberMilestoneChatDetails\": {\n \"$ref\": + \"LiveChatMemberMilestoneChatDetails\",\n \"description\": \"Details + about the Member Milestone Chat event, this is only set if the type is 'memberMilestoneChatEvent'.\"\n + \ },\n \"displayMessage\": {\n \"description\": \"Contains + a string that can be displayed to the user. If this field is not present the + message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT + are silent.\",\n \"type\": \"string\"\n },\n \"membershipGiftingDetails\": + {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": + \"Details about the Membership Gifting event, this is only set if the type + is 'membershipGiftingEvent'.\"\n },\n \"fanFundingEventDetails\": + {\n \"description\": \"Details about the funding event, this is only + set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n + \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n + \ \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n + \ },\n \"giftMembershipReceivedDetails\": {\n \"$ref\": + \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": \"Details + about the Gift Membership Received event, this is only set if the type is + 'giftMembershipReceivedEvent'.\"\n }\n },\n \"id\": \"LiveChatMessageSnippet\",\n + \ \"type\": \"object\",\n \"description\": \"Next ID: 33\"\n },\n + \ \"Comment\": {\n \"properties\": {\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube uses to + uniquely identify the comment.\",\n \"type\": \"string\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the comment.\",\n \"$ref\": \"CommentSnippet\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#comment\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"Comment\",\n + \ \"description\": \"A *comment* represents a single YouTube comment.\"\n + \ },\n \"Thumbnail\": {\n \"type\": \"object\",\n \"properties\": + {\n \"height\": {\n \"description\": \"(Optional) Height of + the thumbnail image.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n },\n \"width\": {\n \"description\": \"(Optional) + Width of the thumbnail image.\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n },\n \"url\": {\n \"type\": \"string\",\n + \ \"description\": \"The thumbnail image's URL.\"\n }\n },\n + \ \"description\": \"A thumbnail is an image representing a YouTube resource.\",\n + \ \"id\": \"Thumbnail\"\n },\n \"GeoPoint\": {\n \"type\": + \"object\",\n \"description\": \"Geographical coordinates of a point, + in WGS84.\",\n \"properties\": {\n \"altitude\": {\n \"type\": + \"number\",\n \"format\": \"double\",\n \"description\": + \"Altitude above the reference ellipsoid, in meters.\"\n },\n \"latitude\": + {\n \"type\": \"number\",\n \"description\": \"Latitude + in degrees.\",\n \"format\": \"double\"\n },\n \"longitude\": + {\n \"type\": \"number\",\n \"description\": \"Longitude + in degrees.\",\n \"format\": \"double\"\n }\n },\n \"id\": + \"GeoPoint\"\n },\n \"Video\": {\n \"id\": \"Video\",\n \"description\": + \"A *video* resource represents a YouTube video.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"topicDetails\": {\n \"description\": + \"The topicDetails object encapsulates information about Freebase topics associated + with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n + \ \"processingDetails\": {\n \"description\": \"The processingDetails + object encapsulates information about YouTube's progress in processing the + uploaded video file. The properties in the object identify the current processing + status and an estimate of the time remaining until YouTube finishes processing + the video. This part also indicates whether different types of data or content, + such as file details or thumbnail images, are available for the video. The + processingProgress object is designed to be polled so that the video uploaded + can track the progress that YouTube has made in processing the uploaded video + file. This data can only be retrieved by the video owner.\",\n \"$ref\": + \"VideoProcessingDetails\"\n },\n \"suggestions\": {\n \"$ref\": + \"VideoSuggestions\",\n \"description\": \"The suggestions object + encapsulates suggestions that identify opportunities to improve the video + quality or the metadata for the uploaded video. This data can only be retrieved + by the video owner.\"\n },\n \"id\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.videos.update\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\"\n },\n + \ \"liveStreamingDetails\": {\n \"description\": \"The liveStreamingDetails + object contains metadata about a live video broadcast. The object will only + be present in a video resource if the video is an upcoming, live, or completed + live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n },\n + \ \"statistics\": {\n \"description\": \"The statistics object + contains statistics about the video.\",\n \"$ref\": \"VideoStatistics\"\n + \ },\n \"status\": {\n \"$ref\": \"VideoStatus\",\n + \ \"description\": \"The status object contains information about + the video's uploading, processing, and privacy statuses.\"\n },\n \"projectDetails\": + {\n \"description\": \"The projectDetails object contains information + about the project specific video metadata. b/157517979: This part was never + populated after it was added. However, it sees non-zero traffic because there + is generated client code in the wild that refers to it [1]. We keep this field + and do NOT remove it because otherwise V3 would return an error when this + part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"$ref\": \"VideoProjectDetails\"\n },\n \"player\": + {\n \"$ref\": \"VideoPlayer\",\n \"description\": \"The + player object contains information that you would use to play the video in + an embedded player.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n + \ \"default\": \"youtube#video\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the video, such as its title, description, and category.\",\n \"$ref\": + \"VideoSnippet\"\n },\n \"contentDetails\": {\n \"$ref\": + \"VideoContentDetails\",\n \"description\": \"The contentDetails + object contains information about the video content, including the length + of the video and its aspect ratio.\"\n },\n \"localizations\": + {\n \"description\": \"The localizations object contains localized + versions of the basic details about the video, such as its title and description.\",\n + \ \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n + \ },\n \"type\": \"object\"\n },\n \"recordingDetails\": + {\n \"description\": \"The recordingDetails object encapsulates information + about the location, date and address where the video was recorded.\",\n \"$ref\": + \"VideoRecordingDetails\"\n },\n \"ageGating\": {\n \"description\": + \"Age restriction details related to a video. This data can only be retrieved + by the video owner.\",\n \"$ref\": \"VideoAgeGating\"\n },\n + \ \"fileDetails\": {\n \"$ref\": \"VideoFileDetails\",\n \"description\": + \"The fileDetails object encapsulates information about the video file that + was uploaded to YouTube, including the file's resolution, duration, audio + and video codecs, stream bitrates, and more. This data can only be retrieved + by the video owner.\"\n },\n \"monetizationDetails\": {\n \"$ref\": + \"VideoMonetizationDetails\",\n \"description\": \"The monetizationDetails + object encapsulates information about the monetization status of the video.\"\n + \ }\n }\n },\n \"ThirdPartyLinkListResponse\": {\n \"properties\": + {\n \"kind\": {\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"type\": \"array\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ThirdPartyLinkListResponse\"\n },\n \"ChannelToStoreLinkDetails\": + {\n \"id\": \"ChannelToStoreLinkDetails\",\n \"type\": \"object\",\n + \ \"description\": \"Information specific to a store on a merchandising + platform linked to a YouTube channel.\",\n \"properties\": {\n \"storeUrl\": + {\n \"type\": \"string\",\n \"description\": \"Landing page + of the store.\"\n },\n \"merchantId\": {\n \"description\": + \"Google Merchant Center id of the store.\",\n \"format\": \"uint64\",\n + \ \"type\": \"string\"\n },\n \"storeName\": {\n \"type\": + \"string\",\n \"description\": \"Name of the store.\"\n }\n + \ }\n },\n \"LiveChatMessageRetractedDetails\": {\n \"type\": + \"object\",\n \"properties\": {\n \"retractedMessageId\": {\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\"\n + \ },\n \"LiveChatMessageDeletedDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveChatMessageDeletedDetails\",\n \"properties\": {\n + \ \"deletedMessageId\": {\n \"type\": \"string\"\n }\n + \ }\n },\n \"VideoCategoryListResponse\": {\n \"id\": \"VideoCategoryListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"items\": {\n \"description\": \"A list of video categories + that can be associated with YouTube videos. In this map, the video category + ID is the map key, and its value is the corresponding videoCategory resource.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"VideoCategory\"\n }\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"nextPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the next page + in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n \"default\": + \"youtube#videoCategoryListResponse\",\n \"type\": \"string\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ }\n }\n },\n \"ResourceId\": {\n \"type\": \"object\",\n + \ \"description\": \"A resource id is a generic reference that points + to another YouTube resource.\",\n \"properties\": {\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the referred resource, if that resource is a channel. This property is only + present if the resourceId.kind value is youtube#channel.\",\n \"type\": + \"string\"\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a video. This property is only present if the resourceId.kind + value is youtube#video.\",\n \"type\": \"string\"\n },\n \"playlistId\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the referred resource, if that resource + is a playlist. This property is only present if the resourceId.kind value + is youtube#playlist.\"\n },\n \"kind\": {\n \"description\": + \"The type of the API resource.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"ResourceId\"\n },\n \"SuperChatEventListResponse\": + {\n \"id\": \"SuperChatEventListResponse\",\n \"properties\": {\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#superChatEventListResponse\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": + {\n \"description\": \"A list of Super Chat purchases that match + the request criteria.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"SuperChatEvent\"\n }\n }\n },\n + \ \"type\": \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": + {\n \"properties\": {\n \"associatedMembershipGiftingMessageId\": + {\n \"description\": \"The ID of the membership gifting message that + is related to this gift membership. This ID will always refer to a message + whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n + \ },\n \"memberLevelName\": {\n \"description\": \"The + name of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` + of the associated membership gifting message. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\",\n \"type\": \"string\"\n },\n \"gifterChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the user that made the membership gifting purchase. This matches the `snippet.authorChannelId` + of the associated membership gifting message.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n + \ \"ChannelConversionPings\": {\n \"type\": \"object\",\n \"properties\": + {\n \"pings\": {\n \"description\": \"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.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n + \ }\n }\n },\n \"id\": \"ChannelConversionPings\",\n + \ \"description\": \"The conversionPings object encapsulates information + about conversion pings that need to be respected by the channel.\"\n },\n + \ \"CdnSettings\": {\n \"type\": \"object\",\n \"description\": + \"Brief description of the live stream cdn settings.\",\n \"properties\": + {\n \"frameRate\": {\n \"type\": \"string\",\n \"description\": + \"The frame rate of the inbound video data.\",\n \"enum\": [\n \"30fps\",\n + \ \"60fps\",\n \"variable\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"ingestionType\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \" The method or protocol used to + transmit the video stream.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n + \ ]\n },\n \"enum\": [\n \"rtmp\",\n + \ \"dash\",\n \"webrtc\",\n \"hls\"\n ]\n + \ },\n \"resolution\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"240p\",\n \"360p\",\n + \ \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\",\n + \ \"2160p\",\n \"variable\"\n ],\n \"description\": + \"The resolution of the inbound video data.\",\n \"type\": \"string\"\n + \ },\n \"format\": {\n \"description\": \"The format + of the video stream that you are sending to Youtube. \",\n \"type\": + \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n }\n + \ },\n \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n + \ \"description\": \"The ingestionInfo object contains information + that YouTube provides that you need to transmit your RTMP or HTTP stream to + YouTube.\"\n }\n },\n \"id\": \"CdnSettings\"\n },\n \"VideoSnippet\": + {\n \"properties\": {\n \"localized\": {\n \"$ref\": + \"VideoLocalization\",\n \"description\": \"Localized snippet selected + with the hl parameter. If no such localization exists, this field is populated + with the default snippet. (Read-only)\"\n },\n \"defaultAudioLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The default_audio_language + property specifies the language spoken in the video's default audio track.\"\n + \ },\n \"description\": {\n \"description\": \"The video's + description. @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": + \"string\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"categoryId\": {\n \"description\": + \"The YouTube video category associated with the video.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel that the video was uploaded to.\"\n },\n \"tags\": + {\n \"description\": \"A list of keyword tags associated with the + video. Tags may contain spaces.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n },\n \"liveBroadcastContent\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The live broadcast is upcoming.\",\n \"The live broadcast + is active.\",\n \"The live broadcast has been completed.\"\n ],\n + \ \"description\": \"Indicates if the video is an upcoming/active + live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active + live broadcast.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ]\n },\n + \ \"defaultLanguage\": {\n \"description\": \"The language + of the videos's default snippet.\",\n \"type\": \"string\"\n },\n + \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": + \"date-time\",\n \"description\": \"The date and time when the video + was uploaded.\"\n },\n \"channelTitle\": {\n \"description\": + \"Channel title for the channel that the video belongs to.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's title. @mutable youtube.videos.insert + youtube.videos.update\"\n }\n },\n \"id\": \"VideoSnippet\",\n + \ \"description\": \"Basic details about a video, including title, description, + uploader, thumbnails and category.\",\n \"type\": \"object\"\n },\n + \ \"VideoSuggestions\": {\n \"description\": \"Specifies suggestions + on how to improve video content, including encoding hints, tag suggestions, + and editor suggestions.\",\n \"id\": \"VideoSuggestions\",\n \"type\": + \"object\",\n \"properties\": {\n \"processingErrors\": {\n \"items\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n + \ \"File contains audio only (e.g., an MP3 file).\",\n \"Image + file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft + Windows Movie Maker project).\",\n \"Other non-video file.\",\n + \ \"Document or text file (e.g., MS Word document).\",\n \"An + archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial + audio layout type.\"\n ],\n \"enum\": [\n \"audioFile\",\n + \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n + \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n + \ ]\n },\n \"type\": \"array\",\n \"description\": + \"A list of errors that will prevent YouTube from successfully processing + the uploaded video video. These errors indicate that, regardless of the video's + current processing status, eventually, that status will almost certainly be + failed.\"\n },\n \"tagSuggestions\": {\n \"description\": + \"A list of keyword tags that could be added to the video's metadata to increase + the likelihood that users will locate your video when searching or browsing + on YouTube.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"VideoSuggestionsTagSuggestion\"\n }\n },\n \"processingWarnings\": + {\n \"items\": {\n \"enumDescriptions\": [\n \"Unrecognized + file format, transcoding is likely to fail.\",\n \"Unrecognized + video codec, transcoding is likely to fail.\",\n \"Unrecognized + audio codec, transcoding is likely to fail.\",\n \"Conflicting + container and stream resolutions.\",\n \"Edit lists are not currently + supported.\",\n \"Video codec that is known to cause problems + was used.\",\n \"Audio codec that is known to cause problems + was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported + spherical video projection type.\",\n \"Unsupported HDR pixel + format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic + HDR lookup table attached.\"\n ],\n \"enum\": [\n \"unknownContainer\",\n + \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n + \ \"inconsistentResolution\",\n \"hasEditlist\",\n + \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n + \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n + \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n + \ \"problematicHdrLookupTable\"\n ],\n \"type\": + \"string\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of reasons why YouTube may have difficulty transcoding the uploaded + video or that might result in an erroneous transcoding. These warnings are + generated before YouTube actually processes the uploaded video file. In addition, + they identify issues that are unlikely to cause the video processing to fail + but that might cause problems such as sync issues, video artifacts, or a missing + audio track.\"\n },\n \"processingHints\": {\n \"items\": + {\n \"enumDescriptions\": [\n \"The MP4 file is not + streamable, this will slow down the processing. MOOV atom was not found at + the beginning of the file.\",\n \"Probably a better quality version + of the video exists. The video has wide screen aspect ratio, but is not an + HD video.\",\n \"Uploaded video is spherical video.\",\n \"Uploaded + video has spatial audio.\",\n \"Uploaded video is VR video.\",\n + \ \"Uploaded video is HDR video.\"\n ],\n \"enum\": + [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n + \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n + \ \"hdrVideo\"\n ],\n \"type\": \"string\"\n + \ },\n \"type\": \"array\",\n \"description\": \"A + list of suggestions that may improve YouTube's ability to process the video.\"\n + \ },\n \"editorSuggestions\": {\n \"description\": \"A + list of video editing operations that might improve the video quality or playback + experience of the uploaded video.\",\n \"type\": \"array\",\n \"items\": + {\n \"enumDescriptions\": [\n \"Picture brightness + levels seem off and could be corrected.\",\n \"The video appears + shaky and could be stabilized.\",\n \"Margins (mattes) detected + around the picture could be cropped.\",\n \"The audio track appears + silent and could be swapped with a better quality one.\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n + \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n + \ ]\n }\n }\n }\n },\n \"SubscriptionSubscriberSnippet\": + {\n \"description\": \"Basic details about a subscription's subscriber + including title, description, channel ID and thumbnails.\",\n \"properties\": + {\n \"description\": {\n \"description\": \"The description + of the subscriber.\",\n \"type\": \"string\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"Thumbnails + for this subscriber.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The channel ID of the subscriber.\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The title of the subscriber.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"SubscriptionSubscriberSnippet\"\n },\n \"VideoContentDetailsRegionRestriction\": + {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n \"description\": + \"DEPRECATED Region restriction of the video.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"blocked\": {\n \"type\": \"array\",\n + \ \"description\": \"A list of region codes that identify countries + where the video is blocked. If this property is present and a country is not + listed in its value, then the video is viewable in that country. If this property + is present and contains an empty list, the video is viewable in all countries.\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n },\n + \ \"allowed\": {\n \"type\": \"array\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"A list of region codes that identify countries where the video is viewable. + If this property is present and a country is not listed in its value, then + the video is blocked from appearing in that country. If this property is present + and contains an empty list, the video is blocked in all countries.\"\n }\n + \ }\n },\n \"LiveBroadcastStatus\": {\n \"properties\": {\n + \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n + \ \"description\": \"This field will be set to True if the creator + declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"madeForKids\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the broadcast is made for kids or not, decided by YouTube instead of the creator. + This field is read only.\"\n },\n \"recordingStatus\": {\n \"description\": + \"The broadcast's recording status.\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n + \ \"notRecording\",\n \"recording\",\n \"recorded\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"No value or the value is unknown.\",\n \"The recording + has not yet been started.\",\n \"The recording is currently on.\",\n + \ \"The recording is completed, and cannot be started again.\"\n + \ ]\n },\n \"privacyStatus\": {\n \"description\": + \"The broadcast's privacy status. Note that the broadcast represents exactly + one YouTube video, so the privacy settings are identical to those supported + for videos. In addition, you can set this field by modifying the broadcast + resource or by setting the privacyStatus field of the corresponding video + resource.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ]\n },\n \"lifeCycleStatus\": + {\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n + \ \"ready\",\n \"testing\",\n \"live\",\n + \ \"complete\",\n \"revoked\",\n \"testStarting\",\n + \ \"liveStarting\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"No value or the value is + unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete + settings\",\n \"Visible only to partner, may need special UI treatment\",\n + \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n + \ \"The broadcast is finished.\",\n \"This broadcast + was removed by admin action\",\n \"Transition into TESTING has + been requested\",\n \"Transition into LIVE has been requested\"\n + \ ],\n \"description\": \"The broadcast's status. The status + can be updated using the API's liveBroadcasts.transition method.\"\n },\n + \ \"liveBroadcastPriority\": {\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n + \ \"low\",\n \"normal\",\n \"high\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"Low priority + broadcast: for low view count HoAs or other low priority broadcasts.\",\n + \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n + \ \"High priority broadcast: for high profile HoAs, like PixelCorp + ones.\"\n ],\n \"type\": \"string\",\n \"description\": + \"Priority of the live broadcast event (internal state).\"\n }\n },\n + \ \"id\": \"LiveBroadcastStatus\",\n \"description\": \"Live broadcast + state.\",\n \"type\": \"object\"\n },\n \"LiveChatTextMessageDetails\": + {\n \"id\": \"LiveChatTextMessageDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"messageText\": {\n \"type\": \"string\",\n + \ \"description\": \"The user's message.\"\n }\n }\n },\n + \ \"TokenPagination\": {\n \"id\": \"TokenPagination\",\n \"description\": + \"Stub token pagination template to suppress results.\",\n \"properties\": + {},\n \"type\": \"object\"\n },\n \"PlaylistItem\": {\n \"properties\": + {\n \"kind\": {\n \"default\": \"youtube#playlistItem\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlistItem\\\".\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": + \"PlaylistItemSnippet\",\n \"description\": \"The snippet object + contains basic details about the playlist item, such as its title and position + in the playlist.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the playlist item.\"\n },\n \"status\": {\n \"description\": + \"The status object contains information about the playlist item's privacy + status.\",\n \"$ref\": \"PlaylistItemStatus\"\n },\n \"contentDetails\": + {\n \"$ref\": \"PlaylistItemContentDetails\",\n \"description\": + \"The contentDetails object is included in the resource if the included item + is a YouTube video. The object contains additional information about the video.\"\n + \ }\n },\n \"id\": \"PlaylistItem\",\n \"description\": + \"A *playlistItem* resource identifies another resource, such as a video, + that is included in a playlist. In addition, the playlistItem resource contains + details about the included resource that pertain specifically to how that + resource is used in that playlist. YouTube uses playlists to identify special + collections of videos for a channel, such as: - uploaded videos - favorite + videos - positively rated (liked) videos - watch history - watch later To + be more specific, these lists are associated with a channel, which is a collection + of a person, group, or company's videos, playlists, and other YouTube information. + You can retrieve the playlist IDs for each of these lists from the channel + resource for a given channel. You can then use the playlistItems.list method + to retrieve any of those lists. You can also add or remove items from those + lists by calling the playlistItems.insert and playlistItems.delete methods. + For example, if a user gives a positive rating to a video, you would insert + that video into the liked videos playlist for that user's channel.\",\n \"type\": + \"object\"\n },\n \"LiveStreamStatus\": {\n \"description\": \"Brief + description of the live stream status.\",\n \"properties\": {\n \"healthStatus\": + {\n \"description\": \"The health status of the stream.\",\n \"$ref\": + \"LiveStreamHealthStatus\"\n },\n \"streamStatus\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"created\",\n + \ \"ready\",\n \"active\",\n \"inactive\",\n + \ \"error\"\n ],\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"LiveStreamStatus\"\n + \ },\n \"VideoContentDetails\": {\n \"description\": \"Details about + the content of a YouTube Video.\",\n \"id\": \"VideoContentDetails\",\n + \ \"properties\": {\n \"countryRestriction\": {\n \"description\": + \"The countryRestriction object contains information about the countries where + a video is (or is not) viewable.\",\n \"$ref\": \"AccessPolicy\"\n + \ },\n \"definition\": {\n \"type\": \"string\",\n \"enum\": + [\n \"sd\",\n \"hd\"\n ],\n \"enumDescriptions\": + [\n \"sd\",\n \"hd\"\n ],\n \"description\": + \"The value of definition indicates whether the video is available in high + definition or only in standard definition.\"\n },\n \"projection\": + {\n \"enum\": [\n \"rectangular\",\n \"360\"\n + \ ],\n \"description\": \"Specifies the projection format + of the video.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ]\n },\n \"caption\": + {\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"true\",\n \"false\"\n + \ ],\n \"description\": \"The value of captions indicates + whether the video has captions or not.\",\n \"type\": \"string\"\n + \ },\n \"duration\": {\n \"type\": \"string\",\n \"description\": + \"The length of the video. The tag value is an ISO 8601 duration in the format + PT#M#S, in which the letters PT indicate that the value specifies a period + of time, and the letters M and S refer to length in minutes and seconds, respectively. + The # characters preceding the M and S letters are both integers that specify + the number of minutes (or seconds) of the video. For example, a value of PT15M51S + indicates that the video is 15 minutes and 51 seconds long.\"\n },\n + \ \"licensedContent\": {\n \"type\": \"boolean\",\n \"description\": + \"The value of is_license_content indicates whether the video is licensed + content.\"\n },\n \"regionRestriction\": {\n \"$ref\": + \"VideoContentDetailsRegionRestriction\",\n \"description\": \"The + regionRestriction object contains information about the countries where a + video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed + property or the contentDetails.regionRestriction.blocked property.\"\n },\n + \ \"contentRating\": {\n \"$ref\": \"ContentRating\",\n \"description\": + \"Specifies the ratings that the video received under various rating schemes.\"\n + \ },\n \"hasCustomThumbnail\": {\n \"description\": + \"Indicates whether the video uploader has provided a custom thumbnail image + for the video. This property is only visible to the video uploader.\",\n \"type\": + \"boolean\"\n },\n \"dimension\": {\n \"description\": + \"The value of dimension indicates whether the video is available in 3D or + in 2D.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\"\n },\n \"LiveBroadcastContentDetails\": {\n \"description\": + \"Detailed settings of a broadcast.\",\n \"id\": \"LiveBroadcastContentDetails\",\n + \ \"properties\": {\n \"latencyPreference\": {\n \"enum\": + [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n + \ \"low\",\n \"ultraLow\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Best + for: highest quality viewer playbacks and higher resolutions.\",\n \"Best + for: near real-time interaction, with minimal playback buffering.\",\n \"Best + for: real-time interaction Does not support: Closed captions, 1440p, and 4k + resolutions\"\n ],\n \"description\": \"If both this and + enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false + LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should + have enable_low_latency omitted.\"\n },\n \"closedCaptionsType\": + {\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n + \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n + \ \"closedCaptionsEmbedded\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"boundStreamId\": + {\n \"description\": \"This value uniquely identifies the live stream + bound to the broadcast.\",\n \"type\": \"string\"\n },\n \"recordFromStart\": + {\n \"description\": \"Automatically start recording after the event + goes live. The default value for this property is true. *Important:* You must + also set the enableDvr property's value to true if you want the playback to + be available immediately after the broadcast ends. If you set this property's + value to true but do not also set the enableDvr property to true, there may + be a delay of around one day before the archived video will be available for + playback.\",\n \"type\": \"boolean\"\n },\n \"enableLowLatency\": + {\n \"type\": \"boolean\",\n \"description\": \"Indicates + whether this broadcast has low latency enabled.\"\n },\n \"monitorStream\": + {\n \"description\": \"The monitorStream object contains information + about the monitor stream, which the broadcaster can use to review the event + content before the broadcast stream is shown publicly.\",\n \"$ref\": + \"MonitorStreamInfo\"\n },\n \"enableContentEncryption\": {\n + \ \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether YouTube should enable content encryption for the broadcast.\"\n + \ },\n \"startWithSlate\": {\n \"description\": \"This + setting indicates whether the broadcast should automatically begin with an + in-stream slate when you update the broadcast's status to live. After updating + the status, you then need to send a liveCuepoints.insert request that sets + the cuepoint's eventState to end to remove the in-stream slate and make your + broadcast stream visible to viewers.\",\n \"type\": \"boolean\"\n + \ },\n \"enableEmbed\": {\n \"description\": \"This + setting indicates whether the broadcast video can be played in an embedded + player. If you choose to archive the video (using the enableArchive property), + this setting will also apply to the archived video.\",\n \"type\": + \"boolean\"\n },\n \"stereoLayout\": {\n \"enum\": + [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n + \ \"topBottom\"\n ],\n \"description\": \"The + 3D stereo layout of this broadcast. This defaults to mono.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"enableAutoStart\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether auto start is enabled for this broadcast. The default value + for this property is false. This setting can only be used by Events.\"\n },\n + \ \"enableDvr\": {\n \"description\": \"This setting determines + whether viewers can access DVR controls while watching the video. DVR controls + enable the viewer to control the video playback experience by pausing, rewinding, + or fast forwarding content. The default value for this property is true. *Important:* + You must set the value to true and also set the enableArchive property's value + to true if you want to make playback available immediately after the broadcast + ends.\",\n \"type\": \"boolean\"\n },\n \"enableClosedCaptions\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether HTTP POST closed captioning is enabled for this broadcast. + The ingestion URL of the closed captions is returned through the liveStreams + API. This is mutually exclusive with using the closed_captions_type property, + and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n + \ },\n \"projection\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The projection format of this broadcast. + This defaults to rectangular.\",\n \"enum\": [\n \"projectionUnspecified\",\n + \ \"rectangular\",\n \"360\",\n \"mesh\"\n + \ ]\n },\n \"enableAutoStop\": {\n \"type\": + \"boolean\",\n \"description\": \"This setting indicates whether + auto stop is enabled for this broadcast. The default value for this property + is false. This setting can only be used by Events.\"\n },\n \"mesh\": + {\n \"format\": \"byte\",\n \"type\": \"string\",\n \"description\": + \"The mesh for projecting the video if projection is mesh. The mesh value + must be a UTF-8 string containing the base-64 encoding of 3D mesh data that + follows the Spherical Video V2 RFC specification for an mshp box, excluding + the box size and type but including the following four reserved zero bytes + for the version and flags.\"\n },\n \"boundStreamLastUpdateTimeMs\": + {\n \"description\": \"The date and time that the live stream referenced + by boundStreamId was last updated.\",\n \"type\": \"string\",\n \"format\": + \"date-time\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveStream\": + {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"status\": {\n \"description\": + \"The status object contains information about live stream's status.\",\n + \ \"$ref\": \"LiveStreamStatus\"\n },\n \"kind\": {\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n + \ \"default\": \"youtube#liveStream\"\n },\n \"id\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.update\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + assigns to uniquely identify the stream.\",\n \"type\": \"string\"\n + \ },\n \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n + \ \"description\": \"The content_details object contains information + about the stream, including the closed captions ingestion URL.\"\n },\n + \ \"cdn\": {\n \"description\": \"The cdn object defines the + live stream's content delivery network (CDN) settings. These settings provide + details about the manner in which you stream your content to YouTube.\",\n + \ \"$ref\": \"CdnSettings\"\n },\n \"snippet\": {\n + \ \"$ref\": \"LiveStreamSnippet\",\n \"description\": \"The + snippet object contains basic details about the stream, including its channel, + title, and description.\"\n }\n },\n \"id\": \"LiveStream\",\n + \ \"description\": \"A live stream describes a live ingestion point.\"\n + \ },\n \"LiveStreamSnippet\": {\n \"properties\": {\n \"isDefaultStream\": + {\n \"type\": \"boolean\"\n },\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"The stream's title. The value must + be between 1 and 128 characters long.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n + \ ]\n }\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the channel that is transmitting the stream.\"\n },\n \"publishedAt\": + {\n \"description\": \"The date and time that the stream was created.\",\n + \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n + \ \"description\": {\n \"description\": \"The stream's description. + The value cannot be longer than 10000 characters.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveStreamSnippet\"\n },\n \"MemberSnippet\": {\n \"properties\": + {\n \"creatorChannelId\": {\n \"description\": \"The id of + the channel that's offering memberships.\",\n \"type\": \"string\"\n + \ },\n \"membershipsDetails\": {\n \"$ref\": \"MembershipsDetails\",\n + \ \"description\": \"Details about the user's membership.\"\n },\n + \ \"memberDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n + \ \"description\": \"Details about the member.\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"MemberSnippet\"\n },\n \"PlaylistContentDetails\": + {\n \"properties\": {\n \"itemCount\": {\n \"description\": + \"The number of videos in the playlist.\",\n \"type\": \"integer\",\n + \ \"format\": \"uint32\"\n }\n },\n \"id\": \"PlaylistContentDetails\",\n + \ \"type\": \"object\"\n },\n \"Entity\": {\n \"id\": \"Entity\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"url\": {\n + \ \"type\": \"string\"\n },\n \"typeId\": {\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n + \ }\n }\n },\n \"VideoMonetizationDetails\": {\n \"properties\": + {\n \"access\": {\n \"description\": \"The value of access + indicates whether the video can be monetized or not.\",\n \"$ref\": + \"AccessPolicy\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"VideoMonetizationDetails\",\n \"description\": \"Details about monetization + of a YouTube Video.\"\n },\n \"VideoCategory\": {\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video category.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the video category, including its title.\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n + \ \"default\": \"youtube#videoCategory\"\n }\n },\n \"id\": + \"VideoCategory\",\n \"type\": \"object\",\n \"description\": \"A + *videoCategory* resource identifies a category that has been or could be associated + with uploaded videos.\"\n },\n \"VideoAbuseReport\": {\n \"properties\": + {\n \"reasonId\": {\n \"type\": \"string\",\n \"description\": + \"The high-level, or primary, reason that the content is abusive. The value + is an abuse report reason ID.\"\n },\n \"comments\": {\n \"type\": + \"string\",\n \"description\": \"Additional comments regarding the + abuse report.\"\n },\n \"language\": {\n \"type\": + \"string\",\n \"description\": \"The language that the content was + viewed in.\"\n },\n \"secondaryReasonId\": {\n \"type\": + \"string\",\n \"description\": \"The specific, or secondary, reason + that this content is abusive (if available). The value is an abuse report + reason ID that is a valid secondary reason for the primary reason.\"\n },\n + \ \"videoId\": {\n \"description\": \"The ID that YouTube uses + to uniquely identify the video.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReport\"\n + \ },\n \"ActivityContentDetails\": {\n \"description\": \"Details + about the content of an activity: the video that was shared, the channel that + was subscribed to, etc.\",\n \"properties\": {\n \"bulletin\": + {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n \"description\": + \"The bulletin object contains details about a channel bulletin post. This + object is only present if the snippet.type is bulletin.\"\n },\n \"recommendation\": + {\n \"description\": \"The recommendation object contains information + about a recommended resource. This property is only present if the snippet.type + is recommendation.\",\n \"$ref\": \"ActivityContentDetailsRecommendation\"\n + \ },\n \"social\": {\n \"description\": \"The social + object contains details about a social network post. This property is only + present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n + \ },\n \"subscription\": {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n + \ \"description\": \"The subscription object contains information + about a channel that a user subscribed to. This property is only present if + the snippet.type is subscription.\"\n },\n \"playlistItem\": + {\n \"description\": \"The playlistItem object contains information + about a new playlist item. This property is only present if the snippet.type + is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n + \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n + \ \"description\": \"The comment object contains information about + a resource that received a comment. This property is only present if the snippet.type + is comment.\"\n },\n \"promotedItem\": {\n \"$ref\": + \"ActivityContentDetailsPromotedItem\",\n \"description\": \"The + promotedItem object contains details about a resource which is being promoted. + This property is only present if the snippet.type is promotedItem.\"\n },\n + \ \"favorite\": {\n \"description\": \"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.\",\n \"$ref\": + \"ActivityContentDetailsFavorite\"\n },\n \"channelItem\": {\n + \ \"$ref\": \"ActivityContentDetailsChannelItem\",\n \"description\": + \"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.\"\n + \ },\n \"like\": {\n \"description\": \"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.\",\n \"$ref\": + \"ActivityContentDetailsLike\"\n },\n \"upload\": {\n \"$ref\": + \"ActivityContentDetailsUpload\",\n \"description\": \"The upload + object contains information about the uploaded video. This property is only + present if the snippet.type is upload.\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"ActivityContentDetails\"\n },\n \"LiveChatMembershipGiftingDetails\": + {\n \"id\": \"LiveChatMembershipGiftingDetails\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"giftMembershipsLevelName\": {\n \"type\": + \"string\",\n \"description\": \"The name of the level of the gift + memberships purchased by the user. The Level names are defined by the YouTube + channel offering the Membership. In some situations this field isn't filled.\"\n + \ },\n \"giftMembershipsCount\": {\n \"type\": \"integer\",\n + \ \"description\": \"The number of gift memberships purchased by the + user.\",\n \"format\": \"int32\"\n }\n }\n },\n \"MembershipsDurationAtLevel\": + {\n \"id\": \"MembershipsDurationAtLevel\",\n \"properties\": {\n + \ \"memberSince\": {\n \"type\": \"string\",\n \"description\": + \"The date and time when the user became a continuous member for the given + level.\"\n },\n \"level\": {\n \"type\": \"string\",\n + \ \"description\": \"Pricing level ID.\"\n },\n \"memberTotalDurationMonths\": + {\n \"description\": \"The cumulative time the user has been a member + for the given level in complete months (the time is rounded down to the nearest + integer).\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"CommentThreadSnippet\": + {\n \"id\": \"CommentThreadSnippet\",\n \"properties\": {\n \"totalReplyCount\": + {\n \"description\": \"The total number of replies (not including + the top level comment).\",\n \"format\": \"uint32\",\n \"type\": + \"integer\"\n },\n \"channelId\": {\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n \"isPublic\": + {\n \"description\": \"Whether the thread (and therefore all its + comments) is visible to all YouTube users.\",\n \"type\": \"boolean\"\n + \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the video the comments refer to, if any. No video_id implies a + channel discussion comment.\"\n },\n \"topLevelComment\": {\n + \ \"$ref\": \"Comment\",\n \"description\": \"The top level + comment of this thread.\"\n },\n \"canReply\": {\n \"description\": + \"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.\",\n \"type\": + \"boolean\"\n }\n },\n \"description\": \"Basic details about + a comment thread.\",\n \"type\": \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": + {\n \"properties\": {\n \"userComment\": {\n \"type\": + \"string\",\n \"description\": \"The comment added by the member + to this Member Milestone Chat. This field is empty for messages without a + comment from the member.\"\n },\n \"memberMonth\": {\n \"description\": + \"The total amount of months (rounded up) the viewer has been a member that + granted them this Member Milestone Chat. This is the same number of months + as is being displayed to YouTube users.\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\"\n },\n \"memberLevelName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the Level at which the viever is a member. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveChatMemberMilestoneChatDetails\"\n },\n \"VideoTopicDetails\": + {\n \"type\": \"object\",\n \"id\": \"VideoTopicDetails\",\n \"properties\": + {\n \"topicIds\": {\n \"description\": \"A list of Freebase + topic IDs that are centrally associated with the video. These are topics that + are centrally featured in the video, and it can be said that the video is + mainly about each of these. You can retrieve information about each topic + using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase + Topic API.\",\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"type\": \"array\"\n },\n \"relevantTopicIds\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"Similar to topic_id, except that these topics + are merely relevant to the video. These are topics that may be mentioned in, + or appear in the video. You can retrieve information about each topic using + Freebase Topic API.\",\n \"type\": \"array\"\n },\n \"topicCategories\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"A list of Wikipedia + URLs that provide a high-level description of the video's content.\"\n }\n + \ },\n \"description\": \"Freebase topic information related to the + video.\"\n },\n \"LiveBroadcastStatistics\": {\n \"type\": \"object\",\n + \ \"description\": \"Statistics about the live broadcast. These represent + a snapshot of the values at the time of the request. Statistics are only returned + for live broadcasts.\",\n \"id\": \"LiveBroadcastStatistics\",\n \"properties\": + {\n \"totalChatCount\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"The total number of live chat messages + currently on the broadcast. The property and its value will be present if + the broadcast is public, has the live chat feature enabled, and has at least + one message. Note that this field will not be filled after the broadcast ends. + So this property would not identify the number of chat messages for an archived + video of a completed live broadcast.\"\n },\n \"concurrentViewers\": + {\n \"description\": \"The number of viewers currently watching the + broadcast. The property and its value will be present if the broadcast has + current viewers and the broadcast owner has not hidden the viewcount for the + video. Note that YouTube stops tracking the number of concurrent viewers for + a broadcast when the broadcast ends. So, this property would not identify + the number of viewers watching an archived video of a live broadcast that + already ended.\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n }\n }\n },\n \"AbuseReport\": {\n \"type\": + \"object\",\n \"id\": \"AbuseReport\",\n \"properties\": {\n \"subject\": + {\n \"$ref\": \"Entity\"\n },\n \"abuseTypes\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"AbuseType\"\n }\n },\n \"relatedEntities\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n + \ }\n },\n \"description\": {\n \"type\": \"string\"\n + \ }\n }\n },\n \"SuperChatEventSnippet\": {\n \"type\": + \"object\",\n \"id\": \"SuperChatEventSnippet\",\n \"properties\": + {\n \"isSuperStickerEvent\": {\n \"description\": \"True if + this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n + \ },\n \"commentText\": {\n \"type\": \"string\",\n + \ \"description\": \"The text contents of the comment left by the + user.\"\n },\n \"messageType\": {\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"description\": \"The tier for + the paid message, which is based on the amount of money spent to purchase + the message.\"\n },\n \"superStickerMetadata\": {\n \"description\": + \"If this event is a Super Sticker event, this field will contain metadata + about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"Channel id where the event occurred.\"\n },\n \"supporterDetails\": + {\n \"description\": \"Details about the supporter.\",\n \"$ref\": + \"ChannelProfileDetails\"\n },\n \"currency\": {\n \"description\": + \"The currency in which the purchase was made. ISO 4217.\",\n \"type\": + \"string\"\n },\n \"amountMicros\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The purchase + amount, in micros of the purchase currency. e.g., 1 is represented as 1000000.\"\n + \ },\n \"displayString\": {\n \"type\": \"string\",\n + \ \"description\": \"A rendered string that displays the purchase + amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the + given language.\"\n },\n \"createdAt\": {\n \"type\": + \"string\",\n \"description\": \"The date and time when the event + occurred.\",\n \"format\": \"date-time\"\n }\n }\n },\n + \ \"ChannelSectionSnippet\": {\n \"properties\": {\n \"style\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n + \ \"horizontalRow\",\n \"verticalList\"\n ],\n + \ \"description\": \"The style of the channel section.\",\n \"type\": + \"string\"\n },\n \"position\": {\n \"format\": \"uint32\",\n + \ \"type\": \"integer\",\n \"description\": \"The position + of the channel section in the channel.\"\n },\n \"localized\": + {\n \"description\": \"Localized title, read-only.\",\n \"$ref\": + \"ChannelSectionLocalization\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that published + the channel section.\",\n \"type\": \"string\"\n },\n \"type\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The type of the channel section.\",\n \"type\": \"string\",\n \"enum\": + [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n + \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n + \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n + \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n + \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n + \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n + \ ]\n },\n \"title\": {\n \"description\": + \"The channel section's title for multiple_playlists and multiple_channels.\",\n + \ \"type\": \"string\"\n },\n \"defaultLanguage\": {\n + \ \"description\": \"The language of the channel section's default + title and description.\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Basic details about a channel section, including + title, style and position.\",\n \"type\": \"object\",\n \"id\": + \"ChannelSectionSnippet\"\n },\n \"ActivityContentDetailsSocial\": {\n + \ \"id\": \"ActivityContentDetailsSocial\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"type\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n + \ \"facebook\",\n \"twitter\"\n ],\n \"type\": + \"string\",\n \"description\": \"The name of the social network.\"\n + \ },\n \"author\": {\n \"type\": \"string\",\n \"description\": + \"The author of the social network post.\"\n },\n \"imageUrl\": + {\n \"description\": \"An image of the post's author.\",\n \"type\": + \"string\"\n },\n \"referenceUrl\": {\n \"description\": + \"The URL of the social network post.\",\n \"type\": \"string\"\n + \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object encapsulates information + that identifies the resource associated with a social network post.\"\n }\n + \ },\n \"description\": \"Details about a social network post.\"\n + \ },\n \"ChannelSettings\": {\n \"id\": \"ChannelSettings\",\n \"properties\": + {\n \"defaultLanguage\": {\n \"type\": \"string\"\n },\n + \ \"showRelatedChannels\": {\n \"description\": \"Whether related + channels should be proposed.\",\n \"type\": \"boolean\"\n },\n + \ \"title\": {\n \"type\": \"string\",\n \"description\": + \"Specifies the channel title.\"\n },\n \"featuredChannelsTitle\": + {\n \"type\": \"string\",\n \"description\": \"Title for + the featured channels tab.\"\n },\n \"country\": {\n \"type\": + \"string\",\n \"description\": \"The country of the channel.\"\n + \ },\n \"profileColor\": {\n \"description\": \"A prominent + color that can be rendered on this channel page.\",\n \"type\": \"string\"\n + \ },\n \"unsubscribedTrailer\": {\n \"type\": \"string\",\n + \ \"description\": \"The trailer of the channel, for users that are + not subscribers.\"\n },\n \"moderateComments\": {\n \"description\": + \"Whether user-submitted comments left on the channel page need to be approved + by the channel owner to be publicly visible.\",\n \"type\": \"boolean\"\n + \ },\n \"showBrowseView\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Whether the tab to browse the videos should be + displayed.\"\n },\n \"keywords\": {\n \"description\": + \"Lists keywords associated with the channel, comma-separated.\",\n \"type\": + \"string\"\n },\n \"featuredChannelsUrls\": {\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"The list of featured channels.\"\n },\n + \ \"description\": {\n \"description\": \"Specifies the channel + description.\",\n \"type\": \"string\"\n },\n \"defaultTab\": + {\n \"description\": \"Which content tab users should see when viewing + the channel.\",\n \"type\": \"string\"\n },\n \"trackingAnalyticsAccountId\": + {\n \"description\": \"The ID for a Google Analytics account to track + and measure traffic to the channels.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Branding properties for the + channel view.\",\n \"type\": \"object\"\n },\n \"I18nLanguageListResponse\": + {\n \"type\": \"object\",\n \"id\": \"I18nLanguageListResponse\",\n + \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": + \"A list of supported i18n languages. In this map, the i18n language ID is + the map key, and its value is the corresponding i18nLanguage resource.\",\n + \ \"items\": {\n \"$ref\": \"I18nLanguage\"\n },\n + \ \"type\": \"array\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#i18nLanguageListResponse\"\n + \ }\n }\n },\n \"LiveChatNewSponsorDetails\": {\n \"id\": + \"LiveChatNewSponsorDetails\",\n \"properties\": {\n \"memberLevelName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the Level that the viewer just had joined. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\"\n },\n \"isUpgrade\": {\n \"description\": + \"If the viewer just had upgraded from a lower level. For viewers that were + not members at the time of purchase, this field is false.\",\n \"type\": + \"boolean\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatModeratorSnippet\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\",\n + \ \"properties\": {\n \"moderatorDetails\": {\n \"$ref\": + \"ChannelProfileDetails\",\n \"description\": \"Details about the + moderator.\"\n },\n \"liveChatId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the live chat this moderator can act + on.\"\n }\n }\n },\n \"LiveChatBanSnippet\": {\n \"id\": + \"LiveChatBanSnippet\",\n \"properties\": {\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"type\": + {\n \"type\": \"string\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n + \ \"permanent\",\n \"temporary\"\n ],\n \"enumDescriptions\": + [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n + \ \"A temporary ban.\"\n ],\n \"description\": + \"The type of ban.\"\n },\n \"banDurationSeconds\": {\n \"format\": + \"uint64\",\n \"description\": \"The duration of a ban, only filled + if the ban has type TEMPORARY.\",\n \"type\": \"string\"\n },\n + \ \"liveChatId\": {\n \"description\": \"The chat this ban + is pertinent to.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"AbuseType\": {\n \"properties\": + {\n \"id\": {\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"AbuseType\",\n \"type\": \"object\"\n },\n \"LiveChatModerator\": + {\n \"id\": \"LiveChatModerator\",\n \"properties\": {\n \"id\": + {\n \"description\": \"The ID that YouTube assigns to uniquely identify + the moderator.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatModeratorSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the moderator.\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveChatModerator\\\".\",\n \"default\": + \"youtube#liveChatModerator\"\n }\n },\n \"type\": \"object\",\n + \ \"description\": \"A *liveChatModerator* resource represents a moderator + for a YouTube live chat. A chat moderator has the ability to ban/unban users + from a chat, remove message, etc.\"\n },\n \"ActivityContentDetailsPromotedItem\": + {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPromotedItem\",\n + \ \"properties\": {\n \"adTag\": {\n \"type\": \"string\",\n + \ \"description\": \"The URL the client should fetch to request a + promoted item.\"\n },\n \"descriptionText\": {\n \"type\": + \"string\",\n \"description\": \"The text description to accompany + the promoted item.\"\n },\n \"impressionUrl\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"The list of impression URLs. The client should + ping all of these URLs to indicate that the user was shown this promoted item.\"\n + \ },\n \"destinationUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The URL the client should direct the user to, + if the user chooses to visit the advertiser's website.\"\n },\n \"customCtaButtonText\": + {\n \"description\": \"The custom call-to-action button text. If + specified, it will override the default button text for the cta_type.\",\n + \ \"type\": \"string\"\n },\n \"ctaType\": {\n \"description\": + \"The type of call-to-action, a message to the user indicating action that + can be taken.\",\n \"type\": \"string\",\n \"enum\": [\n + \ \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ]\n },\n \"clickTrackingUrl\": {\n \"type\": + \"string\",\n \"description\": \"The URL the client should ping to + indicate that the user clicked through on this promoted item.\"\n },\n + \ \"forecastingUrl\": {\n \"description\": \"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.\",\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n + \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the promoted video.\"\n },\n + \ \"creativeViewUrl\": {\n \"description\": \"The URL the client + should ping to indicate that the user was shown this promoted item.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Details about a + resource which is being promoted.\"\n },\n \"LiveBroadcastListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"description\": \"A list of broadcasts that match the request criteria.\",\n + \ \"type\": \"array\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"pageInfo\": {\n \"description\": \"General + pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n + \ \"default\": \"youtube#liveBroadcastListResponse\",\n \"type\": + \"string\"\n },\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"LiveBroadcastListResponse\"\n },\n + \ \"LiveChatModeratorListResponse\": {\n \"id\": \"LiveChatModeratorListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"items\": {\n \"description\": \"A list of moderators that + match the request criteria.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"LiveChatModerator\"\n }\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n + \ \"default\": \"youtube#liveChatModeratorListResponse\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n }\n }\n },\n \"MembershipsLevel\": + {\n \"description\": \"A *membershipsLevel* resource represents an offer + made by YouTube creators for their fans. Users can become members of the channel + by joining one of the available levels. They will provide recurring monetary + support and receives special benefits.\",\n \"id\": \"MembershipsLevel\",\n + \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube assigns to uniquely identify the memberships level.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevel\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"ContentRating\": + {\n \"description\": \"Ratings schemes. The country-specific ratings + are mostly for movies and shows. LINT.IfChange\",\n \"properties\": {\n + \ \"lsfRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"SU\",\n \"A\",\n \"BO\",\n \"13\",\n + \ \"R\",\n \"17\",\n \"D\",\n \"21\",\n + \ \"\"\n ],\n \"enum\": [\n \"lsfUnspecified\",\n + \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n + \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n + \ \"lsfUnrated\"\n ],\n \"description\": \"The + video's rating from Indonesia's Lembaga Sensor Film.\",\n \"type\": + \"string\"\n },\n \"oflcRating\": {\n \"enum\": [\n + \ \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n + \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n + \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n + \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n + \ ],\n \"description\": \"The video's Office of Film and + Literature Classification (OFLC - New Zealand) rating.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n + \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n + \ \"RP16\",\n \"RP18\"\n ]\n },\n \"csaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"Interdiction\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n + \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n + \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n + \ \"description\": \"The video's rating from France's Conseil sup\xE9rieur + de l\u2019audiovisuel, which rates broadcast content.\"\n },\n \"mdaRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n + \ \"R21\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from Singapore's + Media Development Authority (MDA) and, specifically, it's Board of Film Censors + (BFC).\",\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n + \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n + \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n + \ ]\n },\n \"kfcbRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"enum\": [\n + \ \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n + \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Kenya + Film Classification Board.\",\n \"type\": \"string\"\n },\n + \ \"nmcRating\": {\n \"description\": \"The National Media + Council ratings system for United Arab Emirates.\",\n \"enum\": [\n + \ \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n + \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n + \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n + \ \"\"\n ]\n },\n \"incaaRating\": {\n \"enum\": + [\n \"incaaUnspecified\",\n \"incaaAtp\",\n \"incaaSam13\",\n + \ \"incaaSam16\",\n \"incaaSam18\",\n \"incaaC\",\n + \ \"incaaUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"ATP (Apta + para todo publico)\",\n \"13 (Solo apta para mayores de 13 a\xF1os)\",\n + \ \"16 (Solo apta para mayores de 16 a\xF1os)\",\n \"18 + (Solo apta para mayores de 18 a\xF1os)\",\n \"X (Solo apta para + mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n \"\"\n + \ ],\n \"description\": \"The video's INCAA (Instituto Nacional + de Cine y Artes Audiovisuales - Argentina) rating.\"\n },\n \"eefilmRating\": + {\n \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n + \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n + \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n + \ \"eefilmK16\",\n \"eefilmUnrated\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The video's + rating in Estonia.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Pere\",\n \"L\",\n \"MS-6\",\n \"K-6\",\n + \ \"MS-12\",\n \"K-12\",\n \"K-14\",\n \"K-16\",\n + \ \"\"\n ]\n },\n \"smaisRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n + \ \"14\",\n \"16\",\n \"18\",\n \"\"\n + \ ],\n \"description\": \"The video's rating in Iceland.\",\n + \ \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n + \ \"smais7\",\n \"smais12\",\n \"smais14\",\n + \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"ytRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n + \ ],\n \"description\": \"A rating that YouTube uses to identify + age-restricted content.\",\n \"type\": \"string\"\n },\n \"acbRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n + \ \"Programs that have been given a P classification by the Australian + Communications and Media Authority. These programs are intended for preschool + children.\",\n \"Programs that have been given a C classification + by the Australian Communications and Media Authority. These programs are intended + for children (other than preschool children) who are younger than 14 years + of age.\",\n \"G\",\n \"PG\",\n \"M\",\n + \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"acbUnspecified\",\n + \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n + \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n + \ \"acbR18plus\",\n \"acbUnrated\"\n ],\n \"description\": + \"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.\"\n },\n \"cscfRating\": {\n \"description\": + \"The video's rating from Luxembourg's Commission de surveillance de la classification + des films (CSCF).\",\n \"enum\": [\n \"cscfUnspecified\",\n + \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n + \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n + \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n + \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"mtrcbRating\": {\n \"enum\": [\n \"mtrcbUnspecified\",\n + \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n + \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n + \ \"mtrcbUnrated\"\n ],\n \"description\": \"The + video's rating from the Movie and Television Review and Classification Board + (Philippines).\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n + \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n + \ ]\n },\n \"egfilmRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's rating in Egypt.\",\n + \ \"enum\": [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n + \ \"egfilm18\",\n \"egfilmBn\",\n \"egfilmUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n + \ \"18\",\n \"BN\",\n \"\"\n ]\n + \ },\n \"mibacRating\": {\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali + e del Turismo (Italy).\",\n \"enum\": [\n \"mibacUnspecified\",\n + \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n + \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n + \ \"mibacVm18\",\n \"mibacUnrated\"\n ]\n },\n + \ \"catvfrRating\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n + \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n + \ \"catvfrUnrated\",\n \"catvfrE\"\n ]\n },\n + \ \"cccRating\": {\n \"description\": \"The video's Consejo + de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n \"enum\": + [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n + \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n + \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Todo espectador\",\n \"6+ - + Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n + \ \"18+ - contenido excesivamente violento\",\n \"18+ + - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"eirinRating\": {\n \"description\": + \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n + \ \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n + \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n + \ \"eirinUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n + \ ]\n },\n \"mekuRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"S\",\n + \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual + Institute).\",\n \"enum\": [\n \"mekuUnspecified\",\n + \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n + \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n + \ ]\n },\n \"fpbRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n + \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n + \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n + \ ],\n \"description\": \"The video's rating from South Africa's + Film and Publication Board.\",\n \"type\": \"string\",\n \"enum\": + [\n \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n + \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n + \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n + \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n + \ ]\n },\n \"fskRating\": {\n \"enum\": [\n + \ \"fskUnspecified\",\n \"fsk0\",\n \"fsk6\",\n + \ \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n \"fskUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"FSK + 0\",\n \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n + \ \"FSK 18\",\n \"\"\n ],\n \"description\": + \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) + rating.\",\n \"type\": \"string\"\n },\n \"mccaaRating\": + {\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n + \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n + \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n + \ \"mccaa18\",\n \"mccaaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n + \ \"12\",\n \"14 - this rating was removed from the new + classification structure introduced in 2013.\",\n \"15\",\n \"16 + - this rating was removed from the new classification structure introduced + in 2013.\",\n \"18\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from Malta's + Film Age-Classification Board.\"\n },\n \"rteRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's rating from Ireland's + Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n + \ \"MA\",\n \"\"\n ],\n \"enum\": [\n + \ \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n + \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n + \ ]\n },\n \"moctwRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n + \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n + \ ],\n \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n + \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n + \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\"\n + \ },\n \"icaaRating\": {\n \"type\": \"string\",\n \"description\": + \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales + (ICAA - Spain) rating.\",\n \"enum\": [\n \"icaaUnspecified\",\n + \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n + \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n + \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n + \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n + \ \"\"\n ]\n },\n \"nfvcbRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's rating from Nigeria's + National Film and Video Censors Board.\",\n \"enum\": [\n \"nfvcbUnspecified\",\n + \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n + \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n + \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n + \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n + \ \"\"\n ]\n },\n \"djctqRatingReasons\": + {\n \"type\": \"array\",\n \"description\": \"Reasons that + explain why the video received its DJCQT (Brazil) rating.\",\n \"items\": + {\n \"enumDescriptions\": [\n \"\",\n \"Brazil + rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia + (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n + \ \"Conte\xFAdo sexual (Sexual content)\",\n \"Nudez + (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo Expl\xEDcito + (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas + L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n + \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos + Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting + content)\"\n ],\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n + \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n + \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n + \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n + \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n + \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n + \ ],\n \"type\": \"string\"\n }\n },\n + \ \"nbcRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"12+\",\n \"15+\",\n + \ \"18+\",\n \"18+R\",\n \"PU\",\n \"\"\n + \ ],\n \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n + \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n + \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n + \ \"nbcUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from the Maldives National + Bureau of Classification.\"\n },\n \"nfrcRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n + \ \"\"\n ],\n \"enum\": [\n \"nfrcUnspecified\",\n + \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n + \ \"nfrcX\",\n \"nfrcUnrated\"\n ],\n \"description\": + \"The video's rating from the Bulgarian National Film Center.\"\n },\n + \ \"chvrsRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"14A\",\n \"18A\",\n + \ \"R\",\n \"E\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's Canadian Home Video + Rating System (CHVRS) rating.\",\n \"enum\": [\n \"chvrsUnspecified\",\n + \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n + \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n + \ \"chvrsUnrated\"\n ]\n },\n \"fcoRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"I\",\n \"IIA\",\n \"IIB\",\n \"II\",\n + \ \"III\",\n \"\"\n ],\n \"description\": + \"The video's rating from Hong Kong's Office for Film, Newspaper and Article + Administration.\",\n \"enum\": [\n \"fcoUnspecified\",\n + \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n + \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n + \ ]\n },\n \"tvpgRating\": {\n \"enum\": [\n + \ \"tvpgUnspecified\",\n \"tvpgY\",\n \"tvpgY7\",\n + \ \"tvpgY7Fv\",\n \"tvpgG\",\n \"tvpgPg\",\n + \ \"pg14\",\n \"tvpgMa\",\n \"tvpgUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n + \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n + \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's TV Parental Guidelines (TVPG) rating.\"\n },\n \"catvRating\": + {\n \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n + \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n + \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n + \ \"catvE\"\n ],\n \"enumDescriptions\": [\n \"\",\n + \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n + \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"nkclvRating\": + {\n \"description\": \"The video's rating from the Nacion\xE3lais + Kino centrs (National Film Centre of Latvia).\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n + \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n + \ \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n + \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n + \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n + \ \"type\": \"string\"\n },\n \"ilfilmRating\": {\n + \ \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n + \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n + \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n + \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + in Israel.\"\n },\n \"russiaRating\": {\n \"description\": + \"The video's National Film Registry of the Russian Federation (MKRF - Russia) + rating.\",\n \"type\": \"string\",\n \"enum\": [\n \"russiaUnspecified\",\n + \ \"russia0\",\n \"russia6\",\n \"russia12\",\n + \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n + \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n + \ \"\"\n ]\n },\n \"fcbmRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's rating from Malaysia's + Film Censorship Board.\",\n \"enum\": [\n \"fcbmUnspecified\",\n + \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n + \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n + \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n + \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n + \ ]\n },\n \"kmrbRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 + \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n + \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n + \ \"\"\n ],\n \"enum\": [\n \"kmrbUnspecified\",\n + \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n + \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) + rating. The KMRB rates videos in South Korea.\"\n },\n \"fmocRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n + \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"E\",\n \"\"\n ],\n \"enum\": [\n + \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n + \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n + \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"This property has been deprecated. + Use the contentDetails.contentRating.cncRating instead.\"\n },\n \"cnaRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"AP\",\n \"12\",\n \"15\",\n \"18\",\n + \ \"18+\",\n \"\"\n ],\n \"enum\": + [\n \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n + \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n + \ \"cnaUnrated\"\n ],\n \"description\": \"The + video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\"\n + \ },\n \"smsaRating\": {\n \"enum\": [\n \"smsaUnspecified\",\n + \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n + \ \"smsa15\",\n \"smsaUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from Statens + medier\xE5d (Sweden's National Media Council).\",\n \"enumDescriptions\": + [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n + \ \"15\",\n \"\"\n ]\n },\n \"grfilmRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"grfilmUnspecified\",\n + \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n + \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n + \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n + \ \"description\": \"The video's rating in Greece.\",\n \"enumDescriptions\": + [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n + \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n + \ \"\"\n ]\n },\n \"czfilmRating\": {\n \"description\": + \"The video's rating in the Czech Republic.\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n + \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n + \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n + \ \"czfilmUnrated\"\n ]\n },\n \"bbfcRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"U\",\n \"PG\",\n \"12A\",\n \"12\",\n + \ \"15\",\n \"18\",\n \"R18\",\n \"\"\n + \ ],\n \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n + \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n + \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n + \ \"bbfcUnrated\"\n ],\n \"description\": \"The + video's British Board of Film Classification (BBFC) rating.\"\n },\n + \ \"skfilmRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n + \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n + \ ],\n \"description\": \"The video's rating in Slovakia.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n + \ ]\n },\n \"kijkwijzerRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n + \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n \"kijkwijzer6\",\n + \ \"kijkwijzer9\",\n \"kijkwijzer12\",\n \"kijkwijzer16\",\n + \ \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n ],\n + \ \"description\": \"The video's NICAM/Kijkwijzer rating from the + Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\"\n + \ },\n \"mcstRating\": {\n \"enum\": [\n \"mcstUnspecified\",\n + \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n + \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n + \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n + \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + system for Vietnam - MCST\",\n \"type\": \"string\"\n },\n + \ \"bmukkRating\": {\n \"description\": \"The video's rating + from the Austrian Board of Media Classification (Bundesministerium f\xFCr + Unterricht, Kunst und Kultur).\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Unrestricted\",\n \"6+\",\n \"8+\",\n + \ \"10+\",\n \"12+\",\n \"14+\",\n \"16+\",\n + \ \"\"\n ],\n \"enum\": [\n \"bmukkUnspecified\",\n + \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n + \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n + \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"mocRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n + \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n + \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n + \ \"mocUnrated\"\n ],\n \"description\": \"The + video's Ministerio de Cultura (Colombia) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n + \ \"Banned\",\n \"\"\n ]\n },\n \"cncRating\": + {\n \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n + \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n + \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n + \ \"\"\n ],\n \"description\": \"Rating system + in France - Commission de classification cinematographique\"\n },\n + \ \"ecbmctRating\": {\n \"enum\": [\n \"ecbmctUnspecified\",\n + \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n + \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n + \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n + \ ],\n \"description\": \"Rating system in Turkey - Evaluation + and Classification Board of the Ministry of Culture and Tourism\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n + \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n + \ ]\n },\n \"rcnofRating\": {\n \"enum\": [\n + \ \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n + \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n + \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee + of the National Office of Film.\"\n },\n \"cbfcRating\": {\n + \ \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n + \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n + \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n + \ \"cbfcUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's Central Board of Film Certification + (CBFC - India) rating.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"U\",\n \"U/A\",\n \"U/A 7+\",\n \"U/A + 13+\",\n \"U/A 16+\",\n \"A\",\n \"S\",\n + \ \"\"\n ]\n },\n \"nbcplRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"nbcplUnspecified\",\n + \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n + \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n + \ ],\n \"description\": \"The video's rating in Poland.\"\n + \ },\n \"menaMpaaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"R\",\n \"To keep the same enum values as MPAA's items + have, skip NC_17.\"\n ],\n \"description\": \"The rating + system for MENA countries, a clone of MPAA. It is needed to prevent titles + go live w/o additional QC check, since some of them can be inappropriate for + the countries at all. See b/33408548 for more details.\",\n \"type\": + \"string\",\n \"enum\": [\n \"menaMpaaUnspecified\",\n + \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n + \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ]\n + \ },\n \"mccypRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"7\",\n \"11\",\n \"15\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from the Danish + Film Institute's (Det Danske Filminstitut) Media Council for Children and + Young People.\",\n \"enum\": [\n \"mccypUnspecified\",\n + \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n + \ \"mccyp15\",\n \"mccypUnrated\"\n ]\n },\n + \ \"djctqRating\": {\n \"enum\": [\n \"djctqUnspecified\",\n + \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n + \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n + \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n + \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n + \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n + \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n + \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n + \ \"djctq1618\",\n \"djctqUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's Departamento de Justi\xE7a, + Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"L\",\n + \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n + \ \"18\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"rtcRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"rtcUnspecified\",\n + \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n + \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n + \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n + \ \"D\",\n \"\"\n ],\n \"description\": + \"The video's General Directorate of Radio, Television and Cinematography + (Mexico) rating.\"\n },\n \"fpbRatingReasons\": {\n \"type\": + \"array\",\n \"description\": \"Reasons that explain why the video + received its FPB (South Africa) rating.\",\n \"items\": {\n \"enumDescriptions\": + [\n \"\",\n \"South Africa rating content descriptors.\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": + [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n + \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n + \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n + \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n + \ \"fpbImitativeActsTechniques\"\n ],\n \"type\": + \"string\"\n }\n },\n \"mpaatRating\": {\n \"description\": + \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n + \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n + \ \"mpaatRb\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"GB\",\n \"RB\"\n ],\n + \ \"type\": \"string\"\n },\n \"cicfRating\": {\n \"enum\": + [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n + \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"E\",\n + \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n + \ \"description\": \"The video's rating from the Commission de Contr\xF4le + des Films (Belgium).\"\n },\n \"cceRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"4\",\n + \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\",\n \"14\"\n ],\n \"enum\": [\n + \ \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n + \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n + \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"description\": + \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de + Espect\xB4culos.\"\n },\n \"ifcoRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's Irish Film Classification + Office (IFCO - Ireland) rating. See the IFCO website for more information.\",\n + \ \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n + \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n + \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n + \ \"ifco18\",\n \"ifcoUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n + \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n + \ \"18\",\n \"\"\n ]\n },\n \"anatelRating\": + {\n \"description\": \"The video's Anatel (Asociaci\xF3n Nacional + de Televisi\xF3n) rating for Chilean television.\",\n \"enumDescriptions\": + [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n + \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n + \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n + \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n + \ ]\n },\n \"resorteviolenciaRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n + \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n + \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + in Venezuela.\"\n },\n \"bfvcRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n + \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n + \ \"\"\n ],\n \"enum\": [\n \"bfvcUnspecified\",\n + \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n + \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n + \ \"bfvcB\",\n \"bfvcUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from Thailand's + Board of Film and Video Censors.\"\n },\n \"chfilmRating\": + {\n \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n + \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n + \ \"chfilm18\",\n \"chfilmUnrated\"\n ],\n \"description\": + \"The video's rating in Switzerland.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"0\",\n + \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ]\n },\n \"pefilmRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's rating in Peru.\",\n + \ \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n + \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n + \ \"pefilmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n + \ \"18\",\n \"\"\n ]\n },\n \"agcomRating\": + {\n \"type\": \"string\",\n \"description\": \"The video's + rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n + \ \"enumDescriptions\": [\n \"\",\n \"T\",\n + \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n + \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n + \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n + \ ]\n },\n \"medietilsynetRating\": {\n \"description\": + \"The video's rating from Medietilsynet, the Norwegian Media Authority.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n + \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n + \ \"\"\n ],\n \"enum\": [\n \"medietilsynetUnspecified\",\n + \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n + \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n + \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n + \ ]\n },\n \"mpaaRating\": {\n \"enum\": [\n + \ \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n + \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n + \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's Motion Picture Association + of America (MPAA) rating.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n + \ \"NC-17\",\n \"! X\",\n \"\"\n ]\n + \ }\n },\n \"id\": \"ContentRating\",\n \"type\": \"object\"\n + \ },\n \"VideoAbuseReportReasonListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoAbuseReportReasonListResponse\",\n \"properties\": + {\n \"kind\": {\n \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"visitorId\": {\n \"description\": + \"The `visitorId` identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"VideoAbuseReportReason\"\n },\n \"description\": \"A list + of valid abuse reasons that are used with `video.ReportAbuse`.\",\n \"type\": + \"array\"\n },\n \"etag\": {\n \"description\": \"Etag + of this resource.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"LiveBroadcast\": {\n \"description\": \"A *liveBroadcast* + resource represents an event that will be streamed, via live video, on YouTube.\",\n + \ \"id\": \"LiveBroadcast\",\n \"properties\": {\n \"contentDetails\": + {\n \"$ref\": \"LiveBroadcastContentDetails\",\n \"description\": + \"The contentDetails object contains information about the event's video content, + such as whether the content can be shown in an embedded video player or if + it will be archived and therefore available for viewing after the event has + concluded.\"\n },\n \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n + \ \"description\": \"The status object contains information about + the event's status.\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube assigns to uniquely identify the broadcast.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"type\": \"string\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the event, including its title, description, start time, + and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n },\n + \ \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n + \ \"description\": \"The statistics object contains info about the + event's current stats. These include concurrent viewers and total chat count. + Statistics can change (in either direction) during the lifetime of an event. + Statistics are only returned while the event is live.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#liveBroadcast\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"CommentThreadListResponse\": + {\n \"id\": \"CommentThreadListResponse\",\n \"properties\": {\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"CommentThread\"\n },\n \"description\": + \"A list of comment threads that match the request criteria.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n + \ \"default\": \"youtube#commentThreadListResponse\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": {\n + \ \"id\": \"VideoProcessingDetailsProcessingProgress\",\n \"properties\": + {\n \"partsTotal\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"An estimate of the total number + of parts that need to be processed for the video. The number may be updated + with more precise estimates while YouTube processes the video.\"\n },\n + \ \"timeLeftMs\": {\n \"type\": \"string\",\n \"description\": + \"An estimate of the amount of time, in millseconds, that YouTube needs to + finish processing the video.\",\n \"format\": \"uint64\"\n },\n + \ \"partsProcessed\": {\n \"description\": \"The number of + parts of the video that YouTube has already processed. You can estimate the + percentage of the video that YouTube has already processed by calculating: + 100 * parts_processed / parts_total Note that since the estimated number of + parts could increase without a corresponding increase in the number of parts + that have already been processed, it is possible that the calculated progress + could periodically decrease while YouTube processes a video.\",\n \"type\": + \"string\",\n \"format\": \"uint64\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"Video processing progress and completion + time estimate.\"\n },\n \"CommentSnippet\": {\n \"properties\": + {\n \"authorChannelId\": {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"authorDisplayName\": {\n \"type\": + \"string\",\n \"description\": \"The name of the user who posted + the comment.\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time when the comment was originally published.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"authorChannelUrl\": + {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n + \ \"type\": \"string\"\n },\n \"viewerRating\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"The entity + is liked.\",\n \"The entity is disliked.\"\n ],\n \"type\": + \"string\",\n \"description\": \"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.\",\n \"enum\": + [\n \"none\",\n \"like\",\n \"dislike\"\n + \ ]\n },\n \"textDisplay\": {\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n \"textOriginal\": + {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"updatedAt\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time when the comment was last updated.\"\n + \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the video the comment refers to, if any.\"\n },\n \"parentId\": + {\n \"type\": \"string\",\n \"description\": \"The unique + id of the parent comment, only set for replies.\"\n },\n \"authorProfileImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL for + the avatar of the user who posted the comment.\"\n },\n \"likeCount\": + {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": + \"The total number of likes this comment has received.\"\n },\n \"canRate\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the current viewer can rate this comment.\"\n },\n \"moderationStatus\": + {\n \"type\": \"string\",\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ],\n \"description\": \"The comment's moderation status. + Will not be set if the comments were requested through the id filter.\",\n + \ \"enumDescriptions\": [\n \"The comment is available + for public display.\",\n \"The comment is awaiting review by a + moderator.\",\n \"\",\n \"The comment is unfit for display.\"\n + \ ]\n }\n },\n \"id\": \"CommentSnippet\",\n \"type\": + \"object\",\n \"description\": \"Basic details about a comment, such + as its author and text.\"\n },\n \"VideoRating\": {\n \"type\": + \"object\",\n \"description\": \"Basic details about rating of a video.\",\n + \ \"properties\": {\n \"rating\": {\n \"description\": + \"Rating of a video.\",\n \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"type\": \"string\"\n },\n + \ \"videoId\": {\n \"description\": \"The ID that YouTube uses + to uniquely identify the video.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"VideoRating\"\n },\n \"I18nRegion\": {\n \"id\": + \"I18nRegion\",\n \"type\": \"object\",\n \"description\": \"A *i18nRegion* + resource identifies a region where YouTube is available.\",\n \"properties\": + {\n \"snippet\": {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": + \"The snippet object contains basic details about the i18n region, such as + region code and human-readable name.\"\n },\n \"etag\": {\n + \ \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"description\": \"The + ID that YouTube uses to uniquely identify the i18n region.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#i18nRegion\\\".\",\n \"default\": \"youtube#i18nRegion\"\n + \ }\n }\n },\n \"SearchResult\": {\n \"description\": + \"A search result contains information about a YouTube video, channel, or + playlist that matches the search parameters specified in an API request. While + a search result points to a uniquely identifiable resource, like a video, + it does not have its own persistent data.\",\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#searchResult\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#searchResult\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": + \"The id object contains information that can be used to uniquely identify + the resource that matches the search request.\",\n \"$ref\": \"ResourceId\"\n + \ },\n \"snippet\": {\n \"$ref\": \"SearchResultSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + a search result, such as its title or description. For example, if the search + result is a video, then the title will be the video's title and the description + will be the video's description.\"\n }\n },\n \"id\": \"SearchResult\",\n + \ \"type\": \"object\"\n },\n \"ActivitySnippet\": {\n \"id\": + \"ActivitySnippet\",\n \"properties\": {\n \"groupId\": {\n \"type\": + \"string\",\n \"description\": \"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.\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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.\"\n },\n \"publishedAt\": {\n \"type\": + \"string\",\n \"description\": \"The date and time that the video + was uploaded.\",\n \"format\": \"date-time\"\n },\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel responsible for this activity\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The description + of the resource primarily associated with the activity. @mutable youtube.activities.insert\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The title of the resource primarily associated with the activity.\"\n },\n + \ \"type\": {\n \"description\": \"The type of activity that + the resource describes.\",\n \"type\": \"string\",\n \"enum\": + [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n + \ \"favorite\",\n \"comment\",\n \"subscription\",\n + \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n + \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the channel associated with the activity.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Basic details about an activity, + including title, description, thumbnails, activity type and group. Next ID: + 12\",\n \"type\": \"object\"\n },\n \"VideoAgeGating\": {\n \"id\": + \"VideoAgeGating\",\n \"type\": \"object\",\n \"properties\": {\n + \ \"videoGameRating\": {\n \"description\": \"Video game rating, + if any.\",\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n + \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"restricted\": + {\n \"description\": \"Age-restricted trailers. For redband trailers + and adult-rated video-games. Only users aged 18+ can view the content. The + the field is true the content is restricted to viewers aged 18+. Otherwise + The field won't be present.\",\n \"type\": \"boolean\"\n },\n + \ \"alcoholContent\": {\n \"description\": \"Indicates whether + or not the video has alcoholic beverage content. Only users of legal purchasing + age in a particular country, as identified by ICAP, can view the content.\",\n + \ \"type\": \"boolean\"\n }\n }\n },\n \"LiveChatSuperChatDetails\": + {\n \"id\": \"LiveChatSuperChatDetails\",\n \"properties\": {\n + \ \"amountDisplayString\": {\n \"description\": \"A rendered + string that displays the fund amount and currency to the user.\",\n \"type\": + \"string\"\n },\n \"userComment\": {\n \"type\": \"string\",\n + \ \"description\": \"The comment added by the user to this Super Chat + event.\"\n },\n \"tier\": {\n \"type\": \"integer\",\n + \ \"format\": \"uint32\",\n \"description\": \"The tier in + which the amount belongs. Lower amounts belong to lower tiers. The lowest + tier is 1.\"\n },\n \"currency\": {\n \"description\": + \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n + \ },\n \"amountMicros\": {\n \"description\": \"The + amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": + \"string\",\n \"format\": \"uint64\"\n }\n },\n \"type\": + \"object\"\n },\n \"VideoProjectDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"VideoProjectDetails\",\n \"description\": \"DEPRECATED. + b/157517979: This part was never populated after it was added. However, it + sees non-zero traffic because there is generated client code in the wild that + refers to it [1]. We keep this field and do NOT remove it because otherwise + V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n + \ \"properties\": {}\n },\n \"ChannelSectionContentDetails\": {\n + \ \"description\": \"Details about a channelsection, including playlists + and channels.\",\n \"id\": \"ChannelSectionContentDetails\",\n \"properties\": + {\n \"playlists\": {\n \"description\": \"The playlist ids + for type single_playlist and multiple_playlists. For singlePlaylist, only + one playlistId is allowed.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n },\n \"channels\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"The channel ids + for type multiple_channels.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"VideoLiveStreamingDetails\": {\n \"id\": \"VideoLiveStreamingDetails\",\n + \ \"description\": \"Details about the live streaming metadata.\",\n \"properties\": + {\n \"concurrentViewers\": {\n \"type\": \"string\",\n \"format\": + \"uint64\",\n \"description\": \"The number of viewers currently + watching the broadcast. The property and its value will be present if the + broadcast has current viewers and the broadcast owner has not hidden the viewcount + for the video. Note that YouTube stops tracking the number of concurrent viewers + for a broadcast when the broadcast ends. So, this property would not identify + the number of viewers watching an archived video of a live broadcast that + already ended.\"\n },\n \"actualEndTime\": {\n \"format\": + \"date-time\",\n \"description\": \"The time that the broadcast actually + ended. This value will not be available until the broadcast is over.\",\n + \ \"type\": \"string\"\n },\n \"scheduledStartTime\": + {\n \"description\": \"The time that the broadcast is scheduled to + begin.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n + \ },\n \"activeLiveChatId\": {\n \"description\": \"The + ID of the currently active live chat attached to this video. This field is + filled only if the video is a currently live broadcast that has live chat. + Once the broadcast transitions to complete this field will be removed and + the live chat closed down. For persistent broadcasts that live chat id will + no longer be tied to this video but rather to the new video being displayed + at the persistent page.\",\n \"type\": \"string\"\n },\n \"actualStartTime\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The time that the broadcast actually started. + This value will not be available until the broadcast begins.\"\n },\n + \ \"scheduledEndTime\": {\n \"format\": \"date-time\",\n \"type\": + \"string\",\n \"description\": \"The time that the broadcast is scheduled + to end. If the value is empty or the property is not present, then the broadcast + is scheduled to contiue indefinitely.\"\n }\n },\n \"type\": + \"object\"\n },\n \"PropertyValue\": {\n \"type\": \"object\",\n + \ \"description\": \"A pair Property / Value.\",\n \"properties\": + {\n \"property\": {\n \"description\": \"A property.\",\n + \ \"type\": \"string\"\n },\n \"value\": {\n \"description\": + \"The property's value.\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"PropertyValue\"\n },\n \"InvideoPosition\": {\n \"type\": + \"object\",\n \"properties\": {\n \"cornerPosition\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"Describes in which corner of the video the visual widget will appear.\",\n + \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n + \ \"bottomLeft\",\n \"bottomRight\"\n ]\n },\n + \ \"type\": {\n \"description\": \"Defines the position type.\",\n + \ \"enum\": [\n \"corner\"\n ],\n \"enumDescriptions\": + [\n \"\"\n ],\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"InvideoPosition\",\n \"description\": \"Describes + the spatial position of a visual widget inside a video. It is a union of various + position types, out of which only will be set one.\"\n },\n \"PlaylistItemStatus\": + {\n \"description\": \"Information about the playlist item's privacy + status.\",\n \"type\": \"object\",\n \"properties\": {\n \"privacyStatus\": + {\n \"type\": \"string\",\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ],\n \"description\": + \"This resource's privacy status.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ]\n }\n + \ },\n \"id\": \"PlaylistItemStatus\"\n },\n \"WatchSettings\": + {\n \"type\": \"object\",\n \"description\": \"Branding properties + for the watch. All deprecated.\",\n \"properties\": {\n \"textColor\": + {\n \"description\": \"The background color for the video watch page's + branded area.\",\n \"type\": \"string\"\n },\n \"backgroundColor\": + {\n \"description\": \"The text color for the video watch page's + branded area.\",\n \"type\": \"string\"\n },\n \"featuredPlaylistId\": + {\n \"type\": \"string\",\n \"description\": \"An ID that + uniquely identifies a playlist that displays next to the video player.\"\n + \ }\n },\n \"id\": \"WatchSettings\"\n },\n \"AccessPolicy\": + {\n \"type\": \"object\",\n \"id\": \"AccessPolicy\",\n \"description\": + \"Rights management policy for YouTube resources.\",\n \"properties\": + {\n \"allowed\": {\n \"type\": \"boolean\",\n \"description\": + \"The value of allowed indicates whether the access to the policy is allowed + or denied by default.\"\n },\n \"exception\": {\n \"type\": + \"array\",\n \"description\": \"A list of region codes that identify + countries where the default policy do not apply.\",\n \"items\": + {\n \"type\": \"string\"\n }\n }\n }\n },\n + \ \"ChannelSectionListResponse\": {\n \"id\": \"ChannelSectionListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"description\": \"A list of ChannelSections + that match the request criteria.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n + \ \"default\": \"youtube#channelSectionListResponse\"\n }\n + \ }\n },\n \"VideoProcessingDetails\": {\n \"properties\": + {\n \"processingFailureReason\": {\n \"description\": \"The + reason that YouTube failed to process the video. This property will only have + a value if the processingStatus property's value is failed.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"uploadFailed\",\n + \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n + \ ]\n },\n \"processingIssuesAvailability\": {\n \"type\": + \"string\",\n \"description\": \"This value indicates whether the + video processing engine has generated suggestions that might improve YouTube's + ability to process the the video, warnings that explain video processing problems, + or errors that cause video processing problems. You can retrieve these suggestions + by requesting the suggestions part in your videos.list() request.\"\n },\n + \ \"editorSuggestionsAvailability\": {\n \"description\": \"This + value indicates whether video editing suggestions, which might improve video + quality or the playback experience, are available for the video. You can retrieve + these suggestions by requesting the suggestions part in your videos.list() + request.\",\n \"type\": \"string\"\n },\n \"processingProgress\": + {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": + \"The processingProgress object contains information about the progress YouTube + has made in processing the video. The values are really only relevant if the + video's processing status is processing.\"\n },\n \"tagSuggestionsAvailability\": + {\n \"type\": \"string\",\n \"description\": \"This value + indicates whether keyword (tag) suggestions are available for the video. Tags + can be added to a video's metadata to make it easier for other users to find + the video. You can retrieve these suggestions by requesting the suggestions + part in your videos.list() request.\"\n },\n \"thumbnailsAvailability\": + {\n \"type\": \"string\",\n \"description\": \"This value + indicates whether thumbnail images have been generated for the video.\"\n + \ },\n \"fileDetailsAvailability\": {\n \"type\": \"string\",\n + \ \"description\": \"This value indicates whether file details are + available for the uploaded video. You can retrieve a video's file details + by requesting the fileDetails part in your videos.list() request.\"\n },\n + \ \"processingStatus\": {\n \"enum\": [\n \"processing\",\n + \ \"succeeded\",\n \"failed\",\n \"terminated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's processing status. This value indicates + whether YouTube was able to process the video or if the video is still being + processed.\"\n }\n },\n \"description\": \"Describes processing + status and progress and availability of some other Video resource parts.\",\n + \ \"id\": \"VideoProcessingDetails\",\n \"type\": \"object\"\n },\n + \ \"ActivityContentDetailsBulletin\": {\n \"description\": \"Details + about a channel bulletin post.\",\n \"type\": \"object\",\n \"properties\": + {\n \"resourceId\": {\n \"description\": \"The resourceId + object contains information that identifies the resource associated with a + bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": + \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsBulletin\"\n + \ },\n \"InvideoBranding\": {\n \"type\": \"object\",\n \"properties\": + {\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": + \"The url of the uploaded image. Only used in apiary to api communication.\"\n + \ },\n \"imageBytes\": {\n \"type\": \"string\",\n \"format\": + \"byte\",\n \"description\": \"The bytes the uploaded image. Only + used in api to youtube communication.\"\n },\n \"targetChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The channel + to which this branding links. If not present it defaults to the current channel.\"\n + \ },\n \"position\": {\n \"$ref\": \"InvideoPosition\",\n + \ \"description\": \"The spatial position within the video where the + branding watermark will be displayed.\"\n },\n \"timing\": {\n + \ \"description\": \"The temporal position within the video where + watermark will be displayed.\",\n \"$ref\": \"InvideoTiming\"\n }\n + \ },\n \"description\": \"LINT.IfChange Describes an invideo branding.\",\n + \ \"id\": \"InvideoBranding\"\n },\n \"ChannelBannerResource\": + {\n \"description\": \"A channel banner returned as the response to a + channel_banner.insert call.\",\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n \"default\": + \"youtube#channelBannerResource\",\n \"type\": \"string\"\n },\n + \ \"url\": {\n \"description\": \"The URL of this banner image.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + \"string\"\n }\n },\n \"id\": \"ChannelBannerResource\",\n + \ \"type\": \"object\"\n },\n \"Playlist\": {\n \"properties\": + {\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the playlist.\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the playlist, such as its title and description.\",\n + \ \"$ref\": \"PlaylistSnippet\"\n },\n \"localizations\": + {\n \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n + \ },\n \"type\": \"object\",\n \"description\": + \"Localizations for different languages\"\n },\n \"kind\": {\n + \ \"type\": \"string\",\n \"default\": \"youtube#playlist\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlist\\\".\"\n },\n \"status\": + {\n \"description\": \"The status object contains status information + for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n },\n + \ \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": + \"The player object contains information that you would use to play the playlist + in an embedded player.\"\n },\n \"contentDetails\": {\n \"$ref\": + \"PlaylistContentDetails\",\n \"description\": \"The contentDetails + object contains information like video count.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"description\": \"A *playlist* resource + represents a YouTube playlist. A playlist is a collection of videos that can + be viewed sequentially and shared with other users. A playlist can contain + up to 200 videos, and YouTube does not limit the number of playlists that + each user creates. By default, playlists are publicly visible to other users, + but playlists can be public or private. YouTube also uses playlists to identify + special collections of videos for a channel, such as: - uploaded videos - + favorite videos - positively rated (liked) videos - watch history - watch + later To be more specific, these lists are associated with a channel, which + is a collection of a person, group, or company's videos, playlists, and other + YouTube information. You can retrieve the playlist IDs for each of these lists + from the channel resource for a given channel. You can then use the playlistItems.list + method to retrieve any of those lists. You can also add or remove items from + those lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n + \ \"type\": \"object\",\n \"id\": \"Playlist\"\n },\n \"ChannelLocalization\": + {\n \"description\": \"Channel localization setting\",\n \"type\": + \"object\",\n \"id\": \"ChannelLocalization\",\n \"properties\": + {\n \"description\": {\n \"description\": \"The localized + strings for channel's description.\",\n \"type\": \"string\"\n },\n + \ \"title\": {\n \"type\": \"string\",\n \"description\": + \"The localized strings for channel's title.\"\n }\n }\n },\n + \ \"SubscriptionListResponse\": {\n \"properties\": {\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"eventId\": {\n + \ \"type\": \"string\",\n \"description\": \"Serialized EventId + of the request which produced this response.\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"Subscription\"\n },\n \"type\": + \"array\",\n \"description\": \"A list of subscriptions that match + the request criteria.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#subscriptionListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"SubscriptionListResponse\"\n + \ },\n \"Caption\": {\n \"id\": \"Caption\",\n \"properties\": + {\n \"id\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.update\"\n ]\n },\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the caption track.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#caption\\\".\",\n \"type\": \"string\",\n + \ \"default\": \"youtube#caption\"\n },\n \"snippet\": + {\n \"$ref\": \"CaptionSnippet\",\n \"description\": \"The + snippet object contains basic details about the caption.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"description\": \"A *caption* resource + represents a YouTube caption track. A caption track is associated with exactly + one YouTube video.\",\n \"type\": \"object\"\n },\n \"PlaylistListResponse\": + {\n \"type\": \"object\",\n \"id\": \"PlaylistListResponse\",\n + \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": + \"Playlist\"\n },\n \"description\": \"A list of playlists + that match the request criteria\",\n \"type\": \"array\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": + \"youtube#playlistListResponse\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n + \ },\n \"pageInfo\": {\n \"description\": \"General + pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n + \ }\n },\n \"LiveStreamListResponse\": {\n \"id\": \"LiveStreamListResponse\",\n + \ \"properties\": {\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n + \ \"default\": \"youtube#liveStreamListResponse\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": + \"A list of live streams that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"LiveStream\"\n },\n \"type\": + \"array\"\n }\n },\n \"type\": \"object\"\n },\n \"MembershipsDuration\": + {\n \"id\": \"MembershipsDuration\",\n \"type\": \"object\",\n \"properties\": + {\n \"memberTotalDurationMonths\": {\n \"description\": \"The + cumulative time the user has been a member across all levels in complete months + (the time is rounded down to the nearest integer).\",\n \"type\": + \"integer\",\n \"format\": \"int32\"\n },\n \"memberSince\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the user became a continuous member across all levels.\"\n }\n + \ }\n },\n \"SubscriptionContentDetails\": {\n \"type\": \"object\",\n + \ \"id\": \"SubscriptionContentDetails\",\n \"properties\": {\n \"totalItemCount\": + {\n \"type\": \"integer\",\n \"description\": \"The approximate + number of items that the subscription points to.\",\n \"format\": + \"uint32\"\n },\n \"activityType\": {\n \"description\": + \"The type of activity this subscription is for (only uploads, everything).\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"subscriptionActivityTypeUnspecified\",\n \"all\",\n + \ \"uploads\"\n ]\n },\n \"newItemCount\": + {\n \"type\": \"integer\",\n \"description\": \"The number + of new items in the subscription since its content was last read.\",\n \"format\": + \"uint32\"\n }\n },\n \"description\": \"Details about the + content to witch a subscription refers.\"\n },\n \"ActivityContentDetailsChannelItem\": + {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId + object contains information that identifies the resource that was added to + the channel.\"\n }\n },\n \"description\": \"Details about + a resource which was added to a channel.\",\n \"id\": \"ActivityContentDetailsChannelItem\"\n + \ },\n \"VideoFileDetailsVideoStream\": {\n \"id\": \"VideoFileDetailsVideoStream\",\n + \ \"description\": \"Information about a video stream.\",\n \"type\": + \"object\",\n \"properties\": {\n \"codec\": {\n \"description\": + \"The video codec that the stream uses.\",\n \"type\": \"string\"\n + \ },\n \"aspectRatio\": {\n \"description\": \"The video + content's display aspect ratio, which specifies the aspect ratio in which + the video should be displayed.\",\n \"type\": \"number\",\n \"format\": + \"double\"\n },\n \"bitrateBps\": {\n \"format\": \"uint64\",\n + \ \"description\": \"The video stream's bitrate, in bits per second.\",\n + \ \"type\": \"string\"\n },\n \"rotation\": {\n \"description\": + \"The amount that YouTube needs to rotate the original source content to properly + display the video.\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n + \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"vendor\": {\n \"type\": + \"string\",\n \"description\": \"A value that uniquely identifies + a video vendor. Typically, the value is a four-letter vendor code.\"\n },\n + \ \"heightPixels\": {\n \"description\": \"The encoded video + content's height in pixels.\",\n \"format\": \"uint32\",\n \"type\": + \"integer\"\n },\n \"widthPixels\": {\n \"description\": + \"The encoded video content's width in pixels. You can calculate the video's + encoding aspect ratio as width_pixels / height_pixels.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"frameRateFps\": + {\n \"format\": \"double\",\n \"description\": \"The video + stream's frame rate, in frames per second.\",\n \"type\": \"number\"\n + \ }\n }\n },\n \"PageInfo\": {\n \"type\": \"object\",\n + \ \"description\": \"Paging details for lists of resources, including + total number of items available and number of resources returned in a single + page.\",\n \"id\": \"PageInfo\",\n \"properties\": {\n \"totalResults\": + {\n \"type\": \"integer\",\n \"description\": \"The total + number of results in the result set.\",\n \"format\": \"int32\"\n + \ },\n \"resultsPerPage\": {\n \"type\": \"integer\",\n + \ \"description\": \"The number of results included in the API response.\",\n + \ \"format\": \"int32\"\n }\n }\n },\n \"LiveChatMessageListResponse\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageListResponse\",\n + \ \"properties\": {\n \"pollingIntervalMillis\": {\n \"format\": + \"uint32\",\n \"description\": \"The amount of time the client should + wait before polling again.\",\n \"type\": \"integer\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n + \ \"default\": \"youtube#liveChatMessageListResponse\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"offlineAt\": {\n \"description\": \"The date + and time when the underlying stream went offline.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"LiveChatMessage\"\n },\n \"type\": + \"array\"\n }\n }\n },\n \"ActivityContentDetailsFavorite\": + {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the resource that was marked as a favorite.\"\n + \ }\n },\n \"description\": \"Information about a video that + was marked as a favorite video.\",\n \"id\": \"ActivityContentDetailsFavorite\",\n + \ \"type\": \"object\"\n },\n \"MemberListResponse\": {\n \"id\": + \"MemberListResponse\",\n \"properties\": {\n \"visitorId\": {\n + \ \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"items\": {\n \"description\": \"A list of members that + match the request criteria.\",\n \"items\": {\n \"$ref\": + \"Member\"\n },\n \"type\": \"array\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#memberListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ }\n },\n \"type\": \"object\"\n },\n \"ChannelTopicDetails\": + {\n \"properties\": {\n \"topicIds\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"A list of Freebase topic IDs associated with the channel. You can retrieve + information about each topic using the Freebase Topic API.\",\n \"type\": + \"array\"\n },\n \"topicCategories\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"description\": + \"A list of Wikipedia URLs that describe the channel's content.\",\n \"type\": + \"array\"\n }\n },\n \"description\": \"Freebase topic information + related to the channel.\",\n \"type\": \"object\",\n \"id\": \"ChannelTopicDetails\"\n + \ },\n \"PlaylistItemSnippet\": {\n \"type\": \"object\",\n \"properties\": + {\n \"description\": {\n \"description\": \"The item's description.\",\n + \ \"type\": \"string\"\n },\n \"videoOwnerChannelId\": + {\n \"description\": \"Channel id for the channel this video belongs + to.\",\n \"type\": \"string\"\n },\n \"playlistId\": + {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": + [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + uses to uniquely identify thGe playlist that the playlist item is in.\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The item's title.\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the user that added the item + to the playlist.\",\n \"type\": \"string\"\n },\n \"videoOwnerChannelTitle\": + {\n \"description\": \"Channel title for the channel this video belongs + to.\",\n \"type\": \"string\"\n },\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"Channel title + for the channel that the playlist item belongs to.\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"description\": \"The + date and time that the item was added to the playlist.\",\n \"type\": + \"string\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the playlist item. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"annotations\": {\n \"required\": [\n + \ \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n + \ ]\n },\n \"description\": \"The id object contains + information that can be used to uniquely identify the resource that is included + in the playlist as the playlist item.\"\n },\n \"position\": + {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The order in which the item appears in the playlist. The value uses a zero-based + index, so the first item has a position of 0, the second item has a position + of 1, and so forth.\"\n }\n },\n \"id\": \"PlaylistItemSnippet\",\n + \ \"description\": \"Basic details about a playlist, including title, + description and thumbnails. Basic details of a YouTube Playlist item provided + by the author. Next ID: 15\"\n },\n \"ChannelProfileDetails\": {\n \"id\": + \"ChannelProfileDetails\",\n \"properties\": {\n \"channelId\": + {\n \"description\": \"The YouTube channel ID.\",\n \"type\": + \"string\"\n },\n \"displayName\": {\n \"description\": + \"The channel's display name.\",\n \"type\": \"string\"\n },\n + \ \"channelUrl\": {\n \"description\": \"The channel's URL.\",\n + \ \"type\": \"string\"\n },\n \"profileImageUrl\": {\n + \ \"type\": \"string\",\n \"description\": \"The channels's + avatar URL.\"\n }\n },\n \"type\": \"object\"\n },\n \"ActivityListResponse\": + {\n \"id\": \"ActivityListResponse\",\n \"properties\": {\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#activityListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#activityListResponse\\\".\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"items\": {\n \"$ref\": \"Activity\"\n },\n + \ \"type\": \"array\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"pageInfo\": {\n \"description\": \"General + pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"ActivityContentDetailsSubscription\": + {\n \"id\": \"ActivityContentDetailsSubscription\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + that the user subscribed to.\"\n }\n },\n \"description\": + \"Information about a channel that a user subscribed to.\",\n \"type\": + \"object\"\n },\n \"PlaylistLocalization\": {\n \"description\": + \"Playlist localization setting\",\n \"id\": \"PlaylistLocalization\",\n + \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The localized strings for playlist's description.\"\n + \ },\n \"title\": {\n \"description\": \"The localized + strings for playlist's title.\",\n \"type\": \"string\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"VideoGetRatingResponse\": + {\n \"id\": \"VideoGetRatingResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"VideoRating\"\n },\n + \ \"description\": \"A list of ratings that match the request criteria.\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n + \ \"default\": \"youtube#videoGetRatingResponse\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"SubscriptionSnippet\": {\n \"type\": \"object\",\n \"properties\": + {\n \"channelTitle\": {\n \"description\": \"Channel title + for the channel that the subscription belongs to.\",\n \"type\": + \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + video. 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.\"\n + \ },\n \"title\": {\n \"description\": \"The subscription's + title.\",\n \"type\": \"string\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The subscription's + details.\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the subscriber's channel.\",\n + \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time that the subscription was created.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"annotations\": {\n \"required\": + [\n \"youtube.subscriptions.insert\"\n ]\n },\n + \ \"description\": \"The id object contains information about the + channel that the user subscribed to.\"\n }\n },\n \"description\": + \"Basic details about a subscription, including title, description and thumbnails + of the subscribed item.\",\n \"id\": \"SubscriptionSnippet\"\n },\n + \ \"ThumbnailDetails\": {\n \"description\": \"Internal representation + of thumbnails for a YouTube resource.\",\n \"properties\": {\n \"default\": + {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The default + image for this resource.\"\n },\n \"standard\": {\n \"$ref\": + \"Thumbnail\",\n \"description\": \"The standard quality image for + this resource.\"\n },\n \"maxres\": {\n \"description\": + \"The maximum resolution quality image for this resource.\",\n \"$ref\": + \"Thumbnail\"\n },\n \"high\": {\n \"$ref\": \"Thumbnail\",\n + \ \"description\": \"The high quality image for this resource.\"\n + \ },\n \"medium\": {\n \"description\": \"The medium + quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"ThumbnailDetails\"\n + \ },\n \"VideoStatistics\": {\n \"description\": \"Statistics about + the video, such as the number of times the video was viewed or liked.\",\n + \ \"properties\": {\n \"likeCount\": {\n \"type\": \"string\",\n + \ \"description\": \"The number of users who have indicated that they + liked the video by giving it a positive rating.\",\n \"format\": + \"uint64\"\n },\n \"favoriteCount\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of users who currently have the video marked as a favorite video.\"\n + \ },\n \"dislikeCount\": {\n \"format\": \"uint64\",\n + \ \"type\": \"string\",\n \"description\": \"The number of + users who have indicated that they disliked the video by giving it a negative + rating.\"\n },\n \"commentCount\": {\n \"description\": + \"The number of comments for the video.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n },\n \"viewCount\": {\n \"type\": + \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of times the video has been viewed.\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"VideoStatistics\"\n },\n \"I18nLanguage\": + {\n \"type\": \"object\",\n \"id\": \"I18nLanguage\",\n \"properties\": + {\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n + \ \"default\": \"youtube#i18nLanguage\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the i18n language, such as language code and human-readable name.\",\n + \ \"$ref\": \"I18nLanguageSnippet\"\n },\n \"id\": {\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the i18n language.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"description\": \"An *i18nLanguage* + resource identifies a UI language currently supported by YouTube.\"\n },\n + \ \"CommentListResponse\": {\n \"properties\": {\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"items\": {\n \"description\": + \"A list of comments that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"Comment\"\n },\n \"type\": \"array\"\n + \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n + \ \"default\": \"youtube#commentListResponse\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n }\n },\n \"id\": \"CommentListResponse\",\n + \ \"type\": \"object\"\n },\n \"Member\": {\n \"properties\": + {\n \"kind\": {\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#member\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the member.\",\n \"$ref\": \"MemberSnippet\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"Member\",\n \"description\": \"A *member* + resource represents a member for a YouTube channel. A member provides recurring + monetary support to a creator and receives special benefits.\"\n },\n \"I18nRegionListResponse\": + {\n \"id\": \"I18nRegionListResponse\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n + \ \"description\": \"A list of regions where YouTube is available. + In this map, the i18n region ID is the map key, and its value is the corresponding + i18nRegion resource.\",\n \"items\": {\n \"$ref\": \"I18nRegion\"\n + \ }\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#i18nRegionListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"PlaylistItemContentDetails\": {\n \"properties\": + {\n \"videoPublishedAt\": {\n \"type\": \"string\",\n \"format\": + \"date-time\",\n \"description\": \"The date and time that the video + was published to YouTube.\"\n },\n \"endAt\": {\n \"description\": + \"The time, measured in seconds from the start of the video, when the video + should stop playing. (The playlist owner can specify the times when the video + should start and stop playing when the video is played in the context of the + playlist.) By default, assume that the video.endTime is the end of the video.\",\n + \ \"type\": \"string\"\n },\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify a video. To retrieve the video resource, set the id query parameter + to this value in your API request.\"\n },\n \"startAt\": {\n + \ \"description\": \"The time, measured in seconds from the start + of the video, when the video should start playing. (The playlist owner can + specify the times when the video should start and stop playing when the video + is played in the context of the playlist.) The default value is 0.\",\n \"type\": + \"string\"\n },\n \"note\": {\n \"type\": \"string\",\n + \ \"description\": \"A user-generated note for this item.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"PlaylistItemContentDetails\"\n + \ },\n \"VideoListResponse\": {\n \"properties\": {\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"Video\"\n }\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#videoListResponse\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n + \ },\n \"pageInfo\": {\n \"description\": \"General + pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"VideoListResponse\"\n + \ },\n \"Channel\": {\n \"description\": \"A *channel* resource + contains information about a YouTube channel.\",\n \"id\": \"Channel\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"localizations\": + {\n \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n + \ },\n \"type\": \"object\",\n \"description\": + \"Localizations for different languages\"\n },\n \"conversionPings\": + {\n \"$ref\": \"ChannelConversionPings\",\n \"description\": + \"The conversionPings object encapsulates information about conversion pings + that need to be respected by the channel.\"\n },\n \"contentOwnerDetails\": + {\n \"description\": \"The contentOwnerDetails object encapsulates + channel data that is relevant for YouTube Partners linked with the channel.\",\n + \ \"$ref\": \"ChannelContentOwnerDetails\"\n },\n \"brandingSettings\": + {\n \"description\": \"The brandingSettings object encapsulates information + about the branding of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#channel\",\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#channel\\\".\"\n },\n + \ \"auditDetails\": {\n \"description\": \"The auditionDetails + object encapsulates channel data that is relevant for YouTube Partners during + the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n },\n + \ \"statistics\": {\n \"description\": \"The statistics object + encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n + \ },\n \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the channel, such as its title, description, and thumbnail images.\"\n },\n + \ \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n + \ \"description\": \"The contentDetails object encapsulates information + about the channel's content.\"\n },\n \"topicDetails\": {\n + \ \"$ref\": \"ChannelTopicDetails\",\n \"description\": \"The + topicDetails object encapsulates information about Freebase topics associated + with the channel.\"\n },\n \"status\": {\n \"description\": + \"The status object encapsulates information about the privacy status of the + channel.\",\n \"$ref\": \"ChannelStatus\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"id\": {\n \"description\": \"The + ID that YouTube uses to uniquely identify the channel.\",\n \"type\": + \"string\"\n }\n }\n },\n \"MembershipsDetails\": {\n \"properties\": + {\n \"membershipsDuration\": {\n \"$ref\": \"MembershipsDuration\",\n + \ \"description\": \"Data about memberships duration without taking + into consideration pricing levels.\"\n },\n \"membershipsDurationAtLevels\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"MembershipsDurationAtLevel\"\n },\n \"description\": \"Data + about memberships duration on particular pricing levels.\"\n },\n \"highestAccessibleLevel\": + {\n \"type\": \"string\",\n \"description\": \"Id of the + highest level that the user has access to at the moment.\"\n },\n \"highestAccessibleLevelDisplayName\": + {\n \"type\": \"string\",\n \"description\": \"Display name + for the highest level that the user has access to at the moment.\"\n },\n + \ \"accessibleLevels\": {\n \"description\": \"Ids of all levels + that the user has access to. This includes the currently active level and + all other levels that are included because of a higher purchase.\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n + \ }\n },\n \"id\": \"MembershipsDetails\",\n \"type\": + \"object\"\n },\n \"CaptionSnippet\": {\n \"id\": \"CaptionSnippet\",\n + \ \"description\": \"Basic details about a caption track, such as its + language and name.\",\n \"properties\": {\n \"audioTrackType\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"unknown\",\n \"primary\",\n \"commentary\",\n + \ \"descriptive\"\n ],\n \"description\": \"The + type of audio track associated with the caption track.\",\n \"type\": + \"string\"\n },\n \"videoId\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + uses to uniquely identify the video associated with the caption track. @mutable + youtube.captions.insert\",\n \"type\": \"string\"\n },\n \"failureReason\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"unknownFormat\",\n + \ \"unsupportedFormat\",\n \"processingFailed\"\n ],\n + \ \"description\": \"The reason that YouTube failed to process the + caption track. This property is only present if the state property's value + is failed.\",\n \"type\": \"string\"\n },\n \"isDraft\": + {\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\",\n + \ \"type\": \"boolean\"\n },\n \"language\": {\n \"description\": + \"The language of the caption track. The property value is a BCP-47 language + tag.\",\n \"type\": \"string\",\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n }\n + \ },\n \"isAutoSynced\": {\n \"description\": \"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.\",\n + \ \"type\": \"boolean\"\n },\n \"lastUpdated\": {\n + \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time when the caption track was last updated.\"\n },\n + \ \"name\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n },\n + \ \"type\": \"string\",\n \"description\": \"The name of + the caption track. The name is intended to be visible to the user as an option + during playback.\"\n },\n \"isEasyReader\": {\n \"type\": + \"boolean\",\n \"description\": \"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.\"\n },\n \"isCC\": + {\n \"description\": \"Indicates whether the track contains closed + captions for the deaf and hard of hearing. The default value is false.\",\n + \ \"type\": \"boolean\"\n },\n \"trackKind\": {\n \"description\": + \"The caption track's type.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": [\n + \ \"standard\",\n \"ASR\",\n \"forced\"\n + \ ],\n \"type\": \"string\"\n },\n \"status\": + {\n \"type\": \"string\",\n \"enum\": [\n \"serving\",\n + \ \"syncing\",\n \"failed\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"description\": \"The caption track's status.\"\n },\n \"isLarge\": + {\n \"description\": \"Indicates whether the caption track uses large + text for the vision-impaired. The default value is false.\",\n \"type\": + \"boolean\"\n }\n },\n \"type\": \"object\"\n },\n \"I18nRegionSnippet\": + {\n \"type\": \"object\",\n \"description\": \"Basic details about + an i18n region, such as region code and human-readable name.\",\n \"properties\": + {\n \"gl\": {\n \"description\": \"The region code as a 2-letter + ISO country code.\",\n \"type\": \"string\"\n },\n \"name\": + {\n \"description\": \"The human-readable name of the region.\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"I18nRegionSnippet\"\n + \ },\n \"ChannelStatus\": {\n \"type\": \"object\",\n \"id\": + \"ChannelStatus\",\n \"description\": \"JSON template for the status + part of a channel.\",\n \"properties\": {\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n },\n \"isLinked\": {\n + \ \"description\": \"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.\",\n \"type\": \"boolean\"\n },\n \"madeForKids\": + {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"Privacy status + of the channel.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"type\": \"string\"\n },\n + \ \"longUploadsStatus\": {\n \"enum\": [\n \"longUploadsUnspecified\",\n + \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n + \ ],\n \"description\": \"The long uploads status of this + channel. See https://support.google.com/youtube/answer/71673 for more information.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n + \ }\n }\n },\n \"ChannelSectionLocalization\": {\n \"description\": + \"ChannelSection localization setting\",\n \"type\": \"object\",\n \"properties\": + {\n \"title\": {\n \"description\": \"The localized strings + for channel section's title.\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"ChannelSectionLocalization\"\n },\n \"VideoLocalization\": + {\n \"description\": \"Localized versions of certain video properties + (e.g. title).\",\n \"properties\": {\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"Localized version of the video's + description.\"\n },\n \"title\": {\n \"description\": + \"Localized version of the video's title.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoLocalization\"\n + \ },\n \"LiveChatFanFundingEventDetails\": {\n \"properties\": {\n + \ \"userComment\": {\n \"type\": \"string\",\n \"description\": + \"The comment added by the user to this fan funding event.\"\n },\n + \ \"amountDisplayString\": {\n \"type\": \"string\",\n \"description\": + \"A rendered string that displays the fund amount and currency to the user.\"\n + \ },\n \"amountMicros\": {\n \"description\": \"The + amount of the fund.\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n },\n \"currency\": {\n \"type\": \"string\",\n + \ \"description\": \"The currency in which the fund was made.\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\"\n + \ },\n \"VideoAbuseReportReason\": {\n \"id\": \"VideoAbuseReportReason\",\n + \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of this abuse report reason.\"\n },\n + \ \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n + \ \"description\": \"The `snippet` object contains basic details about + the abuse report reason.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#videoAbuseReportReason\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n + \ }\n },\n \"description\": \"A `__videoAbuseReportReason__` + resource identifies a reason that a video could be reported as abusive. Video + abuse report reasons are used with `video.ReportAbuse`.\",\n \"type\": + \"object\"\n },\n \"LiveStreamConfigurationIssue\": {\n \"id\": + \"LiveStreamConfigurationIssue\",\n \"type\": \"object\",\n \"properties\": + {\n \"reason\": {\n \"type\": \"string\",\n \"description\": + \"The short-form reason for this issue.\"\n },\n \"severity\": + {\n \"description\": \"How severe this issue is to the stream.\",\n + \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"type\": {\n \"description\": \"The kind of error happening.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n \"gopSizeOver\",\n + \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n + \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n + \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n + \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n + \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n + \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n + \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n + \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n + \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n + \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n + \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n + \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n + \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n + \ ]\n },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The long-form description of the issue and how + to resolve it.\"\n }\n }\n },\n \"TestItem\": {\n \"id\": + \"TestItem\",\n \"type\": \"object\",\n \"properties\": {\n \"gaia\": + {\n \"type\": \"string\",\n \"format\": \"int64\"\n },\n + \ \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n + \ },\n \"id\": {\n \"type\": \"string\"\n },\n + \ \"featuredPart\": {\n \"type\": \"boolean\"\n }\n + \ }\n },\n \"ActivityContentDetailsPlaylistItem\": {\n \"description\": + \"Information about a new playlist item.\",\n \"properties\": {\n \"playlistItemId\": + {\n \"type\": \"string\",\n \"description\": \"ID of the + item within the playlist.\"\n },\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information about the resource that was added + to the playlist.\",\n \"$ref\": \"ResourceId\"\n },\n \"playlistId\": + {\n \"description\": \"The value that YouTube uses to uniquely identify + the playlist.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"ActivityContentDetailsPlaylistItem\"\n },\n + \ \"IngestionInfo\": {\n \"description\": \"Describes information necessary + for ingesting an RTMP, HTTP, or SRT stream.\",\n \"properties\": {\n + \ \"rtmpsBackupIngestionAddress\": {\n \"type\": \"string\",\n + \ \"description\": \"This ingestion url may be used instead of backupIngestionAddress + in order to stream via RTMPS. Not applicable to non-RTMP streams.\"\n },\n + \ \"ingestionAddress\": {\n \"description\": \"The primary + ingestion URL that you should use to stream video to YouTube. You must stream + video to this URL. Depending on which application or tool you use to encode + your video stream, you may need to enter the stream URL and stream name separately + or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* + \",\n \"type\": \"string\"\n },\n \"streamName\": {\n + \ \"type\": \"string\",\n \"description\": \"The stream name + that YouTube assigns to the video stream.\"\n },\n \"backupIngestionAddress\": + {\n \"description\": \"The backup ingestion URL that you should use + to stream video to YouTube. You have the option of simultaneously streaming + the content that you are sending to the ingestionAddress to this URL.\",\n + \ \"type\": \"string\"\n },\n \"rtmpsIngestionAddress\": + {\n \"description\": \"This ingestion url may be used instead of + ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP + streams.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"IngestionInfo\"\n },\n \"ChannelAuditDetails\": + {\n \"properties\": {\n \"copyrightStrikesGoodStanding\": {\n + \ \"description\": \"Whether or not the channel has any copyright + strikes.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": + {\n \"description\": \"Whether or not the channel respects the community + guidelines.\",\n \"type\": \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": + {\n \"description\": \"Whether or not the channel has any unresolved + claims.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"ChannelAuditDetails\",\n \"description\": + \"The auditDetails object encapsulates channel data that is relevant for YouTube + Partners during the audit process.\"\n },\n \"SuperChatEvent\": {\n + \ \"id\": \"SuperChatEvent\",\n \"properties\": {\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube assigns to uniquely identify the Super Chat event.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": + \"SuperChatEventSnippet\",\n \"description\": \"The `snippet` object + contains basic details about the Super Chat event.\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n \"default\": + \"youtube#superChatEvent\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"A `__superChatEvent__` resource represents a Super + Chat purchase on a YouTube channel.\",\n \"type\": \"object\"\n },\n + \ \"LiveChatMessage\": {\n \"type\": \"object\",\n \"description\": + \"A *liveChatMessage* resource represents a chat message in a YouTube Live + Chat.\",\n \"id\": \"LiveChatMessage\",\n \"properties\": {\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveChatMessage\\\".\",\n \"default\": + \"youtube#liveChatMessage\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely + identify the message.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the message.\",\n \"$ref\": + \"LiveChatMessageSnippet\"\n },\n \"authorDetails\": {\n \"$ref\": + \"LiveChatMessageAuthorDetails\",\n \"description\": \"The authorDetails + object contains basic details about the user that posted this message.\"\n + \ }\n }\n },\n \"InvideoTiming\": {\n \"type\": \"object\",\n + \ \"properties\": {\n \"offsetMs\": {\n \"type\": \"string\",\n + \ \"description\": \"Defines the time at which the promotion will + appear. Depending on the value of type the value of the offsetMs field will + represent a time offset from the start or from the end of the video, expressed + in milliseconds.\",\n \"format\": \"uint64\"\n },\n \"durationMs\": + {\n \"description\": \"Defines the duration in milliseconds for which + the promotion should be displayed. If missing, the client should use the default.\",\n + \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n + \ \"type\": {\n \"enum\": [\n \"offsetFromStart\",\n + \ \"offsetFromEnd\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"Describes a timing type. If the value is offsetFromStart, + then the offsetMs field represents an offset from the start of the video. + If the value is offsetFromEnd, then the offsetMs field represents an offset + from the end of the video.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ]\n }\n },\n \"id\": \"InvideoTiming\",\n + \ \"description\": \"Describes a temporal position of a visual widget + inside a video.\"\n },\n \"LiveChatBan\": {\n \"type\": \"object\",\n + \ \"description\": \"A `__liveChatBan__` resource represents a ban for + a YouTube live chat.\",\n \"id\": \"LiveChatBan\",\n \"properties\": + {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": + \"The `snippet` object contains basic details about the ban.\",\n \"$ref\": + \"LiveChatBanSnippet\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely + identify the ban.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#liveChatBan\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n + \ }\n }\n },\n \"ThumbnailSetResponse\": {\n \"properties\": + {\n \"kind\": {\n \"default\": \"youtube#thumbnailSetResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"ThumbnailDetails\"\n },\n \"description\": \"A list of + thumbnails.\",\n \"type\": \"array\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n }\n + \ },\n \"id\": \"ThumbnailSetResponse\",\n \"type\": \"object\"\n + \ },\n \"ChannelContentOwnerDetails\": {\n \"properties\": {\n \"contentOwner\": + {\n \"description\": \"The ID of the content owner linked to the + channel.\",\n \"type\": \"string\"\n },\n \"timeLinked\": + {\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time when the channel was linked + to the content owner.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"ChannelContentOwnerDetails\",\n \"description\": \"The + contentOwnerDetails object encapsulates channel data that is relevant for + YouTube Partners linked with the channel.\"\n },\n \"RelatedEntity\": + {\n \"properties\": {\n \"entity\": {\n \"$ref\": \"Entity\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"RelatedEntity\"\n + \ },\n \"ActivityContentDetailsComment\": {\n \"id\": \"ActivityContentDetailsComment\",\n + \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n + \ \"description\": \"The resourceId object contains information that + identifies the resource associated with the comment.\"\n }\n },\n + \ \"description\": \"Information about a resource that received a comment.\",\n + \ \"type\": \"object\"\n },\n \"ChannelSnippet\": {\n \"id\": + \"ChannelSnippet\",\n \"type\": \"object\",\n \"description\": \"Basic + details about a channel, including title, description and thumbnails.\",\n + \ \"properties\": {\n \"defaultLanguage\": {\n \"type\": + \"string\",\n \"description\": \"The language of the channel's default + title and description.\"\n },\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails in your application, make + sure that your code uses the image URLs exactly as they are returned in API + responses. For example, your application should not use the http domain instead + of the https domain in a URL returned in an API response. Beginning in July + 2018, channel thumbnail URLs will only be available in the https domain, which + is how the URLs appear in API responses. After that time, you might see broken + images in your application if it tries to load YouTube images from the http + domain. Thumbnail images might be empty for newly created channels and might + take up to one day to populate.\"\n },\n \"customUrl\": {\n + \ \"description\": \"The custom url of the channel.\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time that the channel was created.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"country\": + {\n \"type\": \"string\",\n \"description\": \"The country + of the channel.\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The description of the channel.\"\n + \ },\n \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n + \ \"description\": \"Localized title and description, read-only.\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The channel's title.\"\n }\n }\n },\n \"Activity\": {\n + \ \"description\": \"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.\",\n \"properties\": {\n \"kind\": + {\n \"type\": \"string\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n + \ \"default\": \"youtube#activity\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource\",\n \"type\": + \"string\"\n },\n \"contentDetails\": {\n \"description\": + \"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.\",\n \"$ref\": + \"ActivityContentDetails\"\n },\n \"id\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the activity.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the activity, including + the activity's type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"Activity\"\n + \ },\n \"I18nLanguageSnippet\": {\n \"properties\": {\n \"hl\": + {\n \"type\": \"string\",\n \"description\": \"A short BCP-47 + code that uniquely identifies a language.\"\n },\n \"name\": + {\n \"type\": \"string\",\n \"description\": \"The human-readable + name of the language in the language itself.\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"Basic details about an i18n language, + such as language code and human-readable name.\",\n \"id\": \"I18nLanguageSnippet\"\n + \ },\n \"LiveBroadcastSnippet\": {\n \"description\": \"Basic broadcast + information.\",\n \"id\": \"LiveBroadcastSnippet\",\n \"properties\": + {\n \"isDefaultBroadcast\": {\n \"description\": \"Indicates + whether this broadcast is the default broadcast. Internal only.\",\n \"type\": + \"boolean\"\n },\n \"actualStartTime\": {\n \"type\": + \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the broadcast actually started. This information + is only available once the broadcast's state is live.\"\n },\n \"scheduledStartTime\": + {\n \"description\": \"The date and time that the broadcast is scheduled + to start.\",\n \"type\": \"string\",\n \"format\": \"date-time\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n }\n + \ },\n \"actualEndTime\": {\n \"description\": \"The + date and time that the broadcast actually ended. This information is only + available once the broadcast's state is complete.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the channel that is publishing the broadcast.\",\n \"type\": \"string\"\n + \ },\n \"title\": {\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The broadcast's title. Note that the broadcast represents exactly one YouTube + video. You can set this field by modifying the broadcast resource or by setting + the title field of the corresponding video resource.\"\n },\n \"thumbnails\": + {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A + map of thumbnail images associated with the broadcast. For each nested object + in this object, the key is the name of the thumbnail image, and the value + is an object that contains other information about the thumbnail.\"\n },\n + \ \"description\": {\n \"description\": \"The broadcast's description. + As with the title, you can set this field by modifying the broadcast resource + or by setting the description field of the corresponding video resource.\",\n + \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The date and time that the broadcast was added to YouTube's live broadcast + schedule.\"\n },\n \"scheduledEndTime\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time that the broadcast + is scheduled to end.\",\n \"type\": \"string\"\n },\n \"liveChatId\": + {\n \"type\": \"string\",\n \"description\": \"The id of + the live chat for this broadcast.\"\n }\n },\n \"type\": + \"object\"\n },\n \"PlaylistItemListResponse\": {\n \"id\": \"PlaylistItemListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": + {\n \"default\": \"youtube#playlistItemListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". + Etag of this resource.\",\n \"type\": \"string\"\n },\n \"etag\": + {\n \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"description\": \"A list of playlist items that match + the request criteria.\",\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n + \ }\n }\n }\n },\n \"CommentThread\": {\n \"description\": + \"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.\",\n \"id\": \"CommentThread\",\n \"type\": + \"object\",\n \"properties\": {\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n + \ \"default\": \"youtube#commentThread\",\n \"type\": \"string\"\n + \ },\n \"replies\": {\n \"description\": \"The replies + object contains a limited number of replies (if any) to the top level comment + found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube uses to + uniquely identify the comment thread.\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"$ref\": \"CommentThreadSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the comment thread and also the top level comment.\"\n }\n }\n + \ },\n \"ThirdPartyLinkStatus\": {\n \"properties\": {\n \"linkStatus\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"unknown\",\n \"failed\",\n + \ \"pending\",\n \"linked\"\n ]\n }\n + \ },\n \"id\": \"ThirdPartyLinkStatus\",\n \"description\": + \"The third-party link status object contains information about the status + of the link.\",\n \"type\": \"object\"\n },\n \"ChannelConversionPing\": + {\n \"type\": \"object\",\n \"description\": \"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.\",\n \"id\": + \"ChannelConversionPing\",\n \"properties\": {\n \"context\": + {\n \"description\": \"Defines the context of the ping.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"subscribe\",\n + \ \"unsubscribe\",\n \"cview\"\n ]\n },\n + \ \"conversionUrl\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"MonitorStreamInfo\": {\n \"type\": \"object\",\n + \ \"description\": \"Settings and Info of the monitor stream\",\n \"id\": + \"MonitorStreamInfo\",\n \"properties\": {\n \"enableMonitorStream\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"type\": \"boolean\",\n \"description\": + \"This value determines whether the monitor stream is enabled for the broadcast. + If the monitor stream is enabled, then YouTube will broadcast the event content + on a special stream intended only for the broadcaster's consumption. The broadcaster + can use the stream to review the event content and also to identify the optimal + times to insert cuepoints. You need to set this value to true if you intend + to have a broadcast delay for your event. *Note:* This property cannot be + updated once the broadcast is in the testing or live state.\"\n },\n + \ \"embedHtml\": {\n \"description\": \"HTML code that embeds + a player that plays the monitor stream.\",\n \"type\": \"string\"\n + \ },\n \"broadcastStreamDelayMs\": {\n \"description\": + \"If you have set the enableMonitorStream property to true, then this property + determines the length of the live broadcast delay.\",\n \"format\": + \"uint32\",\n \"type\": \"integer\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n }\n }\n }\n },\n \"SuperStickerMetadata\": + {\n \"properties\": {\n \"altText\": {\n \"type\": \"string\",\n + \ \"description\": \"Internationalized alt text that describes the + sticker image and any animation associated with it.\"\n },\n \"altTextLanguage\": + {\n \"description\": \"Specifies the localization language in which + the alt text is returned.\",\n \"type\": \"string\"\n },\n + \ \"stickerId\": {\n \"description\": \"Unique identifier of + the Super Sticker. This is a shorter form of the alt_text that includes pack + name and a recognizable characteristic of the sticker.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"SuperStickerMetadata\",\n + \ \"type\": \"object\"\n },\n \"ChannelSection\": {\n \"type\": + \"object\",\n \"properties\": {\n \"targeting\": {\n \"description\": + \"The targeting object contains basic targeting settings about the channel + section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n },\n + \ \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n + \ \"description\": \"The contentDetails object contains details about + the channel section content, such as a list of playlists or channels featured + in the section.\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#channelSection\\\".\",\n \"default\": + \"youtube#channelSection\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube uses to + uniquely identify the channel section.\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the channel section, such as its type, style and title.\"\n },\n \"localizations\": + {\n \"additionalProperties\": {\n \"$ref\": \"ChannelSectionLocalization\"\n + \ },\n \"type\": \"object\",\n \"description\": + \"Localizations for different languages\"\n }\n },\n \"id\": + \"ChannelSection\"\n },\n \"SearchResultSnippet\": {\n \"properties\": + {\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The title of the search result.\"\n },\n \"channelTitle\": + {\n \"type\": \"string\",\n \"description\": \"The title + of the channel that published the resource that the search result identifies.\"\n + \ },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"A description of the search result.\"\n },\n + \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": + \"A map of thumbnail images associated with the search result. 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.\"\n },\n + \ \"channelId\": {\n \"description\": \"The value that YouTube + uses to uniquely identify the channel that published the resource that the + search result identifies.\",\n \"type\": \"string\"\n },\n + \ \"publishedAt\": {\n \"description\": \"The creation date + and time of the resource that the search result identifies.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"liveBroadcastContent\": + {\n \"description\": \"It indicates if the resource (video or channel) + has upcoming/active live broadcast content. Or it's \\\"none\\\" if there + is not any upcoming/active live broadcasts.\",\n \"enum\": [\n \"none\",\n + \ \"upcoming\",\n \"live\",\n \"completed\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The + live broadcast is active.\",\n \"The live broadcast has been completed.\"\n + \ ]\n }\n },\n \"id\": \"SearchResultSnippet\",\n + \ \"type\": \"object\",\n \"description\": \"Basic details about + a search result, including title, description and thumbnails of the item referenced + by the search result.\"\n },\n \"PlaylistSnippet\": {\n \"id\": + \"PlaylistSnippet\",\n \"properties\": {\n \"description\": {\n + \ \"description\": \"The playlist's description.\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"format\": + \"date-time\",\n \"description\": \"The date and time that the playlist + was created.\",\n \"type\": \"string\"\n },\n \"channelTitle\": + {\n \"description\": \"The channel title of the channel that the + video belongs to.\",\n \"type\": \"string\"\n },\n \"tags\": + {\n \"type\": \"array\",\n \"description\": \"Keyword tags + associated with the playlist.\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"defaultLanguage\": {\n \"description\": + \"The language of the playlist's default title and description.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"annotations\": {\n + \ \"required\": [\n \"youtube.playlists.insert\",\n + \ \"youtube.playlists.update\"\n ]\n },\n + \ \"type\": \"string\",\n \"description\": \"The playlist's + title.\"\n },\n \"thumbnailVideoId\": {\n \"type\": + \"string\",\n \"description\": \"Note: if the playlist has a custom + thumbnail, this field will not be populated. The video id selected by the + user that will be used as the thumbnail of this playlist. This field defaults + to the first publicly viewable video in the playlist, if: 1. The user has + never selected a video to be the thumbnail of the playlist. 2. The user selects + a video to be the thumbnail, and then removes that video from the playlist. + 3. The user selects a non-owned video to be the thumbnail, but that video + becomes private, or gets deleted.\"\n },\n \"channelId\": {\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the channel that published the playlist.\",\n \"type\": \"string\"\n + \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + playlist. 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.\"\n },\n \"localized\": {\n \"description\": + \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n + \ }\n },\n \"description\": \"Basic details about a playlist, + including title, description and thumbnails.\",\n \"type\": \"object\"\n + \ },\n \"LiveChatSuperStickerDetails\": {\n \"properties\": {\n + \ \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the purchase was made.\"\n },\n \"amountDisplayString\": + {\n \"description\": \"A rendered string that displays the fund amount + and currency to the user.\",\n \"type\": \"string\"\n },\n + \ \"tier\": {\n \"type\": \"integer\",\n \"description\": + \"The tier in which the amount belongs. Lower amounts belong to lower tiers. + The lowest tier is 1.\",\n \"format\": \"uint32\"\n },\n \"superStickerMetadata\": + {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": + \"Information about the Super Sticker.\"\n },\n \"amountMicros\": + {\n \"description\": \"The amount purchased by the user, in micros + (1,750,000 micros = 1.75).\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveChatSuperStickerDetails\"\n },\n \"TestItemTestItemSnippet\": + {\n \"id\": \"TestItemTestItemSnippet\",\n \"type\": \"object\",\n + \ \"properties\": {}\n },\n \"VideoStatus\": {\n \"description\": + \"Basic details about a video category, such as its localized title. Next + Id: 18\",\n \"properties\": {\n \"privacyStatus\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The video's privacy + status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ]\n },\n \"madeForKids\": + {\n \"type\": \"boolean\"\n },\n \"failureReason\": + {\n \"enum\": [\n \"conversion\",\n \"invalidFile\",\n + \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n + \ \"uploadAborted\"\n ],\n \"description\": \"This + value explains why a video failed to upload. This property is only present + if the uploadStatus property indicates that the upload failed.\",\n \"enumDescriptions\": + [\n \"Unable to convert video content.\",\n \"Invalid + file format.\",\n \"Empty file.\",\n \"File was too + small.\",\n \"Unsupported codec.\",\n \"Upload wasn't + finished.\"\n ],\n \"type\": \"string\"\n },\n \"rejectionReason\": + {\n \"type\": \"string\",\n \"description\": \"This value + explains why YouTube rejected an uploaded video. This property is only present + if the uploadStatus property indicates that the upload was rejected.\",\n + \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n + \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n + \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n + \ \"trademark\",\n \"legal\"\n ],\n \"enumDescriptions\": + [\n \"Copyright infringement.\",\n \"Inappropriate video + content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms + of use violation.\",\n \"Uploader account was suspended.\",\n \"Video + duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader + closed his/her account.\",\n \"Trademark infringement.\",\n \"An + unspecified legal reason.\"\n ]\n },\n \"uploadStatus\": + {\n \"description\": \"The status of the uploaded video.\",\n \"enum\": + [\n \"uploaded\",\n \"processed\",\n \"failed\",\n + \ \"rejected\",\n \"deleted\"\n ],\n \"enumDescriptions\": + [\n \"Video has been uploaded but not processed yet.\",\n \"Video + has been successfully processed.\",\n \"Processing has failed. + See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n + \ \"Video has been deleted.\"\n ],\n \"type\": + \"string\"\n },\n \"publishAt\": {\n \"format\": \"date-time\",\n + \ \"description\": \"The date and time when the video is scheduled + to publish. It can be set only if the privacy status of the video is private..\",\n + \ \"type\": \"string\"\n },\n \"license\": {\n \"description\": + \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"youtube\",\n + \ \"creativeCommon\"\n ]\n },\n \"embeddable\": + {\n \"type\": \"boolean\",\n \"description\": \"This value + indicates if the video can be embedded on another website. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n },\n \"publicStatsViewable\": + {\n \"type\": \"boolean\",\n \"description\": \"This value + indicates if the extended video statistics on the watch page can be viewed + by everyone. Note that the view count, likes, etc will still be visible if + this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoStatus\"\n + \ },\n \"CommentSnippetAuthorChannelId\": {\n \"description\": \"The + id of the author's YouTube channel, if any.\",\n \"type\": \"object\",\n + \ \"id\": \"CommentSnippetAuthorChannelId\",\n \"properties\": {\n + \ \"value\": {\n \"type\": \"string\"\n }\n }\n + \ },\n \"ChannelSectionTargeting\": {\n \"id\": \"ChannelSectionTargeting\",\n + \ \"properties\": {\n \"countries\": {\n \"items\": {\n + \ \"type\": \"string\"\n },\n \"description\": + \"The country the channel section is targeting.\",\n \"type\": \"array\"\n + \ },\n \"languages\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\",\n \"description\": + \"The language the channel section is targeting.\"\n },\n \"regions\": + {\n \"description\": \"The region the channel section is targeting.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n }\n }\n },\n \"description\": \"ChannelSection + targeting setting.\",\n \"type\": \"object\"\n },\n \"VideoPlayer\": + {\n \"description\": \"Player to be used for a video playback.\",\n \"type\": + \"object\",\n \"properties\": {\n \"embedWidth\": {\n \"type\": + \"string\",\n \"description\": \"The embed width\",\n \"format\": + \"int64\"\n },\n \"embedHeight\": {\n \"format\": \"int64\",\n + \ \"type\": \"string\"\n },\n \"embedHtml\": {\n \"type\": + \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that + embeds a player that will play the video.\"\n }\n },\n \"id\": + \"VideoPlayer\"\n },\n \"ActivityContentDetailsUpload\": {\n \"id\": + \"ActivityContentDetailsUpload\",\n \"description\": \"Information about + the uploaded video.\",\n \"properties\": {\n \"videoId\": {\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the uploaded video.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"LevelDetails\": {\n \"type\": + \"object\",\n \"properties\": {\n \"displayName\": {\n \"type\": + \"string\",\n \"description\": \"The name that should be used when + referring to this level.\"\n }\n },\n \"id\": \"LevelDetails\"\n + \ },\n \"MembershipsLevelSnippet\": {\n \"properties\": {\n \"levelDetails\": + {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details + about the pricing level.\"\n },\n \"creatorChannelId\": {\n + \ \"description\": \"The id of the channel that's offering channel + memberships.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"MembershipsLevelSnippet\"\n },\n \"VideoFileDetails\": + {\n \"properties\": {\n \"fileName\": {\n \"description\": + \"The uploaded file's name. This field is present whether a video file or + another type of file was uploaded.\",\n \"type\": \"string\"\n },\n + \ \"container\": {\n \"description\": \"The uploaded video + file's container format.\",\n \"type\": \"string\"\n },\n + \ \"bitrateBps\": {\n \"description\": \"The uploaded video + file's combined (video and audio) bitrate in bits per second.\",\n \"format\": + \"uint64\",\n \"type\": \"string\"\n },\n \"fileSize\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The uploaded file's size in bytes. This field is present whether a video + file or another type of file was uploaded.\"\n },\n \"audioStreams\": + {\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n + \ },\n \"type\": \"array\",\n \"description\": \"A + list of audio streams contained in the uploaded video file. Each item in the + list contains detailed metadata about an audio stream.\"\n },\n \"creationTime\": + {\n \"description\": \"The date and time when the uploaded video + file was created. The value is specified in ISO 8601 format. Currently, the + following ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive + time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM + \",\n \"type\": \"string\"\n },\n \"videoStreams\": + {\n \"type\": \"array\",\n \"description\": \"A list of + video streams contained in the uploaded video file. Each item in the list + contains detailed metadata about a video stream.\",\n \"items\": + {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n }\n },\n + \ \"durationMs\": {\n \"description\": \"The length of the + uploaded video in milliseconds.\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n },\n \"fileType\": {\n \"type\": \"string\",\n + \ \"description\": \"The uploaded file's type as detected by YouTube's + video processing engine. Currently, YouTube only processes video files, but + this field is present whether a video file or another type of file was uploaded.\",\n + \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n + \ \"archive\",\n \"document\",\n \"project\",\n + \ \"other\"\n ],\n \"enumDescriptions\": [\n \"Known + video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an + MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive + file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., + MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file type.\"\n ]\n + \ }\n },\n \"id\": \"VideoFileDetails\",\n \"type\": + \"object\",\n \"description\": \"Describes original video file properties, + including technical details about audio and video streams, but also metadata + information like content length, digitization time, or geotagging information.\"\n + \ },\n \"ChannelStatistics\": {\n \"description\": \"Statistics + about a channel: number of subscribers, number of videos in the channel, etc.\",\n + \ \"id\": \"ChannelStatistics\",\n \"properties\": {\n \"commentCount\": + {\n \"description\": \"The number of comments for the channel.\",\n + \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n + \ \"viewCount\": {\n \"type\": \"string\",\n \"description\": + \"The number of times the channel has been viewed.\",\n \"format\": + \"uint64\"\n },\n \"videoCount\": {\n \"type\": \"string\",\n + \ \"description\": \"The number of videos uploaded to the channel.\",\n + \ \"format\": \"uint64\"\n },\n \"subscriberCount\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The number of subscribers that the channel has.\"\n },\n \"hiddenSubscriberCount\": + {\n \"description\": \"Whether or not the number of subscribers is + shown for this user.\",\n \"type\": \"boolean\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"VideoRecordingDetails\": {\n \"properties\": + {\n \"locationDescription\": {\n \"type\": \"string\",\n \"description\": + \"The text description of the location where the video was recorded.\"\n },\n + \ \"recordingDate\": {\n \"type\": \"string\",\n \"format\": + \"date-time\",\n \"description\": \"The date and time when the video + was recorded.\"\n },\n \"location\": {\n \"$ref\": + \"GeoPoint\",\n \"description\": \"The geolocation information associated + with the video.\"\n }\n },\n \"id\": \"VideoRecordingDetails\",\n + \ \"type\": \"object\",\n \"description\": \"Recording information + associated with the video.\"\n },\n \"VideoSuggestionsTagSuggestion\": + {\n \"properties\": {\n \"categoryRestricts\": {\n \"type\": + \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"description\": \"A set of video categories for which the tag is + relevant. You can use this information to display appropriate tag suggestions + based on the video category that the video uploader associates with the video. + By default, tag suggestions are relevant for all categories if there are no + restricts defined for the keyword.\"\n },\n \"tag\": {\n \"type\": + \"string\",\n \"description\": \"The keyword tag suggested for the + video.\"\n }\n },\n \"id\": \"VideoSuggestionsTagSuggestion\",\n + \ \"type\": \"object\",\n \"description\": \"A single tag suggestion + with it's relevance information.\"\n },\n \"PlaylistStatus\": {\n \"type\": + \"object\",\n \"properties\": {\n \"privacyStatus\": {\n \"enum\": + [\n \"public\",\n \"unlisted\",\n \"private\"\n + \ ],\n \"description\": \"The playlist's privacy status.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ]\n }\n },\n \"id\": + \"PlaylistStatus\"\n },\n \"Subscription\": {\n \"id\": \"Subscription\",\n + \ \"description\": \"A *subscription* resource contains information about + a YouTube user subscription. A subscription notifies a user when new videos + are added to a channel or when another user takes one of several actions on + YouTube, such as uploading a video, rating a video, or commenting on a video.\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n + \ \"default\": \"youtube#subscription\",\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#subscription\\\".\"\n },\n \"contentDetails\": + {\n \"description\": \"The contentDetails object contains basic statistics + about the subscription.\",\n \"$ref\": \"SubscriptionContentDetails\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the subscription.\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the subscription, including its title + and the channel that the user subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"subscriberSnippet\": {\n + \ \"$ref\": \"SubscriptionSubscriberSnippet\",\n \"description\": + \"The subscriberSnippet object contains basic details about the subscriber.\"\n + \ }\n }\n },\n \"ActivityContentDetailsRecommendation\": + {\n \"id\": \"ActivityContentDetailsRecommendation\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the recommended + resource.\"\n },\n \"seedResourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The seedResourceId object contains + information about the resource that caused the recommendation.\"\n },\n + \ \"reason\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n + \ \"videoWatched\"\n ],\n \"description\": \"The + reason that the resource is recommended to the user.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Information that + identifies the recommended resource.\",\n \"type\": \"object\"\n },\n + \ \"ImageSettings\": {\n \"id\": \"ImageSettings\",\n \"type\": + \"object\",\n \"properties\": {\n \"bannerMobileLowImageUrl\": + {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n + \ \"type\": \"string\"\n },\n \"backgroundImageUrl\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The URL for the background image shown on the video watch page. The image + should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n + \ \"largeBrandedBannerImageImapScript\": {\n \"$ref\": \"LocalizedProperty\",\n + \ \"description\": \"The image map script for the large banner image.\"\n + \ },\n \"trackingImageUrl\": {\n \"description\": \"The + URL for a 1px by 1px tracking pixel that can be used to collect statistics + for views of the channel or video pages.\",\n \"type\": \"string\"\n + \ },\n \"bannerTvLowImageUrl\": {\n \"description\": + \"Banner image. TV size low resolution (854x480).\",\n \"type\": + \"string\"\n },\n \"smallBrandedBannerImageUrl\": {\n \"$ref\": + \"LocalizedProperty\",\n \"description\": \"The URL for the 640px + by 70px banner image that appears below the video player in the default view + of the video watch page. The URL for the image that appears above the top-left + corner of the video player. This is a 25-pixel-high image with a flexible + width that cannot exceed 170 pixels.\"\n },\n \"smallBrandedBannerImageImapScript\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The image map script for the small banner image.\"\n },\n \"bannerTvMediumImageUrl\": + {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n + \ \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size medium/high resolution (960x263).\"\n },\n \"bannerMobileExtraHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size high resolution (1440x395).\"\n },\n \"bannerImageUrl\": + {\n \"description\": \"Banner image. Desktop size (1060x175).\",\n + \ \"type\": \"string\"\n },\n \"bannerTabletHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size high resolution (2276x377).\"\n },\n \"bannerTvImageUrl\": + {\n \"description\": \"Banner image. TV size extra high resolution + (2120x1192).\",\n \"type\": \"string\"\n },\n \"bannerTabletImageUrl\": + {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n + \ \"type\": \"string\"\n },\n \"watchIconImageUrl\": + {\n \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": + {\n \"description\": \"Banner image. Tablet size extra high resolution + (2560x424).\",\n \"type\": \"string\"\n },\n \"bannerTabletLowImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size low resolution (1138x188).\"\n },\n \"largeBrandedBannerImageUrl\": + {\n \"description\": \"The URL for the 854px by 70px image that appears + below the video player in the expanded video view of the video watch page.\",\n + \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerExternalUrl\": + {\n \"description\": \"This is generated when a ChannelBanner.Insert + request has succeeded for the given channel.\",\n \"type\": \"string\"\n + \ },\n \"bannerTvHighImageUrl\": {\n \"description\": + \"Banner image. TV size high resolution (1920x1080).\",\n \"type\": + \"string\"\n },\n \"bannerMobileImageUrl\": {\n \"description\": + \"Banner image. Mobile size (640x175).\",\n \"type\": \"string\"\n + \ },\n \"bannerMobileHdImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"Banner image. Mobile size high resolution (1280x360).\"\n + \ }\n },\n \"description\": \"Branding properties for images + associated with the channel.\"\n },\n \"ChannelListResponse\": {\n \"properties\": + {\n \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\"\n },\n \"etag\": {\n + \ \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"nextPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the next page + in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n \"default\": + \"youtube#channelListResponse\",\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"Channel\"\n + \ },\n \"type\": \"array\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"ChannelListResponse\"\n },\n \"ThirdPartyLinkSnippet\": {\n \"properties\": + {\n \"channelToStoreLink\": {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n + \ \"description\": \"Information specific to a link between a channel + and a store on a merchandising platform.\"\n },\n \"type\": + {\n \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n + \ ],\n \"description\": \"Type of the link named after the + entities that are being linked.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel with + a store on a merchandising platform in order to enable retail commerce capabilities + for that channel on YouTube.\"\n ],\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Basic information about a third + party account link, including its type and type-specific information.\",\n + \ \"type\": \"object\",\n \"id\": \"ThirdPartyLinkSnippet\"\n },\n + \ \"CommentThreadReplies\": {\n \"properties\": {\n \"comments\": + {\n \"type\": \"array\",\n \"description\": \"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.\",\n \"items\": {\n \"$ref\": \"Comment\"\n + \ }\n }\n },\n \"description\": \"Comments written + in (direct or indirect) reply to the top level comment.\",\n \"id\": + \"CommentThreadReplies\",\n \"type\": \"object\"\n },\n \"PlaylistPlayer\": + {\n \"properties\": {\n \"embedHtml\": {\n \"type\": + \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that + embeds a player that will play the playlist.\"\n }\n },\n \"id\": + \"PlaylistPlayer\",\n \"type\": \"object\"\n },\n \"CaptionListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#captionListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\"\n + \ },\n \"items\": {\n \"description\": \"A list of captions + that match the request criteria.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Caption\"\n }\n }\n },\n \"id\": + \"CaptionListResponse\"\n },\n \"ChannelContentDetails\": {\n \"properties\": + {\n \"relatedPlaylists\": {\n \"properties\": {\n \"likes\": + {\n \"description\": \"The ID of the playlist that contains the + channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\",\n \"type\": \"string\"\n + \ },\n \"favorites\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the playlist that contains the + channel\\\"s favorite videos. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\"\n },\n \"uploads\": + {\n \"type\": \"string\",\n \"description\": \"The + ID of the playlist that contains the channel\\\"s uploaded videos. Use the + videos.insert method to upload new videos and the videos.delete method to + delete previously uploaded videos.\"\n },\n \"watchHistory\": + {\n \"description\": \"The ID of the playlist that contains the + channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\",\n \"type\": \"string\"\n + \ },\n \"watchLater\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the playlist that contains the + channel\\\"s watch later playlist. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\"\n }\n },\n \"type\": + \"object\"\n }\n },\n \"id\": \"ChannelContentDetails\",\n + \ \"description\": \"Details about the content of a channel.\",\n \"type\": + \"object\"\n },\n \"LiveStreamHealthStatus\": {\n \"type\": \"object\",\n + \ \"id\": \"LiveStreamHealthStatus\",\n \"properties\": {\n \"lastUpdateTimeSeconds\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"The last time this status was updated (in seconds)\"\n },\n \"configurationIssues\": + {\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n + \ },\n \"description\": \"The configurations issues on this + stream\",\n \"type\": \"array\"\n },\n \"status\": + {\n \"type\": \"string\",\n \"description\": \"The status + code of this stream\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"good\",\n \"ok\",\n + \ \"bad\",\n \"noData\",\n \"revoked\"\n ]\n + \ }\n }\n },\n \"LanguageTag\": {\n \"id\": \"LanguageTag\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"value\": {\n + \ \"type\": \"string\"\n }\n }\n },\n \"LiveChatMessageAuthorDetails\": + {\n \"type\": \"object\",\n \"properties\": {\n \"channelId\": + {\n \"description\": \"The YouTube channel ID.\",\n \"type\": + \"string\"\n },\n \"isVerified\": {\n \"description\": + \"Whether the author's identity has been verified by YouTube.\",\n \"type\": + \"boolean\"\n },\n \"channelUrl\": {\n \"description\": + \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"isChatModerator\": + {\n \"description\": \"Whether the author is a moderator of the live + chat.\",\n \"type\": \"boolean\"\n },\n \"profileImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The channels's + avatar URL.\"\n },\n \"isChatOwner\": {\n \"description\": + \"Whether the author is the owner of the live chat.\",\n \"type\": + \"boolean\"\n },\n \"isChatSponsor\": {\n \"description\": + \"Whether the author is a sponsor of the live chat.\",\n \"type\": + \"boolean\"\n },\n \"displayName\": {\n \"type\": \"string\",\n + \ \"description\": \"The channel's display name.\"\n }\n },\n + \ \"id\": \"LiveChatMessageAuthorDetails\"\n },\n \"Cuepoint\": + {\n \"id\": \"Cuepoint\",\n \"properties\": {\n \"id\": {\n + \ \"description\": \"The identifier for cuepoint resource.\",\n \"type\": + \"string\"\n },\n \"walltimeMs\": {\n \"format\": \"uint64\",\n + \ \"description\": \"The wall clock time at which the cuepoint should + be inserted. Only one of insertion_offset_time_ms and walltime_ms may be set + at a time.\",\n \"type\": \"string\"\n },\n \"insertionOffsetTimeMs\": + {\n \"description\": \"The time when the cuepoint should be inserted + by offset to the broadcast actual start time.\",\n \"format\": \"int64\",\n + \ \"type\": \"string\"\n },\n \"durationSecs\": {\n + \ \"format\": \"uint32\",\n \"description\": \"The duration + of this cuepoint.\",\n \"type\": \"integer\"\n },\n \"cueType\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"cueTypeUnspecified\",\n + \ \"cueTypeAd\"\n ]\n },\n \"etag\": {\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Note that there may be a 5-second end-point resolution issue. For instance, + if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 + or 22:03:30, depending. This is an artifact of HLS.\",\n \"type\": \"object\"\n + \ },\n \"LiveStreamContentDetails\": {\n \"description\": \"Detailed + settings of a stream.\",\n \"properties\": {\n \"isReusable\": + {\n \"description\": \"Indicates whether the stream is reusable, + which means that it can be bound to multiple broadcasts. It is common for + broadcasters to reuse the same stream for many different broadcasts if those + broadcasts occur at different times. If you set this value to false, then + the stream will not be reusable, which means that it can only be bound to + one broadcast. Non-reusable streams differ from reusable streams in the following + ways: - A non-reusable stream can only be bound to one broadcast. - A non-reusable + stream might be deleted by an automated process after the broadcast ends. + - The liveStreams.list method does not list non-reusable streams if you call + the method and set the mine parameter to true. The only way to use that method + to retrieve the resource for a non-reusable stream is to use the id parameter + to identify the stream. \",\n \"type\": \"boolean\"\n },\n + \ \"closedCaptionsIngestionUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The ingestion URL where the closed captions of + this stream are sent.\"\n }\n },\n \"id\": \"LiveStreamContentDetails\",\n + \ \"type\": \"object\"\n },\n \"VideoFileDetailsAudioStream\": {\n + \ \"description\": \"Information about an audio stream.\",\n \"id\": + \"VideoFileDetailsAudioStream\",\n \"type\": \"object\",\n \"properties\": + {\n \"channelCount\": {\n \"format\": \"uint32\",\n \"type\": + \"integer\",\n \"description\": \"The number of audio channels that + the stream contains.\"\n },\n \"bitrateBps\": {\n \"format\": + \"uint64\",\n \"description\": \"The audio stream's bitrate, in bits + per second.\",\n \"type\": \"string\"\n },\n \"codec\": + {\n \"description\": \"The audio codec that the stream uses.\",\n + \ \"type\": \"string\"\n },\n \"vendor\": {\n \"description\": + \"A value that uniquely identifies a video vendor. Typically, the value is + a four-letter vendor code.\",\n \"type\": \"string\"\n }\n + \ }\n },\n \"SearchListResponse\": {\n \"properties\": {\n + \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"kind\": {\n \"default\": + \"youtube#searchListResponse\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"SearchResult\"\n },\n \"type\": \"array\",\n \"description\": + \"Pagination information for token pagination.\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"regionCode\": {\n \"type\": \"string\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"visitorId\": {\n \"description\": \"The visitorId identifies + the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": + \"SearchListResponse\",\n \"type\": \"object\"\n },\n \"MembershipsLevelListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"items\": + {\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n },\n + \ \"description\": \"A list of pricing levels offered by a creator + to the fans.\",\n \"type\": \"array\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"default\": \"youtube#membershipsLevelListResponse\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ }\n },\n \"id\": \"MembershipsLevelListResponse\"\n },\n + \ \"LocalizedString\": {\n \"properties\": {\n \"value\": {\n + \ \"type\": \"string\"\n },\n \"language\": {\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LocalizedString\"\n },\n \"LiveChatUserBannedMessageDetails\": {\n + \ \"properties\": {\n \"bannedUserDetails\": {\n \"description\": + \"The details of the user that was banned.\",\n \"$ref\": \"ChannelProfileDetails\"\n + \ },\n \"banType\": {\n \"type\": \"string\",\n \"description\": + \"The type of ban.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"permanent\",\n + \ \"temporary\"\n ]\n },\n \"banDurationSeconds\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The duration of the ban. This property is only present if the banType is + temporary.\"\n }\n },\n \"id\": \"LiveChatUserBannedMessageDetails\",\n + \ \"type\": \"object\"\n },\n \"ThirdPartyLink\": {\n \"type\": + \"object\",\n \"id\": \"ThirdPartyLink\",\n \"description\": \"A + *third party account link* resource represents a link between a YouTube account + or a channel and an account on a third-party service.\",\n \"properties\": + {\n \"snippet\": {\n \"description\": \"The snippet object + contains basic details about the third- party account link.\",\n \"$ref\": + \"ThirdPartyLinkSnippet\"\n },\n \"status\": {\n \"$ref\": + \"ThirdPartyLinkStatus\",\n \"description\": \"The status object + contains information about the status of the link.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource\",\n \"type\": + \"string\"\n },\n \"linkingToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The linking_token identifies a YouTube account + and channel with which the third party account is linked.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#thirdPartyLink\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n + \ }\n }\n },\n \"VideoAbuseReportReasonSnippet\": {\n \"properties\": + {\n \"secondaryReasons\": {\n \"description\": \"The secondary + reasons associated with this reason, if any are available. (There might be + 0 or more.)\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n + \ },\n \"type\": \"array\"\n },\n \"label\": + {\n \"type\": \"string\",\n \"description\": \"The localized + label belonging to this abuse report reason.\"\n }\n },\n \"description\": + \"Basic details about a video category, such as its localized title.\",\n + \ \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonSnippet\"\n + \ },\n \"ChannelBrandingSettings\": {\n \"description\": \"Branding + properties of a YouTube channel.\",\n \"type\": \"object\",\n \"properties\": + {\n \"image\": {\n \"$ref\": \"ImageSettings\",\n \"description\": + \"Branding properties for branding images.\"\n },\n \"watch\": + {\n \"$ref\": \"WatchSettings\",\n \"description\": \"Branding + properties for the watch page.\"\n },\n \"channel\": {\n \"$ref\": + \"ChannelSettings\",\n \"description\": \"Branding properties for + the channel view.\"\n },\n \"hints\": {\n \"items\": + {\n \"$ref\": \"PropertyValue\"\n },\n \"description\": + \"Additional experimental branding properties.\",\n \"type\": \"array\"\n + \ }\n },\n \"id\": \"ChannelBrandingSettings\"\n },\n \"VideoCategorySnippet\": + {\n \"properties\": {\n \"assignable\": {\n \"type\": + \"boolean\"\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"description\": \"The video category's title.\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n + \ \"description\": \"The YouTube channel that created the video category.\"\n + \ }\n },\n \"description\": \"Basic details about a video + category, such as its localized title.\",\n \"type\": \"object\",\n \"id\": + \"VideoCategorySnippet\"\n }\n },\n \"discoveryVersion\": \"v1\",\n \"documentationLink\": + \"https://developers.google.com/youtube/\",\n \"parameters\": {\n \"key\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"fields\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Selector specifying which fields to include + in a partial response.\"\n },\n \"uploadType\": {\n \"location\": + \"query\",\n \"description\": \"Legacy upload protocol for media (e.g. + \\\"media\\\", \\\"multipart\\\").\",\n \"type\": \"string\"\n },\n + \ \"quotaUser\": {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"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.\"\n },\n \"access_token\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": \"OAuth + access token.\"\n },\n \"alt\": {\n \"description\": \"Data format + for response.\",\n \"enum\": [\n \"json\",\n \"media\",\n + \ \"proto\"\n ],\n \"type\": \"string\",\n \"location\": + \"query\",\n \"default\": \"json\",\n \"enumDescriptions\": [\n + \ \"Responses with Content-Type of application/json\",\n \"Media + download with context-dependent Content-Type\",\n \"Responses with + Content-Type of application/x-protobuf\"\n ]\n },\n \"upload_protocol\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n },\n - \ \"callback\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"JSONP\"\n },\n \"quotaUser\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"access_token\": {\n \"description\": \"OAuth access token.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"fields\": - {\n \"type\": \"string\",\n \"description\": \"Selector specifying - which fields to include in a partial response.\",\n \"location\": \"query\"\n - \ },\n \"uploadType\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Legacy upload protocol for media (e.g. - \\\"media\\\", \\\"multipart\\\").\"\n },\n \"alt\": {\n \"default\": - \"json\",\n \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"enumDescriptions\": [\n \"Responses with Content-Type - of application/json\",\n \"Media download with context-dependent Content-Type\",\n - \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"Data format for response.\"\n }\n }\n}\n" + \ \"callback\": {\n \"location\": \"query\",\n \"description\": + \"JSONP\",\n \"type\": \"string\"\n },\n \"prettyPrint\": {\n \"type\": + \"boolean\",\n \"description\": \"Returns response with indentations + and line breaks.\",\n \"default\": \"true\",\n \"location\": \"query\"\n + \ },\n \"$.xgafv\": {\n \"enum\": [\n \"1\",\n \"2\"\n + \ ],\n \"type\": \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"description\": + \"V1 error format.\"\n },\n \"oauth_token\": {\n \"type\": \"string\",\n + \ \"description\": \"OAuth 2.0 token for the current user.\",\n \"location\": + \"query\"\n }\n },\n \"rootUrl\": \"https://youtube.googleapis.com/\"\n}\n" headers: Alt-Svc: - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 @@ -6193,7 +6199,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:47 GMT + - Thu, 09 Mar 2023 00:27:10 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: @@ -6258,7 +6264,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 01 Feb 2023 10:42:48 GMT + - Thu, 09 Mar 2023 00:27:10 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: diff --git a/tests/cassettes/test_youtube/test_refetch_youtube_channels[last_fetched_at1].yaml b/tests/cassettes/test_youtube/test_refetch_youtube_channels[last_fetched_at1].yaml index 55e13b03..190faa82 100644 --- a/tests/cassettes/test_youtube/test_refetch_youtube_channels[last_fetched_at1].yaml +++ b/tests/cassettes/test_youtube/test_refetch_youtube_channels[last_fetched_at1].yaml @@ -10,58 +10,34 @@ interactions: uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest response: body: - string: "{\n \"basePath\": \"\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"ownerName\": \"Google\",\n \"resources\": {\n \"videos\": {\n - \ \"methods\": {\n \"list\": {\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/videos\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"VideoListResponse\"\n },\n - \ \"parameters\": {\n \"videoCategoryId\": {\n \"default\": - \"0\",\n \"description\": \"Use chart that is specific to the - specified video category\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxWidth\": {\n \"location\": - \"query\",\n \"format\": \"int32\",\n \"minimum\": - \"72\",\n \"maximum\": \"8192\",\n \"type\": \"integer\",\n - \ \"description\": \"Return the player with maximum height specified - in\"\n },\n \"regionCode\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Use a chart that is specific to the specified region\"\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": + string: "{\n \"resources\": {\n \"superChatEvents\": {\n \"methods\": + {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"path\": \"youtube/v3/superChatEvents\",\n \"parameters\": + {\n \"maxResults\": {\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"location\": \"query\",\n \"minimum\": + \"1\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n + \ \"maximum\": \"50\",\n \"default\": \"5\"\n },\n + \ \"hl\": {\n \"location\": \"query\",\n \"description\": + \"Return rendered funding amounts in specified language.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"repeated\": + true,\n \"required\": true,\n \"description\": \"The + *part* parameter specifies the superChatEvent resource parts that the API + response will include. This parameter is currently not supported.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": + {\n \"location\": \"query\",\n \"description\": \"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.\"\n - \ },\n \"maxHeight\": {\n \"type\": \"integer\",\n - \ \"maximum\": \"8192\",\n \"minimum\": \"72\",\n - \ \"location\": \"query\",\n \"format\": \"int32\"\n - \ },\n \"myRating\": {\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"locale\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": + properties identify other pages that could be retrieved.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"youtube.superChatEvents.list\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": + \"SuperChatEventListResponse\"\n },\n \"flatPath\": \"youtube/v3/superChatEvents\"\n + \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": + {\n \"id\": \"youtube.search.list\",\n \"parameters\": {\n + \ \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -70,76 +46,236 @@ interactions: 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.\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"minimum\": \"1\",\n - \ \"location\": \"query\",\n \"format\": \"uint32\",\n + be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"maximum\": \"50\",\n \"minimum\": \"0\",\n \ \"description\": \"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.\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\"\n },\n - \ \"chart\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return the videos that are in - the specified chart.\",\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ]\n - \ },\n \"id\": {\n \"description\": \"Return - videos with the given ids.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n + maximum number of items that should be returned in the result set.\",\n \"type\": + \"integer\",\n \"location\": \"query\",\n \"format\": + \"uint32\",\n \"default\": \"5\"\n },\n \"videoCategoryId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Filter on videos in a specific category.\"\n + \ },\n \"publishedBefore\": {\n \"format\": + \"google-datetime\",\n \"type\": \"string\",\n \"description\": + \"Filter on resources published before this date.\",\n \"location\": + \"query\"\n },\n \"videoDefinition\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Filter on the definition of the videos.\",\n \"enum\": [\n + \ \"any\",\n \"standard\",\n \"high\"\n + \ ],\n \"enumDescriptions\": [\n \"Return + all videos, regardless of their resolution.\",\n \"Only retrieve + videos in standard definition.\",\n \"Only retrieve HD videos.\"\n + \ ]\n },\n \"relevanceLanguage\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return results relevant to this language.\"\n },\n \"channelType\": + {\n \"enumDescriptions\": [\n \"\",\n \"Return + all channels.\",\n \"Only retrieve shows.\"\n ],\n + \ \"description\": \"Add a filter on the channel search.\",\n + \ \"location\": \"query\",\n \"enum\": [\n \"channelTypeUnspecified\",\n + \ \"any\",\n \"show\"\n ],\n \"type\": + \"string\"\n },\n \"videoSyndicated\": {\n \"enum\": + [\n \"videoSyndicatedUnspecified\",\n \"any\",\n + \ \"true\"\n ],\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Return + all videos, syndicated or not.\",\n \"Only retrieve syndicated + videos.\"\n ],\n \"description\": \"Filter on syndicated + videos.\",\n \"type\": \"string\"\n },\n \"videoLicense\": + {\n \"description\": \"Filter on the license of the videos.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n + \ \"Return all videos, regardless of which license they have, + that match the query parameters.\",\n \"Only return videos + that have the standard YouTube license.\",\n \"Only return + videos that have a Creative Commons license. Users can reuse videos with this + license in other videos that they create. Learn more.\"\n ],\n + \ \"enum\": [\n \"any\",\n \"youtube\",\n + \ \"creativeCommon\"\n ],\n \"location\": + \"query\"\n },\n \"forMine\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"description\": + \"Search for the private videos of the authenticated user.\"\n },\n + \ \"forContentOwner\": {\n \"location\": \"query\",\n + \ \"description\": \"Search owned by a content owner.\",\n \"type\": + \"boolean\"\n },\n \"eventType\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"The live broadcast is upcoming.\",\n + \ \"The live broadcast is active.\",\n \"The + live broadcast has been completed.\"\n ],\n \"enum\": + [\n \"none\",\n \"upcoming\",\n \"live\",\n + \ \"completed\"\n ],\n \"description\": + \"Filter on the livestream status of the videos.\"\n },\n \"q\": + {\n \"description\": \"Textual search terms to match.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"videoEmbeddable\": + {\n \"type\": \"string\",\n \"description\": \"Filter + on embeddable videos.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all videos, embeddable or not.\",\n \"Only + retrieve embeddable videos.\"\n ],\n \"enum\": [\n + \ \"videoEmbeddableUnspecified\",\n \"any\",\n + \ \"true\"\n ],\n \"location\": \"query\"\n + \ },\n \"regionCode\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Display + the content as seen by viewers in this country.\"\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Filter on resources belonging to this channelId.\"\n + \ },\n \"type\": {\n \"description\": \"Restrict + results to a particular set of resource types from One Platform.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"locationRadius\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Filter on distance from the location (specified above).\"\n },\n + \ \"safeSearch\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"Indicates whether the search + results should include restricted content as well as standard content.\",\n + \ \"default\": \"moderate\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n + \ \"none\",\n \"moderate\",\n \"strict\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"YouTube will not filter the search result set.\",\n \"YouTube + will filter some content from search results and, at the least, will filter + content that is restricted in your locale. Based on their content, search + results could be removed from search results or demoted in search results. + This is the default parameter value.\",\n \"YouTube will try + to exclude all restricted content from the search result set. Based on their + content, search results could be removed from search results or demoted in + search results.\"\n ]\n },\n \"topicId\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Restrict results to a particular topic.\"\n + \ },\n \"part\": {\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": + true\n },\n \"videoCaption\": {\n \"enum\": + [\n \"videoCaptionUnspecified\",\n \"any\",\n + \ \"closedCaption\",\n \"none\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"Filter + on the presence of captions on the videos.\",\n \"enumDescriptions\": + [\n \"\",\n \"Do not filter results based on + caption availability.\",\n \"Only include videos that have + captions.\",\n \"Only include videos that do not have captions.\"\n + \ ],\n \"location\": \"query\"\n },\n + \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"description\": \"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.\"\n },\n \"relatedToVideoId\": {\n \"location\": + \"query\",\n \"description\": \"Search related to a resource.\",\n + \ \"type\": \"string\"\n },\n \"videoDimension\": + {\n \"enum\": [\n \"any\",\n \"2d\",\n + \ \"3d\"\n ],\n \"enumDescriptions\": + [\n \"Include both 3D and non-3D videos in returned results. + This is the default value.\",\n \"Restrict search results to + exclude 3D videos.\",\n \"Restrict search results to only include + 3D videos.\"\n ],\n \"description\": \"Filter on + 3d videos.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"forDeveloper\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"description\": + \"Restrict the search to only retrieve videos uploaded using the project id + of the authenticated user.\"\n },\n \"location\": {\n + \ \"description\": \"Filter on location of the video\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"videoDuration\": + {\n \"description\": \"Filter on the duration of the videos.\",\n + \ \"enum\": [\n \"videoDurationUnspecified\",\n + \ \"any\",\n \"short\",\n \"medium\",\n + \ \"long\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"Do not filter video search results + based on their duration. This is the default value.\",\n \"Only + include videos that are less than four minutes long.\",\n \"Only + include videos that are between four and 20 minutes long (inclusive).\",\n + \ \"Only include videos longer than 20 minutes.\"\n ],\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"publishedAfter\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"format\": + \"google-datetime\",\n \"description\": \"Filter on resources + published after this date.\"\n },\n \"order\": {\n \"enumDescriptions\": + [\n \"\",\n \"Resources are sorted in reverse + chronological order based on the date they were created.\",\n \"Resources + are sorted from highest to lowest rating.\",\n \"Resources + are sorted from highest to lowest number of views.\",\n \"Resources + are sorted based on their relevance to the search query. This is the default + value for this parameter.\",\n \"Resources are sorted alphabetically + by title.\",\n \"Channels are sorted in descending order of + their number of uploaded videos.\"\n ],\n \"enum\": + [\n \"searchSortUnspecified\",\n \"date\",\n + \ \"rating\",\n \"viewCount\",\n \"relevance\",\n + \ \"title\",\n \"videoCount\"\n ],\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"default\": \"relevance\",\n \"description\": + \"Sort order of the results.\"\n },\n \"videoType\": + {\n \"description\": \"Filter on videos of a specific type.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Return + all videos.\",\n \"Only retrieve movies.\",\n \"Only + retrieve episodes of shows.\"\n ],\n \"location\": + \"query\",\n \"enum\": [\n \"videoTypeUnspecified\",\n + \ \"any\",\n \"movie\",\n \"episode\"\n + \ ],\n \"type\": \"string\"\n }\n },\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.list\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"httpMethod\": \"GET\"\n },\n \"getRating\": {\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"flatPath\": \"youtube/v3/videos/getRating\",\n \"id\": - \"youtube.videos.getRating\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"VideoGetRatingResponse\"\n },\n \"description\": \"Retrieves - the ratings that the authorized user gave to a list of specified videos.\",\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos\",\n \"id\": \"youtube.videos.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Deletes a resource.\",\n - \ \"flatPath\": \"youtube/v3/videos\"\n },\n \"reportAbuse\": + \ \"path\": \"youtube/v3/search\",\n \"flatPath\": \"youtube/v3/search\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": + {\n \"$ref\": \"SearchListResponse\"\n },\n \"httpMethod\": + \"GET\",\n \"description\": \"Retrieves a list of search resources\"\n + \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": + {\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/members\",\n + \ \"description\": \"Retrieves a list of members that match the request + criteria for a channel.\",\n \"flatPath\": \"youtube/v3/members\",\n + \ \"parameters\": {\n \"maxResults\": {\n \"format\": + \"uint32\",\n \"maximum\": \"1000\",\n \"location\": + \"query\",\n \"type\": \"integer\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"default\": \"5\",\n \"minimum\": + \"0\"\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"hasAccessToLevel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Filter members in the results set to the + ones that have access to a level.\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"The *part* parameter specifies the member + resource parts that the API response will include. Set the parameter value + to snippet.\",\n \"required\": true,\n \"repeated\": + true\n },\n \"filterByMemberChannelId\": {\n \"description\": + \"Comma separated list of channel IDs. Only data about members that are part + of this list will be included in the response.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"mode\": + {\n \"enumDescriptions\": [\n \"\",\n \"Return + only members that joined after the first call with this mode was made.\",\n + \ \"Return all current members, from newest to oldest.\"\n ],\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"default\": \"all_current\",\n \"enum\": [\n \"listMembersModeUnknown\",\n + \ \"updates\",\n \"all_current\"\n ],\n + \ \"description\": \"Parameter that specifies which channel members + to return.\"\n }\n },\n \"id\": \"youtube.members.list\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"response\": {\n \"$ref\": \"MemberListResponse\"\n + \ }\n }\n }\n },\n \"videoCategories\": {\n \"methods\": + {\n \"list\": {\n \"path\": \"youtube/v3/videoCategories\",\n + \ \"parameters\": {\n \"part\": {\n \"required\": + true,\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"description\": \"The *part* parameter specifies the videoCategory + resource properties that the API response will include. Set the parameter + value to snippet.\",\n \"location\": \"query\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"repeated\": true,\n \"description\": + \"Returns the video categories with the given IDs for Stubby or Apiary.\"\n + \ },\n \"hl\": {\n \"default\": \"en-US\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"regionCode\": {\n \"type\": \"string\",\n + \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.videoCategories.list\",\n + \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/videoCategories\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ }\n }\n },\n \"playlists\": {\n \"methods\": {\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [],\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n \"path\": - \"youtube/v3/videos/reportAbuse\",\n \"request\": {\n \"$ref\": - \"VideoAbuseReport\"\n },\n \"description\": \"Report abuse - for a video.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively + \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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. @@ -148,39 +284,27 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.videos.reportAbuse\"\n - \ },\n \"rate\": {\n \"id\": \"youtube.videos.rate\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"rating\": {\n \"required\": - true,\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/videos/rate\",\n \"path\": - \"youtube/v3/videos/rate\",\n \"description\": \"Adds a like or dislike - rating to a video or removes a rating from a video.\"\n },\n \"insert\": - {\n \"mediaUpload\": {\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"274877906944\",\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": - true\n },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/videos\"\n }\n - \ }\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"id\": \"youtube.videos.insert\",\n \"parameters\": {\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": + owner.\"\n },\n \"id\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"youtube.playlists.delete\",\n + \ \"description\": \"Deletes a resource.\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"path\": \"youtube/v3/playlists\",\n + \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/playlists\"\n + \ },\n \"insert\": {\n \"request\": {\n \"$ref\": + \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\",\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"description\": \"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 @@ -194,64 +318,21 @@ interactions: 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.\"\n },\n \"autoLevels\": - {\n \"description\": \"Should auto-levels be applied to the upload.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"stabilize\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Should stabilize be applied to the upload.\"\n },\n \"notifySubscribers\": - {\n \"location\": \"query\",\n \"description\": - \"Notify the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"type\": \"boolean\",\n \"default\": - \"true\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"supportsMediaUpload\": true,\n \"path\": \"youtube/v3/videos\",\n - \ \"flatPath\": \"youtube/v3/videos\"\n },\n \"update\": - {\n \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Video\"\n },\n \"id\": \"youtube.videos.update\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"path\": \"youtube/v3/videos\",\n \"parameters\": {\n + for each separate channel.\",\n \"type\": \"string\"\n },\n \ \"part\": {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + include.\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"required\": + true\n }\n },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlists\",\n + \ \"id\": \"youtube.playlists.insert\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"Playlist\"\n }\n + \ },\n \"update\": {\n \"description\": \"Updates an + existing resource.\",\n \"response\": {\n \"$ref\": \"Playlist\"\n + \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates @@ -260,73 +341,36 @@ interactions: This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n }\n }\n }\n - \ },\n \"playlists\": {\n \"methods\": {\n \"delete\": {\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"description\": - \"Deletes a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlists.delete\",\n \"path\": - \"youtube/v3/playlists\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n }\n },\n \"update\": {\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n - \ },\n \"description\": \"Updates an existing resource.\",\n + provide authentication credentials for each individual channel. The CMS account + that the user authenticates with must be linked to the specified YouTube content + owner.\"\n },\n \"part\": {\n \"required\": + true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"httpMethod\": \"PUT\",\n + \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"id\": \"youtube.playlists.update\",\n - \ \"httpMethod\": \"PUT\"\n },\n \"insert\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ ],\n \"path\": \"youtube/v3/playlists\",\n \"flatPath\": + \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.update\",\n + \ \"parameterOrder\": [\n \"part\"\n ]\n },\n + \ \"list\": {\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"path\": \"youtube/v3/playlists\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \ \"parameters\": {\n \"maxResults\": {\n \"location\": + \"query\",\n \"description\": \"The *maxResults* parameter specifies + the maximum number of items that should be returned in the result set.\",\n + \ \"type\": \"integer\",\n \"minimum\": \"0\",\n + \ \"maximum\": \"50\",\n \"default\": \"5\",\n \"format\": + \"uint32\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -335,40 +379,28 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.playlists.insert\"\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.playlists.list\",\n \"response\": {\n \"$ref\": - \"PlaylistListResponse\"\n },\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the playlists with the given IDs for - Stubby or Apiary.\",\n \"repeated\": true\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"required\": true,\n \"description\": \"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.\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": + properties.\",\n \"repeated\": true,\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"channelId\": + {\n \"type\": \"string\",\n \"description\": \"Return + the playlists owned by the specified channel ID.\",\n \"location\": + \"query\"\n },\n \"mine\": {\n \"description\": + \"Return the playlists owned by the authenticated user.\",\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"Return + the playlists with the given IDs for Stubby or Apiary.\",\n \"location\": + \"query\",\n \"repeated\": true\n },\n \"hl\": + {\n \"type\": \"string\",\n \"description\": \"Return + content in specified language\",\n \"location\": \"query\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": \"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 @@ -382,62 +414,67 @@ interactions: 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.\",\n \"type\": \"string\"\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"description\": - \"Return content in specified language\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the playlists owned by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"description\": - \"Return the playlists owned by the specified channel ID.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ }\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + for each separate channel.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"id\": \"youtube.playlists.list\",\n \"path\": \"youtube/v3/playlists\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/playlists\"\n + \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n + \ \"list\": {\n \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n + \ },\n \"id\": \"youtube.i18nRegions.list\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/i18nRegions\",\n \"parameters\": + {\n \"part\": {\n \"type\": \"string\",\n \"required\": + true,\n \"description\": \"The *part* parameter specifies the + i18nRegion resource properties that the API response will include. Set the + parameter value to snippet.\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"hl\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"default\": + \"en_US\"\n }\n },\n \"path\": \"youtube/v3/i18nRegions\",\n \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ }\n }\n },\n \"playlistItems\": {\n \"methods\": {\n - \ \"list\": {\n \"id\": \"youtube.playlistItems.list\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"pageToken\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"part\": {\n - \ \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": + {\n \"methods\": {\n \"updateCommentThreads\": {\n \"flatPath\": + \"youtube/v3/commentThreads\",\n \"parameterOrder\": [],\n \"id\": + \"youtube.youtube.v3.updateCommentThreads\",\n \"description\": + \"Updates an existing resource.\",\n \"parameters\": {\n \"part\": + {\n \"description\": \"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.\",\n + \ \"repeated\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n + \ \"response\": {\n \"$ref\": \"CommentThread\"\n + \ },\n \"httpMethod\": \"PUT\",\n \"request\": + {\n \"$ref\": \"CommentThread\"\n },\n \"path\": + \"youtube/v3/commentThreads\"\n }\n }\n }\n }\n + \ },\n \"liveStreams\": {\n \"methods\": {\n \"delete\": + {\n \"description\": \"Deletes an existing stream for the authenticated + user.\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameters\": + {\n \"id\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \ \"description\": \"*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 @@ -447,152 +484,23 @@ interactions: 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.\"\n },\n \"videoId\": {\n \"location\": - \"query\",\n \"description\": \"Return the playlist items associated - with the given video ID.\",\n \"type\": \"string\"\n },\n - \ \"playlistId\": {\n \"location\": \"query\",\n \"description\": - \"Return the playlist items within the given playlist.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\"\n }\n },\n \"response\": {\n \"$ref\": - \"PlaylistItemListResponse\"\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.playlistItems.delete\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n }\n },\n \"insert\": {\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"update\": {\n \"request\": {\n - \ \"$ref\": \"PlaylistItem\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"id\": \"youtube.playlistItems.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"path\": \"youtube/v3/playlistItems\"\n - \ }\n }\n },\n \"liveStreams\": {\n \"methods\": {\n - \ \"update\": {\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"id\": \"youtube.liveStreams.update\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Updates an existing stream for - the authenticated user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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 + owner.\",\n \"location\": \"query\"\n }\n },\n + \ \"id\": \"youtube.liveStreams.delete\",\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"httpMethod\": \"DELETE\"\n },\n \"update\": + {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n + \ \"type\": \"string\",\n \"description\": \"*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 perform actions on behalf of the channel specified - in the parameter value, without having to provide authentication credentials - for each separate channel.\"\n }\n }\n },\n \"insert\": - {\n \"id\": \"youtube.liveStreams.insert\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + 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.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": \"This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwnerChannel* @@ -607,56 +515,80 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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 + for each separate channel.\"\n },\n \"part\": {\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true,\n \"description\": \"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.\"\n }\n },\n \"httpMethod\": \"PUT\",\n + \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": + \"youtube/v3/liveStreams\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.update\",\n + \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"description\": \"Updates an existing stream for the authenticated + user.\"\n },\n \"insert\": {\n \"description\": \"Inserts + a new stream for the authenticated user.\",\n \"path\": \"youtube/v3/liveStreams\",\n + \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": + {\n \"$ref\": \"LiveStream\"\n },\n \"id\": \"youtube.liveStreams.insert\",\n + \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n + \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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 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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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, content_details, and status.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/liveStreams\",\n + 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.\",\n \"type\": \"string\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n + \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"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, + content_details, and status.\",\n \"type\": \"string\",\n \"required\": + true\n }\n }\n },\n \"list\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n \ \"description\": \"Retrieve the list of streams associated with - the given channel. --\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"Return LiveStreams with the given ids from - Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"maximum\": \"50\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + the given channel. --\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"id\": + \"youtube.liveStreams.list\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n + \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": + \"LiveStreamListResponse\"\n },\n \"parameters\": {\n \"mine\": + {\n \"type\": \"boolean\",\n \"location\": \"query\"\n + \ },\n \"pageToken\": {\n \"description\": + \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": \"string\",\n \"location\": \"query\",\n \ \"description\": \"This parameter can only be used in a properly authorized request. *Note:* This parameter is intended exclusively for YouTube @@ -672,154 +604,19 @@ interactions: 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.\"\n },\n \"pageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.liveStreams.list\"\n },\n \"delete\": - {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n - \ \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"youtube.liveStreams.delete\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes an existing stream for the authenticated - user.\"\n }\n }\n },\n \"i18nRegions\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"hl\": {\n - \ \"default\": \"en_US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the i18nRegion - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"I18nRegionListResponse\"\n },\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.i18nRegions.list\",\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"description\": \"Updates an existing resource.\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [],\n \"request\": - {\n \"$ref\": \"CommentThread\"\n }\n }\n - \ }\n }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n }\n - \ },\n \"list\": {\n \"id\": \"youtube.liveChatModerators.list\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\"\n },\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for which moderators - should be returned.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the liveChatModerator resource parts that the API response - will include. Supported values are id and snippet.\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\"\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - chat moderator.\",\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.liveChatModerators.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the channels with the specified IDs.\",\n \"repeated\": - true\n },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the channels subscribed - to the authenticated user\",\n \"location\": \"query\"\n },\n - \ \"mine\": {\n \"description\": \"Return the ids of - channels owned by the authenticated user.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"categoryId\": {\n \"description\": - \"Return the channels within the specified guide category ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively + for each separate channel.\"\n },\n \"maxResults\": + {\n \"maximum\": \"50\",\n \"type\": \"integer\",\n + \ \"location\": \"query\",\n \"default\": \"5\",\n + \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"format\": \"uint32\"\n },\n + \ \"part\": {\n \"type\": \"string\",\n \"description\": + \"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.\",\n + \ \"location\": \"query\",\n \"repeated\": true,\n + \ \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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. @@ -828,550 +625,62 @@ interactions: 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.\"\n },\n \"managedByMe\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the channels managed - by the authenticated user.\",\n \"location\": \"query\"\n },\n - \ \"forUsername\": {\n \"type\": \"string\",\n \"description\": - \"Return the channel associated with a YouTube username.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"type\": \"integer\"\n - \ },\n \"hl\": {\n \"description\": \"Stands - for \\\"host language\\\". Specifies the localization language of the metadata - to be filled into snippet.localized. The field is filled with the default - metadata if there is no localization in the specified language. The parameter - value must be a language code included in the list returned by the i18nLanguages.list - method (e.g. en_US, es_MX).\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"path\": \"youtube/v3/channels\",\n - \ \"id\": \"youtube.channels.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"update\": {\n + owner.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"Return LiveStreams with the + given ids from Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": + \"query\"\n }\n }\n }\n }\n },\n \"liveChatModerators\": + {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channels\",\n \"response\": - {\n \"$ref\": \"Channel\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"id\": - \"youtube.channels.update\",\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"Channel\"\n },\n \"httpMethod\": \"PUT\"\n }\n - \ }\n },\n \"activities\": {\n \"methods\": {\n \"list\": - {\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"publishedBefore\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"format\": \"google-datetime\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"publishedAfter\": - {\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"home\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"default\": - \"5\",\n \"location\": \"query\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.activities.list\",\n - \ \"path\": \"youtube/v3/activities\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/activities\"\n }\n - \ }\n },\n \"thumbnails\": {\n \"methods\": {\n \"set\": - {\n \"parameters\": {\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"Returns the Thumbnail with the - given video IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"ThumbnailSetResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.thumbnails.set\",\n \"mediaUpload\": - {\n \"maxSize\": \"2097152\",\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n }\n }\n },\n \"supportsMediaUpload\": - true,\n \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"parameterOrder\": - [\n \"videoId\"\n ],\n \"path\": \"youtube/v3/thumbnails/set\"\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.superChatEvents.list\",\n - \ \"path\": \"youtube/v3/superChatEvents\",\n \"flatPath\": - \"youtube/v3/superChatEvents\",\n \"parameters\": {\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return rendered funding amounts in specified - language.\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"minimum\": \"1\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the superChatEvent resource parts that the - API response will include. This parameter is currently not supported.\",\n - \ \"required\": true,\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": + \ ],\n \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n + \ },\n \"parameterOrder\": [\n \"liveChatId\",\n + \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"The *part* parameter specifies the liveChatModerator + resource parts that the API response will include. Supported values are id + and snippet.\",\n \"required\": true\n },\n \"maxResults\": + {\n \"minimum\": \"0\",\n \"format\": \"uint32\",\n + \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"location\": \"query\",\n \"default\": + \"5\",\n \"type\": \"integer\"\n },\n \"pageToken\": {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"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.\"\n - \ }\n }\n }\n }\n },\n \"commentThreads\": - {\n \"methods\": {\n \"insert\": {\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.commentThreads.insert\",\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"id\": \"youtube.commentThreads.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads for all the channel comments (ie does not include comments - left on videos).\",\n \"location\": \"query\"\n },\n - \ \"videoId\": {\n \"description\": \"Returns the comment - threads of the specified video.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"moderationStatus\": {\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"type\": \"string\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\",\n \"default\": \"published\"\n },\n \"textFormat\": - {\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"location\": - \"query\",\n \"description\": \"The requested text format for - the returned comments.\",\n \"default\": \"html\",\n \"type\": - \"string\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"order\": - {\n \"enum\": [\n \"orderUnspecified\",\n \"time\",\n - \ \"relevance\"\n ],\n \"default\": - \"time\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Order by time.\",\n \"Order by relevance.\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"searchTerms\": {\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"100\",\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"1\",\n \"location\": - \"query\",\n \"default\": \"20\"\n }\n }\n - \ }\n }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"description\": \"POST - method.\",\n \"request\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"response\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/tests\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.tests.insert\",\n \"path\": \"youtube/v3/tests\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"liveChatBans\": {\n \"methods\": {\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"parameterOrder\": [\n \"part\"\n + \ },\n \"liveChatId\": {\n \"location\": + \"query\",\n \"required\": true,\n \"description\": + \"The id of the live chat for which moderators should be returned.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"youtube.liveChatModerators.list\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"httpMethod\": \"GET\"\n },\n \"insert\": {\n \"response\": + {\n \"$ref\": \"LiveChatModerator\"\n },\n \"path\": + \"youtube/v3/liveChat/moderators\",\n \"request\": {\n \"$ref\": + \"LiveChatModerator\"\n },\n \"id\": \"youtube.liveChatModerators.insert\",\n + \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"request\": {\n \"$ref\": \"LiveChatBan\"\n - \ },\n \"id\": \"youtube.liveChatBans.insert\",\n \"scopes\": + collection.\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": + true\n }\n }\n },\n \"delete\": {\n \"description\": + \"Deletes a chat moderator.\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/bans\",\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true,\n \"description\": - \"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.\"\n }\n - \ }\n },\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatBans.delete\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"description\": - \"Deletes a chat ban.\",\n \"path\": \"youtube/v3/liveChat/bans\"\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"description\": \"Returns the video categories with - the given IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the videoCategory resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"repeated\": + \ ],\n \"parameters\": {\n \"id\": {\n \"required\": true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"default\": \"en-US\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"id\": - \"youtube.videoCategories.list\",\n \"path\": \"youtube/v3/videoCategories\"\n - \ }\n }\n },\n \"comments\": {\n \"methods\": {\n \"insert\": - {\n \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/comments\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.insert\",\n \"description\": - \"Inserts a new resource into this collection.\"\n },\n \"update\": - {\n \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"path\": \"youtube/v3/comments\",\n \"parameters\": {\n - \ \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.comments.update\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"setModerationStatus\": {\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"moderationStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"description\": \"Specifies the requested - moderation status. Note, comments can be in statuses, which are not available - through this call. For example, this call does not allow to mark a comment - as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\",\n \"required\": true\n },\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"banAuthor\": {\n \"description\": - \"If set to true the author of the comment gets added to the ban list. This - means all future comments of the author will autmomatically be rejected. Only - valid in combination with STATUS_REJECTED.\",\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"default\": - \"false\"\n }\n },\n \"description\": \"Sets - the moderation status of one or more comments.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"path\": - \"youtube/v3/comments/setModerationStatus\",\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ],\n \"id\": - \"youtube.comments.setModerationStatus\"\n },\n \"list\": {\n - \ \"id\": \"youtube.comments.list\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"response\": - {\n \"$ref\": \"CommentListResponse\"\n },\n \"parameters\": - {\n \"pageToken\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"parentId\": - {\n \"description\": \"Returns replies to the specified comment. - Note, currently YouTube features only one level of replies (ie replies to - top level comments). However replies to replies may be supported in the future.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"description\": \"Returns the comments with the given IDs for - One Platform.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"textFormat\": {\n \"location\": - \"query\",\n \"default\": \"html\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"description\": \"The requested text format for the returned - comments.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"maximum\": \"100\",\n \"default\": \"20\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"1\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more comment resource properties that the API response will - include.\"\n }\n },\n \"httpMethod\": \"GET\"\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/comments\",\n \"id\": \"youtube.comments.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"markAsSpam\": {\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.comments.markAsSpam\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"description\": \"Flags the comments with the - given IDs as spam in the caller's opinion.\",\n \"repeated\": - true,\n \"location\": \"query\"\n }\n }\n - \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\"\n },\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.list\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"parameters\": {\n - \ \"type\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"location\": \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"description\": - \"Get a third party link of the given type.\"\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"linkingToken\": {\n \"type\": - \"string\",\n \"description\": \"Get a third party link with - the given linking token.\",\n \"location\": \"query\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a resource.\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"id\": - \"youtube.thirdPartyLinks.delete\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"Type of the link to be deleted.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ]\n },\n \"linkingToken\": {\n \"type\": - \"string\",\n \"description\": \"Delete the partner links with - the given linking token.\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"Do not use. Required for compatibility.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"update\": {\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the thirdPartyLink resource parts that the API request - and response will include. Supported values are linkingToken, status, and - snippet.\",\n \"required\": true\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.thirdPartyLinks.update\",\n \"description\": - \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n }\n }\n }\n },\n \"captions\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Returns the captions with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"Returns the captions for the specified video.\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ],\n \"id\": - \"youtube.captions.list\",\n \"response\": {\n \"$ref\": - \"CaptionListResponse\"\n }\n },\n \"insert\": {\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"The *part* parameter - specifies the caption resource parts that the API response will include. Set - the parameter value to snippet.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"sync\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\"\n },\n - \ \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is be on behalf of\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"104857600\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"supportsMediaUpload\": - true,\n \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"id\": \"youtube.captions.insert\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/captions\"\n },\n \"update\": - {\n \"id\": \"youtube.captions.update\",\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"parameters\": - {\n \"sync\": {\n \"type\": \"boolean\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": + \ }\n },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n + \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"id\": + \"youtube.liveChatModerators.delete\"\n }\n }\n },\n \"captions\": + {\n \"methods\": {\n \"delete\": {\n \"path\": \"youtube/v3/captions\",\n + \ \"description\": \"Deletes a resource.\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube @@ -1382,112 +691,18 @@ interactions: provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is on behalf of.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"mediaUpload\": {\n \"protocols\": {\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"maxSize\": \"104857600\"\n },\n \"supportsMediaUpload\": - true,\n \"path\": \"youtube/v3/captions\",\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/captions\",\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"Caption\"\n }\n },\n \"delete\": {\n \"path\": - \"youtube/v3/captions\",\n \"httpMethod\": \"DELETE\",\n \"scopes\": + \ \"id\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"required\": true\n },\n \"onBehalfOf\": + {\n \"description\": \"ID of the Google+ Page for the channel + that the request is be on behalf of\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"httpMethod\": + \"DELETE\",\n \"flatPath\": \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.captions.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is be on behalf of\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/captions\"\n },\n \"download\": - {\n \"parameters\": {\n \"id\": {\n \"location\": - \"path\",\n \"description\": \"The ID of the caption track to - download, required for One Platform.\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"tfmt\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Convert the captions into this format. Supported options are sbv, srt, and - vtt.\"\n },\n \"tlang\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"tlang is the language code; machine translate the captions into this language.\"\n - \ },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\",\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Downloads a caption track.\",\n \"httpMethod\": \"GET\",\n \"useMediaDownloadService\": - true,\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"supportsMediaDownload\": - true,\n \"id\": \"youtube.captions.download\",\n \"path\": - \"youtube/v3/captions/{id}\"\n }\n }\n },\n \"abuseReports\": - {\n \"methods\": {\n \"insert\": {\n \"flatPath\": \"youtube/v3/abuseReports\",\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"id\": \"youtube.abuseReports.insert\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"path\": - \"youtube/v3/channelBanners/insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Unused, channel_id is currently derived from - the security context of the requestor.\"\n },\n \"onBehalfOfContentOwner\": + \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"id\": \"youtube.captions.delete\"\n },\n \"download\": + {\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"useMediaDownloadService\": + true,\n \"supportsMediaDownload\": true,\n \"httpMethod\": + \"GET\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify @@ -1498,52 +713,42 @@ interactions: having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"id\": \"youtube.channelBanners.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"mediaUpload\": - {\n \"maxSize\": \"6291456\",\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/channelBanners/insert\",\n \"multipart\": - true\n }\n }\n },\n \"supportsMediaUpload\": - true,\n \"parameterOrder\": []\n }\n }\n },\n \"watermarks\": - {\n \"methods\": {\n \"set\": {\n \"description\": \"Allows - upload of watermark image and setting it for a channel.\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"parameters\": {\n \"channelId\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"mediaUpload\": {\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\",\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/watermarks/set\"\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ }\n }\n },\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"id\": \"youtube.watermarks.set\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ },\n \"id\": {\n \"location\": \"path\",\n + \ \"type\": \"string\",\n \"required\": true,\n \"description\": + \"The ID of the caption track to download, required for One Platform.\"\n + \ },\n \"onBehalfOf\": {\n \"type\": \"string\",\n + \ \"description\": \"ID of the Google+ Page for the channel that + the request is be on behalf of\",\n \"location\": \"query\"\n + \ },\n \"tlang\": {\n \"description\": \"tlang + is the language code; machine translate the captions into this language.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"tfmt\": {\n \"location\": \"query\",\n + \ \"description\": \"Convert the captions into this format. Supported + options are sbv, srt, and vtt.\",\n \"type\": \"string\"\n }\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"supportsMediaUpload\": - true\n },\n \"unset\": {\n \"parameterOrder\": [\n - \ \"channelId\"\n ],\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n - \ \"path\": \"youtube/v3/watermarks/unset\",\n \"id\": \"youtube.watermarks.unset\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* + \ \"description\": \"Downloads a caption track.\",\n \"path\": + \"youtube/v3/captions/{id}\",\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"id\": \"youtube.captions.download\"\n },\n + \ \"update\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.captions.update\",\n \"path\": \"youtube/v3/captions\",\n + \ \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n \"protocols\": + {\n \"resumable\": {\n \"multipart\": true,\n + \ \"path\": \"/resumable/upload/youtube/v3/captions\"\n },\n + \ \"simple\": {\n \"path\": \"/upload/youtube/v3/captions\",\n + \ \"multipart\": true\n }\n },\n \"accept\": + [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ]\n },\n \"flatPath\": + \"youtube/v3/captions\",\n \"description\": \"Updates an existing + resource.\",\n \"httpMethod\": \"PUT\",\n \"request\": {\n + \ \"$ref\": \"Caption\"\n },\n \"parameters\": + {\n \"sync\": {\n \"location\": \"query\",\n \"description\": + \"Extra parameter to allow automatically syncing the uploaded caption/transcript + with the audio.\",\n \"type\": \"boolean\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"*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 @@ -1551,96 +756,327 @@ interactions: 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.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"type\": + The actual CMS account that the user authenticates with must be linked to + the specified YouTube content owner.\"\n },\n \"onBehalfOf\": + {\n \"description\": \"ID of the Google+ Page for the channel + that the request is on behalf of.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"part\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true,\n \"description\": \"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.\",\n \"repeated\": + true\n }\n },\n \"supportsMediaUpload\": true,\n + \ \"response\": {\n \"$ref\": \"Caption\"\n }\n + \ },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.captions.list\",\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"required\": true,\n + \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOf\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"ID + of the Google+ Page for the channel that the request is on behalf of.\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Returns the captions with the given IDs for + Stubby or Apiary.\",\n \"repeated\": true\n },\n \"videoId\": + {\n \"location\": \"query\",\n \"description\": + \"Returns the captions for the specified video.\",\n \"type\": \"string\",\n \"required\": true\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Allows removal - of channel watermark.\"\n }\n }\n },\n \"liveChatMessages\": - {\n \"methods\": {\n \"insert\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": + \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n + \ ],\n \"path\": \"youtube/v3/captions\",\n \"response\": + {\n \"$ref\": \"CaptionListResponse\"\n },\n \"description\": + \"Retrieves a list of resources, possibly filtered.\"\n },\n \"insert\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.captions.insert\",\n + \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/captions\",\n + \ \"supportsMediaUpload\": true,\n \"mediaUpload\": {\n \"maxSize\": + \"104857600\",\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n + \ \"*/*\"\n ],\n \"protocols\": {\n \"simple\": + {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": + true\n },\n \"resumable\": {\n \"multipart\": + true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n + \ }\n }\n },\n \"request\": {\n \"$ref\": + \"Caption\"\n },\n \"parameters\": {\n \"sync\": + {\n \"location\": \"query\",\n \"type\": \"boolean\",\n + \ \"description\": \"Extra parameter to allow automatically syncing + the uploaded caption/transcript with the audio.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n },\n \"onBehalfOf\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"ID of the Google+ Page for the channel that + the request is be on behalf of\"\n },\n \"part\": {\n + \ \"repeated\": true,\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"The *part* parameter specifies the caption resource parts that the API response + will include. Set the parameter value to snippet.\"\n }\n },\n + \ \"response\": {\n \"$ref\": \"Caption\"\n },\n + \ \"path\": \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": + {\n \"delete\": {\n \"description\": \"Deletes a resource.\",\n + \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": + {\n \"type\": {\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"location\": + \"query\",\n \"required\": true,\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or + about to connect) a channel with a store on a merchandising platform in order + to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n + \ \"description\": \"Type of the link to be deleted.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"location\": \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"required\": true\n }\n },\n - \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"scopes\": + \ \"description\": \"Do not use. Required for compatibility.\"\n + \ },\n \"externalChannelId\": {\n \"description\": + \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"linkingToken\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"description\": \"Delete the partner links with the given linking + token.\",\n \"type\": \"string\"\n }\n },\n + \ \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n + \ ],\n \"id\": \"youtube.thirdPartyLinks.delete\"\n },\n + \ \"insert\": {\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n + \ },\n \"id\": \"youtube.thirdPartyLinks.insert\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"request\": + {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameters\": + {\n \"externalChannelId\": {\n \"description\": \"Channel + ID to which changes should be applied, for delegation.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"part\": + {\n \"required\": true,\n \"repeated\": true,\n + \ \"description\": \"The *part* parameter specifies the thirdPartyLink + resource parts that the API request and response will include. Supported values + are linkingToken, status, and snippet.\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n }\n },\n \"flatPath\": + \"youtube/v3/thirdPartyLinks\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n + \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n + \ ]\n },\n \"update\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"description\": + \"Updates an existing resource.\",\n \"id\": \"youtube.thirdPartyLinks.update\",\n + \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n + \ \"parameters\": {\n \"externalChannelId\": {\n \"type\": + \"string\",\n \"description\": \"Channel ID to which changes + should be applied, for delegation.\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"description\": \"The + *part* parameter specifies the thirdPartyLink resource parts that the API + request and response will include. Supported values are linkingToken, status, + and snippet.\",\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": + [\n \"part\"\n ]\n },\n \"list\": {\n \"response\": + {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"id\": + \"youtube.thirdPartyLinks.list\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n + \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": + {\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"A link that is connecting (or about to connect) a channel + with a store on a merchandising platform in order to enable retail commerce + capabilities for that channel on YouTube.\"\n ],\n \"location\": + \"query\",\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"description\": + \"Get a third party link of the given type.\",\n \"type\": \"string\"\n + \ },\n \"externalChannelId\": {\n \"type\": + \"string\",\n \"description\": \"Channel ID to which changes + should be applied, for delegation.\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"repeated\": true,\n + \ \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\",\n \"description\": \"The + *part* parameter specifies the thirdPartyLink resource parts that the API + response will include. Supported values are linkingToken, status, and snippet.\"\n + \ },\n \"linkingToken\": {\n \"description\": + \"Get a third party link with the given linking token.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": + \"GET\"\n }\n }\n },\n \"liveChatMessages\": {\n \"methods\": + {\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n + \ \"id\": \"youtube.liveChatMessages.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveChatMessages.insert\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"id\": \"youtube.liveChatMessages.delete\",\n \"parameters\": + \ ],\n \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"required\": true,\n \"type\": \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a chat message.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"path\": \"youtube/v3/liveChat/messages\",\n \"description\": + \"Deletes a chat message.\",\n \"parameterOrder\": [\n \"id\"\n + \ ]\n },\n \"insert\": {\n \"description\": + \"Inserts a new resource into this collection.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/messages\",\n + \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameters\": + {\n \"part\": {\n \"repeated\": true,\n \"required\": + true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"request\": {\n \"$ref\": + \"LiveChatMessage\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\"\n },\n \"list\": {\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"parameters\": {\n \"hl\": - {\n \"location\": \"query\",\n \"description\": - \"Specifies the localization language in which the system messages should - be returned.\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n - \ \"maxResults\": {\n \"format\": \"uint32\",\n \"default\": - \"500\",\n \"location\": \"query\",\n \"type\": - \"integer\",\n \"minimum\": \"200\",\n \"maximum\": - \"2000\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the liveChatComment resource parts that the API response - will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"profileImageSize\": - {\n \"maximum\": \"720\",\n \"location\": \"query\",\n + \ \"id\": \"youtube.liveChatMessages.insert\",\n \"response\": + {\n \"$ref\": \"LiveChatMessage\"\n },\n \"httpMethod\": + \"POST\"\n },\n \"list\": {\n \"httpMethod\": \"GET\",\n + \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameters\": + {\n \"profileImageSize\": {\n \"type\": \"integer\",\n \ \"minimum\": \"16\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"Specifies - the size of the profile image that should be returned for each user.\"\n },\n - \ \"liveChatId\": {\n \"required\": true,\n \"type\": - \"string\",\n \"description\": \"The id of the live chat for - which comments should be returned.\",\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"LiveChatMessageListResponse\"\n },\n \"scopes\": + \ \"location\": \"query\",\n \"description\": \"Specifies + the size of the profile image that should be returned for each user.\",\n + \ \"maximum\": \"720\"\n },\n \"liveChatId\": + {\n \"description\": \"The id of the live chat for which comments + should be returned.\",\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"maximum\": + \"2000\",\n \"minimum\": \"200\",\n \"default\": + \"500\",\n \"type\": \"integer\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"description\": + \"The *part* parameter specifies the liveChatComment resource parts that the + API response will include. Supported values are id and snippet.\",\n \"required\": + true,\n \"type\": \"string\"\n },\n \"hl\": + {\n \"type\": \"string\",\n \"description\": \"Specifies + the localization language in which the system messages should be returned.\",\n + \ \"location\": \"query\"\n }\n },\n \"path\": + \"youtube/v3/liveChat/messages\",\n \"response\": {\n \"$ref\": + \"LiveChatMessageListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"parameterOrder\": [\n \"liveChatId\",\n + \ \"part\"\n ],\n \"id\": \"youtube.liveChatMessages.list\",\n + \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n + \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n + \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"description\": \"Inserts a new resource into this collection.\",\n + \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n + \ \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n + \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": + true\n }\n },\n \"id\": \"youtube.abuseReports.insert\",\n + \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"httpMethod\": + \"POST\",\n \"response\": {\n \"$ref\": \"AbuseReport\"\n + \ },\n \"path\": \"youtube/v3/abuseReports\"\n }\n + \ }\n },\n \"membershipsLevels\": {\n \"methods\": {\n \"list\": + {\n \"path\": \"youtube/v3/membershipsLevels\",\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"required\": + true,\n \"type\": \"string\",\n \"repeated\": true,\n + \ \"description\": \"The *part* parameter specifies the membershipsLevel + resource parts that the API response will include. Supported values are id + and snippet.\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"description\": \"Retrieves + a list of all pricing levels offered by a creator to the fans.\",\n \"id\": + \"youtube.membershipsLevels.list\",\n \"httpMethod\": \"GET\",\n + \ \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n + \ ],\n \"flatPath\": \"youtube/v3/membershipsLevels\"\n }\n + \ }\n },\n \"commentThreads\": {\n \"methods\": {\n \"list\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"path\": \"youtube/v3/commentThreads\",\n \"response\": + {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"id\": + \"youtube.commentThreads.list\",\n \"httpMethod\": \"GET\",\n \"flatPath\": + \"youtube/v3/commentThreads\",\n \"parameters\": {\n \"part\": + {\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies a comma-separated list of one or more commentThread + resource properties that the API response will include.\",\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Returns the comment threads for all the channel comments (ie does not include + comments left on videos).\"\n },\n \"pageToken\": {\n + \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": + \"string\"\n },\n \"allThreadsRelatedToChannelId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Returns the comment threads of all videos + of the channel and the channel comments as well.\"\n },\n \"id\": + {\n \"description\": \"Returns the comment threads with the given + IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"format\": \"uint32\",\n \"location\": \"query\",\n + \ \"minimum\": \"1\",\n \"type\": \"integer\",\n + \ \"default\": \"20\",\n \"maximum\": \"100\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\"\n },\n + \ \"moderationStatus\": {\n \"description\": \"Limits + the returned comment threads to those with the specified moderation status. + Not compatible with the 'id' filter. Valid values: published, heldForReview, + likelySpam.\",\n \"default\": \"published\",\n \"enum\": + [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n + \ \"rejected\"\n ],\n \"location\": + \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ]\n },\n \"videoId\": + {\n \"description\": \"Returns the comment threads of the specified + video.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"order\": {\n \"location\": + \"query\",\n \"enum\": [\n \"orderUnspecified\",\n + \ \"time\",\n \"relevance\"\n ],\n + \ \"default\": \"time\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Order + by time.\",\n \"Order by relevance.\"\n ]\n },\n + \ \"textFormat\": {\n \"description\": \"The requested + text format for the returned comments.\",\n \"enumDescriptions\": + [\n \"\",\n \"Returns the comments in HTML format. + This is the default value.\",\n \"Returns the comments in plain + text format.\"\n ],\n \"enum\": [\n \"textFormatUnspecified\",\n + \ \"html\",\n \"plainText\"\n ],\n + \ \"default\": \"html\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"searchTerms\": + {\n \"description\": \"Limits the returned comment threads to + those matching the specified key words. Not compatible with the 'id' filter.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"insert\": {\n \"flatPath\": + \"youtube/v3/commentThreads\",\n \"response\": {\n \"$ref\": + \"CommentThread\"\n },\n \"parameters\": {\n \"part\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": + true,\n \"location\": \"query\"\n }\n },\n + \ \"path\": \"youtube/v3/commentThreads\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"request\": + {\n \"$ref\": \"CommentThread\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"id\": \"youtube.commentThreads.insert\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"httpMethod\": \"POST\"\n }\n }\n },\n + \ \"channelSections\": {\n \"methods\": {\n \"delete\": {\n + \ \"description\": \"Deletes a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"id\": \"youtube.liveChatMessages.list\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\"\n }\n }\n },\n \"channelSections\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/channelSections\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.channelSections.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return content in specified language\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Return the ChannelSections owned by the specified - channel ID.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Return - the ChannelSections with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"mine\": - {\n \"description\": \"Return the ChannelSections owned by the - authenticated user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \ \"id\": \"youtube.channelSections.delete\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/channelSections\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n \"description\": \"*Note:* This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates that the request's authorization credentials identify a YouTube @@ -1650,12 +1086,38 @@ interactions: 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.\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ }\n },\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": + owner.\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n }\n }\n },\n + \ \"update\": {\n \"response\": {\n \"$ref\": \"ChannelSection\"\n + \ },\n \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": + \"PUT\",\n \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true,\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n }\n },\n \"description\": \"Updates + an existing resource.\",\n \"flatPath\": \"youtube/v3/channelSections\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": + \"youtube.channelSections.update\",\n \"request\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n },\n \"insert\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"request\": {\n \"$ref\": + \"ChannelSection\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": \"*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 @@ -1664,43 +1126,63 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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 + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"path\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.insert\"\n - \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channelSections.delete\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": + for each separate channel.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"required\": + true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"path\": \"youtube/v3/channelSections\",\n \"response\": + {\n \"$ref\": \"ChannelSection\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"flatPath\": \"youtube/v3/channelSections\",\n \"description\": + \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.channelSections.insert\",\n + \ \"httpMethod\": \"POST\"\n },\n \"list\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": + \"GET\",\n \"description\": \"Retrieves a list of resources, possibly + filtered.\",\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n + \ },\n \"parameters\": {\n \"id\": {\n \"description\": + \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"description\": + \"Return the ChannelSections owned by the specified channel ID.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": + \"string\",\n \"required\": true\n },\n \"hl\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Return content in specified language\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -1710,262 +1192,36 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"path\": - \"youtube/v3/channelSections\",\n \"description\": \"Deletes a resource.\"\n - \ },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"path\": - \"youtube/v3/channelSections\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"id\": \"youtube.channelSections.update\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Updates - an existing resource.\",\n \"httpMethod\": \"PUT\"\n }\n }\n - \ },\n \"membershipsLevels\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/membershipsLevels\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the membershipsLevel resource parts that the API - response will include. Supported values are id and snippet.\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"path\": \"youtube/v3/membershipsLevels\",\n \"id\": \"youtube.membershipsLevels.list\"\n - \ }\n }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.videoAbuseReportReasons.list\",\n \"response\": {\n \"$ref\": - \"VideoAbuseReportReasonListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"en-US\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - videoCategory resource parts that the API response will include. Supported - values are id and snippet.\",\n \"repeated\": true\n }\n - \ }\n }\n }\n },\n \"search\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.search.list\",\n \"description\": - \"Retrieves a list of search resources\",\n \"path\": \"youtube/v3/search\",\n - \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/search\",\n \"parameters\": - {\n \"videoCategoryId\": {\n \"description\": \"Filter - on videos in a specific category.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"videoDimension\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"location\": \"query\",\n \"description\": - \"Filter on 3d videos.\",\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ]\n },\n - \ \"regionCode\": {\n \"type\": \"string\",\n \"description\": - \"Display the content as seen by viewers in this country.\",\n \"location\": - \"query\"\n },\n \"relatedToVideoId\": {\n \"description\": - \"Search related to a resource.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"eventType\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on the livestream status of the videos.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n - \ },\n \"videoEmbeddable\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, embeddable or not.\",\n \"Only - retrieve embeddable videos.\"\n ],\n \"enum\": [\n - \ \"videoEmbeddableUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"location\": \"query\",\n - \ \"description\": \"Filter on embeddable videos.\"\n },\n - \ \"topicId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Restrict results to a particular - topic.\"\n },\n \"publishedAfter\": {\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\",\n \"description\": \"Filter on resources published - after this date.\"\n },\n \"videoCaption\": {\n \"type\": - \"string\",\n \"description\": \"Filter on the presence of captions - on the videos.\",\n \"location\": \"query\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ]\n },\n \"type\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Restrict - results to a particular set of resource types from One Platform.\"\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"format\": \"uint32\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"q\": {\n \"description\": - \"Textual search terms to match.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"safeSearch\": - {\n \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Indicates whether the search results should include restricted content as - well as standard content.\",\n \"default\": \"moderate\",\n \"enum\": - [\n \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"location\": \"query\"\n },\n \"location\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on location of the video\"\n },\n - \ \"publishedBefore\": {\n \"description\": \"Filter - on resources published before this date.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"format\": \"google-datetime\"\n - \ },\n \"forDeveloper\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\"\n },\n \"forContentOwner\": - {\n \"description\": \"Search owned by a content owner.\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"channelType\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Add a filter on the channel search.\"\n },\n \"videoSyndicated\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"description\": \"Filter on syndicated videos.\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoDefinition\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"description\": \"Filter - on the definition of the videos.\",\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"location\": \"query\"\n },\n \"videoLicense\": - {\n \"description\": \"Filter on the license of the videos.\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"any\",\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"location\": \"query\"\n },\n + \"string\",\n \"location\": \"query\"\n },\n \"mine\": + {\n \"description\": \"Return the ChannelSections owned by the + authenticated user.\",\n \"location\": \"query\",\n \"type\": + \"boolean\"\n }\n },\n \"id\": \"youtube.channelSections.list\",\n + \ \"flatPath\": \"youtube/v3/channelSections\"\n }\n }\n + \ },\n \"channelBanners\": {\n \"methods\": {\n \"insert\": + {\n \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n + \ },\n \"parameterOrder\": [],\n \"mediaUpload\": + {\n \"maxSize\": \"6291456\",\n \"accept\": [\n \"image/jpeg\",\n + \ \"image/png\",\n \"application/octet-stream\"\n + \ ],\n \"protocols\": {\n \"resumable\": + {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n + \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n + \ \"multipart\": true\n }\n }\n },\n + \ \"supportsMediaUpload\": true,\n \"path\": \"youtube/v3/channelBanners/insert\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\"\n },\n \ \"channelId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Filter on resources belonging - to this channelId.\"\n },\n \"videoDuration\": {\n \"enum\": - [\n \"videoDurationUnspecified\",\n \"any\",\n - \ \"short\",\n \"medium\",\n \"long\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Filter on the duration of the - videos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter video search results based on their duration. - This is the default value.\",\n \"Only include videos that - are less than four minutes long.\",\n \"Only include videos - that are between four and 20 minutes long (inclusive).\",\n \"Only - include videos longer than 20 minutes.\"\n ]\n },\n - \ \"videoType\": {\n \"description\": \"Filter on videos - of a specific type.\",\n \"type\": \"string\",\n \"enum\": - [\n \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos.\",\n \"Only retrieve movies.\",\n - \ \"Only retrieve episodes of shows.\"\n ]\n },\n - \ \"locationRadius\": {\n \"description\": \"Filter - on distance from the location (specified above).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"order\": - {\n \"location\": \"query\",\n \"default\": \"relevance\",\n - \ \"enum\": [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Sort - order of the results.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ]\n },\n \"relevanceLanguage\": - {\n \"description\": \"Return results relevant to this language.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"forMine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Search - for the private videos of the authenticated user.\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"subscriptions\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"parameters\": {\n \"myRecentSubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"mySubscribers\": {\n \"description\": - \"Return the subscribers of the given channel owner.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"This parameter can only be used in a properly + \"string\",\n \"description\": \"Unused, channel_id is currently + derived from the security context of the requestor.\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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 @@ -1979,179 +1235,178 @@ interactions: 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.\"\n },\n \"forChannelId\": - {\n \"description\": \"Return the subscriptions to the subset - of these channels that the authenticated user is subscribed to.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"type\": \"integer\",\n \"minimum\": - \"0\",\n \"maximum\": \"50\"\n },\n \"id\": - {\n \"description\": \"Return the subscriptions with the given - IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"description\": \"Flag for returning the subscriptions - of the authenticated user.\",\n \"location\": \"query\"\n },\n - \ \"order\": {\n \"default\": \"relevance\",\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"description\": \"The order of the returned subscriptions\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the subscriptions of the given channel owner.\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.subscriptions.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"insert\": {\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"Subscription\"\n },\n \"response\": {\n \"$ref\": - \"Subscription\"\n },\n \"description\": \"Inserts a new - resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n }\n },\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\"\n },\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"description\": - \"Deletes a resource.\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.subscriptions.delete\"\n }\n }\n },\n \"liveBroadcasts\": - {\n \"methods\": {\n \"update\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"PUT\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n + \"query\"\n }\n },\n \"request\": {\n \"$ref\": + \"ChannelBannerResource\"\n },\n \"description\": \"Inserts + a new resource into this collection.\",\n \"id\": \"youtube.channelBanners.insert\",\n \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.update\",\n - \ \"description\": \"Updates an existing broadcast for the authenticated - user.\"\n },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n + \ ],\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n + \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"activities\": + {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"id\": \"youtube.activities.list\",\n + \ \"path\": \"youtube/v3/activities\",\n \"flatPath\": \"youtube/v3/activities\",\n + \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"pageToken\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"required\": + true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"mine\": + {\n \"type\": \"boolean\",\n \"location\": \"query\"\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"publishedBefore\": + {\n \"format\": \"google-datetime\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"publishedAfter\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"format\": \"google-datetime\"\n },\n \"maxResults\": + {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n + \ \"maximum\": \"50\",\n \"minimum\": \"0\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\",\n \"default\": \"5\",\n \"location\": + \"query\"\n },\n \"regionCode\": {\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"home\": + {\n \"location\": \"query\",\n \"type\": \"boolean\"\n + \ }\n },\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"description\": \"Retrieve the list of broadcasts - associated with the given channel.\",\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"broadcastStatus\": {\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ]\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n + \ ]\n }\n }\n },\n \"i18nLanguages\": {\n \"methods\": + {\n \"list\": {\n \"parameters\": {\n \"hl\": {\n + \ \"default\": \"en_US\",\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"part\": + {\n \"required\": true,\n \"type\": \"string\",\n \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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, status and - statistics.\"\n },\n \"broadcastType\": {\n \"description\": - \"Return only broadcasts with the selected type.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"default\": \"event\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"broadcastTypeFilterUnspecified\",\n \"all\",\n - \ \"event\",\n \"persistent\"\n ]\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": + \ \"description\": \"The *part* parameter specifies the i18nLanguage + resource properties that the API response will include. Set the parameter + value to snippet.\"\n }\n },\n \"path\": \"youtube/v3/i18nLanguages\",\n + \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"response\": + {\n \"$ref\": \"I18nLanguageListResponse\"\n },\n \"id\": + \"youtube.i18nLanguages.list\",\n \"httpMethod\": \"GET\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"flatPath\": \"youtube/v3/i18nLanguages\"\n }\n + \ }\n },\n \"comments\": {\n \"methods\": {\n \"markAsSpam\": + {\n \"id\": \"youtube.comments.markAsSpam\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"httpMethod\": + \"POST\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n \"parameters\": + {\n \"id\": {\n \"required\": true,\n \"repeated\": + true,\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Flags the comments with the given IDs as + spam in the caller's opinion.\"\n }\n },\n \"description\": + \"Expresses the caller's opinion that one or more comments should be flagged + as spam.\",\n \"parameterOrder\": [\n \"id\"\n ]\n + \ },\n \"insert\": {\n \"request\": {\n \"$ref\": + \"Comment\"\n },\n \"httpMethod\": \"POST\",\n \"path\": + \"youtube/v3/comments\",\n \"description\": \"Inserts a new resource + into this collection.\",\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"id\": \"youtube.comments.insert\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"part\": + {\n \"repeated\": true,\n \"description\": \"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.\",\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\"\n }\n },\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n + \ }\n },\n \"update\": {\n \"response\": {\n + \ \"$ref\": \"Comment\"\n },\n \"parameterOrder\": + [\n \"part\"\n ],\n \"request\": {\n \"$ref\": + \"Comment\"\n },\n \"flatPath\": \"youtube/v3/comments\",\n + \ \"path\": \"youtube/v3/comments\",\n \"parameters\": {\n + \ \"part\": {\n \"description\": \"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.\",\n \"location\": + \"query\",\n \"required\": true,\n \"repeated\": + true,\n \"type\": \"string\"\n }\n },\n \"description\": + \"Updates an existing resource.\",\n \"id\": \"youtube.comments.update\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"httpMethod\": \"PUT\"\n },\n \"list\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"id\": \"youtube.comments.list\",\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"path\": + \"youtube/v3/comments\",\n \"parameters\": {\n \"pageToken\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"part\": {\n \"location\": + \"query\",\n \"description\": \"The *part* parameter specifies + a comma-separated list of one or more comment resource properties that the + API response will include.\",\n \"repeated\": true,\n \"type\": + \"string\",\n \"required\": true\n },\n \"maxResults\": + {\n \"minimum\": \"1\",\n \"maximum\": \"100\",\n + \ \"format\": \"uint32\",\n \"type\": \"integer\",\n + \ \"location\": \"query\",\n \"default\": \"20\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\"\n },\n + \ \"parentId\": {\n \"type\": \"string\",\n \"description\": + \"Returns replies to the specified comment. Note, currently YouTube features + only one level of replies (ie replies to top level comments). However replies + to replies may be supported in the future.\",\n \"location\": + \"query\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"repeated\": + true,\n \"description\": \"Returns the comments with the given + IDs for One Platform.\"\n },\n \"textFormat\": {\n \"enum\": + [\n \"textFormatUnspecified\",\n \"html\",\n + \ \"plainText\"\n ],\n \"type\": \"string\",\n + \ \"default\": \"html\",\n \"location\": \"query\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Returns + the comments in HTML format. This is the default value.\",\n \"Returns + the comments in plain text format.\"\n ],\n \"description\": + \"The requested text format for the returned comments.\"\n }\n + \ },\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n + \ },\n \"parameterOrder\": [\n \"part\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/comments\"\n + \ },\n \"setModerationStatus\": {\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n + \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"description\": \"Sets the moderation status of one + or more comments.\",\n \"id\": \"youtube.comments.setModerationStatus\",\n + \ \"parameters\": {\n \"id\": {\n \"required\": + true,\n \"repeated\": true,\n \"description\": \"Modifies + the moderation status of the comments with the given IDs\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"banAuthor\": {\n \"location\": \"query\",\n \"description\": + \"If set to true the author of the comment gets added to the ban list. This + means all future comments of the author will autmomatically be rejected. Only + valid in combination with STATUS_REJECTED.\",\n \"default\": + \"false\",\n \"type\": \"boolean\"\n },\n \"moderationStatus\": + {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n + \ \"likelySpam\",\n \"rejected\"\n ],\n + \ \"description\": \"Specifies the requested moderation status. + Note, comments can be in statuses, which are not available through this call. + For example, this call does not allow to mark a comment as 'likely spam'. + Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, + MODERATION_STATUS_REJECTED.\",\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"The comment is available for public display.\",\n \"The + comment is awaiting review by a moderator.\",\n \"\",\n \"The + comment is unfit for display.\"\n ]\n }\n },\n + \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/comments/setModerationStatus\"\n + \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": + [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n + \ \"parameters\": {\n \"id\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Deletes a resource.\",\n + \ \"flatPath\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.delete\"\n + \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"reportAbuse\": + {\n \"id\": \"youtube.videos.reportAbuse\",\n \"flatPath\": + \"youtube/v3/videos/reportAbuse\",\n \"parameterOrder\": [],\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": \"*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 @@ -2160,21 +1415,84 @@ interactions: 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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\"\n },\n \"transition\": - {\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n },\n \"id\": {\n \"description\": - \"Broadcast to transition.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + be linked to the specified YouTube content owner.\"\n }\n },\n + \ \"path\": \"youtube/v3/videos/reportAbuse\",\n \"description\": + \"Report abuse for a video.\",\n \"httpMethod\": \"POST\",\n \"request\": + {\n \"$ref\": \"VideoAbuseReport\"\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n + \ },\n \"getRating\": {\n \"response\": {\n \"$ref\": + \"VideoGetRatingResponse\"\n },\n \"description\": \"Retrieves + the ratings that the authorized user gave to a list of specified videos.\",\n + \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.videos.getRating\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"required\": true\n + \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n + \ \"path\": \"youtube/v3/videos/getRating\",\n \"flatPath\": + \"youtube/v3/videos/getRating\"\n },\n \"rate\": {\n \"id\": + \"youtube.videos.rate\",\n \"path\": \"youtube/v3/videos/rate\",\n + \ \"flatPath\": \"youtube/v3/videos/rate\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"POST\",\n \"description\": \"Adds a like + or dislike rating to a video or removes a rating from a video.\",\n \"parameterOrder\": + [\n \"id\",\n \"rating\"\n ],\n \"parameters\": + {\n \"rating\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"required\": true\n + \ },\n \"id\": {\n \"type\": \"string\",\n + \ \"required\": true,\n \"location\": \"query\"\n + \ }\n }\n },\n \"delete\": {\n \"path\": + \"youtube/v3/videos\",\n \"parameters\": {\n \"id\": {\n + \ \"type\": \"string\",\n \"location\": \"query\",\n + \ \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"httpMethod\": \"DELETE\",\n + \ \"flatPath\": \"youtube/v3/videos\",\n \"id\": \"youtube.videos.delete\",\n + \ \"description\": \"Deletes a resource.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"parameterOrder\": [\n \"id\"\n ]\n },\n + \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": + {\n \"myRating\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"The entity is liked.\",\n \"The + entity is disliked.\"\n ],\n \"description\": \"Return + videos liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\"\n + \ },\n \"maxResults\": {\n \"location\": + \"query\",\n \"minimum\": \"1\",\n \"format\": \"uint32\",\n + \ \"default\": \"5\",\n \"type\": \"integer\",\n + \ \"maximum\": \"50\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -2185,8 +1503,114 @@ interactions: provide authentication credentials for each individual channel. The CMS account that the user authenticates with must be linked to the specified YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"This parameter can only be used in a properly + \"query\"\n },\n \"pageToken\": {\n \"description\": + \"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.\",\n + \ \"location\": \"query\",\n \"type\": \"string\"\n + \ },\n \"maxHeight\": {\n \"minimum\": \"72\",\n + \ \"location\": \"query\",\n \"maximum\": \"8192\",\n + \ \"type\": \"integer\",\n \"format\": \"int32\"\n + \ },\n \"maxWidth\": {\n \"description\": + \"Return the player with maximum height specified in\",\n \"location\": + \"query\",\n \"minimum\": \"72\",\n \"maximum\": + \"8192\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n + \ },\n \"regionCode\": {\n \"description\": + \"Use a chart that is specific to the specified region\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"id\": + {\n \"description\": \"Return videos with the given ids.\",\n + \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"part\": {\n \"required\": + true,\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"repeated\": true,\n \"description\": \"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.\"\n + \ },\n \"locale\": {\n \"type\": \"string\",\n + \ \"location\": \"query\"\n },\n \"videoCategoryId\": + {\n \"description\": \"Use chart that is specific to the specified + video category\",\n \"location\": \"query\",\n \"type\": + \"string\",\n \"default\": \"0\"\n },\n \"hl\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Stands for \\\"host language\\\". Specifies + the localization language of the metadata to be filled into snippet.localized. + The field is filled with the default metadata if there is no localization + in the specified language. The parameter value must be a language code included + in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n + \ },\n \"chart\": {\n \"enum\": [\n \"chartUnspecified\",\n + \ \"mostPopular\"\n ],\n \"description\": + \"Return the videos that are in the specified chart.\",\n \"type\": + \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Return the most popular videos + for the specified content region and video category.\"\n ]\n + \ }\n },\n \"description\": \"Retrieves a list + of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"path\": \"youtube/v3/videos\",\n \"response\": {\n \"$ref\": + \"VideoListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.videos.list\"\n },\n \"update\": + {\n \"id\": \"youtube.videos.update\",\n \"flatPath\": \"youtube/v3/videos\",\n + \ \"response\": {\n \"$ref\": \"Video\"\n },\n + \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": + \"Video\"\n },\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"description\": \"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.\",\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*Note:* This parameter is intended exclusively + for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates + that the request's authorization credentials identify a YouTube CMS user who + is acting on behalf of the content owner specified in the parameter value. + This parameter is intended for YouTube content partners that own and manage + many different YouTube channels. It allows content owners to authenticate + once and get access to all their video and channel data, without having to + provide authentication credentials for each individual channel. The actual + CMS account that the user authenticates with must be linked to the specified + YouTube content owner.\"\n }\n },\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"path\": \"youtube/v3/videos\",\n \"description\": \"Updates + an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n + \ ]\n },\n \"insert\": {\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Inserts a new resource into this + collection.\",\n \"path\": \"youtube/v3/videos\",\n \"httpMethod\": + \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n + \ \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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 @@ -2200,51 +1624,409 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"broadcastStatus\": {\n \"type\": - \"string\",\n \"description\": \"The status to which the broadcast - is going to transition.\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Start testing the broadcast. YouTube transmits video to - the broadcast's monitor stream. Note that you can only transition a broadcast - to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Transition a broadcast to a given - status.\",\n \"path\": \"youtube/v3/liveBroadcasts/transition\"\n - \ },\n \"bind\": {\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"streamId\": {\n \"location\": - \"query\",\n \"description\": \"Stream to bind, if not set unbind - the current one.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Broadcast to bind to the stream\"\n },\n \"onBehalfOfContentOwner\": + for each separate channel.\"\n },\n \"part\": {\n \"repeated\": + true,\n \"required\": true,\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"autoLevels\": {\n \"description\": + \"Should auto-levels be applied to the upload.\",\n \"type\": + \"boolean\",\n \"location\": \"query\"\n },\n \"notifySubscribers\": {\n \"location\": \"query\",\n \"description\": - \"*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 + \"Notify the channel subscribers about the new video. As default, the notification + is enabled.\",\n \"type\": \"boolean\",\n \"default\": + \"true\"\n },\n \"stabilize\": {\n \"type\": + \"boolean\",\n \"description\": \"Should stabilize be applied + to the upload.\",\n \"location\": \"query\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/videos\",\n \"mediaUpload\": + {\n \"maxSize\": \"274877906944\",\n \"protocols\": + {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/videos\",\n + \ \"multipart\": true\n },\n \"resumable\": + {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": + true\n }\n },\n \"accept\": [\n \"video/*\",\n + \ \"application/octet-stream\"\n ]\n },\n + \ \"id\": \"youtube.videos.insert\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"Video\"\n },\n \"supportsMediaUpload\": true,\n \"request\": + {\n \"$ref\": \"Video\"\n }\n }\n }\n },\n + \ \"videoAbuseReportReasons\": {\n \"methods\": {\n \"list\": + {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n + \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"flatPath\": + \"youtube/v3/videoAbuseReportReasons\",\n \"description\": \"Retrieves + a list of resources, possibly filtered.\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"VideoAbuseReportReasonListResponse\"\n },\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"description\": + \"The *part* parameter specifies the videoCategory resource parts that the + API response will include. Supported values are id and snippet.\",\n \"required\": + true,\n \"repeated\": true,\n \"type\": \"string\"\n + \ },\n \"hl\": {\n \"type\": \"string\",\n + \ \"default\": \"en-US\",\n \"location\": \"query\"\n + \ }\n }\n }\n }\n },\n \"playlistItems\": + {\n \"methods\": {\n \"update\": {\n \"description\": + \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": + true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"*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.\"\n }\n },\n \"httpMethod\": \"PUT\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"id\": + \"youtube.playlistItems.update\",\n \"response\": {\n \"$ref\": + \"PlaylistItem\"\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n }\n + \ },\n \"insert\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Inserts a new resource into this + collection.\",\n \"parameters\": {\n \"part\": {\n \"location\": + \"query\",\n \"required\": true,\n \"type\": \"string\",\n + \ \"description\": \"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.\",\n \"repeated\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*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.\"\n }\n },\n + \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n + \ \"id\": \"youtube.playlistItems.insert\",\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n }\n + \ },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n + \ },\n \"description\": \"Retrieves a list of resources, + possibly filtered.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n + \ \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"parameters\": {\n \"playlistId\": + {\n \"type\": \"string\",\n \"description\": \"Return + the playlist items within the given playlist.\",\n \"location\": + \"query\"\n },\n \"maxResults\": {\n \"maximum\": + \"50\",\n \"location\": \"query\",\n \"format\": + \"uint32\",\n \"minimum\": \"0\",\n \"default\": + \"5\",\n \"type\": \"integer\",\n \"description\": + \"The *maxResults* parameter specifies the maximum number of items that should + be returned in the result set.\"\n },\n \"videoId\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n + \ \"description\": \"Return the playlist items associated with + the given video ID.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\"\n },\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"required\": true,\n + \ \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n + \ },\n \"id\": \"youtube.playlistItems.list\",\n \"httpMethod\": + \"GET\"\n },\n \"delete\": {\n \"path\": \"youtube/v3/playlistItems\",\n + \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"description\": \"Deletes a resource.\",\n \"httpMethod\": + \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"required\": true\n + \ }\n },\n \"parameterOrder\": [\n \"id\"\n + \ ],\n \"id\": \"youtube.playlistItems.delete\"\n }\n + \ }\n },\n \"thumbnails\": {\n \"methods\": {\n \"set\": + {\n \"parameters\": {\n \"videoId\": {\n \"required\": + true,\n \"type\": \"string\",\n \"description\": + \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n + \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"*Note:* This parameter is intended exclusively for YouTube content partners. + The *onBehalfOfContentOwner* parameter indicates that the request's authorization + credentials identify a YouTube CMS user who is acting on behalf of the content + owner specified in the parameter value. This parameter is intended for YouTube + content partners that own and manage many different YouTube channels. It allows + content owners to authenticate once and get access to all their video and + channel data, without having to provide authentication credentials for each + individual channel. The actual CMS account that the user authenticates with + must be linked to the specified YouTube content owner.\",\n \"type\": + \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n + \ \"path\": \"youtube/v3/thumbnails/set\",\n \"httpMethod\": + \"POST\",\n \"mediaUpload\": {\n \"maxSize\": \"2097152\",\n + \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n + \ \"application/octet-stream\"\n ],\n \"protocols\": + {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n + \ \"multipart\": true\n },\n \"simple\": + {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n + \ }\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n + \ },\n \"supportsMediaUpload\": true,\n \"parameterOrder\": + [\n \"videoId\"\n ],\n \"description\": \"As + this is not an insert in a strict sense (it supports uploading/setting of + a thumbnail for multiple videos, which doesn't result in creation of a single + resource), I use a custom verb here.\",\n \"id\": \"youtube.thumbnails.set\"\n + \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"update\": + {\n \"parameters\": {\n \"part\": {\n \"description\": + \"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.\",\n \"required\": + true,\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": + {\n \"location\": \"query\",\n \"description\": + \"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.\",\n \"type\": \"string\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/channels\",\n \"description\": + \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": + \"Channel\"\n },\n \"path\": \"youtube/v3/channels\",\n + \ \"id\": \"youtube.channels.update\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"request\": {\n \"$ref\": + \"Channel\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"httpMethod\": \"PUT\"\n },\n \"list\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Retrieves a list of resources, possibly filtered.\",\n \"path\": + \"youtube/v3/channels\",\n \"response\": {\n \"$ref\": + \"ChannelListResponse\"\n },\n \"id\": \"youtube.channels.list\",\n + \ \"flatPath\": \"youtube/v3/channels\",\n \"scopes\": [\n + \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n + \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n + \ ],\n \"parameters\": {\n \"categoryId\": {\n + \ \"location\": \"query\",\n \"description\": \"Return + the channels within the specified guide category ID.\",\n \"type\": + \"string\"\n },\n \"maxResults\": {\n \"format\": + \"uint32\",\n \"location\": \"query\",\n \"minimum\": + \"0\",\n \"default\": \"5\",\n \"type\": \"integer\",\n + \ \"description\": \"The *maxResults* parameter specifies the + maximum number of items that should be returned in the result set.\",\n \"maximum\": + \"50\"\n },\n \"managedByMe\": {\n \"type\": + \"boolean\",\n \"location\": \"query\",\n \"description\": + \"Return the channels managed by the authenticated user.\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"repeated\": + true,\n \"description\": \"Return the channels with the specified + IDs.\",\n \"location\": \"query\"\n },\n \"forUsername\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Return the channel associated with a YouTube + username.\"\n },\n \"mine\": {\n \"type\": + \"boolean\",\n \"description\": \"Return the ids of channels + owned by the authenticated user.\",\n \"location\": \"query\"\n + \ },\n \"hl\": {\n \"type\": \"string\",\n + \ \"location\": \"query\",\n \"description\": \"Stands + for \\\"host language\\\". Specifies the localization language of the metadata + to be filled into snippet.localized. The field is filled with the default + metadata if there is no localization in the specified language. The parameter + value must be a language code included in the list returned by the i18nLanguages.list + method (e.g. en_US, es_MX).\"\n },\n \"part\": {\n \"type\": + \"string\",\n \"required\": true,\n \"repeated\": + true,\n \"location\": \"query\",\n \"description\": + \"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.\"\n },\n \"mySubscribers\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"description\": + \"Return the channels subscribed to the authenticated user\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n }\n },\n \"httpMethod\": \"GET\"\n + \ }\n }\n },\n \"watermarks\": {\n \"methods\": {\n + \ \"unset\": {\n \"httpMethod\": \"POST\",\n \"flatPath\": + \"youtube/v3/watermarks/unset\",\n \"path\": \"youtube/v3/watermarks/unset\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"*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.\"\n },\n \"channelId\": + {\n \"location\": \"query\",\n \"required\": true,\n + \ \"type\": \"string\"\n }\n },\n \"id\": + \"youtube.watermarks.unset\",\n \"description\": \"Allows removal + of channel watermark.\",\n \"parameterOrder\": [\n \"channelId\"\n + \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ]\n },\n \"set\": {\n \"path\": \"youtube/v3/watermarks/set\",\n + \ \"httpMethod\": \"POST\",\n \"mediaUpload\": {\n \"maxSize\": + \"10485760\",\n \"accept\": [\n \"image/jpeg\",\n + \ \"image/png\",\n \"application/octet-stream\"\n + \ ],\n \"protocols\": {\n \"simple\": {\n + \ \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": + true\n },\n \"resumable\": {\n \"multipart\": + true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n + \ }\n }\n },\n \"parameterOrder\": + [\n \"channelId\"\n ],\n \"parameters\": {\n + \ \"channelId\": {\n \"type\": \"string\",\n \"required\": + true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": + {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n }\n },\n \"request\": {\n \"$ref\": + \"InvideoBranding\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"id\": \"youtube.watermarks.set\",\n \"description\": + \"Allows upload of watermark image and setting it for a channel.\",\n \"flatPath\": + \"youtube/v3/watermarks/set\",\n \"supportsMediaUpload\": true\n + \ }\n }\n },\n \"subscriptions\": {\n \"methods\": {\n + \ \"insert\": {\n \"httpMethod\": \"POST\",\n \"parameters\": + {\n \"part\": {\n \"location\": \"query\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"required\": + true,\n \"description\": \"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.\"\n }\n + \ },\n \"description\": \"Inserts a new resource into this + collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"request\": {\n \"$ref\": \"Subscription\"\n + \ },\n \"response\": {\n \"$ref\": \"Subscription\"\n + \ },\n \"path\": \"youtube/v3/subscriptions\",\n \"flatPath\": + \"youtube/v3/subscriptions\",\n \"parameterOrder\": [\n \"part\"\n + \ ],\n \"id\": \"youtube.subscriptions.insert\"\n },\n + \ \"list\": {\n \"id\": \"youtube.subscriptions.list\",\n \"response\": + {\n \"$ref\": \"SubscriptionListResponse\"\n },\n \"path\": + \"youtube/v3/subscriptions\",\n \"description\": \"Retrieves a list + of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n + \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n + \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n + \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": + {\n \"type\": \"integer\",\n \"description\": \"The + *maxResults* parameter specifies the maximum number of items that should be + returned in the result set.\",\n \"format\": \"uint32\",\n \"minimum\": + \"0\",\n \"location\": \"query\",\n \"maximum\": + \"50\",\n \"default\": \"5\"\n },\n \"forChannelId\": {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"Return the subscriptions to the subset of + these channels that the authenticated user is subscribed to.\"\n },\n + \ \"myRecentSubscribers\": {\n \"location\": \"query\",\n + \ \"type\": \"boolean\"\n },\n \"mine\": + {\n \"location\": \"query\",\n \"type\": \"boolean\",\n + \ \"description\": \"Flag for returning the subscriptions of the + authenticated user.\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"description\": \"Return the subscriptions with the given IDs + for Stubby or Apiary.\"\n },\n \"channelId\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"Return the subscriptions of the given channel owner.\"\n },\n + \ \"order\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"Sort by relevance.\",\n \"Sort by order of + activity.\",\n \"Sort alphabetically.\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The + order of the returned subscriptions\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n + \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n + \ ],\n \"default\": \"relevance\",\n \"location\": + \"query\"\n },\n \"pageToken\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"location\": \"query\",\n \ \"description\": \"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 @@ -2259,18 +2041,56 @@ interactions: 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.\"\n }\n },\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"id\": \"youtube.liveBroadcasts.bind\",\n - \ \"description\": \"Bind a broadcast to a stream.\"\n },\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n + for each separate channel.\"\n },\n \"part\": {\n \"repeated\": + true,\n \"type\": \"string\",\n \"required\": true,\n + \ \"description\": \"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.\",\n \"location\": + \"query\"\n },\n \"mySubscribers\": {\n \"location\": + \"query\",\n \"type\": \"boolean\",\n \"description\": + \"Return the subscribers of the given channel owner.\"\n }\n },\n + \ \"parameterOrder\": [\n \"part\"\n ]\n },\n + \ \"delete\": {\n \"description\": \"Deletes a resource.\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"id\": \"youtube.subscriptions.delete\",\n \"path\": + \"youtube/v3/subscriptions\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": + \"youtube/v3/subscriptions\",\n \"parameters\": {\n \"id\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": + [\n \"id\"\n ]\n }\n }\n },\n \"liveChatBans\": + {\n \"methods\": {\n \"insert\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/liveChat/bans\",\n \"request\": + {\n \"$ref\": \"LiveChatBan\"\n },\n \"id\": + \"youtube.liveChatBans.insert\",\n \"parameters\": {\n \"part\": + {\n \"required\": true,\n \"description\": \"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.\",\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\"\n }\n },\n \"httpMethod\": \"POST\",\n + \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n },\n + \ \"description\": \"Inserts a new resource into this collection.\"\n + \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.liveChatBans.delete\",\n \"description\": + \"Deletes a chat ban.\",\n \"parameters\": {\n \"id\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"required\": true\n }\n },\n \"httpMethod\": + \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"path\": + \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": [\n \"id\"\n + \ ]\n }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": + {\n \"delete\": {\n \"description\": \"Delete a given broadcast.\",\n + \ \"id\": \"youtube.liveBroadcasts.delete\",\n \"flatPath\": + \"youtube/v3/liveBroadcasts\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n \ \"description\": \"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 @@ -2286,7 +2106,8 @@ interactions: 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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"*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. @@ -2295,26 +2116,28 @@ interactions: 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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter serves two purposes + owner.\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"required\": + true,\n \"description\": \"Broadcast to delete.\"\n }\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"DELETE\"\n },\n + \ \"insert\": {\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"path\": + \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"POST\",\n \"flatPath\": + \"youtube/v3/liveBroadcasts\",\n \"description\": \"Inserts a new + stream for the authenticated user.\",\n \"parameters\": {\n \"part\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"description\": \"Delete a given broadcast.\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": + and status.\",\n \"required\": true,\n \"location\": + \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -2323,9 +2146,10 @@ interactions: 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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"This parameter can only be used in a properly + be linked to the specified YouTube content owner.\",\n \"type\": + \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n + \ \"description\": \"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 @@ -2339,41 +2163,26 @@ interactions: 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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"required\": - true,\n \"description\": \"Broadcast to delete.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"insertCuepoint\": {\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Cuepoint\"\n - \ },\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Broadcast to insert ads to, - or equivalently `external_video_id` for internal use.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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 + for each separate channel.\"\n }\n },\n \"parameterOrder\": + [\n \"part\"\n ]\n },\n \"insertCuepoint\": + {\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"parameters\": + {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + for each separate channel.\",\n \"type\": \"string\"\n },\n + \ \"onBehalfOfContentOwner\": {\n \"description\": \"*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 @@ -2382,4386 +2191,1059 @@ interactions: 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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Insert cuepoints in a broadcast\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/cuepoint\",\n \"parameterOrder\": [],\n - \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"members\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"MemberListResponse\"\n },\n \"flatPath\": - \"youtube/v3/members\",\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of members that match the request criteria for a channel.\",\n \"parameters\": - {\n \"maxResults\": {\n \"maximum\": \"1000\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\"\n - \ },\n \"hasAccessToLevel\": {\n \"location\": - \"query\",\n \"description\": \"Filter members in the results - set to the ones that have access to a level.\",\n \"type\": \"string\"\n - \ },\n \"filterByMemberChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"mode\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"default\": - \"all_current\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ]\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"required\": true\n }\n },\n \"id\": - \"youtube.members.list\",\n \"path\": \"youtube/v3/members\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ]\n }\n }\n },\n \"i18nLanguages\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.i18nLanguages.list\",\n \"parameters\": {\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"default\": \"en_US\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the i18nLanguage resource properties that the API - response will include. Set the parameter value to snippet.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/i18nLanguages\"\n - \ }\n }\n }\n },\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"description\": \"The YouTube Data API v3 is an API that provides access - to YouTube data, such as videos, playlists, and channels.\",\n \"revision\": - \"20230220\",\n \"fullyEncodeReservedExpansion\": true,\n \"discoveryVersion\": - \"v1\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"schemas\": {\n \"VideoContentDetailsRegionRestriction\": {\n \"description\": - \"DEPRECATED Region restriction of the video.\",\n \"properties\": {\n - \ \"blocked\": {\n \"description\": \"A list of region codes - that identify countries where the video is blocked. If this property is present - and a country is not listed in its value, then the video is viewable in that - country. If this property is present and contains an empty list, the video - is viewable in all countries.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"allowed\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\",\n \"type\": \"array\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoContentDetailsRegionRestriction\"\n - \ },\n \"ActivityContentDetailsSocial\": {\n \"id\": \"ActivityContentDetailsSocial\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"imageUrl\": - {\n \"type\": \"string\",\n \"description\": \"An image - of the post's author.\"\n },\n \"referenceUrl\": {\n \"description\": - \"The URL of the social network post.\",\n \"type\": \"string\"\n - \ },\n \"resourceId\": {\n \"description\": \"The resourceId - object encapsulates information that identifies the resource associated with - a social network post.\",\n \"$ref\": \"ResourceId\"\n },\n - \ \"author\": {\n \"description\": \"The author of the social - network post.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the social network.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ]\n }\n },\n \"description\": - \"Details about a social network post.\"\n },\n \"CommentSnippet\": - {\n \"properties\": {\n \"likeCount\": {\n \"description\": - \"The total number of likes this comment has received.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"moderationStatus\": - {\n \"description\": \"The comment's moderation status. Will not - be set if the comments were requested through the id filter.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment is - unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ]\n },\n \"updatedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the comment was last updated.\"\n },\n \"parentId\": - {\n \"type\": \"string\",\n \"description\": \"The unique - id of the parent comment, only set for replies.\"\n },\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"canRate\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether the - current viewer can rate this comment.\"\n },\n \"viewerRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ],\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"description\": \"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.\"\n },\n \"textDisplay\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comment refers to, if any.\"\n },\n \"textOriginal\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the comment - was originally published.\",\n \"type\": \"string\"\n },\n - \ \"authorChannelId\": {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"authorChannelUrl\": {\n \"description\": \"Link - to the author's YouTube channel, if any.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a comment, such as its author and text.\",\n \"id\": \"CommentSnippet\"\n - \ },\n \"VideoMonetizationDetails\": {\n \"properties\": {\n \"access\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - value of access indicates whether the video can be monetized or not.\"\n }\n - \ },\n \"description\": \"Details about monetization of a YouTube - Video.\",\n \"type\": \"object\",\n \"id\": \"VideoMonetizationDetails\"\n - \ },\n \"Caption\": {\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"default\": \"youtube#caption\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the caption track.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Caption\",\n - \ \"description\": \"A *caption* resource represents a YouTube caption - track. A caption track is associated with exactly one YouTube video.\"\n },\n - \ \"MembershipsLevelListResponse\": {\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"kind\": {\n \"default\": - \"youtube#membershipsLevelListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of pricing levels offered by a creator to the fans.\"\n }\n },\n - \ \"id\": \"MembershipsLevelListResponse\",\n \"type\": \"object\"\n - \ },\n \"PlaylistItemStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"This resource's privacy status.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"description\": \"Information about the playlist item's privacy - status.\",\n \"id\": \"PlaylistItemStatus\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"properties\": {\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The value that YouTube uses to uniquely - identify the playlist.\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information about the resource that was added to the playlist.\"\n },\n - \ \"playlistItemId\": {\n \"description\": \"ID of the item - within the playlist.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"Information about a new playlist item.\"\n },\n - \ \"CommentThreadSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a comment thread.\",\n \"id\": \"CommentThreadSnippet\",\n - \ \"properties\": {\n \"topLevelComment\": {\n \"$ref\": - \"Comment\",\n \"description\": \"The top level comment of this thread.\"\n - \ },\n \"canReply\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n - \ \"totalReplyCount\": {\n \"description\": \"The total number - of replies (not including the top level comment).\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"videoId\": - {\n \"description\": \"The ID of the video the comments refer to, - if any. No video_id implies a channel discussion comment.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"isPublic\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the thread (and therefore all its comments) is visible to all YouTube users.\"\n - \ }\n }\n },\n \"ChannelBannerResource\": {\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\"\n },\n \"etag\": - {\n \"type\": \"string\"\n },\n \"url\": {\n \"description\": - \"The URL of this banner image.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelBannerResource\",\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\",\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastStatistics\": {\n \"properties\": - {\n \"totalChatCount\": {\n \"description\": \"The total number - of live chat messages currently on the broadcast. The property and its value - will be present if the broadcast is public, has the live chat feature enabled, - and has at least one message. Note that this field will not be filled after - the broadcast ends. So this property would not identify the number of chat - messages for an archived video of a completed live broadcast.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"concurrentViewers\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n }\n },\n - \ \"description\": \"Statistics about the live broadcast. These represent - a snapshot of the values at the time of the request. Statistics are only returned - for live broadcasts.\",\n \"type\": \"object\",\n \"id\": \"LiveBroadcastStatistics\"\n - \ },\n \"ChannelListResponse\": {\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#channelListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"etag\": {\n \"description\": + be linked to the specified YouTube content owner.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"part\": + {\n \"repeated\": true,\n \"location\": \"query\",\n + \ \"description\": \"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.\",\n \"type\": \"string\"\n + \ },\n \"id\": {\n \"description\": \"Broadcast + to insert ads to, or equivalently `external_video_id` for internal use.\",\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ }\n },\n \"response\": {\n \"$ref\": + \"Cuepoint\"\n },\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n + \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n + \ ],\n \"description\": \"Insert cuepoints in a broadcast\",\n + \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"parameterOrder\": + [],\n \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": + \"Cuepoint\"\n }\n },\n \"transition\": {\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"id\": \"youtube.liveBroadcasts.transition\",\n \"parameters\": + {\n \"id\": {\n \"description\": \"Broadcast to transition.\",\n + \ \"required\": true,\n \"location\": \"query\",\n + \ \"type\": \"string\"\n },\n \"broadcastStatus\": + {\n \"enumDescriptions\": [\n \"\",\n \"Start + testing the broadcast. YouTube transmits video to the broadcast's monitor + stream. Note that you can only transition a broadcast to the testing state + if its contentDetails.monitorStream.enableMonitorStream property is set to + true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The + broadcast is over. YouTube stops transmitting video.\"\n ],\n + \ \"required\": true,\n \"description\": \"The status + to which the broadcast is going to transition.\",\n \"enum\": + [\n \"statusUnspecified\",\n \"testing\",\n + \ \"live\",\n \"complete\"\n ],\n + \ \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"part\": {\n \"repeated\": true,\n + \ \"location\": \"query\",\n \"required\": true,\n + \ \"description\": \"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.\",\n \"type\": \"string\"\n + \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": + \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n },\n \"onBehalfOfContentOwner\": + {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n + \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n + \ \"description\": \"Transition a broadcast to a given status.\",\n + \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n + \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n + \ \"part\"\n ]\n },\n \"bind\": {\n \"response\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameterOrder\": + [\n \"id\",\n \"part\"\n ],\n \"flatPath\": + \"youtube/v3/liveBroadcasts/bind\",\n \"httpMethod\": \"POST\",\n + \ \"description\": \"Bind a broadcast to a stream.\",\n \"id\": + \"youtube.liveBroadcasts.bind\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n + \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n + \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameters\": + {\n \"onBehalfOfContentOwner\": {\n \"location\": + \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"required\": true,\n + \ \"location\": \"query\",\n \"description\": \"Broadcast + to bind to the stream\"\n },\n \"streamId\": {\n \"type\": + \"string\",\n \"description\": \"Stream to bind, if not set unbind + the current one.\",\n \"location\": \"query\"\n },\n + \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": + \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"part\": {\n \"description\": + \"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.\",\n \"type\": \"string\",\n \"repeated\": + true,\n \"location\": \"query\",\n \"required\": + true\n }\n }\n },\n \"list\": {\n \"httpMethod\": + \"GET\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": + [\n \"part\"\n ],\n \"response\": {\n \"$ref\": + \"LiveBroadcastListResponse\"\n },\n \"id\": \"youtube.liveBroadcasts.list\",\n + \ \"parameters\": {\n \"mine\": {\n \"location\": + \"query\",\n \"type\": \"boolean\"\n },\n \"pageToken\": + {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": + \"string\"\n },\n \"id\": {\n \"location\": + \"query\",\n \"description\": \"Return broadcasts with the given + ids from Stubby or Apiary.\",\n \"type\": \"string\",\n \"repeated\": + true\n },\n \"broadcastType\": {\n \"default\": + \"event\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n + \ \"all\",\n \"event\",\n \"persistent\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n + \ \"Return all broadcasts.\",\n \"Return only + scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n + \ ],\n \"location\": \"query\",\n \"description\": + \"Return only broadcasts with the selected type.\",\n \"type\": + \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": + \"*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.\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": + {\n \"minimum\": \"0\",\n \"format\": \"uint32\",\n + \ \"default\": \"5\",\n \"description\": \"The *maxResults* + parameter specifies the maximum number of items that should be returned in + the result set.\",\n \"maximum\": \"50\",\n \"location\": + \"query\",\n \"type\": \"integer\"\n },\n \"part\": + {\n \"repeated\": true,\n \"type\": \"string\",\n + \ \"description\": \"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, status and statistics.\",\n \"location\": + \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": + {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"broadcastStatus\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": + [\n \"\",\n \"Return all broadcasts.\",\n \"Return + current live broadcasts.\",\n \"Return broadcasts that have + not yet started.\",\n \"Return broadcasts that have already + ended.\"\n ],\n \"description\": \"Return broadcasts + with a certain status, e.g. active broadcasts.\",\n \"enum\": + [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n + \ \"active\",\n \"upcoming\",\n \"completed\"\n + \ ]\n }\n },\n \"description\": \"Retrieve + the list of broadcasts associated with the given channel.\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n + \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n + \ \"path\": \"youtube/v3/liveBroadcasts\"\n },\n \"update\": + {\n \"parameterOrder\": [\n \"part\"\n ],\n \"description\": + \"Updates an existing broadcast for the authenticated user.\",\n \"id\": + \"youtube.liveBroadcasts.update\",\n \"httpMethod\": \"PUT\",\n \"scopes\": + [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n + \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n + \ },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": + {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n + \ \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n \"location\": + \"query\",\n \"type\": \"string\",\n \"repeated\": + true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": + \"string\",\n \"location\": \"query\",\n \"description\": + \"*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.\"\n }\n },\n + \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"request\": + {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": + \"youtube/v3/liveBroadcasts\"\n }\n }\n },\n \"tests\": + {\n \"methods\": {\n \"insert\": {\n \"parameterOrder\": + [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n + \ ],\n \"id\": \"youtube.tests.insert\",\n \"path\": + \"youtube/v3/tests\",\n \"request\": {\n \"$ref\": \"TestItem\"\n + \ },\n \"parameters\": {\n \"part\": {\n \"type\": + \"string\",\n \"repeated\": true,\n \"location\": + \"query\",\n \"required\": true\n },\n \"externalChannelId\": + {\n \"location\": \"query\",\n \"type\": \"string\"\n + \ }\n },\n \"httpMethod\": \"POST\",\n \"description\": + \"POST method.\",\n \"flatPath\": \"youtube/v3/tests\",\n \"response\": + {\n \"$ref\": \"TestItem\"\n }\n }\n }\n }\n + \ },\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n + \ \"protocol\": \"rest\",\n \"version\": \"v3\",\n \"kind\": \"discovery#restDescription\",\n + \ \"title\": \"YouTube Data API v3\",\n \"canonicalName\": \"YouTube\",\n + \ \"basePath\": \"\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n + \ \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.force-ssl\": + {\n \"description\": \"See, edit, and permanently delete your YouTube + videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": + {\n \"description\": \"Manage your YouTube videos\"\n },\n + \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": + \"View and manage your assets and associated content on YouTube\"\n },\n + \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": + \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": + {\n \"description\": \"See a list of your current active channel + members, their current level, and when they became a member\"\n },\n + \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": + \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": + {\n \"description\": \"View private information of your YouTube channel + relevant during the audit process with a YouTube partner\"\n }\n }\n + \ }\n },\n \"servicePath\": \"\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n + \ \"discoveryVersion\": \"v1\",\n \"batchPath\": \"batch\",\n \"ownerDomain\": + \"google.com\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n + \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n + \ },\n \"ownerName\": \"Google\",\n \"parameters\": {\n \"upload_protocol\": + {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": + \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n },\n + \ \"fields\": {\n \"description\": \"Selector specifying which fields + to include in a partial response.\",\n \"type\": \"string\",\n \"location\": + \"query\"\n },\n \"key\": {\n \"type\": \"string\",\n \"location\": + \"query\",\n \"description\": \"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.\"\n },\n \"$.xgafv\": {\n \"enumDescriptions\": + [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"type\": + \"string\",\n \"description\": \"V1 error format.\",\n \"enum\": + [\n \"1\",\n \"2\"\n ],\n \"location\": \"query\"\n + \ },\n \"oauth_token\": {\n \"description\": \"OAuth 2.0 token for + the current user.\",\n \"type\": \"string\",\n \"location\": \"query\"\n + \ },\n \"prettyPrint\": {\n \"description\": \"Returns response + with indentations and line breaks.\",\n \"location\": \"query\",\n \"type\": + \"boolean\",\n \"default\": \"true\"\n },\n \"quotaUser\": {\n + \ \"location\": \"query\",\n \"type\": \"string\",\n \"description\": + \"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.\"\n + \ },\n \"callback\": {\n \"description\": \"JSONP\",\n \"location\": + \"query\",\n \"type\": \"string\"\n },\n \"alt\": {\n \"enum\": + [\n \"json\",\n \"media\",\n \"proto\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"Responses with Content-Type + of application/json\",\n \"Media download with context-dependent Content-Type\",\n + \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n + \ \"location\": \"query\",\n \"description\": \"Data format for response.\",\n + \ \"default\": \"json\"\n },\n \"access_token\": {\n \"type\": + \"string\",\n \"description\": \"OAuth access token.\",\n \"location\": + \"query\"\n },\n \"uploadType\": {\n \"description\": \"Legacy + upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"type\": + \"string\",\n \"location\": \"query\"\n }\n },\n \"name\": \"youtube\",\n + \ \"fullyEncodeReservedExpansion\": true,\n \"description\": \"The YouTube + Data API v3 is an API that provides access to YouTube data, such as videos, + playlists, and channels.\",\n \"schemas\": {\n \"TestItem\": {\n \"properties\": + {\n \"id\": {\n \"type\": \"string\"\n },\n \"gaia\": + {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n + \ \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n + \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"TestItem\"\n + \ },\n \"LiveStreamListResponse\": {\n \"type\": \"object\",\n \"properties\": + {\n \"items\": {\n \"items\": {\n \"$ref\": \"LiveStream\"\n + \ },\n \"description\": \"A list of live streams that match + the request criteria.\",\n \"type\": \"array\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n + \ \"$ref\": \"TokenPagination\"\n },\n \"kind\": {\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n \"default\": + \"youtube#liveStreamListResponse\",\n \"type\": \"string\"\n },\n + \ \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n }\n },\n + \ \"id\": \"LiveStreamListResponse\"\n },\n \"CaptionSnippet\": + {\n \"type\": \"object\",\n \"properties\": {\n \"status\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The caption track's + status.\",\n \"type\": \"string\",\n \"enum\": [\n \"serving\",\n + \ \"syncing\",\n \"failed\"\n ]\n },\n + \ \"name\": {\n \"type\": \"string\",\n \"description\": + \"The name of the caption track. The name is intended to be visible to the + user as an option during playback.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.captions.insert\"\n ]\n }\n + \ },\n \"lastUpdated\": {\n \"description\": \"The date + and time when the caption track was last updated.\",\n \"type\": + \"string\",\n \"format\": \"date-time\"\n },\n \"isEasyReader\": + {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n + \ },\n \"audioTrackType\": {\n \"enum\": [\n \"unknown\",\n + \ \"primary\",\n \"commentary\",\n \"descriptive\"\n + \ ],\n \"description\": \"The type of audio track associated + with the caption track.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"trackKind\": {\n \"enum\": [\n + \ \"standard\",\n \"ASR\",\n \"forced\"\n + \ ],\n \"description\": \"The caption track's type.\",\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"isAutoSynced\": + {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n + \ },\n \"isLarge\": {\n \"description\": \"Indicates + whether the caption track uses large text for the vision-impaired. The default + value is false.\",\n \"type\": \"boolean\"\n },\n \"videoId\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the video associated with + the caption track. @mutable youtube.captions.insert\"\n },\n \"failureReason\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The reason that YouTube failed to process the caption track. This property + is only present if the state property's value is failed.\",\n \"enum\": + [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n + \ ]\n },\n \"isDraft\": {\n \"description\": + \"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. @mutable youtube.captions.insert + youtube.captions.update\",\n \"type\": \"boolean\"\n },\n + \ \"isCC\": {\n \"description\": \"Indicates whether the track + contains closed captions for the deaf and hard of hearing. The default value + is false.\",\n \"type\": \"boolean\"\n },\n \"language\": + {\n \"description\": \"The language of the caption track. The property + value is a BCP-47 language tag.\",\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.captions.insert\"\n + \ ]\n }\n }\n },\n \"id\": \"CaptionSnippet\",\n + \ \"description\": \"Basic details about a caption track, such as its + language and name.\"\n },\n \"CommentSnippetAuthorChannelId\": {\n \"id\": + \"CommentSnippetAuthorChannelId\",\n \"description\": \"The id of the + author's YouTube channel, if any.\",\n \"type\": \"object\",\n \"properties\": + {\n \"value\": {\n \"type\": \"string\"\n }\n }\n + \ },\n \"ActivityContentDetailsUpload\": {\n \"id\": \"ActivityContentDetailsUpload\",\n + \ \"properties\": {\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the uploaded video.\",\n \"type\": + \"string\"\n }\n },\n \"description\": \"Information about + the uploaded video.\",\n \"type\": \"object\"\n },\n \"VideoCategory\": + {\n \"properties\": {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Channel\"\n }\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelListResponse\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"CommentSnippetAuthorChannelId\",\n \"description\": - \"The id of the author's YouTube channel, if any.\",\n \"type\": \"object\"\n - \ },\n \"VideoAbuseReportReasonListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The `visitorId` - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of valid abuse reasons that are used with `video.ReportAbuse`.\",\n - \ \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ }\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"VideoAbuseReportReasonListResponse\",\n \"type\": \"object\"\n - \ },\n \"CdnSettings\": {\n \"description\": \"Brief description - of the live stream cdn settings.\",\n \"type\": \"object\",\n \"properties\": - {\n \"frameRate\": {\n \"type\": \"string\",\n \"enumDescriptions\": + \ \"kind\": {\n \"default\": \"youtube#videoCategory\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the video category, including + its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n },\n + \ \"id\": {\n \"description\": \"The ID that YouTube uses to + uniquely identify the video category.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"VideoCategory\",\n \"type\": \"object\",\n + \ \"description\": \"A *videoCategory* resource identifies a category + that has been or could be associated with uploaded videos.\"\n },\n \"InvideoTiming\": + {\n \"description\": \"Describes a temporal position of a visual widget + inside a video.\",\n \"id\": \"InvideoTiming\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"type\": {\n \"description\": \"Describes + a timing type. If the value is offsetFromStart, then the offsetMs field represents + an offset from the start of the video. If the value is offsetFromEnd, then + the offsetMs field represents an offset from the end of the video.\",\n \"enum\": + [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n + \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ]\n },\n \"offsetMs\": {\n \"type\": + \"string\",\n \"description\": \"Defines the time at which the promotion + will appear. Depending on the value of type the value of the offsetMs field + will represent a time offset from the start or from the end of the video, + expressed in milliseconds.\",\n \"format\": \"uint64\"\n },\n + \ \"durationMs\": {\n \"format\": \"uint64\",\n \"description\": + \"Defines the duration in milliseconds for which the promotion should be displayed. + If missing, the client should use the default.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"ChannelSectionSnippet\": {\n \"properties\": + {\n \"style\": {\n \"type\": \"string\",\n \"enum\": + [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n + \ \"verticalList\"\n ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The frame rate of the inbound video data.\",\n - \ \"enum\": [\n \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ]\n },\n \"format\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The format of - the video stream that you are sending to Youtube. \"\n },\n \"ingestionType\": - {\n \"type\": \"string\",\n \"description\": \" The method - or protocol used to transmit the video stream.\",\n \"enum\": [\n - \ \"rtmp\",\n \"dash\",\n \"webrtc\",\n \"hls\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"resolution\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"240p\",\n \"360p\",\n - \ \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\",\n - \ \"2160p\",\n \"variable\"\n ],\n \"description\": - \"The resolution of the inbound video data.\"\n },\n \"ingestionInfo\": - {\n \"$ref\": \"IngestionInfo\",\n \"description\": \"The - ingestionInfo object contains information that YouTube provides that you need - to transmit your RTMP or HTTP stream to YouTube.\"\n }\n },\n - \ \"id\": \"CdnSettings\"\n },\n \"CommentThreadListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"default\": \"youtube#commentThreadListResponse\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"CommentThread\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of comment threads that match the request criteria.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"CommentThreadListResponse\",\n \"type\": \"object\"\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"properties\": {\n - \ \"amountDisplayString\": {\n \"type\": \"string\",\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\"\n - \ },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"description\": \"The amount of the fund.\",\n \"format\": - \"uint64\"\n },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the user to this fan funding - event.\"\n },\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the fund was made.\"\n - \ }\n },\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"type\": - \"object\"\n },\n \"LiveChatMessageSnippet\": {\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Next ID: 33\",\n \"properties\": - {\n \"publishedAt\": {\n \"description\": \"The date and time - when the message was orignally published.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"liveChatId\": {\n - \ \"type\": \"string\"\n },\n \"membershipGiftingDetails\": - {\n \"description\": \"Details about the Membership Gifting event, - this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": - \"LiveChatMembershipGiftingDetails\"\n },\n \"superStickerDetails\": - {\n \"description\": \"Details about the Super Sticker event, this - is only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"fanFundingEventDetails\": {\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n },\n \"authorChannelId\": - {\n \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\",\n \"type\": \"string\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"hasDisplayContent\": - {\n \"description\": \"Whether the message has display content that - should be displayed to users.\",\n \"type\": \"boolean\"\n },\n - \ \"memberMilestoneChatDetails\": {\n \"description\": \"Details - about the Member Milestone Chat event, this is only set if the type is 'memberMilestoneChatEvent'.\",\n - \ \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n },\n \"displayMessage\": - {\n \"description\": \"Contains a string that can be displayed to - the user. If this field is not present the message is silent, at the moment - only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\",\n \"type\": - \"string\"\n },\n \"userBannedDetails\": {\n \"$ref\": - \"LiveChatUserBannedMessageDetails\"\n },\n \"type\": {\n \"enumDescriptions\": + \ \"description\": \"The style of the channel section.\"\n },\n + \ \"title\": {\n \"description\": \"The channel section's title + for multiple_playlists and multiple_channels.\",\n \"type\": \"string\"\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that published + the channel section.\"\n },\n \"position\": {\n \"description\": + \"The position of the channel section in the channel.\",\n \"format\": + \"uint32\",\n \"type\": \"integer\"\n },\n \"localized\": + {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": + \"Localized title, read-only.\"\n },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of message, this will - always be present, it determines the contents of the message as well as which - fields will be present.\",\n \"enum\": [\n \"invalidType\",\n - \ \"textMessageEvent\",\n \"tombstone\",\n \"fanFundingEvent\",\n - \ \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"type\": \"string\"\n },\n \"newSponsorDetails\": - {\n \"description\": \"Details about the New Member Announcement - event, this is only set if the type is 'newSponsorEvent'. Please note that - \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n \"$ref\": - \"LiveChatNewSponsorDetails\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n - \ \"description\": \"Details about the Super Chat event, this is only - set if the type is 'superChatEvent'.\"\n }\n }\n },\n \"WatchSettings\": - {\n \"id\": \"WatchSettings\",\n \"description\": \"Branding properties - for the watch. All deprecated.\",\n \"type\": \"object\",\n \"properties\": - {\n \"backgroundColor\": {\n \"type\": \"string\",\n \"description\": - \"The text color for the video watch page's branded area.\"\n },\n - \ \"textColor\": {\n \"type\": \"string\",\n \"description\": - \"The background color for the video watch page's branded area.\"\n },\n - \ \"featuredPlaylistId\": {\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"Video\": - {\n \"description\": \"A *video* resource represents a YouTube video.\",\n - \ \"type\": \"object\",\n \"id\": \"Video\",\n \"properties\": - {\n \"topicDetails\": {\n \"$ref\": \"VideoTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the video.\"\n },\n \"fileDetails\": - {\n \"description\": \"The fileDetails object encapsulates information - about the video file that was uploaded to YouTube, including the file's resolution, - duration, audio and video codecs, stream bitrates, and more. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n - \ },\n \"liveStreamingDetails\": {\n \"$ref\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\"\n },\n - \ \"status\": {\n \"$ref\": \"VideoStatus\",\n \"description\": - \"The status object contains information about the video's uploading, processing, - and privacy statuses.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video, such as its title, - description, and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"VideoContentDetails\",\n \"description\": \"The contentDetails - object contains information about the video content, including the length - of the video and its aspect ratio.\"\n },\n \"projectDetails\": - {\n \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"processingDetails\": - {\n \"description\": \"The processingDetails object encapsulates - information about YouTube's progress in processing the uploaded video file. - The properties in the object identify the current processing status and an - estimate of the time remaining until YouTube finishes processing the video. - This part also indicates whether different types of data or content, such - as file details or thumbnail images, are available for the video. The processingProgress - object is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoProcessingDetails\"\n - \ },\n \"monetizationDetails\": {\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\",\n \"$ref\": \"VideoMonetizationDetails\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#video\"\n - \ },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\"\n },\n \"recordingDetails\": {\n \"description\": - \"The recordingDetails object encapsulates information about the location, - date and address where the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"ageGating\": {\n \"description\": \"Age restriction - details related to a video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoAgeGating\"\n },\n \"player\": {\n - \ \"description\": \"The player object contains information that you - would use to play the video in an embedded player.\",\n \"$ref\": - \"VideoPlayer\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ },\n \"suggestions\": {\n \"$ref\": \"VideoSuggestions\",\n - \ \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object contains statistics about the video.\",\n \"$ref\": \"VideoStatistics\"\n - \ }\n }\n },\n \"MembershipsLevel\": {\n \"description\": - \"A *membershipsLevel* resource represents an offer made by YouTube creators - for their fans. Users can become members of the channel by joining one of - the available levels. They will provide recurring monetary support and receives - special benefits.\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#membershipsLevel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"MembershipsLevelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the level.\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the memberships level.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"MembershipsLevel\"\n },\n - \ \"LiveBroadcastStatus\": {\n \"properties\": {\n \"liveBroadcastPriority\": - {\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"This field - will be set to True if the creator declares the broadcast to be kids only: - go/live-cw-work.\"\n },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The broadcast's - privacy status. Note that the broadcast represents exactly one YouTube video, - so the privacy settings are identical to those supported for videos. In addition, - you can set this field by modifying the broadcast resource or by setting the - privacyStatus field of the corresponding video resource.\",\n \"type\": - \"string\"\n },\n \"madeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the broadcast is made for kids or not, - decided by YouTube instead of the creator. This field is read only.\"\n },\n - \ \"lifeCycleStatus\": {\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"No - value or the value is unknown.\",\n \"Incomplete settings, but - otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\"\n },\n \"recordingStatus\": {\n \"type\": - \"string\",\n \"description\": \"The broadcast's recording status.\",\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"The recording has not yet been started.\",\n \"The - recording is currently on.\",\n \"The recording is completed, and - cannot be started again.\"\n ],\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ]\n }\n },\n \"type\": \"object\",\n \"description\": - \"Live broadcast state.\",\n \"id\": \"LiveBroadcastStatus\"\n },\n - \ \"LiveChatMessageRetractedDetails\": {\n \"id\": \"LiveChatMessageRetractedDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"retractedMessageId\": - {\n \"type\": \"string\"\n }\n }\n },\n \"VideoCategoryListResponse\": - {\n \"properties\": {\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#videoCategoryListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"VideoCategory\"\n - \ },\n \"description\": \"A list of video categories that - can be associated with YouTube videos. In this map, the video category ID - is the map key, and its value is the corresponding videoCategory resource.\",\n - \ \"type\": \"array\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ }\n },\n \"id\": \"VideoCategoryListResponse\",\n \"type\": - \"object\"\n },\n \"LiveStreamContentDetails\": {\n \"description\": - \"Detailed settings of a stream.\",\n \"type\": \"object\",\n \"id\": - \"LiveStreamContentDetails\",\n \"properties\": {\n \"closedCaptionsIngestionUrl\": - {\n \"description\": \"The ingestion URL where the closed captions - of this stream are sent.\",\n \"type\": \"string\"\n },\n - \ \"isReusable\": {\n \"description\": \"Indicates whether - the stream is reusable, which means that it can be bound to multiple broadcasts. - It is common for broadcasters to reuse the same stream for many different - broadcasts if those broadcasts occur at different times. If you set this value - to false, then the stream will not be reusable, which means that it can only - be bound to one broadcast. Non-reusable streams differ from reusable streams - in the following ways: - A non-reusable stream can only be bound to one broadcast. - - A non-reusable stream might be deleted by an automated process after the - broadcast ends. - The liveStreams.list method does not list non-reusable streams - if you call the method and set the mine parameter to true. The only way to - use that method to retrieve the resource for a non-reusable stream is to use - the id parameter to identify the stream. \",\n \"type\": \"boolean\"\n - \ }\n }\n },\n \"ChannelSectionContentDetails\": {\n \"properties\": - {\n \"channels\": {\n \"description\": \"The channel ids for - type multiple_channels.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"playlists\": - {\n \"description\": \"The playlist ids for type single_playlist - and multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelSectionContentDetails\",\n \"description\": \"Details about - a channelsection, including playlists and channels.\"\n },\n \"LiveStreamStatus\": - {\n \"description\": \"Brief description of the live stream status.\",\n - \ \"id\": \"LiveStreamStatus\",\n \"type\": \"object\",\n \"properties\": - {\n \"healthStatus\": {\n \"description\": \"The health status - of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n },\n - \ \"streamStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ]\n }\n }\n },\n \"ThirdPartyLinkStatus\": - {\n \"properties\": {\n \"linkStatus\": {\n \"enum\": - [\n \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"id\": \"ThirdPartyLinkStatus\",\n - \ \"type\": \"object\",\n \"description\": \"The third-party link - status object contains information about the status of the link.\"\n },\n - \ \"I18nRegionSnippet\": {\n \"properties\": {\n \"name\": {\n - \ \"type\": \"string\",\n \"description\": \"The human-readable - name of the region.\"\n },\n \"gl\": {\n \"type\": - \"string\",\n \"description\": \"The region code as a 2-letter ISO - country code.\"\n }\n },\n \"id\": \"I18nRegionSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - an i18n region, such as region code and human-readable name.\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"properties\": - {\n \"memberLevelName\": {\n \"description\": \"The name of - the Level at which the viever is a member. The Level names are defined by - the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the member to this Member Milestone Chat. This field is empty for - messages without a comment from the member.\"\n },\n \"memberMonth\": - {\n \"type\": \"integer\",\n \"description\": \"The total - amount of months (rounded up) the viewer has been a member that granted them - this Member Milestone Chat. This is the same number of months as is being - displayed to YouTube users.\",\n \"format\": \"uint32\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveStream\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStream\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about live stream's status.\",\n \"$ref\": - \"LiveStreamStatus\"\n },\n \"cdn\": {\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\",\n \"$ref\": \"CdnSettings\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the stream.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n - \ }\n },\n \"id\": \"LiveStream\",\n \"type\": \"object\",\n - \ \"description\": \"A live stream describes a live ingestion point.\"\n - \ },\n \"LevelDetails\": {\n \"id\": \"LevelDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"displayName\": {\n \"description\": - \"The name that should be used when referring to this level.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LocalizedString\": {\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n },\n \"language\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LocalizedString\"\n },\n \"VideoGetRatingResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of ratings that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"VideoRating\"\n },\n \"type\": - \"array\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n \"default\": - \"youtube#videoGetRatingResponse\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoGetRatingResponse\"\n },\n \"Thumbnail\": - {\n \"type\": \"object\",\n \"properties\": {\n \"width\": - {\n \"format\": \"uint32\",\n \"description\": \"(Optional) - Width of the thumbnail image.\",\n \"type\": \"integer\"\n },\n - \ \"url\": {\n \"type\": \"string\",\n \"description\": - \"The thumbnail image's URL.\"\n },\n \"height\": {\n \"format\": - \"uint32\",\n \"description\": \"(Optional) Height of the thumbnail - image.\",\n \"type\": \"integer\"\n }\n },\n \"description\": - \"A thumbnail is an image representing a YouTube resource.\",\n \"id\": - \"Thumbnail\"\n },\n \"LiveChatMessage\": {\n \"description\": - \"A *liveChatMessage* resource represents a chat message in a YouTube Live - Chat.\",\n \"type\": \"object\",\n \"id\": \"LiveChatMessage\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessage\\\".\",\n \"default\": - \"youtube#liveChatMessage\"\n },\n \"authorDetails\": {\n \"$ref\": - \"LiveChatMessageAuthorDetails\",\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoStatus\": - {\n \"properties\": {\n \"uploadStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Video has been - uploaded but not processed yet.\",\n \"Video has been successfully - processed.\",\n \"Processing has failed. See FailureReason.\",\n - \ \"Video has been rejected. See RejectionReason.\",\n \"Video - has been deleted.\"\n ],\n \"description\": \"The status - of the uploaded video.\",\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ]\n },\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The video's privacy status.\"\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"publishAt\": {\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the video is scheduled to publish. It can be set only if the privacy - status of the video is private..\",\n \"format\": \"date-time\"\n - \ },\n \"license\": {\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"description\": \"The - video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"failureReason\": - {\n \"enumDescriptions\": [\n \"Unable to convert video - content.\",\n \"Invalid file format.\",\n \"Empty file.\",\n - \ \"File was too small.\",\n \"Unsupported codec.\",\n - \ \"Upload wasn't finished.\"\n ],\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ],\n \"description\": \"This value explains why a video - failed to upload. This property is only present if the uploadStatus property - indicates that the upload failed.\",\n \"type\": \"string\"\n },\n - \ \"rejectionReason\": {\n \"enumDescriptions\": [\n \"Copyright - infringement.\",\n \"Inappropriate video content.\",\n \"Duplicate - upload in the same channel.\",\n \"Terms of use violation.\",\n - \ \"Uploader account was suspended.\",\n \"Video duration - was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"description\": \"This value explains why YouTube - rejected an uploaded video. This property is only present if the uploadStatus - property indicates that the upload was rejected.\",\n \"type\": \"string\"\n - \ },\n \"embeddable\": {\n \"description\": \"This value - indicates if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n }\n },\n - \ \"description\": \"Basic details about a video category, such as its - localized title. Next Id: 18\",\n \"type\": \"object\",\n \"id\": - \"VideoStatus\"\n },\n \"LiveChatSuperStickerDetails\": {\n \"properties\": - {\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made.\"\n },\n \"tier\": - {\n \"type\": \"integer\",\n \"description\": \"The tier - in which the amount belongs. Lower amounts belong to lower tiers. The lowest - tier is 1.\",\n \"format\": \"uint32\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"amountMicros\": {\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatSuperStickerDetails\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"description\": \"Information about a video that was marked as a - favorite video.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"resourceId\": {\n \"description\": \"The resourceId object - contains information that identifies the resource that was marked as a favorite.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"LiveStreamHealthStatus\": {\n \"type\": \"object\",\n \"id\": - \"LiveStreamHealthStatus\",\n \"properties\": {\n \"status\": - {\n \"enum\": [\n \"good\",\n \"ok\",\n \"bad\",\n - \ \"noData\",\n \"revoked\"\n ],\n \"type\": - \"string\",\n \"description\": \"The status code of this stream\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"configurationIssues\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n },\n - \ \"description\": \"The configurations issues on this stream\"\n - \ },\n \"lastUpdateTimeSeconds\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The last time this status was updated (in seconds)\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"properties\": {\n \"banType\": {\n \"enum\": [\n - \ \"permanent\",\n \"temporary\"\n ],\n \"type\": - \"string\",\n \"description\": \"The type of ban.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"The details of the user that was banned.\"\n },\n \"banDurationSeconds\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The duration of the ban. This property is only present if the banType is - temporary.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatUserBannedMessageDetails\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"properties\": - {\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label belonging to this abuse report reason.\"\n },\n - \ \"secondaryReasons\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"description\": \"The secondary reasons associated with this reason, - if any are available. (There might be 0 or more.)\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a video category, such as its localized title.\"\n },\n \"I18nRegion\": - {\n \"description\": \"A *i18nRegion* resource identifies a region where - YouTube is available.\",\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegion\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegion\\\".\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"I18nRegion\"\n },\n \"PlaylistPlayer\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistPlayer\",\n \"properties\": - {\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\"\n - \ }\n }\n },\n \"CommentThread\": {\n \"type\": \"object\",\n - \ \"id\": \"CommentThread\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the comment thread.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentThread\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#commentThread\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"replies\": {\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the comment thread and also the top level - comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n }\n },\n - \ \"description\": \"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.\"\n },\n \"ActivityListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The type of the + channel section.\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n + \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n + \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n + \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n + \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n + \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n + \ \"subscriptions\"\n ],\n \"type\": \"string\"\n + \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n + \ \"description\": \"The language of the channel section's default + title and description.\"\n }\n },\n \"description\": \"Basic + details about a channel section, including title, style and position.\",\n + \ \"id\": \"ChannelSectionSnippet\",\n \"type\": \"object\"\n },\n + \ \"LiveChatGiftMembershipReceivedDetails\": {\n \"properties\": {\n + \ \"memberLevelName\": {\n \"description\": \"The name of the + Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` + of the associated membership gifting message. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\",\n \"type\": \"string\"\n },\n \"gifterChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the user that made the membership gifting purchase. This matches the `snippet.authorChannelId` + of the associated membership gifting message.\"\n },\n \"associatedMembershipGiftingMessageId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the membership gifting message that is related to this gift membership. This + ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n + \ },\n \"VideoGetRatingResponse\": {\n \"properties\": {\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Activity\"\n }\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + {\n \"$ref\": \"VideoRating\"\n },\n \"description\": + \"A list of ratings that match the request criteria.\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#videoGetRatingResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n }\n },\n + \ \"id\": \"VideoGetRatingResponse\",\n \"type\": \"object\"\n },\n + \ \"ChannelContentOwnerDetails\": {\n \"properties\": {\n \"timeLinked\": + {\n \"description\": \"The date and time when the channel was linked + to the content owner.\",\n \"format\": \"date-time\",\n \"type\": + \"string\"\n },\n \"contentOwner\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the content owner linked to the channel.\"\n + \ }\n },\n \"description\": \"The contentOwnerDetails object + encapsulates channel data that is relevant for YouTube Partners linked with + the channel.\",\n \"id\": \"ChannelContentOwnerDetails\",\n \"type\": + \"object\"\n },\n \"SuperChatEventListResponse\": {\n \"id\": \"SuperChatEventListResponse\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n + \ \"default\": \"youtube#superChatEventListResponse\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n \ },\n \"nextPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#activityListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivityListResponse\"\n - \ },\n \"VideoContentDetails\": {\n \"properties\": {\n \"regionRestriction\": - {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\"\n },\n - \ \"caption\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"The value of - captions indicates whether the video has captions or not.\",\n \"enum\": - [\n \"true\",\n \"false\"\n ],\n \"type\": - \"string\"\n },\n \"licensedContent\": {\n \"type\": - \"boolean\",\n \"description\": \"The value of is_license_content - indicates whether the video is licensed content.\"\n },\n \"projection\": - {\n \"description\": \"Specifies the projection format of the video.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ]\n },\n \"countryRestriction\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - countryRestriction object contains information about the countries where a - video is (or is not) viewable.\"\n },\n \"dimension\": {\n \"type\": - \"string\",\n \"description\": \"The value of dimension indicates - whether the video is available in 3D or in 2D.\"\n },\n \"contentRating\": - {\n \"$ref\": \"ContentRating\",\n \"description\": \"Specifies - the ratings that the video received under various rating schemes.\"\n },\n - \ \"duration\": {\n \"description\": \"The length of the video. - The tag value is an ISO 8601 duration in the format PT#M#S, in which the letters - PT indicate that the value specifies a period of time, and the letters M and - S refer to length in minutes and seconds, respectively. The # characters preceding - the M and S letters are both integers that specify the number of minutes (or - seconds) of the video. For example, a value of PT15M51S indicates that the - video is 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n - \ },\n \"hasCustomThumbnail\": {\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n },\n \"definition\": {\n \"enum\": [\n - \ \"sd\",\n \"hd\"\n ],\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ]\n }\n },\n \"id\": \"VideoContentDetails\",\n - \ \"description\": \"Details about the content of a YouTube Video.\",\n - \ \"type\": \"object\"\n },\n \"VideoRecordingDetails\": {\n \"id\": - \"VideoRecordingDetails\",\n \"properties\": {\n \"recordingDate\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the video was recorded.\",\n \"format\": \"date-time\"\n - \ },\n \"locationDescription\": {\n \"type\": \"string\",\n - \ \"description\": \"The text description of the location where the - video was recorded.\"\n },\n \"location\": {\n \"$ref\": - \"GeoPoint\",\n \"description\": \"The geolocation information associated - with the video.\"\n }\n },\n \"description\": \"Recording - information associated with the video.\",\n \"type\": \"object\"\n },\n - \ \"PlaylistStatus\": {\n \"properties\": {\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"description\": \"The playlist's privacy status.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"PlaylistStatus\"\n - \ },\n \"ActivityContentDetailsSubscription\": {\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that the user subscribed - to.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"id\": - \"ActivityContentDetailsSubscription\",\n \"type\": \"object\",\n \"description\": - \"Information about a channel that a user subscribed to.\"\n },\n \"ChannelLocalization\": - {\n \"type\": \"object\",\n \"description\": \"Channel localization - setting\",\n \"id\": \"ChannelLocalization\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel's description.\"\n },\n \"title\": - {\n \"description\": \"The localized strings for channel's title.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"InvideoPosition\": - {\n \"description\": \"Describes the spatial position of a visual widget - inside a video. It is a union of various position types, out of which only - will be set one.\",\n \"id\": \"InvideoPosition\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"type\": {\n \"enum\": [\n \"corner\"\n - \ ],\n \"description\": \"Defines the position type.\",\n - \ \"enumDescriptions\": [\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"cornerPosition\": {\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n - \ \"bottomRight\"\n ]\n }\n }\n },\n \"ChannelConversionPing\": - {\n \"description\": \"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.\",\n \"properties\": {\n \"conversionUrl\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"context\": {\n \"enum\": - [\n \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ],\n \"description\": \"Defines the context of the ping.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelConversionPing\",\n \"type\": \"object\"\n - \ },\n \"Playlist\": {\n \"id\": \"Playlist\",\n \"properties\": - {\n \"localizations\": {\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n }\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#playlist\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlist\\\".\",\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"$ref\": \"PlaylistStatus\",\n - \ \"description\": \"The status object contains status information - for the playlist.\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistSnippet\",\n \"description\": \"The snippet object contains - basic details about the playlist, such as its title and description.\"\n },\n - \ \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": - \"The player object contains information that you would use to play the playlist - in an embedded player.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\"\n }\n - \ },\n \"description\": \"A *playlist* resource represents a YouTube - playlist. A playlist is a collection of videos that can be viewed sequentially - and shared with other users. A playlist can contain up to 200 videos, and - YouTube does not limit the number of playlists that each user creates. By - default, playlists are publicly visible to other users, but playlists can - be public or private. YouTube also uses playlists to identify special collections - of videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods.\",\n \"type\": - \"object\"\n },\n \"SubscriptionSnippet\": {\n \"properties\": - {\n \"title\": {\n \"description\": \"The subscription's title.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the video. 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.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the subscriber's channel.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the subscription was - created.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the subscription - belongs to.\"\n },\n \"description\": {\n \"description\": - \"The subscription's details.\",\n \"type\": \"string\"\n },\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"annotations\": - {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"description\": \"The id object contains - information about the channel that the user subscribed to.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"SubscriptionSnippet\",\n - \ \"description\": \"Basic details about a subscription, including title, - description and thumbnails of the subscribed item.\"\n },\n \"PlaylistContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"itemCount\": - {\n \"description\": \"The number of videos in the playlist.\",\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"items\": {\n \"description\": \"A list of Super Chat purchases + that match the request criteria.\",\n \"items\": {\n \"$ref\": + \"SuperChatEvent\"\n },\n \"type\": \"array\"\n }\n + \ }\n },\n \"ChannelProfileDetails\": {\n \"properties\": {\n + \ \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": + \"The channels's avatar URL.\"\n },\n \"displayName\": {\n \"description\": + \"The channel's display name.\",\n \"type\": \"string\"\n },\n + \ \"channelId\": {\n \"description\": \"The YouTube channel + ID.\",\n \"type\": \"string\"\n },\n \"channelUrl\": + {\n \"description\": \"The channel's URL.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"ChannelProfileDetails\"\n },\n \"Thumbnail\": {\n \"description\": + \"A thumbnail is an image representing a YouTube resource.\",\n \"type\": + \"object\",\n \"id\": \"Thumbnail\",\n \"properties\": {\n \"height\": + {\n \"description\": \"(Optional) Height of the thumbnail image.\",\n + \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n + \ \"url\": {\n \"description\": \"The thumbnail image's URL.\",\n + \ \"type\": \"string\"\n },\n \"width\": {\n \"format\": + \"uint32\",\n \"description\": \"(Optional) Width of the thumbnail + image.\",\n \"type\": \"integer\"\n }\n }\n },\n \"VideoTopicDetails\": + {\n \"properties\": {\n \"topicIds\": {\n \"description\": + \"A list of Freebase topic IDs that are centrally associated with the video. + These are topics that are centrally featured in the video, and it can be said + that the video is mainly about each of these. You can retrieve information + about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase + Topic API.\",\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"type\": \"array\"\n },\n \"relevantTopicIds\": + {\n \"description\": \"Similar to topic_id, except that these topics + are merely relevant to the video. These are topics that may be mentioned in, + or appear in the video. You can retrieve information about each topic using + Freebase Topic API.\",\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"type\": \"array\"\n },\n \"topicCategories\": + {\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"A list of Wikipedia + URLs that provide a high-level description of the video's content.\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"VideoTopicDetails\",\n + \ \"description\": \"Freebase topic information related to the video.\"\n + \ },\n \"ThumbnailSetResponse\": {\n \"id\": \"ThumbnailSetResponse\",\n + \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n + \ \"default\": \"youtube#thumbnailSetResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"ThumbnailDetails\"\n },\n \"description\": + \"A list of thumbnails.\",\n \"type\": \"array\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"VideoAbuseReport\": {\n \"type\": + \"object\",\n \"id\": \"VideoAbuseReport\",\n \"properties\": {\n + \ \"comments\": {\n \"description\": \"Additional comments + regarding the abuse report.\",\n \"type\": \"string\"\n },\n + \ \"language\": {\n \"type\": \"string\",\n \"description\": + \"The language that the content was viewed in.\"\n },\n \"secondaryReasonId\": + {\n \"type\": \"string\",\n \"description\": \"The specific, + or secondary, reason that this content is abusive (if available). The value + is an abuse report reason ID that is a valid secondary reason for the primary + reason.\"\n },\n \"videoId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": + \"string\"\n },\n \"reasonId\": {\n \"type\": \"string\",\n + \ \"description\": \"The high-level, or primary, reason that the content + is abusive. The value is an abuse report reason ID.\"\n }\n }\n + \ },\n \"SubscriptionContentDetails\": {\n \"properties\": {\n \"activityType\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"The type of activity + this subscription is for (only uploads, everything).\",\n \"type\": + \"string\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n + \ \"all\",\n \"uploads\"\n ]\n },\n \"totalItemCount\": + {\n \"description\": \"The approximate number of items that the subscription + points to.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n + \ },\n \"newItemCount\": {\n \"description\": \"The + number of new items in the subscription since its content was last read.\",\n \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n - \ },\n \"id\": \"PlaylistContentDetails\"\n },\n \"CommentThreadReplies\": - {\n \"description\": \"Comments written in (direct or indirect) reply - to the top level comment.\",\n \"properties\": {\n \"comments\": - {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"type\": \"array\",\n \"description\": \"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.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"CommentThreadReplies\"\n },\n \"ThirdPartyLinkSnippet\": {\n \"description\": - \"Basic information about a third party account link, including its type and - type-specific information.\",\n \"id\": \"ThirdPartyLinkSnippet\",\n - \ \"properties\": {\n \"type\": {\n \"description\": \"Type - of the link named after the entities that are being linked.\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ]\n },\n \"channelToStoreLink\": - {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\"\n }\n },\n \"type\": \"object\"\n },\n \"MembershipsDurationAtLevel\": - {\n \"type\": \"object\",\n \"properties\": {\n \"level\": - {\n \"description\": \"Pricing level ID.\",\n \"type\": - \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"format\": - \"int32\",\n \"description\": \"The cumulative time the user has - been a member for the given level in complete months (the time is rounded - down to the nearest integer).\",\n \"type\": \"integer\"\n },\n - \ \"memberSince\": {\n \"description\": \"The date and time - when the user became a continuous member for the given level.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"MembershipsDurationAtLevel\"\n - \ },\n \"ContentRating\": {\n \"description\": \"Ratings schemes. - The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n - \ \"properties\": {\n \"cnaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"description\": \"The - video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n - \ \"type\": \"string\"\n },\n \"kijkwijzerRating\": - {\n \"description\": \"The video's NICAM/Kijkwijzer rating from the - Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\",\n - \ \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ]\n },\n \"mekuRating\": {\n \"description\": - \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti - (National Audiovisual Institute).\",\n \"enumDescriptions\": [\n - \ \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ]\n },\n \"bbfcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ],\n \"description\": \"The video's British - Board of Film Classification (BBFC) rating.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n - \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n - \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n - \ \"bbfcUnrated\"\n ]\n },\n \"nmcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ],\n - \ \"description\": \"The National Media Council ratings system for - United Arab Emirates.\",\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"kfcbRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Kenya Film Classification - Board.\",\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n - \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n - \ \"kfcbUnrated\"\n ]\n },\n \"csaRating\": - {\n \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n - \ \"description\": \"The video's rating from France's Conseil sup\xE9rieur - de l\u2019audiovisuel, which rates broadcast content.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ]\n },\n - \ \"mccaaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG\",\n \"12A\",\n \"12\",\n - \ \"14 - this rating was removed from the new classification structure - introduced in 2013.\",\n \"15\",\n \"16 - this rating - was removed from the new classification structure introduced in 2013.\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n - \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n - \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n - \ \"mccaa18\",\n \"mccaaUnrated\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\"\n },\n - \ \"kmrbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 \uC774\uC0C1 - \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"description\": \"The - video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\"\n },\n \"incaaRating\": - {\n \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n - \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n - \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"description\": - \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ]\n },\n \"rteRating\": - {\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ]\n },\n \"fcbmRating\": {\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ],\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n - \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n - \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n - \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ]\n },\n - \ \"eirinRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ],\n \"enum\": - [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ],\n \"description\": \"The video's Eirin (\u6620\u502B) - rating. Eirin is the Japanese rating system.\"\n },\n \"catvfrRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ]\n },\n \"nbcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Maldives - National Bureau of Classification.\"\n },\n \"fmocRating\": - {\n \"description\": \"This property has been deprecated. Use the - contentDetails.contentRating.cncRating instead.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ],\n \"enum\": [\n - \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ]\n },\n - \ \"agcomRating\": {\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\"\n },\n \"menaMpaaRating\": {\n \"enum\": - [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n - \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The rating system for MENA countries, a clone of MPAA. It is needed to prevent - titles go live w/o additional QC check, since some of them can be inappropriate - for the countries at all. See b/33408548 for more details.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ]\n },\n \"mibacRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\",\n \"type\": \"string\",\n \"enum\": - [\n \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n - \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n - \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n - \ ]\n },\n \"cicfRating\": {\n \"enum\": [\n - \ \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Commission de Contr\xF4le des Films (Belgium).\",\n \"type\": - \"string\"\n },\n \"bfvcRating\": {\n \"description\": - \"The video's rating from Thailand's Board of Film and Video Censors.\",\n - \ \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ]\n },\n - \ \"chfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"0\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"chfilmUnspecified\",\n \"chfilm0\",\n \"chfilm6\",\n - \ \"chfilm12\",\n \"chfilm16\",\n \"chfilm18\",\n - \ \"chfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Switzerland.\"\n },\n - \ \"ytRating\": {\n \"description\": \"A rating that YouTube - uses to identify age-restricted content.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ]\n },\n \"anatelRating\": {\n \"enum\": - [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ],\n \"description\": \"The video's Anatel (Asociaci\xF3n - Nacional de Televisi\xF3n) rating for Chilean television.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ]\n },\n - \ \"catvRating\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"enum\": - [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"C\",\n - \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n - \ \"18+\",\n \"\",\n \"\"\n ]\n },\n - \ \"medietilsynetRating\": {\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Medietilsynet, the Norwegian Media Authority.\"\n - \ },\n \"rcnofRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Hungarian - Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\",\n - \ \"type\": \"string\"\n },\n \"cceRating\": {\n \"enum\": - [\n \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n - \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n - \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"4\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\",\n \"14\"\n ],\n - \ \"type\": \"string\"\n },\n \"rtcRating\": {\n \"enum\": - [\n \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ],\n \"description\": \"The - video's General Directorate of Radio, Television and Cinematography (Mexico) - rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ]\n },\n \"mdaRating\": {\n \"enum\": [\n - \ \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n - \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n - \ \"mdaR21\",\n \"mdaUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ],\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\"\n },\n \"mocRating\": - {\n \"description\": \"The video's Ministerio de Cultura (Colombia) - rating.\",\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"pefilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Peru.\",\n - \ \"type\": \"string\"\n },\n \"smsaRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\"\n - \ },\n \"ifcoRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\",\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n - \ ]\n },\n \"czfilmRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating in the Czech - Republic.\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ]\n },\n - \ \"cbfcRating\": {\n \"description\": \"The video's Central - Board of Film Certification (CBFC - India) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ],\n \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n - \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n - \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n - \ \"cbfcUnrated\"\n ]\n },\n \"nfvcbRating\": - {\n \"description\": \"The video's rating from Nigeria's National - Film and Video Censors Board.\",\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"resorteviolenciaRating\": {\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"description\": \"The video's rating in Venezuela.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"B\",\n \"C\",\n \"D\",\n - \ \"E\",\n \"\"\n ]\n },\n \"fskRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"FSK 0\",\n - \ \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"enum\": - [\n \"fskUnspecified\",\n \"fsk0\",\n \"fsk6\",\n - \ \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n \"fskUnrated\"\n - \ ]\n },\n \"nfrcRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Bulgarian National Film Center.\",\n \"enum\": [\n \"nfrcUnspecified\",\n - \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n - \ \"nfrcX\",\n \"nfrcUnrated\"\n ]\n },\n - \ \"egfilmRating\": {\n \"description\": \"The video's rating - in Egypt.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ]\n },\n \"ilfilmRating\": - {\n \"description\": \"The video's rating in Israel.\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"mccypRating\": {\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ]\n },\n \"djctqRatingReasons\": - {\n \"description\": \"Reasons that explain why the video received - its DJCQT (Brazil) rating.\",\n \"type\": \"array\",\n \"items\": - {\n \"enumDescriptions\": [\n \"\",\n \"Brazil - rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia - (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n - \ \"Conte\xFAdo sexual (Sexual content)\",\n \"Nudez - (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo Expl\xEDcito - (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ]\n }\n },\n - \ \"icaaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"APTA\",\n \"7\",\n \"12\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X\",\n \"\"\n - \ ],\n \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\"\n },\n \"cncRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ],\n - \ \"description\": \"Rating system in France - Commission de classification - cinematographique\",\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"mtrcbRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n - \ \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ]\n },\n \"mcstRating\": - {\n \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ],\n \"description\": \"The - video's rating system for Vietnam - MCST\",\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"chvrsRating\": {\n \"description\": \"The video's Canadian - Home Video Rating System (CHVRS) rating.\",\n \"enum\": [\n \"chvrsUnspecified\",\n - \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n - \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n - \ \"chvrsUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ]\n },\n \"ecbmctRating\": - {\n \"enum\": [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n - \ \"ecbmct7a\",\n \"ecbmct7plus\",\n \"ecbmct13a\",\n - \ \"ecbmct13plus\",\n \"ecbmct15a\",\n \"ecbmct15plus\",\n - \ \"ecbmct18plus\",\n \"ecbmctUnrated\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"7A\",\n \"7+\",\n \"13A\",\n - \ \"13+\",\n \"15A\",\n \"15+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"Rating system - in Turkey - Evaluation and Classification Board of the Ministry of Culture - and Tourism\"\n },\n \"fpbRatingReasons\": {\n \"items\": - {\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"type\": - \"array\",\n \"description\": \"Reasons that explain why the video - received its FPB (South Africa) rating.\"\n },\n \"fcoRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"I\",\n - \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n - \ \"\"\n ],\n \"enum\": [\n \"fcoUnspecified\",\n - \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n - \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n - \ ],\n \"description\": \"The video's rating from Hong Kong's - Office for Film, Newspaper and Article Administration.\",\n \"type\": - \"string\"\n },\n \"cscfRating\": {\n \"enum\": [\n - \ \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n - \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Luxembourg's Commission de surveillance de la classification des films - (CSCF).\"\n },\n \"moctwRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Taiwan's Ministry of - Culture (\u6587\u5316\u90E8).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P\",\n \"PG\",\n \"R\",\n - \ \"\",\n \"R-12\",\n \"R-15\"\n ],\n - \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ]\n },\n \"djctqRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n - \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n - \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n - \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n - \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n - \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n - \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n - \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n - \ ],\n \"description\": \"The video's Departamento de Justi\xE7a, - Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\"\n - \ },\n \"eefilmRating\": {\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Estonia.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"nkclvRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n - \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n - \ \"nkclvUnrated\"\n ],\n \"description\": \"The - video's rating from the Nacion\xE3lais Kino centrs (National Film Centre of - Latvia).\"\n },\n \"cccRating\": {\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Todo espectador\",\n \"6+ - Inconveniente para menores - de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n \"18+ - - contenido excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ]\n },\n \"smaisRating\": {\n \"description\": - \"The video's rating in Iceland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"L\",\n \"7\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"skfilmRating\": - {\n \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n - \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n - \ \"skfilmUnrated\"\n ],\n \"description\": \"The - video's rating in Slovakia.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ]\n },\n \"mpaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n - \ \"! X\",\n \"\"\n ],\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"type\": - \"string\",\n \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n - \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n - \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n - \ ]\n },\n \"acbRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n - \ \"description\": \"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.\",\n \"enum\": - [\n \"acbUnspecified\",\n \"acbE\",\n \"acbP\",\n - \ \"acbC\",\n \"acbG\",\n \"acbPg\",\n \"acbM\",\n - \ \"acbMa15plus\",\n \"acbR18plus\",\n \"acbUnrated\"\n - \ ]\n },\n \"bmukkRating\": {\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ]\n - \ },\n \"nbcplRating\": {\n \"description\": \"The video's - rating in Poland.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ]\n },\n \"fpbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ],\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ]\n },\n - \ \"oflcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"M\",\n \"R13\",\n - \ \"R15\",\n \"R16\",\n \"R18\",\n \"\",\n - \ \"RP13\",\n \"RP16\",\n \"RP18\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - Office of Film and Literature Classification (OFLC - New Zealand) rating.\",\n - \ \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ]\n },\n \"lsfRating\": - {\n \"description\": \"The video's rating from Indonesia's Lembaga - Sensor Film.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ]\n },\n \"tvpgRating\": {\n \"description\": - \"The video's TV Parental Guidelines (TVPG) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"tvpgUnspecified\",\n \"tvpgY\",\n \"tvpgY7\",\n - \ \"tvpgY7Fv\",\n \"tvpgG\",\n \"tvpgPg\",\n - \ \"pg14\",\n \"tvpgMa\",\n \"tvpgUnrated\"\n - \ ]\n },\n \"russiaRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"description\": - \"The video's National Film Registry of the Russian Federation (MKRF - Russia) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"grfilmRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n - \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n - \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n - \ \"grfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Greece.\"\n },\n \"mpaatRating\": {\n \"description\": - \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GB\",\n \"RB\"\n ]\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ContentRating\"\n - \ },\n \"TestItemTestItemSnippet\": {\n \"id\": \"TestItemTestItemSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {}\n },\n \"VideoStatistics\": - {\n \"properties\": {\n \"likeCount\": {\n \"description\": - \"The number of users who have indicated that they liked the video by giving - it a positive rating.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"commentCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of comments for the video.\",\n - \ \"type\": \"string\"\n },\n \"viewCount\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of times the video has been viewed.\"\n },\n \"dislikeCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of users who have indicated that they disliked the video by giving it a negative - rating.\",\n \"type\": \"string\"\n },\n \"favoriteCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of users who currently have the video marked as a favorite video.\",\n \"format\": - \"uint64\"\n }\n },\n \"description\": \"Statistics about - the video, such as the number of times the video was viewed or liked.\",\n - \ \"id\": \"VideoStatistics\",\n \"type\": \"object\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"giftMembershipsCount\": - {\n \"format\": \"int32\",\n \"description\": \"The number - of gift memberships purchased by the user.\",\n \"type\": \"integer\"\n - \ },\n \"giftMembershipsLevelName\": {\n \"description\": - \"The name of the level of the gift memberships purchased by the user. The - Level names are defined by the YouTube channel offering the Membership. In - some situations this field isn't filled.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveChatMembershipGiftingDetails\"\n - \ },\n \"ActivityContentDetailsComment\": {\n \"properties\": {\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with the comment.\"\n }\n },\n \"id\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"Information about a resource that received a comment.\",\n - \ \"type\": \"object\"\n },\n \"InvideoTiming\": {\n \"properties\": - {\n \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"description\": \"Describes a timing type. If the value is offsetFromStart, - then the offsetMs field represents an offset from the start of the video. - If the value is offsetFromEnd, then the offsetMs field represents an offset - from the end of the video.\"\n },\n \"offsetMs\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\"\n },\n - \ \"durationMs\": {\n \"format\": \"uint64\",\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Describes a temporal position - of a visual widget inside a video.\",\n \"id\": \"InvideoTiming\",\n - \ \"type\": \"object\"\n },\n \"I18nRegionListResponse\": {\n \"properties\": - {\n \"items\": {\n \"description\": \"A list of regions where - YouTube is available. In this map, the i18n region ID is the map key, and - its value is the corresponding i18nRegion resource.\",\n \"items\": - {\n \"$ref\": \"I18nRegion\"\n },\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#i18nRegionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"I18nRegionListResponse\",\n - \ \"type\": \"object\"\n },\n \"SuperChatEvent\": {\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the Super Chat event.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#superChatEvent\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\",\n - \ \"$ref\": \"SuperChatEventSnippet\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"A `__superChatEvent__` - resource represents a Super Chat purchase on a YouTube channel.\",\n \"id\": - \"SuperChatEvent\",\n \"type\": \"object\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"properties\": {\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level that the viewer - just had joined. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n },\n - \ \"isUpgrade\": {\n \"type\": \"boolean\",\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatNewSponsorDetails\"\n - \ },\n \"LiveChatBanSnippet\": {\n \"properties\": {\n \"banDurationSeconds\": - {\n \"description\": \"The duration of a ban, only filled if the - ban has type TEMPORARY.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"liveChatId\": {\n \"description\": - \"The chat this ban is pertinent to.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"description\": \"The - type of ban.\",\n \"enumDescriptions\": [\n \"An invalid - ban type.\",\n \"A permanent ban.\",\n \"A temporary - ban.\"\n ]\n },\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatBanSnippet\"\n },\n \"VideoLiveStreamingDetails\": + \ },\n \"description\": \"Details about the content to witch a subscription + refers.\",\n \"id\": \"SubscriptionContentDetails\",\n \"type\": + \"object\"\n },\n \"ActivityContentDetailsPromotedItem\": {\n \"description\": + \"Details about a resource which is being promoted.\",\n \"id\": \"ActivityContentDetailsPromotedItem\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"customCtaButtonText\": + {\n \"type\": \"string\",\n \"description\": \"The custom + call-to-action button text. If specified, it will override the default button + text for the cta_type.\"\n },\n \"adTag\": {\n \"type\": + \"string\",\n \"description\": \"The URL the client should fetch + to request a promoted item.\"\n },\n \"destinationUrl\": {\n + \ \"description\": \"The URL the client should direct the user to, + if the user chooses to visit the advertiser's website.\",\n \"type\": + \"string\"\n },\n \"creativeViewUrl\": {\n \"type\": + \"string\",\n \"description\": \"The URL the client should ping to + indicate that the user was shown this promoted item.\"\n },\n \"descriptionText\": + {\n \"type\": \"string\",\n \"description\": \"The text + description to accompany the promoted item.\"\n },\n \"impressionUrl\": + {\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"The list of impression + URLs. The client should ping all of these URLs to indicate that the user was + shown this promoted item.\"\n },\n \"clickTrackingUrl\": {\n + \ \"description\": \"The URL the client should ping to indicate that + the user clicked through on this promoted item.\",\n \"type\": \"string\"\n + \ },\n \"ctaType\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ],\n \"enum\": + [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n + \ ],\n \"description\": \"The type of call-to-action, a message + to the user indicating action that can be taken.\"\n },\n \"videoId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the promoted video.\",\n \"type\": \"string\"\n },\n \"forecastingUrl\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"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.\"\n }\n + \ }\n },\n \"CommentThreadSnippet\": {\n \"id\": \"CommentThreadSnippet\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"videoId\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + the video the comments refer to, if any. No video_id implies a channel discussion + comment.\"\n },\n \"canReply\": {\n \"type\": \"boolean\",\n + \ \"description\": \"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.\"\n },\n \"channelId\": {\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n \"topLevelComment\": + {\n \"description\": \"The top level comment of this thread.\",\n + \ \"$ref\": \"Comment\"\n },\n \"totalReplyCount\": + {\n \"description\": \"The total number of replies (not including + the top level comment).\",\n \"type\": \"integer\",\n \"format\": + \"uint32\"\n },\n \"isPublic\": {\n \"description\": + \"Whether the thread (and therefore all its comments) is visible to all YouTube + users.\",\n \"type\": \"boolean\"\n }\n },\n \"description\": + \"Basic details about a comment thread.\"\n },\n \"WatchSettings\": + {\n \"properties\": {\n \"textColor\": {\n \"description\": + \"The background color for the video watch page's branded area.\",\n \"type\": + \"string\"\n },\n \"backgroundColor\": {\n \"type\": + \"string\",\n \"description\": \"The text color for the video watch + page's branded area.\"\n },\n \"featuredPlaylistId\": {\n \"type\": + \"string\",\n \"description\": \"An ID that uniquely identifies a + playlist that displays next to the video player.\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"WatchSettings\",\n \"description\": + \"Branding properties for the watch. All deprecated.\"\n },\n \"LiveChatSuperStickerDetails\": + {\n \"properties\": {\n \"superStickerMetadata\": {\n \"description\": + \"Information about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n + \ },\n \"tier\": {\n \"format\": \"uint32\",\n \"type\": + \"integer\",\n \"description\": \"The tier in which the amount belongs. + Lower amounts belong to lower tiers. The lowest tier is 1.\"\n },\n + \ \"currency\": {\n \"type\": \"string\",\n \"description\": + \"The currency in which the purchase was made.\"\n },\n \"amountDisplayString\": + {\n \"description\": \"A rendered string that displays the fund amount + and currency to the user.\",\n \"type\": \"string\"\n },\n + \ \"amountMicros\": {\n \"format\": \"uint64\",\n \"description\": + \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n + \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatSuperStickerDetails\",\n + \ \"type\": \"object\"\n },\n \"InvideoBranding\": {\n \"id\": + \"InvideoBranding\",\n \"description\": \"LINT.IfChange Describes an + invideo branding.\",\n \"properties\": {\n \"imageUrl\": {\n \"type\": + \"string\",\n \"description\": \"The url of the uploaded image. Only + used in apiary to api communication.\"\n },\n \"timing\": {\n + \ \"description\": \"The temporal position within the video where + watermark will be displayed.\",\n \"$ref\": \"InvideoTiming\"\n },\n + \ \"targetChannelId\": {\n \"type\": \"string\",\n \"description\": + \"The channel to which this branding links. If not present it defaults to + the current channel.\"\n },\n \"imageBytes\": {\n \"format\": + \"byte\",\n \"description\": \"The bytes the uploaded image. Only + used in api to youtube communication.\",\n \"type\": \"string\"\n + \ },\n \"position\": {\n \"$ref\": \"InvideoPosition\",\n + \ \"description\": \"The spatial position within the video where the + branding watermark will be displayed.\"\n }\n },\n \"type\": + \"object\"\n },\n \"TestItemTestItemSnippet\": {\n \"id\": \"TestItemTestItemSnippet\",\n + \ \"type\": \"object\",\n \"properties\": {}\n },\n \"LiveChatMessageDeletedDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageDeletedDetails\",\n + \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": + \"string\"\n }\n }\n },\n \"VideoLiveStreamingDetails\": {\n \"description\": \"Details about the live streaming metadata.\",\n - \ \"properties\": {\n \"actualStartTime\": {\n \"description\": - \"The time that the broadcast actually started. This value will not be available - until the broadcast begins.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"scheduledEndTime\": {\n \"description\": - \"The time that the broadcast is scheduled to end. If the value is empty or - the property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"actualEndTime\": {\n \"description\": \"The time that the - broadcast actually ended. This value will not be available until the broadcast - is over.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"scheduledStartTime\": {\n \"description\": - \"The time that the broadcast is scheduled to begin.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"activeLiveChatId\": - {\n \"description\": \"The ID of the currently active live chat attached - to this video. This field is filled only if the video is a currently live - broadcast that has live chat. Once the broadcast transitions to complete this - field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\",\n \"type\": \"string\"\n - \ },\n \"concurrentViewers\": {\n \"description\": \"The + \ \"properties\": {\n \"concurrentViewers\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The number of viewers currently watching the broadcast. The property and its value will be present if the broadcast has current viewers and the broadcast owner has not hidden the viewcount for the video. Note that YouTube stops tracking the number of concurrent viewers for a broadcast when the broadcast ends. So, this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoLiveStreamingDetails\"\n },\n \"ActivityContentDetails\": - {\n \"id\": \"ActivityContentDetails\",\n \"description\": \"Details - about the content of an activity: the video that was shared, the channel that - was subscribed to, etc.\",\n \"type\": \"object\",\n \"properties\": - {\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n },\n \"upload\": {\n \"$ref\": \"ActivityContentDetailsUpload\",\n - \ \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\"\n - \ },\n \"channelItem\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsChannelItem\"\n },\n \"promotedItem\": - {\n \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\",\n \"$ref\": \"ActivityContentDetailsPromotedItem\"\n - \ },\n \"like\": {\n \"$ref\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"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.\"\n },\n \"favorite\": {\n \"$ref\": - \"ActivityContentDetailsFavorite\",\n \"description\": \"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.\"\n },\n - \ \"subscription\": {\n \"description\": \"The subscription - object contains information about a channel that a user subscribed to. This - property is only present if the snippet.type is subscription.\",\n \"$ref\": - \"ActivityContentDetailsSubscription\"\n },\n \"recommendation\": - {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n \"description\": - \"The recommendation object contains information about a recommended resource. - This property is only present if the snippet.type is recommendation.\"\n },\n - \ \"social\": {\n \"description\": \"The social object contains - details about a social network post. This property is only present if the - snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\"\n },\n \"comment\": {\n \"$ref\": - \"ActivityContentDetailsComment\",\n \"description\": \"The comment - object contains information about a resource that received a comment. This - property is only present if the snippet.type is comment.\"\n }\n }\n - \ },\n \"VideoSnippet\": {\n \"id\": \"VideoSnippet\",\n \"properties\": - {\n \"localized\": {\n \"description\": \"Localized snippet - selected with the hl parameter. If no such localization exists, this field - is populated with the default snippet. (Read-only)\",\n \"$ref\": - \"VideoLocalization\"\n },\n \"liveBroadcastContent\": {\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The live - broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the videos's default snippet.\",\n - \ \"type\": \"string\"\n },\n \"defaultAudioLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\"\n - \ },\n \"categoryId\": {\n \"description\": \"The YouTube - video category associated with the video.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time when the video was uploaded.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The video's description. @mutable - youtube.videos.insert youtube.videos.update\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that the video was uploaded to.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the video - belongs to.\"\n },\n \"tags\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of keyword tags - associated with the video. Tags may contain spaces.\",\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic details about a video, including title, description, uploader, thumbnails - and category.\"\n },\n \"GeoPoint\": {\n \"type\": \"object\",\n - \ \"description\": \"Geographical coordinates of a point, in WGS84.\",\n - \ \"properties\": {\n \"latitude\": {\n \"type\": \"number\",\n - \ \"description\": \"Latitude in degrees.\",\n \"format\": - \"double\"\n },\n \"longitude\": {\n \"format\": \"double\",\n - \ \"description\": \"Longitude in degrees.\",\n \"type\": - \"number\"\n },\n \"altitude\": {\n \"format\": \"double\",\n - \ \"description\": \"Altitude above the reference ellipsoid, in meters.\",\n - \ \"type\": \"number\"\n }\n },\n \"id\": \"GeoPoint\"\n - \ },\n \"SearchResult\": {\n \"description\": \"A search result - contains information about a YouTube video, channel, or playlist that matches - the search parameters specified in an API request. While a search result points - to a uniquely identifiable resource, like a video, it does not have its own - persistent data.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\",\n \"$ref\": \"SearchResultSnippet\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#searchResult\"\n - \ }\n },\n \"id\": \"SearchResult\"\n },\n \"VideoRating\": - {\n \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n },\n \"rating\": {\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"type\": \"string\",\n \"description\": - \"Rating of a video.\"\n }\n },\n \"description\": \"Basic - details about rating of a video.\",\n \"id\": \"VideoRating\",\n \"type\": - \"object\"\n },\n \"LiveBroadcastListResponse\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of broadcasts that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#liveBroadcastListResponse\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n }\n },\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"type\": \"object\"\n },\n \"PlaylistItem\": {\n \"id\": - \"PlaylistItem\",\n \"description\": \"A *playlistItem* resource identifies - another resource, such as a video, that is included in a playlist. In addition, - the playlistItem resource contains details about the included resource that - pertain specifically to how that resource is used in that playlist. YouTube - uses playlists to identify special collections of videos for a channel, such - as: - uploaded videos - favorite videos - positively rated (liked) videos - - watch history - watch later To be more specific, these lists are associated - with a channel, which is a collection of a person, group, or company's videos, - playlists, and other YouTube information. You can retrieve the playlist IDs - for each of these lists from the channel resource for a given channel. You - can then use the playlistItems.list method to retrieve any of those lists. - You can also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods. For example, if a user gives a positive - rating to a video, you would insert that video into the liked videos playlist - for that user's channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the playlist item, such as its title and position - in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the playlist item.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#playlistItem\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItem\\\".\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object is included in the resource if the included item - is a YouTube video. The object contains additional information about the video.\",\n - \ \"$ref\": \"PlaylistItemContentDetails\"\n },\n \"status\": - {\n \"$ref\": \"PlaylistItemStatus\",\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\"\n }\n }\n },\n \"SubscriptionContentDetails\": - {\n \"properties\": {\n \"newItemCount\": {\n \"description\": - \"The number of new items in the subscription since its content was last read.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"totalItemCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The approximate number of items that the subscription points to.\",\n \"type\": - \"integer\"\n },\n \"activityType\": {\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"subscriptionActivityTypeUnspecified\",\n \"all\",\n - \ \"uploads\"\n ]\n }\n },\n \"description\": - \"Details about the content to witch a subscription refers.\",\n \"id\": - \"SubscriptionContentDetails\",\n \"type\": \"object\"\n },\n \"ChannelStatus\": - {\n \"id\": \"ChannelStatus\",\n \"description\": \"JSON template - for the status part of a channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"longUploadsStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The long uploads status of this - channel. See https://support.google.com/youtube/answer/71673 for more information.\",\n - \ \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ]\n },\n - \ \"isLinked\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"Privacy - status of the channel.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatMessageDeletedDetails\": {\n \"properties\": {\n - \ \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"ChannelAuditDetails\": {\n \"type\": \"object\",\n \"id\": - \"ChannelAuditDetails\",\n \"description\": \"The auditDetails object - encapsulates channel data that is relevant for YouTube Partners during the - audit process.\",\n \"properties\": {\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel respects the community guidelines.\"\n }\n }\n - \ },\n \"MembershipsDuration\": {\n \"properties\": {\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member across all levels.\",\n \"type\": \"string\"\n },\n - \ \"memberTotalDurationMonths\": {\n \"format\": \"int32\",\n - \ \"type\": \"integer\",\n \"description\": \"The cumulative - time the user has been a member across all levels in complete months (the - time is rounded down to the nearest integer).\"\n }\n },\n \"id\": - \"MembershipsDuration\",\n \"type\": \"object\"\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"properties\": {\n \"categoryRestricts\": {\n \"type\": - \"array\",\n \"description\": \"A set of video categories for which - the tag is relevant. You can use this information to display appropriate tag - suggestions based on the video category that the video uploader associates - with the video. By default, tag suggestions are relevant for all categories - if there are no restricts defined for the keyword.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"tag\": - {\n \"description\": \"The keyword tag suggested for the video.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A single tag suggestion with it's relevance information.\",\n - \ \"id\": \"VideoSuggestionsTagSuggestion\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n \"description\": - \"Details about a resource which is being promoted.\",\n \"properties\": - {\n \"forecastingUrl\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"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.\"\n },\n \"impressionUrl\": {\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"creativeViewUrl\": {\n \"description\": \"The - URL the client should ping to indicate that the user was shown this promoted - item.\",\n \"type\": \"string\"\n },\n \"adTag\": {\n - \ \"description\": \"The URL the client should fetch to request a - promoted item.\",\n \"type\": \"string\"\n },\n \"clickTrackingUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user clicked through on this promoted - item.\"\n },\n \"customCtaButtonText\": {\n \"description\": - \"The custom call-to-action button text. If specified, it will override the - default button text for the cta_type.\",\n \"type\": \"string\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the promoted video.\"\n },\n - \ \"destinationUrl\": {\n \"description\": \"The URL the client - should direct the user to, if the user chooses to visit the advertiser's website.\",\n - \ \"type\": \"string\"\n },\n \"ctaType\": {\n \"type\": - \"string\",\n \"description\": \"The type of call-to-action, a message - to the user indicating action that can be taken.\",\n \"enum\": [\n - \ \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"descriptionText\": {\n \"type\": - \"string\",\n \"description\": \"The text description to accompany - the promoted item.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"ActivityContentDetailsBulletin\": {\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsBulletin\",\n \"description\": \"Details about - a channel bulletin post.\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource associated with a bulletin post. @mutable youtube.activities.insert\",\n - \ \"$ref\": \"ResourceId\"\n }\n }\n },\n \"VideoProjectDetails\": - {\n \"id\": \"VideoProjectDetails\",\n \"type\": \"object\",\n \"description\": - \"DEPRECATED. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"properties\": {}\n },\n \"PlaylistListResponse\": {\n \"properties\": - {\n \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of playlists - that match the request criteria\",\n \"items\": {\n \"$ref\": - \"Playlist\"\n },\n \"type\": \"array\"\n },\n \"kind\": - {\n \"default\": \"youtube#playlistListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"PlaylistListResponse\",\n - \ \"type\": \"object\"\n },\n \"VideoLocalization\": {\n \"id\": - \"VideoLocalization\",\n \"properties\": {\n \"title\": {\n \"description\": - \"Localized version of the video's title.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Localized version of the video's description.\"\n - \ }\n },\n \"description\": \"Localized versions of certain - video properties (e.g. title).\",\n \"type\": \"object\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"type\": \"object\",\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel ID of the subscriber.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the subscriber.\"\n },\n \"thumbnails\": {\n - \ \"$ref\": \"ThumbnailDetails\",\n \"description\": \"Thumbnails - for this subscriber.\"\n },\n \"description\": {\n \"description\": - \"The description of the subscriber.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Basic details about a subscription's - subscriber including title, description, channel ID and thumbnails.\"\n },\n - \ \"InvideoBranding\": {\n \"description\": \"LINT.IfChange Describes - an invideo branding.\",\n \"id\": \"InvideoBranding\",\n \"type\": - \"object\",\n \"properties\": {\n \"position\": {\n \"$ref\": - \"InvideoPosition\",\n \"description\": \"The spatial position within - the video where the branding watermark will be displayed.\"\n },\n - \ \"imageUrl\": {\n \"description\": \"The url of the uploaded - image. Only used in apiary to api communication.\",\n \"type\": \"string\"\n - \ },\n \"targetChannelId\": {\n \"description\": \"The - channel to which this branding links. If not present it defaults to the current - channel.\",\n \"type\": \"string\"\n },\n \"imageBytes\": - {\n \"description\": \"The bytes the uploaded image. Only used in - api to youtube communication.\",\n \"format\": \"byte\",\n \"type\": - \"string\"\n },\n \"timing\": {\n \"$ref\": \"InvideoTiming\",\n - \ \"description\": \"The temporal position within the video where - watermark will be displayed.\"\n }\n }\n },\n \"ChannelSectionListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#channelSectionListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"description\": \"A list of ChannelSections - that match the request criteria.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"id\": \"ChannelSectionListResponse\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n \"default\": - \"youtube#thirdPartyLinkListResponse\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n }\n }\n },\n \"id\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"I18nLanguageListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"description\": - \"A list of supported i18n languages. In this map, the i18n language ID is - the map key, and its value is the corresponding i18nLanguage resource.\",\n - \ \"items\": {\n \"$ref\": \"I18nLanguage\"\n },\n - \ \"type\": \"array\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"I18nLanguageListResponse\"\n - \ },\n \"SuperStickerMetadata\": {\n \"id\": \"SuperStickerMetadata\",\n - \ \"properties\": {\n \"altText\": {\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\",\n \"type\": \"string\"\n },\n \"altTextLanguage\": - {\n \"description\": \"Specifies the localization language in which - the alt text is returned.\",\n \"type\": \"string\"\n },\n - \ \"stickerId\": {\n \"type\": \"string\",\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ThumbnailDetails\": - {\n \"type\": \"object\",\n \"description\": \"Internal representation - of thumbnails for a YouTube resource.\",\n \"properties\": {\n \"medium\": - {\n \"description\": \"The medium quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"default\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The default image for this resource.\"\n - \ },\n \"high\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The high quality image for this resource.\"\n },\n \"standard\": - {\n \"description\": \"The standard quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"maxres\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The maximum resolution quality - image for this resource.\"\n }\n },\n \"id\": \"ThumbnailDetails\"\n - \ },\n \"VideoListResponse\": {\n \"properties\": {\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Video\"\n },\n \"type\": \"array\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"default\": \"youtube#videoListResponse\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoListResponse\"\n },\n \"LiveChatModerator\": - {\n \"description\": \"A *liveChatModerator* resource represents a moderator - for a YouTube live chat. A chat moderator has the ability to ban/unban users - from a chat, remove message, etc.\",\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"default\": \"youtube#liveChatModerator\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveChatModerator\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"properties\": {\n \"associatedMembershipGiftingMessageId\": - {\n \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n - \ },\n \"memberLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the Level at which the viewer is - a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"gifterChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the user that made the - membership gifting purchase. This matches the `snippet.authorChannelId` of - the associated membership gifting message.\"\n }\n }\n },\n - \ \"ChannelSectionSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a channel section, including title, style and position.\",\n - \ \"properties\": {\n \"position\": {\n \"type\": \"integer\",\n - \ \"description\": \"The position of the channel section in the channel.\",\n - \ \"format\": \"uint32\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel section's title for - multiple_playlists and multiple_channels.\"\n },\n \"style\": - {\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The style of the channel section.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the channel section.\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The type of the channel section.\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ]\n },\n \"localized\": - {\n \"description\": \"Localized title, read-only.\",\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"defaultLanguage\": {\n - \ \"type\": \"string\",\n \"description\": \"The language - of the channel section's default title and description.\"\n }\n },\n - \ \"id\": \"ChannelSectionSnippet\"\n },\n \"ImageSettings\": {\n - \ \"id\": \"ImageSettings\",\n \"properties\": {\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size low resolution (854x480).\"\n },\n \"bannerImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size low resolution (1138x188).\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\",\n \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\"\n },\n \"backgroundImageUrl\": - {\n \"description\": \"The URL for the background image shown on - the video watch page. The image should be 1200px by 615px, with a maximum - file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerMobileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. Mobile size (640x175).\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size medium resolution (1280x720).\"\n },\n \"trackingImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerTabletImageUrl\": - {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size low resolution (320x88).\"\n },\n \"bannerExternalUrl\": - {\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"smallBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 640px - by 70px banner image that appears below the video player in the default view - of the video watch page. The URL for the image that appears above the top-left - corner of the video player. This is a 25-pixel-high image with a flexible - width that cannot exceed 170 pixels.\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTvImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Branding properties - for images associated with the channel.\"\n },\n \"PageInfo\": {\n \"id\": - \"PageInfo\",\n \"type\": \"object\",\n \"description\": \"Paging - details for lists of resources, including total number of items available - and number of resources returned in a single page.\",\n \"properties\": - {\n \"totalResults\": {\n \"description\": \"The total number - of results in the result set.\",\n \"type\": \"integer\",\n \"format\": - \"int32\"\n },\n \"resultsPerPage\": {\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The number of results included in the API response.\"\n }\n }\n - \ },\n \"Member\": {\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"default\": \"youtube#member\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the member.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"Member\",\n \"description\": \"A *member* resource represents a member - for a YouTube channel. A member provides recurring monetary support to a creator - and receives special benefits.\"\n },\n \"TestItem\": {\n \"id\": - \"TestItem\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\"\n },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"gaia\": {\n \"format\": \"int64\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"description\": \"Details about a resource which was added - to a channel.\"\n },\n \"ChannelConversionPings\": {\n \"type\": - \"object\",\n \"properties\": {\n \"pings\": {\n \"description\": - \"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.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n }\n }\n },\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"id\": \"ChannelConversionPings\"\n - \ },\n \"VideoProcessingDetails\": {\n \"description\": \"Describes - processing status and progress and availability of some other Video resource - parts.\",\n \"id\": \"VideoProcessingDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"processingStatus\": {\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"description\": \"The - video's processing status. This value indicates whether YouTube was able to - process the video or if the video is still being processed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"editorSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether video editing suggestions, which might improve video quality - or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\"\n },\n \"processingProgress\": {\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"processingFailureReason\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The reason that YouTube failed - to process the video. This property will only have a value if the processingStatus - property's value is failed.\",\n \"type\": \"string\",\n \"enum\": - [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ]\n },\n \"processingIssuesAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether the video processing engine has generated suggestions that - might improve YouTube's ability to process the the video, warnings that explain - video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\"\n },\n \"tagSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether keyword (tag) - suggestions are available for the video. Tags can be added to a video's metadata - to make it easier for other users to find the video. You can retrieve these - suggestions by requesting the suggestions part in your videos.list() request.\",\n - \ \"type\": \"string\"\n },\n \"fileDetailsAvailability\": - {\n \"description\": \"This value indicates whether file details - are available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"thumbnailsAvailability\": {\n \"description\": - \"This value indicates whether thumbnail images have been generated for the - video.\",\n \"type\": \"string\"\n }\n }\n },\n \"ChannelContentOwnerDetails\": - {\n \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"type\": - \"object\",\n \"id\": \"ChannelContentOwnerDetails\",\n \"properties\": - {\n \"timeLinked\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the channel was linked to the content owner.\",\n - \ \"format\": \"date-time\"\n },\n \"contentOwner\": + video of a live broadcast that already ended.\"\n },\n \"actualStartTime\": + {\n \"description\": \"The time that the broadcast actually started. + This value will not be available until the broadcast begins.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"activeLiveChatId\": {\n \"type\": \"string\",\n \"description\": \"The ID of - the content owner linked to the channel.\"\n }\n }\n },\n \"CommentListResponse\": - {\n \"id\": \"CommentListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentListResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - comments that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Comment\"\n }\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"type\": - \"object\"\n },\n \"PlaylistItemListResponse\": {\n \"id\": \"PlaylistItemListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of playlist items that match - the request criteria.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoAbuseReportReason\": - {\n \"id\": \"VideoAbuseReportReason\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n \"default\": - \"youtube#videoAbuseReportReason\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"id\": {\n \"description\": - \"The ID of this abuse report reason.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"A `__videoAbuseReportReason__` resource identifies a reason that a video - could be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\",\n - \ \"type\": \"object\"\n },\n \"TokenPagination\": {\n \"description\": - \"Stub token pagination template to suppress results.\",\n \"type\": - \"object\",\n \"id\": \"TokenPagination\",\n \"properties\": {}\n - \ },\n \"VideoAgeGating\": {\n \"type\": \"object\",\n \"id\": - \"VideoAgeGating\",\n \"properties\": {\n \"restricted\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\"\n },\n - \ \"alcoholContent\": {\n \"description\": \"Indicates whether - or not the video has alcoholic beverage content. Only users of legal purchasing - age in a particular country, as identified by ICAP, can view the content.\",\n - \ \"type\": \"boolean\"\n },\n \"videoGameRating\": - {\n \"description\": \"Video game rating, if any.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ]\n }\n }\n },\n \"LiveChatModeratorSnippet\": - {\n \"properties\": {\n \"moderatorDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - moderator.\"\n },\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the live chat this moderator can act - on.\"\n }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\"\n - \ },\n \"SuperChatEventSnippet\": {\n \"id\": \"SuperChatEventSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"supporterDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the supporter.\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\"\n },\n \"messageType\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\"\n },\n \"isSuperStickerEvent\": {\n - \ \"type\": \"boolean\",\n \"description\": \"True if this - event is a Super Sticker event.\"\n },\n \"currency\": {\n \"description\": + the currently active live chat attached to this video. This field is filled + only if the video is a currently live broadcast that has live chat. Once the + broadcast transitions to complete this field will be removed and the live + chat closed down. For persistent broadcasts that live chat id will no longer + be tied to this video but rather to the new video being displayed at the persistent + page.\"\n },\n \"scheduledStartTime\": {\n \"format\": + \"date-time\",\n \"type\": \"string\",\n \"description\": + \"The time that the broadcast is scheduled to begin.\"\n },\n \"actualEndTime\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The time that the broadcast actually ended. This + value will not be available until the broadcast is over.\"\n },\n \"scheduledEndTime\": + {\n \"type\": \"string\",\n \"description\": \"The time + that the broadcast is scheduled to end. If the value is empty or the property + is not present, then the broadcast is scheduled to contiue indefinitely.\",\n + \ \"format\": \"date-time\"\n }\n },\n \"id\": \"VideoLiveStreamingDetails\",\n + \ \"type\": \"object\"\n },\n \"LocalizedProperty\": {\n \"type\": + \"object\",\n \"properties\": {\n \"localized\": {\n \"items\": + {\n \"$ref\": \"LocalizedString\"\n },\n \"type\": + \"array\"\n },\n \"defaultLanguage\": {\n \"description\": + \"The language of the default property.\",\n \"$ref\": \"LanguageTag\"\n + \ },\n \"default\": {\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"LocalizedProperty\"\n },\n \"CommentSnippet\": + {\n \"properties\": {\n \"authorChannelId\": {\n \"$ref\": + \"CommentSnippetAuthorChannelId\"\n },\n \"textOriginal\": {\n + \ \"description\": \"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.\",\n + \ \"type\": \"string\"\n },\n \"videoId\": {\n \"description\": + \"The ID of the video the comment refers to, if any.\",\n \"type\": + \"string\"\n },\n \"textDisplay\": {\n \"type\": \"string\",\n + \ \"description\": \"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.\"\n },\n \"authorChannelUrl\": {\n \"type\": + \"string\",\n \"description\": \"Link to the author's YouTube channel, + if any.\"\n },\n \"parentId\": {\n \"description\": + \"The unique id of the parent comment, only set for replies.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"description\": + \"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.\",\n \"type\": \"string\"\n },\n \"viewerRating\": + {\n \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"The + entity is liked.\",\n \"The entity is disliked.\"\n ],\n + \ \"description\": \"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.\",\n \"type\": \"string\"\n + \ },\n \"authorDisplayName\": {\n \"description\": \"The + name of the user who posted the comment.\",\n \"type\": \"string\"\n + \ },\n \"authorProfileImageUrl\": {\n \"type\": \"string\",\n + \ \"description\": \"The URL for the avatar of the user who posted + the comment.\"\n },\n \"publishedAt\": {\n \"description\": + \"The date and time when the comment was originally published.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"moderationStatus\": + {\n \"type\": \"string\",\n \"description\": \"The comment's + moderation status. Will not be set if the comments were requested through + the id filter.\",\n \"enumDescriptions\": [\n \"The comment + is available for public display.\",\n \"The comment is awaiting + review by a moderator.\",\n \"\",\n \"The comment is + unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n + \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n + \ ]\n },\n \"canRate\": {\n \"description\": + \"Whether the current viewer can rate this comment.\",\n \"type\": + \"boolean\"\n },\n \"likeCount\": {\n \"description\": + \"The total number of likes this comment has received.\",\n \"type\": + \"integer\",\n \"format\": \"uint32\"\n },\n \"updatedAt\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the comment was last updated.\",\n \"format\": \"date-time\"\n + \ }\n },\n \"description\": \"Basic details about a comment, + such as its author and text.\",\n \"type\": \"object\",\n \"id\": + \"CommentSnippet\"\n },\n \"SuperChatEventSnippet\": {\n \"id\": + \"SuperChatEventSnippet\",\n \"properties\": {\n \"messageType\": + {\n \"format\": \"uint32\",\n \"description\": \"The tier + for the paid message, which is based on the amount of money spent to purchase + the message.\",\n \"type\": \"integer\"\n },\n \"channelId\": + {\n \"description\": \"Channel id where the event occurred.\",\n + \ \"type\": \"string\"\n },\n \"currency\": {\n \"description\": \"The currency in which the purchase was made. ISO 4217.\",\n \"type\": - \"string\"\n },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The purchase - amount, in micros of the purchase currency. e.g., 1 is represented as 1000000.\"\n - \ },\n \"displayString\": {\n \"description\": \"A rendered - string that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). - The string is rendered for the given language.\",\n \"type\": \"string\"\n - \ },\n \"commentText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text contents of the comment left by the - user.\"\n },\n \"channelId\": {\n \"description\": - \"Channel id where the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"createdAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the event occurred.\",\n \"format\": \"date-time\"\n - \ }\n }\n },\n \"VideoFileDetailsVideoStream\": {\n \"id\": - \"VideoFileDetailsVideoStream\",\n \"type\": \"object\",\n \"properties\": - {\n \"bitrateBps\": {\n \"description\": \"The video stream's - bitrate, in bits per second.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"frameRateFps\": {\n \"type\": \"number\",\n - \ \"format\": \"double\",\n \"description\": \"The video - stream's frame rate, in frames per second.\"\n },\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The video - codec that the stream uses.\"\n },\n \"heightPixels\": {\n \"type\": - \"integer\",\n \"description\": \"The encoded video content's height - in pixels.\",\n \"format\": \"uint32\"\n },\n \"vendor\": - {\n \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\",\n \"type\": - \"string\"\n },\n \"widthPixels\": {\n \"format\": - \"uint32\",\n \"description\": \"The encoded video content's width - in pixels. You can calculate the video's encoding aspect ratio as width_pixels - / height_pixels.\",\n \"type\": \"integer\"\n },\n \"rotation\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The amount that YouTube needs to - rotate the original source content to properly display the video.\",\n \"enum\": - [\n \"none\",\n \"clockwise\",\n \"upsideDown\",\n - \ \"counterClockwise\",\n \"other\"\n ]\n },\n - \ \"aspectRatio\": {\n \"description\": \"The video content's - display aspect ratio, which specifies the aspect ratio in which the video - should be displayed.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n }\n },\n \"description\": \"Information about - a video stream.\"\n },\n \"LiveChatSuperChatDetails\": {\n \"properties\": - {\n \"userComment\": {\n \"description\": \"The comment added - by the user to this Super Chat event.\",\n \"type\": \"string\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"format\": \"uint64\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"type\": \"string\"\n },\n \"tier\": {\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatSuperChatDetails\"\n },\n \"I18nLanguageSnippet\": - {\n \"description\": \"Basic details about an i18n language, such as - language code and human-readable name.\",\n \"id\": \"I18nLanguageSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"name\": {\n - \ \"description\": \"The human-readable name of the language in the - language itself.\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"description\": \"A short BCP-47 code that uniquely identifies - a language.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ResourceId\": {\n \"description\": \"A resource id is a generic - reference that points to another YouTube resource.\",\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\",\n \"type\": \"string\"\n },\n - \ \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\"\n },\n \"kind\": {\n \"description\": - \"The type of the API resource.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ResourceId\",\n \"type\": \"object\"\n },\n - \ \"ActivityContentDetailsUpload\": {\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsUpload\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the uploaded video.\"\n }\n },\n - \ \"description\": \"Information about the uploaded video.\"\n },\n - \ \"I18nLanguage\": {\n \"properties\": {\n \"snippet\": {\n - \ \"description\": \"The snippet object contains basic details about - the i18n language, such as language code and human-readable name.\",\n \"$ref\": - \"I18nLanguageSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nLanguage\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n language.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"id\": \"I18nLanguage\",\n \"type\": \"object\",\n \"description\": - \"An *i18nLanguage* resource identifies a UI language currently supported - by YouTube.\"\n },\n \"LiveStreamListResponse\": {\n \"id\": \"LiveStreamListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveStreamListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveStream\"\n },\n \"description\": \"A list of live - streams that match the request criteria.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelBrandingSettings\": {\n \"id\": \"ChannelBrandingSettings\",\n - \ \"type\": \"object\",\n \"description\": \"Branding properties - of a YouTube channel.\",\n \"properties\": {\n \"watch\": {\n - \ \"description\": \"Branding properties for the watch page.\",\n - \ \"$ref\": \"WatchSettings\"\n },\n \"hints\": {\n - \ \"items\": {\n \"$ref\": \"PropertyValue\"\n },\n - \ \"type\": \"array\",\n \"description\": \"Additional experimental - branding properties.\"\n },\n \"image\": {\n \"$ref\": - \"ImageSettings\",\n \"description\": \"Branding properties for branding - images.\"\n },\n \"channel\": {\n \"$ref\": \"ChannelSettings\",\n - \ \"description\": \"Branding properties for the channel view.\"\n - \ }\n }\n },\n \"LiveChatMessageListResponse\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\"\n },\n \"offlineAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the underlying stream - went offline.\",\n \"format\": \"date-time\"\n },\n \"tokenPagination\": + \"string\"\n },\n \"displayString\": {\n \"description\": + \"A rendered string that displays the purchase amount and currency (e.g., + \\\"$1.00\\\"). The string is rendered for the given language.\",\n \"type\": + \"string\"\n },\n \"superStickerMetadata\": {\n \"$ref\": + \"SuperStickerMetadata\",\n \"description\": \"If this event is a + Super Sticker event, this field will contain metadata about the Super Sticker.\"\n + \ },\n \"createdAt\": {\n \"description\": \"The date + and time when the event occurred.\",\n \"format\": \"date-time\",\n + \ \"type\": \"string\"\n },\n \"commentText\": {\n \"type\": + \"string\",\n \"description\": \"The text contents of the comment + left by the user.\"\n },\n \"amountMicros\": {\n \"description\": + \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented + as 1000000.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n + \ },\n \"isSuperStickerEvent\": {\n \"description\": + \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n + \ },\n \"supporterDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n + \ \"description\": \"Details about the supporter.\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"CommentThreadReplies\": {\n \"description\": + \"Comments written in (direct or indirect) reply to the top level comment.\",\n + \ \"properties\": {\n \"comments\": {\n \"description\": + \"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.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Comment\"\n }\n }\n },\n \"id\": + \"CommentThreadReplies\",\n \"type\": \"object\"\n },\n \"VideoSuggestionsTagSuggestion\": + {\n \"properties\": {\n \"categoryRestricts\": {\n \"description\": + \"A set of video categories for which the tag is relevant. You can use this + information to display appropriate tag suggestions based on the video category + that the video uploader associates with the video. By default, tag suggestions + are relevant for all categories if there are no restricts defined for the + keyword.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": + \"string\"\n }\n },\n \"tag\": {\n \"type\": + \"string\",\n \"description\": \"The keyword tag suggested for the + video.\"\n }\n },\n \"id\": \"VideoSuggestionsTagSuggestion\",\n + \ \"description\": \"A single tag suggestion with it's relevance information.\",\n + \ \"type\": \"object\"\n },\n \"SuperStickerMetadata\": {\n \"id\": + \"SuperStickerMetadata\",\n \"properties\": {\n \"altText\": {\n + \ \"description\": \"Internationalized alt text that describes the + sticker image and any animation associated with it.\",\n \"type\": + \"string\"\n },\n \"altTextLanguage\": {\n \"type\": + \"string\",\n \"description\": \"Specifies the localization language + in which the alt text is returned.\"\n },\n \"stickerId\": {\n + \ \"type\": \"string\",\n \"description\": \"Unique identifier + of the Super Sticker. This is a shorter form of the alt_text that includes + pack name and a recognizable characteristic of the sticker.\"\n }\n + \ },\n \"type\": \"object\"\n },\n \"ChannelSectionContentDetails\": + {\n \"type\": \"object\",\n \"id\": \"ChannelSectionContentDetails\",\n + \ \"description\": \"Details about a channelsection, including playlists + and channels.\",\n \"properties\": {\n \"channels\": {\n \"description\": + \"The channel ids for type multiple_channels.\",\n \"items\": {\n + \ \"type\": \"string\"\n },\n \"type\": \"array\"\n + \ },\n \"playlists\": {\n \"description\": \"The playlist + ids for type single_playlist and multiple_playlists. For singlePlaylist, only + one playlistId is allowed.\",\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\"\n }\n }\n + \ },\n \"LiveChatBanSnippet\": {\n \"properties\": {\n \"banDurationSeconds\": + {\n \"format\": \"uint64\",\n \"description\": \"The duration + of a ban, only filled if the ban has type TEMPORARY.\",\n \"type\": + \"string\"\n },\n \"liveChatId\": {\n \"type\": \"string\",\n + \ \"description\": \"The chat this ban is pertinent to.\"\n },\n + \ \"type\": {\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n + \ \"permanent\",\n \"temporary\"\n ],\n \"enumDescriptions\": + [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n + \ \"A temporary ban.\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The type of ban.\"\n },\n \"bannedUserDetails\": + {\n \"$ref\": \"ChannelProfileDetails\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveChatBanSnippet\"\n },\n \"VideoFileDetailsAudioStream\": + {\n \"properties\": {\n \"bitrateBps\": {\n \"format\": + \"uint64\",\n \"type\": \"string\",\n \"description\": \"The + audio stream's bitrate, in bits per second.\"\n },\n \"channelCount\": + {\n \"description\": \"The number of audio channels that the stream + contains.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n + \ },\n \"codec\": {\n \"type\": \"string\",\n \"description\": + \"The audio codec that the stream uses.\"\n },\n \"vendor\": + {\n \"type\": \"string\",\n \"description\": \"A value that + uniquely identifies a video vendor. Typically, the value is a four-letter + vendor code.\"\n }\n },\n \"description\": \"Information + about an audio stream.\",\n \"type\": \"object\",\n \"id\": \"VideoFileDetailsAudioStream\"\n + \ },\n \"LiveBroadcastListResponse\": {\n \"properties\": {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"type\": \"array\"\n },\n \"pollingIntervalMillis\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The amount of time the client should wait before polling again.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatMessageListResponse\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageListResponse\",\n - \ \"type\": \"object\"\n },\n \"ChannelSection\": {\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"default\": \"youtube#channelSection\",\n \"type\": \"string\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n },\n \"targeting\": {\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"ChannelSectionSnippet\",\n \"description\": \"The snippet object - contains basic details about the channel section, such as its type, style - and title.\"\n },\n \"localizations\": {\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelSectionLocalization\"\n - \ }\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelSection\"\n },\n \"ChannelProfileDetails\": {\n \"id\": - \"ChannelProfileDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The channel's display name.\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel ID.\"\n }\n }\n - \ },\n \"SearchListResponse\": {\n \"properties\": {\n \"items\": - {\n \"items\": {\n \"$ref\": \"SearchResult\"\n },\n - \ \"description\": \"Pagination information for token pagination.\",\n - \ \"type\": \"array\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"regionCode\": {\n \"type\": \"string\"\n + {\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n },\n + \ \"description\": \"A list of broadcasts that match the request criteria.\",\n + \ \"type\": \"array\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\"\n },\n \"eventId\": {\n + \ \"type\": \"string\",\n \"description\": \"Serialized EventId + of the request which produced this response.\"\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveBroadcastListResponse\",\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n + \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n + \ },\n \"id\": \"LiveBroadcastListResponse\",\n \"type\": \"object\"\n + \ },\n \"I18nRegion\": {\n \"properties\": {\n \"kind\": + {\n \"default\": \"youtube#i18nRegion\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the i18n region, such as + region code and human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify the i18n region.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"I18nRegion\",\n \"type\": \"object\",\n \"description\": \"A *i18nRegion* + resource identifies a region where YouTube is available.\"\n },\n \"CommentThreadListResponse\": + {\n \"type\": \"object\",\n \"id\": \"CommentThreadListResponse\",\n + \ \"properties\": {\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n + \ \"default\": \"youtube#commentThreadListResponse\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"description\": \"A + list of comment threads that match the request criteria.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"CommentThread\"\n + \ }\n },\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n }\n }\n },\n \"LiveStreamHealthStatus\": + {\n \"properties\": {\n \"configurationIssues\": {\n \"description\": + \"The configurations issues on this stream\",\n \"items\": {\n \"$ref\": + \"LiveStreamConfigurationIssue\"\n },\n \"type\": \"array\"\n + \ },\n \"status\": {\n \"description\": \"The status + code of this stream\",\n \"enum\": [\n \"good\",\n \"ok\",\n + \ \"bad\",\n \"noData\",\n \"revoked\"\n ],\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"type\": + \"string\"\n },\n \"lastUpdateTimeSeconds\": {\n \"type\": + \"string\",\n \"description\": \"The last time this status was updated + (in seconds)\",\n \"format\": \"uint64\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"LiveStreamHealthStatus\"\n },\n \"MembershipsLevelSnippet\": + {\n \"type\": \"object\",\n \"id\": \"MembershipsLevelSnippet\",\n + \ \"properties\": {\n \"levelDetails\": {\n \"$ref\": + \"LevelDetails\",\n \"description\": \"Details about the pricing + level.\"\n },\n \"creatorChannelId\": {\n \"type\": + \"string\",\n \"description\": \"The id of the channel that's offering + channel memberships.\"\n }\n }\n },\n \"AbuseReport\": {\n + \ \"properties\": {\n \"abuseTypes\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"$ref\": \"AbuseType\"\n }\n + \ },\n \"subject\": {\n \"$ref\": \"Entity\"\n },\n + \ \"description\": {\n \"type\": \"string\"\n },\n \"relatedEntities\": + {\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n + \ \"type\": \"array\"\n }\n },\n \"id\": \"AbuseReport\",\n + \ \"type\": \"object\"\n },\n \"VideoContentDetails\": {\n \"type\": + \"object\",\n \"id\": \"VideoContentDetails\",\n \"properties\": + {\n \"duration\": {\n \"type\": \"string\",\n \"description\": + \"The length of the video. The tag value is an ISO 8601 duration in the format + PT#M#S, in which the letters PT indicate that the value specifies a period + of time, and the letters M and S refer to length in minutes and seconds, respectively. + The # characters preceding the M and S letters are both integers that specify + the number of minutes (or seconds) of the video. For example, a value of PT15M51S + indicates that the video is 15 minutes and 51 seconds long.\"\n },\n + \ \"caption\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"description\": \"The value of + captions indicates whether the video has captions or not.\",\n \"type\": + \"string\",\n \"enum\": [\n \"true\",\n \"false\"\n + \ ]\n },\n \"projection\": {\n \"type\": \"string\",\n + \ \"description\": \"Specifies the projection format of the video.\",\n + \ \"enum\": [\n \"rectangular\",\n \"360\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ]\n },\n \"countryRestriction\": {\n \"$ref\": + \"AccessPolicy\",\n \"description\": \"The countryRestriction object + contains information about the countries where a video is (or is not) viewable.\"\n + \ },\n \"dimension\": {\n \"description\": \"The value + of dimension indicates whether the video is available in 3D or in 2D.\",\n + \ \"type\": \"string\"\n },\n \"hasCustomThumbnail\": + {\n \"description\": \"Indicates whether the video uploader has provided + a custom thumbnail image for the video. This property is only visible to the + video uploader.\",\n \"type\": \"boolean\"\n },\n \"regionRestriction\": + {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": + \"The regionRestriction object contains information about the countries where + a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed + property or the contentDetails.regionRestriction.blocked property.\"\n },\n + \ \"definition\": {\n \"description\": \"The value of definition + indicates whether the video is available in high definition or only in standard + definition.\",\n \"type\": \"string\",\n \"enum\": [\n \"sd\",\n + \ \"hd\"\n ],\n \"enumDescriptions\": [\n \"sd\",\n + \ \"hd\"\n ]\n },\n \"licensedContent\": + {\n \"description\": \"The value of is_license_content indicates + whether the video is licensed content.\",\n \"type\": \"boolean\"\n + \ },\n \"contentRating\": {\n \"$ref\": \"ContentRating\",\n + \ \"description\": \"Specifies the ratings that the video received + under various rating schemes.\"\n }\n },\n \"description\": + \"Details about the content of a YouTube Video.\"\n },\n \"VideoListResponse\": + {\n \"id\": \"VideoListResponse\",\n \"properties\": {\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n \"default\": + \"youtube#videoListResponse\",\n \"type\": \"string\"\n },\n \ \"prevPageToken\": {\n \"description\": \"The token that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#searchListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n + page in the result set.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the next page in the result set.\",\n \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": + \"General pagination information.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"SearchListResponse\",\n \"type\": \"object\"\n - \ },\n \"RelatedEntity\": {\n \"properties\": {\n \"entity\": - {\n \"$ref\": \"Entity\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"RelatedEntity\"\n },\n \"ThirdPartyLink\": {\n \"description\": - \"A *third party account link* resource represents a link between a YouTube - account or a channel and an account on a third-party service.\",\n \"properties\": - {\n \"linkingToken\": {\n \"type\": \"string\",\n \"description\": - \"The linking_token identifies a YouTube account and channel with which the - third party account is linked.\"\n },\n \"snippet\": {\n \"$ref\": - \"ThirdPartyLinkSnippet\",\n \"description\": \"The snippet object - contains basic details about the third- party account link.\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the status of the link.\",\n \"$ref\": \"ThirdPartyLinkStatus\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"default\": \"youtube#thirdPartyLink\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ThirdPartyLink\"\n },\n \"ChannelSnippet\": {\n \"properties\": - {\n \"publishedAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the channel was created.\",\n \"format\": - \"date-time\"\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n },\n - \ \"localized\": {\n \"description\": \"Localized title and - description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the channel's default title and description.\",\n \"type\": - \"string\"\n },\n \"customUrl\": {\n \"description\": - \"The custom url of the channel.\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the channel.\"\n },\n \"title\": {\n \"description\": - \"The channel's title.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ }\n },\n \"id\": \"ChannelSnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a channel, including title, description - and thumbnails.\"\n },\n \"VideoFileDetails\": {\n \"id\": \"VideoFileDetails\",\n - \ \"properties\": {\n \"videoStreams\": {\n \"items\": - {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of video streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about a video stream.\"\n },\n \"bitrateBps\": {\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ },\n \"fileType\": {\n \"enumDescriptions\": [\n \"Known - video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an - MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ],\n \"description\": \"The uploaded file's type as detected - by YouTube's video processing engine. Currently, YouTube only processes video - files, but this field is present whether a video file or another type of file - was uploaded.\"\n },\n \"durationMs\": {\n \"type\": - \"string\",\n \"description\": \"The length of the uploaded video - in milliseconds.\",\n \"format\": \"uint64\"\n },\n \"audioStreams\": - {\n \"description\": \"A list of audio streams contained in the uploaded - video file. Each item in the list contains detailed metadata about an audio - stream.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsAudioStream\"\n }\n },\n \"fileSize\": - {\n \"type\": \"string\",\n \"description\": \"The uploaded - file's size in bytes. This field is present whether a video file or another - type of file was uploaded.\",\n \"format\": \"uint64\"\n },\n - \ \"fileName\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\"\n },\n \"creationTime\": - {\n \"description\": \"The date and time when the uploaded video - file was created. The value is specified in ISO 8601 format. Currently, the - following ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive - time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \",\n \"type\": \"string\"\n },\n \"container\": {\n - \ \"description\": \"The uploaded video file's container format.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Describes original video file properties, including technical details about - audio and video streams, but also metadata information like content length, - digitization time, or geotagging information.\",\n \"type\": \"object\"\n - \ },\n \"PropertyValue\": {\n \"type\": \"object\",\n \"properties\": - {\n \"property\": {\n \"type\": \"string\",\n \"description\": - \"A property.\"\n },\n \"value\": {\n \"type\": \"string\",\n - \ \"description\": \"The property's value.\"\n }\n },\n - \ \"id\": \"PropertyValue\",\n \"description\": \"A pair Property - / Value.\"\n },\n \"Subscription\": {\n \"description\": \"A *subscription* - resource contains information about a YouTube user subscription. A subscription - notifies a user when new videos are added to a channel or when another user - takes one of several actions on YouTube, such as uploading a video, rating - a video, or commenting on a video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"SubscriptionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the subscription, including its title and the channel that the user subscribed - to.\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"subscriberSnippet\": - {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n \"description\": - \"The subscriberSnippet object contains basic details about the subscriber.\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains basic statistics about the subscription.\",\n - \ \"$ref\": \"SubscriptionContentDetails\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#subscription\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscription\\\".\"\n }\n },\n \"id\": - \"Subscription\"\n },\n \"ChannelSectionTargeting\": {\n \"id\": - \"ChannelSectionTargeting\",\n \"properties\": {\n \"languages\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The language the channel section is targeting.\",\n - \ \"type\": \"array\"\n },\n \"countries\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The country the channel section is targeting.\"\n - \ },\n \"regions\": {\n \"description\": \"The region - the channel section is targeting.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"type\": - \"object\",\n \"description\": \"ChannelSection targeting setting.\"\n - \ },\n \"VideoProcessingDetailsProcessingProgress\": {\n \"description\": - \"Video processing progress and completion time estimate.\",\n \"properties\": - {\n \"partsTotal\": {\n \"description\": \"An estimate of - the total number of parts that need to be processed for the video. The number - may be updated with more precise estimates while YouTube processes the video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"partsProcessed\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of parts of the video - that YouTube has already processed. You can estimate the percentage of the - video that YouTube has already processed by calculating: 100 * parts_processed - / parts_total Note that since the estimated number of parts could increase - without a corresponding increase in the number of parts that have already - been processed, it is possible that the calculated progress could periodically - decrease while YouTube processes a video.\"\n },\n \"timeLeftMs\": - {\n \"description\": \"An estimate of the amount of time, in millseconds, - that YouTube needs to finish processing the video.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"ChannelContentDetails\": {\n \"description\": \"Details - about the content of a channel.\",\n \"id\": \"ChannelContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"properties\": {\n \"likes\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"watchHistory\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"favorites\": {\n \"description\": \"The ID of the - playlist that contains the channel\\\"s favorite videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n },\n \"watchLater\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\",\n \"type\": \"string\"\n },\n \"uploads\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s uploaded videos. Use the - videos.insert method to upload new videos and the videos.delete method to - delete previously uploaded videos.\"\n }\n },\n \"type\": - \"object\"\n }\n }\n },\n \"AccessPolicy\": {\n \"type\": - \"object\",\n \"properties\": {\n \"allowed\": {\n \"description\": - \"The value of allowed indicates whether the access to the policy is allowed - or denied by default.\",\n \"type\": \"boolean\"\n },\n \"exception\": - {\n \"description\": \"A list of region codes that identify countries - where the default policy do not apply.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"id\": \"AccessPolicy\",\n \"description\": \"Rights - management policy for YouTube resources.\"\n },\n \"MembershipsLevelSnippet\": - {\n \"properties\": {\n \"creatorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the channel that's offering - channel memberships.\"\n },\n \"levelDetails\": {\n \"description\": - \"Details about the pricing level.\",\n \"$ref\": \"LevelDetails\"\n - \ }\n },\n \"id\": \"MembershipsLevelSnippet\",\n \"type\": - \"object\"\n },\n \"LiveBroadcast\": {\n \"properties\": {\n \"contentDetails\": - {\n \"$ref\": \"LiveBroadcastContentDetails\",\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\"\n },\n \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n - \ \"description\": \"The status object contains information about - the event's status.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the event, including its title, description, - start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the broadcast.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveBroadcast\"\n - \ }\n },\n \"id\": \"LiveBroadcast\",\n \"type\": \"object\",\n - \ \"description\": \"A *liveBroadcast* resource represents an event that - will be streamed, via live video, on YouTube.\"\n },\n \"VideoTopicDetails\": - {\n \"type\": \"object\",\n \"id\": \"VideoTopicDetails\",\n \"properties\": - {\n \"relevantTopicIds\": {\n \"description\": \"Similar to - topic_id, except that these topics are merely relevant to the video. These - are topics that may be mentioned in, or appear in the video. You can retrieve - information about each topic using Freebase Topic API.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"topicIds\": {\n \"description\": \"A list of - Freebase topic IDs that are centrally associated with the video. These are - topics that are centrally featured in the video, and it can be said that the - video is mainly about each of these. You can retrieve information about each - topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"topicCategories\": {\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"description\": \"Freebase - topic information related to the video.\"\n },\n \"CaptionSnippet\": - {\n \"properties\": {\n \"name\": {\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"isEasyReader\": {\n - \ \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"isAutoSynced\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n },\n \"failureReason\": - {\n \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ],\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"isDraft\": {\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n },\n - \ \"isLarge\": {\n \"description\": \"Indicates whether the - caption track uses large text for the vision-impaired. The default value is - false.\",\n \"type\": \"boolean\"\n },\n \"status\": - {\n \"type\": \"string\",\n \"enum\": [\n \"serving\",\n - \ \"syncing\",\n \"failed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The caption track's status.\"\n },\n \"audioTrackType\": - {\n \"description\": \"The type of audio track associated with the - caption track.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"type\": \"string\"\n - \ },\n \"lastUpdated\": {\n \"description\": \"The date - and time when the caption track was last updated.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"isCC\": - {\n \"description\": \"Indicates whether the track contains closed - captions for the deaf and hard of hearing. The default value is false.\",\n - \ \"type\": \"boolean\"\n },\n \"language\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video associated with the caption track. @mutable - youtube.captions.insert\"\n },\n \"trackKind\": {\n \"type\": - \"string\",\n \"description\": \"The caption track's type.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ]\n }\n },\n \"id\": \"CaptionSnippet\",\n \"description\": - \"Basic details about a caption track, such as its language and name.\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamSnippet\": {\n \"type\": - \"object\",\n \"id\": \"LiveStreamSnippet\",\n \"properties\": {\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the stream was created.\"\n },\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n },\n \"description\": {\n - \ \"description\": \"The stream's description. The value cannot be - longer than 10000 characters.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"description\": \"The stream's title. The - value must be between 1 and 128 characters long.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ }\n }\n },\n \"ChannelTopicDetails\": {\n \"id\": - \"ChannelTopicDetails\",\n \"type\": \"object\",\n \"description\": - \"Freebase topic information related to the channel.\",\n \"properties\": - {\n \"topicIds\": {\n \"type\": \"array\",\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicCategories\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of Wikipedia - URLs that describe the channel's content.\"\n }\n }\n },\n - \ \"LanguageTag\": {\n \"id\": \"LanguageTag\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"SearchResultSnippet\": {\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\"\n },\n \"title\": - {\n \"description\": \"The title of the search result.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the search result. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"A description of the search result.\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The creation - date and time of the resource that the search result identifies.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"channelTitle\": - {\n \"description\": \"The title of the channel that published the - resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"liveBroadcastContent\": {\n \"type\": \"string\",\n - \ \"description\": \"It indicates if the resource (video or channel) - has upcoming/active live broadcast content. Or it's \\\"none\\\" if there - is not any upcoming/active live broadcasts.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"SearchResultSnippet\",\n - \ \"description\": \"Basic details about a search result, including title, - description and thumbnails of the item referenced by the search result.\"\n - \ },\n \"VideoCategory\": {\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#videoCategory\\\".\",\n \"default\": - \"youtube#videoCategory\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video category, including its title.\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video category.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"A *videoCategory* resource - identifies a category that has been or could be associated with uploaded videos.\",\n - \ \"id\": \"VideoCategory\"\n },\n \"LiveChatTextMessageDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatTextMessageDetails\",\n - \ \"properties\": {\n \"messageText\": {\n \"description\": - \"The user's message.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"Activity\": {\n \"id\": \"Activity\",\n \"description\": - \"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.\",\n - \ \"properties\": {\n \"contentDetails\": {\n \"description\": - \"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.\",\n \"$ref\": - \"ActivityContentDetails\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the activity, including the activity's type and group ID.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#activity\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"MemberSnippet\": - {\n \"properties\": {\n \"membershipsDetails\": {\n \"description\": - \"Details about the user's membership.\",\n \"$ref\": \"MembershipsDetails\"\n - \ },\n \"memberDetails\": {\n \"description\": \"Details - about the member.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n - \ \"creatorChannelId\": {\n \"description\": \"The id of the - channel that's offering memberships.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"MemberSnippet\",\n \"type\": \"object\"\n - \ },\n \"ChannelStatistics\": {\n \"type\": \"object\",\n \"id\": - \"ChannelStatistics\",\n \"description\": \"Statistics about a channel: - number of subscribers, number of videos in the channel, etc.\",\n \"properties\": - {\n \"commentCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of comments for the channel.\",\n \"type\": \"string\"\n - \ },\n \"videoCount\": {\n \"description\": \"The number - of videos uploaded to the channel.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"subscriberCount\": {\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of subscribers that the channel has.\",\n \"type\": \"string\"\n - \ },\n \"viewCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of times the channel has been viewed.\",\n - \ \"type\": \"string\"\n },\n \"hiddenSubscriberCount\": - {\n \"description\": \"Whether or not the number of subscribers is - shown for this user.\",\n \"type\": \"boolean\"\n }\n }\n - \ },\n \"VideoAbuseReport\": {\n \"type\": \"object\",\n \"id\": - \"VideoAbuseReport\",\n \"properties\": {\n \"reasonId\": {\n - \ \"type\": \"string\",\n \"description\": \"The high-level, - or primary, reason that the content is abusive. The value is an abuse report - reason ID.\"\n },\n \"comments\": {\n \"type\": \"string\",\n - \ \"description\": \"Additional comments regarding the abuse report.\"\n - \ },\n \"language\": {\n \"description\": \"The language - that the content was viewed in.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the video.\",\n \"type\": \"string\"\n },\n - \ \"secondaryReasonId\": {\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\",\n \"type\": \"string\"\n }\n }\n },\n \"LocalizedProperty\": - {\n \"type\": \"object\",\n \"id\": \"LocalizedProperty\",\n \"properties\": - {\n \"localized\": {\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n },\n \"type\": \"array\"\n },\n - \ \"default\": {\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the default property.\",\n - \ \"$ref\": \"LanguageTag\"\n }\n }\n },\n \"ChannelSettings\": - {\n \"id\": \"ChannelSettings\",\n \"properties\": {\n \"profileColor\": - {\n \"description\": \"A prominent color that can be rendered on - this channel page.\",\n \"type\": \"string\"\n },\n \"unsubscribedTrailer\": - {\n \"type\": \"string\",\n \"description\": \"The trailer - of the channel, for users that are not subscribers.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"country\": {\n \"type\": - \"string\",\n \"description\": \"The country of the channel.\"\n - \ },\n \"trackingAnalyticsAccountId\": {\n \"type\": - \"string\",\n \"description\": \"The ID for a Google Analytics account - to track and measure traffic to the channels.\"\n },\n \"moderateComments\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - user-submitted comments left on the channel page need to be approved by the - channel owner to be publicly visible.\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"Specifies the - channel title.\"\n },\n \"keywords\": {\n \"description\": - \"Lists keywords associated with the channel, comma-separated.\",\n \"type\": - \"string\"\n },\n \"defaultTab\": {\n \"description\": - \"Which content tab users should see when viewing the channel.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the channel description.\"\n },\n - \ \"showRelatedChannels\": {\n \"description\": \"Whether related - channels should be proposed.\",\n \"type\": \"boolean\"\n },\n - \ \"featuredChannelsUrls\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"The list of featured channels.\"\n },\n \"featuredChannelsTitle\": - {\n \"type\": \"string\",\n \"description\": \"Title for - the featured channels tab.\"\n },\n \"showBrowseView\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether the - tab to browse the videos should be displayed.\"\n }\n },\n \"description\": - \"Branding properties for the channel view.\",\n \"type\": \"object\"\n - \ },\n \"AbuseType\": {\n \"type\": \"object\",\n \"id\": \"AbuseType\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"MembershipsDetails\": {\n \"properties\": - {\n \"membershipsDuration\": {\n \"description\": \"Data about - memberships duration without taking into consideration pricing levels.\",\n - \ \"$ref\": \"MembershipsDuration\"\n },\n \"highestAccessibleLevel\": - {\n \"description\": \"Id of the highest level that the user has - access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"membershipsDurationAtLevels\": {\n \"items\": {\n \"$ref\": - \"MembershipsDurationAtLevel\"\n },\n \"description\": \"Data - about memberships duration on particular pricing levels.\",\n \"type\": - \"array\"\n },\n \"accessibleLevels\": {\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"highestAccessibleLevelDisplayName\": {\n - \ \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"MembershipsDetails\"\n - \ },\n \"ThumbnailSetResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"description\": \"A list of thumbnails.\",\n \"type\": - \"array\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"default\": \"youtube#thumbnailSetResponse\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ThumbnailSetResponse\"\n },\n - \ \"ActivityContentDetailsRecommendation\": {\n \"description\": \"Information - that identifies the recommended resource.\",\n \"properties\": {\n \"seedResourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The seedResourceId - object contains information about the resource that caused the recommendation.\"\n - \ },\n \"reason\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The reason that the resource is recommended to - the user.\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsRecommendation\"\n },\n - \ \"VideoFileDetailsAudioStream\": {\n \"description\": \"Information - about an audio stream.\",\n \"id\": \"VideoFileDetailsAudioStream\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"codec\": {\n - \ \"type\": \"string\",\n \"description\": \"The audio codec - that the stream uses.\"\n },\n \"vendor\": {\n \"type\": - \"string\",\n \"description\": \"A value that uniquely identifies - a video vendor. Typically, the value is a four-letter vendor code.\"\n },\n - \ \"channelCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The number of audio channels that the stream contains.\",\n \"type\": - \"integer\"\n },\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"description\": \"The audio stream's bitrate, in bits - per second.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"VideoAbuseReportSecondaryReason\": {\n \"properties\": {\n \"label\": - {\n \"description\": \"The localized label for this abuse report - secondary reason.\",\n \"type\": \"string\"\n },\n \"id\": + \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"Video\"\n }\n }\n },\n \"type\": + \"object\"\n },\n \"PlaylistItemStatus\": {\n \"description\": + \"Information about the playlist item's privacy status.\",\n \"id\": + \"PlaylistItemStatus\",\n \"properties\": {\n \"privacyStatus\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"description\": \"This resource's + privacy status.\",\n \"type\": \"string\",\n \"enum\": [\n + \ \"public\",\n \"unlisted\",\n \"private\"\n + \ ]\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessageSnippet\": + {\n \"description\": \"Next ID: 33\",\n \"id\": \"LiveChatMessageSnippet\",\n + \ \"properties\": {\n \"displayMessage\": {\n \"description\": + \"Contains a string that can be displayed to the user. If this field is not + present the message is silent, at the moment only messages of type TOMBSTONE + and CHAT_ENDED_EVENT are silent.\",\n \"type\": \"string\"\n },\n + \ \"superStickerDetails\": {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n + \ \"description\": \"Details about the Super Sticker event, this is + only set if the type is 'superStickerEvent'.\"\n },\n \"giftMembershipReceivedDetails\": + {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": + \"Details about the Gift Membership Received event, this is only set if the + type is 'giftMembershipReceivedEvent'.\"\n },\n \"userBannedDetails\": + {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n + \ \"superChatDetails\": {\n \"description\": \"Details about + the Super Chat event, this is only set if the type is 'superChatEvent'.\",\n + \ \"$ref\": \"LiveChatSuperChatDetails\"\n },\n \"membershipGiftingDetails\": + {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": + \"Details about the Membership Gifting event, this is only set if the type + is 'membershipGiftingEvent'.\"\n },\n \"messageRetractedDetails\": + {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"authorChannelId\": {\n \"type\": \"string\",\n \"description\": \"The ID of - this abuse report secondary reason.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageAuthorDetails\",\n - \ \"properties\": {\n \"isChatModerator\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a moderator - of the live chat.\"\n },\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The channel's display name.\"\n - \ },\n \"profileImageUrl\": {\n \"description\": \"The - channels's avatar URL.\",\n \"type\": \"string\"\n },\n \"isVerified\": - {\n \"description\": \"Whether the author's identity has been verified - by YouTube.\",\n \"type\": \"boolean\"\n },\n \"isChatOwner\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is the owner of the live chat.\"\n },\n \"channelId\": - {\n \"description\": \"The YouTube channel ID.\",\n \"type\": - \"string\"\n },\n \"isChatSponsor\": {\n \"description\": - \"Whether the author is a sponsor of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"PlaylistLocalization\": {\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's title.\"\n },\n \"description\": {\n - \ \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's description.\"\n }\n },\n \"id\": - \"PlaylistLocalization\",\n \"type\": \"object\",\n \"description\": - \"Playlist localization setting\"\n },\n \"Cuepoint\": {\n \"type\": - \"object\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The identifier for cuepoint resource.\"\n - \ },\n \"durationSecs\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The duration - of this cuepoint.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"walltimeMs\": {\n \"type\": \"string\",\n - \ \"description\": \"The wall clock time at which the cuepoint should - be inserted. Only one of insertion_offset_time_ms and walltime_ms may be set - at a time.\",\n \"format\": \"uint64\"\n },\n \"cueType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ]\n },\n \"insertionOffsetTimeMs\": - {\n \"format\": \"int64\",\n \"type\": \"string\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\"\n }\n },\n \"description\": \"Note that - there may be a 5-second end-point resolution issue. For instance, if a cuepoint - comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, - depending. This is an artifact of HLS.\",\n \"id\": \"Cuepoint\"\n },\n - \ \"Channel\": {\n \"type\": \"object\",\n \"description\": \"A - *channel* resource contains information about a YouTube channel.\",\n \"properties\": - {\n \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n - \ \"contentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the channel, such as its title, description, and thumbnail images.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#channel\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channel\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object encapsulates statistics for the channel.\",\n \"$ref\": - \"ChannelStatistics\"\n },\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n - \ \"brandingSettings\": {\n \"description\": \"The brandingSettings - object encapsulates information about the branding of the channel.\",\n \"$ref\": - \"ChannelBrandingSettings\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ChannelContentDetails\",\n \"description\": \"The contentDetails - object encapsulates information about the channel's content.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel.\",\n \"type\": \"string\"\n },\n - \ \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n - \ \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\"\n - \ },\n \"status\": {\n \"description\": \"The status - object encapsulates information about the privacy status of the channel.\",\n - \ \"$ref\": \"ChannelStatus\"\n },\n \"localizations\": - {\n \"description\": \"Localizations for different languages\",\n - \ \"type\": \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelLocalization\"\n }\n }\n },\n \"id\": \"Channel\"\n - \ },\n \"ChannelToStoreLinkDetails\": {\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"properties\": {\n \"storeUrl\": {\n \"description\": - \"Landing page of the store.\",\n \"type\": \"string\"\n },\n - \ \"storeName\": {\n \"type\": \"string\",\n \"description\": - \"Name of the store.\"\n },\n \"merchantId\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"Google Merchant Center id of the store.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Information specific to a store on a - merchandising platform linked to a YouTube channel.\"\n },\n \"LiveBroadcastContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"enableAutoStart\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"latencyPreference\": {\n \"description\": \"If both this - and enable_low_latency are set, they must match. LATENCY_NORMAL should match - enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ]\n },\n \"closedCaptionsType\": {\n - \ \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"enableDvr\": {\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n - \ },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"startWithSlate\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast should automatically begin with an in-stream - slate when you update the broadcast's status to live. After updating the status, - you then need to send a liveCuepoints.insert request that sets the cuepoint's - eventState to end to remove the in-stream slate and make your broadcast stream - visible to viewers.\"\n },\n \"enableContentEncryption\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether YouTube should enable content encryption for the broadcast.\"\n - \ },\n \"recordFromStart\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\"\n },\n \"mesh\": {\n \"format\": \"byte\",\n - \ \"description\": \"The mesh for projecting the video if projection - is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding - of 3D mesh data that follows the Spherical Video V2 RFC specification for - an mshp box, excluding the box size and type but including the following four - reserved zero bytes for the version and flags.\",\n \"type\": \"string\"\n - \ },\n \"boundStreamLastUpdateTimeMs\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the live - stream referenced by boundStreamId was last updated.\",\n \"type\": - \"string\"\n },\n \"projection\": {\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"projectionUnspecified\",\n \"rectangular\",\n \"360\",\n - \ \"mesh\"\n ],\n \"type\": \"string\"\n },\n - \ \"stereoLayout\": {\n \"description\": \"The 3D stereo layout - of this broadcast. This defaults to mono.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ],\n \"type\": \"string\"\n },\n \"enableAutoStop\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto stop is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"enableLowLatency\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether this broadcast has low latency enabled.\"\n },\n - \ \"monitorStream\": {\n \"description\": \"The monitorStream - object contains information about the monitor stream, which the broadcaster - can use to review the event content before the broadcast stream is shown publicly.\",\n - \ \"$ref\": \"MonitorStreamInfo\"\n },\n \"enableEmbed\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast video can be played in an embedded player. - If you choose to archive the video (using the enableArchive property), this - setting will also apply to the archived video.\"\n },\n \"boundStreamId\": - {\n \"type\": \"string\",\n \"description\": \"This value - uniquely identifies the live stream bound to the broadcast.\"\n }\n - \ },\n \"id\": \"LiveBroadcastContentDetails\",\n \"description\": - \"Detailed settings of a broadcast.\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"properties\": {\n \"severity\": {\n \"enum\": [\n - \ \"info\",\n \"warning\",\n \"error\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"How severe this issue is to the stream.\"\n },\n \"reason\": - {\n \"description\": \"The short-form reason for this issue.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"The long-form description of the issue and how to resolve it.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n + the user that authored this message, this field is not always filled. textMessageEvent + - the user that wrote the message fanFundingEvent - the user that funded the + broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent + - the member that sent the message membershipGiftingEvent - the user that + made the purchase giftMembershipReceivedEvent - the user that received the + gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent + - the author that retracted their message userBannedEvent - the moderator + that took the action superChatEvent - the user that made the purchase superStickerEvent + - the user that made the purchase\"\n },\n \"type\": {\n \"type\": + \"string\",\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n + \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n + \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n + \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n + \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n + \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n + \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ],\n \"type\": - \"string\",\n \"description\": \"The kind of error happening.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"LiveChatBan\": {\n \"description\": \"A `__liveChatBan__` - resource represents a ban for a YouTube live chat.\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\"\n },\n - \ \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"default\": - \"youtube#liveChatBan\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LiveChatBan\",\n \"type\": \"object\"\n },\n \"VideoCategorySnippet\": - {\n \"properties\": {\n \"assignable\": {\n \"type\": - \"boolean\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The video category's title.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n - \ \"description\": \"The YouTube channel that created the video category.\"\n - \ }\n },\n \"id\": \"VideoCategorySnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about a video category, - such as its localized title.\"\n },\n \"AbuseReport\": {\n \"properties\": - {\n \"description\": {\n \"type\": \"string\"\n },\n - \ \"subject\": {\n \"$ref\": \"Entity\"\n },\n \"relatedEntities\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n }\n },\n \"abuseTypes\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"AbuseType\"\n - \ }\n }\n },\n \"id\": \"AbuseReport\",\n \"type\": - \"object\"\n },\n \"VideoPlayer\": {\n \"description\": \"Player - to be used for a video playback.\",\n \"type\": \"object\",\n \"properties\": - {\n \"embedHeight\": {\n \"format\": \"int64\",\n \"type\": - \"string\"\n },\n \"embedWidth\": {\n \"format\": \"int64\",\n - \ \"type\": \"string\",\n \"description\": \"The embed width\"\n - \ },\n \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoPlayer\"\n },\n \"LiveBroadcastSnippet\": - {\n \"id\": \"LiveBroadcastSnippet\",\n \"properties\": {\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is publishing the broadcast.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast was added - to YouTube's live broadcast schedule.\",\n \"format\": \"date-time\"\n - \ },\n \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The broadcast's title. Note that the broadcast represents exactly one YouTube - video. You can set this field by modifying the broadcast resource or by setting - the title field of the corresponding video resource.\"\n },\n \"scheduledStartTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the broadcast is scheduled to start.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"actualStartTime\": {\n - \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast actually started. This information - is only available once the broadcast's state is live.\"\n },\n \"isDefaultBroadcast\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast is the default broadcast. Internal only.\"\n },\n - \ \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the broadcast. For each nested object in this object, - the key is the name of the thumbnail image, and the value is an object that - contains other information about the thumbnail.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"actualEndTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\",\n - \ \"type\": \"string\"\n },\n \"liveChatId\": {\n \"description\": - \"The id of the live chat for this broadcast.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's description. As with the title, - you can set this field by modifying the broadcast resource or by setting the - description field of the corresponding video resource.\"\n },\n \"scheduledEndTime\": - {\n \"description\": \"The date and time that the broadcast is scheduled - to end.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - broadcast information.\"\n },\n \"IngestionInfo\": {\n \"id\": - \"IngestionInfo\",\n \"properties\": {\n \"streamName\": {\n \"description\": - \"The stream name that YouTube assigns to the video stream.\",\n \"type\": - \"string\"\n },\n \"backupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The backup ingestion URL that you - should use to stream video to YouTube. You have the option of simultaneously - streaming the content that you are sending to the ingestionAddress to this - URL.\"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of backupIngestionAddress in order to stream via RTMPS. Not applicable to - non-RTMP streams.\"\n },\n \"ingestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The primary ingestion URL that you - should use to stream video to YouTube. You must stream video to this URL. - Depending on which application or tool you use to encode your video stream, - you may need to enter the stream URL and stream name separately or you may - need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \"\n },\n \"rtmpsIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of ingestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Describes - information necessary for ingesting an RTMP, HTTP, or SRT stream.\"\n },\n - \ \"PlaylistItemSnippet\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistItemSnippet\",\n \"description\": \"Basic details about a playlist, - including title, description and thumbnails. Basic details of a YouTube Playlist - item provided by the author. Next ID: 15\",\n \"properties\": {\n \"videoOwnerChannelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel this video belongs to.\"\n },\n \"videoOwnerChannelId\": - {\n \"description\": \"Channel id for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"description\": \"The id object contains information that can - be used to uniquely identify the resource that is included in the playlist - as the playlist item.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The item's title.\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The item's description.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist item. 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.\"\n },\n - \ \"position\": {\n \"type\": \"integer\",\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\",\n \"format\": \"uint32\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the user that added the item to the playlist.\",\n \"type\": \"string\"\n - \ },\n \"playlistId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify thGe playlist that the playlist item - is in.\",\n \"type\": \"string\",\n \"annotations\": {\n - \ \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the item was added to the playlist.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n }\n }\n },\n - \ \"ChannelSectionLocalization\": {\n \"properties\": {\n \"title\": - {\n \"description\": \"The localized strings for channel section's - title.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ChannelSectionLocalization\",\n \"type\": \"object\",\n \"description\": - \"ChannelSection localization setting\"\n },\n \"SuperChatEventListResponse\": - {\n \"id\": \"SuperChatEventListResponse\",\n \"properties\": {\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"description\": \"A list of Super Chat purchases - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"SuperChatEvent\"\n },\n \"type\": \"array\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n \"default\": - \"youtube#superChatEventListResponse\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"MemberListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"items\": - {\n \"items\": {\n \"$ref\": \"Member\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of members - that match the request criteria.\"\n },\n \"pageInfo\": {\n - \ \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"MemberListResponse\"\n },\n - \ \"LiveChatModeratorListResponse\": {\n \"id\": \"LiveChatModeratorListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of moderators - that match the request criteria.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoSuggestions\": - {\n \"properties\": {\n \"processingHints\": {\n \"description\": - \"A list of suggestions that may improve YouTube's ability to process the - video.\",\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ]\n },\n \"type\": - \"array\"\n },\n \"processingWarnings\": {\n \"items\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ]\n },\n - \ \"description\": \"A list of reasons why YouTube may have difficulty - transcoding the uploaded video or that might result in an erroneous transcoding. - These warnings are generated before YouTube actually processes the uploaded - video file. In addition, they identify issues that are unlikely to cause the - video processing to fail but that might cause problems such as sync issues, - video artifacts, or a missing audio track.\",\n \"type\": \"array\"\n - \ },\n \"tagSuggestions\": {\n \"items\": {\n \"$ref\": - \"VideoSuggestionsTagSuggestion\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of keyword tags that could be added to - the video's metadata to increase the likelihood that users will locate your - video when searching or browsing on YouTube.\"\n },\n \"editorSuggestions\": - {\n \"description\": \"A list of video editing operations that might - improve the video quality or playback experience of the uploaded video.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ],\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ]\n - \ }\n },\n \"processingErrors\": {\n \"type\": - \"array\",\n \"items\": {\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ]\n },\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\"\n }\n },\n \"description\": \"Specifies suggestions - on how to improve video content, including encoding hints, tag suggestions, - and editor suggestions.\",\n \"id\": \"VideoSuggestions\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsLike\": {\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsLike\",\n \"description\": - \"Information about a resource that received a positive (like) rating.\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the rated resource.\"\n }\n }\n },\n \"CaptionListResponse\": - {\n \"id\": \"CaptionListResponse\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of captions - that match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Caption\"\n }\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"PlaylistSnippet\": {\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a playlist, including title, - description and thumbnails.\",\n \"properties\": {\n \"tags\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"Keyword tags associated with the playlist.\",\n - \ \"type\": \"array\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the playlist was created.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The playlist's - description.\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the playlist's default title and description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"annotations\": {\n - \ \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The playlist's - title.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the playlist.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"The channel - title of the channel that the video belongs to.\"\n },\n \"thumbnailVideoId\": - {\n \"type\": \"string\",\n \"description\": \"Note: if - the playlist has a custom thumbnail, this field will not be populated. The - video id selected by the user that will be used as the thumbnail of this playlist. - This field defaults to the first publicly viewable video in the playlist, - if: 1. The user has never selected a video to be the thumbnail of the playlist. - 2. The user selects a video to be the thumbnail, and then removes that video - from the playlist. 3. The user selects a non-owned video to be the thumbnail, - but that video becomes private, or gets deleted.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist. 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.\"\n },\n \"localized\": - {\n \"$ref\": \"PlaylistLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n }\n },\n \"id\": - \"PlaylistSnippet\"\n },\n \"ActivitySnippet\": {\n \"type\": \"object\",\n - \ \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\",\n \"id\": - \"ActivitySnippet\",\n \"properties\": {\n \"description\": {\n - \ \"description\": \"The description of the resource primarily associated - with the activity. @mutable youtube.activities.insert\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the video was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel associated with the activity.\"\n - \ },\n \"channelTitle\": {\n \"description\": \"Channel - title for the channel responsible for this activity\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the resource primarily associated - with the activity.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"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.\"\n - \ },\n \"groupId\": {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"type\": {\n \"description\": - \"The type of activity that the resource describes.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n - \ \"like\",\n \"favorite\",\n \"comment\",\n - \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n - \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ],\n \"type\": \"string\"\n - \ }\n }\n },\n \"Comment\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#comment\\\".\",\n \"default\": - \"youtube#comment\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"CommentSnippet\",\n \"description\": \"The - snippet object contains basic details about the comment.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment.\"\n }\n },\n \"id\": - \"Comment\",\n \"description\": \"A *comment* represents a single YouTube - comment.\"\n },\n \"SubscriptionListResponse\": {\n \"id\": \"SubscriptionListResponse\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Subscription\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of subscriptions that match the request criteria.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"default\": \"youtube#subscriptionListResponse\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"PlaylistItemContentDetails\": {\n - \ \"id\": \"PlaylistItemContentDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"videoPublishedAt\": {\n \"description\": - \"The date and time that the video was published to YouTube.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"note\": - {\n \"description\": \"A user-generated note for this item.\",\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify a video. To retrieve the video resource, set the id query parameter - to this value in your API request.\"\n },\n \"startAt\": {\n - \ \"description\": \"The time, measured in seconds from the start - of the video, when the video should start playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) The default value is 0.\",\n \"type\": - \"string\"\n },\n \"endAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The time, measured in seconds from the start - of the video, when the video should stop playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) By default, assume that the video.endTime - is the end of the video.\"\n }\n }\n },\n \"MonitorStreamInfo\": - {\n \"type\": \"object\",\n \"id\": \"MonitorStreamInfo\",\n \"description\": - \"Settings and Info of the monitor stream\",\n \"properties\": {\n \"broadcastStreamDelayMs\": - {\n \"description\": \"If you have set the enableMonitorStream property - to true, then this property determines the length of the live broadcast delay.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"enableMonitorStream\": {\n \"type\": - \"boolean\",\n \"description\": \"This value determines whether the - monitor stream is enabled for the broadcast. If the monitor stream is enabled, - then YouTube will broadcast the event content on a special stream intended - only for the broadcaster's consumption. The broadcaster can use the stream - to review the event content and also to identify the optimal times to insert - cuepoints. You need to set this value to true if you intend to have a broadcast - delay for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"embedHtml\": {\n \"description\": \"HTML code - that embeds a player that plays the monitor stream.\",\n \"type\": - \"string\"\n }\n }\n },\n \"Entity\": {\n \"type\": - \"object\",\n \"properties\": {\n \"url\": {\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"typeId\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"Entity\"\n }\n },\n \"id\": \"youtube:v3\",\n - \ \"version\": \"v3\",\n \"ownerDomain\": \"google.com\",\n \"canonicalName\": - \"YouTube\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n }\n - \ }\n }\n },\n \"batchPath\": \"batch\",\n \"name\": \"youtube\",\n - \ \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"protocol\": - \"rest\",\n \"title\": \"YouTube Data API v3\",\n \"kind\": \"discovery#restDescription\",\n - \ \"servicePath\": \"\",\n \"parameters\": {\n \"$.xgafv\": {\n \"location\": - \"query\",\n \"enum\": [\n \"1\",\n \"2\"\n ],\n \"enumDescriptions\": - [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"description\": - \"V1 error format.\",\n \"type\": \"string\"\n },\n \"prettyPrint\": - {\n \"type\": \"boolean\",\n \"default\": \"true\",\n \"location\": - \"query\",\n \"description\": \"Returns response with indentations and - line breaks.\"\n },\n \"quotaUser\": {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"oauth_token\": {\n - \ \"location\": \"query\",\n \"description\": \"OAuth 2.0 token for - the current user.\",\n \"type\": \"string\"\n },\n \"access_token\": - {\n \"description\": \"OAuth access token.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"callback\": {\n \"type\": \"string\",\n - \ \"description\": \"JSONP\",\n \"location\": \"query\"\n },\n - \ \"fields\": {\n \"location\": \"query\",\n \"description\": - \"Selector specifying which fields to include in a partial response.\",\n - \ \"type\": \"string\"\n },\n \"alt\": {\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Data format for response.\",\n \"enum\": [\n - \ \"json\",\n \"media\",\n \"proto\"\n ],\n \"location\": - \"query\",\n \"default\": \"json\"\n },\n \"uploadType\": {\n \"description\": - \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"key\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n - \ },\n \"upload_protocol\": {\n \"location\": \"query\",\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": - \"string\"\n }\n },\n \"baseUrl\": \"https://youtube.googleapis.com/\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:25 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCJe4NGsBTMQHDa3eOqYAYLg&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"OETiPOkOj2N8EQu35iM0wAuIK9A\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"koFlcWT1hjptSMJknM8pk0H87OA\",\n \"id\": \"UCJe4NGsBTMQHDa3eOqYAYLg\",\n - \ \"snippet\": {\n \"title\": \"Jay and Alina\",\n \"description\": - \"\\n\",\n \"customUrl\": \"@jayandalina\",\n \"publishedAt\": - \"2020-01-06T18:36:41.371362Z\",\n \"thumbnails\": {\n \"default\": - {\n \"url\": \"https://yt3.ggpht.com/dtZpvvyW2PUPxHezzeLsai6A0Rvy1aVCOEj9UckhYSL-tAsJ6CsF_Au7DCuOS0rCQhEQOrtedQ=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/dtZpvvyW2PUPxHezzeLsai6A0Rvy1aVCOEj9UckhYSL-tAsJ6CsF_Au7DCuOS0rCQhEQOrtedQ=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/dtZpvvyW2PUPxHezzeLsai6A0Rvy1aVCOEj9UckhYSL-tAsJ6CsF_Au7DCuOS0rCQhEQOrtedQ=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Jay and Alina\",\n \"description\": - \"\\n\"\n },\n \"country\": \"GB\"\n },\n \"brandingSettings\": - {\n \"channel\": {\n \"title\": \"Jay and Alina\",\n \"description\": - \"\\n\",\n \"trackingAnalyticsAccountId\": \"UA-180595637-1\",\n - \ \"country\": \"GB\"\n }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:25 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n }\n - \ }\n }\n },\n \"ownerDomain\": \"google.com\",\n \"mtlsRootUrl\": - \"https://youtube.mtls.googleapis.com/\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"kind\": \"discovery#restDescription\",\n \"parameters\": {\n \"uploadType\": - {\n \"location\": \"query\",\n \"description\": \"Legacy upload - protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"type\": - \"string\"\n },\n \"alt\": {\n \"description\": \"Data format for - response.\",\n \"default\": \"json\",\n \"enumDescriptions\": [\n - \ \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"enum\": [\n \"json\",\n - \ \"media\",\n \"proto\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"prettyPrint\": {\n \"description\": - \"Returns response with indentations and line breaks.\",\n \"location\": - \"query\",\n \"default\": \"true\",\n \"type\": \"boolean\"\n },\n - \ \"upload_protocol\": {\n \"location\": \"query\",\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": - \"string\"\n },\n \"quotaUser\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"access_token\": - {\n \"description\": \"OAuth access token.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"oauth_token\": {\n \"location\": - \"query\",\n \"description\": \"OAuth 2.0 token for the current user.\",\n - \ \"type\": \"string\"\n },\n \"$.xgafv\": {\n \"location\": - \"query\",\n \"enum\": [\n \"1\",\n \"2\"\n ],\n \"description\": - \"V1 error format.\",\n \"enumDescriptions\": [\n \"v1 error format\",\n - \ \"v2 error format\"\n ],\n \"type\": \"string\"\n },\n - \ \"fields\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Selector specifying which fields to include in a - partial response.\"\n },\n \"callback\": {\n \"location\": \"query\",\n - \ \"description\": \"JSONP\",\n \"type\": \"string\"\n },\n \"key\": - {\n \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"The YouTube Data API v3 is an - API that provides access to YouTube data, such as videos, playlists, and channels.\",\n - \ \"schemas\": {\n \"LiveChatNewSponsorDetails\": {\n \"properties\": - {\n \"memberLevelName\": {\n \"description\": \"The name of - the Level that the viewer just had joined. The Level names are defined by - the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"isUpgrade\": - {\n \"type\": \"boolean\",\n \"description\": \"If the viewer - just had upgraded from a lower level. For viewers that were not members at - the time of purchase, this field is false.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatNewSponsorDetails\"\n },\n \"LiveChatMessageSnippet\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"Next ID: 33\",\n \"properties\": {\n \"superChatDetails\": - {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"displayMessage\": {\n \"type\": \"string\",\n - \ \"description\": \"Contains a string that can be displayed to the - user. If this field is not present the message is silent, at the moment only - messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\"\n },\n - \ \"type\": {\n \"enum\": [\n \"invalidType\",\n - \ \"textMessageEvent\",\n \"tombstone\",\n \"fanFundingEvent\",\n - \ \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The type of - message, this will always be present, it determines the contents of the message - as well as which fields will be present.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"fanFundingEventDetails\": {\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": + \ \"\",\n \"\"\n ],\n \"description\": + \"The type of message, this will always be present, it determines the contents + of the message as well as which fields will be present.\"\n },\n \"textMessageDetails\": + {\n \"description\": \"Details about the text message, this is only + set if the type is 'textMessageEvent'.\",\n \"$ref\": \"LiveChatTextMessageDetails\"\n + \ },\n \"fanFundingEventDetails\": {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n + \ \"description\": \"Details about the funding event, this is only + set if the type is 'fanFundingEvent'.\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"type\": \"string\",\n + \ \"description\": \"The date and time when the message was orignally + published.\"\n },\n \"liveChatId\": {\n \"type\": \"string\"\n + \ },\n \"memberMilestoneChatDetails\": {\n \"description\": \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n },\n \"authorChannelId\": - {\n \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\",\n \"type\": \"string\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"superStickerDetails\": - {\n \"description\": \"Details about the Super Sticker event, this - is only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n + is 'memberMilestoneChatEvent'.\",\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n \ },\n \"newSponsorDetails\": {\n \"description\": \"Details about the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n - \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time when the message was orignally published.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"hasDisplayContent\": + \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"messageDeletedDetails\": + {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"hasDisplayContent\": {\n \"type\": \"boolean\",\n \"description\": \"Whether the message has display content that should be displayed to users.\"\n }\n - \ }\n },\n \"LiveChatMembershipGiftingDetails\": {\n \"properties\": - {\n \"giftMembershipsLevelName\": {\n \"description\": \"The - name of the level of the gift memberships purchased by the user. The Level - names are defined by the YouTube channel offering the Membership. In some - situations this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"giftMembershipsCount\": {\n \"description\": \"The number - of gift memberships purchased by the user.\",\n \"type\": \"integer\",\n - \ \"format\": \"int32\"\n }\n },\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"type\": \"object\"\n },\n \"CdnSettings\": {\n \"type\": - \"object\",\n \"id\": \"CdnSettings\",\n \"description\": \"Brief - description of the live stream cdn settings.\",\n \"properties\": {\n - \ \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n \"description\": - \"The ingestionInfo object contains information that YouTube provides that - you need to transmit your RTMP or HTTP stream to YouTube.\"\n },\n - \ \"frameRate\": {\n \"description\": \"The frame rate of the - inbound video data.\",\n \"enum\": [\n \"30fps\",\n \"60fps\",\n - \ \"variable\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"format\": {\n \"type\": - \"string\",\n \"description\": \"The format of the video stream that - you are sending to Youtube. \",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"ingestionType\": {\n \"description\": - \" The method or protocol used to transmit the video stream.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"rtmp\",\n \"dash\",\n \"webrtc\",\n \"hls\"\n - \ ],\n \"type\": \"string\"\n },\n \"resolution\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The resolution of the inbound video data.\",\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"type\": \"string\"\n }\n }\n },\n - \ \"Playlist\": {\n \"type\": \"object\",\n \"id\": \"Playlist\",\n - \ \"properties\": {\n \"status\": {\n \"$ref\": \"PlaylistStatus\",\n - \ \"description\": \"The status object contains status information - for the playlist.\"\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the playlist - in an embedded player.\",\n \"$ref\": \"PlaylistPlayer\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the playlist, such as its title and description.\",\n - \ \"$ref\": \"PlaylistSnippet\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlist\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlist\\\".\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"localizations\": {\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\",\n - \ \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n - \ }\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information like video count.\",\n \"$ref\": - \"PlaylistContentDetails\"\n }\n },\n \"description\": \"A - *playlist* resource represents a YouTube playlist. A playlist is a collection - of videos that can be viewed sequentially and shared with other users. A playlist - can contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\"\n },\n \"SearchResult\": {\n \"id\": - \"SearchResult\",\n \"description\": \"A search result contains information - about a YouTube video, channel, or playlist that matches the search parameters - specified in an API request. While a search result points to a uniquely identifiable - resource, like a video, it does not have its own persistent data.\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n \"default\": - \"youtube#searchResult\"\n },\n \"id\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The id object contains information - that can be used to uniquely identify the resource that matches the search - request.\"\n },\n \"snippet\": {\n \"$ref\": \"SearchResultSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - a search result, such as its title or description. For example, if the search - result is a video, then the title will be the video's title and the description - will be the video's description.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ }\n },\n \"SuperStickerMetadata\": {\n \"type\": \"object\",\n - \ \"id\": \"SuperStickerMetadata\",\n \"properties\": {\n \"stickerId\": - {\n \"type\": \"string\",\n \"description\": \"Unique identifier - of the Super Sticker. This is a shorter form of the alt_text that includes - pack name and a recognizable characteristic of the sticker.\"\n },\n - \ \"altTextLanguage\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the localization language in which the alt text is returned.\"\n - \ },\n \"altText\": {\n \"description\": \"Internationalized - alt text that describes the sticker image and any animation associated with - it.\",\n \"type\": \"string\"\n }\n }\n },\n \"VideoRecordingDetails\": - {\n \"type\": \"object\",\n \"id\": \"VideoRecordingDetails\",\n - \ \"description\": \"Recording information associated with the video.\",\n - \ \"properties\": {\n \"location\": {\n \"description\": - \"The geolocation information associated with the video.\",\n \"$ref\": - \"GeoPoint\"\n },\n \"recordingDate\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the video was recorded.\"\n },\n \"locationDescription\": - {\n \"type\": \"string\",\n \"description\": \"The text - description of the location where the video was recorded.\"\n }\n }\n - \ },\n \"MemberSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"membershipsDetails\": {\n \"$ref\": \"MembershipsDetails\",\n - \ \"description\": \"Details about the user's membership.\"\n },\n - \ \"memberDetails\": {\n \"description\": \"Details about the - member.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering memberships.\"\n }\n },\n \"id\": - \"MemberSnippet\"\n },\n \"AccessPolicy\": {\n \"type\": \"object\",\n - \ \"description\": \"Rights management policy for YouTube resources.\",\n - \ \"properties\": {\n \"exception\": {\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n },\n \"allowed\": - {\n \"description\": \"The value of allowed indicates whether the - access to the policy is allowed or denied by default.\",\n \"type\": - \"boolean\"\n }\n },\n \"id\": \"AccessPolicy\"\n },\n - \ \"LiveChatGiftMembershipReceivedDetails\": {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"properties\": {\n \"gifterChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the user that made the - membership gifting purchase. This matches the `snippet.authorChannelId` of - the associated membership gifting message.\"\n },\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"RelatedEntity\": - {\n \"id\": \"RelatedEntity\",\n \"type\": \"object\",\n \"properties\": - {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n }\n - \ },\n \"ChannelAuditDetails\": {\n \"properties\": {\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n }\n },\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\",\n \"id\": \"ChannelAuditDetails\",\n - \ \"type\": \"object\"\n },\n \"ChannelSection\": {\n \"properties\": - {\n \"localizations\": {\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n }\n },\n - \ \"kind\": {\n \"default\": \"youtube#channelSection\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"contentDetails\": {\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\",\n \"$ref\": \"ChannelSectionContentDetails\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n - \ \"description\": \"The targeting object contains basic targeting - settings about the channel section.\"\n }\n },\n \"id\": - \"ChannelSection\",\n \"type\": \"object\"\n },\n \"ActivityContentDetails\": - {\n \"id\": \"ActivityContentDetails\",\n \"description\": \"Details - about the content of an activity: the video that was shared, the channel that - was subscribed to, etc.\",\n \"type\": \"object\",\n \"properties\": - {\n \"promotedItem\": {\n \"description\": \"The promotedItem - object contains details about a resource which is being promoted. This property - is only present if the snippet.type is promotedItem.\",\n \"$ref\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"upload\": {\n - \ \"$ref\": \"ActivityContentDetailsUpload\",\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\"\n },\n \"like\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsLike\"\n - \ },\n \"favorite\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsFavorite\"\n },\n \"playlistItem\": - {\n \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"recommendation\": {\n \"description\": - \"The recommendation object contains information about a recommended resource. - This property is only present if the snippet.type is recommendation.\",\n - \ \"$ref\": \"ActivityContentDetailsRecommendation\"\n },\n - \ \"subscription\": {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n - \ \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\"\n },\n \"social\": {\n \"description\": - \"The social object contains details about a social network post. This property - is only present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"channelItem\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsChannelItem\"\n },\n \"bulletin\": {\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n }\n - \ }\n },\n \"VideoCategory\": {\n \"type\": \"object\",\n \"id\": - \"VideoCategory\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"default\": \"youtube#videoCategory\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the video category, including its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the video category.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A *videoCategory* resource identifies - a category that has been or could be associated with uploaded videos.\"\n - \ },\n \"VideoMonetizationDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"Details about monetization of a YouTube Video.\",\n - \ \"id\": \"VideoMonetizationDetails\",\n \"properties\": {\n \"access\": - {\n \"description\": \"The value of access indicates whether the - video can be monetized or not.\",\n \"$ref\": \"AccessPolicy\"\n - \ }\n }\n },\n \"LiveBroadcast\": {\n \"id\": \"LiveBroadcast\",\n - \ \"type\": \"object\",\n \"description\": \"A *liveBroadcast* resource - represents an event that will be streamed, via live video, on YouTube.\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the event, including its - title, description, start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveBroadcast\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the broadcast.\",\n \"type\": \"string\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\"\n },\n \"statistics\": - {\n \"$ref\": \"LiveBroadcastStatistics\",\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\"\n }\n }\n },\n \"LiveStreamContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamContentDetails\",\n - \ \"properties\": {\n \"closedCaptionsIngestionUrl\": {\n \"type\": - \"string\",\n \"description\": \"The ingestion URL where the closed - captions of this stream are sent.\"\n },\n \"isReusable\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Indicates whether - the stream is reusable, which means that it can be bound to multiple broadcasts. - It is common for broadcasters to reuse the same stream for many different - broadcasts if those broadcasts occur at different times. If you set this value - to false, then the stream will not be reusable, which means that it can only - be bound to one broadcast. Non-reusable streams differ from reusable streams - in the following ways: - A non-reusable stream can only be bound to one broadcast. - - A non-reusable stream might be deleted by an automated process after the - broadcast ends. - The liveStreams.list method does not list non-reusable streams - if you call the method and set the mine parameter to true. The only way to - use that method to retrieve the resource for a non-reusable stream is to use - the id parameter to identify the stream. \"\n }\n },\n \"description\": - \"Detailed settings of a stream.\"\n },\n \"IngestionInfo\": {\n \"type\": - \"object\",\n \"id\": \"IngestionInfo\",\n \"properties\": {\n \"streamName\": - {\n \"description\": \"The stream name that YouTube assigns to the - video stream.\",\n \"type\": \"string\"\n },\n \"rtmpsBackupIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - backupIngestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"ingestionAddress\": - {\n \"description\": \"The primary ingestion URL that you should - use to stream video to YouTube. You must stream video to this URL. Depending - on which application or tool you use to encode your video stream, you may - need to enter the stream URL and stream name separately or you may need to - concatenate them in the following format: *STREAM_URL/STREAM_NAME* \",\n \"type\": - \"string\"\n },\n \"rtmpsIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\"\n },\n \"backupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The backup ingestion URL that you - should use to stream video to YouTube. You have the option of simultaneously - streaming the content that you are sending to the ingestionAddress to this - URL.\"\n }\n },\n \"description\": \"Describes information - necessary for ingesting an RTMP, HTTP, or SRT stream.\"\n },\n \"AbuseReport\": - {\n \"properties\": {\n \"abuseTypes\": {\n \"items\": - {\n \"$ref\": \"AbuseType\"\n },\n \"type\": - \"array\"\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n - \ },\n \"relatedEntities\": {\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n },\n \"type\": \"array\"\n },\n - \ \"description\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"AbuseReport\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label for this abuse report secondary - reason.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of this abuse report secondary reason.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"CommentSnippetAuthorChannelId\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"CommentSnippetAuthorChannelId\",\n \"description\": - \"The id of the author's YouTube channel, if any.\"\n },\n \"PropertyValue\": - {\n \"id\": \"PropertyValue\",\n \"type\": \"object\",\n \"description\": - \"A pair Property / Value.\",\n \"properties\": {\n \"property\": - {\n \"type\": \"string\",\n \"description\": \"A property.\"\n - \ },\n \"value\": {\n \"description\": \"The property's - value.\",\n \"type\": \"string\"\n }\n }\n },\n \"SubscriptionContentDetails\": - {\n \"id\": \"SubscriptionContentDetails\",\n \"type\": \"object\",\n - \ \"description\": \"Details about the content to witch a subscription - refers.\",\n \"properties\": {\n \"activityType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"type\": \"string\"\n },\n \"newItemCount\": {\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of new items in the subscription since its content was last read.\"\n - \ },\n \"totalItemCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The approximate - number of items that the subscription points to.\"\n }\n }\n },\n - \ \"MembershipsLevelSnippet\": {\n \"properties\": {\n \"levelDetails\": - {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details - about the pricing level.\"\n },\n \"creatorChannelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The id of the - channel that's offering channel memberships.\"\n }\n },\n \"id\": - \"MembershipsLevelSnippet\",\n \"type\": \"object\"\n },\n \"Video\": - {\n \"id\": \"Video\",\n \"properties\": {\n \"localizations\": - {\n \"description\": \"The localizations object contains localized - versions of the basic details about the video, such as its title and description.\",\n - \ \"type\": \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"VideoLocalization\"\n }\n },\n \"recordingDetails\": - {\n \"$ref\": \"VideoRecordingDetails\",\n \"description\": - \"The recordingDetails object encapsulates information about the location, - date and address where the video was recorded.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.videos.update\"\n ]\n },\n \"type\": - \"string\"\n },\n \"monetizationDetails\": {\n \"$ref\": - \"VideoMonetizationDetails\",\n \"description\": \"The monetizationDetails - object encapsulates information about the monetization status of the video.\"\n - \ },\n \"liveStreamingDetails\": {\n \"$ref\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the video's uploading, processing, and privacy statuses.\",\n - \ \"$ref\": \"VideoStatus\"\n },\n \"statistics\": {\n - \ \"$ref\": \"VideoStatistics\",\n \"description\": \"The - statistics object contains statistics about the video.\"\n },\n \"player\": - {\n \"$ref\": \"VideoPlayer\",\n \"description\": \"The - player object contains information that you would use to play the video in - an embedded player.\"\n },\n \"processingDetails\": {\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress + \ },\n \"type\": \"object\"\n },\n \"Video\": {\n \"id\": + \"Video\",\n \"properties\": {\n \"status\": {\n \"$ref\": + \"VideoStatus\",\n \"description\": \"The status object contains + information about the video's uploading, processing, and privacy statuses.\"\n + \ },\n \"processingDetails\": {\n \"description\": \"The + processingDetails object encapsulates information about YouTube's progress in processing the uploaded video file. The properties in the object identify the current processing status and an estimate of the time remaining until YouTube finishes processing the video. This part also indicates whether different @@ -6769,7 +3251,53 @@ interactions: for the video. The processingProgress object is designed to be polled so that the video uploaded can track the progress that YouTube has made in processing the uploaded video file. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoProcessingDetails\"\n },\n \"projectDetails\": + \ \"$ref\": \"VideoProcessingDetails\"\n },\n \"topicDetails\": + {\n \"$ref\": \"VideoTopicDetails\",\n \"description\": + \"The topicDetails object encapsulates information about Freebase topics associated + with the video.\"\n },\n \"monetizationDetails\": {\n \"$ref\": + \"VideoMonetizationDetails\",\n \"description\": \"The monetizationDetails + object encapsulates information about the monetization status of the video.\"\n + \ },\n \"statistics\": {\n \"$ref\": \"VideoStatistics\",\n + \ \"description\": \"The statistics object contains statistics about + the video.\"\n },\n \"fileDetails\": {\n \"description\": + \"The fileDetails object encapsulates information about the video file that + was uploaded to YouTube, including the file's resolution, duration, audio + and video codecs, stream bitrates, and more. This data can only be retrieved + by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n },\n + \ \"recordingDetails\": {\n \"description\": \"The recordingDetails + object encapsulates information about the location, date and address where + the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n + \ },\n \"contentDetails\": {\n \"description\": \"The + contentDetails object contains information about the video content, including + the length of the video and its aspect ratio.\",\n \"$ref\": \"VideoContentDetails\"\n + \ },\n \"player\": {\n \"$ref\": \"VideoPlayer\",\n + \ \"description\": \"The player object contains information that you + would use to play the video in an embedded player.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"suggestions\": {\n \"$ref\": \"VideoSuggestions\",\n + \ \"description\": \"The suggestions object encapsulates suggestions + that identify opportunities to improve the video quality or the metadata for + the uploaded video. This data can only be retrieved by the video owner.\"\n + \ },\n \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n + \ \"description\": \"Age restriction details related to a video. This + data can only be retrieved by the video owner.\"\n },\n \"localizations\": + {\n \"description\": \"The localizations object contains localized + versions of the basic details about the video, such as its title and description.\",\n + \ \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n + \ },\n \"type\": \"object\"\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#video\\\".\",\n \"type\": \"string\",\n + \ \"default\": \"youtube#video\"\n },\n \"id\": {\n + \ \"annotations\": {\n \"required\": [\n \"youtube.videos.update\"\n + \ ]\n },\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the video, such as its title, description, and category.\",\n + \ \"$ref\": \"VideoSnippet\"\n },\n \"liveStreamingDetails\": + {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": + \"The liveStreamingDetails object contains metadata about a live video broadcast. + The object will only be present in a video resource if the video is an upcoming, + live, or completed live broadcast.\"\n },\n \"projectDetails\": {\n \"description\": \"The projectDetails object contains information about the project specific video metadata. b/157517979: This part was never populated after it was added. However, it sees non-zero traffic because there @@ -6777,283096 +3305,2882 @@ interactions: and do NOT remove it because otherwise V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"ageGating\": - {\n \"description\": \"Age restriction details related to a video. - This data can only be retrieved by the video owner.\",\n \"$ref\": - \"VideoAgeGating\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"topicDetails\": {\n \"description\": \"The topicDetails - object encapsulates information about Freebase topics associated with the - video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n \"fileDetails\": - {\n \"$ref\": \"VideoFileDetails\",\n \"description\": \"The - fileDetails object encapsulates information about the video file that was - uploaded to YouTube, including the file's resolution, duration, audio and - video codecs, stream bitrates, and more. This data can only be retrieved by - the video owner.\"\n },\n \"kind\": {\n \"default\": - \"youtube#video\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#video\\\".\",\n \"type\": - \"string\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information about the video content, - including the length of the video and its aspect ratio.\",\n \"$ref\": - \"VideoContentDetails\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video, such as its title, - description, and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n - \ \"suggestions\": {\n \"$ref\": \"VideoSuggestions\",\n \"description\": - \"The suggestions object encapsulates suggestions that identify opportunities - to improve the video quality or the metadata for the uploaded video. This - data can only be retrieved by the video owner.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A *video* resource represents a YouTube - video.\"\n },\n \"ActivityContentDetailsUpload\": {\n \"properties\": - {\n \"videoId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the uploaded video.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsUpload\",\n - \ \"description\": \"Information about the uploaded video.\"\n },\n - \ \"ChannelSnippet\": {\n \"properties\": {\n \"customUrl\": - {\n \"type\": \"string\",\n \"description\": \"The custom - url of the channel.\"\n },\n \"country\": {\n \"type\": - \"string\",\n \"description\": \"The country of the channel.\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the channel was created.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel's title.\"\n },\n - \ \"localized\": {\n \"description\": \"Localized title and - description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"description\": {\n \"description\": \"The description - of the channel.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel's default title and description.\"\n },\n \"thumbnails\": - {\n \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ }\n },\n \"id\": \"ChannelSnippet\",\n \"description\": - \"Basic details about a channel, including title, description and thumbnails.\",\n - \ \"type\": \"object\"\n },\n \"ImageSettings\": {\n \"properties\": - {\n \"bannerTvHighImageUrl\": {\n \"description\": \"Banner - image. TV size high resolution (1920x1080).\",\n \"type\": \"string\"\n - \ },\n \"bannerTabletImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Tablet size (1707x283).\"\n },\n - \ \"backgroundImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n - \ \"description\": \"The URL for the background image shown on the - video watch page. The image should be 1200px by 615px, with a maximum file - size of 128k.\"\n },\n \"smallBrandedBannerImageUrl\": {\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTvLowImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. TV size low resolution - (854x480).\"\n },\n \"bannerTvMediumImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. TV size medium resolution - (1280x720).\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTvImageUrl\": - {\n \"description\": \"Banner image. TV size extra high resolution - (2120x1192).\",\n \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size low resolution (1138x188).\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size high resolution (2276x377).\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\",\n - \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size extra high resolution - (2560x424).\",\n \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"smallBrandedBannerImageImapScript\": {\n \"description\": - \"The image map script for the small banner image.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"bannerMobileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size (640x175).\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"trackingImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\"\n },\n \"bannerImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Branding properties for images associated with the - channel.\",\n \"id\": \"ImageSettings\"\n },\n \"ThirdPartyLinkSnippet\": - {\n \"properties\": {\n \"channelToStoreLink\": {\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"description\": - \"Type of the link named after the entities that are being linked.\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ]\n }\n },\n \"id\": - \"ThirdPartyLinkSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic information about a third party account link, including its type and - type-specific information.\"\n },\n \"ChannelSectionSnippet\": {\n \"description\": - \"Basic details about a channel section, including title, style and position.\",\n - \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the channel section.\"\n },\n \"title\": - {\n \"description\": \"The channel section's title for multiple_playlists - and multiple_channels.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": - \"Localized title, read-only.\"\n },\n \"style\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The style of the channel section.\",\n \"type\": - \"string\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ]\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"description\": \"The - type of the channel section.\",\n \"type\": \"string\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": - \"The language of the channel section's default title and description.\"\n - \ },\n \"position\": {\n \"description\": \"The position - of the channel section in the channel.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n }\n },\n \"id\": \"ChannelSectionSnippet\",\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": {\n \"properties\": - {\n \"liveBroadcastPriority\": {\n \"description\": \"Priority - of the live broadcast event (internal state).\",\n \"enum\": [\n - \ \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"type\": - \"string\"\n },\n \"madeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the broadcast is made for kids or not, - decided by YouTube instead of the creator. This field is read only.\"\n },\n - \ \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's privacy status. Note that the - broadcast represents exactly one YouTube video, so the privacy settings are - identical to those supported for videos. In addition, you can set this field - by modifying the broadcast resource or by setting the privacyStatus field - of the corresponding video resource.\",\n \"type\": \"string\"\n - \ },\n \"lifeCycleStatus\": {\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete - settings\",\n \"Visible only to partner, may need special UI treatment\",\n - \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n - \ \"The broadcast is finished.\",\n \"This broadcast - was removed by admin action\",\n \"Transition into TESTING has - been requested\",\n \"Transition into LIVE has been requested\"\n - \ ],\n \"type\": \"string\"\n },\n \"recordingStatus\": - {\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"description\": \"The broadcast's recording status.\",\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"The recording has not yet been started.\",\n \"The - recording is currently on.\",\n \"The recording is completed, and - cannot be started again.\"\n ],\n \"type\": \"string\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveBroadcastStatus\",\n \"description\": - \"Live broadcast state.\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"properties\": {\n \"partsProcessed\": {\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"timeLeftMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"An estimate of the amount of time, - in millseconds, that YouTube needs to finish processing the video.\"\n },\n - \ \"partsTotal\": {\n \"description\": \"An estimate of the - total number of parts that need to be processed for the video. The number - may be updated with more precise estimates while YouTube processes the video.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"Video processing progress and completion time estimate.\"\n - \ },\n \"PlaylistItemListResponse\": {\n \"properties\": {\n \"items\": - {\n \"description\": \"A list of playlist items that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"PlaylistItem\"\n }\n },\n \"kind\": {\n \"type\": + \ \"$ref\": \"VideoProjectDetails\"\n }\n },\n \"description\": + \"A *video* resource represents a YouTube video.\",\n \"type\": \"object\"\n + \ },\n \"LiveStreamStatus\": {\n \"type\": \"object\",\n \"properties\": + {\n \"streamStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"created\",\n + \ \"ready\",\n \"active\",\n \"inactive\",\n + \ \"error\"\n ]\n },\n \"healthStatus\": + {\n \"description\": \"The health status of the stream.\",\n \"$ref\": + \"LiveStreamHealthStatus\"\n }\n },\n \"description\": \"Brief + description of the live stream status.\",\n \"id\": \"LiveStreamStatus\"\n + \ },\n \"LiveChatModeratorSnippet\": {\n \"id\": \"LiveChatModeratorSnippet\",\n + \ \"properties\": {\n \"moderatorDetails\": {\n \"description\": + \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n + \ },\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": + \"The ID of the live chat this moderator can act on.\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"Comment\": {\n \"description\": + \"A *comment* represents a single YouTube comment.\",\n \"properties\": + {\n \"id\": {\n \"description\": \"The ID that YouTube uses + to uniquely identify the comment.\",\n \"type\": \"string\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#comment\",\n \"type\": \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"PlaylistItemListResponse\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"Details about a social network post.\",\n \"properties\": - {\n \"type\": {\n \"description\": \"The name of the social - network.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n - \ \"facebook\",\n \"twitter\"\n ]\n },\n - \ \"referenceUrl\": {\n \"type\": \"string\",\n \"description\": - \"The URL of the social network post.\"\n },\n \"author\": {\n - \ \"description\": \"The author of the social network post.\",\n \"type\": - \"string\"\n },\n \"imageUrl\": {\n \"description\": - \"An image of the post's author.\",\n \"type\": \"string\"\n },\n - \ \"resourceId\": {\n \"description\": \"The resourceId object - encapsulates information that identifies the resource associated with a social - network post.\",\n \"$ref\": \"ResourceId\"\n }\n }\n - \ },\n \"SuperChatEvent\": {\n \"description\": \"A `__superChatEvent__` - resource represents a Super Chat purchase on a YouTube channel.\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the Super Chat event.\",\n \"$ref\": - \"SuperChatEventSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"default\": \"youtube#superChatEvent\",\n \"type\": \"string\"\n + this is. Value: the fixed string \\\"youtube#comment\\\".\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": + \"CommentSnippet\",\n \"description\": \"The snippet object contains + basic details about the comment.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"Comment\"\n },\n \"ChannelSectionLocalization\": {\n + \ \"description\": \"ChannelSection localization setting\",\n \"type\": + \"object\",\n \"properties\": {\n \"title\": {\n \"type\": + \"string\",\n \"description\": \"The localized strings for channel + section's title.\"\n }\n },\n \"id\": \"ChannelSectionLocalization\"\n + \ },\n \"LiveChatMembershipGiftingDetails\": {\n \"id\": \"LiveChatMembershipGiftingDetails\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"giftMembershipsLevelName\": + {\n \"type\": \"string\",\n \"description\": \"The name + of the level of the gift memberships purchased by the user. The Level names + are defined by the YouTube channel offering the Membership. In some situations + this field isn't filled.\"\n },\n \"giftMembershipsCount\": + {\n \"description\": \"The number of gift memberships purchased by + the user.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n + \ }\n }\n },\n \"LiveChatSuperChatDetails\": {\n \"type\": + \"object\",\n \"id\": \"LiveChatSuperChatDetails\",\n \"properties\": + {\n \"currency\": {\n \"description\": \"The currency in which + the purchase was made.\",\n \"type\": \"string\"\n },\n \"amountDisplayString\": + {\n \"type\": \"string\",\n \"description\": \"A rendered + string that displays the fund amount and currency to the user.\"\n },\n + \ \"tier\": {\n \"description\": \"The tier in which the amount + belongs. Lower amounts belong to lower tiers. The lowest tier is 1.\",\n \"format\": + \"uint32\",\n \"type\": \"integer\"\n },\n \"amountMicros\": + {\n \"type\": \"string\",\n \"description\": \"The amount + purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": + \"uint64\"\n },\n \"userComment\": {\n \"type\": \"string\",\n + \ \"description\": \"The comment added by the user to this Super Chat + event.\"\n }\n }\n },\n \"LiveChatFanFundingEventDetails\": + {\n \"properties\": {\n \"userComment\": {\n \"type\": + \"string\",\n \"description\": \"The comment added by the user to + this fan funding event.\"\n },\n \"amountMicros\": {\n \"description\": + \"The amount of the fund.\",\n \"format\": \"uint64\",\n \"type\": + \"string\"\n },\n \"amountDisplayString\": {\n \"description\": + \"A rendered string that displays the fund amount and currency to the user.\",\n + \ \"type\": \"string\"\n },\n \"currency\": {\n \"type\": + \"string\",\n \"description\": \"The currency in which the fund was + made.\"\n }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\"\n + \ },\n \"ActivityContentDetailsLike\": {\n \"properties\": {\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId + object contains information that identifies the rated resource.\"\n }\n + \ },\n \"type\": \"object\",\n \"description\": \"Information + about a resource that received a positive (like) rating.\",\n \"id\": + \"ActivityContentDetailsLike\"\n },\n \"VideoAbuseReportReason\": {\n + \ \"id\": \"VideoAbuseReportReason\",\n \"type\": \"object\",\n \"description\": + \"A `__videoAbuseReportReason__` resource identifies a reason that a video + could be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\",\n + \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReason\"\n \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the Super Chat event.\"\n }\n - \ },\n \"id\": \"SuperChatEvent\",\n \"type\": \"object\"\n - \ },\n \"SearchResultSnippet\": {\n \"description\": \"Basic details - about a search result, including title, description and thumbnails of the - item referenced by the search result.\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the search result.\"\n },\n \"channelTitle\": {\n \"description\": - \"The title of the channel that published the resource that the search result - identifies.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - creation date and time of the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the search result. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"liveBroadcastContent\": {\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"It indicates if the resource (video or channel) - has upcoming/active live broadcast content. Or it's \\\"none\\\" if there - is not any upcoming/active live broadcasts.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ]\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"A description of the search result.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\"\n }\n },\n \"id\": - \"SearchResultSnippet\",\n \"type\": \"object\"\n },\n \"MembershipsDetails\": - {\n \"id\": \"MembershipsDetails\",\n \"properties\": {\n \"highestAccessibleLevelDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n },\n - \ \"accessibleLevels\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Ids of all levels that - the user has access to. This includes the currently active level and all other - levels that are included because of a higher purchase.\",\n \"type\": - \"array\"\n },\n \"highestAccessibleLevel\": {\n \"description\": - \"Id of the highest level that the user has access to at the moment.\",\n - \ \"type\": \"string\"\n },\n \"membershipsDurationAtLevels\": - {\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ },\n \"type\": \"array\",\n \"description\": \"Data - about memberships duration on particular pricing levels.\"\n },\n \"membershipsDuration\": - {\n \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\",\n \"$ref\": \"MembershipsDuration\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": - {\n \"id\": \"LiveBroadcastListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of broadcasts that match the request criteria.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": + resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"description\": \"The `snippet` object contains basic details + about the abuse report reason.\",\n \"$ref\": \"VideoAbuseReportReasonSnippet\"\n + \ },\n \"id\": {\n \"description\": \"The ID of this + abuse report reason.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"VideoLocalization\": {\n \"id\": \"VideoLocalization\",\n + \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"Localized version of the video's description.\"\n + \ },\n \"title\": {\n \"description\": \"Localized version + of the video's title.\",\n \"type\": \"string\"\n }\n },\n + \ \"description\": \"Localized versions of certain video properties (e.g. + title).\",\n \"type\": \"object\"\n },\n \"SearchListResponse\": + {\n \"id\": \"SearchListResponse\",\n \"properties\": {\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveBroadcastListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"PlaylistItemContentDetails\": - {\n \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - a video. To retrieve the video resource, set the id query parameter to this - value in your API request.\"\n },\n \"startAt\": {\n \"type\": - \"string\",\n \"description\": \"The time, measured in seconds from - the start of the video, when the video should start playing. (The playlist - owner can specify the times when the video should start and stop playing when - the video is played in the context of the playlist.) The default value is - 0.\"\n },\n \"note\": {\n \"description\": \"A user-generated - note for this item.\",\n \"type\": \"string\"\n },\n \"endAt\": - {\n \"description\": \"The time, measured in seconds from the start - of the video, when the video should stop playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) By default, assume that the video.endTime - is the end of the video.\",\n \"type\": \"string\"\n },\n - \ \"videoPublishedAt\": {\n \"description\": \"The date and - time that the video was published to YouTube.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistItemContentDetails\"\n },\n \"CaptionListResponse\": - {\n \"type\": \"object\",\n \"id\": \"CaptionListResponse\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#captionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Caption\"\n },\n \"description\": \"A list of captions - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoGetRatingResponse\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoRating\"\n - \ },\n \"description\": \"A list of ratings that match the - request criteria.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoGetRatingResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoGetRatingResponse\",\n - \ \"type\": \"object\"\n },\n \"TestItem\": {\n \"properties\": - {\n \"gaia\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ }\n },\n \"id\": \"TestItem\",\n \"type\": \"object\"\n - \ },\n \"MemberListResponse\": {\n \"id\": \"MemberListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"type\": \"string\",\n + value of the pageToken parameter to retrieve the previous page in the result + set.\"\n },\n \"regionCode\": {\n \"type\": \"string\"\n + \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"items\": {\n \"description\": + \"Pagination information for token pagination.\",\n \"items\": {\n + \ \"$ref\": \"SearchResult\"\n },\n \"type\": + \"array\"\n },\n \"kind\": {\n \"type\": \"string\",\n \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#memberListResponse\\\".\",\n \"default\": - \"youtube#memberListResponse\"\n },\n \"visitorId\": {\n \"type\": + the fixed string \\\"youtube#searchListResponse\\\".\",\n \"default\": + \"youtube#searchListResponse\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Member\"\n },\n \"description\": \"A list of members that - match the request criteria.\",\n \"type\": \"array\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"InvideoPosition\": {\n - \ \"description\": \"Describes the spatial position of a visual widget - inside a video. It is a union of various position types, out of which only - will be set one.\",\n \"properties\": {\n \"cornerPosition\": - {\n \"description\": \"Describes in which corner of the video the - visual widget will appear.\",\n \"enum\": [\n \"topLeft\",\n - \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"description\": \"Defines the - position type.\",\n \"enumDescriptions\": [\n \"\"\n ],\n - \ \"enum\": [\n \"corner\"\n ],\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"InvideoPosition\"\n },\n \"SubscriptionListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Subscription\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of subscriptions that match - the request criteria.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#subscriptionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"SubscriptionListResponse\"\n - \ },\n \"TestItemTestItemSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"TestItemTestItemSnippet\",\n \"properties\": {}\n },\n - \ \"ActivityContentDetailsChannelItem\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsChannelItem\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that was added to - the channel.\",\n \"$ref\": \"ResourceId\"\n }\n },\n - \ \"description\": \"Details about a resource which was added to a channel.\"\n - \ },\n \"I18nLanguage\": {\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n language, such as language code and human-readable name.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#i18nLanguage\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n language.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"An *i18nLanguage* - resource identifies a UI language currently supported by YouTube.\",\n \"id\": - \"I18nLanguage\",\n \"type\": \"object\"\n },\n \"I18nLanguageSnippet\": - {\n \"properties\": {\n \"name\": {\n \"description\": - \"The human-readable name of the language in the language itself.\",\n \"type\": - \"string\"\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"A short BCP-47 code that uniquely identifies - a language.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\",\n \"id\": \"I18nLanguageSnippet\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"properties\": {\n \"banDurationSeconds\": {\n \"format\": - \"uint64\",\n \"description\": \"The duration of the ban. This property - is only present if the banType is temporary.\",\n \"type\": \"string\"\n - \ },\n \"bannedUserDetails\": {\n \"description\": \"The - details of the user that was banned.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banType\": {\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of ban.\"\n }\n }\n },\n - \ \"MembershipsDurationAtLevel\": {\n \"properties\": {\n \"memberSince\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the user became a continuous member for the given level.\"\n - \ },\n \"level\": {\n \"type\": \"string\",\n \"description\": - \"Pricing level ID.\"\n },\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"description\": \"The cumulative - time the user has been a member for the given level in complete months (the - time is rounded down to the nearest integer).\",\n \"format\": \"int32\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"MembershipsDurationAtLevel\"\n - \ },\n \"VideoFileDetailsVideoStream\": {\n \"type\": \"object\",\n - \ \"description\": \"Information about a video stream.\",\n \"id\": - \"VideoFileDetailsVideoStream\",\n \"properties\": {\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The video - codec that the stream uses.\"\n },\n \"frameRateFps\": {\n \"format\": - \"double\",\n \"description\": \"The video stream's frame rate, in - frames per second.\",\n \"type\": \"number\"\n },\n \"heightPixels\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's height in pixels.\"\n },\n \"aspectRatio\": - {\n \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n },\n \"rotation\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"none\",\n \"clockwise\",\n \"upsideDown\",\n - \ \"counterClockwise\",\n \"other\"\n ],\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\"\n },\n \"widthPixels\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The video stream's bitrate, in bits per second.\"\n }\n }\n - \ },\n \"VideoLocalization\": {\n \"type\": \"object\",\n \"id\": - \"VideoLocalization\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"Localized version of the video's - title.\"\n },\n \"description\": {\n \"description\": - \"Localized version of the video's description.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Localized versions of certain - video properties (e.g. title).\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"CommentThreadSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a comment thread.\",\n \"id\": \"CommentThreadSnippet\",\n - \ \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"totalReplyCount\": {\n - \ \"format\": \"uint32\",\n \"description\": \"The total - number of replies (not including the top level comment).\",\n \"type\": - \"integer\"\n },\n \"canReply\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n },\n \"isPublic\": {\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\",\n \"type\": \"boolean\"\n },\n \"topLevelComment\": - {\n \"description\": \"The top level comment of this thread.\",\n - \ \"$ref\": \"Comment\"\n }\n }\n },\n \"ThirdPartyLinkStatus\": - {\n \"type\": \"object\",\n \"properties\": {\n \"linkStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The third-party link status object contains information about the status - of the link.\"\n },\n \"TokenPagination\": {\n \"type\": \"object\",\n - \ \"properties\": {},\n \"id\": \"TokenPagination\",\n \"description\": - \"Stub token pagination template to suppress results.\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorListResponse\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"description\": \"A list of moderators that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"type\": \"array\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n }\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"ActivityContentDetailsComment\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with the comment.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"description\": \"Information about a resource that received - a comment.\",\n \"id\": \"ActivityContentDetailsComment\",\n \"type\": - \"object\"\n },\n \"CommentListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentListResponse\\\".\",\n \"default\": - \"youtube#commentListResponse\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of comments that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Comment\"\n }\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"CommentListResponse\"\n },\n \"LiveChatModeratorSnippet\": {\n \"id\": - \"LiveChatModeratorSnippet\",\n \"properties\": {\n \"moderatorDetails\": - {\n \"description\": \"Details about the moderator.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"liveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the live chat this moderator - can act on.\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": - {\n \"properties\": {\n \"offlineAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the underlying - stream went offline.\",\n \"type\": \"string\"\n },\n \"pollingIntervalMillis\": - {\n \"type\": \"integer\",\n \"description\": \"The amount - of time the client should wait before polling again.\",\n \"format\": - \"uint32\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n \"default\": - \"youtube#liveChatMessageListResponse\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n }\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"id\": \"LiveChatMessageListResponse\",\n \"type\": - \"object\"\n },\n \"VideoAbuseReport\": {\n \"properties\": {\n - \ \"comments\": {\n \"description\": \"Additional comments - regarding the abuse report.\",\n \"type\": \"string\"\n },\n - \ \"language\": {\n \"type\": \"string\",\n \"description\": - \"The language that the content was viewed in.\"\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n },\n \"reasonId\": - {\n \"description\": \"The high-level, or primary, reason that the - content is abusive. The value is an abuse report reason ID.\",\n \"type\": - \"string\"\n },\n \"secondaryReasonId\": {\n \"type\": - \"string\",\n \"description\": \"The specific, or secondary, reason - that this content is abusive (if available). The value is an abuse report - reason ID that is a valid secondary reason for the primary reason.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReport\"\n - \ },\n \"LiveBroadcastContentDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"Detailed settings of a broadcast.\",\n \"properties\": - {\n \"monitorStream\": {\n \"description\": \"The monitorStream - object contains information about the monitor stream, which the broadcaster - can use to review the event content before the broadcast stream is shown publicly.\",\n - \ \"$ref\": \"MonitorStreamInfo\"\n },\n \"recordFromStart\": - {\n \"type\": \"boolean\",\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\"\n },\n \"startWithSlate\": - {\n \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n },\n \"projection\": {\n \"enum\": [\n - \ \"projectionUnspecified\",\n \"rectangular\",\n \"360\",\n - \ \"mesh\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The projection format of this broadcast. - This defaults to rectangular.\"\n },\n \"latencyPreference\": - {\n \"type\": \"string\",\n \"description\": \"If both this - and enable_low_latency are set, they must match. LATENCY_NORMAL should match - enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enumDescriptions\": - [\n \"\",\n \"Best for: highest quality viewer playbacks - and higher resolutions.\",\n \"Best for: near real-time interaction, - with minimal playback buffering.\",\n \"Best for: real-time interaction - Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n - \ \"enum\": [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ]\n },\n - \ \"closedCaptionsType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ],\n \"type\": \"string\"\n },\n \"enableAutoStop\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto stop is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"enableClosedCaptions\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n - \ },\n \"enableLowLatency\": {\n \"description\": \"Indicates - whether this broadcast has low latency enabled.\",\n \"type\": \"boolean\"\n - \ },\n \"boundStreamLastUpdateTimeMs\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the live stream referenced by boundStreamId was last - updated.\"\n },\n \"boundStreamId\": {\n \"type\": - \"string\",\n \"description\": \"This value uniquely identifies the - live stream bound to the broadcast.\"\n },\n \"enableDvr\": - {\n \"description\": \"This setting determines whether viewers can - access DVR controls while watching the video. DVR controls enable the viewer - to control the video playback experience by pausing, rewinding, or fast forwarding - content. The default value for this property is true. *Important:* You must - set the value to true and also set the enableArchive property's value to true - if you want to make playback available immediately after the broadcast ends.\",\n - \ \"type\": \"boolean\"\n },\n \"enableContentEncryption\": - {\n \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n - \ },\n \"mesh\": {\n \"description\": \"The mesh for - projecting the video if projection is mesh. The mesh value must be a UTF-8 - string containing the base-64 encoding of 3D mesh data that follows the Spherical - Video V2 RFC specification for an mshp box, excluding the box size and type - but including the following four reserved zero bytes for the version and flags.\",\n - \ \"format\": \"byte\",\n \"type\": \"string\"\n },\n - \ \"enableAutoStart\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether auto start is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\"\n },\n \"stereoLayout\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The 3D stereo layout of this broadcast. - This defaults to mono.\",\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ],\n \"type\": \"string\"\n },\n \"enableEmbed\": - {\n \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\",\n \"type\": \"boolean\"\n }\n },\n \"id\": - \"LiveBroadcastContentDetails\"\n },\n \"LiveChatTextMessageDetails\": - {\n \"id\": \"LiveChatTextMessageDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"messageText\": {\n \"type\": \"string\",\n - \ \"description\": \"The user's message.\"\n }\n }\n },\n - \ \"ChannelContentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"id\": \"ChannelContentOwnerDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"timeLinked\": {\n \"description\": - \"The date and time when the channel was linked to the content owner.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"contentOwner\": {\n \"description\": \"The ID of the content - owner linked to the channel.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ChannelSectionLocalization\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for channel section's title.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"ChannelSection localization - setting\",\n \"id\": \"ChannelSectionLocalization\"\n },\n \"ChannelToStoreLinkDetails\": - {\n \"properties\": {\n \"merchantId\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"Google Merchant Center id of the store.\"\n },\n \"storeName\": - {\n \"description\": \"Name of the store.\",\n \"type\": - \"string\"\n },\n \"storeUrl\": {\n \"description\": - \"Landing page of the store.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viever is a member. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"userComment\": {\n \"description\": \"The comment added - by the member to this Member Milestone Chat. This field is empty for messages - without a comment from the member.\",\n \"type\": \"string\"\n },\n - \ \"memberMonth\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The total amount of months (rounded - up) the viewer has been a member that granted them this Member Milestone Chat. - This is the same number of months as is being displayed to YouTube users.\"\n - \ }\n }\n },\n \"VideoSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"defaultAudioLanguage\": {\n - \ \"type\": \"string\",\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that the video - was uploaded to.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the video was uploaded.\"\n },\n \"localized\": - {\n \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\",\n \"$ref\": \"VideoLocalization\"\n },\n \"liveBroadcastContent\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"description\": \"Indicates - if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" if - the video is not an upcoming/active live broadcast.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The video's description. @mutable - youtube.videos.insert youtube.videos.update\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the videos's default snippet.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the video belongs to.\"\n },\n \"categoryId\": - {\n \"description\": \"The YouTube video category associated with - the video.\",\n \"type\": \"string\"\n },\n \"tags\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of keyword tags associated with the video. - Tags may contain spaces.\",\n \"type\": \"array\"\n }\n },\n - \ \"description\": \"Basic details about a video, including title, description, - uploader, thumbnails and category.\",\n \"id\": \"VideoSnippet\"\n },\n - \ \"Entity\": {\n \"type\": \"object\",\n \"id\": \"Entity\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"typeId\": {\n \"type\": \"string\"\n },\n - \ \"url\": {\n \"type\": \"string\"\n }\n }\n },\n - \ \"PlaylistItemStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"This resource's privacy status.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n }\n },\n \"id\": \"PlaylistItemStatus\",\n \"description\": - \"Information about the playlist item's privacy status.\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"properties\": - {\n \"playlistItemId\": {\n \"type\": \"string\",\n \"description\": - \"ID of the item within the playlist.\"\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - about the resource that was added to the playlist.\",\n \"$ref\": - \"ResourceId\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The value that YouTube uses to uniquely - identify the playlist.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Information about a new playlist item.\"\n },\n - \ \"ChannelSectionTargeting\": {\n \"description\": \"ChannelSection - targeting setting.\",\n \"type\": \"object\",\n \"id\": \"ChannelSectionTargeting\",\n - \ \"properties\": {\n \"languages\": {\n \"description\": - \"The language the channel section is targeting.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"regions\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\",\n \"description\": \"The - region the channel section is targeting.\"\n },\n \"countries\": - {\n \"description\": \"The country the channel section is targeting.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n }\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"deletedMessageId\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"VideoAgeGating\": {\n \"id\": \"VideoAgeGating\",\n \"type\": - \"object\",\n \"properties\": {\n \"restricted\": {\n \"type\": - \"boolean\",\n \"description\": \"Age-restricted trailers. For redband - trailers and adult-rated video-games. Only users aged 18+ can view the content. - The the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\"\n },\n \"alcoholContent\": {\n - \ \"description\": \"Indicates whether or not the video has alcoholic - beverage content. Only users of legal purchasing age in a particular country, - as identified by ICAP, can view the content.\",\n \"type\": \"boolean\"\n - \ },\n \"videoGameRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Video game rating, if any.\",\n \"enum\": [\n \"anyone\",\n - \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n - \ ]\n }\n }\n },\n \"VideoSuggestions\": {\n \"properties\": - {\n \"processingWarnings\": {\n \"description\": \"A list - of reasons why YouTube may have difficulty transcoding the uploaded video - or that might result in an erroneous transcoding. These warnings are generated - before YouTube actually processes the uploaded video file. In addition, they - identify issues that are unlikely to cause the video processing to fail but - that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"enumDescriptions\": [\n \"Unrecognized file format, - transcoding is likely to fail.\",\n \"Unrecognized video codec, - transcoding is likely to fail.\",\n \"Unrecognized audio codec, - transcoding is likely to fail.\",\n \"Conflicting container and - stream resolutions.\",\n \"Edit lists are not currently supported.\",\n - \ \"Video codec that is known to cause problems was used.\",\n - \ \"Audio codec that is known to cause problems was used.\",\n - \ \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"type\": - \"string\"\n }\n },\n \"editorSuggestions\": {\n \"items\": - {\n \"enumDescriptions\": [\n \"Picture brightness - levels seem off and could be corrected.\",\n \"The video appears - shaky and could be stabilized.\",\n \"Margins (mattes) detected - around the picture could be cropped.\",\n \"The audio track appears - silent and could be swapped with a better quality one.\"\n ],\n - \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n - \ \"type\": \"string\"\n },\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\",\n \"type\": \"array\"\n - \ },\n \"processingErrors\": {\n \"description\": \"A - list of errors that will prevent YouTube from successfully processing the - uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\",\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n - \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n - \ \"unsupportedSpatialAudioLayout\"\n ],\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ]\n },\n \"type\": \"array\"\n - \ },\n \"tagSuggestions\": {\n \"description\": \"A - list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoSuggestionsTagSuggestion\"\n }\n },\n \"processingHints\": - {\n \"description\": \"A list of suggestions that may improve YouTube's - ability to process the video.\",\n \"type\": \"array\",\n \"items\": - {\n \"enumDescriptions\": [\n \"The MP4 file is not - streamable, this will slow down the processing. MOOV atom was not found at - the beginning of the file.\",\n \"Probably a better quality version - of the video exists. The video has wide screen aspect ratio, but is not an - HD video.\",\n \"Uploaded video is spherical video.\",\n \"Uploaded - video has spatial audio.\",\n \"Uploaded video is VR video.\",\n - \ \"Uploaded video is HDR video.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ]\n }\n }\n },\n \"id\": \"VideoSuggestions\",\n - \ \"description\": \"Specifies suggestions on how to improve video content, - including encoding hints, tag suggestions, and editor suggestions.\",\n \"type\": - \"object\"\n },\n \"ChannelLocalization\": {\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel's title.\"\n },\n \"description\": - {\n \"description\": \"The localized strings for channel's description.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Channel localization setting\",\n \"id\": \"ChannelLocalization\"\n - \ },\n \"SuperChatEventSnippet\": {\n \"properties\": {\n \"supporterDetails\": - {\n \"description\": \"Details about the supporter.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"displayString\": {\n \"description\": - \"A rendered string that displays the purchase amount and currency (e.g., - \\\"$1.00\\\"). The string is rendered for the given language.\",\n \"type\": - \"string\"\n },\n \"createdAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the event occurred.\"\n },\n \"commentText\": - {\n \"description\": \"The text contents of the comment left by the - user.\",\n \"type\": \"string\"\n },\n \"isSuperStickerEvent\": - {\n \"type\": \"boolean\",\n \"description\": \"True if - this event is a Super Sticker event.\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n },\n \"amountMicros\": {\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"messageType\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The tier for - the paid message, which is based on the amount of money spent to purchase - the message.\"\n },\n \"channelId\": {\n \"description\": - \"Channel id where the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"SuperChatEventSnippet\",\n \"type\": - \"object\"\n },\n \"PlaylistContentDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"itemCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The number - of videos in the playlist.\"\n }\n },\n \"id\": \"PlaylistContentDetails\"\n - \ },\n \"LiveChatBanSnippet\": {\n \"type\": \"object\",\n \"id\": - \"LiveChatBanSnippet\",\n \"properties\": {\n \"banDurationSeconds\": - {\n \"description\": \"The duration of a ban, only filled if the - ban has type TEMPORARY.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"liveChatId\": {\n \"description\": - \"The chat this ban is pertinent to.\",\n \"type\": \"string\"\n - \ },\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"An - invalid ban type.\",\n \"A permanent ban.\",\n \"A temporary - ban.\"\n ],\n \"description\": \"The type of ban.\",\n \"enum\": - [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"type\": \"string\"\n - \ }\n }\n },\n \"MonitorStreamInfo\": {\n \"properties\": - {\n \"enableMonitorStream\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"This value determines whether the monitor stream - is enabled for the broadcast. If the monitor stream is enabled, then YouTube - will broadcast the event content on a special stream intended only for the - broadcaster's consumption. The broadcaster can use the stream to review the - event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"type\": \"boolean\"\n },\n - \ \"broadcastStreamDelayMs\": {\n \"format\": \"uint32\",\n - \ \"description\": \"If you have set the enableMonitorStream property - to true, then this property determines the length of the live broadcast delay.\",\n - \ \"type\": \"integer\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"embedHtml\": {\n \"description\": \"HTML code - that embeds a player that plays the monitor stream.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Settings and Info - of the monitor stream\",\n \"type\": \"object\",\n \"id\": \"MonitorStreamInfo\"\n - \ },\n \"ActivityContentDetailsFavorite\": {\n \"type\": \"object\",\n - \ \"description\": \"Information about a video that was marked as a favorite - video.\",\n \"id\": \"ActivityContentDetailsFavorite\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\"\n }\n }\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"type\": \"object\",\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the subscriber.\"\n },\n - \ \"thumbnails\": {\n \"description\": \"Thumbnails for this - subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"title\": - {\n \"description\": \"The title of the subscriber.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel ID of the subscriber.\"\n }\n - \ },\n \"description\": \"Basic details about a subscription's subscriber - including title, description, channel ID and thumbnails.\"\n },\n \"ChannelTopicDetails\": - {\n \"properties\": {\n \"topicIds\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of Freebase topic IDs associated with - the channel. You can retrieve information about each topic using the Freebase - Topic API.\"\n },\n \"topicCategories\": {\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"id\": \"ChannelTopicDetails\",\n \"description\": - \"Freebase topic information related to the channel.\",\n \"type\": \"object\"\n - \ },\n \"LiveStreamStatus\": {\n \"description\": \"Brief description - of the live stream status.\",\n \"id\": \"LiveStreamStatus\",\n \"type\": - \"object\",\n \"properties\": {\n \"streamStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ],\n \"type\": \"string\"\n },\n - \ \"healthStatus\": {\n \"description\": \"The health status - of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n }\n - \ }\n },\n \"Activity\": {\n \"id\": \"Activity\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"default\": \"youtube#activity\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\",\n \"type\": - \"string\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ActivityContentDetails\",\n \"description\": \"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.\"\n },\n \"snippet\": - {\n \"$ref\": \"ActivitySnippet\",\n \"description\": \"The - snippet object contains basic details about the activity, including the activity's - type and group ID.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"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.\"\n - \ },\n \"LiveChatMessageAuthorDetails\": {\n \"properties\": {\n - \ \"isVerified\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author's identity has been verified by YouTube.\"\n },\n - \ \"profileImageUrl\": {\n \"description\": \"The channels's - avatar URL.\",\n \"type\": \"string\"\n },\n \"isChatSponsor\": - {\n \"description\": \"Whether the author is a sponsor of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"isChatModerator\": - {\n \"description\": \"Whether the author is a moderator of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"displayName\": - {\n \"description\": \"The channel's display name.\",\n \"type\": - \"string\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The YouTube channel ID.\",\n \"type\": - \"string\"\n },\n \"isChatOwner\": {\n \"description\": - \"Whether the author is the owner of the live chat.\",\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageAuthorDetails\"\n },\n \"LiveStreamListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#liveStreamListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of live streams that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n - \ }\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveStreamListResponse\"\n },\n \"CaptionSnippet\": - {\n \"description\": \"Basic details about a caption track, such as its - language and name.\",\n \"properties\": {\n \"isEasyReader\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"language\": {\n \"type\": \"string\",\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"lastUpdated\": {\n \"description\": - \"The date and time when the caption track was last updated.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"name\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\"\n },\n \"isCC\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the track contains - closed captions for the deaf and hard of hearing. The default value is false.\"\n - \ },\n \"videoId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video associated with the caption track. - @mutable youtube.captions.insert\"\n },\n \"isDraft\": {\n \"type\": - \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\"\n - \ },\n \"isAutoSynced\": {\n \"description\": \"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.\",\n - \ \"type\": \"boolean\"\n },\n \"trackKind\": {\n \"type\": - \"string\",\n \"enum\": [\n \"standard\",\n \"ASR\",\n - \ \"forced\"\n ],\n \"description\": \"The caption - track's type.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"isLarge\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the caption track - uses large text for the vision-impaired. The default value is false.\"\n },\n - \ \"status\": {\n \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The caption track's status.\",\n \"type\": \"string\"\n },\n - \ \"failureReason\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ],\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\"\n },\n \"audioTrackType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of audio track associated with the caption - track.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"CaptionSnippet\"\n },\n \"LanguageTag\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LanguageTag\"\n },\n \"LiveStream\": - {\n \"properties\": {\n \"cdn\": {\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\",\n \"$ref\": \"CdnSettings\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the stream.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveStream\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"type\": \"string\"\n },\n \"contentDetails\": {\n - \ \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\",\n \"$ref\": - \"LiveStreamContentDetails\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"status\": {\n \"$ref\": - \"LiveStreamStatus\",\n \"description\": \"The status object contains - information about live stream's status.\"\n }\n },\n \"id\": - \"LiveStream\",\n \"description\": \"A live stream describes a live ingestion - point.\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsLike\": - {\n \"description\": \"Information about a resource that received a positive - (like) rating.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsLike\"\n },\n - \ \"ChannelConversionPing\": {\n \"type\": \"object\",\n \"id\": - \"ChannelConversionPing\",\n \"properties\": {\n \"conversionUrl\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"context\": {\n \"description\": - \"Defines the context of the ping.\",\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"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.\"\n },\n \"VideoPlayer\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"embedHeight\": {\n \"format\": - \"int64\",\n \"type\": \"string\"\n },\n \"embedHtml\": - {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a - player that will play the video.\",\n \"type\": \"string\"\n },\n - \ \"embedWidth\": {\n \"type\": \"string\",\n \"format\": - \"int64\",\n \"description\": \"The embed width\"\n }\n },\n - \ \"description\": \"Player to be used for a video playback.\",\n \"id\": - \"VideoPlayer\"\n },\n \"InvideoTiming\": {\n \"properties\": {\n - \ \"durationMs\": {\n \"format\": \"uint64\",\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"type\": \"string\"\n - \ },\n \"offsetMs\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"Defines the time at which the promotion - will appear. Depending on the value of type the value of the offsetMs field - will represent a time offset from the start or from the end of the video, - expressed in milliseconds.\"\n },\n \"type\": {\n \"description\": - \"Describes a timing type. If the value is offsetFromStart, then the offsetMs - field represents an offset from the start of the video. If the value is offsetFromEnd, - then the offsetMs field represents an offset from the end of the video.\",\n - \ \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n }\n },\n - \ \"id\": \"InvideoTiming\",\n \"type\": \"object\",\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\"\n },\n - \ \"PlaylistLocalization\": {\n \"id\": \"PlaylistLocalization\",\n - \ \"properties\": {\n \"description\": {\n \"description\": - \"The localized strings for playlist's description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - localized strings for playlist's title.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Playlist localization setting\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"description\": \"Information that identifies the recommended resource.\",\n - \ \"id\": \"ActivityContentDetailsRecommendation\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\",\n \"$ref\": \"ResourceId\"\n },\n \"reason\": - {\n \"enum\": [\n \"reasonUnspecified\",\n \"videoFavorited\",\n - \ \"videoLiked\",\n \"videoWatched\"\n ],\n - \ \"description\": \"The reason that the resource is recommended to - the user.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"seedResourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\"\n }\n }\n - \ },\n \"LiveChatMessage\": {\n \"properties\": {\n \"authorDetails\": - {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n \"description\": - \"The authorDetails object contains basic details about the user that posted - this message.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the message.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatMessage\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the message.\",\n \"$ref\": - \"LiveChatMessageSnippet\"\n }\n },\n \"id\": \"LiveChatMessage\",\n - \ \"description\": \"A *liveChatMessage* resource represents a chat message - in a YouTube Live Chat.\",\n \"type\": \"object\"\n },\n \"PlaylistItemSnippet\": - {\n \"id\": \"PlaylistItemSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"publishedAt\": {\n \"description\": \"The date and time - that the item was added to the playlist.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"title\": {\n \"description\": - \"The item's title.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the user that added the item to the playlist.\",\n \"type\": \"string\"\n - \ },\n \"videoOwnerChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel id for the channel this video belongs - to.\"\n },\n \"playlistId\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify thGe playlist that the playlist - item is in.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The id object contains information that can be - used to uniquely identify the resource that is included in the playlist as - the playlist item.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n }\n },\n \"videoOwnerChannelTitle\": + \ }\n },\n \"type\": \"object\"\n },\n \"PlaylistItemSnippet\": + {\n \"id\": \"PlaylistItemSnippet\",\n \"type\": \"object\",\n \"description\": + \"Basic details about a playlist, including title, description and thumbnails. + Basic details of a YouTube Playlist item provided by the author. Next ID: + 15\",\n \"properties\": {\n \"publishedAt\": {\n \"description\": + \"The date and time that the item was added to the playlist.\",\n \"format\": + \"date-time\",\n \"type\": \"string\"\n },\n \"videoOwnerChannelTitle\": {\n \"description\": \"Channel title for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"position\": - {\n \"description\": \"The order in which the item appears in the - playlist. The value uses a zero-based index, so the first item has a position - of 0, the second item has a position of 1, and so forth.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The item's - description.\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the playlist item belongs to.\"\n },\n \"thumbnails\": {\n \"$ref\": + to.\",\n \"type\": \"string\"\n },\n \"title\": {\n + \ \"description\": \"The item's title.\",\n \"type\": \"string\"\n + \ },\n \"resourceId\": {\n \"description\": \"The id + object contains information that can be used to uniquely identify the resource + that is included in the playlist as the playlist item.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.playlistItems.insert\",\n + \ \"youtube.playlistItems.update\"\n ]\n },\n + \ \"$ref\": \"ResourceId\"\n },\n \"description\": {\n + \ \"type\": \"string\",\n \"description\": \"The item's description.\"\n + \ },\n \"channelTitle\": {\n \"description\": \"Channel + title for the channel that the playlist item belongs to.\",\n \"type\": + \"string\"\n },\n \"videoOwnerChannelId\": {\n \"type\": + \"string\",\n \"description\": \"Channel id for the channel this + video belongs to.\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images associated with the playlist item. 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.\"\n }\n },\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails. - Basic details of a YouTube Playlist item provided by the author. Next ID: - 15\"\n },\n \"CommentThreadListResponse\": {\n \"id\": \"CommentThreadListResponse\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"description\": \"A list of comment threads - that match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"CommentThread\"\n }\n },\n \"etag\": + other information about the thumbnail.\"\n },\n \"playlistId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + thGe playlist that the playlist item is in.\",\n \"annotations\": + {\n \"required\": [\n \"youtube.playlistItems.insert\",\n + \ \"youtube.playlistItems.update\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": + \"The ID that YouTube uses to uniquely identify the user that added the item + to the playlist.\",\n \"type\": \"string\"\n },\n \"position\": + {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": + \"The order in which the item appears in the playlist. The value uses a zero-based + index, so the first item has a position of 0, the second item has a position + of 1, and so forth.\"\n }\n }\n },\n \"LiveBroadcast\": + {\n \"type\": \"object\",\n \"description\": \"A *liveBroadcast* + resource represents an event that will be streamed, via live video, on YouTube.\",\n + \ \"id\": \"LiveBroadcast\",\n \"properties\": {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n \"default\": - \"youtube#commentThreadListResponse\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoStatistics\": {\n \"properties\": {\n - \ \"commentCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of comments for the video.\"\n - \ },\n \"dislikeCount\": {\n \"description\": \"The - number of users who have indicated that they disliked the video by giving - it a negative rating.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"viewCount\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of times the video has been viewed.\",\n - \ \"format\": \"uint64\"\n },\n \"likeCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of users who have indicated - that they liked the video by giving it a positive rating.\",\n \"type\": - \"string\"\n },\n \"favoriteCount\": {\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoStatistics\",\n \"description\": \"Statistics - about the video, such as the number of times the video was viewed or liked.\",\n - \ \"type\": \"object\"\n },\n \"LocalizedString\": {\n \"id\": - \"LocalizedString\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n },\n \"language\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ContentRating\": - {\n \"id\": \"ContentRating\",\n \"properties\": {\n \"eirinRating\": - {\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Eirin (\u6620\u502B) - rating. Eirin is the Japanese rating system.\"\n },\n \"russiaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"description\": \"The video's National Film Registry - of the Russian Federation (MKRF - Russia) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"fpbRatingReasons\": {\n \"type\": \"array\",\n - \ \"description\": \"Reasons that explain why the video received its - FPB (South Africa) rating.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ],\n \"type\": - \"string\"\n }\n },\n \"ilfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Israel.\"\n - \ },\n \"bfvcRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Thailand's Board of Film - and Video Censors.\"\n },\n \"eefilmRating\": {\n \"description\": - \"The video's rating in Estonia.\",\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n - \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n - \ \"K-16\",\n \"\"\n ]\n },\n \"pefilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Peru.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ]\n },\n - \ \"kfcbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"GE\",\n \"PG\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"kfcbUnspecified\",\n - \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n - \ \"kfcbR\",\n \"kfcbUnrated\"\n ],\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"type\": - \"string\"\n },\n \"mibacRating\": {\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\",\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"contentDetails\": {\n \"description\": + \"The contentDetails object contains information about the event's video content, + such as whether the content can be shown in an embedded video player or if + it will be archived and therefore available for viewing after the event has + concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the event, including its title, description, start time, + and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n },\n + \ \"statistics\": {\n \"description\": \"The statistics object + contains info about the event's current stats. These include concurrent viewers + and total chat count. Statistics can change (in either direction) during the + lifetime of an event. Statistics are only returned while the event is live.\",\n + \ \"$ref\": \"LiveBroadcastStatistics\"\n },\n \"id\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"The ID that YouTube + assigns to uniquely identify the broadcast.\",\n \"type\": \"string\"\n + \ },\n \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n + \ \"description\": \"The status object contains information about + the event's status.\"\n },\n \"kind\": {\n \"default\": + \"youtube#liveBroadcast\",\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n + \ \"type\": \"string\"\n }\n }\n },\n \"ResourceId\": + {\n \"description\": \"A resource id is a generic reference that points + to another YouTube resource.\",\n \"id\": \"ResourceId\",\n \"type\": + \"object\",\n \"properties\": {\n \"videoId\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the referred resource, if that resource is a video. This property + is only present if the resourceId.kind value is youtube#video.\"\n },\n + \ \"playlistId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the referred resource, if + that resource is a playlist. This property is only present if the resourceId.kind + value is youtube#playlist.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"description\": \"The type of the API resource.\"\n + \ },\n \"channelId\": {\n \"description\": \"The ID + that YouTube uses to uniquely identify the referred resource, if that resource + is a channel. This property is only present if the resourceId.kind value is + youtube#channel.\",\n \"type\": \"string\"\n }\n }\n + \ },\n \"PlaylistListResponse\": {\n \"type\": \"object\",\n \"properties\": + {\n \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"items\": + {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"Playlist\"\n },\n \"description\": \"A list of playlists + that match the request criteria\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n + \ \"default\": \"youtube#playlistListResponse\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ }\n },\n \"id\": \"PlaylistListResponse\"\n },\n \"AbuseType\": + {\n \"id\": \"AbuseType\",\n \"type\": \"object\",\n \"properties\": + {\n \"id\": {\n \"type\": \"string\"\n }\n }\n + \ },\n \"IngestionInfo\": {\n \"description\": \"Describes information + necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"type\": + \"object\",\n \"properties\": {\n \"rtmpsIngestionAddress\": {\n + \ \"description\": \"This ingestion url may be used instead of ingestionAddress + in order to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": + \"string\"\n },\n \"backupIngestionAddress\": {\n \"description\": + \"The backup ingestion URL that you should use to stream video to YouTube. + You have the option of simultaneously streaming the content that you are sending + to the ingestionAddress to this URL.\",\n \"type\": \"string\"\n + \ },\n \"streamName\": {\n \"type\": \"string\",\n \"description\": + \"The stream name that YouTube assigns to the video stream.\"\n },\n + \ \"rtmpsBackupIngestionAddress\": {\n \"description\": \"This + ingestion url may be used instead of backupIngestionAddress in order to stream + via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n + \ },\n \"ingestionAddress\": {\n \"type\": \"string\",\n + \ \"description\": \"The primary ingestion URL that you should use + to stream video to YouTube. You must stream video to this URL. Depending on + which application or tool you use to encode your video stream, you may need + to enter the stream URL and stream name separately or you may need to concatenate + them in the following format: *STREAM_URL/STREAM_NAME* \"\n }\n },\n + \ \"id\": \"IngestionInfo\"\n },\n \"LiveChatModeratorListResponse\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorListResponse\",\n + \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"Etag of this resource.\"\n },\n \"pageInfo\": + {\n \"description\": \"General pagination information.\",\n \"$ref\": + \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": + \"TokenPagination\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"prevPageToken\": {\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": + {\n \"default\": \"youtube#liveChatModeratorListResponse\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n + \ },\n \"nextPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\",\n \"type\": \"string\"\n },\n + \ \"items\": {\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": + \"A list of moderators that match the request criteria.\"\n }\n }\n + \ },\n \"ChannelStatus\": {\n \"properties\": {\n \"privacyStatus\": + {\n \"description\": \"Privacy status of the channel.\",\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"bbfcRating\": {\n \"description\": \"The video's British - Board of Film Classification (BBFC) rating.\",\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ]\n - \ },\n \"mocRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"description\": \"The video's Ministerio de Cultura - (Colombia) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"T\",\n \"7\",\n \"12\",\n - \ \"15\",\n \"18\",\n \"X\",\n \"Banned\",\n - \ \"\"\n ]\n },\n \"mccypRating\": {\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ]\n },\n \"fpbRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\"\n },\n \"cicfRating\": {\n \"enum\": - [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Commission - de Contr\xF4le des Films (Belgium).\",\n \"enumDescriptions\": [\n - \ \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ]\n },\n \"kijkwijzerRating\": {\n - \ \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating - from the Nederlands Instituut voor de Classificatie van Audiovisuele Media - (Netherlands).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ]\n },\n \"kmrbRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"enum\": - [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"description\": \"The - video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\"\n },\n \"nfvcbRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"18\",\n \"RE\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Nigeria's - National Film and Video Censors Board.\",\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ]\n },\n - \ \"csaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"Interdiction\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ],\n \"description\": \"The video's rating from France's - Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\"\n - \ },\n \"acbRating\": {\n \"enum\": [\n \"acbUnspecified\",\n - \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n - \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n - \ \"acbR18plus\",\n \"acbUnrated\"\n ],\n \"description\": - \"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.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"Programs that have been given a P classification - by the Australian Communications and Media Authority. These programs are intended - for preschool children.\",\n \"Programs that have been given a - C classification by the Australian Communications and Media Authority. These - programs are intended for children (other than preschool children) who are - younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"lsfRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"enum\": - [\n \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ]\n },\n \"fskRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"description\": \"The - video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.\",\n - \ \"type\": \"string\"\n },\n \"mccaaRating\": {\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ]\n },\n \"chfilmRating\": {\n \"enum\": - [\n \"chfilmUnspecified\",\n \"chfilm0\",\n \"chfilm6\",\n - \ \"chfilm12\",\n \"chfilm16\",\n \"chfilm18\",\n - \ \"chfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Switzerland.\",\n \"type\": - \"string\"\n },\n \"smaisRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ]\n },\n \"cccRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ]\n },\n - \ \"cbfcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"U/A\",\n \"U/A 7+\",\n \"U/A - 13+\",\n \"U/A 16+\",\n \"A\",\n \"S\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"description\": \"The video's Central Board of Film - Certification (CBFC - India) rating.\"\n },\n \"nbcplRating\": - {\n \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n - \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n - \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's rating in Poland.\"\n },\n \"fmocRating\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"E\",\n \"\"\n ],\n - \ \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ],\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\"\n },\n \"anatelRating\": - {\n \"description\": \"The video's Anatel (Asociaci\xF3n Nacional - de Televisi\xF3n) rating for Chilean television.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ],\n \"enum\": - [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ]\n },\n \"moctwRating\": {\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ],\n \"enum\": - [\n \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n - \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n - \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"type\": - \"string\"\n },\n \"mdaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mdaUnspecified\",\n - \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n - \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n - \ \"mdaUnrated\"\n ],\n \"description\": \"The - video's rating from Singapore's Media Development Authority (MDA) and, specifically, - it's Board of Film Censors (BFC).\"\n },\n \"cncRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Rating system - in France - Commission de classification cinematographique\",\n \"enum\": - [\n \"cncUnspecified\",\n \"cncT\",\n \"cnc10\",\n - \ \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n \"cncE\",\n - \ \"cncInterdiction\",\n \"cncUnrated\"\n ]\n - \ },\n \"incaaRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"ATP (Apta - para todo publico)\",\n \"13 (Solo apta para mayores de 13 a\xF1os)\",\n - \ \"16 (Solo apta para mayores de 16 a\xF1os)\",\n \"18 - (Solo apta para mayores de 18 a\xF1os)\",\n \"X (Solo apta para - mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n \"\"\n - \ ],\n \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n - \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n - \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"description\": - \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\"\n },\n \"rcnofRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\",\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ]\n },\n \"djctqRating\": - {\n \"description\": \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, - Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enum\": - [\n \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n - \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n - \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n - \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n - \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n - \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n - \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n - \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"mcstRating\": {\n \"description\": - \"The video's rating system for Vietnam - MCST\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ]\n },\n \"mpaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"description\": \"The video's Motion Picture Association - of America (MPAA) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ]\n },\n - \ \"resorteviolenciaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ],\n \"description\": - \"The video's rating in Venezuela.\",\n \"type\": \"string\",\n \"enum\": - [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ]\n },\n \"ytRating\": {\n \"type\": \"string\",\n - \ \"description\": \"A rating that YouTube uses to identify age-restricted - content.\",\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"nmcRating\": {\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\",\n - \ \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ]\n - \ },\n \"ecbmctRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n - \ \"ecbmct7a\",\n \"ecbmct7plus\",\n \"ecbmct13a\",\n - \ \"ecbmct13plus\",\n \"ecbmct15a\",\n \"ecbmct15plus\",\n - \ \"ecbmct18plus\",\n \"ecbmctUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ],\n \"description\": \"Rating system in Turkey - Evaluation - and Classification Board of the Ministry of Culture and Tourism\"\n },\n - \ \"skfilmRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ],\n \"enum\": [\n - \ \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n - \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Slovakia.\"\n - \ },\n \"medietilsynetRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Medietilsynet, the Norwegian - Media Authority.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ]\n },\n \"czfilmRating\": {\n \"enum\": - [\n \"czfilmUnspecified\",\n \"czfilmU\",\n \"czfilm12\",\n - \ \"czfilm14\",\n \"czfilm18\",\n \"czfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in the Czech Republic.\"\n },\n \"grfilmRating\": - {\n \"description\": \"The video's rating in Greece.\",\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n - \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n - \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n - \ ]\n },\n \"nfrcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"nfrcUnspecified\",\n \"nfrcA\",\n - \ \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n - \ \"nfrcUnrated\"\n ],\n \"description\": \"The - video's rating from the Bulgarian National Film Center.\"\n },\n \"mtrcbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n - \ \"X\",\n \"\"\n ],\n \"enum\": [\n - \ \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n - \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n - \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Movie - and Television Review and Classification Board (Philippines).\"\n },\n - \ \"djctqRatingReasons\": {\n \"description\": \"Reasons that - explain why the video received its DJCQT (Brazil) rating.\",\n \"type\": - \"array\",\n \"items\": {\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ]\n }\n },\n - \ \"fcbmRating\": {\n \"enum\": [\n \"fcbmUnspecified\",\n - \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n - \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n - \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Malaysia's - Film Censorship Board.\",\n \"type\": \"string\"\n },\n \"mekuRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual - Institute).\",\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"rteRating\": {\n \"enum\": - [\n \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"description\": \"The video's rating from Ireland's - Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ]\n },\n \"tvpgRating\": - {\n \"description\": \"The video's TV Parental Guidelines (TVPG) - rating.\",\n \"type\": \"string\",\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ]\n },\n \"egfilmRating\": {\n \"description\": - \"The video's rating in Egypt.\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"agcomRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"agcomUnspecified\",\n \"agcomT\",\n \"agcomVm14\",\n - \ \"agcomVm18\",\n \"agcomUnrated\"\n ],\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\",\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ]\n - \ },\n \"cscfRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Luxembourg's Commission de surveillance de la classification des films - (CSCF).\",\n \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ]\n },\n \"ifcoRating\": {\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n - \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n - \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n - \ \"ifco18\",\n \"ifcoUnrated\"\n ]\n },\n - \ \"nbcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12+\",\n \"15+\",\n - \ \"18+\",\n \"18+R\",\n \"PU\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Maldives - National Bureau of Classification.\",\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"fcoRating\": {\n \"enum\": [\n - \ \"fcoUnspecified\",\n \"fcoI\",\n \"fcoIia\",\n - \ \"fcoIib\",\n \"fcoIi\",\n \"fcoIii\",\n - \ \"fcoUnrated\"\n ],\n \"description\": \"The - video's rating from Hong Kong's Office for Film, Newspaper and Article Administration.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"I\",\n \"IIA\",\n \"IIB\",\n \"II\",\n - \ \"III\",\n \"\"\n ]\n },\n \"rtcRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"A\",\n \"B\",\n \"B15\",\n - \ \"C\",\n \"D\",\n \"\"\n ],\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\",\n \"enum\": [\n \"rtcUnspecified\",\n - \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n - \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n - \ ]\n },\n \"icaaRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"enum\": - [\n \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n - \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n - \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ]\n },\n - \ \"oflcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"M\",\n \"R13\",\n - \ \"R15\",\n \"R16\",\n \"R18\",\n \"\",\n - \ \"RP13\",\n \"RP16\",\n \"RP18\"\n ],\n - \ \"description\": \"The video's Office of Film and Literature Classification - (OFLC - New Zealand) rating.\",\n \"enum\": [\n \"oflcUnspecified\",\n - \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n - \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n - \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n - \ \"oflcRp16\",\n \"oflcRp18\"\n ],\n \"type\": - \"string\"\n },\n \"catvfrRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"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.\"\n },\n \"cnaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"type\": - \"string\",\n \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ]\n },\n \"catvRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"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.\"\n },\n \"menaMpaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To - keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n - \ \"enum\": [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n - \ \"menaMpaaPg\",\n \"menaMpaaPg13\",\n \"menaMpaaR\",\n - \ \"menaMpaaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\"\n },\n \"bmukkRating\": {\n \"enum\": - [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n \"bmukk6\",\n - \ \"bmukk8\",\n \"bmukk10\",\n \"bmukk12\",\n - \ \"bmukk14\",\n \"bmukk16\",\n \"bmukkUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\"\n },\n \"chvrsRating\": - {\n \"description\": \"The video's Canadian Home Video Rating System - (CHVRS) rating.\",\n \"enum\": [\n \"chvrsUnspecified\",\n - \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n - \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n - \ \"chvrsUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"cceRating\": - {\n \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"description\": \"The video's rating from Portugal's - Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\"\n },\n \"smsaRating\": - {\n \"description\": \"The video's rating from Statens medier\xE5d - (Sweden's National Media Council).\",\n \"enumDescriptions\": [\n - \ \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ]\n },\n \"mpaatRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n - \ ],\n \"description\": \"The rating system for trailer, - DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n - \ },\n \"nkclvRating\": {\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Nacion\xE3lais Kino centrs (National Film Centre - of Latvia).\"\n }\n },\n \"description\": \"Ratings schemes. - The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n - \ \"type\": \"object\"\n },\n \"ChannelSettings\": {\n \"description\": - \"Branding properties for the channel view.\",\n \"properties\": {\n - \ \"profileColor\": {\n \"description\": \"A prominent color - that can be rendered on this channel page.\",\n \"type\": \"string\"\n - \ },\n \"keywords\": {\n \"type\": \"string\",\n \"description\": - \"Lists keywords associated with the channel, comma-separated.\"\n },\n - \ \"featuredChannelsTitle\": {\n \"description\": \"Title for - the featured channels tab.\",\n \"type\": \"string\"\n },\n - \ \"trackingAnalyticsAccountId\": {\n \"description\": \"The - ID for a Google Analytics account to track and measure traffic to the channels.\",\n - \ \"type\": \"string\"\n },\n \"moderateComments\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - user-submitted comments left on the channel page need to be approved by the - channel owner to be publicly visible.\"\n },\n \"featuredChannelsUrls\": - {\n \"description\": \"The list of featured channels.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"unsubscribedTrailer\": {\n \"type\": \"string\",\n - \ \"description\": \"The trailer of the channel, for users that are - not subscribers.\"\n },\n \"description\": {\n \"description\": - \"Specifies the channel description.\",\n \"type\": \"string\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\"\n - \ },\n \"showRelatedChannels\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether related channels should be proposed.\"\n - \ },\n \"title\": {\n \"description\": \"Specifies the - channel title.\",\n \"type\": \"string\"\n },\n \"country\": - {\n \"type\": \"string\",\n \"description\": \"The country - of the channel.\"\n },\n \"defaultTab\": {\n \"description\": - \"Which content tab users should see when viewing the channel.\",\n \"type\": - \"string\"\n },\n \"showBrowseView\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the tab to browse the videos - should be displayed.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelSettings\"\n },\n \"ChannelStatus\": {\n \"description\": - \"JSON template for the status part of a channel.\",\n \"type\": \"object\",\n - \ \"id\": \"ChannelStatus\",\n \"properties\": {\n \"longUploadsStatus\": - {\n \"type\": \"string\",\n \"description\": \"The long - uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"madeForKids\": {\n - \ \"type\": \"boolean\"\n },\n \"privacyStatus\": {\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"Privacy - status of the channel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n + \ \"\"\n ],\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ]\n },\n + \ \"longUploadsStatus\": {\n \"enum\": [\n \"longUploadsUnspecified\",\n + \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The long uploads status of this channel. See + https://support.google.com/youtube/answer/71673 for more information.\"\n + \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n + \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n \ },\n \"isLinked\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ }\n }\n },\n \"LiveChatModerator\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatModerator\",\n \"description\": - \"A *liveChatModerator* resource represents a moderator for a YouTube live - chat. A chat moderator has the ability to ban/unban users from a chat, remove - message, etc.\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the moderator.\",\n \"$ref\": - \"LiveChatModeratorSnippet\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatModerator\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ActivitySnippet\": {\n \"properties\": {\n \"type\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of activity that the resource describes.\",\n - \ \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n - \ \"like\",\n \"favorite\",\n \"comment\",\n - \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n - \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ]\n },\n \"title\": - {\n \"description\": \"The title of the resource primarily associated - with the activity.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the video was uploaded.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel associated with the activity.\",\n \"type\": - \"string\"\n },\n \"groupId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the resource primarily associated with the activity. @mutable youtube.activities.insert\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel responsible for - this activity\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"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.\"\n - \ }\n },\n \"id\": \"ActivitySnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\"\n },\n - \ \"ActivityContentDetailsSubscription\": {\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that the user subscribed to.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"type\": \"object\",\n \"description\": \"Information about a - channel that a user subscribed to.\"\n },\n \"LiveChatSuperStickerDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatSuperStickerDetails\",\n - \ \"properties\": {\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n },\n - \ \"tier\": {\n \"description\": \"The tier in which the amount - belongs. Lower amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made.\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n }\n }\n },\n \"Thumbnail\": - {\n \"properties\": {\n \"width\": {\n \"format\": \"uint32\",\n - \ \"description\": \"(Optional) Width of the thumbnail image.\",\n - \ \"type\": \"integer\"\n },\n \"url\": {\n \"description\": - \"The thumbnail image's URL.\",\n \"type\": \"string\"\n },\n - \ \"height\": {\n \"format\": \"uint32\",\n \"description\": - \"(Optional) Height of the thumbnail image.\",\n \"type\": \"integer\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Thumbnail\",\n - \ \"description\": \"A thumbnail is an image representing a YouTube resource.\"\n - \ },\n \"VideoFileDetailsAudioStream\": {\n \"id\": \"VideoFileDetailsAudioStream\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"vendor\": - {\n \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\",\n \"type\": - \"string\"\n },\n \"bitrateBps\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The audio stream's - bitrate, in bits per second.\"\n },\n \"codec\": {\n \"type\": - \"string\",\n \"description\": \"The audio codec that the stream - uses.\"\n },\n \"channelCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The number - of audio channels that the stream contains.\"\n }\n },\n \"description\": - \"Information about an audio stream.\"\n },\n \"PlaylistSnippet\": {\n - \ \"properties\": {\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the playlist was created.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"channelTitle\": {\n - \ \"description\": \"The channel title of the channel that the video - belongs to.\",\n \"type\": \"string\"\n },\n \"thumbnailVideoId\": - {\n \"description\": \"Note: if the playlist has a custom thumbnail, - this field will not be populated. The video id selected by the user that will - be used as the thumbnail of this playlist. This field defaults to the first - publicly viewable video in the playlist, if: 1. The user has never selected - a video to be the thumbnail of the playlist. 2. The user selects a video to - be the thumbnail, and then removes that video from the playlist. 3. The user - selects a non-owned video to be the thumbnail, but that video becomes private, - or gets deleted.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The playlist's - description.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that published the playlist.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the playlist's default title - and description.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The playlist's - title.\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"tags\": {\n \"type\": \"array\",\n \"description\": - \"Keyword tags associated with the playlist.\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about a playlist, including - title, description and thumbnails.\",\n \"id\": \"PlaylistSnippet\"\n - \ },\n \"VideoContentDetails\": {\n \"properties\": {\n \"projection\": - {\n \"description\": \"Specifies the projection format of the video.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ]\n },\n \"dimension\": {\n \"type\": - \"string\",\n \"description\": \"The value of dimension indicates - whether the video is available in 3D or in 2D.\"\n },\n \"licensedContent\": - {\n \"description\": \"The value of is_license_content indicates - whether the video is licensed content.\",\n \"type\": \"boolean\"\n - \ },\n \"hasCustomThumbnail\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether the video uploader has provided - a custom thumbnail image for the video. This property is only visible to the - video uploader.\"\n },\n \"caption\": {\n \"type\": - \"string\",\n \"description\": \"The value of captions indicates - whether the video has captions or not.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"true\",\n \"false\"\n ]\n },\n - \ \"definition\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"sd\",\n \"hd\"\n ],\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\",\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ]\n },\n \"contentRating\": {\n - \ \"$ref\": \"ContentRating\",\n \"description\": \"Specifies - the ratings that the video received under various rating schemes.\"\n },\n - \ \"regionRestriction\": {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\"\n },\n \"duration\": - {\n \"type\": \"string\",\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"countryRestriction\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\"\n }\n - \ },\n \"description\": \"Details about the content of a YouTube - Video.\",\n \"id\": \"VideoContentDetails\",\n \"type\": \"object\"\n - \ },\n \"AbuseType\": {\n \"type\": \"object\",\n \"id\": \"AbuseType\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"ThumbnailDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"Internal representation of thumbnails for a YouTube - resource.\",\n \"id\": \"ThumbnailDetails\",\n \"properties\": {\n - \ \"medium\": {\n \"description\": \"The medium quality image - for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"default\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The default - image for this resource.\"\n },\n \"standard\": {\n \"description\": - \"The standard quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"maxres\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The maximum resolution quality image for this resource.\"\n },\n - \ \"high\": {\n \"description\": \"The high quality image for - this resource.\",\n \"$ref\": \"Thumbnail\"\n }\n }\n - \ },\n \"PlaylistStatus\": {\n \"id\": \"PlaylistStatus\",\n \"type\": - \"object\",\n \"properties\": {\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The playlist's - privacy status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n }\n }\n },\n \"LiveBroadcastStatistics\": - {\n \"type\": \"object\",\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"properties\": {\n \"totalChatCount\": {\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"concurrentViewers\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\"\n }\n },\n \"description\": \"Statistics - about the live broadcast. These represent a snapshot of the values at the - time of the request. Statistics are only returned for live broadcasts.\"\n - \ },\n \"VideoFileDetails\": {\n \"description\": \"Describes original - video file properties, including technical details about audio and video streams, - but also metadata information like content length, digitization time, or geotagging - information.\",\n \"type\": \"object\",\n \"properties\": {\n \"creationTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the uploaded video file was created. The value is specified - in ISO 8601 format. Currently, the following ISO 8601 formats are supported: - - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: - YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"fileSize\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\"\n },\n \"fileName\": - {\n \"type\": \"string\",\n \"description\": \"The uploaded - file's name. This field is present whether a video file or another type of - file was uploaded.\"\n },\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"description\": \"The uploaded video file's combined - (video and audio) bitrate in bits per second.\",\n \"type\": \"string\"\n - \ },\n \"container\": {\n \"description\": \"The uploaded - video file's container format.\",\n \"type\": \"string\"\n },\n - \ \"durationMs\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The length of the uploaded video - in milliseconds.\"\n },\n \"audioStreams\": {\n \"items\": - {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of audio streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about an audio stream.\"\n },\n \"videoStreams\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"description\": \"A list of video streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about a video stream.\"\n },\n \"fileType\": {\n \"enum\": - [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"type\": \"string\",\n \"description\": - \"The uploaded file's type as detected by YouTube's video processing engine. - Currently, YouTube only processes video files, but this field is present whether - a video file or another type of file was uploaded.\",\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ]\n }\n },\n \"id\": \"VideoFileDetails\"\n - \ },\n \"LiveBroadcastSnippet\": {\n \"properties\": {\n \"actualEndTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast actually ended. This information is only available - once the broadcast's state is complete.\",\n \"format\": \"date-time\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's description. As with the title, - you can set this field by modifying the broadcast resource or by setting the - description field of the corresponding video resource.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the broadcast. For each nested object in this object, the key is the name - of the thumbnail image, and the value is an object that contains other information - about the thumbnail.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - was added to YouTube's live broadcast schedule.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that is publishing the broadcast.\"\n - \ },\n \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\",\n \"type\": \"string\"\n - \ },\n \"actualStartTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the broadcast actually started. This information is only available - once the broadcast's state is live.\"\n },\n \"scheduledStartTime\": - {\n \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"isDefaultBroadcast\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether this broadcast - is the default broadcast. Internal only.\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the live chat for this broadcast.\"\n },\n \"scheduledEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to end.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveBroadcastSnippet\",\n \"description\": \"Basic broadcast information.\"\n - \ },\n \"CommentSnippet\": {\n \"description\": \"Basic details - about a comment, such as its author and text.\",\n \"type\": \"object\",\n - \ \"id\": \"CommentSnippet\",\n \"properties\": {\n \"textOriginal\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"authorChannelId\": {\n - \ \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"moderationStatus\": - {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"type\": - \"string\",\n \"description\": \"The comment's moderation status. - Will not be set if the comments were requested through the id filter.\",\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by a - moderator.\",\n \"\",\n \"The comment is unfit for display.\"\n - \ ]\n },\n \"canRate\": {\n \"description\": - \"Whether the current viewer can rate this comment.\",\n \"type\": - \"boolean\"\n },\n \"updatedAt\": {\n \"description\": - \"The date and time when the comment was last updated.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"viewerRating\": - {\n \"description\": \"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.\",\n \"enum\": [\n - \ \"none\",\n \"like\",\n \"dislike\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"The entity - is liked.\",\n \"The entity is disliked.\"\n ],\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comment refers to, if any.\",\n \"type\": - \"string\"\n },\n \"authorDisplayName\": {\n \"description\": - \"The name of the user who posted the comment.\",\n \"type\": \"string\"\n - \ },\n \"textDisplay\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"likeCount\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total number of likes this comment has received.\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"parentId\": {\n \"type\": \"string\",\n - \ \"description\": \"The unique id of the parent comment, only set - for replies.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the comment was originally published.\"\n },\n - \ \"authorChannelUrl\": {\n \"description\": \"Link to the - author's YouTube channel, if any.\",\n \"type\": \"string\"\n },\n - \ \"authorProfileImageUrl\": {\n \"description\": \"The URL - for the avatar of the user who posted the comment.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelBrandingSettings\": {\n - \ \"properties\": {\n \"channel\": {\n \"$ref\": \"ChannelSettings\",\n - \ \"description\": \"Branding properties for the channel view.\"\n - \ },\n \"hints\": {\n \"items\": {\n \"$ref\": - \"PropertyValue\"\n },\n \"type\": \"array\",\n \"description\": - \"Additional experimental branding properties.\"\n },\n \"watch\": - {\n \"description\": \"Branding properties for the watch page.\",\n - \ \"$ref\": \"WatchSettings\"\n },\n \"image\": {\n - \ \"description\": \"Branding properties for branding images.\",\n - \ \"$ref\": \"ImageSettings\"\n }\n },\n \"description\": - \"Branding properties of a YouTube channel.\",\n \"id\": \"ChannelBrandingSettings\",\n - \ \"type\": \"object\"\n },\n \"CommentThread\": {\n \"id\": - \"CommentThread\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentThread\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\"\n },\n - \ \"replies\": {\n \"description\": \"The replies object contains - a limited number of replies (if any) to the top level comment found in the - snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"CommentThreadSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment thread and also the top level comment.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"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.\"\n },\n - \ \"ChannelProfileDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The channel's display name.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube channel ID.\"\n },\n - \ \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channels's avatar URL.\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ChannelProfileDetails\"\n },\n \"ChannelSectionContentDetails\": - {\n \"type\": \"object\",\n \"description\": \"Details about a channelsection, - including playlists and channels.\",\n \"id\": \"ChannelSectionContentDetails\",\n - \ \"properties\": {\n \"channels\": {\n \"type\": \"array\",\n - \ \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"playlists\": {\n \"type\": \"array\",\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n }\n },\n \"I18nRegionListResponse\": - {\n \"type\": \"object\",\n \"id\": \"I18nRegionListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#i18nRegionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"I18nRegion\"\n },\n - \ \"description\": \"A list of regions where YouTube is available. - In this map, the i18n region ID is the map key, and its value is the corresponding - i18nRegion resource.\",\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"I18nLanguageListResponse\": - {\n \"id\": \"I18nLanguageListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"I18nLanguage\"\n },\n \"description\": \"A list of supported - i18n languages. In this map, the i18n language ID is the map key, and its - value is the corresponding i18nLanguage resource.\"\n }\n }\n - \ },\n \"ChannelListResponse\": {\n \"id\": \"ChannelListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"Channel\"\n },\n - \ \"type\": \"array\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"default\": \"youtube#channelListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ }\n },\n \"MembershipsLevelListResponse\": {\n \"id\": \"MembershipsLevelListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"description\": \"A list of pricing levels offered by a creator - to the fans.\",\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n - \ },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevelListResponse\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ }\n },\n \"LocalizedProperty\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"defaultLanguage\": {\n \"description\": - \"The language of the default property.\",\n \"$ref\": \"LanguageTag\"\n - \ },\n \"localized\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LocalizedString\"\n }\n },\n \"default\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LocalizedProperty\"\n - \ },\n \"PlaylistItem\": {\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the playlist item.\"\n },\n \"snippet\": - {\n \"$ref\": \"PlaylistItemSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"PlaylistItemContentDetails\",\n \"description\": - \"The contentDetails object is included in the resource if the included item - is a YouTube video. The object contains additional information about the video.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n \"default\": - \"youtube#playlistItem\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\",\n \"$ref\": \"PlaylistItemStatus\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"PlaylistItem\",\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\"\n },\n - \ \"VideoAbuseReportReason\": {\n \"type\": \"object\",\n \"id\": - \"VideoAbuseReportReason\",\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReason\"\n },\n \"snippet\": - {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the abuse report reason.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID of this abuse report reason.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n }\n },\n \"ActivityListResponse\": {\n - \ \"id\": \"ActivityListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Activity\"\n }\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#activityListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"VideoTopicDetails\": {\n \"properties\": {\n \"topicCategories\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of Wikipedia - URLs that provide a high-level description of the video's content.\"\n },\n - \ \"relevantTopicIds\": {\n \"description\": \"Similar to topic_id, - except that these topics are merely relevant to the video. These are topics - that may be mentioned in, or appear in the video. You can retrieve information - about each topic using Freebase Topic API.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"topicIds\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of Freebase - topic IDs that are centrally associated with the video. These are topics that - are centrally featured in the video, and it can be said that the video is - mainly about each of these. You can retrieve information about each topic - using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoTopicDetails\",\n \"description\": \"Freebase topic information - related to the video.\"\n },\n \"SubscriptionSnippet\": {\n \"id\": - \"SubscriptionSnippet\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The subscription's - details.\"\n },\n \"resourceId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\"\n },\n \"channelId\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the subscriber's channel.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the subscription belongs to.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the subscription - was created.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"title\": - {\n \"description\": \"The subscription's title.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - a subscription, including title, description and thumbnails of the subscribed - item.\",\n \"type\": \"object\"\n },\n \"VideoProjectDetails\": - {\n \"description\": \"DEPRECATED. b/157517979: This part was never populated - after it was added. However, it sees non-zero traffic because there is generated - client code in the wild that refers to it [1]. We keep this field and do NOT - remove it because otherwise V3 would return an error when this part gets requested - [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"properties\": {},\n \"type\": \"object\",\n \"id\": \"VideoProjectDetails\"\n - \ },\n \"PageInfo\": {\n \"properties\": {\n \"totalResults\": - {\n \"type\": \"integer\",\n \"description\": \"The total - number of results in the result set.\",\n \"format\": \"int32\"\n - \ },\n \"resultsPerPage\": {\n \"description\": \"The - number of results included in the API response.\",\n \"type\": \"integer\",\n + \ }\n },\n \"description\": \"JSON template for the status + part of a channel.\",\n \"id\": \"ChannelStatus\",\n \"type\": \"object\"\n + \ },\n \"PageInfo\": {\n \"properties\": {\n \"resultsPerPage\": + {\n \"format\": \"int32\",\n \"description\": \"The number + of results included in the API response.\",\n \"type\": \"integer\"\n + \ },\n \"totalResults\": {\n \"description\": \"The + total number of results in the result set.\",\n \"type\": \"integer\",\n \ \"format\": \"int32\"\n }\n },\n \"type\": \"object\",\n \ \"description\": \"Paging details for lists of resources, including total number of items available and number of resources returned in a single - page.\",\n \"id\": \"PageInfo\"\n },\n \"GeoPoint\": {\n \"description\": - \"Geographical coordinates of a point, in WGS84.\",\n \"properties\": - {\n \"latitude\": {\n \"format\": \"double\",\n \"type\": - \"number\",\n \"description\": \"Latitude in degrees.\"\n },\n - \ \"altitude\": {\n \"type\": \"number\",\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\",\n \"format\": - \"double\"\n },\n \"longitude\": {\n \"description\": - \"Longitude in degrees.\",\n \"format\": \"double\",\n \"type\": - \"number\"\n }\n },\n \"id\": \"GeoPoint\",\n \"type\": - \"object\"\n },\n \"LevelDetails\": {\n \"id\": \"LevelDetails\",\n - \ \"properties\": {\n \"displayName\": {\n \"description\": - \"The name that should be used when referring to this level.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoStatus\": - {\n \"description\": \"Basic details about a video category, such as - its localized title. Next Id: 18\",\n \"id\": \"VideoStatus\",\n \"type\": - \"object\",\n \"properties\": {\n \"failureReason\": {\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ],\n \"description\": \"This value explains why a video - failed to upload. This property is only present if the uploadStatus property - indicates that the upload failed.\",\n \"enumDescriptions\": [\n - \ \"Unable to convert video content.\",\n \"Invalid file - format.\",\n \"Empty file.\",\n \"File was too small.\",\n - \ \"Unsupported codec.\",\n \"Upload wasn't finished.\"\n - \ ],\n \"type\": \"string\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"license\": {\n \"type\": - \"string\",\n \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ]\n },\n \"embeddable\": {\n \"type\": - \"boolean\",\n \"description\": \"This value indicates if the video - can be embedded on another website. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"uploadStatus\": {\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ],\n \"type\": \"string\",\n \"description\": - \"The status of the uploaded video.\",\n \"enumDescriptions\": [\n - \ \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ]\n },\n \"rejectionReason\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"Copyright - infringement.\",\n \"Inappropriate video content.\",\n \"Duplicate - upload in the same channel.\",\n \"Terms of use violation.\",\n - \ \"Uploader account was suspended.\",\n \"Video duration - was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"description\": \"This value explains why YouTube - rejected an uploaded video. This property is only present if the uploadStatus - property indicates that the upload was rejected.\"\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"publishAt\": - {\n \"description\": \"The date and time when the video is scheduled - to publish. It can be set only if the privacy status of the video is private..\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's privacy status.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\"\n }\n }\n },\n \"Member\": {\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"default\": \"youtube#member\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the member.\",\n \"$ref\": \"MemberSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"description\": \"A - *member* resource represents a member for a YouTube channel. A member provides - recurring monetary support to a creator and receives special benefits.\",\n - \ \"id\": \"Member\",\n \"type\": \"object\"\n },\n \"VideoRating\": - {\n \"description\": \"Basic details about rating of a video.\",\n \"type\": - \"object\",\n \"properties\": {\n \"rating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"description\": \"Rating of a video.\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the video.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoRating\"\n },\n \"Comment\": {\n \"description\": - \"A *comment* represents a single YouTube comment.\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the comment.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#comment\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"Comment\"\n },\n \"LiveChatSuperChatDetails\": {\n \"properties\": - {\n \"userComment\": {\n \"description\": \"The comment added - by the user to this Super Chat event.\",\n \"type\": \"string\"\n - \ },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"description\": \"The amount purchased by the user, in micros (1,750,000 - micros = 1.75).\",\n \"format\": \"uint64\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"tier\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\"\n },\n - \ \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made.\"\n }\n },\n \"id\": - \"LiveChatSuperChatDetails\",\n \"type\": \"object\"\n },\n \"VideoLiveStreamingDetails\": - {\n \"id\": \"VideoLiveStreamingDetails\",\n \"type\": \"object\",\n - \ \"description\": \"Details about the live streaming metadata.\",\n \"properties\": - {\n \"actualEndTime\": {\n \"description\": \"The time that - the broadcast actually ended. This value will not be available until the broadcast - is over.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast is scheduled to end. - If the value is empty or the property is not present, then the broadcast is - scheduled to contiue indefinitely.\",\n \"type\": \"string\"\n },\n - \ \"actualStartTime\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The time that the broadcast actually - started. This value will not be available until the broadcast begins.\"\n - \ },\n \"concurrentViewers\": {\n \"description\": \"The - number of viewers currently watching the broadcast. The property and its value - will be present if the broadcast has current viewers and the broadcast owner - has not hidden the viewcount for the video. Note that YouTube stops tracking - the number of concurrent viewers for a broadcast when the broadcast ends. - So, this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"description\": \"The time that the broadcast is scheduled to - begin.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"activeLiveChatId\": {\n \"description\": \"The - ID of the currently active live chat attached to this video. This field is - filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ThumbnailSetResponse\": {\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"ThumbnailDetails\"\n },\n \"description\": - \"A list of thumbnails.\",\n \"type\": \"array\"\n },\n \"kind\": - {\n \"default\": \"youtube#thumbnailSetResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ThumbnailSetResponse\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The `visitorId` identifies the visitor.\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of valid abuse reasons that are used with - `video.ReportAbuse`.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoAbuseReportReasonListResponse\"\n },\n \"CommentThreadReplies\": - {\n \"id\": \"CommentThreadReplies\",\n \"properties\": {\n \"comments\": - {\n \"description\": \"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.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Comments - written in (direct or indirect) reply to the top level comment.\"\n },\n - \ \"VideoContentDetailsRegionRestriction\": {\n \"properties\": {\n - \ \"blocked\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of region codes that identify - countries where the video is blocked. If this property is present and a country - is not listed in its value, then the video is viewable in that country. If - this property is present and contains an empty list, the video is viewable - in all countries.\",\n \"type\": \"array\"\n },\n \"allowed\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of region - codes that identify countries where the video is viewable. If this property - is present and a country is not listed in its value, then the video is blocked - from appearing in that country. If this property is present and contains an - empty list, the video is blocked in all countries.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"DEPRECATED Region restriction - of the video.\",\n \"id\": \"VideoContentDetailsRegionRestriction\"\n - \ },\n \"VideoSuggestionsTagSuggestion\": {\n \"type\": \"object\",\n - \ \"description\": \"A single tag suggestion with it's relevance information.\",\n - \ \"id\": \"VideoSuggestionsTagSuggestion\",\n \"properties\": {\n - \ \"tag\": {\n \"description\": \"The keyword tag suggested - for the video.\",\n \"type\": \"string\"\n },\n \"categoryRestricts\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A set of video - categories for which the tag is relevant. You can use this information to - display appropriate tag suggestions based on the video category that the video - uploader associates with the video. By default, tag suggestions are relevant - for all categories if there are no restricts defined for the keyword.\"\n - \ }\n }\n },\n \"VideoAbuseReportReasonSnippet\": {\n \"properties\": - {\n \"secondaryReasons\": {\n \"items\": {\n \"$ref\": - \"VideoAbuseReportSecondaryReason\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The secondary reasons associated with this reason, - if any are available. (There might be 0 or more.)\"\n },\n \"label\": - {\n \"description\": \"The localized label belonging to this abuse - report reason.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about a video category, such as its localized title.\",\n - \ \"id\": \"VideoAbuseReportReasonSnippet\",\n \"type\": \"object\"\n - \ },\n \"ChannelContentDetails\": {\n \"type\": \"object\",\n \"description\": - \"Details about the content of a channel.\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"type\": \"object\",\n \"properties\": {\n \"likes\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"watchHistory\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"watchLater\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch later playlist. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"uploads\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s uploaded videos. Use the videos.insert method to - upload new videos and the videos.delete method to delete previously uploaded - videos.\"\n },\n \"favorites\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n }\n }\n - \ }\n },\n \"id\": \"ChannelContentDetails\"\n },\n \"MembershipsLevel\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#membershipsLevel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the memberships level.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"MembershipsLevelSnippet\",\n \"description\": - \"The snippet object contains basic details about the level.\"\n }\n - \ },\n \"description\": \"A *membershipsLevel* resource represents - an offer made by YouTube creators for their fans. Users can become members - of the channel by joining one of the available levels. They will provide recurring - monetary support and receives special benefits.\",\n \"type\": \"object\",\n - \ \"id\": \"MembershipsLevel\"\n },\n \"PlaylistListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of playlists that match the - request criteria\",\n \"items\": {\n \"$ref\": \"Playlist\"\n - \ }\n },\n \"kind\": {\n \"default\": \"youtube#playlistListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n }\n },\n \"id\": - \"PlaylistListResponse\",\n \"type\": \"object\"\n },\n \"VideoCategoryListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n \"default\": - \"youtube#videoCategoryListResponse\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of video categories that can be associated - with YouTube videos. In this map, the video category ID is the map key, and - its value is the corresponding videoCategory resource.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoCategory\"\n - \ }\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoCategoryListResponse\"\n },\n - \ \"InvideoBranding\": {\n \"id\": \"InvideoBranding\",\n \"properties\": - {\n \"timing\": {\n \"description\": \"The temporal position - within the video where watermark will be displayed.\",\n \"$ref\": - \"InvideoTiming\"\n },\n \"position\": {\n \"$ref\": - \"InvideoPosition\",\n \"description\": \"The spatial position within - the video where the branding watermark will be displayed.\"\n },\n - \ \"imageBytes\": {\n \"type\": \"string\",\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"format\": \"byte\"\n },\n \"targetChannelId\": {\n - \ \"description\": \"The channel to which this branding links. If - not present it defaults to the current channel.\",\n \"type\": \"string\"\n - \ },\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The url of the uploaded image. Only used in apiary to api communication.\"\n - \ }\n },\n \"description\": \"LINT.IfChange Describes an invideo - branding.\",\n \"type\": \"object\"\n },\n \"Subscription\": {\n - \ \"id\": \"Subscription\",\n \"properties\": {\n \"subscriberSnippet\": - {\n \"description\": \"The subscriberSnippet object contains basic - details about the subscriber.\",\n \"$ref\": \"SubscriptionSubscriberSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"default\": \"youtube#subscription\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the subscription.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the subscription, including its title and the channel that the user - subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains basic statistics about the subscription.\",\n \"$ref\": - \"SubscriptionContentDetails\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A *subscription* resource contains information about - a YouTube user subscription. A subscription notifies a user when new videos - are added to a channel or when another user takes one of several actions on - YouTube, such as uploading a video, rating a video, or commenting on a video.\"\n - \ },\n \"PlaylistPlayer\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistPlayer\",\n \"properties\": {\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"WatchSettings\": - {\n \"type\": \"object\",\n \"description\": \"Branding properties - for the watch. All deprecated.\",\n \"properties\": {\n \"featuredPlaylistId\": - {\n \"description\": \"An ID that uniquely identifies a playlist - that displays next to the video player.\",\n \"type\": \"string\"\n - \ },\n \"backgroundColor\": {\n \"description\": \"The - text color for the video watch page's branded area.\",\n \"type\": - \"string\"\n },\n \"textColor\": {\n \"type\": \"string\",\n - \ \"description\": \"The background color for the video watch page's - branded area.\"\n }\n },\n \"id\": \"WatchSettings\"\n },\n - \ \"I18nRegionSnippet\": {\n \"description\": \"Basic details about - an i18n region, such as region code and human-readable name.\",\n \"type\": - \"object\",\n \"properties\": {\n \"gl\": {\n \"description\": - \"The region code as a 2-letter ISO country code.\",\n \"type\": + page.\",\n \"id\": \"PageInfo\"\n },\n \"I18nLanguageSnippet\": + {\n \"id\": \"I18nLanguageSnippet\",\n \"description\": \"Basic + details about an i18n language, such as language code and human-readable name.\",\n + \ \"properties\": {\n \"hl\": {\n \"description\": \"A + short BCP-47 code that uniquely identifies a language.\",\n \"type\": \"string\"\n },\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the region.\"\n }\n - \ },\n \"id\": \"I18nRegionSnippet\"\n },\n \"LiveStreamHealthStatus\": - {\n \"id\": \"LiveStreamHealthStatus\",\n \"properties\": {\n \"configurationIssues\": - {\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"description\": \"The configurations issues on this - stream\",\n \"type\": \"array\"\n },\n \"status\": - {\n \"enum\": [\n \"good\",\n \"ok\",\n \"bad\",\n - \ \"noData\",\n \"revoked\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The status code of this stream\"\n },\n \"lastUpdateTimeSeconds\": - {\n \"description\": \"The last time this status was updated (in - seconds)\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"MembershipsDuration\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsDuration\",\n \"properties\": - {\n \"memberSince\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the user became a continuous member across all levels.\"\n - \ },\n \"memberTotalDurationMonths\": {\n \"description\": - \"The cumulative time the user has been a member across all levels in complete - months (the time is rounded down to the nearest integer).\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n }\n }\n },\n - \ \"ChannelStatistics\": {\n \"type\": \"object\",\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\",\n \"properties\": {\n \"hiddenSubscriberCount\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the number of subscribers is shown for this user.\"\n },\n \"viewCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of times the channel has been viewed.\"\n },\n \"commentCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of comments for the channel.\"\n },\n \"videoCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of videos uploaded to the channel.\",\n \"type\": \"string\"\n },\n - \ \"subscriberCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of subscribers that the channel has.\",\n \"format\": - \"uint64\"\n }\n },\n \"id\": \"ChannelStatistics\"\n },\n - \ \"Caption\": {\n \"id\": \"Caption\",\n \"type\": \"object\",\n - \ \"description\": \"A *caption* resource represents a YouTube caption - track. A caption track is associated with exactly one YouTube video.\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n + \ \"description\": \"The human-readable name of the language in the + language itself.\"\n }\n },\n \"type\": \"object\"\n },\n + \ \"ChannelSectionListResponse\": {\n \"properties\": {\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": + \"A list of ChannelSections that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"ChannelSection\"\n }\n },\n \"kind\": + {\n \"description\": \"Identifies what kind of resource this is. + Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#channelSectionListResponse\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelSectionListResponse\"\n + \ },\n \"VideoAbuseReportReasonSnippet\": {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n + \ \"description\": \"Basic details about a video category, such as its + localized title.\",\n \"properties\": {\n \"secondaryReasons\": + {\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n + \ },\n \"type\": \"array\",\n \"description\": \"The + secondary reasons associated with this reason, if any are available. (There + might be 0 or more.)\"\n },\n \"label\": {\n \"type\": + \"string\",\n \"description\": \"The localized label belonging to + this abuse report reason.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"LiveChatTextMessageDetails\": {\n \"properties\": {\n \"messageText\": + {\n \"description\": \"The user's message.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveChatTextMessageDetails\"\n },\n \"ImageSettings\": {\n \"description\": + \"Branding properties for images associated with the channel.\",\n \"type\": + \"object\",\n \"properties\": {\n \"bannerMobileHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size high resolution (1280x360).\"\n },\n \"smallBrandedBannerImageImapScript\": + {\n \"$ref\": \"LocalizedProperty\",\n \"description\": + \"The image map script for the small banner image.\"\n },\n \"largeBrandedBannerImageUrl\": + {\n \"description\": \"The URL for the 854px by 70px image that appears + below the video player in the expanded video view of the video watch page.\",\n + \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileMediumHdImageUrl\": + {\n \"description\": \"Banner image. Mobile size medium/high resolution + (960x263).\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": + {\n \"description\": \"The URL for the 640px by 70px banner image + that appears below the video player in the default view of the video watch + page. The URL for the image that appears above the top-left corner of the + video player. This is a 25-pixel-high image with a flexible width that cannot + exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n + \ \"bannerTabletImageUrl\": {\n \"type\": \"string\",\n \"description\": + \"Banner image. Tablet size (1707x283).\"\n },\n \"bannerImageUrl\": + {\n \"description\": \"Banner image. Desktop size (1060x175).\",\n + \ \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size extra high resolution (2560x424).\"\n },\n \"backgroundImageUrl\": + {\n \"description\": \"The URL for the background image shown on + the video watch page. The image should be 1200px by 615px, with a maximum + file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n + \ \"bannerExternalUrl\": {\n \"type\": \"string\",\n \"description\": + \"This is generated when a ChannelBanner.Insert request has succeeded for + the given channel.\"\n },\n \"bannerTabletHdImageUrl\": {\n + \ \"type\": \"string\",\n \"description\": \"Banner image. + Tablet size high resolution (2276x377).\"\n },\n \"bannerMobileExtraHdImageUrl\": + {\n \"description\": \"Banner image. Mobile size high resolution + (1440x395).\",\n \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": + {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n + \ \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size low resolution (854x480).\"\n },\n \"bannerTvMediumImageUrl\": + {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n + \ \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": + {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n + \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageImapScript\": + {\n \"description\": \"The image map script for the large banner + image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTabletLowImageUrl\": + {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n + \ \"type\": \"string\"\n },\n \"watchIconImageUrl\": + {\n \"type\": \"string\"\n },\n \"bannerTvImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + TV size extra high resolution (2120x1192).\"\n },\n \"trackingImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"The URL for + a 1px by 1px tracking pixel that can be used to collect statistics for views + of the channel or video pages.\"\n },\n \"bannerMobileImageUrl\": + {\n \"type\": \"string\",\n \"description\": \"Banner image. + Mobile size (640x175).\"\n }\n },\n \"id\": \"ImageSettings\"\n + \ },\n \"LiveChatModerator\": {\n \"type\": \"object\",\n \"description\": + \"A *liveChatModerator* resource represents a moderator for a YouTube live + chat. A chat moderator has the ability to ban/unban users from a chat, remove + message, etc.\",\n \"id\": \"LiveChatModerator\",\n \"properties\": + {\n \"kind\": {\n \"description\": \"Identifies what kind + of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n + \ \"default\": \"youtube#liveChatModerator\",\n \"type\": + \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": \"The snippet object contains basic details - about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n },\n - \ \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the caption track.\"\n },\n \"kind\": - {\n \"default\": \"youtube#caption\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"SearchListResponse\": - {\n \"id\": \"SearchListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"SearchResult\"\n },\n \"type\": \"array\",\n \"description\": - \"Pagination information for token pagination.\"\n },\n \"kind\": - {\n \"default\": \"youtube#searchListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"regionCode\": - {\n \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n }\n }\n },\n \"ActivityContentDetailsBulletin\": - {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with a - bulletin post. @mutable youtube.activities.insert\"\n }\n },\n - \ \"description\": \"Details about a channel bulletin post.\",\n \"id\": - \"ActivityContentDetailsBulletin\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"properties\": - {\n \"amountMicros\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The amount of the fund.\"\n },\n - \ \"amountDisplayString\": {\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ },\n \"userComment\": {\n \"description\": \"The comment - added by the user to this fan funding event.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"Cuepoint\": - {\n \"description\": \"Note that there may be a 5-second end-point resolution - issue. For instance, if a cuepoint comes in for 22:03:27, we may stuff the - cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact of HLS.\",\n - \ \"id\": \"Cuepoint\",\n \"type\": \"object\",\n \"properties\": - {\n \"cueType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ]\n - \ },\n \"walltimeMs\": {\n \"description\": \"The wall - clock time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"insertionOffsetTimeMs\": {\n \"format\": - \"int64\",\n \"type\": \"string\",\n \"description\": \"The - time when the cuepoint should be inserted by offset to the broadcast actual - start time.\"\n },\n \"id\": {\n \"description\": \"The - identifier for cuepoint resource.\",\n \"type\": \"string\"\n },\n - \ \"durationSecs\": {\n \"format\": \"uint32\",\n \"description\": - \"The duration of this cuepoint.\",\n \"type\": \"integer\"\n }\n - \ }\n },\n \"ChannelConversionPings\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelConversionPings\",\n \"properties\": {\n \"pings\": - {\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ },\n \"description\": \"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.\",\n \"type\": \"array\"\n - \ }\n },\n \"description\": \"The conversionPings object encapsulates - information about conversion pings that need to be respected by the channel.\"\n - \ },\n \"LiveChatBan\": {\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the ban.\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveChatBan\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": + about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n + \ },\n \"id\": {\n \"description\": \"The ID that YouTube + assigns to uniquely identify the moderator.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"ActivityContentDetailsRecommendation\": + {\n \"type\": \"object\",\n \"description\": \"Information that + identifies the recommended resource.\",\n \"properties\": {\n \"seedResourceId\": + {\n \"description\": \"The seedResourceId object contains information + about the resource that caused the recommendation.\",\n \"$ref\": + \"ResourceId\"\n },\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the recommended resource.\"\n },\n \"reason\": + {\n \"type\": \"string\",\n \"enum\": [\n \"reasonUnspecified\",\n + \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n + \ ],\n \"description\": \"The reason that the resource is + recommended to the user.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n }\n + \ },\n \"id\": \"ActivityContentDetailsRecommendation\"\n },\n + \ \"LiveBroadcastStatistics\": {\n \"type\": \"object\",\n \"properties\": + {\n \"concurrentViewers\": {\n \"format\": \"uint64\",\n \"description\": + \"The number of viewers currently watching the broadcast. The property and + its value will be present if the broadcast has current viewers and the broadcast + owner has not hidden the viewcount for the video. Note that YouTube stops + tracking the number of concurrent viewers for a broadcast when the broadcast + ends. So, this property would not identify the number of viewers watching + an archived video of a live broadcast that already ended.\",\n \"type\": + \"string\"\n },\n \"totalChatCount\": {\n \"description\": + \"The total number of live chat messages currently on the broadcast. The property + and its value will be present if the broadcast is public, has the live chat + feature enabled, and has at least one message. Note that this field will not + be filled after the broadcast ends. So this property would not identify the + number of chat messages for an archived video of a completed live broadcast.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n + \ },\n \"id\": \"LiveBroadcastStatistics\",\n \"description\": + \"Statistics about the live broadcast. These represent a snapshot of the values + at the time of the request. Statistics are only returned for live broadcasts.\"\n + \ },\n \"PlaylistPlayer\": {\n \"type\": \"object\",\n \"id\": + \"PlaylistPlayer\",\n \"properties\": {\n \"embedHtml\": {\n \"type\": + \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that + embeds a player that will play the playlist.\"\n }\n }\n },\n + \ \"SearchResult\": {\n \"description\": \"A search result contains + information about a YouTube video, channel, or playlist that matches the search + parameters specified in an API request. While a search result points to a + uniquely identifiable resource, like a video, it does not have its own persistent + data.\",\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n - \ }\n },\n \"description\": \"A `__liveChatBan__` resource - represents a ban for a YouTube live chat.\",\n \"type\": \"object\",\n - \ \"id\": \"LiveChatBan\"\n },\n \"VideoCategorySnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The video category's title.\"\n - \ },\n \"channelId\": {\n \"description\": \"The YouTube - channel that created the video category.\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n - \ \"type\": \"string\"\n },\n \"assignable\": {\n \"type\": - \"boolean\"\n }\n },\n \"id\": \"VideoCategorySnippet\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\"\n },\n \"Channel\": {\n \"properties\": {\n - \ \"contentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"topicDetails\": {\n \"$ref\": - \"ChannelTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the channel.\"\n - \ },\n \"status\": {\n \"$ref\": \"ChannelStatus\",\n - \ \"description\": \"The status object encapsulates information about - the privacy status of the channel.\"\n },\n \"conversionPings\": - {\n \"$ref\": \"ChannelConversionPings\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\"\n },\n \"kind\": - {\n \"default\": \"youtube#channel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about a search result, such as its title or description. For + example, if the search result is a video, then the title will be the video's + title and the description will be the video's description.\",\n \"$ref\": + \"SearchResultSnippet\"\n },\n \"id\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The id object contains information + that can be used to uniquely identify the resource that matches the search + request.\"\n },\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#searchResult\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"SearchResult\"\n + \ },\n \"Cuepoint\": {\n \"properties\": {\n \"etag\": {\n + \ \"type\": \"string\"\n },\n \"walltimeMs\": {\n \"format\": + \"uint64\",\n \"description\": \"The wall clock time at which the + cuepoint should be inserted. Only one of insertion_offset_time_ms and walltime_ms + may be set at a time.\",\n \"type\": \"string\"\n },\n \"durationSecs\": + {\n \"format\": \"uint32\",\n \"description\": \"The duration + of this cuepoint.\",\n \"type\": \"integer\"\n },\n \"cueType\": + {\n \"enum\": [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"insertionOffsetTimeMs\": + {\n \"description\": \"The time when the cuepoint should be inserted + by offset to the broadcast actual start time.\",\n \"type\": \"string\",\n + \ \"format\": \"int64\"\n },\n \"id\": {\n \"description\": + \"The identifier for cuepoint resource.\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"Note that there may be a 5-second + end-point resolution issue. For instance, if a cuepoint comes in for 22:03:27, + we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. This is an + artifact of HLS.\",\n \"type\": \"object\",\n \"id\": \"Cuepoint\"\n + \ },\n \"Caption\": {\n \"type\": \"object\",\n \"id\": \"Caption\",\n + \ \"properties\": {\n \"id\": {\n \"annotations\": {\n + \ \"required\": [\n \"youtube.captions.update\"\n ]\n + \ },\n \"description\": \"The ID that YouTube uses to uniquely + identify the caption track.\",\n \"type\": \"string\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"ChannelSnippet\",\n \"description\": \"The snippet object contains - basic details about the channel, such as its title, description, and thumbnail - images.\"\n },\n \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n - \ \"description\": \"The statistics object encapsulates statistics - for the channel.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelLocalization\"\n },\n \"description\": \"Localizations - for different languages\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object encapsulates information about the channel's content.\",\n - \ \"$ref\": \"ChannelContentDetails\"\n },\n \"brandingSettings\": - {\n \"$ref\": \"ChannelBrandingSettings\",\n \"description\": - \"The brandingSettings object encapsulates information about the branding - of the channel.\"\n },\n \"auditDetails\": {\n \"description\": - \"The auditionDetails object encapsulates channel data that is relevant for - YouTube Partners during the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - *channel* resource contains information about a YouTube channel.\",\n \"id\": - \"Channel\"\n },\n \"VideoProcessingDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"processingFailureReason\": {\n \"type\": - \"string\",\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The reason that YouTube failed - to process the video. This property will only have a value if the processingStatus - property's value is failed.\"\n },\n \"processingIssuesAvailability\": - {\n \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"fileDetailsAvailability\": {\n \"description\": - \"This value indicates whether file details are available for the uploaded - video. You can retrieve a video's file details by requesting the fileDetails - part in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"processingProgress\": {\n \"description\": \"The processingProgress - object contains information about the progress YouTube has made in processing - the video. The values are really only relevant if the video's processing status - is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"processingStatus\": {\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's processing status. - This value indicates whether YouTube was able to process the video or if the - video is still being processed.\"\n },\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n },\n - \ \"tagSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether keyword (tag) suggestions - are available for the video. Tags can be added to a video's metadata to make - it easier for other users to find the video. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether video editing suggestions, - which might improve video quality or the playback experience, are available - for the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n }\n },\n \"description\": - \"Describes processing status and progress and availability of some other - Video resource parts.\",\n \"id\": \"VideoProcessingDetails\"\n },\n - \ \"VideoListResponse\": {\n \"type\": \"object\",\n \"id\": \"VideoListResponse\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"items\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Video\"\n }\n },\n \"kind\": {\n \"default\": - \"youtube#videoListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LiveStreamSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that is transmitting the stream.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The stream's description. The value cannot be - longer than 10000 characters.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The stream's title. The value must - be between 1 and 128 characters long.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"isDefaultStream\": {\n \"type\": - \"boolean\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the stream was created.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n }\n },\n \"id\": \"LiveStreamSnippet\"\n - \ },\n \"ActivityContentDetailsPromotedItem\": {\n \"properties\": - {\n \"customCtaButtonText\": {\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\",\n \"type\": \"string\"\n },\n \"adTag\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should fetch to request a promoted item.\"\n },\n \"clickTrackingUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user clicked through on this promoted - item.\"\n },\n \"descriptionText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text description to accompany the promoted - item.\"\n },\n \"impressionUrl\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\"\n },\n \"destinationUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should direct the user to, if the user chooses to visit the advertiser's - website.\"\n },\n \"creativeViewUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user was shown this promoted item.\"\n },\n \"forecastingUrl\": - {\n \"description\": \"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.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"ctaType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"The type of call-to-action, - a message to the user indicating action that can be taken.\",\n \"type\": - \"string\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ]\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the promoted video.\"\n }\n },\n - \ \"description\": \"Details about a resource which is being promoted.\",\n - \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPromotedItem\"\n - \ },\n \"LiveStreamConfigurationIssue\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"description\": {\n \"description\": - \"The long-form description of the issue and how to resolve it.\",\n \"type\": - \"string\"\n },\n \"severity\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n + \"CaptionSnippet\",\n \"description\": \"The snippet object contains + basic details about the caption.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n + \ \"default\": \"youtube#caption\",\n \"type\": \"string\"\n + \ }\n },\n \"description\": \"A *caption* resource represents + a YouTube caption track. A caption track is associated with exactly one YouTube + video.\"\n },\n \"ContentRating\": {\n \"properties\": {\n \"ifcoRating\": + {\n \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n + \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n + \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n + \ \"ifco18\",\n \"ifcoUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n + \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n + \ ],\n \"description\": \"The video's Irish Film Classification + Office (IFCO - Ireland) rating. See the IFCO website for more information.\"\n + \ },\n \"bmukkRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n + \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n + \ \"14+\",\n \"16+\",\n \"\"\n ],\n + \ \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n + \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n + \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n + \ \"bmukkUnrated\"\n ],\n \"description\": \"The + video's rating from the Austrian Board of Media Classification (Bundesministerium + f\xFCr Unterricht, Kunst und Kultur).\"\n },\n \"chfilmRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"chfilmUnspecified\",\n + \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n + \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n + \ ],\n \"description\": \"The video's rating in Switzerland.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"0\",\n + \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ]\n },\n \"menaMpaaRating\": {\n + \ \"enum\": [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n + \ \"menaMpaaPg\",\n \"menaMpaaPg13\",\n \"menaMpaaR\",\n + \ \"menaMpaaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"R\",\n \"To keep the same enum values as MPAA's items + have, skip NC_17.\"\n ],\n \"type\": \"string\",\n \"description\": + \"The rating system for MENA countries, a clone of MPAA. It is needed to prevent + titles go live w/o additional QC check, since some of them can be inappropriate + for the countries at all. See b/33408548 for more details.\"\n },\n + \ \"mtrcbRating\": {\n \"description\": \"The video's rating + from the Movie and Television Review and Classification Board (Philippines).\",\n + \ \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n + \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n + \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n + \ \"X\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"smaisRating\": {\n \"description\": \"The video's + rating in Iceland.\",\n \"type\": \"string\",\n \"enum\": + [\n \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n + \ \"smais12\",\n \"smais14\",\n \"smais16\",\n + \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n + \ \"14\",\n \"16\",\n \"18\",\n \"\"\n + \ ]\n },\n \"bfvcRating\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from Thailand's Board of Film + and Video Censors.\",\n \"enum\": [\n \"bfvcUnspecified\",\n + \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n + \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n + \ \"bfvcB\",\n \"bfvcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n + \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n + \ \"\"\n ]\n },\n \"nfvcbRating\": {\n \"description\": + \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n + \ \"18\",\n \"RE\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"nfvcbUnspecified\",\n + \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n + \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n + \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ]\n },\n + \ \"skfilmRating\": {\n \"description\": \"The video's rating + in Slovakia.\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n + \ ],\n \"enum\": [\n \"skfilmUnspecified\",\n + \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n + \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"incaaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 + (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para + mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 + a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n + condicionada)\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n + \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n + \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"description\": + \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) + rating.\"\n },\n \"catvfrRating\": {\n \"enum\": [\n + \ \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n + \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n + \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n + \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n \ ],\n \"type\": \"string\",\n \"description\": - \"How severe this issue is to the stream.\"\n },\n \"reason\": - {\n \"type\": \"string\",\n \"description\": \"The short-form - reason for this issue.\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n - \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n - \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n - \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n - \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n - \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"description\": \"The kind of error happening.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"id\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"ChannelSectionListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelSectionListResponse\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"A list of ChannelSections that match the request criteria.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\",\n \"type\": - \"string\"\n }\n }\n },\n \"I18nRegion\": {\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n region.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegion\"\n - \ }\n },\n \"description\": \"A *i18nRegion* resource identifies - a region where YouTube is available.\",\n \"id\": \"I18nRegion\",\n \"type\": - \"object\"\n },\n \"ThirdPartyLink\": {\n \"properties\": {\n \"status\": - {\n \"description\": \"The status object contains information about - the status of the link.\",\n \"$ref\": \"ThirdPartyLinkStatus\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLink\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the third- party account link.\"\n },\n \"linkingToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The linking_token - identifies a YouTube account and channel with which the third party account - is linked.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"A *third party account - link* resource represents a link between a YouTube account or a channel and - an account on a third-party service.\",\n \"id\": \"ThirdPartyLink\"\n - \ },\n \"SuperChatEventListResponse\": {\n \"id\": \"SuperChatEventListResponse\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"SuperChatEvent\"\n },\n \"description\": \"A list of Super - Chat purchases that match the request criteria.\",\n \"type\": \"array\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"default\": - \"youtube#superChatEventListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ResourceId\": - {\n \"type\": \"object\",\n \"id\": \"ResourceId\",\n \"properties\": - {\n \"playlistId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a playlist. - This property is only present if the resourceId.kind value is youtube#playlist.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a channel. This property - is only present if the resourceId.kind value is youtube#channel.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"The type of the API resource.\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A resource id is a generic reference that points - to another YouTube resource.\"\n },\n \"ChannelBannerResource\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\"\n },\n \"url\": {\n \"type\": - \"string\",\n \"description\": \"The URL of this banner image.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\"\n }\n },\n - \ \"description\": \"A channel banner returned as the response to a channel_banner.insert - call.\",\n \"id\": \"ChannelBannerResource\"\n }\n },\n \"documentationLink\": - \"https://developers.google.com/youtube/\",\n \"basePath\": \"\",\n \"batchPath\": - \"batch\",\n \"ownerName\": \"Google\",\n \"fullyEncodeReservedExpansion\": - true,\n \"protocol\": \"rest\",\n \"discoveryVersion\": \"v1\",\n \"title\": - \"YouTube Data API v3\",\n \"resources\": {\n \"videoCategories\": {\n - \ \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the videoCategory resource properties that the API response will include. - Set the parameter value to snippet.\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Returns the video categories with the given IDs for Stubby or Apiary.\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"hl\": - {\n \"default\": \"en-US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"id\": \"youtube.videoCategories.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/videoCategories\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": {\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"parameters\": - {\n \"hl\": {\n \"default\": \"en-US\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the videoCategory resource parts that the API response - will include. Supported values are id and snippet.\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"VideoAbuseReportReasonListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n - \ }\n }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"response\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/tests\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/tests\",\n \"id\": - \"youtube.tests.insert\",\n \"description\": \"POST method.\",\n - \ \"request\": {\n \"$ref\": \"TestItem\"\n }\n - \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n - \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/abuseReports\",\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"path\": \"youtube/v3/abuseReports\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\"\n }\n }\n },\n \"subscriptions\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"id\": \"youtube.subscriptions.list\",\n \"parameters\": - {\n \"order\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The order of the returned subscriptions\",\n - \ \"default\": \"relevance\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ]\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"description\": \"Return the - subscriptions of the given channel owner.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Flag for returning the subscriptions of the - authenticated user.\"\n },\n \"myRecentSubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"mySubscribers\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the subscribers of the given channel owner.\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"maximum\": \"50\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"default\": \"5\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Return - the subscriptions with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"forChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions to the subset of - these channels that the authenticated user is subscribed to.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/subscriptions\",\n \"description\": \"Retrieves a list - of resources, possibly filtered.\"\n },\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.subscriptions.insert\",\n \"request\": - {\n \"$ref\": \"Subscription\"\n },\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"POST\"\n },\n \"delete\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.subscriptions.delete\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Deletes a resource.\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"DELETE\"\n }\n }\n },\n \"i18nLanguages\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"The *part* parameter - specifies the i18nLanguage resource properties that the API response will - include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"hl\": {\n - \ \"default\": \"en_US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"response\": - {\n \"$ref\": \"I18nLanguageListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/i18nLanguages\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"channels\": - {\n \"methods\": {\n \"update\": {\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"PUT\",\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"id\": - \"youtube.channels.update\",\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"request\": {\n \"$ref\": - \"Channel\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/channels\"\n },\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ChannelListResponse\"\n },\n \"path\": - \"youtube/v3/channels\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.channels.list\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/channels\",\n \"parameters\": - {\n \"pageToken\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"forUsername\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the channel associated with a YouTube - username.\"\n },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the channels subscribed - to the authenticated user\",\n \"location\": \"query\"\n },\n - \ \"managedByMe\": {\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Return the channels managed by - the authenticated user.\"\n },\n \"maxResults\": {\n - \ \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"location\": \"query\",\n \"minimum\": \"0\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"hl\": {\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the channels with the specified IDs.\",\n - \ \"repeated\": true\n },\n \"mine\": {\n - \ \"description\": \"Return the ids of channels owned by the authenticated - user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"categoryId\": {\n \"description\": - \"Return the channels within the specified guide category ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ }\n }\n },\n \"watermarks\": {\n \"methods\": {\n - \ \"set\": {\n \"httpMethod\": \"POST\",\n \"description\": - \"Allows upload of watermark image and setting it for a channel.\",\n \"id\": - \"youtube.watermarks.set\",\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"parameters\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"mediaUpload\": {\n \"protocols\": - {\n \"resumable\": {\n \"multipart\": true,\n - \ \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n }\n - \ },\n \"maxSize\": \"10485760\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"parameterOrder\": [\n \"channelId\"\n ]\n - \ },\n \"unset\": {\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"path\": \"youtube/v3/watermarks/unset\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Allows removal of channel watermark.\",\n - \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.watermarks.unset\"\n }\n }\n },\n \"commentThreads\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"id\": \"youtube.commentThreads.list\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"CommentThreadListResponse\"\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"moderationStatus\": {\n \"description\": \"Limits - the returned comment threads to those with the specified moderation status. - Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"default\": - \"published\",\n \"location\": \"query\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ]\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads for all the channel comments (ie does not include comments - left on videos).\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"location\": \"query\",\n \"default\": - \"20\",\n \"maximum\": \"100\",\n \"type\": \"integer\",\n - \ \"minimum\": \"1\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"format\": \"uint32\"\n },\n - \ \"order\": {\n \"default\": \"time\",\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Order by time.\",\n \"Order by relevance.\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"searchTerms\": {\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"textFormat\": - {\n \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"description\": - \"The requested text format for the returned comments.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"default\": - \"html\"\n },\n \"videoId\": {\n \"description\": - \"Returns the comment threads of the specified video.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads of all videos of the channel and the channel comments - as well.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"flatPath\": - \"youtube/v3/commentThreads\"\n }\n }\n },\n \"playlistItems\": - {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.playlistItems.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"maxResults\": {\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"maximum\": \"50\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"default\": - \"5\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"playlistId\": {\n \"description\": - \"Return the playlist items within the given playlist.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the playlist items associated with the given video ID.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ }\n },\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"required\": true,\n \"repeated\": true\n }\n - \ },\n \"path\": \"youtube/v3/playlistItems\"\n },\n - \ \"update\": {\n \"id\": \"youtube.playlistItems.update\",\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ }\n },\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.delete\"\n }\n - \ }\n },\n \"i18nRegions\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/i18nRegions\",\n \"response\": {\n \"$ref\": - \"I18nRegionListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.i18nRegions.list\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": - \"en_US\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the i18nRegion resource properties that the API response will include. Set - the parameter value to snippet.\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/i18nRegions\"\n }\n }\n },\n \"youtube\": {\n - \ \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"parameterOrder\": [],\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": \"query\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"httpMethod\": \"PUT\",\n \"id\": \"youtube.youtube.v3.updateCommentThreads\"\n - \ }\n }\n }\n }\n },\n \"search\": {\n - \ \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.search.list\",\n \"path\": \"youtube/v3/search\",\n \"parameters\": - {\n \"videoDuration\": {\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"description\": - \"Filter on the duration of the videos.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter video search results based on their duration. This is the default - value.\",\n \"Only include videos that are less than four minutes - long.\",\n \"Only include videos that are between four and - 20 minutes long (inclusive).\",\n \"Only include videos longer - than 20 minutes.\"\n ],\n \"type\": \"string\"\n - \ },\n \"forDeveloper\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\"\n },\n \"order\": {\n \"default\": - \"relevance\",\n \"description\": \"Sort order of the results.\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"type\": \"string\"\n },\n \"videoType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos.\",\n \"Only retrieve movies.\",\n \"Only - retrieve episodes of shows.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Filter on videos of a specific type.\",\n - \ \"enum\": [\n \"videoTypeUnspecified\",\n \"any\",\n - \ \"movie\",\n \"episode\"\n ],\n - \ \"location\": \"query\"\n },\n \"location\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on location of the video\",\n \"location\": \"query\"\n },\n - \ \"safeSearch\": {\n \"default\": \"moderate\",\n - \ \"description\": \"Indicates whether the search results should - include restricted content as well as standard content.\",\n \"enum\": - [\n \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ]\n },\n \"eventType\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ],\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"description\": - \"Filter on the livestream status of the videos.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoEmbeddable\": - {\n \"location\": \"query\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Filter - on embeddable videos.\"\n },\n \"q\": {\n \"description\": - \"Textual search terms to match.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"videoDefinition\": - {\n \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Filter on the definition of the videos.\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ]\n },\n \"forContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Search owned by a content owner.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"videoSyndicated\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos, syndicated or not.\",\n \"Only retrieve syndicated - videos.\"\n ],\n \"description\": \"Filter on syndicated - videos.\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"topicId\": - {\n \"type\": \"string\",\n \"description\": \"Restrict - results to a particular topic.\",\n \"location\": \"query\"\n - \ },\n \"regionCode\": {\n \"description\": - \"Display the content as seen by viewers in this country.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"default\": \"5\"\n },\n \"part\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"required\": true\n },\n \"locationRadius\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on distance from the location (specified - above).\"\n },\n \"videoCaption\": {\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ]\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"relevanceLanguage\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return results relevant to this language.\"\n },\n \"forMine\": - {\n \"description\": \"Search for the private videos of the authenticated - user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"publishedAfter\": {\n \"location\": - \"query\",\n \"description\": \"Filter on resources published - after this date.\",\n \"type\": \"string\",\n \"format\": - \"google-datetime\"\n },\n \"publishedBefore\": {\n - \ \"type\": \"string\",\n \"description\": \"Filter - on resources published before this date.\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\"\n },\n \"videoCategoryId\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on videos in a specific category.\",\n \"location\": \"query\"\n - \ },\n \"videoDimension\": {\n \"description\": - \"Filter on 3d videos.\",\n \"enumDescriptions\": [\n \"Include - both 3D and non-3D videos in returned results. This is the default value.\",\n - \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict - search results to only include 3D videos.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"location\": \"query\"\n - \ },\n \"videoLicense\": {\n \"description\": - \"Filter on the license of the videos.\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"location\": \"query\"\n },\n \"channelType\": - {\n \"location\": \"query\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"description\": \"Add - a filter on the channel search.\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"Restrict results to a particular set of resource types from One Platform.\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Filter on resources belonging - to this channelId.\",\n \"type\": \"string\"\n },\n - \ \"relatedToVideoId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Search - related to a resource.\"\n }\n },\n \"response\": - {\n \"$ref\": \"SearchListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of search resources\",\n - \ \"flatPath\": \"youtube/v3/search\"\n }\n }\n },\n - \ \"liveBroadcasts\": {\n \"methods\": {\n \"delete\": {\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Delete a given broadcast.\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"DELETE\",\n \"id\": - \"youtube.liveBroadcasts.delete\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Broadcast - to delete.\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\"\n ]\n },\n \"transition\": {\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"broadcastStatus\",\n - \ \"id\",\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts/transition\",\n \"description\": \"Transition - a broadcast to a given status.\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"Broadcast - to transition.\"\n },\n \"broadcastStatus\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The status to which the broadcast is going to transition.\",\n \"enum\": - [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Start - testing the broadcast. YouTube transmits video to the broadcast's monitor - stream. Note that you can only transition a broadcast to the testing state - if its contentDetails.monitorStream.enableMonitorStream property is set to - true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The - broadcast is over. YouTube stops transmitting video.\"\n ],\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/liveBroadcasts/transition\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"bind\": {\n \"description\": \"Bind a broadcast - to a stream.\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"streamId\": {\n \"location\": - \"query\",\n \"description\": \"Stream to bind, if not set unbind - the current one.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Broadcast to bind to the stream\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.liveBroadcasts.bind\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ]\n },\n \"list\": - {\n \"parameters\": {\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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, status - and statistics.\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"broadcastStatus\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return broadcasts with a certain status, - e.g. active broadcasts.\",\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ]\n },\n \"maxResults\": {\n - \ \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"minimum\": \"0\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"broadcastType\": {\n \"description\": - \"Return only broadcasts with the selected type.\",\n \"enum\": - [\n \"broadcastTypeFilterUnspecified\",\n \"all\",\n - \ \"event\",\n \"persistent\"\n ],\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"default\": \"event\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Return - broadcasts with the given ids from Stubby or Apiary.\"\n }\n },\n - \ \"id\": \"youtube.liveBroadcasts.list\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieve the list of broadcasts associated - with the given channel.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\"\n },\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"PUT\",\n \"id\": \"youtube.liveBroadcasts.update\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"description\": \"Updates an existing - broadcast for the authenticated user.\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n }\n },\n \"insert\": {\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.insert\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": true,\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insertCuepoint\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Insert cuepoints in a broadcast\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"response\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"parameterOrder\": - []\n }\n }\n },\n \"captions\": {\n \"methods\": {\n - \ \"update\": {\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"path\": \"youtube/v3/captions\",\n \"response\": {\n - \ \"$ref\": \"Caption\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"104857600\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"id\": \"youtube.captions.update\",\n \"httpMethod\": - \"PUT\",\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"sync\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is on behalf of.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"supportsMediaUpload\": true\n },\n - \ \"download\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Downloads a caption track.\",\n \"httpMethod\": - \"GET\",\n \"useMediaDownloadService\": true,\n \"path\": - \"youtube/v3/captions/{id}\",\n \"supportsMediaDownload\": true,\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/captions/{id}\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"path\",\n \"description\": \"The - ID of the caption track to download, required for One Platform.\"\n },\n - \ \"tfmt\": {\n \"description\": \"Convert the captions - into this format. Supported options are sbv, srt, and vtt.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"tlang\": - {\n \"location\": \"query\",\n \"description\": - \"tlang is the language code; machine translate the captions into this language.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.captions.download\"\n - \ },\n \"delete\": {\n \"id\": \"youtube.captions.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/captions\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"supportsMediaUpload\": - true,\n \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.captions.insert\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"sync\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\"\n },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\"\n }\n },\n - \ \"path\": \"youtube/v3/captions\",\n \"mediaUpload\": {\n - \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"104857600\"\n - \ },\n \"response\": {\n \"$ref\": \"Caption\"\n - \ },\n \"flatPath\": \"youtube/v3/captions\"\n },\n - \ \"list\": {\n \"parameters\": {\n \"id\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"Returns - the captions with the given IDs for Stubby or Apiary.\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\"\n },\n \"videoId\": {\n - \ \"description\": \"Returns the captions for the specified video.\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.list\",\n \"response\": {\n - \ \"$ref\": \"CaptionListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/captions\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"parameterOrder\": [\n \"part\",\n - \ \"videoId\"\n ]\n }\n }\n },\n \"comments\": - {\n \"methods\": {\n \"insert\": {\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.comments.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n - \ },\n \"path\": \"youtube/v3/comments\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"CommentListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/comments\",\n \"parameters\": {\n - \ \"textFormat\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"description\": \"The requested text format for the returned - comments.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"default\": \"html\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"default\": \"20\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"100\",\n - \ \"location\": \"query\",\n \"minimum\": \"1\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"part\": {\n \"description\": \"The *part* parameter - specifies a comma-separated list of one or more comment resource properties - that the API response will include.\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"parentId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"description\": \"Returns the comments with the given IDs for - One Platform.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.comments.list\"\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.comments.delete\",\n - \ \"flatPath\": \"youtube/v3/comments\"\n },\n \"update\": - {\n \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"id\": \"youtube.comments.update\",\n - \ \"path\": \"youtube/v3/comments\",\n \"response\": {\n - \ \"$ref\": \"Comment\"\n },\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"setModerationStatus\": - {\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"Modifies the moderation status of - the comments with the given IDs\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"moderationStatus\": {\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": - \"string\",\n \"description\": \"Specifies the requested moderation - status. Note, comments can be in statuses, which are not available through - this call. For example, this call does not allow to mark a comment as 'likely - spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"banAuthor\": {\n \"default\": - \"false\",\n \"description\": \"If set to true the author of - the comment gets added to the ban list. This means all future comments of - the author will autmomatically be rejected. Only valid in combination with - STATUS_REJECTED.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Sets - the moderation status of one or more comments.\",\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ],\n \"id\": - \"youtube.comments.setModerationStatus\"\n },\n \"markAsSpam\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"flatPath\": - \"youtube/v3/comments/markAsSpam\",\n \"description\": \"Expresses - the caller's opinion that one or more comments should be flagged as spam.\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Flags - the comments with the given IDs as spam in the caller's opinion.\",\n \"repeated\": - true\n }\n },\n \"id\": \"youtube.comments.markAsSpam\"\n - \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"flatPath\": \"youtube/v3/members\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"path\": \"youtube/v3/members\",\n \"description\": - \"Retrieves a list of members that match the request criteria for a channel.\",\n - \ \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ },\n \"id\": \"youtube.members.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"mode\": - {\n \"description\": \"Parameter that specifies which channel - members to return.\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - only members that joined after the first call with this mode was made.\",\n - \ \"Return all current members, from newest to oldest.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"all_current\"\n },\n \"hasAccessToLevel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter members in the results set to the - ones that have access to a level.\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"1000\",\n \"minimum\": \"0\",\n - \ \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"filterByMemberChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Comma - separated list of channel IDs. Only data about members that are part of this - list will be included in the response.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n }\n - \ }\n }\n },\n \"liveStreams\": {\n \"methods\": {\n - \ \"insert\": {\n \"path\": \"youtube/v3/liveStreams\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"description\": - \"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, content_details, and status.\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.liveStreams.insert\"\n },\n \"update\": {\n \"id\": - \"youtube.liveStreams.update\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"description\": \"Updates an existing - stream for the authenticated user.\",\n \"httpMethod\": \"PUT\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"request\": {\n - \ \"$ref\": \"LiveStream\"\n }\n },\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.delete\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"description\": \"Deletes an existing - stream for the authenticated user.\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/liveStreams\"\n },\n \"list\": {\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"id\": {\n \"description\": \"Return LiveStreams - with the given ids from Stubby or Apiary.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"maxResults\": {\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Retrieve - the list of streams associated with the given channel. --\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.liveStreams.list\",\n \"path\": \"youtube/v3/liveStreams\"\n - \ }\n }\n },\n \"liveChatBans\": {\n \"methods\": {\n - \ \"delete\": {\n \"description\": \"Deletes a chat ban.\",\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.liveChatBans.delete\"\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"LiveChatBan\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\"\n }\n }\n - \ },\n \"videos\": {\n \"methods\": {\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.videos.delete\",\n - \ \"path\": \"youtube/v3/videos\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"reportAbuse\": {\n \"id\": \"youtube.videos.reportAbuse\",\n - \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Report abuse for a video.\",\n - \ \"parameterOrder\": [],\n \"path\": \"youtube/v3/videos/reportAbuse\"\n - \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"id\": - \"youtube.videos.list\",\n \"path\": \"youtube/v3/videos\",\n \"response\": - {\n \"$ref\": \"VideoListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"videoCategoryId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Use - chart that is specific to the specified video category\",\n \"default\": - \"0\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Return videos with the given - ids.\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"maxWidth\": {\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"location\": - \"query\",\n \"minimum\": \"72\",\n \"description\": - \"Return the player with maximum height specified in\",\n \"maximum\": - \"8192\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"myRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"location\": \"query\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"description\": - \"Return videos liked/disliked by the authenticated user. Does not support - RateType.RATED_TYPE_NONE.\"\n },\n \"maxHeight\": {\n - \ \"type\": \"integer\",\n \"maximum\": \"8192\",\n - \ \"location\": \"query\",\n \"minimum\": \"72\",\n - \ \"format\": \"int32\"\n },\n \"hl\": {\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"locale\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"chart\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - the most popular videos for the specified content region and video category.\"\n - \ ],\n \"description\": \"Return the videos that - are in the specified chart.\",\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ]\n },\n \"regionCode\": - {\n \"description\": \"Use a chart that is specific to the specified - region\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"default\": - \"5\",\n \"description\": \"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.\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"1\",\n \"format\": - \"uint32\"\n },\n \"part\": {\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n }\n }\n - \ },\n \"insert\": {\n \"mediaUpload\": {\n \"maxSize\": - \"274877906944\",\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/videos\"\n - \ }\n }\n },\n \"path\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"supportsMediaUpload\": true,\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"stabilize\": {\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Should stabilize be applied to - the upload.\"\n },\n \"autoLevels\": {\n \"description\": - \"Should auto-levels be applied to the upload.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"notifySubscribers\": {\n \"type\": - \"boolean\",\n \"description\": \"Notify the channel subscribers - about the new video. As default, the notification is enabled.\",\n \"default\": - \"true\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.videos.insert\",\n \"response\": {\n - \ \"$ref\": \"Video\"\n },\n \"flatPath\": \"youtube/v3/videos\"\n - \ },\n \"rate\": {\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"rating\": {\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"required\": true,\n \"enumDescriptions\": [\n - \ \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/videos/rate\",\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/videos/rate\",\n \"id\": \"youtube.videos.rate\",\n - \ \"description\": \"Adds a like or dislike rating to a video or removes - a rating from a video.\"\n },\n \"update\": {\n \"id\": - \"youtube.videos.update\",\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ }\n },\n \"path\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Video\"\n - \ },\n \"flatPath\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\"\n - \ },\n \"getRating\": {\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"id\": \"youtube.videos.getRating\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Retrieves - the ratings that the authorized user gave to a list of specified videos.\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"flatPath\": - \"youtube/v3/videos/getRating\"\n }\n }\n },\n \"thirdPartyLinks\": - {\n \"methods\": {\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.thirdPartyLinks.insert\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\"\n }\n },\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n }\n },\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"id\": - \"youtube.thirdPartyLinks.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Do not use. Required for compatibility.\",\n \"type\": \"string\"\n - \ },\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"description\": \"Delete the partner links with the given linking - token.\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"enum\": [\n - \ \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Type of the link to be deleted.\"\n }\n }\n },\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.thirdPartyLinks.list\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\"\n },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel ID to which changes - should be applied, for delegation.\",\n \"location\": \"query\"\n - \ },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"description\": \"Get a third party link of the given type.\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"type\": - \"string\"\n },\n \"linkingToken\": {\n \"location\": - \"query\",\n \"description\": \"Get a third party link with the - given linking token.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"update\": {\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n }\n }\n }\n }\n },\n \"liveChatModerators\": - {\n \"methods\": {\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"required\": true\n }\n },\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.liveChatModerators.insert\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"description\": \"Deletes a chat moderator.\",\n \"id\": - \"youtube.liveChatModerators.delete\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": \"DELETE\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"LiveChatModeratorListResponse\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameters\": {\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"minimum\": \"0\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The - id of the live chat for which moderators should be returned.\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the liveChatModerator resource parts that the API response - will include. Supported values are id and snippet.\"\n }\n },\n - \ \"id\": \"youtube.liveChatModerators.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ]\n }\n }\n },\n \"activities\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/activities\",\n - \ \"id\": \"youtube.activities.list\",\n \"response\": {\n - \ \"$ref\": \"ActivityListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/activities\",\n \"parameters\": - {\n \"publishedBefore\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"format\": \"google-datetime\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n },\n \"mine\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"publishedAfter\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"home\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"maximum\": \"50\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\"\n }\n }\n },\n \"superChatEvents\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"SuperChatEventListResponse\"\n },\n \"id\": \"youtube.superChatEvents.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/superChatEvents\",\n \"parameters\": {\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"1\",\n \"type\": - \"integer\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"description\": \"The - *part* parameter specifies the superChatEvent resource parts that the API - response will include. This parameter is currently not supported.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"hl\": - {\n \"description\": \"Return rendered funding amounts in specified - language.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\"\n }\n }\n },\n - \ \"playlists\": {\n \"methods\": {\n \"insert\": {\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n },\n \"id\": \"youtube.playlists.insert\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"update\": {\n \"description\": - \"Updates an existing resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"id\": \"youtube.playlists.update\",\n \"response\": {\n - \ \"$ref\": \"Playlist\"\n }\n },\n \"list\": - {\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlists owned by the specified channel ID.\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"mine\": {\n \"description\": \"Return the playlists - owned by the authenticated user.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"default\": \"5\",\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"hl\": {\n \"location\": \"query\",\n - \ \"description\": \"Return content in specified language\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.playlists.list\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"path\": - \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.delete\"\n - \ }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"supportsMediaUpload\": true,\n \"parameterOrder\": [],\n - \ \"id\": \"youtube.channelBanners.insert\",\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n - \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\",\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ }\n }\n },\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ }\n }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"parameters\": {\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return the ChannelSections owned - by the specified channel ID.\"\n },\n \"mine\": {\n - \ \"description\": \"Return the ChannelSections owned by the authenticated - user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.channelSections.list\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\"\n },\n \"delete\": {\n \"id\": \"youtube.channelSections.delete\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/channelSections\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\"\n },\n - \ \"update\": {\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"id\": \"youtube.channelSections.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"description\": \"Updates an existing resource.\"\n },\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.channelSections.insert\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"path\": \"youtube/v3/channelSections\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n }\n }\n }\n - \ },\n \"liveChatMessages\": {\n \"methods\": {\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"id\": \"youtube.liveChatMessages.insert\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveChatMessage\"\n }\n },\n \"list\": {\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.liveChatMessages.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"liveChatId\": {\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"The id of the live chat for which comments - should be returned.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - liveChatComment resource parts that the API response will include. Supported - values are id and snippet.\"\n },\n \"profileImageSize\": - {\n \"location\": \"query\",\n \"description\": - \"Specifies the size of the profile image that should be returned for each - user.\",\n \"minimum\": \"16\",\n \"maximum\": \"720\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"description\": \"Specifies the localization language in which - the system messages should be returned.\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"default\": - \"500\",\n \"minimum\": \"200\",\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"2000\",\n - \ \"type\": \"integer\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"id\": \"youtube.liveChatMessages.delete\",\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a chat message.\",\n \"path\": \"youtube/v3/liveChat/messages\"\n - \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"path\": \"youtube/v3/membershipsLevels\",\n \"id\": - \"youtube.membershipsLevels.list\",\n \"description\": \"Retrieves - a list of all pricing levels offered by a creator to the fans.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"description\": \"The *part* parameter specifies the membershipsLevel - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"thumbnails\": - {\n \"methods\": {\n \"set\": {\n \"mediaUpload\": {\n - \ \"maxSize\": \"2097152\",\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"videoId\": {\n \"description\": \"Returns the Thumbnail - with the given video IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/thumbnails/set\",\n \"response\": - {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"supportsMediaUpload\": - true,\n \"description\": \"As this is not an insert in a strict sense - (it supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"parameterOrder\": - [\n \"videoId\"\n ],\n \"id\": \"youtube.thumbnails.set\",\n - \ \"httpMethod\": \"POST\"\n }\n }\n }\n },\n \"name\": - \"youtube\",\n \"revision\": \"20230220\",\n \"version\": \"v3\",\n \"id\": - \"youtube:v3\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"servicePath\": - \"\",\n \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"canonicalName\": \"YouTube\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:26 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCX-USfenzQlhrEJR1zD5IYw&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"oe1psJHo5NY5HHairhMImFIS_Lk\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"gpXiuZaVdYETylXUV9qfKUtzc2A\",\n \"id\": \"UCX-USfenzQlhrEJR1zD5IYw\",\n - \ \"snippet\": {\n \"title\": \"Deep Mood.\",\n \"description\": - \"\",\n \"customUrl\": \"@deepmood.6868\",\n \"publishedAt\": - \"2021-12-03T19:50:36.097926Z\",\n \"thumbnails\": {\n \"default\": - {\n \"url\": \"https://yt3.ggpht.com/8WO05hff9bGjmlyPFo_PJRMIfHEoUvN_KbTcWRVX2yqeUO3fLgkz0K4MA6W95s3_NKdNUAwjow=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/8WO05hff9bGjmlyPFo_PJRMIfHEoUvN_KbTcWRVX2yqeUO3fLgkz0K4MA6W95s3_NKdNUAwjow=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/8WO05hff9bGjmlyPFo_PJRMIfHEoUvN_KbTcWRVX2yqeUO3fLgkz0K4MA6W95s3_NKdNUAwjow=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Deep Mood.\",\n \"description\": - \"\"\n },\n \"country\": \"US\"\n },\n \"brandingSettings\": - {\n \"channel\": {\n \"title\": \"Deep Mood.\",\n \"keywords\": - \"Popular Songs Mix 2022 \\\"Ed Sheeran\\\" Kygo Style Chill \\\"Chill Out\\\" - \\\"hot mix\\\" girl \\\"logan paul\\\" \\\"pop music\\\" \\\"viral mix\\\" - \\\"disco polo\\\" musicas electronicas \\\"new music\\\" \\\"tropical mix\\\" - \\\"deep house\\\" \\\"summer mix\\\" \\\"winter mix\\\" remixes mashups \\\"brazil - mix\\\" \\\"popular songs\\\" \\\"long mix\\\" \\\"top USA\\\" \\\"edm mix\\\" - drake \\\"summer music 2022\\\" \\\"world hits\\\" charts \\\"The Best Of - Vocal Deep House\\\" \\\"Autumn Mix\\\" \\\"Best Of Vocal Deep House\\\" \\\"Summer - Music Mix 2022\\\" \\\"Mega Hits 2022\\\" \\\"House Music 2022\\\" \\\"House - Relax 2022\\\" 4k\",\n \"country\": \"US\"\n },\n \"image\": - {\n \"bannerExternalUrl\": \"https://yt3.googleusercontent.com/nPWwkq9VnlXcO8L_m_Zq43LybkGzeC8amzC-pLw8UcAZADRtO6Nh0jSUmsMp_SmzRMpwcyGZ\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:26 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n }\n - \ }\n }\n },\n \"protocol\": \"rest\",\n \"revision\": \"20230220\",\n - \ \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"canonicalName\": - \"YouTube\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"name\": \"youtube\",\n \"resources\": {\n \"playlists\": {\n - \ \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/playlists\",\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Return the playlists owned by - the authenticated user.\"\n },\n \"pageToken\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the playlists with the given IDs for - Stubby or Apiary.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"format\": - \"uint32\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Return the playlists owned by - the specified channel ID.\",\n \"location\": \"query\"\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return content in specified language\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlists.list\"\n },\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.insert\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"path\": \"youtube/v3/playlists\"\n },\n \"update\": - {\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.playlists.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/playlists\",\n \"flatPath\": \"youtube/v3/playlists\"\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"path\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlists.delete\"\n }\n - \ }\n },\n \"videos\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"VideoListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"chart\": - {\n \"enum\": [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"description\": \"Return the videos that - are in the specified chart.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"minimum\": \"1\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"description\": - \"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.\"\n },\n \"videoCategoryId\": - {\n \"location\": \"query\",\n \"default\": \"0\",\n - \ \"type\": \"string\",\n \"description\": \"Use - chart that is specific to the specified video category\"\n },\n - \ \"maxHeight\": {\n \"location\": \"query\",\n \"format\": - \"int32\",\n \"minimum\": \"72\",\n \"type\": \"integer\",\n - \ \"maximum\": \"8192\"\n },\n \"hl\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return videos with the given ids.\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"myRating\": - {\n \"type\": \"string\",\n \"description\": \"Return - videos liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"location\": \"query\"\n - \ },\n \"locale\": {\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"description\": - \"Use a chart that is specific to the specified region\",\n \"type\": - \"string\"\n },\n \"maxWidth\": {\n \"format\": - \"int32\",\n \"description\": \"Return the player with maximum - height specified in\",\n \"location\": \"query\",\n \"minimum\": - \"72\",\n \"maximum\": \"8192\",\n \"type\": \"integer\"\n - \ }\n },\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/videos\",\n \"id\": - \"youtube.videos.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"reportAbuse\": {\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n - \ \"id\": \"youtube.videos.reportAbuse\",\n \"description\": - \"Report abuse for a video.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos/reportAbuse\",\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\"\n },\n \"rate\": {\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"flatPath\": - \"youtube/v3/videos/rate\",\n \"id\": \"youtube.videos.rate\",\n - \ \"description\": \"Adds a like or dislike rating to a video or removes - a rating from a video.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/videos/rate\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"rating\": {\n \"required\": true,\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"location\": \"query\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"type\": \"string\"\n }\n }\n },\n - \ \"update\": {\n \"httpMethod\": \"PUT\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"path\": - \"youtube/v3/videos\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"id\": \"youtube.videos.update\",\n \"request\": {\n \"$ref\": - \"Video\"\n }\n },\n \"getRating\": {\n \"id\": - \"youtube.videos.getRating\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true\n }\n },\n \"description\": - \"Retrieves the ratings that the authorized user gave to a list of specified - videos.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"path\": \"youtube/v3/videos/getRating\",\n \"flatPath\": - \"youtube/v3/videos/getRating\",\n \"httpMethod\": \"GET\"\n },\n - \ \"delete\": {\n \"path\": \"youtube/v3/videos\",\n \"id\": - \"youtube.videos.delete\",\n \"description\": \"Deletes a resource.\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"DELETE\"\n },\n \"insert\": {\n - \ \"path\": \"youtube/v3/videos\",\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.videos.insert\",\n \"parameters\": {\n \"notifySubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"default\": \"true\",\n \"description\": \"Notify - the channel subscribers about the new video. As default, the notification - is enabled.\"\n },\n \"onBehalfOfContentOwner\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"autoLevels\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Should auto-levels be applied to the upload.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": true\n },\n - \ \"stabilize\": {\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Should stabilize be applied to - the upload.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"supportsMediaUpload\": - true,\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"mediaUpload\": - {\n \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"274877906944\",\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": - true\n }\n }\n },\n \"response\": - {\n \"$ref\": \"Video\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"channels\": {\n \"methods\": - {\n \"update\": {\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"httpMethod\": \"PUT\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true,\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"id\": - \"youtube.channels.update\",\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"path\": \"youtube/v3/channels\",\n \"request\": - {\n \"$ref\": \"Channel\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/channels\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"parameters\": - {\n \"managedByMe\": {\n \"description\": \"Return - the channels managed by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"maximum\": \"50\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"forUsername\": {\n \"description\": - \"Return the channel associated with a YouTube username.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"Return the channels with the - specified IDs.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Stands - for \\\"host language\\\". Specifies the localization language of the metadata - to be filled into snippet.localized. The field is filled with the default - metadata if there is no localization in the specified language. The parameter - value must be a language code included in the list returned by the i18nLanguages.list - method (e.g. en_US, es_MX).\"\n },\n \"mySubscribers\": - {\n \"description\": \"Return the channels subscribed to the - authenticated user\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"description\": - \"Return the ids of channels owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channels within the specified - guide category ID.\"\n }\n },\n \"id\": \"youtube.channels.list\",\n - \ \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"httpMethod\": \"GET\"\n }\n }\n },\n - \ \"captions\": {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ],\n \"response\": - {\n \"$ref\": \"CaptionListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is on behalf of.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Returns - the captions for the specified video.\"\n },\n \"id\": - {\n \"description\": \"Returns the captions with the given IDs - for Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"flatPath\": - \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.list\",\n \"path\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"GET\"\n },\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/captions\",\n \"id\": - \"youtube.captions.delete\",\n \"parameters\": {\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is be on behalf of\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"insert\": {\n \"parameters\": {\n \"sync\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n - \ \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n - \ \"resumable\": {\n \"multipart\": true,\n \"path\": - \"/resumable/upload/youtube/v3/captions\"\n }\n },\n - \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"supportsMediaUpload\": true,\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"id\": \"youtube.captions.insert\"\n },\n \"download\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"supportsMediaDownload\": - true,\n \"description\": \"Downloads a caption track.\",\n \"flatPath\": - \"youtube/v3/captions/{id}\",\n \"useMediaDownloadService\": true,\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions/{id}\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the caption track to download, required for One Platform.\",\n - \ \"location\": \"path\",\n \"required\": true\n - \ },\n \"tlang\": {\n \"location\": \"query\",\n - \ \"description\": \"tlang is the language code; machine translate - the captions into this language.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is be on behalf of\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"tfmt\": - {\n \"location\": \"query\",\n \"description\": - \"Convert the captions into this format. Supported options are sbv, srt, and - vtt.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.captions.download\"\n },\n \"update\": - {\n \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"104857600\"\n },\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"supportsMediaUpload\": true,\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"onBehalfOf\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"sync\": {\n \"location\": - \"query\",\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true\n }\n },\n - \ \"id\": \"youtube.captions.update\"\n }\n }\n },\n - \ \"activities\": {\n \"methods\": {\n \"list\": {\n \"path\": - \"youtube/v3/activities\",\n \"id\": \"youtube.activities.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"home\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"publishedBefore\": {\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": true\n },\n - \ \"maxResults\": {\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"type\": \"integer\"\n },\n \"publishedAfter\": - {\n \"type\": \"string\",\n \"format\": \"google-datetime\",\n - \ \"location\": \"query\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"description\": \"Retrieves a list of all pricing - levels offered by a creator to the fans.\",\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - membershipsLevel resource parts that the API response will include. Supported - values are id and snippet.\",\n \"location\": \"query\"\n }\n - \ },\n \"path\": \"youtube/v3/membershipsLevels\"\n }\n - \ }\n },\n \"subscriptions\": {\n \"methods\": {\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/subscriptions\",\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"parameters\": - {\n \"pageToken\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"forChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\"\n },\n \"mySubscribers\": {\n - \ \"location\": \"query\",\n \"description\": \"Return - the subscribers of the given channel owner.\",\n \"type\": \"boolean\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"order\": {\n \"description\": \"The order of the - returned subscriptions\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"location\": \"query\",\n \"default\": \"relevance\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ]\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions of the given channel owner.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"default\": \"5\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"Return - the subscriptions with the given IDs for Stubby or Apiary.\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Flag for returning the subscriptions - of the authenticated user.\"\n },\n \"myRecentSubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ }\n },\n \"id\": \"youtube.subscriptions.list\",\n - \ \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ }\n },\n \"insert\": {\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"id\": \"youtube.subscriptions.insert\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"delete\": {\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n }\n }\n }\n },\n \"superChatEvents\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"hl\": {\n \"description\": \"Return rendered funding - amounts in specified language.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"default\": \"5\",\n - \ \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"minimum\": \"1\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - superChatEvent resource parts that the API response will include. This parameter - is currently not supported.\"\n }\n },\n \"flatPath\": - \"youtube/v3/superChatEvents\",\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.superChatEvents.list\",\n \"response\": {\n \"$ref\": - \"SuperChatEventListResponse\"\n },\n \"path\": \"youtube/v3/superChatEvents\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n - \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Updates an existing resource.\",\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"httpMethod\": - \"PUT\",\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\"\n },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n }\n - \ }\n },\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ],\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Do not use. Required for compatibility.\"\n - \ },\n \"linkingToken\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"Delete the partner links with the given linking - token.\"\n },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"type\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"Type of - the link to be deleted.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ]\n - \ }\n },\n \"id\": \"youtube.thirdPartyLinks.delete\"\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Get - a third party link with the given linking token.\"\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API response will include. Supported - values are linkingToken, status, and snippet.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"description\": \"Get a third party link of the given type.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.list\"\n - \ },\n \"insert\": {\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API request and response will include. - Supported values are linkingToken, status, and snippet.\",\n \"repeated\": - true\n }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.insert\"\n }\n }\n - \ },\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"id\": \"youtube.i18nLanguages.list\",\n \"path\": - \"youtube/v3/i18nLanguages\",\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the i18nLanguage resource properties that the API response - will include. Set the parameter value to snippet.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"default\": \"en_US\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"videoCategories\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"parameters\": - {\n \"hl\": {\n \"default\": \"en-US\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the video categories with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"description\": \"The - *part* parameter specifies the videoCategory resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"id\": - \"youtube.videoCategories.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/videoCategories\"\n - \ }\n }\n },\n \"liveChatBans\": {\n \"methods\": {\n - \ \"insert\": {\n \"response\": {\n \"$ref\": \"LiveChatBan\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\"\n }\n - \ },\n \"path\": \"youtube/v3/liveChat/bans\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"httpMethod\": \"POST\"\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"description\": - \"Deletes a chat ban.\",\n \"id\": \"youtube.liveChatBans.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ]\n }\n - \ }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"parameterOrder\": - [],\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"PUT\",\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"description\": - \"Updates an existing resource.\"\n }\n }\n }\n - \ }\n },\n \"watermarks\": {\n \"methods\": {\n \"unset\": - {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"channelId\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Allows removal of - channel watermark.\",\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/watermarks/unset\",\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n - \ \"id\": \"youtube.watermarks.unset\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"channelId\"\n ]\n - \ },\n \"set\": {\n \"parameters\": {\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"mediaUpload\": {\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ }\n },\n \"maxSize\": \"10485760\"\n },\n - \ \"description\": \"Allows upload of watermark image and setting - it for a channel.\",\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"supportsMediaUpload\": true,\n \"parameterOrder\": [\n - \ \"channelId\"\n ],\n \"id\": \"youtube.watermarks.set\",\n - \ \"path\": \"youtube/v3/watermarks/set\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"InvideoBranding\"\n }\n }\n }\n - \ },\n \"members\": {\n \"methods\": {\n \"list\": {\n \"id\": - \"youtube.members.list\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"hasAccessToLevel\": {\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"default\": - \"5\",\n \"maximum\": \"1000\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"minimum\": \"0\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"mode\": {\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"description\": \"Parameter that specifies which channel members - to return.\",\n \"default\": \"all_current\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ],\n \"location\": \"query\"\n - \ },\n \"filterByMemberChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Comma separated list of channel - IDs. Only data about members that are part of this list will be included in - the response.\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of members that - match the request criteria for a channel.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/members\",\n \"path\": - \"youtube/v3/members\"\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/videoAbuseReportReasons\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"The *part* parameter specifies the videoCategory - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"hl\": {\n \"location\": \"query\",\n - \ \"default\": \"en-US\",\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"broadcastStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return current - live broadcasts.\",\n \"Return broadcasts that have not yet - started.\",\n \"Return broadcasts that have already ended.\"\n - \ ],\n \"description\": \"Return broadcasts with - a certain status, e.g. active broadcasts.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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, status and statistics.\",\n \"repeated\": - true,\n \"required\": true\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"maximum\": \"50\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"default\": \"5\"\n },\n \"broadcastType\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"default\": \"event\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"description\": \"Return only broadcasts - with the selected type.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ]\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Return broadcasts with the given ids from - Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveBroadcastListResponse\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.list\"\n },\n - \ \"insert\": {\n \"description\": \"Inserts a new stream for - the authenticated user.\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.liveBroadcasts.insert\"\n },\n \"delete\": - {\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.liveBroadcasts.delete\",\n \"description\": - \"Delete a given broadcast.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"description\": - \"Broadcast to delete.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"update\": {\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"youtube.liveBroadcasts.update\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing broadcast for the authenticated user.\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"transition\": - {\n \"description\": \"Transition a broadcast to a given status.\",\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"id\": - \"youtube.liveBroadcasts.transition\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Broadcast to transition.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"broadcastStatus\": {\n \"enum\": - [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"required\": true,\n \"enumDescriptions\": [\n - \ \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"The status to which the broadcast - is going to transition.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\"\n - \ },\n \"bind\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"description\": \"Bind a broadcast to a stream.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameters\": - {\n \"streamId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Stream to bind, if not set unbind - the current one.\"\n },\n \"id\": {\n \"description\": - \"Broadcast to bind to the stream\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n }\n },\n \"insertCuepoint\": - {\n \"httpMethod\": \"POST\",\n \"parameterOrder\": [],\n - \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"response\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts/cuepoint\",\n \"description\": \"Insert - cuepoints in a broadcast\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n },\n \"request\": {\n \"$ref\": - \"Cuepoint\"\n }\n }\n }\n },\n \"tests\": {\n - \ \"methods\": {\n \"insert\": {\n \"response\": {\n \"$ref\": - \"TestItem\"\n },\n \"path\": \"youtube/v3/tests\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/tests\",\n \"id\": - \"youtube.tests.insert\",\n \"request\": {\n \"$ref\": - \"TestItem\"\n },\n \"parameters\": {\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"description\": \"POST method.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"update\": {\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"httpMethod\": \"PUT\",\n \"id\": - \"youtube.channelSections.update\"\n },\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channelSections.delete\",\n \"path\": - \"youtube/v3/channelSections\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n }\n },\n \"insert\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n },\n \"id\": - \"youtube.channelSections.insert\",\n \"httpMethod\": \"POST\",\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"path\": - \"youtube/v3/channelSections\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"list\": {\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Return - the ChannelSections with the given IDs for Stubby or Apiary.\"\n },\n - \ \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return content in specified - language\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Return the ChannelSections - owned by the authenticated user.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/channelSections\",\n \"httpMethod\": \"GET\"\n }\n - \ }\n },\n \"playlistItems\": {\n \"methods\": {\n \"update\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.update\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"description\": \"Updates an existing resource.\"\n },\n - \ \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/playlistItems\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.delete\",\n \"description\": - \"Deletes a resource.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"videoId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return the playlist items associated - with the given video ID.\"\n },\n \"maxResults\": {\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"location\": - \"query\"\n },\n \"playlistId\": {\n \"description\": - \"Return the playlist items within the given playlist.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"path\": \"youtube/v3/playlistItems\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.playlistItems.list\",\n \"httpMethod\": - \"GET\"\n },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.insert\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"description\": - \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n }\n }\n }\n - \ },\n \"channelBanners\": {\n \"methods\": {\n \"insert\": - {\n \"id\": \"youtube.channelBanners.insert\",\n \"parameterOrder\": - [],\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Unused, channel_id is currently - derived from the security context of the requestor.\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"supportsMediaUpload\": true,\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"mediaUpload\": {\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"6291456\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ]\n }\n }\n },\n \"i18nRegions\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/i18nRegions\",\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the i18nRegion - resource properties that the API response will include. Set the parameter - value to snippet.\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"en_US\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.liveChatModerators.insert\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"request\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"list\": {\n \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"parameters\": {\n \"pageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"liveChatId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"The id of the live chat for which - moderators should be returned.\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the liveChatModerator resource parts that the API response - will include. Supported values are id and snippet.\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"id\": \"youtube.liveChatModerators.list\"\n },\n \"delete\": - {\n \"id\": \"youtube.liveChatModerators.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Deletes a chat moderator.\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\"\n }\n }\n - \ },\n \"comments\": {\n \"methods\": {\n \"setModerationStatus\": - {\n \"parameters\": {\n \"moderationStatus\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ]\n },\n \"banAuthor\": - {\n \"type\": \"boolean\",\n \"description\": \"If - set to true the author of the comment gets added to the ban list. This means - all future comments of the author will autmomatically be rejected. Only valid - in combination with STATUS_REJECTED.\",\n \"location\": \"query\",\n - \ \"default\": \"false\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Modifies - the moderation status of the comments with the given IDs\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"description\": \"Sets the moderation - status of one or more comments.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"path\": \"youtube/v3/comments/setModerationStatus\"\n - \ },\n \"update\": {\n \"id\": \"youtube.comments.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"Comment\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/comments\",\n - \ \"description\": \"Updates an existing resource.\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"flatPath\": - \"youtube/v3/comments\"\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"id\": \"youtube.comments.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Deletes a resource.\"\n },\n - \ \"markAsSpam\": {\n \"path\": \"youtube/v3/comments/markAsSpam\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.comments.markAsSpam\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\"\n - \ }\n },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/comments/markAsSpam\",\n \"description\": \"Expresses - the caller's opinion that one or more comments should be flagged as spam.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"id\": \"youtube.comments.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"flatPath\": - \"youtube/v3/comments\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/comments\"\n - \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"description\": - \"Returns the comments with the given IDs for One Platform.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more comment - resource properties that the API response will include.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"textFormat\": {\n \"enum\": [\n - \ \"textFormatUnspecified\",\n \"html\",\n \"plainText\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"html\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"description\": \"The requested - text format for the returned comments.\"\n },\n \"maxResults\": - {\n \"maximum\": \"100\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"1\",\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"default\": - \"20\",\n \"format\": \"uint32\"\n },\n \"parentId\": - {\n \"description\": \"Returns replies to the specified comment. - Note, currently YouTube features only one level of replies (ie replies to - top level comments). However replies to replies may be supported in the future.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"path\": \"youtube/v3/comments\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.comments.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\"\n - \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/search\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/search\",\n \"description\": - \"Retrieves a list of search resources\",\n \"id\": \"youtube.search.list\",\n - \ \"parameters\": {\n \"videoSyndicated\": {\n \"type\": - \"string\",\n \"description\": \"Filter on syndicated videos.\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ]\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true,\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"publishedAfter\": {\n \"type\": \"string\",\n \"description\": - \"Filter on resources published after this date.\",\n \"format\": - \"google-datetime\",\n \"location\": \"query\"\n },\n - \ \"forContentOwner\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Search - owned by a content owner.\"\n },\n \"videoCaption\": - {\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Filter on the presence of captions on the videos.\"\n },\n \"safeSearch\": - {\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"location\": \"query\",\n \"default\": - \"moderate\",\n \"type\": \"string\",\n \"description\": - \"Indicates whether the search results should include restricted content as - well as standard content.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ]\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"type\": {\n \"repeated\": - true,\n \"description\": \"Restrict results to a particular set - of resource types from One Platform.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"locationRadius\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on distance from the location (specified - above).\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"videoType\": {\n \"location\": \"query\",\n \"enum\": - [\n \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos.\",\n \"Only retrieve movies.\",\n \"Only - retrieve episodes of shows.\"\n ],\n \"description\": - \"Filter on videos of a specific type.\"\n },\n \"videoDimension\": - {\n \"type\": \"string\",\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"Include - both 3D and non-3D videos in returned results. This is the default value.\",\n - \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict - search results to only include 3D videos.\"\n ],\n \"description\": - \"Filter on 3d videos.\"\n },\n \"relevanceLanguage\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return results relevant to this language.\"\n - \ },\n \"order\": {\n \"default\": \"relevance\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"description\": - \"Sort order of the results.\",\n \"type\": \"string\",\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ]\n - \ },\n \"publishedBefore\": {\n \"description\": - \"Filter on resources published before this date.\",\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"description\": - \"Display the content as seen by viewers in this country.\",\n \"type\": - \"string\"\n },\n \"videoCategoryId\": {\n \"description\": - \"Filter on videos in a specific category.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"Filter on resources belonging to this - channelId.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"q\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Textual search terms to match.\"\n },\n \"eventType\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n - \ \"description\": \"Filter on the livestream status of the videos.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"location\": {\n \"description\": - \"Filter on location of the video\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"videoDuration\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Filter - on the duration of the videos.\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ]\n },\n \"relatedToVideoId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Search related to a resource.\"\n },\n - \ \"videoDefinition\": {\n \"description\": \"Filter - on the definition of the videos.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ],\n \"type\": \"string\"\n - \ },\n \"videoLicense\": {\n \"description\": - \"Filter on the license of the videos.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"type\": \"string\"\n },\n \"forMine\": - {\n \"type\": \"boolean\",\n \"description\": \"Search - for the private videos of the authenticated user.\",\n \"location\": - \"query\"\n },\n \"channelType\": {\n \"enum\": - [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"description\": - \"Add a filter on the channel search.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all channels.\",\n \"Only retrieve shows.\"\n ],\n - \ \"location\": \"query\"\n },\n \"forDeveloper\": - {\n \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"videoEmbeddable\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on embeddable videos.\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, embeddable or not.\",\n \"Only - retrieve embeddable videos.\"\n ]\n },\n \"topicId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Restrict results to a particular topic.\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"path\": - \"youtube/v3/commentThreads\",\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.commentThreads.insert\"\n - \ },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"channelId\": {\n - \ \"location\": \"query\",\n \"description\": \"Returns - the comment threads for all the channel comments (ie does not include comments - left on videos).\",\n \"type\": \"string\"\n },\n - \ \"textFormat\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"The - requested text format for the returned comments.\",\n \"default\": - \"html\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"order\": {\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Order by time.\",\n \"Order by relevance.\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"time\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"moderationStatus\": {\n \"default\": \"published\",\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by - a moderator.\",\n \"\",\n \"The comment is unfit - for display.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Limits - the returned comment threads to those with the specified moderation status. - Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ]\n },\n \"allThreadsRelatedToChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\"\n },\n \"videoId\": - {\n \"description\": \"Returns the comment threads of the specified - video.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - a comma-separated list of one or more commentThread resource properties that - the API response will include.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"maximum\": \"100\",\n - \ \"minimum\": \"1\",\n \"default\": \"20\",\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"searchTerms\": - {\n \"description\": \"Limits the returned comment threads to - those matching the specified key words. Not compatible with the 'id' filter.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"response\": {\n \"$ref\": - \"CommentThreadListResponse\"\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.commentThreads.list\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\"\n }\n }\n },\n \"liveStreams\": - {\n \"methods\": {\n \"delete\": {\n \"description\": - \"Deletes an existing stream for the authenticated user.\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/liveStreams\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.liveStreams.delete\"\n },\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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, - content_details, and status.\",\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"description\": \"Inserts - a new stream for the authenticated user.\"\n },\n \"update\": - {\n \"path\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n - \ },\n \"description\": \"Updates an existing stream for - the authenticated user.\",\n \"id\": \"youtube.liveStreams.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n - \ \"repeated\": true\n },\n \"mine\": {\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"maximum\": \"50\",\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Return LiveStreams with the - given ids from Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\",\n - \ \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"id\": - \"youtube.liveStreams.list\"\n }\n }\n },\n \"liveChatMessages\": - {\n \"methods\": {\n \"insert\": {\n \"response\": {\n - \ \"$ref\": \"LiveChatMessage\"\n },\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/liveChat/messages\",\n \"request\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"id\": - \"youtube.liveChatMessages.insert\",\n \"description\": \"Inserts - a new resource into this collection.\"\n },\n \"delete\": {\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"id\": \"youtube.liveChatMessages.delete\",\n \"description\": - \"Deletes a chat message.\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\"\n },\n \"list\": - {\n \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"id\": \"youtube.liveChatMessages.list\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"parameters\": {\n \"profileImageSize\": - {\n \"minimum\": \"16\",\n \"description\": \"Specifies - the size of the profile image that should be returned for each user.\",\n - \ \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"maximum\": \"720\",\n \"format\": \"uint32\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the liveChatComment resource parts that the - API response will include. Supported values are id and snippet.\"\n },\n - \ \"maxResults\": {\n \"minimum\": \"200\",\n \"maximum\": - \"2000\",\n \"default\": \"500\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"format\": \"uint32\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Specifies the localization language in which - the system messages should be returned.\"\n },\n \"liveChatId\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - id of the live chat for which comments should be returned.\"\n }\n - \ },\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"abuseReports\": - {\n \"methods\": {\n \"insert\": {\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"request\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n }\n - \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n - \ \"set\": {\n \"path\": \"youtube/v3/thumbnails/set\",\n \"id\": - \"youtube.thumbnails.set\",\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"supportsMediaUpload\": true,\n \"description\": \"As - this is not an insert in a strict sense (it supports uploading/setting of - a thumbnail for multiple videos, which doesn't result in creation of a single - resource), I use a custom verb here.\",\n \"parameters\": {\n \"videoId\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"Returns the Thumbnail with the given video - IDs for Stubby or Apiary.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"response\": - {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"mediaUpload\": {\n \"protocols\": {\n - \ \"resumable\": {\n \"multipart\": true,\n \"path\": - \"/resumable/upload/youtube/v3/thumbnails/set\"\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"2097152\",\n - \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"httpMethod\": \"POST\"\n }\n }\n }\n },\n \"parameters\": - {\n \"uploadType\": {\n \"description\": \"Legacy upload protocol - for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"$.xgafv\": {\n \"enumDescriptions\": - [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"description\": - \"V1 error format.\",\n \"location\": \"query\",\n \"enum\": [\n - \ \"1\",\n \"2\"\n ],\n \"type\": \"string\"\n },\n - \ \"fields\": {\n \"description\": \"Selector specifying which fields - to include in a partial response.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"alt\": {\n \"enumDescriptions\": [\n \"Responses - with Content-Type of application/json\",\n \"Media download with context-dependent - Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n - \ ],\n \"default\": \"json\",\n \"enum\": [\n \"json\",\n - \ \"media\",\n \"proto\"\n ],\n \"location\": \"query\",\n - \ \"description\": \"Data format for response.\",\n \"type\": \"string\"\n - \ },\n \"prettyPrint\": {\n \"default\": \"true\",\n \"description\": - \"Returns response with indentations and line breaks.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"access_token\": {\n - \ \"location\": \"query\",\n \"description\": \"OAuth access token.\",\n - \ \"type\": \"string\"\n },\n \"key\": {\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"upload_protocol\": - {\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"callback\": - {\n \"description\": \"JSONP\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"oauth_token\": {\n \"description\": \"OAuth - 2.0 token for the current user.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"quotaUser\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n \"kind\": - \"discovery#restDescription\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"description\": \"The YouTube Data API v3 is an API that provides access - to YouTube data, such as videos, playlists, and channels.\",\n \"schemas\": - {\n \"ActivityContentDetailsPromotedItem\": {\n \"description\": \"Details - about a resource which is being promoted.\",\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\"\n },\n \"descriptionText\": {\n \"description\": - \"The text description to accompany the promoted item.\",\n \"type\": - \"string\"\n },\n \"clickTrackingUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user clicked through on this promoted item.\"\n },\n - \ \"customCtaButtonText\": {\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\",\n \"type\": \"string\"\n },\n \"impressionUrl\": - {\n \"description\": \"The list of impression URLs. The client should - ping all of these URLs to indicate that the user was shown this promoted item.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"forecastingUrl\": {\n \"description\": - \"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.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"creativeViewUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\",\n \"type\": \"string\"\n },\n \"destinationUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should direct the user to, if the user chooses to visit the advertiser's - website.\"\n },\n \"ctaType\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"description\": \"The type of call-to-action, a message - to the user indicating action that can be taken.\"\n },\n \"adTag\": - {\n \"description\": \"The URL the client should fetch to request - a promoted item.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"PlaylistItemStatus\": {\n \"id\": - \"PlaylistItemStatus\",\n \"properties\": {\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"This resource's privacy status.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Information about the playlist item's privacy - status.\",\n \"type\": \"object\"\n },\n \"LocalizedProperty\": - {\n \"id\": \"LocalizedProperty\",\n \"type\": \"object\",\n \"properties\": - {\n \"default\": {\n \"type\": \"string\"\n },\n \"localized\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n }\n },\n \"defaultLanguage\": - {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The - language of the default property.\"\n }\n }\n },\n \"LiveBroadcastStatistics\": - {\n \"properties\": {\n \"concurrentViewers\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"type\": \"string\"\n },\n \"totalChatCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The total - number of live chat messages currently on the broadcast. The property and - its value will be present if the broadcast is public, has the live chat feature - enabled, and has at least one message. Note that this field will not be filled - after the broadcast ends. So this property would not identify the number of - chat messages for an archived video of a completed live broadcast.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Statistics about the live broadcast. These represent a snapshot of the values - at the time of the request. Statistics are only returned for live broadcasts.\",\n - \ \"id\": \"LiveBroadcastStatistics\"\n },\n \"InvideoBranding\": - {\n \"id\": \"InvideoBranding\",\n \"properties\": {\n \"targetChannelId\": - {\n \"description\": \"The channel to which this branding links. - If not present it defaults to the current channel.\",\n \"type\": - \"string\"\n },\n \"imageBytes\": {\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"type\": \"string\",\n \"format\": \"byte\"\n },\n - \ \"imageUrl\": {\n \"description\": \"The url of the uploaded - image. Only used in apiary to api communication.\",\n \"type\": \"string\"\n - \ },\n \"timing\": {\n \"description\": \"The temporal - position within the video where watermark will be displayed.\",\n \"$ref\": - \"InvideoTiming\"\n },\n \"position\": {\n \"$ref\": - \"InvideoPosition\",\n \"description\": \"The spatial position within - the video where the branding watermark will be displayed.\"\n }\n },\n - \ \"description\": \"LINT.IfChange Describes an invideo branding.\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that the user subscribed to.\"\n - \ }\n },\n \"description\": \"Information about a channel - that a user subscribed to.\",\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsSubscription\"\n },\n \"ChannelSection\": {\n - \ \"id\": \"ChannelSection\",\n \"type\": \"object\",\n \"properties\": - {\n \"targeting\": {\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\",\n \"$ref\": - \"ChannelSectionTargeting\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelSection\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the channel section, such as its type, style and title.\",\n \"$ref\": - \"ChannelSectionSnippet\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"description\": \"Localizations - for different languages\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ChannelSectionContentDetails\",\n \"description\": \"The contentDetails - object contains details about the channel section content, such as a list - of playlists or channels featured in the section.\"\n }\n }\n - \ },\n \"VideoGetRatingResponse\": {\n \"id\": \"VideoGetRatingResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - ratings that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"VideoRating\"\n }\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoGetRatingResponse\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatTextMessageDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"messageText\": {\n \"type\": - \"string\",\n \"description\": \"The user's message.\"\n }\n - \ },\n \"id\": \"LiveChatTextMessageDetails\"\n },\n \"ChannelListResponse\": - {\n \"properties\": {\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"default\": \"youtube#channelListResponse\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Channel\"\n },\n \"type\": \"array\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ChannelListResponse\"\n },\n - \ \"SubscriptionContentDetails\": {\n \"properties\": {\n \"activityType\": - {\n \"description\": \"The type of activity this subscription is - for (only uploads, everything).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ]\n },\n \"newItemCount\": - {\n \"description\": \"The number of new items in the subscription - since its content was last read.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"totalItemCount\": {\n \"description\": - \"The approximate number of items that the subscription points to.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n }\n },\n \"id\": - \"SubscriptionContentDetails\",\n \"type\": \"object\",\n \"description\": - \"Details about the content to witch a subscription refers.\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n \"default\": - \"youtube#thirdPartyLinkListResponse\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"SearchResult\": {\n \"id\": \"SearchResult\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#searchResult\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"SearchResultSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - a search result, such as its title or description. For example, if the search - result is a video, then the title will be the video's title and the description - will be the video's description.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A search result contains information - about a YouTube video, channel, or playlist that matches the search parameters - specified in an API request. While a search result points to a uniquely identifiable - resource, like a video, it does not have its own persistent data.\"\n },\n - \ \"LiveChatSuperChatDetails\": {\n \"id\": \"LiveChatSuperChatDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"amountMicros\": - {\n \"type\": \"string\",\n \"description\": \"The amount - purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": - \"uint64\"\n },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the user to this Super Chat - event.\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"tier\": {\n \"type\": \"integer\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"format\": \"uint32\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n }\n - \ }\n },\n \"VideoAbuseReportSecondaryReason\": {\n \"type\": - \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"properties\": - {\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label for this abuse report secondary reason.\"\n },\n - \ \"id\": {\n \"description\": \"The ID of this abuse report - secondary reason.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"CommentThreadReplies\": {\n \"description\": \"Comments - written in (direct or indirect) reply to the top level comment.\",\n \"type\": - \"object\",\n \"properties\": {\n \"comments\": {\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"description\": - \"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.\",\n \"type\": \"array\"\n }\n - \ },\n \"id\": \"CommentThreadReplies\"\n },\n \"AbuseType\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"AbuseType\"\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"id\": \"LiveChatFanFundingEventDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the fund was made.\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"userComment\": {\n \"description\": \"The comment added - by the user to this fan funding event.\",\n \"type\": \"string\"\n - \ },\n \"amountMicros\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The amount of the fund.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoProcessingDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"fileDetailsAvailability\": - {\n \"description\": \"This value indicates whether file details - are available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingFailureReason\": {\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"uploadFailed\",\n - \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"processingIssuesAvailability\": - {\n \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"thumbnailsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether thumbnail - images have been generated for the video.\"\n },\n \"processingStatus\": - {\n \"description\": \"The video's processing status. This value - indicates whether YouTube was able to process the video or if the video is - still being processed.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"processing\",\n \"succeeded\",\n - \ \"failed\",\n \"terminated\"\n ]\n },\n - \ \"tagSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether keyword (tag) suggestions - are available for the video. Tags can be added to a video's metadata to make - it easier for other users to find the video. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether video editing suggestions, - which might improve video quality or the playback experience, are available - for the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"processingProgress\": - {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n }\n },\n \"id\": - \"VideoProcessingDetails\",\n \"description\": \"Describes processing - status and progress and availability of some other Video resource parts.\"\n - \ },\n \"LiveChatMessageDeletedDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"VideoAbuseReportReasonSnippet\": {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"label\": {\n \"description\": \"The localized label belonging - to this abuse report reason.\",\n \"type\": \"string\"\n },\n - \ \"secondaryReasons\": {\n \"items\": {\n \"$ref\": - \"VideoAbuseReportSecondaryReason\"\n },\n \"description\": - \"The secondary reasons associated with this reason, if any are available. - (There might be 0 or more.)\",\n \"type\": \"array\"\n }\n - \ }\n },\n \"VideoSuggestions\": {\n \"type\": \"object\",\n - \ \"description\": \"Specifies suggestions on how to improve video content, - including encoding hints, tag suggestions, and editor suggestions.\",\n \"id\": - \"VideoSuggestions\",\n \"properties\": {\n \"tagSuggestions\": - {\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"description\": \"A list of keyword tags that could - be added to the video's metadata to increase the likelihood that users will - locate your video when searching or browsing on YouTube.\",\n \"type\": - \"array\"\n },\n \"processingHints\": {\n \"type\": - \"array\",\n \"items\": {\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ]\n - \ },\n \"description\": \"A list of suggestions that may - improve YouTube's ability to process the video.\"\n },\n \"editorSuggestions\": - {\n \"type\": \"array\",\n \"description\": \"A list of - video editing operations that might improve the video quality or playback - experience of the uploaded video.\",\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ],\n - \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ]\n - \ }\n },\n \"processingErrors\": {\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\",\n \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"audioFile\",\n \"imageFile\",\n - \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n - \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n }\n },\n \"processingWarnings\": {\n - \ \"description\": \"A list of reasons why YouTube may have difficulty - transcoding the uploaded video or that might result in an erroneous transcoding. - These warnings are generated before YouTube actually processes the uploaded - video file. In addition, they identify issues that are unlikely to cause the - video processing to fail but that might cause problems such as sync issues, - video artifacts, or a missing audio track.\",\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ]\n },\n \"type\": \"array\"\n }\n }\n - \ },\n \"Channel\": {\n \"description\": \"A *channel* resource - contains information about a YouTube channel.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"additionalProperties\": {\n - \ \"$ref\": \"ChannelLocalization\"\n },\n \"description\": - \"Localizations for different languages\"\n },\n \"auditDetails\": - {\n \"$ref\": \"ChannelAuditDetails\",\n \"description\": - \"The auditionDetails object encapsulates channel data that is relevant for - YouTube Partners during the audition process.\"\n },\n \"statistics\": - {\n \"description\": \"The statistics object encapsulates statistics - for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel, such as its - title, description, and thumbnail images.\"\n },\n \"topicDetails\": - {\n \"$ref\": \"ChannelTopicDetails\",\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the channel.\"\n },\n \"contentOwnerDetails\": {\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"default\": \"youtube#channel\",\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"$ref\": \"ChannelStatus\",\n - \ \"description\": \"The status object encapsulates information about - the privacy status of the channel.\"\n },\n \"conversionPings\": - {\n \"$ref\": \"ChannelConversionPings\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object encapsulates information - about the channel's content.\",\n \"$ref\": \"ChannelContentDetails\"\n - \ },\n \"brandingSettings\": {\n \"description\": \"The - brandingSettings object encapsulates information about the branding of the - channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n }\n - \ },\n \"id\": \"Channel\"\n },\n \"I18nLanguage\": {\n \"id\": - \"I18nLanguage\",\n \"description\": \"An *i18nLanguage* resource identifies - a UI language currently supported by YouTube.\",\n \"properties\": {\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n language.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#i18nLanguage\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"I18nLanguageSnippet\",\n \"description\": \"The snippet object - contains basic details about the i18n language, such as language code and - human-readable name.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoLiveStreamingDetails\": {\n \"properties\": {\n \"scheduledStartTime\": - {\n \"type\": \"string\",\n \"description\": \"The time - that the broadcast is scheduled to begin.\",\n \"format\": \"date-time\"\n - \ },\n \"actualEndTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The time that - the broadcast actually ended. This value will not be available until the broadcast - is over.\"\n },\n \"scheduledEndTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The time that the broadcast is - scheduled to end. If the value is empty or the property is not present, then - the broadcast is scheduled to contiue indefinitely.\",\n \"type\": - \"string\"\n },\n \"concurrentViewers\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n },\n - \ \"actualStartTime\": {\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast actually started. This value will not be available - until the broadcast begins.\",\n \"format\": \"date-time\"\n },\n - \ \"activeLiveChatId\": {\n \"description\": \"The ID of the - currently active live chat attached to this video. This field is filled only - if the video is a currently live broadcast that has live chat. Once the broadcast - transitions to complete this field will be removed and the live chat closed - down. For persistent broadcasts that live chat id will no longer be tied to - this video but rather to the new video being displayed at the persistent page.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Details about the live streaming metadata.\",\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"type\": \"object\"\n },\n \"ChannelSectionSnippet\": {\n \"description\": - \"Basic details about a channel section, including title, style and position.\",\n - \ \"id\": \"ChannelSectionSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"defaultLanguage\": {\n \"description\": \"The language - of the channel section's default title and description.\",\n \"type\": - \"string\"\n },\n \"style\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The style of the channel section.\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that published the channel section.\",\n - \ \"type\": \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized title, read-only.\",\n \"$ref\": \"ChannelSectionLocalization\"\n - \ },\n \"title\": {\n \"description\": \"The channel - section's title for multiple_playlists and multiple_channels.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"type\": \"string\",\n - \ \"description\": \"The type of the channel section.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ]\n },\n \"position\": - {\n \"format\": \"uint32\",\n \"description\": \"The position - of the channel section in the channel.\",\n \"type\": \"integer\"\n - \ }\n }\n },\n \"CdnSettings\": {\n \"properties\": - {\n \"frameRate\": {\n \"type\": \"string\",\n \"description\": - \"The frame rate of the inbound video data.\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n \"description\": - \"The ingestionInfo object contains information that YouTube provides that - you need to transmit your RTMP or HTTP stream to YouTube.\"\n },\n - \ \"resolution\": {\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\"\n },\n \"ingestionType\": {\n \"description\": - \" The method or protocol used to transmit the video stream.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"enum\": [\n \"rtmp\",\n - \ \"dash\",\n \"webrtc\",\n \"hls\"\n ],\n - \ \"type\": \"string\"\n },\n \"format\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The format of - the video stream that you are sending to Youtube. \"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Brief description of - the live stream cdn settings.\",\n \"id\": \"CdnSettings\"\n },\n - \ \"VideoSuggestionsTagSuggestion\": {\n \"description\": \"A single - tag suggestion with it's relevance information.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"tag\": {\n \"type\": \"string\",\n - \ \"description\": \"The keyword tag suggested for the video.\"\n - \ },\n \"categoryRestricts\": {\n \"type\": \"array\",\n - \ \"description\": \"A set of video categories for which the tag is - relevant. You can use this information to display appropriate tag suggestions - based on the video category that the video uploader associates with the video. - By default, tag suggestions are relevant for all categories if there are no - restricts defined for the keyword.\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"id\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"ContentRating\": {\n \"type\": \"object\",\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\",\n \"id\": \"ContentRating\",\n \"properties\": - {\n \"menaMpaaRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n - \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n - \ ],\n \"description\": \"The rating system for MENA countries, - a clone of MPAA. It is needed to prevent titles go live w/o additional QC - check, since some of them can be inappropriate for the countries at all. See - b/33408548 for more details.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ]\n },\n \"rtcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"description\": \"The video's General Directorate - of Radio, Television and Cinematography (Mexico) rating.\",\n \"type\": - \"string\",\n \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ]\n },\n - \ \"anatelRating\": {\n \"description\": \"The video's Anatel - (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\",\n - \ \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n - \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n - \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n - \ \"anatelUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"chfilmRating\": {\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Switzerland.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"rteRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ]\n },\n \"czfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"czfilmUnspecified\",\n \"czfilmU\",\n \"czfilm12\",\n - \ \"czfilm14\",\n \"czfilm18\",\n \"czfilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in the Czech Republic.\"\n },\n \"bbfcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ],\n - \ \"description\": \"The video's British Board of Film Classification - (BBFC) rating.\",\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"mccypRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ]\n },\n \"fcoRating\": - {\n \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Hong Kong's Office for Film, Newspaper and Article Administration.\"\n - \ },\n \"tvpgRating\": {\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"description\": \"The video's TV - Parental Guidelines (TVPG) rating.\",\n \"type\": \"string\"\n },\n - \ \"kijkwijzerRating\": {\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's NICAM/Kijkwijzer rating from the - Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ]\n },\n \"csaRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"Interdiction\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from France's Conseil sup\xE9rieur - de l\u2019audiovisuel, which rates broadcast content.\",\n \"enum\": - [\n \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n - \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n - \ \"csaUnrated\"\n ]\n },\n \"eirinRating\": - {\n \"description\": \"The video's Eirin (\u6620\u502B) rating. Eirin - is the Japanese rating system.\",\n \"type\": \"string\",\n \"enum\": - [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ]\n },\n \"mocRating\": {\n \"enum\": [\n - \ \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ],\n \"description\": \"The video's Ministerio de Cultura - (Colombia) rating.\",\n \"type\": \"string\"\n },\n \"smaisRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ],\n \"description\": \"The - video's rating in Iceland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"L\",\n \"7\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"cnaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"description\": \"The - video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n - \ \"type\": \"string\"\n },\n \"fmocRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ],\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ],\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\",\n \"type\": - \"string\"\n },\n \"mccaaRating\": {\n \"enum\": [\n - \ \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"type\": - \"string\"\n },\n \"kfcbRating\": {\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"enum\": - [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"mdaRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG13\",\n \"NC16\",\n - \ \"M18\",\n \"R21\",\n \"\"\n ],\n - \ \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Singapore's - Media Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\"\n },\n \"cccRating\": {\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Todo espectador\",\n - \ \"6+ - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n - \ \"18+\",\n \"18+ - contenido excesivamente violento\",\n - \ \"18+ - contenido pornogr\xE1fico\",\n \"\"\n ]\n - \ },\n \"djctqRatingReasons\": {\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Brazil - rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia - (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n - \ \"Conte\xFAdo sexual (Sexual content)\",\n \"Nudez - (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo Expl\xEDcito - (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ]\n },\n \"description\": \"Reasons that explain - why the video received its DJCQT (Brazil) rating.\",\n \"type\": - \"array\"\n },\n \"icaaRating\": {\n \"description\": - \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales - (ICAA - Spain) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ]\n },\n - \ \"lsfRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Indonesia's - Lembaga Sensor Film.\"\n },\n \"cceRating\": {\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ]\n },\n \"chvrsRating\": {\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ],\n \"enum\": [\n - \ \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ]\n },\n - \ \"mtrcbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"R-13\",\n \"R-16\",\n - \ \"R-18\",\n \"X\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ],\n \"description\": \"The - video's rating from the Movie and Television Review and Classification Board - (Philippines).\"\n },\n \"ilfilmRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Israel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"fskRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"FSK - 0\",\n \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\",\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"nfvcbRating\": {\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Nigeria's National Film and Video Censors Board.\",\n \"type\": - \"string\"\n },\n \"egfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Egypt.\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"bmukkRating\": {\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"kmrbRating\": {\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"enum\": - [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ]\n },\n \"medietilsynetRating\": - {\n \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Medietilsynet, the Norwegian Media Authority.\"\n },\n \"moctwRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n \"enum\": - [\n \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n - \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n - \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ]\n },\n \"skfilmRating\": {\n \"enum\": - [\n \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n - \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Slovakia.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"acbRating\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ]\n },\n \"grfilmRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Greece.\",\n \"enum\": - [\n \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n - \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n - \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n - \ ]\n },\n \"nbcplRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n - \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n - \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ],\n - \ \"description\": \"The video's rating in Poland.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"fcbmRating\": {\n \"description\": \"The video's rating - from Malaysia's Film Censorship Board.\",\n \"enum\": [\n \"fcbmUnspecified\",\n - \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n - \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n - \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ]\n },\n \"russiaRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - National Film Registry of the Russian Federation (MKRF - Russia) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ]\n },\n \"ytRating\": {\n \"enum\": [\n - \ \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n - \ \"description\": \"A rating that YouTube uses to identify age-restricted - content.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"nmcRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ]\n - \ },\n \"mekuRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"description\": - \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti - (National Audiovisual Institute).\",\n \"type\": \"string\"\n },\n - \ \"catvRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n - \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ],\n \"description\": - \"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.\"\n },\n \"cscfRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Luxembourg's Commission - de surveillance de la classification des films (CSCF).\",\n \"type\": - \"string\",\n \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ]\n },\n \"djctqRating\": {\n \"enum\": [\n - \ \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n - \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n - \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n - \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n - \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n - \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n - \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n - \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"bfvcRating\": {\n \"enum\": [\n - \ \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Thailand's Board of Film and Video Censors.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ]\n },\n - \ \"mcstRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"P\",\n \"0\",\n \"C13\",\n \"C16\",\n - \ \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n \"\"\n - \ ],\n \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating system for Vietnam - MCST\"\n - \ },\n \"nkclvRating\": {\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Nacion\xE3lais - Kino centrs (National Film Centre of Latvia).\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"smsaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"pefilmRating\": {\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"description\": - \"The video's rating in Peru.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"eefilmRating\": {\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n - \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n - \ \"K-16\",\n \"\"\n ],\n \"description\": - \"The video's rating in Estonia.\"\n },\n \"cicfRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ],\n \"description\": \"The - video's rating from the Commission de Contr\xF4le des Films (Belgium).\"\n - \ },\n \"ecbmctRating\": {\n \"description\": \"Rating - system in Turkey - Evaluation and Classification Board of the Ministry of - Culture and Tourism\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"mpaaRating\": - {\n \"description\": \"The video's Motion Picture Association of - America (MPAA) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"NC-17\",\n \"! X\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"mpaaUnspecified\",\n - \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n - \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n - \ \"mpaaUnrated\"\n ]\n },\n \"fpbRatingReasons\": - {\n \"type\": \"array\",\n \"description\": \"Reasons that - explain why the video received its FPB (South Africa) rating.\",\n \"items\": - {\n \"type\": \"string\",\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"South Africa rating content descriptors.\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"nbcRating\": - {\n \"description\": \"The video's rating from the Maldives National - Bureau of Classification.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ]\n },\n - \ \"fpbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X18\",\n - \ \"XX\",\n \"\",\n \"10\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\"\n },\n - \ \"rcnofRating\": {\n \"description\": \"The video's rating - from the Hungarian Nemzeti Filmiroda, the Rating Committee of the National - Office of Film.\",\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"catvfrRating\": - {\n \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ],\n \"description\": \"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.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ]\n },\n \"agcomRating\": {\n \"enum\": [\n - \ \"agcomUnspecified\",\n \"agcomT\",\n \"agcomVm14\",\n - \ \"agcomVm18\",\n \"agcomUnrated\"\n ],\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ]\n },\n \"ifcoRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Irish Film Classification Office - (IFCO - Ireland) rating. See the IFCO website for more information.\"\n },\n - \ \"cncRating\": {\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Rating system in France - Commission de classification - cinematographique\",\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"E\",\n \"interdiction\",\n \"\"\n - \ ]\n },\n \"incaaRating\": {\n \"enum\": [\n - \ \"incaaUnspecified\",\n \"incaaAtp\",\n \"incaaSam13\",\n - \ \"incaaSam16\",\n \"incaaSam18\",\n \"incaaC\",\n - \ \"incaaUnrated\"\n ],\n \"description\": \"The - video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"nfrcRating\": {\n \"enum\": [\n \"nfrcUnspecified\",\n - \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n - \ \"nfrcX\",\n \"nfrcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Bulgarian - National Film Center.\"\n },\n \"mpaatRating\": {\n \"enum\": - [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"description\": \"The rating - system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\"\n },\n \"mibacRating\": {\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\",\n \"type\": \"string\",\n \"enum\": - [\n \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n - \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n - \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"cbfcRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"description\": \"The video's Central Board of Film - Certification (CBFC - India) rating.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ]\n },\n \"resorteviolenciaRating\": - {\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ],\n \"description\": - \"The video's rating in Venezuela.\"\n },\n \"oflcRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"M\",\n \"R13\",\n - \ \"R15\",\n \"R16\",\n \"R18\",\n \"\",\n - \ \"RP13\",\n \"RP16\",\n \"RP18\"\n ],\n - \ \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"description\": \"The video's - Office of Film and Literature Classification (OFLC - New Zealand) rating.\"\n - \ }\n }\n },\n \"LiveStreamConfigurationIssue\": {\n \"id\": - \"LiveStreamConfigurationIssue\",\n \"properties\": {\n \"reason\": - {\n \"description\": \"The short-form reason for this issue.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"The long-form description of the issue and how to resolve it.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n - \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n - \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n - \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n - \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n - \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"description\": \"The kind of error happening.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"severity\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"How severe this issue is to the stream.\",\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"SubscriptionListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"SubscriptionListResponse\",\n \"properties\": {\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Subscription\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of subscriptions that match the request criteria.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"default\": \"youtube#subscriptionListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n }\n - \ }\n },\n \"LiveBroadcastSnippet\": {\n \"id\": \"LiveBroadcastSnippet\",\n - \ \"properties\": {\n \"scheduledStartTime\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the broadcast is scheduled to start.\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the broadcast was added to YouTube's live broadcast schedule.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\"\n },\n \"isDefaultBroadcast\": - {\n \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\",\n \"type\": \"boolean\"\n },\n - \ \"actualStartTime\": {\n \"description\": \"The date and - time that the broadcast actually started. This information is only available - once the broadcast's state is live.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that is publishing the broadcast.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - broadcast. For each nested object in this object, the key is the name of the - thumbnail image, and the value is an object that contains other information - about the thumbnail.\"\n },\n \"scheduledEndTime\": {\n \"description\": - \"The date and time that the broadcast is scheduled to end.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the live chat for this broadcast.\"\n },\n \"actualEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - broadcast information.\"\n },\n \"MemberListResponse\": {\n \"id\": - \"MemberListResponse\",\n \"properties\": {\n \"items\": {\n \"items\": - {\n \"$ref\": \"Member\"\n },\n \"description\": - \"A list of members that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n \"description\": - \"DEPRECATED Region restriction of the video.\",\n \"properties\": {\n - \ \"blocked\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of region codes that identify - countries where the video is blocked. If this property is present and a country - is not listed in its value, then the video is viewable in that country. If - this property is present and contains an empty list, the video is viewable - in all countries.\",\n \"type\": \"array\"\n },\n \"allowed\": - {\n \"type\": \"array\",\n \"description\": \"A list of - region codes that identify countries where the video is viewable. If this - property is present and a country is not listed in its value, then the video - is blocked from appearing in that country. If this property is present and - contains an empty list, the video is blocked in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"type\": - \"object\"\n },\n \"VideoLocalization\": {\n \"description\": \"Localized - versions of certain video properties (e.g. title).\",\n \"type\": \"object\",\n - \ \"id\": \"VideoLocalization\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's title.\"\n },\n \"description\": {\n - \ \"description\": \"Localized version of the video's description.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoMonetizationDetails\": - {\n \"type\": \"object\",\n \"description\": \"Details about monetization - of a YouTube Video.\",\n \"properties\": {\n \"access\": {\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\",\n - \ \"$ref\": \"AccessPolicy\"\n }\n },\n \"id\": \"VideoMonetizationDetails\"\n - \ },\n \"LiveChatModeratorListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatModeratorListResponse\",\n \"properties\": {\n - \ \"items\": {\n \"description\": \"A list of moderators that - match the request criteria.\",\n \"items\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"type\": \"array\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ActivitySnippet\": {\n \"description\": \"Basic details - about an activity, including title, description, thumbnails, activity type - and group. Next ID: 12\",\n \"properties\": {\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel associated with the activity.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the resource primarily associated - with the activity. @mutable youtube.activities.insert\"\n },\n \"title\": - {\n \"description\": \"The title of the resource primarily associated - with the activity.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n - \ \"like\",\n \"favorite\",\n \"comment\",\n - \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n - \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ],\n \"description\": \"The - type of activity that the resource describes.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the video was uploaded.\"\n - \ },\n \"thumbnails\": {\n \"description\": \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"groupId\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel responsible for - this activity\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ActivitySnippet\"\n },\n \"LiveStreamContentDetails\": {\n \"id\": - \"LiveStreamContentDetails\",\n \"type\": \"object\",\n \"description\": - \"Detailed settings of a stream.\",\n \"properties\": {\n \"closedCaptionsIngestionUrl\": - {\n \"type\": \"string\",\n \"description\": \"The ingestion - URL where the closed captions of this stream are sent.\"\n },\n \"isReusable\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the stream is reusable, which means that it can be bound to multiple - broadcasts. It is common for broadcasters to reuse the same stream for many - different broadcasts if those broadcasts occur at different times. If you - set this value to false, then the stream will not be reusable, which means - that it can only be bound to one broadcast. Non-reusable streams differ from - reusable streams in the following ways: - A non-reusable stream can only be - bound to one broadcast. - A non-reusable stream might be deleted by an automated - process after the broadcast ends. - The liveStreams.list method does not list - non-reusable streams if you call the method and set the mine parameter to - true. The only way to use that method to retrieve the resource for a non-reusable - stream is to use the id parameter to identify the stream. \"\n }\n - \ }\n },\n \"LiveChatModerator\": {\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#liveChatModerator\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the moderator.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatModeratorSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the moderator.\"\n }\n },\n \"description\": \"A *liveChatModerator* - resource represents a moderator for a YouTube live chat. A chat moderator - has the ability to ban/unban users from a chat, remove message, etc.\",\n - \ \"id\": \"LiveChatModerator\",\n \"type\": \"object\"\n },\n - \ \"ChannelBannerResource\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\"\n },\n \"url\": {\n \"description\": - \"The URL of this banner image.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\"\n }\n },\n - \ \"id\": \"ChannelBannerResource\",\n \"description\": \"A channel - banner returned as the response to a channel_banner.insert call.\",\n \"type\": - \"object\"\n },\n \"AccessPolicy\": {\n \"description\": \"Rights - management policy for YouTube resources.\",\n \"id\": \"AccessPolicy\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"allowed\": - {\n \"description\": \"The value of allowed indicates whether the - access to the policy is allowed or denied by default.\",\n \"type\": - \"boolean\"\n },\n \"exception\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"type\": \"array\"\n }\n }\n },\n - \ \"InvideoPosition\": {\n \"type\": \"object\",\n \"properties\": - {\n \"type\": {\n \"enum\": [\n \"corner\"\n ],\n - \ \"enumDescriptions\": [\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"Defines the position type.\"\n },\n - \ \"cornerPosition\": {\n \"description\": \"Describes in which - corner of the video the visual widget will appear.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n - \ \"bottomRight\"\n ]\n }\n },\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"id\": \"InvideoPosition\"\n },\n \"MembershipsDurationAtLevel\": - {\n \"properties\": {\n \"level\": {\n \"type\": \"string\",\n - \ \"description\": \"Pricing level ID.\"\n },\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member for the given level.\",\n \"type\": \"string\"\n },\n - \ \"memberTotalDurationMonths\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"description\": \"The cumulative - time the user has been a member for the given level in complete months (the - time is rounded down to the nearest integer).\"\n }\n },\n \"id\": - \"MembershipsDurationAtLevel\",\n \"type\": \"object\"\n },\n \"LiveStreamHealthStatus\": - {\n \"id\": \"LiveStreamHealthStatus\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"status\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"good\",\n - \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n - \ ],\n \"description\": \"The status code of this stream\",\n - \ \"type\": \"string\"\n },\n \"configurationIssues\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n },\n \"description\": - \"The configurations issues on this stream\"\n },\n \"lastUpdateTimeSeconds\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The last time this status was updated (in seconds)\"\n }\n }\n - \ },\n \"Cuepoint\": {\n \"type\": \"object\",\n \"description\": - \"Note that there may be a 5-second end-point resolution issue. For instance, - if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\"\n },\n \"durationSecs\": - {\n \"format\": \"uint32\",\n \"description\": \"The duration - of this cuepoint.\",\n \"type\": \"integer\"\n },\n \"walltimeMs\": - {\n \"format\": \"uint64\",\n \"description\": \"The wall - clock time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\",\n \"type\": \"string\"\n - \ },\n \"insertionOffsetTimeMs\": {\n \"format\": \"int64\",\n - \ \"description\": \"The time when the cuepoint should be inserted - by offset to the broadcast actual start time.\",\n \"type\": \"string\"\n - \ },\n \"cueType\": {\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The identifier for cuepoint resource.\"\n }\n },\n \"id\": - \"Cuepoint\"\n },\n \"ActivityContentDetailsBulletin\": {\n \"description\": - \"Details about a channel bulletin post.\",\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsBulletin\",\n \"properties\": {\n - \ \"resourceId\": {\n \"description\": \"The resourceId object - contains information that identifies the resource associated with a bulletin - post. @mutable youtube.activities.insert\",\n \"$ref\": \"ResourceId\"\n - \ }\n }\n },\n \"PageInfo\": {\n \"description\": \"Paging - details for lists of resources, including total number of items available - and number of resources returned in a single page.\",\n \"properties\": - {\n \"resultsPerPage\": {\n \"description\": \"The number - of results included in the API response.\",\n \"type\": \"integer\",\n - \ \"format\": \"int32\"\n },\n \"totalResults\": {\n - \ \"description\": \"The total number of results in the result set.\",\n - \ \"type\": \"integer\",\n \"format\": \"int32\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"PageInfo\"\n },\n - \ \"VideoFileDetailsVideoStream\": {\n \"type\": \"object\",\n \"properties\": - {\n \"frameRateFps\": {\n \"description\": \"The video stream's - frame rate, in frames per second.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n },\n \"bitrateBps\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The video - stream's bitrate, in bits per second.\"\n },\n \"heightPixels\": - {\n \"format\": \"uint32\",\n \"description\": \"The encoded - video content's height in pixels.\",\n \"type\": \"integer\"\n },\n - \ \"rotation\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ],\n \"description\": \"The amount - that YouTube needs to rotate the original source content to properly display - the video.\"\n },\n \"vendor\": {\n \"type\": \"string\",\n - \ \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\"\n },\n \"aspectRatio\": - {\n \"format\": \"double\",\n \"type\": \"number\",\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\"\n },\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The video - codec that the stream uses.\"\n },\n \"widthPixels\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\"\n }\n },\n - \ \"description\": \"Information about a video stream.\",\n \"id\": - \"VideoFileDetailsVideoStream\"\n },\n \"PlaylistContentDetails\": {\n - \ \"id\": \"PlaylistContentDetails\",\n \"properties\": {\n \"itemCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n },\n \"type\": - \"object\"\n },\n \"I18nRegion\": {\n \"type\": \"object\",\n \"id\": - \"I18nRegion\",\n \"description\": \"A *i18nRegion* resource identifies - a region where YouTube is available.\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#i18nRegion\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the i18n region, such as region code and human-readable - name.\",\n \"$ref\": \"I18nRegionSnippet\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the i18n region.\"\n }\n }\n - \ },\n \"CommentSnippet\": {\n \"properties\": {\n \"likeCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total number of likes this comment has received.\"\n },\n \"authorProfileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - the avatar of the user who posted the comment.\"\n },\n \"updatedAt\": - {\n \"description\": \"The date and time when the comment was last - updated.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"moderationStatus\": {\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment is - awaiting review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ]\n },\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"textDisplay\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time when the comment - was originally published.\"\n },\n \"authorChannelId\": {\n - \ \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"viewerRating\": - {\n \"description\": \"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.\",\n \"enum\": [\n - \ \"none\",\n \"like\",\n \"dislike\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ]\n },\n \"authorChannelUrl\": {\n \"description\": - \"Link to the author's YouTube channel, if any.\",\n \"type\": \"string\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comment refers to, if any.\"\n },\n \"canRate\": - {\n \"description\": \"Whether the current viewer can rate this comment.\",\n - \ \"type\": \"boolean\"\n },\n \"textOriginal\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"parentId\": - {\n \"type\": \"string\",\n \"description\": \"The unique - id of the parent comment, only set for replies.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n }\n },\n \"id\": \"CommentSnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about a comment, such - as its author and text.\"\n },\n \"LiveChatSuperStickerDetails\": {\n - \ \"properties\": {\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\"\n },\n \"amountMicros\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ },\n \"tier\": {\n \"description\": \"The tier in - which the amount belongs. Lower amounts belong to lower tiers. The lowest - tier is 1.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"superStickerMetadata\": {\n \"description\": - \"Information about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"Entity\": {\n \"properties\": {\n \"typeId\": {\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\"\n },\n \"url\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Entity\"\n - \ },\n \"VideoCategoryListResponse\": {\n \"id\": \"VideoCategoryListResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoCategoryListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n },\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SuperStickerMetadata\": {\n \"id\": \"SuperStickerMetadata\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"altTextLanguage\": - {\n \"description\": \"Specifies the localization language in which - the alt text is returned.\",\n \"type\": \"string\"\n },\n - \ \"stickerId\": {\n \"description\": \"Unique identifier of - the Super Sticker. This is a shorter form of the alt_text that includes pack - name and a recognizable characteristic of the sticker.\",\n \"type\": - \"string\"\n },\n \"altText\": {\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ThumbnailSetResponse\": {\n \"id\": \"ThumbnailSetResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n \"default\": - \"youtube#thumbnailSetResponse\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of thumbnails.\",\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n }\n }\n }\n },\n \"ActivityContentDetailsFavorite\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"description\": \"Information about a video that was marked - as a favorite video.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"CommentThread\": {\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the comment thread and also the top level comment.\",\n - \ \"$ref\": \"CommentThreadSnippet\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentThread\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#commentThread\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the comment thread.\"\n },\n \"replies\": {\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n - \ }\n },\n \"description\": \"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.\",\n \"id\": - \"CommentThread\"\n },\n \"RelatedEntity\": {\n \"properties\": - {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n },\n - \ \"id\": \"RelatedEntity\",\n \"type\": \"object\"\n },\n \"TestItemTestItemSnippet\": - {\n \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\",\n - \ \"type\": \"object\"\n },\n \"PlaylistStatus\": {\n \"properties\": - {\n \"privacyStatus\": {\n \"type\": \"string\",\n \"description\": - \"The playlist's privacy status.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"id\": \"PlaylistStatus\",\n \"type\": \"object\"\n - \ },\n \"VideoAgeGating\": {\n \"properties\": {\n \"videoGameRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"description\": - \"Video game rating, if any.\"\n },\n \"restricted\": {\n \"type\": - \"boolean\",\n \"description\": \"Age-restricted trailers. For redband - trailers and adult-rated video-games. Only users aged 18+ can view the content. - The the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\"\n },\n \"alcoholContent\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Indicates whether - or not the video has alcoholic beverage content. Only users of legal purchasing - age in a particular country, as identified by ICAP, can view the content.\"\n - \ }\n },\n \"id\": \"VideoAgeGating\",\n \"type\": \"object\"\n - \ },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"gifterChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\"\n },\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ }\n }\n },\n \"ActivityContentDetailsSocial\": {\n \"id\": - \"ActivityContentDetailsSocial\",\n \"description\": \"Details about - a social network post.\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\",\n \"$ref\": - \"ResourceId\"\n },\n \"imageUrl\": {\n \"description\": - \"An image of the post's author.\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n - \ \"facebook\",\n \"twitter\"\n ],\n \"description\": - \"The name of the social network.\"\n },\n \"author\": {\n \"type\": - \"string\",\n \"description\": \"The author of the social network - post.\"\n },\n \"referenceUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL of the social network post.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"PlaylistItemSnippet\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistItemSnippet\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails. - Basic details of a YouTube Playlist item provided by the author. Next ID: - 15\",\n \"properties\": {\n \"videoOwnerChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel id for the channel this - video belongs to.\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The id object contains information - that can be used to uniquely identify the resource that is included in the - playlist as the playlist item.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n }\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the user that added the item - to the playlist.\",\n \"type\": \"string\"\n },\n \"playlistId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"description\": {\n \"description\": \"The item's - description.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the playlist item belongs to.\"\n },\n \"title\": - {\n \"description\": \"The item's title.\",\n \"type\": - \"string\"\n },\n \"videoOwnerChannelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel this - video belongs to.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the item - was added to the playlist.\",\n \"format\": \"date-time\"\n },\n - \ \"position\": {\n \"description\": \"The order in which the - item appears in the playlist. The value uses a zero-based index, so the first - item has a position of 0, the second item has a position of 1, and so forth.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"A map of thumbnail images associated with the playlist item. 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.\"\n }\n - \ }\n },\n \"ChannelLocalization\": {\n \"id\": \"ChannelLocalization\",\n - \ \"description\": \"Channel localization setting\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel's description.\"\n },\n \"title\": - {\n \"description\": \"The localized strings for channel's title.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"Playlist\": {\n \"type\": \"object\",\n \"properties\": - {\n \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": - \"The player object contains information that you would use to play the playlist - in an embedded player.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"PlaylistContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - like video count.\"\n },\n \"status\": {\n \"description\": - \"The status object contains status information for the playlist.\",\n \"$ref\": - \"PlaylistStatus\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"PlaylistLocalization\"\n },\n \"description\": \"Localizations - for different languages\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistSnippet\",\n \"description\": \"The snippet object contains - basic details about the playlist, such as its title and description.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlist\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"Playlist\",\n \"description\": - \"A *playlist* resource represents a YouTube playlist. A playlist is a collection - of videos that can be viewed sequentially and shared with other users. A playlist - can contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\"\n },\n \"VideoSnippet\": {\n \"id\": - \"VideoSnippet\",\n \"description\": \"Basic details about a video, including - title, description, uploader, thumbnails and category.\",\n \"properties\": - {\n \"tags\": {\n \"description\": \"A list of keyword tags - associated with the video. Tags may contain spaces.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time when the video was uploaded.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"defaultLanguage\": {\n - \ \"description\": \"The language of the videos's default snippet.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"The video's description. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"channelTitle\": {\n - \ \"description\": \"Channel title for the channel that the video - belongs to.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that the video was uploaded to.\",\n \"type\": \"string\"\n - \ },\n \"defaultAudioLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\"\n },\n \"localized\": - {\n \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\",\n \"$ref\": \"VideoLocalization\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n },\n \"liveBroadcastContent\": - {\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - video category associated with the video.\"\n }\n },\n \"type\": - \"object\"\n },\n \"AbuseReport\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"description\": {\n \"type\": \"string\"\n - \ },\n \"subject\": {\n \"$ref\": \"Entity\"\n },\n - \ \"relatedEntities\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"RelatedEntity\"\n }\n },\n \"abuseTypes\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"AbuseType\"\n }\n }\n },\n \"id\": \"AbuseReport\"\n - \ },\n \"ChannelConversionPings\": {\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"properties\": {\n \"pings\": {\n \"description\": - \"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.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n }\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelConversionPings\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The `visitorId` identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"items\": {\n \"description\": \"A list of valid - abuse reasons that are used with `video.ReportAbuse`.\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportReason\"\n },\n \"type\": - \"array\"\n }\n },\n \"id\": \"VideoAbuseReportReasonListResponse\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"description\": - \"Details about a resource which was added to a channel.\",\n \"type\": - \"object\"\n },\n \"VideoCategory\": {\n \"id\": \"VideoCategory\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video category.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n \"default\": - \"youtube#videoCategory\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n }\n },\n \"description\": \"A *videoCategory* - resource identifies a category that has been or could be associated with uploaded - videos.\",\n \"type\": \"object\"\n },\n \"ChannelBrandingSettings\": - {\n \"type\": \"object\",\n \"properties\": {\n \"channel\": - {\n \"description\": \"Branding properties for the channel view.\",\n - \ \"$ref\": \"ChannelSettings\"\n },\n \"watch\": {\n - \ \"description\": \"Branding properties for the watch page.\",\n - \ \"$ref\": \"WatchSettings\"\n },\n \"image\": {\n - \ \"description\": \"Branding properties for branding images.\",\n - \ \"$ref\": \"ImageSettings\"\n },\n \"hints\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"PropertyValue\"\n },\n \"description\": \"Additional experimental - branding properties.\"\n }\n },\n \"id\": \"ChannelBrandingSettings\",\n - \ \"description\": \"Branding properties of a YouTube channel.\"\n },\n - \ \"LiveBroadcastListResponse\": {\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveBroadcastListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"A list of broadcasts that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n }\n - \ },\n \"ChannelProfileDetails\": {\n \"properties\": {\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The channel's display name.\"\n - \ },\n \"channelId\": {\n \"description\": \"The YouTube - channel ID.\",\n \"type\": \"string\"\n },\n \"channelUrl\": - {\n \"description\": \"The channel's URL.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ChannelProfileDetails\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetails\": {\n \"properties\": - {\n \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\"\n },\n \"bulletin\": {\n \"$ref\": - \"ActivityContentDetailsBulletin\",\n \"description\": \"The bulletin - object contains details about a channel bulletin post. This object is only - present if the snippet.type is bulletin.\"\n },\n \"social\": - {\n \"description\": \"The social object contains details about a - social network post. This property is only present if the snippet.type is - social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n },\n - \ \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"promotedItem\": {\n \"description\": - \"The promotedItem object contains details about a resource which is being - promoted. This property is only present if the snippet.type is promotedItem.\",\n - \ \"$ref\": \"ActivityContentDetailsPromotedItem\"\n },\n \"like\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsLike\"\n - \ },\n \"upload\": {\n \"$ref\": \"ActivityContentDetailsUpload\",\n - \ \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\"\n - \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\"\n },\n \"subscription\": {\n \"description\": - \"The subscription object contains information about a channel that a user - subscribed to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"favorite\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"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.\"\n }\n },\n \"description\": - \"Details about the content of an activity: the video that was shared, the - channel that was subscribed to, etc.\",\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetails\"\n },\n \"Comment\": {\n \"type\": \"object\",\n - \ \"id\": \"Comment\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the comment.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#comment\\\".\",\n \"default\": - \"youtube#comment\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment.\"\n }\n - \ },\n \"description\": \"A *comment* represents a single YouTube - comment.\"\n },\n \"ChannelConversionPing\": {\n \"properties\": - {\n \"context\": {\n \"description\": \"Defines the context - of the ping.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"conversionUrl\": {\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelConversionPing\",\n - \ \"description\": \"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.\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viever is a member. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"memberMonth\": {\n \"description\": \"The total amount - of months (rounded up) the viewer has been a member that granted them this - Member Milestone Chat. This is the same number of months as is being displayed - to YouTube users.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the member to this Member Milestone Chat. This field - is empty for messages without a comment from the member.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"type\": \"object\"\n },\n \"I18nLanguageListResponse\": {\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of supported i18n languages. In this map, the i18n language ID is the - map key, and its value is the corresponding i18nLanguage resource.\",\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n },\n \"type\": - \"array\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"id\": \"I18nLanguageListResponse\",\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"type\": \"object\",\n - \ \"description\": \"Information that identifies the recommended resource.\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the recommended resource.\"\n },\n \"reason\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that the resource is recommended to the user.\",\n \"enum\": - [\n \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"type\": \"string\"\n - \ },\n \"seedResourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\"\n }\n },\n - \ \"id\": \"ActivityContentDetailsRecommendation\"\n },\n \"LanguageTag\": - {\n \"type\": \"object\",\n \"id\": \"LanguageTag\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"VideoCategorySnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"description\": \"The YouTube channel - that created the video category.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The video category's title.\"\n - \ },\n \"assignable\": {\n \"type\": \"boolean\"\n }\n - \ },\n \"id\": \"VideoCategorySnippet\",\n \"description\": - \"Basic details about a video category, such as its localized title.\"\n },\n - \ \"MembershipsDetails\": {\n \"id\": \"MembershipsDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"highestAccessibleLevel\": - {\n \"description\": \"Id of the highest level that the user has - access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"highestAccessibleLevelDisplayName\": {\n \"type\": \"string\",\n - \ \"description\": \"Display name for the highest level that the user - has access to at the moment.\"\n },\n \"membershipsDuration\": - {\n \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\",\n \"$ref\": \"MembershipsDuration\"\n - \ },\n \"membershipsDurationAtLevels\": {\n \"description\": - \"Data about memberships duration on particular pricing levels.\",\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"type\": - \"array\"\n },\n \"accessibleLevels\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"Ids of all levels that the user has access to. - This includes the currently active level and all other levels that are included - because of a higher purchase.\"\n }\n }\n },\n \"MemberSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"memberDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the member.\"\n },\n \"creatorChannelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The id of the - channel that's offering memberships.\"\n },\n \"membershipsDetails\": - {\n \"$ref\": \"MembershipsDetails\",\n \"description\": - \"Details about the user's membership.\"\n }\n },\n \"id\": - \"MemberSnippet\"\n },\n \"LiveChatMessageAuthorDetails\": {\n \"properties\": - {\n \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channels's avatar URL.\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The channel's display name.\"\n },\n \"isVerified\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author's identity has - been verified by YouTube.\"\n },\n \"isChatModerator\": {\n - \ \"description\": \"Whether the author is a moderator of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"isChatOwner\": - {\n \"description\": \"Whether the author is the owner of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"channelUrl\": - {\n \"description\": \"The channel's URL.\",\n \"type\": - \"string\"\n },\n \"isChatSponsor\": {\n \"description\": - \"Whether the author is a sponsor of the live chat.\",\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageAuthorDetails\"\n },\n \"LevelDetails\": {\n \"id\": - \"LevelDetails\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"displayName\": {\n \"description\": \"The name that should - be used when referring to this level.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ActivityContentDetailsLike\": {\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"Information about a resource that received a positive - (like) rating.\"\n },\n \"VideoFileDetails\": {\n \"id\": \"VideoFileDetails\",\n - \ \"description\": \"Describes original video file properties, including - technical details about audio and video streams, but also metadata information - like content length, digitization time, or geotagging information.\",\n \"properties\": - {\n \"bitrateBps\": {\n \"description\": \"The uploaded video - file's combined (video and audio) bitrate in bits per second.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"container\": - {\n \"description\": \"The uploaded video file's container format.\",\n - \ \"type\": \"string\"\n },\n \"fileType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"video\",\n \"audio\",\n - \ \"image\",\n \"archive\",\n \"document\",\n - \ \"project\",\n \"other\"\n ],\n \"description\": - \"The uploaded file's type as detected by YouTube's video processing engine. - Currently, YouTube only processes video files, but this field is present whether - a video file or another type of file was uploaded.\",\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ]\n },\n \"durationMs\": {\n \"description\": - \"The length of the uploaded video in milliseconds.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"audioStreams\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsAudioStream\"\n },\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\"\n },\n - \ \"fileSize\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\",\n \"format\": \"uint64\"\n - \ },\n \"fileName\": {\n \"description\": \"The uploaded - file's name. This field is present whether a video file or another type of - file was uploaded.\",\n \"type\": \"string\"\n },\n \"creationTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the uploaded video file was created. The value is specified - in ISO 8601 format. Currently, the following ISO 8601 formats are supported: - - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: - YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"videoStreams\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"description\": \"A list of video streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about a video stream.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"CommentListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#commentListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"A list of comments that match the request criteria.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n }\n },\n \"id\": \"CommentListResponse\"\n - \ },\n \"LiveChatBanSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"banDurationSeconds\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The duration - of a ban, only filled if the ban has type TEMPORARY.\"\n },\n \"type\": - {\n \"description\": \"The type of ban.\",\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"type\": - \"string\"\n },\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"liveChatId\": {\n \"description\": - \"The chat this ban is pertinent to.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveChatBanSnippet\"\n },\n \"LiveChatMessageSnippet\": - {\n \"id\": \"LiveChatMessageSnippet\",\n \"properties\": {\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"hasDisplayContent\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the message has display content that should be displayed to users.\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"superStickerDetails\": {\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"fanFundingEventDetails\": - {\n \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"superChatDetails\": {\n \"description\": \"Details - about the Super Chat event, this is only set if the type is 'superChatEvent'.\",\n - \ \"$ref\": \"LiveChatSuperChatDetails\"\n },\n \"authorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that authored this message, this field is not always filled. textMessageEvent - - the user that wrote the message fanFundingEvent - the user that funded the - broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n },\n \"newSponsorDetails\": - {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": - \"Details about the New Member Announcement event, this is only set if the - type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term - for \\\"sponsor\\\".\"\n },\n \"memberMilestoneChatDetails\": - {\n \"description\": \"Details about the Member Milestone Chat event, - this is only set if the type is 'memberMilestoneChatEvent'.\",\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n - \ \"membershipGiftingDetails\": {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n - \ \"description\": \"Details about the Membership Gifting event, this - is only set if the type is 'membershipGiftingEvent'.\"\n },\n \"displayMessage\": - {\n \"type\": \"string\",\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"messageDeletedDetails\": {\n \"$ref\": - \"LiveChatMessageDeletedDetails\"\n },\n \"publishedAt\": {\n - \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the message was orignally published.\"\n },\n - \ \"type\": {\n \"description\": \"The type of message, this - will always be present, it determines the contents of the message as well - as which fields will be present.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ]\n }\n },\n \"description\": \"Next ID: 33\",\n - \ \"type\": \"object\"\n },\n \"ChannelSettings\": {\n \"description\": - \"Branding properties for the channel view.\",\n \"properties\": {\n - \ \"featuredChannelsUrls\": {\n \"description\": \"The list - of featured channels.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"defaultTab\": - {\n \"description\": \"Which content tab users should see when viewing - the channel.\",\n \"type\": \"string\"\n },\n \"keywords\": - {\n \"type\": \"string\",\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\"\n },\n \"unsubscribedTrailer\": - {\n \"description\": \"The trailer of the channel, for users that - are not subscribers.\",\n \"type\": \"string\"\n },\n \"country\": - {\n \"type\": \"string\",\n \"description\": \"The country - of the channel.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the channel title.\"\n },\n - \ \"description\": {\n \"description\": \"Specifies the channel - description.\",\n \"type\": \"string\"\n },\n \"featuredChannelsTitle\": - {\n \"type\": \"string\",\n \"description\": \"Title for - the featured channels tab.\"\n },\n \"showBrowseView\": {\n - \ \"description\": \"Whether the tab to browse the videos should be - displayed.\",\n \"type\": \"boolean\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"profileColor\": {\n \"type\": \"string\",\n - \ \"description\": \"A prominent color that can be rendered on this - channel page.\"\n },\n \"moderateComments\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether user-submitted comments - left on the channel page need to be approved by the channel owner to be publicly - visible.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\"\n },\n \"showRelatedChannels\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether related channels should - be proposed.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelSettings\"\n },\n \"I18nLanguageSnippet\": {\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\",\n \"type\": \"object\",\n \"id\": \"I18nLanguageSnippet\",\n - \ \"properties\": {\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the language in the - language itself.\"\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"A short BCP-47 code that uniquely identifies - a language.\"\n }\n }\n },\n \"InvideoTiming\": {\n \"properties\": - {\n \"offsetMs\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"Defines the time at which the promotion - will appear. Depending on the value of type the value of the offsetMs field - will represent a time offset from the start or from the end of the video, - expressed in milliseconds.\"\n },\n \"durationMs\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\"\n },\n \"type\": - {\n \"description\": \"Describes a timing type. If the value is offsetFromStart, - then the offsetMs field represents an offset from the start of the video. - If the value is offsetFromEnd, then the offsetMs field represents an offset - from the end of the video.\",\n \"type\": \"string\",\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ }\n },\n \"description\": \"Describes a temporal position - of a visual widget inside a video.\",\n \"type\": \"object\",\n \"id\": - \"InvideoTiming\"\n },\n \"CaptionSnippet\": {\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a caption track, such as its - language and name.\",\n \"id\": \"CaptionSnippet\",\n \"properties\": - {\n \"status\": {\n \"description\": \"The caption track's - status.\",\n \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"name\": {\n \"description\": \"The name of the caption - track. The name is intended to be visible to the user as an option during - playback.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"audioTrackType\": {\n \"description\": - \"The type of audio track associated with the caption track.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ],\n \"type\": - \"string\"\n },\n \"failureReason\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The reason that - YouTube failed to process the caption track. This property is only present - if the state property's value is failed.\",\n \"enum\": [\n \"unknownFormat\",\n - \ \"unsupportedFormat\",\n \"processingFailed\"\n ]\n - \ },\n \"isCC\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\"\n },\n \"videoId\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video associated with - the caption track. @mutable youtube.captions.insert\"\n },\n \"isLarge\": - {\n \"description\": \"Indicates whether the caption track uses large - text for the vision-impaired. The default value is false.\",\n \"type\": - \"boolean\"\n },\n \"isAutoSynced\": {\n \"description\": - \"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.\",\n \"type\": \"boolean\"\n },\n \"isDraft\": - {\n \"type\": \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n },\n \"lastUpdated\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the caption track was last updated.\"\n },\n - \ \"trackKind\": {\n \"enum\": [\n \"standard\",\n - \ \"ASR\",\n \"forced\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The caption - track's type.\"\n },\n \"isEasyReader\": {\n \"description\": - \"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.\",\n - \ \"type\": \"boolean\"\n },\n \"language\": {\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\"\n }\n }\n - \ },\n \"GeoPoint\": {\n \"type\": \"object\",\n \"description\": - \"Geographical coordinates of a point, in WGS84.\",\n \"properties\": - {\n \"longitude\": {\n \"format\": \"double\",\n \"type\": - \"number\",\n \"description\": \"Longitude in degrees.\"\n },\n - \ \"latitude\": {\n \"format\": \"double\",\n \"description\": - \"Latitude in degrees.\",\n \"type\": \"number\"\n },\n \"altitude\": - {\n \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\"\n }\n },\n - \ \"id\": \"GeoPoint\"\n },\n \"SuperChatEventSnippet\": {\n \"properties\": - {\n \"isSuperStickerEvent\": {\n \"description\": \"True if - this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n - \ },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The purchase - amount, in micros of the purchase currency. e.g., 1 is represented as 1000000.\"\n - \ },\n \"createdAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the event occurred.\",\n \"format\": \"date-time\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\",\n \"type\": \"string\"\n - \ },\n \"superStickerMetadata\": {\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"messageType\": {\n \"type\": \"integer\",\n - \ \"description\": \"The tier for the paid message, which is based - on the amount of money spent to purchase the message.\",\n \"format\": - \"uint32\"\n },\n \"supporterDetails\": {\n \"description\": - \"Details about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"channelId\": {\n \"description\": \"Channel - id where the event occurred.\",\n \"type\": \"string\"\n },\n - \ \"commentText\": {\n \"description\": \"The text contents - of the comment left by the user.\",\n \"type\": \"string\"\n },\n - \ \"displayString\": {\n \"type\": \"string\",\n \"description\": - \"A rendered string that displays the purchase amount and currency (e.g., - \\\"$1.00\\\"). The string is rendered for the given language.\"\n }\n - \ },\n \"id\": \"SuperChatEventSnippet\",\n \"type\": \"object\"\n - \ },\n \"VideoTopicDetails\": {\n \"properties\": {\n \"topicCategories\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of Wikipedia - URLs that provide a high-level description of the video's content.\"\n },\n - \ \"topicIds\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n },\n \"relevantTopicIds\": {\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n }\n },\n \"id\": \"VideoTopicDetails\",\n \"type\": - \"object\",\n \"description\": \"Freebase topic information related to - the video.\"\n },\n \"MembershipsLevel\": {\n \"description\": - \"A *membershipsLevel* resource represents an offer made by YouTube creators - for their fans. Users can become members of the channel by joining one of - the available levels. They will provide recurring monetary support and receives - special benefits.\",\n \"id\": \"MembershipsLevel\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#membershipsLevel\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the memberships level.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"MembershipsLevelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the level.\"\n }\n },\n \"type\": \"object\"\n },\n \"PlaylistSnippet\": - {\n \"id\": \"PlaylistSnippet\",\n \"properties\": {\n \"defaultLanguage\": - {\n \"description\": \"The language of the playlist's default title - and description.\",\n \"type\": \"string\"\n },\n \"thumbnailVideoId\": - {\n \"description\": \"Note: if the playlist has a custom thumbnail, - this field will not be populated. The video id selected by the user that will - be used as the thumbnail of this playlist. This field defaults to the first - publicly viewable video in the playlist, if: 1. The user has never selected - a video to be the thumbnail of the playlist. 2. The user selects a video to - be the thumbnail, and then removes that video from the playlist. 3. The user - selects a non-owned video to be the thumbnail, but that video becomes private, - or gets deleted.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The playlist's description.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist. 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.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the playlist.\"\n },\n \"tags\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"Keyword tags associated with the playlist.\",\n - \ \"type\": \"array\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the playlist was created.\"\n },\n \"title\": - {\n \"description\": \"The playlist's title.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"localized\": {\n \"$ref\": - \"PlaylistLocalization\",\n \"description\": \"Localized title and - description, read-only.\"\n },\n \"channelTitle\": {\n \"description\": - \"The channel title of the channel that the video belongs to.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails.\"\n - \ },\n \"Subscription\": {\n \"description\": \"A *subscription* - resource contains information about a YouTube user subscription. A subscription - notifies a user when new videos are added to a channel or when another user - takes one of several actions on YouTube, such as uploading a video, rating - a video, or commenting on a video.\",\n \"id\": \"Subscription\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"SubscriptionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the subscription, including its title and the channel that the user subscribed - to.\"\n },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"SubscriptionContentDetails\",\n - \ \"description\": \"The contentDetails object contains basic statistics - about the subscription.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#subscription\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\"\n - \ },\n \"subscriberSnippet\": {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"The subscriberSnippet object contains basic details - about the subscriber.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveStreamStatus\": {\n \"description\": \"Brief description - of the live stream status.\",\n \"type\": \"object\",\n \"properties\": - {\n \"healthStatus\": {\n \"$ref\": \"LiveStreamHealthStatus\",\n - \ \"description\": \"The health status of the stream.\"\n },\n - \ \"streamStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"id\": \"LiveStreamStatus\"\n - \ },\n \"ActivityContentDetailsPlaylistItem\": {\n \"description\": - \"Information about a new playlist item.\",\n \"properties\": {\n \"playlistId\": - {\n \"type\": \"string\",\n \"description\": \"The value - that YouTube uses to uniquely identify the playlist.\"\n },\n \"playlistItemId\": - {\n \"type\": \"string\",\n \"description\": \"ID of the - item within the playlist.\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information about the resource that was added to the playlist.\"\n }\n - \ },\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"type\": - \"object\"\n },\n \"Caption\": {\n \"id\": \"Caption\",\n \"description\": - \"A *caption* resource represents a YouTube caption track. A caption track - is associated with exactly one YouTube video.\",\n \"properties\": {\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the caption track.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#caption\\\".\",\n \"default\": - \"youtube#caption\"\n },\n \"snippet\": {\n \"$ref\": - \"CaptionSnippet\",\n \"description\": \"The snippet object contains - basic details about the caption.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"CommentThreadListResponse\": {\n - \ \"id\": \"CommentThreadListResponse\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#commentThreadListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"CommentThread\"\n },\n \"description\": - \"A list of comment threads that match the request criteria.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n }\n },\n \"type\": - \"object\"\n },\n \"PlaylistPlayer\": {\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\"\n }\n },\n - \ \"id\": \"PlaylistPlayer\",\n \"type\": \"object\"\n },\n \"PlaylistItem\": - {\n \"id\": \"PlaylistItem\",\n \"type\": \"object\",\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"contentDetails\": {\n - \ \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the playlist item.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist item, such as its title and position in the playlist.\"\n },\n - \ \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\"\n },\n \"kind\": {\n \"default\": \"youtube#playlistItem\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItem\\\".\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"CommentSnippetAuthorChannelId\": {\n \"type\": - \"object\",\n \"description\": \"The id of the author's YouTube channel, - if any.\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"ThirdPartyLinkStatus\": {\n \"description\": \"The third-party - link status object contains information about the status of the link.\",\n - \ \"id\": \"ThirdPartyLinkStatus\",\n \"type\": \"object\",\n \"properties\": - {\n \"linkStatus\": {\n \"enum\": [\n \"unknown\",\n - \ \"failed\",\n \"pending\",\n \"linked\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n }\n },\n \"MonitorStreamInfo\": {\n \"type\": - \"object\",\n \"id\": \"MonitorStreamInfo\",\n \"properties\": {\n - \ \"embedHtml\": {\n \"description\": \"HTML code that embeds - a player that plays the monitor stream.\",\n \"type\": \"string\"\n - \ },\n \"enableMonitorStream\": {\n \"description\": - \"This value determines whether the monitor stream is enabled for the broadcast. - If the monitor stream is enabled, then YouTube will broadcast the event content - on a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\",\n \"type\": - \"boolean\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"broadcastStreamDelayMs\": {\n \"type\": \"integer\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"If you have set - the enableMonitorStream property to true, then this property determines the - length of the live broadcast delay.\",\n \"format\": \"uint32\"\n - \ }\n },\n \"description\": \"Settings and Info of the monitor - stream\"\n },\n \"VideoProcessingDetailsProcessingProgress\": {\n \"properties\": - {\n \"partsProcessed\": {\n \"description\": \"The number - of parts of the video that YouTube has already processed. You can estimate - the percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"partsTotal\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"An estimate of the total number of parts that need to be processed for the - video. The number may be updated with more precise estimates while YouTube - processes the video.\"\n },\n \"timeLeftMs\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"An - estimate of the amount of time, in millseconds, that YouTube needs to finish - processing the video.\"\n }\n },\n \"description\": \"Video - processing progress and completion time estimate.\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"type\": \"object\"\n },\n \"PlaylistLocalization\": {\n \"id\": - \"PlaylistLocalization\",\n \"type\": \"object\",\n \"description\": - \"Playlist localization setting\",\n \"properties\": {\n \"title\": - {\n \"description\": \"The localized strings for playlist's title.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for playlist's - description.\"\n }\n }\n },\n \"VideoRecordingDetails\": - {\n \"id\": \"VideoRecordingDetails\",\n \"description\": \"Recording - information associated with the video.\",\n \"properties\": {\n \"location\": - {\n \"$ref\": \"GeoPoint\",\n \"description\": \"The geolocation - information associated with the video.\"\n },\n \"locationDescription\": - {\n \"description\": \"The text description of the location where - the video was recorded.\",\n \"type\": \"string\"\n },\n \"recordingDate\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the video was recorded.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"I18nRegionListResponse\": - {\n \"id\": \"I18nRegionListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"default\": - \"youtube#i18nRegionListResponse\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"I18nRegion\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of regions where YouTube is available. In this map, the i18n region ID - is the map key, and its value is the corresponding i18nRegion resource.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n }\n - \ }\n },\n \"ThumbnailDetails\": {\n \"properties\": {\n \"high\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The high - quality image for this resource.\"\n },\n \"standard\": {\n - \ \"$ref\": \"Thumbnail\",\n \"description\": \"The standard - quality image for this resource.\"\n },\n \"default\": {\n \"description\": - \"The default image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"medium\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The medium quality image for this resource.\"\n },\n \"maxres\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The maximum - resolution quality image for this resource.\"\n }\n },\n \"id\": - \"ThumbnailDetails\",\n \"type\": \"object\",\n \"description\": - \"Internal representation of thumbnails for a YouTube resource.\"\n },\n - \ \"LiveBroadcastContentDetails\": {\n \"properties\": {\n \"enableContentEncryption\": - {\n \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n - \ },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"mesh\": {\n \"description\": - \"The mesh for projecting the video if projection is mesh. The mesh value - must be a UTF-8 string containing the base-64 encoding of 3D mesh data that - follows the Spherical Video V2 RFC specification for an mshp box, excluding - the box size and type but including the following four reserved zero bytes - for the version and flags.\",\n \"format\": \"byte\",\n \"type\": - \"string\"\n },\n \"enableAutoStart\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - auto start is enabled for this broadcast. The default value for this property - is false. This setting can only be used by Events.\"\n },\n \"enableEmbed\": - {\n \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\",\n \"type\": \"boolean\"\n },\n \"boundStreamId\": - {\n \"description\": \"This value uniquely identifies the live stream - bound to the broadcast.\",\n \"type\": \"string\"\n },\n \"startWithSlate\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast should automatically begin with an in-stream - slate when you update the broadcast's status to live. After updating the status, - you then need to send a liveCuepoints.insert request that sets the cuepoint's - eventState to end to remove the in-stream slate and make your broadcast stream - visible to viewers.\"\n },\n \"recordFromStart\": {\n \"type\": - \"boolean\",\n \"description\": \"Automatically start recording after - the event goes live. The default value for this property is true. *Important:* - You must also set the enableDvr property's value to true if you want the playback - to be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\"\n },\n \"enableDvr\": {\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n - \ },\n \"latencyPreference\": {\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"description\": \"If both this and enable_low_latency - are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Best for: highest quality viewer playbacks - and higher resolutions.\",\n \"Best for: near real-time interaction, - with minimal playback buffering.\",\n \"Best for: real-time interaction - Does not support: Closed captions, 1440p, and 4k resolutions\"\n ]\n - \ },\n \"enableLowLatency\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether this broadcast has low latency - enabled.\"\n },\n \"projection\": {\n \"enum\": [\n - \ \"projectionUnspecified\",\n \"rectangular\",\n \"360\",\n - \ \"mesh\"\n ],\n \"description\": \"The projection - format of this broadcast. This defaults to rectangular.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"stereoLayout\": - {\n \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n - \ \"leftRight\",\n \"topBottom\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\"\n },\n - \ \"boundStreamLastUpdateTimeMs\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\",\n \"format\": \"date-time\"\n - \ },\n \"monitorStream\": {\n \"$ref\": \"MonitorStreamInfo\",\n - \ \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\"\n },\n \"enableAutoStop\": - {\n \"description\": \"This setting indicates whether auto stop is - enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\",\n \"type\": \"boolean\"\n - \ },\n \"closedCaptionsType\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"type\": - \"object\",\n \"description\": \"Detailed settings of a broadcast.\",\n - \ \"id\": \"LiveBroadcastContentDetails\"\n },\n \"LiveBroadcast\": - {\n \"id\": \"LiveBroadcast\",\n \"description\": \"A *liveBroadcast* - resource represents an event that will be streamed, via live video, on YouTube.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"status\": - {\n \"$ref\": \"LiveBroadcastStatus\",\n \"description\": - \"The status object contains information about the event's status.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveBroadcastSnippet\",\n \"description\": - \"The snippet object contains basic details about the event, including its - title, description, start time, and end time.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the broadcast.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n \"default\": - \"youtube#liveBroadcast\"\n }\n }\n },\n \"Activity\": {\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the activity.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"ActivitySnippet\",\n \"description\": \"The - snippet object contains basic details about the activity, including the activity's - type and group ID.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"default\": \"youtube#activity\",\n \"type\": \"string\"\n - \ },\n \"contentDetails\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetails\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"Activity\",\n \"description\": \"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.\"\n },\n \"VideoAbuseReport\": - {\n \"properties\": {\n \"reasonId\": {\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\",\n \"type\": \"string\"\n },\n - \ \"language\": {\n \"description\": \"The language that the - content was viewed in.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n },\n \"comments\": - {\n \"description\": \"Additional comments regarding the abuse report.\",\n - \ \"type\": \"string\"\n },\n \"secondaryReasonId\": - {\n \"description\": \"The specific, or secondary, reason that this - content is abusive (if available). The value is an abuse report reason ID - that is a valid secondary reason for the primary reason.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoAbuseReport\"\n },\n \"VideoProjectDetails\": {\n \"properties\": - {},\n \"id\": \"VideoProjectDetails\",\n \"type\": \"object\",\n - \ \"description\": \"DEPRECATED. b/157517979: This part was never populated - after it was added. However, it sees non-zero traffic because there is generated - client code in the wild that refers to it [1]. We keep this field and do NOT - remove it because otherwise V3 would return an error when this part gets requested - [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"LiveStreamListResponse\": {\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveStream\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of live streams that match the request criteria.\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#liveStreamListResponse\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveStreamListResponse\"\n - \ },\n \"PlaylistItemContentDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"PlaylistItemContentDetails\",\n \"properties\": {\n \"note\": - {\n \"description\": \"A user-generated note for this item.\",\n - \ \"type\": \"string\"\n },\n \"startAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\",\n \"type\": \"string\"\n },\n - \ \"videoPublishedAt\": {\n \"description\": \"The date and - time that the video was published to YouTube.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"videoId\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - a video. To retrieve the video resource, set the id query parameter to this - value in your API request.\",\n \"type\": \"string\"\n },\n - \ \"endAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\"\n - \ }\n }\n },\n \"MembershipsDuration\": {\n \"properties\": - {\n \"memberSince\": {\n \"description\": \"The date and time - when the user became a continuous member across all levels.\",\n \"type\": - \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"format\": - \"int32\",\n \"description\": \"The cumulative time the user has - been a member across all levels in complete months (the time is rounded down - to the nearest integer).\",\n \"type\": \"integer\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"MembershipsDuration\"\n - \ },\n \"ChannelSectionLocalization\": {\n \"properties\": {\n \"title\": - {\n \"description\": \"The localized strings for channel section's - title.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"ChannelSection localization setting\",\n \"id\": \"ChannelSectionLocalization\",\n - \ \"type\": \"object\"\n },\n \"VideoListResponse\": {\n \"id\": - \"VideoListResponse\",\n \"properties\": {\n \"eventId\": {\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Video\"\n }\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoListResponse\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": - {\n \"type\": \"object\",\n \"id\": \"LiveBroadcastStatus\",\n \"description\": - \"Live broadcast state.\",\n \"properties\": {\n \"lifeCycleStatus\": - {\n \"enumDescriptions\": [\n \"No value or the value - is unknown.\",\n \"Incomplete settings, but otherwise valid\",\n - \ \"Complete settings\",\n \"Visible only to partner, - may need special UI treatment\",\n \"Viper is recording; this means - the \\\"clock\\\" is running\",\n \"The broadcast is finished.\",\n - \ \"This broadcast was removed by admin action\",\n \"Transition - into TESTING has been requested\",\n \"Transition into LIVE has - been requested\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\"\n },\n \"madeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the broadcast is made for kids or not, - decided by YouTube instead of the creator. This field is read only.\"\n },\n - \ \"liveBroadcastPriority\": {\n \"description\": \"Priority - of the live broadcast event (internal state).\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Low priority - broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ],\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ]\n - \ },\n \"privacyStatus\": {\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's privacy status. Note that the - broadcast represents exactly one YouTube video, so the privacy settings are - identical to those supported for videos. In addition, you can set this field - by modifying the broadcast resource or by setting the privacyStatus field - of the corresponding video resource.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"public\",\n \"unlisted\",\n \"private\"\n - \ ]\n },\n \"recordingStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"description\": - \"The broadcast's recording status.\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"This field - will be set to True if the creator declares the broadcast to be kids only: - go/live-cw-work.\"\n }\n }\n },\n \"SearchResultSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a search result, including title, description and thumbnails of the item referenced - by the search result.\",\n \"id\": \"SearchResultSnippet\",\n \"properties\": - {\n \"channelTitle\": {\n \"description\": \"The title of - the channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The creation date and time of the resource that - the search result identifies.\",\n \"type\": \"string\"\n },\n - \ \"liveBroadcastContent\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the search result.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"A description of the search result.\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - search result. 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.\"\n }\n }\n },\n \"SearchListResponse\": {\n - \ \"id\": \"SearchListResponse\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"SearchResult\"\n },\n \"description\": - \"Pagination information for token pagination.\",\n \"type\": \"array\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"default\": \"youtube#searchListResponse\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoFileDetailsAudioStream\": {\n - \ \"type\": \"object\",\n \"description\": \"Information about an - audio stream.\",\n \"id\": \"VideoFileDetailsAudioStream\",\n \"properties\": - {\n \"channelCount\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The number of audio channels that - the stream contains.\"\n },\n \"codec\": {\n \"description\": - \"The audio codec that the stream uses.\",\n \"type\": \"string\"\n - \ },\n \"vendor\": {\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\",\n \"type\": \"string\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The audio stream's bitrate, in bits per second.\"\n }\n }\n - \ },\n \"PlaylistItemListResponse\": {\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of - this resource.\",\n \"type\": \"string\",\n \"default\": - \"youtube#playlistItemListResponse\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"description\": - \"A list of playlist items that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"PlaylistItemListResponse\",\n \"type\": \"object\"\n - \ },\n \"PropertyValue\": {\n \"type\": \"object\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\",\n \"description\": - \"The property's value.\"\n },\n \"property\": {\n \"type\": - \"string\",\n \"description\": \"A property.\"\n }\n },\n - \ \"id\": \"PropertyValue\",\n \"description\": \"A pair Property - / Value.\"\n },\n \"LiveChatModeratorSnippet\": {\n \"properties\": - {\n \"moderatorDetails\": {\n \"description\": \"Details about - the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n - \ \"liveChatId\": {\n \"description\": \"The ID of the live - chat this moderator can act on.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\"\n - \ },\n \"SuperChatEvent\": {\n \"description\": \"A `__superChatEvent__` - resource represents a Super Chat purchase on a YouTube channel.\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the Super Chat event.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"SuperChatEventSnippet\",\n \"description\": \"The `snippet` object - contains basic details about the Super Chat event.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"default\": \"youtube#superChatEvent\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"SuperChatEvent\"\n },\n \"CommentThreadSnippet\": - {\n \"properties\": {\n \"canReply\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n },\n \"topLevelComment\": {\n \"$ref\": - \"Comment\",\n \"description\": \"The top level comment of this thread.\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n - \ \"isPublic\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\"\n },\n \"totalReplyCount\": {\n \"type\": - \"integer\",\n \"description\": \"The total number of replies (not - including the top level comment).\",\n \"format\": \"uint32\"\n }\n - \ },\n \"description\": \"Basic details about a comment thread.\",\n - \ \"id\": \"CommentThreadSnippet\",\n \"type\": \"object\"\n },\n - \ \"ChannelContentDetails\": {\n \"properties\": {\n \"relatedPlaylists\": - {\n \"type\": \"object\",\n \"properties\": {\n \"favorites\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s favorite videos. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"watchHistory\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s watch history. Use the playlistItems.insert and - playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"watchLater\": {\n \"description\": \"The ID of - the playlist that contains the channel\\\"s watch later playlist. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"uploads\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s uploaded videos. Use the - videos.insert method to upload new videos and the videos.delete method to - delete previously uploaded videos.\"\n },\n \"likes\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n }\n - \ }\n }\n },\n \"description\": \"Details about the - content of a channel.\",\n \"id\": \"ChannelContentDetails\",\n \"type\": - \"object\"\n },\n \"TokenPagination\": {\n \"description\": \"Stub - token pagination template to suppress results.\",\n \"id\": \"TokenPagination\",\n - \ \"type\": \"object\",\n \"properties\": {}\n },\n \"ResourceId\": - {\n \"type\": \"object\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the referred resource, if that resource is a video. This property is only - present if the resourceId.kind value is youtube#video.\",\n \"type\": - \"string\"\n },\n \"playlistId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the referred resource, if that resource is a playlist. This property is only - present if the resourceId.kind value is youtube#playlist.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\"\n },\n \"kind\": {\n \"description\": - \"The type of the API resource.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ResourceId\",\n \"description\": \"A resource - id is a generic reference that points to another YouTube resource.\"\n },\n - \ \"ChannelStatistics\": {\n \"id\": \"ChannelStatistics\",\n \"type\": - \"object\",\n \"description\": \"Statistics about a channel: number of - subscribers, number of videos in the channel, etc.\",\n \"properties\": - {\n \"commentCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of comments for the channel.\",\n \"format\": \"uint64\"\n - \ },\n \"viewCount\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of times the channel - has been viewed.\"\n },\n \"subscriberCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of subscribers that the - channel has.\",\n \"format\": \"uint64\"\n },\n \"videoCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of videos uploaded to the channel.\",\n \"type\": \"string\"\n },\n - \ \"hiddenSubscriberCount\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether or not the number of subscribers is shown for this user.\"\n }\n - \ }\n },\n \"VideoContentDetails\": {\n \"properties\": {\n - \ \"regionRestriction\": {\n \"description\": \"The regionRestriction - object contains information about the countries where a video is (or is not) - viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"licensedContent\": - {\n \"description\": \"The value of is_license_content indicates - whether the video is licensed content.\",\n \"type\": \"boolean\"\n - \ },\n \"dimension\": {\n \"type\": \"string\",\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\"\n },\n \"hasCustomThumbnail\": {\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n },\n \"contentRating\": {\n \"$ref\": - \"ContentRating\",\n \"description\": \"Specifies the ratings that - the video received under various rating schemes.\"\n },\n \"caption\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"true\",\n - \ \"false\"\n ],\n \"description\": \"The value - of captions indicates whether the video has captions or not.\"\n },\n - \ \"definition\": {\n \"description\": \"The value of definition - indicates whether the video is available in high definition or only in standard - definition.\",\n \"type\": \"string\",\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ]\n },\n \"projection\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the projection format - of the video.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ]\n },\n \"duration\": {\n \"description\": - \"The length of the video. The tag value is an ISO 8601 duration in the format - PT#M#S, in which the letters PT indicate that the value specifies a period - of time, and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\",\n \"type\": - \"string\"\n },\n \"countryRestriction\": {\n \"$ref\": - \"AccessPolicy\",\n \"description\": \"The countryRestriction object - contains information about the countries where a video is (or is not) viewable.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoContentDetails\",\n - \ \"description\": \"Details about the content of a YouTube Video.\"\n - \ },\n \"LocalizedString\": {\n \"type\": \"object\",\n \"id\": - \"LocalizedString\",\n \"properties\": {\n \"language\": {\n \"type\": - \"string\"\n },\n \"value\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelSectionContentDetails\": {\n \"id\": - \"ChannelSectionContentDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"channels\": {\n \"description\": \"The channel ids for - type multiple_channels.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"playlists\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The playlist ids for type single_playlist and - multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n - \ \"type\": \"array\"\n }\n },\n \"description\": - \"Details about a channelsection, including playlists and channels.\"\n },\n - \ \"ChannelSectionListResponse\": {\n \"type\": \"object\",\n \"id\": - \"ChannelSectionListResponse\",\n \"properties\": {\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"description\": \"A list of ChannelSections - that match the request criteria.\"\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelSectionListResponse\"\n - \ }\n }\n },\n \"WatchSettings\": {\n \"properties\": - {\n \"featuredPlaylistId\": {\n \"type\": \"string\",\n \"description\": - \"An ID that uniquely identifies a playlist that displays next to the video - player.\"\n },\n \"textColor\": {\n \"description\": - \"The background color for the video watch page's branded area.\",\n \"type\": - \"string\"\n },\n \"backgroundColor\": {\n \"description\": - \"The text color for the video watch page's branded area.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Branding properties - for the watch. All deprecated.\",\n \"id\": \"WatchSettings\",\n \"type\": - \"object\"\n },\n \"LiveChatNewSponsorDetails\": {\n \"properties\": - {\n \"memberLevelName\": {\n \"description\": \"The name of - the Level that the viewer just had joined. The Level names are defined by - the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"isUpgrade\": - {\n \"type\": \"boolean\",\n \"description\": \"If the viewer - just had upgraded from a lower level. For viewers that were not members at - the time of purchase, this field is false.\"\n }\n },\n \"id\": - \"LiveChatNewSponsorDetails\",\n \"type\": \"object\"\n },\n \"ChannelStatus\": - {\n \"type\": \"object\",\n \"properties\": {\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"longUploadsStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ],\n \"description\": \"The long uploads status of this - channel. See https://support.google.com/youtube/answer/71673 for more information.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"isLinked\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\",\n \"description\": \"Privacy status of the channel.\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"id\": \"ChannelStatus\",\n \"description\": - \"JSON template for the status part of a channel.\"\n },\n \"VideoAbuseReportReason\": - {\n \"id\": \"VideoAbuseReportReason\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - ID of this abuse report reason.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#videoAbuseReportReason\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n - \ }\n },\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\"\n },\n \"ChannelSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the channel was created.\"\n - \ },\n \"customUrl\": {\n \"description\": \"The custom - url of the channel.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel's default title - and description.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\"\n },\n - \ \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"description\": {\n - \ \"type\": \"string\",\n \"description\": \"The description - of the channel.\"\n },\n \"localized\": {\n \"$ref\": - \"ChannelLocalization\",\n \"description\": \"Localized title and - description, read-only.\"\n },\n \"title\": {\n \"description\": - \"The channel's title.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ChannelSnippet\",\n \"description\": \"Basic details - about a channel, including title, description and thumbnails.\"\n },\n - \ \"Video\": {\n \"properties\": {\n \"ageGating\": {\n \"$ref\": - \"VideoAgeGating\",\n \"description\": \"Age restriction details - related to a video. This data can only be retrieved by the video owner.\"\n - \ },\n \"projectDetails\": {\n \"$ref\": \"VideoProjectDetails\",\n - \ \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"monetizationDetails\": {\n \"$ref\": \"VideoMonetizationDetails\",\n - \ \"description\": \"The monetizationDetails object encapsulates information - about the monetization status of the video.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the video, such as its title, description, and category.\",\n \"$ref\": - \"VideoSnippet\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the video's uploading, processing, - and privacy statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n - \ \"fileDetails\": {\n \"description\": \"The fileDetails object - encapsulates information about the video file that was uploaded to YouTube, - including the file's resolution, duration, audio and video codecs, stream - bitrates, and more. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoFileDetails\"\n },\n \"suggestions\": - {\n \"$ref\": \"VideoSuggestions\",\n \"description\": \"The - suggestions object encapsulates suggestions that identify opportunities to - improve the video quality or the metadata for the uploaded video. This data - can only be retrieved by the video owner.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#video\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#video\\\".\"\n },\n \"liveStreamingDetails\": - {\n \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\",\n \"$ref\": - \"VideoLiveStreamingDetails\"\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the video - in an embedded player.\",\n \"$ref\": \"VideoPlayer\"\n },\n - \ \"recordingDetails\": {\n \"description\": \"The recordingDetails - object encapsulates information about the location, date and address where - the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"VideoContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\"\n },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.videos.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"VideoLocalization\"\n },\n \"description\": \"The localizations - object contains localized versions of the basic details about the video, such - as its title and description.\"\n },\n \"processingDetails\": - {\n \"description\": \"The processingDetails object encapsulates - information about YouTube's progress in processing the uploaded video file. - The properties in the object identify the current processing status and an - estimate of the time remaining until YouTube finishes processing the video. - This part also indicates whether different types of data or content, such - as file details or thumbnail images, are available for the video. The processingProgress - object is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoProcessingDetails\"\n - \ },\n \"topicDetails\": {\n \"$ref\": \"VideoTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the video.\"\n },\n \"statistics\": - {\n \"$ref\": \"VideoStatistics\",\n \"description\": \"The - statistics object contains statistics about the video.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"A *video* resource represents - a YouTube video.\",\n \"id\": \"Video\"\n },\n \"LiveChatMessage\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatMessage\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the message.\",\n \"type\": \"string\"\n },\n - \ \"authorDetails\": {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n - \ \"description\": \"The authorDetails object contains basic details - about the user that posted this message.\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveChatMessageSnippet\",\n \"description\": - \"The snippet object contains basic details about the message.\"\n }\n - \ },\n \"description\": \"A *liveChatMessage* resource represents - a chat message in a YouTube Live Chat.\",\n \"id\": \"LiveChatMessage\",\n - \ \"type\": \"object\"\n },\n \"ChannelAuditDetails\": {\n \"id\": - \"ChannelAuditDetails\",\n \"properties\": {\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel respects the community guidelines.\"\n }\n },\n - \ \"description\": \"The auditDetails object encapsulates channel data - that is relevant for YouTube Partners during the audit process.\",\n \"type\": - \"object\"\n },\n \"LiveChatMembershipGiftingDetails\": {\n \"properties\": - {\n \"giftMembershipsLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\"\n },\n - \ \"giftMembershipsCount\": {\n \"description\": \"The number - of gift memberships purchased by the user.\",\n \"format\": \"int32\",\n - \ \"type\": \"integer\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n \"Thumbnail\": - {\n \"type\": \"object\",\n \"id\": \"Thumbnail\",\n \"properties\": - {\n \"url\": {\n \"description\": \"The thumbnail image's - URL.\",\n \"type\": \"string\"\n },\n \"width\": {\n - \ \"type\": \"integer\",\n \"description\": \"(Optional) - Width of the thumbnail image.\",\n \"format\": \"uint32\"\n },\n - \ \"height\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"(Optional) Height of the thumbnail - image.\"\n }\n },\n \"description\": \"A thumbnail is an - image representing a YouTube resource.\"\n },\n \"VideoStatus\": {\n - \ \"description\": \"Basic details about a video category, such as its - localized title. Next Id: 18\",\n \"type\": \"object\",\n \"id\": - \"VideoStatus\",\n \"properties\": {\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"failureReason\": - {\n \"description\": \"This value explains why a video failed to - upload. This property is only present if the uploadStatus property indicates - that the upload failed.\",\n \"type\": \"string\",\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ],\n \"enumDescriptions\": [\n \"Unable to convert - video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ]\n },\n - \ \"embeddable\": {\n \"type\": \"boolean\",\n \"description\": - \"This value indicates if the video can be embedded on another website. @mutable - youtube.videos.insert youtube.videos.update\"\n },\n \"publishAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the video is scheduled to publish. It can be set only if the - privacy status of the video is private..\",\n \"format\": \"date-time\"\n - \ },\n \"license\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"uploadStatus\": {\n \"description\": - \"The status of the uploaded video.\",\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ]\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The video's privacy status.\"\n },\n \"rejectionReason\": - {\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"This value explains why YouTube rejected an uploaded - video. This property is only present if the uploadStatus property indicates - that the upload was rejected.\",\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ]\n },\n \"publicStatsViewable\": {\n \"description\": - \"This value indicates if the extended video statistics on the watch page - can be viewed by everyone. Note that the view count, likes, etc will still - be visible if this is disabled. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n }\n }\n },\n \"ActivityContentDetailsComment\": - {\n \"description\": \"Information about a resource that received a comment.\",\n - \ \"id\": \"ActivityContentDetailsComment\",\n \"properties\": {\n - \ \"resourceId\": {\n \"description\": \"The resourceId object - contains information that identifies the resource associated with the comment.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveStream\": {\n \"id\": \"LiveStream\",\n \"description\": - \"A live stream describes a live ingestion point.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the stream.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about live stream's status.\",\n \"$ref\": - \"LiveStreamStatus\"\n },\n \"cdn\": {\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\",\n \"$ref\": \"CdnSettings\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveStream\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"type\": \"string\"\n },\n \"contentDetails\": {\n - \ \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\",\n \"$ref\": - \"LiveStreamContentDetails\"\n }\n }\n },\n \"ChannelToStoreLinkDetails\": - {\n \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"storeName\": - {\n \"type\": \"string\",\n \"description\": \"Name of the - store.\"\n },\n \"merchantId\": {\n \"description\": - \"Google Merchant Center id of the store.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"storeUrl\": {\n \"description\": - \"Landing page of the store.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"SuperChatEventListResponse\": {\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of Super Chat purchases that match the request criteria.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"SuperChatEventListResponse\",\n \"type\": - \"object\"\n },\n \"TestItem\": {\n \"type\": \"object\",\n \"id\": - \"TestItem\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"TestItemTestItemSnippet\"\n },\n \"gaia\": {\n \"type\": - \"string\",\n \"format\": \"int64\"\n },\n \"featuredPart\": - {\n \"type\": \"boolean\"\n },\n \"id\": {\n \"type\": - \"string\"\n }\n }\n },\n \"ActivityContentDetailsUpload\": - {\n \"id\": \"ActivityContentDetailsUpload\",\n \"description\": - \"Information about the uploaded video.\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the uploaded video.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ActivityListResponse\": {\n \"id\": - \"ActivityListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#activityListResponse\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Activity\"\n },\n \"type\": \"array\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"IngestionInfo\": - {\n \"type\": \"object\",\n \"properties\": {\n \"rtmpsBackupIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - backupIngestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"ingestionAddress\": - {\n \"description\": \"The primary ingestion URL that you should - use to stream video to YouTube. You must stream video to this URL. Depending - on which application or tool you use to encode your video stream, you may - need to enter the stream URL and stream name separately or you may need to - concatenate them in the following format: *STREAM_URL/STREAM_NAME* \",\n \"type\": - \"string\"\n },\n \"rtmpsIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of ingestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ },\n \"streamName\": {\n \"type\": \"string\",\n \"description\": - \"The stream name that YouTube assigns to the video stream.\"\n },\n - \ \"backupIngestionAddress\": {\n \"type\": \"string\",\n \"description\": - \"The backup ingestion URL that you should use to stream video to YouTube. - You have the option of simultaneously streaming the content that you are sending - to the ingestionAddress to this URL.\"\n }\n },\n \"description\": - \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n - \ \"id\": \"IngestionInfo\"\n },\n \"ImageSettings\": {\n \"id\": - \"ImageSettings\",\n \"properties\": {\n \"bannerTabletLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size low resolution (1138x188).\"\n },\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"largeBrandedBannerImageImapScript\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The image map script - for the large banner image.\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerTvImageUrl\": - {\n \"description\": \"Banner image. TV size extra high resolution - (2120x1192).\",\n \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\"\n },\n \"trackingImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 640px by 70px banner image - that appears below the video player in the default view of the video watch - page. The URL for the image that appears above the top-left corner of the - video player. This is a 25-pixel-high image with a flexible width that cannot - exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerMobileMediumHdImageUrl\": {\n \"description\": \"Banner - image. Mobile size medium/high resolution (960x263).\",\n \"type\": - \"string\"\n },\n \"largeBrandedBannerImageUrl\": {\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTabletImageUrl\": {\n \"description\": - \"Banner image. Tablet size (1707x283).\",\n \"type\": \"string\"\n - \ },\n \"bannerTvLowImageUrl\": {\n \"description\": - \"Banner image. TV size low resolution (854x480).\",\n \"type\": - \"string\"\n },\n \"bannerMobileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size (640x175).\"\n - \ },\n \"bannerTabletExtraHdImageUrl\": {\n \"description\": - \"Banner image. Tablet size extra high resolution (2560x424).\",\n \"type\": - \"string\"\n },\n \"bannerTabletHdImageUrl\": {\n \"description\": - \"Banner image. Tablet size high resolution (2276x377).\",\n \"type\": - \"string\"\n },\n \"backgroundImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the background - image shown on the video watch page. The image should be 1200px by 615px, - with a maximum file size of 128k.\"\n },\n \"bannerImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size medium resolution (1280x720).\"\n }\n },\n \"description\": - \"Branding properties for images associated with the channel.\",\n \"type\": - \"object\"\n },\n \"ThirdPartyLink\": {\n \"id\": \"ThirdPartyLink\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#thirdPartyLink\"\n },\n - \ \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The status object contains information about the status of the link.\"\n - \ },\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n }\n },\n \"description\": \"A - *third party account link* resource represents a link between a YouTube account - or a channel and an account on a third-party service.\",\n \"type\": - \"object\"\n },\n \"LiveChatBan\": {\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#liveChatBan\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A `__liveChatBan__` - resource represents a ban for a YouTube live chat.\",\n \"id\": \"LiveChatBan\"\n - \ },\n \"SubscriptionSubscriberSnippet\": {\n \"properties\": {\n - \ \"title\": {\n \"description\": \"The title of the subscriber.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The channel ID of the subscriber.\"\n - \ },\n \"description\": {\n \"description\": \"The description - of the subscriber.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"Thumbnails - for this subscriber.\"\n }\n },\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a subscription's subscriber including title, description, channel ID and thumbnails.\"\n - \ },\n \"ChannelContentOwnerDetails\": {\n \"properties\": {\n \"contentOwner\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the content owner linked to the channel.\"\n },\n \"timeLinked\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the channel was linked to the content owner.\",\n \"format\": - \"date-time\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"id\": \"ChannelContentOwnerDetails\"\n - \ },\n \"ChannelTopicDetails\": {\n \"properties\": {\n \"topicCategories\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Wikipedia - URLs that describe the channel's content.\"\n },\n \"topicIds\": - {\n \"description\": \"A list of Freebase topic IDs associated with - the channel. You can retrieve information about each topic using the Freebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"id\": - \"ChannelTopicDetails\",\n \"type\": \"object\",\n \"description\": - \"Freebase topic information related to the channel.\"\n },\n \"PlaylistListResponse\": - {\n \"id\": \"PlaylistListResponse\",\n \"properties\": {\n \"items\": - {\n \"description\": \"A list of playlists that match the request - criteria\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Playlist\"\n }\n },\n \"kind\": {\n \"default\": - \"youtube#playlistListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"banType\": {\n \"type\": \"string\",\n - \ \"description\": \"The type of ban.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"permanent\",\n \"temporary\"\n ]\n },\n - \ \"banDurationSeconds\": {\n \"description\": \"The duration - of the ban. This property is only present if the banType is temporary.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"bannedUserDetails\": {\n \"description\": \"The details - of the user that was banned.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ }\n }\n },\n \"SubscriptionSnippet\": {\n \"id\": - \"SubscriptionSnippet\",\n \"description\": \"Basic details about a subscription, - including title, description and thumbnails of the subscribed item.\",\n \"properties\": - {\n \"channelTitle\": {\n \"description\": \"Channel title - for the channel that the subscription belongs to.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The subscription's title.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n },\n \"resourceId\": - {\n \"description\": \"The id object contains information about the - channel that the user subscribed to.\",\n \"$ref\": \"ResourceId\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n }\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the subscription was created.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The subscription's - details.\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveStreamSnippet\": - {\n \"id\": \"LiveStreamSnippet\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The stream's - description. The value cannot be longer than 10000 characters.\"\n },\n - \ \"isDefaultStream\": {\n \"type\": \"boolean\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the stream was created.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The stream's - title. The value must be between 1 and 128 characters long.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoRating\": {\n \"description\": - \"Basic details about rating of a video.\",\n \"id\": \"VideoRating\",\n - \ \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n },\n \"rating\": {\n \"description\": - \"Rating of a video.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n }\n },\n - \ \"type\": \"object\"\n },\n \"ThirdPartyLinkSnippet\": {\n \"id\": - \"ThirdPartyLinkSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"type\": {\n \"description\": \"Type of the link named - after the entities that are being linked.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ]\n },\n \"channelToStoreLink\": - {\n \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n - \ }\n },\n \"description\": \"Basic information about a third - party account link, including its type and type-specific information.\"\n - \ },\n \"LiveChatMessageListResponse\": {\n \"id\": \"LiveChatMessageListResponse\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"type\": - \"array\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\"\n - \ },\n \"pollingIntervalMillis\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The amount - of time the client should wait before polling again.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"offlineAt\": {\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the underlying stream went offline.\",\n \"format\": \"date-time\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"MembershipsLevelSnippet\": - {\n \"properties\": {\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n },\n \"levelDetails\": {\n \"description\": - \"Details about the pricing level.\",\n \"$ref\": \"LevelDetails\"\n - \ }\n },\n \"id\": \"MembershipsLevelSnippet\",\n \"type\": - \"object\"\n },\n \"I18nRegionSnippet\": {\n \"properties\": {\n - \ \"name\": {\n \"type\": \"string\",\n \"description\": - \"The human-readable name of the region.\"\n },\n \"gl\": {\n - \ \"description\": \"The region code as a 2-letter ISO country code.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"I18nRegionSnippet\",\n \"description\": \"Basic details - about an i18n region, such as region code and human-readable name.\"\n },\n - \ \"ChannelSectionTargeting\": {\n \"properties\": {\n \"countries\": - {\n \"type\": \"array\",\n \"description\": \"The country - the channel section is targeting.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"languages\": {\n \"type\": - \"array\",\n \"description\": \"The language the channel section - is targeting.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n },\n \"regions\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"The region the channel section is targeting.\"\n }\n },\n \"id\": - \"ChannelSectionTargeting\",\n \"type\": \"object\",\n \"description\": - \"ChannelSection targeting setting.\"\n },\n \"CaptionListResponse\": - {\n \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of captions that match the request criteria.\",\n - \ \"items\": {\n \"$ref\": \"Caption\"\n }\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#captionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"CaptionListResponse\",\n - \ \"type\": \"object\"\n },\n \"Member\": {\n \"type\": \"object\",\n - \ \"id\": \"Member\",\n \"description\": \"A *member* resource represents - a member for a YouTube channel. A member provides recurring monetary support - to a creator and receives special benefits.\",\n \"properties\": {\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#member\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the member.\"\n }\n }\n },\n \"MembershipsLevelListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevelListResponse\"\n - \ },\n \"items\": {\n \"description\": \"A list of pricing - levels offered by a creator to the fans.\",\n \"items\": {\n \"$ref\": - \"MembershipsLevel\"\n },\n \"type\": \"array\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\",\n - \ \"type\": \"object\"\n },\n \"VideoStatistics\": {\n \"type\": - \"object\",\n \"properties\": {\n \"likeCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of users who have indicated that they liked the video by giving it - a positive rating.\"\n },\n \"dislikeCount\": {\n \"description\": - \"The number of users who have indicated that they disliked the video by giving - it a negative rating.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"commentCount\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of comments for the video.\",\n \"format\": - \"uint64\"\n },\n \"viewCount\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The number of - times the video has been viewed.\"\n },\n \"favoriteCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of users who currently have the video marked as a favorite video.\",\n \"format\": - \"uint64\"\n }\n },\n \"description\": \"Statistics about - the video, such as the number of times the video was viewed or liked.\",\n - \ \"id\": \"VideoStatistics\"\n },\n \"VideoPlayer\": {\n \"properties\": - {\n \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\",\n \"type\": - \"string\"\n },\n \"embedHeight\": {\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n },\n \"embedWidth\": {\n \"format\": - \"int64\",\n \"type\": \"string\",\n \"description\": \"The - embed width\"\n }\n },\n \"id\": \"VideoPlayer\",\n \"description\": - \"Player to be used for a video playback.\",\n \"type\": \"object\"\n - \ }\n },\n \"discoveryVersion\": \"v1\",\n \"ownerDomain\": \"google.com\",\n - \ \"servicePath\": \"\",\n \"title\": \"YouTube Data API v3\",\n \"ownerName\": - \"Google\",\n \"version\": \"v3\",\n \"id\": \"youtube:v3\",\n \"baseUrl\": - \"https://youtube.googleapis.com/\",\n \"fullyEncodeReservedExpansion\": - true,\n \"basePath\": \"\",\n \"batchPath\": \"batch\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:26 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCX9snQQMKa_-gHuORR7IBZw&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"p7DLi4Zeyf1gbyZ7-Q3l7p4gWbg\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"x6JP85fh5Bx5G7Z7wfagqgyz2CI\",\n \"id\": \"UCX9snQQMKa_-gHuORR7IBZw\",\n - \ \"snippet\": {\n \"title\": \"nbryskin_gmail_com\",\n \"description\": - \"\",\n \"customUrl\": \"@nbryskin_gmail_com1163\",\n \"publishedAt\": - \"2022-07-14T21:48:14.554792Z\",\n \"thumbnails\": {\n \"default\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJWDcqUaMKqTJzBQT_br1clgRvZbs5nOHMKd-RLW9jymrpx8u1TU4o8edcPgMU-s=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJWDcqUaMKqTJzBQT_br1clgRvZbs5nOHMKd-RLW9jymrpx8u1TU4o8edcPgMU-s=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJWDcqUaMKqTJzBQT_br1clgRvZbs5nOHMKd-RLW9jymrpx8u1TU4o8edcPgMU-s=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"nbryskin_gmail_com\",\n \"description\": - \"\"\n }\n },\n \"brandingSettings\": {\n \"channel\": - {\n \"title\": \"nbryskin_gmail_com\"\n }\n }\n }\n - \ ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:26 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"discoveryVersion\": - \"v1\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"servicePath\": - \"\",\n \"name\": \"youtube\",\n \"fullyEncodeReservedExpansion\": true,\n - \ \"revision\": \"20230220\",\n \"canonicalName\": \"YouTube\",\n \"icons\": - {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"batchPath\": \"batch\",\n \"basePath\": \"\",\n \"schemas\": {\n - \ \"VideoAbuseReport\": {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReport\",\n - \ \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n },\n \"comments\": {\n \"type\": \"string\",\n - \ \"description\": \"Additional comments regarding the abuse report.\"\n - \ },\n \"secondaryReasonId\": {\n \"type\": \"string\",\n - \ \"description\": \"The specific, or secondary, reason that this - content is abusive (if available). The value is an abuse report reason ID - that is a valid secondary reason for the primary reason.\"\n },\n \"language\": - {\n \"description\": \"The language that the content was viewed in.\",\n - \ \"type\": \"string\"\n },\n \"reasonId\": {\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"VideoGetRatingResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoGetRatingResponse\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoRating\"\n },\n - \ \"description\": \"A list of ratings that match the request criteria.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoGetRatingResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n - \ }\n }\n },\n \"MemberSnippet\": {\n \"properties\": - {\n \"creatorChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The id of the channel that's offering memberships.\"\n },\n \"membershipsDetails\": - {\n \"$ref\": \"MembershipsDetails\",\n \"description\": - \"Details about the user's membership.\"\n },\n \"memberDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the member.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"MemberSnippet\"\n },\n \"Subscription\": {\n \"type\": - \"object\",\n \"id\": \"Subscription\",\n \"description\": \"A *subscription* - resource contains information about a YouTube user subscription. A subscription - notifies a user when new videos are added to a channel or when another user - takes one of several actions on YouTube, such as uploading a video, rating - a video, or commenting on a video.\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the subscription.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#subscription\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#subscription\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"subscriberSnippet\": {\n - \ \"description\": \"The subscriberSnippet object contains basic details - about the subscriber.\",\n \"$ref\": \"SubscriptionSubscriberSnippet\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"SubscriptionContentDetails\",\n - \ \"description\": \"The contentDetails object contains basic statistics - about the subscription.\"\n },\n \"snippet\": {\n \"$ref\": - \"SubscriptionSnippet\",\n \"description\": \"The snippet object - contains basic details about the subscription, including its title and the - channel that the user subscribed to.\"\n }\n }\n },\n \"VideoProjectDetails\": - {\n \"properties\": {},\n \"type\": \"object\",\n \"description\": - \"DEPRECATED. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"id\": \"VideoProjectDetails\"\n },\n \"PlaylistPlayer\": {\n - \ \"properties\": {\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistPlayer\"\n },\n \"SuperChatEventListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#superChatEventListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n - \ },\n \"description\": \"A list of Super Chat purchases - that match the request criteria.\"\n }\n },\n \"id\": \"SuperChatEventListResponse\"\n - \ },\n \"LiveChatTextMessageDetails\": {\n \"properties\": {\n \"messageText\": - {\n \"type\": \"string\",\n \"description\": \"The user's - message.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatTextMessageDetails\"\n },\n \"MembershipsLevelListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"description\": - \"A list of pricing levels offered by a creator to the fans.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n - \ }\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevelListResponse\"\n - \ }\n },\n \"id\": \"MembershipsLevelListResponse\"\n },\n - \ \"PlaylistSnippet\": {\n \"description\": \"Basic details about a - playlist, including title, description and thumbnails.\",\n \"id\": \"PlaylistSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the playlist was created.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The playlist's description.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the playlist's default title - and description.\",\n \"type\": \"string\"\n },\n \"thumbnailVideoId\": - {\n \"type\": \"string\",\n \"description\": \"Note: if - the playlist has a custom thumbnail, this field will not be populated. The - video id selected by the user that will be used as the thumbnail of this playlist. - This field defaults to the first publicly viewable video in the playlist, - if: 1. The user has never selected a video to be the thumbnail of the playlist. - 2. The user selects a video to be the thumbnail, and then removes that video - from the playlist. 3. The user selects a non-owned video to be the thumbnail, - but that video becomes private, or gets deleted.\"\n },\n \"localized\": - {\n \"description\": \"Localized title and description, read-only.\",\n - \ \"$ref\": \"PlaylistLocalization\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist. 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.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the playlist.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.playlists.insert\",\n \"youtube.playlists.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The playlist's title.\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"The channel title of the channel - that the video belongs to.\"\n },\n \"tags\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"Keyword tags associated with the playlist.\",\n \"type\": \"array\"\n - \ }\n }\n },\n \"CommentThreadSnippet\": {\n \"id\": - \"CommentThreadSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about a comment thread.\",\n \"properties\": {\n \"topLevelComment\": - {\n \"description\": \"The top level comment of this thread.\",\n - \ \"$ref\": \"Comment\"\n },\n \"isPublic\": {\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\",\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"totalReplyCount\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The total number of replies (not including the top level comment).\"\n },\n - \ \"canReply\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\"\n }\n }\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"isVerified\": - {\n \"description\": \"Whether the author's identity has been verified - by YouTube.\",\n \"type\": \"boolean\"\n },\n \"displayName\": - {\n \"description\": \"The channel's display name.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"isChatSponsor\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is a sponsor of the live chat.\"\n },\n \"isChatModerator\": - {\n \"description\": \"Whether the author is a moderator of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"isChatOwner\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is the owner of the live chat.\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"profileImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The channels's avatar URL.\"\n }\n },\n - \ \"id\": \"LiveChatMessageAuthorDetails\"\n },\n \"ActivitySnippet\": - {\n \"properties\": {\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The description of the resource - primarily associated with the activity. @mutable youtube.activities.insert\"\n - \ },\n \"thumbnails\": {\n \"description\": \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"groupId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel associated with - the activity.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of activity that the resource describes.\",\n \"enum\": - [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ]\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the video - was uploaded.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the resource primarily associated with the activity.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel responsible - for this activity\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - an activity, including title, description, thumbnails, activity type and group. - Next ID: 12\",\n \"id\": \"ActivitySnippet\"\n },\n \"LiveBroadcastStatistics\": - {\n \"description\": \"Statistics about the live broadcast. These represent - a snapshot of the values at the time of the request. Statistics are only returned - for live broadcasts.\",\n \"properties\": {\n \"concurrentViewers\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"type\": \"string\"\n - \ },\n \"totalChatCount\": {\n \"description\": \"The - total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveBroadcastStatistics\"\n - \ },\n \"ActivityContentDetailsSubscription\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource that the user subscribed to.\"\n }\n },\n - \ \"id\": \"ActivityContentDetailsSubscription\",\n \"description\": - \"Information about a channel that a user subscribed to.\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"Details about a social network post.\",\n \"properties\": - {\n \"author\": {\n \"description\": \"The author of the social - network post.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The name of the social network.\",\n \"type\": \"string\",\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ]\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object encapsulates information that identifies the resource associated with - a social network post.\"\n },\n \"imageUrl\": {\n \"type\": - \"string\",\n \"description\": \"An image of the post's author.\"\n - \ },\n \"referenceUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL of the social network post.\"\n }\n - \ }\n },\n \"ChannelSettings\": {\n \"id\": \"ChannelSettings\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"country\": - {\n \"type\": \"string\",\n \"description\": \"The country - of the channel.\"\n },\n \"moderateComments\": {\n \"description\": - \"Whether user-submitted comments left on the channel page need to be approved - by the channel owner to be publicly visible.\",\n \"type\": \"boolean\"\n - \ },\n \"title\": {\n \"description\": \"Specifies the - channel title.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the channel description.\"\n },\n \"featuredChannelsTitle\": - {\n \"type\": \"string\",\n \"description\": \"Title for - the featured channels tab.\"\n },\n \"defaultTab\": {\n \"type\": - \"string\",\n \"description\": \"Which content tab users should see - when viewing the channel.\"\n },\n \"keywords\": {\n \"type\": - \"string\",\n \"description\": \"Lists keywords associated with the - channel, comma-separated.\"\n },\n \"showBrowseView\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the tab to browse the videos - should be displayed.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"type\": \"string\",\n \"description\": \"The ID for - a Google Analytics account to track and measure traffic to the channels.\"\n - \ },\n \"unsubscribedTrailer\": {\n \"type\": \"string\",\n - \ \"description\": \"The trailer of the channel, for users that are - not subscribers.\"\n },\n \"featuredChannelsUrls\": {\n \"type\": - \"array\",\n \"description\": \"The list of featured channels.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"showRelatedChannels\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether related channels should be proposed.\"\n },\n \"profileColor\": - {\n \"description\": \"A prominent color that can be rendered on - this channel page.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n }\n },\n \"description\": - \"Branding properties for the channel view.\"\n },\n \"ChannelProfileDetails\": - {\n \"properties\": {\n \"channelUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channel's URL.\"\n },\n - \ \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channels's avatar URL.\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The YouTube channel - ID.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ChannelProfileDetails\",\n \"type\": \"object\"\n },\n \"LiveChatModeratorSnippet\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\",\n - \ \"properties\": {\n \"liveChatId\": {\n \"description\": - \"The ID of the live chat this moderator can act on.\",\n \"type\": - \"string\"\n },\n \"moderatorDetails\": {\n \"description\": - \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ }\n }\n },\n \"VideoStatistics\": {\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\",\n \"properties\": {\n \"dislikeCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of users who have indicated - that they disliked the video by giving it a negative rating.\",\n \"type\": - \"string\"\n },\n \"viewCount\": {\n \"description\": - \"The number of times the video has been viewed.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"likeCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of users who have indicated that they liked the video by giving - it a positive rating.\"\n },\n \"favoriteCount\": {\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"commentCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of comments for the video.\",\n \"format\": \"uint64\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoStatistics\"\n - \ },\n \"VideoContentDetailsRegionRestriction\": {\n \"properties\": - {\n \"blocked\": {\n \"description\": \"A list of region codes - that identify countries where the video is blocked. If this property is present - and a country is not listed in its value, then the video is viewable in that - country. If this property is present and contains an empty list, the video - is viewable in all countries.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"allowed\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of region codes - that identify countries where the video is viewable. If this property is present - and a country is not listed in its value, then the video is blocked from appearing - in that country. If this property is present and contains an empty list, the - video is blocked in all countries.\"\n }\n },\n \"description\": - \"DEPRECATED Region restriction of the video.\",\n \"type\": \"object\",\n - \ \"id\": \"VideoContentDetailsRegionRestriction\"\n },\n \"LiveChatMessageListResponse\": - {\n \"id\": \"LiveChatMessageListResponse\",\n \"properties\": {\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatMessageListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"visitorId\": {\n - \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pollingIntervalMillis\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The amount of time the client should wait before polling again.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"offlineAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the underlying - stream went offline.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelSection\": {\n \"properties\": {\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains details - about the channel section content, such as a list of playlists or channels - featured in the section.\",\n \"$ref\": \"ChannelSectionContentDetails\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the channel section, such as its type, style and title.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#channelSection\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n - \ \"description\": \"The targeting object contains basic targeting - settings about the channel section.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelSection\"\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"id\": \"VideoSuggestionsTagSuggestion\",\n \"type\": \"object\",\n - \ \"description\": \"A single tag suggestion with it's relevance information.\",\n - \ \"properties\": {\n \"tag\": {\n \"description\": \"The - keyword tag suggested for the video.\",\n \"type\": \"string\"\n - \ },\n \"categoryRestricts\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A set of video categories for which the tag is relevant. You can use this - information to display appropriate tag suggestions based on the video category - that the video uploader associates with the video. By default, tag suggestions - are relevant for all categories if there are no restricts defined for the - keyword.\"\n }\n }\n },\n \"VideoRecordingDetails\": {\n - \ \"description\": \"Recording information associated with the video.\",\n - \ \"properties\": {\n \"recordingDate\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the video - was recorded.\",\n \"type\": \"string\"\n },\n \"location\": - {\n \"description\": \"The geolocation information associated with - the video.\",\n \"$ref\": \"GeoPoint\"\n },\n \"locationDescription\": - {\n \"type\": \"string\",\n \"description\": \"The text - description of the location where the video was recorded.\"\n }\n },\n - \ \"id\": \"VideoRecordingDetails\",\n \"type\": \"object\"\n },\n - \ \"VideoSuggestions\": {\n \"type\": \"object\",\n \"description\": - \"Specifies suggestions on how to improve video content, including encoding - hints, tag suggestions, and editor suggestions.\",\n \"id\": \"VideoSuggestions\",\n - \ \"properties\": {\n \"processingWarnings\": {\n \"type\": - \"array\",\n \"description\": \"A list of reasons why YouTube may - have difficulty transcoding the uploaded video or that might result in an - erroneous transcoding. These warnings are generated before YouTube actually - processes the uploaded video file. In addition, they identify issues that - are unlikely to cause the video processing to fail but that might cause problems - such as sync issues, video artifacts, or a missing audio track.\",\n \"items\": - {\n \"enumDescriptions\": [\n \"Unrecognized file - format, transcoding is likely to fail.\",\n \"Unrecognized video - codec, transcoding is likely to fail.\",\n \"Unrecognized audio - codec, transcoding is likely to fail.\",\n \"Conflicting container - and stream resolutions.\",\n \"Edit lists are not currently supported.\",\n - \ \"Video codec that is known to cause problems was used.\",\n - \ \"Audio codec that is known to cause problems was used.\",\n - \ \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"type\": - \"string\"\n }\n },\n \"processingHints\": {\n \"description\": - \"A list of suggestions that may improve YouTube's ability to process the - video.\",\n \"type\": \"array\",\n \"items\": {\n \"enum\": - [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"The MP4 file is not streamable, - this will slow down the processing. MOOV atom was not found at the beginning - of the file.\",\n \"Probably a better quality version of the - video exists. The video has wide screen aspect ratio, but is not an HD video.\",\n - \ \"Uploaded video is spherical video.\",\n \"Uploaded - video has spatial audio.\",\n \"Uploaded video is VR video.\",\n - \ \"Uploaded video is HDR video.\"\n ]\n }\n - \ },\n \"processingErrors\": {\n \"description\": \"A - list of errors that will prevent YouTube from successfully processing the - uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\",\n \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"audioFile\",\n \"imageFile\",\n - \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n - \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n }\n },\n \"tagSuggestions\": {\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoSuggestionsTagSuggestion\"\n }\n },\n \"editorSuggestions\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ],\n - \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ]\n - \ },\n \"description\": \"A list of video editing operations - that might improve the video quality or playback experience of the uploaded - video.\"\n }\n }\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"value\": {\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"ChannelAuditDetails\": {\n \"description\": \"The auditDetails - object encapsulates channel data that is relevant for YouTube Partners during - the audit process.\",\n \"id\": \"ChannelAuditDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel respects the community guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n }\n }\n },\n - \ \"ActivityContentDetailsComment\": {\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with the - comment.\"\n }\n },\n \"description\": \"Information about - a resource that received a comment.\",\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsComment\"\n },\n \"VideoCategorySnippet\": {\n - \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The video category's title.\"\n },\n \"channelId\": - {\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"description\": - \"The YouTube channel that created the video category.\",\n \"type\": - \"string\"\n },\n \"assignable\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a video category, such as its localized title.\",\n \"id\": - \"VideoCategorySnippet\"\n },\n \"SuperStickerMetadata\": {\n \"properties\": - {\n \"altText\": {\n \"description\": \"Internationalized - alt text that describes the sticker image and any animation associated with - it.\",\n \"type\": \"string\"\n },\n \"altTextLanguage\": - {\n \"description\": \"Specifies the localization language in which - the alt text is returned.\",\n \"type\": \"string\"\n },\n - \ \"stickerId\": {\n \"type\": \"string\",\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\"\n - \ }\n },\n \"id\": \"SuperStickerMetadata\",\n \"type\": - \"object\"\n },\n \"ChannelBannerResource\": {\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"url\": {\n - \ \"description\": \"The URL of this banner image.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#channelBannerResource\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n - \ }\n },\n \"id\": \"ChannelBannerResource\"\n },\n \"ChannelConversionPing\": - {\n \"description\": \"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.\",\n \"type\": \"object\",\n \"properties\": - {\n \"conversionUrl\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"context\": {\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"Defines the context of the ping.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ChannelConversionPing\"\n - \ },\n \"ChannelToStoreLinkDetails\": {\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"properties\": {\n \"storeUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Landing page of the store.\"\n },\n \"merchantId\": - {\n \"description\": \"Google Merchant Center id of the store.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"storeName\": {\n \"type\": \"string\",\n \"description\": - \"Name of the store.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\"\n },\n \"LiveChatBanSnippet\": - {\n \"id\": \"LiveChatBanSnippet\",\n \"properties\": {\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n },\n - \ \"type\": {\n \"enumDescriptions\": [\n \"An invalid - ban type.\",\n \"A permanent ban.\",\n \"A temporary - ban.\"\n ],\n \"description\": \"The type of ban.\",\n \"enum\": - [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"type\": \"string\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The chat this ban is pertinent to.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveStreamContentDetails\": {\n \"description\": - \"Detailed settings of a stream.\",\n \"properties\": {\n \"closedCaptionsIngestionUrl\": - {\n \"type\": \"string\",\n \"description\": \"The ingestion - URL where the closed captions of this stream are sent.\"\n },\n \"isReusable\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the stream is reusable, which means that it can be bound to multiple - broadcasts. It is common for broadcasters to reuse the same stream for many - different broadcasts if those broadcasts occur at different times. If you - set this value to false, then the stream will not be reusable, which means - that it can only be bound to one broadcast. Non-reusable streams differ from - reusable streams in the following ways: - A non-reusable stream can only be - bound to one broadcast. - A non-reusable stream might be deleted by an automated - process after the broadcast ends. - The liveStreams.list method does not list - non-reusable streams if you call the method and set the mine parameter to - true. The only way to use that method to retrieve the resource for a non-reusable - stream is to use the id parameter to identify the stream. \"\n }\n - \ },\n \"id\": \"LiveStreamContentDetails\",\n \"type\": \"object\"\n - \ },\n \"ResourceId\": {\n \"type\": \"object\",\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the referred resource, if that resource is a video. This - property is only present if the resourceId.kind value is youtube#video.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"The type of the API resource.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"A resource id is a generic reference that - points to another YouTube resource.\",\n \"id\": \"ResourceId\"\n },\n - \ \"MembershipsDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"highestAccessibleLevel\": {\n \"type\": \"string\",\n - \ \"description\": \"Id of the highest level that the user has access - to at the moment.\"\n },\n \"membershipsDuration\": {\n \"description\": - \"Data about memberships duration without taking into consideration pricing - levels.\",\n \"$ref\": \"MembershipsDuration\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n },\n - \ \"accessibleLevels\": {\n \"description\": \"Ids of all levels - that the user has access to. This includes the currently active level and - all other levels that are included because of a higher purchase.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"membershipsDurationAtLevels\": {\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"description\": - \"Data about memberships duration on particular pricing levels.\",\n \"type\": - \"array\"\n }\n },\n \"id\": \"MembershipsDetails\"\n },\n - \ \"LiveChatModerator\": {\n \"description\": \"A *liveChatModerator* - resource represents a moderator for a YouTube live chat. A chat moderator - has the ability to ban/unban users from a chat, remove message, etc.\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveChatModerator\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveChatModeratorSnippet\",\n \"description\": \"The snippet object - contains basic details about the moderator.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatModerator\"\n },\n \"VideoListResponse\": - {\n \"id\": \"VideoListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Video\"\n },\n \"type\": \"array\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n }\n }\n },\n \"Activity\": {\n \"type\": - \"object\",\n \"description\": \"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.\",\n \"id\": \"Activity\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the activity, including the activity's type and group ID.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#activity\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ActivityContentDetails\",\n \"description\": - \"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.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoStatus\": - {\n \"description\": \"Basic details about a video category, such as - its localized title. Next Id: 18\",\n \"type\": \"object\",\n \"id\": - \"VideoStatus\",\n \"properties\": {\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"rejectionReason\": - {\n \"description\": \"This value explains why YouTube rejected an - uploaded video. This property is only present if the uploadStatus property - indicates that the upload was rejected.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ],\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n },\n \"privacyStatus\": - {\n \"description\": \"The video's privacy status.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"failureReason\": {\n \"description\": \"This value explains - why a video failed to upload. This property is only present if the uploadStatus - property indicates that the upload failed.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ],\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ]\n },\n \"license\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"embeddable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"madeForKids\": {\n \"type\": - \"boolean\"\n },\n \"uploadStatus\": {\n \"description\": - \"The status of the uploaded video.\",\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ],\n \"enumDescriptions\": [\n - \ \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"type\": - \"string\"\n },\n \"publishAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the video is scheduled - to publish. It can be set only if the privacy status of the video is private..\",\n - \ \"format\": \"date-time\"\n }\n }\n },\n \"Cuepoint\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The identifier - for cuepoint resource.\",\n \"type\": \"string\"\n },\n \"insertionOffsetTimeMs\": - {\n \"type\": \"string\",\n \"description\": \"The time - when the cuepoint should be inserted by offset to the broadcast actual start - time.\",\n \"format\": \"int64\"\n },\n \"walltimeMs\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The wall clock time at which the cuepoint should be inserted. Only one of - insertion_offset_time_ms and walltime_ms may be set at a time.\"\n },\n - \ \"durationSecs\": {\n \"format\": \"uint32\",\n \"description\": - \"The duration of this cuepoint.\",\n \"type\": \"integer\"\n },\n - \ \"cueType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ]\n - \ }\n },\n \"description\": \"Note that there may be a 5-second - end-point resolution issue. For instance, if a cuepoint comes in for 22:03:27, - we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. This is an - artifact of HLS.\",\n \"type\": \"object\",\n \"id\": \"Cuepoint\"\n - \ },\n \"LiveBroadcastSnippet\": {\n \"description\": \"Basic broadcast - information.\",\n \"type\": \"object\",\n \"properties\": {\n \"scheduledStartTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the broadcast is scheduled to start.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"isDefaultBroadcast\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the broadcast. For each nested - object in this object, the key is the name of the thumbnail image, and the - value is an object that contains other information about the thumbnail.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the live chat for this broadcast.\"\n },\n \"actualEndTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the broadcast actually ended. This information is only - available once the broadcast's state is complete.\",\n \"type\": - \"string\"\n },\n \"scheduledEndTime\": {\n \"description\": - \"The date and time that the broadcast is scheduled to end.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is publishing the broadcast.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the broadcast was added to YouTube's live broadcast schedule.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"actualStartTime\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast actually started. This information - is only available once the broadcast's state is live.\",\n \"format\": - \"date-time\"\n },\n \"description\": {\n \"description\": - \"The broadcast's description. As with the title, you can set this field by - modifying the broadcast resource or by setting the description field of the - corresponding video resource.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveBroadcastSnippet\"\n },\n \"LiveStreamListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveStreamListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"items\": {\n - \ \"description\": \"A list of live streams that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveStream\"\n }\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ }\n },\n \"id\": \"LiveStreamListResponse\",\n \"type\": - \"object\"\n },\n \"SubscriptionListResponse\": {\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of subscriptions that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Subscription\"\n }\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"default\": \"youtube#subscriptionListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"SubscriptionListResponse\",\n - \ \"type\": \"object\"\n },\n \"LiveBroadcast\": {\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the event, including its title, description, - start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the event's status.\",\n \"$ref\": - \"LiveBroadcastStatus\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"default\": \"youtube#liveBroadcast\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the broadcast.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information about the event's video content, such as whether - the content can be shown in an embedded video player or if it will be archived - and therefore available for viewing after the event has concluded.\",\n \"$ref\": - \"LiveBroadcastContentDetails\"\n },\n \"statistics\": {\n \"$ref\": - \"LiveBroadcastStatistics\",\n \"description\": \"The statistics - object contains info about the event's current stats. These include concurrent - viewers and total chat count. Statistics can change (in either direction) - during the lifetime of an event. Statistics are only returned while the event - is live.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"A *liveBroadcast* resource represents an event that will be streamed, via - live video, on YouTube.\",\n \"id\": \"LiveBroadcast\"\n },\n \"VideoAgeGating\": - {\n \"properties\": {\n \"alcoholContent\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether or not the video - has alcoholic beverage content. Only users of legal purchasing age in a particular - country, as identified by ICAP, can view the content.\"\n },\n \"restricted\": - {\n \"type\": \"boolean\",\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\"\n },\n - \ \"videoGameRating\": {\n \"enum\": [\n \"anyone\",\n - \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"Video game rating, if any.\"\n - \ }\n },\n \"id\": \"VideoAgeGating\",\n \"type\": \"object\"\n - \ },\n \"VideoLiveStreamingDetails\": {\n \"description\": \"Details - about the live streaming metadata.\",\n \"type\": \"object\",\n \"properties\": - {\n \"actualEndTime\": {\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast actually ended. This value will not be available - until the broadcast is over.\",\n \"format\": \"date-time\"\n },\n - \ \"actualStartTime\": {\n \"description\": \"The time that - the broadcast actually started. This value will not be available until the - broadcast begins.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"scheduledEndTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The time that the broadcast is - scheduled to end. If the value is empty or the property is not present, then - the broadcast is scheduled to contiue indefinitely.\",\n \"type\": - \"string\"\n },\n \"concurrentViewers\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast is scheduled to begin.\"\n - \ },\n \"activeLiveChatId\": {\n \"description\": \"The - ID of the currently active live chat attached to this video. This field is - filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"VideoLiveStreamingDetails\"\n },\n \"MemberListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#memberListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#memberListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"items\": {\n \"description\": \"A list of members - that match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Member\"\n }\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"MemberListResponse\"\n },\n \"CdnSettings\": - {\n \"description\": \"Brief description of the live stream cdn settings.\",\n - \ \"type\": \"object\",\n \"id\": \"CdnSettings\",\n \"properties\": - {\n \"ingestionInfo\": {\n \"description\": \"The ingestionInfo - object contains information that YouTube provides that you need to transmit - your RTMP or HTTP stream to YouTube.\",\n \"$ref\": \"IngestionInfo\"\n - \ },\n \"format\": {\n \"description\": \"The format - of the video stream that you are sending to Youtube. \",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"ingestionType\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"rtmp\",\n \"dash\",\n \"webrtc\",\n \"hls\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \" The method or protocol - used to transmit the video stream.\"\n },\n \"resolution\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\"\n },\n \"frameRate\": {\n \"type\": \"string\",\n - \ \"description\": \"The frame rate of the inbound video data.\",\n - \ \"enum\": [\n \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n }\n },\n \"I18nLanguage\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the i18n language.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"default\": \"youtube#i18nLanguage\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n language, such as language code and human-readable name.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"I18nLanguage\",\n - \ \"type\": \"object\",\n \"description\": \"An *i18nLanguage* resource - identifies a UI language currently supported by YouTube.\"\n },\n \"I18nLanguageSnippet\": - {\n \"description\": \"Basic details about an i18n language, such as - language code and human-readable name.\",\n \"id\": \"I18nLanguageSnippet\",\n - \ \"properties\": {\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the language in the - language itself.\"\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"A short BCP-47 code that uniquely identifies - a language.\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelSectionTargeting\": - {\n \"type\": \"object\",\n \"id\": \"ChannelSectionTargeting\",\n - \ \"description\": \"ChannelSection targeting setting.\",\n \"properties\": - {\n \"regions\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\",\n \"description\": \"The - region the channel section is targeting.\"\n },\n \"languages\": - {\n \"description\": \"The language the channel section is targeting.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"countries\": {\n \"description\": - \"The country the channel section is targeting.\",\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ }\n }\n },\n \"ThirdPartyLinkStatus\": {\n \"description\": - \"The third-party link status object contains information about the status - of the link.\",\n \"id\": \"ThirdPartyLinkStatus\",\n \"properties\": - {\n \"linkStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ]\n }\n - \ },\n \"type\": \"object\"\n },\n \"CommentThread\": {\n \"type\": - \"object\",\n \"id\": \"CommentThread\",\n \"description\": \"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.\",\n \"properties\": {\n \"replies\": {\n - \ \"$ref\": \"CommentThreadReplies\",\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThread\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#commentThread\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment thread.\"\n },\n \"snippet\": - {\n \"$ref\": \"CommentThreadSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ThumbnailDetails\": {\n \"description\": \"Internal representation - of thumbnails for a YouTube resource.\",\n \"type\": \"object\",\n \"id\": - \"ThumbnailDetails\",\n \"properties\": {\n \"high\": {\n \"description\": - \"The high quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"standard\": {\n \"description\": \"The standard - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"default\": {\n \"description\": \"The default image for - this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"maxres\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The maximum - resolution quality image for this resource.\"\n },\n \"medium\": - {\n \"description\": \"The medium quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n }\n }\n },\n \"VideoAbuseReportReason\": - {\n \"id\": \"VideoAbuseReportReason\",\n \"type\": \"object\",\n - \ \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"description\": \"The - ID of this abuse report reason.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReason\"\n - \ },\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n }\n }\n },\n \"LevelDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"displayName\": - {\n \"description\": \"The name that should be used when referring - to this level.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LevelDetails\"\n },\n \"CaptionListResponse\": {\n \"id\": \"CaptionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"Caption\"\n },\n - \ \"description\": \"A list of captions that match the request criteria.\",\n - \ \"type\": \"array\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\"\n }\n }\n - \ },\n \"SuperChatEvent\": {\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n \"default\": - \"youtube#superChatEvent\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the Super Chat event.\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\",\n - \ \"$ref\": \"SuperChatEventSnippet\"\n }\n },\n \"id\": - \"SuperChatEvent\",\n \"description\": \"A `__superChatEvent__` resource - represents a Super Chat purchase on a YouTube channel.\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsFavorite\": {\n \"type\": - \"object\",\n \"description\": \"Information about a video that was marked - as a favorite video.\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that was marked as a favorite.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"SubscriptionContentDetails\": {\n \"description\": \"Details - about the content to witch a subscription refers.\",\n \"id\": \"SubscriptionContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"newItemCount\": - {\n \"description\": \"The number of new items in the subscription - since its content was last read.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"activityType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\"\n - \ },\n \"totalItemCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The approximate - number of items that the subscription points to.\"\n }\n }\n },\n - \ \"VideoProcessingDetailsProcessingProgress\": {\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"Video processing progress and completion time estimate.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"partsTotal\": - {\n \"format\": \"uint64\",\n \"description\": \"An estimate - of the total number of parts that need to be processed for the video. The - number may be updated with more precise estimates while YouTube processes - the video.\",\n \"type\": \"string\"\n },\n \"timeLeftMs\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\"\n },\n \"partsProcessed\": {\n - \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\"\n - \ }\n }\n },\n \"VideoFileDetailsAudioStream\": {\n \"description\": - \"Information about an audio stream.\",\n \"type\": \"object\",\n \"id\": - \"VideoFileDetailsAudioStream\",\n \"properties\": {\n \"channelCount\": - {\n \"description\": \"The number of audio channels that the stream - contains.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The audio codec that the stream uses.\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The audio stream's bitrate, in bits per second.\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n }\n }\n },\n \"IngestionInfo\": {\n \"properties\": - {\n \"streamName\": {\n \"description\": \"The stream name - that YouTube assigns to the video stream.\",\n \"type\": \"string\"\n - \ },\n \"rtmpsIngestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"This ingestion url may be used instead of ingestionAddress - in order to stream via RTMPS. Not applicable to non-RTMP streams.\"\n },\n - \ \"backupIngestionAddress\": {\n \"description\": \"The backup - ingestion URL that you should use to stream video to YouTube. You have the - option of simultaneously streaming the content that you are sending to the - ingestionAddress to this URL.\",\n \"type\": \"string\"\n },\n - \ \"ingestionAddress\": {\n \"type\": \"string\",\n \"description\": - \"The primary ingestion URL that you should use to stream video to YouTube. - You must stream video to this URL. Depending on which application or tool - you use to encode your video stream, you may need to enter the stream URL - and stream name separately or you may need to concatenate them in the following - format: *STREAM_URL/STREAM_NAME* \"\n },\n \"rtmpsBackupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of backupIngestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n }\n },\n \"id\": - \"IngestionInfo\",\n \"description\": \"Describes information necessary - for ingesting an RTMP, HTTP, or SRT stream.\",\n \"type\": \"object\"\n - \ },\n \"ActivityListResponse\": {\n \"id\": \"ActivityListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"Activity\"\n },\n - \ \"type\": \"array\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"kind\": {\n \"default\": - \"youtube#activityListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n }\n }\n },\n \"PlaylistListResponse\": {\n \"id\": - \"PlaylistListResponse\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"default\": \"youtube#playlistListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"description\": \"A list of playlists that match the request criteria\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n }\n },\n \"type\": - \"object\"\n },\n \"ThirdPartyLinkListResponse\": {\n \"id\": \"ThirdPartyLinkListResponse\",\n - \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n }\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n \"description\": - \"Details about a resource which is being promoted.\",\n \"properties\": - {\n \"clickTrackingUrl\": {\n \"type\": \"string\",\n \"description\": - \"The URL the client should ping to indicate that the user clicked through - on this promoted item.\"\n },\n \"creativeViewUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\",\n \"type\": \"string\"\n },\n \"adTag\": - {\n \"description\": \"The URL the client should fetch to request - a promoted item.\",\n \"type\": \"string\"\n },\n \"impressionUrl\": - {\n \"description\": \"The list of impression URLs. The client should - ping all of these URLs to indicate that the user was shown this promoted item.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the promoted video.\"\n },\n \"destinationUrl\": {\n - \ \"description\": \"The URL the client should direct the user to, - if the user chooses to visit the advertiser's website.\",\n \"type\": - \"string\"\n },\n \"descriptionText\": {\n \"type\": - \"string\",\n \"description\": \"The text description to accompany - the promoted item.\"\n },\n \"forecastingUrl\": {\n \"description\": - \"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.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"customCtaButtonText\": {\n - \ \"description\": \"The custom call-to-action button text. If specified, - it will override the default button text for the cta_type.\",\n \"type\": - \"string\"\n },\n \"ctaType\": {\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"InvideoBranding\": - {\n \"id\": \"InvideoBranding\",\n \"properties\": {\n \"targetChannelId\": - {\n \"description\": \"The channel to which this branding links. - If not present it defaults to the current channel.\",\n \"type\": - \"string\"\n },\n \"position\": {\n \"description\": - \"The spatial position within the video where the branding watermark will - be displayed.\",\n \"$ref\": \"InvideoPosition\"\n },\n \"imageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The url of - the uploaded image. Only used in apiary to api communication.\"\n },\n - \ \"imageBytes\": {\n \"type\": \"string\",\n \"format\": - \"byte\",\n \"description\": \"The bytes the uploaded image. Only - used in api to youtube communication.\"\n },\n \"timing\": {\n - \ \"description\": \"The temporal position within the video where - watermark will be displayed.\",\n \"$ref\": \"InvideoTiming\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"LINT.IfChange - Describes an invideo branding.\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"id\": \"ActivityContentDetailsRecommendation\",\n \"type\": - \"object\",\n \"properties\": {\n \"seedResourceId\": {\n \"description\": - \"The seedResourceId object contains information about the resource that caused - the recommendation.\",\n \"$ref\": \"ResourceId\"\n },\n \"reason\": - {\n \"enum\": [\n \"reasonUnspecified\",\n \"videoFavorited\",\n - \ \"videoLiked\",\n \"videoWatched\"\n ],\n - \ \"description\": \"The reason that the resource is recommended to - the user.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the recommended resource.\"\n }\n },\n \"description\": - \"Information that identifies the recommended resource.\"\n },\n \"SearchListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#searchListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n },\n - \ \"items\": {\n \"description\": \"Pagination information - for token pagination.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SearchResult\"\n }\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"regionCode\": {\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": - \"SearchListResponse\"\n },\n \"LiveChatMessageDeletedDetails\": {\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageDeletedDetails\"\n },\n \"AbuseReport\": {\n \"type\": - \"object\",\n \"id\": \"AbuseReport\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\"\n },\n \"abuseTypes\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"AbuseType\"\n }\n },\n \"subject\": {\n \"$ref\": - \"Entity\"\n },\n \"relatedEntities\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n - \ }\n }\n }\n },\n \"PlaylistItemListResponse\": - {\n \"id\": \"PlaylistItemListResponse\",\n \"properties\": {\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of playlist items that match the request criteria.\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ChannelListResponse\": - {\n \"id\": \"ChannelListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#channelListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Channel\"\n },\n \"type\": \"array\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ }\n },\n \"LiveChatMessageRetractedDetails\": {\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"type\": - \"object\"\n },\n \"CommentThreadReplies\": {\n \"properties\": - {\n \"comments\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"description\": - \"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.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Comments written in (direct or indirect) reply to - the top level comment.\",\n \"id\": \"CommentThreadReplies\"\n },\n - \ \"CommentListResponse\": {\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#commentListResponse\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - comments that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Comment\"\n }\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"id\": \"CommentListResponse\",\n \"type\": - \"object\"\n },\n \"Caption\": {\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#caption\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the caption track.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n }\n - \ }\n },\n \"description\": \"A *caption* resource represents - a YouTube caption track. A caption track is associated with exactly one YouTube - video.\",\n \"type\": \"object\",\n \"id\": \"Caption\"\n },\n - \ \"TestItem\": {\n \"properties\": {\n \"id\": {\n \"type\": - \"string\"\n },\n \"gaia\": {\n \"format\": \"int64\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"TestItemTestItemSnippet\"\n },\n \"featuredPart\": {\n \"type\": - \"boolean\"\n }\n },\n \"id\": \"TestItem\",\n \"type\": - \"object\"\n },\n \"ChannelSnippet\": {\n \"description\": \"Basic - details about a channel, including title, description and thumbnails.\",\n - \ \"properties\": {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\"\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n },\n - \ \"customUrl\": {\n \"description\": \"The custom url of the - channel.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - title.\"\n },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the channel was created.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel's default title - and description.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"$ref\": \"ChannelLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"description\": - {\n \"description\": \"The description of the channel.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ChannelSnippet\",\n \"type\": - \"object\"\n },\n \"PageInfo\": {\n \"id\": \"PageInfo\",\n \"type\": - \"object\",\n \"properties\": {\n \"totalResults\": {\n \"type\": - \"integer\",\n \"description\": \"The total number of results in - the result set.\",\n \"format\": \"int32\"\n },\n \"resultsPerPage\": - {\n \"format\": \"int32\",\n \"description\": \"The number - of results included in the API response.\",\n \"type\": \"integer\"\n - \ }\n },\n \"description\": \"Paging details for lists of - resources, including total number of items available and number of resources - returned in a single page.\"\n },\n \"InvideoPosition\": {\n \"id\": - \"InvideoPosition\",\n \"description\": \"Describes the spatial position - of a visual widget inside a video. It is a union of various position types, - out of which only will be set one.\",\n \"type\": \"object\",\n \"properties\": - {\n \"cornerPosition\": {\n \"enum\": [\n \"topLeft\",\n - \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n - \ ],\n \"description\": \"Describes in which corner of the - video the visual widget will appear.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\"\n - \ ],\n \"enum\": [\n \"corner\"\n ],\n - \ \"description\": \"Defines the position type.\"\n }\n }\n - \ },\n \"LiveStreamStatus\": {\n \"type\": \"object\",\n \"description\": - \"Brief description of the live stream status.\",\n \"properties\": {\n - \ \"healthStatus\": {\n \"$ref\": \"LiveStreamHealthStatus\",\n - \ \"description\": \"The health status of the stream.\"\n },\n - \ \"streamStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ]\n }\n },\n \"id\": \"LiveStreamStatus\"\n - \ },\n \"GeoPoint\": {\n \"description\": \"Geographical coordinates - of a point, in WGS84.\",\n \"properties\": {\n \"longitude\": - {\n \"description\": \"Longitude in degrees.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n },\n \"altitude\": - {\n \"format\": \"double\",\n \"description\": \"Altitude - above the reference ellipsoid, in meters.\",\n \"type\": \"number\"\n - \ },\n \"latitude\": {\n \"type\": \"number\",\n \"description\": - \"Latitude in degrees.\",\n \"format\": \"double\"\n }\n },\n - \ \"id\": \"GeoPoint\",\n \"type\": \"object\"\n },\n \"PlaylistContentDetails\": - {\n \"id\": \"PlaylistContentDetails\",\n \"properties\": {\n \"itemCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n },\n \"type\": - \"object\"\n },\n \"PlaylistStatus\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The playlist's - privacy status.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"PlaylistStatus\"\n },\n \"CaptionSnippet\": {\n \"description\": - \"Basic details about a caption track, such as its language and name.\",\n - \ \"type\": \"object\",\n \"id\": \"CaptionSnippet\",\n \"properties\": - {\n \"isCC\": {\n \"description\": \"Indicates whether the - track contains closed captions for the deaf and hard of hearing. The default - value is false.\",\n \"type\": \"boolean\"\n },\n \"isLarge\": - {\n \"description\": \"Indicates whether the caption track uses large - text for the vision-impaired. The default value is false.\",\n \"type\": - \"boolean\"\n },\n \"videoId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video associated with - the caption track. @mutable youtube.captions.insert\"\n },\n \"status\": - {\n \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The caption track's status.\",\n \"type\": \"string\"\n },\n - \ \"audioTrackType\": {\n \"description\": \"The type of audio - track associated with the caption track.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ]\n },\n \"trackKind\": - {\n \"enum\": [\n \"standard\",\n \"ASR\",\n - \ \"forced\"\n ],\n \"description\": \"The caption - track's type.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"name\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The name of the - caption track. The name is intended to be visible to the user as an option - during playback.\"\n },\n \"failureReason\": {\n \"type\": - \"string\",\n \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ],\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"language\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The language of the caption track. The property - value is a BCP-47 language tag.\",\n \"type\": \"string\"\n },\n - \ \"lastUpdated\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the caption track was last updated.\",\n \"type\": - \"string\"\n },\n \"isDraft\": {\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n },\n - \ \"isAutoSynced\": {\n \"description\": \"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.\",\n - \ \"type\": \"boolean\"\n },\n \"isEasyReader\": {\n - \ \"type\": \"boolean\",\n \"description\": \"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.\"\n }\n }\n - \ },\n \"LiveChatMembershipGiftingDetails\": {\n \"properties\": - {\n \"giftMembershipsLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\"\n },\n - \ \"giftMembershipsCount\": {\n \"format\": \"int32\",\n \"description\": - \"The number of gift memberships purchased by the user.\",\n \"type\": - \"integer\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMembershipGiftingDetails\"\n },\n \"ChannelSectionListResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of ChannelSections that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ }\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelSectionListResponse\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelSectionListResponse\"\n - \ },\n \"I18nLanguageListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"I18nLanguageListResponse\",\n \"properties\": {\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"I18nLanguage\"\n },\n \"description\": \"A list of supported - i18n languages. In this map, the i18n language ID is the map key, and its - value is the corresponding i18nLanguage resource.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\"\n }\n }\n - \ },\n \"ChannelConversionPings\": {\n \"properties\": {\n \"pings\": - {\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ },\n \"description\": \"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.\",\n \"type\": \"array\"\n - \ }\n },\n \"description\": \"The conversionPings object encapsulates - information about conversion pings that need to be respected by the channel.\",\n - \ \"type\": \"object\",\n \"id\": \"ChannelConversionPings\"\n },\n - \ \"ActivityContentDetailsBulletin\": {\n \"description\": \"Details - about a channel bulletin post.\",\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with a - bulletin post. @mutable youtube.activities.insert\"\n }\n }\n - \ },\n \"LocalizedProperty\": {\n \"id\": \"LocalizedProperty\",\n - \ \"properties\": {\n \"localized\": {\n \"items\": {\n - \ \"$ref\": \"LocalizedString\"\n },\n \"type\": - \"array\"\n },\n \"defaultLanguage\": {\n \"$ref\": - \"LanguageTag\",\n \"description\": \"The language of the default - property.\"\n },\n \"default\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ContentRating\": - {\n \"properties\": {\n \"rtcRating\": {\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"A\",\n \"B\",\n \"B15\",\n - \ \"C\",\n \"D\",\n \"\"\n ],\n \"enum\": - [\n \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"mibacRating\": {\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\"\n },\n \"mpaaRating\": {\n \"enum\": - [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Motion Picture Association - of America (MPAA) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"NC-17\",\n \"! X\",\n \"\"\n ]\n - \ },\n \"smsaRating\": {\n \"description\": \"The video's - rating from Statens medier\xE5d (Sweden's National Media Council).\",\n \"enum\": - [\n \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"All - ages\",\n \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"icaaRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - Spain) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ],\n - \ \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ]\n },\n \"anatelRating\": - {\n \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n - \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n - \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n - \ \"anatelUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\"\n },\n \"cscfRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"description\": \"The video's rating from Luxembourg's - Commission de surveillance de la classification des films (CSCF).\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"chfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Switzerland.\",\n \"enum\": - [\n \"chfilmUnspecified\",\n \"chfilm0\",\n \"chfilm6\",\n - \ \"chfilm12\",\n \"chfilm16\",\n \"chfilm18\",\n - \ \"chfilmUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"cbfcRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n - \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n - \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n - \ \"cbfcUnrated\"\n ],\n \"description\": \"The - video's Central Board of Film Certification (CBFC - India) rating.\"\n },\n - \ \"agcomRating\": {\n \"description\": \"The video's rating - from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n - \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"tvpgRating\": - {\n \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n - \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n - \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ],\n \"description\": \"The video's TV Parental Guidelines - (TVPG) rating.\"\n },\n \"rcnofRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Hungarian - Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n - \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n - \ \"rcnofVi\",\n \"rcnofUnrated\"\n ]\n },\n - \ \"cceRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"4\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\",\n \"14\"\n ],\n - \ \"description\": \"The video's rating from Portugal's Comiss\xE3o - de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ],\n \"type\": \"string\"\n },\n - \ \"resorteviolenciaRating\": {\n \"description\": \"The video's - rating in Venezuela.\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"catvfrRating\": {\n \"description\": \"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.\",\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ]\n },\n \"kmrbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ],\n \"description\": \"The video's Korea Media Rating - Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. The KMRB - rates videos in South Korea.\",\n \"type\": \"string\"\n },\n - \ \"ecbmctRating\": {\n \"type\": \"string\",\n \"description\": - \"Rating system in Turkey - Evaluation and Classification Board of the Ministry - of Culture and Tourism\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ]\n },\n \"catvRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ],\n \"description\": \"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.\"\n - \ },\n \"djctqRating\": {\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\"\n },\n \"rteRating\": - {\n \"description\": \"The video's rating from Ireland's Raidi\xF3 - Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GA\",\n \"CH\",\n \"PS\",\n \"MA\",\n - \ \"\"\n ],\n \"enum\": [\n \"rteUnspecified\",\n - \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n - \ \"rteUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"nfvcbRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Nigeria's National Film - and Video Censors Board.\",\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ]\n },\n \"nkclvRating\": {\n \"enum\": - [\n \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n - \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n - \ \"nkclvUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Nacion\xE3lais Kino - centrs (National Film Centre of Latvia).\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"bbfcRating\": {\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"description\": - \"The video's British Board of Film Classification (BBFC) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"ifcoRating\": {\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ],\n \"description\": \"The video's Irish Film Classification - Office (IFCO - Ireland) rating. See the IFCO website for more information.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"15A\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"kijkwijzerRating\": {\n - \ \"description\": \"The video's NICAM/Kijkwijzer rating from the - Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ]\n },\n \"nfrcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"cncRating\": - {\n \"type\": \"string\",\n \"description\": \"Rating system - in France - Commission de classification cinematographique\",\n \"enum\": - [\n \"cncUnspecified\",\n \"cncT\",\n \"cnc10\",\n - \ \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n \"cncE\",\n - \ \"cncInterdiction\",\n \"cncUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ]\n - \ },\n \"medietilsynetRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n - \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Medietilsynet, the Norwegian Media Authority.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ]\n },\n \"nmcRating\": {\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ]\n },\n \"egfilmRating\": {\n \"description\": - \"The video's rating in Egypt.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ]\n },\n \"grfilmRating\": - {\n \"description\": \"The video's rating in Greece.\",\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n - \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n - \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n - \ ]\n },\n \"bfvcRating\": {\n \"enum\": [\n - \ \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Thailand's Board of Film - and Video Censors.\",\n \"type\": \"string\"\n },\n \"czfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"description\": - \"The video's rating in the Czech Republic.\"\n },\n \"eefilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Estonia.\"\n },\n \"menaMpaaRating\": - {\n \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ],\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"moctwRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ],\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\"\n - \ },\n \"smaisRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Iceland.\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ]\n },\n \"mtrcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ]\n },\n \"fpbRatingReasons\": - {\n \"description\": \"Reasons that explain why the video received - its FPB (South Africa) rating.\",\n \"type\": \"array\",\n \"items\": - {\n \"enumDescriptions\": [\n \"\",\n \"South - Africa rating content descriptors.\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"type\": \"string\"\n }\n },\n - \ \"pefilmRating\": {\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"PT\",\n - \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Peru.\"\n - \ },\n \"nbcplRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in Poland.\",\n - \ \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n - \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n - \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ]\n - \ },\n \"csaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ],\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ],\n \"description\": \"The video's rating from France's - Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\",\n - \ \"type\": \"string\"\n },\n \"mccaaRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Malta's - Film Age-Classification Board.\"\n },\n \"cnaRating\": {\n \"enum\": - [\n \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n - \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"description\": \"The - video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"ytRating\": {\n \"enum\": [\n \"ytUnspecified\",\n - \ \"ytAgeRestricted\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"description\": \"A rating that YouTube uses to identify age-restricted - content.\"\n },\n \"djctqRatingReasons\": {\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n - \ \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ],\n \"enum\": [\n - \ \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ]\n },\n \"type\": - \"array\"\n },\n \"fcoRating\": {\n \"description\": - \"The video's rating from Hong Kong's Office for Film, Newspaper and Article - Administration.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ]\n },\n - \ \"skfilmRating\": {\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Slovakia.\"\n - \ },\n \"oflcRating\": {\n \"enum\": [\n \"oflcUnspecified\",\n - \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n - \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n - \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n - \ \"oflcRp16\",\n \"oflcRp18\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\"\n },\n \"chvrsRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ],\n \"description\": \"The video's Canadian Home Video - Rating System (CHVRS) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ]\n },\n - \ \"fcbmRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"enum\": - [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ]\n },\n \"fpbRating\": - {\n \"description\": \"The video's rating from South Africa's Film - and Publication Board.\",\n \"type\": \"string\",\n \"enum\": - [\n \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n - \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n - \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ]\n },\n \"mdaRating\": - {\n \"description\": \"The video's rating from Singapore's Media - Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ]\n },\n \"acbRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n - \ \"description\": \"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.\",\n \"enum\": - [\n \"acbUnspecified\",\n \"acbE\",\n \"acbP\",\n - \ \"acbC\",\n \"acbG\",\n \"acbPg\",\n \"acbM\",\n - \ \"acbMa15plus\",\n \"acbR18plus\",\n \"acbUnrated\"\n - \ ]\n },\n \"fskRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft - (FSK - Germany) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"FSK 0\",\n \"FSK 6\",\n \"FSK 12\",\n - \ \"FSK 16\",\n \"FSK 18\",\n \"\"\n ],\n - \ \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ]\n },\n \"ilfilmRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n - \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ],\n \"description\": \"The - video's rating in Israel.\"\n },\n \"eirinRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's Eirin (\u6620\u502B) - rating. Eirin is the Japanese rating system.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ],\n \"enum\": - [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ]\n },\n \"incaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's INCAA (Instituto Nacional de Cine - y Artes Audiovisuales - Argentina) rating.\",\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ]\n },\n \"mccypRating\": {\n \"enum\": [\n - \ \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n - \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Danish - Film Institute's (Det Danske Filminstitut) Media Council for Children and - Young People.\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"cccRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Todo - espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n - \ \"14+\",\n \"18+\",\n \"18+ - contenido - excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\"\n - \ },\n \"mocRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"description\": \"The video's Ministerio de Cultura - (Colombia) rating.\",\n \"type\": \"string\"\n },\n \"fmocRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"E\",\n \"\"\n ],\n - \ \"description\": \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ]\n },\n \"mcstRating\": {\n \"description\": - \"The video's rating system for Vietnam - MCST\",\n \"enum\": [\n - \ \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ]\n },\n \"lsfRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from Indonesia's - Lembaga Sensor Film.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"SU\",\n \"A\",\n \"BO\",\n \"13\",\n - \ \"R\",\n \"17\",\n \"D\",\n \"21\",\n - \ \"\"\n ],\n \"enum\": [\n \"lsfUnspecified\",\n - \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n - \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n - \ \"lsfUnrated\"\n ]\n },\n \"nbcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n - \ \"18+R\",\n \"PU\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\"\n - \ },\n \"cicfRating\": {\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Commission de Contr\xF4le - des Films (Belgium).\"\n },\n \"kfcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Kenya - Film Classification Board.\",\n \"type\": \"string\"\n },\n - \ \"bmukkRating\": {\n \"description\": \"The video's rating - from the Austrian Board of Media Classification (Bundesministerium f\xFCr - Unterricht, Kunst und Kultur).\",\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"russiaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - National Film Registry of the Russian Federation (MKRF - Russia) rating.\",\n - \ \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ]\n },\n - \ \"mekuRating\": {\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual - Institute).\",\n \"type\": \"string\"\n },\n \"mpaatRating\": - {\n \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ],\n \"description\": \"The rating - system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ContentRating\",\n \"type\": \"object\",\n - \ \"description\": \"Ratings schemes. The country-specific ratings are - mostly for movies and shows. LINT.IfChange\"\n },\n \"ChannelStatistics\": - {\n \"type\": \"object\",\n \"id\": \"ChannelStatistics\",\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\",\n \"properties\": {\n \"subscriberCount\": {\n - \ \"description\": \"The number of subscribers that the channel has.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"videoCount\": {\n \"description\": \"The number of videos - uploaded to the channel.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"viewCount\": {\n \"description\": - \"The number of times the channel has been viewed.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"commentCount\": - {\n \"description\": \"The number of comments for the channel.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"hiddenSubscriberCount\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether or not the number of subscribers is shown for this user.\"\n }\n - \ }\n },\n \"VideoAbuseReportReasonListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The `visitorId` identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n },\n \"description\": \"A list - of valid abuse reasons that are used with `video.ReportAbuse`.\",\n \"type\": - \"array\"\n }\n },\n \"id\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"Comment\": {\n \"id\": \"Comment\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#comment\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the comment.\"\n },\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment.\"\n }\n },\n \"description\": \"A *comment* - represents a single YouTube comment.\",\n \"type\": \"object\"\n },\n - \ \"PlaylistItemSnippet\": {\n \"id\": \"PlaylistItemSnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about a playlist, including - title, description and thumbnails. Basic details of a YouTube Playlist item - provided by the author. Next ID: 15\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the user that added the item to the playlist.\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist item. 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.\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist - item is in.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that is included in the playlist as the playlist item.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"videoOwnerChannelTitle\": {\n \"description\": - \"Channel title for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"position\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The order - in which the item appears in the playlist. The value uses a zero-based index, - so the first item has a position of 0, the second item has a position of 1, - and so forth.\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The item's title.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the item was added to - the playlist.\"\n },\n \"videoOwnerChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel id for the channel this - video belongs to.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The item's description.\"\n }\n - \ }\n },\n \"PlaylistItem\": {\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#playlistItem\\\".\",\n \"default\": - \"youtube#playlistItem\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the playlist item, such as its title and position in the playlist.\",\n - \ \"$ref\": \"PlaylistItemSnippet\"\n },\n \"contentDetails\": - {\n \"$ref\": \"PlaylistItemContentDetails\",\n \"description\": - \"The contentDetails object is included in the resource if the included item - is a YouTube video. The object contains additional information about the video.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\",\n \"$ref\": \"PlaylistItemStatus\"\n }\n },\n - \ \"description\": \"A *playlistItem* resource identifies another resource, - such as a video, that is included in a playlist. In addition, the playlistItem - resource contains details about the included resource that pertain specifically - to how that resource is used in that playlist. YouTube uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"type\": - \"object\",\n \"id\": \"PlaylistItem\"\n },\n \"Member\": {\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the member.\",\n \"$ref\": - \"MemberSnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#member\"\n }\n },\n - \ \"id\": \"Member\",\n \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": - {\n \"properties\": {\n \"items\": {\n \"description\": - \"A list of broadcasts that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n - \ }\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveBroadcastListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveBroadcastListResponse\",\n \"type\": \"object\"\n },\n \"MembershipsDurationAtLevel\": - {\n \"id\": \"MembershipsDurationAtLevel\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"level\": {\n \"description\": - \"Pricing level ID.\",\n \"type\": \"string\"\n },\n \"memberTotalDurationMonths\": - {\n \"format\": \"int32\",\n \"type\": \"integer\",\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\"\n },\n - \ \"memberSince\": {\n \"description\": \"The date and time - when the user became a continuous member for the given level.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoContentDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"countryRestriction\": {\n - \ \"$ref\": \"AccessPolicy\",\n \"description\": \"The countryRestriction - object contains information about the countries where a video is (or is not) - viewable.\"\n },\n \"projection\": {\n \"enum\": [\n - \ \"rectangular\",\n \"360\"\n ],\n \"description\": - \"Specifies the projection format of the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"duration\": {\n \"description\": - \"The length of the video. The tag value is an ISO 8601 duration in the format - PT#M#S, in which the letters PT indicate that the value specifies a period - of time, and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\",\n \"type\": - \"string\"\n },\n \"hasCustomThumbnail\": {\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n },\n \"contentRating\": {\n \"$ref\": - \"ContentRating\",\n \"description\": \"Specifies the ratings that - the video received under various rating schemes.\"\n },\n \"regionRestriction\": - {\n \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"caption\": - {\n \"enum\": [\n \"true\",\n \"false\"\n ],\n - \ \"description\": \"The value of captions indicates whether the video - has captions or not.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"licensedContent\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of is_license_content indicates whether the video is licensed content.\"\n - \ },\n \"dimension\": {\n \"type\": \"string\",\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\"\n },\n \"definition\": {\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"description\": \"The value of - definition indicates whether the video is available in high definition or - only in standard definition.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoContentDetails\",\n \"description\": \"Details - about the content of a YouTube Video.\"\n },\n \"PlaylistLocalization\": - {\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for playlist's title.\"\n - \ },\n \"description\": {\n \"description\": \"The localized - strings for playlist's description.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Playlist localization - setting\",\n \"id\": \"PlaylistLocalization\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"properties\": {\n \"memberMonth\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\"\n },\n \"userComment\": - {\n \"description\": \"The comment added by the member to this Member - Milestone Chat. This field is empty for messages without a comment from the - member.\",\n \"type\": \"string\"\n },\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level at which the viever is a member. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"VideoCategory\": {\n - \ \"type\": \"object\",\n \"id\": \"VideoCategory\",\n \"description\": - \"A *videoCategory* resource identifies a category that has been or could - be associated with uploaded videos.\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video category.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video category, including its title.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#videoCategory\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#videoCategory\"\n }\n - \ }\n },\n \"LiveChatMessageSnippet\": {\n \"properties\": - {\n \"liveChatId\": {\n \"type\": \"string\"\n },\n - \ \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"fanFundingEventDetails\": {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n - \ \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"description\": \"Details about the Gift Membership Received - event, this is only set if the type is 'giftMembershipReceivedEvent'.\",\n - \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n - \ \"superStickerDetails\": {\n \"description\": \"Details about - the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"displayMessage\": - {\n \"description\": \"Contains a string that can be displayed to - the user. If this field is not present the message is silent, at the moment - only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\",\n \"type\": - \"string\"\n },\n \"authorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the user that authored - this message, this field is not always filled. textMessageEvent - the user - that wrote the message fanFundingEvent - the user that funded the broadcast - newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"hasDisplayContent\": - {\n \"description\": \"Whether the message has display content that - should be displayed to users.\",\n \"type\": \"boolean\"\n },\n - \ \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n - \ \"description\": \"Details about the New Member Announcement event, - this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" - is the new term for \\\"sponsor\\\".\"\n },\n \"superChatDetails\": - {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"type\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of message, this will - always be present, it determines the contents of the message as well as which - fields will be present.\",\n \"enum\": [\n \"invalidType\",\n - \ \"textMessageEvent\",\n \"tombstone\",\n \"fanFundingEvent\",\n - \ \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ]\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the message was orignally - published.\",\n \"format\": \"date-time\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"memberMilestoneChatDetails\": {\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\",\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ }\n },\n \"description\": \"Next ID: 33\",\n \"type\": - \"object\",\n \"id\": \"LiveChatMessageSnippet\"\n },\n \"I18nRegionListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"default\": \"youtube#i18nRegionListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"description\": \"A list of regions where YouTube is available. - In this map, the i18n region ID is the map key, and its value is the corresponding - i18nRegion resource.\",\n \"items\": {\n \"$ref\": \"I18nRegion\"\n - \ },\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"I18nRegionListResponse\"\n },\n \"ThumbnailSetResponse\": {\n \"id\": - \"ThumbnailSetResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"default\": \"youtube#thumbnailSetResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": \"A list of - thumbnails.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n }\n - \ }\n },\n \"LiveStream\": {\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the stream, including its channel, title, and description.\",\n \"$ref\": - \"LiveStreamSnippet\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"default\": \"youtube#liveStream\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the stream.\"\n },\n \"contentDetails\": - {\n \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\",\n \"$ref\": - \"LiveStreamContentDetails\"\n },\n \"cdn\": {\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\",\n \"$ref\": \"CdnSettings\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n - \ }\n },\n \"id\": \"LiveStream\",\n \"type\": \"object\",\n - \ \"description\": \"A live stream describes a live ingestion point.\"\n - \ },\n \"VideoSnippet\": {\n \"description\": \"Basic details about - a video, including title, description, uploader, thumbnails and category.\",\n - \ \"properties\": {\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the video belongs to.\"\n },\n \"categoryId\": {\n \"description\": - \"The YouTube video category associated with the video.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\",\n - \ \"$ref\": \"VideoLocalization\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the videos's default snippet.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the video. 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.\"\n },\n \"defaultAudioLanguage\": {\n - \ \"type\": \"string\",\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that the video - was uploaded to.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the video - was uploaded.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"type\": \"string\"\n },\n \"tags\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of keyword tags - associated with the video. Tags may contain spaces.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"VideoSnippet\"\n },\n \"ActivityContentDetailsLike\": - {\n \"description\": \"Information about a resource that received a positive - (like) rating.\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"type\": \"object\"\n },\n \"ChannelStatus\": {\n \"description\": - \"JSON template for the status part of a channel.\",\n \"properties\": - {\n \"isLinked\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"Privacy status of the channel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"longUploadsStatus\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ]\n },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelStatus\"\n - \ },\n \"Channel\": {\n \"properties\": {\n \"status\": {\n - \ \"description\": \"The status object encapsulates information about - the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"brandingSettings\": - {\n \"$ref\": \"ChannelBrandingSettings\",\n \"description\": - \"The brandingSettings object encapsulates information about the branding - of the channel.\"\n },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n },\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#channel\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channel\\\".\",\n \"type\": \"string\"\n - \ },\n \"conversionPings\": {\n \"description\": \"The - conversionPings object encapsulates information about conversion pings that - need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n - \ \"description\": \"The contentDetails object encapsulates information - about the channel's content.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object encapsulates statistics for the channel.\",\n \"$ref\": - \"ChannelStatistics\"\n },\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n - \ \"auditDetails\": {\n \"description\": \"The auditionDetails - object encapsulates channel data that is relevant for YouTube Partners during - the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel, such as its - title, description, and thumbnail images.\"\n },\n \"contentOwnerDetails\": - {\n \"description\": \"The contentOwnerDetails object encapsulates - channel data that is relevant for YouTube Partners linked with the channel.\",\n - \ \"$ref\": \"ChannelContentOwnerDetails\"\n }\n },\n - \ \"description\": \"A *channel* resource contains information about a - YouTube channel.\",\n \"id\": \"Channel\",\n \"type\": \"object\"\n - \ },\n \"VideoPlayer\": {\n \"type\": \"object\",\n \"description\": - \"Player to be used for a video playback.\",\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\"\n },\n \"embedWidth\": - {\n \"description\": \"The embed width\",\n \"format\": - \"int64\",\n \"type\": \"string\"\n },\n \"embedHeight\": - {\n \"format\": \"int64\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoPlayer\"\n },\n \"CommentSnippet\": {\n - \ \"properties\": {\n \"authorChannelUrl\": {\n \"description\": - \"Link to the author's YouTube channel, if any.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"parentId\": {\n \"type\": - \"string\",\n \"description\": \"The unique id of the parent comment, - only set for replies.\"\n },\n \"textOriginal\": {\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was originally - published.\",\n \"format\": \"date-time\"\n },\n \"moderationStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment is - awaiting review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"description\": \"The comment's - moderation status. Will not be set if the comments were requested through - the id filter.\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ]\n },\n - \ \"authorProfileImageUrl\": {\n \"description\": \"The URL - for the avatar of the user who posted the comment.\",\n \"type\": - \"string\"\n },\n \"canRate\": {\n \"description\": - \"Whether the current viewer can rate this comment.\",\n \"type\": - \"boolean\"\n },\n \"viewerRating\": {\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ]\n - \ },\n \"textDisplay\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"authorDisplayName\": {\n \"description\": - \"The name of the user who posted the comment.\",\n \"type\": \"string\"\n - \ },\n \"likeCount\": {\n \"description\": \"The total - number of likes this comment has received.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"updatedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the comment - was last updated.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comment refers to, if any.\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a comment, such as its author and text.\",\n \"id\": \"CommentSnippet\"\n - \ },\n \"ChannelLocalization\": {\n \"properties\": {\n \"description\": - {\n \"description\": \"The localized strings for channel's description.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"The localized strings for channel's title.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Channel localization setting\",\n - \ \"id\": \"ChannelLocalization\",\n \"type\": \"object\"\n },\n - \ \"CommentThreadListResponse\": {\n \"properties\": {\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"items\": {\n \"description\": \"A list of comment - threads that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"CommentThread\"\n },\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"default\": \"youtube#commentThreadListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"id\": \"CommentThreadListResponse\",\n \"type\": - \"object\"\n },\n \"MembershipsDuration\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"memberSince\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the user became a continuous - member across all levels.\"\n },\n \"memberTotalDurationMonths\": - {\n \"format\": \"int32\",\n \"type\": \"integer\",\n \"description\": - \"The cumulative time the user has been a member across all levels in complete - months (the time is rounded down to the nearest integer).\"\n }\n },\n - \ \"id\": \"MembershipsDuration\"\n },\n \"ActivityContentDetails\": - {\n \"description\": \"Details about the content of an activity: the - video that was shared, the channel that was subscribed to, etc.\",\n \"type\": - \"object\",\n \"properties\": {\n \"upload\": {\n \"$ref\": - \"ActivityContentDetailsUpload\",\n \"description\": \"The upload - object contains information about the uploaded video. This property is only - present if the snippet.type is upload.\"\n },\n \"recommendation\": - {\n \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\",\n \"$ref\": \"ActivityContentDetailsRecommendation\"\n - \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"promotedItem\": {\n \"description\": - \"The promotedItem object contains details about a resource which is being - promoted. This property is only present if the snippet.type is promotedItem.\",\n - \ \"$ref\": \"ActivityContentDetailsPromotedItem\"\n },\n \"favorite\": - {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n \"description\": - \"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.\"\n - \ },\n \"playlistItem\": {\n \"description\": \"The - playlistItem object contains information about a new playlist item. This property - is only present if the snippet.type is playlistItem.\",\n \"$ref\": - \"ActivityContentDetailsPlaylistItem\"\n },\n \"like\": {\n - \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsLike\"\n - \ },\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n },\n \"subscription\": {\n \"$ref\": - \"ActivityContentDetailsSubscription\",\n \"description\": \"The - subscription object contains information about a channel that a user subscribed - to. This property is only present if the snippet.type is subscription.\"\n - \ },\n \"social\": {\n \"$ref\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"The social object contains details about a social - network post. This property is only present if the snippet.type is social.\"\n - \ },\n \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"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.\"\n }\n },\n \"id\": \"ActivityContentDetails\"\n - \ },\n \"LocalizedString\": {\n \"type\": \"object\",\n \"id\": - \"LocalizedString\",\n \"properties\": {\n \"language\": {\n \"type\": - \"string\"\n },\n \"value\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelBrandingSettings\": {\n \"properties\": - {\n \"hints\": {\n \"type\": \"array\",\n \"description\": - \"Additional experimental branding properties.\",\n \"items\": {\n - \ \"$ref\": \"PropertyValue\"\n }\n },\n \"image\": - {\n \"$ref\": \"ImageSettings\",\n \"description\": \"Branding - properties for branding images.\"\n },\n \"channel\": {\n \"$ref\": - \"ChannelSettings\",\n \"description\": \"Branding properties for - the channel view.\"\n },\n \"watch\": {\n \"$ref\": - \"WatchSettings\",\n \"description\": \"Branding properties for the - watch page.\"\n }\n },\n \"description\": \"Branding properties - of a YouTube channel.\",\n \"id\": \"ChannelBrandingSettings\",\n \"type\": - \"object\"\n },\n \"MonitorStreamInfo\": {\n \"type\": \"object\",\n - \ \"id\": \"MonitorStreamInfo\",\n \"properties\": {\n \"enableMonitorStream\": - {\n \"description\": \"This value determines whether the monitor - stream is enabled for the broadcast. If the monitor stream is enabled, then - YouTube will broadcast the event content on a special stream intended only - for the broadcaster's consumption. The broadcaster can use the stream to review - the event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"type\": \"boolean\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"HTML code that embeds a player that - plays the monitor stream.\"\n },\n \"broadcastStreamDelayMs\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"If you have set the enableMonitorStream property to true, then this property - determines the length of the live broadcast delay.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n }\n },\n \"description\": \"Settings - and Info of the monitor stream\"\n },\n \"ChannelTopicDetails\": {\n - \ \"description\": \"Freebase topic information related to the channel.\",\n - \ \"type\": \"object\",\n \"id\": \"ChannelTopicDetails\",\n \"properties\": - {\n \"topicCategories\": {\n \"type\": \"array\",\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicIds\": - {\n \"description\": \"A list of Freebase topic IDs associated with - the channel. You can retrieve information about each topic using the Freebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n }\n }\n },\n - \ \"VideoRating\": {\n \"properties\": {\n \"rating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"type\": \"string\",\n \"description\": - \"Rating of a video.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n },\n \"videoId\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about rating of a video.\",\n \"id\": \"VideoRating\",\n - \ \"type\": \"object\"\n },\n \"LanguageTag\": {\n \"id\": - \"LanguageTag\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"SuperChatEventSnippet\": - {\n \"type\": \"object\",\n \"id\": \"SuperChatEventSnippet\",\n - \ \"properties\": {\n \"amountMicros\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\"\n },\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the purchase was made. - ISO 4217.\"\n },\n \"supporterDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - supporter.\"\n },\n \"messageType\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\"\n },\n \"commentText\": {\n \"type\": - \"string\",\n \"description\": \"The text contents of the comment - left by the user.\"\n },\n \"isSuperStickerEvent\": {\n \"type\": - \"boolean\",\n \"description\": \"True if this event is a Super Sticker - event.\"\n },\n \"createdAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the event occurred.\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n },\n \"displayString\": {\n \"description\": - \"A rendered string that displays the purchase amount and currency (e.g., - \\\"$1.00\\\"). The string is rendered for the given language.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"Channel id where the event occurred.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelSectionLocalization\": {\n \"description\": - \"ChannelSection localization setting\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel section's title.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelSectionLocalization\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamConfigurationIssue\",\n - \ \"properties\": {\n \"severity\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"How severe this - issue is to the stream.\",\n \"enum\": [\n \"info\",\n - \ \"warning\",\n \"error\"\n ]\n },\n - \ \"type\": {\n \"description\": \"The kind of error happening.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"description\": {\n \"description\": - \"The long-form description of the issue and how to resolve it.\",\n \"type\": - \"string\"\n },\n \"reason\": {\n \"description\": - \"The short-form reason for this issue.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"Video\": {\n \"type\": \"object\",\n - \ \"id\": \"Video\",\n \"description\": \"A *video* resource represents - a YouTube video.\",\n \"properties\": {\n \"monetizationDetails\": - {\n \"$ref\": \"VideoMonetizationDetails\",\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\"\n },\n \"suggestions\": {\n \"$ref\": - \"VideoSuggestions\",\n \"description\": \"The suggestions object - encapsulates suggestions that identify opportunities to improve the video - quality or the metadata for the uploaded video. This data can only be retrieved - by the video owner.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"localizations\": {\n \"description\": \"The localizations - object contains localized versions of the basic details about the video, such - as its title and description.\",\n \"additionalProperties\": {\n - \ \"$ref\": \"VideoLocalization\"\n },\n \"type\": - \"object\"\n },\n \"topicDetails\": {\n \"$ref\": \"VideoTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the video.\"\n },\n \"processingDetails\": - {\n \"$ref\": \"VideoProcessingDetails\",\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#video\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\"\n - \ },\n \"liveStreamingDetails\": {\n \"$ref\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"VideoContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\"\n },\n \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n - \ \"description\": \"Age restriction details related to a video. This - data can only be retrieved by the video owner.\"\n },\n \"player\": - {\n \"$ref\": \"VideoPlayer\",\n \"description\": \"The - player object contains information that you would use to play the video in - an embedded player.\"\n },\n \"fileDetails\": {\n \"$ref\": - \"VideoFileDetails\",\n \"description\": \"The fileDetails object - encapsulates information about the video file that was uploaded to YouTube, - including the file's resolution, duration, audio and video codecs, stream - bitrates, and more. This data can only be retrieved by the video owner.\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object contains statistics about the video.\",\n \"$ref\": \"VideoStatistics\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\"\n },\n \"projectDetails\": - {\n \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"recordingDetails\": - {\n \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\",\n \"$ref\": - \"VideoRecordingDetails\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video, such as its title, - description, and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n - \ \"status\": {\n \"$ref\": \"VideoStatus\",\n \"description\": - \"The status object contains information about the video's uploading, processing, - and privacy statuses.\"\n }\n }\n },\n \"VideoProcessingDetails\": - {\n \"id\": \"VideoProcessingDetails\",\n \"description\": \"Describes - processing status and progress and availability of some other Video resource - parts.\",\n \"properties\": {\n \"processingProgress\": {\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"editorSuggestionsAvailability\": {\n \"description\": - \"This value indicates whether video editing suggestions, which might improve - video quality or the playback experience, are available for the video. You - can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"processingFailureReason\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\"\n - \ },\n \"processingStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\",\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ]\n },\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n },\n - \ \"fileDetailsAvailability\": {\n \"description\": \"This - value indicates whether file details are available for the uploaded video. - You can retrieve a video's file details by requesting the fileDetails part - in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"processingIssuesAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"tagSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether keyword (tag) suggestions are available for the video. - Tags can be added to a video's metadata to make it easier for other users - to find the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"properties\": - {\n \"label\": {\n \"description\": \"The localized label - belonging to this abuse report reason.\",\n \"type\": \"string\"\n - \ },\n \"secondaryReasons\": {\n \"items\": {\n \"$ref\": - \"VideoAbuseReportSecondaryReason\"\n },\n \"description\": - \"The secondary reasons associated with this reason, if any are available. - (There might be 0 or more.)\",\n \"type\": \"array\"\n }\n - \ },\n \"description\": \"Basic details about a video category, such - as its localized title.\",\n \"type\": \"object\"\n },\n \"LiveStreamSnippet\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamSnippet\",\n \"properties\": - {\n \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The stream's title. - The value must be between 1 and 128 characters long.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The stream's description. The value cannot be - longer than 10000 characters.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that is transmitting the stream.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the stream was created.\"\n - \ },\n \"isDefaultStream\": {\n \"type\": \"boolean\"\n - \ }\n }\n },\n \"PlaylistItemContentDetails\": {\n \"properties\": - {\n \"startAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\"\n },\n \"videoId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify a video. To retrieve the video resource, - set the id query parameter to this value in your API request.\"\n },\n - \ \"videoPublishedAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the video was published to YouTube.\",\n \"type\": - \"string\"\n },\n \"endAt\": {\n \"description\": \"The - time, measured in seconds from the start of the video, when the video should - stop playing. (The playlist owner can specify the times when the video should - start and stop playing when the video is played in the context of the playlist.) - By default, assume that the video.endTime is the end of the video.\",\n \"type\": - \"string\"\n },\n \"note\": {\n \"type\": \"string\",\n - \ \"description\": \"A user-generated note for this item.\"\n }\n - \ },\n \"id\": \"PlaylistItemContentDetails\",\n \"type\": \"object\"\n - \ },\n \"I18nRegionSnippet\": {\n \"id\": \"I18nRegionSnippet\",\n - \ \"description\": \"Basic details about an i18n region, such as region - code and human-readable name.\",\n \"properties\": {\n \"gl\": - {\n \"type\": \"string\",\n \"description\": \"The region - code as a 2-letter ISO country code.\"\n },\n \"name\": {\n - \ \"type\": \"string\",\n \"description\": \"The human-readable - name of the region.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"InvideoTiming\": {\n \"id\": \"InvideoTiming\",\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\",\n \"properties\": - {\n \"type\": {\n \"enum\": [\n \"offsetFromStart\",\n - \ \"offsetFromEnd\"\n ],\n \"description\": \"Describes - a timing type. If the value is offsetFromStart, then the offsetMs field represents - an offset from the start of the video. If the value is offsetFromEnd, then - the offsetMs field represents an offset from the end of the video.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"durationMs\": {\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"offsetMs\": {\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"SubscriptionSubscriberSnippet\": {\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel ID of the subscriber.\"\n },\n \"thumbnails\": - {\n \"description\": \"Thumbnails for this subscriber.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"title\": {\n \"description\": - \"The title of the subscriber.\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the subscriber.\"\n }\n },\n \"id\": - \"SubscriptionSubscriberSnippet\",\n \"description\": \"Basic details - about a subscription's subscriber including title, description, channel ID - and thumbnails.\",\n \"type\": \"object\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"properties\": {\n \"isUpgrade\": {\n \"type\": \"boolean\",\n - \ \"description\": \"If the viewer just had upgraded from a lower - level. For viewers that were not members at the time of purchase, this field - is false.\"\n },\n \"memberLevelName\": {\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ThirdPartyLink\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource\"\n },\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n - \ \"description\": \"The status object contains information about - the status of the link.\"\n },\n \"snippet\": {\n \"$ref\": - \"ThirdPartyLinkSnippet\",\n \"description\": \"The snippet object - contains basic details about the third- party account link.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"default\": \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n - \ },\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\"\n }\n },\n - \ \"id\": \"ThirdPartyLink\",\n \"description\": \"A *third party - account link* resource represents a link between a YouTube account or a channel - and an account on a third-party service.\",\n \"type\": \"object\"\n - \ },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"properties\": - {\n \"memberLevelName\": {\n \"description\": \"The name of - the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"gifterChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveStreamHealthStatus\": {\n \"properties\": - {\n \"configurationIssues\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n },\n - \ \"description\": \"The configurations issues on this stream\"\n - \ },\n \"status\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The status code of this stream\",\n \"enum\": [\n \"good\",\n - \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n - \ ]\n },\n \"lastUpdateTimeSeconds\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - last time this status was updated (in seconds)\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveStreamHealthStatus\"\n },\n \"AbuseType\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"AbuseType\"\n - \ },\n \"VideoFileDetailsVideoStream\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoFileDetailsVideoStream\",\n \"description\": \"Information - about a video stream.\",\n \"properties\": {\n \"heightPixels\": - {\n \"type\": \"integer\",\n \"description\": \"The encoded - video content's height in pixels.\",\n \"format\": \"uint32\"\n },\n - \ \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The video codec that the stream uses.\"\n },\n \"rotation\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"description\": \"The amount that YouTube needs to - rotate the original source content to properly display the video.\"\n },\n - \ \"frameRateFps\": {\n \"format\": \"double\",\n \"description\": - \"The video stream's frame rate, in frames per second.\",\n \"type\": - \"number\"\n },\n \"widthPixels\": {\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"aspectRatio\": - {\n \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\"\n },\n \"bitrateBps\": - {\n \"description\": \"The video stream's bitrate, in bits per second.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"vendor\": {\n \"description\": \"A value that uniquely - identifies a video vendor. Typically, the value is a four-letter vendor code.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was added to the channel.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"Details about a resource which was added to a channel.\",\n - \ \"type\": \"object\"\n },\n \"VideoTopicDetails\": {\n \"description\": - \"Freebase topic information related to the video.\",\n \"properties\": - {\n \"topicCategories\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Wikipedia - URLs that provide a high-level description of the video's content.\",\n \"type\": - \"array\"\n },\n \"relevantTopicIds\": {\n \"type\": - \"array\",\n \"description\": \"Similar to topic_id, except that - these topics are merely relevant to the video. These are topics that may be - mentioned in, or appear in the video. You can retrieve information about each - topic using Freebase Topic API.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"topicIds\": {\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"id\": - \"VideoTopicDetails\",\n \"type\": \"object\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"properties\": {\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"description\": \"The amount of the fund.\",\n \"type\": - \"string\"\n },\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the fund was made.\"\n },\n \"userComment\": {\n \"type\": - \"string\",\n \"description\": \"The comment added by the user to - this fan funding event.\"\n }\n },\n \"id\": \"LiveChatFanFundingEventDetails\",\n - \ \"type\": \"object\"\n },\n \"VideoMonetizationDetails\": {\n - \ \"type\": \"object\",\n \"id\": \"VideoMonetizationDetails\",\n - \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The value of access indicates whether the video - can be monetized or not.\"\n }\n },\n \"description\": \"Details - about monetization of a YouTube Video.\"\n },\n \"ChannelContentOwnerDetails\": - {\n \"type\": \"object\",\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"properties\": {\n \"timeLinked\": {\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the channel was linked to the content owner.\"\n - \ },\n \"contentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the content owner linked to the channel.\"\n - \ }\n },\n \"id\": \"ChannelContentOwnerDetails\"\n },\n - \ \"Thumbnail\": {\n \"type\": \"object\",\n \"id\": \"Thumbnail\",\n - \ \"properties\": {\n \"height\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"(Optional) - Height of the thumbnail image.\"\n },\n \"url\": {\n \"type\": - \"string\",\n \"description\": \"The thumbnail image's URL.\"\n },\n - \ \"width\": {\n \"description\": \"(Optional) Width of the - thumbnail image.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n }\n },\n \"description\": \"A thumbnail is an - image representing a YouTube resource.\"\n },\n \"VideoFileDetails\": - {\n \"description\": \"Describes original video file properties, including - technical details about audio and video streams, but also metadata information - like content length, digitization time, or geotagging information.\",\n \"properties\": - {\n \"creationTime\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the uploaded video file was created. The value is - specified in ISO 8601 format. Currently, the following ISO 8601 formats are - supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time - with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"fileType\": - {\n \"type\": \"string\",\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ],\n \"description\": \"The uploaded file's type as detected - by YouTube's video processing engine. Currently, YouTube only processes video - files, but this field is present whether a video file or another type of file - was uploaded.\",\n \"enumDescriptions\": [\n \"Known video - file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an MP3 - file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ]\n - \ },\n \"fileName\": {\n \"description\": \"The uploaded - file's name. This field is present whether a video file or another type of - file was uploaded.\",\n \"type\": \"string\"\n },\n \"audioStreams\": - {\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of audio streams contained in the uploaded video file. Each item in the - list contains detailed metadata about an audio stream.\"\n },\n \"fileSize\": - {\n \"format\": \"uint64\",\n \"description\": \"The uploaded - file's size in bytes. This field is present whether a video file or another - type of file was uploaded.\",\n \"type\": \"string\"\n },\n - \ \"durationMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The length of the uploaded video - in milliseconds.\"\n },\n \"videoStreams\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"description\": \"A list of video streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about a video stream.\"\n },\n \"container\": {\n \"description\": - \"The uploaded video file's container format.\",\n \"type\": \"string\"\n - \ },\n \"bitrateBps\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - video file's combined (video and audio) bitrate in bits per second.\"\n }\n - \ },\n \"id\": \"VideoFileDetails\",\n \"type\": \"object\"\n - \ },\n \"SubscriptionSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the subscriber's channel.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": {\n \"description\": - \"The subscription's details.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the subscription - was created.\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.subscriptions.insert\"\n ]\n },\n - \ \"description\": \"The id object contains information about the - channel that the user subscribed to.\"\n },\n \"title\": {\n - \ \"description\": \"The subscription's title.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the subscription belongs to.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"SubscriptionSnippet\",\n - \ \"description\": \"Basic details about a subscription, including title, - description and thumbnails of the subscribed item.\"\n },\n \"ChannelContentDetails\": - {\n \"properties\": {\n \"relatedPlaylists\": {\n \"type\": - \"object\",\n \"properties\": {\n \"favorites\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s favorite videos. Use the playlistItems.insert and - playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"likes\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"watchLater\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\",\n \"type\": \"string\"\n },\n \"uploads\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s uploaded videos. Use the videos.insert method to upload new videos - and the videos.delete method to delete previously uploaded videos.\",\n \"type\": - \"string\"\n },\n \"watchHistory\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s watch history. Use the playlistItems.insert and - playlistItems.delete to add or remove items from that list.\"\n }\n - \ }\n }\n },\n \"type\": \"object\",\n \"description\": - \"Details about the content of a channel.\",\n \"id\": \"ChannelContentDetails\"\n - \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"banType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"permanent\",\n \"temporary\"\n - \ ],\n \"description\": \"The type of ban.\"\n },\n - \ \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"The details of the user that was banned.\"\n - \ },\n \"banDurationSeconds\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The duration of the ban. This property is only - present if the banType is temporary.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"SearchResult\": {\n \"type\": \"object\",\n \"description\": - \"A search result contains information about a YouTube video, channel, or - playlist that matches the search parameters specified in an API request. While - a search result points to a uniquely identifiable resource, like a video, - it does not have its own persistent data.\",\n \"id\": \"SearchResult\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The id - object contains information that can be used to uniquely identify the resource - that matches the search request.\"\n },\n \"snippet\": {\n \"$ref\": - \"SearchResultSnippet\",\n \"description\": \"The snippet object - contains basic details about a search result, such as its title or description. - For example, if the search result is a video, then the title will be the video's - title and the description will be the video's description.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#searchResult\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LiveChatBan\": - {\n \"description\": \"A `__liveChatBan__` resource represents a ban - for a YouTube live chat.\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatBan\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\"\n },\n - \ \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n - \ }\n },\n \"id\": \"LiveChatBan\",\n \"type\": \"object\"\n - \ },\n \"SearchResultSnippet\": {\n \"id\": \"SearchResultSnippet\",\n - \ \"properties\": {\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"The title of the channel that published - the resource that the search result identifies.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The creation date and time of the resource that - the search result identifies.\"\n },\n \"channelId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the search result. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": {\n \"description\": - \"A description of the search result.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"description\": \"The title of - the search result.\",\n \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"description\": \"It indicates if the resource (video or channel) - has upcoming/active live broadcast content. Or it's \\\"none\\\" if there - is not any upcoming/active live broadcasts.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ]\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\"\n },\n \"VideoLocalization\": - {\n \"description\": \"Localized versions of certain video properties - (e.g. title).\",\n \"properties\": {\n \"description\": {\n \"description\": - \"Localized version of the video's description.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"description\": \"Localized version - of the video's title.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"VideoLocalization\",\n \"type\": \"object\"\n },\n - \ \"ThirdPartyLinkSnippet\": {\n \"id\": \"ThirdPartyLinkSnippet\",\n - \ \"properties\": {\n \"type\": {\n \"description\": \"Type - of the link named after the entities that are being linked.\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"type\": \"string\"\n },\n \"channelToStoreLink\": - {\n \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - information about a third party account link, including its type and type-specific - information.\"\n },\n \"PropertyValue\": {\n \"properties\": {\n - \ \"property\": {\n \"description\": \"A property.\",\n \"type\": - \"string\"\n },\n \"value\": {\n \"description\": \"The - property's value.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"PropertyValue\",\n \"description\": \"A pair Property - / Value.\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsUpload\",\n - \ \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Information about - the uploaded video.\"\n },\n \"ImageSettings\": {\n \"id\": \"ImageSettings\",\n - \ \"description\": \"Branding properties for images associated with the - channel.\",\n \"type\": \"object\",\n \"properties\": {\n \"bannerMobileImageUrl\": - {\n \"description\": \"Banner image. Mobile size (640x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"bannerTvImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n },\n \"bannerImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n },\n \"bannerTvHighImageUrl\": - {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1280x360).\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"bannerTvLowImageUrl\": - {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size high resolution (2276x377).\"\n },\n \"trackingImageUrl\": - {\n \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 640px by 70px banner image - that appears below the video player in the default view of the video watch - page. The URL for the image that appears above the top-left corner of the - video player. This is a 25-pixel-high image with a flexible width that cannot - exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"smallBrandedBannerImageImapScript\": {\n \"$ref\": \"LocalizedProperty\",\n - \ \"description\": \"The image map script for the small banner image.\"\n - \ },\n \"bannerTvMediumImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. TV size medium resolution (1280x720).\"\n - \ },\n \"watchIconImageUrl\": {\n \"type\": \"string\"\n - \ },\n \"backgroundImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n - \ \"description\": \"The URL for the background image shown on the - video watch page. The image should be 1200px by 615px, with a maximum file - size of 128k.\"\n },\n \"bannerTabletImageUrl\": {\n \"description\": - \"Banner image. Tablet size (1707x283).\",\n \"type\": \"string\"\n - \ },\n \"bannerTabletLowImageUrl\": {\n \"description\": - \"Banner image. Tablet size low resolution (1138x188).\",\n \"type\": - \"string\"\n },\n \"bannerExternalUrl\": {\n \"type\": - \"string\",\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size low resolution (320x88).\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\",\n - \ \"$ref\": \"LocalizedProperty\"\n }\n }\n },\n \"LiveChatModeratorListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"description\": \"A list of - moderators that match the request criteria.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorListResponse\"\n - \ },\n \"LiveChatSuperChatDetails\": {\n \"properties\": {\n \"amountMicros\": - {\n \"description\": \"The amount purchased by the user, in micros - (1,750,000 micros = 1.75).\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"tier\": {\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the user to this Super Chat - event.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatSuperChatDetails\"\n },\n \"MembershipsLevel\": {\n \"type\": - \"object\",\n \"id\": \"MembershipsLevel\",\n \"description\": \"A - *membershipsLevel* resource represents an offer made by YouTube creators for - their fans. Users can become members of the channel by joining one of the - available levels. They will provide recurring monetary support and receives - special benefits.\",\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the memberships level.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#membershipsLevel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"LiveChatSuperStickerDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"amountMicros\": - {\n \"type\": \"string\",\n \"description\": \"The amount - purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": - \"uint64\"\n },\n \"tier\": {\n \"description\": \"The - tier in which the amount belongs. Lower amounts belong to lower tiers. The - lowest tier is 1.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made.\"\n }\n },\n \"id\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"ChannelSectionSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"style\": {\n \"description\": \"The style of the channel - section.\",\n \"type\": \"string\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"type\": {\n \"enum\": - [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The type of the - channel section.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that published the channel section.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel section's default title and description.\"\n },\n \"localized\": - {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": - \"Localized title, read-only.\"\n },\n \"position\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The position of the channel section in the channel.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel - section's title for multiple_playlists and multiple_channels.\"\n }\n - \ },\n \"id\": \"ChannelSectionSnippet\",\n \"description\": - \"Basic details about a channel section, including title, style and position.\"\n - \ },\n \"AccessPolicy\": {\n \"description\": \"Rights management - policy for YouTube resources.\",\n \"type\": \"object\",\n \"properties\": - {\n \"allowed\": {\n \"description\": \"The value of allowed - indicates whether the access to the policy is allowed or denied by default.\",\n - \ \"type\": \"boolean\"\n },\n \"exception\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of region codes that identify countries - where the default policy do not apply.\"\n }\n },\n \"id\": - \"AccessPolicy\"\n },\n \"LiveBroadcastContentDetails\": {\n \"description\": - \"Detailed settings of a broadcast.\",\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"monitorStream\": - {\n \"$ref\": \"MonitorStreamInfo\",\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\"\n },\n \"stereoLayout\": {\n \"type\": - \"string\",\n \"description\": \"The 3D stereo layout of this broadcast. - This defaults to mono.\",\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"enableContentEncryption\": - {\n \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n - \ },\n \"recordFromStart\": {\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\",\n \"type\": \"boolean\"\n - \ },\n \"projection\": {\n \"description\": \"The projection - format of this broadcast. This defaults to rectangular.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ],\n \"type\": \"string\"\n },\n \"enableEmbed\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast video can be played in an embedded player. - If you choose to archive the video (using the enableArchive property), this - setting will also apply to the archived video.\"\n },\n \"enableAutoStop\": - {\n \"description\": \"This setting indicates whether auto stop is - enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\",\n \"type\": \"boolean\"\n - \ },\n \"enableLowLatency\": {\n \"description\": \"Indicates - whether this broadcast has low latency enabled.\",\n \"type\": \"boolean\"\n - \ },\n \"startWithSlate\": {\n \"description\": \"This - setting indicates whether the broadcast should automatically begin with an - in-stream slate when you update the broadcast's status to live. After updating - the status, you then need to send a liveCuepoints.insert request that sets - the cuepoint's eventState to end to remove the in-stream slate and make your - broadcast stream visible to viewers.\",\n \"type\": \"boolean\"\n - \ },\n \"enableClosedCaptions\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether HTTP POST closed - captioning is enabled for this broadcast. The ingestion URL of the closed - captions is returned through the liveStreams API. This is mutually exclusive - with using the closed_captions_type property, and is equivalent to setting - closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n \"enableAutoStart\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"enableDvr\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\"\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\"\n },\n \"closedCaptionsType\": - {\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"mesh\": - {\n \"description\": \"The mesh for projecting the video if projection - is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding - of 3D mesh data that follows the Spherical Video V2 RFC specification for - an mshp box, excluding the box size and type but including the following four - reserved zero bytes for the version and flags.\",\n \"format\": \"byte\",\n - \ \"type\": \"string\"\n },\n \"boundStreamId\": {\n - \ \"type\": \"string\",\n \"description\": \"This value uniquely - identifies the live stream bound to the broadcast.\"\n },\n \"latencyPreference\": - {\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"type\": \"string\",\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ]\n }\n }\n - \ },\n \"TokenPagination\": {\n \"properties\": {},\n \"type\": - \"object\",\n \"description\": \"Stub token pagination template to suppress - results.\",\n \"id\": \"TokenPagination\"\n },\n \"WatchSettings\": - {\n \"properties\": {\n \"featuredPlaylistId\": {\n \"description\": - \"An ID that uniquely identifies a playlist that displays next to the video - player.\",\n \"type\": \"string\"\n },\n \"textColor\": - {\n \"description\": \"The background color for the video watch page's - branded area.\",\n \"type\": \"string\"\n },\n \"backgroundColor\": - {\n \"description\": \"The text color for the video watch page's - branded area.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Branding properties for the watch. All deprecated.\",\n \"type\": \"object\",\n - \ \"id\": \"WatchSettings\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ },\n \"label\": {\n \"description\": \"The localized - label for this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"I18nRegion\": {\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"default\": \"youtube#i18nRegion\"\n },\n \"snippet\": - {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n region.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A *i18nRegion* resource identifies a region where - YouTube is available.\",\n \"id\": \"I18nRegion\"\n },\n \"TestItemTestItemSnippet\": - {\n \"type\": \"object\",\n \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\"\n - \ },\n \"ChannelSectionContentDetails\": {\n \"properties\": {\n - \ \"playlists\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\"\n },\n \"channels\": {\n \"description\": - \"The channel ids for type multiple_channels.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"id\": \"ChannelSectionContentDetails\",\n \"description\": - \"Details about a channelsection, including playlists and channels.\",\n \"type\": - \"object\"\n },\n \"RelatedEntity\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"entity\": {\n \"$ref\": \"Entity\"\n - \ }\n },\n \"id\": \"RelatedEntity\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"Information about a new playlist item.\",\n \"properties\": - {\n \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"The value that YouTube uses to uniquely identify the playlist.\"\n },\n - \ \"resourceId\": {\n \"description\": \"The resourceId object - contains information about the resource that was added to the playlist.\",\n - \ \"$ref\": \"ResourceId\"\n },\n \"playlistItemId\": - {\n \"description\": \"ID of the item within the playlist.\",\n \"type\": - \"string\"\n }\n }\n },\n \"Playlist\": {\n \"id\": - \"Playlist\",\n \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the playlist, such as its title and description.\",\n \"$ref\": - \"PlaylistSnippet\"\n },\n \"status\": {\n \"description\": - \"The status object contains status information for the playlist.\",\n \"$ref\": - \"PlaylistStatus\"\n },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"PlaylistContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - like video count.\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlist\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"player\": - {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": \"The - player object contains information that you would use to play the playlist - in an embedded player.\"\n }\n },\n \"description\": \"A - *playlist* resource represents a YouTube playlist. A playlist is a collection - of videos that can be viewed sequentially and shared with other users. A playlist - can contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\"\n },\n \"MembershipsLevelSnippet\": - {\n \"properties\": {\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n },\n \"levelDetails\": {\n \"description\": - \"Details about the pricing level.\",\n \"$ref\": \"LevelDetails\"\n - \ }\n },\n \"id\": \"MembershipsLevelSnippet\",\n \"type\": - \"object\"\n },\n \"LiveBroadcastStatus\": {\n \"properties\": - {\n \"lifeCycleStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"enumDescriptions\": [\n \"No value or the - value is unknown.\",\n \"Incomplete settings, but otherwise valid\",\n - \ \"Complete settings\",\n \"Visible only to partner, - may need special UI treatment\",\n \"Viper is recording; this means - the \\\"clock\\\" is running\",\n \"The broadcast is finished.\",\n - \ \"This broadcast was removed by admin action\",\n \"Transition - into TESTING has been requested\",\n \"Transition into LIVE has - been requested\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"This field - will be set to True if the creator declares the broadcast to be kids only: - go/live-cw-work.\"\n },\n \"privacyStatus\": {\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"madeForKids\": {\n \"description\": \"Whether - the broadcast is made for kids or not, decided by YouTube instead of the creator. - This field is read only.\",\n \"type\": \"boolean\"\n },\n - \ \"recordingStatus\": {\n \"description\": \"The broadcast's - recording status.\",\n \"enumDescriptions\": [\n \"No - value or the value is unknown.\",\n \"The recording has not yet - been started.\",\n \"The recording is currently on.\",\n \"The - recording is completed, and cannot be started again.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ]\n },\n \"liveBroadcastPriority\": {\n \"type\": - \"string\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"enumDescriptions\": [\n \"\",\n \"Low - priority broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ]\n }\n },\n \"id\": \"LiveBroadcastStatus\",\n - \ \"type\": \"object\",\n \"description\": \"Live broadcast state.\"\n - \ },\n \"LiveChatMessage\": {\n \"id\": \"LiveChatMessage\",\n \"type\": - \"object\",\n \"description\": \"A *liveChatMessage* resource represents - a chat message in a YouTube Live Chat.\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"authorDetails\": {\n \"description\": - \"The authorDetails object contains basic details about the user that posted - this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatMessage\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessage\\\".\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the message.\",\n \"$ref\": - \"LiveChatMessageSnippet\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoCategoryListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#videoCategoryListResponse\"\n - \ },\n \"items\": {\n \"description\": \"A list of video - categories that can be associated with YouTube videos. In this map, the video - category ID is the map key, and its value is the corresponding videoCategory - resource.\",\n \"items\": {\n \"$ref\": \"VideoCategory\"\n - \ },\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"VideoCategoryListResponse\"\n - \ },\n \"Entity\": {\n \"type\": \"object\",\n \"properties\": - {\n \"typeId\": {\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\"\n },\n \"url\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"Entity\"\n },\n \"PlaylistItemStatus\": - {\n \"properties\": {\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"This resource's - privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"type\": - \"object\",\n \"id\": \"PlaylistItemStatus\",\n \"description\": - \"Information about the playlist item's privacy status.\"\n }\n },\n \"version\": - \"v3\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"ownerName\": \"Google\",\n \"description\": \"The YouTube Data API v3 - is an API that provides access to YouTube data, such as videos, playlists, - and channels.\",\n \"ownerDomain\": \"google.com\",\n \"parameters\": {\n - \ \"$.xgafv\": {\n \"enum\": [\n \"1\",\n \"2\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"description\": - \"V1 error format.\"\n },\n \"upload_protocol\": {\n \"location\": - \"query\",\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", - \\\"multipart\\\").\",\n \"type\": \"string\"\n },\n \"fields\": - {\n \"description\": \"Selector specifying which fields to include in - a partial response.\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"prettyPrint\": {\n \"location\": \"query\",\n \"description\": - \"Returns response with indentations and line breaks.\",\n \"type\": - \"boolean\",\n \"default\": \"true\"\n },\n \"uploadType\": {\n - \ \"description\": \"Legacy upload protocol for media (e.g. \\\"media\\\", - \\\"multipart\\\").\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"oauth_token\": {\n \"description\": \"OAuth 2.0 token for - the current user.\",\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"quotaUser\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"alt\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"json\",\n \"media\",\n - \ \"proto\"\n ],\n \"enumDescriptions\": [\n \"Responses - with Content-Type of application/json\",\n \"Media download with context-dependent - Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n - \ ],\n \"default\": \"json\",\n \"description\": \"Data format - for response.\"\n },\n \"key\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"access_token\": {\n \"description\": - \"OAuth access token.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"callback\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"JSONP\"\n }\n },\n - \ \"id\": \"youtube:v3\",\n \"protocol\": \"rest\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"resources\": {\n \"channelSections\": {\n \"methods\": {\n \"delete\": - {\n \"flatPath\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n }\n - \ },\n \"list\": {\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.channelSections.list\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"description\": \"Return - the ChannelSections owned by the specified channel ID.\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the ChannelSections owned by the authenticated user.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"insert\": {\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"id\": \"youtube.channelSections.insert\",\n \"path\": - \"youtube/v3/channelSections\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"update\": {\n - \ \"description\": \"Updates an existing resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"PUT\",\n \"request\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"id\": \"youtube.channelSections.update\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"path\": - \"youtube/v3/channelSections\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/channelSections\"\n }\n }\n - \ },\n \"membershipsLevels\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.membershipsLevels.list\",\n \"response\": {\n \"$ref\": - \"MembershipsLevelListResponse\"\n },\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"path\": \"youtube/v3/membershipsLevels\",\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"httpMethod\": \"GET\"\n }\n }\n },\n - \ \"members\": {\n \"methods\": {\n \"list\": {\n \"response\": - {\n \"$ref\": \"MemberListResponse\"\n },\n \"flatPath\": - \"youtube/v3/members\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - member resource parts that the API response will include. Set the parameter - value to snippet.\",\n \"location\": \"query\"\n },\n - \ \"filterByMemberChannelId\": {\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"hasAccessToLevel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter members in the results set to the - ones that have access to a level.\"\n },\n \"mode\": - {\n \"type\": \"string\",\n \"description\": \"Parameter - that specifies which channel members to return.\",\n \"location\": - \"query\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - only members that joined after the first call with this mode was made.\",\n - \ \"Return all current members, from newest to oldest.\"\n ],\n - \ \"default\": \"all_current\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"maximum\": - \"1000\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n }\n },\n \"path\": - \"youtube/v3/members\",\n \"id\": \"youtube.members.list\",\n \"description\": - \"Retrieves a list of members that match the request criteria for a channel.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"liveStreams\": {\n \"methods\": - {\n \"delete\": {\n \"id\": \"youtube.liveStreams.delete\",\n - \ \"description\": \"Deletes an existing stream for the authenticated - user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/liveStreams\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveStreams\"\n },\n \"list\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"description\": \"Retrieve the list of streams associated with - the given channel. --\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"repeated\": - true\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\"\n },\n \"mine\": {\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"path\": - \"youtube/v3/liveStreams\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.liveStreams.list\"\n },\n \"insert\": {\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/liveStreams\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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, content_details, and status.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.liveStreams.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"update\": {\n \"id\": \"youtube.liveStreams.update\",\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Updates an existing - stream for the authenticated user.\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"activities\": {\n \"methods\": {\n - \ \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"parameters\": {\n \"maxResults\": {\n - \ \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"publishedBefore\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"format\": \"google-datetime\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"publishedAfter\": {\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"home\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ }\n },\n \"path\": \"youtube/v3/activities\",\n - \ \"id\": \"youtube.activities.list\",\n \"flatPath\": \"youtube/v3/activities\"\n - \ }\n }\n },\n \"liveChatBans\": {\n \"methods\": {\n - \ \"insert\": {\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"request\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatBan\"\n - \ },\n \"flatPath\": \"youtube/v3/liveChat/bans\"\n },\n - \ \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"id\": - \"youtube.liveChatBans.delete\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a chat ban.\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/bans\"\n }\n - \ }\n },\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": - {\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"id\": - \"youtube.i18nLanguages.list\",\n \"path\": \"youtube/v3/i18nLanguages\",\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"I18nLanguageListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the i18nLanguage resource properties that the API response will include. Set - the parameter value to snippet.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"default\": - \"en_US\",\n \"location\": \"query\"\n }\n }\n - \ }\n }\n },\n \"comments\": {\n \"methods\": {\n \"delete\": - {\n \"description\": \"Deletes a resource.\",\n \"id\": - \"youtube.comments.delete\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/comments\",\n \"path\": \"youtube/v3/comments\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"update\": {\n \"id\": \"youtube.comments.update\",\n - \ \"description\": \"Updates an existing resource.\",\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true\n }\n - \ },\n \"flatPath\": \"youtube/v3/comments\",\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"path\": \"youtube/v3/comments\"\n - \ },\n \"insert\": {\n \"path\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.insert\",\n \"request\": {\n - \ \"$ref\": \"Comment\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/comments\",\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"httpMethod\": \"POST\"\n },\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"CommentListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"textFormat\": {\n - \ \"default\": \"html\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"description\": \"The requested text format for the returned - comments.\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"location\": \"query\",\n \"default\": - \"20\",\n \"maximum\": \"100\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"minimum\": \"1\"\n },\n \"part\": {\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more comment resource properties that the API response will - include.\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ },\n \"parentId\": {\n \"location\": \"query\",\n - \ \"description\": \"Returns replies to the specified comment. - Note, currently YouTube features only one level of replies (ie replies to - top level comments). However replies to replies may be supported in the future.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"repeated\": true,\n \"description\": \"Returns - the comments with the given IDs for One Platform.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.comments.list\"\n - \ },\n \"setModerationStatus\": {\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ],\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\",\n \"parameters\": {\n - \ \"banAuthor\": {\n \"default\": \"false\",\n \"type\": - \"boolean\",\n \"description\": \"If set to true the author of - the comment gets added to the ban list. This means all future comments of - the author will autmomatically be rejected. Only valid in combination with - STATUS_REJECTED.\",\n \"location\": \"query\"\n },\n - \ \"moderationStatus\": {\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"required\": - true,\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Modifies - the moderation status of the comments with the given IDs\",\n \"repeated\": - true,\n \"required\": true\n }\n },\n \"path\": - \"youtube/v3/comments/setModerationStatus\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Sets the moderation status of one - or more comments.\",\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"httpMethod\": \"POST\"\n },\n \"markAsSpam\": {\n - \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Expresses the caller's opinion that - one or more comments should be flagged as spam.\",\n \"flatPath\": - \"youtube/v3/comments/markAsSpam\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.comments.markAsSpam\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"Flags the comments with the given IDs as - spam in the caller's opinion.\"\n }\n }\n }\n }\n - \ },\n \"playlistItems\": {\n \"methods\": {\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.playlistItems.insert\",\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlistItems\"\n },\n \"update\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"description\": - \"Updates an existing resource.\",\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"id\": - \"youtube.playlistItems.update\"\n },\n \"list\": {\n \"id\": - \"youtube.playlistItems.list\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"Return the playlist items associated - with the given video ID.\",\n \"location\": \"query\"\n },\n - \ \"playlistId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return the playlist items within - the given playlist.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"description\": - \"Deletes a resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ }\n },\n \"id\": \"youtube.playlistItems.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlistItems\"\n }\n }\n },\n - \ \"abuseReports\": {\n \"methods\": {\n \"insert\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\"\n }\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"request\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"path\": - \"youtube/v3/abuseReports\",\n \"id\": \"youtube.abuseReports.insert\"\n - \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"id\": \"youtube.liveChatModerators.delete\",\n - \ \"description\": \"Deletes a chat moderator.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"insert\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n - \ },\n \"request\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.liveChatModerators.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"list\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"minimum\": \"0\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"The id - of the live chat for which moderators should be returned.\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.liveChatModerators.list\",\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveChatModeratorListResponse\"\n }\n }\n }\n },\n - \ \"youtube\": {\n \"resources\": {\n \"v3\": {\n \"methods\": - {\n \"updateCommentThreads\": {\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [],\n - \ \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true\n - \ }\n },\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"httpMethod\": \"PUT\",\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"flatPath\": - \"youtube/v3/commentThreads\"\n }\n }\n }\n }\n - \ },\n \"liveBroadcasts\": {\n \"methods\": {\n \"transition\": - {\n \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"description\": \"Transition a broadcast to a given status.\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"Broadcast to transition.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"broadcastStatus\": {\n \"location\": - \"query\",\n \"description\": \"The status to which the broadcast - is going to transition.\",\n \"required\": true,\n \"enum\": - [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Start - testing the broadcast. YouTube transmits video to the broadcast's monitor - stream. Note that you can only transition a broadcast to the testing state - if its contentDetails.monitorStream.enableMonitorStream property is set to - true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The - broadcast is over. YouTube stops transmitting video.\"\n ],\n - \ \"type\": \"string\"\n }\n }\n },\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.liveBroadcasts.list\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"parameters\": {\n \"broadcastType\": - {\n \"location\": \"query\",\n \"default\": \"event\",\n - \ \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"description\": \"Return only broadcasts - with the selected type.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ],\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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, status and statistics.\",\n \"required\": - true\n },\n \"broadcastStatus\": {\n \"type\": - \"string\",\n \"description\": \"Return broadcasts with a certain - status, e.g. active broadcasts.\",\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"repeated\": - true,\n \"description\": \"Return broadcasts with the given ids - from Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"location\": \"query\",\n \"minimum\": - \"0\"\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n },\n \"bind\": {\n \"response\": {\n - \ \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"id\": \"youtube.liveBroadcasts.bind\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"streamId\": - {\n \"description\": \"Stream to bind, if not set unbind the - current one.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"Broadcast - to bind to the stream\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Bind a broadcast to a stream.\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ]\n },\n \"insert\": - {\n \"description\": \"Inserts a new stream for the authenticated - user.\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n }\n - \ },\n \"insertCuepoint\": {\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"description\": - \"Insert cuepoints in a broadcast\",\n \"request\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [],\n \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to insert ads to, or equivalently - `external_video_id` for internal use.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"description\": \"Delete a given broadcast.\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"id\": {\n \"description\": - \"Broadcast to delete.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"update\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing broadcast for the - authenticated user.\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.liveBroadcasts.update\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"thumbnails\": - {\n \"methods\": {\n \"set\": {\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"supportsMediaUpload\": true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"Returns the Thumbnail with the - given video IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"id\": \"youtube.thumbnails.set\",\n - \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"mediaUpload\": - {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"resumable\": {\n \"multipart\": true,\n - \ \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"2097152\"\n },\n \"httpMethod\": \"POST\",\n \"description\": - \"As this is not an insert in a strict sense (it supports uploading/setting - of a thumbnail for multiple videos, which doesn't result in creation of a - single resource), I use a custom verb here.\",\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ }\n }\n }\n },\n \"search\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/search\",\n \"id\": \"youtube.search.list\",\n \"response\": - {\n \"$ref\": \"SearchListResponse\"\n },\n \"parameters\": - {\n \"videoDefinition\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"description\": \"Filter on the definition - of the videos.\"\n },\n \"topicId\": {\n \"location\": - \"query\",\n \"description\": \"Restrict results to a particular - topic.\",\n \"type\": \"string\"\n },\n \"forContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"Search owned by a content owner.\",\n \"type\": \"boolean\"\n - \ },\n \"videoCategoryId\": {\n \"type\": - \"string\",\n \"description\": \"Filter on videos in a specific - category.\",\n \"location\": \"query\"\n },\n \"channelType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"location\": \"query\",\n - \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"description\": - \"Add a filter on the channel search.\"\n },\n \"videoCaption\": - {\n \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ],\n \"location\": - \"query\",\n \"description\": \"Filter on the presence of captions - on the videos.\",\n \"type\": \"string\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ]\n - \ },\n \"forDeveloper\": {\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"order\": {\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"description\": - \"Sort order of the results.\",\n \"type\": \"string\",\n \"default\": - \"relevance\",\n \"location\": \"query\",\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ]\n - \ },\n \"videoEmbeddable\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"description\": \"Filter on embeddable videos.\",\n - \ \"location\": \"query\"\n },\n \"relevanceLanguage\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return results relevant to this language.\"\n - \ },\n \"videoSyndicated\": {\n \"location\": - \"query\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, syndicated or not.\",\n \"Only - retrieve syndicated videos.\"\n ],\n \"description\": - \"Filter on syndicated videos.\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"publishedAfter\": {\n \"location\": - \"query\",\n \"description\": \"Filter on resources published - after this date.\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\"\n },\n \"publishedBefore\": {\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\",\n \"description\": \"Filter on resources published - before this date.\"\n },\n \"videoLicense\": {\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"description\": \"Filter on the license of the videos.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"location\": \"query\"\n },\n \"location\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on location of the video\",\n \"type\": \"string\"\n - \ },\n \"videoType\": {\n \"description\": - \"Filter on videos of a specific type.\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"videoTypeUnspecified\",\n \"any\",\n - \ \"movie\",\n \"episode\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos.\",\n \"Only retrieve movies.\",\n \"Only - retrieve episodes of shows.\"\n ],\n \"type\": \"string\"\n - \ },\n \"q\": {\n \"description\": \"Textual - search terms to match.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"forMine\": {\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"videoDuration\": {\n \"description\": - \"Filter on the duration of the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ]\n },\n \"type\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Restrict - results to a particular set of resource types from One Platform.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Filter on resources belonging - to this channelId.\"\n },\n \"relatedToVideoId\": {\n - \ \"description\": \"Search related to a resource.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"locationRadius\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on distance from the location (specified above).\",\n \"location\": - \"query\"\n },\n \"videoDimension\": {\n \"type\": - \"string\",\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"description\": \"Filter - on 3d videos.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ]\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Display the content as seen by viewers in - this country.\"\n },\n \"eventType\": {\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"description\": \"Filter on the livestream status of the videos.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"safeSearch\": {\n \"type\": - \"string\",\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"enum\": - [\n \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"default\": \"moderate\"\n }\n },\n \"flatPath\": - \"youtube/v3/search\",\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of search resources\"\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"en_US\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the i18nRegion resource properties that the API - response will include. Set the parameter value to snippet.\",\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/i18nRegions\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.i18nRegions.list\",\n \"response\": - {\n \"$ref\": \"I18nRegionListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/i18nRegions\"\n }\n }\n },\n \"commentThreads\": - {\n \"methods\": {\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.commentThreads.insert\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/commentThreads\"\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\"\n },\n \"moderationStatus\": - {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by - a moderator.\",\n \"\",\n \"The comment is unfit - for display.\"\n ],\n \"type\": \"string\",\n \"default\": - \"published\",\n \"description\": \"Limits the returned comment - threads to those with the specified moderation status. Not compatible with - the 'id' filter. Valid values: published, heldForReview, likelySpam.\",\n - \ \"location\": \"query\"\n },\n \"textFormat\": - {\n \"description\": \"The requested text format for the returned - comments.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"default\": \"html\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ]\n },\n \"allThreadsRelatedToChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"maximum\": \"100\",\n - \ \"default\": \"20\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"minimum\": \"1\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"searchTerms\": {\n \"type\": - \"string\",\n \"description\": \"Limits the returned comment - threads to those matching the specified key words. Not compatible with the - 'id' filter.\",\n \"location\": \"query\"\n },\n \"order\": - {\n \"enumDescriptions\": [\n \"\",\n \"Order - by time.\",\n \"Order by relevance.\"\n ],\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"default\": \"time\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of the specified video.\"\n }\n },\n - \ \"id\": \"youtube.commentThreads.list\",\n \"response\": - {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n }\n }\n - \ },\n \"subscriptions\": {\n \"methods\": {\n \"insert\": - {\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.subscriptions.insert\",\n \"request\": - {\n \"$ref\": \"Subscription\"\n },\n \"path\": - \"youtube/v3/subscriptions\",\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"Subscription\"\n }\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.subscriptions.delete\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/subscriptions\"\n },\n \"list\": - {\n \"id\": \"youtube.subscriptions.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"SubscriptionListResponse\"\n },\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"description\": \"Flag for returning the subscriptions - of the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"order\": {\n \"default\": \"relevance\",\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"description\": \"The order of the returned - subscriptions\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"location\": \"query\"\n },\n \"mySubscribers\": - {\n \"description\": \"Return the subscribers of the given channel - owner.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"forChannelId\": {\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"0\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"myRecentSubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"description\": - \"Return the subscriptions of the given channel owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/subscriptions\"\n }\n }\n - \ },\n \"watermarks\": {\n \"methods\": {\n \"unset\": {\n - \ \"description\": \"Allows removal of channel watermark.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/watermarks/unset\",\n \"id\": \"youtube.watermarks.unset\"\n - \ },\n \"set\": {\n \"supportsMediaUpload\": true,\n - \ \"path\": \"youtube/v3/watermarks/set\",\n \"id\": \"youtube.watermarks.set\",\n - \ \"parameters\": {\n \"channelId\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"mediaUpload\": - {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ }\n },\n \"maxSize\": \"10485760\"\n },\n - \ \"description\": \"Allows upload of watermark image and setting - it for a channel.\"\n }\n }\n },\n \"thirdPartyLinks\": - {\n \"methods\": {\n \"update\": {\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"description\": \"Updates an - existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n }\n },\n \"list\": {\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"type\": - {\n \"description\": \"Get a third party link of the given type.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ]\n },\n - \ \"linkingToken\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Get - a third party link with the given linking token.\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API response will include. Supported values are linkingToken, - status, and snippet.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.thirdPartyLinks.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"delete\": {\n - \ \"parameters\": {\n \"type\": {\n \"required\": - true,\n \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Type - of the link to be deleted.\"\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Do not use. Required for compatibility.\"\n - \ },\n \"linkingToken\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"linkingToken\",\n \"type\"\n ],\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"description\": \"Deletes a resource.\",\n - \ \"id\": \"youtube.thirdPartyLinks.delete\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"DELETE\"\n },\n - \ \"insert\": {\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"id\": \"youtube.thirdPartyLinks.insert\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"channels\": - {\n \"methods\": {\n \"update\": {\n \"id\": \"youtube.channels.update\",\n - \ \"request\": {\n \"$ref\": \"Channel\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channels\",\n \"response\": - {\n \"$ref\": \"Channel\"\n },\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/channels\",\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/channels\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"id\": {\n \"description\": - \"Return the channels with the specified IDs.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"default\": \"5\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the ids of channels owned by the authenticated user.\"\n },\n - \ \"managedByMe\": {\n \"description\": \"Return the - channels managed by the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"type\": - \"string\"\n },\n \"categoryId\": {\n \"type\": - \"string\",\n \"description\": \"Return the channels within the - specified guide category ID.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"mySubscribers\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the channels subscribed to the authenticated user\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"forUsername\": - {\n \"location\": \"query\",\n \"description\": - \"Return the channel associated with a YouTube username.\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"id\": \"youtube.channels.list\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"captions\": - {\n \"methods\": {\n \"download\": {\n \"supportsMediaDownload\": - true,\n \"httpMethod\": \"GET\",\n \"useMediaDownloadService\": - true,\n \"parameters\": {\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"tlang\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"tlang - is the language code; machine translate the captions into this language.\"\n - \ },\n \"id\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"path\",\n - \ \"description\": \"The ID of the caption track to download, - required for One Platform.\"\n },\n \"tfmt\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Convert the captions into this format. Supported options are sbv, srt, and - vtt.\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.download\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"flatPath\": \"youtube/v3/captions/{id}\",\n \"description\": - \"Downloads a caption track.\"\n },\n \"insert\": {\n \"path\": - \"youtube/v3/captions\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"The *part* parameter specifies the caption - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"sync\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is be on behalf of\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.captions.insert\",\n \"supportsMediaUpload\": - true,\n \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n - \ \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"update\": {\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\"\n },\n \"sync\": {\n - \ \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"description\": - \"Updates an existing resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"maxSize\": \"104857600\",\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ }\n }\n },\n \"httpMethod\": \"PUT\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"path\": \"youtube/v3/captions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"id\": \"youtube.captions.update\",\n - \ \"supportsMediaUpload\": true\n },\n \"delete\": {\n - \ \"path\": \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.captions.delete\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n }\n },\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.list\",\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is on behalf of.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"videoId\": - {\n \"description\": \"Returns the captions for the specified - video.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"Returns the captions with the given IDs for - Stubby or Apiary.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/captions\",\n - \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\"\n }\n }\n },\n \"tests\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.tests.insert\",\n \"response\": - {\n \"$ref\": \"TestItem\"\n },\n \"description\": - \"POST method.\",\n \"flatPath\": \"youtube/v3/tests\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true\n }\n },\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"request\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"path\": \"youtube/v3/tests\"\n }\n }\n - \ },\n \"videoAbuseReportReasons\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the videoCategory resource parts that the - API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"hl\": - {\n \"default\": \"en-US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.videoAbuseReportReasons.list\",\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ }\n }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.videoCategories.list\",\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - videoCategory resource properties that the API response will include. Set - the parameter value to snippet.\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"description\": \"Returns the video categories with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"default\": - \"en-US\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\"\n }\n }\n },\n \"superChatEvents\": - {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.superChatEvents.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/superChatEvents\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"maxResults\": {\n \"type\": - \"integer\",\n \"description\": \"The *maxResults* parameter - specifies the maximum number of items that should be returned in the result - set.\",\n \"location\": \"query\",\n \"minimum\": - \"1\",\n \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\"\n },\n \"part\": {\n - \ \"description\": \"The *part* parameter specifies the superChatEvent - resource parts that the API response will include. This parameter is currently - not supported.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"hl\": - {\n \"description\": \"Return rendered funding amounts in specified - language.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"playlists\": {\n \"methods\": {\n \"list\": - {\n \"parameters\": {\n \"maxResults\": {\n \"type\": - \"integer\",\n \"default\": \"5\",\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"format\": - \"uint32\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return content in specified language\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the playlists owned by the authenticated user.\"\n },\n - \ \"channelId\": {\n \"description\": \"Return the - playlists owned by the specified channel ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the playlists with the given IDs for - Stubby or Apiary.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": true\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"PlaylistListResponse\"\n },\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"id\": \"youtube.playlists.list\"\n - \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.playlists.insert\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"flatPath\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/playlists\"\n - \ },\n \"update\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ }\n },\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/playlists\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.update\",\n - \ \"description\": \"Updates an existing resource.\",\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"id\": \"youtube.playlists.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a resource.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/playlists\"\n }\n }\n },\n - \ \"channelBanners\": {\n \"methods\": {\n \"insert\": {\n \"path\": - \"youtube/v3/channelBanners/insert\",\n \"response\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"id\": \"youtube.channelBanners.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Unused, channel_id is currently - derived from the security context of the requestor.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/channelBanners/insert\",\n \"supportsMediaUpload\": - true,\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"mediaUpload\": {\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\"\n },\n \"parameterOrder\": - []\n }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"list\": {\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/messages\",\n \"parameters\": - {\n \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"liveChatId\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The id of the live chat for which comments - should be returned.\"\n },\n \"profileImageSize\": {\n - \ \"type\": \"integer\",\n \"minimum\": \"16\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\",\n \"location\": \"query\",\n - \ \"maximum\": \"720\",\n \"format\": \"uint32\"\n - \ },\n \"hl\": {\n \"description\": \"Specifies - the localization language in which the system messages should be returned.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"minimum\": \"200\",\n - \ \"maximum\": \"2000\",\n \"default\": \"500\",\n - \ \"type\": \"integer\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the liveChatComment - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"id\": - \"youtube.liveChatMessages.list\",\n \"httpMethod\": \"GET\"\n },\n - \ \"delete\": {\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a chat message.\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.liveChatMessages.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insert\": {\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"description\": \"Inserts a - new resource into this collection.\",\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"id\": - \"youtube.liveChatMessages.insert\"\n }\n }\n },\n \"videos\": - {\n \"methods\": {\n \"update\": {\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"path\": \"youtube/v3/videos\",\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.videos.update\",\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n }\n },\n \"delete\": {\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.delete\",\n \"description\": - \"Deletes a resource.\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"path\": \"youtube/v3/videos\",\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n }\n },\n - \ \"reportAbuse\": {\n \"request\": {\n \"$ref\": - \"VideoAbuseReport\"\n },\n \"id\": \"youtube.videos.reportAbuse\",\n - \ \"path\": \"youtube/v3/videos/reportAbuse\",\n \"parameterOrder\": - [],\n \"description\": \"Report abuse for a video.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"flatPath\": \"youtube/v3/videos/reportAbuse\"\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.list\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"locale\": {\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"myRating\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Return - videos with the given ids.\"\n },\n \"videoCategoryId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Use chart that is specific to the specified - video category\",\n \"default\": \"0\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"maxHeight\": {\n \"format\": - \"int32\",\n \"type\": \"integer\",\n \"minimum\": - \"72\",\n \"maximum\": \"8192\",\n \"location\": - \"query\"\n },\n \"chart\": {\n \"enum\": - [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the videos that are in the specified chart.\"\n },\n \"maxResults\": - {\n \"description\": \"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.\",\n - \ \"default\": \"5\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"1\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n - \ },\n \"maxWidth\": {\n \"minimum\": \"72\",\n - \ \"location\": \"query\",\n \"format\": \"int32\",\n - \ \"maximum\": \"8192\",\n \"description\": \"Return - the player with maximum height specified in\",\n \"type\": \"integer\"\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Stands - for \\\"host language\\\". Specifies the localization language of the metadata - to be filled into snippet.localized. The field is filled with the default - metadata if there is no localization in the specified language. The parameter - value must be a language code included in the list returned by the i18nLanguages.list - method (e.g. en_US, es_MX).\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Use - a chart that is specific to the specified region\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"VideoListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n },\n \"insert\": - {\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.videos.insert\",\n \"response\": {\n - \ \"$ref\": \"Video\"\n },\n \"parameters\": {\n - \ \"notifySubscribers\": {\n \"default\": \"true\",\n - \ \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"stabilize\": {\n \"type\": - \"boolean\",\n \"description\": \"Should stabilize be applied - to the upload.\",\n \"location\": \"query\"\n },\n - \ \"autoLevels\": {\n \"description\": \"Should auto-levels - be applied to the upload.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"mediaUpload\": {\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"resumable\": {\n \"multipart\": true,\n - \ \"path\": \"/resumable/upload/youtube/v3/videos\"\n },\n - \ \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/videos\"\n }\n },\n \"maxSize\": - \"274877906944\"\n },\n \"path\": \"youtube/v3/videos\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n }\n },\n - \ \"getRating\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.videos.getRating\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves the ratings that the authorized - user gave to a list of specified videos.\",\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos/getRating\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"rate\": {\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos/rate\",\n \"path\": - \"youtube/v3/videos/rate\",\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.videos.rate\",\n \"parameters\": {\n \"rating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"description\": - \"Adds a like or dislike rating to a video or removes a rating from a video.\"\n - \ }\n }\n }\n },\n \"auth\": {\n \"oauth2\": {\n \"scopes\": - {\n \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n }\n }\n - \ }\n },\n \"kind\": \"discovery#restDescription\",\n \"title\": \"YouTube - Data API v3\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:26 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UC4KiQZITzjlpxZ2B8ERRP1A&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"Cczf99QiukcTc53CQya7z3BNGHQ\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"XAKR1Xe8geEnG2Pep18fkVKd8sk\",\n \"id\": \"UC4KiQZITzjlpxZ2B8ERRP1A\",\n - \ \"snippet\": {\n \"title\": \"Train Gamer\",\n \"description\": - \"Hey Leute,\\n\\nherzlich Willkommen auf meinem Youtubekanal.\\nAuf meinem - Kanal findet ihr meist Spiele die sich rund um das Thema Eisenbahn drehen.\\nAb - und an spiele ich zur Abwechslung aber gerne auch was anderes mit euch.\\n\\n\\nWenn - euch meine Videos gefallen k\xF6nnt Ihr das gerne mit\\neinem kleinen Trinkgeld - honorieren.\\nhttps://www.tipeeestream.com/train-gamer/donation\\nDas Trinkgeld - wird verwendet f\xFCr:\\n- Neue Add-On's (Train Sim World 2, Train Simulator)\\n- - Hardwareaufr\xFCstung\\n\\nEmail: traingamer22@web.de\\n\",\n \"customUrl\": - \"@traingameryt\",\n \"publishedAt\": \"2013-08-10T14:01:17Z\",\n \"thumbnails\": - {\n \"default\": {\n \"url\": \"https://yt3.ggpht.com/0PoejjrXl7z2TicUJ0AQcyC5TnOPnBBK8lp6RmIvO_AFqSO-eexz_zEK3x56ZJM8YqU99Mtm=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/0PoejjrXl7z2TicUJ0AQcyC5TnOPnBBK8lp6RmIvO_AFqSO-eexz_zEK3x56ZJM8YqU99Mtm=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/0PoejjrXl7z2TicUJ0AQcyC5TnOPnBBK8lp6RmIvO_AFqSO-eexz_zEK3x56ZJM8YqU99Mtm=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Train Gamer\",\n \"description\": - \"Hey Leute,\\n\\nherzlich Willkommen auf meinem Youtubekanal.\\nAuf meinem - Kanal findet ihr meist Spiele die sich rund um das Thema Eisenbahn drehen.\\nAb - und an spiele ich zur Abwechslung aber gerne auch was anderes mit euch.\\n\\n\\nWenn - euch meine Videos gefallen k\xF6nnt Ihr das gerne mit\\neinem kleinen Trinkgeld - honorieren.\\nhttps://www.tipeeestream.com/train-gamer/donation\\nDas Trinkgeld - wird verwendet f\xFCr:\\n- Neue Add-On's (Train Sim World 2, Train Simulator)\\n- - Hardwareaufr\xFCstung\\n\\nEmail: traingamer22@web.de\\n\"\n }\n },\n - \ \"brandingSettings\": {\n \"channel\": {\n \"title\": - \"Train Gamer\",\n \"description\": \"Hey Leute,\\n\\nherzlich Willkommen - auf meinem Youtubekanal.\\nAuf meinem Kanal findet ihr meist Spiele die sich - rund um das Thema Eisenbahn drehen.\\nAb und an spiele ich zur Abwechslung - aber gerne auch was anderes mit euch.\\n\\n\\nWenn euch meine Videos gefallen - k\xF6nnt Ihr das gerne mit\\neinem kleinen Trinkgeld honorieren.\\nhttps://www.tipeeestream.com/train-gamer/donation\\nDas - Trinkgeld wird verwendet f\xFCr:\\n- Neue Add-On's (Train Sim World 2, Train - Simulator)\\n- Hardwareaufr\xFCstung\\n\\nEmail: traingamer22@web.de\\n\",\n - \ \"trackingAnalyticsAccountId\": \"UA-104907311-1\",\n \"unsubscribedTrailer\": - \"158q8wcGoOE\"\n },\n \"image\": {\n \"bannerExternalUrl\": - \"https://yt3.googleusercontent.com/nkaTZYb0zF_sLnf0mXIHmZwH4ZKAOJaCndXhU5vYpM9OrH1TFHSumqIIePh6few2TzomYVmR\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:27 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"schemas\": {\n \"VideoProjectDetails\": - {\n \"id\": \"VideoProjectDetails\",\n \"type\": \"object\",\n \"properties\": - {},\n \"description\": \"DEPRECATED. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"LiveChatTextMessageDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"messageText\": {\n \"description\": - \"The user's message.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LiveChatTextMessageDetails\"\n },\n \"PlaylistListResponse\": - {\n \"id\": \"PlaylistListResponse\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of playlists that match the request - criteria\",\n \"items\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"type\": \"array\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlistListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatModeratorSnippet\": - {\n \"id\": \"LiveChatModeratorSnippet\",\n \"properties\": {\n - \ \"liveChatId\": {\n \"description\": \"The ID of the live - chat this moderator can act on.\",\n \"type\": \"string\"\n },\n - \ \"moderatorDetails\": {\n \"description\": \"Details about - the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"Entity\": {\n \"properties\": - {\n \"url\": {\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\"\n },\n \"typeId\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"Entity\",\n \"type\": - \"object\"\n },\n \"TestItem\": {\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"gaia\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n }\n },\n \"id\": \"TestItem\"\n },\n \"LiveChatModerator\": - {\n \"id\": \"LiveChatModerator\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#liveChatModerator\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the moderator.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"description\": \"A - *liveChatModerator* resource represents a moderator for a YouTube live chat. - A chat moderator has the ability to ban/unban users from a chat, remove message, - etc.\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n \"description\": - \"Details about a resource which is being promoted.\",\n \"properties\": - {\n \"ctaType\": {\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"creativeViewUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user was shown this promoted item.\",\n \"type\": \"string\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify the promoted video.\",\n \"type\": - \"string\"\n },\n \"customCtaButtonText\": {\n \"type\": - \"string\",\n \"description\": \"The custom call-to-action button - text. If specified, it will override the default button text for the cta_type.\"\n - \ },\n \"descriptionText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text description to accompany the promoted - item.\"\n },\n \"clickTrackingUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user clicked through - on this promoted item.\",\n \"type\": \"string\"\n },\n \"adTag\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should fetch to request a promoted item.\"\n },\n \"impressionUrl\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The list of impression URLs. The client should - ping all of these URLs to indicate that the user was shown this promoted item.\",\n - \ \"type\": \"array\"\n },\n \"destinationUrl\": {\n - \ \"description\": \"The URL the client should direct the user to, - if the user chooses to visit the advertiser's website.\",\n \"type\": - \"string\"\n },\n \"forecastingUrl\": {\n \"type\": - \"array\",\n \"description\": \"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.\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"type\": - \"object\"\n },\n \"SubscriptionListResponse\": {\n \"id\": \"SubscriptionListResponse\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#subscriptionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Subscription\"\n },\n \"description\": - \"A list of subscriptions that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"I18nLanguageListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"default\": \"youtube#i18nLanguageListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"I18nLanguage\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of supported i18n languages. In this map, the i18n language ID is - the map key, and its value is the corresponding i18nLanguage resource.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"I18nLanguageListResponse\"\n - \ },\n \"LevelDetails\": {\n \"type\": \"object\",\n \"id\": - \"LevelDetails\",\n \"properties\": {\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The name that should be used when - referring to this level.\"\n }\n }\n },\n \"InvideoBranding\": - {\n \"properties\": {\n \"imageBytes\": {\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"format\": \"byte\",\n \"type\": \"string\"\n },\n - \ \"targetChannelId\": {\n \"description\": \"The channel to - which this branding links. If not present it defaults to the current channel.\",\n - \ \"type\": \"string\"\n },\n \"position\": {\n \"$ref\": - \"InvideoPosition\",\n \"description\": \"The spatial position within - the video where the branding watermark will be displayed.\"\n },\n - \ \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The url of the uploaded image. Only used in apiary to api communication.\"\n - \ },\n \"timing\": {\n \"$ref\": \"InvideoTiming\",\n - \ \"description\": \"The temporal position within the video where - watermark will be displayed.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"InvideoBranding\",\n \"description\": \"LINT.IfChange - Describes an invideo branding.\"\n },\n \"Video\": {\n \"type\": - \"object\",\n \"description\": \"A *video* resource represents a YouTube - video.\",\n \"properties\": {\n \"contentDetails\": {\n \"$ref\": - \"VideoContentDetails\",\n \"description\": \"The contentDetails - object contains information about the video content, including the length - of the video and its aspect ratio.\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"description\": \"The localizations - object contains localized versions of the basic details about the video, such - as its title and description.\",\n \"additionalProperties\": {\n - \ \"$ref\": \"VideoLocalization\"\n }\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"player\": {\n \"$ref\": \"VideoPlayer\",\n - \ \"description\": \"The player object contains information that you - would use to play the video in an embedded player.\"\n },\n \"fileDetails\": - {\n \"$ref\": \"VideoFileDetails\",\n \"description\": \"The - fileDetails object encapsulates information about the video file that was - uploaded to YouTube, including the file's resolution, duration, audio and - video codecs, stream bitrates, and more. This data can only be retrieved by - the video owner.\"\n },\n \"statistics\": {\n \"$ref\": - \"VideoStatistics\",\n \"description\": \"The statistics object contains - statistics about the video.\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n },\n - \ \"recordingDetails\": {\n \"description\": \"The recordingDetails - object encapsulates information about the location, date and address where - the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"topicDetails\": {\n \"description\": \"The - topicDetails object encapsulates information about Freebase topics associated - with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n - \ \"processingDetails\": {\n \"description\": \"The processingDetails - object encapsulates information about YouTube's progress in processing the - uploaded video file. The properties in the object identify the current processing - status and an estimate of the time remaining until YouTube finishes processing - the video. This part also indicates whether different types of data or content, - such as file details or thumbnail images, are available for the video. The - processingProgress object is designed to be polled so that the video uploaded - can track the progress that YouTube has made in processing the uploaded video - file. This data can only be retrieved by the video owner.\",\n \"$ref\": - \"VideoProcessingDetails\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video, such as its title, - description, and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n - \ \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n \"description\": - \"Age restriction details related to a video. This data can only be retrieved - by the video owner.\"\n },\n \"monetizationDetails\": {\n \"$ref\": - \"VideoMonetizationDetails\",\n \"description\": \"The monetizationDetails - object encapsulates information about the monetization status of the video.\"\n - \ },\n \"liveStreamingDetails\": {\n \"$ref\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\"\n },\n - \ \"suggestions\": {\n \"description\": \"The suggestions object - encapsulates suggestions that identify opportunities to improve the video - quality or the metadata for the uploaded video. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n },\n - \ \"projectDetails\": {\n \"$ref\": \"VideoProjectDetails\",\n - \ \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"status\": {\n \"$ref\": \"VideoStatus\",\n - \ \"description\": \"The status object contains information about - the video's uploading, processing, and privacy statuses.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#video\\\".\",\n \"default\": - \"youtube#video\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"Video\"\n },\n \"IngestionInfo\": {\n \"description\": - \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n - \ \"properties\": {\n \"rtmpsBackupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of backupIngestionAddress in order to stream via RTMPS. Not applicable to - non-RTMP streams.\"\n },\n \"rtmpsIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of ingestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ },\n \"backupIngestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\"\n - \ },\n \"streamName\": {\n \"type\": \"string\",\n \"description\": - \"The stream name that YouTube assigns to the video stream.\"\n },\n - \ \"ingestionAddress\": {\n \"description\": \"The primary - ingestion URL that you should use to stream video to YouTube. You must stream - video to this URL. Depending on which application or tool you use to encode - your video stream, you may need to enter the stream URL and stream name separately - or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \",\n \"type\": \"string\"\n }\n },\n \"id\": \"IngestionInfo\",\n - \ \"type\": \"object\"\n },\n \"GeoPoint\": {\n \"type\": \"object\",\n - \ \"description\": \"Geographical coordinates of a point, in WGS84.\",\n - \ \"properties\": {\n \"altitude\": {\n \"format\": \"double\",\n - \ \"type\": \"number\",\n \"description\": \"Altitude above - the reference ellipsoid, in meters.\"\n },\n \"latitude\": {\n - \ \"type\": \"number\",\n \"description\": \"Latitude in - degrees.\",\n \"format\": \"double\"\n },\n \"longitude\": - {\n \"format\": \"double\",\n \"type\": \"number\",\n \"description\": - \"Longitude in degrees.\"\n }\n },\n \"id\": \"GeoPoint\"\n - \ },\n \"MembershipsLevelSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"MembershipsLevelSnippet\",\n \"properties\": {\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering channel memberships.\"\n },\n \"levelDetails\": - {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details - about the pricing level.\"\n }\n }\n },\n \"PlaylistItemContentDetails\": - {\n \"id\": \"PlaylistItemContentDetails\",\n \"properties\": {\n - \ \"startAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\"\n },\n \"videoId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify a video. To retrieve the video resource, - set the id query parameter to this value in your API request.\"\n },\n - \ \"note\": {\n \"type\": \"string\",\n \"description\": - \"A user-generated note for this item.\"\n },\n \"videoPublishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the video was published to YouTube.\",\n \"format\": - \"date-time\"\n },\n \"endAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveBroadcast\": {\n \"id\": \"LiveBroadcast\",\n \"description\": - \"A *liveBroadcast* resource represents an event that will be streamed, via - live video, on YouTube.\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the broadcast.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"default\": \"youtube#liveBroadcast\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the event, including its title, description, - start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"status\": {\n \"$ref\": - \"LiveBroadcastStatus\",\n \"description\": \"The status object contains - information about the event's status.\"\n },\n \"statistics\": - {\n \"$ref\": \"LiveBroadcastStatistics\",\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"I18nRegion\": {\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"default\": \"youtube#i18nRegion\"\n },\n \"snippet\": - {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the i18n region.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n - \ \"id\": \"I18nRegion\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"items\": {\n \"description\": \"A list of valid - abuse reasons that are used with `video.ReportAbuse`.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ }\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The `visitorId` identifies the visitor.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoAbuseReportReasonListResponse\",\n - \ \"type\": \"object\"\n },\n \"CommentThreadListResponse\": {\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n \"default\": - \"youtube#commentThreadListResponse\"\n },\n \"pageInfo\": {\n - \ \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of comment threads that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"CommentThread\"\n - \ }\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"CommentThreadListResponse\"\n },\n \"VideoTopicDetails\": {\n \"id\": - \"VideoTopicDetails\",\n \"type\": \"object\",\n \"description\": - \"Freebase topic information related to the video.\",\n \"properties\": - {\n \"topicCategories\": {\n \"type\": \"array\",\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"topicIds\": {\n \"description\": \"A list of - Freebase topic IDs that are centrally associated with the video. These are - topics that are centrally featured in the video, and it can be said that the - video is mainly about each of these. You can retrieve information about each - topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"relevantTopicIds\": - {\n \"description\": \"Similar to topic_id, except that these topics - are merely relevant to the video. These are topics that may be mentioned in, - or appear in the video. You can retrieve information about each topic using - Freebase Topic API.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n }\n },\n - \ \"SearchResultSnippet\": {\n \"description\": \"Basic details about - a search result, including title, description and thumbnails of the item referenced - by the search result.\",\n \"properties\": {\n \"title\": {\n - \ \"description\": \"The title of the search result.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The value that YouTube uses to uniquely identify - the channel that published the resource that the search result identifies.\"\n - \ },\n \"channelTitle\": {\n \"description\": \"The - title of the channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"description\": \"It indicates if the resource (video or channel) - has upcoming/active live broadcast content. Or it's \\\"none\\\" if there - is not any upcoming/active live broadcasts.\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - search result. 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.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"A description of the search result.\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The creation - date and time of the resource that the search result identifies.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"SearchResultSnippet\"\n - \ },\n \"VideoRating\": {\n \"description\": \"Basic details about - rating of a video.\",\n \"properties\": {\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video.\"\n },\n \"rating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"type\": \"string\",\n \"description\": - \"Rating of a video.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoRating\"\n },\n \"ActivityContentDetailsComment\": - {\n \"type\": \"object\",\n \"description\": \"Information about - a resource that received a comment.\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with the - comment.\"\n }\n },\n \"id\": \"ActivityContentDetailsComment\"\n - \ },\n \"ActivityContentDetailsFavorite\": {\n \"properties\": {\n - \ \"resourceId\": {\n \"description\": \"The resourceId object - contains information that identifies the resource that was marked as a favorite.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"description\": - \"Information about a video that was marked as a favorite video.\",\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsFavorite\"\n },\n \"Thumbnail\": - {\n \"type\": \"object\",\n \"description\": \"A thumbnail is an - image representing a YouTube resource.\",\n \"id\": \"Thumbnail\",\n - \ \"properties\": {\n \"height\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"(Optional) - Height of the thumbnail image.\"\n },\n \"url\": {\n \"description\": - \"The thumbnail image's URL.\",\n \"type\": \"string\"\n },\n - \ \"width\": {\n \"description\": \"(Optional) Width of the - thumbnail image.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n }\n }\n },\n \"ChannelContentOwnerDetails\": - {\n \"type\": \"object\",\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"id\": \"ChannelContentOwnerDetails\",\n \"properties\": - {\n \"timeLinked\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the channel - was linked to the content owner.\"\n },\n \"contentOwner\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the content owner linked to the channel.\"\n }\n }\n },\n \"Member\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"$ref\": \"MemberSnippet\",\n \"description\": \"The - snippet object contains basic details about the member.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#member\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#member\\\".\"\n }\n },\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\",\n - \ \"type\": \"object\",\n \"id\": \"Member\"\n },\n \"Comment\": - {\n \"description\": \"A *comment* represents a single YouTube comment.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n - \ \"default\": \"youtube#comment\"\n },\n \"snippet\": - {\n \"$ref\": \"CommentSnippet\",\n \"description\": \"The - snippet object contains basic details about the comment.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"Comment\"\n },\n \"PlaylistStatus\": - {\n \"type\": \"object\",\n \"properties\": {\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The playlist's privacy status.\"\n }\n - \ },\n \"id\": \"PlaylistStatus\"\n },\n \"MemberListResponse\": - {\n \"id\": \"MemberListResponse\",\n \"properties\": {\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Member\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of members that match the request criteria.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#memberListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"type\": \"object\",\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"properties\": {\n \"blocked\": {\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"allowed\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of region codes - that identify countries where the video is viewable. If this property is present - and a country is not listed in its value, then the video is blocked from appearing - in that country. If this property is present and contains an empty list, the - video is blocked in all countries.\",\n \"type\": \"array\"\n }\n - \ }\n },\n \"VideoLiveStreamingDetails\": {\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Details about the live - streaming metadata.\",\n \"properties\": {\n \"actualStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\"\n },\n - \ \"actualEndTime\": {\n \"format\": \"date-time\",\n \"description\": - \"The time that the broadcast actually ended. This value will not be available - until the broadcast is over.\",\n \"type\": \"string\"\n },\n - \ \"concurrentViewers\": {\n \"type\": \"string\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\",\n \"format\": - \"uint64\"\n },\n \"activeLiveChatId\": {\n \"description\": - \"The ID of the currently active live chat attached to this video. This field - is filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\",\n \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - time that the broadcast is scheduled to begin.\",\n \"type\": \"string\"\n - \ },\n \"scheduledEndTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast is scheduled to end. - If the value is empty or the property is not present, then the broadcast is - scheduled to contiue indefinitely.\",\n \"format\": \"date-time\"\n - \ }\n }\n },\n \"ChannelSettings\": {\n \"id\": \"ChannelSettings\",\n - \ \"description\": \"Branding properties for the channel view.\",\n \"properties\": - {\n \"trackingAnalyticsAccountId\": {\n \"description\": \"The - ID for a Google Analytics account to track and measure traffic to the channels.\",\n - \ \"type\": \"string\"\n },\n \"unsubscribedTrailer\": - {\n \"type\": \"string\",\n \"description\": \"The trailer - of the channel, for users that are not subscribers.\"\n },\n \"profileColor\": - {\n \"type\": \"string\",\n \"description\": \"A prominent - color that can be rendered on this channel page.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n },\n - \ \"featuredChannelsUrls\": {\n \"type\": \"array\",\n \"description\": - \"The list of featured channels.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"keywords\": {\n \"description\": - \"Lists keywords associated with the channel, comma-separated.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the channel description.\"\n },\n - \ \"moderateComments\": {\n \"description\": \"Whether user-submitted - comments left on the channel page need to be approved by the channel owner - to be publicly visible.\",\n \"type\": \"boolean\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the channel title.\"\n },\n \"defaultTab\": {\n - \ \"type\": \"string\",\n \"description\": \"Which content - tab users should see when viewing the channel.\"\n },\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n },\n \"showBrowseView\": {\n - \ \"description\": \"Whether the tab to browse the videos should be - displayed.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveStreamListResponse\": {\n \"id\": \"LiveStreamListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#liveStreamListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of live streams that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n - \ }\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n }\n }\n },\n \"LiveStream\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"LiveStreamContentDetails\",\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\"\n },\n \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n - \ \"description\": \"The status object contains information about - live stream's status.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the stream.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"default\": \"youtube#liveStream\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveStreamSnippet\",\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\"\n },\n \"cdn\": {\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\",\n \"$ref\": \"CdnSettings\"\n }\n - \ },\n \"id\": \"LiveStream\",\n \"description\": \"A live stream - describes a live ingestion point.\",\n \"type\": \"object\"\n },\n - \ \"CommentThreadSnippet\": {\n \"type\": \"object\",\n \"id\": - \"CommentThreadSnippet\",\n \"properties\": {\n \"totalReplyCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total number of replies (not including the top level comment).\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID of the video the - comments refer to, if any. No video_id implies a channel discussion comment.\",\n - \ \"type\": \"string\"\n },\n \"topLevelComment\": {\n - \ \"$ref\": \"Comment\",\n \"description\": \"The top level - comment of this thread.\"\n },\n \"canReply\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"isPublic\": {\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\",\n \"type\": \"boolean\"\n }\n },\n \"description\": - \"Basic details about a comment thread.\"\n },\n \"ChannelBrandingSettings\": - {\n \"id\": \"ChannelBrandingSettings\",\n \"properties\": {\n \"image\": - {\n \"$ref\": \"ImageSettings\",\n \"description\": \"Branding - properties for branding images.\"\n },\n \"hints\": {\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n },\n \"type\": - \"array\",\n \"description\": \"Additional experimental branding - properties.\"\n },\n \"watch\": {\n \"$ref\": \"WatchSettings\",\n - \ \"description\": \"Branding properties for the watch page.\"\n },\n - \ \"channel\": {\n \"$ref\": \"ChannelSettings\",\n \"description\": - \"Branding properties for the channel view.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Branding properties of a YouTube channel.\"\n - \ },\n \"LiveChatMessage\": {\n \"id\": \"LiveChatMessage\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#liveChatMessage\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the message.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"authorDetails\": {\n \"description\": - \"The authorDetails object contains basic details about the user that posted - this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A *liveChatMessage* resource represents a chat message in a YouTube Live - Chat.\"\n },\n \"ThumbnailDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"standard\": {\n \"description\": - \"The standard quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"medium\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The medium quality image for this resource.\"\n },\n \"high\": - {\n \"description\": \"The high quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"default\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The default image for this resource.\"\n - \ },\n \"maxres\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The maximum resolution quality image for this resource.\"\n }\n },\n - \ \"description\": \"Internal representation of thumbnails for a YouTube - resource.\",\n \"id\": \"ThumbnailDetails\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that the user subscribed to.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"description\": \"Information about a channel that a user subscribed - to.\",\n \"type\": \"object\"\n },\n \"MembershipsDuration\": {\n - \ \"properties\": {\n \"memberSince\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the user became a continuous - member across all levels.\"\n },\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - across all levels in complete months (the time is rounded down to the nearest - integer).\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"MembershipsDuration\"\n - \ },\n \"LanguageTag\": {\n \"type\": \"object\",\n \"id\": - \"LanguageTag\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n }\n }\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was added to the channel.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Details - about a resource which was added to a channel.\",\n \"id\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"LiveBroadcastSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\"\n },\n \"actualEndTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - actually ended. This information is only available once the broadcast's state - is complete.\",\n \"type\": \"string\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the live chat for this broadcast.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the broadcast was added - to YouTube's live broadcast schedule.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"scheduledStartTime\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the broadcast is scheduled to start.\"\n },\n - \ \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the broadcast. For each nested object in this object, - the key is the name of the thumbnail image, and the value is an object that - contains other information about the thumbnail.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the broadcast is scheduled to end.\"\n },\n \"description\": - {\n \"description\": \"The broadcast's description. As with the title, - you can set this field by modifying the broadcast resource or by setting the - description field of the corresponding video resource.\",\n \"type\": - \"string\"\n },\n \"isDefaultBroadcast\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether this broadcast - is the default broadcast. Internal only.\"\n },\n \"actualStartTime\": - {\n \"description\": \"The date and time that the broadcast actually - started. This information is only available once the broadcast's state is - live.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The broadcast's title. Note that the broadcast represents exactly one YouTube - video. You can set this field by modifying the broadcast resource or by setting - the title field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ }\n },\n \"description\": \"Basic broadcast information.\",\n - \ \"id\": \"LiveBroadcastSnippet\"\n },\n \"ChannelListResponse\": - {\n \"id\": \"ChannelListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#channelListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Channel\"\n },\n - \ \"type\": \"array\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ }\n },\n \"LiveBroadcastListResponse\": {\n \"properties\": - {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveBroadcastListResponse\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"description\": \"A list of broadcasts - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"id\": \"LiveBroadcastListResponse\",\n \"type\": \"object\"\n - \ },\n \"PlaylistContentDetails\": {\n \"id\": \"PlaylistContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"itemCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n }\n },\n \"SuperChatEvent\": - {\n \"description\": \"A `__superChatEvent__` resource represents a Super - Chat purchase on a YouTube channel.\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the Super Chat event.\",\n \"$ref\": \"SuperChatEventSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the Super Chat event.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#superChatEvent\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"SuperChatEvent\",\n - \ \"type\": \"object\"\n },\n \"PlaylistItemStatus\": {\n \"properties\": - {\n \"privacyStatus\": {\n \"description\": \"This resource's - privacy status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"description\": \"Information about the playlist item's privacy - status.\",\n \"id\": \"PlaylistItemStatus\",\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsUpload\": {\n \"description\": \"Information - about the uploaded video.\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the uploaded video.\"\n }\n },\n - \ \"id\": \"ActivityContentDetailsUpload\",\n \"type\": \"object\"\n - \ },\n \"I18nRegionSnippet\": {\n \"description\": \"Basic details - about an i18n region, such as region code and human-readable name.\",\n \"id\": - \"I18nRegionSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"gl\": {\n \"type\": \"string\",\n \"description\": - \"The region code as a 2-letter ISO country code.\"\n },\n \"name\": - {\n \"description\": \"The human-readable name of the region.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"SuperStickerMetadata\": - {\n \"type\": \"object\",\n \"id\": \"SuperStickerMetadata\",\n - \ \"properties\": {\n \"altTextLanguage\": {\n \"description\": - \"Specifies the localization language in which the alt text is returned.\",\n - \ \"type\": \"string\"\n },\n \"stickerId\": {\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\",\n - \ \"type\": \"string\"\n },\n \"altText\": {\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ChannelLocalization\": {\n \"type\": \"object\",\n \"description\": - \"Channel localization setting\",\n \"id\": \"ChannelLocalization\",\n - \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for channel's description.\"\n - \ },\n \"title\": {\n \"description\": \"The localized - strings for channel's title.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"Subscription\": {\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the subscription.\"\n },\n \"subscriberSnippet\": {\n \"$ref\": - \"SubscriptionSubscriberSnippet\",\n \"description\": \"The subscriberSnippet - object contains basic details about the subscriber.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"SubscriptionContentDetails\",\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#subscription\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Subscription\",\n - \ \"description\": \"A *subscription* resource contains information about - a YouTube user subscription. A subscription notifies a user when new videos - are added to a channel or when another user takes one of several actions on - YouTube, such as uploading a video, rating a video, or commenting on a video.\"\n - \ },\n \"LocalizedString\": {\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n },\n \"language\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LocalizedString\",\n \"type\": - \"object\"\n },\n \"ChannelSectionListResponse\": {\n \"id\": \"ChannelSectionListResponse\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of ChannelSections that match the request criteria.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelSectionListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": - \"object\"\n },\n \"ThumbnailSetResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"description\": - \"A list of thumbnails.\",\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"type\": \"array\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"default\": \"youtube#thumbnailSetResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"id\": \"ThumbnailSetResponse\"\n },\n \"PropertyValue\": - {\n \"type\": \"object\",\n \"id\": \"PropertyValue\",\n \"description\": - \"A pair Property / Value.\",\n \"properties\": {\n \"property\": - {\n \"description\": \"A property.\",\n \"type\": \"string\"\n - \ },\n \"value\": {\n \"description\": \"The property's - value.\",\n \"type\": \"string\"\n }\n }\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"amountMicros\": {\n \"description\": - \"The amount of the fund.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the fund was made.\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"MemberSnippet\": - {\n \"id\": \"MemberSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"memberDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the member.\"\n },\n \"membershipsDetails\": - {\n \"description\": \"Details about the user's membership.\",\n - \ \"$ref\": \"MembershipsDetails\"\n },\n \"creatorChannelId\": - {\n \"description\": \"The id of the channel that's offering memberships.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoContentDetails\": - {\n \"id\": \"VideoContentDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"definition\": {\n \"type\": \"string\",\n \"enum\": - [\n \"sd\",\n \"hd\"\n ],\n \"enumDescriptions\": - [\n \"sd\",\n \"hd\"\n ],\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\"\n },\n \"countryRestriction\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - countryRestriction object contains information about the countries where a - video is (or is not) viewable.\"\n },\n \"licensedContent\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of is_license_content indicates whether the video is licensed content.\"\n - \ },\n \"caption\": {\n \"type\": \"string\",\n \"enum\": - [\n \"true\",\n \"false\"\n ],\n \"description\": - \"The value of captions indicates whether the video has captions or not.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"projection\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Specifies the projection format of the video.\",\n - \ \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ]\n },\n \"duration\": {\n \"type\": \"string\",\n - \ \"description\": \"The length of the video. The tag value is an - ISO 8601 duration in the format PT#M#S, in which the letters PT indicate that - the value specifies a period of time, and the letters M and S refer to length - in minutes and seconds, respectively. The # characters preceding the M and - S letters are both integers that specify the number of minutes (or seconds) - of the video. For example, a value of PT15M51S indicates that the video is - 15 minutes and 51 seconds long.\"\n },\n \"hasCustomThumbnail\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\"\n },\n \"contentRating\": - {\n \"description\": \"Specifies the ratings that the video received - under various rating schemes.\",\n \"$ref\": \"ContentRating\"\n - \ },\n \"dimension\": {\n \"type\": \"string\",\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\"\n },\n \"regionRestriction\": {\n \"$ref\": - \"VideoContentDetailsRegionRestriction\",\n \"description\": \"The - regionRestriction object contains information about the countries where a - video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\"\n }\n - \ },\n \"description\": \"Details about the content of a YouTube - Video.\"\n },\n \"VideoAgeGating\": {\n \"id\": \"VideoAgeGating\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"alcoholContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether or not the video has alcoholic beverage content. Only users of legal - purchasing age in a particular country, as identified by ICAP, can view the - content.\"\n },\n \"restricted\": {\n \"description\": - \"Age-restricted trailers. For redband trailers and adult-rated video-games. - Only users aged 18+ can view the content. The the field is true the content - is restricted to viewers aged 18+. Otherwise The field won't be present.\",\n - \ \"type\": \"boolean\"\n },\n \"videoGameRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Video game rating, if any.\",\n \"enum\": - [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ]\n }\n }\n },\n \"InvideoTiming\": - {\n \"properties\": {\n \"offsetMs\": {\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"enum\": [\n \"offsetFromStart\",\n - \ \"offsetFromEnd\"\n ],\n \"description\": \"Describes - a timing type. If the value is offsetFromStart, then the offsetMs field represents - an offset from the start of the video. If the value is offsetFromEnd, then - the offsetMs field represents an offset from the end of the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"durationMs\": - {\n \"description\": \"Defines the duration in milliseconds for which - the promotion should be displayed. If missing, the client should use the default.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n }\n - \ },\n \"description\": \"Describes a temporal position of a visual - widget inside a video.\",\n \"id\": \"InvideoTiming\",\n \"type\": - \"object\"\n },\n \"ActivityListResponse\": {\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#activityListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#activityListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Activity\"\n }\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ActivityListResponse\",\n - \ \"type\": \"object\"\n },\n \"ThirdPartyLinkListResponse\": {\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"default\": - \"youtube#thirdPartyLinkListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"VideoAbuseReportReason\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReason\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID of this abuse report reason.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n }\n },\n \"id\": \"VideoAbuseReportReason\",\n - \ \"type\": \"object\",\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\"\n },\n \"ChannelBannerResource\": - {\n \"description\": \"A channel banner returned as the response to a - channel_banner.insert call.\",\n \"id\": \"ChannelBannerResource\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"url\": {\n - \ \"type\": \"string\",\n \"description\": \"The URL of this - banner image.\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#channelBannerResource\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n - \ }\n }\n },\n \"VideoSuggestionsTagSuggestion\": {\n \"description\": - \"A single tag suggestion with it's relevance information.\",\n \"type\": - \"object\",\n \"id\": \"VideoSuggestionsTagSuggestion\",\n \"properties\": - {\n \"categoryRestricts\": {\n \"type\": \"array\",\n \"description\": - \"A set of video categories for which the tag is relevant. You can use this - information to display appropriate tag suggestions based on the video category - that the video uploader associates with the video. By default, tag suggestions - are relevant for all categories if there are no restricts defined for the - keyword.\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"tag\": {\n \"type\": \"string\",\n \"description\": - \"The keyword tag suggested for the video.\"\n }\n }\n },\n - \ \"Cuepoint\": {\n \"description\": \"Note that there may be a 5-second - end-point resolution issue. For instance, if a cuepoint comes in for 22:03:27, - we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. This is an - artifact of HLS.\",\n \"id\": \"Cuepoint\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"walltimeMs\": {\n \"type\": \"string\",\n - \ \"description\": \"The wall clock time at which the cuepoint should - be inserted. Only one of insertion_offset_time_ms and walltime_ms may be set - at a time.\",\n \"format\": \"uint64\"\n },\n \"cueType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"type\": \"string\"\n - \ },\n \"insertionOffsetTimeMs\": {\n \"type\": \"string\",\n - \ \"format\": \"int64\",\n \"description\": \"The time when - the cuepoint should be inserted by offset to the broadcast actual start time.\"\n - \ },\n \"durationSecs\": {\n \"description\": \"The - duration of this cuepoint.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The identifier - for cuepoint resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"MembershipsDurationAtLevel\": {\n \"properties\": {\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"description\": \"The cumulative - time the user has been a member for the given level in complete months (the - time is rounded down to the nearest integer).\",\n \"format\": \"int32\"\n - \ },\n \"level\": {\n \"description\": \"Pricing level - ID.\",\n \"type\": \"string\"\n },\n \"memberSince\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the user became a continuous member for the given level.\"\n - \ }\n },\n \"id\": \"MembershipsDurationAtLevel\",\n \"type\": - \"object\"\n },\n \"ChannelProfileDetails\": {\n \"properties\": - {\n \"channelUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channel's URL.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube channel ID.\"\n },\n - \ \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The channel's display name.\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelProfileDetails\"\n },\n \"MonitorStreamInfo\": {\n \"id\": - \"MonitorStreamInfo\",\n \"properties\": {\n \"broadcastStreamDelayMs\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"If you have set the enableMonitorStream property to true, then this property - determines the length of the live broadcast delay.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"embedHtml\": {\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\",\n \"type\": - \"string\"\n },\n \"enableMonitorStream\": {\n \"description\": - \"This value determines whether the monitor stream is enabled for the broadcast. - If the monitor stream is enabled, then YouTube will broadcast the event content - on a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"boolean\"\n }\n - \ },\n \"description\": \"Settings and Info of the monitor stream\",\n - \ \"type\": \"object\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of moderators that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n }\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatModeratorListResponse\"\n - \ },\n \"ChannelContentDetails\": {\n \"properties\": {\n \"relatedPlaylists\": - {\n \"properties\": {\n \"watchHistory\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s watch history. Use the playlistItems.insert and - playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"watchLater\": {\n \"description\": \"The ID of - the playlist that contains the channel\\\"s watch later playlist. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"uploads\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s uploaded videos. Use the - videos.insert method to upload new videos and the videos.delete method to - delete previously uploaded videos.\"\n },\n \"favorites\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s favorite videos. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"likes\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n }\n },\n \"description\": - \"Details about the content of a channel.\",\n \"type\": \"object\",\n - \ \"id\": \"ChannelContentDetails\"\n },\n \"LiveStreamSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n },\n \"channelId\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is transmitting the stream.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The stream's description. The value cannot be - longer than 10000 characters.\"\n },\n \"title\": {\n \"description\": - \"The stream's title. The value must be between 1 and 128 characters long.\",\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the stream was created.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveStreamSnippet\"\n },\n \"SubscriptionContentDetails\": {\n \"properties\": - {\n \"totalItemCount\": {\n \"description\": \"The approximate - number of items that the subscription points to.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"newItemCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of new items in the subscription since its content was last read.\"\n - \ },\n \"activityType\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"description\": - \"Details about the content to witch a subscription refers.\",\n \"id\": - \"SubscriptionContentDetails\",\n \"type\": \"object\"\n },\n \"ChannelSectionLocalization\": - {\n \"description\": \"ChannelSection localization setting\",\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel - section's title.\"\n }\n },\n \"id\": \"ChannelSectionLocalization\"\n - \ },\n \"CommentSnippetAuthorChannelId\": {\n \"description\": \"The - id of the author's YouTube channel, if any.\",\n \"properties\": {\n - \ \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"ChannelAuditDetails\": {\n \"id\": \"ChannelAuditDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n }\n },\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\"\n },\n \"MembershipsLevel\": {\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the memberships level.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#membershipsLevel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"MembershipsLevelSnippet\",\n \"description\": \"The snippet object - contains basic details about the level.\"\n }\n },\n \"description\": - \"A *membershipsLevel* resource represents an offer made by YouTube creators - for their fans. Users can become members of the channel by joining one of - the available levels. They will provide recurring monetary support and receives - special benefits.\",\n \"id\": \"MembershipsLevel\",\n \"type\": - \"object\"\n },\n \"SearchListResponse\": {\n \"id\": \"SearchListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"Pagination information for token pagination.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"SearchResult\"\n }\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"default\": \"youtube#searchListResponse\",\n \"type\": - \"string\"\n },\n \"regionCode\": {\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"PlaylistItem\": {\n \"description\": \"A *playlistItem* - resource identifies another resource, such as a video, that is included in - a playlist. In addition, the playlistItem resource contains details about - the included resource that pertain specifically to how that resource is used - in that playlist. YouTube uses playlists to identify special collections of - videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods. For example, if - a user gives a positive rating to a video, you would insert that video into - the liked videos playlist for that user's channel.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"status\": {\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\",\n \"$ref\": \"PlaylistItemStatus\"\n },\n \"snippet\": - {\n \"$ref\": \"PlaylistItemSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\"\n },\n \"kind\": - {\n \"default\": \"youtube#playlistItem\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"type\": \"string\"\n },\n \"contentDetails\": {\n - \ \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the playlist item.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"PlaylistItem\"\n - \ },\n \"ThirdPartyLink\": {\n \"description\": \"A *third party - account link* resource represents a link between a YouTube account or a channel - and an account on a third-party service.\",\n \"properties\": {\n \"linkingToken\": - {\n \"type\": \"string\",\n \"description\": \"The linking_token - identifies a YouTube account and channel with which the third party account - is linked.\"\n },\n \"snippet\": {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the third- party account link.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#thirdPartyLink\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the status of the link.\",\n \"$ref\": \"ThirdPartyLinkStatus\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ThirdPartyLink\"\n - \ },\n \"ChannelStatus\": {\n \"id\": \"ChannelStatus\",\n \"description\": - \"JSON template for the status part of a channel.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"longUploadsStatus\": {\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The long uploads status of this - channel. See https://support.google.com/youtube/answer/71673 for more information.\"\n - \ },\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\",\n \"description\": \"Privacy status of the channel.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"isLinked\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n }\n }\n },\n \"ChannelConversionPing\": - {\n \"description\": \"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.\",\n \"id\": \"ChannelConversionPing\",\n - \ \"properties\": {\n \"conversionUrl\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"context\": - {\n \"type\": \"string\",\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ],\n \"description\": - \"Defines the context of the ping.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"properties\": {\n \"heightPixels\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The encoded video content's height in pixels.\"\n },\n \"rotation\": - {\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The amount that - YouTube needs to rotate the original source content to properly display the - video.\"\n },\n \"codec\": {\n \"type\": \"string\",\n - \ \"description\": \"The video codec that the stream uses.\"\n },\n - \ \"bitrateBps\": {\n \"type\": \"string\",\n \"description\": - \"The video stream's bitrate, in bits per second.\",\n \"format\": - \"uint64\"\n },\n \"aspectRatio\": {\n \"type\": \"number\",\n - \ \"format\": \"double\",\n \"description\": \"The video - content's display aspect ratio, which specifies the aspect ratio in which - the video should be displayed.\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"widthPixels\": {\n \"description\": \"The encoded video - content's width in pixels. You can calculate the video's encoding aspect ratio - as width_pixels / height_pixels.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"frameRateFps\": {\n \"description\": - \"The video stream's frame rate, in frames per second.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n }\n },\n \"id\": - \"VideoFileDetailsVideoStream\",\n \"type\": \"object\",\n \"description\": - \"Information about a video stream.\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"userComment\": - {\n \"description\": \"The comment added by the user to this Super - Chat event.\",\n \"type\": \"string\"\n },\n \"tier\": - {\n \"description\": \"The tier in which the amount belongs. Lower - amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"type\": \"string\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"format\": \"uint64\"\n },\n \"currency\": {\n \"type\": - \"string\",\n \"description\": \"The currency in which the purchase - was made.\"\n }\n },\n \"id\": \"LiveChatSuperChatDetails\"\n - \ },\n \"ThirdPartyLinkStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"linkStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The third-party link status object contains information about the status - of the link.\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": {\n - \ \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"properties\": {\n \"gifterChannelId\": {\n \"description\": - \"The ID of the user that made the membership gifting purchase. This matches - the `snippet.authorChannelId` of the associated membership gifting message.\",\n - \ \"type\": \"string\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n - \ },\n \"memberLevelName\": {\n \"description\": \"The - name of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"VideoProcessingDetails\": {\n \"properties\": {\n \"editorSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether video editing suggestions, which might improve video quality - or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\"\n },\n \"processingIssuesAvailability\": {\n \"description\": - \"This value indicates whether the video processing engine has generated suggestions - that might improve YouTube's ability to process the the video, warnings that - explain video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"tagSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether keyword (tag) suggestions are available for the video. Tags - can be added to a video's metadata to make it easier for other users to find - the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"processingStatus\": - {\n \"description\": \"The video's processing status. This value - indicates whether YouTube was able to process the video or if the video is - still being processed.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"type\": \"string\"\n - \ },\n \"thumbnailsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\"\n },\n \"fileDetailsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether file details are available for the uploaded video. You can - retrieve a video's file details by requesting the fileDetails part in your - videos.list() request.\"\n },\n \"processingProgress\": {\n - \ \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n },\n \"processingFailureReason\": - {\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\"\n - \ }\n },\n \"id\": \"VideoProcessingDetails\",\n \"description\": - \"Describes processing status and progress and availability of some other - Video resource parts.\",\n \"type\": \"object\"\n },\n \"AbuseReport\": - {\n \"type\": \"object\",\n \"properties\": {\n \"relatedEntities\": - {\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n - \ \"type\": \"array\"\n },\n \"abuseTypes\": {\n \"items\": - {\n \"$ref\": \"AbuseType\"\n },\n \"type\": - \"array\"\n },\n \"description\": {\n \"type\": \"string\"\n - \ },\n \"subject\": {\n \"$ref\": \"Entity\"\n }\n - \ },\n \"id\": \"AbuseReport\"\n },\n \"InvideoPosition\": - {\n \"description\": \"Describes the spatial position of a visual widget - inside a video. It is a union of various position types, out of which only - will be set one.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"type\": {\n \"description\": \"Defines the position type.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\"\n - \ ],\n \"enum\": [\n \"corner\"\n ]\n - \ },\n \"cornerPosition\": {\n \"enum\": [\n \"topLeft\",\n - \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n - \ ],\n \"description\": \"Describes in which corner of the - video the visual widget will appear.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"id\": - \"InvideoPosition\"\n },\n \"LiveChatMembershipGiftingDetails\": {\n - \ \"type\": \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"properties\": {\n \"giftMembershipsLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the level of the gift - memberships purchased by the user. The Level names are defined by the YouTube - channel offering the Membership. In some situations this field isn't filled.\"\n - \ },\n \"giftMembershipsCount\": {\n \"format\": \"int32\",\n - \ \"type\": \"integer\",\n \"description\": \"The number - of gift memberships purchased by the user.\"\n }\n }\n },\n - \ \"AccessPolicy\": {\n \"type\": \"object\",\n \"id\": \"AccessPolicy\",\n - \ \"description\": \"Rights management policy for YouTube resources.\",\n - \ \"properties\": {\n \"exception\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\"\n },\n \"allowed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"The value of allowed indicates whether the access - to the policy is allowed or denied by default.\"\n }\n }\n },\n - \ \"TestItemTestItemSnippet\": {\n \"properties\": {},\n \"id\": - \"TestItemTestItemSnippet\",\n \"type\": \"object\"\n },\n \"ChannelSectionContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"channels\": - {\n \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"playlists\": {\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"id\": \"ChannelSectionContentDetails\",\n \"description\": \"Details - about a channelsection, including playlists and channels.\"\n },\n \"I18nLanguageSnippet\": - {\n \"properties\": {\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"A short BCP-47 code that uniquely identifies - a language.\"\n },\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the language in the - language itself.\"\n }\n },\n \"description\": \"Basic details - about an i18n language, such as language code and human-readable name.\",\n - \ \"id\": \"I18nLanguageSnippet\",\n \"type\": \"object\"\n },\n - \ \"LocalizedProperty\": {\n \"id\": \"LocalizedProperty\",\n \"properties\": - {\n \"localized\": {\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n },\n \"type\": \"array\"\n },\n - \ \"defaultLanguage\": {\n \"$ref\": \"LanguageTag\",\n \"description\": - \"The language of the default property.\"\n },\n \"default\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SuperChatEventListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"SuperChatEventListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"SuperChatEvent\"\n },\n \"description\": \"A list of Super - Chat purchases that match the request criteria.\",\n \"type\": \"array\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"properties\": {\n \"reason\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The reason that the resource is - recommended to the user.\",\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ],\n \"type\": \"string\"\n },\n \"seedResourceId\": - {\n \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\",\n \"$ref\": - \"ResourceId\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"description\": - \"Information that identifies the recommended resource.\",\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsRecommendation\"\n },\n - \ \"VideoStatistics\": {\n \"properties\": {\n \"commentCount\": - {\n \"description\": \"The number of comments for the video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"likeCount\": {\n \"description\": \"The number of users - who have indicated that they liked the video by giving it a positive rating.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"viewCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of times the video has been viewed.\",\n \"format\": - \"uint64\"\n },\n \"favoriteCount\": {\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"dislikeCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of users who have indicated that they disliked the video by giving - it a negative rating.\",\n \"format\": \"uint64\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"VideoStatistics\",\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\"\n },\n \"LiveChatMessageListResponse\": {\n \"id\": - \"LiveChatMessageListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"items\": {\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatMessageListResponse\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"pollingIntervalMillis\": - {\n \"description\": \"The amount of time the client should wait - before polling again.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"offlineAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the underlying - stream went offline.\"\n }\n }\n },\n \"VideoPlayer\": {\n - \ \"properties\": {\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\",\n - \ \"type\": \"string\"\n },\n \"embedHeight\": {\n \"type\": - \"string\",\n \"format\": \"int64\"\n },\n \"embedWidth\": - {\n \"description\": \"The embed width\",\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Player to be used for a video playback.\",\n \"id\": - \"VideoPlayer\"\n },\n \"VideoSnippet\": {\n \"description\": \"Basic - details about a video, including title, description, uploader, thumbnails - and category.\",\n \"type\": \"object\",\n \"id\": \"VideoSnippet\",\n - \ \"properties\": {\n \"categoryId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube video category associated with the - video.\"\n },\n \"liveBroadcastContent\": {\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The live - broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\"\n },\n \"defaultAudioLanguage\": - {\n \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the video - was uploaded.\",\n \"type\": \"string\"\n },\n \"tags\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of keyword tags associated with the video. - Tags may contain spaces.\",\n \"type\": \"array\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The video's - description. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"title\": {\n \"description\": \"The video's title. @mutable - youtube.videos.insert youtube.videos.update\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that the video was uploaded - to.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the video - belongs to.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the videos's default snippet.\"\n },\n \"localized\": {\n - \ \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\",\n \"$ref\": \"VideoLocalization\"\n }\n }\n - \ },\n \"CdnSettings\": {\n \"type\": \"object\",\n \"id\": - \"CdnSettings\",\n \"properties\": {\n \"frameRate\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The frame rate - of the inbound video data.\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ]\n },\n - \ \"ingestionType\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \" The method or protocol - used to transmit the video stream.\",\n \"type\": \"string\",\n \"enum\": - [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"format\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The format of the - video stream that you are sending to Youtube. \",\n \"type\": \"string\"\n - \ },\n \"resolution\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The resolution of the inbound video data.\",\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ]\n },\n \"ingestionInfo\": {\n \"$ref\": - \"IngestionInfo\",\n \"description\": \"The ingestionInfo object - contains information that YouTube provides that you need to transmit your - RTMP or HTTP stream to YouTube.\"\n }\n },\n \"description\": - \"Brief description of the live stream cdn settings.\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label for this abuse report secondary - reason.\"\n },\n \"id\": {\n \"description\": \"The - ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"CommentSnippet\": {\n \"id\": \"CommentSnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about a comment, such - as its author and text.\",\n \"properties\": {\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"canRate\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the current viewer can rate this comment.\"\n },\n \"updatedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was last updated.\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the comment was originally published.\"\n },\n \"viewerRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"authorChannelUrl\": {\n - \ \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the video the comment - refers to, if any.\"\n },\n \"authorDisplayName\": {\n \"description\": - \"The name of the user who posted the comment.\",\n \"type\": \"string\"\n - \ },\n \"moderationStatus\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by a - moderator.\",\n \"\",\n \"The comment is unfit for display.\"\n - \ ],\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\"\n },\n \"textDisplay\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"textOriginal\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"likeCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total number of likes this comment has received.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"parentId\": {\n \"description\": - \"The unique id of the parent comment, only set for replies.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoGetRatingResponse\": {\n - \ \"id\": \"VideoGetRatingResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#videoGetRatingResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of ratings that match the request criteria.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n }\n - \ },\n \"LiveChatMessageRetractedDetails\": {\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"ContentRating\": {\n \"properties\": {\n \"menaMpaaRating\": - {\n \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ]\n - \ },\n \"fmocRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ],\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\",\n \"type\": - \"string\",\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ]\n },\n \"mibacRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n - \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n - \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Ministero - dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\"\n },\n - \ \"mpaaRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n - \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n - \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n - \ ]\n },\n \"smsaRating\": {\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"All ages\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ]\n },\n \"catvfrRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n - \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n - \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"description\": - \"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.\"\n },\n \"cnaRating\": - {\n \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\"\n },\n - \ \"mocRating\": {\n \"enum\": [\n \"mocUnspecified\",\n - \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n - \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Ministerio de Cultura (Colombia) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ]\n },\n \"anatelRating\": {\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\",\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"chvrsRating\": {\n \"enum\": [\n \"chvrsUnspecified\",\n - \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n - \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n - \ \"chvrsUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Canadian Home Video Rating System - (CHVRS) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"14A\",\n \"18A\",\n - \ \"R\",\n \"E\",\n \"\"\n ]\n },\n - \ \"ilfilmRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Israel.\",\n \"enum\": - [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n - \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ]\n },\n \"cbfcRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"U/A\",\n \"U/A 7+\",\n \"U/A - 13+\",\n \"U/A 16+\",\n \"A\",\n \"S\",\n - \ \"\"\n ],\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\"\n - \ },\n \"mpaatRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"GB\",\n \"RB\"\n ],\n - \ \"description\": \"The rating system for trailer, DVD, and Ad in - the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n - \ },\n \"ifcoRating\": {\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's Irish Film Classification - Office (IFCO - Ireland) rating. See the IFCO website for more information.\",\n - \ \"type\": \"string\"\n },\n \"eirinRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ],\n \"enum\": - [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\"\n - \ },\n \"nfrcRating\": {\n \"enum\": [\n \"nfrcUnspecified\",\n - \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n - \ \"nfrcX\",\n \"nfrcUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Bulgarian National Film Center.\"\n },\n \"acbRating\": - {\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ]\n },\n \"fskRating\": {\n \"enum\": [\n - \ \"fskUnspecified\",\n \"fsk0\",\n \"fsk6\",\n - \ \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n \"fskUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle - der Filmwirtschaft (FSK - Germany) rating.\"\n },\n \"tvpgRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ],\n \"description\": \"The video's TV Parental Guidelines - (TVPG) rating.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"tvpgUnspecified\",\n \"tvpgY\",\n \"tvpgY7\",\n - \ \"tvpgY7Fv\",\n \"tvpgG\",\n \"tvpgPg\",\n - \ \"pg14\",\n \"tvpgMa\",\n \"tvpgUnrated\"\n - \ ]\n },\n \"resorteviolenciaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"description\": \"The video's rating in Venezuela.\"\n - \ },\n \"medietilsynetRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n - \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Medietilsynet, the Norwegian Media Authority.\",\n - \ \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"skfilmRating\": {\n - \ \"description\": \"The video's rating in Slovakia.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ],\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ]\n },\n - \ \"mdaRating\": {\n \"enum\": [\n \"mdaUnspecified\",\n - \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n - \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n - \ \"mdaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\"\n },\n \"egfilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Egypt.\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ]\n },\n \"cncRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ],\n \"description\": \"Rating system in France - Commission - de classification cinematographique\",\n \"enumDescriptions\": [\n - \ \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ]\n },\n \"cicfRating\": {\n \"enum\": - [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Commission de Contr\xF4le des Films (Belgium).\",\n \"type\": - \"string\"\n },\n \"cceRating\": {\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ]\n },\n \"pefilmRating\": {\n \"description\": - \"The video's rating in Peru.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ]\n },\n \"eefilmRating\": {\n \"enum\": - [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n \"eefilmL\",\n - \ \"eefilmMs6\",\n \"eefilmK6\",\n \"eefilmMs12\",\n - \ \"eefilmK12\",\n \"eefilmK14\",\n \"eefilmK16\",\n - \ \"eefilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Estonia.\"\n - \ },\n \"catvRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ],\n \"description\": \"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.\"\n - \ },\n \"kijkwijzerRating\": {\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\"\n },\n \"nmcRating\": - {\n \"description\": \"The National Media Council ratings system - for United Arab Emirates.\",\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"fpbRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\"\n },\n \"cscfRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"description\": \"The video's rating from Luxembourg's - Commission de surveillance de la classification des films (CSCF).\"\n },\n - \ \"ytRating\": {\n \"type\": \"string\",\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ]\n - \ },\n \"mcstRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating system for Vietnam - MCST\",\n \"enum\": [\n - \ \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ]\n - \ },\n \"smaisRating\": {\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Iceland.\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ]\n },\n \"rtcRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n - \ \"D\",\n \"\"\n ],\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\",\n \"enum\": [\n \"rtcUnspecified\",\n - \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n - \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n - \ ]\n },\n \"rcnofRating\": {\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\",\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"moctwRating\": - {\n \"description\": \"The video's rating from Taiwan's Ministry - of Culture (\u6587\u5316\u90E8).\",\n \"enum\": [\n \"moctwUnspecified\",\n - \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n - \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n - \ \"moctwR15\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ],\n \"type\": \"string\"\n },\n \"russiaRating\": - {\n \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"description\": \"The video's National Film Registry of the Russian - Federation (MKRF - Russia) rating.\",\n \"type\": \"string\"\n },\n - \ \"incaaRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ]\n },\n \"rteRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Ireland's - Raidi\xF3 Teilif\xEDs \xC9ireann.\"\n },\n \"mtrcbRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from the Movie and Television Review and Classification Board (Philippines).\",\n - \ \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n - \ \"X\",\n \"\"\n ]\n },\n \"czfilmRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"12\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in the Czech Republic.\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ]\n },\n - \ \"kfcbRating\": {\n \"description\": \"The video's rating - from the Kenya Film Classification Board.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n - \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n - \ \"kfcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"lsfRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Indonesia's Lembaga Sensor Film.\",\n \"enum\": [\n \"lsfUnspecified\",\n - \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n - \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n - \ \"lsfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ]\n },\n \"fcbmRating\": - {\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n - \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n - \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n - \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Malaysia's - Film Censorship Board.\"\n },\n \"chfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Switzerland.\"\n - \ },\n \"djctqRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, - Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ]\n },\n \"fpbRatingReasons\": - {\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"description\": - \"Reasons that explain why the video received its FPB (South Africa) rating.\",\n - \ \"type\": \"array\"\n },\n \"bfvcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ],\n \"description\": \"The video's rating from Thailand's - Board of Film and Video Censors.\"\n },\n \"mccaaRating\": {\n - \ \"description\": \"The video's rating from Malta's Film Age-Classification - Board.\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ]\n },\n \"ecbmctRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"description\": \"Rating system in Turkey - Evaluation - and Classification Board of the Ministry of Culture and Tourism\"\n },\n - \ \"grfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n - \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Greece.\",\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ]\n },\n - \ \"csaRating\": {\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from France's - Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\"\n - \ },\n \"nbcplRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Poland.\",\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"nbcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12+\",\n \"15+\",\n - \ \"18+\",\n \"18+R\",\n \"PU\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\"\n - \ },\n \"mekuRating\": {\n \"description\": \"The video's - rating from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual - Institute).\",\n \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"agcomRating\": - {\n \"description\": \"The video's rating from Italy's Autorit\xE0 - per le Garanzie nelle Comunicazioni (AGCOM).\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"agcomUnspecified\",\n \"agcomT\",\n \"agcomVm14\",\n - \ \"agcomVm18\",\n \"agcomUnrated\"\n ]\n },\n - \ \"bbfcRating\": {\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ],\n - \ \"description\": \"The video's British Board of Film Classification - (BBFC) rating.\"\n },\n \"nkclvRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\",\n - \ \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n - \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n - \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ]\n - \ },\n \"nfvcbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ]\n },\n \"icaaRating\": - {\n \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"enum\": - [\n \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n - \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n - \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ]\n },\n \"kmrbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enum\": [\n - \ \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ]\n },\n \"bmukkRating\": - {\n \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ],\n \"description\": \"The - video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ]\n - \ },\n \"djctqRatingReasons\": {\n \"type\": \"array\",\n - \ \"description\": \"Reasons that explain why the video received its - DJCQT (Brazil) rating.\",\n \"items\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ]\n }\n },\n \"fcoRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Hong Kong's Office for Film, Newspaper and Article Administration.\",\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ]\n - \ },\n \"oflcRating\": {\n \"description\": \"The video's - Office of Film and Literature Classification (OFLC - New Zealand) rating.\",\n - \ \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"type\": \"string\"\n },\n \"mccypRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"7\",\n \"11\",\n \"15\",\n - \ \"\"\n ],\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\"\n },\n \"cccRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Todo - espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n - \ \"14+\",\n \"18+\",\n \"18+ - contenido - excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\"\n - \ }\n },\n \"description\": \"Ratings schemes. The country-specific - ratings are mostly for movies and shows. LINT.IfChange\",\n \"id\": \"ContentRating\",\n - \ \"type\": \"object\"\n },\n \"ChannelSectionTargeting\": {\n \"type\": - \"object\",\n \"properties\": {\n \"countries\": {\n \"description\": - \"The country the channel section is targeting.\",\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"languages\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The language the channel - section is targeting.\",\n \"type\": \"array\"\n },\n \"regions\": - {\n \"description\": \"The region the channel section is targeting.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"id\": \"ChannelSectionTargeting\",\n - \ \"description\": \"ChannelSection targeting setting.\"\n },\n \"PlaylistLocalization\": - {\n \"description\": \"Playlist localization setting\",\n \"properties\": - {\n \"description\": {\n \"description\": \"The localized - strings for playlist's description.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for playlist's title.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"PlaylistLocalization\"\n },\n \"CommentListResponse\": - {\n \"type\": \"object\",\n \"id\": \"CommentListResponse\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"items\": {\n - \ \"description\": \"A list of comments that match the request criteria.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Comment\"\n }\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"default\": - \"youtube#commentListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ }\n }\n },\n \"PlaylistPlayer\": {\n \"properties\": - {\n \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"PlaylistPlayer\",\n \"type\": - \"object\"\n },\n \"LiveChatNewSponsorDetails\": {\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"properties\": {\n \"isUpgrade\": {\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\",\n \"type\": - \"boolean\"\n },\n \"memberLevelName\": {\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetails\": {\n \"properties\": - {\n \"social\": {\n \"$ref\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"The social object contains details about a social - network post. This property is only present if the snippet.type is social.\"\n - \ },\n \"promotedItem\": {\n \"description\": \"The - promotedItem object contains details about a resource which is being promoted. - This property is only present if the snippet.type is promotedItem.\",\n \"$ref\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"like\": {\n - \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsLike\"\n - \ },\n \"upload\": {\n \"$ref\": \"ActivityContentDetailsUpload\",\n - \ \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\"\n - \ },\n \"subscription\": {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n - \ \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\"\n },\n \"playlistItem\": - {\n \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"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.\"\n },\n \"channelItem\": {\n - \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\"\n },\n \"bulletin\": {\n \"description\": - \"The bulletin object contains details about a channel bulletin post. This - object is only present if the snippet.type is bulletin.\",\n \"$ref\": - \"ActivityContentDetailsBulletin\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Details about the content of an activity: the video - that was shared, the channel that was subscribed to, etc.\",\n \"id\": - \"ActivityContentDetails\"\n },\n \"Caption\": {\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#caption\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"CaptionSnippet\",\n \"description\": \"The snippet object contains - basic details about the caption.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the caption track.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n }\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"Caption\",\n \"description\": \"A *caption* resource represents a YouTube - caption track. A caption track is associated with exactly one YouTube video.\",\n - \ \"type\": \"object\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"properties\": {\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"Thumbnails for this subscriber.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the subscriber.\"\n },\n \"description\": {\n - \ \"description\": \"The description of the subscriber.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel ID of the subscriber.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"Basic details about a subscription's subscriber including - title, description, channel ID and thumbnails.\"\n },\n \"ActivityContentDetailsLike\": - {\n \"type\": \"object\",\n \"description\": \"Information about - a resource that received a positive (like) rating.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the rated resource.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsLike\"\n - \ },\n \"VideoAbuseReport\": {\n \"properties\": {\n \"comments\": - {\n \"type\": \"string\",\n \"description\": \"Additional - comments regarding the abuse report.\"\n },\n \"reasonId\": - {\n \"type\": \"string\",\n \"description\": \"The high-level, - or primary, reason that the content is abusive. The value is an abuse report - reason ID.\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n },\n \"language\": {\n \"type\": \"string\",\n - \ \"description\": \"The language that the content was viewed in.\"\n - \ },\n \"secondaryReasonId\": {\n \"type\": \"string\",\n - \ \"description\": \"The specific, or secondary, reason that this - content is abusive (if available). The value is an abuse report reason ID - that is a valid secondary reason for the primary reason.\"\n }\n },\n - \ \"id\": \"VideoAbuseReport\",\n \"type\": \"object\"\n },\n - \ \"VideoStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"The video's - privacy status.\"\n },\n \"embeddable\": {\n \"description\": - \"This value indicates if the video can be embedded on another website. @mutable - youtube.videos.insert youtube.videos.update\",\n \"type\": \"boolean\"\n - \ },\n \"uploadStatus\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ],\n \"description\": \"The status of the uploaded video.\",\n - \ \"enumDescriptions\": [\n \"Video has been uploaded but - not processed yet.\",\n \"Video has been successfully processed.\",\n - \ \"Processing has failed. See FailureReason.\",\n \"Video - has been rejected. See RejectionReason.\",\n \"Video has been deleted.\"\n - \ ]\n },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"failureReason\": {\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ],\n \"type\": \"string\",\n \"description\": - \"This value explains why a video failed to upload. This property is only - present if the uploadStatus property indicates that the upload failed.\",\n - \ \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"rejectionReason\": - {\n \"description\": \"This value explains why YouTube rejected an - uploaded video. This property is only present if the uploadStatus property - indicates that the upload was rejected.\",\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"type\": \"string\"\n },\n \"license\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\",\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ]\n - \ },\n \"publishAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the video is scheduled to publish. It can be set only if the privacy - status of the video is private..\"\n },\n \"publicStatsViewable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n - \ }\n },\n \"description\": \"Basic details about a video - category, such as its localized title. Next Id: 18\",\n \"id\": \"VideoStatus\"\n - \ },\n \"ThirdPartyLinkSnippet\": {\n \"type\": \"object\",\n \"id\": - \"ThirdPartyLinkSnippet\",\n \"description\": \"Basic information about - a third party account link, including its type and type-specific information.\",\n - \ \"properties\": {\n \"channelToStoreLink\": {\n \"$ref\": - \"ChannelToStoreLinkDetails\",\n \"description\": \"Information specific - to a link between a channel and a store on a merchandising platform.\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"description\": - \"Type of the link named after the entities that are being linked.\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ]\n }\n }\n },\n \"PlaylistItemSnippet\": - {\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The item's title.\"\n },\n \"playlistId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist item. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"position\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the playlist item belongs to.\"\n },\n \"description\": {\n - \ \"type\": \"string\",\n \"description\": \"The item's description.\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the user that added the item to the - playlist.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"description\": \"The id object contains information that can - be used to uniquely identify the resource that is included in the playlist - as the playlist item.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the item - was added to the playlist.\"\n },\n \"videoOwnerChannelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel this video belongs to.\"\n },\n \"videoOwnerChannelId\": - {\n \"description\": \"Channel id for the channel this video belongs - to.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about a playlist, including - title, description and thumbnails. Basic details of a YouTube Playlist item - provided by the author. Next ID: 15\",\n \"id\": \"PlaylistItemSnippet\"\n - \ },\n \"LiveChatBanSnippet\": {\n \"properties\": {\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": - {\n \"description\": \"The duration of a ban, only filled if the - ban has type TEMPORARY.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"liveChatId\": {\n \"description\": - \"The chat this ban is pertinent to.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"An - invalid ban type.\",\n \"A permanent ban.\",\n \"A temporary - ban.\"\n ],\n \"type\": \"string\",\n \"description\": - \"The type of ban.\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ]\n }\n - \ },\n \"id\": \"LiveChatBanSnippet\",\n \"type\": \"object\"\n - \ },\n \"CaptionSnippet\": {\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video associated with the caption track. @mutable youtube.captions.insert\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"isLarge\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\"\n },\n \"failureReason\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"unknownFormat\",\n - \ \"unsupportedFormat\",\n \"processingFailed\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The reason that - YouTube failed to process the caption track. This property is only present - if the state property's value is failed.\"\n },\n \"status\": - {\n \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ],\n \"description\": \"The caption - track's status.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"trackKind\": {\n \"description\": \"The caption track's - type.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ]\n },\n \"isAutoSynced\": {\n \"description\": - \"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.\",\n \"type\": \"boolean\"\n },\n \"isCC\": - {\n \"description\": \"Indicates whether the track contains closed - captions for the deaf and hard of hearing. The default value is false.\",\n - \ \"type\": \"boolean\"\n },\n \"isEasyReader\": {\n - \ \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n \"audioTrackType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of audio track associated with the caption - track.\",\n \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ]\n },\n - \ \"name\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The name of the caption track. The name is intended - to be visible to the user as an option during playback.\",\n \"type\": - \"string\"\n },\n \"language\": {\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\",\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n }\n - \ },\n \"isDraft\": {\n \"description\": \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n },\n - \ \"lastUpdated\": {\n \"description\": \"The date and time - when the caption track was last updated.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"CaptionSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a caption track, such as its language and name.\"\n },\n \"PlaylistItemListResponse\": - {\n \"id\": \"PlaylistItemListResponse\",\n \"properties\": {\n - \ \"kind\": {\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"description\": \"A list of playlist items that match - the request criteria.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoCategoryListResponse\": - {\n \"id\": \"VideoCategoryListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoCategoryListResponse\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\",\n \"items\": {\n \"$ref\": - \"VideoCategory\"\n }\n }\n }\n },\n \"I18nLanguage\": - {\n \"type\": \"object\",\n \"description\": \"An *i18nLanguage* - resource identifies a UI language currently supported by YouTube.\",\n \"id\": - \"I18nLanguage\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#i18nLanguage\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the i18n language.\"\n },\n \"snippet\": - {\n \"$ref\": \"I18nLanguageSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\"\n }\n }\n },\n - \ \"ChannelTopicDetails\": {\n \"properties\": {\n \"topicIds\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of Freebase - topic IDs associated with the channel. You can retrieve information about - each topic using the Freebase Topic API.\"\n },\n \"topicCategories\": - {\n \"description\": \"A list of Wikipedia URLs that describe the - channel's content.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"id\": - \"ChannelTopicDetails\",\n \"type\": \"object\",\n \"description\": - \"Freebase topic information related to the channel.\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageAuthorDetails\",\n - \ \"properties\": {\n \"profileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channels's avatar URL.\"\n },\n - \ \"isChatSponsor\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is a sponsor of the live chat.\"\n },\n \"channelUrl\": - {\n \"description\": \"The channel's URL.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel ID.\"\n },\n \"isChatOwner\": - {\n \"description\": \"Whether the author is the owner of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"displayName\": - {\n \"description\": \"The channel's display name.\",\n \"type\": - \"string\"\n },\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n },\n \"isChatModerator\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a moderator - of the live chat.\"\n }\n }\n },\n \"VideoListResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"items\": {\n \"items\": {\n - \ \"$ref\": \"Video\"\n },\n \"type\": \"array\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoListResponse\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": - \"VideoListResponse\",\n \"type\": \"object\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"deletedMessageId\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"VideoAbuseReportReasonSnippet\": {\n \"description\": \"Basic - details about a video category, such as its localized title.\",\n \"id\": - \"VideoAbuseReportReasonSnippet\",\n \"properties\": {\n \"secondaryReasons\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportSecondaryReason\"\n },\n \"description\": - \"The secondary reasons associated with this reason, if any are available. - (There might be 0 or more.)\"\n },\n \"label\": {\n \"type\": - \"string\",\n \"description\": \"The localized label belonging to - this abuse report reason.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoFileDetailsAudioStream\": {\n \"properties\": {\n - \ \"bitrateBps\": {\n \"description\": \"The audio stream's - bitrate, in bits per second.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"codec\": {\n \"type\": \"string\",\n - \ \"description\": \"The audio codec that the stream uses.\"\n },\n - \ \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"channelCount\": {\n \"format\": - \"uint32\",\n \"description\": \"The number of audio channels that - the stream contains.\",\n \"type\": \"integer\"\n }\n },\n - \ \"id\": \"VideoFileDetailsAudioStream\",\n \"description\": \"Information - about an audio stream.\",\n \"type\": \"object\"\n },\n \"VideoRecordingDetails\": - {\n \"description\": \"Recording information associated with the video.\",\n - \ \"type\": \"object\",\n \"id\": \"VideoRecordingDetails\",\n \"properties\": - {\n \"location\": {\n \"$ref\": \"GeoPoint\",\n \"description\": - \"The geolocation information associated with the video.\"\n },\n \"locationDescription\": - {\n \"type\": \"string\",\n \"description\": \"The text - description of the location where the video was recorded.\"\n },\n - \ \"recordingDate\": {\n \"description\": \"The date and time - when the video was recorded.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n }\n }\n },\n \"Channel\": {\n \"description\": - \"A *channel* resource contains information about a YouTube channel.\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"default\": \"youtube#channel\",\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"$ref\": \"ChannelStatus\",\n - \ \"description\": \"The status object encapsulates information about - the privacy status of the channel.\"\n },\n \"topicDetails\": - {\n \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\",\n \"$ref\": - \"ChannelTopicDetails\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel, such as its - title, description, and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n - \ },\n \"auditDetails\": {\n \"description\": \"The - auditionDetails object encapsulates channel data that is relevant for YouTube - Partners during the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n - \ },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel.\",\n \"type\": \"string\"\n - \ },\n \"contentOwnerDetails\": {\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"conversionPings\": {\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n - \ },\n \"brandingSettings\": {\n \"$ref\": \"ChannelBrandingSettings\",\n - \ \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object encapsulates information - about the channel's content.\",\n \"$ref\": \"ChannelContentDetails\"\n - \ }\n },\n \"id\": \"Channel\",\n \"type\": \"object\"\n - \ },\n \"ResourceId\": {\n \"type\": \"object\",\n \"properties\": - {\n \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a channel. - This property is only present if the resourceId.kind value is youtube#channel.\",\n - \ \"type\": \"string\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"The type of the API resource.\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ResourceId\",\n \"description\": \"A resource id is a - generic reference that points to another YouTube resource.\"\n },\n \"VideoMonetizationDetails\": - {\n \"description\": \"Details about monetization of a YouTube Video.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"access\": - {\n \"description\": \"The value of access indicates whether the - video can be monetized or not.\",\n \"$ref\": \"AccessPolicy\"\n - \ }\n },\n \"id\": \"VideoMonetizationDetails\"\n },\n - \ \"PageInfo\": {\n \"description\": \"Paging details for lists of - resources, including total number of items available and number of resources - returned in a single page.\",\n \"type\": \"object\",\n \"properties\": - {\n \"resultsPerPage\": {\n \"description\": \"The number - of results included in the API response.\",\n \"format\": \"int32\",\n - \ \"type\": \"integer\"\n },\n \"totalResults\": {\n - \ \"format\": \"int32\",\n \"description\": \"The total number - of results in the result set.\",\n \"type\": \"integer\"\n }\n - \ },\n \"id\": \"PageInfo\"\n },\n \"LiveChatMessageSnippet\": - {\n \"properties\": {\n \"membershipGiftingDetails\": {\n \"$ref\": - \"LiveChatMembershipGiftingDetails\",\n \"description\": \"Details - about the Membership Gifting event, this is only set if the type is 'membershipGiftingEvent'.\"\n - \ },\n \"type\": {\n \"enum\": [\n \"invalidType\",\n - \ \"textMessageEvent\",\n \"tombstone\",\n \"fanFundingEvent\",\n - \ \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"newSponsorDetails\": {\n \"description\": \"Details - about the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. - Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n - \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n },\n \"textMessageDetails\": - {\n \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\",\n \"$ref\": \"LiveChatTextMessageDetails\"\n - \ },\n \"authorChannelId\": {\n \"description\": \"The - ID of the user that authored this message, this field is not always filled. - textMessageEvent - the user that wrote the message fanFundingEvent - the user - that funded the broadcast newSponsorEvent - the user that just became a sponsor - memberMilestoneChatEvent - the member that sent the message membershipGiftingEvent - - the user that made the purchase giftMembershipReceivedEvent - the user that - received the gift membership messageDeletedEvent - the moderator that took - the action messageRetractedEvent - the author that retracted their message - userBannedEvent - the moderator that took the action superChatEvent - the - user that made the purchase superStickerEvent - the user that made the purchase\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the message was orignally published.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"superStickerDetails\": - {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"fanFundingEventDetails\": {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n - \ \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\"\n },\n \"displayMessage\": - {\n \"type\": \"string\",\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"superChatDetails\": {\n \"$ref\": - \"LiveChatSuperChatDetails\",\n \"description\": \"Details about - the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n - \ \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"giftMembershipReceivedDetails\": {\n \"$ref\": - \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": \"Details - about the Gift Membership Received event, this is only set if the type is - 'giftMembershipReceivedEvent'.\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"hasDisplayContent\": - {\n \"description\": \"Whether the message has display content that - should be displayed to users.\",\n \"type\": \"boolean\"\n }\n - \ },\n \"id\": \"LiveChatMessageSnippet\",\n \"description\": - \"Next ID: 33\",\n \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": - {\n \"id\": \"LiveBroadcastStatus\",\n \"type\": \"object\",\n \"properties\": - {\n \"madeForKids\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the broadcast is made for kids or not, decided by YouTube instead - of the creator. This field is read only.\"\n },\n \"privacyStatus\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"type\": \"string\"\n },\n \"lifeCycleStatus\": - {\n \"description\": \"The broadcast's status. The status can be - updated using the API's liveBroadcasts.transition method.\",\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"type\": \"string\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\",\n \"type\": - \"boolean\"\n },\n \"liveBroadcastPriority\": {\n \"type\": - \"string\",\n \"description\": \"Priority of the live broadcast event - (internal state).\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Low priority - broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ]\n },\n \"recordingStatus\": {\n \"enum\": - [\n \"liveBroadcastRecordingStatusUnspecified\",\n \"notRecording\",\n - \ \"recording\",\n \"recorded\"\n ],\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The broadcast's recording status.\"\n }\n },\n \"description\": - \"Live broadcast state.\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"properties\": {\n \"partsProcessed\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of parts of the video that YouTube has already processed. You can estimate - the percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\"\n },\n - \ \"partsTotal\": {\n \"description\": \"An estimate of the - total number of parts that need to be processed for the video. The number - may be updated with more precise estimates while YouTube processes the video.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"timeLeftMs\": {\n \"format\": \"uint64\",\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"Video processing progress and completion time estimate.\",\n \"type\": - \"object\"\n },\n \"WatchSettings\": {\n \"properties\": {\n \"featuredPlaylistId\": - {\n \"description\": \"An ID that uniquely identifies a playlist - that displays next to the video player.\",\n \"type\": \"string\"\n - \ },\n \"backgroundColor\": {\n \"description\": \"The - text color for the video watch page's branded area.\",\n \"type\": - \"string\"\n },\n \"textColor\": {\n \"type\": \"string\",\n - \ \"description\": \"The background color for the video watch page's - branded area.\"\n }\n },\n \"description\": \"Branding properties - for the watch. All deprecated.\",\n \"type\": \"object\",\n \"id\": - \"WatchSettings\"\n },\n \"ChannelStatistics\": {\n \"type\": \"object\",\n - \ \"description\": \"Statistics about a channel: number of subscribers, - number of videos in the channel, etc.\",\n \"properties\": {\n \"videoCount\": - {\n \"description\": \"The number of videos uploaded to the channel.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"viewCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of times the channel has been viewed.\",\n \"format\": - \"uint64\"\n },\n \"subscriberCount\": {\n \"description\": - \"The number of subscribers that the channel has.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"hiddenSubscriberCount\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the number of subscribers is shown for this user.\"\n },\n \"commentCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of comments for the channel.\"\n }\n },\n \"id\": - \"ChannelStatistics\"\n },\n \"TokenPagination\": {\n \"description\": - \"Stub token pagination template to suppress results.\",\n \"properties\": - {},\n \"type\": \"object\",\n \"id\": \"TokenPagination\"\n },\n - \ \"ChannelConversionPings\": {\n \"properties\": {\n \"pings\": - {\n \"description\": \"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.\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n },\n \"type\": \"array\"\n }\n - \ },\n \"description\": \"The conversionPings object encapsulates - information about conversion pings that need to be respected by the channel.\",\n - \ \"type\": \"object\",\n \"id\": \"ChannelConversionPings\"\n },\n - \ \"ActivityContentDetailsSocial\": {\n \"id\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"Details about a social network post.\",\n \"properties\": - {\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"An image of the post's author.\"\n },\n \"referenceUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL of - the social network post.\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"author\": {\n \"description\": \"The author - of the social network post.\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"description\": \"The name of the social network.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ]\n }\n },\n \"type\": - \"object\"\n },\n \"CommentThreadReplies\": {\n \"description\": - \"Comments written in (direct or indirect) reply to the top level comment.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"comments\": - {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"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.\",\n \"type\": - \"array\"\n }\n },\n \"id\": \"CommentThreadReplies\"\n },\n - \ \"RelatedEntity\": {\n \"id\": \"RelatedEntity\",\n \"type\": - \"object\",\n \"properties\": {\n \"entity\": {\n \"$ref\": - \"Entity\"\n }\n }\n },\n \"LiveBroadcastContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"properties\": {\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n },\n \"closedCaptionsType\": {\n \"enum\": - [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"mesh\": {\n \"description\": \"The - mesh for projecting the video if projection is mesh. The mesh value must be - a UTF-8 string containing the base-64 encoding of 3D mesh data that follows - the Spherical Video V2 RFC specification for an mshp box, excluding the box - size and type but including the following four reserved zero bytes for the - version and flags.\",\n \"format\": \"byte\",\n \"type\": - \"string\"\n },\n \"enableAutoStart\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - auto start is enabled for this broadcast. The default value for this property - is false. This setting can only be used by Events.\"\n },\n \"recordFromStart\": - {\n \"type\": \"boolean\",\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\"\n },\n \"projection\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ]\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\"\n },\n \"enableContentEncryption\": - {\n \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n - \ },\n \"boundStreamId\": {\n \"description\": \"This - value uniquely identifies the live stream bound to the broadcast.\",\n \"type\": - \"string\"\n },\n \"enableAutoStop\": {\n \"description\": - \"This setting indicates whether auto stop is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\",\n \"type\": \"boolean\"\n },\n \"latencyPreference\": - {\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"description\": \"If both this and enable_low_latency - are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\",\n \"type\": \"string\"\n },\n - \ \"stereoLayout\": {\n \"description\": \"The 3D stereo layout - of this broadcast. This defaults to mono.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ]\n },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"enableLowLatency\": - {\n \"description\": \"Indicates whether this broadcast has low latency - enabled.\",\n \"type\": \"boolean\"\n },\n \"startWithSlate\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast should automatically begin with an in-stream - slate when you update the broadcast's status to live. After updating the status, - you then need to send a liveCuepoints.insert request that sets the cuepoint's - eventState to end to remove the in-stream slate and make your broadcast stream - visible to viewers.\"\n },\n \"enableDvr\": {\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n - \ },\n \"monitorStream\": {\n \"$ref\": \"MonitorStreamInfo\",\n - \ \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\"\n }\n },\n - \ \"description\": \"Detailed settings of a broadcast.\"\n },\n \"VideoCategory\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n },\n \"kind\": {\n \"default\": \"youtube#videoCategory\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategory\\\".\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video category.\"\n }\n - \ },\n \"id\": \"VideoCategory\",\n \"type\": \"object\",\n - \ \"description\": \"A *videoCategory* resource identifies a category - that has been or could be associated with uploaded videos.\"\n },\n \"CaptionListResponse\": - {\n \"type\": \"object\",\n \"id\": \"CaptionListResponse\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Caption\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of captions that match the request criteria.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n }\n - \ },\n \"PlaylistSnippet\": {\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails.\",\n \"type\": - \"object\",\n \"properties\": {\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the playlist. 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.\"\n },\n \"channelTitle\": {\n \"description\": - \"The channel title of the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the playlist.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The playlist's - description.\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the playlist's default title and description.\",\n \"type\": - \"string\"\n },\n \"tags\": {\n \"description\": \"Keyword - tags associated with the playlist.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlists.insert\",\n \"youtube.playlists.update\"\n - \ ]\n },\n \"description\": \"The playlist's title.\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the playlist was created.\"\n },\n \"thumbnailVideoId\": - {\n \"type\": \"string\",\n \"description\": \"Note: if - the playlist has a custom thumbnail, this field will not be populated. The - video id selected by the user that will be used as the thumbnail of this playlist. - This field defaults to the first publicly viewable video in the playlist, - if: 1. The user has never selected a video to be the thumbnail of the playlist. - 2. The user selects a video to be the thumbnail, and then removes that video - from the playlist. 3. The user selects a non-owned video to be the thumbnail, - but that video becomes private, or gets deleted.\"\n },\n \"localized\": - {\n \"$ref\": \"PlaylistLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n }\n },\n \"id\": - \"PlaylistSnippet\"\n },\n \"LiveBroadcastStatistics\": {\n \"properties\": - {\n \"concurrentViewers\": {\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"totalChatCount\": {\n - \ \"description\": \"The total number of live chat messages currently - on the broadcast. The property and its value will be present if the broadcast - is public, has the live chat feature enabled, and has at least one message. - Note that this field will not be filled after the broadcast ends. So this - property would not identify the number of chat messages for an archived video - of a completed live broadcast.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveBroadcastStatistics\",\n \"description\": \"Statistics about the - live broadcast. These represent a snapshot of the values at the time of the - request. Statistics are only returned for live broadcasts.\"\n },\n \"LiveStreamStatus\": - {\n \"properties\": {\n \"streamStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"created\",\n \"ready\",\n - \ \"active\",\n \"inactive\",\n \"error\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"healthStatus\": {\n \"description\": \"The health status - of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Brief description - of the live stream status.\",\n \"id\": \"LiveStreamStatus\"\n },\n - \ \"MembershipsLevelListResponse\": {\n \"type\": \"object\",\n \"id\": - \"MembershipsLevelListResponse\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevelListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"MembershipsLevel\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of pricing levels offered by a creator to the fans.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n }\n },\n \"CommentThread\": - {\n \"id\": \"CommentThread\",\n \"type\": \"object\",\n \"description\": - \"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.\",\n \"properties\": {\n \"replies\": {\n - \ \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\",\n \"$ref\": - \"CommentThreadReplies\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThread\\\".\",\n \"default\": - \"youtube#commentThread\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"CommentThreadSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\"\n }\n }\n },\n \"Activity\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"contentDetails\": - {\n \"$ref\": \"ActivityContentDetails\",\n \"description\": - \"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.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the activity, including the activity's type and group - ID.\",\n \"$ref\": \"ActivitySnippet\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the activity.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"default\": \"youtube#activity\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource\"\n }\n },\n \"id\": \"Activity\",\n \"description\": - \"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.\"\n - \ },\n \"LiveStreamConfigurationIssue\": {\n \"id\": \"LiveStreamConfigurationIssue\",\n - \ \"properties\": {\n \"severity\": {\n \"enum\": [\n - \ \"info\",\n \"warning\",\n \"error\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"How severe this issue is to the stream.\"\n },\n \"reason\": - {\n \"description\": \"The short-form reason for this issue.\",\n - \ \"type\": \"string\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ],\n \"description\": - \"The kind of error happening.\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"description\": \"The long-form description - of the issue and how to resolve it.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"AbuseType\": {\n \"type\": - \"object\",\n \"id\": \"AbuseType\",\n \"properties\": {\n \"id\": - {\n \"type\": \"string\"\n }\n }\n },\n \"ImageSettings\": - {\n \"description\": \"Branding properties for images associated with - the channel.\",\n \"type\": \"object\",\n \"id\": \"ImageSettings\",\n - \ \"properties\": {\n \"bannerTvMediumImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. TV size medium resolution - (1280x720).\"\n },\n \"bannerTabletExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size extra - high resolution (2560x424).\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size (640x175).\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\",\n - \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTvImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"smallBrandedBannerImageUrl\": {\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerMobileHdImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1280x360).\"\n },\n \"bannerTvHighImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"trackingImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"bannerTvLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size low resolution (854x480).\"\n },\n \"bannerImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n },\n \"backgroundImageUrl\": {\n - \ \"description\": \"The URL for the background image shown on the - video watch page. The image should be 1200px by 615px, with a maximum file - size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerTabletImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. Tablet size (1707x283).\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"SuperChatEventSnippet\": - {\n \"properties\": {\n \"messageType\": {\n \"type\": - \"integer\",\n \"description\": \"The tier for the paid message, - which is based on the amount of money spent to purchase the message.\",\n - \ \"format\": \"uint32\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n },\n \"commentText\": {\n \"type\": - \"string\",\n \"description\": \"The text contents of the comment - left by the user.\"\n },\n \"supporterDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - supporter.\"\n },\n \"channelId\": {\n \"description\": - \"Channel id where the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"displayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the purchase - amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the - given language.\"\n },\n \"isSuperStickerEvent\": {\n \"description\": - \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n - \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\"\n },\n \"amountMicros\": - {\n \"format\": \"uint64\",\n \"description\": \"The purchase - amount, in micros of the purchase currency. e.g., 1 is represented as 1000000.\",\n - \ \"type\": \"string\"\n },\n \"createdAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the event - occurred.\",\n \"format\": \"date-time\"\n }\n },\n \"id\": - \"SuperChatEventSnippet\",\n \"type\": \"object\"\n },\n \"VideoSuggestions\": - {\n \"description\": \"Specifies suggestions on how to improve video - content, including encoding hints, tag suggestions, and editor suggestions.\",\n - \ \"type\": \"object\",\n \"id\": \"VideoSuggestions\",\n \"properties\": - {\n \"processingWarnings\": {\n \"description\": \"A list - of reasons why YouTube may have difficulty transcoding the uploaded video - or that might result in an erroneous transcoding. These warnings are generated - before YouTube actually processes the uploaded video file. In addition, they - identify issues that are unlikely to cause the video processing to fail but - that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"enum\": [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ],\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"processingHints\": {\n \"items\": - {\n \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"The MP4 file is not streamable, - this will slow down the processing. MOOV atom was not found at the beginning - of the file.\",\n \"Probably a better quality version of the - video exists. The video has wide screen aspect ratio, but is not an HD video.\",\n - \ \"Uploaded video is spherical video.\",\n \"Uploaded - video has spatial audio.\",\n \"Uploaded video is VR video.\",\n - \ \"Uploaded video is HDR video.\"\n ]\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of suggestions - that may improve YouTube's ability to process the video.\"\n },\n \"tagSuggestions\": - {\n \"description\": \"A list of keyword tags that could be added - to the video's metadata to increase the likelihood that users will locate - your video when searching or browsing on YouTube.\",\n \"items\": - {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n },\n - \ \"type\": \"array\"\n },\n \"processingErrors\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"audioFile\",\n \"imageFile\",\n - \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n - \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n },\n \"description\": \"A list of errors - that will prevent YouTube from successfully processing the uploaded video - video. These errors indicate that, regardless of the video's current processing - status, eventually, that status will almost certainly be failed.\"\n },\n - \ \"editorSuggestions\": {\n \"type\": \"array\",\n \"items\": - {\n \"enumDescriptions\": [\n \"Picture brightness - levels seem off and could be corrected.\",\n \"The video appears - shaky and could be stabilized.\",\n \"Margins (mattes) detected - around the picture could be cropped.\",\n \"The audio track appears - silent and could be swapped with a better quality one.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ]\n },\n \"description\": \"A list of video - editing operations that might improve the video quality or playback experience - of the uploaded video.\"\n }\n }\n },\n \"VideoLocalization\": - {\n \"properties\": {\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"Localized version of the video's - description.\"\n },\n \"title\": {\n \"description\": - \"Localized version of the video's title.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoLocalization\",\n \"type\": - \"object\",\n \"description\": \"Localized versions of certain video - properties (e.g. title).\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"type\": \"object\",\n \"description\": \"Information about - a new playlist item.\",\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n },\n \"playlistId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n },\n \"playlistItemId\": - {\n \"description\": \"ID of the item within the playlist.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveStreamContentDetails\": - {\n \"properties\": {\n \"isReusable\": {\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \",\n \"type\": \"boolean\"\n },\n \"closedCaptionsIngestionUrl\": - {\n \"description\": \"The ingestion URL where the closed captions - of this stream are sent.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Detailed settings of a stream.\",\n \"type\": - \"object\",\n \"id\": \"LiveStreamContentDetails\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"description\": \"Details about a channel bulletin post.\",\n \"id\": - \"ActivityContentDetailsBulletin\",\n \"type\": \"object\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\"\n }\n - \ }\n },\n \"ChannelSectionSnippet\": {\n \"properties\": {\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\"\n },\n \"title\": {\n \"description\": - \"The channel section's title for multiple_playlists and multiple_channels.\",\n - \ \"type\": \"string\"\n },\n \"style\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The style of the channel section.\",\n \"type\": - \"string\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ]\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the channel section's default - title and description.\"\n },\n \"type\": {\n \"enum\": - [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ],\n \"description\": \"The type of the channel section.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"localized\": {\n \"$ref\": \"ChannelSectionLocalization\",\n - \ \"description\": \"Localized title, read-only.\"\n },\n \"position\": - {\n \"format\": \"uint32\",\n \"description\": \"The position - of the channel section in the channel.\",\n \"type\": \"integer\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelSectionSnippet\",\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\"\n },\n \"LiveChatSuperStickerDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made.\"\n },\n \"tier\": {\n \"type\": - \"integer\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\",\n \"format\": - \"uint32\"\n },\n \"superStickerMetadata\": {\n \"description\": - \"Information about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"format\": \"uint64\",\n \"description\": \"The amount - purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"I18nRegionListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegionListResponse\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"I18nRegion\"\n },\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n },\n \"id\": \"I18nRegionListResponse\"\n - \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"properties\": {\n \"memberMonth\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the member to this Member Milestone Chat. This field is empty for - messages without a comment from the member.\"\n },\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level at which the viever is a member. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"VideoCategorySnippet\": {\n \"id\": \"VideoCategorySnippet\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The video category's title.\"\n - \ },\n \"assignable\": {\n \"type\": \"boolean\"\n },\n - \ \"channelId\": {\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n - \ \"description\": \"The YouTube channel that created the video category.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"MembershipsDetails\": {\n \"type\": \"object\",\n \"id\": - \"MembershipsDetails\",\n \"properties\": {\n \"highestAccessibleLevel\": - {\n \"type\": \"string\",\n \"description\": \"Id of the - highest level that the user has access to at the moment.\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"description\": \"Display name for the highest level that the - user has access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"accessibleLevels\": {\n \"description\": \"Ids of all levels - that the user has access to. This includes the currently active level and - all other levels that are included because of a higher purchase.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"membershipsDuration\": {\n \"description\": - \"Data about memberships duration without taking into consideration pricing - levels.\",\n \"$ref\": \"MembershipsDuration\"\n },\n \"membershipsDurationAtLevels\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"MembershipsDurationAtLevel\"\n },\n \"description\": \"Data - about memberships duration on particular pricing levels.\"\n }\n }\n - \ },\n \"VideoFileDetails\": {\n \"description\": \"Describes original - video file properties, including technical details about audio and video streams, - but also metadata information like content length, digitization time, or geotagging - information.\",\n \"id\": \"VideoFileDetails\",\n \"properties\": - {\n \"container\": {\n \"description\": \"The uploaded video - file's container format.\",\n \"type\": \"string\"\n },\n - \ \"fileSize\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\",\n \"format\": \"uint64\"\n - \ },\n \"audioStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsAudioStream\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of audio streams contained in the uploaded - video file. Each item in the list contains detailed metadata about an audio - stream.\"\n },\n \"creationTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the uploaded video file - was created. The value is specified in ISO 8601 format. Currently, the following - ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"fileName\": - {\n \"description\": \"The uploaded file's name. This field is present - whether a video file or another type of file was uploaded.\",\n \"type\": - \"string\"\n },\n \"bitrateBps\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - video file's combined (video and audio) bitrate in bits per second.\"\n },\n - \ \"videoStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of video streams contained in the uploaded - video file. Each item in the list contains detailed metadata about a video - stream.\"\n },\n \"fileType\": {\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The uploaded file's type as detected by YouTube's video processing engine. - Currently, YouTube only processes video files, but this field is present whether - a video file or another type of file was uploaded.\"\n },\n \"durationMs\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The length of the uploaded video in milliseconds.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"Playlist\": {\n \"type\": \"object\",\n - \ \"id\": \"Playlist\",\n \"description\": \"A *playlist* resource - represents a YouTube playlist. A playlist is a collection of videos that can - be viewed sequentially and shared with other users. A playlist can contain - up to 200 videos, and YouTube does not limit the number of playlists that - each user creates. By default, playlists are publicly visible to other users, - but playlists can be public or private. YouTube also uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\",\n \"$ref\": \"PlaylistSnippet\"\n },\n - \ \"status\": {\n \"$ref\": \"PlaylistStatus\",\n \"description\": - \"The status object contains status information for the playlist.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"default\": \"youtube#playlist\"\n },\n \"player\": - {\n \"description\": \"The player object contains information that - you would use to play the playlist in an embedded player.\",\n \"$ref\": - \"PlaylistPlayer\"\n },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the playlist.\"\n }\n }\n },\n - \ \"LiveStreamHealthStatus\": {\n \"properties\": {\n \"configurationIssues\": - {\n \"description\": \"The configurations issues on this stream\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n }\n },\n \"status\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ],\n \"type\": \"string\",\n \"description\": - \"The status code of this stream\"\n },\n \"lastUpdateTimeSeconds\": - {\n \"type\": \"string\",\n \"description\": \"The last - time this status was updated (in seconds)\",\n \"format\": \"uint64\"\n - \ }\n },\n \"id\": \"LiveStreamHealthStatus\",\n \"type\": - \"object\"\n },\n \"ChannelSection\": {\n \"id\": \"ChannelSection\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the channel section, such as its type, style and title.\",\n \"$ref\": - \"ChannelSectionSnippet\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\",\n \"$ref\": - \"ChannelSectionContentDetails\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n - \ \"description\": \"The targeting object contains basic targeting - settings about the channel section.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n \"default\": - \"youtube#channelSection\"\n },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\"\n - \ }\n }\n },\n \"ActivitySnippet\": {\n \"type\": \"object\",\n - \ \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\",\n \"id\": - \"ActivitySnippet\",\n \"properties\": {\n \"thumbnails\": {\n - \ \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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.\"\n },\n \"title\": {\n \"description\": - \"The title of the resource primarily associated with the activity.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the video was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel responsible - for this activity\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel associated with the activity.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"description\": \"The type of - activity that the resource describes.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"typeUnspecified\",\n - \ \"upload\",\n \"like\",\n \"favorite\",\n - \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n - \ \"recommendation\",\n \"bulletin\",\n \"social\",\n - \ \"channelItem\",\n \"promotedItem\"\n ]\n - \ },\n \"description\": {\n \"description\": \"The description - of the resource primarily associated with the activity. @mutable youtube.activities.insert\",\n - \ \"type\": \"string\"\n },\n \"groupId\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n }\n }\n },\n - \ \"ChannelSnippet\": {\n \"id\": \"ChannelSnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about a channel, including - title, description and thumbnails.\",\n \"properties\": {\n \"country\": - {\n \"type\": \"string\",\n \"description\": \"The country - of the channel.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the channel's default - title and description.\"\n },\n \"customUrl\": {\n \"description\": - \"The custom url of the channel.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the channel was created.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The channel's title.\"\n },\n \"thumbnails\": {\n \"description\": - \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the channel.\"\n }\n }\n },\n \"LiveChatBan\": {\n \"type\": - \"object\",\n \"description\": \"A `__liveChatBan__` resource represents - a ban for a YouTube live chat.\",\n \"id\": \"LiveChatBan\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatBan\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the ban.\",\n \"$ref\": - \"LiveChatBanSnippet\"\n }\n }\n },\n \"ChannelToStoreLinkDetails\": - {\n \"id\": \"ChannelToStoreLinkDetails\",\n \"properties\": {\n - \ \"storeUrl\": {\n \"description\": \"Landing page of the - store.\",\n \"type\": \"string\"\n },\n \"merchantId\": - {\n \"format\": \"uint64\",\n \"description\": \"Google - Merchant Center id of the store.\",\n \"type\": \"string\"\n },\n - \ \"storeName\": {\n \"type\": \"string\",\n \"description\": - \"Name of the store.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"properties\": {\n \"banType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of ban.\",\n \"type\": \"string\",\n \"enum\": - [\n \"permanent\",\n \"temporary\"\n ]\n },\n - \ \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"The details of the user that was banned.\"\n - \ },\n \"banDurationSeconds\": {\n \"description\": - \"The duration of the ban. This property is only present if the banType is - temporary.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"SubscriptionSnippet\": {\n \"id\": \"SubscriptionSnippet\",\n - \ \"description\": \"Basic details about a subscription, including title, - description and thumbnails of the subscribed item.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"title\": {\n \"description\": - \"The subscription's title.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the subscription was created.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The subscription's details.\"\n - \ },\n \"resourceId\": {\n \"description\": \"The id - object contains information about the channel that the user subscribed to.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel that the subscription belongs to.\"\n }\n - \ }\n },\n \"SearchResult\": {\n \"description\": \"A search - result contains information about a YouTube video, channel, or playlist that - matches the search parameters specified in an API request. While a search - result points to a uniquely identifiable resource, like a video, it does not - have its own persistent data.\",\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#searchResult\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\",\n \"$ref\": \"SearchResultSnippet\"\n },\n - \ \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n }\n },\n \"id\": - \"SearchResult\"\n }\n },\n \"servicePath\": \"\",\n \"id\": \"youtube:v3\",\n - \ \"parameters\": {\n \"quotaUser\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"uploadType\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n - \ },\n \"alt\": {\n \"default\": \"json\",\n \"location\": - \"query\",\n \"description\": \"Data format for response.\",\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ]\n },\n \"fields\": {\n \"description\": \"Selector specifying - which fields to include in a partial response.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"prettyPrint\": {\n \"default\": - \"true\",\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Returns response with indentations and line breaks.\"\n - \ },\n \"key\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"$.xgafv\": {\n \"description\": - \"V1 error format.\",\n \"location\": \"query\",\n \"enum\": [\n - \ \"1\",\n \"2\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"v1 error format\",\n \"v2 error format\"\n ]\n },\n - \ \"upload_protocol\": {\n \"description\": \"Upload protocol for media - (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"access_token\": {\n \"description\": \"OAuth - access token.\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"oauth_token\": {\n \"description\": \"OAuth 2.0 token for - the current user.\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"callback\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"JSONP\"\n }\n },\n \"ownerName\": - \"Google\",\n \"revision\": \"20230220\",\n \"discoveryVersion\": \"v1\",\n - \ \"basePath\": \"\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n }\n - \ }\n }\n },\n \"resources\": {\n \"i18nLanguages\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/i18nLanguages\",\n - \ \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"parameters\": - {\n \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"en_US\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the i18nLanguage - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"channels\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/channels\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.channels.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/channels\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"id\": - {\n \"description\": \"Return the channels with the specified - IDs.\",\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"mySubscribers\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Return - the channels subscribed to the authenticated user\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the ids of channels owned by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"forUsername\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the channel associated with a YouTube username.\"\n },\n - \ \"managedByMe\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Return the channels managed - by the authenticated user.\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\"\n },\n \"hl\": {\n - \ \"location\": \"query\",\n \"description\": \"Stands - for \\\"host language\\\". Specifies the localization language of the metadata - to be filled into snippet.localized. The field is filled with the default - metadata if there is no localization in the specified language. The parameter - value must be a language code included in the list returned by the i18nLanguages.list - method (e.g. en_US, es_MX).\",\n \"type\": \"string\"\n },\n - \ \"categoryId\": {\n \"type\": \"string\",\n \"description\": - \"Return the channels within the specified guide category ID.\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"update\": {\n \"id\": \"youtube.channels.update\",\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"request\": {\n - \ \"$ref\": \"Channel\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Channel\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Updates an existing resource.\",\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/channels\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n - \ }\n }\n }\n }\n },\n \"abuseReports\": - {\n \"methods\": {\n \"insert\": {\n \"flatPath\": \"youtube/v3/abuseReports\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"id\": \"youtube.abuseReports.insert\"\n }\n }\n },\n - \ \"channelSections\": {\n \"methods\": {\n \"insert\": {\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.channelSections.insert\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"path\": - \"youtube/v3/channelSections\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"httpMethod\": - \"POST\"\n },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"id\": \"youtube.channelSections.update\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"PUT\",\n \"request\": {\n \"$ref\": \"ChannelSection\"\n - \ }\n },\n \"list\": {\n \"id\": \"youtube.channelSections.list\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the ChannelSections with the given IDs for Stubby or Apiary.\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the ChannelSections owned by the specified - channel ID.\"\n },\n \"mine\": {\n \"description\": - \"Return the ChannelSections owned by the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"hl\": - {\n \"description\": \"Return content in specified language\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"id\": \"youtube.channelSections.delete\",\n \"description\": - \"Deletes a resource.\"\n }\n }\n },\n \"videoCategories\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"en-US\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the videoCategory resource properties that the API response - will include. Set the parameter value to snippet.\",\n \"required\": - true\n },\n \"id\": {\n \"description\": - \"Returns the video categories with the given IDs for Stubby or Apiary.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/videoCategories\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videoCategories\",\n \"id\": \"youtube.videoCategories.list\",\n - \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ }\n }\n }\n },\n \"i18nRegions\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/i18nRegions\",\n \"response\": {\n \"$ref\": - \"I18nRegionListResponse\"\n },\n \"parameters\": {\n \"hl\": - {\n \"default\": \"en_US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the i18nRegion resource properties that the API - response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"id\": \"youtube.i18nRegions.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"watermarks\": {\n \"methods\": {\n - \ \"set\": {\n \"path\": \"youtube/v3/watermarks/set\",\n \"flatPath\": - \"youtube/v3/watermarks/set\",\n \"supportsMediaUpload\": true,\n - \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\",\n \"protocols\": - {\n \"resumable\": {\n \"multipart\": true,\n - \ \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n }\n - \ }\n },\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"description\": \"Allows upload of watermark image - and setting it for a channel.\",\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"channelId\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.watermarks.set\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"unset\": {\n \"parameters\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"id\": \"youtube.watermarks.unset\",\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/watermarks/unset\",\n \"flatPath\": - \"youtube/v3/watermarks/unset\",\n \"description\": \"Allows removal - of channel watermark.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"insert\": {\n \"request\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"id\": \"youtube.liveChatModerators.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"delete\": {\n - \ \"description\": \"Deletes a chat moderator.\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": \"DELETE\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatModerators.delete\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\"\n },\n \"list\": {\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveChatModeratorListResponse\"\n },\n - \ \"id\": \"youtube.liveChatModerators.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"liveChatId\": {\n \"required\": - true,\n \"description\": \"The id of the live chat for which - moderators should be returned.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"location\": \"query\",\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"maximum\": \"50\",\n \"format\": \"uint32\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\"\n }\n }\n },\n \"liveChatMessages\": - {\n \"methods\": {\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true\n }\n },\n - \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"id\": \"youtube.liveChatMessages.insert\",\n \"path\": - \"youtube/v3/liveChat/messages\"\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.liveChatMessages.delete\",\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a chat message.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"path\": - \"youtube/v3/liveChat/messages\"\n },\n \"list\": {\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"The *part* parameter - specifies the liveChatComment resource parts that the API response will include. - Supported values are id and snippet.\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"2000\",\n \"default\": - \"500\",\n \"minimum\": \"200\",\n \"type\": \"integer\",\n - \ \"location\": \"query\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The - id of the live chat for which comments should be returned.\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"hl\": - {\n \"description\": \"Specifies the localization language in - which the system messages should be returned.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"profileImageSize\": - {\n \"maximum\": \"720\",\n \"description\": \"Specifies - the size of the profile image that should be returned for each user.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"minimum\": \"16\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.liveChatMessages.list\",\n \"httpMethod\": \"GET\"\n }\n - \ }\n },\n \"channelBanners\": {\n \"methods\": {\n \"insert\": - {\n \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/channelBanners/insert\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [],\n - \ \"mediaUpload\": {\n \"maxSize\": \"6291456\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"supportsMediaUpload\": true,\n \"path\": - \"youtube/v3/channelBanners/insert\",\n \"id\": \"youtube.channelBanners.insert\",\n - \ \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ }\n }\n }\n },\n \"thumbnails\": {\n \"methods\": - {\n \"set\": {\n \"id\": \"youtube.thumbnails.set\",\n \"description\": - \"As this is not an insert in a strict sense (it supports uploading/setting - of a thumbnail for multiple videos, which doesn't result in creation of a - single resource), I use a custom verb here.\",\n \"response\": {\n - \ \"$ref\": \"ThumbnailSetResponse\"\n },\n \"supportsMediaUpload\": - true,\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoId\": {\n \"required\": - true,\n \"description\": \"Returns the Thumbnail with the given - video IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": - [\n \"videoId\"\n ],\n \"mediaUpload\": {\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"2097152\"\n - \ },\n \"path\": \"youtube/v3/thumbnails/set\",\n \"flatPath\": - \"youtube/v3/thumbnails/set\",\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"transition\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"broadcastStatus\",\n - \ \"id\",\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveBroadcasts/transition\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"Broadcast to transition.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"broadcastStatus\": - {\n \"location\": \"query\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"required\": true,\n \"description\": - \"The status to which the broadcast is going to transition.\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"description\": \"Transition a broadcast to a given status.\"\n - \ },\n \"insertCuepoint\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [],\n \"request\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"parameters\": - {\n \"id\": {\n \"description\": \"Broadcast to insert - ads to, or equivalently `external_video_id` for internal use.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Insert cuepoints in a broadcast\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"response\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\"\n - \ },\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"id\": \"youtube.liveBroadcasts.update\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"description\": \"Updates an existing - broadcast for the authenticated user.\"\n },\n \"bind\": {\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"parameters\": {\n \"streamId\": - {\n \"description\": \"Stream to bind, if not set unbind the - current one.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Broadcast to bind to the stream\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\",\n \"part\"\n ],\n \"description\": - \"Bind a broadcast to a stream.\",\n \"id\": \"youtube.liveBroadcasts.bind\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\"\n },\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Inserts - a new stream for the authenticated user.\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"httpMethod\": \"POST\"\n },\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"id\": - \"youtube.liveBroadcasts.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"maxResults\": {\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"location\": \"query\"\n - \ },\n \"broadcastStatus\": {\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"description\": \"Return broadcasts - with a certain status, e.g. active broadcasts.\",\n \"type\": - \"string\"\n },\n \"broadcastType\": {\n \"default\": - \"event\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": - [\n \"broadcastTypeFilterUnspecified\",\n \"all\",\n - \ \"event\",\n \"persistent\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Return - only broadcasts with the selected type.\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return broadcasts with the given ids from - Stubby or Apiary.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"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, status and statistics.\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"description\": \"Retrieve the list of broadcasts associated with - the given channel.\",\n \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ }\n },\n \"delete\": {\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Delete - a given broadcast.\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"description\": \"Broadcast to delete.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\"\n }\n - \ }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"id\": \"youtube.search.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of search resources\",\n \"flatPath\": - \"youtube/v3/search\",\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"parameters\": {\n \"pageToken\": {\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"videoCategoryId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on videos in a specific category.\"\n },\n \"q\": - {\n \"type\": \"string\",\n \"description\": \"Textual - search terms to match.\",\n \"location\": \"query\"\n },\n - \ \"videoDimension\": {\n \"enumDescriptions\": [\n - \ \"Include both 3D and non-3D videos in returned results. This - is the default value.\",\n \"Restrict search results to exclude - 3D videos.\",\n \"Restrict search results to only include 3D - videos.\"\n ],\n \"location\": \"query\",\n \"description\": - \"Filter on 3d videos.\",\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ],\n \"type\": - \"string\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"description\": \"Restrict results to a particular - set of resource types from One Platform.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"forContentOwner\": - {\n \"type\": \"boolean\",\n \"description\": \"Search - owned by a content owner.\",\n \"location\": \"query\"\n },\n - \ \"videoType\": {\n \"description\": \"Filter on videos - of a specific type.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos.\",\n \"Only retrieve movies.\",\n - \ \"Only retrieve episodes of shows.\"\n ],\n \"enum\": - [\n \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoLicense\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"type\": - \"string\",\n \"description\": \"Filter on the license of the - videos.\"\n },\n \"publishedBefore\": {\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"description\": - \"Filter on resources published before this date.\",\n \"location\": - \"query\"\n },\n \"topicId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular topic.\"\n },\n \"regionCode\": - {\n \"description\": \"Display the content as seen by viewers - in this country.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Filter on resources belonging - to this channelId.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"videoEmbeddable\": {\n \"type\": \"string\",\n - \ \"description\": \"Filter on embeddable videos.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, embeddable or not.\",\n \"Only - retrieve embeddable videos.\"\n ],\n \"enum\": [\n - \ \"videoEmbeddableUnspecified\",\n \"any\",\n - \ \"true\"\n ]\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\"\n },\n \"location\": - {\n \"description\": \"Filter on location of the video\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"order\": - {\n \"description\": \"Sort order of the results.\",\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"default\": - \"relevance\",\n \"type\": \"string\"\n },\n \"locationRadius\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on distance from the location (specified - above).\"\n },\n \"forDeveloper\": {\n \"location\": - \"query\",\n \"description\": \"Restrict the search to only retrieve - videos uploaded using the project id of the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"description\": \"Filter on resources - published after this date.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"safeSearch\": {\n \"type\": - \"string\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"default\": \"moderate\",\n \"location\": - \"query\"\n },\n \"videoDefinition\": {\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Filter - on the definition of the videos.\",\n \"location\": \"query\"\n - \ },\n \"videoDuration\": {\n \"enum\": - [\n \"videoDurationUnspecified\",\n \"any\",\n - \ \"short\",\n \"medium\",\n \"long\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Filter - on the duration of the videos.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"eventType\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"description\": - \"Filter on the livestream status of the videos.\"\n },\n \"relatedToVideoId\": - {\n \"type\": \"string\",\n \"description\": \"Search - related to a resource.\",\n \"location\": \"query\"\n },\n - \ \"videoSyndicated\": {\n \"description\": \"Filter - on syndicated videos.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"location\": \"query\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ]\n },\n - \ \"forMine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Search for the private videos - of the authenticated user.\"\n },\n \"videoCaption\": - {\n \"description\": \"Filter on the presence of captions on - the videos.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"type\": \"string\"\n },\n \"relevanceLanguage\": - {\n \"location\": \"query\",\n \"description\": - \"Return results relevant to this language.\",\n \"type\": \"string\"\n - \ },\n \"channelType\": {\n \"description\": - \"Add a filter on the channel search.\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/search\",\n \"httpMethod\": \"GET\"\n }\n }\n - \ },\n \"videos\": {\n \"methods\": {\n \"rate\": {\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"flatPath\": - \"youtube/v3/videos/rate\",\n \"path\": \"youtube/v3/videos/rate\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.videos.rate\",\n - \ \"parameters\": {\n \"rating\": {\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Adds a like or dislike rating to a video or removes - a rating from a video.\"\n },\n \"update\": {\n \"id\": - \"youtube.videos.update\",\n \"path\": \"youtube/v3/videos\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"flatPath\": - \"youtube/v3/videos\",\n \"response\": {\n \"$ref\": \"Video\"\n - \ },\n \"request\": {\n \"$ref\": \"Video\"\n - \ }\n },\n \"reportAbuse\": {\n \"description\": - \"Report abuse for a video.\",\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [],\n \"id\": - \"youtube.videos.reportAbuse\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos/reportAbuse\"\n },\n - \ \"getRating\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos/getRating\",\n \"description\": - \"Retrieves the ratings that the authorized user gave to a list of specified - videos.\",\n \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.videos.getRating\",\n \"flatPath\": \"youtube/v3/videos/getRating\"\n - \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"VideoListResponse\"\n },\n - \ \"parameters\": {\n \"chart\": {\n \"enum\": - [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"description\": - \"Return the videos that are in the specified chart.\"\n },\n \"locale\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Use a chart that is specific to the specified region\"\n },\n - \ \"videoCategoryId\": {\n \"location\": \"query\",\n - \ \"description\": \"Use chart that is specific to the specified - video category\",\n \"default\": \"0\",\n \"type\": - \"string\"\n },\n \"myRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"location\": \"query\",\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"description\": \"Return videos with the given ids.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"maxWidth\": {\n \"description\": - \"Return the player with maximum height specified in\",\n \"minimum\": - \"72\",\n \"location\": \"query\",\n \"maximum\": - \"8192\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ },\n \"hl\": {\n \"description\": \"Stands - for \\\"host language\\\". Specifies the localization language of the metadata - to be filled into snippet.localized. The field is filled with the default - metadata if there is no localization in the specified language. The parameter - value must be a language code included in the list returned by the i18nLanguages.list - method (e.g. en_US, es_MX).\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxHeight\": {\n \"location\": - \"query\",\n \"minimum\": \"72\",\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"maximum\": \"8192\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n - \ \"required\": true,\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.videos.list\",\n - \ \"path\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/videos\",\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"mediaUpload\": {\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"274877906944\",\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": - true\n },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/videos\"\n }\n - \ }\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"id\": \"youtube.videos.insert\",\n \"supportsMediaUpload\": - true,\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"notifySubscribers\": {\n \"location\": - \"query\",\n \"description\": \"Notify the channel subscribers - about the new video. As default, the notification is enabled.\",\n \"default\": - \"true\",\n \"type\": \"boolean\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"stabilize\": - {\n \"description\": \"Should stabilize be applied to the upload.\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"autoLevels\": - {\n \"description\": \"Should auto-levels be applied to the upload.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"description\": - \"Deletes a resource.\",\n \"path\": \"youtube/v3/videos\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.videos.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\"\n }\n }\n },\n - \ \"captions\": {\n \"methods\": {\n \"update\": {\n \"id\": - \"youtube.captions.update\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n - \ \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ },\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"flatPath\": - \"youtube/v3/captions\",\n \"path\": \"youtube/v3/captions\",\n \"supportsMediaUpload\": - true,\n \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\"\n - \ },\n \"sync\": {\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"httpMethod\": \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"download\": {\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"supportsMediaDownload\": true,\n \"parameterOrder\": - [\n \"id\"\n ],\n \"useMediaDownloadService\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"tlang\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"tlang is the language code; machine translate the captions into this language.\"\n - \ },\n \"tfmt\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Convert - the captions into this format. Supported options are sbv, srt, and vtt.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is be on behalf of\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"path\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The ID - of the caption track to download, required for One Platform.\"\n }\n - \ },\n \"description\": \"Downloads a caption track.\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.captions.download\",\n - \ \"flatPath\": \"youtube/v3/captions/{id}\"\n },\n \"insert\": - {\n \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n }\n - \ },\n \"maxSize\": \"104857600\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is be on behalf of\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the caption - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"sync\": - {\n \"type\": \"boolean\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"location\": \"query\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"supportsMediaUpload\": - true,\n \"path\": \"youtube/v3/captions\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.captions.insert\"\n },\n \"list\": - {\n \"path\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.list\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"id\": {\n \"description\": - \"Returns the captions with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"videoId\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Returns the captions for the specified video.\",\n \"type\": - \"string\"\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"CaptionListResponse\"\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ]\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/captions\",\n - \ \"id\": \"youtube.captions.delete\",\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is be on behalf of\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\"\n }\n }\n },\n - \ \"liveStreams\": {\n \"methods\": {\n \"update\": {\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"id\": \"youtube.liveStreams.update\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"httpMethod\": \"PUT\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n }\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveStreams.delete\",\n \"description\": - \"Deletes an existing stream for the authenticated user.\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ]\n - \ },\n \"list\": {\n \"description\": \"Retrieve the - list of streams associated with the given channel. --\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"default\": \"5\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Return - LiveStreams with the given ids from Stubby or Apiary.\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"id\": \"youtube.liveStreams.list\",\n - \ \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n },\n \"insert\": {\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"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, content_details, and status.\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Inserts - a new stream for the authenticated user.\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"request\": {\n - \ \"$ref\": \"LiveStream\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveStreams.insert\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"activities\": {\n \"methods\": {\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n },\n \"publishedBefore\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"format\": - \"google-datetime\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"publishedAfter\": - {\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"maximum\": \"50\",\n - \ \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\"\n },\n \"home\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/activities\",\n \"path\": \"youtube/v3/activities\",\n - \ \"id\": \"youtube.activities.list\"\n }\n }\n },\n - \ \"thirdPartyLinks\": {\n \"methods\": {\n \"update\": {\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"location\": \"query\"\n },\n - \ \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\"\n }\n - \ },\n \"id\": \"youtube.thirdPartyLinks.update\",\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"delete\": {\n - \ \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"linkingToken\": {\n - \ \"type\": \"string\",\n \"required\": true,\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"location\": - \"query\"\n },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"type\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Type of the link to be deleted.\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ]\n },\n \"part\": {\n \"description\": - \"Do not use. Required for compatibility.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.delete\",\n - \ \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n - \ ]\n },\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\"\n },\n \"type\": {\n \"description\": - \"Get a third party link of the given type.\",\n \"location\": - \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\"\n },\n \"linkingToken\": - {\n \"type\": \"string\",\n \"description\": \"Get - a third party link with the given linking token.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - response will include. Supported values are linkingToken, status, and snippet.\"\n - \ }\n },\n \"id\": \"youtube.thirdPartyLinks.list\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"GET\"\n },\n - \ \"insert\": {\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.thirdPartyLinks.insert\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"location\": \"query\"\n - \ },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the membershipsLevel resource parts that the API response will include. Supported - values are id and snippet.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieves a list of all pricing levels offered - by a creator to the fans.\",\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.membershipsLevels.list\"\n }\n - \ }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": {\n - \ \"list\": {\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the videoCategory resource parts that the - API response will include. Supported values are id and snippet.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"default\": \"en-US\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\"\n }\n }\n },\n \"superChatEvents\": - {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/superChatEvents\",\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the superChatEvent resource parts that the - API response will include. This parameter is currently not supported.\"\n - \ },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"maximum\": \"50\",\n - \ \"minimum\": \"1\",\n \"default\": \"5\",\n \"type\": - \"integer\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return rendered funding amounts in specified - language.\"\n }\n },\n \"id\": \"youtube.superChatEvents.list\",\n - \ \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ }\n }\n }\n },\n \"comments\": {\n \"methods\": - {\n \"setModerationStatus\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"parameters\": {\n \"banAuthor\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"default\": - \"false\",\n \"description\": \"If set to true the author of - the comment gets added to the ban list. This means all future comments of - the author will autmomatically be rejected. Only valid in combination with - STATUS_REJECTED.\"\n },\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"Modifies the moderation status of the comments with the given IDs\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"moderationStatus\": - {\n \"enumDescriptions\": [\n \"The comment is - available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Specifies the requested moderation status. - Note, comments can be in statuses, which are not available through this call. - For example, this call does not allow to mark a comment as 'likely spam'. - Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"required\": true,\n \"location\": - \"query\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ]\n - \ }\n },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\",\n \"description\": \"Sets - the moderation status of one or more comments.\",\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ],\n \"path\": - \"youtube/v3/comments/setModerationStatus\"\n },\n \"markAsSpam\": - {\n \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"id\": \"youtube.comments.markAsSpam\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"Flags the comments with the given - IDs as spam in the caller's opinion.\",\n \"type\": \"string\",\n - \ \"repeated\": true\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/comments/markAsSpam\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Expresses the caller's opinion - that one or more comments should be flagged as spam.\"\n },\n \"list\": - {\n \"id\": \"youtube.comments.list\",\n \"response\": {\n - \ \"$ref\": \"CommentListResponse\"\n },\n \"parameters\": - {\n \"maxResults\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"1\",\n \"maximum\": \"100\",\n \"default\": \"20\",\n - \ \"location\": \"query\",\n \"type\": \"integer\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"Returns the comments with the given IDs for - One Platform.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more comment - resource properties that the API response will include.\"\n },\n - \ \"parentId\": {\n \"type\": \"string\",\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"location\": - \"query\"\n },\n \"textFormat\": {\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"description\": - \"The requested text format for the returned comments.\",\n \"default\": - \"html\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new resource into this collection.\",\n \"path\": \"youtube/v3/comments\",\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"id\": \"youtube.comments.insert\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n }\n },\n - \ \"update\": {\n \"request\": {\n \"$ref\": \"Comment\"\n - \ },\n \"path\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"httpMethod\": - \"PUT\",\n \"id\": \"youtube.comments.update\",\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n - \ },\n \"flatPath\": \"youtube/v3/comments\"\n },\n - \ \"delete\": {\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/comments\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.comments.delete\",\n \"httpMethod\": \"DELETE\"\n }\n - \ }\n },\n \"liveChatBans\": {\n \"methods\": {\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"httpMethod\": - \"POST\"\n },\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"id\": \"youtube.liveChatBans.delete\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat ban.\",\n \"path\": \"youtube/v3/liveChat/bans\"\n - \ }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"id\": \"youtube.commentThreads.list\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"allThreadsRelatedToChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of all videos of the channel and the channel - comments as well.\",\n \"type\": \"string\"\n },\n - \ \"moderationStatus\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by - a moderator.\",\n \"\",\n \"The comment is unfit - for display.\"\n ],\n \"location\": \"query\",\n - \ \"default\": \"published\",\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"order\": {\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"location\": \"query\",\n - \ \"default\": \"time\"\n },\n \"id\": {\n - \ \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"description\": \"Returns the comment threads of the specified - video.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"searchTerms\": {\n \"location\": - \"query\",\n \"description\": \"Limits the returned comment threads - to those matching the specified key words. Not compatible with the 'id' filter.\",\n - \ \"type\": \"string\"\n },\n \"textFormat\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"description\": - \"The requested text format for the returned comments.\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"default\": - \"html\"\n },\n \"maxResults\": {\n \"maximum\": - \"100\",\n \"format\": \"uint32\",\n \"minimum\": - \"1\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"20\"\n }\n },\n \"path\": - \"youtube/v3/commentThreads\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ }\n },\n \"insert\": {\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ }\n }\n }\n },\n \"youtube\": {\n \"resources\": - {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"description\": \"Updates an existing resource.\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true\n - \ }\n },\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"parameterOrder\": [],\n - \ \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"path\": - \"youtube/v3/commentThreads\"\n }\n }\n }\n }\n - \ },\n \"tests\": {\n \"methods\": {\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"request\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"path\": \"youtube/v3/tests\",\n \"description\": - \"POST method.\",\n \"flatPath\": \"youtube/v3/tests\",\n \"id\": - \"youtube.tests.insert\",\n \"httpMethod\": \"POST\"\n }\n - \ }\n },\n \"subscriptions\": {\n \"methods\": {\n \"list\": - {\n \"id\": \"youtube.subscriptions.list\",\n \"path\": - \"youtube/v3/subscriptions\",\n \"response\": {\n \"$ref\": - \"SubscriptionListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"parameters\": - {\n \"mySubscribers\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Return the subscribers of the given channel - owner.\",\n \"location\": \"query\"\n },\n \"forChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"order\": {\n \"description\": \"The order of the - returned subscriptions\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"default\": \"relevance\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions with the given IDs - for Stubby or Apiary.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the subscriptions of the given channel owner.\"\n },\n - \ \"mine\": {\n \"description\": \"Flag for returning - the subscriptions of the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"myRecentSubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"type\": \"integer\"\n }\n }\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/subscriptions\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.delete\"\n - \ },\n \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/subscriptions\",\n \"request\": - {\n \"$ref\": \"Subscription\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Subscription\"\n },\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"flatPath\": \"youtube/v3/subscriptions\"\n - \ }\n }\n },\n \"playlists\": {\n \"methods\": {\n \"insert\": - {\n \"flatPath\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.playlists.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"path\": \"youtube/v3/playlists\",\n \"response\": {\n - \ \"$ref\": \"Playlist\"\n },\n \"request\": {\n - \ \"$ref\": \"Playlist\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"id\": \"youtube.playlists.delete\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"description\": \"Deletes a resource.\",\n - \ \"path\": \"youtube/v3/playlists\"\n },\n \"update\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"path\": \"youtube/v3/playlists\",\n \"description\": - \"Updates an existing resource.\",\n \"id\": \"youtube.playlists.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/playlists\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true\n }\n }\n - \ },\n \"list\": {\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.playlists.list\",\n - \ \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"channelId\": {\n \"description\": - \"Return the playlists owned by the specified channel ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"maximum\": \"50\"\n },\n \"mine\": {\n - \ \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the playlists owned by the authenticated - user.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"hl\": - {\n \"description\": \"Return content in specified language\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"Return - the playlists with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n }\n - \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"flatPath\": \"youtube/v3/members\",\n \"id\": \"youtube.members.list\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"filterByMemberChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\"\n - \ },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"1000\",\n \"type\": \"integer\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"mode\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"enum\": - [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"default\": - \"all_current\"\n },\n \"hasAccessToLevel\": {\n \"type\": - \"string\",\n \"description\": \"Filter members in the results - set to the ones that have access to a level.\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Retrieves - a list of members that match the request criteria for a channel.\",\n \"response\": - {\n \"$ref\": \"MemberListResponse\"\n },\n \"path\": - \"youtube/v3/members\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"playlistItems\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\"\n },\n \"videoId\": - {\n \"description\": \"Return the playlist items associated with - the given video ID.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"Return the playlist items within - the given playlist.\",\n \"location\": \"query\"\n }\n - \ },\n \"httpMethod\": \"GET\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItemListResponse\"\n },\n \"id\": - \"youtube.playlistItems.list\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/playlistItems\"\n - \ },\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true,\n \"description\": - \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"description\": - \"Updates an existing resource.\",\n \"id\": \"youtube.playlistItems.update\",\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"flatPath\": \"youtube/v3/playlistItems\"\n },\n \"insert\": - {\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"path\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.insert\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"delete\": {\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.playlistItems.delete\"\n - \ }\n }\n }\n },\n \"title\": \"YouTube Data API v3\",\n \"fullyEncodeReservedExpansion\": - true,\n \"canonicalName\": \"YouTube\",\n \"version\": \"v3\",\n \"batchPath\": - \"batch\",\n \"description\": \"The YouTube Data API v3 is an API that provides - access to YouTube data, such as videos, playlists, and channels.\",\n \"ownerDomain\": - \"google.com\",\n \"protocol\": \"rest\",\n \"kind\": \"discovery#restDescription\",\n - \ \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"name\": \"youtube\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:27 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCH1WLbKqBxQNouAWHoYQQVw&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"hL4pW5_vYy5Rhde-p_KI8omvvWI\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"tMrvS-J_yVdkdi76xhUAk4zL3Ak\",\n \"id\": \"UCH1WLbKqBxQNouAWHoYQQVw\",\n - \ \"snippet\": {\n \"title\": \"So Hyang TV \u2022 Fan Channel\",\n - \ \"description\": \"So Hyang TV YouTube Channel\\n\\nA channel dedicated - to So Hyang (\uC18C\uD5A5) (and other amazing singers)\u2764\uFE0F\\n\",\n - \ \"customUrl\": \"@sohyangtv\",\n \"publishedAt\": \"2018-07-01T18:57:53Z\",\n - \ \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/ytc/AL5GRJXSguvbSfYc1clblN6T04Uh8fGPvi1zduS7eguE=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJXSguvbSfYc1clblN6T04Uh8fGPvi1zduS7eguE=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJXSguvbSfYc1clblN6T04Uh8fGPvi1zduS7eguE=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"defaultLanguage\": \"en\",\n \"localized\": {\n \"title\": - \"So Hyang TV \u2022 Fan Channel\",\n \"description\": \"So Hyang - TV YouTube Channel\\n\\nA channel dedicated to So Hyang (\uC18C\uD5A5) (and - other amazing singers)\u2764\uFE0F\\n\"\n },\n \"country\": - \"US\"\n },\n \"brandingSettings\": {\n \"channel\": {\n - \ \"title\": \"So Hyang TV \u2022 Fan Channel\",\n \"description\": - \"So Hyang TV YouTube Channel\\n\\nA channel dedicated to So Hyang (\uC18C\uD5A5) - (and other amazing singers)\u2764\uFE0F\\n\",\n \"keywords\": \"\\\"So - Hyang\\\" Sohyang \uC18C\uD5A5 \\\"So Hyang TV\\\" \\\"\uC18C\uD5A5 TV\\\"\",\n - \ \"unsubscribedTrailer\": \"c-WWKpFw4IE\",\n \"defaultLanguage\": - \"en\",\n \"country\": \"US\"\n },\n \"image\": {\n - \ \"bannerExternalUrl\": \"https://yt3.googleusercontent.com/OA7C0qI-RfFOfQakzXUWHDdhkXSwaYzsN-W-Qp8MovohMgbRhfSAoObYmHwc82RuiHPWy5Pv8g\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:27 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"parameters\": {\n \"quotaUser\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"alt\": - {\n \"default\": \"json\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"enum\": [\n \"json\",\n - \ \"media\",\n \"proto\"\n ],\n \"description\": \"Data - format for response.\",\n \"type\": \"string\"\n },\n \"prettyPrint\": - {\n \"default\": \"true\",\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Returns response with indentations - and line breaks.\"\n },\n \"oauth_token\": {\n \"description\": - \"OAuth 2.0 token for the current user.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"access_token\": {\n \"description\": - \"OAuth access token.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"key\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"uploadType\": {\n \"type\": - \"string\",\n \"description\": \"Legacy upload protocol for media (e.g. - \\\"media\\\", \\\"multipart\\\").\",\n \"location\": \"query\"\n },\n - \ \"upload_protocol\": {\n \"type\": \"string\",\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"location\": - \"query\"\n },\n \"fields\": {\n \"description\": \"Selector specifying - which fields to include in a partial response.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"$.xgafv\": {\n \"description\": - \"V1 error format.\",\n \"enum\": [\n \"1\",\n \"2\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": [\n - \ \"v1 error format\",\n \"v2 error format\"\n ],\n \"type\": - \"string\"\n },\n \"callback\": {\n \"type\": \"string\",\n \"description\": - \"JSONP\",\n \"location\": \"query\"\n }\n },\n \"resources\": {\n - \ \"membershipsLevels\": {\n \"methods\": {\n \"list\": {\n - \ \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the membershipsLevel - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Retrieves a list of all pricing levels offered - by a creator to the fans.\",\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.membershipsLevels.list\",\n \"httpMethod\": \"GET\"\n }\n - \ }\n },\n \"comments\": {\n \"methods\": {\n \"setModerationStatus\": - {\n \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"id\": \"youtube.comments.setModerationStatus\",\n \"path\": - \"youtube/v3/comments/setModerationStatus\",\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ],\n \"description\": - \"Sets the moderation status of one or more comments.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"banAuthor\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"If set to true the author of the comment gets added to the ban list. This - means all future comments of the author will autmomatically be rejected. Only - valid in combination with STATUS_REJECTED.\",\n \"default\": - \"false\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"Modifies - the moderation status of the comments with the given IDs\"\n },\n - \ \"moderationStatus\": {\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\"\n }\n - \ }\n },\n \"delete\": {\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.comments.delete\",\n - \ \"httpMethod\": \"DELETE\"\n },\n \"markAsSpam\": - {\n \"description\": \"Expresses the caller's opinion that one or - more comments should be flagged as spam.\",\n \"id\": \"youtube.comments.markAsSpam\",\n - \ \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"Flags the comments with the given IDs as - spam in the caller's opinion.\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments/markAsSpam\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/comments/markAsSpam\"\n },\n \"update\": - {\n \"id\": \"youtube.comments.update\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"path\": \"youtube/v3/comments\",\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true\n }\n - \ }\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.comments.list\",\n \"response\": {\n \"$ref\": - \"CommentListResponse\"\n },\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more comment resource - properties that the API response will include.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"textFormat\": - {\n \"default\": \"html\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The requested text format for the returned - comments.\"\n },\n \"maxResults\": {\n \"default\": - \"20\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"100\",\n \"location\": \"query\",\n \"minimum\": - \"1\"\n },\n \"parentId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Returns - the comments with the given IDs for One Platform.\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/comments\"\n - \ },\n \"insert\": {\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"id\": \"youtube.comments.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"channelBanners\": - {\n \"methods\": {\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"ChannelBannerResource\"\n },\n \"parameters\": - {\n \"channelId\": {\n \"location\": \"query\",\n - \ \"description\": \"Unused, channel_id is currently derived from - the security context of the requestor.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n }\n - \ },\n \"id\": \"youtube.channelBanners.insert\",\n \"parameterOrder\": - [],\n \"supportsMediaUpload\": true,\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"mediaUpload\": - {\n \"maxSize\": \"6291456\",\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"description\": \"Inserts a new resource - into this collection.\"\n }\n }\n },\n \"liveChatMessages\": - {\n \"methods\": {\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a chat message.\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"id\": \"youtube.liveChatMessages.delete\"\n - \ },\n \"list\": {\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"profileImageSize\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"16\",\n \"location\": \"query\",\n - \ \"maximum\": \"720\",\n \"description\": \"Specifies - the size of the profile image that should be returned for each user.\"\n },\n - \ \"maxResults\": {\n \"minimum\": \"200\",\n \"format\": - \"uint32\",\n \"maximum\": \"2000\",\n \"default\": - \"500\",\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"The id of the live chat for which comments should be returned.\"\n },\n - \ \"part\": {\n \"description\": \"The *part* parameter - specifies the liveChatComment resource parts that the API response will include. - Supported values are id and snippet.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"hl\": - {\n \"description\": \"Specifies the localization language in - which the system messages should be returned.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"path\": \"youtube/v3/liveChat/messages\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/liveChat/messages\"\n },\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"id\": \"youtube.liveChatMessages.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"flatPath\": - \"youtube/v3/liveChat/messages\"\n }\n }\n },\n \"liveStreams\": - {\n \"methods\": {\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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, content_details, and status.\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"id\": \"youtube.liveStreams.insert\"\n - \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.delete\",\n \"description\": - \"Deletes an existing stream for the authenticated user.\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/liveStreams\"\n - \ },\n \"update\": {\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"id\": \"youtube.liveStreams.update\",\n \"httpMethod\": - \"PUT\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\"\n }\n - \ },\n \"description\": \"Updates an existing stream for - the authenticated user.\",\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"id\": {\n \"description\": \"Return LiveStreams - with the given ids from Stubby or Apiary.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"minimum\": \"0\"\n },\n \"mine\": {\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n - \ \"required\": true\n }\n },\n \"id\": - \"youtube.liveStreams.list\",\n \"description\": \"Retrieve the list - of streams associated with the given channel. --\"\n }\n }\n },\n - \ \"commentThreads\": {\n \"methods\": {\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"searchTerms\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\"\n },\n \"textFormat\": - {\n \"default\": \"html\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"The - requested text format for the returned comments.\",\n \"type\": - \"string\"\n },\n \"order\": {\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"time\"\n },\n \"videoId\": - {\n \"description\": \"Returns the comment threads of the specified - video.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"20\",\n \"minimum\": - \"1\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"maximum\": \"100\",\n \"location\": \"query\"\n - \ },\n \"moderationStatus\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"default\": - \"published\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"Returns the comment threads for all the - channel comments (ie does not include comments left on videos).\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"repeated\": - true,\n \"required\": true\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"id\": \"youtube.commentThreads.list\",\n - \ \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/commentThreads\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"insert\": {\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\"\n }\n }\n },\n - \ \"playlistItems\": {\n \"methods\": {\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"id\": \"youtube.playlistItems.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"flatPath\": \"youtube/v3/playlistItems\"\n },\n - \ \"update\": {\n \"id\": \"youtube.playlistItems.update\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.delete\"\n },\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"description\": - \"Return the playlist items associated with the given video ID.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"playlistId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlist items within the given playlist.\"\n },\n - \ \"maxResults\": {\n \"minimum\": \"0\",\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.playlistItems.list\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"response\": {\n \"$ref\": - \"PlaylistItemListResponse\"\n }\n }\n }\n },\n \"videoCategories\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"VideoCategoryListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"id\": \"youtube.videoCategories.list\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the videoCategory resource properties that the API response will include. - Set the parameter value to snippet.\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"hl\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"default\": \"en-US\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the video categories with the given IDs for Stubby or Apiary.\",\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"regionCode\": {\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/videoCategories\"\n - \ }\n }\n },\n \"playlists\": {\n \"methods\": {\n \"delete\": - {\n \"path\": \"youtube/v3/playlists\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.playlists.delete\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\"\n },\n - \ \"insert\": {\n \"request\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/playlists\",\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlists.insert\"\n },\n - \ \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"id\": \"youtube.playlists.update\",\n \"path\": \"youtube/v3/playlists\"\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"PlaylistListResponse\"\n },\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"maxResults\": {\n \"type\": - \"integer\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\"\n },\n \"mine\": {\n - \ \"location\": \"query\",\n \"description\": \"Return - the playlists owned by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Return the playlists owned by the specified channel ID.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return content in specified language\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/playlists\",\n \"description\": \"Retrieves a list of - resources, possibly filtered.\",\n \"id\": \"youtube.playlists.list\",\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"thumbnails\": - {\n \"methods\": {\n \"set\": {\n \"response\": {\n \"$ref\": - \"ThumbnailSetResponse\"\n },\n \"supportsMediaUpload\": - true,\n \"parameters\": {\n \"videoId\": {\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/thumbnails/set\",\n \"id\": \"youtube.thumbnails.set\",\n - \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"mediaUpload\": - {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ }\n },\n \"maxSize\": \"2097152\"\n },\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n \"httpMethod\": - \"POST\"\n }\n }\n },\n \"watermarks\": {\n \"methods\": - {\n \"set\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"description\": \"Allows upload - of watermark image and setting it for a channel.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.watermarks.set\",\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"mediaUpload\": {\n \"maxSize\": \"10485760\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ }\n }\n },\n \"supportsMediaUpload\": - true,\n \"flatPath\": \"youtube/v3/watermarks/set\",\n \"path\": - \"youtube/v3/watermarks/set\"\n },\n \"unset\": {\n \"description\": - \"Allows removal of channel watermark.\",\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"path\": - \"youtube/v3/watermarks/unset\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"id\": \"youtube.watermarks.unset\"\n }\n - \ }\n },\n \"liveChatBans\": {\n \"methods\": {\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.liveChatBans.delete\",\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/liveChat/bans\",\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"description\": \"Deletes a chat - ban.\"\n },\n \"insert\": {\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"request\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"path\": \"youtube/v3/liveChat/bans\"\n - \ }\n }\n },\n \"subscriptions\": {\n \"methods\": {\n - \ \"insert\": {\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true\n }\n },\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"response\": {\n \"$ref\": - \"Subscription\"\n },\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\"\n },\n \"delete\": {\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.subscriptions.delete\",\n \"description\": \"Deletes a - resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/subscriptions\"\n - \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"id\": \"youtube.subscriptions.list\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/subscriptions\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"SubscriptionListResponse\"\n },\n \"parameters\": {\n - \ \"order\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"The order of the returned subscriptions\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Sort - by relevance.\",\n \"Sort by order of activity.\",\n \"Sort - alphabetically.\"\n ],\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"default\": \"relevance\"\n },\n - \ \"forChannelId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return the subscriptions to the - subset of these channels that the authenticated user is subscribed to.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the subscriptions with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mySubscribers\": - {\n \"description\": \"Return the subscribers of the given channel - owner.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"type\": \"integer\"\n - \ },\n \"myRecentSubscribers\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the subscriptions of the given channel owner.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/i18nLanguages\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"path\": \"youtube/v3/i18nLanguages\",\n \"id\": - \"youtube.i18nLanguages.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the i18nLanguage resource properties that the API response will include. Set - the parameter value to snippet.\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true\n },\n - \ \"hl\": {\n \"default\": \"en_US\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"description\": - \"Deletes a chat moderator.\",\n \"id\": \"youtube.liveChatModerators.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"DELETE\"\n },\n \"list\": {\n \"response\": - {\n \"$ref\": \"LiveChatModeratorListResponse\"\n },\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"id\": \"youtube.liveChatModerators.list\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"maxResults\": {\n \"location\": \"query\",\n - \ \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"liveChatId\": {\n \"description\": - \"The id of the live chat for which moderators should be returned.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n }\n },\n \"insert\": {\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"id\": \"youtube.liveChatModerators.insert\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"repeated\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveChatModerator\"\n - \ }\n }\n }\n },\n \"tests\": {\n \"methods\": - {\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/tests\",\n \"request\": - {\n \"$ref\": \"TestItem\"\n },\n \"response\": - {\n \"$ref\": \"TestItem\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"POST method.\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.tests.insert\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ }\n },\n \"path\": \"youtube/v3/tests\"\n }\n - \ }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"id\": \"youtube.search.list\",\n \"path\": \"youtube/v3/search\",\n - \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/search\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"relatedToVideoId\": - {\n \"type\": \"string\",\n \"description\": \"Search - related to a resource.\",\n \"location\": \"query\"\n },\n - \ \"forDeveloper\": {\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Restrict the search to only retrieve - videos uploaded using the project id of the authenticated user.\"\n },\n - \ \"videoDefinition\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"description\": \"Filter on the definition - of the videos.\"\n },\n \"safeSearch\": {\n \"enum\": - [\n \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"description\": \"Indicates whether the search results should - include restricted content as well as standard content.\",\n \"default\": - \"moderate\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"type\": - \"string\"\n },\n \"forMine\": {\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"eventType\": - {\n \"description\": \"Filter on the livestream status of the - videos.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ]\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"videoCategoryId\": - {\n \"description\": \"Filter on videos in a specific category.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"publishedAfter\": {\n \"location\": - \"query\",\n \"description\": \"Filter on resources published - after this date.\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\"\n },\n \"publishedBefore\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"format\": - \"google-datetime\",\n \"description\": \"Filter on resources - published before this date.\"\n },\n \"relevanceLanguage\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return results relevant to this language.\"\n - \ },\n \"q\": {\n \"description\": \"Textual - search terms to match.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"videoLicense\": {\n \"enum\": - [\n \"any\",\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"description\": \"Filter on the license of - the videos.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"Return - all videos, regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ]\n },\n \"regionCode\": - {\n \"description\": \"Display the content as seen by viewers - in this country.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"description\": \"Restrict results to a particular - set of resource types from One Platform.\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n },\n \"forContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Search owned by a content owner.\"\n },\n - \ \"videoSyndicated\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"description\": \"Filter on syndicated videos.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": - true\n },\n \"videoDuration\": {\n \"location\": - \"query\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"description\": \"Filter on the duration of the videos.\",\n - \ \"type\": \"string\"\n },\n \"locationRadius\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on distance from the location (specified above).\",\n \"location\": - \"query\"\n },\n \"channelType\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"description\": \"Add - a filter on the channel search.\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ]\n },\n - \ \"videoType\": {\n \"description\": \"Filter on videos - of a specific type.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"topicId\": {\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular topic.\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"default\": - \"5\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"videoCaption\": - {\n \"description\": \"Filter on the presence of captions on - the videos.\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"videoEmbeddable\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all videos, embeddable or - not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"description\": - \"Filter on embeddable videos.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"order\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Resources - are sorted in reverse chronological order based on the date they were created.\",\n - \ \"Resources are sorted from highest to lowest rating.\",\n - \ \"Resources are sorted from highest to lowest number of views.\",\n - \ \"Resources are sorted based on their relevance to the search - query. This is the default value for this parameter.\",\n \"Resources - are sorted alphabetically by title.\",\n \"Channels are sorted - in descending order of their number of uploaded videos.\"\n ],\n - \ \"description\": \"Sort order of the results.\",\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"default\": \"relevance\"\n },\n \"videoDimension\": - {\n \"enumDescriptions\": [\n \"Include both 3D - and non-3D videos in returned results. This is the default value.\",\n \"Restrict - search results to exclude 3D videos.\",\n \"Restrict search - results to only include 3D videos.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Filter on 3d videos.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Filter on resources belonging to this channelId.\",\n \"location\": - \"query\"\n },\n \"location\": {\n \"location\": - \"query\",\n \"description\": \"Filter on location of the video\",\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of search resources\"\n - \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/members\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"hasAccessToLevel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter members in the results set to the - ones that have access to a level.\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"maximum\": \"1000\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\"\n },\n \"filterByMemberChannelId\": {\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mode\": - {\n \"type\": \"string\",\n \"default\": \"all_current\",\n - \ \"description\": \"Parameter that specifies which channel members - to return.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"enum\": - [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ]\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/members\",\n - \ \"id\": \"youtube.members.list\",\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"description\": \"Retrieves - a list of members that match the request criteria for a channel.\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"videos\": - {\n \"methods\": {\n \"insert\": {\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"path\": \"youtube/v3/videos\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"resumable\": {\n \"multipart\": true,\n - \ \"path\": \"/resumable/upload/youtube/v3/videos\"\n },\n - \ \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/videos\"\n }\n },\n \"maxSize\": - \"274877906944\"\n },\n \"id\": \"youtube.videos.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"stabilize\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Should stabilize be applied to the upload.\"\n },\n \"autoLevels\": - {\n \"location\": \"query\",\n \"description\": - \"Should auto-levels be applied to the upload.\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"notifySubscribers\": - {\n \"type\": \"boolean\",\n \"default\": \"true\",\n - \ \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Inserts - a new resource into this collection.\",\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\"\n },\n \"list\": - {\n \"parameters\": {\n \"chart\": {\n \"enum\": - [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Return - the videos that are in the specified chart.\"\n },\n \"maxWidth\": - {\n \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"description\": \"Return the player with maximum height specified - in\",\n \"maximum\": \"8192\",\n \"minimum\": \"72\",\n - \ \"format\": \"int32\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Return - videos with the given ids.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"regionCode\": {\n \"type\": - \"string\",\n \"description\": \"Use a chart that is specific - to the specified region\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"type\": \"string\"\n },\n \"hl\": {\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"description\": - \"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.\",\n \"minimum\": - \"1\",\n \"format\": \"uint32\",\n \"location\": - \"query\"\n },\n \"videoCategoryId\": {\n \"default\": - \"0\",\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Use chart that is specific to the specified - video category\"\n },\n \"locale\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"myRating\": - {\n \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"location\": \"query\"\n },\n \"maxHeight\": - {\n \"format\": \"int32\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"maximum\": \"8192\",\n - \ \"minimum\": \"72\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.videos.list\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"VideoListResponse\"\n },\n \"path\": - \"youtube/v3/videos\"\n },\n \"reportAbuse\": {\n \"description\": - \"Report abuse for a video.\",\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"VideoAbuseReport\"\n },\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [],\n \"id\": \"youtube.videos.reportAbuse\",\n - \ \"path\": \"youtube/v3/videos/reportAbuse\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n }\n - \ },\n \"getRating\": {\n \"response\": {\n \"$ref\": - \"VideoGetRatingResponse\"\n },\n \"description\": \"Retrieves - the ratings that the authorized user gave to a list of specified videos.\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos/getRating\",\n \"flatPath\": - \"youtube/v3/videos/getRating\",\n \"id\": \"youtube.videos.getRating\"\n - \ },\n \"rate\": {\n \"httpMethod\": \"POST\",\n \"description\": - \"Adds a like or dislike rating to a video or removes a rating from a video.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\",\n \"rating\"\n - \ ],\n \"parameters\": {\n \"rating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"location\": \"query\",\n \"required\": - true,\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/videos/rate\",\n \"id\": \"youtube.videos.rate\",\n - \ \"flatPath\": \"youtube/v3/videos/rate\"\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/videos\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.videos.delete\",\n \"parameters\": {\n - \ \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"path\": - \"youtube/v3/videos\"\n },\n \"update\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.update\",\n \"path\": - \"youtube/v3/videos\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n }\n - \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"bind\": {\n \"description\": \"Bind a broadcast to a - stream.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"id\": \"youtube.liveBroadcasts.bind\",\n - \ \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to bind to the stream\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"streamId\": {\n \"location\": - \"query\",\n \"description\": \"Stream to bind, if not set unbind - the current one.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n }\n },\n - \ \"delete\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"description\": \"Delete a given broadcast.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"description\": - \"Broadcast to delete.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insertCuepoint\": {\n \"response\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"request\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Broadcast to insert ads to, - or equivalently `external_video_id` for internal use.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"description\": - \"Insert cuepoints in a broadcast\",\n \"parameterOrder\": [],\n - \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"id\": - \"youtube.liveBroadcasts.insertCuepoint\",\n \"httpMethod\": \"POST\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"update\": {\n \"description\": - \"Updates an existing broadcast for the authenticated user.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"id\": \"youtube.liveBroadcasts.update\",\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\"\n - \ }\n },\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"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, status and statistics.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true\n },\n - \ \"broadcastStatus\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return current live broadcasts.\",\n - \ \"Return broadcasts that have not yet started.\",\n \"Return - broadcasts that have already ended.\"\n ],\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"broadcastType\": {\n \"description\": - \"Return only broadcasts with the selected type.\",\n \"type\": - \"string\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ],\n \"location\": \"query\",\n \"default\": - \"event\"\n },\n \"id\": {\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieve the list of broadcasts - associated with the given channel.\"\n },\n \"insert\": {\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"path\": \"youtube/v3/liveBroadcasts\"\n },\n - \ \"transition\": {\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"description\": - \"Broadcast to transition.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\"\n },\n \"broadcastStatus\": {\n \"required\": - true,\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Start testing the broadcast. YouTube transmits video to - the broadcast's monitor stream. Note that you can only transition a broadcast - to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"description\": \"The status to - which the broadcast is going to transition.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"Transition a broadcast to a given status.\"\n }\n }\n },\n - \ \"videoAbuseReportReasons\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"hl\": {\n \"type\": \"string\",\n \"default\": - \"en-US\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource parts that the API response will include. Supported values are id - and snippet.\"\n }\n },\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"VideoAbuseReportReasonListResponse\"\n },\n \"flatPath\": - \"youtube/v3/videoAbuseReportReasons\"\n }\n }\n },\n \"activities\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"ActivityListResponse\"\n },\n \"parameters\": - {\n \"channelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"publishedBefore\": - {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"home\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"minimum\": - \"0\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"id\": \"youtube.activities.list\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/activities\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"abuseReports\": {\n \"methods\": - {\n \"insert\": {\n \"description\": \"Inserts a new resource - into this collection.\",\n \"response\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"path\": \"youtube/v3/abuseReports\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/abuseReports\",\n \"request\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": - true\n }\n }\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": - \"en_US\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the i18nRegion resource properties that the API - response will include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.i18nRegions.list\",\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"update\": {\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n }\n },\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n }\n },\n \"delete\": - {\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a resource.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.channelSections.delete\",\n \"path\": - \"youtube/v3/channelSections\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"mine\": - {\n \"description\": \"Return the ChannelSections owned by the - authenticated user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"id\": {\n \"description\": - \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the ChannelSections owned - by the specified channel ID.\",\n \"type\": \"string\"\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"description\": - \"Return content in specified language\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"id\": \"youtube.channelSections.list\",\n \"path\": - \"youtube/v3/channelSections\"\n },\n \"insert\": {\n \"path\": - \"youtube/v3/channelSections\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.channelSections.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\"\n }\n }\n },\n - \ \"channels\": {\n \"methods\": {\n \"update\": {\n \"path\": - \"youtube/v3/channels\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Channel\"\n - \ },\n \"id\": \"youtube.channels.update\",\n \"description\": - \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"PUT\"\n },\n \"list\": {\n \"path\": \"youtube/v3/channels\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.channels.list\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"categoryId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the channels within the specified guide category ID.\"\n },\n - \ \"hl\": {\n \"description\": \"Stands for \\\"host - language\\\". Specifies the localization language of the metadata to be filled - into snippet.localized. The field is filled with the default metadata if there - is no localization in the specified language. The parameter value must be - a language code included in the list returned by the i18nLanguages.list method - (e.g. en_US, es_MX).\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": - \"Return the channels with the specified IDs.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"managedByMe\": {\n \"description\": - \"Return the channels managed by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the ids of channels owned by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\"\n },\n \"mySubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channels subscribed to the authenticated - user\"\n },\n \"forUsername\": {\n \"description\": - \"Return the channel associated with a YouTube username.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/channels\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ]\n }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"update\": {\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n - \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ],\n \"description\": \"Deletes a - resource.\",\n \"id\": \"youtube.thirdPartyLinks.delete\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"description\": \"Type - of the link to be deleted.\",\n \"required\": true,\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ]\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"description\": \"Do not use. Required for compatibility.\",\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"linkingToken\": {\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"Delete the partner links with the - given linking token.\",\n \"location\": \"query\"\n }\n - \ }\n },\n \"insert\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.insert\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Inserts - a new resource into this collection.\"\n },\n \"list\": {\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ },\n \"linkingToken\": {\n \"description\": - \"Get a third party link with the given linking token.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"location\": \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"description\": - \"Get a third party link of the given type.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.thirdPartyLinks.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/thirdPartyLinks\"\n }\n }\n },\n \"captions\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"type\": \"string\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the captions for the specified video.\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"Returns the captions with the given IDs for Stubby or Apiary.\"\n }\n - \ },\n \"path\": \"youtube/v3/captions\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ],\n \"response\": - {\n \"$ref\": \"CaptionListResponse\"\n },\n \"id\": - \"youtube.captions.list\"\n },\n \"update\": {\n \"path\": - \"youtube/v3/captions\",\n \"description\": \"Updates an existing - resource.\",\n \"flatPath\": \"youtube/v3/captions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true\n },\n \"sync\": - {\n \"type\": \"boolean\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is on behalf of.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"mediaUpload\": - {\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ },\n \"maxSize\": \"104857600\"\n },\n \"supportsMediaUpload\": - true,\n \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Caption\"\n - \ },\n \"id\": \"youtube.captions.update\"\n },\n - \ \"download\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.download\",\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"useMediaDownloadService\": - true,\n \"supportsMediaDownload\": true,\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"path\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The ID of the caption track to download, required for One Platform.\"\n - \ },\n \"tfmt\": {\n \"description\": \"Convert - the captions into this format. Supported options are sbv, srt, and vtt.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is be on behalf of\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"tlang\": - {\n \"description\": \"tlang is the language code; machine translate - the captions into this language.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Downloads a caption track.\"\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"id\": \"youtube.captions.insert\",\n \"path\": \"youtube/v3/captions\",\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"supportsMediaUpload\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"maxSize\": \"104857600\",\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ }\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"sync\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\"\n }\n - \ }\n },\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.captions.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"path\": \"youtube/v3/captions\"\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/superChatEvents\",\n - \ \"flatPath\": \"youtube/v3/superChatEvents\",\n \"id\": - \"youtube.superChatEvents.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"maxResults\": {\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"1\",\n \"default\": - \"5\",\n \"maximum\": \"50\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the superChatEvent resource parts that the API response - will include. This parameter is currently not supported.\",\n \"repeated\": - true\n },\n \"hl\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Return - rendered funding amounts in specified language.\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n }\n }\n },\n \"youtube\": - {\n \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"parameterOrder\": []\n }\n - \ }\n }\n }\n }\n },\n \"basePath\": \"\",\n \"schemas\": - {\n \"CdnSettings\": {\n \"type\": \"object\",\n \"description\": - \"Brief description of the live stream cdn settings.\",\n \"id\": \"CdnSettings\",\n - \ \"properties\": {\n \"frameRate\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"description\": - \"The frame rate of the inbound video data.\"\n },\n \"ingestionInfo\": - {\n \"description\": \"The ingestionInfo object contains information - that YouTube provides that you need to transmit your RTMP or HTTP stream to - YouTube.\",\n \"$ref\": \"IngestionInfo\"\n },\n \"format\": - {\n \"type\": \"string\",\n \"description\": \"The format - of the video stream that you are sending to Youtube. \",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"ingestionType\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \" The method or protocol used to transmit the - video stream.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"rtmp\",\n \"dash\",\n \"webrtc\",\n \"hls\"\n - \ ]\n },\n \"resolution\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"240p\",\n \"360p\",\n - \ \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\",\n - \ \"2160p\",\n \"variable\"\n ],\n \"description\": - \"The resolution of the inbound video data.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"TestItem\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"featuredPart\": {\n \"type\": - \"boolean\"\n },\n \"gaia\": {\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n },\n \"id\": {\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ }\n },\n \"id\": \"TestItem\"\n },\n \"VideoCategory\": - {\n \"type\": \"object\",\n \"description\": \"A *videoCategory* - resource identifies a category that has been or could be associated with uploaded - videos.\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#videoCategory\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video category.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the video category, including its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n - \ }\n },\n \"id\": \"VideoCategory\"\n },\n \"ThumbnailDetails\": - {\n \"properties\": {\n \"medium\": {\n \"description\": - \"The medium quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"standard\": {\n \"description\": \"The standard - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The default image for this resource.\"\n },\n \"high\": {\n - \ \"$ref\": \"Thumbnail\",\n \"description\": \"The high - quality image for this resource.\"\n },\n \"maxres\": {\n \"description\": - \"The maximum resolution quality image for this resource.\",\n \"$ref\": - \"Thumbnail\"\n }\n },\n \"id\": \"ThumbnailDetails\",\n - \ \"description\": \"Internal representation of thumbnails for a YouTube - resource.\",\n \"type\": \"object\"\n },\n \"LocalizedProperty\": - {\n \"properties\": {\n \"defaultLanguage\": {\n \"description\": - \"The language of the default property.\",\n \"$ref\": \"LanguageTag\"\n - \ },\n \"localized\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LocalizedString\"\n }\n },\n \"default\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LocalizedProperty\",\n - \ \"type\": \"object\"\n },\n \"SubscriptionListResponse\": {\n - \ \"id\": \"SubscriptionListResponse\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of subscriptions - that match the request criteria.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"description\": \"Information about a video that was marked as a - favorite video.\",\n \"id\": \"ActivityContentDetailsFavorite\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that was marked as - a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"Member\": {\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the member.\",\n \"$ref\": - \"MemberSnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n \"default\": - \"youtube#member\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"Member\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageDeletedDetails\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"description\": \"Details about a resource which was added to a - channel.\",\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was added to the channel.\"\n - \ }\n }\n },\n \"LiveStreamHealthStatus\": {\n \"id\": - \"LiveStreamHealthStatus\",\n \"properties\": {\n \"lastUpdateTimeSeconds\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The last time this status was updated (in seconds)\"\n },\n \"configurationIssues\": - {\n \"type\": \"array\",\n \"description\": \"The configurations - issues on this stream\",\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ }\n },\n \"status\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ],\n \"description\": \"The status - code of this stream\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"CommentSnippetAuthorChannelId\": {\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"description\": - \"The id of the author's YouTube channel, if any.\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n - \ \"type\": \"object\"\n },\n \"CommentThreadListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"default\": \"youtube#commentThreadListResponse\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"description\": \"A list of comment threads that match the request - criteria.\",\n \"type\": \"array\"\n }\n },\n \"id\": - \"CommentThreadListResponse\"\n },\n \"VideoCategorySnippet\": {\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube channel that created the video category.\",\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The video category's title.\"\n - \ },\n \"assignable\": {\n \"type\": \"boolean\"\n }\n - \ },\n \"id\": \"VideoCategorySnippet\",\n \"description\": - \"Basic details about a video category, such as its localized title.\",\n - \ \"type\": \"object\"\n },\n \"LiveChatModeratorSnippet\": {\n - \ \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\",\n - \ \"properties\": {\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the live chat this moderator can act - on.\"\n },\n \"moderatorDetails\": {\n \"description\": - \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ }\n }\n },\n \"ChannelSectionTargeting\": {\n \"properties\": - {\n \"regions\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\",\n \"description\": \"The - region the channel section is targeting.\"\n },\n \"languages\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The language - the channel section is targeting.\"\n },\n \"countries\": {\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"The country the channel section is targeting.\",\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"ChannelSectionTargeting\",\n \"description\": - \"ChannelSection targeting setting.\",\n \"type\": \"object\"\n },\n - \ \"ChannelBrandingSettings\": {\n \"type\": \"object\",\n \"description\": - \"Branding properties of a YouTube channel.\",\n \"properties\": {\n - \ \"watch\": {\n \"description\": \"Branding properties for - the watch page.\",\n \"$ref\": \"WatchSettings\"\n },\n \"image\": - {\n \"$ref\": \"ImageSettings\",\n \"description\": \"Branding - properties for branding images.\"\n },\n \"channel\": {\n \"description\": - \"Branding properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n - \ },\n \"hints\": {\n \"description\": \"Additional - experimental branding properties.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n }\n }\n },\n - \ \"id\": \"ChannelBrandingSettings\"\n },\n \"ChannelAuditDetails\": - {\n \"properties\": {\n \"contentIdClaimsGoodStanding\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the channel has - any unresolved claims.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel respects the community guidelines.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"The auditDetails object - encapsulates channel data that is relevant for YouTube Partners during the - audit process.\",\n \"id\": \"ChannelAuditDetails\"\n },\n \"VideoFileDetailsAudioStream\": - {\n \"id\": \"VideoFileDetailsAudioStream\",\n \"type\": \"object\",\n - \ \"description\": \"Information about an audio stream.\",\n \"properties\": - {\n \"channelCount\": {\n \"type\": \"integer\",\n \"description\": - \"The number of audio channels that the stream contains.\",\n \"format\": - \"uint32\"\n },\n \"codec\": {\n \"description\": \"The - audio codec that the stream uses.\",\n \"type\": \"string\"\n },\n - \ \"bitrateBps\": {\n \"type\": \"string\",\n \"description\": - \"The audio stream's bitrate, in bits per second.\",\n \"format\": - \"uint64\"\n },\n \"vendor\": {\n \"type\": \"string\",\n - \ \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\"\n }\n }\n - \ },\n \"CommentSnippet\": {\n \"description\": \"Basic details - about a comment, such as its author and text.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"likeCount\": {\n \"description\": - \"The total number of likes this comment has received.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"textOriginal\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"updatedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the comment was last updated.\",\n \"format\": \"date-time\"\n - \ },\n \"viewerRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"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.\",\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n },\n - \ \"authorChannelId\": {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"textDisplay\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"authorProfileImageUrl\": {\n - \ \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"canRate\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the current viewer can rate this comment.\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comment refers to, if any.\",\n \"type\": - \"string\"\n },\n \"authorChannelUrl\": {\n \"type\": - \"string\",\n \"description\": \"Link to the author's YouTube channel, - if any.\"\n },\n \"moderationStatus\": {\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"parentId\": - {\n \"description\": \"The unique id of the parent comment, only - set for replies.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the comment was originally published.\",\n \"format\": - \"date-time\"\n },\n \"authorDisplayName\": {\n \"description\": - \"The name of the user who posted the comment.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"CommentSnippet\"\n },\n \"LevelDetails\": - {\n \"properties\": {\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The name that should be used when - referring to this level.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LevelDetails\"\n },\n \"VideoSuggestions\": {\n \"type\": - \"object\",\n \"description\": \"Specifies suggestions on how to improve - video content, including encoding hints, tag suggestions, and editor suggestions.\",\n - \ \"id\": \"VideoSuggestions\",\n \"properties\": {\n \"processingWarnings\": - {\n \"description\": \"A list of reasons why YouTube may have difficulty - transcoding the uploaded video or that might result in an erroneous transcoding. - These warnings are generated before YouTube actually processes the uploaded - video file. In addition, they identify issues that are unlikely to cause the - video processing to fail but that might cause problems such as sync issues, - video artifacts, or a missing audio track.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"editorSuggestions\": - {\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Picture brightness levels seem off and could be corrected.\",\n - \ \"The video appears shaky and could be stabilized.\",\n \"Margins - (mattes) detected around the picture could be cropped.\",\n \"The - audio track appears silent and could be swapped with a better quality one.\"\n - \ ],\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ]\n },\n \"description\": \"A list of video - editing operations that might improve the video quality or playback experience - of the uploaded video.\",\n \"type\": \"array\"\n },\n \"tagSuggestions\": - {\n \"description\": \"A list of keyword tags that could be added - to the video's metadata to increase the likelihood that users will locate - your video when searching or browsing on YouTube.\",\n \"items\": - {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n },\n - \ \"type\": \"array\"\n },\n \"processingErrors\": {\n - \ \"items\": {\n \"enumDescriptions\": [\n \"File - contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., - a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file.\",\n \"Document - or text file (e.g., MS Word document).\",\n \"An archive file - (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout - type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of errors that will prevent - YouTube from successfully processing the uploaded video video. These errors - indicate that, regardless of the video's current processing status, eventually, - that status will almost certainly be failed.\"\n },\n \"processingHints\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"The MP4 - file is not streamable, this will slow down the processing. MOOV atom was - not found at the beginning of the file.\",\n \"Probably a better - quality version of the video exists. The video has wide screen aspect ratio, - but is not an HD video.\",\n \"Uploaded video is spherical video.\",\n - \ \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ]\n },\n \"description\": - \"A list of suggestions that may improve YouTube's ability to process the - video.\"\n }\n }\n },\n \"PlaylistItem\": {\n \"id\": - \"PlaylistItem\",\n \"type\": \"object\",\n \"description\": \"A - *playlistItem* resource identifies another resource, such as a video, that - is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the playlist item's privacy status.\",\n \"$ref\": - \"PlaylistItemStatus\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistItemSnippet\",\n \"description\": \"The snippet object - contains basic details about the playlist item, such as its title and position - in the playlist.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"default\": \"youtube#playlistItem\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItem\\\".\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n - \ }\n }\n },\n \"VideoContentDetails\": {\n \"id\": - \"VideoContentDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"projection\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the projection format of the video.\",\n \"enum\": [\n - \ \"rectangular\",\n \"360\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"contentRating\": - {\n \"$ref\": \"ContentRating\",\n \"description\": \"Specifies - the ratings that the video received under various rating schemes.\"\n },\n - \ \"definition\": {\n \"type\": \"string\",\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\",\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ]\n },\n \"hasCustomThumbnail\": - {\n \"description\": \"Indicates whether the video uploader has provided - a custom thumbnail image for the video. This property is only visible to the - video uploader.\",\n \"type\": \"boolean\"\n },\n \"dimension\": - {\n \"type\": \"string\",\n \"description\": \"The value - of dimension indicates whether the video is available in 3D or in 2D.\"\n - \ },\n \"licensedContent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"The value of is_license_content indicates whether - the video is licensed content.\"\n },\n \"countryRestriction\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - countryRestriction object contains information about the countries where a - video is (or is not) viewable.\"\n },\n \"regionRestriction\": - {\n \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"duration\": - {\n \"type\": \"string\",\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"caption\": {\n \"description\": \"The value of captions - indicates whether the video has captions or not.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"true\",\n \"false\"\n ],\n \"type\": - \"string\"\n }\n },\n \"description\": \"Details about the - content of a YouTube Video.\"\n },\n \"VideoMonetizationDetails\": {\n - \ \"properties\": {\n \"access\": {\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\",\n - \ \"$ref\": \"AccessPolicy\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Details about monetization of a YouTube - Video.\",\n \"id\": \"VideoMonetizationDetails\"\n },\n \"MemberListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#memberListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#memberListResponse\\\".\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"description\": - \"A list of members that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Member\"\n },\n \"type\": \"array\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"MemberListResponse\"\n - \ },\n \"LiveChatMessageListResponse\": {\n \"id\": \"LiveChatMessageListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\"\n - \ },\n \"offlineAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the underlying stream went offline.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"pollingIntervalMillis\": {\n \"type\": \"integer\",\n \"description\": - \"The amount of time the client should wait before polling again.\",\n \"format\": - \"uint32\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"LiveChatMessage\"\n }\n - \ }\n }\n },\n \"ResourceId\": {\n \"properties\": {\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"The type of the API resource.\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the referred resource, if that resource - is a channel. This property is only present if the resourceId.kind value is - youtube#channel.\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\"\n }\n },\n \"description\": \"A - resource id is a generic reference that points to another YouTube resource.\",\n - \ \"type\": \"object\",\n \"id\": \"ResourceId\"\n },\n \"LiveStreamStatus\": - {\n \"id\": \"LiveStreamStatus\",\n \"properties\": {\n \"streamStatus\": - {\n \"enum\": [\n \"created\",\n \"ready\",\n - \ \"active\",\n \"inactive\",\n \"error\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"healthStatus\": {\n \"description\": - \"The health status of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n - \ }\n },\n \"description\": \"Brief description of the live - stream status.\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"id\": \"ActivityContentDetailsUpload\",\n \"properties\": - {\n \"videoId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the uploaded video.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Information about the uploaded - video.\",\n \"type\": \"object\"\n },\n \"Caption\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"CaptionSnippet\",\n \"description\": \"The snippet object contains - basic details about the caption.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the caption track.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#caption\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#caption\\\".\"\n }\n },\n - \ \"description\": \"A *caption* resource represents a YouTube caption - track. A caption track is associated with exactly one YouTube video.\",\n - \ \"id\": \"Caption\",\n \"type\": \"object\"\n },\n \"ChannelTopicDetails\": - {\n \"description\": \"Freebase topic information related to the channel.\",\n - \ \"type\": \"object\",\n \"id\": \"ChannelTopicDetails\",\n \"properties\": - {\n \"topicCategories\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\"\n },\n - \ \"topicIds\": {\n \"description\": \"A list of Freebase topic - IDs associated with the channel. You can retrieve information about each topic - using the Freebase Topic API.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n }\n - \ },\n \"CommentThread\": {\n \"id\": \"CommentThread\",\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"replies\": {\n \"description\": \"The replies object contains - a limited number of replies (if any) to the top level comment found in the - snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment thread.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the comment thread and also the top level comment.\",\n \"$ref\": - \"CommentThreadSnippet\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#commentThread\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\"\n - \ }\n },\n \"description\": \"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.\"\n },\n - \ \"MembershipsDurationAtLevel\": {\n \"properties\": {\n \"level\": - {\n \"description\": \"Pricing level ID.\",\n \"type\": - \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\"\n },\n - \ \"memberSince\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the user became a continuous member for the given - level.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"MembershipsDurationAtLevel\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"properties\": {\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level at which the - viever is a member. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n },\n - \ \"userComment\": {\n \"description\": \"The comment added - by the member to this Member Milestone Chat. This field is empty for messages - without a comment from the member.\",\n \"type\": \"string\"\n },\n - \ \"memberMonth\": {\n \"format\": \"uint32\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"type\": \"integer\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"LiveChatSuperChatDetails\": {\n \"properties\": {\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n },\n \"amountMicros\": - {\n \"description\": \"The amount purchased by the user, in micros - (1,750,000 micros = 1.75).\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"tier\": {\n \"description\": \"The - tier in which the amount belongs. Lower amounts belong to lower tiers. The - lowest tier is 1.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this Super Chat event.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatSuperChatDetails\",\n - \ \"type\": \"object\"\n },\n \"ThirdPartyLinkSnippet\": {\n \"id\": - \"ThirdPartyLinkSnippet\",\n \"description\": \"Basic information about - a third party account link, including its type and type-specific information.\",\n - \ \"properties\": {\n \"channelToStoreLink\": {\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"description\": - \"Type of the link named after the entities that are being linked.\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ]\n }\n },\n \"type\": \"object\"\n },\n \"ChannelContentOwnerDetails\": - {\n \"type\": \"object\",\n \"id\": \"ChannelContentOwnerDetails\",\n - \ \"properties\": {\n \"timeLinked\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the channel was linked to the content owner.\"\n },\n - \ \"contentOwner\": {\n \"description\": \"The ID of the content - owner linked to the channel.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"The contentOwnerDetails object encapsulates - channel data that is relevant for YouTube Partners linked with the channel.\"\n - \ },\n \"VideoAbuseReportReasonListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The `visitorId` - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of valid abuse reasons that are used with `video.ReportAbuse`.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"ChannelToStoreLinkDetails\": {\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"properties\": {\n \"storeUrl\": - {\n \"description\": \"Landing page of the store.\",\n \"type\": - \"string\"\n },\n \"merchantId\": {\n \"type\": \"string\",\n - \ \"description\": \"Google Merchant Center id of the store.\",\n - \ \"format\": \"uint64\"\n },\n \"storeName\": {\n \"type\": - \"string\",\n \"description\": \"Name of the store.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveBroadcast\": {\n \"id\": - \"LiveBroadcast\",\n \"description\": \"A *liveBroadcast* resource represents - an event that will be streamed, via live video, on YouTube.\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#liveBroadcast\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the event's status.\",\n \"$ref\": - \"LiveBroadcastStatus\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveBroadcastSnippet\",\n \"description\": \"The snippet object - contains basic details about the event, including its title, description, - start time, and end time.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the broadcast.\"\n }\n }\n - \ },\n \"ChannelStatus\": {\n \"properties\": {\n \"isLinked\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"Privacy status of the channel.\",\n \"type\": \"string\"\n },\n - \ \"longUploadsStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ],\n \"description\": \"The long uploads status of this - channel. See https://support.google.com/youtube/answer/71673 for more information.\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"description\": \"JSON template for the status - part of a channel.\",\n \"id\": \"ChannelStatus\",\n \"type\": \"object\"\n - \ },\n \"VideoProcessingDetailsProcessingProgress\": {\n \"properties\": - {\n \"timeLeftMs\": {\n \"format\": \"uint64\",\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\",\n \"type\": \"string\"\n },\n - \ \"partsProcessed\": {\n \"type\": \"string\",\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\",\n - \ \"format\": \"uint64\"\n },\n \"partsTotal\": {\n - \ \"description\": \"An estimate of the total number of parts that - need to be processed for the video. The number may be updated with more precise - estimates while YouTube processes the video.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n }\n },\n \"description\": - \"Video processing progress and completion time estimate.\",\n \"type\": - \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatUserBannedMessageDetails\",\n \"properties\": - {\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"The details of the user that was banned.\"\n - \ },\n \"banDurationSeconds\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The duration of the ban. This property is only - present if the banType is temporary.\",\n \"type\": \"string\"\n - \ },\n \"banType\": {\n \"description\": \"The type - of ban.\",\n \"type\": \"string\",\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ]\n }\n }\n },\n - \ \"VideoFileDetailsVideoStream\": {\n \"id\": \"VideoFileDetailsVideoStream\",\n - \ \"description\": \"Information about a video stream.\",\n \"properties\": - {\n \"widthPixels\": {\n \"description\": \"The encoded video - content's width in pixels. You can calculate the video's encoding aspect ratio - as width_pixels / height_pixels.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"bitrateBps\": {\n \"description\": - \"The video stream's bitrate, in bits per second.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"aspectRatio\": - {\n \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\"\n },\n \"frameRateFps\": - {\n \"type\": \"number\",\n \"description\": \"The video - stream's frame rate, in frames per second.\",\n \"format\": \"double\"\n - \ },\n \"heightPixels\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The encoded - video content's height in pixels.\"\n },\n \"codec\": {\n \"description\": - \"The video codec that the stream uses.\",\n \"type\": \"string\"\n - \ },\n \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"rotation\": {\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"type\": \"object\"\n - \ },\n \"WatchSettings\": {\n \"id\": \"WatchSettings\",\n \"type\": - \"object\",\n \"properties\": {\n \"featuredPlaylistId\": {\n - \ \"type\": \"string\",\n \"description\": \"An ID that uniquely - identifies a playlist that displays next to the video player.\"\n },\n - \ \"textColor\": {\n \"type\": \"string\",\n \"description\": - \"The background color for the video watch page's branded area.\"\n },\n - \ \"backgroundColor\": {\n \"type\": \"string\",\n \"description\": - \"The text color for the video watch page's branded area.\"\n }\n },\n - \ \"description\": \"Branding properties for the watch. All deprecated.\"\n - \ },\n \"VideoTopicDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"topicIds\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Freebase - topic IDs that are centrally associated with the video. These are topics that - are centrally featured in the video, and it can be said that the video is - mainly about each of these. You can retrieve information about each topic - using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"type\": \"array\"\n },\n \"relevantTopicIds\": - {\n \"type\": \"array\",\n \"description\": \"Similar to - topic_id, except that these topics are merely relevant to the video. These - are topics that may be mentioned in, or appear in the video. You can retrieve - information about each topic using Freebase Topic API.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicCategories\": - {\n \"description\": \"A list of Wikipedia URLs that provide a high-level - description of the video's content.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"description\": - \"Freebase topic information related to the video.\",\n \"id\": \"VideoTopicDetails\"\n - \ },\n \"ActivityContentDetailsLike\": {\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"type\": \"object\",\n \"description\": \"Information about a - resource that received a positive (like) rating.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the rated resource.\",\n \"$ref\": - \"ResourceId\"\n }\n }\n },\n \"ActivityContentDetailsSubscription\": - {\n \"type\": \"object\",\n \"description\": \"Information about - a channel that a user subscribed to.\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that the user subscribed to.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"ChannelConversionPing\": {\n \"id\": \"ChannelConversionPing\",\n - \ \"type\": \"object\",\n \"description\": \"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.\",\n \"properties\": - {\n \"context\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ],\n \"description\": \"Defines the context of the ping.\",\n - \ \"type\": \"string\"\n },\n \"conversionUrl\": {\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ActivityListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"default\": \"youtube#activityListResponse\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Activity\"\n - \ },\n \"type\": \"array\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n },\n \"id\": \"ActivityListResponse\"\n - \ },\n \"LiveChatModeratorListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatModeratorListResponse\",\n \"properties\": {\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": - \"A list of moderators that match the request criteria.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n }\n }\n },\n \"Thumbnail\": - {\n \"description\": \"A thumbnail is an image representing a YouTube - resource.\",\n \"properties\": {\n \"width\": {\n \"format\": - \"uint32\",\n \"description\": \"(Optional) Width of the thumbnail - image.\",\n \"type\": \"integer\"\n },\n \"url\": {\n - \ \"description\": \"The thumbnail image's URL.\",\n \"type\": - \"string\"\n },\n \"height\": {\n \"format\": \"uint32\",\n - \ \"description\": \"(Optional) Height of the thumbnail image.\",\n - \ \"type\": \"integer\"\n }\n },\n \"id\": \"Thumbnail\",\n - \ \"type\": \"object\"\n },\n \"CaptionListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#captionListResponse\\\".\",\n \"default\": - \"youtube#captionListResponse\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Caption\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of captions that match the request criteria.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"CaptionListResponse\"\n - \ },\n \"LiveStream\": {\n \"type\": \"object\",\n \"description\": - \"A live stream describes a live ingestion point.\",\n \"properties\": - {\n \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"LiveStreamContentDetails\",\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveStreamSnippet\",\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveStream\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveStream\\\".\",\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about live stream's status.\",\n \"$ref\": - \"LiveStreamStatus\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the stream.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"LiveStream\"\n - \ },\n \"LiveChatMembershipGiftingDetails\": {\n \"properties\": - {\n \"giftMembershipsCount\": {\n \"type\": \"integer\",\n - \ \"description\": \"The number of gift memberships purchased by the - user.\",\n \"format\": \"int32\"\n },\n \"giftMembershipsLevelName\": - {\n \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n \"LiveChatMessageSnippet\": - {\n \"description\": \"Next ID: 33\",\n \"properties\": {\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"hasDisplayContent\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the message has display content that should be displayed to users.\"\n - \ },\n \"displayMessage\": {\n \"type\": \"string\",\n - \ \"description\": \"Contains a string that can be displayed to the - user. If this field is not present the message is silent, at the moment only - messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\"\n },\n \"authorChannelId\": - {\n \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\",\n \"type\": \"string\"\n },\n \"textMessageDetails\": - {\n \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\",\n \"$ref\": \"LiveChatTextMessageDetails\"\n - \ },\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"membershipGiftingDetails\": {\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\",\n \"$ref\": \"LiveChatMembershipGiftingDetails\"\n - \ },\n \"memberMilestoneChatDetails\": {\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\",\n \"description\": \"Details - about the Member Milestone Chat event, this is only set if the type is 'memberMilestoneChatEvent'.\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\",\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"type\": \"string\"\n },\n \"superStickerDetails\": - {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\"\n - \ },\n \"giftMembershipReceivedDetails\": {\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\",\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n - \ \"description\": \"Details about the Super Chat event, this is only - set if the type is 'superChatEvent'.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the message was orignally - published.\"\n },\n \"fanFundingEventDetails\": {\n \"$ref\": - \"LiveChatFanFundingEventDetails\",\n \"description\": \"Details - about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n - \ },\n \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n - \ \"description\": \"Details about the New Member Announcement event, - this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" - is the new term for \\\"sponsor\\\".\"\n }\n },\n \"id\": - \"LiveChatMessageSnippet\",\n \"type\": \"object\"\n },\n \"I18nRegionListResponse\": - {\n \"type\": \"object\",\n \"id\": \"I18nRegionListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"items\": {\n \"items\": {\n - \ \"$ref\": \"I18nRegion\"\n },\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\",\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegionListResponse\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ImageSettings\": {\n \"id\": - \"ImageSettings\",\n \"properties\": {\n \"bannerTvLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size low resolution (854x480).\"\n },\n \"bannerImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n },\n \"backgroundImageUrl\": {\n - \ \"description\": \"The URL for the background image shown on the - video watch page. The image should be 1200px by 615px, with a maximum file - size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerMobileExtraHdImageUrl\": {\n \"description\": \"Banner - image. Mobile size high resolution (1440x395).\",\n \"type\": \"string\"\n - \ },\n \"largeBrandedBannerImageUrl\": {\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerExternalUrl\": {\n \"description\": - \"This is generated when a ChannelBanner.Insert request has succeeded for - the given channel.\",\n \"type\": \"string\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size low resolution (1138x188).\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": - {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n - \ \"type\": \"string\"\n },\n \"trackingImageUrl\": - {\n \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size medium/high resolution (960x263).\"\n },\n \"bannerTvImageUrl\": - {\n \"description\": \"Banner image. TV size extra high resolution - (2120x1192).\",\n \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size (640x175).\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"bannerMobileHdImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. Mobile size high resolution (1280x360).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size medium resolution (1280x720).\"\n },\n \"bannerTabletImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Branding properties for images associated with the - channel.\"\n },\n \"LiveChatMessageAuthorDetails\": {\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube channel ID.\"\n },\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The channel's display name.\"\n - \ },\n \"isChatSponsor\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author is a sponsor of the live chat.\"\n - \ },\n \"isChatModerator\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author is a moderator of the live - chat.\"\n },\n \"channelUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's URL.\"\n },\n \"isChatOwner\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is the owner of the live chat.\"\n },\n \"isVerified\": - {\n \"description\": \"Whether the author's identity has been verified - by YouTube.\",\n \"type\": \"boolean\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageAuthorDetails\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n \"description\": - \"Details about a resource which is being promoted.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the promoted video.\",\n \"type\": - \"string\"\n },\n \"clickTrackingUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user clicked through - on this promoted item.\",\n \"type\": \"string\"\n },\n \"customCtaButtonText\": - {\n \"type\": \"string\",\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\"\n },\n \"descriptionText\": {\n \"description\": - \"The text description to accompany the promoted item.\",\n \"type\": - \"string\"\n },\n \"impressionUrl\": {\n \"type\": - \"array\",\n \"description\": \"The list of impression URLs. The - client should ping all of these URLs to indicate that the user was shown this - promoted item.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n },\n \"adTag\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should fetch to request a - promoted item.\"\n },\n \"creativeViewUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\",\n \"type\": \"string\"\n },\n \"forecastingUrl\": - {\n \"description\": \"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.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"destinationUrl\": {\n \"description\": \"The URL the client - should direct the user to, if the user chooses to visit the advertiser's website.\",\n - \ \"type\": \"string\"\n },\n \"ctaType\": {\n \"enum\": - [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"description\": \"The type of call-to-action, a message - to the user indicating action that can be taken.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelSectionLocalization\": - {\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for channel section's title.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"ChannelSection - localization setting\",\n \"id\": \"ChannelSectionLocalization\"\n },\n - \ \"LiveChatBanSnippet\": {\n \"id\": \"LiveChatBanSnippet\",\n \"properties\": - {\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The chat this ban is pertinent to.\"\n },\n \"type\": {\n - \ \"description\": \"The type of ban.\",\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"type\": - \"string\"\n },\n \"banDurationSeconds\": {\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n }\n },\n \"type\": - \"object\"\n },\n \"MemberSnippet\": {\n \"properties\": {\n \"memberDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the member.\"\n },\n \"membershipsDetails\": - {\n \"$ref\": \"MembershipsDetails\",\n \"description\": - \"Details about the user's membership.\"\n },\n \"creatorChannelId\": - {\n \"description\": \"The id of the channel that's offering memberships.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"MemberSnippet\"\n },\n \"ChannelContentDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"type\": \"object\",\n \"properties\": {\n \"watchLater\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch later playlist. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"uploads\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use - the videos.insert method to upload new videos and the videos.delete method - to delete previously uploaded videos.\",\n \"type\": \"string\"\n - \ },\n \"favorites\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"watchHistory\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"likes\": {\n \"description\": \"The ID of the playlist - that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n }\n }\n }\n },\n \"id\": - \"ChannelContentDetails\",\n \"description\": \"Details about the content - of a channel.\"\n },\n \"ChannelProfileDetails\": {\n \"id\": \"ChannelProfileDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The channel's display name.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube channel ID.\"\n }\n - \ }\n },\n \"I18nLanguageSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"I18nLanguageSnippet\",\n \"description\": \"Basic details - about an i18n language, such as language code and human-readable name.\",\n - \ \"properties\": {\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the language in the - language itself.\"\n },\n \"hl\": {\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ThirdPartyLink\": {\n \"description\": - \"A *third party account link* resource represents a link between a YouTube - account or a channel and an account on a third-party service.\",\n \"type\": - \"object\",\n \"id\": \"ThirdPartyLink\",\n \"properties\": {\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#thirdPartyLink\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"linkingToken\": {\n \"type\": - \"string\",\n \"description\": \"The linking_token identifies a YouTube - account and channel with which the third party account is linked.\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the status of the link.\",\n \"$ref\": \"ThirdPartyLinkStatus\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the third- party account link.\"\n }\n }\n },\n \"Subscription\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"subscriberSnippet\": {\n \"description\": \"The subscriberSnippet - object contains basic details about the subscriber.\",\n \"$ref\": - \"SubscriptionSubscriberSnippet\"\n },\n \"contentDetails\": - {\n \"$ref\": \"SubscriptionContentDetails\",\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the subscription.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"default\": \"youtube#subscription\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the subscription, including its title and the channel that the user - subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n }\n - \ },\n \"id\": \"Subscription\",\n \"type\": \"object\",\n \"description\": - \"A *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\"\n },\n \"TestItemTestItemSnippet\": - {\n \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\",\n - \ \"type\": \"object\"\n },\n \"SuperStickerMetadata\": {\n \"type\": - \"object\",\n \"properties\": {\n \"altTextLanguage\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the localization language - in which the alt text is returned.\"\n },\n \"altText\": {\n - \ \"description\": \"Internationalized alt text that describes the - sticker image and any animation associated with it.\",\n \"type\": - \"string\"\n },\n \"stickerId\": {\n \"type\": \"string\",\n - \ \"description\": \"Unique identifier of the Super Sticker. This - is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\"\n }\n },\n \"id\": \"SuperStickerMetadata\"\n - \ },\n \"ChannelSection\": {\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#channelSection\\\".\",\n \"default\": - \"youtube#channelSection\",\n \"type\": \"string\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n }\n },\n - \ \"targeting\": {\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\",\n \"$ref\": - \"ChannelSectionTargeting\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel section.\"\n },\n \"contentDetails\": {\n - \ \"$ref\": \"ChannelSectionContentDetails\",\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"ChannelSectionSnippet\",\n \"description\": \"The snippet object - contains basic details about the channel section, such as its type, style - and title.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelSection\"\n },\n \"VideoFileDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"fileName\": {\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\",\n \"type\": \"string\"\n },\n - \ \"fileType\": {\n \"enumDescriptions\": [\n \"Known - video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an - MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"description\": \"The uploaded file's type as detected by YouTube's - video processing engine. Currently, YouTube only processes video files, but - this field is present whether a video file or another type of file was uploaded.\",\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"type\": \"string\"\n },\n - \ \"videoStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of video streams contained in the uploaded - video file. Each item in the list contains detailed metadata about a video - stream.\"\n },\n \"fileSize\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The uploaded file's size in bytes. This field - is present whether a video file or another type of file was uploaded.\",\n - \ \"type\": \"string\"\n },\n \"audioStreams\": {\n - \ \"description\": \"A list of audio streams contained in the uploaded - video file. Each item in the list contains detailed metadata about an audio - stream.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsAudioStream\"\n }\n },\n \"bitrateBps\": - {\n \"description\": \"The uploaded video file's combined (video - and audio) bitrate in bits per second.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"durationMs\": {\n - \ \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The length of the uploaded video in milliseconds.\"\n },\n \"container\": - {\n \"type\": \"string\",\n \"description\": \"The uploaded - video file's container format.\"\n },\n \"creationTime\": {\n - \ \"description\": \"The date and time when the uploaded video file - was created. The value is specified in ISO 8601 format. Currently, the following - ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Describes original video file - properties, including technical details about audio and video streams, but - also metadata information like content length, digitization time, or geotagging - information.\",\n \"id\": \"VideoFileDetails\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"type\": \"object\",\n \"id\": \"ThirdPartyLinkListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n }\n }\n - \ },\n \"ContentRating\": {\n \"type\": \"object\",\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\",\n \"properties\": {\n \"nkclvRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ]\n },\n \"cscfRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n - \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"description\": \"The video's rating from Luxembourg's - Commission de surveillance de la classification des films (CSCF).\"\n },\n - \ \"mdaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG13\",\n \"NC16\",\n - \ \"M18\",\n \"R21\",\n \"\"\n ],\n - \ \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\"\n },\n \"mpaaRating\": - {\n \"description\": \"The video's Motion Picture Association of - America (MPAA) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ]\n },\n \"rteRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"enum\": [\n - \ \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\"\n - \ },\n \"tvpgRating\": {\n \"description\": \"The video's - TV Parental Guidelines (TVPG) rating.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ],\n \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n - \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n - \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ]\n },\n \"cicfRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from the Commission de Contr\xF4le des Films (Belgium).\",\n \"enum\": - [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ]\n },\n - \ \"catvRating\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ]\n },\n - \ \"mocRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"T\",\n \"7\",\n \"12\",\n - \ \"15\",\n \"18\",\n \"X\",\n \"Banned\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ]\n },\n \"cncRating\": {\n \"enum\": [\n - \ \"cncUnspecified\",\n \"cncT\",\n \"cnc10\",\n - \ \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n \"cncE\",\n - \ \"cncInterdiction\",\n \"cncUnrated\"\n ],\n - \ \"description\": \"Rating system in France - Commission de classification - cinematographique\",\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"E\",\n \"interdiction\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"ytRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"A rating that YouTube uses to identify - age-restricted content.\",\n \"type\": \"string\",\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ]\n - \ },\n \"djctqRatingReasons\": {\n \"items\": {\n \"enum\": - [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Brazil - rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia - (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n - \ \"Conte\xFAdo sexual (Sexual content)\",\n \"Nudez - (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo Expl\xEDcito - (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ]\n },\n \"description\": \"Reasons - that explain why the video received its DJCQT (Brazil) rating.\",\n \"type\": - \"array\"\n },\n \"chfilmRating\": {\n \"description\": - \"The video's rating in Switzerland.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ]\n },\n \"ifcoRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n - \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n - \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n - \ \"ifco18\",\n \"ifcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\"\n },\n \"fcoRating\": - {\n \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"I\",\n - \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Hong Kong's Office for Film, Newspaper and Article Administration.\"\n - \ },\n \"fpbRating\": {\n \"description\": \"The video's - rating from South Africa's Film and Publication Board.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ],\n \"enum\": [\n - \ \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n - \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n - \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ]\n },\n \"bmukkRating\": {\n \"enum\": [\n - \ \"bmukkUnspecified\",\n \"bmukkAa\",\n \"bmukk6\",\n - \ \"bmukk8\",\n \"bmukk10\",\n \"bmukk12\",\n - \ \"bmukk14\",\n \"bmukk16\",\n \"bmukkUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\"\n },\n \"smaisRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"L\",\n \"7\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Iceland.\",\n \"enum\": - [\n \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n - \ \"smais12\",\n \"smais14\",\n \"smais16\",\n - \ \"smais18\",\n \"smaisUnrated\"\n ]\n },\n - \ \"anatelRating\": {\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ],\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\"\n },\n \"ecbmctRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"Rating system in Turkey - Evaluation - and Classification Board of the Ministry of Culture and Tourism\",\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ]\n },\n \"icaaRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"APTA\",\n \"7\",\n \"12\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X\",\n \"\"\n - \ ],\n \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"enum\": - [\n \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n - \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n - \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n - \ ]\n },\n \"cbfcRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Central Board of Film Certification - (CBFC - India) rating.\",\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ]\n },\n \"czfilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in the Czech Republic.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"12\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ]\n },\n - \ \"acbRating\": {\n \"enum\": [\n \"acbUnspecified\",\n - \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n - \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n - \ \"acbR18plus\",\n \"acbUnrated\"\n ],\n \"description\": - \"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.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"Programs that have been given a P classification - by the Australian Communications and Media Authority. These programs are intended - for preschool children.\",\n \"Programs that have been given a - C classification by the Australian Communications and Media Authority. These - programs are intended for children (other than preschool children) who are - younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"mcstRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"P\",\n \"0\",\n \"C13\",\n \"C16\",\n - \ \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n \"\"\n - \ ],\n \"description\": \"The video's rating system for Vietnam - - MCST\",\n \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ]\n },\n \"resorteviolenciaRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Venezuela.\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ]\n },\n \"chvrsRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ],\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ]\n },\n - \ \"incaaRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"description\": - \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\",\n \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n - \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n - \ \"incaaC\",\n \"incaaUnrated\"\n ]\n },\n - \ \"pefilmRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Peru.\"\n - \ },\n \"kmrbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"description\": \"The video's Korea - Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. - The KMRB rates videos in South Korea.\",\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"moctwRating\": - {\n \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Taiwan's - Ministry of Culture (\u6587\u5316\u90E8).\"\n },\n \"cceRating\": - {\n \"description\": \"The video's rating from Portugal's Comiss\xE3o - de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"4\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\",\n \"14\"\n ],\n \"enum\": [\n - \ \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n - \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n - \ \"cceUnrated\",\n \"cceM14\"\n ]\n },\n - \ \"nbcRating\": {\n \"description\": \"The video's rating - from the Maldives National Bureau of Classification.\",\n \"enum\": - [\n \"nbcUnspecified\",\n \"nbcG\",\n \"nbcPg\",\n - \ \"nbc12plus\",\n \"nbc15plus\",\n \"nbc18plus\",\n - \ \"nbc18plusr\",\n \"nbcPu\",\n \"nbcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n - \ \"18+R\",\n \"PU\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"cccRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ]\n },\n \"bfvcRating\": {\n \"enum\": [\n - \ \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Thailand's Board of Film and Video Censors.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ]\n },\n - \ \"ilfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Israel.\",\n \"enum\": - [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n - \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ]\n },\n \"mekuRating\": - {\n \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual - Institute).\"\n },\n \"fmocRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ],\n \"description\": - \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\"\n },\n \"lsfRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n - \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n - \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Indonesia's - Lembaga Sensor Film.\"\n },\n \"cnaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Romania's CONSILIUL NATIONAL - AL AUDIOVIZUALULUI (CNA).\",\n \"type\": \"string\",\n \"enum\": - [\n \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n - \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ]\n },\n \"mpaatRating\": - {\n \"type\": \"string\",\n \"description\": \"The rating - system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ]\n },\n - \ \"smsaRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"enum\": [\n - \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Statens - medier\xE5d (Sweden's National Media Council).\"\n },\n \"kijkwijzerRating\": - {\n \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ]\n },\n \"bbfcRating\": {\n \"enum\": [\n - \ \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's British Board of Film Classification (BBFC) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ]\n },\n \"nbcplRating\": {\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The video's rating in Poland.\",\n \"type\": \"string\"\n },\n - \ \"russiaRating\": {\n \"description\": \"The video's National - Film Registry of the Russian Federation (MKRF - Russia) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ]\n },\n \"mtrcbRating\": {\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"R-13\",\n \"R-16\",\n - \ \"R-18\",\n \"X\",\n \"\"\n ],\n - \ \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"fskRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.\",\n - \ \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ]\n },\n \"csaRating\": {\n \"description\": - \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, - which rates broadcast content.\",\n \"type\": \"string\",\n \"enum\": - [\n \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n - \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n - \ \"csaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ]\n },\n \"grfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Greece.\",\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"nfvcbRating\": {\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"18\",\n \"RE\",\n \"\"\n - \ ],\n \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ]\n },\n \"oflcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ],\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\",\n \"type\": \"string\",\n \"enum\": [\n \"oflcUnspecified\",\n - \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n - \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n - \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n - \ \"oflcRp16\",\n \"oflcRp18\"\n ]\n },\n - \ \"djctqRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's Departamento de Justi\xE7a, - Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n - \ \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ]\n },\n \"mccypRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Danish Film Institute's - (Det Danske Filminstitut) Media Council for Children and Young People.\"\n - \ },\n \"nmcRating\": {\n \"description\": \"The National - Media Council ratings system for United Arab Emirates.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n - \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n - \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n - \ ]\n },\n \"egfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"description\": \"The - video's rating in Egypt.\",\n \"type\": \"string\"\n },\n - \ \"kfcbRating\": {\n \"description\": \"The video's rating - from the Kenya Film Classification Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n - \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n - \ \"kfcbUnrated\"\n ]\n },\n \"mccaaRating\": - {\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n - \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n - \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n - \ \"mccaa18\",\n \"mccaaUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Malta's Film Age-Classification Board.\"\n },\n \"skfilmRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ],\n \"description\": - \"The video's rating in Slovakia.\"\n },\n \"mibacRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"description\": \"The - video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali e - del Turismo (Italy).\"\n },\n \"medietilsynetRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n - \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Medietilsynet, the Norwegian Media Authority.\"\n },\n - \ \"rtcRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"A\",\n \"B\",\n \"B15\",\n - \ \"C\",\n \"D\",\n \"\"\n ],\n \"enum\": - [\n \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ]\n },\n \"fpbRatingReasons\": - {\n \"description\": \"Reasons that explain why the video received - its FPB (South Africa) rating.\",\n \"type\": \"array\",\n \"items\": - {\n \"enumDescriptions\": [\n \"\",\n \"South - Africa rating content descriptors.\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n - \ \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ]\n }\n - \ },\n \"nfrcRating\": {\n \"description\": \"The video's - rating from the Bulgarian National Film Center.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"eirinRating\": - {\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"The video's Eirin (\u6620\u502B) - rating. Eirin is the Japanese rating system.\"\n },\n \"agcomRating\": - {\n \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ],\n \"description\": \"The video's rating from Italy's - Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"rcnofRating\": {\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\"\n },\n \"fcbmRating\": {\n - \ \"description\": \"The video's rating from Malaysia's Film Censorship - Board.\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ],\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n - \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n - \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n - \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"catvfrRating\": {\n \"enum\": [\n - \ \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n - \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n - \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"eefilmRating\": - {\n \"description\": \"The video's rating in Estonia.\",\n \"enum\": - [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n \"eefilmL\",\n - \ \"eefilmMs6\",\n \"eefilmK6\",\n \"eefilmMs12\",\n - \ \"eefilmK12\",\n \"eefilmK14\",\n \"eefilmK16\",\n - \ \"eefilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ]\n },\n \"menaMpaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ],\n \"description\": \"The rating - system for MENA countries, a clone of MPAA. It is needed to prevent titles - go live w/o additional QC check, since some of them can be inappropriate for - the countries at all. See b/33408548 for more details.\",\n \"enum\": - [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n - \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"id\": - \"ContentRating\"\n },\n \"ThirdPartyLinkStatus\": {\n \"description\": - \"The third-party link status object contains information about the status - of the link.\",\n \"type\": \"object\",\n \"properties\": {\n \"linkStatus\": - {\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"id\": - \"ThirdPartyLinkStatus\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"id\": \"ActivityContentDetailsBulletin\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Details about - a channel bulletin post.\"\n },\n \"SearchResult\": {\n \"properties\": - {\n \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n },\n \"kind\": - {\n \"default\": \"youtube#searchResult\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about a search result, such as its title or description. For - example, if the search result is a video, then the title will be the video's - title and the description will be the video's description.\",\n \"$ref\": - \"SearchResultSnippet\"\n }\n },\n \"id\": \"SearchResult\",\n - \ \"type\": \"object\",\n \"description\": \"A search result contains - information about a YouTube video, channel, or playlist that matches the search - parameters specified in an API request. While a search result points to a - uniquely identifiable resource, like a video, it does not have its own persistent - data.\"\n },\n \"ChannelSectionContentDetails\": {\n \"properties\": - {\n \"channels\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"The channel ids for type multiple_channels.\"\n },\n \"playlists\": - {\n \"description\": \"The playlist ids for type single_playlist - and multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Details about a channelsection, including playlists and channels.\",\n \"id\": - \"ChannelSectionContentDetails\"\n },\n \"VideoProjectDetails\": {\n - \ \"id\": \"VideoProjectDetails\",\n \"type\": \"object\",\n \"description\": - \"DEPRECATED. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"properties\": {}\n },\n \"ChannelLocalization\": {\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel's title.\"\n },\n \"description\": - {\n \"description\": \"The localized strings for channel's description.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ChannelLocalization\",\n - \ \"type\": \"object\",\n \"description\": \"Channel localization - setting\"\n },\n \"VideoStatistics\": {\n \"id\": \"VideoStatistics\",\n - \ \"description\": \"Statistics about the video, such as the number of - times the video was viewed or liked.\",\n \"type\": \"object\",\n \"properties\": - {\n \"commentCount\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of comments for the video.\"\n - \ },\n \"dislikeCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of users who have indicated that they - disliked the video by giving it a negative rating.\",\n \"type\": - \"string\"\n },\n \"viewCount\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The number of - times the video has been viewed.\"\n },\n \"favoriteCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of users who currently have the video marked as a favorite video.\",\n \"type\": - \"string\"\n },\n \"likeCount\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of users who have indicated that they - liked the video by giving it a positive rating.\",\n \"format\": - \"uint64\"\n }\n }\n },\n \"VideoRecordingDetails\": {\n - \ \"id\": \"VideoRecordingDetails\",\n \"type\": \"object\",\n \"description\": - \"Recording information associated with the video.\",\n \"properties\": - {\n \"recordingDate\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the video - was recorded.\"\n },\n \"locationDescription\": {\n \"type\": - \"string\",\n \"description\": \"The text description of the location - where the video was recorded.\"\n },\n \"location\": {\n \"$ref\": - \"GeoPoint\",\n \"description\": \"The geolocation information associated - with the video.\"\n }\n }\n },\n \"PlaylistContentDetails\": - {\n \"id\": \"PlaylistContentDetails\",\n \"properties\": {\n \"itemCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n },\n \"type\": - \"object\"\n },\n \"CommentThreadSnippet\": {\n \"properties\": - {\n \"isPublic\": {\n \"description\": \"Whether the thread - (and therefore all its comments) is visible to all YouTube users.\",\n \"type\": - \"boolean\"\n },\n \"canReply\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n },\n \"topLevelComment\": {\n \"description\": - \"The top level comment of this thread.\",\n \"$ref\": \"Comment\"\n - \ },\n \"totalReplyCount\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The total number of replies (not including the - top level comment).\",\n \"type\": \"integer\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Basic details - about a comment thread.\",\n \"id\": \"CommentThreadSnippet\"\n },\n - \ \"SuperChatEventSnippet\": {\n \"type\": \"object\",\n \"id\": - \"SuperChatEventSnippet\",\n \"properties\": {\n \"currency\": - {\n \"description\": \"The currency in which the purchase was made. - ISO 4217.\",\n \"type\": \"string\"\n },\n \"isSuperStickerEvent\": - {\n \"type\": \"boolean\",\n \"description\": \"True if - this event is a Super Sticker event.\"\n },\n \"channelId\": - {\n \"description\": \"Channel id where the event occurred.\",\n - \ \"type\": \"string\"\n },\n \"displayString\": {\n - \ \"description\": \"A rendered string that displays the purchase - amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the - given language.\",\n \"type\": \"string\"\n },\n \"createdAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the event occurred.\"\n - \ },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The purchase - amount, in micros of the purchase currency. e.g., 1 is represented as 1000000.\"\n - \ },\n \"messageType\": {\n \"type\": \"integer\",\n - \ \"description\": \"The tier for the paid message, which is based - on the amount of money spent to purchase the message.\",\n \"format\": - \"uint32\"\n },\n \"commentText\": {\n \"description\": - \"The text contents of the comment left by the user.\",\n \"type\": - \"string\"\n },\n \"superStickerMetadata\": {\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"supporterDetails\": {\n \"description\": \"Details - about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n }\n - \ }\n },\n \"VideoAbuseReportReason\": {\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID of this abuse report - reason.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#videoAbuseReportReason\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n }\n },\n \"description\": \"A - `__videoAbuseReportReason__` resource identifies a reason that a video could - be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\",\n - \ \"id\": \"VideoAbuseReportReason\",\n \"type\": \"object\"\n },\n - \ \"PlaylistItemListResponse\": {\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"type\": \"string\",\n \"default\": - \"youtube#playlistItemListResponse\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of playlist items that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n - \ }\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistItemListResponse\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"gifterChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the user that made the - membership gifting purchase. This matches the `snippet.authorChannelId` of - the associated membership gifting message.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"AbuseReport\": {\n \"type\": \"object\",\n \"id\": - \"AbuseReport\",\n \"properties\": {\n \"relatedEntities\": {\n - \ \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n - \ \"type\": \"array\"\n },\n \"abuseTypes\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"AbuseType\"\n - \ }\n },\n \"description\": {\n \"type\": \"string\"\n - \ },\n \"subject\": {\n \"$ref\": \"Entity\"\n }\n - \ }\n },\n \"AccessPolicy\": {\n \"description\": \"Rights - management policy for YouTube resources.\",\n \"properties\": {\n \"allowed\": - {\n \"description\": \"The value of allowed indicates whether the - access to the policy is allowed or denied by default.\",\n \"type\": - \"boolean\"\n },\n \"exception\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the default policy do not apply.\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"id\": \"AccessPolicy\",\n - \ \"type\": \"object\"\n },\n \"CommentListResponse\": {\n \"properties\": - {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of comments that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n }\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"default\": \"youtube#commentListResponse\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"CommentListResponse\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamContentDetails\": {\n - \ \"description\": \"Detailed settings of a stream.\",\n \"properties\": - {\n \"isReusable\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \"\n },\n \"closedCaptionsIngestionUrl\": {\n \"description\": - \"The ingestion URL where the closed captions of this stream are sent.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamContentDetails\"\n },\n \"MembershipsLevelSnippet\": - {\n \"properties\": {\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n },\n \"levelDetails\": {\n \"$ref\": \"LevelDetails\",\n - \ \"description\": \"Details about the pricing level.\"\n }\n - \ },\n \"id\": \"MembershipsLevelSnippet\",\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"Information that identifies the recommended resource.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"reason\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"reasonUnspecified\",\n \"videoFavorited\",\n - \ \"videoLiked\",\n \"videoWatched\"\n ],\n - \ \"description\": \"The reason that the resource is recommended to - the user.\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the recommended resource.\"\n },\n \"seedResourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The seedResourceId - object contains information about the resource that caused the recommendation.\"\n - \ }\n }\n },\n \"MembershipsDuration\": {\n \"id\": - \"MembershipsDuration\",\n \"properties\": {\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The cumulative time the user has been a member across all levels in complete - months (the time is rounded down to the nearest integer).\"\n },\n - \ \"memberSince\": {\n \"description\": \"The date and time - when the user became a continuous member across all levels.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"SearchResultSnippet\": - {\n \"properties\": {\n \"publishedAt\": {\n \"description\": - \"The creation date and time of the resource that the search result identifies.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"liveBroadcastContent\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"description\": \"It indicates if the resource (video - or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" - if there is not any upcoming/active live broadcasts.\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"A description - of the search result.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The title of the search result.\"\n - \ },\n \"channelId\": {\n \"description\": \"The value - that YouTube uses to uniquely identify the channel that published the resource - that the search result identifies.\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"A map of thumbnail images associated with the search result. 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.\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"The title of the channel that published the resource that the search result - identifies.\"\n }\n },\n \"id\": \"SearchResultSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a search result, including title, description and thumbnails of the item referenced - by the search result.\"\n },\n \"PropertyValue\": {\n \"properties\": - {\n \"value\": {\n \"description\": \"The property's value.\",\n - \ \"type\": \"string\"\n },\n \"property\": {\n \"description\": - \"A property.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"A pair Property / Value.\",\n \"type\": \"object\",\n \"id\": - \"PropertyValue\"\n },\n \"MembershipsDetails\": {\n \"type\": - \"object\",\n \"id\": \"MembershipsDetails\",\n \"properties\": - {\n \"membershipsDuration\": {\n \"description\": \"Data about - memberships duration without taking into consideration pricing levels.\",\n - \ \"$ref\": \"MembershipsDuration\"\n },\n \"highestAccessibleLevel\": - {\n \"description\": \"Id of the highest level that the user has - access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"membershipsDurationAtLevels\": {\n \"description\": \"Data - about memberships duration on particular pricing levels.\",\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"type\": - \"array\"\n },\n \"highestAccessibleLevelDisplayName\": {\n - \ \"description\": \"Display name for the highest level that the user - has access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"accessibleLevels\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\"\n - \ }\n }\n },\n \"LiveChatMessageRetractedDetails\": {\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"type\": - \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": {\n \"properties\": - {\n \"allowed\": {\n \"type\": \"array\",\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"blocked\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of region - codes that identify countries where the video is blocked. If this property - is present and a country is not listed in its value, then the video is viewable - in that country. If this property is present and contains an empty list, the - video is viewable in all countries.\"\n }\n },\n \"id\": - \"VideoContentDetailsRegionRestriction\",\n \"type\": \"object\",\n \"description\": - \"DEPRECATED Region restriction of the video.\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"description\": \"Basic details about a subscription's subscriber - including title, description, channel ID and thumbnails.\",\n \"id\": - \"SubscriptionSubscriberSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the subscriber.\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The title of - the subscriber.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The channel ID of the subscriber.\"\n - \ },\n \"thumbnails\": {\n \"description\": \"Thumbnails - for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n }\n - \ }\n },\n \"VideoSnippet\": {\n \"properties\": {\n \"description\": - {\n \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the video - belongs to.\",\n \"type\": \"string\"\n },\n \"tags\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of keyword tags - associated with the video. Tags may contain spaces.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the videos's default snippet.\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that the video was uploaded - to.\"\n },\n \"localized\": {\n \"description\": \"Localized - snippet selected with the hl parameter. If no such localization exists, this - field is populated with the default snippet. (Read-only)\",\n \"$ref\": - \"VideoLocalization\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the video - was uploaded.\",\n \"type\": \"string\"\n },\n \"defaultAudioLanguage\": - {\n \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ },\n \"liveBroadcastContent\": {\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"type\": - \"string\"\n },\n \"categoryId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube video category associated with the - video.\"\n }\n },\n \"description\": \"Basic details about - a video, including title, description, uploader, thumbnails and category.\",\n - \ \"type\": \"object\",\n \"id\": \"VideoSnippet\"\n },\n \"ChannelSectionListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"A list of ChannelSections that match the request criteria.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"ChannelSectionListResponse\"\n - \ },\n \"IngestionInfo\": {\n \"id\": \"IngestionInfo\",\n \"properties\": - {\n \"streamName\": {\n \"description\": \"The stream name - that YouTube assigns to the video stream.\",\n \"type\": \"string\"\n - \ },\n \"rtmpsBackupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of backupIngestionAddress in order to stream via RTMPS. Not applicable to - non-RTMP streams.\"\n },\n \"rtmpsIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of ingestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ },\n \"ingestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"The primary ingestion URL that you should use - to stream video to YouTube. You must stream video to this URL. Depending on - which application or tool you use to encode your video stream, you may need - to enter the stream URL and stream name separately or you may need to concatenate - them in the following format: *STREAM_URL/STREAM_NAME* \"\n },\n \"backupIngestionAddress\": - {\n \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n - \ \"type\": \"object\"\n },\n \"VideoLocalization\": {\n \"properties\": - {\n \"description\": {\n \"description\": \"Localized version - of the video's description.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"Localized version of the video's title.\"\n }\n },\n \"description\": - \"Localized versions of certain video properties (e.g. title).\",\n \"id\": - \"VideoLocalization\",\n \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": - {\n \"description\": \"Live broadcast state.\",\n \"properties\": - {\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"recordingStatus\": - {\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"description\": - \"The broadcast's recording status.\",\n \"type\": \"string\"\n },\n - \ \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The broadcast's - privacy status. Note that the broadcast represents exactly one YouTube video, - so the privacy settings are identical to those supported for videos. In addition, - you can set this field by modifying the broadcast resource or by setting the - privacyStatus field of the corresponding video resource.\"\n },\n \"liveBroadcastPriority\": - {\n \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"type\": \"string\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Low priority - broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ]\n },\n \"madeForKids\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the broadcast is made for - kids or not, decided by YouTube instead of the creator. This field is read - only.\"\n },\n \"lifeCycleStatus\": {\n \"enum\": [\n - \ \"lifeCycleStatusUnspecified\",\n \"created\",\n \"ready\",\n - \ \"testing\",\n \"live\",\n \"complete\",\n - \ \"revoked\",\n \"testStarting\",\n \"liveStarting\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveBroadcastStatus\"\n },\n \"LanguageTag\": {\n \"type\": \"object\",\n - \ \"id\": \"LanguageTag\",\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n }\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"properties\": {\n \"secondaryReasons\": {\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"description\": \"The secondary reasons associated with this reason, - if any are available. (There might be 0 or more.)\",\n \"type\": - \"array\"\n },\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label belonging to this abuse report - reason.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic details about a video category, such as its localized title.\",\n - \ \"id\": \"VideoAbuseReportReasonSnippet\"\n },\n \"LiveStreamListResponse\": - {\n \"id\": \"LiveStreamListResponse\",\n \"properties\": {\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"LiveStream\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of live streams that match - the request criteria.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveStreamListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcastContentDetails\": - {\n \"properties\": {\n \"enableLowLatency\": {\n \"description\": - \"Indicates whether this broadcast has low latency enabled.\",\n \"type\": - \"boolean\"\n },\n \"monitorStream\": {\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\",\n \"$ref\": \"MonitorStreamInfo\"\n - \ },\n \"projection\": {\n \"description\": \"The projection - format of this broadcast. This defaults to rectangular.\",\n \"type\": - \"string\",\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"enableAutoStart\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"startWithSlate\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether the broadcast should automatically begin - with an in-stream slate when you update the broadcast's status to live. After - updating the status, you then need to send a liveCuepoints.insert request - that sets the cuepoint's eventState to end to remove the in-stream slate and - make your broadcast stream visible to viewers.\"\n },\n \"mesh\": - {\n \"format\": \"byte\",\n \"description\": \"The mesh - for projecting the video if projection is mesh. The mesh value must be a UTF-8 - string containing the base-64 encoding of 3D mesh data that follows the Spherical - Video V2 RFC specification for an mshp box, excluding the box size and type - but including the following four reserved zero bytes for the version and flags.\",\n - \ \"type\": \"string\"\n },\n \"latencyPreference\": - {\n \"type\": \"string\",\n \"description\": \"If both this - and enable_low_latency are set, they must match. LATENCY_NORMAL should match - enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Best for: highest quality viewer playbacks - and higher resolutions.\",\n \"Best for: near real-time interaction, - with minimal playback buffering.\",\n \"Best for: real-time interaction - Does not support: Closed captions, 1440p, and 4k resolutions\"\n ]\n - \ },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n },\n \"boundStreamId\": {\n \"type\": \"string\",\n - \ \"description\": \"This value uniquely identifies the live stream - bound to the broadcast.\"\n },\n \"closedCaptionsType\": {\n - \ \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"enableDvr\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\"\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the live stream referenced by boundStreamId was last updated.\",\n - \ \"format\": \"date-time\"\n },\n \"recordFromStart\": - {\n \"type\": \"boolean\",\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\"\n },\n \"enableAutoStop\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto stop is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"stereoLayout\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\",\n \"type\": - \"string\",\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ]\n },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"enableContentEncryption\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether YouTube should enable content encryption for the broadcast.\"\n - \ }\n },\n \"description\": \"Detailed settings of a broadcast.\",\n - \ \"type\": \"object\",\n \"id\": \"LiveBroadcastContentDetails\"\n - \ },\n \"VideoSuggestionsTagSuggestion\": {\n \"description\": \"A - single tag suggestion with it's relevance information.\",\n \"properties\": - {\n \"categoryRestricts\": {\n \"description\": \"A set of - video categories for which the tag is relevant. You can use this information - to display appropriate tag suggestions based on the video category that the - video uploader associates with the video. By default, tag suggestions are - relevant for all categories if there are no restricts defined for the keyword.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"tag\": {\n \"description\": \"The - keyword tag suggested for the video.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"InvideoPosition\": {\n \"description\": \"Describes the - spatial position of a visual widget inside a video. It is a union of various - position types, out of which only will be set one.\",\n \"type\": \"object\",\n - \ \"id\": \"InvideoPosition\",\n \"properties\": {\n \"type\": - {\n \"type\": \"string\",\n \"enum\": [\n \"corner\"\n - \ ],\n \"description\": \"Defines the position type.\",\n - \ \"enumDescriptions\": [\n \"\"\n ]\n },\n - \ \"cornerPosition\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\"\n - \ }\n }\n },\n \"LiveBroadcastListResponse\": {\n \"properties\": - {\n \"items\": {\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"description\": \"A list of broadcasts that match - the request criteria.\",\n \"type\": \"array\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"kind\": {\n - \ \"default\": \"youtube#liveBroadcastListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n },\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"type\": \"object\"\n },\n \"GeoPoint\": {\n \"id\": \"GeoPoint\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"longitude\": - {\n \"type\": \"number\",\n \"description\": \"Longitude - in degrees.\",\n \"format\": \"double\"\n },\n \"altitude\": - {\n \"format\": \"double\",\n \"description\": \"Altitude - above the reference ellipsoid, in meters.\",\n \"type\": \"number\"\n - \ },\n \"latitude\": {\n \"type\": \"number\",\n \"format\": - \"double\",\n \"description\": \"Latitude in degrees.\"\n }\n - \ },\n \"description\": \"Geographical coordinates of a point, in - WGS84.\"\n },\n \"VideoProcessingDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\",\n \"id\": \"VideoProcessingDetails\",\n - \ \"properties\": {\n \"processingStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's processing status. - This value indicates whether YouTube was able to process the video or if the - video is still being processed.\",\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ],\n \"type\": \"string\"\n },\n \"editorSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether video editing suggestions, which might improve video quality - or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\"\n },\n \"thumbnailsAvailability\": {\n \"description\": - \"This value indicates whether thumbnail images have been generated for the - video.\",\n \"type\": \"string\"\n },\n \"fileDetailsAvailability\": - {\n \"description\": \"This value indicates whether file details - are available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"tagSuggestionsAvailability\": {\n \"description\": - \"This value indicates whether keyword (tag) suggestions are available for - the video. Tags can be added to a video's metadata to make it easier for other - users to find the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingIssuesAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether the - video processing engine has generated suggestions that might improve YouTube's - ability to process the the video, warnings that explain video processing problems, - or errors that cause video processing problems. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"processingProgress\": {\n \"description\": \"The processingProgress - object contains information about the progress YouTube has made in processing - the video. The values are really only relevant if the video's processing status - is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"processingFailureReason\": {\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ],\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveChatBan\": {\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#liveChatBan\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the ban.\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the ban.\"\n }\n },\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\",\n - \ \"id\": \"LiveChatBan\"\n },\n \"MonitorStreamInfo\": {\n \"properties\": - {\n \"enableMonitorStream\": {\n \"description\": \"This value - determines whether the monitor stream is enabled for the broadcast. If the - monitor stream is enabled, then YouTube will broadcast the event content on - a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"boolean\"\n },\n - \ \"embedHtml\": {\n \"description\": \"HTML code that embeds - a player that plays the monitor stream.\",\n \"type\": \"string\"\n - \ },\n \"broadcastStreamDelayMs\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"If you have set - the enableMonitorStream property to true, then this property determines the - length of the live broadcast delay.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n }\n },\n \"description\": - \"Settings and Info of the monitor stream\",\n \"id\": \"MonitorStreamInfo\",\n - \ \"type\": \"object\"\n },\n \"Channel\": {\n \"description\": - \"A *channel* resource contains information about a YouTube channel.\",\n - \ \"type\": \"object\",\n \"id\": \"Channel\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"topicDetails\": {\n \"$ref\": - \"ChannelTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the channel.\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n - \ \"description\": \"The contentDetails object encapsulates information - about the channel's content.\"\n },\n \"conversionPings\": {\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\",\n \"$ref\": - \"ChannelConversionPings\"\n },\n \"auditDetails\": {\n \"$ref\": - \"ChannelAuditDetails\",\n \"description\": \"The auditionDetails - object encapsulates channel data that is relevant for YouTube Partners during - the audition process.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel.\",\n \"type\": - \"string\"\n },\n \"status\": {\n \"$ref\": \"ChannelStatus\",\n - \ \"description\": \"The status object encapsulates information about - the privacy status of the channel.\"\n },\n \"brandingSettings\": - {\n \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n - \ },\n \"contentOwnerDetails\": {\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the channel, such as its title, description, - and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n },\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"ChannelLocalization\"\n },\n \"description\": \"Localizations - for different languages\",\n \"type\": \"object\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"default\": \"youtube#channel\"\n },\n \"statistics\": - {\n \"$ref\": \"ChannelStatistics\",\n \"description\": - \"The statistics object encapsulates statistics for the channel.\"\n }\n - \ }\n },\n \"SearchListResponse\": {\n \"id\": \"SearchListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"Pagination - information for token pagination.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SearchResult\"\n }\n },\n \"regionCode\": - {\n \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"default\": \"youtube#searchListResponse\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoAbuseReport\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n },\n \"comments\": {\n \"description\": - \"Additional comments regarding the abuse report.\",\n \"type\": - \"string\"\n },\n \"secondaryReasonId\": {\n \"type\": - \"string\",\n \"description\": \"The specific, or secondary, reason - that this content is abusive (if available). The value is an abuse report - reason ID that is a valid secondary reason for the primary reason.\"\n },\n - \ \"reasonId\": {\n \"description\": \"The high-level, or primary, - reason that the content is abusive. The value is an abuse report reason ID.\",\n - \ \"type\": \"string\"\n },\n \"language\": {\n \"description\": - \"The language that the content was viewed in.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoAbuseReport\"\n },\n \"VideoStatus\": - {\n \"description\": \"Basic details about a video category, such as - its localized title. Next Id: 18\",\n \"id\": \"VideoStatus\",\n \"type\": - \"object\",\n \"properties\": {\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"failureReason\": - {\n \"enumDescriptions\": [\n \"Unable to convert video - content.\",\n \"Invalid file format.\",\n \"Empty file.\",\n - \ \"File was too small.\",\n \"Unsupported codec.\",\n - \ \"Upload wasn't finished.\"\n ],\n \"type\": - \"string\",\n \"description\": \"This value explains why a video - failed to upload. This property is only present if the uploadStatus property - indicates that the upload failed.\",\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ]\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"embeddable\": {\n \"description\": \"This value indicates - if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The video's privacy status.\"\n },\n \"license\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"description\": \"The - video's license. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"uploadStatus\": {\n \"enumDescriptions\": [\n - \ \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"description\": - \"The status of the uploaded video.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ]\n },\n \"rejectionReason\": {\n \"description\": - \"This value explains why YouTube rejected an uploaded video. This property - is only present if the uploadStatus property indicates that the upload was - rejected.\",\n \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n },\n \"publishAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the video is scheduled to publish. It can be set only if the - privacy status of the video is private..\",\n \"format\": \"date-time\"\n - \ }\n }\n },\n \"PlaylistItemContentDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"videoPublishedAt\": {\n \"description\": - \"The date and time that the video was published to YouTube.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"startAt\": - {\n \"type\": \"string\",\n \"description\": \"The time, - measured in seconds from the start of the video, when the video should start - playing. (The playlist owner can specify the times when the video should start - and stop playing when the video is played in the context of the playlist.) - The default value is 0.\"\n },\n \"note\": {\n \"description\": - \"A user-generated note for this item.\",\n \"type\": \"string\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify a video. To retrieve the video resource, - set the id query parameter to this value in your API request.\",\n \"type\": - \"string\"\n },\n \"endAt\": {\n \"description\": \"The - time, measured in seconds from the start of the video, when the video should - stop playing. (The playlist owner can specify the times when the video should - start and stop playing when the video is played in the context of the playlist.) - By default, assume that the video.endTime is the end of the video.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"PlaylistItemContentDetails\"\n - \ },\n \"SubscriptionContentDetails\": {\n \"properties\": {\n \"totalItemCount\": - {\n \"description\": \"The approximate number of items that the subscription - points to.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ },\n \"newItemCount\": {\n \"description\": \"The - number of new items in the subscription since its content was last read.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"activityType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\"\n - \ }\n },\n \"description\": \"Details about the content to - witch a subscription refers.\",\n \"type\": \"object\",\n \"id\": - \"SubscriptionContentDetails\"\n },\n \"VideoCategoryListResponse\": - {\n \"id\": \"VideoCategoryListResponse\",\n \"properties\": {\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoCategoryListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"VideoCategory\"\n },\n - \ \"description\": \"A list of video categories that can be associated - with YouTube videos. In this map, the video category ID is the map key, and - its value is the corresponding videoCategory resource.\",\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"label\": {\n \"description\": - \"The localized label for this abuse report secondary reason.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of this abuse report secondary reason.\"\n - \ }\n }\n },\n \"LiveChatMessage\": {\n \"id\": \"LiveChatMessage\",\n - \ \"properties\": {\n \"authorDetails\": {\n \"description\": - \"The authorDetails object contains basic details about the user that posted - this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n - \ \"default\": \"youtube#liveChatMessage\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the message.\"\n }\n },\n - \ \"description\": \"A *liveChatMessage* resource represents a chat message - in a YouTube Live Chat.\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"type\": \"object\",\n \"description\": \"Details about a social - network post.\",\n \"properties\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"description\": \"The name of the social network.\"\n - \ },\n \"author\": {\n \"type\": \"string\",\n \"description\": - \"The author of the social network post.\"\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\",\n \"$ref\": - \"ResourceId\"\n },\n \"imageUrl\": {\n \"description\": - \"An image of the post's author.\",\n \"type\": \"string\"\n },\n - \ \"referenceUrl\": {\n \"description\": \"The URL of the social - network post.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ActivityContentDetailsSocial\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"properties\": {\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - amount of the fund.\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"userComment\": {\n \"type\": - \"string\",\n \"description\": \"The comment added by the user to - this fan funding event.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatFanFundingEventDetails\"\n },\n \"VideoGetRatingResponse\": - {\n \"type\": \"object\",\n \"id\": \"VideoGetRatingResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoGetRatingResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of ratings that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"VideoRating\"\n },\n \"type\": - \"array\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveChatModerator\": {\n \"id\": \"LiveChatModerator\",\n - \ \"description\": \"A *liveChatModerator* resource represents a moderator - for a YouTube live chat. A chat moderator has the ability to ban/unban users - from a chat, remove message, etc.\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#liveChatModerator\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveChatModeratorSnippet\",\n \"description\": \"The snippet object - contains basic details about the moderator.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"type\": \"object\"\n },\n \"InvideoTiming\": - {\n \"description\": \"Describes a temporal position of a visual widget - inside a video.\",\n \"type\": \"object\",\n \"id\": \"InvideoTiming\",\n - \ \"properties\": {\n \"type\": {\n \"enum\": [\n \"offsetFromStart\",\n - \ \"offsetFromEnd\"\n ],\n \"description\": \"Describes - a timing type. If the value is offsetFromStart, then the offsetMs field represents - an offset from the start of the video. If the value is offsetFromEnd, then - the offsetMs field represents an offset from the end of the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"durationMs\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"Defines the - duration in milliseconds for which the promotion should be displayed. If missing, - the client should use the default.\"\n },\n \"offsetMs\": {\n - \ \"type\": \"string\",\n \"description\": \"Defines the - time at which the promotion will appear. Depending on the value of type the - value of the offsetMs field will represent a time offset from the start or - from the end of the video, expressed in milliseconds.\",\n \"format\": - \"uint64\"\n }\n }\n },\n \"ActivitySnippet\": {\n \"description\": - \"Basic details about an activity, including title, description, thumbnails, - activity type and group. Next ID: 12\",\n \"properties\": {\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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.\"\n },\n \"type\": {\n \"enum\": - [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ],\n \"description\": \"The type of activity that the resource - describes.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel responsible for - this activity\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel associated with the activity.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the video was uploaded.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"The description - of the resource primarily associated with the activity. @mutable youtube.activities.insert\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"The title of the resource primarily associated with the activity.\",\n \"type\": - \"string\"\n },\n \"groupId\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"id\": - \"ActivitySnippet\",\n \"type\": \"object\"\n },\n \"InvideoBranding\": - {\n \"type\": \"object\",\n \"description\": \"LINT.IfChange Describes - an invideo branding.\",\n \"id\": \"InvideoBranding\",\n \"properties\": - {\n \"imageBytes\": {\n \"format\": \"byte\",\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"type\": \"string\"\n },\n \"position\": {\n \"$ref\": - \"InvideoPosition\",\n \"description\": \"The spatial position within - the video where the branding watermark will be displayed.\"\n },\n - \ \"timing\": {\n \"description\": \"The temporal position - within the video where watermark will be displayed.\",\n \"$ref\": - \"InvideoTiming\"\n },\n \"targetChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The channel to which this branding - links. If not present it defaults to the current channel.\"\n },\n - \ \"imageUrl\": {\n \"description\": \"The url of the uploaded - image. Only used in apiary to api communication.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelBannerResource\": {\n \"type\": - \"object\",\n \"description\": \"A channel banner returned as the response - to a channel_banner.insert call.\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#channelBannerResource\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL of this banner image.\"\n }\n - \ },\n \"id\": \"ChannelBannerResource\"\n },\n \"PlaylistItemStatus\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistItemStatus\",\n \"description\": - \"Information about the playlist item's privacy status.\",\n \"properties\": - {\n \"privacyStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"description\": \"This resource's privacy status.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n }\n },\n \"TokenPagination\": - {\n \"properties\": {},\n \"id\": \"TokenPagination\",\n \"description\": - \"Stub token pagination template to suppress results.\",\n \"type\": - \"object\"\n },\n \"I18nRegion\": {\n \"type\": \"object\",\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"default\": \"youtube#i18nRegion\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the i18n region.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n }\n },\n \"id\": - \"I18nRegion\"\n },\n \"PlaylistSnippet\": {\n \"id\": \"PlaylistSnippet\",\n - \ \"description\": \"Basic details about a playlist, including title, - description and thumbnails.\",\n \"properties\": {\n \"channelTitle\": - {\n \"description\": \"The channel title of the channel that the - video belongs to.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist. 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.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The playlist's - description.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the playlist's default - title and description.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that published the playlist.\"\n },\n \"localized\": - {\n \"$ref\": \"PlaylistLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"tags\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"Keyword tags - associated with the playlist.\"\n },\n \"title\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The playlist's - title.\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the playlist was created.\",\n - \ \"format\": \"date-time\"\n },\n \"thumbnailVideoId\": - {\n \"description\": \"Note: if the playlist has a custom thumbnail, - this field will not be populated. The video id selected by the user that will - be used as the thumbnail of this playlist. This field defaults to the first - publicly viewable video in the playlist, if: 1. The user has never selected - a video to be the thumbnail of the playlist. 2. The user selects a video to - be the thumbnail, and then removes that video from the playlist. 3. The user - selects a non-owned video to be the thumbnail, but that video becomes private, - or gets deleted.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"PlaylistPlayer\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistPlayer\",\n \"properties\": {\n - \ \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\",\n \"type\": - \"string\"\n }\n }\n },\n \"PlaylistListResponse\": {\n - \ \"id\": \"PlaylistListResponse\",\n \"properties\": {\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Playlist\"\n },\n \"description\": \"A list of playlists - that match the request criteria\",\n \"type\": \"array\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlistListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveBroadcastSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"scheduledStartTime\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"isDefaultBroadcast\": {\n \"description\": - \"Indicates whether this broadcast is the default broadcast. Internal only.\",\n - \ \"type\": \"boolean\"\n },\n \"publishedAt\": {\n - \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast was added to YouTube's live broadcast - schedule.\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's description. As with the title, - you can set this field by modifying the broadcast resource or by setting the - description field of the corresponding video resource.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that is publishing the broadcast.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The broadcast's title. Note that the broadcast represents exactly one YouTube - video. You can set this field by modifying the broadcast resource or by setting - the title field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"actualStartTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the broadcast actually started. This information is only available - once the broadcast's state is live.\"\n },\n \"scheduledEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to end.\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - broadcast. For each nested object in this object, the key is the name of the - thumbnail image, and the value is an object that contains other information - about the thumbnail.\"\n },\n \"liveChatId\": {\n \"description\": - \"The id of the live chat for this broadcast.\",\n \"type\": \"string\"\n - \ },\n \"actualEndTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\",\n - \ \"format\": \"date-time\"\n }\n },\n \"description\": - \"Basic broadcast information.\",\n \"id\": \"LiveBroadcastSnippet\"\n - \ },\n \"CaptionSnippet\": {\n \"id\": \"CaptionSnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about a caption track, - such as its language and name.\",\n \"properties\": {\n \"status\": - {\n \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The caption track's status.\",\n \"type\": \"string\"\n },\n - \ \"lastUpdated\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the caption track was last updated.\",\n \"format\": - \"date-time\"\n },\n \"isAutoSynced\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video associated with the caption track. @mutable - youtube.captions.insert\"\n },\n \"isCC\": {\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\",\n \"type\": \"boolean\"\n - \ },\n \"language\": {\n \"type\": \"string\",\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"isDraft\": {\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n },\n - \ \"isLarge\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\"\n },\n \"name\": {\n \"type\": - \"string\",\n \"description\": \"The name of the caption track. The - name is intended to be visible to the user as an option during playback.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"failureReason\": {\n \"enum\": - [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"isEasyReader\": {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"trackKind\": {\n \"enum\": [\n - \ \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The caption track's type.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"audioTrackType\": - {\n \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ],\n \"type\": - \"string\",\n \"description\": \"The type of audio track associated - with the caption track.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ }\n },\n \"RelatedEntity\": {\n \"properties\": {\n \"entity\": - {\n \"$ref\": \"Entity\"\n }\n },\n \"id\": \"RelatedEntity\",\n - \ \"type\": \"object\"\n },\n \"I18nRegionSnippet\": {\n \"type\": - \"object\",\n \"id\": \"I18nRegionSnippet\",\n \"description\": - \"Basic details about an i18n region, such as region code and human-readable - name.\",\n \"properties\": {\n \"gl\": {\n \"description\": - \"The region code as a 2-letter ISO country code.\",\n \"type\": - \"string\"\n },\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the region.\"\n }\n - \ }\n },\n \"I18nLanguageListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of supported i18n languages. In this - map, the i18n language ID is the map key, and its value is the corresponding - i18nLanguage resource.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n }\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"I18nLanguageListResponse\"\n },\n \"Entity\": {\n \"id\": \"Entity\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"url\": {\n \"type\": \"string\"\n },\n - \ \"typeId\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ThumbnailSetResponse\": {\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#thumbnailSetResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of thumbnails.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ThumbnailSetResponse\",\n \"type\": \"object\"\n },\n - \ \"VideoPlayer\": {\n \"properties\": {\n \"embedHeight\": - {\n \"type\": \"string\",\n \"format\": \"int64\"\n },\n - \ \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\",\n \"type\": - \"string\"\n },\n \"embedWidth\": {\n \"format\": \"int64\",\n - \ \"description\": \"The embed width\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoPlayer\",\n \"description\": - \"Player to be used for a video playback.\",\n \"type\": \"object\"\n - \ },\n \"VideoListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoListResponse\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"Video\"\n },\n \"type\": - \"array\"\n }\n },\n \"id\": \"VideoListResponse\",\n \"type\": - \"object\"\n },\n \"VideoAgeGating\": {\n \"properties\": {\n \"videoGameRating\": - {\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"type\": - \"string\",\n \"description\": \"Video game rating, if any.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"alcoholContent\": - {\n \"description\": \"Indicates whether or not the video has alcoholic - beverage content. Only users of legal purchasing age in a particular country, - as identified by ICAP, can view the content.\",\n \"type\": \"boolean\"\n - \ },\n \"restricted\": {\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\",\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoAgeGating\"\n },\n \"AbuseType\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"AbuseType\"\n },\n \"ChannelListResponse\": - {\n \"id\": \"ChannelListResponse\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Channel\"\n },\n - \ \"type\": \"array\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#channelListResponse\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelSettings\": - {\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the channel title.\"\n },\n - \ \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"showBrowseView\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether the - tab to browse the videos should be displayed.\"\n },\n \"unsubscribedTrailer\": - {\n \"description\": \"The trailer of the channel, for users that - are not subscribers.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the channel description.\"\n },\n - \ \"featuredChannelsUrls\": {\n \"description\": \"The list - of featured channels.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"keywords\": - {\n \"type\": \"string\",\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\"\n },\n \"defaultTab\": - {\n \"description\": \"Which content tab users should see when viewing - the channel.\",\n \"type\": \"string\"\n },\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n },\n \"profileColor\": {\n - \ \"description\": \"A prominent color that can be rendered on this - channel page.\",\n \"type\": \"string\"\n },\n \"moderateComments\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - user-submitted comments left on the channel page need to be approved by the - channel owner to be publicly visible.\"\n }\n },\n \"id\": - \"ChannelSettings\",\n \"description\": \"Branding properties for the - channel view.\",\n \"type\": \"object\"\n },\n \"LiveBroadcastStatistics\": - {\n \"properties\": {\n \"totalChatCount\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\"\n - \ },\n \"concurrentViewers\": {\n \"description\": \"The - number of viewers currently watching the broadcast. The property and its value - will be present if the broadcast has current viewers and the broadcast owner - has not hidden the viewcount for the video. Note that YouTube stops tracking - the number of concurrent viewers for a broadcast when the broadcast ends. - So, this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n }\n },\n \"description\": - \"Statistics about the live broadcast. These represent a snapshot of the values - at the time of the request. Statistics are only returned for live broadcasts.\",\n - \ \"id\": \"LiveBroadcastStatistics\",\n \"type\": \"object\"\n },\n - \ \"Comment\": {\n \"description\": \"A *comment* represents a single - YouTube comment.\",\n \"id\": \"Comment\",\n \"properties\": {\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n \"default\": - \"youtube#comment\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"CommentThreadReplies\": {\n \"properties\": {\n \"comments\": - {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"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.\",\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"CommentThreadReplies\",\n \"description\": \"Comments written in (direct - or indirect) reply to the top level comment.\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"type\": \"object\",\n \"properties\": {\n \"severity\": - {\n \"description\": \"How severe this issue is to the stream.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"info\",\n - \ \"warning\",\n \"error\"\n ],\n \"type\": - \"string\"\n },\n \"reason\": {\n \"type\": \"string\",\n - \ \"description\": \"The short-form reason for this issue.\"\n },\n - \ \"type\": {\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The kind of error happening.\"\n },\n \"description\": {\n - \ \"type\": \"string\",\n \"description\": \"The long-form - description of the issue and how to resolve it.\"\n }\n },\n \"id\": - \"LiveStreamConfigurationIssue\"\n },\n \"I18nLanguage\": {\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nLanguage\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the i18n language.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"I18nLanguageSnippet\",\n \"description\": \"The snippet object - contains basic details about the i18n language, such as language code and - human-readable name.\"\n }\n },\n \"id\": \"I18nLanguage\",\n - \ \"type\": \"object\",\n \"description\": \"An *i18nLanguage* resource - identifies a UI language currently supported by YouTube.\"\n },\n \"VideoRating\": - {\n \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n },\n \"rating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"description\": \"Rating of a video.\"\n }\n - \ },\n \"description\": \"Basic details about rating of a video.\",\n - \ \"id\": \"VideoRating\",\n \"type\": \"object\"\n },\n \"ActivityContentDetails\": - {\n \"type\": \"object\",\n \"description\": \"Details about the - content of an activity: the video that was shared, the channel that was subscribed - to, etc.\",\n \"properties\": {\n \"promotedItem\": {\n \"description\": - \"The promotedItem object contains details about a resource which is being - promoted. This property is only present if the snippet.type is promotedItem.\",\n - \ \"$ref\": \"ActivityContentDetailsPromotedItem\"\n },\n \"channelItem\": - {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n \"description\": - \"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.\"\n - \ },\n \"favorite\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsFavorite\"\n },\n \"playlistItem\": - {\n \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"social\": {\n \"$ref\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"The social object contains details about a social - network post. This property is only present if the snippet.type is social.\"\n - \ },\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n },\n \"upload\": {\n \"$ref\": \"ActivityContentDetailsUpload\",\n - \ \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\"\n - \ },\n \"subscription\": {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n - \ \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\"\n },\n \"like\": {\n \"$ref\": - \"ActivityContentDetailsLike\",\n \"description\": \"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.\"\n },\n - \ \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"recommendation\": {\n \"$ref\": - \"ActivityContentDetailsRecommendation\",\n \"description\": \"The - recommendation object contains information about a recommended resource. This - property is only present if the snippet.type is recommendation.\"\n }\n - \ },\n \"id\": \"ActivityContentDetails\"\n },\n \"LiveStreamSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that is transmitting the stream.\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the stream was created.\"\n },\n \"title\": {\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The stream's - title. The value must be between 1 and 128 characters long.\"\n },\n - \ \"isDefaultStream\": {\n \"type\": \"boolean\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The stream's description. The value cannot be longer than 10000 characters.\"\n - \ }\n },\n \"id\": \"LiveStreamSnippet\"\n },\n \"Video\": - {\n \"description\": \"A *video* resource represents a YouTube video.\",\n - \ \"properties\": {\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information about the video content, - including the length of the video and its aspect ratio.\",\n \"$ref\": - \"VideoContentDetails\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"suggestions\": {\n \"description\": \"The suggestions object - encapsulates suggestions that identify opportunities to improve the video - quality or the metadata for the uploaded video. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the video.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n }\n },\n \"processingDetails\": {\n - \ \"$ref\": \"VideoProcessingDetails\",\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\"\n - \ },\n \"projectDetails\": {\n \"$ref\": \"VideoProjectDetails\",\n - \ \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"recordingDetails\": {\n \"$ref\": \"VideoRecordingDetails\",\n - \ \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\"\n },\n - \ \"ageGating\": {\n \"description\": \"Age restriction details - related to a video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoAgeGating\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#video\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#video\"\n },\n \"statistics\": - {\n \"description\": \"The statistics object contains statistics - about the video.\",\n \"$ref\": \"VideoStatistics\"\n },\n - \ \"player\": {\n \"$ref\": \"VideoPlayer\",\n \"description\": - \"The player object contains information that you would use to play the video - in an embedded player.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\",\n \"additionalProperties\": {\n \"$ref\": - \"VideoLocalization\"\n }\n },\n \"topicDetails\": - {\n \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the video's uploading, processing, and privacy - statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n \"fileDetails\": - {\n \"$ref\": \"VideoFileDetails\",\n \"description\": \"The - fileDetails object encapsulates information about the video file that was - uploaded to YouTube, including the file's resolution, duration, audio and - video codecs, stream bitrates, and more. This data can only be retrieved by - the video owner.\"\n },\n \"liveStreamingDetails\": {\n \"$ref\": - \"VideoLiveStreamingDetails\",\n \"description\": \"The liveStreamingDetails - object contains metadata about a live video broadcast. The object will only - be present in a video resource if the video is an upcoming, live, or completed - live broadcast.\"\n },\n \"snippet\": {\n \"$ref\": - \"VideoSnippet\",\n \"description\": \"The snippet object contains - basic details about the video, such as its title, description, and category.\"\n - \ },\n \"monetizationDetails\": {\n \"$ref\": \"VideoMonetizationDetails\",\n - \ \"description\": \"The monetizationDetails object encapsulates information - about the monetization status of the video.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"Video\"\n },\n \"LiveChatSuperStickerDetails\": - {\n \"properties\": {\n \"amountMicros\": {\n \"type\": - \"string\",\n \"description\": \"The amount purchased by the user, - in micros (1,750,000 micros = 1.75).\",\n \"format\": \"uint64\"\n - \ },\n \"tier\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"superStickerMetadata\": {\n \"description\": \"Information - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ }\n },\n \"id\": \"LiveChatSuperStickerDetails\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsComment\": {\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource associated with the comment.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsComment\",\n \"description\": - \"Information about a resource that received a comment.\"\n },\n \"ChannelStatistics\": - {\n \"id\": \"ChannelStatistics\",\n \"description\": \"Statistics - about a channel: number of subscribers, number of videos in the channel, etc.\",\n - \ \"properties\": {\n \"videoCount\": {\n \"description\": - \"The number of videos uploaded to the channel.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"commentCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of comments for the channel.\"\n },\n \"viewCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of times the channel has been viewed.\"\n },\n \"hiddenSubscriberCount\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the number of subscribers is shown for this user.\"\n },\n \"subscriberCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of subscribers that the channel has.\",\n \"format\": \"uint64\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"Cuepoint\": - {\n \"description\": \"Note that there may be a 5-second end-point resolution - issue. For instance, if a cuepoint comes in for 22:03:27, we may stuff the - cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact of HLS.\",\n - \ \"id\": \"Cuepoint\",\n \"type\": \"object\",\n \"properties\": - {\n \"cueType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"type\": \"string\"\n - \ },\n \"walltimeMs\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The wall clock - time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\"\n },\n \"etag\": {\n - \ \"type\": \"string\"\n },\n \"insertionOffsetTimeMs\": - {\n \"description\": \"The time when the cuepoint should be inserted - by offset to the broadcast actual start time.\",\n \"format\": \"int64\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The identifier for cuepoint resource.\",\n \"type\": \"string\"\n - \ },\n \"durationSecs\": {\n \"type\": \"integer\",\n - \ \"description\": \"The duration of this cuepoint.\",\n \"format\": - \"uint32\"\n }\n }\n },\n \"MembershipsLevel\": {\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"MembershipsLevelSnippet\",\n \"description\": \"The snippet object - contains basic details about the level.\"\n },\n \"id\": {\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the memberships level.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"default\": - \"youtube#membershipsLevel\"\n }\n },\n \"id\": \"MembershipsLevel\",\n - \ \"description\": \"A *membershipsLevel* resource represents an offer - made by YouTube creators for their fans. Users can become members of the channel - by joining one of the available levels. They will provide recurring monetary - support and receives special benefits.\"\n },\n \"LocalizedString\": - {\n \"id\": \"LocalizedString\",\n \"properties\": {\n \"language\": - {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"MembershipsLevelListResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"MembershipsLevel\"\n },\n - \ \"description\": \"A list of pricing levels offered by a creator - to the fans.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevelListResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\",\n - \ \"type\": \"object\"\n },\n \"SuperChatEventListResponse\": {\n - \ \"id\": \"SuperChatEventListResponse\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#superChatEventListResponse\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of Super Chat purchases that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n }\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n - \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatTextMessageDetails\": {\n - \ \"id\": \"LiveChatTextMessageDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"messageText\": {\n \"description\": - \"The user's message.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"PlaylistItemSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails. - Basic details of a YouTube Playlist item provided by the author. Next ID: - 15\",\n \"id\": \"PlaylistItemSnippet\",\n \"properties\": {\n \"videoOwnerChannelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel this video belongs to.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the playlist item. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"playlistId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify thGe playlist that the playlist item is in.\",\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n }\n },\n \"description\": {\n \"description\": - \"The item's description.\",\n \"type\": \"string\"\n },\n - \ \"videoOwnerChannelId\": {\n \"description\": \"Channel id - for the channel this video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The item's title.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the item was added to the playlist.\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the user that added the item to the playlist.\",\n - \ \"type\": \"string\"\n },\n \"position\": {\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"resourceId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"$ref\": \"ResourceId\",\n \"description\": \"The id object - contains information that can be used to uniquely identify the resource that - is included in the playlist as the playlist item.\"\n }\n }\n - \ },\n \"Activity\": {\n \"id\": \"Activity\",\n \"description\": - \"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.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the activity.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#activity\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#activity\\\".\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ActivityContentDetails\",\n \"description\": - \"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.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"ActivitySnippet\",\n \"description\": \"The snippet object contains - basic details about the activity, including the activity's type and group - ID.\"\n }\n }\n },\n \"PageInfo\": {\n \"id\": \"PageInfo\",\n - \ \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\",\n \"type\": \"object\",\n \"properties\": {\n \"totalResults\": - {\n \"format\": \"int32\",\n \"type\": \"integer\",\n \"description\": - \"The total number of results in the result set.\"\n },\n \"resultsPerPage\": - {\n \"description\": \"The number of results included in the API - response.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ }\n }\n },\n \"SubscriptionSnippet\": {\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The id object contains - information about the channel that the user subscribed to.\",\n \"$ref\": - \"ResourceId\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.subscriptions.insert\"\n ]\n }\n - \ },\n \"title\": {\n \"description\": \"The subscription's - title.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the subscription belongs to.\"\n },\n \"description\": - {\n \"description\": \"The subscription's details.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the subscriber's channel.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the video. 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.\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the subscription was created.\"\n }\n },\n - \ \"id\": \"SubscriptionSnippet\",\n \"description\": \"Basic details - about a subscription, including title, description and thumbnails of the subscribed - item.\",\n \"type\": \"object\"\n },\n \"PlaylistLocalization\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistLocalization\",\n - \ \"description\": \"Playlist localization setting\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for playlist's description.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's title.\"\n }\n }\n },\n \"ChannelConversionPings\": - {\n \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\",\n \"type\": - \"object\",\n \"properties\": {\n \"pings\": {\n \"type\": - \"array\",\n \"description\": \"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.\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n }\n }\n },\n \"id\": - \"ChannelConversionPings\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information about the resource that was added to the playlist.\"\n },\n - \ \"playlistId\": {\n \"description\": \"The value that YouTube - uses to uniquely identify the playlist.\",\n \"type\": \"string\"\n - \ },\n \"playlistItemId\": {\n \"type\": \"string\",\n - \ \"description\": \"ID of the item within the playlist.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"Information about a new playlist item.\"\n },\n - \ \"SuperChatEvent\": {\n \"id\": \"SuperChatEvent\",\n \"description\": - \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\",\n \"type\": \"object\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the Super Chat event.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the Super Chat event.\",\n \"$ref\": \"SuperChatEventSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#superChatEvent\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n }\n - \ }\n },\n \"Playlist\": {\n \"id\": \"Playlist\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#playlist\"\n },\n \"status\": - {\n \"description\": \"The status object contains status information - for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information like video count.\",\n \"$ref\": - \"PlaylistContentDetails\"\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the playlist - in an embedded player.\",\n \"$ref\": \"PlaylistPlayer\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"description\": - \"Localizations for different languages\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the playlist, such as its title and description.\",\n \"$ref\": - \"PlaylistSnippet\"\n }\n },\n \"description\": \"A *playlist* - resource represents a YouTube playlist. A playlist is a collection of videos - that can be viewed sequentially and shared with other users. A playlist can - contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"type\": \"object\"\n },\n - \ \"ChannelSnippet\": {\n \"id\": \"ChannelSnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about a channel, including - title, description and thumbnails.\",\n \"properties\": {\n \"publishedAt\": - {\n \"description\": \"The date and time that the channel was created.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"customUrl\": {\n \"description\": \"The custom url of the - channel.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - title.\"\n },\n \"country\": {\n \"type\": \"string\",\n - \ \"description\": \"The country of the channel.\"\n },\n \"localized\": - {\n \"description\": \"Localized title and description, read-only.\",\n - \ \"$ref\": \"ChannelLocalization\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel's default title - and description.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The description of the channel.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n }\n }\n },\n \"LiveChatNewSponsorDetails\": - {\n \"id\": \"LiveChatNewSponsorDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"isUpgrade\": {\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\",\n \"type\": - \"boolean\"\n },\n \"memberLevelName\": {\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ChannelSectionSnippet\": {\n \"properties\": {\n \"style\": - {\n \"type\": \"string\",\n \"description\": \"The style - of the channel section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"defaultLanguage\": {\n - \ \"type\": \"string\",\n \"description\": \"The language - of the channel section's default title and description.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the channel section.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The channel section's title for multiple_playlists and multiple_channels.\"\n - \ },\n \"type\": {\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The type of the - channel section.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"description\": \"Localized title, read-only.\",\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"position\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The position of the channel section in the channel.\"\n }\n },\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\",\n \"type\": \"object\",\n \"id\": - \"ChannelSectionSnippet\"\n },\n \"PlaylistStatus\": {\n \"id\": - \"PlaylistStatus\",\n \"properties\": {\n \"privacyStatus\": {\n - \ \"description\": \"The playlist's privacy status.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoLiveStreamingDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"scheduledEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast is scheduled to end. - If the value is empty or the property is not present, then the broadcast is - scheduled to contiue indefinitely.\"\n },\n \"concurrentViewers\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"type\": \"string\"\n - \ },\n \"scheduledStartTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The time - that the broadcast is scheduled to begin.\"\n },\n \"actualStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\"\n },\n - \ \"actualEndTime\": {\n \"description\": \"The time that the - broadcast actually ended. This value will not be available until the broadcast - is over.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"activeLiveChatId\": {\n \"description\": \"The - ID of the currently active live chat attached to this video. This field is - filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Details about the live streaming metadata.\",\n \"id\": - \"VideoLiveStreamingDetails\"\n }\n },\n \"title\": \"YouTube Data API - v3\",\n \"ownerName\": \"Google\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"batchPath\": \"batch\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": - {\n \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n }\n }\n }\n },\n \"mtlsRootUrl\": - \"https://youtube.mtls.googleapis.com/\",\n \"id\": \"youtube:v3\",\n \"discoveryVersion\": - \"v1\",\n \"protocol\": \"rest\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"kind\": \"discovery#restDescription\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"canonicalName\": \"YouTube\",\n \"description\": \"The YouTube Data API - v3 is an API that provides access to YouTube data, such as videos, playlists, - and channels.\",\n \"version\": \"v3\",\n \"fullyEncodeReservedExpansion\": - true,\n \"ownerDomain\": \"google.com\",\n \"name\": \"youtube\",\n \"revision\": - \"20230220\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"servicePath\": \"\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:27 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCJLZe_NoiG0hT7QCX_9vmqw&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"CUlYA_Q3ltDVby_TYp-BMH3Gv4Q\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"5Kczi1xvgK3KhmP5Ty2fb5yYAOM\",\n \"id\": \"UCJLZe_NoiG0hT7QCX_9vmqw\",\n - \ \"snippet\": {\n \"title\": \"I did a thing\",\n \"description\": - \"I like to do things so come watch me\",\n \"customUrl\": \"@ididathing\",\n - \ \"publishedAt\": \"2018-08-07T00:32:48Z\",\n \"thumbnails\": - {\n \"default\": {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJVofZo2aMcRJoOCYRTs2IHyw7kD7RWRe4l6fEcJuA=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJVofZo2aMcRJoOCYRTs2IHyw7kD7RWRe4l6fEcJuA=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJVofZo2aMcRJoOCYRTs2IHyw7kD7RWRe4l6fEcJuA=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"I did a thing\",\n \"description\": - \"I like to do things so come watch me\"\n },\n \"country\": - \"AU\"\n },\n \"brandingSettings\": {\n \"channel\": {\n - \ \"title\": \"I did a thing\",\n \"description\": \"I like - to do things so come watch me\",\n \"keywords\": \"\\\"I did a thing\\\" - \\\"William Osman\\\" \\\"Black Smith\\\" DIY 'Michael Reeves'\",\n \"unsubscribedTrailer\": - \"KDJHjrgGVYQ\",\n \"country\": \"AU\"\n },\n \"image\": - {\n \"bannerExternalUrl\": \"https://yt3.googleusercontent.com/r70r4SmFxiAI_aP03Cg8evyROsx13iEWenGRB6DMtVpZqx7WGidPNDvcl1e0rL1ro1Ft0P5J\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:27 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"id\": \"youtube:v3\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": - {\n \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n }\n }\n }\n },\n \"baseUrl\": - \"https://youtube.googleapis.com/\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"fullyEncodeReservedExpansion\": true,\n \"batchPath\": \"batch\",\n - \ \"kind\": \"discovery#restDescription\",\n \"name\": \"youtube\",\n \"mtlsRootUrl\": - \"https://youtube.mtls.googleapis.com/\",\n \"basePath\": \"\",\n \"parameters\": - {\n \"alt\": {\n \"default\": \"json\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"description\": \"Data format for response.\",\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"location\": \"query\"\n - \ },\n \"$.xgafv\": {\n \"enum\": [\n \"1\",\n \"2\"\n - \ ],\n \"type\": \"string\",\n \"description\": \"V1 error format.\",\n - \ \"enumDescriptions\": [\n \"v1 error format\",\n \"v2 - error format\"\n ],\n \"location\": \"query\"\n },\n \"key\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n - \ },\n \"oauth_token\": {\n \"description\": \"OAuth 2.0 token for - the current user.\",\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"uploadType\": {\n \"location\": \"query\",\n \"description\": - \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n - \ \"type\": \"string\"\n },\n \"access_token\": {\n \"description\": - \"OAuth access token.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"quotaUser\": {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"upload_protocol\": - {\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"prettyPrint\": - {\n \"description\": \"Returns response with indentations and line breaks.\",\n - \ \"default\": \"true\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"fields\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Selector specifying which fields to include - in a partial response.\"\n },\n \"callback\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"JSONP\"\n }\n - \ },\n \"resources\": {\n \"subscriptions\": {\n \"methods\": {\n - \ \"list\": {\n \"id\": \"youtube.subscriptions.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"0\",\n \"type\": - \"integer\",\n \"description\": \"The *maxResults* parameter - specifies the maximum number of items that should be returned in the result - set.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"pageToken\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the subscriptions of the - given channel owner.\",\n \"type\": \"string\"\n },\n - \ \"forChannelId\": {\n \"type\": \"string\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"description\": \"Return the subscriptions - with the given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Flag for returning the subscriptions - of the authenticated user.\"\n },\n \"order\": {\n \"description\": - \"The order of the returned subscriptions\",\n \"enum\": [\n - \ \"subscriptionOrderUnspecified\",\n \"relevance\",\n - \ \"unread\",\n \"alphabetical\"\n ],\n - \ \"default\": \"relevance\",\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"myRecentSubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"mySubscribers\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the subscribers of the given channel owner.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"response\": - {\n \"$ref\": \"SubscriptionListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/subscriptions\"\n - \ },\n \"insert\": {\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"id\": \"youtube.subscriptions.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\"\n },\n \"delete\": {\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"id\": \"youtube.subscriptions.delete\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Deletes a resource.\"\n }\n - \ }\n },\n \"watermarks\": {\n \"methods\": {\n \"unset\": - {\n \"parameters\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"path\": - \"youtube/v3/watermarks/unset\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Allows removal of channel watermark.\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.watermarks.unset\"\n - \ },\n \"set\": {\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"channelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"id\": - \"youtube.watermarks.set\",\n \"description\": \"Allows upload of - watermark image and setting it for a channel.\",\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"mediaUpload\": {\n \"maxSize\": - \"10485760\",\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"getRating\": - {\n \"description\": \"Retrieves the ratings that the authorized - user gave to a list of specified videos.\",\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.getRating\",\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/videos/getRating\",\n - \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"parameterOrder\": [\n \"id\"\n ]\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"id\": \"youtube.videos.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"description\": - \"Deletes a resource.\"\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.videos.insert\",\n \"path\": \"youtube/v3/videos\",\n - \ \"parameters\": {\n \"notifySubscribers\": {\n \"description\": - \"Notify the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"location\": \"query\",\n \"default\": - \"true\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": true\n },\n - \ \"autoLevels\": {\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Should auto-levels be applied - to the upload.\"\n },\n \"stabilize\": {\n \"location\": - \"query\",\n \"description\": \"Should stabilize be applied to - the upload.\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"supportsMediaUpload\": true,\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"mediaUpload\": {\n \"accept\": - [\n \"video/*\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"274877906944\"\n },\n \"flatPath\": \"youtube/v3/videos\"\n - \ },\n \"reportAbuse\": {\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"description\": \"Report abuse for a video.\",\n \"request\": - {\n \"$ref\": \"VideoAbuseReport\"\n },\n \"id\": - \"youtube.videos.reportAbuse\",\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/videos/reportAbuse\"\n - \ },\n \"rate\": {\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"parameterOrder\": [\n \"id\",\n \"rating\"\n - \ ],\n \"parameters\": {\n \"rating\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Adds a like or dislike rating to a video or removes a rating from a video.\",\n - \ \"path\": \"youtube/v3/videos/rate\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.videos.rate\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"maxWidth\": {\n \"description\": - \"Return the player with maximum height specified in\",\n \"maximum\": - \"8192\",\n \"format\": \"int32\",\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"minimum\": - \"72\"\n },\n \"myRating\": {\n \"description\": - \"Return videos liked/disliked by the authenticated user. Does not support - RateType.RATED_TYPE_NONE.\",\n \"type\": \"string\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n },\n \"locale\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"chart\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ],\n \"location\": - \"query\",\n \"description\": \"Return the videos that are in - the specified chart.\"\n },\n \"maxHeight\": {\n \"format\": - \"int32\",\n \"type\": \"integer\",\n \"minimum\": - \"72\",\n \"location\": \"query\",\n \"maximum\": - \"8192\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"description\": \"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.\",\n \"maximum\": \"50\",\n - \ \"minimum\": \"1\"\n },\n \"videoCategoryId\": - {\n \"location\": \"query\",\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"default\": - \"0\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - videos with the given ids.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Use a chart that is specific to the specified - region\"\n },\n \"hl\": {\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"response\": {\n - \ \"$ref\": \"VideoListResponse\"\n },\n \"path\": - \"youtube/v3/videos\",\n \"id\": \"youtube.videos.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"update\": - {\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"required\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n }\n },\n \"flatPath\": - \"youtube/v3/videos\",\n \"path\": \"youtube/v3/videos\",\n \"request\": - {\n \"$ref\": \"Video\"\n },\n \"id\": \"youtube.videos.update\",\n - \ \"httpMethod\": \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"request\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"response\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/tests\",\n - \ \"description\": \"POST method.\",\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.tests.insert\",\n \"path\": \"youtube/v3/tests\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/members\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"id\": \"youtube.members.list\",\n \"flatPath\": - \"youtube/v3/members\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"filterByMemberChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Comma - separated list of channel IDs. Only data about members that are part of this - list will be included in the response.\",\n \"location\": \"query\"\n - \ },\n \"mode\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": - \"all_current\",\n \"description\": \"Parameter that specifies - which channel members to return.\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ]\n - \ },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"maximum\": \"1000\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"default\": \"5\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"hasAccessToLevel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the member resource parts that the API response will include. - Set the parameter value to snippet.\"\n }\n },\n \"description\": - \"Retrieves a list of members that match the request criteria for a channel.\",\n - \ \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ }\n }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - membershipsLevel resource parts that the API response will include. Supported - values are id and snippet.\",\n \"location\": \"query\"\n }\n - \ },\n \"path\": \"youtube/v3/membershipsLevels\",\n \"id\": - \"youtube.membershipsLevels.list\",\n \"description\": \"Retrieves - a list of all pricing levels offered by a creator to the fans.\",\n \"response\": - {\n \"$ref\": \"MembershipsLevelListResponse\"\n }\n }\n - \ }\n },\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": - {\n \"parameters\": {\n \"hl\": {\n \"default\": - \"en_US\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the i18nLanguage resource properties that the API response - will include. Set the parameter value to snippet.\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/i18nLanguages\",\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n - \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"playlistItems\": {\n \"methods\": {\n - \ \"delete\": {\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"update\": {\n \"httpMethod\": - \"PUT\",\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"id\": \"youtube.playlistItems.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n }\n - \ },\n \"list\": {\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"repeated\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"default\": \"5\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"playlistId\": {\n \"location\": \"query\",\n \"description\": - \"Return the playlist items within the given playlist.\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the playlist items associated with the given video ID.\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.playlistItems.list\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/playlistItems\"\n },\n \"insert\": {\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"insert\": {\n \"description\": \"Inserts a new resource - into this collection.\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n }\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"id\": - \"youtube.commentThreads.list\",\n \"parameters\": {\n \"order\": - {\n \"enumDescriptions\": [\n \"\",\n \"Order - by time.\",\n \"Order by relevance.\"\n ],\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"time\"\n },\n \"channelId\": - {\n \"description\": \"Returns the comment threads for all the - channel comments (ie does not include comments left on videos).\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"textFormat\": - {\n \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"description\": - \"The requested text format for the returned comments.\",\n \"default\": - \"html\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"textFormatUnspecified\",\n \"html\",\n \"plainText\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"allThreadsRelatedToChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Returns the comment threads of - all videos of the channel and the channel comments as well.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"maximum\": \"100\",\n \"minimum\": - \"1\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"default\": \"20\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"part\": {\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"moderationStatus\": {\n \"default\": - \"published\",\n \"description\": \"Limits the returned comment - threads to those with the specified moderation status. Not compatible with - the 'id' filter. Valid values: published, heldForReview, likelySpam.\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ]\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads of the specified - video.\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"searchTerms\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Limits - the returned comment threads to those matching the specified key words. Not - compatible with the 'id' filter.\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.list\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"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, status - and statistics.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Return broadcasts with the given - ids from Stubby or Apiary.\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"broadcastType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"description\": \"Return only broadcasts - with the selected type.\",\n \"location\": \"query\",\n \"default\": - \"event\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ]\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"broadcastStatus\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return broadcasts with a certain status, - e.g. active broadcasts.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return current - live broadcasts.\",\n \"Return broadcasts that have not yet - started.\",\n \"Return broadcasts that have already ended.\"\n - \ ],\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ]\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\"\n },\n \"insertCuepoint\": {\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"id\": - \"youtube.liveBroadcasts.insertCuepoint\",\n \"response\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Broadcast - to insert ads to, or equivalently `external_video_id` for internal use.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true\n }\n },\n - \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"description\": \"Insert cuepoints in a broadcast\",\n \"parameterOrder\": - [],\n \"httpMethod\": \"POST\"\n },\n \"transition\": - {\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"broadcastStatus\": - {\n \"description\": \"The status to which the broadcast is going - to transition.\",\n \"type\": \"string\",\n \"required\": - true,\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Start testing the broadcast. YouTube transmits video to - the broadcast's monitor stream. Note that you can only transition a broadcast - to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"Broadcast - to transition.\"\n }\n },\n \"response\": {\n - \ \"$ref\": \"LiveBroadcast\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/transition\",\n \"description\": \"Transition - a broadcast to a given status.\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ]\n },\n \"insert\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"description\": \"Inserts a new - stream for the authenticated user.\",\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"id\": - \"youtube.liveBroadcasts.insert\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"update\": {\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"id\": \"youtube.liveBroadcasts.update\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n }\n - \ },\n \"description\": \"Updates an existing broadcast for - the authenticated user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"httpMethod\": \"PUT\"\n },\n \"bind\": {\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"Broadcast to bind to the stream\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"streamId\": {\n \"location\": \"query\",\n - \ \"description\": \"Stream to bind, if not set unbind the current - one.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n }\n },\n \"path\": - \"youtube/v3/liveBroadcasts/bind\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"id\": \"youtube.liveBroadcasts.bind\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Bind a broadcast to a stream.\"\n - \ },\n \"delete\": {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"description\": - \"Broadcast to delete.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Delete a given broadcast.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"id\": \"youtube.liveBroadcasts.delete\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"DELETE\"\n }\n - \ }\n },\n \"channelSections\": {\n \"methods\": {\n \"insert\": - {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\"\n - \ }\n },\n \"id\": \"youtube.channelSections.insert\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"list\": {\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": - true\n },\n \"mine\": {\n \"description\": - \"Return the ChannelSections owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"hl\": - {\n \"description\": \"Return content in specified language\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/channelSections\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channelSections.list\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"delete\": {\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.channelSections.delete\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"update\": {\n \"path\": \"youtube/v3/channelSections\",\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"description\": - \"Updates an existing resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.channelSections.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n }\n }\n }\n - \ },\n \"liveStreams\": {\n \"methods\": {\n \"insert\": - {\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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, content_details, and status.\",\n - \ \"required\": true,\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.liveStreams.insert\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"LiveStream\"\n }\n },\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveStreams.update\",\n \"description\": - \"Updates an existing stream for the authenticated user.\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": true,\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n }\n - \ },\n \"delete\": {\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"httpMethod\": \"DELETE\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveStreams.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - an existing stream for the authenticated user.\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\"\n },\n \"list\": - {\n \"id\": \"youtube.liveStreams.list\",\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"description\": \"The *maxResults* parameter - specifies the maximum number of items that should be returned in the result - set.\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"default\": - \"5\",\n \"maximum\": \"50\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Return - LiveStreams with the given ids from Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n }\n - \ }\n }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"default\": \"en-US\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"abuseReports\": {\n \"methods\": {\n \"insert\": - {\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/abuseReports\",\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/abuseReports\"\n - \ }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"id\": \"youtube.liveChatMessages.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Deletes a chat message.\",\n \"flatPath\": \"youtube/v3/liveChat/messages\"\n - \ },\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatMessages.insert\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"request\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"repeated\": true\n }\n }\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the liveChatComment resource parts that the - API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"required\": true\n },\n \"hl\": - {\n \"description\": \"Specifies the localization language in - which the system messages should be returned.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The id of the live chat for which comments - should be returned.\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"profileImageSize\": {\n \"location\": - \"query\",\n \"maximum\": \"720\",\n \"description\": - \"Specifies the size of the profile image that should be returned for each - user.\",\n \"format\": \"uint32\",\n \"minimum\": - \"16\",\n \"type\": \"integer\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"default\": \"500\",\n \"maximum\": \"2000\",\n - \ \"minimum\": \"200\",\n \"type\": \"integer\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"captions\": {\n \"methods\": - {\n \"download\": {\n \"parameters\": {\n \"id\": - {\n \"location\": \"path\",\n \"description\": \"The - ID of the caption track to download, required for One Platform.\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n },\n \"tlang\": - {\n \"location\": \"query\",\n \"description\": - \"tlang is the language code; machine translate the captions into this language.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"tfmt\": {\n \"location\": - \"query\",\n \"description\": \"Convert the captions into this - format. Supported options are sbv, srt, and vtt.\",\n \"type\": - \"string\"\n }\n },\n \"supportsMediaDownload\": - true,\n \"path\": \"youtube/v3/captions/{id}\",\n \"description\": - \"Downloads a caption track.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.download\",\n \"useMediaDownloadService\": - true,\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/captions/{id}\"\n - \ },\n \"list\": {\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"Returns the captions for the - specified video.\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"id\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Returns - the captions with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is on behalf of.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ],\n \"id\": - \"youtube.captions.list\",\n \"path\": \"youtube/v3/captions\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ }\n },\n \"update\": {\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is on behalf of.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"sync\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"mediaUpload\": {\n \"maxSize\": - \"104857600\",\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ }\n }\n },\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/captions\",\n \"supportsMediaUpload\": - true,\n \"description\": \"Updates an existing resource.\",\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"id\": \"youtube.captions.update\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"Caption\"\n },\n \"id\": \"youtube.captions.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"supportsMediaUpload\": - true,\n \"path\": \"youtube/v3/captions\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"sync\": - {\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n }\n - \ },\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n - \ },\n \"response\": {\n \"$ref\": \"Caption\"\n - \ }\n },\n \"delete\": {\n \"id\": \"youtube.captions.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is be on behalf of\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Deletes - a resource.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"path\": \"youtube/v3/captions\"\n }\n }\n },\n - \ \"i18nRegions\": {\n \"methods\": {\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"I18nRegionListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/i18nRegions\",\n \"path\": - \"youtube/v3/i18nRegions\",\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"hl\": - {\n \"location\": \"query\",\n \"default\": \"en_US\",\n - \ \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/search\",\n \"id\": \"youtube.search.list\",\n - \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/search\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of search resources\",\n \"parameters\": {\n \"forDeveloper\": - {\n \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"videoType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"description\": \"Filter on videos of a specific - type.\",\n \"location\": \"query\"\n },\n \"topicId\": - {\n \"description\": \"Restrict results to a particular topic.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"videoDuration\": {\n \"location\": - \"query\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Filter on the duration of the videos.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter video search results based on their duration. This is the default - value.\",\n \"Only include videos that are less than four minutes - long.\",\n \"Only include videos that are between four and - 20 minutes long (inclusive).\",\n \"Only include videos longer - than 20 minutes.\"\n ]\n },\n \"forContentOwner\": - {\n \"type\": \"boolean\",\n \"description\": \"Search - owned by a content owner.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"minimum\": \"0\",\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"maximum\": \"50\",\n - \ \"default\": \"5\",\n \"type\": \"integer\"\n },\n - \ \"publishedBefore\": {\n \"location\": \"query\",\n - \ \"description\": \"Filter on resources published before this - date.\",\n \"type\": \"string\",\n \"format\": \"google-datetime\"\n - \ },\n \"videoLicense\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"description\": - \"Filter on the license of the videos.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ]\n },\n \"relevanceLanguage\": - {\n \"description\": \"Return results relevant to this language.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"locationRadius\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on distance from the location (specified above).\"\n },\n - \ \"videoDimension\": {\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"Include both 3D and - non-3D videos in returned results. This is the default value.\",\n \"Restrict - search results to exclude 3D videos.\",\n \"Restrict search - results to only include 3D videos.\"\n ],\n \"enum\": - [\n \"any\",\n \"2d\",\n \"3d\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Filter on 3d videos.\"\n },\n \"eventType\": {\n \"type\": - \"string\",\n \"description\": \"Filter on the livestream status - of the videos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been - completed.\"\n ],\n \"location\": \"query\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n },\n \"type\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Restrict - results to a particular set of resource types from One Platform.\"\n },\n - \ \"videoDefinition\": {\n \"enumDescriptions\": [\n - \ \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"description\": \"Filter on the definition of the videos.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"videoCaption\": {\n \"enum\": [\n - \ \"videoCaptionUnspecified\",\n \"any\",\n \"closedCaption\",\n - \ \"none\"\n ],\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoSyndicated\": {\n \"enum\": - [\n \"videoSyndicatedUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos, syndicated or not.\",\n \"Only retrieve syndicated - videos.\"\n ],\n \"location\": \"query\",\n \"description\": - \"Filter on syndicated videos.\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"description\": \"Display - the content as seen by viewers in this country.\",\n \"location\": - \"query\"\n },\n \"channelType\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Add a filter on the channel search.\",\n - \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"location\": \"query\"\n - \ },\n \"relatedToVideoId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Search related to a resource.\"\n },\n \"order\": - {\n \"description\": \"Sort order of the results.\",\n \"default\": - \"relevance\",\n \"location\": \"query\",\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Resources - are sorted in reverse chronological order based on the date they were created.\",\n - \ \"Resources are sorted from highest to lowest rating.\",\n - \ \"Resources are sorted from highest to lowest number of views.\",\n - \ \"Resources are sorted based on their relevance to the search - query. This is the default value for this parameter.\",\n \"Resources - are sorted alphabetically by title.\",\n \"Channels are sorted - in descending order of their number of uploaded videos.\"\n ],\n - \ \"type\": \"string\"\n },\n \"q\": {\n - \ \"description\": \"Textual search terms to match.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"safeSearch\": - {\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"moderate\",\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ],\n \"location\": \"query\",\n - \ \"description\": \"Indicates whether the search results should - include restricted content as well as standard content.\"\n },\n - \ \"videoCategoryId\": {\n \"location\": \"query\",\n - \ \"description\": \"Filter on videos in a specific category.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on resources belonging to this channelId.\",\n \"location\": - \"query\"\n },\n \"videoEmbeddable\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"description\": \"Filter on embeddable videos.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"videoEmbeddableUnspecified\",\n \"any\",\n - \ \"true\"\n ]\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"required\": true\n },\n \"location\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on location of the video\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"forMine\": - {\n \"type\": \"boolean\",\n \"description\": \"Search - for the private videos of the authenticated user.\",\n \"location\": - \"query\"\n },\n \"publishedAfter\": {\n \"location\": - \"query\",\n \"format\": \"google-datetime\",\n \"description\": - \"Filter on resources published after this date.\",\n \"type\": - \"string\"\n }\n }\n }\n }\n },\n \"playlists\": - {\n \"methods\": {\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"Playlist\"\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.playlists.insert\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"flatPath\": \"youtube/v3/playlists\"\n },\n - \ \"update\": {\n \"path\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"PUT\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"id\": - \"youtube.playlists.update\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"flatPath\": \"youtube/v3/playlists\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"list\": {\n \"id\": \"youtube.playlists.list\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the playlists owned by the specified channel ID.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"maximum\": \"50\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the playlists owned - by the authenticated user.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"Return the playlists with the - given IDs for Stubby or Apiary.\"\n },\n \"hl\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return content in specified language\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"id\": \"youtube.playlists.delete\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"path\": - \"youtube/v3/playlists\"\n }\n }\n },\n \"activities\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/activities\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/activities\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.activities.list\",\n \"parameters\": - {\n \"maxResults\": {\n \"maximum\": \"50\",\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"minimum\": \"0\",\n \"default\": \"5\"\n },\n - \ \"home\": {\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"publishedBefore\": {\n \"location\": - \"query\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"publishedAfter\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\"\n }\n }\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"hl\": {\n \"default\": - \"en-US\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the video categories with the given IDs for Stubby or Apiary.\",\n - \ \"repeated\": true\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"description\": \"The - *part* parameter specifies the videoCategory resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.videoCategories.list\",\n \"path\": \"youtube/v3/videoCategories\"\n - \ }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"mediaUpload\": {\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/channelBanners/insert\"\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"maxSize\": \"6291456\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"parameterOrder\": [],\n \"id\": \"youtube.channelBanners.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"parameters\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"response\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"supportsMediaUpload\": - true,\n \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\"\n }\n }\n },\n - \ \"channels\": {\n \"methods\": {\n \"list\": {\n \"parameters\": - {\n \"managedByMe\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Return - the channels managed by the authenticated user.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"location\": \"query\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the channels within the specified guide category ID.\",\n \"location\": - \"query\"\n },\n \"forUsername\": {\n \"location\": - \"query\",\n \"description\": \"Return the channel associated - with a YouTube username.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Return the channels with the specified IDs.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the ids of channels owned by the authenticated - user.\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"minimum\": \"0\",\n \"default\": \"5\",\n \"type\": - \"integer\",\n \"maximum\": \"50\"\n },\n \"mySubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Return the channels subscribed to the authenticated - user\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.channels.list\",\n \"path\": \"youtube/v3/channels\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/channels\"\n },\n - \ \"update\": {\n \"id\": \"youtube.channels.update\",\n \"description\": - \"Updates an existing resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"httpMethod\": \"PUT\",\n \"request\": - {\n \"$ref\": \"Channel\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channels\",\n \"flatPath\": - \"youtube/v3/channels\",\n \"response\": {\n \"$ref\": - \"Channel\"\n }\n }\n }\n },\n \"superChatEvents\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"SuperChatEventListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the superChatEvent - resource parts that the API response will include. This parameter is currently - not supported.\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return rendered funding amounts in specified language.\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"minimum\": \"1\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.superChatEvents.list\",\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"path\": \"youtube/v3/superChatEvents\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"insert\": {\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"id\": - \"youtube.thirdPartyLinks.insert\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/thirdPartyLinks\"\n },\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"description\": \"Get a third party link - of the given type.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ]\n - \ },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel ID to which changes - should be applied, for delegation.\",\n \"location\": \"query\"\n - \ },\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"description\": \"Get a third party link with the given linking - token.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API response will include. Supported values are linkingToken, - status, and snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.list\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"update\": {\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"parameters\": {\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\"\n }\n },\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\"\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n - \ ],\n \"id\": \"youtube.thirdPartyLinks.delete\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"description\": \"Deletes a resource.\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Channel ID to which changes should - be applied, for delegation.\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"description\": \"Type of the link to be - deleted.\"\n },\n \"part\": {\n \"description\": - \"Do not use. Required for compatibility.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"linkingToken\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"DELETE\"\n }\n }\n },\n \"liveChatModerators\": - {\n \"methods\": {\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n }\n - \ },\n \"list\": {\n \"id\": \"youtube.liveChatModerators.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"response\": - {\n \"$ref\": \"LiveChatModeratorListResponse\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the liveChatModerator resource parts that - the API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"location\": \"query\"\n },\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for which moderators - should be returned.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"GET\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.liveChatModerators.delete\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat moderator.\"\n }\n }\n - \ },\n \"liveChatBans\": {\n \"methods\": {\n \"delete\": - {\n \"path\": \"youtube/v3/liveChat/bans\",\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat ban.\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.liveChatBans.delete\"\n },\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveChatBan\"\n - \ },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n }\n }\n }\n },\n - \ \"comments\": {\n \"methods\": {\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"id\": \"youtube.comments.insert\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"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.\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"flatPath\": \"youtube/v3/comments\",\n \"path\": - \"youtube/v3/comments\"\n },\n \"update\": {\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"request\": {\n - \ \"$ref\": \"Comment\"\n },\n \"id\": \"youtube.comments.update\",\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"flatPath\": \"youtube/v3/comments\"\n },\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/comments\",\n \"path\": \"youtube/v3/comments\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"parentId\": {\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"textFormat\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"default\": \"html\",\n \"location\": - \"query\",\n \"description\": \"The requested text format for - the returned comments.\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ]\n - \ },\n \"maxResults\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"default\": \"20\",\n \"minimum\": - \"1\",\n \"maximum\": \"100\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"description\": \"Returns - the comments with the given IDs for One Platform.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies a comma-separated list of one or more comment resource - properties that the API response will include.\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"CommentListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.list\"\n },\n \"markAsSpam\": - {\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n \"id\": - \"youtube.comments.markAsSpam\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Expresses the caller's opinion - that one or more comments should be flagged as spam.\",\n \"path\": - \"youtube/v3/comments/markAsSpam\"\n },\n \"setModerationStatus\": - {\n \"httpMethod\": \"POST\",\n \"parameters\": {\n \"banAuthor\": - {\n \"description\": \"If set to true the author of the comment - gets added to the ban list. This means all future comments of the author will - autmomatically be rejected. Only valid in combination with STATUS_REJECTED.\",\n - \ \"default\": \"false\",\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"moderationStatus\": - {\n \"description\": \"Specifies the requested moderation status. - Note, comments can be in statuses, which are not available through this call. - For example, this call does not allow to mark a comment as 'likely spam'. - Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by - a moderator.\",\n \"\",\n \"The comment is unfit - for display.\"\n ],\n \"required\": true\n },\n - \ \"id\": {\n \"description\": \"Modifies the moderation - status of the comments with the given IDs\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.comments.setModerationStatus\",\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"description\": \"Sets the moderation status of one or more comments.\"\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.comments.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"DELETE\"\n }\n }\n },\n \"youtube\": - {\n \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"PUT\",\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"parameterOrder\": [],\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Updates - an existing resource.\"\n }\n }\n }\n }\n - \ },\n \"thumbnails\": {\n \"methods\": {\n \"set\": {\n - \ \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"id\": \"youtube.thumbnails.set\",\n \"description\": - \"As this is not an insert in a strict sense (it supports uploading/setting - of a thumbnail for multiple videos, which doesn't result in creation of a - single resource), I use a custom verb here.\",\n \"supportsMediaUpload\": - true,\n \"httpMethod\": \"POST\",\n \"mediaUpload\": {\n - \ \"maxSize\": \"2097152\",\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ }\n }\n },\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"flatPath\": \"youtube/v3/thumbnails/set\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"videoId\": {\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"Returns the Thumbnail with the - given video IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"videoId\"\n ]\n }\n - \ }\n }\n },\n \"protocol\": \"rest\",\n \"version\": \"v3\",\n - \ \"servicePath\": \"\",\n \"description\": \"The YouTube Data API v3 is - an API that provides access to YouTube data, such as videos, playlists, and - channels.\",\n \"revision\": \"20230220\",\n \"ownerDomain\": \"google.com\",\n - \ \"title\": \"YouTube Data API v3\",\n \"ownerName\": \"Google\",\n \"discoveryVersion\": - \"v1\",\n \"schemas\": {\n \"LiveChatMessageRetractedDetails\": {\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"type\": - \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"userComment\": {\n \"type\": - \"string\",\n \"description\": \"The comment added by the member - to this Member Milestone Chat. This field is empty for messages without a - comment from the member.\"\n },\n \"memberMonth\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\"\n },\n \"memberLevelName\": - {\n \"description\": \"The name of the Level at which the viever - is a member. The Level names are defined by the YouTube channel offering the - Membership. In some situations this field isn't filled.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"Member\": {\n \"description\": \"A *member* resource represents - a member for a YouTube channel. A member provides recurring monetary support - to a creator and receives special benefits.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"default\": \"youtube#member\"\n },\n \"snippet\": - {\n \"$ref\": \"MemberSnippet\",\n \"description\": \"The - snippet object contains basic details about the member.\"\n }\n },\n - \ \"id\": \"Member\"\n },\n \"SubscriptionContentDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"totalItemCount\": - {\n \"description\": \"The approximate number of items that the subscription - points to.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ },\n \"activityType\": {\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"type\": - \"string\",\n \"description\": \"The type of activity this subscription - is for (only uploads, everything).\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"newItemCount\": {\n \"description\": \"The number of new - items in the subscription since its content was last read.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n }\n },\n \"description\": - \"Details about the content to witch a subscription refers.\",\n \"id\": - \"SubscriptionContentDetails\"\n },\n \"IngestionInfo\": {\n \"properties\": - {\n \"rtmpsIngestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"This ingestion url may be used instead of ingestionAddress - in order to stream via RTMPS. Not applicable to non-RTMP streams.\"\n },\n - \ \"rtmpsBackupIngestionAddress\": {\n \"description\": \"This - ingestion url may be used instead of backupIngestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ },\n \"ingestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"The primary ingestion URL that you should use - to stream video to YouTube. You must stream video to this URL. Depending on - which application or tool you use to encode your video stream, you may need - to enter the stream URL and stream name separately or you may need to concatenate - them in the following format: *STREAM_URL/STREAM_NAME* \"\n },\n \"backupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The backup - ingestion URL that you should use to stream video to YouTube. You have the - option of simultaneously streaming the content that you are sending to the - ingestionAddress to this URL.\"\n },\n \"streamName\": {\n \"description\": - \"The stream name that YouTube assigns to the video stream.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"IngestionInfo\",\n \"description\": \"Describes information necessary - for ingesting an RTMP, HTTP, or SRT stream.\"\n },\n \"SuperChatEvent\": - {\n \"description\": \"A `__superChatEvent__` resource represents a Super - Chat purchase on a YouTube channel.\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the Super Chat event.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#superChatEvent\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"SuperChatEvent\",\n - \ \"type\": \"object\"\n },\n \"Activity\": {\n \"id\": \"Activity\",\n - \ \"description\": \"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.\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"ActivitySnippet\",\n \"description\": \"The - snippet object contains basic details about the activity, including the activity's - type and group ID.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#activity\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n - \ },\n \"contentDetails\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetails\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the activity.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viewer is a member. This matches the - `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated - membership gifting message. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ },\n \"gifterChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the user that made the membership gifting - purchase. This matches the `snippet.authorChannelId` of the associated membership - gifting message.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatGiftMembershipReceivedDetails\"\n },\n \"ChannelStatus\": - {\n \"properties\": {\n \"isLinked\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n },\n \"privacyStatus\": {\n \"description\": - \"Privacy status of the channel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n },\n \"longUploadsStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ],\n \"description\": \"The - long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\"\n },\n \"madeForKids\": {\n \"type\": - \"boolean\"\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\"\n }\n },\n \"description\": \"JSON template for - the status part of a channel.\",\n \"type\": \"object\",\n \"id\": - \"ChannelStatus\"\n },\n \"Channel\": {\n \"type\": \"object\",\n - \ \"description\": \"A *channel* resource contains information about a - YouTube channel.\",\n \"id\": \"Channel\",\n \"properties\": {\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object encapsulates information about the channel's content.\",\n \"$ref\": - \"ChannelContentDetails\"\n },\n \"brandingSettings\": {\n \"description\": - \"The brandingSettings object encapsulates information about the branding - of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"contentOwnerDetails\": {\n - \ \"$ref\": \"ChannelContentOwnerDetails\",\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\"\n },\n \"topicDetails\": - {\n \"$ref\": \"ChannelTopicDetails\",\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the channel.\"\n },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n },\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel.\",\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"description\": \"The status - object encapsulates information about the privacy status of the channel.\",\n - \ \"$ref\": \"ChannelStatus\"\n },\n \"snippet\": {\n - \ \"$ref\": \"ChannelSnippet\",\n \"description\": \"The - snippet object contains basic details about the channel, such as its title, - description, and thumbnail images.\"\n },\n \"auditDetails\": - {\n \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\",\n - \ \"$ref\": \"ChannelAuditDetails\"\n },\n \"statistics\": - {\n \"description\": \"The statistics object encapsulates statistics - for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n },\n - \ \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#channel\"\n }\n }\n - \ },\n \"VideoProcessingDetails\": {\n \"description\": \"Describes - processing status and progress and availability of some other Video resource - parts.\",\n \"properties\": {\n \"processingProgress\": {\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"processingFailureReason\": {\n \"type\": \"string\",\n - \ \"description\": \"The reason that YouTube failed to process the - video. This property will only have a value if the processingStatus property's - value is failed.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ]\n },\n \"fileDetailsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether file details are available for the uploaded video. You can - retrieve a video's file details by requesting the fileDetails part in your - videos.list() request.\"\n },\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n },\n - \ \"tagSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether keyword (tag) suggestions are available for the video. - Tags can be added to a video's metadata to make it easier for other users - to find the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"processingStatus\": {\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's processing status. - This value indicates whether YouTube was able to process the video or if the - video is still being processed.\"\n },\n \"editorSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether video editing - suggestions, which might improve video quality or the playback experience, - are available for the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingIssuesAvailability\": {\n \"description\": - \"This value indicates whether the video processing engine has generated suggestions - that might improve YouTube's ability to process the the video, warnings that - explain video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"VideoProcessingDetails\"\n },\n - \ \"PageInfo\": {\n \"type\": \"object\",\n \"properties\": {\n - \ \"resultsPerPage\": {\n \"format\": \"int32\",\n \"type\": - \"integer\",\n \"description\": \"The number of results included - in the API response.\"\n },\n \"totalResults\": {\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The total number of results in the result set.\"\n }\n },\n - \ \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\",\n \"id\": \"PageInfo\"\n },\n \"VideoCategory\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video category.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoCategory\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A *videoCategory* resource identifies a category - that has been or could be associated with uploaded videos.\",\n \"id\": - \"VideoCategory\"\n },\n \"VideoStatus\": {\n \"id\": \"VideoStatus\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title. Next Id: 18\",\n \"properties\": {\n \"uploadStatus\": - {\n \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"description\": - \"The status of the uploaded video.\"\n },\n \"license\": {\n - \ \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"rejectionReason\": {\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\",\n - \ \"type\": \"string\"\n },\n \"publishAt\": {\n \"description\": - \"The date and time when the video is scheduled to publish. It can be set - only if the privacy status of the video is private..\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's privacy status.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n },\n - \ \"publicStatsViewable\": {\n \"type\": \"boolean\",\n \"description\": - \"This value indicates if the extended video statistics on the watch page - can be viewed by everyone. Note that the view count, likes, etc will still - be visible if this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"embeddable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value indicates if the video can be embedded - on another website. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"failureReason\": {\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ],\n \"description\": - \"This value explains why a video failed to upload. This property is only - present if the uploadStatus property indicates that the upload failed.\",\n - \ \"enumDescriptions\": [\n \"Unable to convert video content.\",\n - \ \"Invalid file format.\",\n \"Empty file.\",\n \"File - was too small.\",\n \"Unsupported codec.\",\n \"Upload - wasn't finished.\"\n ],\n \"type\": \"string\"\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoLiveStreamingDetails\": {\n - \ \"id\": \"VideoLiveStreamingDetails\",\n \"description\": \"Details - about the live streaming metadata.\",\n \"type\": \"object\",\n \"properties\": - {\n \"actualStartTime\": {\n \"description\": \"The time that - the broadcast actually started. This value will not be available until the - broadcast begins.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"activeLiveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the currently active live - chat attached to this video. This field is filled only if the video is a currently - live broadcast that has live chat. Once the broadcast transitions to complete - this field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\"\n },\n \"scheduledStartTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast is scheduled to begin.\"\n - \ },\n \"actualEndTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The time that - the broadcast actually ended. This value will not be available until the broadcast - is over.\"\n },\n \"scheduledEndTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The time that the broadcast is - scheduled to end. If the value is empty or the property is not present, then - the broadcast is scheduled to contiue indefinitely.\",\n \"type\": - \"string\"\n },\n \"concurrentViewers\": {\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n }\n }\n },\n - \ \"RelatedEntity\": {\n \"properties\": {\n \"entity\": {\n - \ \"$ref\": \"Entity\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"RelatedEntity\"\n },\n \"MemberSnippet\": {\n \"properties\": - {\n \"membershipsDetails\": {\n \"description\": \"Details - about the user's membership.\",\n \"$ref\": \"MembershipsDetails\"\n - \ },\n \"creatorChannelId\": {\n \"description\": \"The - id of the channel that's offering memberships.\",\n \"type\": \"string\"\n - \ },\n \"memberDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the member.\"\n }\n },\n - \ \"id\": \"MemberSnippet\",\n \"type\": \"object\"\n },\n \"CommentListResponse\": - {\n \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"description\": - \"A list of comments that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"type\": \"array\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n \"default\": - \"youtube#commentListResponse\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n }\n },\n \"id\": \"CommentListResponse\",\n - \ \"type\": \"object\"\n },\n \"I18nRegionSnippet\": {\n \"type\": - \"object\",\n \"id\": \"I18nRegionSnippet\",\n \"description\": - \"Basic details about an i18n region, such as region code and human-readable - name.\",\n \"properties\": {\n \"gl\": {\n \"type\": - \"string\",\n \"description\": \"The region code as a 2-letter ISO - country code.\"\n },\n \"name\": {\n \"description\": - \"The human-readable name of the region.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"TestItemTestItemSnippet\": {\n \"type\": - \"object\",\n \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\"\n - \ },\n \"LevelDetails\": {\n \"properties\": {\n \"displayName\": - {\n \"description\": \"The name that should be used when referring - to this level.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LevelDetails\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"description\": \"Information about the uploaded video.\",\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsUpload\"\n - \ },\n \"ActivityListResponse\": {\n \"type\": \"object\",\n \"id\": - \"ActivityListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"default\": - \"youtube#activityListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Activity\"\n }\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"PlaylistStatus\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"description\": \"The playlist's privacy status.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"id\": - \"PlaylistStatus\"\n },\n \"VideoSnippet\": {\n \"description\": - \"Basic details about a video, including title, description, uploader, thumbnails - and category.\",\n \"id\": \"VideoSnippet\",\n \"properties\": {\n - \ \"categoryId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube video category associated with the video.\"\n },\n \"tags\": - {\n \"description\": \"A list of keyword tags associated with the - video. Tags may contain spaces.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the video belongs to.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the video was uploaded.\"\n - \ },\n \"title\": {\n \"description\": \"The video's - title. @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that the video was uploaded to.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n },\n \"liveBroadcastContent\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"description\": \"Indicates - if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" if - the video is not an upcoming/active live broadcast.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"$ref\": \"VideoLocalization\",\n - \ \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\"\n },\n \"defaultAudioLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The default_audio_language property - specifies the language spoken in the video's default audio track.\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The video's description. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the videos's default snippet.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"Thumbnail\": - {\n \"id\": \"Thumbnail\",\n \"description\": \"A thumbnail is an - image representing a YouTube resource.\",\n \"type\": \"object\",\n \"properties\": - {\n \"width\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"(Optional) Width of the thumbnail - image.\"\n },\n \"url\": {\n \"description\": \"The - thumbnail image's URL.\",\n \"type\": \"string\"\n },\n \"height\": - {\n \"description\": \"(Optional) Height of the thumbnail image.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n - \ }\n },\n \"PlaylistItemStatus\": {\n \"description\": \"Information - about the playlist item's privacy status.\",\n \"id\": \"PlaylistItemStatus\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"This resource's - privacy status.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"public\",\n \"unlisted\",\n \"private\"\n - \ ]\n }\n }\n },\n \"ChannelListResponse\": {\n - \ \"properties\": {\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Channel\"\n },\n \"type\": \"array\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n \"default\": - \"youtube#channelListResponse\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelListResponse\"\n },\n \"MembershipsLevel\": {\n \"description\": - \"A *membershipsLevel* resource represents an offer made by YouTube creators - for their fans. Users can become members of the channel by joining one of - the available levels. They will provide recurring monetary support and receives - special benefits.\",\n \"type\": \"object\",\n \"id\": \"MembershipsLevel\",\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the memberships level.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"MembershipsLevelSnippet\",\n \"description\": - \"The snippet object contains basic details about the level.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#membershipsLevel\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ }\n }\n },\n \"Subscription\": {\n \"id\": \"Subscription\",\n - \ \"type\": \"object\",\n \"description\": \"A *subscription* resource - contains information about a YouTube user subscription. A subscription notifies - a user when new videos are added to a channel or when another user takes one - of several actions on YouTube, such as uploading a video, rating a video, - or commenting on a video.\",\n \"properties\": {\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscription\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#subscription\"\n },\n \"snippet\": - {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the subscription.\",\n \"type\": \"string\"\n },\n \"subscriberSnippet\": - {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n \"description\": - \"The subscriberSnippet object contains basic details about the subscriber.\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"SubscriptionContentDetails\",\n - \ \"description\": \"The contentDetails object contains basic statistics - about the subscription.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ }\n },\n \"GeoPoint\": {\n \"type\": \"object\",\n \"id\": - \"GeoPoint\",\n \"properties\": {\n \"latitude\": {\n \"type\": - \"number\",\n \"description\": \"Latitude in degrees.\",\n \"format\": - \"double\"\n },\n \"longitude\": {\n \"description\": - \"Longitude in degrees.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n },\n \"altitude\": {\n \"type\": \"number\",\n - \ \"format\": \"double\",\n \"description\": \"Altitude above - the reference ellipsoid, in meters.\"\n }\n },\n \"description\": - \"Geographical coordinates of a point, in WGS84.\"\n },\n \"CommentThreadReplies\": - {\n \"description\": \"Comments written in (direct or indirect) reply - to the top level comment.\",\n \"type\": \"object\",\n \"id\": \"CommentThreadReplies\",\n - \ \"properties\": {\n \"comments\": {\n \"items\": {\n - \ \"$ref\": \"Comment\"\n },\n \"type\": \"array\",\n - \ \"description\": \"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.\"\n }\n }\n - \ },\n \"SearchResult\": {\n \"type\": \"object\",\n \"id\": - \"SearchResult\",\n \"description\": \"A search result contains information - about a YouTube video, channel, or playlist that matches the search parameters - specified in an API request. While a search result points to a uniquely identifiable - resource, like a video, it does not have its own persistent data.\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#searchResult\"\n - \ },\n \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"SearchResultSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - a search result, such as its title or description. For example, if the search - result is a video, then the title will be the video's title and the description - will be the video's description.\"\n }\n }\n },\n \"VideoPlayer\": - {\n \"type\": \"object\",\n \"description\": \"Player to be used - for a video playback.\",\n \"id\": \"VideoPlayer\",\n \"properties\": - {\n \"embedHeight\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"embedWidth\": {\n \"type\": \"string\",\n - \ \"format\": \"int64\",\n \"description\": \"The embed width\"\n - \ },\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\"\n - \ }\n }\n },\n \"ChannelSectionTargeting\": {\n \"properties\": - {\n \"languages\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The language the channel section is targeting.\"\n },\n \"countries\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The country the channel - section is targeting.\"\n },\n \"regions\": {\n \"type\": - \"array\",\n \"description\": \"The region the channel section is - targeting.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"description\": \"ChannelSection - targeting setting.\",\n \"id\": \"ChannelSectionTargeting\",\n \"type\": - \"object\"\n },\n \"ChannelAuditDetails\": {\n \"properties\": - {\n \"contentIdClaimsGoodStanding\": {\n \"description\": - \"Whether or not the channel has any unresolved claims.\",\n \"type\": - \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": {\n - \ \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n }\n },\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\",\n \"id\": \"ChannelAuditDetails\",\n - \ \"type\": \"object\"\n },\n \"LiveChatModeratorSnippet\": {\n - \ \"id\": \"LiveChatModeratorSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the live chat this moderator can act - on.\"\n },\n \"moderatorDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the moderator.\"\n }\n }\n - \ },\n \"WatchSettings\": {\n \"description\": \"Branding properties - for the watch. All deprecated.\",\n \"id\": \"WatchSettings\",\n \"type\": - \"object\",\n \"properties\": {\n \"featuredPlaylistId\": {\n - \ \"description\": \"An ID that uniquely identifies a playlist that - displays next to the video player.\",\n \"type\": \"string\"\n },\n - \ \"backgroundColor\": {\n \"type\": \"string\",\n \"description\": - \"The text color for the video watch page's branded area.\"\n },\n - \ \"textColor\": {\n \"description\": \"The background color - for the video watch page's branded area.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelSection\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"targeting\": {\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\",\n \"$ref\": - \"ChannelSectionTargeting\"\n },\n \"snippet\": {\n \"$ref\": - \"ChannelSectionSnippet\",\n \"description\": \"The snippet object - contains basic details about the channel section, such as its type, style - and title.\"\n },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\",\n \"$ref\": - \"ChannelSectionContentDetails\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"default\": \"youtube#channelSection\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelSection\"\n },\n \"VideoCategoryListResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoCategoryListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"A list of video - categories that can be associated with YouTube videos. In this map, the video - category ID is the map key, and its value is the corresponding videoCategory - resource.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoCategory\"\n }\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoCategoryListResponse\"\n },\n \"ActivitySnippet\": - {\n \"properties\": {\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the video was uploaded.\"\n },\n \"description\": - {\n \"description\": \"The description of the resource primarily - associated with the activity. @mutable youtube.activities.insert\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel associated with the activity.\"\n },\n \"groupId\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"description\": \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel responsible for this activity\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of activity that the resource describes.\"\n },\n \"title\": - {\n \"description\": \"The title of the resource primarily associated - with the activity.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - an activity, including title, description, thumbnails, activity type and group. - Next ID: 12\",\n \"id\": \"ActivitySnippet\"\n },\n \"LiveChatModerator\": - {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveChatModeratorSnippet\",\n \"description\": - \"The snippet object contains basic details about the moderator.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatModerator\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A *liveChatModerator* resource represents a moderator for a YouTube live - chat. A chat moderator has the ability to ban/unban users from a chat, remove - message, etc.\",\n \"id\": \"LiveChatModerator\"\n },\n \"PlaylistItem\": - {\n \"type\": \"object\",\n \"description\": \"A *playlistItem* - resource identifies another resource, such as a video, that is included in - a playlist. In addition, the playlistItem resource contains details about - the included resource that pertain specifically to how that resource is used - in that playlist. YouTube uses playlists to identify special collections of - videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods. For example, if - a user gives a positive rating to a video, you would insert that video into - the liked videos playlist for that user's channel.\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"default\": \"youtube#playlistItem\",\n \"type\": \"string\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object is included in the resource if the included item is - a YouTube video. The object contains additional information about the video.\",\n - \ \"$ref\": \"PlaylistItemContentDetails\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist item, such as its title and position in the playlist.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the playlist item.\",\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n - \ \"description\": \"The status object contains information about - the playlist item's privacy status.\"\n }\n },\n \"id\": - \"PlaylistItem\"\n },\n \"VideoStatistics\": {\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\",\n \"properties\": {\n \"viewCount\": {\n \"description\": - \"The number of times the video has been viewed.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"commentCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of comments for the video.\",\n \"format\": \"uint64\"\n },\n - \ \"dislikeCount\": {\n \"description\": \"The number of users - who have indicated that they disliked the video by giving it a negative rating.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"likeCount\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of users who have indicated - that they liked the video by giving it a positive rating.\"\n },\n - \ \"favoriteCount\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of users who currently - have the video marked as a favorite video.\"\n }\n },\n \"id\": - \"VideoStatistics\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsLike\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"type\": \"object\",\n \"description\": \"Information about a - resource that received a positive (like) rating.\"\n },\n \"Video\": - {\n \"description\": \"A *video* resource represents a YouTube video.\",\n - \ \"type\": \"object\",\n \"id\": \"Video\",\n \"properties\": - {\n \"liveStreamingDetails\": {\n \"$ref\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\"\n },\n - \ \"player\": {\n \"description\": \"The player object contains - information that you would use to play the video in an embedded player.\",\n - \ \"$ref\": \"VideoPlayer\"\n },\n \"processingDetails\": - {\n \"$ref\": \"VideoProcessingDetails\",\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\"\n - \ },\n \"recordingDetails\": {\n \"description\": \"The - recordingDetails object encapsulates information about the location, date - and address where the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"monetizationDetails\": {\n \"$ref\": \"VideoMonetizationDetails\",\n - \ \"description\": \"The monetizationDetails object encapsulates information - about the monetization status of the video.\"\n },\n \"status\": - {\n \"$ref\": \"VideoStatus\",\n \"description\": \"The - status object contains information about the video's uploading, processing, - and privacy statuses.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"VideoContentDetails\",\n \"description\": \"The contentDetails - object contains information about the video content, including the length - of the video and its aspect ratio.\"\n },\n \"projectDetails\": - {\n \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains statistics about the video.\",\n \"$ref\": - \"VideoStatistics\"\n },\n \"suggestions\": {\n \"description\": - \"The suggestions object encapsulates suggestions that identify opportunities - to improve the video quality or the metadata for the uploaded video. This - data can only be retrieved by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.videos.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"topicDetails\": {\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n - \ },\n \"fileDetails\": {\n \"description\": \"The fileDetails - object encapsulates information about the video file that was uploaded to - YouTube, including the file's resolution, duration, audio and video codecs, - stream bitrates, and more. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoFileDetails\"\n },\n \"snippet\": - {\n \"$ref\": \"VideoSnippet\",\n \"description\": \"The - snippet object contains basic details about the video, such as its title, - description, and category.\"\n },\n \"kind\": {\n \"default\": - \"youtube#video\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\"\n - \ },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"description\": \"The localizations object contains localized versions - of the basic details about the video, such as its title and description.\",\n - \ \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ }\n },\n \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n - \ \"description\": \"Age restriction details related to a video. This - data can only be retrieved by the video owner.\"\n }\n }\n },\n - \ \"AccessPolicy\": {\n \"description\": \"Rights management policy - for YouTube resources.\",\n \"id\": \"AccessPolicy\",\n \"type\": - \"object\",\n \"properties\": {\n \"exception\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of region codes that identify countries - where the default policy do not apply.\"\n },\n \"allowed\": - {\n \"description\": \"The value of allowed indicates whether the - access to the policy is allowed or denied by default.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"ChannelContentOwnerDetails\": - {\n \"id\": \"ChannelContentOwnerDetails\",\n \"description\": \"The - contentOwnerDetails object encapsulates channel data that is relevant for - YouTube Partners linked with the channel.\",\n \"properties\": {\n \"contentOwner\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the content owner linked to the channel.\"\n },\n \"timeLinked\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the channel was linked - to the content owner.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"MemberListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Member\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of members that match the request criteria.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"MemberListResponse\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label belonging to this abuse report - reason.\"\n },\n \"secondaryReasons\": {\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"description\": \"The secondary reasons associated with this reason, - if any are available. (There might be 0 or more.)\",\n \"type\": - \"array\"\n }\n },\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a video category, such as its localized title.\"\n },\n \"MembershipsLevelSnippet\": - {\n \"properties\": {\n \"creatorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the channel that's offering - channel memberships.\"\n },\n \"levelDetails\": {\n \"$ref\": - \"LevelDetails\",\n \"description\": \"Details about the pricing - level.\"\n }\n },\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": {\n \"id\": - \"LiveBroadcastStatus\",\n \"properties\": {\n \"liveBroadcastPriority\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Low priority broadcast: for low view count HoAs or other low - priority broadcasts.\",\n \"Normal priority broadcast: for regular - HoAs and broadcasts.\",\n \"High priority broadcast: for high profile - HoAs, like PixelCorp ones.\"\n ],\n \"description\": \"Priority - of the live broadcast event (internal state).\",\n \"enum\": [\n - \ \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ]\n },\n \"lifeCycleStatus\": - {\n \"description\": \"The broadcast's status. The status can be - updated using the API's liveBroadcasts.transition method.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"Incomplete settings, but otherwise - valid\",\n \"Complete settings\",\n \"Visible only to - partner, may need special UI treatment\",\n \"Viper is recording; - this means the \\\"clock\\\" is running\",\n \"The broadcast is - finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ]\n - \ },\n \"privacyStatus\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The broadcast's privacy status. Note that the - broadcast represents exactly one YouTube video, so the privacy settings are - identical to those supported for videos. In addition, you can set this field - by modifying the broadcast resource or by setting the privacyStatus field - of the corresponding video resource.\",\n \"type\": \"string\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"recordingStatus\": - {\n \"description\": \"The broadcast's recording status.\",\n \"enum\": - [\n \"liveBroadcastRecordingStatusUnspecified\",\n \"notRecording\",\n - \ \"recording\",\n \"recorded\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ]\n },\n \"madeForKids\": - {\n \"description\": \"Whether the broadcast is made for kids or - not, decided by YouTube instead of the creator. This field is read only.\",\n - \ \"type\": \"boolean\"\n }\n },\n \"description\": - \"Live broadcast state.\",\n \"type\": \"object\"\n },\n \"VideoFileDetailsAudioStream\": - {\n \"type\": \"object\",\n \"properties\": {\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n },\n \"channelCount\": {\n \"type\": - \"integer\",\n \"description\": \"The number of audio channels that - the stream contains.\",\n \"format\": \"uint32\"\n },\n \"bitrateBps\": - {\n \"description\": \"The audio stream's bitrate, in bits per second.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"codec\": {\n \"description\": \"The audio codec that the - stream uses.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"VideoFileDetailsAudioStream\",\n \"description\": \"Information about - an audio stream.\"\n },\n \"LiveStreamConfigurationIssue\": {\n \"id\": - \"LiveStreamConfigurationIssue\",\n \"properties\": {\n \"reason\": - {\n \"description\": \"The short-form reason for this issue.\",\n - \ \"type\": \"string\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"description\": \"The kind of error happening.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n - \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n - \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n - \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n - \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n - \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ]\n },\n \"severity\": {\n \"description\": - \"How severe this issue is to the stream.\",\n \"enum\": [\n \"info\",\n - \ \"warning\",\n \"error\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The long-form description of the - issue and how to resolve it.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoContentDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"duration\": {\n \"description\": \"The length of the - video. The tag value is an ISO 8601 duration in the format PT#M#S, in which - the letters PT indicate that the value specifies a period of time, and the - letters M and S refer to length in minutes and seconds, respectively. The - # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\",\n \"type\": - \"string\"\n },\n \"dimension\": {\n \"type\": \"string\",\n - \ \"description\": \"The value of dimension indicates whether the - video is available in 3D or in 2D.\"\n },\n \"regionRestriction\": - {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\"\n },\n - \ \"hasCustomThumbnail\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\"\n },\n - \ \"licensedContent\": {\n \"description\": \"The value of - is_license_content indicates whether the video is licensed content.\",\n \"type\": - \"boolean\"\n },\n \"projection\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"Specifies the projection format of the video.\",\n \"enum\": [\n - \ \"rectangular\",\n \"360\"\n ],\n \"type\": - \"string\"\n },\n \"definition\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"enum\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"description\": \"The value of definition indicates - whether the video is available in high definition or only in standard definition.\"\n - \ },\n \"contentRating\": {\n \"description\": \"Specifies - the ratings that the video received under various rating schemes.\",\n \"$ref\": - \"ContentRating\"\n },\n \"caption\": {\n \"enum\": - [\n \"true\",\n \"false\"\n ],\n \"type\": - \"string\",\n \"description\": \"The value of captions indicates - whether the video has captions or not.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"countryRestriction\": - {\n \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\",\n \"$ref\": - \"AccessPolicy\"\n }\n },\n \"description\": \"Details about - the content of a YouTube Video.\",\n \"id\": \"VideoContentDetails\"\n - \ },\n \"ActivityContentDetailsSubscription\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"description\": \"Information about a channel that a user - subscribed to.\",\n \"id\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"MembershipsLevelListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - pricing levels offered by a creator to the fans.\",\n \"items\": - {\n \"$ref\": \"MembershipsLevel\"\n }\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevelListResponse\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\"\n - \ },\n \"VideoMonetizationDetails\": {\n \"id\": \"VideoMonetizationDetails\",\n - \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The value of access indicates whether the video - can be monetized or not.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Details about monetization of a YouTube Video.\"\n - \ },\n \"LiveBroadcastListResponse\": {\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"A list of broadcasts that match the request criteria.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"default\": - \"youtube#liveBroadcastListResponse\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n }\n - \ }\n },\n \"ChannelSettings\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelSettings\",\n \"properties\": {\n \"showRelatedChannels\": - {\n \"description\": \"Whether related channels should be proposed.\",\n - \ \"type\": \"boolean\"\n },\n \"description\": {\n - \ \"description\": \"Specifies the channel description.\",\n \"type\": - \"string\"\n },\n \"showBrowseView\": {\n \"description\": - \"Whether the tab to browse the videos should be displayed.\",\n \"type\": - \"boolean\"\n },\n \"featuredChannelsTitle\": {\n \"description\": - \"Title for the featured channels tab.\",\n \"type\": \"string\"\n - \ },\n \"country\": {\n \"description\": \"The country - of the channel.\",\n \"type\": \"string\"\n },\n \"keywords\": - {\n \"description\": \"Lists keywords associated with the channel, - comma-separated.\",\n \"type\": \"string\"\n },\n \"featuredChannelsUrls\": - {\n \"description\": \"The list of featured channels.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"unsubscribedTrailer\": {\n \"description\": - \"The trailer of the channel, for users that are not subscribers.\",\n \"type\": - \"string\"\n },\n \"trackingAnalyticsAccountId\": {\n \"description\": - \"The ID for a Google Analytics account to track and measure traffic to the - channels.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"moderateComments\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - user-submitted comments left on the channel page need to be approved by the - channel owner to be publicly visible.\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"Specifies the - channel title.\"\n },\n \"profileColor\": {\n \"description\": - \"A prominent color that can be rendered on this channel page.\",\n \"type\": - \"string\"\n },\n \"defaultTab\": {\n \"type\": \"string\",\n - \ \"description\": \"Which content tab users should see when viewing - the channel.\"\n }\n },\n \"description\": \"Branding properties - for the channel view.\"\n },\n \"ChannelSectionListResponse\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of ChannelSections that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ }\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n \"default\": - \"youtube#channelSectionListResponse\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelSectionListResponse\"\n },\n \"Comment\": {\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment.\",\n \"$ref\": - \"CommentSnippet\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment.\"\n },\n \"kind\": - {\n \"default\": \"youtube#comment\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#comment\\\".\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A *comment* represents a single YouTube - comment.\",\n \"id\": \"Comment\"\n },\n \"ResourceId\": {\n \"type\": - \"object\",\n \"description\": \"A resource id is a generic reference - that points to another YouTube resource.\",\n \"id\": \"ResourceId\",\n - \ \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the referred resource, if that resource is a video. This property is only - present if the resourceId.kind value is youtube#video.\"\n },\n \"kind\": - {\n \"description\": \"The type of the API resource.\",\n \"type\": - \"string\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a channel. - This property is only present if the resourceId.kind value is youtube#channel.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"SubscriptionSnippet\": - {\n \"properties\": {\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"resourceId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The subscription's details.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The subscription's - title.\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the subscription was created.\",\n - \ \"format\": \"date-time\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the subscription - belongs to.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the subscriber's channel.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Basic details - about a subscription, including title, description and thumbnails of the subscribed - item.\",\n \"id\": \"SubscriptionSnippet\"\n },\n \"LiveBroadcastStatistics\": - {\n \"properties\": {\n \"totalChatCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The total number of live chat messages - currently on the broadcast. The property and its value will be present if - the broadcast is public, has the live chat feature enabled, and has at least - one message. Note that this field will not be filled after the broadcast ends. - So this property would not identify the number of chat messages for an archived - video of a completed live broadcast.\",\n \"type\": \"string\"\n - \ },\n \"concurrentViewers\": {\n \"description\": \"The - number of viewers currently watching the broadcast. The property and its value - will be present if the broadcast has current viewers and the broadcast owner - has not hidden the viewcount for the video. Note that YouTube stops tracking - the number of concurrent viewers for a broadcast when the broadcast ends. - So, this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Statistics about the live broadcast. These represent a snapshot of the values - at the time of the request. Statistics are only returned for live broadcasts.\",\n - \ \"type\": \"object\",\n \"id\": \"LiveBroadcastStatistics\"\n },\n - \ \"ThirdPartyLinkStatus\": {\n \"id\": \"ThirdPartyLinkStatus\",\n - \ \"type\": \"object\",\n \"description\": \"The third-party link - status object contains information about the status of the link.\",\n \"properties\": - {\n \"linkStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ]\n }\n - \ }\n },\n \"LiveChatTextMessageDetails\": {\n \"id\": \"LiveChatTextMessageDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"messageText\": - {\n \"type\": \"string\",\n \"description\": \"The user's - message.\"\n }\n }\n },\n \"MembershipsDuration\": {\n \"properties\": - {\n \"memberSince\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the user became a continuous member across all levels.\"\n - \ },\n \"memberTotalDurationMonths\": {\n \"description\": - \"The cumulative time the user has been a member across all levels in complete - months (the time is rounded down to the nearest integer).\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n }\n },\n \"id\": - \"MembershipsDuration\",\n \"type\": \"object\"\n },\n \"ChannelSnippet\": - {\n \"id\": \"ChannelSnippet\",\n \"description\": \"Basic details - about a channel, including title, description and thumbnails.\",\n \"type\": - \"object\",\n \"properties\": {\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"description\": \"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. When displaying thumbnails in your - application, make sure that your code uses the image URLs exactly as they - are returned in API responses. For example, your application should not use - the http domain instead of the https domain in a URL returned in an API response. - Beginning in July 2018, channel thumbnail URLs will only be available in the - https domain, which is how the URLs appear in API responses. After that time, - you might see broken images in your application if it tries to load YouTube - images from the http domain. Thumbnail images might be empty for newly created - channels and might take up to one day to populate.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel's title.\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the channel was created.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"customUrl\": {\n \"description\": - \"The custom url of the channel.\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"description\": \"The description of - the channel.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"description\": \"Localized title and description, read-only.\",\n - \ \"$ref\": \"ChannelLocalization\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel's default title and description.\"\n }\n }\n },\n - \ \"CommentSnippet\": {\n \"description\": \"Basic details about a - comment, such as its author and text.\",\n \"properties\": {\n \"viewerRating\": - {\n \"description\": \"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.\",\n \"enum\": [\n - \ \"none\",\n \"like\",\n \"dislike\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"The entity - is liked.\",\n \"The entity is disliked.\"\n ],\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"updatedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the comment - was last updated.\",\n \"type\": \"string\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"canRate\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the current viewer can rate this comment.\"\n },\n \"parentId\": - {\n \"type\": \"string\",\n \"description\": \"The unique - id of the parent comment, only set for replies.\"\n },\n \"textOriginal\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"textDisplay\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"likeCount\": - {\n \"type\": \"integer\",\n \"description\": \"The total - number of likes this comment has received.\",\n \"format\": \"uint32\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time when the comment was originally published.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"authorProfileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - the avatar of the user who posted the comment.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comment refers to, if any.\"\n },\n \"moderationStatus\": - {\n \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by a - moderator.\",\n \"\",\n \"The comment is unfit for display.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"description\": \"The comment's moderation status. - Will not be set if the comments were requested through the id filter.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"CommentSnippet\"\n - \ },\n \"ChannelProfileDetails\": {\n \"id\": \"ChannelProfileDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n },\n \"profileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channels's avatar URL.\"\n },\n - \ \"channelUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channel's URL.\"\n },\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The channel's display name.\"\n - \ }\n }\n },\n \"LiveBroadcast\": {\n \"properties\": - {\n \"status\": {\n \"description\": \"The status object contains - information about the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"default\": \"youtube#liveBroadcast\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the broadcast.\"\n },\n \"statistics\": - {\n \"$ref\": \"LiveBroadcastStatistics\",\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the event, including its - title, description, start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveBroadcast\",\n - \ \"description\": \"A *liveBroadcast* resource represents an event that - will be streamed, via live video, on YouTube.\"\n },\n \"ChannelLocalization\": - {\n \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for channel's title.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"The localized - strings for channel's description.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelLocalization\",\n \"type\": \"object\",\n - \ \"description\": \"Channel localization setting\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"properties\": {\n \"partsTotal\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"An estimate of the total number of parts that need to be processed for the - video. The number may be updated with more precise estimates while YouTube - processes the video.\"\n },\n \"timeLeftMs\": {\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"partsProcessed\": {\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n }\n - \ },\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"Video processing progress and completion time estimate.\",\n \"type\": - \"object\"\n },\n \"CdnSettings\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"ingestionType\": {\n \"enum\": - [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \" The method or protocol used to transmit the video stream.\"\n },\n - \ \"resolution\": {\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"format\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The format of the video stream that you are sending - to Youtube. \",\n \"type\": \"string\"\n },\n \"ingestionInfo\": - {\n \"$ref\": \"IngestionInfo\",\n \"description\": \"The - ingestionInfo object contains information that YouTube provides that you need - to transmit your RTMP or HTTP stream to YouTube.\"\n },\n \"frameRate\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ],\n \"description\": \"The frame rate of the inbound video - data.\"\n }\n },\n \"description\": \"Brief description of - the live stream cdn settings.\",\n \"id\": \"CdnSettings\"\n },\n - \ \"CommentSnippetAuthorChannelId\": {\n \"type\": \"object\",\n \"description\": - \"The id of the author's YouTube channel, if any.\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"CommentSnippetAuthorChannelId\"\n },\n \"Caption\": - {\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the caption.\",\n \"$ref\": - \"CaptionSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"default\": \"youtube#caption\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the caption track.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A *caption* resource represents a YouTube - caption track. A caption track is associated with exactly one YouTube video.\",\n - \ \"id\": \"Caption\"\n },\n \"PlaylistItemContentDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"note\": {\n - \ \"type\": \"string\",\n \"description\": \"A user-generated - note for this item.\"\n },\n \"videoPublishedAt\": {\n \"description\": - \"The date and time that the video was published to YouTube.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"startAt\": - {\n \"description\": \"The time, measured in seconds from the start - of the video, when the video should start playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) The default value is 0.\",\n \"type\": - \"string\"\n },\n \"endAt\": {\n \"description\": \"The - time, measured in seconds from the start of the video, when the video should - stop playing. (The playlist owner can specify the times when the video should - start and stop playing when the video is played in the context of the playlist.) - By default, assume that the video.endTime is the end of the video.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - a video. To retrieve the video resource, set the id query parameter to this - value in your API request.\"\n }\n },\n \"id\": \"PlaylistItemContentDetails\"\n - \ },\n \"Entity\": {\n \"id\": \"Entity\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"typeId\": {\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"url\": {\n \"type\": \"string\"\n }\n }\n },\n - \ \"VideoTopicDetails\": {\n \"properties\": {\n \"topicCategories\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Wikipedia - URLs that provide a high-level description of the video's content.\"\n },\n - \ \"relevantTopicIds\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\"\n - \ },\n \"topicIds\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n }\n },\n \"id\": \"VideoTopicDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Freebase topic information - related to the video.\"\n },\n \"LiveChatMessageDeletedDetails\": {\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageDeletedDetails\",\n - \ \"type\": \"object\"\n },\n \"InvideoTiming\": {\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\",\n \"type\": - \"object\",\n \"id\": \"InvideoTiming\",\n \"properties\": {\n \"offsetMs\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\"\n },\n - \ \"durationMs\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"Defines the duration in milliseconds - for which the promotion should be displayed. If missing, the client should - use the default.\"\n },\n \"type\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"description\": \"Describes a timing type. If the - value is offsetFromStart, then the offsetMs field represents an offset from - the start of the video. If the value is offsetFromEnd, then the offsetMs field - represents an offset from the end of the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n }\n }\n - \ },\n \"I18nRegionListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"description\": \"A list of regions where - YouTube is available. In this map, the i18n region ID is the map key, and - its value is the corresponding i18nRegion resource.\",\n \"items\": - {\n \"$ref\": \"I18nRegion\"\n },\n \"type\": - \"array\"\n },\n \"kind\": {\n \"default\": \"youtube#i18nRegionListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n - \ }\n },\n \"id\": \"I18nRegionListResponse\",\n \"type\": - \"object\"\n },\n \"VideoAgeGating\": {\n \"id\": \"VideoAgeGating\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"videoGameRating\": - {\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"Video game rating, if any.\",\n - \ \"type\": \"string\"\n },\n \"restricted\": {\n \"description\": - \"Age-restricted trailers. For redband trailers and adult-rated video-games. - Only users aged 18+ can view the content. The the field is true the content - is restricted to viewers aged 18+. Otherwise The field won't be present.\",\n - \ \"type\": \"boolean\"\n },\n \"alcoholContent\": {\n - \ \"description\": \"Indicates whether or not the video has alcoholic - beverage content. Only users of legal purchasing age in a particular country, - as identified by ICAP, can view the content.\",\n \"type\": \"boolean\"\n - \ }\n }\n },\n \"VideoGetRatingResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoGetRatingResponse\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"description\": \"A list of ratings that match the request criteria.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoRating\"\n }\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"id\": \"VideoGetRatingResponse\"\n },\n \"SuperChatEventSnippet\": - {\n \"properties\": {\n \"isSuperStickerEvent\": {\n \"description\": - \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Channel id where the event occurred.\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n },\n \"supporterDetails\": {\n \"description\": - \"Details about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\"\n },\n \"commentText\": - {\n \"type\": \"string\",\n \"description\": \"The text - contents of the comment left by the user.\"\n },\n \"amountMicros\": - {\n \"description\": \"The purchase amount, in micros of the purchase - currency. e.g., 1 is represented as 1000000.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"messageType\": {\n \"format\": - \"uint32\",\n \"description\": \"The tier for the paid message, which - is based on the amount of money spent to purchase the message.\",\n \"type\": - \"integer\"\n },\n \"createdAt\": {\n \"description\": - \"The date and time when the event occurred.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"displayString\": {\n - \ \"type\": \"string\",\n \"description\": \"A rendered string - that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). The - string is rendered for the given language.\"\n }\n },\n \"id\": - \"SuperChatEventSnippet\",\n \"type\": \"object\"\n },\n \"ChannelConversionPing\": - {\n \"description\": \"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.\",\n \"id\": \"ChannelConversionPing\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"context\": - {\n \"description\": \"Defines the context of the ping.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ],\n \"type\": \"string\"\n },\n - \ \"conversionUrl\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"PlaylistPlayer\": {\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"PlaylistPlayer\"\n },\n \"SuperStickerMetadata\": - {\n \"type\": \"object\",\n \"id\": \"SuperStickerMetadata\",\n - \ \"properties\": {\n \"altTextLanguage\": {\n \"description\": - \"Specifies the localization language in which the alt text is returned.\",\n - \ \"type\": \"string\"\n },\n \"stickerId\": {\n \"type\": - \"string\",\n \"description\": \"Unique identifier of the Super Sticker. - This is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\"\n },\n \"altText\": {\n \"type\": - \"string\",\n \"description\": \"Internationalized alt text that - describes the sticker image and any animation associated with it.\"\n }\n - \ }\n },\n \"ChannelSectionContentDetails\": {\n \"description\": - \"Details about a channelsection, including playlists and channels.\",\n \"properties\": - {\n \"channels\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"The channel ids for type multiple_channels.\"\n },\n \"playlists\": - {\n \"description\": \"The playlist ids for type single_playlist - and multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n }\n },\n \"id\": \"ChannelSectionContentDetails\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"type\": \"object\",\n \"description\": \"Information about - a video that was marked as a favorite video.\",\n \"properties\": {\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\"\n }\n },\n \"id\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"LiveChatMessageSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"hasDisplayContent\": {\n \"description\": \"Whether - the message has display content that should be displayed to users.\",\n \"type\": - \"boolean\"\n },\n \"authorChannelId\": {\n \"description\": - \"The ID of the user that authored this message, this field is not always - filled. textMessageEvent - the user that wrote the message fanFundingEvent - - the user that funded the broadcast newSponsorEvent - the user that just - became a sponsor memberMilestoneChatEvent - the member that sent the message - membershipGiftingEvent - the user that made the purchase giftMembershipReceivedEvent - - the user that received the gift membership messageDeletedEvent - the moderator - that took the action messageRetractedEvent - the author that retracted their - message userBannedEvent - the moderator that took the action superChatEvent - - the user that made the purchase superStickerEvent - the user that made the - purchase\",\n \"type\": \"string\"\n },\n \"newSponsorDetails\": - {\n \"description\": \"Details about the New Member Announcement - event, this is only set if the type is 'newSponsorEvent'. Please note that - \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n \"$ref\": - \"LiveChatNewSponsorDetails\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"superStickerDetails\": - {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\"\n - \ },\n \"type\": {\n \"description\": \"The type of - message, this will always be present, it determines the contents of the message - as well as which fields will be present.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n },\n \"liveChatId\": {\n - \ \"type\": \"string\"\n },\n \"membershipGiftingDetails\": - {\n \"description\": \"Details about the Membership Gifting event, - this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": - \"LiveChatMembershipGiftingDetails\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"textMessageDetails\": {\n \"$ref\": \"LiveChatTextMessageDetails\",\n - \ \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\"\n },\n \"displayMessage\": - {\n \"type\": \"string\",\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"superChatDetails\": {\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\",\n - \ \"$ref\": \"LiveChatSuperChatDetails\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the message was orignally published.\",\n \"type\": - \"string\"\n },\n \"fanFundingEventDetails\": {\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n }\n },\n - \ \"description\": \"Next ID: 33\",\n \"id\": \"LiveChatMessageSnippet\"\n - \ },\n \"CaptionSnippet\": {\n \"properties\": {\n \"trackKind\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The caption track's - type.\",\n \"enum\": [\n \"standard\",\n \"ASR\",\n - \ \"forced\"\n ],\n \"type\": \"string\"\n },\n - \ \"lastUpdated\": {\n \"description\": \"The date and time - when the caption track was last updated.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"audioTrackType\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of audio track associated with the caption track.\",\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ]\n },\n \"isCC\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Indicates whether - the track contains closed captions for the deaf and hard of hearing. The default - value is false.\"\n },\n \"name\": {\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"language\": {\n \"type\": - \"string\",\n \"description\": \"The language of the caption track. - The property value is a BCP-47 language tag.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"isAutoSynced\": {\n \"description\": - \"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.\",\n \"type\": \"boolean\"\n },\n \"failureReason\": - {\n \"description\": \"The reason that YouTube failed to process - the caption track. This property is only present if the state property's value - is failed.\",\n \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"isLarge\": {\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\",\n \"type\": \"boolean\"\n },\n - \ \"isDraft\": {\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\",\n - \ \"type\": \"boolean\"\n },\n \"status\": {\n \"description\": - \"The caption track's status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ]\n },\n \"isEasyReader\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"videoId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video associated with the caption track. - @mutable youtube.captions.insert\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"CaptionSnippet\",\n \"description\": \"Basic details - about a caption track, such as its language and name.\"\n },\n \"ChannelConversionPings\": - {\n \"type\": \"object\",\n \"id\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\",\n \"properties\": - {\n \"pings\": {\n \"description\": \"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.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ }\n }\n }\n },\n \"PlaylistContentDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"itemCount\": - {\n \"description\": \"The number of videos in the playlist.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n - \ },\n \"id\": \"PlaylistContentDetails\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\",\n - \ \"properties\": {\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ },\n \"amountMicros\": {\n \"description\": \"The - amount of the fund.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n }\n }\n },\n \"LocalizedProperty\": {\n \"id\": - \"LocalizedProperty\",\n \"type\": \"object\",\n \"properties\": - {\n \"default\": {\n \"type\": \"string\"\n },\n \"localized\": - {\n \"items\": {\n \"$ref\": \"LocalizedString\"\n },\n - \ \"type\": \"array\"\n },\n \"defaultLanguage\": {\n - \ \"description\": \"The language of the default property.\",\n \"$ref\": - \"LanguageTag\"\n }\n }\n },\n \"MembershipsDurationAtLevel\": - {\n \"properties\": {\n \"level\": {\n \"description\": - \"Pricing level ID.\",\n \"type\": \"string\"\n },\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member for the given level.\",\n \"type\": \"string\"\n },\n - \ \"memberTotalDurationMonths\": {\n \"format\": \"int32\",\n - \ \"description\": \"The cumulative time the user has been a member - for the given level in complete months (the time is rounded down to the nearest - integer).\",\n \"type\": \"integer\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"MembershipsDurationAtLevel\"\n },\n \"SearchResultSnippet\": - {\n \"id\": \"SearchResultSnippet\",\n \"description\": \"Basic - details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"properties\": {\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The creation date and time of - the resource that the search result identifies.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the search result. 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.\"\n },\n - \ \"channelId\": {\n \"description\": \"The value that YouTube - uses to uniquely identify the channel that published the resource that the - search result identifies.\",\n \"type\": \"string\"\n },\n - \ \"channelTitle\": {\n \"description\": \"The title of the - channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The title of the search result.\"\n - \ },\n \"liveBroadcastContent\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The live - broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"A description of the search result.\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelTopicDetails\": {\n \"id\": \"ChannelTopicDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"topicIds\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of Freebase - topic IDs associated with the channel. You can retrieve information about - each topic using the Freebase Topic API.\"\n },\n \"topicCategories\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Wikipedia URLs that describe the channel's - content.\",\n \"type\": \"array\"\n }\n },\n \"description\": - \"Freebase topic information related to the channel.\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"id\": \"LiveChatMessageAuthorDetails\",\n \"properties\": - {\n \"isChatSponsor\": {\n \"description\": \"Whether the - author is a sponsor of the live chat.\",\n \"type\": \"boolean\"\n - \ },\n \"displayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's display name.\"\n },\n \"isVerified\": - {\n \"description\": \"Whether the author's identity has been verified - by YouTube.\",\n \"type\": \"boolean\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"isChatModerator\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author is a moderator of the live - chat.\"\n },\n \"profileImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The channels's avatar URL.\"\n },\n \"channelId\": - {\n \"description\": \"The YouTube channel ID.\",\n \"type\": - \"string\"\n },\n \"isChatOwner\": {\n \"description\": - \"Whether the author is the owner of the live chat.\",\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\"\n },\n \"I18nLanguage\": - {\n \"description\": \"An *i18nLanguage* resource identifies a UI language - currently supported by YouTube.\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n language.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"default\": \"youtube#i18nLanguage\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"I18nLanguage\"\n },\n \"LiveStreamContentDetails\": - {\n \"properties\": {\n \"isReusable\": {\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \",\n \"type\": \"boolean\"\n },\n \"closedCaptionsIngestionUrl\": - {\n \"type\": \"string\",\n \"description\": \"The ingestion - URL where the closed captions of this stream are sent.\"\n }\n },\n - \ \"id\": \"LiveStreamContentDetails\",\n \"description\": \"Detailed - settings of a stream.\",\n \"type\": \"object\"\n },\n \"TokenPagination\": - {\n \"id\": \"TokenPagination\",\n \"description\": \"Stub token - pagination template to suppress results.\",\n \"properties\": {},\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsSocial\": {\n \"description\": - \"Details about a social network post.\",\n \"properties\": {\n \"imageUrl\": - {\n \"description\": \"An image of the post's author.\",\n \"type\": - \"string\"\n },\n \"referenceUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL of the social network post.\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"description\": - \"The name of the social network.\",\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\",\n \"$ref\": - \"ResourceId\"\n },\n \"author\": {\n \"description\": - \"The author of the social network post.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsSocial\"\n - \ },\n \"InvideoPosition\": {\n \"type\": \"object\",\n \"properties\": - {\n \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"corner\"\n ],\n \"description\": \"Defines - the position type.\",\n \"enumDescriptions\": [\n \"\"\n - \ ]\n },\n \"cornerPosition\": {\n \"enum\": - [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n - \ \"bottomRight\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"Describes in which corner of the - video the visual widget will appear.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Describes the spatial position - of a visual widget inside a video. It is a union of various position types, - out of which only will be set one.\",\n \"id\": \"InvideoPosition\"\n - \ },\n \"Playlist\": {\n \"description\": \"A *playlist* resource - represents a YouTube playlist. A playlist is a collection of videos that can - be viewed sequentially and shared with other users. A playlist can contain - up to 200 videos, and YouTube does not limit the number of playlists that - each user creates. By default, playlists are publicly visible to other users, - but playlists can be public or private. YouTube also uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n - \ \"id\": \"Playlist\",\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the playlist.\",\n \"type\": \"string\"\n },\n - \ \"player\": {\n \"description\": \"The player object contains - information that you would use to play the playlist in an embedded player.\",\n - \ \"$ref\": \"PlaylistPlayer\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains status information for the playlist.\",\n \"$ref\": - \"PlaylistStatus\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\",\n \"$ref\": \"PlaylistSnippet\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"PlaylistContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - like video count.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"default\": \"youtube#playlist\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelSectionSnippet\": {\n \"description\": - \"Basic details about a channel section, including title, style and position.\",\n - \ \"properties\": {\n \"style\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The style of the channel section.\",\n \"enum\": - [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the channel section's default title and description.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"The channel section's title for multiple_playlists and multiple_channels.\",\n - \ \"type\": \"string\"\n },\n \"localized\": {\n \"$ref\": - \"ChannelSectionLocalization\",\n \"description\": \"Localized title, - read-only.\"\n },\n \"type\": {\n \"description\": - \"The type of the channel section.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ]\n },\n \"position\": - {\n \"format\": \"uint32\",\n \"description\": \"The position - of the channel section in the channel.\",\n \"type\": \"integer\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelSectionSnippet\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"description\": - \"Information that identifies the recommended resource.\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the recommended resource.\"\n },\n \"reason\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"description\": \"The - reason that the resource is recommended to the user.\",\n \"type\": - \"string\"\n },\n \"seedResourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The seedResourceId object contains - information about the resource that caused the recommendation.\"\n }\n - \ },\n \"id\": \"ActivityContentDetailsRecommendation\"\n },\n - \ \"LiveChatNewSponsorDetails\": {\n \"properties\": {\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level that the viewer just had joined. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"isUpgrade\": {\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\",\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatNewSponsorDetails\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"type\": \"object\",\n \"description\": \"Details about a channel - bulletin post.\",\n \"id\": \"ActivityContentDetailsBulletin\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\"\n }\n - \ }\n },\n \"PlaylistItemSnippet\": {\n \"id\": \"PlaylistItemSnippet\",\n - \ \"properties\": {\n \"videoOwnerChannelTitle\": {\n \"description\": - \"Channel title for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - item's title.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the user that added the item to the playlist.\",\n \"type\": \"string\"\n - \ },\n \"playlistId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify thGe playlist that the playlist item - is in.\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"videoOwnerChannelId\": - {\n \"description\": \"Channel id for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the item was added to - the playlist.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The item's description.\"\n },\n - \ \"channelTitle\": {\n \"description\": \"Channel title for - the channel that the playlist item belongs to.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist item. 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.\"\n },\n \"resourceId\": {\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that is included in the playlist as the playlist item.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"$ref\": \"ResourceId\"\n },\n \"position\": {\n - \ \"format\": \"uint32\",\n \"description\": \"The order - in which the item appears in the playlist. The value uses a zero-based index, - so the first item has a position of 0, the second item has a position of 1, - and so forth.\",\n \"type\": \"integer\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about a playlist, including - title, description and thumbnails. Basic details of a YouTube Playlist item - provided by the author. Next ID: 15\"\n },\n \"PlaylistLocalization\": - {\n \"id\": \"PlaylistLocalization\",\n \"description\": \"Playlist - localization setting\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for playlist's - title.\"\n },\n \"description\": {\n \"description\": - \"The localized strings for playlist's description.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"CommentThread\": - {\n \"id\": \"CommentThread\",\n \"description\": \"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.\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the comment thread.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n - \ },\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n - \ \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#commentThread\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"PlaylistSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that published the playlist.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"description\": - \"The channel title of the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"thumbnailVideoId\": {\n \"type\": - \"string\",\n \"description\": \"Note: if the playlist has a custom - thumbnail, this field will not be populated. The video id selected by the - user that will be used as the thumbnail of this playlist. This field defaults - to the first publicly viewable video in the playlist, if: 1. The user has - never selected a video to be the thumbnail of the playlist. 2. The user selects - a video to be the thumbnail, and then removes that video from the playlist. - 3. The user selects a non-owned video to be the thumbnail, but that video - becomes private, or gets deleted.\"\n },\n \"tags\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"Keyword tags associated with the playlist.\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the playlist was created.\",\n - \ \"format\": \"date-time\"\n },\n \"thumbnails\": {\n - \ \"description\": \"A map of thumbnail images associated with the - playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"localized\": - {\n \"$ref\": \"PlaylistLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the playlist's default title - and description.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"description\": \"The playlist's title.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The playlist's description.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"PlaylistSnippet\",\n \"description\": \"Basic - details about a playlist, including title, description and thumbnails.\"\n - \ },\n \"VideoListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"eventId\": {\n - \ \"type\": \"string\",\n \"description\": \"Serialized EventId - of the request which produced this response.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Video\"\n },\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n },\n \"id\": \"VideoListResponse\"\n - \ },\n \"SubscriptionSubscriberSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"SubscriptionSubscriberSnippet\",\n \"description\": \"Basic - details about a subscription's subscriber including title, description, channel - ID and thumbnails.\",\n \"properties\": {\n \"channelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The channel - ID of the subscriber.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The description of the subscriber.\"\n - \ },\n \"title\": {\n \"description\": \"The title of - the subscriber.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"Thumbnails - for this subscriber.\"\n }\n }\n },\n \"MonitorStreamInfo\": - {\n \"id\": \"MonitorStreamInfo\",\n \"properties\": {\n \"enableMonitorStream\": - {\n \"description\": \"This value determines whether the monitor - stream is enabled for the broadcast. If the monitor stream is enabled, then - YouTube will broadcast the event content on a special stream intended only - for the broadcaster's consumption. The broadcaster can use the stream to review - the event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"boolean\"\n },\n \"broadcastStreamDelayMs\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"If you have set the enableMonitorStream - property to true, then this property determines the length of the live broadcast - delay.\"\n },\n \"embedHtml\": {\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Settings and Info of the monitor stream\"\n },\n \"ThirdPartyLinkSnippet\": - {\n \"id\": \"ThirdPartyLinkSnippet\",\n \"properties\": {\n \"type\": - {\n \"type\": \"string\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"description\": \"Type of the link named after the entities that - are being linked.\"\n },\n \"channelToStoreLink\": {\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n }\n - \ },\n \"description\": \"Basic information about a third party account - link, including its type and type-specific information.\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsPlaylistItem\": {\n \"type\": - \"object\",\n \"description\": \"Information about a new playlist item.\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n },\n \"playlistItemId\": - {\n \"type\": \"string\",\n \"description\": \"ID of the - item within the playlist.\"\n },\n \"playlistId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"VideoSuggestionsTagSuggestion\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoSuggestionsTagSuggestion\",\n \"description\": \"A - single tag suggestion with it's relevance information.\",\n \"properties\": - {\n \"tag\": {\n \"type\": \"string\",\n \"description\": - \"The keyword tag suggested for the video.\"\n },\n \"categoryRestricts\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A set of video categories for which the tag is - relevant. You can use this information to display appropriate tag suggestions - based on the video category that the video uploader associates with the video. - By default, tag suggestions are relevant for all categories if there are no - restricts defined for the keyword.\",\n \"type\": \"array\"\n }\n - \ }\n },\n \"ChannelContentDetails\": {\n \"properties\": {\n - \ \"relatedPlaylists\": {\n \"type\": \"object\",\n \"properties\": - {\n \"uploads\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use - the videos.insert method to upload new videos and the videos.delete method - to delete previously uploaded videos.\"\n },\n \"watchLater\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch later playlist. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"watchHistory\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s watch history. Use the playlistItems.insert and - playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"favorites\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"likes\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n }\n }\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelContentDetails\",\n - \ \"description\": \"Details about the content of a channel.\"\n },\n - \ \"SearchListResponse\": {\n \"type\": \"object\",\n \"id\": - \"SearchListResponse\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"default\": \"youtube#searchListResponse\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SearchResult\"\n },\n \"description\": - \"Pagination information for token pagination.\"\n },\n \"regionCode\": - {\n \"type\": \"string\"\n }\n }\n },\n \"LiveStreamSnippet\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamSnippet\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The stream's description. The value cannot be longer than 10000 characters.\"\n - \ },\n \"isDefaultStream\": {\n \"type\": \"boolean\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The stream's title. The value must be between - 1 and 128 characters long.\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the stream was created.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that is transmitting the stream.\"\n - \ }\n }\n },\n \"LanguageTag\": {\n \"id\": \"LanguageTag\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"value\": {\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoLocalization\": - {\n \"type\": \"object\",\n \"id\": \"VideoLocalization\",\n \"properties\": - {\n \"title\": {\n \"description\": \"Localized version of - the video's title.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's description.\"\n }\n },\n \"description\": - \"Localized versions of certain video properties (e.g. title).\"\n },\n - \ \"LiveChatMembershipGiftingDetails\": {\n \"properties\": {\n \"giftMembershipsCount\": - {\n \"format\": \"int32\",\n \"description\": \"The number - of gift memberships purchased by the user.\",\n \"type\": \"integer\"\n - \ },\n \"giftMembershipsLevelName\": {\n \"description\": - \"The name of the level of the gift memberships purchased by the user. The - Level names are defined by the YouTube channel offering the Membership. In - some situations this field isn't filled.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"type\": \"object\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ },\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label for this abuse report secondary reason.\"\n }\n - \ }\n },\n \"ActivityContentDetailsChannelItem\": {\n \"id\": - \"ActivityContentDetailsChannelItem\",\n \"type\": \"object\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\"\n }\n },\n \"description\": - \"Details about a resource which was added to a channel.\"\n },\n \"VideoFileDetails\": - {\n \"id\": \"VideoFileDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"videoStreams\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n },\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\"\n },\n - \ \"fileName\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\"\n },\n \"bitrateBps\": - {\n \"description\": \"The uploaded video file's combined (video - and audio) bitrate in bits per second.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"fileType\": {\n \"description\": - \"The uploaded file's type as detected by YouTube's video processing engine. - Currently, YouTube only processes video files, but this field is present whether - a video file or another type of file was uploaded.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Known video - file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an MP3 - file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ]\n },\n \"creationTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the uploaded video file was created. The value is specified - in ISO 8601 format. Currently, the following ISO 8601 formats are supported: - - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: - YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"container\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded video file's container - format.\"\n },\n \"fileSize\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The uploaded - file's size in bytes. This field is present whether a video file or another - type of file was uploaded.\"\n },\n \"audioStreams\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"description\": \"A list of audio streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about an audio stream.\"\n },\n \"durationMs\": {\n \"description\": - \"The length of the uploaded video in milliseconds.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n }\n },\n \"description\": - \"Describes original video file properties, including technical details about - audio and video streams, but also metadata information like content length, - digitization time, or geotagging information.\"\n },\n \"PropertyValue\": - {\n \"description\": \"A pair Property / Value.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\",\n - \ \"description\": \"The property's value.\"\n },\n \"property\": - {\n \"type\": \"string\",\n \"description\": \"A property.\"\n - \ }\n },\n \"id\": \"PropertyValue\"\n },\n \"VideoAbuseReport\": - {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReport\",\n \"properties\": - {\n \"reasonId\": {\n \"description\": \"The high-level, or - primary, reason that the content is abusive. The value is an abuse report - reason ID.\",\n \"type\": \"string\"\n },\n \"secondaryReasonId\": - {\n \"type\": \"string\",\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\"\n },\n \"language\": {\n \"description\": - \"The language that the content was viewed in.\",\n \"type\": \"string\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n },\n - \ \"comments\": {\n \"description\": \"Additional comments - regarding the abuse report.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ContentRating\": {\n \"properties\": {\n \"nbcRating\": - {\n \"description\": \"The video's rating from the Maldives National - Bureau of Classification.\",\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n - \ \"18+R\",\n \"PU\",\n \"\"\n ]\n - \ },\n \"smaisRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\",\n - \ \"type\": \"string\"\n },\n \"rteRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from Ireland's - Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"enum\": [\n - \ \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ]\n },\n \"mccypRating\": {\n \"enum\": [\n - \ \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n - \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ]\n },\n \"bbfcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - British Board of Film Classification (BBFC) rating.\",\n \"enum\": - [\n \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ]\n },\n \"kmrbRating\": {\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enum\": [\n - \ \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ]\n },\n \"moctwRating\": - {\n \"description\": \"The video's rating from Taiwan's Ministry - of Culture (\u6587\u5316\u90E8).\",\n \"enum\": [\n \"moctwUnspecified\",\n - \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n - \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n - \ \"moctwR15\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ],\n \"type\": \"string\"\n },\n \"mekuRating\": - {\n \"description\": \"The video's rating from Finland's Kansallinen - Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"egfilmRating\": {\n \"description\": - \"The video's rating in Egypt.\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"tvpgRating\": {\n \"description\": \"The video's TV Parental - Guidelines (TVPG) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"tvpgUnspecified\",\n \"tvpgY\",\n \"tvpgY7\",\n - \ \"tvpgY7Fv\",\n \"tvpgG\",\n \"tvpgPg\",\n - \ \"pg14\",\n \"tvpgMa\",\n \"tvpgUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ]\n },\n \"incaaRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"ATP (Apta - para todo publico)\",\n \"13 (Solo apta para mayores de 13 a\xF1os)\",\n - \ \"16 (Solo apta para mayores de 16 a\xF1os)\",\n \"18 - (Solo apta para mayores de 18 a\xF1os)\",\n \"X (Solo apta para - mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n \"\"\n - \ ],\n \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n - \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n - \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"description\": - \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\"\n },\n \"mibacRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Ministero dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n - \ \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"cscfRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Luxembourg's Commission de surveillance de la classification des films - (CSCF).\",\n \"type\": \"string\",\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ]\n },\n - \ \"nbcplRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating in Poland.\",\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"nfvcbRating\": {\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"menaMpaaRating\": {\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To - keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\",\n \"type\": \"string\"\n },\n \"medietilsynetRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"description\": \"The video's rating from Medietilsynet, - the Norwegian Media Authority.\"\n },\n \"ecbmctRating\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"description\": \"Rating system in Turkey - Evaluation - and Classification Board of the Ministry of Culture and Tourism\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ]\n },\n \"catvfrRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ],\n \"description\": \"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.\"\n },\n \"cccRating\": {\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n - \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"nmcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n - \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n - \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n - \ ],\n \"description\": \"The National Media Council ratings - system for United Arab Emirates.\"\n },\n \"rcnofRating\": {\n - \ \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Hungarian - Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\"\n - \ },\n \"pefilmRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Peru.\",\n \"enum\": - [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"PT\",\n - \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n - \ ]\n },\n \"russiaRating\": {\n \"enum\": - [\n \"russiaUnspecified\",\n \"russia0\",\n \"russia6\",\n - \ \"russia12\",\n \"russia16\",\n \"russia18\",\n - \ \"russiaUnrated\"\n ],\n \"description\": \"The - video's National Film Registry of the Russian Federation (MKRF - Russia) rating.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"0+\",\n \"6+\",\n \"12+\",\n \"16+\",\n - \ \"18+\",\n \"\"\n ]\n },\n \"lsfRating\": - {\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n - \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n - \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"description\": \"The video's rating from Indonesia's - Lembaga Sensor Film.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ]\n },\n \"oflcRating\": - {\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Office of Film and Literature Classification - (OFLC - New Zealand) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"M\",\n \"R13\",\n - \ \"R15\",\n \"R16\",\n \"R18\",\n \"\",\n - \ \"RP13\",\n \"RP16\",\n \"RP18\"\n ]\n - \ },\n \"mdaRating\": {\n \"description\": \"The video's - rating from Singapore's Media Development Authority (MDA) and, specifically, - it's Board of Film Censors (BFC).\",\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"czfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in the Czech - Republic.\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"mccaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"cicfRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Commission de Contr\xF4le des Films (Belgium).\"\n },\n \"ifcoRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"15A\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's Irish - Film Classification Office (IFCO - Ireland) rating. See the IFCO website for - more information.\",\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ]\n },\n \"djctqRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n - \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n - \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n - \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n - \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n - \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n - \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n - \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n - \ ],\n \"description\": \"The video's Departamento de Justi\xE7a, - Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\"\n - \ },\n \"resorteviolenciaRating\": {\n \"enum\": [\n - \ \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Venezuela.\"\n },\n \"chvrsRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ],\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"mpaaRating\": {\n \"enum\": [\n - \ \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\"\n },\n - \ \"grfilmRating\": {\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"description\": \"The video's rating in Greece.\",\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"eefilmRating\": {\n \"description\": \"The video's rating - in Estonia.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n - \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n - \ \"K-16\",\n \"\"\n ],\n \"enum\": - [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n \"eefilmL\",\n - \ \"eefilmMs6\",\n \"eefilmK6\",\n \"eefilmMs12\",\n - \ \"eefilmK12\",\n \"eefilmK14\",\n \"eefilmK16\",\n - \ \"eefilmUnrated\"\n ]\n },\n \"smsaRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Statens medier\xE5d (Sweden's National Media Council).\",\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"enum\": [\n - \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ]\n },\n \"mocRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Ministerio de Cultura (Colombia) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ],\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ]\n },\n \"ilfilmRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Israel.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"chfilmRating\": {\n \"enum\": - [\n \"chfilmUnspecified\",\n \"chfilm0\",\n \"chfilm6\",\n - \ \"chfilm12\",\n \"chfilm16\",\n \"chfilm18\",\n - \ \"chfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Switzerland.\",\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"rtcRating\": {\n \"enum\": [\n \"rtcUnspecified\",\n - \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n - \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n - \ ],\n \"description\": \"The video's General Directorate - of Radio, Television and Cinematography (Mexico) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"icaaRating\": - {\n \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"type\": - \"string\",\n \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ]\n },\n \"cncRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"description\": \"Rating - system in France - Commission de classification cinematographique\",\n \"type\": - \"string\"\n },\n \"acbRating\": {\n \"description\": - \"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.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"Programs that have been given a P classification - by the Australian Communications and Media Authority. These programs are intended - for preschool children.\",\n \"Programs that have been given a - C classification by the Australian Communications and Media Authority. These - programs are intended for children (other than preschool children) who are - younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"agcomRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"description\": \"The - video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\",\n \"type\": \"string\"\n },\n \"mpaatRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"description\": \"The rating - system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ]\n },\n - \ \"ytRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n - \ \"description\": \"A rating that YouTube uses to identify age-restricted - content.\"\n },\n \"csaRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n - \ \"description\": \"The video's rating from France's Conseil sup\xE9rieur - de l\u2019audiovisuel, which rates broadcast content.\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ]\n },\n \"mtrcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ]\n },\n \"eirinRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ],\n - \ \"description\": \"The video's Eirin (\u6620\u502B) rating. Eirin - is the Japanese rating system.\"\n },\n \"fpbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\"\n },\n - \ \"fpbRatingReasons\": {\n \"items\": {\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"description\": \"Reasons that explain - why the video received its FPB (South Africa) rating.\",\n \"type\": - \"array\"\n },\n \"nkclvRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Nacion\xE3lais Kino - centrs (National Film Centre of Latvia).\",\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"cbfcRating\": {\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ]\n },\n - \ \"anatelRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n - \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n - \ ],\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Anatel (Asociaci\xF3n - Nacional de Televisi\xF3n) rating for Chilean television.\"\n },\n - \ \"kijkwijzerRating\": {\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating - from the Nederlands Instituut voor de Classificatie van Audiovisuele Media - (Netherlands).\",\n \"type\": \"string\"\n },\n \"bfvcRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"E\",\n \"13\",\n \"15\",\n - \ \"18\",\n \"20\",\n \"B\",\n \"\"\n - \ ],\n \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ],\n \"description\": \"The - video's rating from Thailand's Board of Film and Video Censors.\"\n },\n - \ \"mcstRating\": {\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating system for Vietnam - - MCST\",\n \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ]\n - \ },\n \"bmukkRating\": {\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"type\": \"string\"\n - \ },\n \"nfrcRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ]\n },\n \"fcbmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"type\": - \"string\",\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n - \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n - \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n - \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ]\n },\n - \ \"cceRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"description\": \"The video's rating from Portugal's - Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enum\": - [\n \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n - \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n - \ \"cceUnrated\",\n \"cceM14\"\n ]\n },\n - \ \"fcoRating\": {\n \"description\": \"The video's rating - from Hong Kong's Office for Film, Newspaper and Article Administration.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"I\",\n - \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"fcoUnspecified\",\n \"fcoI\",\n \"fcoIia\",\n - \ \"fcoIib\",\n \"fcoIi\",\n \"fcoIii\",\n - \ \"fcoUnrated\"\n ]\n },\n \"kfcbRating\": - {\n \"description\": \"The video's rating from the Kenya Film Classification - Board.\",\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"kfcbUnspecified\",\n - \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n - \ \"kfcbR\",\n \"kfcbUnrated\"\n ]\n },\n - \ \"skfilmRating\": {\n \"description\": \"The video's rating - in Slovakia.\",\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"cnaRating\": {\n \"description\": \"The video's - rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"fskRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"FSK - 0\",\n \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"enum\": - [\n \"fskUnspecified\",\n \"fsk0\",\n \"fsk6\",\n - \ \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n \"fskUnrated\"\n - \ ]\n },\n \"djctqRatingReasons\": {\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"fmocRating\": {\n \"enum\": [\n - \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ]\n },\n \"catvRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ],\n \"type\": - \"string\",\n \"description\": \"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.\"\n - \ }\n },\n \"id\": \"ContentRating\",\n \"type\": \"object\",\n - \ \"description\": \"Ratings schemes. The country-specific ratings are - mostly for movies and shows. LINT.IfChange\"\n },\n \"MembershipsDetails\": - {\n \"id\": \"MembershipsDetails\",\n \"properties\": {\n \"membershipsDuration\": - {\n \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\",\n \"$ref\": \"MembershipsDuration\"\n - \ },\n \"membershipsDurationAtLevels\": {\n \"description\": - \"Data about memberships duration on particular pricing levels.\",\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"type\": - \"array\"\n },\n \"highestAccessibleLevel\": {\n \"type\": - \"string\",\n \"description\": \"Id of the highest level that the - user has access to at the moment.\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"description\": \"Display name for the highest level that the - user has access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"accessibleLevels\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveStreamListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#liveStreamListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveStream\"\n },\n \"description\": - \"A list of live streams that match the request criteria.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n }\n },\n \"id\": \"LiveStreamListResponse\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamStatus\": {\n \"type\": - \"object\",\n \"description\": \"Brief description of the live stream - status.\",\n \"id\": \"LiveStreamStatus\",\n \"properties\": {\n - \ \"healthStatus\": {\n \"description\": \"The health status - of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n },\n - \ \"streamStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ]\n }\n }\n },\n \"AbuseReport\": - {\n \"id\": \"AbuseReport\",\n \"properties\": {\n \"relatedEntities\": - {\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n - \ \"type\": \"array\"\n },\n \"abuseTypes\": {\n \"items\": - {\n \"$ref\": \"AbuseType\"\n },\n \"type\": - \"array\"\n },\n \"description\": {\n \"type\": \"string\"\n - \ },\n \"subject\": {\n \"$ref\": \"Entity\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"PlaylistItemListResponse\": - {\n \"id\": \"PlaylistItemListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"description\": \"A list of playlist - items that match the request criteria.\",\n \"type\": \"array\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\"\n }\n }\n },\n \"ThumbnailDetails\": - {\n \"properties\": {\n \"standard\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The standard quality image for this resource.\"\n - \ },\n \"medium\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The medium quality image for this resource.\"\n },\n \"maxres\": - {\n \"description\": \"The maximum resolution quality image for this - resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"default\": - {\n \"description\": \"The default image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"high\": {\n \"description\": - \"The high quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ThumbnailDetails\",\n - \ \"description\": \"Internal representation of thumbnails for a YouTube - resource.\"\n },\n \"I18nRegion\": {\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#i18nRegion\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n region.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n }\n },\n \"id\": - \"I18nRegion\",\n \"description\": \"A *i18nRegion* resource identifies - a region where YouTube is available.\",\n \"type\": \"object\"\n },\n - \ \"ChannelBrandingSettings\": {\n \"type\": \"object\",\n \"properties\": - {\n \"hints\": {\n \"items\": {\n \"$ref\": \"PropertyValue\"\n - \ },\n \"description\": \"Additional experimental branding - properties.\",\n \"type\": \"array\"\n },\n \"image\": - {\n \"description\": \"Branding properties for branding images.\",\n - \ \"$ref\": \"ImageSettings\"\n },\n \"channel\": {\n - \ \"description\": \"Branding properties for the channel view.\",\n - \ \"$ref\": \"ChannelSettings\"\n },\n \"watch\": {\n - \ \"$ref\": \"WatchSettings\",\n \"description\": \"Branding - properties for the watch page.\"\n }\n },\n \"id\": \"ChannelBrandingSettings\",\n - \ \"description\": \"Branding properties of a YouTube channel.\"\n },\n - \ \"PlaylistListResponse\": {\n \"properties\": {\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of playlists - that match the request criteria\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#playlistListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"PlaylistListResponse\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsPromotedItem\": {\n \"id\": - \"ActivityContentDetailsPromotedItem\",\n \"type\": \"object\",\n \"properties\": - {\n \"impressionUrl\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The list of impression - URLs. The client should ping all of these URLs to indicate that the user was - shown this promoted item.\",\n \"type\": \"array\"\n },\n - \ \"ctaType\": {\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"description\": \"The type of call-to-action, a message to the - user indicating action that can be taken.\"\n },\n \"descriptionText\": - {\n \"description\": \"The text description to accompany the promoted - item.\",\n \"type\": \"string\"\n },\n \"clickTrackingUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user clicked through on this promoted - item.\"\n },\n \"adTag\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should fetch to request a - promoted item.\"\n },\n \"destinationUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should direct - the user to, if the user chooses to visit the advertiser's website.\"\n },\n - \ \"customCtaButtonText\": {\n \"type\": \"string\",\n \"description\": - \"The custom call-to-action button text. If specified, it will override the - default button text for the cta_type.\"\n },\n \"creativeViewUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user was shown this promoted item.\",\n \"type\": \"string\"\n - \ },\n \"forecastingUrl\": {\n \"description\": \"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.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the promoted video.\"\n }\n },\n - \ \"description\": \"Details about a resource which is being promoted.\"\n - \ },\n \"LiveChatMessageListResponse\": {\n \"id\": \"LiveChatMessageListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#liveChatMessageListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"type\": \"array\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"offlineAt\": {\n \"description\": - \"The date and time when the underlying stream went offline.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pollingIntervalMillis\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The amount of time the client should wait before polling again.\"\n }\n - \ }\n },\n \"LiveStream\": {\n \"description\": \"A live stream - describes a live ingestion point.\",\n \"type\": \"object\",\n \"properties\": - {\n \"contentDetails\": {\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"status\": {\n \"$ref\": - \"LiveStreamStatus\",\n \"description\": \"The status object contains - information about live stream's status.\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the stream.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStream\"\n - \ },\n \"cdn\": {\n \"description\": \"The cdn object - defines the live stream's content delivery network (CDN) settings. These settings - provide details about the manner in which you stream your content to YouTube.\",\n - \ \"$ref\": \"CdnSettings\"\n }\n },\n \"id\": \"LiveStream\"\n - \ },\n \"ChannelToStoreLinkDetails\": {\n \"description\": \"Information - specific to a store on a merchandising platform linked to a YouTube channel.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"storeName\": - {\n \"type\": \"string\",\n \"description\": \"Name of the - store.\"\n },\n \"merchantId\": {\n \"type\": \"string\",\n - \ \"description\": \"Google Merchant Center id of the store.\",\n - \ \"format\": \"uint64\"\n },\n \"storeUrl\": {\n \"description\": - \"Landing page of the store.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelToStoreLinkDetails\"\n },\n \"LiveChatSuperStickerDetails\": - {\n \"id\": \"LiveChatSuperStickerDetails\",\n \"properties\": {\n - \ \"amountDisplayString\": {\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the purchase was made.\"\n - \ },\n \"amountMicros\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n },\n \"tier\": {\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ThirdPartyLink\": {\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\"\n },\n \"kind\": {\n \"default\": \"youtube#thirdPartyLink\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLink\\\".\",\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n - \ \"description\": \"The status object contains information about - the status of the link.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n },\n \"linkingToken\": - {\n \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ThirdPartyLink\",\n \"type\": - \"object\",\n \"description\": \"A *third party account link* resource - represents a link between a YouTube account or a channel and an account on - a third-party service.\"\n },\n \"LocalizedString\": {\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n },\n \"language\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LocalizedString\",\n - \ \"type\": \"object\"\n },\n \"InvideoBranding\": {\n \"id\": - \"InvideoBranding\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"targetChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel to which this branding links. If not present it defaults to - the current channel.\"\n },\n \"imageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The url of the uploaded image. Only - used in apiary to api communication.\"\n },\n \"position\": - {\n \"$ref\": \"InvideoPosition\",\n \"description\": \"The - spatial position within the video where the branding watermark will be displayed.\"\n - \ },\n \"timing\": {\n \"$ref\": \"InvideoTiming\",\n - \ \"description\": \"The temporal position within the video where - watermark will be displayed.\"\n },\n \"imageBytes\": {\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"type\": \"string\",\n \"format\": \"byte\"\n }\n - \ },\n \"description\": \"LINT.IfChange Describes an invideo branding.\"\n - \ },\n \"LiveChatModeratorListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatModeratorListResponse\",\n \"properties\": {\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": - \"A list of moderators that match the request criteria.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatModeratorListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n }\n },\n \"ChannelStatistics\": - {\n \"description\": \"Statistics about a channel: number of subscribers, - number of videos in the channel, etc.\",\n \"id\": \"ChannelStatistics\",\n - \ \"properties\": {\n \"commentCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of comments for the channel.\",\n - \ \"format\": \"uint64\"\n },\n \"subscriberCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of subscribers that the channel has.\",\n \"format\": \"uint64\"\n - \ },\n \"videoCount\": {\n \"description\": \"The number - of videos uploaded to the channel.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"viewCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of times the channel - has been viewed.\",\n \"format\": \"uint64\"\n },\n \"hiddenSubscriberCount\": - {\n \"description\": \"Whether or not the number of subscribers is - shown for this user.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ImageSettings\": {\n \"id\": - \"ImageSettings\",\n \"description\": \"Branding properties for images - associated with the channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"watchIconImageUrl\": {\n \"type\": \"string\"\n },\n - \ \"bannerMobileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. Mobile size (640x175).\"\n },\n \"bannerTvImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n },\n \"bannerExternalUrl\": - {\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"trackingImageUrl\": {\n \"description\": \"The - URL for a 1px by 1px tracking pixel that can be used to collect statistics - for views of the channel or video pages.\",\n \"type\": \"string\"\n - \ },\n \"bannerTvHighImageUrl\": {\n \"description\": - \"Banner image. TV size high resolution (1920x1080).\",\n \"type\": - \"string\"\n },\n \"bannerImageUrl\": {\n \"description\": - \"Banner image. Desktop size (1060x175).\",\n \"type\": \"string\"\n - \ },\n \"bannerTabletExtraHdImageUrl\": {\n \"description\": - \"Banner image. Tablet size extra high resolution (2560x424).\",\n \"type\": - \"string\"\n },\n \"backgroundImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the background - image shown on the video watch page. The image should be 1200px by 615px, - with a maximum file size of 128k.\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size high resolution (2276x377).\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size medium resolution (1280x720).\"\n },\n \"bannerTabletImageUrl\": - {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n - \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"smallBrandedBannerImageImapScript\": {\n \"description\": - \"The image map script for the small banner image.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTvLowImageUrl\": {\n \"description\": - \"Banner image. TV size low resolution (854x480).\",\n \"type\": - \"string\"\n },\n \"bannerMobileLowImageUrl\": {\n \"description\": - \"Banner image. Mobile size low resolution (320x88).\",\n \"type\": - \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size medium/high - resolution (960x263).\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\",\n - \ \"$ref\": \"LocalizedProperty\"\n }\n }\n },\n \"VideoFileDetailsVideoStream\": - {\n \"description\": \"Information about a video stream.\",\n \"properties\": - {\n \"heightPixels\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The encoded video content's height - in pixels.\"\n },\n \"aspectRatio\": {\n \"format\": - \"double\",\n \"description\": \"The video content's display aspect - ratio, which specifies the aspect ratio in which the video should be displayed.\",\n - \ \"type\": \"number\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The video codec that the stream uses.\"\n },\n \"widthPixels\": - {\n \"description\": \"The encoded video content's width in pixels. - You can calculate the video's encoding aspect ratio as width_pixels / height_pixels.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"rotation\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ],\n \"description\": \"The amount - that YouTube needs to rotate the original source content to properly display - the video.\"\n },\n \"frameRateFps\": {\n \"description\": - \"The video stream's frame rate, in frames per second.\",\n \"type\": - \"number\",\n \"format\": \"double\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The video stream's bitrate, in bits per second.\"\n }\n },\n - \ \"id\": \"VideoFileDetailsVideoStream\",\n \"type\": \"object\"\n - \ },\n \"CaptionListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"items\": {\n \"description\": \"A list of captions that - match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Caption\"\n },\n \"type\": \"array\"\n },\n \"kind\": - {\n \"default\": \"youtube#captionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": - \"CaptionListResponse\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The `visitorId` identifies the visitor.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"description\": \"A list of valid abuse reasons - that are used with `video.ReportAbuse`.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ }\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoAbuseReportReasonListResponse\"\n },\n \"VideoAbuseReportReason\": - {\n \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the abuse report reason.\",\n \"$ref\": \"VideoAbuseReportReasonSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID of this abuse report reason.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReason\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoAbuseReportReason\",\n - \ \"type\": \"object\"\n },\n \"TestItem\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"gaia\": {\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n },\n \"snippet\": {\n \"$ref\": - \"TestItemTestItemSnippet\"\n },\n \"featuredPart\": {\n \"type\": - \"boolean\"\n },\n \"id\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"TestItem\"\n },\n \"VideoCategorySnippet\": - {\n \"description\": \"Basic details about a video category, such as - its localized title.\",\n \"properties\": {\n \"channelId\": {\n - \ \"type\": \"string\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n - \ \"description\": \"The YouTube channel that created the video category.\"\n - \ },\n \"assignable\": {\n \"type\": \"boolean\"\n },\n - \ \"title\": {\n \"description\": \"The video category's title.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoCategorySnippet\",\n - \ \"type\": \"object\"\n },\n \"VideoRecordingDetails\": {\n \"type\": - \"object\",\n \"id\": \"VideoRecordingDetails\",\n \"properties\": - {\n \"location\": {\n \"$ref\": \"GeoPoint\",\n \"description\": - \"The geolocation information associated with the video.\"\n },\n \"recordingDate\": - {\n \"description\": \"The date and time when the video was recorded.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"locationDescription\": {\n \"type\": \"string\",\n \"description\": - \"The text description of the location where the video was recorded.\"\n }\n - \ },\n \"description\": \"Recording information associated with the - video.\"\n },\n \"LiveBroadcastSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"scheduledStartTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - is scheduled to start.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"scheduledEndTime\": {\n \"description\": \"The - date and time that the broadcast is scheduled to end.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the broadcast was added - to YouTube's live broadcast schedule.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\",\n \"type\": \"string\"\n },\n \"actualStartTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast actually started. This information is only available - once the broadcast's state is live.\",\n \"format\": \"date-time\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the broadcast. For each nested object - in this object, the key is the name of the thumbnail image, and the value - is an object that contains other information about the thumbnail.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"actualEndTime\": {\n \"description\": - \"The date and time that the broadcast actually ended. This information is - only available once the broadcast's state is complete.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"isDefaultBroadcast\": - {\n \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\",\n \"type\": \"boolean\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The id of the live chat for this broadcast.\"\n },\n \"description\": - {\n \"description\": \"The broadcast's description. As with the title, - you can set this field by modifying the broadcast resource or by setting the - description field of the corresponding video resource.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - broadcast's title. Note that the broadcast represents exactly one YouTube - video. You can set this field by modifying the broadcast resource or by setting - the title field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveBroadcastSnippet\",\n - \ \"description\": \"Basic broadcast information.\"\n },\n \"Cuepoint\": - {\n \"properties\": {\n \"cueType\": {\n \"enum\": [\n - \ \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"durationSecs\": {\n - \ \"description\": \"The duration of this cuepoint.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"id\": - {\n \"description\": \"The identifier for cuepoint resource.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"walltimeMs\": {\n \"description\": - \"The wall clock time at which the cuepoint should be inserted. Only one of - insertion_offset_time_ms and walltime_ms may be set at a time.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"insertionOffsetTimeMs\": - {\n \"type\": \"string\",\n \"format\": \"int64\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Note that there may be a 5-second end-point resolution issue. For instance, - if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\",\n \"id\": \"Cuepoint\"\n - \ },\n \"LiveBroadcastContentDetails\": {\n \"description\": \"Detailed - settings of a broadcast.\",\n \"type\": \"object\",\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"properties\": {\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n },\n \"enableClosedCaptions\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - HTTP POST closed captioning is enabled for this broadcast. The ingestion URL - of the closed captions is returned through the liveStreams API. This is mutually - exclusive with using the closed_captions_type property, and is equivalent - to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n - \ \"latencyPreference\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Best for: highest quality viewer playbacks and higher resolutions.\",\n - \ \"Best for: near real-time interaction, with minimal playback - buffering.\",\n \"Best for: real-time interaction Does not support: - Closed captions, 1440p, and 4k resolutions\"\n ],\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"type\": - \"string\",\n \"description\": \"If both this and enable_low_latency - are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\"\n },\n \"closedCaptionsType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ],\n \"type\": \"string\"\n },\n \"enableDvr\": - {\n \"description\": \"This setting determines whether viewers can - access DVR controls while watching the video. DVR controls enable the viewer - to control the video playback experience by pausing, rewinding, or fast forwarding - content. The default value for this property is true. *Important:* You must - set the value to true and also set the enableArchive property's value to true - if you want to make playback available immediately after the broadcast ends.\",\n - \ \"type\": \"boolean\"\n },\n \"mesh\": {\n \"format\": - \"byte\",\n \"type\": \"string\",\n \"description\": \"The - mesh for projecting the video if projection is mesh. The mesh value must be - a UTF-8 string containing the base-64 encoding of 3D mesh data that follows - the Spherical Video V2 RFC specification for an mshp box, excluding the box - size and type but including the following four reserved zero bytes for the - version and flags.\"\n },\n \"enableContentEncryption\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether YouTube should enable content encryption for the broadcast.\"\n - \ },\n \"monitorStream\": {\n \"$ref\": \"MonitorStreamInfo\",\n - \ \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\"\n },\n \"recordFromStart\": - {\n \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\",\n \"type\": \"boolean\"\n },\n \"projection\": - {\n \"type\": \"string\",\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ],\n \"description\": \"The projection format of this broadcast. - This defaults to rectangular.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"startWithSlate\": {\n \"description\": \"This setting indicates - whether the broadcast should automatically begin with an in-stream slate when - you update the broadcast's status to live. After updating the status, you - then need to send a liveCuepoints.insert request that sets the cuepoint's - eventState to end to remove the in-stream slate and make your broadcast stream - visible to viewers.\",\n \"type\": \"boolean\"\n },\n \"stereoLayout\": - {\n \"type\": \"string\",\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\"\n },\n - \ \"enableAutoStop\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether auto stop is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\"\n },\n \"boundStreamId\": {\n \"type\": - \"string\",\n \"description\": \"This value uniquely identifies the - live stream bound to the broadcast.\"\n },\n \"enableLowLatency\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast has low latency enabled.\"\n },\n \"enableAutoStart\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"boundStreamLastUpdateTimeMs\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the live stream referenced by boundStreamId was last updated.\"\n - \ }\n }\n },\n \"SubscriptionListResponse\": {\n \"id\": - \"SubscriptionListResponse\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n \"default\": - \"youtube#subscriptionListResponse\",\n \"type\": \"string\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"pageInfo\": {\n - \ \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of subscriptions - that match the request criteria.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"AbuseType\": {\n \"type\": \"object\",\n \"id\": - \"AbuseType\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\"\n }\n }\n },\n \"ThirdPartyLinkListResponse\": - {\n \"id\": \"ThirdPartyLinkListResponse\",\n \"properties\": {\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"type\": \"array\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n \"default\": - \"youtube#thirdPartyLinkListResponse\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoRating\": {\n \"description\": \"Basic details about - rating of a video.\",\n \"properties\": {\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video.\"\n },\n \"rating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"Rating of - a video.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoRating\",\n \"type\": \"object\"\n },\n - \ \"I18nLanguageListResponse\": {\n \"id\": \"I18nLanguageListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#i18nLanguageListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"description\": \"A list of supported i18n - languages. In this map, the i18n language ID is the map key, and its value - is the corresponding i18nLanguage resource.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"I18nLanguage\"\n }\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatBanSnippet\": {\n \"properties\": - {\n \"banDurationSeconds\": {\n \"description\": \"The duration - of a ban, only filled if the ban has type TEMPORARY.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The chat - this ban is pertinent to.\"\n },\n \"bannedUserDetails\": {\n - \ \"$ref\": \"ChannelProfileDetails\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"An invalid ban type.\",\n - \ \"A permanent ban.\",\n \"A temporary ban.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"description\": - \"The type of ban.\"\n }\n },\n \"id\": \"LiveChatBanSnippet\",\n - \ \"type\": \"object\"\n },\n \"ThumbnailSetResponse\": {\n \"id\": - \"ThumbnailSetResponse\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#thumbnailSetResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": \"A list of - thumbnails.\",\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"CommentThreadListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#commentThreadListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of comment threads that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"CommentThread\"\n - \ }\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ },\n \"id\": \"CommentThreadListResponse\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"allowed\": - {\n \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"blocked\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of region codes that identify countries - where the video is blocked. If this property is present and a country is not - listed in its value, then the video is viewable in that country. If this property - is present and contains an empty list, the video is viewable in all countries.\",\n - \ \"type\": \"array\"\n }\n },\n \"id\": \"VideoContentDetailsRegionRestriction\"\n - \ },\n \"ActivityContentDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"social\": {\n \"description\": \"The social object contains - details about a social network post. This property is only present if the - snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"promotedItem\": {\n \"description\": \"The - promotedItem object contains details about a resource which is being promoted. - This property is only present if the snippet.type is promotedItem.\",\n \"$ref\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"favorite\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n },\n \"upload\": {\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"playlistItem\": {\n \"description\": \"The - playlistItem object contains information about a new playlist item. This property - is only present if the snippet.type is playlistItem.\",\n \"$ref\": - \"ActivityContentDetailsPlaylistItem\"\n },\n \"recommendation\": - {\n \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\",\n \"$ref\": \"ActivityContentDetailsRecommendation\"\n - \ },\n \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"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.\"\n },\n \"subscription\": - {\n \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"like\": {\n \"$ref\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"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.\"\n },\n \"comment\": {\n \"description\": - \"The comment object contains information about a resource that received a - comment. This property is only present if the snippet.type is comment.\",\n - \ \"$ref\": \"ActivityContentDetailsComment\"\n }\n },\n - \ \"description\": \"Details about the content of an activity: the video - that was shared, the channel that was subscribed to, etc.\",\n \"id\": - \"ActivityContentDetails\"\n },\n \"VideoProjectDetails\": {\n \"properties\": - {},\n \"description\": \"DEPRECATED. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"id\": \"VideoProjectDetails\",\n \"type\": \"object\"\n },\n - \ \"CommentThreadSnippet\": {\n \"id\": \"CommentThreadSnippet\",\n - \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"isPublic\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the thread (and therefore all its comments) is visible to all YouTube users.\"\n - \ },\n \"totalReplyCount\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The total number - of replies (not including the top level comment).\"\n },\n \"canReply\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n - \ \"topLevelComment\": {\n \"description\": \"The top level - comment of this thread.\",\n \"$ref\": \"Comment\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID of the video the - comments refer to, if any. No video_id implies a channel discussion comment.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a comment thread.\"\n },\n - \ \"LiveChatMessage\": {\n \"properties\": {\n \"authorDetails\": - {\n \"description\": \"The authorDetails object contains basic details - about the user that posted this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the message.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatMessage\"\n - \ },\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A *liveChatMessage* resource represents a chat message - in a YouTube Live Chat.\",\n \"id\": \"LiveChatMessage\",\n \"type\": - \"object\"\n },\n \"LiveChatSuperChatDetails\": {\n \"id\": \"LiveChatSuperChatDetails\",\n - \ \"properties\": {\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the user to this Super Chat - event.\"\n },\n \"tier\": {\n \"type\": \"integer\",\n - \ \"description\": \"The tier in which the amount belongs. Lower amounts - belong to lower tiers. The lowest tier is 1.\",\n \"format\": \"uint32\"\n - \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\"\n },\n \"amountMicros\": {\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatBan\": {\n \"description\": \"A `__liveChatBan__` - resource represents a ban for a YouTube live chat.\",\n \"type\": \"object\",\n - \ \"id\": \"LiveChatBan\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatBan\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the ban.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LiveStreamHealthStatus\": - {\n \"type\": \"object\",\n \"properties\": {\n \"lastUpdateTimeSeconds\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The last time this status was updated (in seconds)\"\n },\n \"configurationIssues\": - {\n \"type\": \"array\",\n \"description\": \"The configurations - issues on this stream\",\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ }\n },\n \"status\": {\n \"type\": \"string\",\n - \ \"description\": \"The status code of this stream\",\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"id\": \"LiveStreamHealthStatus\"\n - \ },\n \"I18nLanguageSnippet\": {\n \"id\": \"I18nLanguageSnippet\",\n - \ \"description\": \"Basic details about an i18n language, such as language - code and human-readable name.\",\n \"type\": \"object\",\n \"properties\": - {\n \"hl\": {\n \"type\": \"string\",\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\"\n },\n - \ \"name\": {\n \"description\": \"The human-readable name - of the language in the language itself.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoSuggestions\": {\n \"description\": - \"Specifies suggestions on how to improve video content, including encoding - hints, tag suggestions, and editor suggestions.\",\n \"id\": \"VideoSuggestions\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"tagSuggestions\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoSuggestionsTagSuggestion\"\n },\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\"\n },\n \"processingHints\": {\n \"items\": - {\n \"type\": \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ],\n \"enumDescriptions\": [\n \"The MP4 - file is not streamable, this will slow down the processing. MOOV atom was - not found at the beginning of the file.\",\n \"Probably a better - quality version of the video exists. The video has wide screen aspect ratio, - but is not an HD video.\",\n \"Uploaded video is spherical video.\",\n - \ \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ]\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of suggestions that may improve YouTube's ability to process the video.\"\n - \ },\n \"processingWarnings\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of reasons why YouTube may have difficulty - transcoding the uploaded video or that might result in an erroneous transcoding. - These warnings are generated before YouTube actually processes the uploaded - video file. In addition, they identify issues that are unlikely to cause the - video processing to fail but that might cause problems such as sync issues, - video artifacts, or a missing audio track.\",\n \"items\": {\n \"enum\": - [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ]\n }\n },\n \"processingErrors\": {\n - \ \"description\": \"A list of errors that will prevent YouTube from - successfully processing the uploaded video video. These errors indicate that, - regardless of the video's current processing status, eventually, that status - will almost certainly be failed.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"audioFile\",\n \"imageFile\",\n - \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n - \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n },\n \"type\": \"array\"\n },\n \"editorSuggestions\": - {\n \"description\": \"A list of video editing operations that might - improve the video quality or playback experience of the uploaded video.\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ]\n },\n \"type\": \"array\"\n }\n }\n - \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"properties\": - {\n \"banType\": {\n \"description\": \"The type of ban.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ]\n },\n \"banDurationSeconds\": - {\n \"format\": \"uint64\",\n \"description\": \"The duration - of the ban. This property is only present if the banType is temporary.\",\n - \ \"type\": \"string\"\n },\n \"bannedUserDetails\": - {\n \"description\": \"The details of the user that was banned.\",\n - \ \"$ref\": \"ChannelProfileDetails\"\n }\n },\n \"id\": - \"LiveChatUserBannedMessageDetails\",\n \"type\": \"object\"\n },\n - \ \"ActivityContentDetailsComment\": {\n \"id\": \"ActivityContentDetailsComment\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with the - comment.\"\n }\n },\n \"description\": \"Information about - a resource that received a comment.\"\n },\n \"ChannelSectionLocalization\": - {\n \"description\": \"ChannelSection localization setting\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The localized strings - for channel section's title.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelSectionLocalization\",\n \"type\": \"object\"\n - \ },\n \"ChannelBannerResource\": {\n \"id\": \"ChannelBannerResource\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"url\": {\n \"description\": \"The URL of this banner image.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\"\n - \ },\n \"SuperChatEventListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"SuperChatEventListResponse\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n },\n - \ \"description\": \"A list of Super Chat purchases that match the - request criteria.\",\n \"type\": \"array\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n \"default\": - \"youtube#superChatEventListResponse\",\n \"type\": \"string\"\n - \ }\n }\n }\n },\n \"canonicalName\": \"YouTube\",\n \"rootUrl\": - \"https://youtube.googleapis.com/\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:28 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCzT6i4FhTj-1SnZnyiGHVTw&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"sSE7m23-s0KDaR0ND3k4t-wWUWI\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"c3cPjU3B3pyWH3FqkDzxOXX6NBk\",\n \"id\": \"UCzT6i4FhTj-1SnZnyiGHVTw\",\n - \ \"snippet\": {\n \"title\": \"RecapLovers\",\n \"description\": - \"A good movie will change your perception. Welcome to Recaplovers!\",\n \"customUrl\": - \"@recaplovers3501\",\n \"publishedAt\": \"2022-01-06T20:06:17.976744Z\",\n - \ \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/91tJqj1Jzeb4XGdlg8Oa6K6Yyz2rP583O7t7KjHU-n3ustR-UoGCvgwa0_FiXjYOyHI5Ql2B2A=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/91tJqj1Jzeb4XGdlg8Oa6K6Yyz2rP583O7t7KjHU-n3ustR-UoGCvgwa0_FiXjYOyHI5Ql2B2A=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/91tJqj1Jzeb4XGdlg8Oa6K6Yyz2rP583O7t7KjHU-n3ustR-UoGCvgwa0_FiXjYOyHI5Ql2B2A=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"RecapLovers\",\n \"description\": - \"A good movie will change your perception. Welcome to Recaplovers!\"\n },\n - \ \"country\": \"HK\"\n },\n \"brandingSettings\": {\n \"channel\": - {\n \"title\": \"RecapLovers\",\n \"description\": \"A good - movie will change your perception. Welcome to Recaplovers!\",\n \"keywords\": - \"\\\"Movie Recap\\\" \\\"Story Recap\\\" MovieCaps \\\"Movie Review\\\"\",\n - \ \"country\": \"HK\"\n }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:28 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"servicePath\": \"\",\n \"ownerName\": \"Google\",\n \"documentationLink\": - \"https://developers.google.com/youtube/\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"protocol\": \"rest\",\n - \ \"name\": \"youtube\",\n \"canonicalName\": \"YouTube\",\n \"resources\": - {\n \"search\": {\n \"methods\": {\n \"list\": {\n \"id\": - \"youtube.search.list\",\n \"description\": \"Retrieves a list of - search resources\",\n \"flatPath\": \"youtube/v3/search\",\n \"path\": - \"youtube/v3/search\",\n \"parameters\": {\n \"publishedAfter\": - {\n \"description\": \"Filter on resources published after this - date.\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"description\": \"Filter on videos of a specific - type.\",\n \"location\": \"query\"\n },\n \"videoSyndicated\": - {\n \"type\": \"string\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, syndicated or not.\",\n \"Only - retrieve syndicated videos.\"\n ],\n \"description\": - \"Filter on syndicated videos.\"\n },\n \"part\": {\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\"\n },\n \"videoDuration\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on the duration of the videos.\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ]\n - \ },\n \"videoDimension\": {\n \"location\": - \"query\",\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"description\": \"Filter - on 3d videos.\",\n \"enumDescriptions\": [\n \"Include - both 3D and non-3D videos in returned results. This is the default value.\",\n - \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict - search results to only include 3D videos.\"\n ],\n \"type\": - \"string\"\n },\n \"q\": {\n \"description\": - \"Textual search terms to match.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"videoCaption\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ],\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ]\n - \ },\n \"safeSearch\": {\n \"enum\": [\n - \ \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"default\": \"moderate\",\n \"enumDescriptions\": - [\n \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"location\": - \"query\",\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"type\": \"string\"\n },\n \"publishedBefore\": - {\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"description\": \"Filter on resources published - before this date.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"eventType\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n - \ \"description\": \"Filter on the livestream status of the videos.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ]\n - \ },\n \"relevanceLanguage\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return results relevant to this language.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"relatedToVideoId\": {\n \"type\": \"string\",\n - \ \"description\": \"Search related to a resource.\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Filter on resources belonging - to this channelId.\",\n \"type\": \"string\"\n },\n - \ \"topicId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Restrict results to a particular - topic.\"\n },\n \"videoCategoryId\": {\n \"location\": - \"query\",\n \"description\": \"Filter on videos in a specific - category.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"type\": \"integer\",\n \"maximum\": - \"50\",\n \"location\": \"query\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\"\n },\n \"forContentOwner\": - {\n \"type\": \"boolean\",\n \"description\": \"Search - owned by a content owner.\",\n \"location\": \"query\"\n },\n - \ \"locationRadius\": {\n \"description\": \"Filter - on distance from the location (specified above).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"order\": - {\n \"type\": \"string\",\n \"description\": \"Sort - order of the results.\",\n \"location\": \"query\",\n \"default\": - \"relevance\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ]\n },\n \"videoDefinition\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"description\": \"Filter - on the definition of the videos.\",\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"location\": \"query\"\n },\n \"videoEmbeddable\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on embeddable videos.\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"type\": \"string\"\n },\n \"type\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"Restrict results to a particular set of resource - types from One Platform.\",\n \"type\": \"string\"\n },\n - \ \"forMine\": {\n \"description\": \"Search for the - private videos of the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"channelType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all channels.\",\n \"Only retrieve shows.\"\n ],\n - \ \"description\": \"Add a filter on the channel search.\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"type\": - \"string\"\n },\n \"regionCode\": {\n \"description\": - \"Display the content as seen by viewers in this country.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"forDeveloper\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\"\n },\n - \ \"videoLicense\": {\n \"enumDescriptions\": [\n \"Return - all videos, regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"description\": - \"Filter on the license of the videos.\"\n },\n \"location\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on location of the video\"\n }\n - \ },\n \"httpMethod\": \"GET\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"playlistItems\": {\n \"methods\": {\n - \ \"insert\": {\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"id\": \"youtube.playlistItems.insert\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"POST\"\n },\n \"update\": {\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"id\": - \"youtube.playlistItems.update\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Updates - an existing resource.\",\n \"httpMethod\": \"PUT\"\n },\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"playlistId\": {\n - \ \"type\": \"string\",\n \"description\": \"Return - the playlist items within the given playlist.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"videoId\": {\n \"description\": - \"Return the playlist items associated with the given video ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true\n },\n - \ \"maxResults\": {\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.playlistItems.list\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"path\": \"youtube/v3/playlistItems\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.playlistItems.delete\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"i18nRegions\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.i18nRegions.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"path\": \"youtube/v3/i18nRegions\",\n \"flatPath\": - \"youtube/v3/i18nRegions\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n },\n \"hl\": {\n \"default\": \"en_US\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n }\n }\n }\n },\n \"superChatEvents\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"minimum\": \"1\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"default\": \"5\",\n - \ \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - superChatEvent resource parts that the API response will include. This parameter - is currently not supported.\"\n },\n \"hl\": {\n \"description\": - \"Return rendered funding amounts in specified language.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/superChatEvents\",\n \"response\": - {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.superChatEvents.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/superChatEvents\"\n }\n }\n },\n \"liveChatMessages\": - {\n \"methods\": {\n \"delete\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveChatMessages.delete\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"description\": \"Deletes a - chat message.\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n }\n },\n \"list\": {\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.liveChatMessages.list\",\n \"response\": - {\n \"$ref\": \"LiveChatMessageListResponse\"\n },\n \"parameters\": - {\n \"profileImageSize\": {\n \"maximum\": \"720\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\",\n \"type\": \"integer\",\n - \ \"minimum\": \"16\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"maximum\": \"2000\",\n - \ \"default\": \"500\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"200\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the liveChatComment - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"repeated\": true\n },\n \"hl\": - {\n \"description\": \"Specifies the localization language in - which the system messages should be returned.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"liveChatId\": - {\n \"required\": true,\n \"description\": \"The - id of the live chat for which comments should be returned.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ]\n },\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"id\": \"youtube.liveChatMessages.insert\",\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true\n }\n }\n - \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"update\": - {\n \"path\": \"youtube/v3/channels\",\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"Channel\"\n },\n - \ \"request\": {\n \"$ref\": \"Channel\"\n },\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"id\": \"youtube.channels.update\"\n },\n \"list\": - {\n \"parameters\": {\n \"managedByMe\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the channels managed - by the authenticated user.\",\n \"location\": \"query\"\n },\n - \ \"categoryId\": {\n \"description\": \"Return the - channels within the specified guide category ID.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"location\": \"query\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"mySubscribers\": {\n \"type\": \"boolean\",\n \"description\": - \"Return the channels subscribed to the authenticated user\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"Return the channels with the - specified IDs.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"description\": \"Return the ids of channels owned - by the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"forUsername\": {\n \"description\": \"Return the - channel associated with a YouTube username.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.channels.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/channels\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/channels\"\n }\n - \ }\n },\n \"subscriptions\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"maxResults\": {\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"default\": \"5\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Return the subscriptions with the given - IDs for Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"myRecentSubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"channelId\": {\n \"description\": - \"Return the subscriptions of the given channel owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"forChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the subscriptions to the subset of - these channels that the authenticated user is subscribed to.\"\n },\n - \ \"order\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"default\": \"relevance\",\n \"description\": - \"The order of the returned subscriptions\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"mine\": {\n \"description\": \"Flag - for returning the subscriptions of the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"mySubscribers\": - {\n \"description\": \"Return the subscribers of the given channel - owner.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.subscriptions.list\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"SubscriptionListResponse\"\n }\n },\n \"insert\": - {\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"request\": - {\n \"$ref\": \"Subscription\"\n },\n \"path\": - \"youtube/v3/subscriptions\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n }\n },\n - \ \"delete\": {\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"description\": - \"Deletes a resource.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.subscriptions.delete\"\n }\n - \ }\n },\n \"videoCategories\": {\n \"methods\": {\n \"list\": - {\n \"flatPath\": \"youtube/v3/videoCategories\",\n \"id\": - \"youtube.videoCategories.list\",\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Returns - the video categories with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"default\": \"en-US\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"response\": - {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"parameterOrder\": - [],\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\",\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/commentThreads\"\n - \ }\n }\n }\n }\n },\n \"membershipsLevels\": - {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"path\": \"youtube/v3/membershipsLevels\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"MembershipsLevelListResponse\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"The *part* parameter - specifies the membershipsLevel resource parts that the API response will include. - Supported values are id and snippet.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"description\": \"Retrieves - a list of all pricing levels offered by a creator to the fans.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ]\n }\n }\n },\n \"watermarks\": {\n \"methods\": - {\n \"set\": {\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"channelId\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"mediaUpload\": {\n \"maxSize\": - \"10485760\",\n \"protocols\": {\n \"simple\": {\n - \ \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"id\": \"youtube.watermarks.set\",\n - \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"path\": - \"youtube/v3/watermarks/set\",\n \"description\": \"Allows upload - of watermark image and setting it for a channel.\",\n \"supportsMediaUpload\": - true\n },\n \"unset\": {\n \"id\": \"youtube.watermarks.unset\",\n - \ \"path\": \"youtube/v3/watermarks/unset\",\n \"description\": - \"Allows removal of channel watermark.\",\n \"parameters\": {\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"channelId\"\n - \ ]\n }\n }\n },\n \"i18nLanguages\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"default\": \"en_US\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - i18nLanguage resource properties that the API response will include. Set the - parameter value to snippet.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"youtube.i18nLanguages.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/i18nLanguages\",\n \"response\": - {\n \"$ref\": \"I18nLanguageListResponse\"\n },\n \"flatPath\": - \"youtube/v3/i18nLanguages\",\n \"httpMethod\": \"GET\"\n }\n - \ }\n },\n \"activities\": {\n \"methods\": {\n \"list\": - {\n \"parameters\": {\n \"maxResults\": {\n \"default\": - \"5\",\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"minimum\": - \"0\"\n },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"home\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"publishedBefore\": {\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n },\n \"path\": - \"youtube/v3/activities\",\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.activities.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/activities\"\n }\n }\n },\n - \ \"tests\": {\n \"methods\": {\n \"insert\": {\n \"id\": - \"youtube.tests.insert\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/tests\",\n \"request\": {\n - \ \"$ref\": \"TestItem\"\n },\n \"description\": - \"POST method.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/tests\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"TestItem\"\n }\n }\n }\n },\n \"liveBroadcasts\": - {\n \"methods\": {\n \"bind\": {\n \"response\": {\n - \ \"$ref\": \"LiveBroadcast\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"parameters\": - {\n \"streamId\": {\n \"description\": \"Stream to - bind, if not set unbind the current one.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"description\": \"Broadcast to bind - to the stream\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n },\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"description\": \"Bind a broadcast to a stream.\",\n - \ \"httpMethod\": \"POST\"\n },\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"httpMethod\": \"PUT\",\n \"id\": - \"youtube.liveBroadcasts.update\",\n \"description\": \"Updates an - existing broadcast for the authenticated user.\"\n },\n \"insert\": - {\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.insert\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n }\n },\n \"delete\": {\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"DELETE\",\n \"id\": - \"youtube.liveBroadcasts.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Delete a given broadcast.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to delete.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"transition\": {\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"path\": - \"youtube/v3/liveBroadcasts/transition\",\n \"parameterOrder\": [\n - \ \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"required\": - true\n },\n \"id\": {\n \"description\": - \"Broadcast to transition.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"broadcastStatus\": - {\n \"description\": \"The status to which the broadcast is going - to transition.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ]\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Transition a broadcast to a given - status.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"httpMethod\": - \"POST\"\n },\n \"insertCuepoint\": {\n \"response\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"request\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts/cuepoint\",\n \"parameterOrder\": [],\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Insert cuepoints in a broadcast\"\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieve the list of broadcasts - associated with the given channel.\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true,\n \"description\": - \"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, status - and statistics.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"broadcastStatus\": - {\n \"location\": \"query\",\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return current - live broadcasts.\",\n \"Return broadcasts that have not yet - started.\",\n \"Return broadcasts that have already ended.\"\n - \ ],\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"minimum\": - \"0\"\n },\n \"id\": {\n \"repeated\": - true,\n \"description\": \"Return broadcasts with the given ids - from Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"broadcastType\": {\n \"location\": - \"query\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"default\": \"event\",\n \"description\": - \"Return only broadcasts with the selected type.\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.list\"\n }\n }\n },\n - \ \"liveChatBans\": {\n \"methods\": {\n \"delete\": {\n \"id\": - \"youtube.liveChatBans.delete\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a chat ban.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n }\n },\n - \ \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"id\": \"youtube.liveChatBans.insert\"\n }\n }\n },\n - \ \"thirdPartyLinks\": {\n \"methods\": {\n \"update\": {\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.update\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"delete\": - {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"Do not use. Required for compatibility.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"Type of - the link to be deleted.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"location\": - \"query\"\n },\n \"linkingToken\": {\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"DELETE\",\n \"id\": - \"youtube.thirdPartyLinks.delete\"\n },\n \"insert\": {\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the thirdPartyLink resource parts that the API request - and response will include. Supported values are linkingToken, status, and - snippet.\",\n \"required\": true\n }\n }\n - \ },\n \"list\": {\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"parameters\": {\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Get a third party link of the given type.\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ]\n },\n - \ \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\",\n \"location\": \"query\"\n },\n - \ \"linkingToken\": {\n \"description\": \"Get a third - party link with the given linking token.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API response will include. Supported values are linkingToken, - status, and snippet.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.list\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ }\n }\n }\n },\n \"playlists\": {\n \"methods\": - {\n \"delete\": {\n \"path\": \"youtube/v3/playlists\",\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.playlists.delete\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"description\": \"Deletes a resource.\"\n },\n \"list\": - {\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"default\": - \"5\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"description\": \"Return content in specified language\",\n - \ \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Return the playlists owned by the authenticated - user.\"\n },\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the playlists owned by the specified channel ID.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"path\": \"youtube/v3/playlists\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlists.list\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/playlists\"\n },\n \"insert\": - {\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"id\": \"youtube.playlists.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"path\": - \"youtube/v3/playlists\",\n \"flatPath\": \"youtube/v3/playlists\"\n - \ },\n \"update\": {\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.playlists.update\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"httpMethod\": \"PUT\"\n }\n }\n },\n - \ \"liveChatModerators\": {\n \"methods\": {\n \"delete\": {\n - \ \"id\": \"youtube.liveChatModerators.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a chat moderator.\",\n \"httpMethod\": \"DELETE\"\n },\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"LiveChatModeratorListResponse\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameters\": {\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"maximum\": \"50\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\"\n },\n \"liveChatId\": {\n \"location\": - \"query\",\n \"description\": \"The id of the live chat for which - moderators should be returned.\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"id\": \"youtube.liveChatModerators.list\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\"\n },\n \"insert\": - {\n \"id\": \"youtube.liveChatModerators.insert\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n }\n - \ }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"id\": \"youtube.channelBanners.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"mediaUpload\": {\n \"protocols\": {\n - \ \"simple\": {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"6291456\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"parameterOrder\": [],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"channelId\": {\n - \ \"description\": \"Unused, channel_id is currently derived from - the security context of the requestor.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"supportsMediaUpload\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"path\": \"youtube/v3/channelBanners/insert\"\n }\n - \ }\n },\n \"commentThreads\": {\n \"methods\": {\n \"insert\": - {\n \"request\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"id\": \"youtube.commentThreads.insert\"\n },\n \"list\": - {\n \"id\": \"youtube.commentThreads.list\",\n \"response\": - {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"searchTerms\": {\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads of the specified - video.\"\n },\n \"textFormat\": {\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"location\": \"query\",\n - \ \"default\": \"html\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"description\": \"The requested text format for the returned - comments.\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"allThreadsRelatedToChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads of all videos of the channel and the channel comments - as well.\",\n \"location\": \"query\"\n },\n \"moderationStatus\": - {\n \"description\": \"Limits the returned comment threads to - those with the specified moderation status. Not compatible with the 'id' filter. - Valid values: published, heldForReview, likelySpam.\",\n \"location\": - \"query\",\n \"default\": \"published\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ]\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads for all the channel - comments (ie does not include comments left on videos).\",\n \"location\": - \"query\"\n },\n \"order\": {\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Order by time.\",\n \"Order by relevance.\"\n - \ ],\n \"location\": \"query\",\n \"default\": - \"time\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"minimum\": \"1\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"100\",\n \"default\": - \"20\",\n \"type\": \"integer\"\n }\n },\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": - \"en-US\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the videoCategory resource parts that the API response - will include. Supported values are id and snippet.\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"liveStreams\": {\n \"methods\": - {\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.liveStreams.delete\",\n - \ \"description\": \"Deletes an existing stream for the authenticated - user.\"\n },\n \"insert\": {\n \"httpMethod\": \"POST\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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, - content_details, and status.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n }\n - \ },\n \"update\": {\n \"description\": \"Updates an - existing stream for the authenticated user.\",\n \"response\": {\n - \ \"$ref\": \"LiveStream\"\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"id\": \"youtube.liveStreams.update\"\n - \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieve the list of streams associated - with the given channel. --\",\n \"id\": \"youtube.liveStreams.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"default\": \"5\",\n \"type\": - \"integer\"\n },\n \"id\": {\n \"description\": - \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"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.\"\n - \ }\n }\n }\n }\n },\n \"captions\": - {\n \"methods\": {\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Deletes a resource.\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/captions\",\n \"id\": \"youtube.captions.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"httpMethod\": \"DELETE\"\n - \ },\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/captions\",\n \"id\": \"youtube.captions.update\",\n - \ \"supportsMediaUpload\": true,\n \"parameters\": {\n \"sync\": - {\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"mediaUpload\": {\n \"maxSize\": - \"104857600\",\n \"protocols\": {\n \"simple\": {\n - \ \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ }\n },\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ]\n - \ }\n },\n \"list\": {\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"path\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"onBehalfOf\": {\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"id\": {\n - \ \"description\": \"Returns the captions with the given IDs for - Stubby or Apiary.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"Returns the captions for the - specified video.\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ],\n \"id\": - \"youtube.captions.list\",\n \"httpMethod\": \"GET\"\n },\n - \ \"download\": {\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"path\",\n - \ \"description\": \"The ID of the caption track to download, - required for One Platform.\",\n \"type\": \"string\"\n },\n - \ \"tfmt\": {\n \"description\": \"Convert the captions - into this format. Supported options are sbv, srt, and vtt.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is be on behalf of\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"tlang\": - {\n \"type\": \"string\",\n \"description\": \"tlang - is the language code; machine translate the captions into this language.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"id\": \"youtube.captions.download\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"description\": \"Downloads a caption track.\",\n \"useMediaDownloadService\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaDownload\": true,\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/captions/{id}\"\n - \ },\n \"insert\": {\n \"id\": \"youtube.captions.insert\",\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"sync\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"supportsMediaUpload\": - true,\n \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"mediaUpload\": {\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\",\n - \ \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n - \ \"resumable\": {\n \"multipart\": true,\n \"path\": - \"/resumable/upload/youtube/v3/captions\"\n }\n }\n - \ },\n \"flatPath\": \"youtube/v3/captions\",\n \"response\": - {\n \"$ref\": \"Caption\"\n }\n }\n }\n },\n - \ \"abuseReports\": {\n \"methods\": {\n \"insert\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.abuseReports.insert\",\n \"response\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": true\n - \ }\n },\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/abuseReports\"\n }\n }\n },\n \"videos\": {\n - \ \"methods\": {\n \"delete\": {\n \"path\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"parameters\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"id\": \"youtube.videos.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\"\n },\n \"rate\": {\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"path\": \"youtube/v3/videos/rate\",\n \"id\": \"youtube.videos.rate\",\n - \ \"description\": \"Adds a like or dislike rating to a video or removes - a rating from a video.\",\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"rating\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\",\n \"rating\"\n - \ ]\n },\n \"reportAbuse\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.reportAbuse\",\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n \"request\": - {\n \"$ref\": \"VideoAbuseReport\"\n },\n \"description\": - \"Report abuse for a video.\",\n \"parameterOrder\": [],\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ }\n },\n \"update\": {\n \"response\": {\n - \ \"$ref\": \"Video\"\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing resource.\",\n \"path\": \"youtube/v3/videos\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.videos.update\",\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n }\n },\n \"getRating\": - {\n \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true\n }\n },\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/videos/getRating\",\n \"id\": - \"youtube.videos.getRating\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"description\": \"Retrieves the ratings that the authorized user - gave to a list of specified videos.\",\n \"path\": \"youtube/v3/videos/getRating\"\n - \ },\n \"list\": {\n \"id\": \"youtube.videos.list\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"VideoListResponse\"\n - \ },\n \"parameters\": {\n \"maxWidth\": {\n \"maximum\": - \"8192\",\n \"format\": \"int32\",\n \"description\": - \"Return the player with maximum height specified in\",\n \"type\": - \"integer\",\n \"minimum\": \"72\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"description\": \"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.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"default\": \"5\",\n - \ \"maximum\": \"50\"\n },\n \"myRating\": - {\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"description\": - \"Return videos liked/disliked by the authenticated user. Does not support - RateType.RATED_TYPE_NONE.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"chart\": - {\n \"type\": \"string\",\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ],\n \"description\": - \"Return the videos that are in the specified chart.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ],\n - \ \"location\": \"query\"\n },\n \"maxHeight\": - {\n \"minimum\": \"72\",\n \"maximum\": \"8192\",\n - \ \"format\": \"int32\",\n \"type\": \"integer\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"repeated\": - true\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n - \ },\n \"hl\": {\n \"description\": \"Stands - for \\\"host language\\\". Specifies the localization language of the metadata - to be filled into snippet.localized. The field is filled with the default - metadata if there is no localization in the specified language. The parameter - value must be a language code included in the list returned by the i18nLanguages.list - method (e.g. en_US, es_MX).\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoCategoryId\": {\n \"type\": - \"string\",\n \"default\": \"0\",\n \"location\": - \"query\",\n \"description\": \"Use chart that is specific to - the specified video category\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"description\": \"Use - a chart that is specific to the specified region\",\n \"location\": - \"query\"\n },\n \"locale\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Return videos with the given ids.\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"insert\": {\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.videos.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"autoLevels\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Should auto-levels be applied to the upload.\"\n },\n \"stabilize\": - {\n \"description\": \"Should stabilize be applied to the upload.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"notifySubscribers\": {\n \"type\": \"boolean\",\n - \ \"default\": \"true\",\n \"description\": \"Notify - the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"supportsMediaUpload\": - true,\n \"path\": \"youtube/v3/videos\",\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/videos\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": true\n - \ }\n },\n \"maxSize\": \"274877906944\",\n - \ \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n - \ ]\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\"\n }\n }\n - \ },\n \"channelSections\": {\n \"methods\": {\n \"insert\": - {\n \"flatPath\": \"youtube/v3/channelSections\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n - \ \"id\": \"youtube.channelSections.insert\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"path\": - \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\"\n },\n \"list\": - {\n \"parameters\": {\n \"mine\": {\n \"location\": - \"query\",\n \"description\": \"Return the ChannelSections owned - by the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"id\": {\n \"description\": \"Return the ChannelSections - with the given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\",\n \"type\": - \"string\"\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true,\n \"description\": - \"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.\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channelSections.list\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\"\n },\n - \ \"update\": {\n \"id\": \"youtube.channelSections.update\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"httpMethod\": \"PUT\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"delete\": {\n \"id\": \"youtube.channelSections.delete\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ]\n - \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"MemberListResponse\"\n },\n \"path\": - \"youtube/v3/members\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the member resource parts that the API response will include. - Set the parameter value to snippet.\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\"\n },\n \"filterByMemberChannelId\": - {\n \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"maximum\": - \"1000\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"minimum\": \"0\"\n },\n \"mode\": {\n - \ \"default\": \"all_current\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"enum\": - [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"description\": - \"Parameter that specifies which channel members to return.\"\n },\n - \ \"hasAccessToLevel\": {\n \"description\": \"Filter - members in the results set to the ones that have access to a level.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.members.list\",\n \"description\": \"Retrieves a list of - members that match the request criteria for a channel.\",\n \"flatPath\": - \"youtube/v3/members\"\n }\n }\n },\n \"comments\": {\n - \ \"methods\": {\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/comments\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.comments.delete\"\n },\n \"setModerationStatus\": - {\n \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Modifies the moderation status - of the comments with the given IDs\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"banAuthor\": {\n \"location\": \"query\",\n \"default\": - \"false\",\n \"description\": \"If set to true the author of - the comment gets added to the ban list. This means all future comments of - the author will autmomatically be rejected. Only valid in combination with - STATUS_REJECTED.\",\n \"type\": \"boolean\"\n },\n - \ \"moderationStatus\": {\n \"enumDescriptions\": [\n - \ \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"description\": \"Specifies the requested moderation status. - Note, comments can be in statuses, which are not available through this call. - For example, this call does not allow to mark a comment as 'likely spam'. - Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"description\": \"Sets - the moderation status of one or more comments.\",\n \"path\": \"youtube/v3/comments/setModerationStatus\"\n - \ },\n \"update\": {\n \"id\": \"youtube.comments.update\",\n - \ \"path\": \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"Comment\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/comments\"\n },\n \"list\": {\n \"id\": - \"youtube.comments.list\",\n \"path\": \"youtube/v3/comments\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies a comma-separated - list of one or more comment resource properties that the API response will - include.\",\n \"required\": true\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"minimum\": - \"1\",\n \"maximum\": \"100\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"default\": \"20\"\n },\n \"textFormat\": - {\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The requested text format for the returned - comments.\",\n \"default\": \"html\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ]\n },\n \"parentId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"description\": \"Returns the comments with the given IDs for - One Platform.\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"CommentListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"markAsSpam\": - {\n \"path\": \"youtube/v3/comments/markAsSpam\",\n \"id\": - \"youtube.comments.markAsSpam\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Expresses the caller's opinion - that one or more comments should be flagged as spam.\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n - \ \"type\": \"string\",\n \"repeated\": true\n }\n - \ },\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"Comment\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": true\n }\n },\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"path\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"thumbnails\": {\n \"methods\": - {\n \"set\": {\n \"parameterOrder\": [\n \"videoId\"\n - \ ],\n \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"parameters\": {\n \"videoId\": {\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"id\": \"youtube.thumbnails.set\",\n \"path\": - \"youtube/v3/thumbnails/set\",\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"2097152\"\n },\n \"supportsMediaUpload\": - true,\n \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\"\n }\n - \ }\n }\n },\n \"discoveryVersion\": \"v1\",\n \"basePath\": \"\",\n - \ \"kind\": \"discovery#restDescription\",\n \"title\": \"YouTube Data API - v3\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"revision\": \"20230220\",\n \"description\": \"The YouTube Data - API v3 is an API that provides access to YouTube data, such as videos, playlists, - and channels.\",\n \"id\": \"youtube:v3\",\n \"parameters\": {\n \"upload_protocol\": - {\n \"type\": \"string\",\n \"description\": \"Upload protocol for - media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"location\": \"query\"\n - \ },\n \"fields\": {\n \"description\": \"Selector specifying which - fields to include in a partial response.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"alt\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": \"json\",\n \"enum\": - [\n \"json\",\n \"media\",\n \"proto\"\n ],\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"description\": - \"Data format for response.\"\n },\n \"callback\": {\n \"description\": - \"JSONP\",\n \"location\": \"query\",\n \"type\": \"string\"\n },\n - \ \"prettyPrint\": {\n \"description\": \"Returns response with indentations - and line breaks.\",\n \"type\": \"boolean\",\n \"default\": \"true\",\n - \ \"location\": \"query\"\n },\n \"uploadType\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"Legacy upload - protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n },\n \"$.xgafv\": - {\n \"type\": \"string\",\n \"enum\": [\n \"1\",\n \"2\"\n - \ ],\n \"enumDescriptions\": [\n \"v1 error format\",\n \"v2 - error format\"\n ],\n \"location\": \"query\",\n \"description\": - \"V1 error format.\"\n },\n \"oauth_token\": {\n \"description\": - \"OAuth 2.0 token for the current user.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"access_token\": {\n \"type\": - \"string\",\n \"description\": \"OAuth access token.\",\n \"location\": - \"query\"\n },\n \"quotaUser\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"key\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"auth\": {\n \"oauth2\": {\n \"scopes\": - {\n \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n }\n - \ }\n }\n },\n \"ownerDomain\": \"google.com\",\n \"schemas\": {\n - \ \"CommentThread\": {\n \"id\": \"CommentThread\",\n \"type\": - \"object\",\n \"description\": \"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.\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#commentThread\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThread\\\".\",\n \"type\": \"string\"\n - \ },\n \"replies\": {\n \"description\": \"The replies - object contains a limited number of replies (if any) to the top level comment - found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n - \ }\n }\n },\n \"ThirdPartyLinkStatus\": {\n \"type\": - \"object\",\n \"properties\": {\n \"linkStatus\": {\n \"enum\": - [\n \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"id\": \"ThirdPartyLinkStatus\",\n - \ \"description\": \"The third-party link status object contains information - about the status of the link.\"\n },\n \"SuperStickerMetadata\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"stickerId\": - {\n \"description\": \"Unique identifier of the Super Sticker. This - is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\",\n \"type\": \"string\"\n },\n - \ \"altTextLanguage\": {\n \"description\": \"Specifies the - localization language in which the alt text is returned.\",\n \"type\": - \"string\"\n },\n \"altText\": {\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"SuperStickerMetadata\"\n },\n \"ChannelSection\": {\n - \ \"id\": \"ChannelSection\",\n \"properties\": {\n \"contentDetails\": - {\n \"$ref\": \"ChannelSectionContentDetails\",\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"targeting\": {\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n }\n },\n - \ \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"default\": \"youtube#channelSection\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel section.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelBannerResource\": - {\n \"id\": \"ChannelBannerResource\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelBannerResource\"\n - \ },\n \"url\": {\n \"type\": \"string\",\n \"description\": - \"The URL of this banner image.\"\n }\n },\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\",\n - \ \"type\": \"object\"\n },\n \"CommentSnippet\": {\n \"description\": - \"Basic details about a comment, such as its author and text.\",\n \"properties\": - {\n \"viewerRating\": {\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"parentId\": {\n \"type\": - \"string\",\n \"description\": \"The unique id of the parent comment, - only set for replies.\"\n },\n \"authorChannelId\": {\n \"$ref\": - \"CommentSnippetAuthorChannelId\"\n },\n \"channelId\": {\n - \ \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"authorProfileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL for the avatar of the user - who posted the comment.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the comment was originally published.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"textOriginal\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"moderationStatus\": - {\n \"description\": \"The comment's moderation status. Will not - be set if the comments were requested through the id filter.\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"The ID of the video the comment refers to, - if any.\",\n \"type\": \"string\"\n },\n \"canRate\": - {\n \"description\": \"Whether the current viewer can rate this comment.\",\n - \ \"type\": \"boolean\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"textDisplay\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"updatedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was last updated.\"\n - \ },\n \"likeCount\": {\n \"type\": \"integer\",\n \"description\": - \"The total number of likes this comment has received.\",\n \"format\": - \"uint32\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"CommentSnippet\"\n },\n \"VideoProcessingDetails\": {\n \"type\": - \"object\",\n \"description\": \"Describes processing status and progress - and availability of some other Video resource parts.\",\n \"properties\": - {\n \"editorSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether video editing suggestions, - which might improve video quality or the playback experience, are available - for the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n },\n - \ \"processingIssuesAvailability\": {\n \"description\": \"This - value indicates whether the video processing engine has generated suggestions - that might improve YouTube's ability to process the the video, warnings that - explain video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"processingProgress\": - {\n \"description\": \"The processingProgress object contains information - about the progress YouTube has made in processing the video. The values are - really only relevant if the video's processing status is processing.\",\n - \ \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n },\n - \ \"fileDetailsAvailability\": {\n \"description\": \"This - value indicates whether file details are available for the uploaded video. - You can retrieve a video's file details by requesting the fileDetails part - in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"processingStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"processing\",\n \"succeeded\",\n - \ \"failed\",\n \"terminated\"\n ],\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\"\n },\n - \ \"processingFailureReason\": {\n \"description\": \"The reason - that YouTube failed to process the video. This property will only have a value - if the processingStatus property's value is failed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"uploadFailed\",\n - \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n - \ ]\n },\n \"tagSuggestionsAvailability\": {\n \"description\": - \"This value indicates whether keyword (tag) suggestions are available for - the video. Tags can be added to a video's metadata to make it easier for other - users to find the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoProcessingDetails\"\n - \ },\n \"PlaylistPlayer\": {\n \"type\": \"object\",\n \"properties\": - {\n \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"PlaylistPlayer\"\n },\n - \ \"MembershipsDuration\": {\n \"id\": \"MembershipsDuration\",\n \"type\": - \"object\",\n \"properties\": {\n \"memberSince\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the user - became a continuous member across all levels.\"\n },\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"description\": \"The cumulative - time the user has been a member across all levels in complete months (the - time is rounded down to the nearest integer).\",\n \"format\": \"int32\"\n - \ }\n }\n },\n \"LiveStreamContentDetails\": {\n \"properties\": - {\n \"isReusable\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \"\n },\n \"closedCaptionsIngestionUrl\": {\n \"description\": - \"The ingestion URL where the closed captions of this stream are sent.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamContentDetails\",\n \"description\": \"Detailed - settings of a stream.\"\n },\n \"MembershipsLevel\": {\n \"description\": - \"A *membershipsLevel* resource represents an offer made by YouTube creators - for their fans. Users can become members of the channel by joining one of - the available levels. They will provide recurring monetary support and receives - special benefits.\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"MembershipsLevelSnippet\",\n \"description\": \"The snippet object - contains basic details about the level.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the memberships level.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevel\"\n - \ }\n },\n \"id\": \"MembershipsLevel\",\n \"type\": - \"object\"\n },\n \"I18nRegionSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"gl\": {\n \"type\": \"string\",\n - \ \"description\": \"The region code as a 2-letter ISO country code.\"\n - \ },\n \"name\": {\n \"description\": \"The human-readable - name of the region.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"I18nRegionSnippet\",\n \"description\": \"Basic details - about an i18n region, such as region code and human-readable name.\"\n },\n - \ \"Channel\": {\n \"id\": \"Channel\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel.\"\n },\n \"conversionPings\": {\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n - \ },\n \"status\": {\n \"$ref\": \"ChannelStatus\",\n - \ \"description\": \"The status object encapsulates information about - the privacy status of the channel.\"\n },\n \"topicDetails\": - {\n \"$ref\": \"ChannelTopicDetails\",\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the channel.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n - \ }\n },\n \"brandingSettings\": {\n \"$ref\": - \"ChannelBrandingSettings\",\n \"description\": \"The brandingSettings - object encapsulates information about the branding of the channel.\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the channel, such as its title, description, and thumbnail images.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ChannelContentDetails\",\n \"description\": \"The contentDetails - object encapsulates information about the channel's content.\"\n },\n - \ \"contentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n - \ \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"default\": \"youtube#channel\"\n }\n },\n \"description\": - \"A *channel* resource contains information about a YouTube channel.\"\n },\n - \ \"CommentListResponse\": {\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#commentListResponse\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of comments that match the request criteria.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"CommentListResponse\"\n },\n \"ActivityContentDetailsSocial\": {\n - \ \"description\": \"Details about a social network post.\",\n \"type\": - \"object\",\n \"properties\": {\n \"author\": {\n \"type\": - \"string\",\n \"description\": \"The author of the social network - post.\"\n },\n \"referenceUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL of the social network post.\"\n },\n - \ \"type\": {\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The name of the social network.\"\n },\n - \ \"imageUrl\": {\n \"description\": \"An image of the post's - author.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsSocial\"\n - \ },\n \"LocalizedString\": {\n \"id\": \"LocalizedString\",\n \"type\": - \"object\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n },\n \"language\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": {\n - \ \"type\": \"object\",\n \"description\": \"Information about a - new playlist item.\",\n \"properties\": {\n \"playlistId\": {\n - \ \"type\": \"string\",\n \"description\": \"The value that - YouTube uses to uniquely identify the playlist.\"\n },\n \"playlistItemId\": - {\n \"type\": \"string\",\n \"description\": \"ID of the - item within the playlist.\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\",\n \"$ref\": \"ResourceId\"\n }\n },\n - \ \"id\": \"ActivityContentDetailsPlaylistItem\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"id\": \"LiveChatNewSponsorDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"isUpgrade\": {\n \"type\": \"boolean\",\n - \ \"description\": \"If the viewer just had upgraded from a lower - level. For viewers that were not members at the time of purchase, this field - is false.\"\n },\n \"memberLevelName\": {\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ChannelProfileDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"channelUrl\": {\n \"description\": \"The channel's URL.\",\n - \ \"type\": \"string\"\n },\n \"profileImageUrl\": {\n - \ \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"displayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's display name.\"\n },\n \"channelId\": - {\n \"description\": \"The YouTube channel ID.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ChannelProfileDetails\"\n - \ },\n \"LiveStreamConfigurationIssue\": {\n \"id\": \"LiveStreamConfigurationIssue\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"description\": \"The long-form description of the issue and - how to resolve it.\",\n \"type\": \"string\"\n },\n \"severity\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"How severe this issue is to the stream.\",\n \"enum\": [\n \"info\",\n - \ \"warning\",\n \"error\"\n ]\n },\n - \ \"type\": {\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"description\": \"The kind of error happening.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"reason\": - {\n \"description\": \"The short-form reason for this issue.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"id\": \"SubscriptionSubscriberSnippet\",\n \"description\": - \"Basic details about a subscription's subscriber including title, description, - channel ID and thumbnails.\",\n \"type\": \"object\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the subscriber.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The channel - ID of the subscriber.\"\n },\n \"thumbnails\": {\n \"description\": - \"Thumbnails for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the subscriber.\"\n }\n }\n },\n \"LiveChatMessageListResponse\": - {\n \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"LiveChatMessage\"\n }\n - \ },\n \"offlineAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the underlying stream went offline.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"pollingIntervalMillis\": {\n \"description\": \"The amount - of time the client should wait before polling again.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n \"default\": - \"youtube#liveChatMessageListResponse\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatMessageListResponse\"\n - \ },\n \"ImageSettings\": {\n \"properties\": {\n \"bannerMobileMediumHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size medium/high resolution (960x263).\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 640px by 70px banner image - that appears below the video player in the default view of the video watch - page. The URL for the image that appears above the top-left corner of the - video player. This is a 25-pixel-high image with a flexible width that cannot - exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerMobileHdImageUrl\": {\n \"description\": \"Banner - image. Mobile size high resolution (1280x360).\",\n \"type\": \"string\"\n - \ },\n \"trackingImageUrl\": {\n \"description\": \"The - URL for a 1px by 1px tracking pixel that can be used to collect statistics - for views of the channel or video pages.\",\n \"type\": \"string\"\n - \ },\n \"largeBrandedBannerImageImapScript\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The image map script - for the large banner image.\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"largeBrandedBannerImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n - \ \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\"\n - \ },\n \"bannerTvHighImageUrl\": {\n \"description\": - \"Banner image. TV size high resolution (1920x1080).\",\n \"type\": - \"string\"\n },\n \"bannerTabletLowImageUrl\": {\n \"description\": - \"Banner image. Tablet size low resolution (1138x188).\",\n \"type\": - \"string\"\n },\n \"bannerTabletImageUrl\": {\n \"description\": - \"Banner image. Tablet size (1707x283).\",\n \"type\": \"string\"\n - \ },\n \"bannerTvImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. TV size extra high resolution (2120x1192).\"\n - \ },\n \"watchIconImageUrl\": {\n \"type\": \"string\"\n - \ },\n \"bannerTvLowImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. TV size low resolution (854x480).\"\n - \ },\n \"bannerTabletHdImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Tablet size high resolution (2276x377).\"\n - \ },\n \"bannerTabletExtraHdImageUrl\": {\n \"description\": - \"Banner image. Tablet size extra high resolution (2560x424).\",\n \"type\": - \"string\"\n },\n \"bannerMobileImageUrl\": {\n \"description\": - \"Banner image. Mobile size (640x175).\",\n \"type\": \"string\"\n - \ },\n \"bannerMobileExtraHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size high resolution (1440x395).\",\n \"type\": - \"string\"\n },\n \"bannerExternalUrl\": {\n \"type\": - \"string\",\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size low resolution (320x88).\"\n },\n \"bannerImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Branding properties for images associated with the - channel.\",\n \"id\": \"ImageSettings\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"properties\": {\n \"blocked\": {\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"allowed\": {\n \"description\": \"A list of - region codes that identify countries where the video is viewable. If this - property is present and a country is not listed in its value, then the video - is blocked from appearing in that country. If this property is present and - contains an empty list, the video is blocked in all countries.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"DEPRECATED Region restriction of the video.\"\n },\n - \ \"ChannelContentOwnerDetails\": {\n \"id\": \"ChannelContentOwnerDetails\",\n - \ \"properties\": {\n \"contentOwner\": {\n \"description\": - \"The ID of the content owner linked to the channel.\",\n \"type\": - \"string\"\n },\n \"timeLinked\": {\n \"description\": - \"The date and time when the channel was linked to the content owner.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"The contentOwnerDetails object encapsulates - channel data that is relevant for YouTube Partners linked with the channel.\",\n - \ \"type\": \"object\"\n },\n \"ChannelBrandingSettings\": {\n \"description\": - \"Branding properties of a YouTube channel.\",\n \"properties\": {\n - \ \"channel\": {\n \"$ref\": \"ChannelSettings\",\n \"description\": - \"Branding properties for the channel view.\"\n },\n \"image\": - {\n \"description\": \"Branding properties for branding images.\",\n - \ \"$ref\": \"ImageSettings\"\n },\n \"watch\": {\n - \ \"$ref\": \"WatchSettings\",\n \"description\": \"Branding - properties for the watch page.\"\n },\n \"hints\": {\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n },\n \"description\": - \"Additional experimental branding properties.\",\n \"type\": \"array\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelBrandingSettings\"\n - \ },\n \"ChannelSectionTargeting\": {\n \"description\": \"ChannelSection - targeting setting.\",\n \"properties\": {\n \"countries\": {\n - \ \"description\": \"The country the channel section is targeting.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"languages\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The language the channel section is targeting.\"\n - \ },\n \"regions\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The region the channel section is targeting.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelSectionTargeting\"\n },\n \"PlaylistLocalization\": - {\n \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for playlist's title.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for playlist's description.\"\n - \ }\n },\n \"description\": \"Playlist localization setting\",\n - \ \"type\": \"object\",\n \"id\": \"PlaylistLocalization\"\n },\n - \ \"VideoRating\": {\n \"properties\": {\n \"videoId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n },\n \"rating\": - {\n \"description\": \"Rating of a video.\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoRating\",\n - \ \"description\": \"Basic details about rating of a video.\",\n \"type\": - \"object\"\n },\n \"VideoListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"default\": \"youtube#videoListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Video\"\n }\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n }\n - \ },\n \"id\": \"VideoListResponse\"\n },\n \"VideoLocalization\": - {\n \"description\": \"Localized versions of certain video properties - (e.g. title).\",\n \"type\": \"object\",\n \"id\": \"VideoLocalization\",\n - \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Localized version of the video's description.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"Localized version of the video's title.\"\n }\n }\n },\n - \ \"ChannelTopicDetails\": {\n \"id\": \"ChannelTopicDetails\",\n \"properties\": - {\n \"topicCategories\": {\n \"description\": \"A list of - Wikipedia URLs that describe the channel's content.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"topicIds\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Freebase topic - information related to the channel.\"\n },\n \"SubscriptionSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a subscription, including title, description and thumbnails of the subscribed - item.\",\n \"id\": \"SubscriptionSnippet\",\n \"properties\": {\n - \ \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the subscription was created.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\",\n - \ \"type\": \"string\"\n },\n \"resourceId\": {\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\",\n \"$ref\": \"ResourceId\",\n \"annotations\": {\n - \ \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n }\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the subscription belongs to.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - subscription's title.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The subscription's - details.\"\n }\n }\n },\n \"PlaylistContentDetails\": {\n - \ \"properties\": {\n \"itemCount\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The number of videos in the playlist.\",\n \"type\": - \"integer\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"PlaylistContentDetails\"\n },\n \"InvideoPosition\": {\n \"type\": - \"object\",\n \"properties\": {\n \"cornerPosition\": {\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\",\n - \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\"\n ],\n \"description\": - \"Defines the position type.\",\n \"type\": \"string\",\n \"enum\": - [\n \"corner\"\n ]\n }\n },\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"id\": \"InvideoPosition\"\n },\n \"LiveStreamHealthStatus\": - {\n \"id\": \"LiveStreamHealthStatus\",\n \"properties\": {\n \"configurationIssues\": - {\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"description\": \"The configurations issues on this - stream\",\n \"type\": \"array\"\n },\n \"lastUpdateTimeSeconds\": - {\n \"description\": \"The last time this status was updated (in - seconds)\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"good\",\n \"ok\",\n - \ \"bad\",\n \"noData\",\n \"revoked\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The status code - of this stream\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"MembershipsLevelSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"creatorChannelId\": {\n \"description\": \"The id of - the channel that's offering channel memberships.\",\n \"type\": \"string\"\n - \ },\n \"levelDetails\": {\n \"$ref\": \"LevelDetails\",\n - \ \"description\": \"Details about the pricing level.\"\n }\n - \ },\n \"id\": \"MembershipsLevelSnippet\"\n },\n \"SuperChatEventListResponse\": - {\n \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"SuperChatEvent\"\n },\n \"description\": \"A list of Super - Chat purchases that match the request criteria.\",\n \"type\": \"array\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"SuperChatEventListResponse\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"description\": - \"Details about a resource which was added to a channel.\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was added to the channel.\"\n - \ }\n }\n },\n \"Thumbnail\": {\n \"id\": \"Thumbnail\",\n - \ \"properties\": {\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The thumbnail image's URL.\"\n },\n \"width\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"(Optional) Width of the thumbnail image.\"\n },\n \"height\": - {\n \"description\": \"(Optional) Height of the thumbnail image.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A thumbnail - is an image representing a YouTube resource.\"\n },\n \"SuperChatEvent\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"default\": \"youtube#superChatEvent\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the Super Chat event.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\",\n \"id\": \"SuperChatEvent\"\n },\n \"PlaylistItemStatus\": - {\n \"description\": \"Information about the playlist item's privacy - status.\",\n \"type\": \"object\",\n \"properties\": {\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"description\": \"This resource's privacy status.\"\n - \ }\n },\n \"id\": \"PlaylistItemStatus\"\n },\n \"VideoSnippet\": - {\n \"id\": \"VideoSnippet\",\n \"description\": \"Basic details - about a video, including title, description, uploader, thumbnails and category.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"defaultAudioLanguage\": - {\n \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"liveBroadcastContent\": {\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the video was uploaded.\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the videos's default snippet.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The video's title. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"description\": {\n \"description\": \"The video's - description. @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": - \"string\"\n },\n \"categoryId\": {\n \"description\": - \"The YouTube video category associated with the video.\",\n \"type\": - \"string\"\n },\n \"tags\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of keyword tags associated with the video. Tags may contain spaces.\"\n - \ },\n \"localized\": {\n \"description\": \"Localized - snippet selected with the hl parameter. If no such localization exists, this - field is populated with the default snippet. (Read-only)\",\n \"$ref\": - \"VideoLocalization\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the video. 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.\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the video belongs to.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that the video was uploaded to.\"\n }\n }\n - \ },\n \"CommentThreadListResponse\": {\n \"id\": \"CommentThreadListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"CommentThread\"\n },\n \"description\": - \"A list of comment threads that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#commentThreadListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"PlaylistStatus\": {\n \"id\": \"PlaylistStatus\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The playlist's privacy status.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ]\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"properties\": {\n \"profileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channels's avatar URL.\"\n },\n - \ \"isVerified\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author's identity has been verified by YouTube.\"\n },\n - \ \"isChatModerator\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is a moderator of the live chat.\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"displayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's display name.\"\n },\n \"isChatSponsor\": - {\n \"description\": \"Whether the author is a sponsor of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n },\n \"isChatOwner\": {\n \"description\": - \"Whether the author is the owner of the live chat.\",\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageAuthorDetails\"\n },\n \"VideoStatistics\": {\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\",\n \"type\": \"object\",\n \"id\": \"VideoStatistics\",\n - \ \"properties\": {\n \"likeCount\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of users who have indicated that they liked the video by giving it a positive - rating.\"\n },\n \"commentCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of comments for the video.\",\n - \ \"type\": \"string\"\n },\n \"dislikeCount\": {\n - \ \"description\": \"The number of users who have indicated that they - disliked the video by giving it a negative rating.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"favoriteCount\": - {\n \"description\": \"The number of users who currently have the - video marked as a favorite video.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"viewCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of times the video has been viewed.\"\n }\n }\n },\n - \ \"LiveStreamListResponse\": {\n \"type\": \"object\",\n \"id\": - \"LiveStreamListResponse\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - live streams that match the request criteria.\",\n \"items\": {\n - \ \"$ref\": \"LiveStream\"\n }\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"default\": \"youtube#liveStreamListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ }\n }\n },\n \"LiveBroadcastContentDetails\": {\n \"properties\": - {\n \"projection\": {\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ],\n \"description\": \"The projection format of this broadcast. - This defaults to rectangular.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"enableDvr\": {\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n - \ },\n \"enableEmbed\": {\n \"description\": \"This - setting indicates whether the broadcast video can be played in an embedded - player. If you choose to archive the video (using the enableArchive property), - this setting will also apply to the archived video.\",\n \"type\": - \"boolean\"\n },\n \"mesh\": {\n \"format\": \"byte\",\n - \ \"description\": \"The mesh for projecting the video if projection - is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding - of 3D mesh data that follows the Spherical Video V2 RFC specification for - an mshp box, excluding the box size and type but including the following four - reserved zero bytes for the version and flags.\",\n \"type\": \"string\"\n - \ },\n \"enableAutoStop\": {\n \"description\": \"This - setting indicates whether auto stop is enabled for this broadcast. The default - value for this property is false. This setting can only be used by Events.\",\n - \ \"type\": \"boolean\"\n },\n \"monitorStream\": {\n - \ \"$ref\": \"MonitorStreamInfo\",\n \"description\": \"The - monitorStream object contains information about the monitor stream, which - the broadcaster can use to review the event content before the broadcast stream - is shown publicly.\"\n },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"recordFromStart\": - {\n \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\",\n \"type\": \"boolean\"\n },\n \"startWithSlate\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast should automatically begin with an in-stream - slate when you update the broadcast's status to live. After updating the status, - you then need to send a liveCuepoints.insert request that sets the cuepoint's - eventState to end to remove the in-stream slate and make your broadcast stream - visible to viewers.\"\n },\n \"boundStreamId\": {\n \"type\": - \"string\",\n \"description\": \"This value uniquely identifies the - live stream bound to the broadcast.\"\n },\n \"closedCaptionsType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ],\n \"type\": \"string\"\n },\n \"latencyPreference\": - {\n \"description\": \"If both this and enable_low_latency are set, - they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW - should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency - omitted.\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Best for: highest quality viewer playbacks - and higher resolutions.\",\n \"Best for: near real-time interaction, - with minimal playback buffering.\",\n \"Best for: real-time interaction - Does not support: Closed captions, 1440p, and 4k resolutions\"\n ]\n - \ },\n \"enableLowLatency\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether this broadcast has low latency - enabled.\"\n },\n \"enableContentEncryption\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - YouTube should enable content encryption for the broadcast.\"\n },\n - \ \"stereoLayout\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\",\n \"type\": - \"string\",\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ]\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"description\": - \"The date and time that the live stream referenced by boundStreamId was last - updated.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"enableAutoStart\": {\n \"description\": \"This - setting indicates whether auto start is enabled for this broadcast. The default - value for this property is false. This setting can only be used by Events.\",\n - \ \"type\": \"boolean\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveBroadcastContentDetails\",\n \"description\": \"Detailed - settings of a broadcast.\"\n },\n \"LiveChatTextMessageDetails\": {\n - \ \"properties\": {\n \"messageText\": {\n \"description\": - \"The user's message.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LiveChatTextMessageDetails\",\n \"type\": \"object\"\n - \ },\n \"I18nRegion\": {\n \"type\": \"object\",\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n - \ \"id\": \"I18nRegion\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n \"default\": - \"youtube#i18nRegion\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the i18n region.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"I18nRegionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n region, such as region code and human-readable name.\"\n }\n - \ }\n },\n \"VideoProjectDetails\": {\n \"id\": \"VideoProjectDetails\",\n - \ \"type\": \"object\",\n \"description\": \"DEPRECATED. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"properties\": {}\n },\n \"LiveBroadcastSnippet\": {\n \"properties\": - {\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to end.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast was added - to YouTube's live broadcast schedule.\"\n },\n \"isDefaultBroadcast\": - {\n \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\",\n \"type\": \"boolean\"\n },\n - \ \"actualStartTime\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the broadcast actually started. This information - is only available once the broadcast's state is live.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The broadcast's description. As with the title, you can set this field by - modifying the broadcast resource or by setting the description field of the - corresponding video resource.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\"\n },\n \"scheduledStartTime\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"format\": \"date-time\"\n },\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the broadcast. For each nested object in this object, the key is the name - of the thumbnail image, and the value is an object that contains other information - about the thumbnail.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"liveChatId\": {\n \"description\": \"The id of the live - chat for this broadcast.\",\n \"type\": \"string\"\n },\n - \ \"actualEndTime\": {\n \"description\": \"The date and time - that the broadcast actually ended. This information is only available once - the broadcast's state is complete.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveBroadcastSnippet\",\n \"description\": \"Basic broadcast - information.\"\n },\n \"I18nLanguageSnippet\": {\n \"properties\": - {\n \"name\": {\n \"description\": \"The human-readable name - of the language in the language itself.\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"description\": \"A short BCP-47 - code that uniquely identifies a language.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"I18nLanguageSnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about an i18n language, - such as language code and human-readable name.\"\n },\n \"VideoAbuseReport\": - {\n \"id\": \"VideoAbuseReport\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n },\n \"language\": - {\n \"description\": \"The language that the content was viewed in.\",\n - \ \"type\": \"string\"\n },\n \"reasonId\": {\n \"type\": - \"string\",\n \"description\": \"The high-level, or primary, reason - that the content is abusive. The value is an abuse report reason ID.\"\n },\n - \ \"comments\": {\n \"description\": \"Additional comments - regarding the abuse report.\",\n \"type\": \"string\"\n },\n - \ \"secondaryReasonId\": {\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelConversionPing\": {\n \"properties\": - {\n \"conversionUrl\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"context\": {\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"Defines the context - of the ping.\"\n }\n },\n \"description\": \"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.\",\n - \ \"id\": \"ChannelConversionPing\",\n \"type\": \"object\"\n },\n - \ \"ActivityListResponse\": {\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"default\": \"youtube#activityListResponse\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Activity\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ActivityListResponse\"\n },\n \"ChannelStatus\": - {\n \"description\": \"JSON template for the status part of a channel.\",\n - \ \"type\": \"object\",\n \"id\": \"ChannelStatus\",\n \"properties\": - {\n \"isLinked\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n - \ \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"Privacy status - of the channel.\"\n },\n \"longUploadsStatus\": {\n \"type\": - \"string\",\n \"description\": \"The long uploads status of this - channel. See https://support.google.com/youtube/answer/71673 for more information.\",\n - \ \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ }\n }\n },\n \"VideoStatus\": {\n \"properties\": - {\n \"rejectionReason\": {\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"This value explains why YouTube rejected an uploaded video. This property - is only present if the uploadStatus property indicates that the upload was - rejected.\",\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n },\n \"uploadStatus\": - {\n \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ],\n \"description\": \"The status of the uploaded video.\",\n - \ \"enumDescriptions\": [\n \"Video has been uploaded but - not processed yet.\",\n \"Video has been successfully processed.\",\n - \ \"Processing has failed. See FailureReason.\",\n \"Video - has been rejected. See RejectionReason.\",\n \"Video has been deleted.\"\n - \ ],\n \"type\": \"string\"\n },\n \"publishAt\": - {\n \"description\": \"The date and time when the video is scheduled - to publish. It can be set only if the privacy status of the video is private..\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - privacy status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n },\n \"license\": {\n - \ \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"failureReason\": {\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ],\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ],\n \"description\": - \"This value explains why a video failed to upload. This property is only - present if the uploadStatus property indicates that the upload failed.\",\n - \ \"type\": \"string\"\n },\n \"publicStatsViewable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"embeddable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value indicates if the video can be embedded - on another website. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a video category, such as its localized title. Next Id: 18\",\n - \ \"id\": \"VideoStatus\"\n },\n \"LiveBroadcastStatistics\": {\n - \ \"description\": \"Statistics about the live broadcast. These represent - a snapshot of the values at the time of the request. Statistics are only returned - for live broadcasts.\",\n \"type\": \"object\",\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"properties\": {\n \"totalChatCount\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\"\n - \ },\n \"concurrentViewers\": {\n \"description\": \"The - number of viewers currently watching the broadcast. The property and its value - will be present if the broadcast has current viewers and the broadcast owner - has not hidden the viewcount for the video. Note that YouTube stops tracking - the number of concurrent viewers for a broadcast when the broadcast ends. - So, this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"I18nLanguage\": - {\n \"properties\": {\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n language, such as language code and human-readable name.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n language.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"default\": \"youtube#i18nLanguage\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"description\": \"An - *i18nLanguage* resource identifies a UI language currently supported by YouTube.\",\n - \ \"id\": \"I18nLanguage\",\n \"type\": \"object\"\n },\n \"ChannelContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"properties\": {\n \"watchHistory\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s watch history. Use the playlistItems.insert and - playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"likes\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"uploads\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s uploaded videos. Use the videos.insert method to - upload new videos and the videos.delete method to delete previously uploaded - videos.\"\n },\n \"watchLater\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\",\n \"type\": \"string\"\n },\n \"favorites\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s favorite videos. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n }\n },\n \"type\": \"object\"\n - \ }\n },\n \"id\": \"ChannelContentDetails\",\n \"description\": - \"Details about the content of a channel.\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"properties\": {\n \"giftMembershipsLevelName\": {\n \"description\": - \"The name of the level of the gift memberships purchased by the user. The - Level names are defined by the YouTube channel offering the Membership. In - some situations this field isn't filled.\",\n \"type\": \"string\"\n - \ },\n \"giftMembershipsCount\": {\n \"description\": - \"The number of gift memberships purchased by the user.\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n - \ \"VideoAbuseReportReasonSnippet\": {\n \"type\": \"object\",\n \"id\": - \"VideoAbuseReportReasonSnippet\",\n \"properties\": {\n \"label\": - {\n \"description\": \"The localized label belonging to this abuse - report reason.\",\n \"type\": \"string\"\n },\n \"secondaryReasons\": - {\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"type\": \"array\",\n \"description\": \"The - secondary reasons associated with this reason, if any are available. (There - might be 0 or more.)\"\n }\n },\n \"description\": \"Basic - details about a video category, such as its localized title.\"\n },\n \"LiveChatBan\": - {\n \"properties\": {\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the ban.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatBan\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatBan\",\n \"description\": \"A `__liveChatBan__` resource represents - a ban for a YouTube live chat.\"\n },\n \"CommentThreadSnippet\": {\n - \ \"properties\": {\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"totalReplyCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total number of replies (not including the top level comment).\"\n },\n - \ \"canReply\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"isPublic\": {\n \"description\": \"Whether - the thread (and therefore all its comments) is visible to all YouTube users.\",\n - \ \"type\": \"boolean\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\",\n \"type\": \"string\"\n },\n - \ \"topLevelComment\": {\n \"$ref\": \"Comment\",\n \"description\": - \"The top level comment of this thread.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"CommentThreadSnippet\",\n \"description\": - \"Basic details about a comment thread.\"\n },\n \"Cuepoint\": {\n \"id\": - \"Cuepoint\",\n \"description\": \"Note that there may be a 5-second - end-point resolution issue. For instance, if a cuepoint comes in for 22:03:27, - we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. This is an - artifact of HLS.\",\n \"properties\": {\n \"insertionOffsetTimeMs\": - {\n \"format\": \"int64\",\n \"type\": \"string\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\"\n },\n \"cueType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ]\n },\n \"walltimeMs\": - {\n \"description\": \"The wall clock time at which the cuepoint - should be inserted. Only one of insertion_offset_time_ms and walltime_ms may - be set at a time.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"durationSecs\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The duration of this cuepoint.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - identifier for cuepoint resource.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"type\": \"object\",\n \"description\": \"Information about - a video that was marked as a favorite video.\",\n \"properties\": {\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\"\n }\n },\n \"id\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"VideoAbuseReportReason\": {\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"VideoAbuseReportReasonSnippet\",\n \"description\": \"The `snippet` - object contains basic details about the abuse report reason.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID of this abuse report reason.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReason\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"VideoAbuseReportReason\"\n },\n - \ \"VideoCategorySnippet\": {\n \"id\": \"VideoCategorySnippet\",\n - \ \"properties\": {\n \"channelId\": {\n \"description\": - \"The YouTube channel that created the video category.\",\n \"type\": - \"string\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The video category's title.\"\n },\n \"assignable\": {\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic details about a video category, such as its localized title.\"\n },\n - \ \"CommentSnippetAuthorChannelId\": {\n \"type\": \"object\",\n \"description\": - \"The id of the author's YouTube channel, if any.\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"CommentSnippetAuthorChannelId\"\n },\n \"ChannelSectionSnippet\": - {\n \"description\": \"Basic details about a channel section, including - title, style and position.\",\n \"type\": \"object\",\n \"id\": - \"ChannelSectionSnippet\",\n \"properties\": {\n \"localized\": - {\n \"description\": \"Localized title, read-only.\",\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel section's title for - multiple_playlists and multiple_channels.\"\n },\n \"position\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The position of the channel section in the channel.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the channel section.\",\n \"type\": \"string\"\n - \ },\n \"style\": {\n \"type\": \"string\",\n \"enum\": - [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The style of the channel section.\"\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the channel section's default title and description.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The type of the - channel section.\",\n \"type\": \"string\",\n \"enum\": - [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ]\n }\n }\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n \"properties\": - {\n \"partsTotal\": {\n \"description\": \"An estimate of - the total number of parts that need to be processed for the video. The number - may be updated with more precise estimates while YouTube processes the video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"timeLeftMs\": {\n \"format\": \"uint64\",\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\",\n \"type\": \"string\"\n },\n - \ \"partsProcessed\": {\n \"description\": \"The number of - parts of the video that YouTube has already processed. You can estimate the - percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Video processing progress and completion time estimate.\",\n \"type\": - \"object\"\n },\n \"ThumbnailDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"Internal representation of thumbnails for a YouTube - resource.\",\n \"id\": \"ThumbnailDetails\",\n \"properties\": {\n - \ \"medium\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The medium quality image for this resource.\"\n },\n \"standard\": - {\n \"description\": \"The standard quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"maxres\": {\n \"description\": - \"The maximum resolution quality image for this resource.\",\n \"$ref\": - \"Thumbnail\"\n },\n \"default\": {\n \"description\": - \"The default image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"high\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The high quality image for this resource.\"\n }\n }\n },\n - \ \"LiveChatFanFundingEventDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the fund was made.\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the user to this fan funding event.\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The amount of the fund.\"\n }\n - \ },\n \"id\": \"LiveChatFanFundingEventDetails\"\n },\n \"Entity\": - {\n \"properties\": {\n \"url\": {\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"typeId\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"Entity\",\n \"type\": \"object\"\n },\n \"SearchListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"default\": \"youtube#searchListResponse\"\n },\n \"items\": - {\n \"description\": \"Pagination information for token pagination.\",\n - \ \"items\": {\n \"$ref\": \"SearchResult\"\n },\n - \ \"type\": \"array\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n }\n - \ },\n \"id\": \"SearchListResponse\"\n },\n \"LocalizedProperty\": - {\n \"properties\": {\n \"localized\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LocalizedString\"\n - \ }\n },\n \"default\": {\n \"type\": \"string\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the default property.\",\n \"$ref\": \"LanguageTag\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LocalizedProperty\"\n - \ },\n \"AccessPolicy\": {\n \"description\": \"Rights management - policy for YouTube resources.\",\n \"properties\": {\n \"allowed\": - {\n \"description\": \"The value of allowed indicates whether the - access to the policy is allowed or denied by default.\",\n \"type\": - \"boolean\"\n },\n \"exception\": {\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"AccessPolicy\"\n },\n \"LanguageTag\": - {\n \"id\": \"LanguageTag\",\n \"type\": \"object\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"properties\": {\n \"userComment\": {\n \"description\": - \"The comment added by the member to this Member Milestone Chat. This field - is empty for messages without a comment from the member.\",\n \"type\": - \"string\"\n },\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viever is a member. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"memberMonth\": {\n \"description\": \"The total amount - of months (rounded up) the viewer has been a member that granted them this - Member Milestone Chat. This is the same number of months as is being displayed - to YouTube users.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"RelatedEntity\": - {\n \"properties\": {\n \"entity\": {\n \"$ref\": \"Entity\"\n - \ }\n },\n \"id\": \"RelatedEntity\",\n \"type\": \"object\"\n - \ },\n \"VideoRecordingDetails\": {\n \"description\": \"Recording - information associated with the video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"location\": {\n \"$ref\": \"GeoPoint\",\n \"description\": - \"The geolocation information associated with the video.\"\n },\n \"recordingDate\": - {\n \"description\": \"The date and time when the video was recorded.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"locationDescription\": {\n \"type\": \"string\",\n \"description\": - \"The text description of the location where the video was recorded.\"\n }\n - \ },\n \"id\": \"VideoRecordingDetails\"\n },\n \"InvideoTiming\": - {\n \"type\": \"object\",\n \"properties\": {\n \"type\": - {\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"description\": \"Describes a timing type. If the - value is offsetFromStart, then the offsetMs field represents an offset from - the start of the video. If the value is offsetFromEnd, then the offsetMs field - represents an offset from the end of the video.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"offsetMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"Defines the time at which the promotion - will appear. Depending on the value of type the value of the offsetMs field - will represent a time offset from the start or from the end of the video, - expressed in milliseconds.\"\n },\n \"durationMs\": {\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n }\n },\n \"id\": \"InvideoTiming\",\n - \ \"description\": \"Describes a temporal position of a visual widget - inside a video.\"\n },\n \"ActivityContentDetails\": {\n \"id\": - \"ActivityContentDetails\",\n \"description\": \"Details about the content - of an activity: the video that was shared, the channel that was subscribed - to, etc.\",\n \"properties\": {\n \"channelItem\": {\n \"$ref\": - \"ActivityContentDetailsChannelItem\",\n \"description\": \"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.\"\n },\n - \ \"playlistItem\": {\n \"description\": \"The playlistItem - object contains information about a new playlist item. This property is only - present if the snippet.type is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\"\n },\n \"like\": {\n \"$ref\": - \"ActivityContentDetailsLike\",\n \"description\": \"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.\"\n },\n - \ \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n },\n \"promotedItem\": {\n \"$ref\": - \"ActivityContentDetailsPromotedItem\",\n \"description\": \"The - promotedItem object contains details about a resource which is being promoted. - This property is only present if the snippet.type is promotedItem.\"\n },\n - \ \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"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.\"\n },\n \"subscription\": - {\n \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"comment\": {\n \"description\": \"The comment - object contains information about a resource that received a comment. This - property is only present if the snippet.type is comment.\",\n \"$ref\": - \"ActivityContentDetailsComment\"\n },\n \"upload\": {\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"social\": {\n \"$ref\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"The social object contains details about a social - network post. This property is only present if the snippet.type is social.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"CaptionListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\"\n },\n \"items\": - {\n \"description\": \"A list of captions that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Caption\"\n }\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": - \"CaptionListResponse\"\n },\n \"ChannelLocalization\": {\n \"type\": - \"object\",\n \"description\": \"Channel localization setting\",\n \"id\": - \"ChannelLocalization\",\n \"properties\": {\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The localized - strings for channel's title.\"\n },\n \"description\": {\n \"description\": - \"The localized strings for channel's description.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"properties\": {\n \"tag\": {\n \"type\": \"string\",\n - \ \"description\": \"The keyword tag suggested for the video.\"\n - \ },\n \"categoryRestricts\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A set of video categories for which the tag is relevant. You can use this - information to display appropriate tag suggestions based on the video category - that the video uploader associates with the video. By default, tag suggestions - are relevant for all categories if there are no restricts defined for the - keyword.\"\n }\n },\n \"id\": \"VideoSuggestionsTagSuggestion\",\n - \ \"type\": \"object\",\n \"description\": \"A single tag suggestion - with it's relevance information.\"\n },\n \"ChannelStatistics\": {\n - \ \"properties\": {\n \"subscriberCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of subscribers that the - channel has.\",\n \"format\": \"uint64\"\n },\n \"commentCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of comments for the channel.\"\n },\n \"videoCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of videos uploaded to the channel.\"\n },\n \"hiddenSubscriberCount\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the number of subscribers is shown for this user.\"\n },\n \"viewCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of times the channel has been viewed.\",\n \"format\": \"uint64\"\n - \ }\n },\n \"description\": \"Statistics about a channel: - number of subscribers, number of videos in the channel, etc.\",\n \"type\": - \"object\",\n \"id\": \"ChannelStatistics\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageRetractedDetails\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoAbuseReportReasonListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The `visitorId` - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of valid abuse reasons that are used with `video.ReportAbuse`.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"MembershipsDetails\": {\n \"id\": \"MembershipsDetails\",\n - \ \"properties\": {\n \"highestAccessibleLevel\": {\n \"type\": - \"string\",\n \"description\": \"Id of the highest level that the - user has access to at the moment.\"\n },\n \"membershipsDuration\": - {\n \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\",\n \"$ref\": \"MembershipsDuration\"\n - \ },\n \"highestAccessibleLevelDisplayName\": {\n \"type\": - \"string\",\n \"description\": \"Display name for the highest level - that the user has access to at the moment.\"\n },\n \"accessibleLevels\": - {\n \"description\": \"Ids of all levels that the user has access - to. This includes the currently active level and all other levels that are - included because of a higher purchase.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"membershipsDurationAtLevels\": - {\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ },\n \"description\": \"Data about memberships duration - on particular pricing levels.\",\n \"type\": \"array\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": - {\n \"description\": \"Live broadcast state.\",\n \"id\": \"LiveBroadcastStatus\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"This field - will be set to True if the creator declares the broadcast to be kids only: - go/live-cw-work.\"\n },\n \"liveBroadcastPriority\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Low - priority broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ],\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"description\": \"Priority of the live broadcast event (internal - state).\"\n },\n \"madeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the broadcast is made for kids or not, - decided by YouTube instead of the creator. This field is read only.\"\n },\n - \ \"recordingStatus\": {\n \"description\": \"The broadcast's - recording status.\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"type\": - \"string\"\n },\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"The broadcast's - privacy status. Note that the broadcast represents exactly one YouTube video, - so the privacy settings are identical to those supported for videos. In addition, - you can set this field by modifying the broadcast resource or by setting the - privacyStatus field of the corresponding video resource.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"lifeCycleStatus\": {\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"type\": \"string\"\n }\n }\n },\n \"ThumbnailSetResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"default\": \"youtube#thumbnailSetResponse\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": \"A list of - thumbnails.\"\n }\n },\n \"id\": \"ThumbnailSetResponse\",\n - \ \"type\": \"object\"\n },\n \"SearchResult\": {\n \"properties\": - {\n \"id\": {\n \"description\": \"The id object contains - information that can be used to uniquely identify the resource that matches - the search request.\",\n \"$ref\": \"ResourceId\"\n },\n \"snippet\": - {\n \"$ref\": \"SearchResultSnippet\",\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#searchResult\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#searchResult\"\n }\n - \ },\n \"description\": \"A search result contains information about - a YouTube video, channel, or playlist that matches the search parameters specified - in an API request. While a search result points to a uniquely identifiable - resource, like a video, it does not have its own persistent data.\",\n \"type\": - \"object\",\n \"id\": \"SearchResult\"\n },\n \"ActivityContentDetailsComment\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with the comment.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"Information about a resource that received a comment.\"\n - \ },\n \"ChannelListResponse\": {\n \"type\": \"object\",\n \"id\": - \"ChannelListResponse\",\n \"properties\": {\n \"pageInfo\": {\n - \ \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Channel\"\n - \ },\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelListResponse\\\".\",\n \"default\": - \"youtube#channelListResponse\"\n }\n }\n },\n \"MembershipsDurationAtLevel\": - {\n \"properties\": {\n \"memberSince\": {\n \"description\": - \"The date and time when the user became a continuous member for the given - level.\",\n \"type\": \"string\"\n },\n \"level\": - {\n \"type\": \"string\",\n \"description\": \"Pricing level - ID.\"\n },\n \"memberTotalDurationMonths\": {\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n }\n },\n \"id\": - \"MembershipsDurationAtLevel\",\n \"type\": \"object\"\n },\n \"PropertyValue\": - {\n \"type\": \"object\",\n \"id\": \"PropertyValue\",\n \"properties\": - {\n \"property\": {\n \"type\": \"string\",\n \"description\": - \"A property.\"\n },\n \"value\": {\n \"description\": - \"The property's value.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A pair Property / Value.\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"id\": \"ActivityContentDetailsRecommendation\",\n \"type\": - \"object\",\n \"description\": \"Information that identifies the recommended - resource.\",\n \"properties\": {\n \"seedResourceId\": {\n \"description\": - \"The seedResourceId object contains information about the resource that caused - the recommendation.\",\n \"$ref\": \"ResourceId\"\n },\n \"reason\": - {\n \"enum\": [\n \"reasonUnspecified\",\n \"videoFavorited\",\n - \ \"videoLiked\",\n \"videoWatched\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that the resource is recommended to the user.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the recommended resource.\"\n }\n }\n },\n \"VideoFileDetails\": - {\n \"type\": \"object\",\n \"id\": \"VideoFileDetails\",\n \"properties\": - {\n \"container\": {\n \"description\": \"The uploaded video - file's container format.\",\n \"type\": \"string\"\n },\n - \ \"fileSize\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The uploaded file's size in bytes. - This field is present whether a video file or another type of file was uploaded.\"\n - \ },\n \"videoStreams\": {\n \"description\": \"A list - of video streams contained in the uploaded video file. Each item in the list - contains detailed metadata about a video stream.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ }\n },\n \"durationMs\": {\n \"type\": \"string\",\n - \ \"description\": \"The length of the uploaded video in milliseconds.\",\n - \ \"format\": \"uint64\"\n },\n \"audioStreams\": {\n - \ \"description\": \"A list of audio streams contained in the uploaded - video file. Each item in the list contains detailed metadata about an audio - stream.\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"type\": \"array\"\n },\n \"fileName\": - {\n \"type\": \"string\",\n \"description\": \"The uploaded - file's name. This field is present whether a video file or another type of - file was uploaded.\"\n },\n \"fileType\": {\n \"enum\": - [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"description\": \"The uploaded - file's type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\",\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"type\": \"string\"\n },\n \"creationTime\": - {\n \"description\": \"The date and time when the uploaded video - file was created. The value is specified in ISO 8601 format. Currently, the - following ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive - time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \",\n \"type\": \"string\"\n },\n \"bitrateBps\": {\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - video file's combined (video and audio) bitrate in bits per second.\",\n \"format\": - \"uint64\"\n }\n },\n \"description\": \"Describes original - video file properties, including technical details about audio and video streams, - but also metadata information like content length, digitization time, or geotagging - information.\"\n },\n \"LiveChatMessageSnippet\": {\n \"properties\": - {\n \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n - \ \"description\": \"Details about the New Member Announcement event, - this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" - is the new term for \\\"sponsor\\\".\"\n },\n \"liveChatId\": - {\n \"type\": \"string\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"giftMembershipReceivedDetails\": {\n \"$ref\": - \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": \"Details - about the Gift Membership Received event, this is only set if the type is - 'giftMembershipReceivedEvent'.\"\n },\n \"authorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that authored this message, this field is not always filled. textMessageEvent - - the user that wrote the message fanFundingEvent - the user that funded the - broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"displayMessage\": {\n - \ \"description\": \"Contains a string that can be displayed to the - user. If this field is not present the message is silent, at the moment only - messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\",\n \"type\": - \"string\"\n },\n \"fanFundingEventDetails\": {\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n },\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n },\n \"publishedAt\": {\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the message was orignally published.\",\n \"format\": \"date-time\"\n - \ },\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"hasDisplayContent\": {\n \"description\": \"Whether - the message has display content that should be displayed to users.\",\n \"type\": - \"boolean\"\n },\n \"superChatDetails\": {\n \"$ref\": - \"LiveChatSuperChatDetails\",\n \"description\": \"Details about - the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"type\": {\n \"enum\": [\n \"invalidType\",\n - \ \"textMessageEvent\",\n \"tombstone\",\n \"fanFundingEvent\",\n - \ \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\"\n },\n \"superStickerDetails\": - {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\"\n - \ }\n },\n \"description\": \"Next ID: 33\",\n \"type\": - \"object\",\n \"id\": \"LiveChatMessageSnippet\"\n },\n \"ChannelSnippet\": - {\n \"type\": \"object\",\n \"id\": \"ChannelSnippet\",\n \"properties\": - {\n \"defaultLanguage\": {\n \"description\": \"The language - of the channel's default title and description.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the channel was created.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The description of the channel.\"\n - \ },\n \"localized\": {\n \"description\": \"Localized - title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"thumbnails\": {\n \"description\": \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"country\": - {\n \"description\": \"The country of the channel.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - channel's title.\",\n \"type\": \"string\"\n },\n \"customUrl\": - {\n \"description\": \"The custom url of the channel.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - a channel, including title, description and thumbnails.\"\n },\n \"VideoContentDetails\": - {\n \"description\": \"Details about the content of a YouTube Video.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"definition\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"description\": \"The value of - definition indicates whether the video is available in high definition or - only in standard definition.\",\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ]\n },\n \"dimension\": {\n \"type\": - \"string\",\n \"description\": \"The value of dimension indicates - whether the video is available in 3D or in 2D.\"\n },\n \"projection\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"Specifies the projection format - of the video.\",\n \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"type\": \"string\"\n },\n \"regionRestriction\": - {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\"\n },\n - \ \"countryRestriction\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\"\n },\n - \ \"caption\": {\n \"description\": \"The value of captions - indicates whether the video has captions or not.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"true\",\n \"false\"\n ],\n \"type\": - \"string\"\n },\n \"hasCustomThumbnail\": {\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n },\n \"contentRating\": {\n \"$ref\": - \"ContentRating\",\n \"description\": \"Specifies the ratings that - the video received under various rating schemes.\"\n },\n \"licensedContent\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of is_license_content indicates whether the video is licensed content.\"\n - \ },\n \"duration\": {\n \"type\": \"string\",\n \"description\": - \"The length of the video. The tag value is an ISO 8601 duration in the format - PT#M#S, in which the letters PT indicate that the value specifies a period - of time, and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n }\n - \ },\n \"id\": \"VideoContentDetails\"\n },\n \"VideoFileDetailsAudioStream\": - {\n \"description\": \"Information about an audio stream.\",\n \"type\": - \"object\",\n \"properties\": {\n \"codec\": {\n \"type\": - \"string\",\n \"description\": \"The audio codec that the stream - uses.\"\n },\n \"vendor\": {\n \"type\": \"string\",\n - \ \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\"\n },\n \"bitrateBps\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The audio stream's bitrate, in bits per second.\"\n },\n \"channelCount\": - {\n \"description\": \"The number of audio channels that the stream - contains.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ }\n },\n \"id\": \"VideoFileDetailsAudioStream\"\n },\n - \ \"TokenPagination\": {\n \"properties\": {},\n \"type\": \"object\",\n - \ \"description\": \"Stub token pagination template to suppress results.\",\n - \ \"id\": \"TokenPagination\"\n },\n \"LiveChatModeratorSnippet\": - {\n \"properties\": {\n \"moderatorDetails\": {\n \"description\": - \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"liveChatId\": {\n \"description\": \"The ID - of the live chat this moderator can act on.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\"\n - \ },\n \"CommentThreadReplies\": {\n \"description\": \"Comments - written in (direct or indirect) reply to the top level comment.\",\n \"id\": - \"CommentThreadReplies\",\n \"properties\": {\n \"comments\": - {\n \"description\": \"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.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelSectionLocalization\": - {\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for channel section's title.\"\n - \ }\n },\n \"id\": \"ChannelSectionLocalization\",\n \"description\": - \"ChannelSection localization setting\",\n \"type\": \"object\"\n },\n - \ \"ThirdPartyLinkListResponse\": {\n \"id\": \"ThirdPartyLinkListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"InvideoBranding\": {\n \"description\": \"LINT.IfChange - Describes an invideo branding.\",\n \"type\": \"object\",\n \"properties\": - {\n \"targetChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel to which this branding links. If not present it defaults to - the current channel.\"\n },\n \"timing\": {\n \"description\": - \"The temporal position within the video where watermark will be displayed.\",\n - \ \"$ref\": \"InvideoTiming\"\n },\n \"position\": {\n - \ \"$ref\": \"InvideoPosition\",\n \"description\": \"The - spatial position within the video where the branding watermark will be displayed.\"\n - \ },\n \"imageUrl\": {\n \"description\": \"The url - of the uploaded image. Only used in apiary to api communication.\",\n \"type\": - \"string\"\n },\n \"imageBytes\": {\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"format\": \"byte\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"InvideoBranding\"\n },\n \"SearchResultSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"description\": {\n \"description\": \"A description of - the search result.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the channel that published the resource that the search result identifies.\"\n - \ },\n \"liveBroadcastContent\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ]\n - \ },\n \"channelId\": {\n \"description\": \"The value - that YouTube uses to uniquely identify the channel that published the resource - that the search result identifies.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"description\": \"The title of the search - result.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The creation date and time of the resource - that the search result identifies.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"id\": \"SearchResultSnippet\"\n - \ },\n \"VideoPlayer\": {\n \"id\": \"VideoPlayer\",\n \"description\": - \"Player to be used for a video playback.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"embedWidth\": {\n \"description\": - \"The embed width\",\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"embedHtml\": {\n \"type\": \"string\",\n - \ \"description\": \"An \\u003ciframe\\u003e tag that embeds a player - that will play the video.\"\n },\n \"embedHeight\": {\n \"type\": - \"string\",\n \"format\": \"int64\"\n }\n }\n },\n - \ \"LiveChatUserBannedMessageDetails\": {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"properties\": {\n \"bannedUserDetails\": {\n \"description\": - \"The details of the user that was banned.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banType\": {\n \"description\": \"The type - of ban.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"permanent\",\n \"temporary\"\n ]\n },\n - \ \"banDurationSeconds\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The duration of the ban. This property - is only present if the banType is temporary.\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoTopicDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoTopicDetails\",\n \"properties\": {\n \"topicIds\": - {\n \"type\": \"array\",\n \"description\": \"A list of - Freebase topic IDs that are centrally associated with the video. These are - topics that are centrally featured in the video, and it can be said that the - video is mainly about each of these. You can retrieve information about each - topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n },\n \"relevantTopicIds\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"Similar to topic_id, except that these topics - are merely relevant to the video. These are topics that may be mentioned in, - or appear in the video. You can retrieve information about each topic using - Freebase Topic API.\"\n },\n \"topicCategories\": {\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\"\n }\n },\n \"description\": - \"Freebase topic information related to the video.\"\n },\n \"LiveChatBanSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"liveChatId\": - {\n \"description\": \"The chat this ban is pertinent to.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"description\": - \"The type of ban.\",\n \"type\": \"string\"\n },\n \"banDurationSeconds\": - {\n \"type\": \"string\",\n \"description\": \"The duration - of a ban, only filled if the ban has type TEMPORARY.\",\n \"format\": - \"uint64\"\n },\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\"\n }\n },\n \"id\": \"LiveChatBanSnippet\"\n - \ },\n \"PlaylistItemListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#playlistItemListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of playlist items that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n - \ }\n }\n },\n \"id\": \"PlaylistItemListResponse\"\n - \ },\n \"SubscriptionContentDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"totalItemCount\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The approximate number of items that the subscription points to.\"\n },\n - \ \"activityType\": {\n \"description\": \"The type of activity - this subscription is for (only uploads, everything).\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"type\": - \"string\"\n },\n \"newItemCount\": {\n \"type\": \"integer\",\n - \ \"description\": \"The number of new items in the subscription since - its content was last read.\",\n \"format\": \"uint32\"\n }\n - \ },\n \"id\": \"SubscriptionContentDetails\",\n \"description\": - \"Details about the content to witch a subscription refers.\"\n },\n \"GeoPoint\": - {\n \"description\": \"Geographical coordinates of a point, in WGS84.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"latitude\": - {\n \"description\": \"Latitude in degrees.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n },\n \"altitude\": - {\n \"format\": \"double\",\n \"description\": \"Altitude - above the reference ellipsoid, in meters.\",\n \"type\": \"number\"\n - \ },\n \"longitude\": {\n \"format\": \"double\",\n - \ \"type\": \"number\",\n \"description\": \"Longitude in - degrees.\"\n }\n },\n \"id\": \"GeoPoint\"\n },\n \"IngestionInfo\": - {\n \"description\": \"Describes information necessary for ingesting - an RTMP, HTTP, or SRT stream.\",\n \"id\": \"IngestionInfo\",\n \"type\": - \"object\",\n \"properties\": {\n \"backupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The backup - ingestion URL that you should use to stream video to YouTube. You have the - option of simultaneously streaming the content that you are sending to the - ingestionAddress to this URL.\"\n },\n \"streamName\": {\n \"description\": - \"The stream name that YouTube assigns to the video stream.\",\n \"type\": - \"string\"\n },\n \"ingestionAddress\": {\n \"description\": - \"The primary ingestion URL that you should use to stream video to YouTube. - You must stream video to this URL. Depending on which application or tool - you use to encode your video stream, you may need to enter the stream URL - and stream name separately or you may need to concatenate them in the following - format: *STREAM_URL/STREAM_NAME* \",\n \"type\": \"string\"\n },\n - \ \"rtmpsBackupIngestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"This ingestion url may be used instead of backupIngestionAddress - in order to stream via RTMPS. Not applicable to non-RTMP streams.\"\n },\n - \ \"rtmpsIngestionAddress\": {\n \"description\": \"This ingestion - url may be used instead of ingestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"VideoSuggestions\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoSuggestions\",\n \"description\": \"Specifies suggestions - on how to improve video content, including encoding hints, tag suggestions, - and editor suggestions.\",\n \"properties\": {\n \"processingWarnings\": - {\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ]\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of reasons - why YouTube may have difficulty transcoding the uploaded video or that might - result in an erroneous transcoding. These warnings are generated before YouTube - actually processes the uploaded video file. In addition, they identify issues - that are unlikely to cause the video processing to fail but that might cause - problems such as sync issues, video artifacts, or a missing audio track.\"\n - \ },\n \"processingErrors\": {\n \"items\": {\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"audioFile\",\n \"imageFile\",\n - \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n - \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n },\n \"description\": \"A list of errors - that will prevent YouTube from successfully processing the uploaded video - video. These errors indicate that, regardless of the video's current processing - status, eventually, that status will almost certainly be failed.\",\n \"type\": - \"array\"\n },\n \"editorSuggestions\": {\n \"type\": - \"array\",\n \"description\": \"A list of video editing operations - that might improve the video quality or playback experience of the uploaded - video.\",\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n - \ \"enumDescriptions\": [\n \"Picture brightness levels - seem off and could be corrected.\",\n \"The video appears shaky - and could be stabilized.\",\n \"Margins (mattes) detected around - the picture could be cropped.\",\n \"The audio track appears - silent and could be swapped with a better quality one.\"\n ]\n - \ }\n },\n \"processingHints\": {\n \"type\": - \"array\",\n \"items\": {\n \"enumDescriptions\": [\n - \ \"The MP4 file is not streamable, this will slow down the processing. - MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of suggestions that may - improve YouTube's ability to process the video.\"\n },\n \"tagSuggestions\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoSuggestionsTagSuggestion\"\n },\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\"\n }\n }\n },\n \"ChannelSectionListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"items\": - {\n \"description\": \"A list of ChannelSections that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"type\": \"array\"\n },\n \"kind\": - {\n \"default\": \"youtube#channelSectionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": - \"ChannelSectionListResponse\"\n },\n \"LiveChatSuperStickerDetails\": - {\n \"properties\": {\n \"amountMicros\": {\n \"type\": - \"string\",\n \"description\": \"The amount purchased by the user, - in micros (1,750,000 micros = 1.75).\",\n \"format\": \"uint64\"\n - \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made.\"\n },\n \"tier\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n }\n },\n \"id\": \"LiveChatSuperStickerDetails\",\n - \ \"type\": \"object\"\n },\n \"SuperChatEventSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"isSuperStickerEvent\": {\n - \ \"type\": \"boolean\",\n \"description\": \"True if this - event is a Super Sticker event.\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\"\n },\n \"displayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the purchase amount and currency (e.g., \\\"$1.00\\\"). The string is rendered - for the given language.\"\n },\n \"commentText\": {\n \"description\": - \"The text contents of the comment left by the user.\",\n \"type\": - \"string\"\n },\n \"messageType\": {\n \"type\": \"integer\",\n - \ \"description\": \"The tier for the paid message, which is based - on the amount of money spent to purchase the message.\",\n \"format\": - \"uint32\"\n },\n \"supporterDetails\": {\n \"description\": - \"Details about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"amountMicros\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The purchase amount, in micros of the purchase - currency. e.g., 1 is represented as 1000000.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Channel id where the event occurred.\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\"\n },\n \"createdAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the event occurred.\",\n \"format\": \"date-time\"\n - \ }\n },\n \"id\": \"SuperChatEventSnippet\"\n },\n \"ChannelSectionContentDetails\": - {\n \"properties\": {\n \"channels\": {\n \"description\": - \"The channel ids for type multiple_channels.\",\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"playlists\": {\n \"type\": \"array\",\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"description\": \"Details - about a channelsection, including playlists and channels.\",\n \"type\": - \"object\",\n \"id\": \"ChannelSectionContentDetails\"\n },\n \"LiveBroadcastListResponse\": - {\n \"type\": \"object\",\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveBroadcastListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of broadcasts that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n }\n }\n - \ },\n \"SubscriptionListResponse\": {\n \"id\": \"SubscriptionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of subscriptions that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Subscription\"\n }\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#subscriptionListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n }\n - \ }\n },\n \"VideoGetRatingResponse\": {\n \"id\": \"VideoGetRatingResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of ratings that match the request criteria.\",\n - \ \"items\": {\n \"$ref\": \"VideoRating\"\n },\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoGetRatingResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n }\n },\n \"PlaylistSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"channelTitle\": {\n \"description\": - \"The channel title of the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"description\": \"The playlist's title.\"\n },\n \"description\": - {\n \"description\": \"The playlist's description.\",\n \"type\": - \"string\"\n },\n \"tags\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Keyword tags associated - with the playlist.\",\n \"type\": \"array\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the playlist.\",\n \"type\": \"string\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the playlist's default title and description.\",\n \"type\": - \"string\"\n },\n \"thumbnailVideoId\": {\n \"description\": - \"Note: if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the playlist was created.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n }\n },\n - \ \"id\": \"PlaylistSnippet\",\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails.\"\n },\n - \ \"PlaylistItem\": {\n \"description\": \"A *playlistItem* resource - identifies another resource, such as a video, that is included in a playlist. - In addition, the playlistItem resource contains details about the included - resource that pertain specifically to how that resource is used in that playlist. - YouTube uses playlists to identify special collections of videos for a channel, - such as: - uploaded videos - favorite videos - positively rated (liked) videos - - watch history - watch later To be more specific, these lists are associated - with a channel, which is a collection of a person, group, or company's videos, - playlists, and other YouTube information. You can retrieve the playlist IDs - for each of these lists from the channel resource for a given channel. You - can then use the playlistItems.list method to retrieve any of those lists. - You can also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods. For example, if a user gives a positive - rating to a video, you would insert that video into the liked videos playlist - for that user's channel.\",\n \"id\": \"PlaylistItem\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the playlist item.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"default\": \"youtube#playlistItem\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistItemSnippet\",\n \"description\": \"The snippet object - contains basic details about the playlist item, such as its title and position - in the playlist.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\",\n \"$ref\": \"PlaylistItemStatus\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"TestItemTestItemSnippet\": - {\n \"id\": \"TestItemTestItemSnippet\",\n \"properties\": {},\n - \ \"type\": \"object\"\n },\n \"VideoMonetizationDetails\": {\n - \ \"id\": \"VideoMonetizationDetails\",\n \"type\": \"object\",\n - \ \"description\": \"Details about monetization of a YouTube Video.\",\n - \ \"properties\": {\n \"access\": {\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\",\n - \ \"$ref\": \"AccessPolicy\"\n }\n }\n },\n \"Video\": - {\n \"description\": \"A *video* resource represents a YouTube video.\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video, such as its title, description, and category.\"\n },\n \"topicDetails\": - {\n \"$ref\": \"VideoTopicDetails\",\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\"\n },\n \"projectDetails\": {\n \"description\": - \"The projectDetails object contains information about the project specific - video metadata. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"processingDetails\": - {\n \"description\": \"The processingDetails object encapsulates - information about YouTube's progress in processing the uploaded video file. - The properties in the object identify the current processing status and an - estimate of the time remaining until YouTube finishes processing the video. - This part also indicates whether different types of data or content, such - as file details or thumbnail images, are available for the video. The processingProgress - object is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoProcessingDetails\"\n - \ },\n \"liveStreamingDetails\": {\n \"$ref\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\"\n },\n - \ \"monetizationDetails\": {\n \"description\": \"The monetizationDetails - object encapsulates information about the monetization status of the video.\",\n - \ \"$ref\": \"VideoMonetizationDetails\"\n },\n \"fileDetails\": - {\n \"description\": \"The fileDetails object encapsulates information - about the video file that was uploaded to YouTube, including the file's resolution, - duration, audio and video codecs, stream bitrates, and more. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n - \ },\n \"player\": {\n \"$ref\": \"VideoPlayer\",\n - \ \"description\": \"The player object contains information that you - would use to play the video in an embedded player.\"\n },\n \"suggestions\": - {\n \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoSuggestions\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"annotations\": {\n - \ \"required\": [\n \"youtube.videos.update\"\n ]\n - \ },\n \"description\": \"The ID that YouTube uses to uniquely - identify the video.\",\n \"type\": \"string\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"description\": \"The localizations - object contains localized versions of the basic details about the video, such - as its title and description.\",\n \"additionalProperties\": {\n - \ \"$ref\": \"VideoLocalization\"\n }\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"default\": \"youtube#video\"\n },\n \"statistics\": - {\n \"$ref\": \"VideoStatistics\",\n \"description\": \"The - statistics object contains statistics about the video.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"recordingDetails\": - {\n \"$ref\": \"VideoRecordingDetails\",\n \"description\": - \"The recordingDetails object encapsulates information about the location, - date and address where the video was recorded.\"\n },\n \"status\": - {\n \"$ref\": \"VideoStatus\",\n \"description\": \"The - status object contains information about the video's uploading, processing, - and privacy statuses.\"\n },\n \"ageGating\": {\n \"$ref\": - \"VideoAgeGating\",\n \"description\": \"Age restriction details - related to a video. This data can only be retrieved by the video owner.\"\n - \ }\n },\n \"id\": \"Video\",\n \"type\": \"object\"\n - \ },\n \"MemberListResponse\": {\n \"id\": \"MemberListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Member\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of members - that match the request criteria.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n }\n },\n \"ActivitySnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - an activity, including title, description, thumbnails, activity type and group. - Next ID: 12\",\n \"properties\": {\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"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.\"\n - \ },\n \"channelTitle\": {\n \"description\": \"Channel - title for the channel responsible for this activity\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the video was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"groupId\": {\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"The description - of the resource primarily associated with the activity. @mutable youtube.activities.insert\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The title of the resource primarily - associated with the activity.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of activity that the resource - describes.\",\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n - \ \"like\",\n \"favorite\",\n \"comment\",\n - \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n - \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ],\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel associated with the activity.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ActivitySnippet\"\n - \ },\n \"MonitorStreamInfo\": {\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"HTML code - that embeds a player that plays the monitor stream.\"\n },\n \"enableMonitorStream\": - {\n \"description\": \"This value determines whether the monitor - stream is enabled for the broadcast. If the monitor stream is enabled, then - YouTube will broadcast the event content on a special stream intended only - for the broadcaster's consumption. The broadcaster can use the stream to review - the event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"type\": \"boolean\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"broadcastStreamDelayMs\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"If you have set the enableMonitorStream - property to true, then this property determines the length of the live broadcast - delay.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"MonitorStreamInfo\",\n \"description\": \"Settings and Info of the - monitor stream\"\n },\n \"VideoLiveStreamingDetails\": {\n \"description\": - \"Details about the live streaming metadata.\",\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"actualStartTime\": - {\n \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"activeLiveChatId\": - {\n \"description\": \"The ID of the currently active live chat attached - to this video. This field is filled only if the video is a currently live - broadcast that has live chat. Once the broadcast transitions to complete this - field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\",\n \"type\": \"string\"\n - \ },\n \"concurrentViewers\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The number of - viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\"\n },\n \"scheduledStartTime\": - {\n \"description\": \"The time that the broadcast is scheduled to - begin.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"actualEndTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The time - that the broadcast actually ended. This value will not be available until - the broadcast is over.\"\n },\n \"scheduledEndTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The time that the broadcast is - scheduled to end. If the value is empty or the property is not present, then - the broadcast is scheduled to contiue indefinitely.\",\n \"type\": - \"string\"\n }\n }\n },\n \"CaptionSnippet\": {\n \"properties\": - {\n \"status\": {\n \"type\": \"string\",\n \"enum\": - [\n \"serving\",\n \"syncing\",\n \"failed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The caption track's - status.\"\n },\n \"audioTrackType\": {\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of audio track associated with the caption track.\"\n },\n - \ \"language\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The language of the caption track. The property - value is a BCP-47 language tag.\",\n \"type\": \"string\"\n },\n - \ \"isAutoSynced\": {\n \"description\": \"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.\",\n - \ \"type\": \"boolean\"\n },\n \"isDraft\": {\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n },\n - \ \"isEasyReader\": {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video associated with the caption track. @mutable youtube.captions.insert\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"lastUpdated\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the caption - track was last updated.\",\n \"type\": \"string\"\n },\n \"isCC\": - {\n \"description\": \"Indicates whether the track contains closed - captions for the deaf and hard of hearing. The default value is false.\",\n - \ \"type\": \"boolean\"\n },\n \"failureReason\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\",\n \"enum\": - [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ]\n },\n \"trackKind\": {\n \"description\": - \"The caption track's type.\",\n \"enum\": [\n \"standard\",\n - \ \"ASR\",\n \"forced\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"name\": {\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"isLarge\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the caption track - uses large text for the vision-impaired. The default value is false.\"\n }\n - \ },\n \"id\": \"CaptionSnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a caption track, such as its - language and name.\"\n },\n \"Activity\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the activity.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ActivityContentDetails\",\n \"description\": \"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.\"\n },\n \"kind\": - {\n \"default\": \"youtube#activity\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#activity\\\".\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource\"\n },\n \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the activity, including the activity's type and group ID.\"\n }\n },\n - \ \"id\": \"Activity\",\n \"description\": \"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.\"\n },\n \"LiveStreamStatus\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamStatus\",\n \"description\": - \"Brief description of the live stream status.\",\n \"properties\": {\n - \ \"healthStatus\": {\n \"$ref\": \"LiveStreamHealthStatus\",\n - \ \"description\": \"The health status of the stream.\"\n },\n - \ \"streamStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n }\n },\n \"CdnSettings\": - {\n \"properties\": {\n \"frameRate\": {\n \"type\": - \"string\",\n \"description\": \"The frame rate of the inbound video - data.\",\n \"enum\": [\n \"30fps\",\n \"60fps\",\n - \ \"variable\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"format\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The format of the - video stream that you are sending to Youtube. \",\n \"type\": \"string\"\n - \ },\n \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n - \ \"description\": \"The ingestionInfo object contains information - that YouTube provides that you need to transmit your RTMP or HTTP stream to - YouTube.\"\n },\n \"ingestionType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \" The method or protocol used to - transmit the video stream.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"enum\": [\n \"rtmp\",\n - \ \"dash\",\n \"webrtc\",\n \"hls\"\n ],\n - \ \"type\": \"string\"\n },\n \"resolution\": {\n \"type\": - \"string\",\n \"enum\": [\n \"240p\",\n \"360p\",\n - \ \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\",\n - \ \"2160p\",\n \"variable\"\n ],\n \"description\": - \"The resolution of the inbound video data.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"description\": \"Brief description - of the live stream cdn settings.\",\n \"id\": \"CdnSettings\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsUpload\": {\n \"id\": - \"ActivityContentDetailsUpload\",\n \"type\": \"object\",\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\"\n }\n - \ },\n \"description\": \"Information about the uploaded video.\"\n - \ },\n \"Comment\": {\n \"description\": \"A *comment* represents - a single YouTube comment.\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#comment\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the comment.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Comment\"\n - \ },\n \"MemberSnippet\": {\n \"type\": \"object\",\n \"id\": - \"MemberSnippet\",\n \"properties\": {\n \"membershipsDetails\": - {\n \"$ref\": \"MembershipsDetails\",\n \"description\": - \"Details about the user's membership.\"\n },\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering memberships.\"\n },\n \"memberDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the member.\"\n }\n }\n },\n \"PlaylistItemSnippet\": - {\n \"id\": \"PlaylistItemSnippet\",\n \"description\": \"Basic - details about a playlist, including title, description and thumbnails. Basic - details of a YouTube Playlist item provided by the author. Next ID: 15\",\n - \ \"properties\": {\n \"description\": {\n \"description\": - \"The item's description.\",\n \"type\": \"string\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\"\n },\n - \ \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the playlist item. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The item's title.\"\n },\n \"videoOwnerChannelTitle\": {\n - \ \"description\": \"Channel title for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the item was added to the playlist.\",\n \"format\": - \"date-time\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\"\n },\n \"videoOwnerChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel id - for the channel this video belongs to.\"\n },\n \"resourceId\": - {\n \"description\": \"The id object contains information that can - be used to uniquely identify the resource that is included in the playlist - as the playlist item.\",\n \"$ref\": \"ResourceId\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"position\": {\n \"description\": \"The order - in which the item appears in the playlist. The value uses a zero-based index, - so the first item has a position of 0, the second item has a position of 1, - and so forth.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the user that added the item to the playlist.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatMessage\": {\n \"id\": \"LiveChatMessage\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the message.\"\n },\n \"authorDetails\": {\n \"$ref\": - \"LiveChatMessageAuthorDetails\",\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatMessage\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"A *liveChatMessage* resource represents a chat message in a YouTube Live - Chat.\"\n },\n \"I18nRegionListResponse\": {\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"default\": \"youtube#i18nRegionListResponse\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of regions where YouTube is available. - In this map, the i18n region ID is the map key, and its value is the corresponding - i18nRegion resource.\",\n \"items\": {\n \"$ref\": \"I18nRegion\"\n - \ }\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"I18nRegionListResponse\"\n - \ },\n \"AbuseType\": {\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"AbuseType\",\n - \ \"type\": \"object\"\n },\n \"ChannelConversionPings\": {\n \"type\": - \"object\",\n \"description\": \"The conversionPings object encapsulates - information about conversion pings that need to be respected by the channel.\",\n - \ \"id\": \"ChannelConversionPings\",\n \"properties\": {\n \"pings\": - {\n \"description\": \"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.\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n },\n \"type\": \"array\"\n }\n - \ }\n },\n \"WatchSettings\": {\n \"type\": \"object\",\n \"properties\": - {\n \"backgroundColor\": {\n \"description\": \"The text color - for the video watch page's branded area.\",\n \"type\": \"string\"\n - \ },\n \"textColor\": {\n \"description\": \"The background - color for the video watch page's branded area.\",\n \"type\": \"string\"\n - \ },\n \"featuredPlaylistId\": {\n \"description\": - \"An ID that uniquely identifies a playlist that displays next to the video - player.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Branding properties for the watch. All deprecated.\",\n \"id\": \"WatchSettings\"\n - \ },\n \"VideoCategoryListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoCategoryListResponse\",\n \"properties\": {\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoCategory\"\n - \ },\n \"description\": \"A list of video categories that - can be associated with YouTube videos. In this map, the video category ID - is the map key, and its value is the corresponding videoCategory resource.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"default\": \"youtube#videoCategoryListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n }\n },\n \"ResourceId\": - {\n \"description\": \"A resource id is a generic reference that points - to another YouTube resource.\",\n \"id\": \"ResourceId\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"The type of the API resource.\",\n \"type\": \"string\"\n },\n - \ \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a video. This property - is only present if the resourceId.kind value is youtube#video.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\"\n }\n }\n },\n \"VideoAgeGating\": - {\n \"type\": \"object\",\n \"id\": \"VideoAgeGating\",\n \"properties\": - {\n \"restricted\": {\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\",\n \"type\": - \"boolean\"\n },\n \"alcoholContent\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether or not the video - has alcoholic beverage content. Only users of legal purchasing age in a particular - country, as identified by ICAP, can view the content.\"\n },\n \"videoGameRating\": - {\n \"description\": \"Video game rating, if any.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ]\n }\n }\n },\n \"ThirdPartyLinkSnippet\": - {\n \"id\": \"ThirdPartyLinkSnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic information about a third party account link, - including its type and type-specific information.\",\n \"properties\": - {\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel with - a store on a merchandising platform in order to enable retail commerce capabilities - for that channel on YouTube.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Type of the link named after the entities that - are being linked.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ]\n },\n \"channelToStoreLink\": - {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\"\n }\n }\n },\n \"VideoCategory\": {\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n \"default\": - \"youtube#videoCategory\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video category.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"VideoCategory\",\n - \ \"description\": \"A *videoCategory* resource identifies a category - that has been or could be associated with uploaded videos.\"\n },\n \"LiveChatModerator\": - {\n \"id\": \"LiveChatModerator\",\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"LiveChatModeratorSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the moderator.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the moderator.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatModerator\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n - \ }\n },\n \"description\": \"A *liveChatModerator* resource - represents a moderator for a YouTube live chat. A chat moderator has the ability - to ban/unban users from a chat, remove message, etc.\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"Details about a resource which is being promoted.\",\n - \ \"properties\": {\n \"customCtaButtonText\": {\n \"type\": - \"string\",\n \"description\": \"The custom call-to-action button - text. If specified, it will override the default button text for the cta_type.\"\n - \ },\n \"impressionUrl\": {\n \"description\": \"The - list of impression URLs. The client should ping all of these URLs to indicate - that the user was shown this promoted item.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"adTag\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should fetch to request a promoted item.\"\n },\n \"destinationUrl\": - {\n \"description\": \"The URL the client should direct the user - to, if the user chooses to visit the advertiser's website.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\"\n },\n \"ctaType\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of call-to-action, a message - to the user indicating action that can be taken.\",\n \"enum\": [\n - \ \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ]\n },\n \"creativeViewUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\",\n \"type\": \"string\"\n },\n \"forecastingUrl\": - {\n \"description\": \"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.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"descriptionText\": - {\n \"type\": \"string\",\n \"description\": \"The text - description to accompany the promoted item.\"\n },\n \"clickTrackingUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user clicked through on this promoted - item.\"\n }\n }\n },\n \"LiveChatModeratorListResponse\": - {\n \"id\": \"LiveChatModeratorListResponse\",\n \"properties\": - {\n \"pageInfo\": {\n \"description\": \"General pagination - information.\",\n \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatModeratorListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"description\": - \"A list of moderators that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n - \ }\n }\n },\n \"type\": \"object\"\n },\n \"AbuseReport\": - {\n \"id\": \"AbuseReport\",\n \"type\": \"object\",\n \"properties\": - {\n \"subject\": {\n \"$ref\": \"Entity\"\n },\n \"description\": - {\n \"type\": \"string\"\n },\n \"abuseTypes\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"AbuseType\"\n }\n },\n \"relatedEntities\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n - \ }\n }\n }\n },\n \"ActivityContentDetailsLike\": - {\n \"id\": \"ActivityContentDetailsLike\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the rated resource.\"\n }\n },\n \"description\": - \"Information about a resource that received a positive (like) rating.\"\n - \ },\n \"Member\": {\n \"id\": \"Member\",\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the member.\",\n \"$ref\": - \"MemberSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#member\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelAuditDetails\": {\n \"type\": - \"object\",\n \"description\": \"The auditDetails object encapsulates - channel data that is relevant for YouTube Partners during the audit process.\",\n - \ \"properties\": {\n \"contentIdClaimsGoodStanding\": {\n \"description\": - \"Whether or not the channel has any unresolved claims.\",\n \"type\": - \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": {\n \"description\": - \"Whether or not the channel has any copyright strikes.\",\n \"type\": - \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether or - not the channel respects the community guidelines.\"\n }\n },\n - \ \"id\": \"ChannelAuditDetails\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"properties\": {\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"amountMicros\": {\n \"description\": \"The - amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"tier\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\"\n },\n - \ \"userComment\": {\n \"description\": \"The comment added - by the user to this Super Chat event.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatSuperChatDetails\"\n - \ },\n \"LiveStream\": {\n \"description\": \"A live stream describes - a live ingestion point.\",\n \"id\": \"LiveStream\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n - \ \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\"\n },\n - \ \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n \"description\": - \"The status object contains information about live stream's status.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveStream\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the stream.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"cdn\": {\n \"$ref\": \"CdnSettings\",\n - \ \"description\": \"The cdn object defines the live stream's content - delivery network (CDN) settings. These settings provide details about the - manner in which you stream your content to YouTube.\"\n }\n }\n - \ },\n \"Playlist\": {\n \"description\": \"A *playlist* resource - represents a YouTube playlist. A playlist is a collection of videos that can - be viewed sequentially and shared with other users. A playlist can contain - up to 200 videos, and YouTube does not limit the number of playlists that - each user creates. By default, playlists are publicly visible to other users, - but playlists can be public or private. YouTube also uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n - \ \"id\": \"Playlist\",\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\"\n },\n \"player\": {\n \"$ref\": - \"PlaylistPlayer\",\n \"description\": \"The player object contains - information that you would use to play the playlist in an embedded player.\"\n - \ },\n \"localizations\": {\n \"description\": \"Localizations - for different languages\",\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n }\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the playlist.\",\n \"type\": \"string\"\n },\n - \ \"status\": {\n \"$ref\": \"PlaylistStatus\",\n \"description\": - \"The status object contains status information for the playlist.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"default\": \"youtube#playlist\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsSubscription\": - {\n \"description\": \"Information about a channel that a user subscribed - to.\",\n \"id\": \"ActivityContentDetailsSubscription\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"PageInfo\": {\n \"id\": \"PageInfo\",\n \"type\": - \"object\",\n \"description\": \"Paging details for lists of resources, - including total number of items available and number of resources returned - in a single page.\",\n \"properties\": {\n \"resultsPerPage\": - {\n \"description\": \"The number of results included in the API - response.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ },\n \"totalResults\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"description\": \"The total number - of results in the result set.\"\n }\n }\n },\n \"LiveStreamSnippet\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamSnippet\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The stream's description. The value cannot be longer than 10000 characters.\"\n - \ },\n \"isDefaultStream\": {\n \"type\": \"boolean\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the stream was created.\"\n },\n \"title\": {\n \"description\": - \"The stream's title. The value must be between 1 and 128 characters long.\",\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that is transmitting the stream.\"\n }\n }\n - \ },\n \"I18nLanguageListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"I18nLanguageListResponse\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#i18nLanguageListResponse\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"items\": {\n \"description\": - \"A list of supported i18n languages. In this map, the i18n language ID is - the map key, and its value is the corresponding i18nLanguage resource.\",\n - \ \"items\": {\n \"$ref\": \"I18nLanguage\"\n },\n - \ \"type\": \"array\"\n }\n }\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viewer is a member. This matches the - `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated - membership gifting message. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n },\n \"gifterChannelId\": {\n - \ \"description\": \"The ID of the user that made the membership gifting - purchase. This matches the `snippet.authorChannelId` of the associated membership - gifting message.\",\n \"type\": \"string\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ }\n },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"type\": \"object\"\n },\n \"ChannelToStoreLinkDetails\": {\n - \ \"properties\": {\n \"storeUrl\": {\n \"description\": - \"Landing page of the store.\",\n \"type\": \"string\"\n },\n - \ \"storeName\": {\n \"description\": \"Name of the store.\",\n - \ \"type\": \"string\"\n },\n \"merchantId\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"Google - Merchant Center id of the store.\"\n }\n },\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Information specific - to a store on a merchandising platform linked to a YouTube channel.\"\n },\n - \ \"ActivityContentDetailsBulletin\": {\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"Details about a channel bulletin post.\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": - \"ResourceId\"\n }\n }\n },\n \"LiveBroadcast\": {\n \"description\": - \"A *liveBroadcast* resource represents an event that will be streamed, via - live video, on YouTube.\",\n \"type\": \"object\",\n \"id\": \"LiveBroadcast\",\n - \ \"properties\": {\n \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n - \ \"description\": \"The status object contains information about - the event's status.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"LiveBroadcastContentDetails\",\n \"description\": \"The contentDetails - object contains information about the event's video content, such as whether - the content can be shown in an embedded video player or if it will be archived - and therefore available for viewing after the event has concluded.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the broadcast.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"snippet\": {\n \"$ref\": - \"LiveBroadcastSnippet\",\n \"description\": \"The snippet object - contains basic details about the event, including its title, description, - start time, and end time.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveBroadcast\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n - \ }\n }\n },\n \"LiveChatMessageDeletedDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"Subscription\": {\n \"id\": \"Subscription\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"subscriberSnippet\": {\n - \ \"description\": \"The subscriberSnippet object contains basic details - about the subscriber.\",\n \"$ref\": \"SubscriptionSubscriberSnippet\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"SubscriptionContentDetails\",\n - \ \"description\": \"The contentDetails object contains basic statistics - about the subscription.\"\n },\n \"snippet\": {\n \"$ref\": - \"SubscriptionSnippet\",\n \"description\": \"The snippet object - contains basic details about the subscription, including its title and the - channel that the user subscribed to.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#subscription\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\"\n - \ }\n },\n \"description\": \"A *subscription* resource contains - information about a YouTube user subscription. A subscription notifies a user - when new videos are added to a channel or when another user takes one of several - actions on YouTube, such as uploading a video, rating a video, or commenting - on a video.\",\n \"type\": \"object\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\",\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ },\n \"label\": {\n \"description\": \"The localized - label for this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"MembershipsLevelListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n },\n - \ \"description\": \"A list of pricing levels offered by a creator - to the fans.\",\n \"type\": \"array\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevelListResponse\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": - \"MembershipsLevelListResponse\"\n },\n \"PlaylistListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"description\": \"A list of playlists that - match the request criteria\",\n \"items\": {\n \"$ref\": - \"Playlist\"\n },\n \"type\": \"array\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#playlistListResponse\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"id\": \"PlaylistListResponse\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"description\": \"Information about a video stream.\",\n \"properties\": - {\n \"aspectRatio\": {\n \"description\": \"The video content's - display aspect ratio, which specifies the aspect ratio in which the video - should be displayed.\",\n \"format\": \"double\",\n \"type\": - \"number\"\n },\n \"vendor\": {\n \"type\": \"string\",\n - \ \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\"\n },\n \"rotation\": - {\n \"description\": \"The amount that YouTube needs to rotate the - original source content to properly display the video.\",\n \"enum\": - [\n \"none\",\n \"clockwise\",\n \"upsideDown\",\n - \ \"counterClockwise\",\n \"other\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"widthPixels\": {\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\",\n \"type\": - \"integer\"\n },\n \"frameRateFps\": {\n \"type\": - \"number\",\n \"description\": \"The video stream's frame rate, in - frames per second.\",\n \"format\": \"double\"\n },\n \"codec\": - {\n \"description\": \"The video codec that the stream uses.\",\n - \ \"type\": \"string\"\n },\n \"bitrateBps\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The video stream's bitrate, in bits per second.\"\n },\n \"heightPixels\": - {\n \"description\": \"The encoded video content's height in pixels.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n - \ },\n \"id\": \"VideoFileDetailsVideoStream\",\n \"type\": - \"object\"\n },\n \"TestItem\": {\n \"properties\": {\n \"gaia\": - {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"TestItem\",\n \"type\": \"object\"\n },\n - \ \"Caption\": {\n \"type\": \"object\",\n \"properties\": {\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#caption\\\".\",\n \"default\": - \"youtube#caption\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the caption.\",\n \"$ref\": - \"CaptionSnippet\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the caption track.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n }\n - \ }\n },\n \"description\": \"A *caption* resource represents - a YouTube caption track. A caption track is associated with exactly one YouTube - video.\",\n \"id\": \"Caption\"\n },\n \"PlaylistItemContentDetails\": - {\n \"id\": \"PlaylistItemContentDetails\",\n \"properties\": {\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify a video. To retrieve the video resource, set the id query - parameter to this value in your API request.\",\n \"type\": \"string\"\n - \ },\n \"startAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\"\n },\n \"endAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\",\n - \ \"type\": \"string\"\n },\n \"note\": {\n \"type\": - \"string\",\n \"description\": \"A user-generated note for this item.\"\n - \ },\n \"videoPublishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the video was published - to YouTube.\",\n \"format\": \"date-time\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ContentRating\": {\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\",\n \"id\": \"ContentRating\",\n \"properties\": - {\n \"fpbRatingReasons\": {\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"South - Africa rating content descriptors.\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ]\n },\n \"description\": \"Reasons that explain - why the video received its FPB (South Africa) rating.\",\n \"type\": - \"array\"\n },\n \"mdaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\",\n \"enum\": [\n - \ \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n - \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n - \ \"mdaR21\",\n \"mdaUnrated\"\n ]\n },\n - \ \"moctwRating\": {\n \"description\": \"The video's rating - from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ],\n \"enum\": - [\n \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n - \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n - \ \"moctwR12\",\n \"moctwR15\"\n ]\n },\n - \ \"russiaRating\": {\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's National - Film Registry of the Russian Federation (MKRF - Russia) rating.\",\n \"type\": - \"string\"\n },\n \"nkclvRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n - \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n - \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\"\n - \ },\n \"nfrcRating\": {\n \"description\": \"The video's - rating from the Bulgarian National Film Center.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n - \ \"\"\n ],\n \"enum\": [\n \"nfrcUnspecified\",\n - \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n - \ \"nfrcX\",\n \"nfrcUnrated\"\n ]\n },\n - \ \"oflcRating\": {\n \"enum\": [\n \"oflcUnspecified\",\n - \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n - \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n - \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n - \ \"oflcRp16\",\n \"oflcRp18\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\"\n },\n \"kmrbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ],\n \"description\": \"The video's Korea Media Rating - Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. The KMRB - rates videos in South Korea.\",\n \"type\": \"string\"\n },\n - \ \"incaaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"ATP (Apta para todo publico)\",\n \"13 (Solo apta - para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para mayores de - 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 a\xF1os)\",\n - \ \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"description\": \"The video's INCAA - (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ]\n },\n \"cscfRating\": {\n \"enum\": [\n - \ \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n - \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Luxembourg's Commission de surveillance de la classification des - films (CSCF).\"\n },\n \"cncRating\": {\n \"enum\": - [\n \"cncUnspecified\",\n \"cncT\",\n \"cnc10\",\n - \ \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n \"cncE\",\n - \ \"cncInterdiction\",\n \"cncUnrated\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Rating system - in France - Commission de classification cinematographique\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ]\n },\n \"bmukkRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ],\n \"description\": \"The - video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ]\n },\n \"resorteviolenciaRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"B\",\n \"C\",\n \"D\",\n - \ \"E\",\n \"\"\n ],\n \"enum\": [\n - \ \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"description\": \"The video's rating in Venezuela.\"\n - \ },\n \"skfilmRating\": {\n \"description\": \"The - video's rating in Slovakia.\",\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"chfilmRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Switzerland.\",\n \"enum\": - [\n \"chfilmUnspecified\",\n \"chfilm0\",\n \"chfilm6\",\n - \ \"chfilm12\",\n \"chfilm16\",\n \"chfilm18\",\n - \ \"chfilmUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"medietilsynetRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n - \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Medietilsynet, the Norwegian Media Authority.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ]\n },\n \"nbcRating\": {\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12+\",\n \"15+\",\n - \ \"18+\",\n \"18+R\",\n \"PU\",\n \"\"\n - \ ],\n \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ]\n },\n \"mpaatRating\": - {\n \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ],\n \"type\": \"string\",\n \"description\": - \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ]\n },\n \"djctqRating\": {\n - \ \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\"\n },\n \"cicfRating\": - {\n \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n - \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from the Commission de Contr\xF4le des Films (Belgium).\"\n },\n - \ \"nfvcbRating\": {\n \"description\": \"The video's rating - from Nigeria's National Film and Video Censors Board.\",\n \"enum\": - [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n \"nfvcbPg\",\n - \ \"nfvcb12\",\n \"nfvcb12a\",\n \"nfvcb15\",\n - \ \"nfvcb18\",\n \"nfvcbRe\",\n \"nfvcbUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"18\",\n \"RE\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"nmcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The National Media Council ratings - system for United Arab Emirates.\"\n },\n \"cccRating\": {\n - \ \"type\": \"string\",\n \"description\": \"The video's - Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ]\n },\n - \ \"cbfcRating\": {\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"mpaaRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"NC-17\",\n \"! X\",\n \"\"\n ],\n - \ \"description\": \"The video's Motion Picture Association of America - (MPAA) rating.\",\n \"enum\": [\n \"mpaaUnspecified\",\n - \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n - \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n - \ \"mpaaUnrated\"\n ]\n },\n \"kijkwijzerRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating - from the Nederlands Instituut voor de Classificatie van Audiovisuele Media - (Netherlands).\"\n },\n \"catvRating\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"C\",\n - \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n - \ \"18+\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n - \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n - \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n - \ \"catvE\"\n ]\n },\n \"ytRating\": {\n - \ \"description\": \"A rating that YouTube uses to identify age-restricted - content.\",\n \"type\": \"string\",\n \"enum\": [\n \"ytUnspecified\",\n - \ \"ytAgeRestricted\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"ecbmctRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"description\": \"Rating system in Turkey - Evaluation - and Classification Board of the Ministry of Culture and Tourism\"\n },\n - \ \"menaMpaaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ],\n \"description\": \"The rating system for MENA countries, - a clone of MPAA. It is needed to prevent titles go live w/o additional QC - check, since some of them can be inappropriate for the countries at all. See - b/33408548 for more details.\",\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"fmocRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ],\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\",\n \"enum\": - [\n \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"mccaaRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Malta's Film Age-Classification - Board.\",\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n - \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n - \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n - \ \"mccaa18\",\n \"mccaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ]\n },\n - \ \"nbcplRating\": {\n \"description\": \"The video's rating - in Poland.\",\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"cnaRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n - \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"description\": \"The - video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"icaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"description\": \"The video's Instituto - de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ]\n },\n - \ \"fcbmRating\": {\n \"description\": \"The video's rating - from Malaysia's Film Censorship Board.\",\n \"enum\": [\n \"fcbmUnspecified\",\n - \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n - \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n - \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"eirinRating\": - {\n \"description\": \"The video's Eirin (\u6620\u502B) rating. Eirin - is the Japanese rating system.\",\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG-12\",\n \"R15+\",\n \"R18+\",\n - \ \"\"\n ]\n },\n \"kfcbRating\": {\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"enum\": - [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"tvpgRating\": - {\n \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n - \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n - \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"description\": \"The - video's TV Parental Guidelines (TVPG) rating.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ]\n },\n \"mtrcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Movie - and Television Review and Classification Board (Philippines).\",\n \"type\": - \"string\",\n \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ]\n },\n \"ifcoRating\": {\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n - \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n - \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n - \ \"ifco18\",\n \"ifcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"acbRating\": - {\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"mekuRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"description\": - \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti - (National Audiovisual Institute).\",\n \"type\": \"string\"\n },\n - \ \"pefilmRating\": {\n \"description\": \"The video's rating - in Peru.\",\n \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n - \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n - \ \"pefilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"mccypRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"lsfRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"description\": - \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"enum\": - [\n \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"czfilmRating\": - {\n \"description\": \"The video's rating in the Czech Republic.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"12\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ]\n },\n - \ \"fcoRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"description\": - \"The video's rating from Hong Kong's Office for Film, Newspaper and Article - Administration.\"\n },\n \"rteRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"enum\": [\n - \ \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\"\n - \ },\n \"fpbRating\": {\n \"description\": \"The video's - rating from South Africa's Film and Publication Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ]\n },\n - \ \"mibacRating\": {\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\"\n },\n \"grfilmRating\": {\n \"description\": - \"The video's rating in Greece.\",\n \"type\": \"string\",\n \"enum\": - [\n \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n - \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n - \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ]\n - \ },\n \"rtcRating\": {\n \"description\": \"The video's - General Directorate of Radio, Television and Cinematography (Mexico) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n - \ \"D\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ]\n },\n - \ \"egfilmRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Egypt.\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ]\n },\n \"mocRating\": - {\n \"description\": \"The video's Ministerio de Cultura (Colombia) - rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ]\n },\n \"bfvcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ],\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Thailand's - Board of Film and Video Censors.\"\n },\n \"chvrsRating\": {\n - \ \"enum\": [\n \"chvrsUnspecified\",\n \"chvrsG\",\n - \ \"chvrsPg\",\n \"chvrs14a\",\n \"chvrs18a\",\n - \ \"chvrsR\",\n \"chvrsE\",\n \"chvrsUnrated\"\n - \ ],\n \"description\": \"The video's Canadian Home Video - Rating System (CHVRS) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ]\n },\n \"fskRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle - der Filmwirtschaft (FSK - Germany) rating.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ]\n },\n \"anatelRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n - \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n - \ ]\n },\n \"smsaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"enum\": [\n - \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\"\n - \ },\n \"mcstRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - system for Vietnam - MCST\",\n \"type\": \"string\",\n \"enum\": - [\n \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ]\n },\n \"agcomRating\": {\n \"enum\": [\n - \ \"agcomUnspecified\",\n \"agcomT\",\n \"agcomVm14\",\n - \ \"agcomVm18\",\n \"agcomUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Italy's Autorit\xE0 per - le Garanzie nelle Comunicazioni (AGCOM).\"\n },\n \"rcnofRating\": - {\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"djctqRatingReasons\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\",\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ]\n },\n \"description\": \"Reasons - that explain why the video received its DJCQT (Brazil) rating.\"\n },\n - \ \"ilfilmRating\": {\n \"description\": \"The video's rating - in Israel.\",\n \"type\": \"string\",\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"catvfrRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"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.\",\n \"type\": \"string\",\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ]\n },\n \"smaisRating\": - {\n \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in Iceland.\",\n \"type\": \"string\"\n },\n - \ \"bbfcRating\": {\n \"description\": \"The video's British - Board of Film Classification (BBFC) rating.\",\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"eefilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Pere\",\n \"L\",\n \"MS-6\",\n \"K-6\",\n - \ \"MS-12\",\n \"K-12\",\n \"K-14\",\n \"K-16\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Estonia.\",\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ]\n },\n \"cceRating\": {\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"4\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\",\n \"14\"\n ],\n - \ \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ],\n \"type\": \"string\"\n },\n \"csaRating\": - {\n \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n - \ \"description\": \"The video's rating from France's Conseil sup\xE9rieur - de l\u2019audiovisuel, which rates broadcast content.\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LevelDetails\": {\n \"type\": - \"object\",\n \"id\": \"LevelDetails\",\n \"properties\": {\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - that should be used when referring to this level.\"\n }\n }\n - \ },\n \"ChannelSettings\": {\n \"description\": \"Branding properties - for the channel view.\",\n \"type\": \"object\",\n \"properties\": - {\n \"moderateComments\": {\n \"description\": \"Whether user-submitted - comments left on the channel page need to be approved by the channel owner - to be publicly visible.\",\n \"type\": \"boolean\"\n },\n - \ \"keywords\": {\n \"type\": \"string\",\n \"description\": - \"Lists keywords associated with the channel, comma-separated.\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\"\n },\n - \ \"unsubscribedTrailer\": {\n \"description\": \"The trailer - of the channel, for users that are not subscribers.\",\n \"type\": - \"string\"\n },\n \"featuredChannelsUrls\": {\n \"description\": - \"The list of featured channels.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"country\": - {\n \"type\": \"string\",\n \"description\": \"The country - of the channel.\"\n },\n \"defaultTab\": {\n \"type\": - \"string\",\n \"description\": \"Which content tab users should see - when viewing the channel.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"type\": \"string\",\n \"description\": \"The ID for - a Google Analytics account to track and measure traffic to the channels.\"\n - \ },\n \"showRelatedChannels\": {\n \"description\": - \"Whether related channels should be proposed.\",\n \"type\": \"boolean\"\n - \ },\n \"showBrowseView\": {\n \"description\": \"Whether - the tab to browse the videos should be displayed.\",\n \"type\": - \"boolean\"\n },\n \"profileColor\": {\n \"description\": - \"A prominent color that can be rendered on this channel page.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"Specifies the channel description.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the channel title.\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ChannelSettings\"\n - \ },\n \"ThirdPartyLink\": {\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"ThirdPartyLinkSnippet\",\n \"description\": \"The snippet object - contains basic details about the third- party account link.\"\n },\n - \ \"linkingToken\": {\n \"description\": \"The linking_token - identifies a YouTube account and channel with which the third party account - is linked.\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"$ref\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The status object contains information about the status of the link.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#thirdPartyLink\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLink\\\".\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A *third party account link* - resource represents a link between a YouTube account or a channel and an account - on a third-party service.\",\n \"id\": \"ThirdPartyLink\"\n }\n },\n - \ \"batchPath\": \"batch\",\n \"fullyEncodeReservedExpansion\": true,\n \"version\": - \"v3\",\n \"baseUrl\": \"https://youtube.googleapis.com/\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:28 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCzaqqlriSjVyc795m86GVyg&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"nk7NfOZvESbSh3xezEgz4L79iMY\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"nJeBQvrYymVztYe0yVpvKGwaSbs\",\n \"id\": \"UCzaqqlriSjVyc795m86GVyg\",\n - \ \"snippet\": {\n \"title\": \"Yulia Latynina\",\n \"description\": - \"\u041E\u0444\u0438\u0446\u0438\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u0430\u043D\u0430\u043B - \u042E\u043B\u0438\u0438 \u041B\u0430\u0442\u044B\u043D\u0438\u043D\u043E\u0439 - \\n\u041E \u0431\u043E\u0440\u044C\u0431\u0435 \u0431\u0443\u043B\u044C\u0434\u043E\u0433\u043E\u0432 - \u043F\u043E\u0434 \u043A\u043E\u0432\u0440\u043E\u043C \u0437\u0430 \u043E\u0442\u043A\u0430\u0442\u044B - \u0438 \u0431\u043E\u0440\u044C\u0431\u0435 \u0433\u0440\u0430\u0436\u0434\u0430\u043D - \u0437\u0430 \u043F\u0440\u0430\u0432\u0430 \u0438 \u0441\u0432\u043E\u0431\u043E\u0434\u044B\\nhttp://www.latynina.tv\\nt.me/Ylatynina\\n\u0414\u0430\u043D\u043D\u044B\u043C - \u043A\u0430\u043D\u0430\u043B\u043E\u043C \u0437\u0430\u043D\u0438\u043C\u0430\u0435\u0442\u0441\u044F: - \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u044F LATYNINAORG - MT\xDC \\n\u0412 \u043B\u0438\u0446\u0435 \u042E\u043B\u0438\u0438 \u041B\u0430\u0442\u044B\u043D\u0438\u043D\u043E\u0439 - \u0432 \u0440\u043E\u043B\u0438 \u042E\u043B\u0438\u0438 \u041B\u0430\u0442\u044B\u043D\u0438\u043D\u043E\u0439, - \ \\n\u0438 \u0414\u0430\u0440\u044C\u044F \u0412\u043E\u0440\u043E\u043D\u0446\u043E\u0432\u0430 - \u0432 \u0440\u043E\u043B\u0438 \u0448\u0435\u0444 \u0440\u0435\u0434\u0430\u043A\u0442\u043E\u0440\u0430. - \ \\n\u041D\u0430\u043C \u043C\u043E\u0436\u043D\u043E \u043F\u043E\u0436\u0435\u0440\u0442\u0432\u043E\u0432\u0430\u0442\u044C - \u0434\u0435\u043D\u044C\u0433\u0438 \u043F\u0435\u0440\u0435\u0432\u043E\u0434\u043E\u043C - \u043D\u0430 \u0441\u0447\u0435\u0442 \u043D\u0430\u0448\u0435\u0439 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438\\nLATYNINAORG - MT\xDC \\nIBAN EE421010220274614225 \\nSWIFT EEUHEE2X\\nhttps://paypal.me/latynina?locale.x=ru_RU\\n - ko-fi https://ko-fi.com/latynina1\\n Patreon https://www.patreon.com/join/3340678/checkout\\nBitcoin - Address - bc1qltgykx93plrpp32ygktl4srzz4z5sa467ppafq\\nbitcoincash:qq2uhptcx7qqxvtpgqs2spca6urgwuckxsc79vd39j\\nAlgo - - LXHCP5VLSULJTYNK3QXBXYA3YQ5RT7G3UKGKY4IDFAYGIKTDIO3SONPNNM\\n\\n\u041D\u0435 - \u0437\u0430\u0431\u044B\u0432\u0430\u0439\u0442\u0435, \u043F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, - \u043F\u0440\u043E \u043A\u043D\u043E\u043F\u043E\u0447\u043A\u0443 \\\"\u043F\u043E\u0436\u0435\u0440\u0442\u0432\u043E\u0432\u0430\u0442\u044C\\\". - \u041E\u043D\u0430 \u0441\u0432\u044F\u0437\u0430\u043D\u0430 \u0441 Paypal - \u0438 \u0440\u0430\u0441\u043F\u043E\u043B\u043E\u0436\u0435\u043D\u0430 - \u043D\u0430 \u0433\u043B\u0430\u0432\u043D\u043E\u0439 \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0435 - youtube-\u043A\u0430\u043D\u0430\u043B\u0430 \u0432 \u043F\u0440\u0430\u0432\u043E\u043C - \u0432\u0435\u0440\u0445\u043D\u0435\u043C \u0443\u0433\u043B\u0443 \u0438 - \u043D\u0430 \u0441\u0430\u043C\u043E\u043C \u0441\u0430\u0439\u0442\u0435 - latynina.tv \u0441\u0440\u0430\u0437\u0443 \u0432 \u043B\u0435\u0432\u043E\u043C - \u0432\u0435\u0440\u0445\u043D\u0435\u043C \u0443\u0433\u043B\u0443. \u0415\u0441\u043B\u0438 - \u0432\u0430\u043C \u043D\u0440\u0430\u0432\u0438\u0442\u0441\u044F \u0441\u043C\u043E\u0442\u0440\u0435\u0442\u044C - \u043D\u0430\u0441 - \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0442\u0435 - \u043D\u0430\u0441.\",\n \"customUrl\": \"@yulialatynina71\",\n \"publishedAt\": - \"2018-03-23T14:52:34Z\",\n \"thumbnails\": {\n \"default\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJUyvmAeTwi7BPMY63GSBff6gkoyf1GVF-dPFwoeBg=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJUyvmAeTwi7BPMY63GSBff6gkoyf1GVF-dPFwoeBg=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJUyvmAeTwi7BPMY63GSBff6gkoyf1GVF-dPFwoeBg=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Yulia Latynina\",\n \"description\": - \"\u041E\u0444\u0438\u0446\u0438\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u0430\u043D\u0430\u043B - \u042E\u043B\u0438\u0438 \u041B\u0430\u0442\u044B\u043D\u0438\u043D\u043E\u0439 - \\n\u041E \u0431\u043E\u0440\u044C\u0431\u0435 \u0431\u0443\u043B\u044C\u0434\u043E\u0433\u043E\u0432 - \u043F\u043E\u0434 \u043A\u043E\u0432\u0440\u043E\u043C \u0437\u0430 \u043E\u0442\u043A\u0430\u0442\u044B - \u0438 \u0431\u043E\u0440\u044C\u0431\u0435 \u0433\u0440\u0430\u0436\u0434\u0430\u043D - \u0437\u0430 \u043F\u0440\u0430\u0432\u0430 \u0438 \u0441\u0432\u043E\u0431\u043E\u0434\u044B\\nhttp://www.latynina.tv\\nt.me/Ylatynina\\n\u0414\u0430\u043D\u043D\u044B\u043C - \u043A\u0430\u043D\u0430\u043B\u043E\u043C \u0437\u0430\u043D\u0438\u043C\u0430\u0435\u0442\u0441\u044F: - \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u044F LATYNINAORG - MT\xDC \\n\u0412 \u043B\u0438\u0446\u0435 \u042E\u043B\u0438\u0438 \u041B\u0430\u0442\u044B\u043D\u0438\u043D\u043E\u0439 - \u0432 \u0440\u043E\u043B\u0438 \u042E\u043B\u0438\u0438 \u041B\u0430\u0442\u044B\u043D\u0438\u043D\u043E\u0439, - \ \\n\u0438 \u0414\u0430\u0440\u044C\u044F \u0412\u043E\u0440\u043E\u043D\u0446\u043E\u0432\u0430 - \u0432 \u0440\u043E\u043B\u0438 \u0448\u0435\u0444 \u0440\u0435\u0434\u0430\u043A\u0442\u043E\u0440\u0430. - \ \\n\u041D\u0430\u043C \u043C\u043E\u0436\u043D\u043E \u043F\u043E\u0436\u0435\u0440\u0442\u0432\u043E\u0432\u0430\u0442\u044C - \u0434\u0435\u043D\u044C\u0433\u0438 \u043F\u0435\u0440\u0435\u0432\u043E\u0434\u043E\u043C - \u043D\u0430 \u0441\u0447\u0435\u0442 \u043D\u0430\u0448\u0435\u0439 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438\\nLATYNINAORG - MT\xDC \\nIBAN EE421010220274614225 \\nSWIFT EEUHEE2X\\nhttps://paypal.me/latynina?locale.x=ru_RU\\n - ko-fi https://ko-fi.com/latynina1\\n Patreon https://www.patreon.com/join/3340678/checkout\\nBitcoin - Address - bc1qltgykx93plrpp32ygktl4srzz4z5sa467ppafq\\nbitcoincash:qq2uhptcx7qqxvtpgqs2spca6urgwuckxsc79vd39j\\nAlgo - - LXHCP5VLSULJTYNK3QXBXYA3YQ5RT7G3UKGKY4IDFAYGIKTDIO3SONPNNM\\n\\n\u041D\u0435 - \u0437\u0430\u0431\u044B\u0432\u0430\u0439\u0442\u0435, \u043F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, - \u043F\u0440\u043E \u043A\u043D\u043E\u043F\u043E\u0447\u043A\u0443 \\\"\u043F\u043E\u0436\u0435\u0440\u0442\u0432\u043E\u0432\u0430\u0442\u044C\\\". - \u041E\u043D\u0430 \u0441\u0432\u044F\u0437\u0430\u043D\u0430 \u0441 Paypal - \u0438 \u0440\u0430\u0441\u043F\u043E\u043B\u043E\u0436\u0435\u043D\u0430 - \u043D\u0430 \u0433\u043B\u0430\u0432\u043D\u043E\u0439 \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0435 - youtube-\u043A\u0430\u043D\u0430\u043B\u0430 \u0432 \u043F\u0440\u0430\u0432\u043E\u043C - \u0432\u0435\u0440\u0445\u043D\u0435\u043C \u0443\u0433\u043B\u0443 \u0438 - \u043D\u0430 \u0441\u0430\u043C\u043E\u043C \u0441\u0430\u0439\u0442\u0435 - latynina.tv \u0441\u0440\u0430\u0437\u0443 \u0432 \u043B\u0435\u0432\u043E\u043C - \u0432\u0435\u0440\u0445\u043D\u0435\u043C \u0443\u0433\u043B\u0443. \u0415\u0441\u043B\u0438 - \u0432\u0430\u043C \u043D\u0440\u0430\u0432\u0438\u0442\u0441\u044F \u0441\u043C\u043E\u0442\u0440\u0435\u0442\u044C - \u043D\u0430\u0441 - \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0442\u0435 - \u043D\u0430\u0441.\"\n }\n },\n \"brandingSettings\": {\n - \ \"channel\": {\n \"title\": \"Yulia Latynina\",\n \"description\": - \"\u041E\u0444\u0438\u0446\u0438\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u0430\u043D\u0430\u043B - \u042E\u043B\u0438\u0438 \u041B\u0430\u0442\u044B\u043D\u0438\u043D\u043E\u0439 - \\n\u041E \u0431\u043E\u0440\u044C\u0431\u0435 \u0431\u0443\u043B\u044C\u0434\u043E\u0433\u043E\u0432 - \u043F\u043E\u0434 \u043A\u043E\u0432\u0440\u043E\u043C \u0437\u0430 \u043E\u0442\u043A\u0430\u0442\u044B - \u0438 \u0431\u043E\u0440\u044C\u0431\u0435 \u0433\u0440\u0430\u0436\u0434\u0430\u043D - \u0437\u0430 \u043F\u0440\u0430\u0432\u0430 \u0438 \u0441\u0432\u043E\u0431\u043E\u0434\u044B\\nhttp://www.latynina.tv\\nt.me/Ylatynina\\n\u0414\u0430\u043D\u043D\u044B\u043C - \u043A\u0430\u043D\u0430\u043B\u043E\u043C \u0437\u0430\u043D\u0438\u043C\u0430\u0435\u0442\u0441\u044F: - \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u044F LATYNINAORG - MT\xDC \\n\u0412 \u043B\u0438\u0446\u0435 \u042E\u043B\u0438\u0438 \u041B\u0430\u0442\u044B\u043D\u0438\u043D\u043E\u0439 - \u0432 \u0440\u043E\u043B\u0438 \u042E\u043B\u0438\u0438 \u041B\u0430\u0442\u044B\u043D\u0438\u043D\u043E\u0439, - \ \\n\u0438 \u0414\u0430\u0440\u044C\u044F \u0412\u043E\u0440\u043E\u043D\u0446\u043E\u0432\u0430 - \u0432 \u0440\u043E\u043B\u0438 \u0448\u0435\u0444 \u0440\u0435\u0434\u0430\u043A\u0442\u043E\u0440\u0430. - \ \\n\u041D\u0430\u043C \u043C\u043E\u0436\u043D\u043E \u043F\u043E\u0436\u0435\u0440\u0442\u0432\u043E\u0432\u0430\u0442\u044C - \u0434\u0435\u043D\u044C\u0433\u0438 \u043F\u0435\u0440\u0435\u0432\u043E\u0434\u043E\u043C - \u043D\u0430 \u0441\u0447\u0435\u0442 \u043D\u0430\u0448\u0435\u0439 \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438\\nLATYNINAORG - MT\xDC \\nIBAN EE421010220274614225 \\nSWIFT EEUHEE2X\\nhttps://paypal.me/latynina?locale.x=ru_RU\\n - ko-fi https://ko-fi.com/latynina1\\n Patreon https://www.patreon.com/join/3340678/checkout\\nBitcoin - Address - bc1qltgykx93plrpp32ygktl4srzz4z5sa467ppafq\\nbitcoincash:qq2uhptcx7qqxvtpgqs2spca6urgwuckxsc79vd39j\\nAlgo - - LXHCP5VLSULJTYNK3QXBXYA3YQ5RT7G3UKGKY4IDFAYGIKTDIO3SONPNNM\\n\\n\u041D\u0435 - \u0437\u0430\u0431\u044B\u0432\u0430\u0439\u0442\u0435, \u043F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, - \u043F\u0440\u043E \u043A\u043D\u043E\u043F\u043E\u0447\u043A\u0443 \\\"\u043F\u043E\u0436\u0435\u0440\u0442\u0432\u043E\u0432\u0430\u0442\u044C\\\". - \u041E\u043D\u0430 \u0441\u0432\u044F\u0437\u0430\u043D\u0430 \u0441 Paypal - \u0438 \u0440\u0430\u0441\u043F\u043E\u043B\u043E\u0436\u0435\u043D\u0430 - \u043D\u0430 \u0433\u043B\u0430\u0432\u043D\u043E\u0439 \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0435 - youtube-\u043A\u0430\u043D\u0430\u043B\u0430 \u0432 \u043F\u0440\u0430\u0432\u043E\u043C - \u0432\u0435\u0440\u0445\u043D\u0435\u043C \u0443\u0433\u043B\u0443 \u0438 - \u043D\u0430 \u0441\u0430\u043C\u043E\u043C \u0441\u0430\u0439\u0442\u0435 - latynina.tv \u0441\u0440\u0430\u0437\u0443 \u0432 \u043B\u0435\u0432\u043E\u043C - \u0432\u0435\u0440\u0445\u043D\u0435\u043C \u0443\u0433\u043B\u0443. \u0415\u0441\u043B\u0438 - \u0432\u0430\u043C \u043D\u0440\u0430\u0432\u0438\u0442\u0441\u044F \u0441\u043C\u043E\u0442\u0440\u0435\u0442\u044C - \u043D\u0430\u0441 - \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0442\u0435 - \u043D\u0430\u0441.\",\n \"keywords\": \"\\\"\u042E\u043B\u0438\u044F - \u041B\u0430\u0442\u044B\u043D\u0438\u043D\u0430\\\" \u041B\u0430\u0442\u044B\u043D\u0438\u043D\u0430 - LatyninaTV \u041B\u0430\u0442\u044B\u043D\u0438\u043D\u0430\u0422\u0412 \\\"\u041A\u043E\u0434 - \u0434\u043E\u0441\u0442\u0443\u043F\u0430\\\" \u043D\u043E\u0432\u043E\u0441\u0442\u0438\",\n - \ \"unsubscribedTrailer\": \"whvEl5hSfzI\"\n },\n \"image\": - {\n \"bannerExternalUrl\": \"https://yt3.googleusercontent.com/20PEAoDao0qgUeIWUUiI7HAj7ePgjaXIRNdt1bADkMMVkWOfaxh8LQogV2Vn-ImTYct21z2_55M\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:28 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n }\n }\n }\n },\n \"ownerDomain\": - \"google.com\",\n \"canonicalName\": \"YouTube\",\n \"batchPath\": \"batch\",\n - \ \"fullyEncodeReservedExpansion\": true,\n \"ownerName\": \"Google\",\n - \ \"revision\": \"20230220\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"discoveryVersion\": \"v1\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"title\": \"YouTube Data API v3\",\n \"protocol\": \"rest\",\n \"resources\": - {\n \"thumbnails\": {\n \"methods\": {\n \"set\": {\n \"flatPath\": - \"youtube/v3/thumbnails/set\",\n \"response\": {\n \"$ref\": - \"ThumbnailSetResponse\"\n },\n \"description\": \"As this - is not an insert in a strict sense (it supports uploading/setting of a thumbnail - for multiple videos, which doesn't result in creation of a single resource), - I use a custom verb here.\",\n \"supportsMediaUpload\": true,\n \"id\": - \"youtube.thumbnails.set\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"Returns the Thumbnail with the given video - IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"httpMethod\": - \"POST\",\n \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"2097152\"\n },\n \"path\": \"youtube/v3/thumbnails/set\"\n - \ }\n }\n },\n \"playlistItems\": {\n \"methods\": {\n - \ \"list\": {\n \"path\": \"youtube/v3/playlistItems\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"id\": \"youtube.playlistItems.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"maxResults\": {\n - \ \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"type\": \"integer\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the playlist items associated with - the given video ID.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"playlistId\": {\n \"description\": - \"Return the playlist items within the given playlist.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"insert\": {\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n }\n },\n \"update\": - {\n \"id\": \"youtube.playlistItems.update\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"path\": - \"youtube/v3/playlistItems\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.delete\",\n \"description\": - \"Deletes a resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"delete\": {\n \"description\": \"Delete a given broadcast.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"Broadcast - to delete.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"DELETE\"\n - \ },\n \"transition\": {\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameterOrder\": [\n \"broadcastStatus\",\n - \ \"id\",\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true\n },\n \"id\": - {\n \"description\": \"Broadcast to transition.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"broadcastStatus\": {\n \"required\": - true,\n \"type\": \"string\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Start testing the broadcast. YouTube transmits video to - the broadcast's monitor stream. Note that you can only transition a broadcast - to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"location\": \"query\",\n \"description\": - \"The status to which the broadcast is going to transition.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"description\": - \"Transition a broadcast to a given status.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts/transition\"\n - \ },\n \"insert\": {\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\"\n - \ },\n \"bind\": {\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"streamId\": - {\n \"description\": \"Stream to bind, if not set unbind the - current one.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"Broadcast to bind to the stream\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Bind a broadcast to a stream.\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.liveBroadcasts.bind\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveBroadcasts/bind\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\"\n - \ },\n \"insertCuepoint\": {\n \"response\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"description\": \"Insert cuepoints - in a broadcast\",\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Broadcast to insert ads to, - or equivalently `external_video_id` for internal use.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"parameterOrder\": - [],\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"request\": - {\n \"$ref\": \"Cuepoint\"\n }\n },\n \"list\": - {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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, status and statistics.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true\n },\n - \ \"maxResults\": {\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\"\n - \ },\n \"broadcastType\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return only broadcasts with the selected type.\",\n \"default\": - \"event\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ],\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ]\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"broadcastStatus\": - {\n \"type\": \"string\",\n \"description\": \"Return - broadcasts with a certain status, e.g. active broadcasts.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"description\": \"Retrieve the list of broadcasts associated with - the given channel.\"\n },\n \"update\": {\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"Updates an existing broadcast for the authenticated user.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"id\": - \"youtube.liveBroadcasts.update\",\n \"httpMethod\": \"PUT\"\n }\n - \ }\n },\n \"playlists\": {\n \"methods\": {\n \"insert\": - {\n \"flatPath\": \"youtube/v3/playlists\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.playlists.insert\",\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/playlists\"\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"PlaylistListResponse\"\n },\n \"parameters\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the playlists owned by the specified - channel ID.\"\n },\n \"onBehalfOfContentOwner\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"description\": \"Return the playlists owned by the authenticated - user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"description\": \"Return the playlists with the given IDs for - Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlists.list\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/playlists\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"update\": - {\n \"id\": \"youtube.playlists.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ }\n },\n \"delete\": {\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.delete\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ]\n }\n - \ }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/members\",\n \"parameters\": {\n \"filterByMemberChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Comma - separated list of channel IDs. Only data about members that are part of this - list will be included in the response.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"location\": - \"query\"\n },\n \"mode\": {\n \"location\": - \"query\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"type\": \"string\",\n \"default\": \"all_current\",\n - \ \"description\": \"Parameter that specifies which channel members - to return.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ]\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"hasAccessToLevel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"maximum\": - \"1000\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.members.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"description\": \"Retrieves a list of members that - match the request criteria for a channel.\",\n \"response\": {\n - \ \"$ref\": \"MemberListResponse\"\n },\n \"flatPath\": - \"youtube/v3/members\"\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the videoCategory resource parts that the API response will include. Supported - values are id and snippet.\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"hl\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"default\": \"en-US\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/videoAbuseReportReasons\",\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.commentThreads.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"parameters\": - {\n \"allThreadsRelatedToChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Returns the comment threads - of all videos of the channel and the channel comments as well.\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"searchTerms\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\"\n },\n \"order\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"default\": \"time\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ]\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"default\": \"20\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"100\",\n \"minimum\": - \"1\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"repeated\": true\n },\n \"moderationStatus\": - {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"description\": \"Limits the returned comment threads to those - with the specified moderation status. Not compatible with the 'id' filter. - Valid values: published, heldForReview, likelySpam.\",\n \"default\": - \"published\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of the specified video.\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"textFormat\": {\n \"description\": \"The requested - text format for the returned comments.\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"location\": \"query\",\n - \ \"default\": \"html\"\n }\n }\n },\n - \ \"insert\": {\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\"\n }\n - \ },\n \"id\": \"youtube.commentThreads.insert\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"mediaUpload\": {\n \"maxSize\": \"6291456\",\n - \ \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/channelBanners/insert\",\n \"multipart\": - true\n },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Unused, channel_id is currently derived from - the security context of the requestor.\"\n }\n },\n \"parameterOrder\": - [],\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"path\": - \"youtube/v3/channelBanners/insert\",\n \"supportsMediaUpload\": - true,\n \"id\": \"youtube.channelBanners.insert\",\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n }\n }\n - \ }\n },\n \"activities\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/activities\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"id\": \"youtube.activities.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"pageToken\": {\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"home\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"publishedAfter\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"format\": \"google-datetime\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"maxResults\": {\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"required\": true\n },\n \"publishedBefore\": - {\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"path\": \"youtube/v3/liveChat/messages\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"The *part* parameter - specifies the liveChatComment resource parts that the API response will include. - Supported values are id and snippet.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"hl\": {\n - \ \"location\": \"query\",\n \"description\": \"Specifies - the localization language in which the system messages should be returned.\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"maximum\": \"2000\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"default\": \"500\",\n \"type\": \"integer\",\n - \ \"minimum\": \"200\"\n },\n \"liveChatId\": - {\n \"location\": \"query\",\n \"description\": - \"The id of the live chat for which comments should be returned.\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"profileImageSize\": {\n \"minimum\": - \"16\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"maximum\": \"720\",\n \"description\": - \"Specifies the size of the profile image that should be returned for each - user.\",\n \"type\": \"integer\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.liveChatMessages.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ]\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/messages\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.delete\",\n - \ \"description\": \"Deletes a chat message.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insert\": {\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.liveChatMessages.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"flatPath\": \"youtube/v3/liveChat/messages\"\n }\n - \ }\n },\n \"abuseReports\": {\n \"methods\": {\n \"insert\": - {\n \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"path\": \"youtube/v3/abuseReports\",\n \"flatPath\": - \"youtube/v3/abuseReports\",\n \"response\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"description\": \"Inserts a new - resource into this collection.\",\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"tests\": - {\n \"methods\": {\n \"insert\": {\n \"response\": {\n - \ \"$ref\": \"TestItem\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"POST method.\",\n - \ \"flatPath\": \"youtube/v3/tests\",\n \"id\": \"youtube.tests.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/tests\",\n \"request\": - {\n \"$ref\": \"TestItem\"\n },\n \"httpMethod\": - \"POST\"\n }\n }\n },\n \"comments\": {\n \"methods\": - {\n \"setModerationStatus\": {\n \"description\": \"Sets the - moderation status of one or more comments.\",\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\",\n \"parameters\": {\n - \ \"banAuthor\": {\n \"type\": \"boolean\",\n \"default\": - \"false\",\n \"description\": \"If set to true the author of - the comment gets added to the ban list. This means all future comments of - the author will autmomatically be rejected. Only valid in combination with - STATUS_REJECTED.\",\n \"location\": \"query\"\n },\n - \ \"moderationStatus\": {\n \"description\": \"Specifies - the requested moderation status. Note, comments can be in statuses, which - are not available through this call. For example, this call does not allow - to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"location\": - \"query\",\n \"required\": true,\n \"enum\": [\n - \ \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": - \"Modifies the moderation status of the comments with the given IDs\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.comments.setModerationStatus\"\n },\n \"update\": - {\n \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments\",\n \"httpMethod\": \"PUT\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Updates an existing resource.\",\n \"id\": \"youtube.comments.update\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": true\n }\n - \ }\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comments with the given IDs for - One Platform.\",\n \"repeated\": true\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"maximum\": \"100\",\n - \ \"type\": \"integer\",\n \"minimum\": \"1\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"20\",\n \"format\": \"uint32\"\n },\n \"parentId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns replies to the specified comment. - Note, currently YouTube features only one level of replies (ie replies to - top level comments). However replies to replies may be supported in the future.\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more comment resource properties that the API response will - include.\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"textFormat\": {\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"The requested text format for the returned comments.\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"default\": \"html\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.list\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/comments\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"description\": \"Retrieves a list of - resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"CommentListResponse\"\n }\n },\n \"delete\": {\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.comments.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/comments\",\n \"description\": \"Deletes a resource.\",\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/comments\"\n - \ },\n \"markAsSpam\": {\n \"parameters\": {\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Flags the comments with the given IDs as - spam in the caller's opinion.\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"description\": \"Expresses - the caller's opinion that one or more comments should be flagged as spam.\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.comments.markAsSpam\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments/markAsSpam\",\n \"flatPath\": - \"youtube/v3/comments/markAsSpam\",\n \"httpMethod\": \"POST\"\n - \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.comments.insert\",\n \"path\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n - \ },\n \"request\": {\n \"$ref\": \"Comment\"\n - \ },\n \"flatPath\": \"youtube/v3/comments\",\n \"description\": - \"Inserts a new resource into this collection.\"\n }\n }\n },\n - \ \"search\": {\n \"methods\": {\n \"list\": {\n \"description\": - \"Retrieves a list of search resources\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"SearchListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/search\",\n \"id\": \"youtube.search.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/search\",\n \"parameters\": {\n - \ \"videoCaption\": {\n \"description\": \"Filter on - the presence of captions on the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"location\": \"query\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on resources belonging to this channelId.\",\n \"location\": - \"query\"\n },\n \"location\": {\n \"description\": - \"Filter on location of the video\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"safeSearch\": - {\n \"description\": \"Indicates whether the search results should - include restricted content as well as standard content.\",\n \"enum\": - [\n \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"default\": \"moderate\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"type\": \"string\"\n },\n \"videoDefinition\": - {\n \"description\": \"Filter on the definition of the videos.\",\n - \ \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ]\n },\n \"channelType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all channels.\",\n \"Only retrieve shows.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"location\": - \"query\",\n \"description\": \"Add a filter on the channel search.\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n },\n \"relatedToVideoId\": {\n \"description\": - \"Search related to a resource.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"videoCategoryId\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on videos in a specific category.\",\n \"type\": \"string\"\n - \ },\n \"eventType\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Filter - on the livestream status of the videos.\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ]\n },\n \"type\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Restrict results to a particular set of resource - types from One Platform.\"\n },\n \"videoDimension\": - {\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Filter - on 3d videos.\",\n \"enumDescriptions\": [\n \"Include - both 3D and non-3D videos in returned results. This is the default value.\",\n - \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict - search results to only include 3D videos.\"\n ]\n },\n - \ \"forMine\": {\n \"type\": \"boolean\",\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"videoDuration\": - {\n \"location\": \"query\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter video search results based on their duration. This is the default - value.\",\n \"Only include videos that are less than four minutes - long.\",\n \"Only include videos that are between four and - 20 minutes long (inclusive).\",\n \"Only include videos longer - than 20 minutes.\"\n ],\n \"description\": \"Filter - on the duration of the videos.\"\n },\n \"videoType\": - {\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Filter on videos of a specific type.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos.\",\n \"Only retrieve movies.\",\n \"Only - retrieve episodes of shows.\"\n ]\n },\n \"videoEmbeddable\": - {\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"description\": \"Filter on embeddable videos.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos, embeddable or not.\",\n \"Only retrieve embeddable - videos.\"\n ],\n \"type\": \"string\"\n },\n - \ \"videoSyndicated\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos, syndicated or not.\",\n \"Only retrieve syndicated - videos.\"\n ],\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"description\": \"Filter on syndicated videos.\"\n - \ },\n \"order\": {\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"searchSortUnspecified\",\n \"date\",\n \"rating\",\n - \ \"viewCount\",\n \"relevance\",\n \"title\",\n - \ \"videoCount\"\n ],\n \"default\": - \"relevance\",\n \"description\": \"Sort order of the results.\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"description\": - \"Display the content as seen by viewers in this country.\",\n \"type\": - \"string\"\n },\n \"relevanceLanguage\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return results relevant to this language.\"\n },\n \"videoLicense\": - {\n \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Return - all videos, regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"location\": \"query\",\n - \ \"description\": \"Filter on the license of the videos.\"\n - \ },\n \"topicId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Restrict - results to a particular topic.\"\n },\n \"publishedBefore\": - {\n \"format\": \"google-datetime\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on resources published before this date.\"\n },\n \"locationRadius\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on distance from the location (specified - above).\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"forDeveloper\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Restrict - the search to only retrieve videos uploaded using the project id of the authenticated - user.\"\n },\n \"forContentOwner\": {\n \"description\": - \"Search owned by a content owner.\",\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"q\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Textual search terms to match.\"\n },\n - \ \"publishedAfter\": {\n \"location\": \"query\",\n - \ \"description\": \"Filter on resources published after this - date.\",\n \"type\": \"string\",\n \"format\": \"google-datetime\"\n - \ }\n }\n }\n }\n },\n \"watermarks\": - {\n \"methods\": {\n \"unset\": {\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"description\": \"Allows removal of channel watermark.\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"id\": \"youtube.watermarks.unset\"\n - \ },\n \"set\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"id\": \"youtube.watermarks.set\",\n - \ \"httpMethod\": \"POST\",\n \"mediaUpload\": {\n \"maxSize\": - \"10485760\",\n \"protocols\": {\n \"simple\": {\n - \ \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"description\": \"Allows upload of - watermark image and setting it for a channel.\",\n \"path\": \"youtube/v3/watermarks/set\"\n - \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"delete\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a resource.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n - \ ],\n \"id\": \"youtube.thirdPartyLinks.delete\",\n \"parameters\": - {\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"Delete the partner links with the given linking - token.\"\n },\n \"part\": {\n \"description\": - \"Do not use. Required for compatibility.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Channel ID to which changes should - be applied, for delegation.\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"description\": \"Type of the link - to be deleted.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"required\": - true,\n \"type\": \"string\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"location\": - \"query\"\n }\n }\n },\n \"insert\": {\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameters\": - {\n \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.thirdPartyLinks.insert\"\n - \ },\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the thirdPartyLink resource parts that the API request - and response will include. Supported values are linkingToken, status, and - snippet.\",\n \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"id\": \"youtube.thirdPartyLinks.update\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"description\": \"Updates an existing - resource.\"\n },\n \"list\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.thirdPartyLinks.list\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"description\": \"Get - a third party link of the given type.\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"location\": \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ]\n },\n - \ \"linkingToken\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Get - a third party link with the given linking token.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\"\n }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n }\n }\n - \ }\n },\n \"videos\": {\n \"methods\": {\n \"reportAbuse\": - {\n \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"id\": \"youtube.videos.reportAbuse\",\n \"parameterOrder\": - [],\n \"path\": \"youtube/v3/videos/reportAbuse\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Report abuse for a video.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n }\n },\n \"rate\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"rating\": {\n \"required\": - true,\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"location\": \"query\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n }\n },\n - \ \"description\": \"Adds a like or dislike rating to a video or removes - a rating from a video.\",\n \"id\": \"youtube.videos.rate\",\n \"path\": - \"youtube/v3/videos/rate\",\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/videos/rate\",\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ]\n },\n \"update\": {\n \"description\": - \"Updates an existing resource.\",\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"id\": \"youtube.videos.update\",\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"path\": \"youtube/v3/videos\"\n },\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"maxHeight\": - {\n \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"format\": \"int32\",\n \"maximum\": \"8192\",\n - \ \"minimum\": \"72\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"minimum\": \"1\",\n \"description\": \"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.\",\n \"default\": \"5\"\n - \ },\n \"part\": {\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"videoCategoryId\": {\n \"location\": - \"query\",\n \"default\": \"0\",\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"type\": - \"string\"\n },\n \"locale\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxWidth\": - {\n \"description\": \"Return the player with maximum height - specified in\",\n \"maximum\": \"8192\",\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"minimum\": - \"72\",\n \"format\": \"int32\"\n },\n \"myRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ]\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n },\n - \ \"chart\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the videos that are in the specified chart.\",\n \"enum\": - [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ]\n },\n \"id\": {\n \"description\": - \"Return videos with the given ids.\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Use a chart that is specific to the specified region\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"VideoListResponse\"\n },\n - \ \"path\": \"youtube/v3/videos\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"id\": \"youtube.videos.list\"\n },\n \"insert\": - {\n \"supportsMediaUpload\": true,\n \"description\": \"Inserts - a new resource into this collection.\",\n \"id\": \"youtube.videos.insert\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"notifySubscribers\": - {\n \"type\": \"boolean\",\n \"description\": \"Notify - the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"default\": \"true\",\n \"location\": - \"query\"\n },\n \"autoLevels\": {\n \"description\": - \"Should auto-levels be applied to the upload.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"stabilize\": {\n \"description\": - \"Should stabilize be applied to the upload.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos\",\n \"response\": - {\n \"$ref\": \"Video\"\n },\n \"request\": {\n - \ \"$ref\": \"Video\"\n },\n \"httpMethod\": \"POST\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/videos\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"274877906944\"\n - \ }\n },\n \"getRating\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos/getRating\",\n \"id\": - \"youtube.videos.getRating\",\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves the ratings that the authorized user gave to a list of specified - videos.\",\n \"path\": \"youtube/v3/videos/getRating\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ }\n },\n \"response\": {\n \"$ref\": - \"VideoGetRatingResponse\"\n },\n \"parameterOrder\": [\n - \ \"id\"\n ]\n },\n \"delete\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.videos.delete\",\n \"description\": \"Deletes a resource.\",\n - \ \"httpMethod\": \"DELETE\"\n }\n }\n },\n \"liveStreams\": - {\n \"methods\": {\n \"update\": {\n \"response\": {\n - \ \"$ref\": \"LiveStream\"\n },\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"id\": \"youtube.liveStreams.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/liveStreams\"\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"LiveStreamListResponse\"\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"id\": \"youtube.liveStreams.list\",\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"default\": \"5\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return LiveStreams with the - given ids from Stubby or Apiary.\",\n \"repeated\": true\n },\n - \ \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"pageToken\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n }\n }\n },\n - \ \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Deletes an existing stream for - the authenticated user.\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.liveStreams.delete\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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, content_details, and status.\",\n - \ \"required\": true,\n \"type\": \"string\"\n }\n - \ },\n \"path\": \"youtube/v3/liveStreams\",\n \"id\": - \"youtube.liveStreams.insert\",\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ }\n }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"path\": \"youtube/v3/videoCategories\",\n \"id\": \"youtube.videoCategories.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"en-US\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Returns - the video categories with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the videoCategory resource properties that - the API response will include. Set the parameter value to snippet.\"\n },\n - \ \"regionCode\": {\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"VideoCategoryListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"superChatEvents\": - {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.superChatEvents.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"type\": - \"integer\",\n \"minimum\": \"1\",\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return rendered funding amounts in specified language.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the superChatEvent resource parts that the - API response will include. This parameter is currently not supported.\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/superChatEvents\",\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"path\": \"youtube/v3/superChatEvents\",\n \"response\": - {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"membershipsLevels\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"MembershipsLevelListResponse\"\n },\n \"path\": - \"youtube/v3/membershipsLevels\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.membershipsLevels.list\",\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"flatPath\": \"youtube/v3/membershipsLevels\"\n }\n }\n - \ },\n \"liveChatBans\": {\n \"methods\": {\n \"insert\": - {\n \"path\": \"youtube/v3/liveChat/bans\",\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n }\n - \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"description\": \"Deletes a chat - ban.\",\n \"id\": \"youtube.liveChatBans.delete\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"DELETE\"\n }\n }\n },\n \"i18nLanguages\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"id\": - \"youtube.i18nLanguages.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/i18nLanguages\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"default\": \"en_US\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the i18nLanguage resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true\n }\n }\n }\n - \ }\n },\n \"captions\": {\n \"methods\": {\n \"delete\": - {\n \"path\": \"youtube/v3/captions\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.delete\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n }\n }\n },\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"description\": \"Returns the captions with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoId\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the captions for the specified video.\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"repeated\": true\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\",\n \"videoId\"\n ],\n \"response\": - {\n \"$ref\": \"CaptionListResponse\"\n },\n \"id\": - \"youtube.captions.list\",\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/captions\",\n \"flatPath\": \"youtube/v3/captions\"\n - \ },\n \"update\": {\n \"description\": \"Updates an - existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"sync\": {\n \"description\": \"Extra parameter - to allow automatically syncing the uploaded caption/transcript with the audio.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"mediaUpload\": - {\n \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ },\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n - \ },\n \"response\": {\n \"$ref\": \"Caption\"\n - \ },\n \"request\": {\n \"$ref\": \"Caption\"\n - \ },\n \"path\": \"youtube/v3/captions\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"supportsMediaUpload\": true,\n \"id\": - \"youtube.captions.update\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"insert\": {\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"supportsMediaUpload\": true,\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true\n },\n \"sync\": - {\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n },\n \"mediaUpload\": {\n \"maxSize\": - \"104857600\",\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ },\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"id\": \"youtube.captions.insert\",\n \"flatPath\": \"youtube/v3/captions\"\n - \ },\n \"download\": {\n \"id\": \"youtube.captions.download\",\n - \ \"parameters\": {\n \"tfmt\": {\n \"description\": - \"Convert the captions into this format. Supported options are sbv, srt, and - vtt.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"tlang\": {\n \"location\": - \"query\",\n \"description\": \"tlang is the language code; machine - translate the captions into this language.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOf\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is be on behalf of\"\n - \ },\n \"id\": {\n \"location\": \"path\",\n - \ \"required\": true,\n \"description\": \"The ID - of the caption track to download, required for One Platform.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"useMediaDownloadService\": true,\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/captions/{id}\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"supportsMediaDownload\": true,\n \"description\": \"Downloads - a caption track.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"description\": \"Deletes a chat moderator.\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.liveChatModerators.delete\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.liveChatModerators.insert\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n }\n - \ },\n \"list\": {\n \"id\": \"youtube.liveChatModerators.list\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"parameters\": {\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"minimum\": \"0\",\n - \ \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"default\": \"5\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"liveChatId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"The id of the live chat for which - moderators should be returned.\"\n },\n \"part\": {\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"liveChatId\",\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveChatModeratorListResponse\"\n },\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"i18nRegions\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"path\": \"youtube/v3/i18nRegions\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"en_US\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the i18nRegion resource properties that the API response will include. Set - the parameter value to snippet.\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/i18nRegions\",\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n }\n }\n - \ },\n \"subscriptions\": {\n \"methods\": {\n \"insert\": - {\n \"path\": \"youtube/v3/subscriptions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"required\": true,\n \"repeated\": true\n }\n - \ },\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"id\": - \"youtube.subscriptions.insert\",\n \"httpMethod\": \"POST\"\n },\n - \ \"delete\": {\n \"parameters\": {\n \"id\": {\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"path\": - \"youtube/v3/subscriptions\",\n \"description\": \"Deletes a resource.\"\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"maxResults\": {\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"type\": - \"integer\"\n },\n \"channelId\": {\n \"description\": - \"Return the subscriptions of the given channel owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"description\": \"Flag - for returning the subscriptions of the authenticated user.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"forChannelId\": - {\n \"description\": \"Return the subscriptions to the subset - of these channels that the authenticated user is subscribed to.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"order\": {\n \"type\": - \"string\",\n \"default\": \"relevance\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"description\": \"The order of the returned subscriptions\",\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ]\n },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the subscribers of the given channel owner.\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"myRecentSubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"description\": \"Return the subscriptions with the given IDs - for Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"id\": \"youtube.subscriptions.list\"\n - \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"id\": - \"youtube.youtube.v3.updateCommentThreads\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [],\n \"description\": \"Updates - an existing resource.\",\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/commentThreads\"\n }\n }\n }\n }\n - \ },\n \"channels\": {\n \"methods\": {\n \"update\": {\n - \ \"request\": {\n \"$ref\": \"Channel\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channels.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Updates - an existing resource.\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"path\": \"youtube/v3/channels\",\n \"flatPath\": - \"youtube/v3/channels\",\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"httpMethod\": \"PUT\"\n },\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"flatPath\": \"youtube/v3/channels\",\n \"parameters\": - {\n \"mySubscribers\": {\n \"location\": \"query\",\n - \ \"description\": \"Return the channels subscribed to the authenticated - user\",\n \"type\": \"boolean\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Return - the channels with the specified IDs.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"format\": \"uint32\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Return the ids of channels owned by the authenticated - user.\"\n },\n \"forUsername\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the channel associated with a YouTube username.\"\n },\n - \ \"categoryId\": {\n \"type\": \"string\",\n \"description\": - \"Return the channels within the specified guide category ID.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"managedByMe\": - {\n \"description\": \"Return the channels managed by the authenticated - user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/channels\",\n - \ \"id\": \"youtube.channels.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ChannelListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n }\n }\n },\n \"channelSections\": - {\n \"methods\": {\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/channelSections\",\n - \ \"id\": \"youtube.channelSections.delete\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n }\n },\n \"insert\": {\n - \ \"path\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"id\": - \"youtube.channelSections.insert\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"flatPath\": \"youtube/v3/channelSections\"\n - \ },\n \"update\": {\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"httpMethod\": \"PUT\",\n \"description\": \"Updates an - existing resource.\",\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\"\n - \ }\n },\n \"path\": \"youtube/v3/channelSections\",\n - \ \"id\": \"youtube.channelSections.update\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n }\n },\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.channelSections.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"ChannelSectionListResponse\"\n },\n \"path\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the ChannelSections owned by the authenticated user.\"\n },\n - \ \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\"\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"description\": - \"Return content in specified language\",\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Return the ChannelSections with the given IDs for Stubby or Apiary.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ }\n }\n }\n },\n \"name\": \"youtube\",\n \"schemas\": - {\n \"MemberSnippet\": {\n \"id\": \"MemberSnippet\",\n \"type\": - \"object\",\n \"properties\": {\n \"memberDetails\": {\n \"description\": - \"Details about the member.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"membershipsDetails\": {\n \"description\": - \"Details about the user's membership.\",\n \"$ref\": \"MembershipsDetails\"\n - \ },\n \"creatorChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The id of the channel that's offering memberships.\"\n - \ }\n }\n },\n \"ChannelConversionPings\": {\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"pings\": {\n \"description\": - \"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.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n }\n }\n },\n \"id\": - \"ChannelConversionPings\"\n },\n \"ThirdPartyLinkListResponse\": {\n - \ \"id\": \"ThirdPartyLinkListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"type\": \"array\"\n }\n - \ }\n },\n \"LiveStream\": {\n \"description\": \"A live stream - describes a live ingestion point.\",\n \"properties\": {\n \"status\": - {\n \"$ref\": \"LiveStreamStatus\",\n \"description\": \"The - status object contains information about live stream's status.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the stream.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"kind\": {\n \"default\": - \"youtube#liveStream\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n - \ \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveStreamSnippet\",\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\"\n - \ },\n \"cdn\": {\n \"description\": \"The cdn object - defines the live stream's content delivery network (CDN) settings. These settings - provide details about the manner in which you stream your content to YouTube.\",\n - \ \"$ref\": \"CdnSettings\"\n }\n },\n \"id\": \"LiveStream\",\n - \ \"type\": \"object\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"type\": \"object\",\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"Basic details about a subscription's subscriber including - title, description, channel ID and thumbnails.\",\n \"properties\": {\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the subscriber.\"\n },\n \"description\": {\n - \ \"description\": \"The description of the subscriber.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel ID of the subscriber.\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"Thumbnails for this subscriber.\"\n }\n }\n },\n \"SubscriptionListResponse\": - {\n \"id\": \"SubscriptionListResponse\",\n \"properties\": {\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#subscriptionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"description\": - \"A list of subscriptions that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Subscription\"\n - \ }\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatTextMessageDetails\": - {\n \"id\": \"LiveChatTextMessageDetails\",\n \"properties\": {\n - \ \"messageText\": {\n \"description\": \"The user's message.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"MembershipsLevelListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"MembershipsLevelListResponse\",\n \"properties\": {\n - \ \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"description\": \"A list of pricing levels offered by a creator - to the fans.\",\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n - \ },\n \"type\": \"array\"\n }\n }\n },\n - \ \"TestItemTestItemSnippet\": {\n \"properties\": {},\n \"type\": - \"object\",\n \"id\": \"TestItemTestItemSnippet\"\n },\n \"ChannelAuditDetails\": - {\n \"properties\": {\n \"contentIdClaimsGoodStanding\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the channel has - any unresolved claims.\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel respects the community guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n }\n },\n \"id\": - \"ChannelAuditDetails\",\n \"type\": \"object\",\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\"\n },\n \"Cuepoint\": {\n \"id\": - \"Cuepoint\",\n \"type\": \"object\",\n \"description\": \"Note - that there may be a 5-second end-point resolution issue. For instance, if - a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\"\n },\n \"cueType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ]\n },\n \"walltimeMs\": - {\n \"type\": \"string\",\n \"description\": \"The wall - clock time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\",\n \"format\": \"uint64\"\n - \ },\n \"insertionOffsetTimeMs\": {\n \"format\": \"int64\",\n - \ \"description\": \"The time when the cuepoint should be inserted - by offset to the broadcast actual start time.\",\n \"type\": \"string\"\n - \ },\n \"durationSecs\": {\n \"description\": \"The - duration of this cuepoint.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"id\": {\n \"description\": \"The - identifier for cuepoint resource.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ChannelToStoreLinkDetails\": {\n \"description\": - \"Information specific to a store on a merchandising platform linked to a - YouTube channel.\",\n \"id\": \"ChannelToStoreLinkDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"storeUrl\": {\n \"type\": - \"string\",\n \"description\": \"Landing page of the store.\"\n },\n - \ \"merchantId\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"Google Merchant Center id of the - store.\"\n },\n \"storeName\": {\n \"type\": \"string\",\n - \ \"description\": \"Name of the store.\"\n }\n }\n },\n - \ \"I18nLanguage\": {\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"default\": \"youtube#i18nLanguage\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n language.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n language, such as language code and human-readable name.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"I18nLanguage\",\n \"description\": - \"An *i18nLanguage* resource identifies a UI language currently supported - by YouTube.\"\n },\n \"CommentThread\": {\n \"description\": \"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.\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentThread\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n - \ },\n \"replies\": {\n \"description\": \"The replies - object contains a limited number of replies (if any) to the top level comment - found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\"\n }\n - \ },\n \"id\": \"CommentThread\"\n },\n \"VideoStatistics\": - {\n \"type\": \"object\",\n \"properties\": {\n \"commentCount\": - {\n \"description\": \"The number of comments for the video.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"dislikeCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of users who have indicated - that they disliked the video by giving it a negative rating.\"\n },\n - \ \"likeCount\": {\n \"description\": \"The number of users - who have indicated that they liked the video by giving it a positive rating.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"viewCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of times the video has - been viewed.\"\n },\n \"favoriteCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of users who currently have the video marked as a favorite video.\"\n - \ }\n },\n \"id\": \"VideoStatistics\",\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\"\n },\n \"TestItem\": {\n \"type\": \"object\",\n \"id\": - \"TestItem\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"TestItemTestItemSnippet\"\n },\n \"featuredPart\": {\n \"type\": - \"boolean\"\n },\n \"gaia\": {\n \"format\": \"int64\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\"\n }\n }\n },\n \"Entity\": {\n \"id\": \"Entity\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"url\": {\n - \ \"type\": \"string\"\n },\n \"typeId\": {\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"PlaylistSnippet\": {\n \"properties\": - {\n \"description\": {\n \"description\": \"The playlist's - description.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the playlist was created.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"The channel title of the channel that the video belongs to.\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": - \"The language of the playlist's default title and description.\"\n },\n - \ \"tags\": {\n \"type\": \"array\",\n \"description\": - \"Keyword tags associated with the playlist.\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n },\n \"thumbnailVideoId\": - {\n \"type\": \"string\",\n \"description\": \"Note: if - the playlist has a custom thumbnail, this field will not be populated. The - video id selected by the user that will be used as the thumbnail of this playlist. - This field defaults to the first publicly viewable video in the playlist, - if: 1. The user has never selected a video to be the thumbnail of the playlist. - 2. The user selects a video to be the thumbnail, and then removes that video - from the playlist. 3. The user selects a non-owned video to be the thumbnail, - but that video becomes private, or gets deleted.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"localized\": - {\n \"description\": \"Localized title and description, read-only.\",\n - \ \"$ref\": \"PlaylistLocalization\"\n },\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"description\": \"The playlist's title.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the playlist.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"PlaylistSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails.\"\n - \ },\n \"ActivityContentDetailsPlaylistItem\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n },\n \"playlistItemId\": - {\n \"type\": \"string\",\n \"description\": \"ID of the - item within the playlist.\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The value that YouTube uses to uniquely - identify the playlist.\"\n }\n },\n \"description\": \"Information - about a new playlist item.\",\n \"id\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"VideoTopicDetails\": {\n \"description\": \"Freebase topic - information related to the video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"relevantTopicIds\": {\n \"type\": \"array\",\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"topicIds\": {\n \"type\": \"array\",\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n },\n \"topicCategories\": {\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\"\n }\n },\n \"id\": \"VideoTopicDetails\"\n - \ },\n \"ActivityListResponse\": {\n \"id\": \"ActivityListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Activity\"\n }\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"kind\": {\n \"default\": \"youtube#activityListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ }\n },\n \"CommentThreadReplies\": {\n \"description\": \"Comments - written in (direct or indirect) reply to the top level comment.\",\n \"type\": - \"object\",\n \"id\": \"CommentThreadReplies\",\n \"properties\": - {\n \"comments\": {\n \"description\": \"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.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Comment\"\n }\n }\n }\n },\n \"ChannelBannerResource\": - {\n \"description\": \"A channel banner returned as the response to a - channel_banner.insert call.\",\n \"type\": \"object\",\n \"id\": - \"ChannelBannerResource\",\n \"properties\": {\n \"url\": {\n - \ \"type\": \"string\",\n \"description\": \"The URL of this - banner image.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#channelBannerResource\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"InvideoTiming\": {\n \"description\": \"Describes - a temporal position of a visual widget inside a video.\",\n \"type\": - \"object\",\n \"id\": \"InvideoTiming\",\n \"properties\": {\n \"durationMs\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\"\n },\n \"offsetMs\": - {\n \"description\": \"Defines the time at which the promotion will - appear. Depending on the value of type the value of the offsetMs field will - represent a time offset from the start or from the end of the video, expressed - in milliseconds.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"Describes a timing type. If the - value is offsetFromStart, then the offsetMs field represents an offset from - the start of the video. If the value is offsetFromEnd, then the offsetMs field - represents an offset from the end of the video.\",\n \"enum\": [\n - \ \"offsetFromStart\",\n \"offsetFromEnd\"\n ]\n - \ }\n }\n },\n \"LiveChatMessageRetractedDetails\": {\n \"id\": - \"LiveChatMessageRetractedDetails\",\n \"properties\": {\n \"retractedMessageId\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"CaptionSnippet\": {\n \"properties\": {\n \"language\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The language of the caption track. The property - value is a BCP-47 language tag.\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video associated with - the caption track. @mutable youtube.captions.insert\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"status\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"serving\",\n \"syncing\",\n \"failed\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The caption track's status.\"\n },\n \"isDraft\": {\n \"type\": - \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\"\n - \ },\n \"isLarge\": {\n \"description\": \"Indicates - whether the caption track uses large text for the vision-impaired. The default - value is false.\",\n \"type\": \"boolean\"\n },\n \"lastUpdated\": - {\n \"description\": \"The date and time when the caption track was - last updated.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"audioTrackType\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of audio track associated with the caption track.\",\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ]\n },\n \"isAutoSynced\": - {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"isEasyReader\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n \"isCC\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the track contains closed captions for the deaf and hard of hearing. - The default value is false.\"\n },\n \"name\": {\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"trackKind\": {\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The caption track's type.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"failureReason\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The reason that - YouTube failed to process the caption track. This property is only present - if the state property's value is failed.\",\n \"enum\": [\n \"unknownFormat\",\n - \ \"unsupportedFormat\",\n \"processingFailed\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about a caption track, such as its language and name.\",\n - \ \"type\": \"object\",\n \"id\": \"CaptionSnippet\"\n },\n \"I18nRegion\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the i18n region, such as region code and human-readable - name.\",\n \"$ref\": \"I18nRegionSnippet\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the i18n region.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#i18nRegion\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegion\\\".\"\n }\n },\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n - \ \"id\": \"I18nRegion\",\n \"type\": \"object\"\n },\n \"ChannelSectionLocalization\": - {\n \"type\": \"object\",\n \"id\": \"ChannelSectionLocalization\",\n - \ \"description\": \"ChannelSection localization setting\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel section's title.\"\n }\n }\n - \ },\n \"SuperStickerMetadata\": {\n \"type\": \"object\",\n \"id\": - \"SuperStickerMetadata\",\n \"properties\": {\n \"altTextLanguage\": - {\n \"description\": \"Specifies the localization language in which - the alt text is returned.\",\n \"type\": \"string\"\n },\n - \ \"stickerId\": {\n \"type\": \"string\",\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\"\n - \ },\n \"altText\": {\n \"type\": \"string\",\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\"\n }\n }\n },\n \"ChannelSettings\": - {\n \"id\": \"ChannelSettings\",\n \"type\": \"object\",\n \"description\": - \"Branding properties for the channel view.\",\n \"properties\": {\n - \ \"showRelatedChannels\": {\n \"description\": \"Whether related - channels should be proposed.\",\n \"type\": \"boolean\"\n },\n - \ \"featuredChannelsUrls\": {\n \"description\": \"The list - of featured channels.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"description\": {\n - \ \"description\": \"Specifies the channel description.\",\n \"type\": - \"string\"\n },\n \"trackingAnalyticsAccountId\": {\n \"type\": - \"string\",\n \"description\": \"The ID for a Google Analytics account - to track and measure traffic to the channels.\"\n },\n \"defaultTab\": - {\n \"description\": \"Which content tab users should see when viewing - the channel.\",\n \"type\": \"string\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n },\n \"unsubscribedTrailer\": - {\n \"description\": \"The trailer of the channel, for users that - are not subscribers.\",\n \"type\": \"string\"\n },\n \"keywords\": - {\n \"description\": \"Lists keywords associated with the channel, - comma-separated.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the channel title.\"\n },\n \"profileColor\": {\n \"type\": - \"string\",\n \"description\": \"A prominent color that can be rendered - on this channel page.\"\n },\n \"country\": {\n \"type\": - \"string\",\n \"description\": \"The country of the channel.\"\n - \ },\n \"moderateComments\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether user-submitted comments left on the channel - page need to be approved by the channel owner to be publicly visible.\"\n - \ },\n \"showBrowseView\": {\n \"description\": \"Whether - the tab to browse the videos should be displayed.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"PlaylistItem\": {\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#playlistItem\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\"\n },\n - \ \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\"\n },\n \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist item, such as its title and position in the playlist.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistItemContentDetails\",\n \"description\": \"The contentDetails - object is included in the resource if the included item is a YouTube video. - The object contains additional information about the video.\"\n }\n - \ },\n \"description\": \"A *playlistItem* resource identifies another - resource, such as a video, that is included in a playlist. In addition, the - playlistItem resource contains details about the included resource that pertain - specifically to how that resource is used in that playlist. YouTube uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods. For example, if a user gives a positive - rating to a video, you would insert that video into the liked videos playlist - for that user's channel.\",\n \"id\": \"PlaylistItem\",\n \"type\": - \"object\"\n },\n \"VideoFileDetails\": {\n \"description\": \"Describes - original video file properties, including technical details about audio and - video streams, but also metadata information like content length, digitization - time, or geotagging information.\",\n \"id\": \"VideoFileDetails\",\n - \ \"properties\": {\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"description\": \"The uploaded video file's combined - (video and audio) bitrate in bits per second.\",\n \"type\": \"string\"\n - \ },\n \"creationTime\": {\n \"description\": \"The - date and time when the uploaded video file was created. The value is specified - in ISO 8601 format. Currently, the following ISO 8601 formats are supported: - - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: - YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n },\n - \ \"durationMs\": {\n \"description\": \"The length of the - uploaded video in milliseconds.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"audioStreams\": {\n \"items\": - {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of audio streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about an audio stream.\"\n },\n \"container\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded video file's container - format.\"\n },\n \"fileType\": {\n \"description\": - \"The uploaded file's type as detected by YouTube's video processing engine. - Currently, YouTube only processes video files, but this field is present whether - a video file or another type of file was uploaded.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Known video - file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an MP3 - file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ]\n },\n \"fileName\": {\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - file's name. This field is present whether a video file or another type of - file was uploaded.\"\n },\n \"fileSize\": {\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"videoStreams\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n },\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatSuperStickerDetails\": - {\n \"id\": \"LiveChatSuperStickerDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"tier\": {\n \"type\": \"integer\",\n - \ \"description\": \"The tier in which the amount belongs. Lower amounts - belong to lower tiers. The lowest tier is 1.\",\n \"format\": \"uint32\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made.\",\n \"type\": \"string\"\n },\n - \ \"amountDisplayString\": {\n \"type\": \"string\",\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\"\n - \ },\n \"superStickerMetadata\": {\n \"description\": - \"Information about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The amount - purchased by the user, in micros (1,750,000 micros = 1.75).\"\n }\n - \ }\n },\n \"CommentThreadSnippet\": {\n \"id\": \"CommentThreadSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"totalReplyCount\": {\n \"type\": - \"integer\",\n \"description\": \"The total number of replies (not - including the top level comment).\",\n \"format\": \"uint32\"\n },\n - \ \"canReply\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID of - the video the comments refer to, if any. No video_id implies a channel discussion - comment.\",\n \"type\": \"string\"\n },\n \"isPublic\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the thread (and therefore all its comments) is visible to all YouTube users.\"\n - \ },\n \"topLevelComment\": {\n \"$ref\": \"Comment\",\n - \ \"description\": \"The top level comment of this thread.\"\n }\n - \ },\n \"description\": \"Basic details about a comment thread.\"\n - \ },\n \"ChannelListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#channelListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Channel\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"ChannelListResponse\"\n },\n \"AbuseType\": - {\n \"id\": \"AbuseType\",\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatUserBannedMessageDetails\",\n \"properties\": - {\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"The details of the user that was banned.\"\n - \ },\n \"banType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of ban.\"\n },\n \"banDurationSeconds\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The duration of the ban. This property is only present if the banType is - temporary.\"\n }\n }\n },\n \"VideoFileDetailsAudioStream\": - {\n \"id\": \"VideoFileDetailsAudioStream\",\n \"description\": - \"Information about an audio stream.\",\n \"type\": \"object\",\n \"properties\": - {\n \"bitrateBps\": {\n \"description\": \"The audio stream's - bitrate, in bits per second.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"channelCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The number - of audio channels that the stream contains.\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n },\n \"codec\": {\n \"type\": \"string\",\n - \ \"description\": \"The audio codec that the stream uses.\"\n }\n - \ }\n },\n \"VideoCategory\": {\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"default\": \"youtube#videoCategory\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video category.\"\n },\n \"snippet\": - {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"id\": \"VideoCategory\",\n \"type\": \"object\",\n \"description\": - \"A *videoCategory* resource identifies a category that has been or could - be associated with uploaded videos.\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"id\": \"ActivityContentDetailsRecommendation\",\n \"description\": - \"Information that identifies the recommended resource.\",\n \"type\": - \"object\",\n \"properties\": {\n \"reason\": {\n \"enum\": - [\n \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The reason that the resource is recommended to the user.\"\n },\n - \ \"resourceId\": {\n \"description\": \"The resourceId object - contains information that identifies the recommended resource.\",\n \"$ref\": - \"ResourceId\"\n },\n \"seedResourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The seedResourceId object contains - information about the resource that caused the recommendation.\"\n }\n - \ }\n },\n \"LiveBroadcastStatus\": {\n \"description\": \"Live - broadcast state.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"selfDeclaredMadeForKids\": {\n \"description\": \"This - field will be set to True if the creator declares the broadcast to be kids - only: go/live-cw-work.\",\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"type\": \"string\"\n },\n \"recordingStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"No - value or the value is unknown.\",\n \"The recording has not yet - been started.\",\n \"The recording is currently on.\",\n \"The - recording is completed, and cannot be started again.\"\n ],\n \"description\": - \"The broadcast's recording status.\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ]\n },\n \"liveBroadcastPriority\": {\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"enum\": - [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ],\n \"description\": - \"Priority of the live broadcast event (internal state).\",\n \"type\": - \"string\"\n },\n \"lifeCycleStatus\": {\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The broadcast's - status. The status can be updated using the API's liveBroadcasts.transition - method.\"\n },\n \"madeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the broadcast is made for kids or not, - decided by YouTube instead of the creator. This field is read only.\"\n }\n - \ },\n \"id\": \"LiveBroadcastStatus\"\n },\n \"VideoRating\": - {\n \"description\": \"Basic details about rating of a video.\",\n \"id\": - \"VideoRating\",\n \"properties\": {\n \"rating\": {\n \"description\": - \"Rating of a video.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"CommentThreadListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n \"default\": - \"youtube#commentThreadListResponse\"\n },\n \"pageInfo\": {\n - \ \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"CommentThread\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of comment threads that match - the request criteria.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n },\n \"id\": \"CommentThreadListResponse\",\n - \ \"type\": \"object\"\n },\n \"LiveChatBan\": {\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the ban.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"default\": - \"youtube#liveChatBan\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A `__liveChatBan__` resource represents a ban for - a YouTube live chat.\",\n \"type\": \"object\",\n \"id\": \"LiveChatBan\"\n - \ },\n \"LiveBroadcastSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - broadcast. For each nested object in this object, the key is the name of the - thumbnail image, and the value is an object that contains other information - about the thumbnail.\"\n },\n \"description\": {\n \"description\": - \"The broadcast's description. As with the title, you can set this field by - modifying the broadcast resource or by setting the description field of the - corresponding video resource.\",\n \"type\": \"string\"\n },\n - \ \"scheduledStartTime\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast is scheduled to start.\",\n \"format\": - \"date-time\"\n },\n \"title\": {\n \"description\": - \"The broadcast's title. Note that the broadcast represents exactly one YouTube - video. You can set this field by modifying the broadcast resource or by setting - the title field of the corresponding video resource.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"actualStartTime\": {\n \"description\": \"The - date and time that the broadcast actually started. This information is only - available once the broadcast's state is live.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"scheduledEndTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the broadcast is scheduled to end.\",\n \"type\": - \"string\"\n },\n \"actualEndTime\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the broadcast actually ended. This information is - only available once the broadcast's state is complete.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the broadcast was added - to YouTube's live broadcast schedule.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"isDefaultBroadcast\": - {\n \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\",\n \"type\": \"boolean\"\n },\n - \ \"liveChatId\": {\n \"description\": \"The id of the live - chat for this broadcast.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that is publishing the broadcast.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Basic broadcast information.\",\n \"id\": \"LiveBroadcastSnippet\"\n - \ },\n \"ThirdPartyLinkSnippet\": {\n \"id\": \"ThirdPartyLinkSnippet\",\n - \ \"properties\": {\n \"type\": {\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Type of the link named after the entities that - are being linked.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel with - a store on a merchandising platform in order to enable retail commerce capabilities - for that channel on YouTube.\"\n ]\n },\n \"channelToStoreLink\": - {\n \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n - \ }\n },\n \"description\": \"Basic information about a third - party account link, including its type and type-specific information.\",\n - \ \"type\": \"object\"\n },\n \"MonitorStreamInfo\": {\n \"properties\": - {\n \"enableMonitorStream\": {\n \"type\": \"boolean\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"This value determines - whether the monitor stream is enabled for the broadcast. If the monitor stream - is enabled, then YouTube will broadcast the event content on a special stream - intended only for the broadcaster's consumption. The broadcaster can use the - stream to review the event content and also to identify the optimal times - to insert cuepoints. You need to set this value to true if you intend to have - a broadcast delay for your event. *Note:* This property cannot be updated - once the broadcast is in the testing or live state.\"\n },\n \"broadcastStreamDelayMs\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"If you have set the enableMonitorStream - property to true, then this property determines the length of the live broadcast - delay.\"\n },\n \"embedHtml\": {\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Settings and Info - of the monitor stream\",\n \"id\": \"MonitorStreamInfo\",\n \"type\": - \"object\"\n },\n \"LiveBroadcastContentDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveBroadcastContentDetails\",\n \"description\": - \"Detailed settings of a broadcast.\",\n \"properties\": {\n \"latencyPreference\": - {\n \"description\": \"If both this and enable_low_latency are set, - they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW - should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency - omitted.\",\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"type\": \"string\"\n },\n \"projection\": - {\n \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n },\n \"startWithSlate\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\"\n },\n \"mesh\": - {\n \"format\": \"byte\",\n \"description\": \"The mesh - for projecting the video if projection is mesh. The mesh value must be a UTF-8 - string containing the base-64 encoding of 3D mesh data that follows the Spherical - Video V2 RFC specification for an mshp box, excluding the box size and type - but including the following four reserved zero bytes for the version and flags.\",\n - \ \"type\": \"string\"\n },\n \"enableLowLatency\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast has low latency enabled.\"\n },\n \"enableDvr\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - determines whether viewers can access DVR controls while watching the video. - DVR controls enable the viewer to control the video playback experience by - pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\"\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"monitorStream\": {\n - \ \"$ref\": \"MonitorStreamInfo\",\n \"description\": \"The - monitorStream object contains information about the monitor stream, which - the broadcaster can use to review the event content before the broadcast stream - is shown publicly.\"\n },\n \"enableAutoStart\": {\n \"description\": - \"This setting indicates whether auto start is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\",\n \"type\": \"boolean\"\n },\n \"enableAutoStop\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto stop is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"enableClosedCaptions\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n - \ },\n \"stereoLayout\": {\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ],\n \"description\": \"The 3D stereo layout of this broadcast. - This defaults to mono.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"recordFromStart\": {\n \"description\": - \"Automatically start recording after the event goes live. The default value - for this property is true. *Important:* You must also set the enableDvr property's - value to true if you want the playback to be available immediately after the - broadcast ends. If you set this property's value to true but do not also set - the enableDvr property to true, there may be a delay of around one day before - the archived video will be available for playback.\",\n \"type\": - \"boolean\"\n },\n \"boundStreamId\": {\n \"type\": - \"string\",\n \"description\": \"This value uniquely identifies the - live stream bound to the broadcast.\"\n },\n \"closedCaptionsType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ],\n \"type\": \"string\"\n },\n \"enableContentEncryption\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether YouTube should enable content encryption for the broadcast.\"\n - \ }\n }\n },\n \"LiveChatMessageListResponse\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatMessageListResponse\",\n \"properties\": - {\n \"pollingIntervalMillis\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The amount - of time the client should wait before polling again.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n }\n },\n \"offlineAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the underlying stream went offline.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatMessageListResponse\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n }\n - \ }\n },\n \"CaptionListResponse\": {\n \"id\": \"CaptionListResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Caption\"\n },\n - \ \"description\": \"A list of captions that match the request criteria.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"InvideoPosition\": - {\n \"type\": \"object\",\n \"properties\": {\n \"type\": - {\n \"description\": \"Defines the position type.\",\n \"enum\": - [\n \"corner\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\"\n ]\n },\n - \ \"cornerPosition\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"Describes in which corner of the - video the visual widget will appear.\",\n \"enum\": [\n \"topLeft\",\n - \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n - \ ]\n }\n },\n \"id\": \"InvideoPosition\",\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\"\n - \ },\n \"Member\": {\n \"properties\": {\n \"snippet\": {\n - \ \"$ref\": \"MemberSnippet\",\n \"description\": \"The snippet - object contains basic details about the member.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#member\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#member\\\".\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"Member\",\n \"type\": - \"object\",\n \"description\": \"A *member* resource represents a member - for a YouTube channel. A member provides recurring monetary support to a creator - and receives special benefits.\"\n },\n \"LiveStreamHealthStatus\": - {\n \"type\": \"object\",\n \"properties\": {\n \"configurationIssues\": - {\n \"description\": \"The configurations issues on this stream\",\n - \ \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"type\": \"array\"\n },\n \"status\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The status code of this stream\",\n \"type\": \"string\",\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ]\n },\n \"lastUpdateTimeSeconds\": - {\n \"type\": \"string\",\n \"description\": \"The last - time this status was updated (in seconds)\",\n \"format\": \"uint64\"\n - \ }\n },\n \"id\": \"LiveStreamHealthStatus\"\n },\n \"Caption\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#caption\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"CaptionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the caption.\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the caption track.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A *caption* resource represents a YouTube caption track. A caption track - is associated with exactly one YouTube video.\",\n \"type\": \"object\",\n - \ \"id\": \"Caption\"\n },\n \"ImageSettings\": {\n \"description\": - \"Branding properties for images associated with the channel.\",\n \"id\": - \"ImageSettings\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"smallBrandedBannerImageUrl\": {\n \"description\": \"The - URL for the 640px by 70px banner image that appears below the video player - in the default view of the video watch page. The URL for the image that appears - above the top-left corner of the video player. This is a 25-pixel-high image - with a flexible width that cannot exceed 170 pixels.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerImageUrl\": {\n \"description\": - \"Banner image. Desktop size (1060x175).\",\n \"type\": \"string\"\n - \ },\n \"bannerMobileImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Mobile size (640x175).\"\n },\n - \ \"bannerMobileHdImageUrl\": {\n \"description\": \"Banner - image. Mobile size high resolution (1280x360).\",\n \"type\": \"string\"\n - \ },\n \"bannerTvImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. TV size extra high resolution (2120x1192).\"\n - \ },\n \"watchIconImageUrl\": {\n \"type\": \"string\"\n - \ },\n \"bannerExternalUrl\": {\n \"description\": \"This - is generated when a ChannelBanner.Insert request has succeeded for the given - channel.\",\n \"type\": \"string\"\n },\n \"bannerTabletImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size low resolution (1138x188).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"backgroundImageUrl\": - {\n \"description\": \"The URL for the background image shown on - the video watch page. The image should be 1200px by 615px, with a maximum - file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerTvHighImageUrl\": {\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\",\n \"type\": \"string\"\n - \ },\n \"bannerMobileExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\"\n },\n \"bannerTvLowImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. TV size low resolution - (854x480).\"\n },\n \"bannerMobileLowImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size low resolution - (320x88).\"\n },\n \"bannerMobileMediumHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size medium/high resolution (960x263).\",\n \"type\": - \"string\"\n },\n \"largeBrandedBannerImageUrl\": {\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size extra high resolution - (2560x424).\",\n \"type\": \"string\"\n },\n \"trackingImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\"\n }\n }\n },\n \"PlaylistItemContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - a video. To retrieve the video resource, set the id query parameter to this - value in your API request.\",\n \"type\": \"string\"\n },\n - \ \"endAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\"\n - \ },\n \"startAt\": {\n \"description\": \"The time, - measured in seconds from the start of the video, when the video should start - playing. (The playlist owner can specify the times when the video should start - and stop playing when the video is played in the context of the playlist.) - The default value is 0.\",\n \"type\": \"string\"\n },\n \"videoPublishedAt\": - {\n \"description\": \"The date and time that the video was published - to YouTube.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"note\": {\n \"type\": \"string\",\n \"description\": - \"A user-generated note for this item.\"\n }\n },\n \"id\": - \"PlaylistItemContentDetails\"\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"id\": \"VideoSuggestionsTagSuggestion\",\n \"type\": \"object\",\n - \ \"description\": \"A single tag suggestion with it's relevance information.\",\n - \ \"properties\": {\n \"categoryRestricts\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A set of video categories for which the tag is - relevant. You can use this information to display appropriate tag suggestions - based on the video category that the video uploader associates with the video. - By default, tag suggestions are relevant for all categories if there are no - restricts defined for the keyword.\"\n },\n \"tag\": {\n \"description\": - \"The keyword tag suggested for the video.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveChatFanFundingEventDetails\": {\n \"properties\": - {\n \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the user to this fan funding event.\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the fund was made.\",\n \"type\": \"string\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"type\": \"string\",\n \"description\": - \"The amount of the fund.\",\n \"format\": \"uint64\"\n }\n - \ },\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"type\": - \"object\"\n },\n \"ChannelProfileDetails\": {\n \"id\": \"ChannelProfileDetails\",\n - \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel ID.\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n },\n - \ \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channels's avatar URL.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"CommentSnippetAuthorChannelId\": {\n \"description\": \"The - id of the author's YouTube channel, if any.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"CommentSnippetAuthorChannelId\"\n },\n - \ \"CdnSettings\": {\n \"id\": \"CdnSettings\",\n \"type\": \"object\",\n - \ \"description\": \"Brief description of the live stream cdn settings.\",\n - \ \"properties\": {\n \"ingestionType\": {\n \"description\": - \" The method or protocol used to transmit the video stream.\",\n \"enum\": - [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"frameRate\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The frame rate of the inbound video data.\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ]\n },\n - \ \"resolution\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\",\n \"enum\": [\n \"240p\",\n \"360p\",\n - \ \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\",\n - \ \"2160p\",\n \"variable\"\n ]\n },\n - \ \"format\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The format of the video stream that you are sending to Youtube. \"\n },\n - \ \"ingestionInfo\": {\n \"description\": \"The ingestionInfo - object contains information that YouTube provides that you need to transmit - your RTMP or HTTP stream to YouTube.\",\n \"$ref\": \"IngestionInfo\"\n - \ }\n }\n },\n \"I18nRegionSnippet\": {\n \"id\": \"I18nRegionSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - an i18n region, such as region code and human-readable name.\",\n \"properties\": - {\n \"name\": {\n \"description\": \"The human-readable name - of the region.\",\n \"type\": \"string\"\n },\n \"gl\": - {\n \"description\": \"The region code as a 2-letter ISO country - code.\",\n \"type\": \"string\"\n }\n }\n },\n \"VideoAbuseReport\": - {\n \"properties\": {\n \"secondaryReasonId\": {\n \"type\": - \"string\",\n \"description\": \"The specific, or secondary, reason - that this content is abusive (if available). The value is an abuse report - reason ID that is a valid secondary reason for the primary reason.\"\n },\n - \ \"comments\": {\n \"type\": \"string\",\n \"description\": - \"Additional comments regarding the abuse report.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n },\n \"reasonId\": - {\n \"description\": \"The high-level, or primary, reason that the - content is abusive. The value is an abuse report reason ID.\",\n \"type\": - \"string\"\n },\n \"language\": {\n \"description\": - \"The language that the content was viewed in.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReport\"\n - \ },\n \"I18nLanguageListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"I18nLanguageListResponse\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of supported i18n languages. In this - map, the i18n language ID is the map key, and its value is the corresponding - i18nLanguage resource.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n }\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ActivitySnippet\": {\n \"id\": \"ActivitySnippet\",\n \"description\": - \"Basic details about an activity, including title, description, thumbnails, - activity type and group. Next ID: 12\",\n \"properties\": {\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the video was uploaded.\",\n \"format\": \"date-time\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel associated with - the activity.\"\n },\n \"title\": {\n \"description\": - \"The title of the resource primarily associated with the activity.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"groupId\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel responsible for this activity\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"enum\": [\n \"typeUnspecified\",\n - \ \"upload\",\n \"like\",\n \"favorite\",\n - \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n - \ \"recommendation\",\n \"bulletin\",\n \"social\",\n - \ \"channelItem\",\n \"promotedItem\"\n ],\n - \ \"description\": \"The type of activity that the resource describes.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"description\": {\n \"description\": \"The description of - the resource primarily associated with the activity. @mutable youtube.activities.insert\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveBroadcast\": {\n \"properties\": {\n \"status\": - {\n \"description\": \"The status object contains information about - the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveBroadcast\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the broadcast.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveBroadcastSnippet\",\n \"description\": - \"The snippet object contains basic details about the event, including its - title, description, start time, and end time.\"\n },\n \"statistics\": - {\n \"$ref\": \"LiveBroadcastStatistics\",\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveBroadcast\",\n - \ \"description\": \"A *liveBroadcast* resource represents an event that - will be streamed, via live video, on YouTube.\"\n },\n \"ChannelStatus\": - {\n \"description\": \"JSON template for the status part of a channel.\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"description\": - \"Privacy status of the channel.\"\n },\n \"longUploadsStatus\": - {\n \"description\": \"The long uploads status of this channel. See - https://support.google.com/youtube/answer/71673 for more information.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"isLinked\": {\n - \ \"description\": \"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.\",\n \"type\": \"boolean\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelStatus\"\n },\n \"LiveStreamSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"isDefaultStream\": {\n \"type\": - \"boolean\"\n },\n \"title\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The stream's title. The value must be between - 1 and 128 characters long.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that is transmitting the stream.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the stream - was created.\",\n \"format\": \"date-time\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The stream's - description. The value cannot be longer than 10000 characters.\"\n }\n - \ },\n \"id\": \"LiveStreamSnippet\"\n },\n \"PlaylistPlayer\": - {\n \"properties\": {\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"PlaylistPlayer\",\n - \ \"type\": \"object\"\n },\n \"ChannelSectionSnippet\": {\n \"id\": - \"ChannelSectionSnippet\",\n \"description\": \"Basic details about a - channel section, including title, style and position.\",\n \"type\": - \"object\",\n \"properties\": {\n \"localized\": {\n \"description\": - \"Localized title, read-only.\",\n \"$ref\": \"ChannelSectionLocalization\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the channel section's default title and description.\",\n \"type\": - \"string\"\n },\n \"position\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The position of the channel section in the channel.\",\n - \ \"type\": \"integer\"\n },\n \"style\": {\n \"enum\": - [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"description\": \"The - style of the channel section.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"description\": - \"The type of the channel section.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ]\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel - section's title for multiple_playlists and multiple_channels.\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that published the channel section.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"properties\": {\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n },\n \"isChatSponsor\": {\n \"description\": - \"Whether the author is a sponsor of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"displayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's display name.\"\n },\n \"channelUrl\": - {\n \"description\": \"The channel's URL.\",\n \"type\": - \"string\"\n },\n \"isChatModerator\": {\n \"description\": - \"Whether the author is a moderator of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel ID.\"\n },\n \"isChatOwner\": - {\n \"description\": \"Whether the author is the owner of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n }\n },\n \"id\": \"LiveChatMessageAuthorDetails\",\n - \ \"type\": \"object\"\n },\n \"ChannelSectionListResponse\": {\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"description\": \"A list of ChannelSections that - match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelSectionListResponse\"\n },\n \"ChannelSectionTargeting\": - {\n \"type\": \"object\",\n \"properties\": {\n \"languages\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The language the channel - section is targeting.\"\n },\n \"countries\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The country the channel section is targeting.\",\n \"type\": \"array\"\n - \ },\n \"regions\": {\n \"description\": \"The region - the channel section is targeting.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"id\": - \"ChannelSectionTargeting\",\n \"description\": \"ChannelSection targeting - setting.\"\n },\n \"MembershipsDetails\": {\n \"properties\": {\n - \ \"highestAccessibleLevel\": {\n \"description\": \"Id of - the highest level that the user has access to at the moment.\",\n \"type\": - \"string\"\n },\n \"membershipsDuration\": {\n \"$ref\": - \"MembershipsDuration\",\n \"description\": \"Data about memberships - duration without taking into consideration pricing levels.\"\n },\n - \ \"accessibleLevels\": {\n \"type\": \"array\",\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"membershipsDurationAtLevels\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ },\n \"description\": \"Data about memberships duration - on particular pricing levels.\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n }\n - \ },\n \"id\": \"MembershipsDetails\",\n \"type\": \"object\"\n - \ },\n \"VideoRecordingDetails\": {\n \"properties\": {\n \"recordingDate\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the video was recorded.\"\n - \ },\n \"locationDescription\": {\n \"type\": \"string\",\n - \ \"description\": \"The text description of the location where the - video was recorded.\"\n },\n \"location\": {\n \"description\": - \"The geolocation information associated with the video.\",\n \"$ref\": - \"GeoPoint\"\n }\n },\n \"description\": \"Recording information - associated with the video.\",\n \"type\": \"object\",\n \"id\": - \"VideoRecordingDetails\"\n },\n \"ChannelLocalization\": {\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for channel's title.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for channel's description.\"\n - \ }\n },\n \"id\": \"ChannelLocalization\",\n \"description\": - \"Channel localization setting\"\n },\n \"MembershipsLevelSnippet\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"properties\": {\n \"creatorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the channel that's offering - channel memberships.\"\n },\n \"levelDetails\": {\n \"description\": - \"Details about the pricing level.\",\n \"$ref\": \"LevelDetails\"\n - \ }\n }\n },\n \"ChannelSectionContentDetails\": {\n \"type\": - \"object\",\n \"id\": \"ChannelSectionContentDetails\",\n \"properties\": - {\n \"channels\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The channel ids for - type multiple_channels.\",\n \"type\": \"array\"\n },\n \"playlists\": - {\n \"description\": \"The playlist ids for type single_playlist - and multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n }\n },\n \"description\": \"Details about a channelsection, - including playlists and channels.\"\n },\n \"ActivityContentDetailsComment\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource associated with the comment.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsComment\",\n \"type\": - \"object\",\n \"description\": \"Information about a resource that received - a comment.\"\n },\n \"VideoContentDetails\": {\n \"properties\": - {\n \"contentRating\": {\n \"description\": \"Specifies the - ratings that the video received under various rating schemes.\",\n \"$ref\": - \"ContentRating\"\n },\n \"caption\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"true\",\n \"false\"\n - \ ],\n \"description\": \"The value of captions indicates - whether the video has captions or not.\"\n },\n \"licensedContent\": - {\n \"description\": \"The value of is_license_content indicates - whether the video is licensed content.\",\n \"type\": \"boolean\"\n - \ },\n \"hasCustomThumbnail\": {\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n },\n \"definition\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"description\": \"The value of definition indicates - whether the video is available in high definition or only in standard definition.\",\n - \ \"enum\": [\n \"sd\",\n \"hd\"\n ]\n - \ },\n \"duration\": {\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\",\n \"type\": - \"string\"\n },\n \"regionRestriction\": {\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"countryRestriction\": - {\n \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\",\n \"$ref\": - \"AccessPolicy\"\n },\n \"dimension\": {\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\",\n \"type\": \"string\"\n },\n \"projection\": - {\n \"description\": \"Specifies the projection format of the video.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ]\n }\n },\n \"id\": \"VideoContentDetails\",\n - \ \"description\": \"Details about the content of a YouTube Video.\",\n - \ \"type\": \"object\"\n },\n \"MembershipsDurationAtLevel\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"level\": {\n - \ \"type\": \"string\",\n \"description\": \"Pricing level - ID.\"\n },\n \"memberTotalDurationMonths\": {\n \"format\": - \"int32\",\n \"type\": \"integer\",\n \"description\": \"The - cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\"\n },\n - \ \"memberSince\": {\n \"description\": \"The date and time - when the user became a continuous member for the given level.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"MembershipsDurationAtLevel\"\n - \ },\n \"Video\": {\n \"id\": \"Video\",\n \"properties\": - {\n \"processingDetails\": {\n \"description\": \"The processingDetails - object encapsulates information about YouTube's progress in processing the - uploaded video file. The properties in the object identify the current processing - status and an estimate of the time remaining until YouTube finishes processing - the video. This part also indicates whether different types of data or content, - such as file details or thumbnail images, are available for the video. The - processingProgress object is designed to be polled so that the video uploaded - can track the progress that YouTube has made in processing the uploaded video - file. This data can only be retrieved by the video owner.\",\n \"$ref\": - \"VideoProcessingDetails\"\n },\n \"projectDetails\": {\n \"description\": - \"The projectDetails object contains information about the project specific - video metadata. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"topicDetails\": - {\n \"$ref\": \"VideoTopicDetails\",\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\"\n },\n \"suggestions\": {\n \"$ref\": - \"VideoSuggestions\",\n \"description\": \"The suggestions object - encapsulates suggestions that identify opportunities to improve the video - quality or the metadata for the uploaded video. This data can only be retrieved - by the video owner.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the video's uploading, processing, - and privacy statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"VideoLocalization\"\n },\n \"type\": \"object\",\n \"description\": - \"The localizations object contains localized versions of the basic details - about the video, such as its title and description.\"\n },\n \"monetizationDetails\": - {\n \"description\": \"The monetizationDetails object encapsulates - information about the monetization status of the video.\",\n \"$ref\": - \"VideoMonetizationDetails\"\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the video - in an embedded player.\",\n \"$ref\": \"VideoPlayer\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"VideoContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\"\n },\n \"ageGating\": {\n \"description\": - \"Age restriction details related to a video. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoAgeGating\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"liveStreamingDetails\": - {\n \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\",\n \"$ref\": - \"VideoLiveStreamingDetails\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video, such as its title, - description, and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the video.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n }\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#video\\\".\",\n \"default\": - \"youtube#video\"\n },\n \"recordingDetails\": {\n \"$ref\": - \"VideoRecordingDetails\",\n \"description\": \"The recordingDetails - object encapsulates information about the location, date and address where - the video was recorded.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains statistics about the video.\",\n \"$ref\": - \"VideoStatistics\"\n },\n \"fileDetails\": {\n \"description\": - \"The fileDetails object encapsulates information about the video file that - was uploaded to YouTube, including the file's resolution, duration, audio - and video codecs, stream bitrates, and more. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A *video* - resource represents a YouTube video.\"\n },\n \"PlaylistStatus\": {\n - \ \"type\": \"object\",\n \"id\": \"PlaylistStatus\",\n \"properties\": - {\n \"privacyStatus\": {\n \"description\": \"The playlist's - privacy status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n }\n }\n },\n \"TokenPagination\": {\n \"properties\": - {},\n \"description\": \"Stub token pagination template to suppress results.\",\n - \ \"id\": \"TokenPagination\",\n \"type\": \"object\"\n },\n \"ThumbnailDetails\": - {\n \"properties\": {\n \"default\": {\n \"description\": - \"The default image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"standard\": {\n \"description\": \"The standard - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"maxres\": {\n \"description\": \"The maximum resolution - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"high\": {\n \"description\": \"The high quality image for - this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"medium\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The medium - quality image for this resource.\"\n }\n },\n \"id\": \"ThumbnailDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Internal representation - of thumbnails for a YouTube resource.\"\n },\n \"PlaylistLocalization\": - {\n \"properties\": {\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for playlist's - description.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for playlist's title.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Playlist - localization setting\",\n \"id\": \"PlaylistLocalization\"\n },\n - \ \"VideoProjectDetails\": {\n \"description\": \"DEPRECATED. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"properties\": {},\n \"id\": \"VideoProjectDetails\",\n \"type\": - \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": {\n - \ \"description\": \"Video processing progress and completion time estimate.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"timeLeftMs\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\"\n },\n \"partsProcessed\": {\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of parts of the video that YouTube has already processed. You can estimate - the percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\",\n \"type\": - \"string\"\n },\n \"partsTotal\": {\n \"description\": - \"An estimate of the total number of parts that need to be processed for the - video. The number may be updated with more precise estimates while YouTube - processes the video.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"VideoSuggestions\": {\n \"properties\": {\n \"tagSuggestions\": - {\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\"\n },\n \"editorSuggestions\": {\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ],\n - \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"processingHints\": - {\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ]\n - \ },\n \"description\": \"A list of suggestions that may - improve YouTube's ability to process the video.\",\n \"type\": \"array\"\n - \ },\n \"processingWarnings\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of reasons why YouTube may have difficulty - transcoding the uploaded video or that might result in an erroneous transcoding. - These warnings are generated before YouTube actually processes the uploaded - video file. In addition, they identify issues that are unlikely to cause the - video processing to fail but that might cause problems such as sync issues, - video artifacts, or a missing audio track.\",\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ]\n }\n - \ },\n \"processingErrors\": {\n \"description\": \"A - list of errors that will prevent YouTube from successfully processing the - uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\",\n \"items\": {\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ]\n },\n \"type\": \"array\"\n - \ }\n },\n \"description\": \"Specifies suggestions on how - to improve video content, including encoding hints, tag suggestions, and editor - suggestions.\",\n \"type\": \"object\",\n \"id\": \"VideoSuggestions\"\n - \ },\n \"LiveStreamStatus\": {\n \"description\": \"Brief description - of the live stream status.\",\n \"id\": \"LiveStreamStatus\",\n \"type\": - \"object\",\n \"properties\": {\n \"healthStatus\": {\n \"$ref\": - \"LiveStreamHealthStatus\",\n \"description\": \"The health status - of the stream.\"\n },\n \"streamStatus\": {\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n }\n - \ }\n },\n \"ActivityContentDetailsBulletin\": {\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource associated with a - bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"description\": \"Details about - a channel bulletin post.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsBulletin\"\n - \ },\n \"LiveBroadcastListResponse\": {\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"default\": \"youtube#liveBroadcastListResponse\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"items\": {\n \"description\": \"A list of broadcasts - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"type\": \"array\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"CommentListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"description\": - \"A list of comments that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"type\": \"array\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ }\n },\n \"id\": \"CommentListResponse\",\n \"type\": - \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"properties\": - {\n \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the Level at which the viewer is a member. This matches the - `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated - membership gifting message. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\"\n },\n - \ \"gifterChannelId\": {\n \"description\": \"The ID of the - user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\",\n \"type\": \"string\"\n - \ },\n \"associatedMembershipGiftingMessageId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the membership gifting - message that is related to this gift membership. This ID will always refer - to a message whose type is 'membershipGiftingEvent'.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"VideoMonetizationDetails\": {\n \"properties\": {\n \"access\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - value of access indicates whether the video can be monetized or not.\"\n }\n - \ },\n \"id\": \"VideoMonetizationDetails\",\n \"type\": \"object\",\n - \ \"description\": \"Details about monetization of a YouTube Video.\"\n - \ },\n \"LocalizedProperty\": {\n \"properties\": {\n \"defaultLanguage\": - {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The - language of the default property.\"\n },\n \"default\": {\n - \ \"type\": \"string\"\n },\n \"localized\": {\n \"items\": - {\n \"$ref\": \"LocalizedString\"\n },\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LocalizedProperty\"\n },\n \"RelatedEntity\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"entity\": {\n \"$ref\": \"Entity\"\n - \ }\n },\n \"id\": \"RelatedEntity\"\n },\n \"ThirdPartyLinkStatus\": - {\n \"type\": \"object\",\n \"description\": \"The third-party link - status object contains information about the status of the link.\",\n \"id\": - \"ThirdPartyLinkStatus\",\n \"properties\": {\n \"linkStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ]\n }\n }\n },\n \"AbuseReport\": - {\n \"properties\": {\n \"description\": {\n \"type\": - \"string\"\n },\n \"abuseTypes\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"AbuseType\"\n }\n - \ },\n \"relatedEntities\": {\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n },\n \"type\": \"array\"\n },\n - \ \"subject\": {\n \"$ref\": \"Entity\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"AbuseReport\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"properties\": {\n \"author\": {\n \"description\": - \"The author of the social network post.\",\n \"type\": \"string\"\n - \ },\n \"imageUrl\": {\n \"description\": \"An image - of the post's author.\",\n \"type\": \"string\"\n },\n \"referenceUrl\": - {\n \"description\": \"The URL of the social network post.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"description\": \"The - name of the social network.\",\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsSocial\",\n \"description\": - \"Details about a social network post.\",\n \"type\": \"object\"\n },\n - \ \"VideoAbuseReportReason\": {\n \"type\": \"object\",\n \"id\": - \"VideoAbuseReportReason\",\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#videoAbuseReportReason\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the abuse report reason.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID of this abuse report reason.\"\n }\n }\n },\n \"ActivityContentDetailsFavorite\": - {\n \"id\": \"ActivityContentDetailsFavorite\",\n \"type\": \"object\",\n - \ \"description\": \"Information about a video that was marked as a favorite - video.\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"ContentRating\": {\n \"description\": \"Ratings - schemes. The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n - \ \"properties\": {\n \"djctqRating\": {\n \"enum\": [\n - \ \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n - \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n - \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n - \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n - \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n - \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n - \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n - \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n - \ ],\n \"description\": \"The video's Departamento de Justi\xE7a, - Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"L\",\n \"10\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"mccypRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"7\",\n \"11\",\n \"15\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ]\n },\n - \ \"cceRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"4\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\",\n \"14\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ],\n \"description\": \"The video's - rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\"\n - \ },\n \"mpaatRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"GB\",\n \"RB\"\n ],\n - \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ],\n \"type\": \"string\",\n \"description\": - \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n - \ },\n \"cscfRating\": {\n \"description\": \"The video's - rating from Luxembourg's Commission de surveillance de la classification des - films (CSCF).\",\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ]\n },\n - \ \"fmocRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"E\",\n \"\"\n ],\n - \ \"description\": \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"type\": \"string\",\n \"enum\": [\n \"fmocUnspecified\",\n - \ \"fmocU\",\n \"fmoc10\",\n \"fmoc12\",\n - \ \"fmoc16\",\n \"fmoc18\",\n \"fmocE\",\n - \ \"fmocUnrated\"\n ]\n },\n \"ilfilmRating\": - {\n \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in Israel.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"mccaaRating\": {\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Malta's Film Age-Classification Board.\"\n },\n \"smaisRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ],\n \"description\": \"The - video's rating in Iceland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"L\",\n \"7\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"kmrbRating\": {\n \"description\": \"The video's - Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enum\": [\n - \ \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ]\n },\n \"eefilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Estonia.\",\n - \ \"type\": \"string\"\n },\n \"ytRating\": {\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n - \ \"type\": \"string\"\n },\n \"ifcoRating\": {\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\",\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"russiaRating\": - {\n \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - National Film Registry of the Russian Federation (MKRF - Russia) rating.\"\n - \ },\n \"mibacRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n - \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n - \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Ministero - dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\"\n },\n - \ \"chvrsRating\": {\n \"description\": \"The video's Canadian - Home Video Rating System (CHVRS) rating.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"chvrsUnspecified\",\n \"chvrsG\",\n - \ \"chvrsPg\",\n \"chvrs14a\",\n \"chvrs18a\",\n - \ \"chvrsR\",\n \"chvrsE\",\n \"chvrsUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ]\n },\n \"cncRating\": - {\n \"description\": \"Rating system in France - Commission de classification - cinematographique\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ]\n },\n \"menaMpaaRating\": - {\n \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ]\n - \ },\n \"tvpgRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"description\": \"The - video's TV Parental Guidelines (TVPG) rating.\",\n \"type\": \"string\"\n - \ },\n \"oflcRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"description\": \"The video's - Office of Film and Literature Classification (OFLC - New Zealand) rating.\",\n - \ \"type\": \"string\"\n },\n \"nmcRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ],\n \"description\": \"The - National Media Council ratings system for United Arab Emirates.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ]\n },\n \"icaaRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"enum\": - [\n \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n - \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n - \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ]\n },\n - \ \"bbfcRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's British Board of Film Classification (BBFC) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ],\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ]\n },\n - \ \"nbcplRating\": {\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Poland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"agcomRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n - \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ]\n - \ },\n \"mpaaRating\": {\n \"description\": \"The video's - Motion Picture Association of America (MPAA) rating.\",\n \"enum\": - [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n - \ \"! X\",\n \"\"\n ]\n },\n \"djctqRatingReasons\": - {\n \"items\": {\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"Reasons that - explain why the video received its DJCQT (Brazil) rating.\"\n },\n - \ \"resorteviolenciaRating\": {\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Venezuela.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ]\n },\n - \ \"chfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"0\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"chfilmUnspecified\",\n \"chfilm0\",\n \"chfilm6\",\n - \ \"chfilm12\",\n \"chfilm16\",\n \"chfilm18\",\n - \ \"chfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Switzerland.\"\n },\n - \ \"grfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n - \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Greece.\",\n - \ \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n - \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n - \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n - \ \"grfilmUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"cccRating\": {\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Todo - espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n - \ \"14+\",\n \"18+\",\n \"18+ - contenido - excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\"\n - \ },\n \"mocRating\": {\n \"enum\": [\n \"mocUnspecified\",\n - \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n - \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Ministerio de Cultura (Colombia) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ]\n },\n \"lsfRating\": {\n \"enum\": [\n - \ \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Indonesia's - Lembaga Sensor Film.\",\n \"type\": \"string\"\n },\n \"smsaRating\": - {\n \"description\": \"The video's rating from Statens medier\xE5d - (Sweden's National Media Council).\",\n \"type\": \"string\",\n \"enum\": - [\n \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"All - ages\",\n \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ]\n },\n \"rtcRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n - \ \"D\",\n \"\"\n ],\n \"enum\": [\n - \ \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ],\n \"description\": \"The - video's General Directorate of Radio, Television and Cinematography (Mexico) - rating.\"\n },\n \"nbcRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Maldives National - Bureau of Classification.\",\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ]\n },\n \"fpbRating\": {\n \"enum\": - [\n \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n - \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n - \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ]\n },\n \"mtrcbRating\": - {\n \"description\": \"The video's rating from the Movie and Television - Review and Classification Board (Philippines).\",\n \"enum\": [\n - \ \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n - \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n - \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"incaaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"description\": \"The video's INCAA (Instituto Nacional - de Cine y Artes Audiovisuales - Argentina) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ]\n },\n \"rteRating\": - {\n \"description\": \"The video's rating from Ireland's Raidi\xF3 - Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GA\",\n \"CH\",\n \"PS\",\n \"MA\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ]\n },\n \"catvfrRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"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.\",\n \"type\": \"string\",\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ]\n },\n \"ecbmctRating\": - {\n \"description\": \"Rating system in Turkey - Evaluation and Classification - Board of the Ministry of Culture and Tourism\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ],\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"skfilmRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Slovakia.\",\n \"enum\": - [\n \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n - \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ]\n },\n \"catvRating\": {\n \"description\": - \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ]\n },\n \"nkclvRating\": {\n \"enum\": [\n - \ \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n - \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n - \ \"nkclvUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Nacion\xE3lais Kino - centrs (National Film Centre of Latvia).\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"acbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"E\",\n \"Programs that have been - given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"mdaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Singapore's - Media Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\"\n },\n \"bmukkRating\": {\n \"enum\": [\n - \ \"bmukkUnspecified\",\n \"bmukkAa\",\n \"bmukk6\",\n - \ \"bmukk8\",\n \"bmukk10\",\n \"bmukk12\",\n - \ \"bmukk14\",\n \"bmukk16\",\n \"bmukkUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\"\n },\n \"medietilsynetRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Medietilsynet, the Norwegian Media Authority.\"\n - \ },\n \"egfilmRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Egypt.\",\n \"enum\": - [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n \"egfilm18\",\n - \ \"egfilmBn\",\n \"egfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ]\n },\n \"rcnofRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Hungarian - Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"kijkwijzerRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating - from the Nederlands Instituut voor de Classificatie van Audiovisuele Media - (Netherlands).\"\n },\n \"eirinRating\": {\n \"enum\": - [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\"\n - \ },\n \"cnaRating\": {\n \"description\": \"The video's - rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ]\n },\n - \ \"moctwRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P\",\n \"PG\",\n \"R\",\n - \ \"\",\n \"R-12\",\n \"R-15\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"moctwUnspecified\",\n - \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n - \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n - \ \"moctwR15\"\n ],\n \"description\": \"The video's - rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\"\n },\n - \ \"bfvcRating\": {\n \"description\": \"The video's rating - from Thailand's Board of Film and Video Censors.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ]\n },\n \"fpbRatingReasons\": {\n - \ \"items\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"South Africa rating content descriptors.\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ]\n },\n - \ \"description\": \"Reasons that explain why the video received its - FPB (South Africa) rating.\",\n \"type\": \"array\"\n },\n - \ \"anatelRating\": {\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n - \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"kfcbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Kenya - Film Classification Board.\",\n \"enum\": [\n \"kfcbUnspecified\",\n - \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n - \ \"kfcbR\",\n \"kfcbUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"fskRating\": {\n \"enum\": [\n - \ \"fskUnspecified\",\n \"fsk0\",\n \"fsk6\",\n - \ \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n \"fskUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle - der Filmwirtschaft (FSK - Germany) rating.\"\n },\n \"csaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ],\n \"enum\": - [\n \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n - \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n - \ \"csaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from France's Conseil sup\xE9rieur - de l\u2019audiovisuel, which rates broadcast content.\"\n },\n \"cbfcRating\": - {\n \"description\": \"The video's Central Board of Film Certification - (CBFC - India) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ]\n },\n \"fcoRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Hong Kong's Office for - Film, Newspaper and Article Administration.\",\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ]\n },\n - \ \"pefilmRating\": {\n \"description\": \"The video's rating - in Peru.\",\n \"enumDescriptions\": [\n \"\",\n \"PT\",\n - \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ]\n },\n - \ \"mcstRating\": {\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"description\": - \"The video's rating system for Vietnam - MCST\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ]\n - \ },\n \"nfvcbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Nigeria's National Film and Video Censors Board.\",\n \"enum\": - [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n \"nfvcbPg\",\n - \ \"nfvcb12\",\n \"nfvcb12a\",\n \"nfvcb15\",\n - \ \"nfvcb18\",\n \"nfvcbRe\",\n \"nfvcbUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"nfrcRating\": - {\n \"description\": \"The video's rating from the Bulgarian National - Film Center.\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ]\n },\n \"mekuRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Finland's Kansallinen - Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ]\n },\n - \ \"cicfRating\": {\n \"description\": \"The video's rating - from the Commission de Contr\xF4le des Films (Belgium).\",\n \"enum\": - [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"fcbmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG13\",\n \"P13\",\n \"18\",\n - \ \"18SX\",\n \"18PA\",\n \"18SG\",\n \"18PL\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"enum\": - [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ]\n },\n \"czfilmRating\": - {\n \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n - \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n - \ \"czfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in the Czech - Republic.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ContentRating\"\n },\n \"LevelDetails\": {\n \"id\": \"LevelDetails\",\n - \ \"properties\": {\n \"displayName\": {\n \"description\": - \"The name that should be used when referring to this level.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelSection\": - {\n \"properties\": {\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\"\n - \ },\n \"targeting\": {\n \"description\": \"The targeting - object contains basic targeting settings about the channel section.\",\n \"$ref\": - \"ChannelSectionTargeting\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\",\n \"$ref\": \"ChannelSectionSnippet\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelSection\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel section.\"\n }\n },\n - \ \"id\": \"ChannelSection\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"id\": \"ActivityContentDetailsSubscription\",\n \"description\": - \"Information about a channel that a user subscribed to.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that the user subscribed - to.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatSuperChatDetails\": {\n \"properties\": - {\n \"userComment\": {\n \"description\": \"The comment added - by the user to this Super Chat event.\",\n \"type\": \"string\"\n - \ },\n \"amountMicros\": {\n \"description\": \"The - amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"tier\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\"\n },\n - \ \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatSuperChatDetails\"\n },\n \"AccessPolicy\": - {\n \"properties\": {\n \"exception\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the default policy do not apply.\"\n },\n \"allowed\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of allowed indicates whether the access to the policy is allowed or denied - by default.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"AccessPolicy\",\n \"description\": \"Rights management policy for YouTube - resources.\"\n },\n \"InvideoBranding\": {\n \"id\": \"InvideoBranding\",\n - \ \"type\": \"object\",\n \"description\": \"LINT.IfChange Describes - an invideo branding.\",\n \"properties\": {\n \"position\": {\n - \ \"$ref\": \"InvideoPosition\",\n \"description\": \"The - spatial position within the video where the branding watermark will be displayed.\"\n - \ },\n \"imageUrl\": {\n \"description\": \"The url - of the uploaded image. Only used in apiary to api communication.\",\n \"type\": - \"string\"\n },\n \"targetChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The channel to which this branding - links. If not present it defaults to the current channel.\"\n },\n - \ \"timing\": {\n \"$ref\": \"InvideoTiming\",\n \"description\": - \"The temporal position within the video where watermark will be displayed.\"\n - \ },\n \"imageBytes\": {\n \"type\": \"string\",\n \"format\": - \"byte\",\n \"description\": \"The bytes the uploaded image. Only - used in api to youtube communication.\"\n }\n }\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of this abuse report secondary reason.\"\n - \ },\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label for this abuse report secondary reason.\"\n }\n - \ },\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"type\": - \"object\"\n },\n \"GeoPoint\": {\n \"id\": \"GeoPoint\",\n \"description\": - \"Geographical coordinates of a point, in WGS84.\",\n \"properties\": - {\n \"longitude\": {\n \"type\": \"number\",\n \"description\": - \"Longitude in degrees.\",\n \"format\": \"double\"\n },\n - \ \"latitude\": {\n \"type\": \"number\",\n \"description\": - \"Latitude in degrees.\",\n \"format\": \"double\"\n },\n - \ \"altitude\": {\n \"type\": \"number\",\n \"format\": - \"double\",\n \"description\": \"Altitude above the reference ellipsoid, - in meters.\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelStatistics\": - {\n \"type\": \"object\",\n \"description\": \"Statistics about - a channel: number of subscribers, number of videos in the channel, etc.\",\n - \ \"id\": \"ChannelStatistics\",\n \"properties\": {\n \"subscriberCount\": - {\n \"description\": \"The number of subscribers that the channel - has.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"videoCount\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of videos uploaded to - the channel.\"\n },\n \"commentCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of comments for the channel.\",\n - \ \"format\": \"uint64\"\n },\n \"viewCount\": {\n \"description\": - \"The number of times the channel has been viewed.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"hiddenSubscriberCount\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the number of subscribers is shown for this user.\"\n }\n }\n - \ },\n \"I18nLanguageSnippet\": {\n \"properties\": {\n \"name\": - {\n \"description\": \"The human-readable name of the language in - the language itself.\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"description\": \"A short BCP-47 - code that uniquely identifies a language.\"\n }\n },\n \"id\": - \"I18nLanguageSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\"\n },\n \"ActivityContentDetailsChannelItem\": {\n \"id\": - \"ActivityContentDetailsChannelItem\",\n \"description\": \"Details about - a resource which was added to a channel.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"PlaylistItemStatus\": {\n \"type\": \"object\",\n - \ \"id\": \"PlaylistItemStatus\",\n \"description\": \"Information - about the playlist item's privacy status.\",\n \"properties\": {\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"This resource's privacy status.\"\n - \ }\n }\n },\n \"Playlist\": {\n \"id\": \"Playlist\",\n - \ \"type\": \"object\",\n \"description\": \"A *playlist* resource - represents a YouTube playlist. A playlist is a collection of videos that can - be viewed sequentially and shared with other users. A playlist can contain - up to 200 videos, and YouTube does not limit the number of playlists that - each user creates. By default, playlists are publicly visible to other users, - but playlists can be public or private. YouTube also uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n - \ \"properties\": {\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the playlist, such as its title and description.\",\n - \ \"$ref\": \"PlaylistSnippet\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlist\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlist\\\".\"\n },\n \"status\": - {\n \"$ref\": \"PlaylistStatus\",\n \"description\": \"The - status object contains status information for the playlist.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"PlaylistContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - like video count.\"\n },\n \"player\": {\n \"$ref\": - \"PlaylistPlayer\",\n \"description\": \"The player object contains - information that you would use to play the playlist in an embedded player.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"ChannelContentDetails\": - {\n \"properties\": {\n \"relatedPlaylists\": {\n \"type\": - \"object\",\n \"properties\": {\n \"watchLater\": {\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s watch later playlist. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"watchHistory\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"favorites\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s favorite videos. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"likes\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"uploads\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s uploaded videos. Use the - videos.insert method to upload new videos and the videos.delete method to - delete previously uploaded videos.\"\n }\n }\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelContentDetails\",\n - \ \"description\": \"Details about the content of a channel.\"\n },\n - \ \"ActivityContentDetailsUpload\": {\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the uploaded video.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsUpload\",\n - \ \"description\": \"Information about the uploaded video.\"\n },\n - \ \"Thumbnail\": {\n \"id\": \"Thumbnail\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"width\": {\n \"format\": \"uint32\",\n - \ \"description\": \"(Optional) Width of the thumbnail image.\",\n - \ \"type\": \"integer\"\n },\n \"height\": {\n \"format\": - \"uint32\",\n \"description\": \"(Optional) Height of the thumbnail - image.\",\n \"type\": \"integer\"\n },\n \"url\": {\n - \ \"description\": \"The thumbnail image's URL.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"A thumbnail is an - image representing a YouTube resource.\"\n },\n \"ChannelBrandingSettings\": - {\n \"type\": \"object\",\n \"description\": \"Branding properties - of a YouTube channel.\",\n \"id\": \"ChannelBrandingSettings\",\n \"properties\": - {\n \"hints\": {\n \"items\": {\n \"$ref\": \"PropertyValue\"\n - \ },\n \"type\": \"array\",\n \"description\": \"Additional - experimental branding properties.\"\n },\n \"watch\": {\n \"description\": - \"Branding properties for the watch page.\",\n \"$ref\": \"WatchSettings\"\n - \ },\n \"channel\": {\n \"description\": \"Branding - properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n - \ },\n \"image\": {\n \"description\": \"Branding properties - for branding images.\",\n \"$ref\": \"ImageSettings\"\n }\n - \ }\n },\n \"SubscriptionSnippet\": {\n \"properties\": {\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The subscription's details.\"\n },\n \"channelTitle\": {\n - \ \"description\": \"Channel title for the channel that the subscription - belongs to.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The subscription's - title.\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\"\n - \ },\n \"resourceId\": {\n \"description\": \"The id - object contains information about the channel that the user subscribed to.\",\n - \ \"$ref\": \"ResourceId\",\n \"annotations\": {\n \"required\": - [\n \"youtube.subscriptions.insert\"\n ]\n }\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the subscription was created.\"\n }\n },\n \"id\": - \"SubscriptionSnippet\",\n \"description\": \"Basic details about a subscription, - including title, description and thumbnails of the subscribed item.\",\n \"type\": - \"object\"\n },\n \"LiveChatModerator\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatModerator\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatModerator\"\n }\n - \ },\n \"description\": \"A *liveChatModerator* resource represents - a moderator for a YouTube live chat. A chat moderator has the ability to ban/unban - users from a chat, remove message, etc.\"\n },\n \"LiveChatBanSnippet\": - {\n \"id\": \"LiveChatBanSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"banDurationSeconds\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The duration of a ban, only filled - if the ban has type TEMPORARY.\"\n },\n \"liveChatId\": {\n - \ \"type\": \"string\",\n \"description\": \"The chat this - ban is pertinent to.\"\n },\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"type\": {\n \"enum\": - [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"description\": \"The - type of ban.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ]\n }\n }\n },\n - \ \"Channel\": {\n \"description\": \"A *channel* resource contains - information about a YouTube channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#channel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"type\": \"string\"\n },\n \"conversionPings\": {\n - \ \"$ref\": \"ChannelConversionPings\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\"\n },\n \"status\": - {\n \"description\": \"The status object encapsulates information - about the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n - \ },\n \"topicDetails\": {\n \"description\": \"The - topicDetails object encapsulates information about Freebase topics associated - with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"brandingSettings\": {\n \"description\": \"The - brandingSettings object encapsulates information about the branding of the - channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel.\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n },\n \"description\": - \"Localizations for different languages\"\n },\n \"contentOwnerDetails\": - {\n \"description\": \"The contentOwnerDetails object encapsulates - channel data that is relevant for YouTube Partners linked with the channel.\",\n - \ \"$ref\": \"ChannelContentOwnerDetails\"\n },\n \"auditDetails\": - {\n \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\",\n - \ \"$ref\": \"ChannelAuditDetails\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ChannelContentDetails\",\n \"description\": \"The contentDetails - object encapsulates information about the channel's content.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the channel, such as its title, description, and thumbnail - images.\",\n \"$ref\": \"ChannelSnippet\"\n }\n },\n - \ \"id\": \"Channel\"\n },\n \"LiveStreamListResponse\": {\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"default\": \"youtube#liveStreamListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"items\": {\n \"description\": - \"A list of live streams that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n - \ }\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveStreamListResponse\",\n \"type\": - \"object\"\n },\n \"VideoListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoListResponse\",\n \"properties\": {\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Video\"\n },\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n }\n },\n \"LiveBroadcastStatistics\": - {\n \"description\": \"Statistics about the live broadcast. These represent - a snapshot of the values at the time of the request. Statistics are only returned - for live broadcasts.\",\n \"properties\": {\n \"totalChatCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The total - number of live chat messages currently on the broadcast. The property and - its value will be present if the broadcast is public, has the live chat feature - enabled, and has at least one message. Note that this field will not be filled - after the broadcast ends. So this property would not identify the number of - chat messages for an archived video of a completed live broadcast.\",\n \"type\": - \"string\"\n },\n \"concurrentViewers\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of viewers currently watching the broadcast. The property and its value - will be present if the broadcast has current viewers and the broadcast owner - has not hidden the viewcount for the video. Note that YouTube stops tracking - the number of concurrent viewers for a broadcast when the broadcast ends. - So, this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\"\n }\n },\n \"id\": - \"LiveBroadcastStatistics\",\n \"type\": \"object\"\n },\n \"ChannelTopicDetails\": - {\n \"description\": \"Freebase topic information related to the channel.\",\n - \ \"id\": \"ChannelTopicDetails\",\n \"properties\": {\n \"topicIds\": - {\n \"description\": \"A list of Freebase topic IDs associated with - the channel. You can retrieve information about each topic using the Freebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"topicCategories\": - {\n \"description\": \"A list of Wikipedia URLs that describe the - channel's content.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\"\n },\n \"I18nRegionListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"default\": \"youtube#i18nRegionListResponse\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"I18nRegion\"\n - \ },\n \"description\": \"A list of regions where YouTube - is available. In this map, the i18n region ID is the map key, and its value - is the corresponding i18nRegion resource.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"I18nRegionListResponse\"\n },\n \"LanguageTag\": {\n \"type\": - \"object\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LanguageTag\"\n },\n \"MembershipsDuration\": - {\n \"properties\": {\n \"memberSince\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the user - became a continuous member across all levels.\"\n },\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - across all levels in complete months (the time is rounded down to the nearest - integer).\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ }\n },\n \"id\": \"MembershipsDuration\",\n \"type\": - \"object\"\n },\n \"VideoCategorySnippet\": {\n \"properties\": - {\n \"assignable\": {\n \"type\": \"boolean\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The video category's title.\"\n },\n \"channelId\": {\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"type\": \"string\",\n \"description\": - \"The YouTube channel that created the video category.\"\n }\n },\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\",\n \"id\": \"VideoCategorySnippet\",\n \"type\": - \"object\"\n },\n \"ThumbnailSetResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#thumbnailSetResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"description\": - \"A list of thumbnails.\",\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"type\": \"array\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ThumbnailSetResponse\"\n - \ },\n \"VideoLocalization\": {\n \"description\": \"Localized versions - of certain video properties (e.g. title).\",\n \"type\": \"object\",\n - \ \"id\": \"VideoLocalization\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's title.\"\n },\n \"description\": {\n - \ \"type\": \"string\",\n \"description\": \"Localized version - of the video's description.\"\n }\n }\n },\n \"ThirdPartyLink\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#thirdPartyLink\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n - \ },\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the third- party account link.\",\n \"$ref\": - \"ThirdPartyLinkSnippet\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource\"\n },\n - \ \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The status object contains information about the status of the link.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ThirdPartyLink\",\n - \ \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\"\n },\n \"VideoCategoryListResponse\": {\n \"id\": \"VideoCategoryListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"description\": \"A list of video categories that can be associated - with YouTube videos. In this map, the video category ID is the map key, and - its value is the corresponding videoCategory resource.\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n },\n \"type\": - \"array\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoCategoryListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"VideoProcessingDetails\": {\n \"type\": \"object\",\n \"id\": - \"VideoProcessingDetails\",\n \"properties\": {\n \"processingFailureReason\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"uploadFailed\",\n - \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n - \ ]\n },\n \"fileDetailsAvailability\": {\n \"description\": - \"This value indicates whether file details are available for the uploaded - video. You can retrieve a video's file details by requesting the fileDetails - part in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"tagSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether keyword (tag) suggestions are available for the video. - Tags can be added to a video's metadata to make it easier for other users - to find the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"processingStatus\": {\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"processingProgress\": {\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"processingIssuesAvailability\": {\n \"description\": - \"This value indicates whether the video processing engine has generated suggestions - that might improve YouTube's ability to process the the video, warnings that - explain video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"thumbnailsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether thumbnail images have been generated for the video.\"\n - \ },\n \"editorSuggestionsAvailability\": {\n \"description\": - \"This value indicates whether video editing suggestions, which might improve - video quality or the playback experience, are available for the video. You - can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"id\": \"LiveStreamConfigurationIssue\",\n \"properties\": - {\n \"description\": {\n \"description\": \"The long-form - description of the issue and how to resolve it.\",\n \"type\": \"string\"\n - \ },\n \"reason\": {\n \"type\": \"string\",\n \"description\": - \"The short-form reason for this issue.\"\n },\n \"type\": {\n - \ \"description\": \"The kind of error happening.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n - \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n - \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n - \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n - \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n - \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ]\n },\n \"severity\": {\n \"type\": \"string\",\n - \ \"description\": \"How severe this issue is to the stream.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"info\",\n - \ \"warning\",\n \"error\"\n ]\n }\n - \ },\n \"type\": \"object\"\n },\n \"PageInfo\": {\n \"type\": - \"object\",\n \"properties\": {\n \"totalResults\": {\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The total number of results in the result set.\"\n },\n \"resultsPerPage\": - {\n \"type\": \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The number of results included in the API response.\"\n }\n },\n - \ \"id\": \"PageInfo\",\n \"description\": \"Paging details for lists - of resources, including total number of items available and number of resources - returned in a single page.\"\n },\n \"WatchSettings\": {\n \"description\": - \"Branding properties for the watch. All deprecated.\",\n \"id\": \"WatchSettings\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"textColor\": - {\n \"type\": \"string\",\n \"description\": \"The background - color for the video watch page's branded area.\"\n },\n \"featuredPlaylistId\": - {\n \"type\": \"string\",\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\"\n - \ },\n \"backgroundColor\": {\n \"description\": \"The - text color for the video watch page's branded area.\",\n \"type\": - \"string\"\n }\n }\n },\n \"Activity\": {\n \"id\": - \"Activity\",\n \"properties\": {\n \"contentDetails\": {\n \"$ref\": - \"ActivityContentDetails\",\n \"description\": \"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.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the activity.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#activity\\\".\",\n \"default\": \"youtube#activity\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the activity, including the activity's type and group ID.\"\n }\n },\n - \ \"description\": \"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.\",\n \"type\": \"object\"\n },\n - \ \"SearchResult\": {\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#searchResult\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"SearchResultSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - a search result, such as its title or description. For example, if the search - result is a video, then the title will be the video's title and the description - will be the video's description.\"\n }\n },\n \"description\": - \"A search result contains information about a YouTube video, channel, or - playlist that matches the search parameters specified in an API request. While - a search result points to a uniquely identifiable resource, like a video, - it does not have its own persistent data.\",\n \"id\": \"SearchResult\"\n - \ },\n \"LiveChatMessageSnippet\": {\n \"properties\": {\n \"textMessageDetails\": - {\n \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\",\n \"$ref\": \"LiveChatTextMessageDetails\"\n - \ },\n \"superStickerDetails\": {\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"fanFundingEventDetails\": - {\n \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"superChatDetails\": {\n \"description\": \"Details - about the Super Chat event, this is only set if the type is 'superChatEvent'.\",\n - \ \"$ref\": \"LiveChatSuperChatDetails\"\n },\n \"authorChannelId\": - {\n \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\",\n \"type\": \"string\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n },\n \"newSponsorDetails\": - {\n \"description\": \"Details about the New Member Announcement - event, this is only set if the type is 'newSponsorEvent'. Please note that - \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n \"$ref\": - \"LiveChatNewSponsorDetails\"\n },\n \"displayMessage\": {\n - \ \"type\": \"string\",\n \"description\": \"Contains a string - that can be displayed to the user. If this field is not present the message - is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"hasDisplayContent\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the message has display - content that should be displayed to users.\"\n },\n \"type\": - {\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ],\n \"description\": \"The type of message, this will - always be present, it determines the contents of the message as well as which - fields will be present.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"giftMembershipReceivedDetails\": {\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\",\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time when the message was orignally published.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n }\n },\n \"id\": - \"LiveChatMessageSnippet\",\n \"type\": \"object\",\n \"description\": - \"Next ID: 33\"\n },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"id\": - \"LiveChatMemberMilestoneChatDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the Level at which the viever is a member. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n },\n \"userComment\": {\n \"type\": - \"string\",\n \"description\": \"The comment added by the member - to this Member Milestone Chat. This field is empty for messages without a - comment from the member.\"\n },\n \"memberMonth\": {\n \"type\": - \"integer\",\n \"description\": \"The total amount of months (rounded - up) the viewer has been a member that granted them this Member Milestone Chat. - This is the same number of months as is being displayed to YouTube users.\",\n - \ \"format\": \"uint32\"\n }\n }\n },\n \"ChannelContentOwnerDetails\": - {\n \"id\": \"ChannelContentOwnerDetails\",\n \"type\": \"object\",\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"properties\": - {\n \"timeLinked\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the channel - was linked to the content owner.\"\n },\n \"contentOwner\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the content owner linked to the channel.\"\n }\n }\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the promoted video.\",\n \"type\": - \"string\"\n },\n \"ctaType\": {\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"forecastingUrl\": - {\n \"description\": \"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.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"adTag\": {\n \"type\": \"string\",\n \"description\": - \"The URL the client should fetch to request a promoted item.\"\n },\n - \ \"destinationUrl\": {\n \"type\": \"string\",\n \"description\": - \"The URL the client should direct the user to, if the user chooses to visit - the advertiser's website.\"\n },\n \"creativeViewUrl\": {\n - \ \"description\": \"The URL the client should ping to indicate that - the user was shown this promoted item.\",\n \"type\": \"string\"\n - \ },\n \"clickTrackingUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should ping to indicate that - the user clicked through on this promoted item.\"\n },\n \"impressionUrl\": - {\n \"description\": \"The list of impression URLs. The client should - ping all of these URLs to indicate that the user was shown this promoted item.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"descriptionText\": {\n \"type\": - \"string\",\n \"description\": \"The text description to accompany - the promoted item.\"\n },\n \"customCtaButtonText\": {\n \"description\": - \"The custom call-to-action button text. If specified, it will override the - default button text for the cta_type.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Details about a resource which - is being promoted.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPromotedItem\"\n - \ },\n \"PlaylistListResponse\": {\n \"id\": \"PlaylistListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Playlist\"\n },\n \"description\": \"A list of playlists - that match the request criteria\",\n \"type\": \"array\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlistListResponse\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoSnippet\": - {\n \"description\": \"Basic details about a video, including title, - description, uploader, thumbnails and category.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"liveBroadcastContent\": {\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that the video was uploaded - to.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the videos's default - snippet.\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the video - was uploaded.\",\n \"type\": \"string\"\n },\n \"tags\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of keyword - tags associated with the video. Tags may contain spaces.\"\n },\n \"localized\": - {\n \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\",\n \"$ref\": \"VideoLocalization\"\n },\n \"defaultAudioLanguage\": - {\n \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"categoryId\": {\n \"description\": - \"The YouTube video category associated with the video.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoSnippet\"\n },\n - \ \"ChannelConversionPing\": {\n \"id\": \"ChannelConversionPing\",\n - \ \"properties\": {\n \"context\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ],\n \"description\": \"Defines - the context of the ping.\",\n \"type\": \"string\"\n },\n - \ \"conversionUrl\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"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.\"\n },\n - \ \"LiveChatMembershipGiftingDetails\": {\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"properties\": {\n \"giftMembershipsCount\": {\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The number of gift memberships purchased by the user.\"\n },\n \"giftMembershipsLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the level of the gift memberships purchased by the user. The Level names - are defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoPlayer\": {\n \"type\": \"object\",\n \"description\": - \"Player to be used for a video playback.\",\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\"\n },\n \"embedHeight\": - {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n - \ \"embedWidth\": {\n \"type\": \"string\",\n \"format\": - \"int64\",\n \"description\": \"The embed width\"\n }\n },\n - \ \"id\": \"VideoPlayer\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n \"type\": - \"object\",\n \"properties\": {\n \"items\": {\n \"description\": - \"A list of valid abuse reasons that are used with `video.ReportAbuse`.\",\n - \ \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The `visitorId` identifies - the visitor.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"LiveChatNewSponsorDetails\": {\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"isUpgrade\": {\n \"description\": \"If the viewer just - had upgraded from a lower level. For viewers that were not members at the - time of purchase, this field is false.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"properties\": {\n \"allowed\": {\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"blocked\": {\n \"type\": \"array\",\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"description\": - \"DEPRECATED Region restriction of the video.\",\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"type\": \"object\"\n },\n \"SuperChatEvent\": {\n \"id\": - \"SuperChatEvent\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the Super Chat event.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#superChatEvent\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\"\n },\n \"LiveChatMessageDeletedDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"VideoLiveStreamingDetails\": {\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"Details about the live streaming metadata.\",\n \"type\": - \"object\",\n \"properties\": {\n \"concurrentViewers\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of viewers currently watching the broadcast. The property and its value - will be present if the broadcast has current viewers and the broadcast owner - has not hidden the viewcount for the video. Note that YouTube stops tracking - the number of concurrent viewers for a broadcast when the broadcast ends. - So, this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\"\n },\n \"activeLiveChatId\": - {\n \"description\": \"The ID of the currently active live chat attached - to this video. This field is filled only if the video is a currently live - broadcast that has live chat. Once the broadcast transitions to complete this - field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\",\n \"type\": \"string\"\n - \ },\n \"actualStartTime\": {\n \"description\": \"The - time that the broadcast actually started. This value will not be available - until the broadcast begins.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"scheduledEndTime\": {\n \"description\": - \"The time that the broadcast is scheduled to end. If the value is empty or - the property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"scheduledStartTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The time that - the broadcast is scheduled to begin.\"\n },\n \"actualEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast actually ended. This - value will not be available until the broadcast is over.\"\n }\n }\n - \ },\n \"SuperChatEventListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"SuperChatEventListResponse\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#superChatEventListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of Super Chat purchases that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n }\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n }\n }\n },\n \"SuperChatEventSnippet\": {\n - \ \"id\": \"SuperChatEventSnippet\",\n \"properties\": {\n \"displayString\": - {\n \"description\": \"A rendered string that displays the purchase - amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the - given language.\",\n \"type\": \"string\"\n },\n \"commentText\": - {\n \"type\": \"string\",\n \"description\": \"The text - contents of the comment left by the user.\"\n },\n \"messageType\": - {\n \"description\": \"The tier for the paid message, which is based - on the amount of money spent to purchase the message.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\"\n },\n \"amountMicros\": {\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"supporterDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the supporter.\"\n },\n - \ \"createdAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the event - occurred.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel id where the event occurred.\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made. ISO 4217.\",\n \"type\": \"string\"\n },\n - \ \"isSuperStickerEvent\": {\n \"type\": \"boolean\",\n \"description\": - \"True if this event is a Super Sticker event.\"\n }\n },\n \"type\": - \"object\"\n },\n \"PropertyValue\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\",\n - \ \"description\": \"The property's value.\"\n },\n \"property\": - {\n \"type\": \"string\",\n \"description\": \"A property.\"\n - \ }\n },\n \"description\": \"A pair Property / Value.\",\n - \ \"id\": \"PropertyValue\"\n },\n \"IngestionInfo\": {\n \"type\": - \"object\",\n \"properties\": {\n \"streamName\": {\n \"type\": - \"string\",\n \"description\": \"The stream name that YouTube assigns - to the video stream.\"\n },\n \"ingestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The primary ingestion URL that you - should use to stream video to YouTube. You must stream video to this URL. - Depending on which application or tool you use to encode your video stream, - you may need to enter the stream URL and stream name separately or you may - need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \"\n },\n \"backupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The backup ingestion URL that you - should use to stream video to YouTube. You have the option of simultaneously - streaming the content that you are sending to the ingestionAddress to this - URL.\"\n },\n \"rtmpsIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of ingestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ },\n \"rtmpsBackupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of backupIngestionAddress in order to stream via RTMPS. Not applicable to - non-RTMP streams.\"\n }\n },\n \"id\": \"IngestionInfo\",\n - \ \"description\": \"Describes information necessary for ingesting an - RTMP, HTTP, or SRT stream.\"\n },\n \"VideoAgeGating\": {\n \"type\": - \"object\",\n \"properties\": {\n \"videoGameRating\": {\n \"description\": - \"Video game rating, if any.\",\n \"enum\": [\n \"anyone\",\n - \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"restricted\": {\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\",\n \"type\": - \"boolean\"\n },\n \"alcoholContent\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether or not the video - has alcoholic beverage content. Only users of legal purchasing age in a particular - country, as identified by ICAP, can view the content.\"\n }\n },\n - \ \"id\": \"VideoAgeGating\"\n },\n \"MembershipsLevel\": {\n \"description\": - \"A *membershipsLevel* resource represents an offer made by YouTube creators - for their fans. Users can become members of the channel by joining one of - the available levels. They will provide recurring monetary support and receives - special benefits.\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevel\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the memberships level.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"MembershipsLevel\"\n - \ },\n \"VideoGetRatingResponse\": {\n \"id\": \"VideoGetRatingResponse\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of ratings that match the request criteria.\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoGetRatingResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"Comment\": {\n \"description\": \"A *comment* - represents a single YouTube comment.\",\n \"id\": \"Comment\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the comment.\",\n \"$ref\": \"CommentSnippet\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#comment\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveStreamContentDetails\": {\n \"description\": \"Detailed - settings of a stream.\",\n \"type\": \"object\",\n \"properties\": - {\n \"closedCaptionsIngestionUrl\": {\n \"description\": \"The - ingestion URL where the closed captions of this stream are sent.\",\n \"type\": - \"string\"\n },\n \"isReusable\": {\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \",\n \"type\": \"boolean\"\n }\n },\n \"id\": \"LiveStreamContentDetails\"\n - \ },\n \"PlaylistItemSnippet\": {\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails. Basic details - of a YouTube Playlist item provided by the author. Next ID: 15\",\n \"type\": - \"object\",\n \"properties\": {\n \"description\": {\n \"description\": - \"The item's description.\",\n \"type\": \"string\"\n },\n - \ \"playlistId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify thGe playlist that the playlist item is in.\",\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n }\n },\n \"videoOwnerChannelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel this video belongs to.\"\n },\n \"position\": - {\n \"description\": \"The order in which the item appears in the - playlist. The value uses a zero-based index, so the first item has a position - of 0, the second item has a position of 1, and so forth.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"resourceId\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The id object contains information that can be - used to uniquely identify the resource that is included in the playlist as - the playlist item.\",\n \"$ref\": \"ResourceId\"\n },\n \"title\": - {\n \"description\": \"The item's title.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the item was added to the playlist.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the playlist item belongs to.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the user that added the item to the playlist.\"\n - \ },\n \"videoOwnerChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel id for the channel this video belongs - to.\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist item. 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.\"\n }\n },\n \"id\": \"PlaylistItemSnippet\"\n - \ },\n \"ActivityContentDetails\": {\n \"description\": \"Details - about the content of an activity: the video that was shared, the channel that - was subscribed to, etc.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetails\",\n - \ \"properties\": {\n \"upload\": {\n \"$ref\": \"ActivityContentDetailsUpload\",\n - \ \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\"\n - \ },\n \"channelItem\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsChannelItem\"\n },\n \"playlistItem\": - {\n \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"subscription\": {\n \"description\": \"The - subscription object contains information about a channel that a user subscribed - to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"bulletin\": - {\n \"description\": \"The bulletin object contains details about - a channel bulletin post. This object is only present if the snippet.type is - bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n },\n - \ \"recommendation\": {\n \"description\": \"The recommendation - object contains information about a recommended resource. This property is - only present if the snippet.type is recommendation.\",\n \"$ref\": - \"ActivityContentDetailsRecommendation\"\n },\n \"like\": {\n - \ \"$ref\": \"ActivityContentDetailsLike\",\n \"description\": - \"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.\"\n - \ },\n \"promotedItem\": {\n \"description\": \"The - promotedItem object contains details about a resource which is being promoted. - This property is only present if the snippet.type is promotedItem.\",\n \"$ref\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"social\": {\n - \ \"description\": \"The social object contains details about a social - network post. This property is only present if the snippet.type is social.\",\n - \ \"$ref\": \"ActivityContentDetailsSocial\"\n },\n \"comment\": - {\n \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\",\n \"$ref\": \"ActivityContentDetailsComment\"\n },\n - \ \"favorite\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsFavorite\"\n }\n }\n },\n \"LiveChatMessage\": - {\n \"id\": \"LiveChatMessage\",\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the message.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessage\\\".\",\n \"default\": - \"youtube#liveChatMessage\"\n },\n \"authorDetails\": {\n \"$ref\": - \"LiveChatMessageAuthorDetails\",\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - *liveChatMessage* resource represents a chat message in a YouTube Live Chat.\"\n - \ },\n \"PlaylistContentDetails\": {\n \"id\": \"PlaylistContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"itemCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The number - of videos in the playlist.\",\n \"type\": \"integer\"\n }\n - \ }\n },\n \"CommentSnippet\": {\n \"properties\": {\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"canRate\": - {\n \"description\": \"Whether the current viewer can rate this comment.\",\n - \ \"type\": \"boolean\"\n },\n \"viewerRating\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ],\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"description\": \"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.\"\n },\n \"textOriginal\": {\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the comment was originally published.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"textDisplay\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"authorProfileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The URL for the avatar of the user who posted the comment.\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comment refers to, if any.\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"updatedAt\": - {\n \"description\": \"The date and time when the comment was last - updated.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"parentId\": {\n \"description\": \"The unique - id of the parent comment, only set for replies.\",\n \"type\": \"string\"\n - \ },\n \"moderationStatus\": {\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"type\": \"string\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ]\n },\n \"likeCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The total - number of likes this comment has received.\",\n \"type\": \"integer\"\n - \ },\n \"authorDisplayName\": {\n \"description\": \"The - name of the user who posted the comment.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a comment, such as its author and text.\",\n \"id\": \"CommentSnippet\"\n - \ },\n \"Subscription\": {\n \"type\": \"object\",\n \"id\": - \"Subscription\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the subscription.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the subscription, including its title and the channel - that the user subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n - \ },\n \"subscriberSnippet\": {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"The subscriberSnippet object contains basic details - about the subscriber.\"\n },\n \"kind\": {\n \"default\": - \"youtube#subscription\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"type\": \"string\"\n },\n \"contentDetails\": {\n - \ \"description\": \"The contentDetails object contains basic statistics - about the subscription.\",\n \"$ref\": \"SubscriptionContentDetails\"\n - \ }\n },\n \"description\": \"A *subscription* resource contains - information about a YouTube user subscription. A subscription notifies a user - when new videos are added to a channel or when another user takes one of several - actions on YouTube, such as uploading a video, rating a video, or commenting - on a video.\"\n },\n \"ResourceId\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"playlistId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the referred resource, if that resource is a playlist. This property is only - present if the resourceId.kind value is youtube#playlist.\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a channel. This property - is only present if the resourceId.kind value is youtube#channel.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"The type of the API resource.\"\n }\n },\n \"description\": - \"A resource id is a generic reference that points to another YouTube resource.\",\n - \ \"id\": \"ResourceId\"\n },\n \"ChannelSnippet\": {\n \"type\": - \"object\",\n \"id\": \"ChannelSnippet\",\n \"properties\": {\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the channel - was created.\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the channel.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The channel's title.\"\n },\n \"customUrl\": {\n \"description\": - \"The custom url of the channel.\",\n \"type\": \"string\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": - \"The language of the channel's default title and description.\"\n },\n - \ \"country\": {\n \"description\": \"The country of the channel.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails in your application, make - sure that your code uses the image URLs exactly as they are returned in API - responses. For example, your application should not use the http domain instead - of the https domain in a URL returned in an API response. Beginning in July - 2018, channel thumbnail URLs will only be available in the https domain, which - is how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\"\n }\n },\n \"description\": - \"Basic details about a channel, including title, description and thumbnails.\"\n - \ },\n \"LiveChatModeratorListResponse\": {\n \"id\": \"LiveChatModeratorListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"description\": \"A list of moderators that match the request criteria.\",\n - \ \"type\": \"array\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatModeratorListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"secondaryReasons\": {\n \"description\": - \"The secondary reasons associated with this reason, if any are available. - (There might be 0 or more.)\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n }\n - \ },\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label belonging to this abuse report reason.\"\n }\n - \ },\n \"description\": \"Basic details about a video category, such - as its localized title.\"\n },\n \"SearchListResponse\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"regionCode\": - {\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"Pagination - information for token pagination.\",\n \"items\": {\n \"$ref\": - \"SearchResult\"\n },\n \"type\": \"array\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"default\": \"youtube#searchListResponse\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"SearchListResponse\",\n \"type\": \"object\"\n },\n \"MemberListResponse\": - {\n \"type\": \"object\",\n \"id\": \"MemberListResponse\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - members that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Member\"\n }\n },\n \"kind\": {\n \"default\": - \"youtube#memberListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"SearchResultSnippet\": {\n \"properties\": {\n \"channelTitle\": - {\n \"description\": \"The title of the channel that published the - resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The creation - date and time of the resource that the search result identifies.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The value - that YouTube uses to uniquely identify the channel that published the resource - that the search result identifies.\"\n },\n \"title\": {\n \"description\": - \"The title of the search result.\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"A map of thumbnail images associated with the search result. 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.\"\n },\n - \ \"liveBroadcastContent\": {\n \"type\": \"string\",\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"A description of the search result.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"SearchResultSnippet\",\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\"\n },\n \"ActivityContentDetailsLike\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"description\": - \"Information about a resource that received a positive (like) rating.\"\n - \ },\n \"VideoFileDetailsVideoStream\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"heightPixels\": {\n \"type\": - \"integer\",\n \"description\": \"The encoded video content's height - in pixels.\",\n \"format\": \"uint32\"\n },\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The video - codec that the stream uses.\"\n },\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - video stream's bitrate, in bits per second.\"\n },\n \"rotation\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The amount that YouTube needs to - rotate the original source content to properly display the video.\",\n \"enum\": - [\n \"none\",\n \"clockwise\",\n \"upsideDown\",\n - \ \"counterClockwise\",\n \"other\"\n ]\n },\n - \ \"vendor\": {\n \"description\": \"A value that uniquely - identifies a video vendor. Typically, the value is a four-letter vendor code.\",\n - \ \"type\": \"string\"\n },\n \"aspectRatio\": {\n \"format\": - \"double\",\n \"description\": \"The video content's display aspect - ratio, which specifies the aspect ratio in which the video should be displayed.\",\n - \ \"type\": \"number\"\n },\n \"widthPixels\": {\n \"type\": - \"integer\",\n \"description\": \"The encoded video content's width - in pixels. You can calculate the video's encoding aspect ratio as width_pixels - / height_pixels.\",\n \"format\": \"uint32\"\n },\n \"frameRateFps\": - {\n \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"The video stream's frame rate, in frames per second.\"\n }\n },\n - \ \"id\": \"VideoFileDetailsVideoStream\",\n \"description\": \"Information - about a video stream.\"\n },\n \"VideoStatus\": {\n \"properties\": - {\n \"embeddable\": {\n \"type\": \"boolean\",\n \"description\": - \"This value indicates if the video can be embedded on another website. @mutable - youtube.videos.insert youtube.videos.update\"\n },\n \"failureReason\": - {\n \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ],\n \"description\": \"This - value explains why a video failed to upload. This property is only present - if the uploadStatus property indicates that the upload failed.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Unable to convert - video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ]\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"uploadStatus\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"Video has been uploaded but - not processed yet.\",\n \"Video has been successfully processed.\",\n - \ \"Processing has failed. See FailureReason.\",\n \"Video - has been rejected. See RejectionReason.\",\n \"Video has been deleted.\"\n - \ ],\n \"description\": \"The status of the uploaded video.\",\n - \ \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ]\n },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The video's privacy status.\",\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n },\n \"rejectionReason\": - {\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ],\n \"description\": - \"This value explains why YouTube rejected an uploaded video. This property - is only present if the uploadStatus property indicates that the upload was - rejected.\"\n },\n \"license\": {\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ]\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"publishAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the video is scheduled - to publish. It can be set only if the privacy status of the video is private..\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a video category, such as its localized title. Next Id: 18\",\n - \ \"id\": \"VideoStatus\"\n },\n \"LiveChatModeratorSnippet\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"moderatorDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the moderator.\"\n },\n \"liveChatId\": {\n - \ \"description\": \"The ID of the live chat this moderator can act - on.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveChatModeratorSnippet\"\n },\n \"PlaylistItemListResponse\": {\n - \ \"id\": \"PlaylistItemListResponse\",\n \"properties\": {\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"visitorId\": {\n \"description\": \"The - visitorId identifies the visitor.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of playlist items that match - the request criteria.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LocalizedString\": - {\n \"id\": \"LocalizedString\",\n \"type\": \"object\",\n \"properties\": - {\n \"language\": {\n \"type\": \"string\"\n },\n \"value\": - {\n \"type\": \"string\"\n }\n }\n },\n \"SubscriptionContentDetails\": - {\n \"description\": \"Details about the content to witch a subscription - refers.\",\n \"id\": \"SubscriptionContentDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"totalItemCount\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The approximate number of items that the subscription points to.\"\n },\n - \ \"activityType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"type\": - \"string\"\n },\n \"newItemCount\": {\n \"format\": - \"uint32\",\n \"description\": \"The number of new items in the subscription - since its content was last read.\",\n \"type\": \"integer\"\n }\n - \ }\n }\n },\n \"version\": \"v3\",\n \"servicePath\": \"\",\n \"description\": - \"The YouTube Data API v3 is an API that provides access to YouTube data, - such as videos, playlists, and channels.\",\n \"id\": \"youtube:v3\",\n \"baseUrl\": - \"https://youtube.googleapis.com/\",\n \"kind\": \"discovery#restDescription\",\n - \ \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"basePath\": - \"\",\n \"parameters\": {\n \"access_token\": {\n \"type\": \"string\",\n - \ \"description\": \"OAuth access token.\",\n \"location\": \"query\"\n - \ },\n \"$.xgafv\": {\n \"enum\": [\n \"1\",\n \"2\"\n - \ ],\n \"enumDescriptions\": [\n \"v1 error format\",\n \"v2 - error format\"\n ],\n \"type\": \"string\",\n \"description\": - \"V1 error format.\",\n \"location\": \"query\"\n },\n \"uploadType\": - {\n \"type\": \"string\",\n \"description\": \"Legacy upload protocol - for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"location\": - \"query\"\n },\n \"callback\": {\n \"description\": \"JSONP\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"prettyPrint\": - {\n \"default\": \"true\",\n \"description\": \"Returns response - with indentations and line breaks.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"upload_protocol\": {\n \"description\": \"Upload - protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"fields\": {\n \"description\": - \"Selector specifying which fields to include in a partial response.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"quotaUser\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"oauth_token\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"OAuth 2.0 token for - the current user.\"\n },\n \"key\": {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"alt\": {\n \"description\": - \"Data format for response.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Responses with Content-Type - of application/json\",\n \"Media download with context-dependent Content-Type\",\n - \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n - \ \"default\": \"json\",\n \"enum\": [\n \"json\",\n \"media\",\n - \ \"proto\"\n ]\n }\n }\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:28 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCPA91JeKp2rqg4bi2Q_OAxQ&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"ap6iJfVKGKN51NZUXXOY05MBu7c\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"6VjTUdRXW6ofnXO6ysfLlolpby8\",\n \"id\": \"UCPA91JeKp2rqg4bi2Q_OAxQ\",\n - \ \"snippet\": {\n \"title\": \"\u0410\u043B\u0435\u043A\u0441\u0430\u043D\u0434\u0440 - \u041C\u0430\u043B\u044C\u043A\u043E\u0432\",\n \"description\": \" - #\u042D\u043D\u0435\u0440\u0433\u043E\u043B\u0438\u043A\u0431\u0435\u0437 - \u044D\u0442\u043E \u043C\u043E\u0439 \u043B\u0438\u0447\u043D\u044B\u0439 - \u043E\u0431\u0440\u0430\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0439 - \ \u0431\u043B\u043E\u0433 \u0434\u043B\u044F \u0448\u0438\u0440\u043E\u043A\u043E\u0433\u043E - \u043A\u0440\u0443\u0433\u0430 \u0437\u0440\u0438\u0442\u0435\u043B\u0435\u0439.\\n\u0412 - \u043D\u0435\u043C \u044F \u0440\u0430\u0441\u0441\u043A\u0430\u0437\u044B\u0432\u0430\u044E - \u043F\u0440\u043E\u0441\u0442\u044B\u043C\u0438 \u0438 \u0438\u043D\u0442\u0435\u0440\u0435\u0441\u043D\u044B\u043C\u0438 - \u0441\u043B\u043E\u0432\u0430\u043C\u0438 \u043E\u0431 \u044D\u043D\u0435\u0440\u0433\u0435\u0442\u0438\u043A\u0435, - \u044D\u043B\u0435\u043A\u0442\u0440\u043E\u0442\u0435\u0445\u043D\u0438\u043A\u0435, - \u044D\u043D\u0435\u0440\u0433\u043E\u0441\u0438\u0441\u0442\u0435\u043C\u0430\u0445 - \u0438 \u044F\u0432\u043B\u0435\u043D\u0438\u044F\u0445 \u0432 \u043D\u0438\u0445!\\n\u042F - \u0443\u0436\u0435 16 \u043B\u0435\u0442 \u0440\u0430\u0431\u043E\u0442\u0430\u044E - \u0432 \u044D\u043D\u0435\u0440\u0433\u043E\u0441\u0438\u0441\u0442\u0435\u043C\u0435 - \u0411\u0435\u043B\u0430\u0440\u0443\u0441\u0438. \\n\\n\u041F\u043B\u0430\u043D\u0438\u0440\u0443\u044E - \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0430\u0442\u044C \u0430\u043A\u0442\u0438\u0432\u043D\u043E - \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0442\u044C \u043E\u0431\u0440\u0430\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0439 - \u043A\u043E\u043D\u0442\u0435\u043D\u0442.\\n\u0411\u043B\u0430\u0433\u043E\u0434\u0430\u0440\u044E - \u0432\u0441\u0435\u0445, \u043A\u0442\u043E \u043B\u0430\u0439\u043A\u043E\u043C, - \u043F\u043E\u0434\u043F\u0438\u0441\u043A\u043E\u0439, \u0438 \u043A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u0438\u0432\u043D\u044B\u043C - \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0440\u0438\u0435\u043C \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0430\u043B - \u043E\u0431\u0440\u0430\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0439 - \u043A\u043E\u043D\u0442\u0435\u043D\u0442 \u043D\u0430 \u043C\u043E\u0435\u043C - \u043A\u0430\u043D\u0430\u043B\u0435!\\n\u0414\u043E\u043D\u0430\u0442 \u043D\u0430 - \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435 \u043A\u0430\u043D\u0430\u043B\u0430 - - \\n1. https://donate.stream/ya4100115553012244\\n2. QIWI \u043A\u043E\u0448\u0435\u043B\u0435\u043A - qiwi.com/n/ENERGOLIKBEZ\\n3. \u0411\u0443\u0441\u0442\u0438 ( \u0440\u0430\u043D\u043D\u0438\u0439 - \u0432\u044B\u0445\u043E\u0434 \u043A\u043E\u043D\u0442\u0435\u043D\u0442\u0430) - \ https://boosty.to/energolikbez\\n\\n\u041F\u0421: \u041A\u0430\u043D\u0430\u043B - \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0441 2011 \u0433\u043E\u0434\u0430, - \u043D\u043E \u0442\u043E\u043B\u044C\u043A\u043E \u0441 \u044F\u043D\u0432\u0430\u0440\u044F - 2021 \u044F \u043D\u0430\u0447\u0430\u043B \u0435\u0433\u043E \u0430\u043A\u0442\u0438\u0432\u043D\u043E - \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0442\u044C, \u043A\u0430\u043A - \u043F\u0440\u043E\u0435\u043A\u0442 #\u044D\u043D\u0435\u0440\u0433\u043E\u043B\u0438\u043A\u0431\u0435\u0437.\\n\u0415\u0449\u0451 - \u0432 \u044F\u043D\u0432\u0430\u0440\u0435 2021 \u043D\u0430 \u043D\u0435\u043C - \u0431\u044B\u043B\u043E \u043D\u0435 \u0431\u043E\u043B\u0435\u0435 350 \u043F\u043E\u0434\u043F\u0438\u0441\u0447\u0438\u043A\u043E\u0432. - \\n\\n \u0421\u0442\u0430\u0440\u044B\u0435 \u0432\u0438\u0434\u0435\u043E - \u043F\u043E\u043A\u0430 \u043D\u0435 \u0443\u0434\u0430\u043B\u044F\u043B - \u0441 \u043A\u0430\u043D\u0430\u043B\u0430))\\n\\n \\n\",\n \"customUrl\": - \"@energolikbez\",\n \"publishedAt\": \"2011-10-30T18:36:37Z\",\n \"thumbnails\": - {\n \"default\": {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJUE7ifbvuoC2xAaj2j-Q4qD5E5xEBqvFHa6M1fMFw=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJUE7ifbvuoC2xAaj2j-Q4qD5E5xEBqvFHa6M1fMFw=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJUE7ifbvuoC2xAaj2j-Q4qD5E5xEBqvFHa6M1fMFw=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"\u0410\u043B\u0435\u043A\u0441\u0430\u043D\u0434\u0440 - \u041C\u0430\u043B\u044C\u043A\u043E\u0432\",\n \"description\": - \" #\u042D\u043D\u0435\u0440\u0433\u043E\u043B\u0438\u043A\u0431\u0435\u0437 - \u044D\u0442\u043E \u043C\u043E\u0439 \u043B\u0438\u0447\u043D\u044B\u0439 - \u043E\u0431\u0440\u0430\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0439 - \ \u0431\u043B\u043E\u0433 \u0434\u043B\u044F \u0448\u0438\u0440\u043E\u043A\u043E\u0433\u043E - \u043A\u0440\u0443\u0433\u0430 \u0437\u0440\u0438\u0442\u0435\u043B\u0435\u0439.\\n\u0412 - \u043D\u0435\u043C \u044F \u0440\u0430\u0441\u0441\u043A\u0430\u0437\u044B\u0432\u0430\u044E - \u043F\u0440\u043E\u0441\u0442\u044B\u043C\u0438 \u0438 \u0438\u043D\u0442\u0435\u0440\u0435\u0441\u043D\u044B\u043C\u0438 - \u0441\u043B\u043E\u0432\u0430\u043C\u0438 \u043E\u0431 \u044D\u043D\u0435\u0440\u0433\u0435\u0442\u0438\u043A\u0435, - \u044D\u043B\u0435\u043A\u0442\u0440\u043E\u0442\u0435\u0445\u043D\u0438\u043A\u0435, - \u044D\u043D\u0435\u0440\u0433\u043E\u0441\u0438\u0441\u0442\u0435\u043C\u0430\u0445 - \u0438 \u044F\u0432\u043B\u0435\u043D\u0438\u044F\u0445 \u0432 \u043D\u0438\u0445!\\n\u042F - \u0443\u0436\u0435 16 \u043B\u0435\u0442 \u0440\u0430\u0431\u043E\u0442\u0430\u044E - \u0432 \u044D\u043D\u0435\u0440\u0433\u043E\u0441\u0438\u0441\u0442\u0435\u043C\u0435 - \u0411\u0435\u043B\u0430\u0440\u0443\u0441\u0438. \\n\\n\u041F\u043B\u0430\u043D\u0438\u0440\u0443\u044E - \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0430\u0442\u044C \u0430\u043A\u0442\u0438\u0432\u043D\u043E - \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0442\u044C \u043E\u0431\u0440\u0430\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0439 - \u043A\u043E\u043D\u0442\u0435\u043D\u0442.\\n\u0411\u043B\u0430\u0433\u043E\u0434\u0430\u0440\u044E - \u0432\u0441\u0435\u0445, \u043A\u0442\u043E \u043B\u0430\u0439\u043A\u043E\u043C, - \u043F\u043E\u0434\u043F\u0438\u0441\u043A\u043E\u0439, \u0438 \u043A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u0438\u0432\u043D\u044B\u043C - \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0440\u0438\u0435\u043C \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0430\u043B - \u043E\u0431\u0440\u0430\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0439 - \u043A\u043E\u043D\u0442\u0435\u043D\u0442 \u043D\u0430 \u043C\u043E\u0435\u043C - \u043A\u0430\u043D\u0430\u043B\u0435!\\n\u0414\u043E\u043D\u0430\u0442 \u043D\u0430 - \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435 \u043A\u0430\u043D\u0430\u043B\u0430 - - \\n1. https://donate.stream/ya4100115553012244\\n2. QIWI \u043A\u043E\u0448\u0435\u043B\u0435\u043A - qiwi.com/n/ENERGOLIKBEZ\\n3. \u0411\u0443\u0441\u0442\u0438 ( \u0440\u0430\u043D\u043D\u0438\u0439 - \u0432\u044B\u0445\u043E\u0434 \u043A\u043E\u043D\u0442\u0435\u043D\u0442\u0430) - \ https://boosty.to/energolikbez\\n\\n\u041F\u0421: \u041A\u0430\u043D\u0430\u043B - \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0441 2011 \u0433\u043E\u0434\u0430, - \u043D\u043E \u0442\u043E\u043B\u044C\u043A\u043E \u0441 \u044F\u043D\u0432\u0430\u0440\u044F - 2021 \u044F \u043D\u0430\u0447\u0430\u043B \u0435\u0433\u043E \u0430\u043A\u0442\u0438\u0432\u043D\u043E - \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0442\u044C, \u043A\u0430\u043A - \u043F\u0440\u043E\u0435\u043A\u0442 #\u044D\u043D\u0435\u0440\u0433\u043E\u043B\u0438\u043A\u0431\u0435\u0437.\\n\u0415\u0449\u0451 - \u0432 \u044F\u043D\u0432\u0430\u0440\u0435 2021 \u043D\u0430 \u043D\u0435\u043C - \u0431\u044B\u043B\u043E \u043D\u0435 \u0431\u043E\u043B\u0435\u0435 350 \u043F\u043E\u0434\u043F\u0438\u0441\u0447\u0438\u043A\u043E\u0432. - \\n\\n \u0421\u0442\u0430\u0440\u044B\u0435 \u0432\u0438\u0434\u0435\u043E - \u043F\u043E\u043A\u0430 \u043D\u0435 \u0443\u0434\u0430\u043B\u044F\u043B - \u0441 \u043A\u0430\u043D\u0430\u043B\u0430))\\n\\n \\n\"\n },\n \"country\": - \"BY\"\n },\n \"brandingSettings\": {\n \"channel\": {\n - \ \"title\": \"\u0410\u043B\u0435\u043A\u0441\u0430\u043D\u0434\u0440 - \u041C\u0430\u043B\u044C\u043A\u043E\u0432\",\n \"description\": - \" #\u042D\u043D\u0435\u0440\u0433\u043E\u043B\u0438\u043A\u0431\u0435\u0437 - \u044D\u0442\u043E \u043C\u043E\u0439 \u043B\u0438\u0447\u043D\u044B\u0439 - \u043E\u0431\u0440\u0430\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0439 - \ \u0431\u043B\u043E\u0433 \u0434\u043B\u044F \u0448\u0438\u0440\u043E\u043A\u043E\u0433\u043E - \u043A\u0440\u0443\u0433\u0430 \u0437\u0440\u0438\u0442\u0435\u043B\u0435\u0439.\\n\u0412 - \u043D\u0435\u043C \u044F \u0440\u0430\u0441\u0441\u043A\u0430\u0437\u044B\u0432\u0430\u044E - \u043F\u0440\u043E\u0441\u0442\u044B\u043C\u0438 \u0438 \u0438\u043D\u0442\u0435\u0440\u0435\u0441\u043D\u044B\u043C\u0438 - \u0441\u043B\u043E\u0432\u0430\u043C\u0438 \u043E\u0431 \u044D\u043D\u0435\u0440\u0433\u0435\u0442\u0438\u043A\u0435, - \u044D\u043B\u0435\u043A\u0442\u0440\u043E\u0442\u0435\u0445\u043D\u0438\u043A\u0435, - \u044D\u043D\u0435\u0440\u0433\u043E\u0441\u0438\u0441\u0442\u0435\u043C\u0430\u0445 - \u0438 \u044F\u0432\u043B\u0435\u043D\u0438\u044F\u0445 \u0432 \u043D\u0438\u0445!\\n\u042F - \u0443\u0436\u0435 16 \u043B\u0435\u0442 \u0440\u0430\u0431\u043E\u0442\u0430\u044E - \u0432 \u044D\u043D\u0435\u0440\u0433\u043E\u0441\u0438\u0441\u0442\u0435\u043C\u0435 - \u0411\u0435\u043B\u0430\u0440\u0443\u0441\u0438. \\n\\n\u041F\u043B\u0430\u043D\u0438\u0440\u0443\u044E - \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0430\u0442\u044C \u0430\u043A\u0442\u0438\u0432\u043D\u043E - \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0442\u044C \u043E\u0431\u0440\u0430\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0439 - \u043A\u043E\u043D\u0442\u0435\u043D\u0442.\\n\u0411\u043B\u0430\u0433\u043E\u0434\u0430\u0440\u044E - \u0432\u0441\u0435\u0445, \u043A\u0442\u043E \u043B\u0430\u0439\u043A\u043E\u043C, - \u043F\u043E\u0434\u043F\u0438\u0441\u043A\u043E\u0439, \u0438 \u043A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u0438\u0432\u043D\u044B\u043C - \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0440\u0438\u0435\u043C \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0430\u043B - \u043E\u0431\u0440\u0430\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0439 - \u043A\u043E\u043D\u0442\u0435\u043D\u0442 \u043D\u0430 \u043C\u043E\u0435\u043C - \u043A\u0430\u043D\u0430\u043B\u0435!\\n\u0414\u043E\u043D\u0430\u0442 \u043D\u0430 - \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u0435 \u043A\u0430\u043D\u0430\u043B\u0430 - - \\n1. https://donate.stream/ya4100115553012244\\n2. QIWI \u043A\u043E\u0448\u0435\u043B\u0435\u043A - qiwi.com/n/ENERGOLIKBEZ\\n3. \u0411\u0443\u0441\u0442\u0438 ( \u0440\u0430\u043D\u043D\u0438\u0439 - \u0432\u044B\u0445\u043E\u0434 \u043A\u043E\u043D\u0442\u0435\u043D\u0442\u0430) - \ https://boosty.to/energolikbez\\n\\n\u041F\u0421: \u041A\u0430\u043D\u0430\u043B - \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0441 2011 \u0433\u043E\u0434\u0430, - \u043D\u043E \u0442\u043E\u043B\u044C\u043A\u043E \u0441 \u044F\u043D\u0432\u0430\u0440\u044F - 2021 \u044F \u043D\u0430\u0447\u0430\u043B \u0435\u0433\u043E \u0430\u043A\u0442\u0438\u0432\u043D\u043E - \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0442\u044C, \u043A\u0430\u043A - \u043F\u0440\u043E\u0435\u043A\u0442 #\u044D\u043D\u0435\u0440\u0433\u043E\u043B\u0438\u043A\u0431\u0435\u0437.\\n\u0415\u0449\u0451 - \u0432 \u044F\u043D\u0432\u0430\u0440\u0435 2021 \u043D\u0430 \u043D\u0435\u043C - \u0431\u044B\u043B\u043E \u043D\u0435 \u0431\u043E\u043B\u0435\u0435 350 \u043F\u043E\u0434\u043F\u0438\u0441\u0447\u0438\u043A\u043E\u0432. - \\n\\n \u0421\u0442\u0430\u0440\u044B\u0435 \u0432\u0438\u0434\u0435\u043E - \u043F\u043E\u043A\u0430 \u043D\u0435 \u0443\u0434\u0430\u043B\u044F\u043B - \u0441 \u043A\u0430\u043D\u0430\u043B\u0430))\\n\\n \\n\",\n \"keywords\": - \"\u044D\u043D\u0435\u0440\u0433\u043E\u043B\u0438\u043A\u0431\u0435\u0437 - \u044D\u043D\u0435\u0440\u0433\u0435\u0442\u0438\u043A\u0430 \u043D\u0430\u043F\u0440\u044F\u0436\u0435\u043D\u0438\u0435 - \u0442\u043E\u043A \u044D\u043B\u0435\u043A\u0442\u0440\u0438\u0447\u0435\u0441\u0442\u0432\u043E - \u0443\u0447\u0435\u0431\u0430 \\\"\u041C\u0430\u043B\u044C\u043A\u043E\u0432 - \u0410\u043B\u0435\u043A\u0441\u0430\u043D\u0434\u0440\\\"\",\n \"unsubscribedTrailer\": - \"02zrnbybT10\",\n \"country\": \"BY\"\n },\n \"image\": - {\n \"bannerExternalUrl\": \"https://yt3.googleusercontent.com/w3MhrCc7uYwteKxkcBmsu4KFml3wKnGMSRjzVIoDFBdlcDwcqHQ8aXDk03J1ZeBwf6t1-1nc\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:28 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"canonicalName\": \"YouTube\",\n \"discoveryVersion\": \"v1\",\n - \ \"description\": \"The YouTube Data API v3 is an API that provides access - to YouTube data, such as videos, playlists, and channels.\",\n \"baseUrl\": - \"https://youtube.googleapis.com/\",\n \"parameters\": {\n \"oauth_token\": - {\n \"type\": \"string\",\n \"description\": \"OAuth 2.0 token for - the current user.\",\n \"location\": \"query\"\n },\n \"alt\": - {\n \"enumDescriptions\": [\n \"Responses with Content-Type of - application/json\",\n \"Media download with context-dependent Content-Type\",\n - \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n - \ \"default\": \"json\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Data format for response.\",\n \"enum\": - [\n \"json\",\n \"media\",\n \"proto\"\n ]\n },\n - \ \"$.xgafv\": {\n \"location\": \"query\",\n \"enum\": [\n \"1\",\n - \ \"2\"\n ],\n \"enumDescriptions\": [\n \"v1 error - format\",\n \"v2 error format\"\n ],\n \"description\": \"V1 - error format.\",\n \"type\": \"string\"\n },\n \"quotaUser\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n - \ },\n \"access_token\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"OAuth access token.\"\n },\n \"key\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n - \ },\n \"fields\": {\n \"location\": \"query\",\n \"description\": - \"Selector specifying which fields to include in a partial response.\",\n - \ \"type\": \"string\"\n },\n \"callback\": {\n \"location\": - \"query\",\n \"description\": \"JSONP\",\n \"type\": \"string\"\n - \ },\n \"upload_protocol\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", - \\\"multipart\\\").\"\n },\n \"uploadType\": {\n \"description\": - \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"prettyPrint\": - {\n \"type\": \"boolean\",\n \"description\": \"Returns response - with indentations and line breaks.\",\n \"location\": \"query\",\n \"default\": - \"true\"\n }\n },\n \"fullyEncodeReservedExpansion\": true,\n \"id\": - \"youtube:v3\",\n \"ownerName\": \"Google\",\n \"batchPath\": \"batch\",\n - \ \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"revision\": - \"20230220\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n }\n - \ }\n }\n },\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"version\": \"v3\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"servicePath\": \"\",\n \"name\": \"youtube\",\n \"schemas\": {\n \"PlaylistContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistContentDetails\",\n - \ \"properties\": {\n \"itemCount\": {\n \"type\": \"integer\",\n - \ \"description\": \"The number of videos in the playlist.\",\n \"format\": - \"uint32\"\n }\n }\n },\n \"PlaylistListResponse\": {\n - \ \"type\": \"object\",\n \"id\": \"PlaylistListResponse\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"default\": \"youtube#playlistListResponse\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of playlists - that match the request criteria\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n }\n - \ }\n },\n \"PageInfo\": {\n \"description\": \"Paging details - for lists of resources, including total number of items available and number - of resources returned in a single page.\",\n \"properties\": {\n \"totalResults\": - {\n \"format\": \"int32\",\n \"description\": \"The total - number of results in the result set.\",\n \"type\": \"integer\"\n - \ },\n \"resultsPerPage\": {\n \"description\": \"The - number of results included in the API response.\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"PageInfo\"\n },\n \"ChannelProfileDetails\": - {\n \"properties\": {\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channels's avatar URL.\"\n },\n \"channelUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channel's URL.\"\n },\n - \ \"displayName\": {\n \"description\": \"The channel's display - name.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelProfileDetails\"\n },\n \"LiveChatMessageListResponse\": - {\n \"id\": \"LiveChatMessageListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pollingIntervalMillis\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The amount of time the client should wait before polling again.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"type\": \"array\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n - \ \"offlineAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the underlying stream went offline.\",\n \"type\": - \"string\"\n }\n }\n },\n \"CaptionListResponse\": {\n \"id\": - \"CaptionListResponse\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of captions that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Caption\"\n }\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatFanFundingEventDetails\": {\n \"id\": - \"LiveChatFanFundingEventDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the fund was made.\"\n },\n \"userComment\": - {\n \"description\": \"The comment added by the user to this fan - funding event.\",\n \"type\": \"string\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The amount of the fund.\"\n }\n - \ }\n },\n \"VideoCategory\": {\n \"description\": \"A *videoCategory* - resource identifies a category that has been or could be associated with uploaded - videos.\",\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"default\": \"youtube#videoCategory\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video category.\"\n }\n - \ },\n \"id\": \"VideoCategory\"\n },\n \"LiveStreamStatus\": - {\n \"id\": \"LiveStreamStatus\",\n \"type\": \"object\",\n \"description\": - \"Brief description of the live stream status.\",\n \"properties\": {\n - \ \"streamStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"created\",\n \"ready\",\n - \ \"active\",\n \"inactive\",\n \"error\"\n - \ ],\n \"type\": \"string\"\n },\n \"healthStatus\": - {\n \"description\": \"The health status of the stream.\",\n \"$ref\": - \"LiveStreamHealthStatus\"\n }\n }\n },\n \"ActivityListResponse\": - {\n \"type\": \"object\",\n \"id\": \"ActivityListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#activityListResponse\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Activity\"\n }\n }\n }\n },\n \"PlaylistItem\": - {\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist item, such as its title and position in the playlist.\"\n },\n - \ \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistItemContentDetails\",\n \"description\": \"The contentDetails - object is included in the resource if the included item is a YouTube video. - The object contains additional information about the video.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlistItem\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"PlaylistItem\",\n - \ \"type\": \"object\",\n \"description\": \"A *playlistItem* resource - identifies another resource, such as a video, that is included in a playlist. - In addition, the playlistItem resource contains details about the included - resource that pertain specifically to how that resource is used in that playlist. - YouTube uses playlists to identify special collections of videos for a channel, - such as: - uploaded videos - favorite videos - positively rated (liked) videos - - watch history - watch later To be more specific, these lists are associated - with a channel, which is a collection of a person, group, or company's videos, - playlists, and other YouTube information. You can retrieve the playlist IDs - for each of these lists from the channel resource for a given channel. You - can then use the playlistItems.list method to retrieve any of those lists. - You can also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods. For example, if a user gives a positive - rating to a video, you would insert that video into the liked videos playlist - for that user's channel.\"\n },\n \"ChannelLocalization\": {\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - title.\"\n },\n \"description\": {\n \"description\": - \"The localized strings for channel's description.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Channel localization - setting\",\n \"id\": \"ChannelLocalization\"\n },\n \"SuperStickerMetadata\": - {\n \"properties\": {\n \"altText\": {\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\",\n \"type\": \"string\"\n },\n \"altTextLanguage\": - {\n \"description\": \"Specifies the localization language in which - the alt text is returned.\",\n \"type\": \"string\"\n },\n - \ \"stickerId\": {\n \"description\": \"Unique identifier of - the Super Sticker. This is a shorter form of the alt_text that includes pack - name and a recognizable characteristic of the sticker.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"SuperStickerMetadata\"\n },\n \"LiveBroadcastSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"actualEndTime\": {\n \"description\": - \"The date and time that the broadcast actually ended. This information is - only available once the broadcast's state is complete.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"isDefaultBroadcast\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast is the default broadcast. Internal only.\"\n },\n - \ \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the broadcast. For each nested - object in this object, the key is the name of the thumbnail image, and the - value is an object that contains other information about the thumbnail.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the broadcast was added to YouTube's live broadcast schedule.\",\n - \ \"type\": \"string\"\n },\n \"scheduledEndTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast is scheduled to end.\",\n \"format\": - \"date-time\"\n },\n \"liveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the live chat for this - broadcast.\"\n },\n \"description\": {\n \"description\": - \"The broadcast's description. As with the title, you can set this field by - modifying the broadcast resource or by setting the description field of the - corresponding video resource.\",\n \"type\": \"string\"\n },\n - \ \"scheduledStartTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"actualStartTime\": {\n \"description\": \"The date and - time that the broadcast actually started. This information is only available - once the broadcast's state is live.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n }\n },\n \"description\": - \"Basic broadcast information.\",\n \"id\": \"LiveBroadcastSnippet\"\n - \ },\n \"LiveChatMessageSnippet\": {\n \"properties\": {\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"authorChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\"\n },\n \"superStickerDetails\": {\n - \ \"description\": \"Details about the Super Sticker event, this is - only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"displayMessage\": {\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The type of - message, this will always be present, it determines the contents of the message - as well as which fields will be present.\"\n },\n \"memberMilestoneChatDetails\": - {\n \"description\": \"Details about the Member Milestone Chat event, - this is only set if the type is 'memberMilestoneChatEvent'.\",\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"description\": \"Details about the Gift Membership Received - event, this is only set if the type is 'giftMembershipReceivedEvent'.\",\n - \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n - \ \"membershipGiftingDetails\": {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n - \ \"description\": \"Details about the Membership Gifting event, this - is only set if the type is 'membershipGiftingEvent'.\"\n },\n \"newSponsorDetails\": - {\n \"description\": \"Details about the New Member Announcement - event, this is only set if the type is 'newSponsorEvent'. Please note that - \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n \"$ref\": - \"LiveChatNewSponsorDetails\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n - \ \"description\": \"Details about the Super Chat event, this is only - set if the type is 'superChatEvent'.\"\n },\n \"liveChatId\": - {\n \"type\": \"string\"\n },\n \"publishedAt\": {\n - \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the message was orignally published.\"\n },\n - \ \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"hasDisplayContent\": {\n \"description\": \"Whether - the message has display content that should be displayed to users.\",\n \"type\": - \"boolean\"\n },\n \"fanFundingEventDetails\": {\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n }\n },\n - \ \"id\": \"LiveChatMessageSnippet\",\n \"description\": \"Next ID: - 33\",\n \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": - {\n \"type\": \"object\",\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"properties\": {\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveBroadcastListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of broadcasts that match the request criteria.\"\n }\n }\n - \ },\n \"CommentListResponse\": {\n \"properties\": {\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#commentListResponse\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"description\": - \"A list of comments that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Comment\"\n }\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"CommentListResponse\"\n },\n \"Subscription\": {\n \"properties\": - {\n \"contentDetails\": {\n \"$ref\": \"SubscriptionContentDetails\",\n - \ \"description\": \"The contentDetails object contains basic statistics - about the subscription.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\",\n \"$ref\": - \"SubscriptionSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#subscription\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\"\n - \ },\n \"subscriberSnippet\": {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"The subscriberSnippet object contains basic details - about the subscriber.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\"\n }\n - \ },\n \"id\": \"Subscription\",\n \"type\": \"object\",\n \"description\": - \"A *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\"\n },\n \"SuperChatEvent\": - {\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\",\n - \ \"$ref\": \"SuperChatEventSnippet\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#superChatEvent\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the Super Chat event.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"SuperChatEvent\",\n - \ \"type\": \"object\",\n \"description\": \"A `__superChatEvent__` - resource represents a Super Chat purchase on a YouTube channel.\"\n },\n - \ \"PropertyValue\": {\n \"type\": \"object\",\n \"id\": \"PropertyValue\",\n - \ \"properties\": {\n \"property\": {\n \"type\": \"string\",\n - \ \"description\": \"A property.\"\n },\n \"value\": - {\n \"type\": \"string\",\n \"description\": \"The property's - value.\"\n }\n },\n \"description\": \"A pair Property / - Value.\"\n },\n \"LocalizedProperty\": {\n \"properties\": {\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the default property.\",\n \"$ref\": \"LanguageTag\"\n },\n - \ \"default\": {\n \"type\": \"string\"\n },\n \"localized\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n }\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LocalizedProperty\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viewer is a member. This matches the - `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated - membership gifting message. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n },\n \"gifterChannelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID of the - user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ }\n }\n },\n \"Cuepoint\": {\n \"properties\": {\n - \ \"insertionOffsetTimeMs\": {\n \"type\": \"string\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\",\n \"format\": \"int64\"\n },\n \"etag\": - {\n \"type\": \"string\"\n },\n \"walltimeMs\": {\n - \ \"description\": \"The wall clock time at which the cuepoint should - be inserted. Only one of insertion_offset_time_ms and walltime_ms may be set - at a time.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"cueType\": {\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The identifier for cuepoint resource.\"\n },\n \"durationSecs\": - {\n \"description\": \"The duration of this cuepoint.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Note that there may be a 5-second end-point - resolution issue. For instance, if a cuepoint comes in for 22:03:27, we may - stuff the cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact - of HLS.\",\n \"id\": \"Cuepoint\"\n },\n \"Video\": {\n \"description\": - \"A *video* resource represents a YouTube video.\",\n \"id\": \"Video\",\n - \ \"properties\": {\n \"projectDetails\": {\n \"description\": - \"The projectDetails object contains information about the project specific - video metadata. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"monetizationDetails\": - {\n \"$ref\": \"VideoMonetizationDetails\",\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\"\n },\n \"recordingDetails\": {\n \"$ref\": - \"VideoRecordingDetails\",\n \"description\": \"The recordingDetails - object encapsulates information about the location, date and address where - the video was recorded.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video, such as its title, - description, and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information about the video content, including the length - of the video and its aspect ratio.\",\n \"$ref\": \"VideoContentDetails\"\n - \ },\n \"statistics\": {\n \"$ref\": \"VideoStatistics\",\n - \ \"description\": \"The statistics object contains statistics about - the video.\"\n },\n \"fileDetails\": {\n \"description\": - \"The fileDetails object encapsulates information about the video file that - was uploaded to YouTube, including the file's resolution, duration, audio - and video codecs, stream bitrates, and more. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n },\n - \ \"liveStreamingDetails\": {\n \"$ref\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\"\n },\n - \ \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.videos.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"default\": \"youtube#video\"\n },\n \"player\": - {\n \"$ref\": \"VideoPlayer\",\n \"description\": \"The - player object contains information that you would use to play the video in - an embedded player.\"\n },\n \"ageGating\": {\n \"$ref\": - \"VideoAgeGating\",\n \"description\": \"Age restriction details - related to a video. This data can only be retrieved by the video owner.\"\n - \ },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"VideoLocalization\"\n },\n \"description\": - \"The localizations object contains localized versions of the basic details - about the video, such as its title and description.\",\n \"type\": - \"object\"\n },\n \"processingDetails\": {\n \"$ref\": - \"VideoProcessingDetails\",\n \"description\": \"The processingDetails - object encapsulates information about YouTube's progress in processing the - uploaded video file. The properties in the object identify the current processing - status and an estimate of the time remaining until YouTube finishes processing - the video. This part also indicates whether different types of data or content, - such as file details or thumbnail images, are available for the video. The - processingProgress object is designed to be polled so that the video uploaded - can track the progress that YouTube has made in processing the uploaded video - file. This data can only be retrieved by the video owner.\"\n },\n - \ \"suggestions\": {\n \"description\": \"The suggestions object - encapsulates suggestions that identify opportunities to improve the video - quality or the metadata for the uploaded video. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n },\n - \ \"status\": {\n \"$ref\": \"VideoStatus\",\n \"description\": - \"The status object contains information about the video's uploading, processing, - and privacy statuses.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"topicDetails\": {\n \"description\": \"The topicDetails - object encapsulates information about Freebase topics associated with the - video.\",\n \"$ref\": \"VideoTopicDetails\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatBan\": {\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the ban.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatBan\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n }\n - \ },\n \"description\": \"A `__liveChatBan__` resource represents - a ban for a YouTube live chat.\",\n \"type\": \"object\",\n \"id\": - \"LiveChatBan\"\n },\n \"ChannelContentDetails\": {\n \"type\": - \"object\",\n \"description\": \"Details about the content of a channel.\",\n - \ \"id\": \"ChannelContentDetails\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"properties\": {\n \"uploads\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use - the videos.insert method to upload new videos and the videos.delete method - to delete previously uploaded videos.\",\n \"type\": \"string\"\n - \ },\n \"likes\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n },\n \"watchHistory\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"favorites\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"watchLater\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n }\n }\n },\n \"PlaylistLocalization\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistLocalization\",\n - \ \"properties\": {\n \"description\": {\n \"description\": - \"The localized strings for playlist's description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for playlist's title.\"\n - \ }\n },\n \"description\": \"Playlist localization setting\"\n - \ },\n \"VideoFileDetailsAudioStream\": {\n \"properties\": {\n - \ \"vendor\": {\n \"description\": \"A value that uniquely - identifies a video vendor. Typically, the value is a four-letter vendor code.\",\n - \ \"type\": \"string\"\n },\n \"channelCount\": {\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of audio channels that the stream contains.\"\n },\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The audio - codec that the stream uses.\"\n },\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - audio stream's bitrate, in bits per second.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Information about an audio stream.\",\n - \ \"id\": \"VideoFileDetailsAudioStream\"\n },\n \"LiveChatBanSnippet\": - {\n \"id\": \"LiveChatBanSnippet\",\n \"properties\": {\n \"banDurationSeconds\": - {\n \"description\": \"The duration of a ban, only filled if the - ban has type TEMPORARY.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"type\": {\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of ban.\"\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The chat - this ban is pertinent to.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"MemberSnippet\": {\n \"properties\": {\n \"membershipsDetails\": - {\n \"$ref\": \"MembershipsDetails\",\n \"description\": - \"Details about the user's membership.\"\n },\n \"creatorChannelId\": - {\n \"description\": \"The id of the channel that's offering memberships.\",\n - \ \"type\": \"string\"\n },\n \"memberDetails\": {\n - \ \"description\": \"Details about the member.\",\n \"$ref\": - \"ChannelProfileDetails\"\n }\n },\n \"id\": \"MemberSnippet\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"userComment\": - {\n \"description\": \"The comment added by the member to this Member - Milestone Chat. This field is empty for messages without a comment from the - member.\",\n \"type\": \"string\"\n },\n \"memberMonth\": - {\n \"format\": \"uint32\",\n \"description\": \"The total - amount of months (rounded up) the viewer has been a member that granted them - this Member Milestone Chat. This is the same number of months as is being - displayed to YouTube users.\",\n \"type\": \"integer\"\n },\n - \ \"memberLevelName\": {\n \"description\": \"The name of the - Level at which the viever is a member. The Level names are defined by the - YouTube channel offering the Membership. In some situations this field isn't - filled.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n \"default\": - \"youtube#liveChatModeratorListResponse\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"description\": \"A list of moderators that match - the request criteria.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveChatModeratorListResponse\",\n \"type\": - \"object\"\n },\n \"CommentSnippet\": {\n \"description\": \"Basic - details about a comment, such as its author and text.\",\n \"properties\": - {\n \"viewerRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ],\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n },\n \"videoId\": {\n - \ \"description\": \"The ID of the video the comment refers to, if - any.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the comment was originally - published.\"\n },\n \"updatedAt\": {\n \"description\": - \"The date and time when the comment was last updated.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"parentId\": - {\n \"type\": \"string\",\n \"description\": \"The unique - id of the parent comment, only set for replies.\"\n },\n \"moderationStatus\": - {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"textOriginal\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"likeCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total number of likes this comment has received.\"\n },\n \"textDisplay\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"authorChannelUrl\": {\n \"type\": - \"string\",\n \"description\": \"Link to the author's YouTube channel, - if any.\"\n },\n \"canRate\": {\n \"description\": - \"Whether the current viewer can rate this comment.\",\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"CommentSnippet\"\n },\n \"MembershipsDurationAtLevel\": {\n \"type\": - \"object\",\n \"properties\": {\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\"\n },\n - \ \"memberSince\": {\n \"description\": \"The date and time - when the user became a continuous member for the given level.\",\n \"type\": - \"string\"\n },\n \"level\": {\n \"description\": \"Pricing - level ID.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"MembershipsDurationAtLevel\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"properties\": {\n \"adTag\": {\n \"description\": - \"The URL the client should fetch to request a promoted item.\",\n \"type\": - \"string\"\n },\n \"ctaType\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"description\": \"The type of call-to-action, a message to the - user indicating action that can be taken.\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ]\n },\n \"customCtaButtonText\": - {\n \"type\": \"string\",\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the promoted video.\",\n \"type\": - \"string\"\n },\n \"descriptionText\": {\n \"type\": - \"string\",\n \"description\": \"The text description to accompany - the promoted item.\"\n },\n \"clickTrackingUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user clicked through on this promoted item.\"\n },\n - \ \"creativeViewUrl\": {\n \"type\": \"string\",\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\"\n },\n \"impressionUrl\": {\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"forecastingUrl\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"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.\"\n },\n \"destinationUrl\": {\n \"description\": - \"The URL the client should direct the user to, if the user chooses to visit - the advertiser's website.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Details about a resource which is being - promoted.\"\n },\n \"ChannelSectionLocalization\": {\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel section's title.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"ChannelSection localization - setting\",\n \"id\": \"ChannelSectionLocalization\"\n },\n \"LiveBroadcastStatistics\": - {\n \"type\": \"object\",\n \"properties\": {\n \"totalChatCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The total - number of live chat messages currently on the broadcast. The property and - its value will be present if the broadcast is public, has the live chat feature - enabled, and has at least one message. Note that this field will not be filled - after the broadcast ends. So this property would not identify the number of - chat messages for an archived video of a completed live broadcast.\",\n \"type\": - \"string\"\n },\n \"concurrentViewers\": {\n \"type\": - \"string\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"format\": \"uint64\"\n }\n },\n - \ \"description\": \"Statistics about the live broadcast. These represent - a snapshot of the values at the time of the request. Statistics are only returned - for live broadcasts.\",\n \"id\": \"LiveBroadcastStatistics\"\n },\n - \ \"I18nLanguageSnippet\": {\n \"properties\": {\n \"hl\": {\n - \ \"type\": \"string\",\n \"description\": \"A short BCP-47 - code that uniquely identifies a language.\"\n },\n \"name\": - {\n \"type\": \"string\",\n \"description\": \"The human-readable - name of the language in the language itself.\"\n }\n },\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\",\n \"id\": \"I18nLanguageSnippet\",\n \"type\": \"object\"\n - \ },\n \"LiveChatTextMessageDetails\": {\n \"id\": \"LiveChatTextMessageDetails\",\n - \ \"properties\": {\n \"messageText\": {\n \"type\": \"string\",\n - \ \"description\": \"The user's message.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"IngestionInfo\": {\n \"id\": - \"IngestionInfo\",\n \"type\": \"object\",\n \"description\": \"Describes - information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"properties\": - {\n \"streamName\": {\n \"type\": \"string\",\n \"description\": - \"The stream name that YouTube assigns to the video stream.\"\n },\n - \ \"backupIngestionAddress\": {\n \"description\": \"The backup - ingestion URL that you should use to stream video to YouTube. You have the - option of simultaneously streaming the content that you are sending to the - ingestionAddress to this URL.\",\n \"type\": \"string\"\n },\n - \ \"rtmpsBackupIngestionAddress\": {\n \"description\": \"This - ingestion url may be used instead of backupIngestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ },\n \"rtmpsIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of ingestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ },\n \"ingestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"The primary ingestion URL that you should use - to stream video to YouTube. You must stream video to this URL. Depending on - which application or tool you use to encode your video stream, you may need - to enter the stream URL and stream name separately or you may need to concatenate - them in the following format: *STREAM_URL/STREAM_NAME* \"\n }\n }\n - \ },\n \"CommentSnippetAuthorChannelId\": {\n \"id\": \"CommentSnippetAuthorChannelId\",\n - \ \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoCategorySnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a video category, such as its localized title.\",\n \"properties\": {\n - \ \"channelId\": {\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n - \ \"type\": \"string\",\n \"description\": \"The YouTube - channel that created the video category.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The video - category's title.\"\n },\n \"assignable\": {\n \"type\": - \"boolean\"\n }\n },\n \"id\": \"VideoCategorySnippet\"\n - \ },\n \"PlaylistItemContentDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"startAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\",\n \"type\": \"string\"\n },\n - \ \"videoPublishedAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the video was published to YouTube.\",\n \"format\": - \"date-time\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify a video. To retrieve the video - resource, set the id query parameter to this value in your API request.\",\n - \ \"type\": \"string\"\n },\n \"note\": {\n \"description\": - \"A user-generated note for this item.\",\n \"type\": \"string\"\n - \ },\n \"endAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\"\n - \ }\n },\n \"id\": \"PlaylistItemContentDetails\"\n },\n - \ \"LocalizedString\": {\n \"properties\": {\n \"language\": - {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LocalizedString\"\n },\n \"VideoAbuseReportReason\": {\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoAbuseReportReason\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n },\n - \ \"id\": {\n \"description\": \"The ID of this abuse report - reason.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"A `__videoAbuseReportReason__` resource identifies a reason that a video - could be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\",\n - \ \"id\": \"VideoAbuseReportReason\"\n },\n \"MembershipsLevel\": - {\n \"id\": \"MembershipsLevel\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevel\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the memberships level.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"MembershipsLevelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the level.\"\n }\n },\n \"description\": \"A *membershipsLevel* - resource represents an offer made by YouTube creators for their fans. Users - can become members of the channel by joining one of the available levels. - They will provide recurring monetary support and receives special benefits.\"\n - \ },\n \"VideoCategoryListResponse\": {\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of video categories that can - be associated with YouTube videos. In this map, the video category ID is the - map key, and its value is the corresponding videoCategory resource.\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n }\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"default\": \"youtube#videoCategoryListResponse\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoCategoryListResponse\"\n - \ },\n \"VideoFileDetails\": {\n \"description\": \"Describes original - video file properties, including technical details about audio and video streams, - but also metadata information like content length, digitization time, or geotagging - information.\",\n \"type\": \"object\",\n \"properties\": {\n \"creationTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the uploaded video file was created. The value is specified - in ISO 8601 format. Currently, the following ISO 8601 formats are supported: - - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: - YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"videoStreams\": {\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n },\n \"type\": - \"array\"\n },\n \"durationMs\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The length of - the uploaded video in milliseconds.\"\n },\n \"fileType\": {\n - \ \"description\": \"The uploaded file's type as detected by YouTube's - video processing engine. Currently, YouTube only processes video files, but - this field is present whether a video file or another type of file was uploaded.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"Known - video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an - MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ]\n },\n \"fileName\": {\n - \ \"description\": \"The uploaded file's name. This field is present - whether a video file or another type of file was uploaded.\",\n \"type\": - \"string\"\n },\n \"fileSize\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The uploaded file's size in bytes. This field - is present whether a video file or another type of file was uploaded.\",\n - \ \"type\": \"string\"\n },\n \"bitrateBps\": {\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"audioStreams\": {\n \"description\": \"A list - of audio streams contained in the uploaded video file. Each item in the list - contains detailed metadata about an audio stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n },\n \"type\": - \"array\"\n },\n \"container\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded video file's container format.\"\n - \ }\n },\n \"id\": \"VideoFileDetails\"\n },\n \"CommentThreadListResponse\": - {\n \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"description\": \"A list of comment threads that match the request - criteria.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentThreadListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"CommentThreadListResponse\"\n - \ },\n \"ChannelToStoreLinkDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"storeName\": {\n \"type\": \"string\",\n - \ \"description\": \"Name of the store.\"\n },\n \"merchantId\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"Google Merchant Center id of the store.\"\n },\n \"storeUrl\": - {\n \"type\": \"string\",\n \"description\": \"Landing page - of the store.\"\n }\n },\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\"\n },\n \"ChannelSnippet\": {\n - \ \"properties\": {\n \"thumbnails\": {\n \"description\": - \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel's default title and description.\"\n },\n \"country\": - {\n \"type\": \"string\",\n \"description\": \"The country - of the channel.\"\n },\n \"localized\": {\n \"$ref\": - \"ChannelLocalization\",\n \"description\": \"Localized title and - description, read-only.\"\n },\n \"customUrl\": {\n \"description\": - \"The custom url of the channel.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the channel - was created.\"\n },\n \"title\": {\n \"description\": - \"The channel's title.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the channel.\"\n }\n },\n \"id\": \"ChannelSnippet\",\n - \ \"description\": \"Basic details about a channel, including title, description - and thumbnails.\",\n \"type\": \"object\"\n },\n \"VideoAgeGating\": - {\n \"properties\": {\n \"videoGameRating\": {\n \"type\": - \"string\",\n \"description\": \"Video game rating, if any.\",\n - \ \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"restricted\": {\n \"description\": - \"Age-restricted trailers. For redband trailers and adult-rated video-games. - Only users aged 18+ can view the content. The the field is true the content - is restricted to viewers aged 18+. Otherwise The field won't be present.\",\n - \ \"type\": \"boolean\"\n },\n \"alcoholContent\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Indicates whether - or not the video has alcoholic beverage content. Only users of legal purchasing - age in a particular country, as identified by ICAP, can view the content.\"\n - \ }\n },\n \"id\": \"VideoAgeGating\",\n \"type\": \"object\"\n - \ },\n \"Activity\": {\n \"description\": \"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.\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#activity\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource\",\n \"type\": \"string\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ActivityContentDetails\",\n \"description\": - \"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.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n \"description\": - \"The snippet object contains basic details about the activity, including - the activity's type and group ID.\"\n }\n },\n \"id\": \"Activity\",\n - \ \"type\": \"object\"\n },\n \"SearchResultSnippet\": {\n \"id\": - \"SearchResultSnippet\",\n \"properties\": {\n \"channelTitle\": - {\n \"description\": \"The title of the channel that published the - resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"liveBroadcastContent\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the search result. 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.\"\n },\n \"description\": - {\n \"description\": \"A description of the search result.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - title of the search result.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The creation date and time of the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"type\": \"object\"\n - \ },\n \"ChannelStatus\": {\n \"id\": \"ChannelStatus\",\n \"description\": - \"JSON template for the status part of a channel.\",\n \"properties\": - {\n \"isLinked\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n - \ \"privacyStatus\": {\n \"description\": \"Privacy status - of the channel.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"longUploadsStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The long uploads status of this - channel. See https://support.google.com/youtube/answer/71673 for more information.\",\n - \ \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ]\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"PlaylistItemStatus\": - {\n \"id\": \"PlaylistItemStatus\",\n \"description\": \"Information - about the playlist item's privacy status.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"This resource's privacy status.\"\n }\n }\n },\n \"ThirdPartyLinkListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"type\": \"array\"\n }\n - \ },\n \"id\": \"ThirdPartyLinkListResponse\"\n },\n \"PlaylistItemListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of playlist items that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"PlaylistItem\"\n }\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlistItemListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"PlaylistItemListResponse\"\n },\n \"CaptionSnippet\": - {\n \"properties\": {\n \"failureReason\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The reason that - YouTube failed to process the caption track. This property is only present - if the state property's value is failed.\",\n \"enum\": [\n \"unknownFormat\",\n - \ \"unsupportedFormat\",\n \"processingFailed\"\n ]\n - \ },\n \"isCC\": {\n \"description\": \"Indicates whether - the track contains closed captions for the deaf and hard of hearing. The default - value is false.\",\n \"type\": \"boolean\"\n },\n \"isEasyReader\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n - \ },\n \"isAutoSynced\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n },\n \"name\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The name of the - caption track. The name is intended to be visible to the user as an option - during playback.\",\n \"type\": \"string\"\n },\n \"isDraft\": - {\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\",\n - \ \"type\": \"boolean\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video associated with - the caption track. @mutable youtube.captions.insert\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"status\": {\n \"type\": \"string\",\n \"description\": - \"The caption track's status.\",\n \"enum\": [\n \"serving\",\n - \ \"syncing\",\n \"failed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"isLarge\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\"\n },\n \"language\": {\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"trackKind\": {\n \"enum\": [\n \"standard\",\n - \ \"ASR\",\n \"forced\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The caption - track's type.\"\n },\n \"lastUpdated\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the caption - track was last updated.\",\n \"format\": \"date-time\"\n },\n - \ \"audioTrackType\": {\n \"description\": \"The type of audio - track associated with the caption track.\",\n \"enum\": [\n \"unknown\",\n - \ \"primary\",\n \"commentary\",\n \"descriptive\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Basic details about a caption - track, such as its language and name.\",\n \"type\": \"object\",\n \"id\": - \"CaptionSnippet\"\n },\n \"LiveStreamSnippet\": {\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The stream's title. The value must be between - 1 and 128 characters long.\"\n },\n \"isDefaultStream\": {\n - \ \"type\": \"boolean\"\n },\n \"description\": {\n - \ \"description\": \"The stream's description. The value cannot be - longer than 10000 characters.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the stream - was created.\"\n }\n },\n \"id\": \"LiveStreamSnippet\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"promotedItem\": {\n \"$ref\": - \"ActivityContentDetailsPromotedItem\",\n \"description\": \"The - promotedItem object contains details about a resource which is being promoted. - This property is only present if the snippet.type is promotedItem.\"\n },\n - \ \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"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.\"\n },\n \"recommendation\": - {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n \"description\": - \"The recommendation object contains information about a recommended resource. - This property is only present if the snippet.type is recommendation.\"\n },\n - \ \"like\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsLike\"\n },\n \"subscription\": {\n - \ \"$ref\": \"ActivityContentDetailsSubscription\",\n \"description\": - \"The subscription object contains information about a channel that a user - subscribed to. This property is only present if the snippet.type is subscription.\"\n - \ },\n \"social\": {\n \"description\": \"The social - object contains details about a social network post. This property is only - present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"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.\"\n },\n \"upload\": {\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"playlistItem\": {\n \"description\": \"The - playlistItem object contains information about a new playlist item. This property - is only present if the snippet.type is playlistItem.\",\n \"$ref\": - \"ActivityContentDetailsPlaylistItem\"\n },\n \"bulletin\": - {\n \"description\": \"The bulletin object contains details about - a channel bulletin post. This object is only present if the snippet.type is - bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n },\n - \ \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n }\n },\n \"id\": \"ActivityContentDetails\",\n - \ \"description\": \"Details about the content of an activity: the video - that was shared, the channel that was subscribed to, etc.\"\n },\n \"VideoSuggestions\": - {\n \"type\": \"object\",\n \"properties\": {\n \"processingWarnings\": - {\n \"description\": \"A list of reasons why YouTube may have difficulty - transcoding the uploaded video or that might result in an erroneous transcoding. - These warnings are generated before YouTube actually processes the uploaded - video file. In addition, they identify issues that are unlikely to cause the - video processing to fail but that might cause problems such as sync issues, - video artifacts, or a missing audio track.\",\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ]\n },\n \"type\": \"array\"\n },\n \"editorSuggestions\": - {\n \"description\": \"A list of video editing operations that might - improve the video quality or playback experience of the uploaded video.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"enum\": - [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ]\n - \ }\n },\n \"tagSuggestions\": {\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\",\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"type\": \"array\"\n },\n \"processingErrors\": - {\n \"items\": {\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"enumDescriptions\": [\n \"File - contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., - a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file.\",\n \"Document - or text file (e.g., MS Word document).\",\n \"An archive file - (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout - type.\"\n ],\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of errors that will prevent YouTube from - successfully processing the uploaded video video. These errors indicate that, - regardless of the video's current processing status, eventually, that status - will almost certainly be failed.\",\n \"type\": \"array\"\n },\n - \ \"processingHints\": {\n \"description\": \"A list of suggestions - that may improve YouTube's ability to process the video.\",\n \"type\": - \"array\",\n \"items\": {\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ],\n \"enumDescriptions\": [\n \"The MP4 - file is not streamable, this will slow down the processing. MOOV atom was - not found at the beginning of the file.\",\n \"Probably a better - quality version of the video exists. The video has wide screen aspect ratio, - but is not an HD video.\",\n \"Uploaded video is spherical video.\",\n - \ \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\"\n }\n }\n },\n \"description\": - \"Specifies suggestions on how to improve video content, including encoding - hints, tag suggestions, and editor suggestions.\",\n \"id\": \"VideoSuggestions\"\n - \ },\n \"SubscriptionSnippet\": {\n \"description\": \"Basic details - about a subscription, including title, description and thumbnails of the subscribed - item.\",\n \"type\": \"object\",\n \"properties\": {\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the subscription was created.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The subscription's details.\"\n },\n \"resourceId\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"description\": \"The id object contains - information about the channel that the user subscribed to.\",\n \"$ref\": - \"ResourceId\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the subscription belongs to.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"title\": {\n \"description\": - \"The subscription's title.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the subscriber's channel.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"SubscriptionSnippet\"\n },\n - \ \"ThumbnailSetResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"description\": \"A list of thumbnails.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n - \ }\n },\n \"kind\": {\n \"default\": \"youtube#thumbnailSetResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"ThumbnailSetResponse\",\n - \ \"type\": \"object\"\n },\n \"ChannelSectionSnippet\": {\n \"properties\": - {\n \"defaultLanguage\": {\n \"description\": \"The language - of the channel section's default title and description.\",\n \"type\": - \"string\"\n },\n \"position\": {\n \"description\": - \"The position of the channel section in the channel.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"title\": - {\n \"description\": \"The channel section's title for multiple_playlists - and multiple_channels.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"description\": \"Localized title, read-only.\",\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\",\n \"type\": \"string\"\n },\n \"style\": - {\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The style of the channel section.\"\n },\n \"type\": {\n \"description\": - \"The type of the channel section.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ]\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelSectionSnippet\",\n \"description\": \"Basic details about a - channel section, including title, style and position.\"\n },\n \"SuperChatEventListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"description\": - \"A list of Super Chat purchases that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n - \ }\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#superChatEventListResponse\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"id\": \"SuperChatEventListResponse\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"properties\": {\n \"blocked\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the video is blocked. If this property is present and a country is not - listed in its value, then the video is viewable in that country. If this property - is present and contains an empty list, the video is viewable in all countries.\"\n - \ },\n \"allowed\": {\n \"type\": \"array\",\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"type\": - \"object\",\n \"description\": \"DEPRECATED Region restriction of the - video.\",\n \"id\": \"VideoContentDetailsRegionRestriction\"\n },\n - \ \"VideoLiveStreamingDetails\": {\n \"description\": \"Details about - the live streaming metadata.\",\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"activeLiveChatId\": - {\n \"description\": \"The ID of the currently active live chat attached - to this video. This field is filled only if the video is a currently live - broadcast that has live chat. Once the broadcast transitions to complete this - field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\",\n \"type\": \"string\"\n - \ },\n \"scheduledEndTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The time - that the broadcast is scheduled to end. If the value is empty or the property - is not present, then the broadcast is scheduled to contiue indefinitely.\"\n - \ },\n \"concurrentViewers\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of viewers currently watching the - broadcast. The property and its value will be present if the broadcast has - current viewers and the broadcast owner has not hidden the viewcount for the - video. Note that YouTube stops tracking the number of concurrent viewers for - a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"format\": \"uint64\"\n },\n \"actualEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast actually ended. This - value will not be available until the broadcast is over.\"\n },\n \"actualStartTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - time that the broadcast actually started. This value will not be available - until the broadcast begins.\",\n \"type\": \"string\"\n },\n - \ \"scheduledStartTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast is scheduled to begin.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"Playlist\": - {\n \"description\": \"A *playlist* resource represents a YouTube playlist. - A playlist is a collection of videos that can be viewed sequentially and shared - with other users. A playlist can contain up to 200 videos, and YouTube does - not limit the number of playlists that each user creates. By default, playlists - are publicly visible to other users, but playlists can be public or private. - YouTube also uses playlists to identify special collections of videos for - a channel, such as: - uploaded videos - favorite videos - positively rated - (liked) videos - watch history - watch later To be more specific, these lists - are associated with a channel, which is a collection of a person, group, or - company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods.\",\n \"id\": - \"Playlist\",\n \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the playlist, such as its title and description.\",\n \"$ref\": - \"PlaylistSnippet\"\n },\n \"player\": {\n \"$ref\": - \"PlaylistPlayer\",\n \"description\": \"The player object contains - information that you would use to play the playlist in an embedded player.\"\n - \ },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"PlaylistContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - like video count.\"\n },\n \"status\": {\n \"$ref\": - \"PlaylistStatus\",\n \"description\": \"The status object contains - status information for the playlist.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlist\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"PlaylistPlayer\": - {\n \"id\": \"PlaylistPlayer\",\n \"properties\": {\n \"embedHtml\": - {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a - player that will play the playlist.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"Comment\": {\n \"description\": - \"A *comment* represents a single YouTube comment.\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#comment\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#comment\\\".\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the comment.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"Comment\",\n - \ \"type\": \"object\"\n },\n \"VideoTopicDetails\": {\n \"type\": - \"object\",\n \"description\": \"Freebase topic information related to - the video.\",\n \"id\": \"VideoTopicDetails\",\n \"properties\": - {\n \"relevantTopicIds\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\"\n - \ },\n \"topicIds\": {\n \"description\": \"A list of - Freebase topic IDs that are centrally associated with the video. These are - topics that are centrally featured in the video, and it can be said that the - video is mainly about each of these. You can retrieve information about each - topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"topicCategories\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Wikipedia URLs that provide a high-level - description of the video's content.\",\n \"type\": \"array\"\n }\n - \ }\n },\n \"LiveStreamConfigurationIssue\": {\n \"properties\": - {\n \"reason\": {\n \"type\": \"string\",\n \"description\": - \"The short-form reason for this issue.\"\n },\n \"severity\": - {\n \"enum\": [\n \"info\",\n \"warning\",\n - \ \"error\"\n ],\n \"description\": \"How severe - this issue is to the stream.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The long-form description of the issue and how to resolve it.\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ],\n \"description\": - \"The kind of error happening.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamConfigurationIssue\"\n },\n \"I18nLanguageListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#i18nLanguageListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"I18nLanguage\"\n },\n \"description\": \"A list of supported - i18n languages. In this map, the i18n language ID is the map key, and its - value is the corresponding i18nLanguage resource.\",\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n }\n },\n \"id\": \"I18nLanguageListResponse\"\n - \ },\n \"ChannelStatistics\": {\n \"id\": \"ChannelStatistics\",\n - \ \"properties\": {\n \"videoCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of videos uploaded to the channel.\"\n },\n \"subscriberCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of subscribers that the channel has.\"\n },\n \"commentCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of comments for the channel.\",\n \"type\": \"string\"\n },\n - \ \"viewCount\": {\n \"description\": \"The number of times - the channel has been viewed.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"hiddenSubscriberCount\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the number of subscribers - is shown for this user.\"\n }\n },\n \"description\": \"Statistics - about a channel: number of subscribers, number of videos in the channel, etc.\",\n - \ \"type\": \"object\"\n },\n \"Entity\": {\n \"id\": \"Entity\",\n - \ \"properties\": {\n \"url\": {\n \"type\": \"string\"\n - \ },\n \"typeId\": {\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"PlaylistItemSnippet\": {\n \"id\": \"PlaylistItemSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the user that added the item to the playlist.\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the playlist item. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": - \"string\"\n },\n \"playlistId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\",\n \"type\": \"string\"\n - \ },\n \"videoOwnerChannelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel this video belongs - to.\"\n },\n \"resourceId\": {\n \"annotations\": {\n - \ \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The id object contains information that can be - used to uniquely identify the resource that is included in the playlist as - the playlist item.\",\n \"$ref\": \"ResourceId\"\n },\n \"description\": - {\n \"description\": \"The item's description.\",\n \"type\": - \"string\"\n },\n \"videoOwnerChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel id for the channel this - video belongs to.\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the item - was added to the playlist.\",\n \"type\": \"string\"\n },\n - \ \"position\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The order in which the item appears - in the playlist. The value uses a zero-based index, so the first item has - a position of 0, the second item has a position of 1, and so forth.\"\n },\n - \ \"title\": {\n \"description\": \"The item's title.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails. - Basic details of a YouTube Playlist item provided by the author. Next ID: - 15\"\n },\n \"ThirdPartyLinkSnippet\": {\n \"description\": \"Basic - information about a third party account link, including its type and type-specific - information.\",\n \"id\": \"ThirdPartyLinkSnippet\",\n \"properties\": - {\n \"channelToStoreLink\": {\n \"description\": \"Information - specific to a link between a channel and a store on a merchandising platform.\",\n - \ \"$ref\": \"ChannelToStoreLinkDetails\"\n },\n \"type\": - {\n \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Type of the link named after the entities that are being linked.\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ]\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"properties\": {\n \"secondaryReasons\": {\n \"description\": - \"The secondary reasons associated with this reason, if any are available. - (There might be 0 or more.)\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n }\n - \ },\n \"label\": {\n \"description\": \"The localized - label belonging to this abuse report reason.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about a video category, - such as its localized title.\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n \"properties\": - {\n \"banType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"permanent\",\n \"temporary\"\n ],\n \"description\": - \"The type of ban.\"\n },\n \"banDurationSeconds\": {\n \"description\": - \"The duration of the ban. This property is only present if the banType is - temporary.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ },\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"The details of the user that was banned.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"id\": \"LiveChatMembershipGiftingDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"giftMembershipsCount\": {\n \"type\": - \"integer\",\n \"description\": \"The number of gift memberships - purchased by the user.\",\n \"format\": \"int32\"\n },\n \"giftMembershipsLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the level of the gift memberships purchased by the user. The Level names - are defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n }\n }\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"description\": \"Details about a resource which was added to a - channel.\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"TokenPagination\": {\n \"id\": \"TokenPagination\",\n \"properties\": - {},\n \"type\": \"object\",\n \"description\": \"Stub token pagination - template to suppress results.\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"type\": \"object\",\n \"description\": \"Information about - a video that was marked as a favorite video.\",\n \"id\": \"ActivityContentDetailsFavorite\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"VideoStatus\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a video category, such as its localized title. Next - Id: 18\",\n \"properties\": {\n \"uploadStatus\": {\n \"enum\": - [\n \"uploaded\",\n \"processed\",\n \"failed\",\n - \ \"rejected\",\n \"deleted\"\n ],\n \"description\": - \"The status of the uploaded video.\",\n \"enumDescriptions\": [\n - \ \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"type\": - \"string\"\n },\n \"embeddable\": {\n \"description\": - \"This value indicates if the video can be embedded on another website. @mutable - youtube.videos.insert youtube.videos.update\",\n \"type\": \"boolean\"\n - \ },\n \"failureReason\": {\n \"description\": \"This - value explains why a video failed to upload. This property is only present - if the uploadStatus property indicates that the upload failed.\",\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ],\n \"enumDescriptions\": [\n \"Unable to convert - video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ],\n \"type\": - \"string\"\n },\n \"publishAt\": {\n \"description\": - \"The date and time when the video is scheduled to publish. It can be set - only if the privacy status of the video is private..\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's privacy status.\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"rejectionReason\": {\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\"\n - \ },\n \"publicStatsViewable\": {\n \"description\": - \"This value indicates if the extended video statistics on the watch page - can be viewed by everyone. Note that the view count, likes, etc will still - be visible if this is disabled. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n },\n \"license\": {\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - license. @mutable youtube.videos.insert youtube.videos.update\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n }\n },\n \"id\": \"VideoStatus\"\n - \ },\n \"ChannelSectionListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#channelSectionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of ChannelSections that match the request criteria.\"\n }\n },\n - \ \"id\": \"ChannelSectionListResponse\"\n },\n \"LiveChatModeratorSnippet\": - {\n \"id\": \"LiveChatModeratorSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"liveChatId\": {\n \"description\": - \"The ID of the live chat this moderator can act on.\",\n \"type\": - \"string\"\n },\n \"moderatorDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - moderator.\"\n }\n }\n },\n \"ChannelAuditDetails\": {\n - \ \"id\": \"ChannelAuditDetails\",\n \"properties\": {\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any unresolved claims.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"The auditDetails object encapsulates - channel data that is relevant for YouTube Partners during the audit process.\"\n - \ },\n \"VideoProcessingDetails\": {\n \"type\": \"object\",\n \"id\": - \"VideoProcessingDetails\",\n \"properties\": {\n \"fileDetailsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether file details are available for the uploaded video. You can - retrieve a video's file details by requesting the fileDetails part in your - videos.list() request.\"\n },\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n },\n - \ \"processingFailureReason\": {\n \"description\": \"The reason - that YouTube failed to process the video. This property will only have a value - if the processingStatus property's value is failed.\",\n \"enum\": - [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"editorSuggestionsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether video - editing suggestions, which might improve video quality or the playback experience, - are available for the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\"\n },\n \"processingProgress\": - {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n },\n \"tagSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether keyword (tag) suggestions are available for the video. Tags - can be added to a video's metadata to make it easier for other users to find - the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"processingStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"description\": \"The - video's processing status. This value indicates whether YouTube was able to - process the video or if the video is still being processed.\"\n },\n - \ \"processingIssuesAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\"\n }\n - \ },\n \"description\": \"Describes processing status and progress - and availability of some other Video resource parts.\"\n },\n \"VideoAbuseReport\": - {\n \"properties\": {\n \"comments\": {\n \"description\": - \"Additional comments regarding the abuse report.\",\n \"type\": - \"string\"\n },\n \"reasonId\": {\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\",\n \"type\": \"string\"\n },\n - \ \"secondaryReasonId\": {\n \"type\": \"string\",\n \"description\": - \"The specific, or secondary, reason that this content is abusive (if available). - The value is an abuse report reason ID that is a valid secondary reason for - the primary reason.\"\n },\n \"language\": {\n \"description\": - \"The language that the content was viewed in.\",\n \"type\": \"string\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n }\n - \ },\n \"id\": \"VideoAbuseReport\",\n \"type\": \"object\"\n - \ },\n \"ImageSettings\": {\n \"type\": \"object\",\n \"properties\": - {\n \"largeBrandedBannerImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n - \ \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\"\n - \ },\n \"bannerMobileExtraHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size high resolution (1440x395).\",\n \"type\": - \"string\"\n },\n \"bannerTabletLowImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size low resolution - (1138x188).\"\n },\n \"bannerTabletExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size extra - high resolution (2560x424).\"\n },\n \"bannerTvLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size low resolution (854x480).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTvHighImageUrl\": - {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"trackingImageUrl\": - {\n \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"bannerImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n },\n \"bannerTvImageUrl\": {\n - \ \"description\": \"Banner image. TV size extra high resolution (2120x1192).\",\n - \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"bannerTabletImageUrl\": {\n \"description\": \"Banner image. - Tablet size (1707x283).\",\n \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size (640x175).\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"largeBrandedBannerImageImapScript\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The image map script - for the large banner image.\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"backgroundImageUrl\": - {\n \"description\": \"The URL for the background image shown on - the video watch page. The image should be 1200px by 615px, with a maximum - file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n }\n - \ },\n \"description\": \"Branding properties for images associated - with the channel.\",\n \"id\": \"ImageSettings\"\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"type\": \"object\",\n \"id\": \"VideoSuggestionsTagSuggestion\",\n - \ \"properties\": {\n \"categoryRestricts\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A set of video categories for which the tag is - relevant. You can use this information to display appropriate tag suggestions - based on the video category that the video uploader associates with the video. - By default, tag suggestions are relevant for all categories if there are no - restricts defined for the keyword.\"\n },\n \"tag\": {\n \"type\": - \"string\",\n \"description\": \"The keyword tag suggested for the - video.\"\n }\n },\n \"description\": \"A single tag suggestion - with it's relevance information.\"\n },\n \"VideoSnippet\": {\n \"properties\": - {\n \"categoryId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube video category associated with the video.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that the video was uploaded to.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the video was uploaded.\"\n },\n \"thumbnails\": {\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"title\": {\n - \ \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the videos's default snippet.\"\n },\n \"defaultAudioLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\"\n - \ },\n \"liveBroadcastContent\": {\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The live - broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ]\n },\n - \ \"tags\": {\n \"description\": \"A list of keyword tags associated - with the video. Tags may contain spaces.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"localized\": - {\n \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\",\n \"$ref\": \"VideoLocalization\"\n },\n \"description\": - {\n \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the video belongs to.\"\n }\n },\n \"id\": - \"VideoSnippet\",\n \"description\": \"Basic details about a video, including - title, description, uploader, thumbnails and category.\",\n \"type\": - \"object\"\n },\n \"ResourceId\": {\n \"type\": \"object\",\n \"properties\": - {\n \"playlistId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a playlist. - This property is only present if the resourceId.kind value is youtube#playlist.\",\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the referred resource, if that resource is a channel. This property is only - present if the resourceId.kind value is youtube#channel.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"The type of the API resource.\"\n }\n - \ },\n \"description\": \"A resource id is a generic reference that - points to another YouTube resource.\",\n \"id\": \"ResourceId\"\n },\n - \ \"Thumbnail\": {\n \"type\": \"object\",\n \"id\": \"Thumbnail\",\n - \ \"properties\": {\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The thumbnail image's URL.\"\n },\n \"height\": - {\n \"description\": \"(Optional) Height of the thumbnail image.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"width\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"(Optional) Width of the thumbnail - image.\"\n }\n },\n \"description\": \"A thumbnail is an - image representing a YouTube resource.\"\n },\n \"VideoMonetizationDetails\": - {\n \"type\": \"object\",\n \"id\": \"VideoMonetizationDetails\",\n - \ \"properties\": {\n \"access\": {\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\",\n - \ \"$ref\": \"AccessPolicy\"\n }\n },\n \"description\": - \"Details about monetization of a YouTube Video.\"\n },\n \"SubscriptionListResponse\": - {\n \"type\": \"object\",\n \"id\": \"SubscriptionListResponse\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"items\": {\n \"description\": - \"A list of subscriptions that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Subscription\"\n - \ }\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n }\n - \ },\n \"SubscriptionSubscriberSnippet\": {\n \"description\": \"Basic - details about a subscription's subscriber including title, description, channel - ID and thumbnails.\",\n \"properties\": {\n \"thumbnails\": {\n - \ \"description\": \"Thumbnails for this subscriber.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The title of the subscriber.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel ID of the subscriber.\"\n },\n \"description\": - {\n \"description\": \"The description of the subscriber.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"type\": \"object\"\n },\n \"RelatedEntity\": {\n \"properties\": - {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"RelatedEntity\"\n },\n \"ThirdPartyLink\": - {\n \"id\": \"ThirdPartyLink\",\n \"type\": \"object\",\n \"description\": - \"A *third party account link* resource represents a link between a YouTube - account or a channel and an account on a third-party service.\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"linkingToken\": {\n \"description\": - \"The linking_token identifies a YouTube account and channel with which the - third party account is linked.\",\n \"type\": \"string\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the status of the link.\",\n \"$ref\": \"ThirdPartyLinkStatus\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the third- party account link.\",\n \"$ref\": - \"ThirdPartyLinkSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"default\": \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"I18nLanguage\": {\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"default\": \"youtube#i18nLanguage\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the i18n language, such as language code - and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n language.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"An *i18nLanguage* resource identifies a UI language currently supported - by YouTube.\",\n \"type\": \"object\",\n \"id\": \"I18nLanguage\"\n - \ },\n \"TestItem\": {\n \"type\": \"object\",\n \"id\": \"TestItem\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"gaia\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n }\n }\n },\n \"TestItemTestItemSnippet\": {\n - \ \"type\": \"object\",\n \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\"\n - \ },\n \"LanguageTag\": {\n \"type\": \"object\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LanguageTag\"\n },\n \"ActivityContentDetailsLike\": - {\n \"id\": \"ActivityContentDetailsLike\",\n \"description\": \"Information - about a resource that received a positive (like) rating.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the rated resource.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"SearchListResponse\": {\n \"type\": \"object\",\n \"id\": - \"SearchListResponse\",\n \"properties\": {\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"regionCode\": {\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#searchListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"SearchResult\"\n },\n \"description\": \"Pagination information - for token pagination.\",\n \"type\": \"array\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n }\n },\n \"InvideoBranding\": - {\n \"id\": \"InvideoBranding\",\n \"type\": \"object\",\n \"description\": - \"LINT.IfChange Describes an invideo branding.\",\n \"properties\": {\n - \ \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The url of the uploaded image. Only used in apiary to api communication.\"\n - \ },\n \"imageBytes\": {\n \"description\": \"The bytes - the uploaded image. Only used in api to youtube communication.\",\n \"format\": - \"byte\",\n \"type\": \"string\"\n },\n \"timing\": - {\n \"description\": \"The temporal position within the video where - watermark will be displayed.\",\n \"$ref\": \"InvideoTiming\"\n },\n - \ \"position\": {\n \"description\": \"The spatial position - within the video where the branding watermark will be displayed.\",\n \"$ref\": - \"InvideoPosition\"\n },\n \"targetChannelId\": {\n \"description\": - \"The channel to which this branding links. If not present it defaults to - the current channel.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"InvideoPosition\": {\n \"description\": \"Describes the - spatial position of a visual widget inside a video. It is a union of various - position types, out of which only will be set one.\",\n \"id\": \"InvideoPosition\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"type\": {\n - \ \"enumDescriptions\": [\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"Defines the position type.\",\n - \ \"enum\": [\n \"corner\"\n ]\n },\n \"cornerPosition\": - {\n \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"type\": - \"string\",\n \"description\": \"Describes in which corner of the - video the visual widget will appear.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n }\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"id\": \"LiveChatMessageAuthorDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n },\n \"isChatSponsor\": {\n \"description\": - \"Whether the author is a sponsor of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"isChatModerator\": {\n \"description\": - \"Whether the author is a moderator of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"isChatOwner\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author is the owner of the live chat.\"\n - \ },\n \"channelId\": {\n \"description\": \"The YouTube - channel ID.\",\n \"type\": \"string\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - display name.\"\n }\n }\n },\n \"ActivitySnippet\": {\n - \ \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\",\n \"id\": - \"ActivitySnippet\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel responsible for this activity\"\n },\n - \ \"thumbnails\": {\n \"description\": \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel associated with the activity.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the resource primarily associated with the activity.\"\n },\n - \ \"type\": {\n \"enum\": [\n \"typeUnspecified\",\n - \ \"upload\",\n \"like\",\n \"favorite\",\n - \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n - \ \"recommendation\",\n \"bulletin\",\n \"social\",\n - \ \"channelItem\",\n \"promotedItem\"\n ],\n - \ \"description\": \"The type of activity that the resource describes.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"groupId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the video was uploaded.\",\n - \ \"format\": \"date-time\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the resource primarily associated with the activity. @mutable youtube.activities.insert\"\n - \ }\n }\n },\n \"LiveChatSuperStickerDetails\": {\n \"properties\": - {\n \"amountDisplayString\": {\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\",\n \"type\": - \"string\"\n },\n \"superStickerMetadata\": {\n \"description\": - \"Information about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made.\",\n \"type\": \"string\"\n },\n - \ \"tier\": {\n \"format\": \"uint32\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"type\": \"integer\"\n },\n \"amountMicros\": - {\n \"description\": \"The amount purchased by the user, in micros - (1,750,000 micros = 1.75).\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatSuperStickerDetails\"\n },\n \"LiveBroadcastContentDetails\": - {\n \"description\": \"Detailed settings of a broadcast.\",\n \"type\": - \"object\",\n \"properties\": {\n \"enableEmbed\": {\n \"description\": - \"This setting indicates whether the broadcast video can be played in an embedded - player. If you choose to archive the video (using the enableArchive property), - this setting will also apply to the archived video.\",\n \"type\": - \"boolean\"\n },\n \"projection\": {\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"boundStreamId\": - {\n \"type\": \"string\",\n \"description\": \"This value - uniquely identifies the live stream bound to the broadcast.\"\n },\n - \ \"enableClosedCaptions\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n - \ },\n \"boundStreamLastUpdateTimeMs\": {\n \"description\": - \"The date and time that the live stream referenced by boundStreamId was last - updated.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"enableDvr\": {\n \"description\": \"This setting - determines whether viewers can access DVR controls while watching the video. - DVR controls enable the viewer to control the video playback experience by - pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n - \ },\n \"mesh\": {\n \"type\": \"string\",\n \"description\": - \"The mesh for projecting the video if projection is mesh. The mesh value - must be a UTF-8 string containing the base-64 encoding of 3D mesh data that - follows the Spherical Video V2 RFC specification for an mshp box, excluding - the box size and type but including the following four reserved zero bytes - for the version and flags.\",\n \"format\": \"byte\"\n },\n - \ \"enableContentEncryption\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\"\n },\n \"recordFromStart\": - {\n \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\",\n \"type\": \"boolean\"\n },\n \"stereoLayout\": - {\n \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n - \ \"leftRight\",\n \"topBottom\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\"\n },\n - \ \"enableLowLatency\": {\n \"description\": \"Indicates whether - this broadcast has low latency enabled.\",\n \"type\": \"boolean\"\n - \ },\n \"closedCaptionsType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"type\": - \"string\"\n },\n \"latencyPreference\": {\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"type\": - \"string\",\n \"description\": \"If both this and enable_low_latency - are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Best for: highest quality viewer playbacks and higher resolutions.\",\n - \ \"Best for: near real-time interaction, with minimal playback - buffering.\",\n \"Best for: real-time interaction Does not support: - Closed captions, 1440p, and 4k resolutions\"\n ]\n },\n \"monitorStream\": - {\n \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\",\n \"$ref\": - \"MonitorStreamInfo\"\n },\n \"enableAutoStop\": {\n \"description\": - \"This setting indicates whether auto stop is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\",\n \"type\": \"boolean\"\n },\n \"enableAutoStart\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"startWithSlate\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether the broadcast should automatically begin - with an in-stream slate when you update the broadcast's status to live. After - updating the status, you then need to send a liveCuepoints.insert request - that sets the cuepoint's eventState to end to remove the in-stream slate and - make your broadcast stream visible to viewers.\"\n }\n },\n \"id\": - \"LiveBroadcastContentDetails\"\n },\n \"I18nRegionListResponse\": {\n - \ \"id\": \"I18nRegionListResponse\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"default\": - \"youtube#i18nRegionListResponse\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\",\n - \ \"items\": {\n \"$ref\": \"I18nRegion\"\n }\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"CdnSettings\": {\n \"properties\": {\n \"frameRate\": - {\n \"type\": \"string\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"description\": - \"The frame rate of the inbound video data.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"resolution\": {\n \"type\": \"string\",\n \"enum\": - [\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The resolution of the inbound video data.\"\n },\n \"ingestionType\": - {\n \"enum\": [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \" The method or protocol used to - transmit the video stream.\"\n },\n \"ingestionInfo\": {\n \"$ref\": - \"IngestionInfo\",\n \"description\": \"The ingestionInfo object - contains information that YouTube provides that you need to transmit your - RTMP or HTTP stream to YouTube.\"\n },\n \"format\": {\n \"type\": - \"string\",\n \"description\": \"The format of the video stream that - you are sending to Youtube. \",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n }\n },\n \"description\": \"Brief - description of the live stream cdn settings.\",\n \"type\": \"object\",\n - \ \"id\": \"CdnSettings\"\n },\n \"MembershipsDuration\": {\n \"properties\": - {\n \"memberTotalDurationMonths\": {\n \"description\": \"The - cumulative time the user has been a member across all levels in complete months - (the time is rounded down to the nearest integer).\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n },\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member across all levels.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"MembershipsDuration\",\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageRetractedDetails\": {\n \"id\": \"LiveChatMessageRetractedDetails\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"type\": \"object\",\n \"description\": \"Details about a social - network post.\",\n \"id\": \"ActivityContentDetailsSocial\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\"\n },\n \"imageUrl\": - {\n \"type\": \"string\",\n \"description\": \"An image - of the post's author.\"\n },\n \"referenceUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL of the social network post.\"\n - \ },\n \"author\": {\n \"description\": \"The author - of the social network post.\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The name of the social network.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n }\n },\n \"MembershipsLevelListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of pricing levels offered - by a creator to the fans.\",\n \"items\": {\n \"$ref\": - \"MembershipsLevel\"\n }\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\"\n - \ },\n \"WatchSettings\": {\n \"id\": \"WatchSettings\",\n \"type\": - \"object\",\n \"description\": \"Branding properties for the watch. All - deprecated.\",\n \"properties\": {\n \"textColor\": {\n \"description\": - \"The background color for the video watch page's branded area.\",\n \"type\": - \"string\"\n },\n \"backgroundColor\": {\n \"type\": - \"string\",\n \"description\": \"The text color for the video watch - page's branded area.\"\n },\n \"featuredPlaylistId\": {\n \"description\": - \"An ID that uniquely identifies a playlist that displays next to the video - player.\",\n \"type\": \"string\"\n }\n }\n },\n \"ChannelBannerResource\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelBannerResource\"\n - \ },\n \"url\": {\n \"description\": \"The URL of this - banner image.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ChannelBannerResource\",\n \"description\": \"A channel banner returned - as the response to a channel_banner.insert call.\",\n \"type\": \"object\"\n - \ },\n \"Member\": {\n \"type\": \"object\",\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\",\n - \ \"id\": \"Member\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#member\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the member.\",\n \"$ref\": \"MemberSnippet\"\n - \ }\n }\n },\n \"VideoAbuseReportReasonListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ },\n \"description\": \"A list of valid abuse reasons that - are used with `video.ReportAbuse`.\",\n \"type\": \"array\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The `visitorId` identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n - \ }\n },\n \"id\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"VideoStatistics\": {\n \"description\": \"Statistics about - the video, such as the number of times the video was viewed or liked.\",\n - \ \"type\": \"object\",\n \"id\": \"VideoStatistics\",\n \"properties\": - {\n \"likeCount\": {\n \"description\": \"The number of users - who have indicated that they liked the video by giving it a positive rating.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"commentCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of comments for the video.\",\n \"format\": \"uint64\"\n - \ },\n \"dislikeCount\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of users who have indicated that they disliked the video by giving it a negative - rating.\"\n },\n \"favoriteCount\": {\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"viewCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of times the video has been viewed.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"I18nRegion\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegion\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n region.\"\n }\n },\n \"id\": \"I18nRegion\",\n - \ \"description\": \"A *i18nRegion* resource identifies a region where - YouTube is available.\"\n },\n \"GeoPoint\": {\n \"description\": - \"Geographical coordinates of a point, in WGS84.\",\n \"properties\": - {\n \"altitude\": {\n \"format\": \"double\",\n \"type\": - \"number\",\n \"description\": \"Altitude above the reference ellipsoid, - in meters.\"\n },\n \"latitude\": {\n \"description\": - \"Latitude in degrees.\",\n \"format\": \"double\",\n \"type\": - \"number\"\n },\n \"longitude\": {\n \"description\": - \"Longitude in degrees.\",\n \"format\": \"double\",\n \"type\": - \"number\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"GeoPoint\"\n },\n \"MonitorStreamInfo\": {\n \"description\": - \"Settings and Info of the monitor stream\",\n \"properties\": {\n \"broadcastStreamDelayMs\": - {\n \"format\": \"uint32\",\n \"description\": \"If you - have set the enableMonitorStream property to true, then this property determines - the length of the live broadcast delay.\",\n \"annotations\": {\n - \ \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"integer\"\n },\n - \ \"enableMonitorStream\": {\n \"type\": \"boolean\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"This value determines - whether the monitor stream is enabled for the broadcast. If the monitor stream - is enabled, then YouTube will broadcast the event content on a special stream - intended only for the broadcaster's consumption. The broadcaster can use the - stream to review the event content and also to identify the optimal times - to insert cuepoints. You need to set this value to true if you intend to have - a broadcast delay for your event. *Note:* This property cannot be updated - once the broadcast is in the testing or live state.\"\n },\n \"embedHtml\": - {\n \"description\": \"HTML code that embeds a player that plays - the monitor stream.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"MonitorStreamInfo\"\n },\n - \ \"VideoFileDetailsVideoStream\": {\n \"type\": \"object\",\n \"id\": - \"VideoFileDetailsVideoStream\",\n \"description\": \"Information about - a video stream.\",\n \"properties\": {\n \"heightPixels\": {\n - \ \"description\": \"The encoded video content's height in pixels.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"codec\": {\n \"description\": \"The video codec that the - stream uses.\",\n \"type\": \"string\"\n },\n \"frameRateFps\": - {\n \"format\": \"double\",\n \"description\": \"The video - stream's frame rate, in frames per second.\",\n \"type\": \"number\"\n - \ },\n \"widthPixels\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The encoded - video content's width in pixels. You can calculate the video's encoding aspect - ratio as width_pixels / height_pixels.\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n },\n \"aspectRatio\": {\n \"format\": - \"double\",\n \"description\": \"The video content's display aspect - ratio, which specifies the aspect ratio in which the video should be displayed.\",\n - \ \"type\": \"number\"\n },\n \"bitrateBps\": {\n \"description\": - \"The video stream's bitrate, in bits per second.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"rotation\": - {\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The amount that YouTube needs to - rotate the original source content to properly display the video.\"\n }\n - \ }\n },\n \"VideoContentDetails\": {\n \"properties\": {\n - \ \"duration\": {\n \"description\": \"The length of the video. - The tag value is an ISO 8601 duration in the format PT#M#S, in which the letters - PT indicate that the value specifies a period of time, and the letters M and - S refer to length in minutes and seconds, respectively. The # characters preceding - the M and S letters are both integers that specify the number of minutes (or - seconds) of the video. For example, a value of PT15M51S indicates that the - video is 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n - \ },\n \"licensedContent\": {\n \"description\": \"The - value of is_license_content indicates whether the video is licensed content.\",\n - \ \"type\": \"boolean\"\n },\n \"projection\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the projection format - of the video.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ]\n },\n \"regionRestriction\": {\n \"$ref\": - \"VideoContentDetailsRegionRestriction\",\n \"description\": \"The - regionRestriction object contains information about the countries where a - video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\"\n },\n - \ \"dimension\": {\n \"description\": \"The value of dimension - indicates whether the video is available in 3D or in 2D.\",\n \"type\": - \"string\"\n },\n \"contentRating\": {\n \"$ref\": - \"ContentRating\",\n \"description\": \"Specifies the ratings that - the video received under various rating schemes.\"\n },\n \"caption\": - {\n \"type\": \"string\",\n \"description\": \"The value - of captions indicates whether the video has captions or not.\",\n \"enum\": - [\n \"true\",\n \"false\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"definition\": - {\n \"description\": \"The value of definition indicates whether - the video is available in high definition or only in standard definition.\",\n - \ \"enum\": [\n \"sd\",\n \"hd\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ]\n },\n \"countryRestriction\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - countryRestriction object contains information about the countries where a - video is (or is not) viewable.\"\n },\n \"hasCustomThumbnail\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\"\n }\n },\n - \ \"description\": \"Details about the content of a YouTube Video.\",\n - \ \"id\": \"VideoContentDetails\",\n \"type\": \"object\"\n },\n - \ \"ActivityContentDetailsComment\": {\n \"id\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"Information about a resource that received a comment.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource associated with the comment.\",\n \"$ref\": - \"ResourceId\"\n }\n }\n },\n \"VideoProjectDetails\": {\n - \ \"description\": \"DEPRECATED. b/157517979: This part was never populated - after it was added. However, it sees non-zero traffic because there is generated - client code in the wild that refers to it [1]. We keep this field and do NOT - remove it because otherwise V3 would return an error when this part gets requested - [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"id\": \"VideoProjectDetails\",\n \"type\": \"object\",\n \"properties\": - {}\n },\n \"ChannelSectionContentDetails\": {\n \"properties\": - {\n \"channels\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The channel ids for type multiple_channels.\"\n },\n \"playlists\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The playlist - ids for type single_playlist and multiple_playlists. For singlePlaylist, only - one playlistId is allowed.\"\n }\n },\n \"description\": - \"Details about a channelsection, including playlists and channels.\",\n \"id\": - \"ChannelSectionContentDetails\",\n \"type\": \"object\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"type\": \"object\",\n \"properties\": {\n \"label\": - {\n \"description\": \"The localized label for this abuse report - secondary reason.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The ID of this abuse report secondary reason.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"ActivityContentDetailsUpload\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Information about - the uploaded video.\",\n \"id\": \"ActivityContentDetailsUpload\"\n },\n - \ \"Channel\": {\n \"description\": \"A *channel* resource contains - information about a YouTube channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the channel, such as its title, description, - and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n },\n - \ \"contentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"conversionPings\": {\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n - \ \"description\": \"The contentDetails object encapsulates information - about the channel's content.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel.\",\n \"type\": - \"string\"\n },\n \"status\": {\n \"$ref\": \"ChannelStatus\",\n - \ \"description\": \"The status object encapsulates information about - the privacy status of the channel.\"\n },\n \"kind\": {\n \"default\": - \"youtube#channel\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\"\n - \ },\n \"brandingSettings\": {\n \"description\": \"The - brandingSettings object encapsulates information about the branding of the - channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n },\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"ChannelLocalization\"\n },\n \"description\": \"Localizations - for different languages\",\n \"type\": \"object\"\n },\n \"auditDetails\": - {\n \"$ref\": \"ChannelAuditDetails\",\n \"description\": - \"The auditionDetails object encapsulates channel data that is relevant for - YouTube Partners during the audition process.\"\n },\n \"topicDetails\": - {\n \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\",\n \"$ref\": - \"ChannelTopicDetails\"\n }\n },\n \"id\": \"Channel\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"type\": \"object\",\n - \ \"description\": \"Information that identifies the recommended resource.\",\n - \ \"id\": \"ActivityContentDetailsRecommendation\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\"\n },\n \"reason\": {\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that the resource is recommended to the user.\",\n \"type\": - \"string\"\n },\n \"seedResourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The seedResourceId object contains - information about the resource that caused the recommendation.\"\n }\n - \ }\n },\n \"ChannelSection\": {\n \"id\": \"ChannelSection\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"targeting\": - {\n \"$ref\": \"ChannelSectionTargeting\",\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\"\n },\n \"localizations\": {\n \"description\": - \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"type\": - \"object\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#channelSection\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\",\n \"$ref\": - \"ChannelSectionContentDetails\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel section.\"\n }\n }\n },\n \"VideoListResponse\": - {\n \"id\": \"VideoListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Video\"\n - \ },\n \"type\": \"array\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoListResponse\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ }\n },\n \"CommentThreadReplies\": {\n \"id\": \"CommentThreadReplies\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"comments\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"description\": \"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.\"\n }\n },\n \"description\": \"Comments written - in (direct or indirect) reply to the top level comment.\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource associated with a bulletin post. - @mutable youtube.activities.insert\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsBulletin\",\n \"description\": - \"Details about a channel bulletin post.\"\n },\n \"MemberListResponse\": - {\n \"properties\": {\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"description\": - \"A list of members that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Member\"\n }\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n }\n },\n - \ \"id\": \"MemberListResponse\",\n \"type\": \"object\"\n },\n - \ \"VideoProcessingDetailsProcessingProgress\": {\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"partsTotal\": - {\n \"format\": \"uint64\",\n \"description\": \"An estimate - of the total number of parts that need to be processed for the video. The - number may be updated with more precise estimates while YouTube processes - the video.\",\n \"type\": \"string\"\n },\n \"timeLeftMs\": - {\n \"format\": \"uint64\",\n \"description\": \"An estimate - of the amount of time, in millseconds, that YouTube needs to finish processing - the video.\",\n \"type\": \"string\"\n },\n \"partsProcessed\": - {\n \"type\": \"string\",\n \"description\": \"The number - of parts of the video that YouTube has already processed. You can estimate - the percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\",\n \"format\": - \"uint64\"\n }\n },\n \"description\": \"Video processing - progress and completion time estimate.\"\n },\n \"ChannelTopicDetails\": - {\n \"type\": \"object\",\n \"id\": \"ChannelTopicDetails\",\n \"properties\": - {\n \"topicCategories\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\"\n },\n - \ \"topicIds\": {\n \"description\": \"A list of Freebase topic - IDs associated with the channel. You can retrieve information about each topic - using the Freebase Topic API.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"description\": \"Freebase topic information related to the channel.\"\n - \ },\n \"LiveStreamHealthStatus\": {\n \"id\": \"LiveStreamHealthStatus\",\n - \ \"properties\": {\n \"lastUpdateTimeSeconds\": {\n \"format\": - \"uint64\",\n \"description\": \"The last time this status was updated - (in seconds)\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"type\": \"string\",\n \"description\": \"The status - code of this stream\",\n \"enum\": [\n \"good\",\n \"ok\",\n - \ \"bad\",\n \"noData\",\n \"revoked\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"configurationIssues\": {\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The configurations issues on this stream\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"properties\": {\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"description\": \"The amount purchased by the user, - in micros (1,750,000 micros = 1.75).\",\n \"type\": \"string\"\n - \ },\n \"userComment\": {\n \"description\": \"The comment - added by the user to this Super Chat event.\",\n \"type\": \"string\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"tier\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatSuperChatDetails\"\n - \ },\n \"CommentThreadSnippet\": {\n \"properties\": {\n \"isPublic\": - {\n \"description\": \"Whether the thread (and therefore all its - comments) is visible to all YouTube users.\",\n \"type\": \"boolean\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\"\n },\n \"canReply\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n \"topLevelComment\": - {\n \"description\": \"The top level comment of this thread.\",\n - \ \"$ref\": \"Comment\"\n },\n \"totalReplyCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The total number of replies (not including the top level comment).\"\n },\n - \ \"channelId\": {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"CommentThreadSnippet\",\n - \ \"description\": \"Basic details about a comment thread.\",\n \"type\": - \"object\"\n },\n \"ThumbnailDetails\": {\n \"id\": \"ThumbnailDetails\",\n - \ \"description\": \"Internal representation of thumbnails for a YouTube - resource.\",\n \"type\": \"object\",\n \"properties\": {\n \"default\": - {\n \"description\": \"The default image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"maxres\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The maximum resolution quality - image for this resource.\"\n },\n \"standard\": {\n \"description\": - \"The standard quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"medium\": {\n \"description\": \"The medium - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"high\": {\n \"description\": \"The high quality image for - this resource.\",\n \"$ref\": \"Thumbnail\"\n }\n }\n - \ },\n \"VideoRecordingDetails\": {\n \"properties\": {\n \"recordingDate\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the video was recorded.\"\n - \ },\n \"location\": {\n \"$ref\": \"GeoPoint\",\n \"description\": - \"The geolocation information associated with the video.\"\n },\n \"locationDescription\": - {\n \"description\": \"The text description of the location where - the video was recorded.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Recording information associated with the video.\",\n - \ \"type\": \"object\",\n \"id\": \"VideoRecordingDetails\"\n },\n - \ \"CommentThread\": {\n \"id\": \"CommentThread\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"replies\": - {\n \"$ref\": \"CommentThreadReplies\",\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\"\n },\n \"id\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the comment thread.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentThread\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#commentThread\"\n }\n - \ },\n \"description\": \"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.\"\n },\n \"ChannelBrandingSettings\": - {\n \"properties\": {\n \"channel\": {\n \"$ref\": \"ChannelSettings\",\n - \ \"description\": \"Branding properties for the channel view.\"\n - \ },\n \"image\": {\n \"$ref\": \"ImageSettings\",\n - \ \"description\": \"Branding properties for branding images.\"\n - \ },\n \"watch\": {\n \"description\": \"Branding properties - for the watch page.\",\n \"$ref\": \"WatchSettings\"\n },\n - \ \"hints\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n },\n \"description\": - \"Additional experimental branding properties.\"\n }\n },\n \"description\": - \"Branding properties of a YouTube channel.\",\n \"id\": \"ChannelBrandingSettings\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMessage\": {\n \"id\": - \"LiveChatMessage\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the message.\",\n \"$ref\": - \"LiveChatMessageSnippet\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the message.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatMessage\"\n - \ },\n \"authorDetails\": {\n \"description\": \"The - authorDetails object contains basic details about the user that posted this - message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A *liveChatMessage* - resource represents a chat message in a YouTube Live Chat.\"\n },\n \"I18nRegionSnippet\": - {\n \"type\": \"object\",\n \"id\": \"I18nRegionSnippet\",\n \"properties\": - {\n \"gl\": {\n \"description\": \"The region code as a 2-letter - ISO country code.\",\n \"type\": \"string\"\n },\n \"name\": - {\n \"type\": \"string\",\n \"description\": \"The human-readable - name of the region.\"\n }\n },\n \"description\": \"Basic - details about an i18n region, such as region code and human-readable name.\"\n - \ },\n \"LiveChatNewSponsorDetails\": {\n \"properties\": {\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level that the viewer just had joined. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"isUpgrade\": {\n \"type\": - \"boolean\",\n \"description\": \"If the viewer just had upgraded - from a lower level. For viewers that were not members at the time of purchase, - this field is false.\"\n }\n },\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"type\": \"object\"\n },\n \"VideoRating\": {\n \"description\": - \"Basic details about rating of a video.\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n },\n \"rating\": - {\n \"type\": \"string\",\n \"description\": \"Rating of - a video.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoRating\"\n },\n \"LiveChatModerator\": {\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the moderator.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"default\": \"youtube#liveChatModerator\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the moderator.\",\n \"$ref\": - \"LiveChatModeratorSnippet\"\n }\n },\n \"description\": - \"A *liveChatModerator* resource represents a moderator for a YouTube live - chat. A chat moderator has the ability to ban/unban users from a chat, remove - message, etc.\",\n \"type\": \"object\",\n \"id\": \"LiveChatModerator\"\n - \ },\n \"PlaylistStatus\": {\n \"id\": \"PlaylistStatus\",\n \"properties\": - {\n \"privacyStatus\": {\n \"description\": \"The playlist's - privacy status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveStream\": - {\n \"description\": \"A live stream describes a live ingestion point.\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the stream.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#liveStream\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveStream\\\".\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n - \ \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\"\n },\n - \ \"cdn\": {\n \"description\": \"The cdn object defines the - live stream's content delivery network (CDN) settings. These settings provide - details about the manner in which you stream your content to YouTube.\",\n - \ \"$ref\": \"CdnSettings\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"id\": \"LiveStream\",\n \"type\": \"object\"\n },\n - \ \"LiveStreamContentDetails\": {\n \"properties\": {\n \"isReusable\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the stream is reusable, which means that it can be bound to multiple - broadcasts. It is common for broadcasters to reuse the same stream for many - different broadcasts if those broadcasts occur at different times. If you - set this value to false, then the stream will not be reusable, which means - that it can only be bound to one broadcast. Non-reusable streams differ from - reusable streams in the following ways: - A non-reusable stream can only be - bound to one broadcast. - A non-reusable stream might be deleted by an automated - process after the broadcast ends. - The liveStreams.list method does not list - non-reusable streams if you call the method and set the mine parameter to - true. The only way to use that method to retrieve the resource for a non-reusable - stream is to use the id parameter to identify the stream. \"\n },\n - \ \"closedCaptionsIngestionUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The ingestion URL where the closed captions of - this stream are sent.\"\n }\n },\n \"description\": \"Detailed - settings of a stream.\",\n \"type\": \"object\",\n \"id\": \"LiveStreamContentDetails\"\n - \ },\n \"LiveStreamListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveStreamListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of live - streams that match the request criteria.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n },\n \"id\": \"LiveStreamListResponse\"\n - \ },\n \"LiveChatMessageDeletedDetails\": {\n \"id\": \"LiveChatMessageDeletedDetails\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"SubscriptionContentDetails\": - {\n \"id\": \"SubscriptionContentDetails\",\n \"description\": \"Details - about the content to witch a subscription refers.\",\n \"properties\": - {\n \"newItemCount\": {\n \"description\": \"The number of - new items in the subscription since its content was last read.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"activityType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"type\": - \"string\",\n \"description\": \"The type of activity this subscription - is for (only uploads, everything).\"\n },\n \"totalItemCount\": - {\n \"description\": \"The approximate number of items that the subscription - points to.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#channelListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Channel\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"id\": \"ChannelListResponse\"\n },\n \"AccessPolicy\": {\n \"description\": - \"Rights management policy for YouTube resources.\",\n \"id\": \"AccessPolicy\",\n - \ \"properties\": {\n \"exception\": {\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n },\n \"allowed\": - {\n \"description\": \"The value of allowed indicates whether the - access to the policy is allowed or denied by default.\",\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": - {\n \"id\": \"LiveBroadcastStatus\",\n \"description\": \"Live broadcast - state.\",\n \"properties\": {\n \"recordingStatus\": {\n \"enum\": - [\n \"liveBroadcastRecordingStatusUnspecified\",\n \"notRecording\",\n - \ \"recording\",\n \"recorded\"\n ],\n \"description\": - \"The broadcast's recording status.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"The recording has not yet been started.\",\n \"The - recording is currently on.\",\n \"The recording is completed, and - cannot be started again.\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"This field - will be set to True if the creator declares the broadcast to be kids only: - go/live-cw-work.\"\n },\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The broadcast's - privacy status. Note that the broadcast represents exactly one YouTube video, - so the privacy settings are identical to those supported for videos. In addition, - you can set this field by modifying the broadcast resource or by setting the - privacyStatus field of the corresponding video resource.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"lifeCycleStatus\": {\n \"description\": \"The broadcast's - status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"enumDescriptions\": [\n \"No value or the - value is unknown.\",\n \"Incomplete settings, but otherwise valid\",\n - \ \"Complete settings\",\n \"Visible only to partner, - may need special UI treatment\",\n \"Viper is recording; this means - the \\\"clock\\\" is running\",\n \"The broadcast is finished.\",\n - \ \"This broadcast was removed by admin action\",\n \"Transition - into TESTING has been requested\",\n \"Transition into LIVE has - been requested\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ]\n },\n \"liveBroadcastPriority\": - {\n \"type\": \"string\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Low priority - broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ],\n \"description\": \"Priority of the live broadcast - event (internal state).\"\n },\n \"madeForKids\": {\n \"description\": - \"Whether the broadcast is made for kids or not, decided by YouTube instead - of the creator. This field is read only.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"Information about a new playlist item.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n },\n \"playlistId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n },\n \"playlistItemId\": - {\n \"type\": \"string\",\n \"description\": \"ID of the - item within the playlist.\"\n }\n }\n },\n \"ChannelSettings\": - {\n \"description\": \"Branding properties for the channel view.\",\n - \ \"id\": \"ChannelSettings\",\n \"properties\": {\n \"profileColor\": - {\n \"type\": \"string\",\n \"description\": \"A prominent - color that can be rendered on this channel page.\"\n },\n \"defaultTab\": - {\n \"type\": \"string\",\n \"description\": \"Which content - tab users should see when viewing the channel.\"\n },\n \"unsubscribedTrailer\": - {\n \"description\": \"The trailer of the channel, for users that - are not subscribers.\",\n \"type\": \"string\"\n },\n \"country\": - {\n \"description\": \"The country of the channel.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"Specifies the channel description.\",\n \"type\": \"string\"\n - \ },\n \"featuredChannelsTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Title for the featured channels tab.\"\n },\n - \ \"trackingAnalyticsAccountId\": {\n \"description\": \"The - ID for a Google Analytics account to track and measure traffic to the channels.\",\n - \ \"type\": \"string\"\n },\n \"moderateComments\": - {\n \"description\": \"Whether user-submitted comments left on the - channel page need to be approved by the channel owner to be publicly visible.\",\n - \ \"type\": \"boolean\"\n },\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"keywords\": - {\n \"type\": \"string\",\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the channel title.\"\n },\n \"showBrowseView\": {\n \"description\": - \"Whether the tab to browse the videos should be displayed.\",\n \"type\": - \"boolean\"\n },\n \"featuredChannelsUrls\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The list of featured channels.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ChannelConversionPings\": - {\n \"properties\": {\n \"pings\": {\n \"description\": - \"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.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n }\n }\n },\n \"type\": - \"object\",\n \"description\": \"The conversionPings object encapsulates - information about conversion pings that need to be respected by the channel.\",\n - \ \"id\": \"ChannelConversionPings\"\n },\n \"MembershipsLevelSnippet\": - {\n \"properties\": {\n \"creatorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the channel that's offering - channel memberships.\"\n },\n \"levelDetails\": {\n \"description\": - \"Details about the pricing level.\",\n \"$ref\": \"LevelDetails\"\n - \ }\n },\n \"id\": \"MembershipsLevelSnippet\",\n \"type\": - \"object\"\n },\n \"VideoLocalization\": {\n \"id\": \"VideoLocalization\",\n - \ \"description\": \"Localized versions of certain video properties (e.g. - title).\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"Localized version of the video's - title.\"\n },\n \"description\": {\n \"description\": - \"Localized version of the video's description.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LevelDetails\": - {\n \"id\": \"LevelDetails\",\n \"properties\": {\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - that should be used when referring to this level.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"PlaylistSnippet\": {\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails.\",\n - \ \"id\": \"PlaylistSnippet\",\n \"properties\": {\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist. 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.\"\n },\n \"title\": - {\n \"description\": \"The playlist's title.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"localized\": {\n \"$ref\": \"PlaylistLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the playlist.\"\n },\n \"description\": {\n \"description\": - \"The playlist's description.\",\n \"type\": \"string\"\n },\n - \ \"channelTitle\": {\n \"description\": \"The channel title - of the channel that the video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the playlist was created.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the playlist's default title and description.\"\n },\n \"thumbnailVideoId\": - {\n \"description\": \"Note: if the playlist has a custom thumbnail, - this field will not be populated. The video id selected by the user that will - be used as the thumbnail of this playlist. This field defaults to the first - publicly viewable video in the playlist, if: 1. The user has never selected - a video to be the thumbnail of the playlist. 2. The user selects a video to - be the thumbnail, and then removes that video from the playlist. 3. The user - selects a non-owned video to be the thumbnail, but that video becomes private, - or gets deleted.\",\n \"type\": \"string\"\n },\n \"tags\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"Keyword tags - associated with the playlist.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ThirdPartyLinkStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"linkStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The third-party link status object contains information about the status - of the link.\"\n },\n \"ActivityContentDetailsSubscription\": {\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsSubscription\",\n \"description\": - \"Information about a channel that a user subscribed to.\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\"\n }\n }\n },\n \"SuperChatEventSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"messageType\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\"\n },\n \"isSuperStickerEvent\": {\n - \ \"type\": \"boolean\",\n \"description\": \"True if this - event is a Super Sticker event.\"\n },\n \"commentText\": {\n - \ \"type\": \"string\",\n \"description\": \"The text contents - of the comment left by the user.\"\n },\n \"channelId\": {\n - \ \"description\": \"Channel id where the event occurred.\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\",\n \"type\": - \"string\"\n },\n \"displayString\": {\n \"description\": - \"A rendered string that displays the purchase amount and currency (e.g., - \\\"$1.00\\\"). The string is rendered for the given language.\",\n \"type\": - \"string\"\n },\n \"createdAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the event occurred.\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\"\n },\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\"\n },\n \"supporterDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - supporter.\"\n }\n },\n \"id\": \"SuperChatEventSnippet\"\n - \ },\n \"VideoGetRatingResponse\": {\n \"type\": \"object\",\n \"id\": - \"VideoGetRatingResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoGetRatingResponse\"\n - \ },\n \"items\": {\n \"description\": \"A list of ratings - that match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoRating\"\n }\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n }\n },\n \"AbuseType\": {\n \"type\": - \"object\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"AbuseType\"\n },\n \"ContentRating\": - {\n \"description\": \"Ratings schemes. The country-specific ratings - are mostly for movies and shows. LINT.IfChange\",\n \"type\": \"object\",\n - \ \"id\": \"ContentRating\",\n \"properties\": {\n \"mocRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ]\n },\n \"catvfrRating\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n - \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n - \ \"catvfrUnrated\",\n \"catvfrE\"\n ]\n },\n - \ \"grfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n - \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Greece.\",\n - \ \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n - \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n - \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n - \ \"grfilmUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"fpbRating\": {\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X18\",\n - \ \"XX\",\n \"\",\n \"10\"\n ]\n - \ },\n \"bfvcRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Thailand's Board of Film and Video Censors.\",\n \"enum\": [\n - \ \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"mdaRating\": - {\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Singapore's - Media Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\"\n },\n \"acbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"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.\",\n - \ \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"ifcoRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Irish Film Classification Office - (IFCO - Ireland) rating. See the IFCO website for more information.\"\n },\n - \ \"lsfRating\": {\n \"description\": \"The video's rating - from Indonesia's Lembaga Sensor Film.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n - \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n - \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ]\n },\n \"nmcRating\": {\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\",\n - \ \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ]\n - \ },\n \"cnaRating\": {\n \"description\": \"The video's - rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"type\": - \"string\",\n \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"mpaaRating\": {\n \"description\": \"The video's - Motion Picture Association of America (MPAA) rating.\",\n \"enum\": - [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n - \ \"! X\",\n \"\"\n ]\n },\n \"mpaatRating\": - {\n \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"GB\",\n \"RB\"\n ],\n - \ \"description\": \"The rating system for trailer, DVD, and Ad in - the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\"\n },\n \"fcoRating\": {\n \"description\": - \"The video's rating from Hong Kong's Office for Film, Newspaper and Article - Administration.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"I\",\n \"IIA\",\n \"IIB\",\n \"II\",\n - \ \"III\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ]\n },\n - \ \"cncRating\": {\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"description\": \"Rating - system in France - Commission de classification cinematographique\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"russiaRating\": {\n \"description\": \"The video's National - Film Registry of the Russian Federation (MKRF - Russia) rating.\",\n \"type\": - \"string\",\n \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"fskRating\": {\n \"enum\": [\n \"fskUnspecified\",\n - \ \"fsk0\",\n \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n - \ \"fsk18\",\n \"fskUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"FSK - 0\",\n \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\"\n },\n \"djctqRatingReasons\": {\n \"items\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Brazil rating content descriptors. See - http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ],\n \"enum\": [\n - \ \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ]\n },\n \"type\": - \"array\",\n \"description\": \"Reasons that explain why the video - received its DJCQT (Brazil) rating.\"\n },\n \"nfvcbRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Nigeria's National Film and Video Censors Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ]\n },\n - \ \"bmukkRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"enum\": - [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n \"bmukk6\",\n - \ \"bmukk8\",\n \"bmukk10\",\n \"bmukk12\",\n - \ \"bmukk14\",\n \"bmukk16\",\n \"bmukkUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Austrian - Board of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst - und Kultur).\"\n },\n \"menaMpaaRating\": {\n \"description\": - \"The rating system for MENA countries, a clone of MPAA. It is needed to prevent - titles go live w/o additional QC check, since some of them can be inappropriate - for the countries at all. See b/33408548 for more details.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n - \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n - \ ]\n },\n \"agcomRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Italy's Autorit\xE0 per - le Garanzie nelle Comunicazioni (AGCOM).\",\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ]\n },\n \"smaisRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\",\n - \ \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"nfrcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ]\n },\n \"ecbmctRating\": {\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ],\n \"description\": \"Rating system in Turkey - Evaluation - and Classification Board of the Ministry of Culture and Tourism\"\n },\n - \ \"fpbRatingReasons\": {\n \"description\": \"Reasons that - explain why the video received its FPB (South Africa) rating.\",\n \"items\": - {\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"South Africa rating content descriptors.\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"type\": \"array\"\n },\n \"medietilsynetRating\": - {\n \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"description\": \"The video's rating from Medietilsynet, the Norwegian - Media Authority.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n - \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"\"\n ]\n },\n \"cbfcRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"U/A\",\n \"U/A 7+\",\n \"U/A - 13+\",\n \"U/A 16+\",\n \"A\",\n \"S\",\n - \ \"\"\n ],\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\"\n - \ },\n \"icaaRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"description\": \"The video's Instituto - de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n - \ \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ]\n },\n \"cscfRating\": - {\n \"description\": \"The video's rating from Luxembourg's Commission - de surveillance de la classification des films (CSCF).\",\n \"enum\": - [\n \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n - \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"nbcplRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ],\n \"description\": \"The video's rating in Poland.\"\n - \ },\n \"skfilmRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ],\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Slovakia.\"\n },\n \"cccRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"Todo espectador\",\n - \ \"6+ - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n - \ \"18+\",\n \"18+ - contenido excesivamente violento\",\n - \ \"18+ - contenido pornogr\xE1fico\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ],\n \"description\": \"The video's Consejo de Calificaci\xF3n - Cinematogr\xE1fica (Chile) rating.\"\n },\n \"mibacRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"description\": \"The - video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali e - del Turismo (Italy).\"\n },\n \"kmrbRating\": {\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"enum\": - [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ]\n },\n \"bbfcRating\": - {\n \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n - \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n - \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n - \ \"bbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's British Board of Film Classification (BBFC) rating.\"\n },\n - \ \"eefilmRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n \"eefilmL\",\n - \ \"eefilmMs6\",\n \"eefilmK6\",\n \"eefilmMs12\",\n - \ \"eefilmK12\",\n \"eefilmK14\",\n \"eefilmK16\",\n - \ \"eefilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n - \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n - \ \"K-16\",\n \"\"\n ],\n \"description\": - \"The video's rating in Estonia.\"\n },\n \"chfilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"egfilmRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n - \ \"egfilm18\",\n \"egfilmBn\",\n \"egfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Egypt.\"\n },\n - \ \"czfilmRating\": {\n \"description\": \"The video's rating - in the Czech Republic.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"12\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"mccypRating\": {\n \"enum\": [\n - \ \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n - \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ]\n },\n \"incaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\"\n },\n \"kijkwijzerRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating - from the Nederlands Instituut voor de Classificatie van Audiovisuele Media - (Netherlands).\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n \"kijkwijzer6\",\n - \ \"kijkwijzer9\",\n \"kijkwijzer12\",\n \"kijkwijzer16\",\n - \ \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n ]\n - \ },\n \"rteRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Ireland's - Raidi\xF3 Teilif\xEDs \xC9ireann.\"\n },\n \"resorteviolenciaRating\": - {\n \"description\": \"The video's rating in Venezuela.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ]\n },\n \"anatelRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ],\n \"description\": \"The video's Anatel (Asociaci\xF3n - Nacional de Televisi\xF3n) rating for Chilean television.\"\n },\n - \ \"mtrcbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"R-13\",\n \"R-16\",\n - \ \"R-18\",\n \"X\",\n \"\"\n ],\n - \ \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Movie - and Television Review and Classification Board (Philippines).\",\n \"type\": - \"string\"\n },\n \"nkclvRating\": {\n \"description\": - \"The video's rating from the Nacion\xE3lais Kino centrs (National Film Centre - of Latvia).\",\n \"type\": \"string\",\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"catvRating\": {\n \"description\": - \"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.\",\n \"enum\": - [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"C\",\n - \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n - \ \"18+\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"kfcbRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Kenya - Film Classification Board.\",\n \"enum\": [\n \"kfcbUnspecified\",\n - \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n - \ \"kfcbR\",\n \"kfcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"csaRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"Interdiction\",\n \"\"\n ],\n - \ \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n - \ \"description\": \"The video's rating from France's Conseil sup\xE9rieur - de l\u2019audiovisuel, which rates broadcast content.\"\n },\n \"oflcRating\": - {\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"description\": \"The video's - Office of Film and Literature Classification (OFLC - New Zealand) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ],\n \"type\": - \"string\"\n },\n \"fcbmRating\": {\n \"enum\": [\n - \ \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"description\": \"The - video's rating from Malaysia's Film Censorship Board.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ]\n },\n \"cicfRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n - \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Commission - de Contr\xF4le des Films (Belgium).\",\n \"enumDescriptions\": [\n - \ \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ]\n },\n \"rtcRating\": {\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ]\n },\n - \ \"moctwRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P\",\n \"PG\",\n \"R\",\n - \ \"\",\n \"R-12\",\n \"R-15\"\n ],\n - \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\"\n - \ },\n \"mcstRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - system for Vietnam - MCST\",\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"djctqRating\": {\n \"enum\": [\n - \ \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n - \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n - \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n - \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n - \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n - \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n - \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n - \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"rcnofRating\": {\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ]\n },\n \"mccaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n - \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n - \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n - \ \"mccaa18\",\n \"mccaaUnrated\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\"\n },\n - \ \"ytRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"description\": \"A rating that YouTube uses to identify age-restricted - content.\"\n },\n \"smsaRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Statens medier\xE5d (Sweden's - National Media Council).\",\n \"enum\": [\n \"smsaUnspecified\",\n - \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n - \ \"smsa15\",\n \"smsaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ]\n },\n \"fmocRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"fmocUnspecified\",\n - \ \"fmocU\",\n \"fmoc10\",\n \"fmoc12\",\n - \ \"fmoc16\",\n \"fmoc18\",\n \"fmocE\",\n - \ \"fmocUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ],\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\"\n },\n \"cceRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"4\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\",\n \"14\"\n ],\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ],\n \"type\": \"string\"\n },\n - \ \"eirinRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG-12\",\n \"R15+\",\n \"R18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ],\n - \ \"description\": \"The video's Eirin (\u6620\u502B) rating. Eirin - is the Japanese rating system.\",\n \"type\": \"string\"\n },\n - \ \"nbcRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n - \ \"18+R\",\n \"PU\",\n \"\"\n ],\n - \ \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ]\n },\n \"mekuRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"mekuUnspecified\",\n \"mekuS\",\n \"meku7\",\n - \ \"meku12\",\n \"meku16\",\n \"meku18\",\n - \ \"mekuUnrated\"\n ],\n \"description\": \"The - video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti (National - Audiovisual Institute).\"\n },\n \"tvpgRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's TV Parental Guidelines - (TVPG) rating.\",\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ]\n },\n \"pefilmRating\": {\n \"description\": - \"The video's rating in Peru.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ]\n },\n \"ilfilmRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Israel.\"\n },\n - \ \"chvrsRating\": {\n \"enum\": [\n \"chvrsUnspecified\",\n - \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n - \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n - \ \"chvrsUnrated\"\n ],\n \"description\": \"The - video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n }\n },\n - \ \"Caption\": {\n \"description\": \"A *caption* resource represents - a YouTube caption track. A caption track is associated with exactly one YouTube - video.\",\n \"type\": \"object\",\n \"id\": \"Caption\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#caption\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#caption\\\".\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the caption track.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the caption.\",\n \"$ref\": - \"CaptionSnippet\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n }\n - \ },\n \"LiveBroadcast\": {\n \"description\": \"A *liveBroadcast* - resource represents an event that will be streamed, via live video, on YouTube.\",\n - \ \"id\": \"LiveBroadcast\",\n \"properties\": {\n \"statistics\": - {\n \"description\": \"The statistics object contains info about - the event's current stats. These include concurrent viewers and total chat - count. Statistics can change (in either direction) during the lifetime of - an event. Statistics are only returned while the event is live.\",\n \"$ref\": - \"LiveBroadcastStatistics\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveBroadcastSnippet\",\n \"description\": \"The snippet object - contains basic details about the event, including its title, description, - start time, and end time.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the broadcast.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"kind\": {\n \"default\": - \"youtube#liveBroadcast\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SearchResult\": {\n \"description\": \"A search result - contains information about a YouTube video, channel, or playlist that matches - the search parameters specified in an API request. While a search result points - to a uniquely identifiable resource, like a video, it does not have its own - persistent data.\",\n \"type\": \"object\",\n \"id\": \"SearchResult\",\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - id object contains information that can be used to uniquely identify the resource - that matches the search request.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"snippet\": {\n \"$ref\": \"SearchResultSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - a search result, such as its title or description. For example, if the search - result is a video, then the title will be the video's title and the description - will be the video's description.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n \"default\": - \"youtube#searchResult\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"AbuseReport\": {\n \"type\": \"object\",\n \"id\": - \"AbuseReport\",\n \"properties\": {\n \"description\": {\n \"type\": - \"string\"\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n - \ },\n \"abuseTypes\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"AbuseType\"\n }\n },\n \"relatedEntities\": - {\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n - \ \"type\": \"array\"\n }\n }\n },\n \"ChannelContentOwnerDetails\": - {\n \"id\": \"ChannelContentOwnerDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"timeLinked\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the channel was linked to the content owner.\"\n },\n - \ \"contentOwner\": {\n \"description\": \"The ID of the content - owner linked to the channel.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"The contentOwnerDetails object encapsulates - channel data that is relevant for YouTube Partners linked with the channel.\"\n - \ },\n \"VideoPlayer\": {\n \"type\": \"object\",\n \"id\": - \"VideoPlayer\",\n \"properties\": {\n \"embedWidth\": {\n \"description\": - \"The embed width\",\n \"format\": \"int64\",\n \"type\": - \"string\"\n },\n \"embedHeight\": {\n \"format\": - \"int64\",\n \"type\": \"string\"\n },\n \"embedHtml\": - {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a - player that will play the video.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Player to be used for a video playback.\"\n - \ },\n \"ChannelSectionTargeting\": {\n \"properties\": {\n \"regions\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The region the channel - section is targeting.\"\n },\n \"languages\": {\n \"description\": - \"The language the channel section is targeting.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"countries\": {\n \"type\": \"array\",\n \"description\": - \"The country the channel section is targeting.\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n }\n },\n \"id\": - \"ChannelSectionTargeting\",\n \"type\": \"object\",\n \"description\": - \"ChannelSection targeting setting.\"\n },\n \"InvideoTiming\": {\n - \ \"description\": \"Describes a temporal position of a visual widget - inside a video.\",\n \"id\": \"InvideoTiming\",\n \"properties\": - {\n \"type\": {\n \"enum\": [\n \"offsetFromStart\",\n - \ \"offsetFromEnd\"\n ],\n \"description\": \"Describes - a timing type. If the value is offsetFromStart, then the offsetMs field represents - an offset from the start of the video. If the value is offsetFromEnd, then - the offsetMs field represents an offset from the end of the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"durationMs\": {\n \"type\": \"string\",\n - \ \"description\": \"Defines the duration in milliseconds for which - the promotion should be displayed. If missing, the client should use the default.\",\n - \ \"format\": \"uint64\"\n },\n \"offsetMs\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"Defines - the time at which the promotion will appear. Depending on the value of type - the value of the offsetMs field will represent a time offset from the start - or from the end of the video, expressed in milliseconds.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"MembershipsDetails\": {\n \"id\": - \"MembershipsDetails\",\n \"properties\": {\n \"highestAccessibleLevelDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n },\n - \ \"membershipsDuration\": {\n \"$ref\": \"MembershipsDuration\",\n - \ \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\"\n },\n \"membershipsDurationAtLevels\": - {\n \"type\": \"array\",\n \"description\": \"Data about - memberships duration on particular pricing levels.\",\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n }\n },\n - \ \"accessibleLevels\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\"\n - \ },\n \"highestAccessibleLevel\": {\n \"description\": - \"Id of the highest level that the user has access to at the moment.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelConversionPing\": {\n \"type\": \"object\",\n \"description\": - \"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.\",\n \"id\": \"ChannelConversionPing\",\n \"properties\": - {\n \"conversionUrl\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"context\": {\n \"type\": \"string\",\n \"enum\": - [\n \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"Defines the context - of the ping.\"\n }\n }\n }\n },\n \"kind\": \"discovery#restDescription\",\n - \ \"protocol\": \"rest\",\n \"ownerDomain\": \"google.com\",\n \"resources\": - {\n \"channelBanners\": {\n \"methods\": {\n \"insert\": {\n - \ \"supportsMediaUpload\": true,\n \"response\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"mediaUpload\": {\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\"\n },\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"path\": \"youtube/v3/channelBanners/insert\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"Unused, channel_id - is currently derived from the security context of the requestor.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.channelBanners.insert\",\n - \ \"parameterOrder\": [],\n \"description\": \"Inserts a - new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ]\n }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for which comments - should be returned.\",\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"profileImageSize\": - {\n \"location\": \"query\",\n \"maximum\": \"720\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\",\n \"minimum\": \"16\"\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"description\": \"Specifies the localization language in which - the system messages should be returned.\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the liveChatComment resource parts that the API response - will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"200\",\n \"default\": \"500\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"maximum\": \"2000\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ }\n },\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Deletes a chat message.\",\n \"id\": - \"youtube.liveChatMessages.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n }\n },\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"request\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.liveChatMessages.insert\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n }\n }\n }\n },\n \"comments\": - {\n \"methods\": {\n \"markAsSpam\": {\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.comments.markAsSpam\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"parameters\": {\n \"id\": {\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n - \ \"repeated\": true,\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"update\": {\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"id\": - \"youtube.comments.update\",\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"httpMethod\": \"PUT\"\n },\n - \ \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"path\": - \"youtube/v3/comments\",\n \"id\": \"youtube.comments.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"parentId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Returns replies to the specified - comment. Note, currently YouTube features only one level of replies (ie replies - to top level comments). However replies to replies may be supported in the - future.\"\n },\n \"maxResults\": {\n \"default\": - \"20\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"maximum\": \"100\",\n \"minimum\": \"1\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more comment resource - properties that the API response will include.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"textFormat\": {\n \"enum\": [\n - \ \"textFormatUnspecified\",\n \"html\",\n \"plainText\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"default\": \"html\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"description\": \"The requested - text format for the returned comments.\"\n },\n \"id\": - {\n \"description\": \"Returns the comments with the given IDs - for One Platform.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/comments\",\n \"response\": {\n - \ \"$ref\": \"CommentListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insert\": {\n \"response\": {\n - \ \"$ref\": \"Comment\"\n },\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.comments.insert\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true\n }\n }\n },\n - \ \"setModerationStatus\": {\n \"description\": \"Sets the - moderation status of one or more comments.\",\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"parameters\": {\n \"banAuthor\": {\n \"description\": - \"If set to true the author of the comment gets added to the ban list. This - means all future comments of the author will autmomatically be rejected. Only - valid in combination with STATUS_REJECTED.\",\n \"default\": - \"false\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"moderationStatus\": {\n \"required\": - true,\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"type\": - \"string\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ]\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\"\n }\n - \ }\n },\n \"subscriptions\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.subscriptions.list\",\n \"parameters\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the subscriptions of the given channel - owner.\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\"\n },\n - \ \"order\": {\n \"default\": \"relevance\",\n \"description\": - \"The order of the returned subscriptions\",\n \"enum\": [\n - \ \"subscriptionOrderUnspecified\",\n \"relevance\",\n - \ \"unread\",\n \"alphabetical\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Sort - by relevance.\",\n \"Sort by order of activity.\",\n \"Sort - alphabetically.\"\n ]\n },\n \"myRecentSubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"default\": - \"5\",\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\"\n },\n \"forChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the subscriptions to the - subset of these channels that the authenticated user is subscribed to.\",\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mySubscribers\": - {\n \"description\": \"Return the subscribers of the given channel - owner.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\"\n }\n - \ },\n \"path\": \"youtube/v3/subscriptions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"response\": {\n \"$ref\": - \"SubscriptionListResponse\"\n }\n },\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n }\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"path\": - \"youtube/v3/subscriptions\",\n \"response\": {\n \"$ref\": - \"Subscription\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n }\n },\n \"id\": - \"youtube.subscriptions.insert\"\n }\n }\n },\n \"liveBroadcasts\": - {\n \"methods\": {\n \"transition\": {\n \"flatPath\": - \"youtube/v3/liveBroadcasts/transition\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"Broadcast to transition.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"broadcastStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"Start - testing the broadcast. YouTube transmits video to the broadcast's monitor - stream. Note that you can only transition a broadcast to the testing state - if its contentDetails.monitorStream.enableMonitorStream property is set to - true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The - broadcast is over. YouTube stops transmitting video.\"\n ],\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"The status to which the broadcast is going to transition.\",\n \"location\": - \"query\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ]\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Transition a broadcast to a given status.\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts/transition\"\n - \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.list\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieve the list of broadcasts associated - with the given channel.\",\n \"parameters\": {\n \"broadcastType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return only scheduled event broadcasts.\",\n - \ \"Return only persistent broadcasts.\"\n ],\n - \ \"default\": \"event\",\n \"description\": \"Return - only broadcasts with the selected type.\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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, status and statistics.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Return broadcasts with the given ids from - Stubby or Apiary.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"minimum\": \"0\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"broadcastStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return current live broadcasts.\",\n - \ \"Return broadcasts that have not yet started.\",\n \"Return - broadcasts that have already ended.\"\n ],\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\"\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new stream for the authenticated - user.\",\n \"id\": \"youtube.liveBroadcasts.insert\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n }\n },\n \"insertCuepoint\": {\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"parameterOrder\": - [],\n \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"description\": \"Insert cuepoints - in a broadcast\"\n },\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Delete a given broadcast.\",\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Broadcast to delete.\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n }\n },\n \"update\": {\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"description\": \"Updates an existing broadcast for the authenticated - user.\",\n \"id\": \"youtube.liveBroadcasts.update\",\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"bind\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"description\": \"Bind a broadcast to a stream.\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"Broadcast to bind to the stream\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"streamId\": - {\n \"type\": \"string\",\n \"description\": \"Stream - to bind, if not set unbind the current one.\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.bind\"\n }\n }\n },\n - \ \"liveChatBans\": {\n \"methods\": {\n \"insert\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveChatBan\"\n - \ },\n \"path\": \"youtube/v3/liveChat/bans\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat ban.\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.liveChatBans.delete\",\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"parameterOrder\": [\n \"id\"\n ]\n }\n - \ }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of search resources\",\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"id\": \"youtube.search.list\",\n \"path\": - \"youtube/v3/search\",\n \"flatPath\": \"youtube/v3/search\",\n \"parameters\": - {\n \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"videoEmbeddable\": - {\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on embeddable videos.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all videos, embeddable or - not.\",\n \"Only retrieve embeddable videos.\"\n ]\n - \ },\n \"safeSearch\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"default\": \"moderate\"\n },\n - \ \"videoDimension\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Filter on 3d videos.\",\n \"enum\": - [\n \"any\",\n \"2d\",\n \"3d\"\n - \ ],\n \"enumDescriptions\": [\n \"Include - both 3D and non-3D videos in returned results. This is the default value.\",\n - \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict - search results to only include 3D videos.\"\n ]\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Filter on resources belonging - to this channelId.\"\n },\n \"forContentOwner\": {\n - \ \"location\": \"query\",\n \"description\": \"Search - owned by a content owner.\",\n \"type\": \"boolean\"\n },\n - \ \"publishedAfter\": {\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\",\n \"description\": - \"Filter on resources published after this date.\",\n \"type\": - \"string\"\n },\n \"relatedToVideoId\": {\n \"description\": - \"Search related to a resource.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"locationRadius\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on distance from the location (specified above).\",\n \"type\": - \"string\"\n },\n \"videoDuration\": {\n \"type\": - \"string\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"description\": - \"Filter on the duration of the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"location\": \"query\"\n },\n \"videoLicense\": - {\n \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on the license of the videos.\"\n - \ },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\"\n },\n \"forDeveloper\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\"\n },\n \"videoDefinition\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on the definition of the videos.\",\n \"enum\": [\n - \ \"any\",\n \"standard\",\n \"high\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ]\n },\n \"q\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Textual search terms to match.\"\n },\n - \ \"type\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"Restrict results to a particular - set of resource types from One Platform.\",\n \"type\": \"string\"\n - \ },\n \"videoType\": {\n \"location\": - \"query\",\n \"description\": \"Filter on videos of a specific - type.\",\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos.\",\n \"Only retrieve movies.\",\n \"Only - retrieve episodes of shows.\"\n ],\n \"enum\": [\n - \ \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ],\n \"type\": \"string\"\n - \ },\n \"channelType\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"location\": - \"query\",\n \"description\": \"Add a filter on the channel search.\",\n - \ \"type\": \"string\"\n },\n \"videoCategoryId\": - {\n \"description\": \"Filter on videos in a specific category.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"relevanceLanguage\": {\n \"description\": - \"Return results relevant to this language.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"videoSyndicated\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos, syndicated or not.\",\n \"Only retrieve syndicated - videos.\"\n ],\n \"type\": \"string\",\n \"description\": - \"Filter on syndicated videos.\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ]\n },\n - \ \"forMine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Search for the private videos - of the authenticated user.\"\n },\n \"topicId\": {\n - \ \"description\": \"Restrict results to a particular topic.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"eventType\": {\n \"type\": \"string\",\n - \ \"description\": \"Filter on the livestream status of the videos.\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been - completed.\"\n ]\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"videoCaption\": {\n \"description\": \"Filter on - the presence of captions on the videos.\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"location\": {\n \"location\": \"query\",\n \"description\": - \"Filter on location of the video\",\n \"type\": \"string\"\n - \ },\n \"order\": {\n \"location\": \"query\",\n - \ \"default\": \"relevance\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"description\": \"Sort order of the results.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Resources are sorted in reverse chronological - order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ]\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"description\": \"Display - the content as seen by viewers in this country.\",\n \"location\": - \"query\"\n },\n \"publishedBefore\": {\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"description\": - \"Filter on resources published before this date.\",\n \"type\": - \"string\"\n }\n }\n }\n }\n },\n \"membershipsLevels\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the membershipsLevel resource parts that the API response will include. Supported - values are id and snippet.\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"id\": \"youtube.membershipsLevels.list\",\n \"response\": - {\n \"$ref\": \"MembershipsLevelListResponse\"\n }\n }\n - \ }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"id\": \"youtube.tests.insert\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"path\": \"youtube/v3/tests\",\n \"response\": {\n \"$ref\": - \"TestItem\"\n },\n \"description\": \"POST method.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/tests\",\n - \ \"request\": {\n \"$ref\": \"TestItem\"\n }\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"getRating\": - {\n \"description\": \"Retrieves the ratings that the authorized - user gave to a list of specified videos.\",\n \"flatPath\": \"youtube/v3/videos/getRating\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.videos.getRating\",\n \"response\": {\n \"$ref\": - \"VideoGetRatingResponse\"\n }\n },\n \"update\": {\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"id\": \"youtube.videos.update\",\n \"description\": \"Updates - an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"path\": - \"youtube/v3/videos\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"PUT\"\n },\n \"delete\": {\n \"flatPath\": - \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a resource.\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.videos.delete\",\n - \ \"path\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"rate\": {\n \"path\": - \"youtube/v3/videos/rate\",\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Adds a like - or dislike rating to a video or removes a rating from a video.\",\n \"id\": - \"youtube.videos.rate\",\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"rating\": {\n \"location\": - \"query\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"required\": - true,\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"type\": \"string\"\n }\n }\n },\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"stabilize\": {\n \"location\": - \"query\",\n \"description\": \"Should stabilize be applied to - the upload.\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"autoLevels\": - {\n \"description\": \"Should auto-levels be applied to the upload.\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"notifySubscribers\": {\n \"default\": - \"true\",\n \"location\": \"query\",\n \"description\": - \"Notify the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"path\": \"youtube/v3/videos\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ }\n },\n \"maxSize\": \"274877906944\"\n - \ },\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"response\": {\n \"$ref\": \"Video\"\n - \ },\n \"id\": \"youtube.videos.insert\",\n \"flatPath\": - \"youtube/v3/videos\"\n },\n \"reportAbuse\": {\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\",\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n - \ \"parameterOrder\": [],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.reportAbuse\",\n \"description\": - \"Report abuse for a video.\"\n },\n \"list\": {\n \"parameters\": - {\n \"locale\": {\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"chart\": {\n \"location\": - \"query\",\n \"description\": \"Return the videos that are in - the specified chart.\",\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ]\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n - \ },\n \"maxHeight\": {\n \"format\": \"int32\",\n - \ \"minimum\": \"72\",\n \"type\": \"integer\",\n - \ \"maximum\": \"8192\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"maxResults\": - {\n \"description\": \"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.\",\n - \ \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"minimum\": \"1\",\n \"default\": \"5\"\n },\n - \ \"regionCode\": {\n \"description\": \"Use a chart - that is specific to the specified region\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"hl\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"id\": {\n \"description\": \"Return - videos with the given ids.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxWidth\": - {\n \"description\": \"Return the player with maximum height - specified in\",\n \"location\": \"query\",\n \"type\": - \"integer\",\n \"minimum\": \"72\",\n \"maximum\": - \"8192\",\n \"format\": \"int32\"\n },\n \"videoCategoryId\": - {\n \"location\": \"query\",\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"type\": - \"string\",\n \"default\": \"0\"\n },\n \"myRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"Return - videos liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"response\": {\n \"$ref\": \"VideoListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"id\": \"youtube.videos.list\",\n \"path\": - \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [],\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Updates - an existing resource.\"\n }\n }\n }\n }\n - \ },\n \"videoAbuseReportReasons\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"parameters\": - {\n \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"default\": \"en-US\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the videoCategory resource parts that the API response - will include. Supported values are id and snippet.\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"activities\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/activities\",\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n },\n \"flatPath\": - \"youtube/v3/activities\",\n \"id\": \"youtube.activities.list\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"home\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"publishedBefore\": {\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\",\n \"type\": \"string\"\n - \ },\n \"publishedAfter\": {\n \"location\": - \"query\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"minimum\": \"0\",\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ }\n }\n },\n \"liveStreams\": {\n \"methods\": {\n - \ \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Deletes an existing stream for the authenticated - user.\",\n \"id\": \"youtube.liveStreams.delete\",\n \"flatPath\": - \"youtube/v3/liveStreams\"\n },\n \"update\": {\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.update\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ }\n },\n \"insert\": {\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"id\": \"youtube.liveStreams.insert\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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, content_details, and status.\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"request\": - {\n \"$ref\": \"LiveStream\"\n }\n },\n \"list\": - {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n - \ \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n - \ \"repeated\": true\n },\n \"id\": {\n - \ \"description\": \"Return LiveStreams with the given ids from - Stubby or Apiary.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"default\": \"5\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"description\": \"Retrieve the list of streams associated - with the given channel. --\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"id\": \"youtube.liveStreams.list\"\n }\n }\n },\n - \ \"members\": {\n \"methods\": {\n \"list\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"id\": \"youtube.members.list\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/members\",\n \"parameters\": - {\n \"maxResults\": {\n \"maximum\": \"1000\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"default\": \"5\"\n },\n - \ \"mode\": {\n \"type\": \"string\",\n \"default\": - \"all_current\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - only members that joined after the first call with this mode was made.\",\n - \ \"Return all current members, from newest to oldest.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Parameter - that specifies which channel members to return.\"\n },\n \"filterByMemberChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"type\": - \"string\"\n },\n \"hasAccessToLevel\": {\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/members\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of members that match the request criteria for a channel.\"\n }\n - \ }\n },\n \"liveChatModerators\": {\n \"methods\": {\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a chat moderator.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.liveChatModerators.delete\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/liveChat/moderators\"\n },\n \"insert\": {\n \"id\": - \"youtube.liveChatModerators.insert\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\"\n - \ },\n \"list\": {\n \"parameters\": {\n \"liveChatId\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"The id of the live chat for which moderators - should be returned.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"minimum\": \"0\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"default\": - \"5\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.liveChatModerators.list\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/liveChat/moderators\"\n - \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"update\": - {\n \"id\": \"youtube.channels.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"response\": {\n \"$ref\": \"Channel\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/channels\",\n \"request\": {\n \"$ref\": - \"Channel\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"httpMethod\": \"PUT\"\n },\n \"list\": {\n \"response\": - {\n \"$ref\": \"ChannelListResponse\"\n },\n \"flatPath\": - \"youtube/v3/channels\",\n \"id\": \"youtube.channels.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/channels\",\n \"parameters\": {\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"categoryId\": {\n \"description\": - \"Return the channels within the specified guide category ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"default\": \"5\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\",\n \"type\": - \"integer\",\n \"minimum\": \"0\"\n },\n \"mySubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Return the channels subscribed to the authenticated - user\"\n },\n \"id\": {\n \"description\": - \"Return the channels with the specified IDs.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"managedByMe\": {\n \"description\": - \"Return the channels managed by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"hl\": - {\n \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"description\": \"Return the ids of channels owned by the authenticated - user.\",\n \"type\": \"boolean\"\n },\n \"forUsername\": - {\n \"description\": \"Return the channel associated with a YouTube - username.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ]\n }\n }\n },\n \"playlistItems\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"videoId\": {\n \"description\": \"Return the - playlist items associated with the given video ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"playlistId\": {\n \"location\": - \"query\",\n \"description\": \"Return the playlist items within - the given playlist.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"PlaylistItemListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlistItems.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/playlistItems\"\n },\n - \ \"insert\": {\n \"id\": \"youtube.playlistItems.insert\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"httpMethod\": \"POST\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n }\n },\n \"delete\": - {\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlistItems.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/playlistItems\"\n - \ },\n \"update\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.playlistItems.update\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"path\": - \"youtube/v3/playlistItems\",\n \"description\": \"Updates an existing - resource.\",\n \"flatPath\": \"youtube/v3/playlistItems\"\n }\n - \ }\n },\n \"thumbnails\": {\n \"methods\": {\n \"set\": - {\n \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n }\n - \ },\n \"maxSize\": \"2097152\"\n },\n \"id\": - \"youtube.thumbnails.set\",\n \"parameterOrder\": [\n \"videoId\"\n - \ ],\n \"path\": \"youtube/v3/thumbnails/set\",\n \"response\": - {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"videoId\": {\n \"required\": - true,\n \"description\": \"Returns the Thumbnail with the given - video IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"POST\",\n \"supportsMediaUpload\": - true,\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n \"description\": - \"As this is not an insert in a strict sense (it supports uploading/setting - of a thumbnail for multiple videos, which doesn't result in creation of a - single resource), I use a custom verb here.\"\n }\n }\n },\n - \ \"commentThreads\": {\n \"methods\": {\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"id\": \"youtube.commentThreads.insert\"\n },\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"searchTerms\": {\n \"type\": \"string\",\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"moderationStatus\": - {\n \"default\": \"published\",\n \"enum\": [\n - \ \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"minimum\": \"1\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"100\",\n \"format\": \"uint32\",\n - \ \"default\": \"20\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads of the specified - video.\"\n },\n \"order\": {\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Order by time.\",\n \"Order by relevance.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"default\": \"time\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads for all the channel - comments (ie does not include comments left on videos).\"\n },\n - \ \"id\": {\n \"description\": \"Returns the comment - threads with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"part\": {\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"textFormat\": - {\n \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"type\": - \"string\",\n \"default\": \"html\",\n \"location\": - \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"description\": \"The requested text format for the returned - comments.\"\n }\n },\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.commentThreads.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/commentThreads\"\n }\n }\n },\n \"playlists\": - {\n \"methods\": {\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"flatPath\": \"youtube/v3/playlists\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"id\": \"youtube.playlists.insert\"\n - \ },\n \"update\": {\n \"description\": \"Updates an - existing resource.\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"id\": \"youtube.playlists.update\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\"\n },\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a resource.\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"id\": \"youtube.playlists.delete\"\n },\n \"list\": - {\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.playlists.list\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"default\": \"5\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"description\": \"Return the playlists owned by the authenticated - user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return content in specified language\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlists owned by the specified channel ID.\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"delete\": - {\n \"id\": \"youtube.captions.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"parameters\": {\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n },\n \"id\": {\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n }\n },\n \"download\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions/{id}\",\n \"httpMethod\": - \"GET\",\n \"useMediaDownloadService\": true,\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.captions.download\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"tlang\": {\n \"type\": \"string\",\n \"description\": - \"tlang is the language code; machine translate the captions into this language.\",\n - \ \"location\": \"query\"\n },\n \"tfmt\": - {\n \"location\": \"query\",\n \"description\": - \"Convert the captions into this format. Supported options are sbv, srt, and - vtt.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The ID of the caption track to download, - required for One Platform.\",\n \"type\": \"string\",\n \"location\": - \"path\",\n \"required\": true\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Downloads a caption track.\",\n \"supportsMediaDownload\": true,\n - \ \"flatPath\": \"youtube/v3/captions/{id}\"\n },\n \"insert\": - {\n \"parameters\": {\n \"sync\": {\n \"type\": - \"boolean\",\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.captions.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n }\n },\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"supportsMediaUpload\": - true,\n \"flatPath\": \"youtube/v3/captions\",\n \"path\": - \"youtube/v3/captions\"\n },\n \"list\": {\n \"flatPath\": - \"youtube/v3/captions\",\n \"description\": \"Retrieves a list of - resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"CaptionListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\",\n - \ \"videoId\"\n ],\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ },\n \"videoId\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"Returns - the captions for the specified video.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\"\n },\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Returns - the captions with the given IDs for Stubby or Apiary.\"\n }\n },\n - \ \"id\": \"youtube.captions.list\",\n \"path\": \"youtube/v3/captions\"\n - \ },\n \"update\": {\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ },\n \"sync\": {\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n }\n },\n \"mediaUpload\": {\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\",\n - \ \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"supportsMediaUpload\": true,\n - \ \"description\": \"Updates an existing resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Caption\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.update\"\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the i18nLanguage resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"hl\": {\n - \ \"type\": \"string\",\n \"default\": \"en_US\",\n - \ \"location\": \"query\"\n }\n },\n \"response\": - {\n \"$ref\": \"I18nLanguageListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.i18nLanguages.list\",\n \"path\": \"youtube/v3/i18nLanguages\"\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"hl\": {\n - \ \"default\": \"en-US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"Returns the video categories with the given - IDs for Stubby or Apiary.\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"type\": \"string\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"path\": \"youtube/v3/videoCategories\",\n \"id\": - \"youtube.videoCategories.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/videoCategories\"\n - \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.i18nRegions.list\",\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the i18nRegion resource properties that the API response will include. Set - the parameter value to snippet.\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"default\": \"en_US\"\n }\n }\n }\n - \ }\n },\n \"superChatEvents\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/superChatEvents\",\n \"id\": - \"youtube.superChatEvents.list\",\n \"response\": {\n \"$ref\": - \"SuperChatEventListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"maxResults\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"maximum\": \"50\",\n \"minimum\": - \"1\",\n \"location\": \"query\",\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"description\": \"Return - rendered funding amounts in specified language.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the superChatEvent resource parts that the - API response will include. This parameter is currently not supported.\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/superChatEvents\"\n - \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"insert\": {\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.insert\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n }\n },\n \"response\": {\n - \ \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"update\": - {\n \"description\": \"Updates an existing resource.\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"repeated\": true\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"Do not use. Required - for compatibility.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"description\": - \"Type of the link to be deleted.\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"linkingToken\": {\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.delete\"\n },\n \"list\": - {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ },\n \"type\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"A link that is connecting (or about - to connect) a channel with a store on a merchandising platform in order to - enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"description\": \"Get a third party link - of the given type.\"\n },\n \"linkingToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Get a third party link with the given linking token.\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.thirdPartyLinks.list\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\"\n }\n }\n },\n \"abuseReports\": {\n \"methods\": - {\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/abuseReports\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n }\n },\n \"request\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"description\": \"Inserts a new - resource into this collection.\",\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.abuseReports.insert\"\n }\n }\n },\n \"channelSections\": - {\n \"methods\": {\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.channelSections.insert\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"mine\": {\n \"description\": - \"Return the ChannelSections owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return content in specified language\"\n - \ },\n \"id\": {\n \"description\": \"Return - the ChannelSections with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"path\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"id\": - \"youtube.channelSections.list\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.channelSections.delete\",\n \"path\": - \"youtube/v3/channelSections\",\n \"flatPath\": \"youtube/v3/channelSections\"\n - \ },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"id\": - \"youtube.channelSections.update\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"watermarks\": - {\n \"methods\": {\n \"set\": {\n \"id\": \"youtube.watermarks.set\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"flatPath\": - \"youtube/v3/watermarks/set\",\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"httpMethod\": \"POST\",\n \"description\": - \"Allows upload of watermark image and setting it for a channel.\",\n \"supportsMediaUpload\": - true,\n \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"10485760\"\n - \ },\n \"path\": \"youtube/v3/watermarks/set\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"unset\": {\n \"description\": \"Allows removal - of channel watermark.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.watermarks.unset\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n }\n }\n - \ }\n }\n },\n \"title\": \"YouTube Data API v3\",\n \"basePath\": - \"\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ }\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:29 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCOo_v3eVbfET7_zi2KLOP9g&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"qx5e2fwXUubmzHq0I-F9UWqK0nc\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"oLB-B_xUDU0Kbrvu1krKtERMuG8\",\n \"id\": \"UCOo_v3eVbfET7_zi2KLOP9g\",\n - \ \"snippet\": {\n \"title\": \"Binge Society \",\n \"description\": - \"Featuring the BEST lines, the BEST characters, and the MOST famous actors. - Here you\u2019ll find the top entertainment content any movie lover would - desire. Binge Society brings you not only iconic movie scenes but also our - own original shows so\u2026 Cancel your plans, make some popcorn and sit back - to get ready to binge with us!\\n\\nBinge Society is a licensed partner and - shares the rights to the clips with the studios.\\n\",\n \"customUrl\": - \"@bingesociety\",\n \"publishedAt\": \"2019-08-02T02:24:01Z\",\n \"thumbnails\": - {\n \"default\": {\n \"url\": \"https://yt3.ggpht.com/rzIEYXjbRwKx_Ix_dHa0XdZh4pSTIf505n5DgdJxmzRKzJT36jqHM86Dmp2l-l7WpIpzcGInMo4=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/rzIEYXjbRwKx_Ix_dHa0XdZh4pSTIf505n5DgdJxmzRKzJT36jqHM86Dmp2l-l7WpIpzcGInMo4=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/rzIEYXjbRwKx_Ix_dHa0XdZh4pSTIf505n5DgdJxmzRKzJT36jqHM86Dmp2l-l7WpIpzcGInMo4=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Binge Society \",\n \"description\": - \"Featuring the BEST lines, the BEST characters, and the MOST famous actors. - Here you\u2019ll find the top entertainment content any movie lover would - desire. Binge Society brings you not only iconic movie scenes but also our - own original shows so\u2026 Cancel your plans, make some popcorn and sit back - to get ready to binge with us!\\n\\nBinge Society is a licensed partner and - shares the rights to the clips with the studios.\\n\"\n },\n \"country\": - \"US\"\n },\n \"brandingSettings\": {\n \"channel\": {\n - \ \"title\": \"Binge Society \",\n \"description\": \"Featuring - the BEST lines, the BEST characters, and the MOST famous actors. Here you\u2019ll - find the top entertainment content any movie lover would desire. Binge Society - brings you not only iconic movie scenes but also our own original shows so\u2026 - Cancel your plans, make some popcorn and sit back to get ready to binge with - us!\\n\\nBinge Society is a licensed partner and shares the rights to the - clips with the studios.\\n\",\n \"keywords\": \"entertainement movies - clips movieclips trailer \\\"classic movie\\\" compilation action comedy sci-fi - horror scene best-of\",\n \"unsubscribedTrailer\": \"NAhibzkH21A\",\n - \ \"country\": \"US\"\n },\n \"image\": {\n \"bannerExternalUrl\": - \"https://yt3.googleusercontent.com/oXPD21pF8B5MOYb3dS9XRL2s4z0F94d-sEE5KyDpobQTAo-QVW11_GbBzGYUXGYM5sYI7y8ZEPI\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:29 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"fullyEncodeReservedExpansion\": true,\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n }\n - \ }\n }\n },\n \"parameters\": {\n \"fields\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": \"Selector - specifying which fields to include in a partial response.\"\n },\n \"uploadType\": - {\n \"description\": \"Legacy upload protocol for media (e.g. \\\"media\\\", - \\\"multipart\\\").\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"$.xgafv\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"enum\": - [\n \"1\",\n \"2\"\n ],\n \"description\": \"V1 error - format.\",\n \"location\": \"query\"\n },\n \"alt\": {\n \"description\": - \"Data format for response.\",\n \"enumDescriptions\": [\n \"Responses - with Content-Type of application/json\",\n \"Media download with context-dependent - Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n - \ ],\n \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"default\": \"json\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"key\": {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"access_token\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"OAuth access token.\"\n },\n \"quotaUser\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"upload_protocol\": {\n \"location\": \"query\",\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": - \"string\"\n },\n \"oauth_token\": {\n \"location\": \"query\",\n - \ \"description\": \"OAuth 2.0 token for the current user.\",\n \"type\": - \"string\"\n },\n \"callback\": {\n \"type\": \"string\",\n \"description\": - \"JSONP\",\n \"location\": \"query\"\n },\n \"prettyPrint\": {\n - \ \"default\": \"true\",\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Returns response with indentations - and line breaks.\"\n }\n },\n \"id\": \"youtube:v3\",\n \"revision\": - \"20230220\",\n \"version\": \"v3\",\n \"kind\": \"discovery#restDescription\",\n - \ \"name\": \"youtube\",\n \"servicePath\": \"\",\n \"description\": \"The - YouTube Data API v3 is an API that provides access to YouTube data, such as - videos, playlists, and channels.\",\n \"ownerDomain\": \"google.com\",\n - \ \"title\": \"YouTube Data API v3\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"schemas\": {\n \"SubscriptionSubscriberSnippet\": {\n \"id\": - \"SubscriptionSubscriberSnippet\",\n \"description\": \"Basic details - about a subscription's subscriber including title, description, channel ID - and thumbnails.\",\n \"properties\": {\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"Thumbnails for this subscriber.\"\n - \ },\n \"channelId\": {\n \"description\": \"The channel - ID of the subscriber.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the subscriber.\"\n },\n \"title\": {\n \"description\": - \"The title of the subscriber.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": - {\n \"properties\": {\n \"liveBroadcastPriority\": {\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"type\": - \"string\",\n \"description\": \"Priority of the live broadcast event - (internal state).\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ]\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's privacy status. Note that the - broadcast represents exactly one YouTube video, so the privacy settings are - identical to those supported for videos. In addition, you can set this field - by modifying the broadcast resource or by setting the privacyStatus field - of the corresponding video resource.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n },\n - \ \"madeForKids\": {\n \"description\": \"Whether the broadcast - is made for kids or not, decided by YouTube instead of the creator. This field - is read only.\",\n \"type\": \"boolean\"\n },\n \"recordingStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"No - value or the value is unknown.\",\n \"The recording has not yet - been started.\",\n \"The recording is currently on.\",\n \"The - recording is completed, and cannot be started again.\"\n ],\n \"enum\": - [\n \"liveBroadcastRecordingStatusUnspecified\",\n \"notRecording\",\n - \ \"recording\",\n \"recorded\"\n ],\n \"description\": - \"The broadcast's recording status.\"\n },\n \"lifeCycleStatus\": - {\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's status. The status can be updated - using the API's liveBroadcasts.transition method.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveBroadcastStatus\",\n \"description\": - \"Live broadcast state.\"\n },\n \"AbuseReport\": {\n \"type\": - \"object\",\n \"properties\": {\n \"subject\": {\n \"$ref\": - \"Entity\"\n },\n \"abuseTypes\": {\n \"items\": {\n - \ \"$ref\": \"AbuseType\"\n },\n \"type\": \"array\"\n - \ },\n \"relatedEntities\": {\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n },\n \"type\": \"array\"\n },\n - \ \"description\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"AbuseReport\"\n },\n \"ChannelToStoreLinkDetails\": - {\n \"type\": \"object\",\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"properties\": {\n \"merchantId\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"Google Merchant Center id of the store.\"\n },\n \"storeUrl\": - {\n \"type\": \"string\",\n \"description\": \"Landing page - of the store.\"\n },\n \"storeName\": {\n \"description\": - \"Name of the store.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ChannelConversionPings\": {\n \"properties\": {\n \"pings\": - {\n \"type\": \"array\",\n \"description\": \"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.\",\n - \ \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ }\n }\n },\n \"type\": \"object\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"id\": \"ChannelConversionPings\"\n - \ },\n \"LocalizedProperty\": {\n \"id\": \"LocalizedProperty\",\n - \ \"properties\": {\n \"default\": {\n \"type\": \"string\"\n - \ },\n \"localized\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LocalizedString\"\n }\n },\n \"defaultLanguage\": - {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The - language of the default property.\"\n }\n },\n \"type\": - \"object\"\n },\n \"CaptionSnippet\": {\n \"id\": \"CaptionSnippet\",\n - \ \"description\": \"Basic details about a caption track, such as its - language and name.\",\n \"properties\": {\n \"isEasyReader\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n - \ },\n \"status\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"serving\",\n \"syncing\",\n \"failed\"\n - \ ],\n \"description\": \"The caption track's status.\",\n - \ \"type\": \"string\"\n },\n \"lastUpdated\": {\n \"description\": - \"The date and time when the caption track was last updated.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"name\": - {\n \"description\": \"The name of the caption track. The name is - intended to be visible to the user as an option during playback.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"isCC\": {\n \"description\": \"Indicates whether the track - contains closed captions for the deaf and hard of hearing. The default value - is false.\",\n \"type\": \"boolean\"\n },\n \"isLarge\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the caption track uses large text for the vision-impaired. The default - value is false.\"\n },\n \"failureReason\": {\n \"enum\": - [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The reason that YouTube failed to process the - caption track. This property is only present if the state property's value - is failed.\"\n },\n \"isAutoSynced\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n - \ \"isDraft\": {\n \"type\": \"boolean\",\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n },\n \"language\": {\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\",\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n }\n - \ },\n \"audioTrackType\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"description\": \"The - type of audio track associated with the caption track.\"\n },\n \"trackKind\": - {\n \"enum\": [\n \"standard\",\n \"ASR\",\n - \ \"forced\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The caption track's type.\"\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video associated with the caption track. @mutable youtube.captions.insert\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ChannelContentDetails\": {\n \"description\": - \"Details about the content of a channel.\",\n \"type\": \"object\",\n - \ \"id\": \"ChannelContentDetails\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"properties\": {\n \"watchLater\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\",\n \"type\": \"string\"\n },\n \"favorites\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s favorite videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"likes\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n },\n \"watchHistory\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"uploads\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use - the videos.insert method to upload new videos and the videos.delete method - to delete previously uploaded videos.\"\n }\n },\n \"type\": - \"object\"\n }\n }\n },\n \"ChannelTopicDetails\": {\n \"id\": - \"ChannelTopicDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"topicIds\": {\n \"description\": \"A list of Freebase - topic IDs associated with the channel. You can retrieve information about - each topic using the Freebase Topic API.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"topicCategories\": {\n \"description\": \"A list of Wikipedia - URLs that describe the channel's content.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"description\": \"Freebase topic information related to the - channel.\"\n },\n \"CommentThread\": {\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment thread.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the comment thread and also the top level comment.\",\n \"$ref\": - \"CommentThreadSnippet\"\n },\n \"replies\": {\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#commentThread\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\"\n - \ }\n },\n \"id\": \"CommentThread\",\n \"description\": - \"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.\",\n \"type\": \"object\"\n },\n \"ChannelBrandingSettings\": - {\n \"properties\": {\n \"channel\": {\n \"description\": - \"Branding properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n - \ },\n \"watch\": {\n \"description\": \"Branding properties - for the watch page.\",\n \"$ref\": \"WatchSettings\"\n },\n - \ \"image\": {\n \"$ref\": \"ImageSettings\",\n \"description\": - \"Branding properties for branding images.\"\n },\n \"hints\": - {\n \"items\": {\n \"$ref\": \"PropertyValue\"\n },\n - \ \"type\": \"array\",\n \"description\": \"Additional experimental - branding properties.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Branding properties of a YouTube channel.\",\n \"id\": - \"ChannelBrandingSettings\"\n },\n \"Member\": {\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\",\n - \ \"id\": \"Member\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the member.\",\n \"$ref\": - \"MemberSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"default\": \"youtube#member\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"id\": \"LiveChatSuperChatDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the user to this Super Chat - event.\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"tier\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\"\n },\n - \ \"amountDisplayString\": {\n \"type\": \"string\",\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\"\n - \ },\n \"amountMicros\": {\n \"description\": \"The - amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n }\n }\n },\n - \ \"VideoRating\": {\n \"properties\": {\n \"rating\": {\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"description\": \"Rating of a video.\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoRating\",\n \"description\": - \"Basic details about rating of a video.\"\n },\n \"ChannelSectionSnippet\": - {\n \"description\": \"Basic details about a channel section, including - title, style and position.\",\n \"id\": \"ChannelSectionSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"localized\": - {\n \"description\": \"Localized title, read-only.\",\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel - section's title for multiple_playlists and multiple_channels.\"\n },\n - \ \"type\": {\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"description\": \"The - type of the channel section.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"style\": {\n \"enum\": - [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"description\": \"The - style of the channel section.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"position\": {\n \"format\": \"uint32\",\n \"description\": - \"The position of the channel section in the channel.\",\n \"type\": - \"integer\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the channel section's default title and description.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ThumbnailSetResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"description\": \"A list of thumbnails.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n }\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thumbnailSetResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ThumbnailSetResponse\",\n \"type\": \"object\"\n },\n \"VideoAbuseReportReason\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoAbuseReportReason\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"VideoAbuseReportReasonSnippet\",\n \"description\": \"The `snippet` - object contains basic details about the abuse report reason.\"\n },\n - \ \"id\": {\n \"description\": \"The ID of this abuse report - reason.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"VideoAbuseReportReason\",\n \"type\": \"object\",\n \"description\": - \"A `__videoAbuseReportReason__` resource identifies a reason that a video - could be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\"\n - \ },\n \"LiveStreamContentDetails\": {\n \"properties\": {\n \"closedCaptionsIngestionUrl\": - {\n \"description\": \"The ingestion URL where the closed captions - of this stream are sent.\",\n \"type\": \"string\"\n },\n - \ \"isReusable\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \"\n }\n },\n \"id\": \"LiveStreamContentDetails\",\n \"type\": - \"object\",\n \"description\": \"Detailed settings of a stream.\"\n },\n - \ \"VideoFileDetailsAudioStream\": {\n \"type\": \"object\",\n \"description\": - \"Information about an audio stream.\",\n \"properties\": {\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The audio - codec that the stream uses.\"\n },\n \"vendor\": {\n \"type\": - \"string\",\n \"description\": \"A value that uniquely identifies - a video vendor. Typically, the value is a four-letter vendor code.\"\n },\n - \ \"channelCount\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The number of audio channels that - the stream contains.\"\n },\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"description\": \"The audio stream's bitrate, in bits - per second.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"VideoFileDetailsAudioStream\"\n },\n \"InvideoPosition\": {\n \"type\": - \"object\",\n \"description\": \"Describes the spatial position of a - visual widget inside a video. It is a union of various position types, out - of which only will be set one.\",\n \"id\": \"InvideoPosition\",\n \"properties\": - {\n \"cornerPosition\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\"\n - \ },\n \"type\": {\n \"description\": \"Defines the - position type.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\"\n ],\n \"enum\": [\n \"corner\"\n - \ ]\n }\n }\n },\n \"MemberListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#memberListResponse\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Member\"\n },\n \"description\": - \"A list of members that match the request criteria.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n }\n },\n - \ \"id\": \"MemberListResponse\"\n },\n \"LiveStreamStatus\": {\n - \ \"type\": \"object\",\n \"id\": \"LiveStreamStatus\",\n \"description\": - \"Brief description of the live stream status.\",\n \"properties\": {\n - \ \"streamStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"created\",\n \"ready\",\n - \ \"active\",\n \"inactive\",\n \"error\"\n - \ ],\n \"type\": \"string\"\n },\n \"healthStatus\": - {\n \"$ref\": \"LiveStreamHealthStatus\",\n \"description\": - \"The health status of the stream.\"\n }\n }\n },\n \"InvideoBranding\": - {\n \"properties\": {\n \"position\": {\n \"description\": - \"The spatial position within the video where the branding watermark will - be displayed.\",\n \"$ref\": \"InvideoPosition\"\n },\n \"timing\": - {\n \"$ref\": \"InvideoTiming\",\n \"description\": \"The - temporal position within the video where watermark will be displayed.\"\n - \ },\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The url of the uploaded image. Only used in apiary to api communication.\"\n - \ },\n \"targetChannelId\": {\n \"description\": \"The - channel to which this branding links. If not present it defaults to the current - channel.\",\n \"type\": \"string\"\n },\n \"imageBytes\": - {\n \"format\": \"byte\",\n \"description\": \"The bytes - the uploaded image. Only used in api to youtube communication.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"InvideoBranding\",\n \"description\": \"LINT.IfChange Describes an - invideo branding.\"\n },\n \"PlaylistStatus\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"description\": - \"The playlist's privacy status.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"id\": \"PlaylistStatus\"\n - \ },\n \"LiveChatTextMessageDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatTextMessageDetails\",\n \"properties\": {\n \"messageText\": - {\n \"description\": \"The user's message.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatNewSponsorDetails\": - {\n \"properties\": {\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level that the viewer - just had joined. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n },\n - \ \"isUpgrade\": {\n \"description\": \"If the viewer just - had upgraded from a lower level. For viewers that were not members at the - time of purchase, this field is false.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"id\": \"LiveChatNewSponsorDetails\",\n \"type\": - \"object\"\n },\n \"ActivityListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Activity\"\n },\n \"type\": \"array\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#activityListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": - \"ActivityListResponse\"\n },\n \"VideoStatus\": {\n \"type\": - \"object\",\n \"description\": \"Basic details about a video category, - such as its localized title. Next Id: 18\",\n \"id\": \"VideoStatus\",\n - \ \"properties\": {\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"uploadStatus\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ],\n \"description\": \"The status of the uploaded video.\",\n - \ \"enumDescriptions\": [\n \"Video has been uploaded but - not processed yet.\",\n \"Video has been successfully processed.\",\n - \ \"Processing has failed. See FailureReason.\",\n \"Video - has been rejected. See RejectionReason.\",\n \"Video has been deleted.\"\n - \ ]\n },\n \"rejectionReason\": {\n \"description\": - \"This value explains why YouTube rejected an uploaded video. This property - is only present if the uploadStatus property indicates that the upload was - rejected.\",\n \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ],\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"type\": \"string\"\n - \ },\n \"license\": {\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"description\": \"The - video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"publicStatsViewable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"embeddable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value indicates if the video can be embedded - on another website. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"failureReason\": {\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ],\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ],\n \"description\": - \"This value explains why a video failed to upload. This property is only - present if the uploadStatus property indicates that the upload failed.\",\n - \ \"type\": \"string\"\n },\n \"privacyStatus\": {\n - \ \"description\": \"The video's privacy status.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"publishAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the video - is scheduled to publish. It can be set only if the privacy status of the video - is private..\"\n }\n }\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"type\": \"object\",\n \"properties\": {\n \"categoryRestricts\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A set of video - categories for which the tag is relevant. You can use this information to - display appropriate tag suggestions based on the video category that the video - uploader associates with the video. By default, tag suggestions are relevant - for all categories if there are no restricts defined for the keyword.\"\n - \ },\n \"tag\": {\n \"description\": \"The keyword tag - suggested for the video.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"VideoSuggestionsTagSuggestion\",\n \"description\": \"A - single tag suggestion with it's relevance information.\"\n },\n \"LiveBroadcastSnippet\": - {\n \"properties\": {\n \"actualStartTime\": {\n \"description\": - \"The date and time that the broadcast actually started. This information - is only available once the broadcast's state is live.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that is publishing the broadcast.\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the broadcast was added to YouTube's live broadcast schedule.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\",\n \"type\": \"string\"\n - \ },\n \"actualEndTime\": {\n \"description\": \"The - date and time that the broadcast actually ended. This information is only - available once the broadcast's state is complete.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The broadcast's description. As with the title, - you can set this field by modifying the broadcast resource or by setting the - description field of the corresponding video resource.\",\n \"type\": - \"string\"\n },\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The id of the live chat for this broadcast.\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - broadcast. For each nested object in this object, the key is the name of the - thumbnail image, and the value is an object that contains other information - about the thumbnail.\"\n },\n \"scheduledStartTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - is scheduled to start.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to end.\",\n \"type\": \"string\"\n },\n \"isDefaultBroadcast\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast is the default broadcast. Internal only.\"\n }\n - \ },\n \"description\": \"Basic broadcast information.\",\n \"type\": - \"object\",\n \"id\": \"LiveBroadcastSnippet\"\n },\n \"VideoFileDetails\": - {\n \"description\": \"Describes original video file properties, including - technical details about audio and video streams, but also metadata information - like content length, digitization time, or geotagging information.\",\n \"type\": - \"object\",\n \"properties\": {\n \"creationTime\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the uploaded - video file was created. The value is specified in ISO 8601 format. Currently, - the following ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive - time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \"\n },\n \"fileSize\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - file's size in bytes. This field is present whether a video file or another - type of file was uploaded.\"\n },\n \"fileName\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded file's name. This field - is present whether a video file or another type of file was uploaded.\"\n - \ },\n \"durationMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The length of the uploaded video - in milliseconds.\"\n },\n \"videoStreams\": {\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n },\n \"type\": - \"array\"\n },\n \"audioStreams\": {\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n },\n \"type\": - \"array\"\n },\n \"bitrateBps\": {\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ },\n \"fileType\": {\n \"description\": \"The uploaded - file's type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"Known video file (e.g., an - MP4 file).\",\n \"Audio only file (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Archive file (e.g., a ZIP archive).\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"Movie - project file (e.g., Microsoft Windows Movie Maker project).\",\n \"Other - non-video file type.\"\n ],\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ]\n },\n \"container\": {\n \"description\": - \"The uploaded video file's container format.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoFileDetails\"\n },\n \"SuperStickerMetadata\": - {\n \"properties\": {\n \"altText\": {\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\",\n \"type\": \"string\"\n },\n \"stickerId\": - {\n \"description\": \"Unique identifier of the Super Sticker. This - is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\",\n \"type\": \"string\"\n },\n - \ \"altTextLanguage\": {\n \"description\": \"Specifies the - localization language in which the alt text is returned.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"SuperStickerMetadata\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"type\": \"object\",\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"properties\": {\n \"allowed\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"blocked\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\",\n \"type\": - \"array\"\n }\n },\n \"description\": \"DEPRECATED Region - restriction of the video.\"\n },\n \"MonitorStreamInfo\": {\n \"id\": - \"MonitorStreamInfo\",\n \"properties\": {\n \"broadcastStreamDelayMs\": - {\n \"type\": \"integer\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"format\": \"uint32\",\n \"description\": \"If you have - set the enableMonitorStream property to true, then this property determines - the length of the live broadcast delay.\"\n },\n \"enableMonitorStream\": - {\n \"description\": \"This value determines whether the monitor - stream is enabled for the broadcast. If the monitor stream is enabled, then - YouTube will broadcast the event content on a special stream intended only - for the broadcaster's consumption. The broadcaster can use the stream to review - the event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"type\": \"boolean\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"HTML code that embeds a player that - plays the monitor stream.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Settings and Info of the monitor stream\"\n },\n - \ \"VideoProcessingDetails\": {\n \"id\": \"VideoProcessingDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Describes processing - status and progress and availability of some other Video resource parts.\",\n - \ \"properties\": {\n \"processingIssuesAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether the - video processing engine has generated suggestions that might improve YouTube's - ability to process the the video, warnings that explain video processing problems, - or errors that cause video processing problems. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"fileDetailsAvailability\": {\n \"description\": \"This - value indicates whether file details are available for the uploaded video. - You can retrieve a video's file details by requesting the fileDetails part - in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"thumbnailsAvailability\": {\n \"description\": \"This value - indicates whether thumbnail images have been generated for the video.\",\n - \ \"type\": \"string\"\n },\n \"tagSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether keyword (tag) - suggestions are available for the video. Tags can be added to a video's metadata - to make it easier for other users to find the video. You can retrieve these - suggestions by requesting the suggestions part in your videos.list() request.\",\n - \ \"type\": \"string\"\n },\n \"editorSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether video editing suggestions, which might improve video quality - or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\"\n },\n \"processingFailureReason\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"type\": \"string\"\n },\n \"processingStatus\": - {\n \"enum\": [\n \"processing\",\n \"succeeded\",\n - \ \"failed\",\n \"terminated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's processing status. This - value indicates whether YouTube was able to process the video or if the video - is still being processed.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"processingProgress\": {\n \"description\": \"The processingProgress - object contains information about the progress YouTube has made in processing - the video. The values are really only relevant if the video's processing status - is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ }\n }\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"description\": \"Information that identifies the recommended resource.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"reason\": - {\n \"enum\": [\n \"reasonUnspecified\",\n \"videoFavorited\",\n - \ \"videoLiked\",\n \"videoWatched\"\n ],\n - \ \"description\": \"The reason that the resource is recommended to - the user.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"seedResourceId\": {\n \"description\": - \"The seedResourceId object contains information about the resource that caused - the recommendation.\",\n \"$ref\": \"ResourceId\"\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the recommended resource.\",\n \"$ref\": \"ResourceId\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsRecommendation\"\n - \ },\n \"LiveStreamSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The stream's title. - The value must be between 1 and 128 characters long.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The stream's description. The value cannot be - longer than 10000 characters.\"\n },\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n },\n \"publishedAt\": {\n - \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the stream was created.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that is transmitting the stream.\"\n - \ }\n },\n \"id\": \"LiveStreamSnippet\"\n },\n \"TestItemTestItemSnippet\": - {\n \"type\": \"object\",\n \"id\": \"TestItemTestItemSnippet\",\n - \ \"properties\": {}\n },\n \"ActivityContentDetailsSubscription\": - {\n \"type\": \"object\",\n \"description\": \"Information about - a channel that a user subscribed to.\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource that the user subscribed - to.\"\n }\n },\n \"id\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"PlaylistLocalization\": {\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's title.\"\n },\n \"description\": {\n - \ \"description\": \"The localized strings for playlist's description.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Playlist localization setting\",\n \"id\": \"PlaylistLocalization\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"properties\": {\n \"playlistItemId\": {\n \"type\": - \"string\",\n \"description\": \"ID of the item within the playlist.\"\n - \ },\n \"playlistId\": {\n \"description\": \"The value - that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Information about a new playlist item.\",\n - \ \"id\": \"ActivityContentDetailsPlaylistItem\"\n },\n \"SuperChatEvent\": - {\n \"description\": \"A `__superChatEvent__` resource represents a Super - Chat purchase on a YouTube channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#superChatEvent\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the Super Chat event.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"id\": \"SuperChatEvent\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of valid - abuse reasons that are used with `video.ReportAbuse`.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ }\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The `visitorId` identifies the visitor.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"CaptionListResponse\": - {\n \"id\": \"CaptionListResponse\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Caption\"\n },\n - \ \"description\": \"A list of captions that match the request criteria.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#captionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#captionListResponse\\\".\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatMessage\": {\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the message.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the message.\",\n \"$ref\": - \"LiveChatMessageSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatMessage\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"authorDetails\": {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n - \ \"description\": \"The authorDetails object contains basic details - about the user that posted this message.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A *liveChatMessage* resource represents - a chat message in a YouTube Live Chat.\",\n \"id\": \"LiveChatMessage\"\n - \ },\n \"ThirdPartyLink\": {\n \"description\": \"A *third party - account link* resource represents a link between a YouTube account or a channel - and an account on a third-party service.\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource\"\n },\n \"linkingToken\": - {\n \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#thirdPartyLink\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLink\\\".\",\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n - \ \"description\": \"The status object contains information about - the status of the link.\"\n }\n },\n \"id\": \"ThirdPartyLink\",\n - \ \"type\": \"object\"\n },\n \"AbuseType\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"AbuseType\",\n \"type\": \"object\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"items\": - {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"default\": - \"youtube#thirdPartyLinkListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ThirdPartyLinkListResponse\"\n },\n \"ChannelConversionPing\": - {\n \"id\": \"ChannelConversionPing\",\n \"properties\": {\n \"context\": - {\n \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ],\n \"description\": \"Defines - the context of the ping.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"conversionUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"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.\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"description\": \"Details about a channel bulletin post.\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsBulletin\"\n - \ },\n \"ChannelSnippet\": {\n \"properties\": {\n \"localized\": - {\n \"$ref\": \"ChannelLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"thumbnails\": - {\n \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"title\": {\n \"description\": \"The channel's - title.\",\n \"type\": \"string\"\n },\n \"customUrl\": - {\n \"type\": \"string\",\n \"description\": \"The custom - url of the channel.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the channel's default - title and description.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The description of the channel.\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the channel was created.\",\n - \ \"format\": \"date-time\"\n },\n \"country\": {\n - \ \"description\": \"The country of the channel.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ChannelSnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about a channel, including - title, description and thumbnails.\"\n },\n \"VideoGetRatingResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"items\": - {\n \"items\": {\n \"$ref\": \"VideoRating\"\n },\n - \ \"description\": \"A list of ratings that match the request criteria.\",\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoGetRatingResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoGetRatingResponse\"\n },\n \"VideoCategorySnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"channelId\": - {\n \"description\": \"The YouTube channel that created the video - category.\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The video category's title.\"\n },\n \"assignable\": - {\n \"type\": \"boolean\"\n }\n },\n \"id\": \"VideoCategorySnippet\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\"\n },\n \"Video\": {\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.videos.update\"\n ]\n },\n \"type\": - \"string\"\n },\n \"status\": {\n \"$ref\": \"VideoStatus\",\n - \ \"description\": \"The status object contains information about - the video's uploading, processing, and privacy statuses.\"\n },\n \"player\": - {\n \"description\": \"The player object contains information that - you would use to play the video in an embedded player.\",\n \"$ref\": - \"VideoPlayer\"\n },\n \"monetizationDetails\": {\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\",\n \"$ref\": \"VideoMonetizationDetails\"\n - \ },\n \"recordingDetails\": {\n \"description\": \"The - recordingDetails object encapsulates information about the location, date - and address where the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"ageGating\": {\n \"description\": \"Age restriction - details related to a video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoAgeGating\"\n },\n \"topicDetails\": - {\n \"$ref\": \"VideoTopicDetails\",\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\"\n },\n \"processingDetails\": {\n \"$ref\": - \"VideoProcessingDetails\",\n \"description\": \"The processingDetails - object encapsulates information about YouTube's progress in processing the - uploaded video file. The properties in the object identify the current processing - status and an estimate of the time remaining until YouTube finishes processing - the video. This part also indicates whether different types of data or content, - such as file details or thumbnail images, are available for the video. The - processingProgress object is designed to be polled so that the video uploaded - can track the progress that YouTube has made in processing the uploaded video - file. This data can only be retrieved by the video owner.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"suggestions\": {\n \"$ref\": - \"VideoSuggestions\",\n \"description\": \"The suggestions object - encapsulates suggestions that identify opportunities to improve the video - quality or the metadata for the uploaded video. This data can only be retrieved - by the video owner.\"\n },\n \"liveStreamingDetails\": {\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#video\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#video\\\".\"\n },\n \"fileDetails\": - {\n \"$ref\": \"VideoFileDetails\",\n \"description\": \"The - fileDetails object encapsulates information about the video file that was - uploaded to YouTube, including the file's resolution, duration, audio and - video codecs, stream bitrates, and more. This data can only be retrieved by - the video owner.\"\n },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"VideoLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"VideoContentDetails\",\n \"description\": \"The contentDetails - object contains information about the video content, including the length - of the video and its aspect ratio.\"\n },\n \"snippet\": {\n - \ \"description\": \"The snippet object contains basic details about - the video, such as its title, description, and category.\",\n \"$ref\": - \"VideoSnippet\"\n },\n \"projectDetails\": {\n \"$ref\": - \"VideoProjectDetails\",\n \"description\": \"The projectDetails - object contains information about the project specific video metadata. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object contains statistics about the video.\",\n \"$ref\": \"VideoStatistics\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - *video* resource represents a YouTube video.\",\n \"id\": \"Video\"\n - \ },\n \"PlaylistPlayer\": {\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"PlaylistPlayer\"\n },\n \"I18nRegion\": - {\n \"id\": \"I18nRegion\",\n \"description\": \"A *i18nRegion* - resource identifies a region where YouTube is available.\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#i18nRegion\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegion\\\".\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the i18n region.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"Cuepoint\": - {\n \"type\": \"object\",\n \"description\": \"Note that there may - be a 5-second end-point resolution issue. For instance, if a cuepoint comes - in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. - This is an artifact of HLS.\",\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The identifier - for cuepoint resource.\"\n },\n \"cueType\": {\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"durationSecs\": {\n - \ \"description\": \"The duration of this cuepoint.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"walltimeMs\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The wall clock time at which the cuepoint should be inserted. Only one of - insertion_offset_time_ms and walltime_ms may be set at a time.\"\n },\n - \ \"etag\": {\n \"type\": \"string\"\n },\n \"insertionOffsetTimeMs\": - {\n \"type\": \"string\",\n \"format\": \"int64\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\"\n }\n },\n \"id\": \"Cuepoint\"\n },\n - \ \"Channel\": {\n \"type\": \"object\",\n \"id\": \"Channel\",\n - \ \"properties\": {\n \"localizations\": {\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n - \ }\n },\n \"brandingSettings\": {\n \"$ref\": - \"ChannelBrandingSettings\",\n \"description\": \"The brandingSettings - object encapsulates information about the branding of the channel.\"\n },\n - \ \"contentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n - \ \"description\": \"The statistics object encapsulates statistics - for the channel.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channel\\\".\",\n \"default\": \"youtube#channel\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel.\"\n },\n - \ \"topicDetails\": {\n \"$ref\": \"ChannelTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ChannelContentDetails\",\n \"description\": - \"The contentDetails object encapsulates information about the channel's content.\"\n - \ },\n \"status\": {\n \"description\": \"The status - object encapsulates information about the privacy status of the channel.\",\n - \ \"$ref\": \"ChannelStatus\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"conversionPings\": {\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the channel, such as its title, description, and thumbnail - images.\",\n \"$ref\": \"ChannelSnippet\"\n },\n \"auditDetails\": - {\n \"$ref\": \"ChannelAuditDetails\",\n \"description\": - \"The auditionDetails object encapsulates channel data that is relevant for - YouTube Partners during the audition process.\"\n }\n },\n \"description\": - \"A *channel* resource contains information about a YouTube channel.\"\n },\n - \ \"LiveChatUserBannedMessageDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"banType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of ban.\",\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ],\n \"type\": \"string\"\n - \ },\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"The details of the user that was banned.\"\n - \ },\n \"banDurationSeconds\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The duration of the ban. This property is only - present if the banType is temporary.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"ThumbnailDetails\": {\n \"properties\": {\n \"maxres\": - {\n \"description\": \"The maximum resolution quality image for this - resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"high\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The high - quality image for this resource.\"\n },\n \"standard\": {\n - \ \"$ref\": \"Thumbnail\",\n \"description\": \"The standard - quality image for this resource.\"\n },\n \"default\": {\n \"description\": - \"The default image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"medium\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The medium quality image for this resource.\"\n }\n },\n \"id\": - \"ThumbnailDetails\",\n \"description\": \"Internal representation of - thumbnails for a YouTube resource.\",\n \"type\": \"object\"\n },\n - \ \"VideoRecordingDetails\": {\n \"id\": \"VideoRecordingDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"location\": - {\n \"$ref\": \"GeoPoint\",\n \"description\": \"The geolocation - information associated with the video.\"\n },\n \"recordingDate\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the video was recorded.\",\n \"type\": \"string\"\n - \ },\n \"locationDescription\": {\n \"type\": \"string\",\n - \ \"description\": \"The text description of the location where the - video was recorded.\"\n }\n },\n \"description\": \"Recording - information associated with the video.\"\n },\n \"GeoPoint\": {\n \"properties\": - {\n \"altitude\": {\n \"description\": \"Altitude above the - reference ellipsoid, in meters.\",\n \"format\": \"double\",\n \"type\": - \"number\"\n },\n \"longitude\": {\n \"description\": - \"Longitude in degrees.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n },\n \"latitude\": {\n \"description\": - \"Latitude in degrees.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n }\n },\n \"id\": \"GeoPoint\",\n \"type\": - \"object\",\n \"description\": \"Geographical coordinates of a point, - in WGS84.\"\n },\n \"I18nLanguageListResponse\": {\n \"properties\": - {\n \"items\": {\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n - \ },\n \"description\": \"A list of supported i18n languages. - In this map, the i18n language ID is the map key, and its value is the corresponding - i18nLanguage resource.\",\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#i18nLanguageListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"I18nLanguageListResponse\"\n - \ },\n \"LiveChatBanSnippet\": {\n \"type\": \"object\",\n \"id\": - \"LiveChatBanSnippet\",\n \"properties\": {\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The chat - this ban is pertinent to.\"\n },\n \"type\": {\n \"description\": - \"The type of ban.\",\n \"enumDescriptions\": [\n \"An - invalid ban type.\",\n \"A permanent ban.\",\n \"A temporary - ban.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ]\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n }\n - \ }\n },\n \"ChannelLocalization\": {\n \"properties\": {\n - \ \"title\": {\n \"description\": \"The localized strings for - channel's title.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel's description.\"\n }\n },\n \"id\": \"ChannelLocalization\",\n - \ \"description\": \"Channel localization setting\",\n \"type\": - \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"properties\": - {\n \"memberLevelName\": {\n \"description\": \"The name of - the Level at which the viever is a member. The Level names are defined by - the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"userComment\": - {\n \"description\": \"The comment added by the member to this Member - Milestone Chat. This field is empty for messages without a comment from the - member.\",\n \"type\": \"string\"\n },\n \"memberMonth\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\"\n }\n }\n },\n \"TokenPagination\": - {\n \"id\": \"TokenPagination\",\n \"description\": \"Stub token - pagination template to suppress results.\",\n \"type\": \"object\",\n - \ \"properties\": {}\n },\n \"LiveChatModerator\": {\n \"id\": - \"LiveChatModerator\",\n \"description\": \"A *liveChatModerator* resource - represents a moderator for a YouTube live chat. A chat moderator has the ability - to ban/unban users from a chat, remove message, etc.\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the moderator.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the moderator.\",\n \"$ref\": - \"LiveChatModeratorSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatModerator\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"Subscription\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"default\": \"youtube#subscription\",\n \"type\": \"string\"\n - \ },\n \"subscriberSnippet\": {\n \"description\": \"The - subscriberSnippet object contains basic details about the subscriber.\",\n - \ \"$ref\": \"SubscriptionSubscriberSnippet\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains basic statistics - about the subscription.\",\n \"$ref\": \"SubscriptionContentDetails\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the subscription, including its title - and the channel that the user subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the subscription.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A *subscription* resource contains - information about a YouTube user subscription. A subscription notifies a user - when new videos are added to a channel or when another user takes one of several - actions on YouTube, such as uploading a video, rating a video, or commenting - on a video.\",\n \"id\": \"Subscription\"\n },\n \"ChannelSectionListResponse\": - {\n \"id\": \"ChannelSectionListResponse\",\n \"properties\": {\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n \"default\": - \"youtube#channelSectionListResponse\"\n },\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of ChannelSections - that match the request criteria.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"CommentSnippet\": {\n \"properties\": {\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"viewerRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"authorChannelId\": {\n - \ \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"likeCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The total - number of likes this comment has received.\",\n \"type\": \"integer\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID of - the video the comment refers to, if any.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time when the comment was originally published.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"textOriginal\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"authorChannelUrl\": {\n \"type\": - \"string\",\n \"description\": \"Link to the author's YouTube channel, - if any.\"\n },\n \"canRate\": {\n \"description\": - \"Whether the current viewer can rate this comment.\",\n \"type\": - \"boolean\"\n },\n \"parentId\": {\n \"description\": - \"The unique id of the parent comment, only set for replies.\",\n \"type\": - \"string\"\n },\n \"updatedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the comment was last updated.\",\n - \ \"type\": \"string\"\n },\n \"textDisplay\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"moderationStatus\": - {\n \"description\": \"The comment's moderation status. Will not - be set if the comments were requested through the id filter.\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"enumDescriptions\": [\n - \ \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a comment, such as its author and text.\",\n \"id\": \"CommentSnippet\"\n - \ },\n \"MembershipsLevelSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"MembershipsLevelSnippet\",\n \"properties\": {\n \"creatorChannelId\": - {\n \"description\": \"The id of the channel that's offering channel - memberships.\",\n \"type\": \"string\"\n },\n \"levelDetails\": - {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details - about the pricing level.\"\n }\n }\n },\n \"CommentThreadListResponse\": - {\n \"id\": \"CommentThreadListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - comment threads that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"CommentThread\"\n }\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#commentThreadListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n - \ }\n }\n },\n \"MembershipsDetails\": {\n \"id\": \"MembershipsDetails\",\n - \ \"properties\": {\n \"membershipsDuration\": {\n \"$ref\": - \"MembershipsDuration\",\n \"description\": \"Data about memberships - duration without taking into consideration pricing levels.\"\n },\n - \ \"highestAccessibleLevelDisplayName\": {\n \"type\": \"string\",\n - \ \"description\": \"Display name for the highest level that the user - has access to at the moment.\"\n },\n \"membershipsDurationAtLevels\": - {\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ },\n \"description\": \"Data about memberships duration - on particular pricing levels.\",\n \"type\": \"array\"\n },\n - \ \"highestAccessibleLevel\": {\n \"description\": \"Id of - the highest level that the user has access to at the moment.\",\n \"type\": - \"string\"\n },\n \"accessibleLevels\": {\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"Details about a social network post.\",\n \"properties\": - {\n \"type\": {\n \"description\": \"The name of the social - network.\",\n \"type\": \"string\",\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"referenceUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL of - the social network post.\"\n },\n \"imageUrl\": {\n \"description\": - \"An image of the post's author.\",\n \"type\": \"string\"\n },\n - \ \"resourceId\": {\n \"description\": \"The resourceId object - encapsulates information that identifies the resource associated with a social - network post.\",\n \"$ref\": \"ResourceId\"\n },\n \"author\": - {\n \"type\": \"string\",\n \"description\": \"The author - of the social network post.\"\n }\n }\n },\n \"LiveChatModeratorSnippet\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\",\n - \ \"properties\": {\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the live chat this moderator can act - on.\"\n },\n \"moderatorDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the moderator.\"\n }\n }\n - \ },\n \"Playlist\": {\n \"id\": \"Playlist\",\n \"type\": - \"object\",\n \"properties\": {\n \"status\": {\n \"$ref\": - \"PlaylistStatus\",\n \"description\": \"The status object contains - status information for the playlist.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n }\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist, such as its title and description.\"\n },\n \"kind\": - {\n \"default\": \"youtube#playlist\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlist\\\".\"\n },\n \"player\": - {\n \"description\": \"The player object contains information that - you would use to play the playlist in an embedded player.\",\n \"$ref\": - \"PlaylistPlayer\"\n }\n },\n \"description\": \"A *playlist* - resource represents a YouTube playlist. A playlist is a collection of videos - that can be viewed sequentially and shared with other users. A playlist can - contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\"\n },\n \"VideoMonetizationDetails\": - {\n \"type\": \"object\",\n \"description\": \"Details about monetization - of a YouTube Video.\",\n \"id\": \"VideoMonetizationDetails\",\n \"properties\": - {\n \"access\": {\n \"description\": \"The value of access - indicates whether the video can be monetized or not.\",\n \"$ref\": - \"AccessPolicy\"\n }\n }\n },\n \"Activity\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#activity\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the activity, including the activity's type and group ID.\",\n \"$ref\": - \"ActivitySnippet\"\n },\n \"contentDetails\": {\n \"description\": - \"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.\",\n \"$ref\": - \"ActivityContentDetails\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"Activity\",\n \"description\": \"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.\"\n },\n \"SuperChatEventListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n \"default\": - \"youtube#superChatEventListResponse\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"SuperChatEvent\"\n },\n \"description\": \"A list of Super - Chat purchases that match the request criteria.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n },\n - \ \"id\": \"SuperChatEventListResponse\"\n },\n \"RelatedEntity\": - {\n \"properties\": {\n \"entity\": {\n \"$ref\": \"Entity\"\n - \ }\n },\n \"id\": \"RelatedEntity\",\n \"type\": \"object\"\n - \ },\n \"LiveBroadcast\": {\n \"description\": \"A *liveBroadcast* - resource represents an event that will be streamed, via live video, on YouTube.\",\n - \ \"id\": \"LiveBroadcast\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#liveBroadcast\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"LiveBroadcastContentDetails\",\n \"description\": \"The contentDetails - object contains information about the event's video content, such as whether - the content can be shown in an embedded video player or if it will be archived - and therefore available for viewing after the event has concluded.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the event, including its title, description, start time, - and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n },\n - \ \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"The statistics object contains info about the - event's current stats. These include concurrent viewers and total chat count. - Statistics can change (in either direction) during the lifetime of an event. - Statistics are only returned while the event is live.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the broadcast.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"status\": {\n \"$ref\": - \"LiveBroadcastStatus\",\n \"description\": \"The status object contains - information about the event's status.\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoCategory\": {\n \"id\": \"VideoCategory\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the video category, including its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the video category.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoCategory\"\n - \ }\n },\n \"description\": \"A *videoCategory* resource identifies - a category that has been or could be associated with uploaded videos.\",\n - \ \"type\": \"object\"\n },\n \"ChannelSectionTargeting\": {\n \"type\": - \"object\",\n \"description\": \"ChannelSection targeting setting.\",\n - \ \"id\": \"ChannelSectionTargeting\",\n \"properties\": {\n \"regions\": - {\n \"description\": \"The region the channel section is targeting.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"countries\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The country the channel section is targeting.\",\n \"type\": \"array\"\n - \ },\n \"languages\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The language the channel section is targeting.\"\n }\n }\n },\n - \ \"Thumbnail\": {\n \"id\": \"Thumbnail\",\n \"properties\": - {\n \"url\": {\n \"type\": \"string\",\n \"description\": - \"The thumbnail image's URL.\"\n },\n \"width\": {\n \"format\": - \"uint32\",\n \"description\": \"(Optional) Width of the thumbnail - image.\",\n \"type\": \"integer\"\n },\n \"height\": - {\n \"description\": \"(Optional) Height of the thumbnail image.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A thumbnail - is an image representing a YouTube resource.\"\n },\n \"IngestionInfo\": - {\n \"properties\": {\n \"rtmpsBackupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of backupIngestionAddress in order to stream via RTMPS. Not applicable to - non-RTMP streams.\"\n },\n \"streamName\": {\n \"type\": - \"string\",\n \"description\": \"The stream name that YouTube assigns - to the video stream.\"\n },\n \"rtmpsIngestionAddress\": {\n - \ \"description\": \"This ingestion url may be used instead of ingestionAddress - in order to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": - \"string\"\n },\n \"ingestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The primary ingestion URL that you - should use to stream video to YouTube. You must stream video to this URL. - Depending on which application or tool you use to encode your video stream, - you may need to enter the stream URL and stream name separately or you may - need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \"\n },\n \"backupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The backup ingestion URL that you - should use to stream video to YouTube. You have the option of simultaneously - streaming the content that you are sending to the ingestionAddress to this - URL.\"\n }\n },\n \"type\": \"object\",\n \"id\": \"IngestionInfo\",\n - \ \"description\": \"Describes information necessary for ingesting an - RTMP, HTTP, or SRT stream.\"\n },\n \"ActivityContentDetailsLike\": - {\n \"description\": \"Information about a resource that received a positive - (like) rating.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\",\n - \ \"$ref\": \"ResourceId\"\n }\n }\n },\n \"SuperChatEventSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"displayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). - The string is rendered for the given language.\"\n },\n \"messageType\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n },\n \"commentText\": {\n \"type\": - \"string\",\n \"description\": \"The text contents of the comment - left by the user.\"\n },\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\"\n },\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the purchase was made. - ISO 4217.\"\n },\n \"channelId\": {\n \"description\": - \"Channel id where the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"createdAt\": {\n \"description\": \"The date - and time when the event occurred.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"isSuperStickerEvent\": {\n \"description\": - \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n - \ },\n \"supporterDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the supporter.\"\n }\n },\n - \ \"id\": \"SuperChatEventSnippet\"\n },\n \"PageInfo\": {\n \"type\": - \"object\",\n \"id\": \"PageInfo\",\n \"description\": \"Paging - details for lists of resources, including total number of items available - and number of resources returned in a single page.\",\n \"properties\": - {\n \"resultsPerPage\": {\n \"type\": \"integer\",\n \"description\": - \"The number of results included in the API response.\",\n \"format\": - \"int32\"\n },\n \"totalResults\": {\n \"description\": - \"The total number of results in the result set.\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n }\n }\n },\n - \ \"ContentRating\": {\n \"type\": \"object\",\n \"id\": \"ContentRating\",\n - \ \"properties\": {\n \"cscfRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\",\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ]\n },\n - \ \"cicfRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Commission - de Contr\xF4le des Films (Belgium).\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n - \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n - \ ]\n },\n \"chfilmRating\": {\n \"description\": - \"The video's rating in Switzerland.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n - \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n - \ \"chfilm18\",\n \"chfilmUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"pefilmRating\": {\n \"enum\": [\n - \ \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"PT\",\n - \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Peru.\",\n - \ \"type\": \"string\"\n },\n \"mtrcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\"\n },\n \"oflcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\",\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ]\n },\n \"smaisRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Iceland.\",\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ]\n },\n \"skfilmRating\": {\n \"enum\": - [\n \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n - \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Slovakia.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P2\",\n \"P5\",\n \"P8\",\n - \ \"\"\n ]\n },\n \"grfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ],\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating in Greece.\"\n },\n \"csaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n - \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n - \ \"csaUnrated\"\n ],\n \"description\": \"The - video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, which - rates broadcast content.\"\n },\n \"fpbRatingReasons\": {\n - \ \"items\": {\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"type\": - \"array\",\n \"description\": \"Reasons that explain why the video - received its FPB (South Africa) rating.\"\n },\n \"kijkwijzerRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating - from the Nederlands Instituut voor de Classificatie van Audiovisuele Media - (Netherlands).\"\n },\n \"mocRating\": {\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"description\": \"The video's Ministerio de Cultura - (Colombia) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"T\",\n \"7\",\n \"12\",\n - \ \"15\",\n \"18\",\n \"X\",\n \"Banned\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"cbfcRating\": {\n \"description\": \"The video's Central - Board of Film Certification (CBFC - India) rating.\",\n \"enum\": - [\n \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"fcbmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Malaysia's Film Censorship Board.\",\n \"enum\": [\n - \ \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ]\n },\n \"mpaatRating\": - {\n \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ],\n \"description\": \"The rating - system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GB\",\n \"RB\"\n ]\n },\n \"fpbRating\": - {\n \"description\": \"The video's rating from South Africa's Film - and Publication Board.\",\n \"type\": \"string\",\n \"enum\": - [\n \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n - \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n - \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ]\n },\n \"fcoRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"I\",\n - \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Hong Kong's Office for Film, Newspaper and Article - Administration.\",\n \"enum\": [\n \"fcoUnspecified\",\n - \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n - \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n - \ ]\n },\n \"resorteviolenciaRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"description\": \"The video's rating in Venezuela.\"\n - \ },\n \"agcomRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\",\n \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ]\n },\n \"egfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Egypt.\"\n },\n - \ \"bfvcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"E\",\n \"13\",\n \"15\",\n - \ \"18\",\n \"20\",\n \"B\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Thailand's - Board of Film and Video Censors.\",\n \"type\": \"string\",\n \"enum\": - [\n \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ]\n },\n \"ifcoRating\": {\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\",\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"catvfrRating\": - {\n \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"mccaaRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Malta's - Film Age-Classification Board.\"\n },\n \"czfilmRating\": {\n - \ \"description\": \"The video's rating in the Czech Republic.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ]\n },\n \"mpaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n - \ \"! X\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Motion Picture Association - of America (MPAA) rating.\",\n \"enum\": [\n \"mpaaUnspecified\",\n - \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n - \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n - \ \"mpaaUnrated\"\n ]\n },\n \"rcnofRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ],\n \"description\": \"The - video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"rteRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"GA\",\n \"CH\",\n \"PS\",\n \"MA\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enum\": [\n - \ \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"bbfcRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG\",\n \"12A\",\n \"12\",\n - \ \"15\",\n \"18\",\n \"R18\",\n \"\"\n - \ ],\n \"description\": \"The video's British Board of Film - Classification (BBFC) rating.\",\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ]\n },\n - \ \"eirinRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"The video's Eirin (\u6620\u502B) - rating. Eirin is the Japanese rating system.\"\n },\n \"mekuRating\": - {\n \"description\": \"The video's rating from Finland's Kansallinen - Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n \"enum\": - [\n \"mekuUnspecified\",\n \"mekuS\",\n \"meku7\",\n - \ \"meku12\",\n \"meku16\",\n \"meku18\",\n - \ \"mekuUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"nbcplRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating in Poland.\",\n - \ \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n - \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n - \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"incaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n - \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n - \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"description\": - \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\"\n },\n \"nbcRating\": {\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12+\",\n \"15+\",\n - \ \"18+\",\n \"18+R\",\n \"PU\",\n \"\"\n - \ ]\n },\n \"anatelRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"description\": \"The video's Anatel - (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\",\n - \ \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n - \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n - \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n - \ \"anatelUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"nfvcbRating\": {\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Nigeria's - National Film and Video Censors Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ]\n },\n \"cnaRating\": {\n \"description\": - \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\",\n \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"russiaRating\": {\n \"description\": - \"The video's National Film Registry of the Russian Federation (MKRF - Russia) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"ytRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ]\n - \ },\n \"catvRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ],\n \"description\": \"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.\"\n - \ },\n \"tvpgRating\": {\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"description\": \"The - video's TV Parental Guidelines (TVPG) rating.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ]\n },\n \"kfcbRating\": {\n \"enum\": [\n - \ \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"chvrsRating\": - {\n \"description\": \"The video's Canadian Home Video Rating System - (CHVRS) rating.\",\n \"enum\": [\n \"chvrsUnspecified\",\n - \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n - \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n - \ \"chvrsUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"menaMpaaRating\": - {\n \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ],\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ]\n - \ },\n \"cccRating\": {\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Todo - espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n - \ \"14+\",\n \"18+\",\n \"18+ - contenido - excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\"\n - \ },\n \"smsaRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Statens - medier\xE5d (Sweden's National Media Council).\",\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ]\n },\n \"cceRating\": - {\n \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ],\n \"description\": \"The video's rating from Portugal's - Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"type\": \"string\"\n },\n \"nfrcRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"nfrcUnspecified\",\n - \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n - \ \"nfrcX\",\n \"nfrcUnrated\"\n ],\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ]\n },\n - \ \"ilfilmRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n - \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ],\n \"description\": \"The - video's rating in Israel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"kmrbRating\": - {\n \"enum\": [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n - \ \"kmrb12plus\",\n \"kmrb15plus\",\n \"kmrbTeenr\",\n - \ \"kmrbR\",\n \"kmrbUnrated\"\n ],\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"mcstRating\": {\n \"description\": \"The video's rating - system for Vietnam - MCST\",\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ]\n - \ },\n \"mccypRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Danish Film Institute's - (Det Danske Filminstitut) Media Council for Children and Young People.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ]\n },\n \"ecbmctRating\": - {\n \"type\": \"string\",\n \"description\": \"Rating system - in Turkey - Evaluation and Classification Board of the Ministry of Culture - and Tourism\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ]\n },\n \"nkclvRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Nacion\xE3lais Kino - centrs (National Film Centre of Latvia).\",\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"fmocRating\": - {\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ],\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\"\n },\n \"acbRating\": - {\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n - \ \"description\": \"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.\"\n },\n \"eefilmRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Pere\",\n \"L\",\n \"MS-6\",\n \"K-6\",\n - \ \"MS-12\",\n \"K-12\",\n \"K-14\",\n \"K-16\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Estonia.\",\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ]\n },\n \"djctqRatingReasons\": {\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ]\n },\n \"type\": - \"array\"\n },\n \"moctwRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ],\n \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"description\": \"The video's rating from Taiwan's - Ministry of Culture (\u6587\u5316\u90E8).\",\n \"type\": \"string\"\n - \ },\n \"mdaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Singapore's - Media Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\",\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"djctqRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, - Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enum\": - [\n \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n - \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n - \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n - \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n - \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n - \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n - \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n - \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n - \ ]\n },\n \"bmukkRating\": {\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ]\n },\n \"nmcRating\": - {\n \"description\": \"The National Media Council ratings system - for United Arab Emirates.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ]\n },\n - \ \"cncRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"E\",\n \"interdiction\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Rating system in France - Commission de classification cinematographique\",\n - \ \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ]\n },\n \"mibacRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Ministero dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\"\n - \ },\n \"fskRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle - der Filmwirtschaft (FSK - Germany) rating.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ]\n },\n \"medietilsynetRating\": - {\n \"description\": \"The video's rating from Medietilsynet, the - Norwegian Media Authority.\",\n \"type\": \"string\",\n \"enum\": - [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ]\n },\n \"icaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"description\": \"The video's Instituto - de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ]\n },\n - \ \"lsfRating\": {\n \"enum\": [\n \"lsfUnspecified\",\n - \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n - \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n - \ \"lsfUnrated\"\n ],\n \"description\": \"The - video's rating from Indonesia's Lembaga Sensor Film.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ]\n },\n \"rtcRating\": {\n \"enum\": [\n - \ \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's General Directorate of Radio, Television - and Cinematography (Mexico) rating.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ]\n }\n },\n \"description\": \"Ratings schemes. - The country-specific ratings are mostly for movies and shows. LINT.IfChange\"\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"id\": \"LiveChatFanFundingEventDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the fund was made.\"\n },\n \"userComment\": {\n \"type\": - \"string\",\n \"description\": \"The comment added by the user to - this fan funding event.\"\n },\n \"amountDisplayString\": {\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"type\": \"string\",\n \"description\": - \"The amount of the fund.\",\n \"format\": \"uint64\"\n }\n - \ }\n },\n \"ActivitySnippet\": {\n \"type\": \"object\",\n - \ \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\",\n \"properties\": - {\n \"channelTitle\": {\n \"description\": \"Channel title - for the channel responsible for this activity\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"enum\": [\n \"typeUnspecified\",\n - \ \"upload\",\n \"like\",\n \"favorite\",\n - \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n - \ \"recommendation\",\n \"bulletin\",\n \"social\",\n - \ \"channelItem\",\n \"promotedItem\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of activity that the resource describes.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the resource primarily associated with the activity. - @mutable youtube.activities.insert\"\n },\n \"groupId\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the resource primarily associated with the activity.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel associated with - the activity.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the video was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n }\n },\n \"id\": \"ActivitySnippet\"\n - \ },\n \"CdnSettings\": {\n \"properties\": {\n \"ingestionType\": - {\n \"enum\": [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \" The method or protocol used to transmit the video stream.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"format\": {\n \"type\": \"string\",\n \"description\": - \"The format of the video stream that you are sending to Youtube. \",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"frameRate\": {\n \"type\": \"string\",\n \"enum\": - [\n \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ],\n \"description\": \"The frame rate of the inbound video - data.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"resolution\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\"\n },\n \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n - \ \"description\": \"The ingestionInfo object contains information - that YouTube provides that you need to transmit your RTMP or HTTP stream to - YouTube.\"\n }\n },\n \"description\": \"Brief description - of the live stream cdn settings.\",\n \"type\": \"object\",\n \"id\": - \"CdnSettings\"\n },\n \"LiveChatMessageListResponse\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatMessageListResponse\",\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"type\": \"array\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"offlineAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the underlying - stream went offline.\",\n \"format\": \"date-time\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pollingIntervalMillis\": {\n \"description\": - \"The amount of time the client should wait before polling again.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveChatMessageListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ }\n },\n \"LiveBroadcastListResponse\": {\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"description\": - \"A list of broadcasts that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n - \ }\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveBroadcastListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n }\n },\n \"LiveBroadcastStatistics\": - {\n \"properties\": {\n \"concurrentViewers\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of viewers currently watching the broadcast. The property and its value - will be present if the broadcast has current viewers and the broadcast owner - has not hidden the viewcount for the video. Note that YouTube stops tracking - the number of concurrent viewers for a broadcast when the broadcast ends. - So, this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\"\n },\n \"totalChatCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\"\n - \ }\n },\n \"id\": \"LiveBroadcastStatistics\",\n \"type\": - \"object\",\n \"description\": \"Statistics about the live broadcast. - These represent a snapshot of the values at the time of the request. Statistics - are only returned for live broadcasts.\"\n },\n \"ChannelSectionLocalization\": - {\n \"id\": \"ChannelSectionLocalization\",\n \"type\": \"object\",\n - \ \"description\": \"ChannelSection localization setting\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The localized strings - for channel section's title.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ImageSettings\": {\n \"type\": \"object\",\n \"properties\": - {\n \"backgroundImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n - \ \"description\": \"The URL for the background image shown on the - video watch page. The image should be 1200px by 615px, with a maximum file - size of 128k.\"\n },\n \"largeBrandedBannerImageUrl\": {\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTabletLowImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size low resolution (1138x188).\"\n },\n \"bannerMobileImageUrl\": - {\n \"description\": \"Banner image. Mobile size (640x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletImageUrl\": - {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n - \ \"type\": \"string\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"bannerTvHighImageUrl\": - {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size low resolution (320x88).\"\n },\n \"trackingImageUrl\": - {\n \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 640px by 70px banner image - that appears below the video player in the default view of the video watch - page. The URL for the image that appears above the top-left corner of the - video player. This is a 25-pixel-high image with a flexible width that cannot - exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerTvLowImageUrl\": {\n \"description\": \"Banner image. - TV size low resolution (854x480).\",\n \"type\": \"string\"\n },\n - \ \"bannerTvMediumImageUrl\": {\n \"description\": \"Banner - image. TV size medium resolution (1280x720).\",\n \"type\": \"string\"\n - \ },\n \"bannerTabletExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size extra - high resolution (2560x424).\"\n },\n \"bannerTvImageUrl\": {\n - \ \"description\": \"Banner image. TV size extra high resolution (2120x1192).\",\n - \ \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"bannerImageUrl\": {\n \"description\": \"Banner - image. Desktop size (1060x175).\",\n \"type\": \"string\"\n },\n - \ \"bannerTabletHdImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. Tablet size high resolution (2276x377).\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n }\n },\n \"id\": - \"ImageSettings\",\n \"description\": \"Branding properties for images - associated with the channel.\"\n },\n \"Caption\": {\n \"type\": - \"object\",\n \"description\": \"A *caption* resource represents a YouTube - caption track. A caption track is associated with exactly one YouTube video.\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#caption\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#caption\\\".\"\n },\n - \ \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the caption track.\"\n }\n },\n - \ \"id\": \"Caption\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"id\": \"CommentSnippetAuthorChannelId\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"SearchResultSnippet\": {\n \"properties\": - {\n \"description\": {\n \"description\": \"A description - of the search result.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"The title of the channel that published the resource that the search result - identifies.\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The creation date and time of the resource that the search result identifies.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\"\n },\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ],\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"The title of the search result.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"SearchResultSnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a search result, including title, - description and thumbnails of the item referenced by the search result.\"\n - \ },\n \"ChannelSettings\": {\n \"type\": \"object\",\n \"description\": - \"Branding properties for the channel view.\",\n \"properties\": {\n - \ \"showRelatedChannels\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether related channels should be proposed.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"defaultTab\": {\n - \ \"description\": \"Which content tab users should see when viewing - the channel.\",\n \"type\": \"string\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"type\": \"string\",\n \"description\": \"The ID for - a Google Analytics account to track and measure traffic to the channels.\"\n - \ },\n \"keywords\": {\n \"type\": \"string\",\n \"description\": - \"Lists keywords associated with the channel, comma-separated.\"\n },\n - \ \"title\": {\n \"description\": \"Specifies the channel title.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"Specifies the channel description.\",\n \"type\": \"string\"\n - \ },\n \"showBrowseView\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the tab to browse the videos should be - displayed.\"\n },\n \"moderateComments\": {\n \"description\": - \"Whether user-submitted comments left on the channel page need to be approved - by the channel owner to be publicly visible.\",\n \"type\": \"boolean\"\n - \ },\n \"unsubscribedTrailer\": {\n \"type\": \"string\",\n - \ \"description\": \"The trailer of the channel, for users that are - not subscribers.\"\n },\n \"profileColor\": {\n \"description\": - \"A prominent color that can be rendered on this channel page.\",\n \"type\": - \"string\"\n },\n \"featuredChannelsTitle\": {\n \"type\": - \"string\",\n \"description\": \"Title for the featured channels - tab.\"\n },\n \"featuredChannelsUrls\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The list of featured channels.\",\n \"type\": \"array\"\n },\n - \ \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n }\n },\n \"id\": \"ChannelSettings\"\n - \ },\n \"TestItem\": {\n \"type\": \"object\",\n \"properties\": - {\n \"featuredPart\": {\n \"type\": \"boolean\"\n },\n - \ \"gaia\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ }\n },\n \"id\": \"TestItem\"\n },\n \"LocalizedString\": - {\n \"id\": \"LocalizedString\",\n \"type\": \"object\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n },\n \"language\": - {\n \"type\": \"string\"\n }\n }\n },\n \"PlaylistListResponse\": - {\n \"id\": \"PlaylistListResponse\",\n \"properties\": {\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Playlist\"\n },\n \"description\": \"A list of playlists - that match the request criteria\",\n \"type\": \"array\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#playlistListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoTopicDetails\": {\n \"type\": \"object\",\n \"description\": - \"Freebase topic information related to the video.\",\n \"id\": \"VideoTopicDetails\",\n - \ \"properties\": {\n \"topicIds\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of Freebase topic IDs that are centrally - associated with the video. These are topics that are centrally featured in - the video, and it can be said that the video is mainly about each of these. - You can retrieve information about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n },\n \"relevantTopicIds\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"Similar to topic_id, except that these topics - are merely relevant to the video. These are topics that may be mentioned in, - or appear in the video. You can retrieve information about each topic using - Freebase Topic API.\"\n },\n \"topicCategories\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Wikipedia URLs that provide a high-level - description of the video's content.\"\n }\n }\n },\n \"LiveChatMessageSnippet\": - {\n \"description\": \"Next ID: 33\",\n \"properties\": {\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"fanFundingEventDetails\": - {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time when the message was orignally published.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"hasDisplayContent\": - {\n \"description\": \"Whether the message has display content that - should be displayed to users.\",\n \"type\": \"boolean\"\n },\n - \ \"memberMilestoneChatDetails\": {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"description\": \"Details about the Member Milestone Chat event, - this is only set if the type is 'memberMilestoneChatEvent'.\"\n },\n - \ \"textMessageDetails\": {\n \"$ref\": \"LiveChatTextMessageDetails\",\n - \ \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\"\n },\n \"superStickerDetails\": - {\n \"description\": \"Details about the Super Sticker event, this - is only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"authorChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\"\n },\n \"displayMessage\": {\n \"type\": - \"string\",\n \"description\": \"Contains a string that can be displayed - to the user. If this field is not present the message is silent, at the moment - only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"superChatDetails\": - {\n \"description\": \"Details about the Super Chat event, this is - only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n - \ \"newSponsorDetails\": {\n \"description\": \"Details about - the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. - Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n - \ \"$ref\": \"LiveChatNewSponsorDetails\"\n }\n },\n \"id\": - \"LiveChatMessageSnippet\",\n \"type\": \"object\"\n },\n \"LiveStreamHealthStatus\": - {\n \"properties\": {\n \"configurationIssues\": {\n \"type\": - \"array\",\n \"description\": \"The configurations issues on this - stream\",\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ }\n },\n \"lastUpdateTimeSeconds\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The last time this status was updated (in seconds)\"\n },\n \"status\": - {\n \"enum\": [\n \"good\",\n \"ok\",\n \"bad\",\n - \ \"noData\",\n \"revoked\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The status code - of this stream\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveStreamHealthStatus\"\n },\n \"ThirdPartyLinkSnippet\": - {\n \"description\": \"Basic information about a third party account - link, including its type and type-specific information.\",\n \"properties\": - {\n \"channelToStoreLink\": {\n \"description\": \"Information - specific to a link between a channel and a store on a merchandising platform.\",\n - \ \"$ref\": \"ChannelToStoreLinkDetails\"\n },\n \"type\": - {\n \"description\": \"Type of the link named after the entities - that are being linked.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel with - a store on a merchandising platform in order to enable retail commerce capabilities - for that channel on YouTube.\"\n ],\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ThirdPartyLinkSnippet\"\n - \ },\n \"ActivityContentDetailsChannelItem\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsChannelItem\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\"\n }\n },\n \"description\": - \"Details about a resource which was added to a channel.\"\n },\n \"PlaylistItemSnippet\": - {\n \"id\": \"PlaylistItemSnippet\",\n \"description\": \"Basic - details about a playlist, including title, description and thumbnails. Basic - details of a YouTube Playlist item provided by the author. Next ID: 15\",\n - \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The item's title.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the playlist item belongs to.\"\n },\n \"playlistId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"videoOwnerChannelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel this video belongs - to.\"\n },\n \"videoOwnerChannelId\": {\n \"description\": - \"Channel id for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the user that added the item - to the playlist.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"description\": \"The id object contains - information that can be used to uniquely identify the resource that is included - in the playlist as the playlist item.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the item was added - to the playlist.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"position\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The order - in which the item appears in the playlist. The value uses a zero-based index, - so the first item has a position of 0, the second item has a position of 1, - and so forth.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the playlist item. 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.\"\n },\n \"description\": - {\n \"description\": \"The item's description.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"I18nRegionSnippet\": - {\n \"properties\": {\n \"name\": {\n \"description\": - \"The human-readable name of the region.\",\n \"type\": \"string\"\n - \ },\n \"gl\": {\n \"description\": \"The region code - as a 2-letter ISO country code.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"I18nRegionSnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about an i18n region, such as region - code and human-readable name.\"\n },\n \"AccessPolicy\": {\n \"id\": - \"AccessPolicy\",\n \"properties\": {\n \"exception\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the default policy do not apply.\"\n },\n \"allowed\": - {\n \"description\": \"The value of allowed indicates whether the - access to the policy is allowed or denied by default.\",\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Rights management policy for YouTube resources.\"\n },\n \"VideoStatistics\": - {\n \"description\": \"Statistics about the video, such as the number - of times the video was viewed or liked.\",\n \"id\": \"VideoStatistics\",\n - \ \"properties\": {\n \"viewCount\": {\n \"description\": - \"The number of times the video has been viewed.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"dislikeCount\": {\n - \ \"description\": \"The number of users who have indicated that they - disliked the video by giving it a negative rating.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"commentCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of comments for the video.\",\n \"type\": \"string\"\n },\n - \ \"favoriteCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\",\n - \ \"format\": \"uint64\"\n },\n \"likeCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of users who have indicated - that they liked the video by giving it a positive rating.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelBannerResource\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n - \ },\n \"url\": {\n \"description\": \"The URL of this - banner image.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"ChannelBannerResource\",\n - \ \"description\": \"A channel banner returned as the response to a channel_banner.insert - call.\"\n },\n \"VideoSuggestions\": {\n \"description\": \"Specifies - suggestions on how to improve video content, including encoding hints, tag - suggestions, and editor suggestions.\",\n \"type\": \"object\",\n \"properties\": - {\n \"editorSuggestions\": {\n \"type\": \"array\",\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\",\n \"items\": {\n - \ \"enumDescriptions\": [\n \"Picture brightness levels - seem off and could be corrected.\",\n \"The video appears shaky - and could be stabilized.\",\n \"Margins (mattes) detected around - the picture could be cropped.\",\n \"The audio track appears - silent and could be swapped with a better quality one.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ]\n }\n },\n \"tagSuggestions\": {\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoSuggestionsTagSuggestion\"\n }\n },\n \"processingErrors\": - {\n \"type\": \"array\",\n \"description\": \"A list of - errors that will prevent YouTube from successfully processing the uploaded - video video. These errors indicate that, regardless of the video's current - processing status, eventually, that status will almost certainly be failed.\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"File - contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., - a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file.\",\n \"Document - or text file (e.g., MS Word document).\",\n \"An archive file - (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout - type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\"\n }\n },\n - \ \"processingWarnings\": {\n \"description\": \"A list of - reasons why YouTube may have difficulty transcoding the uploaded video or - that might result in an erroneous transcoding. These warnings are generated - before YouTube actually processes the uploaded video file. In addition, they - identify issues that are unlikely to cause the video processing to fail but - that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"enum\": [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ],\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"processingHints\": {\n \"type\": - \"array\",\n \"description\": \"A list of suggestions that may improve - YouTube's ability to process the video.\",\n \"items\": {\n \"enum\": - [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\"\n }\n }\n },\n \"id\": - \"VideoSuggestions\"\n },\n \"Comment\": {\n \"properties\": {\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"CommentSnippet\",\n \"description\": \"The snippet object contains - basic details about the comment.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n - \ \"default\": \"youtube#comment\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the comment.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"Comment\",\n \"type\": \"object\",\n - \ \"description\": \"A *comment* represents a single YouTube comment.\"\n - \ },\n \"CommentThreadSnippet\": {\n \"properties\": {\n \"totalReplyCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total number of replies (not including the top level comment).\"\n },\n - \ \"topLevelComment\": {\n \"$ref\": \"Comment\",\n \"description\": - \"The top level comment of this thread.\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the video the comments refer to, if - any. No video_id implies a channel discussion comment.\"\n },\n \"isPublic\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the thread (and therefore all its comments) is visible to all YouTube users.\"\n - \ },\n \"canReply\": {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n }\n },\n \"id\": \"CommentThreadSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a comment thread.\"\n },\n \"CommentThreadReplies\": {\n \"id\": - \"CommentThreadReplies\",\n \"properties\": {\n \"comments\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"description\": \"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.\"\n }\n },\n \"description\": \"Comments written - in (direct or indirect) reply to the top level comment.\",\n \"type\": - \"object\"\n },\n \"PlaylistContentDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"PlaylistContentDetails\",\n \"properties\": {\n \"itemCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n }\n },\n \"InvideoTiming\": - {\n \"type\": \"object\",\n \"id\": \"InvideoTiming\",\n \"properties\": - {\n \"offsetMs\": {\n \"type\": \"string\",\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\",\n \"format\": - \"uint64\"\n },\n \"durationMs\": {\n \"format\": \"uint64\",\n - \ \"description\": \"Defines the duration in milliseconds for which - the promotion should be displayed. If missing, the client should use the default.\",\n - \ \"type\": \"string\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n - \ \"description\": \"Describes a timing type. If the value is offsetFromStart, - then the offsetMs field represents an offset from the start of the video. - If the value is offsetFromEnd, then the offsetMs field represents an offset - from the end of the video.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Describes a temporal position of a visual - widget inside a video.\"\n },\n \"VideoAbuseReport\": {\n \"properties\": - {\n \"reasonId\": {\n \"type\": \"string\",\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\"\n },\n \"secondaryReasonId\": - {\n \"description\": \"The specific, or secondary, reason that this - content is abusive (if available). The value is an abuse report reason ID - that is a valid secondary reason for the primary reason.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n },\n \"comments\": {\n \"type\": \"string\",\n - \ \"description\": \"Additional comments regarding the abuse report.\"\n - \ },\n \"language\": {\n \"type\": \"string\",\n \"description\": - \"The language that the content was viewed in.\"\n }\n },\n \"id\": - \"VideoAbuseReport\",\n \"type\": \"object\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"description\": \"The long-form description of the issue and - how to resolve it.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"description\": \"The kind of error happening.\",\n \"enum\": - [\n \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"severity\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"How severe this issue is to the stream.\"\n },\n \"reason\": - {\n \"description\": \"The short-form reason for this issue.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"VideoAgeGating\": {\n \"id\": \"VideoAgeGating\",\n \"properties\": - {\n \"alcoholContent\": {\n \"description\": \"Indicates whether - or not the video has alcoholic beverage content. Only users of legal purchasing - age in a particular country, as identified by ICAP, can view the content.\",\n - \ \"type\": \"boolean\"\n },\n \"restricted\": {\n \"type\": - \"boolean\",\n \"description\": \"Age-restricted trailers. For redband - trailers and adult-rated video-games. Only users aged 18+ can view the content. - The the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\"\n },\n \"videoGameRating\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"anyone\",\n - \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n - \ ],\n \"description\": \"Video game rating, if any.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"type\": - \"object\"\n },\n \"ResourceId\": {\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the referred resource, if that resource - is a channel. This property is only present if the resourceId.kind value is - youtube#channel.\"\n },\n \"kind\": {\n \"description\": - \"The type of the API resource.\",\n \"type\": \"string\"\n },\n - \ \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a video. This property - is only present if the resourceId.kind value is youtube#video.\"\n }\n - \ },\n \"id\": \"ResourceId\",\n \"description\": \"A resource - id is a generic reference that points to another YouTube resource.\",\n \"type\": - \"object\"\n },\n \"PlaylistItem\": {\n \"description\": \"A *playlistItem* - resource identifies another resource, such as a video, that is included in - a playlist. In addition, the playlistItem resource contains details about - the included resource that pertain specifically to how that resource is used - in that playlist. YouTube uses playlists to identify special collections of - videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods. For example, if - a user gives a positive rating to a video, you would insert that video into - the liked videos playlist for that user's channel.\",\n \"id\": \"PlaylistItem\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"status\": - {\n \"description\": \"The status object contains information about - the playlist item's privacy status.\",\n \"$ref\": \"PlaylistItemStatus\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n \"default\": - \"youtube#playlistItem\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistItemContentDetails\",\n \"description\": \"The contentDetails - object is included in the resource if the included item is a YouTube video. - The object contains additional information about the video.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the playlist item, such as its title and position in the - playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n }\n }\n - \ },\n \"VideoLiveStreamingDetails\": {\n \"properties\": {\n \"concurrentViewers\": - {\n \"description\": \"The number of viewers currently watching the - broadcast. The property and its value will be present if the broadcast has - current viewers and the broadcast owner has not hidden the viewcount for the - video. Note that YouTube stops tracking the number of concurrent viewers for - a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"scheduledStartTime\": {\n \"description\": - \"The time that the broadcast is scheduled to begin.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"activeLiveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the currently active live chat attached to this video. This field is filled - only if the video is a currently live broadcast that has live chat. Once the - broadcast transitions to complete this field will be removed and the live - chat closed down. For persistent broadcasts that live chat id will no longer - be tied to this video but rather to the new video being displayed at the persistent - page.\"\n },\n \"actualStartTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The time - that the broadcast actually started. This value will not be available until - the broadcast begins.\"\n },\n \"scheduledEndTime\": {\n \"type\": - \"string\",\n \"description\": \"The time that the broadcast is scheduled - to end. If the value is empty or the property is not present, then the broadcast - is scheduled to contiue indefinitely.\",\n \"format\": \"date-time\"\n - \ },\n \"actualEndTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The time - that the broadcast actually ended. This value will not be available until - the broadcast is over.\"\n }\n },\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"Details about the live streaming metadata.\",\n \"type\": - \"object\"\n },\n \"VideoCategoryListResponse\": {\n \"id\": \"VideoCategoryListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#videoCategoryListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n },\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\",\n \"type\": \"array\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"PlaylistSnippet\": {\n \"id\": - \"PlaylistSnippet\",\n \"description\": \"Basic details about a playlist, - including title, description and thumbnails.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"defaultLanguage\": {\n \"description\": - \"The language of the playlist's default title and description.\",\n \"type\": - \"string\"\n },\n \"thumbnailVideoId\": {\n \"description\": - \"Note: if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"description\": \"The playlist's title.\"\n },\n \"tags\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"Keyword tags associated with the playlist.\",\n - \ \"type\": \"array\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the playlist was created.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the playlist.\"\n - \ },\n \"localized\": {\n \"description\": \"Localized - title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"channelTitle\": {\n \"description\": \"The - channel title of the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The playlist's description.\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ }\n }\n },\n \"LiveStreamListResponse\": {\n \"type\": - \"object\",\n \"id\": \"LiveStreamListResponse\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#liveStreamListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveStream\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of live streams that match the request criteria.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n }\n }\n },\n \"I18nRegionListResponse\": - {\n \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"I18nRegion\"\n },\n - \ \"description\": \"A list of regions where YouTube is available. - In this map, the i18n region ID is the map key, and its value is the corresponding - i18nRegion resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#i18nRegionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"I18nRegionListResponse\",\n - \ \"type\": \"object\"\n },\n \"VideoProjectDetails\": {\n \"description\": - \"DEPRECATED. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"properties\": {},\n \"id\": \"VideoProjectDetails\",\n \"type\": - \"object\"\n },\n \"LiveChatMessageAuthorDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"isChatModerator\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a moderator - of the live chat.\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"profileImageUrl\": {\n \"description\": \"The channels's - avatar URL.\",\n \"type\": \"string\"\n },\n \"isChatOwner\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is the owner of the live chat.\"\n },\n \"isVerified\": - {\n \"description\": \"Whether the author's identity has been verified - by YouTube.\",\n \"type\": \"boolean\"\n },\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - display name.\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"isChatSponsor\": - {\n \"description\": \"Whether the author is a sponsor of the live - chat.\",\n \"type\": \"boolean\"\n }\n },\n \"id\": - \"LiveChatMessageAuthorDetails\"\n },\n \"ChannelStatus\": {\n \"id\": - \"ChannelStatus\",\n \"description\": \"JSON template for the status - part of a channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"isLinked\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Privacy status - of the channel.\"\n },\n \"madeForKids\": {\n \"type\": - \"boolean\"\n },\n \"longUploadsStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\"\n }\n }\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"description\": \"Basic details about a video category, such as - its localized title.\",\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label belonging to this abuse report - reason.\"\n },\n \"secondaryReasons\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"description\": \"The secondary reasons associated - with this reason, if any are available. (There might be 0 or more.)\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsComment\": - {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with the - comment.\"\n }\n },\n \"id\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"Information about a resource that received a comment.\"\n - \ },\n \"LiveChatMessageDeletedDetails\": {\n \"properties\": {\n - \ \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"PlaylistItemStatus\": {\n \"id\": \"PlaylistItemStatus\",\n - \ \"type\": \"object\",\n \"description\": \"Information about the - playlist item's privacy status.\",\n \"properties\": {\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"This resource's privacy status.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n }\n - \ }\n },\n \"LevelDetails\": {\n \"properties\": {\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - that should be used when referring to this level.\"\n }\n },\n - \ \"id\": \"LevelDetails\",\n \"type\": \"object\"\n },\n \"ChannelListResponse\": - {\n \"type\": \"object\",\n \"id\": \"ChannelListResponse\",\n \"properties\": - {\n \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#channelListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Channel\"\n }\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveBroadcastContentDetails\": - {\n \"description\": \"Detailed settings of a broadcast.\",\n \"properties\": - {\n \"enableContentEncryption\": {\n \"description\": \"This - setting indicates whether YouTube should enable content encryption for the - broadcast.\",\n \"type\": \"boolean\"\n },\n \"recordFromStart\": - {\n \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\",\n \"type\": \"boolean\"\n },\n \"stereoLayout\": - {\n \"type\": \"string\",\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\"\n },\n - \ \"closedCaptionsType\": {\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"enableDvr\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - determines whether viewers can access DVR controls while watching the video. - DVR controls enable the viewer to control the video playback experience by - pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\"\n },\n \"monitorStream\": - {\n \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\",\n \"$ref\": - \"MonitorStreamInfo\"\n },\n \"enableLowLatency\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether this broadcast - has low latency enabled.\"\n },\n \"enableAutoStop\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - auto stop is enabled for this broadcast. The default value for this property - is false. This setting can only be used by Events.\"\n },\n \"mesh\": - {\n \"type\": \"string\",\n \"description\": \"The mesh - for projecting the video if projection is mesh. The mesh value must be a UTF-8 - string containing the base-64 encoding of 3D mesh data that follows the Spherical - Video V2 RFC specification for an mshp box, excluding the box size and type - but including the following four reserved zero bytes for the version and flags.\",\n - \ \"format\": \"byte\"\n },\n \"projection\": {\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ]\n },\n \"enableEmbed\": - {\n \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\",\n \"type\": \"boolean\"\n },\n \"enableClosedCaptions\": - {\n \"description\": \"This setting indicates whether HTTP POST closed - captioning is enabled for this broadcast. The ingestion URL of the closed - captions is returned through the liveStreams API. This is mutually exclusive - with using the closed_captions_type property, and is equivalent to setting - closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n \"type\": - \"boolean\"\n },\n \"enableAutoStart\": {\n \"description\": - \"This setting indicates whether auto start is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\",\n \"type\": \"boolean\"\n },\n \"boundStreamId\": - {\n \"type\": \"string\",\n \"description\": \"This value - uniquely identifies the live stream bound to the broadcast.\"\n },\n - \ \"latencyPreference\": {\n \"description\": \"If both this - and enable_low_latency are set, they must match. LATENCY_NORMAL should match - enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ]\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\"\n },\n \"startWithSlate\": - {\n \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveBroadcastContentDetails\"\n },\n \"MembershipsDuration\": {\n - \ \"properties\": {\n \"memberSince\": {\n \"description\": - \"The date and time when the user became a continuous member across all levels.\",\n - \ \"type\": \"string\"\n },\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - across all levels in complete months (the time is rounded down to the nearest - integer).\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ }\n },\n \"id\": \"MembershipsDuration\",\n \"type\": - \"object\"\n },\n \"SubscriptionSnippet\": {\n \"properties\": - {\n \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"channelTitle\": {\n \"description\": \"Channel - title for the channel that the subscription belongs to.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the subscription was created.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The subscription's - details.\"\n },\n \"resourceId\": {\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\",\n \"$ref\": \"ResourceId\",\n \"annotations\": {\n - \ \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n }\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the subscriber's channel.\"\n },\n \"title\": {\n \"description\": - \"The subscription's title.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"SubscriptionSnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a subscription, including title, - description and thumbnails of the subscribed item.\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"id\": \"VideoFileDetailsVideoStream\",\n \"description\": - \"Information about a video stream.\",\n \"type\": \"object\",\n \"properties\": - {\n \"codec\": {\n \"description\": \"The video codec that - the stream uses.\",\n \"type\": \"string\"\n },\n \"frameRateFps\": - {\n \"format\": \"double\",\n \"description\": \"The video - stream's frame rate, in frames per second.\",\n \"type\": \"number\"\n - \ },\n \"bitrateBps\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The video stream's bitrate, in bits per second.\",\n - \ \"type\": \"string\"\n },\n \"widthPixels\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\"\n },\n \"rotation\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"description\": \"The amount that YouTube needs to - rotate the original source content to properly display the video.\"\n },\n - \ \"heightPixels\": {\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's height in pixels.\",\n \"type\": \"integer\"\n - \ },\n \"aspectRatio\": {\n \"description\": \"The video - content's display aspect ratio, which specifies the aspect ratio in which - the video should be displayed.\",\n \"format\": \"double\",\n \"type\": - \"number\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ChannelAuditDetails\": {\n \"properties\": {\n - \ \"copyrightStrikesGoodStanding\": {\n \"description\": \"Whether - or not the channel has any copyright strikes.\",\n \"type\": \"boolean\"\n - \ },\n \"contentIdClaimsGoodStanding\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the channel has - any unresolved claims.\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n }\n },\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\",\n \"type\": \"object\",\n \"id\": - \"ChannelAuditDetails\"\n },\n \"ThirdPartyLinkStatus\": {\n \"type\": - \"object\",\n \"id\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The third-party link status object contains information about the status - of the link.\",\n \"properties\": {\n \"linkStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ]\n }\n }\n },\n \"ChannelStatistics\": - {\n \"id\": \"ChannelStatistics\",\n \"description\": \"Statistics - about a channel: number of subscribers, number of videos in the channel, etc.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"subscriberCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of subscribers that the channel has.\"\n },\n \"videoCount\": - {\n \"description\": \"The number of videos uploaded to the channel.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"hiddenSubscriberCount\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether or not the number of subscribers is shown for this user.\"\n },\n - \ \"commentCount\": {\n \"description\": \"The number of comments - for the channel.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"viewCount\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of times the channel has been viewed.\"\n }\n }\n },\n \"ActivityContentDetails\": - {\n \"type\": \"object\",\n \"description\": \"Details about the - content of an activity: the video that was shared, the channel that was subscribed - to, etc.\",\n \"id\": \"ActivityContentDetails\",\n \"properties\": - {\n \"bulletin\": {\n \"description\": \"The bulletin object - contains details about a channel bulletin post. This object is only present - if the snippet.type is bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n - \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"channelItem\": {\n \"description\": - \"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.\",\n - \ \"$ref\": \"ActivityContentDetailsChannelItem\"\n },\n \"upload\": - {\n \"$ref\": \"ActivityContentDetailsUpload\",\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\"\n },\n \"like\": - {\n \"$ref\": \"ActivityContentDetailsLike\",\n \"description\": - \"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.\"\n - \ },\n \"subscription\": {\n \"description\": \"The - subscription object contains information about a channel that a user subscribed - to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"promotedItem\": - {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n \"description\": - \"The promotedItem object contains details about a resource which is being - promoted. This property is only present if the snippet.type is promotedItem.\"\n - \ },\n \"playlistItem\": {\n \"description\": \"The - playlistItem object contains information about a new playlist item. This property - is only present if the snippet.type is playlistItem.\",\n \"$ref\": - \"ActivityContentDetailsPlaylistItem\"\n },\n \"favorite\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\"\n },\n \"social\": {\n \"$ref\": - \"ActivityContentDetailsSocial\",\n \"description\": \"The social - object contains details about a social network post. This property is only - present if the snippet.type is social.\"\n }\n }\n },\n \"VideoContentDetails\": - {\n \"description\": \"Details about the content of a YouTube Video.\",\n - \ \"id\": \"VideoContentDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"contentRating\": {\n \"description\": \"Specifies the - ratings that the video received under various rating schemes.\",\n \"$ref\": - \"ContentRating\"\n },\n \"caption\": {\n \"description\": - \"The value of captions indicates whether the video has captions or not.\",\n - \ \"enum\": [\n \"true\",\n \"false\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"definition\": {\n \"enum\": - [\n \"sd\",\n \"hd\"\n ],\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ]\n },\n \"licensedContent\": {\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\",\n \"type\": \"boolean\"\n },\n \"projection\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ],\n \"description\": \"Specifies - the projection format of the video.\"\n },\n \"duration\": {\n - \ \"description\": \"The length of the video. The tag value is an - ISO 8601 duration in the format PT#M#S, in which the letters PT indicate that - the value specifies a period of time, and the letters M and S refer to length - in minutes and seconds, respectively. The # characters preceding the M and - S letters are both integers that specify the number of minutes (or seconds) - of the video. For example, a value of PT15M51S indicates that the video is - 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n },\n - \ \"hasCustomThumbnail\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\"\n },\n - \ \"dimension\": {\n \"type\": \"string\",\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\"\n },\n \"regionRestriction\": {\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"countryRestriction\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - countryRestriction object contains information about the countries where a - video is (or is not) viewable.\"\n }\n }\n },\n \"ActivityContentDetailsFavorite\": - {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that was marked as a favorite.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"description\": \"Information - about a video that was marked as a favorite video.\",\n \"id\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"ChannelSection\": {\n \"properties\": {\n \"targeting\": - {\n \"description\": \"The targeting object contains basic targeting - settings about the channel section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n - \ },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelSectionLocalization\"\n - \ },\n \"description\": \"Localizations for different languages\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"default\": \"youtube#channelSection\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel section.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\",\n \"$ref\": \"ChannelSectionSnippet\"\n - \ }\n },\n \"id\": \"ChannelSection\",\n \"type\": \"object\"\n - \ },\n \"VideoAbuseReportSecondaryReason\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label for this abuse report secondary - reason.\"\n },\n \"id\": {\n \"description\": \"The - ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"MembershipsLevel\": {\n \"id\": \"MembershipsLevel\",\n \"type\": - \"object\",\n \"description\": \"A *membershipsLevel* resource represents - an offer made by YouTube creators for their fans. Users can become members - of the channel by joining one of the available levels. They will provide recurring - monetary support and receives special benefits.\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the memberships level.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevel\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n }\n - \ }\n },\n \"VideoSnippet\": {\n \"properties\": {\n \"localized\": - {\n \"$ref\": \"VideoLocalization\",\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that the video was uploaded - to.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the videos's default snippet.\"\n },\n \"description\": {\n - \ \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the video was uploaded.\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ },\n \"defaultAudioLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the video - belongs to.\",\n \"type\": \"string\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - video category associated with the video.\"\n },\n \"title\": - {\n \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\"\n },\n \"tags\": - {\n \"description\": \"A list of keyword tags associated with the - video. Tags may contain spaces.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"id\": \"VideoSnippet\",\n \"description\": \"Basic details about - a video, including title, description, uploader, thumbnails and category.\",\n - \ \"type\": \"object\"\n },\n \"PlaylistItemListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"description\": - \"A list of playlist items that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"visitorId\": {\n \"description\": \"The - visitorId identifies the visitor.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"PlaylistItemListResponse\"\n },\n \"LanguageTag\": - {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LanguageTag\",\n \"type\": \"object\"\n - \ },\n \"SearchResult\": {\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\",\n \"$ref\": \"SearchResultSnippet\"\n },\n - \ \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n },\n \"kind\": - {\n \"default\": \"youtube#searchResult\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#searchResult\\\".\"\n }\n },\n \"id\": - \"SearchResult\",\n \"description\": \"A search result contains information - about a YouTube video, channel, or playlist that matches the search parameters - specified in an API request. While a search result points to a uniquely identifiable - resource, like a video, it does not have its own persistent data.\",\n \"type\": - \"object\"\n },\n \"LiveStream\": {\n \"properties\": {\n \"cdn\": - {\n \"$ref\": \"CdnSettings\",\n \"description\": \"The - cdn object defines the live stream's content delivery network (CDN) settings. - These settings provide details about the manner in which you stream your content - to YouTube.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveStream\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the stream.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"snippet\": {\n \"$ref\": - \"LiveStreamSnippet\",\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about live stream's status.\",\n \"$ref\": - \"LiveStreamStatus\"\n }\n },\n \"description\": \"A live - stream describes a live ingestion point.\",\n \"id\": \"LiveStream\",\n - \ \"type\": \"object\"\n },\n \"SubscriptionListResponse\": {\n - \ \"id\": \"SubscriptionListResponse\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of subscriptions that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Subscription\"\n }\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatSuperStickerDetails\": {\n \"properties\": {\n - \ \"amountMicros\": {\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n },\n \"tier\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatSuperStickerDetails\"\n },\n \"I18nLanguageSnippet\": - {\n \"properties\": {\n \"hl\": {\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\",\n \"type\": - \"string\"\n },\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the language in the - language itself.\"\n }\n },\n \"id\": \"I18nLanguageSnippet\",\n - \ \"description\": \"Basic details about an i18n language, such as language - code and human-readable name.\",\n \"type\": \"object\"\n },\n \"VideoPlayer\": - {\n \"properties\": {\n \"embedHeight\": {\n \"type\": - \"string\",\n \"format\": \"int64\"\n },\n \"embedHtml\": - {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a - player that will play the video.\",\n \"type\": \"string\"\n },\n - \ \"embedWidth\": {\n \"description\": \"The embed width\",\n - \ \"format\": \"int64\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoPlayer\",\n \"type\": \"object\",\n \"description\": - \"Player to be used for a video playback.\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"id\": \"LiveChatMembershipGiftingDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"giftMembershipsLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the level of the gift - memberships purchased by the user. The Level names are defined by the YouTube - channel offering the Membership. In some situations this field isn't filled.\"\n - \ },\n \"giftMembershipsCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"description\": \"The number - of gift memberships purchased by the user.\"\n }\n }\n },\n - \ \"VideoLocalization\": {\n \"id\": \"VideoLocalization\",\n \"type\": - \"object\",\n \"description\": \"Localized versions of certain video - properties (e.g. title).\",\n \"properties\": {\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"Localized version - of the video's title.\"\n },\n \"description\": {\n \"description\": - \"Localized version of the video's description.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"PlaylistItemContentDetails\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistItemContentDetails\",\n \"properties\": - {\n \"videoId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify a video. To retrieve the video resource, set the - id query parameter to this value in your API request.\",\n \"type\": - \"string\"\n },\n \"startAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\",\n \"type\": \"string\"\n },\n - \ \"videoPublishedAt\": {\n \"description\": \"The date and - time that the video was published to YouTube.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"note\": {\n \"type\": - \"string\",\n \"description\": \"A user-generated note for this item.\"\n - \ },\n \"endAt\": {\n \"description\": \"The time, measured - in seconds from the start of the video, when the video should stop playing. - (The playlist owner can specify the times when the video should start and - stop playing when the video is played in the context of the playlist.) By - default, assume that the video.endTime is the end of the video.\",\n \"type\": - \"string\"\n }\n }\n },\n \"SubscriptionContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"activityType\": - {\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The type of - activity this subscription is for (only uploads, everything).\"\n },\n - \ \"totalItemCount\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The approximate number of items - that the subscription points to.\"\n },\n \"newItemCount\": - {\n \"type\": \"integer\",\n \"description\": \"The number - of new items in the subscription since its content was last read.\",\n \"format\": - \"uint32\"\n }\n },\n \"id\": \"SubscriptionContentDetails\",\n - \ \"description\": \"Details about the content to witch a subscription - refers.\"\n },\n \"I18nLanguage\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the i18n language.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"default\": \"youtube#i18nLanguage\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"I18nLanguage\",\n - \ \"description\": \"An *i18nLanguage* resource identifies a UI language - currently supported by YouTube.\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"gifterChannelId\": {\n \"description\": - \"The ID of the user that made the membership gifting purchase. This matches - the `snippet.authorChannelId` of the associated membership gifting message.\",\n - \ \"type\": \"string\"\n },\n \"memberLevelName\": {\n - \ \"type\": \"string\",\n \"description\": \"The name of - the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ }\n }\n },\n \"MemberSnippet\": {\n \"properties\": - {\n \"creatorChannelId\": {\n \"description\": \"The id of - the channel that's offering memberships.\",\n \"type\": \"string\"\n - \ },\n \"membershipsDetails\": {\n \"description\": - \"Details about the user's membership.\",\n \"$ref\": \"MembershipsDetails\"\n - \ },\n \"memberDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the member.\"\n }\n },\n - \ \"id\": \"MemberSnippet\",\n \"type\": \"object\"\n },\n \"MembershipsDurationAtLevel\": - {\n \"properties\": {\n \"memberSince\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the user - became a continuous member for the given level.\"\n },\n \"level\": - {\n \"description\": \"Pricing level ID.\",\n \"type\": - \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"description\": \"The cumulative time the user has - been a member for the given level in complete months (the time is rounded - down to the nearest integer).\",\n \"format\": \"int32\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"MembershipsDurationAtLevel\"\n - \ },\n \"PropertyValue\": {\n \"id\": \"PropertyValue\",\n \"description\": - \"A pair Property / Value.\",\n \"type\": \"object\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\",\n \"description\": - \"The property's value.\"\n },\n \"property\": {\n \"type\": - \"string\",\n \"description\": \"A property.\"\n }\n }\n - \ },\n \"LiveChatMessageRetractedDetails\": {\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"type\": - \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": {\n - \ \"description\": \"Video processing progress and completion time estimate.\",\n - \ \"properties\": {\n \"partsProcessed\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of parts of the video that YouTube has already processed. You can estimate - the percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\"\n },\n - \ \"partsTotal\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"An estimate of the total number - of parts that need to be processed for the video. The number may be updated - with more precise estimates while YouTube processes the video.\"\n },\n - \ \"timeLeftMs\": {\n \"description\": \"An estimate of the - amount of time, in millseconds, that YouTube needs to finish processing the - video.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ }\n },\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"type\": \"object\"\n },\n \"ChannelProfileDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"profileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channels's avatar URL.\"\n },\n - \ \"displayName\": {\n \"description\": \"The channel's display - name.\",\n \"type\": \"string\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"channelId\": {\n \"description\": \"The - YouTube channel ID.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ChannelProfileDetails\"\n },\n \"VideoListResponse\": - {\n \"id\": \"VideoListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Video\"\n }\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ActivityContentDetailsUpload\": {\n \"description\": - \"Information about the uploaded video.\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the uploaded video.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsUpload\"\n - \ },\n \"ChannelSectionContentDetails\": {\n \"id\": \"ChannelSectionContentDetails\",\n - \ \"properties\": {\n \"playlists\": {\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"channels\": - {\n \"type\": \"array\",\n \"description\": \"The channel - ids for type multiple_channels.\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"description\": \"Details - about a channelsection, including playlists and channels.\",\n \"type\": - \"object\"\n },\n \"LiveChatModeratorListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of moderators that match the request criteria.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\"\n - \ }\n },\n \"id\": \"LiveChatModeratorListResponse\"\n },\n - \ \"ChannelContentOwnerDetails\": {\n \"id\": \"ChannelContentOwnerDetails\",\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"type\": - \"object\",\n \"properties\": {\n \"timeLinked\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the channel - was linked to the content owner.\",\n \"type\": \"string\"\n },\n - \ \"contentOwner\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the content owner linked to the channel.\"\n }\n }\n - \ },\n \"MembershipsLevelListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"MembershipsLevel\"\n },\n - \ \"description\": \"A list of pricing levels offered by a creator - to the fans.\"\n },\n \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"id\": \"MembershipsLevelListResponse\"\n },\n \"LiveChatBan\": - {\n \"id\": \"LiveChatBan\",\n \"description\": \"A `__liveChatBan__` - resource represents a ban for a YouTube live chat.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the ban.\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the ban.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#liveChatBan\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n }\n }\n },\n - \ \"CommentListResponse\": {\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"default\": \"youtube#commentListResponse\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of comments - that match the request criteria.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"CommentListResponse\"\n },\n \"Entity\": {\n \"properties\": - {\n \"url\": {\n \"type\": \"string\"\n },\n \"typeId\": - {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"Entity\"\n },\n \"ActivityContentDetailsPromotedItem\": {\n \"id\": - \"ActivityContentDetailsPromotedItem\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\",\n \"type\": \"string\"\n },\n \"forecastingUrl\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"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.\"\n },\n - \ \"adTag\": {\n \"description\": \"The URL the client should - fetch to request a promoted item.\",\n \"type\": \"string\"\n },\n - \ \"customCtaButtonText\": {\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\",\n \"type\": \"string\"\n },\n \"destinationUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should direct the user to, if the user chooses to visit the advertiser's - website.\"\n },\n \"impressionUrl\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\",\n \"type\": - \"array\"\n },\n \"creativeViewUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\",\n \"type\": \"string\"\n },\n \"ctaType\": - {\n \"type\": \"string\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\"\n },\n \"descriptionText\": {\n \"type\": - \"string\",\n \"description\": \"The text description to accompany - the promoted item.\"\n },\n \"clickTrackingUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user clicked through on this promoted item.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Details about - a resource which is being promoted.\"\n },\n \"SearchListResponse\": - {\n \"type\": \"object\",\n \"id\": \"SearchListResponse\",\n \"properties\": - {\n \"regionCode\": {\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#searchListResponse\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"SearchResult\"\n },\n \"description\": \"Pagination information - for token pagination.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n }\n },\n \"WatchSettings\": {\n - \ \"type\": \"object\",\n \"description\": \"Branding properties - for the watch. All deprecated.\",\n \"id\": \"WatchSettings\",\n \"properties\": - {\n \"backgroundColor\": {\n \"description\": \"The text color - for the video watch page's branded area.\",\n \"type\": \"string\"\n - \ },\n \"textColor\": {\n \"type\": \"string\",\n \"description\": - \"The background color for the video watch page's branded area.\"\n },\n - \ \"featuredPlaylistId\": {\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\",\n - \ \"type\": \"string\"\n }\n }\n }\n },\n \"batchPath\": - \"batch\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"basePath\": - \"\",\n \"protocol\": \"rest\",\n \"ownerName\": \"Google\",\n \"discoveryVersion\": - \"v1\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"resources\": {\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"parameters\": {\n \"part\": {\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the i18nLanguage resource properties that - the API response will include. Set the parameter value to snippet.\"\n },\n - \ \"hl\": {\n \"default\": \"en_US\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/i18nLanguages\",\n - \ \"id\": \"youtube.i18nLanguages.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"insert\": {\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.commentThreads.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n }\n }\n - \ },\n \"list\": {\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"textFormat\": {\n - \ \"enum\": [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The requested text format for the returned - comments.\",\n \"location\": \"query\",\n \"default\": - \"html\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ]\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\"\n },\n \"searchTerms\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Limits the returned comment threads to those - matching the specified key words. Not compatible with the 'id' filter.\"\n - \ },\n \"channelId\": {\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"moderationStatus\": {\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"default\": \"published\"\n },\n - \ \"allThreadsRelatedToChannelId\": {\n \"description\": - \"Returns the comment threads of all videos of the channel and the channel - comments as well.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads of the specified video.\",\n \"location\": - \"query\"\n },\n \"order\": {\n \"type\": - \"string\",\n \"default\": \"time\",\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Order by time.\",\n \"Order by relevance.\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"100\",\n \"format\": - \"uint32\",\n \"location\": \"query\",\n \"minimum\": - \"1\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"default\": \"20\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"CommentThreadListResponse\"\n },\n \"id\": \"youtube.commentThreads.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/commentThreads\",\n \"flatPath\": \"youtube/v3/commentThreads\"\n - \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"description\": \"Delete a given broadcast.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"Broadcast - to delete.\"\n }\n },\n \"path\": \"youtube/v3/liveBroadcasts\"\n - \ },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"description\": \"Updates an existing broadcast for the authenticated - user.\",\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.liveBroadcasts.update\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n }\n - \ },\n \"transition\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"id\": - \"youtube.liveBroadcasts.transition\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"broadcastStatus\": {\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"description\": \"The status to - which the broadcast is going to transition.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ]\n },\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Broadcast to transition.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"description\": \"Transition - a broadcast to a given status.\",\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"bind\": - {\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.bind\",\n \"parameters\": - {\n \"streamId\": {\n \"description\": \"Stream to - bind, if not set unbind the current one.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true\n - \ },\n \"id\": {\n \"description\": \"Broadcast - to bind to the stream\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Bind a broadcast to a stream.\"\n },\n - \ \"insertCuepoint\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Broadcast to insert ads to, or - equivalently `external_video_id` for internal use.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [],\n \"httpMethod\": \"POST\",\n \"description\": - \"Insert cuepoints in a broadcast\",\n \"response\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"id\": - \"youtube.liveBroadcasts.insertCuepoint\",\n \"request\": {\n \"$ref\": - \"Cuepoint\"\n }\n },\n \"list\": {\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"type\": - \"string\"\n },\n \"broadcastType\": {\n \"description\": - \"Return only broadcasts with the selected type.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": - [\n \"broadcastTypeFilterUnspecified\",\n \"all\",\n - \ \"event\",\n \"persistent\"\n ],\n - \ \"default\": \"event\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"broadcastStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"description\": \"Return broadcasts - with a certain status, e.g. active broadcasts.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ]\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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, status and statistics.\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n }\n - \ },\n \"id\": \"youtube.liveBroadcasts.list\",\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n }\n },\n - \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new stream for the authenticated - user.\",\n \"id\": \"youtube.liveBroadcasts.insert\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"youtube\": - {\n \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"description\": \"Updates an existing resource.\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"parameterOrder\": [],\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"CommentThread\"\n }\n }\n }\n }\n - \ }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": {\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"hl\": {\n \"default\": - \"en-US\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the videoCategory resource parts that the - API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/videoAbuseReportReasons\",\n \"id\": \"youtube.videoAbuseReportReasons.list\"\n - \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a resource.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"type\": - {\n \"description\": \"Type of the link to be deleted.\",\n \"required\": - true,\n \"type\": \"string\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"Do not use. Required for compatibility.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"linkingToken\": {\n \"location\": - \"query\",\n \"description\": \"Delete the partner links with - the given linking token.\",\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"linkingToken\",\n \"type\"\n ],\n \"id\": - \"youtube.thirdPartyLinks.delete\",\n \"path\": \"youtube/v3/thirdPartyLinks\"\n - \ },\n \"list\": {\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Get a third party link of the given type.\",\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ]\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the thirdPartyLink resource parts that the API response will include. Supported - values are linkingToken, status, and snippet.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"description\": \"Get a third party link with the given linking - token.\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"id\": \"youtube.thirdPartyLinks.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/thirdPartyLinks\"\n - \ },\n \"update\": {\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Updates an existing resource.\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.insert\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true\n }\n },\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"path\": - \"youtube/v3/thirdPartyLinks\"\n }\n }\n },\n \"liveChatMessages\": - {\n \"methods\": {\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Deletes a chat message.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"id\": \"youtube.liveChatMessages.delete\",\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insert\": {\n \"response\": {\n - \ \"$ref\": \"LiveChatMessage\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.liveChatMessages.insert\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"profileImageSize\": - {\n \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"maximum\": \"720\",\n \"format\": \"uint32\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\",\n \"minimum\": \"16\"\n - \ },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"default\": \"500\",\n \"maximum\": \"2000\",\n - \ \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"200\"\n },\n \"hl\": {\n - \ \"location\": \"query\",\n \"description\": \"Specifies - the localization language in which the system messages should be returned.\",\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n - \ },\n \"liveChatId\": {\n \"location\": - \"query\",\n \"description\": \"The id of the live chat for which - comments should be returned.\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the liveChatComment resource parts that the - API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"type\": \"string\"\n }\n }\n }\n - \ }\n },\n \"membershipsLevels\": {\n \"methods\": {\n \"list\": - {\n \"id\": \"youtube.membershipsLevels.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"path\": \"youtube/v3/membershipsLevels\",\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the membershipsLevel resource parts that the API response - will include. Supported values are id and snippet.\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"MembershipsLevelListResponse\"\n },\n - \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"flatPath\": \"youtube/v3/liveChat/moderators\"\n - \ },\n \"list\": {\n \"id\": \"youtube.liveChatModerators.list\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"liveChatId\": {\n \"location\": \"query\",\n \"description\": - \"The id of the live chat for which moderators should be returned.\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"default\": \"5\",\n - \ \"type\": \"integer\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the liveChatModerator resource parts that the API response - will include. Supported values are id and snippet.\",\n \"required\": - true\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n - \ }\n },\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatModerators.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a chat moderator.\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\"\n }\n }\n },\n \"liveChatBans\": - {\n \"methods\": {\n \"insert\": {\n \"response\": {\n - \ \"$ref\": \"LiveChatBan\"\n },\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/liveChat/bans\",\n \"request\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"youtube.liveChatBans.insert\"\n },\n - \ \"delete\": {\n \"description\": \"Deletes a chat ban.\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"id\": \"youtube.liveChatBans.delete\"\n - \ }\n }\n },\n \"playlistItems\": {\n \"methods\": {\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"playlistId\": - {\n \"description\": \"Return the playlist items within the given - playlist.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlist items associated with the given video ID.\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"50\",\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n }\n },\n - \ \"id\": \"youtube.playlistItems.list\",\n \"response\": - {\n \"$ref\": \"PlaylistItemListResponse\"\n },\n \"path\": - \"youtube/v3/playlistItems\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\"\n },\n \"update\": {\n \"httpMethod\": - \"PUT\",\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"id\": \"youtube.playlistItems.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.playlistItems.delete\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"insert\": {\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.playlistItems.insert\"\n }\n - \ }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ },\n \"id\": \"youtube.members.list\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/members\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/members\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"hasAccessToLevel\": - {\n \"description\": \"Filter members in the results set to the - ones that have access to a level.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"default\": \"5\",\n - \ \"maximum\": \"1000\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"filterByMemberChannelId\": {\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"mode\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"default\": - \"all_current\"\n }\n },\n \"description\": \"Retrieves - a list of members that match the request criteria for a channel.\"\n }\n - \ }\n },\n \"playlists\": {\n \"methods\": {\n \"delete\": - {\n \"flatPath\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"httpMethod\": \"DELETE\",\n \"path\": - \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.playlists.delete\"\n },\n \"insert\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/playlists\",\n \"description\": \"Inserts a new resource - into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlists.insert\",\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/playlists\"\n },\n \"update\": - {\n \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlists.update\",\n \"httpMethod\": - \"PUT\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"list\": {\n \"id\": - \"youtube.playlists.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"response\": - {\n \"$ref\": \"PlaylistListResponse\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"description\": \"Return content in specified language\",\n - \ \"type\": \"string\"\n },\n \"mine\": - {\n \"description\": \"Return the playlists owned by the authenticated - user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"description\": - \"Return the playlists owned by the specified channel ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true,\n \"description\": - \"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.\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/playlists\"\n - \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"download\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"description\": \"The ID of the caption track - to download, required for One Platform.\",\n \"location\": \"path\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"tlang\": {\n \"description\": \"tlang is the language - code; machine translate the captions into this language.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"tfmt\": - {\n \"description\": \"Convert the captions into this format. - Supported options are sbv, srt, and vtt.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.captions.download\",\n \"supportsMediaDownload\": true,\n - \ \"description\": \"Downloads a caption track.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"useMediaDownloadService\": true,\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"path\": - \"youtube/v3/captions/{id}\"\n },\n \"delete\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"flatPath\": \"youtube/v3/captions\",\n \"id\": - \"youtube.captions.delete\",\n \"path\": \"youtube/v3/captions\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is be on behalf of\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n }\n },\n \"insert\": {\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"path\": \"youtube/v3/captions\",\n \"response\": {\n - \ \"$ref\": \"Caption\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"supportsMediaUpload\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"maxSize\": \"104857600\"\n },\n \"id\": \"youtube.captions.insert\",\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"description\": \"The - *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"sync\": {\n - \ \"location\": \"query\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"flatPath\": - \"youtube/v3/captions\",\n \"httpMethod\": \"POST\"\n },\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\",\n - \ \"videoId\"\n ],\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"path\": \"youtube/v3/captions\",\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.captions.list\",\n \"response\": {\n - \ \"$ref\": \"CaptionListResponse\"\n },\n \"parameters\": - {\n \"onBehalfOf\": {\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"Returns the captions with the - given IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"Returns the captions for the - specified video.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"update\": {\n \"description\": \"Updates an - existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true\n },\n - \ \"sync\": {\n \"location\": \"query\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"mediaUpload\": - {\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"104857600\"\n - \ },\n \"httpMethod\": \"PUT\",\n \"request\": {\n - \ \"$ref\": \"Caption\"\n },\n \"supportsMediaUpload\": - true,\n \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"path\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.update\"\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videoCategories.list\",\n \"parameters\": - {\n \"hl\": {\n \"default\": \"en-US\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"regionCode\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Returns the video categories with the - given IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"path\": \"youtube/v3/videoCategories\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"channelSections\": - {\n \"methods\": {\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"id\": \"youtube.channelSections.insert\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/channelSections\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.channelSections.delete\"\n - \ },\n \"list\": {\n \"id\": \"youtube.channelSections.list\",\n - \ \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"mine\": {\n \"description\": - \"Return the ChannelSections owned by the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the ChannelSections owned by the specified channel ID.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"id\": {\n - \ \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"update\": {\n - \ \"id\": \"youtube.channelSections.update\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"description\": \"Updates an existing resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true\n }\n - \ },\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n }\n }\n }\n - \ },\n \"channelBanners\": {\n \"methods\": {\n \"insert\": - {\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"supportsMediaUpload\": true,\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"description\": \"Unused, channel_id is currently derived - from the security context of the requestor.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"mediaUpload\": - {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"6291456\",\n \"protocols\": {\n \"resumable\": {\n - \ \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"id\": \"youtube.channelBanners.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n - \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"parameterOrder\": - [],\n \"path\": \"youtube/v3/channelBanners/insert\",\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ }\n }\n }\n },\n \"thumbnails\": {\n \"methods\": - {\n \"set\": {\n \"supportsMediaUpload\": true,\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"videoId\"\n ],\n - \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"2097152\",\n \"protocols\": - {\n \"resumable\": {\n \"multipart\": true,\n - \ \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"path\": \"youtube/v3/thumbnails/set\",\n \"response\": - {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the Thumbnail with the given video IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.thumbnails.set\",\n \"flatPath\": - \"youtube/v3/thumbnails/set\"\n }\n }\n },\n \"channels\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/channels\",\n - \ \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"managedByMe\": {\n \"description\": - \"Return the channels managed by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the channels with the specified IDs.\"\n },\n \"forUsername\": - {\n \"description\": \"Return the channel associated with a YouTube - username.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"repeated\": true\n },\n - \ \"categoryId\": {\n \"type\": \"string\",\n \"description\": - \"Return the channels within the specified guide category ID.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"maximum\": \"50\",\n - \ \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"description\": - \"Return the ids of channels owned by the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"mySubscribers\": - {\n \"location\": \"query\",\n \"description\": - \"Return the channels subscribed to the authenticated user\",\n \"type\": - \"boolean\"\n }\n },\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.channels.list\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"update\": {\n - \ \"path\": \"youtube/v3/channels\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channels.update\",\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"Channel\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"request\": {\n \"$ref\": \"Channel\"\n - \ },\n \"description\": \"Updates an existing resource.\"\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/videos\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"VideoListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/videos\",\n \"id\": - \"youtube.videos.list\",\n \"parameters\": {\n \"myRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"description\": - \"Return videos liked/disliked by the authenticated user. Does not support - RateType.RATED_TYPE_NONE.\"\n },\n \"maxWidth\": {\n - \ \"minimum\": \"72\",\n \"description\": \"Return - the player with maximum height specified in\",\n \"location\": - \"query\",\n \"format\": \"int32\",\n \"type\": - \"integer\",\n \"maximum\": \"8192\"\n },\n \"videoCategoryId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"0\",\n \"description\": \"Use chart - that is specific to the specified video category\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"locale\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"default\": - \"5\",\n \"description\": \"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.\",\n - \ \"minimum\": \"1\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\"\n },\n \"maxHeight\": - {\n \"location\": \"query\",\n \"maximum\": \"8192\",\n - \ \"minimum\": \"72\",\n \"format\": \"int32\",\n - \ \"type\": \"integer\"\n },\n \"chart\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - the most popular videos for the specified content region and video category.\"\n - \ ],\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ],\n \"type\": - \"string\",\n \"description\": \"Return the videos that are in - the specified chart.\",\n \"location\": \"query\"\n },\n - \ \"hl\": {\n \"description\": \"Stands for \\\"host - language\\\". Specifies the localization language of the metadata to be filled - into snippet.localized. The field is filled with the default metadata if there - is no localization in the specified language. The parameter value must be - a language code included in the list returned by the i18nLanguages.list method - (e.g. en_US, es_MX).\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Return videos with the given ids.\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"regionCode\": {\n \"location\": - \"query\",\n \"description\": \"Use a chart that is specific - to the specified region\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"flatPath\": - \"youtube/v3/videos\",\n \"path\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.videos.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"DELETE\"\n },\n \"rate\": {\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/videos/rate\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"rating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"required\": true,\n \"enumDescriptions\": [\n - \ \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"id\": \"youtube.videos.rate\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Adds a like or dislike rating to - a video or removes a rating from a video.\"\n },\n \"reportAbuse\": - {\n \"path\": \"youtube/v3/videos/reportAbuse\",\n \"description\": - \"Report abuse for a video.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n - \ },\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"parameterOrder\": [],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.videos.reportAbuse\"\n },\n \"update\": - {\n \"path\": \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Video\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"id\": \"youtube.videos.update\"\n },\n \"insert\": - {\n \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"supportsMediaUpload\": - true,\n \"mediaUpload\": {\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"274877906944\",\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/videos\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": true\n - \ }\n }\n },\n \"id\": \"youtube.videos.insert\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"autoLevels\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Should auto-levels be applied to the upload.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"stabilize\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Should - stabilize be applied to the upload.\"\n },\n \"notifySubscribers\": - {\n \"type\": \"boolean\",\n \"description\": \"Notify - the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"default\": \"true\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos\",\n \"httpMethod\": \"POST\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"getRating\": {\n \"description\": \"Retrieves the ratings - that the authorized user gave to a list of specified videos.\",\n \"response\": - {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos/getRating\",\n \"flatPath\": - \"youtube/v3/videos/getRating\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.videos.getRating\",\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"path\": \"youtube/v3/superChatEvents\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the superChatEvent resource parts that the API response will include. This - parameter is currently not supported.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true\n },\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"maximum\": \"50\",\n \"minimum\": - \"1\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"type\": \"integer\"\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Return - rendered funding amounts in specified language.\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.superChatEvents.list\",\n \"response\": - {\n \"$ref\": \"SuperChatEventListResponse\"\n }\n }\n - \ }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of search resources\",\n \"parameters\": {\n \"videoEmbeddable\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos, embeddable or not.\",\n \"Only retrieve embeddable - videos.\"\n ],\n \"description\": \"Filter on embeddable - videos.\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"channelType\": - {\n \"description\": \"Add a filter on the channel search.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all channels.\",\n \"Only retrieve shows.\"\n ],\n - \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"relevanceLanguage\": - {\n \"type\": \"string\",\n \"description\": \"Return - results relevant to this language.\",\n \"location\": \"query\"\n - \ },\n \"videoCaption\": {\n \"type\": \"string\",\n - \ \"description\": \"Filter on the presence of captions on the - videos.\",\n \"location\": \"query\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ]\n },\n \"videoDimension\": - {\n \"enumDescriptions\": [\n \"Include both 3D - and non-3D videos in returned results. This is the default value.\",\n \"Restrict - search results to exclude 3D videos.\",\n \"Restrict search - results to only include 3D videos.\"\n ],\n \"description\": - \"Filter on 3d videos.\",\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"location\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on location of the video\",\n \"location\": \"query\"\n },\n - \ \"publishedAfter\": {\n \"location\": \"query\",\n - \ \"description\": \"Filter on resources published after this - date.\",\n \"type\": \"string\",\n \"format\": \"google-datetime\"\n - \ },\n \"videoDuration\": {\n \"enum\": - [\n \"videoDurationUnspecified\",\n \"any\",\n - \ \"short\",\n \"medium\",\n \"long\"\n - \ ],\n \"description\": \"Filter on the duration - of the videos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter video search results based on their duration. - This is the default value.\",\n \"Only include videos that - are less than four minutes long.\",\n \"Only include videos - that are between four and 20 minutes long (inclusive).\",\n \"Only - include videos longer than 20 minutes.\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"type\": - {\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular set of resource types from One Platform.\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"Filter on resources - belonging to this channelId.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"order\": - {\n \"enumDescriptions\": [\n \"\",\n \"Resources - are sorted in reverse chronological order based on the date they were created.\",\n - \ \"Resources are sorted from highest to lowest rating.\",\n - \ \"Resources are sorted from highest to lowest number of views.\",\n - \ \"Resources are sorted based on their relevance to the search - query. This is the default value for this parameter.\",\n \"Resources - are sorted alphabetically by title.\",\n \"Channels are sorted - in descending order of their number of uploaded videos.\"\n ],\n - \ \"default\": \"relevance\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Sort - order of the results.\"\n },\n \"videoLicense\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on the license of the videos.\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ]\n - \ },\n \"relatedToVideoId\": {\n \"type\": - \"string\",\n \"description\": \"Search related to a resource.\",\n - \ \"location\": \"query\"\n },\n \"locationRadius\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on distance from the location (specified - above).\"\n },\n \"videoDefinition\": {\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on the definition of the videos.\"\n - \ },\n \"forMine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Search - for the private videos of the authenticated user.\"\n },\n \"videoSyndicated\": - {\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on syndicated videos.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all videos, syndicated or - not.\",\n \"Only retrieve syndicated videos.\"\n ]\n - \ },\n \"regionCode\": {\n \"description\": - \"Display the content as seen by viewers in this country.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"default\": - \"5\",\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"safeSearch\": - {\n \"default\": \"moderate\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"topicId\": {\n \"description\": - \"Restrict results to a particular topic.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"videoType\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"videoTypeUnspecified\",\n \"any\",\n - \ \"movie\",\n \"episode\"\n ],\n - \ \"description\": \"Filter on videos of a specific type.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos.\",\n \"Only retrieve movies.\",\n \"Only - retrieve episodes of shows.\"\n ]\n },\n \"eventType\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Filter - on the livestream status of the videos.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n - \ },\n \"publishedBefore\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on resources published before this date.\",\n \"format\": - \"google-datetime\"\n },\n \"q\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Textual search terms to match.\"\n },\n \"forDeveloper\": - {\n \"type\": \"boolean\",\n \"description\": \"Restrict - the search to only retrieve videos uploaded using the project id of the authenticated - user.\",\n \"location\": \"query\"\n },\n \"videoCategoryId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on videos in a specific category.\"\n - \ },\n \"forContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"Search owned by a content owner.\",\n - \ \"type\": \"boolean\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/search\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"id\": \"youtube.search.list\",\n \"path\": - \"youtube/v3/search\"\n }\n }\n },\n \"i18nRegions\": {\n - \ \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"en_US\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/i18nRegions\",\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"id\": \"youtube.i18nRegions.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ }\n }\n }\n },\n \"subscriptions\": {\n \"methods\": - {\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"path\": \"youtube/v3/subscriptions\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"request\": {\n \"$ref\": - \"Subscription\"\n }\n },\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"id\": \"youtube.subscriptions.list\",\n \"parameters\": - {\n \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"order\": {\n \"description\": - \"The order of the returned subscriptions\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"default\": \"relevance\"\n },\n - \ \"mySubscribers\": {\n \"location\": \"query\",\n - \ \"description\": \"Return the subscribers of the given channel - owner.\",\n \"type\": \"boolean\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Flag for returning the subscriptions of the - authenticated user.\"\n },\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"forChannelId\": - {\n \"description\": \"Return the subscriptions to the subset - of these channels that the authenticated user is subscribed to.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"myRecentSubscribers\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"description\": \"Return the subscriptions of the given - channel owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"SubscriptionListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/subscriptions\",\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/subscriptions\"\n }\n }\n },\n \"watermarks\": - {\n \"methods\": {\n \"set\": {\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"channelId\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/watermarks/set\",\n \"flatPath\": - \"youtube/v3/watermarks/set\",\n \"mediaUpload\": {\n \"maxSize\": - \"10485760\",\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"supportsMediaUpload\": true,\n \"description\": - \"Allows upload of watermark image and setting it for a channel.\",\n \"id\": - \"youtube.watermarks.set\",\n \"httpMethod\": \"POST\"\n },\n - \ \"unset\": {\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.watermarks.unset\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"description\": \"Allows - removal of channel watermark.\",\n \"parameters\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n }\n }\n }\n },\n \"tests\": - {\n \"methods\": {\n \"insert\": {\n \"path\": \"youtube/v3/tests\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/tests\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ }\n },\n \"id\": \"youtube.tests.insert\",\n - \ \"response\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"request\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"POST method.\"\n }\n }\n },\n - \ \"comments\": {\n \"methods\": {\n \"delete\": {\n \"flatPath\": - \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.comments.delete\",\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"path\": - \"youtube/v3/comments\"\n },\n \"list\": {\n \"path\": - \"youtube/v3/comments\",\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.comments.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"parameters\": {\n \"pageToken\": {\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n - \ \"maximum\": \"100\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"1\",\n \"type\": \"integer\",\n \"default\": \"20\"\n - \ },\n \"textFormat\": {\n \"default\": - \"html\",\n \"type\": \"string\",\n \"description\": - \"The requested text format for the returned comments.\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ]\n },\n \"id\": {\n \"description\": - \"Returns the comments with the given IDs for One Platform.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"parentId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Returns - replies to the specified comment. Note, currently YouTube features only one - level of replies (ie replies to top level comments). However replies to replies - may be supported in the future.\"\n },\n \"part\": {\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more comment resource - properties that the API response will include.\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n }\n }\n },\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.comments.update\",\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"path\": - \"youtube/v3/comments\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n - \ \"repeated\": true\n }\n },\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new resource into this collection.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.comments.insert\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"request\": {\n - \ \"$ref\": \"Comment\"\n },\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/comments\",\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"setModerationStatus\": {\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ],\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\",\n \"description\": \"Sets - the moderation status of one or more comments.\",\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"parameters\": {\n \"moderationStatus\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"required\": - true,\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"description\": \"Specifies the requested moderation status. - Note, comments can be in statuses, which are not available through this call. - For example, this call does not allow to mark a comment as 'likely spam'. - Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\"\n },\n \"banAuthor\": - {\n \"default\": \"false\",\n \"type\": \"boolean\",\n - \ \"description\": \"If set to true the author of the comment - gets added to the ban list. This means all future comments of the author will - autmomatically be rejected. Only valid in combination with STATUS_REJECTED.\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"markAsSpam\": {\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/comments/markAsSpam\",\n \"parameters\": - {\n \"id\": {\n \"description\": \"Flags the comments - with the given IDs as spam in the caller's opinion.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"id\": \"youtube.comments.markAsSpam\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n \"parameterOrder\": - [\n \"id\"\n ]\n }\n }\n },\n \"activities\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"regionCode\": {\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"publishedBefore\": {\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"home\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"type\": \"integer\",\n \"maximum\": - \"50\",\n \"location\": \"query\",\n \"minimum\": - \"0\"\n },\n \"publishedAfter\": {\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"mine\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.activities.list\",\n \"path\": \"youtube/v3/activities\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n - \ \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"id\": - \"youtube.abuseReports.insert\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"response\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/abuseReports\",\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"AbuseReport\"\n - \ },\n \"flatPath\": \"youtube/v3/abuseReports\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"liveStreams\": - {\n \"methods\": {\n \"insert\": {\n \"response\": {\n - \ \"$ref\": \"LiveStream\"\n },\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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, - content_details, and status.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.insert\",\n \"httpMethod\": - \"POST\"\n },\n \"delete\": {\n \"id\": \"youtube.liveStreams.delete\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Deletes an existing stream for - the authenticated user.\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"update\": {\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"id\": \"youtube.liveStreams.update\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"description\": - \"Updates an existing stream for the authenticated user.\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"httpMethod\": \"PUT\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ }\n },\n \"list\": {\n \"parameters\": {\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"pageToken\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return LiveStreams with the given ids from - Stubby or Apiary.\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n - \ }\n },\n \"description\": \"Retrieve the list - of streams associated with the given channel. --\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.liveStreams.list\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/liveStreams\",\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n }\n }\n - \ }\n }\n },\n \"canonicalName\": \"YouTube\",\n \"rootUrl\": \"https://youtube.googleapis.com/\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:29 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UC5Y1pPVNm-odhiubuRO1D6A&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"b-SiZ0cJw9OYC8CUqsGHvONFciY\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"nMDrmL-1lvl5IVwldz-Lb1noV9s\",\n \"id\": \"UC5Y1pPVNm-odhiubuRO1D6A\",\n - \ \"snippet\": {\n \"title\": \"Jeremy Lynch\",\n \"description\": - \"You may know me from F2freestylers, TikTok, Instagram or the Jez & Shauna - YouTube Channel! Welcome to my personal YouTube Channel where you can get - to see a different side of me with action packed vlogs of my life that are - full of surprises! Enjoy & Click the Notification Bell to make sure you never - miss a video! \",\n \"customUrl\": \"@jeremylynch\",\n \"publishedAt\": - \"2020-10-20T18:05:58.006279Z\",\n \"thumbnails\": {\n \"default\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJWncu0Q8TdIQQSCGYG5gGhz6JDltGZa1aaDvu-Z=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJWncu0Q8TdIQQSCGYG5gGhz6JDltGZa1aaDvu-Z=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJWncu0Q8TdIQQSCGYG5gGhz6JDltGZa1aaDvu-Z=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Jeremy Lynch\",\n \"description\": - \"You may know me from F2freestylers, TikTok, Instagram or the Jez & Shauna - YouTube Channel! Welcome to my personal YouTube Channel where you can get - to see a different side of me with action packed vlogs of my life that are - full of surprises! Enjoy & Click the Notification Bell to make sure you never - miss a video! \"\n },\n \"country\": \"GB\"\n },\n \"brandingSettings\": - {\n \"channel\": {\n \"title\": \"Jeremy Lynch\",\n \"description\": - \"You may know me from F2freestylers, TikTok, Instagram or the Jez & Shauna - YouTube Channel! Welcome to my personal YouTube Channel where you can get - to see a different side of me with action packed vlogs of my life that are - full of surprises! Enjoy & Click the Notification Bell to make sure you never - miss a video! \",\n \"keywords\": \"\\\"Jeremy Lynch\\\" Jeremy Lynch - F2 F2Freestylers Jez Shauna \\\"Jez and Shauna\\\"\",\n \"unsubscribedTrailer\": - \"awZeCkDENJ4\",\n \"country\": \"GB\"\n },\n \"image\": - {\n \"bannerExternalUrl\": \"https://yt3.googleusercontent.com/Ru0nX7ZQewimRgm38Gp5F_D_l37aJnZYhG_s-xioDTiaA65EK2G6HNA0tmZncBtRIsRxT3T5DA\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:29 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"canonicalName\": \"YouTube\",\n \"icons\": {\n \"x16\": - \"http://www.google.com/images/icons/product/search-16.gif\",\n \"x32\": - \"http://www.google.com/images/icons/product/search-32.gif\"\n },\n \"rootUrl\": - \"https://youtube.googleapis.com/\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"title\": \"YouTube Data API v3\",\n \"ownerName\": \"Google\",\n \"batchPath\": - \"batch\",\n \"ownerDomain\": \"google.com\",\n \"resources\": {\n \"i18nLanguages\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the i18nLanguage resource properties that the API - response will include. Set the parameter value to snippet.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": - \"en_US\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/i18nLanguages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.i18nLanguages.list\",\n \"response\": - {\n \"$ref\": \"I18nLanguageListResponse\"\n },\n \"flatPath\": - \"youtube/v3/i18nLanguages\",\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"httpMethod\": \"GET\"\n }\n - \ }\n },\n \"watermarks\": {\n \"methods\": {\n \"set\": - {\n \"flatPath\": \"youtube/v3/watermarks/set\",\n \"parameters\": - {\n \"channelId\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n },\n \"mediaUpload\": - {\n \"maxSize\": \"10485760\",\n \"protocols\": {\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.watermarks.set\",\n \"description\": - \"Allows upload of watermark image and setting it for a channel.\",\n \"path\": - \"youtube/v3/watermarks/set\",\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"supportsMediaUpload\": true\n - \ },\n \"unset\": {\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/watermarks/unset\",\n \"description\": \"Allows removal - of channel watermark.\",\n \"id\": \"youtube.watermarks.unset\",\n - \ \"parameters\": {\n \"channelId\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"subscriptions\": {\n \"methods\": {\n - \ \"delete\": {\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/subscriptions\"\n },\n \"insert\": - {\n \"path\": \"youtube/v3/subscriptions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"response\": {\n \"$ref\": - \"Subscription\"\n },\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"flatPath\": \"youtube/v3/subscriptions\"\n },\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"forChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\"\n },\n \"mySubscribers\": {\n - \ \"description\": \"Return the subscribers of the given channel - owner.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"description\": \"Flag for returning the subscriptions - of the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"maxResults\": {\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"maximum\": \"50\"\n },\n - \ \"myRecentSubscribers\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"order\": {\n \"location\": - \"query\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The - order of the returned subscriptions\",\n \"default\": \"relevance\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions of the given channel - owner.\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"SubscriptionListResponse\"\n }\n }\n - \ }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"response\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"id\": \"youtube.tests.insert\",\n \"path\": \"youtube/v3/tests\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/tests\",\n \"description\": \"POST method.\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"request\": {\n \"$ref\": \"TestItem\"\n }\n - \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"list\": - {\n \"flatPath\": \"youtube/v3/channels\",\n \"path\": \"youtube/v3/channels\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"Return the channels with the - specified IDs.\",\n \"location\": \"query\"\n },\n - \ \"categoryId\": {\n \"type\": \"string\",\n \"description\": - \"Return the channels within the specified guide category ID.\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"description\": - \"Return the ids of channels owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"managedByMe\": {\n \"location\": - \"query\",\n \"description\": \"Return the channels managed by - the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"maxResults\": {\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"forUsername\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the channel associated with a YouTube - username.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n },\n \"mySubscribers\": {\n \"location\": - \"query\",\n \"description\": \"Return the channels subscribed - to the authenticated user\",\n \"type\": \"boolean\"\n }\n - \ },\n \"id\": \"youtube.channels.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ }\n },\n \"update\": {\n \"path\": \"youtube/v3/channels\",\n - \ \"response\": {\n \"$ref\": \"Channel\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": true\n }\n },\n - \ \"request\": {\n \"$ref\": \"Channel\"\n },\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"description\": - \"Updates an existing resource.\",\n \"httpMethod\": \"PUT\",\n \"id\": - \"youtube.channels.update\"\n }\n }\n },\n \"liveChatBans\": - {\n \"methods\": {\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a chat ban.\",\n \"id\": \"youtube.liveChatBans.delete\",\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"request\": {\n \"$ref\": - \"LiveChatBan\"\n }\n }\n }\n },\n \"captions\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"videoId\": {\n \"description\": \"Returns the captions - for the specified video.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"repeated\": - true\n },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Returns - the captions with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\"\n }\n },\n - \ \"id\": \"youtube.captions.list\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/captions\",\n - \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ]\n },\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"Caption\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"path\": \"youtube/v3/captions\",\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.captions.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ }\n },\n \"maxSize\": \"104857600\",\n - \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"supportsMediaUpload\": - true,\n \"parameters\": {\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"sync\": {\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n }\n },\n \"download\": - {\n \"path\": \"youtube/v3/captions/{id}\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"description\": - \"Downloads a caption track.\",\n \"parameters\": {\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n },\n \"tfmt\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Convert the captions into this format. Supported - options are sbv, srt, and vtt.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"tlang\": {\n \"location\": - \"query\",\n \"description\": \"tlang is the language code; machine - translate the captions into this language.\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - ID of the caption track to download, required for One Platform.\",\n \"location\": - \"path\"\n }\n },\n \"id\": \"youtube.captions.download\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"useMediaDownloadService\": true,\n \"supportsMediaDownload\": - true,\n \"parameterOrder\": [\n \"id\"\n ]\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/captions\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n }\n },\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.delete\",\n \"flatPath\": \"youtube/v3/captions\"\n - \ },\n \"update\": {\n \"path\": \"youtube/v3/captions\",\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"supportsMediaUpload\": true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.captions.update\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"mediaUpload\": {\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"104857600\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\"\n },\n \"part\": {\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"sync\": - {\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n }\n }\n - \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/members\",\n \"description\": - \"Retrieves a list of members that match the request criteria for a channel.\",\n - \ \"parameters\": {\n \"mode\": {\n \"enum\": - [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ],\n \"description\": \"Parameter - that specifies which channel members to return.\",\n \"default\": - \"all_current\",\n \"location\": \"query\"\n },\n - \ \"hasAccessToLevel\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Filter - members in the results set to the ones that have access to a level.\"\n },\n - \ \"filterByMemberChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Comma - separated list of channel IDs. Only data about members that are part of this - list will be included in the response.\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"1000\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"flatPath\": \"youtube/v3/members\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"id\": \"youtube.members.list\"\n }\n }\n - \ },\n \"activities\": {\n \"methods\": {\n \"list\": {\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n },\n \"path\": - \"youtube/v3/activities\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.activities.list\",\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"parameters\": {\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"home\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"publishedBefore\": {\n \"location\": - \"query\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"default\": \"5\",\n \"location\": - \"query\"\n },\n \"publishedAfter\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"format\": - \"google-datetime\"\n }\n }\n }\n }\n },\n - \ \"commentThreads\": {\n \"methods\": {\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.commentThreads.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"allThreadsRelatedToChannelId\": {\n - \ \"location\": \"query\",\n \"description\": \"Returns - the comment threads of all videos of the channel and the channel comments - as well.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"Returns - the comment threads with the given IDs for Stubby or Apiary.\"\n },\n - \ \"order\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Order by time.\",\n \"Order by relevance.\"\n - \ ],\n \"default\": \"time\",\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"maximum\": \"100\",\n \"default\": - \"20\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"1\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of the specified video.\"\n },\n - \ \"searchTerms\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Limits the returned comment threads - to those matching the specified key words. Not compatible with the 'id' filter.\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"textFormat\": - {\n \"description\": \"The requested text format for the returned - comments.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"location\": - \"query\",\n \"default\": \"html\"\n },\n \"moderationStatus\": - {\n \"default\": \"published\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"description\": \"Limits the returned comment - threads to those with the specified moderation status. Not compatible with - the 'id' filter. Valid values: published, heldForReview, likelySpam.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads for all the channel comments (ie does not include comments - left on videos).\",\n \"location\": \"query\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insert\": {\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/commentThreads\"\n - \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieve the list of broadcasts - associated with the given channel.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"LiveBroadcastListResponse\"\n },\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"broadcastType\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"default\": \"event\",\n \"type\": - \"string\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"description\": \"Return only broadcasts - with the selected type.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"required\": true,\n \"description\": - \"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, status - and statistics.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"broadcastStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"description\": \"Return broadcasts - with a certain status, e.g. active broadcasts.\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"Return broadcasts with the given ids from - Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"id\": \"youtube.liveBroadcasts.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n - \ },\n \"bind\": {\n \"parameterOrder\": [\n \"id\",\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": true\n },\n \"streamId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Stream to bind, if not set unbind the current - one.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Broadcast to bind to the stream\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"id\": - \"youtube.liveBroadcasts.bind\",\n \"description\": \"Bind a broadcast - to a stream.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"httpMethod\": \"POST\"\n },\n \"insert\": {\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"id\": - \"youtube.liveBroadcasts.insert\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"POST\"\n },\n \"insertCuepoint\": - {\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Insert cuepoints in a broadcast\",\n \"parameterOrder\": - [],\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"request\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"response\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n }\n },\n - \ \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Updates an existing broadcast for - the authenticated user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.update\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"PUT\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ }\n },\n \"transition\": {\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"broadcastStatus\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"required\": true,\n \"description\": - \"The status to which the broadcast is going to transition.\"\n },\n - \ \"id\": {\n \"description\": \"Broadcast to transition.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"Transition a broadcast to a given status.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"broadcastStatus\",\n - \ \"id\",\n \"part\"\n ],\n \"id\": - \"youtube.liveBroadcasts.transition\",\n \"path\": \"youtube/v3/liveBroadcasts/transition\"\n - \ },\n \"delete\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"Broadcast to delete.\",\n \"location\": \"query\"\n }\n - \ },\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.liveBroadcasts.delete\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"description\": \"Delete a given broadcast.\"\n }\n }\n - \ },\n \"liveChatMessages\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/liveChat/messages\",\n \"id\": - \"youtube.liveChatMessages.list\",\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"parameters\": {\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"2000\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"minimum\": \"200\",\n \"default\": - \"500\",\n \"format\": \"uint32\"\n },\n \"liveChatId\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - id of the live chat for which comments should be returned.\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the liveChatComment - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"profileImageSize\": - {\n \"type\": \"integer\",\n \"description\": \"Specifies - the size of the profile image that should be returned for each user.\",\n - \ \"minimum\": \"16\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"maximum\": \"720\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the localization language in which - the system messages should be returned.\",\n \"location\": \"query\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n },\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"LiveChatMessage\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"id\": \"youtube.liveChatMessages.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"LiveChatMessage\"\n }\n },\n \"delete\": {\n \"id\": - \"youtube.liveChatMessages.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"description\": \"Deletes a - chat message.\"\n }\n }\n },\n \"superChatEvents\": {\n - \ \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/superChatEvents\",\n \"id\": \"youtube.superChatEvents.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return rendered funding amounts - in specified language.\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"minimum\": \"1\",\n \"maximum\": \"50\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the superChatEvent resource parts that the API - response will include. This parameter is currently not supported.\"\n }\n - \ }\n }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"parameters\": {\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"id\": \"youtube.channelBanners.insert\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\"\n },\n \"supportsMediaUpload\": - true,\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"parameterOrder\": - []\n }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/membershipsLevels\",\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/membershipsLevels\",\n \"description\": \"Retrieves - a list of all pricing levels offered by a creator to the fans.\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"The *part* parameter - specifies the membershipsLevel resource parts that the API response will include. - Supported values are id and snippet.\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"response\": - {\n \"$ref\": \"MembershipsLevelListResponse\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ]\n }\n }\n },\n \"thumbnails\": {\n \"methods\": - {\n \"set\": {\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"flatPath\": \"youtube/v3/thumbnails/set\",\n \"response\": - {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the Thumbnail with the given video IDs for Stubby or Apiary.\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.thumbnails.set\",\n \"description\": - \"As this is not an insert in a strict sense (it supports uploading/setting - of a thumbnail for multiple videos, which doesn't result in creation of a - single resource), I use a custom verb here.\",\n \"parameterOrder\": - [\n \"videoId\"\n ],\n \"mediaUpload\": {\n \"maxSize\": - \"2097152\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/thumbnails/set\"\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n }\n }\n }\n - \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n - \ \"insert\": {\n \"description\": \"Inserts a new resource - into this collection.\",\n \"request\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"id\": \"youtube.abuseReports.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"AbuseReport\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/abuseReports\"\n }\n - \ }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": {\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"The *part* parameter specifies the videoCategory - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"default\": \"en-US\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/videoAbuseReportReasons\"\n - \ }\n }\n },\n \"playlists\": {\n \"methods\": {\n \"update\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"request\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"path\": \"youtube/v3/playlists\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\",\n \"id\": \"youtube.playlists.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlists\"\n - \ },\n \"list\": {\n \"parameters\": {\n \"maxResults\": - {\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\"\n },\n \"id\": - {\n \"description\": \"Return the playlists with the given IDs - for Stubby or Apiary.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return content in specified language\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the playlists owned by the specified channel ID.\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Return the playlists owned by - the authenticated user.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.list\",\n - \ \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ }\n },\n \"delete\": {\n \"path\": \"youtube/v3/playlists\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.playlists.delete\"\n - \ },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"id\": \"youtube.playlists.insert\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n }\n - \ }\n }\n },\n \"liveStreams\": {\n \"methods\": {\n - \ \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"id\": \"youtube.liveStreams.update\",\n \"description\": - \"Updates an existing stream for the authenticated user.\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieve the list of streams associated - with the given channel. --\",\n \"parameters\": {\n \"maxResults\": - {\n \"default\": \"5\",\n \"maximum\": \"50\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"0\",\n \"type\": - \"integer\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n - \ \"repeated\": true\n },\n \"mine\": {\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"Return LiveStreams with the - given ids from Stubby or Apiary.\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.liveStreams.list\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"path\": - \"youtube/v3/liveStreams\"\n },\n \"delete\": {\n \"id\": - \"youtube.liveStreams.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Deletes - an existing stream for the authenticated user.\"\n },\n \"insert\": - {\n \"id\": \"youtube.liveStreams.insert\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"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, content_details, and status.\",\n \"required\": true,\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new stream for the authenticated - user.\",\n \"path\": \"youtube/v3/liveStreams\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n }\n }\n }\n - \ },\n \"thirdPartyLinks\": {\n \"methods\": {\n \"update\": - {\n \"id\": \"youtube.thirdPartyLinks.update\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"description\": \"Updates an existing - resource.\",\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the thirdPartyLink resource parts that the API request - and response will include. Supported values are linkingToken, status, and - snippet.\"\n },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n }\n - \ },\n \"insert\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.thirdPartyLinks.insert\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\"\n },\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.list\",\n \"parameters\": {\n \"type\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"description\": \"Get a third party link of the given type.\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ]\n },\n - \ \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\",\n \"location\": \"query\"\n },\n - \ \"linkingToken\": {\n \"description\": \"Get a third - party link with the given linking token.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - response will include. Supported values are linkingToken, status, and snippet.\",\n - \ \"required\": true\n }\n },\n \"response\": - {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"linkingToken\": - {\n \"description\": \"Delete the partner links with the given - linking token.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Do not use. Required for compatibility.\",\n - \ \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"required\": - true,\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Type of the link to be deleted.\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.delete\"\n }\n }\n - \ },\n \"playlistItems\": {\n \"methods\": {\n \"update\": - {\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"id\": \"youtube.playlistItems.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Updates - an existing resource.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\"\n },\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/playlistItems\"\n },\n \"delete\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.delete\",\n \"description\": - \"Deletes a resource.\"\n },\n \"list\": {\n \"response\": - {\n \"$ref\": \"PlaylistItemListResponse\"\n },\n \"id\": - \"youtube.playlistItems.list\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"playlistId\": {\n \"description\": - \"Return the playlist items within the given playlist.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"format\": \"uint32\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"Return the playlist items associated with the given video ID.\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/search\",\n \"path\": - \"youtube/v3/search\",\n \"description\": \"Retrieves a list of search - resources\",\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"forMine\": {\n \"description\": \"Search for - the private videos of the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"forDeveloper\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\"\n },\n - \ \"order\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"description\": - \"Sort order of the results.\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"default\": \"relevance\",\n \"type\": \"string\"\n - \ },\n \"locationRadius\": {\n \"type\": - \"string\",\n \"description\": \"Filter on distance from the - location (specified above).\",\n \"location\": \"query\"\n },\n - \ \"forContentOwner\": {\n \"description\": \"Search - owned by a content owner.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"location\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on location of the video\"\n },\n \"videoDimension\": - {\n \"location\": \"query\",\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ],\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"description\": \"Filter on - 3d videos.\",\n \"type\": \"string\"\n },\n \"videoCategoryId\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on videos in a specific category.\",\n \"type\": \"string\"\n - \ },\n \"relevanceLanguage\": {\n \"description\": - \"Return results relevant to this language.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"regionCode\": {\n \"description\": - \"Display the content as seen by viewers in this country.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoDuration\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"description\": - \"Filter on the duration of the videos.\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"maximum\": \"50\",\n \"type\": - \"integer\",\n \"description\": \"The *maxResults* parameter - specifies the maximum number of items that should be returned in the result - set.\",\n \"location\": \"query\",\n \"default\": - \"5\"\n },\n \"publishedAfter\": {\n \"location\": - \"query\",\n \"description\": \"Filter on resources published - after this date.\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\"\n },\n \"channelType\": {\n \"enum\": - [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Add a filter on the channel search.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all channels.\",\n \"Only retrieve shows.\"\n ],\n - \ \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on resources belonging to this channelId.\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"videoDefinition\": {\n \"description\": - \"Filter on the definition of the videos.\",\n \"enum\": [\n - \ \"any\",\n \"standard\",\n \"high\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Return - all videos, regardless of their resolution.\",\n \"Only retrieve - videos in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ]\n },\n \"publishedBefore\": {\n \"description\": - \"Filter on resources published before this date.\",\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"q\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Textual search terms to match.\"\n },\n \"topicId\": - {\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular topic.\",\n \"type\": \"string\"\n - \ },\n \"eventType\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ],\n \"description\": - \"Filter on the livestream status of the videos.\",\n \"location\": - \"query\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n - \ \"type\": \"string\"\n },\n \"videoType\": - {\n \"description\": \"Filter on videos of a specific type.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos.\",\n \"Only retrieve movies.\",\n \"Only - retrieve episodes of shows.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"videoTypeUnspecified\",\n \"any\",\n - \ \"movie\",\n \"episode\"\n ],\n - \ \"location\": \"query\"\n },\n \"safeSearch\": - {\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ],\n \"description\": \"Indicates - whether the search results should include restricted content as well as standard - content.\",\n \"default\": \"moderate\"\n },\n \"videoEmbeddable\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"description\": \"Filter on embeddable videos.\"\n - \ },\n \"videoCaption\": {\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"description\": \"Filter on the presence of captions on the - videos.\",\n \"location\": \"query\"\n },\n \"videoSyndicated\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos, syndicated or not.\",\n \"Only retrieve syndicated - videos.\"\n ],\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"description\": \"Filter on syndicated videos.\",\n - \ \"type\": \"string\"\n },\n \"relatedToVideoId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Search related to a resource.\"\n },\n - \ \"type\": {\n \"description\": \"Restrict results - to a particular set of resource types from One Platform.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoLicense\": - {\n \"enumDescriptions\": [\n \"Return all videos, - regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Filter on the license of the - videos.\",\n \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ]\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.search.list\"\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"I18nRegionListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/i18nRegions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/i18nRegions\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"hl\": {\n \"location\": \"query\",\n \"default\": - \"en_US\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the i18nRegion - resource properties that the API response will include. Set the parameter - value to snippet.\"\n }\n },\n \"id\": \"youtube.i18nRegions.list\"\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videoCategories\",\n \"path\": - \"youtube/v3/videoCategories\",\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.videoCategories.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"regionCode\": {\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the videoCategory resource properties that the API response will include. - Set the parameter value to snippet.\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"default\": \"en-US\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"description\": \"Returns - the video categories with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"VideoCategoryListResponse\"\n }\n }\n }\n },\n \"youtube\": - {\n \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"response\": {\n - \ \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"PUT\",\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"id\": - \"youtube.youtube.v3.updateCommentThreads\",\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": []\n - \ }\n }\n }\n }\n },\n \"comments\": - {\n \"methods\": {\n \"delete\": {\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a resource.\",\n \"path\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.comments.delete\"\n },\n \"markAsSpam\": - {\n \"description\": \"Expresses the caller's opinion that one or - more comments should be flagged as spam.\",\n \"path\": \"youtube/v3/comments/markAsSpam\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"Flags the comments with the given - IDs as spam in the caller's opinion.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/comments/markAsSpam\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.markAsSpam\",\n \"httpMethod\": - \"POST\"\n },\n \"insert\": {\n \"httpMethod\": \"POST\",\n - \ \"path\": \"youtube/v3/comments\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"id\": \"youtube.comments.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"response\": - {\n \"$ref\": \"Comment\"\n }\n },\n \"update\": - {\n \"id\": \"youtube.comments.update\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"description\": \"Updates an existing - resource.\",\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"Comment\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/comments\"\n - \ },\n \"setModerationStatus\": {\n \"httpMethod\": - \"POST\",\n \"description\": \"Sets the moderation status of one - or more comments.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"path\": \"youtube/v3/comments/setModerationStatus\",\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\",\n \"parameters\": {\n - \ \"moderationStatus\": {\n \"enumDescriptions\": [\n - \ \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"Specifies the requested moderation status. - Note, comments can be in statuses, which are not available through this call. - For example, this call does not allow to mark a comment as 'likely spam'. - Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"Modifies the moderation status - of the comments with the given IDs\",\n \"repeated\": true\n - \ },\n \"banAuthor\": {\n \"type\": \"boolean\",\n - \ \"description\": \"If set to true the author of the comment - gets added to the ban list. This means all future comments of the author will - autmomatically be rejected. Only valid in combination with STATUS_REJECTED.\",\n - \ \"location\": \"query\",\n \"default\": \"false\"\n - \ }\n },\n \"parameterOrder\": [\n \"id\",\n - \ \"moderationStatus\"\n ]\n },\n \"list\": - {\n \"flatPath\": \"youtube/v3/comments\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.comments.list\",\n \"path\": \"youtube/v3/comments\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"default\": - \"20\",\n \"type\": \"integer\",\n \"maximum\": - \"100\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"1\",\n \"location\": - \"query\"\n },\n \"parentId\": {\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"Returns the comments with the given IDs for - One Platform.\",\n \"type\": \"string\"\n },\n \"textFormat\": - {\n \"location\": \"query\",\n \"default\": \"html\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"description\": - \"The requested text format for the returned comments.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies a comma-separated - list of one or more comment resource properties that the API response will - include.\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ }\n }\n }\n },\n \"videos\": {\n \"methods\": - {\n \"reportAbuse\": {\n \"description\": \"Report abuse for - a video.\",\n \"path\": \"youtube/v3/videos/reportAbuse\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n \"parameterOrder\": - [],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.reportAbuse\",\n \"request\": - {\n \"$ref\": \"VideoAbuseReport\"\n },\n \"httpMethod\": - \"POST\"\n },\n \"update\": {\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"id\": \"youtube.videos.update\",\n \"path\": - \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"getRating\": {\n \"flatPath\": - \"youtube/v3/videos/getRating\",\n \"description\": \"Retrieves the - ratings that the authorized user gave to a list of specified videos.\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"VideoGetRatingResponse\"\n },\n \"id\": \"youtube.videos.getRating\",\n - \ \"path\": \"youtube/v3/videos/getRating\"\n },\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/videos\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"supportsMediaUpload\": - true,\n \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"stabilize\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Should - stabilize be applied to the upload.\",\n \"location\": \"query\"\n - \ },\n \"notifySubscribers\": {\n \"default\": - \"true\",\n \"description\": \"Notify the channel subscribers - about the new video. As default, the notification is enabled.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n - \ \"autoLevels\": {\n \"location\": \"query\",\n \"description\": - \"Should auto-levels be applied to the upload.\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/videos\",\n \"multipart\": true\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"video/*\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"274877906944\"\n },\n - \ \"id\": \"youtube.videos.insert\",\n \"request\": {\n \"$ref\": - \"Video\"\n }\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.videos.list\",\n - \ \"path\": \"youtube/v3/videos\",\n \"parameters\": {\n - \ \"regionCode\": {\n \"type\": \"string\",\n \"description\": - \"Use a chart that is specific to the specified region\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"maxWidth\": {\n \"minimum\": \"72\",\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"maximum\": - \"8192\",\n \"location\": \"query\",\n \"description\": - \"Return the player with maximum height specified in\"\n },\n \"locale\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"videoCategoryId\": {\n \"default\": - \"0\",\n \"description\": \"Use chart that is specific to the - specified video category\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"maxHeight\": {\n \"format\": \"int32\",\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"minimum\": - \"72\",\n \"maximum\": \"8192\"\n },\n \"chart\": - {\n \"description\": \"Return the videos that are in the specified - chart.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"chartUnspecified\",\n \"mostPopular\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - the most popular videos for the specified content region and video category.\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"location\": - \"query\"\n },\n \"myRating\": {\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"description\": \"Return videos - liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"1\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return videos with the given ids.\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/videos\",\n \"response\": - {\n \"$ref\": \"VideoListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\"\n },\n \"rate\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos/rate\",\n \"id\": \"youtube.videos.rate\",\n - \ \"parameterOrder\": [\n \"id\",\n \"rating\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos/rate\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Adds a like or dislike rating to a - video or removes a rating from a video.\",\n \"parameters\": {\n - \ \"rating\": {\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"required\": true\n },\n \"id\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n }\n },\n - \ \"delete\": {\n \"flatPath\": \"youtube/v3/videos\",\n \"path\": - \"youtube/v3/videos\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.videos.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"insert\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"id\": \"youtube.liveChatModerators.insert\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"request\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"description\": - \"Deletes a chat moderator.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"DELETE\",\n \"id\": - \"youtube.liveChatModerators.delete\"\n },\n \"list\": {\n \"parameters\": - {\n \"maxResults\": {\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"default\": \"5\",\n \"type\": - \"integer\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"liveChatId\": {\n \"description\": - \"The id of the live chat for which moderators should be returned.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"description\": \"The - *part* parameter specifies the liveChatModerator resource parts that the API - response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"id\": \"youtube.liveChatModerators.list\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"channelSections\": - {\n \"methods\": {\n \"insert\": {\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"id\": \"youtube.channelSections.insert\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n }\n - \ },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"id\": \"youtube.channelSections.update\",\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"list\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the ChannelSections - owned by the authenticated user.\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channelSections.list\",\n \"response\": - {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/channelSections\"\n },\n - \ \"delete\": {\n \"parameters\": {\n \"id\": {\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.channelSections.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/channelSections\",\n \"description\": \"Deletes a resource.\",\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/channelSections\"\n - \ }\n }\n }\n },\n \"id\": \"youtube:v3\",\n \"kind\": \"discovery#restDescription\",\n - \ \"discoveryVersion\": \"v1\",\n \"revision\": \"20230220\",\n \"schemas\": - {\n \"LiveChatMessageSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"memberMilestoneChatDetails\": {\n \"description\": \"Details - about the Member Milestone Chat event, this is only set if the type is 'memberMilestoneChatEvent'.\",\n - \ \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"superStickerDetails\": {\n \"description\": \"Details about - the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"membershipGiftingDetails\": {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n - \ \"description\": \"Details about the Membership Gifting event, this - is only set if the type is 'membershipGiftingEvent'.\"\n },\n \"liveChatId\": - {\n \"type\": \"string\"\n },\n \"hasDisplayContent\": - {\n \"description\": \"Whether the message has display content that - should be displayed to users.\",\n \"type\": \"boolean\"\n },\n - \ \"giftMembershipReceivedDetails\": {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"description\": \"Details about the Gift Membership Received event, - this is only set if the type is 'giftMembershipReceivedEvent'.\"\n },\n - \ \"superChatDetails\": {\n \"description\": \"Details about - the Super Chat event, this is only set if the type is 'superChatEvent'.\",\n - \ \"$ref\": \"LiveChatSuperChatDetails\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\",\n \"type\": \"string\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"displayMessage\": - {\n \"type\": \"string\",\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the message was orignally published.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"fanFundingEventDetails\": - {\n \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n - \ \"description\": \"Details about the New Member Announcement event, - this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" - is the new term for \\\"sponsor\\\".\"\n },\n \"authorChannelId\": - {\n \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Next ID: 33\",\n \"id\": \"LiveChatMessageSnippet\"\n - \ },\n \"CaptionListResponse\": {\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#captionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of captions that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Caption\"\n }\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n },\n \"id\": \"CaptionListResponse\",\n - \ \"type\": \"object\"\n },\n \"AbuseReport\": {\n \"properties\": - {\n \"abuseTypes\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"AbuseType\"\n }\n },\n \"subject\": - {\n \"$ref\": \"Entity\"\n },\n \"description\": {\n - \ \"type\": \"string\"\n },\n \"relatedEntities\": {\n - \ \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n - \ \"type\": \"array\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"AbuseReport\"\n },\n \"ActivityListResponse\": {\n \"properties\": - {\n \"pageInfo\": {\n \"description\": \"General pagination - information.\",\n \"$ref\": \"PageInfo\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n \"default\": - \"youtube#activityListResponse\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Activity\"\n }\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": - \"ActivityListResponse\",\n \"type\": \"object\"\n },\n \"ChannelBrandingSettings\": - {\n \"id\": \"ChannelBrandingSettings\",\n \"description\": \"Branding - properties of a YouTube channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"hints\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n },\n \"description\": - \"Additional experimental branding properties.\"\n },\n \"watch\": - {\n \"$ref\": \"WatchSettings\",\n \"description\": \"Branding - properties for the watch page.\"\n },\n \"channel\": {\n \"description\": - \"Branding properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n - \ },\n \"image\": {\n \"$ref\": \"ImageSettings\",\n - \ \"description\": \"Branding properties for branding images.\"\n - \ }\n }\n },\n \"VideoAgeGating\": {\n \"id\": \"VideoAgeGating\",\n - \ \"properties\": {\n \"videoGameRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"Video game rating, if any.\"\n - \ },\n \"restricted\": {\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\",\n \"type\": - \"boolean\"\n },\n \"alcoholContent\": {\n \"description\": - \"Indicates whether or not the video has alcoholic beverage content. Only - users of legal purchasing age in a particular country, as identified by ICAP, - can view the content.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"SearchResultSnippet\": {\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"properties\": {\n - \ \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"liveBroadcastContent\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n },\n - \ \"description\": {\n \"description\": \"A description of - the search result.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The title of the search result.\"\n - \ },\n \"channelTitle\": {\n \"description\": \"The - title of the channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The creation date and time of the resource that the search result identifies.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"SearchResultSnippet\",\n \"type\": \"object\"\n - \ },\n \"SubscriptionSnippet\": {\n \"properties\": {\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the subscription was created.\"\n - \ },\n \"resourceId\": {\n \"description\": \"The id - object contains information about the channel that the user subscribed to.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n - \ \"channelTitle\": {\n \"description\": \"Channel title for - the channel that the subscription belongs to.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"The subscription's - details.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The subscription's - title.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the subscriber's channel.\"\n }\n },\n \"id\": \"SubscriptionSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a subscription, including title, description and thumbnails of the subscribed - item.\"\n },\n \"LiveChatMessageListResponse\": {\n \"properties\": - {\n \"pollingIntervalMillis\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The amount - of time the client should wait before polling again.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\"\n - \ },\n \"offlineAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the underlying stream went offline.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"type\": \"array\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageListResponse\"\n - \ },\n \"VideoPlayer\": {\n \"id\": \"VideoPlayer\",\n \"type\": - \"object\",\n \"properties\": {\n \"embedWidth\": {\n \"description\": - \"The embed width\",\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"embedHtml\": {\n \"type\": \"string\",\n - \ \"description\": \"An \\u003ciframe\\u003e tag that embeds a player - that will play the video.\"\n },\n \"embedHeight\": {\n \"type\": - \"string\",\n \"format\": \"int64\"\n }\n },\n \"description\": - \"Player to be used for a video playback.\"\n },\n \"ThirdPartyLinkStatus\": - {\n \"type\": \"object\",\n \"properties\": {\n \"linkStatus\": - {\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"id\": - \"ThirdPartyLinkStatus\",\n \"description\": \"The third-party link status - object contains information about the status of the link.\"\n },\n \"VideoSnippet\": - {\n \"id\": \"VideoSnippet\",\n \"properties\": {\n \"localized\": - {\n \"$ref\": \"VideoLocalization\",\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the video belongs to.\"\n },\n \"defaultAudioLanguage\": {\n - \ \"type\": \"string\",\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The video's title. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ },\n \"categoryId\": {\n \"description\": \"The YouTube - video category associated with the video.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the video was uploaded.\",\n - \ \"format\": \"date-time\"\n },\n \"tags\": {\n \"description\": - \"A list of keyword tags associated with the video. Tags may contain spaces.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the videos's default - snippet.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that the video - was uploaded to.\",\n \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n }\n - \ },\n \"description\": \"Basic details about a video, including - title, description, uploader, thumbnails and category.\",\n \"type\": - \"object\"\n },\n \"I18nLanguageListResponse\": {\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"description\": \"A list of supported i18n languages. In this - map, the i18n language ID is the map key, and its value is the corresponding - i18nLanguage resource.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n }\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"I18nLanguageListResponse\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"properties\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The kind of error happening.\",\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The long-form - description of the issue and how to resolve it.\"\n },\n \"severity\": - {\n \"description\": \"How severe this issue is to the stream.\",\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"reason\": {\n \"description\": \"The short-form reason - for this issue.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LiveStreamConfigurationIssue\",\n \"type\": \"object\"\n - \ },\n \"ThirdPartyLinkListResponse\": {\n \"properties\": {\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n }\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ThirdPartyLinkListResponse\"\n },\n \"MembershipsDetails\": - {\n \"properties\": {\n \"highestAccessibleLevel\": {\n \"type\": - \"string\",\n \"description\": \"Id of the highest level that the - user has access to at the moment.\"\n },\n \"membershipsDurationAtLevels\": - {\n \"description\": \"Data about memberships duration on particular - pricing levels.\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ },\n \"type\": \"array\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"description\": \"Display name for the highest level that the - user has access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"accessibleLevels\": {\n \"description\": \"Ids of all levels - that the user has access to. This includes the currently active level and - all other levels that are included because of a higher purchase.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"membershipsDuration\": {\n \"description\": - \"Data about memberships duration without taking into consideration pricing - levels.\",\n \"$ref\": \"MembershipsDuration\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"MembershipsDetails\"\n },\n - \ \"ThumbnailDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The default image for this resource.\"\n },\n \"high\": {\n - \ \"description\": \"The high quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"standard\": {\n \"description\": - \"The standard quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"maxres\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The maximum resolution quality image for this resource.\"\n },\n - \ \"medium\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The medium quality image for this resource.\"\n }\n },\n \"description\": - \"Internal representation of thumbnails for a YouTube resource.\",\n \"id\": - \"ThumbnailDetails\"\n },\n \"PlaylistItemContentDetails\": {\n \"properties\": - {\n \"note\": {\n \"description\": \"A user-generated note - for this item.\",\n \"type\": \"string\"\n },\n \"endAt\": - {\n \"description\": \"The time, measured in seconds from the start - of the video, when the video should stop playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) By default, assume that the video.endTime - is the end of the video.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify a video. To retrieve the video resource, set the id query - parameter to this value in your API request.\",\n \"type\": \"string\"\n - \ },\n \"startAt\": {\n \"description\": \"The time, - measured in seconds from the start of the video, when the video should start - playing. (The playlist owner can specify the times when the video should start - and stop playing when the video is played in the context of the playlist.) - The default value is 0.\",\n \"type\": \"string\"\n },\n \"videoPublishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the video was published to YouTube.\",\n \"format\": - \"date-time\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"PlaylistItemContentDetails\"\n },\n \"VideoFileDetailsAudioStream\": - {\n \"properties\": {\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"description\": \"The audio stream's bitrate, in bits - per second.\",\n \"type\": \"string\"\n },\n \"codec\": - {\n \"description\": \"The audio codec that the stream uses.\",\n - \ \"type\": \"string\"\n },\n \"channelCount\": {\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of audio channels that the stream contains.\"\n },\n \"vendor\": - {\n \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoFileDetailsAudioStream\",\n - \ \"type\": \"object\",\n \"description\": \"Information about an - audio stream.\"\n },\n \"VideoLiveStreamingDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"actualEndTime\": {\n \"description\": - \"The time that the broadcast actually ended. This value will not be available - until the broadcast is over.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"scheduledEndTime\": {\n \"description\": - \"The time that the broadcast is scheduled to end. If the value is empty or - the property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"concurrentViewers\": {\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"activeLiveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the currently active live chat attached to this video. This field is filled - only if the video is a currently live broadcast that has live chat. Once the - broadcast transitions to complete this field will be removed and the live - chat closed down. For persistent broadcasts that live chat id will no longer - be tied to this video but rather to the new video being displayed at the persistent - page.\"\n },\n \"actualStartTime\": {\n \"description\": - \"The time that the broadcast actually started. This value will not be available - until the broadcast begins.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"scheduledStartTime\": {\n \"description\": - \"The time that the broadcast is scheduled to begin.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"VideoLiveStreamingDetails\",\n \"description\": \"Details about the - live streaming metadata.\"\n },\n \"ChannelTopicDetails\": {\n \"id\": - \"ChannelTopicDetails\",\n \"properties\": {\n \"topicIds\": {\n - \ \"description\": \"A list of Freebase topic IDs associated with - the channel. You can retrieve information about each topic using the Freebase - Topic API.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"topicCategories\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Wikipedia URLs that describe the channel's - content.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Freebase topic information related to the channel.\"\n },\n \"LanguageTag\": - {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LanguageTag\"\n - \ },\n \"ChannelSettings\": {\n \"type\": \"object\",\n \"description\": - \"Branding properties for the channel view.\",\n \"id\": \"ChannelSettings\",\n - \ \"properties\": {\n \"featuredChannelsUrls\": {\n \"type\": - \"array\",\n \"description\": \"The list of featured channels.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"keywords\": {\n \"type\": \"string\",\n \"description\": - \"Lists keywords associated with the channel, comma-separated.\"\n },\n - \ \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"moderateComments\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - user-submitted comments left on the channel page need to be approved by the - channel owner to be publicly visible.\"\n },\n \"profileColor\": - {\n \"type\": \"string\",\n \"description\": \"A prominent - color that can be rendered on this channel page.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the channel description.\"\n },\n \"title\": {\n \"description\": - \"Specifies the channel title.\",\n \"type\": \"string\"\n },\n - \ \"unsubscribedTrailer\": {\n \"type\": \"string\",\n \"description\": - \"The trailer of the channel, for users that are not subscribers.\"\n },\n - \ \"showBrowseView\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the tab to browse the videos should be displayed.\"\n },\n - \ \"defaultTab\": {\n \"description\": \"Which content tab - users should see when viewing the channel.\",\n \"type\": \"string\"\n - \ },\n \"featuredChannelsTitle\": {\n \"description\": - \"Title for the featured channels tab.\",\n \"type\": \"string\"\n - \ },\n \"trackingAnalyticsAccountId\": {\n \"type\": - \"string\",\n \"description\": \"The ID for a Google Analytics account - to track and measure traffic to the channels.\"\n }\n }\n },\n - \ \"LiveChatGiftMembershipReceivedDetails\": {\n \"properties\": {\n - \ \"gifterChannelId\": {\n \"description\": \"The ID of the - user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\",\n \"type\": \"string\"\n - \ },\n \"memberLevelName\": {\n \"description\": \"The - name of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ }\n },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"type\": \"object\"\n },\n \"PlaylistListResponse\": {\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlistListResponse\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Playlist\"\n },\n \"description\": \"A list of playlists - that match the request criteria\",\n \"type\": \"array\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"PlaylistListResponse\"\n },\n \"LiveStreamStatus\": - {\n \"description\": \"Brief description of the live stream status.\",\n - \ \"type\": \"object\",\n \"id\": \"LiveStreamStatus\",\n \"properties\": - {\n \"healthStatus\": {\n \"description\": \"The health status - of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n },\n - \ \"streamStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ]\n }\n }\n },\n \"PlaylistItem\": - {\n \"type\": \"object\",\n \"description\": \"A *playlistItem* - resource identifies another resource, such as a video, that is included in - a playlist. In addition, the playlistItem resource contains details about - the included resource that pertain specifically to how that resource is used - in that playlist. YouTube uses playlists to identify special collections of - videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods. For example, if - a user gives a positive rating to a video, you would insert that video into - the liked videos playlist for that user's channel.\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist item, such as its title and position in the playlist.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlistItem\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"PlaylistItemContentDetails\",\n - \ \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the playlist item's privacy status.\",\n \"$ref\": - \"PlaylistItemStatus\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the playlist item.\"\n }\n },\n \"id\": \"PlaylistItem\"\n - \ },\n \"Playlist\": {\n \"type\": \"object\",\n \"description\": - \"A *playlist* resource represents a YouTube playlist. A playlist is a collection - of videos that can be viewed sequentially and shared with other users. A playlist - can contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"id\": \"Playlist\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#playlist\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"localizations\": {\n \"description\": \"Localizations for - different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"PlaylistLocalization\"\n },\n \"type\": \"object\"\n },\n - \ \"status\": {\n \"$ref\": \"PlaylistStatus\",\n \"description\": - \"The status object contains status information for the playlist.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the playlist - in an embedded player.\",\n \"$ref\": \"PlaylistPlayer\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"PlaylistContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - like video count.\"\n }\n }\n },\n \"ActivityContentDetailsUpload\": - {\n \"description\": \"Information about the uploaded video.\",\n \"id\": - \"ActivityContentDetailsUpload\",\n \"type\": \"object\",\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\"\n }\n - \ }\n },\n \"SuperChatEventListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"SuperChatEventListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"SuperChatEvent\"\n },\n \"description\": \"A list of Super - Chat purchases that match the request criteria.\",\n \"type\": \"array\"\n - \ }\n }\n },\n \"ThirdPartyLink\": {\n \"id\": \"ThirdPartyLink\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"status\": - {\n \"$ref\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The status object contains information about the status of the link.\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the third- party account link.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n \"default\": - \"youtube#thirdPartyLink\"\n },\n \"linkingToken\": {\n \"type\": - \"string\",\n \"description\": \"The linking_token identifies a YouTube - account and channel with which the third party account is linked.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A *third party account link* resource represents a link between a YouTube - account or a channel and an account on a third-party service.\"\n },\n - \ \"VideoAbuseReportReasonSnippet\": {\n \"properties\": {\n \"secondaryReasons\": - {\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"description\": \"The secondary reasons associated - with this reason, if any are available. (There might be 0 or more.)\",\n \"type\": - \"array\"\n },\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label belonging to this abuse report - reason.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoAbuseReportReasonSnippet\",\n \"description\": \"Basic details - about a video category, such as its localized title.\"\n },\n \"ChannelSectionTargeting\": - {\n \"properties\": {\n \"regions\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"The region the channel section is targeting.\"\n },\n \"countries\": - {\n \"description\": \"The country the channel section is targeting.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"languages\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"description\": - \"The language the channel section is targeting.\",\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"ChannelSectionTargeting\",\n \"description\": - \"ChannelSection targeting setting.\",\n \"type\": \"object\"\n },\n - \ \"VideoSuggestionsTagSuggestion\": {\n \"properties\": {\n \"tag\": - {\n \"type\": \"string\",\n \"description\": \"The keyword - tag suggested for the video.\"\n },\n \"categoryRestricts\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A set of video categories - for which the tag is relevant. You can use this information to display appropriate - tag suggestions based on the video category that the video uploader associates - with the video. By default, tag suggestions are relevant for all categories - if there are no restricts defined for the keyword.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"A single tag suggestion - with it's relevance information.\",\n \"id\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"LiveChatTextMessageDetails\": {\n \"properties\": {\n \"messageText\": - {\n \"type\": \"string\",\n \"description\": \"The user's - message.\"\n }\n },\n \"id\": \"LiveChatTextMessageDetails\",\n - \ \"type\": \"object\"\n },\n \"MemberSnippet\": {\n \"properties\": - {\n \"membershipsDetails\": {\n \"$ref\": \"MembershipsDetails\",\n - \ \"description\": \"Details about the user's membership.\"\n },\n - \ \"memberDetails\": {\n \"description\": \"Details about the - member.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"creatorChannelId\": - {\n \"description\": \"The id of the channel that's offering memberships.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"MemberSnippet\",\n - \ \"type\": \"object\"\n },\n \"AccessPolicy\": {\n \"id\": - \"AccessPolicy\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"allowed\": {\n \"description\": \"The value of allowed - indicates whether the access to the policy is allowed or denied by default.\",\n - \ \"type\": \"boolean\"\n },\n \"exception\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of region codes that identify countries - where the default policy do not apply.\"\n }\n },\n \"description\": - \"Rights management policy for YouTube resources.\"\n },\n \"WatchSettings\": - {\n \"description\": \"Branding properties for the watch. All deprecated.\",\n - \ \"properties\": {\n \"textColor\": {\n \"description\": - \"The background color for the video watch page's branded area.\",\n \"type\": - \"string\"\n },\n \"backgroundColor\": {\n \"description\": - \"The text color for the video watch page's branded area.\",\n \"type\": - \"string\"\n },\n \"featuredPlaylistId\": {\n \"type\": - \"string\",\n \"description\": \"An ID that uniquely identifies a - playlist that displays next to the video player.\"\n }\n },\n - \ \"id\": \"WatchSettings\",\n \"type\": \"object\"\n },\n \"ChannelToStoreLinkDetails\": - {\n \"id\": \"ChannelToStoreLinkDetails\",\n \"type\": \"object\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"properties\": {\n \"storeName\": - {\n \"type\": \"string\",\n \"description\": \"Name of the - store.\"\n },\n \"storeUrl\": {\n \"description\": - \"Landing page of the store.\",\n \"type\": \"string\"\n },\n - \ \"merchantId\": {\n \"description\": \"Google Merchant Center - id of the store.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoSuggestions\": {\n \"description\": - \"Specifies suggestions on how to improve video content, including encoding - hints, tag suggestions, and editor suggestions.\",\n \"properties\": - {\n \"tagSuggestions\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n },\n - \ \"description\": \"A list of keyword tags that could be added to - the video's metadata to increase the likelihood that users will locate your - video when searching or browsing on YouTube.\"\n },\n \"processingHints\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ],\n \"enumDescriptions\": [\n \"The MP4 - file is not streamable, this will slow down the processing. MOOV atom was - not found at the beginning of the file.\",\n \"Probably a better - quality version of the video exists. The video has wide screen aspect ratio, - but is not an HD video.\",\n \"Uploaded video is spherical video.\",\n - \ \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ]\n - \ },\n \"description\": \"A list of suggestions that may - improve YouTube's ability to process the video.\"\n },\n \"editorSuggestions\": - {\n \"description\": \"A list of video editing operations that might - improve the video quality or playback experience of the uploaded video.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"enum\": - [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ]\n - \ }\n },\n \"processingWarnings\": {\n \"type\": - \"array\",\n \"description\": \"A list of reasons why YouTube may - have difficulty transcoding the uploaded video or that might result in an - erroneous transcoding. These warnings are generated before YouTube actually - processes the uploaded video file. In addition, they identify issues that - are unlikely to cause the video processing to fail but that might cause problems - such as sync issues, video artifacts, or a missing audio track.\",\n \"items\": - {\n \"enumDescriptions\": [\n \"Unrecognized file - format, transcoding is likely to fail.\",\n \"Unrecognized video - codec, transcoding is likely to fail.\",\n \"Unrecognized audio - codec, transcoding is likely to fail.\",\n \"Conflicting container - and stream resolutions.\",\n \"Edit lists are not currently supported.\",\n - \ \"Video codec that is known to cause problems was used.\",\n - \ \"Audio codec that is known to cause problems was used.\",\n - \ \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"type\": - \"string\"\n }\n },\n \"processingErrors\": {\n \"type\": - \"array\",\n \"description\": \"A list of errors that will prevent - YouTube from successfully processing the uploaded video video. These errors - indicate that, regardless of the video's current processing status, eventually, - that status will almost certainly be failed.\",\n \"items\": {\n - \ \"enumDescriptions\": [\n \"File contains audio only - (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n - \ \"Movie project file (e.g., Microsoft Windows Movie Maker project).\",\n - \ \"Other non-video file.\",\n \"Document or text - file (e.g., MS Word document).\",\n \"An archive file (e.g., - a ZIP archive).\",\n \"Unsupported spatial audio layout type.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n - \ \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n - \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n - \ \"unsupportedSpatialAudioLayout\"\n ]\n }\n - \ }\n },\n \"id\": \"VideoSuggestions\",\n \"type\": - \"object\"\n },\n \"LiveBroadcastSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"scheduledEndTime\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast is scheduled to end.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's title. Note that the broadcast - represents exactly one YouTube video. You can set this field by modifying - the broadcast resource or by setting the title field of the corresponding - video resource.\"\n },\n \"actualEndTime\": {\n \"description\": - \"The date and time that the broadcast actually ended. This information is - only available once the broadcast's state is complete.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"actualStartTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast actually started. This information is only available - once the broadcast's state is live.\",\n \"format\": \"date-time\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that is publishing the - broadcast.\",\n \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the broadcast. For each nested object in this object, the - key is the name of the thumbnail image, and the value is an object that contains - other information about the thumbnail.\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the live chat for this broadcast.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast was added to YouTube's live broadcast schedule.\",\n - \ \"format\": \"date-time\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\"\n - \ },\n \"isDefaultBroadcast\": {\n \"description\": - \"Indicates whether this broadcast is the default broadcast. Internal only.\",\n - \ \"type\": \"boolean\"\n }\n },\n \"id\": \"LiveBroadcastSnippet\",\n - \ \"description\": \"Basic broadcast information.\"\n },\n \"LiveBroadcastListResponse\": - {\n \"type\": \"object\",\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveBroadcastListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of broadcasts that match the request criteria.\"\n }\n }\n - \ },\n \"VideoAbuseReportReason\": {\n \"type\": \"object\",\n \"description\": - \"A `__videoAbuseReportReason__` resource identifies a reason that a video - could be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\",\n - \ \"id\": \"VideoAbuseReportReason\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID of this abuse report reason.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the abuse report reason.\",\n \"$ref\": \"VideoAbuseReportReasonSnippet\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReason\"\n }\n }\n - \ },\n \"TokenPagination\": {\n \"id\": \"TokenPagination\",\n \"properties\": - {},\n \"type\": \"object\",\n \"description\": \"Stub token pagination - template to suppress results.\"\n },\n \"LiveChatBanSnippet\": {\n \"id\": - \"LiveChatBanSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The chat this ban is pertinent to.\"\n },\n \"banDurationSeconds\": - {\n \"format\": \"uint64\",\n \"description\": \"The duration - of a ban, only filled if the ban has type TEMPORARY.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"description\": \"The - type of ban.\",\n \"enumDescriptions\": [\n \"An invalid - ban type.\",\n \"A permanent ban.\",\n \"A temporary - ban.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ]\n }\n }\n },\n \"MonitorStreamInfo\": - {\n \"type\": \"object\",\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"HTML code - that embeds a player that plays the monitor stream.\"\n },\n \"broadcastStreamDelayMs\": - {\n \"type\": \"integer\",\n \"description\": \"If you have - set the enableMonitorStream property to true, then this property determines - the length of the live broadcast delay.\",\n \"format\": \"uint32\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"enableMonitorStream\": {\n - \ \"description\": \"This value determines whether the monitor stream - is enabled for the broadcast. If the monitor stream is enabled, then YouTube - will broadcast the event content on a special stream intended only for the - broadcaster's consumption. The broadcaster can use the stream to review the - event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"boolean\"\n }\n },\n \"id\": \"MonitorStreamInfo\",\n - \ \"description\": \"Settings and Info of the monitor stream\"\n },\n - \ \"IngestionInfo\": {\n \"id\": \"IngestionInfo\",\n \"description\": - \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"ingestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The primary - ingestion URL that you should use to stream video to YouTube. You must stream - video to this URL. Depending on which application or tool you use to encode - your video stream, you may need to enter the stream URL and stream name separately - or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \"\n },\n \"streamName\": {\n \"description\": \"The - stream name that YouTube assigns to the video stream.\",\n \"type\": - \"string\"\n },\n \"rtmpsIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\"\n },\n \"backupIngestionAddress\": {\n \"description\": - \"The backup ingestion URL that you should use to stream video to YouTube. - You have the option of simultaneously streaming the content that you are sending - to the ingestionAddress to this URL.\",\n \"type\": \"string\"\n - \ },\n \"rtmpsBackupIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of backupIngestionAddress in order - to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n \"type\": - \"object\",\n \"description\": \"Video processing progress and completion - time estimate.\",\n \"properties\": {\n \"partsProcessed\": {\n - \ \"type\": \"string\",\n \"description\": \"The number of - parts of the video that YouTube has already processed. You can estimate the - percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\",\n \"format\": - \"uint64\"\n },\n \"partsTotal\": {\n \"type\": \"string\",\n - \ \"description\": \"An estimate of the total number of parts that - need to be processed for the video. The number may be updated with more precise - estimates while YouTube processes the video.\",\n \"format\": \"uint64\"\n - \ },\n \"timeLeftMs\": {\n \"type\": \"string\",\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\",\n \"format\": \"uint64\"\n }\n - \ }\n },\n \"ChannelAuditDetails\": {\n \"description\": \"The - auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\",\n \"type\": \"object\",\n \"properties\": - {\n \"contentIdClaimsGoodStanding\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether or not the channel has any unresolved - claims.\"\n },\n \"copyrightStrikesGoodStanding\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the channel has - any copyright strikes.\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n }\n },\n \"id\": - \"ChannelAuditDetails\"\n },\n \"LiveChatMessage\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the message.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the message.\",\n \"$ref\": - \"LiveChatMessageSnippet\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatMessage\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"authorDetails\": {\n \"description\": \"The - authorDetails object contains basic details about the user that posted this - message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A *liveChatMessage* - resource represents a chat message in a YouTube Live Chat.\",\n \"id\": - \"LiveChatMessage\"\n },\n \"LiveChatModeratorListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of moderators that match the request criteria.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"id\": \"LiveChatModeratorListResponse\"\n },\n - \ \"I18nRegionListResponse\": {\n \"type\": \"object\",\n \"id\": - \"I18nRegionListResponse\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n },\n \"description\": \"A list of regions - where YouTube is available. In this map, the i18n region ID is the map key, - and its value is the corresponding i18nRegion resource.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#i18nRegionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n }\n },\n \"LevelDetails\": {\n \"id\": - \"LevelDetails\",\n \"properties\": {\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The name that should be used when - referring to this level.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"PlaylistItemListResponse\": {\n \"properties\": {\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of playlist - items that match the request criteria.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"PlaylistItem\"\n }\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#playlistItemListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\"\n }\n },\n \"id\": \"PlaylistItemListResponse\",\n - \ \"type\": \"object\"\n },\n \"VideoGetRatingResponse\": {\n \"id\": - \"VideoGetRatingResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - ratings that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"VideoRating\"\n }\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoGetRatingResponse\"\n - \ }\n }\n },\n \"PlaylistLocalization\": {\n \"id\": - \"PlaylistLocalization\",\n \"description\": \"Playlist localization - setting\",\n \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for playlist's title.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for playlist's description.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"id\": \"CommentSnippetAuthorChannelId\",\n \"type\": \"object\",\n - \ \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"Member\": {\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"MemberSnippet\",\n \"description\": \"The - snippet object contains basic details about the member.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#member\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Member\",\n - \ \"description\": \"A *member* resource represents a member for a YouTube - channel. A member provides recurring monetary support to a creator and receives - special benefits.\"\n },\n \"SubscriptionListResponse\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"items\": - {\n \"description\": \"A list of subscriptions that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"type\": \"array\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"id\": \"SubscriptionListResponse\",\n \"type\": - \"object\"\n },\n \"SubscriptionContentDetails\": {\n \"description\": - \"Details about the content to witch a subscription refers.\",\n \"id\": - \"SubscriptionContentDetails\",\n \"properties\": {\n \"totalItemCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The approximate number of items that the subscription points to.\"\n },\n - \ \"newItemCount\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The number of new items in the - subscription since its content was last read.\"\n },\n \"activityType\": - {\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The type of activity - this subscription is for (only uploads, everything).\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoFileDetails\": {\n \"description\": - \"Describes original video file properties, including technical details about - audio and video streams, but also metadata information like content length, - digitization time, or geotagging information.\",\n \"id\": \"VideoFileDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"creationTime\": - {\n \"description\": \"The date and time when the uploaded video - file was created. The value is specified in ISO 8601 format. Currently, the - following ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive - time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \",\n \"type\": \"string\"\n },\n \"bitrateBps\": {\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - video file's combined (video and audio) bitrate in bits per second.\",\n \"format\": - \"uint64\"\n },\n \"fileName\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded file's name. This field is present - whether a video file or another type of file was uploaded.\"\n },\n - \ \"container\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded video file's container format.\"\n },\n \"fileSize\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\"\n },\n \"fileType\": - {\n \"enum\": [\n \"video\",\n \"audio\",\n - \ \"image\",\n \"archive\",\n \"document\",\n - \ \"project\",\n \"other\"\n ],\n \"type\": - \"string\",\n \"description\": \"The uploaded file's type as detected - by YouTube's video processing engine. Currently, YouTube only processes video - files, but this field is present whether a video file or another type of file - was uploaded.\",\n \"enumDescriptions\": [\n \"Known video - file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an MP3 - file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ]\n - \ },\n \"audioStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsAudioStream\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of audio streams contained in the uploaded - video file. Each item in the list contains detailed metadata about an audio - stream.\"\n },\n \"durationMs\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The length of the uploaded video in milliseconds.\",\n - \ \"type\": \"string\"\n },\n \"videoStreams\": {\n - \ \"type\": \"array\",\n \"description\": \"A list of video - streams contained in the uploaded video file. Each item in the list contains - detailed metadata about a video stream.\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n }\n }\n }\n },\n - \ \"MembershipsLevelSnippet\": {\n \"properties\": {\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering channel memberships.\"\n },\n \"levelDetails\": - {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details - about the pricing level.\"\n }\n },\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"type\": \"object\"\n },\n \"VideoRating\": {\n \"description\": - \"Basic details about rating of a video.\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n },\n \"rating\": - {\n \"description\": \"Rating of a video.\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoRating\"\n },\n \"ResourceId\": {\n \"description\": \"A - resource id is a generic reference that points to another YouTube resource.\",\n - \ \"id\": \"ResourceId\",\n \"type\": \"object\",\n \"properties\": - {\n \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"The type of the API resource.\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the referred resource, if that resource - is a channel. This property is only present if the resourceId.kind value is - youtube#channel.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the referred resource, if that resource - is a video. This property is only present if the resourceId.kind value is - youtube#video.\"\n }\n }\n },\n \"ChannelSection\": {\n - \ \"id\": \"ChannelSection\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#channelSection\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\",\n - \ \"type\": \"string\"\n },\n \"localizations\": {\n - \ \"description\": \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"type\": - \"object\"\n },\n \"targeting\": {\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelSectionContentDetails\": {\n \"description\": \"Details - about a channelsection, including playlists and channels.\",\n \"properties\": - {\n \"playlists\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\"\n },\n \"channels\": {\n \"type\": - \"array\",\n \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"id\": \"ChannelSectionContentDetails\",\n \"type\": - \"object\"\n },\n \"ChannelListResponse\": {\n \"properties\": - {\n \"pageInfo\": {\n \"description\": \"General pagination - information.\",\n \"$ref\": \"PageInfo\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Channel\"\n },\n \"type\": \"array\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#channelListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelListResponse\"\n - \ },\n \"LiveStreamHealthStatus\": {\n \"type\": \"object\",\n \"id\": - \"LiveStreamHealthStatus\",\n \"properties\": {\n \"status\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The status code of this stream\",\n - \ \"enum\": [\n \"good\",\n \"ok\",\n \"bad\",\n - \ \"noData\",\n \"revoked\"\n ]\n },\n - \ \"lastUpdateTimeSeconds\": {\n \"description\": \"The last - time this status was updated (in seconds)\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"configurationIssues\": - {\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"type\": \"array\",\n \"description\": \"The - configurations issues on this stream\"\n }\n }\n },\n \"VideoCategory\": - {\n \"description\": \"A *videoCategory* resource identifies a category - that has been or could be associated with uploaded videos.\",\n \"id\": - \"VideoCategory\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the video category, including its title.\",\n \"$ref\": - \"VideoCategorySnippet\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video category.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#videoCategory\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"properties\": {\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n },\n \"amountMicros\": {\n \"description\": - \"The amount of the fund.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"type\": - \"object\"\n },\n \"VideoListResponse\": {\n \"properties\": {\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Video\"\n }\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#videoListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoListResponse\\\".\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoListResponse\"\n },\n \"LiveChatMessageDeletedDetails\": {\n - \ \"id\": \"LiveChatMessageDeletedDetails\",\n \"properties\": {\n - \ \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveStreamContentDetails\": - {\n \"description\": \"Detailed settings of a stream.\",\n \"type\": - \"object\",\n \"properties\": {\n \"closedCaptionsIngestionUrl\": - {\n \"type\": \"string\",\n \"description\": \"The ingestion - URL where the closed captions of this stream are sent.\"\n },\n \"isReusable\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the stream is reusable, which means that it can be bound to multiple - broadcasts. It is common for broadcasters to reuse the same stream for many - different broadcasts if those broadcasts occur at different times. If you - set this value to false, then the stream will not be reusable, which means - that it can only be bound to one broadcast. Non-reusable streams differ from - reusable streams in the following ways: - A non-reusable stream can only be - bound to one broadcast. - A non-reusable stream might be deleted by an automated - process after the broadcast ends. - The liveStreams.list method does not list - non-reusable streams if you call the method and set the mine parameter to - true. The only way to use that method to retrieve the resource for a non-reusable - stream is to use the id parameter to identify the stream. \"\n }\n - \ },\n \"id\": \"LiveStreamContentDetails\"\n },\n \"ChannelConversionPing\": - {\n \"type\": \"object\",\n \"id\": \"ChannelConversionPing\",\n - \ \"description\": \"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.\",\n \"properties\": {\n \"context\": - {\n \"type\": \"string\",\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ],\n \"description\": - \"Defines the context of the ping.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"conversionUrl\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveChatModeratorSnippet\": {\n \"id\": \"LiveChatModeratorSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"liveChatId\": - {\n \"description\": \"The ID of the live chat this moderator can - act on.\",\n \"type\": \"string\"\n },\n \"moderatorDetails\": - {\n \"description\": \"Details about the moderator.\",\n \"$ref\": - \"ChannelProfileDetails\"\n }\n }\n },\n \"CommentThread\": - {\n \"id\": \"CommentThread\",\n \"description\": \"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.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThread\\\".\",\n \"default\": - \"youtube#commentThread\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"CommentThreadSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\"\n },\n \"replies\": {\n \"$ref\": - \"CommentThreadReplies\",\n \"description\": \"The replies object - contains a limited number of replies (if any) to the top level comment found - in the snippet.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"Thumbnail\": {\n \"description\": \"A thumbnail is an image - representing a YouTube resource.\",\n \"type\": \"object\",\n \"id\": - \"Thumbnail\",\n \"properties\": {\n \"height\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"(Optional) Height of the thumbnail image.\"\n },\n \"width\": - {\n \"type\": \"integer\",\n \"description\": \"(Optional) - Width of the thumbnail image.\",\n \"format\": \"uint32\"\n },\n - \ \"url\": {\n \"description\": \"The thumbnail image's URL.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ChannelContentDetails\": - {\n \"id\": \"ChannelContentDetails\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"properties\": {\n \"watchHistory\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"likes\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"uploads\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s uploaded videos. Use the videos.insert method to upload new videos - and the videos.delete method to delete previously uploaded videos.\"\n },\n - \ \"favorites\": {\n \"description\": \"The ID of the - playlist that contains the channel\\\"s favorite videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n },\n \"watchLater\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s watch later playlist. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n }\n - \ },\n \"type\": \"object\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Details about the content of a channel.\"\n - \ },\n \"ActivityContentDetailsLike\": {\n \"description\": \"Information - about a resource that received a positive (like) rating.\",\n \"id\": - \"ActivityContentDetailsLike\",\n \"type\": \"object\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the rated resource.\",\n \"$ref\": - \"ResourceId\"\n }\n }\n },\n \"LiveBroadcast\": {\n \"description\": - \"A *liveBroadcast* resource represents an event that will be streamed, via - live video, on YouTube.\",\n \"properties\": {\n \"status\": {\n - \ \"$ref\": \"LiveBroadcastStatus\",\n \"description\": \"The - status object contains information about the event's status.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information about the event's video content, such as whether - the content can be shown in an embedded video player or if it will be archived - and therefore available for viewing after the event has concluded.\",\n \"$ref\": - \"LiveBroadcastContentDetails\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveBroadcast\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the broadcast.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the event, including its title, description, start time, and end time.\",\n - \ \"$ref\": \"LiveBroadcastSnippet\"\n },\n \"statistics\": - {\n \"description\": \"The statistics object contains info about - the event's current stats. These include concurrent viewers and total chat - count. Statistics can change (in either direction) during the lifetime of - an event. Statistics are only returned while the event is live.\",\n \"$ref\": - \"LiveBroadcastStatistics\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LiveBroadcast\",\n \"type\": \"object\"\n },\n \"LiveChatBan\": - {\n \"id\": \"LiveChatBan\",\n \"description\": \"A `__liveChatBan__` - resource represents a ban for a YouTube live chat.\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the ban.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatBan\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"MembershipsLevelListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevelListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of pricing levels offered by a creator to the fans.\",\n \"items\": - {\n \"$ref\": \"MembershipsLevel\"\n },\n \"type\": - \"array\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"id\": \"MembershipsLevelListResponse\"\n },\n \"VideoStatistics\": - {\n \"description\": \"Statistics about the video, such as the number - of times the video was viewed or liked.\",\n \"id\": \"VideoStatistics\",\n - \ \"properties\": {\n \"likeCount\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The number of - users who have indicated that they liked the video by giving it a positive - rating.\"\n },\n \"dislikeCount\": {\n \"description\": - \"The number of users who have indicated that they disliked the video by giving - it a negative rating.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"viewCount\": {\n \"description\": - \"The number of times the video has been viewed.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"commentCount\": {\n - \ \"description\": \"The number of comments for the video.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"favoriteCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of users who currently have the video marked as a favorite video.\",\n \"format\": - \"uint64\"\n }\n },\n \"type\": \"object\"\n },\n \"CommentListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of comments that match the request criteria.\"\n }\n },\n - \ \"id\": \"CommentListResponse\",\n \"type\": \"object\"\n },\n - \ \"MemberListResponse\": {\n \"properties\": {\n \"items\": - {\n \"description\": \"A list of members that match the request criteria.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Member\"\n }\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ }\n },\n \"id\": \"MemberListResponse\",\n \"type\": - \"object\"\n },\n \"VideoStatus\": {\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title. Next Id: 18\",\n \"id\": \"VideoStatus\",\n \"properties\": - {\n \"privacyStatus\": {\n \"description\": \"The video's - privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\"\n },\n \"uploadStatus\": - {\n \"description\": \"The status of the uploaded video.\",\n \"enum\": - [\n \"uploaded\",\n \"processed\",\n \"failed\",\n - \ \"rejected\",\n \"deleted\"\n ],\n \"enumDescriptions\": - [\n \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"type\": - \"string\"\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\"\n },\n \"rejectionReason\": {\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ]\n },\n \"publishAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the video is scheduled - to publish. It can be set only if the privacy status of the video is private..\",\n - \ \"format\": \"date-time\"\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"failureReason\": - {\n \"type\": \"string\",\n \"description\": \"This value - explains why a video failed to upload. This property is only present if the - uploadStatus property indicates that the upload failed.\",\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ],\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ]\n },\n - \ \"license\": {\n \"description\": \"The video's license. - @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": - \"string\",\n \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"embeddable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value indicates if the video can be embedded - on another website. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ }\n }\n },\n \"CommentThreadSnippet\": {\n \"description\": - \"Basic details about a comment thread.\",\n \"type\": \"object\",\n - \ \"id\": \"CommentThreadSnippet\",\n \"properties\": {\n \"topLevelComment\": - {\n \"$ref\": \"Comment\",\n \"description\": \"The top - level comment of this thread.\"\n },\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"isPublic\": - {\n \"description\": \"Whether the thread (and therefore all its - comments) is visible to all YouTube users.\",\n \"type\": \"boolean\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID of - the video the comments refer to, if any. No video_id implies a channel discussion - comment.\",\n \"type\": \"string\"\n },\n \"totalReplyCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The total - number of replies (not including the top level comment).\",\n \"type\": - \"integer\"\n },\n \"canReply\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"MembershipsLevel\": {\n \"id\": - \"MembershipsLevel\",\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the memberships level.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#membershipsLevel\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"description\": \"A - *membershipsLevel* resource represents an offer made by YouTube creators for - their fans. Users can become members of the channel by joining one of the - available levels. They will provide recurring monetary support and receives - special benefits.\"\n },\n \"PlaylistSnippet\": {\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails.\",\n - \ \"id\": \"PlaylistSnippet\",\n \"properties\": {\n \"tags\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Keyword tags associated - with the playlist.\"\n },\n \"title\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The playlist's - title.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the playlist's default - title and description.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the playlist was created.\"\n },\n \"localized\": - {\n \"description\": \"Localized title and description, read-only.\",\n - \ \"$ref\": \"PlaylistLocalization\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist. 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.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"The channel - title of the channel that the video belongs to.\"\n },\n \"thumbnailVideoId\": - {\n \"type\": \"string\",\n \"description\": \"Note: if - the playlist has a custom thumbnail, this field will not be populated. The - video id selected by the user that will be used as the thumbnail of this playlist. - This field defaults to the first publicly viewable video in the playlist, - if: 1. The user has never selected a video to be the thumbnail of the playlist. - 2. The user selects a video to be the thumbnail, and then removes that video - from the playlist. 3. The user selects a non-owned video to be the thumbnail, - but that video becomes private, or gets deleted.\"\n },\n \"description\": - {\n \"description\": \"The playlist's description.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the playlist.\"\n }\n },\n \"type\": - \"object\"\n },\n \"TestItem\": {\n \"properties\": {\n \"gaia\": - {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\"\n },\n \"featuredPart\": - {\n \"type\": \"boolean\"\n },\n \"snippet\": {\n \"$ref\": - \"TestItemTestItemSnippet\"\n }\n },\n \"id\": \"TestItem\",\n - \ \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": {\n - \ \"id\": \"VideoFileDetailsVideoStream\",\n \"description\": \"Information - about a video stream.\",\n \"type\": \"object\",\n \"properties\": - {\n \"rotation\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The amount that YouTube needs to - rotate the original source content to properly display the video.\",\n \"enum\": - [\n \"none\",\n \"clockwise\",\n \"upsideDown\",\n - \ \"counterClockwise\",\n \"other\"\n ],\n \"type\": - \"string\"\n },\n \"vendor\": {\n \"type\": \"string\",\n - \ \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\"\n },\n \"widthPixels\": - {\n \"description\": \"The encoded video content's width in pixels. - You can calculate the video's encoding aspect ratio as width_pixels / height_pixels.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"frameRateFps\": {\n \"description\": \"The video stream's - frame rate, in frames per second.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n },\n \"heightPixels\": {\n \"description\": - \"The encoded video content's height in pixels.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"codec\": - {\n \"description\": \"The video codec that the stream uses.\",\n - \ \"type\": \"string\"\n },\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - video stream's bitrate, in bits per second.\"\n },\n \"aspectRatio\": - {\n \"format\": \"double\",\n \"type\": \"number\",\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\"\n }\n }\n },\n \"MembershipsDurationAtLevel\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsDurationAtLevel\",\n - \ \"properties\": {\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\"\n },\n - \ \"level\": {\n \"type\": \"string\",\n \"description\": - \"Pricing level ID.\"\n },\n \"memberSince\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the user - became a continuous member for the given level.\"\n }\n }\n },\n - \ \"ContentRating\": {\n \"description\": \"Ratings schemes. The country-specific - ratings are mostly for movies and shows. LINT.IfChange\",\n \"type\": - \"object\",\n \"properties\": {\n \"smsaRating\": {\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"smsaUnspecified\",\n - \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n - \ \"smsa15\",\n \"smsaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ]\n },\n \"fskRating\": - {\n \"description\": \"The video's Freiwillige Selbstkontrolle der - Filmwirtschaft (FSK - Germany) rating.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"FSK 0\",\n - \ \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"enum\": - [\n \"fskUnspecified\",\n \"fsk0\",\n \"fsk6\",\n - \ \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n \"fskUnrated\"\n - \ ]\n },\n \"kfcbRating\": {\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"enum\": - [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"acbRating\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"enum\": [\n \"acbUnspecified\",\n - \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n - \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n - \ \"acbR18plus\",\n \"acbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ]\n },\n \"bbfcRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n - \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n - \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n - \ \"bbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ],\n \"description\": \"The video's British - Board of Film Classification (BBFC) rating.\"\n },\n \"csaRating\": - {\n \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"Interdiction\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from France's Conseil sup\xE9rieur - de l\u2019audiovisuel, which rates broadcast content.\"\n },\n \"cbfcRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Central Board of Film Certification (CBFC - India) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ],\n \"enum\": [\n - \ \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ]\n },\n \"fmocRating\": {\n \"enum\": [\n - \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ]\n },\n \"mtrcbRating\": {\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"R-13\",\n \"R-16\",\n - \ \"R-18\",\n \"X\",\n \"\"\n ],\n - \ \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"eirinRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG-12\",\n \"R15+\",\n \"R18+\",\n - \ \"\"\n ],\n \"description\": \"The video's Eirin - (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n \"enum\": - [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ]\n },\n \"mccypRating\": {\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"skfilmRating\": {\n \"description\": \"The - video's rating in Slovakia.\",\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ]\n },\n \"catvRating\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n - \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n - \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n - \ \"catvE\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n - \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n - \ ]\n },\n \"lsfRating\": {\n \"enum\": [\n - \ \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ]\n },\n \"nfrcRating\": - {\n \"enum\": [\n \"nfrcUnspecified\",\n \"nfrcA\",\n - \ \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n - \ \"nfrcUnrated\"\n ],\n \"description\": \"The - video's rating from the Bulgarian National Film Center.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"ecbmctRating\": {\n \"type\": \"string\",\n - \ \"description\": \"Rating system in Turkey - Evaluation and Classification - Board of the Ministry of Culture and Tourism\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ],\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ]\n },\n \"nbcplRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Poland.\",\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"kijkwijzerRating\": - {\n \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ]\n },\n \"nmcRating\": {\n \"enum\": [\n - \ \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n - \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n - \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ],\n - \ \"description\": \"The National Media Council ratings system for - United Arab Emirates.\",\n \"type\": \"string\"\n },\n \"catvfrRating\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"enum\": - [\n \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n - \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n - \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ]\n },\n \"mpaaRating\": {\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enum\": - [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"eefilmRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Pere\",\n \"L\",\n \"MS-6\",\n \"K-6\",\n - \ \"MS-12\",\n \"K-12\",\n \"K-14\",\n \"K-16\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Estonia.\",\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ]\n },\n \"bfvcRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Thailand's Board of Film - and Video Censors.\",\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ]\n },\n - \ \"fpbRatingReasons\": {\n \"items\": {\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ]\n },\n \"description\": \"Reasons that explain - why the video received its FPB (South Africa) rating.\",\n \"type\": - \"array\"\n },\n \"nkclvRating\": {\n \"description\": - \"The video's rating from the Nacion\xE3lais Kino centrs (National Film Centre - of Latvia).\",\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"ifcoRating\": {\n \"description\": \"The video's Irish - Film Classification Office (IFCO - Ireland) rating. See the IFCO website for - more information.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"15A\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ]\n },\n \"rtcRating\": - {\n \"description\": \"The video's General Directorate of Radio, - Television and Cinematography (Mexico) rating.\",\n \"enum\": [\n - \ \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"anatelRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n - \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n - \ ],\n \"description\": \"The video's Anatel (Asociaci\xF3n - Nacional de Televisi\xF3n) rating for Chilean television.\",\n \"enum\": - [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ]\n },\n \"cceRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\"\n },\n \"incaaRating\": {\n \"enum\": - [\n \"incaaUnspecified\",\n \"incaaAtp\",\n \"incaaSam13\",\n - \ \"incaaSam16\",\n \"incaaSam18\",\n \"incaaC\",\n - \ \"incaaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"ATP (Apta - para todo publico)\",\n \"13 (Solo apta para mayores de 13 a\xF1os)\",\n - \ \"16 (Solo apta para mayores de 16 a\xF1os)\",\n \"18 - (Solo apta para mayores de 18 a\xF1os)\",\n \"X (Solo apta para - mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n \"\"\n - \ ],\n \"description\": \"The video's INCAA (Instituto Nacional - de Cine y Artes Audiovisuales - Argentina) rating.\"\n },\n \"djctqRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"L\",\n \"10\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n - \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n - \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n - \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n - \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n - \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n - \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n - \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n - \ ],\n \"description\": \"The video's Departamento de Justi\xE7a, - Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\"\n - \ },\n \"ilfilmRating\": {\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Israel.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"kmrbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n - \ \"kmrb12plus\",\n \"kmrb15plus\",\n \"kmrbTeenr\",\n - \ \"kmrbR\",\n \"kmrbUnrated\"\n ],\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\"\n },\n \"ytRating\": - {\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\"\n },\n - \ \"oflcRating\": {\n \"description\": \"The video's Office - of Film and Literature Classification (OFLC - New Zealand) rating.\",\n \"enum\": - [\n \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n - \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n - \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n - \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ],\n \"type\": - \"string\"\n },\n \"nfvcbRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Nigeria's National Film - and Video Censors Board.\",\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ]\n },\n \"egfilmRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Egypt.\",\n \"enum\": - [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n \"egfilm18\",\n - \ \"egfilmBn\",\n \"egfilmUnrated\"\n ]\n },\n - \ \"djctqRatingReasons\": {\n \"type\": \"array\",\n \"items\": - {\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"type\": \"string\"\n },\n - \ \"description\": \"Reasons that explain why the video received its - DJCQT (Brazil) rating.\"\n },\n \"cnaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"enum\": - [\n \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n - \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ]\n },\n \"fpbRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from South Africa's Film and Publication Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ]\n },\n \"rcnofRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\",\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ]\n },\n \"pefilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Peru.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ]\n },\n - \ \"mocRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ],\n \"description\": \"The video's Ministerio de Cultura - (Colombia) rating.\"\n },\n \"chvrsRating\": {\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ]\n },\n \"russiaRating\": - {\n \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's National - Film Registry of the Russian Federation (MKRF - Russia) rating.\"\n },\n - \ \"agcomRating\": {\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"description\": \"The - video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ]\n },\n \"cncRating\": {\n \"type\": - \"string\",\n \"description\": \"Rating system in France - Commission - de classification cinematographique\",\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ]\n },\n \"fcoRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"description\": - \"The video's rating from Hong Kong's Office for Film, Newspaper and Article - Administration.\",\n \"type\": \"string\"\n },\n \"resorteviolenciaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"description\": \"The video's rating in Venezuela.\"\n - \ },\n \"tvpgRating\": {\n \"description\": \"The video's - TV Parental Guidelines (TVPG) rating.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ],\n \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n - \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n - \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ]\n },\n \"cccRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ]\n },\n - \ \"bmukkRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ]\n },\n - \ \"chfilmRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"chfilmUnspecified\",\n \"chfilm0\",\n \"chfilm6\",\n - \ \"chfilm12\",\n \"chfilm16\",\n \"chfilm18\",\n - \ \"chfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Switzerland.\"\n },\n - \ \"mekuRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Finland's Kansallinen - Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n \"enum\": - [\n \"mekuUnspecified\",\n \"mekuS\",\n \"meku7\",\n - \ \"meku12\",\n \"meku16\",\n \"meku18\",\n - \ \"mekuUnrated\"\n ]\n },\n \"cscfRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Luxembourg's Commission de surveillance de la classification des - films (CSCF).\",\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ]\n },\n \"mpaatRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ],\n \"description\": \"The rating - system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ]\n },\n \"medietilsynetRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Medietilsynet, the Norwegian Media Authority.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n - \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ]\n - \ },\n \"mccaaRating\": {\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\"\n },\n - \ \"smaisRating\": {\n \"description\": \"The video's rating - in Iceland.\",\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ]\n },\n \"menaMpaaRating\": {\n \"enum\": - [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n - \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To - keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\",\n \"type\": \"string\"\n },\n \"mdaRating\": - {\n \"description\": \"The video's rating from Singapore's Media - Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ],\n \"enum\": - [\n \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n - \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n - \ \"mdaR21\",\n \"mdaUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"rteRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs - \xC9ireann.\",\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ]\n },\n \"cicfRating\": {\n \"enum\": [\n - \ \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"description\": - \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"icaaRating\": {\n \"enum\": - [\n \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n - \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n - \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ],\n - \ \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"type\": - \"string\"\n },\n \"mcstRating\": {\n \"enum\": [\n - \ \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - system for Vietnam - MCST\"\n },\n \"nbcRating\": {\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\",\n - \ \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"moctwRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P\",\n \"PG\",\n \"R\",\n - \ \"\",\n \"R-12\",\n \"R-15\"\n ],\n - \ \"description\": \"The video's rating from Taiwan's Ministry of - Culture (\u6587\u5316\u90E8).\",\n \"enum\": [\n \"moctwUnspecified\",\n - \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n - \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n - \ \"moctwR15\"\n ],\n \"type\": \"string\"\n },\n - \ \"fcbmRating\": {\n \"description\": \"The video's rating - from Malaysia's Film Censorship Board.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ],\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n - \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n - \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n - \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ]\n },\n - \ \"mibacRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\",\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"grfilmRating\": {\n \"description\": - \"The video's rating in Greece.\",\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"czfilmRating\": {\n - \ \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n - \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n - \ \"czfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in the Czech Republic.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ]\n }\n },\n \"id\": \"ContentRating\"\n },\n - \ \"GeoPoint\": {\n \"type\": \"object\",\n \"id\": \"GeoPoint\",\n - \ \"description\": \"Geographical coordinates of a point, in WGS84.\",\n - \ \"properties\": {\n \"altitude\": {\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n },\n \"latitude\": - {\n \"description\": \"Latitude in degrees.\",\n \"type\": - \"number\",\n \"format\": \"double\"\n },\n \"longitude\": - {\n \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"Longitude in degrees.\"\n }\n }\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"PageInfo\": {\n \"properties\": - {\n \"resultsPerPage\": {\n \"format\": \"int32\",\n \"description\": - \"The number of results included in the API response.\",\n \"type\": - \"integer\"\n },\n \"totalResults\": {\n \"description\": - \"The total number of results in the result set.\",\n \"type\": \"integer\",\n - \ \"format\": \"int32\"\n }\n },\n \"description\": - \"Paging details for lists of resources, including total number of items available - and number of resources returned in a single page.\",\n \"type\": \"object\",\n - \ \"id\": \"PageInfo\"\n },\n \"I18nRegionSnippet\": {\n \"description\": - \"Basic details about an i18n region, such as region code and human-readable - name.\",\n \"properties\": {\n \"name\": {\n \"description\": - \"The human-readable name of the region.\",\n \"type\": \"string\"\n - \ },\n \"gl\": {\n \"description\": \"The region code - as a 2-letter ISO country code.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"I18nRegionSnippet\"\n - \ },\n \"VideoMonetizationDetails\": {\n \"id\": \"VideoMonetizationDetails\",\n - \ \"description\": \"Details about monetization of a YouTube Video.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"access\": - {\n \"description\": \"The value of access indicates whether the - video can be monetized or not.\",\n \"$ref\": \"AccessPolicy\"\n - \ }\n }\n },\n \"LiveStreamListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of live streams that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"type\": \"array\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"default\": \"youtube#liveStreamListResponse\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveStreamListResponse\"\n - \ },\n \"VideoCategoryListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"eventId\": {\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoCategory\"\n },\n - \ \"description\": \"A list of video categories that can be associated - with YouTube videos. In this map, the video category ID is the map key, and - its value is the corresponding videoCategory resource.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoCategoryListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoCategoryListResponse\"\n - \ },\n \"Video\": {\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#video\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object contains statistics about the video.\",\n \"$ref\": \"VideoStatistics\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains information about the video content, including - the length of the video and its aspect ratio.\",\n \"$ref\": \"VideoContentDetails\"\n - \ },\n \"monetizationDetails\": {\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\",\n \"$ref\": \"VideoMonetizationDetails\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"player\": {\n \"description\": \"The player object contains - information that you would use to play the video in an embedded player.\",\n - \ \"$ref\": \"VideoPlayer\"\n },\n \"snippet\": {\n - \ \"description\": \"The snippet object contains basic details about - the video, such as its title, description, and category.\",\n \"$ref\": - \"VideoSnippet\"\n },\n \"status\": {\n \"$ref\": \"VideoStatus\",\n - \ \"description\": \"The status object contains information about - the video's uploading, processing, and privacy statuses.\"\n },\n \"projectDetails\": - {\n \"$ref\": \"VideoProjectDetails\",\n \"description\": - \"The projectDetails object contains information about the project specific - video metadata. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"recordingDetails\": {\n \"$ref\": \"VideoRecordingDetails\",\n - \ \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\"\n },\n - \ \"processingDetails\": {\n \"$ref\": \"VideoProcessingDetails\",\n - \ \"description\": \"The processingDetails object encapsulates information - about YouTube's progress in processing the uploaded video file. The properties - in the object identify the current processing status and an estimate of the - time remaining until YouTube finishes processing the video. This part also - indicates whether different types of data or content, such as file details - or thumbnail images, are available for the video. The processingProgress object - is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\"\n },\n \"suggestions\": - {\n \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoSuggestions\"\n },\n \"localizations\": - {\n \"description\": \"The localizations object contains localized - versions of the basic details about the video, such as its title and description.\",\n - \ \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"type\": \"object\"\n },\n \"ageGating\": - {\n \"description\": \"Age restriction details related to a video. - This data can only be retrieved by the video owner.\",\n \"$ref\": - \"VideoAgeGating\"\n },\n \"liveStreamingDetails\": {\n \"$ref\": - \"VideoLiveStreamingDetails\",\n \"description\": \"The liveStreamingDetails - object contains metadata about a live video broadcast. The object will only - be present in a video resource if the video is an upcoming, live, or completed - live broadcast.\"\n },\n \"topicDetails\": {\n \"$ref\": - \"VideoTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the video.\"\n - \ },\n \"fileDetails\": {\n \"description\": \"The fileDetails - object encapsulates information about the video file that was uploaded to - YouTube, including the file's resolution, duration, audio and video codecs, - stream bitrates, and more. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoFileDetails\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"Video\",\n \"description\": \"A *video* - resource represents a YouTube video.\"\n },\n \"Channel\": {\n \"id\": - \"Channel\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"ChannelSnippet\",\n \"description\": \"The snippet object contains - basic details about the channel, such as its title, description, and thumbnail - images.\"\n },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"description\": \"Localizations for different languages\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n - \ \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n \"description\": - \"The statistics object encapsulates statistics for the channel.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n \"default\": - \"youtube#channel\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"$ref\": \"ChannelStatus\",\n \"description\": \"The - status object encapsulates information about the privacy status of the channel.\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n - \ \"description\": \"The contentDetails object encapsulates information - about the channel's content.\"\n },\n \"contentOwnerDetails\": - {\n \"description\": \"The contentOwnerDetails object encapsulates - channel data that is relevant for YouTube Partners linked with the channel.\",\n - \ \"$ref\": \"ChannelContentOwnerDetails\"\n },\n \"brandingSettings\": - {\n \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n - \ },\n \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n - \ \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n - \ \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - *channel* resource contains information about a YouTube channel.\"\n },\n - \ \"InvideoPosition\": {\n \"properties\": {\n \"cornerPosition\": - {\n \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"corner\"\n ],\n \"description\": \"Defines - the position type.\",\n \"enumDescriptions\": [\n \"\"\n - \ ]\n }\n },\n \"description\": \"Describes the spatial - position of a visual widget inside a video. It is a union of various position - types, out of which only will be set one.\",\n \"id\": \"InvideoPosition\",\n - \ \"type\": \"object\"\n },\n \"CommentThreadListResponse\": {\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"CommentThread\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of comment threads that match - the request criteria.\"\n },\n \"kind\": {\n \"default\": - \"youtube#commentThreadListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n }\n },\n \"id\": \"CommentThreadListResponse\",\n - \ \"type\": \"object\"\n },\n \"LocalizedString\": {\n \"properties\": - {\n \"language\": {\n \"type\": \"string\"\n },\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LocalizedString\",\n - \ \"type\": \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"properties\": {\n \"allowed\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\"\n },\n \"blocked\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the video is blocked. If this property is present and a country is not - listed in its value, then the video is viewable in that country. If this property - is present and contains an empty list, the video is viewable in all countries.\"\n - \ }\n },\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"type\": \"object\",\n \"description\": \"DEPRECATED Region restriction - of the video.\"\n },\n \"ChannelBannerResource\": {\n \"id\": \"ChannelBannerResource\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#channelBannerResource\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"url\": {\n \"description\": \"The - URL of this banner image.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"A channel banner returned as the response - to a channel_banner.insert call.\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"properties\": {\n \"isChatSponsor\": {\n \"description\": - \"Whether the author is a sponsor of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"isChatModerator\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is a moderator of the live chat.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n },\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n },\n - \ \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channels's avatar URL.\"\n },\n \"isChatOwner\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is the owner - of the live chat.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageAuthorDetails\"\n },\n \"Entity\": {\n \"id\": - \"Entity\",\n \"properties\": {\n \"url\": {\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"typeId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ChannelLocalization\": - {\n \"id\": \"ChannelLocalization\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel's description.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - title.\"\n }\n },\n \"description\": \"Channel localization - setting\",\n \"type\": \"object\"\n },\n \"SuperChatEventSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"supporterDetails\": - {\n \"description\": \"Details about the supporter.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"amountMicros\": {\n \"type\": - \"string\",\n \"description\": \"The purchase amount, in micros of - the purchase currency. e.g., 1 is represented as 1000000.\",\n \"format\": - \"uint64\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\",\n \"type\": - \"string\"\n },\n \"displayString\": {\n \"description\": - \"A rendered string that displays the purchase amount and currency (e.g., - \\\"$1.00\\\"). The string is rendered for the given language.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel id where the event occurred.\"\n },\n - \ \"messageType\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The tier for the paid message, which - is based on the amount of money spent to purchase the message.\"\n },\n - \ \"superStickerMetadata\": {\n \"description\": \"If this - event is a Super Sticker event, this field will contain metadata about the - Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n },\n - \ \"createdAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"commentText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text contents of the comment left by the - user.\"\n },\n \"isSuperStickerEvent\": {\n \"description\": - \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"id\": \"SuperChatEventSnippet\"\n },\n \"ActivityContentDetailsComment\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource associated with the comment.\"\n - \ }\n },\n \"description\": \"Information about a resource - that received a comment.\",\n \"id\": \"ActivityContentDetailsComment\",\n - \ \"type\": \"object\"\n },\n \"PlaylistItemStatus\": {\n \"description\": - \"Information about the playlist item's privacy status.\",\n \"type\": - \"object\",\n \"id\": \"PlaylistItemStatus\",\n \"properties\": - {\n \"privacyStatus\": {\n \"description\": \"This resource's - privacy status.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n }\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource that was added to - the channel.\"\n }\n },\n \"description\": \"Details about - a resource which was added to a channel.\",\n \"id\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"ThumbnailSetResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#thumbnailSetResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"A list of thumbnails.\",\n - \ \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"type\": \"array\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ThumbnailSetResponse\"\n - \ },\n \"LiveChatSuperStickerDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"tier\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The tier in which the amount belongs. Lower amounts - belong to lower tiers. The lowest tier is 1.\",\n \"type\": \"integer\"\n - \ },\n \"amountMicros\": {\n \"description\": \"The - amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"superStickerMetadata\": {\n \"$ref\": \"SuperStickerMetadata\",\n - \ \"description\": \"Information about the Super Sticker.\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LiveChatSuperStickerDetails\"\n },\n \"LiveBroadcastStatistics\": - {\n \"properties\": {\n \"concurrentViewers\": {\n \"type\": - \"string\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"format\": \"uint64\"\n },\n \"totalChatCount\": - {\n \"type\": \"string\",\n \"description\": \"The total - number of live chat messages currently on the broadcast. The property and - its value will be present if the broadcast is public, has the live chat feature - enabled, and has at least one message. Note that this field will not be filled - after the broadcast ends. So this property would not identify the number of - chat messages for an archived video of a completed live broadcast.\",\n \"format\": - \"uint64\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Statistics about the live broadcast. These represent a snapshot of the values - at the time of the request. Statistics are only returned for live broadcasts.\",\n - \ \"id\": \"LiveBroadcastStatistics\"\n },\n \"Activity\": {\n \"id\": - \"Activity\",\n \"description\": \"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.\",\n \"properties\": {\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the activity, including the activity's type and group ID.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n - \ \"description\": \"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.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#activity\\\".\",\n \"default\": \"youtube#activity\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"type\": - \"object\",\n \"description\": \"Information about a new playlist item.\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\",\n \"$ref\": \"ResourceId\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"description\": \"The value - that YouTube uses to uniquely identify the playlist.\"\n },\n \"playlistItemId\": - {\n \"description\": \"ID of the item within the playlist.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"properties\": {\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"The details of the - user that was banned.\"\n },\n \"banDurationSeconds\": {\n \"format\": - \"uint64\",\n \"description\": \"The duration of the ban. This property - is only present if the banType is temporary.\",\n \"type\": \"string\"\n - \ },\n \"banType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of ban.\",\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ]\n }\n }\n },\n \"VideoProjectDetails\": - {\n \"properties\": {},\n \"description\": \"DEPRECATED. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"id\": \"VideoProjectDetails\",\n \"type\": \"object\"\n },\n - \ \"I18nRegion\": {\n \"type\": \"object\",\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n - \ \"id\": \"I18nRegion\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"default\": \"youtube#i18nRegion\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the i18n region, such as region code and human-readable - name.\",\n \"$ref\": \"I18nRegionSnippet\"\n }\n }\n - \ },\n \"CdnSettings\": {\n \"type\": \"object\",\n \"properties\": - {\n \"frameRate\": {\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"type\": - \"string\",\n \"description\": \"The frame rate of the inbound video - data.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"format\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The format of the video stream that you are sending - to Youtube. \"\n },\n \"resolution\": {\n \"enum\": - [\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\"\n },\n \"ingestionInfo\": {\n \"description\": - \"The ingestionInfo object contains information that YouTube provides that - you need to transmit your RTMP or HTTP stream to YouTube.\",\n \"$ref\": - \"IngestionInfo\"\n },\n \"ingestionType\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"enum\": [\n \"rtmp\",\n - \ \"dash\",\n \"webrtc\",\n \"hls\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \" The method or protocol used to transmit the video stream.\"\n }\n - \ },\n \"id\": \"CdnSettings\",\n \"description\": \"Brief description - of the live stream cdn settings.\"\n },\n \"ActivityContentDetails\": - {\n \"id\": \"ActivityContentDetails\",\n \"description\": \"Details - about the content of an activity: the video that was shared, the channel that - was subscribed to, etc.\",\n \"properties\": {\n \"favorite\": - {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n \"description\": - \"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.\"\n - \ },\n \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\"\n },\n \"subscription\": {\n \"description\": - \"The subscription object contains information about a channel that a user - subscribed to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"promotedItem\": - {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n \"description\": - \"The promotedItem object contains details about a resource which is being - promoted. This property is only present if the snippet.type is promotedItem.\"\n - \ },\n \"like\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsLike\"\n },\n \"recommendation\": {\n - \ \"$ref\": \"ActivityContentDetailsRecommendation\",\n \"description\": - \"The recommendation object contains information about a recommended resource. - This property is only present if the snippet.type is recommendation.\"\n },\n - \ \"social\": {\n \"description\": \"The social object contains - details about a social network post. This property is only present if the - snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n },\n \"comment\": {\n \"description\": - \"The comment object contains information about a resource that received a - comment. This property is only present if the snippet.type is comment.\",\n - \ \"$ref\": \"ActivityContentDetailsComment\"\n },\n \"channelItem\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"upload\": {\n \"$ref\": \"ActivityContentDetailsUpload\",\n - \ \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoCategorySnippet\": - {\n \"id\": \"VideoCategorySnippet\",\n \"properties\": {\n \"channelId\": - {\n \"description\": \"The YouTube channel that created the video - category.\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"type\": - \"string\"\n },\n \"assignable\": {\n \"type\": \"boolean\"\n - \ },\n \"title\": {\n \"description\": \"The video category's - title.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about a video category, - such as its localized title.\"\n },\n \"ThirdPartyLinkSnippet\": {\n - \ \"id\": \"ThirdPartyLinkSnippet\",\n \"description\": \"Basic information - about a third party account link, including its type and type-specific information.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"type\": {\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"description\": \"Type of the link named after the - entities that are being linked.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel with - a store on a merchandising platform in order to enable retail commerce capabilities - for that channel on YouTube.\"\n ],\n \"type\": \"string\"\n - \ },\n \"channelToStoreLink\": {\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n }\n - \ }\n },\n \"LocalizedProperty\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"localized\": {\n \"items\": {\n - \ \"$ref\": \"LocalizedString\"\n },\n \"type\": - \"array\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the default property.\",\n \"$ref\": \"LanguageTag\"\n - \ },\n \"default\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LocalizedProperty\"\n },\n \"PlaylistContentDetails\": - {\n \"properties\": {\n \"itemCount\": {\n \"description\": - \"The number of videos in the playlist.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistContentDetails\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"id\": \"LiveChatNewSponsorDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"isUpgrade\": {\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\",\n \"type\": - \"boolean\"\n },\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level that the viewer - just had joined. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n }\n - \ }\n },\n \"SuperStickerMetadata\": {\n \"properties\": {\n - \ \"altTextLanguage\": {\n \"description\": \"Specifies the - localization language in which the alt text is returned.\",\n \"type\": - \"string\"\n },\n \"stickerId\": {\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\",\n - \ \"type\": \"string\"\n },\n \"altText\": {\n \"type\": - \"string\",\n \"description\": \"Internationalized alt text that - describes the sticker image and any animation associated with it.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"SuperStickerMetadata\"\n - \ },\n \"Cuepoint\": {\n \"id\": \"Cuepoint\",\n \"type\": - \"object\",\n \"description\": \"Note that there may be a 5-second end-point - resolution issue. For instance, if a cuepoint comes in for 22:03:27, we may - stuff the cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact - of HLS.\",\n \"properties\": {\n \"insertionOffsetTimeMs\": {\n - \ \"format\": \"int64\",\n \"type\": \"string\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\"\n },\n \"walltimeMs\": {\n \"format\": - \"uint64\",\n \"description\": \"The wall clock time at which the - cuepoint should be inserted. Only one of insertion_offset_time_ms and walltime_ms - may be set at a time.\",\n \"type\": \"string\"\n },\n \"durationSecs\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The duration of this cuepoint.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The identifier for cuepoint resource.\"\n },\n - \ \"cueType\": {\n \"type\": \"string\",\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ }\n }\n },\n \"VideoLocalization\": {\n \"id\": \"VideoLocalization\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"Localized version - of the video's title.\"\n },\n \"description\": {\n \"description\": - \"Localized version of the video's description.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Localized versions of certain - video properties (e.g. title).\"\n },\n \"SuperChatEvent\": {\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\",\n - \ \"$ref\": \"SuperChatEventSnippet\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the Super Chat event.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#superChatEvent\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n - \ }\n },\n \"id\": \"SuperChatEvent\",\n \"description\": - \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\"\n },\n \"VideoRecordingDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoRecordingDetails\",\n \"properties\": {\n \"locationDescription\": - {\n \"description\": \"The text description of the location where - the video was recorded.\",\n \"type\": \"string\"\n },\n \"recordingDate\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the video was recorded.\",\n \"type\": \"string\"\n - \ },\n \"location\": {\n \"description\": \"The geolocation - information associated with the video.\",\n \"$ref\": \"GeoPoint\"\n - \ }\n },\n \"description\": \"Recording information associated - with the video.\"\n },\n \"SubscriptionSubscriberSnippet\": {\n \"description\": - \"Basic details about a subscription's subscriber including title, description, - channel ID and thumbnails.\",\n \"type\": \"object\",\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel ID of the subscriber.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"Thumbnails - for this subscriber.\"\n },\n \"title\": {\n \"description\": - \"The title of the subscriber.\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"description\": \"The description of - the subscriber.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"SubscriptionSubscriberSnippet\"\n },\n \"ChannelSnippet\": - {\n \"properties\": {\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails in your application, make - sure that your code uses the image URLs exactly as they are returned in API - responses. For example, your application should not use the http domain instead - of the https domain in a URL returned in an API response. Beginning in July - 2018, channel thumbnail URLs will only be available in the https domain, which - is how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\"\n },\n \"customUrl\": {\n - \ \"description\": \"The custom url of the channel.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The description of the channel.\",\n \"type\": \"string\"\n },\n - \ \"country\": {\n \"description\": \"The country of the channel.\",\n - \ \"type\": \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"title\": {\n \"description\": \"The channel's - title.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel's default title and description.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the channel was created.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n }\n - \ },\n \"description\": \"Basic details about a channel, including - title, description and thumbnails.\",\n \"type\": \"object\",\n \"id\": - \"ChannelSnippet\"\n },\n \"ActivityContentDetailsSocial\": {\n \"id\": - \"ActivityContentDetailsSocial\",\n \"properties\": {\n \"author\": - {\n \"type\": \"string\",\n \"description\": \"The author - of the social network post.\"\n },\n \"referenceUrl\": {\n \"description\": - \"The URL of the social network post.\",\n \"type\": \"string\"\n - \ },\n \"imageUrl\": {\n \"description\": \"An image - of the post's author.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object encapsulates information that identifies the resource associated with - a social network post.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n - \ \"facebook\",\n \"twitter\"\n ],\n \"type\": - \"string\",\n \"description\": \"The name of the social network.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Details - about a social network post.\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"properties\": {\n \"userComment\": {\n \"type\": - \"string\",\n \"description\": \"The comment added by the user to - this Super Chat event.\"\n },\n \"amountDisplayString\": {\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n },\n \"amountMicros\": - {\n \"description\": \"The amount purchased by the user, in micros - (1,750,000 micros = 1.75).\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"tier\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The tier in - which the amount belongs. Lower amounts belong to lower tiers. The lowest - tier is 1.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatSuperChatDetails\"\n },\n \"Comment\": {\n \"type\": - \"object\",\n \"description\": \"A *comment* represents a single YouTube - comment.\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#comment\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#comment\\\".\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the comment.\",\n \"$ref\": \"CommentSnippet\"\n - \ }\n },\n \"id\": \"Comment\"\n },\n \"LiveBroadcastStatus\": - {\n \"properties\": {\n \"liveBroadcastPriority\": {\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"description\": - \"Priority of the live broadcast event (internal state).\",\n \"enum\": - [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ],\n \"type\": - \"string\"\n },\n \"recordingStatus\": {\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"description\": \"The broadcast's recording status.\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"lifeCycleStatus\": - {\n \"description\": \"The broadcast's status. The status can be - updated using the API's liveBroadcasts.transition method.\",\n \"enum\": - [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete - settings\",\n \"Visible only to partner, may need special UI treatment\",\n - \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n - \ \"The broadcast is finished.\",\n \"This broadcast - was removed by admin action\",\n \"Transition into TESTING has - been requested\",\n \"Transition into LIVE has been requested\"\n - \ ]\n },\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"type\": \"string\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the broadcast is made for kids or not, decided by YouTube instead of the creator. - This field is read only.\"\n }\n },\n \"id\": \"LiveBroadcastStatus\",\n - \ \"description\": \"Live broadcast state.\",\n \"type\": \"object\"\n - \ },\n \"VideoTopicDetails\": {\n \"id\": \"VideoTopicDetails\",\n - \ \"description\": \"Freebase topic information related to the video.\",\n - \ \"properties\": {\n \"relevantTopicIds\": {\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"topicCategories\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\",\n \"type\": \"array\"\n },\n \"topicIds\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of Freebase - topic IDs that are centrally associated with the video. These are topics that - are centrally featured in the video, and it can be said that the video is - mainly about each of these. You can retrieve information about each topic - using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoProcessingDetails\": - {\n \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\",\n \"type\": \"object\",\n \"properties\": - {\n \"processingProgress\": {\n \"description\": \"The processingProgress - object contains information about the progress YouTube has made in processing - the video. The values are really only relevant if the video's processing status - is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"processingFailureReason\": {\n \"type\": \"string\",\n - \ \"description\": \"The reason that YouTube failed to process the - video. This property will only have a value if the processingStatus property's - value is failed.\",\n \"enum\": [\n \"uploadFailed\",\n - \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"fileDetailsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether file details are available for the uploaded video. You can - retrieve a video's file details by requesting the fileDetails part in your - videos.list() request.\"\n },\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n },\n - \ \"processingIssuesAvailability\": {\n \"description\": \"This - value indicates whether the video processing engine has generated suggestions - that might improve YouTube's ability to process the the video, warnings that - explain video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"tagSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether keyword (tag) - suggestions are available for the video. Tags can be added to a video's metadata - to make it easier for other users to find the video. You can retrieve these - suggestions by requesting the suggestions part in your videos.list() request.\",\n - \ \"type\": \"string\"\n },\n \"editorSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether video editing - suggestions, which might improve video quality or the playback experience, - are available for the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"processing\",\n \"succeeded\",\n - \ \"failed\",\n \"terminated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's processing status. - This value indicates whether YouTube was able to process the video or if the - video is still being processed.\"\n }\n },\n \"id\": \"VideoProcessingDetails\"\n - \ },\n \"InvideoTiming\": {\n \"description\": \"Describes a temporal - position of a visual widget inside a video.\",\n \"properties\": {\n - \ \"type\": {\n \"enum\": [\n \"offsetFromStart\",\n - \ \"offsetFromEnd\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"Describes a timing type. If the value is offsetFromStart, then the offsetMs - field represents an offset from the start of the video. If the value is offsetFromEnd, - then the offsetMs field represents an offset from the end of the video.\",\n - \ \"type\": \"string\"\n },\n \"offsetMs\": {\n \"format\": - \"uint64\",\n \"description\": \"Defines the time at which the promotion - will appear. Depending on the value of type the value of the offsetMs field - will represent a time offset from the start or from the end of the video, - expressed in milliseconds.\",\n \"type\": \"string\"\n },\n - \ \"durationMs\": {\n \"type\": \"string\",\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"format\": \"uint64\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"InvideoTiming\"\n - \ },\n \"ActivityContentDetailsPromotedItem\": {\n \"properties\": - {\n \"customCtaButtonText\": {\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\",\n \"type\": \"string\"\n },\n \"descriptionText\": - {\n \"description\": \"The text description to accompany the promoted - item.\",\n \"type\": \"string\"\n },\n \"creativeViewUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user was shown this promoted item.\"\n - \ },\n \"forecastingUrl\": {\n \"description\": \"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.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"ctaType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of call-to-action, a message - to the user indicating action that can be taken.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ]\n },\n \"destinationUrl\": {\n \"description\": - \"The URL the client should direct the user to, if the user chooses to visit - the advertiser's website.\",\n \"type\": \"string\"\n },\n - \ \"clickTrackingUrl\": {\n \"description\": \"The URL the - client should ping to indicate that the user clicked through on this promoted - item.\",\n \"type\": \"string\"\n },\n \"impressionUrl\": - {\n \"type\": \"array\",\n \"description\": \"The list of - impression URLs. The client should ping all of these URLs to indicate that - the user was shown this promoted item.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"adTag\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should fetch - to request a promoted item.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsPromotedItem\",\n \"description\": - \"Details about a resource which is being promoted.\"\n },\n \"MembershipsDuration\": - {\n \"id\": \"MembershipsDuration\",\n \"type\": \"object\",\n \"properties\": - {\n \"memberSince\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the user became a continuous member across all levels.\"\n - \ },\n \"memberTotalDurationMonths\": {\n \"format\": - \"int32\",\n \"type\": \"integer\",\n \"description\": \"The - cumulative time the user has been a member across all levels in complete months - (the time is rounded down to the nearest integer).\"\n }\n }\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"Information that identifies the recommended resource.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"seedResourceId\": - {\n \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\",\n \"$ref\": - \"ResourceId\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the recommended resource.\"\n },\n \"reason\": - {\n \"description\": \"The reason that the resource is recommended - to the user.\",\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n }\n },\n \"ActivityContentDetailsFavorite\": - {\n \"description\": \"Information about a video that was marked as a - favorite video.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsFavorite\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource that was marked as a favorite.\"\n }\n }\n - \ },\n \"SearchResult\": {\n \"id\": \"SearchResult\",\n \"description\": - \"A search result contains information about a YouTube video, channel, or - playlist that matches the search parameters specified in an API request. While - a search result points to a uniquely identifiable resource, like a video, - it does not have its own persistent data.\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\",\n \"$ref\": \"SearchResultSnippet\"\n },\n - \ \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n },\n \"kind\": - {\n \"default\": \"youtube#searchResult\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatModerator\": {\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the moderator.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatModerator\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModerator\\\".\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the moderator.\",\n \"$ref\": - \"LiveChatModeratorSnippet\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A *liveChatModerator* resource represents a moderator - for a YouTube live chat. A chat moderator has the ability to ban/unban users - from a chat, remove message, etc.\",\n \"id\": \"LiveChatModerator\"\n - \ },\n \"ChannelContentOwnerDetails\": {\n \"properties\": {\n \"contentOwner\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the content owner linked to the channel.\"\n },\n \"timeLinked\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the channel was linked to the content owner.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"id\": \"ChannelContentOwnerDetails\",\n \"type\": - \"object\"\n },\n \"LiveBroadcastContentDetails\": {\n \"description\": - \"Detailed settings of a broadcast.\",\n \"type\": \"object\",\n \"id\": - \"LiveBroadcastContentDetails\",\n \"properties\": {\n \"enableDvr\": - {\n \"description\": \"This setting determines whether viewers can - access DVR controls while watching the video. DVR controls enable the viewer - to control the video playback experience by pausing, rewinding, or fast forwarding - content. The default value for this property is true. *Important:* You must - set the value to true and also set the enableArchive property's value to true - if you want to make playback available immediately after the broadcast ends.\",\n - \ \"type\": \"boolean\"\n },\n \"enableClosedCaptions\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether HTTP POST closed captioning is enabled for this broadcast. - The ingestion URL of the closed captions is returned through the liveStreams - API. This is mutually exclusive with using the closed_captions_type property, - and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n - \ },\n \"enableAutoStop\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether auto stop is enabled - for this broadcast. The default value for this property is false. This setting - can only be used by Events.\"\n },\n \"startWithSlate\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast should automatically begin with an in-stream - slate when you update the broadcast's status to live. After updating the status, - you then need to send a liveCuepoints.insert request that sets the cuepoint's - eventState to end to remove the in-stream slate and make your broadcast stream - visible to viewers.\"\n },\n \"closedCaptionsType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"recordFromStart\": {\n \"type\": - \"boolean\",\n \"description\": \"Automatically start recording after - the event goes live. The default value for this property is true. *Important:* - You must also set the enableDvr property's value to true if you want the playback - to be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\"\n },\n \"enableEmbed\": {\n \"description\": - \"This setting indicates whether the broadcast video can be played in an embedded - player. If you choose to archive the video (using the enableArchive property), - this setting will also apply to the archived video.\",\n \"type\": - \"boolean\"\n },\n \"latencyPreference\": {\n \"enumDescriptions\": - [\n \"\",\n \"Best for: highest quality viewer playbacks - and higher resolutions.\",\n \"Best for: near real-time interaction, - with minimal playback buffering.\",\n \"Best for: real-time interaction - Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n - \ \"enum\": [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"type\": - \"string\"\n },\n \"stereoLayout\": {\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ]\n },\n \"boundStreamId\": - {\n \"description\": \"This value uniquely identifies the live stream - bound to the broadcast.\",\n \"type\": \"string\"\n },\n \"enableAutoStart\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"monitorStream\": {\n \"description\": \"The monitorStream - object contains information about the monitor stream, which the broadcaster - can use to review the event content before the broadcast stream is shown publicly.\",\n - \ \"$ref\": \"MonitorStreamInfo\"\n },\n \"projection\": - {\n \"type\": \"string\",\n \"description\": \"The projection - format of this broadcast. This defaults to rectangular.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ]\n },\n \"mesh\": {\n \"type\": \"string\",\n - \ \"description\": \"The mesh for projecting the video if projection - is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding - of 3D mesh data that follows the Spherical Video V2 RFC specification for - an mshp box, excluding the box size and type but including the following four - reserved zero bytes for the version and flags.\",\n \"format\": \"byte\"\n - \ },\n \"enableLowLatency\": {\n \"description\": \"Indicates - whether this broadcast has low latency enabled.\",\n \"type\": \"boolean\"\n - \ },\n \"boundStreamLastUpdateTimeMs\": {\n \"description\": - \"The date and time that the live stream referenced by boundStreamId was last - updated.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"enableContentEncryption\": {\n \"description\": - \"This setting indicates whether YouTube should enable content encryption - for the broadcast.\",\n \"type\": \"boolean\"\n }\n }\n - \ },\n \"ImageSettings\": {\n \"properties\": {\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size high resolution (2276x377).\"\n },\n \"bannerMobileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size (640x175).\"\n },\n \"bannerTabletImageUrl\": {\n - \ \"description\": \"Banner image. Tablet size (1707x283).\",\n \"type\": - \"string\"\n },\n \"bannerTabletLowImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size low resolution - (1138x188).\"\n },\n \"bannerMobileMediumHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size medium/high - resolution (960x263).\"\n },\n \"bannerExternalUrl\": {\n \"description\": - \"This is generated when a ChannelBanner.Insert request has succeeded for - the given channel.\",\n \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size low resolution (854x480).\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"bannerMobileExtraHdImageUrl\": {\n \"description\": \"Banner - image. Mobile size high resolution (1440x395).\",\n \"type\": \"string\"\n - \ },\n \"bannerImageUrl\": {\n \"description\": \"Banner - image. Desktop size (1060x175).\",\n \"type\": \"string\"\n },\n - \ \"largeBrandedBannerImageUrl\": {\n \"description\": \"The - URL for the 854px by 70px image that appears below the video player in the - expanded video view of the video watch page.\",\n \"$ref\": \"LocalizedProperty\"\n - \ },\n \"bannerMobileHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size high resolution (1280x360).\",\n \"type\": - \"string\"\n },\n \"trackingImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL for a 1px by 1px tracking - pixel that can be used to collect statistics for views of the channel or video - pages.\"\n },\n \"bannerTvMediumImageUrl\": {\n \"description\": - \"Banner image. TV size medium resolution (1280x720).\",\n \"type\": - \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size extra - high resolution (2560x424).\"\n },\n \"bannerTvImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n },\n \"bannerTvHighImageUrl\": - {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n - \ \"type\": \"string\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"watchIconImageUrl\": {\n \"type\": \"string\"\n },\n - \ \"smallBrandedBannerImageImapScript\": {\n \"$ref\": \"LocalizedProperty\",\n - \ \"description\": \"The image map script for the small banner image.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ImageSettings\",\n - \ \"description\": \"Branding properties for images associated with the - channel.\"\n },\n \"I18nLanguage\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the i18n language.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n \"default\": - \"youtube#i18nLanguage\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"I18nLanguage\",\n \"description\": \"An *i18nLanguage* - resource identifies a UI language currently supported by YouTube.\"\n },\n - \ \"ActivitySnippet\": {\n \"id\": \"ActivitySnippet\",\n \"type\": - \"object\",\n \"properties\": {\n \"description\": {\n \"description\": - \"The description of the resource primarily associated with the activity. - @mutable youtube.activities.insert\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the resource primarily associated with the activity.\"\n },\n - \ \"type\": {\n \"enum\": [\n \"typeUnspecified\",\n - \ \"upload\",\n \"like\",\n \"favorite\",\n - \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n - \ \"recommendation\",\n \"bulletin\",\n \"social\",\n - \ \"channelItem\",\n \"promotedItem\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of activity that the resource describes.\"\n },\n \"groupId\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"description\": \"Channel - title for the channel responsible for this activity\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the video was uploaded.\"\n },\n \"thumbnails\": - {\n \"description\": \"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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel associated with the activity.\"\n }\n },\n - \ \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\"\n },\n - \ \"VideoAbuseReportReasonListResponse\": {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The `visitorId` identifies the visitor.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n - \ },\n \"items\": {\n \"description\": \"A list of valid - abuse reasons that are used with `video.ReportAbuse`.\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportReason\"\n },\n \"type\": - \"array\"\n }\n }\n },\n \"SearchListResponse\": {\n \"properties\": - {\n \"pageInfo\": {\n \"description\": \"General pagination - information.\",\n \"$ref\": \"PageInfo\"\n },\n \"items\": - {\n \"description\": \"Pagination information for token pagination.\",\n - \ \"items\": {\n \"$ref\": \"SearchResult\"\n },\n - \ \"type\": \"array\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#searchListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"SearchListResponse\"\n },\n \"ActivityContentDetailsBulletin\": {\n - \ \"description\": \"Details about a channel bulletin post.\",\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsBulletin\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\"\n }\n - \ }\n },\n \"ChannelStatistics\": {\n \"id\": \"ChannelStatistics\",\n - \ \"description\": \"Statistics about a channel: number of subscribers, - number of videos in the channel, etc.\",\n \"properties\": {\n \"videoCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of videos uploaded to the channel.\"\n },\n \"subscriberCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of subscribers that the channel has.\",\n \"format\": \"uint64\"\n - \ },\n \"commentCount\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of comments for the channel.\"\n },\n \"hiddenSubscriberCount\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the number of subscribers is shown for this user.\"\n },\n \"viewCount\": - {\n \"description\": \"The number of times the channel has been viewed.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"PlaylistPlayer\": {\n - \ \"id\": \"PlaylistPlayer\",\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ChannelSectionListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of ChannelSections that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"type\": - \"array\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ChannelSectionListResponse\"\n },\n - \ \"PlaylistStatus\": {\n \"id\": \"PlaylistStatus\",\n \"type\": - \"object\",\n \"properties\": {\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"description\": \"The playlist's privacy status.\",\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ }\n },\n \"Subscription\": {\n \"id\": \"Subscription\",\n - \ \"type\": \"object\",\n \"description\": \"A *subscription* resource - contains information about a YouTube user subscription. A subscription notifies - a user when new videos are added to a channel or when another user takes one - of several actions on YouTube, such as uploading a video, rating a video, - or commenting on a video.\",\n \"properties\": {\n \"id\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the subscription.\",\n \"type\": \"string\"\n },\n \"subscriberSnippet\": - {\n \"description\": \"The subscriberSnippet object contains basic - details about the subscriber.\",\n \"$ref\": \"SubscriptionSubscriberSnippet\"\n - \ },\n \"snippet\": {\n \"$ref\": \"SubscriptionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the subscription, including its title and the channel that the user subscribed - to.\"\n },\n \"contentDetails\": {\n \"$ref\": \"SubscriptionContentDetails\",\n - \ \"description\": \"The contentDetails object contains basic statistics - about the subscription.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"default\": \"youtube#subscription\"\n }\n }\n },\n - \ \"PropertyValue\": {\n \"description\": \"A pair Property / Value.\",\n - \ \"properties\": {\n \"property\": {\n \"description\": - \"A property.\",\n \"type\": \"string\"\n },\n \"value\": - {\n \"type\": \"string\",\n \"description\": \"The property's - value.\"\n }\n },\n \"id\": \"PropertyValue\",\n \"type\": - \"object\"\n },\n \"AbuseType\": {\n \"id\": \"AbuseType\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"properties\": {\n \"giftMembershipsLevelName\": {\n \"description\": - \"The name of the level of the gift memberships purchased by the user. The - Level names are defined by the YouTube channel offering the Membership. In - some situations this field isn't filled.\",\n \"type\": \"string\"\n - \ },\n \"giftMembershipsCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"description\": \"The number - of gift memberships purchased by the user.\"\n }\n }\n },\n - \ \"CaptionSnippet\": {\n \"description\": \"Basic details about a - caption track, such as its language and name.\",\n \"id\": \"CaptionSnippet\",\n - \ \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video associated with the caption track. @mutable youtube.captions.insert\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"isEasyReader\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n \"lastUpdated\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the caption track was - last updated.\"\n },\n \"status\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ],\n \"type\": \"string\",\n \"description\": - \"The caption track's status.\"\n },\n \"isCC\": {\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\",\n \"type\": \"boolean\"\n - \ },\n \"language\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The language - of the caption track. The property value is a BCP-47 language tag.\"\n },\n - \ \"isLarge\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\"\n },\n \"name\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The name of the - caption track. The name is intended to be visible to the user as an option - during playback.\"\n },\n \"trackKind\": {\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The caption track's - type.\",\n \"type\": \"string\"\n },\n \"failureReason\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"unknownFormat\",\n - \ \"unsupportedFormat\",\n \"processingFailed\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The reason that - YouTube failed to process the caption track. This property is only present - if the state property's value is failed.\"\n },\n \"audioTrackType\": - {\n \"type\": \"string\",\n \"description\": \"The type - of audio track associated with the caption track.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ]\n },\n - \ \"isAutoSynced\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n \"isDraft\": {\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"InvideoBranding\": {\n \"type\": - \"object\",\n \"id\": \"InvideoBranding\",\n \"properties\": {\n - \ \"targetChannelId\": {\n \"description\": \"The channel to - which this branding links. If not present it defaults to the current channel.\",\n - \ \"type\": \"string\"\n },\n \"imageBytes\": {\n \"type\": - \"string\",\n \"description\": \"The bytes the uploaded image. Only - used in api to youtube communication.\",\n \"format\": \"byte\"\n - \ },\n \"timing\": {\n \"description\": \"The temporal - position within the video where watermark will be displayed.\",\n \"$ref\": - \"InvideoTiming\"\n },\n \"imageUrl\": {\n \"description\": - \"The url of the uploaded image. Only used in apiary to api communication.\",\n - \ \"type\": \"string\"\n },\n \"position\": {\n \"description\": - \"The spatial position within the video where the branding watermark will - be displayed.\",\n \"$ref\": \"InvideoPosition\"\n }\n },\n - \ \"description\": \"LINT.IfChange Describes an invideo branding.\"\n - \ },\n \"LiveStreamSnippet\": {\n \"id\": \"LiveStreamSnippet\",\n - \ \"properties\": {\n \"description\": {\n \"description\": - \"The stream's description. The value cannot be longer than 10000 characters.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the stream was created.\"\n },\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that is transmitting the stream.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The stream's title. The value must be between 1 and 128 characters long.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReport\": - {\n \"id\": \"VideoAbuseReport\",\n \"type\": \"object\",\n \"properties\": - {\n \"secondaryReasonId\": {\n \"type\": \"string\",\n \"description\": - \"The specific, or secondary, reason that this content is abusive (if available). - The value is an abuse report reason ID that is a valid secondary reason for - the primary reason.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video.\"\n },\n \"comments\": {\n \"type\": - \"string\",\n \"description\": \"Additional comments regarding the - abuse report.\"\n },\n \"reasonId\": {\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\",\n \"type\": \"string\"\n },\n - \ \"language\": {\n \"type\": \"string\",\n \"description\": - \"The language that the content was viewed in.\"\n }\n }\n },\n - \ \"VideoAbuseReportSecondaryReason\": {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"description\": \"The ID of this abuse report secondary reason.\",\n - \ \"type\": \"string\"\n },\n \"label\": {\n \"type\": - \"string\",\n \"description\": \"The localized label for this abuse - report secondary reason.\"\n }\n }\n },\n \"PlaylistItemSnippet\": - {\n \"id\": \"PlaylistItemSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"publishedAt\": {\n \"description\": \"The date and time - that the item was added to the playlist.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"resourceId\": {\n - \ \"$ref\": \"ResourceId\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"description\": \"The id object contains - information that can be used to uniquely identify the resource that is included - in the playlist as the playlist item.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The item's - description.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the playlist item. 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.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the playlist item belongs to.\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify thGe playlist that the playlist item is - in.\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"videoOwnerChannelId\": {\n \"description\": - \"Channel id for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"position\": {\n \"type\": \"integer\",\n - \ \"description\": \"The order in which the item appears in the playlist. - The value uses a zero-based index, so the first item has a position of 0, - the second item has a position of 1, and so forth.\",\n \"format\": - \"uint32\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the user that added the item to the playlist.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The item's - title.\"\n },\n \"videoOwnerChannelTitle\": {\n \"description\": - \"Channel title for the channel this video belongs to.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - a playlist, including title, description and thumbnails. Basic details of - a YouTube Playlist item provided by the author. Next ID: 15\"\n },\n \"TestItemTestItemSnippet\": - {\n \"id\": \"TestItemTestItemSnippet\",\n \"properties\": {},\n - \ \"type\": \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viever is a member. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"memberMonth\": {\n \"format\": \"uint32\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"type\": \"integer\"\n - \ },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the member to this Member - Milestone Chat. This field is empty for messages without a comment from the - member.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"I18nLanguageSnippet\": - {\n \"type\": \"object\",\n \"id\": \"I18nLanguageSnippet\",\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\",\n \"properties\": {\n \"hl\": {\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\",\n \"type\": - \"string\"\n },\n \"name\": {\n \"description\": \"The - human-readable name of the language in the language itself.\",\n \"type\": - \"string\"\n }\n }\n },\n \"RelatedEntity\": {\n \"properties\": - {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"RelatedEntity\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"description\": \"Information about a channel that a user subscribed - to.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource that the user subscribed to.\"\n }\n }\n - \ },\n \"ChannelStatus\": {\n \"description\": \"JSON template for - the status part of a channel.\",\n \"properties\": {\n \"longUploadsStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"type\": \"string\",\n \"enum\": - [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ]\n },\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"Privacy status of the channel.\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"isLinked\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n }\n - \ },\n \"id\": \"ChannelStatus\",\n \"type\": \"object\"\n },\n - \ \"ChannelSectionSnippet\": {\n \"properties\": {\n \"localized\": - {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": - \"Localized title, read-only.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that published the channel section.\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of the channel section.\",\n \"type\": \"string\",\n \"enum\": - [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ]\n },\n \"style\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"description\": \"The style of the channel section.\"\n },\n - \ \"position\": {\n \"type\": \"integer\",\n \"description\": - \"The position of the channel section in the channel.\",\n \"format\": - \"uint32\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the channel section's default title and description.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"The channel section's title for multiple_playlists and multiple_channels.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ChannelSectionSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a channel section, including title, style and position.\"\n },\n \"ChannelSectionLocalization\": - {\n \"type\": \"object\",\n \"description\": \"ChannelSection localization - setting\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel - section's title.\"\n }\n },\n \"id\": \"ChannelSectionLocalization\"\n - \ },\n \"CommentSnippet\": {\n \"id\": \"CommentSnippet\",\n \"description\": - \"Basic details about a comment, such as its author and text.\",\n \"type\": - \"object\",\n \"properties\": {\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the comment was originally published.\"\n },\n - \ \"textDisplay\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the video the comment refers to, if - any.\"\n },\n \"authorChannelUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Link to the author's YouTube channel, if any.\"\n - \ },\n \"authorDisplayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the user who posted the comment.\"\n - \ },\n \"textOriginal\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"updatedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was last updated.\",\n - \ \"format\": \"date-time\"\n },\n \"authorProfileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - the avatar of the user who posted the comment.\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"likeCount\": {\n \"description\": - \"The total number of likes this comment has received.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"parentId\": - {\n \"description\": \"The unique id of the parent comment, only - set for replies.\",\n \"type\": \"string\"\n },\n \"viewerRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"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.\"\n },\n \"moderationStatus\": {\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ]\n },\n \"canRate\": {\n \"description\": - \"Whether the current viewer can rate this comment.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"CommentThreadReplies\": {\n - \ \"type\": \"object\",\n \"description\": \"Comments written in - (direct or indirect) reply to the top level comment.\",\n \"id\": \"CommentThreadReplies\",\n - \ \"properties\": {\n \"comments\": {\n \"type\": \"array\",\n - \ \"description\": \"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.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n }\n }\n }\n },\n - \ \"Caption\": {\n \"description\": \"A *caption* resource represents - a YouTube caption track. A caption track is associated with exactly one YouTube - video.\",\n \"type\": \"object\",\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the caption track.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n }\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the caption.\",\n \"$ref\": - \"CaptionSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"default\": \"youtube#caption\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"Caption\"\n - \ },\n \"LiveStream\": {\n \"id\": \"LiveStream\",\n \"type\": - \"object\",\n \"description\": \"A live stream describes a live ingestion - point.\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - content_details object contains information about the stream, including the - closed captions ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"cdn\": {\n \"$ref\": - \"CdnSettings\",\n \"description\": \"The cdn object defines the - live stream's content delivery network (CDN) settings. These settings provide - details about the manner in which you stream your content to YouTube.\"\n - \ },\n \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n - \ \"description\": \"The status object contains information about - live stream's status.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"default\": \"youtube#liveStream\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the stream.\"\n }\n }\n },\n \"ChannelConversionPings\": - {\n \"properties\": {\n \"pings\": {\n \"type\": \"array\",\n - \ \"description\": \"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.\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n }\n }\n },\n \"id\": - \"ChannelConversionPings\",\n \"type\": \"object\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\"\n },\n \"VideoContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"duration\": - {\n \"description\": \"The length of the video. The tag value is - an ISO 8601 duration in the format PT#M#S, in which the letters PT indicate - that the value specifies a period of time, and the letters M and S refer to - length in minutes and seconds, respectively. The # characters preceding the - M and S letters are both integers that specify the number of minutes (or seconds) - of the video. For example, a value of PT15M51S indicates that the video is - 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n },\n - \ \"hasCustomThumbnail\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\"\n },\n - \ \"dimension\": {\n \"description\": \"The value of dimension - indicates whether the video is available in 3D or in 2D.\",\n \"type\": - \"string\"\n },\n \"countryRestriction\": {\n \"$ref\": - \"AccessPolicy\",\n \"description\": \"The countryRestriction object - contains information about the countries where a video is (or is not) viewable.\"\n - \ },\n \"projection\": {\n \"description\": \"Specifies - the projection format of the video.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"regionRestriction\": {\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"contentRating\": - {\n \"$ref\": \"ContentRating\",\n \"description\": \"Specifies - the ratings that the video received under various rating schemes.\"\n },\n - \ \"definition\": {\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"sd\",\n \"hd\"\n ],\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\"\n },\n \"licensedContent\": - {\n \"description\": \"The value of is_license_content indicates - whether the video is licensed content.\",\n \"type\": \"boolean\"\n - \ },\n \"caption\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The value of captions indicates whether the video has captions or not.\",\n - \ \"enum\": [\n \"true\",\n \"false\"\n ]\n - \ }\n },\n \"id\": \"VideoContentDetails\",\n \"description\": - \"Details about the content of a YouTube Video.\"\n },\n \"ChannelProfileDetails\": - {\n \"id\": \"ChannelProfileDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The YouTube channel - ID.\",\n \"type\": \"string\"\n },\n \"profileImageUrl\": - {\n \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"channelUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's URL.\"\n }\n }\n }\n - \ },\n \"servicePath\": \"\",\n \"description\": \"The YouTube Data API - v3 is an API that provides access to YouTube data, such as videos, playlists, - and channels.\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"parameters\": {\n \"prettyPrint\": {\n \"location\": \"query\",\n - \ \"default\": \"true\",\n \"type\": \"boolean\",\n \"description\": - \"Returns response with indentations and line breaks.\"\n },\n \"quotaUser\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"alt\": {\n \"description\": \"Data format for - response.\",\n \"enumDescriptions\": [\n \"Responses with Content-Type - of application/json\",\n \"Media download with context-dependent Content-Type\",\n - \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n - \ \"default\": \"json\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ]\n },\n \"fields\": {\n \"location\": \"query\",\n \"description\": - \"Selector specifying which fields to include in a partial response.\",\n - \ \"type\": \"string\"\n },\n \"upload_protocol\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"Upload protocol - for media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n },\n \"uploadType\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n - \ },\n \"oauth_token\": {\n \"location\": \"query\",\n \"description\": - \"OAuth 2.0 token for the current user.\",\n \"type\": \"string\"\n },\n - \ \"key\": {\n \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"callback\": {\n \"description\": \"JSONP\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"access_token\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"OAuth access token.\"\n },\n \"$.xgafv\": {\n \"description\": - \"V1 error format.\",\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"1\",\n \"2\"\n ],\n \"enumDescriptions\": - [\n \"v1 error format\",\n \"v2 error format\"\n ]\n }\n - \ },\n \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n }\n - \ }\n }\n },\n \"basePath\": \"\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"name\": \"youtube\",\n \"fullyEncodeReservedExpansion\": true,\n \"version\": - \"v3\",\n \"protocol\": \"rest\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:29 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCCNDrq7qB4E1RDvSW8H_HiA&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"vlQv1iOw3hGbFY0BfwSCnXqMxno\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"RXdyinzBez7YWP9Xs6WyxGlj5xQ\",\n \"id\": \"UCCNDrq7qB4E1RDvSW8H_HiA\",\n - \ \"snippet\": {\n \"title\": \"Rycationing\",\n \"description\": - \"Welcome to @rycationing! As a Caribbean guy that works hard for his money, - I love to spend it on things that fulfill me: traveling. Through my vlogs, - I'd like to share my travel experiences with you and let you see that you - won't have to spend much money to have a great time abroad. I'd love it if - you'd like to be a part of this journey with me of discovering the world. - Subscribe: @rycationing Instagram: @rycationing Webiste: www.rynellofferman.com/travel\",\n - \ \"customUrl\": \"@rycationing\",\n \"publishedAt\": \"2020-07-31T15:41:17.021899Z\",\n - \ \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/ytc/AL5GRJVnfpnDtsL4TqHKXT_eaKhD7FvM_XHBh87NG0EI=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJVnfpnDtsL4TqHKXT_eaKhD7FvM_XHBh87NG0EI=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJVnfpnDtsL4TqHKXT_eaKhD7FvM_XHBh87NG0EI=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Rycationing\",\n \"description\": - \"Welcome to @rycationing! As a Caribbean guy that works hard for his money, - I love to spend it on things that fulfill me: traveling. Through my vlogs, - I'd like to share my travel experiences with you and let you see that you - won't have to spend much money to have a great time abroad. I'd love it if - you'd like to be a part of this journey with me of discovering the world. - Subscribe: @rycationing Instagram: @rycationing Webiste: www.rynellofferman.com/travel\"\n - \ }\n },\n \"brandingSettings\": {\n \"channel\": {\n - \ \"title\": \"Rycationing\",\n \"description\": \"Welcome - to @rycationing! As a Caribbean guy that works hard for his money, I love - to spend it on things that fulfill me: traveling. Through my vlogs, I'd like - to share my travel experiences with you and let you see that you won't have - to spend much money to have a great time abroad. I'd love it if you'd like - to be a part of this journey with me of discovering the world. Subscribe: - @rycationing Instagram: @rycationing Webiste: www.rynellofferman.com/travel\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:29 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"title\": \"YouTube Data API v3\",\n \"auth\": {\n \"oauth2\": - {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n }\n }\n }\n },\n \"revision\": \"20230220\",\n - \ \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"ownerName\": \"Google\",\n - \ \"discoveryVersion\": \"v1\",\n \"fullyEncodeReservedExpansion\": true,\n - \ \"parameters\": {\n \"fields\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Selector specifying which fields to include - in a partial response.\"\n },\n \"$.xgafv\": {\n \"location\": - \"query\",\n \"description\": \"V1 error format.\",\n \"enum\": - [\n \"1\",\n \"2\"\n ],\n \"enumDescriptions\": [\n - \ \"v1 error format\",\n \"v2 error format\"\n ],\n \"type\": - \"string\"\n },\n \"alt\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"location\": \"query\",\n - \ \"default\": \"json\",\n \"enum\": [\n \"json\",\n \"media\",\n - \ \"proto\"\n ],\n \"description\": \"Data format for response.\"\n - \ },\n \"uploadType\": {\n \"description\": \"Legacy upload protocol - for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"prettyPrint\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": \"Returns - response with indentations and line breaks.\",\n \"default\": \"true\"\n - \ },\n \"access_token\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"OAuth access token.\"\n },\n \"upload_protocol\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n },\n - \ \"callback\": {\n \"description\": \"JSONP\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"key\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": \"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.\"\n },\n - \ \"oauth_token\": {\n \"location\": \"query\",\n \"description\": - \"OAuth 2.0 token for the current user.\",\n \"type\": \"string\"\n },\n - \ \"quotaUser\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n - \ \"location\": \"query\"\n }\n },\n \"description\": \"The YouTube - Data API v3 is an API that provides access to YouTube data, such as videos, - playlists, and channels.\",\n \"id\": \"youtube:v3\",\n \"name\": \"youtube\",\n - \ \"resources\": {\n \"thumbnails\": {\n \"methods\": {\n \"set\": - {\n \"parameters\": {\n \"videoId\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"supportsMediaUpload\": - true,\n \"mediaUpload\": {\n \"maxSize\": \"2097152\",\n - \ \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n },\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": true\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"id\": \"youtube.thumbnails.set\",\n - \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/thumbnails/set\",\n \"response\": - {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"flatPath\": - \"youtube/v3/thumbnails/set\",\n \"description\": \"As this is not - an insert in a strict sense (it supports uploading/setting of a thumbnail - for multiple videos, which doesn't result in creation of a single resource), - I use a custom verb here.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.videoCategories.list\",\n - \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/videoCategories\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the videoCategory resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"Returns - the video categories with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": - \"en-US\"\n },\n \"regionCode\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"liveStreams\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\"\n }\n },\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n },\n \"update\": {\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"id\": \"youtube.liveStreams.update\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"description\": \"Updates an existing - stream for the authenticated user.\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"request\": {\n \"$ref\": - \"LiveStream\"\n }\n },\n \"insert\": {\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"description\": - \"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, content_details, and status.\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"response\": {\n - \ \"$ref\": \"LiveStream\"\n },\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.insert\"\n },\n \"delete\": - {\n \"description\": \"Deletes an existing stream for the authenticated - user.\",\n \"path\": \"youtube/v3/liveStreams\",\n \"id\": - \"youtube.liveStreams.delete\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\"\n }\n }\n },\n \"watermarks\": - {\n \"methods\": {\n \"unset\": {\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.watermarks.unset\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/watermarks/unset\",\n \"flatPath\": - \"youtube/v3/watermarks/unset\",\n \"description\": \"Allows removal - of channel watermark.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n }\n },\n \"set\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/watermarks/set\",\n \"mediaUpload\": - {\n \"maxSize\": \"10485760\",\n \"protocols\": {\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.watermarks.set\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"description\": \"Allows upload - of watermark image and setting it for a channel.\"\n }\n }\n },\n - \ \"playlistItems\": {\n \"methods\": {\n \"list\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"playlistId\": {\n - \ \"description\": \"Return the playlist items within the given - playlist.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"videoId\": {\n \"description\": - \"Return the playlist items associated with the given video ID.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"minimum\": \"0\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItemListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"insert\": - {\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"httpMethod\": - \"POST\"\n },\n \"update\": {\n \"httpMethod\": \"PUT\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.playlistItems.update\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"flatPath\": \"youtube/v3/playlistItems\"\n },\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.playlistItems.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\"\n }\n }\n - \ },\n \"liveChatMessages\": {\n \"methods\": {\n \"delete\": - {\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.liveChatMessages.delete\",\n \"description\": \"Deletes - a chat message.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"id\": \"youtube.liveChatMessages.insert\",\n \"request\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\"\n },\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.liveChatMessages.list\",\n \"parameters\": - {\n \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Specifies the localization language in which the system messages should - be returned.\"\n },\n \"profileImageSize\": {\n \"location\": - \"query\",\n \"description\": \"Specifies the size of the profile - image that should be returned for each user.\",\n \"format\": - \"uint32\",\n \"maximum\": \"720\",\n \"type\": - \"integer\",\n \"minimum\": \"16\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the liveChatComment - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"minimum\": \"200\",\n \"default\": - \"500\",\n \"type\": \"integer\",\n \"maximum\": - \"2000\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"The id of the live chat for which comments - should be returned.\",\n \"location\": \"query\"\n }\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"path\": \"youtube/v3/liveChat/messages\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ]\n }\n }\n },\n \"channelSections\": - {\n \"methods\": {\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.channelSections.update\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n }\n - \ },\n \"list\": {\n \"id\": \"youtube.channelSections.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Return - the ChannelSections with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"description\": - \"Return content in specified language\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Return the ChannelSections owned by the specified - channel ID.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"mine\": {\n - \ \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Return the ChannelSections owned by the authenticated - user.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"path\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"id\": \"youtube.channelSections.insert\"\n },\n \"delete\": - {\n \"id\": \"youtube.channelSections.delete\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"id\"\n ]\n }\n }\n },\n \"liveBroadcasts\": - {\n \"methods\": {\n \"update\": {\n \"request\": {\n - \ \"$ref\": \"LiveBroadcast\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.liveBroadcasts.update\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Updates an existing broadcast for - the authenticated user.\"\n },\n \"transition\": {\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"Broadcast to transition.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"broadcastStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Start testing the broadcast. YouTube transmits video to - the broadcast's monitor stream. Note that you can only transition a broadcast - to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"location\": \"query\",\n \"required\": - true,\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"description\": \"The status to which the - broadcast is going to transition.\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n \"description\": - \"Transition a broadcast to a given status.\",\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"path\": - \"youtube/v3/liveBroadcasts/transition\"\n },\n \"delete\": - {\n \"description\": \"Delete a given broadcast.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to delete.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\"\n },\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"id\": - \"youtube.liveBroadcasts.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"default\": \"5\"\n },\n \"broadcastStatus\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return broadcasts with a certain status, - e.g. active broadcasts.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return current - live broadcasts.\",\n \"Return broadcasts that have not yet - started.\",\n \"Return broadcasts that have already ended.\"\n - \ ],\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ]\n },\n \"id\": - {\n \"description\": \"Return broadcasts with the given ids from - Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"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, status - and statistics.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"broadcastType\": {\n \"type\": - \"string\",\n \"default\": \"event\",\n \"enum\": - [\n \"broadcastTypeFilterUnspecified\",\n \"all\",\n - \ \"event\",\n \"persistent\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return only scheduled event broadcasts.\",\n - \ \"Return only persistent broadcasts.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Return - only broadcasts with the selected type.\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieve the list of broadcasts associated - with the given channel.\",\n \"path\": \"youtube/v3/liveBroadcasts\"\n - \ },\n \"bind\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"streamId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Stream to bind, if not set unbind the current one.\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"Broadcast to bind to the stream\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Bind a broadcast to a stream.\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"id\": - \"youtube.liveBroadcasts.bind\"\n },\n \"insertCuepoint\": {\n - \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"request\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Broadcast to insert ads to, or - equivalently `external_video_id` for internal use.\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"description\": - \"Insert cuepoints in a broadcast\",\n \"parameterOrder\": []\n },\n - \ \"insert\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n }\n }\n - \ },\n \"liveChatModerators\": {\n \"methods\": {\n \"list\": - {\n \"id\": \"youtube.liveChatModerators.list\",\n \"response\": - {\n \"$ref\": \"LiveChatModeratorListResponse\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"liveChatId\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"The id of the live chat for which moderators should be returned.\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - liveChatModerator resource parts that the API response will include. Supported - values are id and snippet.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"maximum\": \"50\",\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\"\n }\n },\n - \ \"path\": \"youtube/v3/liveChat/moderators\"\n },\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.liveChatModerators.insert\",\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"delete\": {\n \"description\": - \"Deletes a chat moderator.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.liveChatModerators.delete\",\n - \ \"httpMethod\": \"DELETE\"\n }\n }\n },\n \"playlists\": - {\n \"methods\": {\n \"delete\": {\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a resource.\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.playlists.delete\"\n - \ },\n \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"id\": \"youtube.playlists.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"flatPath\": \"youtube/v3/playlists\"\n },\n \"list\": - {\n \"parameters\": {\n \"id\": {\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"hl\": {\n - \ \"description\": \"Return content in specified language\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"mine\": {\n \"description\": \"Return - the playlists owned by the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"maximum\": \"50\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"default\": \"5\",\n \"type\": - \"integer\",\n \"minimum\": \"0\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the playlists owned by the specified channel ID.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"PlaylistListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.list\"\n - \ },\n \"update\": {\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"description\": \"Updates an existing resource.\",\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"id\": \"youtube.playlists.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"Playlist\"\n }\n }\n }\n },\n - \ \"channels\": {\n \"methods\": {\n \"list\": {\n \"flatPath\": - \"youtube/v3/channels\",\n \"response\": {\n \"$ref\": - \"ChannelListResponse\"\n },\n \"path\": \"youtube/v3/channels\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"mySubscribers\": - {\n \"location\": \"query\",\n \"description\": - \"Return the channels subscribed to the authenticated user\",\n \"type\": - \"boolean\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"type\": \"string\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channels within the specified - guide category ID.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"description\": \"Return the ids of channels owned - by the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"managedByMe\": {\n \"type\": \"boolean\",\n \"description\": - \"Return the channels managed by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Return the channels with the - specified IDs.\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"forUsername\": - {\n \"description\": \"Return the channel associated with a YouTube - username.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"location\": \"query\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\"\n }\n },\n - \ \"id\": \"youtube.channels.list\",\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ]\n },\n \"update\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"id\": \"youtube.channels.update\",\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/channels\",\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"request\": {\n \"$ref\": - \"Channel\"\n },\n \"description\": \"Updates an existing - resource.\"\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"en-US\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the videoCategory resource parts that the - API response will include. Supported values are id and snippet.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"response\": - {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"channelBanners\": - {\n \"methods\": {\n \"insert\": {\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Unused, channel_id is currently - derived from the security context of the requestor.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [],\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n - \ \"id\": \"youtube.channelBanners.insert\",\n \"path\": - \"youtube/v3/channelBanners/insert\",\n \"mediaUpload\": {\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"maxSize\": \"6291456\"\n },\n - \ \"supportsMediaUpload\": true,\n \"request\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"response\": {\n \"$ref\": - \"ChannelBannerResource\"\n }\n }\n }\n },\n \"tests\": - {\n \"methods\": {\n \"insert\": {\n \"response\": {\n - \ \"$ref\": \"TestItem\"\n },\n \"id\": \"youtube.tests.insert\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"POST method.\",\n - \ \"flatPath\": \"youtube/v3/tests\",\n \"path\": \"youtube/v3/tests\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"request\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/i18nRegions\",\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"en_US\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"I18nRegionListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.i18nRegions.list\"\n }\n }\n },\n - \ \"superChatEvents\": {\n \"methods\": {\n \"list\": {\n \"parameters\": - {\n \"maxResults\": {\n \"default\": \"5\",\n \"minimum\": - \"1\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"maximum\": \"50\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - rendered funding amounts in specified language.\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the superChatEvent resource parts that the API response will include. This - parameter is currently not supported.\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.superChatEvents.list\",\n \"path\": - \"youtube/v3/superChatEvents\",\n \"response\": {\n \"$ref\": - \"SuperChatEventListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"i18nLanguages\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/i18nLanguages\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the i18nLanguage resource properties that - the API response will include. Set the parameter value to snippet.\"\n },\n - \ \"hl\": {\n \"default\": \"en_US\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"id\": \"youtube.i18nLanguages.list\",\n \"flatPath\": - \"youtube/v3/i18nLanguages\"\n }\n }\n },\n \"comments\": - {\n \"methods\": {\n \"insert\": {\n \"path\": \"youtube/v3/comments\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"flatPath\": \"youtube/v3/comments\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n - \ }\n },\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"id\": \"youtube.comments.insert\"\n - \ },\n \"setModerationStatus\": {\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"id\": \"youtube.comments.setModerationStatus\",\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"moderationStatus\": {\n \"required\": - true,\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"location\": - \"query\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"type\": \"string\"\n },\n \"banAuthor\": - {\n \"description\": \"If set to true the author of the comment - gets added to the ban list. This means all future comments of the author will - autmomatically be rejected. Only valid in combination with STATUS_REJECTED.\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"default\": \"false\"\n },\n \"id\": - {\n \"description\": \"Modifies the moderation status of the - comments with the given IDs\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"description\": \"Sets the moderation status of one or more comments.\",\n - \ \"httpMethod\": \"POST\"\n },\n \"update\": {\n \"path\": - \"youtube/v3/comments\",\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\"\n }\n - \ },\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.comments.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"list\": {\n \"path\": \"youtube/v3/comments\",\n \"response\": - {\n \"$ref\": \"CommentListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"maxResults\": {\n \"default\": \"20\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"minimum\": \"1\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"100\",\n \"location\": \"query\"\n - \ },\n \"textFormat\": {\n \"location\": - \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"default\": \"html\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"type\": \"string\",\n \"description\": - \"The requested text format for the returned comments.\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more comment resource - properties that the API response will include.\",\n \"repeated\": - true\n },\n \"parentId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Returns - the comments with the given IDs for One Platform.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.comments.list\"\n },\n \"delete\": - {\n \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments\",\n \"parameters\": {\n - \ \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.comments.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"httpMethod\": - \"DELETE\"\n },\n \"markAsSpam\": {\n \"id\": \"youtube.comments.markAsSpam\",\n - \ \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"description\": \"Flags the comments with the given IDs - as spam in the caller's opinion.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\"\n }\n }\n },\n \"members\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/members\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"description\": \"Retrieves a list of members that - match the request criteria for a channel.\",\n \"flatPath\": \"youtube/v3/members\",\n - \ \"id\": \"youtube.members.list\",\n \"parameters\": {\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"location\": \"query\",\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"maximum\": \"1000\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"hasAccessToLevel\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Filter - members in the results set to the ones that have access to a level.\"\n },\n - \ \"mode\": {\n \"type\": \"string\",\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"default\": \"all_current\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n },\n \"filterByMemberChannelId\": - {\n \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"MemberListResponse\"\n }\n }\n - \ }\n },\n \"liveChatBans\": {\n \"methods\": {\n \"insert\": - {\n \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"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.\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"LiveChatBan\"\n - \ },\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"id\": - \"youtube.liveChatBans.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat ban.\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.liveChatBans.delete\"\n }\n }\n },\n - \ \"videos\": {\n \"methods\": {\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"locale\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"1\",\n \"description\": \"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.\",\n \"maximum\": \"50\",\n - \ \"location\": \"query\",\n \"default\": \"5\"\n - \ },\n \"maxHeight\": {\n \"minimum\": \"72\",\n - \ \"maximum\": \"8192\",\n \"format\": \"int32\",\n - \ \"type\": \"integer\",\n \"location\": \"query\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Stands - for \\\"host language\\\". Specifies the localization language of the metadata - to be filled into snippet.localized. The field is filled with the default - metadata if there is no localization in the specified language. The parameter - value must be a language code included in the list returned by the i18nLanguages.list - method (e.g. en_US, es_MX).\"\n },\n \"regionCode\": - {\n \"description\": \"Use a chart that is specific to the specified - region\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"myRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoCategoryId\": - {\n \"default\": \"0\",\n \"type\": \"string\",\n - \ \"description\": \"Use chart that is specific to the specified - video category\",\n \"location\": \"query\"\n },\n - \ \"maxWidth\": {\n \"location\": \"query\",\n \"maximum\": - \"8192\",\n \"minimum\": \"72\",\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"description\": \"Return - the player with maximum height specified in\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"chart\": {\n \"enum\": - [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"description\": - \"Return the videos that are in the specified chart.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Return videos with the given ids.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/videos\",\n \"response\": - {\n \"$ref\": \"VideoListResponse\"\n },\n \"id\": - \"youtube.videos.list\"\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.videos.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"path\": - \"youtube/v3/videos\",\n \"httpMethod\": \"DELETE\"\n },\n - \ \"getRating\": {\n \"flatPath\": \"youtube/v3/videos/getRating\",\n - \ \"id\": \"youtube.videos.getRating\",\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - the ratings that the authorized user gave to a list of specified videos.\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true\n }\n - \ }\n },\n \"rate\": {\n \"description\": \"Adds - a like or dislike rating to a video or removes a rating from a video.\",\n - \ \"parameterOrder\": [\n \"id\",\n \"rating\"\n - \ ],\n \"path\": \"youtube/v3/videos/rate\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.rate\",\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"rating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"required\": true\n }\n },\n \"flatPath\": - \"youtube/v3/videos/rate\"\n },\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.videos.update\",\n - \ \"description\": \"Updates an existing resource.\",\n \"path\": - \"youtube/v3/videos\"\n },\n \"insert\": {\n \"request\": - {\n \"$ref\": \"Video\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"response\": - {\n \"$ref\": \"Video\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/videos\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"supportsMediaUpload\": - true,\n \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/videos\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ }\n },\n \"maxSize\": \"274877906944\",\n - \ \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n - \ ]\n },\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"autoLevels\": - {\n \"location\": \"query\",\n \"description\": - \"Should auto-levels be applied to the upload.\",\n \"type\": - \"boolean\"\n },\n \"notifySubscribers\": {\n \"description\": - \"Notify the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"default\": \"true\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"stabilize\": - {\n \"type\": \"boolean\",\n \"description\": \"Should - stabilize be applied to the upload.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.videos.insert\"\n },\n \"reportAbuse\": - {\n \"path\": \"youtube/v3/videos/reportAbuse\",\n \"description\": - \"Report abuse for a video.\",\n \"id\": \"youtube.videos.reportAbuse\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"parameterOrder\": [],\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n - \ }\n }\n }\n },\n \"activities\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n },\n \"id\": - \"youtube.activities.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"home\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"publishedAfter\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"format\": - \"google-datetime\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"publishedBefore\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"format\": \"google-datetime\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"required\": true,\n \"type\": - \"string\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/activities\",\n \"flatPath\": - \"youtube/v3/activities\"\n }\n }\n },\n \"commentThreads\": - {\n \"methods\": {\n \"insert\": {\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/commentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"required\": - true\n }\n }\n },\n \"list\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"order\": {\n \"location\": - \"query\",\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Order - by time.\",\n \"Order by relevance.\"\n ],\n \"type\": - \"string\",\n \"default\": \"time\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"searchTerms\": - {\n \"type\": \"string\",\n \"description\": \"Limits - the returned comment threads to those matching the specified key words. Not - compatible with the 'id' filter.\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"maximum\": - \"100\",\n \"minimum\": \"1\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"type\": \"integer\",\n \"default\": - \"20\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"Returns the comment threads - of the specified video.\",\n \"location\": \"query\"\n },\n - \ \"textFormat\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"description\": \"The requested text format - for the returned comments.\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"default\": \"html\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\",\n \"type\": \"string\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"repeated\": - true,\n \"description\": \"Returns the comment threads with the - given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"moderationStatus\": - {\n \"type\": \"string\",\n \"description\": \"Limits - the returned comment threads to those with the specified moderation status. - Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"location\": \"query\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"default\": - \"published\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies a comma-separated list of one or more commentThread resource - properties that the API response will include.\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.commentThreads.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ }\n }\n }\n },\n \"subscriptions\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"response\": - {\n \"$ref\": \"SubscriptionListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.subscriptions.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"mySubscribers\": - {\n \"description\": \"Return the subscribers of the given channel - owner.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"order\": {\n \"enum\": - [\n \"subscriptionOrderUnspecified\",\n \"relevance\",\n - \ \"unread\",\n \"alphabetical\"\n ],\n - \ \"description\": \"The order of the returned subscriptions\",\n - \ \"default\": \"relevance\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ]\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"mine\": {\n \"description\": \"Flag - for returning the subscriptions of the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"myRecentSubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"description\": \"Return the subscriptions with the given IDs - for Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"description\": \"The *maxResults* parameter - specifies the maximum number of items that should be returned in the result - set.\",\n \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\"\n },\n \"forChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the subscriptions to the subset of these channels that the authenticated user - is subscribed to.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n - \ \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions of the given channel owner.\"\n }\n - \ }\n },\n \"insert\": {\n \"response\": {\n - \ \"$ref\": \"Subscription\"\n },\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"path\": \"youtube/v3/subscriptions\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.subscriptions.insert\"\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"id\": - \"youtube.subscriptions.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"description\": \"Deletes a resource.\"\n }\n }\n },\n - \ \"abuseReports\": {\n \"methods\": {\n \"insert\": {\n \"flatPath\": - \"youtube/v3/abuseReports\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"AbuseReport\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"id\": - \"youtube.abuseReports.insert\",\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"update\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n \"protocols\": - {\n \"resumable\": {\n \"multipart\": true,\n - \ \"path\": \"/resumable/upload/youtube/v3/captions\"\n },\n - \ \"simple\": {\n \"path\": \"/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"id\": \"youtube.captions.update\",\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"sync\": {\n \"location\": \"query\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"type\": \"boolean\"\n },\n - \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"supportsMediaUpload\": true,\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/captions\",\n \"description\": - \"Updates an existing resource.\",\n \"path\": \"youtube/v3/captions\"\n - \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n },\n \"id\": {\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.captions.delete\",\n \"description\": \"Deletes a resource.\"\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new resource into this collection.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"onBehalfOf\": {\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the caption - resource parts that the API response will include. Set the parameter value - to snippet.\"\n }\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"id\": \"youtube.captions.insert\",\n \"supportsMediaUpload\": - true,\n \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n - \ \"resumable\": {\n \"multipart\": true,\n \"path\": - \"/resumable/upload/youtube/v3/captions\"\n }\n },\n - \ \"maxSize\": \"104857600\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/captions\",\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"Caption\"\n }\n - \ },\n \"download\": {\n \"flatPath\": \"youtube/v3/captions/{id}\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"path\",\n \"description\": \"The ID of the caption track to - download, required for One Platform.\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"onBehalfOf\": {\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"tlang\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"tlang is the language code; machine translate the captions into this language.\"\n - \ },\n \"tfmt\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Convert - the captions into this format. Supported options are sbv, srt, and vtt.\"\n - \ }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions/{id}\",\n \"id\": \"youtube.captions.download\",\n - \ \"supportsMediaDownload\": true,\n \"description\": \"Downloads - a caption track.\",\n \"useMediaDownloadService\": true,\n \"httpMethod\": - \"GET\"\n },\n \"list\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"onBehalfOf\": {\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the captions with the given IDs for - Stubby or Apiary.\",\n \"repeated\": true\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the captions for the specified video.\",\n - \ \"required\": true\n }\n },\n \"response\": - {\n \"$ref\": \"CaptionListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"flatPath\": \"youtube/v3/captions\",\n \"path\": - \"youtube/v3/captions\",\n \"id\": \"youtube.captions.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n }\n }\n - \ },\n \"thirdPartyLinks\": {\n \"methods\": {\n \"insert\": - {\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"id\": - \"youtube.thirdPartyLinks.insert\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"list\": {\n \"response\": - {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel ID to which changes - should be applied, for delegation.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - response will include. Supported values are linkingToken, status, and snippet.\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"type\": {\n \"description\": \"Get a third party - link of the given type.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"type\": - \"string\"\n },\n \"linkingToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Get a third party link with the given linking token.\"\n }\n - \ },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.thirdPartyLinks.list\"\n - \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Deletes a resource.\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Do - not use. Required for compatibility.\"\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"type\": {\n \"description\": - \"Type of the link to be deleted.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\"\n },\n \"linkingToken\": - {\n \"type\": \"string\",\n \"description\": \"Delete - the partner links with the given linking token.\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"id\": \"youtube.thirdPartyLinks.delete\",\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"httpMethod\": - \"DELETE\"\n },\n \"update\": {\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"id\": - \"youtube.thirdPartyLinks.update\",\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the thirdPartyLink resource parts that the API request and response will include. - Supported values are linkingToken, status, and snippet.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\"\n }\n }\n },\n \"membershipsLevels\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - membershipsLevel resource parts that the API response will include. Supported - values are id and snippet.\"\n }\n },\n \"response\": - {\n \"$ref\": \"MembershipsLevelListResponse\"\n },\n - \ \"description\": \"Retrieves a list of all pricing levels offered - by a creator to the fans.\",\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"path\": \"youtube/v3/membershipsLevels\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"httpMethod\": \"GET\"\n }\n }\n },\n - \ \"search\": {\n \"methods\": {\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/search\",\n \"description\": \"Retrieves - a list of search resources\",\n \"parameters\": {\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"default\": \"5\",\n \"location\": - \"query\",\n \"format\": \"uint32\"\n },\n \"videoType\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"description\": \"Filter on videos of a specific - type.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ]\n },\n \"location\": - {\n \"description\": \"Filter on location of the video\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoCaption\": - {\n \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ],\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"relevanceLanguage\": {\n \"location\": - \"query\",\n \"description\": \"Return results relevant to this - language.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on resources belonging to this channelId.\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"description\": \"Display the content as seen by viewers in - this country.\",\n \"location\": \"query\"\n },\n - \ \"relatedToVideoId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Search - related to a resource.\"\n },\n \"videoDimension\": - {\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"description\": \"Filter - on 3d videos.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"type\": \"string\"\n },\n - \ \"eventType\": {\n \"description\": \"Filter on the - livestream status of the videos.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n - \ \"type\": \"string\"\n },\n \"order\": - {\n \"enumDescriptions\": [\n \"\",\n \"Resources - are sorted in reverse chronological order based on the date they were created.\",\n - \ \"Resources are sorted from highest to lowest rating.\",\n - \ \"Resources are sorted from highest to lowest number of views.\",\n - \ \"Resources are sorted based on their relevance to the search - query. This is the default value for this parameter.\",\n \"Resources - are sorted alphabetically by title.\",\n \"Channels are sorted - in descending order of their number of uploaded videos.\"\n ],\n - \ \"description\": \"Sort order of the results.\",\n \"location\": - \"query\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"default\": \"relevance\",\n \"type\": - \"string\"\n },\n \"publishedAfter\": {\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"description\": - \"Filter on resources published after this date.\",\n \"location\": - \"query\"\n },\n \"forContentOwner\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Search owned by a content owner.\"\n },\n \"topicId\": - {\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular topic.\",\n \"type\": \"string\"\n - \ },\n \"forMine\": {\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"videoDuration\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"description\": \"Filter on the duration of the videos.\",\n - \ \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"type\": \"string\"\n - \ },\n \"videoLicense\": {\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"description\": \"Filter on the license of the videos.\",\n - \ \"location\": \"query\"\n },\n \"forDeveloper\": - {\n \"location\": \"query\",\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"channelType\": {\n \"type\": \"string\",\n \"enum\": - [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"description\": \"Add - a filter on the channel search.\",\n \"location\": \"query\"\n - \ },\n \"safeSearch\": {\n \"location\": - \"query\",\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"default\": \"moderate\",\n \"enumDescriptions\": - [\n \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"enum\": - [\n \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"type\": \"string\"\n },\n \"videoSyndicated\": - {\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, syndicated or not.\",\n \"Only - retrieve syndicated videos.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Filter on syndicated videos.\"\n },\n - \ \"videoDefinition\": {\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"description\": \"Filter - on the definition of the videos.\",\n \"location\": \"query\"\n - \ },\n \"publishedBefore\": {\n \"type\": - \"string\",\n \"description\": \"Filter on resources published - before this date.\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"videoCategoryId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on videos in a specific category.\"\n },\n \"q\": - {\n \"description\": \"Textual search terms to match.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"videoEmbeddable\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"description\": \"Filter on embeddable videos.\",\n \"enum\": - [\n \"videoEmbeddableUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"location\": \"query\"\n - \ },\n \"type\": {\n \"location\": \"query\",\n - \ \"description\": \"Restrict results to a particular set of resource - types from One Platform.\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"locationRadius\": {\n \"description\": - \"Filter on distance from the location (specified above).\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"response\": - {\n \"$ref\": \"SearchListResponse\"\n },\n \"flatPath\": - \"youtube/v3/search\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.search.list\"\n }\n }\n },\n \"youtube\": - {\n \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/commentThreads\",\n \"id\": - \"youtube.youtube.v3.updateCommentThreads\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true\n - \ }\n },\n \"parameterOrder\": [],\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n - \ }\n }\n }\n }\n }\n }\n },\n - \ \"basePath\": \"\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"kind\": \"discovery#restDescription\",\n \"batchPath\": \"batch\",\n - \ \"servicePath\": \"\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"ownerDomain\": \"google.com\",\n \"protocol\": \"rest\",\n \"version\": - \"v3\",\n \"schemas\": {\n \"SearchListResponse\": {\n \"id\": \"SearchListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"Pagination information for token - pagination.\",\n \"items\": {\n \"$ref\": \"SearchResult\"\n - \ }\n },\n \"regionCode\": {\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#searchListResponse\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n }\n },\n \"ThirdPartyLinkStatus\": {\n \"description\": - \"The third-party link status object contains information about the status - of the link.\",\n \"type\": \"object\",\n \"properties\": {\n \"linkStatus\": - {\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"id\": - \"ThirdPartyLinkStatus\"\n },\n \"PageInfo\": {\n \"properties\": - {\n \"resultsPerPage\": {\n \"description\": \"The number - of results included in the API response.\",\n \"format\": \"int32\",\n - \ \"type\": \"integer\"\n },\n \"totalResults\": {\n - \ \"description\": \"The total number of results in the result set.\",\n - \ \"format\": \"int32\",\n \"type\": \"integer\"\n }\n - \ },\n \"id\": \"PageInfo\",\n \"description\": \"Paging details - for lists of resources, including total number of items available and number - of resources returned in a single page.\",\n \"type\": \"object\"\n },\n - \ \"ThirdPartyLink\": {\n \"id\": \"ThirdPartyLink\",\n \"type\": - \"object\",\n \"description\": \"A *third party account link* resource - represents a link between a YouTube account or a channel and an account on - a third-party service.\",\n \"properties\": {\n \"snippet\": {\n - \ \"description\": \"The snippet object contains basic details about - the third- party account link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n - \ },\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n - \ \"description\": \"The status object contains information about - the status of the link.\"\n },\n \"kind\": {\n \"default\": - \"youtube#thirdPartyLink\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n - \ },\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"CommentThreadReplies\": - {\n \"id\": \"CommentThreadReplies\",\n \"description\": \"Comments - written in (direct or indirect) reply to the top level comment.\",\n \"properties\": - {\n \"comments\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"description\": - \"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.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoSuggestionsTagSuggestion\": {\n \"id\": \"VideoSuggestionsTagSuggestion\",\n - \ \"description\": \"A single tag suggestion with it's relevance information.\",\n - \ \"properties\": {\n \"tag\": {\n \"type\": \"string\",\n - \ \"description\": \"The keyword tag suggested for the video.\"\n - \ },\n \"categoryRestricts\": {\n \"type\": \"array\",\n - \ \"description\": \"A set of video categories for which the tag is - relevant. You can use this information to display appropriate tag suggestions - based on the video category that the video uploader associates with the video. - By default, tag suggestions are relevant for all categories if there are no - restricts defined for the keyword.\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"type\": \"object\"\n - \ },\n \"PlaylistItem\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"default\": \"youtube#playlistItem\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the playlist item's privacy status.\",\n \"$ref\": \"PlaylistItemStatus\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the playlist item.\",\n \"type\": \"string\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"PlaylistItemContentDetails\",\n - \ \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistItem\",\n \"description\": \"A *playlistItem* - resource identifies another resource, such as a video, that is included in - a playlist. In addition, the playlistItem resource contains details about - the included resource that pertain specifically to how that resource is used - in that playlist. YouTube uses playlists to identify special collections of - videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods. For example, if - a user gives a positive rating to a video, you would insert that video into - the liked videos playlist for that user's channel.\"\n },\n \"VideoTopicDetails\": - {\n \"properties\": {\n \"topicCategories\": {\n \"type\": - \"array\",\n \"description\": \"A list of Wikipedia URLs that provide - a high-level description of the video's content.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"relevantTopicIds\": - {\n \"description\": \"Similar to topic_id, except that these topics - are merely relevant to the video. These are topics that may be mentioned in, - or appear in the video. You can retrieve information about each topic using - Freebase Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"topicIds\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Freebase - topic IDs that are centrally associated with the video. These are topics that - are centrally featured in the video, and it can be said that the video is - mainly about each of these. You can retrieve information about each topic - using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoTopicDetails\",\n \"description\": \"Freebase topic information - related to the video.\"\n },\n \"I18nRegion\": {\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the i18n region, such as region code and human-readable name.\",\n \"$ref\": - \"I18nRegionSnippet\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n region.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"default\": \"youtube#i18nRegion\"\n }\n },\n \"id\": - \"I18nRegion\"\n },\n \"PlaylistItemContentDetails\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistItemContentDetails\",\n \"properties\": - {\n \"note\": {\n \"description\": \"A user-generated note - for this item.\",\n \"type\": \"string\"\n },\n \"videoPublishedAt\": - {\n \"description\": \"The date and time that the video was published - to YouTube.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify a video. To retrieve the video - resource, set the id query parameter to this value in your API request.\"\n - \ },\n \"endAt\": {\n \"description\": \"The time, measured - in seconds from the start of the video, when the video should stop playing. - (The playlist owner can specify the times when the video should start and - stop playing when the video is played in the context of the playlist.) By - default, assume that the video.endTime is the end of the video.\",\n \"type\": - \"string\"\n },\n \"startAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The time, measured in seconds from the start - of the video, when the video should start playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) The default value is 0.\"\n }\n - \ }\n },\n \"ChannelProfileDetails\": {\n \"id\": \"ChannelProfileDetails\",\n - \ \"properties\": {\n \"profileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channels's avatar URL.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube channel ID.\"\n },\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The channel's display name.\"\n - \ },\n \"channelUrl\": {\n \"description\": \"The channel's - URL.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"CommentListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"description\": \"A list of comments - that match the request criteria.\"\n }\n },\n \"id\": \"CommentListResponse\"\n - \ },\n \"LiveChatSuperStickerDetails\": {\n \"properties\": {\n - \ \"amountMicros\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The amount purchased by the user, - in micros (1,750,000 micros = 1.75).\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n },\n \"tier\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n }\n },\n \"id\": \"LiveChatSuperStickerDetails\",\n - \ \"type\": \"object\"\n },\n \"ActivitySnippet\": {\n \"properties\": - {\n \"groupId\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the video was uploaded.\"\n },\n \"thumbnails\": - {\n \"description\": \"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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel responsible for this activity\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the resource primarily associated - with the activity. @mutable youtube.activities.insert\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ],\n \"description\": \"The type of activity that the resource - describes.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The title of the resource primarily associated - with the activity.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel associated with the activity.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ActivitySnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\"\n },\n - \ \"ResourceId\": {\n \"description\": \"A resource id is a generic - reference that points to another YouTube resource.\",\n \"id\": \"ResourceId\",\n - \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the referred resource, if that resource is a channel. This property is only - present if the resourceId.kind value is youtube#channel.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"The type - of the API resource.\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a playlist. This property - is only present if the resourceId.kind value is youtube#playlist.\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SuperChatEvent\": {\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the Super Chat event.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#superChatEvent\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\",\n - \ \"$ref\": \"SuperChatEventSnippet\"\n }\n },\n \"id\": - \"SuperChatEvent\",\n \"type\": \"object\",\n \"description\": \"A - `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\"\n },\n \"CommentThreadSnippet\": {\n \"id\": \"CommentThreadSnippet\",\n - \ \"description\": \"Basic details about a comment thread.\",\n \"properties\": - {\n \"canReply\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n - \ \"isPublic\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\"\n },\n \"totalReplyCount\": {\n \"type\": - \"integer\",\n \"description\": \"The total number of replies (not - including the top level comment).\",\n \"format\": \"uint32\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\"\n },\n \"topLevelComment\": {\n - \ \"description\": \"The top level comment of this thread.\",\n \"$ref\": - \"Comment\"\n },\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"properties\": {\n \"isChatModerator\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a moderator - of the live chat.\"\n },\n \"isVerified\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author's identity has - been verified by YouTube.\"\n },\n \"profileImageUrl\": {\n - \ \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel ID.\"\n },\n \"displayName\": - {\n \"description\": \"The channel's display name.\",\n \"type\": - \"string\"\n },\n \"isChatSponsor\": {\n \"description\": - \"Whether the author is a sponsor of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"isChatOwner\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author is the owner of the live chat.\"\n - \ },\n \"channelUrl\": {\n \"description\": \"The channel's - URL.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveChatMessageAuthorDetails\",\n \"type\": \"object\"\n },\n \"InvideoPosition\": - {\n \"description\": \"Describes the spatial position of a visual widget - inside a video. It is a union of various position types, out of which only - will be set one.\",\n \"id\": \"InvideoPosition\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"type\": {\n \"description\": \"Defines - the position type.\",\n \"type\": \"string\",\n \"enum\": - [\n \"corner\"\n ],\n \"enumDescriptions\": [\n - \ \"\"\n ]\n },\n \"cornerPosition\": {\n - \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\"\n - \ }\n }\n },\n \"VideoAbuseReportReason\": {\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID of this abuse report - reason.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the abuse report reason.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReason\"\n }\n },\n - \ \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"id\": \"VideoAbuseReportReason\",\n - \ \"type\": \"object\"\n },\n \"TestItem\": {\n \"id\": \"TestItem\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"TestItemTestItemSnippet\"\n },\n \"gaia\": - {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n - \ \"featuredPart\": {\n \"type\": \"boolean\"\n },\n - \ \"id\": {\n \"type\": \"string\"\n }\n }\n },\n - \ \"SuperStickerMetadata\": {\n \"properties\": {\n \"stickerId\": - {\n \"type\": \"string\",\n \"description\": \"Unique identifier - of the Super Sticker. This is a shorter form of the alt_text that includes - pack name and a recognizable characteristic of the sticker.\"\n },\n - \ \"altTextLanguage\": {\n \"description\": \"Specifies the - localization language in which the alt text is returned.\",\n \"type\": - \"string\"\n },\n \"altText\": {\n \"type\": \"string\",\n - \ \"description\": \"Internationalized alt text that describes the - sticker image and any animation associated with it.\"\n }\n },\n - \ \"id\": \"SuperStickerMetadata\",\n \"type\": \"object\"\n },\n - \ \"AccessPolicy\": {\n \"id\": \"AccessPolicy\",\n \"type\": - \"object\",\n \"properties\": {\n \"exception\": {\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n },\n \"allowed\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of allowed indicates whether the access to the policy is allowed or denied - by default.\"\n }\n },\n \"description\": \"Rights management - policy for YouTube resources.\"\n },\n \"LiveBroadcastListResponse\": - {\n \"properties\": {\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of broadcasts that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"default\": \"youtube#liveBroadcastListResponse\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveBroadcastListResponse\"\n - \ },\n \"ChannelSection\": {\n \"type\": \"object\",\n \"id\": - \"ChannelSection\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"targeting\": {\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\",\n \"$ref\": - \"ChannelSectionTargeting\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"description\": \"Localizations - for different languages\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\",\n \"$ref\": \"ChannelSectionSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#channelSection\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n - \ }\n }\n },\n \"ActivityContentDetailsPromotedItem\": {\n - \ \"properties\": {\n \"creativeViewUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\",\n \"type\": \"string\"\n },\n \"descriptionText\": - {\n \"description\": \"The text description to accompany the promoted - item.\",\n \"type\": \"string\"\n },\n \"forecastingUrl\": - {\n \"description\": \"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.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"clickTrackingUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user clicked through on this promoted item.\",\n \"type\": - \"string\"\n },\n \"destinationUrl\": {\n \"description\": - \"The URL the client should direct the user to, if the user chooses to visit - the advertiser's website.\",\n \"type\": \"string\"\n },\n - \ \"ctaType\": {\n \"description\": \"The type of call-to-action, - a message to the user indicating action that can be taken.\",\n \"enum\": - [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"adTag\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should fetch to request a promoted item.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the promoted video.\"\n },\n \"customCtaButtonText\": - {\n \"type\": \"string\",\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\"\n },\n \"impressionUrl\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\",\n \"type\": - \"array\"\n }\n },\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"type\": \"object\",\n \"description\": \"Details about a resource - which is being promoted.\"\n },\n \"SubscriptionContentDetails\": {\n - \ \"id\": \"SubscriptionContentDetails\",\n \"properties\": {\n \"activityType\": - {\n \"type\": \"string\",\n \"description\": \"The type - of activity this subscription is for (only uploads, everything).\",\n \"enum\": - [\n \"subscriptionActivityTypeUnspecified\",\n \"all\",\n - \ \"uploads\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"newItemCount\": {\n \"description\": \"The number of new - items in the subscription since its content was last read.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"totalItemCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The approximate - number of items that the subscription points to.\",\n \"type\": \"integer\"\n - \ }\n },\n \"description\": \"Details about the content to - witch a subscription refers.\",\n \"type\": \"object\"\n },\n \"PropertyValue\": - {\n \"id\": \"PropertyValue\",\n \"properties\": {\n \"property\": - {\n \"description\": \"A property.\",\n \"type\": \"string\"\n - \ },\n \"value\": {\n \"type\": \"string\",\n \"description\": - \"The property's value.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A pair Property / Value.\"\n },\n \"Channel\": - {\n \"properties\": {\n \"statistics\": {\n \"description\": - \"The statistics object encapsulates statistics for the channel.\",\n \"$ref\": - \"ChannelStatistics\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n - \ }\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ChannelContentDetails\",\n \"description\": - \"The contentDetails object encapsulates information about the channel's content.\"\n - \ },\n \"conversionPings\": {\n \"description\": \"The - conversionPings object encapsulates information about conversion pings that - need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the channel, such as its title, description, and thumbnail images.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#channel\"\n },\n \"brandingSettings\": - {\n \"$ref\": \"ChannelBrandingSettings\",\n \"description\": - \"The brandingSettings object encapsulates information about the branding - of the channel.\"\n },\n \"contentOwnerDetails\": {\n \"$ref\": - \"ChannelContentOwnerDetails\",\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\"\n },\n \"topicDetails\": {\n \"$ref\": - \"ChannelTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the channel.\"\n - \ },\n \"auditDetails\": {\n \"description\": \"The - auditionDetails object encapsulates channel data that is relevant for YouTube - Partners during the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n - \ },\n \"status\": {\n \"description\": \"The status - object encapsulates information about the privacy status of the channel.\",\n - \ \"$ref\": \"ChannelStatus\"\n }\n },\n \"id\": - \"Channel\",\n \"description\": \"A *channel* resource contains information - about a YouTube channel.\",\n \"type\": \"object\"\n },\n \"VideoCategory\": - {\n \"description\": \"A *videoCategory* resource identifies a category - that has been or could be associated with uploaded videos.\",\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"default\": \"youtube#videoCategory\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video category.\"\n },\n \"snippet\": - {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n }\n },\n \"id\": \"VideoCategory\"\n },\n - \ \"Thumbnail\": {\n \"id\": \"Thumbnail\",\n \"type\": \"object\",\n - \ \"description\": \"A thumbnail is an image representing a YouTube resource.\",\n - \ \"properties\": {\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The thumbnail image's URL.\"\n },\n \"height\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"(Optional) Height of the thumbnail image.\"\n },\n \"width\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"(Optional) Width of the thumbnail image.\"\n }\n }\n },\n - \ \"LiveBroadcastStatistics\": {\n \"type\": \"object\",\n \"properties\": - {\n \"totalChatCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The total number of live chat messages - currently on the broadcast. The property and its value will be present if - the broadcast is public, has the live chat feature enabled, and has at least - one message. Note that this field will not be filled after the broadcast ends. - So this property would not identify the number of chat messages for an archived - video of a completed live broadcast.\"\n },\n \"concurrentViewers\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n }\n },\n - \ \"id\": \"LiveBroadcastStatistics\",\n \"description\": \"Statistics - about the live broadcast. These represent a snapshot of the values at the - time of the request. Statistics are only returned for live broadcasts.\"\n - \ },\n \"ContentRating\": {\n \"type\": \"object\",\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\",\n \"id\": \"ContentRating\",\n \"properties\": - {\n \"eefilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Pere\",\n \"L\",\n \"MS-6\",\n \"K-6\",\n - \ \"MS-12\",\n \"K-12\",\n \"K-14\",\n \"K-16\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Estonia.\",\n \"type\": \"string\",\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ]\n },\n \"nbcRating\": {\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\",\n - \ \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"cscfRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\",\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"nbcplRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating in Poland.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ]\n },\n \"agcomRating\": {\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\",\n \"type\": \"string\",\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ]\n },\n \"mdaRating\": {\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ]\n },\n \"grfilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Greece.\",\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ]\n - \ },\n \"russiaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"description\": - \"The video's National Film Registry of the Russian Federation (MKRF - Russia) - rating.\",\n \"type\": \"string\"\n },\n \"bbfcRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG\",\n \"12A\",\n \"12\",\n - \ \"15\",\n \"18\",\n \"R18\",\n \"\"\n - \ ],\n \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n - \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n - \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n - \ \"bbfcUnrated\"\n ],\n \"description\": \"The - video's British Board of Film Classification (BBFC) rating.\"\n },\n - \ \"nfrcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"B\",\n \"C\",\n \"D\",\n - \ \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"moctwRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ],\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n - \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"type\": \"string\"\n },\n \"mpaatRating\": - {\n \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"GB\",\n \"RB\"\n ],\n - \ \"description\": \"The rating system for trailer, DVD, and Ad in - the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\"\n },\n \"ifcoRating\": {\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\",\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"smaisRating\": - {\n \"description\": \"The video's rating in Iceland.\",\n \"type\": - \"string\",\n \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"cnaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Romania's - CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\"\n },\n \"kfcbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Kenya - Film Classification Board.\",\n \"type\": \"string\",\n \"enum\": - [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ]\n },\n \"menaMpaaRating\": {\n \"enum\": - [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n - \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To - keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The rating system - for MENA countries, a clone of MPAA. It is needed to prevent titles go live - w/o additional QC check, since some of them can be inappropriate for the countries - at all. See b/33408548 for more details.\"\n },\n \"egfilmRating\": - {\n \"description\": \"The video's rating in Egypt.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ],\n - \ \"enum\": [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n - \ \"egfilm18\",\n \"egfilmBn\",\n \"egfilmUnrated\"\n - \ ]\n },\n \"chvrsRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Canadian Home Video Rating System - (CHVRS) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"14A\",\n \"18A\",\n - \ \"R\",\n \"E\",\n \"\"\n ],\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ]\n },\n - \ \"bfvcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"E\",\n \"13\",\n \"15\",\n - \ \"18\",\n \"20\",\n \"B\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ],\n \"description\": - \"The video's rating from Thailand's Board of Film and Video Censors.\"\n - \ },\n \"pefilmRating\": {\n \"description\": \"The - video's rating in Peru.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"kmrbRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ]\n },\n \"resorteviolenciaRating\": {\n \"description\": - \"The video's rating in Venezuela.\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ]\n },\n - \ \"fpbRatingReasons\": {\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"South - Africa rating content descriptors.\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ]\n },\n \"description\": \"Reasons that explain - why the video received its FPB (South Africa) rating.\",\n \"type\": - \"array\"\n },\n \"bmukkRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Austrian Board of - Media Classification (Bundesministerium f\xFCr Unterricht, Kunst und Kultur).\",\n - \ \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ]\n },\n \"mcstRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n - \ \"description\": \"The video's rating system for Vietnam - MCST\",\n - \ \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"nfvcbRating\": {\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"18\",\n \"RE\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"cicfRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Commission de Contr\xF4le - des Films (Belgium).\",\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ]\n },\n \"nmcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ],\n - \ \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ],\n \"description\": \"The - National Media Council ratings system for United Arab Emirates.\",\n \"type\": - \"string\"\n },\n \"nkclvRating\": {\n \"description\": - \"The video's rating from the Nacion\xE3lais Kino centrs (National Film Centre - of Latvia).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n - \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n - \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ]\n - \ },\n \"fpbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\"\n },\n - \ \"mibacRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\",\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"cncRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ],\n - \ \"description\": \"Rating system in France - Commission de classification - cinematographique\"\n },\n \"rteRating\": {\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"rteUnspecified\",\n - \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n - \ \"rteUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ]\n },\n \"icaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"description\": - \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales - (ICAA - Spain) rating.\"\n },\n \"djctqRatingReasons\": {\n - \ \"description\": \"Reasons that explain why the video received its - DJCQT (Brazil) rating.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ],\n \"enum\": [\n - \ \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ],\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"rtcRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"A\",\n \"B\",\n \"B15\",\n - \ \"C\",\n \"D\",\n \"\"\n ],\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\",\n \"enum\": [\n \"rtcUnspecified\",\n - \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n - \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n - \ ]\n },\n \"mpaaRating\": {\n \"enum\": [\n - \ \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Motion Picture Association - of America (MPAA) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"NC-17\",\n \"! X\",\n \"\"\n ]\n - \ },\n \"mekuRating\": {\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti - (National Audiovisual Institute).\",\n \"enumDescriptions\": [\n - \ \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"fcbmRating\": {\n \"description\": \"The video's - rating from Malaysia's Film Censorship Board.\",\n \"enum\": [\n - \ \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ]\n },\n \"djctqRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, - Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enum\": - [\n \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n - \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n - \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n - \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n - \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n - \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n - \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n - \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"czfilmRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"description\": - \"The video's rating in the Czech Republic.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ]\n },\n \"ytRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"ytUnspecified\",\n - \ \"ytAgeRestricted\"\n ],\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\"\n },\n - \ \"rcnofRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Hungarian - Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\",\n - \ \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ]\n },\n \"csaRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ],\n \"enum\": - [\n \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n - \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n - \ \"csaUnrated\"\n ],\n \"description\": \"The - video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, which - rates broadcast content.\"\n },\n \"chfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n - \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n - \ \"chfilm18\",\n \"chfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Switzerland.\",\n \"type\": \"string\"\n - \ },\n \"medietilsynetRating\": {\n \"description\": - \"The video's rating from Medietilsynet, the Norwegian Media Authority.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ]\n },\n \"catvRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ],\n \"type\": - \"string\",\n \"description\": \"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.\"\n - \ },\n \"kijkwijzerRating\": {\n \"description\": \"The - video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de Classificatie - van Audiovisuele Media (Netherlands).\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n \"kijkwijzer6\",\n - \ \"kijkwijzer9\",\n \"kijkwijzer12\",\n \"kijkwijzer16\",\n - \ \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n ]\n - \ },\n \"cccRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"Todo espectador\",\n \"6+ - Inconveniente - para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Consejo de Calificaci\xF3n - Cinematogr\xE1fica (Chile) rating.\",\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ]\n },\n \"skfilmRating\": {\n \"enum\": - [\n \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n - \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ],\n \"description\": - \"The video's rating in Slovakia.\"\n },\n \"eirinRating\": - {\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ],\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n - \ \"type\": \"string\"\n },\n \"fcoRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Hong Kong's Office for - Film, Newspaper and Article Administration.\"\n },\n \"catvfrRating\": - {\n \"description\": \"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.\",\n - \ \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ]\n },\n \"ilfilmRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating in Israel.\",\n - \ \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"incaaRating\": {\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"description\": \"The video's INCAA (Instituto Nacional - de Cine y Artes Audiovisuales - Argentina) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ]\n },\n \"smsaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"cbfcRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ],\n \"enum\": [\n - \ \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\"\n - \ },\n \"mocRating\": {\n \"description\": \"The video's - Ministerio de Cultura (Colombia) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"cceRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"4\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\",\n \"14\"\n ],\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ],\n \"type\": \"string\"\n },\n - \ \"ecbmctRating\": {\n \"type\": \"string\",\n \"description\": - \"Rating system in Turkey - Evaluation and Classification Board of the Ministry - of Culture and Tourism\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"7A\",\n \"7+\",\n \"13A\",\n - \ \"13+\",\n \"15A\",\n \"15+\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ]\n },\n \"oflcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"description\": \"The video's Office of Film and - Literature Classification (OFLC - New Zealand) rating.\",\n \"type\": - \"string\",\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ]\n },\n \"mccaaRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Malta's Film Age-Classification Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ]\n },\n \"anatelRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Anatel (Asociaci\xF3n - Nacional de Televisi\xF3n) rating for Chilean television.\",\n \"enum\": - [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ]\n },\n \"mccypRating\": {\n \"enum\": [\n - \ \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n - \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Danish - Film Institute's (Det Danske Filminstitut) Media Council for Children and - Young People.\",\n \"type\": \"string\"\n },\n \"lsfRating\": - {\n \"description\": \"The video's rating from Indonesia's Lembaga - Sensor Film.\",\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n - \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n - \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"tvpgRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ],\n \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n - \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n - \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's TV Parental Guidelines (TVPG) rating.\"\n - \ },\n \"mtrcbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ],\n \"description\": \"The - video's rating from the Movie and Television Review and Classification Board - (Philippines).\"\n },\n \"fskRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"description\": \"The - video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"FSK 0\",\n - \ \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ]\n },\n \"acbRating\": - {\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"description\": \"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.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"Programs that have been given a P classification - by the Australian Communications and Media Authority. These programs are intended - for preschool children.\",\n \"Programs that have been given a - C classification by the Australian Communications and Media Authority. These - programs are intended for children (other than preschool children) who are - younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"fmocRating\": - {\n \"description\": \"This property has been deprecated. Use the - contentDetails.contentRating.cncRating instead.\",\n \"enum\": [\n - \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ]\n }\n }\n },\n - \ \"Playlist\": {\n \"type\": \"object\",\n \"description\": \"A - *playlist* resource represents a YouTube playlist. A playlist is a collection - of videos that can be viewed sequentially and shared with other users. A playlist - can contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"id\": \"Playlist\",\n \"properties\": - {\n \"contentDetails\": {\n \"$ref\": \"PlaylistContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - like video count.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#playlist\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains status information for the playlist.\",\n \"$ref\": - \"PlaylistStatus\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the playlist.\"\n },\n \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n - \ \"description\": \"The player object contains information that you - would use to play the playlist in an embedded player.\"\n },\n \"localizations\": - {\n \"description\": \"Localizations for different languages\",\n - \ \"type\": \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"PlaylistLocalization\"\n }\n }\n }\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The `visitorId` identifies the visitor.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of valid abuse reasons that - are used with `video.ReportAbuse`.\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n }\n }\n }\n },\n \"MemberSnippet\": - {\n \"id\": \"MemberSnippet\",\n \"properties\": {\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering memberships.\"\n },\n \"memberDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the member.\"\n },\n \"membershipsDetails\": - {\n \"description\": \"Details about the user's membership.\",\n - \ \"$ref\": \"MembershipsDetails\"\n }\n },\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsBulletin\": {\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsBulletin\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource associated with a - bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"description\": \"Details about - a channel bulletin post.\"\n },\n \"ChannelBannerResource\": {\n \"id\": - \"ChannelBannerResource\",\n \"description\": \"A channel banner returned - as the response to a channel_banner.insert call.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"url\": {\n \"type\": \"string\",\n \"description\": - \"The URL of this banner image.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelBannerResource\"\n - \ }\n }\n },\n \"ActivityListResponse\": {\n \"properties\": - {\n \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"default\": \"youtube#activityListResponse\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Activity\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivityListResponse\"\n - \ },\n \"VideoStatus\": {\n \"properties\": {\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"license\": {\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"uploadStatus\": - {\n \"enumDescriptions\": [\n \"Video has been uploaded - but not processed yet.\",\n \"Video has been successfully processed.\",\n - \ \"Processing has failed. See FailureReason.\",\n \"Video - has been rejected. See RejectionReason.\",\n \"Video has been deleted.\"\n - \ ],\n \"description\": \"The status of the uploaded video.\",\n - \ \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ],\n \"type\": \"string\"\n },\n \"privacyStatus\": - {\n \"description\": \"The video's privacy status.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\"\n },\n - \ \"embeddable\": {\n \"description\": \"This value indicates - if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"publishAt\": {\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the video is scheduled to publish. It can be set - only if the privacy status of the video is private..\"\n },\n \"publicStatsViewable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"failureReason\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ],\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ],\n \"description\": \"This value explains - why a video failed to upload. This property is only present if the uploadStatus - property indicates that the upload failed.\"\n },\n \"rejectionReason\": - {\n \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ],\n \"type\": - \"string\",\n \"description\": \"This value explains why YouTube - rejected an uploaded video. This property is only present if the uploadStatus - property indicates that the upload was rejected.\",\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n }\n },\n \"description\": - \"Basic details about a video category, such as its localized title. Next - Id: 18\",\n \"type\": \"object\",\n \"id\": \"VideoStatus\"\n },\n - \ \"LiveChatMembershipGiftingDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"giftMembershipsLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the level of the gift - memberships purchased by the user. The Level names are defined by the YouTube - channel offering the Membership. In some situations this field isn't filled.\"\n - \ },\n \"giftMembershipsCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"description\": \"The number - of gift memberships purchased by the user.\"\n }\n },\n \"id\": - \"LiveChatMembershipGiftingDetails\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"id\": \"LiveChatSuperChatDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the user to this Super Chat event.\"\n },\n \"currency\": - {\n \"description\": \"The currency in which the purchase was made.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"description\": \"The amount purchased by the user, in micros (1,750,000 - micros = 1.75).\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"tier\": {\n \"description\": \"The - tier in which the amount belongs. Lower amounts belong to lower tiers. The - lowest tier is 1.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n }\n }\n },\n \"SubscriptionSnippet\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the subscription was created.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\"\n - \ },\n \"description\": {\n \"description\": \"The subscription's - details.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The id - object contains information about the channel that the user subscribed to.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n }\n },\n \"title\": {\n \"description\": - \"The subscription's title.\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"channelTitle\": {\n \"description\": \"Channel - title for the channel that the subscription belongs to.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - a subscription, including title, description and thumbnails of the subscribed - item.\",\n \"id\": \"SubscriptionSnippet\"\n },\n \"RelatedEntity\": - {\n \"id\": \"RelatedEntity\",\n \"type\": \"object\",\n \"properties\": - {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n }\n - \ },\n \"Video\": {\n \"description\": \"A *video* resource represents - a YouTube video.\",\n \"properties\": {\n \"monetizationDetails\": - {\n \"$ref\": \"VideoMonetizationDetails\",\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\"\n },\n \"player\": {\n \"$ref\": - \"VideoPlayer\",\n \"description\": \"The player object contains - information that you would use to play the video in an embedded player.\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.videos.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n },\n \"localizations\": - {\n \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"type\": \"object\",\n \"description\": - \"The localizations object contains localized versions of the basic details - about the video, such as its title and description.\"\n },\n \"suggestions\": - {\n \"$ref\": \"VideoSuggestions\",\n \"description\": \"The - suggestions object encapsulates suggestions that identify opportunities to - improve the video quality or the metadata for the uploaded video. This data - can only be retrieved by the video owner.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"recordingDetails\": - {\n \"$ref\": \"VideoRecordingDetails\",\n \"description\": - \"The recordingDetails object encapsulates information about the location, - date and address where the video was recorded.\"\n },\n \"fileDetails\": - {\n \"$ref\": \"VideoFileDetails\",\n \"description\": \"The - fileDetails object encapsulates information about the video file that was - uploaded to YouTube, including the file's resolution, duration, audio and - video codecs, stream bitrates, and more. This data can only be retrieved by - the video owner.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains statistics about the video.\",\n \"$ref\": - \"VideoStatistics\"\n },\n \"ageGating\": {\n \"description\": - \"Age restriction details related to a video. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoAgeGating\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#video\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#video\\\".\"\n },\n \"projectDetails\": - {\n \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"liveStreamingDetails\": {\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n - \ },\n \"processingDetails\": {\n \"description\": \"The - processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoProcessingDetails\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the video's uploading, processing, and privacy statuses.\",\n \"$ref\": - \"VideoStatus\"\n },\n \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video, such as its title, description, and category.\"\n },\n \"topicDetails\": - {\n \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Video\"\n - \ },\n \"CommentThreadListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"CommentThreadListResponse\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#commentThreadListResponse\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of comment threads that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"CommentThread\"\n - \ }\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n }\n - \ },\n \"LiveChatModeratorSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatModeratorSnippet\",\n \"properties\": {\n \"moderatorDetails\": - {\n \"description\": \"Details about the moderator.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"liveChatId\": {\n \"description\": - \"The ID of the live chat this moderator can act on.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoCategorySnippet\": {\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a video category, such as its localized title.\",\n \"id\": \"VideoCategorySnippet\",\n - \ \"properties\": {\n \"channelId\": {\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"description\": \"The YouTube channel - that created the video category.\",\n \"type\": \"string\"\n },\n - \ \"assignable\": {\n \"type\": \"boolean\"\n },\n \"title\": - {\n \"description\": \"The video category's title.\",\n \"type\": - \"string\"\n }\n }\n },\n \"Activity\": {\n \"description\": - \"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.\",\n - \ \"type\": \"object\",\n \"id\": \"Activity\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#activity\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the activity, including the activity's type and group - ID.\",\n \"$ref\": \"ActivitySnippet\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the activity.\",\n \"type\": \"string\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ActivityContentDetails\",\n \"description\": - \"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.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"AbuseType\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"AbuseType\",\n \"type\": \"object\"\n - \ },\n \"MembershipsLevelListResponse\": {\n \"id\": \"MembershipsLevelListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"MembershipsLevel\"\n },\n - \ \"description\": \"A list of pricing levels offered by a creator - to the fans.\",\n \"type\": \"array\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevelListResponse\"\n - \ }\n }\n },\n \"LiveChatBanSnippet\": {\n \"id\": \"LiveChatBanSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The chat - this ban is pertinent to.\"\n },\n \"bannedUserDetails\": {\n - \ \"$ref\": \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": - {\n \"type\": \"string\",\n \"description\": \"The duration - of a ban, only filled if the ban has type TEMPORARY.\",\n \"format\": - \"uint64\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of ban.\",\n \"enum\": [\n - \ \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ]\n }\n }\n },\n \"AbuseReport\": - {\n \"type\": \"object\",\n \"id\": \"AbuseReport\",\n \"properties\": - {\n \"relatedEntities\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"RelatedEntity\"\n }\n },\n \"description\": - {\n \"type\": \"string\"\n },\n \"abuseTypes\": {\n - \ \"items\": {\n \"$ref\": \"AbuseType\"\n },\n - \ \"type\": \"array\"\n },\n \"subject\": {\n \"$ref\": - \"Entity\"\n }\n }\n },\n \"VideoFileDetailsAudioStream\": - {\n \"type\": \"object\",\n \"description\": \"Information about - an audio stream.\",\n \"properties\": {\n \"vendor\": {\n \"type\": - \"string\",\n \"description\": \"A value that uniquely identifies - a video vendor. Typically, the value is a four-letter vendor code.\"\n },\n - \ \"codec\": {\n \"description\": \"The audio codec that the - stream uses.\",\n \"type\": \"string\"\n },\n \"channelCount\": - {\n \"type\": \"integer\",\n \"description\": \"The number - of audio channels that the stream contains.\",\n \"format\": \"uint32\"\n - \ },\n \"bitrateBps\": {\n \"type\": \"string\",\n \"description\": - \"The audio stream's bitrate, in bits per second.\",\n \"format\": - \"uint64\"\n }\n },\n \"id\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"VideoRecordingDetails\": {\n \"description\": \"Recording - information associated with the video.\",\n \"properties\": {\n \"locationDescription\": - {\n \"type\": \"string\",\n \"description\": \"The text - description of the location where the video was recorded.\"\n },\n - \ \"recordingDate\": {\n \"description\": \"The date and time - when the video was recorded.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"location\": {\n \"$ref\": \"GeoPoint\",\n - \ \"description\": \"The geolocation information associated with the - video.\"\n }\n },\n \"id\": \"VideoRecordingDetails\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\",\n - \ \"type\": \"object\"\n },\n \"Subscription\": {\n \"id\": - \"Subscription\",\n \"type\": \"object\",\n \"description\": \"A - *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\",\n \"properties\": - {\n \"contentDetails\": {\n \"$ref\": \"SubscriptionContentDetails\",\n - \ \"description\": \"The contentDetails object contains basic statistics - about the subscription.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the subscription.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#subscription\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\",\n \"$ref\": - \"SubscriptionSnippet\"\n },\n \"subscriberSnippet\": {\n \"$ref\": - \"SubscriptionSubscriberSnippet\",\n \"description\": \"The subscriberSnippet - object contains basic details about the subscriber.\"\n }\n }\n - \ },\n \"LiveStreamHealthStatus\": {\n \"type\": \"object\",\n \"id\": - \"LiveStreamHealthStatus\",\n \"properties\": {\n \"status\": - {\n \"type\": \"string\",\n \"description\": \"The status - code of this stream\",\n \"enum\": [\n \"good\",\n \"ok\",\n - \ \"bad\",\n \"noData\",\n \"revoked\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"lastUpdateTimeSeconds\": {\n \"description\": \"The last - time this status was updated (in seconds)\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"configurationIssues\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n },\n \"description\": - \"The configurations issues on this stream\"\n }\n }\n },\n - \ \"ThumbnailDetails\": {\n \"id\": \"ThumbnailDetails\",\n \"type\": - \"object\",\n \"description\": \"Internal representation of thumbnails - for a YouTube resource.\",\n \"properties\": {\n \"default\": - {\n \"description\": \"The default image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"standard\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The standard quality image for - this resource.\"\n },\n \"maxres\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The maximum resolution quality image for this - resource.\"\n },\n \"medium\": {\n \"description\": - \"The medium quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"high\": {\n \"description\": \"The high quality - image for this resource.\",\n \"$ref\": \"Thumbnail\"\n }\n - \ }\n },\n \"I18nLanguageSnippet\": {\n \"properties\": {\n - \ \"name\": {\n \"description\": \"The human-readable name - of the language in the language itself.\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\"\n }\n - \ },\n \"description\": \"Basic details about an i18n language, such - as language code and human-readable name.\",\n \"type\": \"object\",\n - \ \"id\": \"I18nLanguageSnippet\"\n },\n \"LiveStreamListResponse\": - {\n \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStreamListResponse\"\n - \ },\n \"items\": {\n \"description\": \"A list of live - streams that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"LiveStream\"\n },\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamListResponse\"\n },\n \"InvideoTiming\": {\n - \ \"id\": \"InvideoTiming\",\n \"description\": \"Describes a temporal - position of a visual widget inside a video.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"durationMs\": {\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"offsetMs\": {\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"type\": - {\n \"description\": \"Describes a timing type. If the value is offsetFromStart, - then the offsetMs field represents an offset from the start of the video. - If the value is offsetFromEnd, then the offsetMs field represents an offset - from the end of the video.\",\n \"type\": \"string\",\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ }\n }\n },\n \"I18nLanguage\": {\n \"type\": \"object\",\n - \ \"description\": \"An *i18nLanguage* resource identifies a UI language - currently supported by YouTube.\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n language, such as language code and human-readable name.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the i18n language.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#i18nLanguage\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\"\n - \ }\n },\n \"id\": \"I18nLanguage\"\n },\n \"ChannelStatus\": - {\n \"description\": \"JSON template for the status part of a channel.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"isLinked\": {\n - \ \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n \"longUploadsStatus\": - {\n \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\"\n },\n \"privacyStatus\": {\n \"description\": - \"Privacy status of the channel.\",\n \"type\": \"string\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"id\": \"ChannelStatus\"\n - \ },\n \"LiveChatTextMessageDetails\": {\n \"properties\": {\n \"messageText\": - {\n \"description\": \"The user's message.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatTextMessageDetails\"\n },\n \"MembershipsDetails\": {\n \"properties\": - {\n \"membershipsDurationAtLevels\": {\n \"items\": {\n \"$ref\": - \"MembershipsDurationAtLevel\"\n },\n \"type\": \"array\",\n - \ \"description\": \"Data about memberships duration on particular - pricing levels.\"\n },\n \"membershipsDuration\": {\n \"$ref\": - \"MembershipsDuration\",\n \"description\": \"Data about memberships - duration without taking into consideration pricing levels.\"\n },\n - \ \"accessibleLevels\": {\n \"type\": \"array\",\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"highestAccessibleLevelDisplayName\": {\n \"type\": \"string\",\n - \ \"description\": \"Display name for the highest level that the user - has access to at the moment.\"\n },\n \"highestAccessibleLevel\": - {\n \"type\": \"string\",\n \"description\": \"Id of the - highest level that the user has access to at the moment.\"\n }\n },\n - \ \"id\": \"MembershipsDetails\",\n \"type\": \"object\"\n },\n - \ \"PlaylistPlayer\": {\n \"properties\": {\n \"embedHtml\": - {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a - player that will play the playlist.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"PlaylistPlayer\"\n - \ },\n \"VideoRating\": {\n \"description\": \"Basic details about - rating of a video.\",\n \"id\": \"VideoRating\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"rating\": {\n \"description\": - \"Rating of a video.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveBroadcastStatus\": {\n \"description\": - \"Live broadcast state.\",\n \"id\": \"LiveBroadcastStatus\",\n \"properties\": - {\n \"recordingStatus\": {\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The broadcast's recording status.\",\n \"enumDescriptions\": [\n - \ \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ]\n },\n \"selfDeclaredMadeForKids\": {\n \"description\": - \"This field will be set to True if the creator declares the broadcast to - be kids only: go/live-cw-work.\",\n \"type\": \"boolean\"\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the broadcast is made for kids or not, decided by YouTube instead - of the creator. This field is read only.\"\n },\n \"privacyStatus\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's privacy status. Note that the - broadcast represents exactly one YouTube video, so the privacy settings are - identical to those supported for videos. In addition, you can set this field - by modifying the broadcast resource or by setting the privacyStatus field - of the corresponding video resource.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"liveBroadcastPriority\": - {\n \"type\": \"string\",\n \"description\": \"Priority - of the live broadcast event (internal state).\",\n \"enum\": [\n - \ \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ]\n },\n \"lifeCycleStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"description\": \"The broadcast's status. The status can be updated - using the API's liveBroadcasts.transition method.\",\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ]\n }\n },\n \"type\": - \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": {\n - \ \"type\": \"object\",\n \"description\": \"Video processing progress - and completion time estimate.\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"properties\": {\n \"partsTotal\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"An estimate - of the total number of parts that need to be processed for the video. The - number may be updated with more precise estimates while YouTube processes - the video.\"\n },\n \"timeLeftMs\": {\n \"format\": - \"uint64\",\n \"description\": \"An estimate of the amount of time, - in millseconds, that YouTube needs to finish processing the video.\",\n \"type\": - \"string\"\n },\n \"partsProcessed\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of parts of the video that YouTube has already processed. You can estimate - the percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\"\n }\n - \ }\n },\n \"ChannelBrandingSettings\": {\n \"id\": \"ChannelBrandingSettings\",\n - \ \"type\": \"object\",\n \"description\": \"Branding properties - of a YouTube channel.\",\n \"properties\": {\n \"hints\": {\n - \ \"items\": {\n \"$ref\": \"PropertyValue\"\n },\n - \ \"type\": \"array\",\n \"description\": \"Additional experimental - branding properties.\"\n },\n \"channel\": {\n \"$ref\": - \"ChannelSettings\",\n \"description\": \"Branding properties for - the channel view.\"\n },\n \"watch\": {\n \"description\": - \"Branding properties for the watch page.\",\n \"$ref\": \"WatchSettings\"\n - \ },\n \"image\": {\n \"$ref\": \"ImageSettings\",\n - \ \"description\": \"Branding properties for branding images.\"\n - \ }\n }\n },\n \"CaptionSnippet\": {\n \"properties\": - {\n \"trackKind\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The caption track's type.\",\n \"type\": \"string\",\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ]\n },\n \"isAutoSynced\": {\n \"description\": - \"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.\",\n \"type\": \"boolean\"\n },\n \"isLarge\": - {\n \"description\": \"Indicates whether the caption track uses large - text for the vision-impaired. The default value is false.\",\n \"type\": - \"boolean\"\n },\n \"language\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\"\n },\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the caption track. The name is intended - to be visible to the user as an option during playback.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"failureReason\": {\n \"type\": - \"string\",\n \"description\": \"The reason that YouTube failed to - process the caption track. This property is only present if the state property's - value is failed.\",\n \"enum\": [\n \"unknownFormat\",\n - \ \"unsupportedFormat\",\n \"processingFailed\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"lastUpdated\": {\n \"description\": - \"The date and time when the caption track was last updated.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"isEasyReader\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n - \ },\n \"isDraft\": {\n \"type\": \"boolean\",\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video associated with - the caption track. @mutable youtube.captions.insert\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"status\": {\n \"description\": \"The caption track's status.\",\n - \ \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"isCC\": {\n \"description\": \"Indicates whether the track - contains closed captions for the deaf and hard of hearing. The default value - is false.\",\n \"type\": \"boolean\"\n },\n \"audioTrackType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of audio track associated with the caption track.\",\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"CaptionSnippet\",\n \"description\": - \"Basic details about a caption track, such as its language and name.\",\n - \ \"type\": \"object\"\n },\n \"LocalizedString\": {\n \"type\": - \"object\",\n \"id\": \"LocalizedString\",\n \"properties\": {\n - \ \"value\": {\n \"type\": \"string\"\n },\n \"language\": - {\n \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsSocial\": - {\n \"properties\": {\n \"referenceUrl\": {\n \"description\": - \"The URL of the social network post.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ],\n \"description\": \"The name - of the social network.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"resourceId\": {\n \"description\": \"The resourceId object - encapsulates information that identifies the resource associated with a social - network post.\",\n \"$ref\": \"ResourceId\"\n },\n \"imageUrl\": - {\n \"description\": \"An image of the post's author.\",\n \"type\": - \"string\"\n },\n \"author\": {\n \"description\": - \"The author of the social network post.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Details - about a social network post.\",\n \"id\": \"ActivityContentDetailsSocial\"\n - \ },\n \"ActivityContentDetailsSubscription\": {\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that the user subscribed - to.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"id\": - \"ActivityContentDetailsSubscription\",\n \"type\": \"object\",\n \"description\": - \"Information about a channel that a user subscribed to.\"\n },\n \"PlaylistLocalization\": - {\n \"type\": \"object\",\n \"description\": \"Playlist localization - setting\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for playlist's - title.\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for playlist's description.\"\n - \ }\n },\n \"id\": \"PlaylistLocalization\"\n },\n \"ChannelToStoreLinkDetails\": - {\n \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"properties\": {\n \"merchantId\": {\n \"description\": - \"Google Merchant Center id of the store.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"storeName\": {\n \"type\": - \"string\",\n \"description\": \"Name of the store.\"\n },\n - \ \"storeUrl\": {\n \"type\": \"string\",\n \"description\": - \"Landing page of the store.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"TestItemTestItemSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\"\n },\n - \ \"LiveStreamStatus\": {\n \"description\": \"Brief description of - the live stream status.\",\n \"properties\": {\n \"healthStatus\": - {\n \"$ref\": \"LiveStreamHealthStatus\",\n \"description\": - \"The health status of the stream.\"\n },\n \"streamStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"id\": \"LiveStreamStatus\",\n \"type\": - \"object\"\n },\n \"ChannelSectionContentDetails\": {\n \"properties\": - {\n \"playlists\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The playlist ids for - type single_playlist and multiple_playlists. For singlePlaylist, only one - playlistId is allowed.\",\n \"type\": \"array\"\n },\n \"channels\": - {\n \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"description\": \"Details - about a channelsection, including playlists and channels.\",\n \"id\": - \"ChannelSectionContentDetails\",\n \"type\": \"object\"\n },\n \"VideoLocalization\": - {\n \"id\": \"VideoLocalization\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's description.\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"Localized version - of the video's title.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Localized versions of certain video properties (e.g. - title).\"\n },\n \"VideoMonetizationDetails\": {\n \"description\": - \"Details about monetization of a YouTube Video.\",\n \"properties\": - {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\"\n - \ }\n },\n \"id\": \"VideoMonetizationDetails\",\n \"type\": - \"object\"\n },\n \"MembershipsLevel\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevel\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the memberships level.\"\n - \ },\n \"snippet\": {\n \"$ref\": \"MembershipsLevelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the level.\"\n }\n },\n \"description\": \"A *membershipsLevel* - resource represents an offer made by YouTube creators for their fans. Users - can become members of the channel by joining one of the available levels. - They will provide recurring monetary support and receives special benefits.\",\n - \ \"id\": \"MembershipsLevel\"\n },\n \"ChannelConversionPing\": - {\n \"description\": \"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.\",\n \"id\": \"ChannelConversionPing\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"conversionUrl\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"context\": {\n \"description\": \"Defines the context of - the ping.\",\n \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ }\n }\n },\n \"I18nLanguageListResponse\": {\n \"id\": - \"I18nLanguageListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of supported i18n languages. In this map, the i18n language ID is - the map key, and its value is the corresponding i18nLanguage resource.\",\n - \ \"items\": {\n \"$ref\": \"I18nLanguage\"\n }\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nLanguageListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ }\n },\n \"I18nRegionSnippet\": {\n \"properties\": {\n \"gl\": - {\n \"description\": \"The region code as a 2-letter ISO country - code.\",\n \"type\": \"string\"\n },\n \"name\": {\n - \ \"description\": \"The human-readable name of the region.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"I18nRegionSnippet\",\n \"description\": \"Basic details about an i18n - region, such as region code and human-readable name.\"\n },\n \"ActivityContentDetailsComment\": - {\n \"id\": \"ActivityContentDetailsComment\",\n \"description\": - \"Information about a resource that received a comment.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource associated with the - comment.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveBroadcast\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveBroadcast\"\n - \ },\n \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"The statistics object contains info about the - event's current stats. These include concurrent viewers and total chat count. - Statistics can change (in either direction) during the lifetime of an event. - Statistics are only returned while the event is live.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the event, including its title, description, start time, and end time.\",\n - \ \"$ref\": \"LiveBroadcastSnippet\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"annotations\": {\n - \ \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the broadcast.\",\n \"type\": \"string\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\"\n },\n \"status\": - {\n \"$ref\": \"LiveBroadcastStatus\",\n \"description\": - \"The status object contains information about the event's status.\"\n }\n - \ },\n \"id\": \"LiveBroadcast\",\n \"description\": \"A *liveBroadcast* - resource represents an event that will be streamed, via live video, on YouTube.\"\n - \ },\n \"IngestionInfo\": {\n \"description\": \"Describes information - necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"properties\": - {\n \"rtmpsIngestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"This ingestion url may be used instead of ingestionAddress - in order to stream via RTMPS. Not applicable to non-RTMP streams.\"\n },\n - \ \"backupIngestionAddress\": {\n \"type\": \"string\",\n \"description\": - \"The backup ingestion URL that you should use to stream video to YouTube. - You have the option of simultaneously streaming the content that you are sending - to the ingestionAddress to this URL.\"\n },\n \"streamName\": - {\n \"description\": \"The stream name that YouTube assigns to the - video stream.\",\n \"type\": \"string\"\n },\n \"rtmpsBackupIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - backupIngestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"ingestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The primary - ingestion URL that you should use to stream video to YouTube. You must stream - video to this URL. Depending on which application or tool you use to encode - your video stream, you may need to enter the stream URL and stream name separately - or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \"\n }\n },\n \"id\": \"IngestionInfo\",\n \"type\": - \"object\"\n },\n \"MembershipsDurationAtLevel\": {\n \"id\": \"MembershipsDurationAtLevel\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"level\": {\n - \ \"type\": \"string\",\n \"description\": \"Pricing level - ID.\"\n },\n \"memberSince\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the user became a continuous - member for the given level.\"\n },\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"description\": \"The cumulative - time the user has been a member for the given level in complete months (the - time is rounded down to the nearest integer).\",\n \"format\": \"int32\"\n - \ }\n }\n },\n \"InvideoBranding\": {\n \"id\": \"InvideoBranding\",\n - \ \"properties\": {\n \"targetChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The channel to which this branding - links. If not present it defaults to the current channel.\"\n },\n - \ \"imageBytes\": {\n \"type\": \"string\",\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"format\": \"byte\"\n },\n \"position\": {\n \"$ref\": - \"InvideoPosition\",\n \"description\": \"The spatial position within - the video where the branding watermark will be displayed.\"\n },\n - \ \"timing\": {\n \"description\": \"The temporal position - within the video where watermark will be displayed.\",\n \"$ref\": - \"InvideoTiming\"\n },\n \"imageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The url of the uploaded image. Only - used in apiary to api communication.\"\n }\n },\n \"description\": - \"LINT.IfChange Describes an invideo branding.\",\n \"type\": \"object\"\n - \ },\n \"PlaylistListResponse\": {\n \"id\": \"PlaylistListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Playlist\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of playlists that match the request criteria\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#playlistListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistListResponse\\\".\"\n }\n }\n - \ },\n \"LiveChatMessageDeletedDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageDeletedDetails\",\n \"properties\": {\n - \ \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveChatUserBannedMessageDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"The details of the - user that was banned.\"\n },\n \"banDurationSeconds\": {\n \"description\": - \"The duration of the ban. This property is only present if the banType is - temporary.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"banType\": {\n \"description\": \"The type - of ban.\",\n \"enum\": [\n \"permanent\",\n \"temporary\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n }\n },\n - \ \"id\": \"LiveChatUserBannedMessageDetails\"\n },\n \"LiveChatMessageSnippet\": - {\n \"properties\": {\n \"fanFundingEventDetails\": {\n \"$ref\": - \"LiveChatFanFundingEventDetails\",\n \"description\": \"Details - about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time when the message was orignally published.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"displayMessage\": - {\n \"type\": \"string\",\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"newSponsorDetails\": {\n \"description\": - \"Details about the New Member Announcement event, this is only set if the - type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term - for \\\"sponsor\\\".\",\n \"$ref\": \"LiveChatNewSponsorDetails\"\n - \ },\n \"authorChannelId\": {\n \"description\": \"The - ID of the user that authored this message, this field is not always filled. - textMessageEvent - the user that wrote the message fanFundingEvent - the user - that funded the broadcast newSponsorEvent - the user that just became a sponsor - memberMilestoneChatEvent - the member that sent the message membershipGiftingEvent - - the user that made the purchase giftMembershipReceivedEvent - the user that - received the gift membership messageDeletedEvent - the moderator that took - the action messageRetractedEvent - the author that retracted their message - userBannedEvent - the moderator that took the action superChatEvent - the - user that made the purchase superStickerEvent - the user that made the purchase\",\n - \ \"type\": \"string\"\n },\n \"membershipGiftingDetails\": - {\n \"description\": \"Details about the Membership Gifting event, - this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": - \"LiveChatMembershipGiftingDetails\"\n },\n \"liveChatId\": - {\n \"type\": \"string\"\n },\n \"superChatDetails\": - {\n \"description\": \"Details about the Super Chat event, this is - only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n - \ },\n \"hasDisplayContent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the message has display content that - should be displayed to users.\"\n },\n \"type\": {\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\"\n },\n \"userBannedDetails\": {\n \"$ref\": - \"LiveChatUserBannedMessageDetails\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"superStickerDetails\": {\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n }\n },\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Next ID: 33\"\n },\n - \ \"VideoProcessingDetails\": {\n \"properties\": {\n \"editorSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether video editing suggestions, which might improve video quality - or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\"\n },\n \"processingIssuesAvailability\": {\n \"description\": - \"This value indicates whether the video processing engine has generated suggestions - that might improve YouTube's ability to process the the video, warnings that - explain video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"processingFailureReason\": - {\n \"description\": \"The reason that YouTube failed to process - the video. This property will only have a value if the processingStatus property's - value is failed.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ]\n },\n - \ \"processingProgress\": {\n \"description\": \"The processingProgress - object contains information about the progress YouTube has made in processing - the video. The values are really only relevant if the video's processing status - is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"processingStatus\": {\n \"description\": \"The - video's processing status. This value indicates whether YouTube was able to - process the video or if the video is still being processed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ]\n },\n \"thumbnailsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether thumbnail - images have been generated for the video.\"\n },\n \"fileDetailsAvailability\": - {\n \"description\": \"This value indicates whether file details - are available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"tagSuggestionsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether keyword - (tag) suggestions are available for the video. Tags can be added to a video's - metadata to make it easier for other users to find the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\"\n }\n },\n \"id\": \"VideoProcessingDetails\",\n - \ \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\",\n \"type\": \"object\"\n },\n - \ \"LiveChatGiftMembershipReceivedDetails\": {\n \"properties\": {\n - \ \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the Level at which the viewer is a member. This matches the - `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated - membership gifting message. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\"\n },\n - \ \"gifterChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the user that made the membership gifting purchase. This matches - the `snippet.authorChannelId` of the associated membership gifting message.\"\n - \ },\n \"associatedMembershipGiftingMessageId\": {\n \"description\": - \"The ID of the membership gifting message that is related to this gift membership. - This ID will always refer to a message whose type is 'membershipGiftingEvent'.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"type\": \"object\"\n },\n \"PlaylistItemSnippet\": {\n \"properties\": - {\n \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the user that added the item to the playlist.\",\n - \ \"type\": \"string\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The id object contains information - that can be used to uniquely identify the resource that is included in the - playlist as the playlist item.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n }\n },\n \"position\": {\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the item was added to the playlist.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist item. 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.\"\n },\n - \ \"playlistId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify thGe playlist that the playlist item is in.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"The item's description.\",\n \"type\": \"string\"\n },\n - \ \"videoOwnerChannelId\": {\n \"description\": \"Channel id - for the channel this video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the playlist - item belongs to.\"\n },\n \"videoOwnerChannelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel this - video belongs to.\"\n },\n \"title\": {\n \"description\": - \"The item's title.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"PlaylistItemSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails. - Basic details of a YouTube Playlist item provided by the author. Next ID: - 15\"\n },\n \"Member\": {\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"MemberSnippet\",\n \"description\": \"The - snippet object contains basic details about the member.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#member\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#member\\\".\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A *member* resource represents - a member for a YouTube channel. A member provides recurring monetary support - to a creator and receives special benefits.\",\n \"id\": \"Member\",\n - \ \"type\": \"object\"\n },\n \"LanguageTag\": {\n \"id\": - \"LanguageTag\",\n \"type\": \"object\",\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsUpload\": - {\n \"id\": \"ActivityContentDetailsUpload\",\n \"properties\": - {\n \"videoId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the uploaded video.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Information about the uploaded - video.\",\n \"type\": \"object\"\n },\n \"VideoProjectDetails\": - {\n \"description\": \"DEPRECATED. b/157517979: This part was never populated - after it was added. However, it sees non-zero traffic because there is generated - client code in the wild that refers to it [1]. We keep this field and do NOT - remove it because otherwise V3 would return an error when this part gets requested - [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"type\": \"object\",\n \"properties\": {},\n \"id\": \"VideoProjectDetails\"\n - \ },\n \"ChannelSectionTargeting\": {\n \"type\": \"object\",\n - \ \"description\": \"ChannelSection targeting setting.\",\n \"id\": - \"ChannelSectionTargeting\",\n \"properties\": {\n \"regions\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The region the - channel section is targeting.\"\n },\n \"languages\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The language the channel section is targeting.\"\n - \ },\n \"countries\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The country the channel - section is targeting.\",\n \"type\": \"array\"\n }\n }\n - \ },\n \"LiveStreamContentDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"closedCaptionsIngestionUrl\": {\n \"description\": - \"The ingestion URL where the closed captions of this stream are sent.\",\n - \ \"type\": \"string\"\n },\n \"isReusable\": {\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \",\n \"type\": \"boolean\"\n }\n },\n \"id\": \"LiveStreamContentDetails\",\n - \ \"description\": \"Detailed settings of a stream.\"\n },\n \"ActivityContentDetailsLike\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the rated resource.\"\n }\n },\n \"id\": - \"ActivityContentDetailsLike\",\n \"description\": \"Information about - a resource that received a positive (like) rating.\",\n \"type\": \"object\"\n - \ },\n \"CommentSnippet\": {\n \"type\": \"object\",\n \"id\": - \"CommentSnippet\",\n \"properties\": {\n \"updatedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the comment - was last updated.\",\n \"type\": \"string\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"viewerRating\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"description\": - \"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.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ]\n },\n \"authorDisplayName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the user who posted - the comment.\"\n },\n \"authorChannelId\": {\n \"$ref\": - \"CommentSnippetAuthorChannelId\"\n },\n \"canRate\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the current viewer can - rate this comment.\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the comment was originally published.\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID of the video the - comment refers to, if any.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"textOriginal\": {\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"authorProfileImageUrl\": {\n \"description\": - \"The URL for the avatar of the user who posted the comment.\",\n \"type\": - \"string\"\n },\n \"textDisplay\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"likeCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The total - number of likes this comment has received.\",\n \"type\": \"integer\"\n - \ },\n \"moderationStatus\": {\n \"description\": \"The - comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment is - awaiting review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ]\n },\n \"parentId\": {\n - \ \"description\": \"The unique id of the parent comment, only set - for replies.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about a comment, such as its author and text.\"\n },\n - \ \"TokenPagination\": {\n \"properties\": {},\n \"description\": - \"Stub token pagination template to suppress results.\",\n \"id\": \"TokenPagination\",\n - \ \"type\": \"object\"\n },\n \"VideoSuggestions\": {\n \"id\": - \"VideoSuggestions\",\n \"description\": \"Specifies suggestions on how - to improve video content, including encoding hints, tag suggestions, and editor - suggestions.\",\n \"type\": \"object\",\n \"properties\": {\n \"processingHints\": - {\n \"description\": \"A list of suggestions that may improve YouTube's - ability to process the video.\",\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"The MP4 - file is not streamable, this will slow down the processing. MOOV atom was - not found at the beginning of the file.\",\n \"Probably a better - quality version of the video exists. The video has wide screen aspect ratio, - but is not an HD video.\",\n \"Uploaded video is spherical video.\",\n - \ \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ]\n },\n \"type\": - \"array\"\n },\n \"tagSuggestions\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"description\": \"A list of keyword tags that could - be added to the video's metadata to increase the likelihood that users will - locate your video when searching or browsing on YouTube.\"\n },\n \"processingErrors\": - {\n \"description\": \"A list of errors that will prevent YouTube - from successfully processing the uploaded video video. These errors indicate - that, regardless of the video's current processing status, eventually, that - status will almost certainly be failed.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"audioFile\",\n \"imageFile\",\n - \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n - \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n },\n \"type\": \"array\"\n },\n \"processingWarnings\": - {\n \"type\": \"array\",\n \"description\": \"A list of - reasons why YouTube may have difficulty transcoding the uploaded video or - that might result in an erroneous transcoding. These warnings are generated - before YouTube actually processes the uploaded video file. In addition, they - identify issues that are unlikely to cause the video processing to fail but - that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"type\": - \"string\"\n }\n },\n \"editorSuggestions\": {\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Picture brightness levels seem off and could be corrected.\",\n - \ \"The video appears shaky and could be stabilized.\",\n \"Margins - (mattes) detected around the picture could be cropped.\",\n \"The - audio track appears silent and could be swapped with a better quality one.\"\n - \ ],\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ]\n }\n }\n }\n },\n \"ThirdPartyLinkListResponse\": - {\n \"id\": \"ThirdPartyLinkListResponse\",\n \"properties\": {\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoContentDetails\": {\n \"description\": \"Details about - the content of a YouTube Video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"definition\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"sd\",\n \"hd\"\n ],\n \"enum\": - [\n \"sd\",\n \"hd\"\n ],\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\"\n },\n \"dimension\": - {\n \"description\": \"The value of dimension indicates whether the - video is available in 3D or in 2D.\",\n \"type\": \"string\"\n },\n - \ \"caption\": {\n \"type\": \"string\",\n \"enum\": - [\n \"true\",\n \"false\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The value of captions indicates whether the video has captions or not.\"\n - \ },\n \"hasCustomThumbnail\": {\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n },\n \"duration\": {\n \"type\": \"string\",\n - \ \"description\": \"The length of the video. The tag value is an - ISO 8601 duration in the format PT#M#S, in which the letters PT indicate that - the value specifies a period of time, and the letters M and S refer to length - in minutes and seconds, respectively. The # characters preceding the M and - S letters are both integers that specify the number of minutes (or seconds) - of the video. For example, a value of PT15M51S indicates that the video is - 15 minutes and 51 seconds long.\"\n },\n \"regionRestriction\": - {\n \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"countryRestriction\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - countryRestriction object contains information about the countries where a - video is (or is not) viewable.\"\n },\n \"licensedContent\": - {\n \"description\": \"The value of is_license_content indicates - whether the video is licensed content.\",\n \"type\": \"boolean\"\n - \ },\n \"projection\": {\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ],\n \"type\": \"string\",\n \"description\": - \"Specifies the projection format of the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"contentRating\": - {\n \"$ref\": \"ContentRating\",\n \"description\": \"Specifies - the ratings that the video received under various rating schemes.\"\n }\n - \ },\n \"id\": \"VideoContentDetails\"\n },\n \"SubscriptionListResponse\": - {\n \"type\": \"object\",\n \"id\": \"SubscriptionListResponse\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"kind\": {\n \"default\": - \"youtube#subscriptionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Subscription\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of subscriptions that match the request criteria.\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveBroadcastSnippet\": {\n \"id\": \"LiveBroadcastSnippet\",\n - \ \"description\": \"Basic broadcast information.\",\n \"type\": - \"object\",\n \"properties\": {\n \"scheduledStartTime\": {\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"description\": {\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\",\n \"type\": \"string\"\n },\n \"scheduledEndTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to end.\"\n },\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The id of the live chat for this broadcast.\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the broadcast was added to YouTube's live broadcast schedule.\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - broadcast. For each nested object in this object, the key is the name of the - thumbnail image, and the value is an object that contains other information - about the thumbnail.\"\n },\n \"isDefaultBroadcast\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether this broadcast - is the default broadcast. Internal only.\"\n },\n \"actualEndTime\": - {\n \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"actualStartTime\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast actually started. This information - is only available once the broadcast's state is live.\",\n \"format\": - \"date-time\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's title. Note that the broadcast - represents exactly one YouTube video. You can set this field by modifying - the broadcast resource or by setting the title field of the corresponding - video resource.\"\n }\n }\n },\n \"LiveStream\": {\n \"properties\": - {\n \"contentDetails\": {\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n },\n - \ \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveStreamSnippet\",\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\"\n },\n \"status\": {\n \"$ref\": - \"LiveStreamStatus\",\n \"description\": \"The status object contains - information about live stream's status.\"\n },\n \"kind\": {\n - \ \"default\": \"youtube#liveStream\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the stream.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveStream\",\n \"description\": - \"A live stream describes a live ingestion point.\"\n },\n \"ThumbnailSetResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thumbnailSetResponse\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"description\": \"A list of thumbnails.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n - \ }\n }\n },\n \"id\": \"ThumbnailSetResponse\"\n - \ },\n \"ChannelTopicDetails\": {\n \"properties\": {\n \"topicIds\": - {\n \"type\": \"array\",\n \"description\": \"A list of - Freebase topic IDs associated with the channel. You can retrieve information - about each topic using the Freebase Topic API.\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n },\n \"topicCategories\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Wikipedia - URLs that describe the channel's content.\"\n }\n },\n \"id\": - \"ChannelTopicDetails\",\n \"description\": \"Freebase topic information - related to the channel.\",\n \"type\": \"object\"\n },\n \"ChannelSectionSnippet\": - {\n \"properties\": {\n \"defaultLanguage\": {\n \"description\": - \"The language of the channel section's default title and description.\",\n - \ \"type\": \"string\"\n },\n \"position\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The position of the channel section in the channel.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the channel section.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of the channel section.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel section's title for - multiple_playlists and multiple_channels.\"\n },\n \"localized\": - {\n \"description\": \"Localized title, read-only.\",\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"style\": {\n \"enum\": - [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"description\": \"The - style of the channel section.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelSectionSnippet\",\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\"\n },\n \"WatchSettings\": {\n \"description\": - \"Branding properties for the watch. All deprecated.\",\n \"id\": \"WatchSettings\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"backgroundColor\": - {\n \"description\": \"The text color for the video watch page's - branded area.\",\n \"type\": \"string\"\n },\n \"featuredPlaylistId\": - {\n \"type\": \"string\",\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\"\n - \ },\n \"textColor\": {\n \"description\": \"The background - color for the video watch page's branded area.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoAbuseReport\": {\n \"id\": \"VideoAbuseReport\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"language\": - {\n \"type\": \"string\",\n \"description\": \"The language - that the content was viewed in.\"\n },\n \"reasonId\": {\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n },\n - \ \"secondaryReasonId\": {\n \"type\": \"string\",\n \"description\": - \"The specific, or secondary, reason that this content is abusive (if available). - The value is an abuse report reason ID that is a valid secondary reason for - the primary reason.\"\n },\n \"comments\": {\n \"type\": - \"string\",\n \"description\": \"Additional comments regarding the - abuse report.\"\n }\n }\n },\n \"ChannelConversionPings\": - {\n \"id\": \"ChannelConversionPings\",\n \"type\": \"object\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\",\n \"properties\": - {\n \"pings\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ChannelConversionPing\"\n },\n \"description\": - \"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.\"\n }\n }\n },\n \"SuperChatEventListResponse\": - {\n \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n },\n - \ \"description\": \"A list of Super Chat purchases that match the - request criteria.\",\n \"type\": \"array\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"default\": \"youtube#superChatEventListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"SuperChatEventListResponse\",\n \"type\": \"object\"\n - \ },\n \"MemberListResponse\": {\n \"id\": \"MemberListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"description\": \"A list of members that match the request criteria.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Member\"\n }\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ImageSettings\": - {\n \"type\": \"object\",\n \"description\": \"Branding properties - for images associated with the channel.\",\n \"properties\": {\n \"bannerMobileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size (640x175).\"\n },\n \"bannerImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Desktop size (1060x175).\"\n - \ },\n \"bannerTabletLowImageUrl\": {\n \"description\": - \"Banner image. Tablet size low resolution (1138x188).\",\n \"type\": - \"string\"\n },\n \"bannerTvImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. TV size extra high - resolution (2120x1192).\"\n },\n \"trackingImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL for a 1px by 1px tracking - pixel that can be used to collect statistics for views of the channel or video - pages.\"\n },\n \"bannerTabletHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\"\n },\n \"watchIconImageUrl\": {\n \"type\": - \"string\"\n },\n \"largeBrandedBannerImageImapScript\": {\n - \ \"description\": \"The image map script for the large banner image.\",\n - \ \"$ref\": \"LocalizedProperty\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"bannerExternalUrl\": {\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\",\n - \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\",\n - \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size extra high resolution - (2560x424).\",\n \"type\": \"string\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"bannerTvHighImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. TV size high resolution (1920x1080).\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size medium resolution (1280x720).\"\n },\n \"bannerTabletImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n },\n \"bannerTvLowImageUrl\": {\n - \ \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1280x360).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n }\n },\n - \ \"id\": \"ImageSettings\"\n },\n \"VideoLiveStreamingDetails\": - {\n \"description\": \"Details about the live streaming metadata.\",\n - \ \"id\": \"VideoLiveStreamingDetails\",\n \"properties\": {\n \"concurrentViewers\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"type\": \"string\"\n - \ },\n \"actualStartTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The time - that the broadcast actually started. This value will not be available until - the broadcast begins.\"\n },\n \"scheduledStartTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The time that the broadcast is - scheduled to begin.\",\n \"type\": \"string\"\n },\n \"activeLiveChatId\": - {\n \"description\": \"The ID of the currently active live chat attached - to this video. This field is filled only if the video is a currently live - broadcast that has live chat. Once the broadcast transitions to complete this - field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\",\n \"type\": \"string\"\n - \ },\n \"actualEndTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast actually ended. This - value will not be available until the broadcast is over.\",\n \"type\": - \"string\"\n },\n \"scheduledEndTime\": {\n \"description\": - \"The time that the broadcast is scheduled to end. If the value is empty or - the property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"description\": - \"Basic details about a video category, such as its localized title.\",\n - \ \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label belonging to this abuse report - reason.\"\n },\n \"secondaryReasons\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"description\": \"The secondary reasons associated - with this reason, if any are available. (There might be 0 or more.)\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"MonitorStreamInfo\": {\n - \ \"description\": \"Settings and Info of the monitor stream\",\n \"type\": - \"object\",\n \"id\": \"MonitorStreamInfo\",\n \"properties\": {\n - \ \"broadcastStreamDelayMs\": {\n \"type\": \"integer\",\n - \ \"description\": \"If you have set the enableMonitorStream property - to true, then this property determines the length of the live broadcast delay.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"format\": \"uint32\"\n },\n - \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\"\n },\n - \ \"enableMonitorStream\": {\n \"description\": \"This value - determines whether the monitor stream is enabled for the broadcast. If the - monitor stream is enabled, then YouTube will broadcast the event content on - a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\",\n \"type\": - \"boolean\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ }\n }\n },\n \"PlaylistContentDetails\": {\n \"properties\": - {\n \"itemCount\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The number of videos in the playlist.\"\n - \ }\n },\n \"id\": \"PlaylistContentDetails\",\n \"type\": - \"object\"\n },\n \"LevelDetails\": {\n \"properties\": {\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - that should be used when referring to this level.\"\n }\n },\n - \ \"id\": \"LevelDetails\",\n \"type\": \"object\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"id\": \"CommentSnippetAuthorChannelId\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"The id of the author's YouTube - channel, if any.\"\n },\n \"LiveChatBan\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatBan\",\n \"properties\": {\n \"id\": {\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the ban.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatBan\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The `snippet` - object contains basic details about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n - \ }\n },\n \"description\": \"A `__liveChatBan__` resource - represents a ban for a YouTube live chat.\"\n },\n \"Comment\": {\n - \ \"id\": \"Comment\",\n \"description\": \"A *comment* represents - a single YouTube comment.\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#comment\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"CommentSnippet\",\n \"description\": \"The snippet object contains - basic details about the comment.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the comment.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ }\n },\n \"VideoGetRatingResponse\": {\n \"id\": \"VideoGetRatingResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoGetRatingResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"description\": \"A list of ratings that - match the request criteria.\",\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"channelId\": - {\n \"description\": \"The channel ID of the subscriber.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the subscriber.\"\n },\n - \ \"description\": {\n \"description\": \"The description of - the subscriber.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"Thumbnails - for this subscriber.\"\n }\n },\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"Basic details about a subscription's subscriber including - title, description, channel ID and thumbnails.\"\n },\n \"PlaylistSnippet\": - {\n \"id\": \"PlaylistSnippet\",\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails.\",\n \"properties\": - {\n \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that published the playlist.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist. 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.\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the playlist was created.\"\n },\n \"description\": - {\n \"description\": \"The playlist's description.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the playlist's default title and description.\",\n \"type\": - \"string\"\n },\n \"thumbnailVideoId\": {\n \"type\": - \"string\",\n \"description\": \"Note: if the playlist has a custom - thumbnail, this field will not be populated. The video id selected by the - user that will be used as the thumbnail of this playlist. This field defaults - to the first publicly viewable video in the playlist, if: 1. The user has - never selected a video to be the thumbnail of the playlist. 2. The user selects - a video to be the thumbnail, and then removes that video from the playlist. - 3. The user selects a non-owned video to be the thumbnail, but that video - becomes private, or gets deleted.\"\n },\n \"channelTitle\": - {\n \"description\": \"The channel title of the channel that the - video belongs to.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"description\": \"The playlist's title.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"tags\": {\n \"description\": \"Keyword tags - associated with the playlist.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatNewSponsorDetails\": {\n \"properties\": - {\n \"isUpgrade\": {\n \"description\": \"If the viewer just - had upgraded from a lower level. For viewers that were not members at the - time of purchase, this field is false.\",\n \"type\": \"boolean\"\n - \ },\n \"memberLevelName\": {\n \"description\": \"The - name of the Level that the viewer just had joined. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatNewSponsorDetails\"\n },\n \"CdnSettings\": - {\n \"properties\": {\n \"resolution\": {\n \"enum\": - [\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The resolution of the inbound video data.\"\n - \ },\n \"ingestionType\": {\n \"description\": \" The - method or protocol used to transmit the video stream.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"enum\": [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"format\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The format of the video stream that you are sending - to Youtube. \"\n },\n \"frameRate\": {\n \"description\": - \"The frame rate of the inbound video data.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ]\n },\n - \ \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n \"description\": - \"The ingestionInfo object contains information that YouTube provides that - you need to transmit your RTMP or HTTP stream to YouTube.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"CdnSettings\",\n \"description\": - \"Brief description of the live stream cdn settings.\"\n },\n \"LiveChatModerator\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"default\": \"youtube#liveChatModerator\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the moderator.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the moderator.\",\n \"$ref\": - \"LiveChatModeratorSnippet\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatModerator\",\n \"description\": \"A *liveChatModerator* - resource represents a moderator for a YouTube live chat. A chat moderator - has the ability to ban/unban users from a chat, remove message, etc.\"\n },\n - \ \"CommentThread\": {\n \"id\": \"CommentThread\",\n \"description\": - \"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.\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"default\": \"youtube#commentThread\"\n },\n \"replies\": - {\n \"$ref\": \"CommentThreadReplies\",\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the comment thread.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoFileDetailsVideoStream\": {\n \"properties\": - {\n \"aspectRatio\": {\n \"description\": \"The video content's - display aspect ratio, which specifies the aspect ratio in which the video - should be displayed.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n },\n \"rotation\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The amount that - YouTube needs to rotate the original source content to properly display the - video.\",\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ]\n },\n \"widthPixels\": {\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\"\n },\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The video - codec that the stream uses.\"\n },\n \"heightPixels\": {\n \"type\": - \"integer\",\n \"description\": \"The encoded video content's height - in pixels.\",\n \"format\": \"uint32\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n },\n \"bitrateBps\": {\n \"description\": - \"The video stream's bitrate, in bits per second.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"frameRateFps\": - {\n \"description\": \"The video stream's frame rate, in frames per - second.\",\n \"format\": \"double\",\n \"type\": \"number\"\n - \ }\n },\n \"id\": \"VideoFileDetailsVideoStream\",\n \"description\": - \"Information about a video stream.\",\n \"type\": \"object\"\n },\n - \ \"Caption\": {\n \"id\": \"Caption\",\n \"description\": \"A - *caption* resource represents a YouTube caption track. A caption track is - associated with exactly one YouTube video.\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#caption\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the caption track.\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelStatistics\": {\n \"type\": \"object\",\n - \ \"description\": \"Statistics about a channel: number of subscribers, - number of videos in the channel, etc.\",\n \"id\": \"ChannelStatistics\",\n - \ \"properties\": {\n \"viewCount\": {\n \"description\": - \"The number of times the channel has been viewed.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"videoCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of videos uploaded to the channel.\"\n },\n \"hiddenSubscriberCount\": - {\n \"description\": \"Whether or not the number of subscribers is - shown for this user.\",\n \"type\": \"boolean\"\n },\n \"commentCount\": - {\n \"description\": \"The number of comments for the channel.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"subscriberCount\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of subscribers that the - channel has.\"\n }\n }\n },\n \"ChannelSectionLocalization\": - {\n \"description\": \"ChannelSection localization setting\",\n \"id\": - \"ChannelSectionLocalization\",\n \"properties\": {\n \"title\": - {\n \"description\": \"The localized strings for channel section's - title.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"CaptionListResponse\": {\n \"id\": \"CaptionListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#captionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#captionListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"items\": {\n \"description\": \"A list of captions that - match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Caption\"\n }\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"PlaylistItemStatus\": - {\n \"description\": \"Information about the playlist item's privacy - status.\",\n \"type\": \"object\",\n \"properties\": {\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"description\": \"This resource's privacy status.\"\n - \ }\n },\n \"id\": \"PlaylistItemStatus\"\n },\n \"ChannelLocalization\": - {\n \"description\": \"Channel localization setting\",\n \"id\": - \"ChannelLocalization\",\n \"type\": \"object\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel's description.\"\n },\n \"title\": - {\n \"description\": \"The localized strings for channel's title.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"SearchResult\": - {\n \"description\": \"A search result contains information about a YouTube - video, channel, or playlist that matches the search parameters specified in - an API request. While a search result points to a uniquely identifiable resource, - like a video, it does not have its own persistent data.\",\n \"id\": - \"SearchResult\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about a search result, such as its title or description. For - example, if the search result is a video, then the title will be the video's - title and the description will be the video's description.\",\n \"$ref\": - \"SearchResultSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#searchResult\"\n - \ },\n \"id\": {\n \"description\": \"The id object - contains information that can be used to uniquely identify the resource that - matches the search request.\",\n \"$ref\": \"ResourceId\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LiveStreamConfigurationIssue\": - {\n \"id\": \"LiveStreamConfigurationIssue\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"reason\": {\n \"description\": - \"The short-form reason for this issue.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"description\": \"The kind of - error happening.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ]\n },\n - \ \"severity\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"info\",\n \"warning\",\n \"error\"\n ],\n - \ \"description\": \"How severe this issue is to the stream.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"The long-form description of the issue and how to resolve it.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"description\": - \"Details about a resource which was added to a channel.\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was added to the channel.\"\n - \ }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": {\n - \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\",\n \"$ref\": \"ResourceId\"\n },\n \"playlistItemId\": - {\n \"type\": \"string\",\n \"description\": \"ID of the - item within the playlist.\"\n },\n \"playlistId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Information about - a new playlist item.\"\n },\n \"VideoCategoryListResponse\": {\n \"id\": - \"VideoCategoryListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoCategoryListResponse\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\",\n \"items\": {\n \"$ref\": - \"VideoCategory\"\n }\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"Cuepoint\": {\n \"properties\": {\n \"insertionOffsetTimeMs\": - {\n \"type\": \"string\",\n \"description\": \"The time - when the cuepoint should be inserted by offset to the broadcast actual start - time.\",\n \"format\": \"int64\"\n },\n \"cueType\": - {\n \"type\": \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ]\n },\n \"etag\": - {\n \"type\": \"string\"\n },\n \"durationSecs\": {\n - \ \"format\": \"uint32\",\n \"description\": \"The duration - of this cuepoint.\",\n \"type\": \"integer\"\n },\n \"walltimeMs\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The wall clock time at which the cuepoint should be inserted. Only one of - insertion_offset_time_ms and walltime_ms may be set at a time.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The identifier for cuepoint resource.\"\n }\n },\n \"id\": - \"Cuepoint\",\n \"type\": \"object\",\n \"description\": \"Note - that there may be a 5-second end-point resolution issue. For instance, if - a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"type\": \"object\",\n \"description\": \"Information that - identifies the recommended resource.\",\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\",\n \"$ref\": \"ResourceId\"\n },\n \"seedResourceId\": - {\n \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\",\n \"$ref\": - \"ResourceId\"\n },\n \"reason\": {\n \"enum\": [\n - \ \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The reason that the resource is - recommended to the user.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatModeratorListResponse\": {\n \"properties\": {\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - moderators that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"LiveChatModerator\"\n }\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": - \"LiveChatModeratorListResponse\",\n \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#liveChatMessageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n }\n },\n \"pollingIntervalMillis\": - {\n \"type\": \"integer\",\n \"description\": \"The amount - of time the client should wait before polling again.\",\n \"format\": - \"uint32\"\n },\n \"offlineAt\": {\n \"description\": - \"The date and time when the underlying stream went offline.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageListResponse\"\n - \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"properties\": - {\n \"memberMonth\": {\n \"format\": \"uint32\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"type\": \"integer\"\n - \ },\n \"memberLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the Level at which the viever is - a member. The Level names are defined by the YouTube channel offering the - Membership. In some situations this field isn't filled.\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the member to this Member Milestone Chat. This field is empty for - messages without a comment from the member.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatMemberMilestoneChatDetails\"\n },\n - \ \"VideoAgeGating\": {\n \"type\": \"object\",\n \"id\": \"VideoAgeGating\",\n - \ \"properties\": {\n \"videoGameRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"Video game rating, if any.\",\n \"enum\": [\n \"anyone\",\n - \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n - \ ]\n },\n \"restricted\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Age-restricted trailers. For redband trailers - and adult-rated video-games. Only users aged 18+ can view the content. The - the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\"\n },\n \"alcoholContent\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Indicates whether - or not the video has alcoholic beverage content. Only users of legal purchasing - age in a particular country, as identified by ICAP, can view the content.\"\n - \ }\n }\n },\n \"LiveBroadcastContentDetails\": {\n \"id\": - \"LiveBroadcastContentDetails\",\n \"description\": \"Detailed settings - of a broadcast.\",\n \"properties\": {\n \"stereoLayout\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ],\n \"description\": \"The 3D stereo layout of this broadcast. - This defaults to mono.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"enableAutoStop\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether auto stop is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\"\n },\n \"projection\": {\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"enableLowLatency\": - {\n \"description\": \"Indicates whether this broadcast has low latency - enabled.\",\n \"type\": \"boolean\"\n },\n \"closedCaptionsType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ]\n },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"enableEmbed\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast video can be played in an embedded player. - If you choose to archive the video (using the enableArchive property), this - setting will also apply to the archived video.\"\n },\n \"startWithSlate\": - {\n \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"description\": - \"The date and time that the live stream referenced by boundStreamId was last - updated.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"recordFromStart\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\"\n },\n \"enableContentEncryption\": {\n \"description\": - \"This setting indicates whether YouTube should enable content encryption - for the broadcast.\",\n \"type\": \"boolean\"\n },\n \"mesh\": - {\n \"type\": \"string\",\n \"description\": \"The mesh - for projecting the video if projection is mesh. The mesh value must be a UTF-8 - string containing the base-64 encoding of 3D mesh data that follows the Spherical - Video V2 RFC specification for an mshp box, excluding the box size and type - but including the following four reserved zero bytes for the version and flags.\",\n - \ \"format\": \"byte\"\n },\n \"enableDvr\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting determines whether - viewers can access DVR controls while watching the video. DVR controls enable - the viewer to control the video playback experience by pausing, rewinding, - or fast forwarding content. The default value for this property is true. *Important:* - You must set the value to true and also set the enableArchive property's value - to true if you want to make playback available immediately after the broadcast - ends.\"\n },\n \"monitorStream\": {\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\",\n \"$ref\": \"MonitorStreamInfo\"\n - \ },\n \"latencyPreference\": {\n \"description\": \"If - both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ]\n },\n \"boundStreamId\": {\n \"description\": - \"This value uniquely identifies the live stream bound to the broadcast.\",\n - \ \"type\": \"string\"\n },\n \"enableAutoStart\": {\n - \ \"description\": \"This setting indicates whether auto start is - enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LocalizedProperty\": - {\n \"properties\": {\n \"default\": {\n \"type\": \"string\"\n - \ },\n \"localized\": {\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n },\n \"type\": \"array\"\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the default property.\",\n \"$ref\": \"LanguageTag\"\n }\n - \ },\n \"id\": \"LocalizedProperty\",\n \"type\": \"object\"\n - \ },\n \"ChannelSectionListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelSectionListResponse\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"description\": \"A list of ChannelSections - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ChannelSectionListResponse\"\n - \ },\n \"VideoFileDetails\": {\n \"id\": \"VideoFileDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Describes original video - file properties, including technical details about audio and video streams, - but also metadata information like content length, digitization time, or geotagging - information.\",\n \"properties\": {\n \"fileType\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded file's type as detected - by YouTube's video processing engine. Currently, YouTube only processes video - files, but this field is present whether a video file or another type of file - was uploaded.\",\n \"enum\": [\n \"video\",\n \"audio\",\n - \ \"image\",\n \"archive\",\n \"document\",\n - \ \"project\",\n \"other\"\n ],\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ]\n },\n \"fileName\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded file's name. This field - is present whether a video file or another type of file was uploaded.\"\n - \ },\n \"videoStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of video streams contained in the uploaded - video file. Each item in the list contains detailed metadata about a video - stream.\"\n },\n \"creationTime\": {\n \"description\": - \"The date and time when the uploaded video file was created. The value is - specified in ISO 8601 format. Currently, the following ISO 8601 formats are - supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time - with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n - \ },\n \"durationMs\": {\n \"type\": \"string\",\n \"description\": - \"The length of the uploaded video in milliseconds.\",\n \"format\": - \"uint64\"\n },\n \"bitrateBps\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The uploaded - video file's combined (video and audio) bitrate in bits per second.\"\n },\n - \ \"container\": {\n \"description\": \"The uploaded video - file's container format.\",\n \"type\": \"string\"\n },\n - \ \"fileSize\": {\n \"format\": \"uint64\",\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\",\n \"type\": \"string\"\n - \ },\n \"audioStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsAudioStream\"\n },\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\",\n \"type\": - \"array\"\n }\n }\n },\n \"I18nRegionListResponse\": {\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"default\": - \"youtube#i18nRegionListResponse\"\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"I18nRegion\"\n - \ },\n \"description\": \"A list of regions where YouTube - is available. In this map, the i18n region ID is the map key, and its value - is the corresponding i18nRegion resource.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"I18nRegionListResponse\",\n - \ \"type\": \"object\"\n },\n \"SearchResultSnippet\": {\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the search result.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\"\n },\n \"description\": - {\n \"description\": \"A description of the search result.\",\n \"type\": - \"string\"\n },\n \"liveBroadcastContent\": {\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ]\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - search result. 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.\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The creation date and time of the resource that the search result identifies.\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the channel that published the resource - that the search result identifies.\"\n }\n },\n \"id\": \"SearchResultSnippet\"\n - \ },\n \"PlaylistItemListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"PlaylistItemListResponse\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of playlist items that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"type\": \"array\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n }\n - \ }\n },\n \"LiveChatFanFundingEventDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"amountDisplayString\": {\n - \ \"type\": \"string\",\n \"description\": \"A rendered string - that displays the fund amount and currency to the user.\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the user to this fan funding event.\"\n },\n \"amountMicros\": - {\n \"type\": \"string\",\n \"description\": \"The amount - of the fund.\",\n \"format\": \"uint64\"\n },\n \"currency\": - {\n \"description\": \"The currency in which the fund was made.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"VideoListResponse\": {\n \"id\": \"VideoListResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Video\"\n - \ },\n \"type\": \"array\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"PlaylistStatus\": - {\n \"properties\": {\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The playlist's privacy status.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistStatus\"\n },\n \"MembershipsLevelSnippet\": - {\n \"id\": \"MembershipsLevelSnippet\",\n \"properties\": {\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering channel memberships.\"\n },\n \"levelDetails\": - {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details - about the pricing level.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SuperChatEventSnippet\": {\n \"type\": \"object\",\n \"id\": - \"SuperChatEventSnippet\",\n \"properties\": {\n \"isSuperStickerEvent\": - {\n \"description\": \"True if this event is a Super Sticker event.\",\n - \ \"type\": \"boolean\"\n },\n \"displayString\": {\n - \ \"type\": \"string\",\n \"description\": \"A rendered string - that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). The - string is rendered for the given language.\"\n },\n \"supporterDetails\": - {\n \"description\": \"Details about the supporter.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\"\n },\n \"createdAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the event occurred.\"\n },\n \"commentText\": - {\n \"description\": \"The text contents of the comment left by the - user.\",\n \"type\": \"string\"\n },\n \"messageType\": - {\n \"description\": \"The tier for the paid message, which is based - on the amount of money spent to purchase the message.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"currency\": - {\n \"description\": \"The currency in which the purchase was made. - ISO 4217.\",\n \"type\": \"string\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\"\n },\n \"channelId\": {\n \"description\": - \"Channel id where the event occurred.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelSettings\": {\n \"properties\": - {\n \"profileColor\": {\n \"type\": \"string\",\n \"description\": - \"A prominent color that can be rendered on this channel page.\"\n },\n - \ \"showRelatedChannels\": {\n \"description\": \"Whether related - channels should be proposed.\",\n \"type\": \"boolean\"\n },\n - \ \"unsubscribedTrailer\": {\n \"type\": \"string\",\n \"description\": - \"The trailer of the channel, for users that are not subscribers.\"\n },\n - \ \"defaultTab\": {\n \"type\": \"string\",\n \"description\": - \"Which content tab users should see when viewing the channel.\"\n },\n - \ \"title\": {\n \"description\": \"Specifies the channel title.\",\n - \ \"type\": \"string\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the channel description.\"\n },\n - \ \"showBrowseView\": {\n \"description\": \"Whether the tab - to browse the videos should be displayed.\",\n \"type\": \"boolean\"\n - \ },\n \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n },\n \"defaultLanguage\": {\n - \ \"type\": \"string\"\n },\n \"featuredChannelsUrls\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The list of featured channels.\",\n \"type\": - \"array\"\n },\n \"moderateComments\": {\n \"description\": - \"Whether user-submitted comments left on the channel page need to be approved - by the channel owner to be publicly visible.\",\n \"type\": \"boolean\"\n - \ },\n \"keywords\": {\n \"type\": \"string\",\n \"description\": - \"Lists keywords associated with the channel, comma-separated.\"\n }\n - \ },\n \"description\": \"Branding properties for the channel view.\",\n - \ \"id\": \"ChannelSettings\",\n \"type\": \"object\"\n },\n \"ChannelAuditDetails\": - {\n \"type\": \"object\",\n \"description\": \"The auditDetails - object encapsulates channel data that is relevant for YouTube Partners during - the audit process.\",\n \"id\": \"ChannelAuditDetails\",\n \"properties\": - {\n \"contentIdClaimsGoodStanding\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether or not the channel has any unresolved - claims.\"\n },\n \"communityGuidelinesGoodStanding\": {\n \"description\": - \"Whether or not the channel respects the community guidelines.\",\n \"type\": - \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": {\n \"description\": - \"Whether or not the channel has any copyright strikes.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"ChannelContentDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"type\": \"object\",\n \"properties\": {\n \"favorites\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s favorite videos. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"likes\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"watchLater\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch later playlist. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"uploads\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s uploaded videos. Use the videos.insert method to - upload new videos and the videos.delete method to delete previously uploaded - videos.\"\n },\n \"watchHistory\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s watch history. Use the playlistItems.insert and - playlistItems.delete to add or remove items from that list.\"\n }\n - \ }\n }\n },\n \"id\": \"ChannelContentDetails\",\n - \ \"description\": \"Details about the content of a channel.\"\n },\n - \ \"LiveChatMessage\": {\n \"id\": \"LiveChatMessage\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatMessage\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"authorDetails\": {\n \"description\": \"The - authorDetails object contains basic details about the user that posted this - message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the message.\",\n \"$ref\": - \"LiveChatMessageSnippet\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A *liveChatMessage* resource represents a chat message - in a YouTube Live Chat.\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label for this abuse report secondary - reason.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of this abuse report secondary reason.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"LiveStreamSnippet\": {\n \"properties\": {\n \"title\": - {\n \"description\": \"The stream's title. The value must be between - 1 and 128 characters long.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the stream was created.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The stream's description. The value cannot be longer than 10000 characters.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\",\n \"type\": \"string\"\n },\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n }\n },\n \"id\": \"LiveStreamSnippet\",\n - \ \"type\": \"object\"\n },\n \"ChannelSnippet\": {\n \"id\": - \"ChannelSnippet\",\n \"description\": \"Basic details about a channel, - including title, description and thumbnails.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the channel was created.\",\n - \ \"format\": \"date-time\"\n },\n \"thumbnails\": {\n - \ \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"customUrl\": {\n \"type\": - \"string\",\n \"description\": \"The custom url of the channel.\"\n - \ },\n \"description\": {\n \"description\": \"The description - of the channel.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The channel's title.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the channel's default title and description.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ }\n }\n },\n \"ChannelListResponse\": {\n \"id\": - \"ChannelListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"default\": \"youtube#channelListResponse\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Channel\"\n }\n }\n }\n },\n \"ActivityContentDetails\": - {\n \"description\": \"Details about the content of an activity: the - video that was shared, the channel that was subscribed to, etc.\",\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetails\",\n \"properties\": - {\n \"upload\": {\n \"description\": \"The upload object contains - information about the uploaded video. This property is only present if the - snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"bulletin\": {\n \"description\": \"The bulletin - object contains details about a channel bulletin post. This object is only - present if the snippet.type is bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n - \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\"\n },\n \"like\": {\n \"description\": - \"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.\",\n - \ \"$ref\": \"ActivityContentDetailsLike\"\n },\n \"social\": - {\n \"description\": \"The social object contains details about a - social network post. This property is only present if the snippet.type is - social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n },\n - \ \"promotedItem\": {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\"\n },\n \"subscription\": {\n \"$ref\": - \"ActivityContentDetailsSubscription\",\n \"description\": \"The - subscription object contains information about a channel that a user subscribed - to. This property is only present if the snippet.type is subscription.\"\n - \ },\n \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\"\n },\n \"comment\": {\n \"description\": - \"The comment object contains information about a resource that received a - comment. This property is only present if the snippet.type is comment.\",\n - \ \"$ref\": \"ActivityContentDetailsComment\"\n },\n \"channelItem\": - {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n \"description\": - \"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.\"\n - \ },\n \"favorite\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsFavorite\"\n }\n }\n },\n \"VideoStatistics\": - {\n \"properties\": {\n \"viewCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of times the video has been viewed.\"\n },\n \"likeCount\": - {\n \"description\": \"The number of users who have indicated that - they liked the video by giving it a positive rating.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"dislikeCount\": - {\n \"description\": \"The number of users who have indicated that - they disliked the video by giving it a negative rating.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"commentCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of comments for the video.\"\n },\n \"favoriteCount\": - {\n \"description\": \"The number of users who currently have the - video marked as a favorite video.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n }\n },\n \"id\": \"VideoStatistics\",\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\",\n \"type\": \"object\"\n },\n \"GeoPoint\": {\n \"id\": - \"GeoPoint\",\n \"properties\": {\n \"longitude\": {\n \"description\": - \"Longitude in degrees.\",\n \"format\": \"double\",\n \"type\": - \"number\"\n },\n \"altitude\": {\n \"format\": \"double\",\n - \ \"type\": \"number\",\n \"description\": \"Altitude above - the reference ellipsoid, in meters.\"\n },\n \"latitude\": {\n - \ \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"Latitude in degrees.\"\n }\n },\n \"description\": \"Geographical - coordinates of a point, in WGS84.\",\n \"type\": \"object\"\n },\n - \ \"MembershipsDuration\": {\n \"type\": \"object\",\n \"properties\": - {\n \"memberTotalDurationMonths\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"description\": \"The cumulative - time the user has been a member across all levels in complete months (the - time is rounded down to the nearest integer).\"\n },\n \"memberSince\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the user became a continuous member across all levels.\"\n }\n - \ },\n \"id\": \"MembershipsDuration\"\n },\n \"Entity\": {\n - \ \"type\": \"object\",\n \"id\": \"Entity\",\n \"properties\": - {\n \"url\": {\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\"\n },\n \"typeId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"ActivityContentDetailsFavorite\": - {\n \"description\": \"Information about a video that was marked as a - favorite video.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"resourceId\": {\n \"description\": \"The resourceId object - contains information that identifies the resource that was marked as a favorite.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"ChannelContentOwnerDetails\": {\n \"description\": \"The - contentOwnerDetails object encapsulates channel data that is relevant for - YouTube Partners linked with the channel.\",\n \"id\": \"ChannelContentOwnerDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"contentOwner\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the content owner linked to the channel.\"\n },\n \"timeLinked\": - {\n \"description\": \"The date and time when the channel was linked - to the content owner.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"blocked\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of region codes - that identify countries where the video is blocked. If this property is present - and a country is not listed in its value, then the video is viewable in that - country. If this property is present and contains an empty list, the video - is viewable in all countries.\"\n },\n \"allowed\": {\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"VideoContentDetailsRegionRestriction\"\n - \ },\n \"VideoPlayer\": {\n \"type\": \"object\",\n \"properties\": - {\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\"\n - \ },\n \"embedWidth\": {\n \"description\": \"The embed - width\",\n \"format\": \"int64\",\n \"type\": \"string\"\n - \ },\n \"embedHeight\": {\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n }\n },\n \"description\": - \"Player to be used for a video playback.\",\n \"id\": \"VideoPlayer\"\n - \ },\n \"ThirdPartyLinkSnippet\": {\n \"description\": \"Basic information - about a third party account link, including its type and type-specific information.\",\n - \ \"id\": \"ThirdPartyLinkSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"description\": \"Type - of the link named after the entities that are being linked.\"\n },\n - \ \"channelToStoreLink\": {\n \"description\": \"Information - specific to a link between a channel and a store on a merchandising platform.\",\n - \ \"$ref\": \"ChannelToStoreLinkDetails\"\n }\n }\n },\n - \ \"VideoSnippet\": {\n \"description\": \"Basic details about a video, - including title, description, uploader, thumbnails and category.\",\n \"properties\": - {\n \"channelTitle\": {\n \"description\": \"Channel title - for the channel that the video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"categoryId\": {\n \"description\": \"The YouTube - video category associated with the video.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time when the video was uploaded.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"The video's title. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The video's description. @mutable - youtube.videos.insert youtube.videos.update\"\n },\n \"liveBroadcastContent\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"type\": - \"string\",\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n },\n - \ \"tags\": {\n \"description\": \"A list of keyword tags associated - with the video. Tags may contain spaces.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that the video was uploaded - to.\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the videos's default snippet.\",\n \"type\": \"string\"\n - \ },\n \"defaultAudioLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\"\n },\n \"localized\": - {\n \"$ref\": \"VideoLocalization\",\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\"\n - \ }\n },\n \"id\": \"VideoSnippet\",\n \"type\": \"object\"\n - \ }\n },\n \"canonicalName\": \"YouTube\",\n \"baseUrl\": \"https://youtube.googleapis.com/\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:30 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCfVJ_-zdASq6HR-ocI8yTww&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"h0ritXMHzfJEnu8XB6p79h2zd5Y\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"KvNV5ZttY7_PPiguVzrpoT90aNk\",\n \"id\": \"UCfVJ_-zdASq6HR-ocI8yTww\",\n - \ \"snippet\": {\n \"title\": \"Music for Body and Spirit - Meditation - Music\",\n \"description\": \"Music for Body and Spirit - Meditation - Music comes from professional musicians who have decided to use their skills - for the production of music for the spirit.\\n\\nWe chose spiritual music - because we believe in its power on body and spirit.\\n\\nIn the channel you - can find music to practice Reiki, Meditation, Yoga. Furthermore, tracks for - \ Relaxation, Sleeping, and compositions with Binaural Beats. \\n\\nWe underline - that our music cannot cure a health condition nor does it want to replace - the advice of a doctor or health care provider. Moreover, never listen to - our music whilst driving or operating machinery of any kind.\\n\\nEnjoy your - listening!\\n\\n\u2117 2014 - 2023 Music for Body and Spirit \u2013 Meditation - Music All rights reserved.\\n\\nOur music is not currently licensed for commercial - and non-commercial use. \\nAnyway you can find free download tracks on - our website \\nhttps://www.musicforbodyandspirit.com/free-download/ \\n\\nEmail: - info@musicforbodyandspirit.com\",\n \"customUrl\": \"@musicforbodyandspirit\",\n - \ \"publishedAt\": \"2007-11-04T20:29:37Z\",\n \"thumbnails\": - {\n \"default\": {\n \"url\": \"https://yt3.ggpht.com/nGdY2rDmihvhgROTf3B5H-0YYTe4WuUdj5JUTf6xU9LJ8k7wFd-Djr0OmDRz0oVJQT63fj6G=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/nGdY2rDmihvhgROTf3B5H-0YYTe4WuUdj5JUTf6xU9LJ8k7wFd-Djr0OmDRz0oVJQT63fj6G=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/nGdY2rDmihvhgROTf3B5H-0YYTe4WuUdj5JUTf6xU9LJ8k7wFd-Djr0OmDRz0oVJQT63fj6G=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"defaultLanguage\": \"en\",\n \"localized\": {\n \"title\": - \"Music for Body and Spirit - Meditation Music\",\n \"description\": - \"Music for Body and Spirit - Meditation Music comes from professional musicians - who have decided to use their skills for the production of music for the spirit.\\n\\nWe - chose spiritual music because we believe in its power on body and spirit.\\n\\nIn - the channel you can find music to practice Reiki, Meditation, Yoga. Furthermore, - tracks for Relaxation, Sleeping, and compositions with Binaural Beats. \\n\\nWe - underline that our music cannot cure a health condition nor does it want to - replace the advice of a doctor or health care provider. Moreover, never listen - to our music whilst driving or operating machinery of any kind.\\n\\nEnjoy - your listening!\\n\\n\u2117 2014 - 2023 Music for Body and Spirit \u2013 Meditation - Music All rights reserved.\\n\\nOur music is not currently licensed for commercial - and non-commercial use. \\nAnyway you can find free download tracks on - our website \\nhttps://www.musicforbodyandspirit.com/free-download/ \\n\\nEmail: - info@musicforbodyandspirit.com\"\n }\n },\n \"brandingSettings\": - {\n \"channel\": {\n \"title\": \"Music for Body and Spirit - - Meditation Music\",\n \"description\": \"Music for Body and Spirit - - Meditation Music comes from professional musicians who have decided to use - their skills for the production of music for the spirit.\\n\\nWe chose spiritual - music because we believe in its power on body and spirit.\\n\\nIn the channel - you can find music to practice Reiki, Meditation, Yoga. Furthermore, tracks - for Relaxation, Sleeping, and compositions with Binaural Beats. \\n\\nWe - underline that our music cannot cure a health condition nor does it want to - replace the advice of a doctor or health care provider. Moreover, never listen - to our music whilst driving or operating machinery of any kind.\\n\\nEnjoy - your listening!\\n\\n\u2117 2014 - 2023 Music for Body and Spirit \u2013 Meditation - Music All rights reserved.\\n\\nOur music is not currently licensed for commercial - and non-commercial use. \\nAnyway you can find free download tracks on - our website \\nhttps://www.musicforbodyandspirit.com/free-download/ \\n\\nEmail: - info@musicforbodyandspirit.com\",\n \"keywords\": \"yoga buddhism - \\\"reiki healing\\\" reiki \\\"meditation music\\\" \\\"reiki music\\\" \\\"yoga - music\\\" \\\"sleep music\\\" \\\"binaural beats\\\" healing \\\"relaxing - music\\\" \\\"study music\\\" \\\"deep sleep music\\\" \\\"calming music\\\" - \\\"chakra healing\\\" \\\"spa massage\\\" \\\"shoothing music\\\" \\\"stress - relief music\\\" \\\"focus concentration music\\\" \\\"improve memory\\\" - \\\"peaceful music\\\" \\\"to fall asleep\\\" Chiil Chillout chakra \\\"Cleanse - Negative Energy\\\" \\\"Pure Positive Vibes\\\" \\\"Positive energy\\\" relaxing - \\\"Wipes out Negative Energy\\\" relajante relaxante dormir stress\",\n \"unsubscribedTrailer\": - \"OlLWtVu9yK8\",\n \"defaultLanguage\": \"en\"\n },\n \"image\": - {\n \"bannerExternalUrl\": \"https://yt3.googleusercontent.com/1SyHWKOEFUN_TPNhGrm0Mvh8Q2gjVTLi8hxS9OfJTvrZ3-zZZ9tRKZ25QOZMcQuiIizU4rpoSDY\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:30 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"resources\": {\n \"activities\": {\n \"methods\": {\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"parameters\": {\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"publishedAfter\": - {\n \"type\": \"string\",\n \"format\": \"google-datetime\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ },\n \"home\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"publishedBefore\": - {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n - \ \"type\": \"string\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/activities\",\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n },\n \"id\": - \"youtube.activities.list\",\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n - \ }\n }\n },\n \"watermarks\": {\n \"methods\": {\n - \ \"unset\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Allows removal of channel watermark.\",\n - \ \"parameters\": {\n \"channelId\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"id\": \"youtube.watermarks.unset\",\n \"path\": \"youtube/v3/watermarks/unset\"\n - \ },\n \"set\": {\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"supportsMediaUpload\": true,\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"mediaUpload\": {\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\",\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"description\": \"Allows upload of watermark image and setting - it for a channel.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.watermarks.set\"\n - \ }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"insert\": {\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true\n }\n },\n - \ \"id\": \"youtube.commentThreads.insert\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"POST\"\n },\n \"list\": {\n \"id\": \"youtube.commentThreads.list\",\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"moderationStatus\": - {\n \"enumDescriptions\": [\n \"The comment is - available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"default\": \"published\",\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Returns - the comment threads of the specified video.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\"\n },\n \"id\": {\n \"description\": - \"Returns the comment threads with the given IDs for Stubby or Apiary.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"order\": {\n - \ \"default\": \"time\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"searchTerms\": {\n \"description\": \"Limits the - returned comment threads to those matching the specified key words. Not compatible - with the 'id' filter.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"textFormat\": {\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"default\": - \"html\",\n \"description\": \"The requested text format for - the returned comments.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"default\": - \"20\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"100\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"1\"\n - \ },\n \"allThreadsRelatedToChannelId\": {\n \"description\": - \"Returns the comment threads of all videos of the channel and the channel - comments as well.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"CommentThreadListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"channels\": {\n \"methods\": - {\n \"list\": {\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"categoryId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channels within the specified - guide category ID.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the channels with the specified IDs.\"\n },\n \"forUsername\": - {\n \"description\": \"Return the channel associated with a YouTube - username.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the channels subscribed - to the authenticated user\",\n \"location\": \"query\"\n },\n - \ \"mine\": {\n \"description\": \"Return the ids of - channels owned by the authenticated user.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"managedByMe\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the channels managed by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"0\",\n \"format\": - \"uint32\",\n \"maximum\": \"50\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.channels.list\",\n \"path\": \"youtube/v3/channels\"\n - \ },\n \"update\": {\n \"id\": \"youtube.channels.update\",\n - \ \"response\": {\n \"$ref\": \"Channel\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"description\": - \"Updates an existing resource.\",\n \"httpMethod\": \"PUT\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Channel\"\n },\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/channels\"\n - \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"MembershipsLevelListResponse\"\n },\n - \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"The *part* parameter - specifies the membershipsLevel resource parts that the API response will include. - Supported values are id and snippet.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"description\": \"Retrieves - a list of all pricing levels offered by a creator to the fans.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"path\": \"youtube/v3/membershipsLevels\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ]\n }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the ChannelSections owned by the authenticated - user.\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"description\": \"Return the ChannelSections owned by the - specified channel ID.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Return - the ChannelSections with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.channelSections.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSectionListResponse\"\n }\n },\n - \ \"update\": {\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"request\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"id\": \"youtube.channelSections.update\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"httpMethod\": \"PUT\"\n },\n - \ \"insert\": {\n \"id\": \"youtube.channelSections.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ }\n },\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.channelSections.delete\",\n \"path\": - \"youtube/v3/channelSections\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"playlists\": {\n \"methods\": - {\n \"update\": {\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"id\": \"youtube.playlists.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"PUT\"\n },\n \"insert\": {\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlists.insert\",\n \"response\": {\n - \ \"$ref\": \"Playlist\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"parameters\": {\n - \ \"maxResults\": {\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"minimum\": \"0\",\n \"type\": \"integer\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"description\": - \"Return the playlists owned by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Return the playlists owned by - the specified channel ID.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Return - the playlists with the given IDs for Stubby or Apiary.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"pageToken\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Return - content in specified language\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.playlists.list\",\n \"response\": {\n \"$ref\": - \"PlaylistListResponse\"\n },\n \"httpMethod\": \"GET\"\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"id\": \"youtube.playlists.delete\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlists\"\n }\n }\n - \ },\n \"videos\": {\n \"methods\": {\n \"getRating\": {\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Retrieves the ratings that the authorized user gave to a list of specified - videos.\",\n \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/videos/getRating\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.getRating\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/videos/getRating\"\n - \ },\n \"update\": {\n \"description\": \"Updates an - existing resource.\",\n \"flatPath\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.videos.update\",\n - \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/videos\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"description\": \"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.\",\n - \ \"required\": true,\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"Video\"\n }\n },\n - \ \"insert\": {\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"supportsMediaUpload\": true,\n \"id\": - \"youtube.videos.insert\",\n \"path\": \"youtube/v3/videos\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/videos\",\n \"multipart\": true\n },\n - \ \"resumable\": {\n \"multipart\": true,\n \"path\": - \"/resumable/upload/youtube/v3/videos\"\n }\n },\n - \ \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"274877906944\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"autoLevels\": {\n \"description\": \"Should - auto-levels be applied to the upload.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\"\n },\n - \ \"notifySubscribers\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"default\": \"true\",\n - \ \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\"\n },\n \"stabilize\": - {\n \"description\": \"Should stabilize be applied to the upload.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"response\": {\n \"$ref\": \"Video\"\n - \ },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"reportAbuse\": {\n \"id\": \"youtube.videos.reportAbuse\",\n - \ \"path\": \"youtube/v3/videos/reportAbuse\",\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"parameterOrder\": [],\n - \ \"description\": \"Report abuse for a video.\",\n \"request\": - {\n \"$ref\": \"VideoAbuseReport\"\n },\n \"httpMethod\": - \"POST\"\n },\n \"delete\": {\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos\",\n \"id\": - \"youtube.videos.delete\",\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a resource.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n }\n },\n \"rate\": {\n \"id\": - \"youtube.videos.rate\",\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"rating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"required\": true,\n \"location\": - \"query\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n }\n },\n - \ \"flatPath\": \"youtube/v3/videos/rate\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Adds a like or dislike rating to a video or removes - a rating from a video.\",\n \"path\": \"youtube/v3/videos/rate\"\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/videos\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"regionCode\": {\n \"description\": - \"Use a chart that is specific to the specified region\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n },\n \"maxWidth\": - {\n \"description\": \"Return the player with maximum height - specified in\",\n \"minimum\": \"72\",\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"location\": - \"query\",\n \"maximum\": \"8192\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Return - videos with the given ids.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoCategoryId\": {\n \"type\": - \"string\",\n \"description\": \"Use chart that is specific to - the specified video category\",\n \"default\": \"0\",\n \"location\": - \"query\"\n },\n \"chart\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"description\": \"Return the videos that - are in the specified chart.\"\n },\n \"locale\": {\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"myRating\": {\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"maxHeight\": {\n \"maximum\": - \"8192\",\n \"location\": \"query\",\n \"minimum\": - \"72\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Stands - for \\\"host language\\\". Specifies the localization language of the metadata - to be filled into snippet.localized. The field is filled with the default - metadata if there is no localization in the specified language. The parameter - value must be a language code included in the list returned by the i18nLanguages.list - method (e.g. en_US, es_MX).\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"description\": \"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.\",\n \"maximum\": - \"50\",\n \"minimum\": \"1\",\n \"default\": \"5\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"VideoListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.videos.list\",\n \"description\": \"Retrieves a list of - resources, possibly filtered.\"\n }\n }\n },\n \"superChatEvents\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"SuperChatEventListResponse\"\n },\n \"id\": \"youtube.superChatEvents.list\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"minimum\": \"1\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the superChatEvent resource parts that the - API response will include. This parameter is currently not supported.\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return rendered funding amounts in specified language.\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/superChatEvents\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"captions\": {\n \"methods\": - {\n \"delete\": {\n \"id\": \"youtube.captions.delete\",\n - \ \"path\": \"youtube/v3/captions\",\n \"httpMethod\": \"DELETE\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"description\": - \"Deletes a resource.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n }\n },\n - \ \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"path\": \"youtube/v3/captions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"flatPath\": \"youtube/v3/captions\",\n \"id\": - \"youtube.captions.list\",\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"onBehalfOf\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"ID of - the Google+ Page for the channel that the request is on behalf of.\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"description\": - \"Returns the captions with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"location\": - \"query\",\n \"description\": \"Returns the captions for the - specified video.\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n }\n },\n - \ \"download\": {\n \"description\": \"Downloads a caption - track.\",\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.captions.download\",\n - \ \"flatPath\": \"youtube/v3/captions/{id}\",\n \"useMediaDownloadService\": - true,\n \"parameters\": {\n \"tfmt\": {\n \"description\": - \"Convert the captions into this format. Supported options are sbv, srt, and - vtt.\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"location\": \"path\",\n - \ \"description\": \"The ID of the caption track to download, - required for One Platform.\",\n \"required\": true,\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"tlang\": {\n \"type\": \"string\",\n \"description\": - \"tlang is the language code; machine translate the captions into this language.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is be on behalf of\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"supportsMediaDownload\": - true,\n \"path\": \"youtube/v3/captions/{id}\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"insert\": {\n \"parameters\": - {\n \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is be on behalf of\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"sync\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ }\n }\n },\n \"supportsMediaUpload\": - true,\n \"id\": \"youtube.captions.insert\",\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"update\": {\n \"description\": \"Updates an existing resource.\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"supportsMediaUpload\": true,\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"sync\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"required\": true\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\"\n }\n },\n \"path\": - \"youtube/v3/captions\",\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"id\": \"youtube.captions.update\",\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"maxSize\": \"104857600\",\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ }\n }\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/i18nLanguages\",\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/i18nLanguages\",\n \"response\": - {\n \"$ref\": \"I18nLanguageListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"hl\": {\n \"default\": \"en_US\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the i18nLanguage - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n }\n }\n }\n }\n },\n \"abuseReports\": - {\n \"methods\": {\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"AbuseReport\"\n },\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true\n - \ }\n },\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/abuseReports\"\n - \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of search resources\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.search.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/search\",\n - \ \"parameters\": {\n \"channelId\": {\n \"description\": - \"Filter on resources belonging to this channelId.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoEmbeddable\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"description\": \"Filter on embeddable videos.\",\n \"enum\": - [\n \"videoEmbeddableUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"type\": \"string\"\n - \ },\n \"locationRadius\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on distance from the location (specified above).\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"videoDefinition\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ],\n \"description\": - \"Filter on the definition of the videos.\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ]\n },\n \"forContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"Search owned by a content owner.\",\n \"type\": \"boolean\"\n - \ },\n \"videoSyndicated\": {\n \"description\": - \"Filter on syndicated videos.\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ]\n - \ },\n \"videoCaption\": {\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter results based on caption availability.\",\n - \ \"Only include videos that have captions.\",\n \"Only - include videos that do not have captions.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ]\n },\n \"channelType\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"channelTypeUnspecified\",\n \"any\",\n \"show\"\n - \ ],\n \"description\": \"Add a filter on the channel - search.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all channels.\",\n \"Only retrieve - shows.\"\n ]\n },\n \"maxResults\": {\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"type\": \"integer\"\n },\n \"forMine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Search for the private videos of the authenticated - user.\"\n },\n \"videoDuration\": {\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"description\": \"Filter on the duration of the videos.\",\n - \ \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"type\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"Restrict - results to a particular set of resource types from One Platform.\"\n },\n - \ \"q\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Textual search terms to match.\"\n - \ },\n \"videoDimension\": {\n \"description\": - \"Filter on 3d videos.\",\n \"enumDescriptions\": [\n \"Include - both 3D and non-3D videos in returned results. This is the default value.\",\n - \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict - search results to only include 3D videos.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n },\n \"location\": {\n \"description\": - \"Filter on location of the video\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"order\": - {\n \"description\": \"Sort order of the results.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"default\": - \"relevance\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ]\n },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"description\": - \"Filter on resources published after this date.\",\n \"type\": - \"string\"\n },\n \"forDeveloper\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\"\n },\n \"relevanceLanguage\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return results relevant to this language.\"\n - \ },\n \"eventType\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"description\": - \"Filter on the livestream status of the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ]\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Display the content as seen by viewers in - this country.\"\n },\n \"videoLicense\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"description\": \"Filter on the license of the videos.\",\n - \ \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ]\n },\n \"videoCategoryId\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on videos in a specific category.\",\n \"type\": \"string\"\n - \ },\n \"relatedToVideoId\": {\n \"description\": - \"Search related to a resource.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"safeSearch\": - {\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"description\": - \"Indicates whether the search results should include restricted content as - well as standard content.\",\n \"default\": \"moderate\",\n \"location\": - \"query\"\n },\n \"topicId\": {\n \"type\": - \"string\",\n \"description\": \"Restrict results to a particular - topic.\",\n \"location\": \"query\"\n },\n \"videoType\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on videos of a specific type.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos.\",\n \"Only retrieve movies.\",\n \"Only - retrieve episodes of shows.\"\n ],\n \"enum\": [\n - \ \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ]\n },\n \"publishedBefore\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\",\n \"description\": - \"Filter on resources published before this date.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"SearchListResponse\"\n },\n \"flatPath\": - \"youtube/v3/search\"\n }\n }\n },\n \"channelBanners\": - {\n \"methods\": {\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"ChannelBannerResource\"\n },\n \"path\": - \"youtube/v3/channelBanners/insert\",\n \"parameterOrder\": [],\n - \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"supportsMediaUpload\": - true,\n \"id\": \"youtube.channelBanners.insert\",\n \"response\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"parameters\": {\n \"channelId\": {\n - \ \"description\": \"Unused, channel_id is currently derived from - the security context of the requestor.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/channelBanners/insert\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"maxSize\": \"6291456\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n }\n }\n }\n },\n \"liveChatModerators\": - {\n \"methods\": {\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a chat moderator.\",\n \"id\": \"youtube.liveChatModerators.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\"\n },\n \"list\": {\n \"parameters\": - {\n \"liveChatId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"The id of the live chat for which moderators should be returned.\"\n },\n - \ \"maxResults\": {\n \"default\": \"5\",\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the liveChatModerator resource parts that - the API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"id\": \"youtube.liveChatModerators.list\"\n },\n \"insert\": - {\n \"response\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveChatModerators.insert\"\n }\n - \ }\n },\n \"liveChatBans\": {\n \"methods\": {\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.liveChatBans.delete\",\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"description\": - \"Deletes a chat ban.\",\n \"httpMethod\": \"DELETE\"\n }\n - \ }\n },\n \"liveChatMessages\": {\n \"methods\": {\n \"delete\": - {\n \"path\": \"youtube/v3/liveChat/messages\",\n \"id\": - \"youtube.liveChatMessages.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"description\": \"Deletes a - chat message.\",\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"id\": - \"youtube.liveChatMessages.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveChatMessageListResponse\"\n },\n \"parameters\": - {\n \"profileImageSize\": {\n \"maximum\": \"720\",\n - \ \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\",\n \"type\": \"integer\",\n - \ \"minimum\": \"16\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the liveChatComment resource parts that the API - response will include. Supported values are id and snippet.\"\n },\n - \ \"liveChatId\": {\n \"description\": \"The id of - the live chat for which comments should be returned.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Specifies the localization language in which the system messages should - be returned.\"\n },\n \"maxResults\": {\n \"minimum\": - \"200\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"maximum\": \"2000\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"500\"\n }\n }\n },\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveChatMessages.insert\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"httpMethod\": - \"POST\"\n }\n }\n },\n \"i18nRegions\": {\n \"methods\": - {\n \"list\": {\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.i18nRegions.list\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"default\": \"en_US\",\n \"location\": \"query\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"I18nRegionListResponse\"\n },\n \"path\": \"youtube/v3/i18nRegions\"\n - \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of members that match the - request criteria for a channel.\",\n \"path\": \"youtube/v3/members\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"flatPath\": \"youtube/v3/members\",\n \"response\": - {\n \"$ref\": \"MemberListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"mode\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"enum\": - [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"type\": - \"string\",\n \"default\": \"all_current\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"1000\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"filterByMemberChannelId\": {\n \"location\": \"query\",\n - \ \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\",\n - \ \"type\": \"string\"\n },\n \"hasAccessToLevel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter members in the results set to the - ones that have access to a level.\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\"\n }\n },\n - \ \"id\": \"youtube.members.list\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"hl\": {\n \"type\": \"string\",\n \"default\": - \"en-US\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the videoCategory - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"response\": - {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.videoAbuseReportReasons.list\"\n - \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n - \ \"set\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"videoId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\"\n - \ }\n },\n \"supportsMediaUpload\": true,\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.thumbnails.set\",\n \"path\": - \"youtube/v3/thumbnails/set\",\n \"description\": \"As this is not - an insert in a strict sense (it supports uploading/setting of a thumbnail - for multiple videos, which doesn't result in creation of a single resource), - I use a custom verb here.\",\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"mediaUpload\": {\n \"maxSize\": \"2097152\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ }\n }\n },\n \"response\": {\n - \ \"$ref\": \"ThumbnailSetResponse\"\n },\n \"parameterOrder\": - [\n \"videoId\"\n ]\n }\n }\n },\n \"comments\": - {\n \"methods\": {\n \"setModerationStatus\": {\n \"description\": - \"Sets the moderation status of one or more comments.\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"banAuthor\": {\n - \ \"location\": \"query\",\n \"default\": \"false\",\n - \ \"type\": \"boolean\",\n \"description\": \"If - set to true the author of the comment gets added to the ban list. This means - all future comments of the author will autmomatically be rejected. Only valid - in combination with STATUS_REJECTED.\"\n },\n \"moderationStatus\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"description\": \"Specifies the requested - moderation status. Note, comments can be in statuses, which are not available - through this call. For example, this call does not allow to mark a comment - as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"id\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\"\n }\n },\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\",\n \"id\": \"youtube.comments.setModerationStatus\"\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/comments\",\n \"response\": {\n \"$ref\": - \"CommentListResponse\"\n },\n \"id\": \"youtube.comments.list\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"maxResults\": {\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"minimum\": \"1\",\n - \ \"type\": \"integer\",\n \"maximum\": \"100\",\n - \ \"default\": \"20\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the comments with the given IDs for One Platform.\",\n \"repeated\": - true\n },\n \"parentId\": {\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"textFormat\": - {\n \"type\": \"string\",\n \"description\": \"The - requested text format for the returned comments.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"default\": \"html\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ]\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more comment resource properties that the API response will - include.\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"flatPath\": \"youtube/v3/comments\",\n \"id\": - \"youtube.comments.delete\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"path\": \"youtube/v3/comments\",\n \"response\": {\n - \ \"$ref\": \"Comment\"\n },\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.comments.insert\"\n },\n \"markAsSpam\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Expresses the caller's opinion that one or more - comments should be flagged as spam.\",\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Flags - the comments with the given IDs as spam in the caller's opinion.\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.comments.markAsSpam\"\n },\n - \ \"update\": {\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"description\": \"Updates an existing resource.\",\n \"path\": - \"youtube/v3/comments\",\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n }\n }\n - \ }\n },\n \"liveStreams\": {\n \"methods\": {\n \"list\": - {\n \"id\": \"youtube.liveStreams.list\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/liveStreams\",\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"maxResults\": {\n - \ \"location\": \"query\",\n \"maximum\": \"50\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\",\n \"default\": \"5\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"Return LiveStreams with the given ids - from Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n }\n },\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"id\": \"youtube.liveStreams.delete\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Deletes an existing stream for - the authenticated user.\"\n },\n \"update\": {\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"description\": \"Updates an existing - stream for the authenticated user.\",\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"httpMethod\": - \"PUT\",\n \"id\": \"youtube.liveStreams.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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, content_details, and status.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new stream for the authenticated user.\",\n \"id\": \"youtube.liveStreams.insert\"\n - \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.thirdPartyLinks.list\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API response will include. Supported - values are linkingToken, status, and snippet.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"linkingToken\": {\n \"description\": - \"Get a third party link with the given linking token.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"location\": \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"type\": - \"string\",\n \"description\": \"Get a third party link of the - given type.\"\n }\n },\n \"httpMethod\": \"GET\"\n - \ },\n \"update\": {\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the thirdPartyLink resource parts that the API request - and response will include. Supported values are linkingToken, status, and - snippet.\",\n \"repeated\": true\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"id\": - \"youtube.thirdPartyLinks.update\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"description\": - \"Updates an existing resource.\"\n },\n \"insert\": {\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"The *part* parameter - specifies the thirdPartyLink resource parts that the API request and response - will include. Supported values are linkingToken, status, and snippet.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\",\n \"location\": \"query\"\n }\n - \ },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"id\": - \"youtube.thirdPartyLinks.insert\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"parameters\": {\n \"linkingToken\": - {\n \"required\": true,\n \"description\": \"Delete - the partner links with the given linking token.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"Do not use. Required for compatibility.\",\n - \ \"location\": \"query\"\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\"\n },\n \"type\": {\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"Type of the link to be deleted.\"\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.delete\"\n }\n }\n },\n \"subscriptions\": - {\n \"methods\": {\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/subscriptions\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\"\n },\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"order\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"default\": \"relevance\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"description\": \"The order of the returned - subscriptions\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions of the given channel - owner.\"\n },\n \"mySubscribers\": {\n \"description\": - \"Return the subscribers of the given channel owner.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"forChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\",\n \"type\": \"string\"\n },\n - \ \"myRecentSubscribers\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Flag for returning the subscriptions of the - authenticated user.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions with the given IDs - for Stubby or Apiary.\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"default\": - \"5\",\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"youtube.subscriptions.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"path\": - \"youtube/v3/subscriptions\",\n \"response\": {\n \"$ref\": - \"SubscriptionListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n },\n \"insert\": - {\n \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"id\": \"youtube.subscriptions.insert\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"response\": {\n \"$ref\": - \"Subscription\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"liveBroadcasts\": - {\n \"methods\": {\n \"insert\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Inserts a new stream for the authenticated - user.\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"id\": \"youtube.liveBroadcasts.insert\"\n },\n - \ \"list\": {\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"50\",\n \"default\": \"5\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"broadcastStatus\": - {\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ]\n },\n \"broadcastType\": - {\n \"default\": \"event\",\n \"description\": \"Return - only broadcasts with the selected type.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return only scheduled event broadcasts.\",\n - \ \"Return only persistent broadcasts.\"\n ],\n - \ \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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, status and - statistics.\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\"\n },\n \"bind\": {\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.bind\",\n \"path\": - \"youtube/v3/liveBroadcasts/bind\",\n \"description\": \"Bind a broadcast - to a stream.\",\n \"parameters\": {\n \"streamId\": {\n - \ \"description\": \"Stream to bind, if not set unbind the current - one.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to bind to the stream\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n }\n - \ },\n \"delete\": {\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"id\": {\n \"description\": \"Broadcast to delete.\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"description\": \"Delete a given broadcast.\",\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"update\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"description\": \"Updates an existing broadcast for the authenticated - user.\",\n \"id\": \"youtube.liveBroadcasts.update\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"path\": \"youtube/v3/liveBroadcasts\"\n - \ },\n \"insertCuepoint\": {\n \"description\": \"Insert - cuepoints in a broadcast\",\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"parameterOrder\": [],\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"repeated\": true\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"id\": - \"youtube.liveBroadcasts.insertCuepoint\",\n \"response\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Cuepoint\"\n - \ },\n \"httpMethod\": \"POST\"\n },\n \"transition\": - {\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"description\": - \"Broadcast to transition.\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true\n },\n \"broadcastStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Start testing the broadcast. YouTube transmits video to - the broadcast's monitor stream. Note that you can only transition a broadcast - to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"The status to which the broadcast - is going to transition.\"\n }\n },\n \"id\": - \"youtube.liveBroadcasts.transition\",\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"description\": \"Transition - a broadcast to a given status.\",\n \"httpMethod\": \"POST\"\n }\n - \ }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"request\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"id\": \"youtube.tests.insert\",\n \"path\": \"youtube/v3/tests\",\n - \ \"flatPath\": \"youtube/v3/tests\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"TestItem\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"description\": - \"POST method.\"\n }\n }\n },\n \"playlistItems\": {\n \"methods\": - {\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.update\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"insert\": {\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"description\": \"Inserts - a new resource into this collection.\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.insert\"\n },\n - \ \"list\": {\n \"parameters\": {\n \"part\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return the playlist items associated - with the given video ID.\"\n },\n \"pageToken\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"playlistId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the playlist items within the given playlist.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.list\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"path\": \"youtube/v3/playlistItems\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"youtube\": {\n \"resources\": - {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"parameterOrder\": [],\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"description\": \"Updates an existing resource.\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"httpMethod\": \"PUT\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\"\n }\n - \ }\n }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.videoCategories.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"regionCode\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"default\": \"en-US\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the videoCategory resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Returns the video categories - with the given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/videoCategories\",\n \"response\": - {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"flatPath\": - \"youtube/v3/videoCategories\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n }\n },\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"name\": \"youtube\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": - {\n \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n }\n }\n - \ }\n },\n \"protocol\": \"rest\",\n \"kind\": \"discovery#restDescription\",\n - \ \"id\": \"youtube:v3\",\n \"schemas\": {\n \"ActivityContentDetailsRecommendation\": - {\n \"type\": \"object\",\n \"properties\": {\n \"seedResourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The seedResourceId - object contains information about the resource that caused the recommendation.\"\n - \ },\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the recommended resource.\",\n - \ \"$ref\": \"ResourceId\"\n },\n \"reason\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The reason that the resource is recommended to the user.\"\n }\n - \ },\n \"description\": \"Information that identifies the recommended - resource.\",\n \"id\": \"ActivityContentDetailsRecommendation\"\n },\n - \ \"I18nRegion\": {\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#i18nRegion\"\n },\n \"snippet\": - {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"I18nRegion\",\n \"description\": \"A *i18nRegion* - resource identifies a region where YouTube is available.\"\n },\n \"SearchResult\": - {\n \"type\": \"object\",\n \"id\": \"SearchResult\",\n \"description\": - \"A search result contains information about a YouTube video, channel, or - playlist that matches the search parameters specified in an API request. While - a search result points to a uniquely identifiable resource, like a video, - it does not have its own persistent data.\",\n \"properties\": {\n \"id\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The id - object contains information that can be used to uniquely identify the resource - that matches the search request.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about a search result, such as its title or description. For - example, if the search result is a video, then the title will be the video's - title and the description will be the video's description.\",\n \"$ref\": - \"SearchResultSnippet\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n \"default\": - \"youtube#searchResult\"\n }\n }\n },\n \"SuperChatEventListResponse\": - {\n \"id\": \"SuperChatEventListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"items\": {\n \"description\": \"A list of Super - Chat purchases that match the request criteria.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"SuperChatEvent\"\n }\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"kind\": {\n \"default\": - \"youtube#superChatEventListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"Cuepoint\": {\n \"type\": \"object\",\n - \ \"description\": \"Note that there may be a 5-second end-point resolution - issue. For instance, if a cuepoint comes in for 22:03:27, we may stuff the - cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact of HLS.\",\n - \ \"properties\": {\n \"cueType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ]\n },\n \"walltimeMs\": - {\n \"format\": \"uint64\",\n \"description\": \"The wall - clock time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\",\n \"type\": \"string\"\n - \ },\n \"insertionOffsetTimeMs\": {\n \"format\": \"int64\",\n - \ \"description\": \"The time when the cuepoint should be inserted - by offset to the broadcast actual start time.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The identifier for cuepoint resource.\"\n },\n \"durationSecs\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The duration of this cuepoint.\"\n }\n },\n \"id\": \"Cuepoint\"\n - \ },\n \"ActivityContentDetailsPlaylistItem\": {\n \"description\": - \"Information about a new playlist item.\",\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"properties\": {\n \"playlistId\": {\n \"type\": \"string\",\n - \ \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information about the resource that was added to the playlist.\"\n },\n - \ \"playlistItemId\": {\n \"type\": \"string\",\n \"description\": - \"ID of the item within the playlist.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"properties\": - {\n \"associatedMembershipGiftingMessageId\": {\n \"description\": - \"The ID of the membership gifting message that is related to this gift membership. - This ID will always refer to a message whose type is 'membershipGiftingEvent'.\",\n - \ \"type\": \"string\"\n },\n \"memberLevelName\": {\n - \ \"description\": \"The name of the Level at which the viewer is - a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"gifterChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\"\n }\n },\n \"id\": - \"LiveChatGiftMembershipReceivedDetails\",\n \"type\": \"object\"\n },\n - \ \"ChannelListResponse\": {\n \"id\": \"ChannelListResponse\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#channelListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Channel\"\n }\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n }\n },\n \"I18nLanguage\": - {\n \"id\": \"I18nLanguage\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the i18n language.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#i18nLanguage\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n language, such as language code and human-readable name.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"An *i18nLanguage* - resource identifies a UI language currently supported by YouTube.\"\n },\n - \ \"Channel\": {\n \"properties\": {\n \"topicDetails\": {\n - \ \"$ref\": \"ChannelTopicDetails\",\n \"description\": \"The - topicDetails object encapsulates information about Freebase topics associated - with the channel.\"\n },\n \"auditDetails\": {\n \"$ref\": - \"ChannelAuditDetails\",\n \"description\": \"The auditionDetails - object encapsulates channel data that is relevant for YouTube Partners during - the audition process.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel.\",\n \"type\": - \"string\"\n },\n \"contentOwnerDetails\": {\n \"$ref\": - \"ChannelContentOwnerDetails\",\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n - \ }\n },\n \"statistics\": {\n \"description\": - \"The statistics object encapsulates statistics for the channel.\",\n \"$ref\": - \"ChannelStatistics\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channel\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n - \ \"description\": \"The contentDetails object encapsulates information - about the channel's content.\"\n },\n \"conversionPings\": {\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\",\n \"$ref\": - \"ChannelConversionPings\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"brandingSettings\": {\n \"$ref\": \"ChannelBrandingSettings\",\n - \ \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\"\n },\n \"snippet\": {\n - \ \"description\": \"The snippet object contains basic details about - the channel, such as its title, description, and thumbnail images.\",\n \"$ref\": - \"ChannelSnippet\"\n },\n \"status\": {\n \"$ref\": - \"ChannelStatus\",\n \"description\": \"The status object encapsulates - information about the privacy status of the channel.\"\n }\n },\n - \ \"description\": \"A *channel* resource contains information about a - YouTube channel.\",\n \"type\": \"object\",\n \"id\": \"Channel\"\n - \ },\n \"LiveChatMessage\": {\n \"type\": \"object\",\n \"id\": - \"LiveChatMessage\",\n \"description\": \"A *liveChatMessage* resource - represents a chat message in a YouTube Live Chat.\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n - \ \"default\": \"youtube#liveChatMessage\",\n \"type\": \"string\"\n - \ },\n \"authorDetails\": {\n \"description\": \"The - authorDetails object contains basic details about the user that posted this - message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"Playlist\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"status\": - {\n \"description\": \"The status object contains status information - for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"PlaylistContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - like video count.\"\n },\n \"player\": {\n \"$ref\": - \"PlaylistPlayer\",\n \"description\": \"The player object contains - information that you would use to play the playlist in an embedded player.\"\n - \ },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"description\": \"Localizations for different languages\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#playlist\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n - \ }\n },\n \"description\": \"A *playlist* resource represents - a YouTube playlist. A playlist is a collection of videos that can be viewed - sequentially and shared with other users. A playlist can contain up to 200 - videos, and YouTube does not limit the number of playlists that each user - creates. By default, playlists are publicly visible to other users, but playlists - can be public or private. YouTube also uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n - \ \"id\": \"Playlist\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"description\": \"Information about a video that was marked as a - favorite video.\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was marked as a favorite.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsFavorite\",\n \"type\": - \"object\"\n },\n \"CaptionSnippet\": {\n \"id\": \"CaptionSnippet\",\n - \ \"properties\": {\n \"isCC\": {\n \"description\": \"Indicates - whether the track contains closed captions for the deaf and hard of hearing. - The default value is false.\",\n \"type\": \"boolean\"\n },\n - \ \"failureReason\": {\n \"type\": \"string\",\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ]\n },\n \"lastUpdated\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the caption track was last updated.\",\n \"type\": - \"string\"\n },\n \"isDraft\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\"\n - \ },\n \"audioTrackType\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ],\n \"description\": - \"The type of audio track associated with the caption track.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"isLarge\": {\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\",\n \"type\": \"boolean\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video associated with - the caption track. @mutable youtube.captions.insert\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"name\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The name of the - caption track. The name is intended to be visible to the user as an option - during playback.\"\n },\n \"trackKind\": {\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The caption track's type.\"\n },\n \"status\": - {\n \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ],\n \"type\": \"string\",\n \"description\": - \"The caption track's status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"language\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the caption track. The property value is a BCP-47 language tag.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"isAutoSynced\": {\n \"description\": - \"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.\",\n \"type\": \"boolean\"\n },\n \"isEasyReader\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"description\": \"Basic details about a caption - track, such as its language and name.\",\n \"type\": \"object\"\n },\n - \ \"I18nRegionSnippet\": {\n \"id\": \"I18nRegionSnippet\",\n \"description\": - \"Basic details about an i18n region, such as region code and human-readable - name.\",\n \"type\": \"object\",\n \"properties\": {\n \"name\": - {\n \"type\": \"string\",\n \"description\": \"The human-readable - name of the region.\"\n },\n \"gl\": {\n \"description\": - \"The region code as a 2-letter ISO country code.\",\n \"type\": - \"string\"\n }\n }\n },\n \"MemberSnippet\": {\n \"properties\": - {\n \"memberDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the member.\"\n },\n \"membershipsDetails\": - {\n \"description\": \"Details about the user's membership.\",\n - \ \"$ref\": \"MembershipsDetails\"\n },\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering memberships.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"MemberSnippet\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"description\": \"Information about a video stream.\",\n \"id\": - \"VideoFileDetailsVideoStream\",\n \"type\": \"object\",\n \"properties\": - {\n \"codec\": {\n \"description\": \"The video codec that - the stream uses.\",\n \"type\": \"string\"\n },\n \"widthPixels\": - {\n \"format\": \"uint32\",\n \"description\": \"The encoded - video content's width in pixels. You can calculate the video's encoding aspect - ratio as width_pixels / height_pixels.\",\n \"type\": \"integer\"\n - \ },\n \"rotation\": {\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ],\n \"type\": \"string\",\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"description\": \"The video stream's bitrate, in bits - per second.\",\n \"type\": \"string\"\n },\n \"heightPixels\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's height in pixels.\"\n },\n \"aspectRatio\": - {\n \"description\": \"The video content's display aspect ratio, - which specifies the aspect ratio in which the video should be displayed.\",\n - \ \"format\": \"double\",\n \"type\": \"number\"\n },\n - \ \"frameRateFps\": {\n \"format\": \"double\",\n \"description\": - \"The video stream's frame rate, in frames per second.\",\n \"type\": - \"number\"\n },\n \"vendor\": {\n \"type\": \"string\",\n - \ \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\"\n }\n }\n - \ },\n \"ContentRating\": {\n \"properties\": {\n \"catvfrRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ],\n \"description\": \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ]\n },\n \"bfvcRating\": {\n \"enum\": [\n - \ \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Thailand's Board of Film and Video Censors.\"\n },\n \"resorteviolenciaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Venezuela.\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"fcbmRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG13\",\n \"P13\",\n \"18\",\n - \ \"18SX\",\n \"18PA\",\n \"18SG\",\n \"18PL\",\n - \ \"\"\n ],\n \"enum\": [\n \"fcbmUnspecified\",\n - \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n - \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n - \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n - \ ],\n \"description\": \"The video's rating from Malaysia's - Film Censorship Board.\"\n },\n \"medietilsynetRating\": {\n - \ \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Medietilsynet, the Norwegian Media Authority.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n - \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"\"\n ]\n },\n \"anatelRating\": - {\n \"description\": \"The video's Anatel (Asociaci\xF3n Nacional - de Televisi\xF3n) rating for Chilean television.\",\n \"enum\": [\n - \ \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"czfilmRating\": {\n \"enum\": [\n - \ \"czfilmUnspecified\",\n \"czfilmU\",\n \"czfilm12\",\n - \ \"czfilm14\",\n \"czfilm18\",\n \"czfilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in the Czech Republic.\"\n },\n \"nkclvRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ]\n },\n \"pefilmRating\": {\n \"enum\": - [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Peru.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n - \ \"\"\n ]\n },\n \"fpbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\",\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"type\": - \"string\"\n },\n \"menaMpaaRating\": {\n \"enum\": - [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n - \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ],\n \"description\": \"The rating - system for MENA countries, a clone of MPAA. It is needed to prevent titles - go live w/o additional QC check, since some of them can be inappropriate for - the countries at all. See b/33408548 for more details.\"\n },\n \"fskRating\": - {\n \"description\": \"The video's Freiwillige Selbstkontrolle der - Filmwirtschaft (FSK - Germany) rating.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ]\n },\n \"mccypRating\": {\n \"enum\": [\n - \ \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n - \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\"\n },\n \"mccaaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Malta's Film Age-Classification Board.\"\n },\n \"rtcRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"A\",\n \"B\",\n \"B15\",\n - \ \"C\",\n \"D\",\n \"\"\n ],\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\",\n \"enum\": [\n \"rtcUnspecified\",\n - \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n - \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n - \ ]\n },\n \"grfilmRating\": {\n \"description\": - \"The video's rating in Greece.\",\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"tvpgRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n - \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n - \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"description\": \"The - video's TV Parental Guidelines (TVPG) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ]\n },\n \"djctqRatingReasons\": - {\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ]\n },\n \"type\": - \"array\",\n \"description\": \"Reasons that explain why the video - received its DJCQT (Brazil) rating.\"\n },\n \"kfcbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"kfcbUnspecified\",\n - \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n - \ \"kfcbR\",\n \"kfcbUnrated\"\n ],\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\"\n },\n - \ \"mpaaRating\": {\n \"enum\": [\n \"mpaaUnspecified\",\n - \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n - \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n - \ \"mpaaUnrated\"\n ],\n \"description\": \"The - video's Motion Picture Association of America (MPAA) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"mocRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mocUnspecified\",\n - \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n - \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"description\": \"The - video's Ministerio de Cultura (Colombia) rating.\"\n },\n \"ytRating\": - {\n \"description\": \"A rating that YouTube uses to identify age-restricted - content.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ]\n - \ },\n \"eirinRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ],\n \"description\": \"The - video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\"\n - \ },\n \"fmocRating\": {\n \"description\": \"This property - has been deprecated. Use the contentDetails.contentRating.cncRating instead.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ]\n },\n \"smaisRating\": {\n \"enum\": [\n - \ \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n - \ \"smais12\",\n \"smais14\",\n \"smais16\",\n - \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Iceland.\"\n },\n \"incaaRating\": {\n - \ \"description\": \"The video's INCAA (Instituto Nacional de Cine - y Artes Audiovisuales - Argentina) rating.\",\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ]\n },\n \"ecbmctRating\": - {\n \"enum\": [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n - \ \"ecbmct7a\",\n \"ecbmct7plus\",\n \"ecbmct13a\",\n - \ \"ecbmct13plus\",\n \"ecbmct15a\",\n \"ecbmct15plus\",\n - \ \"ecbmct18plus\",\n \"ecbmctUnrated\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"7A\",\n \"7+\",\n \"13A\",\n - \ \"13+\",\n \"15A\",\n \"15+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"Rating system - in Turkey - Evaluation and Classification Board of the Ministry of Culture - and Tourism\"\n },\n \"mdaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mdaUnspecified\",\n - \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n - \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n - \ \"mdaUnrated\"\n ],\n \"description\": \"The - video's rating from Singapore's Media Development Authority (MDA) and, specifically, - it's Board of Film Censors (BFC).\"\n },\n \"egfilmRating\": - {\n \"enum\": [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n - \ \"egfilm18\",\n \"egfilmBn\",\n \"egfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Egypt.\",\n \"type\": - \"string\"\n },\n \"djctqRating\": {\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"cnaRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Romania's CONSILIUL NATIONAL - AL AUDIOVIZUALULUI (CNA).\",\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"fcoRating\": {\n \"description\": \"The video's - rating from Hong Kong's Office for Film, Newspaper and Article Administration.\",\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"I\",\n - \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n - \ \"\"\n ]\n },\n \"lsfRating\": {\n \"enum\": - [\n \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"description\": \"The video's rating from Indonesia's - Lembaga Sensor Film.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"SU\",\n \"A\",\n \"BO\",\n \"13\",\n - \ \"R\",\n \"17\",\n \"D\",\n \"21\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"nfvcbRating\": {\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Nigeria's National Film and Video Censors Board.\",\n \"type\": - \"string\"\n },\n \"kmrbRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n - \ \"kmrb12plus\",\n \"kmrb15plus\",\n \"kmrbTeenr\",\n - \ \"kmrbR\",\n \"kmrbUnrated\"\n ],\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ]\n },\n \"mcstRating\": {\n \"description\": - \"The video's rating system for Vietnam - MCST\",\n \"enum\": [\n - \ \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ]\n },\n \"nbcRating\": {\n \"enum\": - [\n \"nbcUnspecified\",\n \"nbcG\",\n \"nbcPg\",\n - \ \"nbc12plus\",\n \"nbc15plus\",\n \"nbc18plus\",\n - \ \"nbc18plusr\",\n \"nbcPu\",\n \"nbcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n - \ \"18+R\",\n \"PU\",\n \"\"\n ]\n - \ },\n \"cccRating\": {\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Todo - espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n - \ \"14+\",\n \"18+\",\n \"18+ - contenido - excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"description\": \"The video's Consejo - de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n \"type\": - \"string\"\n },\n \"cceRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"4\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\",\n \"14\"\n ],\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\"\n },\n \"bmukkRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\"\n },\n \"fpbRatingReasons\": - {\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"type\": - \"array\",\n \"description\": \"Reasons that explain why the video - received its FPB (South Africa) rating.\"\n },\n \"mpaatRating\": - {\n \"description\": \"The rating system for trailer, DVD, and Ad - in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GB\",\n \"RB\"\n ]\n - \ },\n \"kijkwijzerRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n \"kijkwijzer6\",\n - \ \"kijkwijzer9\",\n \"kijkwijzer12\",\n \"kijkwijzer16\",\n - \ \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n ],\n - \ \"description\": \"The video's NICAM/Kijkwijzer rating from the - Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\"\n - \ },\n \"cscfRating\": {\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Luxembourg's Commission de surveillance de la classification des films - (CSCF).\",\n \"type\": \"string\"\n },\n \"acbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n - \ \"description\": \"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.\",\n \"type\": - \"string\",\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ]\n },\n \"nmcRating\": - {\n \"description\": \"The National Media Council ratings system - for United Arab Emirates.\",\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ]\n - \ },\n \"moctwRating\": {\n \"description\": \"The video's - rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ],\n \"enum\": - [\n \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n - \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n - \ \"moctwR12\",\n \"moctwR15\"\n ]\n },\n - \ \"catvRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"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.\",\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ]\n },\n - \ \"oflcRating\": {\n \"description\": \"The video's Office - of Film and Literature Classification (OFLC - New Zealand) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"type\": \"string\"\n },\n - \ \"chvrsRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"14A\",\n \"18A\",\n - \ \"R\",\n \"E\",\n \"\"\n ],\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"type\": - \"string\"\n },\n \"cbfcRating\": {\n \"enum\": [\n - \ \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"description\": \"The video's Central Board of Film - Certification (CBFC - India) rating.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ]\n },\n \"nbcplRating\": {\n \"enum\": [\n - \ \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"description\": \"The - video's rating in Poland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"mtrcbRating\": {\n \"description\": \"The video's - rating from the Movie and Television Review and Classification Board (Philippines).\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"R-13\",\n \"R-16\",\n - \ \"R-18\",\n \"X\",\n \"\"\n ],\n - \ \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ]\n },\n \"cncRating\": {\n \"description\": - \"Rating system in France - Commission de classification cinematographique\",\n - \ \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ]\n },\n \"ilfilmRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Israel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"bbfcRating\": - {\n \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n - \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n - \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n - \ \"bbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's British Board of Film Classification (BBFC) rating.\"\n },\n - \ \"chfilmRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Switzerland.\",\n \"enum\": - [\n \"chfilmUnspecified\",\n \"chfilm0\",\n \"chfilm6\",\n - \ \"chfilm12\",\n \"chfilm16\",\n \"chfilm18\",\n - \ \"chfilmUnrated\"\n ]\n },\n \"mekuRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"S\",\n \"7\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"mekuUnspecified\",\n \"mekuS\",\n \"meku7\",\n - \ \"meku12\",\n \"meku16\",\n \"meku18\",\n - \ \"mekuUnrated\"\n ],\n \"description\": \"The - video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti (National - Audiovisual Institute).\"\n },\n \"agcomRating\": {\n \"enum\": - [\n \"agcomUnspecified\",\n \"agcomT\",\n \"agcomVm14\",\n - \ \"agcomVm18\",\n \"agcomUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Italy's - Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ]\n },\n \"smsaRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"All - ages\",\n \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"description\": \"The - video's rating from Statens medier\xE5d (Sweden's National Media Council).\"\n - \ },\n \"cicfRating\": {\n \"description\": \"The video's - rating from the Commission de Contr\xF4le des Films (Belgium).\",\n \"enum\": - [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"rteRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ],\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ]\n },\n \"csaRating\": {\n \"enum\": [\n - \ \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n - \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n - \ \"csaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from France's Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast - content.\",\n \"type\": \"string\"\n },\n \"nfrcRating\": - {\n \"enum\": [\n \"nfrcUnspecified\",\n \"nfrcA\",\n - \ \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n - \ \"nfrcUnrated\"\n ],\n \"description\": \"The - video's rating from the Bulgarian National Film Center.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"eefilmRating\": {\n \"description\": - \"The video's rating in Estonia.\",\n \"type\": \"string\",\n \"enum\": - [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n \"eefilmL\",\n - \ \"eefilmMs6\",\n \"eefilmK6\",\n \"eefilmMs12\",\n - \ \"eefilmK12\",\n \"eefilmK14\",\n \"eefilmK16\",\n - \ \"eefilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n - \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n - \ \"K-16\",\n \"\"\n ]\n },\n \"icaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ],\n - \ \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ],\n \"description\": \"The - video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - - Spain) rating.\",\n \"type\": \"string\"\n },\n \"skfilmRating\": - {\n \"description\": \"The video's rating in Slovakia.\",\n \"enum\": - [\n \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n - \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ]\n },\n \"mibacRating\": - {\n \"description\": \"The video's rating from the Ministero dei - Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n - \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n - \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n - \ ]\n },\n \"russiaRating\": {\n \"enum\": - [\n \"russiaUnspecified\",\n \"russia0\",\n \"russia6\",\n - \ \"russia12\",\n \"russia16\",\n \"russia18\",\n - \ \"russiaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"description\": \"The video's National Film Registry of the Russian - Federation (MKRF - Russia) rating.\",\n \"type\": \"string\"\n },\n - \ \"rcnofRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n - \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n - \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\",\n \"type\": \"string\"\n },\n - \ \"ifcoRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"15A\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's Irish - Film Classification Office (IFCO - Ireland) rating. See the IFCO website for - more information.\",\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Ratings schemes. The country-specific - ratings are mostly for movies and shows. LINT.IfChange\",\n \"id\": \"ContentRating\"\n - \ },\n \"MembershipsDuration\": {\n \"id\": \"MembershipsDuration\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The cumulative time the user has been a member across all levels in complete - months (the time is rounded down to the nearest integer).\"\n },\n - \ \"memberSince\": {\n \"description\": \"The date and time - when the user became a continuous member across all levels.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelAuditDetails\": {\n \"properties\": - {\n \"communityGuidelinesGoodStanding\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether or not the channel respects the community - guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the channel has - any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n }\n },\n \"id\": - \"ChannelAuditDetails\",\n \"type\": \"object\",\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\"\n },\n \"ChannelSection\": {\n - \ \"id\": \"ChannelSection\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"targeting\": {\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel section.\",\n \"type\": \"string\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"description\": \"Localizations - for different languages\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelSection\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"ChannelSectionSnippet\",\n \"description\": \"The snippet object - contains basic details about the channel section, such as its type, style - and title.\"\n }\n },\n \"type\": \"object\"\n },\n \"LocalizedString\": - {\n \"id\": \"LocalizedString\",\n \"properties\": {\n \"language\": - {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcast\": - {\n \"description\": \"A *liveBroadcast* resource represents an event - that will be streamed, via live video, on YouTube.\",\n \"id\": \"LiveBroadcast\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the broadcast.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n \"description\": - \"The status object contains information about the event's status.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information about the event's video content, such as whether - the content can be shown in an embedded video player or if it will be archived - and therefore available for viewing after the event has concluded.\",\n \"$ref\": - \"LiveBroadcastContentDetails\"\n },\n \"statistics\": {\n \"$ref\": - \"LiveBroadcastStatistics\",\n \"description\": \"The statistics - object contains info about the event's current stats. These include concurrent - viewers and total chat count. Statistics can change (in either direction) - during the lifetime of an event. Statistics are only returned while the event - is live.\"\n },\n \"snippet\": {\n \"$ref\": \"LiveBroadcastSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the event, including its title, description, start time, and end time.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"default\": \"youtube#liveBroadcast\"\n }\n }\n },\n - \ \"Video\": {\n \"type\": \"object\",\n \"description\": \"A - *video* resource represents a YouTube video.\",\n \"properties\": {\n - \ \"projectDetails\": {\n \"description\": \"The projectDetails - object contains information about the project specific video metadata. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"status\": - {\n \"$ref\": \"VideoStatus\",\n \"description\": \"The - status object contains information about the video's uploading, processing, - and privacy statuses.\"\n },\n \"recordingDetails\": {\n \"$ref\": - \"VideoRecordingDetails\",\n \"description\": \"The recordingDetails - object encapsulates information about the location, date and address where - the video was recorded.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"VideoContentDetails\",\n \"description\": \"The contentDetails - object contains information about the video content, including the length - of the video and its aspect ratio.\"\n },\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"suggestions\": - {\n \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoSuggestions\"\n },\n \"snippet\": - {\n \"$ref\": \"VideoSnippet\",\n \"description\": \"The - snippet object contains basic details about the video, such as its title, - description, and category.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"processingDetails\": {\n \"description\": \"The processingDetails - object encapsulates information about YouTube's progress in processing the - uploaded video file. The properties in the object identify the current processing - status and an estimate of the time remaining until YouTube finishes processing - the video. This part also indicates whether different types of data or content, - such as file details or thumbnail images, are available for the video. The - processingProgress object is designed to be polled so that the video uploaded - can track the progress that YouTube has made in processing the uploaded video - file. This data can only be retrieved by the video owner.\",\n \"$ref\": - \"VideoProcessingDetails\"\n },\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n - \ \"fileDetails\": {\n \"$ref\": \"VideoFileDetails\",\n \"description\": - \"The fileDetails object encapsulates information about the video file that - was uploaded to YouTube, including the file's resolution, duration, audio - and video codecs, stream bitrates, and more. This data can only be retrieved - by the video owner.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains statistics about the video.\",\n \"$ref\": - \"VideoStatistics\"\n },\n \"player\": {\n \"$ref\": - \"VideoPlayer\",\n \"description\": \"The player object contains - information that you would use to play the video in an embedded player.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#video\"\n - \ },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\"\n },\n \"monetizationDetails\": {\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\",\n \"$ref\": \"VideoMonetizationDetails\"\n - \ },\n \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n - \ \"description\": \"Age restriction details related to a video. This - data can only be retrieved by the video owner.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.videos.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n }\n },\n \"id\": \"Video\"\n },\n \"VideoCategorySnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a video category, such as its localized title.\",\n \"id\": \"VideoCategorySnippet\",\n - \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n - \ \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"description\": - \"The YouTube channel that created the video category.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The video - category's title.\"\n },\n \"assignable\": {\n \"type\": - \"boolean\"\n }\n }\n },\n \"ChannelLocalization\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"description\": \"The localized strings for channel's description.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - title.\"\n }\n },\n \"id\": \"ChannelLocalization\",\n \"description\": - \"Channel localization setting\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageRetractedDetails\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"properties\": {\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level that the viewer - just had joined. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n },\n - \ \"isUpgrade\": {\n \"type\": \"boolean\",\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatNewSponsorDetails\"\n - \ },\n \"MonitorStreamInfo\": {\n \"id\": \"MonitorStreamInfo\",\n - \ \"description\": \"Settings and Info of the monitor stream\",\n \"type\": - \"object\",\n \"properties\": {\n \"enableMonitorStream\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This value - determines whether the monitor stream is enabled for the broadcast. If the - monitor stream is enabled, then YouTube will broadcast the event content on - a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"embedHtml\": {\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\",\n \"type\": - \"string\"\n },\n \"broadcastStreamDelayMs\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"If you have set - the enableMonitorStream property to true, then this property determines the - length of the live broadcast delay.\"\n }\n }\n },\n \"LiveStreamContentDetails\": - {\n \"id\": \"LiveStreamContentDetails\",\n \"type\": \"object\",\n - \ \"description\": \"Detailed settings of a stream.\",\n \"properties\": - {\n \"closedCaptionsIngestionUrl\": {\n \"description\": \"The - ingestion URL where the closed captions of this stream are sent.\",\n \"type\": - \"string\"\n },\n \"isReusable\": {\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \",\n \"type\": \"boolean\"\n }\n }\n },\n \"TestItem\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"gaia\": {\n \"format\": \"int64\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"TestItem\"\n },\n \"PageInfo\": {\n \"id\": \"PageInfo\",\n \"type\": - \"object\",\n \"properties\": {\n \"resultsPerPage\": {\n \"format\": - \"int32\",\n \"type\": \"integer\",\n \"description\": \"The - number of results included in the API response.\"\n },\n \"totalResults\": - {\n \"type\": \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The total number of results in the result set.\"\n }\n },\n - \ \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\"\n },\n \"VideoProcessingDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\",\n \"properties\": {\n \"processingStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\",\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"type\": \"string\"\n - \ },\n \"thumbnailsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\"\n },\n \"tagSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether keyword (tag) suggestions are available for the video. Tags - can be added to a video's metadata to make it easier for other users to find - the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"processingIssuesAvailability\": - {\n \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"editorSuggestionsAvailability\": {\n \"description\": - \"This value indicates whether video editing suggestions, which might improve - video quality or the playback experience, are available for the video. You - can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"processingProgress\": - {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n },\n \"processingFailureReason\": - {\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\"\n - \ },\n \"fileDetailsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether file details are - available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\"\n }\n - \ },\n \"id\": \"VideoProcessingDetails\"\n },\n \"SearchListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"SearchResult\"\n },\n \"description\": \"Pagination information - for token pagination.\",\n \"type\": \"array\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"default\": \"youtube#searchListResponse\",\n \"type\": - \"string\"\n },\n \"regionCode\": {\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"SearchListResponse\"\n },\n \"ActivityListResponse\": - {\n \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Activity\"\n }\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"default\": \"youtube#activityListResponse\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ActivityListResponse\"\n },\n - \ \"Thumbnail\": {\n \"id\": \"Thumbnail\",\n \"properties\": - {\n \"width\": {\n \"description\": \"(Optional) Width of - the thumbnail image.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"height\": {\n \"format\": \"uint32\",\n - \ \"description\": \"(Optional) Height of the thumbnail image.\",\n - \ \"type\": \"integer\"\n },\n \"url\": {\n \"description\": - \"The thumbnail image's URL.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A thumbnail - is an image representing a YouTube resource.\"\n },\n \"VideoPlayer\": - {\n \"properties\": {\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\",\n - \ \"type\": \"string\"\n },\n \"embedHeight\": {\n \"type\": - \"string\",\n \"format\": \"int64\"\n },\n \"embedWidth\": - {\n \"description\": \"The embed width\",\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n }\n },\n \"description\": - \"Player to be used for a video playback.\",\n \"id\": \"VideoPlayer\",\n - \ \"type\": \"object\"\n },\n \"ActivitySnippet\": {\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel associated with - the activity.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The description of the resource - primarily associated with the activity. @mutable youtube.activities.insert\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the resource primarily associated with the activity.\"\n },\n - \ \"channelTitle\": {\n \"description\": \"Channel title for - the channel responsible for this activity\",\n \"type\": \"string\"\n - \ },\n \"groupId\": {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"type\": {\n \"enum\": - [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ],\n \"description\": \"The type of activity that the resource - describes.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"description\": \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the video was uploaded.\",\n \"format\": - \"date-time\"\n }\n },\n \"description\": \"Basic details - about an activity, including title, description, thumbnails, activity type - and group. Next ID: 12\",\n \"id\": \"ActivitySnippet\",\n \"type\": - \"object\"\n },\n \"CommentSnippetAuthorChannelId\": {\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"CommentSnippetAuthorChannelId\",\n \"type\": \"object\",\n - \ \"description\": \"The id of the author's YouTube channel, if any.\"\n - \ },\n \"TokenPagination\": {\n \"type\": \"object\",\n \"id\": - \"TokenPagination\",\n \"properties\": {},\n \"description\": \"Stub - token pagination template to suppress results.\"\n },\n \"VideoTopicDetails\": - {\n \"properties\": {\n \"topicCategories\": {\n \"type\": - \"array\",\n \"description\": \"A list of Wikipedia URLs that provide - a high-level description of the video's content.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"relevantTopicIds\": - {\n \"description\": \"Similar to topic_id, except that these topics - are merely relevant to the video. These are topics that may be mentioned in, - or appear in the video. You can retrieve information about each topic using - Freebase Topic API.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicIds\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of Freebase - topic IDs that are centrally associated with the video. These are topics that - are centrally featured in the video, and it can be said that the video is - mainly about each of these. You can retrieve information about each topic - using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n }\n },\n \"description\": \"Freebase topic - information related to the video.\",\n \"type\": \"object\",\n \"id\": - \"VideoTopicDetails\"\n },\n \"VideoStatus\": {\n \"id\": \"VideoStatus\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a video category, such as its localized title. Next Id: 18\",\n \"properties\": - {\n \"publishAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the video - is scheduled to publish. It can be set only if the privacy status of the video - is private..\"\n },\n \"license\": {\n \"enum\": [\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"madeForKids\": {\n \"type\": - \"boolean\"\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\"\n },\n \"failureReason\": {\n \"description\": - \"This value explains why a video failed to upload. This property is only - present if the uploadStatus property indicates that the upload failed.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ],\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ]\n },\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's privacy - status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n },\n \"uploadStatus\": - {\n \"enumDescriptions\": [\n \"Video has been uploaded - but not processed yet.\",\n \"Video has been successfully processed.\",\n - \ \"Processing has failed. See FailureReason.\",\n \"Video - has been rejected. See RejectionReason.\",\n \"Video has been deleted.\"\n - \ ],\n \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ],\n \"description\": \"The status of the uploaded video.\",\n - \ \"type\": \"string\"\n },\n \"rejectionReason\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"description\": \"This value explains why YouTube - rejected an uploaded video. This property is only present if the uploadStatus - property indicates that the upload was rejected.\",\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n },\n \"embeddable\": - {\n \"description\": \"This value indicates if the video can be embedded - on another website. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n }\n }\n - \ },\n \"LiveChatBanSnippet\": {\n \"id\": \"LiveChatBanSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"banDurationSeconds\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n },\n - \ \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"type\": {\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"type\": - \"string\",\n \"description\": \"The type of ban.\",\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ]\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The chat - this ban is pertinent to.\"\n }\n }\n },\n \"ThirdPartyLinkSnippet\": - {\n \"description\": \"Basic information about a third party account - link, including its type and type-specific information.\",\n \"type\": - \"object\",\n \"properties\": {\n \"type\": {\n \"type\": - \"string\",\n \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"description\": \"Type - of the link named after the entities that are being linked.\"\n },\n - \ \"channelToStoreLink\": {\n \"description\": \"Information - specific to a link between a channel and a store on a merchandising platform.\",\n - \ \"$ref\": \"ChannelToStoreLinkDetails\"\n }\n },\n \"id\": - \"ThirdPartyLinkSnippet\"\n },\n \"PlaylistItemSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"videoOwnerChannelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel this video belongs to.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the user that added the item to the playlist.\"\n - \ },\n \"videoOwnerChannelId\": {\n \"description\": - \"Channel id for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that is included in the playlist as the playlist item.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"$ref\": \"ResourceId\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the playlist item belongs to.\"\n },\n \"position\": - {\n \"type\": \"integer\",\n \"description\": \"The order - in which the item appears in the playlist. The value uses a zero-based index, - so the first item has a position of 0, the second item has a position of 1, - and so forth.\",\n \"format\": \"uint32\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the playlist item. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The item's description.\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist - item is in.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the item was added to the playlist.\",\n \"format\": - \"date-time\"\n },\n \"title\": {\n \"description\": - \"The item's title.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"PlaylistItemSnippet\",\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails. Basic details - of a YouTube Playlist item provided by the author. Next ID: 15\"\n },\n - \ \"ActivityContentDetailsLike\": {\n \"type\": \"object\",\n \"description\": - \"Information about a resource that received a positive (like) rating.\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsLike\"\n - \ },\n \"PlaylistItemContentDetails\": {\n \"id\": \"PlaylistItemContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"note\": {\n - \ \"type\": \"string\",\n \"description\": \"A user-generated - note for this item.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify a video. To retrieve the video resource, set the id query parameter - to this value in your API request.\"\n },\n \"endAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\",\n - \ \"type\": \"string\"\n },\n \"startAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\",\n \"type\": \"string\"\n },\n - \ \"videoPublishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the video - was published to YouTube.\"\n }\n }\n },\n \"VideoCategoryListResponse\": - {\n \"type\": \"object\",\n \"id\": \"VideoCategoryListResponse\",\n - \ \"properties\": {\n \"items\": {\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\",\n \"items\": {\n \"$ref\": - \"VideoCategory\"\n },\n \"type\": \"array\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#videoCategoryListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n }\n }\n },\n \"LiveBroadcastContentDetails\": - {\n \"type\": \"object\",\n \"description\": \"Detailed settings - of a broadcast.\",\n \"properties\": {\n \"enableAutoStart\": - {\n \"description\": \"This setting indicates whether auto start - is enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\",\n \"type\": \"boolean\"\n - \ },\n \"enableContentEncryption\": {\n \"description\": - \"This setting indicates whether YouTube should enable content encryption - for the broadcast.\",\n \"type\": \"boolean\"\n },\n \"enableClosedCaptions\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether HTTP POST closed captioning is enabled for this broadcast. - The ingestion URL of the closed captions is returned through the liveStreams - API. This is mutually exclusive with using the closed_captions_type property, - and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n - \ },\n \"monitorStream\": {\n \"$ref\": \"MonitorStreamInfo\",\n - \ \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\"\n },\n \"stereoLayout\": - {\n \"description\": \"The 3D stereo layout of this broadcast. This - defaults to mono.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ]\n },\n \"projection\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ],\n \"description\": \"The projection format of this broadcast. - This defaults to rectangular.\",\n \"type\": \"string\"\n },\n - \ \"recordFromStart\": {\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\",\n \"type\": \"boolean\"\n - \ },\n \"mesh\": {\n \"type\": \"string\",\n \"description\": - \"The mesh for projecting the video if projection is mesh. The mesh value - must be a UTF-8 string containing the base-64 encoding of 3D mesh data that - follows the Spherical Video V2 RFC specification for an mshp box, excluding - the box size and type but including the following four reserved zero bytes - for the version and flags.\",\n \"format\": \"byte\"\n },\n - \ \"enableDvr\": {\n \"description\": \"This setting determines - whether viewers can access DVR controls while watching the video. DVR controls - enable the viewer to control the video playback experience by pausing, rewinding, - or fast forwarding content. The default value for this property is true. *Important:* - You must set the value to true and also set the enableArchive property's value - to true if you want to make playback available immediately after the broadcast - ends.\",\n \"type\": \"boolean\"\n },\n \"enableAutoStop\": - {\n \"description\": \"This setting indicates whether auto stop is - enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\",\n \"type\": \"boolean\"\n - \ },\n \"closedCaptionsType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ]\n },\n \"enableLowLatency\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast has low latency enabled.\"\n },\n \"latencyPreference\": - {\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Best for: highest quality viewer playbacks - and higher resolutions.\",\n \"Best for: near real-time interaction, - with minimal playback buffering.\",\n \"Best for: real-time interaction - Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n - \ \"description\": \"If both this and enable_low_latency are set, - they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW - should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency - omitted.\"\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"description\": - \"The date and time that the live stream referenced by boundStreamId was last - updated.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"startWithSlate\": {\n \"description\": \"This - setting indicates whether the broadcast should automatically begin with an - in-stream slate when you update the broadcast's status to live. After updating - the status, you then need to send a liveCuepoints.insert request that sets - the cuepoint's eventState to end to remove the in-stream slate and make your - broadcast stream visible to viewers.\",\n \"type\": \"boolean\"\n - \ },\n \"boundStreamId\": {\n \"description\": \"This - value uniquely identifies the live stream bound to the broadcast.\",\n \"type\": - \"string\"\n },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n }\n },\n \"id\": \"LiveBroadcastContentDetails\"\n - \ },\n \"VideoAgeGating\": {\n \"id\": \"VideoAgeGating\",\n \"type\": - \"object\",\n \"properties\": {\n \"alcoholContent\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether or not the video - has alcoholic beverage content. Only users of legal purchasing age in a particular - country, as identified by ICAP, can view the content.\"\n },\n \"videoGameRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"anyone\",\n - \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n - \ ],\n \"description\": \"Video game rating, if any.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"restricted\": - {\n \"type\": \"boolean\",\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\"\n }\n - \ }\n },\n \"CdnSettings\": {\n \"description\": \"Brief description - of the live stream cdn settings.\",\n \"id\": \"CdnSettings\",\n \"type\": - \"object\",\n \"properties\": {\n \"ingestionInfo\": {\n \"$ref\": - \"IngestionInfo\",\n \"description\": \"The ingestionInfo object - contains information that YouTube provides that you need to transmit your - RTMP or HTTP stream to YouTube.\"\n },\n \"resolution\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The resolution of the inbound video data.\"\n },\n \"format\": - {\n \"description\": \"The format of the video stream that you are - sending to Youtube. \",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"ingestionType\": {\n \"enum\": [\n \"rtmp\",\n - \ \"dash\",\n \"webrtc\",\n \"hls\"\n ],\n - \ \"description\": \" The method or protocol used to transmit the - video stream.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"frameRate\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The frame rate of the inbound video data.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ]\n }\n - \ }\n },\n \"VideoFileDetailsAudioStream\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoFileDetailsAudioStream\",\n \"properties\": {\n - \ \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"channelCount\": {\n \"format\": - \"uint32\",\n \"description\": \"The number of audio channels that - the stream contains.\",\n \"type\": \"integer\"\n },\n \"bitrateBps\": - {\n \"type\": \"string\",\n \"description\": \"The audio - stream's bitrate, in bits per second.\",\n \"format\": \"uint64\"\n - \ },\n \"codec\": {\n \"description\": \"The audio codec - that the stream uses.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Information about an audio stream.\"\n },\n \"MembershipsDurationAtLevel\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsDurationAtLevel\",\n - \ \"properties\": {\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\"\n },\n - \ \"memberSince\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the user became a continuous member for the given - level.\"\n },\n \"level\": {\n \"description\": \"Pricing - level ID.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"LiveChatMessageListResponse\": {\n \"id\": \"LiveChatMessageListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"offlineAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the underlying stream - went offline.\"\n },\n \"items\": {\n \"items\": {\n - \ \"$ref\": \"LiveChatMessage\"\n },\n \"type\": - \"array\"\n },\n \"pollingIntervalMillis\": {\n \"type\": - \"integer\",\n \"description\": \"The amount of time the client should - wait before polling again.\",\n \"format\": \"uint32\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatMessageListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n }\n },\n \"ActivityContentDetailsSocial\": - {\n \"description\": \"Details about a social network post.\",\n \"properties\": - {\n \"referenceUrl\": {\n \"description\": \"The URL of the - social network post.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\",\n \"$ref\": - \"ResourceId\"\n },\n \"type\": {\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"description\": \"The name of the social network.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"An image of the post's author.\"\n },\n \"author\": {\n \"description\": - \"The author of the social network post.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsSocial\"\n - \ },\n \"Comment\": {\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the comment.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#comment\"\n - \ },\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"A *comment* represents a single YouTube comment.\",\n \"id\": \"Comment\"\n - \ },\n \"VideoAbuseReportReasonListResponse\": {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The `visitorId` identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoAbuseReportReasonListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportReason\"\n },\n \"description\": - \"A list of valid abuse reasons that are used with `video.ReportAbuse`.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ }\n },\n \"IngestionInfo\": {\n \"description\": \"Describes - information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"properties\": - {\n \"ingestionAddress\": {\n \"description\": \"The primary - ingestion URL that you should use to stream video to YouTube. You must stream - video to this URL. Depending on which application or tool you use to encode - your video stream, you may need to enter the stream URL and stream name separately - or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \",\n \"type\": \"string\"\n },\n \"rtmpsBackupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of backupIngestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"backupIngestionAddress\": - {\n \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\",\n - \ \"type\": \"string\"\n },\n \"rtmpsIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of ingestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"streamName\": - {\n \"description\": \"The stream name that YouTube assigns to the - video stream.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"IngestionInfo\",\n \"type\": \"object\"\n },\n \"I18nLanguageListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of supported i18n languages. In this map, the i18n language ID is the - map key, and its value is the corresponding i18nLanguage resource.\",\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n },\n \"type\": - \"array\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"I18nLanguageListResponse\"\n },\n \"CommentThread\": - {\n \"id\": \"CommentThread\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#commentThread\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the comment thread and also the top level comment.\",\n - \ \"$ref\": \"CommentThreadSnippet\"\n },\n \"replies\": - {\n \"$ref\": \"CommentThreadReplies\",\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\"\n }\n },\n \"description\": - \"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.\",\n \"type\": \"object\"\n },\n \"Subscription\": - {\n \"type\": \"object\",\n \"id\": \"Subscription\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"default\": \"youtube#subscription\"\n },\n \"subscriberSnippet\": - {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n \"description\": - \"The subscriberSnippet object contains basic details about the subscriber.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains basic statistics - about the subscription.\",\n \"$ref\": \"SubscriptionContentDetails\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the subscription, including its title - and the channel that the user subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\"\n }\n - \ },\n \"description\": \"A *subscription* resource contains information - about a YouTube user subscription. A subscription notifies a user when new - videos are added to a channel or when another user takes one of several actions - on YouTube, such as uploading a video, rating a video, or commenting on a - video.\"\n },\n \"ActivityContentDetailsPromotedItem\": {\n \"description\": - \"Details about a resource which is being promoted.\",\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\",\n \"type\": \"string\"\n },\n \"creativeViewUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user was shown this promoted item.\",\n \"type\": \"string\"\n - \ },\n \"clickTrackingUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should ping to indicate that - the user clicked through on this promoted item.\"\n },\n \"ctaType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of call-to-action, a message - to the user indicating action that can be taken.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ]\n },\n \"adTag\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should fetch to request a - promoted item.\"\n },\n \"destinationUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should direct - the user to, if the user chooses to visit the advertiser's website.\"\n },\n - \ \"impressionUrl\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\"\n },\n \"customCtaButtonText\": - {\n \"type\": \"string\",\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\"\n },\n \"descriptionText\": {\n \"type\": - \"string\",\n \"description\": \"The text description to accompany - the promoted item.\"\n },\n \"forecastingUrl\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"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.\"\n }\n }\n },\n - \ \"AccessPolicy\": {\n \"type\": \"object\",\n \"properties\": - {\n \"allowed\": {\n \"description\": \"The value of allowed - indicates whether the access to the policy is allowed or denied by default.\",\n - \ \"type\": \"boolean\"\n },\n \"exception\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the default policy do not apply.\"\n }\n },\n \"description\": - \"Rights management policy for YouTube resources.\",\n \"id\": \"AccessPolicy\"\n - \ },\n \"VideoAbuseReportReasonSnippet\": {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"secondaryReasons\": {\n \"items\": {\n \"$ref\": - \"VideoAbuseReportSecondaryReason\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The secondary reasons associated with this reason, - if any are available. (There might be 0 or more.)\"\n },\n \"label\": - {\n \"description\": \"The localized label belonging to this abuse - report reason.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"VideoProjectDetails\": {\n \"id\": \"VideoProjectDetails\",\n \"description\": - \"DEPRECATED. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"properties\": {},\n \"type\": \"object\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsUpload\",\n - \ \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the uploaded video.\"\n }\n },\n \"description\": \"Information - about the uploaded video.\"\n },\n \"PlaylistLocalization\": {\n \"id\": - \"PlaylistLocalization\",\n \"type\": \"object\",\n \"description\": - \"Playlist localization setting\",\n \"properties\": {\n \"title\": - {\n \"description\": \"The localized strings for playlist's title.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for playlist's - description.\"\n }\n }\n },\n \"ThirdPartyLink\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"status\": {\n \"$ref\": - \"ThirdPartyLinkStatus\",\n \"description\": \"The status object - contains information about the status of the link.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the third- party account link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#thirdPartyLink\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n - \ },\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\"\n }\n },\n - \ \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\",\n \"type\": \"object\",\n \"id\": \"ThirdPartyLink\"\n - \ },\n \"MembershipsLevelSnippet\": {\n \"properties\": {\n \"creatorChannelId\": - {\n \"description\": \"The id of the channel that's offering channel - memberships.\",\n \"type\": \"string\"\n },\n \"levelDetails\": - {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details - about the pricing level.\"\n }\n },\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"type\": \"object\"\n },\n \"RelatedEntity\": {\n \"properties\": - {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n },\n - \ \"id\": \"RelatedEntity\",\n \"type\": \"object\"\n },\n \"I18nRegionListResponse\": - {\n \"id\": \"I18nRegionListResponse\",\n \"properties\": {\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - regions where YouTube is available. In this map, the i18n region ID is the - map key, and its value is the corresponding i18nRegion resource.\",\n \"items\": - {\n \"$ref\": \"I18nRegion\"\n }\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#i18nRegionListResponse\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"id\": \"LiveChatModeratorListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": - \"A list of moderators that match the request criteria.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"AbuseReport\": {\n \"id\": \"AbuseReport\",\n - \ \"properties\": {\n \"relatedEntities\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n - \ }\n },\n \"description\": {\n \"type\": \"string\"\n - \ },\n \"abuseTypes\": {\n \"items\": {\n \"$ref\": - \"AbuseType\"\n },\n \"type\": \"array\"\n },\n \"subject\": - {\n \"$ref\": \"Entity\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatBan\": {\n \"id\": \"LiveChatBan\",\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the ban.\",\n \"$ref\": - \"LiveChatBanSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"default\": \"youtube#liveChatBan\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\"\n }\n - \ }\n },\n \"SuperStickerMetadata\": {\n \"id\": \"SuperStickerMetadata\",\n - \ \"properties\": {\n \"stickerId\": {\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\",\n - \ \"type\": \"string\"\n },\n \"altTextLanguage\": {\n - \ \"type\": \"string\",\n \"description\": \"Specifies the - localization language in which the alt text is returned.\"\n },\n \"altText\": - {\n \"type\": \"string\",\n \"description\": \"Internationalized - alt text that describes the sticker image and any animation associated with - it.\"\n }\n },\n \"type\": \"object\"\n },\n \"PropertyValue\": - {\n \"description\": \"A pair Property / Value.\",\n \"id\": \"PropertyValue\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"property\": - {\n \"description\": \"A property.\",\n \"type\": \"string\"\n - \ },\n \"value\": {\n \"type\": \"string\",\n \"description\": - \"The property's value.\"\n }\n }\n },\n \"VideoStatistics\": - {\n \"description\": \"Statistics about the video, such as the number - of times the video was viewed or liked.\",\n \"type\": \"object\",\n - \ \"id\": \"VideoStatistics\",\n \"properties\": {\n \"favoriteCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\"\n - \ },\n \"viewCount\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The number of - times the video has been viewed.\"\n },\n \"likeCount\": {\n - \ \"type\": \"string\",\n \"description\": \"The number of - users who have indicated that they liked the video by giving it a positive - rating.\",\n \"format\": \"uint64\"\n },\n \"dislikeCount\": - {\n \"description\": \"The number of users who have indicated that - they disliked the video by giving it a negative rating.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"commentCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of comments for the video.\"\n }\n }\n },\n \"ChannelContentOwnerDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"timeLinked\": - {\n \"description\": \"The date and time when the channel was linked - to the content owner.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"contentOwner\": {\n \"description\": - \"The ID of the content owner linked to the channel.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"id\": \"ChannelContentOwnerDetails\"\n },\n - \ \"VideoSuggestionsTagSuggestion\": {\n \"description\": \"A single - tag suggestion with it's relevance information.\",\n \"properties\": - {\n \"categoryRestricts\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A set of video categories for which the tag is relevant. You can use this - information to display appropriate tag suggestions based on the video category - that the video uploader associates with the video. By default, tag suggestions - are relevant for all categories if there are no restricts defined for the - keyword.\"\n },\n \"tag\": {\n \"description\": \"The - keyword tag suggested for the video.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoSuggestionsTagSuggestion\",\n \"type\": - \"object\"\n },\n \"ChannelSectionSnippet\": {\n \"properties\": - {\n \"style\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The style of the channel section.\",\n \"enum\": - [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ]\n },\n \"type\": {\n - \ \"enum\": [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The type of the channel section.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"localized\": {\n \"description\": - \"Localized title, read-only.\",\n \"$ref\": \"ChannelSectionLocalization\"\n - \ },\n \"title\": {\n \"description\": \"The channel - section's title for multiple_playlists and multiple_channels.\",\n \"type\": - \"string\"\n },\n \"position\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The position of the channel section in the channel.\",\n - \ \"type\": \"integer\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel section's default title and description.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ChannelSectionSnippet\",\n \"description\": - \"Basic details about a channel section, including title, style and position.\"\n - \ },\n \"PlaylistSnippet\": {\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails.\",\n \"type\": - \"object\",\n \"id\": \"PlaylistSnippet\",\n \"properties\": {\n - \ \"localized\": {\n \"description\": \"Localized title and - description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel title of the channel that the video - belongs to.\"\n },\n \"tags\": {\n \"type\": \"array\",\n - \ \"description\": \"Keyword tags associated with the playlist.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the playlist was created.\"\n },\n \"thumbnailVideoId\": - {\n \"description\": \"Note: if the playlist has a custom thumbnail, - this field will not be populated. The video id selected by the user that will - be used as the thumbnail of this playlist. This field defaults to the first - publicly viewable video in the playlist, if: 1. The user has never selected - a video to be the thumbnail of the playlist. 2. The user selects a video to - be the thumbnail, and then removes that video from the playlist. 3. The user - selects a non-owned video to be the thumbnail, but that video becomes private, - or gets deleted.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The playlist's - description.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that published the playlist.\"\n },\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"description\": \"The playlist's title.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the playlist's default title and description.\",\n \"type\": - \"string\"\n }\n }\n },\n \"SubscriptionSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the subscription was created.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the subscriber's channel.\"\n },\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\",\n \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n }\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The subscription's title.\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The subscription's details.\"\n },\n \"channelTitle\": {\n - \ \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the subscription belongs to.\"\n }\n },\n - \ \"id\": \"SubscriptionSnippet\",\n \"description\": \"Basic details - about a subscription, including title, description and thumbnails of the subscribed - item.\"\n },\n \"InvideoPosition\": {\n \"properties\": {\n \"type\": - {\n \"type\": \"string\",\n \"description\": \"Defines the - position type.\",\n \"enum\": [\n \"corner\"\n ],\n - \ \"enumDescriptions\": [\n \"\"\n ]\n },\n - \ \"cornerPosition\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"Describes in which corner of the - video the visual widget will appear.\",\n \"enum\": [\n \"topLeft\",\n - \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n - \ ]\n }\n },\n \"type\": \"object\",\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"id\": \"InvideoPosition\"\n },\n \"TestItemTestItemSnippet\": - {\n \"id\": \"TestItemTestItemSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {}\n },\n \"CommentListResponse\": {\n \"type\": - \"object\",\n \"id\": \"CommentListResponse\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"A list of comments that match the request criteria.\",\n - \ \"type\": \"array\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"visitorId\": {\n - \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"default\": \"youtube#commentListResponse\",\n \"type\": - \"string\"\n }\n }\n },\n \"CommentThreadListResponse\": - {\n \"type\": \"object\",\n \"id\": \"CommentThreadListResponse\",\n - \ \"properties\": {\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n \"default\": - \"youtube#commentThreadListResponse\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"description\": \"A list of comment threads that - match the request criteria.\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n }\n }\n },\n \"ChannelTopicDetails\": - {\n \"description\": \"Freebase topic information related to the channel.\",\n - \ \"properties\": {\n \"topicCategories\": {\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"topicIds\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelTopicDetails\"\n - \ },\n \"LanguageTag\": {\n \"type\": \"object\",\n \"id\": - \"LanguageTag\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n }\n }\n },\n \"Caption\": {\n \"description\": - \"A *caption* resource represents a YouTube caption track. A caption track - is associated with exactly one YouTube video.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the caption track.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n }\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"default\": \"youtube#caption\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"Caption\"\n - \ },\n \"LiveChatSuperChatDetails\": {\n \"properties\": {\n \"currency\": - {\n \"description\": \"The currency in which the purchase was made.\",\n - \ \"type\": \"string\"\n },\n \"userComment\": {\n \"type\": - \"string\",\n \"description\": \"The comment added by the user to - this Super Chat event.\"\n },\n \"amountDisplayString\": {\n - \ \"type\": \"string\",\n \"description\": \"A rendered string - that displays the fund amount and currency to the user.\"\n },\n \"amountMicros\": - {\n \"format\": \"uint64\",\n \"description\": \"The amount - purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": - \"string\"\n },\n \"tier\": {\n \"description\": \"The - tier in which the amount belongs. Lower amounts belong to lower tiers. The - lowest tier is 1.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatSuperChatDetails\"\n },\n \"ChannelSectionListResponse\": - {\n \"id\": \"ChannelSectionListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"description\": \"A list of ChannelSections - that match the request criteria.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n }\n },\n \"LiveStream\": - {\n \"type\": \"object\",\n \"id\": \"LiveStream\",\n \"description\": - \"A live stream describes a live ingestion point.\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the stream, including its channel, title, and - description.\",\n \"$ref\": \"LiveStreamSnippet\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the stream.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"status\": {\n \"$ref\": - \"LiveStreamStatus\",\n \"description\": \"The status object contains - information about live stream's status.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"contentDetails\": {\n \"$ref\": - \"LiveStreamContentDetails\",\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\"\n },\n \"cdn\": {\n \"$ref\": \"CdnSettings\",\n - \ \"description\": \"The cdn object defines the live stream's content - delivery network (CDN) settings. These settings provide details about the - manner in which you stream your content to YouTube.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"default\": \"youtube#liveStream\"\n }\n }\n },\n - \ \"SubscriptionContentDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"totalItemCount\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The approximate number of items - that the subscription points to.\"\n },\n \"activityType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"type\": - \"string\",\n \"description\": \"The type of activity this subscription - is for (only uploads, everything).\"\n },\n \"newItemCount\": - {\n \"description\": \"The number of new items in the subscription - since its content was last read.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n }\n },\n \"id\": \"SubscriptionContentDetails\",\n - \ \"description\": \"Details about the content to witch a subscription - refers.\"\n },\n \"LocalizedProperty\": {\n \"properties\": {\n - \ \"default\": {\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The - language of the default property.\"\n },\n \"localized\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n }\n }\n },\n \"id\": \"LocalizedProperty\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"properties\": {\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level at which the - viever is a member. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n },\n - \ \"memberMonth\": {\n \"format\": \"uint32\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"type\": \"integer\"\n - \ },\n \"userComment\": {\n \"description\": \"The comment - added by the member to this Member Milestone Chat. This field is empty for - messages without a comment from the member.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastStatistics\": {\n \"properties\": - {\n \"concurrentViewers\": {\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"totalChatCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"Statistics about the live broadcast. These represent - a snapshot of the values at the time of the request. Statistics are only returned - for live broadcasts.\"\n },\n \"ActivityContentDetailsComment\": {\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with the comment.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"Information about a resource that received a comment.\"\n - \ },\n \"ThirdPartyLinkStatus\": {\n \"id\": \"ThirdPartyLinkStatus\",\n - \ \"type\": \"object\",\n \"description\": \"The third-party link - status object contains information about the status of the link.\",\n \"properties\": - {\n \"linkStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ]\n }\n - \ }\n },\n \"LiveBroadcastSnippet\": {\n \"type\": \"object\",\n - \ \"description\": \"Basic broadcast information.\",\n \"id\": \"LiveBroadcastSnippet\",\n - \ \"properties\": {\n \"actualEndTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - actually ended. This information is only available once the broadcast's state - is complete.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the broadcast. For each nested object - in this object, the key is the name of the thumbnail image, and the value - is an object that contains other information about the thumbnail.\"\n },\n - \ \"actualStartTime\": {\n \"description\": \"The date and - time that the broadcast actually started. This information is only available - once the broadcast's state is live.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"scheduledEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to end.\"\n },\n \"title\": {\n \"annotations\": {\n - \ \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\"\n },\n \"isDefaultBroadcast\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast is the default broadcast. Internal only.\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast was added to YouTube's live broadcast - schedule.\",\n \"format\": \"date-time\"\n },\n \"scheduledStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"liveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the live chat for this - broadcast.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is publishing the broadcast.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\"\n - \ }\n }\n },\n \"LiveChatTextMessageDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"messageText\": {\n \"type\": - \"string\",\n \"description\": \"The user's message.\"\n }\n - \ },\n \"id\": \"LiveChatTextMessageDetails\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"giftMembershipsLevelName\": - {\n \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n },\n \"giftMembershipsCount\": - {\n \"description\": \"The number of gift memberships purchased by - the user.\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ }\n },\n \"id\": \"LiveChatMembershipGiftingDetails\"\n - \ },\n \"I18nLanguageSnippet\": {\n \"type\": \"object\",\n \"id\": - \"I18nLanguageSnippet\",\n \"description\": \"Basic details about an - i18n language, such as language code and human-readable name.\",\n \"properties\": - {\n \"name\": {\n \"description\": \"The human-readable name - of the language in the language itself.\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"description\": \"A short BCP-47 - code that uniquely identifies a language.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoRecordingDetails\": {\n \"description\": - \"Recording information associated with the video.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"locationDescription\": {\n \"description\": - \"The text description of the location where the video was recorded.\",\n - \ \"type\": \"string\"\n },\n \"location\": {\n \"description\": - \"The geolocation information associated with the video.\",\n \"$ref\": - \"GeoPoint\"\n },\n \"recordingDate\": {\n \"description\": - \"The date and time when the video was recorded.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"VideoRecordingDetails\"\n },\n \"LiveBroadcastStatus\": {\n \"id\": - \"LiveBroadcastStatus\",\n \"type\": \"object\",\n \"description\": - \"Live broadcast state.\",\n \"properties\": {\n \"lifeCycleStatus\": - {\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"enumDescriptions\": [\n \"No value or the - value is unknown.\",\n \"Incomplete settings, but otherwise valid\",\n - \ \"Complete settings\",\n \"Visible only to partner, - may need special UI treatment\",\n \"Viper is recording; this means - the \\\"clock\\\" is running\",\n \"The broadcast is finished.\",\n - \ \"This broadcast was removed by admin action\",\n \"Transition - into TESTING has been requested\",\n \"Transition into LIVE has - been requested\"\n ],\n \"type\": \"string\"\n },\n - \ \"madeForKids\": {\n \"description\": \"Whether the broadcast - is made for kids or not, decided by YouTube instead of the creator. This field - is read only.\",\n \"type\": \"boolean\"\n },\n \"liveBroadcastPriority\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Low priority broadcast: for low view count HoAs or other low - priority broadcasts.\",\n \"Normal priority broadcast: for regular - HoAs and broadcasts.\",\n \"High priority broadcast: for high profile - HoAs, like PixelCorp ones.\"\n ],\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"description\": \"Priority of the live broadcast event (internal - state).\"\n },\n \"recordingStatus\": {\n \"type\": - \"string\",\n \"description\": \"The broadcast's recording status.\",\n - \ \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"This field - will be set to True if the creator declares the broadcast to be kids only: - go/live-cw-work.\"\n },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"The broadcast's - privacy status. Note that the broadcast represents exactly one YouTube video, - so the privacy settings are identical to those supported for videos. In addition, - you can set this field by modifying the broadcast resource or by setting the - privacyStatus field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\"\n }\n }\n },\n \"ChannelToStoreLinkDetails\": - {\n \"properties\": {\n \"merchantId\": {\n \"description\": - \"Google Merchant Center id of the store.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"storeUrl\": {\n \"type\": - \"string\",\n \"description\": \"Landing page of the store.\"\n },\n - \ \"storeName\": {\n \"description\": \"Name of the store.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"type\": \"object\"\n },\n - \ \"WatchSettings\": {\n \"type\": \"object\",\n \"properties\": - {\n \"backgroundColor\": {\n \"description\": \"The text color - for the video watch page's branded area.\",\n \"type\": \"string\"\n - \ },\n \"featuredPlaylistId\": {\n \"description\": - \"An ID that uniquely identifies a playlist that displays next to the video - player.\",\n \"type\": \"string\"\n },\n \"textColor\": - {\n \"type\": \"string\",\n \"description\": \"The background - color for the video watch page's branded area.\"\n }\n },\n \"description\": - \"Branding properties for the watch. All deprecated.\",\n \"id\": \"WatchSettings\"\n - \ },\n \"MembershipsDetails\": {\n \"id\": \"MembershipsDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"membershipsDurationAtLevels\": - {\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ },\n \"description\": \"Data about memberships duration - on particular pricing levels.\",\n \"type\": \"array\"\n },\n - \ \"membershipsDuration\": {\n \"description\": \"Data about - memberships duration without taking into consideration pricing levels.\",\n - \ \"$ref\": \"MembershipsDuration\"\n },\n \"accessibleLevels\": - {\n \"type\": \"array\",\n \"description\": \"Ids of all - levels that the user has access to. This includes the currently active level - and all other levels that are included because of a higher purchase.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"highestAccessibleLevel\": {\n \"description\": \"Id of - the highest level that the user has access to at the moment.\",\n \"type\": - \"string\"\n },\n \"highestAccessibleLevelDisplayName\": {\n - \ \"description\": \"Display name for the highest level that the user - has access to at the moment.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ChannelSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"customUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The custom url of the channel.\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the channel - was created.\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the channel's default title and description.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The description of the channel.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The channel's title.\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\"\n },\n \"country\": {\n \"type\": - \"string\",\n \"description\": \"The country of the channel.\"\n - \ }\n },\n \"id\": \"ChannelSnippet\",\n \"description\": - \"Basic details about a channel, including title, description and thumbnails.\"\n - \ },\n \"ChannelStatistics\": {\n \"id\": \"ChannelStatistics\",\n - \ \"type\": \"object\",\n \"description\": \"Statistics about a channel: - number of subscribers, number of videos in the channel, etc.\",\n \"properties\": - {\n \"hiddenSubscriberCount\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether or not the number of subscribers is shown - for this user.\"\n },\n \"commentCount\": {\n \"description\": - \"The number of comments for the channel.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"subscriberCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of subscribers that the channel has.\",\n \"format\": \"uint64\"\n - \ },\n \"viewCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of times the channel has been viewed.\",\n - \ \"type\": \"string\"\n },\n \"videoCount\": {\n \"description\": - \"The number of videos uploaded to the channel.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"SuperChatEvent\": {\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the Super Chat event.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#superChatEvent\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n - \ }\n },\n \"id\": \"SuperChatEvent\",\n \"description\": - \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\"\n },\n \"VideoContentDetailsRegionRestriction\": {\n \"description\": - \"DEPRECATED Region restriction of the video.\",\n \"properties\": {\n - \ \"allowed\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\"\n },\n - \ \"blocked\": {\n \"description\": \"A list of region codes - that identify countries where the video is blocked. If this property is present - and a country is not listed in its value, then the video is viewable in that - country. If this property is present and contains an empty list, the video - is viewable in all countries.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"id\": \"VideoContentDetailsRegionRestriction\",\n \"type\": \"object\"\n - \ },\n \"MembershipsLevel\": {\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#membershipsLevel\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the memberships level.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n }\n - \ },\n \"id\": \"MembershipsLevel\",\n \"type\": \"object\",\n - \ \"description\": \"A *membershipsLevel* resource represents an offer - made by YouTube creators for their fans. Users can become members of the channel - by joining one of the available levels. They will provide recurring monetary - support and receives special benefits.\"\n },\n \"LiveChatModeratorSnippet\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\",\n - \ \"properties\": {\n \"moderatorDetails\": {\n \"description\": - \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"liveChatId\": {\n \"description\": \"The ID - of the live chat this moderator can act on.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"SearchResultSnippet\": {\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - search result. 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.\"\n },\n \"channelTitle\": {\n \"description\": - \"The title of the channel that published the resource that the search result - identifies.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"A description of the search result.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the search result.\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The creation date - and time of the resource that the search result identifies.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"type\": \"string\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n },\n \"channelId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"SearchResultSnippet\"\n - \ },\n \"ImageSettings\": {\n \"description\": \"Branding properties - for images associated with the channel.\",\n \"id\": \"ImageSettings\",\n - \ \"properties\": {\n \"bannerTabletHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\"\n },\n \"bannerTvHighImageUrl\": {\n \"description\": - \"Banner image. TV size high resolution (1920x1080).\",\n \"type\": - \"string\"\n },\n \"bannerTabletImageUrl\": {\n \"description\": - \"Banner image. Tablet size (1707x283).\",\n \"type\": \"string\"\n - \ },\n \"backgroundImageUrl\": {\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTvLowImageUrl\": {\n \"description\": - \"Banner image. TV size low resolution (854x480).\",\n \"type\": - \"string\"\n },\n \"trackingImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL for a 1px by 1px tracking - pixel that can be used to collect statistics for views of the channel or video - pages.\"\n },\n \"smallBrandedBannerImageImapScript\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The image map script - for the small banner image.\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size medium/high resolution (960x263).\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size low resolution (1138x188).\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"bannerMobileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. Mobile size (640x175).\"\n },\n \"bannerTvImageUrl\": - {\n \"description\": \"Banner image. TV size extra high resolution - (2120x1192).\",\n \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size low resolution (320x88).\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"bannerImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size extra high resolution - (2560x424).\",\n \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"bannerExternalUrl\": - {\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"bannerTvMediumImageUrl\": {\n \"description\": - \"Banner image. TV size medium resolution (1280x720).\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was added to the channel.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"type\": \"object\",\n \"description\": \"Details about a resource - which was added to a channel.\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"banType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"permanent\",\n \"temporary\"\n ],\n \"type\": - \"string\",\n \"description\": \"The type of ban.\"\n },\n - \ \"bannedUserDetails\": {\n \"description\": \"The details - of the user that was banned.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banDurationSeconds\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The duration - of the ban. This property is only present if the banType is temporary.\"\n - \ }\n }\n },\n \"LiveChatFanFundingEventDetails\": {\n \"properties\": - {\n \"amountDisplayString\": {\n \"type\": \"string\",\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\"\n - \ },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The amount - of the fund.\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"type\": - \"object\"\n },\n \"PlaylistStatus\": {\n \"id\": \"PlaylistStatus\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The playlist's privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"type\": - \"object\"\n },\n \"CaptionListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Caption\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of captions - that match the request criteria.\"\n },\n \"kind\": {\n \"default\": - \"youtube#captionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"id\": \"CaptionListResponse\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageDeletedDetails\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"InvideoTiming\": {\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\",\n \"id\": - \"InvideoTiming\",\n \"properties\": {\n \"durationMs\": {\n \"type\": - \"string\",\n \"description\": \"Defines the duration in milliseconds - for which the promotion should be displayed. If missing, the client should - use the default.\",\n \"format\": \"uint64\"\n },\n \"offsetMs\": - {\n \"description\": \"Defines the time at which the promotion will - appear. Depending on the value of type the value of the offsetMs field will - represent a time offset from the start or from the end of the video, expressed - in milliseconds.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"Describes a timing type. If the value is offsetFromStart, then the offsetMs - field represents an offset from the start of the video. If the value is offsetFromEnd, - then the offsetMs field represents an offset from the end of the video.\",\n - \ \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"ActivityContentDetails\": {\n \"properties\": - {\n \"bulletin\": {\n \"description\": \"The bulletin object - contains details about a channel bulletin post. This object is only present - if the snippet.type is bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n - \ },\n \"playlistItem\": {\n \"description\": \"The - playlistItem object contains information about a new playlist item. This property - is only present if the snippet.type is playlistItem.\",\n \"$ref\": - \"ActivityContentDetailsPlaylistItem\"\n },\n \"comment\": {\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\",\n \"$ref\": \"ActivityContentDetailsComment\"\n },\n - \ \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"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.\"\n },\n \"recommendation\": - {\n \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\",\n \"$ref\": \"ActivityContentDetailsRecommendation\"\n - \ },\n \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"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.\"\n },\n \"promotedItem\": - {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n \"description\": - \"The promotedItem object contains details about a resource which is being - promoted. This property is only present if the snippet.type is promotedItem.\"\n - \ },\n \"upload\": {\n \"description\": \"The upload - object contains information about the uploaded video. This property is only - present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"subscription\": {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n - \ \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\"\n },\n \"social\": {\n \"$ref\": - \"ActivityContentDetailsSocial\",\n \"description\": \"The social - object contains details about a social network post. This property is only - present if the snippet.type is social.\"\n },\n \"like\": {\n - \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsLike\"\n - \ }\n },\n \"description\": \"Details about the content of - an activity: the video that was shared, the channel that was subscribed to, - etc.\",\n \"id\": \"ActivityContentDetails\",\n \"type\": \"object\"\n - \ },\n \"PlaylistPlayer\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistPlayer\",\n \"properties\": {\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that - embeds a player that will play the playlist.\"\n }\n }\n },\n - \ \"ChannelBannerResource\": {\n \"type\": \"object\",\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\",\n - \ \"id\": \"ChannelBannerResource\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelBannerResource\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"type\": \"string\"\n },\n \"url\": {\n \"description\": - \"The URL of this banner image.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"PlaylistItemStatus\": {\n \"properties\": {\n - \ \"privacyStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"This resource's - privacy status.\"\n }\n },\n \"id\": \"PlaylistItemStatus\",\n - \ \"type\": \"object\",\n \"description\": \"Information about the - playlist item's privacy status.\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"description\": \"Video processing progress and completion time - estimate.\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"properties\": {\n \"timeLeftMs\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"An estimate - of the amount of time, in millseconds, that YouTube needs to finish processing - the video.\"\n },\n \"partsTotal\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"An - estimate of the total number of parts that need to be processed for the video. - The number may be updated with more precise estimates while YouTube processes - the video.\"\n },\n \"partsProcessed\": {\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"MemberListResponse\": - {\n \"type\": \"object\",\n \"id\": \"MemberListResponse\",\n \"properties\": - {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Member\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of members - that match the request criteria.\"\n },\n \"kind\": {\n \"default\": - \"youtube#memberListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n }\n },\n \"ChannelSectionLocalization\": - {\n \"id\": \"ChannelSectionLocalization\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for channel section's title.\"\n - \ }\n },\n \"description\": \"ChannelSection localization - setting\"\n },\n \"PlaylistItemListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"description\": - \"A list of playlist items that match the request criteria.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"type\": \"string\",\n \"default\": - \"youtube#playlistItemListResponse\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"PlaylistItemListResponse\"\n },\n \"LiveBroadcastListResponse\": {\n - \ \"id\": \"LiveBroadcastListResponse\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#liveBroadcastListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"eventId\": {\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of broadcasts that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\"\n },\n \"PlaylistItem\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistItem\",\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the playlist item.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist item, such as its title and position in the playlist.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"default\": \"youtube#playlistItem\",\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n - \ \"description\": \"The status object contains information about - the playlist item's privacy status.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"PlaylistItemContentDetails\",\n \"description\": - \"The contentDetails object is included in the resource if the included item - is a YouTube video. The object contains additional information about the video.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"ChannelProfileDetails\": - {\n \"properties\": {\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The channel's display name.\"\n - \ },\n \"profileImageUrl\": {\n \"description\": \"The - channels's avatar URL.\",\n \"type\": \"string\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel ID.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ChannelProfileDetails\"\n },\n - \ \"ResourceId\": {\n \"type\": \"object\",\n \"description\": - \"A resource id is a generic reference that points to another YouTube resource.\",\n - \ \"properties\": {\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the referred resource, if that resource is a video. This - property is only present if the resourceId.kind value is youtube#video.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"The type of the API resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ResourceId\"\n - \ },\n \"MembershipsLevelListResponse\": {\n \"id\": \"MembershipsLevelListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of pricing - levels offered by a creator to the fans.\"\n },\n \"kind\": - {\n \"default\": \"youtube#membershipsLevelListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"LiveChatModerator\": {\n \"type\": \"object\",\n \"description\": - \"A *liveChatModerator* resource represents a moderator for a YouTube live - chat. A chat moderator has the ability to ban/unban users from a chat, remove - message, etc.\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the moderator.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"default\": \"youtube#liveChatModerator\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ }\n },\n \"id\": \"LiveChatModerator\"\n },\n \"AbuseType\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"AbuseType\",\n \"type\": \"object\"\n - \ },\n \"VideoGetRatingResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoGetRatingResponse\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of ratings that match the request criteria.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n },\n \"id\": \"VideoGetRatingResponse\"\n - \ },\n \"Activity\": {\n \"type\": \"object\",\n \"id\": \"Activity\",\n - \ \"description\": \"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.\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the activity, including the activity's type and group ID.\",\n \"$ref\": - \"ActivitySnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#activity\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource\",\n \"type\": \"string\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ActivityContentDetails\",\n \"description\": - \"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.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\"\n }\n - \ }\n },\n \"LiveChatSuperStickerDetails\": {\n \"properties\": - {\n \"amountMicros\": {\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"tier\": - {\n \"type\": \"integer\",\n \"description\": \"The tier - in which the amount belongs. Lower amounts belong to lower tiers. The lowest - tier is 1.\",\n \"format\": \"uint32\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made.\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n }\n },\n \"id\": - \"LiveChatSuperStickerDetails\",\n \"type\": \"object\"\n },\n \"LevelDetails\": - {\n \"properties\": {\n \"displayName\": {\n \"description\": - \"The name that should be used when referring to this level.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LevelDetails\",\n \"type\": - \"object\"\n },\n \"ChannelBrandingSettings\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"hints\": {\n \"description\": - \"Additional experimental branding properties.\",\n \"items\": {\n - \ \"$ref\": \"PropertyValue\"\n },\n \"type\": - \"array\"\n },\n \"image\": {\n \"description\": \"Branding - properties for branding images.\",\n \"$ref\": \"ImageSettings\"\n - \ },\n \"channel\": {\n \"description\": \"Branding - properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n - \ },\n \"watch\": {\n \"description\": \"Branding properties - for the watch page.\",\n \"$ref\": \"WatchSettings\"\n }\n - \ },\n \"description\": \"Branding properties of a YouTube channel.\",\n - \ \"id\": \"ChannelBrandingSettings\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"properties\": {\n \"items\": {\n \"items\": {\n - \ \"$ref\": \"ThirdPartyLink\"\n },\n \"type\": - \"array\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n - \ }\n },\n \"id\": \"ThirdPartyLinkListResponse\",\n \"type\": - \"object\"\n },\n \"CommentThreadReplies\": {\n \"type\": \"object\",\n - \ \"description\": \"Comments written in (direct or indirect) reply to - the top level comment.\",\n \"id\": \"CommentThreadReplies\",\n \"properties\": - {\n \"comments\": {\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"type\": \"array\",\n \"description\": - \"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.\"\n }\n }\n },\n \"LiveStreamListResponse\": - {\n \"id\": \"LiveStreamListResponse\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"LiveStream\"\n },\n \"description\": - \"A list of live streams that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"default\": \"youtube#liveStreamListResponse\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoListResponse\": {\n \"properties\": {\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Video\"\n }\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"default\": \"youtube#videoListResponse\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoListResponse\",\n \"type\": - \"object\"\n },\n \"Entity\": {\n \"id\": \"Entity\",\n \"type\": - \"object\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\"\n },\n \"url\": {\n \"type\": \"string\"\n - \ },\n \"typeId\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveChatMessageSnippet\": {\n \"properties\": - {\n \"liveChatId\": {\n \"type\": \"string\"\n },\n - \ \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"memberMilestoneChatDetails\": {\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\",\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n - \ \"description\": \"Details about the New Member Announcement event, - this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" - is the new term for \\\"sponsor\\\".\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"displayMessage\": - {\n \"type\": \"string\",\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"giftMembershipReceivedDetails\": {\n - \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"superChatDetails\": - {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"hasDisplayContent\": {\n \"description\": \"Whether - the message has display content that should be displayed to users.\",\n \"type\": - \"boolean\"\n },\n \"messageDeletedDetails\": {\n \"$ref\": - \"LiveChatMessageDeletedDetails\"\n },\n \"fanFundingEventDetails\": - {\n \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"superStickerDetails\": {\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the message was orignally published.\",\n \"format\": - \"date-time\"\n },\n \"type\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\",\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ]\n - \ },\n \"authorChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"Next ID: 33\"\n },\n \"ChannelConversionPings\": - {\n \"properties\": {\n \"pings\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ },\n \"description\": \"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.\"\n }\n },\n \"id\": - \"ChannelConversionPings\",\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"type\": \"object\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a subscription's subscriber including title, description, channel ID and thumbnails.\",\n - \ \"id\": \"SubscriptionSubscriberSnippet\",\n \"properties\": {\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"Thumbnails for this subscriber.\"\n },\n \"channelId\": {\n - \ \"description\": \"The channel ID of the subscriber.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the subscriber.\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the subscriber.\"\n }\n }\n },\n \"LiveStreamSnippet\": - {\n \"id\": \"LiveStreamSnippet\",\n \"properties\": {\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n },\n \"channelId\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is transmitting the stream.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the stream was created.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"The stream's description. The value cannot be longer than 10000 characters.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The stream's title. The value must - be between 1 and 128 characters long.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n }\n },\n \"type\": \"object\"\n - \ },\n \"SubscriptionListResponse\": {\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"description\": \"A list of subscriptions - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Subscription\"\n },\n \"type\": \"array\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"default\": \"youtube#subscriptionListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"SubscriptionListResponse\"\n - \ },\n \"ActivityContentDetailsBulletin\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsBulletin\",\n \"properties\": {\n - \ \"resourceId\": {\n \"description\": \"The resourceId object - contains information that identifies the resource associated with a bulletin - post. @mutable youtube.activities.insert\",\n \"$ref\": \"ResourceId\"\n - \ }\n },\n \"description\": \"Details about a channel bulletin - post.\"\n },\n \"VideoAbuseReport\": {\n \"properties\": {\n \"comments\": - {\n \"description\": \"Additional comments regarding the abuse report.\",\n - \ \"type\": \"string\"\n },\n \"language\": {\n \"description\": - \"The language that the content was viewed in.\",\n \"type\": \"string\"\n - \ },\n \"secondaryReasonId\": {\n \"type\": \"string\",\n - \ \"description\": \"The specific, or secondary, reason that this - content is abusive (if available). The value is an abuse report reason ID - that is a valid secondary reason for the primary reason.\"\n },\n \"reasonId\": - {\n \"type\": \"string\",\n \"description\": \"The high-level, - or primary, reason that the content is abusive. The value is an abuse report - reason ID.\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoAbuseReport\"\n },\n \"VideoAbuseReportReason\": {\n \"description\": - \"A `__videoAbuseReportReason__` resource identifies a reason that a video - could be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the abuse report reason.\",\n - \ \"$ref\": \"VideoAbuseReportReasonSnippet\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoAbuseReportReason\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID of this abuse report reason.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"VideoAbuseReportReason\",\n - \ \"type\": \"object\"\n },\n \"GeoPoint\": {\n \"properties\": - {\n \"latitude\": {\n \"format\": \"double\",\n \"description\": - \"Latitude in degrees.\",\n \"type\": \"number\"\n },\n \"altitude\": - {\n \"type\": \"number\",\n \"description\": \"Altitude - above the reference ellipsoid, in meters.\",\n \"format\": \"double\"\n - \ },\n \"longitude\": {\n \"type\": \"number\",\n \"format\": - \"double\",\n \"description\": \"Longitude in degrees.\"\n }\n - \ },\n \"id\": \"GeoPoint\",\n \"description\": \"Geographical - coordinates of a point, in WGS84.\",\n \"type\": \"object\"\n },\n - \ \"LiveStreamHealthStatus\": {\n \"properties\": {\n \"status\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The status code of this stream\",\n - \ \"enum\": [\n \"good\",\n \"ok\",\n \"bad\",\n - \ \"noData\",\n \"revoked\"\n ]\n },\n - \ \"lastUpdateTimeSeconds\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The last time this status was updated (in seconds)\",\n - \ \"type\": \"string\"\n },\n \"configurationIssues\": - {\n \"type\": \"array\",\n \"description\": \"The configurations - issues on this stream\",\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ }\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveStreamHealthStatus\"\n },\n \"VideoFileDetails\": {\n \"properties\": - {\n \"fileSize\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\",\n \"format\": \"uint64\"\n - \ },\n \"creationTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the uploaded video file - was created. The value is specified in ISO 8601 format. Currently, the following - ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"bitrateBps\": - {\n \"type\": \"string\",\n \"description\": \"The uploaded - video file's combined (video and audio) bitrate in bits per second.\",\n \"format\": - \"uint64\"\n },\n \"container\": {\n \"description\": - \"The uploaded video file's container format.\",\n \"type\": \"string\"\n - \ },\n \"audioStreams\": {\n \"description\": \"A list - of audio streams contained in the uploaded video file. Each item in the list - contains detailed metadata about an audio stream.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ }\n },\n \"fileName\": {\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\",\n \"type\": \"string\"\n },\n - \ \"videoStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of video streams contained in the uploaded - video file. Each item in the list contains detailed metadata about a video - stream.\"\n },\n \"durationMs\": {\n \"description\": - \"The length of the uploaded video in milliseconds.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"fileType\": - {\n \"enumDescriptions\": [\n \"Known video file (e.g., - an MP4 file).\",\n \"Audio only file (e.g., an MP3 file).\",\n - \ \"Image file (e.g., a JPEG image).\",\n \"Archive file - (e.g., a ZIP archive).\",\n \"Document or text file (e.g., MS Word - document).\",\n \"Movie project file (e.g., Microsoft Windows Movie - Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - file's type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\",\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ]\n }\n },\n \"description\": \"Describes original - video file properties, including technical details about audio and video streams, - but also metadata information like content length, digitization time, or geotagging - information.\",\n \"type\": \"object\",\n \"id\": \"VideoFileDetails\"\n - \ },\n \"LiveStreamStatus\": {\n \"id\": \"LiveStreamStatus\",\n - \ \"description\": \"Brief description of the live stream status.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"streamStatus\": - {\n \"enum\": [\n \"created\",\n \"ready\",\n - \ \"active\",\n \"inactive\",\n \"error\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"healthStatus\": {\n \"description\": - \"The health status of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n - \ }\n }\n },\n \"VideoContentDetails\": {\n \"description\": - \"Details about the content of a YouTube Video.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"dimension\": {\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\",\n \"type\": \"string\"\n },\n \"caption\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"true\",\n - \ \"false\"\n ],\n \"description\": \"The value - of captions indicates whether the video has captions or not.\"\n },\n - \ \"duration\": {\n \"description\": \"The length of the video. - The tag value is an ISO 8601 duration in the format PT#M#S, in which the letters - PT indicate that the value specifies a period of time, and the letters M and - S refer to length in minutes and seconds, respectively. The # characters preceding - the M and S letters are both integers that specify the number of minutes (or - seconds) of the video. For example, a value of PT15M51S indicates that the - video is 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n - \ },\n \"regionRestriction\": {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\"\n },\n \"countryRestriction\": - {\n \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\",\n \"$ref\": - \"AccessPolicy\"\n },\n \"hasCustomThumbnail\": {\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n },\n \"contentRating\": {\n \"$ref\": - \"ContentRating\",\n \"description\": \"Specifies the ratings that - the video received under various rating schemes.\"\n },\n \"projection\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"Specifies the projection format - of the video.\",\n \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"type\": \"string\"\n },\n \"licensedContent\": - {\n \"description\": \"The value of is_license_content indicates - whether the video is licensed content.\",\n \"type\": \"boolean\"\n - \ },\n \"definition\": {\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"description\": \"The value of - definition indicates whether the video is available in high definition or - only in standard definition.\",\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoContentDetails\"\n },\n \"ThumbnailDetails\": - {\n \"type\": \"object\",\n \"id\": \"ThumbnailDetails\",\n \"properties\": - {\n \"maxres\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The maximum resolution quality image for this resource.\"\n },\n - \ \"default\": {\n \"description\": \"The default image for - this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"high\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The high - quality image for this resource.\"\n },\n \"medium\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The medium quality image for - this resource.\"\n },\n \"standard\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The standard quality image for - this resource.\"\n }\n },\n \"description\": \"Internal representation - of thumbnails for a YouTube resource.\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"description\": \"Information about a channel that a user subscribed - to.\",\n \"id\": \"ActivityContentDetailsSubscription\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"VideoLiveStreamingDetails\": {\n \"properties\": - {\n \"scheduledEndTime\": {\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast is scheduled to end. If the value is empty or - the property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"format\": \"date-time\"\n },\n \"activeLiveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the currently active live chat attached to this video. This field is filled - only if the video is a currently live broadcast that has live chat. Once the - broadcast transitions to complete this field will be removed and the live - chat closed down. For persistent broadcasts that live chat id will no longer - be tied to this video but rather to the new video being displayed at the persistent - page.\"\n },\n \"actualEndTime\": {\n \"description\": - \"The time that the broadcast actually ended. This value will not be available - until the broadcast is over.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"concurrentViewers\": {\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"actualStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\"\n },\n - \ \"scheduledStartTime\": {\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast is scheduled to begin.\",\n \"format\": - \"date-time\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Details about the live streaming metadata.\",\n \"id\": \"VideoLiveStreamingDetails\"\n - \ },\n \"ChannelSectionContentDetails\": {\n \"id\": \"ChannelSectionContentDetails\",\n - \ \"properties\": {\n \"playlists\": {\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"channels\": - {\n \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Details about a channelsection, including playlists and channels.\"\n },\n - \ \"LiveChatMessageAuthorDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"displayName\": {\n \"description\": \"The channel's - display name.\",\n \"type\": \"string\"\n },\n \"profileImageUrl\": - {\n \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"isChatModerator\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a moderator - of the live chat.\"\n },\n \"isVerified\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author's identity has - been verified by YouTube.\"\n },\n \"isChatOwner\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is the owner - of the live chat.\"\n },\n \"isChatSponsor\": {\n \"description\": - \"Whether the author is a sponsor of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"channelUrl\": {\n \"description\": \"The channel's URL.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageAuthorDetails\"\n - \ },\n \"PlaylistContentDetails\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistContentDetails\",\n \"properties\": {\n \"itemCount\": - {\n \"description\": \"The number of videos in the playlist.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n }\n - \ }\n },\n \"CommentThreadSnippet\": {\n \"properties\": {\n - \ \"totalReplyCount\": {\n \"type\": \"integer\",\n \"description\": - \"The total number of replies (not including the top level comment).\",\n - \ \"format\": \"uint32\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n - \ \"topLevelComment\": {\n \"$ref\": \"Comment\",\n \"description\": - \"The top level comment of this thread.\"\n },\n \"isPublic\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the thread (and therefore all its comments) is visible to all YouTube users.\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\"\n },\n \"canReply\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic details about a comment thread.\",\n \"id\": \"CommentThreadSnippet\"\n - \ },\n \"LiveStreamConfigurationIssue\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamConfigurationIssue\",\n \"properties\": {\n - \ \"severity\": {\n \"description\": \"How severe this issue - is to the stream.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ]\n },\n \"type\": {\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The kind of error happening.\",\n - \ \"type\": \"string\"\n },\n \"reason\": {\n \"type\": - \"string\",\n \"description\": \"The short-form reason for this issue.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The long-form description of the issue and how - to resolve it.\"\n }\n }\n },\n \"CommentSnippet\": {\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a comment, such as its author and text.\",\n \"properties\": {\n \"moderationStatus\": - {\n \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by a - moderator.\",\n \"\",\n \"The comment is unfit for display.\"\n - \ ],\n \"description\": \"The comment's moderation status. - Will not be set if the comments were requested through the id filter.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ]\n },\n \"authorChannelUrl\": {\n \"description\": - \"Link to the author's YouTube channel, if any.\",\n \"type\": \"string\"\n - \ },\n \"textDisplay\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"authorProfileImageUrl\": {\n \"description\": - \"The URL for the avatar of the user who posted the comment.\",\n \"type\": - \"string\"\n },\n \"viewerRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"authorChannelId\": {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"parentId\": {\n \"description\": - \"The unique id of the parent comment, only set for replies.\",\n \"type\": - \"string\"\n },\n \"likeCount\": {\n \"type\": \"integer\",\n - \ \"description\": \"The total number of likes this comment has received.\",\n - \ \"format\": \"uint32\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comment refers to, if any.\",\n \"type\": - \"string\"\n },\n \"canRate\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the current viewer can rate this comment.\"\n - \ },\n \"updatedAt\": {\n \"description\": \"The date - and time when the comment was last updated.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the comment was originally - published.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"textOriginal\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"authorDisplayName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the user who posted - the comment.\"\n }\n },\n \"id\": \"CommentSnippet\"\n },\n - \ \"PlaylistListResponse\": {\n \"id\": \"PlaylistListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of playlists that match the request criteria\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Playlist\"\n }\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlistListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n }\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"type\": \"object\",\n \"properties\": {\n \"label\": - {\n \"type\": \"string\",\n \"description\": \"The localized - label for this abuse report secondary reason.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - this abuse report secondary reason.\"\n }\n },\n \"id\": - \"VideoAbuseReportSecondaryReason\"\n },\n \"ChannelStatus\": {\n \"properties\": - {\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"privacyStatus\": {\n \"description\": \"Privacy - status of the channel.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"isLinked\": {\n - \ \"description\": \"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.\",\n \"type\": \"boolean\"\n },\n \"longUploadsStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\"\n }\n },\n \"description\": \"JSON - template for the status part of a channel.\",\n \"id\": \"ChannelStatus\",\n - \ \"type\": \"object\"\n },\n \"VideoLocalization\": {\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"Localized version of the video's title.\"\n },\n \"description\": - {\n \"description\": \"Localized version of the video's description.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoLocalization\",\n - \ \"type\": \"object\",\n \"description\": \"Localized versions of - certain video properties (e.g. title).\"\n },\n \"ChannelSectionTargeting\": - {\n \"description\": \"ChannelSection targeting setting.\",\n \"properties\": - {\n \"countries\": {\n \"description\": \"The country the - channel section is targeting.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"regions\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The region the - channel section is targeting.\"\n },\n \"languages\": {\n \"type\": - \"array\",\n \"description\": \"The language the channel section - is targeting.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelSectionTargeting\"\n },\n \"ChannelContentDetails\": {\n \"description\": - \"Details about the content of a channel.\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"properties\": {\n \"likes\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"watchHistory\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"uploads\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s uploaded videos. Use the videos.insert method to upload new videos - and the videos.delete method to delete previously uploaded videos.\"\n },\n - \ \"watchLater\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\"\n },\n \"favorites\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s favorite videos. Use the playlistItems.insert and - playlistItems.delete to add or remove items from that list.\"\n }\n - \ },\n \"type\": \"object\"\n }\n },\n \"id\": - \"ChannelContentDetails\",\n \"type\": \"object\"\n },\n \"VideoMonetizationDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"access\": - {\n \"description\": \"The value of access indicates whether the - video can be monetized or not.\",\n \"$ref\": \"AccessPolicy\"\n - \ }\n },\n \"id\": \"VideoMonetizationDetails\",\n \"description\": - \"Details about monetization of a YouTube Video.\"\n },\n \"VideoRating\": - {\n \"type\": \"object\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n },\n \"rating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Rating of a video.\"\n }\n },\n \"description\": \"Basic - details about rating of a video.\",\n \"id\": \"VideoRating\"\n },\n - \ \"Member\": {\n \"id\": \"Member\",\n \"type\": \"object\",\n - \ \"description\": \"A *member* resource represents a member for a YouTube - channel. A member provides recurring monetary support to a creator and receives - special benefits.\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n \"default\": - \"youtube#member\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"MemberSnippet\",\n \"description\": \"The - snippet object contains basic details about the member.\"\n }\n }\n - \ },\n \"VideoCategory\": {\n \"description\": \"A *videoCategory* - resource identifies a category that has been or could be associated with uploaded - videos.\",\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#videoCategory\\\".\",\n \"default\": - \"youtube#videoCategory\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the video category, including its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video category.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoCategory\"\n },\n - \ \"VideoSuggestions\": {\n \"properties\": {\n \"processingHints\": - {\n \"items\": {\n \"enumDescriptions\": [\n \"The - MP4 file is not streamable, this will slow down the processing. MOOV atom - was not found at the beginning of the file.\",\n \"Probably a - better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of suggestions that may - improve YouTube's ability to process the video.\",\n \"type\": \"array\"\n - \ },\n \"tagSuggestions\": {\n \"items\": {\n \"$ref\": - \"VideoSuggestionsTagSuggestion\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of keyword tags that could be added to - the video's metadata to increase the likelihood that users will locate your - video when searching or browsing on YouTube.\"\n },\n \"processingWarnings\": - {\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ]\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of reasons - why YouTube may have difficulty transcoding the uploaded video or that might - result in an erroneous transcoding. These warnings are generated before YouTube - actually processes the uploaded video file. In addition, they identify issues - that are unlikely to cause the video processing to fail but that might cause - problems such as sync issues, video artifacts, or a missing audio track.\"\n - \ },\n \"editorSuggestions\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ]\n },\n \"description\": \"A list of video - editing operations that might improve the video quality or playback experience - of the uploaded video.\"\n },\n \"processingErrors\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n },\n \"description\": \"A list of errors - that will prevent YouTube from successfully processing the uploaded video - video. These errors indicate that, regardless of the video's current processing - status, eventually, that status will almost certainly be failed.\"\n }\n - \ },\n \"description\": \"Specifies suggestions on how to improve - video content, including encoding hints, tag suggestions, and editor suggestions.\",\n - \ \"id\": \"VideoSuggestions\",\n \"type\": \"object\"\n },\n - \ \"InvideoBranding\": {\n \"id\": \"InvideoBranding\",\n \"type\": - \"object\",\n \"properties\": {\n \"imageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The url of the uploaded image. Only - used in apiary to api communication.\"\n },\n \"timing\": {\n - \ \"description\": \"The temporal position within the video where - watermark will be displayed.\",\n \"$ref\": \"InvideoTiming\"\n },\n - \ \"targetChannelId\": {\n \"description\": \"The channel to - which this branding links. If not present it defaults to the current channel.\",\n - \ \"type\": \"string\"\n },\n \"position\": {\n \"$ref\": - \"InvideoPosition\",\n \"description\": \"The spatial position within - the video where the branding watermark will be displayed.\"\n },\n - \ \"imageBytes\": {\n \"format\": \"byte\",\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"LINT.IfChange Describes an invideo branding.\"\n },\n \"VideoSnippet\": - {\n \"description\": \"Basic details about a video, including title, - description, uploader, thumbnails and category.\",\n \"type\": \"object\",\n - \ \"id\": \"VideoSnippet\",\n \"properties\": {\n \"tags\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of keyword tags associated with the video. - Tags may contain spaces.\",\n \"type\": \"array\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - video category associated with the video.\"\n },\n \"liveBroadcastContent\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the video was uploaded.\"\n - \ },\n \"defaultAudioLanguage\": {\n \"description\": - \"The default_audio_language property specifies the language spoken in the - video's default audio track.\",\n \"type\": \"string\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel that the video belongs to.\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": - \"The language of the videos's default snippet.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that the video was uploaded - to.\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"localized\": {\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\",\n - \ \"$ref\": \"VideoLocalization\"\n },\n \"title\": - {\n \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"SuperChatEventSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\"\n },\n \"amountMicros\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\"\n },\n \"isSuperStickerEvent\": {\n \"description\": - \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n - \ },\n \"superStickerMetadata\": {\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Channel id where the event occurred.\"\n },\n \"supporterDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the supporter.\"\n },\n \"commentText\": {\n - \ \"type\": \"string\",\n \"description\": \"The text contents - of the comment left by the user.\"\n },\n \"displayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). - The string is rendered for the given language.\"\n },\n \"createdAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the event occurred.\",\n \"format\": \"date-time\"\n - \ },\n \"messageType\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The tier for the paid message, which is based - on the amount of money spent to purchase the message.\",\n \"type\": - \"integer\"\n }\n },\n \"id\": \"SuperChatEventSnippet\"\n - \ },\n \"ChannelSettings\": {\n \"properties\": {\n \"description\": - {\n \"description\": \"Specifies the channel description.\",\n \"type\": - \"string\"\n },\n \"showRelatedChannels\": {\n \"description\": - \"Whether related channels should be proposed.\",\n \"type\": \"boolean\"\n - \ },\n \"title\": {\n \"description\": \"Specifies the - channel title.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"type\": \"string\",\n \"description\": \"The ID for - a Google Analytics account to track and measure traffic to the channels.\"\n - \ },\n \"moderateComments\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether user-submitted comments left on the channel - page need to be approved by the channel owner to be publicly visible.\"\n - \ },\n \"keywords\": {\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\",\n \"type\": \"string\"\n - \ },\n \"featuredChannelsUrls\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The list of featured channels.\"\n },\n - \ \"profileColor\": {\n \"type\": \"string\",\n \"description\": - \"A prominent color that can be rendered on this channel page.\"\n },\n - \ \"defaultTab\": {\n \"type\": \"string\",\n \"description\": - \"Which content tab users should see when viewing the channel.\"\n },\n - \ \"showBrowseView\": {\n \"description\": \"Whether the tab - to browse the videos should be displayed.\",\n \"type\": \"boolean\"\n - \ },\n \"unsubscribedTrailer\": {\n \"type\": \"string\",\n - \ \"description\": \"The trailer of the channel, for users that are - not subscribers.\"\n },\n \"featuredChannelsTitle\": {\n \"description\": - \"Title for the featured channels tab.\",\n \"type\": \"string\"\n - \ },\n \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n }\n },\n \"id\": \"ChannelSettings\",\n - \ \"description\": \"Branding properties for the channel view.\",\n \"type\": - \"object\"\n },\n \"ThumbnailSetResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"ThumbnailSetResponse\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"default\": \"youtube#thumbnailSetResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"description\": \"A list of thumbnails.\"\n }\n }\n - \ },\n \"ChannelConversionPing\": {\n \"properties\": {\n \"conversionUrl\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"context\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Defines the context of the ping.\",\n \"enum\": - [\n \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ]\n }\n },\n \"id\": \"ChannelConversionPing\",\n - \ \"type\": \"object\",\n \"description\": \"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.\"\n }\n },\n - \ \"batchPath\": \"batch\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"discoveryVersion\": \"v1\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"fullyEncodeReservedExpansion\": true,\n \"basePath\": \"\",\n \"description\": - \"The YouTube Data API v3 is an API that provides access to YouTube data, - such as videos, playlists, and channels.\",\n \"canonicalName\": \"YouTube\",\n - \ \"revision\": \"20230220\",\n \"parameters\": {\n \"oauth_token\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"OAuth 2.0 token for the current user.\"\n },\n \"fields\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": \"Selector - specifying which fields to include in a partial response.\"\n },\n \"uploadType\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n - \ },\n \"upload_protocol\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", - \\\"multipart\\\").\"\n },\n \"prettyPrint\": {\n \"location\": - \"query\",\n \"default\": \"true\",\n \"description\": \"Returns - response with indentations and line breaks.\",\n \"type\": \"boolean\"\n - \ },\n \"callback\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"JSONP\"\n },\n \"access_token\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"OAuth access token.\"\n },\n \"$.xgafv\": {\n \"enumDescriptions\": - [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n \"1\",\n - \ \"2\"\n ],\n \"description\": \"V1 error format.\"\n },\n - \ \"quotaUser\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"alt\": {\n \"location\": \"query\",\n - \ \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"enumDescriptions\": [\n \"Responses with Content-Type - of application/json\",\n \"Media download with context-dependent Content-Type\",\n - \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n - \ \"default\": \"json\",\n \"description\": \"Data format for response.\",\n - \ \"type\": \"string\"\n },\n \"key\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n },\n \"documentationLink\": - \"https://developers.google.com/youtube/\",\n \"ownerDomain\": \"google.com\",\n - \ \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"ownerName\": - \"Google\",\n \"version\": \"v3\",\n \"title\": \"YouTube Data API v3\",\n - \ \"servicePath\": \"\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:30 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UC5C2bbzS3oPCMpHWc6IEKWQ&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"gmxw1Y3CZeHAWI6yo4NedwQsU94\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"NQz-bTKkpX9ykddncw0xOa0_4nA\",\n \"id\": \"UC5C2bbzS3oPCMpHWc6IEKWQ\",\n - \ \"snippet\": {\n \"title\": \"Elsa Arca\",\n \"description\": - \"Hello everyone, my name is Elsa! I am an influencer and a member of the - world's most popular TikTok team - XO Team!\\nI have more than 6 million subscribers - on TikTok, thank you for being with me\U0001F60D\\n\\nThis is my YouTube channel, - where I shoot a lot of interesting content for you with my family - XO Team, - I'm sure you'll like it, so subscribe to me and wait for new videos!\\n\\nInst: - elsarca\\nTiktok: elsarca\\n\\nCooperation: elsarca.booking@gmail.com\\n\\n\",\n - \ \"customUrl\": \"@elsarca\",\n \"publishedAt\": \"2015-06-22T16:57:58Z\",\n - \ \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/jWJeguOEVTNnyTk1TFUeVeCjXNI-peMohW6gycxH8q-azNws2gPZA0wYyHaeJpcXAAzZIifA=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/jWJeguOEVTNnyTk1TFUeVeCjXNI-peMohW6gycxH8q-azNws2gPZA0wYyHaeJpcXAAzZIifA=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/jWJeguOEVTNnyTk1TFUeVeCjXNI-peMohW6gycxH8q-azNws2gPZA0wYyHaeJpcXAAzZIifA=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Elsa Arca\",\n \"description\": - \"Hello everyone, my name is Elsa! I am an influencer and a member of the - world's most popular TikTok team - XO Team!\\nI have more than 6 million subscribers - on TikTok, thank you for being with me\U0001F60D\\n\\nThis is my YouTube channel, - where I shoot a lot of interesting content for you with my family - XO Team, - I'm sure you'll like it, so subscribe to me and wait for new videos!\\n\\nInst: - elsarca\\nTiktok: elsarca\\n\\nCooperation: elsarca.booking@gmail.com\\n\\n\"\n - \ },\n \"country\": \"US\"\n },\n \"brandingSettings\": - {\n \"channel\": {\n \"title\": \"Elsa Arca\",\n \"description\": - \"Hello everyone, my name is Elsa! I am an influencer and a member of the - world's most popular TikTok team - XO Team!\\nI have more than 6 million subscribers - on TikTok, thank you for being with me\U0001F60D\\n\\nThis is my YouTube channel, - where I shoot a lot of interesting content for you with my family - XO Team, - I'm sure you'll like it, so subscribe to me and wait for new videos!\\n\\nInst: - elsarca\\nTiktok: elsarca\\n\\nCooperation: elsarca.booking@gmail.com\\n\\n\",\n - \ \"unsubscribedTrailer\": \"pj5lqD0jMKw\",\n \"country\": - \"US\"\n },\n \"image\": {\n \"bannerExternalUrl\": - \"https://yt3.googleusercontent.com/Spi8I5kBeeJ_9jeupwrWGf0rv-51-YRLBo598DWcd4m0BPHEQuvFUzhbJPsvmKVqZ4zySqFs4A\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:30 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"ownerDomain\": \"google.com\",\n \"discoveryVersion\": \"v1\",\n - \ \"canonicalName\": \"YouTube\",\n \"fullyEncodeReservedExpansion\": true,\n - \ \"batchPath\": \"batch\",\n \"title\": \"YouTube Data API v3\",\n \"rootUrl\": - \"https://youtube.googleapis.com/\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"version\": \"v3\",\n \"resources\": {\n \"search\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of search - resources\",\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.search.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"location\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Filter on location of the video\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on resources belonging to this channelId.\"\n },\n \"videoDefinition\": - {\n \"description\": \"Filter on the definition of the videos.\",\n - \ \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"relevanceLanguage\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - results relevant to this language.\"\n },\n \"videoDuration\": - {\n \"description\": \"Filter on the duration of the videos.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ]\n - \ },\n \"topicId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Restrict - results to a particular topic.\"\n },\n \"channelType\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"description\": - \"Add a filter on the channel search.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ]\n },\n \"publishedAfter\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on resources published after this - date.\",\n \"format\": \"google-datetime\"\n },\n - \ \"forDeveloper\": {\n \"type\": \"boolean\",\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\",\n \"location\": \"query\"\n },\n - \ \"type\": {\n \"description\": \"Restrict results - to a particular set of resource types from One Platform.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Display the content as seen by viewers in - this country.\"\n },\n \"forMine\": {\n \"location\": - \"query\",\n \"description\": \"Search for the private videos - of the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"videoLicense\": {\n \"type\": \"string\",\n \"description\": - \"Filter on the license of the videos.\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"location\": \"query\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ]\n - \ },\n \"forContentOwner\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Search owned by a content owner.\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"default\": \"5\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\"\n },\n \"videoCaption\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"description\": \"Filter on the presence of captions on the - videos.\"\n },\n \"videoCategoryId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on videos in a specific category.\"\n },\n \"videoEmbeddable\": - {\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on embeddable videos.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all videos, embeddable or - not.\",\n \"Only retrieve embeddable videos.\"\n ]\n - \ },\n \"order\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"default\": \"relevance\",\n \"description\": - \"Sort order of the results.\"\n },\n \"videoSyndicated\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos, syndicated or not.\",\n \"Only retrieve syndicated - videos.\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Filter on syndicated videos.\",\n - \ \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ]\n },\n - \ \"publishedBefore\": {\n \"type\": \"string\",\n - \ \"format\": \"google-datetime\",\n \"location\": - \"query\",\n \"description\": \"Filter on resources published - before this date.\"\n },\n \"relatedToVideoId\": {\n - \ \"description\": \"Search related to a resource.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoType\": - {\n \"location\": \"query\",\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos.\",\n \"Only retrieve movies.\",\n - \ \"Only retrieve episodes of shows.\"\n ],\n \"type\": - \"string\",\n \"description\": \"Filter on videos of a specific - type.\"\n },\n \"eventType\": {\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Filter on the livestream status of the videos.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"location\": \"query\"\n },\n \"locationRadius\": - {\n \"description\": \"Filter on distance from the location (specified - above).\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"q\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Textual - search terms to match.\"\n },\n \"safeSearch\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"moderate\"\n },\n \"videoDimension\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"Include both 3D and - non-3D videos in returned results. This is the default value.\",\n \"Restrict - search results to exclude 3D videos.\",\n \"Restrict search - results to only include 3D videos.\"\n ],\n \"description\": - \"Filter on 3d videos.\",\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ]\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\"\n }\n },\n \"path\": \"youtube/v3/search\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/search\"\n }\n }\n - \ },\n \"channelBanners\": {\n \"methods\": {\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"parameterOrder\": [],\n - \ \"supportsMediaUpload\": true,\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"mediaUpload\": - {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"resumable\": {\n \"multipart\": true,\n - \ \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"maxSize\": \"6291456\"\n },\n - \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"response\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.channelBanners.insert\",\n - \ \"path\": \"youtube/v3/channelBanners/insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ]\n - \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"id\": \"youtube.liveChatModerators.delete\",\n \"description\": - \"Deletes a chat moderator.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"list\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"response\": - {\n \"$ref\": \"LiveChatModeratorListResponse\"\n },\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"parameters\": {\n \"maxResults\": {\n - \ \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"default\": \"5\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"format\": \"uint32\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the liveChatModerator resource parts that the API - response will include. Supported values are id and snippet.\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"liveChatId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"The id of the live chat for - which moderators should be returned.\",\n \"required\": true\n - \ }\n },\n \"id\": \"youtube.liveChatModerators.list\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ },\n \"insert\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"id\": \"youtube.liveChatModerators.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\"\n }\n }\n - \ },\n \"comments\": {\n \"methods\": {\n \"delete\": {\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"path\": \"youtube/v3/comments\"\n - \ },\n \"markAsSpam\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"description\": \"Expresses the caller's opinion that one or more - comments should be flagged as spam.\",\n \"id\": \"youtube.comments.markAsSpam\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/comments/markAsSpam\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n }\n }\n },\n - \ \"setModerationStatus\": {\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"path\": \"youtube/v3/comments/setModerationStatus\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"parameters\": {\n \"banAuthor\": {\n \"description\": - \"If set to true the author of the comment gets added to the ban list. This - means all future comments of the author will autmomatically be rejected. Only - valid in combination with STATUS_REJECTED.\",\n \"default\": - \"false\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"moderationStatus\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the requested moderation - status. Note, comments can be in statuses, which are not available through - this call. For example, this call does not allow to mark a comment as 'likely - spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"location\": \"query\",\n \"required\": - true,\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ]\n },\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Modifies the moderation status of - the comments with the given IDs\",\n \"type\": \"string\"\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"description\": - \"Sets the moderation status of one or more comments.\"\n },\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true\n }\n },\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"path\": \"youtube/v3/comments\",\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.comments.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"id\": \"youtube.comments.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/comments\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"Returns the comments with the given IDs for One Platform.\"\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"20\",\n \"maximum\": \"100\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"1\"\n - \ },\n \"parentId\": {\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more comment resource properties that the API response will - include.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"textFormat\": {\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"html\",\n \"description\": \"The requested text format for - the returned comments.\"\n }\n }\n },\n \"update\": - {\n \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.comments.update\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n }\n }\n }\n },\n \"commentThreads\": - {\n \"methods\": {\n \"insert\": {\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"path\": \"youtube/v3/commentThreads\"\n },\n - \ \"list\": {\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"id\": \"youtube.commentThreads.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"searchTerms\": {\n \"location\": - \"query\",\n \"description\": \"Limits the returned comment threads - to those matching the specified key words. Not compatible with the 'id' filter.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"Returns the comment threads for all the - channel comments (ie does not include comments left on videos).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\"\n },\n \"order\": - {\n \"default\": \"time\",\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"type\": \"string\"\n },\n - \ \"moderationStatus\": {\n \"description\": \"Limits - the returned comment threads to those with the specified moderation status. - Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"type\": \"string\",\n \"default\": - \"published\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ]\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"100\",\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"minimum\": - \"1\",\n \"default\": \"20\"\n },\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Returns - the comment threads with the given IDs for Stubby or Apiary.\"\n },\n - \ \"textFormat\": {\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"default\": \"html\",\n \"description\": \"The - requested text format for the returned comments.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads of the specified - video.\"\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"youtube\": {\n \"resources\": - {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameterOrder\": [],\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/commentThreads\"\n }\n - \ }\n }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"insertCuepoint\": {\n \"response\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Broadcast - to insert ads to, or equivalently `external_video_id` for internal use.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"parameterOrder\": [],\n \"request\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Insert cuepoints in a broadcast\"\n },\n - \ \"delete\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Broadcast to delete.\",\n \"required\": true\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.delete\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"description\": \"Delete a given - broadcast.\"\n },\n \"transition\": {\n \"description\": - \"Transition a broadcast to a given status.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to transition.\",\n \"required\": - true\n },\n \"broadcastStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"location\": \"query\",\n \"description\": - \"The status to which the broadcast is going to transition.\",\n \"required\": - true,\n \"type\": \"string\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ]\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"list\": {\n \"parameters\": {\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"broadcastStatus\": {\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"broadcastType\": {\n \"description\": - \"Return only broadcasts with the selected type.\",\n \"type\": - \"string\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"default\": \"event\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ]\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"default\": \"5\",\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\"\n },\n \"id\": - {\n \"description\": \"Return broadcasts with the given ids from - Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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, status - and statistics.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Retrieve the list of broadcasts associated with - the given channel.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"id\": - \"youtube.liveBroadcasts.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ }\n },\n \"update\": {\n \"request\": {\n - \ \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"Updates an existing broadcast for the authenticated user.\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.liveBroadcasts.update\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"description\": \"Inserts a new stream for the authenticated - user.\"\n },\n \"bind\": {\n \"id\": \"youtube.liveBroadcasts.bind\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"streamId\": - {\n \"description\": \"Stream to bind, if not set unbind the - current one.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"description\": \"Broadcast to bind - to the stream\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"description\": \"Bind a broadcast to a stream.\",\n \"path\": - \"youtube/v3/liveBroadcasts/bind\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\"\n - \ }\n }\n },\n \"playlists\": {\n \"methods\": {\n \"insert\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/playlists\",\n \"response\": {\n - \ \"$ref\": \"Playlist\"\n },\n \"flatPath\": - \"youtube/v3/playlists\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.playlists.insert\"\n },\n \"update\": - {\n \"description\": \"Updates an existing resource.\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"id\": \"youtube.playlists.update\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"PUT\",\n \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true\n }\n }\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"id\": \"youtube.playlists.delete\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Deletes a resource.\",\n - \ \"path\": \"youtube/v3/playlists\"\n },\n \"list\": - {\n \"flatPath\": \"youtube/v3/playlists\",\n \"parameters\": - {\n \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"default\": - \"5\",\n \"minimum\": \"0\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the playlists owned by the authenticated user.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return the playlists with the - given IDs for Stubby or Apiary.\",\n \"repeated\": true\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Return the playlists owned by the specified channel ID.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return content in specified language\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"response\": {\n - \ \"$ref\": \"PlaylistListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.playlists.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n }\n }\n },\n \"i18nLanguages\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"path\": \"youtube/v3/i18nLanguages\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n - \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"en_US\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the i18nLanguage resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n }\n }\n - \ }\n },\n \"liveChatMessages\": {\n \"methods\": {\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.delete\",\n - \ \"description\": \"Deletes a chat message.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n }\n },\n - \ \"insert\": {\n \"request\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"response\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n }\n }\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameters\": {\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the liveChatComment - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"minimum\": - \"200\",\n \"format\": \"uint32\",\n \"maximum\": - \"2000\",\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"default\": \"500\"\n },\n \"profileImageSize\": - {\n \"minimum\": \"16\",\n \"description\": \"Specifies - the size of the profile image that should be returned for each user.\",\n - \ \"maximum\": \"720\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"location\": \"query\"\n - \ },\n \"hl\": {\n \"description\": \"Specifies - the localization language in which the system messages should be returned.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"liveChatId\": {\n \"description\": - \"The id of the live chat for which comments should be returned.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n - \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/members\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"description\": \"Retrieves a list of members that - match the request criteria for a channel.\",\n \"parameters\": {\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"mode\": - {\n \"description\": \"Parameter that specifies which channel - members to return.\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"default\": \"all_current\",\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"hasAccessToLevel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter members in the results set to the - ones that have access to a level.\"\n },\n \"filterByMemberChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\"\n - \ },\n \"maxResults\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"maximum\": \"1000\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/members\",\n \"id\": - \"youtube.members.list\"\n }\n }\n },\n \"channelSections\": - {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.channelSections.list\",\n - \ \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return content in specified language\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Return - the ChannelSections with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"description\": - \"Return the ChannelSections owned by the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"description\": \"Return the ChannelSections owned by the - specified channel ID.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/channelSections\"\n },\n \"delete\": {\n \"path\": - \"youtube/v3/channelSections\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.channelSections.delete\"\n },\n \"update\": {\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"description\": \"Updates an existing resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channelSections.insert\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n }\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"part\": {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the videoCategory resource parts that the - API response will include. Supported values are id and snippet.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"hl\": {\n \"location\": \"query\",\n - \ \"default\": \"en-US\",\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"VideoAbuseReportReasonListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"subscriptions\": {\n \"methods\": - {\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"id\": \"youtube.subscriptions.insert\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/subscriptions\",\n \"response\": {\n \"$ref\": - \"Subscription\"\n },\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"description\": - \"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.\"\n }\n }\n },\n - \ \"delete\": {\n \"parameters\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"id\": \"youtube.subscriptions.delete\"\n },\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"SubscriptionListResponse\"\n },\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.subscriptions.list\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"forChannelId\": {\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"myRecentSubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Return the subscriptions with - the given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n },\n \"mySubscribers\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the subscribers of the given channel owner.\",\n \"location\": - \"query\"\n },\n \"order\": {\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"description\": \"The order of the returned - subscriptions\",\n \"type\": \"string\",\n \"default\": - \"relevance\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": - true\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions of the given channel - owner.\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"minimum\": - \"0\"\n }\n },\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"update\": - {\n \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"Channel\"\n },\n \"id\": \"youtube.channels.update\",\n - \ \"response\": {\n \"$ref\": \"Channel\"\n },\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channels\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\"\n - \ },\n \"list\": {\n \"id\": \"youtube.channels.list\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"parameters\": {\n \"forUsername\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channel associated with a YouTube - username.\"\n },\n \"mine\": {\n \"description\": - \"Return the ids of channels owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the channels with the specified IDs.\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"categoryId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the channels within the specified - guide category ID.\"\n },\n \"hl\": {\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mySubscribers\": - {\n \"description\": \"Return the channels subscribed to the - authenticated user\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"managedByMe\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the channels managed by the authenticated user.\"\n }\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/channels\"\n }\n }\n },\n - \ \"abuseReports\": {\n \"methods\": {\n \"insert\": {\n \"request\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"response\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"flatPath\": - \"youtube/v3/abuseReports\",\n \"description\": \"Inserts a new resource - into this collection.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.abuseReports.insert\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/abuseReports\",\n \"httpMethod\": - \"POST\"\n }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"path\": \"youtube/v3/videoCategories\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"en-US\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the videoCategory resource properties that the - API response will include. Set the parameter value to snippet.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Returns the video categories - with the given IDs for Stubby or Apiary.\",\n \"repeated\": true\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.videoCategories.list\",\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"tests\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.tests.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/tests\",\n \"response\": {\n - \ \"$ref\": \"TestItem\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"POST method.\",\n - \ \"path\": \"youtube/v3/tests\",\n \"request\": {\n \"$ref\": - \"TestItem\"\n },\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n }\n }\n }\n },\n \"membershipsLevels\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"path\": \"youtube/v3/membershipsLevels\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"description\": \"Retrieves a list of all pricing - levels offered by a creator to the fans.\",\n \"httpMethod\": \"GET\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.membershipsLevels.list\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the membershipsLevel - resource parts that the API response will include. Supported values are id - and snippet.\"\n }\n }\n }\n }\n },\n \"activities\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"path\": \"youtube/v3/activities\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"publishedAfter\": - {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n - \ \"type\": \"string\"\n },\n \"home\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"mine\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"publishedBefore\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"format\": - \"google-datetime\"\n }\n },\n \"flatPath\": - \"youtube/v3/activities\",\n \"id\": \"youtube.activities.list\"\n - \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"insert\": - {\n \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"104857600\"\n },\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.captions.insert\",\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"supportsMediaUpload\": true,\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"flatPath\": - \"youtube/v3/captions\",\n \"path\": \"youtube/v3/captions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the caption - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"sync\": {\n \"location\": \"query\",\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"download\": - {\n \"httpMethod\": \"GET\",\n \"useMediaDownloadService\": - true,\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Downloads a caption track.\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/captions/{id}\",\n \"parameters\": {\n \"tfmt\": - {\n \"location\": \"query\",\n \"description\": - \"Convert the captions into this format. Supported options are sbv, srt, and - vtt.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": - \"The ID of the caption track to download, required for One Platform.\",\n - \ \"location\": \"path\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"tlang\": {\n - \ \"location\": \"query\",\n \"description\": \"tlang - is the language code; machine translate the captions into this language.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is be on behalf of\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"supportsMediaDownload\": - true,\n \"id\": \"youtube.captions.download\"\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/captions\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\"\n },\n \"update\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"mediaUpload\": {\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ }\n },\n \"maxSize\": \"104857600\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"path\": \"youtube/v3/captions\",\n \"httpMethod\": \"PUT\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"supportsMediaUpload\": - true,\n \"parameters\": {\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"sync\": {\n \"type\": - \"boolean\",\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"location\": - \"query\"\n }\n },\n \"request\": {\n \"$ref\": - \"Caption\"\n }\n },\n \"list\": {\n \"path\": - \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"parameters\": {\n \"videoId\": {\n \"description\": - \"Returns the captions for the specified video.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Returns the captions with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.captions.list\"\n - \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n - \ \"list\": {\n \"parameters\": {\n \"hl\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"en_US\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the i18nRegion - resource properties that the API response will include. Set the parameter - value to snippet.\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.i18nRegions.list\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/i18nRegions\",\n \"flatPath\": - \"youtube/v3/i18nRegions\",\n \"response\": {\n \"$ref\": - \"I18nRegionListResponse\"\n }\n }\n }\n },\n \"watermarks\": - {\n \"methods\": {\n \"unset\": {\n \"id\": \"youtube.watermarks.unset\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"description\": - \"Allows removal of channel watermark.\",\n \"parameters\": {\n \"channelId\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n }\n },\n \"set\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Allows upload of watermark image - and setting it for a channel.\",\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"id\": \"youtube.watermarks.set\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n }\n - \ },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"channelId\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"supportsMediaUpload\": - true\n }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the superChatEvent resource parts that the - API response will include. This parameter is currently not supported.\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"maxResults\": {\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"location\": \"query\",\n \"minimum\": - \"1\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return rendered funding amounts in specified language.\"\n }\n - \ },\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"path\": - \"youtube/v3/superChatEvents\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"id\": \"youtube.superChatEvents.list\",\n - \ \"flatPath\": \"youtube/v3/superChatEvents\"\n }\n }\n - \ },\n \"playlistItems\": {\n \"methods\": {\n \"delete\": - {\n \"id\": \"youtube.playlistItems.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"flatPath\": \"youtube/v3/playlistItems\"\n - \ },\n \"update\": {\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ }\n },\n \"description\": \"Updates an existing - resource.\",\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.update\"\n },\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlistItems.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"videoId\": - {\n \"description\": \"Return the playlist items associated with - the given video ID.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"type\": \"integer\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ },\n \"playlistId\": {\n \"description\": - \"Return the playlist items within the given playlist.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n }\n },\n \"insert\": {\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"thirdPartyLinks\": {\n \"methods\": {\n \"update\": - {\n \"description\": \"Updates an existing resource.\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\"\n }\n },\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"PUT\"\n },\n - \ \"delete\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"Do not - use. Required for compatibility.\"\n },\n \"linkingToken\": - {\n \"type\": \"string\",\n \"description\": \"Delete - the partner links with the given linking token.\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"description\": - \"Type of the link to be deleted.\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"required\": true\n }\n },\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.thirdPartyLinks.delete\",\n - \ \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n - \ ]\n },\n \"list\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - response will include. Supported values are linkingToken, status, and snippet.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"linkingToken\": {\n \"description\": - \"Get a third party link with the given linking token.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"location\": \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"description\": - \"Get a third party link of the given type.\"\n }\n },\n - \ \"id\": \"youtube.thirdPartyLinks.list\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\"\n },\n \"insert\": {\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.thirdPartyLinks.insert\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n }\n }\n }\n }\n },\n - \ \"liveStreams\": {\n \"methods\": {\n \"update\": {\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"description\": - \"Updates an existing stream for the authenticated user.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveStreams.update\",\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"list\": {\n \"parameters\": {\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"maximum\": \"50\",\n - \ \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"default\": \"5\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveStreamListResponse\"\n },\n \"description\": \"Retrieve - the list of streams associated with the given channel. --\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.liveStreams.list\"\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.delete\",\n - \ \"description\": \"Deletes an existing stream for the authenticated - user.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n }\n },\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"id\": \"youtube.liveStreams.insert\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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, - content_details, and status.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"path\": \"youtube/v3/liveStreams\"\n }\n - \ }\n },\n \"videos\": {\n \"methods\": {\n \"update\": - {\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/videos\",\n \"response\": {\n \"$ref\": \"Video\"\n - \ },\n \"id\": \"youtube.videos.update\",\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"list\": {\n \"path\": \"youtube/v3/videos\",\n - \ \"parameters\": {\n \"locale\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n - \ \"repeated\": true\n },\n \"maxWidth\": - {\n \"maximum\": \"8192\",\n \"location\": \"query\",\n - \ \"minimum\": \"72\",\n \"type\": \"integer\",\n - \ \"description\": \"Return the player with maximum height specified - in\",\n \"format\": \"int32\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return videos with the given ids.\"\n },\n - \ \"maxResults\": {\n \"description\": \"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.\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"default\": \"5\",\n - \ \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"1\"\n },\n \"maxHeight\": - {\n \"format\": \"int32\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"maximum\": \"8192\",\n - \ \"minimum\": \"72\"\n },\n \"videoCategoryId\": - {\n \"default\": \"0\",\n \"description\": \"Use - chart that is specific to the specified video category\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"myRating\": - {\n \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"location\": - \"query\"\n },\n \"chart\": {\n \"description\": - \"Return the videos that are in the specified chart.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ]\n },\n \"regionCode\": - {\n \"description\": \"Use a chart that is specific to the specified - region\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"location\": \"query\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.videos.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"VideoListResponse\"\n }\n },\n \"reportAbuse\": {\n - \ \"description\": \"Report abuse for a video.\",\n \"path\": - \"youtube/v3/videos/reportAbuse\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\",\n \"request\": {\n \"$ref\": - \"VideoAbuseReport\"\n },\n \"parameterOrder\": [],\n \"id\": - \"youtube.videos.reportAbuse\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n }\n },\n \"rate\": {\n \"path\": - \"youtube/v3/videos/rate\",\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ],\n \"id\": \"youtube.videos.rate\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"rating\": {\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Adds a like or dislike rating to a - video or removes a rating from a video.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos/rate\"\n },\n - \ \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.videos.delete\",\n - \ \"path\": \"youtube/v3/videos\"\n },\n \"insert\": - {\n \"flatPath\": \"youtube/v3/videos\",\n \"path\": \"youtube/v3/videos\",\n - \ \"id\": \"youtube.videos.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"274877906944\",\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"supportsMediaUpload\": true,\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"autoLevels\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Should auto-levels be applied to the upload.\"\n },\n \"stabilize\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Should stabilize be applied to the upload.\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"notifySubscribers\": - {\n \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\",\n \"default\": - \"true\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n }\n },\n \"getRating\": - {\n \"flatPath\": \"youtube/v3/videos/getRating\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos/getRating\",\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"description\": \"Retrieves the ratings that the - authorized user gave to a list of specified videos.\",\n \"id\": - \"youtube.videos.getRating\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n }\n }\n },\n \"thumbnails\": {\n \"methods\": - {\n \"set\": {\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"id\": - \"youtube.thumbnails.set\",\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"Returns the Thumbnail with the given video - IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"description\": - \"As this is not an insert in a strict sense (it supports uploading/setting - of a thumbnail for multiple videos, which doesn't result in creation of a - single resource), I use a custom verb here.\",\n \"response\": {\n - \ \"$ref\": \"ThumbnailSetResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"2097152\",\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ }\n }\n }\n }\n }\n },\n - \ \"liveChatBans\": {\n \"methods\": {\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"required\": true\n }\n },\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n }\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.liveChatBans.delete\",\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/liveChat/bans\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat ban.\",\n \"flatPath\": - \"youtube/v3/liveChat/bans\"\n }\n }\n }\n },\n \"description\": - \"The YouTube Data API v3 is an API that provides access to YouTube data, - such as videos, playlists, and channels.\",\n \"auth\": {\n \"oauth2\": - {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n }\n - \ }\n }\n },\n \"protocol\": \"rest\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"schemas\": {\n \"VideoStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"embeddable\": {\n \"description\": \"This value indicates - if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"license\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"description\": \"The - video's license. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"publishAt\": {\n \"description\": \"The date - and time when the video is scheduled to publish. It can be set only if the - privacy status of the video is private..\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"failureReason\": {\n - \ \"enumDescriptions\": [\n \"Unable to convert video content.\",\n - \ \"Invalid file format.\",\n \"Empty file.\",\n \"File - was too small.\",\n \"Unsupported codec.\",\n \"Upload - wasn't finished.\"\n ],\n \"description\": \"This value - explains why a video failed to upload. This property is only present if the - uploadStatus property indicates that the upload failed.\",\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ],\n \"type\": \"string\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's privacy status.\"\n - \ },\n \"publicStatsViewable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value indicates if the extended video statistics - on the watch page can be viewed by everyone. Note that the view count, likes, - etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"rejectionReason\": {\n \"description\": - \"This value explains why YouTube rejected an uploaded video. This property - is only present if the uploadStatus property indicates that the upload was - rejected.\",\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ]\n },\n - \ \"uploadStatus\": {\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ],\n \"type\": \"string\",\n \"description\": - \"The status of the uploaded video.\",\n \"enumDescriptions\": [\n - \ \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ]\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n }\n },\n \"description\": - \"Basic details about a video category, such as its localized title. Next - Id: 18\",\n \"id\": \"VideoStatus\"\n },\n \"VideoCategorySnippet\": - {\n \"description\": \"Basic details about a video category, such as - its localized title.\",\n \"properties\": {\n \"title\": {\n \"description\": - \"The video category's title.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube channel that created the video category.\",\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\"\n },\n \"assignable\": {\n \"type\": - \"boolean\"\n }\n },\n \"id\": \"VideoCategorySnippet\",\n - \ \"type\": \"object\"\n },\n \"LiveChatBanSnippet\": {\n \"id\": - \"LiveChatBanSnippet\",\n \"properties\": {\n \"liveChatId\": - {\n \"description\": \"The chat this ban is pertinent to.\",\n \"type\": - \"string\"\n },\n \"banDurationSeconds\": {\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"An invalid ban type.\",\n - \ \"A permanent ban.\",\n \"A temporary ban.\"\n ],\n - \ \"enum\": [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of ban.\"\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n }\n },\n \"type\": - \"object\"\n },\n \"I18nLanguageListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"I18nLanguageListResponse\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#i18nLanguageListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"I18nLanguage\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of supported i18n languages. In this map, the i18n language ID is - the map key, and its value is the corresponding i18nLanguage resource.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n }\n - \ },\n \"Channel\": {\n \"id\": \"Channel\",\n \"properties\": - {\n \"localizations\": {\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n }\n },\n - \ \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"contentOwnerDetails\": {\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"topicDetails\": {\n \"description\": \"The - topicDetails object encapsulates information about Freebase topics associated - with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n - \ \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n - \ \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\"\n - \ },\n \"brandingSettings\": {\n \"description\": \"The - brandingSettings object encapsulates information about the branding of the - channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n },\n - \ \"status\": {\n \"description\": \"The status object encapsulates - information about the privacy status of the channel.\",\n \"$ref\": - \"ChannelStatus\"\n },\n \"kind\": {\n \"default\": - \"youtube#channel\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel, such as its - title, description, and thumbnail images.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object encapsulates information about the channel's content.\",\n - \ \"$ref\": \"ChannelContentDetails\"\n }\n },\n \"description\": - \"A *channel* resource contains information about a YouTube channel.\",\n - \ \"type\": \"object\"\n },\n \"I18nLanguageSnippet\": {\n \"properties\": - {\n \"hl\": {\n \"type\": \"string\",\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\"\n },\n - \ \"name\": {\n \"description\": \"The human-readable name - of the language in the language itself.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"I18nLanguageSnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about an i18n language, - such as language code and human-readable name.\"\n },\n \"ChannelSection\": - {\n \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"contentDetails\": {\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\",\n \"$ref\": \"ChannelSectionContentDetails\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#channelSection\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n - \ },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\"\n - \ },\n \"targeting\": {\n \"description\": \"The targeting - object contains basic targeting settings about the channel section.\",\n \"$ref\": - \"ChannelSectionTargeting\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel section.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ChannelSection\"\n },\n \"VideoFileDetails\": - {\n \"properties\": {\n \"bitrateBps\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded video file's combined - (video and audio) bitrate in bits per second.\",\n \"format\": \"uint64\"\n - \ },\n \"creationTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the uploaded video file - was created. The value is specified in ISO 8601 format. Currently, the following - ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"fileName\": - {\n \"type\": \"string\",\n \"description\": \"The uploaded - file's name. This field is present whether a video file or another type of - file was uploaded.\"\n },\n \"audioStreams\": {\n \"type\": - \"array\",\n \"description\": \"A list of audio streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about an audio stream.\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ }\n },\n \"fileType\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"enumDescriptions\": [\n \"Known - video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an - MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"description\": \"The uploaded file's type as detected by YouTube's - video processing engine. Currently, YouTube only processes video files, but - this field is present whether a video file or another type of file was uploaded.\"\n - \ },\n \"videoStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n },\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\",\n \"type\": - \"array\"\n },\n \"fileSize\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded file's size in bytes. This field - is present whether a video file or another type of file was uploaded.\",\n - \ \"format\": \"uint64\"\n },\n \"durationMs\": {\n - \ \"description\": \"The length of the uploaded video in milliseconds.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"container\": {\n \"description\": \"The uploaded video - file's container format.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Describes original video - file properties, including technical details about audio and video streams, - but also metadata information like content length, digitization time, or geotagging - information.\",\n \"id\": \"VideoFileDetails\"\n },\n \"LiveBroadcastListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"default\": \"youtube#liveBroadcastListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of broadcasts that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ },\n \"id\": \"LiveBroadcastListResponse\"\n },\n \"LiveChatMessageListResponse\": - {\n \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatMessageListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"type\": \"array\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"offlineAt\": {\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the underlying stream went offline.\",\n \"format\": \"date-time\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"pollingIntervalMillis\": - {\n \"description\": \"The amount of time the client should wait - before polling again.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatMessageListResponse\"\n - \ },\n \"MembershipsDurationAtLevel\": {\n \"type\": \"object\",\n - \ \"id\": \"MembershipsDurationAtLevel\",\n \"properties\": {\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member for the given level.\",\n \"type\": \"string\"\n },\n - \ \"level\": {\n \"description\": \"Pricing level ID.\",\n - \ \"type\": \"string\"\n },\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - for the given level in complete months (the time is rounded down to the nearest - integer).\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ }\n }\n },\n \"LiveChatMessage\": {\n \"properties\": - {\n \"authorDetails\": {\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\",\n - \ \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the message.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n - \ \"default\": \"youtube#liveChatMessage\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A *liveChatMessage* resource represents a chat message in a YouTube Live - Chat.\",\n \"type\": \"object\",\n \"id\": \"LiveChatMessage\"\n - \ },\n \"PlaylistListResponse\": {\n \"id\": \"PlaylistListResponse\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlistListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of playlists that match the request criteria\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastContentDetails\": {\n - \ \"properties\": {\n \"enableLowLatency\": {\n \"description\": - \"Indicates whether this broadcast has low latency enabled.\",\n \"type\": - \"boolean\"\n },\n \"enableAutoStart\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - auto start is enabled for this broadcast. The default value for this property - is false. This setting can only be used by Events.\"\n },\n \"enableDvr\": - {\n \"description\": \"This setting determines whether viewers can - access DVR controls while watching the video. DVR controls enable the viewer - to control the video playback experience by pausing, rewinding, or fast forwarding - content. The default value for this property is true. *Important:* You must - set the value to true and also set the enableArchive property's value to true - if you want to make playback available immediately after the broadcast ends.\",\n - \ \"type\": \"boolean\"\n },\n \"latencyPreference\": - {\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"description\": \"If both this and enable_low_latency - are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\",\n \"type\": \"string\"\n },\n - \ \"closedCaptionsType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ]\n },\n \"boundStreamId\": - {\n \"type\": \"string\",\n \"description\": \"This value - uniquely identifies the live stream bound to the broadcast.\"\n },\n - \ \"monitorStream\": {\n \"description\": \"The monitorStream - object contains information about the monitor stream, which the broadcaster - can use to review the event content before the broadcast stream is shown publicly.\",\n - \ \"$ref\": \"MonitorStreamInfo\"\n },\n \"projection\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ]\n },\n \"stereoLayout\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ],\n \"description\": \"The - 3D stereo layout of this broadcast. This defaults to mono.\",\n \"type\": - \"string\"\n },\n \"recordFromStart\": {\n \"description\": - \"Automatically start recording after the event goes live. The default value - for this property is true. *Important:* You must also set the enableDvr property's - value to true if you want the playback to be available immediately after the - broadcast ends. If you set this property's value to true but do not also set - the enableDvr property to true, there may be a delay of around one day before - the archived video will be available for playback.\",\n \"type\": - \"boolean\"\n },\n \"mesh\": {\n \"type\": \"string\",\n - \ \"description\": \"The mesh for projecting the video if projection - is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding - of 3D mesh data that follows the Spherical Video V2 RFC specification for - an mshp box, excluding the box size and type but including the following four - reserved zero bytes for the version and flags.\",\n \"format\": \"byte\"\n - \ },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n },\n \"enableContentEncryption\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - YouTube should enable content encryption for the broadcast.\"\n },\n - \ \"boundStreamLastUpdateTimeMs\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\",\n \"format\": \"date-time\"\n - \ },\n \"enableAutoStop\": {\n \"description\": \"This - setting indicates whether auto stop is enabled for this broadcast. The default - value for this property is false. This setting can only be used by Events.\",\n - \ \"type\": \"boolean\"\n },\n \"startWithSlate\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast should automatically begin with an in-stream - slate when you update the broadcast's status to live. After updating the status, - you then need to send a liveCuepoints.insert request that sets the cuepoint's - eventState to end to remove the in-stream slate and make your broadcast stream - visible to viewers.\"\n },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n }\n },\n \"description\": - \"Detailed settings of a broadcast.\",\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"type\": \"object\"\n },\n \"ChannelAuditDetails\": {\n \"id\": - \"ChannelAuditDetails\",\n \"description\": \"The auditDetails object - encapsulates channel data that is relevant for YouTube Partners during the - audit process.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"copyrightStrikesGoodStanding\": {\n \"description\": \"Whether - or not the channel has any copyright strikes.\",\n \"type\": \"boolean\"\n - \ },\n \"contentIdClaimsGoodStanding\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the channel has - any unresolved claims.\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n }\n }\n },\n - \ \"InvideoBranding\": {\n \"description\": \"LINT.IfChange Describes - an invideo branding.\",\n \"type\": \"object\",\n \"id\": \"InvideoBranding\",\n - \ \"properties\": {\n \"imageUrl\": {\n \"description\": - \"The url of the uploaded image. Only used in apiary to api communication.\",\n - \ \"type\": \"string\"\n },\n \"timing\": {\n \"description\": - \"The temporal position within the video where watermark will be displayed.\",\n - \ \"$ref\": \"InvideoTiming\"\n },\n \"position\": {\n - \ \"$ref\": \"InvideoPosition\",\n \"description\": \"The - spatial position within the video where the branding watermark will be displayed.\"\n - \ },\n \"imageBytes\": {\n \"format\": \"byte\",\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"type\": \"string\"\n },\n \"targetChannelId\": {\n - \ \"description\": \"The channel to which this branding links. If - not present it defaults to the current channel.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"MemberListResponse\": {\n \"id\": \"MemberListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#memberListResponse\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Member\"\n },\n \"description\": \"A list of members that - match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelSnippet\": {\n \"properties\": {\n \"localized\": - {\n \"description\": \"Localized title and description, read-only.\",\n - \ \"$ref\": \"ChannelLocalization\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel's default title and description.\"\n },\n \"country\": - {\n \"description\": \"The country of the channel.\",\n \"type\": - \"string\"\n },\n \"customUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The custom url of the channel.\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\"\n },\n - \ \"title\": {\n \"description\": \"The channel's title.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the channel was created.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the channel.\"\n }\n },\n \"description\": \"Basic details - about a channel, including title, description and thumbnails.\",\n \"id\": - \"ChannelSnippet\",\n \"type\": \"object\"\n },\n \"PlaylistPlayer\": - {\n \"id\": \"PlaylistPlayer\",\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"InvideoPosition\": {\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"cornerPosition\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\",\n - \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ]\n },\n - \ \"type\": {\n \"description\": \"Defines the position type.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\"\n - \ ],\n \"enum\": [\n \"corner\"\n ]\n - \ }\n },\n \"id\": \"InvideoPosition\"\n },\n \"ThirdPartyLinkStatus\": - {\n \"description\": \"The third-party link status object contains information - about the status of the link.\",\n \"type\": \"object\",\n \"properties\": - {\n \"linkStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ]\n }\n - \ },\n \"id\": \"ThirdPartyLinkStatus\"\n },\n \"SuperStickerMetadata\": - {\n \"type\": \"object\",\n \"id\": \"SuperStickerMetadata\",\n - \ \"properties\": {\n \"altText\": {\n \"type\": \"string\",\n - \ \"description\": \"Internationalized alt text that describes the - sticker image and any animation associated with it.\"\n },\n \"altTextLanguage\": - {\n \"description\": \"Specifies the localization language in which - the alt text is returned.\",\n \"type\": \"string\"\n },\n - \ \"stickerId\": {\n \"type\": \"string\",\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\"\n - \ }\n }\n },\n \"VideoProjectDetails\": {\n \"id\": - \"VideoProjectDetails\",\n \"type\": \"object\",\n \"properties\": - {},\n \"description\": \"DEPRECATED. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"VideoSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"categoryId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube video category associated with the video.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the video belongs to.\"\n },\n \"liveBroadcastContent\": - {\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ]\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the videos's default snippet.\"\n - \ },\n \"localized\": {\n \"description\": \"Localized - snippet selected with the hl parameter. If no such localization exists, this - field is populated with the default snippet. (Read-only)\",\n \"$ref\": - \"VideoLocalization\"\n },\n \"description\": {\n \"description\": - \"The video's description. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that the video - was uploaded to.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the video was uploaded.\"\n - \ },\n \"defaultAudioLanguage\": {\n \"description\": - \"The default_audio_language property specifies the language spoken in the - video's default audio track.\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"A map of thumbnail images associated with the video. 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.\"\n },\n \"title\": - {\n \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"tags\": - {\n \"description\": \"A list of keyword tags associated with the - video. Tags may contain spaces.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"description\": - \"Basic details about a video, including title, description, uploader, thumbnails - and category.\",\n \"id\": \"VideoSnippet\"\n },\n \"VideoSuggestions\": - {\n \"type\": \"object\",\n \"id\": \"VideoSuggestions\",\n \"properties\": - {\n \"editorSuggestions\": {\n \"type\": \"array\",\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\",\n \"items\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ],\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ]\n - \ }\n },\n \"processingHints\": {\n \"type\": - \"array\",\n \"items\": {\n \"enumDescriptions\": [\n - \ \"The MP4 file is not streamable, this will slow down the processing. - MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of suggestions that may - improve YouTube's ability to process the video.\"\n },\n \"processingWarnings\": - {\n \"type\": \"array\",\n \"description\": \"A list of - reasons why YouTube may have difficulty transcoding the uploaded video or - that might result in an erroneous transcoding. These warnings are generated - before YouTube actually processes the uploaded video file. In addition, they - identify issues that are unlikely to cause the video processing to fail but - that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n - \ \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ]\n }\n },\n \"processingErrors\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"enum\": - [\n \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n - \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n - \ \"unsupportedSpatialAudioLayout\"\n ],\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of errors that will prevent YouTube from - successfully processing the uploaded video video. These errors indicate that, - regardless of the video's current processing status, eventually, that status - will almost certainly be failed.\"\n },\n \"tagSuggestions\": - {\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"description\": \"A list of keyword tags that could - be added to the video's metadata to increase the likelihood that users will - locate your video when searching or browsing on YouTube.\",\n \"type\": - \"array\"\n }\n },\n \"description\": \"Specifies suggestions - on how to improve video content, including encoding hints, tag suggestions, - and editor suggestions.\"\n },\n \"VideoProcessingDetails\": {\n \"type\": - \"object\",\n \"description\": \"Describes processing status and progress - and availability of some other Video resource parts.\",\n \"properties\": - {\n \"processingFailureReason\": {\n \"description\": \"The - reason that YouTube failed to process the video. This property will only have - a value if the processingStatus property's value is failed.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ]\n },\n \"processingStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"description\": \"The - video's processing status. This value indicates whether YouTube was able to - process the video or if the video is still being processed.\"\n },\n - \ \"fileDetailsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether file details are - available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\"\n },\n - \ \"processingIssuesAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether video editing suggestions, - which might improve video quality or the playback experience, are available - for the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"tagSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether keyword (tag) - suggestions are available for the video. Tags can be added to a video's metadata - to make it easier for other users to find the video. You can retrieve these - suggestions by requesting the suggestions part in your videos.list() request.\",\n - \ \"type\": \"string\"\n },\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n },\n - \ \"processingProgress\": {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"The processingProgress object contains information - about the progress YouTube has made in processing the video. The values are - really only relevant if the video's processing status is processing.\"\n }\n - \ },\n \"id\": \"VideoProcessingDetails\"\n },\n \"I18nRegion\": - {\n \"id\": \"I18nRegion\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the i18n region, such as region code and human-readable name.\",\n \"$ref\": - \"I18nRegionSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"default\": \"youtube#i18nRegion\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A *i18nRegion* resource identifies a region where - YouTube is available.\"\n },\n \"LiveBroadcastSnippet\": {\n \"description\": - \"Basic broadcast information.\",\n \"id\": \"LiveBroadcastSnippet\",\n - \ \"properties\": {\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the broadcast was added - to YouTube's live broadcast schedule.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"scheduledStartTime\": - {\n \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the broadcast. For each nested object in this object, the - key is the name of the thumbnail image, and the value is an object that contains - other information about the thumbnail.\"\n },\n \"description\": - {\n \"description\": \"The broadcast's description. As with the title, - you can set this field by modifying the broadcast resource or by setting the - description field of the corresponding video resource.\",\n \"type\": - \"string\"\n },\n \"scheduledEndTime\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - is scheduled to end.\",\n \"format\": \"date-time\"\n },\n - \ \"isDefaultBroadcast\": {\n \"description\": \"Indicates - whether this broadcast is the default broadcast. Internal only.\",\n \"type\": - \"boolean\"\n },\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The id of the live chat for this broadcast.\"\n - \ },\n \"actualEndTime\": {\n \"description\": \"The - date and time that the broadcast actually ended. This information is only - available once the broadcast's state is complete.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"actualStartTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast actually started. This information is only available - once the broadcast's state is live.\",\n \"format\": \"date-time\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelContentOwnerDetails\": - {\n \"type\": \"object\",\n \"id\": \"ChannelContentOwnerDetails\",\n - \ \"properties\": {\n \"contentOwner\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the content owner linked - to the channel.\"\n },\n \"timeLinked\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the channel - was linked to the content owner.\",\n \"format\": \"date-time\"\n - \ }\n },\n \"description\": \"The contentOwnerDetails object - encapsulates channel data that is relevant for YouTube Partners linked with - the channel.\"\n },\n \"PlaylistSnippet\": {\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails.\",\n - \ \"id\": \"PlaylistSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the playlist.\"\n },\n \"localized\": {\n \"$ref\": - \"PlaylistLocalization\",\n \"description\": \"Localized title and - description, read-only.\"\n },\n \"tags\": {\n \"description\": - \"Keyword tags associated with the playlist.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"thumbnailVideoId\": {\n \"description\": \"Note: if the - playlist has a custom thumbnail, this field will not be populated. The video - id selected by the user that will be used as the thumbnail of this playlist. - This field defaults to the first publicly viewable video in the playlist, - if: 1. The user has never selected a video to be the thumbnail of the playlist. - 2. The user selects a video to be the thumbnail, and then removes that video - from the playlist. 3. The user selects a non-owned video to be the thumbnail, - but that video becomes private, or gets deleted.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"description\": \"The - channel title of the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the playlist was created.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The playlist's - description.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the playlist's default - title and description.\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"title\": {\n \"description\": - \"The playlist's title.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n }\n - \ }\n },\n \"ActivityContentDetails\": {\n \"description\": - \"Details about the content of an activity: the video that was shared, the - channel that was subscribed to, etc.\",\n \"properties\": {\n \"upload\": - {\n \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\",\n - \ \"$ref\": \"ActivityContentDetailsUpload\"\n },\n \"favorite\": - {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n \"description\": - \"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.\"\n - \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\"\n },\n \"subscription\": {\n \"$ref\": - \"ActivityContentDetailsSubscription\",\n \"description\": \"The - subscription object contains information about a channel that a user subscribed - to. This property is only present if the snippet.type is subscription.\"\n - \ },\n \"social\": {\n \"$ref\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"The social object contains details about a social - network post. This property is only present if the snippet.type is social.\"\n - \ },\n \"channelItem\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsChannelItem\"\n },\n \"bulletin\": {\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n },\n - \ \"like\": {\n \"$ref\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"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.\"\n },\n \"promotedItem\": {\n - \ \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\",\n \"$ref\": \"ActivityContentDetailsPromotedItem\"\n - \ },\n \"playlistItem\": {\n \"description\": \"The - playlistItem object contains information about a new playlist item. This property - is only present if the snippet.type is playlistItem.\",\n \"$ref\": - \"ActivityContentDetailsPlaylistItem\"\n },\n \"comment\": {\n - \ \"$ref\": \"ActivityContentDetailsComment\",\n \"description\": - \"The comment object contains information about a resource that received a - comment. This property is only present if the snippet.type is comment.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetails\"\n - \ },\n \"SearchResult\": {\n \"description\": \"A search result - contains information about a YouTube video, channel, or playlist that matches - the search parameters specified in an API request. While a search result points - to a uniquely identifiable resource, like a video, it does not have its own - persistent data.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about a search result, such as its title or - description. For example, if the search result is a video, then the title - will be the video's title and the description will be the video's description.\",\n - \ \"$ref\": \"SearchResultSnippet\"\n },\n \"kind\": - {\n \"default\": \"youtube#searchResult\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#searchResult\\\".\"\n }\n },\n \"id\": - \"SearchResult\"\n },\n \"ResourceId\": {\n \"type\": \"object\",\n - \ \"description\": \"A resource id is a generic reference that points - to another YouTube resource.\",\n \"properties\": {\n \"playlistId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the referred resource, if that resource is a playlist. This property is only - present if the resourceId.kind value is youtube#playlist.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"The type of the API resource.\",\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ResourceId\"\n },\n \"MembershipsDetails\": {\n \"id\": - \"MembershipsDetails\",\n \"properties\": {\n \"membershipsDurationAtLevels\": - {\n \"description\": \"Data about memberships duration on particular - pricing levels.\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ },\n \"type\": \"array\"\n },\n \"highestAccessibleLevel\": - {\n \"type\": \"string\",\n \"description\": \"Id of the - highest level that the user has access to at the moment.\"\n },\n \"accessibleLevels\": - {\n \"description\": \"Ids of all levels that the user has access - to. This includes the currently active level and all other levels that are - included because of a higher purchase.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"description\": \"Display name for the highest level that the - user has access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"membershipsDuration\": {\n \"description\": \"Data about - memberships duration without taking into consideration pricing levels.\",\n - \ \"$ref\": \"MembershipsDuration\"\n }\n },\n \"type\": - \"object\"\n },\n \"LocalizedString\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"language\": {\n \"type\": \"string\"\n - \ },\n \"value\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LocalizedString\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"description\": \"Basic details about a subscription's subscriber - including title, description, channel ID and thumbnails.\",\n \"id\": - \"SubscriptionSubscriberSnippet\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the subscriber.\"\n },\n \"thumbnails\": {\n \"description\": - \"Thumbnails for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel ID of the subscriber.\"\n },\n \"description\": - {\n \"description\": \"The description of the subscriber.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"Playlist\": - {\n \"properties\": {\n \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n - \ \"description\": \"The player object contains information that you - would use to play the playlist in an embedded player.\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"additionalProperties\": {\n - \ \"$ref\": \"PlaylistLocalization\"\n },\n \"description\": - \"Localizations for different languages\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlist\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the playlist, such as its title and description.\",\n - \ \"$ref\": \"PlaylistSnippet\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"status\": {\n \"description\": - \"The status object contains status information for the playlist.\",\n \"$ref\": - \"PlaylistStatus\"\n }\n },\n \"description\": \"A *playlist* - resource represents a YouTube playlist. A playlist is a collection of videos - that can be viewed sequentially and shared with other users. A playlist can - contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"type\": \"object\",\n \"id\": - \"Playlist\"\n },\n \"CommentSnippet\": {\n \"description\": \"Basic - details about a comment, such as its author and text.\",\n \"id\": \"CommentSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"textDisplay\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"authorDisplayName\": {\n \"description\": \"The name of - the user who posted the comment.\",\n \"type\": \"string\"\n },\n - \ \"viewerRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"description\": \"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.\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"updatedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the comment was last updated.\"\n },\n \"authorChannelUrl\": - {\n \"type\": \"string\",\n \"description\": \"Link to the - author's YouTube channel, if any.\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"The ID of the video the comment refers to, - if any.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the comment was originally - published.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"parentId\": {\n \"type\": \"string\",\n \"description\": - \"The unique id of the parent comment, only set for replies.\"\n },\n - \ \"moderationStatus\": {\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment is - awaiting review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"description\": \"The comment's - moderation status. Will not be set if the comments were requested through - the id filter.\"\n },\n \"textOriginal\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"canRate\": {\n \"description\": - \"Whether the current viewer can rate this comment.\",\n \"type\": - \"boolean\"\n },\n \"authorChannelId\": {\n \"$ref\": - \"CommentSnippetAuthorChannelId\"\n },\n \"likeCount\": {\n - \ \"description\": \"The total number of likes this comment has received.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n - \ }\n },\n \"TestItem\": {\n \"properties\": {\n \"id\": - {\n \"type\": \"string\"\n },\n \"featuredPart\": {\n - \ \"type\": \"boolean\"\n },\n \"snippet\": {\n \"$ref\": - \"TestItemTestItemSnippet\"\n },\n \"gaia\": {\n \"format\": - \"int64\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"TestItem\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"id\": \"ActivityContentDetailsSocial\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\"\n },\n \"imageUrl\": - {\n \"description\": \"An image of the post's author.\",\n \"type\": - \"string\"\n },\n \"referenceUrl\": {\n \"description\": - \"The URL of the social network post.\",\n \"type\": \"string\"\n - \ },\n \"author\": {\n \"description\": \"The author - of the social network post.\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ],\n \"description\": \"The name - of the social network.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Details about a social - network post.\"\n },\n \"VideoContentDetails\": {\n \"properties\": - {\n \"dimension\": {\n \"type\": \"string\",\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\"\n },\n \"countryRestriction\": {\n \"$ref\": - \"AccessPolicy\",\n \"description\": \"The countryRestriction object - contains information about the countries where a video is (or is not) viewable.\"\n - \ },\n \"duration\": {\n \"type\": \"string\",\n \"description\": - \"The length of the video. The tag value is an ISO 8601 duration in the format - PT#M#S, in which the letters PT indicate that the value specifies a period - of time, and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"licensedContent\": {\n \"description\": \"The value of - is_license_content indicates whether the video is licensed content.\",\n \"type\": - \"boolean\"\n },\n \"caption\": {\n \"description\": - \"The value of captions indicates whether the video has captions or not.\",\n - \ \"enum\": [\n \"true\",\n \"false\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"hasCustomThumbnail\": - {\n \"description\": \"Indicates whether the video uploader has provided - a custom thumbnail image for the video. This property is only visible to the - video uploader.\",\n \"type\": \"boolean\"\n },\n \"definition\": - {\n \"description\": \"The value of definition indicates whether - the video is available in high definition or only in standard definition.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ]\n },\n \"contentRating\": {\n - \ \"description\": \"Specifies the ratings that the video received - under various rating schemes.\",\n \"$ref\": \"ContentRating\"\n - \ },\n \"regionRestriction\": {\n \"description\": \"The - regionRestriction object contains information about the countries where a - video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"projection\": - {\n \"description\": \"Specifies the projection format of the video.\",\n - \ \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoContentDetails\",\n \"description\": - \"Details about the content of a YouTube Video.\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"description\": \"Basic details about a video category, such as - its localized title.\",\n \"properties\": {\n \"label\": {\n \"description\": - \"The localized label belonging to this abuse report reason.\",\n \"type\": - \"string\"\n },\n \"secondaryReasons\": {\n \"description\": - \"The secondary reasons associated with this reason, if any are available. - (There might be 0 or more.)\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportSecondaryReason\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"type\": - \"object\"\n },\n \"CommentListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"CommentListResponse\",\n \"properties\": {\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - comments that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Comment\"\n }\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"SubscriptionSnippet\": {\n \"description\": \"Basic details about - a subscription, including title, description and thumbnails of the subscribed - item.\",\n \"type\": \"object\",\n \"id\": \"SubscriptionSnippet\",\n - \ \"properties\": {\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The id object contains information - about the channel that the user subscribed to.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n }\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the subscriber's channel.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the subscription was - created.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The subscription's title.\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the subscription belongs to.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The subscription's details.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"WatchSettings\": {\n \"description\": \"Branding - properties for the watch. All deprecated.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"backgroundColor\": {\n \"type\": - \"string\",\n \"description\": \"The text color for the video watch - page's branded area.\"\n },\n \"textColor\": {\n \"description\": - \"The background color for the video watch page's branded area.\",\n \"type\": - \"string\"\n },\n \"featuredPlaylistId\": {\n \"description\": - \"An ID that uniquely identifies a playlist that displays next to the video - player.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"WatchSettings\"\n },\n \"ChannelSectionLocalization\": {\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel section's title.\"\n }\n },\n - \ \"id\": \"ChannelSectionLocalization\",\n \"type\": \"object\",\n - \ \"description\": \"ChannelSection localization setting\"\n },\n \"ChannelListResponse\": - {\n \"type\": \"object\",\n \"id\": \"ChannelListResponse\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"Channel\"\n },\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelListResponse\"\n - \ }\n }\n },\n \"LiveChatBan\": {\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\",\n - \ \"id\": \"LiveChatBan\",\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the ban.\",\n \"$ref\": - \"LiveChatBanSnippet\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the ban.\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatBan\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoMonetizationDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"access\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - value of access indicates whether the video can be monetized or not.\"\n }\n - \ },\n \"id\": \"VideoMonetizationDetails\",\n \"description\": - \"Details about monetization of a YouTube Video.\"\n },\n \"LiveChatModeratorSnippet\": - {\n \"properties\": {\n \"liveChatId\": {\n \"description\": - \"The ID of the live chat this moderator can act on.\",\n \"type\": - \"string\"\n },\n \"moderatorDetails\": {\n \"description\": - \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\"\n - \ },\n \"ContentRating\": {\n \"id\": \"ContentRating\",\n \"type\": - \"object\",\n \"description\": \"Ratings schemes. The country-specific - ratings are mostly for movies and shows. LINT.IfChange\",\n \"properties\": - {\n \"ifcoRating\": {\n \"description\": \"The video's Irish - Film Classification Office (IFCO - Ireland) rating. See the IFCO website for - more information.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"15A\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ]\n },\n \"fpbRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X18\",\n - \ \"XX\",\n \"\",\n \"10\"\n ],\n - \ \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\"\n },\n \"lsfRating\": {\n \"description\": - \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n - \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n - \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ]\n },\n \"skfilmRating\": {\n \"enum\": - [\n \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n - \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ],\n \"description\": - \"The video's rating in Slovakia.\"\n },\n \"agcomRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\"\n - \ },\n \"egfilmRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"description\": \"The - video's rating in Egypt.\",\n \"type\": \"string\"\n },\n - \ \"rtcRating\": {\n \"description\": \"The video's General - Directorate of Radio, Television and Cinematography (Mexico) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n - \ \"D\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ]\n },\n - \ \"fcoRating\": {\n \"enum\": [\n \"fcoUnspecified\",\n - \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n - \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n - \ ],\n \"description\": \"The video's rating from Hong Kong's - Office for Film, Newspaper and Article Administration.\",\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"rteRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"enum\": [\n - \ \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"description\": \"The video's rating from Ireland's - Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"type\": \"string\"\n },\n - \ \"mdaRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n - \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n - \ \"mdaR21\",\n \"mdaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Singapore's - Media Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\"\n },\n \"chvrsRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ],\n \"enum\": [\n - \ \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\"\n },\n - \ \"ilfilmRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n - \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Israel.\"\n },\n - \ \"csaRating\": {\n \"description\": \"The video's rating - from France's Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast - content.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ],\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ]\n },\n \"cccRating\": {\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n - \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Todo - espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n - \ \"14+\",\n \"18+\",\n \"18+ - contenido - excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ]\n },\n \"grfilmRating\": {\n \"enum\": - [\n \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n - \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n - \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating in Greece.\"\n },\n \"chfilmRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating in Switzerland.\",\n - \ \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n - \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n - \ \"chfilm18\",\n \"chfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"kijkwijzerRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating - from the Nederlands Instituut voor de Classificatie van Audiovisuele Media - (Netherlands).\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n \"kijkwijzer6\",\n - \ \"kijkwijzer9\",\n \"kijkwijzer12\",\n \"kijkwijzer16\",\n - \ \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n ]\n - \ },\n \"tvpgRating\": {\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"description\": \"The - video's TV Parental Guidelines (TVPG) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"mcstRating\": {\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"description\": - \"The video's rating system for Vietnam - MCST\",\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"nfrcRating\": {\n \"description\": \"The video's rating - from the Bulgarian National Film Center.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n - \ \"\"\n ],\n \"enum\": [\n \"nfrcUnspecified\",\n - \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n - \ \"nfrcX\",\n \"nfrcUnrated\"\n ]\n },\n - \ \"mccypRating\": {\n \"description\": \"The video's rating - from the Danish Film Institute's (Det Danske Filminstitut) Media Council for - Children and Young People.\",\n \"type\": \"string\",\n \"enum\": - [\n \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n - \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ]\n },\n \"bfvcRating\": {\n \"description\": - \"The video's rating from Thailand's Board of Film and Video Censors.\",\n - \ \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"kmrbRating\": {\n \"description\": \"The video's Korea - Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. - The KMRB rates videos in South Korea.\",\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"anatelRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ],\n \"enum\": - [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ],\n \"description\": \"The video's Anatel (Asociaci\xF3n - Nacional de Televisi\xF3n) rating for Chilean television.\",\n \"type\": - \"string\"\n },\n \"russiaRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"description\": \"The video's National Film Registry - of the Russian Federation (MKRF - Russia) rating.\"\n },\n \"bbfcRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - British Board of Film Classification (BBFC) rating.\",\n \"enum\": - [\n \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ]\n - \ },\n \"oflcRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"description\": \"The video's Office of Film and - Literature Classification (OFLC - New Zealand) rating.\",\n \"enum\": - [\n \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n - \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n - \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n - \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n - \ ],\n \"type\": \"string\"\n },\n \"ytRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\"\n },\n - \ \"nbcplRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating in Poland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ]\n },\n \"mibacRating\": - {\n \"description\": \"The video's rating from the Ministero dei - Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"fpbRatingReasons\": {\n \"items\": - {\n \"type\": \"string\",\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"South Africa rating content descriptors.\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"description\": - \"Reasons that explain why the video received its FPB (South Africa) rating.\",\n - \ \"type\": \"array\"\n },\n \"mtrcbRating\": {\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"moctwRating\": - {\n \"description\": \"The video's rating from Taiwan's Ministry - of Culture (\u6587\u5316\u90E8).\",\n \"type\": \"string\",\n \"enum\": - [\n \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n - \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n - \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ]\n },\n \"eirinRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ],\n \"enum\": - [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ],\n \"description\": \"The video's Eirin (\u6620\u502B) - rating. Eirin is the Japanese rating system.\",\n \"type\": \"string\"\n - \ },\n \"mpaaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"description\": \"The video's Motion Picture Association - of America (MPAA) rating.\",\n \"enum\": [\n \"mpaaUnspecified\",\n - \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n - \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n - \ \"mpaaUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"ecbmctRating\": {\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ],\n \"description\": - \"Rating system in Turkey - Evaluation and Classification Board of the Ministry - of Culture and Tourism\"\n },\n \"cncRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"Rating system in France - Commission de classification cinematographique\",\n - \ \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ]\n },\n \"eefilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n - \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n - \ \"K-16\",\n \"\"\n ],\n \"enum\": - [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n \"eefilmL\",\n - \ \"eefilmMs6\",\n \"eefilmK6\",\n \"eefilmMs12\",\n - \ \"eefilmK12\",\n \"eefilmK14\",\n \"eefilmK16\",\n - \ \"eefilmUnrated\"\n ],\n \"description\": \"The - video's rating in Estonia.\",\n \"type\": \"string\"\n },\n - \ \"pefilmRating\": {\n \"description\": \"The video's rating - in Peru.\",\n \"enumDescriptions\": [\n \"\",\n \"PT\",\n - \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ]\n },\n - \ \"smsaRating\": {\n \"enum\": [\n \"smsaUnspecified\",\n - \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n - \ \"smsa15\",\n \"smsaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"type\": \"string\"\n },\n \"nbcRating\": {\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n - \ \"18+R\",\n \"PU\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ]\n },\n - \ \"nmcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"PG-15\",\n - \ \"15+\",\n \"18+\",\n \"18TC\",\n \"\"\n - \ ],\n \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The National Media Council ratings system for - United Arab Emirates.\"\n },\n \"cnaRating\": {\n \"enum\": - [\n \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n - \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"description\": \"The - video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"fmocRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"E\",\n \"\"\n ],\n - \ \"description\": \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"resorteviolenciaRating\": - {\n \"description\": \"The video's rating in Venezuela.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ],\n \"enum\": - [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"fskRating\": - {\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft - (FSK - Germany) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"FSK 0\",\n \"FSK 6\",\n \"FSK 12\",\n - \ \"FSK 16\",\n \"FSK 18\",\n \"\"\n ]\n - \ },\n \"mekuRating\": {\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti - (National Audiovisual Institute).\"\n },\n \"medietilsynetRating\": - {\n \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Medietilsynet, the Norwegian Media Authority.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n - \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"\"\n ]\n },\n \"menaMpaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To - keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\",\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"rcnofRating\": {\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\",\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"djctqRating\": - {\n \"description\": \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, - Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enum\": - [\n \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n - \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n - \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n - \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n - \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n - \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n - \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n - \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"cscfRating\": {\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Luxembourg's - Commission de surveillance de la classification des films (CSCF).\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"kfcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"enum\": - [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"icaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ],\n - \ \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\"\n },\n \"cbfcRating\": - {\n \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n - \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n - \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n - \ \"cbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Central Board of Film Certification - (CBFC - India) rating.\"\n },\n \"nkclvRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Nacion\xE3lais Kino - centrs (National Film Centre of Latvia).\",\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"cceRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"4\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\",\n \"14\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ],\n \"description\": \"The video's rating from Portugal's - Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\"\n },\n \"nfvcbRating\": - {\n \"description\": \"The video's rating from Nigeria's National - Film and Video Censors Board.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ]\n },\n - \ \"czfilmRating\": {\n \"description\": \"The video's rating - in the Czech Republic.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"12\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"czfilmUnspecified\",\n \"czfilmU\",\n \"czfilm12\",\n - \ \"czfilm14\",\n \"czfilm18\",\n \"czfilmUnrated\"\n - \ ]\n },\n \"smaisRating\": {\n \"enum\": [\n - \ \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n - \ \"smais12\",\n \"smais14\",\n \"smais16\",\n - \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"description\": - \"The video's rating in Iceland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"L\",\n \"7\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"catvRating\": {\n \"description\": - \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ],\n \"type\": - \"string\"\n },\n \"fcbmRating\": {\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"enum\": - [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"djctqRatingReasons\": {\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"enum\": - [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Brazil - rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia - (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n - \ \"Conte\xFAdo sexual (Sexual content)\",\n \"Nudez - (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo Expl\xEDcito - (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ]\n }\n },\n \"bmukkRating\": - {\n \"description\": \"The video's rating from the Austrian Board - of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst und Kultur).\",\n - \ \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"mocRating\": {\n \"enum\": [\n - \ \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"description\": \"The video's Ministerio de Cultura - (Colombia) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ]\n },\n \"catvfrRating\": - {\n \"description\": \"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.\",\n - \ \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ]\n },\n \"mpaatRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GB\",\n \"RB\"\n ],\n - \ \"description\": \"The rating system for trailer, DVD, and Ad in - the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ]\n },\n - \ \"mccaaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG\",\n \"12A\",\n \"12\",\n - \ \"14 - this rating was removed from the new classification structure - introduced in 2013.\",\n \"15\",\n \"16 - this rating - was removed from the new classification structure introduced in 2013.\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"type\": - \"string\",\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n - \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n - \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n - \ \"mccaa18\",\n \"mccaaUnrated\"\n ]\n },\n - \ \"incaaRating\": {\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\"\n },\n \"acbRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n - \ \"description\": \"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.\",\n \"enum\": - [\n \"acbUnspecified\",\n \"acbE\",\n \"acbP\",\n - \ \"acbC\",\n \"acbG\",\n \"acbPg\",\n \"acbM\",\n - \ \"acbMa15plus\",\n \"acbR18plus\",\n \"acbUnrated\"\n - \ ]\n },\n \"cicfRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Commission de Contr\xF4le des Films (Belgium).\",\n \"enum\": - [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"type\": - \"string\"\n }\n }\n },\n \"VideoTopicDetails\": {\n \"id\": - \"VideoTopicDetails\",\n \"description\": \"Freebase topic information - related to the video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"topicIds\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n },\n \"relevantTopicIds\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"Similar to topic_id, except that these topics - are merely relevant to the video. These are topics that may be mentioned in, - or appear in the video. You can retrieve information about each topic using - Freebase Topic API.\"\n },\n \"topicCategories\": {\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n }\n },\n \"AccessPolicy\": - {\n \"properties\": {\n \"allowed\": {\n \"description\": - \"The value of allowed indicates whether the access to the policy is allowed - or denied by default.\",\n \"type\": \"boolean\"\n },\n \"exception\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of region - codes that identify countries where the default policy do not apply.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"AccessPolicy\",\n \"description\": - \"Rights management policy for YouTube resources.\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"type\": \"object\",\n \"description\": \"The id of the author's - YouTube channel, if any.\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"SubscriptionListResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Subscription\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of subscriptions that match - the request criteria.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#subscriptionListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"SubscriptionListResponse\"\n - \ },\n \"Video\": {\n \"properties\": {\n \"monetizationDetails\": - {\n \"description\": \"The monetizationDetails object encapsulates - information about the monetization status of the video.\",\n \"$ref\": - \"VideoMonetizationDetails\"\n },\n \"suggestions\": {\n \"$ref\": - \"VideoSuggestions\",\n \"description\": \"The suggestions object - encapsulates suggestions that identify opportunities to improve the video - quality or the metadata for the uploaded video. This data can only be retrieved - by the video owner.\"\n },\n \"fileDetails\": {\n \"$ref\": - \"VideoFileDetails\",\n \"description\": \"The fileDetails object - encapsulates information about the video file that was uploaded to YouTube, - including the file's resolution, duration, audio and video codecs, stream - bitrates, and more. This data can only be retrieved by the video owner.\"\n - \ },\n \"topicDetails\": {\n \"$ref\": \"VideoTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the video.\"\n },\n \"localizations\": - {\n \"description\": \"The localizations object contains localized - versions of the basic details about the video, such as its title and description.\",\n - \ \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"type\": \"object\"\n },\n \"player\": - {\n \"description\": \"The player object contains information that - you would use to play the video in an embedded player.\",\n \"$ref\": - \"VideoPlayer\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#video\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"type\": \"string\"\n },\n \"recordingDetails\": - {\n \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\",\n \"$ref\": - \"VideoRecordingDetails\"\n },\n \"snippet\": {\n \"$ref\": - \"VideoSnippet\",\n \"description\": \"The snippet object contains - basic details about the video, such as its title, description, and category.\"\n - \ },\n \"projectDetails\": {\n \"description\": \"The - projectDetails object contains information about the project specific video - metadata. b/157517979: This part was never populated after it was added. However, - it sees non-zero traffic because there is generated client code in the wild - that refers to it [1]. We keep this field and do NOT remove it because otherwise - V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"id\": {\n - \ \"annotations\": {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n },\n - \ \"processingDetails\": {\n \"description\": \"The processingDetails - object encapsulates information about YouTube's progress in processing the - uploaded video file. The properties in the object identify the current processing - status and an estimate of the time remaining until YouTube finishes processing - the video. This part also indicates whether different types of data or content, - such as file details or thumbnail images, are available for the video. The - processingProgress object is designed to be polled so that the video uploaded - can track the progress that YouTube has made in processing the uploaded video - file. This data can only be retrieved by the video owner.\",\n \"$ref\": - \"VideoProcessingDetails\"\n },\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"statistics\": - {\n \"description\": \"The statistics object contains statistics - about the video.\",\n \"$ref\": \"VideoStatistics\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the video's uploading, processing, and privacy statuses.\",\n - \ \"$ref\": \"VideoStatus\"\n },\n \"ageGating\": {\n - \ \"$ref\": \"VideoAgeGating\",\n \"description\": \"Age - restriction details related to a video. This data can only be retrieved by - the video owner.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information about the video content, - including the length of the video and its aspect ratio.\",\n \"$ref\": - \"VideoContentDetails\"\n }\n },\n \"description\": \"A *video* - resource represents a YouTube video.\",\n \"type\": \"object\",\n \"id\": - \"Video\"\n },\n \"ThumbnailDetails\": {\n \"description\": \"Internal - representation of thumbnails for a YouTube resource.\",\n \"id\": \"ThumbnailDetails\",\n - \ \"properties\": {\n \"medium\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The medium quality image for this resource.\"\n - \ },\n \"standard\": {\n \"description\": \"The standard - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"default\": {\n \"description\": \"The default image for - this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"high\": - {\n \"description\": \"The high quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"maxres\": {\n \"description\": - \"The maximum resolution quality image for this resource.\",\n \"$ref\": - \"Thumbnail\"\n }\n },\n \"type\": \"object\"\n },\n \"PlaylistItemSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"title\": - {\n \"description\": \"The item's title.\",\n \"type\": - \"string\"\n },\n \"position\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The order in - which the item appears in the playlist. The value uses a zero-based index, - so the first item has a position of 0, the second item has a position of 1, - and so forth.\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the playlist item belongs to.\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist - item is in.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist item. 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.\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The id object contains information that can be - used to uniquely identify the resource that is included in the playlist as - the playlist item.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n }\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the user that added the item to the playlist.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the item was added to - the playlist.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The item's description.\"\n },\n - \ \"videoOwnerChannelTitle\": {\n \"description\": \"Channel - title for the channel this video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"videoOwnerChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel id for the channel this video belongs - to.\"\n }\n },\n \"description\": \"Basic details about a - playlist, including title, description and thumbnails. Basic details of a - YouTube Playlist item provided by the author. Next ID: 15\",\n \"id\": - \"PlaylistItemSnippet\"\n },\n \"LiveBroadcastStatistics\": {\n \"properties\": - {\n \"totalChatCount\": {\n \"description\": \"The total number - of live chat messages currently on the broadcast. The property and its value - will be present if the broadcast is public, has the live chat feature enabled, - and has at least one message. Note that this field will not be filled after - the broadcast ends. So this property would not identify the number of chat - messages for an archived video of a completed live broadcast.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"concurrentViewers\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"Statistics about the live broadcast. These represent - a snapshot of the values at the time of the request. Statistics are only returned - for live broadcasts.\"\n },\n \"Comment\": {\n \"description\": - \"A *comment* represents a single YouTube comment.\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"CommentSnippet\",\n \"description\": \"The snippet object contains - basic details about the comment.\"\n },\n \"kind\": {\n \"default\": - \"youtube#comment\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n - \ }\n },\n \"id\": \"Comment\",\n \"type\": \"object\"\n - \ },\n \"PlaylistContentDetails\": {\n \"properties\": {\n \"itemCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The number - of videos in the playlist.\",\n \"type\": \"integer\"\n }\n - \ },\n \"id\": \"PlaylistContentDetails\",\n \"type\": \"object\"\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"properties\": {\n - \ \"amountMicros\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The amount of the fund.\"\n },\n - \ \"amountDisplayString\": {\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\",\n \"type\": - \"string\"\n },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the user to this fan funding - event.\"\n },\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the fund was made.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"VideoContentDetailsRegionRestriction\": {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"properties\": {\n \"allowed\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\",\n \"type\": - \"array\"\n },\n \"blocked\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ChannelConversionPing\": {\n \"id\": - \"ChannelConversionPing\",\n \"description\": \"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.\",\n \"type\": - \"object\",\n \"properties\": {\n \"conversionUrl\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"context\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ],\n \"description\": \"Defines the context of the ping.\"\n - \ }\n }\n },\n \"I18nRegionListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#i18nRegionListResponse\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"I18nRegion\"\n },\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\",\n - \ \"type\": \"array\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n },\n \"id\": \"I18nRegionListResponse\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"properties\": {\n \"giftMembershipsLevelName\": {\n \"description\": - \"The name of the level of the gift memberships purchased by the user. The - Level names are defined by the YouTube channel offering the Membership. In - some situations this field isn't filled.\",\n \"type\": \"string\"\n - \ },\n \"giftMembershipsCount\": {\n \"format\": \"int32\",\n - \ \"description\": \"The number of gift memberships purchased by the - user.\",\n \"type\": \"integer\"\n }\n },\n \"id\": - \"LiveChatMembershipGiftingDetails\",\n \"type\": \"object\"\n },\n - \ \"Member\": {\n \"id\": \"Member\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the member.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"default\": \"youtube#member\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A *member* resource represents - a member for a YouTube channel. A member provides recurring monetary support - to a creator and receives special benefits.\",\n \"type\": \"object\"\n - \ },\n \"ActivitySnippet\": {\n \"id\": \"ActivitySnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about an activity, including - title, description, thumbnails, activity type and group. Next ID: 12\",\n - \ \"properties\": {\n \"description\": {\n \"description\": - \"The description of the resource primarily associated with the activity. - @mutable youtube.activities.insert\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel associated with - the activity.\"\n },\n \"type\": {\n \"description\": - \"The type of activity that the resource describes.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"typeUnspecified\",\n - \ \"upload\",\n \"like\",\n \"favorite\",\n - \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n - \ \"recommendation\",\n \"bulletin\",\n \"social\",\n - \ \"channelItem\",\n \"promotedItem\"\n ]\n - \ },\n \"groupId\": {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the video was uploaded.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel responsible - for this activity\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"title\": {\n \"description\": - \"The title of the resource primarily associated with the activity.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatTextMessageDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"messageText\": - {\n \"type\": \"string\",\n \"description\": \"The user's - message.\"\n }\n },\n \"id\": \"LiveChatTextMessageDetails\"\n - \ },\n \"VideoRecordingDetails\": {\n \"description\": \"Recording - information associated with the video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"locationDescription\": {\n \"description\": \"The text - description of the location where the video was recorded.\",\n \"type\": - \"string\"\n },\n \"location\": {\n \"$ref\": \"GeoPoint\",\n - \ \"description\": \"The geolocation information associated with the - video.\"\n },\n \"recordingDate\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the video was recorded.\"\n }\n },\n \"id\": - \"VideoRecordingDetails\"\n },\n \"VideoFileDetailsAudioStream\": {\n - \ \"properties\": {\n \"codec\": {\n \"type\": \"string\",\n - \ \"description\": \"The audio codec that the stream uses.\"\n },\n - \ \"bitrateBps\": {\n \"type\": \"string\",\n \"description\": - \"The audio stream's bitrate, in bits per second.\",\n \"format\": - \"uint64\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"channelCount\": {\n \"description\": \"The number of audio - channels that the stream contains.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n }\n },\n \"description\": - \"Information about an audio stream.\",\n \"id\": \"VideoFileDetailsAudioStream\",\n - \ \"type\": \"object\"\n },\n \"SearchResultSnippet\": {\n \"properties\": - {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - search result. 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.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The value that YouTube uses to uniquely identify - the channel that published the resource that the search result identifies.\"\n - \ },\n \"description\": {\n \"description\": \"A description - of the search result.\",\n \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"type\": \"string\",\n \"description\": \"It indicates - if the resource (video or channel) has upcoming/active live broadcast content. - Or it's \\\"none\\\" if there is not any upcoming/active live broadcasts.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The live - broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The title of - the search result.\"\n },\n \"channelTitle\": {\n \"description\": - \"The title of the channel that published the resource that the search result - identifies.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The creation date and time of the resource that - the search result identifies.\"\n }\n },\n \"id\": \"SearchResultSnippet\",\n - \ \"description\": \"Basic details about a search result, including title, - description and thumbnails of the item referenced by the search result.\",\n - \ \"type\": \"object\"\n },\n \"ThumbnailSetResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": \"A list of - thumbnails.\",\n \"type\": \"array\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n \"default\": - \"youtube#thumbnailSetResponse\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ThumbnailSetResponse\"\n - \ },\n \"PlaylistItemListResponse\": {\n \"id\": \"PlaylistItemListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of playlist items that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"type\": - \"array\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#playlistItemListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n }\n - \ }\n },\n \"MonitorStreamInfo\": {\n \"id\": \"MonitorStreamInfo\",\n - \ \"description\": \"Settings and Info of the monitor stream\",\n \"type\": - \"object\",\n \"properties\": {\n \"embedHtml\": {\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\",\n \"type\": - \"string\"\n },\n \"enableMonitorStream\": {\n \"type\": - \"boolean\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"This value determines whether the monitor stream - is enabled for the broadcast. If the monitor stream is enabled, then YouTube - will broadcast the event content on a special stream intended only for the - broadcaster's consumption. The broadcaster can use the stream to review the - event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\"\n },\n \"broadcastStreamDelayMs\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"If you have set the enableMonitorStream - property to true, then this property determines the length of the live broadcast - delay.\"\n }\n }\n },\n \"Thumbnail\": {\n \"type\": - \"object\",\n \"properties\": {\n \"height\": {\n \"format\": - \"uint32\",\n \"description\": \"(Optional) Height of the thumbnail - image.\",\n \"type\": \"integer\"\n },\n \"width\": - {\n \"type\": \"integer\",\n \"description\": \"(Optional) - Width of the thumbnail image.\",\n \"format\": \"uint32\"\n },\n - \ \"url\": {\n \"description\": \"The thumbnail image's URL.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A thumbnail is an image representing a YouTube resource.\",\n \"id\": - \"Thumbnail\"\n },\n \"SubscriptionContentDetails\": {\n \"properties\": - {\n \"newItemCount\": {\n \"description\": \"The number of - new items in the subscription since its content was last read.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"totalItemCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The approximate number of items that the subscription points to.\"\n },\n - \ \"activityType\": {\n \"description\": \"The type of activity - this subscription is for (only uploads, everything).\",\n \"type\": - \"string\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Details about - the content to witch a subscription refers.\",\n \"id\": \"SubscriptionContentDetails\"\n - \ },\n \"ActivityContentDetailsPlaylistItem\": {\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"properties\": {\n \"playlistItemId\": {\n \"description\": - \"ID of the item within the playlist.\",\n \"type\": \"string\"\n - \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n },\n \"playlistId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Information about a new playlist item.\"\n - \ },\n \"ChannelToStoreLinkDetails\": {\n \"properties\": {\n \"merchantId\": - {\n \"type\": \"string\",\n \"description\": \"Google Merchant - Center id of the store.\",\n \"format\": \"uint64\"\n },\n - \ \"storeName\": {\n \"type\": \"string\",\n \"description\": - \"Name of the store.\"\n },\n \"storeUrl\": {\n \"type\": - \"string\",\n \"description\": \"Landing page of the store.\"\n }\n - \ },\n \"id\": \"ChannelToStoreLinkDetails\",\n \"type\": \"object\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\"\n },\n \"MembershipsLevelListResponse\": - {\n \"id\": \"MembershipsLevelListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"default\": - \"youtube#membershipsLevelListResponse\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n - \ },\n \"description\": \"A list of pricing levels offered - by a creator to the fans.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatMessageSnippet\": {\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"displayMessage\": - {\n \"description\": \"Contains a string that can be displayed to - the user. If this field is not present the message is silent, at the moment - only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\",\n \"type\": - \"string\"\n },\n \"membershipGiftingDetails\": {\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\",\n \"$ref\": \"LiveChatMembershipGiftingDetails\"\n - \ },\n \"newSponsorDetails\": {\n \"description\": \"Details - about the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. - Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n - \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"superStickerDetails\": - {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\"\n - \ },\n \"memberMilestoneChatDetails\": {\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\",\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"type\": {\n \"description\": \"The type of - message, this will always be present, it determines the contents of the message - as well as which fields will be present.\",\n \"enum\": [\n \"invalidType\",\n - \ \"textMessageEvent\",\n \"tombstone\",\n \"fanFundingEvent\",\n - \ \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"liveChatId\": {\n \"type\": \"string\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"textMessageDetails\": - {\n \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\",\n \"$ref\": \"LiveChatTextMessageDetails\"\n - \ },\n \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n - \ \"description\": \"Details about the Super Chat event, this is only - set if the type is 'superChatEvent'.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the message was orignally - published.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"giftMembershipReceivedDetails\": {\n \"$ref\": - \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": \"Details - about the Gift Membership Received event, this is only set if the type is - 'giftMembershipReceivedEvent'.\"\n },\n \"fanFundingEventDetails\": - {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n - \ },\n \"authorChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\"\n },\n \"userBannedDetails\": {\n \"$ref\": - \"LiveChatUserBannedMessageDetails\"\n },\n \"hasDisplayContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the message has display content that should be displayed to users.\"\n }\n - \ },\n \"description\": \"Next ID: 33\"\n },\n \"ActivityListResponse\": - {\n \"type\": \"object\",\n \"id\": \"ActivityListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"default\": \"youtube#activityListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Activity\"\n },\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n }\n },\n \"Caption\": {\n \"properties\": {\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the caption track.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"CaptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the caption.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"default\": \"youtube#caption\"\n }\n },\n \"description\": - \"A *caption* resource represents a YouTube caption track. A caption track - is associated with exactly one YouTube video.\",\n \"id\": \"Caption\",\n - \ \"type\": \"object\"\n },\n \"I18nRegionSnippet\": {\n \"id\": - \"I18nRegionSnippet\",\n \"description\": \"Basic details about an i18n - region, such as region code and human-readable name.\",\n \"properties\": - {\n \"name\": {\n \"type\": \"string\",\n \"description\": - \"The human-readable name of the region.\"\n },\n \"gl\": {\n - \ \"type\": \"string\",\n \"description\": \"The region code - as a 2-letter ISO country code.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ThirdPartyLinkSnippet\": {\n \"id\": \"ThirdPartyLinkSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic information about - a third party account link, including its type and type-specific information.\",\n - \ \"properties\": {\n \"type\": {\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"description\": - \"Type of the link named after the entities that are being linked.\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\"\n },\n \"channelToStoreLink\": - {\n \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n - \ }\n }\n },\n \"CaptionListResponse\": {\n \"id\": - \"CaptionListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Caption\"\n },\n \"description\": \"A list of captions - that match the request criteria.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"IngestionInfo\": {\n \"type\": - \"object\",\n \"description\": \"Describes information necessary for - ingesting an RTMP, HTTP, or SRT stream.\",\n \"id\": \"IngestionInfo\",\n - \ \"properties\": {\n \"streamName\": {\n \"type\": \"string\",\n - \ \"description\": \"The stream name that YouTube assigns to the video - stream.\"\n },\n \"rtmpsIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\"\n },\n \"backupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The backup ingestion URL that you - should use to stream video to YouTube. You have the option of simultaneously - streaming the content that you are sending to the ingestionAddress to this - URL.\"\n },\n \"ingestionAddress\": {\n \"description\": - \"The primary ingestion URL that you should use to stream video to YouTube. - You must stream video to this URL. Depending on which application or tool - you use to encode your video stream, you may need to enter the stream URL - and stream name separately or you may need to concatenate them in the following - format: *STREAM_URL/STREAM_NAME* \",\n \"type\": \"string\"\n },\n - \ \"rtmpsBackupIngestionAddress\": {\n \"description\": \"This - ingestion url may be used instead of backupIngestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveChatSuperStickerDetails\": {\n \"id\": - \"LiveChatSuperStickerDetails\",\n \"properties\": {\n \"amountMicros\": - {\n \"description\": \"The amount purchased by the user, in micros - (1,750,000 micros = 1.75).\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n },\n \"currency\": - {\n \"description\": \"The currency in which the purchase was made.\",\n - \ \"type\": \"string\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"Information about the Super Sticker.\",\n - \ \"$ref\": \"SuperStickerMetadata\"\n },\n \"tier\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveBroadcast\": {\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the broadcast.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"status\": {\n \"$ref\": - \"LiveBroadcastStatus\",\n \"description\": \"The status object contains - information about the event's status.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"LiveBroadcastContentDetails\",\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveBroadcast\"\n - \ },\n \"snippet\": {\n \"$ref\": \"LiveBroadcastSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the event, including its title, description, start time, and end time.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"statistics\": - {\n \"description\": \"The statistics object contains info about - the event's current stats. These include concurrent viewers and total chat - count. Statistics can change (in either direction) during the lifetime of - an event. Statistics are only returned while the event is live.\",\n \"$ref\": - \"LiveBroadcastStatistics\"\n }\n },\n \"description\": \"A - *liveBroadcast* resource represents an event that will be streamed, via live - video, on YouTube.\",\n \"type\": \"object\",\n \"id\": \"LiveBroadcast\"\n - \ },\n \"I18nLanguage\": {\n \"id\": \"I18nLanguage\",\n \"description\": - \"An *i18nLanguage* resource identifies a UI language currently supported - by YouTube.\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\"\n },\n \"kind\": - {\n \"default\": \"youtube#i18nLanguage\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n language.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"bannedUserDetails\": - {\n \"description\": \"The details of the user that was banned.\",\n - \ \"$ref\": \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": - {\n \"description\": \"The duration of the ban. This property is - only present if the banType is temporary.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"banType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"permanent\",\n \"temporary\"\n - \ ],\n \"description\": \"The type of ban.\"\n }\n - \ }\n },\n \"ChannelSectionListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"default\": \"youtube#channelSectionListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"description\": \"A list of ChannelSections that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ChannelSection\"\n }\n }\n },\n \"id\": \"ChannelSectionListResponse\"\n - \ },\n \"LiveChatModerator\": {\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the moderator.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatModerator\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModerator\\\".\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the moderator.\",\n \"$ref\": - \"LiveChatModeratorSnippet\"\n }\n },\n \"id\": \"LiveChatModerator\",\n - \ \"description\": \"A *liveChatModerator* resource represents a moderator - for a YouTube live chat. A chat moderator has the ability to ban/unban users - from a chat, remove message, etc.\",\n \"type\": \"object\"\n },\n - \ \"LiveStreamHealthStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"status\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The status code of this stream\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"good\",\n - \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n - \ ]\n },\n \"lastUpdateTimeSeconds\": {\n \"description\": - \"The last time this status was updated (in seconds)\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"configurationIssues\": - {\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"description\": \"The configurations issues on this - stream\",\n \"type\": \"array\"\n }\n },\n \"id\": - \"LiveStreamHealthStatus\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": - \"A list of moderators that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatModeratorListResponse\",\n - \ \"type\": \"object\"\n },\n \"CommentThreadListResponse\": {\n - \ \"properties\": {\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"CommentThread\"\n },\n \"description\": - \"A list of comment threads that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentThreadListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"CommentThreadListResponse\"\n - \ },\n \"ChannelBrandingSettings\": {\n \"id\": \"ChannelBrandingSettings\",\n - \ \"description\": \"Branding properties of a YouTube channel.\",\n \"properties\": - {\n \"channel\": {\n \"$ref\": \"ChannelSettings\",\n \"description\": - \"Branding properties for the channel view.\"\n },\n \"image\": - {\n \"description\": \"Branding properties for branding images.\",\n - \ \"$ref\": \"ImageSettings\"\n },\n \"hints\": {\n - \ \"items\": {\n \"$ref\": \"PropertyValue\"\n },\n - \ \"description\": \"Additional experimental branding properties.\",\n - \ \"type\": \"array\"\n },\n \"watch\": {\n \"$ref\": - \"WatchSettings\",\n \"description\": \"Branding properties for the - watch page.\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Video\"\n }\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoListResponse\\\".\",\n \"default\": - \"youtube#videoListResponse\"\n }\n },\n \"id\": \"VideoListResponse\"\n - \ },\n \"CdnSettings\": {\n \"id\": \"CdnSettings\",\n \"type\": - \"object\",\n \"description\": \"Brief description of the live stream - cdn settings.\",\n \"properties\": {\n \"frameRate\": {\n \"type\": - \"string\",\n \"description\": \"The frame rate of the inbound video - data.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ]\n },\n - \ \"ingestionType\": {\n \"type\": \"string\",\n \"description\": - \" The method or protocol used to transmit the video stream.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"enum\": [\n \"rtmp\",\n - \ \"dash\",\n \"webrtc\",\n \"hls\"\n ]\n - \ },\n \"resolution\": {\n \"type\": \"string\",\n \"description\": - \"The resolution of the inbound video data.\",\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"ingestionInfo\": - {\n \"$ref\": \"IngestionInfo\",\n \"description\": \"The - ingestionInfo object contains information that YouTube provides that you need - to transmit your RTMP or HTTP stream to YouTube.\"\n },\n \"format\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The format of - the video stream that you are sending to Youtube. \"\n }\n }\n - \ },\n \"ChannelProfileDetails\": {\n \"id\": \"ChannelProfileDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"channelUrl\": - {\n \"description\": \"The channel's URL.\",\n \"type\": - \"string\"\n },\n \"displayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's display name.\"\n },\n \"profileImageUrl\": - {\n \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveChatMessageDeletedDetails\": {\n \"properties\": - {\n \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"type\": - \"object\"\n },\n \"ChannelStatistics\": {\n \"type\": \"object\",\n - \ \"description\": \"Statistics about a channel: number of subscribers, - number of videos in the channel, etc.\",\n \"id\": \"ChannelStatistics\",\n - \ \"properties\": {\n \"hiddenSubscriberCount\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the number of subscribers - is shown for this user.\"\n },\n \"viewCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of times the channel - has been viewed.\",\n \"format\": \"uint64\"\n },\n \"subscriberCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of subscribers that the channel has.\",\n \"type\": \"string\"\n - \ },\n \"commentCount\": {\n \"description\": \"The - number of comments for the channel.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"videoCount\": {\n \"description\": - \"The number of videos uploaded to the channel.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n }\n }\n },\n \"VideoCategoryListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#videoCategoryListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of video categories that can - be associated with YouTube videos. In this map, the video category ID is the - map key, and its value is the corresponding videoCategory resource.\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"VideoCategoryListResponse\"\n },\n \"CommentThread\": - {\n \"type\": \"object\",\n \"id\": \"CommentThread\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentThread\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\"\n },\n - \ \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the comment thread and also the top level comment.\",\n \"$ref\": - \"CommentThreadSnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"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.\"\n },\n \"LevelDetails\": {\n - \ \"properties\": {\n \"displayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name that should be used when referring to - this level.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LevelDetails\"\n },\n \"LocalizedProperty\": {\n \"type\": \"object\",\n - \ \"id\": \"LocalizedProperty\",\n \"properties\": {\n \"localized\": - {\n \"items\": {\n \"$ref\": \"LocalizedString\"\n },\n - \ \"type\": \"array\"\n },\n \"defaultLanguage\": {\n - \ \"description\": \"The language of the default property.\",\n \"$ref\": - \"LanguageTag\"\n },\n \"default\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoStatistics\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"dislikeCount\": {\n \"description\": - \"The number of users who have indicated that they disliked the video by giving - it a negative rating.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"favoriteCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of users who currently - have the video marked as a favorite video.\",\n \"format\": \"uint64\"\n - \ },\n \"commentCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of comments for the video.\",\n \"type\": - \"string\"\n },\n \"viewCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of times the video has been viewed.\",\n - \ \"type\": \"string\"\n },\n \"likeCount\": {\n \"description\": - \"The number of users who have indicated that they liked the video by giving - it a positive rating.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n }\n },\n \"id\": \"VideoStatistics\",\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\"\n },\n \"InvideoTiming\": {\n \"description\": \"Describes - a temporal position of a visual widget inside a video.\",\n \"properties\": - {\n \"durationMs\": {\n \"type\": \"string\",\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"format\": \"uint64\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"Describes a timing - type. If the value is offsetFromStart, then the offsetMs field represents - an offset from the start of the video. If the value is offsetFromEnd, then - the offsetMs field represents an offset from the end of the video.\",\n \"type\": - \"string\",\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ]\n },\n \"offsetMs\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"Defines the - time at which the promotion will appear. Depending on the value of type the - value of the offsetMs field will represent a time offset from the start or - from the end of the video, expressed in milliseconds.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"InvideoTiming\"\n },\n \"VideoGetRatingResponse\": - {\n \"type\": \"object\",\n \"id\": \"VideoGetRatingResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoGetRatingResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"description\": - \"A list of ratings that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoRating\"\n - \ }\n }\n }\n },\n \"ImageSettings\": {\n \"description\": - \"Branding properties for images associated with the channel.\",\n \"properties\": - {\n \"smallBrandedBannerImageImapScript\": {\n \"$ref\": \"LocalizedProperty\",\n - \ \"description\": \"The image map script for the small banner image.\"\n - \ },\n \"bannerMobileExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\"\n },\n \"trackingImageUrl\": {\n \"description\": - \"The URL for a 1px by 1px tracking pixel that can be used to collect statistics - for views of the channel or video pages.\",\n \"type\": \"string\"\n - \ },\n \"bannerMobileImageUrl\": {\n \"description\": - \"Banner image. Mobile size (640x175).\",\n \"type\": \"string\"\n - \ },\n \"bannerMobileMediumHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size medium/high - resolution (960x263).\"\n },\n \"bannerTvImageUrl\": {\n \"description\": - \"Banner image. TV size extra high resolution (2120x1192).\",\n \"type\": - \"string\"\n },\n \"bannerTvLowImageUrl\": {\n \"description\": - \"Banner image. TV size low resolution (854x480).\",\n \"type\": - \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size extra - high resolution (2560x424).\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size low resolution (1138x188).\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\"\n },\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"bannerTvHighImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. TV size high resolution (1920x1080).\"\n - \ },\n \"largeBrandedBannerImageImapScript\": {\n \"description\": - \"The image map script for the large banner image.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTvMediumImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"Banner image. - TV size medium resolution (1280x720).\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 640px by 70px banner image - that appears below the video player in the default view of the video watch - page. The URL for the image that appears above the top-left corner of the - video player. This is a 25-pixel-high image with a flexible width that cannot - exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerTabletHdImageUrl\": {\n \"description\": \"Banner - image. Tablet size high resolution (2276x377).\",\n \"type\": \"string\"\n - \ },\n \"backgroundImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n - \ \"description\": \"The URL for the background image shown on the - video watch page. The image should be 1200px by 615px, with a maximum file - size of 128k.\"\n },\n \"bannerMobileLowImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size low resolution - (320x88).\"\n },\n \"bannerImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Desktop size (1060x175).\"\n - \ },\n \"bannerTabletImageUrl\": {\n \"description\": - \"Banner image. Tablet size (1707x283).\",\n \"type\": \"string\"\n - \ },\n \"watchIconImageUrl\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ImageSettings\",\n \"type\": \"object\"\n - \ },\n \"VideoProcessingDetailsProcessingProgress\": {\n \"properties\": - {\n \"timeLeftMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"An estimate of the amount of time, - in millseconds, that YouTube needs to finish processing the video.\"\n },\n - \ \"partsTotal\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"An estimate of the total number - of parts that need to be processed for the video. The number may be updated - with more precise estimates while YouTube processes the video.\"\n },\n - \ \"partsProcessed\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of parts of the video - that YouTube has already processed. You can estimate the percentage of the - video that YouTube has already processed by calculating: 100 * parts_processed - / parts_total Note that since the estimated number of parts could increase - without a corresponding increase in the number of parts that have already - been processed, it is possible that the calculated progress could periodically - decrease while YouTube processes a video.\"\n }\n },\n \"id\": - \"VideoProcessingDetailsProcessingProgress\",\n \"description\": \"Video - processing progress and completion time estimate.\",\n \"type\": \"object\"\n - \ },\n \"CaptionSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a caption track, such as its language and name.\",\n - \ \"properties\": {\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the caption track. The name is intended - to be visible to the user as an option during playback.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"lastUpdated\": {\n \"description\": - \"The date and time when the caption track was last updated.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"isCC\": - {\n \"description\": \"Indicates whether the track contains closed - captions for the deaf and hard of hearing. The default value is false.\",\n - \ \"type\": \"boolean\"\n },\n \"isAutoSynced\": {\n - \ \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"isDraft\": {\n \"description\": \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video associated with the caption track. @mutable - youtube.captions.insert\"\n },\n \"language\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The language of - the caption track. The property value is a BCP-47 language tag.\"\n },\n - \ \"isEasyReader\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n - \ },\n \"status\": {\n \"description\": \"The caption - track's status.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ]\n },\n \"failureReason\": - {\n \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The reason that - YouTube failed to process the caption track. This property is only present - if the state property's value is failed.\"\n },\n \"trackKind\": - {\n \"enum\": [\n \"standard\",\n \"ASR\",\n - \ \"forced\"\n ],\n \"description\": \"The caption - track's type.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"audioTrackType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of audio track associated with the caption track.\",\n \"type\": - \"string\",\n \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ]\n },\n - \ \"isLarge\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\"\n }\n },\n \"id\": \"CaptionSnippet\"\n - \ },\n \"ActivityContentDetailsUpload\": {\n \"id\": \"ActivityContentDetailsUpload\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the uploaded video.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Information about the uploaded video.\"\n },\n - \ \"ChannelSettings\": {\n \"id\": \"ChannelSettings\",\n \"type\": - \"object\",\n \"description\": \"Branding properties for the channel - view.\",\n \"properties\": {\n \"title\": {\n \"description\": - \"Specifies the channel title.\",\n \"type\": \"string\"\n },\n - \ \"keywords\": {\n \"description\": \"Lists keywords associated - with the channel, comma-separated.\",\n \"type\": \"string\"\n },\n - \ \"showBrowseView\": {\n \"description\": \"Whether the tab - to browse the videos should be displayed.\",\n \"type\": \"boolean\"\n - \ },\n \"showRelatedChannels\": {\n \"description\": - \"Whether related channels should be proposed.\",\n \"type\": \"boolean\"\n - \ },\n \"unsubscribedTrailer\": {\n \"type\": \"string\",\n - \ \"description\": \"The trailer of the channel, for users that are - not subscribers.\"\n },\n \"profileColor\": {\n \"description\": - \"A prominent color that can be rendered on this channel page.\",\n \"type\": - \"string\"\n },\n \"moderateComments\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether user-submitted comments - left on the channel page need to be approved by the channel owner to be publicly - visible.\"\n },\n \"defaultTab\": {\n \"type\": \"string\",\n - \ \"description\": \"Which content tab users should see when viewing - the channel.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\"\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n },\n - \ \"featuredChannelsTitle\": {\n \"type\": \"string\",\n \"description\": - \"Title for the featured channels tab.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"featuredChannelsUrls\": {\n \"description\": - \"The list of featured channels.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"description\": - {\n \"description\": \"Specifies the channel description.\",\n \"type\": - \"string\"\n }\n }\n },\n \"PlaylistItemStatus\": {\n \"description\": - \"Information about the playlist item's privacy status.\",\n \"id\": - \"PlaylistItemStatus\",\n \"type\": \"object\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"This resource's - privacy status.\"\n }\n }\n },\n \"ChannelBannerResource\": - {\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\"\n },\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL of this banner image.\"\n },\n - \ \"etag\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ChannelBannerResource\",\n \"description\": \"A channel - banner returned as the response to a channel_banner.insert call.\",\n \"type\": - \"object\"\n },\n \"LiveChatMessageAuthorDetails\": {\n \"id\": - \"LiveChatMessageAuthorDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The channel's display name.\"\n },\n \"isChatSponsor\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether the - author is a sponsor of the live chat.\"\n },\n \"isChatOwner\": - {\n \"description\": \"Whether the author is the owner of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"isChatModerator\": - {\n \"description\": \"Whether the author is a moderator of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"description\": \"The YouTube channel ID.\",\n \"type\": - \"string\"\n },\n \"channelUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's URL.\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"VideoCategory\": {\n \"type\": - \"object\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video category.\"\n },\n \"snippet\": {\n \"$ref\": - \"VideoCategorySnippet\",\n \"description\": \"The snippet object - contains basic details about the video category, including its title.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"default\": \"youtube#videoCategory\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"VideoCategory\",\n \"description\": - \"A *videoCategory* resource identifies a category that has been or could - be associated with uploaded videos.\"\n },\n \"TokenPagination\": {\n - \ \"id\": \"TokenPagination\",\n \"type\": \"object\",\n \"description\": - \"Stub token pagination template to suppress results.\",\n \"properties\": - {}\n },\n \"ChannelLocalization\": {\n \"id\": \"ChannelLocalization\",\n - \ \"description\": \"Channel localization setting\",\n \"properties\": - {\n \"description\": {\n \"description\": \"The localized - strings for channel's description.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel's title.\"\n }\n },\n \"type\": - \"object\"\n },\n \"Subscription\": {\n \"id\": \"Subscription\",\n - \ \"description\": \"A *subscription* resource contains information about - a YouTube user subscription. A subscription notifies a user when new videos - are added to a channel or when another user takes one of several actions on - YouTube, such as uploading a video, rating a video, or commenting on a video.\",\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the subscription.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\"\n },\n \"subscriberSnippet\": - {\n \"description\": \"The subscriberSnippet object contains basic - details about the subscriber.\",\n \"$ref\": \"SubscriptionSubscriberSnippet\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains basic statistics about the subscription.\",\n - \ \"$ref\": \"SubscriptionContentDetails\"\n },\n \"kind\": - {\n \"default\": \"youtube#subscription\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SuperChatEventSnippet\": {\n \"properties\": {\n \"amountMicros\": - {\n \"description\": \"The purchase amount, in micros of the purchase - currency. e.g., 1 is represented as 1000000.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"isSuperStickerEvent\": - {\n \"type\": \"boolean\",\n \"description\": \"True if - this event is a Super Sticker event.\"\n },\n \"commentText\": - {\n \"description\": \"The text contents of the comment left by the - user.\",\n \"type\": \"string\"\n },\n \"createdAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the event occurred.\"\n - \ },\n \"messageType\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The tier for - the paid message, which is based on the amount of money spent to purchase - the message.\"\n },\n \"channelId\": {\n \"description\": - \"Channel id where the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\",\n \"type\": \"string\"\n - \ },\n \"displayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the purchase - amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the - given language.\"\n },\n \"supporterDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - supporter.\"\n },\n \"superStickerMetadata\": {\n \"$ref\": - \"SuperStickerMetadata\",\n \"description\": \"If this event is a - Super Sticker event, this field will contain metadata about the Super Sticker.\"\n - \ }\n },\n \"id\": \"SuperChatEventSnippet\",\n \"type\": - \"object\"\n },\n \"VideoAbuseReportSecondaryReason\": {\n \"type\": - \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID of this abuse report secondary reason.\"\n },\n \"label\": - {\n \"type\": \"string\",\n \"description\": \"The localized - label for this abuse report secondary reason.\"\n }\n }\n },\n - \ \"VideoSuggestionsTagSuggestion\": {\n \"id\": \"VideoSuggestionsTagSuggestion\",\n - \ \"properties\": {\n \"categoryRestricts\": {\n \"description\": - \"A set of video categories for which the tag is relevant. You can use this - information to display appropriate tag suggestions based on the video category - that the video uploader associates with the video. By default, tag suggestions - are relevant for all categories if there are no restricts defined for the - keyword.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"tag\": {\n \"description\": - \"The keyword tag suggested for the video.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A single tag suggestion with - it's relevance information.\",\n \"type\": \"object\"\n },\n \"ChannelSectionTargeting\": - {\n \"type\": \"object\",\n \"id\": \"ChannelSectionTargeting\",\n - \ \"description\": \"ChannelSection targeting setting.\",\n \"properties\": - {\n \"countries\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The country the channel section is targeting.\"\n },\n \"regions\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The region the - channel section is targeting.\"\n },\n \"languages\": {\n \"type\": - \"array\",\n \"description\": \"The language the channel section - is targeting.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n }\n }\n },\n \"VideoAbuseReport\": {\n \"type\": - \"object\",\n \"id\": \"VideoAbuseReport\",\n \"properties\": {\n - \ \"secondaryReasonId\": {\n \"type\": \"string\",\n \"description\": - \"The specific, or secondary, reason that this content is abusive (if available). - The value is an abuse report reason ID that is a valid secondary reason for - the primary reason.\"\n },\n \"comments\": {\n \"description\": - \"Additional comments regarding the abuse report.\",\n \"type\": - \"string\"\n },\n \"reasonId\": {\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\",\n \"type\": \"string\"\n },\n - \ \"language\": {\n \"type\": \"string\",\n \"description\": - \"The language that the content was viewed in.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n }\n }\n },\n - \ \"PlaylistStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"The playlist's - privacy status.\"\n }\n },\n \"id\": \"PlaylistStatus\"\n - \ },\n \"ChannelContentDetails\": {\n \"description\": \"Details - about the content of a channel.\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"properties\": {\n \"uploads\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s uploaded videos. Use the videos.insert method to - upload new videos and the videos.delete method to delete previously uploaded - videos.\"\n },\n \"watchLater\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\",\n \"type\": \"string\"\n },\n \"watchHistory\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"likes\": {\n \"description\": \"The ID of the playlist - that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n },\n \"favorites\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s favorite videos. Use the playlistItems.insert and - playlistItems.delete to add or remove items from that list.\"\n }\n - \ },\n \"type\": \"object\"\n }\n },\n \"id\": - \"ChannelContentDetails\",\n \"type\": \"object\"\n },\n \"MembershipsDuration\": - {\n \"properties\": {\n \"memberSince\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the user - became a continuous member across all levels.\"\n },\n \"memberTotalDurationMonths\": - {\n \"format\": \"int32\",\n \"description\": \"The cumulative - time the user has been a member across all levels in complete months (the - time is rounded down to the nearest integer).\",\n \"type\": \"integer\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"MembershipsDuration\"\n - \ },\n \"ThirdPartyLinkListResponse\": {\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"ThirdPartyLinkListResponse\",\n - \ \"type\": \"object\"\n },\n \"MembershipsLevelSnippet\": {\n \"properties\": - {\n \"levelDetails\": {\n \"$ref\": \"LevelDetails\",\n \"description\": - \"Details about the pricing level.\"\n },\n \"creatorChannelId\": - {\n \"description\": \"The id of the channel that's offering channel - memberships.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"MembershipsLevelSnippet\",\n \"type\": \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viever is a member. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"userComment\": {\n \"description\": \"The comment added - by the member to this Member Milestone Chat. This field is empty for messages - without a comment from the member.\",\n \"type\": \"string\"\n },\n - \ \"memberMonth\": {\n \"format\": \"uint32\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"type\": \"integer\"\n - \ }\n }\n },\n \"RelatedEntity\": {\n \"properties\": - {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n },\n - \ \"id\": \"RelatedEntity\",\n \"type\": \"object\"\n },\n \"PageInfo\": - {\n \"properties\": {\n \"totalResults\": {\n \"format\": - \"int32\",\n \"description\": \"The total number of results in the - result set.\",\n \"type\": \"integer\"\n },\n \"resultsPerPage\": - {\n \"description\": \"The number of results included in the API - response.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ }\n },\n \"id\": \"PageInfo\",\n \"type\": \"object\",\n - \ \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\"\n },\n \"ActivityContentDetailsSubscription\": {\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsSubscription\",\n \"description\": - \"Information about a channel that a user subscribed to.\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\"\n }\n }\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"description\": \"A list of valid abuse reasons - that are used with `video.ReportAbuse`.\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n },\n \"type\": \"array\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The `visitorId` identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoAbuseReportReasonListResponse\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamStatus\": {\n \"properties\": - {\n \"streamStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ]\n },\n \"healthStatus\": - {\n \"$ref\": \"LiveStreamHealthStatus\",\n \"description\": - \"The health status of the stream.\"\n }\n },\n \"id\": \"LiveStreamStatus\",\n - \ \"type\": \"object\",\n \"description\": \"Brief description of - the live stream status.\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"type\": \"object\",\n \"description\": \"Details about a channel - bulletin post.\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsBulletin\"\n - \ },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ },\n \"memberLevelName\": {\n \"description\": \"The - name of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"gifterChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\"\n }\n }\n },\n - \ \"ActivityContentDetailsPromotedItem\": {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"Details about a resource which is being promoted.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"impressionUrl\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The list of impression URLs. The client should - ping all of these URLs to indicate that the user was shown this promoted item.\",\n - \ \"type\": \"array\"\n },\n \"creativeViewUrl\": {\n - \ \"description\": \"The URL the client should ping to indicate that - the user was shown this promoted item.\",\n \"type\": \"string\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify the promoted video.\",\n \"type\": - \"string\"\n },\n \"descriptionText\": {\n \"type\": - \"string\",\n \"description\": \"The text description to accompany - the promoted item.\"\n },\n \"adTag\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should fetch - to request a promoted item.\"\n },\n \"clickTrackingUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user clicked through on this promoted - item.\"\n },\n \"customCtaButtonText\": {\n \"description\": - \"The custom call-to-action button text. If specified, it will override the - default button text for the cta_type.\",\n \"type\": \"string\"\n - \ },\n \"ctaType\": {\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of call-to-action, a message to the - user indicating action that can be taken.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"forecastingUrl\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"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.\"\n },\n - \ \"destinationUrl\": {\n \"type\": \"string\",\n \"description\": - \"The URL the client should direct the user to, if the user chooses to visit - the advertiser's website.\"\n }\n }\n },\n \"Activity\": - {\n \"properties\": {\n \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the activity, including the activity's type and group ID.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the activity.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ActivityContentDetails\",\n \"description\": \"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.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#activity\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#activity\"\n }\n },\n - \ \"description\": \"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.\",\n \"id\": \"Activity\",\n \"type\": - \"object\"\n },\n \"LiveChatSuperChatDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatSuperChatDetails\",\n \"properties\": {\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made.\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"type\": \"string\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"format\": \"uint64\"\n },\n \"tier\": {\n \"format\": - \"uint32\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": - \"integer\"\n },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the user to this Super Chat - event.\"\n }\n }\n },\n \"PlaylistItem\": {\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistItemSnippet\",\n \"description\": \"The snippet object - contains basic details about the playlist item, such as its title and position - in the playlist.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the playlist item.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistItemContentDetails\",\n \"description\": \"The contentDetails - object is included in the resource if the included item is a YouTube video. - The object contains additional information about the video.\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the playlist item's privacy status.\",\n \"$ref\": - \"PlaylistItemStatus\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlistItem\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"PlaylistItem\"\n - \ },\n \"CommentThreadReplies\": {\n \"description\": \"Comments - written in (direct or indirect) reply to the top level comment.\",\n \"id\": - \"CommentThreadReplies\",\n \"properties\": {\n \"comments\": - {\n \"description\": \"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.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Comment\"\n }\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoAgeGating\": - {\n \"properties\": {\n \"restricted\": {\n \"description\": - \"Age-restricted trailers. For redband trailers and adult-rated video-games. - Only users aged 18+ can view the content. The the field is true the content - is restricted to viewers aged 18+. Otherwise The field won't be present.\",\n - \ \"type\": \"boolean\"\n },\n \"videoGameRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"Video game rating, if any.\",\n \"type\": \"string\",\n \"enum\": - [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ]\n },\n \"alcoholContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether or not the video has alcoholic beverage content. Only users of legal - purchasing age in a particular country, as identified by ICAP, can view the - content.\"\n }\n },\n \"id\": \"VideoAgeGating\",\n \"type\": - \"object\"\n },\n \"LiveStreamListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamListResponse\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - live streams that match the request criteria.\",\n \"items\": {\n - \ \"$ref\": \"LiveStream\"\n }\n },\n \"kind\": - {\n \"default\": \"youtube#liveStreamListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n }\n },\n \"VideoRating\": {\n - \ \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n },\n \"rating\": {\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"Rating of - a video.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoRating\",\n \"description\": \"Basic - details about rating of a video.\"\n },\n \"ThirdPartyLink\": {\n \"properties\": - {\n \"linkingToken\": {\n \"type\": \"string\",\n \"description\": - \"The linking_token identifies a YouTube account and channel with which the - third party account is linked.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLink\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the status of the link.\",\n \"$ref\": - \"ThirdPartyLinkStatus\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the third- party account link.\",\n \"$ref\": - \"ThirdPartyLinkSnippet\"\n }\n },\n \"description\": \"A - *third party account link* resource represents a link between a YouTube account - or a channel and an account on a third-party service.\",\n \"type\": - \"object\",\n \"id\": \"ThirdPartyLink\"\n },\n \"AbuseType\": - {\n \"type\": \"object\",\n \"id\": \"AbuseType\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"CommentThreadSnippet\": {\n \"description\": \"Basic details - about a comment thread.\",\n \"properties\": {\n \"topLevelComment\": - {\n \"$ref\": \"Comment\",\n \"description\": \"The top - level comment of this thread.\"\n },\n \"canReply\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n },\n \"isPublic\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the thread (and therefore all its comments) - is visible to all YouTube users.\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\",\n \"type\": \"string\"\n },\n - \ \"totalReplyCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The total number of replies (not including the top level comment).\",\n - \ \"type\": \"integer\"\n },\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"CommentThreadSnippet\"\n },\n - \ \"VideoPlayer\": {\n \"description\": \"Player to be used for a video - playback.\",\n \"properties\": {\n \"embedHeight\": {\n \"type\": - \"string\",\n \"format\": \"int64\"\n },\n \"embedWidth\": - {\n \"description\": \"The embed width\",\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n },\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoPlayer\"\n },\n \"ChannelTopicDetails\": {\n \"id\": - \"ChannelTopicDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"topicCategories\": {\n \"description\": \"A list of - Wikipedia URLs that describe the channel's content.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"topicIds\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\"\n }\n - \ },\n \"description\": \"Freebase topic information related to the - channel.\"\n },\n \"SuperChatEvent\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#superChatEvent\"\n - \ },\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the Super Chat event.\"\n - \ }\n },\n \"description\": \"A `__superChatEvent__` resource - represents a Super Chat purchase on a YouTube channel.\",\n \"id\": \"SuperChatEvent\"\n - \ },\n \"VideoLocalization\": {\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's title.\"\n },\n \"description\": {\n - \ \"description\": \"Localized version of the video's description.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoLocalization\",\n - \ \"description\": \"Localized versions of certain video properties (e.g. - title).\",\n \"type\": \"object\"\n },\n \"ChannelStatus\": {\n - \ \"type\": \"object\",\n \"description\": \"JSON template for the - status part of a channel.\",\n \"id\": \"ChannelStatus\",\n \"properties\": - {\n \"longUploadsStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ],\n \"type\": \"string\"\n },\n \"isLinked\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"Privacy status of the channel.\"\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\"\n }\n }\n - \ },\n \"GeoPoint\": {\n \"properties\": {\n \"altitude\": - {\n \"type\": \"number\",\n \"description\": \"Altitude - above the reference ellipsoid, in meters.\",\n \"format\": \"double\"\n - \ },\n \"longitude\": {\n \"format\": \"double\",\n - \ \"type\": \"number\",\n \"description\": \"Longitude in - degrees.\"\n },\n \"latitude\": {\n \"format\": \"double\",\n - \ \"type\": \"number\",\n \"description\": \"Latitude in - degrees.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Geographical coordinates of a point, in WGS84.\",\n \"id\": \"GeoPoint\"\n - \ },\n \"TestItemTestItemSnippet\": {\n \"id\": \"TestItemTestItemSnippet\",\n - \ \"properties\": {},\n \"type\": \"object\"\n },\n \"PlaylistItemContentDetails\": - {\n \"id\": \"PlaylistItemContentDetails\",\n \"properties\": {\n - \ \"startAt\": {\n \"description\": \"The time, measured in - seconds from the start of the video, when the video should start playing. - (The playlist owner can specify the times when the video should start and - stop playing when the video is played in the context of the playlist.) The - default value is 0.\",\n \"type\": \"string\"\n },\n \"note\": - {\n \"type\": \"string\",\n \"description\": \"A user-generated - note for this item.\"\n },\n \"endAt\": {\n \"type\": - \"string\",\n \"description\": \"The time, measured in seconds from - the start of the video, when the video should stop playing. (The playlist - owner can specify the times when the video should start and stop playing when - the video is played in the context of the playlist.) By default, assume that - the video.endTime is the end of the video.\"\n },\n \"videoPublishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the video was published to YouTube.\",\n \"format\": - \"date-time\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - a video. To retrieve the video resource, set the id query parameter to this - value in your API request.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageRetractedDetails\": {\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"ChannelConversionPings\": {\n \"properties\": {\n \"pings\": - {\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ },\n \"type\": \"array\",\n \"description\": \"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.\"\n }\n },\n \"type\": \"object\",\n \"id\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n - \ \"LanguageTag\": {\n \"id\": \"LanguageTag\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelSectionSnippet\": {\n \"id\": - \"ChannelSectionSnippet\",\n \"description\": \"Basic details about a - channel section, including title, style and position.\",\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"description\": - \"The channel section's title for multiple_playlists and multiple_channels.\",\n - \ \"type\": \"string\"\n },\n \"type\": {\n \"description\": - \"The type of the channel section.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ]\n },\n \"style\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"description\": \"The style of the channel section.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the channel section's - default title and description.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that published the channel section.\"\n },\n \"position\": - {\n \"format\": \"uint32\",\n \"description\": \"The position - of the channel section in the channel.\",\n \"type\": \"integer\"\n - \ },\n \"localized\": {\n \"description\": \"Localized - title, read-only.\",\n \"$ref\": \"ChannelSectionLocalization\"\n - \ }\n }\n },\n \"LiveStreamSnippet\": {\n \"id\": \"LiveStreamSnippet\",\n - \ \"properties\": {\n \"isDefaultStream\": {\n \"type\": - \"boolean\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the stream was created.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is transmitting the stream.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"description\": \"The stream's - title. The value must be between 1 and 128 characters long.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The stream's description. The value - cannot be longer than 10000 characters.\"\n }\n },\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsChannelItem\": {\n \"description\": - \"Details about a resource which was added to a channel.\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was added to the channel.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"Entity\": {\n \"type\": \"object\",\n \"id\": \"Entity\",\n - \ \"properties\": {\n \"url\": {\n \"type\": \"string\"\n - \ },\n \"typeId\": {\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\"\n }\n }\n },\n - \ \"ActivityContentDetailsLike\": {\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"Information about a resource that received a positive - (like) rating.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\"\n - \ }\n }\n },\n \"PropertyValue\": {\n \"description\": - \"A pair Property / Value.\",\n \"type\": \"object\",\n \"id\": - \"PropertyValue\",\n \"properties\": {\n \"property\": {\n \"type\": - \"string\",\n \"description\": \"A property.\"\n },\n \"value\": - {\n \"description\": \"The property's value.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ActivityContentDetailsComment\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource associated with the comment.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsComment\",\n \"type\": - \"object\",\n \"description\": \"Information about a resource that received - a comment.\"\n },\n \"VideoFileDetailsVideoStream\": {\n \"type\": - \"object\",\n \"properties\": {\n \"rotation\": {\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"heightPixels\": {\n \"description\": - \"The encoded video content's height in pixels.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"description\": \"The video - stream's bitrate, in bits per second.\",\n \"type\": \"string\"\n - \ },\n \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"widthPixels\": {\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The video - codec that the stream uses.\"\n },\n \"aspectRatio\": {\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\",\n \"format\": \"double\",\n - \ \"type\": \"number\"\n },\n \"frameRateFps\": {\n - \ \"description\": \"The video stream's frame rate, in frames per - second.\",\n \"type\": \"number\",\n \"format\": \"double\"\n - \ }\n },\n \"id\": \"VideoFileDetailsVideoStream\",\n \"description\": - \"Information about a video stream.\"\n },\n \"Cuepoint\": {\n \"id\": - \"Cuepoint\",\n \"description\": \"Note that there may be a 5-second - end-point resolution issue. For instance, if a cuepoint comes in for 22:03:27, - we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. This is an - artifact of HLS.\",\n \"properties\": {\n \"insertionOffsetTimeMs\": - {\n \"description\": \"The time when the cuepoint should be inserted - by offset to the broadcast actual start time.\",\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - identifier for cuepoint resource.\",\n \"type\": \"string\"\n },\n - \ \"cueType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"type\": \"string\"\n - \ },\n \"walltimeMs\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The wall clock - time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\"\n },\n \"durationSecs\": - {\n \"format\": \"uint32\",\n \"description\": \"The duration - of this cuepoint.\",\n \"type\": \"integer\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": {\n \"id\": - \"LiveBroadcastStatus\",\n \"type\": \"object\",\n \"description\": - \"Live broadcast state.\",\n \"properties\": {\n \"liveBroadcastPriority\": - {\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Low priority - broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ],\n \"description\": \"Priority of the live broadcast - event (internal state).\",\n \"type\": \"string\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the broadcast is made for kids or not, decided by YouTube instead of the creator. - This field is read only.\"\n },\n \"lifeCycleStatus\": {\n \"enum\": - [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete - settings\",\n \"Visible only to partner, may need special UI treatment\",\n - \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n - \ \"The broadcast is finished.\",\n \"This broadcast - was removed by admin action\",\n \"Transition into TESTING has - been requested\",\n \"Transition into LIVE has been requested\"\n - \ ],\n \"description\": \"The broadcast's status. The status - can be updated using the API's liveBroadcasts.transition method.\"\n },\n - \ \"recordingStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"liveBroadcastRecordingStatusUnspecified\",\n \"notRecording\",\n - \ \"recording\",\n \"recorded\"\n ],\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ],\n \"description\": \"The broadcast's recording status.\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"description\": - \"This field will be set to True if the creator declares the broadcast to - be kids only: go/live-cw-work.\",\n \"type\": \"boolean\"\n },\n - \ \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\"\n }\n }\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"type\": \"object\",\n \"properties\": {\n \"reason\": - {\n \"description\": \"The reason that the resource is recommended - to the user.\",\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"seedResourceId\": {\n \"description\": \"The - seedResourceId object contains information about the resource that caused - the recommendation.\",\n \"$ref\": \"ResourceId\"\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the recommended resource.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"Information that identifies the recommended resource.\"\n - \ },\n \"VideoAbuseReportReason\": {\n \"id\": \"VideoAbuseReportReason\",\n - \ \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the abuse report reason.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReason\"\n - \ },\n \"id\": {\n \"description\": \"The ID of this - abuse report reason.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelSectionContentDetails\": - {\n \"properties\": {\n \"playlists\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The playlist ids for type single_playlist and - multiple_playlists. For singlePlaylist, only one playlistId is allowed.\"\n - \ },\n \"channels\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The channel ids for type multiple_channels.\"\n }\n },\n \"id\": - \"ChannelSectionContentDetails\",\n \"type\": \"object\",\n \"description\": - \"Details about a channelsection, including playlists and channels.\"\n },\n - \ \"ActivityContentDetailsFavorite\": {\n \"type\": \"object\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that was marked as - a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n },\n - \ \"id\": \"ActivityContentDetailsFavorite\",\n \"description\": - \"Information about a video that was marked as a favorite video.\"\n },\n - \ \"PlaylistLocalization\": {\n \"id\": \"PlaylistLocalization\",\n - \ \"description\": \"Playlist localization setting\",\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for playlist's title.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"The localized - strings for playlist's description.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"AbuseReport\": {\n \"type\": \"object\",\n \"properties\": - {\n \"subject\": {\n \"$ref\": \"Entity\"\n },\n \"abuseTypes\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"AbuseType\"\n }\n },\n \"relatedEntities\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n - \ }\n },\n \"description\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"AbuseReport\"\n },\n \"MembershipsLevel\": - {\n \"description\": \"A *membershipsLevel* resource represents an offer - made by YouTube creators for their fans. Users can become members of the channel - by joining one of the available levels. They will provide recurring monetary - support and receives special benefits.\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the level.\",\n \"$ref\": - \"MembershipsLevelSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#membershipsLevel\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the memberships level.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"MembershipsLevel\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"properties\": {\n \"description\": {\n \"description\": - \"The long-form description of the issue and how to resolve it.\",\n \"type\": - \"string\"\n },\n \"severity\": {\n \"description\": - \"How severe this issue is to the stream.\",\n \"enum\": [\n \"info\",\n - \ \"warning\",\n \"error\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"type\": {\n \"description\": - \"The kind of error happening.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ]\n },\n - \ \"reason\": {\n \"description\": \"The short-form reason - for this issue.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"LiveStreamContentDetails\": {\n \"id\": \"LiveStreamContentDetails\",\n - \ \"properties\": {\n \"closedCaptionsIngestionUrl\": {\n \"type\": - \"string\",\n \"description\": \"The ingestion URL where the closed - captions of this stream are sent.\"\n },\n \"isReusable\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Indicates whether - the stream is reusable, which means that it can be bound to multiple broadcasts. - It is common for broadcasters to reuse the same stream for many different - broadcasts if those broadcasts occur at different times. If you set this value - to false, then the stream will not be reusable, which means that it can only - be bound to one broadcast. Non-reusable streams differ from reusable streams - in the following ways: - A non-reusable stream can only be bound to one broadcast. - - A non-reusable stream might be deleted by an automated process after the - broadcast ends. - The liveStreams.list method does not list non-reusable streams - if you call the method and set the mine parameter to true. The only way to - use that method to retrieve the resource for a non-reusable stream is to use - the id parameter to identify the stream. \"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Detailed settings of a stream.\"\n },\n - \ \"MemberSnippet\": {\n \"properties\": {\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering memberships.\"\n },\n \"memberDetails\": - {\n \"description\": \"Details about the member.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"membershipsDetails\": {\n - \ \"description\": \"Details about the user's membership.\",\n \"$ref\": - \"MembershipsDetails\"\n }\n },\n \"id\": \"MemberSnippet\",\n - \ \"type\": \"object\"\n },\n \"SearchListResponse\": {\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SearchResult\"\n },\n \"description\": - \"Pagination information for token pagination.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#searchListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#searchListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"regionCode\": {\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"SearchListResponse\",\n - \ \"type\": \"object\"\n },\n \"LiveStream\": {\n \"description\": - \"A live stream describes a live ingestion point.\",\n \"id\": \"LiveStream\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"LiveStreamSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the stream, including its channel, title, and description.\"\n },\n - \ \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n \"description\": - \"The status object contains information about live stream's status.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveStream\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n - \ \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the stream.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n }\n }\n },\n \"type\": \"object\"\n - \ },\n \"SuperChatEventListResponse\": {\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#superChatEventListResponse\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - Super Chat purchases that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n }\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ }\n },\n \"id\": \"SuperChatEventListResponse\",\n \"type\": - \"object\"\n },\n \"VideoLiveStreamingDetails\": {\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"actualEndTime\": - {\n \"description\": \"The time that the broadcast actually ended. - This value will not be available until the broadcast is over.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"scheduledStartTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - time that the broadcast is scheduled to begin.\",\n \"type\": \"string\"\n - \ },\n \"activeLiveChatId\": {\n \"description\": \"The - ID of the currently active live chat attached to this video. This field is - filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\",\n \"type\": \"string\"\n },\n \"actualStartTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - time that the broadcast actually started. This value will not be available - until the broadcast begins.\",\n \"type\": \"string\"\n },\n - \ \"scheduledEndTime\": {\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast is scheduled to end. If the value is empty or - the property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"format\": \"date-time\"\n },\n \"concurrentViewers\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n }\n },\n - \ \"description\": \"Details about the live streaming metadata.\"\n },\n - \ \"LiveChatNewSponsorDetails\": {\n \"properties\": {\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level that the viewer just had joined. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"isUpgrade\": {\n \"type\": - \"boolean\",\n \"description\": \"If the viewer just had upgraded - from a lower level. For viewers that were not members at the time of purchase, - this field is false.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatNewSponsorDetails\"\n }\n },\n \"servicePath\": - \"\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"kind\": \"discovery#restDescription\",\n \"parameters\": {\n \"access_token\": - {\n \"description\": \"OAuth access token.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"upload_protocol\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": \"Upload - protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n },\n \"$.xgafv\": - {\n \"enum\": [\n \"1\",\n \"2\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"V1 error - format.\",\n \"enumDescriptions\": [\n \"v1 error format\",\n - \ \"v2 error format\"\n ]\n },\n \"callback\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"JSONP\"\n - \ },\n \"oauth_token\": {\n \"type\": \"string\",\n \"description\": - \"OAuth 2.0 token for the current user.\",\n \"location\": \"query\"\n - \ },\n \"uploadType\": {\n \"type\": \"string\",\n \"description\": - \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n - \ \"location\": \"query\"\n },\n \"alt\": {\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"default\": \"json\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"json\",\n \"media\",\n - \ \"proto\"\n ],\n \"location\": \"query\",\n \"description\": - \"Data format for response.\"\n },\n \"key\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": \"query\"\n },\n \"prettyPrint\": - {\n \"description\": \"Returns response with indentations and line breaks.\",\n - \ \"default\": \"true\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"quotaUser\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"fields\": - {\n \"description\": \"Selector specifying which fields to include in - a partial response.\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"revision\": \"20230220\",\n \"name\": \"youtube\",\n \"basePath\": - \"\",\n \"id\": \"youtube:v3\",\n \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"ownerName\": \"Google\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:30 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCW2Xc4hXzz1-82q15u6CLSQ&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"tlQgf_P6V_KQ0U4VsqlEeWasVJQ\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"lyxHxwg4zz5ab9hPZCd8QtKAz08\",\n \"id\": \"UCW2Xc4hXzz1-82q15u6CLSQ\",\n - \ \"snippet\": {\n \"title\": \"Akula .57\",\n \"description\": - \"\\ncooperation : mcx@insightpeople.ru \\n\\n\",\n \"customUrl\": - \"@akula\",\n \"publishedAt\": \"2018-08-29T15:07:53Z\",\n \"thumbnails\": - {\n \"default\": {\n \"url\": \"https://yt3.ggpht.com/IUC42YNQ-4UgiiwUCXsyo8yLDlVu9ESZnixdovxx9Urc8aMCkhfyCCnU3NcmWZcOLQSj3uoyPbU=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/IUC42YNQ-4UgiiwUCXsyo8yLDlVu9ESZnixdovxx9Urc8aMCkhfyCCnU3NcmWZcOLQSj3uoyPbU=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/IUC42YNQ-4UgiiwUCXsyo8yLDlVu9ESZnixdovxx9Urc8aMCkhfyCCnU3NcmWZcOLQSj3uoyPbU=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Akula .57\",\n \"description\": - \"\\ncooperation : mcx@insightpeople.ru \\n\\n\"\n },\n \"country\": - \"RU\"\n },\n \"brandingSettings\": {\n \"channel\": {\n - \ \"title\": \"Akula .57\",\n \"description\": \"\\ncooperation - : mcx@insightpeople.ru \\n\\n\",\n \"country\": \"RU\"\n },\n - \ \"image\": {\n \"bannerExternalUrl\": \"https://yt3.googleusercontent.com/MKqENL0k7I3vYmeBkDogbiM5dNVDEWnJb76UxPxbIJbkNt8Qcp4QTtzIZS3ZOx8ZYbqCXwlc5A\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:30 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"ownerName\": - \"Google\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"resources\": - {\n \"tests\": {\n \"methods\": {\n \"insert\": {\n \"id\": - \"youtube.tests.insert\",\n \"flatPath\": \"youtube/v3/tests\",\n - \ \"path\": \"youtube/v3/tests\",\n \"request\": {\n \"$ref\": - \"TestItem\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"description\": \"POST method.\"\n - \ }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"channelId\": {\n - \ \"location\": \"query\",\n \"description\": \"Unused, - channel_id is currently derived from the security context of the requestor.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"parameterOrder\": [],\n - \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"id\": - \"youtube.channelBanners.insert\",\n \"httpMethod\": \"POST\",\n - \ \"path\": \"youtube/v3/channelBanners/insert\",\n \"response\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"mediaUpload\": - {\n \"maxSize\": \"6291456\",\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n }\n }\n - \ }\n }\n },\n \"subscriptions\": {\n \"methods\": {\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.subscriptions.list\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"parameters\": {\n \"order\": - {\n \"description\": \"The order of the returned subscriptions\",\n - \ \"type\": \"string\",\n \"default\": \"relevance\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ]\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the subscriptions of the given channel - owner.\"\n },\n \"myRecentSubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions with the given IDs - for Stubby or Apiary.\"\n },\n \"mySubscribers\": {\n - \ \"description\": \"Return the subscribers of the given channel - owner.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\"\n - \ },\n \"forChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions to the subset of - these channels that the authenticated user is subscribed to.\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"SubscriptionListResponse\"\n },\n \"path\": \"youtube/v3/subscriptions\"\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.subscriptions.delete\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/subscriptions\",\n \"description\": - \"Deletes a resource.\"\n },\n \"insert\": {\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ }\n },\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"request\": - {\n \"$ref\": \"Subscription\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/subscriptions\"\n }\n - \ }\n },\n \"playlistItems\": {\n \"methods\": {\n \"update\": - {\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"description\": - \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"id\": \"youtube.playlistItems.update\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"list\": {\n \"id\": \"youtube.playlistItems.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the playlist items associated with - the given video ID.\"\n },\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"playlistId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlist items within the given playlist.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"path\": - \"youtube/v3/playlistItems\",\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"PlaylistItemListResponse\"\n }\n },\n - \ \"insert\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.playlistItems.insert\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"path\": \"youtube/v3/playlistItems\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n }\n },\n \"delete\": - {\n \"id\": \"youtube.playlistItems.delete\",\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"delete\": {\n \"description\": \"Deletes a resource.\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"parameters\": - {\n \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Type of the link to be deleted.\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"required\": true,\n \"location\": - \"query\"\n },\n \"linkingToken\": {\n \"location\": - \"query\",\n \"description\": \"Delete the partner links with - the given linking token.\",\n \"required\": true,\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"Do not use. Required for compatibility.\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ }\n },\n \"id\": \"youtube.thirdPartyLinks.delete\"\n - \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.thirdPartyLinks.list\",\n \"parameters\": - {\n \"linkingToken\": {\n \"location\": \"query\",\n - \ \"description\": \"Get a third party link with the given linking - token.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"location\": \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"description\": - \"Get a third party link of the given type.\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the thirdPartyLink resource parts that the API response will include. Supported - values are linkingToken, status, and snippet.\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ }\n }\n },\n \"insert\": {\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"id\": - \"youtube.thirdPartyLinks.insert\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\",\n \"repeated\": true\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\"\n }\n },\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"description\": \"Inserts a new - resource into this collection.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/thirdPartyLinks\"\n },\n - \ \"update\": {\n \"description\": \"Updates an existing resource.\",\n - \ \"id\": \"youtube.thirdPartyLinks.update\",\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"location\": \"query\"\n - \ },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n }\n - \ },\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n }\n }\n }\n },\n \"liveStreams\": - {\n \"methods\": {\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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, content_details, and status.\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n },\n \"id\": - \"youtube.liveStreams.insert\",\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"description\": \"Inserts a new stream - for the authenticated user.\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\"\n - \ },\n \"update\": {\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"httpMethod\": \"PUT\",\n \"parameters\": {\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.liveStreams.update\",\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/liveStreams\"\n },\n \"delete\": - {\n \"path\": \"youtube/v3/liveStreams\",\n \"description\": - \"Deletes an existing stream for the authenticated user.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.liveStreams.delete\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"maxResults\": {\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"maximum\": - \"50\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"description\": - \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"LiveStreamListResponse\"\n },\n \"id\": \"youtube.liveStreams.list\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"description\": \"Retrieve the list of streams associated with - the given channel. --\"\n }\n }\n },\n \"thumbnails\": {\n - \ \"methods\": {\n \"set\": {\n \"parameterOrder\": [\n - \ \"videoId\"\n ],\n \"id\": \"youtube.thumbnails.set\",\n - \ \"supportsMediaUpload\": true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"ThumbnailSetResponse\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"videoId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n - \ \"required\": true\n }\n },\n \"mediaUpload\": - {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"2097152\",\n \"protocols\": {\n \"simple\": {\n - \ \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ }\n }\n },\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"path\": - \"youtube/v3/thumbnails/set\"\n }\n }\n },\n \"channelSections\": - {\n \"methods\": {\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"ChannelSection\"\n },\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.channelSections.insert\",\n \"path\": - \"youtube/v3/channelSections\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"required\": true,\n \"repeated\": true\n }\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\"\n },\n \"list\": - {\n \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"description\": \"Return content in specified - language\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the ChannelSections owned by the specified channel ID.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"description\": - \"Return the ChannelSections owned by the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"Return the ChannelSections with the - given IDs for Stubby or Apiary.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.channelSections.list\"\n },\n \"delete\": {\n \"id\": - \"youtube.channelSections.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"description\": - \"Deletes a resource.\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"update\": {\n \"path\": \"youtube/v3/channelSections\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.update\"\n - \ }\n }\n },\n \"activities\": {\n \"methods\": {\n - \ \"list\": {\n \"id\": \"youtube.activities.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"path\": \"youtube/v3/activities\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"default\": \"5\",\n \"format\": - \"uint32\"\n },\n \"home\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"mine\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"publishedAfter\": - {\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"publishedBefore\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n }\n }\n - \ }\n },\n \"channels\": {\n \"methods\": {\n \"update\": - {\n \"response\": {\n \"$ref\": \"Channel\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channels\",\n \"path\": - \"youtube/v3/channels\",\n \"request\": {\n \"$ref\": - \"Channel\"\n },\n \"id\": \"youtube.channels.update\",\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"list\": {\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"id\": \"youtube.channels.list\",\n \"parameters\": - {\n \"hl\": {\n \"location\": \"query\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"type\": - \"string\"\n },\n \"categoryId\": {\n \"location\": - \"query\",\n \"description\": \"Return the channels within the - specified guide category ID.\",\n \"type\": \"string\"\n },\n - \ \"managedByMe\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Return the channels managed - by the authenticated user.\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": - true\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the ids of channels owned by the authenticated user.\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"forUsername\": {\n \"location\": - \"query\",\n \"description\": \"Return the channel associated - with a YouTube username.\",\n \"type\": \"string\"\n },\n - \ \"mySubscribers\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Return - the channels subscribed to the authenticated user\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Return - the channels with the specified IDs.\"\n }\n },\n \"response\": - {\n \"$ref\": \"ChannelListResponse\"\n },\n \"flatPath\": - \"youtube/v3/channels\",\n \"path\": \"youtube/v3/channels\"\n }\n - \ }\n },\n \"liveBroadcasts\": {\n \"methods\": {\n \"bind\": - {\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"id\": \"youtube.liveBroadcasts.bind\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Broadcast to bind to the stream\",\n \"required\": - true\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"streamId\": {\n \"description\": - \"Stream to bind, if not set unbind the current one.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Bind a broadcast to a stream.\",\n \"httpMethod\": - \"POST\"\n },\n \"insertCuepoint\": {\n \"parameters\": - {\n \"id\": {\n \"description\": \"Broadcast to insert - ads to, or equivalently `external_video_id` for internal use.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"parameterOrder\": [],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"description\": - \"Insert cuepoints in a broadcast\",\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\"\n - \ },\n \"update\": {\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.update\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Updates an existing broadcast for the authenticated - user.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"PUT\"\n },\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"parameters\": {\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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, status - and statistics.\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"id\": {\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"broadcastType\": {\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"event\",\n \"description\": \"Return only broadcasts with the - selected type.\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ]\n },\n \"broadcastStatus\": {\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return current - live broadcasts.\",\n \"Return broadcasts that have not yet - started.\",\n \"Return broadcasts that have already ended.\"\n - \ ],\n \"description\": \"Return broadcasts with - a certain status, e.g. active broadcasts.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"default\": \"5\",\n - \ \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\",\n \"type\": \"integer\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\"\n },\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Delete a given broadcast.\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Broadcast to delete.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"DELETE\"\n },\n \"transition\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"description\": \"Transition - a broadcast to a given status.\",\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"broadcastStatus\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - status to which the broadcast is going to transition.\",\n \"required\": - true,\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Start testing the broadcast. YouTube transmits video to - the broadcast's monitor stream. Note that you can only transition a broadcast - to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ]\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Broadcast - to transition.\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"id\": - \"youtube.liveBroadcasts.transition\"\n }\n }\n },\n \"superChatEvents\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"hl\": {\n \"description\": - \"Return rendered funding amounts in specified language.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"minimum\": \"1\",\n \"default\": \"5\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the superChatEvent resource parts that the - API response will include. This parameter is currently not supported.\",\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.superChatEvents.list\",\n \"response\": {\n \"$ref\": - \"SuperChatEventListResponse\"\n },\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"path\": \"youtube/v3/superChatEvents\"\n }\n }\n },\n - \ \"commentThreads\": {\n \"methods\": {\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.commentThreads.list\",\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"CommentThreadListResponse\"\n },\n \"parameters\": {\n - \ \"textFormat\": {\n \"default\": \"html\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"The requested text format for - the returned comments.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of the specified video.\"\n },\n - \ \"maxResults\": {\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"maximum\": \"100\",\n - \ \"default\": \"20\",\n \"minimum\": \"1\"\n },\n - \ \"order\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Order by time.\",\n \"Order by relevance.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"location\": \"query\",\n \"default\": - \"time\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\"\n },\n - \ \"moderationStatus\": {\n \"enumDescriptions\": [\n - \ \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"location\": - \"query\",\n \"default\": \"published\",\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"type\": \"string\"\n },\n \"searchTerms\": - {\n \"description\": \"Limits the returned comment threads to - those matching the specified key words. Not compatible with the 'id' filter.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Returns the comment threads - with the given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads of all videos of the channel and the channel comments - as well.\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/commentThreads\"\n },\n - \ \"insert\": {\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true\n }\n }\n }\n - \ }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"parameters\": {\n \"topicId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular topic.\"\n },\n \"videoCaption\": - {\n \"description\": \"Filter on the presence of captions on - the videos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter results based on caption availability.\",\n - \ \"Only include videos that have captions.\",\n \"Only - include videos that do not have captions.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"type\": \"string\"\n },\n \"publishedAfter\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on resources published after this date.\",\n \"type\": - \"string\",\n \"format\": \"google-datetime\"\n },\n - \ \"forDeveloper\": {\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Restrict the search to only retrieve - videos uploaded using the project id of the authenticated user.\"\n },\n - \ \"channelType\": {\n \"type\": \"string\",\n \"enum\": - [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"description\": - \"Add a filter on the channel search.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"location\": \"query\"\n - \ },\n \"videoSyndicated\": {\n \"enum\": - [\n \"videoSyndicatedUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"description\": - \"Filter on syndicated videos.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, syndicated or not.\",\n \"Only - retrieve syndicated videos.\"\n ]\n },\n \"eventType\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Filter on the livestream status of the videos.\"\n },\n \"safeSearch\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"default\": \"moderate\",\n \"description\": - \"Indicates whether the search results should include restricted content as - well as standard content.\"\n },\n \"q\": {\n \"type\": - \"string\",\n \"description\": \"Textual search terms to match.\",\n - \ \"location\": \"query\"\n },\n \"videoType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos.\",\n \"Only retrieve movies.\",\n \"Only - retrieve episodes of shows.\"\n ],\n \"location\": - \"query\",\n \"description\": \"Filter on videos of a specific - type.\",\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"type\": \"string\"\n },\n \"videoDefinition\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on the definition of the videos.\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"videoDuration\": {\n \"enum\": - [\n \"videoDurationUnspecified\",\n \"any\",\n - \ \"short\",\n \"medium\",\n \"long\"\n - \ ],\n \"description\": \"Filter on the duration - of the videos.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on resources belonging to this channelId.\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"description\": \"Display the content as seen by - viewers in this country.\",\n \"type\": \"string\"\n },\n - \ \"locationRadius\": {\n \"description\": \"Filter - on distance from the location (specified above).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoCategoryId\": - {\n \"description\": \"Filter on videos in a specific category.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"type\": {\n \"repeated\": true,\n - \ \"description\": \"Restrict results to a particular set of resource - types from One Platform.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"forContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"Search owned by a content owner.\",\n - \ \"type\": \"boolean\"\n },\n \"videoEmbeddable\": - {\n \"location\": \"query\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Filter - on embeddable videos.\"\n },\n \"videoDimension\": {\n - \ \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"description\": \"Filter on - 3d videos.\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"publishedBefore\": - {\n \"type\": \"string\",\n \"format\": \"google-datetime\",\n - \ \"location\": \"query\",\n \"description\": \"Filter - on resources published before this date.\"\n },\n \"videoLicense\": - {\n \"description\": \"Filter on the license of the videos.\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"type\": - \"string\"\n },\n \"location\": {\n \"description\": - \"Filter on location of the video\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"order\": - {\n \"description\": \"Sort order of the results.\",\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"location\": \"query\",\n \"default\": \"relevance\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Resources - are sorted in reverse chronological order based on the date they were created.\",\n - \ \"Resources are sorted from highest to lowest rating.\",\n - \ \"Resources are sorted from highest to lowest number of views.\",\n - \ \"Resources are sorted based on their relevance to the search - query. This is the default value for this parameter.\",\n \"Resources - are sorted alphabetically by title.\",\n \"Channels are sorted - in descending order of their number of uploaded videos.\"\n ],\n - \ \"type\": \"string\"\n },\n \"relatedToVideoId\": - {\n \"description\": \"Search related to a resource.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"forMine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Search for the private videos of the authenticated - user.\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"relevanceLanguage\": - {\n \"description\": \"Return results relevant to this language.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true\n }\n },\n - \ \"path\": \"youtube/v3/search\",\n \"response\": {\n \"$ref\": - \"SearchListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.search.list\",\n \"flatPath\": \"youtube/v3/search\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of search resources\",\n \"httpMethod\": \"GET\"\n - \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"insert\": {\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": true\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"id\": - \"youtube.liveChatModerators.insert\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"request\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveChatModeratorListResponse\"\n },\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"id\": - \"youtube.liveChatModerators.list\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the liveChatModerator resource parts that - the API response will include. Supported values are id and snippet.\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"The id of the live chat for which moderators should be returned.\"\n }\n - \ }\n },\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.liveChatModerators.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a chat moderator.\"\n }\n }\n },\n \"liveChatMessages\": - {\n \"methods\": {\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"id\": - \"youtube.liveChatMessages.insert\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\"\n - \ }\n },\n \"request\": {\n \"$ref\": - \"LiveChatMessage\"\n }\n },\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a chat message.\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.delete\"\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Specifies the localization language in which the system messages should - be returned.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - liveChatComment resource parts that the API response will include. Supported - values are id and snippet.\",\n \"location\": \"query\"\n },\n - \ \"profileImageSize\": {\n \"location\": \"query\",\n - \ \"maximum\": \"720\",\n \"description\": \"Specifies - the size of the profile image that should be returned for each user.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"minimum\": \"16\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The id of the live chat for which comments - should be returned.\",\n \"required\": true\n },\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"default\": \"500\",\n \"maximum\": - \"2000\",\n \"format\": \"uint32\",\n \"minimum\": - \"200\",\n \"location\": \"query\",\n \"type\": - \"integer\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\"\n }\n - \ }\n },\n \"comments\": {\n \"methods\": {\n \"update\": - {\n \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.comments.update\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Updates an existing resource.\"\n },\n \"setModerationStatus\": - {\n \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Modifies the moderation status of the comments with the given IDs\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"moderationStatus\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"Specifies the requested moderation status. - Note, comments can be in statuses, which are not available through this call. - For example, this call does not allow to mark a comment as 'likely spam'. - Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"banAuthor\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"If set to true the author of the comment - gets added to the ban list. This means all future comments of the author will - autmomatically be rejected. Only valid in combination with STATUS_REJECTED.\",\n - \ \"default\": \"false\"\n }\n },\n \"id\": - \"youtube.comments.setModerationStatus\",\n \"parameterOrder\": [\n - \ \"id\",\n \"moderationStatus\"\n ],\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\",\n \"httpMethod\": \"POST\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"description\": \"Sets the moderation status of one or more comments.\"\n - \ },\n \"list\": {\n \"parameters\": {\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"textFormat\": {\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"location\": \"query\",\n - \ \"enum\": [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"default\": - \"html\",\n \"type\": \"string\",\n \"description\": - \"The requested text format for the returned comments.\"\n },\n - \ \"parentId\": {\n \"type\": \"string\",\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Returns the comments with the given IDs for One Platform.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more comment resource - properties that the API response will include.\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"1\",\n \"location\": \"query\",\n \"default\": - \"20\",\n \"type\": \"integer\",\n \"maximum\": - \"100\",\n \"format\": \"uint32\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.comments.list\",\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/comments\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"CommentListResponse\"\n },\n \"flatPath\": \"youtube/v3/comments\"\n - \ },\n \"markAsSpam\": {\n \"id\": \"youtube.comments.markAsSpam\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"id\": - {\n \"description\": \"Flags the comments with the given IDs - as spam in the caller's opinion.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments/markAsSpam\",\n \"flatPath\": - \"youtube/v3/comments/markAsSpam\",\n \"description\": \"Expresses - the caller's opinion that one or more comments should be flagged as spam.\",\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.insert\",\n \"request\": {\n - \ \"$ref\": \"Comment\"\n }\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/comments\",\n \"id\": - \"youtube.comments.delete\",\n \"description\": \"Deletes a resource.\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments\"\n }\n }\n - \ },\n \"playlists\": {\n \"methods\": {\n \"delete\": {\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"id\": \"youtube.playlists.delete\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/playlists\",\n \"description\": \"Deletes a resource.\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n }\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/playlists\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.playlists.list\",\n - \ \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"description\": \"Return content in specified - language\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Return - the playlists with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Return the playlists owned by the authenticated - user.\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"required\": true\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the playlists owned by the specified channel ID.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"pageToken\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"default\": \"5\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlists\"\n },\n - \ \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlists\",\n \"id\": - \"youtube.playlists.update\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"description\": - \"Updates an existing resource.\"\n },\n \"insert\": {\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ }\n },\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlists\",\n \"id\": - \"youtube.playlists.insert\"\n }\n }\n },\n \"liveChatBans\": - {\n \"methods\": {\n \"delete\": {\n \"description\": - \"Deletes a chat ban.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"id\": \"youtube.liveChatBans.delete\",\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n }\n },\n \"insert\": {\n - \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"request\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n - \ \"insert\": {\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"path\": \"youtube/v3/abuseReports\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"flatPath\": \"youtube/v3/abuseReports\",\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n }\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"id\": \"youtube.videoCategories.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Returns - the video categories with the given IDs for Stubby or Apiary.\"\n },\n - \ \"regionCode\": {\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the videoCategory resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"default\": \"en-US\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/videoCategories\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ }\n }\n }\n },\n \"watermarks\": {\n \"methods\": - {\n \"unset\": {\n \"httpMethod\": \"POST\",\n \"description\": - \"Allows removal of channel watermark.\",\n \"parameters\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/watermarks/unset\",\n \"id\": - \"youtube.watermarks.unset\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"flatPath\": \"youtube/v3/watermarks/unset\"\n },\n - \ \"set\": {\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\"\n },\n \"description\": - \"Allows upload of watermark image and setting it for a channel.\",\n \"parameters\": - {\n \"channelId\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"path\": \"youtube/v3/watermarks/set\",\n \"id\": \"youtube.watermarks.set\",\n - \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n }\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"id\": \"youtube.i18nLanguages.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n - \ \"path\": \"youtube/v3/i18nLanguages\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"default\": \"en_US\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the i18nLanguage resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n }\n }\n - \ }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": {\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/videoAbuseReportReasons\",\n \"response\": {\n \"$ref\": - \"VideoAbuseReportReasonListResponse\"\n },\n \"flatPath\": - \"youtube/v3/videoAbuseReportReasons\",\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"hl\": {\n \"default\": \"en-US\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the videoCategory resource parts that the API response - will include. Supported values are id and snippet.\",\n \"repeated\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\"\n }\n }\n },\n \"membershipsLevels\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Retrieves a list of all pricing levels offered - by a creator to the fans.\",\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"path\": \"youtube/v3/membershipsLevels\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - membershipsLevel resource parts that the API response will include. Supported - values are id and snippet.\",\n \"location\": \"query\",\n \"repeated\": - true\n }\n }\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"path\": \"youtube/v3/i18nRegions\",\n \"response\": {\n - \ \"$ref\": \"I18nRegionListResponse\"\n },\n \"flatPath\": - \"youtube/v3/i18nRegions\",\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"default\": \"en_US\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - i18nRegion resource properties that the API response will include. Set the - parameter value to snippet.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n }\n }\n }\n - \ }\n },\n \"captions\": {\n \"methods\": {\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOf\": {\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/captions\"\n - \ },\n \"update\": {\n \"id\": \"youtube.captions.update\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"sync\": {\n \"type\": \"boolean\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\"\n }\n },\n \"supportsMediaUpload\": - true,\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n }\n - \ },\n \"maxSize\": \"104857600\"\n },\n \"path\": - \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"insert\": {\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/captions\",\n \"mediaUpload\": - {\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\",\n - \ \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"supportsMediaUpload\": true,\n \"parameters\": {\n \"sync\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"description\": \"The - *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is be on behalf of\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.captions.insert\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/captions\"\n },\n - \ \"download\": {\n \"useMediaDownloadService\": true,\n \"path\": - \"youtube/v3/captions/{id}\",\n \"id\": \"youtube.captions.download\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Downloads a caption track.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"tfmt\": {\n \"description\": - \"Convert the captions into this format. Supported options are sbv, srt, and - vtt.\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"required\": true,\n - \ \"description\": \"The ID of the caption track to download, - required for One Platform.\",\n \"type\": \"string\",\n \"location\": - \"path\"\n },\n \"tlang\": {\n \"location\": - \"query\",\n \"description\": \"tlang is the language code; machine - translate the captions into this language.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOf\": {\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"httpMethod\": - \"GET\",\n \"supportsMediaDownload\": true\n },\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"CaptionListResponse\"\n },\n \"parameterOrder\": [\n \"part\",\n - \ \"videoId\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.list\",\n \"path\": \"youtube/v3/captions\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is on behalf of.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"id\": {\n \"description\": - \"Returns the captions with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the captions for the specified video.\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n }\n }\n - \ },\n \"youtube\": {\n \"resources\": {\n \"v3\": {\n \"methods\": - {\n \"updateCommentThreads\": {\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameterOrder\": [],\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"httpMethod\": \"PUT\",\n \"id\": - \"youtube.youtube.v3.updateCommentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"path\": - \"youtube/v3/commentThreads\",\n \"description\": \"Updates an - existing resource.\"\n }\n }\n }\n }\n },\n - \ \"members\": {\n \"methods\": {\n \"list\": {\n \"flatPath\": - \"youtube/v3/members\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"filterByMemberChannelId\": {\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n },\n \"hasAccessToLevel\": {\n \"type\": - \"string\",\n \"description\": \"Filter members in the results - set to the ones that have access to a level.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"maximum\": - \"1000\",\n \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\"\n },\n \"mode\": - {\n \"default\": \"all_current\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"location\": - \"query\",\n \"description\": \"Parameter that specifies which - channel members to return.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ]\n }\n },\n \"path\": - \"youtube/v3/members\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.members.list\",\n \"description\": - \"Retrieves a list of members that match the request criteria for a channel.\"\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"getRating\": - {\n \"description\": \"Retrieves the ratings that the authorized - user gave to a list of specified videos.\",\n \"id\": \"youtube.videos.getRating\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/videos/getRating\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/videos/getRating\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true\n }\n }\n },\n - \ \"delete\": {\n \"parameters\": {\n \"id\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"path\": - \"youtube/v3/videos\",\n \"id\": \"youtube.videos.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/videos\"\n },\n \"insert\": {\n \"id\": - \"youtube.videos.insert\",\n \"supportsMediaUpload\": true,\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"stabilize\": {\n \"location\": - \"query\",\n \"description\": \"Should stabilize be applied to - the upload.\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"autoLevels\": {\n \"type\": - \"boolean\",\n \"description\": \"Should auto-levels be applied - to the upload.\",\n \"location\": \"query\"\n },\n - \ \"notifySubscribers\": {\n \"default\": \"true\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/videos\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": true\n - \ }\n },\n \"maxSize\": \"274877906944\",\n - \ \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n - \ ]\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"Video\"\n - \ }\n },\n \"update\": {\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"id\": \"youtube.videos.update\",\n \"httpMethod\": \"PUT\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"path\": \"youtube/v3/videos\",\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"reportAbuse\": {\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"id\": \"youtube.videos.reportAbuse\",\n \"description\": - \"Report abuse for a video.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"parameterOrder\": [],\n \"request\": {\n \"$ref\": - \"VideoAbuseReport\"\n },\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"list\": {\n \"id\": \"youtube.videos.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"VideoListResponse\"\n },\n \"parameters\": - {\n \"maxHeight\": {\n \"minimum\": \"72\",\n \"location\": - \"query\",\n \"format\": \"int32\",\n \"type\": - \"integer\",\n \"maximum\": \"8192\"\n },\n \"myRating\": - {\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"location\": \"query\"\n - \ },\n \"chart\": {\n \"description\": \"Return - the videos that are in the specified chart.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"enum\": [\n - \ \"chartUnspecified\",\n \"mostPopular\"\n ],\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\"\n },\n \"videoCategoryId\": - {\n \"type\": \"string\",\n \"description\": \"Use - chart that is specific to the specified video category\",\n \"location\": - \"query\",\n \"default\": \"0\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"hl\": {\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"locale\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n - \ \"id\": {\n \"description\": \"Return videos with - the given ids.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"minimum\": \"1\",\n - \ \"description\": \"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.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"default\": \"5\"\n },\n - \ \"regionCode\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Use a chart that is specific - to the specified region\"\n },\n \"maxWidth\": {\n \"format\": - \"int32\",\n \"maximum\": \"8192\",\n \"minimum\": - \"72\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"description\": \"Return the player with maximum - height specified in\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/videos\",\n \"path\": - \"youtube/v3/videos\"\n },\n \"rate\": {\n \"id\": - \"youtube.videos.rate\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"rating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"location\": \"query\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Adds a like or dislike rating to - a video or removes a rating from a video.\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"flatPath\": - \"youtube/v3/videos/rate\",\n \"path\": \"youtube/v3/videos/rate\",\n - \ \"httpMethod\": \"POST\"\n }\n }\n }\n },\n \"discoveryVersion\": - \"v1\",\n \"canonicalName\": \"YouTube\",\n \"fullyEncodeReservedExpansion\": - true,\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"title\": \"YouTube Data API v3\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"name\": \"youtube\",\n \"kind\": \"discovery#restDescription\",\n \"schemas\": - {\n \"PlaylistItem\": {\n \"type\": \"object\",\n \"id\": \"PlaylistItem\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlistItem\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the playlist item.\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the playlist item's privacy status.\",\n \"$ref\": \"PlaylistItemStatus\"\n - \ },\n \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist item, such as its title and position in the playlist.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"PlaylistItemContentDetails\",\n - \ \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\"\n }\n },\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\"\n },\n - \ \"CaptionListResponse\": {\n \"id\": \"CaptionListResponse\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Caption\"\n },\n \"description\": - \"A list of captions that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n }\n }\n },\n \"TestItem\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"TestItemTestItemSnippet\"\n },\n \"featuredPart\": - {\n \"type\": \"boolean\"\n },\n \"gaia\": {\n \"format\": - \"int64\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"TestItem\"\n },\n \"SearchResultSnippet\": - {\n \"description\": \"Basic details about a search result, including - title, description and thumbnails of the item referenced by the search result.\",\n - \ \"properties\": {\n \"channelTitle\": {\n \"description\": - \"The title of the channel that published the resource that the search result - identifies.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"A description of the search result.\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - search result. 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.\"\n },\n \"title\": {\n \"description\": - \"The title of the search result.\",\n \"type\": \"string\"\n },\n - \ \"liveBroadcastContent\": {\n \"type\": \"string\",\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ]\n },\n \"publishedAt\": {\n \"description\": - \"The creation date and time of the resource that the search result identifies.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"SearchResultSnippet\"\n - \ },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"memberLevelName\": - {\n \"description\": \"The name of the Level at which the viewer - is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"gifterChannelId\": - {\n \"description\": \"The ID of the user that made the membership - gifting purchase. This matches the `snippet.authorChannelId` of the associated - membership gifting message.\",\n \"type\": \"string\"\n },\n - \ \"associatedMembershipGiftingMessageId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\"\n }\n }\n },\n \"PlaylistPlayer\": - {\n \"id\": \"PlaylistPlayer\",\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n \"properties\": - {\n \"banDurationSeconds\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The duration of the ban. This property is only - present if the banType is temporary.\",\n \"type\": \"string\"\n - \ },\n \"banType\": {\n \"description\": \"The type - of ban.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ]\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"The details of the user that was banned.\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoAbuseReportReasonSnippet\": {\n \"type\": - \"object\",\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"description\": - \"Basic details about a video category, such as its localized title.\",\n - \ \"properties\": {\n \"secondaryReasons\": {\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"description\": \"The secondary reasons associated with this reason, - if any are available. (There might be 0 or more.)\",\n \"type\": - \"array\"\n },\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label belonging to this abuse report - reason.\"\n }\n }\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"properties\": {\n \"allowed\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\"\n },\n \"blocked\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of region codes that identify countries - where the video is blocked. If this property is present and a country is not - listed in its value, then the video is viewable in that country. If this property - is present and contains an empty list, the video is viewable in all countries.\"\n - \ }\n },\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"type\": \"object\"\n },\n \"AbuseReport\": {\n \"type\": - \"object\",\n \"id\": \"AbuseReport\",\n \"properties\": {\n \"abuseTypes\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"AbuseType\"\n }\n },\n \"relatedEntities\": {\n \"items\": - {\n \"$ref\": \"RelatedEntity\"\n },\n \"type\": - \"array\"\n },\n \"description\": {\n \"type\": \"string\"\n - \ },\n \"subject\": {\n \"$ref\": \"Entity\"\n }\n - \ }\n },\n \"ChannelContentDetails\": {\n \"id\": \"ChannelContentDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Details about the content - of a channel.\",\n \"properties\": {\n \"relatedPlaylists\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"likes\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"uploads\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use - the videos.insert method to upload new videos and the videos.delete method - to delete previously uploaded videos.\"\n },\n \"watchLater\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch later playlist. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"favorites\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"watchHistory\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n }\n - \ }\n }\n }\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"properties\": {\n \"partsTotal\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"An estimate of the total number of parts that need to be processed for the - video. The number may be updated with more precise estimates while YouTube - processes the video.\"\n },\n \"timeLeftMs\": {\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"partsProcessed\": {\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Video processing progress and completion - time estimate.\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"type\": \"object\"\n },\n \"PlaylistLocalization\": {\n \"id\": - \"PlaylistLocalization\",\n \"properties\": {\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's title.\"\n },\n \"description\": {\n - \ \"description\": \"The localized strings for playlist's description.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Playlist localization setting\",\n \"type\": \"object\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n }\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ThirdPartyLinkListResponse\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonListResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The `visitorId` identifies the visitor.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n - \ },\n \"items\": {\n \"description\": \"A list of valid - abuse reasons that are used with `video.ReportAbuse`.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ }\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n }\n - \ },\n \"ActivityContentDetailsFavorite\": {\n \"description\": - \"Information about a video that was marked as a favorite video.\",\n \"id\": - \"ActivityContentDetailsFavorite\",\n \"type\": \"object\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that was marked as - a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n }\n },\n - \ \"ChannelConversionPings\": {\n \"properties\": {\n \"pings\": - {\n \"type\": \"array\",\n \"description\": \"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.\",\n - \ \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ }\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelConversionPings\",\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\"\n },\n \"SubscriptionSubscriberSnippet\": {\n \"properties\": - {\n \"thumbnails\": {\n \"description\": \"Thumbnails for - this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the subscriber.\"\n },\n \"description\": {\n - \ \"type\": \"string\",\n \"description\": \"The description - of the subscriber.\"\n },\n \"channelId\": {\n \"description\": - \"The channel ID of the subscriber.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"SubscriptionSubscriberSnippet\",\n \"description\": - \"Basic details about a subscription's subscriber including title, description, - channel ID and thumbnails.\",\n \"type\": \"object\"\n },\n \"CommentThread\": - {\n \"id\": \"CommentThread\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the comment thread and also the top level comment.\",\n \"$ref\": - \"CommentThreadSnippet\"\n },\n \"replies\": {\n \"$ref\": - \"CommentThreadReplies\",\n \"description\": \"The replies object - contains a limited number of replies (if any) to the top level comment found - in the snippet.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the comment thread.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#commentThread\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentThread\\\".\"\n }\n - \ },\n \"description\": \"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.\",\n \"type\": - \"object\"\n },\n \"Video\": {\n \"id\": \"Video\",\n \"type\": - \"object\",\n \"properties\": {\n \"monetizationDetails\": {\n - \ \"$ref\": \"VideoMonetizationDetails\",\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\"\n },\n \"processingDetails\": {\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoProcessingDetails\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"topicDetails\": {\n \"$ref\": - \"VideoTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the video.\"\n - \ },\n \"recordingDetails\": {\n \"description\": \"The - recordingDetails object encapsulates information about the location, date - and address where the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the video, such as its title, description, - and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n \"projectDetails\": - {\n \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"liveStreamingDetails\": - {\n \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\",\n \"$ref\": - \"VideoLiveStreamingDetails\"\n },\n \"suggestions\": {\n \"$ref\": - \"VideoSuggestions\",\n \"description\": \"The suggestions object - encapsulates suggestions that identify opportunities to improve the video - quality or the metadata for the uploaded video. This data can only be retrieved - by the video owner.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\",\n \"additionalProperties\": {\n \"$ref\": - \"VideoLocalization\"\n }\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"fileDetails\": - {\n \"description\": \"The fileDetails object encapsulates information - about the video file that was uploaded to YouTube, including the file's resolution, - duration, audio and video codecs, stream bitrates, and more. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n }\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the video - in an embedded player.\",\n \"$ref\": \"VideoPlayer\"\n },\n - \ \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n \"description\": - \"Age restriction details related to a video. This data can only be retrieved - by the video owner.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains statistics about the video.\",\n \"$ref\": - \"VideoStatistics\"\n },\n \"status\": {\n \"$ref\": - \"VideoStatus\",\n \"description\": \"The status object contains - information about the video's uploading, processing, and privacy statuses.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#video\"\n - \ }\n },\n \"description\": \"A *video* resource represents - a YouTube video.\"\n },\n \"MemberListResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of members that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Member\"\n }\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"MemberListResponse\"\n - \ },\n \"VideoMonetizationDetails\": {\n \"description\": \"Details - about monetization of a YouTube Video.\",\n \"id\": \"VideoMonetizationDetails\",\n - \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The value of access indicates whether the video - can be monetized or not.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageListResponse\": {\n \"id\": \"LiveChatMessageListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"offlineAt\": - {\n \"description\": \"The date and time when the underlying stream - went offline.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pollingIntervalMillis\": {\n \"description\": - \"The amount of time the client should wait before polling again.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"type\": \"array\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatMessageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\"\n }\n }\n },\n \"MonitorStreamInfo\": {\n \"description\": - \"Settings and Info of the monitor stream\",\n \"properties\": {\n \"enableMonitorStream\": - {\n \"description\": \"This value determines whether the monitor - stream is enabled for the broadcast. If the monitor stream is enabled, then - YouTube will broadcast the event content on a special stream intended only - for the broadcaster's consumption. The broadcaster can use the stream to review - the event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"boolean\"\n },\n \"broadcastStreamDelayMs\": - {\n \"type\": \"integer\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"If you have set the enableMonitorStream property - to true, then this property determines the length of the live broadcast delay.\",\n - \ \"format\": \"uint32\"\n },\n \"embedHtml\": {\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"MonitorStreamInfo\"\n },\n \"VideoContentDetails\": {\n \"description\": - \"Details about the content of a YouTube Video.\",\n \"id\": \"VideoContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"hasCustomThumbnail\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\"\n },\n \"contentRating\": - {\n \"$ref\": \"ContentRating\",\n \"description\": \"Specifies - the ratings that the video received under various rating schemes.\"\n },\n - \ \"dimension\": {\n \"type\": \"string\",\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\"\n },\n \"countryRestriction\": {\n \"$ref\": - \"AccessPolicy\",\n \"description\": \"The countryRestriction object - contains information about the countries where a video is (or is not) viewable.\"\n - \ },\n \"duration\": {\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\",\n \"type\": - \"string\"\n },\n \"projection\": {\n \"enum\": [\n - \ \"rectangular\",\n \"360\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"Specifies the projection format - of the video.\"\n },\n \"licensedContent\": {\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\",\n \"type\": \"boolean\"\n },\n \"caption\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"true\",\n - \ \"false\"\n ],\n \"description\": \"The value - of captions indicates whether the video has captions or not.\"\n },\n - \ \"regionRestriction\": {\n \"description\": \"The regionRestriction - object contains information about the countries where a video is (or is not) - viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"definition\": - {\n \"description\": \"The value of definition indicates whether - the video is available in high definition or only in standard definition.\",\n - \ \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"enum\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"type\": \"string\"\n }\n }\n },\n - \ \"ChannelSectionListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"description\": \"A list of ChannelSections - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelSectionListResponse\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": - \"ChannelSectionListResponse\",\n \"type\": \"object\"\n },\n \"ChannelSectionContentDetails\": - {\n \"properties\": {\n \"playlists\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"type\": \"array\"\n },\n - \ \"channels\": {\n \"description\": \"The channel ids for - type multiple_channels.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"description\": \"Details about a channelsection, including playlists - and channels.\",\n \"type\": \"object\",\n \"id\": \"ChannelSectionContentDetails\"\n - \ },\n \"SearchListResponse\": {\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"default\": \"youtube#searchListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"description\": \"Pagination information - for token pagination.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SearchResult\"\n }\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"SearchListResponse\"\n },\n - \ \"VideoFileDetails\": {\n \"id\": \"VideoFileDetails\",\n \"properties\": - {\n \"durationMs\": {\n \"format\": \"uint64\",\n \"description\": - \"The length of the uploaded video in milliseconds.\",\n \"type\": - \"string\"\n },\n \"fileName\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded file's name. This field is present - whether a video file or another type of file was uploaded.\"\n },\n - \ \"fileSize\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\",\n \"format\": \"uint64\"\n - \ },\n \"fileType\": {\n \"description\": \"The uploaded - file's type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"enumDescriptions\": [\n \"Known - video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an - MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ]\n - \ },\n \"container\": {\n \"description\": \"The uploaded - video file's container format.\",\n \"type\": \"string\"\n },\n - \ \"videoStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n },\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\",\n \"type\": - \"array\"\n },\n \"creationTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the uploaded video file - was created. The value is specified in ISO 8601 format. Currently, the following - ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"bitrateBps\": - {\n \"type\": \"string\",\n \"description\": \"The uploaded - video file's combined (video and audio) bitrate in bits per second.\",\n \"format\": - \"uint64\"\n },\n \"audioStreams\": {\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ }\n }\n },\n \"type\": \"object\",\n \"description\": - \"Describes original video file properties, including technical details about - audio and video streams, but also metadata information like content length, - digitization time, or geotagging information.\"\n },\n \"CommentThreadListResponse\": - {\n \"id\": \"CommentThreadListResponse\",\n \"properties\": {\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of comment - threads that match the request criteria.\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#commentThreadListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatBanSnippet\": - {\n \"id\": \"LiveChatBanSnippet\",\n \"properties\": {\n \"type\": - {\n \"description\": \"The type of ban.\",\n \"enum\": [\n - \ \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"An invalid ban type.\",\n - \ \"A permanent ban.\",\n \"A temporary ban.\"\n ]\n - \ },\n \"banDurationSeconds\": {\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"liveChatId\": - {\n \"description\": \"The chat this ban is pertinent to.\",\n \"type\": - \"string\"\n },\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageRetractedDetails\": {\n \"id\": \"LiveChatMessageRetractedDetails\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReportReason\": - {\n \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReason\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"id\": {\n \"description\": - \"The ID of this abuse report reason.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"VideoAbuseReportReason\"\n },\n \"LiveStreamStatus\": {\n \"properties\": - {\n \"healthStatus\": {\n \"$ref\": \"LiveStreamHealthStatus\",\n - \ \"description\": \"The health status of the stream.\"\n },\n - \ \"streamStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"id\": \"LiveStreamStatus\",\n - \ \"type\": \"object\",\n \"description\": \"Brief description of - the live stream status.\"\n },\n \"VideoLiveStreamingDetails\": {\n - \ \"properties\": {\n \"actualStartTime\": {\n \"type\": - \"string\",\n \"description\": \"The time that the broadcast actually - started. This value will not be available until the broadcast begins.\",\n - \ \"format\": \"date-time\"\n },\n \"activeLiveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the currently active live chat attached to this video. This field is filled - only if the video is a currently live broadcast that has live chat. Once the - broadcast transitions to complete this field will be removed and the live - chat closed down. For persistent broadcasts that live chat id will no longer - be tied to this video but rather to the new video being displayed at the persistent - page.\"\n },\n \"actualEndTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The time that - the broadcast actually ended. This value will not be available until the broadcast - is over.\"\n },\n \"scheduledEndTime\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast is scheduled to end. If the value is empty or - the property is not present, then the broadcast is scheduled to contiue indefinitely.\"\n - \ },\n \"concurrentViewers\": {\n \"description\": \"The - number of viewers currently watching the broadcast. The property and its value - will be present if the broadcast has current viewers and the broadcast owner - has not hidden the viewcount for the video. Note that YouTube stops tracking - the number of concurrent viewers for a broadcast when the broadcast ends. - So, this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"type\": \"string\",\n \"description\": \"The time - that the broadcast is scheduled to begin.\",\n \"format\": \"date-time\"\n - \ }\n },\n \"id\": \"VideoLiveStreamingDetails\",\n \"description\": - \"Details about the live streaming metadata.\",\n \"type\": \"object\"\n - \ },\n \"VideoProjectDetails\": {\n \"id\": \"VideoProjectDetails\",\n - \ \"properties\": {},\n \"type\": \"object\",\n \"description\": - \"DEPRECATED. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"CommentThreadSnippet\": {\n \"properties\": {\n \"canReply\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n - \ \"channelId\": {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"isPublic\": {\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\",\n \"type\": \"boolean\"\n },\n \"videoId\": - {\n \"description\": \"The ID of the video the comments refer to, - if any. No video_id implies a channel discussion comment.\",\n \"type\": - \"string\"\n },\n \"totalReplyCount\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total number of replies (not including the top level comment).\"\n },\n - \ \"topLevelComment\": {\n \"$ref\": \"Comment\",\n \"description\": - \"The top level comment of this thread.\"\n }\n },\n \"id\": - \"CommentThreadSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about a comment thread.\"\n },\n \"ContentRating\": - {\n \"type\": \"object\",\n \"description\": \"Ratings schemes. - The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n - \ \"id\": \"ContentRating\",\n \"properties\": {\n \"acbRating\": - {\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n - \ \"description\": \"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.\"\n },\n \"fskRating\": - {\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\"\n },\n \"cnaRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Romania's CONSILIUL NATIONAL - AL AUDIOVIZUALULUI (CNA).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AP\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"18+\",\n \"\"\n ],\n \"enum\": - [\n \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n - \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ]\n },\n \"cbfcRating\": - {\n \"description\": \"The video's Central Board of Film Certification - (CBFC - India) rating.\",\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ]\n },\n \"incaaRating\": {\n \"enum\": [\n - \ \"incaaUnspecified\",\n \"incaaAtp\",\n \"incaaSam13\",\n - \ \"incaaSam16\",\n \"incaaSam18\",\n \"incaaC\",\n - \ \"incaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"description\": - \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\",\n \"type\": \"string\"\n },\n \"rcnofRating\": - {\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Hungarian Nemzeti - Filmiroda, the Rating Committee of the National Office of Film.\"\n },\n - \ \"fpbRatingReasons\": {\n \"description\": \"Reasons that - explain why the video received its FPB (South Africa) rating.\",\n \"type\": - \"array\",\n \"items\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ],\n \"type\": - \"string\"\n }\n },\n \"ilfilmRating\": {\n \"description\": - \"The video's rating in Israel.\",\n \"type\": \"string\",\n \"enum\": - [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n - \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"mdaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\",\n \"enum\": [\n - \ \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n - \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n - \ \"mdaR21\",\n \"mdaUnrated\"\n ]\n },\n - \ \"bfvcRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Thailand's Board of Film and Video Censors.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ]\n },\n \"kfcbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n - \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n - \ \"kfcbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Kenya Film Classification - Board.\"\n },\n \"cicfRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n - \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Commission - de Contr\xF4le des Films (Belgium).\"\n },\n \"moctwRating\": - {\n \"description\": \"The video's rating from Taiwan's Ministry - of Culture (\u6587\u5316\u90E8).\",\n \"enum\": [\n \"moctwUnspecified\",\n - \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n - \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n - \ \"moctwR15\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ]\n },\n \"russiaRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - National Film Registry of the Russian Federation (MKRF - Russia) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ]\n },\n \"mpaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n - \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n - \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n - \ ],\n \"description\": \"The video's Motion Picture Association - of America (MPAA) rating.\",\n \"type\": \"string\"\n },\n - \ \"kmrbRating\": {\n \"description\": \"The video's Korea - Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. - The KMRB rates videos in South Korea.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"enum\": - [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ]\n },\n \"nbcRating\": - {\n \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ],\n \"description\": \"The - video's rating from the Maldives National Bureau of Classification.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n - \ \"18+R\",\n \"PU\",\n \"\"\n ]\n - \ },\n \"fpbRating\": {\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ],\n \"type\": \"string\"\n - \ },\n \"chvrsRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ],\n \"enum\": [\n - \ \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\"\n },\n - \ \"mccaaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG\",\n \"12A\",\n \"12\",\n - \ \"14 - this rating was removed from the new classification structure - introduced in 2013.\",\n \"15\",\n \"16 - this rating - was removed from the new classification structure introduced in 2013.\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"type\": - \"string\",\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n - \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n - \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n - \ \"mccaa18\",\n \"mccaaUnrated\"\n ]\n },\n - \ \"cceRating\": {\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\"\n },\n \"menaMpaaRating\": {\n \"type\": - \"string\",\n \"description\": \"The rating system for MENA countries, - a clone of MPAA. It is needed to prevent titles go live w/o additional QC - check, since some of them can be inappropriate for the countries at all. See - b/33408548 for more details.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ],\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ]\n - \ },\n \"csaRating\": {\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ],\n \"description\": \"The video's rating from France's - Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"anatelRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Anatel (Asociaci\xF3n Nacional de - Televisi\xF3n) rating for Chilean television.\",\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ]\n },\n - \ \"rteRating\": {\n \"description\": \"The video's rating - from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ]\n },\n \"medietilsynetRating\": {\n \"description\": - \"The video's rating from Medietilsynet, the Norwegian Media Authority.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"fcoRating\": - {\n \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Hong Kong's - Office for Film, Newspaper and Article Administration.\",\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ]\n - \ },\n \"ifcoRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"description\": \"The - video's Irish Film Classification Office (IFCO - Ireland) rating. See the - IFCO website for more information.\",\n \"type\": \"string\"\n },\n - \ \"icaaRating\": {\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"description\": - \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales - (ICAA - Spain) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ]\n },\n \"bbfcRating\": {\n \"enum\": - [\n \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ],\n \"description\": \"The video's British - Board of Film Classification (BBFC) rating.\"\n },\n \"resorteviolenciaRating\": - {\n \"description\": \"The video's rating in Venezuela.\",\n \"type\": - \"string\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ]\n },\n \"nmcRating\": {\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ]\n },\n - \ \"cccRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\"\n - \ },\n \"catvRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"C\",\n - \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n - \ \"18+\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"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.\"\n },\n \"djctqRating\": - {\n \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ],\n \"description\": \"The - video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"nfrcRating\": - {\n \"enum\": [\n \"nfrcUnspecified\",\n \"nfrcA\",\n - \ \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n - \ \"nfrcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Bulgarian - National Film Center.\"\n },\n \"mccypRating\": {\n \"enum\": - [\n \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n - \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Danish - Film Institute's (Det Danske Filminstitut) Media Council for Children and - Young People.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ]\n },\n \"ytRating\": - {\n \"type\": \"string\",\n \"description\": \"A rating - that YouTube uses to identify age-restricted content.\",\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"rtcRating\": {\n \"description\": \"The video's - General Directorate of Radio, Television and Cinematography (Mexico) rating.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"A\",\n \"B\",\n \"B15\",\n - \ \"C\",\n \"D\",\n \"\"\n ],\n \"enum\": - [\n \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ]\n },\n \"czfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in the Czech - Republic.\"\n },\n \"eirinRating\": {\n \"enum\": [\n - \ \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\"\n - \ },\n \"catvfrRating\": {\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ],\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ]\n },\n \"mtrcbRating\": {\n \"enum\": [\n - \ \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n - \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n - \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ]\n },\n \"pefilmRating\": {\n \"description\": - \"The video's rating in Peru.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ]\n },\n \"mekuRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Finland's Kansallinen - Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ]\n },\n - \ \"fcbmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG13\",\n \"P13\",\n \"18\",\n - \ \"18SX\",\n \"18PA\",\n \"18SG\",\n \"18PL\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"description\": \"The - video's rating from Malaysia's Film Censorship Board.\"\n },\n \"smsaRating\": - {\n \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Statens medier\xE5d (Sweden's - National Media Council).\"\n },\n \"bmukkRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Austrian - Board of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst - und Kultur).\",\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ]\n },\n - \ \"kijkwijzerRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ],\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\"\n },\n \"tvpgRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"description\": \"The - video's TV Parental Guidelines (TVPG) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ]\n },\n \"chfilmRating\": {\n \"enum\": - [\n \"chfilmUnspecified\",\n \"chfilm0\",\n \"chfilm6\",\n - \ \"chfilm12\",\n \"chfilm16\",\n \"chfilm18\",\n - \ \"chfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Switzerland.\"\n },\n \"skfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n - \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n - \ \"skfilmUnrated\"\n ],\n \"description\": \"The - video's rating in Slovakia.\"\n },\n \"mibacRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\",\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ]\n },\n - \ \"lsfRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"enum\": [\n - \ \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ]\n },\n \"nbcplRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n - \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n - \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ],\n - \ \"description\": \"The video's rating in Poland.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"oflcRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\",\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ]\n },\n \"cscfRating\": {\n \"enum\": [\n - \ \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n - \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Luxembourg's Commission de surveillance de la classification des - films (CSCF).\"\n },\n \"djctqRatingReasons\": {\n \"type\": - \"array\",\n \"items\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"Brazil rating content descriptors. See - http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ],\n \"enum\": [\n - \ \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ],\n \"type\": - \"string\"\n },\n \"description\": \"Reasons that explain - why the video received its DJCQT (Brazil) rating.\"\n },\n \"nfvcbRating\": - {\n \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\"\n - \ },\n \"eefilmRating\": {\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Estonia.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"nkclvRating\": - {\n \"description\": \"The video's rating from the Nacion\xE3lais - Kino centrs (National Film Centre of Latvia).\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n - \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n - \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"mpaatRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"description\": \"The rating - system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ]\n },\n \"smaisRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n - \ \"smais12\",\n \"smais14\",\n \"smais16\",\n - \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"description\": - \"The video's rating in Iceland.\",\n \"type\": \"string\"\n },\n - \ \"cncRating\": {\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"description\": \"Rating - system in France - Commission de classification cinematographique\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"fmocRating\": {\n \"enum\": [\n \"fmocUnspecified\",\n - \ \"fmocU\",\n \"fmoc10\",\n \"fmoc12\",\n - \ \"fmoc16\",\n \"fmoc18\",\n \"fmocE\",\n - \ \"fmocUnrated\"\n ],\n \"description\": \"This - property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ]\n },\n \"grfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Greece.\",\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"mcstRating\": {\n \"enum\": - [\n \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ],\n \"description\": \"The video's rating system for Vietnam - - MCST\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ]\n },\n \"agcomRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"description\": \"The - video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\",\n \"type\": \"string\"\n },\n \"mocRating\": - {\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"description\": \"The - video's Ministerio de Cultura (Colombia) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"ecbmctRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n - \ \"ecbmct7a\",\n \"ecbmct7plus\",\n \"ecbmct13a\",\n - \ \"ecbmct13plus\",\n \"ecbmct15a\",\n \"ecbmct15plus\",\n - \ \"ecbmct18plus\",\n \"ecbmctUnrated\"\n ],\n - \ \"description\": \"Rating system in Turkey - Evaluation and Classification - Board of the Ministry of Culture and Tourism\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ]\n },\n \"egfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ],\n - \ \"enum\": [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n - \ \"egfilm18\",\n \"egfilmBn\",\n \"egfilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Egypt.\"\n }\n }\n },\n \"CdnSettings\": - {\n \"description\": \"Brief description of the live stream cdn settings.\",\n - \ \"id\": \"CdnSettings\",\n \"type\": \"object\",\n \"properties\": - {\n \"ingestionType\": {\n \"description\": \" The method - or protocol used to transmit the video stream.\",\n \"enum\": [\n - \ \"rtmp\",\n \"dash\",\n \"webrtc\",\n \"hls\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"format\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The format of the video stream that you are sending - to Youtube. \",\n \"type\": \"string\"\n },\n \"resolution\": - {\n \"enum\": [\n \"240p\",\n \"360p\",\n \"480p\",\n - \ \"720p\",\n \"1080p\",\n \"1440p\",\n \"2160p\",\n - \ \"variable\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The resolution of the inbound video data.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"ingestionInfo\": - {\n \"$ref\": \"IngestionInfo\",\n \"description\": \"The - ingestionInfo object contains information that YouTube provides that you need - to transmit your RTMP or HTTP stream to YouTube.\"\n },\n \"frameRate\": - {\n \"enum\": [\n \"30fps\",\n \"60fps\",\n - \ \"variable\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The frame rate of the inbound video data.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n }\n },\n \"ChannelSettings\": - {\n \"id\": \"ChannelSettings\",\n \"properties\": {\n \"country\": - {\n \"type\": \"string\",\n \"description\": \"The country - of the channel.\"\n },\n \"showRelatedChannels\": {\n \"description\": - \"Whether related channels should be proposed.\",\n \"type\": \"boolean\"\n - \ },\n \"profileColor\": {\n \"type\": \"string\",\n - \ \"description\": \"A prominent color that can be rendered on this - channel page.\"\n },\n \"featuredChannelsUrls\": {\n \"type\": - \"array\",\n \"description\": \"The list of featured channels.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"keywords\": {\n \"description\": \"Lists keywords associated - with the channel, comma-separated.\",\n \"type\": \"string\"\n },\n - \ \"moderateComments\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether user-submitted comments left on the channel page need to be approved - by the channel owner to be publicly visible.\"\n },\n \"defaultTab\": - {\n \"description\": \"Which content tab users should see when viewing - the channel.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"Specifies the channel description.\",\n \"type\": - \"string\"\n },\n \"featuredChannelsTitle\": {\n \"type\": - \"string\",\n \"description\": \"Title for the featured channels - tab.\"\n },\n \"defaultLanguage\": {\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the channel title.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"showBrowseView\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the tab to browse the videos should be - displayed.\"\n },\n \"unsubscribedTrailer\": {\n \"description\": - \"The trailer of the channel, for users that are not subscribers.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Branding properties for the channel view.\"\n },\n \"Entity\": {\n - \ \"properties\": {\n \"typeId\": {\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"url\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"Entity\"\n },\n \"LiveBroadcastContentDetails\": - {\n \"properties\": {\n \"mesh\": {\n \"type\": \"string\",\n - \ \"format\": \"byte\",\n \"description\": \"The mesh for - projecting the video if projection is mesh. The mesh value must be a UTF-8 - string containing the base-64 encoding of 3D mesh data that follows the Spherical - Video V2 RFC specification for an mshp box, excluding the box size and type - but including the following four reserved zero bytes for the version and flags.\"\n - \ },\n \"enableLowLatency\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether this broadcast has low latency - enabled.\"\n },\n \"closedCaptionsType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"latencyPreference\": {\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ]\n },\n \"stereoLayout\": {\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\",\n \"enum\": - [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"projection\": - {\n \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"type\": - \"string\",\n \"description\": \"The projection format of this broadcast. - This defaults to rectangular.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"enableAutoStart\": {\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\",\n - \ \"type\": \"boolean\"\n },\n \"enableDvr\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting determines whether - viewers can access DVR controls while watching the video. DVR controls enable - the viewer to control the video playback experience by pausing, rewinding, - or fast forwarding content. The default value for this property is true. *Important:* - You must set the value to true and also set the enableArchive property's value - to true if you want to make playback available immediately after the broadcast - ends.\"\n },\n \"monitorStream\": {\n \"$ref\": \"MonitorStreamInfo\",\n - \ \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\"\n },\n \"recordFromStart\": - {\n \"type\": \"boolean\",\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\"\n },\n \"enableClosedCaptions\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether HTTP POST closed captioning is enabled for this broadcast. - The ingestion URL of the closed captions is returned through the liveStreams - API. This is mutually exclusive with using the closed_captions_type property, - and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n - \ },\n \"enableContentEncryption\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\"\n },\n \"startWithSlate\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast should automatically begin with an in-stream - slate when you update the broadcast's status to live. After updating the status, - you then need to send a liveCuepoints.insert request that sets the cuepoint's - eventState to end to remove the in-stream slate and make your broadcast stream - visible to viewers.\"\n },\n \"boundStreamId\": {\n \"type\": - \"string\",\n \"description\": \"This value uniquely identifies the - live stream bound to the broadcast.\"\n },\n \"enableEmbed\": - {\n \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\",\n \"type\": \"boolean\"\n },\n \"enableAutoStop\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto stop is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"boundStreamLastUpdateTimeMs\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\",\n \"format\": \"date-time\"\n - \ }\n },\n \"description\": \"Detailed settings of a broadcast.\",\n - \ \"id\": \"LiveBroadcastContentDetails\",\n \"type\": \"object\"\n - \ },\n \"LiveStream\": {\n \"description\": \"A live stream describes - a live ingestion point.\",\n \"properties\": {\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the stream.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveStream\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - content_details object contains information about the stream, including the - closed captions ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"cdn\": - {\n \"$ref\": \"CdnSettings\",\n \"description\": \"The - cdn object defines the live stream's content delivery network (CDN) settings. - These settings provide details about the manner in which you stream your content - to YouTube.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about live stream's status.\",\n - \ \"$ref\": \"LiveStreamStatus\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveStreamSnippet\",\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveStream\"\n },\n \"LiveChatModeratorSnippet\": {\n - \ \"id\": \"LiveChatModeratorSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"moderatorDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - moderator.\"\n },\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the live chat this moderator can act - on.\"\n }\n }\n },\n \"InvideoBranding\": {\n \"description\": - \"LINT.IfChange Describes an invideo branding.\",\n \"id\": \"InvideoBranding\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"imageUrl\": - {\n \"description\": \"The url of the uploaded image. Only used in - apiary to api communication.\",\n \"type\": \"string\"\n },\n - \ \"targetChannelId\": {\n \"description\": \"The channel to - which this branding links. If not present it defaults to the current channel.\",\n - \ \"type\": \"string\"\n },\n \"imageBytes\": {\n \"type\": - \"string\",\n \"description\": \"The bytes the uploaded image. Only - used in api to youtube communication.\",\n \"format\": \"byte\"\n - \ },\n \"timing\": {\n \"description\": \"The temporal - position within the video where watermark will be displayed.\",\n \"$ref\": - \"InvideoTiming\"\n },\n \"position\": {\n \"$ref\": - \"InvideoPosition\",\n \"description\": \"The spatial position within - the video where the branding watermark will be displayed.\"\n }\n }\n - \ },\n \"VideoCategorySnippet\": {\n \"description\": \"Basic details - about a video category, such as its localized title.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel that created the video category.\",\n - \ \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\"\n },\n \"assignable\": - {\n \"type\": \"boolean\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The video category's title.\"\n - \ }\n },\n \"id\": \"VideoCategorySnippet\"\n },\n \"LocalizedProperty\": - {\n \"properties\": {\n \"default\": {\n \"type\": \"string\"\n - \ },\n \"defaultLanguage\": {\n \"$ref\": \"LanguageTag\",\n - \ \"description\": \"The language of the default property.\"\n },\n - \ \"localized\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LocalizedString\"\n }\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LocalizedProperty\"\n },\n - \ \"LocalizedString\": {\n \"properties\": {\n \"language\": - {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LocalizedString\"\n },\n \"GeoPoint\": {\n \"description\": \"Geographical - coordinates of a point, in WGS84.\",\n \"type\": \"object\",\n \"properties\": - {\n \"longitude\": {\n \"description\": \"Longitude in degrees.\",\n - \ \"format\": \"double\",\n \"type\": \"number\"\n },\n - \ \"latitude\": {\n \"description\": \"Latitude in degrees.\",\n - \ \"format\": \"double\",\n \"type\": \"number\"\n },\n - \ \"altitude\": {\n \"type\": \"number\",\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\",\n \"format\": - \"double\"\n }\n },\n \"id\": \"GeoPoint\"\n },\n \"LiveChatTextMessageDetails\": - {\n \"properties\": {\n \"messageText\": {\n \"type\": - \"string\",\n \"description\": \"The user's message.\"\n }\n - \ },\n \"id\": \"LiveChatTextMessageDetails\",\n \"type\": \"object\"\n - \ },\n \"ChannelSnippet\": {\n \"type\": \"object\",\n \"id\": - \"ChannelSnippet\",\n \"properties\": {\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the channel was created.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's title.\"\n },\n \"localized\": - {\n \"$ref\": \"ChannelLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"customUrl\": - {\n \"type\": \"string\",\n \"description\": \"The custom - url of the channel.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails in your application, make - sure that your code uses the image URLs exactly as they are returned in API - responses. For example, your application should not use the http domain instead - of the https domain in a URL returned in an API response. Beginning in July - 2018, channel thumbnail URLs will only be available in the https domain, which - is how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel's default title and description.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the channel.\"\n }\n },\n \"description\": \"Basic details - about a channel, including title, description and thumbnails.\"\n },\n - \ \"CaptionSnippet\": {\n \"description\": \"Basic details about a - caption track, such as its language and name.\",\n \"id\": \"CaptionSnippet\",\n - \ \"properties\": {\n \"trackKind\": {\n \"description\": - \"The caption track's type.\",\n \"enum\": [\n \"standard\",\n - \ \"ASR\",\n \"forced\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"audioTrackType\": {\n - \ \"description\": \"The type of audio track associated with the caption - track.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ]\n },\n - \ \"status\": {\n \"description\": \"The caption track's status.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"serving\",\n - \ \"syncing\",\n \"failed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"lastUpdated\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the caption track was last updated.\",\n \"type\": - \"string\"\n },\n \"isLarge\": {\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\",\n \"type\": \"boolean\"\n },\n - \ \"isCC\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\"\n },\n \"name\": {\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The name of the caption track. The name is intended - to be visible to the user as an option during playback.\"\n },\n \"failureReason\": - {\n \"description\": \"The reason that YouTube failed to process - the caption track. This property is only present if the state property's value - is failed.\",\n \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"language\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The language of - the caption track. The property value is a BCP-47 language tag.\",\n \"type\": - \"string\"\n },\n \"isAutoSynced\": {\n \"description\": - \"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.\",\n \"type\": \"boolean\"\n },\n \"isDraft\": - {\n \"type\": \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n },\n \"isEasyReader\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video associated with the caption track. @mutable youtube.captions.insert\",\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n }\n - \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetails\": - {\n \"properties\": {\n \"recommendation\": {\n \"description\": - \"The recommendation object contains information about a recommended resource. - This property is only present if the snippet.type is recommendation.\",\n - \ \"$ref\": \"ActivityContentDetailsRecommendation\"\n },\n - \ \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"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.\"\n },\n \"social\": {\n \"$ref\": - \"ActivityContentDetailsSocial\",\n \"description\": \"The social - object contains details about a social network post. This property is only - present if the snippet.type is social.\"\n },\n \"upload\": - {\n \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\",\n - \ \"$ref\": \"ActivityContentDetailsUpload\"\n },\n \"promotedItem\": - {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n \"description\": - \"The promotedItem object contains details about a resource which is being - promoted. This property is only present if the snippet.type is promotedItem.\"\n - \ },\n \"like\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsLike\"\n },\n \"channelItem\": {\n \"description\": - \"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.\",\n - \ \"$ref\": \"ActivityContentDetailsChannelItem\"\n },\n \"subscription\": - {\n \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"bulletin\": {\n \"description\": \"The bulletin - object contains details about a channel bulletin post. This object is only - present if the snippet.type is bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n - \ },\n \"playlistItem\": {\n \"description\": \"The - playlistItem object contains information about a new playlist item. This property - is only present if the snippet.type is playlistItem.\",\n \"$ref\": - \"ActivityContentDetailsPlaylistItem\"\n },\n \"comment\": {\n - \ \"$ref\": \"ActivityContentDetailsComment\",\n \"description\": - \"The comment object contains information about a resource that received a - comment. This property is only present if the snippet.type is comment.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Details - about the content of an activity: the video that was shared, the channel that - was subscribed to, etc.\",\n \"id\": \"ActivityContentDetails\"\n },\n - \ \"I18nRegion\": {\n \"id\": \"I18nRegion\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the i18n region.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#i18nRegion\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegion\\\".\"\n }\n },\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\"\n - \ },\n \"VideoLocalization\": {\n \"properties\": {\n \"title\": - {\n \"description\": \"Localized version of the video's title.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"Localized version of the video's description.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Localized versions of certain - video properties (e.g. title).\",\n \"id\": \"VideoLocalization\",\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastStatistics\": {\n \"type\": - \"object\",\n \"properties\": {\n \"concurrentViewers\": {\n \"type\": - \"string\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"format\": \"uint64\"\n },\n \"totalChatCount\": - {\n \"description\": \"The total number of live chat messages currently - on the broadcast. The property and its value will be present if the broadcast - is public, has the live chat feature enabled, and has at least one message. - Note that this field will not be filled after the broadcast ends. So this - property would not identify the number of chat messages for an archived video - of a completed live broadcast.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n }\n },\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"Statistics about the live broadcast. These represent - a snapshot of the values at the time of the request. Statistics are only returned - for live broadcasts.\"\n },\n \"ChannelListResponse\": {\n \"properties\": - {\n \"items\": {\n \"items\": {\n \"$ref\": \"Channel\"\n - \ },\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n }\n - \ },\n \"id\": \"ChannelListResponse\",\n \"type\": \"object\"\n - \ },\n \"VideoRecordingDetails\": {\n \"type\": \"object\",\n \"id\": - \"VideoRecordingDetails\",\n \"description\": \"Recording information - associated with the video.\",\n \"properties\": {\n \"recordingDate\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the video was recorded.\"\n - \ },\n \"location\": {\n \"$ref\": \"GeoPoint\",\n \"description\": - \"The geolocation information associated with the video.\"\n },\n \"locationDescription\": - {\n \"description\": \"The text description of the location where - the video was recorded.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"SubscriptionContentDetails\": {\n \"id\": \"SubscriptionContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"totalItemCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The approximate number of items that the subscription points to.\"\n },\n - \ \"newItemCount\": {\n \"description\": \"The number of new - items in the subscription since its content was last read.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"activityType\": - {\n \"description\": \"The type of activity this subscription is - for (only uploads, everything).\",\n \"type\": \"string\",\n \"enum\": - [\n \"subscriptionActivityTypeUnspecified\",\n \"all\",\n - \ \"uploads\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"description\": \"Details about the content to witch a subscription - refers.\"\n },\n \"VideoCategory\": {\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video category.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#videoCategory\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategory\\\".\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the video category, including its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"VideoCategory\",\n - \ \"type\": \"object\",\n \"description\": \"A *videoCategory* resource - identifies a category that has been or could be associated with uploaded videos.\"\n - \ },\n \"SearchResult\": {\n \"type\": \"object\",\n \"description\": - \"A search result contains information about a YouTube video, channel, or - playlist that matches the search parameters specified in an API request. While - a search result points to a uniquely identifiable resource, like a video, - it does not have its own persistent data.\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#searchResult\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#searchResult\\\".\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about a search result, such as its title or description. For example, if the - search result is a video, then the title will be the video's title and the - description will be the video's description.\",\n \"$ref\": \"SearchResultSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The id object contains information that can - be used to uniquely identify the resource that matches the search request.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"id\": \"SearchResult\"\n - \ },\n \"ChannelProfileDetails\": {\n \"properties\": {\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel ID.\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelProfileDetails\"\n - \ },\n \"VideoFileDetailsVideoStream\": {\n \"properties\": {\n - \ \"widthPixels\": {\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\",\n \"type\": - \"integer\"\n },\n \"codec\": {\n \"type\": \"string\",\n - \ \"description\": \"The video codec that the stream uses.\"\n },\n - \ \"bitrateBps\": {\n \"type\": \"string\",\n \"description\": - \"The video stream's bitrate, in bits per second.\",\n \"format\": - \"uint64\"\n },\n \"aspectRatio\": {\n \"type\": \"number\",\n - \ \"description\": \"The video content's display aspect ratio, which - specifies the aspect ratio in which the video should be displayed.\",\n \"format\": - \"double\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"rotation\": {\n \"type\": \"string\",\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ]\n },\n \"frameRateFps\": {\n \"type\": - \"number\",\n \"format\": \"double\",\n \"description\": - \"The video stream's frame rate, in frames per second.\"\n },\n \"heightPixels\": - {\n \"description\": \"The encoded video content's height in pixels.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Information - about a video stream.\",\n \"id\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"ActivityContentDetailsSubscription\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"description\": \"Information about a channel that a user - subscribed to.\",\n \"id\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"CommentSnippet\": {\n \"properties\": {\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"moderationStatus\": - {\n \"type\": \"string\",\n \"description\": \"The comment's - moderation status. Will not be set if the comments were requested through - the id filter.\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"updatedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the comment was last updated.\",\n \"type\": \"string\"\n - \ },\n \"authorChannelUrl\": {\n \"description\": \"Link - to the author's YouTube channel, if any.\",\n \"type\": \"string\"\n - \ },\n \"canRate\": {\n \"description\": \"Whether the - current viewer can rate this comment.\",\n \"type\": \"boolean\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comment refers to, if any.\"\n },\n \"likeCount\": - {\n \"description\": \"The total number of likes this comment has - received.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"parentId\": {\n \"type\": \"string\",\n \"description\": - \"The unique id of the parent comment, only set for replies.\"\n },\n - \ \"viewerRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"description\": \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n },\n \"textDisplay\": {\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"textOriginal\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the comment was originally - published.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"authorProfileImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"The URL for - the avatar of the user who posted the comment.\"\n }\n },\n \"description\": - \"Basic details about a comment, such as its author and text.\",\n \"id\": - \"CommentSnippet\",\n \"type\": \"object\"\n },\n \"PropertyValue\": - {\n \"properties\": {\n \"property\": {\n \"description\": - \"A property.\",\n \"type\": \"string\"\n },\n \"value\": - {\n \"description\": \"The property's value.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"PropertyValue\",\n \"type\": - \"object\",\n \"description\": \"A pair Property / Value.\"\n },\n - \ \"VideoSuggestions\": {\n \"type\": \"object\",\n \"id\": \"VideoSuggestions\",\n - \ \"properties\": {\n \"tagSuggestions\": {\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoSuggestionsTagSuggestion\"\n }\n },\n \"editorSuggestions\": - {\n \"type\": \"array\",\n \"description\": \"A list of - video editing operations that might improve the video quality or playback - experience of the uploaded video.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"Picture brightness levels seem off and could be corrected.\",\n - \ \"The video appears shaky and could be stabilized.\",\n \"Margins - (mattes) detected around the picture could be cropped.\",\n \"The - audio track appears silent and could be swapped with a better quality one.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n - \ \"videoAutoLevels\",\n \"videoStabilize\",\n \"videoCrop\",\n - \ \"audioQuietAudioSwap\"\n ]\n }\n },\n - \ \"processingWarnings\": {\n \"description\": \"A list of - reasons why YouTube may have difficulty transcoding the uploaded video or - that might result in an erroneous transcoding. These warnings are generated - before YouTube actually processes the uploaded video file. In addition, they - identify issues that are unlikely to cause the video processing to fail but - that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"enumDescriptions\": [\n \"Unrecognized file format, - transcoding is likely to fail.\",\n \"Unrecognized video codec, - transcoding is likely to fail.\",\n \"Unrecognized audio codec, - transcoding is likely to fail.\",\n \"Conflicting container and - stream resolutions.\",\n \"Edit lists are not currently supported.\",\n - \ \"Video codec that is known to cause problems was used.\",\n - \ \"Audio codec that is known to cause problems was used.\",\n - \ \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ]\n }\n },\n \"processingErrors\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"enum\": - [\n \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n - \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n - \ \"unsupportedSpatialAudioLayout\"\n ],\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of errors that will prevent YouTube from - successfully processing the uploaded video video. These errors indicate that, - regardless of the video's current processing status, eventually, that status - will almost certainly be failed.\"\n },\n \"processingHints\": - {\n \"description\": \"A list of suggestions that may improve YouTube's - ability to process the video.\",\n \"items\": {\n \"enum\": - [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"description\": \"Specifies suggestions on how - to improve video content, including encoding hints, tag suggestions, and editor - suggestions.\"\n },\n \"LiveStreamHealthStatus\": {\n \"type\": - \"object\",\n \"properties\": {\n \"lastUpdateTimeSeconds\": {\n - \ \"description\": \"The last time this status was updated (in seconds)\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"status\": {\n \"description\": \"The status code of this - stream\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"good\",\n - \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n - \ ]\n },\n \"configurationIssues\": {\n \"items\": - {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n },\n - \ \"description\": \"The configurations issues on this stream\",\n - \ \"type\": \"array\"\n }\n },\n \"id\": \"LiveStreamHealthStatus\"\n - \ },\n \"LiveChatMessageSnippet\": {\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"superStickerDetails\": - {\n \"description\": \"Details about the Super Sticker event, this - is only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"fanFundingEventDetails\": {\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n },\n \"superChatDetails\": - {\n \"description\": \"Details about the Super Chat event, this is - only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n - \ \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"textMessageDetails\": {\n \"$ref\": \"LiveChatTextMessageDetails\",\n - \ \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\"\n },\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"authorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that authored this message, this field is not always filled. textMessageEvent - - the user that wrote the message fanFundingEvent - the user that funded the - broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"membershipGiftingDetails\": {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n - \ \"description\": \"Details about the Membership Gifting event, this - is only set if the type is 'membershipGiftingEvent'.\"\n },\n \"displayMessage\": - {\n \"type\": \"string\",\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"messageDeletedDetails\": {\n \"$ref\": - \"LiveChatMessageDeletedDetails\"\n },\n \"hasDisplayContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the message has display content that should be displayed to users.\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the message - was orignally published.\"\n },\n \"newSponsorDetails\": {\n - \ \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": - \"Details about the New Member Announcement event, this is only set if the - type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term - for \\\"sponsor\\\".\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ],\n \"description\": \"The type of message, this will - always be present, it determines the contents of the message as well as which - fields will be present.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"description\": \"Next ID: 33\"\n },\n \"Cuepoint\": - {\n \"description\": \"Note that there may be a 5-second end-point resolution - issue. For instance, if a cuepoint comes in for 22:03:27, we may stuff the - cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact of HLS.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"walltimeMs\": - {\n \"type\": \"string\",\n \"description\": \"The wall - clock time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\",\n \"format\": \"uint64\"\n - \ },\n \"insertionOffsetTimeMs\": {\n \"type\": \"string\",\n - \ \"description\": \"The time when the cuepoint should be inserted - by offset to the broadcast actual start time.\",\n \"format\": \"int64\"\n - \ },\n \"durationSecs\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The duration - of this cuepoint.\"\n },\n \"cueType\": {\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The identifier for cuepoint resource.\"\n }\n - \ },\n \"id\": \"Cuepoint\"\n },\n \"PlaylistListResponse\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistListResponse\",\n - \ \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"items\": {\n \"description\": \"A list of playlists - that match the request criteria\",\n \"items\": {\n \"$ref\": - \"Playlist\"\n },\n \"type\": \"array\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#playlistListResponse\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n }\n },\n \"Member\": - {\n \"id\": \"Member\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#member\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#member\\\".\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the member.\"\n }\n },\n \"description\": \"A *member* resource - represents a member for a YouTube channel. A member provides recurring monetary - support to a creator and receives special benefits.\",\n \"type\": \"object\"\n - \ },\n \"LiveBroadcastStatus\": {\n \"properties\": {\n \"liveBroadcastPriority\": - {\n \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Low priority broadcast: for low view count HoAs or other low - priority broadcasts.\",\n \"Normal priority broadcast: for regular - HoAs and broadcasts.\",\n \"High priority broadcast: for high profile - HoAs, like PixelCorp ones.\"\n ]\n },\n \"lifeCycleStatus\": - {\n \"enumDescriptions\": [\n \"No value or the value - is unknown.\",\n \"Incomplete settings, but otherwise valid\",\n - \ \"Complete settings\",\n \"Visible only to partner, - may need special UI treatment\",\n \"Viper is recording; this means - the \\\"clock\\\" is running\",\n \"The broadcast is finished.\",\n - \ \"This broadcast was removed by admin action\",\n \"Transition - into TESTING has been requested\",\n \"Transition into LIVE has - been requested\"\n ],\n \"description\": \"The broadcast's - status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"type\": \"string\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ]\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the broadcast is made for kids or not, decided by YouTube instead of the creator. - This field is read only.\"\n },\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"recordingStatus\": {\n \"description\": - \"The broadcast's recording status.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ]\n }\n },\n - \ \"id\": \"LiveBroadcastStatus\",\n \"description\": \"Live broadcast - state.\",\n \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": - {\n \"id\": \"LiveBroadcastListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"description\": \"A list of broadcasts that match - the request criteria.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveBroadcastListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n }\n },\n \"Caption\": {\n \"id\": \"Caption\",\n - \ \"description\": \"A *caption* resource represents a YouTube caption - track. A caption track is associated with exactly one YouTube video.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#caption\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the caption track.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n }\n - \ },\n \"snippet\": {\n \"$ref\": \"CaptionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the caption.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ActivityContentDetailsBulletin\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsBulletin\",\n \"properties\": {\n - \ \"resourceId\": {\n \"description\": \"The resourceId object - contains information that identifies the resource associated with a bulletin - post. @mutable youtube.activities.insert\",\n \"$ref\": \"ResourceId\"\n - \ }\n },\n \"description\": \"Details about a channel bulletin - post.\"\n },\n \"LiveChatMessageAuthorDetails\": {\n \"properties\": - {\n \"channelId\": {\n \"description\": \"The YouTube channel - ID.\",\n \"type\": \"string\"\n },\n \"channelUrl\": - {\n \"description\": \"The channel's URL.\",\n \"type\": - \"string\"\n },\n \"isChatModerator\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a moderator - of the live chat.\"\n },\n \"isChatOwner\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is the owner - of the live chat.\"\n },\n \"isChatSponsor\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a sponsor - of the live chat.\"\n },\n \"isVerified\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author's identity has - been verified by YouTube.\"\n },\n \"profileImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The channel's display name.\"\n - \ }\n },\n \"id\": \"LiveChatMessageAuthorDetails\",\n \"type\": - \"object\"\n },\n \"PlaylistStatus\": {\n \"id\": \"PlaylistStatus\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"privacyStatus\": - {\n \"description\": \"The playlist's privacy status.\",\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ }\n },\n \"InvideoTiming\": {\n \"properties\": {\n \"durationMs\": - {\n \"description\": \"Defines the duration in milliseconds for which - the promotion should be displayed. If missing, the client should use the default.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"offsetMs\": {\n \"description\": \"Defines the time at - which the promotion will appear. Depending on the value of type the value - of the offsetMs field will represent a time offset from the start or from - the end of the video, expressed in milliseconds.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Describes a timing type. If the value is offsetFromStart, then the offsetMs - field represents an offset from the start of the video. If the value is offsetFromEnd, - then the offsetMs field represents an offset from the end of the video.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ }\n },\n \"description\": \"Describes a temporal position - of a visual widget inside a video.\",\n \"id\": \"InvideoTiming\",\n - \ \"type\": \"object\"\n },\n \"Comment\": {\n \"description\": - \"A *comment* represents a single YouTube comment.\",\n \"type\": \"object\",\n - \ \"id\": \"Comment\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment.\",\n \"$ref\": - \"CommentSnippet\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#comment\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#comment\\\".\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelSectionTargeting\": {\n \"description\": - \"ChannelSection targeting setting.\",\n \"type\": \"object\",\n \"id\": - \"ChannelSectionTargeting\",\n \"properties\": {\n \"languages\": - {\n \"description\": \"The language the channel section is targeting.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"regions\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The region the channel section is targeting.\",\n \"type\": \"array\"\n - \ },\n \"countries\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The country the channel section is targeting.\"\n }\n }\n },\n - \ \"MembershipsDurationAtLevel\": {\n \"id\": \"MembershipsDurationAtLevel\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member for the given level.\",\n \"type\": \"string\"\n },\n - \ \"level\": {\n \"description\": \"Pricing level ID.\",\n - \ \"type\": \"string\"\n },\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\"\n }\n }\n - \ },\n \"LiveChatSuperChatDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"tier\": {\n \"type\": - \"integer\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\",\n \"format\": - \"uint32\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this Super Chat event.\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the purchase was made.\"\n - \ },\n \"amountMicros\": {\n \"description\": \"The - amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveChatSuperChatDetails\"\n },\n \"ImageSettings\": {\n \"description\": - \"Branding properties for images associated with the channel.\",\n \"id\": - \"ImageSettings\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"bannerTvImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. TV size extra high resolution (2120x1192).\"\n },\n - \ \"bannerMobileHdImageUrl\": {\n \"description\": \"Banner - image. Mobile size high resolution (1280x360).\",\n \"type\": \"string\"\n - \ },\n \"smallBrandedBannerImageImapScript\": {\n \"description\": - \"The image map script for the small banner image.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTvLowImageUrl\": {\n \"description\": - \"Banner image. TV size low resolution (854x480).\",\n \"type\": - \"string\"\n },\n \"bannerTabletImageUrl\": {\n \"description\": - \"Banner image. Tablet size (1707x283).\",\n \"type\": \"string\"\n - \ },\n \"bannerTvMediumImageUrl\": {\n \"description\": - \"Banner image. TV size medium resolution (1280x720).\",\n \"type\": - \"string\"\n },\n \"largeBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 854px - by 70px image that appears below the video player in the expanded video view - of the video watch page.\"\n },\n \"trackingImageUrl\": {\n - \ \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"bannerImageUrl\": {\n - \ \"description\": \"Banner image. Desktop size (1060x175).\",\n \"type\": - \"string\"\n },\n \"bannerTabletHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\"\n },\n \"bannerMobileExtraHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size high resolution (1440x395).\",\n \"type\": - \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size extra - high resolution (2560x424).\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"bannerTvHighImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. TV size high resolution (1920x1080).\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"bannerMobileMediumHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size medium/high - resolution (960x263).\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size low resolution (320x88).\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size (640x175).\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n }\n - \ }\n },\n \"LiveChatMembershipGiftingDetails\": {\n \"properties\": - {\n \"giftMembershipsLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\"\n },\n - \ \"giftMembershipsCount\": {\n \"type\": \"integer\",\n \"description\": - \"The number of gift memberships purchased by the user.\",\n \"format\": - \"int32\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMembershipGiftingDetails\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"description\": \"Information about the uploaded video.\",\n \"id\": - \"ActivityContentDetailsUpload\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the uploaded video.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"SuperChatEventListResponse\": {\n - \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"SuperChatEvent\"\n },\n - \ \"description\": \"A list of Super Chat purchases that match the - request criteria.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"SuperChatEventListResponse\"\n },\n \"PlaylistItemContentDetails\": - {\n \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify a video. To retrieve the video - resource, set the id query parameter to this value in your API request.\",\n - \ \"type\": \"string\"\n },\n \"startAt\": {\n \"type\": - \"string\",\n \"description\": \"The time, measured in seconds from - the start of the video, when the video should start playing. (The playlist - owner can specify the times when the video should start and stop playing when - the video is played in the context of the playlist.) The default value is - 0.\"\n },\n \"note\": {\n \"description\": \"A user-generated - note for this item.\",\n \"type\": \"string\"\n },\n \"endAt\": - {\n \"type\": \"string\",\n \"description\": \"The time, - measured in seconds from the start of the video, when the video should stop - playing. (The playlist owner can specify the times when the video should start - and stop playing when the video is played in the context of the playlist.) - By default, assume that the video.endTime is the end of the video.\"\n },\n - \ \"videoPublishedAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the video was published to YouTube.\",\n \"format\": - \"date-time\"\n }\n },\n \"id\": \"PlaylistItemContentDetails\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"description\": \"Information about a new playlist item.\",\n \"id\": - \"ActivityContentDetailsPlaylistItem\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - about the resource that was added to the playlist.\",\n \"$ref\": - \"ResourceId\"\n },\n \"playlistId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"playlistItemId\": {\n \"type\": - \"string\",\n \"description\": \"ID of the item within the playlist.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelTopicDetails\": - {\n \"description\": \"Freebase topic information related to the channel.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"topicCategories\": - {\n \"type\": \"array\",\n \"description\": \"A list of - Wikipedia URLs that describe the channel's content.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicIds\": - {\n \"type\": \"array\",\n \"description\": \"A list of - Freebase topic IDs associated with the channel. You can retrieve information - about each topic using the Freebase Topic API.\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n }\n },\n \"id\": - \"ChannelTopicDetails\"\n },\n \"I18nRegionListResponse\": {\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"default\": \"youtube#i18nRegionListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of regions where YouTube is available. In this map, the i18n region ID - is the map key, and its value is the corresponding i18nRegion resource.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n }\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"I18nRegionListResponse\"\n },\n - \ \"PlaylistItemStatus\": {\n \"description\": \"Information about - the playlist item's privacy status.\",\n \"type\": \"object\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"This resource's privacy status.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n }\n },\n \"id\": \"PlaylistItemStatus\"\n },\n - \ \"LiveBroadcastSnippet\": {\n \"description\": \"Basic broadcast - information.\",\n \"properties\": {\n \"scheduledEndTime\": {\n - \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast is scheduled to end.\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that is publishing the broadcast.\",\n - \ \"type\": \"string\"\n },\n \"actualStartTime\": {\n - \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast actually started. This information - is only available once the broadcast's state is live.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the broadcast. For each nested object in this object, the key is the name - of the thumbnail image, and the value is an object that contains other information - about the thumbnail.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"isDefaultBroadcast\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether this broadcast is the default broadcast. Internal only.\"\n - \ },\n \"title\": {\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast was added - to YouTube's live broadcast schedule.\",\n \"format\": \"date-time\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The id of the live chat for this broadcast.\"\n },\n \"actualEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\"\n - \ },\n \"description\": {\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\",\n - \ \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"format\": - \"date-time\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveBroadcastSnippet\"\n },\n \"ActivitySnippet\": {\n \"description\": - \"Basic details about an activity, including title, description, thumbnails, - activity type and group. Next ID: 12\",\n \"properties\": {\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel responsible - for this activity\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the resource primarily associated with the activity.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the video was uploaded.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel associated with - the activity.\"\n },\n \"groupId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The description of the resource primarily - associated with the activity. @mutable youtube.activities.insert\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"type\": {\n \"description\": \"The type of activity that - the resource describes.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n - \ \"like\",\n \"favorite\",\n \"comment\",\n - \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n - \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ]\n }\n },\n \"type\": - \"object\",\n \"id\": \"ActivitySnippet\"\n },\n \"Playlist\": - {\n \"type\": \"object\",\n \"description\": \"A *playlist* resource - represents a YouTube playlist. A playlist is a collection of videos that can - be viewed sequentially and shared with other users. A playlist can contain - up to 200 videos, and YouTube does not limit the number of playlists that - each user creates. By default, playlists are publicly visible to other users, - but playlists can be public or private. YouTube also uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n - \ \"id\": \"Playlist\",\n \"properties\": {\n \"status\": - {\n \"$ref\": \"PlaylistStatus\",\n \"description\": \"The - status object contains status information for the playlist.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#playlist\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlist\\\".\",\n \"type\": \"string\"\n - \ },\n \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n - \ \"description\": \"The player object contains information that you - would use to play the playlist in an embedded player.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n },\n - \ \"localizations\": {\n \"description\": \"Localizations for - different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"PlaylistLocalization\"\n },\n \"type\": \"object\"\n },\n - \ \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\"\n }\n }\n },\n \"ResourceId\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"The type of the API resource.\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a channel. - This property is only present if the resourceId.kind value is youtube#channel.\",\n - \ \"type\": \"string\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a playlist. This property - is only present if the resourceId.kind value is youtube#playlist.\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the referred resource, if that resource is a video. This - property is only present if the resourceId.kind value is youtube#video.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ResourceId\",\n - \ \"type\": \"object\",\n \"description\": \"A resource id is a generic - reference that points to another YouTube resource.\"\n },\n \"SuperStickerMetadata\": - {\n \"type\": \"object\",\n \"id\": \"SuperStickerMetadata\",\n - \ \"properties\": {\n \"altTextLanguage\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the localization language - in which the alt text is returned.\"\n },\n \"altText\": {\n - \ \"type\": \"string\",\n \"description\": \"Internationalized - alt text that describes the sticker image and any animation associated with - it.\"\n },\n \"stickerId\": {\n \"type\": \"string\",\n - \ \"description\": \"Unique identifier of the Super Sticker. This - is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\"\n }\n }\n },\n \"LevelDetails\": - {\n \"type\": \"object\",\n \"id\": \"LevelDetails\",\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The name that should be used when referring to this level.\"\n }\n - \ }\n },\n \"ChannelContentOwnerDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"contentOwner\": {\n \"description\": - \"The ID of the content owner linked to the channel.\",\n \"type\": - \"string\"\n },\n \"timeLinked\": {\n \"description\": - \"The date and time when the channel was linked to the content owner.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n }\n - \ },\n \"description\": \"The contentOwnerDetails object encapsulates - channel data that is relevant for YouTube Partners linked with the channel.\",\n - \ \"id\": \"ChannelContentOwnerDetails\"\n },\n \"I18nRegionSnippet\": - {\n \"description\": \"Basic details about an i18n region, such as region - code and human-readable name.\",\n \"id\": \"I18nRegionSnippet\",\n \"type\": - \"object\",\n \"properties\": {\n \"name\": {\n \"description\": - \"The human-readable name of the region.\",\n \"type\": \"string\"\n - \ },\n \"gl\": {\n \"type\": \"string\",\n \"description\": - \"The region code as a 2-letter ISO country code.\"\n }\n }\n - \ },\n \"LiveChatModerator\": {\n \"description\": \"A *liveChatModerator* - resource represents a moderator for a YouTube live chat. A chat moderator - has the ability to ban/unban users from a chat, remove message, etc.\",\n - \ \"id\": \"LiveChatModerator\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#liveChatModerator\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModerator\\\".\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the moderator.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatModeratorSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the moderator.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n }\n - \ },\n \"TestItemTestItemSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"TestItemTestItemSnippet\",\n \"properties\": {}\n },\n - \ \"VideoPlayer\": {\n \"description\": \"Player to be used for a video - playback.\",\n \"id\": \"VideoPlayer\",\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\"\n },\n \"embedWidth\": - {\n \"description\": \"The embed width\",\n \"format\": - \"int64\",\n \"type\": \"string\"\n },\n \"embedHeight\": - {\n \"type\": \"string\",\n \"format\": \"int64\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageDeletedDetails\"\n },\n \"CommentThreadReplies\": {\n - \ \"id\": \"CommentThreadReplies\",\n \"properties\": {\n \"comments\": - {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"type\": \"array\",\n \"description\": \"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.\"\n }\n },\n \"description\": \"Comments written - in (direct or indirect) reply to the top level comment.\",\n \"type\": - \"object\"\n },\n \"LiveChatModeratorListResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatModeratorListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"description\": \"A list of moderators that - match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n }\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatModeratorListResponse\"\n },\n \"ChannelBannerResource\": - {\n \"id\": \"ChannelBannerResource\",\n \"description\": \"A channel - banner returned as the response to a channel_banner.insert call.\",\n \"properties\": - {\n \"url\": {\n \"description\": \"The URL of this banner - image.\",\n \"type\": \"string\"\n },\n \"etag\": {\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"RelatedEntity\": - {\n \"properties\": {\n \"entity\": {\n \"$ref\": \"Entity\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"RelatedEntity\"\n - \ },\n \"I18nLanguageSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"name\": {\n \"description\": \"The human-readable name - of the language in the language itself.\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"description\": \"A short BCP-47 - code that uniquely identifies a language.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"I18nLanguageSnippet\",\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\"\n },\n \"ChannelStatistics\": {\n \"properties\": {\n \"subscriberCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of subscribers that the channel has.\"\n },\n \"viewCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of times the channel has been viewed.\"\n },\n \"commentCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of comments for the channel.\",\n \"type\": \"string\"\n },\n - \ \"videoCount\": {\n \"description\": \"The number of videos - uploaded to the channel.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"hiddenSubscriberCount\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the number of subscribers - is shown for this user.\"\n }\n },\n \"id\": \"ChannelStatistics\",\n - \ \"type\": \"object\",\n \"description\": \"Statistics about a channel: - number of subscribers, number of videos in the channel, etc.\"\n },\n \"ChannelAuditDetails\": - {\n \"type\": \"object\",\n \"id\": \"ChannelAuditDetails\",\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\",\n \"properties\": {\n \"contentIdClaimsGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any unresolved claims.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n }\n }\n },\n - \ \"VideoAbuseReportSecondaryReason\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"label\": {\n \"description\": - \"The localized label for this abuse report secondary reason.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"ChannelSectionLocalization\": {\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel section's title.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"ChannelSection localization setting\",\n - \ \"id\": \"ChannelSectionLocalization\"\n },\n \"MembershipsDetails\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsDetails\",\n \"properties\": - {\n \"accessibleLevels\": {\n \"description\": \"Ids of all - levels that the user has access to. This includes the currently active level - and all other levels that are included because of a higher purchase.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"membershipsDurationAtLevels\": - {\n \"description\": \"Data about memberships duration on particular - pricing levels.\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ },\n \"type\": \"array\"\n },\n \"membershipsDuration\": - {\n \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\",\n \"$ref\": \"MembershipsDuration\"\n - \ },\n \"highestAccessibleLevelDisplayName\": {\n \"description\": - \"Display name for the highest level that the user has access to at the moment.\",\n - \ \"type\": \"string\"\n },\n \"highestAccessibleLevel\": - {\n \"description\": \"Id of the highest level that the user has - access to at the moment.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"AccessPolicy\": {\n \"id\": \"AccessPolicy\",\n \"description\": - \"Rights management policy for YouTube resources.\",\n \"properties\": - {\n \"exception\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\"\n },\n \"allowed\": {\n \"description\": - \"The value of allowed indicates whether the access to the policy is allowed - or denied by default.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"MembershipsDuration\": {\n \"id\": - \"MembershipsDuration\",\n \"properties\": {\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member across all levels.\",\n \"type\": \"string\"\n },\n - \ \"memberTotalDurationMonths\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"description\": \"The cumulative - time the user has been a member across all levels in complete months (the - time is rounded down to the nearest integer).\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelBrandingSettings\": {\n \"properties\": - {\n \"channel\": {\n \"$ref\": \"ChannelSettings\",\n \"description\": - \"Branding properties for the channel view.\"\n },\n \"hints\": - {\n \"type\": \"array\",\n \"description\": \"Additional - experimental branding properties.\",\n \"items\": {\n \"$ref\": - \"PropertyValue\"\n }\n },\n \"watch\": {\n \"description\": - \"Branding properties for the watch page.\",\n \"$ref\": \"WatchSettings\"\n - \ },\n \"image\": {\n \"$ref\": \"ImageSettings\",\n - \ \"description\": \"Branding properties for branding images.\"\n - \ }\n },\n \"id\": \"ChannelBrandingSettings\",\n \"description\": - \"Branding properties of a YouTube channel.\",\n \"type\": \"object\"\n - \ },\n \"VideoListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Video\"\n }\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoListResponse\\\".\",\n \"default\": - \"youtube#videoListResponse\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"id\": \"VideoListResponse\",\n \"type\": - \"object\"\n },\n \"CommentSnippetAuthorChannelId\": {\n \"type\": - \"object\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"CommentSnippetAuthorChannelId\",\n - \ \"description\": \"The id of the author's YouTube channel, if any.\"\n - \ },\n \"TokenPagination\": {\n \"description\": \"Stub token pagination - template to suppress results.\",\n \"properties\": {},\n \"id\": - \"TokenPagination\",\n \"type\": \"object\"\n },\n \"WatchSettings\": - {\n \"type\": \"object\",\n \"description\": \"Branding properties - for the watch. All deprecated.\",\n \"id\": \"WatchSettings\",\n \"properties\": - {\n \"textColor\": {\n \"description\": \"The background color - for the video watch page's branded area.\",\n \"type\": \"string\"\n - \ },\n \"backgroundColor\": {\n \"description\": \"The - text color for the video watch page's branded area.\",\n \"type\": - \"string\"\n },\n \"featuredPlaylistId\": {\n \"description\": - \"An ID that uniquely identifies a playlist that displays next to the video - player.\",\n \"type\": \"string\"\n }\n }\n },\n \"AbuseType\": - {\n \"type\": \"object\",\n \"id\": \"AbuseType\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"MemberSnippet\": {\n \"properties\": {\n \"creatorChannelId\": - {\n \"description\": \"The id of the channel that's offering memberships.\",\n - \ \"type\": \"string\"\n },\n \"membershipsDetails\": - {\n \"description\": \"Details about the user's membership.\",\n - \ \"$ref\": \"MembershipsDetails\"\n },\n \"memberDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the member.\"\n }\n },\n \"id\": \"MemberSnippet\",\n - \ \"type\": \"object\"\n },\n \"Subscription\": {\n \"id\": - \"Subscription\",\n \"description\": \"A *subscription* resource contains - information about a YouTube user subscription. A subscription notifies a user - when new videos are added to a channel or when another user takes one of several - actions on YouTube, such as uploading a video, rating a video, or commenting - on a video.\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"SubscriptionSnippet\",\n \"description\": \"The snippet object - contains basic details about the subscription, including its title and the - channel that the user subscribed to.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"SubscriptionContentDetails\",\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#subscription\"\n - \ },\n \"subscriberSnippet\": {\n \"description\": \"The - subscriberSnippet object contains basic details about the subscriber.\",\n - \ \"$ref\": \"SubscriptionSubscriberSnippet\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the subscription.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelLocalization\": - {\n \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for channel's title.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"The localized - strings for channel's description.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelLocalization\",\n - \ \"description\": \"Channel localization setting\"\n },\n \"LiveStreamContentDetails\": - {\n \"id\": \"LiveStreamContentDetails\",\n \"description\": \"Detailed - settings of a stream.\",\n \"properties\": {\n \"isReusable\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the stream is reusable, which means that it can be bound to multiple - broadcasts. It is common for broadcasters to reuse the same stream for many - different broadcasts if those broadcasts occur at different times. If you - set this value to false, then the stream will not be reusable, which means - that it can only be bound to one broadcast. Non-reusable streams differ from - reusable streams in the following ways: - A non-reusable stream can only be - bound to one broadcast. - A non-reusable stream might be deleted by an automated - process after the broadcast ends. - The liveStreams.list method does not list - non-reusable streams if you call the method and set the mine parameter to - true. The only way to use that method to retrieve the resource for a non-reusable - stream is to use the id parameter to identify the stream. \"\n },\n - \ \"closedCaptionsIngestionUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The ingestion URL where the closed captions of - this stream are sent.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoSuggestionsTagSuggestion\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoSuggestionsTagSuggestion\",\n \"description\": \"A - single tag suggestion with it's relevance information.\",\n \"properties\": - {\n \"tag\": {\n \"type\": \"string\",\n \"description\": - \"The keyword tag suggested for the video.\"\n },\n \"categoryRestricts\": - {\n \"description\": \"A set of video categories for which the tag - is relevant. You can use this information to display appropriate tag suggestions - based on the video category that the video uploader associates with the video. - By default, tag suggestions are relevant for all categories if there are no - restricts defined for the keyword.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n }\n - \ },\n \"LiveBroadcast\": {\n \"id\": \"LiveBroadcast\",\n \"properties\": - {\n \"status\": {\n \"description\": \"The status object contains - information about the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the event, including its title, description, - start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the broadcast.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n },\n - \ \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"The statistics object contains info about the - event's current stats. These include concurrent viewers and total chat count. - Statistics can change (in either direction) during the lifetime of an event. - Statistics are only returned while the event is live.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#liveBroadcast\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcast\\\".\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A *liveBroadcast* resource represents - an event that will be streamed, via live video, on YouTube.\"\n },\n \"ChannelToStoreLinkDetails\": - {\n \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"properties\": {\n \"storeUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Landing page of the store.\"\n },\n \"storeName\": - {\n \"type\": \"string\",\n \"description\": \"Name of the - store.\"\n },\n \"merchantId\": {\n \"type\": \"string\",\n - \ \"description\": \"Google Merchant Center id of the store.\",\n - \ \"format\": \"uint64\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"I18nLanguageListResponse\": {\n \"id\": \"I18nLanguageListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"description\": \"A list of supported - i18n languages. In this map, the i18n language ID is the map key, and its - value is the corresponding i18nLanguage resource.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n - \ }\n }\n },\n \"type\": \"object\"\n },\n \"ThirdPartyLinkStatus\": - {\n \"id\": \"ThirdPartyLinkStatus\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"linkStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"unknown\",\n - \ \"failed\",\n \"pending\",\n \"linked\"\n - \ ]\n }\n },\n \"description\": \"The third-party - link status object contains information about the status of the link.\"\n - \ },\n \"ChannelStatus\": {\n \"id\": \"ChannelStatus\",\n \"type\": - \"object\",\n \"properties\": {\n \"madeForKids\": {\n \"type\": - \"boolean\"\n },\n \"isLinked\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n },\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Privacy status of the channel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"longUploadsStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\"\n }\n },\n \"description\": \"JSON - template for the status part of a channel.\"\n },\n \"SuperChatEventSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\"\n },\n \"amountMicros\": {\n \"type\": - \"string\",\n \"description\": \"The purchase amount, in micros of - the purchase currency. e.g., 1 is represented as 1000000.\",\n \"format\": - \"uint64\"\n },\n \"isSuperStickerEvent\": {\n \"type\": - \"boolean\",\n \"description\": \"True if this event is a Super Sticker - event.\"\n },\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the purchase was made. - ISO 4217.\"\n },\n \"commentText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text contents of the comment left by the - user.\"\n },\n \"messageType\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The tier for - the paid message, which is based on the amount of money spent to purchase - the message.\"\n },\n \"supporterDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - supporter.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel id where the event occurred.\"\n },\n - \ \"createdAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"displayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the purchase - amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the - given language.\"\n }\n },\n \"id\": \"SuperChatEventSnippet\"\n - \ },\n \"ChannelConversionPing\": {\n \"properties\": {\n \"context\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"Defines the context of the ping.\",\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ]\n },\n - \ \"conversionUrl\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelConversionPing\",\n - \ \"description\": \"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.\"\n },\n \"SubscriptionSnippet\": {\n \"id\": - \"SubscriptionSnippet\",\n \"description\": \"Basic details about a subscription, - including title, description and thumbnails of the subscribed item.\",\n \"properties\": - {\n \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the subscription - was created.\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the subscription belongs to.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The subscription's details.\",\n \"type\": \"string\"\n },\n - \ \"resourceId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.subscriptions.insert\"\n ]\n },\n - \ \"description\": \"The id object contains information about the - channel that the user subscribed to.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\"\n - \ },\n \"title\": {\n \"description\": \"The subscription's - title.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoSnippet\": {\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a video, including title, description, - uploader, thumbnails and category.\",\n \"properties\": {\n \"defaultAudioLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the videos's default snippet.\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the video - belongs to.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that the video was uploaded to.\"\n },\n \"title\": - {\n \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"tags\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of keyword tags associated with the video. - Tags may contain spaces.\",\n \"type\": \"array\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - video category associated with the video.\"\n },\n \"localized\": - {\n \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\",\n \"$ref\": \"VideoLocalization\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n },\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the video was uploaded.\",\n \"format\": \"date-time\"\n - \ }\n },\n \"id\": \"VideoSnippet\"\n },\n \"InvideoPosition\": - {\n \"id\": \"InvideoPosition\",\n \"description\": \"Describes - the spatial position of a visual widget inside a video. It is a union of various - position types, out of which only will be set one.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"\"\n ],\n \"description\": \"Defines the - position type.\",\n \"enum\": [\n \"corner\"\n ],\n - \ \"type\": \"string\"\n },\n \"cornerPosition\": {\n - \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"type\": - \"string\",\n \"description\": \"Describes in which corner of the - video the visual widget will appear.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n }\n },\n \"VideoCategoryListResponse\": - {\n \"type\": \"object\",\n \"id\": \"VideoCategoryListResponse\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n }\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoCategoryListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n - \ }\n }\n },\n \"VideoAgeGating\": {\n \"id\": \"VideoAgeGating\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"restricted\": - {\n \"type\": \"boolean\",\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\"\n },\n - \ \"videoGameRating\": {\n \"description\": \"Video game rating, - if any.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ]\n },\n - \ \"alcoholContent\": {\n \"description\": \"Indicates whether - or not the video has alcoholic beverage content. Only users of legal purchasing - age in a particular country, as identified by ICAP, can view the content.\",\n - \ \"type\": \"boolean\"\n }\n }\n },\n \"LiveChatMessage\": - {\n \"id\": \"LiveChatMessage\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#liveChatMessage\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessage\\\".\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveChatMessageSnippet\",\n \"description\": - \"The snippet object contains basic details about the message.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"authorDetails\": {\n - \ \"$ref\": \"LiveChatMessageAuthorDetails\",\n \"description\": - \"The authorDetails object contains basic details about the user that posted - this message.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"A *liveChatMessage* resource represents a chat message in a YouTube Live - Chat.\"\n },\n \"PlaylistItemListResponse\": {\n \"properties\": - {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of playlist items that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n - \ }\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#playlistItemListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"PlaylistItemListResponse\"\n - \ },\n \"VideoStatus\": {\n \"type\": \"object\",\n \"id\": - \"VideoStatus\",\n \"description\": \"Basic details about a video category, - such as its localized title. Next Id: 18\",\n \"properties\": {\n \"publishAt\": - {\n \"description\": \"The date and time when the video is scheduled - to publish. It can be set only if the privacy status of the video is private..\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"privacyStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The video's privacy status.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ]\n },\n \"license\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"uploadStatus\": - {\n \"type\": \"string\",\n \"description\": \"The status - of the uploaded video.\",\n \"enumDescriptions\": [\n \"Video - has been uploaded but not processed yet.\",\n \"Video has been - successfully processed.\",\n \"Processing has failed. See FailureReason.\",\n - \ \"Video has been rejected. See RejectionReason.\",\n \"Video - has been deleted.\"\n ],\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ]\n },\n \"rejectionReason\": - {\n \"type\": \"string\",\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\"\n - \ },\n \"failureReason\": {\n \"type\": \"string\",\n - \ \"description\": \"This value explains why a video failed to upload. - This property is only present if the uploadStatus property indicates that - the upload failed.\",\n \"enumDescriptions\": [\n \"Unable - to convert video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ],\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ]\n },\n \"publicStatsViewable\": {\n \"type\": - \"boolean\",\n \"description\": \"This value indicates if the extended - video statistics on the watch page can be viewed by everyone. Note that the - view count, likes, etc will still be visible if this is disabled. @mutable - youtube.videos.insert youtube.videos.update\"\n },\n \"embeddable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\"\n }\n }\n },\n \"ActivityContentDetailsLike\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsLike\",\n \"description\": \"Information - about a resource that received a positive (like) rating.\"\n },\n \"Activity\": - {\n \"description\": \"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.\",\n \"id\": \"Activity\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the activity, including - the activity's type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n - \ \"description\": \"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.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource\"\n },\n \"kind\": - {\n \"default\": \"youtube#activity\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the activity.\"\n }\n }\n },\n \"IngestionInfo\": - {\n \"id\": \"IngestionInfo\",\n \"description\": \"Describes information - necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"properties\": - {\n \"ingestionAddress\": {\n \"type\": \"string\",\n \"description\": - \"The primary ingestion URL that you should use to stream video to YouTube. - You must stream video to this URL. Depending on which application or tool - you use to encode your video stream, you may need to enter the stream URL - and stream name separately or you may need to concatenate them in the following - format: *STREAM_URL/STREAM_NAME* \"\n },\n \"rtmpsBackupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of backupIngestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"rtmpsIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"backupIngestionAddress\": - {\n \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\",\n - \ \"type\": \"string\"\n },\n \"streamName\": {\n \"type\": - \"string\",\n \"description\": \"The stream name that YouTube assigns - to the video stream.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoGetRatingResponse\": {\n \"type\": \"object\",\n \"id\": - \"VideoGetRatingResponse\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"description\": \"A list of ratings - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"default\": \"youtube#videoGetRatingResponse\"\n }\n }\n - \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"properties\": - {\n \"memberLevelName\": {\n \"description\": \"The name of - the Level at which the viever is a member. The Level names are defined by - the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"memberMonth\": - {\n \"format\": \"uint32\",\n \"description\": \"The total - amount of months (rounded up) the viewer has been a member that granted them - this Member Milestone Chat. This is the same number of months as is being - displayed to YouTube users.\",\n \"type\": \"integer\"\n },\n - \ \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the member to this Member Milestone Chat. This field - is empty for messages without a comment from the member.\"\n }\n },\n - \ \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"type\": \"object\"\n - \ },\n \"PlaylistSnippet\": {\n \"properties\": {\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"The channel - title of the channel that the video belongs to.\"\n },\n \"localized\": - {\n \"$ref\": \"PlaylistLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"thumbnailVideoId\": - {\n \"type\": \"string\",\n \"description\": \"Note: if - the playlist has a custom thumbnail, this field will not be populated. The - video id selected by the user that will be used as the thumbnail of this playlist. - This field defaults to the first publicly viewable video in the playlist, - if: 1. The user has never selected a video to be the thumbnail of the playlist. - 2. The user selects a video to be the thumbnail, and then removes that video - from the playlist. 3. The user selects a non-owned video to be the thumbnail, - but that video becomes private, or gets deleted.\"\n },\n \"tags\": - {\n \"description\": \"Keyword tags associated with the playlist.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"title\": {\n \"description\": - \"The playlist's title.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlists.insert\",\n \"youtube.playlists.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the playlist's default title and description.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The playlist's description.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist. 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.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the playlist.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the playlist was created.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"PlaylistSnippet\",\n \"description\": \"Basic - details about a playlist, including title, description and thumbnails.\"\n - \ },\n \"VideoProcessingDetails\": {\n \"id\": \"VideoProcessingDetails\",\n - \ \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\",\n \"properties\": {\n \"processingStatus\": - {\n \"description\": \"The video's processing status. This value - indicates whether YouTube was able to process the video or if the video is - still being processed.\",\n \"type\": \"string\",\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"editorSuggestionsAvailability\": {\n \"description\": - \"This value indicates whether video editing suggestions, which might improve - video quality or the playback experience, are available for the video. You - can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"tagSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether keyword (tag) - suggestions are available for the video. Tags can be added to a video's metadata - to make it easier for other users to find the video. You can retrieve these - suggestions by requesting the suggestions part in your videos.list() request.\",\n - \ \"type\": \"string\"\n },\n \"fileDetailsAvailability\": - {\n \"description\": \"This value indicates whether file details - are available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingProgress\": {\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"thumbnailsAvailability\": {\n \"description\": - \"This value indicates whether thumbnail images have been generated for the - video.\",\n \"type\": \"string\"\n },\n \"processingFailureReason\": - {\n \"description\": \"The reason that YouTube failed to process - the video. This property will only have a value if the processingStatus property's - value is failed.\",\n \"type\": \"string\",\n \"enum\": - [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"processingIssuesAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that was added to the channel.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"description\": \"Details about - a resource which was added to a channel.\",\n \"id\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"LiveStreamListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of live streams that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n - \ }\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveStreamListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": - \"LiveStreamListResponse\",\n \"type\": \"object\"\n },\n \"ChannelSection\": - {\n \"id\": \"ChannelSection\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#channelSection\\\".\",\n \"default\": - \"youtube#channelSection\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"targeting\": {\n \"$ref\": - \"ChannelSectionTargeting\",\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel section.\"\n },\n \"snippet\": {\n \"$ref\": - \"ChannelSectionSnippet\",\n \"description\": \"The snippet object - contains basic details about the channel section, such as its type, style - and title.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelSectionLocalization\"\n - \ }\n }\n },\n \"type\": \"object\"\n },\n \"ThumbnailSetResponse\": - {\n \"properties\": {\n \"items\": {\n \"items\": {\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"description\": - \"A list of thumbnails.\",\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#thumbnailSetResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ThumbnailSetResponse\"\n - \ },\n \"ChannelSectionSnippet\": {\n \"id\": \"ChannelSectionSnippet\",\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\",\n \"properties\": {\n \"title\": - {\n \"description\": \"The channel section's title for multiple_playlists - and multiple_channels.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"description\": \"Localized title, read-only.\",\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"position\": {\n \"format\": - \"uint32\",\n \"description\": \"The position of the channel section - in the channel.\",\n \"type\": \"integer\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the channel section.\"\n - \ },\n \"style\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The style of the channel section.\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": - \"The language of the channel section's default title and description.\"\n - \ },\n \"type\": {\n \"type\": \"string\",\n \"description\": - \"The type of the channel section.\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveStreamConfigurationIssue\": {\n \"properties\": {\n - \ \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The kind of error happening.\"\n },\n \"reason\": {\n \"description\": - \"The short-form reason for this issue.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The long-form description of the issue and how - to resolve it.\"\n },\n \"severity\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"description\": \"How severe this issue is to the - stream.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveStreamConfigurationIssue\"\n },\n \"VideoStatistics\": - {\n \"type\": \"object\",\n \"id\": \"VideoStatistics\",\n \"properties\": - {\n \"likeCount\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of users who have indicated - that they liked the video by giving it a positive rating.\"\n },\n - \ \"dislikeCount\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of users who have indicated - that they disliked the video by giving it a negative rating.\"\n },\n - \ \"viewCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of times the video has - been viewed.\"\n },\n \"favoriteCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of users who currently have the video marked as a favorite video.\"\n - \ },\n \"commentCount\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of comments for the video.\"\n }\n },\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\"\n },\n \"LiveStreamSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"title\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The stream's - title. The value must be between 1 and 128 characters long.\"\n },\n - \ \"isDefaultStream\": {\n \"type\": \"boolean\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the stream - was created.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The stream's description. The value - cannot be longer than 10000 characters.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that is transmitting the stream.\"\n - \ }\n },\n \"id\": \"LiveStreamSnippet\"\n },\n \"PageInfo\": - {\n \"properties\": {\n \"resultsPerPage\": {\n \"type\": - \"integer\",\n \"description\": \"The number of results included - in the API response.\",\n \"format\": \"int32\"\n },\n \"totalResults\": - {\n \"format\": \"int32\",\n \"type\": \"integer\",\n \"description\": - \"The total number of results in the result set.\"\n }\n },\n - \ \"id\": \"PageInfo\",\n \"description\": \"Paging details for lists - of resources, including total number of items available and number of resources - returned in a single page.\",\n \"type\": \"object\"\n },\n \"ThumbnailDetails\": - {\n \"properties\": {\n \"maxres\": {\n \"description\": - \"The maximum resolution quality image for this resource.\",\n \"$ref\": - \"Thumbnail\"\n },\n \"default\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The default image for this resource.\"\n },\n - \ \"medium\": {\n \"description\": \"The medium quality image - for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"standard\": - {\n \"description\": \"The standard quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"high\": {\n \"description\": - \"The high quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ }\n },\n \"id\": \"ThumbnailDetails\",\n \"type\": - \"object\",\n \"description\": \"Internal representation of thumbnails - for a YouTube resource.\"\n },\n \"PlaylistContentDetails\": {\n \"properties\": - {\n \"itemCount\": {\n \"description\": \"The number of videos - in the playlist.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"PlaylistContentDetails\"\n },\n \"VideoRating\": {\n \"id\": - \"VideoRating\",\n \"description\": \"Basic details about rating of a - video.\",\n \"type\": \"object\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n },\n \"rating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Rating of a video.\"\n }\n }\n },\n \"I18nLanguage\": - {\n \"description\": \"An *i18nLanguage* resource identifies a UI language - currently supported by YouTube.\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nLanguage\"\n - \ },\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n language, such as language code and human-readable name.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n language.\"\n }\n },\n \"id\": \"I18nLanguage\"\n - \ },\n \"PlaylistItemSnippet\": {\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails. Basic details - of a YouTube Playlist item provided by the author. Next ID: 15\",\n \"id\": - \"PlaylistItemSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The item's title.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The item's description.\"\n },\n - \ \"videoOwnerChannelTitle\": {\n \"description\": \"Channel - title for the channel this video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"videoOwnerChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel id for the channel this video belongs - to.\"\n },\n \"channelId\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the user that added the item to - the playlist.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist item. 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.\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the item was added to the playlist.\",\n \"type\": - \"string\"\n },\n \"position\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The order in - which the item appears in the playlist. The value uses a zero-based index, - so the first item has a position of 0, the second item has a position of 1, - and so forth.\"\n },\n \"resourceId\": {\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that is included in the playlist as the playlist item.\",\n \"$ref\": - \"ResourceId\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n }\n },\n \"playlistId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the playlist - item belongs to.\"\n }\n }\n },\n \"Channel\": {\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#channel\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channel\\\".\"\n },\n - \ \"brandingSettings\": {\n \"$ref\": \"ChannelBrandingSettings\",\n - \ \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ChannelContentDetails\",\n \"description\": - \"The contentDetails object encapsulates information about the channel's content.\"\n - \ },\n \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n - \ \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\"\n - \ },\n \"topicDetails\": {\n \"$ref\": \"ChannelTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\"\n },\n \"status\": - {\n \"$ref\": \"ChannelStatus\",\n \"description\": \"The - status object encapsulates information about the privacy status of the channel.\"\n - \ },\n \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n - \ \"description\": \"The statistics object encapsulates statistics - for the channel.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"contentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel, such as its - title, description, and thumbnail images.\"\n },\n \"localizations\": - {\n \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"description\": \"Localizations for different languages\",\n - \ \"type\": \"object\"\n }\n },\n \"id\": \"Channel\",\n - \ \"type\": \"object\",\n \"description\": \"A *channel* resource - contains information about a YouTube channel.\"\n },\n \"ActivityContentDetailsComment\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"Information about a resource that received a comment.\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with the comment.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"Thumbnail\": {\n \"id\": \"Thumbnail\",\n \"properties\": - {\n \"width\": {\n \"type\": \"integer\",\n \"description\": - \"(Optional) Width of the thumbnail image.\",\n \"format\": \"uint32\"\n - \ },\n \"height\": {\n \"type\": \"integer\",\n \"description\": - \"(Optional) Height of the thumbnail image.\",\n \"format\": \"uint32\"\n - \ },\n \"url\": {\n \"type\": \"string\",\n \"description\": - \"The thumbnail image's URL.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A thumbnail is an image representing a YouTube resource.\"\n - \ },\n \"MembershipsLevel\": {\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the memberships level.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#membershipsLevel\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the level.\",\n \"$ref\": - \"MembershipsLevelSnippet\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"description\": \"A *membershipsLevel* resource represents - an offer made by YouTube creators for their fans. Users can become members - of the channel by joining one of the available levels. They will provide recurring - monetary support and receives special benefits.\",\n \"id\": \"MembershipsLevel\"\n - \ },\n \"VideoAbuseReport\": {\n \"id\": \"VideoAbuseReport\",\n - \ \"properties\": {\n \"comments\": {\n \"type\": \"string\",\n - \ \"description\": \"Additional comments regarding the abuse report.\"\n - \ },\n \"language\": {\n \"description\": \"The language - that the content was viewed in.\",\n \"type\": \"string\"\n },\n - \ \"secondaryReasonId\": {\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\",\n \"type\": \"string\"\n },\n \"reasonId\": - {\n \"type\": \"string\",\n \"description\": \"The high-level, - or primary, reason that the content is abusive. The value is an abuse report - reason ID.\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatSuperStickerDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"tier\": - {\n \"description\": \"The tier in which the amount belongs. Lower - amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made.\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"Information about the Super Sticker.\",\n - \ \"$ref\": \"SuperStickerMetadata\"\n },\n \"amountMicros\": - {\n \"type\": \"string\",\n \"description\": \"The amount - purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": - \"uint64\"\n }\n },\n \"id\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"ThirdPartyLink\": {\n \"description\": \"A *third party - account link* resource represents a link between a YouTube account or a channel - and an account on a third-party service.\",\n \"id\": \"ThirdPartyLink\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the status of the link.\",\n \"$ref\": \"ThirdPartyLinkStatus\"\n - \ },\n \"linkingToken\": {\n \"description\": \"The - linking_token identifies a YouTube account and channel with which the third - party account is linked.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLink\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"MembershipsLevelSnippet\": - {\n \"id\": \"MembershipsLevelSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n },\n \"levelDetails\": {\n \"$ref\": \"LevelDetails\",\n - \ \"description\": \"Details about the pricing level.\"\n }\n - \ }\n },\n \"SubscriptionListResponse\": {\n \"id\": \"SubscriptionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Subscription\"\n },\n \"description\": - \"A list of subscriptions that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n \"default\": - \"youtube#subscriptionListResponse\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n }\n },\n \"CommentListResponse\": - {\n \"properties\": {\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Comment\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of comments that match the request criteria.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"CommentListResponse\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\",\n \"$ref\": \"ResourceId\"\n },\n \"seedResourceId\": - {\n \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\",\n \"$ref\": - \"ResourceId\"\n },\n \"reason\": {\n \"type\": \"string\",\n - \ \"description\": \"The reason that the resource is recommended to - the user.\",\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"id\": - \"ActivityContentDetailsRecommendation\",\n \"description\": \"Information - that identifies the recommended resource.\",\n \"type\": \"object\"\n - \ },\n \"VideoFileDetailsAudioStream\": {\n \"properties\": {\n - \ \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"bitrateBps\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The audio stream's bitrate, in bits per second.\"\n },\n \"channelCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of audio channels that the stream contains.\"\n },\n \"codec\": - {\n \"description\": \"The audio codec that the stream uses.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoFileDetailsAudioStream\",\n - \ \"description\": \"Information about an audio stream.\",\n \"type\": - \"object\"\n },\n \"LiveChatFanFundingEventDetails\": {\n \"properties\": - {\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the fund was made.\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the user to this fan funding event.\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"amountMicros\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The amount of the fund.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"LiveChatNewSponsorDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatNewSponsorDetails\",\n \"properties\": {\n \"isUpgrade\": - {\n \"type\": \"boolean\",\n \"description\": \"If the viewer - just had upgraded from a lower level. For viewers that were not members at - the time of purchase, this field is false.\"\n },\n \"memberLevelName\": - {\n \"description\": \"The name of the Level that the viewer just - had joined. The Level names are defined by the YouTube channel offering the - Membership. In some situations this field isn't filled.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LanguageTag\": {\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LanguageTag\"\n },\n \"LiveChatBan\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatBan\",\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"default\": \"youtube#liveChatBan\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the ban.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ActivityListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Activity\"\n }\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n \"default\": - \"youtube#activityListResponse\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": - \"ActivityListResponse\"\n },\n \"VideoTopicDetails\": {\n \"description\": - \"Freebase topic information related to the video.\",\n \"id\": \"VideoTopicDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"topicCategories\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Wikipedia - URLs that provide a high-level description of the video's content.\"\n },\n - \ \"topicIds\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of Freebase topic IDs that - are centrally associated with the video. These are topics that are centrally - featured in the video, and it can be said that the video is mainly about each - of these. You can retrieve information about each topic using the \\u003c - a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase Topic - API.\",\n \"type\": \"array\"\n },\n \"relevantTopicIds\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"Similar to topic_id, - except that these topics are merely relevant to the video. These are topics - that may be mentioned in, or appear in the video. You can retrieve information - about each topic using Freebase Topic API.\"\n }\n }\n },\n - \ \"ThirdPartyLinkSnippet\": {\n \"type\": \"object\",\n \"id\": - \"ThirdPartyLinkSnippet\",\n \"description\": \"Basic information about - a third party account link, including its type and type-specific information.\",\n - \ \"properties\": {\n \"type\": {\n \"description\": \"Type - of the link named after the entities that are being linked.\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ]\n - \ },\n \"channelToStoreLink\": {\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n }\n - \ }\n },\n \"SuperChatEvent\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#superChatEvent\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n },\n - \ \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the Super Chat event.\",\n \"$ref\": - \"SuperChatEventSnippet\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the Super Chat event.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\",\n \"id\": \"SuperChatEvent\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"description\": \"Details about a resource which is being promoted.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\",\n \"type\": \"string\"\n },\n \"customCtaButtonText\": - {\n \"type\": \"string\",\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\"\n },\n \"clickTrackingUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user clicked through on this promoted item.\"\n },\n - \ \"forecastingUrl\": {\n \"description\": \"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.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"descriptionText\": {\n \"description\": \"The - text description to accompany the promoted item.\",\n \"type\": \"string\"\n - \ },\n \"impressionUrl\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\"\n },\n \"adTag\": - {\n \"description\": \"The URL the client should fetch to request - a promoted item.\",\n \"type\": \"string\"\n },\n \"creativeViewUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user was shown this promoted item.\",\n \"type\": \"string\"\n - \ },\n \"destinationUrl\": {\n \"description\": \"The - URL the client should direct the user to, if the user chooses to visit the - advertiser's website.\",\n \"type\": \"string\"\n },\n \"ctaType\": - {\n \"description\": \"The type of call-to-action, a message to the - user indicating action that can be taken.\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n }\n },\n \"id\": \"ActivityContentDetailsPromotedItem\"\n - \ },\n \"ActivityContentDetailsSocial\": {\n \"id\": \"ActivityContentDetailsSocial\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"imageUrl\": - {\n \"description\": \"An image of the post's author.\",\n \"type\": - \"string\"\n },\n \"author\": {\n \"type\": \"string\",\n - \ \"description\": \"The author of the social network post.\"\n },\n - \ \"resourceId\": {\n \"description\": \"The resourceId object - encapsulates information that identifies the resource associated with a social - network post.\",\n \"$ref\": \"ResourceId\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ],\n \"type\": \"string\",\n \"description\": - \"The name of the social network.\"\n },\n \"referenceUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL of - the social network post.\"\n }\n },\n \"description\": \"Details - about a social network post.\"\n },\n \"MembershipsLevelListResponse\": - {\n \"id\": \"MembershipsLevelListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"description\": - \"A list of pricing levels offered by a creator to the fans.\",\n \"items\": - {\n \"$ref\": \"MembershipsLevel\"\n },\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ }\n },\n \"basePath\": \"\",\n \"ownerDomain\": \"google.com\",\n \"batchPath\": - \"batch\",\n \"description\": \"The YouTube Data API v3 is an API that provides - access to YouTube data, such as videos, playlists, and channels.\",\n \"parameters\": - {\n \"key\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"type\": \"string\"\n },\n \"$.xgafv\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"1\",\n \"2\"\n ],\n \"enumDescriptions\": - [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"description\": - \"V1 error format.\",\n \"location\": \"query\"\n },\n \"prettyPrint\": - {\n \"default\": \"true\",\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Returns response with indentations - and line breaks.\"\n },\n \"uploadType\": {\n \"description\": - \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"alt\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \"enum\": - [\n \"json\",\n \"media\",\n \"proto\"\n ],\n \"description\": - \"Data format for response.\",\n \"enumDescriptions\": [\n \"Responses - with Content-Type of application/json\",\n \"Media download with context-dependent - Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n - \ ],\n \"default\": \"json\"\n },\n \"callback\": {\n \"type\": - \"string\",\n \"description\": \"JSONP\",\n \"location\": \"query\"\n - \ },\n \"upload_protocol\": {\n \"location\": \"query\",\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": - \"string\"\n },\n \"quotaUser\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"access_token\": {\n - \ \"description\": \"OAuth access token.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"fields\": {\n \"description\": - \"Selector specifying which fields to include in a partial response.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"oauth_token\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"OAuth 2.0 token for the current user.\"\n }\n },\n \"id\": \"youtube:v3\",\n - \ \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n }\n }\n }\n },\n \"revision\": - \"20230220\",\n \"version\": \"v3\",\n \"protocol\": \"rest\",\n \"servicePath\": - \"\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:31 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UC6pyjZgCOlkxV62juSj9Ryg&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"nIKYiUgfT2PePEn-xa4iS5UaAp4\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"fyRy7CBycD2eO3jGdVHiNsteRSI\",\n \"id\": \"UC6pyjZgCOlkxV62juSj9Ryg\",\n - \ \"snippet\": {\n \"title\": \"Polina Dubkova\",\n \"description\": - \"\u041C\u0435\u043D\u044F \u0437\u043E\u0432\u0443\u0442 \u041F\u043E\u043B\u0438\u043D\u0430 - \u0414\u0443\u0431\u043A\u043E\u0432\u0430! \u042F \u0432\u0435\u0434\u0443 - \u0431\u043B\u043E\u0433 \u043F\u0440\u043E \u0442\u0430\u043D\u0446\u044B!\\n\u0417\u0430\u043D\u0438\u043C\u0430\u044E\u0441\u044C - \u0442\u0430\u043D\u0446\u0430\u043C\u0438 c \u0434\u0435\u0442\u0441\u0442\u0432\u0430 - \u0438 \u0441 \u0443\u0434\u043E\u0432\u043E\u043B\u044C\u0441\u0442\u0432\u0438\u0435\u043C - \u0434\u0435\u043B\u044E\u0441\u044C \u0441\u0432\u043E\u0438\u043C \u0442\u0432\u043E\u0440\u0447\u0435\u0441\u0442\u0432\u043E\u043C - \u0442\u0443\u0442!\\n\\n\u041D\u0430 \u043C\u043E\u0435\u043C \u043A\u0430\u043D\u0430\u043B\u0435 - \u043C\u043D\u043E\u0433\u043E \u043A\u0440\u0443\u0442\u044B\u0445 \u0432\u0438\u0434\u0435\u043E! - \u0422\u0410\u041D\u0426\u042B \u0432 \u043E\u0431\u0449\u0435\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0445 - \u043C\u0435\u0441\u0442\u0430\u0445, \u0445\u043E\u0440\u0435\u043E\u0433\u0440\u0430\u0444\u0438\u0438 - \u0438 \u043E\u0431\u0443\u0447\u0430\u043B\u043A\u0438!\\n\u041C\u043E\u0438 - \u0432\u0438\u0434\u0435\u043E \u0440\u0435\u043F\u043E\u0441\u0442\u0438\u043B\u0438 - \u0442\u0430\u043A\u0438\u0435 \u0437\u0432\u0435\u0437\u0434\u044B, \u043A\u0430\u043A - Lil Wayne, Nicki Minaj, J Balvin \u0438 \u0434\u0440. \\n\u0410 \u0441\u0430\u043C\u043E\u0435 - \u043F\u043E\u043F\u0443\u043B\u044F\u0440\u043D\u043E\u0435 \u0432\u0438\u0434\u0435\u043E - \u043D\u0430\u0431\u0440\u0430\u043B\u043E \u0430\u0436 100 \u043C\u043B\u043D - \u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440\u043E\u0432!\\n\\n\u042F - \u0442\u0430\u043D\u0446\u0443\u044E \u0432 \u043A\u043B\u0438\u043F\u0430\u0445, - \u043F\u0440\u0438\u043D\u0438\u043C\u0430\u043B\u0430 \u0443\u0447\u0430\u0441\u0442\u0438\u0435 - \u0432 \u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u0435 \u0422\u0410\u041D\u0426\u042B - \u041D\u0410 \xAB\u0422\u041D\u0422\xBB \u0438 \u0440\u0430\u0437\u043B\u0438\u0447\u043D\u044B\u0445 - \u0448\u043E\u0443 \u043D\u0430 \u0442\u0432 \u0438 \u044E\u0442\u0443\u0431\u0435.\\n\\n\u0411\u0443\u0434\u0443 - \u0440\u0430\u0434\u0430 \u0442\u0432\u043E\u0435\u0439 \u043F\u043E\u0434\u043F\u0438\u0441\u043A\u0435 - :)\\n\",\n \"customUrl\": \"@dubkovapo\",\n \"publishedAt\": - \"2014-03-26T14:57:35Z\",\n \"thumbnails\": {\n \"default\": - {\n \"url\": \"https://yt3.ggpht.com/oo3_RSLLJq4ze-VHl8loDGGJLlM9xhdxM57x0GPjg6gzib7Yb2zkUhstheTy2v34aOaTsaerfw=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/oo3_RSLLJq4ze-VHl8loDGGJLlM9xhdxM57x0GPjg6gzib7Yb2zkUhstheTy2v34aOaTsaerfw=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/oo3_RSLLJq4ze-VHl8loDGGJLlM9xhdxM57x0GPjg6gzib7Yb2zkUhstheTy2v34aOaTsaerfw=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"defaultLanguage\": \"ru\",\n \"localized\": {\n \"title\": - \"Polina Dubkova\",\n \"description\": \"\u041C\u0435\u043D\u044F - \u0437\u043E\u0432\u0443\u0442 \u041F\u043E\u043B\u0438\u043D\u0430 \u0414\u0443\u0431\u043A\u043E\u0432\u0430! - \u042F \u0432\u0435\u0434\u0443 \u0431\u043B\u043E\u0433 \u043F\u0440\u043E - \u0442\u0430\u043D\u0446\u044B!\\n\u0417\u0430\u043D\u0438\u043C\u0430\u044E\u0441\u044C - \u0442\u0430\u043D\u0446\u0430\u043C\u0438 c \u0434\u0435\u0442\u0441\u0442\u0432\u0430 - \u0438 \u0441 \u0443\u0434\u043E\u0432\u043E\u043B\u044C\u0441\u0442\u0432\u0438\u0435\u043C - \u0434\u0435\u043B\u044E\u0441\u044C \u0441\u0432\u043E\u0438\u043C \u0442\u0432\u043E\u0440\u0447\u0435\u0441\u0442\u0432\u043E\u043C - \u0442\u0443\u0442!\\n\\n\u041D\u0430 \u043C\u043E\u0435\u043C \u043A\u0430\u043D\u0430\u043B\u0435 - \u043C\u043D\u043E\u0433\u043E \u043A\u0440\u0443\u0442\u044B\u0445 \u0432\u0438\u0434\u0435\u043E! - \u0422\u0410\u041D\u0426\u042B \u0432 \u043E\u0431\u0449\u0435\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0445 - \u043C\u0435\u0441\u0442\u0430\u0445, \u0445\u043E\u0440\u0435\u043E\u0433\u0440\u0430\u0444\u0438\u0438 - \u0438 \u043E\u0431\u0443\u0447\u0430\u043B\u043A\u0438!\\n\u041C\u043E\u0438 - \u0432\u0438\u0434\u0435\u043E \u0440\u0435\u043F\u043E\u0441\u0442\u0438\u043B\u0438 - \u0442\u0430\u043A\u0438\u0435 \u0437\u0432\u0435\u0437\u0434\u044B, \u043A\u0430\u043A - Lil Wayne, Nicki Minaj, J Balvin \u0438 \u0434\u0440. \\n\u0410 \u0441\u0430\u043C\u043E\u0435 - \u043F\u043E\u043F\u0443\u043B\u044F\u0440\u043D\u043E\u0435 \u0432\u0438\u0434\u0435\u043E - \u043D\u0430\u0431\u0440\u0430\u043B\u043E \u0430\u0436 100 \u043C\u043B\u043D - \u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440\u043E\u0432!\\n\\n\u042F - \u0442\u0430\u043D\u0446\u0443\u044E \u0432 \u043A\u043B\u0438\u043F\u0430\u0445, - \u043F\u0440\u0438\u043D\u0438\u043C\u0430\u043B\u0430 \u0443\u0447\u0430\u0441\u0442\u0438\u0435 - \u0432 \u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u0435 \u0422\u0410\u041D\u0426\u042B - \u041D\u0410 \xAB\u0422\u041D\u0422\xBB \u0438 \u0440\u0430\u0437\u043B\u0438\u0447\u043D\u044B\u0445 - \u0448\u043E\u0443 \u043D\u0430 \u0442\u0432 \u0438 \u044E\u0442\u0443\u0431\u0435.\\n\\n\u0411\u0443\u0434\u0443 - \u0440\u0430\u0434\u0430 \u0442\u0432\u043E\u0435\u0439 \u043F\u043E\u0434\u043F\u0438\u0441\u043A\u0435 - :)\\n\"\n },\n \"country\": \"RU\"\n },\n \"brandingSettings\": - {\n \"channel\": {\n \"title\": \"Polina Dubkova\",\n \"description\": - \"\u041C\u0435\u043D\u044F \u0437\u043E\u0432\u0443\u0442 \u041F\u043E\u043B\u0438\u043D\u0430 - \u0414\u0443\u0431\u043A\u043E\u0432\u0430! \u042F \u0432\u0435\u0434\u0443 - \u0431\u043B\u043E\u0433 \u043F\u0440\u043E \u0442\u0430\u043D\u0446\u044B!\\n\u0417\u0430\u043D\u0438\u043C\u0430\u044E\u0441\u044C - \u0442\u0430\u043D\u0446\u0430\u043C\u0438 c \u0434\u0435\u0442\u0441\u0442\u0432\u0430 - \u0438 \u0441 \u0443\u0434\u043E\u0432\u043E\u043B\u044C\u0441\u0442\u0432\u0438\u0435\u043C - \u0434\u0435\u043B\u044E\u0441\u044C \u0441\u0432\u043E\u0438\u043C \u0442\u0432\u043E\u0440\u0447\u0435\u0441\u0442\u0432\u043E\u043C - \u0442\u0443\u0442!\\n\\n\u041D\u0430 \u043C\u043E\u0435\u043C \u043A\u0430\u043D\u0430\u043B\u0435 - \u043C\u043D\u043E\u0433\u043E \u043A\u0440\u0443\u0442\u044B\u0445 \u0432\u0438\u0434\u0435\u043E! - \u0422\u0410\u041D\u0426\u042B \u0432 \u043E\u0431\u0449\u0435\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0445 - \u043C\u0435\u0441\u0442\u0430\u0445, \u0445\u043E\u0440\u0435\u043E\u0433\u0440\u0430\u0444\u0438\u0438 - \u0438 \u043E\u0431\u0443\u0447\u0430\u043B\u043A\u0438!\\n\u041C\u043E\u0438 - \u0432\u0438\u0434\u0435\u043E \u0440\u0435\u043F\u043E\u0441\u0442\u0438\u043B\u0438 - \u0442\u0430\u043A\u0438\u0435 \u0437\u0432\u0435\u0437\u0434\u044B, \u043A\u0430\u043A - Lil Wayne, Nicki Minaj, J Balvin \u0438 \u0434\u0440. \\n\u0410 \u0441\u0430\u043C\u043E\u0435 - \u043F\u043E\u043F\u0443\u043B\u044F\u0440\u043D\u043E\u0435 \u0432\u0438\u0434\u0435\u043E - \u043D\u0430\u0431\u0440\u0430\u043B\u043E \u0430\u0436 100 \u043C\u043B\u043D - \u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440\u043E\u0432!\\n\\n\u042F - \u0442\u0430\u043D\u0446\u0443\u044E \u0432 \u043A\u043B\u0438\u043F\u0430\u0445, - \u043F\u0440\u0438\u043D\u0438\u043C\u0430\u043B\u0430 \u0443\u0447\u0430\u0441\u0442\u0438\u0435 - \u0432 \u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u0435 \u0422\u0410\u041D\u0426\u042B - \u041D\u0410 \xAB\u0422\u041D\u0422\xBB \u0438 \u0440\u0430\u0437\u043B\u0438\u0447\u043D\u044B\u0445 - \u0448\u043E\u0443 \u043D\u0430 \u0442\u0432 \u0438 \u044E\u0442\u0443\u0431\u0435.\\n\\n\u0411\u0443\u0434\u0443 - \u0440\u0430\u0434\u0430 \u0442\u0432\u043E\u0435\u0439 \u043F\u043E\u0434\u043F\u0438\u0441\u043A\u0435 - :)\\n\",\n \"keywords\": \"dance dancing choreography dubkova choreo - dancehall girl \\\"\u0442\u0430\u043D\u0446\u044B \u043D\u0430 \u0442\u043D\u0442\\\" - \u0442\u0430\u043D\u0435\u0446 \u0434\u044D\u043D\u0441\u0445\u043E\u043B\u043B - \u0442\u0430\u043D\u0446\u044B \\\"\u043F\u043E\u043B\u0438\u043D\u0430 \u0434\u0443\u0431\u043A\u043E\u0432\u0430\\\" - dubkovapo\",\n \"unsubscribedTrailer\": \"WSp67VmRpiY\",\n \"defaultLanguage\": - \"ru\",\n \"country\": \"RU\"\n },\n \"image\": {\n - \ \"bannerExternalUrl\": \"https://lh3.googleusercontent.com/c1j1BmKd6ElsOJDiTlcJxFTBD5aGBobqB00RwkdfJnnd29DGvRese0pbgNxHwicmbBg8CMZnMg\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:31 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"ownerName\": \"Google\",\n \"canonicalName\": \"YouTube\",\n \"version\": - \"v3\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"schemas\": - {\n \"LiveChatFanFundingEventDetails\": {\n \"properties\": {\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the fund was made.\",\n \"type\": \"string\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the user to this fan funding event.\"\n },\n \"amountMicros\": - {\n \"description\": \"The amount of the fund.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\"\n },\n \"VideoLocalization\": - {\n \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"description\": \"Localized version of the video's description.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"Localized version of the video's title.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Localized versions of certain - video properties (e.g. title).\",\n \"id\": \"VideoLocalization\"\n },\n - \ \"MembershipsLevel\": {\n \"id\": \"MembershipsLevel\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#membershipsLevel\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the memberships level.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"$ref\": \"MembershipsLevelSnippet\",\n \"description\": - \"The snippet object contains basic details about the level.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A *membershipsLevel* - resource represents an offer made by YouTube creators for their fans. Users - can become members of the channel by joining one of the available levels. - They will provide recurring monetary support and receives special benefits.\"\n - \ },\n \"ImageSettings\": {\n \"type\": \"object\",\n \"description\": - \"Branding properties for images associated with the channel.\",\n \"properties\": - {\n \"trackingImageUrl\": {\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\",\n \"type\": \"string\"\n },\n - \ \"largeBrandedBannerImageImapScript\": {\n \"description\": - \"The image map script for the large banner image.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTvMediumImageUrl\": {\n - \ \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"bannerTvImageUrl\": - {\n \"description\": \"Banner image. TV size extra high resolution - (2120x1192).\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size low resolution (1138x188).\"\n },\n \"bannerTvLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size low resolution (854x480).\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"bannerImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. Desktop size (1060x175).\"\n },\n \"bannerTabletImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"bannerTabletHdImageUrl\": {\n \"description\": \"Banner - image. Tablet size high resolution (2276x377).\",\n \"type\": \"string\"\n - \ },\n \"bannerTabletExtraHdImageUrl\": {\n \"description\": - \"Banner image. Tablet size extra high resolution (2560x424).\",\n \"type\": - \"string\"\n },\n \"bannerMobileImageUrl\": {\n \"description\": - \"Banner image. Mobile size (640x175).\",\n \"type\": \"string\"\n - \ },\n \"bannerMobileMediumHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size medium/high resolution (960x263).\",\n \"type\": - \"string\"\n },\n \"bannerExternalUrl\": {\n \"type\": - \"string\",\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\"\n },\n \"bannerTvHighImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ImageSettings\"\n },\n \"LiveBroadcastContentDetails\": {\n \"type\": - \"object\",\n \"description\": \"Detailed settings of a broadcast.\",\n - \ \"id\": \"LiveBroadcastContentDetails\",\n \"properties\": {\n - \ \"enableContentEncryption\": {\n \"description\": \"This - setting indicates whether YouTube should enable content encryption for the - broadcast.\",\n \"type\": \"boolean\"\n },\n \"closedCaptionsType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ]\n },\n \"enableEmbed\": {\n \"description\": - \"This setting indicates whether the broadcast video can be played in an embedded - player. If you choose to archive the video (using the enableArchive property), - this setting will also apply to the archived video.\",\n \"type\": - \"boolean\"\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the live - stream referenced by boundStreamId was last updated.\",\n \"type\": - \"string\"\n },\n \"projection\": {\n \"enum\": [\n - \ \"projectionUnspecified\",\n \"rectangular\",\n \"360\",\n - \ \"mesh\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"type\": \"string\"\n },\n \"stereoLayout\": {\n - \ \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n - \ \"leftRight\",\n \"topBottom\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\"\n },\n - \ \"boundStreamId\": {\n \"description\": \"This value uniquely - identifies the live stream bound to the broadcast.\",\n \"type\": - \"string\"\n },\n \"enableLowLatency\": {\n \"description\": - \"Indicates whether this broadcast has low latency enabled.\",\n \"type\": - \"boolean\"\n },\n \"monitorStream\": {\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\",\n \"$ref\": \"MonitorStreamInfo\"\n - \ },\n \"enableDvr\": {\n \"description\": \"This setting - determines whether viewers can access DVR controls while watching the video. - DVR controls enable the viewer to control the video playback experience by - pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n - \ },\n \"startWithSlate\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\"\n },\n \"latencyPreference\": - {\n \"type\": \"string\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"description\": \"If both this and enable_low_latency - are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Best for: highest quality viewer playbacks and higher resolutions.\",\n - \ \"Best for: near real-time interaction, with minimal playback - buffering.\",\n \"Best for: real-time interaction Does not support: - Closed captions, 1440p, and 4k resolutions\"\n ]\n },\n \"enableAutoStart\": - {\n \"description\": \"This setting indicates whether auto start - is enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\",\n \"type\": \"boolean\"\n - \ },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"recordFromStart\": - {\n \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\",\n \"type\": \"boolean\"\n },\n \"mesh\": - {\n \"type\": \"string\",\n \"format\": \"byte\",\n \"description\": - \"The mesh for projecting the video if projection is mesh. The mesh value - must be a UTF-8 string containing the base-64 encoding of 3D mesh data that - follows the Spherical Video V2 RFC specification for an mshp box, excluding - the box size and type but including the following four reserved zero bytes - for the version and flags.\"\n },\n \"enableAutoStop\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto stop is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n }\n - \ }\n },\n \"VideoGetRatingResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of ratings - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"type\": \"array\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoGetRatingResponse\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoGetRatingResponse\"\n - \ },\n \"Thumbnail\": {\n \"properties\": {\n \"url\": {\n - \ \"description\": \"The thumbnail image's URL.\",\n \"type\": - \"string\"\n },\n \"width\": {\n \"description\": \"(Optional) - Width of the thumbnail image.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"height\": {\n \"format\": \"uint32\",\n - \ \"description\": \"(Optional) Height of the thumbnail image.\",\n - \ \"type\": \"integer\"\n }\n },\n \"id\": \"Thumbnail\",\n - \ \"type\": \"object\",\n \"description\": \"A thumbnail is an image - representing a YouTube resource.\"\n },\n \"VideoSnippet\": {\n \"id\": - \"VideoSnippet\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"categoryId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube video category associated with the video.\"\n },\n \"defaultAudioLanguage\": - {\n \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that the video - was uploaded to.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"$ref\": \"VideoLocalization\",\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the video was uploaded.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The video's description. @mutable - youtube.videos.insert youtube.videos.update\"\n },\n \"tags\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of keyword tags - associated with the video. Tags may contain spaces.\"\n },\n \"liveBroadcastContent\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\"\n },\n \"title\": - {\n \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the video - belongs to.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the videos's default snippet.\"\n }\n },\n \"description\": - \"Basic details about a video, including title, description, uploader, thumbnails - and category.\"\n },\n \"VideoLiveStreamingDetails\": {\n \"description\": - \"Details about the live streaming metadata.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"activeLiveChatId\": {\n \"description\": - \"The ID of the currently active live chat attached to this video. This field - is filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\",\n \"type\": \"string\"\n },\n \"scheduledEndTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - time that the broadcast is scheduled to end. If the value is empty or the - property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"type\": \"string\"\n },\n \"actualEndTime\": {\n - \ \"format\": \"date-time\",\n \"description\": \"The time - that the broadcast actually ended. This value will not be available until - the broadcast is over.\",\n \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast is scheduled to begin.\"\n - \ },\n \"concurrentViewers\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\"\n },\n \"actualStartTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\"\n }\n - \ },\n \"id\": \"VideoLiveStreamingDetails\"\n },\n \"PlaylistItemStatus\": - {\n \"properties\": {\n \"privacyStatus\": {\n \"description\": - \"This resource's privacy status.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Information about the playlist item's privacy status.\",\n - \ \"id\": \"PlaylistItemStatus\"\n },\n \"CommentThreadReplies\": - {\n \"description\": \"Comments written in (direct or indirect) reply - to the top level comment.\",\n \"id\": \"CommentThreadReplies\",\n \"type\": - \"object\",\n \"properties\": {\n \"comments\": {\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"description\": - \"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.\",\n \"type\": \"array\"\n }\n - \ }\n },\n \"LiveChatUserBannedMessageDetails\": {\n \"id\": - \"LiveChatUserBannedMessageDetails\",\n \"properties\": {\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"The details of the user that was banned.\"\n },\n \"banDurationSeconds\": - {\n \"description\": \"The duration of the ban. This property is - only present if the banType is temporary.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"banType\": {\n \"description\": - \"The type of ban.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"permanent\",\n \"temporary\"\n ]\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveStreamStatus\": {\n - \ \"type\": \"object\",\n \"description\": \"Brief description of - the live stream status.\",\n \"id\": \"LiveStreamStatus\",\n \"properties\": - {\n \"streamStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ]\n },\n \"healthStatus\": - {\n \"description\": \"The health status of the stream.\",\n \"$ref\": - \"LiveStreamHealthStatus\"\n }\n }\n },\n \"ChannelContentDetails\": - {\n \"description\": \"Details about the content of a channel.\",\n \"id\": - \"ChannelContentDetails\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"type\": \"object\",\n \"properties\": {\n \"likes\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"watchLater\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\",\n \"type\": \"string\"\n },\n \"uploads\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s uploaded videos. Use the videos.insert method to upload new videos - and the videos.delete method to delete previously uploaded videos.\",\n \"type\": - \"string\"\n },\n \"favorites\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s favorite videos. Use the playlistItems.insert and - playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"watchHistory\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n }\n }\n }\n },\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsFavorite\": {\n \"id\": - \"ActivityContentDetailsFavorite\",\n \"description\": \"Information - about a video that was marked as a favorite video.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"VideoMonetizationDetails\": {\n \"id\": \"VideoMonetizationDetails\",\n - \ \"properties\": {\n \"access\": {\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\",\n - \ \"$ref\": \"AccessPolicy\"\n }\n },\n \"description\": - \"Details about monetization of a YouTube Video.\",\n \"type\": \"object\"\n - \ },\n \"LiveStreamConfigurationIssue\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"severity\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"How severe this issue is to the stream.\",\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"type\": \"string\"\n },\n \"reason\": - {\n \"type\": \"string\",\n \"description\": \"The short-form - reason for this issue.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ],\n \"type\": - \"string\",\n \"description\": \"The kind of error happening.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The long-form description of the issue and how - to resolve it.\"\n }\n },\n \"id\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"VideoAbuseReport\": {\n \"type\": \"object\",\n \"properties\": - {\n \"comments\": {\n \"type\": \"string\",\n \"description\": - \"Additional comments regarding the abuse report.\"\n },\n \"language\": - {\n \"description\": \"The language that the content was viewed in.\",\n - \ \"type\": \"string\"\n },\n \"secondaryReasonId\": - {\n \"description\": \"The specific, or secondary, reason that this - content is abusive (if available). The value is an abuse report reason ID - that is a valid secondary reason for the primary reason.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n },\n \"reasonId\": {\n \"type\": \"string\",\n - \ \"description\": \"The high-level, or primary, reason that the content - is abusive. The value is an abuse report reason ID.\"\n }\n },\n - \ \"id\": \"VideoAbuseReport\"\n },\n \"VideoContentDetails\": {\n - \ \"description\": \"Details about the content of a YouTube Video.\",\n - \ \"properties\": {\n \"contentRating\": {\n \"$ref\": - \"ContentRating\",\n \"description\": \"Specifies the ratings that - the video received under various rating schemes.\"\n },\n \"hasCustomThumbnail\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\"\n },\n \"projection\": - {\n \"description\": \"Specifies the projection format of the video.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ]\n },\n \"licensedContent\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of is_license_content indicates whether the video is licensed content.\"\n - \ },\n \"countryRestriction\": {\n \"description\": - \"The countryRestriction object contains information about the countries where - a video is (or is not) viewable.\",\n \"$ref\": \"AccessPolicy\"\n - \ },\n \"definition\": {\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"description\": \"The value of - definition indicates whether the video is available in high definition or - only in standard definition.\",\n \"type\": \"string\"\n },\n - \ \"caption\": {\n \"description\": \"The value of captions - indicates whether the video has captions or not.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"true\",\n \"false\"\n ],\n \"type\": - \"string\"\n },\n \"duration\": {\n \"description\": - \"The length of the video. The tag value is an ISO 8601 duration in the format - PT#M#S, in which the letters PT indicate that the value specifies a period - of time, and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\",\n \"type\": - \"string\"\n },\n \"dimension\": {\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\",\n \"type\": \"string\"\n },\n \"regionRestriction\": - {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\"\n }\n - \ },\n \"id\": \"VideoContentDetails\",\n \"type\": \"object\"\n - \ },\n \"PlaylistItemSnippet\": {\n \"id\": \"PlaylistItemSnippet\",\n - \ \"description\": \"Basic details about a playlist, including title, - description and thumbnails. Basic details of a YouTube Playlist item provided - by the author. Next ID: 15\",\n \"type\": \"object\",\n \"properties\": - {\n \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\"\n },\n - \ \"position\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The order in which the item appears - in the playlist. The value uses a zero-based index, so the first item has - a position of 0, the second item has a position of 1, and so forth.\"\n },\n - \ \"videoOwnerChannelId\": {\n \"type\": \"string\",\n \"description\": - \"Channel id for the channel this video belongs to.\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify thGe playlist that the playlist item is in.\"\n - \ },\n \"title\": {\n \"description\": \"The item's - title.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the user that added the item to the playlist.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"The item's - description.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist item. 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.\"\n },\n - \ \"resourceId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"description\": \"The id object contains - information that can be used to uniquely identify the resource that is included - in the playlist as the playlist item.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the item was added to - the playlist.\",\n \"type\": \"string\"\n },\n \"videoOwnerChannelTitle\": - {\n \"description\": \"Channel title for the channel this video belongs - to.\",\n \"type\": \"string\"\n }\n }\n },\n \"SuperChatEventListResponse\": - {\n \"type\": \"object\",\n \"id\": \"SuperChatEventListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"default\": \"youtube#superChatEventListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"description\": \"A list of Super Chat purchases - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"SuperChatEvent\"\n },\n \"type\": \"array\"\n }\n - \ }\n },\n \"ActivityContentDetailsComment\": {\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with the comment.\"\n }\n },\n \"id\": \"ActivityContentDetailsComment\",\n - \ \"type\": \"object\",\n \"description\": \"Information about a - resource that received a comment.\"\n },\n \"PlaylistContentDetails\": - {\n \"properties\": {\n \"itemCount\": {\n \"type\": - \"integer\",\n \"description\": \"The number of videos in the playlist.\",\n - \ \"format\": \"uint32\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistContentDetails\"\n },\n \"Caption\": {\n \"type\": - \"object\",\n \"description\": \"A *caption* resource represents a YouTube - caption track. A caption track is associated with exactly one YouTube video.\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"default\": \"youtube#caption\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n },\n - \ \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the caption track.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"Caption\"\n },\n \"MemberSnippet\": {\n \"properties\": - {\n \"membershipsDetails\": {\n \"$ref\": \"MembershipsDetails\",\n - \ \"description\": \"Details about the user's membership.\"\n },\n - \ \"creatorChannelId\": {\n \"description\": \"The id of the - channel that's offering memberships.\",\n \"type\": \"string\"\n - \ },\n \"memberDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the member.\"\n }\n },\n - \ \"id\": \"MemberSnippet\",\n \"type\": \"object\"\n },\n \"VideoRating\": - {\n \"id\": \"VideoRating\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n },\n \"rating\": - {\n \"type\": \"string\",\n \"description\": \"Rating of - a video.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n }\n },\n \"description\": - \"Basic details about rating of a video.\",\n \"type\": \"object\"\n - \ },\n \"VideoAgeGating\": {\n \"type\": \"object\",\n \"properties\": - {\n \"alcoholContent\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether or not the video has alcoholic beverage content. Only - users of legal purchasing age in a particular country, as identified by ICAP, - can view the content.\"\n },\n \"restricted\": {\n \"description\": - \"Age-restricted trailers. For redband trailers and adult-rated video-games. - Only users aged 18+ can view the content. The the field is true the content - is restricted to viewers aged 18+. Otherwise The field won't be present.\",\n - \ \"type\": \"boolean\"\n },\n \"videoGameRating\": - {\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"Video game rating, if any.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoAgeGating\"\n - \ },\n \"LevelDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The name that should be used when referring to this level.\"\n }\n - \ },\n \"id\": \"LevelDetails\"\n },\n \"SubscriptionContentDetails\": - {\n \"id\": \"SubscriptionContentDetails\",\n \"description\": \"Details - about the content to witch a subscription refers.\",\n \"properties\": - {\n \"activityType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\"\n - \ },\n \"totalItemCount\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The approximate number of items that the subscription - points to.\",\n \"type\": \"integer\"\n },\n \"newItemCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The number - of new items in the subscription since its content was last read.\",\n \"type\": - \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"Activity\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#activity\\\".\",\n \"default\": \"youtube#activity\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the activity.\",\n \"type\": \"string\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n - \ \"description\": \"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.\"\n },\n \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the activity, including the activity's type and group ID.\"\n }\n },\n - \ \"description\": \"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.\",\n \"id\": \"Activity\"\n },\n - \ \"VideoCategory\": {\n \"description\": \"A *videoCategory* resource - identifies a category that has been or could be associated with uploaded videos.\",\n - \ \"id\": \"VideoCategory\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video category.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoCategory\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n }\n },\n \"type\": \"object\"\n },\n \"SearchResult\": - {\n \"id\": \"SearchResult\",\n \"description\": \"A search result - contains information about a YouTube video, channel, or playlist that matches - the search parameters specified in an API request. While a search result points - to a uniquely identifiable resource, like a video, it does not have its own - persistent data.\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#searchResult\\\".\",\n \"default\": - \"youtube#searchResult\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about a search result, such as its title or description. For example, if the - search result is a video, then the title will be the video's title and the - description will be the video's description.\",\n \"$ref\": \"SearchResultSnippet\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"WatchSettings\": - {\n \"properties\": {\n \"textColor\": {\n \"type\": - \"string\",\n \"description\": \"The background color for the video - watch page's branded area.\"\n },\n \"featuredPlaylistId\": - {\n \"type\": \"string\",\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\"\n - \ },\n \"backgroundColor\": {\n \"type\": \"string\",\n - \ \"description\": \"The text color for the video watch page's branded - area.\"\n }\n },\n \"type\": \"object\",\n \"id\": \"WatchSettings\",\n - \ \"description\": \"Branding properties for the watch. All deprecated.\"\n - \ },\n \"VideoSuggestions\": {\n \"id\": \"VideoSuggestions\",\n - \ \"type\": \"object\",\n \"description\": \"Specifies suggestions - on how to improve video content, including encoding hints, tag suggestions, - and editor suggestions.\",\n \"properties\": {\n \"processingHints\": - {\n \"items\": {\n \"enumDescriptions\": [\n \"The - MP4 file is not streamable, this will slow down the processing. MOOV atom - was not found at the beginning of the file.\",\n \"Probably a - better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ]\n },\n \"description\": \"A list of suggestions - that may improve YouTube's ability to process the video.\",\n \"type\": - \"array\"\n },\n \"editorSuggestions\": {\n \"items\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"Picture brightness levels seem off and could be corrected.\",\n - \ \"The video appears shaky and could be stabilized.\",\n \"Margins - (mattes) detected around the picture could be cropped.\",\n \"The - audio track appears silent and could be swapped with a better quality one.\"\n - \ ],\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ]\n },\n \"type\": \"array\",\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\"\n },\n \"processingErrors\": - {\n \"description\": \"A list of errors that will prevent YouTube - from successfully processing the uploaded video video. These errors indicate - that, regardless of the video's current processing status, eventually, that - status will almost certainly be failed.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n - \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n - \ \"unsupportedSpatialAudioLayout\"\n ],\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ]\n }\n },\n \"processingWarnings\": - {\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ],\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ]\n },\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"type\": \"array\"\n },\n \"tagSuggestions\": - {\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\"\n }\n }\n },\n \"LocalizedProperty\": {\n - \ \"properties\": {\n \"localized\": {\n \"items\": {\n - \ \"$ref\": \"LocalizedString\"\n },\n \"type\": - \"array\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the default property.\",\n \"$ref\": \"LanguageTag\"\n - \ },\n \"default\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LocalizedProperty\",\n \"type\": \"object\"\n - \ },\n \"I18nRegionListResponse\": {\n \"id\": \"I18nRegionListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegionListResponse\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"I18nRegion\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of regions where YouTube is available. In this map, the i18n region ID - is the map key, and its value is the corresponding i18nRegion resource.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"type\": \"object\",\n \"description\": \"Details about a social - network post.\",\n \"properties\": {\n \"type\": {\n \"type\": - \"string\",\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n - \ \"facebook\",\n \"twitter\"\n ],\n \"description\": - \"The name of the social network.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"referenceUrl\": {\n \"description\": - \"The URL of the social network post.\",\n \"type\": \"string\"\n - \ },\n \"author\": {\n \"type\": \"string\",\n \"description\": - \"The author of the social network post.\"\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object encapsulates information that identifies the resource associated with - a social network post.\"\n },\n \"imageUrl\": {\n \"description\": - \"An image of the post's author.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ActivityContentDetailsSocial\"\n },\n \"GeoPoint\": - {\n \"id\": \"GeoPoint\",\n \"properties\": {\n \"latitude\": - {\n \"format\": \"double\",\n \"description\": \"Latitude - in degrees.\",\n \"type\": \"number\"\n },\n \"longitude\": - {\n \"type\": \"number\",\n \"description\": \"Longitude - in degrees.\",\n \"format\": \"double\"\n },\n \"altitude\": - {\n \"description\": \"Altitude above the reference ellipsoid, in - meters.\",\n \"format\": \"double\",\n \"type\": \"number\"\n - \ }\n },\n \"description\": \"Geographical coordinates of - a point, in WGS84.\",\n \"type\": \"object\"\n },\n \"SubscriptionListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Subscription\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of subscriptions that match - the request criteria.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"visitorId\": {\n \"description\": \"The - visitorId identifies the visitor.\",\n \"type\": \"string\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"SubscriptionListResponse\"\n },\n \"I18nRegion\": - {\n \"properties\": {\n \"snippet\": {\n \"$ref\": \"I18nRegionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n region, such as region code and human-readable name.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"default\": \"youtube#i18nRegion\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the i18n region.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A *i18nRegion* resource identifies a region where - YouTube is available.\",\n \"id\": \"I18nRegion\",\n \"type\": \"object\"\n - \ },\n \"ChannelSectionTargeting\": {\n \"id\": \"ChannelSectionTargeting\",\n - \ \"type\": \"object\",\n \"description\": \"ChannelSection targeting - setting.\",\n \"properties\": {\n \"regions\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The region the channel section is targeting.\"\n - \ },\n \"languages\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"The language the channel section is targeting.\"\n },\n \"countries\": - {\n \"description\": \"The country the channel section is targeting.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n }\n }\n },\n \"CommentThread\": {\n \"type\": - \"object\",\n \"description\": \"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.\",\n \"id\": \"CommentThread\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the comment thread.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n - \ },\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n - \ \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"default\": \"youtube#commentThread\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LocalizedString\": {\n \"type\": \"object\",\n - \ \"id\": \"LocalizedString\",\n \"properties\": {\n \"language\": - {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": - \"string\"\n }\n }\n },\n \"Subscription\": {\n \"id\": - \"Subscription\",\n \"description\": \"A *subscription* resource contains - information about a YouTube user subscription. A subscription notifies a user - when new videos are added to a channel or when another user takes one of several - actions on YouTube, such as uploading a video, rating a video, or commenting - on a video.\",\n \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the subscription.\"\n },\n \"kind\": - {\n \"default\": \"youtube#subscription\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"subscriberSnippet\": {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"The subscriberSnippet object contains basic details - about the subscriber.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\",\n - \ \"$ref\": \"SubscriptionContentDetails\"\n }\n }\n },\n - \ \"AbuseReport\": {\n \"type\": \"object\",\n \"id\": \"AbuseReport\",\n - \ \"properties\": {\n \"relatedEntities\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n - \ }\n },\n \"description\": {\n \"type\": \"string\"\n - \ },\n \"subject\": {\n \"$ref\": \"Entity\"\n },\n - \ \"abuseTypes\": {\n \"items\": {\n \"$ref\": \"AbuseType\"\n - \ },\n \"type\": \"array\"\n }\n }\n },\n - \ \"LiveChatModeratorListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of moderators that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n }\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n }\n },\n \"id\": \"LiveChatModeratorListResponse\"\n - \ },\n \"LiveChatMessageAuthorDetails\": {\n \"id\": \"LiveChatMessageAuthorDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"isVerified\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author's identity has - been verified by YouTube.\"\n },\n \"channelUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channel's URL.\"\n },\n - \ \"isChatSponsor\": {\n \"description\": \"Whether the author - is a sponsor of the live chat.\",\n \"type\": \"boolean\"\n },\n - \ \"displayName\": {\n \"description\": \"The channel's display - name.\",\n \"type\": \"string\"\n },\n \"isChatOwner\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is the owner of the live chat.\"\n },\n \"isChatModerator\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is a moderator of the live chat.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n }\n }\n },\n \"PlaylistItem\": {\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"id\": - \"PlaylistItem\",\n \"properties\": {\n \"status\": {\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\",\n \"$ref\": \"PlaylistItemStatus\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistItemContentDetails\",\n \"description\": \"The contentDetails - object is included in the resource if the included item is a YouTube video. - The object contains additional information about the video.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"default\": \"youtube#playlistItem\"\n },\n \"snippet\": - {\n \"$ref\": \"PlaylistItemSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelSectionListResponse\": {\n \"type\": - \"object\",\n \"id\": \"ChannelSectionListResponse\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of ChannelSections - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoCategorySnippet\": {\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The video category's title.\"\n },\n \"assignable\": {\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel that created the video category.\",\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Basic details about a video category, such - as its localized title.\",\n \"id\": \"VideoCategorySnippet\",\n \"type\": - \"object\"\n },\n \"PlaylistLocalization\": {\n \"description\": - \"Playlist localization setting\",\n \"type\": \"object\",\n \"properties\": - {\n \"description\": {\n \"description\": \"The localized - strings for playlist's description.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"description\": \"The localized strings for - playlist's title.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"PlaylistLocalization\"\n },\n \"ChannelListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Channel\"\n }\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelListResponse\"\n },\n \"CommentSnippet\": {\n - \ \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID of the video the comment refers to, if any.\",\n \"type\": - \"string\"\n },\n \"textDisplay\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"updatedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the comment was last updated.\",\n \"format\": \"date-time\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the comment was originally - published.\",\n \"type\": \"string\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"parentId\": {\n \"type\": - \"string\",\n \"description\": \"The unique id of the parent comment, - only set for replies.\"\n },\n \"viewerRating\": {\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ]\n - \ },\n \"authorProfileImageUrl\": {\n \"description\": - \"The URL for the avatar of the user who posted the comment.\",\n \"type\": - \"string\"\n },\n \"moderationStatus\": {\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"enumDescriptions\": [\n - \ \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"type\": \"string\"\n },\n \"canRate\": - {\n \"description\": \"Whether the current viewer can rate this comment.\",\n - \ \"type\": \"boolean\"\n },\n \"textOriginal\": {\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"likeCount\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The total number of likes this comment has received.\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"authorDisplayName\": - {\n \"description\": \"The name of the user who posted the comment.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Basic details about a comment, such as its author - and text.\",\n \"id\": \"CommentSnippet\",\n \"type\": \"object\"\n - \ },\n \"PlaylistSnippet\": {\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails.\",\n \"properties\": - {\n \"tags\": {\n \"description\": \"Keyword tags associated - with the playlist.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The playlist's - description.\"\n },\n \"thumbnailVideoId\": {\n \"type\": - \"string\",\n \"description\": \"Note: if the playlist has a custom - thumbnail, this field will not be populated. The video id selected by the - user that will be used as the thumbnail of this playlist. This field defaults - to the first publicly viewable video in the playlist, if: 1. The user has - never selected a video to be the thumbnail of the playlist. 2. The user selects - a video to be the thumbnail, and then removes that video from the playlist. - 3. The user selects a non-owned video to be the thumbnail, but that video - becomes private, or gets deleted.\"\n },\n \"thumbnails\": {\n - \ \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist. 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.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the playlist.\"\n - \ },\n \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.playlists.insert\",\n \"youtube.playlists.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The playlist's title.\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"channelTitle\": {\n \"description\": \"The - channel title of the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the playlist was created.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the playlist's default title and description.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"PlaylistSnippet\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"type\": \"object\",\n \"description\": \"Video processing - progress and completion time estimate.\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"properties\": {\n \"timeLeftMs\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"An estimate - of the amount of time, in millseconds, that YouTube needs to finish processing - the video.\"\n },\n \"partsProcessed\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of parts of the video - that YouTube has already processed. You can estimate the percentage of the - video that YouTube has already processed by calculating: 100 * parts_processed - / parts_total Note that since the estimated number of parts could increase - without a corresponding increase in the number of parts that have already - been processed, it is possible that the calculated progress could periodically - decrease while YouTube processes a video.\",\n \"type\": \"string\"\n - \ },\n \"partsTotal\": {\n \"description\": \"An estimate - of the total number of parts that need to be processed for the video. The - number may be updated with more precise estimates while YouTube processes - the video.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoProcessingDetails\": {\n \"description\": - \"Describes processing status and progress and availability of some other - Video resource parts.\",\n \"properties\": {\n \"fileDetailsAvailability\": - {\n \"description\": \"This value indicates whether file details - are available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingProgress\": {\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"editorSuggestionsAvailability\": {\n \"description\": - \"This value indicates whether video editing suggestions, which might improve - video quality or the playback experience, are available for the video. You - can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"processingFailureReason\": - {\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"processingIssuesAvailability\": {\n \"description\": - \"This value indicates whether the video processing engine has generated suggestions - that might improve YouTube's ability to process the the video, warnings that - explain video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"tagSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether keyword (tag) suggestions are available for the video. Tags - can be added to a video's metadata to make it easier for other users to find - the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"processingStatus\": - {\n \"enum\": [\n \"processing\",\n \"succeeded\",\n - \ \"failed\",\n \"terminated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\"\n },\n - \ \"thumbnailsAvailability\": {\n \"type\": \"string\",\n \"description\": - \"This value indicates whether thumbnail images have been generated for the - video.\"\n }\n },\n \"id\": \"VideoProcessingDetails\",\n - \ \"type\": \"object\"\n },\n \"CaptionSnippet\": {\n \"properties\": - {\n \"status\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"serving\",\n \"syncing\",\n \"failed\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The caption track's status.\"\n },\n \"isCC\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the track contains - closed captions for the deaf and hard of hearing. The default value is false.\"\n - \ },\n \"name\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The name of the caption track. The name is intended - to be visible to the user as an option during playback.\",\n \"type\": - \"string\"\n },\n \"isEasyReader\": {\n \"description\": - \"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.\",\n - \ \"type\": \"boolean\"\n },\n \"audioTrackType\": {\n - \ \"description\": \"The type of audio track associated with the caption - track.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ]\n },\n - \ \"isAutoSynced\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n \"failureReason\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"unknownFormat\",\n - \ \"unsupportedFormat\",\n \"processingFailed\"\n ],\n - \ \"description\": \"The reason that YouTube failed to process the - caption track. This property is only present if the state property's value - is failed.\"\n },\n \"language\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The language of - the caption track. The property value is a BCP-47 language tag.\"\n },\n - \ \"lastUpdated\": {\n \"description\": \"The date and time - when the caption track was last updated.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"isDraft\": {\n \"type\": - \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\"\n - \ },\n \"trackKind\": {\n \"enum\": [\n \"standard\",\n - \ \"ASR\",\n \"forced\"\n ],\n \"type\": - \"string\",\n \"description\": \"The caption track's type.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"isLarge\": {\n \"description\": \"Indicates whether the - caption track uses large text for the vision-impaired. The default value is - false.\",\n \"type\": \"boolean\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video associated with the caption track. - @mutable youtube.captions.insert\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n }\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a caption track, such as its language and name.\",\n \"id\": - \"CaptionSnippet\"\n },\n \"Playlist\": {\n \"type\": \"object\",\n - \ \"description\": \"A *playlist* resource represents a YouTube playlist. - A playlist is a collection of videos that can be viewed sequentially and shared - with other users. A playlist can contain up to 200 videos, and YouTube does - not limit the number of playlists that each user creates. By default, playlists - are publicly visible to other users, but playlists can be public or private. - YouTube also uses playlists to identify special collections of videos for - a channel, such as: - uploaded videos - favorite videos - positively rated - (liked) videos - watch history - watch later To be more specific, these lists - are associated with a channel, which is a collection of a person, group, or - company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods.\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the playlist.\"\n },\n \"localizations\": {\n \"description\": - \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"type\": - \"object\"\n },\n \"kind\": {\n \"default\": \"youtube#playlist\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n - \ },\n \"player\": {\n \"description\": \"The player - object contains information that you would use to play the playlist in an - embedded player.\",\n \"$ref\": \"PlaylistPlayer\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - status information for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains information like video count.\",\n \"$ref\": - \"PlaylistContentDetails\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistSnippet\",\n \"description\": \"The snippet object contains - basic details about the playlist, such as its title and description.\"\n }\n - \ },\n \"id\": \"Playlist\"\n },\n \"AbuseType\": {\n \"type\": - \"object\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"AbuseType\"\n },\n \"ChannelProfileDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"displayName\": - {\n \"description\": \"The channel's display name.\",\n \"type\": - \"string\"\n },\n \"profileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channels's avatar URL.\"\n }\n - \ },\n \"id\": \"ChannelProfileDetails\"\n },\n \"I18nLanguage\": - {\n \"id\": \"I18nLanguage\",\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n language, such as language code and human-readable name.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n \"default\": - \"youtube#i18nLanguage\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n language.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"An *i18nLanguage* - resource identifies a UI language currently supported by YouTube.\"\n },\n - \ \"ActivityContentDetailsPromotedItem\": {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"Details about a resource which is being promoted.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"forecastingUrl\": - {\n \"description\": \"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.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the promoted video.\",\n \"type\": \"string\"\n - \ },\n \"customCtaButtonText\": {\n \"description\": - \"The custom call-to-action button text. If specified, it will override the - default button text for the cta_type.\",\n \"type\": \"string\"\n - \ },\n \"creativeViewUrl\": {\n \"description\": \"The - URL the client should ping to indicate that the user was shown this promoted - item.\",\n \"type\": \"string\"\n },\n \"clickTrackingUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user clicked through on this promoted item.\",\n \"type\": - \"string\"\n },\n \"adTag\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should fetch to request a - promoted item.\"\n },\n \"ctaType\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\"\n },\n \"impressionUrl\": {\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"destinationUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should direct the user to, - if the user chooses to visit the advertiser's website.\"\n },\n \"descriptionText\": - {\n \"type\": \"string\",\n \"description\": \"The text - description to accompany the promoted item.\"\n }\n }\n },\n - \ \"MonitorStreamInfo\": {\n \"properties\": {\n \"embedHtml\": - {\n \"description\": \"HTML code that embeds a player that plays - the monitor stream.\",\n \"type\": \"string\"\n },\n \"enableMonitorStream\": - {\n \"description\": \"This value determines whether the monitor - stream is enabled for the broadcast. If the monitor stream is enabled, then - YouTube will broadcast the event content on a special stream intended only - for the broadcaster's consumption. The broadcaster can use the stream to review - the event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"type\": \"boolean\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"broadcastStreamDelayMs\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"If you have set - the enableMonitorStream property to true, then this property determines the - length of the live broadcast delay.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n }\n },\n \"id\": \"MonitorStreamInfo\",\n - \ \"type\": \"object\",\n \"description\": \"Settings and Info of - the monitor stream\"\n },\n \"InvideoBranding\": {\n \"id\": \"InvideoBranding\",\n - \ \"properties\": {\n \"imageUrl\": {\n \"description\": - \"The url of the uploaded image. Only used in apiary to api communication.\",\n - \ \"type\": \"string\"\n },\n \"timing\": {\n \"description\": - \"The temporal position within the video where watermark will be displayed.\",\n - \ \"$ref\": \"InvideoTiming\"\n },\n \"targetChannelId\": - {\n \"description\": \"The channel to which this branding links. - If not present it defaults to the current channel.\",\n \"type\": - \"string\"\n },\n \"imageBytes\": {\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"type\": \"string\",\n \"format\": \"byte\"\n },\n - \ \"position\": {\n \"description\": \"The spatial position - within the video where the branding watermark will be displayed.\",\n \"$ref\": - \"InvideoPosition\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"LINT.IfChange Describes an invideo branding.\"\n },\n \"VideoPlayer\": - {\n \"description\": \"Player to be used for a video playback.\",\n \"type\": - \"object\",\n \"properties\": {\n \"embedWidth\": {\n \"format\": - \"int64\",\n \"type\": \"string\",\n \"description\": \"The - embed width\"\n },\n \"embedHeight\": {\n \"type\": - \"string\",\n \"format\": \"int64\"\n },\n \"embedHtml\": - {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a - player that will play the video.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoPlayer\"\n },\n \"ChannelContentOwnerDetails\": - {\n \"id\": \"ChannelContentOwnerDetails\",\n \"type\": \"object\",\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"properties\": - {\n \"contentOwner\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the content owner linked to the channel.\"\n },\n \"timeLinked\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the channel was linked to the content owner.\",\n \"format\": - \"date-time\"\n }\n }\n },\n \"LiveStream\": {\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#liveStream\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n },\n - \ \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n \"description\": - \"The status object contains information about live stream's status.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the stream.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\",\n - \ \"$ref\": \"LiveStreamSnippet\"\n },\n \"cdn\": {\n - \ \"description\": \"The cdn object defines the live stream's content - delivery network (CDN) settings. These settings provide details about the - manner in which you stream your content to YouTube.\",\n \"$ref\": - \"CdnSettings\"\n }\n },\n \"id\": \"LiveStream\",\n \"type\": - \"object\",\n \"description\": \"A live stream describes a live ingestion - point.\"\n },\n \"PlaylistPlayer\": {\n \"id\": \"PlaylistPlayer\",\n - \ \"properties\": {\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoTopicDetails\": {\n \"id\": \"VideoTopicDetails\",\n - \ \"properties\": {\n \"relevantTopicIds\": {\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"topicIds\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Freebase - topic IDs that are centrally associated with the video. These are topics that - are centrally featured in the video, and it can be said that the video is - mainly about each of these. You can retrieve information about each topic - using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"type\": \"array\"\n },\n \"topicCategories\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Wikipedia - URLs that provide a high-level description of the video's content.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Freebase topic - information related to the video.\"\n },\n \"VideoAbuseReportReason\": - {\n \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#videoAbuseReportReason\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID of this abuse report reason.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"VideoAbuseReportReasonSnippet\",\n \"description\": \"The `snippet` - object contains basic details about the abuse report reason.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReason\"\n - \ },\n \"ChannelSnippet\": {\n \"id\": \"ChannelSnippet\",\n \"type\": - \"object\",\n \"properties\": {\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails in your application, make - sure that your code uses the image URLs exactly as they are returned in API - responses. For example, your application should not use the http domain instead - of the https domain in a URL returned in an API response. Beginning in July - 2018, channel thumbnail URLs will only be available in the https domain, which - is how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\"\n },\n \"localized\": {\n - \ \"description\": \"Localized title and description, read-only.\",\n - \ \"$ref\": \"ChannelLocalization\"\n },\n \"customUrl\": - {\n \"description\": \"The custom url of the channel.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the channel.\"\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the channel's default title and description.\",\n \"type\": \"string\"\n - \ },\n \"country\": {\n \"description\": \"The country - of the channel.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - title.\"\n },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the channel was created.\"\n }\n },\n \"description\": - \"Basic details about a channel, including title, description and thumbnails.\"\n - \ },\n \"SearchListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"pageInfo\": {\n \"description\": \"General pagination - information.\",\n \"$ref\": \"PageInfo\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#searchListResponse\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"Pagination information for token pagination.\",\n \"items\": {\n - \ \"$ref\": \"SearchResult\"\n }\n },\n \"regionCode\": - {\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"SearchListResponse\"\n - \ },\n \"ResourceId\": {\n \"description\": \"A resource id is a - generic reference that points to another YouTube resource.\",\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a video. This property - is only present if the resourceId.kind value is youtube#video.\"\n },\n - \ \"kind\": {\n \"description\": \"The type of the API resource.\",\n - \ \"type\": \"string\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a playlist. This property - is only present if the resourceId.kind value is youtube#playlist.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ResourceId\"\n },\n - \ \"ChannelConversionPing\": {\n \"id\": \"ChannelConversionPing\",\n - \ \"properties\": {\n \"context\": {\n \"description\": - \"Defines the context of the ping.\",\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"conversionUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"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.\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"id\": \"LiveChatNewSponsorDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"isUpgrade\": {\n \"type\": \"boolean\",\n - \ \"description\": \"If the viewer just had upgraded from a lower - level. For viewers that were not members at the time of purchase, this field - is false.\"\n },\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level that the viewer - just had joined. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n }\n - \ }\n },\n \"MembershipsDetails\": {\n \"id\": \"MembershipsDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"membershipsDuration\": - {\n \"$ref\": \"MembershipsDuration\",\n \"description\": - \"Data about memberships duration without taking into consideration pricing - levels.\"\n },\n \"highestAccessibleLevel\": {\n \"description\": - \"Id of the highest level that the user has access to at the moment.\",\n - \ \"type\": \"string\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n },\n - \ \"membershipsDurationAtLevels\": {\n \"items\": {\n \"$ref\": - \"MembershipsDurationAtLevel\"\n },\n \"description\": \"Data - about memberships duration on particular pricing levels.\",\n \"type\": - \"array\"\n },\n \"accessibleLevels\": {\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n }\n }\n },\n \"I18nLanguageListResponse\": {\n - \ \"id\": \"I18nLanguageListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"description\": - \"A list of supported i18n languages. In this map, the i18n language ID is - the map key, and its value is the corresponding i18nLanguage resource.\",\n - \ \"items\": {\n \"$ref\": \"I18nLanguage\"\n },\n - \ \"type\": \"array\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ }\n }\n },\n \"SubscriptionSubscriberSnippet\": {\n \"id\": - \"SubscriptionSubscriberSnippet\",\n \"properties\": {\n \"title\": - {\n \"description\": \"The title of the subscriber.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"Thumbnails for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"description\": {\n \"description\": \"The description - of the subscriber.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The channel ID of the subscriber.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - a subscription's subscriber including title, description, channel ID and thumbnails.\",\n - \ \"type\": \"object\"\n },\n \"SuperChatEventSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"description\": \"The purchase amount, in micros of - the purchase currency. e.g., 1 is represented as 1000000.\",\n \"type\": - \"string\"\n },\n \"displayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the purchase amount and currency (e.g., \\\"$1.00\\\"). The string is rendered - for the given language.\"\n },\n \"superStickerMetadata\": {\n - \ \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n },\n \"messageType\": {\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel id where the event occurred.\"\n },\n - \ \"commentText\": {\n \"description\": \"The text contents - of the comment left by the user.\",\n \"type\": \"string\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made. ISO 4217.\",\n \"type\": \"string\"\n },\n - \ \"createdAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"supporterDetails\": {\n \"description\": \"Details - about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n - \ \"isSuperStickerEvent\": {\n \"type\": \"boolean\",\n \"description\": - \"True if this event is a Super Sticker event.\"\n }\n },\n \"id\": - \"SuperChatEventSnippet\"\n },\n \"CommentThreadSnippet\": {\n \"description\": - \"Basic details about a comment thread.\",\n \"id\": \"CommentThreadSnippet\",\n - \ \"properties\": {\n \"totalReplyCount\": {\n \"description\": - \"The total number of replies (not including the top level comment).\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"canReply\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n - \ \"topLevelComment\": {\n \"description\": \"The top level - comment of this thread.\",\n \"$ref\": \"Comment\"\n },\n - \ \"channelId\": {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\",\n \"type\": \"string\"\n },\n - \ \"isPublic\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoListResponse\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Video\"\n },\n \"type\": \"array\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"VideoListResponse\",\n \"type\": \"object\"\n },\n - \ \"ActivityContentDetailsPlaylistItem\": {\n \"description\": \"Information - about a new playlist item.\",\n \"properties\": {\n \"playlistId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n },\n \"playlistItemId\": - {\n \"description\": \"ID of the item within the playlist.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n }\n },\n \"id\": - \"ActivityContentDetailsPlaylistItem\",\n \"type\": \"object\"\n },\n - \ \"LiveChatModerator\": {\n \"id\": \"LiveChatModerator\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveChatModerator\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A *liveChatModerator* resource represents a moderator for a YouTube live - chat. A chat moderator has the ability to ban/unban users from a chat, remove - message, etc.\",\n \"type\": \"object\"\n },\n \"PageInfo\": {\n - \ \"id\": \"PageInfo\",\n \"properties\": {\n \"totalResults\": - {\n \"description\": \"The total number of results in the result - set.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ },\n \"resultsPerPage\": {\n \"type\": \"integer\",\n - \ \"description\": \"The number of results included in the API response.\",\n - \ \"format\": \"int32\"\n }\n },\n \"description\": - \"Paging details for lists of resources, including total number of items available - and number of resources returned in a single page.\",\n \"type\": \"object\"\n - \ },\n \"InvideoTiming\": {\n \"properties\": {\n \"type\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"offsetFromStart\",\n - \ \"offsetFromEnd\"\n ],\n \"description\": \"Describes - a timing type. If the value is offsetFromStart, then the offsetMs field represents - an offset from the start of the video. If the value is offsetFromEnd, then - the offsetMs field represents an offset from the end of the video.\"\n },\n - \ \"durationMs\": {\n \"format\": \"uint64\",\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"type\": \"string\"\n - \ },\n \"offsetMs\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"Defines the time at which the promotion - will appear. Depending on the value of type the value of the offsetMs field - will represent a time offset from the start or from the end of the video, - expressed in milliseconds.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"InvideoTiming\",\n \"description\": \"Describes a temporal - position of a visual widget inside a video.\"\n },\n \"ThumbnailDetails\": - {\n \"description\": \"Internal representation of thumbnails for a YouTube - resource.\",\n \"type\": \"object\",\n \"id\": \"ThumbnailDetails\",\n - \ \"properties\": {\n \"medium\": {\n \"description\": - \"The medium quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"standard\": {\n \"description\": \"The standard - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"maxres\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The maximum resolution quality image for this resource.\"\n },\n - \ \"high\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The high quality image for this resource.\"\n },\n \"default\": - {\n \"description\": \"The default image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n }\n }\n },\n \"PlaylistItemContentDetails\": - {\n \"id\": \"PlaylistItemContentDetails\",\n \"properties\": {\n - \ \"note\": {\n \"type\": \"string\",\n \"description\": - \"A user-generated note for this item.\"\n },\n \"startAt\": - {\n \"description\": \"The time, measured in seconds from the start - of the video, when the video should start playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) The default value is 0.\",\n \"type\": - \"string\"\n },\n \"endAt\": {\n \"description\": \"The - time, measured in seconds from the start of the video, when the video should - stop playing. (The playlist owner can specify the times when the video should - start and stop playing when the video is played in the context of the playlist.) - By default, assume that the video.endTime is the end of the video.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify a video. To retrieve the video - resource, set the id query parameter to this value in your API request.\",\n - \ \"type\": \"string\"\n },\n \"videoPublishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the video was published - to YouTube.\"\n }\n },\n \"type\": \"object\"\n },\n \"PlaylistListResponse\": - {\n \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#playlistListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"description\": \"A list of playlists that match the request criteria\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"PlaylistListResponse\"\n },\n - \ \"LiveChatMessageListResponse\": {\n \"id\": \"LiveChatMessageListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatMessage\"\n }\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"offlineAt\": {\n \"description\": - \"The date and time when the underlying stream went offline.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pollingIntervalMillis\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The amount of time the client should wait before polling again.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetails\": - {\n \"description\": \"Details about the content of an activity: the - video that was shared, the channel that was subscribed to, etc.\",\n \"properties\": - {\n \"like\": {\n \"$ref\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"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.\"\n },\n \"upload\": {\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"recommendation\": {\n \"description\": - \"The recommendation object contains information about a recommended resource. - This property is only present if the snippet.type is recommendation.\",\n - \ \"$ref\": \"ActivityContentDetailsRecommendation\"\n },\n - \ \"bulletin\": {\n \"description\": \"The bulletin object - contains details about a channel bulletin post. This object is only present - if the snippet.type is bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n - \ },\n \"subscription\": {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n - \ \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\"\n },\n \"social\": {\n \"$ref\": - \"ActivityContentDetailsSocial\",\n \"description\": \"The social - object contains details about a social network post. This property is only - present if the snippet.type is social.\"\n },\n \"playlistItem\": - {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"The playlistItem object contains information about a new playlist item. - This property is only present if the snippet.type is playlistItem.\"\n },\n - \ \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"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.\"\n },\n \"promotedItem\": - {\n \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\",\n \"$ref\": \"ActivityContentDetailsPromotedItem\"\n - \ },\n \"favorite\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsFavorite\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetails\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID of this abuse report - secondary reason.\",\n \"type\": \"string\"\n },\n \"label\": - {\n \"description\": \"The localized label for this abuse report - secondary reason.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveStreamHealthStatus\": {\n \"properties\": - {\n \"lastUpdateTimeSeconds\": {\n \"description\": \"The - last time this status was updated (in seconds)\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"status\": {\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The status code of this stream\"\n },\n \"configurationIssues\": - {\n \"type\": \"array\",\n \"description\": \"The configurations - issues on this stream\",\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ }\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveStreamHealthStatus\"\n },\n \"Comment\": {\n \"id\": \"Comment\",\n - \ \"type\": \"object\",\n \"description\": \"A *comment* represents - a single YouTube comment.\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the comment.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#comment\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment.\"\n }\n }\n },\n \"LiveChatBanSnippet\": {\n - \ \"id\": \"LiveChatBanSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The chat this ban is pertinent to.\"\n },\n \"banDurationSeconds\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n },\n - \ \"type\": {\n \"description\": \"The type of ban.\",\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"type\": - \"string\"\n },\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\"\n }\n }\n },\n \"LanguageTag\": - {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LanguageTag\"\n - \ },\n \"LiveStreamSnippet\": {\n \"id\": \"LiveStreamSnippet\",\n - \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The stream's title. The value must be between - 1 and 128 characters long.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The stream's - description. The value cannot be longer than 10000 characters.\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the stream was created.\",\n \"type\": \"string\"\n - \ },\n \"isDefaultStream\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"SuperChatEvent\": - {\n \"id\": \"SuperChatEvent\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"default\": \"youtube#superChatEvent\"\n },\n \"snippet\": - {\n \"$ref\": \"SuperChatEventSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the Super Chat event.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"A `__superChatEvent__` - resource represents a Super Chat purchase on a YouTube channel.\"\n },\n - \ \"LiveChatBan\": {\n \"id\": \"LiveChatBan\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatBan\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A `__liveChatBan__` resource represents a ban for - a YouTube live chat.\"\n },\n \"ActivityListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#activityListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Activity\"\n }\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ }\n },\n \"id\": \"ActivityListResponse\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"description\": \"Details about a resource which was added to a - channel.\",\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that was added to the channel.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"VideoFileDetailsVideoStream\": {\n \"id\": \"VideoFileDetailsVideoStream\",\n - \ \"properties\": {\n \"aspectRatio\": {\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\",\n \"format\": \"double\",\n - \ \"type\": \"number\"\n },\n \"widthPixels\": {\n \"type\": - \"integer\",\n \"description\": \"The encoded video content's width - in pixels. You can calculate the video's encoding aspect ratio as width_pixels - / height_pixels.\",\n \"format\": \"uint32\"\n },\n \"frameRateFps\": - {\n \"description\": \"The video stream's frame rate, in frames per - second.\",\n \"format\": \"double\",\n \"type\": \"number\"\n - \ },\n \"bitrateBps\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The video stream's bitrate, in bits - per second.\"\n },\n \"codec\": {\n \"description\": - \"The video codec that the stream uses.\",\n \"type\": \"string\"\n - \ },\n \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"rotation\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ],\n \"description\": \"The amount - that YouTube needs to rotate the original source content to properly display - the video.\",\n \"type\": \"string\"\n },\n \"heightPixels\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The encoded video content's height in pixels.\"\n }\n },\n \"description\": - \"Information about a video stream.\",\n \"type\": \"object\"\n },\n - \ \"SearchResultSnippet\": {\n \"description\": \"Basic details about - a search result, including title, description and thumbnails of the item referenced - by the search result.\",\n \"properties\": {\n \"title\": {\n - \ \"description\": \"The title of the search result.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the channel that published the resource - that the search result identifies.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"liveBroadcastContent\": {\n \"description\": \"It indicates - if the resource (video or channel) has upcoming/active live broadcast content. - Or it's \\\"none\\\" if there is not any upcoming/active live broadcasts.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ]\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The creation date and time of the - resource that the search result identifies.\"\n },\n \"description\": - {\n \"description\": \"A description of the search result.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"SearchResultSnippet\"\n },\n \"VideoSuggestionsTagSuggestion\": {\n - \ \"type\": \"object\",\n \"description\": \"A single tag suggestion - with it's relevance information.\",\n \"properties\": {\n \"tag\": - {\n \"description\": \"The keyword tag suggested for the video.\",\n - \ \"type\": \"string\"\n },\n \"categoryRestricts\": - {\n \"type\": \"array\",\n \"description\": \"A set of video - categories for which the tag is relevant. You can use this information to - display appropriate tag suggestions based on the video category that the video - uploader associates with the video. By default, tag suggestions are relevant - for all categories if there are no restricts defined for the keyword.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"id\": \"VideoSuggestionsTagSuggestion\"\n },\n \"ChannelSettings\": - {\n \"type\": \"object\",\n \"id\": \"ChannelSettings\",\n \"description\": - \"Branding properties for the channel view.\",\n \"properties\": {\n - \ \"moderateComments\": {\n \"description\": \"Whether user-submitted - comments left on the channel page need to be approved by the channel owner - to be publicly visible.\",\n \"type\": \"boolean\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\"\n },\n - \ \"unsubscribedTrailer\": {\n \"description\": \"The trailer - of the channel, for users that are not subscribers.\",\n \"type\": - \"string\"\n },\n \"featuredChannelsUrls\": {\n \"description\": - \"The list of featured channels.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"showBrowseView\": - {\n \"description\": \"Whether the tab to browse the videos should - be displayed.\",\n \"type\": \"boolean\"\n },\n \"featuredChannelsTitle\": - {\n \"type\": \"string\",\n \"description\": \"Title for - the featured channels tab.\"\n },\n \"defaultTab\": {\n \"description\": - \"Which content tab users should see when viewing the channel.\",\n \"type\": - \"string\"\n },\n \"profileColor\": {\n \"description\": - \"A prominent color that can be rendered on this channel page.\",\n \"type\": - \"string\"\n },\n \"showRelatedChannels\": {\n \"description\": - \"Whether related channels should be proposed.\",\n \"type\": \"boolean\"\n - \ },\n \"keywords\": {\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"Specifies - the channel description.\",\n \"type\": \"string\"\n },\n - \ \"country\": {\n \"description\": \"The country of the channel.\",\n - \ \"type\": \"string\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"description\": \"Specifies the - channel title.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ChannelBannerResource\": {\n \"description\": \"A channel banner - returned as the response to a channel_banner.insert call.\",\n \"id\": - \"ChannelBannerResource\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\"\n },\n \"url\": {\n \"type\": - \"string\",\n \"description\": \"The URL of this banner image.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#channelBannerResource\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"I18nRegionSnippet\": - {\n \"type\": \"object\",\n \"id\": \"I18nRegionSnippet\",\n \"properties\": - {\n \"name\": {\n \"description\": \"The human-readable name - of the region.\",\n \"type\": \"string\"\n },\n \"gl\": - {\n \"description\": \"The region code as a 2-letter ISO country - code.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about an i18n region, such as region code and human-readable - name.\"\n },\n \"TestItem\": {\n \"id\": \"TestItem\",\n \"type\": - \"object\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\"\n },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"gaia\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ }\n }\n },\n \"SuperStickerMetadata\": {\n \"id\": - \"SuperStickerMetadata\",\n \"properties\": {\n \"altText\": {\n - \ \"type\": \"string\",\n \"description\": \"Internationalized - alt text that describes the sticker image and any animation associated with - it.\"\n },\n \"altTextLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the localization language in which - the alt text is returned.\"\n },\n \"stickerId\": {\n \"type\": - \"string\",\n \"description\": \"Unique identifier of the Super Sticker. - This is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"CdnSettings\": {\n \"type\": \"object\",\n \"properties\": - {\n \"resolution\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"240p\",\n \"360p\",\n - \ \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\",\n - \ \"2160p\",\n \"variable\"\n ],\n \"description\": - \"The resolution of the inbound video data.\"\n },\n \"ingestionInfo\": - {\n \"$ref\": \"IngestionInfo\",\n \"description\": \"The - ingestionInfo object contains information that YouTube provides that you need - to transmit your RTMP or HTTP stream to YouTube.\"\n },\n \"format\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The format of - the video stream that you are sending to Youtube. \"\n },\n \"frameRate\": - {\n \"type\": \"string\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"description\": - \"The frame rate of the inbound video data.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"ingestionType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"rtmp\",\n \"dash\",\n - \ \"webrtc\",\n \"hls\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \" The method or protocol used to transmit the - video stream.\"\n }\n },\n \"description\": \"Brief description - of the live stream cdn settings.\",\n \"id\": \"CdnSettings\"\n },\n - \ \"CommentThreadListResponse\": {\n \"properties\": {\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"CommentThread\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of comment threads that match the request criteria.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#commentThreadListResponse\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"CommentThreadListResponse\",\n \"type\": \"object\"\n - \ },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ },\n \"gifterChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the user that made the membership gifting - purchase. This matches the `snippet.authorChannelId` of the associated membership - gifting message.\"\n },\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level at which the - viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n }\n }\n },\n \"Cuepoint\": {\n \"description\": - \"Note that there may be a 5-second end-point resolution issue. For instance, - if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\",\n \"id\": \"Cuepoint\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"walltimeMs\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The wall clock time at which the cuepoint should be inserted. Only one of - insertion_offset_time_ms and walltime_ms may be set at a time.\"\n },\n - \ \"etag\": {\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The identifier for cuepoint resource.\",\n - \ \"type\": \"string\"\n },\n \"cueType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ],\n - \ \"type\": \"string\"\n },\n \"insertionOffsetTimeMs\": - {\n \"description\": \"The time when the cuepoint should be inserted - by offset to the broadcast actual start time.\",\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n },\n \"durationSecs\": {\n - \ \"description\": \"The duration of this cuepoint.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n }\n }\n },\n - \ \"LiveChatSuperChatDetails\": {\n \"id\": \"LiveChatSuperChatDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the user to this Super Chat event.\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made.\"\n },\n \"tier\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n },\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n },\n - \ \"amountDisplayString\": {\n \"type\": \"string\",\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\"\n - \ }\n }\n },\n \"InvideoPosition\": {\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"type\": {\n - \ \"enumDescriptions\": [\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"Defines the position type.\",\n - \ \"enum\": [\n \"corner\"\n ]\n },\n \"cornerPosition\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n - \ \"bottomRight\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Describes in which corner of the video the visual - widget will appear.\"\n }\n },\n \"id\": \"InvideoPosition\"\n - \ },\n \"VideoAbuseReportReasonListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoAbuseReportReasonListResponse\",\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The `visitorId` identifies the visitor.\"\n },\n \"items\": - {\n \"description\": \"A list of valid abuse reasons that are used - with `video.ReportAbuse`.\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n },\n \"type\": \"array\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoAbuseReportReasonListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n }\n },\n \"ContentRating\": - {\n \"type\": \"object\",\n \"description\": \"Ratings schemes. - The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n - \ \"id\": \"ContentRating\",\n \"properties\": {\n \"cccRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Todo espectador\",\n \"6+ - Inconveniente para menores - de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n \"18+ - - contenido excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ],\n \"description\": \"The video's Consejo de Calificaci\xF3n - Cinematogr\xE1fica (Chile) rating.\"\n },\n \"cncRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"description\": \"Rating - system in France - Commission de classification cinematographique\"\n },\n - \ \"djctqRating\": {\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ],\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"kmrbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Korea Media Rating Board - (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. The KMRB rates - videos in South Korea.\",\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ]\n },\n \"cscfRating\": {\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ]\n },\n - \ \"resorteviolenciaRating\": {\n \"description\": \"The video's - rating in Venezuela.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"B\",\n \"C\",\n \"D\",\n - \ \"E\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ]\n },\n \"catvfrRating\": {\n \"enum\": - [\n \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n - \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n - \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ]\n },\n \"grfilmRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n - \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Greece.\",\n - \ \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n - \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n - \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n - \ \"grfilmUnrated\"\n ]\n },\n \"bmukkRating\": - {\n \"description\": \"The video's rating from the Austrian Board - of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst und Kultur).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ]\n },\n \"fcoRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"fcoUnspecified\",\n - \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n - \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"I\",\n - \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Hong Kong's Office for Film, Newspaper and Article Administration.\"\n - \ },\n \"djctqRatingReasons\": {\n \"items\": {\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ],\n \"enum\": [\n - \ \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ],\n \"type\": - \"string\"\n },\n \"description\": \"Reasons that explain - why the video received its DJCQT (Brazil) rating.\",\n \"type\": - \"array\"\n },\n \"tvpgRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"description\": \"The video's TV - Parental Guidelines (TVPG) rating.\",\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"nfvcbRating\": {\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"18\",\n \"RE\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"russiaRating\": {\n - \ \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's National Film Registry - of the Russian Federation (MKRF - Russia) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"eefilmRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Estonia.\",\n - \ \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n - \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n - \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n - \ \"eefilmK16\",\n \"eefilmUnrated\"\n ]\n },\n - \ \"rcnofRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n - \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n - \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Hungarian - Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\"\n - \ },\n \"rtcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ],\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\"\n },\n \"nkclvRating\": {\n \"enum\": - [\n \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n - \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n - \ \"nkclvUnrated\"\n ],\n \"description\": \"The - video's rating from the Nacion\xE3lais Kino centrs (National Film Centre of - Latvia).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"acbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"E\",\n \"Programs that have been - given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"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.\",\n - \ \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"ecbmctRating\": {\n \"type\": \"string\",\n - \ \"description\": \"Rating system in Turkey - Evaluation and Classification - Board of the Ministry of Culture and Tourism\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ]\n },\n \"lsfRating\": {\n \"enum\": [\n - \ \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Indonesia's Lembaga Sensor Film.\"\n },\n - \ \"cbfcRating\": {\n \"description\": \"The video's Central - Board of Film Certification (CBFC - India) rating.\",\n \"enum\": - [\n \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ]\n },\n \"mibacRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\",\n \"type\": \"string\",\n \"enum\": - [\n \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n - \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n - \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n - \ ]\n },\n \"bbfcRating\": {\n \"description\": - \"The video's British Board of Film Classification (BBFC) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ]\n },\n \"chfilmRating\": {\n \"enum\": - [\n \"chfilmUnspecified\",\n \"chfilm0\",\n \"chfilm6\",\n - \ \"chfilm12\",\n \"chfilm16\",\n \"chfilm18\",\n - \ \"chfilmUnrated\"\n ],\n \"description\": \"The - video's rating in Switzerland.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"mpaaRating\": {\n \"description\": \"The video's - Motion Picture Association of America (MPAA) rating.\",\n \"enum\": - [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"bfvcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Thailand's Board of Film - and Video Censors.\",\n \"type\": \"string\",\n \"enum\": - [\n \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ]\n },\n \"kfcbRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n - \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n - \ \"kfcbUnrated\"\n ],\n \"description\": \"The - video's rating from the Kenya Film Classification Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"nfrcRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"nfrcUnspecified\",\n - \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n - \ \"nfrcX\",\n \"nfrcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\"\n },\n - \ \"ilfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Israel.\",\n \"enum\": - [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n - \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ]\n },\n \"nbcplRating\": - {\n \"description\": \"The video's rating in Poland.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"csaRating\": {\n \"description\": \"The video's - rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, which rates - broadcast content.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"Interdiction\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ]\n },\n \"mocRating\": {\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ]\n },\n \"smaisRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n - \ \"smais12\",\n \"smais14\",\n \"smais16\",\n - \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in Iceland.\"\n - \ },\n \"mccypRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Danish - Film Institute's (Det Danske Filminstitut) Media Council for Children and - Young People.\",\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ]\n },\n - \ \"eirinRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ]\n },\n \"pefilmRating\": - {\n \"description\": \"The video's rating in Peru.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"PT\",\n - \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ]\n },\n - \ \"smsaRating\": {\n \"description\": \"The video's rating - from Statens medier\xE5d (Sweden's National Media Council).\",\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ]\n },\n \"cicfRating\": - {\n \"description\": \"The video's rating from the Commission de - Contr\xF4le des Films (Belgium).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n - \ ],\n \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n - \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"medietilsynetRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"description\": \"The video's rating from Medietilsynet, - the Norwegian Media Authority.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ]\n },\n \"moctwRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ],\n \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"description\": \"The video's rating from Taiwan's - Ministry of Culture (\u6587\u5316\u90E8).\",\n \"type\": \"string\"\n - \ },\n \"incaaRating\": {\n \"description\": \"The video's - INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.\",\n - \ \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n - \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n - \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"fmocRating\": {\n \"description\": \"This property - has been deprecated. Use the contentDetails.contentRating.cncRating instead.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"E\",\n \"\"\n ],\n - \ \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ]\n },\n \"fpbRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from South Africa's Film and - Publication Board.\",\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ]\n },\n \"icaaRating\": {\n \"description\": - \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales - (ICAA - Spain) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n - \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n - \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ]\n },\n - \ \"chvrsRating\": {\n \"description\": \"The video's Canadian - Home Video Rating System (CHVRS) rating.\",\n \"enum\": [\n \"chvrsUnspecified\",\n - \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n - \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n - \ \"chvrsUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ]\n },\n \"skfilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Slovakia.\",\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ]\n },\n \"catvRating\": - {\n \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n - \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n - \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n - \ \"catvE\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n - \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"czfilmRating\": - {\n \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n - \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n - \ \"czfilmUnrated\"\n ],\n \"description\": \"The - video's rating in the Czech Republic.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ]\n },\n \"mtrcbRating\": {\n \"enum\": [\n - \ \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n - \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n - \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n - \ \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\"\n },\n \"ifcoRating\": {\n \"enum\": - [\n \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's Irish Film Classification - Office (IFCO - Ireland) rating. See the IFCO website for more information.\"\n - \ },\n \"kijkwijzerRating\": {\n \"description\": \"The - video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de Classificatie - van Audiovisuele Media (Netherlands).\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"mdaRating\": - {\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Singapore's - Media Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\"\n },\n \"fskRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"FSK 0\",\n - \ \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\",\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ]\n },\n \"oflcRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"M\",\n \"R13\",\n - \ \"R15\",\n \"R16\",\n \"R18\",\n \"\",\n - \ \"RP13\",\n \"RP16\",\n \"RP18\"\n ],\n - \ \"description\": \"The video's Office of Film and Literature Classification - (OFLC - New Zealand) rating.\",\n \"enum\": [\n \"oflcUnspecified\",\n - \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n - \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n - \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n - \ \"oflcRp16\",\n \"oflcRp18\"\n ]\n },\n - \ \"egfilmRating\": {\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Egypt.\",\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ]\n },\n \"mpaatRating\": {\n \"description\": - \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n - \ ]\n },\n \"mccaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Malta's - Film Age-Classification Board.\",\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ]\n },\n \"fpbRatingReasons\": {\n \"items\": - {\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"type\": - \"array\",\n \"description\": \"Reasons that explain why the video - received its FPB (South Africa) rating.\"\n },\n \"fcbmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ],\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n - \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n - \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n - \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ],\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"type\": - \"string\"\n },\n \"mcstRating\": {\n \"enum\": [\n - \ \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ],\n \"description\": \"The video's rating system for Vietnam - - MCST\",\n \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"cnaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"enum\": - [\n \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n - \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ]\n },\n \"nmcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ],\n - \ \"description\": \"The National Media Council ratings system for - United Arab Emirates.\",\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"cceRating\": {\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"4\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\",\n \"14\"\n ],\n - \ \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ],\n \"type\": \"string\"\n },\n \"mekuRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual - Institute).\",\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"rteRating\": - {\n \"description\": \"The video's rating from Ireland's Raidi\xF3 - Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GA\",\n \"CH\",\n \"PS\",\n \"MA\",\n - \ \"\"\n ],\n \"enum\": [\n \"rteUnspecified\",\n - \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n - \ \"rteUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"menaMpaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ],\n \"type\": \"string\",\n \"description\": - \"The rating system for MENA countries, a clone of MPAA. It is needed to prevent - titles go live w/o additional QC check, since some of them can be inappropriate - for the countries at all. See b/33408548 for more details.\",\n \"enum\": - [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n - \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n - \ ]\n },\n \"agcomRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Italy's Autorit\xE0 per - le Garanzie nelle Comunicazioni (AGCOM).\",\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ]\n },\n \"ytRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"A rating that YouTube uses to identify - age-restricted content.\",\n \"enum\": [\n \"ytUnspecified\",\n - \ \"ytAgeRestricted\"\n ]\n },\n \"nbcRating\": - {\n \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\"\n - \ },\n \"anatelRating\": {\n \"description\": \"The - video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean - television.\",\n \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n - \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n - \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n - \ \"anatelUnrated\"\n ]\n }\n }\n },\n \"MemberListResponse\": - {\n \"id\": \"MemberListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"visitorId\": {\n - \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#memberListResponse\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Member\"\n },\n \"description\": - \"A list of members that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n }\n },\n \"VideoAbuseReportReasonSnippet\": {\n \"description\": - \"Basic details about a video category, such as its localized title.\",\n - \ \"id\": \"VideoAbuseReportReasonSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"label\": {\n \"description\": - \"The localized label belonging to this abuse report reason.\",\n \"type\": - \"string\"\n },\n \"secondaryReasons\": {\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"description\": \"The secondary reasons associated with this reason, - if any are available. (There might be 0 or more.)\",\n \"type\": - \"array\"\n }\n }\n },\n \"ActivityContentDetailsUpload\": - {\n \"description\": \"Information about the uploaded video.\",\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\"\n }\n - \ },\n \"id\": \"ActivityContentDetailsUpload\",\n \"type\": - \"object\"\n },\n \"LiveChatMessageRetractedDetails\": {\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"LiveChatTextMessageDetails\": {\n \"id\": \"LiveChatTextMessageDetails\",\n - \ \"properties\": {\n \"messageText\": {\n \"description\": - \"The user's message.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoStatus\": {\n \"description\": - \"Basic details about a video category, such as its localized title. Next - Id: 18\",\n \"type\": \"object\",\n \"id\": \"VideoStatus\",\n \"properties\": - {\n \"rejectionReason\": {\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\",\n - \ \"type\": \"string\"\n },\n \"embeddable\": {\n \"description\": - \"This value indicates if the video can be embedded on another website. @mutable - youtube.videos.insert youtube.videos.update\",\n \"type\": \"boolean\"\n - \ },\n \"failureReason\": {\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ],\n \"type\": \"string\",\n \"description\": - \"This value explains why a video failed to upload. This property is only - present if the uploadStatus property indicates that the upload failed.\",\n - \ \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ]\n },\n \"uploadStatus\": - {\n \"type\": \"string\",\n \"description\": \"The status - of the uploaded video.\",\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ],\n \"enumDescriptions\": [\n - \ \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ]\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"description\": \"The video's privacy status.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n },\n - \ \"publishAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the video is scheduled to publish. It can be set - only if the privacy status of the video is private..\",\n \"format\": - \"date-time\"\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\"\n },\n \"license\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ]\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n }\n }\n - \ },\n \"ActivityContentDetailsSubscription\": {\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\"\n }\n },\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"type\": \"object\",\n \"description\": \"Information about a - channel that a user subscribed to.\"\n },\n \"LiveChatModeratorSnippet\": - {\n \"id\": \"LiveChatModeratorSnippet\",\n \"properties\": {\n - \ \"moderatorDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the moderator.\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the live chat this moderator can act on.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"MembershipsDuration\": {\n \"properties\": - {\n \"memberSince\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the user became a continuous member across all levels.\"\n - \ },\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The cumulative time the user has been a member across all levels in complete - months (the time is rounded down to the nearest integer).\"\n }\n },\n - \ \"id\": \"MembershipsDuration\",\n \"type\": \"object\"\n },\n - \ \"ChannelStatus\": {\n \"type\": \"object\",\n \"description\": - \"JSON template for the status part of a channel.\",\n \"id\": \"ChannelStatus\",\n - \ \"properties\": {\n \"isLinked\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n },\n \"longUploadsStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The long uploads status of this - channel. See https://support.google.com/youtube/answer/71673 for more information.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ]\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\"\n },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"Privacy status of the channel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ }\n }\n },\n \"CommentListResponse\": {\n \"type\": - \"object\",\n \"id\": \"CommentListResponse\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentListResponse\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of comments that match the request criteria.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveChatSuperStickerDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"superStickerMetadata\": {\n - \ \"description\": \"Information about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n },\n \"tier\": {\n \"format\": - \"uint32\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": - \"integer\"\n },\n \"amountMicros\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveChatSuperStickerDetails\"\n },\n - \ \"LiveStreamContentDetails\": {\n \"properties\": {\n \"closedCaptionsIngestionUrl\": - {\n \"description\": \"The ingestion URL where the closed captions - of this stream are sent.\",\n \"type\": \"string\"\n },\n - \ \"isReusable\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \"\n }\n },\n \"description\": \"Detailed settings of a stream.\",\n - \ \"type\": \"object\",\n \"id\": \"LiveStreamContentDetails\"\n - \ },\n \"TestItemTestItemSnippet\": {\n \"id\": \"TestItemTestItemSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {}\n },\n \"PropertyValue\": - {\n \"type\": \"object\",\n \"properties\": {\n \"value\": - {\n \"type\": \"string\",\n \"description\": \"The property's - value.\"\n },\n \"property\": {\n \"description\": - \"A property.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"A pair Property / Value.\",\n \"id\": \"PropertyValue\"\n },\n \"MembershipsLevelListResponse\": - {\n \"id\": \"MembershipsLevelListResponse\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"A list of pricing - levels offered by a creator to the fans.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"MembershipsLevel\"\n }\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveStreamListResponse\": - {\n \"id\": \"LiveStreamListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"eventId\": {\n - \ \"type\": \"string\",\n \"description\": \"Serialized EventId - of the request which produced this response.\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveStreamListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"A list of live - streams that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"LiveStream\"\n },\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n }\n }\n },\n \"LiveBroadcastListResponse\": {\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#liveBroadcastListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"description\": \"A list of broadcasts that match the request criteria.\",\n - \ \"type\": \"array\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveBroadcastListResponse\"\n },\n \"ChannelTopicDetails\": - {\n \"properties\": {\n \"topicCategories\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Wikipedia URLs that describe the channel's - content.\"\n },\n \"topicIds\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\"\n }\n - \ },\n \"description\": \"Freebase topic information related to the - channel.\",\n \"id\": \"ChannelTopicDetails\",\n \"type\": \"object\"\n - \ },\n \"VideoProjectDetails\": {\n \"properties\": {},\n \"type\": - \"object\",\n \"id\": \"VideoProjectDetails\",\n \"description\": - \"DEPRECATED. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"Member\": {\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#member\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#member\\\".\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the member.\",\n \"$ref\": \"MemberSnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\",\n - \ \"type\": \"object\",\n \"id\": \"Member\"\n },\n \"ThirdPartyLinkStatus\": - {\n \"type\": \"object\",\n \"properties\": {\n \"linkStatus\": - {\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"description\": - \"The third-party link status object contains information about the status - of the link.\",\n \"id\": \"ThirdPartyLinkStatus\"\n },\n \"LiveBroadcast\": - {\n \"id\": \"LiveBroadcast\",\n \"description\": \"A *liveBroadcast* - resource represents an event that will be streamed, via live video, on YouTube.\",\n - \ \"properties\": {\n \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n - \ \"description\": \"The status object contains information about - the event's status.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveBroadcast\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the broadcast.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"The statistics object contains info about the - event's current stats. These include concurrent viewers and total chat count. - Statistics can change (in either direction) during the lifetime of an event. - Statistics are only returned while the event is live.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the event, including its title, description, - start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatMembershipGiftingDetails\": {\n \"properties\": - {\n \"giftMembershipsCount\": {\n \"format\": \"int32\",\n - \ \"description\": \"The number of gift memberships purchased by the - user.\",\n \"type\": \"integer\"\n },\n \"giftMembershipsLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the level of the gift memberships purchased by the user. The Level names - are defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n }\n },\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"type\": \"object\"\n },\n \"VideoFileDetails\": {\n \"properties\": - {\n \"durationMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The length of the uploaded video - in milliseconds.\"\n },\n \"videoStreams\": {\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n },\n \"type\": - \"array\"\n },\n \"audioStreams\": {\n \"items\": {\n - \ \"$ref\": \"VideoFileDetailsAudioStream\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of audio streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about an audio stream.\"\n },\n \"fileSize\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - uploaded file's size in bytes. This field is present whether a video file - or another type of file was uploaded.\"\n },\n \"creationTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the uploaded video file was created. The value is specified - in ISO 8601 format. Currently, the following ISO 8601 formats are supported: - - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: - YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"bitrateBps\": {\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ },\n \"fileType\": {\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"Known video - file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an MP3 - file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"description\": \"The uploaded file's type as detected by YouTube's - video processing engine. Currently, YouTube only processes video files, but - this field is present whether a video file or another type of file was uploaded.\",\n - \ \"type\": \"string\"\n },\n \"container\": {\n \"description\": - \"The uploaded video file's container format.\",\n \"type\": \"string\"\n - \ },\n \"fileName\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\"\n }\n },\n \"description\": - \"Describes original video file properties, including technical details about - audio and video streams, but also metadata information like content length, - digitization time, or geotagging information.\",\n \"id\": \"VideoFileDetails\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageDeletedDetails\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"type\": \"object\",\n \"description\": \"Information that - identifies the recommended resource.\",\n \"properties\": {\n \"reason\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that the resource is recommended to the user.\",\n \"enum\": - [\n \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"type\": \"string\"\n - \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the recommended resource.\"\n },\n \"seedResourceId\": - {\n \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsRecommendation\"\n - \ },\n \"VideoContentDetailsRegionRestriction\": {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"properties\": {\n \"allowed\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"blocked\": {\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"description\": \"DEPRECATED Region restriction - of the video.\",\n \"type\": \"object\"\n },\n \"ChannelAuditDetails\": - {\n \"properties\": {\n \"copyrightStrikesGoodStanding\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether or - not the channel has any copyright strikes.\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel respects the community guidelines.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"The auditDetails object encapsulates - channel data that is relevant for YouTube Partners during the audit process.\",\n - \ \"id\": \"ChannelAuditDetails\"\n },\n \"ChannelToStoreLinkDetails\": - {\n \"type\": \"object\",\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"properties\": {\n \"storeUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Landing page of the store.\"\n },\n \"storeName\": - {\n \"description\": \"Name of the store.\",\n \"type\": - \"string\"\n },\n \"merchantId\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"Google Merchant - Center id of the store.\"\n }\n },\n \"description\": \"Information - specific to a store on a merchandising platform linked to a YouTube channel.\"\n - \ },\n \"ActivityContentDetailsBulletin\": {\n \"description\": - \"Details about a channel bulletin post.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource associated with a bulletin post. @mutable youtube.activities.insert\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsBulletin\"\n },\n - \ \"ChannelSectionContentDetails\": {\n \"type\": \"object\",\n \"description\": - \"Details about a channelsection, including playlists and channels.\",\n \"id\": - \"ChannelSectionContentDetails\",\n \"properties\": {\n \"playlists\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The playlist ids for - type single_playlist and multiple_playlists. For singlePlaylist, only one - playlistId is allowed.\"\n },\n \"channels\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The channel ids for type multiple_channels.\",\n \"type\": \"array\"\n - \ }\n }\n },\n \"ChannelConversionPings\": {\n \"id\": - \"ChannelConversionPings\",\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"properties\": {\n \"pings\": {\n \"items\": - {\n \"$ref\": \"ChannelConversionPing\"\n },\n \"type\": - \"array\",\n \"description\": \"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.\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelSectionLocalization\": {\n \"description\": - \"ChannelSection localization setting\",\n \"type\": \"object\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel section's title.\"\n }\n },\n - \ \"id\": \"ChannelSectionLocalization\"\n },\n \"ThirdPartyLink\": - {\n \"id\": \"ThirdPartyLink\",\n \"properties\": {\n \"linkingToken\": - {\n \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the third- party account link.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the status of the link.\",\n \"$ref\": \"ThirdPartyLinkStatus\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#thirdPartyLink\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n - \ }\n },\n \"description\": \"A *third party account link* - resource represents a link between a YouTube account or a channel and an account - on a third-party service.\",\n \"type\": \"object\"\n },\n \"Video\": - {\n \"properties\": {\n \"suggestions\": {\n \"$ref\": - \"VideoSuggestions\",\n \"description\": \"The suggestions object - encapsulates suggestions that identify opportunities to improve the video - quality or the metadata for the uploaded video. This data can only be retrieved - by the video owner.\"\n },\n \"monetizationDetails\": {\n \"$ref\": - \"VideoMonetizationDetails\",\n \"description\": \"The monetizationDetails - object encapsulates information about the monetization status of the video.\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the video's uploading, processing, and privacy - statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n \"statistics\": - {\n \"description\": \"The statistics object contains statistics - about the video.\",\n \"$ref\": \"VideoStatistics\"\n },\n - \ \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.videos.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n },\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"ageGating\": {\n - \ \"$ref\": \"VideoAgeGating\",\n \"description\": \"Age - restriction details related to a video. This data can only be retrieved by - the video owner.\"\n },\n \"recordingDetails\": {\n \"description\": - \"The recordingDetails object encapsulates information about the location, - date and address where the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the video, such as its title, description, - and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n \"player\": - {\n \"$ref\": \"VideoPlayer\",\n \"description\": \"The - player object contains information that you would use to play the video in - an embedded player.\"\n },\n \"topicDetails\": {\n \"$ref\": - \"VideoTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the video.\"\n - \ },\n \"processingDetails\": {\n \"$ref\": \"VideoProcessingDetails\",\n - \ \"description\": \"The processingDetails object encapsulates information - about YouTube's progress in processing the uploaded video file. The properties - in the object identify the current processing status and an estimate of the - time remaining until YouTube finishes processing the video. This part also - indicates whether different types of data or content, such as file details - or thumbnail images, are available for the video. The processingProgress object - is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"fileDetails\": {\n \"$ref\": \"VideoFileDetails\",\n - \ \"description\": \"The fileDetails object encapsulates information - about the video file that was uploaded to YouTube, including the file's resolution, - duration, audio and video codecs, stream bitrates, and more. This data can - only be retrieved by the video owner.\"\n },\n \"kind\": {\n - \ \"default\": \"youtube#video\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"type\": \"string\"\n },\n \"localizations\": {\n - \ \"type\": \"object\",\n \"description\": \"The localizations - object contains localized versions of the basic details about the video, such - as its title and description.\",\n \"additionalProperties\": {\n - \ \"$ref\": \"VideoLocalization\"\n }\n },\n \"projectDetails\": - {\n \"$ref\": \"VideoProjectDetails\",\n \"description\": - \"The projectDetails object contains information about the project specific - video metadata. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"VideoContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\"\n }\n },\n \"description\": \"A *video* resource - represents a YouTube video.\",\n \"type\": \"object\",\n \"id\": - \"Video\"\n },\n \"IngestionInfo\": {\n \"properties\": {\n \"backupIngestionAddress\": - {\n \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\",\n - \ \"type\": \"string\"\n },\n \"ingestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The primary - ingestion URL that you should use to stream video to YouTube. You must stream - video to this URL. Depending on which application or tool you use to encode - your video stream, you may need to enter the stream URL and stream name separately - or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of backupIngestionAddress in order to stream via RTMPS. Not applicable to - non-RTMP streams.\"\n },\n \"rtmpsIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of ingestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ },\n \"streamName\": {\n \"description\": \"The stream - name that YouTube assigns to the video stream.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"IngestionInfo\",\n \"description\": - \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMessage\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatMessage\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n - \ },\n \"authorDetails\": {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n - \ \"description\": \"The authorDetails object contains basic details - about the user that posted this message.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A *liveChatMessage* resource represents - a chat message in a YouTube Live Chat.\",\n \"id\": \"LiveChatMessage\"\n - \ },\n \"PlaylistStatus\": {\n \"id\": \"PlaylistStatus\",\n \"type\": - \"object\",\n \"properties\": {\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The playlist's privacy status.\"\n }\n }\n },\n \"I18nLanguageSnippet\": - {\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the language in the - language itself.\"\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"A short BCP-47 code that uniquely identifies - a language.\"\n }\n },\n \"description\": \"Basic details - about an i18n language, such as language code and human-readable name.\",\n - \ \"id\": \"I18nLanguageSnippet\",\n \"type\": \"object\"\n },\n - \ \"TokenPagination\": {\n \"description\": \"Stub token pagination - template to suppress results.\",\n \"properties\": {},\n \"type\": - \"object\",\n \"id\": \"TokenPagination\"\n },\n \"AccessPolicy\": - {\n \"description\": \"Rights management policy for YouTube resources.\",\n - \ \"properties\": {\n \"exception\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\"\n },\n \"allowed\": {\n \"description\": - \"The value of allowed indicates whether the access to the policy is allowed - or denied by default.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"AccessPolicy\"\n },\n \"VideoCategoryListResponse\": - {\n \"id\": \"VideoCategoryListResponse\",\n \"properties\": {\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of video categories that can be associated - with YouTube videos. In this map, the video category ID is the map key, and - its value is the corresponding videoCategory resource.\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n }\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoCategoryListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ThirdPartyLinkListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"ThirdPartyLinkListResponse\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"type\": \"array\"\n }\n - \ }\n },\n \"ThumbnailSetResponse\": {\n \"id\": \"ThumbnailSetResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of thumbnails.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#thumbnailSetResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n }\n },\n \"LiveBroadcastSnippet\": {\n - \ \"description\": \"Basic broadcast information.\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The broadcast's description. As with the title, you can set this field by - modifying the broadcast resource or by setting the description field of the - corresponding video resource.\"\n },\n \"scheduledEndTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the broadcast is scheduled to end.\",\n \"type\": - \"string\"\n },\n \"scheduledStartTime\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the broadcast is scheduled to start.\"\n },\n - \ \"actualStartTime\": {\n \"description\": \"The date and - time that the broadcast actually started. This information is only available - once the broadcast's state is live.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the broadcast was added to YouTube's live broadcast - schedule.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - broadcast. For each nested object in this object, the key is the name of the - thumbnail image, and the value is an object that contains other information - about the thumbnail.\"\n },\n \"isDefaultBroadcast\": {\n \"description\": - \"Indicates whether this broadcast is the default broadcast. Internal only.\",\n - \ \"type\": \"boolean\"\n },\n \"liveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the live chat for this - broadcast.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's title. Note that the broadcast - represents exactly one YouTube video. You can set this field by modifying - the broadcast resource or by setting the title field of the corresponding - video resource.\"\n },\n \"actualEndTime\": {\n \"description\": - \"The date and time that the broadcast actually ended. This information is - only available once the broadcast's state is complete.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that is publishing the broadcast.\"\n - \ }\n },\n \"id\": \"LiveBroadcastSnippet\",\n \"type\": - \"object\"\n },\n \"LiveBroadcastStatistics\": {\n \"properties\": - {\n \"concurrentViewers\": {\n \"type\": \"string\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\",\n \"format\": - \"uint64\"\n },\n \"totalChatCount\": {\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Statistics about the live broadcast. These - represent a snapshot of the values at the time of the request. Statistics - are only returned for live broadcasts.\",\n \"type\": \"object\",\n \"id\": - \"LiveBroadcastStatistics\"\n },\n \"ChannelSectionSnippet\": {\n \"properties\": - {\n \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that published the channel section.\",\n - \ \"type\": \"string\"\n },\n \"style\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"description\": \"The - style of the channel section.\",\n \"type\": \"string\"\n },\n - \ \"position\": {\n \"description\": \"The position of the - channel section in the channel.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the channel section's default title and description.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel section's title for - multiple_playlists and multiple_channels.\"\n },\n \"type\": - {\n \"enum\": [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of the channel section.\",\n \"type\": \"string\"\n },\n - \ \"localized\": {\n \"description\": \"Localized title, read-only.\",\n - \ \"$ref\": \"ChannelSectionLocalization\"\n }\n },\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\",\n \"type\": \"object\",\n \"id\": - \"ChannelSectionSnippet\"\n },\n \"ChannelSection\": {\n \"type\": - \"object\",\n \"properties\": {\n \"targeting\": {\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains details about the channel section content, such as a list - of playlists or channels featured in the section.\",\n \"$ref\": - \"ChannelSectionContentDetails\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n \"default\": - \"youtube#channelSection\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"description\": - \"Localizations for different languages\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the channel section, such as its type, style and title.\",\n \"$ref\": - \"ChannelSectionSnippet\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel section.\"\n }\n },\n \"id\": \"ChannelSection\"\n - \ },\n \"ActivityContentDetailsLike\": {\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"Information about a resource that received a positive - (like) rating.\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the rated resource.\"\n }\n },\n \"type\": - \"object\"\n },\n \"MembershipsLevelSnippet\": {\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"properties\": {\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n },\n \"levelDetails\": {\n \"$ref\": \"LevelDetails\",\n - \ \"description\": \"Details about the pricing level.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"Channel\": {\n \"type\": - \"object\",\n \"id\": \"Channel\",\n \"properties\": {\n \"conversionPings\": - {\n \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\",\n \"$ref\": - \"ChannelConversionPings\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel.\"\n },\n - \ \"localizations\": {\n \"description\": \"Localizations for - different languages\",\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n }\n },\n - \ \"contentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#channel\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channel\\\".\",\n \"type\": \"string\"\n - \ },\n \"auditDetails\": {\n \"description\": \"The - auditionDetails object encapsulates channel data that is relevant for YouTube - Partners during the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n - \ },\n \"topicDetails\": {\n \"$ref\": \"ChannelTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\"\n },\n \"status\": - {\n \"$ref\": \"ChannelStatus\",\n \"description\": \"The - status object encapsulates information about the privacy status of the channel.\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n - \ \"description\": \"The contentDetails object encapsulates information - about the channel's content.\"\n },\n \"brandingSettings\": - {\n \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the channel, such as its title, description, - and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n }\n - \ },\n \"description\": \"A *channel* resource contains information - about a YouTube channel.\"\n },\n \"ThirdPartyLinkSnippet\": {\n \"description\": - \"Basic information about a third party account link, including its type and - type-specific information.\",\n \"id\": \"ThirdPartyLinkSnippet\",\n - \ \"properties\": {\n \"type\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"description\": \"Type - of the link named after the entities that are being linked.\"\n },\n - \ \"channelToStoreLink\": {\n \"description\": \"Information - specific to a link between a channel and a store on a merchandising platform.\",\n - \ \"$ref\": \"ChannelToStoreLinkDetails\"\n }\n },\n \"type\": - \"object\"\n },\n \"SubscriptionSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The subscription's details.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the subscription belongs to.\"\n },\n \"resourceId\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The subscription's title.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the subscription was - created.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the subscriber's channel.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - a subscription, including title, description and thumbnails of the subscribed - item.\",\n \"id\": \"SubscriptionSnippet\"\n },\n \"CaptionListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of captions that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Caption\"\n }\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#captionListResponse\"\n }\n - \ },\n \"id\": \"CaptionListResponse\"\n },\n \"ChannelStatistics\": - {\n \"properties\": {\n \"commentCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of comments for the channel.\",\n - \ \"format\": \"uint64\"\n },\n \"subscriberCount\": - {\n \"description\": \"The number of subscribers that the channel - has.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"hiddenSubscriberCount\": {\n \"description\": - \"Whether or not the number of subscribers is shown for this user.\",\n \"type\": - \"boolean\"\n },\n \"videoCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of videos uploaded to the channel.\"\n },\n \"viewCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of times the channel has been viewed.\",\n \"format\": \"uint64\"\n - \ }\n },\n \"id\": \"ChannelStatistics\",\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\",\n \"type\": \"object\"\n },\n \"MembershipsDurationAtLevel\": - {\n \"properties\": {\n \"memberTotalDurationMonths\": {\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n },\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member for the given level.\",\n \"type\": \"string\"\n },\n - \ \"level\": {\n \"description\": \"Pricing level ID.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"MembershipsDurationAtLevel\"\n },\n \"ActivitySnippet\": - {\n \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\",\n \"properties\": - {\n \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the video - was uploaded.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of activity that the resource - describes.\",\n \"type\": \"string\",\n \"enum\": [\n \"typeUnspecified\",\n - \ \"upload\",\n \"like\",\n \"favorite\",\n - \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n - \ \"recommendation\",\n \"bulletin\",\n \"social\",\n - \ \"channelItem\",\n \"promotedItem\"\n ]\n - \ },\n \"title\": {\n \"description\": \"The title of - the resource primarily associated with the activity.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the resource primarily associated - with the activity. @mutable youtube.activities.insert\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel responsible for this activity\"\n },\n \"groupId\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel associated with the activity.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"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.\"\n - \ }\n },\n \"id\": \"ActivitySnippet\",\n \"type\": \"object\"\n - \ },\n \"ChannelLocalization\": {\n \"id\": \"ChannelLocalization\",\n - \ \"type\": \"object\",\n \"description\": \"Channel localization - setting\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - title.\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for channel's description.\"\n - \ }\n }\n },\n \"VideoFileDetailsAudioStream\": {\n \"description\": - \"Information about an audio stream.\",\n \"type\": \"object\",\n \"properties\": - {\n \"codec\": {\n \"description\": \"The audio codec that - the stream uses.\",\n \"type\": \"string\"\n },\n \"channelCount\": - {\n \"type\": \"integer\",\n \"description\": \"The number - of audio channels that the stream contains.\",\n \"format\": \"uint32\"\n - \ },\n \"bitrateBps\": {\n \"description\": \"The audio - stream's bitrate, in bits per second.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoFileDetailsAudioStream\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"type\": \"object\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"Entity\": {\n \"type\": \"object\",\n - \ \"id\": \"Entity\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\"\n },\n \"url\": {\n \"type\": \"string\"\n - \ },\n \"typeId\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"VideoRecordingDetails\": {\n \"properties\": {\n - \ \"location\": {\n \"description\": \"The geolocation information - associated with the video.\",\n \"$ref\": \"GeoPoint\"\n },\n - \ \"recordingDate\": {\n \"description\": \"The date and time - when the video was recorded.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"locationDescription\": {\n \"description\": - \"The text description of the location where the video was recorded.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Recording information associated with the video.\",\n \"type\": \"object\",\n - \ \"id\": \"VideoRecordingDetails\"\n },\n \"VideoStatistics\": - {\n \"id\": \"VideoStatistics\",\n \"description\": \"Statistics - about the video, such as the number of times the video was viewed or liked.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"viewCount\": - {\n \"description\": \"The number of times the video has been viewed.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"dislikeCount\": {\n \"description\": \"The number of users - who have indicated that they disliked the video by giving it a negative rating.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"favoriteCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of users who currently - have the video marked as a favorite video.\"\n },\n \"likeCount\": - {\n \"description\": \"The number of users who have indicated that - they liked the video by giving it a positive rating.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"commentCount\": - {\n \"description\": \"The number of comments for the video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"PlaylistItemListResponse\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of playlist items that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n - \ }\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of - this resource.\",\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistItemListResponse\"\n },\n \"LiveChatMessageSnippet\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"Next ID: 33\",\n \"properties\": {\n \"superChatDetails\": - {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"membershipGiftingDetails\": {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n - \ \"description\": \"Details about the Membership Gifting event, this - is only set if the type is 'membershipGiftingEvent'.\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"memberMilestoneChatDetails\": {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"description\": \"Details about the Member Milestone Chat event, - this is only set if the type is 'memberMilestoneChatEvent'.\"\n },\n - \ \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"superStickerDetails\": {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n - \ \"description\": \"Details about the Super Sticker event, this is - only set if the type is 'superStickerEvent'.\"\n },\n \"fanFundingEventDetails\": - {\n \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The type of message, this will always - be present, it determines the contents of the message as well as which fields - will be present.\",\n \"enum\": [\n \"invalidType\",\n - \ \"textMessageEvent\",\n \"tombstone\",\n \"fanFundingEvent\",\n - \ \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ]\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"hasDisplayContent\": {\n \"description\": \"Whether - the message has display content that should be displayed to users.\",\n \"type\": - \"boolean\"\n },\n \"displayMessage\": {\n \"description\": - \"Contains a string that can be displayed to the user. If this field is not - present the message is silent, at the moment only messages of type TOMBSTONE - and CHAT_ENDED_EVENT are silent.\",\n \"type\": \"string\"\n },\n - \ \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n - \ \"description\": \"Details about the New Member Announcement event, - this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" - is the new term for \\\"sponsor\\\".\"\n },\n \"liveChatId\": - {\n \"type\": \"string\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the message was orignally - published.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"authorChannelId\": {\n \"description\": \"The - ID of the user that authored this message, this field is not always filled. - textMessageEvent - the user that wrote the message fanFundingEvent - the user - that funded the broadcast newSponsorEvent - the user that just became a sponsor - memberMilestoneChatEvent - the member that sent the message membershipGiftingEvent - - the user that made the purchase giftMembershipReceivedEvent - the user that - received the gift membership messageDeletedEvent - the moderator that took - the action messageRetractedEvent - the author that retracted their message - userBannedEvent - the moderator that took the action superChatEvent - the - user that made the purchase superStickerEvent - the user that made the purchase\",\n - \ \"type\": \"string\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ }\n }\n },\n \"RelatedEntity\": {\n \"id\": \"RelatedEntity\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"entity\": - {\n \"$ref\": \"Entity\"\n }\n }\n },\n \"ChannelBrandingSettings\": - {\n \"properties\": {\n \"hints\": {\n \"items\": {\n - \ \"$ref\": \"PropertyValue\"\n },\n \"type\": - \"array\",\n \"description\": \"Additional experimental branding - properties.\"\n },\n \"watch\": {\n \"$ref\": \"WatchSettings\",\n - \ \"description\": \"Branding properties for the watch page.\"\n },\n - \ \"channel\": {\n \"$ref\": \"ChannelSettings\",\n \"description\": - \"Branding properties for the channel view.\"\n },\n \"image\": - {\n \"$ref\": \"ImageSettings\",\n \"description\": \"Branding - properties for branding images.\"\n }\n },\n \"id\": \"ChannelBrandingSettings\",\n - \ \"type\": \"object\",\n \"description\": \"Branding properties - of a YouTube channel.\"\n },\n \"LiveBroadcastStatus\": {\n \"properties\": - {\n \"madeForKids\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the broadcast is made for kids or not, decided by YouTube instead - of the creator. This field is read only.\"\n },\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's privacy status. Note that the - broadcast represents exactly one YouTube video, so the privacy settings are - identical to those supported for videos. In addition, you can set this field - by modifying the broadcast resource or by setting the privacyStatus field - of the corresponding video resource.\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\",\n \"type\": - \"boolean\"\n },\n \"liveBroadcastPriority\": {\n \"type\": - \"string\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Low priority - broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ],\n \"description\": \"Priority of the live broadcast - event (internal state).\"\n },\n \"lifeCycleStatus\": {\n \"description\": - \"The broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"type\": \"string\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete - settings\",\n \"Visible only to partner, may need special UI treatment\",\n - \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n - \ \"The broadcast is finished.\",\n \"This broadcast - was removed by admin action\",\n \"Transition into TESTING has - been requested\",\n \"Transition into LIVE has been requested\"\n - \ ]\n },\n \"recordingStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"description\": - \"The broadcast's recording status.\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ]\n }\n },\n \"id\": \"LiveBroadcastStatus\",\n - \ \"description\": \"Live broadcast state.\",\n \"type\": \"object\"\n - \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"properties\": - {\n \"memberLevelName\": {\n \"description\": \"The name of - the Level at which the viever is a member. The Level names are defined by - the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the member to this Member Milestone Chat. This field is empty for - messages without a comment from the member.\"\n },\n \"memberMonth\": - {\n \"type\": \"integer\",\n \"description\": \"The total - amount of months (rounded up) the viewer has been a member that granted them - this Member Milestone Chat. This is the same number of months as is being - displayed to YouTube users.\",\n \"format\": \"uint32\"\n }\n - \ },\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"type\": - \"object\"\n }\n },\n \"fullyEncodeReservedExpansion\": true,\n \"resources\": - {\n \"channels\": {\n \"methods\": {\n \"list\": {\n \"id\": - \"youtube.channels.list\",\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/channels\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/channels\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"forUsername\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Return - the channel associated with a YouTube username.\"\n },\n \"categoryId\": - {\n \"description\": \"Return the channels within the specified - guide category ID.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"minimum\": \"0\",\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\"\n },\n \"mine\": {\n \"description\": - \"Return the ids of channels owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Return the channels with the specified - IDs.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"type\": - \"string\"\n },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the channels subscribed to the authenticated user\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"managedByMe\": - {\n \"description\": \"Return the channels managed by the authenticated - user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ]\n },\n \"update\": {\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"response\": {\n \"$ref\": \"Channel\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"id\": \"youtube.channels.update\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"path\": \"youtube/v3/channels\",\n \"request\": - {\n \"$ref\": \"Channel\"\n }\n }\n }\n },\n - \ \"tests\": {\n \"methods\": {\n \"insert\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"description\": \"POST method.\",\n \"id\": \"youtube.tests.insert\",\n - \ \"flatPath\": \"youtube/v3/tests\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"TestItem\"\n },\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true\n },\n - \ \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/tests\",\n \"request\": - {\n \"$ref\": \"TestItem\"\n }\n }\n }\n },\n - \ \"watermarks\": {\n \"methods\": {\n \"unset\": {\n \"flatPath\": - \"youtube/v3/watermarks/unset\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/watermarks/unset\",\n \"description\": - \"Allows removal of channel watermark.\",\n \"id\": \"youtube.watermarks.unset\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n }\n },\n - \ \"set\": {\n \"httpMethod\": \"POST\",\n \"description\": - \"Allows upload of watermark image and setting it for a channel.\",\n \"id\": - \"youtube.watermarks.set\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"channelId\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"path\": \"youtube/v3/watermarks/set\",\n \"mediaUpload\": - {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"10485760\",\n \"protocols\": {\n \"simple\": {\n - \ \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ }\n }\n },\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"supportsMediaUpload\": true,\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"flatPath\": \"youtube/v3/watermarks/set\"\n }\n }\n - \ },\n \"liveChatBans\": {\n \"methods\": {\n \"insert\": - {\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveChatBan\"\n }\n },\n \"delete\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Deletes a chat ban.\",\n - \ \"id\": \"youtube.liveChatBans.delete\",\n \"path\": \"youtube/v3/liveChat/bans\"\n - \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n - \ \"insert\": {\n \"response\": {\n \"$ref\": \"AbuseReport\"\n - \ },\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"path\": - \"youtube/v3/abuseReports\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.abuseReports.insert\",\n \"flatPath\": - \"youtube/v3/abuseReports\"\n }\n }\n },\n \"channelBanners\": - {\n \"methods\": {\n \"insert\": {\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [],\n \"mediaUpload\": {\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\",\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/channelBanners/insert\"\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"Unused, channel_id - is currently derived from the security context of the requestor.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/channelBanners/insert\",\n \"response\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"id\": - \"youtube.channelBanners.insert\"\n }\n }\n },\n \"comments\": - {\n \"methods\": {\n \"update\": {\n \"id\": \"youtube.comments.update\",\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Updates an existing resource.\",\n \"path\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n - \ }\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.comments.delete\",\n \"path\": - \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"flatPath\": \"youtube/v3/comments\"\n },\n \"setModerationStatus\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ],\n \"path\": - \"youtube/v3/comments/setModerationStatus\",\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"Modifies the moderation status - of the comments with the given IDs\"\n },\n \"moderationStatus\": - {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"type\": \"string\",\n \"required\": true,\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\",\n \"description\": \"Specifies the requested moderation - status. Note, comments can be in statuses, which are not available through - this call. For example, this call does not allow to mark a comment as 'likely - spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\"\n },\n \"banAuthor\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"default\": \"false\",\n \"description\": \"If - set to true the author of the comment gets added to the ban list. This means - all future comments of the author will autmomatically be rejected. Only valid - in combination with STATUS_REJECTED.\"\n }\n },\n \"description\": - \"Sets the moderation status of one or more comments.\"\n },\n \"insert\": - {\n \"flatPath\": \"youtube/v3/comments\",\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.comments.insert\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"path\": \"youtube/v3/comments\"\n },\n \"markAsSpam\": - {\n \"httpMethod\": \"POST\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"Flags the comments with the given IDs as - spam in the caller's opinion.\"\n }\n },\n \"path\": - \"youtube/v3/comments/markAsSpam\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"description\": \"Expresses the caller's opinion that one or more - comments should be flagged as spam.\",\n \"id\": \"youtube.comments.markAsSpam\",\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"list\": {\n \"parameters\": {\n \"textFormat\": - {\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"default\": \"html\",\n \"description\": \"The - requested text format for the returned comments.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"maxResults\": {\n \"default\": - \"20\",\n \"maximum\": \"100\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"minimum\": \"1\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"Returns the comments with the given IDs for One Platform.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more comment resource - properties that the API response will include.\"\n },\n \"parentId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns replies to the specified comment. - Note, currently YouTube features only one level of replies (ie replies to - top level comments). However replies to replies may be supported in the future.\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"path\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.comments.list\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"httpMethod\": \"GET\"\n }\n }\n },\n - \ \"liveStreams\": {\n \"methods\": {\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"description\": \"Deletes an existing stream for the authenticated - user.\",\n \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"id\": - \"youtube.liveStreams.delete\"\n },\n \"insert\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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, content_details, and status.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"path\": - \"youtube/v3/liveStreams\",\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"list\": {\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"maximum\": \"50\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"description\": - \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"pageToken\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.liveStreams.list\",\n \"response\": {\n - \ \"$ref\": \"LiveStreamListResponse\"\n },\n \"httpMethod\": - \"GET\"\n },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"response\": {\n - \ \"$ref\": \"LiveStream\"\n },\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": - \"youtube.liveStreams.update\",\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing stream for the authenticated user.\"\n }\n }\n - \ },\n \"videos\": {\n \"methods\": {\n \"rate\": {\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.videos.rate\",\n \"description\": - \"Adds a like or dislike rating to a video or removes a rating from a video.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"rating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/videos/rate\",\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ],\n \"flatPath\": \"youtube/v3/videos/rate\"\n - \ },\n \"reportAbuse\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"description\": \"Report abuse for a video.\",\n - \ \"parameterOrder\": [],\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/videos/reportAbuse\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.reportAbuse\",\n \"request\": - {\n \"$ref\": \"VideoAbuseReport\"\n },\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\"\n },\n \"list\": {\n \"flatPath\": - \"youtube/v3/videos\",\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"maxResults\": {\n \"description\": \"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.\",\n \"maximum\": \"50\",\n - \ \"minimum\": \"1\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"location\": \"query\"\n },\n \"chart\": - {\n \"enum\": [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"location\": - \"query\",\n \"description\": \"Return the videos that are in - the specified chart.\",\n \"type\": \"string\"\n },\n - \ \"myRating\": {\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Return - videos liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n },\n \"locale\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Return - videos with the given ids.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"videoCategoryId\": {\n \"description\": \"Use chart - that is specific to the specified video category\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"0\"\n },\n \"hl\": {\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n },\n \"maxWidth\": - {\n \"description\": \"Return the player with maximum height - specified in\",\n \"maximum\": \"8192\",\n \"format\": - \"int32\",\n \"minimum\": \"72\",\n \"type\": \"integer\",\n - \ \"location\": \"query\"\n },\n \"maxHeight\": - {\n \"type\": \"integer\",\n \"minimum\": \"72\",\n - \ \"maximum\": \"8192\",\n \"format\": \"int32\",\n - \ \"location\": \"query\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Use a chart that is specific to the specified - region\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/videos\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.videos.list\",\n \"response\": {\n \"$ref\": - \"VideoListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/videos\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.videos.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"update\": {\n \"description\": \"Updates an - existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Video\"\n - \ },\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.update\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/videos\"\n - \ },\n \"insert\": {\n \"supportsMediaUpload\": true,\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n - \ },\n \"stabilize\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Should stabilize be applied to the upload.\"\n },\n \"autoLevels\": - {\n \"type\": \"boolean\",\n \"description\": \"Should - auto-levels be applied to the upload.\",\n \"location\": \"query\"\n - \ },\n \"notifySubscribers\": {\n \"default\": - \"true\",\n \"type\": \"boolean\",\n \"description\": - \"Notify the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.videos.insert\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/videos\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": true\n - \ }\n },\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"274877906944\"\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/videos\",\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"getRating\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"id\": \"youtube.videos.getRating\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/videos/getRating\",\n - \ \"description\": \"Retrieves the ratings that the authorized user - gave to a list of specified videos.\"\n }\n }\n },\n \"i18nLanguages\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"I18nLanguageListResponse\"\n },\n \"path\": - \"youtube/v3/i18nLanguages\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.i18nLanguages.list\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"default\": \"en_US\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the i18nLanguage resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/i18nLanguages\"\n }\n }\n - \ },\n \"commentThreads\": {\n \"methods\": {\n \"list\": - {\n \"parameters\": {\n \"textFormat\": {\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"type\": \"string\",\n - \ \"default\": \"html\",\n \"description\": \"The - requested text format for the returned comments.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ]\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"videoId\": - {\n \"description\": \"Returns the comment threads of the specified - video.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"allThreadsRelatedToChannelId\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\"\n },\n \"order\": - {\n \"default\": \"time\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"orderUnspecified\",\n \"time\",\n - \ \"relevance\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"default\": - \"20\",\n \"minimum\": \"1\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"100\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n },\n \"moderationStatus\": - {\n \"location\": \"query\",\n \"default\": \"published\",\n - \ \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"description\": \"Limits the returned comment threads to those - with the specified moderation status. Not compatible with the 'id' filter. - Valid values: published, heldForReview, likelySpam.\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Returns the comment threads with - the given IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads for all the channel - comments (ie does not include comments left on videos).\"\n },\n - \ \"searchTerms\": {\n \"description\": \"Limits the - returned comment threads to those matching the specified key words. Not compatible - with the 'id' filter.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.commentThreads.list\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"description\": - \"Inserts a new resource into this collection.\"\n }\n }\n },\n - \ \"superChatEvents\": {\n \"methods\": {\n \"list\": {\n \"parameters\": - {\n \"hl\": {\n \"type\": \"string\",\n \"description\": - \"Return rendered funding amounts in specified language.\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"part\": {\n \"description\": \"The *part* parameter - specifies the superChatEvent resource parts that the API response will include. - This parameter is currently not supported.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"minimum\": \"1\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"maximum\": \"50\"\n }\n },\n - \ \"id\": \"youtube.superChatEvents.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/superChatEvents\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/superChatEvents\",\n \"response\": {\n \"$ref\": - \"SuperChatEventListResponse\"\n }\n }\n }\n },\n - \ \"activities\": {\n \"methods\": {\n \"list\": {\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"publishedBefore\": {\n \"format\": - \"google-datetime\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"publishedAfter\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"format\": - \"google-datetime\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"default\": \"5\"\n },\n - \ \"regionCode\": {\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"home\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/activities\",\n \"id\": \"youtube.activities.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/activities\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ }\n }\n }\n },\n \"playlists\": {\n \"methods\": - {\n \"delete\": {\n \"id\": \"youtube.playlists.delete\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/playlists\",\n \"description\": \"Deletes a resource.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/playlists\"\n - \ },\n \"insert\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlists.insert\",\n \"path\": - \"youtube/v3/playlists\",\n \"description\": \"Inserts a new resource - into this collection.\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n }\n },\n \"update\": {\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Updates - an existing resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlists.update\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true\n }\n - \ },\n \"path\": \"youtube/v3/playlists\"\n },\n \"list\": - {\n \"path\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"description\": \"Return the - playlists owned by the specified channel ID.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the playlists owned by the authenticated user.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Return the playlists with the - given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"description\": \"Return content in specified language\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"id\": \"youtube.playlists.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"PlaylistListResponse\"\n },\n \"flatPath\": - \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"description\": - \"Deletes a chat message.\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.liveChatMessages.delete\"\n },\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": - true\n }\n },\n \"request\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"id\": \"youtube.liveChatMessages.insert\"\n - \ },\n \"list\": {\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/messages\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the liveChatComment resource parts that the - API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"format\": \"uint32\",\n \"default\": - \"500\",\n \"maximum\": \"2000\",\n \"minimum\": - \"200\",\n \"location\": \"query\",\n \"type\": - \"integer\"\n },\n \"profileImageSize\": {\n \"maximum\": - \"720\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"description\": - \"Specifies the size of the profile image that should be returned for each - user.\",\n \"minimum\": \"16\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The id of the live chat for which comments - should be returned.\",\n \"required\": true\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Specifies the localization language - in which the system messages should be returned.\"\n }\n },\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the membershipsLevel resource parts that the API - response will include. Supported values are id and snippet.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"id\": \"youtube.membershipsLevels.list\",\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"update\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.update\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the thirdPartyLink resource parts that the API request - and response will include. Supported values are linkingToken, status, and - snippet.\",\n \"repeated\": true\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n }\n },\n \"description\": - \"Updates an existing resource.\"\n },\n \"insert\": {\n \"parameters\": - {\n \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\",\n \"repeated\": true\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"id\": - \"youtube.thirdPartyLinks.delete\",\n \"description\": \"Deletes - a resource.\",\n \"parameters\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"location\": \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"required\": - true,\n \"description\": \"Type of the link to be deleted.\",\n - \ \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Do not use. Required for compatibility.\"\n - \ },\n \"linkingToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/thirdPartyLinks\"\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Get a third party link of the given type.\",\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ]\n },\n - \ \"linkingToken\": {\n \"description\": \"Get a third - party link with the given linking token.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - response will include. Supported values are linkingToken, status, and snippet.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.thirdPartyLinks.list\"\n }\n }\n },\n \"liveBroadcasts\": - {\n \"methods\": {\n \"insertCuepoint\": {\n \"path\": - \"youtube/v3/liveBroadcasts/cuepoint\",\n \"response\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"parameterOrder\": [],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"description\": \"Insert cuepoints in a broadcast\",\n \"request\": - {\n \"$ref\": \"Cuepoint\"\n }\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to delete.\"\n }\n },\n - \ \"description\": \"Delete a given broadcast.\",\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"transition\": {\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.transition\",\n \"description\": - \"Transition a broadcast to a given status.\",\n \"parameters\": - {\n \"broadcastStatus\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - status to which the broadcast is going to transition.\",\n \"location\": - \"query\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Start testing the broadcast. YouTube transmits video to - the broadcast's monitor stream. Note that you can only transition a broadcast - to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ]\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"required\": - true,\n \"description\": \"Broadcast to transition.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"update\": {\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Updates an existing broadcast for - the authenticated user.\",\n \"id\": \"youtube.liveBroadcasts.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts\"\n },\n - \ \"bind\": {\n \"parameters\": {\n \"part\": {\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"required\": true,\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Broadcast to bind to the stream\",\n - \ \"required\": true\n },\n \"streamId\": - {\n \"description\": \"Stream to bind, if not set unbind the - current one.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"description\": \"Bind a broadcast to a stream.\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"id\": - \"youtube.liveBroadcasts.bind\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\"\n - \ },\n \"insert\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Inserts a new stream for the authenticated - user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n }\n },\n \"list\": {\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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, status - and statistics.\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"broadcastStatus\": {\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"location\": \"query\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"broadcastType\": {\n \"default\": - \"event\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"description\": \"Return only broadcasts - with the selected type.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ]\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"type\": \"integer\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"subscriptions\": {\n \"methods\": {\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"id\": \"youtube.subscriptions.delete\"\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.subscriptions.list\",\n \"parameters\": - {\n \"forChannelId\": {\n \"description\": \"Return - the subscriptions to the subset of these channels that the authenticated user - is subscribed to.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the subscribers of the - given channel owner.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"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.\"\n },\n \"order\": - {\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The order of the returned subscriptions\",\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"location\": \"query\",\n \"default\": \"relevance\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions of the given channel - owner.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"location\": \"query\"\n - \ },\n \"mine\": {\n \"description\": \"Flag - for returning the subscriptions of the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Return the subscriptions with the given - IDs for Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"myRecentSubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"path\": \"youtube/v3/subscriptions\",\n \"response\": - {\n \"$ref\": \"SubscriptionListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n },\n \"insert\": - {\n \"path\": \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\"\n }\n },\n \"response\": {\n - \ \"$ref\": \"Subscription\"\n },\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/i18nRegions\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"default\": \"en_US\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\"\n }\n - \ },\n \"id\": \"youtube.i18nRegions.list\",\n \"flatPath\": - \"youtube/v3/i18nRegions\"\n }\n }\n },\n \"members\": {\n - \ \"methods\": {\n \"list\": {\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"id\": \"youtube.members.list\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"pageToken\": {\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n },\n \"mode\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - only members that joined after the first call with this mode was made.\",\n - \ \"Return all current members, from newest to oldest.\"\n ],\n - \ \"description\": \"Parameter that specifies which channel members - to return.\",\n \"default\": \"all_current\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ]\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"default\": \"5\",\n \"maximum\": - \"1000\",\n \"format\": \"uint32\"\n },\n \"hasAccessToLevel\": - {\n \"location\": \"query\",\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\",\n - \ \"type\": \"string\"\n },\n \"filterByMemberChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/members\",\n - \ \"description\": \"Retrieves a list of members that match the request - criteria for a channel.\",\n \"path\": \"youtube/v3/members\"\n }\n - \ }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of search resources\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.search.list\",\n \"path\": - \"youtube/v3/search\",\n \"flatPath\": \"youtube/v3/search\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"publishedAfter\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on resources published after this - date.\",\n \"format\": \"google-datetime\"\n },\n - \ \"videoDuration\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Filter on the duration of the videos.\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"relevanceLanguage\": {\n \"location\": - \"query\",\n \"description\": \"Return results relevant to this - language.\",\n \"type\": \"string\"\n },\n \"videoLicense\": - {\n \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"description\": \"Filter on the license of the videos.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"videoType\": {\n \"description\": - \"Filter on videos of a specific type.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"location\": \"query\",\n \"enum\": - [\n \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ],\n \"type\": \"string\"\n - \ },\n \"forContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"Search owned by a content owner.\",\n - \ \"type\": \"boolean\"\n },\n \"videoEmbeddable\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos, embeddable or not.\",\n \"Only retrieve embeddable - videos.\"\n ],\n \"description\": \"Filter on embeddable - videos.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ]\n },\n - \ \"forMine\": {\n \"type\": \"boolean\",\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"location\": - \"query\"\n },\n \"relatedToVideoId\": {\n \"description\": - \"Search related to a resource.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"q\": {\n - \ \"description\": \"Textual search terms to match.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoDimension\": - {\n \"description\": \"Filter on 3d videos.\",\n \"enum\": - [\n \"any\",\n \"2d\",\n \"3d\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Include - both 3D and non-3D videos in returned results. This is the default value.\",\n - \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict - search results to only include 3D videos.\"\n ]\n },\n - \ \"type\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Restrict results to a particular set - of resource types from One Platform.\",\n \"type\": \"string\"\n - \ },\n \"videoDefinition\": {\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"location\": \"query\",\n - \ \"description\": \"Filter on the definition of the videos.\",\n - \ \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ],\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"order\": - {\n \"location\": \"query\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"default\": \"relevance\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"description\": - \"Sort order of the results.\"\n },\n \"eventType\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n - \ \"description\": \"Filter on the livestream status of the videos.\"\n - \ },\n \"topicId\": {\n \"description\": - \"Restrict results to a particular topic.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"videoCategoryId\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on videos in a specific category.\",\n \"type\": \"string\"\n - \ },\n \"forDeveloper\": {\n \"location\": - \"query\",\n \"description\": \"Restrict the search to only retrieve - videos uploaded using the project id of the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on resources belonging to this channelId.\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"location\": \"query\",\n \"minimum\": \"0\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"default\": \"5\"\n },\n - \ \"videoSyndicated\": {\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos, syndicated or not.\",\n \"Only retrieve syndicated - videos.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"videoSyndicatedUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"description\": - \"Filter on syndicated videos.\"\n },\n \"part\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"regionCode\": - {\n \"description\": \"Display the content as seen by viewers - in this country.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"publishedBefore\": {\n \"format\": - \"google-datetime\",\n \"description\": \"Filter on resources - published before this date.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"safeSearch\": {\n \"description\": - \"Indicates whether the search results should include restricted content as - well as standard content.\",\n \"location\": \"query\",\n \"enum\": - [\n \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"default\": \"moderate\",\n \"type\": - \"string\"\n },\n \"channelType\": {\n \"enum\": - [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Add a filter on the channel search.\",\n - \ \"location\": \"query\"\n },\n \"locationRadius\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on distance from the location (specified above).\",\n \"type\": - \"string\"\n },\n \"videoCaption\": {\n \"type\": - \"string\",\n \"description\": \"Filter on the presence of captions - on the videos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter results based on caption availability.\",\n - \ \"Only include videos that have captions.\",\n \"Only - include videos that do not have captions.\"\n ],\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"location\": \"query\"\n },\n \"location\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on location of the video\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ }\n }\n }\n },\n \"youtube\": {\n \"resources\": - {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\"\n }\n },\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/commentThreads\",\n \"id\": - \"youtube.youtube.v3.updateCommentThreads\",\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameterOrder\": [],\n \"response\": {\n \"$ref\": - \"CommentThread\"\n }\n }\n }\n }\n - \ }\n },\n \"channelSections\": {\n \"methods\": {\n \"insert\": - {\n \"id\": \"youtube.channelSections.insert\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"path\": - \"youtube/v3/channelSections\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n }\n },\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a resource.\",\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"path\": - \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"update\": {\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\"\n - \ }\n },\n \"path\": \"youtube/v3/channelSections\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.channelSections.update\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/channelSections\",\n - \ \"id\": \"youtube.channelSections.list\",\n \"response\": - {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"mine\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the ChannelSections - owned by the authenticated user.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"Return - the ChannelSections with the given IDs for Stubby or Apiary.\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the ChannelSections owned by the specified - channel ID.\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return content in specified language\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n }\n }\n },\n \"playlistItems\": - {\n \"methods\": {\n \"delete\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.playlistItems.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"httpMethod\": \"DELETE\"\n },\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlistItems.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"parameters\": {\n \"playlistId\": {\n - \ \"location\": \"query\",\n \"description\": \"Return - the playlist items within the given playlist.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"repeated\": - true\n },\n \"videoId\": {\n \"description\": - \"Return the playlist items associated with the given video ID.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n }\n },\n - \ \"update\": {\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"path\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"PUT\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"description\": - \"Updates an existing resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.playlistItems.update\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n }\n },\n \"insert\": - {\n \"path\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\"\n }\n },\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.insert\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"thumbnails\": - {\n \"methods\": {\n \"set\": {\n \"description\": \"As - this is not an insert in a strict sense (it supports uploading/setting of - a thumbnail for multiple videos, which doesn't result in creation of a single - resource), I use a custom verb here.\",\n \"id\": \"youtube.thumbnails.set\",\n - \ \"supportsMediaUpload\": true,\n \"response\": {\n \"$ref\": - \"ThumbnailSetResponse\"\n },\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"2097152\",\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/thumbnails/set\"\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ }\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/thumbnails/set\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"videoId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\"\n - \ }\n },\n \"parameterOrder\": [\n \"videoId\"\n - \ ]\n }\n }\n },\n \"captions\": {\n \"methods\": - {\n \"insert\": {\n \"mediaUpload\": {\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/captions\"\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"104857600\",\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"sync\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the caption - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.captions.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/captions\",\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"supportsMediaUpload\": true\n },\n \"delete\": {\n - \ \"path\": \"youtube/v3/captions\",\n \"description\": \"Deletes - a resource.\",\n \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.captions.delete\"\n - \ },\n \"update\": {\n \"id\": \"youtube.captions.update\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ }\n },\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"maxSize\": \"104857600\"\n },\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"sync\": - {\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\"\n },\n \"part\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/captions\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"supportsMediaUpload\": - true,\n \"description\": \"Updates an existing resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"download\": {\n \"useMediaDownloadService\": - true,\n \"path\": \"youtube/v3/captions/{id}\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.captions.download\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"tlang\": {\n \"type\": - \"string\",\n \"description\": \"tlang is the language code; - machine translate the captions into this language.\",\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\",\n \"location\": - \"query\"\n },\n \"tfmt\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Convert the captions into this format. Supported options are sbv, srt, and - vtt.\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"id\": {\n \"location\": \"path\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The ID of the caption track to download, required for One Platform.\"\n - \ }\n },\n \"supportsMediaDownload\": true,\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Downloads a caption track.\",\n \"flatPath\": \"youtube/v3/captions/{id}\"\n - \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"id\": \"youtube.captions.list\",\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ],\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/captions\",\n \"parameters\": {\n - \ \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the captions with the given IDs for Stubby or Apiary.\"\n },\n - \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the captions for the specified video.\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"response\": - {\n \"$ref\": \"CaptionListResponse\"\n }\n }\n - \ }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": {\n - \ \"list\": {\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the videoCategory resource parts that the API response - will include. Supported values are id and snippet.\"\n },\n \"hl\": - {\n \"default\": \"en-US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"response\": - {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/videoCategories\",\n \"id\": - \"youtube.videoCategories.list\",\n \"parameters\": {\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"en-US\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the videoCategory resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"required\": true\n },\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the video categories with the given IDs for Stubby or Apiary.\",\n - \ \"type\": \"string\",\n \"repeated\": true\n }\n - \ }\n }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n }\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"description\": - \"Deletes a chat moderator.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.liveChatModerators.delete\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n }\n },\n \"list\": {\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the liveChatModerator resource parts that - the API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"liveChatId\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - id of the live chat for which moderators should be returned.\"\n },\n - \ \"maxResults\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"default\": \"5\",\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"id\": - \"youtube.liveChatModerators.list\"\n }\n }\n }\n },\n \"documentationLink\": - \"https://developers.google.com/youtube/\",\n \"auth\": {\n \"oauth2\": - {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n }\n - \ }\n }\n },\n \"batchPath\": \"batch\",\n \"basePath\": \"\",\n - \ \"name\": \"youtube\",\n \"id\": \"youtube:v3\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"revision\": \"20230220\",\n \"discoveryVersion\": \"v1\",\n \"rootUrl\": - \"https://youtube.googleapis.com/\",\n \"protocol\": \"rest\",\n \"ownerDomain\": - \"google.com\",\n \"title\": \"YouTube Data API v3\",\n \"parameters\": - {\n \"uploadType\": {\n \"description\": \"Legacy upload protocol - for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"$.xgafv\": {\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"v1 error format\",\n - \ \"v2 error format\"\n ],\n \"description\": \"V1 error format.\",\n - \ \"enum\": [\n \"1\",\n \"2\"\n ],\n \"type\": - \"string\"\n },\n \"oauth_token\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"OAuth 2.0 token for - the current user.\"\n },\n \"access_token\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"OAuth access token.\"\n - \ },\n \"upload_protocol\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", - \\\"multipart\\\").\"\n },\n \"callback\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"JSONP\"\n },\n - \ \"alt\": {\n \"enum\": [\n \"json\",\n \"media\",\n - \ \"proto\"\n ],\n \"default\": \"json\",\n \"description\": - \"Data format for response.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Responses with Content-Type - of application/json\",\n \"Media download with context-dependent Content-Type\",\n - \ \"Responses with Content-Type of application/x-protobuf\"\n ]\n - \ },\n \"fields\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Selector specifying which fields to include - in a partial response.\"\n },\n \"quotaUser\": {\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"prettyPrint\": - {\n \"type\": \"boolean\",\n \"description\": \"Returns response - with indentations and line breaks.\",\n \"location\": \"query\",\n \"default\": - \"true\"\n },\n \"key\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n }\n },\n \"servicePath\": \"\",\n - \ \"kind\": \"discovery#restDescription\",\n \"description\": \"The YouTube - Data API v3 is an API that provides access to YouTube data, such as videos, - playlists, and channels.\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:31 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCc9pY6nxrdpYntXzQwOIqOw&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"ulyUsIuxD_eL0BoRAmdGWtxq5DA\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"-yWokF64ou8RLJeCDym73BKl7uA\",\n \"id\": \"UCc9pY6nxrdpYntXzQwOIqOw\",\n - \ \"snippet\": {\n \"title\": \"Video Star\",\n \"description\": - \"\u0414\u043E\u0440\u043E\u0433\u0438\u0435 \u0437\u0440\u0438\u0442\u0435\u043B\u0438, - \u043B\u044E\u0431\u0438\u043C\u044B\u0435 \u043F\u043E\u0434\u043F\u0438\u0441\u0447\u0438\u043A\u0438 - \u0438 \u0443\u0432\u0430\u0436\u0430\u0435\u043C\u044B\u0435 \u043F\u0440\u0430\u0432\u043E\u043E\u0431\u043B\u0430\u0434\u0430\u0442\u0435\u043B\u0438!\\n\u042D\u0442\u043E\u0442 - \u043A\u0430\u043D\u0430\u043B \u043F\u0440\u0438\u043D\u0430\u0434\u043B\u0435\u0436\u0438\u0442 - \u043A\u043E\u043C\u043F\u0430\u043D\u0438\u0438 \U0001D412\U0001D42D\U0001D41A\U0001D42B - \U0001D40C\U0001D41E\U0001D41D\U0001D422\U0001D41A \u0438 \u0432\u0445\u043E\u0434\u0438\u0442 - \u0432 \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u043E\u043D\u043D\u0443\u044E - \u0441\u0435\u0442\u044C \u043A\u0430\u043D\u0430\u043B\u043E\u0432 \u0441 - \u0444\u0438\u043B\u044C\u043C\u0430\u043C\u0438 \u0438 \u0441\u0435\u0440\u0438\u0430\u043B\u0430\u043C\u0438. - \u041F\u043E\u0434\u043F\u0438\u0441\u044B\u0432\u0430\u0439\u0442\u0435\u0441\u044C - \u043D\u0430 \u043A\u0430\u043D\u0430\u043B \u0438 \u0441\u043C\u043E\u0442\u0440\u0438\u0442\u0435 - \u043F\u0440\u043E\u0435\u043A\u0442\u044B \u0441\u043E \u0432\u0441\u0435\u0433\u043E - \u043C\u0438\u0440\u0430!\\t\\n\\n\u0412\u0430\u0448\u0430 #StarMedia\\n-----\\nDear - viewers, subscribers and copyright owners,\\n\\nThis channel is owned by \U0001D412\U0001D42D\U0001D41A\U0001D42B - \U0001D40C\U0001D41E\U0001D41D\U0001D422\U0001D41A and is included in a licensed - network of YouTube channels with movies and TV series. Subscribe to the channel - and watch foreign and domestic movies and TV series! \\n\\nYour friends at - #StarMedia\\n\\n\u0414\u043B\u044F \u0432\u0430\u0448\u0435\u0433\u043E \u0443\u0434\u043E\u0431\u0441\u0442\u0432\u0430 - \u043C\u044B \u0441\u043E\u0431\u0440\u0430\u043B\u0438 \u043D\u0430\u0448\u0438 - \u0444\u0438\u043B\u044C\u043C\u044B \u0438 \u0441\u0435\u0440\u0438\u0430\u043B\u044B - \u0432 \u043E\u043D\u043B\u0430\u0439\u043D-\u043A\u0438\u043D\u043E\u0442\u0435\u0430\u0442\u0440\u0435 - LAVA. \u0421\u043E\u0442\u043D\u0438 \u043C\u0435\u043B\u043E\u0434\u0440\u0430\u043C, - \u0434\u0435\u0442\u0435\u043A\u0442\u0438\u0432\u043E\u0432, \u0432\u043E\u0435\u043D\u043D\u044B\u0445 - \u0444\u0438\u043B\u044C\u043C\u043E\u0432 \u0438 \u0434\u0440\u0430\u043C - \u0432 \u0432\u0435\u043B\u0438\u043A\u043E\u043B\u0435\u043F\u043D\u043E\u043C - \u043A\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0434\u043B\u044F \u0432\u0430\u0441!\\n\u041D\u0430\u0441\u043B\u0430\u0436\u0434\u0430\u0439\u0442\u0435\u0441\u044C - \u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440\u043E\u043C \u0441 \u043B\u044E\u0431\u043E\u0433\u043E - \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0430 \u0431\u0435\u0441\u043F\u043B\u0430\u0442\u043D\u043E.\\n\u041F\u0435\u0440\u0435\u0445\u043E\u0434\u0438\u0442\u0435 - \u043D\u0430 LAVA www.lavaonline.tv\\t\\t\\t\\t\\t\\t\\t\\n\",\n \"customUrl\": - \"@playstudiochannel\",\n \"publishedAt\": \"2013-11-05T19:35:08Z\",\n - \ \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/ytc/AL5GRJX7fhJDGsTXUza6vSH4N7oJTRC4uNuwrPtzI0eNhg=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJX7fhJDGsTXUza6vSH4N7oJTRC4uNuwrPtzI0eNhg=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJX7fhJDGsTXUza6vSH4N7oJTRC4uNuwrPtzI0eNhg=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Video Star\",\n \"description\": - \"\u0414\u043E\u0440\u043E\u0433\u0438\u0435 \u0437\u0440\u0438\u0442\u0435\u043B\u0438, - \u043B\u044E\u0431\u0438\u043C\u044B\u0435 \u043F\u043E\u0434\u043F\u0438\u0441\u0447\u0438\u043A\u0438 - \u0438 \u0443\u0432\u0430\u0436\u0430\u0435\u043C\u044B\u0435 \u043F\u0440\u0430\u0432\u043E\u043E\u0431\u043B\u0430\u0434\u0430\u0442\u0435\u043B\u0438!\\n\u042D\u0442\u043E\u0442 - \u043A\u0430\u043D\u0430\u043B \u043F\u0440\u0438\u043D\u0430\u0434\u043B\u0435\u0436\u0438\u0442 - \u043A\u043E\u043C\u043F\u0430\u043D\u0438\u0438 \U0001D412\U0001D42D\U0001D41A\U0001D42B - \U0001D40C\U0001D41E\U0001D41D\U0001D422\U0001D41A \u0438 \u0432\u0445\u043E\u0434\u0438\u0442 - \u0432 \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u043E\u043D\u043D\u0443\u044E - \u0441\u0435\u0442\u044C \u043A\u0430\u043D\u0430\u043B\u043E\u0432 \u0441 - \u0444\u0438\u043B\u044C\u043C\u0430\u043C\u0438 \u0438 \u0441\u0435\u0440\u0438\u0430\u043B\u0430\u043C\u0438. - \u041F\u043E\u0434\u043F\u0438\u0441\u044B\u0432\u0430\u0439\u0442\u0435\u0441\u044C - \u043D\u0430 \u043A\u0430\u043D\u0430\u043B \u0438 \u0441\u043C\u043E\u0442\u0440\u0438\u0442\u0435 - \u043F\u0440\u043E\u0435\u043A\u0442\u044B \u0441\u043E \u0432\u0441\u0435\u0433\u043E - \u043C\u0438\u0440\u0430!\\t\\n\\n\u0412\u0430\u0448\u0430 #StarMedia\\n-----\\nDear - viewers, subscribers and copyright owners,\\n\\nThis channel is owned by \U0001D412\U0001D42D\U0001D41A\U0001D42B - \U0001D40C\U0001D41E\U0001D41D\U0001D422\U0001D41A and is included in a licensed - network of YouTube channels with movies and TV series. Subscribe to the channel - and watch foreign and domestic movies and TV series! \\n\\nYour friends at - #StarMedia\\n\\n\u0414\u043B\u044F \u0432\u0430\u0448\u0435\u0433\u043E \u0443\u0434\u043E\u0431\u0441\u0442\u0432\u0430 - \u043C\u044B \u0441\u043E\u0431\u0440\u0430\u043B\u0438 \u043D\u0430\u0448\u0438 - \u0444\u0438\u043B\u044C\u043C\u044B \u0438 \u0441\u0435\u0440\u0438\u0430\u043B\u044B - \u0432 \u043E\u043D\u043B\u0430\u0439\u043D-\u043A\u0438\u043D\u043E\u0442\u0435\u0430\u0442\u0440\u0435 - LAVA. \u0421\u043E\u0442\u043D\u0438 \u043C\u0435\u043B\u043E\u0434\u0440\u0430\u043C, - \u0434\u0435\u0442\u0435\u043A\u0442\u0438\u0432\u043E\u0432, \u0432\u043E\u0435\u043D\u043D\u044B\u0445 - \u0444\u0438\u043B\u044C\u043C\u043E\u0432 \u0438 \u0434\u0440\u0430\u043C - \u0432 \u0432\u0435\u043B\u0438\u043A\u043E\u043B\u0435\u043F\u043D\u043E\u043C - \u043A\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0434\u043B\u044F \u0432\u0430\u0441!\\n\u041D\u0430\u0441\u043B\u0430\u0436\u0434\u0430\u0439\u0442\u0435\u0441\u044C - \u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440\u043E\u043C \u0441 \u043B\u044E\u0431\u043E\u0433\u043E - \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0430 \u0431\u0435\u0441\u043F\u043B\u0430\u0442\u043D\u043E.\\n\u041F\u0435\u0440\u0435\u0445\u043E\u0434\u0438\u0442\u0435 - \u043D\u0430 LAVA www.lavaonline.tv\\t\\t\\t\\t\\t\\t\\t\\n\"\n },\n - \ \"country\": \"US\"\n },\n \"brandingSettings\": {\n \"channel\": - {\n \"title\": \"Video Star\",\n \"description\": \"\u0414\u043E\u0440\u043E\u0433\u0438\u0435 - \u0437\u0440\u0438\u0442\u0435\u043B\u0438, \u043B\u044E\u0431\u0438\u043C\u044B\u0435 - \u043F\u043E\u0434\u043F\u0438\u0441\u0447\u0438\u043A\u0438 \u0438 \u0443\u0432\u0430\u0436\u0430\u0435\u043C\u044B\u0435 - \u043F\u0440\u0430\u0432\u043E\u043E\u0431\u043B\u0430\u0434\u0430\u0442\u0435\u043B\u0438!\\n\u042D\u0442\u043E\u0442 - \u043A\u0430\u043D\u0430\u043B \u043F\u0440\u0438\u043D\u0430\u0434\u043B\u0435\u0436\u0438\u0442 - \u043A\u043E\u043C\u043F\u0430\u043D\u0438\u0438 \U0001D412\U0001D42D\U0001D41A\U0001D42B - \U0001D40C\U0001D41E\U0001D41D\U0001D422\U0001D41A \u0438 \u0432\u0445\u043E\u0434\u0438\u0442 - \u0432 \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u043E\u043D\u043D\u0443\u044E - \u0441\u0435\u0442\u044C \u043A\u0430\u043D\u0430\u043B\u043E\u0432 \u0441 - \u0444\u0438\u043B\u044C\u043C\u0430\u043C\u0438 \u0438 \u0441\u0435\u0440\u0438\u0430\u043B\u0430\u043C\u0438. - \u041F\u043E\u0434\u043F\u0438\u0441\u044B\u0432\u0430\u0439\u0442\u0435\u0441\u044C - \u043D\u0430 \u043A\u0430\u043D\u0430\u043B \u0438 \u0441\u043C\u043E\u0442\u0440\u0438\u0442\u0435 - \u043F\u0440\u043E\u0435\u043A\u0442\u044B \u0441\u043E \u0432\u0441\u0435\u0433\u043E - \u043C\u0438\u0440\u0430!\\t\\n\\n\u0412\u0430\u0448\u0430 #StarMedia\\n-----\\nDear - viewers, subscribers and copyright owners,\\n\\nThis channel is owned by \U0001D412\U0001D42D\U0001D41A\U0001D42B - \U0001D40C\U0001D41E\U0001D41D\U0001D422\U0001D41A and is included in a licensed - network of YouTube channels with movies and TV series. Subscribe to the channel - and watch foreign and domestic movies and TV series! \\n\\nYour friends at - #StarMedia\\n\\n\u0414\u043B\u044F \u0432\u0430\u0448\u0435\u0433\u043E \u0443\u0434\u043E\u0431\u0441\u0442\u0432\u0430 - \u043C\u044B \u0441\u043E\u0431\u0440\u0430\u043B\u0438 \u043D\u0430\u0448\u0438 - \u0444\u0438\u043B\u044C\u043C\u044B \u0438 \u0441\u0435\u0440\u0438\u0430\u043B\u044B - \u0432 \u043E\u043D\u043B\u0430\u0439\u043D-\u043A\u0438\u043D\u043E\u0442\u0435\u0430\u0442\u0440\u0435 - LAVA. \u0421\u043E\u0442\u043D\u0438 \u043C\u0435\u043B\u043E\u0434\u0440\u0430\u043C, - \u0434\u0435\u0442\u0435\u043A\u0442\u0438\u0432\u043E\u0432, \u0432\u043E\u0435\u043D\u043D\u044B\u0445 - \u0444\u0438\u043B\u044C\u043C\u043E\u0432 \u0438 \u0434\u0440\u0430\u043C - \u0432 \u0432\u0435\u043B\u0438\u043A\u043E\u043B\u0435\u043F\u043D\u043E\u043C - \u043A\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0434\u043B\u044F \u0432\u0430\u0441!\\n\u041D\u0430\u0441\u043B\u0430\u0436\u0434\u0430\u0439\u0442\u0435\u0441\u044C - \u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440\u043E\u043C \u0441 \u043B\u044E\u0431\u043E\u0433\u043E - \u0443\u0441\u0442\u0440\u043E\u0439\u0441\u0442\u0432\u0430 \u0431\u0435\u0441\u043F\u043B\u0430\u0442\u043D\u043E.\\n\u041F\u0435\u0440\u0435\u0445\u043E\u0434\u0438\u0442\u0435 - \u043D\u0430 LAVA www.lavaonline.tv\\t\\t\\t\\t\\t\\t\\t\\n\",\n \"keywords\": - \"\u043C\u0435\u043B\u043E\u0434\u0440\u0430\u043C\u044B \u0444\u0438\u043B\u044C\u043C\u044B - \u0441\u0435\u0440\u0438\u0430\u043B\u044B \u0434\u0440\u0430\u043C\u044B - \u043D\u043E\u0432\u0438\u043D\u043A\u0438 \u043F\u0440\u0435\u043C\u044C\u0435\u0440\u044B\",\n - \ \"unsubscribedTrailer\": \"SfvK2_74y88\",\n \"country\": - \"US\"\n },\n \"image\": {\n \"bannerExternalUrl\": - \"https://yt3.googleusercontent.com/YVqj4iAzS4eSugb1rYt0RbLRkBSMEUO606RH-yvzYIraNLuLIm_O_3F6r4nA_Ver-Wt_6Q3uEw\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:31 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"batchPath\": \"batch\",\n \"name\": \"youtube\",\n \"basePath\": - \"\",\n \"schemas\": {\n \"WatchSettings\": {\n \"type\": \"object\",\n - \ \"description\": \"Branding properties for the watch. All deprecated.\",\n - \ \"id\": \"WatchSettings\",\n \"properties\": {\n \"backgroundColor\": - {\n \"description\": \"The text color for the video watch page's - branded area.\",\n \"type\": \"string\"\n },\n \"textColor\": - {\n \"type\": \"string\",\n \"description\": \"The background - color for the video watch page's branded area.\"\n },\n \"featuredPlaylistId\": - {\n \"description\": \"An ID that uniquely identifies a playlist - that displays next to the video player.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ImageSettings\": {\n \"id\": \"ImageSettings\",\n - \ \"type\": \"object\",\n \"description\": \"Branding properties - for images associated with the channel.\",\n \"properties\": {\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size high resolution (2276x377).\"\n },\n \"trackingImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"bannerTabletImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n },\n \"bannerTvLowImageUrl\": {\n - \ \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"bannerImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": - {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size (640x175).\"\n },\n \"watchIconImageUrl\": {\n \"type\": - \"string\"\n },\n \"bannerTvImageUrl\": {\n \"description\": - \"Banner image. TV size extra high resolution (2120x1192).\",\n \"type\": - \"string\"\n },\n \"bannerTabletLowImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size low resolution - (1138x188).\"\n },\n \"bannerMobileMediumHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size medium/high - resolution (960x263).\"\n },\n \"backgroundImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the background - image shown on the video watch page. The image should be 1200px by 615px, - with a maximum file size of 128k.\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 640px by 70px banner image - that appears below the video player in the default view of the video watch - page. The URL for the image that appears above the top-left corner of the - video player. This is a 25-pixel-high image with a flexible width that cannot - exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerExternalUrl\": {\n \"type\": \"string\",\n \"description\": - \"This is generated when a ChannelBanner.Insert request has succeeded for - the given channel.\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\",\n - \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"properties\": {\n \"timeLeftMs\": {\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"partsTotal\": {\n \"format\": \"uint64\",\n - \ \"description\": \"An estimate of the total number of parts that - need to be processed for the video. The number may be updated with more precise - estimates while YouTube processes the video.\",\n \"type\": \"string\"\n - \ },\n \"partsProcessed\": {\n \"description\": \"The - number of parts of the video that YouTube has already processed. You can estimate - the percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n }\n },\n \"description\": - \"Video processing progress and completion time estimate.\",\n \"type\": - \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"InvideoPosition\": {\n \"id\": \"InvideoPosition\",\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"properties\": {\n \"cornerPosition\": {\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\",\n - \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"type\": - {\n \"type\": \"string\",\n \"description\": \"Defines the - position type.\",\n \"enumDescriptions\": [\n \"\"\n ],\n - \ \"enum\": [\n \"corner\"\n ]\n }\n },\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsLike\": {\n - \ \"description\": \"Information about a resource that received a positive - (like) rating.\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the uploaded video.\"\n }\n },\n \"description\": \"Information - about the uploaded video.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsUpload\"\n - \ },\n \"LiveChatBan\": {\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the ban.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveChatBan\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\"\n }\n - \ },\n \"id\": \"LiveChatBan\",\n \"type\": \"object\",\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\"\n - \ },\n \"ActivityContentDetailsPlaylistItem\": {\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"properties\": {\n \"playlistId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n },\n \"playlistItemId\": - {\n \"description\": \"ID of the item within the playlist.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Information about - a new playlist item.\",\n \"type\": \"object\"\n },\n \"ChannelSettings\": - {\n \"type\": \"object\",\n \"properties\": {\n \"profileColor\": - {\n \"type\": \"string\",\n \"description\": \"A prominent - color that can be rendered on this channel page.\"\n },\n \"showBrowseView\": - {\n \"description\": \"Whether the tab to browse the videos should - be displayed.\",\n \"type\": \"boolean\"\n },\n \"description\": - {\n \"description\": \"Specifies the channel description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the channel title.\"\n },\n - \ \"defaultTab\": {\n \"description\": \"Which content tab - users should see when viewing the channel.\",\n \"type\": \"string\"\n - \ },\n \"featuredChannelsTitle\": {\n \"description\": - \"Title for the featured channels tab.\",\n \"type\": \"string\"\n - \ },\n \"moderateComments\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether user-submitted comments left on the channel - page need to be approved by the channel owner to be publicly visible.\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\"\n - \ },\n \"featuredChannelsUrls\": {\n \"description\": - \"The list of featured channels.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"type\": \"string\",\n \"description\": \"The ID for - a Google Analytics account to track and measure traffic to the channels.\"\n - \ },\n \"showRelatedChannels\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether related channels should be proposed.\"\n - \ },\n \"unsubscribedTrailer\": {\n \"description\": - \"The trailer of the channel, for users that are not subscribers.\",\n \"type\": - \"string\"\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n },\n - \ \"keywords\": {\n \"description\": \"Lists keywords associated - with the channel, comma-separated.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelSettings\",\n \"description\": \"Branding - properties for the channel view.\"\n },\n \"VideoStatus\": {\n \"properties\": - {\n \"embeddable\": {\n \"description\": \"This value indicates - if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"publishAt\": - {\n \"description\": \"The date and time when the video is scheduled - to publish. It can be set only if the privacy status of the video is private..\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"uploadStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"enum\": - [\n \"uploaded\",\n \"processed\",\n \"failed\",\n - \ \"rejected\",\n \"deleted\"\n ],\n \"description\": - \"The status of the uploaded video.\"\n },\n \"rejectionReason\": - {\n \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ],\n \"description\": - \"This value explains why YouTube rejected an uploaded video. This property - is only present if the uploadStatus property indicates that the upload was - rejected.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n },\n \"failureReason\": - {\n \"enumDescriptions\": [\n \"Unable to convert video - content.\",\n \"Invalid file format.\",\n \"Empty file.\",\n - \ \"File was too small.\",\n \"Unsupported codec.\",\n - \ \"Upload wasn't finished.\"\n ],\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"This value explains why a video failed to upload. This property is only - present if the uploadStatus property indicates that the upload failed.\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"license\": {\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"description\": \"The - video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ]\n },\n \"publicStatsViewable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The video's privacy status.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n }\n },\n \"id\": \"VideoStatus\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title. Next Id: 18\",\n \"type\": \"object\"\n },\n \"ChannelBannerResource\": - {\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"url\": {\n \"type\": \"string\",\n \"description\": - \"The URL of this banner image.\"\n }\n },\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\",\n - \ \"type\": \"object\",\n \"id\": \"ChannelBannerResource\"\n },\n - \ \"AbuseType\": {\n \"type\": \"object\",\n \"id\": \"AbuseType\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelSectionLocalization\": {\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel section's title.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ChannelSectionLocalization\",\n - \ \"description\": \"ChannelSection localization setting\"\n },\n \"VideoFileDetailsAudioStream\": - {\n \"id\": \"VideoFileDetailsAudioStream\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - audio stream's bitrate, in bits per second.\"\n },\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The audio - codec that the stream uses.\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"channelCount\": {\n \"description\": \"The number of audio - channels that the stream contains.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n }\n },\n \"description\": - \"Information about an audio stream.\"\n },\n \"ActivityContentDetails\": - {\n \"id\": \"ActivityContentDetails\",\n \"description\": \"Details - about the content of an activity: the video that was shared, the channel that - was subscribed to, etc.\",\n \"properties\": {\n \"channelItem\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"subscription\": {\n \"description\": \"The - subscription object contains information about a channel that a user subscribed - to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"favorite\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"promotedItem\": {\n \"description\": \"The - promotedItem object contains details about a resource which is being promoted. - This property is only present if the snippet.type is promotedItem.\",\n \"$ref\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"upload\": {\n - \ \"$ref\": \"ActivityContentDetailsUpload\",\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\"\n },\n \"social\": - {\n \"description\": \"The social object contains details about a - social network post. This property is only present if the snippet.type is - social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n },\n - \ \"comment\": {\n \"description\": \"The comment object contains - information about a resource that received a comment. This property is only - present if the snippet.type is comment.\",\n \"$ref\": \"ActivityContentDetailsComment\"\n - \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\"\n },\n \"like\": {\n \"$ref\": - \"ActivityContentDetailsLike\",\n \"description\": \"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.\"\n },\n - \ \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\"\n },\n \"bulletin\": {\n \"$ref\": - \"ActivityContentDetailsBulletin\",\n \"description\": \"The bulletin - object contains details about a channel bulletin post. This object is only - present if the snippet.type is bulletin.\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoSnippet\": {\n \"properties\": {\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that the video was uploaded to.\",\n \"type\": \"string\"\n - \ },\n \"defaultAudioLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the videos's default snippet.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the video belongs to.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"categoryId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube video category associated - with the video.\"\n },\n \"localized\": {\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\",\n - \ \"$ref\": \"VideoLocalization\"\n },\n \"tags\": {\n - \ \"type\": \"array\",\n \"description\": \"A list of keyword - tags associated with the video. Tags may contain spaces.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the video was uploaded.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"liveBroadcastContent\": {\n \"description\": \"Indicates - if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" if - the video is not an upcoming/active live broadcast.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\"\n }\n },\n \"id\": \"VideoSnippet\",\n - \ \"description\": \"Basic details about a video, including title, description, - uploader, thumbnails and category.\",\n \"type\": \"object\"\n },\n - \ \"PlaylistItemSnippet\": {\n \"properties\": {\n \"publishedAt\": - {\n \"description\": \"The date and time that the item was added - to the playlist.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - item's title.\",\n \"type\": \"string\"\n },\n \"position\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\"\n },\n \"videoOwnerChannelTitle\": {\n - \ \"description\": \"Channel title for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"playlistId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the user that added the item to the playlist.\"\n },\n \"description\": - {\n \"description\": \"The item's description.\",\n \"type\": - \"string\"\n },\n \"videoOwnerChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel id for the channel this - video belongs to.\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"$ref\": \"ResourceId\",\n \"description\": \"The id object - contains information that can be used to uniquely identify the resource that - is included in the playlist as the playlist item.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist item. 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.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails. Basic details - of a YouTube Playlist item provided by the author. Next ID: 15\",\n \"id\": - \"PlaylistItemSnippet\"\n },\n \"VideoGetRatingResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of ratings that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"VideoRating\"\n }\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#videoGetRatingResponse\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"VideoGetRatingResponse\"\n - \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"bannedUserDetails\": - {\n \"description\": \"The details of the user that was banned.\",\n - \ \"$ref\": \"ChannelProfileDetails\"\n },\n \"banType\": - {\n \"enum\": [\n \"permanent\",\n \"temporary\"\n - \ ],\n \"description\": \"The type of ban.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"banDurationSeconds\": {\n \"format\": - \"uint64\",\n \"description\": \"The duration of the ban. This property - is only present if the banType is temporary.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoAbuseReportReasonListResponse\": {\n - \ \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonListResponse\",\n - \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ },\n \"description\": \"A list of valid abuse reasons that - are used with `video.ReportAbuse`.\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoAbuseReportReasonListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The `visitorId` identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n }\n - \ },\n \"LiveChatMessageRetractedDetails\": {\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"type\": - \"object\"\n },\n \"ChannelSectionTargeting\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelSectionTargeting\",\n \"description\": \"ChannelSection - targeting setting.\",\n \"properties\": {\n \"regions\": {\n \"type\": - \"array\",\n \"description\": \"The region the channel section is - targeting.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n },\n \"countries\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"The country the channel section is targeting.\"\n },\n \"languages\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The language - the channel section is targeting.\"\n }\n }\n },\n \"LiveStreamContentDetails\": - {\n \"type\": \"object\",\n \"description\": \"Detailed settings - of a stream.\",\n \"id\": \"LiveStreamContentDetails\",\n \"properties\": - {\n \"isReusable\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \"\n },\n \"closedCaptionsIngestionUrl\": {\n \"description\": - \"The ingestion URL where the closed captions of this stream are sent.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"PlaylistListResponse\": - {\n \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Playlist\"\n },\n \"description\": \"A list of playlists - that match the request criteria\",\n \"type\": \"array\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#playlistListResponse\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistListResponse\"\n },\n \"PlaylistItem\": {\n - \ \"properties\": {\n \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n - \ \"description\": \"The status object contains information about - the playlist item's privacy status.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\",\n \"type\": - \"string\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistItemContentDetails\",\n \"description\": \"The contentDetails - object is included in the resource if the included item is a YouTube video. - The object contains additional information about the video.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistItemSnippet\",\n \"description\": \"The snippet object - contains basic details about the playlist item, such as its title and position - in the playlist.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#playlistItem\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\"\n - \ }\n },\n \"description\": \"A *playlistItem* resource identifies - another resource, such as a video, that is included in a playlist. In addition, - the playlistItem resource contains details about the included resource that - pertain specifically to how that resource is used in that playlist. YouTube - uses playlists to identify special collections of videos for a channel, such - as: - uploaded videos - favorite videos - positively rated (liked) videos - - watch history - watch later To be more specific, these lists are associated - with a channel, which is a collection of a person, group, or company's videos, - playlists, and other YouTube information. You can retrieve the playlist IDs - for each of these lists from the channel resource for a given channel. You - can then use the playlistItems.list method to retrieve any of those lists. - You can also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods. For example, if a user gives a positive - rating to a video, you would insert that video into the liked videos playlist - for that user's channel.\",\n \"type\": \"object\",\n \"id\": \"PlaylistItem\"\n - \ },\n \"LiveChatSuperChatDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"tier\": {\n \"description\": \"The - tier in which the amount belongs. Lower amounts belong to lower tiers. The - lowest tier is 1.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n },\n \"userComment\": - {\n \"description\": \"The comment added by the user to this Super - Chat event.\",\n \"type\": \"string\"\n },\n \"amountMicros\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatSuperChatDetails\"\n },\n \"LocalizedProperty\": - {\n \"type\": \"object\",\n \"properties\": {\n \"localized\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n }\n },\n \"default\": {\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the default property.\",\n \"$ref\": \"LanguageTag\"\n - \ }\n },\n \"id\": \"LocalizedProperty\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"properties\": {\n \"allowed\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\",\n \"type\": - \"array\"\n },\n \"blocked\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of region codes - that identify countries where the video is blocked. If this property is present - and a country is not listed in its value, then the video is viewable in that - country. If this property is present and contains an empty list, the video - is viewable in all countries.\",\n \"type\": \"array\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoContentDetailsRegionRestriction\"\n - \ },\n \"SubscriptionSnippet\": {\n \"properties\": {\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The subscription's - title.\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the subscription - belongs to.\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.subscriptions.insert\"\n ]\n },\n - \ \"description\": \"The id object contains information about the - channel that the user subscribed to.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the subscription was - created.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"description\": {\n \"description\": \"The subscription's - details.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the subscriber's channel.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Basic details - about a subscription, including title, description and thumbnails of the subscribed - item.\",\n \"id\": \"SubscriptionSnippet\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was added to the channel.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"Details about a resource which was added to a channel.\",\n - \ \"type\": \"object\"\n },\n \"MonitorStreamInfo\": {\n \"description\": - \"Settings and Info of the monitor stream\",\n \"id\": \"MonitorStreamInfo\",\n - \ \"properties\": {\n \"broadcastStreamDelayMs\": {\n \"description\": - \"If you have set the enableMonitorStream property to true, then this property - determines the length of the live broadcast delay.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"embedHtml\": {\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\",\n \"type\": - \"string\"\n },\n \"enableMonitorStream\": {\n \"type\": - \"boolean\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"This value determines whether the monitor stream - is enabled for the broadcast. If the monitor stream is enabled, then YouTube - will broadcast the event content on a special stream intended only for the - broadcaster's consumption. The broadcaster can use the stream to review the - event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SuperStickerMetadata\": {\n \"id\": \"SuperStickerMetadata\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"altTextLanguage\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the alt text is returned.\"\n },\n - \ \"stickerId\": {\n \"type\": \"string\",\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\"\n - \ },\n \"altText\": {\n \"type\": \"string\",\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\"\n }\n }\n },\n \"MemberListResponse\": - {\n \"type\": \"object\",\n \"id\": \"MemberListResponse\",\n \"properties\": - {\n \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of members that match the request criteria.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Member\"\n }\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"kind\": {\n - \ \"default\": \"youtube#memberListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n }\n - \ }\n },\n \"MembershipsDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"MembershipsDetails\",\n \"properties\": {\n \"accessibleLevels\": - {\n \"type\": \"array\",\n \"description\": \"Ids of all - levels that the user has access to. This includes the currently active level - and all other levels that are included because of a higher purchase.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"membershipsDurationAtLevels\": {\n \"type\": \"array\",\n - \ \"description\": \"Data about memberships duration on particular - pricing levels.\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ }\n },\n \"highestAccessibleLevelDisplayName\": {\n - \ \"description\": \"Display name for the highest level that the user - has access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"highestAccessibleLevel\": {\n \"description\": \"Id of - the highest level that the user has access to at the moment.\",\n \"type\": - \"string\"\n },\n \"membershipsDuration\": {\n \"description\": - \"Data about memberships duration without taking into consideration pricing - levels.\",\n \"$ref\": \"MembershipsDuration\"\n }\n }\n - \ },\n \"ActivityContentDetailsFavorite\": {\n \"properties\": {\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsFavorite\",\n \"description\": - \"Information about a video that was marked as a favorite video.\"\n },\n - \ \"SearchResult\": {\n \"properties\": {\n \"id\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The id object contains information - that can be used to uniquely identify the resource that matches the search - request.\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about a search result, such as its title or description. For example, if the - search result is a video, then the title will be the video's title and the - description will be the video's description.\",\n \"$ref\": \"SearchResultSnippet\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#searchResult\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ }\n },\n \"id\": \"SearchResult\",\n \"description\": - \"A search result contains information about a YouTube video, channel, or - playlist that matches the search parameters specified in an API request. While - a search result points to a uniquely identifiable resource, like a video, - it does not have its own persistent data.\",\n \"type\": \"object\"\n - \ },\n \"VideoPlayer\": {\n \"type\": \"object\",\n \"id\": - \"VideoPlayer\",\n \"properties\": {\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\",\n - \ \"type\": \"string\"\n },\n \"embedHeight\": {\n \"format\": - \"int64\",\n \"type\": \"string\"\n },\n \"embedWidth\": - {\n \"description\": \"The embed width\",\n \"format\": - \"int64\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Player to be used for a video playback.\"\n },\n \"InvideoTiming\": - {\n \"properties\": {\n \"offsetMs\": {\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"durationMs\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\"\n },\n \"type\": - {\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"description\": \"Describes a timing type. If the - value is offsetFromStart, then the offsetMs field represents an offset from - the start of the video. If the value is offsetFromEnd, then the offsetMs field - represents an offset from the end of the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n }\n },\n \"id\": \"InvideoTiming\",\n \"type\": - \"object\",\n \"description\": \"Describes a temporal position of a visual - widget inside a video.\"\n },\n \"ChannelContentDetails\": {\n \"id\": - \"ChannelContentDetails\",\n \"description\": \"Details about the content - of a channel.\",\n \"properties\": {\n \"relatedPlaylists\": {\n - \ \"properties\": {\n \"likes\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"watchLater\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch later playlist. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"favorites\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"uploads\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s uploaded videos. Use the videos.insert method to upload new videos - and the videos.delete method to delete previously uploaded videos.\",\n \"type\": - \"string\"\n },\n \"watchHistory\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"MembershipsLevel\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#membershipsLevel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the memberships level.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"MembershipsLevel\",\n - \ \"description\": \"A *membershipsLevel* resource represents an offer - made by YouTube creators for their fans. Users can become members of the channel - by joining one of the available levels. They will provide recurring monetary - support and receives special benefits.\"\n },\n \"VideoContentDetails\": - {\n \"id\": \"VideoContentDetails\",\n \"type\": \"object\",\n \"description\": - \"Details about the content of a YouTube Video.\",\n \"properties\": - {\n \"duration\": {\n \"type\": \"string\",\n \"description\": - \"The length of the video. The tag value is an ISO 8601 duration in the format - PT#M#S, in which the letters PT indicate that the value specifies a period - of time, and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"regionRestriction\": {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\"\n },\n \"dimension\": - {\n \"description\": \"The value of dimension indicates whether the - video is available in 3D or in 2D.\",\n \"type\": \"string\"\n },\n - \ \"projection\": {\n \"description\": \"Specifies the projection - format of the video.\",\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"definition\": {\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"description\": \"The value of - definition indicates whether the video is available in high definition or - only in standard definition.\",\n \"type\": \"string\",\n \"enum\": - [\n \"sd\",\n \"hd\"\n ]\n },\n \"contentRating\": - {\n \"description\": \"Specifies the ratings that the video received - under various rating schemes.\",\n \"$ref\": \"ContentRating\"\n - \ },\n \"licensedContent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"The value of is_license_content indicates whether - the video is licensed content.\"\n },\n \"hasCustomThumbnail\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\"\n },\n \"countryRestriction\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - countryRestriction object contains information about the countries where a - video is (or is not) viewable.\"\n },\n \"caption\": {\n \"enum\": - [\n \"true\",\n \"false\"\n ],\n \"description\": - \"The value of captions indicates whether the video has captions or not.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ]\n }\n }\n },\n \"VideoCategory\": - {\n \"id\": \"VideoCategory\",\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video category.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"default\": \"youtube#videoCategory\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A *videoCategory* resource identifies - a category that has been or could be associated with uploaded videos.\"\n - \ },\n \"CaptionSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"isDraft\": {\n \"type\": \"boolean\",\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n },\n \"failureReason\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The reason that YouTube failed to process the - caption track. This property is only present if the state property's value - is failed.\"\n },\n \"isEasyReader\": {\n \"description\": - \"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.\",\n - \ \"type\": \"boolean\"\n },\n \"isCC\": {\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\",\n \"type\": \"boolean\"\n - \ },\n \"isAutoSynced\": {\n \"description\": \"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.\",\n - \ \"type\": \"boolean\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video associated with the caption track. @mutable - youtube.captions.insert\"\n },\n \"audioTrackType\": {\n \"description\": - \"The type of audio track associated with the caption track.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ],\n \"type\": - \"string\"\n },\n \"status\": {\n \"enum\": [\n \"serving\",\n - \ \"syncing\",\n \"failed\"\n ],\n \"description\": - \"The caption track's status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"isLarge\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\"\n },\n \"name\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The name of the - caption track. The name is intended to be visible to the user as an option - during playback.\"\n },\n \"language\": {\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\",\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n }\n - \ },\n \"trackKind\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"description\": \"The caption track's type.\"\n },\n - \ \"lastUpdated\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the caption track was last updated.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"CaptionSnippet\",\n \"description\": - \"Basic details about a caption track, such as its language and name.\"\n - \ },\n \"LiveBroadcastStatistics\": {\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"properties\": {\n \"totalChatCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\"\n - \ },\n \"concurrentViewers\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of viewers currently watching the - broadcast. The property and its value will be present if the broadcast has - current viewers and the broadcast owner has not hidden the viewcount for the - video. Note that YouTube stops tracking the number of concurrent viewers for - a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Statistics about the live broadcast. - These represent a snapshot of the values at the time of the request. Statistics - are only returned for live broadcasts.\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The amount - of the fund.\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n },\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n }\n }\n },\n - \ \"ActivityContentDetailsSubscription\": {\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"type\": \"object\",\n \"description\": \"Information about a - channel that a user subscribed to.\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that the user subscribed to.\",\n \"$ref\": - \"ResourceId\"\n }\n }\n },\n \"ThumbnailSetResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of thumbnails.\",\n \"items\": - {\n \"$ref\": \"ThumbnailDetails\"\n }\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#thumbnailSetResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n - \ }\n },\n \"id\": \"ThumbnailSetResponse\"\n },\n \"LiveStream\": - {\n \"description\": \"A live stream describes a live ingestion point.\",\n - \ \"id\": \"LiveStream\",\n \"properties\": {\n \"cdn\": {\n - \ \"description\": \"The cdn object defines the live stream's content - delivery network (CDN) settings. These settings provide details about the - manner in which you stream your content to YouTube.\",\n \"$ref\": - \"CdnSettings\"\n },\n \"contentDetails\": {\n \"description\": - \"The content_details object contains information about the stream, including - the closed captions ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveStream\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n - \ },\n \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n - \ \"description\": \"The status object contains information about - live stream's status.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the stream.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.update\"\n ]\n }\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelSectionListResponse\": - {\n \"id\": \"ChannelSectionListResponse\",\n \"properties\": {\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"description\": - \"A list of ChannelSections that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ }\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"SuperChatEvent\": {\n - \ \"description\": \"A `__superChatEvent__` resource represents a Super - Chat purchase on a YouTube channel.\",\n \"type\": \"object\",\n \"id\": - \"SuperChatEvent\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the Super Chat event.\"\n - \ },\n \"snippet\": {\n \"description\": \"The `snippet` - object contains basic details about the Super Chat event.\",\n \"$ref\": - \"SuperChatEventSnippet\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n \"default\": - \"youtube#superChatEvent\"\n }\n }\n },\n \"LiveChatMessageListResponse\": - {\n \"id\": \"LiveChatMessageListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"pollingIntervalMillis\": {\n \"description\": - \"The amount of time the client should wait before polling again.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n - \ }\n },\n \"offlineAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the underlying stream - went offline.\",\n \"format\": \"date-time\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\"\n - \ }\n }\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"Information that identifies the recommended resource.\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\",\n \"$ref\": \"ResourceId\"\n },\n \"seedResourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The seedResourceId - object contains information about the resource that caused the recommendation.\"\n - \ },\n \"reason\": {\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The reason that the resource is recommended to the user.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n }\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"gifterChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the user that made the - membership gifting purchase. This matches the `snippet.authorChannelId` of - the associated membership gifting message.\"\n },\n \"memberLevelName\": - {\n \"description\": \"The name of the Level at which the viewer - is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ }\n }\n },\n \"MembershipsDurationAtLevel\": {\n \"type\": - \"object\",\n \"properties\": {\n \"memberTotalDurationMonths\": - {\n \"format\": \"int32\",\n \"description\": \"The cumulative - time the user has been a member for the given level in complete months (the - time is rounded down to the nearest integer).\",\n \"type\": \"integer\"\n - \ },\n \"level\": {\n \"type\": \"string\",\n \"description\": - \"Pricing level ID.\"\n },\n \"memberSince\": {\n \"description\": - \"The date and time when the user became a continuous member for the given - level.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"MembershipsDurationAtLevel\"\n },\n \"PlaylistPlayer\": {\n \"id\": - \"PlaylistPlayer\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelLocalization\": {\n \"type\": - \"object\",\n \"id\": \"ChannelLocalization\",\n \"description\": - \"Channel localization setting\",\n \"properties\": {\n \"title\": - {\n \"description\": \"The localized strings for channel's title.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - description.\"\n }\n }\n },\n \"TestItem\": {\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"TestItemTestItemSnippet\"\n },\n \"id\": {\n \"type\": - \"string\"\n },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"gaia\": {\n \"format\": \"int64\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"TestItem\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level that the viewer just had joined. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"isUpgrade\": {\n \"type\": - \"boolean\",\n \"description\": \"If the viewer just had upgraded - from a lower level. For viewers that were not members at the time of purchase, - this field is false.\"\n }\n },\n \"id\": \"LiveChatNewSponsorDetails\"\n - \ },\n \"ContentRating\": {\n \"properties\": {\n \"chfilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"nbcplRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating in Poland.\",\n - \ \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n - \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n - \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"chvrsRating\": {\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ],\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\"\n },\n - \ \"mibacRating\": {\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\"\n },\n \"mdaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Singapore's - Media Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\",\n \"type\": \"string\",\n \"enum\": [\n \"mdaUnspecified\",\n - \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n - \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n - \ \"mdaUnrated\"\n ]\n },\n \"bmukkRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Unrestricted\",\n \"6+\",\n \"8+\",\n - \ \"10+\",\n \"12+\",\n \"14+\",\n \"16+\",\n - \ \"\"\n ],\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\"\n },\n \"kijkwijzerRating\": - {\n \"description\": \"The video's NICAM/Kijkwijzer rating from the - Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ]\n },\n \"mccypRating\": {\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"smaisRating\": {\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\",\n - \ \"type\": \"string\"\n },\n \"tvpgRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's TV Parental Guidelines - (TVPG) rating.\",\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ]\n },\n \"rteRating\": {\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ],\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"resorteviolenciaRating\": - {\n \"description\": \"The video's rating in Venezuela.\",\n \"enum\": - [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ]\n },\n - \ \"eefilmRating\": {\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Estonia.\"\n },\n \"moctwRating\": {\n - \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Taiwan's - Ministry of Culture (\u6587\u5316\u90E8).\"\n },\n \"egfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating in Egypt.\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ]\n },\n \"fcoRating\": - {\n \"description\": \"The video's rating from Hong Kong's Office - for Film, Newspaper and Article Administration.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ]\n - \ },\n \"fskRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle - der Filmwirtschaft (FSK - Germany) rating.\",\n \"enum\": [\n \"fskUnspecified\",\n - \ \"fsk0\",\n \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n - \ \"fsk18\",\n \"fskUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"cicfRating\": {\n \"enum\": [\n - \ \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"description\": - \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"ifcoRating\": {\n \"enum\": - [\n \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"description\": \"The - video's Irish Film Classification Office (IFCO - Ireland) rating. See the - IFCO website for more information.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"fcbmRating\": {\n \"enum\": [\n \"fcbmUnspecified\",\n - \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n - \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n - \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Malaysia's - Film Censorship Board.\",\n \"type\": \"string\"\n },\n \"bbfcRating\": - {\n \"description\": \"The video's British Board of Film Classification - (BBFC) rating.\",\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ]\n - \ },\n \"kmrbRating\": {\n \"description\": \"The video's - Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"enum\": - [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ]\n },\n \"fmocRating\": - {\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ],\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\"\n },\n \"cbfcRating\": - {\n \"description\": \"The video's Central Board of Film Certification - (CBFC - India) rating.\",\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ]\n },\n \"ecbmctRating\": {\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ],\n \"description\": - \"Rating system in Turkey - Evaluation and Classification Board of the Ministry - of Culture and Tourism\",\n \"type\": \"string\"\n },\n \"catvfrRating\": - {\n \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"russiaRating\": {\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's National Film Registry of the Russian Federation (MKRF - Russia) - rating.\"\n },\n \"lsfRating\": {\n \"description\": - \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"enum\": - [\n \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"ilfilmRating\": - {\n \"description\": \"The video's rating in Israel.\",\n \"type\": - \"string\",\n \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"nfrcRating\": {\n \"enum\": [\n \"nfrcUnspecified\",\n - \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n - \ \"nfrcX\",\n \"nfrcUnrated\"\n ],\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n - \ \"\"\n ]\n },\n \"nfvcbRating\": {\n \"enum\": - [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n \"nfvcbPg\",\n - \ \"nfvcb12\",\n \"nfvcb12a\",\n \"nfvcb15\",\n - \ \"nfvcb18\",\n \"nfvcbRe\",\n \"nfvcbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Nigeria's National Film and Video Censors Board.\"\n },\n \"djctqRatingReasons\": - {\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ],\n \"enum\": [\n - \ \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ]\n },\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n - \ \"type\": \"array\"\n },\n \"czfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"czfilmUnspecified\",\n \"czfilmU\",\n \"czfilm12\",\n - \ \"czfilm14\",\n \"czfilm18\",\n \"czfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in the Czech - Republic.\",\n \"type\": \"string\"\n },\n \"rtcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n - \ \"D\",\n \"\"\n ],\n \"enum\": [\n - \ \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ],\n \"description\": \"The - video's General Directorate of Radio, Television and Cinematography (Mexico) - rating.\",\n \"type\": \"string\"\n },\n \"mcstRating\": - {\n \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n - \ \"description\": \"The video's rating system for Vietnam - MCST\"\n - \ },\n \"mekuRating\": {\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Finland's Kansallinen - Audiovisuaalinen Instituutti (National Audiovisual Institute).\"\n },\n - \ \"incaaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"ATP (Apta para todo publico)\",\n \"13 (Solo apta - para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para mayores de - 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 a\xF1os)\",\n - \ \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"incaaUnspecified\",\n \"incaaAtp\",\n \"incaaSam13\",\n - \ \"incaaSam16\",\n \"incaaSam18\",\n \"incaaC\",\n - \ \"incaaUnrated\"\n ],\n \"description\": \"The - video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\"\n },\n \"smsaRating\": {\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"All ages\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"smsaUnspecified\",\n - \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n - \ \"smsa15\",\n \"smsaUnrated\"\n ]\n },\n - \ \"djctqRating\": {\n \"description\": \"The video's Departamento - de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - - Brazil) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ]\n },\n \"cceRating\": - {\n \"description\": \"The video's rating from Portugal's Comiss\xE3o - de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ]\n },\n \"anatelRating\": - {\n \"description\": \"The video's Anatel (Asociaci\xF3n Nacional - de Televisi\xF3n) rating for Chilean television.\",\n \"enum\": [\n - \ \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"medietilsynetRating\": {\n \"enum\": - [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Medietilsynet, the Norwegian Media Authority.\"\n },\n \"bfvcRating\": - {\n \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Thailand's Board of Film and Video Censors.\",\n \"type\": \"string\"\n - \ },\n \"agcomRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Italy's Autorit\xE0 per - le Garanzie nelle Comunicazioni (AGCOM).\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ]\n },\n \"oflcRating\": - {\n \"description\": \"The video's Office of Film and Literature - Classification (OFLC - New Zealand) rating.\",\n \"enum\": [\n \"oflcUnspecified\",\n - \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n - \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n - \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n - \ \"oflcRp16\",\n \"oflcRp18\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ]\n },\n \"skfilmRating\": - {\n \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n - \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n - \ \"skfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ],\n \"description\": - \"The video's rating in Slovakia.\",\n \"type\": \"string\"\n },\n - \ \"grfilmRating\": {\n \"description\": \"The video's rating - in Greece.\",\n \"type\": \"string\",\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ]\n - \ },\n \"cccRating\": {\n \"description\": \"The video's - Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n \"type\": - \"string\",\n \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n - \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ]\n },\n - \ \"mtrcbRating\": {\n \"description\": \"The video's rating - from the Movie and Television Review and Classification Board (Philippines).\",\n - \ \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ]\n },\n \"icaaRating\": {\n \"description\": - \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales - (ICAA - Spain) rating.\",\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"mpaaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"NC-17\",\n \"! X\",\n \"\"\n ],\n - \ \"description\": \"The video's Motion Picture Association of America - (MPAA) rating.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ]\n },\n - \ \"nbcRating\": {\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\"\n - \ },\n \"mocRating\": {\n \"description\": \"The video's - Ministerio de Cultura (Colombia) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ]\n },\n \"fpbRatingReasons\": - {\n \"type\": \"array\",\n \"description\": \"Reasons that - explain why the video received its FPB (South Africa) rating.\",\n \"items\": - {\n \"enumDescriptions\": [\n \"\",\n \"South - Africa rating content descriptors.\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"type\": \"string\"\n }\n },\n - \ \"rcnofRating\": {\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Hungarian - Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\",\n - \ \"type\": \"string\"\n },\n \"catvRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n - \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n - \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n - \ \"catvE\"\n ],\n \"description\": \"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.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ]\n },\n \"fpbRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X18\",\n - \ \"XX\",\n \"\",\n \"10\"\n ]\n - \ },\n \"cscfRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\",\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"nkclvRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Nacion\xE3lais Kino - centrs (National Film Centre of Latvia).\",\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"acbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"enum\": [\n \"acbUnspecified\",\n - \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n - \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n - \ \"acbR18plus\",\n \"acbUnrated\"\n ]\n },\n - \ \"kfcbRating\": {\n \"description\": \"The video's rating - from the Kenya Film Classification Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"menaMpaaRating\": - {\n \"enum\": [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n - \ \"menaMpaaPg\",\n \"menaMpaaPg13\",\n \"menaMpaaR\",\n - \ \"menaMpaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ],\n \"type\": \"string\",\n \"description\": - \"The rating system for MENA countries, a clone of MPAA. It is needed to prevent - titles go live w/o additional QC check, since some of them can be inappropriate - for the countries at all. See b/33408548 for more details.\"\n },\n - \ \"csaRating\": {\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from France's Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast - content.\"\n },\n \"nmcRating\": {\n \"enum\": [\n - \ \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n - \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n - \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ],\n - \ \"description\": \"The National Media Council ratings system for - United Arab Emirates.\",\n \"type\": \"string\"\n },\n \"cnaRating\": - {\n \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Romania's CONSILIUL NATIONAL - AL AUDIOVIZUALULUI (CNA).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AP\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"18+\",\n \"\"\n ]\n },\n \"eirinRating\": - {\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ],\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n - \ \"type\": \"string\"\n },\n \"pefilmRating\": {\n - \ \"description\": \"The video's rating in Peru.\",\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"mpaatRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"description\": \"The rating - system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ],\n \"type\": \"string\"\n },\n - \ \"mccaaRating\": {\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Malta's Film Age-Classification Board.\",\n \"type\": \"string\"\n - \ },\n \"cncRating\": {\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"description\": \"Rating - system in France - Commission de classification cinematographique\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"ytRating\": {\n \"description\": \"A rating that YouTube - uses to identify age-restricted content.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ]\n }\n },\n \"description\": \"Ratings schemes. - The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n - \ \"id\": \"ContentRating\",\n \"type\": \"object\"\n },\n \"PlaylistContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistContentDetails\",\n - \ \"properties\": {\n \"itemCount\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The number of videos in the playlist.\",\n \"type\": - \"integer\"\n }\n }\n },\n \"VideoLiveStreamingDetails\": - {\n \"id\": \"VideoLiveStreamingDetails\",\n \"properties\": {\n - \ \"scheduledStartTime\": {\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast is scheduled to begin.\",\n \"format\": - \"date-time\"\n },\n \"scheduledEndTime\": {\n \"type\": - \"string\",\n \"description\": \"The time that the broadcast is scheduled - to end. If the value is empty or the property is not present, then the broadcast - is scheduled to contiue indefinitely.\",\n \"format\": \"date-time\"\n - \ },\n \"concurrentViewers\": {\n \"description\": \"The - number of viewers currently watching the broadcast. The property and its value - will be present if the broadcast has current viewers and the broadcast owner - has not hidden the viewcount for the video. Note that YouTube stops tracking - the number of concurrent viewers for a broadcast when the broadcast ends. - So, this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"activeLiveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the currently active live chat attached to this video. This field is filled - only if the video is a currently live broadcast that has live chat. Once the - broadcast transitions to complete this field will be removed and the live - chat closed down. For persistent broadcasts that live chat id will no longer - be tied to this video but rather to the new video being displayed at the persistent - page.\"\n },\n \"actualStartTime\": {\n \"description\": - \"The time that the broadcast actually started. This value will not be available - until the broadcast begins.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"actualEndTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The time that the broadcast actually - ended. This value will not be available until the broadcast is over.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Details about the live streaming metadata.\"\n },\n - \ \"ChannelStatistics\": {\n \"id\": \"ChannelStatistics\",\n \"properties\": - {\n \"viewCount\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of times the channel - has been viewed.\"\n },\n \"subscriberCount\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of subscribers that the channel has.\"\n },\n \"videoCount\": - {\n \"description\": \"The number of videos uploaded to the channel.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"hiddenSubscriberCount\": {\n \"description\": \"Whether - or not the number of subscribers is shown for this user.\",\n \"type\": - \"boolean\"\n },\n \"commentCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of comments for the channel.\",\n - \ \"format\": \"uint64\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Statistics about a channel: number of subscribers, - number of videos in the channel, etc.\"\n },\n \"TokenPagination\": - {\n \"id\": \"TokenPagination\",\n \"properties\": {},\n \"type\": - \"object\",\n \"description\": \"Stub token pagination template to suppress - results.\"\n },\n \"VideoTopicDetails\": {\n \"description\": \"Freebase - topic information related to the video.\",\n \"id\": \"VideoTopicDetails\",\n - \ \"properties\": {\n \"relevantTopicIds\": {\n \"type\": - \"array\",\n \"description\": \"Similar to topic_id, except that - these topics are merely relevant to the video. These are topics that may be - mentioned in, or appear in the video. You can retrieve information about each - topic using Freebase Topic API.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"topicIds\": {\n \"type\": - \"array\",\n \"description\": \"A list of Freebase topic IDs that - are centrally associated with the video. These are topics that are centrally - featured in the video, and it can be said that the video is mainly about each - of these. You can retrieve information about each topic using the \\u003c - a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase Topic - API.\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"topicCategories\": {\n \"description\": \"A - list of Wikipedia URLs that provide a high-level description of the video's - content.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"type\": \"object\"\n - \ },\n \"ThumbnailDetails\": {\n \"description\": \"Internal representation - of thumbnails for a YouTube resource.\",\n \"type\": \"object\",\n \"id\": - \"ThumbnailDetails\",\n \"properties\": {\n \"maxres\": {\n \"description\": - \"The maximum resolution quality image for this resource.\",\n \"$ref\": - \"Thumbnail\"\n },\n \"high\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The high quality image for this resource.\"\n - \ },\n \"default\": {\n \"description\": \"The default - image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"standard\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The standard quality image for this resource.\"\n },\n \"medium\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The medium - quality image for this resource.\"\n }\n }\n },\n \"I18nLanguageSnippet\": - {\n \"id\": \"I18nLanguageSnippet\",\n \"description\": \"Basic - details about an i18n language, such as language code and human-readable name.\",\n - \ \"properties\": {\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"A short BCP-47 code that uniquely identifies - a language.\"\n },\n \"name\": {\n \"description\": - \"The human-readable name of the language in the language itself.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReportReason\": - {\n \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - this abuse report reason.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReason\"\n - \ }\n },\n \"id\": \"VideoAbuseReportReason\",\n \"type\": - \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"id\": - \"LiveChatMemberMilestoneChatDetails\",\n \"properties\": {\n \"memberMonth\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\"\n },\n \"memberLevelName\": - {\n \"description\": \"The name of the Level at which the viever - is a member. The Level names are defined by the YouTube channel offering the - Membership. In some situations this field isn't filled.\",\n \"type\": - \"string\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the member to this Member Milestone Chat. This field - is empty for messages without a comment from the member.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatModerator\": - {\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the moderator.\",\n \"$ref\": - \"LiveChatModeratorSnippet\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the moderator.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveChatModerator\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveChatModerator\",\n \"description\": \"A *liveChatModerator* resource - represents a moderator for a YouTube live chat. A chat moderator has the ability - to ban/unban users from a chat, remove message, etc.\",\n \"type\": \"object\"\n - \ },\n \"LiveChatBanSnippet\": {\n \"id\": \"LiveChatBanSnippet\",\n - \ \"properties\": {\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"liveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The chat this ban is pertinent to.\"\n - \ },\n \"banDurationSeconds\": {\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"An invalid ban type.\",\n - \ \"A permanent ban.\",\n \"A temporary ban.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"description\": - \"The type of ban.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"LanguageTag\": {\n \"type\": \"object\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LanguageTag\"\n },\n \"ChannelStatus\": {\n \"type\": - \"object\",\n \"properties\": {\n \"longUploadsStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The long uploads status of this - channel. See https://support.google.com/youtube/answer/71673 for more information.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ]\n },\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"Privacy status of the channel.\"\n },\n \"madeForKids\": {\n - \ \"type\": \"boolean\"\n },\n \"isLinked\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\"\n }\n },\n \"description\": \"JSON template for - the status part of a channel.\",\n \"id\": \"ChannelStatus\"\n },\n - \ \"ActivityContentDetailsPromotedItem\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"destinationUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should direct - the user to, if the user chooses to visit the advertiser's website.\"\n },\n - \ \"descriptionText\": {\n \"type\": \"string\",\n \"description\": - \"The text description to accompany the promoted item.\"\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\",\n \"type\": \"string\"\n },\n \"customCtaButtonText\": - {\n \"type\": \"string\",\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\"\n },\n \"forecastingUrl\": {\n \"description\": - \"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.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"creativeViewUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user was shown this promoted item.\",\n \"type\": \"string\"\n - \ },\n \"adTag\": {\n \"description\": \"The URL the - client should fetch to request a promoted item.\",\n \"type\": \"string\"\n - \ },\n \"ctaType\": {\n \"description\": \"The type - of call-to-action, a message to the user indicating action that can be taken.\",\n - \ \"enum\": [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"clickTrackingUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user clicked through on this promoted item.\",\n \"type\": - \"string\"\n },\n \"impressionUrl\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The list of impression URLs. The client should - ping all of these URLs to indicate that the user was shown this promoted item.\"\n - \ }\n },\n \"description\": \"Details about a resource which - is being promoted.\",\n \"id\": \"ActivityContentDetailsPromotedItem\"\n - \ },\n \"PlaylistItemContentDetails\": {\n \"properties\": {\n \"endAt\": - {\n \"type\": \"string\",\n \"description\": \"The time, - measured in seconds from the start of the video, when the video should stop - playing. (The playlist owner can specify the times when the video should start - and stop playing when the video is played in the context of the playlist.) - By default, assume that the video.endTime is the end of the video.\"\n },\n - \ \"note\": {\n \"type\": \"string\",\n \"description\": - \"A user-generated note for this item.\"\n },\n \"startAt\": - {\n \"description\": \"The time, measured in seconds from the start - of the video, when the video should start playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) The default value is 0.\",\n \"type\": - \"string\"\n },\n \"videoPublishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the video - was published to YouTube.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify a video. To retrieve the video - resource, set the id query parameter to this value in your API request.\"\n - \ }\n },\n \"id\": \"PlaylistItemContentDetails\",\n \"type\": - \"object\"\n },\n \"LocalizedString\": {\n \"properties\": {\n - \ \"value\": {\n \"type\": \"string\"\n },\n \"language\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LocalizedString\"\n },\n \"ActivitySnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The type of activity that the resource describes.\",\n \"enum\": - [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ]\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel associated with the activity.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the video was uploaded.\"\n - \ },\n \"title\": {\n \"description\": \"The title of - the resource primarily associated with the activity.\",\n \"type\": - \"string\"\n },\n \"groupId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel responsible for this activity\"\n },\n \"description\": - {\n \"description\": \"The description of the resource primarily - associated with the activity. @mutable youtube.activities.insert\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"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.\"\n }\n },\n - \ \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\",\n \"id\": - \"ActivitySnippet\"\n },\n \"AccessPolicy\": {\n \"id\": \"AccessPolicy\",\n - \ \"properties\": {\n \"allowed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"The value of allowed indicates whether the access - to the policy is allowed or denied by default.\"\n },\n \"exception\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of region codes - that identify countries where the default policy do not apply.\"\n }\n - \ },\n \"description\": \"Rights management policy for YouTube resources.\",\n - \ \"type\": \"object\"\n },\n \"PlaylistItemListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of playlist items that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n }\n }\n },\n - \ \"id\": \"PlaylistItemListResponse\"\n },\n \"ThirdPartyLinkSnippet\": - {\n \"description\": \"Basic information about a third party account - link, including its type and type-specific information.\",\n \"type\": - \"object\",\n \"properties\": {\n \"type\": {\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Type of the link named after the entities that - are being linked.\"\n },\n \"channelToStoreLink\": {\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n }\n - \ },\n \"id\": \"ThirdPartyLinkSnippet\"\n },\n \"ChannelSnippet\": - {\n \"properties\": {\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the channel - was created.\",\n \"format\": \"date-time\"\n },\n \"thumbnails\": - {\n \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"customUrl\": {\n \"description\": \"The custom - url of the channel.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel's default title - and description.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - title.\"\n },\n \"description\": {\n \"description\": - \"The description of the channel.\",\n \"type\": \"string\"\n },\n - \ \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a channel, including title, description and thumbnails.\",\n - \ \"id\": \"ChannelSnippet\"\n },\n \"SuperChatEventSnippet\": {\n - \ \"properties\": {\n \"superStickerMetadata\": {\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"channelId\": {\n \"description\": \"Channel - id where the event occurred.\",\n \"type\": \"string\"\n },\n - \ \"displayString\": {\n \"type\": \"string\",\n \"description\": - \"A rendered string that displays the purchase amount and currency (e.g., - \\\"$1.00\\\"). The string is rendered for the given language.\"\n },\n - \ \"commentText\": {\n \"type\": \"string\",\n \"description\": - \"The text contents of the comment left by the user.\"\n },\n \"currency\": - {\n \"description\": \"The currency in which the purchase was made. - ISO 4217.\",\n \"type\": \"string\"\n },\n \"amountMicros\": - {\n \"description\": \"The purchase amount, in micros of the purchase - currency. e.g., 1 is represented as 1000000.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"isSuperStickerEvent\": - {\n \"type\": \"boolean\",\n \"description\": \"True if - this event is a Super Sticker event.\"\n },\n \"supporterDetails\": - {\n \"description\": \"Details about the supporter.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"messageType\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\"\n },\n \"createdAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the event occurred.\"\n }\n },\n \"id\": - \"SuperChatEventSnippet\",\n \"type\": \"object\"\n },\n \"VideoMonetizationDetails\": - {\n \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The value of access indicates whether the video - can be monetized or not.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoMonetizationDetails\",\n \"description\": \"Details - about monetization of a YouTube Video.\"\n },\n \"VideoFileDetails\": - {\n \"description\": \"Describes original video file properties, including - technical details about audio and video streams, but also metadata information - like content length, digitization time, or geotagging information.\",\n \"id\": - \"VideoFileDetails\",\n \"properties\": {\n \"bitrateBps\": {\n - \ \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\"\n },\n \"audioStreams\": {\n \"items\": {\n - \ \"$ref\": \"VideoFileDetailsAudioStream\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of audio streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about an audio stream.\"\n },\n \"videoStreams\": {\n \"type\": - \"array\",\n \"description\": \"A list of video streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about a video stream.\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ }\n },\n \"fileName\": {\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\",\n \"type\": \"string\"\n },\n - \ \"fileSize\": {\n \"description\": \"The uploaded file's - size in bytes. This field is present whether a video file or another type - of file was uploaded.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"fileType\": {\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"description\": \"The uploaded - file's type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\"\n },\n \"container\": - {\n \"type\": \"string\",\n \"description\": \"The uploaded - video file's container format.\"\n },\n \"durationMs\": {\n - \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The length of the uploaded video in milliseconds.\"\n },\n \"creationTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the uploaded video file was created. The value is specified - in ISO 8601 format. Currently, the following ISO 8601 formats are supported: - - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: - YYYY-MM-DDTHH:MM:SS+HH:MM \"\n }\n },\n \"type\": \"object\"\n - \ },\n \"CaptionListResponse\": {\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#captionListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Caption\"\n },\n \"description\": - \"A list of captions that match the request criteria.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"id\": \"CaptionListResponse\",\n \"type\": \"object\"\n - \ },\n \"CommentListResponse\": {\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"default\": \"youtube#commentListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"description\": \"A list of comments - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"CommentListResponse\"\n },\n \"ActivityContentDetailsComment\": {\n - \ \"id\": \"ActivityContentDetailsComment\",\n \"properties\": {\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with the comment.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Information about a resource that received a comment.\"\n - \ },\n \"ChannelBrandingSettings\": {\n \"properties\": {\n \"channel\": - {\n \"description\": \"Branding properties for the channel view.\",\n - \ \"$ref\": \"ChannelSettings\"\n },\n \"hints\": {\n - \ \"description\": \"Additional experimental branding properties.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"PropertyValue\"\n }\n },\n \"image\": {\n \"$ref\": - \"ImageSettings\",\n \"description\": \"Branding properties for branding - images.\"\n },\n \"watch\": {\n \"$ref\": \"WatchSettings\",\n - \ \"description\": \"Branding properties for the watch page.\"\n }\n - \ },\n \"description\": \"Branding properties of a YouTube channel.\",\n - \ \"type\": \"object\",\n \"id\": \"ChannelBrandingSettings\"\n },\n - \ \"VideoRecordingDetails\": {\n \"type\": \"object\",\n \"description\": - \"Recording information associated with the video.\",\n \"id\": \"VideoRecordingDetails\",\n - \ \"properties\": {\n \"locationDescription\": {\n \"description\": - \"The text description of the location where the video was recorded.\",\n - \ \"type\": \"string\"\n },\n \"recordingDate\": {\n - \ \"description\": \"The date and time when the video was recorded.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"location\": {\n \"description\": \"The geolocation information - associated with the video.\",\n \"$ref\": \"GeoPoint\"\n }\n - \ }\n },\n \"LiveStreamConfigurationIssue\": {\n \"type\": - \"object\",\n \"id\": \"LiveStreamConfigurationIssue\",\n \"properties\": - {\n \"description\": {\n \"description\": \"The long-form - description of the issue and how to resolve it.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"description\": \"The kind of - error happening.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ]\n },\n - \ \"severity\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"description\": \"How severe this issue is to the - stream.\"\n },\n \"reason\": {\n \"type\": \"string\",\n - \ \"description\": \"The short-form reason for this issue.\"\n }\n - \ }\n },\n \"Playlist\": {\n \"description\": \"A *playlist* - resource represents a YouTube playlist. A playlist is a collection of videos - that can be viewed sequentially and shared with other users. A playlist can - contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"id\": \"Playlist\",\n \"properties\": - {\n \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlist\"\n - \ },\n \"status\": {\n \"$ref\": \"PlaylistStatus\",\n - \ \"description\": \"The status object contains status information - for the playlist.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\"\n },\n - \ \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": - \"The player object contains information that you would use to play the playlist - in an embedded player.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\",\n \"$ref\": \"PlaylistSnippet\"\n },\n - \ \"localizations\": {\n \"description\": \"Localizations for - different languages\",\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n }\n }\n - \ },\n \"type\": \"object\"\n },\n \"I18nRegionListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#i18nRegionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of regions where YouTube is available. In this map, the i18n region ID - is the map key, and its value is the corresponding i18nRegion resource.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n }\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"I18nRegionListResponse\"\n },\n - \ \"VideoSuggestionsTagSuggestion\": {\n \"properties\": {\n \"categoryRestricts\": - {\n \"type\": \"array\",\n \"description\": \"A set of video - categories for which the tag is relevant. You can use this information to - display appropriate tag suggestions based on the video category that the video - uploader associates with the video. By default, tag suggestions are relevant - for all categories if there are no restricts defined for the keyword.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"tag\": {\n \"description\": \"The keyword tag suggested - for the video.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A single tag suggestion with it's relevance - information.\",\n \"id\": \"VideoSuggestionsTagSuggestion\"\n },\n - \ \"Video\": {\n \"type\": \"object\",\n \"id\": \"Video\",\n - \ \"properties\": {\n \"recordingDetails\": {\n \"description\": - \"The recordingDetails object encapsulates information about the location, - date and address where the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the video, such as its title, description, - and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n \"topicDetails\": - {\n \"$ref\": \"VideoTopicDetails\",\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\"\n },\n \"ageGating\": {\n \"$ref\": - \"VideoAgeGating\",\n \"description\": \"Age restriction details - related to a video. This data can only be retrieved by the video owner.\"\n - \ },\n \"suggestions\": {\n \"$ref\": \"VideoSuggestions\",\n - \ \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\"\n - \ },\n \"processingDetails\": {\n \"$ref\": \"VideoProcessingDetails\",\n - \ \"description\": \"The processingDetails object encapsulates information - about YouTube's progress in processing the uploaded video file. The properties - in the object identify the current processing status and an estimate of the - time remaining until YouTube finishes processing the video. This part also - indicates whether different types of data or content, such as file details - or thumbnail images, are available for the video. The processingProgress object - is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\"\n },\n \"projectDetails\": - {\n \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"statistics\": - {\n \"$ref\": \"VideoStatistics\",\n \"description\": \"The - statistics object contains statistics about the video.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"default\": \"youtube#video\"\n },\n \"contentDetails\": - {\n \"$ref\": \"VideoContentDetails\",\n \"description\": - \"The contentDetails object contains information about the video content, - including the length of the video and its aspect ratio.\"\n },\n \"player\": - {\n \"$ref\": \"VideoPlayer\",\n \"description\": \"The - player object contains information that you would use to play the video in - an embedded player.\"\n },\n \"status\": {\n \"$ref\": - \"VideoStatus\",\n \"description\": \"The status object contains - information about the video's uploading, processing, and privacy statuses.\"\n - \ },\n \"localizations\": {\n \"description\": \"The - localizations object contains localized versions of the basic details about - the video, such as its title and description.\",\n \"type\": \"object\",\n - \ \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ }\n },\n \"id\": {\n \"annotations\": {\n - \ \"required\": [\n \"youtube.videos.update\"\n ]\n - \ },\n \"description\": \"The ID that YouTube uses to uniquely - identify the video.\",\n \"type\": \"string\"\n },\n \"fileDetails\": - {\n \"description\": \"The fileDetails object encapsulates information - about the video file that was uploaded to YouTube, including the file's resolution, - duration, audio and video codecs, stream bitrates, and more. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n - \ },\n \"liveStreamingDetails\": {\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"monetizationDetails\": - {\n \"description\": \"The monetizationDetails object encapsulates - information about the monetization status of the video.\",\n \"$ref\": - \"VideoMonetizationDetails\"\n }\n },\n \"description\": - \"A *video* resource represents a YouTube video.\"\n },\n \"I18nLanguageListResponse\": - {\n \"id\": \"I18nLanguageListResponse\",\n \"properties\": {\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n },\n \"description\": - \"A list of supported i18n languages. In this map, the i18n language ID is - the map key, and its value is the corresponding i18nLanguage resource.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"InvideoBranding\": - {\n \"description\": \"LINT.IfChange Describes an invideo branding.\",\n - \ \"type\": \"object\",\n \"id\": \"InvideoBranding\",\n \"properties\": - {\n \"timing\": {\n \"$ref\": \"InvideoTiming\",\n \"description\": - \"The temporal position within the video where watermark will be displayed.\"\n - \ },\n \"imageBytes\": {\n \"format\": \"byte\",\n \"type\": - \"string\",\n \"description\": \"The bytes the uploaded image. Only - used in api to youtube communication.\"\n },\n \"position\": - {\n \"description\": \"The spatial position within the video where - the branding watermark will be displayed.\",\n \"$ref\": \"InvideoPosition\"\n - \ },\n \"targetChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel to which this branding links. If - not present it defaults to the current channel.\"\n },\n \"imageUrl\": - {\n \"description\": \"The url of the uploaded image. Only used in - apiary to api communication.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"SearchListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"default\": \"youtube#searchListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"regionCode\": {\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"Pagination - information for token pagination.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SearchResult\"\n }\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n },\n - \ \"id\": \"SearchListResponse\"\n },\n \"LiveChatMessageSnippet\": - {\n \"properties\": {\n \"fanFundingEventDetails\": {\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n - \ \"description\": \"Details about the Super Chat event, this is only - set if the type is 'superChatEvent'.\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"description\": \"Details about the Gift Membership Received - event, this is only set if the type is 'giftMembershipReceivedEvent'.\",\n - \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n - \ \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n - \ \"description\": \"Details about the New Member Announcement event, - this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" - is the new term for \\\"sponsor\\\".\"\n },\n \"memberMilestoneChatDetails\": - {\n \"description\": \"Details about the Member Milestone Chat event, - this is only set if the type is 'memberMilestoneChatEvent'.\",\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"description\": \"The type - of message, this will always be present, it determines the contents of the - message as well as which fields will be present.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ]\n },\n \"authorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the user that authored - this message, this field is not always filled. textMessageEvent - the user - that wrote the message fanFundingEvent - the user that funded the broadcast - newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the message was orignally published.\"\n },\n - \ \"hasDisplayContent\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the message has display content that should be displayed to users.\"\n - \ },\n \"superStickerDetails\": {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n - \ \"description\": \"Details about the Super Sticker event, this is - only set if the type is 'superStickerEvent'.\"\n },\n \"displayMessage\": - {\n \"type\": \"string\",\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"messageRetractedDetails\": {\n \"$ref\": - \"LiveChatMessageRetractedDetails\"\n },\n \"liveChatId\": {\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"Next ID: 33\",\n \"type\": \"object\"\n },\n - \ \"ChannelTopicDetails\": {\n \"type\": \"object\",\n \"description\": - \"Freebase topic information related to the channel.\",\n \"properties\": - {\n \"topicIds\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\"\n },\n - \ \"topicCategories\": {\n \"type\": \"array\",\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"id\": - \"ChannelTopicDetails\"\n },\n \"ActivityContentDetailsBulletin\": {\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"type\": \"object\",\n \"description\": \"Details about a channel - bulletin post.\"\n },\n \"LiveStreamStatus\": {\n \"properties\": - {\n \"streamStatus\": {\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"healthStatus\": - {\n \"$ref\": \"LiveStreamHealthStatus\",\n \"description\": - \"The health status of the stream.\"\n }\n },\n \"description\": - \"Brief description of the live stream status.\",\n \"id\": \"LiveStreamStatus\",\n - \ \"type\": \"object\"\n },\n \"ChannelSection\": {\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#channelSection\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSection\\\".\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the channel section, such as its type, style and title.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"targeting\": {\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n },\n - \ \"localizations\": {\n \"description\": \"Localizations for - different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"type\": \"object\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelSection\"\n },\n \"ChannelSectionContentDetails\": {\n \"description\": - \"Details about a channelsection, including playlists and channels.\",\n \"id\": - \"ChannelSectionContentDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"channels\": {\n \"description\": \"The channel ids for - type multiple_channels.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"playlists\": - {\n \"description\": \"The playlist ids for type single_playlist - and multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n }\n }\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"type\": \"object\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveChatSuperStickerDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatSuperStickerDetails\",\n \"properties\": - {\n \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"Information about the Super Sticker.\",\n - \ \"$ref\": \"SuperStickerMetadata\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"tier\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\"\n },\n - \ \"amountMicros\": {\n \"format\": \"uint64\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"SubscriptionContentDetails\": - {\n \"properties\": {\n \"activityType\": {\n \"enum\": - [\n \"subscriptionActivityTypeUnspecified\",\n \"all\",\n - \ \"uploads\"\n ],\n \"description\": \"The type - of activity this subscription is for (only uploads, everything).\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"newItemCount\": {\n \"description\": - \"The number of new items in the subscription since its content was last read.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"totalItemCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The approximate number of items that the subscription points to.\",\n \"type\": - \"integer\"\n }\n },\n \"id\": \"SubscriptionContentDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Details about the content - to witch a subscription refers.\"\n },\n \"VideoListResponse\": {\n - \ \"id\": \"VideoListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Video\"\n },\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n }\n },\n \"LiveBroadcastSnippet\": {\n - \ \"id\": \"LiveBroadcastSnippet\",\n \"description\": \"Basic broadcast - information.\",\n \"properties\": {\n \"actualStartTime\": {\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the broadcast actually started. This information - is only available once the broadcast's state is live.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast was added to YouTube's live broadcast schedule.\",\n - \ \"format\": \"date-time\"\n },\n \"scheduledStartTime\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the broadcast is scheduled to start.\"\n },\n - \ \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\",\n \"type\": \"string\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The id of the live chat for this broadcast.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is publishing the broadcast.\",\n \"type\": \"string\"\n - \ },\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to end.\",\n \"type\": \"string\"\n },\n \"actualEndTime\": - {\n \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"isDefaultBroadcast\": {\n \"description\": \"Indicates - whether this broadcast is the default broadcast. Internal only.\",\n \"type\": - \"boolean\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the broadcast. For each nested - object in this object, the key is the name of the thumbnail image, and the - value is an object that contains other information about the thumbnail.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"description\": - {\n \"description\": \"The broadcast's description. As with the title, - you can set this field by modifying the broadcast resource or by setting the - description field of the corresponding video resource.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"Entity\": - {\n \"properties\": {\n \"url\": {\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"typeId\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"Entity\"\n },\n \"LiveBroadcastContentDetails\": - {\n \"description\": \"Detailed settings of a broadcast.\",\n \"properties\": - {\n \"closedCaptionsType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ]\n },\n \"enableContentEncryption\": - {\n \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n - \ },\n \"recordFromStart\": {\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\",\n \"type\": \"boolean\"\n - \ },\n \"enableLowLatency\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether this broadcast has low latency - enabled.\"\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the live - stream referenced by boundStreamId was last updated.\",\n \"type\": - \"string\"\n },\n \"stereoLayout\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n - \ \"leftRight\",\n \"topBottom\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The 3D stereo layout of this broadcast. - This defaults to mono.\"\n },\n \"mesh\": {\n \"description\": - \"The mesh for projecting the video if projection is mesh. The mesh value - must be a UTF-8 string containing the base-64 encoding of 3D mesh data that - follows the Spherical Video V2 RFC specification for an mshp box, excluding - the box size and type but including the following four reserved zero bytes - for the version and flags.\",\n \"format\": \"byte\",\n \"type\": - \"string\"\n },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n },\n \"enableAutoStart\": {\n \"description\": - \"This setting indicates whether auto start is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\",\n \"type\": \"boolean\"\n },\n \"latencyPreference\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Best for: highest quality viewer playbacks and higher resolutions.\",\n - \ \"Best for: near real-time interaction, with minimal playback - buffering.\",\n \"Best for: real-time interaction Does not support: - Closed captions, 1440p, and 4k resolutions\"\n ],\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\"\n },\n - \ \"boundStreamId\": {\n \"type\": \"string\",\n \"description\": - \"This value uniquely identifies the live stream bound to the broadcast.\"\n - \ },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"enableDvr\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting determines whether - viewers can access DVR controls while watching the video. DVR controls enable - the viewer to control the video playback experience by pausing, rewinding, - or fast forwarding content. The default value for this property is true. *Important:* - You must set the value to true and also set the enableArchive property's value - to true if you want to make playback available immediately after the broadcast - ends.\"\n },\n \"enableAutoStop\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether auto stop is enabled - for this broadcast. The default value for this property is false. This setting - can only be used by Events.\"\n },\n \"projection\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\"\n - \ },\n \"startWithSlate\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\"\n },\n \"monitorStream\": - {\n \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\",\n \"$ref\": - \"MonitorStreamInfo\"\n }\n },\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"type\": \"object\"\n },\n \"RelatedEntity\": {\n \"properties\": - {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"RelatedEntity\"\n },\n \"Member\": - {\n \"id\": \"Member\",\n \"description\": \"A *member* resource - represents a member for a YouTube channel. A member provides recurring monetary - support to a creator and receives special benefits.\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n \"description\": - \"The snippet object contains basic details about the member.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#member\\\".\",\n \"default\": - \"youtube#member\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"TestItemTestItemSnippet\": {\n \"properties\": {},\n \"id\": - \"TestItemTestItemSnippet\",\n \"type\": \"object\"\n },\n \"GeoPoint\": - {\n \"type\": \"object\",\n \"description\": \"Geographical coordinates - of a point, in WGS84.\",\n \"properties\": {\n \"altitude\": {\n - \ \"description\": \"Altitude above the reference ellipsoid, in meters.\",\n - \ \"type\": \"number\",\n \"format\": \"double\"\n },\n - \ \"longitude\": {\n \"format\": \"double\",\n \"description\": - \"Longitude in degrees.\",\n \"type\": \"number\"\n },\n \"latitude\": - {\n \"format\": \"double\",\n \"type\": \"number\",\n \"description\": - \"Latitude in degrees.\"\n }\n },\n \"id\": \"GeoPoint\"\n - \ },\n \"LiveChatMessageDeletedDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageDeletedDetails\",\n \"properties\": {\n - \ \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"PlaylistStatus\": {\n \"properties\": {\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The playlist's - privacy status.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"public\",\n \"unlisted\",\n \"private\"\n - \ ]\n }\n },\n \"type\": \"object\",\n \"id\": - \"PlaylistStatus\"\n },\n \"ActivityContentDetailsSocial\": {\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\"\n },\n \"referenceUrl\": - {\n \"description\": \"The URL of the social network post.\",\n \"type\": - \"string\"\n },\n \"author\": {\n \"description\": - \"The author of the social network post.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"description\": \"The name of - the social network.\",\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"An image of the post's author.\"\n }\n },\n \"description\": - \"Details about a social network post.\",\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsSocial\"\n },\n \"Channel\": {\n \"type\": - \"object\",\n \"description\": \"A *channel* resource contains information - about a YouTube channel.\",\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#channel\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channel\\\".\"\n },\n \"status\": - {\n \"$ref\": \"ChannelStatus\",\n \"description\": \"The - status object encapsulates information about the privacy status of the channel.\"\n - \ },\n \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n - \ \"description\": \"The statistics object encapsulates statistics - for the channel.\"\n },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the channel, such as its title, description, - and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n },\n - \ \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n - \ \"contentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"auditDetails\": {\n \"description\": - \"The auditionDetails object encapsulates channel data that is relevant for - YouTube Partners during the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n - \ },\n \"brandingSettings\": {\n \"description\": \"The - brandingSettings object encapsulates information about the branding of the - channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel.\",\n \"type\": \"string\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object encapsulates information about the channel's content.\",\n \"$ref\": - \"ChannelContentDetails\"\n },\n \"topicDetails\": {\n \"$ref\": - \"ChannelTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the channel.\"\n - \ }\n },\n \"id\": \"Channel\"\n },\n \"ThirdPartyLink\": - {\n \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\",\n \"id\": \"ThirdPartyLink\",\n \"properties\": {\n - \ \"kind\": {\n \"default\": \"youtube#thirdPartyLink\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n - \ },\n \"linkingToken\": {\n \"description\": \"The - linking_token identifies a YouTube account and channel with which the third - party account is linked.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n },\n \"status\": - {\n \"$ref\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The status object contains information about the status of the link.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelConversionPings\": - {\n \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\",\n \"id\": - \"ChannelConversionPings\",\n \"properties\": {\n \"pings\": {\n - \ \"description\": \"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.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ }\n }\n },\n \"type\": \"object\"\n },\n \"MembershipsLevelListResponse\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsLevelListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#membershipsLevelListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"description\": \"A list of pricing levels offered by a creator - to the fans.\",\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n - \ },\n \"type\": \"array\"\n }\n }\n },\n - \ \"LiveChatModeratorListResponse\": {\n \"type\": \"object\",\n \"id\": - \"LiveChatModeratorListResponse\",\n \"properties\": {\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": - \"A list of moderators that match the request criteria.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveChatModeratorListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ }\n },\n \"SuperChatEventListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"SuperChatEventListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of Super Chat purchases that match the - request criteria.\",\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n - \ }\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#superChatEventListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"CommentSnippet\": - {\n \"properties\": {\n \"textOriginal\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"updatedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was last updated.\"\n - \ },\n \"parentId\": {\n \"type\": \"string\",\n \"description\": - \"The unique id of the parent comment, only set for replies.\"\n },\n - \ \"canRate\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the current viewer can rate this comment.\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the video the comment - refers to, if any.\"\n },\n \"likeCount\": {\n \"description\": - \"The total number of likes this comment has received.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"viewerRating\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ]\n },\n \"moderationStatus\": {\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ]\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the comment was originally published.\"\n },\n \"textDisplay\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"channelId\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"authorDisplayName\": {\n \"description\": - \"The name of the user who posted the comment.\",\n \"type\": \"string\"\n - \ },\n \"authorChannelId\": {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a comment, such as its author and text.\",\n \"id\": \"CommentSnippet\"\n - \ },\n \"PlaylistSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails.\",\n - \ \"id\": \"PlaylistSnippet\",\n \"properties\": {\n \"thumbnailVideoId\": - {\n \"description\": \"Note: if the playlist has a custom thumbnail, - this field will not be populated. The video id selected by the user that will - be used as the thumbnail of this playlist. This field defaults to the first - publicly viewable video in the playlist, if: 1. The user has never selected - a video to be the thumbnail of the playlist. 2. The user selects a video to - be the thumbnail, and then removes that video from the playlist. 3. The user - selects a non-owned video to be the thumbnail, but that video becomes private, - or gets deleted.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"The channel - title of the channel that the video belongs to.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The playlist's - description.\"\n },\n \"tags\": {\n \"description\": - \"Keyword tags associated with the playlist.\",\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the playlist was created.\"\n },\n \"localized\": - {\n \"description\": \"Localized title and description, read-only.\",\n - \ \"$ref\": \"PlaylistLocalization\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlists.insert\",\n \"youtube.playlists.update\"\n - \ ]\n },\n \"description\": \"The playlist's title.\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the playlist.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the playlist's default - title and description.\"\n }\n }\n },\n \"ChannelAuditDetails\": - {\n \"properties\": {\n \"contentIdClaimsGoodStanding\": {\n \"description\": - \"Whether or not the channel has any unresolved claims.\",\n \"type\": - \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether or - not the channel respects the community guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelAuditDetails\",\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\"\n },\n \"LiveBroadcastStatus\": - {\n \"type\": \"object\",\n \"description\": \"Live broadcast state.\",\n - \ \"properties\": {\n \"liveBroadcastPriority\": {\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"description\": \"Priority of the live broadcast event (internal - state).\"\n },\n \"lifeCycleStatus\": {\n \"enum\": - [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"enumDescriptions\": [\n \"No value or the - value is unknown.\",\n \"Incomplete settings, but otherwise valid\",\n - \ \"Complete settings\",\n \"Visible only to partner, - may need special UI treatment\",\n \"Viper is recording; this means - the \\\"clock\\\" is running\",\n \"The broadcast is finished.\",\n - \ \"This broadcast was removed by admin action\",\n \"Transition - into TESTING has been requested\",\n \"Transition into LIVE has - been requested\"\n ],\n \"type\": \"string\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"madeForKids\": - {\n \"description\": \"Whether the broadcast is made for kids or - not, decided by YouTube instead of the creator. This field is read only.\",\n - \ \"type\": \"boolean\"\n },\n \"recordingStatus\": - {\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"description\": - \"The broadcast's recording status.\",\n \"type\": \"string\"\n },\n - \ \"privacyStatus\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\"\n }\n },\n \"id\": \"LiveBroadcastStatus\"\n - \ },\n \"ChannelSectionSnippet\": {\n \"properties\": {\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel section's default - title and description.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel - section's title for multiple_playlists and multiple_channels.\"\n },\n - \ \"position\": {\n \"format\": \"uint32\",\n \"description\": - \"The position of the channel section in the channel.\",\n \"type\": - \"integer\"\n },\n \"type\": {\n \"type\": \"string\",\n - \ \"description\": \"The type of the channel section.\",\n \"enum\": - [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\"\n },\n \"style\": {\n \"description\": - \"The style of the channel section.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ]\n - \ },\n \"localized\": {\n \"$ref\": \"ChannelSectionLocalization\",\n - \ \"description\": \"Localized title, read-only.\"\n }\n },\n - \ \"id\": \"ChannelSectionSnippet\",\n \"description\": \"Basic details - about a channel section, including title, style and position.\",\n \"type\": - \"object\"\n },\n \"LiveChatMembershipGiftingDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"giftMembershipsLevelName\": - {\n \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n },\n \"giftMembershipsCount\": - {\n \"description\": \"The number of gift memberships purchased by - the user.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ }\n },\n \"id\": \"LiveChatMembershipGiftingDetails\"\n - \ },\n \"Subscription\": {\n \"description\": \"A *subscription* - resource contains information about a YouTube user subscription. A subscription - notifies a user when new videos are added to a channel or when another user - takes one of several actions on YouTube, such as uploading a video, rating - a video, or commenting on a video.\",\n \"properties\": {\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains basic statistics - about the subscription.\",\n \"$ref\": \"SubscriptionContentDetails\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the subscription.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#subscription\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"SubscriptionSnippet\",\n \"description\": \"The snippet object - contains basic details about the subscription, including its title and the - channel that the user subscribed to.\"\n },\n \"subscriberSnippet\": - {\n \"description\": \"The subscriberSnippet object contains basic - details about the subscriber.\",\n \"$ref\": \"SubscriptionSubscriberSnippet\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Subscription\"\n - \ },\n \"LevelDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The name that should be used when referring to this level.\"\n }\n - \ },\n \"id\": \"LevelDetails\"\n },\n \"LiveBroadcastListResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"A list of broadcasts that match the request criteria.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"default\": \"youtube#liveBroadcastListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"type\": \"object\"\n },\n \"I18nLanguage\": {\n \"type\": - \"object\",\n \"description\": \"An *i18nLanguage* resource identifies - a UI language currently supported by YouTube.\",\n \"properties\": {\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the i18n language.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the i18n language, such as language code and human-readable name.\",\n - \ \"$ref\": \"I18nLanguageSnippet\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"default\": \"youtube#i18nLanguage\"\n }\n },\n \"id\": - \"I18nLanguage\"\n },\n \"VideoSuggestions\": {\n \"properties\": - {\n \"processingHints\": {\n \"description\": \"A list of - suggestions that may improve YouTube's ability to process the video.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"enum\": - [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"tagSuggestions\": - {\n \"description\": \"A list of keyword tags that could be added - to the video's metadata to increase the likelihood that users will locate - your video when searching or browsing on YouTube.\",\n \"items\": - {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n },\n - \ \"type\": \"array\"\n },\n \"processingWarnings\": - {\n \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"type\": - \"string\"\n },\n \"description\": \"A list of reasons why - YouTube may have difficulty transcoding the uploaded video or that might result - in an erroneous transcoding. These warnings are generated before YouTube actually - processes the uploaded video file. In addition, they identify issues that - are unlikely to cause the video processing to fail but that might cause problems - such as sync issues, video artifacts, or a missing audio track.\"\n },\n - \ \"editorSuggestions\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ],\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ]\n - \ },\n \"description\": \"A list of video editing operations - that might improve the video quality or playback experience of the uploaded - video.\"\n },\n \"processingErrors\": {\n \"items\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n },\n \"type\": \"array\",\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Specifies suggestions on how to improve video content, including encoding - hints, tag suggestions, and editor suggestions.\",\n \"id\": \"VideoSuggestions\"\n - \ },\n \"LiveChatTextMessageDetails\": {\n \"id\": \"LiveChatTextMessageDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"messageText\": - {\n \"type\": \"string\",\n \"description\": \"The user's - message.\"\n }\n }\n },\n \"Activity\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#activity\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n \"type\": - \"string\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ActivityContentDetails\",\n \"description\": \"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.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the activity.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the activity, including the activity's type and group ID.\",\n \"$ref\": - \"ActivitySnippet\"\n }\n },\n \"id\": \"Activity\",\n \"description\": - \"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.\",\n - \ \"type\": \"object\"\n },\n \"VideoCategoryListResponse\": {\n - \ \"id\": \"VideoCategoryListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoCategory\"\n },\n - \ \"description\": \"A list of video categories that can be associated - with YouTube videos. In this map, the video category ID is the map key, and - its value is the corresponding videoCategory resource.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n \"default\": - \"youtube#videoCategoryListResponse\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n }\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"id\": \"LiveChatMessageAuthorDetails\",\n \"properties\": - {\n \"isChatOwner\": {\n \"description\": \"Whether the author - is the owner of the live chat.\",\n \"type\": \"boolean\"\n },\n - \ \"isChatSponsor\": {\n \"description\": \"Whether the author - is a sponsor of the live chat.\",\n \"type\": \"boolean\"\n },\n - \ \"channelId\": {\n \"description\": \"The YouTube channel - ID.\",\n \"type\": \"string\"\n },\n \"profileImageUrl\": - {\n \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n },\n \"isChatModerator\": {\n \"description\": - \"Whether the author is a moderator of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"displayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's display name.\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"id\": \"VideoFileDetailsVideoStream\",\n \"type\": \"object\",\n - \ \"description\": \"Information about a video stream.\",\n \"properties\": - {\n \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"rotation\": {\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"type\": \"string\"\n },\n \"widthPixels\": - {\n \"description\": \"The encoded video content's width in pixels. - You can calculate the video's encoding aspect ratio as width_pixels / height_pixels.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The video codec that the stream uses.\"\n },\n \"frameRateFps\": - {\n \"format\": \"double\",\n \"type\": \"number\",\n \"description\": - \"The video stream's frame rate, in frames per second.\"\n },\n \"aspectRatio\": - {\n \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The video stream's bitrate, in bits per second.\"\n },\n \"heightPixels\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's height in pixels.\"\n }\n }\n },\n - \ \"VideoCategorySnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a video category, such as its localized title.\",\n - \ \"id\": \"VideoCategorySnippet\",\n \"properties\": {\n \"assignable\": - {\n \"type\": \"boolean\"\n },\n \"channelId\": {\n - \ \"description\": \"The YouTube channel that created the video category.\",\n - \ \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - video category's title.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"I18nRegion\": {\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the i18n region, such as region code and human-readable - name.\",\n \"$ref\": \"I18nRegionSnippet\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the i18n region.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n \"default\": - \"youtube#i18nRegion\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"description\": \"A *i18nRegion* - resource identifies a region where YouTube is available.\",\n \"id\": - \"I18nRegion\"\n },\n \"Cuepoint\": {\n \"description\": \"Note - that there may be a 5-second end-point resolution issue. For instance, if - a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\",\n \"properties\": - {\n \"cueType\": {\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"durationSecs\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The duration - of this cuepoint.\"\n },\n \"walltimeMs\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - wall clock time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\"\n },\n \"insertionOffsetTimeMs\": - {\n \"format\": \"int64\",\n \"type\": \"string\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The identifier for cuepoint resource.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"Cuepoint\"\n },\n - \ \"LiveStreamHealthStatus\": {\n \"type\": \"object\",\n \"id\": - \"LiveStreamHealthStatus\",\n \"properties\": {\n \"status\": - {\n \"description\": \"The status code of this stream\",\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"configurationIssues\": - {\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"description\": \"The configurations issues on this - stream\",\n \"type\": \"array\"\n },\n \"lastUpdateTimeSeconds\": - {\n \"type\": \"string\",\n \"description\": \"The last - time this status was updated (in seconds)\",\n \"format\": \"uint64\"\n - \ }\n }\n },\n \"ActivityListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#activityListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Activity\"\n }\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n }\n },\n \"id\": \"ActivityListResponse\"\n - \ },\n \"PropertyValue\": {\n \"id\": \"PropertyValue\",\n \"description\": - \"A pair Property / Value.\",\n \"type\": \"object\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\",\n \"description\": - \"The property's value.\"\n },\n \"property\": {\n \"description\": - \"A property.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"LiveStreamSnippet\": {\n \"id\": \"LiveStreamSnippet\",\n \"type\": - \"object\",\n \"properties\": {\n \"description\": {\n \"description\": - \"The stream's description. The value cannot be longer than 10000 characters.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the stream - was created.\",\n \"format\": \"date-time\"\n },\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The stream's title. The value must - be between 1 and 128 characters long.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that is transmitting the stream.\"\n }\n }\n - \ },\n \"LiveChatMessage\": {\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatMessage\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessage\\\".\",\n \"type\": - \"string\"\n },\n \"authorDetails\": {\n \"description\": - \"The authorDetails object contains basic details about the user that posted - this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"A *liveChatMessage* - resource represents a chat message in a YouTube Live Chat.\",\n \"id\": - \"LiveChatMessage\",\n \"type\": \"object\"\n },\n \"PlaylistLocalization\": - {\n \"properties\": {\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for playlist's - description.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for playlist's title.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"PlaylistLocalization\",\n - \ \"description\": \"Playlist localization setting\"\n },\n \"VideoAbuseReport\": - {\n \"type\": \"object\",\n \"properties\": {\n \"secondaryReasonId\": - {\n \"description\": \"The specific, or secondary, reason that this - content is abusive (if available). The value is an abuse report reason ID - that is a valid secondary reason for the primary reason.\",\n \"type\": - \"string\"\n },\n \"reasonId\": {\n \"type\": \"string\",\n - \ \"description\": \"The high-level, or primary, reason that the content - is abusive. The value is an abuse report reason ID.\"\n },\n \"comments\": - {\n \"type\": \"string\",\n \"description\": \"Additional - comments regarding the abuse report.\"\n },\n \"language\": - {\n \"type\": \"string\",\n \"description\": \"The language - that the content was viewed in.\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoAbuseReport\"\n },\n - \ \"IngestionInfo\": {\n \"id\": \"IngestionInfo\",\n \"description\": - \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n - \ \"properties\": {\n \"rtmpsIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of ingestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ },\n \"ingestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"The primary ingestion URL that you should use - to stream video to YouTube. You must stream video to this URL. Depending on - which application or tool you use to encode your video stream, you may need - to enter the stream URL and stream name separately or you may need to concatenate - them in the following format: *STREAM_URL/STREAM_NAME* \"\n },\n \"streamName\": - {\n \"description\": \"The stream name that YouTube assigns to the - video stream.\",\n \"type\": \"string\"\n },\n \"rtmpsBackupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of backupIngestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"backupIngestionAddress\": - {\n \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveStreamListResponse\": {\n \"type\": \"object\",\n \"id\": - \"LiveStreamListResponse\",\n \"properties\": {\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveStreamListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"description\": \"A list of live streams that match - the request criteria.\"\n }\n }\n },\n \"VideoLocalization\": - {\n \"id\": \"VideoLocalization\",\n \"properties\": {\n \"title\": - {\n \"description\": \"Localized version of the video's title.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"Localized version of the video's description.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Localized - versions of certain video properties (e.g. title).\"\n },\n \"ChannelContentOwnerDetails\": - {\n \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"id\": - \"ChannelContentOwnerDetails\",\n \"properties\": {\n \"contentOwner\": - {\n \"description\": \"The ID of the content owner linked to the - channel.\",\n \"type\": \"string\"\n },\n \"timeLinked\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the channel was linked - to the content owner.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SubscriptionListResponse\": {\n \"properties\": {\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#subscriptionListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"description\": - \"A list of subscriptions that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Subscription\"\n },\n \"type\": - \"array\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"SubscriptionListResponse\"\n - \ },\n \"VideoStatistics\": {\n \"type\": \"object\",\n \"id\": - \"VideoStatistics\",\n \"properties\": {\n \"dislikeCount\": {\n - \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of users who have indicated that they disliked the video by giving - it a negative rating.\"\n },\n \"likeCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of users who have indicated that they liked the video by giving it - a positive rating.\"\n },\n \"favoriteCount\": {\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"viewCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of times the video has - been viewed.\"\n },\n \"commentCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of comments for the video.\"\n }\n },\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\"\n },\n \"ThirdPartyLinkStatus\": {\n \"description\": - \"The third-party link status object contains information about the status - of the link.\",\n \"type\": \"object\",\n \"id\": \"ThirdPartyLinkStatus\",\n - \ \"properties\": {\n \"linkStatus\": {\n \"enum\": [\n - \ \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n }\n },\n \"MembershipsDuration\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"memberSince\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the user became a continuous member across all levels.\"\n },\n - \ \"memberTotalDurationMonths\": {\n \"type\": \"integer\",\n - \ \"description\": \"The cumulative time the user has been a member - across all levels in complete months (the time is rounded down to the nearest - integer).\",\n \"format\": \"int32\"\n }\n },\n \"id\": - \"MembershipsDuration\"\n },\n \"VideoAbuseReportReasonSnippet\": {\n - \ \"id\": \"VideoAbuseReportReasonSnippet\",\n \"properties\": {\n - \ \"label\": {\n \"description\": \"The localized label belonging - to this abuse report reason.\",\n \"type\": \"string\"\n },\n - \ \"secondaryReasons\": {\n \"description\": \"The secondary - reasons associated with this reason, if any are available. (There might be - 0 or more.)\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about a video category, - such as its localized title.\"\n },\n \"MembershipsLevelSnippet\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering channel memberships.\"\n },\n \"levelDetails\": - {\n \"description\": \"Details about the pricing level.\",\n \"$ref\": - \"LevelDetails\"\n }\n },\n \"id\": \"MembershipsLevelSnippet\"\n - \ },\n \"CommentThreadSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a comment thread.\",\n \"properties\": {\n \"canReply\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n - \ \"topLevelComment\": {\n \"$ref\": \"Comment\",\n \"description\": - \"The top level comment of this thread.\"\n },\n \"isPublic\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the thread (and therefore all its comments) is visible to all YouTube users.\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\"\n },\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"totalReplyCount\": - {\n \"description\": \"The total number of replies (not including - the top level comment).\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n }\n },\n \"id\": \"CommentThreadSnippet\"\n - \ },\n \"PageInfo\": {\n \"type\": \"object\",\n \"id\": \"PageInfo\",\n - \ \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\",\n \"properties\": {\n \"resultsPerPage\": {\n \"type\": - \"integer\",\n \"description\": \"The number of results included - in the API response.\",\n \"format\": \"int32\"\n },\n \"totalResults\": - {\n \"format\": \"int32\",\n \"type\": \"integer\",\n \"description\": - \"The total number of results in the result set.\"\n }\n }\n },\n - \ \"ChannelConversionPing\": {\n \"description\": \"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.\",\n - \ \"id\": \"ChannelConversionPing\",\n \"properties\": {\n \"conversionUrl\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"context\": {\n \"description\": - \"Defines the context of the ping.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ]\n }\n },\n \"type\": \"object\"\n - \ },\n \"CdnSettings\": {\n \"description\": \"Brief description - of the live stream cdn settings.\",\n \"type\": \"object\",\n \"properties\": - {\n \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n - \ \"description\": \"The ingestionInfo object contains information - that YouTube provides that you need to transmit your RTMP or HTTP stream to - YouTube.\"\n },\n \"resolution\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\",\n \"type\": \"string\",\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ]\n },\n \"frameRate\": {\n \"description\": - \"The frame rate of the inbound video data.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ],\n \"type\": \"string\"\n },\n \"format\": - {\n \"description\": \"The format of the video stream that you are - sending to Youtube. \",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"ingestionType\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \" The method or protocol - used to transmit the video stream.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"rtmp\",\n \"dash\",\n - \ \"webrtc\",\n \"hls\"\n ]\n }\n },\n - \ \"id\": \"CdnSettings\"\n },\n \"VideoAgeGating\": {\n \"type\": - \"object\",\n \"id\": \"VideoAgeGating\",\n \"properties\": {\n - \ \"videoGameRating\": {\n \"type\": \"string\",\n \"description\": - \"Video game rating, if any.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ]\n },\n \"alcoholContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether or not the video has alcoholic beverage content. Only users of legal - purchasing age in a particular country, as identified by ICAP, can view the - content.\"\n },\n \"restricted\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Age-restricted trailers. For redband trailers - and adult-rated video-games. Only users aged 18+ can view the content. The - the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\"\n }\n }\n },\n \"PlaylistItemStatus\": - {\n \"description\": \"Information about the playlist item's privacy - status.\",\n \"properties\": {\n \"privacyStatus\": {\n \"description\": - \"This resource's privacy status.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistItemStatus\"\n },\n \"SearchResultSnippet\": - {\n \"description\": \"Basic details about a search result, including - title, description and thumbnails of the item referenced by the search result.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the search result. 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.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the search result.\"\n },\n \"channelTitle\": - {\n \"description\": \"The title of the channel that published the - resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"A description - of the search result.\",\n \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"description\": \"It indicates if the resource (video or channel) - has upcoming/active live broadcast content. Or it's \\\"none\\\" if there - is not any upcoming/active live broadcasts.\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ]\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The value that YouTube uses to uniquely identify - the channel that published the resource that the search result identifies.\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The creation - date and time of the resource that the search result identifies.\"\n }\n - \ },\n \"id\": \"SearchResultSnippet\"\n },\n \"Thumbnail\": - {\n \"type\": \"object\",\n \"properties\": {\n \"url\": - {\n \"description\": \"The thumbnail image's URL.\",\n \"type\": - \"string\"\n },\n \"width\": {\n \"description\": \"(Optional) - Width of the thumbnail image.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"height\": {\n \"format\": \"uint32\",\n - \ \"description\": \"(Optional) Height of the thumbnail image.\",\n - \ \"type\": \"integer\"\n }\n },\n \"id\": \"Thumbnail\",\n - \ \"description\": \"A thumbnail is an image representing a YouTube resource.\"\n - \ },\n \"LiveChatModeratorSnippet\": {\n \"properties\": {\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the live chat this moderator can act on.\"\n },\n \"moderatorDetails\": - {\n \"description\": \"Details about the moderator.\",\n \"$ref\": - \"ChannelProfileDetails\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatModeratorSnippet\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"description\": \"Basic details about a subscription's subscriber - including title, description, channel ID and thumbnails.\",\n \"id\": - \"SubscriptionSubscriberSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"channelId\": {\n \"description\": \"The channel ID of - the subscriber.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The title of the subscriber.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"Thumbnails for this subscriber.\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the subscriber.\"\n }\n }\n },\n \"ChannelListResponse\": - {\n \"type\": \"object\",\n \"id\": \"ChannelListResponse\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelListResponse\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Channel\"\n }\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"AbuseReport\": - {\n \"id\": \"AbuseReport\",\n \"properties\": {\n \"subject\": - {\n \"$ref\": \"Entity\"\n },\n \"relatedEntities\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n }\n },\n \"description\": {\n \"type\": - \"string\"\n },\n \"abuseTypes\": {\n \"items\": {\n - \ \"$ref\": \"AbuseType\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"I18nRegionSnippet\": - {\n \"id\": \"I18nRegionSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"gl\": {\n \"description\": \"The region code as a 2-letter - ISO country code.\",\n \"type\": \"string\"\n },\n \"name\": - {\n \"type\": \"string\",\n \"description\": \"The human-readable - name of the region.\"\n }\n },\n \"description\": \"Basic - details about an i18n region, such as region code and human-readable name.\"\n - \ },\n \"LiveBroadcast\": {\n \"type\": \"object\",\n \"description\": - \"A *liveBroadcast* resource represents an event that will be streamed, via - live video, on YouTube.\",\n \"properties\": {\n \"contentDetails\": - {\n \"$ref\": \"LiveBroadcastContentDetails\",\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\"\n },\n \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n - \ \"description\": \"The status object contains information about - the event's status.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveBroadcast\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object contains info about the event's current stats. These include concurrent - viewers and total chat count. Statistics can change (in either direction) - during the lifetime of an event. Statistics are only returned while the event - is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the event, including its title, description, start time, - and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n },\n - \ \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the broadcast.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"LiveBroadcast\"\n },\n - \ \"ChannelProfileDetails\": {\n \"properties\": {\n \"profileImageUrl\": - {\n \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n },\n - \ \"channelUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channel's URL.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube channel ID.\"\n }\n - \ },\n \"id\": \"ChannelProfileDetails\",\n \"type\": \"object\"\n - \ },\n \"CommentThread\": {\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the comment thread.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"replies\": {\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the comment thread and also the top level - comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentThread\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#commentThread\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"CommentThread\",\n - \ \"description\": \"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.\"\n },\n \"CommentThreadReplies\": - {\n \"properties\": {\n \"comments\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"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.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"CommentThreadReplies\",\n \"description\": - \"Comments written in (direct or indirect) reply to the top level comment.\"\n - \ },\n \"ResourceId\": {\n \"description\": \"A resource id is a - generic reference that points to another YouTube resource.\",\n \"id\": - \"ResourceId\",\n \"type\": \"object\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the referred resource, if that resource - is a channel. This property is only present if the resourceId.kind value is - youtube#channel.\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\"\n },\n \"kind\": {\n \"description\": - \"The type of the API resource.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ChannelToStoreLinkDetails\": {\n \"properties\": - {\n \"storeName\": {\n \"type\": \"string\",\n \"description\": - \"Name of the store.\"\n },\n \"merchantId\": {\n \"type\": - \"string\",\n \"description\": \"Google Merchant Center id of the - store.\",\n \"format\": \"uint64\"\n },\n \"storeUrl\": - {\n \"description\": \"Landing page of the store.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Information specific - to a store on a merchandising platform linked to a YouTube channel.\"\n },\n - \ \"MemberSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"membershipsDetails\": {\n \"$ref\": \"MembershipsDetails\",\n - \ \"description\": \"Details about the user's membership.\"\n },\n - \ \"creatorChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The id of the channel that's offering memberships.\"\n },\n \"memberDetails\": - {\n \"description\": \"Details about the member.\",\n \"$ref\": - \"ChannelProfileDetails\"\n }\n },\n \"id\": \"MemberSnippet\"\n - \ },\n \"CommentThreadListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"default\": \"youtube#commentThreadListResponse\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"description\": \"A list of comment threads that - match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"CommentThreadListResponse\"\n - \ },\n \"Caption\": {\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the caption track.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n }\n - \ },\n \"kind\": {\n \"default\": \"youtube#caption\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"CaptionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the caption.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"Caption\",\n \"description\": \"A *caption* resource represents a YouTube - caption track. A caption track is associated with exactly one YouTube video.\"\n - \ },\n \"VideoAbuseReportSecondaryReason\": {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n - \ \"properties\": {\n \"label\": {\n \"description\": - \"The localized label for this abuse report secondary reason.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoRating\": - {\n \"id\": \"VideoRating\",\n \"type\": \"object\",\n \"description\": - \"Basic details about rating of a video.\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n },\n \"rating\": - {\n \"type\": \"string\",\n \"description\": \"Rating of - a video.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n }\n }\n },\n \"VideoProjectDetails\": - {\n \"properties\": {},\n \"id\": \"VideoProjectDetails\",\n \"description\": - \"DEPRECATED. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"type\": \"object\"\n },\n \"Comment\": {\n \"description\": - \"A *comment* represents a single YouTube comment.\",\n \"type\": \"object\",\n - \ \"id\": \"Comment\",\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n - \ \"default\": \"youtube#comment\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the comment.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment.\",\n \"$ref\": - \"CommentSnippet\"\n }\n }\n },\n \"VideoProcessingDetails\": - {\n \"properties\": {\n \"editorSuggestionsAvailability\": {\n - \ \"description\": \"This value indicates whether video editing suggestions, - which might improve video quality or the playback experience, are available - for the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"processingProgress\": {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"The processingProgress object contains information - about the progress YouTube has made in processing the video. The values are - really only relevant if the video's processing status is processing.\"\n },\n - \ \"fileDetailsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether file details are - available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\"\n },\n - \ \"processingIssuesAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"tagSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether keyword (tag) suggestions - are available for the video. Tags can be added to a video's metadata to make - it easier for other users to find the video. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"thumbnailsAvailability\": {\n \"type\": \"string\",\n \"description\": - \"This value indicates whether thumbnail images have been generated for the - video.\"\n },\n \"processingStatus\": {\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"description\": \"The - video's processing status. This value indicates whether YouTube was able to - process the video or if the video is still being processed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"processingFailureReason\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ],\n \"type\": \"string\",\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetails\",\n - \ \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n }\n }\n },\n \"id\": \"ThirdPartyLinkListResponse\",\n - \ \"type\": \"object\"\n }\n },\n \"id\": \"youtube:v3\",\n \"ownerName\": - \"Google\",\n \"version\": \"v3\",\n \"title\": \"YouTube Data API v3\",\n - \ \"documentationLink\": \"https://developers.google.com/youtube/\",\n \"resources\": - {\n \"commentThreads\": {\n \"methods\": {\n \"insert\": {\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.commentThreads.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"POST\"\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"CommentThreadListResponse\"\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"parameters\": - {\n \"searchTerms\": {\n \"location\": \"query\",\n - \ \"description\": \"Limits the returned comment threads to those - matching the specified key words. Not compatible with the 'id' filter.\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"default\": \"20\",\n \"minimum\": \"1\",\n \"maximum\": - \"100\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"textFormat\": - {\n \"location\": \"query\",\n \"description\": - \"The requested text format for the returned comments.\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"default\": - \"html\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"Returns the comment threads for all the - channel comments (ie does not include comments left on videos).\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"order\": - {\n \"default\": \"time\",\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Order - by time.\",\n \"Order by relevance.\"\n ]\n },\n - \ \"moderationStatus\": {\n \"location\": \"query\",\n - \ \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"default\": \"published\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads with the given IDs for Stubby or Apiary.\",\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"allThreadsRelatedToChannelId\": {\n \"description\": - \"Returns the comment threads of all videos of the channel and the channel - comments as well.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"videoId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Returns the comment threads - of the specified video.\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.commentThreads.list\"\n }\n }\n - \ },\n \"liveStreams\": {\n \"methods\": {\n \"insert\": - {\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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, - content_details, and status.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"id\": \"youtube.liveStreams.insert\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new stream for the authenticated - user.\",\n \"httpMethod\": \"POST\",\n \"response\": {\n - \ \"$ref\": \"LiveStream\"\n }\n },\n \"list\": - {\n \"parameters\": {\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"required\": - true\n },\n \"id\": {\n \"description\": - \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"default\": \"5\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"minimum\": \"0\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"id\": \"youtube.liveStreams.list\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"path\": \"youtube/v3/liveStreams\"\n - \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.delete\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"description\": \"Deletes an existing - stream for the authenticated user.\"\n },\n \"update\": {\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"id\": \"youtube.liveStreams.update\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"description\": - \"Updates an existing stream for the authenticated user.\",\n \"httpMethod\": - \"PUT\",\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"comments\": {\n \"methods\": {\n \"delete\": - {\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"description\": \"Deletes a - resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"id\": - \"youtube.comments.delete\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/comments\"\n - \ },\n \"setModerationStatus\": {\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"description\": \"Sets the moderation status of one or more comments.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"parameters\": - {\n \"id\": {\n \"description\": \"Modifies the moderation - status of the comments with the given IDs\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"banAuthor\": {\n \"description\": - \"If set to true the author of the comment gets added to the ban list. This - means all future comments of the author will autmomatically be rejected. Only - valid in combination with STATUS_REJECTED.\",\n \"type\": \"boolean\",\n - \ \"default\": \"false\",\n \"location\": \"query\"\n - \ },\n \"moderationStatus\": {\n \"required\": - true,\n \"description\": \"Specifies the requested moderation - status. Note, comments can be in statuses, which are not available through - this call. For example, this call does not allow to mark a comment as 'likely - spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ]\n }\n }\n - \ },\n \"markAsSpam\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Expresses - the caller's opinion that one or more comments should be flagged as spam.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.markAsSpam\",\n \"path\": - \"youtube/v3/comments/markAsSpam\"\n },\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Updates - an existing resource.\",\n \"path\": \"youtube/v3/comments\",\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"flatPath\": - \"youtube/v3/comments\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.comments.update\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"PUT\"\n },\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.comments.list\",\n \"path\": - \"youtube/v3/comments\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"parentId\": {\n \"type\": - \"string\",\n \"description\": \"Returns replies to the specified - comment. Note, currently YouTube features only one level of replies (ie replies - to top level comments). However replies to replies may be supported in the - future.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies a comma-separated - list of one or more comment resource properties that the API response will - include.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"minimum\": - \"1\",\n \"type\": \"integer\",\n \"maximum\": \"100\",\n - \ \"default\": \"20\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Returns the comments with the - given IDs for One Platform.\",\n \"repeated\": true\n },\n - \ \"textFormat\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"location\": \"query\",\n \"default\": \"html\",\n - \ \"description\": \"The requested text format for the returned - comments.\"\n }\n }\n },\n \"insert\": {\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"path\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ }\n },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"request\": {\n \"$ref\": - \"Comment\"\n }\n }\n }\n },\n \"i18nLanguages\": - {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/i18nLanguages\",\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n - \ \"parameters\": {\n \"hl\": {\n \"default\": - \"en_US\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - i18nLanguage resource properties that the API response will include. Set the - parameter value to snippet.\",\n \"type\": \"string\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ }\n }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.channelSections.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"list\": {\n \"id\": - \"youtube.channelSections.list\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the ChannelSections owned by the authenticated user.\"\n },\n - \ \"hl\": {\n \"description\": \"Return content in - specified language\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Return the ChannelSections owned - by the specified channel ID.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return the ChannelSections with - the given IDs for Stubby or Apiary.\",\n \"repeated\": true\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"response\": {\n \"$ref\": - \"ChannelSectionListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\"\n },\n \"update\": - {\n \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"path\": \"youtube/v3/channelSections\",\n \"description\": - \"Updates an existing resource.\",\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.channelSections.update\"\n - \ },\n \"insert\": {\n \"path\": \"youtube/v3/channelSections\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"id\": \"youtube.channelSections.insert\",\n \"httpMethod\": - \"POST\"\n }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"parameters\": {\n \"liveChatId\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"The id - of the live chat for which moderators should be returned.\"\n },\n - \ \"maxResults\": {\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"0\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\"\n }\n },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"id\": - \"youtube.liveChatModerators.list\",\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n },\n \"insert\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n }\n - \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.liveChatModerators.delete\",\n \"description\": \"Deletes - a chat moderator.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\"\n }\n }\n },\n \"membershipsLevels\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - membershipsLevel resource parts that the API response will include. Supported - values are id and snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"description\": \"Retrieves a list of all pricing - levels offered by a creator to the fans.\",\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/membershipsLevels\",\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"request\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\",\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/channelBanners/insert\"\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n }\n },\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"supportsMediaUpload\": true,\n \"id\": \"youtube.channelBanners.insert\",\n - \ \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\"\n },\n \"onBehalfOfContentOwner\": {\n - \ \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n },\n \"parameterOrder\": []\n }\n - \ }\n },\n \"superChatEvents\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"hl\": {\n \"description\": \"Return rendered - funding amounts in specified language.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"1\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"maximum\": \"50\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the superChatEvent resource parts that the API - response will include. This parameter is currently not supported.\",\n \"repeated\": - true\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"path\": - \"youtube/v3/superChatEvents\",\n \"id\": \"youtube.superChatEvents.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n - \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"description\": \"Retrieves a list of members that - match the request criteria for a channel.\",\n \"id\": \"youtube.members.list\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/members\",\n - \ \"parameters\": {\n \"mode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"default\": - \"all_current\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ],\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ]\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"required\": true\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"hasAccessToLevel\": {\n \"location\": - \"query\",\n \"description\": \"Filter members in the results - set to the ones that have access to a level.\",\n \"type\": \"string\"\n - \ },\n \"filterByMemberChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"maximum\": \"1000\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"default\": \"5\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/members\",\n \"response\": {\n - \ \"$ref\": \"MemberListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/i18nRegions\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/i18nRegions\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"parameters\": {\n \"hl\": {\n \"default\": - \"en_US\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\"\n }\n - \ }\n }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatMessages.insert\",\n \"request\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/liveChat/messages\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"description\": \"Inserts a - new resource into this collection.\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.liveChatMessages.list\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"profileImageSize\": - {\n \"description\": \"Specifies the size of the profile image - that should be returned for each user.\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"720\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"minimum\": \"16\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"hl\": {\n - \ \"location\": \"query\",\n \"description\": \"Specifies - the localization language in which the system messages should be returned.\",\n - \ \"type\": \"string\"\n },\n \"liveChatId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The id - of the live chat for which comments should be returned.\"\n },\n - \ \"maxResults\": {\n \"default\": \"500\",\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"maximum\": \"2000\",\n \"minimum\": - \"200\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\"\n - \ },\n \"part\": {\n \"description\": \"The - *part* parameter specifies the liveChatComment resource parts that the API - response will include. Supported values are id and snippet.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/liveChat/messages\"\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Deletes a chat message.\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"httpMethod\": \"DELETE\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatMessages.delete\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n }\n }\n - \ }\n },\n \"videoCategories\": {\n \"methods\": {\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.videoCategories.list\",\n - \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/videoCategories\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the videoCategory resource properties that the API response will include. - Set the parameter value to snippet.\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"hl\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"en-US\"\n },\n \"id\": - {\n \"description\": \"Returns the video categories with the - given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"regionCode\": {\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"liveChatBans\": {\n \"methods\": {\n \"delete\": - {\n \"path\": \"youtube/v3/liveChat/bans\",\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Deletes a chat ban.\",\n \"id\": \"youtube.liveChatBans.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\"\n },\n \"insert\": {\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.liveChatBans.insert\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"request\": {\n \"$ref\": - \"LiveChatBan\"\n }\n }\n }\n },\n \"subscriptions\": - {\n \"methods\": {\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"Subscription\"\n },\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": true\n - \ }\n },\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"id\": \"youtube.subscriptions.insert\"\n },\n \"delete\": - {\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.subscriptions.delete\"\n },\n - \ \"list\": {\n \"parameters\": {\n \"id\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"Return - the subscriptions with the given IDs for Stubby or Apiary.\"\n },\n - \ \"forChannelId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return the subscriptions to the - subset of these channels that the authenticated user is subscribed to.\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"mySubscribers\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the subscribers of the given channel owner.\"\n },\n \"myRecentSubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the subscriptions of the given channel owner.\"\n },\n \"order\": - {\n \"type\": \"string\",\n \"default\": \"relevance\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Sort - by relevance.\",\n \"Sort by order of activity.\",\n \"Sort - alphabetically.\"\n ],\n \"description\": \"The - order of the returned subscriptions\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ]\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"response\": - {\n \"$ref\": \"SubscriptionListResponse\"\n },\n \"path\": - \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.list\"\n - \ }\n }\n },\n \"playlistItems\": {\n \"methods\": {\n - \ \"insert\": {\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"path\": \"youtube/v3/playlistItems\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"id\": - \"youtube.playlistItems.insert\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"list\": {\n \"parameters\": {\n - \ \"videoId\": {\n \"description\": \"Return the playlist - items associated with the given video ID.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"playlistId\": - {\n \"description\": \"Return the playlist items within the given - playlist.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"maximum\": \"50\"\n },\n \"part\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.playlistItems.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"GET\"\n },\n \"update\": {\n \"httpMethod\": \"PUT\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Updates - an existing resource.\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"id\": \"youtube.playlistItems.update\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/playlistItems\"\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"id\": - \"youtube.playlistItems.delete\",\n \"description\": \"Deletes a - resource.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"id\"\n ]\n }\n }\n },\n \"activities\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"publishedAfter\": {\n \"format\": \"google-datetime\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n },\n \"publishedBefore\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"format\": \"google-datetime\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"home\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.activities.list\",\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/activities\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ }\n }\n }\n },\n \"videos\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.videos.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos\",\n \"parameters\": {\n - \ \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"chart\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Return - the videos that are in the specified chart.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ]\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"description\": - \"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.\",\n \"maximum\": - \"50\",\n \"minimum\": \"1\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"maxHeight\": {\n \"format\": - \"int32\",\n \"maximum\": \"8192\",\n \"minimum\": - \"72\",\n \"location\": \"query\",\n \"type\": \"integer\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"myRating\": {\n \"location\": \"query\",\n \"description\": - \"Return videos liked/disliked by the authenticated user. Does not support - RateType.RATED_TYPE_NONE.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"description\": \"Return videos with the given ids.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"locale\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"videoCategoryId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"0\",\n \"description\": \"Use chart that is specific to the - specified video category\"\n },\n \"maxWidth\": {\n - \ \"type\": \"integer\",\n \"minimum\": \"72\",\n - \ \"format\": \"int32\",\n \"description\": \"Return - the player with maximum height specified in\",\n \"location\": - \"query\",\n \"maximum\": \"8192\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Use a chart that is specific to the specified - region\"\n }\n },\n \"response\": {\n \"$ref\": - \"VideoListResponse\"\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n },\n \"update\": - {\n \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"Video\"\n },\n \"id\": \"youtube.videos.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos\",\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"httpMethod\": - \"PUT\"\n },\n \"delete\": {\n \"description\": \"Deletes - a resource.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"id\": \"youtube.videos.delete\",\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"insert\": {\n \"flatPath\": - \"youtube/v3/videos\",\n \"id\": \"youtube.videos.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"mediaUpload\": {\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/videos\"\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"274877906944\",\n - \ \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n - \ ]\n },\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"notifySubscribers\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"default\": \"true\",\n - \ \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"autoLevels\": {\n - \ \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Should auto-levels be applied to the upload.\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ },\n \"stabilize\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Should - stabilize be applied to the upload.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"supportsMediaUpload\": true,\n \"response\": - {\n \"$ref\": \"Video\"\n },\n \"path\": \"youtube/v3/videos\"\n - \ },\n \"reportAbuse\": {\n \"request\": {\n \"$ref\": - \"VideoAbuseReport\"\n },\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"parameterOrder\": [],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"id\": \"youtube.videos.reportAbuse\",\n \"description\": - \"Report abuse for a video.\",\n \"httpMethod\": \"POST\"\n },\n - \ \"rate\": {\n \"description\": \"Adds a like or dislike rating - to a video or removes a rating from a video.\",\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.videos.rate\",\n - \ \"path\": \"youtube/v3/videos/rate\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"rating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ]\n },\n - \ \"getRating\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"flatPath\": \"youtube/v3/videos/getRating\",\n \"description\": - \"Retrieves the ratings that the authorized user gave to a list of specified - videos.\",\n \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"id\": \"youtube.videos.getRating\",\n \"parameterOrder\": - [\n \"id\"\n ]\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"part\": {\n \"description\": \"The *part* parameter - specifies the videoCategory resource parts that the API response will include. - Supported values are id and snippet.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"hl\": {\n \"default\": - \"en-US\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\"\n - \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"parameters\": {\n \"broadcastType\": - {\n \"description\": \"Return only broadcasts with the selected - type.\",\n \"default\": \"event\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"description\": \"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, status - and statistics.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"broadcastStatus\": {\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return current - live broadcasts.\",\n \"Return broadcasts that have not yet - started.\",\n \"Return broadcasts that have already ended.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ]\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Return broadcasts with the given ids - from Stubby or Apiary.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.list\",\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\"\n },\n - \ \"bind\": {\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"id\": \"youtube.liveBroadcasts.bind\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"parameters\": {\n \"streamId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Stream to bind, if not set unbind the current - one.\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"Broadcast - to bind to the stream\"\n }\n },\n \"path\": - \"youtube/v3/liveBroadcasts/bind\",\n \"parameterOrder\": [\n \"id\",\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Bind a broadcast - to a stream.\"\n },\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\"\n },\n - \ \"insertCuepoint\": {\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Insert cuepoints in a broadcast\",\n - \ \"parameterOrder\": [],\n \"request\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"transition\": {\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"description\": \"Transition a broadcast to a given status.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Broadcast to transition.\",\n - \ \"required\": true\n },\n \"part\": {\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"broadcastStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"Start - testing the broadcast. YouTube transmits video to the broadcast's monitor - stream. Note that you can only transition a broadcast to the testing state - if its contentDetails.monitorStream.enableMonitorStream property is set to - true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The - broadcast is over. YouTube stops transmitting video.\"\n ],\n - \ \"enum\": [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The status to which the broadcast is going - to transition.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n }\n },\n \"update\": {\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"description\": \"Updates an existing - broadcast for the authenticated user.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"id\": \"youtube.liveBroadcasts.update\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"PUT\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"delete\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"description\": - \"Broadcast to delete.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.delete\",\n \"description\": - \"Delete a given broadcast.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\"\n }\n }\n },\n - \ \"playlists\": {\n \"methods\": {\n \"list\": {\n \"id\": - \"youtube.playlists.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"channelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Return - the playlists owned by the specified channel ID.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"Return the playlists with the given IDs for - Stubby or Apiary.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"description\": \"Return content in specified - language\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"description\": \"Return the playlists owned by - the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"maxResults\": {\n \"location\": \"query\",\n \"minimum\": - \"0\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"PlaylistListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/playlists\"\n },\n \"delete\": - {\n \"id\": \"youtube.playlists.delete\",\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"path\": - \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"insert\": {\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"id\": \"youtube.playlists.insert\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"path\": \"youtube/v3/playlists\",\n \"flatPath\": \"youtube/v3/playlists\"\n - \ },\n \"update\": {\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.playlists.update\",\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"path\": \"youtube/v3/playlists\",\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"flatPath\": \"youtube/v3/playlists\"\n - \ }\n }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"description\": \"POST method.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"path\": \"youtube/v3/tests\",\n \"flatPath\": \"youtube/v3/tests\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ }\n },\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.tests.insert\",\n \"response\": {\n \"$ref\": - \"TestItem\"\n },\n \"request\": {\n \"$ref\": - \"TestItem\"\n }\n }\n }\n },\n \"watermarks\": - {\n \"methods\": {\n \"set\": {\n \"supportsMediaUpload\": - true,\n \"path\": \"youtube/v3/watermarks/set\",\n \"request\": - {\n \"$ref\": \"InvideoBranding\"\n },\n \"id\": - \"youtube.watermarks.set\",\n \"description\": \"Allows upload of - watermark image and setting it for a channel.\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"parameters\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"mediaUpload\": {\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\"\n }\n },\n - \ \"unset\": {\n \"parameters\": {\n \"channelId\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"description\": \"Allows removal of channel watermark.\",\n - \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"id\": - \"youtube.watermarks.unset\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API request and response will include. - Supported values are linkingToken, status, and snippet.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.update\",\n \"description\": - \"Updates an existing resource.\"\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"linkingToken\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Get - a third party link with the given linking token.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API response will include. Supported values are linkingToken, - status, and snippet.\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"type\": {\n \"enum\": [\n - \ \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Get a third party link of the given type.\"\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\"\n - \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ],\n \"id\": \"youtube.thirdPartyLinks.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"linkingToken\": - {\n \"description\": \"Delete the partner links with the given - linking token.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"type\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"required\": true,\n \"description\": \"Type of - the link to be deleted.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"Do not use. Required for compatibility.\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ }\n }\n },\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": - \"POST\"\n }\n }\n },\n \"youtube\": {\n \"resources\": - {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"path\": \"youtube/v3/commentThreads\",\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"parameterOrder\": [],\n - \ \"description\": \"Updates an existing resource.\",\n \"id\": - \"youtube.youtube.v3.updateCommentThreads\"\n }\n }\n - \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"AbuseReport\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.abuseReports.insert\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ }\n },\n \"response\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"path\": \"youtube/v3/abuseReports\"\n - \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/search\",\n \"parameters\": {\n - \ \"videoSyndicated\": {\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"description\": - \"Filter on syndicated videos.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"location\": \"query\"\n },\n \"relatedToVideoId\": - {\n \"description\": \"Search related to a resource.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"forMine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Search for the private videos of the authenticated user.\"\n },\n - \ \"order\": {\n \"description\": \"Sort order of the - results.\",\n \"default\": \"relevance\",\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Resources - are sorted in reverse chronological order based on the date they were created.\",\n - \ \"Resources are sorted from highest to lowest rating.\",\n - \ \"Resources are sorted from highest to lowest number of views.\",\n - \ \"Resources are sorted based on their relevance to the search - query. This is the default value for this parameter.\",\n \"Resources - are sorted alphabetically by title.\",\n \"Channels are sorted - in descending order of their number of uploaded videos.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"eventType\": {\n \"description\": - \"Filter on the livestream status of the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Display the content as seen by viewers in - this country.\"\n },\n \"safeSearch\": {\n \"location\": - \"query\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"default\": \"moderate\",\n \"enumDescriptions\": - [\n \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"description\": - \"Indicates whether the search results should include restricted content as - well as standard content.\",\n \"type\": \"string\"\n },\n - \ \"locationRadius\": {\n \"type\": \"string\",\n \"description\": - \"Filter on distance from the location (specified above).\",\n \"location\": - \"query\"\n },\n \"videoLicense\": {\n \"description\": - \"Filter on the license of the videos.\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoEmbeddable\": {\n \"description\": - \"Filter on embeddable videos.\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ]\n - \ },\n \"type\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Restrict results to a particular set of resource - types from One Platform.\"\n },\n \"videoDefinition\": - {\n \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Filter on the definition of - the videos.\",\n \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ]\n },\n \"relevanceLanguage\": - {\n \"location\": \"query\",\n \"description\": - \"Return results relevant to this language.\",\n \"type\": \"string\"\n - \ },\n \"channelType\": {\n \"description\": - \"Add a filter on the channel search.\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"publishedBefore\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on resources published before this date.\",\n \"format\": \"google-datetime\",\n - \ \"location\": \"query\"\n },\n \"topicId\": - {\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular topic.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": - \"Filter on resources belonging to this channelId.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos.\",\n \"Only retrieve movies.\",\n \"Only - retrieve episodes of shows.\"\n ],\n \"description\": - \"Filter on videos of a specific type.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ]\n },\n \"publishedAfter\": {\n \"description\": - \"Filter on resources published after this date.\",\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"videoCaption\": {\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"description\": \"Filter on the presence of captions on the - videos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter results based on caption availability.\",\n - \ \"Only include videos that have captions.\",\n \"Only - include videos that do not have captions.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"q\": - {\n \"description\": \"Textual search terms to match.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"forDeveloper\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\"\n },\n - \ \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"videoDimension\": - {\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Filter on 3d videos.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoCategoryId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on videos in a specific category.\"\n - \ },\n \"videoDuration\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"videoDurationUnspecified\",\n \"any\",\n - \ \"short\",\n \"medium\",\n \"long\"\n - \ ],\n \"description\": \"Filter on the duration - of the videos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter video search results based on their duration. - This is the default value.\",\n \"Only include videos that - are less than four minutes long.\",\n \"Only include videos - that are between four and 20 minutes long (inclusive).\",\n \"Only - include videos longer than 20 minutes.\"\n ]\n },\n - \ \"maxResults\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The *maxResults* parameter - specifies the maximum number of items that should be returned in the result - set.\",\n \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"default\": \"5\"\n },\n - \ \"location\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Filter on location of the video\"\n - \ },\n \"forContentOwner\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Search owned by a content owner.\"\n }\n },\n \"flatPath\": - \"youtube/v3/search\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.search.list\",\n \"description\": \"Retrieves a list of - search resources\",\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"SearchListResponse\"\n }\n }\n - \ }\n },\n \"captions\": {\n \"methods\": {\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.list\",\n \"response\": {\n - \ \"$ref\": \"CaptionListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"videoId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"Returns the captions for the specified - video.\"\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Returns the captions with the - given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"path\": \"youtube/v3/captions\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ]\n },\n - \ \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"description\": \"Updates an - existing resource.\",\n \"parameters\": {\n \"sync\": - {\n \"type\": \"boolean\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/captions\",\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"id\": \"youtube.captions.update\",\n - \ \"path\": \"youtube/v3/captions\",\n \"supportsMediaUpload\": - true,\n \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n - \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n }\n }\n },\n \"download\": - {\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"useMediaDownloadService\": - true,\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"description\": \"The ID of the caption track to download, - required for One Platform.\",\n \"type\": \"string\",\n \"location\": - \"path\"\n },\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"tfmt\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Convert the captions into this format. Supported - options are sbv, srt, and vtt.\"\n },\n \"tlang\": {\n - \ \"type\": \"string\",\n \"description\": \"tlang - is the language code; machine translate the captions into this language.\",\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/captions/{id}\",\n \"supportsMediaDownload\": true,\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.captions.download\",\n - \ \"description\": \"Downloads a caption track.\"\n },\n \"delete\": - {\n \"path\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is be on behalf of\",\n - \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.delete\",\n \"description\": - \"Deletes a resource.\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"DELETE\"\n },\n \"insert\": {\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/captions\",\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"supportsMediaUpload\": true,\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.captions.insert\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"sync\": {\n \"type\": \"boolean\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the caption - resource parts that the API response will include. Set the parameter value - to snippet.\"\n },\n \"onBehalfOfContentOwner\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n }\n }\n }\n - \ },\n \"thumbnails\": {\n \"methods\": {\n \"set\": {\n - \ \"path\": \"youtube/v3/thumbnails/set\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Returns - the Thumbnail with the given video IDs for Stubby or Apiary.\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"id\": - \"youtube.thumbnails.set\",\n \"supportsMediaUpload\": true,\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"mediaUpload\": {\n \"protocols\": {\n - \ \"resumable\": {\n \"multipart\": true,\n \"path\": - \"/resumable/upload/youtube/v3/thumbnails/set\"\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"2097152\"\n },\n \"description\": - \"As this is not an insert in a strict sense (it supports uploading/setting - of a thumbnail for multiple videos, which doesn't result in creation of a - single resource), I use a custom verb here.\"\n }\n }\n },\n - \ \"channels\": {\n \"methods\": {\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"request\": {\n - \ \"$ref\": \"Channel\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"id\": \"youtube.channels.update\",\n \"path\": \"youtube/v3/channels\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"id\": \"youtube.channels.list\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"forUsername\": {\n \"location\": - \"query\",\n \"description\": \"Return the channel associated - with a YouTube username.\",\n \"type\": \"string\"\n },\n - \ \"mySubscribers\": {\n \"description\": \"Return - the channels subscribed to the authenticated user\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"categoryId\": {\n \"location\": - \"query\",\n \"description\": \"Return the channels within the - specified guide category ID.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"Return the channels - with the specified IDs.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"managedByMe\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the channels managed by the authenticated user.\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"minimum\": \"0\",\n \"default\": \"5\"\n },\n - \ \"mine\": {\n \"description\": \"Return the ids of - channels owned by the authenticated user.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"path\": \"youtube/v3/channels\",\n \"response\": {\n - \ \"$ref\": \"ChannelListResponse\"\n },\n \"httpMethod\": - \"GET\"\n }\n }\n }\n },\n \"ownerDomain\": \"google.com\",\n - \ \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"protocol\": - \"rest\",\n \"discoveryVersion\": \"v1\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"description\": \"The YouTube Data API v3 is an API that provides access - to YouTube data, such as videos, playlists, and channels.\",\n \"fullyEncodeReservedExpansion\": - true,\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"canonicalName\": \"YouTube\",\n \"servicePath\": \"\",\n \"parameters\": - {\n \"oauth_token\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"OAuth 2.0 token for the current user.\"\n - \ },\n \"quotaUser\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"uploadType\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": \"Legacy - upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n },\n - \ \"access_token\": {\n \"description\": \"OAuth access token.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"fields\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"Selector specifying which fields to include in a partial response.\"\n },\n - \ \"prettyPrint\": {\n \"location\": \"query\",\n \"description\": - \"Returns response with indentations and line breaks.\",\n \"default\": - \"true\",\n \"type\": \"boolean\"\n },\n \"key\": {\n \"description\": - \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"$.xgafv\": - {\n \"description\": \"V1 error format.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"1\",\n \"2\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"v1 error format\",\n - \ \"v2 error format\"\n ]\n },\n \"callback\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": \"JSONP\"\n - \ },\n \"upload_protocol\": {\n \"type\": \"string\",\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"location\": - \"query\"\n },\n \"alt\": {\n \"description\": \"Data format for - response.\",\n \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"Responses - with Content-Type of application/json\",\n \"Media download with context-dependent - Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n - \ ],\n \"location\": \"query\",\n \"default\": \"json\"\n }\n - \ },\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"auth\": {\n - \ \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n }\n }\n }\n },\n \"revision\": - \"20230220\",\n \"kind\": \"discovery#restDescription\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:31 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCqh0C8cxo8FL2NzSBnOgEiw&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"fNdhD5g7czV6X8kvjuYZIVXrXfo\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"gY7hV8vnoh_d646Luo30rwTEg5A\",\n \"id\": \"UCqh0C8cxo8FL2NzSBnOgEiw\",\n - \ \"snippet\": {\n \"title\": \"Crypto\",\n \"description\": - \"\",\n \"customUrl\": \"@crypto2817\",\n \"publishedAt\": \"2014-04-03T06:57:10Z\",\n - \ \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/xor-oSD19K7NIB0GzxiZDf3sf6KXugNHWIDtbor4I7FtM5tf4m-0wqVoOtU88tQqISI1_Mt-=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/xor-oSD19K7NIB0GzxiZDf3sf6KXugNHWIDtbor4I7FtM5tf4m-0wqVoOtU88tQqISI1_Mt-=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/xor-oSD19K7NIB0GzxiZDf3sf6KXugNHWIDtbor4I7FtM5tf4m-0wqVoOtU88tQqISI1_Mt-=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Crypto\",\n \"description\": - \"\"\n }\n },\n \"brandingSettings\": {\n \"channel\": - {\n \"title\": \"Crypto\"\n }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:32 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"version\": \"v3\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": - {\n \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n }\n }\n }\n },\n \"baseUrl\": - \"https://youtube.googleapis.com/\",\n \"basePath\": \"\",\n \"batchPath\": - \"batch\",\n \"resources\": {\n \"members\": {\n \"methods\": {\n - \ \"list\": {\n \"description\": \"Retrieves a list of members - that match the request criteria for a channel.\",\n \"parameters\": - {\n \"maxResults\": {\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"maximum\": \"1000\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"type\": \"string\"\n },\n \"filterByMemberChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"hasAccessToLevel\": - {\n \"location\": \"query\",\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\",\n - \ \"type\": \"string\"\n },\n \"mode\": - {\n \"default\": \"all_current\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - only members that joined after the first call with this mode was made.\",\n - \ \"Return all current members, from newest to oldest.\"\n ],\n - \ \"location\": \"query\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"description\": \"Parameter that specifies which channel members - to return.\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.members.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"path\": \"youtube/v3/members\",\n \"flatPath\": - \"youtube/v3/members\"\n }\n }\n },\n \"tests\": {\n \"methods\": - {\n \"insert\": {\n \"response\": {\n \"$ref\": - \"TestItem\"\n },\n \"id\": \"youtube.tests.insert\",\n - \ \"flatPath\": \"youtube/v3/tests\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"POST method.\",\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/tests\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"TestItem\"\n }\n }\n }\n },\n - \ \"videoAbuseReportReasons\": {\n \"methods\": {\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/videoAbuseReportReasons\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the videoCategory resource parts that the API response - will include. Supported values are id and snippet.\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"default\": \"en-US\",\n - \ \"type\": \"string\"\n }\n }\n }\n - \ }\n },\n \"playlistItems\": {\n \"methods\": {\n \"update\": - {\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"description\": - \"Updates an existing resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.update\",\n \"httpMethod\": - \"PUT\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"path\": \"youtube/v3/playlistItems\",\n \"id\": - \"youtube.playlistItems.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"list\": {\n \"parameters\": {\n - \ \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"Return the playlist items within the given playlist.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"location\": \"query\"\n - \ },\n \"videoId\": {\n \"description\": - \"Return the playlist items associated with the given video ID.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": true\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItemListResponse\"\n },\n \"id\": - \"youtube.playlistItems.list\"\n },\n \"insert\": {\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.playlistItems.insert\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ }\n }\n },\n \"activities\": {\n \"methods\": {\n - \ \"list\": {\n \"id\": \"youtube.activities.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/activities\",\n - \ \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"home\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"publishedAfter\": - {\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"publishedBefore\": {\n \"format\": \"google-datetime\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"maximum\": \"50\",\n \"default\": - \"5\"\n }\n },\n \"flatPath\": \"youtube/v3/activities\"\n - \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.thirdPartyLinks.list\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"linkingToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Get a third party link with the given linking token.\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"description\": - \"Get a third party link of the given type.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ]\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/thirdPartyLinks\"\n },\n \"update\": {\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"required\": true,\n \"type\": - \"string\"\n },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"description\": \"Updates an - existing resource.\",\n \"id\": \"youtube.thirdPartyLinks.update\"\n - \ },\n \"delete\": {\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Do - not use. Required for compatibility.\"\n },\n \"linkingToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"Delete - the partner links with the given linking token.\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"description\": \"Type of the link to be - deleted.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"location\": - \"query\"\n },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"DELETE\",\n \"id\": - \"youtube.thirdPartyLinks.delete\",\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ],\n \"path\": \"youtube/v3/thirdPartyLinks\"\n - \ },\n \"insert\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"channelBanners\": {\n \"methods\": {\n \"insert\": - {\n \"parameterOrder\": [],\n \"request\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/channelBanners/insert\",\n \"supportsMediaUpload\": - true,\n \"id\": \"youtube.channelBanners.insert\",\n \"path\": - \"youtube/v3/channelBanners/insert\",\n \"response\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"mediaUpload\": {\n \"maxSize\": - \"6291456\",\n \"protocols\": {\n \"resumable\": {\n - \ \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"channelId\": {\n - \ \"description\": \"Unused, channel_id is currently derived from - the security context of the requestor.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n }\n }\n }\n },\n \"comments\": - {\n \"methods\": {\n \"markAsSpam\": {\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"Flags - the comments with the given IDs as spam in the caller's opinion.\"\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/comments/markAsSpam\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.comments.markAsSpam\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/comments\",\n \"id\": \"youtube.comments.delete\",\n - \ \"path\": \"youtube/v3/comments\",\n \"httpMethod\": \"DELETE\"\n - \ },\n \"setModerationStatus\": {\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"description\": \"Sets the moderation status of one or more comments.\",\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"parameters\": {\n \"id\": {\n \"description\": - \"Modifies the moderation status of the comments with the given IDs\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"moderationStatus\": - {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by - a moderator.\",\n \"\",\n \"The comment is unfit - for display.\"\n ],\n \"required\": true,\n \"type\": - \"string\",\n \"description\": \"Specifies the requested moderation - status. Note, comments can be in statuses, which are not available through - this call. For example, this call does not allow to mark a comment as 'likely - spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"location\": \"query\"\n },\n - \ \"banAuthor\": {\n \"default\": \"false\",\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"If set to true the author of the comment gets added to the ban list. This - means all future comments of the author will autmomatically be rejected. Only - valid in combination with STATUS_REJECTED.\"\n }\n },\n - \ \"id\": \"youtube.comments.setModerationStatus\"\n },\n \"update\": - {\n \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"id\": \"youtube.comments.update\",\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/comments\"\n },\n \"insert\": {\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.comments.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"response\": - {\n \"$ref\": \"Comment\"\n }\n },\n \"list\": - {\n \"flatPath\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.list\",\n - \ \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - a comma-separated list of one or more comment resource properties that the - API response will include.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Returns - the comments with the given IDs for One Platform.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"minimum\": \"1\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"default\": \"20\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"maximum\": \"100\"\n },\n \"textFormat\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"default\": \"html\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"description\": \"The requested text format for the returned - comments.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ]\n },\n \"parentId\": {\n \"type\": - \"string\",\n \"description\": \"Returns replies to the specified - comment. Note, currently YouTube features only one level of replies (ie replies - to top level comments). However replies to replies may be supported in the - future.\",\n \"location\": \"query\"\n }\n }\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"id\": - \"youtube.i18nLanguages.list\",\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - i18nLanguage resource properties that the API response will include. Set the - parameter value to snippet.\"\n },\n \"hl\": {\n \"default\": - \"en_US\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/i18nLanguages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"liveChatMessages\": {\n \"methods\": {\n \"insert\": - {\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"request\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"id\": \"youtube.liveChatMessages.insert\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/messages\"\n },\n \"list\": - {\n \"path\": \"youtube/v3/liveChat/messages\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Specifies the localization language in which the system messages should - be returned.\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - liveChatComment resource parts that the API response will include. Supported - values are id and snippet.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"profileImageSize\": - {\n \"minimum\": \"16\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"maximum\": \"720\",\n \"description\": \"Specifies - the size of the profile image that should be returned for each user.\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"The id of the live chat for which - comments should be returned.\",\n \"required\": true\n },\n - \ \"maxResults\": {\n \"maximum\": \"2000\",\n \"minimum\": - \"200\",\n \"location\": \"query\",\n \"type\": - \"integer\",\n \"description\": \"The *maxResults* parameter - specifies the maximum number of items that should be returned in the result - set.\",\n \"format\": \"uint32\",\n \"default\": - \"500\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"id\": \"youtube.liveChatMessages.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"id\": \"youtube.liveChatMessages.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Deletes a chat message.\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n }\n - \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n - \ \"set\": {\n \"description\": \"As this is not an insert - in a strict sense (it supports uploading/setting of a thumbnail for multiple - videos, which doesn't result in creation of a single resource), I use a custom - verb here.\",\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"parameterOrder\": [\n - \ \"videoId\"\n ],\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"2097152\",\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/thumbnails/set\"\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"id\": \"youtube.thumbnails.set\",\n \"response\": {\n - \ \"$ref\": \"ThumbnailSetResponse\"\n }\n }\n }\n - \ },\n \"subscriptions\": {\n \"methods\": {\n \"insert\": - {\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"Subscription\"\n },\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.subscriptions.insert\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n - \ },\n \"path\": \"youtube/v3/subscriptions\"\n },\n - \ \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"description\": - \"Deletes a resource.\"\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"myRecentSubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"mine\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Flag for returning the subscriptions of the - authenticated user.\",\n \"location\": \"query\"\n },\n - \ \"mySubscribers\": {\n \"description\": \"Return - the subscribers of the given channel owner.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"default\": \"5\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"forChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Return the subscriptions to - the subset of these channels that the authenticated user is subscribed to.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"order\": {\n \"location\": \"query\",\n \"enum\": - [\n \"subscriptionOrderUnspecified\",\n \"relevance\",\n - \ \"unread\",\n \"alphabetical\"\n ],\n - \ \"type\": \"string\",\n \"default\": \"relevance\",\n - \ \"description\": \"The order of the returned subscriptions\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Sort - by relevance.\",\n \"Sort by order of activity.\",\n \"Sort - alphabetically.\"\n ]\n },\n \"id\": {\n - \ \"description\": \"Return the subscriptions with the given IDs - for Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions of the given channel owner.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ }\n }\n }\n },\n \"i18nRegions\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"en_US\"\n }\n },\n \"path\": - \"youtube/v3/i18nRegions\",\n \"response\": {\n \"$ref\": - \"I18nRegionListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.i18nRegions.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/i18nRegions\"\n }\n }\n },\n \"videoCategories\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videoCategories\",\n \"flatPath\": - \"youtube/v3/videoCategories\",\n \"response\": {\n \"$ref\": - \"VideoCategoryListResponse\"\n },\n \"id\": \"youtube.videoCategories.list\",\n - \ \"parameters\": {\n \"regionCode\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"hl\": - {\n \"default\": \"en-US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the videoCategory resource properties that - the API response will include. Set the parameter value to snippet.\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Returns the video categories with the given IDs for Stubby or Apiary.\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"httpMethod\": - \"POST\"\n },\n \"list\": {\n \"parameters\": {\n \"videoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads of the specified - video.\"\n },\n \"allThreadsRelatedToChannelId\": {\n - \ \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads for all the channel - comments (ie does not include comments left on videos).\"\n },\n - \ \"searchTerms\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Limits the returned comment - threads to those matching the specified key words. Not compatible with the - 'id' filter.\"\n },\n \"moderationStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"location\": - \"query\",\n \"default\": \"published\",\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\"\n },\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"default\": \"20\",\n \"maximum\": \"100\",\n - \ \"type\": \"integer\"\n },\n \"order\": - {\n \"default\": \"time\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ]\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"textFormat\": - {\n \"description\": \"The requested text format for the returned - comments.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"location\": \"query\",\n - \ \"enum\": [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"default\": - \"html\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Returns the comment threads with the - given IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"id\": - \"youtube.commentThreads.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"liveStreams\": {\n \"methods\": {\n \"list\": - {\n \"parameters\": {\n \"maxResults\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"maximum\": - \"50\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n - \ \"repeated\": true,\n \"required\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Return - LiveStreams with the given ids from Stubby or Apiary.\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieve - the list of streams associated with the given channel. --\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"response\": {\n \"$ref\": - \"LiveStreamListResponse\"\n },\n \"id\": \"youtube.liveStreams.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveStreams\"\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.liveStreams.delete\",\n \"description\": \"Deletes an existing - stream for the authenticated user.\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.update\",\n \"httpMethod\": - \"PUT\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Updates - an existing stream for the authenticated user.\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\"\n },\n - \ \"insert\": {\n \"description\": \"Inserts a new stream for - the authenticated user.\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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, content_details, and status.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n }\n }\n }\n },\n \"watermarks\": - {\n \"methods\": {\n \"set\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"maxSize\": \"10485760\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n - \ }\n }\n },\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"description\": \"Allows upload of watermark image and setting - it for a channel.\",\n \"id\": \"youtube.watermarks.set\",\n \"request\": - {\n \"$ref\": \"InvideoBranding\"\n },\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"parameters\": {\n - \ \"channelId\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"httpMethod\": \"POST\",\n \"supportsMediaUpload\": true\n - \ },\n \"unset\": {\n \"httpMethod\": \"POST\",\n \"description\": - \"Allows removal of channel watermark.\",\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"id\": - \"youtube.watermarks.unset\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"parameters\": {\n \"channelId\": {\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n }\n - \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"update\": - {\n \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channels\",\n \"request\": - {\n \"$ref\": \"Channel\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/channels\",\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.channels.update\"\n },\n - \ \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"id\": \"youtube.channels.list\",\n \"path\": - \"youtube/v3/channels\",\n \"parameters\": {\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"forUsername\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channel associated with a YouTube - username.\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the ids of channels owned by the authenticated user.\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"50\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"mySubscribers\": {\n \"type\": \"boolean\",\n \"description\": - \"Return the channels subscribed to the authenticated user\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Return the channels with the - specified IDs.\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"hl\": {\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"categoryId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the channels within the specified guide category ID.\",\n \"type\": - \"string\"\n },\n \"managedByMe\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the channels managed - by the authenticated user.\",\n \"location\": \"query\"\n }\n - \ }\n }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"delete\": {\n \"description\": \"Deletes a chat moderator.\",\n - \ \"id\": \"youtube.liveChatModerators.delete\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": \"DELETE\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\"\n },\n \"list\": - {\n \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"liveChatId\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The id of the live chat for which moderators - should be returned.\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"minimum\": \"0\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the liveChatModerator resource parts that - the API response will include. Supported values are id and snippet.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveChatModeratorListResponse\"\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.liveChatModerators.list\"\n - \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"flatPath\": \"youtube/v3/search\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/search\",\n \"description\": \"Retrieves - a list of search resources\",\n \"id\": \"youtube.search.list\",\n - \ \"parameters\": {\n \"forDeveloper\": {\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"locationRadius\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on distance from the location (specified above).\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"forContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"Search owned by a content owner.\",\n - \ \"type\": \"boolean\"\n },\n \"regionCode\": - {\n \"description\": \"Display the content as seen by viewers - in this country.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoDuration\": {\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter video search results based on their duration. - This is the default value.\",\n \"Only include videos that - are less than four minutes long.\",\n \"Only include videos - that are between four and 20 minutes long (inclusive).\",\n \"Only - include videos longer than 20 minutes.\"\n ],\n \"enum\": - [\n \"videoDurationUnspecified\",\n \"any\",\n - \ \"short\",\n \"medium\",\n \"long\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Filter on the duration of the videos.\"\n },\n \"eventType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ],\n \"description\": - \"Filter on the livestream status of the videos.\",\n \"location\": - \"query\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n - \ },\n \"videoCaption\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"description\": \"Filter on the presence - of captions on the videos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter results based on caption availability.\",\n - \ \"Only include videos that have captions.\",\n \"Only - include videos that do not have captions.\"\n ],\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Filter on resources belonging - to this channelId.\",\n \"location\": \"query\"\n },\n - \ \"videoDefinition\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"description\": \"Filter on the definition of the videos.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\"\n },\n \"order\": {\n - \ \"default\": \"relevance\",\n \"type\": \"string\",\n - \ \"description\": \"Sort order of the results.\",\n \"location\": - \"query\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ]\n },\n \"videoType\": - {\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Filter on videos of a specific type.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos.\",\n \"Only retrieve movies.\",\n \"Only - retrieve episodes of shows.\"\n ]\n },\n \"relatedToVideoId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Search related to a resource.\"\n },\n - \ \"forMine\": {\n \"description\": \"Search for the - private videos of the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"videoDimension\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on 3d videos.\",\n \"location\": \"query\",\n \"enum\": - [\n \"any\",\n \"2d\",\n \"3d\"\n - \ ],\n \"enumDescriptions\": [\n \"Include - both 3D and non-3D videos in returned results. This is the default value.\",\n - \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict - search results to only include 3D videos.\"\n ]\n },\n - \ \"type\": {\n \"description\": \"Restrict results - to a particular set of resource types from One Platform.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"q\": {\n \"description\": - \"Textual search terms to match.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"relevanceLanguage\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return results relevant to this language.\"\n - \ },\n \"location\": {\n \"description\": - \"Filter on location of the video\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"publishedAfter\": - {\n \"description\": \"Filter on resources published after this - date.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"format\": \"google-datetime\"\n },\n - \ \"videoCategoryId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Filter - on videos in a specific category.\"\n },\n \"videoLicense\": - {\n \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Return - all videos, regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"description\": \"Filter on - the license of the videos.\",\n \"location\": \"query\"\n },\n - \ \"videoSyndicated\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"description\": - \"Filter on syndicated videos.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all videos, syndicated or - not.\",\n \"Only retrieve syndicated videos.\"\n ]\n - \ },\n \"safeSearch\": {\n \"default\": - \"moderate\",\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ],\n \"description\": \"Indicates - whether the search results should include restricted content as well as standard - content.\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelType\": {\n \"description\": - \"Add a filter on the channel search.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ]\n },\n - \ \"topicId\": {\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular topic.\",\n \"type\": \"string\"\n - \ },\n \"publishedBefore\": {\n \"type\": - \"string\",\n \"description\": \"Filter on resources published - before this date.\",\n \"location\": \"query\",\n \"format\": - \"google-datetime\"\n },\n \"videoEmbeddable\": {\n - \ \"location\": \"query\",\n \"description\": \"Filter - on embeddable videos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, embeddable or not.\",\n \"Only - retrieve embeddable videos.\"\n ],\n \"enum\": [\n - \ \"videoEmbeddableUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"type\": \"string\"\n - \ }\n }\n }\n }\n },\n \"youtube\": {\n - \ \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"description\": - \"Updates an existing resource.\",\n \"httpMethod\": \"PUT\",\n - \ \"parameterOrder\": [],\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"flatPath\": - \"youtube/v3/commentThreads\"\n }\n }\n }\n }\n - \ },\n \"playlists\": {\n \"methods\": {\n \"delete\": {\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a resource.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.playlists.delete\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n }\n },\n \"update\": {\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"path\": \"youtube/v3/playlists\"\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Return the playlists with the given IDs - for Stubby or Apiary.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"Return the - playlists owned by the specified channel ID.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"hl\": - {\n \"description\": \"Return content in specified language\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"maximum\": \"50\",\n - \ \"default\": \"5\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"type\": \"integer\",\n \"minimum\": - \"0\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the playlists owned by the authenticated - user.\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ }\n }\n }\n },\n \"abuseReports\": {\n \"methods\": - {\n \"insert\": {\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ }\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"response\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"channelSections\": - {\n \"methods\": {\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"id\": \"youtube.channelSections.insert\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.channelSections.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"path\": - \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"update\": {\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"id\": \"youtube.channelSections.update\",\n \"path\": - \"youtube/v3/channelSections\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ }\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"parameters\": {\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\"\n },\n - \ \"hl\": {\n \"description\": \"Return content in - specified language\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the ChannelSections - owned by the authenticated user.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"path\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.channelSections.list\",\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"liveChatBans\": - {\n \"methods\": {\n \"insert\": {\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"response\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"delete\": {\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Deletes a chat ban.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/liveChat/bans\",\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"id\": \"youtube.liveChatBans.delete\"\n - \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"update\": - {\n \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"supportsMediaUpload\": true,\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\",\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"onBehalfOf\": {\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.captions.update\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"maxSize\": \"104857600\",\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ }\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions\"\n },\n \"download\": - {\n \"parameters\": {\n \"tfmt\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Convert the captions into this format. Supported options are sbv, srt, and - vtt.\"\n },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"tlang\": - {\n \"description\": \"tlang is the language code; machine translate - the captions into this language.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"The ID of the caption track to download, - required for One Platform.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"path\"\n }\n },\n - \ \"supportsMediaDownload\": true,\n \"id\": \"youtube.captions.download\",\n - \ \"path\": \"youtube/v3/captions/{id}\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"description\": \"Downloads a caption track.\",\n \"useMediaDownloadService\": - true,\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"httpMethod\": - \"GET\"\n },\n \"insert\": {\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"path\": \"youtube/v3/captions\",\n \"id\": - \"youtube.captions.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"part\": {\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"supportsMediaUpload\": true,\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"mediaUpload\": {\n \"maxSize\": - \"104857600\",\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ]\n - \ }\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is be on behalf of\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.captions.delete\",\n \"description\": \"Deletes a resource.\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/captions\"\n },\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.captions.list\",\n \"parameters\": {\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Returns the captions with the - given IDs for Stubby or Apiary.\",\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"Returns the captions for the specified video.\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"CaptionListResponse\"\n },\n \"path\": - \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ]\n }\n - \ }\n },\n \"videos\": {\n \"methods\": {\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Video\"\n },\n \"path\": \"youtube/v3/videos\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"parameters\": {\n \"stabilize\": {\n \"description\": - \"Should stabilize be applied to the upload.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"autoLevels\": {\n \"type\": \"boolean\",\n \"description\": - \"Should auto-levels be applied to the upload.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\",\n - \ \"repeated\": true\n },\n \"notifySubscribers\": - {\n \"location\": \"query\",\n \"description\": - \"Notify the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"type\": \"boolean\",\n \"default\": - \"true\"\n }\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"id\": \"youtube.videos.insert\",\n \"httpMethod\": \"POST\",\n - \ \"mediaUpload\": {\n \"maxSize\": \"274877906944\",\n - \ \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"video/*\",\n \"application/octet-stream\"\n - \ ]\n },\n \"supportsMediaUpload\": true\n },\n - \ \"rate\": {\n \"id\": \"youtube.videos.rate\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/videos/rate\",\n \"parameters\": - {\n \"rating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"location\": \"query\",\n \"required\": - true\n },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true\n }\n - \ },\n \"description\": \"Adds a like or dislike rating to - a video or removes a rating from a video.\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos/rate\"\n },\n \"update\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/videos\",\n \"id\": \"youtube.videos.update\",\n \"response\": - {\n \"$ref\": \"Video\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"required\": true\n }\n }\n },\n - \ \"reportAbuse\": {\n \"description\": \"Report abuse for - a video.\",\n \"id\": \"youtube.videos.reportAbuse\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos/reportAbuse\",\n \"request\": - {\n \"$ref\": \"VideoAbuseReport\"\n },\n \"parameterOrder\": - [],\n \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n }\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/videos\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.delete\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"DELETE\"\n - \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.videos.list\",\n \"path\": \"youtube/v3/videos\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Stands - for \\\"host language\\\". Specifies the localization language of the metadata - to be filled into snippet.localized. The field is filled with the default - metadata if there is no localization in the specified language. The parameter - value must be a language code included in the list returned by the i18nLanguages.list - method (e.g. en_US, es_MX).\"\n },\n \"maxHeight\": - {\n \"maximum\": \"8192\",\n \"format\": \"int32\",\n - \ \"minimum\": \"72\",\n \"type\": \"integer\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"myRating\": {\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"type\": - \"string\"\n },\n \"maxWidth\": {\n \"minimum\": - \"72\",\n \"location\": \"query\",\n \"maximum\": - \"8192\",\n \"description\": \"Return the player with maximum - height specified in\",\n \"type\": \"integer\",\n \"format\": - \"int32\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Use a chart that is specific to the specified region\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"description\": - \"Return videos with the given ids.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"videoCategoryId\": - {\n \"type\": \"string\",\n \"default\": \"0\",\n - \ \"location\": \"query\",\n \"description\": \"Use - chart that is specific to the specified video category\"\n },\n - \ \"chart\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"enum\": [\n - \ \"chartUnspecified\",\n \"mostPopular\"\n ],\n - \ \"description\": \"Return the videos that are in the specified - chart.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"1\"\n },\n \"locale\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"VideoListResponse\"\n }\n },\n \"getRating\": {\n - \ \"flatPath\": \"youtube/v3/videos/getRating\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/videos/getRating\",\n \"description\": - \"Retrieves the ratings that the authorized user gave to a list of specified - videos.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.getRating\",\n \"response\": - {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"update\": {\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"description\": \"Updates an existing broadcast for the authenticated - user.\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"id\": \"youtube.liveBroadcasts.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\"\n - \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Broadcast to delete.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Delete a given broadcast.\",\n \"id\": - \"youtube.liveBroadcasts.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"bind\": {\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Bind a broadcast to a stream.\",\n \"parameters\": - {\n \"streamId\": {\n \"description\": \"Stream to - bind, if not set unbind the current one.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to bind to the stream\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true,\n - \ \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.liveBroadcasts.bind\"\n },\n \"insert\": {\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"id\": \"youtube.liveBroadcasts.insert\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n }\n },\n \"transition\": {\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"description\": \"Transition a broadcast to a given - status.\",\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameters\": - {\n \"broadcastStatus\": {\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"description\": \"The status to which the - broadcast is going to transition.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"required\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"Broadcast to transition.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\"\n },\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return broadcasts with the given ids from - Stubby or Apiary.\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"default\": \"5\",\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"minimum\": - \"0\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"broadcastStatus\": - {\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"type\": \"string\",\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"location\": - \"query\"\n },\n \"broadcastType\": {\n \"location\": - \"query\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ],\n \"default\": \"event\",\n \"type\": - \"string\",\n \"description\": \"Return only broadcasts with - the selected type.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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, status and statistics.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.liveBroadcasts.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieve - the list of broadcasts associated with the given channel.\"\n },\n - \ \"insertCuepoint\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Cuepoint\"\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"id\": - {\n \"description\": \"Broadcast to insert ads to, or equivalently - `external_video_id` for internal use.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Insert cuepoints in a broadcast\",\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [],\n \"path\": - \"youtube/v3/liveBroadcasts/cuepoint\"\n }\n }\n },\n \"superChatEvents\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.superChatEvents.list\",\n \"flatPath\": - \"youtube/v3/superChatEvents\",\n \"path\": \"youtube/v3/superChatEvents\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"description\": \"Return rendered funding amounts - in specified language.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - superChatEvent resource parts that the API response will include. This parameter - is currently not supported.\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"location\": \"query\",\n \"minimum\": - \"1\"\n }\n }\n }\n }\n }\n },\n \"revision\": - \"20230220\",\n \"discoveryVersion\": \"v1\",\n \"ownerName\": \"Google\",\n - \ \"id\": \"youtube:v3\",\n \"description\": \"The YouTube Data API v3 is - an API that provides access to YouTube data, such as videos, playlists, and - channels.\",\n \"schemas\": {\n \"LiveChatMembershipGiftingDetails\": - {\n \"properties\": {\n \"giftMembershipsLevelName\": {\n \"description\": - \"The name of the level of the gift memberships purchased by the user. The - Level names are defined by the YouTube channel offering the Membership. In - some situations this field isn't filled.\",\n \"type\": \"string\"\n - \ },\n \"giftMembershipsCount\": {\n \"description\": - \"The number of gift memberships purchased by the user.\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n - \ \"CommentThreadListResponse\": {\n \"properties\": {\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of comment threads that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"CommentThread\"\n - \ }\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#commentThreadListResponse\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"CommentThreadListResponse\"\n - \ },\n \"CommentListResponse\": {\n \"id\": \"CommentListResponse\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of comments - that match the request criteria.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"default\": \"youtube#commentListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"Entity\": {\n - \ \"type\": \"object\",\n \"id\": \"Entity\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n },\n \"url\": - {\n \"type\": \"string\"\n },\n \"typeId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"I18nRegion\": {\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n },\n \"kind\": {\n - \ \"default\": \"youtube#i18nRegion\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegion\\\".\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the i18n region.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"I18nRegion\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"properties\": {\n \"isUpgrade\": {\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\",\n \"type\": - \"boolean\"\n },\n \"memberLevelName\": {\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LiveChatNewSponsorDetails\",\n \"type\": \"object\"\n - \ },\n \"VideoProcessingDetails\": {\n \"properties\": {\n \"processingStatus\": - {\n \"enum\": [\n \"processing\",\n \"succeeded\",\n - \ \"failed\",\n \"terminated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\"\n },\n - \ \"processingFailureReason\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"type\": - \"string\",\n \"description\": \"The reason that YouTube failed to - process the video. This property will only have a value if the processingStatus - property's value is failed.\"\n },\n \"thumbnailsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether thumbnail images have been generated for the video.\"\n - \ },\n \"processingIssuesAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether the - video processing engine has generated suggestions that might improve YouTube's - ability to process the the video, warnings that explain video processing problems, - or errors that cause video processing problems. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"fileDetailsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether file details are - available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\"\n },\n - \ \"tagSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether keyword (tag) suggestions are available for the video. - Tags can be added to a video's metadata to make it easier for other users - to find the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"processingProgress\": {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"The processingProgress object contains information - about the progress YouTube has made in processing the video. The values are - really only relevant if the video's processing status is processing.\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether video editing suggestions, which might improve video - quality or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Describes processing status and progress and availability of some other - Video resource parts.\",\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetails\"\n - \ },\n \"CommentThreadReplies\": {\n \"properties\": {\n \"comments\": - {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"type\": \"array\",\n \"description\": \"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.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"CommentThreadReplies\",\n \"description\": \"Comments written in (direct - or indirect) reply to the top level comment.\"\n },\n \"Channel\": {\n - \ \"description\": \"A *channel* resource contains information about a - YouTube channel.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"status\": {\n \"$ref\": - \"ChannelStatus\",\n \"description\": \"The status object encapsulates - information about the privacy status of the channel.\"\n },\n \"auditDetails\": - {\n \"$ref\": \"ChannelAuditDetails\",\n \"description\": - \"The auditionDetails object encapsulates channel data that is relevant for - YouTube Partners during the audition process.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ChannelContentDetails\",\n \"description\": - \"The contentDetails object encapsulates information about the channel's content.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"default\": \"youtube#channel\",\n \"type\": \"string\"\n - \ },\n \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n - \ \"brandingSettings\": {\n \"description\": \"The brandingSettings - object encapsulates information about the branding of the channel.\",\n \"$ref\": - \"ChannelBrandingSettings\"\n },\n \"localizations\": {\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n - \ }\n },\n \"topicDetails\": {\n \"$ref\": - \"ChannelTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the channel.\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the channel, such as its title, description, - and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n },\n - \ \"contentOwnerDetails\": {\n \"$ref\": \"ChannelContentOwnerDetails\",\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel.\"\n }\n - \ },\n \"id\": \"Channel\"\n },\n \"MembershipsLevel\": {\n - \ \"description\": \"A *membershipsLevel* resource represents an offer - made by YouTube creators for their fans. Users can become members of the channel - by joining one of the available levels. They will provide recurring monetary - support and receives special benefits.\",\n \"id\": \"MembershipsLevel\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the memberships level.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the level.\",\n \"$ref\": - \"MembershipsLevelSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevel\"\n - \ }\n }\n },\n \"PageInfo\": {\n \"type\": \"object\",\n - \ \"id\": \"PageInfo\",\n \"description\": \"Paging details for lists - of resources, including total number of items available and number of resources - returned in a single page.\",\n \"properties\": {\n \"resultsPerPage\": - {\n \"description\": \"The number of results included in the API - response.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ },\n \"totalResults\": {\n \"description\": \"The - total number of results in the result set.\",\n \"type\": \"integer\",\n - \ \"format\": \"int32\"\n }\n }\n },\n \"VideoPlayer\": - {\n \"id\": \"VideoPlayer\",\n \"properties\": {\n \"embedWidth\": - {\n \"description\": \"The embed width\",\n \"format\": - \"int64\",\n \"type\": \"string\"\n },\n \"embedHeight\": - {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n - \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Player - to be used for a video playback.\"\n },\n \"AbuseReport\": {\n \"id\": - \"AbuseReport\",\n \"properties\": {\n \"subject\": {\n \"$ref\": - \"Entity\"\n },\n \"abuseTypes\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"AbuseType\"\n }\n - \ },\n \"description\": {\n \"type\": \"string\"\n },\n - \ \"relatedEntities\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"RelatedEntity\"\n }\n }\n },\n - \ \"type\": \"object\"\n },\n \"ChannelSectionLocalization\": {\n - \ \"id\": \"ChannelSectionLocalization\",\n \"description\": \"ChannelSection - localization setting\",\n \"type\": \"object\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The localized strings - for channel section's title.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"MonitorStreamInfo\": {\n \"properties\": {\n \"enableMonitorStream\": - {\n \"description\": \"This value determines whether the monitor - stream is enabled for the broadcast. If the monitor stream is enabled, then - YouTube will broadcast the event content on a special stream intended only - for the broadcaster's consumption. The broadcaster can use the stream to review - the event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"boolean\"\n },\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"HTML code that embeds a player that - plays the monitor stream.\"\n },\n \"broadcastStreamDelayMs\": - {\n \"type\": \"integer\",\n \"description\": \"If you have - set the enableMonitorStream property to true, then this property determines - the length of the live broadcast delay.\",\n \"format\": \"uint32\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n }\n },\n \"description\": \"Settings - and Info of the monitor stream\",\n \"type\": \"object\",\n \"id\": - \"MonitorStreamInfo\"\n },\n \"LevelDetails\": {\n \"properties\": - {\n \"displayName\": {\n \"description\": \"The name that - should be used when referring to this level.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LevelDetails\",\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsSocial\": {\n \"id\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"Details about a social network post.\",\n \"properties\": - {\n \"referenceUrl\": {\n \"description\": \"The URL of the - social network post.\",\n \"type\": \"string\"\n },\n \"imageUrl\": - {\n \"description\": \"An image of the post's author.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"description\": \"The name of the social network.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\"\n },\n - \ \"author\": {\n \"type\": \"string\",\n \"description\": - \"The author of the social network post.\"\n }\n },\n \"type\": - \"object\"\n },\n \"Cuepoint\": {\n \"id\": \"Cuepoint\",\n \"description\": - \"Note that there may be a 5-second end-point resolution issue. For instance, - if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\",\n \"properties\": - {\n \"cueType\": {\n \"type\": \"string\",\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"durationSecs\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The duration - of this cuepoint.\"\n },\n \"walltimeMs\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - wall clock time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\"\n },\n \"insertionOffsetTimeMs\": - {\n \"description\": \"The time when the cuepoint should be inserted - by offset to the broadcast actual start time.\",\n \"format\": \"int64\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - identifier for cuepoint resource.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"InvideoBranding\": {\n - \ \"type\": \"object\",\n \"id\": \"InvideoBranding\",\n \"properties\": - {\n \"position\": {\n \"description\": \"The spatial position - within the video where the branding watermark will be displayed.\",\n \"$ref\": - \"InvideoPosition\"\n },\n \"timing\": {\n \"description\": - \"The temporal position within the video where watermark will be displayed.\",\n - \ \"$ref\": \"InvideoTiming\"\n },\n \"imageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"The url of the - uploaded image. Only used in apiary to api communication.\"\n },\n - \ \"imageBytes\": {\n \"format\": \"byte\",\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"type\": \"string\"\n },\n \"targetChannelId\": {\n - \ \"description\": \"The channel to which this branding links. If - not present it defaults to the current channel.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"LINT.IfChange Describes an invideo - branding.\"\n },\n \"PlaylistItemSnippet\": {\n \"properties\": - {\n \"description\": {\n \"description\": \"The item's description.\",\n - \ \"type\": \"string\"\n },\n \"videoOwnerChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel id - for the channel this video belongs to.\"\n },\n \"position\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": - \"string\"\n },\n \"videoOwnerChannelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel this - video belongs to.\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The id object contains information - that can be used to uniquely identify the resource that is included in the - playlist as the playlist item.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n }\n },\n \"playlistId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify thGe playlist that the playlist item is - in.\"\n },\n \"thumbnails\": {\n \"description\": \"A - map of thumbnail images associated with the playlist item. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the user that added the item to the playlist.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the item was added to the playlist.\",\n \"format\": - \"date-time\"\n },\n \"title\": {\n \"description\": - \"The item's title.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Basic details about a playlist, including title, - description and thumbnails. Basic details of a YouTube Playlist item provided - by the author. Next ID: 15\",\n \"id\": \"PlaylistItemSnippet\",\n \"type\": - \"object\"\n },\n \"VideoAbuseReportReason\": {\n \"description\": - \"A `__videoAbuseReportReason__` resource identifies a reason that a video - could be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\",\n - \ \"id\": \"VideoAbuseReportReason\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#videoAbuseReportReason\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - this abuse report reason.\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the abuse report reason.\",\n - \ \"$ref\": \"VideoAbuseReportReasonSnippet\"\n }\n }\n - \ },\n \"ImageSettings\": {\n \"properties\": {\n \"trackingImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size extra high resolution - (2560x424).\",\n \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size low resolution (854x480).\"\n },\n \"bannerTabletImageUrl\": - {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n - \ \"type\": \"string\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\",\n \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size high resolution (2276x377).\"\n },\n \"bannerMobileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size (640x175).\"\n },\n \"backgroundImageUrl\": {\n - \ \"description\": \"The URL for the background image shown on the - video watch page. The image should be 1200px by 615px, with a maximum file - size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerExternalUrl\": {\n \"type\": \"string\",\n \"description\": - \"This is generated when a ChannelBanner.Insert request has succeeded for - the given channel.\"\n },\n \"bannerImageUrl\": {\n \"description\": - \"Banner image. Desktop size (1060x175).\",\n \"type\": \"string\"\n - \ },\n \"bannerTvMediumImageUrl\": {\n \"description\": - \"Banner image. TV size medium resolution (1280x720).\",\n \"type\": - \"string\"\n },\n \"bannerTvHighImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. TV size high resolution - (1920x1080).\"\n },\n \"bannerMobileMediumHdImageUrl\": {\n - \ \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 640px by 70px banner image - that appears below the video player in the default view of the video watch - page. The URL for the image that appears above the top-left corner of the - video player. This is a 25-pixel-high image with a flexible width that cannot - exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerMobileLowImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Mobile size low resolution (320x88).\"\n - \ },\n \"bannerTvImageUrl\": {\n \"description\": \"Banner - image. TV size extra high resolution (2120x1192).\",\n \"type\": - \"string\"\n },\n \"bannerTabletLowImageUrl\": {\n \"description\": - \"Banner image. Tablet size low resolution (1138x188).\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Branding properties - for images associated with the channel.\",\n \"id\": \"ImageSettings\",\n - \ \"type\": \"object\"\n },\n \"Member\": {\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the member.\",\n \"$ref\": \"MemberSnippet\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#member\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A *member* resource represents a member for a YouTube - channel. A member provides recurring monetary support to a creator and receives - special benefits.\",\n \"id\": \"Member\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoSuggestions\": {\n - \ \"id\": \"VideoSuggestions\",\n \"description\": \"Specifies suggestions - on how to improve video content, including encoding hints, tag suggestions, - and editor suggestions.\",\n \"properties\": {\n \"tagSuggestions\": - {\n \"type\": \"array\",\n \"description\": \"A list of - keyword tags that could be added to the video's metadata to increase the likelihood - that users will locate your video when searching or browsing on YouTube.\",\n - \ \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ }\n },\n \"processingErrors\": {\n \"type\": - \"array\",\n \"items\": {\n \"enumDescriptions\": [\n - \ \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"audioFile\",\n \"imageFile\",\n - \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n - \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n },\n \"description\": \"A list of errors - that will prevent YouTube from successfully processing the uploaded video - video. These errors indicate that, regardless of the video's current processing - status, eventually, that status will almost certainly be failed.\"\n },\n - \ \"processingWarnings\": {\n \"description\": \"A list of - reasons why YouTube may have difficulty transcoding the uploaded video or - that might result in an erroneous transcoding. These warnings are generated - before YouTube actually processes the uploaded video file. In addition, they - identify issues that are unlikely to cause the video processing to fail but - that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"editorSuggestions\": - {\n \"description\": \"A list of video editing operations that might - improve the video quality or playback experience of the uploaded video.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ],\n - \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ]\n - \ }\n },\n \"processingHints\": {\n \"items\": - {\n \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\"\n },\n \"description\": - \"A list of suggestions that may improve YouTube's ability to process the - video.\",\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\"\n },\n \"CdnSettings\": {\n \"properties\": {\n \"ingestionType\": - {\n \"type\": \"string\",\n \"description\": \" The method - or protocol used to transmit the video stream.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"enum\": [\n \"rtmp\",\n - \ \"dash\",\n \"webrtc\",\n \"hls\"\n ]\n - \ },\n \"ingestionInfo\": {\n \"description\": \"The - ingestionInfo object contains information that YouTube provides that you need - to transmit your RTMP or HTTP stream to YouTube.\",\n \"$ref\": \"IngestionInfo\"\n - \ },\n \"format\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The format of the video stream that you are sending - to Youtube. \"\n },\n \"resolution\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"240p\",\n \"360p\",\n - \ \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\",\n - \ \"2160p\",\n \"variable\"\n ],\n \"description\": - \"The resolution of the inbound video data.\",\n \"type\": \"string\"\n - \ },\n \"frameRate\": {\n \"type\": \"string\",\n \"description\": - \"The frame rate of the inbound video data.\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"id\": \"CdnSettings\",\n \"description\": \"Brief description - of the live stream cdn settings.\",\n \"type\": \"object\"\n },\n - \ \"VideoAbuseReportReasonSnippet\": {\n \"description\": \"Basic details - about a video category, such as its localized title.\",\n \"properties\": - {\n \"secondaryReasons\": {\n \"description\": \"The secondary - reasons associated with this reason, if any are available. (There might be - 0 or more.)\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"type\": \"array\"\n },\n \"label\": - {\n \"description\": \"The localized label belonging to this abuse - report reason.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"VideoAbuseReportReasonSnippet\",\n \"type\": \"object\"\n },\n \"ChannelLocalization\": - {\n \"properties\": {\n \"description\": {\n \"description\": - \"The localized strings for channel's description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for channel's title.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Channel - localization setting\",\n \"id\": \"ChannelLocalization\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"id\": \"ActivityContentDetailsBulletin\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Details about - a channel bulletin post.\"\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"type\": \"object\",\n \"properties\": {\n \"categoryRestricts\": - {\n \"type\": \"array\",\n \"description\": \"A set of video - categories for which the tag is relevant. You can use this information to - display appropriate tag suggestions based on the video category that the video - uploader associates with the video. By default, tag suggestions are relevant - for all categories if there are no restricts defined for the keyword.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"tag\": {\n \"type\": \"string\",\n \"description\": - \"The keyword tag suggested for the video.\"\n }\n },\n \"description\": - \"A single tag suggestion with it's relevance information.\",\n \"id\": - \"VideoSuggestionsTagSuggestion\"\n },\n \"InvideoTiming\": {\n \"id\": - \"InvideoTiming\",\n \"description\": \"Describes a temporal position - of a visual widget inside a video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"offsetMs\": {\n \"description\": \"Defines the time - at which the promotion will appear. Depending on the value of type the value - of the offsetMs field will represent a time offset from the start or from - the end of the video, expressed in milliseconds.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"description\": \"Describes a timing type. If the - value is offsetFromStart, then the offsetMs field represents an offset from - the start of the video. If the value is offsetFromEnd, then the offsetMs field - represents an offset from the end of the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ]\n - \ },\n \"durationMs\": {\n \"description\": \"Defines - the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LiveBroadcastStatus\": - {\n \"properties\": {\n \"selfDeclaredMadeForKids\": {\n \"description\": - \"This field will be set to True if the creator declares the broadcast to - be kids only: go/live-cw-work.\",\n \"type\": \"boolean\"\n },\n - \ \"recordingStatus\": {\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"description\": \"The broadcast's recording status.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"No - value or the value is unknown.\",\n \"The recording has not yet - been started.\",\n \"The recording is currently on.\",\n \"The - recording is completed, and cannot be started again.\"\n ]\n },\n - \ \"lifeCycleStatus\": {\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"No - value or the value is unknown.\",\n \"Incomplete settings, but - otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\"\n },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"The broadcast's - privacy status. Note that the broadcast represents exactly one YouTube video, - so the privacy settings are identical to those supported for videos. In addition, - you can set this field by modifying the broadcast resource or by setting the - privacyStatus field of the corresponding video resource.\",\n \"type\": - \"string\"\n },\n \"liveBroadcastPriority\": {\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"description\": - \"Priority of the live broadcast event (internal state).\",\n \"enum\": - [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ],\n \"type\": - \"string\"\n },\n \"madeForKids\": {\n \"description\": - \"Whether the broadcast is made for kids or not, decided by YouTube instead - of the creator. This field is read only.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"description\": \"Live broadcast state.\",\n \"type\": - \"object\",\n \"id\": \"LiveBroadcastStatus\"\n },\n \"ChannelTopicDetails\": - {\n \"description\": \"Freebase topic information related to the channel.\",\n - \ \"properties\": {\n \"topicIds\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\"\n },\n - \ \"topicCategories\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelTopicDetails\"\n - \ },\n \"I18nRegionSnippet\": {\n \"properties\": {\n \"gl\": - {\n \"description\": \"The region code as a 2-letter ISO country - code.\",\n \"type\": \"string\"\n },\n \"name\": {\n - \ \"type\": \"string\",\n \"description\": \"The human-readable - name of the region.\"\n }\n },\n \"description\": \"Basic - details about an i18n region, such as region code and human-readable name.\",\n - \ \"type\": \"object\",\n \"id\": \"I18nRegionSnippet\"\n },\n - \ \"ChannelSettings\": {\n \"type\": \"object\",\n \"description\": - \"Branding properties for the channel view.\",\n \"properties\": {\n - \ \"unsubscribedTrailer\": {\n \"type\": \"string\",\n \"description\": - \"The trailer of the channel, for users that are not subscribers.\"\n },\n - \ \"defaultTab\": {\n \"type\": \"string\",\n \"description\": - \"Which content tab users should see when viewing the channel.\"\n },\n - \ \"moderateComments\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether user-submitted comments left on the channel page need to be approved - by the channel owner to be publicly visible.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the channel title.\"\n },\n \"featuredChannelsUrls\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The list of featured channels.\",\n \"type\": \"array\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\"\n },\n - \ \"profileColor\": {\n \"description\": \"A prominent color - that can be rendered on this channel page.\",\n \"type\": \"string\"\n - \ },\n \"keywords\": {\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"Specifies - the channel description.\",\n \"type\": \"string\"\n },\n - \ \"featuredChannelsTitle\": {\n \"description\": \"Title for - the featured channels tab.\",\n \"type\": \"string\"\n },\n - \ \"showBrowseView\": {\n \"description\": \"Whether the tab - to browse the videos should be displayed.\",\n \"type\": \"boolean\"\n - \ },\n \"showRelatedChannels\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether related channels should be proposed.\"\n - \ },\n \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"type\": \"string\",\n \"description\": \"The ID for - a Google Analytics account to track and measure traffic to the channels.\"\n - \ }\n },\n \"id\": \"ChannelSettings\"\n },\n \"VideoStatistics\": - {\n \"type\": \"object\",\n \"id\": \"VideoStatistics\",\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\",\n \"properties\": {\n \"favoriteCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of users who currently have the video marked as a favorite video.\"\n - \ },\n \"dislikeCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of users who have indicated that they - disliked the video by giving it a negative rating.\",\n \"type\": - \"string\"\n },\n \"commentCount\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of comments for the video.\",\n \"format\": - \"uint64\"\n },\n \"likeCount\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of users who have indicated that they liked the video by giving it a positive - rating.\"\n },\n \"viewCount\": {\n \"description\": - \"The number of times the video has been viewed.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n }\n }\n },\n \"CommentThreadSnippet\": - {\n \"id\": \"CommentThreadSnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a comment thread.\",\n \"properties\": - {\n \"canReply\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"isPublic\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\"\n },\n \"topLevelComment\": {\n \"$ref\": - \"Comment\",\n \"description\": \"The top level comment of this thread.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"totalReplyCount\": {\n \"type\": - \"integer\",\n \"description\": \"The total number of replies (not - including the top level comment).\",\n \"format\": \"uint32\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID of the video the - comments refer to, if any. No video_id implies a channel discussion comment.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoRating\": - {\n \"description\": \"Basic details about rating of a video.\",\n \"properties\": - {\n \"rating\": {\n \"description\": \"Rating of a video.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The entity - is liked.\",\n \"The entity is disliked.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n },\n \"videoId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n }\n },\n \"id\": - \"VideoRating\",\n \"type\": \"object\"\n },\n \"VideoProjectDetails\": - {\n \"id\": \"VideoProjectDetails\",\n \"properties\": {},\n \"description\": - \"DEPRECATED. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"type\": \"object\"\n },\n \"SearchResultSnippet\": {\n \"id\": - \"SearchResultSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"properties\": {\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the search result. 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.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the search result.\"\n },\n \"liveBroadcastContent\": - {\n \"description\": \"It indicates if the resource (video or channel) - has upcoming/active live broadcast content. Or it's \\\"none\\\" if there - is not any upcoming/active live broadcasts.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ]\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The creation date and time of the resource that - the search result identifies.\",\n \"format\": \"date-time\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"The title of the channel that published the resource that the search result - identifies.\"\n },\n \"description\": {\n \"description\": - \"A description of the search result.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ActivitySnippet\": {\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the resource primarily associated with the activity.\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel responsible for this activity\"\n },\n - \ \"type\": {\n \"enum\": [\n \"typeUnspecified\",\n - \ \"upload\",\n \"like\",\n \"favorite\",\n - \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n - \ \"recommendation\",\n \"bulletin\",\n \"social\",\n - \ \"channelItem\",\n \"promotedItem\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of activity that the resource describes.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the resource primarily associated - with the activity. @mutable youtube.activities.insert\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel associated with the activity.\"\n - \ },\n \"thumbnails\": {\n \"description\": \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the video - was uploaded.\"\n },\n \"groupId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about an activity, including title, description, thumbnails, - activity type and group. Next ID: 12\",\n \"id\": \"ActivitySnippet\",\n - \ \"type\": \"object\"\n },\n \"ChannelToStoreLinkDetails\": {\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"storeName\": {\n \"type\": \"string\",\n \"description\": - \"Name of the store.\"\n },\n \"merchantId\": {\n \"type\": - \"string\",\n \"description\": \"Google Merchant Center id of the - store.\",\n \"format\": \"uint64\"\n },\n \"storeUrl\": - {\n \"type\": \"string\",\n \"description\": \"Landing page - of the store.\"\n }\n },\n \"id\": \"ChannelToStoreLinkDetails\"\n - \ },\n \"ActivityContentDetails\": {\n \"id\": \"ActivityContentDetails\",\n - \ \"description\": \"Details about the content of an activity: the video - that was shared, the channel that was subscribed to, etc.\",\n \"type\": - \"object\",\n \"properties\": {\n \"subscription\": {\n \"$ref\": - \"ActivityContentDetailsSubscription\",\n \"description\": \"The - subscription object contains information about a channel that a user subscribed - to. This property is only present if the snippet.type is subscription.\"\n - \ },\n \"upload\": {\n \"$ref\": \"ActivityContentDetailsUpload\",\n - \ \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\"\n - \ },\n \"bulletin\": {\n \"description\": \"The bulletin - object contains details about a channel bulletin post. This object is only - present if the snippet.type is bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n - \ },\n \"like\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsLike\"\n },\n \"channelItem\": {\n \"description\": - \"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.\",\n - \ \"$ref\": \"ActivityContentDetailsChannelItem\"\n },\n \"social\": - {\n \"description\": \"The social object contains details about a - social network post. This property is only present if the snippet.type is - social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n },\n - \ \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\"\n },\n \"recommendation\": {\n \"$ref\": - \"ActivityContentDetailsRecommendation\",\n \"description\": \"The - recommendation object contains information about a recommended resource. This - property is only present if the snippet.type is recommendation.\"\n },\n - \ \"favorite\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsFavorite\"\n },\n \"comment\": {\n \"description\": - \"The comment object contains information about a resource that received a - comment. This property is only present if the snippet.type is comment.\",\n - \ \"$ref\": \"ActivityContentDetailsComment\"\n },\n \"promotedItem\": - {\n \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\",\n \"$ref\": \"ActivityContentDetailsPromotedItem\"\n - \ }\n }\n },\n \"IngestionInfo\": {\n \"description\": - \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n - \ \"properties\": {\n \"rtmpsBackupIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of backupIngestionAddress in order - to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": - \"string\"\n },\n \"rtmpsIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\"\n },\n \"backupIngestionAddress\": {\n \"description\": - \"The backup ingestion URL that you should use to stream video to YouTube. - You have the option of simultaneously streaming the content that you are sending - to the ingestionAddress to this URL.\",\n \"type\": \"string\"\n - \ },\n \"streamName\": {\n \"type\": \"string\",\n \"description\": - \"The stream name that YouTube assigns to the video stream.\"\n },\n - \ \"ingestionAddress\": {\n \"description\": \"The primary - ingestion URL that you should use to stream video to YouTube. You must stream - video to this URL. Depending on which application or tool you use to encode - your video stream, you may need to enter the stream URL and stream name separately - or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"IngestionInfo\"\n },\n \"LiveStreamHealthStatus\": - {\n \"properties\": {\n \"lastUpdateTimeSeconds\": {\n \"type\": - \"string\",\n \"description\": \"The last time this status was updated - (in seconds)\",\n \"format\": \"uint64\"\n },\n \"status\": - {\n \"enum\": [\n \"good\",\n \"ok\",\n \"bad\",\n - \ \"noData\",\n \"revoked\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The status code of this stream\"\n },\n \"configurationIssues\": - {\n \"description\": \"The configurations issues on this stream\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n }\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveStreamHealthStatus\"\n },\n \"LiveStreamSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n },\n \"description\": {\n - \ \"description\": \"The stream's description. The value cannot be - longer than 10000 characters.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the stream was created.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is transmitting the stream.\"\n },\n \"title\": - {\n \"description\": \"The stream's title. The value must be between - 1 and 128 characters long.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ }\n },\n \"id\": \"LiveStreamSnippet\"\n },\n \"VideoFileDetailsAudioStream\": - {\n \"id\": \"VideoFileDetailsAudioStream\",\n \"properties\": {\n - \ \"codec\": {\n \"description\": \"The audio codec that the - stream uses.\",\n \"type\": \"string\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"description\": \"The audio - stream's bitrate, in bits per second.\",\n \"type\": \"string\"\n - \ },\n \"vendor\": {\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\",\n \"type\": \"string\"\n },\n \"channelCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of audio channels that the stream contains.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Information about an - audio stream.\"\n },\n \"ChannelConversionPings\": {\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"properties\": {\n \"pings\": - {\n \"type\": \"array\",\n \"description\": \"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.\",\n - \ \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ }\n }\n },\n \"id\": \"ChannelConversionPings\",\n - \ \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n },\n \"aspectRatio\": {\n \"type\": - \"number\",\n \"format\": \"double\",\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\"\n },\n \"frameRateFps\": - {\n \"description\": \"The video stream's frame rate, in frames per - second.\",\n \"format\": \"double\",\n \"type\": \"number\"\n - \ },\n \"widthPixels\": {\n \"type\": \"integer\",\n - \ \"description\": \"The encoded video content's width in pixels. - You can calculate the video's encoding aspect ratio as width_pixels / height_pixels.\",\n - \ \"format\": \"uint32\"\n },\n \"heightPixels\": {\n - \ \"description\": \"The encoded video content's height in pixels.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"codec\": {\n \"description\": \"The video codec that the - stream uses.\",\n \"type\": \"string\"\n },\n \"rotation\": - {\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ],\n \"description\": \"The amount - that YouTube needs to rotate the original source content to properly display - the video.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"bitrateBps\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The video stream's bitrate, in bits - per second.\"\n }\n },\n \"id\": \"VideoFileDetailsVideoStream\",\n - \ \"description\": \"Information about a video stream.\"\n },\n \"Comment\": - {\n \"properties\": {\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#comment\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#comment\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment.\"\n }\n },\n \"description\": - \"A *comment* represents a single YouTube comment.\",\n \"id\": \"Comment\",\n - \ \"type\": \"object\"\n },\n \"LiveChatSuperChatDetails\": {\n - \ \"properties\": {\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n },\n \"amountMicros\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the user to this Super Chat - event.\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"tier\": {\n \"format\": \"uint32\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"type\": \"integer\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatSuperChatDetails\"\n - \ },\n \"LiveChatBan\": {\n \"id\": \"LiveChatBan\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatBan\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the ban.\",\n \"$ref\": - \"LiveChatBanSnippet\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the ban.\"\n }\n },\n \"description\": \"A `__liveChatBan__` - resource represents a ban for a YouTube live chat.\"\n },\n \"PlaylistStatus\": - {\n \"properties\": {\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The playlist's privacy status.\"\n }\n },\n \"id\": \"PlaylistStatus\",\n - \ \"type\": \"object\"\n },\n \"TestItem\": {\n \"type\": \"object\",\n - \ \"id\": \"TestItem\",\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\"\n },\n \"gaia\": {\n \"type\": - \"string\",\n \"format\": \"int64\"\n },\n \"featuredPart\": - {\n \"type\": \"boolean\"\n },\n \"snippet\": {\n \"$ref\": - \"TestItemTestItemSnippet\"\n }\n }\n },\n \"MemberSnippet\": - {\n \"properties\": {\n \"memberDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - member.\"\n },\n \"creatorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the channel that's offering - memberships.\"\n },\n \"membershipsDetails\": {\n \"$ref\": - \"MembershipsDetails\",\n \"description\": \"Details about the user's - membership.\"\n }\n },\n \"id\": \"MemberSnippet\",\n \"type\": - \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"properties\": - {\n \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the Level at which the viever is a member. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n },\n \"memberMonth\": {\n \"type\": - \"integer\",\n \"description\": \"The total amount of months (rounded - up) the viewer has been a member that granted them this Member Milestone Chat. - This is the same number of months as is being displayed to YouTube users.\",\n - \ \"format\": \"uint32\"\n },\n \"userComment\": {\n - \ \"type\": \"string\",\n \"description\": \"The comment - added by the member to this Member Milestone Chat. This field is empty for - messages without a comment from the member.\"\n }\n }\n },\n - \ \"SubscriptionSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a subscription, including title, description and thumbnails - of the subscribed item.\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The id - object contains information about the channel that the user subscribed to.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n }\n },\n \"description\": {\n \"description\": - \"The subscription's details.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the subscriber's channel.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the subscription was created.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The subscription's - title.\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the subscription belongs to.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"SubscriptionSnippet\"\n },\n - \ \"ThirdPartyLinkListResponse\": {\n \"id\": \"ThirdPartyLinkListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n }\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ContentRating\": {\n \"id\": \"ContentRating\",\n \"type\": - \"object\",\n \"properties\": {\n \"ecbmctRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ],\n \"description\": \"Rating system in Turkey - Evaluation - and Classification Board of the Ministry of Culture and Tourism\",\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ]\n },\n \"fcoRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"fcoUnspecified\",\n - \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n - \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n - \ ],\n \"description\": \"The video's rating from Hong Kong's - Office for Film, Newspaper and Article Administration.\",\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ]\n - \ },\n \"kfcbRating\": {\n \"description\": \"The video's - rating from the Kenya Film Classification Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"smsaRating\": - {\n \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"All ages\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Statens - medier\xE5d (Sweden's National Media Council).\"\n },\n \"nmcRating\": - {\n \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ],\n - \ \"description\": \"The National Media Council ratings system for - United Arab Emirates.\"\n },\n \"ifcoRating\": {\n \"enum\": - [\n \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Irish Film Classification Office - (IFCO - Ireland) rating. See the IFCO website for more information.\"\n },\n - \ \"kijkwijzerRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\",\n \"enum\": - [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ]\n },\n \"russiaRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - National Film Registry of the Russian Federation (MKRF - Russia) rating.\",\n - \ \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"mccaaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"type\": - \"string\",\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n - \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n - \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n - \ \"mccaa18\",\n \"mccaaUnrated\"\n ]\n },\n - \ \"smaisRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"L\",\n \"7\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating in Iceland.\",\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ]\n },\n \"djctqRatingReasons\": - {\n \"items\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"type\": \"string\"\n },\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n - \ \"type\": \"array\"\n },\n \"cscfRating\": {\n \"enum\": - [\n \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n - \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AL\",\n \"A\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"18\",\n \"\"\n - \ ]\n },\n \"chvrsRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ],\n \"description\": \"The video's Canadian Home Video - Rating System (CHVRS) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ]\n },\n - \ \"medietilsynetRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n - \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Medietilsynet, the Norwegian Media Authority.\",\n - \ \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ]\n - \ },\n \"fpbRatingReasons\": {\n \"description\": \"Reasons - that explain why the video received its FPB (South Africa) rating.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n - \ \"mocRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"T\",\n \"7\",\n \"12\",\n - \ \"15\",\n \"18\",\n \"X\",\n \"Banned\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"description\": \"The video's Ministerio de Cultura - (Colombia) rating.\"\n },\n \"eefilmRating\": {\n \"description\": - \"The video's rating in Estonia.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Pere\",\n \"L\",\n \"MS-6\",\n \"K-6\",\n - \ \"MS-12\",\n \"K-12\",\n \"K-14\",\n \"K-16\",\n - \ \"\"\n ],\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"rtcRating\": - {\n \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"description\": \"The video's General Directorate - of Radio, Television and Cinematography (Mexico) rating.\",\n \"type\": - \"string\"\n },\n \"cnaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Romania's CONSILIUL NATIONAL - AL AUDIOVIZUALULUI (CNA).\"\n },\n \"djctqRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's Departamento de Justi\xE7a, - Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ]\n },\n - \ \"anatelRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n - \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n - \ ],\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\",\n \"type\": \"string\"\n },\n \"pefilmRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"description\": - \"The video's rating in Peru.\"\n },\n \"icaaRating\": {\n \"enum\": - [\n \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n - \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n - \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - Spain) - rating.\"\n },\n \"resorteviolenciaRating\": {\n \"enum\": - [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"description\": \"The video's rating in Venezuela.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"B\",\n \"C\",\n \"D\",\n - \ \"E\",\n \"\"\n ]\n },\n \"incaaRating\": - {\n \"description\": \"The video's INCAA (Instituto Nacional de Cine - y Artes Audiovisuales - Argentina) rating.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"ATP (Apta - para todo publico)\",\n \"13 (Solo apta para mayores de 13 a\xF1os)\",\n - \ \"16 (Solo apta para mayores de 16 a\xF1os)\",\n \"18 - (Solo apta para mayores de 18 a\xF1os)\",\n \"X (Solo apta para - mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n \"\"\n - \ ],\n \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n - \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n - \ \"incaaC\",\n \"incaaUnrated\"\n ]\n },\n - \ \"fmocRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"E\",\n \"\"\n ],\n - \ \"description\": \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"type\": \"string\",\n \"enum\": [\n \"fmocUnspecified\",\n - \ \"fmocU\",\n \"fmoc10\",\n \"fmoc12\",\n - \ \"fmoc16\",\n \"fmoc18\",\n \"fmocE\",\n - \ \"fmocUnrated\"\n ]\n },\n \"skfilmRating\": - {\n \"description\": \"The video's rating in Slovakia.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ],\n \"enum\": [\n - \ \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n - \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"cbfcRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Central Board of Film Certification (CBFC - India) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ],\n \"enum\": [\n - \ \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ]\n },\n \"nkclvRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Nacion\xE3lais - Kino centrs (National Film Centre of Latvia).\"\n },\n \"csaRating\": - {\n \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ],\n \"description\": - \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, - which rates broadcast content.\",\n \"type\": \"string\"\n },\n - \ \"menaMpaaRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ],\n \"description\": \"The rating - system for MENA countries, a clone of MPAA. It is needed to prevent titles - go live w/o additional QC check, since some of them can be inappropriate for - the countries at all. See b/33408548 for more details.\",\n \"enum\": - [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n - \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n - \ ]\n },\n \"lsfRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Indonesia's Lembaga Sensor - Film.\",\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n - \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n - \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ]\n },\n \"catvfrRating\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n - \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n - \ \"catvfrUnrated\",\n \"catvfrE\"\n ]\n },\n - \ \"cceRating\": {\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"description\": \"The video's rating from Portugal's - Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"type\": - \"string\"\n },\n \"chfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Switzerland.\",\n \"type\": - \"string\",\n \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n - \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n - \ \"chfilm18\",\n \"chfilmUnrated\"\n ]\n },\n - \ \"mccypRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"7\",\n \"11\",\n \"15\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ]\n },\n - \ \"egfilmRating\": {\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Egypt.\",\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ]\n },\n \"fcbmRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n - \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n - \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n - \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ],\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ]\n },\n \"cccRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Todo - espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n - \ \"14+\",\n \"18+\",\n \"18+ - contenido - excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"description\": \"The video's Consejo - de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"bmukkRating\": {\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ]\n },\n \"mibacRating\": - {\n \"description\": \"The video's rating from the Ministero dei - Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n \"type\": - \"string\",\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"mcstRating\": {\n \"enum\": - [\n \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating system for Vietnam - MCST\",\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ]\n },\n \"nbcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\",\n - \ \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ]\n },\n \"mekuRating\": - {\n \"description\": \"The video's rating from Finland's Kansallinen - Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ]\n },\n \"nfrcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"type\": - \"string\",\n \"enum\": [\n \"nfrcUnspecified\",\n \"nfrcA\",\n - \ \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n - \ \"nfrcUnrated\"\n ]\n },\n \"tvpgRating\": - {\n \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n - \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n - \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's TV Parental Guidelines (TVPG) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ]\n },\n \"mdaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\",\n \"enum\": [\n - \ \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n - \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n - \ \"mdaR21\",\n \"mdaUnrated\"\n ]\n },\n - \ \"oflcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"M\",\n \"R13\",\n - \ \"R15\",\n \"R16\",\n \"R18\",\n \"\",\n - \ \"RP13\",\n \"RP16\",\n \"RP18\"\n ],\n - \ \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Office of Film and Literature Classification - (OFLC - New Zealand) rating.\"\n },\n \"rcnofRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\",\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ]\n },\n \"bbfcRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ],\n \"description\": \"The video's British - Board of Film Classification (BBFC) rating.\"\n },\n \"czfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"description\": - \"The video's rating in the Czech Republic.\"\n },\n \"nfvcbRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Nigeria's National Film and Video Censors Board.\"\n },\n \"fskRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"FSK - 0\",\n \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\",\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"eirinRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Eirin (\u6620\u502B) - rating. Eirin is the Japanese rating system.\",\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ]\n - \ },\n \"cicfRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Commission de Contr\xF4le - des Films (Belgium).\"\n },\n \"catvRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ],\n \"type\": - \"string\",\n \"description\": \"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.\"\n - \ },\n \"moctwRating\": {\n \"enum\": [\n \"moctwUnspecified\",\n - \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n - \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n - \ \"moctwR15\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Taiwan's Ministry of - Culture (\u6587\u5316\u90E8).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P\",\n \"PG\",\n \"R\",\n - \ \"\",\n \"R-12\",\n \"R-15\"\n ]\n - \ },\n \"ytRating\": {\n \"enum\": [\n \"ytUnspecified\",\n - \ \"ytAgeRestricted\"\n ],\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"kmrbRating\": {\n \"enum\": [\n - \ \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"description\": \"The - video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"acbRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"acbUnspecified\",\n \"acbE\",\n \"acbP\",\n - \ \"acbC\",\n \"acbG\",\n \"acbPg\",\n \"acbM\",\n - \ \"acbMa15plus\",\n \"acbR18plus\",\n \"acbUnrated\"\n - \ ],\n \"description\": \"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.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ]\n - \ },\n \"cncRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"description\": \"Rating system - in France - Commission de classification cinematographique\",\n \"type\": - \"string\",\n \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ]\n },\n \"ilfilmRating\": {\n \"description\": - \"The video's rating in Israel.\",\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"grfilmRating\": {\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating in Greece.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n - \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n - \ ]\n },\n \"mpaatRating\": {\n \"enum\": [\n - \ \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"description\": \"The rating - system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\"\n },\n \"bfvcRating\": {\n \"enum\": - [\n \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ],\n \"description\": \"The video's rating from Thailand's - Board of Film and Video Censors.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ]\n },\n \"nbcplRating\": {\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Poland.\"\n },\n \"fpbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\",\n - \ \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ]\n },\n \"mtrcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Movie - and Television Review and Classification Board (Philippines).\",\n \"enum\": - [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n - \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n - \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"mpaaRating\": {\n \"enum\": [\n - \ \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"agcomRating\": - {\n \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Italy's Autorit\xE0 per - le Garanzie nelle Comunicazioni (AGCOM).\",\n \"type\": \"string\"\n - \ },\n \"rteRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs - \xC9ireann.\",\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ]\n }\n },\n \"description\": \"Ratings schemes. - The country-specific ratings are mostly for movies and shows. LINT.IfChange\"\n - \ },\n \"ChannelStatus\": {\n \"id\": \"ChannelStatus\",\n \"description\": - \"JSON template for the status part of a channel.\",\n \"properties\": - {\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"isLinked\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"description\": - \"Privacy status of the channel.\"\n },\n \"longUploadsStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\"\n },\n \"madeForKids\": {\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\"\n },\n \"WatchSettings\": - {\n \"type\": \"object\",\n \"properties\": {\n \"featuredPlaylistId\": - {\n \"type\": \"string\",\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\"\n - \ },\n \"backgroundColor\": {\n \"type\": \"string\",\n - \ \"description\": \"The text color for the video watch page's branded - area.\"\n },\n \"textColor\": {\n \"type\": \"string\",\n - \ \"description\": \"The background color for the video watch page's - branded area.\"\n }\n },\n \"description\": \"Branding properties - for the watch. All deprecated.\",\n \"id\": \"WatchSettings\"\n },\n - \ \"PlaylistItemStatus\": {\n \"description\": \"Information about - the playlist item's privacy status.\",\n \"type\": \"object\",\n \"id\": - \"PlaylistItemStatus\",\n \"properties\": {\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\",\n \"description\": \"This resource's privacy status.\"\n - \ }\n }\n },\n \"VideoStatus\": {\n \"description\": - \"Basic details about a video category, such as its localized title. Next - Id: 18\",\n \"type\": \"object\",\n \"properties\": {\n \"embeddable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"rejectionReason\": {\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ]\n },\n \"uploadStatus\": {\n \"enumDescriptions\": - [\n \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"enum\": - [\n \"uploaded\",\n \"processed\",\n \"failed\",\n - \ \"rejected\",\n \"deleted\"\n ],\n \"description\": - \"The status of the uploaded video.\",\n \"type\": \"string\"\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"publicStatsViewable\": {\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n },\n \"failureReason\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ],\n \"description\": - \"This value explains why a video failed to upload. This property is only - present if the uploadStatus property indicates that the upload failed.\",\n - \ \"enumDescriptions\": [\n \"Unable to convert video content.\",\n - \ \"Invalid file format.\",\n \"Empty file.\",\n \"File - was too small.\",\n \"Unsupported codec.\",\n \"Upload - wasn't finished.\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The video's privacy status.\",\n \"type\": \"string\"\n },\n - \ \"publishAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the video - is scheduled to publish. It can be set only if the privacy status of the video - is private..\"\n },\n \"license\": {\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n }\n },\n - \ \"id\": \"VideoStatus\"\n },\n \"InvideoPosition\": {\n \"type\": - \"object\",\n \"properties\": {\n \"type\": {\n \"description\": - \"Defines the position type.\",\n \"enumDescriptions\": [\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"corner\"\n - \ ]\n },\n \"cornerPosition\": {\n \"type\": - \"string\",\n \"description\": \"Describes in which corner of the - video the visual widget will appear.\",\n \"enum\": [\n \"topLeft\",\n - \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"id\": \"InvideoPosition\"\n },\n \"TestItemTestItemSnippet\": - {\n \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\",\n - \ \"type\": \"object\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of moderators that match the request criteria.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatModeratorListResponse\"\n - \ },\n \"MembershipsDetails\": {\n \"properties\": {\n \"membershipsDurationAtLevels\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"MembershipsDurationAtLevel\"\n },\n \"description\": \"Data - about memberships duration on particular pricing levels.\"\n },\n \"highestAccessibleLevel\": - {\n \"type\": \"string\",\n \"description\": \"Id of the - highest level that the user has access to at the moment.\"\n },\n \"accessibleLevels\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Ids of all levels that - the user has access to. This includes the currently active level and all other - levels that are included because of a higher purchase.\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n },\n - \ \"membershipsDuration\": {\n \"description\": \"Data about - memberships duration without taking into consideration pricing levels.\",\n - \ \"$ref\": \"MembershipsDuration\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"MembershipsDetails\"\n },\n \"VideoLocalization\": - {\n \"type\": \"object\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's title.\"\n },\n \"description\": {\n - \ \"description\": \"Localized version of the video's description.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Localized versions of certain video properties (e.g. title).\",\n \"id\": - \"VideoLocalization\"\n },\n \"LiveChatTextMessageDetails\": {\n \"properties\": - {\n \"messageText\": {\n \"description\": \"The user's message.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatTextMessageDetails\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"type\": \"object\",\n \"description\": \"Details about a resource - which is being promoted.\",\n \"properties\": {\n \"creativeViewUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user was shown this promoted item.\",\n \"type\": \"string\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify the promoted video.\",\n \"type\": - \"string\"\n },\n \"adTag\": {\n \"description\": \"The - URL the client should fetch to request a promoted item.\",\n \"type\": - \"string\"\n },\n \"descriptionText\": {\n \"description\": - \"The text description to accompany the promoted item.\",\n \"type\": - \"string\"\n },\n \"forecastingUrl\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"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.\"\n },\n \"customCtaButtonText\": - {\n \"type\": \"string\",\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\"\n },\n \"impressionUrl\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The list of impression URLs. The client should - ping all of these URLs to indicate that the user was shown this promoted item.\"\n - \ },\n \"ctaType\": {\n \"type\": \"string\",\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"clickTrackingUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user clicked through on this promoted item.\",\n \"type\": - \"string\"\n },\n \"destinationUrl\": {\n \"description\": - \"The URL the client should direct the user to, if the user chooses to visit - the advertiser's website.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ActivityContentDetailsPromotedItem\"\n },\n \"AccessPolicy\": - {\n \"id\": \"AccessPolicy\",\n \"properties\": {\n \"exception\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of region codes - that identify countries where the default policy do not apply.\"\n },\n - \ \"allowed\": {\n \"description\": \"The value of allowed - indicates whether the access to the policy is allowed or denied by default.\",\n - \ \"type\": \"boolean\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Rights management policy for YouTube resources.\"\n - \ },\n \"PropertyValue\": {\n \"type\": \"object\",\n \"id\": - \"PropertyValue\",\n \"properties\": {\n \"property\": {\n \"type\": - \"string\",\n \"description\": \"A property.\"\n },\n \"value\": - {\n \"type\": \"string\",\n \"description\": \"The property's - value.\"\n }\n },\n \"description\": \"A pair Property / - Value.\"\n },\n \"VideoProcessingDetailsProcessingProgress\": {\n \"id\": - \"VideoProcessingDetailsProcessingProgress\",\n \"description\": \"Video - processing progress and completion time estimate.\",\n \"properties\": - {\n \"partsTotal\": {\n \"format\": \"uint64\",\n \"description\": - \"An estimate of the total number of parts that need to be processed for the - video. The number may be updated with more precise estimates while YouTube - processes the video.\",\n \"type\": \"string\"\n },\n \"partsProcessed\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\"\n - \ },\n \"timeLeftMs\": {\n \"format\": \"uint64\",\n - \ \"description\": \"An estimate of the amount of time, in millseconds, - that YouTube needs to finish processing the video.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageListResponse\",\n - \ \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"type\": \"array\"\n },\n - \ \"offlineAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the underlying stream went offline.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatMessageListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n },\n - \ \"pollingIntervalMillis\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The amount of time the client should wait before - polling again.\",\n \"type\": \"integer\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n }\n },\n \"LocalizedProperty\": - {\n \"properties\": {\n \"default\": {\n \"type\": \"string\"\n - \ },\n \"defaultLanguage\": {\n \"$ref\": \"LanguageTag\",\n - \ \"description\": \"The language of the default property.\"\n },\n - \ \"localized\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LocalizedString\"\n }\n }\n },\n - \ \"id\": \"LocalizedProperty\",\n \"type\": \"object\"\n },\n - \ \"VideoAbuseReport\": {\n \"properties\": {\n \"comments\": - {\n \"type\": \"string\",\n \"description\": \"Additional - comments regarding the abuse report.\"\n },\n \"reasonId\": - {\n \"type\": \"string\",\n \"description\": \"The high-level, - or primary, reason that the content is abusive. The value is an abuse report - reason ID.\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n },\n \"secondaryReasonId\": {\n \"type\": - \"string\",\n \"description\": \"The specific, or secondary, reason - that this content is abusive (if available). The value is an abuse report - reason ID that is a valid secondary reason for the primary reason.\"\n },\n - \ \"language\": {\n \"type\": \"string\",\n \"description\": - \"The language that the content was viewed in.\"\n }\n },\n \"id\": - \"VideoAbuseReport\",\n \"type\": \"object\"\n },\n \"CommentThread\": - {\n \"description\": \"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.\",\n \"id\": \"CommentThread\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment thread.\"\n },\n \"replies\": - {\n \"$ref\": \"CommentThreadReplies\",\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\"\n },\n \"snippet\": - {\n \"$ref\": \"CommentThreadSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#commentThread\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"AbuseType\": - {\n \"id\": \"AbuseType\",\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"I18nLanguage\": {\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#i18nLanguage\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguage\\\".\"\n },\n \"snippet\": - {\n \"$ref\": \"I18nLanguageSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the i18n language.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"I18nLanguage\",\n \"type\": - \"object\",\n \"description\": \"An *i18nLanguage* resource identifies - a UI language currently supported by YouTube.\"\n },\n \"VideoLiveStreamingDetails\": - {\n \"properties\": {\n \"scheduledEndTime\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The time that the broadcast is scheduled to end. If the value is empty or - the property is not present, then the broadcast is scheduled to contiue indefinitely.\"\n - \ },\n \"scheduledStartTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast is scheduled to begin.\",\n - \ \"format\": \"date-time\"\n },\n \"actualStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\"\n },\n - \ \"concurrentViewers\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\"\n },\n \"actualEndTime\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast actually ended. This value will not be available - until the broadcast is over.\"\n },\n \"activeLiveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the currently active live chat attached to this video. This field is filled - only if the video is a currently live broadcast that has live chat. Once the - broadcast transitions to complete this field will be removed and the live - chat closed down. For persistent broadcasts that live chat id will no longer - be tied to this video but rather to the new video being displayed at the persistent - page.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Details about the live streaming metadata.\",\n \"id\": \"VideoLiveStreamingDetails\"\n - \ },\n \"MemberListResponse\": {\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"default\": - \"youtube#memberListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Member\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of members that match the request criteria.\"\n }\n },\n - \ \"id\": \"MemberListResponse\",\n \"type\": \"object\"\n },\n - \ \"SearchResult\": {\n \"id\": \"SearchResult\",\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"description\": \"The id object contains information - that can be used to uniquely identify the resource that matches the search - request.\",\n \"$ref\": \"ResourceId\"\n },\n \"snippet\": - {\n \"$ref\": \"SearchResultSnippet\",\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#searchResult\\\".\",\n \"default\": - \"youtube#searchResult\"\n }\n },\n \"description\": \"A - search result contains information about a YouTube video, channel, or playlist - that matches the search parameters specified in an API request. While a search - result points to a uniquely identifiable resource, like a video, it does not - have its own persistent data.\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"properties\": {\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ },\n \"memberLevelName\": {\n \"description\": \"The - name of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"gifterChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n - \ \"ActivityContentDetailsChannelItem\": {\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that was added to the channel.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"Details about a resource which was added to a channel.\",\n - \ \"type\": \"object\"\n },\n \"ChannelSectionContentDetails\": - {\n \"description\": \"Details about a channelsection, including playlists - and channels.\",\n \"type\": \"object\",\n \"id\": \"ChannelSectionContentDetails\",\n - \ \"properties\": {\n \"playlists\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\"\n },\n \"channels\": {\n \"type\": - \"array\",\n \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n }\n - \ }\n },\n \"VideoFileDetails\": {\n \"id\": \"VideoFileDetails\",\n - \ \"description\": \"Describes original video file properties, including - technical details about audio and video streams, but also metadata information - like content length, digitization time, or geotagging information.\",\n \"properties\": - {\n \"bitrateBps\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The uploaded video file's combined - (video and audio) bitrate in bits per second.\"\n },\n \"durationMs\": - {\n \"description\": \"The length of the uploaded video in milliseconds.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"fileName\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\"\n },\n \"videoStreams\": - {\n \"description\": \"A list of video streams contained in the uploaded - video file. Each item in the list contains detailed metadata about a video - stream.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n }\n },\n \"fileType\": - {\n \"enumDescriptions\": [\n \"Known video file (e.g., - an MP4 file).\",\n \"Audio only file (e.g., an MP3 file).\",\n - \ \"Image file (e.g., a JPEG image).\",\n \"Archive file - (e.g., a ZIP archive).\",\n \"Document or text file (e.g., MS Word - document).\",\n \"Movie project file (e.g., Microsoft Windows Movie - Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"description\": \"The uploaded - file's type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\",\n \"type\": \"string\"\n - \ },\n \"creationTime\": {\n \"description\": \"The - date and time when the uploaded video file was created. The value is specified - in ISO 8601 format. Currently, the following ISO 8601 formats are supported: - - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: - YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n },\n - \ \"container\": {\n \"description\": \"The uploaded video - file's container format.\",\n \"type\": \"string\"\n },\n - \ \"fileSize\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\",\n \"format\": \"uint64\"\n - \ },\n \"audioStreams\": {\n \"description\": \"A list - of audio streams contained in the uploaded video file. Each item in the list - contains detailed metadata about an audio stream.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ }\n }\n },\n \"type\": \"object\"\n },\n \"VideoCategoryListResponse\": - {\n \"properties\": {\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"VideoCategory\"\n },\n - \ \"description\": \"A list of video categories that can be associated - with YouTube videos. In this map, the video category ID is the map key, and - its value is the corresponding videoCategory resource.\",\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#videoCategoryListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": - \"VideoCategoryListResponse\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was marked as a favorite.\"\n - \ }\n },\n \"description\": \"Information about a video that - was marked as a favorite video.\",\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsFavorite\"\n },\n \"GeoPoint\": {\n \"type\": - \"object\",\n \"properties\": {\n \"latitude\": {\n \"format\": - \"double\",\n \"type\": \"number\",\n \"description\": \"Latitude - in degrees.\"\n },\n \"altitude\": {\n \"type\": \"number\",\n - \ \"format\": \"double\",\n \"description\": \"Altitude above - the reference ellipsoid, in meters.\"\n },\n \"longitude\": - {\n \"description\": \"Longitude in degrees.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n }\n },\n \"id\": - \"GeoPoint\",\n \"description\": \"Geographical coordinates of a point, - in WGS84.\"\n },\n \"PlaylistLocalization\": {\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for playlist's description.\"\n },\n \"title\": - {\n \"description\": \"The localized strings for playlist's title.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"PlaylistLocalization\",\n - \ \"description\": \"Playlist localization setting\",\n \"type\": - \"object\"\n },\n \"CommentSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"CommentSnippet\",\n \"description\": \"Basic details - about a comment, such as its author and text.\",\n \"properties\": {\n - \ \"authorChannelId\": {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"moderationStatus\": {\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"type\": \"string\"\n },\n \"likeCount\": - {\n \"description\": \"The total number of likes this comment has - received.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ },\n \"parentId\": {\n \"description\": \"The unique - id of the parent comment, only set for replies.\",\n \"type\": \"string\"\n - \ },\n \"authorChannelUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Link to the author's YouTube channel, if any.\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comment refers to, if any.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"updatedAt\": {\n \"description\": - \"The date and time when the comment was last updated.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"canRate\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the current viewer can rate this comment.\"\n },\n \"textDisplay\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the comment was originally - published.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"viewerRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"description\": \"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.\"\n },\n \"textOriginal\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n }\n }\n },\n \"ChannelSectionTargeting\": - {\n \"type\": \"object\",\n \"id\": \"ChannelSectionTargeting\",\n - \ \"properties\": {\n \"countries\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"The country the channel section is targeting.\"\n },\n \"regions\": - {\n \"type\": \"array\",\n \"description\": \"The region - the channel section is targeting.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"languages\": {\n \"type\": - \"array\",\n \"description\": \"The language the channel section - is targeting.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"description\": \"ChannelSection - targeting setting.\"\n },\n \"LiveBroadcastStatistics\": {\n \"properties\": - {\n \"concurrentViewers\": {\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"totalChatCount\": {\n - \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\"\n - \ }\n },\n \"description\": \"Statistics about the live broadcast. - These represent a snapshot of the values at the time of the request. Statistics - are only returned for live broadcasts.\",\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"type\": \"object\"\n },\n \"I18nRegionListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#i18nRegionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n },\n \"description\": \"A list of regions - where YouTube is available. In this map, the i18n region ID is the map key, - and its value is the corresponding i18nRegion resource.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"I18nRegionListResponse\"\n },\n \"ChannelSectionSnippet\": {\n \"id\": - \"ChannelSectionSnippet\",\n \"properties\": {\n \"title\": {\n - \ \"description\": \"The channel section's title for multiple_playlists - and multiple_channels.\",\n \"type\": \"string\"\n },\n \"position\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The position of the channel section in the channel.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel section's default - title and description.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the channel section.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of the channel section.\",\n - \ \"enum\": [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ],\n \"type\": \"string\"\n },\n \"localized\": - {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": - \"Localized title, read-only.\"\n },\n \"style\": {\n \"enum\": - [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The style of the channel section.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"description\": \"Basic details about a channel section, - including title, style and position.\",\n \"type\": \"object\"\n },\n - \ \"LiveStreamConfigurationIssue\": {\n \"properties\": {\n \"reason\": - {\n \"type\": \"string\",\n \"description\": \"The short-form - reason for this issue.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ],\n \"description\": - \"The kind of error happening.\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"description\": \"The long-form description - of the issue and how to resolve it.\",\n \"type\": \"string\"\n },\n - \ \"severity\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"info\",\n \"warning\",\n \"error\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"How severe this - issue is to the stream.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamConfigurationIssue\"\n },\n \"ThumbnailSetResponse\": - {\n \"id\": \"ThumbnailSetResponse\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": \"A list of - thumbnails.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#thumbnailSetResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"I18nLanguageListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nLanguageListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of supported i18n languages. - In this map, the i18n language ID is the map key, and its value is the corresponding - i18nLanguage resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"I18nLanguageListResponse\"\n },\n \"SearchListResponse\": {\n \"id\": - \"SearchListResponse\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"regionCode\": {\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"default\": \"youtube#searchListResponse\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"SearchResult\"\n },\n - \ \"description\": \"Pagination information for token pagination.\",\n - \ \"type\": \"array\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatBanSnippet\": - {\n \"id\": \"LiveChatBanSnippet\",\n \"properties\": {\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The chat - this ban is pertinent to.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of ban.\",\n \"enum\": [\n - \ \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ]\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": - {\n \"type\": \"string\",\n \"description\": \"The duration - of a ban, only filled if the ban has type TEMPORARY.\",\n \"format\": - \"uint64\"\n }\n },\n \"type\": \"object\"\n },\n \"PlaylistPlayer\": - {\n \"properties\": {\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that - embeds a player that will play the playlist.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"PlaylistPlayer\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"id\": \"ActivityContentDetailsRecommendation\",\n \"properties\": - {\n \"seedResourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The seedResourceId object contains information about the resource that caused - the recommendation.\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\",\n \"$ref\": \"ResourceId\"\n },\n \"reason\": - {\n \"type\": \"string\",\n \"description\": \"The reason - that the resource is recommended to the user.\",\n \"enum\": [\n - \ \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"description\": \"Information that - identifies the recommended resource.\",\n \"type\": \"object\"\n },\n - \ \"VideoTopicDetails\": {\n \"properties\": {\n \"topicCategories\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Wikipedia - URLs that provide a high-level description of the video's content.\"\n },\n - \ \"topicIds\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n },\n \"relevantTopicIds\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"Similar to topic_id, except that these topics - are merely relevant to the video. These are topics that may be mentioned in, - or appear in the video. You can retrieve information about each topic using - Freebase Topic API.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Freebase topic information related to the video.\",\n - \ \"id\": \"VideoTopicDetails\"\n },\n \"ThirdPartyLink\": {\n \"type\": - \"object\",\n \"description\": \"A *third party account link* resource - represents a link between a YouTube account or a channel and an account on - a third-party service.\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource\",\n \"type\": - \"string\"\n },\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n - \ \"description\": \"The status object contains information about - the status of the link.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLink\"\n - \ },\n \"linkingToken\": {\n \"description\": \"The - linking_token identifies a YouTube account and channel with which the third - party account is linked.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\"\n }\n },\n \"id\": \"ThirdPartyLink\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\",\n - \ \"properties\": {\n \"label\": {\n \"description\": - \"The localized label for this abuse report secondary reason.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LocalizedString\": {\n \"properties\": - {\n \"language\": {\n \"type\": \"string\"\n },\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LocalizedString\",\n - \ \"type\": \"object\"\n },\n \"ChannelAuditDetails\": {\n \"id\": - \"ChannelAuditDetails\",\n \"type\": \"object\",\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\",\n \"properties\": {\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n }\n }\n },\n - \ \"LiveChatMessageAuthorDetails\": {\n \"id\": \"LiveChatMessageAuthorDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"isChatModerator\": - {\n \"description\": \"Whether the author is a moderator of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"profileImageUrl\": - {\n \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"isVerified\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author's identity has been verified by YouTube.\"\n },\n \"isChatOwner\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is the owner of the live chat.\"\n },\n \"displayName\": - {\n \"description\": \"The channel's display name.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel ID.\"\n },\n \"isChatSponsor\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is a sponsor of the live chat.\"\n }\n }\n },\n - \ \"ChannelSection\": {\n \"id\": \"ChannelSection\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the channel section.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the channel section, such as its type, style and title.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelSection\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n - \ },\n \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n - \ \"description\": \"The targeting object contains basic targeting - settings about the channel section.\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoAbuseReportReasonListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The `visitorId` - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of valid abuse reasons that are used - with `video.ReportAbuse`.\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n },\n \"type\": \"array\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"ActivityContentDetailsLike\": {\n \"description\": \"Information - about a resource that received a positive (like) rating.\",\n \"id\": - \"ActivityContentDetailsLike\",\n \"type\": \"object\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\"\n - \ }\n }\n },\n \"MembershipsDuration\": {\n \"type\": - \"object\",\n \"id\": \"MembershipsDuration\",\n \"properties\": - {\n \"memberTotalDurationMonths\": {\n \"description\": \"The - cumulative time the user has been a member across all levels in complete months - (the time is rounded down to the nearest integer).\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n },\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member across all levels.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveBroadcastListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveBroadcastListResponse\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveBroadcastListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"description\": \"A list of broadcasts that - match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n }\n }\n },\n \"VideoCategory\": - {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video category.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoCategory\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoCategory\",\n - \ \"description\": \"A *videoCategory* resource identifies a category - that has been or could be associated with uploaded videos.\"\n },\n \"ChannelListResponse\": - {\n \"id\": \"ChannelListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Channel\"\n }\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelListResponse\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LanguageTag\": {\n \"id\": - \"LanguageTag\",\n \"type\": \"object\",\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n }\n },\n \"Activity\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the activity, including the activity's type and group ID.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n - \ \"description\": \"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.\"\n },\n \"kind\": {\n \"default\": \"youtube#activity\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n - \ }\n },\n \"description\": \"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.\",\n \"id\": - \"Activity\"\n },\n \"VideoMonetizationDetails\": {\n \"type\": - \"object\",\n \"id\": \"VideoMonetizationDetails\",\n \"description\": - \"Details about monetization of a YouTube Video.\",\n \"properties\": - {\n \"access\": {\n \"description\": \"The value of access - indicates whether the video can be monetized or not.\",\n \"$ref\": - \"AccessPolicy\"\n }\n }\n },\n \"RelatedEntity\": {\n \"properties\": - {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n },\n - \ \"id\": \"RelatedEntity\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"id\": \"ActivityContentDetailsUpload\",\n \"description\": - \"Information about the uploaded video.\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the uploaded video.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoCategorySnippet\": {\n \"id\": - \"VideoCategorySnippet\",\n \"properties\": {\n \"title\": {\n - \ \"description\": \"The video category's title.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n - \ \"description\": \"The YouTube channel that created the video category.\",\n - \ \"type\": \"string\"\n },\n \"assignable\": {\n \"type\": - \"boolean\"\n }\n },\n \"description\": \"Basic details about - a video category, such as its localized title.\",\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsSubscription\": {\n \"description\": - \"Information about a channel that a user subscribed to.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that the user subscribed - to.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsSubscription\"\n },\n - \ \"ThirdPartyLinkStatus\": {\n \"properties\": {\n \"linkStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"unknown\",\n - \ \"failed\",\n \"pending\",\n \"linked\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"id\": - \"ThirdPartyLinkStatus\",\n \"description\": \"The third-party link status - object contains information about the status of the link.\",\n \"type\": - \"object\"\n },\n \"I18nLanguageSnippet\": {\n \"id\": \"I18nLanguageSnippet\",\n - \ \"properties\": {\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"A short BCP-47 code that uniquely identifies - a language.\"\n },\n \"name\": {\n \"description\": - \"The human-readable name of the language in the language itself.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - an i18n language, such as language code and human-readable name.\",\n \"type\": - \"object\"\n },\n \"SubscriptionListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"SubscriptionListResponse\",\n \"properties\": {\n \"items\": - {\n \"description\": \"A list of subscriptions that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Subscription\"\n }\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"default\": \"youtube#subscriptionListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n }\n },\n \"ChannelSnippet\": {\n \"properties\": - {\n \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the channel's default title and - description.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails in your application, make - sure that your code uses the image URLs exactly as they are returned in API - responses. For example, your application should not use the http domain instead - of the https domain in a URL returned in an API response. Beginning in July - 2018, channel thumbnail URLs will only be available in the https domain, which - is how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\"\n },\n \"publishedAt\": {\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the channel was created.\"\n },\n \"customUrl\": - {\n \"description\": \"The custom url of the channel.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's title.\"\n },\n \"country\": - {\n \"type\": \"string\",\n \"description\": \"The country - of the channel.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The description of the channel.\"\n - \ }\n },\n \"description\": \"Basic details about a channel, - including title, description and thumbnails.\",\n \"type\": \"object\",\n - \ \"id\": \"ChannelSnippet\"\n },\n \"SuperChatEventSnippet\": {\n - \ \"id\": \"SuperChatEventSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"displayString\": {\n \"description\": \"A rendered string - that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). The - string is rendered for the given language.\",\n \"type\": \"string\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\",\n \"type\": \"string\"\n - \ },\n \"commentText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text contents of the comment left by the - user.\"\n },\n \"createdAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the event occurred.\"\n },\n \"channelId\": {\n - \ \"description\": \"Channel id where the event occurred.\",\n \"type\": - \"string\"\n },\n \"isSuperStickerEvent\": {\n \"description\": - \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n - \ },\n \"superStickerMetadata\": {\n \"$ref\": \"SuperStickerMetadata\",\n - \ \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\"\n },\n \"messageType\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\"\n },\n \"supporterDetails\": {\n - \ \"description\": \"Details about the supporter.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"amountMicros\": {\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ }\n }\n },\n \"LiveStreamStatus\": {\n \"type\": \"object\",\n - \ \"description\": \"Brief description of the live stream status.\",\n - \ \"properties\": {\n \"healthStatus\": {\n \"description\": - \"The health status of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n - \ },\n \"streamStatus\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ]\n }\n - \ },\n \"id\": \"LiveStreamStatus\"\n },\n \"PlaylistContentDetails\": - {\n \"properties\": {\n \"itemCount\": {\n \"description\": - \"The number of videos in the playlist.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistContentDetails\"\n },\n \"Video\": {\n \"properties\": - {\n \"statistics\": {\n \"$ref\": \"VideoStatistics\",\n \"description\": - \"The statistics object contains statistics about the video.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n \"description\": - \"The snippet object contains basic details about the video, such as its title, - description, and category.\"\n },\n \"suggestions\": {\n \"$ref\": - \"VideoSuggestions\",\n \"description\": \"The suggestions object - encapsulates suggestions that identify opportunities to improve the video - quality or the metadata for the uploaded video. This data can only be retrieved - by the video owner.\"\n },\n \"projectDetails\": {\n \"description\": - \"The projectDetails object contains information about the project specific - video metadata. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"localizations\": - {\n \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"type\": \"object\",\n \"description\": - \"The localizations object contains localized versions of the basic details - about the video, such as its title and description.\"\n },\n \"monetizationDetails\": - {\n \"description\": \"The monetizationDetails object encapsulates - information about the monetization status of the video.\",\n \"$ref\": - \"VideoMonetizationDetails\"\n },\n \"fileDetails\": {\n \"description\": - \"The fileDetails object encapsulates information about the video file that - was uploaded to YouTube, including the file's resolution, duration, audio - and video codecs, stream bitrates, and more. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n },\n - \ \"player\": {\n \"$ref\": \"VideoPlayer\",\n \"description\": - \"The player object contains information that you would use to play the video - in an embedded player.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#video\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\"\n - \ },\n \"status\": {\n \"$ref\": \"VideoStatus\",\n - \ \"description\": \"The status object contains information about - the video's uploading, processing, and privacy statuses.\"\n },\n \"recordingDetails\": - {\n \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\",\n \"$ref\": - \"VideoRecordingDetails\"\n },\n \"ageGating\": {\n \"$ref\": - \"VideoAgeGating\",\n \"description\": \"Age restriction details - related to a video. This data can only be retrieved by the video owner.\"\n - \ },\n \"liveStreamingDetails\": {\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.videos.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"contentDetails\": {\n - \ \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"topicDetails\": - {\n \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n - \ },\n \"processingDetails\": {\n \"description\": \"The - processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoProcessingDetails\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"Video\",\n \"type\": - \"object\",\n \"description\": \"A *video* resource represents a YouTube - video.\"\n },\n \"PlaylistItemContentDetails\": {\n \"id\": \"PlaylistItemContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"startAt\": - {\n \"description\": \"The time, measured in seconds from the start - of the video, when the video should start playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) The default value is 0.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - a video. To retrieve the video resource, set the id query parameter to this - value in your API request.\"\n },\n \"endAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\",\n - \ \"type\": \"string\"\n },\n \"note\": {\n \"type\": - \"string\",\n \"description\": \"A user-generated note for this item.\"\n - \ },\n \"videoPublishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the video was published to YouTube.\"\n }\n }\n - \ },\n \"LiveBroadcastSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"actualStartTime\": {\n \"description\": \"The date and - time that the broadcast actually started. This information is only available - once the broadcast's state is live.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"actualEndTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast actually ended. This information is only available - once the broadcast's state is complete.\",\n \"format\": \"date-time\"\n - \ },\n \"liveChatId\": {\n \"description\": \"The id - of the live chat for this broadcast.\",\n \"type\": \"string\"\n - \ },\n \"scheduledStartTime\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the broadcast is scheduled to start.\"\n },\n - \ \"scheduledEndTime\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - is scheduled to end.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"isDefaultBroadcast\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - was added to YouTube's live broadcast schedule.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the broadcast. For each nested object - in this object, the key is the name of the thumbnail image, and the value - is an object that contains other information about the thumbnail.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": {\n \"description\": - \"The broadcast's description. As with the title, you can set this field by - modifying the broadcast resource or by setting the description field of the - corresponding video resource.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveBroadcastSnippet\",\n \"description\": - \"Basic broadcast information.\"\n },\n \"Caption\": {\n \"id\": - \"Caption\",\n \"description\": \"A *caption* resource represents a YouTube - caption track. A caption track is associated with exactly one YouTube video.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"default\": \"youtube#caption\"\n },\n \"snippet\": - {\n \"$ref\": \"CaptionSnippet\",\n \"description\": \"The - snippet object contains basic details about the caption.\"\n },\n \"id\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the caption track.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ThumbnailDetails\": - {\n \"description\": \"Internal representation of thumbnails for a YouTube - resource.\",\n \"type\": \"object\",\n \"properties\": {\n \"standard\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The standard - quality image for this resource.\"\n },\n \"high\": {\n \"description\": - \"The high quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The default image for this resource.\"\n },\n \"maxres\": - {\n \"description\": \"The maximum resolution quality image for this - resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"medium\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The medium - quality image for this resource.\"\n }\n },\n \"id\": \"ThumbnailDetails\"\n - \ },\n \"ChannelConversionPing\": {\n \"type\": \"object\",\n \"id\": - \"ChannelConversionPing\",\n \"description\": \"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.\",\n \"properties\": - {\n \"context\": {\n \"description\": \"Defines the context - of the ping.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ]\n },\n \"conversionUrl\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n }\n }\n },\n \"ResourceId\": - {\n \"properties\": {\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a playlist. This property - is only present if the resourceId.kind value is youtube#playlist.\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the referred resource, if that resource is a video. This - property is only present if the resourceId.kind value is youtube#video.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"The type of the API resource.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A resource id is a generic reference that points - to another YouTube resource.\",\n \"id\": \"ResourceId\"\n },\n \"SuperStickerMetadata\": - {\n \"properties\": {\n \"altText\": {\n \"type\": \"string\",\n - \ \"description\": \"Internationalized alt text that describes the - sticker image and any animation associated with it.\"\n },\n \"altTextLanguage\": - {\n \"description\": \"Specifies the localization language in which - the alt text is returned.\",\n \"type\": \"string\"\n },\n - \ \"stickerId\": {\n \"description\": \"Unique identifier of - the Super Sticker. This is a shorter form of the alt_text that includes pack - name and a recognizable characteristic of the sticker.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"SuperStickerMetadata\"\n },\n \"PlaylistSnippet\": {\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails.\",\n - \ \"type\": \"object\",\n \"id\": \"PlaylistSnippet\",\n \"properties\": - {\n \"publishedAt\": {\n \"description\": \"The date and time - that the playlist was created.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that published the playlist.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"description\": \"The playlist's title.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the playlist's default title and description.\",\n \"type\": - \"string\"\n },\n \"thumbnailVideoId\": {\n \"description\": - \"Note: if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelTitle\": {\n \"description\": - \"The channel title of the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"tags\": {\n \"description\": \"Keyword - tags associated with the playlist.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"description\": - {\n \"description\": \"The playlist's description.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveStreamContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"closedCaptionsIngestionUrl\": - {\n \"description\": \"The ingestion URL where the closed captions - of this stream are sent.\",\n \"type\": \"string\"\n },\n - \ \"isReusable\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \"\n }\n },\n \"description\": \"Detailed settings of a stream.\",\n - \ \"id\": \"LiveStreamContentDetails\"\n },\n \"Thumbnail\": {\n - \ \"type\": \"object\",\n \"description\": \"A thumbnail is an image - representing a YouTube resource.\",\n \"id\": \"Thumbnail\",\n \"properties\": - {\n \"url\": {\n \"description\": \"The thumbnail image's - URL.\",\n \"type\": \"string\"\n },\n \"height\": {\n - \ \"type\": \"integer\",\n \"description\": \"(Optional) - Height of the thumbnail image.\",\n \"format\": \"uint32\"\n },\n - \ \"width\": {\n \"description\": \"(Optional) Width of the - thumbnail image.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n }\n }\n },\n \"ChannelContentDetails\": {\n - \ \"id\": \"ChannelContentDetails\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"properties\": {\n \"watchHistory\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"likes\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"watchLater\": {\n \"description\": \"The ID of - the playlist that contains the channel\\\"s watch later playlist. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"favorites\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s favorite videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"uploads\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use - the videos.insert method to upload new videos and the videos.delete method - to delete previously uploaded videos.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Details about the content - of a channel.\"\n },\n \"ChannelStatistics\": {\n \"id\": \"ChannelStatistics\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"viewCount\": - {\n \"description\": \"The number of times the channel has been viewed.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"hiddenSubscriberCount\": {\n \"description\": \"Whether - or not the number of subscribers is shown for this user.\",\n \"type\": - \"boolean\"\n },\n \"videoCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of videos uploaded to the channel.\"\n },\n \"subscriberCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of subscribers that the channel has.\",\n \"type\": \"string\"\n - \ },\n \"commentCount\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The number of - comments for the channel.\"\n }\n },\n \"description\": \"Statistics - about a channel: number of subscribers, number of videos in the channel, etc.\"\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"id\": \"LiveChatFanFundingEventDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"amountMicros\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The amount of the fund.\"\n },\n \"userComment\": {\n \"type\": - \"string\",\n \"description\": \"The comment added by the user to - this fan funding event.\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\"\n }\n }\n },\n \"SuperChatEventListResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of Super - Chat purchases that match the request criteria.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n \"default\": - \"youtube#superChatEventListResponse\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"SuperChatEventListResponse\",\n - \ \"type\": \"object\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"description\": \"Basic details about a subscription's subscriber - including title, description, channel ID and thumbnails.\",\n \"id\": - \"SubscriptionSubscriberSnippet\",\n \"properties\": {\n \"title\": - {\n \"description\": \"The title of the subscriber.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The description of the subscriber.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel ID of the subscriber.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"Thumbnails - for this subscriber.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SuperChatEvent\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#superChatEvent\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the Super Chat event.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\",\n \"id\": \"SuperChatEvent\"\n },\n \"LiveChatMessageSnippet\": - {\n \"properties\": {\n \"authorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the user that authored - this message, this field is not always filled. textMessageEvent - the user - that wrote the message fanFundingEvent - the user that funded the broadcast - newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the message was orignally - published.\"\n },\n \"hasDisplayContent\": {\n \"description\": - \"Whether the message has display content that should be displayed to users.\",\n - \ \"type\": \"boolean\"\n },\n \"memberMilestoneChatDetails\": - {\n \"description\": \"Details about the Member Milestone Chat event, - this is only set if the type is 'memberMilestoneChatEvent'.\",\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"newSponsorDetails\": {\n \"description\": \"Details about - the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. - Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n - \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"superChatDetails\": - {\n \"description\": \"Details about the Super Chat event, this is - only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n - \ },\n \"membershipGiftingDetails\": {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n - \ \"description\": \"Details about the Membership Gifting event, this - is only set if the type is 'membershipGiftingEvent'.\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"displayMessage\": - {\n \"description\": \"Contains a string that can be displayed to - the user. If this field is not present the message is silent, at the moment - only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\",\n \"type\": - \"string\"\n },\n \"liveChatId\": {\n \"type\": \"string\"\n - \ },\n \"superStickerDetails\": {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n - \ \"description\": \"Details about the Super Sticker event, this is - only set if the type is 'superStickerEvent'.\"\n },\n \"type\": - {\n \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\",\n \"type\": \"string\",\n \"enum\": [\n \"invalidType\",\n - \ \"textMessageEvent\",\n \"tombstone\",\n \"fanFundingEvent\",\n - \ \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"fanFundingEventDetails\": {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n - \ \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatMessageSnippet\",\n \"description\": - \"Next ID: 33\"\n },\n \"CaptionListResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - captions that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Caption\"\n }\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"id\": \"CaptionListResponse\",\n \"type\": - \"object\"\n },\n \"ChannelBannerResource\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#channelBannerResource\"\n },\n - \ \"url\": {\n \"description\": \"The URL of this banner image.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ChannelBannerResource\",\n - \ \"description\": \"A channel banner returned as the response to a channel_banner.insert - call.\",\n \"type\": \"object\"\n },\n \"VideoListResponse\": {\n - \ \"type\": \"object\",\n \"id\": \"VideoListResponse\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Video\"\n }\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"TokenPagination\": {\n \"type\": \"object\",\n - \ \"id\": \"TokenPagination\",\n \"description\": \"Stub token pagination - template to suppress results.\",\n \"properties\": {}\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"deletedMessageId\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"CaptionSnippet\": {\n \"id\": \"CaptionSnippet\",\n \"properties\": - {\n \"audioTrackType\": {\n \"description\": \"The type of - audio track associated with the caption track.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"unknown\",\n - \ \"primary\",\n \"commentary\",\n \"descriptive\"\n - \ ]\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video associated with the caption track. @mutable youtube.captions.insert\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"failureReason\": {\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"unknownFormat\",\n - \ \"unsupportedFormat\",\n \"processingFailed\"\n ]\n - \ },\n \"trackKind\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The caption track's type.\",\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ]\n },\n \"language\": {\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\",\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n }\n - \ },\n \"status\": {\n \"type\": \"string\",\n \"enum\": - [\n \"serving\",\n \"syncing\",\n \"failed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The caption track's - status.\"\n },\n \"isLarge\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether the caption track uses large - text for the vision-impaired. The default value is false.\"\n },\n - \ \"isEasyReader\": {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"isDraft\": {\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n },\n - \ \"name\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The name of the caption track. The name is intended - to be visible to the user as an option during playback.\",\n \"type\": - \"string\"\n },\n \"isCC\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether the track contains closed captions - for the deaf and hard of hearing. The default value is false.\"\n },\n - \ \"lastUpdated\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the caption track was last updated.\",\n \"type\": - \"string\"\n },\n \"isAutoSynced\": {\n \"description\": - \"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.\",\n \"type\": \"boolean\"\n }\n },\n \"description\": - \"Basic details about a caption track, such as its language and name.\",\n - \ \"type\": \"object\"\n },\n \"VideoAgeGating\": {\n \"properties\": - {\n \"videoGameRating\": {\n \"description\": \"Video game - rating, if any.\",\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"restricted\": - {\n \"type\": \"boolean\",\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\"\n },\n - \ \"alcoholContent\": {\n \"description\": \"Indicates whether - or not the video has alcoholic beverage content. Only users of legal purchasing - age in a particular country, as identified by ICAP, can view the content.\",\n - \ \"type\": \"boolean\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoAgeGating\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"properties\": {\n \"banDurationSeconds\": {\n \"format\": - \"uint64\",\n \"description\": \"The duration of the ban. This property - is only present if the banType is temporary.\",\n \"type\": \"string\"\n - \ },\n \"bannedUserDetails\": {\n \"description\": \"The - details of the user that was banned.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banType\": {\n \"description\": \"The type - of ban.\",\n \"enum\": [\n \"permanent\",\n \"temporary\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"ThirdPartyLinkSnippet\": {\n \"description\": \"Basic information - about a third party account link, including its type and type-specific information.\",\n - \ \"properties\": {\n \"channelToStoreLink\": {\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n },\n - \ \"type\": {\n \"description\": \"Type of the link named after - the entities that are being linked.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A link - that is connecting (or about to connect) a channel with a store on a merchandising - platform in order to enable retail commerce capabilities for that channel - on YouTube.\"\n ],\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ]\n }\n },\n \"type\": - \"object\",\n \"id\": \"ThirdPartyLinkSnippet\"\n },\n \"ChannelProfileDetails\": - {\n \"properties\": {\n \"profileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channels's avatar URL.\"\n },\n - \ \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The channel's display name.\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"channelUrl\": {\n \"description\": \"The channel's URL.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ChannelProfileDetails\",\n - \ \"type\": \"object\"\n },\n \"SubscriptionContentDetails\": {\n - \ \"id\": \"SubscriptionContentDetails\",\n \"description\": \"Details - about the content to witch a subscription refers.\",\n \"properties\": - {\n \"newItemCount\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The number of new items in the subscription - since its content was last read.\"\n },\n \"activityType\": - {\n \"description\": \"The type of activity this subscription is - for (only uploads, everything).\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"totalItemCount\": {\n - \ \"format\": \"uint32\",\n \"description\": \"The approximate - number of items that the subscription points to.\",\n \"type\": \"integer\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"properties\": {\n \"allowed\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\"\n },\n \"blocked\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\",\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"DEPRECATED Region restriction of the video.\",\n \"id\": \"VideoContentDetailsRegionRestriction\"\n - \ },\n \"LiveStream\": {\n \"properties\": {\n \"cdn\": {\n - \ \"description\": \"The cdn object defines the live stream's content - delivery network (CDN) settings. These settings provide details about the - manner in which you stream your content to YouTube.\",\n \"$ref\": - \"CdnSettings\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about live stream's status.\",\n \"$ref\": - \"LiveStreamStatus\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n },\n - \ \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the stream.\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveStream\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A live stream describes a live ingestion point.\",\n \"id\": \"LiveStream\",\n - \ \"type\": \"object\"\n },\n \"PlaylistItemListResponse\": {\n - \ \"id\": \"PlaylistItemListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of playlist items that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n - \ }\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"eventId\": {\n - \ \"type\": \"string\",\n \"description\": \"Serialized EventId - of the request which produced this response.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"CommentSnippetAuthorChannelId\": {\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"type\": \"object\",\n \"id\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"PlaylistItem\": {\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"PlaylistItemSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistItemContentDetails\",\n \"description\": \"The contentDetails - object is included in the resource if the included item is a YouTube video. - The object contains additional information about the video.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlistItem\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#playlistItem\\\".\"\n },\n - \ \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the playlist item.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"A *playlistItem* - resource identifies another resource, such as a video, that is included in - a playlist. In addition, the playlistItem resource contains details about - the included resource that pertain specifically to how that resource is used - in that playlist. YouTube uses playlists to identify special collections of - videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods. For example, if - a user gives a positive rating to a video, you would insert that video into - the liked videos playlist for that user's channel.\",\n \"type\": \"object\",\n - \ \"id\": \"PlaylistItem\"\n },\n \"ActivityListResponse\": {\n - \ \"type\": \"object\",\n \"id\": \"ActivityListResponse\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"default\": \"youtube#activityListResponse\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Activity\"\n }\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoRecordingDetails\": - {\n \"properties\": {\n \"location\": {\n \"description\": - \"The geolocation information associated with the video.\",\n \"$ref\": - \"GeoPoint\"\n },\n \"locationDescription\": {\n \"description\": - \"The text description of the location where the video was recorded.\",\n - \ \"type\": \"string\"\n },\n \"recordingDate\": {\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the video was recorded.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Recording information associated - with the video.\",\n \"id\": \"VideoRecordingDetails\",\n \"type\": - \"object\"\n },\n \"VideoContentDetails\": {\n \"id\": \"VideoContentDetails\",\n - \ \"properties\": {\n \"definition\": {\n \"enum\": [\n - \ \"sd\",\n \"hd\"\n ],\n \"enumDescriptions\": - [\n \"sd\",\n \"hd\"\n ],\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\",\n \"type\": \"string\"\n - \ },\n \"dimension\": {\n \"description\": \"The value - of dimension indicates whether the video is available in 3D or in 2D.\",\n - \ \"type\": \"string\"\n },\n \"caption\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"true\",\n \"false\"\n ],\n \"type\": - \"string\",\n \"description\": \"The value of captions indicates - whether the video has captions or not.\"\n },\n \"hasCustomThumbnail\": - {\n \"description\": \"Indicates whether the video uploader has provided - a custom thumbnail image for the video. This property is only visible to the - video uploader.\",\n \"type\": \"boolean\"\n },\n \"regionRestriction\": - {\n \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"contentRating\": - {\n \"description\": \"Specifies the ratings that the video received - under various rating schemes.\",\n \"$ref\": \"ContentRating\"\n - \ },\n \"projection\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the projection format of the video.\",\n \"enum\": [\n - \ \"rectangular\",\n \"360\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"countryRestriction\": - {\n \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\",\n \"$ref\": - \"AccessPolicy\"\n },\n \"licensedContent\": {\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\",\n \"type\": \"boolean\"\n },\n \"duration\": - {\n \"description\": \"The length of the video. The tag value is - an ISO 8601 duration in the format PT#M#S, in which the letters PT indicate - that the value specifies a period of time, and the letters M and S refer to - length in minutes and seconds, respectively. The # characters preceding the - M and S letters are both integers that specify the number of minutes (or seconds) - of the video. For example, a value of PT15M51S indicates that the video is - 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Details about - the content of a YouTube Video.\"\n },\n \"Subscription\": {\n \"properties\": - {\n \"subscriberSnippet\": {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"The subscriberSnippet object contains basic details - about the subscriber.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"SubscriptionContentDetails\",\n - \ \"description\": \"The contentDetails object contains basic statistics - about the subscription.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\",\n \"$ref\": - \"SubscriptionSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"default\": \"youtube#subscription\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\",\n \"id\": \"Subscription\"\n - \ },\n \"MembershipsDurationAtLevel\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"level\": {\n \"description\": - \"Pricing level ID.\",\n \"type\": \"string\"\n },\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\"\n },\n - \ \"memberSince\": {\n \"description\": \"The date and time - when the user became a continuous member for the given level.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"MembershipsDurationAtLevel\"\n - \ },\n \"LiveChatModerator\": {\n \"id\": \"LiveChatModerator\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#liveChatModerator\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the moderator.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ }\n },\n \"description\": \"A *liveChatModerator* resource - represents a moderator for a YouTube live chat. A chat moderator has the ability - to ban/unban users from a chat, remove message, etc.\"\n },\n \"LiveBroadcast\": - {\n \"description\": \"A *liveBroadcast* resource represents an event - that will be streamed, via live video, on YouTube.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - contains info about the event's current stats. These include concurrent viewers - and total chat count. Statistics can change (in either direction) during the - lifetime of an event. Statistics are only returned while the event is live.\",\n - \ \"$ref\": \"LiveBroadcastStatistics\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the event, including its - title, description, start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the event's status.\",\n \"$ref\": - \"LiveBroadcastStatus\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the broadcast.\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveBroadcast\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n }\n - \ },\n \"id\": \"LiveBroadcast\"\n },\n \"LiveChatModeratorSnippet\": - {\n \"id\": \"LiveChatModeratorSnippet\",\n \"properties\": {\n - \ \"liveChatId\": {\n \"description\": \"The ID of the live - chat this moderator can act on.\",\n \"type\": \"string\"\n },\n - \ \"moderatorDetails\": {\n \"description\": \"Details about - the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"PlaylistListResponse\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Playlist\"\n },\n \"description\": \"A list of playlists - that match the request criteria\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlistListResponse\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"description\": \"Information about a new playlist item.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information about the resource that was added to the playlist.\",\n - \ \"$ref\": \"ResourceId\"\n },\n \"playlistId\": {\n - \ \"type\": \"string\",\n \"description\": \"The value that - YouTube uses to uniquely identify the playlist.\"\n },\n \"playlistItemId\": - {\n \"type\": \"string\",\n \"description\": \"ID of the - item within the playlist.\"\n }\n },\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"type\": \"object\"\n },\n \"ChannelBrandingSettings\": {\n \"id\": - \"ChannelBrandingSettings\",\n \"type\": \"object\",\n \"properties\": - {\n \"hints\": {\n \"type\": \"array\",\n \"description\": - \"Additional experimental branding properties.\",\n \"items\": {\n - \ \"$ref\": \"PropertyValue\"\n }\n },\n \"watch\": - {\n \"$ref\": \"WatchSettings\",\n \"description\": \"Branding - properties for the watch page.\"\n },\n \"image\": {\n \"description\": - \"Branding properties for branding images.\",\n \"$ref\": \"ImageSettings\"\n - \ },\n \"channel\": {\n \"$ref\": \"ChannelSettings\",\n - \ \"description\": \"Branding properties for the channel view.\"\n - \ }\n },\n \"description\": \"Branding properties of a YouTube - channel.\"\n },\n \"ActivityContentDetailsComment\": {\n \"description\": - \"Information about a resource that received a comment.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource associated with the - comment.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"id\": - \"ActivityContentDetailsComment\",\n \"type\": \"object\"\n },\n \"VideoGetRatingResponse\": - {\n \"id\": \"VideoGetRatingResponse\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"default\": \"youtube#videoGetRatingResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of ratings that match the request criteria.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"Playlist\": {\n \"type\": \"object\",\n - \ \"id\": \"Playlist\",\n \"description\": \"A *playlist* resource - represents a YouTube playlist. A playlist is a collection of videos that can - be viewed sequentially and shared with other users. A playlist can contain - up to 200 videos, and YouTube does not limit the number of playlists that - each user creates. By default, playlists are publicly visible to other users, - but playlists can be public or private. YouTube also uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n - \ \"properties\": {\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information like video count.\",\n \"$ref\": - \"PlaylistContentDetails\"\n },\n \"player\": {\n \"$ref\": - \"PlaylistPlayer\",\n \"description\": \"The player object contains - information that you would use to play the playlist in an embedded player.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#playlist\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlist\\\".\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n },\n \"localizations\": - {\n \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\"\n },\n \"status\": - {\n \"$ref\": \"PlaylistStatus\",\n \"description\": \"The - status object contains status information for the playlist.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\"\n }\n }\n },\n \"MembershipsLevelSnippet\": - {\n \"id\": \"MembershipsLevelSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"levelDetails\": {\n \"$ref\": - \"LevelDetails\",\n \"description\": \"Details about the pricing - level.\"\n },\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveBroadcastContentDetails\": - {\n \"properties\": {\n \"boundStreamId\": {\n \"description\": - \"This value uniquely identifies the live stream bound to the broadcast.\",\n - \ \"type\": \"string\"\n },\n \"enableDvr\": {\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n - \ },\n \"latencyPreference\": {\n \"enumDescriptions\": - [\n \"\",\n \"Best for: highest quality viewer playbacks - and higher resolutions.\",\n \"Best for: near real-time interaction, - with minimal playback buffering.\",\n \"Best for: real-time interaction - Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n - \ \"description\": \"If both this and enable_low_latency are set, - they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW - should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency - omitted.\",\n \"type\": \"string\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ]\n },\n \"enableAutoStop\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - auto stop is enabled for this broadcast. The default value for this property - is false. This setting can only be used by Events.\"\n },\n \"projection\": - {\n \"type\": \"string\",\n \"description\": \"The projection - format of this broadcast. This defaults to rectangular.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ]\n },\n \"recordFromStart\": {\n \"type\": - \"boolean\",\n \"description\": \"Automatically start recording after - the event goes live. The default value for this property is true. *Important:* - You must also set the enableDvr property's value to true if you want the playback - to be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\"\n },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"enableEmbed\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast video can be played in an embedded player. - If you choose to archive the video (using the enableArchive property), this - setting will also apply to the archived video.\"\n },\n \"mesh\": - {\n \"description\": \"The mesh for projecting the video if projection - is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding - of 3D mesh data that follows the Spherical Video V2 RFC specification for - an mshp box, excluding the box size and type but including the following four - reserved zero bytes for the version and flags.\",\n \"format\": \"byte\",\n - \ \"type\": \"string\"\n },\n \"enableLowLatency\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast has low latency enabled.\"\n },\n \"startWithSlate\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast should automatically begin with an in-stream - slate when you update the broadcast's status to live. After updating the status, - you then need to send a liveCuepoints.insert request that sets the cuepoint's - eventState to end to remove the in-stream slate and make your broadcast stream - visible to viewers.\"\n },\n \"monitorStream\": {\n \"$ref\": - \"MonitorStreamInfo\",\n \"description\": \"The monitorStream object - contains information about the monitor stream, which the broadcaster can use - to review the event content before the broadcast stream is shown publicly.\"\n - \ },\n \"stereoLayout\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ],\n \"description\": \"The - 3D stereo layout of this broadcast. This defaults to mono.\"\n },\n - \ \"closedCaptionsType\": {\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"enableContentEncryption\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether YouTube should enable content encryption for the broadcast.\"\n - \ },\n \"enableAutoStart\": {\n \"description\": \"This - setting indicates whether auto start is enabled for this broadcast. The default - value for this property is false. This setting can only be used by Events.\",\n - \ \"type\": \"boolean\"\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the live stream referenced by boundStreamId was last updated.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Detailed settings of - a broadcast.\"\n },\n \"LiveStreamListResponse\": {\n \"type\": - \"object\",\n \"id\": \"LiveStreamListResponse\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStreamListResponse\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of live streams that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n - \ }\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"VideoSnippet\": {\n \"properties\": {\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the video was uploaded.\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that the video - was uploaded to.\"\n },\n \"tags\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of keyword tags associated with the video. - Tags may contain spaces.\"\n },\n \"categoryId\": {\n \"description\": - \"The YouTube video category associated with the video.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - video's title. @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The video's description. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"defaultLanguage\": {\n - \ \"type\": \"string\",\n \"description\": \"The language - of the videos's default snippet.\"\n },\n \"defaultAudioLanguage\": - {\n \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\",\n - \ \"$ref\": \"VideoLocalization\"\n },\n \"liveBroadcastContent\": - {\n \"type\": \"string\",\n \"description\": \"Indicates - if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" if - the video is not an upcoming/active live broadcast.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n },\n - \ \"channelTitle\": {\n \"description\": \"Channel title for - the channel that the video belongs to.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Basic details about a video, - including title, description, uploader, thumbnails and category.\",\n \"type\": - \"object\",\n \"id\": \"VideoSnippet\"\n },\n \"ChannelContentOwnerDetails\": - {\n \"id\": \"ChannelContentOwnerDetails\",\n \"properties\": {\n - \ \"timeLinked\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time when the channel - was linked to the content owner.\"\n },\n \"contentOwner\": - {\n \"description\": \"The ID of the content owner linked to the - channel.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"The contentOwnerDetails object encapsulates - channel data that is relevant for YouTube Partners linked with the channel.\"\n - \ },\n \"MembershipsLevelListResponse\": {\n \"properties\": {\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevelListResponse\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"MembershipsLevel\"\n },\n \"description\": \"A list of - pricing levels offered by a creator to the fans.\",\n \"type\": \"array\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMessage\": {\n \"id\": - \"LiveChatMessage\",\n \"properties\": {\n \"authorDetails\": - {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n \"description\": - \"The authorDetails object contains basic details about the user that posted - this message.\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the message.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatMessage\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ }\n },\n \"description\": \"A *liveChatMessage* resource - represents a chat message in a YouTube Live Chat.\",\n \"type\": \"object\"\n - \ },\n \"LiveChatSuperStickerDetails\": {\n \"id\": \"LiveChatSuperStickerDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"tier\": {\n - \ \"type\": \"integer\",\n \"description\": \"The tier in - which the amount belongs. Lower amounts belong to lower tiers. The lowest - tier is 1.\",\n \"format\": \"uint32\"\n },\n \"amountMicros\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made.\",\n \"type\": \"string\"\n },\n - \ \"amountDisplayString\": {\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\",\n \"type\": - \"string\"\n },\n \"superStickerMetadata\": {\n \"description\": - \"Information about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ }\n }\n },\n \"ChannelSectionListResponse\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#channelSectionListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of ChannelSections that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"ChannelSection\"\n }\n }\n },\n - \ \"id\": \"ChannelSectionListResponse\",\n \"type\": \"object\"\n - \ }\n },\n \"name\": \"youtube\",\n \"title\": \"YouTube Data API v3\",\n - \ \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"protocol\": \"rest\",\n \"kind\": \"discovery#restDescription\",\n \"canonicalName\": - \"YouTube\",\n \"ownerDomain\": \"google.com\",\n \"servicePath\": \"\",\n - \ \"documentationLink\": \"https://developers.google.com/youtube/\",\n \"parameters\": - {\n \"$.xgafv\": {\n \"enumDescriptions\": [\n \"v1 error format\",\n - \ \"v2 error format\"\n ],\n \"type\": \"string\",\n \"description\": - \"V1 error format.\",\n \"enum\": [\n \"1\",\n \"2\"\n - \ ],\n \"location\": \"query\"\n },\n \"key\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"quotaUser\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"alt\": {\n \"default\": \"json\",\n - \ \"enumDescriptions\": [\n \"Responses with Content-Type of application/json\",\n - \ \"Media download with context-dependent Content-Type\",\n \"Responses - with Content-Type of application/x-protobuf\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Data format for response.\",\n - \ \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ]\n },\n \"callback\": {\n \"description\": \"JSONP\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"prettyPrint\": - {\n \"description\": \"Returns response with indentations and line breaks.\",\n - \ \"default\": \"true\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"access_token\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"OAuth access token.\"\n - \ },\n \"upload_protocol\": {\n \"location\": \"query\",\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": - \"string\"\n },\n \"oauth_token\": {\n \"description\": \"OAuth - 2.0 token for the current user.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"fields\": {\n \"type\": \"string\",\n \"description\": - \"Selector specifying which fields to include in a partial response.\",\n - \ \"location\": \"query\"\n },\n \"uploadType\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"Legacy upload - protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n }\n },\n - \ \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"fullyEncodeReservedExpansion\": true\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:32 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCZHmQk67mSJgfCCTn7xBfew&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"gj5OUjc_9OUTXs1nqLZ0D-GMXZI\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"uXK3GynBKFltLsbMh3_vHSBL2so\",\n \"id\": \"UCZHmQk67mSJgfCCTn7xBfew\",\n - \ \"snippet\": {\n \"title\": \"Yannic Kilcher\",\n \"description\": - \"I make videos about machine learning research papers, programming, and issues - of the AI community, and the broader impact of AI in society.\\n\\nTwitter: - https://twitter.com/ykilcher\\nDiscord: https://ykilcher.com/discord\\nBitChute: - https://www.bitchute.com/channel/yannic-kilcher\\nLinkedIn: https://www.linkedin.com/in/ykilcher\\nBiliBili: - https://space.bilibili.com/2017636191\\n\\nIf you want to support me, the - best thing to do is to share out the content :)\\n\\nIf you want to support - me financially (completely optional and voluntary, but a lot of people have - asked for this):\\nSubscribeStar: https://www.subscribestar.com/yannickilcher\\nPatreon: - https://www.patreon.com/yannickilcher\\nBitcoin (BTC): bc1q49lsw3q325tr58ygf8sudx2dqfguclvngvy2cq\\nEthereum - (ETH): 0x7ad3513E3B8f66799f507Aa7874b1B0eBC7F85e2\\nLitecoin (LTC): LQW2TRyKYetVC8WjFkhpPhtpbDM4Vw7r9m\\nMonero - (XMR): 4ACL8AGrEo5hAir8A9CeVrW8pEauWvnp1WnSDZxW7tziCDLhZAGsgzhRQABDnFy8yuM9fWJDviJPHKRjV4FWt19CJZN9D4n\\n\\n\\n\",\n - \ \"customUrl\": \"@yannickilcher\",\n \"publishedAt\": \"2013-11-18T16:54:48Z\",\n - \ \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/ytc/AL5GRJXUTAqMSsU2jYYQGn2odyfOjy8QmpqzMBOZ3-RfqW0=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJXUTAqMSsU2jYYQGn2odyfOjy8QmpqzMBOZ3-RfqW0=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJXUTAqMSsU2jYYQGn2odyfOjy8QmpqzMBOZ3-RfqW0=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Yannic Kilcher\",\n \"description\": - \"I make videos about machine learning research papers, programming, and issues - of the AI community, and the broader impact of AI in society.\\n\\nTwitter: - https://twitter.com/ykilcher\\nDiscord: https://ykilcher.com/discord\\nBitChute: - https://www.bitchute.com/channel/yannic-kilcher\\nLinkedIn: https://www.linkedin.com/in/ykilcher\\nBiliBili: - https://space.bilibili.com/2017636191\\n\\nIf you want to support me, the - best thing to do is to share out the content :)\\n\\nIf you want to support - me financially (completely optional and voluntary, but a lot of people have - asked for this):\\nSubscribeStar: https://www.subscribestar.com/yannickilcher\\nPatreon: - https://www.patreon.com/yannickilcher\\nBitcoin (BTC): bc1q49lsw3q325tr58ygf8sudx2dqfguclvngvy2cq\\nEthereum - (ETH): 0x7ad3513E3B8f66799f507Aa7874b1B0eBC7F85e2\\nLitecoin (LTC): LQW2TRyKYetVC8WjFkhpPhtpbDM4Vw7r9m\\nMonero - (XMR): 4ACL8AGrEo5hAir8A9CeVrW8pEauWvnp1WnSDZxW7tziCDLhZAGsgzhRQABDnFy8yuM9fWJDviJPHKRjV4FWt19CJZN9D4n\\n\\n\\n\"\n - \ },\n \"country\": \"CH\"\n },\n \"brandingSettings\": - {\n \"channel\": {\n \"title\": \"Yannic Kilcher\",\n \"description\": - \"I make videos about machine learning research papers, programming, and issues - of the AI community, and the broader impact of AI in society.\\n\\nTwitter: - https://twitter.com/ykilcher\\nDiscord: https://ykilcher.com/discord\\nBitChute: - https://www.bitchute.com/channel/yannic-kilcher\\nLinkedIn: https://www.linkedin.com/in/ykilcher\\nBiliBili: - https://space.bilibili.com/2017636191\\n\\nIf you want to support me, the - best thing to do is to share out the content :)\\n\\nIf you want to support - me financially (completely optional and voluntary, but a lot of people have - asked for this):\\nSubscribeStar: https://www.subscribestar.com/yannickilcher\\nPatreon: - https://www.patreon.com/yannickilcher\\nBitcoin (BTC): bc1q49lsw3q325tr58ygf8sudx2dqfguclvngvy2cq\\nEthereum - (ETH): 0x7ad3513E3B8f66799f507Aa7874b1B0eBC7F85e2\\nLitecoin (LTC): LQW2TRyKYetVC8WjFkhpPhtpbDM4Vw7r9m\\nMonero - (XMR): 4ACL8AGrEo5hAir8A9CeVrW8pEauWvnp1WnSDZxW7tziCDLhZAGsgzhRQABDnFy8yuM9fWJDviJPHKRjV4FWt19CJZN9D4n\\n\\n\\n\",\n - \ \"keywords\": \"\\\"machine learning\\\" \\\"deep learning\\\" papers - academia arxiv \\\"reinforcement learning\\\" \\\"artificial intelligence\\\" - ai ml research google openai transformers gpt-3 programming \\\"neural networks\\\" - \\\"reinforcement learning\\\" \\\"natural language processing\\\" \\\"attention - mechanism\\\" \\\"machine learning news\\\" explained \\\"machine learning - explained\\\" \\\"machine learning tutorial\\\" \\\"deep learning explained\\\" - \\\"deep learning tutorial\\\" \\\"neural networks explained\\\" \\\"neural - networks tutorial\\\" \\\"tensorflow tutorial\\\" \\\"pytorch tutorial\\\"\",\n - \ \"unsubscribedTrailer\": \"rR5_emVeyBk\",\n \"country\": - \"CH\"\n },\n \"image\": {\n \"bannerExternalUrl\": - \"https://yt3.googleusercontent.com/V5tY3i1gSQKSYLNtanocpUq7AKWV5nTQS_3Rttel7eOpqOWuK-0zYPyhbXRlJbXR2MCBAnrX\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:32 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"discoveryVersion\": \"v1\",\n \"resources\": {\n \"comments\": - {\n \"methods\": {\n \"delete\": {\n \"id\": \"youtube.comments.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/comments\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"setModerationStatus\": - {\n \"description\": \"Sets the moderation status of one or more - comments.\",\n \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments/setModerationStatus\",\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\",\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"parameters\": {\n \"banAuthor\": {\n \"location\": - \"query\",\n \"description\": \"If set to true the author of - the comment gets added to the ban list. This means all future comments of - the author will autmomatically be rejected. Only valid in combination with - STATUS_REJECTED.\",\n \"default\": \"false\",\n \"type\": - \"boolean\"\n },\n \"moderationStatus\": {\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"required\": - true,\n \"description\": \"Specifies the requested moderation - status. Note, comments can be in statuses, which are not available through - this call. For example, this call does not allow to mark a comment as 'likely - spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"Modifies the moderation status of the comments with the given IDs\",\n \"repeated\": - true,\n \"location\": \"query\"\n }\n }\n - \ },\n \"update\": {\n \"id\": \"youtube.comments.update\",\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"markAsSpam\": {\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"Flags the comments with the given - IDs as spam in the caller's opinion.\"\n }\n },\n \"path\": - \"youtube/v3/comments/markAsSpam\",\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.comments.markAsSpam\",\n \"flatPath\": - \"youtube/v3/comments/markAsSpam\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Expresses the caller's opinion - that one or more comments should be flagged as spam.\"\n },\n \"list\": - {\n \"path\": \"youtube/v3/comments\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"parentId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more comment resource properties that the API response will - include.\"\n },\n \"textFormat\": {\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"default\": \"html\",\n \"description\": \"The - requested text format for the returned comments.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"Returns the comments with the given IDs for - One Platform.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"minimum\": \"1\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"20\",\n \"maximum\": - \"100\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"format\": \"uint32\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"CommentListResponse\"\n },\n \"id\": \"youtube.comments.list\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"insert\": {\n \"id\": \"youtube.comments.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true\n }\n },\n - \ \"path\": \"youtube/v3/comments\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"response\": - {\n \"$ref\": \"Comment\"\n }\n }\n }\n },\n - \ \"liveChatModerators\": {\n \"methods\": {\n \"insert\": {\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": \"POST\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"id\": \"youtube.liveChatModerators.insert\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"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.\"\n }\n }\n },\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"maxResults\": {\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"minimum\": \"0\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n },\n \"liveChatId\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"The id of the live chat for which moderators should be returned.\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"id\": \"youtube.liveChatModerators.list\"\n },\n - \ \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat moderator.\",\n \"id\": - \"youtube.liveChatModerators.delete\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ]\n - \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n - \ \"set\": {\n \"supportsMediaUpload\": true,\n \"parameterOrder\": - [\n \"videoId\"\n ],\n \"mediaUpload\": {\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"2097152\"\n },\n \"flatPath\": - \"youtube/v3/thumbnails/set\",\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"parameters\": {\n \"videoId\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"id\": \"youtube.thumbnails.set\",\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"rate\": - {\n \"flatPath\": \"youtube/v3/videos/rate\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Adds a like or dislike rating to - a video or removes a rating from a video.\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"parameters\": - {\n \"rating\": {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/videos/rate\",\n \"id\": \"youtube.videos.rate\"\n },\n - \ \"getRating\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.videos.getRating\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos/getRating\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/videos/getRating\",\n \"description\": - \"Retrieves the ratings that the authorized user gave to a list of specified - videos.\"\n },\n \"reportAbuse\": {\n \"parameterOrder\": - [],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"path\": \"youtube/v3/videos/reportAbuse\",\n \"description\": - \"Report abuse for a video.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n - \ },\n \"id\": \"youtube.videos.reportAbuse\",\n \"httpMethod\": - \"POST\"\n },\n \"insert\": {\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"path\": \"youtube/v3/videos\",\n \"mediaUpload\": {\n - \ \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": true\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/videos\"\n }\n - \ },\n \"maxSize\": \"274877906944\",\n \"accept\": - [\n \"video/*\",\n \"application/octet-stream\"\n - \ ]\n },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"autoLevels\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Should auto-levels be applied to the upload.\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"stabilize\": {\n \"description\": \"Should stabilize - be applied to the upload.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"notifySubscribers\": {\n \"location\": - \"query\",\n \"description\": \"Notify the channel subscribers - about the new video. As default, the notification is enabled.\",\n \"type\": - \"boolean\",\n \"default\": \"true\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"id\": \"youtube.videos.insert\",\n \"supportsMediaUpload\": - true\n },\n \"update\": {\n \"path\": \"youtube/v3/videos\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"id\": \"youtube.videos.update\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"list\": {\n \"parameters\": - {\n \"locale\": {\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxHeight\": {\n \"location\": - \"query\",\n \"maximum\": \"8192\",\n \"minimum\": - \"72\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ },\n \"maxResults\": {\n \"type\": \"integer\",\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"maximum\": \"50\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"1\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"myRating\": {\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return videos liked/disliked - by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\"\n - \ },\n \"maxWidth\": {\n \"description\": - \"Return the player with maximum height specified in\",\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"minimum\": - \"72\",\n \"format\": \"int32\",\n \"maximum\": - \"8192\"\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"videoCategoryId\": - {\n \"description\": \"Use chart that is specific to the specified - video category\",\n \"default\": \"0\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Return videos with the given ids.\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"chart\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - the most popular videos for the specified content region and video category.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Return the videos that are in the specified chart.\",\n \"enum\": - [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"regionCode\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Use a chart that is specific - to the specified region\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"VideoListResponse\"\n },\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"id\": \"youtube.videos.list\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/videos\"\n },\n - \ \"delete\": {\n \"flatPath\": \"youtube/v3/videos\",\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.videos.delete\",\n \"path\": - \"youtube/v3/videos\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"subscriptions\": {\n \"methods\": {\n - \ \"insert\": {\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Subscription\"\n - \ }\n },\n \"delete\": {\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a resource.\"\n },\n \"list\": {\n \"parameters\": - {\n \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"location\": \"query\",\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"default\": \"5\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions of the given channel owner.\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"description\": \"Flag for returning the subscriptions - of the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n - \ \"myRecentSubscribers\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"order\": - {\n \"default\": \"relevance\",\n \"enum\": [\n - \ \"subscriptionOrderUnspecified\",\n \"relevance\",\n - \ \"unread\",\n \"alphabetical\"\n ],\n - \ \"description\": \"The order of the returned subscriptions\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"forChannelId\": {\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\"\n },\n - \ \"mySubscribers\": {\n \"location\": \"query\",\n - \ \"description\": \"Return the subscribers of the given channel - owner.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"response\": {\n \"$ref\": - \"SubscriptionListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.subscriptions.list\"\n - \ }\n }\n },\n \"playlistItems\": {\n \"methods\": {\n - \ \"delete\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.playlistItems.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n }\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"Return the playlist - items associated with the given video ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"playlistId\": {\n \"description\": - \"Return the playlist items within the given playlist.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"default\": \"5\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\"\n }\n },\n - \ \"id\": \"youtube.playlistItems.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"PlaylistItemListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ },\n \"update\": {\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"required\": - true\n }\n },\n \"description\": \"Updates an - existing resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.playlistItems.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"path\": \"youtube/v3/playlistItems\",\n \"id\": - \"youtube.playlistItems.insert\",\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\"\n }\n }\n },\n - \ \"channels\": {\n \"methods\": {\n \"update\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"Channel\"\n },\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"id\": \"youtube.channels.update\",\n - \ \"path\": \"youtube/v3/channels\",\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"flatPath\": - \"youtube/v3/channels\",\n \"description\": \"Updates an existing - resource.\",\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"flatPath\": \"youtube/v3/channels\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"mySubscribers\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the channels subscribed to the authenticated user\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n },\n - \ \"categoryId\": {\n \"type\": \"string\",\n \"description\": - \"Return the channels within the specified guide category ID.\",\n \"location\": - \"query\"\n },\n \"forUsername\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the channel associated with a YouTube username.\"\n },\n - \ \"managedByMe\": {\n \"location\": \"query\",\n \"description\": - \"Return the channels managed by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"Return - the channels with the specified IDs.\"\n },\n \"mine\": - {\n \"description\": \"Return the ids of channels owned by the - authenticated user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"path\": \"youtube/v3/channels\",\n - \ \"id\": \"youtube.channels.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ChannelListResponse\"\n }\n }\n }\n },\n \"i18nLanguages\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"I18nLanguageListResponse\"\n },\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - i18nLanguage resource properties that the API response will include. Set the - parameter value to snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"default\": \"en_US\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/i18nLanguages\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/i18nLanguages\"\n }\n }\n - \ },\n \"youtube\": {\n \"resources\": {\n \"v3\": {\n \"methods\": - {\n \"updateCommentThreads\": {\n \"request\": {\n - \ \"$ref\": \"CommentThread\"\n },\n \"parameterOrder\": - [],\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"PUT\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"id\": - \"youtube.youtube.v3.updateCommentThreads\",\n \"description\": - \"Updates an existing resource.\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n - \ }\n }\n }\n }\n }\n },\n - \ \"videoAbuseReportReasons\": {\n \"methods\": {\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"parameters\": {\n \"hl\": {\n \"default\": - \"en-US\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"response\": - {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\"\n }\n }\n - \ },\n \"liveBroadcasts\": {\n \"methods\": {\n \"insertCuepoint\": - {\n \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"parameterOrder\": [],\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"description\": \"Broadcast to insert - ads to, or equivalently `external_video_id` for internal use.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"description\": - \"Insert cuepoints in a broadcast\",\n \"request\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"path\": - \"youtube/v3/liveBroadcasts/cuepoint\"\n },\n \"transition\": - {\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Transition a broadcast to a given - status.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"Broadcast to transition.\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"broadcastStatus\": {\n \"enum\": - [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - status to which the broadcast is going to transition.\",\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ]\n }\n },\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts/transition\"\n - \ },\n \"update\": {\n \"id\": \"youtube.liveBroadcasts.update\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing broadcast for the authenticated user.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ]\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"Broadcast to delete.\"\n }\n - \ },\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Delete a given broadcast.\",\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\"\n },\n - \ \"insert\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.liveBroadcasts.insert\",\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n }\n },\n \"bind\": {\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"streamId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Stream to bind, if not set unbind the current - one.\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Broadcast - to bind to the stream\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Bind a broadcast to a stream.\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"id\": \"youtube.liveBroadcasts.bind\"\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"LiveBroadcastListResponse\"\n },\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"broadcastType\": {\n - \ \"type\": \"string\",\n \"description\": \"Return - only broadcasts with the selected type.\",\n \"default\": \"event\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return only scheduled event broadcasts.\",\n - \ \"Return only persistent broadcasts.\"\n ],\n - \ \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\"\n },\n \"part\": {\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"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, status - and statistics.\",\n \"required\": true\n },\n \"broadcastStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"location\": - \"query\",\n \"description\": \"Return broadcasts with a certain - status, e.g. active broadcasts.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ]\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Return broadcasts with the given - ids from Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieve the list of broadcasts - associated with the given channel.\",\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"captions\": {\n \"methods\": {\n \"insert\": - {\n \"parameters\": {\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is be on behalf of\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the caption - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"POST\",\n \"mediaUpload\": {\n \"maxSize\": - \"104857600\",\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ }\n }\n },\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"supportsMediaUpload\": - true,\n \"id\": \"youtube.captions.insert\",\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"download\": {\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.download\",\n \"flatPath\": - \"youtube/v3/captions/{id}\",\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"useMediaDownloadService\": true,\n \"httpMethod\": \"GET\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"tfmt\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Convert the captions into this - format. Supported options are sbv, srt, and vtt.\"\n },\n \"id\": - {\n \"required\": true,\n \"description\": \"The - ID of the caption track to download, required for One Platform.\",\n \"location\": - \"path\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"onBehalfOf\": {\n - \ \"location\": \"query\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is be on behalf of\",\n - \ \"type\": \"string\"\n },\n \"tlang\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"tlang is the language code; machine translate - the captions into this language.\"\n }\n },\n \"description\": - \"Downloads a caption track.\",\n \"supportsMediaDownload\": true\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/captions\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\"\n },\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/captions\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoId\": {\n \"location\": - \"query\",\n \"description\": \"Returns the captions for the - specified video.\",\n \"required\": true,\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": - \"Returns the captions with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"path\": \"youtube/v3/captions\",\n \"id\": - \"youtube.captions.list\"\n },\n \"update\": {\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n }\n },\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"id\": \"youtube.captions.update\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"supportsMediaUpload\": true,\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n },\n \"sync\": - {\n \"type\": \"boolean\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is on behalf of.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"flatPath\": \"youtube/v3/captions\"\n }\n }\n },\n - \ \"i18nRegions\": {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the i18nRegion - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"required\": true,\n \"type\": - \"string\"\n },\n \"hl\": {\n \"default\": - \"en_US\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/i18nRegions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.i18nRegions.list\"\n }\n }\n },\n \"watermarks\": - {\n \"methods\": {\n \"set\": {\n \"supportsMediaUpload\": - true,\n \"description\": \"Allows upload of watermark image and setting - it for a channel.\",\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"id\": \"youtube.watermarks.set\",\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"mediaUpload\": - {\n \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n },\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": true\n - \ }\n },\n \"maxSize\": \"10485760\",\n - \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"unset\": {\n \"description\": \"Allows removal - of channel watermark.\",\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n - \ \"id\": \"youtube.watermarks.unset\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"path\": \"youtube/v3/watermarks/unset\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n }\n }\n - \ }\n },\n \"commentThreads\": {\n \"methods\": {\n \"insert\": - {\n \"path\": \"youtube/v3/commentThreads\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"id\": \"youtube.commentThreads.insert\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"flatPath\": - \"youtube/v3/commentThreads\"\n },\n \"list\": {\n \"parameters\": - {\n \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads of all videos of the channel and the channel comments - as well.\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"maximum\": \"100\",\n - \ \"default\": \"20\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"1\"\n },\n - \ \"moderationStatus\": {\n \"enumDescriptions\": [\n - \ \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"default\": \"published\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"searchTerms\": - {\n \"description\": \"Limits the returned comment threads to - those matching the specified key words. Not compatible with the 'id' filter.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"textFormat\": {\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"description\": \"The requested - text format for the returned comments.\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"location\": \"query\",\n \"default\": \"html\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads for all the channel comments (ie does not include comments - left on videos).\",\n \"location\": \"query\"\n },\n - \ \"order\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"default\": \"time\",\n \"location\": \"query\"\n - \ },\n \"videoId\": {\n \"description\": - \"Returns the comment threads of the specified video.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.commentThreads.list\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/commentThreads\"\n }\n }\n - \ },\n \"channelBanners\": {\n \"methods\": {\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"path\": \"youtube/v3/channelBanners/insert\",\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"id\": - \"youtube.channelBanners.insert\",\n \"description\": \"Inserts a - new resource into this collection.\",\n \"response\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"supportsMediaUpload\": true,\n \"mediaUpload\": - {\n \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/channelBanners/insert\",\n \"multipart\": - true\n },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Unused, channel_id is currently - derived from the security context of the requestor.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": []\n - \ }\n }\n },\n \"playlists\": {\n \"methods\": {\n \"list\": - {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n - \ \"location\": \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the playlists owned by the authenticated user.\"\n },\n - \ \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return content in specified - language\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"id\": {\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return the playlists with the - given IDs for Stubby or Apiary.\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the playlists owned by the specified - channel ID.\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"default\": \"5\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.list\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\"\n },\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.delete\"\n - \ },\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.update\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.playlists.insert\",\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n }\n - \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n - \ \"insert\": {\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.abuseReports.insert\",\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"activities\": {\n \"methods\": {\n \"list\": - {\n \"flatPath\": \"youtube/v3/activities\",\n \"path\": - \"youtube/v3/activities\",\n \"id\": \"youtube.activities.list\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"home\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"publishedBefore\": {\n \"location\": - \"query\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"publishedAfter\": - {\n \"type\": \"string\",\n \"format\": \"google-datetime\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"regionCode\": {\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"type\": \"integer\",\n \"maximum\": - \"50\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/superChatEvents\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/superChatEvents\",\n - \ \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - superChatEvent resource parts that the API response will include. This parameter - is currently not supported.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"minimum\": \"1\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"format\": \"uint32\"\n },\n - \ \"hl\": {\n \"location\": \"query\",\n \"description\": - \"Return rendered funding amounts in specified language.\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n - \ },\n \"id\": \"youtube.superChatEvents.list\"\n }\n - \ }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.tests.insert\",\n \"description\": - \"POST method.\",\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/tests\",\n \"path\": \"youtube/v3/tests\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"request\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"channelSections\": {\n \"methods\": {\n \"update\": - {\n \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.update\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n }\n },\n \"insert\": {\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.channelSections.insert\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/channelSections\"\n },\n - \ \"list\": {\n \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/channelSections\",\n \"path\": - \"youtube/v3/channelSections\",\n \"parameters\": {\n \"mine\": - {\n \"location\": \"query\",\n \"description\": - \"Return the ChannelSections owned by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": - true\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"Return content in specified language\",\n - \ \"location\": \"query\"\n },\n \"channelId\": - {\n \"description\": \"Return the ChannelSections owned by the - specified channel ID.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"repeated\": - true,\n \"description\": \"Return the ChannelSections with the - given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.channelSections.list\"\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/channelSections\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.delete\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\"\n }\n }\n },\n \"thirdPartyLinks\": - {\n \"methods\": {\n \"update\": {\n \"response\": {\n - \ \"$ref\": \"ThirdPartyLink\"\n },\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing resource.\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.update\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\"\n }\n },\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n }\n },\n \"delete\": {\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Do not use. Required for compatibility.\"\n - \ },\n \"linkingToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"Delete the partner links with the - given linking token.\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Type of the link to be deleted.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"required\": true\n }\n },\n \"description\": - \"Deletes a resource.\",\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ],\n \"id\": \"youtube.thirdPartyLinks.delete\"\n - \ },\n \"insert\": {\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n },\n \"list\": - {\n \"id\": \"youtube.thirdPartyLinks.list\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API response will include. Supported values are linkingToken, - status, and snippet.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"description\": - \"Get a third party link of the given type.\",\n \"location\": - \"query\"\n },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"linkingToken\": - {\n \"location\": \"query\",\n \"description\": - \"Get a third party link with the given linking token.\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"GET\"\n }\n - \ }\n },\n \"membershipsLevels\": {\n \"methods\": {\n \"list\": - {\n \"id\": \"youtube.membershipsLevels.list\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"MembershipsLevelListResponse\"\n },\n - \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"description\": \"Retrieves a list of all pricing - levels offered by a creator to the fans.\",\n \"path\": \"youtube/v3/membershipsLevels\"\n - \ }\n }\n },\n \"liveStreams\": {\n \"methods\": {\n - \ \"list\": {\n \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"description\": \"Return LiveStreams with the given - ids from Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\"\n },\n \"part\": {\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.liveStreams.list\",\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\"\n },\n - \ \"insert\": {\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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, content_details, and status.\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true\n }\n - \ },\n \"id\": \"youtube.liveStreams.insert\",\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"path\": - \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\"\n },\n \"update\": - {\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.liveStreams.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Updates an existing stream for the authenticated user.\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"httpMethod\": \"PUT\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ }\n },\n \"delete\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": - \"youtube.liveStreams.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"description\": - \"Deletes an existing stream for the authenticated user.\",\n \"httpMethod\": - \"DELETE\"\n }\n }\n },\n \"search\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/search\",\n \"parameters\": - {\n \"relatedToVideoId\": {\n \"description\": \"Search - related to a resource.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"order\": {\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Resources - are sorted in reverse chronological order based on the date they were created.\",\n - \ \"Resources are sorted from highest to lowest rating.\",\n - \ \"Resources are sorted from highest to lowest number of views.\",\n - \ \"Resources are sorted based on their relevance to the search - query. This is the default value for this parameter.\",\n \"Resources - are sorted alphabetically by title.\",\n \"Channels are sorted - in descending order of their number of uploaded videos.\"\n ],\n - \ \"type\": \"string\",\n \"default\": \"relevance\",\n - \ \"location\": \"query\",\n \"description\": \"Sort - order of the results.\"\n },\n \"videoSyndicated\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos, syndicated or not.\",\n \"Only retrieve syndicated - videos.\"\n ],\n \"type\": \"string\",\n \"description\": - \"Filter on syndicated videos.\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\"\n },\n \"videoCategoryId\": {\n \"description\": - \"Filter on videos in a specific category.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"forContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"Search owned by a content owner.\",\n \"type\": \"boolean\"\n - \ },\n \"eventType\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ],\n \"location\": - \"query\",\n \"description\": \"Filter on the livestream status - of the videos.\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"type\": \"string\"\n },\n \"videoLicense\": - {\n \"type\": \"string\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"description\": \"Filter on the license of the videos.\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ]\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Display the content as seen by viewers in this country.\"\n },\n - \ \"forDeveloper\": {\n \"description\": \"Restrict - the search to only retrieve videos uploaded using the project id of the authenticated - user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"videoDefinition\": {\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ],\n \"description\": - \"Filter on the definition of the videos.\",\n \"location\": - \"query\"\n },\n \"topicId\": {\n \"location\": - \"query\",\n \"description\": \"Restrict results to a particular - topic.\",\n \"type\": \"string\"\n },\n \"publishedAfter\": - {\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"description\": \"Filter on resources published - after this date.\",\n \"location\": \"query\"\n },\n - \ \"videoDuration\": {\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Filter on the duration of the videos.\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ]\n - \ },\n \"videoType\": {\n \"description\": - \"Filter on videos of a specific type.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"videoTypeUnspecified\",\n \"any\",\n - \ \"movie\",\n \"episode\"\n ],\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ]\n },\n \"onBehalfOfContentOwner\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"locationRadius\": {\n \"description\": - \"Filter on distance from the location (specified above).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"default\": \"5\",\n \"location\": - \"query\",\n \"maximum\": \"50\"\n },\n \"safeSearch\": - {\n \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"default\": \"moderate\",\n \"enum\": - [\n \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"description\": \"Indicates whether the search results should - include restricted content as well as standard content.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"relevanceLanguage\": - {\n \"description\": \"Return results relevant to this language.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"videoCaption\": {\n \"enum\": [\n - \ \"videoCaptionUnspecified\",\n \"any\",\n \"closedCaption\",\n - \ \"none\"\n ],\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"publishedBefore\": {\n \"description\": - \"Filter on resources published before this date.\",\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"channelType\": {\n \"description\": - \"Add a filter on the channel search.\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all channels.\",\n \"Only retrieve - shows.\"\n ],\n \"location\": \"query\"\n },\n - \ \"location\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Filter on location of the video\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"forMine\": - {\n \"description\": \"Search for the private videos of the authenticated - user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"type\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular set of resource types from One Platform.\",\n - \ \"type\": \"string\"\n },\n \"videoDimension\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"Include both 3D and - non-3D videos in returned results. This is the default value.\",\n \"Restrict - search results to exclude 3D videos.\",\n \"Restrict search - results to only include 3D videos.\"\n ],\n \"description\": - \"Filter on 3d videos.\",\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ]\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Filter on resources belonging - to this channelId.\"\n },\n \"videoEmbeddable\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos, embeddable or not.\",\n \"Only retrieve embeddable - videos.\"\n ],\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"description\": - \"Filter on embeddable videos.\"\n },\n \"q\": {\n \"location\": - \"query\",\n \"description\": \"Textual search terms to match.\",\n - \ \"type\": \"string\"\n }\n },\n \"response\": - {\n \"$ref\": \"SearchListResponse\"\n },\n \"id\": - \"youtube.search.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/search\",\n \"description\": - \"Retrieves a list of search resources\"\n }\n }\n },\n \"members\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"path\": \"youtube/v3/members\",\n \"flatPath\": - \"youtube/v3/members\",\n \"description\": \"Retrieves a list of - members that match the request criteria for a channel.\",\n \"response\": - {\n \"$ref\": \"MemberListResponse\"\n },\n \"parameters\": - {\n \"filterByMemberChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"mode\": {\n \"type\": \"string\",\n - \ \"description\": \"Parameter that specifies which channel members - to return.\",\n \"default\": \"all_current\",\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ]\n - \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n - \ \"maximum\": \"1000\",\n \"minimum\": \"0\",\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\"\n },\n \"hasAccessToLevel\": {\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.members.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"liveChatMessages\": {\n \"methods\": {\n \"insert\": - {\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"request\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"description\": \"Inserts a - new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatMessages.insert\"\n },\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"description\": \"Deletes a - chat message.\",\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"id\": \"youtube.liveChatMessages.delete\"\n - \ },\n \"list\": {\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the liveChatComment resource parts that the - API response will include. Supported values are id and snippet.\"\n },\n - \ \"hl\": {\n \"description\": \"Specifies the localization - language in which the system messages should be returned.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"maximum\": \"2000\",\n \"type\": - \"integer\",\n \"default\": \"500\",\n \"minimum\": - \"200\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"liveChatId\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The id of the live chat for which comments - should be returned.\",\n \"type\": \"string\"\n },\n - \ \"profileImageSize\": {\n \"description\": \"Specifies - the size of the profile image that should be returned for each user.\",\n - \ \"minimum\": \"16\",\n \"maximum\": \"720\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"id\": \"youtube.liveChatMessages.list\",\n \"response\": - {\n \"$ref\": \"LiveChatMessageListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"path\": - \"youtube/v3/liveChat/messages\"\n }\n }\n },\n \"liveChatBans\": - {\n \"methods\": {\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveChat/bans\"\n },\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"id\": \"youtube.liveChatBans.delete\",\n - \ \"description\": \"Deletes a chat ban.\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/bans\"\n }\n }\n },\n - \ \"videoCategories\": {\n \"methods\": {\n \"list\": {\n \"parameters\": - {\n \"regionCode\": {\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"hl\": {\n - \ \"default\": \"en-US\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"Returns the video categories with the given IDs for Stubby or Apiary.\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the videoCategory resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"path\": \"youtube/v3/videoCategories\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videoCategories.list\",\n \"flatPath\": - \"youtube/v3/videoCategories\",\n \"httpMethod\": \"GET\"\n }\n - \ }\n }\n },\n \"parameters\": {\n \"$.xgafv\": {\n \"enum\": - [\n \"1\",\n \"2\"\n ],\n \"enumDescriptions\": [\n - \ \"v1 error format\",\n \"v2 error format\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": \"V1 error - format.\"\n },\n \"prettyPrint\": {\n \"default\": \"true\",\n - \ \"description\": \"Returns response with indentations and line breaks.\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n },\n \"key\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n - \ },\n \"fields\": {\n \"description\": \"Selector specifying which - fields to include in a partial response.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"access_token\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"OAuth access - token.\"\n },\n \"callback\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"JSONP\"\n },\n \"alt\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n \"json\",\n - \ \"media\",\n \"proto\"\n ],\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"default\": \"json\",\n - \ \"description\": \"Data format for response.\"\n },\n \"upload_protocol\": - {\n \"type\": \"string\",\n \"description\": \"Upload protocol for - media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"location\": \"query\"\n - \ },\n \"uploadType\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Legacy upload protocol for media (e.g. - \\\"media\\\", \\\"multipart\\\").\"\n },\n \"oauth_token\": {\n \"description\": - \"OAuth 2.0 token for the current user.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"quotaUser\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"canonicalName\": \"YouTube\",\n \"schemas\": {\n \"InvideoBranding\": - {\n \"properties\": {\n \"imageBytes\": {\n \"format\": - \"byte\",\n \"type\": \"string\",\n \"description\": \"The - bytes the uploaded image. Only used in api to youtube communication.\"\n },\n - \ \"targetChannelId\": {\n \"description\": \"The channel to - which this branding links. If not present it defaults to the current channel.\",\n - \ \"type\": \"string\"\n },\n \"imageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The url of the uploaded image. Only - used in apiary to api communication.\"\n },\n \"timing\": {\n - \ \"$ref\": \"InvideoTiming\",\n \"description\": \"The temporal - position within the video where watermark will be displayed.\"\n },\n - \ \"position\": {\n \"$ref\": \"InvideoPosition\",\n \"description\": - \"The spatial position within the video where the branding watermark will - be displayed.\"\n }\n },\n \"description\": \"LINT.IfChange - Describes an invideo branding.\",\n \"type\": \"object\",\n \"id\": - \"InvideoBranding\"\n },\n \"VideoPlayer\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\",\n - \ \"type\": \"string\"\n },\n \"embedHeight\": {\n \"format\": - \"int64\",\n \"type\": \"string\"\n },\n \"embedWidth\": - {\n \"type\": \"string\",\n \"description\": \"The embed - width\",\n \"format\": \"int64\"\n }\n },\n \"description\": - \"Player to be used for a video playback.\",\n \"id\": \"VideoPlayer\"\n - \ },\n \"LiveChatMessageRetractedDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageRetractedDetails\",\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveChatFanFundingEventDetails\": {\n \"id\": - \"LiveChatFanFundingEventDetails\",\n \"properties\": {\n \"amountMicros\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The amount of the fund.\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the user to this fan funding - event.\"\n },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"I18nLanguage\": {\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the i18n language.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"I18nLanguageSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"default\": \"youtube#i18nLanguage\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"An *i18nLanguage* resource identifies - a UI language currently supported by YouTube.\",\n \"id\": \"I18nLanguage\",\n - \ \"type\": \"object\"\n },\n \"ChannelAuditDetails\": {\n \"type\": - \"object\",\n \"id\": \"ChannelAuditDetails\",\n \"properties\": - {\n \"communityGuidelinesGoodStanding\": {\n \"description\": - \"Whether or not the channel respects the community guidelines.\",\n \"type\": - \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the channel has - any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n }\n },\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\"\n },\n \"ChannelConversionPing\": - {\n \"type\": \"object\",\n \"properties\": {\n \"context\": - {\n \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Defines the context of the ping.\"\n },\n - \ \"conversionUrl\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"description\": \"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.\",\n \"id\": - \"ChannelConversionPing\"\n },\n \"LiveStreamHealthStatus\": {\n \"type\": - \"object\",\n \"properties\": {\n \"configurationIssues\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n },\n \"description\": - \"The configurations issues on this stream\"\n },\n \"lastUpdateTimeSeconds\": - {\n \"description\": \"The last time this status was updated (in - seconds)\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"status\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"good\",\n \"ok\",\n - \ \"bad\",\n \"noData\",\n \"revoked\"\n ],\n - \ \"description\": \"The status code of this stream\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveStreamHealthStatus\"\n - \ },\n \"ActivityContentDetailsChannelItem\": {\n \"type\": \"object\",\n - \ \"description\": \"Details about a resource which was added to a channel.\",\n - \ \"id\": \"ActivityContentDetailsChannelItem\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that was added to - the channel.\",\n \"$ref\": \"ResourceId\"\n }\n }\n - \ },\n \"LiveBroadcastStatistics\": {\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"properties\": {\n \"totalChatCount\": {\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"concurrentViewers\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Statistics about - the live broadcast. These represent a snapshot of the values at the time of - the request. Statistics are only returned for live broadcasts.\",\n \"type\": - \"object\"\n },\n \"SearchListResponse\": {\n \"id\": \"SearchListResponse\",\n - \ \"properties\": {\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"default\": \"youtube#searchListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"SearchResult\"\n },\n - \ \"description\": \"Pagination information for token pagination.\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ChannelProfileDetails\": - {\n \"id\": \"ChannelProfileDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"channelUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's URL.\"\n },\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - display name.\"\n },\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube channel ID.\"\n }\n }\n },\n \"ActivityContentDetailsSubscription\": - {\n \"description\": \"Information about a channel that a user subscribed - to.\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"id\": \"ActivityContentDetailsSubscription\",\n \"type\": - \"object\"\n },\n \"ChannelStatistics\": {\n \"properties\": {\n - \ \"viewCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of times the channel has been viewed.\",\n \"type\": - \"string\"\n },\n \"videoCount\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The number of - videos uploaded to the channel.\"\n },\n \"subscriberCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of subscribers that the channel has.\"\n },\n \"hiddenSubscriberCount\": - {\n \"description\": \"Whether or not the number of subscribers is - shown for this user.\",\n \"type\": \"boolean\"\n },\n \"commentCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of comments for the channel.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Statistics - about a channel: number of subscribers, number of videos in the channel, etc.\",\n - \ \"id\": \"ChannelStatistics\"\n },\n \"LiveBroadcastListResponse\": - {\n \"id\": \"LiveBroadcastListResponse\",\n \"properties\": {\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"default\": - \"youtube#liveBroadcastListResponse\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of broadcasts that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveBroadcast\"\n }\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveStream\": {\n \"type\": \"object\",\n \"id\": - \"LiveStream\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n - \ },\n \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n - \ \"description\": \"The status object contains information about - live stream's status.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n - \ \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\"\n },\n - \ \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the stream.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveStream\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveStream\\\".\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A live stream describes a live - ingestion point.\"\n },\n \"PlaylistListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"default\": \"youtube#playlistListResponse\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"items\": {\n \"description\": \"A list of playlists that - match the request criteria\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Playlist\"\n }\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n }\n },\n \"id\": \"PlaylistListResponse\"\n - \ },\n \"CommentThreadSnippet\": {\n \"description\": \"Basic details - about a comment thread.\",\n \"properties\": {\n \"canReply\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"totalReplyCount\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total number of replies (not including the top level comment).\"\n },\n - \ \"topLevelComment\": {\n \"$ref\": \"Comment\",\n \"description\": - \"The top level comment of this thread.\"\n },\n \"isPublic\": - {\n \"description\": \"Whether the thread (and therefore all its - comments) is visible to all YouTube users.\",\n \"type\": \"boolean\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\"\n }\n },\n \"id\": \"CommentThreadSnippet\",\n - \ \"type\": \"object\"\n },\n \"VideoSuggestions\": {\n \"properties\": - {\n \"processingErrors\": {\n \"type\": \"array\",\n \"items\": - {\n \"enum\": [\n \"audioFile\",\n \"imageFile\",\n - \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n - \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ]\n },\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\"\n },\n \"editorSuggestions\": {\n \"items\": - {\n \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ]\n - \ },\n \"description\": \"A list of video editing operations - that might improve the video quality or playback experience of the uploaded - video.\",\n \"type\": \"array\"\n },\n \"processingHints\": - {\n \"description\": \"A list of suggestions that may improve YouTube's - ability to process the video.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ],\n \"enumDescriptions\": [\n \"The MP4 - file is not streamable, this will slow down the processing. MOOV atom was - not found at the beginning of the file.\",\n \"Probably a better - quality version of the video exists. The video has wide screen aspect ratio, - but is not an HD video.\",\n \"Uploaded video is spherical video.\",\n - \ \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ]\n - \ }\n },\n \"processingWarnings\": {\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"enumDescriptions\": [\n \"Unrecognized file format, - transcoding is likely to fail.\",\n \"Unrecognized video codec, - transcoding is likely to fail.\",\n \"Unrecognized audio codec, - transcoding is likely to fail.\",\n \"Conflicting container and - stream resolutions.\",\n \"Edit lists are not currently supported.\",\n - \ \"Video codec that is known to cause problems was used.\",\n - \ \"Audio codec that is known to cause problems was used.\",\n - \ \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"type\": - \"string\"\n }\n },\n \"tagSuggestions\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"description\": \"A list of keyword tags that could - be added to the video's metadata to increase the likelihood that users will - locate your video when searching or browsing on YouTube.\"\n }\n },\n - \ \"description\": \"Specifies suggestions on how to improve video content, - including encoding hints, tag suggestions, and editor suggestions.\",\n \"type\": - \"object\",\n \"id\": \"VideoSuggestions\"\n },\n \"LanguageTag\": - {\n \"id\": \"LanguageTag\",\n \"type\": \"object\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"VideoLocalization\": {\n \"type\": \"object\",\n \"id\": - \"VideoLocalization\",\n \"description\": \"Localized versions of certain - video properties (e.g. title).\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's title.\"\n },\n \"description\": {\n - \ \"type\": \"string\",\n \"description\": \"Localized version - of the video's description.\"\n }\n }\n },\n \"SearchResultSnippet\": - {\n \"properties\": {\n \"channelId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"A description of the search result.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the search result.\"\n },\n \"channelTitle\": - {\n \"description\": \"The title of the channel that published the - resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The creation - date and time of the resource that the search result identifies.\"\n },\n - \ \"liveBroadcastContent\": {\n \"description\": \"It indicates - if the resource (video or channel) has upcoming/active live broadcast content. - Or it's \\\"none\\\" if there is not any upcoming/active live broadcasts.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The live - broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n },\n - \ \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"id\": \"SearchResultSnippet\"\n - \ },\n \"ActivityContentDetailsComment\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource associated with the comment.\"\n }\n },\n - \ \"description\": \"Information about a resource that received a comment.\",\n - \ \"id\": \"ActivityContentDetailsComment\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"id\": \"LiveChatModeratorListResponse\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"eventId\": {\n - \ \"type\": \"string\",\n \"description\": \"Serialized EventId - of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of moderators that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"type\": \"array\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n }\n },\n \"type\": \"object\"\n },\n \"SubscriptionContentDetails\": - {\n \"description\": \"Details about the content to witch a subscription - refers.\",\n \"properties\": {\n \"newItemCount\": {\n \"description\": - \"The number of new items in the subscription since its content was last read.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"activityType\": {\n \"type\": \"string\",\n \"enum\": - [\n \"subscriptionActivityTypeUnspecified\",\n \"all\",\n - \ \"uploads\"\n ],\n \"description\": \"The type - of activity this subscription is for (only uploads, everything).\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"totalItemCount\": {\n \"description\": \"The approximate - number of items that the subscription points to.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"SubscriptionContentDetails\"\n },\n \"VideoAbuseReportReason\": - {\n \"type\": \"object\",\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoAbuseReportReason\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n },\n - \ \"id\": {\n \"description\": \"The ID of this abuse report - reason.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"VideoAbuseReportReason\"\n - \ },\n \"ChannelTopicDetails\": {\n \"description\": \"Freebase - topic information related to the channel.\",\n \"properties\": {\n \"topicIds\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Freebase topic IDs associated with - the channel. You can retrieve information about each topic using the Freebase - Topic API.\",\n \"type\": \"array\"\n },\n \"topicCategories\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of Wikipedia - URLs that describe the channel's content.\"\n }\n },\n \"id\": - \"ChannelTopicDetails\",\n \"type\": \"object\"\n },\n \"LiveChatBan\": - {\n \"description\": \"A `__liveChatBan__` resource represents a ban - for a YouTube live chat.\",\n \"id\": \"LiveChatBan\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"LiveChatBanSnippet\",\n \"description\": \"The `snippet` object - contains basic details about the ban.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveChatBan\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the ban.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ThirdPartyLinkListResponse\": {\n \"id\": - \"ThirdPartyLinkListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n }\n - \ }\n }\n },\n \"PageInfo\": {\n \"properties\": {\n - \ \"resultsPerPage\": {\n \"format\": \"int32\",\n \"description\": - \"The number of results included in the API response.\",\n \"type\": - \"integer\"\n },\n \"totalResults\": {\n \"format\": - \"int32\",\n \"description\": \"The total number of results in the - result set.\",\n \"type\": \"integer\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"PageInfo\",\n \"description\": \"Paging - details for lists of resources, including total number of items available - and number of resources returned in a single page.\"\n },\n \"ActivityListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#activityListResponse\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Activity\"\n }\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n }\n },\n \"id\": \"ActivityListResponse\"\n - \ },\n \"ThumbnailDetails\": {\n \"properties\": {\n \"default\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The default - image for this resource.\"\n },\n \"standard\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The standard quality image for - this resource.\"\n },\n \"maxres\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The maximum resolution quality image for this - resource.\"\n },\n \"high\": {\n \"description\": \"The - high quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"medium\": {\n \"description\": \"The medium - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n }\n - \ },\n \"description\": \"Internal representation of thumbnails for - a YouTube resource.\",\n \"id\": \"ThumbnailDetails\",\n \"type\": - \"object\"\n },\n \"Entity\": {\n \"properties\": {\n \"id\": - {\n \"type\": \"string\"\n },\n \"url\": {\n \"type\": - \"string\"\n },\n \"typeId\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"Entity\",\n \"type\": \"object\"\n - \ },\n \"PlaylistContentDetails\": {\n \"id\": \"PlaylistContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"itemCount\": - {\n \"description\": \"The number of videos in the playlist.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n }\n - \ }\n },\n \"ActivityContentDetailsSocial\": {\n \"properties\": - {\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"An image of the post's author.\"\n },\n \"author\": {\n \"type\": - \"string\",\n \"description\": \"The author of the social network - post.\"\n },\n \"type\": {\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"description\": \"The name of the social network.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"referenceUrl\": {\n \"description\": \"The URL of the social - network post.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"description\": \"Details about - a social network post.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsSocial\"\n - \ },\n \"ResourceId\": {\n \"description\": \"A resource id is a - generic reference that points to another YouTube resource.\",\n \"id\": - \"ResourceId\",\n \"type\": \"object\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the referred resource, if that resource - is a video. This property is only present if the resourceId.kind value is - youtube#video.\"\n },\n \"kind\": {\n \"description\": - \"The type of the API resource.\",\n \"type\": \"string\"\n },\n - \ \"playlistId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a playlist. - This property is only present if the resourceId.kind value is youtube#playlist.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"SubscriptionSnippet\": {\n \"id\": \"SubscriptionSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a subscription, including title, description and thumbnails of the subscribed - item.\",\n \"properties\": {\n \"title\": {\n \"description\": - \"The subscription's title.\",\n \"type\": \"string\"\n },\n - \ \"resourceId\": {\n \"description\": \"The id object contains - information about the channel that the user subscribed to.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the subscription was created.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The subscription's details.\"\n - \ },\n \"channelTitle\": {\n \"description\": \"Channel - title for the channel that the subscription belongs to.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the subscriber's channel.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelContentOwnerDetails\": - {\n \"type\": \"object\",\n \"id\": \"ChannelContentOwnerDetails\",\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"properties\": - {\n \"contentOwner\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the content owner linked to the channel.\"\n },\n \"timeLinked\": - {\n \"description\": \"The date and time when the channel was linked - to the content owner.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n }\n }\n },\n \"ActivityContentDetailsBulletin\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource associated with a bulletin post. - @mutable youtube.activities.insert\"\n }\n },\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"Details about a channel bulletin post.\",\n \"type\": - \"object\"\n },\n \"LiveChatNewSponsorDetails\": {\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level that the viewer just had joined. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"isUpgrade\": {\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"PlaylistSnippet\": {\n \"id\": - \"PlaylistSnippet\",\n \"properties\": {\n \"publishedAt\": {\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the playlist was created.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that published the playlist.\",\n - \ \"type\": \"string\"\n },\n \"defaultLanguage\": {\n - \ \"type\": \"string\",\n \"description\": \"The language - of the playlist's default title and description.\"\n },\n \"channelTitle\": - {\n \"description\": \"The channel title of the channel that the - video belongs to.\",\n \"type\": \"string\"\n },\n \"tags\": - {\n \"type\": \"array\",\n \"description\": \"Keyword tags - associated with the playlist.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"title\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The playlist's - title.\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The playlist's description.\"\n - \ },\n \"thumbnailVideoId\": {\n \"description\": \"Note: - if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ }\n },\n \"description\": \"Basic details about a playlist, - including title, description and thumbnails.\",\n \"type\": \"object\"\n - \ },\n \"CommentThreadListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#commentThreadListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"CommentThread\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of comment threads that match - the request criteria.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": - \"CommentThreadListResponse\"\n },\n \"LiveStreamSnippet\": {\n \"type\": - \"object\",\n \"id\": \"LiveStreamSnippet\",\n \"properties\": {\n - \ \"isDefaultStream\": {\n \"type\": \"boolean\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that is transmitting the stream.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The stream's description. The value - cannot be longer than 10000 characters.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the stream was created.\"\n - \ },\n \"title\": {\n \"description\": \"The stream's - title. The value must be between 1 and 128 characters long.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ }\n }\n },\n \"SubscriptionSubscriberSnippet\": {\n \"type\": - \"object\",\n \"id\": \"SubscriptionSubscriberSnippet\",\n \"description\": - \"Basic details about a subscription's subscriber including title, description, - channel ID and thumbnails.\",\n \"properties\": {\n \"channelId\": - {\n \"description\": \"The channel ID of the subscriber.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the subscriber.\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the subscriber.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"Thumbnails - for this subscriber.\"\n }\n }\n },\n \"ChannelContentDetails\": - {\n \"id\": \"ChannelContentDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"relatedPlaylists\": {\n \"type\": - \"object\",\n \"properties\": {\n \"uploads\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use - the videos.insert method to upload new videos and the videos.delete method - to delete previously uploaded videos.\",\n \"type\": \"string\"\n - \ },\n \"watchHistory\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"likes\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"favorites\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"watchLater\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch later playlist. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n }\n }\n }\n },\n \"description\": - \"Details about the content of a channel.\"\n },\n \"AbuseReport\": - {\n \"properties\": {\n \"description\": {\n \"type\": - \"string\"\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n - \ },\n \"relatedEntities\": {\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n },\n \"type\": \"array\"\n },\n - \ \"abuseTypes\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"AbuseType\"\n }\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"AbuseReport\"\n },\n \"InvideoPosition\": - {\n \"properties\": {\n \"type\": {\n \"enum\": [\n \"corner\"\n - \ ],\n \"enumDescriptions\": [\n \"\"\n ],\n - \ \"description\": \"Defines the position type.\",\n \"type\": - \"string\"\n },\n \"cornerPosition\": {\n \"enum\": - [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n - \ \"bottomRight\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\"\n - \ }\n },\n \"description\": \"Describes the spatial position - of a visual widget inside a video. It is a union of various position types, - out of which only will be set one.\",\n \"type\": \"object\",\n \"id\": - \"InvideoPosition\"\n },\n \"LiveChatModeratorSnippet\": {\n \"properties\": - {\n \"moderatorDetails\": {\n \"description\": \"Details about - the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the live chat this moderator can act on.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\"\n - \ },\n \"LiveChatMessage\": {\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"authorDetails\": {\n \"$ref\": - \"LiveChatMessageAuthorDetails\",\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveChatMessage\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ }\n },\n \"id\": \"LiveChatMessage\",\n \"description\": - \"A *liveChatMessage* resource represents a chat message in a YouTube Live - Chat.\",\n \"type\": \"object\"\n },\n \"LiveStreamListResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"description\": \"A list of live streams that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveStream\"\n }\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStreamListResponse\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveStreamListResponse\"\n - \ },\n \"VideoAbuseReportReasonSnippet\": {\n \"description\": \"Basic - details about a video category, such as its localized title.\",\n \"properties\": - {\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label belonging to this abuse report reason.\"\n },\n - \ \"secondaryReasons\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"description\": \"The secondary reasons associated with this reason, - if any are available. (There might be 0 or more.)\"\n }\n },\n - \ \"id\": \"VideoAbuseReportReasonSnippet\",\n \"type\": \"object\"\n - \ },\n \"PlaylistItemSnippet\": {\n \"id\": \"PlaylistItemSnippet\",\n - \ \"properties\": {\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the user that added the item - to the playlist.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the playlist - item belongs to.\",\n \"type\": \"string\"\n },\n \"playlistId\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify thGe playlist that the playlist item is - in.\"\n },\n \"description\": {\n \"description\": - \"The item's description.\",\n \"type\": \"string\"\n },\n - \ \"resourceId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"description\": \"The id object contains - information that can be used to uniquely identify the resource that is included - in the playlist as the playlist item.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"videoOwnerChannelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel this video belongs - to.\"\n },\n \"position\": {\n \"description\": \"The - order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the item was added to the playlist.\"\n },\n \"title\": - {\n \"description\": \"The item's title.\",\n \"type\": - \"string\"\n },\n \"videoOwnerChannelId\": {\n \"description\": - \"Channel id for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist item. 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.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails. - Basic details of a YouTube Playlist item provided by the author. Next ID: - 15\"\n },\n \"ChannelConversionPings\": {\n \"description\": \"The - conversionPings object encapsulates information about conversion pings that - need to be respected by the channel.\",\n \"properties\": {\n \"pings\": - {\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ },\n \"description\": \"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.\",\n \"type\": \"array\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelConversionPings\"\n - \ },\n \"CommentThreadReplies\": {\n \"type\": \"object\",\n \"id\": - \"CommentThreadReplies\",\n \"description\": \"Comments written in (direct - or indirect) reply to the top level comment.\",\n \"properties\": {\n - \ \"comments\": {\n \"description\": \"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.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Comment\"\n }\n }\n }\n },\n \"LiveChatModerator\": - {\n \"type\": \"object\",\n \"description\": \"A *liveChatModerator* - resource represents a moderator for a YouTube live chat. A chat moderator - has the ability to ban/unban users from a chat, remove message, etc.\",\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the moderator.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatModeratorSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the moderator.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveChatModerator\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"LiveChatModerator\"\n - \ },\n \"I18nRegionListResponse\": {\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#i18nRegionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\",\n - \ \"items\": {\n \"$ref\": \"I18nRegion\"\n },\n - \ \"type\": \"array\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"I18nRegionListResponse\"\n - \ },\n \"MembershipsDurationAtLevel\": {\n \"type\": \"object\",\n - \ \"id\": \"MembershipsDurationAtLevel\",\n \"properties\": {\n \"level\": - {\n \"description\": \"Pricing level ID.\",\n \"type\": - \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"description\": \"The cumulative time the user has - been a member for the given level in complete months (the time is rounded - down to the nearest integer).\",\n \"format\": \"int32\"\n },\n - \ \"memberSince\": {\n \"description\": \"The date and time - when the user became a continuous member for the given level.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ActivityContentDetailsUpload\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsUpload\",\n - \ \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the uploaded video.\"\n }\n },\n \"description\": \"Information - about the uploaded video.\"\n },\n \"SuperChatEventSnippet\": {\n \"id\": - \"SuperChatEventSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"createdAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time when the event - occurred.\"\n },\n \"amountMicros\": {\n \"type\": - \"string\",\n \"description\": \"The purchase amount, in micros of - the purchase currency. e.g., 1 is represented as 1000000.\",\n \"format\": - \"uint64\"\n },\n \"supporterDetails\": {\n \"description\": - \"Details about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"commentText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text contents of the comment left by the - user.\"\n },\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the purchase was made. - ISO 4217.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel id where the event occurred.\"\n },\n - \ \"isSuperStickerEvent\": {\n \"type\": \"boolean\",\n \"description\": - \"True if this event is a Super Sticker event.\"\n },\n \"messageType\": - {\n \"format\": \"uint32\",\n \"description\": \"The tier - for the paid message, which is based on the amount of money spent to purchase - the message.\",\n \"type\": \"integer\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\"\n },\n \"displayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the purchase amount and currency (e.g., \\\"$1.00\\\"). The string is rendered - for the given language.\"\n }\n }\n },\n \"LiveBroadcastSnippet\": - {\n \"properties\": {\n \"actualStartTime\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the broadcast actually started. This information - is only available once the broadcast's state is live.\"\n },\n \"scheduledStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\",\n \"type\": \"string\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the live chat for this broadcast.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\"\n - \ },\n \"isDefaultBroadcast\": {\n \"description\": - \"Indicates whether this broadcast is the default broadcast. Internal only.\",\n - \ \"type\": \"boolean\"\n },\n \"actualEndTime\": {\n - \ \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - was added to YouTube's live broadcast schedule.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the broadcast is scheduled to end.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the broadcast. For each nested object - in this object, the key is the name of the thumbnail image, and the value - is an object that contains other information about the thumbnail.\"\n }\n - \ },\n \"description\": \"Basic broadcast information.\",\n \"id\": - \"LiveBroadcastSnippet\",\n \"type\": \"object\"\n },\n \"ThirdPartyLink\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n \"default\": - \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n },\n - \ \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The status object contains information about the status of the link.\"\n - \ },\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\"\n }\n },\n - \ \"id\": \"ThirdPartyLink\",\n \"description\": \"A *third party - account link* resource represents a link between a YouTube account or a channel - and an account on a third-party service.\"\n },\n \"I18nLanguageSnippet\": - {\n \"description\": \"Basic details about an i18n language, such as - language code and human-readable name.\",\n \"properties\": {\n \"name\": - {\n \"description\": \"The human-readable name of the language in - the language itself.\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"description\": \"A short BCP-47 - code that uniquely identifies a language.\"\n }\n },\n \"id\": - \"I18nLanguageSnippet\",\n \"type\": \"object\"\n },\n \"CommentSnippet\": - {\n \"properties\": {\n \"authorChannelUrl\": {\n \"type\": - \"string\",\n \"description\": \"Link to the author's YouTube channel, - if any.\"\n },\n \"updatedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the comment was last updated.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comment refers to, if any.\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"likeCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The total number of likes this comment has received.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the comment was originally - published.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"viewerRating\": {\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"authorDisplayName\": {\n - \ \"type\": \"string\",\n \"description\": \"The name of - the user who posted the comment.\"\n },\n \"parentId\": {\n - \ \"type\": \"string\",\n \"description\": \"The unique id - of the parent comment, only set for replies.\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"canRate\": - {\n \"description\": \"Whether the current viewer can rate this comment.\",\n - \ \"type\": \"boolean\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"textOriginal\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"textDisplay\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"moderationStatus\": - {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The comment's moderation status. Will not be - set if the comments were requested through the id filter.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a comment, such as its author and text.\",\n \"id\": \"CommentSnippet\"\n - \ },\n \"SuperChatEvent\": {\n \"id\": \"SuperChatEvent\",\n \"type\": - \"object\",\n \"description\": \"A `__superChatEvent__` resource represents - a Super Chat purchase on a YouTube channel.\",\n \"properties\": {\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\",\n - \ \"$ref\": \"SuperChatEventSnippet\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the Super Chat event.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#superChatEvent\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"WatchSettings\": - {\n \"type\": \"object\",\n \"id\": \"WatchSettings\",\n \"properties\": - {\n \"backgroundColor\": {\n \"type\": \"string\",\n \"description\": - \"The text color for the video watch page's branded area.\"\n },\n - \ \"featuredPlaylistId\": {\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\",\n - \ \"type\": \"string\"\n },\n \"textColor\": {\n \"type\": - \"string\",\n \"description\": \"The background color for the video - watch page's branded area.\"\n }\n },\n \"description\": - \"Branding properties for the watch. All deprecated.\"\n },\n \"Caption\": - {\n \"type\": \"object\",\n \"id\": \"Caption\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#caption\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the caption track.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n }\n },\n \"snippet\": {\n \"$ref\": - \"CaptionSnippet\",\n \"description\": \"The snippet object contains - basic details about the caption.\"\n }\n },\n \"description\": - \"A *caption* resource represents a YouTube caption track. A caption track - is associated with exactly one YouTube video.\"\n },\n \"Activity\": - {\n \"properties\": {\n \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the activity, including the activity's type and group ID.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetails\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the activity.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#activity\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n - \ }\n },\n \"description\": \"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.\",\n \"id\": - \"Activity\",\n \"type\": \"object\"\n },\n \"VideoSnippet\": {\n - \ \"properties\": {\n \"localized\": {\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\",\n - \ \"$ref\": \"VideoLocalization\"\n },\n \"tags\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of keyword tags - associated with the video. Tags may contain spaces.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the video - belongs to.\",\n \"type\": \"string\"\n },\n \"defaultAudioLanguage\": - {\n \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"description\": {\n \"description\": - \"The video's description. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the video was uploaded.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that the video was uploaded to.\",\n - \ \"type\": \"string\"\n },\n \"categoryId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube video category associated - with the video.\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the videos's default snippet.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ }\n },\n \"description\": \"Basic details about a video, - including title, description, uploader, thumbnails and category.\",\n \"id\": - \"VideoSnippet\",\n \"type\": \"object\"\n },\n \"VideoContentDetails\": - {\n \"id\": \"VideoContentDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"duration\": {\n \"type\": \"string\",\n \"description\": - \"The length of the video. The tag value is an ISO 8601 duration in the format - PT#M#S, in which the letters PT indicate that the value specifies a period - of time, and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"regionRestriction\": {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\"\n },\n \"hasCustomThumbnail\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\"\n },\n \"caption\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"true\",\n - \ \"false\"\n ],\n \"description\": \"The value - of captions indicates whether the video has captions or not.\"\n },\n - \ \"licensedContent\": {\n \"type\": \"boolean\",\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\"\n },\n \"projection\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"Specifies the projection format of the video.\",\n \"enum\": [\n - \ \"rectangular\",\n \"360\"\n ],\n \"type\": - \"string\"\n },\n \"contentRating\": {\n \"$ref\": - \"ContentRating\",\n \"description\": \"Specifies the ratings that - the video received under various rating schemes.\"\n },\n \"definition\": - {\n \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"description\": \"The value of - definition indicates whether the video is available in high definition or - only in standard definition.\"\n },\n \"countryRestriction\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - countryRestriction object contains information about the countries where a - video is (or is not) viewable.\"\n },\n \"dimension\": {\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Details about the content of a YouTube Video.\"\n },\n \"I18nRegionSnippet\": - {\n \"properties\": {\n \"gl\": {\n \"type\": \"string\",\n - \ \"description\": \"The region code as a 2-letter ISO country code.\"\n - \ },\n \"name\": {\n \"type\": \"string\",\n \"description\": - \"The human-readable name of the region.\"\n }\n },\n \"description\": - \"Basic details about an i18n region, such as region code and human-readable - name.\",\n \"id\": \"I18nRegionSnippet\",\n \"type\": \"object\"\n - \ },\n \"MembershipsLevelSnippet\": {\n \"properties\": {\n \"levelDetails\": - {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details - about the pricing level.\"\n },\n \"creatorChannelId\": {\n - \ \"description\": \"The id of the channel that's offering channel - memberships.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"MembershipsLevelSnippet\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"id\": \"ActivityContentDetailsRecommendation\",\n \"description\": - \"Information that identifies the recommended resource.\",\n \"type\": - \"object\",\n \"properties\": {\n \"reason\": {\n \"enum\": - [\n \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The reason that the resource is - recommended to the user.\",\n \"type\": \"string\"\n },\n - \ \"seedResourceId\": {\n \"description\": \"The seedResourceId - object contains information about the resource that caused the recommendation.\",\n - \ \"$ref\": \"ResourceId\"\n },\n \"resourceId\": {\n - \ \"description\": \"The resourceId object contains information that - identifies the recommended resource.\",\n \"$ref\": \"ResourceId\"\n - \ }\n }\n },\n \"PlaylistItem\": {\n \"properties\": - {\n \"contentDetails\": {\n \"description\": \"The contentDetails - object is included in the resource if the included item is a YouTube video. - The object contains additional information about the video.\",\n \"$ref\": - \"PlaylistItemContentDetails\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\",\n \"$ref\": \"PlaylistItemStatus\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist item, such as its title and position in the playlist.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlistItem\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"id\": - \"PlaylistItem\",\n \"type\": \"object\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageDeletedDetails\"\n },\n \"Channel\": {\n \"id\": - \"Channel\",\n \"description\": \"A *channel* resource contains information - about a YouTube channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n - \ \"description\": \"The contentDetails object encapsulates information - about the channel's content.\"\n },\n \"brandingSettings\": - {\n \"$ref\": \"ChannelBrandingSettings\",\n \"description\": - \"The brandingSettings object encapsulates information about the branding - of the channel.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelLocalization\"\n },\n \"description\": \"Localizations - for different languages\"\n },\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n \"default\": - \"youtube#channel\",\n \"type\": \"string\"\n },\n \"contentOwnerDetails\": - {\n \"$ref\": \"ChannelContentOwnerDetails\",\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\"\n },\n \"conversionPings\": - {\n \"$ref\": \"ChannelConversionPings\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\"\n },\n \"auditDetails\": - {\n \"$ref\": \"ChannelAuditDetails\",\n \"description\": - \"The auditionDetails object encapsulates channel data that is relevant for - YouTube Partners during the audition process.\"\n },\n \"statistics\": - {\n \"description\": \"The statistics object encapsulates statistics - for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel, such as its - title, description, and thumbnail images.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"status\": {\n \"description\": - \"The status object encapsulates information about the privacy status of the - channel.\",\n \"$ref\": \"ChannelStatus\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ActivityContentDetailsFavorite\": {\n \"id\": \"ActivityContentDetailsFavorite\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"description\": \"Information about a video that was marked - as a favorite video.\",\n \"type\": \"object\"\n },\n \"VideoAbuseReport\": - {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReport\",\n \"properties\": - {\n \"secondaryReasonId\": {\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\",\n \"type\": \"string\"\n },\n \"reasonId\": - {\n \"type\": \"string\",\n \"description\": \"The high-level, - or primary, reason that the content is abusive. The value is an abuse report - reason ID.\"\n },\n \"comments\": {\n \"type\": \"string\",\n - \ \"description\": \"Additional comments regarding the abuse report.\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ },\n \"language\": {\n \"type\": \"string\",\n \"description\": - \"The language that the content was viewed in.\"\n }\n }\n },\n - \ \"LiveChatBanSnippet\": {\n \"id\": \"LiveChatBanSnippet\",\n \"type\": - \"object\",\n \"properties\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"description\": - \"The type of ban.\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"type\": - \"string\"\n },\n \"liveChatId\": {\n \"description\": - \"The chat this ban is pertinent to.\",\n \"type\": \"string\"\n - \ },\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banDurationSeconds\": {\n \"type\": \"string\",\n - \ \"description\": \"The duration of a ban, only filled if the ban - has type TEMPORARY.\",\n \"format\": \"uint64\"\n }\n }\n - \ },\n \"ThumbnailSetResponse\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"default\": \"youtube#thumbnailSetResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of thumbnails.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThumbnailDetails\"\n }\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n },\n - \ \"id\": \"ThumbnailSetResponse\",\n \"type\": \"object\"\n },\n - \ \"CommentSnippetAuthorChannelId\": {\n \"id\": \"CommentSnippetAuthorChannelId\",\n - \ \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"value\": {\n - \ \"type\": \"string\"\n }\n }\n },\n \"PlaylistItemListResponse\": - {\n \"id\": \"PlaylistItemListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"type\": \"string\",\n \"default\": - \"youtube#playlistItemListResponse\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"description\": \"A list of playlist - items that match the request criteria.\",\n \"type\": \"array\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n }\n }\n },\n \"LocalizedString\": - {\n \"id\": \"LocalizedString\",\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n },\n \"language\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"PropertyValue\": - {\n \"properties\": {\n \"value\": {\n \"description\": - \"The property's value.\",\n \"type\": \"string\"\n },\n \"property\": - {\n \"description\": \"A property.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A pair Property / Value.\",\n - \ \"id\": \"PropertyValue\",\n \"type\": \"object\"\n },\n \"CaptionSnippet\": - {\n \"properties\": {\n \"failureReason\": {\n \"type\": - \"string\",\n \"description\": \"The reason that YouTube failed to - process the caption track. This property is only present if the state property's - value is failed.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ]\n },\n \"isAutoSynced\": {\n \"description\": - \"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.\",\n \"type\": \"boolean\"\n },\n \"isCC\": - {\n \"description\": \"Indicates whether the track contains closed - captions for the deaf and hard of hearing. The default value is false.\",\n - \ \"type\": \"boolean\"\n },\n \"status\": {\n \"enum\": - [\n \"serving\",\n \"syncing\",\n \"failed\"\n - \ ],\n \"description\": \"The caption track's status.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video associated with the caption track. @mutable - youtube.captions.insert\"\n },\n \"name\": {\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"lastUpdated\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the caption track was last updated.\"\n },\n - \ \"audioTrackType\": {\n \"description\": \"The type of audio - track associated with the caption track.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ]\n },\n \"isEasyReader\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n - \ },\n \"language\": {\n \"type\": \"string\",\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"trackKind\": {\n \"description\": - \"The caption track's type.\",\n \"enum\": [\n \"standard\",\n - \ \"ASR\",\n \"forced\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"isLarge\": {\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\",\n \"type\": \"boolean\"\n },\n - \ \"isDraft\": {\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\",\n - \ \"type\": \"boolean\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"CaptionSnippet\",\n \"description\": \"Basic details - about a caption track, such as its language and name.\"\n },\n \"MemberSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"memberDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the member.\"\n },\n \"membershipsDetails\": - {\n \"description\": \"Details about the user's membership.\",\n - \ \"$ref\": \"MembershipsDetails\"\n },\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering memberships.\"\n }\n },\n \"id\": - \"MemberSnippet\"\n },\n \"LiveChatMessageAuthorDetails\": {\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube channel ID.\"\n },\n \"isChatModerator\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether the - author is a moderator of the live chat.\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"isChatSponsor\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author is a sponsor of the live chat.\"\n - \ },\n \"isChatOwner\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author is the owner of the live chat.\"\n - \ },\n \"profileImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The channels's avatar URL.\"\n },\n \"isVerified\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author's identity has been verified by YouTube.\"\n },\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - display name.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageAuthorDetails\"\n },\n \"CommentThread\": {\n \"id\": - \"CommentThread\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment thread.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentThread\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#commentThread\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the comment thread and also the top level comment.\",\n - \ \"$ref\": \"CommentThreadSnippet\"\n }\n },\n \"description\": - \"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.\",\n \"type\": \"object\"\n },\n \"MonitorStreamInfo\": - {\n \"description\": \"Settings and Info of the monitor stream\",\n \"type\": - \"object\",\n \"properties\": {\n \"broadcastStreamDelayMs\": - {\n \"description\": \"If you have set the enableMonitorStream property - to true, then this property determines the length of the live broadcast delay.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"embedHtml\": {\n \"type\": \"string\",\n - \ \"description\": \"HTML code that embeds a player that plays the - monitor stream.\"\n },\n \"enableMonitorStream\": {\n \"description\": - \"This value determines whether the monitor stream is enabled for the broadcast. - If the monitor stream is enabled, then YouTube will broadcast the event content - on a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\",\n \"type\": - \"boolean\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ }\n },\n \"id\": \"MonitorStreamInfo\"\n },\n \"LiveChatSuperStickerDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatSuperStickerDetails\",\n - \ \"properties\": {\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n },\n \"tier\": - {\n \"type\": \"integer\",\n \"description\": \"The tier - in which the amount belongs. Lower amounts belong to lower tiers. The lowest - tier is 1.\",\n \"format\": \"uint32\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made.\"\n },\n \"amountMicros\": {\n - \ \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ },\n \"superStickerMetadata\": {\n \"$ref\": \"SuperStickerMetadata\",\n - \ \"description\": \"Information about the Super Sticker.\"\n }\n - \ }\n },\n \"SubscriptionListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of subscriptions that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"Subscription\"\n - \ }\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"SubscriptionListResponse\"\n - \ },\n \"SuperChatEventListResponse\": {\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#superChatEventListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"SuperChatEvent\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of Super Chat purchases that match the request criteria.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"pageInfo\": {\n - \ \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"id\": \"SuperChatEventListResponse\",\n \"type\": \"object\"\n - \ },\n \"VideoFileDetailsAudioStream\": {\n \"description\": \"Information - about an audio stream.\",\n \"id\": \"VideoFileDetailsAudioStream\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"bitrateBps\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The audio stream's bitrate, in bits per second.\"\n },\n \"channelCount\": - {\n \"description\": \"The number of audio channels that the stream - contains.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ },\n \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The audio codec that the stream uses.\"\n },\n \"vendor\": - {\n \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveBroadcastContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"Detailed settings of a broadcast.\",\n \"properties\": - {\n \"latencyPreference\": {\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"type\": \"string\",\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\"\n },\n - \ \"enableDvr\": {\n \"description\": \"This setting determines - whether viewers can access DVR controls while watching the video. DVR controls - enable the viewer to control the video playback experience by pausing, rewinding, - or fast forwarding content. The default value for this property is true. *Important:* - You must set the value to true and also set the enableArchive property's value - to true if you want to make playback available immediately after the broadcast - ends.\",\n \"type\": \"boolean\"\n },\n \"monitorStream\": - {\n \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\",\n \"$ref\": - \"MonitorStreamInfo\"\n },\n \"boundStreamId\": {\n \"description\": - \"This value uniquely identifies the live stream bound to the broadcast.\",\n - \ \"type\": \"string\"\n },\n \"enableAutoStop\": {\n - \ \"description\": \"This setting indicates whether auto stop is enabled - for this broadcast. The default value for this property is false. This setting - can only be used by Events.\",\n \"type\": \"boolean\"\n },\n - \ \"recordFromStart\": {\n \"type\": \"boolean\",\n \"description\": - \"Automatically start recording after the event goes live. The default value - for this property is true. *Important:* You must also set the enableDvr property's - value to true if you want the playback to be available immediately after the - broadcast ends. If you set this property's value to true but do not also set - the enableDvr property to true, there may be a delay of around one day before - the archived video will be available for playback.\"\n },\n \"enableAutoStart\": - {\n \"description\": \"This setting indicates whether auto start - is enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\",\n \"type\": \"boolean\"\n - \ },\n \"startWithSlate\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\"\n },\n \"stereoLayout\": - {\n \"description\": \"The 3D stereo layout of this broadcast. This - defaults to mono.\",\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"enableLowLatency\": {\n \"description\": - \"Indicates whether this broadcast has low latency enabled.\",\n \"type\": - \"boolean\"\n },\n \"enableClosedCaptions\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - HTTP POST closed captioning is enabled for this broadcast. The ingestion URL - of the closed captions is returned through the liveStreams API. This is mutually - exclusive with using the closed_captions_type property, and is equivalent - to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n - \ \"projection\": {\n \"type\": \"string\",\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"projectionUnspecified\",\n \"rectangular\",\n \"360\",\n - \ \"mesh\"\n ]\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the live stream referenced by boundStreamId was last updated.\",\n - \ \"format\": \"date-time\"\n },\n \"enableContentEncryption\": - {\n \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n - \ },\n \"mesh\": {\n \"description\": \"The mesh for - projecting the video if projection is mesh. The mesh value must be a UTF-8 - string containing the base-64 encoding of 3D mesh data that follows the Spherical - Video V2 RFC specification for an mshp box, excluding the box size and type - but including the following four reserved zero bytes for the version and flags.\",\n - \ \"type\": \"string\",\n \"format\": \"byte\"\n },\n - \ \"enableEmbed\": {\n \"description\": \"This setting indicates - whether the broadcast video can be played in an embedded player. If you choose - to archive the video (using the enableArchive property), this setting will - also apply to the archived video.\",\n \"type\": \"boolean\"\n },\n - \ \"closedCaptionsType\": {\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n }\n },\n - \ \"CommentListResponse\": {\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"default\": \"youtube#commentListResponse\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Comment\"\n - \ },\n \"description\": \"A list of comments that match the - request criteria.\",\n \"type\": \"array\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"CommentListResponse\"\n },\n - \ \"ChannelBrandingSettings\": {\n \"properties\": {\n \"channel\": - {\n \"$ref\": \"ChannelSettings\",\n \"description\": \"Branding - properties for the channel view.\"\n },\n \"hints\": {\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n },\n \"type\": - \"array\",\n \"description\": \"Additional experimental branding - properties.\"\n },\n \"watch\": {\n \"$ref\": \"WatchSettings\",\n - \ \"description\": \"Branding properties for the watch page.\"\n },\n - \ \"image\": {\n \"$ref\": \"ImageSettings\",\n \"description\": - \"Branding properties for branding images.\"\n }\n },\n \"description\": - \"Branding properties of a YouTube channel.\",\n \"id\": \"ChannelBrandingSettings\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetails\": {\n \"description\": - \"Details about the content of an activity: the video that was shared, the - channel that was subscribed to, etc.\",\n \"id\": \"ActivityContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"channelItem\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"recommendation\": {\n \"description\": \"The - recommendation object contains information about a recommended resource. This - property is only present if the snippet.type is recommendation.\",\n \"$ref\": - \"ActivityContentDetailsRecommendation\"\n },\n \"upload\": - {\n \"$ref\": \"ActivityContentDetailsUpload\",\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\"\n },\n \"social\": - {\n \"description\": \"The social object contains details about a - social network post. This property is only present if the snippet.type is - social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n },\n - \ \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"subscription\": {\n \"description\": - \"The subscription object contains information about a channel that a user - subscribed to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"playlistItem\": - {\n \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"like\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsLike\"\n },\n \"favorite\": {\n \"$ref\": - \"ActivityContentDetailsFavorite\",\n \"description\": \"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.\"\n },\n - \ \"promotedItem\": {\n \"description\": \"The promotedItem - object contains details about a resource which is being promoted. This property - is only present if the snippet.type is promotedItem.\",\n \"$ref\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"bulletin\": - {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n \"description\": - \"The bulletin object contains details about a channel bulletin post. This - object is only present if the snippet.type is bulletin.\"\n }\n }\n - \ },\n \"AccessPolicy\": {\n \"id\": \"AccessPolicy\",\n \"type\": - \"object\",\n \"description\": \"Rights management policy for YouTube - resources.\",\n \"properties\": {\n \"exception\": {\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"allowed\": - {\n \"description\": \"The value of allowed indicates whether the - access to the policy is allowed or denied by default.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"ChannelLocalization\": {\n - \ \"id\": \"ChannelLocalization\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel's title.\"\n },\n \"description\": {\n \"description\": - \"The localized strings for channel's description.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Channel localization - setting\",\n \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"id\": \"VideoFileDetailsVideoStream\",\n \"type\": \"object\",\n - \ \"description\": \"Information about a video stream.\",\n \"properties\": - {\n \"aspectRatio\": {\n \"type\": \"number\",\n \"format\": - \"double\",\n \"description\": \"The video content's display aspect - ratio, which specifies the aspect ratio in which the video should be displayed.\"\n - \ },\n \"bitrateBps\": {\n \"description\": \"The video - stream's bitrate, in bits per second.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"widthPixels\": {\n - \ \"description\": \"The encoded video content's width in pixels. - You can calculate the video's encoding aspect ratio as width_pixels / height_pixels.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"frameRateFps\": {\n \"description\": \"The video stream's - frame rate, in frames per second.\",\n \"format\": \"double\",\n - \ \"type\": \"number\"\n },\n \"rotation\": {\n \"enum\": - [\n \"none\",\n \"clockwise\",\n \"upsideDown\",\n - \ \"counterClockwise\",\n \"other\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"codec\": {\n \"description\": \"The video codec that the - stream uses.\",\n \"type\": \"string\"\n },\n \"heightPixels\": - {\n \"description\": \"The encoded video content's height in pixels.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n - \ }\n },\n \"PlaylistItemContentDetails\": {\n \"properties\": - {\n \"endAt\": {\n \"description\": \"The time, measured in - seconds from the start of the video, when the video should stop playing. (The - playlist owner can specify the times when the video should start and stop - playing when the video is played in the context of the playlist.) By default, - assume that the video.endTime is the end of the video.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - a video. To retrieve the video resource, set the id query parameter to this - value in your API request.\"\n },\n \"videoPublishedAt\": {\n - \ \"description\": \"The date and time that the video was published - to YouTube.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"note\": {\n \"description\": \"A - user-generated note for this item.\",\n \"type\": \"string\"\n },\n - \ \"startAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"PlaylistItemContentDetails\"\n },\n \"RelatedEntity\": - {\n \"type\": \"object\",\n \"properties\": {\n \"entity\": - {\n \"$ref\": \"Entity\"\n }\n },\n \"id\": \"RelatedEntity\"\n - \ },\n \"Thumbnail\": {\n \"properties\": {\n \"width\": - {\n \"description\": \"(Optional) Width of the thumbnail image.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"height\": {\n \"description\": \"(Optional) Height of the - thumbnail image.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The thumbnail image's URL.\"\n }\n },\n - \ \"id\": \"Thumbnail\",\n \"type\": \"object\",\n \"description\": - \"A thumbnail is an image representing a YouTube resource.\"\n },\n \"VideoRating\": - {\n \"description\": \"Basic details about rating of a video.\",\n \"properties\": - {\n \"rating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"description\": \"Rating of a video.\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoRating\"\n },\n \"LiveChatTextMessageDetails\": - {\n \"id\": \"LiveChatTextMessageDetails\",\n \"properties\": {\n - \ \"messageText\": {\n \"type\": \"string\",\n \"description\": - \"The user's message.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"Playlist\": {\n \"type\": \"object\",\n \"description\": - \"A *playlist* resource represents a YouTube playlist. A playlist is a collection - of videos that can be viewed sequentially and shared with other users. A playlist - can contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"id\": \"Playlist\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlist\"\n - \ },\n \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist, such as its title and description.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\"\n - \ },\n \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n - \ \"description\": \"The player object contains information that you - would use to play the playlist in an embedded player.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"PlaylistContentDetails\",\n \"description\": - \"The contentDetails object contains information like video count.\"\n },\n - \ \"status\": {\n \"$ref\": \"PlaylistStatus\",\n \"description\": - \"The status object contains status information for the playlist.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the playlist.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"MembershipsDuration\": {\n \"type\": \"object\",\n - \ \"id\": \"MembershipsDuration\",\n \"properties\": {\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - across all levels in complete months (the time is rounded down to the nearest - integer).\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ },\n \"memberSince\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the user became a continuous - member across all levels.\"\n }\n }\n },\n \"CdnSettings\": - {\n \"type\": \"object\",\n \"properties\": {\n \"format\": - {\n \"description\": \"The format of the video stream that you are - sending to Youtube. \",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"frameRate\": {\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The frame rate - of the inbound video data.\"\n },\n \"resolution\": {\n \"enum\": - [\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"ingestionType\": {\n \"description\": - \" The method or protocol used to transmit the video stream.\",\n \"enum\": - [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"ingestionInfo\": {\n - \ \"$ref\": \"IngestionInfo\",\n \"description\": \"The ingestionInfo - object contains information that YouTube provides that you need to transmit - your RTMP or HTTP stream to YouTube.\"\n }\n },\n \"description\": - \"Brief description of the live stream cdn settings.\",\n \"id\": \"CdnSettings\"\n - \ },\n \"IngestionInfo\": {\n \"properties\": {\n \"streamName\": - {\n \"description\": \"The stream name that YouTube assigns to the - video stream.\",\n \"type\": \"string\"\n },\n \"backupIngestionAddress\": - {\n \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\",\n - \ \"type\": \"string\"\n },\n \"rtmpsIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of ingestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"rtmpsBackupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of backupIngestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"ingestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The primary - ingestion URL that you should use to stream video to YouTube. You must stream - video to this URL. Depending on which application or tool you use to encode - your video stream, you may need to enter the stream URL and stream name separately - or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \"\n }\n },\n \"id\": \"IngestionInfo\",\n \"description\": - \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n - \ \"type\": \"object\"\n },\n \"VideoCategorySnippet\": {\n \"type\": - \"object\",\n \"id\": \"VideoCategorySnippet\",\n \"properties\": - {\n \"channelId\": {\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n - \ \"type\": \"string\",\n \"description\": \"The YouTube - channel that created the video category.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The video - category's title.\"\n },\n \"assignable\": {\n \"type\": - \"boolean\"\n }\n },\n \"description\": \"Basic details about - a video category, such as its localized title.\"\n },\n \"GeoPoint\": - {\n \"id\": \"GeoPoint\",\n \"description\": \"Geographical coordinates - of a point, in WGS84.\",\n \"type\": \"object\",\n \"properties\": - {\n \"latitude\": {\n \"description\": \"Latitude in degrees.\",\n - \ \"type\": \"number\",\n \"format\": \"double\"\n },\n - \ \"altitude\": {\n \"description\": \"Altitude above the reference - ellipsoid, in meters.\",\n \"format\": \"double\",\n \"type\": - \"number\"\n },\n \"longitude\": {\n \"format\": \"double\",\n - \ \"type\": \"number\",\n \"description\": \"Longitude in - degrees.\"\n }\n }\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"properties\": {\n \"partsTotal\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"An - estimate of the total number of parts that need to be processed for the video. - The number may be updated with more precise estimates while YouTube processes - the video.\"\n },\n \"timeLeftMs\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"An estimate - of the amount of time, in millseconds, that YouTube needs to finish processing - the video.\"\n },\n \"partsProcessed\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of parts of the video that YouTube has already processed. You can estimate - the percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\"\n }\n - \ },\n \"description\": \"Video processing progress and completion - time estimate.\"\n },\n \"VideoCategoryListResponse\": {\n \"properties\": - {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#videoCategoryListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"VideoCategory\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of video categories that can be associated with YouTube videos. In this - map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n }\n },\n \"id\": \"VideoCategoryListResponse\",\n - \ \"type\": \"object\"\n },\n \"I18nLanguageListResponse\": {\n - \ \"id\": \"I18nLanguageListResponse\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#i18nLanguageListResponse\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n },\n \"description\": - \"A list of supported i18n languages. In this map, the i18n language ID is - the map key, and its value is the corresponding i18nLanguage resource.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ContentRating\": - {\n \"properties\": {\n \"ytRating\": {\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ]\n },\n \"oflcRating\": {\n \"enum\": [\n - \ \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n - \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n - \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n - \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Office of Film and Literature - Classification (OFLC - New Zealand) rating.\"\n },\n \"cncRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"description\": \"Rating - system in France - Commission de classification cinematographique\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ]\n },\n \"kijkwijzerRating\": {\n - \ \"description\": \"The video's NICAM/Kijkwijzer rating from the - Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\",\n - \ \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ]\n },\n \"skfilmRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ],\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Slovakia.\"\n },\n \"djctqRatingReasons\": - {\n \"items\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ]\n },\n \"type\": - \"array\",\n \"description\": \"Reasons that explain why the video - received its DJCQT (Brazil) rating.\"\n },\n \"catvfrRating\": - {\n \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ],\n \"description\": \"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.\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"resorteviolenciaRating\": {\n \"enum\": [\n - \ \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"description\": \"The video's rating in Venezuela.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"B\",\n \"C\",\n \"D\",\n - \ \"E\",\n \"\"\n ]\n },\n \"bmukkRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Unrestricted\",\n \"6+\",\n \"8+\",\n - \ \"10+\",\n \"12+\",\n \"14+\",\n \"16+\",\n - \ \"\"\n ],\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\"\n },\n \"bbfcRating\": - {\n \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n - \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n - \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n - \ \"bbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ],\n \"description\": \"The video's British - Board of Film Classification (BBFC) rating.\",\n \"type\": \"string\"\n - \ },\n \"nbcplRating\": {\n \"description\": \"The video's - rating in Poland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n - \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n - \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ]\n - \ },\n \"egfilmRating\": {\n \"description\": \"The - video's rating in Egypt.\",\n \"type\": \"string\",\n \"enum\": - [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n \"egfilm18\",\n - \ \"egfilmBn\",\n \"egfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ]\n },\n \"agcomRating\": {\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\",\n \"type\": \"string\",\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ]\n },\n \"mpaaRating\": {\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n - \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n - \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"russiaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"description\": \"The video's National Film Registry - of the Russian Federation (MKRF - Russia) rating.\",\n \"type\": - \"string\"\n },\n \"mtrcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ]\n },\n \"fcbmRating\": - {\n \"description\": \"The video's rating from Malaysia's Film Censorship - Board.\",\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n - \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n - \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n - \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"kfcbRating\": {\n \"enum\": [\n - \ \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"ifcoRating\": - {\n \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n - \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n - \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n - \ \"ifco18\",\n \"ifcoUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Irish Film Classification - Office (IFCO - Ireland) rating. See the IFCO website for more information.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n - \ ]\n },\n \"cicfRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Commission de Contr\xF4le - des Films (Belgium).\",\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ]\n },\n \"fcoRating\": - {\n \"description\": \"The video's rating from Hong Kong's Office - for Film, Newspaper and Article Administration.\",\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"mibacRating\": {\n \"enum\": [\n - \ \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n - \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n - \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Ministero - dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"fpbRatingReasons\": {\n \"description\": \"Reasons that - explain why the video received its FPB (South Africa) rating.\",\n \"items\": - {\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"South Africa rating content descriptors.\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"type\": \"array\"\n },\n \"mcstRating\": {\n \"description\": - \"The video's rating system for Vietnam - MCST\",\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"smsaRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"All ages\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Statens - medier\xE5d (Sweden's National Media Council).\",\n \"enum\": [\n - \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ]\n },\n \"fpbRating\": {\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ]\n },\n \"eefilmRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating in Estonia.\",\n - \ \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n - \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n - \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n - \ \"eefilmK16\",\n \"eefilmUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ]\n },\n \"mdaRating\": {\n \"enum\": [\n - \ \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n - \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n - \ \"mdaR21\",\n \"mdaUnrated\"\n ],\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"cbfcRating\": - {\n \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n - \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n - \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n - \ \"cbfcUnrated\"\n ],\n \"description\": \"The - video's Central Board of Film Certification (CBFC - India) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ]\n },\n \"fmocRating\": {\n \"enum\": [\n - \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ]\n },\n \"smaisRating\": {\n \"enum\": [\n - \ \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n - \ \"smais12\",\n \"smais14\",\n \"smais16\",\n - \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in Iceland.\"\n },\n \"rtcRating\": {\n - \ \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's General Directorate - of Radio, Television and Cinematography (Mexico) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ]\n },\n \"cnaRating\": {\n \"enum\": [\n - \ \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n - \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"description\": \"The - video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"cscfRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AL\",\n \"A\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ]\n },\n \"ecbmctRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n - \ \"ecbmct7a\",\n \"ecbmct7plus\",\n \"ecbmct13a\",\n - \ \"ecbmct13plus\",\n \"ecbmct15a\",\n \"ecbmct15plus\",\n - \ \"ecbmct18plus\",\n \"ecbmctUnrated\"\n ],\n - \ \"description\": \"Rating system in Turkey - Evaluation and Classification - Board of the Ministry of Culture and Tourism\"\n },\n \"tvpgRating\": - {\n \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n - \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n - \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"description\": \"The - video's TV Parental Guidelines (TVPG) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"anatelRating\": {\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\"\n },\n \"rcnofRating\": {\n \"enum\": - [\n \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n - \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n - \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\"\n },\n \"incaaRating\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"ATP (Apta para todo publico)\",\n \"13 (Solo apta - para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para mayores de - 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 a\xF1os)\",\n - \ \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"description\": \"The video's INCAA - (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.\",\n - \ \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n - \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n - \ \"incaaC\",\n \"incaaUnrated\"\n ]\n },\n - \ \"rteRating\": {\n \"description\": \"The video's rating - from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enum\": [\n - \ \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ]\n },\n \"grfilmRating\": - {\n \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n - \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n - \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n - \ \"grfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Greece.\"\n },\n - \ \"csaRating\": {\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ],\n \"description\": \"The video's rating from France's - Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"moctwRating\": {\n \"enum\": [\n - \ \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n - \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n - \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ],\n \"type\": - \"string\"\n },\n \"pefilmRating\": {\n \"description\": - \"The video's rating in Peru.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ]\n },\n \"lsfRating\": {\n \"description\": - \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"enum\": [\n - \ \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"mocRating\": - {\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Ministerio de Cultura (Colombia) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ]\n },\n \"medietilsynetRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from Medietilsynet, - the Norwegian Media Authority.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ]\n },\n \"nbcRating\": {\n \"enum\": [\n - \ \"nbcUnspecified\",\n \"nbcG\",\n \"nbcPg\",\n - \ \"nbc12plus\",\n \"nbc15plus\",\n \"nbc18plus\",\n - \ \"nbc18plusr\",\n \"nbcPu\",\n \"nbcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n - \ \"18+R\",\n \"PU\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Maldives National - Bureau of Classification.\",\n \"type\": \"string\"\n },\n - \ \"menaMpaaRating\": {\n \"description\": \"The rating system - for MENA countries, a clone of MPAA. It is needed to prevent titles go live - w/o additional QC check, since some of them can be inappropriate for the countries - at all. See b/33408548 for more details.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To - keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n - \ \"enum\": [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n - \ \"menaMpaaPg\",\n \"menaMpaaPg13\",\n \"menaMpaaR\",\n - \ \"menaMpaaUnrated\"\n ]\n },\n \"chfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Switzerland.\"\n },\n \"eirinRating\": - {\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"The video's Eirin (\u6620\u502B) - rating. Eirin is the Japanese rating system.\"\n },\n \"nfvcbRating\": - {\n \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\"\n - \ },\n \"cceRating\": {\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ],\n \"description\": \"The video's - rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"4\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\",\n \"14\"\n ],\n \"type\": \"string\"\n - \ },\n \"chvrsRating\": {\n \"enum\": [\n \"chvrsUnspecified\",\n - \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n - \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n - \ \"chvrsUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ],\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\"\n },\n - \ \"bfvcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"E\",\n \"13\",\n \"15\",\n - \ \"18\",\n \"20\",\n \"B\",\n \"\"\n - \ ],\n \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Thailand's Board of Film - and Video Censors.\"\n },\n \"nfrcRating\": {\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Bulgarian - National Film Center.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"B\",\n \"C\",\n \"D\",\n - \ \"X\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"ilfilmRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Israel.\",\n \"type\": \"string\"\n },\n - \ \"cccRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Todo espectador\",\n \"6+ - Inconveniente para menores - de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n \"18+ - - contenido excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\"\n - \ },\n \"czfilmRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in the Czech Republic.\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"nmcRating\": {\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"PG-15\",\n - \ \"15+\",\n \"18+\",\n \"18TC\",\n \"\"\n - \ ],\n \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ]\n },\n \"mccaaRating\": - {\n \"description\": \"The video's rating from Malta's Film Age-Classification - Board.\",\n \"type\": \"string\",\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ]\n },\n \"fskRating\": {\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ]\n },\n \"kmrbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n - \ \"kmrb12plus\",\n \"kmrb15plus\",\n \"kmrbTeenr\",\n - \ \"kmrbR\",\n \"kmrbUnrated\"\n ]\n },\n - \ \"mpaatRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GB\",\n \"RB\"\n ],\n - \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ],\n \"description\": \"The rating - system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n - \ },\n \"nkclvRating\": {\n \"description\": \"The video's - rating from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\",\n - \ \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n - \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n - \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"7+\",\n \"12+\",\n \"! - 16+\",\n \"18+\",\n \"\"\n ]\n },\n - \ \"mekuRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti - (National Audiovisual Institute).\",\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"djctqRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, - Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\"\n },\n \"acbRating\": - {\n \"description\": \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"acbUnspecified\",\n - \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n - \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n - \ \"acbR18plus\",\n \"acbUnrated\"\n ]\n },\n - \ \"icaaRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales - (ICAA - Spain) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"APTA\",\n \"7\",\n \"12\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X\",\n \"\"\n - \ ],\n \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ]\n },\n \"catvRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"C\",\n - \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n - \ \"18+\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ],\n \"description\": - \"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.\"\n },\n \"mccypRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\"\n }\n },\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\",\n \"id\": \"ContentRating\",\n \"type\": - \"object\"\n },\n \"VideoTopicDetails\": {\n \"id\": \"VideoTopicDetails\",\n - \ \"properties\": {\n \"relevantTopicIds\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"Similar to topic_id, except that these topics - are merely relevant to the video. These are topics that may be mentioned in, - or appear in the video. You can retrieve information about each topic using - Freebase Topic API.\"\n },\n \"topicIds\": {\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"topicCategories\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Wikipedia URLs that provide a high-level - description of the video's content.\"\n }\n },\n \"description\": - \"Freebase topic information related to the video.\",\n \"type\": \"object\"\n - \ },\n \"VideoListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoListResponse\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Video\"\n }\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoListResponse\"\n - \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"properties\": {\n \"banType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of ban.\",\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ],\n \"type\": \"string\"\n - \ },\n \"banDurationSeconds\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The duration - of the ban. This property is only present if the banType is temporary.\"\n - \ },\n \"bannedUserDetails\": {\n \"description\": \"The - details of the user that was banned.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelToStoreLinkDetails\": - {\n \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"type\": \"object\",\n \"id\": - \"ChannelToStoreLinkDetails\",\n \"properties\": {\n \"storeUrl\": - {\n \"description\": \"Landing page of the store.\",\n \"type\": - \"string\"\n },\n \"merchantId\": {\n \"description\": - \"Google Merchant Center id of the store.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"storeName\": {\n \"description\": - \"Name of the store.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"VideoProcessingDetails\": {\n \"properties\": {\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n },\n - \ \"processingFailureReason\": {\n \"type\": \"string\",\n - \ \"description\": \"The reason that YouTube failed to process the - video. This property will only have a value if the processingStatus property's - value is failed.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ]\n },\n \"fileDetailsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether file details are available for the uploaded video. You can - retrieve a video's file details by requesting the fileDetails part in your - videos.list() request.\"\n },\n \"processingIssuesAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether the video processing engine has generated suggestions that - might improve YouTube's ability to process the the video, warnings that explain - video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\"\n },\n \"editorSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether video editing - suggestions, which might improve video quality or the playback experience, - are available for the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingStatus\": {\n \"type\": - \"string\",\n \"description\": \"The video's processing status. This - value indicates whether YouTube was able to process the video or if the video - is still being processed.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ]\n },\n \"processingProgress\": - {\n \"description\": \"The processingProgress object contains information - about the progress YouTube has made in processing the video. The values are - really only relevant if the video's processing status is processing.\",\n - \ \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n },\n - \ \"tagSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether keyword (tag) suggestions - are available for the video. Tags can be added to a video's metadata to make - it easier for other users to find the video. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n }\n - \ },\n \"description\": \"Describes processing status and progress - and availability of some other Video resource parts.\",\n \"id\": \"VideoProcessingDetails\",\n - \ \"type\": \"object\"\n },\n \"ChannelSettings\": {\n \"properties\": - {\n \"defaultTab\": {\n \"type\": \"string\",\n \"description\": - \"Which content tab users should see when viewing the channel.\"\n },\n - \ \"profileColor\": {\n \"type\": \"string\",\n \"description\": - \"A prominent color that can be rendered on this channel page.\"\n },\n - \ \"country\": {\n \"description\": \"The country of the channel.\",\n - \ \"type\": \"string\"\n },\n \"moderateComments\": - {\n \"description\": \"Whether user-submitted comments left on the - channel page need to be approved by the channel owner to be publicly visible.\",\n - \ \"type\": \"boolean\"\n },\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"description\": \"Specifies the - channel title.\",\n \"type\": \"string\"\n },\n \"unsubscribedTrailer\": - {\n \"description\": \"The trailer of the channel, for users that - are not subscribers.\",\n \"type\": \"string\"\n },\n \"featuredChannelsUrls\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The list of featured - channels.\"\n },\n \"featuredChannelsTitle\": {\n \"type\": - \"string\",\n \"description\": \"Title for the featured channels - tab.\"\n },\n \"defaultLanguage\": {\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the channel description.\"\n },\n - \ \"keywords\": {\n \"description\": \"Lists keywords associated - with the channel, comma-separated.\",\n \"type\": \"string\"\n },\n - \ \"showBrowseView\": {\n \"description\": \"Whether the tab - to browse the videos should be displayed.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelSettings\",\n - \ \"description\": \"Branding properties for the channel view.\"\n },\n - \ \"VideoStatistics\": {\n \"id\": \"VideoStatistics\",\n \"properties\": - {\n \"likeCount\": {\n \"description\": \"The number of users - who have indicated that they liked the video by giving it a positive rating.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"favoriteCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\",\n - \ \"type\": \"string\"\n },\n \"dislikeCount\": {\n - \ \"type\": \"string\",\n \"description\": \"The number of - users who have indicated that they disliked the video by giving it a negative - rating.\",\n \"format\": \"uint64\"\n },\n \"viewCount\": - {\n \"description\": \"The number of times the video has been viewed.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"commentCount\": {\n \"description\": \"The number of comments - for the video.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\"\n },\n \"TokenPagination\": {\n \"properties\": {},\n - \ \"description\": \"Stub token pagination template to suppress results.\",\n - \ \"type\": \"object\",\n \"id\": \"TokenPagination\"\n },\n \"I18nRegion\": - {\n \"type\": \"object\",\n \"description\": \"A *i18nRegion* resource - identifies a region where YouTube is available.\",\n \"id\": \"I18nRegion\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegion\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"ThirdPartyLinkStatus\": - {\n \"properties\": {\n \"linkStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ]\n }\n },\n \"description\": - \"The third-party link status object contains information about the status - of the link.\",\n \"id\": \"ThirdPartyLinkStatus\",\n \"type\": - \"object\"\n },\n \"MembershipsLevelListResponse\": {\n \"id\": - \"MembershipsLevelListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#membershipsLevelListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of pricing levels offered by a creator to the fans.\",\n \"items\": - {\n \"$ref\": \"MembershipsLevel\"\n }\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveChatSuperChatDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatSuperChatDetails\",\n \"properties\": - {\n \"tier\": {\n \"description\": \"The tier in which the - amount belongs. Lower amounts belong to lower tiers. The lowest tier is 1.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the user to this Super Chat event.\"\n },\n - \ \"amountDisplayString\": {\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\",\n \"type\": - \"string\"\n },\n \"amountMicros\": {\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveBroadcast\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the broadcast.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#liveBroadcast\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcast\\\".\"\n },\n \"contentDetails\": - {\n \"$ref\": \"LiveBroadcastContentDetails\",\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n - \ },\n \"snippet\": {\n \"$ref\": \"LiveBroadcastSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the event, including its title, description, start time, and end time.\"\n - \ },\n \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n - \ \"description\": \"The status object contains information about - the event's status.\"\n }\n },\n \"id\": \"LiveBroadcast\",\n - \ \"type\": \"object\",\n \"description\": \"A *liveBroadcast* resource - represents an event that will be streamed, via live video, on YouTube.\"\n - \ },\n \"ThirdPartyLinkSnippet\": {\n \"properties\": {\n \"channelToStoreLink\": - {\n \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n - \ },\n \"type\": {\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Type of the - link named after the entities that are being linked.\"\n }\n },\n - \ \"description\": \"Basic information about a third party account link, - including its type and type-specific information.\",\n \"id\": \"ThirdPartyLinkSnippet\",\n - \ \"type\": \"object\"\n },\n \"PlaylistLocalization\": {\n \"properties\": - {\n \"title\": {\n \"description\": \"The localized strings - for playlist's title.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The localized strings for playlist's description.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"PlaylistLocalization\",\n - \ \"description\": \"Playlist localization setting\",\n \"type\": - \"object\"\n },\n \"Comment\": {\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the comment.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment.\"\n },\n \"kind\": {\n \"default\": \"youtube#comment\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Comment\",\n - \ \"description\": \"A *comment* represents a single YouTube comment.\"\n - \ },\n \"VideoAbuseReportReasonListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoAbuseReportReasonListResponse\",\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The `visitorId` identifies the visitor.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n },\n \"description\": \"A list - of valid abuse reasons that are used with `video.ReportAbuse`.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ }\n },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"id\": - \"LiveChatMemberMilestoneChatDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"memberMonth\": {\n \"format\": \"uint32\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"type\": \"integer\"\n - \ },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the member to this Member - Milestone Chat. This field is empty for messages without a comment from the - member.\"\n },\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viever is a member. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ChannelSnippet\": {\n \"id\": \"ChannelSnippet\",\n \"type\": - \"object\",\n \"properties\": {\n \"thumbnails\": {\n \"description\": - \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"localized\": - {\n \"$ref\": \"ChannelLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"description\": - {\n \"description\": \"The description of the channel.\",\n \"type\": - \"string\"\n },\n \"customUrl\": {\n \"description\": - \"The custom url of the channel.\",\n \"type\": \"string\"\n },\n - \ \"country\": {\n \"description\": \"The country of the channel.\",\n - \ \"type\": \"string\"\n },\n \"defaultLanguage\": {\n - \ \"description\": \"The language of the channel's default title and - description.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - title.\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the channel was created.\",\n - \ \"format\": \"date-time\"\n }\n },\n \"description\": - \"Basic details about a channel, including title, description and thumbnails.\"\n - \ },\n \"ActivityContentDetailsPromotedItem\": {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"properties\": {\n \"impressionUrl\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\",\n \"type\": - \"array\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\"\n },\n \"adTag\": {\n \"description\": - \"The URL the client should fetch to request a promoted item.\",\n \"type\": - \"string\"\n },\n \"creativeViewUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\",\n \"type\": \"string\"\n },\n \"forecastingUrl\": - {\n \"type\": \"array\",\n \"description\": \"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.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"clickTrackingUrl\": {\n \"type\": \"string\",\n \"description\": - \"The URL the client should ping to indicate that the user clicked through - on this promoted item.\"\n },\n \"destinationUrl\": {\n \"description\": - \"The URL the client should direct the user to, if the user chooses to visit - the advertiser's website.\",\n \"type\": \"string\"\n },\n - \ \"customCtaButtonText\": {\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\",\n \"type\": \"string\"\n },\n \"descriptionText\": - {\n \"type\": \"string\",\n \"description\": \"The text - description to accompany the promoted item.\"\n },\n \"ctaType\": - {\n \"description\": \"The type of call-to-action, a message to the - user indicating action that can be taken.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ]\n }\n },\n \"type\": - \"object\",\n \"description\": \"Details about a resource which is being - promoted.\"\n },\n \"VideoCategory\": {\n \"id\": \"VideoCategory\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video category.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the video category, including its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"default\": \"youtube#videoCategory\"\n }\n },\n \"description\": - \"A *videoCategory* resource identifies a category that has been or could - be associated with uploaded videos.\"\n },\n \"MembershipsLevel\": {\n - \ \"description\": \"A *membershipsLevel* resource represents an offer - made by YouTube creators for their fans. Users can become members of the channel - by joining one of the available levels. They will provide recurring monetary - support and receives special benefits.\",\n \"type\": \"object\",\n \"id\": - \"MembershipsLevel\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the level.\",\n \"$ref\": - \"MembershipsLevelSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevel\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the memberships level.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"AbuseType\": {\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"AbuseType\"\n },\n \"VideoLiveStreamingDetails\": {\n - \ \"properties\": {\n \"concurrentViewers\": {\n \"type\": - \"string\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"format\": \"uint64\"\n },\n \"actualStartTime\": - {\n \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"activeLiveChatId\": - {\n \"description\": \"The ID of the currently active live chat attached - to this video. This field is filled only if the video is a currently live - broadcast that has live chat. Once the broadcast transitions to complete this - field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\",\n \"type\": \"string\"\n - \ },\n \"actualEndTime\": {\n \"description\": \"The - time that the broadcast actually ended. This value will not be available until - the broadcast is over.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"scheduledEndTime\": {\n \"type\": - \"string\",\n \"description\": \"The time that the broadcast is scheduled - to end. If the value is empty or the property is not present, then the broadcast - is scheduled to contiue indefinitely.\",\n \"format\": \"date-time\"\n - \ },\n \"scheduledStartTime\": {\n \"description\": - \"The time that the broadcast is scheduled to begin.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"VideoLiveStreamingDetails\",\n \"type\": \"object\",\n \"description\": - \"Details about the live streaming metadata.\"\n },\n \"VideoStatus\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a video category, such as its localized title. Next Id: 18\",\n \"properties\": - {\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"uploadStatus\": {\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ],\n \"type\": \"string\",\n \"description\": - \"The status of the uploaded video.\",\n \"enumDescriptions\": [\n - \ \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ]\n },\n \"license\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ]\n },\n \"publicStatsViewable\": {\n \"description\": - \"This value indicates if the extended video statistics on the watch page - can be viewed by everyone. Note that the view count, likes, etc will still - be visible if this is disabled. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n },\n \"publishAt\": {\n \"description\": - \"The date and time when the video is scheduled to publish. It can be set - only if the privacy status of the video is private..\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"rejectionReason\": - {\n \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ],\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\",\n - \ \"type\": \"string\"\n },\n \"privacyStatus\": {\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The video's privacy status.\"\n },\n \"failureReason\": - {\n \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ],\n \"description\": \"This - value explains why a video failed to upload. This property is only present - if the uploadStatus property indicates that the upload failed.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Unable to convert - video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ]\n },\n - \ \"embeddable\": {\n \"description\": \"This value indicates - if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n }\n },\n - \ \"id\": \"VideoStatus\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"id\": \"LiveStreamConfigurationIssue\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The long-form description of the issue and how to resolve it.\"\n },\n - \ \"type\": {\n \"description\": \"The kind of error happening.\",\n - \ \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n - \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n - \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n - \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n - \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n - \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"severity\": - {\n \"description\": \"How severe this issue is to the stream.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"info\",\n \"warning\",\n \"error\"\n - \ ]\n },\n \"reason\": {\n \"description\": - \"The short-form reason for this issue.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveStreamContentDetails\": - {\n \"description\": \"Detailed settings of a stream.\",\n \"id\": - \"LiveStreamContentDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"isReusable\": {\n \"description\": \"Indicates whether - the stream is reusable, which means that it can be bound to multiple broadcasts. - It is common for broadcasters to reuse the same stream for many different - broadcasts if those broadcasts occur at different times. If you set this value - to false, then the stream will not be reusable, which means that it can only - be bound to one broadcast. Non-reusable streams differ from reusable streams - in the following ways: - A non-reusable stream can only be bound to one broadcast. - - A non-reusable stream might be deleted by an automated process after the - broadcast ends. - The liveStreams.list method does not list non-reusable streams - if you call the method and set the mine parameter to true. The only way to - use that method to retrieve the resource for a non-reusable stream is to use - the id parameter to identify the stream. \",\n \"type\": \"boolean\"\n - \ },\n \"closedCaptionsIngestionUrl\": {\n \"description\": - \"The ingestion URL where the closed captions of this stream are sent.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LiveStreamStatus\": - {\n \"id\": \"LiveStreamStatus\",\n \"description\": \"Brief description - of the live stream status.\",\n \"type\": \"object\",\n \"properties\": - {\n \"streamStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ]\n },\n \"healthStatus\": - {\n \"description\": \"The health status of the stream.\",\n \"$ref\": - \"LiveStreamHealthStatus\"\n }\n }\n },\n \"MemberListResponse\": - {\n \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of members that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Member\"\n }\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"MemberListResponse\",\n - \ \"type\": \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n \"description\": - \"DEPRECATED Region restriction of the video.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"blocked\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the video is blocked. If this property is present and a country is not - listed in its value, then the video is viewable in that country. If this property - is present and contains an empty list, the video is viewable in all countries.\"\n - \ },\n \"allowed\": {\n \"description\": \"A list of - region codes that identify countries where the video is viewable. If this - property is present and a country is not listed in its value, then the video - is blocked from appearing in that country. If this property is present and - contains an empty list, the video is blocked in all countries.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ }\n }\n },\n \"MembershipsDetails\": {\n \"type\": - \"object\",\n \"id\": \"MembershipsDetails\",\n \"properties\": - {\n \"highestAccessibleLevelDisplayName\": {\n \"description\": - \"Display name for the highest level that the user has access to at the moment.\",\n - \ \"type\": \"string\"\n },\n \"membershipsDuration\": - {\n \"$ref\": \"MembershipsDuration\",\n \"description\": - \"Data about memberships duration without taking into consideration pricing - levels.\"\n },\n \"membershipsDurationAtLevels\": {\n \"type\": - \"array\",\n \"description\": \"Data about memberships duration on - particular pricing levels.\",\n \"items\": {\n \"$ref\": - \"MembershipsDurationAtLevel\"\n }\n },\n \"accessibleLevels\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"Ids of all levels - that the user has access to. This includes the currently active level and - all other levels that are included because of a higher purchase.\"\n },\n - \ \"highestAccessibleLevel\": {\n \"description\": \"Id of - the highest level that the user has access to at the moment.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelSection\": {\n \"id\": - \"ChannelSection\",\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\",\n - \ \"type\": \"string\"\n },\n \"localizations\": {\n - \ \"description\": \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"type\": - \"object\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelSection\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the channel section, such as its type, style and title.\",\n \"$ref\": - \"ChannelSectionSnippet\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ChannelSectionContentDetails\",\n \"description\": \"The contentDetails - object contains details about the channel section content, such as a list - of playlists or channels featured in the section.\"\n },\n \"targeting\": - {\n \"description\": \"The targeting object contains basic targeting - settings about the channel section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelStatus\": - {\n \"description\": \"JSON template for the status part of a channel.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"Privacy status of the channel.\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"isLinked\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"longUploadsStatus\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The long uploads status of this - channel. See https://support.google.com/youtube/answer/71673 for more information.\"\n - \ }\n },\n \"id\": \"ChannelStatus\"\n },\n \"VideoAgeGating\": - {\n \"type\": \"object\",\n \"properties\": {\n \"restricted\": - {\n \"description\": \"Age-restricted trailers. For redband trailers - and adult-rated video-games. Only users aged 18+ can view the content. The - the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\",\n \"type\": \"boolean\"\n },\n - \ \"videoGameRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ],\n \"description\": \"Video - game rating, if any.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"alcoholContent\": {\n \"description\": \"Indicates whether - or not the video has alcoholic beverage content. Only users of legal purchasing - age in a particular country, as identified by ICAP, can view the content.\",\n - \ \"type\": \"boolean\"\n }\n },\n \"id\": \"VideoAgeGating\"\n - \ },\n \"ChannelListResponse\": {\n \"properties\": {\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Channel\"\n }\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"default\": \"youtube#channelListResponse\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n }\n - \ },\n \"id\": \"ChannelListResponse\",\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageSnippet\": {\n \"properties\": {\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\"\n },\n \"textMessageDetails\": - {\n \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\",\n \"$ref\": \"LiveChatTextMessageDetails\"\n - \ },\n \"giftMembershipReceivedDetails\": {\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\",\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n - \ \"description\": \"Details about the Super Chat event, this is only - set if the type is 'superChatEvent'.\"\n },\n \"newSponsorDetails\": - {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": - \"Details about the New Member Announcement event, this is only set if the - type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term - for \\\"sponsor\\\".\"\n },\n \"displayMessage\": {\n \"description\": - \"Contains a string that can be displayed to the user. If this field is not - present the message is silent, at the moment only messages of type TOMBSTONE - and CHAT_ENDED_EVENT are silent.\",\n \"type\": \"string\"\n },\n - \ \"hasDisplayContent\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the message has display content that should be displayed to users.\"\n - \ },\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"superStickerDetails\": {\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"membershipGiftingDetails\": - {\n \"description\": \"Details about the Membership Gifting event, - this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": - \"LiveChatMembershipGiftingDetails\"\n },\n \"authorChannelId\": - {\n \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ],\n \"description\": \"The type of message, this will - always be present, it determines the contents of the message as well as which - fields will be present.\"\n },\n \"memberMilestoneChatDetails\": - {\n \"description\": \"Details about the Member Milestone Chat event, - this is only set if the type is 'memberMilestoneChatEvent'.\",\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the message was orignally - published.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"fanFundingEventDetails\": {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n - \ \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Next ID: 33\",\n \"id\": \"LiveChatMessageSnippet\"\n - \ },\n \"ChannelSectionContentDetails\": {\n \"id\": \"ChannelSectionContentDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Details about a channelsection, - including playlists and channels.\",\n \"properties\": {\n \"channels\": - {\n \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"playlists\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"type\": \"array\"\n }\n - \ }\n },\n \"TestItem\": {\n \"type\": \"object\",\n \"id\": - \"TestItem\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"TestItemTestItemSnippet\"\n },\n \"id\": {\n \"type\": - \"string\"\n },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"gaia\": {\n \"format\": \"int64\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelSectionLocalization\": - {\n \"description\": \"ChannelSection localization setting\",\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for channel section's title.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ChannelSectionLocalization\"\n - \ },\n \"ChannelSectionListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"description\": - \"A list of ChannelSections that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ }\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#channelSectionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n }\n },\n \"id\": \"ChannelSectionListResponse\"\n - \ },\n \"ImageSettings\": {\n \"description\": \"Branding properties - for images associated with the channel.\",\n \"properties\": {\n \"bannerTvMediumImageUrl\": - {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n },\n \"backgroundImageUrl\": - {\n \"description\": \"The URL for the background image shown on - the video watch page. The image should be 1200px by 615px, with a maximum - file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerTabletExtraHdImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Tablet size extra high resolution - (2560x424).\"\n },\n \"bannerTvImageUrl\": {\n \"description\": - \"Banner image. TV size extra high resolution (2120x1192).\",\n \"type\": - \"string\"\n },\n \"bannerMobileLowImageUrl\": {\n \"description\": - \"Banner image. Mobile size low resolution (320x88).\",\n \"type\": - \"string\"\n },\n \"bannerTvLowImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. TV size low resolution - (854x480).\"\n },\n \"trackingImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL for a 1px by 1px tracking - pixel that can be used to collect statistics for views of the channel or video - pages.\"\n },\n \"bannerTabletHdImageUrl\": {\n \"description\": - \"Banner image. Tablet size high resolution (2276x377).\",\n \"type\": - \"string\"\n },\n \"largeBrandedBannerImageImapScript\": {\n - \ \"description\": \"The image map script for the large banner image.\",\n - \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"bannerMobileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. Mobile size (640x175).\"\n },\n \"bannerTabletImageUrl\": - {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\"\n },\n \"bannerImageUrl\": - {\n \"description\": \"Banner image. Desktop size (1060x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"bannerTvHighImageUrl\": {\n \"description\": - \"Banner image. TV size high resolution (1920x1080).\",\n \"type\": - \"string\"\n },\n \"smallBrandedBannerImageImapScript\": {\n - \ \"$ref\": \"LocalizedProperty\",\n \"description\": \"The - image map script for the small banner image.\"\n }\n },\n \"id\": - \"ImageSettings\",\n \"type\": \"object\"\n },\n \"VideoFileDetails\": - {\n \"id\": \"VideoFileDetails\",\n \"properties\": {\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\"\n },\n \"container\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded video file's container format.\"\n - \ },\n \"durationMs\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The length of the uploaded video in milliseconds.\",\n - \ \"type\": \"string\"\n },\n \"creationTime\": {\n - \ \"description\": \"The date and time when the uploaded video file - was created. The value is specified in ISO 8601 format. Currently, the following - ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n - \ },\n \"videoStreams\": {\n \"description\": \"A list - of video streams contained in the uploaded video file. Each item in the list - contains detailed metadata about a video stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n },\n \"type\": - \"array\"\n },\n \"fileSize\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - file's size in bytes. This field is present whether a video file or another - type of file was uploaded.\"\n },\n \"fileName\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded file's name. This field - is present whether a video file or another type of file was uploaded.\"\n - \ },\n \"audioStreams\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"description\": \"A list of audio streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about an audio stream.\"\n },\n \"fileType\": {\n \"enum\": - [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"type\": \"string\",\n \"description\": - \"The uploaded file's type as detected by YouTube's video processing engine. - Currently, YouTube only processes video files, but this field is present whether - a video file or another type of file was uploaded.\",\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ]\n }\n },\n \"description\": \"Describes - original video file properties, including technical details about audio and - video streams, but also metadata information like content length, digitization - time, or geotagging information.\",\n \"type\": \"object\"\n },\n - \ \"VideoMonetizationDetails\": {\n \"properties\": {\n \"access\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - value of access indicates whether the video can be monetized or not.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Details about - monetization of a YouTube Video.\",\n \"id\": \"VideoMonetizationDetails\"\n - \ },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"properties\": - {\n \"memberLevelName\": {\n \"description\": \"The name of - the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"gifterChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"SearchResult\": {\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about a search result, such as its title or description. - For example, if the search result is a video, then the title will be the video's - title and the description will be the video's description.\",\n \"$ref\": - \"SearchResultSnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#searchResult\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ },\n \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n }\n },\n \"description\": - \"A search result contains information about a YouTube video, channel, or - playlist that matches the search parameters specified in an API request. While - a search result points to a uniquely identifiable resource, like a video, - it does not have its own persistent data.\",\n \"id\": \"SearchResult\"\n - \ },\n \"LevelDetails\": {\n \"type\": \"object\",\n \"id\": - \"LevelDetails\",\n \"properties\": {\n \"displayName\": {\n \"description\": - \"The name that should be used when referring to this level.\",\n \"type\": - \"string\"\n }\n }\n },\n \"Member\": {\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the member.\",\n \"$ref\": \"MemberSnippet\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"default\": \"youtube#member\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A *member* resource represents - a member for a YouTube channel. A member provides recurring monetary support - to a creator and receives special benefits.\",\n \"id\": \"Member\"\n - \ },\n \"VideoProjectDetails\": {\n \"id\": \"VideoProjectDetails\",\n - \ \"type\": \"object\",\n \"properties\": {},\n \"description\": - \"DEPRECATED. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"Subscription\": {\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"subscriberSnippet\": {\n \"$ref\": - \"SubscriptionSubscriberSnippet\",\n \"description\": \"The subscriberSnippet - object contains basic details about the subscriber.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#subscription\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#subscription\"\n },\n - \ \"snippet\": {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the subscription.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"SubscriptionContentDetails\",\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\"\n - \ }\n },\n \"description\": \"A *subscription* resource contains - information about a YouTube user subscription. A subscription notifies a user - when new videos are added to a channel or when another user takes one of several - actions on YouTube, such as uploading a video, rating a video, or commenting - on a video.\",\n \"id\": \"Subscription\",\n \"type\": \"object\"\n - \ },\n \"Video\": {\n \"id\": \"Video\",\n \"properties\": - {\n \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"VideoLocalization\"\n },\n \"description\": \"The localizations - object contains localized versions of the basic details about the video, such - as its title and description.\",\n \"type\": \"object\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - contains statistics about the video.\",\n \"$ref\": \"VideoStatistics\"\n - \ },\n \"processingDetails\": {\n \"$ref\": \"VideoProcessingDetails\",\n - \ \"description\": \"The processingDetails object encapsulates information - about YouTube's progress in processing the uploaded video file. The properties - in the object identify the current processing status and an estimate of the - time remaining until YouTube finishes processing the video. This part also - indicates whether different types of data or content, such as file details - or thumbnail images, are available for the video. The processingProgress object - is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\"\n },\n \"recordingDetails\": - {\n \"$ref\": \"VideoRecordingDetails\",\n \"description\": - \"The recordingDetails object encapsulates information about the location, - date and address where the video was recorded.\"\n },\n \"suggestions\": - {\n \"$ref\": \"VideoSuggestions\",\n \"description\": \"The - suggestions object encapsulates suggestions that identify opportunities to - improve the video quality or the metadata for the uploaded video. This data - can only be retrieved by the video owner.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"liveStreamingDetails\": - {\n \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\",\n \"$ref\": - \"VideoLiveStreamingDetails\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ },\n \"fileDetails\": {\n \"description\": \"The fileDetails - object encapsulates information about the video file that was uploaded to - YouTube, including the file's resolution, duration, audio and video codecs, - stream bitrates, and more. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoFileDetails\"\n },\n \"monetizationDetails\": - {\n \"description\": \"The monetizationDetails object encapsulates - information about the monetization status of the video.\",\n \"$ref\": - \"VideoMonetizationDetails\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"projectDetails\": {\n \"description\": \"The projectDetails - object contains information about the project specific video metadata. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"player\": - {\n \"description\": \"The player object contains information that - you would use to play the video in an embedded player.\",\n \"$ref\": - \"VideoPlayer\"\n },\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the video, such as its title, description, and category.\",\n - \ \"$ref\": \"VideoSnippet\"\n },\n \"ageGating\": {\n - \ \"$ref\": \"VideoAgeGating\",\n \"description\": \"Age - restriction details related to a video. This data can only be retrieved by - the video owner.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#video\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the video's uploading, processing, and privacy - statuses.\",\n \"$ref\": \"VideoStatus\"\n }\n },\n \"description\": - \"A *video* resource represents a YouTube video.\",\n \"type\": \"object\"\n - \ },\n \"TestItemTestItemSnippet\": {\n \"id\": \"TestItemTestItemSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {}\n },\n \"ChannelSectionTargeting\": - {\n \"id\": \"ChannelSectionTargeting\",\n \"type\": \"object\",\n - \ \"description\": \"ChannelSection targeting setting.\",\n \"properties\": - {\n \"languages\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The language the channel - section is targeting.\",\n \"type\": \"array\"\n },\n \"regions\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The region the channel section is targeting.\",\n - \ \"type\": \"array\"\n },\n \"countries\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The country the channel section is targeting.\",\n \"type\": \"array\"\n - \ }\n }\n },\n \"LiveChatMembershipGiftingDetails\": {\n - \ \"type\": \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"properties\": {\n \"giftMembershipsLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the level of the gift - memberships purchased by the user. The Level names are defined by the YouTube - channel offering the Membership. In some situations this field isn't filled.\"\n - \ },\n \"giftMembershipsCount\": {\n \"description\": - \"The number of gift memberships purchased by the user.\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n }\n }\n },\n - \ \"PlaylistStatus\": {\n \"properties\": {\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"description\": \"The playlist's - privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"public\",\n \"unlisted\",\n \"private\"\n - \ ]\n }\n },\n \"id\": \"PlaylistStatus\",\n \"type\": - \"object\"\n },\n \"LiveBroadcastStatus\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveBroadcastStatus\",\n \"description\": \"Live broadcast - state.\",\n \"properties\": {\n \"privacyStatus\": {\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"madeForKids\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the broadcast is made for - kids or not, decided by YouTube instead of the creator. This field is read - only.\"\n },\n \"lifeCycleStatus\": {\n \"description\": - \"The broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"type\": \"string\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete - settings\",\n \"Visible only to partner, may need special UI treatment\",\n - \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n - \ \"The broadcast is finished.\",\n \"This broadcast - was removed by admin action\",\n \"Transition into TESTING has - been requested\",\n \"Transition into LIVE has been requested\"\n - \ ]\n },\n \"recordingStatus\": {\n \"description\": - \"The broadcast's recording status.\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ]\n },\n \"liveBroadcastPriority\": {\n \"description\": - \"Priority of the live broadcast event (internal state).\",\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ]\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"description\": - \"This field will be set to True if the creator declares the broadcast to - be kids only: go/live-cw-work.\",\n \"type\": \"boolean\"\n }\n - \ }\n },\n \"Cuepoint\": {\n \"id\": \"Cuepoint\",\n \"description\": - \"Note that there may be a 5-second end-point resolution issue. For instance, - if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - identifier for cuepoint resource.\",\n \"type\": \"string\"\n },\n - \ \"durationSecs\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The duration of this cuepoint.\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"cueType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ]\n - \ },\n \"walltimeMs\": {\n \"description\": \"The wall - clock time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"insertionOffsetTimeMs\": - {\n \"type\": \"string\",\n \"format\": \"int64\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\"\n }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"type\": \"object\",\n \"properties\": {\n \"playlistItemId\": - {\n \"description\": \"ID of the item within the playlist.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n },\n \"playlistId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Information about a new playlist item.\",\n \"id\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"VideoGetRatingResponse\": {\n \"type\": \"object\",\n \"id\": - \"VideoGetRatingResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"VideoRating\"\n - \ },\n \"description\": \"A list of ratings that match the - request criteria.\",\n \"type\": \"array\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#videoGetRatingResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n }\n - \ },\n \"VideoSuggestionsTagSuggestion\": {\n \"description\": \"A - single tag suggestion with it's relevance information.\",\n \"properties\": - {\n \"categoryRestricts\": {\n \"description\": \"A set of - video categories for which the tag is relevant. You can use this information - to display appropriate tag suggestions based on the video category that the - video uploader associates with the video. By default, tag suggestions are - relevant for all categories if there are no restricts defined for the keyword.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"tag\": {\n \"type\": \"string\",\n - \ \"description\": \"The keyword tag suggested for the video.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"ChannelBannerResource\": {\n \"type\": \"object\",\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"url\": {\n \"type\": \"string\",\n \"description\": - \"The URL of this banner image.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ChannelBannerResource\"\n - \ },\n \"PlaylistPlayer\": {\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"PlaylistPlayer\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"properties\": - {\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label for this abuse report secondary reason.\"\n },\n - \ \"id\": {\n \"description\": \"The ID of this abuse report - secondary reason.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsLike\": {\n - \ \"description\": \"Information about a resource that received a positive - (like) rating.\",\n \"id\": \"ActivityContentDetailsLike\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\",\n - \ \"$ref\": \"ResourceId\"\n }\n }\n },\n \"ActivitySnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the resource primarily associated with the activity.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel responsible for this activity\"\n },\n \"description\": - {\n \"description\": \"The description of the resource primarily - associated with the activity. @mutable youtube.activities.insert\",\n \"type\": - \"string\"\n },\n \"groupId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel associated with the activity.\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the video was uploaded.\"\n },\n \"thumbnails\": {\n - \ \"description\": \"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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"typeUnspecified\",\n - \ \"upload\",\n \"like\",\n \"favorite\",\n - \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n - \ \"recommendation\",\n \"bulletin\",\n \"social\",\n - \ \"channelItem\",\n \"promotedItem\"\n ],\n - \ \"description\": \"The type of activity that the resource describes.\"\n - \ }\n },\n \"description\": \"Basic details about an activity, - including title, description, thumbnails, activity type and group. Next ID: - 12\",\n \"id\": \"ActivitySnippet\"\n },\n \"LiveChatMessageListResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"offlineAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the underlying stream went offline.\",\n \"format\": - \"date-time\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"LiveChatMessage\"\n }\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveChatMessageListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n - \ },\n \"pollingIntervalMillis\": {\n \"description\": - \"The amount of time the client should wait before polling again.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageListResponse\",\n - \ \"type\": \"object\"\n },\n \"SuperStickerMetadata\": {\n \"id\": - \"SuperStickerMetadata\",\n \"type\": \"object\",\n \"properties\": - {\n \"stickerId\": {\n \"description\": \"Unique identifier - of the Super Sticker. This is a shorter form of the alt_text that includes - pack name and a recognizable characteristic of the sticker.\",\n \"type\": - \"string\"\n },\n \"altText\": {\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\",\n \"type\": \"string\"\n },\n \"altTextLanguage\": - {\n \"description\": \"Specifies the localization language in which - the alt text is returned.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"LocalizedProperty\": {\n \"properties\": {\n \"localized\": - {\n \"items\": {\n \"$ref\": \"LocalizedString\"\n },\n - \ \"type\": \"array\"\n },\n \"default\": {\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the default property.\",\n \"$ref\": \"LanguageTag\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LocalizedProperty\"\n - \ },\n \"PlaylistItemStatus\": {\n \"properties\": {\n \"privacyStatus\": - {\n \"description\": \"This resource's privacy status.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"PlaylistItemStatus\",\n \"type\": \"object\",\n - \ \"description\": \"Information about the playlist item's privacy status.\"\n - \ },\n \"ChannelSectionSnippet\": {\n \"properties\": {\n \"style\": - {\n \"type\": \"string\",\n \"description\": \"The style - of the channel section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"defaultLanguage\": {\n - \ \"type\": \"string\",\n \"description\": \"The language - of the channel section's default title and description.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the channel section.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"type\": \"string\",\n \"description\": - \"The type of the channel section.\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"localized\": {\n \"description\": - \"Localized title, read-only.\",\n \"$ref\": \"ChannelSectionLocalization\"\n - \ },\n \"position\": {\n \"description\": \"The position - of the channel section in the channel.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel section's title for - multiple_playlists and multiple_channels.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about a channel section, - including title, style and position.\",\n \"id\": \"ChannelSectionSnippet\"\n - \ },\n \"InvideoTiming\": {\n \"properties\": {\n \"type\": - {\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"Describes a timing type. If the - value is offsetFromStart, then the offsetMs field represents an offset from - the start of the video. If the value is offsetFromEnd, then the offsetMs field - represents an offset from the end of the video.\",\n \"type\": \"string\"\n - \ },\n \"offsetMs\": {\n \"description\": \"Defines - the time at which the promotion will appear. Depending on the value of type - the value of the offsetMs field will represent a time offset from the start - or from the end of the video, expressed in milliseconds.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"durationMs\": - {\n \"description\": \"Defines the duration in milliseconds for which - the promotion should be displayed. If missing, the client should use the default.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n }\n - \ },\n \"id\": \"InvideoTiming\",\n \"description\": \"Describes - a temporal position of a visual widget inside a video.\",\n \"type\": - \"object\"\n },\n \"VideoRecordingDetails\": {\n \"description\": - \"Recording information associated with the video.\",\n \"id\": \"VideoRecordingDetails\",\n - \ \"properties\": {\n \"locationDescription\": {\n \"description\": - \"The text description of the location where the video was recorded.\",\n - \ \"type\": \"string\"\n },\n \"location\": {\n \"description\": - \"The geolocation information associated with the video.\",\n \"$ref\": - \"GeoPoint\"\n },\n \"recordingDate\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the video was recorded.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"CaptionListResponse\": {\n \"id\": - \"CaptionListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#captionListResponse\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Caption\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of captions that match the request criteria.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n }\n },\n \"name\": \"youtube\",\n \"id\": - \"youtube:v3\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"auth\": - {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n }\n }\n }\n },\n \"servicePath\": - \"\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"description\": - \"The YouTube Data API v3 is an API that provides access to YouTube data, - such as videos, playlists, and channels.\",\n \"title\": \"YouTube Data API - v3\",\n \"version\": \"v3\",\n \"kind\": \"discovery#restDescription\",\n - \ \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"fullyEncodeReservedExpansion\": true,\n \"revision\": \"20230220\",\n - \ \"batchPath\": \"batch\",\n \"basePath\": \"\",\n \"ownerDomain\": \"google.com\",\n - \ \"ownerName\": \"Google\",\n \"protocol\": \"rest\",\n \"mtlsRootUrl\": - \"https://youtube.mtls.googleapis.com/\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:32 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCIc2aw6c98G9gUUPvrNSXlA&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"RuuXzTIr0OoDqI4S0RU6n4FqKEM\",\n - \ \"pageInfo\": {\n \"totalResults\": 0,\n \"resultsPerPage\": 5\n }\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:32 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"kind\": \"discovery#restDescription\",\n \"schemas\": {\n \"VideoAbuseReportReasonSnippet\": - {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"description\": - \"Basic details about a video category, such as its localized title.\",\n - \ \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label belonging to this abuse report - reason.\"\n },\n \"secondaryReasons\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"description\": \"The secondary reasons associated - with this reason, if any are available. (There might be 0 or more.)\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"RelatedEntity\": {\n \"id\": - \"RelatedEntity\",\n \"properties\": {\n \"entity\": {\n \"$ref\": - \"Entity\"\n }\n },\n \"type\": \"object\"\n },\n \"Comment\": - {\n \"description\": \"A *comment* represents a single YouTube comment.\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#comment\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the comment.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"Comment\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"type\": \"object\",\n \"description\": \"Information that - identifies the recommended resource.\",\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"properties\": {\n \"reason\": {\n \"type\": \"string\",\n - \ \"description\": \"The reason that the resource is recommended to - the user.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ]\n },\n \"seedResourceId\": - {\n \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\",\n \"$ref\": - \"ResourceId\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the recommended resource.\"\n }\n }\n - \ },\n \"VideoContentDetailsRegionRestriction\": {\n \"properties\": - {\n \"blocked\": {\n \"description\": \"A list of region codes - that identify countries where the video is blocked. If this property is present - and a country is not listed in its value, then the video is viewable in that - country. If this property is present and contains an empty list, the video - is viewable in all countries.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"allowed\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\",\n \"type\": \"array\"\n }\n - \ },\n \"id\": \"VideoContentDetailsRegionRestriction\",\n \"type\": - \"object\",\n \"description\": \"DEPRECATED Region restriction of the - video.\"\n },\n \"ChannelContentOwnerDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"properties\": - {\n \"contentOwner\": {\n \"description\": \"The ID of the - content owner linked to the channel.\",\n \"type\": \"string\"\n - \ },\n \"timeLinked\": {\n \"description\": \"The date - and time when the channel was linked to the content owner.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n }\n },\n \"id\": - \"ChannelContentOwnerDetails\"\n },\n \"LiveBroadcastContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"Detailed settings of a broadcast.\",\n \"properties\": - {\n \"monitorStream\": {\n \"description\": \"The monitorStream - object contains information about the monitor stream, which the broadcaster - can use to review the event content before the broadcast stream is shown publicly.\",\n - \ \"$ref\": \"MonitorStreamInfo\"\n },\n \"boundStreamId\": - {\n \"type\": \"string\",\n \"description\": \"This value - uniquely identifies the live stream bound to the broadcast.\"\n },\n - \ \"enableDvr\": {\n \"description\": \"This setting determines - whether viewers can access DVR controls while watching the video. DVR controls - enable the viewer to control the video playback experience by pausing, rewinding, - or fast forwarding content. The default value for this property is true. *Important:* - You must set the value to true and also set the enableArchive property's value - to true if you want to make playback available immediately after the broadcast - ends.\",\n \"type\": \"boolean\"\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the live stream referenced by boundStreamId was last updated.\",\n - \ \"type\": \"string\"\n },\n \"enableEmbed\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - the broadcast video can be played in an embedded player. If you choose to - archive the video (using the enableArchive property), this setting will also - apply to the archived video.\"\n },\n \"enableAutoStart\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"recordFromStart\": {\n \"type\": \"boolean\",\n \"description\": - \"Automatically start recording after the event goes live. The default value - for this property is true. *Important:* You must also set the enableDvr property's - value to true if you want the playback to be available immediately after the - broadcast ends. If you set this property's value to true but do not also set - the enableDvr property to true, there may be a delay of around one day before - the archived video will be available for playback.\"\n },\n \"stereoLayout\": - {\n \"type\": \"string\",\n \"description\": \"The 3D stereo - layout of this broadcast. This defaults to mono.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ]\n },\n \"startWithSlate\": {\n \"description\": - \"This setting indicates whether the broadcast should automatically begin - with an in-stream slate when you update the broadcast's status to live. After - updating the status, you then need to send a liveCuepoints.insert request - that sets the cuepoint's eventState to end to remove the in-stream slate and - make your broadcast stream visible to viewers.\",\n \"type\": \"boolean\"\n - \ },\n \"mesh\": {\n \"type\": \"string\",\n \"description\": - \"The mesh for projecting the video if projection is mesh. The mesh value - must be a UTF-8 string containing the base-64 encoding of 3D mesh data that - follows the Spherical Video V2 RFC specification for an mshp box, excluding - the box size and type but including the following four reserved zero bytes - for the version and flags.\",\n \"format\": \"byte\"\n },\n - \ \"projection\": {\n \"description\": \"The projection format - of this broadcast. This defaults to rectangular.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ]\n },\n \"enableClosedCaptions\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - HTTP POST closed captioning is enabled for this broadcast. The ingestion URL - of the closed captions is returned through the liveStreams API. This is mutually - exclusive with using the closed_captions_type property, and is equivalent - to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n - \ \"closedCaptionsType\": {\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"latencyPreference\": - {\n \"type\": \"string\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"description\": \"If both this and enable_low_latency - are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Best for: highest quality viewer playbacks and higher resolutions.\",\n - \ \"Best for: near real-time interaction, with minimal playback - buffering.\",\n \"Best for: real-time interaction Does not support: - Closed captions, 1440p, and 4k resolutions\"\n ]\n },\n \"enableAutoStop\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto stop is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"enableContentEncryption\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\"\n },\n \"enableLowLatency\": - {\n \"description\": \"Indicates whether this broadcast has low latency - enabled.\",\n \"type\": \"boolean\"\n }\n }\n },\n - \ \"PlaylistItemSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"publishedAt\": {\n \"description\": \"The date and time - that the item was added to the playlist.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"videoOwnerChannelTitle\": - {\n \"description\": \"Channel title for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the user that added the item to the playlist.\"\n - \ },\n \"resourceId\": {\n \"description\": \"The id - object contains information that can be used to uniquely identify the resource - that is included in the playlist as the playlist item.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"$ref\": \"ResourceId\"\n },\n \"title\": {\n \"description\": - \"The item's title.\",\n \"type\": \"string\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify thGe playlist that the playlist item is in.\"\n - \ },\n \"videoOwnerChannelId\": {\n \"description\": - \"Channel id for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist item. 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.\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the playlist item belongs to.\"\n },\n \"description\": {\n - \ \"description\": \"The item's description.\",\n \"type\": - \"string\"\n },\n \"position\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The order in - which the item appears in the playlist. The value uses a zero-based index, - so the first item has a position of 0, the second item has a position of 1, - and so forth.\"\n }\n },\n \"id\": \"PlaylistItemSnippet\",\n - \ \"description\": \"Basic details about a playlist, including title, - description and thumbnails. Basic details of a YouTube Playlist item provided - by the author. Next ID: 15\"\n },\n \"VideoProjectDetails\": {\n \"id\": - \"VideoProjectDetails\",\n \"type\": \"object\",\n \"properties\": - {},\n \"description\": \"DEPRECATED. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"InvideoPosition\": {\n \"id\": \"InvideoPosition\",\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"cornerPosition\": - {\n \"description\": \"Describes in which corner of the video the - visual widget will appear.\",\n \"type\": \"string\",\n \"enum\": - [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n - \ \"bottomRight\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"type\": {\n \"description\": \"Defines - the position type.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\"\n ],\n \"enum\": [\n \"corner\"\n - \ ]\n }\n }\n },\n \"Member\": {\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\",\n - \ \"id\": \"Member\",\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the member.\",\n \"$ref\": - \"MemberSnippet\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#member\\\".\",\n \"default\": \"youtube#member\"\n - \ }\n }\n },\n \"ChannelBrandingSettings\": {\n \"description\": - \"Branding properties of a YouTube channel.\",\n \"id\": \"ChannelBrandingSettings\",\n - \ \"properties\": {\n \"image\": {\n \"$ref\": \"ImageSettings\",\n - \ \"description\": \"Branding properties for branding images.\"\n - \ },\n \"channel\": {\n \"description\": \"Branding - properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n - \ },\n \"watch\": {\n \"$ref\": \"WatchSettings\",\n - \ \"description\": \"Branding properties for the watch page.\"\n },\n - \ \"hints\": {\n \"items\": {\n \"$ref\": \"PropertyValue\"\n - \ },\n \"description\": \"Additional experimental branding - properties.\",\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\"\n },\n \"MembershipsDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"MembershipsDetails\",\n \"properties\": {\n \"accessibleLevels\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Ids of all levels that - the user has access to. This includes the currently active level and all other - levels that are included because of a higher purchase.\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n },\n - \ \"highestAccessibleLevel\": {\n \"description\": \"Id of - the highest level that the user has access to at the moment.\",\n \"type\": - \"string\"\n },\n \"membershipsDuration\": {\n \"$ref\": - \"MembershipsDuration\",\n \"description\": \"Data about memberships - duration without taking into consideration pricing levels.\"\n },\n - \ \"membershipsDurationAtLevels\": {\n \"items\": {\n \"$ref\": - \"MembershipsDurationAtLevel\"\n },\n \"type\": \"array\",\n - \ \"description\": \"Data about memberships duration on particular - pricing levels.\"\n }\n }\n },\n \"ActivityContentDetailsLike\": - {\n \"id\": \"ActivityContentDetailsLike\",\n \"description\": \"Information - about a resource that received a positive (like) rating.\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"bannedUserDetails\": {\n \"description\": - \"The details of the user that was banned.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banDurationSeconds\": {\n \"type\": \"string\",\n - \ \"description\": \"The duration of the ban. This property is only - present if the banType is temporary.\",\n \"format\": \"uint64\"\n - \ },\n \"banType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of ban.\",\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ]\n }\n }\n },\n \"CdnSettings\": - {\n \"type\": \"object\",\n \"description\": \"Brief description - of the live stream cdn settings.\",\n \"properties\": {\n \"ingestionType\": - {\n \"description\": \" The method or protocol used to transmit the - video stream.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"rtmp\",\n \"dash\",\n \"webrtc\",\n \"hls\"\n - \ ],\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"resolution\": {\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The resolution of the inbound video data.\"\n - \ },\n \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n - \ \"description\": \"The ingestionInfo object contains information - that YouTube provides that you need to transmit your RTMP or HTTP stream to - YouTube.\"\n },\n \"format\": {\n \"type\": \"string\",\n - \ \"description\": \"The format of the video stream that you are sending - to Youtube. \",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"frameRate\": {\n \"description\": - \"The frame rate of the inbound video data.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ]\n }\n - \ },\n \"id\": \"CdnSettings\"\n },\n \"ThirdPartyLink\": {\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\"\n },\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n - \ \"description\": \"The status object contains information about - the status of the link.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"default\": \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n - \ },\n \"linkingToken\": {\n \"description\": \"The - linking_token identifies a YouTube account and channel with which the third - party account is linked.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ThirdPartyLink\",\n \"description\": - \"A *third party account link* resource represents a link between a YouTube - account or a channel and an account on a third-party service.\"\n },\n - \ \"LiveChatMessageDeletedDetails\": {\n \"properties\": {\n \"deletedMessageId\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageDeletedDetails\"\n },\n \"SuperChatEvent\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the Super Chat event.\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\",\n - \ \"$ref\": \"SuperChatEventSnippet\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"default\": \"youtube#superChatEvent\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"SuperChatEvent\",\n \"description\": \"A `__superChatEvent__` resource - represents a Super Chat purchase on a YouTube channel.\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"description\": \"Details about a resource which was added to a - channel.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"VideoMonetizationDetails\": {\n \"properties\": - {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\"\n - \ }\n },\n \"description\": \"Details about monetization of - a YouTube Video.\",\n \"id\": \"VideoMonetizationDetails\",\n \"type\": - \"object\"\n },\n \"MemberSnippet\": {\n \"properties\": {\n \"membershipsDetails\": - {\n \"$ref\": \"MembershipsDetails\",\n \"description\": - \"Details about the user's membership.\"\n },\n \"memberDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the member.\"\n },\n \"creatorChannelId\": {\n - \ \"description\": \"The id of the channel that's offering memberships.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"MemberSnippet\"\n },\n \"PlaylistSnippet\": {\n \"type\": - \"object\",\n \"description\": \"Basic details about a playlist, including - title, description and thumbnails.\",\n \"properties\": {\n \"publishedAt\": - {\n \"description\": \"The date and time that the playlist was created.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"localized\": {\n \"description\": \"Localized title and - description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"thumbnailVideoId\": {\n \"type\": \"string\",\n - \ \"description\": \"Note: if the playlist has a custom thumbnail, - this field will not be populated. The video id selected by the user that will - be used as the thumbnail of this playlist. This field defaults to the first - publicly viewable video in the playlist, if: 1. The user has never selected - a video to be the thumbnail of the playlist. 2. The user selects a video to - be the thumbnail, and then removes that video from the playlist. 3. The user - selects a non-owned video to be the thumbnail, but that video becomes private, - or gets deleted.\"\n },\n \"description\": {\n \"description\": - \"The playlist's description.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that published the playlist.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel title of the channel that the video - belongs to.\"\n },\n \"tags\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Keyword tags associated - with the playlist.\",\n \"type\": \"array\"\n },\n \"title\": - {\n \"description\": \"The playlist's title.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"A map of thumbnail images associated with the playlist. 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.\"\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the playlist's default title and description.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"PlaylistSnippet\"\n },\n \"Subscription\": - {\n \"type\": \"object\",\n \"id\": \"Subscription\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the subscription.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"SubscriptionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the subscription, including its title and the channel that the user subscribed - to.\"\n },\n \"subscriberSnippet\": {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"The subscriberSnippet object contains basic details - about the subscriber.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#subscription\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"SubscriptionContentDetails\",\n - \ \"description\": \"The contentDetails object contains basic statistics - about the subscription.\"\n }\n },\n \"description\": \"A - *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\"\n },\n \"CommentThreadSnippet\": - {\n \"properties\": {\n \"isPublic\": {\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\",\n \"type\": \"boolean\"\n },\n \"videoId\": - {\n \"description\": \"The ID of the video the comments refer to, - if any. No video_id implies a channel discussion comment.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"totalReplyCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The total - number of replies (not including the top level comment).\",\n \"type\": - \"integer\"\n },\n \"canReply\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n },\n \"topLevelComment\": {\n \"description\": - \"The top level comment of this thread.\",\n \"$ref\": \"Comment\"\n - \ }\n },\n \"id\": \"CommentThreadSnippet\",\n \"description\": - \"Basic details about a comment thread.\",\n \"type\": \"object\"\n },\n - \ \"I18nRegionSnippet\": {\n \"properties\": {\n \"gl\": {\n - \ \"description\": \"The region code as a 2-letter ISO country code.\",\n - \ \"type\": \"string\"\n },\n \"name\": {\n \"type\": - \"string\",\n \"description\": \"The human-readable name of the region.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"I18nRegionSnippet\",\n - \ \"description\": \"Basic details about an i18n region, such as region - code and human-readable name.\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"id\": \"LiveChatSuperChatDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"userComment\": {\n \"description\": - \"The comment added by the user to this Super Chat event.\",\n \"type\": - \"string\"\n },\n \"tier\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The tier in which the amount belongs. Lower amounts - belong to lower tiers. The lowest tier is 1.\",\n \"type\": \"integer\"\n - \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made.\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"amountMicros\": {\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"I18nLanguage\": {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nLanguage\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the i18n language, such as language code - and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the i18n language.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"I18nLanguage\",\n \"type\": \"object\",\n - \ \"description\": \"An *i18nLanguage* resource identifies a UI language - currently supported by YouTube.\"\n },\n \"LiveStreamSnippet\": {\n - \ \"id\": \"LiveStreamSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that is transmitting the stream.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"The stream's title. The value must be between 1 and 128 characters long.\",\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The stream's description. The value - cannot be longer than 10000 characters.\"\n },\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n },\n \"publishedAt\": {\n - \ \"description\": \"The date and time that the stream was created.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n }\n - \ }\n },\n \"SubscriptionContentDetails\": {\n \"description\": - \"Details about the content to witch a subscription refers.\",\n \"type\": - \"object\",\n \"properties\": {\n \"activityType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"totalItemCount\": {\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The approximate number of items that the subscription points to.\"\n },\n - \ \"newItemCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The number of new items in the subscription since its content was last read.\",\n - \ \"type\": \"integer\"\n }\n },\n \"id\": \"SubscriptionContentDetails\"\n - \ },\n \"ChannelSectionContentDetails\": {\n \"description\": \"Details - about a channelsection, including playlists and channels.\",\n \"properties\": - {\n \"playlists\": {\n \"description\": \"The playlist ids - for type single_playlist and multiple_playlists. For singlePlaylist, only - one playlistId is allowed.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"channels\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The channel ids for - type multiple_channels.\"\n }\n },\n \"id\": \"ChannelSectionContentDetails\",\n - \ \"type\": \"object\"\n },\n \"VideoAbuseReportReason\": {\n \"type\": - \"object\",\n \"id\": \"VideoAbuseReportReason\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoAbuseReportReason\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID of this abuse report reason.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\"\n },\n \"VideoGetRatingResponse\": - {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#videoGetRatingResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoRating\"\n },\n - \ \"description\": \"A list of ratings that match the request criteria.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoGetRatingResponse\",\n - \ \"type\": \"object\"\n },\n \"LevelDetails\": {\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The name that should be used when referring to this level.\"\n }\n - \ },\n \"id\": \"LevelDetails\",\n \"type\": \"object\"\n },\n - \ \"MembershipsLevelSnippet\": {\n \"properties\": {\n \"creatorChannelId\": - {\n \"description\": \"The id of the channel that's offering channel - memberships.\",\n \"type\": \"string\"\n },\n \"levelDetails\": - {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details - about the pricing level.\"\n }\n },\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"type\": \"object\"\n },\n \"ActivitySnippet\": {\n \"description\": - \"Basic details about an activity, including title, description, thumbnails, - activity type and group. Next ID: 12\",\n \"type\": \"object\",\n \"properties\": - {\n \"groupId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel responsible for this activity\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel associated with the activity.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the resource primarily associated with the activity.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the video was uploaded.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"enum\": [\n \"typeUnspecified\",\n - \ \"upload\",\n \"like\",\n \"favorite\",\n - \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n - \ \"recommendation\",\n \"bulletin\",\n \"social\",\n - \ \"channelItem\",\n \"promotedItem\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The type of - activity that the resource describes.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"thumbnails\": {\n \"description\": - \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the resource primarily associated with the activity. - @mutable youtube.activities.insert\"\n }\n },\n \"id\": \"ActivitySnippet\"\n - \ },\n \"LiveChatModerator\": {\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"LiveChatModeratorSnippet\",\n \"description\": - \"The snippet object contains basic details about the moderator.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the moderator.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"default\": \"youtube#liveChatModerator\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"A *liveChatModerator* - resource represents a moderator for a YouTube live chat. A chat moderator - has the ability to ban/unban users from a chat, remove message, etc.\",\n - \ \"id\": \"LiveChatModerator\",\n \"type\": \"object\"\n },\n - \ \"CaptionListResponse\": {\n \"id\": \"CaptionListResponse\",\n \"type\": - \"object\",\n \"properties\": {\n \"items\": {\n \"description\": - \"A list of captions that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Caption\"\n },\n \"type\": \"array\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#captionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\"\n - \ }\n }\n },\n \"MembershipsLevel\": {\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the memberships level.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#membershipsLevel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"MembershipsLevelSnippet\",\n \"description\": \"The snippet object - contains basic details about the level.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A *membershipsLevel* resource represents - an offer made by YouTube creators for their fans. Users can become members - of the channel by joining one of the available levels. They will provide recurring - monetary support and receives special benefits.\",\n \"id\": \"MembershipsLevel\"\n - \ },\n \"ChannelConversionPing\": {\n \"properties\": {\n \"context\": - {\n \"type\": \"string\",\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"Defines the context of the ping.\"\n },\n - \ \"conversionUrl\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"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.\",\n \"type\": \"object\",\n \"id\": - \"ChannelConversionPing\"\n },\n \"ChannelListResponse\": {\n \"id\": - \"ChannelListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Channel\"\n }\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n }\n }\n },\n \"SubscriptionListResponse\": - {\n \"properties\": {\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"description\": \"A list of subscriptions - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Subscription\"\n },\n \"type\": \"array\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"default\": \"youtube#subscriptionListResponse\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n },\n \"id\": \"SubscriptionListResponse\",\n - \ \"type\": \"object\"\n },\n \"ChannelLocalization\": {\n \"type\": - \"object\",\n \"description\": \"Channel localization setting\",\n \"id\": - \"ChannelLocalization\",\n \"properties\": {\n \"title\": {\n - \ \"description\": \"The localized strings for channel's title.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - description.\"\n }\n }\n },\n \"LanguageTag\": {\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LanguageTag\",\n \"type\": \"object\"\n },\n \"ActivityContentDetails\": - {\n \"description\": \"Details about the content of an activity: the - video that was shared, the channel that was subscribed to, etc.\",\n \"properties\": - {\n \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"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.\"\n },\n \"playlistItem\": - {\n \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n },\n \"recommendation\": {\n \"$ref\": - \"ActivityContentDetailsRecommendation\",\n \"description\": \"The - recommendation object contains information about a recommended resource. This - property is only present if the snippet.type is recommendation.\"\n },\n - \ \"social\": {\n \"description\": \"The social object contains - details about a social network post. This property is only present if the - snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"subscription\": {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n - \ \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\"\n },\n \"upload\": {\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"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.\"\n },\n \"like\": {\n \"description\": - \"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.\",\n - \ \"$ref\": \"ActivityContentDetailsLike\"\n },\n \"promotedItem\": - {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n \"description\": - \"The promotedItem object contains details about a resource which is being - promoted. This property is only present if the snippet.type is promotedItem.\"\n - \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetails\"\n },\n \"LiveChatMessageSnippet\": {\n \"description\": - \"Next ID: 33\",\n \"type\": \"object\",\n \"properties\": {\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n },\n \"membershipGiftingDetails\": - {\n \"description\": \"Details about the Membership Gifting event, - this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": - \"LiveChatMembershipGiftingDetails\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the message was orignally published.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"enum\": [\n \"invalidType\",\n - \ \"textMessageEvent\",\n \"tombstone\",\n \"fanFundingEvent\",\n - \ \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"textMessageDetails\": {\n \"$ref\": - \"LiveChatTextMessageDetails\",\n \"description\": \"Details about - the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"hasDisplayContent\": {\n \"description\": \"Whether - the message has display content that should be displayed to users.\",\n \"type\": - \"boolean\"\n },\n \"newSponsorDetails\": {\n \"description\": - \"Details about the New Member Announcement event, this is only set if the - type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term - for \\\"sponsor\\\".\",\n \"$ref\": \"LiveChatNewSponsorDetails\"\n - \ },\n \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"giftMembershipReceivedDetails\": {\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\",\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"superStickerDetails\": {\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"superChatDetails\": - {\n \"description\": \"Details about the Super Chat event, this is - only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"fanFundingEventDetails\": {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n - \ \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\"\n },\n \"displayMessage\": - {\n \"description\": \"Contains a string that can be displayed to - the user. If this field is not present the message is silent, at the moment - only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\",\n \"type\": - \"string\"\n },\n \"liveChatId\": {\n \"type\": \"string\"\n - \ },\n \"authorChannelId\": {\n \"description\": \"The - ID of the user that authored this message, this field is not always filled. - textMessageEvent - the user that wrote the message fanFundingEvent - the user - that funded the broadcast newSponsorEvent - the user that just became a sponsor - memberMilestoneChatEvent - the member that sent the message membershipGiftingEvent - - the user that made the purchase giftMembershipReceivedEvent - the user that - received the gift membership messageDeletedEvent - the moderator that took - the action messageRetractedEvent - the author that retracted their message - userBannedEvent - the moderator that took the action superChatEvent - the - user that made the purchase superStickerEvent - the user that made the purchase\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageSnippet\"\n - \ },\n \"CommentThread\": {\n \"type\": \"object\",\n \"description\": - \"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.\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"replies\": {\n \"description\": \"The replies object contains - a limited number of replies (if any) to the top level comment found in the - snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the comment thread.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the comment thread and also the top level comment.\",\n \"$ref\": - \"CommentThreadSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#commentThread\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"CommentThread\"\n - \ },\n \"ImageSettings\": {\n \"type\": \"object\",\n \"description\": - \"Branding properties for images associated with the channel.\",\n \"properties\": - {\n \"largeBrandedBannerImageImapScript\": {\n \"description\": - \"The image map script for the large banner image.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"bannerTvHighImageUrl\": - {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size extra high resolution - (2560x424).\",\n \"type\": \"string\"\n },\n \"trackingImageUrl\": - {\n \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n },\n \"bannerImageUrl\": {\n - \ \"description\": \"Banner image. Desktop size (1060x175).\",\n \"type\": - \"string\"\n },\n \"watchIconImageUrl\": {\n \"type\": - \"string\"\n },\n \"bannerMobileHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\"\n },\n \"bannerExternalUrl\": {\n \"type\": - \"string\",\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"bannerTvImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. TV size extra high resolution (2120x1192).\"\n },\n - \ \"bannerMobileLowImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Mobile size low resolution (320x88).\"\n - \ },\n \"largeBrandedBannerImageUrl\": {\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"backgroundImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the background - image shown on the video watch page. The image should be 1200px by 615px, - with a maximum file size of 128k.\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": - {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"bannerMobileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size (640x175).\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ImageSettings\"\n },\n \"I18nLanguageListResponse\": {\n \"type\": - \"object\",\n \"id\": \"I18nLanguageListResponse\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n },\n \"description\": - \"A list of supported i18n languages. In this map, the i18n language ID is - the map key, and its value is the corresponding i18nLanguage resource.\",\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nLanguageListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"SuperChatEventListResponse\": {\n \"type\": \"object\",\n \"id\": - \"SuperChatEventListResponse\",\n \"properties\": {\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"default\": - \"youtube#superChatEventListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of Super Chat purchases that - match the request criteria.\",\n \"items\": {\n \"$ref\": - \"SuperChatEvent\"\n }\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoLocalization\": {\n \"id\": \"VideoLocalization\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"title\": {\n - \ \"description\": \"Localized version of the video's title.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"Localized version of the video's description.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Localized versions of certain - video properties (e.g. title).\"\n },\n \"WatchSettings\": {\n \"properties\": - {\n \"textColor\": {\n \"type\": \"string\",\n \"description\": - \"The background color for the video watch page's branded area.\"\n },\n - \ \"backgroundColor\": {\n \"type\": \"string\",\n \"description\": - \"The text color for the video watch page's branded area.\"\n },\n - \ \"featuredPlaylistId\": {\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Branding properties for the watch. All deprecated.\",\n \"id\": \"WatchSettings\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"id\": \"LiveChatMessageAuthorDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"displayName\": {\n \"description\": \"The channel's display - name.\",\n \"type\": \"string\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"isChatOwner\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author is the owner of the live chat.\"\n - \ },\n \"profileImageUrl\": {\n \"description\": \"The - channels's avatar URL.\",\n \"type\": \"string\"\n },\n \"isVerified\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author's identity has been verified by YouTube.\"\n },\n \"isChatSponsor\": - {\n \"description\": \"Whether the author is a sponsor of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"isChatModerator\": - {\n \"description\": \"Whether the author is a moderator of the live - chat.\",\n \"type\": \"boolean\"\n }\n }\n },\n \"VideoRecordingDetails\": - {\n \"properties\": {\n \"location\": {\n \"$ref\": \"GeoPoint\",\n - \ \"description\": \"The geolocation information associated with the - video.\"\n },\n \"recordingDate\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the video was recorded.\",\n - \ \"format\": \"date-time\"\n },\n \"locationDescription\": - {\n \"type\": \"string\",\n \"description\": \"The text - description of the location where the video was recorded.\"\n }\n },\n - \ \"id\": \"VideoRecordingDetails\",\n \"description\": \"Recording - information associated with the video.\",\n \"type\": \"object\"\n },\n - \ \"ChannelSettings\": {\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the channel description.\"\n },\n \"defaultTab\": {\n \"type\": - \"string\",\n \"description\": \"Which content tab users should see - when viewing the channel.\"\n },\n \"featuredChannelsUrls\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The list of featured - channels.\"\n },\n \"featuredChannelsTitle\": {\n \"type\": - \"string\",\n \"description\": \"Title for the featured channels - tab.\"\n },\n \"trackingAnalyticsAccountId\": {\n \"type\": - \"string\",\n \"description\": \"The ID for a Google Analytics account - to track and measure traffic to the channels.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the channel title.\"\n },\n \"showBrowseView\": {\n \"description\": - \"Whether the tab to browse the videos should be displayed.\",\n \"type\": - \"boolean\"\n },\n \"country\": {\n \"type\": \"string\",\n - \ \"description\": \"The country of the channel.\"\n },\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"keywords\": - {\n \"type\": \"string\",\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\"\n },\n \"profileColor\": - {\n \"description\": \"A prominent color that can be rendered on - this channel page.\",\n \"type\": \"string\"\n },\n \"unsubscribedTrailer\": - {\n \"description\": \"The trailer of the channel, for users that - are not subscribers.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"moderateComments\": - {\n \"description\": \"Whether user-submitted comments left on the - channel page need to be approved by the channel owner to be publicly visible.\",\n - \ \"type\": \"boolean\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelSettings\",\n \"description\": \"Branding properties - for the channel view.\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"description\": \"Details about a resource which is being promoted.\",\n - \ \"properties\": {\n \"destinationUrl\": {\n \"description\": - \"The URL the client should direct the user to, if the user chooses to visit - the advertiser's website.\",\n \"type\": \"string\"\n },\n - \ \"customCtaButtonText\": {\n \"type\": \"string\",\n \"description\": - \"The custom call-to-action button text. If specified, it will override the - default button text for the cta_type.\"\n },\n \"creativeViewUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user was shown this promoted item.\"\n - \ },\n \"clickTrackingUrl\": {\n \"description\": \"The - URL the client should ping to indicate that the user clicked through on this - promoted item.\",\n \"type\": \"string\"\n },\n \"adTag\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should fetch to request a promoted item.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the promoted video.\"\n },\n \"ctaType\": - {\n \"enum\": [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"description\": \"The type of call-to-action, a message - to the user indicating action that can be taken.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"impressionUrl\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The list of impression URLs. The client should - ping all of these URLs to indicate that the user was shown this promoted item.\"\n - \ },\n \"descriptionText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text description to accompany the promoted - item.\"\n },\n \"forecastingUrl\": {\n \"type\": \"array\",\n - \ \"description\": \"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.\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsPromotedItem\"\n },\n \"PlaylistItemStatus\": - {\n \"description\": \"Information about the playlist item's privacy - status.\",\n \"id\": \"PlaylistItemStatus\",\n \"properties\": {\n - \ \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"This resource's privacy status.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ]\n }\n },\n \"type\": \"object\"\n },\n \"ContentRating\": - {\n \"id\": \"ContentRating\",\n \"description\": \"Ratings schemes. - The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n - \ \"properties\": {\n \"cccRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ]\n },\n \"medietilsynetRating\": {\n \"description\": - \"The video's rating from Medietilsynet, the Norwegian Media Authority.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ]\n },\n \"catvRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ],\n \"description\": \"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.\"\n - \ },\n \"chvrsRating\": {\n \"description\": \"The video's - Canadian Home Video Rating System (CHVRS) rating.\",\n \"type\": - \"string\",\n \"enum\": [\n \"chvrsUnspecified\",\n \"chvrsG\",\n - \ \"chvrsPg\",\n \"chvrs14a\",\n \"chvrs18a\",\n - \ \"chvrsR\",\n \"chvrsE\",\n \"chvrsUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ]\n },\n \"ytRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"A rating that - YouTube uses to identify age-restricted content.\",\n \"enum\": [\n - \ \"ytUnspecified\",\n \"ytAgeRestricted\"\n ]\n - \ },\n \"ecbmctRating\": {\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ],\n \"description\": \"Rating system in Turkey - Evaluation - and Classification Board of the Ministry of Culture and Tourism\",\n \"type\": - \"string\"\n },\n \"smaisRating\": {\n \"enum\": [\n - \ \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n - \ \"smais12\",\n \"smais14\",\n \"smais16\",\n - \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in Iceland.\"\n },\n \"mibacRating\": {\n - \ \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"description\": \"The - video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali e - del Turismo (Italy).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"cceRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from Portugal's - Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ]\n },\n \"fpbRating\": {\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\",\n - \ \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ]\n },\n \"mekuRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Finland's - Kansallinen Audiovisuaalinen Instituutti (National Audiovisual Institute).\"\n - \ },\n \"mocRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"description\": \"The - video's Ministerio de Cultura (Colombia) rating.\"\n },\n \"resorteviolenciaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"description\": \"The video's rating in Venezuela.\",\n - \ \"type\": \"string\"\n },\n \"rcnofRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Hungarian - Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ]\n },\n \"moctwRating\": - {\n \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ],\n \"description\": \"The video's rating from Taiwan's - Ministry of Culture (\u6587\u5316\u90E8).\"\n },\n \"anatelRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"description\": \"The video's Anatel - (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\"\n - \ },\n \"nfrcRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"nfrcUnspecified\",\n \"nfrcA\",\n - \ \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n - \ \"nfrcUnrated\"\n ],\n \"description\": \"The - video's rating from the Bulgarian National Film Center.\"\n },\n \"pefilmRating\": - {\n \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n - \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n - \ \"pefilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Peru.\",\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ]\n },\n \"cnaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"description\": - \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\",\n \"type\": \"string\"\n },\n \"menaMpaaRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ],\n \"description\": \"The rating system for MENA countries, - a clone of MPAA. It is needed to prevent titles go live w/o additional QC - check, since some of them can be inappropriate for the countries at all. See - b/33408548 for more details.\",\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ]\n - \ },\n \"eirinRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ],\n \"enum\": - [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\"\n - \ },\n \"kmrbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enum\": [\n - \ \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ]\n },\n \"fpbRatingReasons\": - {\n \"items\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"South Africa rating content descriptors.\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"type\": \"string\"\n },\n \"type\": - \"array\",\n \"description\": \"Reasons that explain why the video - received its FPB (South Africa) rating.\"\n },\n \"rteRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Ireland's - Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enum\": [\n \"rteUnspecified\",\n - \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n - \ \"rteUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"djctqRatingReasons\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ]\n },\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\"\n - \ },\n \"czfilmRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n - \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n - \ \"czfilmUnrated\"\n ],\n \"description\": \"The - video's rating in the Czech Republic.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ]\n },\n \"mccaaRating\": - {\n \"description\": \"The video's rating from Malta's Film Age-Classification - Board.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ]\n },\n \"fcoRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"I\",\n - \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Hong Kong's Office for Film, Newspaper and Article - Administration.\",\n \"enum\": [\n \"fcoUnspecified\",\n - \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n - \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n - \ ]\n },\n \"mpaaRating\": {\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"type\": - \"string\",\n \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n - \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n - \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n - \ \"! X\",\n \"\"\n ]\n },\n \"icaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - Spain) - rating.\",\n \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ]\n },\n \"skfilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Slovakia.\",\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ]\n },\n \"bmukkRating\": - {\n \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ],\n \"description\": \"The - video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ]\n - \ },\n \"tvpgRating\": {\n \"description\": \"The video's - TV Parental Guidelines (TVPG) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"fmocRating\": {\n \"description\": \"This property - has been deprecated. Use the contentDetails.contentRating.cncRating instead.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"E\",\n \"\"\n ],\n - \ \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ]\n },\n \"eefilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n - \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n - \ \"K-16\",\n \"\"\n ],\n \"enum\": - [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n \"eefilmL\",\n - \ \"eefilmMs6\",\n \"eefilmK6\",\n \"eefilmMs12\",\n - \ \"eefilmK12\",\n \"eefilmK14\",\n \"eefilmK16\",\n - \ \"eefilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Estonia.\"\n },\n - \ \"cscfRating\": {\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"lsfRating\": {\n \"description\": - \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"enum\": - [\n \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"csaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ],\n \"description\": \"The video's rating from France's - Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ]\n },\n - \ \"russiaRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"russiaUnspecified\",\n \"russia0\",\n \"russia6\",\n - \ \"russia12\",\n \"russia16\",\n \"russia18\",\n - \ \"russiaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"description\": \"The video's National Film Registry of the Russian - Federation (MKRF - Russia) rating.\"\n },\n \"ifcoRating\": - {\n \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n - \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n - \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n - \ \"ifco18\",\n \"ifcoUnrated\"\n ],\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n - \ ]\n },\n \"oflcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"description\": \"The video's Office of Film and - Literature Classification (OFLC - New Zealand) rating.\",\n \"enum\": - [\n \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n - \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n - \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n - \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n - \ ],\n \"type\": \"string\"\n },\n \"cbfcRating\": - {\n \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n - \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n - \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n - \ \"cbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Central Board of Film Certification - (CBFC - India) rating.\"\n },\n \"acbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"mpaatRating\": - {\n \"description\": \"The rating system for trailer, DVD, and Ad - in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ],\n \"type\": - \"string\"\n },\n \"nkclvRating\": {\n \"enum\": [\n - \ \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n - \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n - \ \"nkclvUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Nacion\xE3lais Kino - centrs (National Film Centre of Latvia).\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"fskRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"fskUnspecified\",\n \"fsk0\",\n \"fsk6\",\n - \ \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n \"fskUnrated\"\n - \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle - der Filmwirtschaft (FSK - Germany) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ]\n },\n \"chfilmRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ]\n },\n \"agcomRating\": {\n \"enum\": [\n - \ \"agcomUnspecified\",\n \"agcomT\",\n \"agcomVm14\",\n - \ \"agcomVm18\",\n \"agcomUnrated\"\n ],\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ]\n },\n \"mccypRating\": {\n \"enum\": - [\n \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n - \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ]\n },\n \"grfilmRating\": - {\n \"description\": \"The video's rating in Greece.\",\n \"type\": - \"string\",\n \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n - \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n - \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n - \ \"grfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ]\n },\n \"nbcRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Maldives - National Bureau of Classification.\",\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ]\n },\n \"mdaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mdaUnspecified\",\n - \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n - \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n - \ \"mdaUnrated\"\n ],\n \"description\": \"The - video's rating from Singapore's Media Development Authority (MDA) and, specifically, - it's Board of Film Censors (BFC).\"\n },\n \"rtcRating\": {\n - \ \"type\": \"string\",\n \"description\": \"The video's - General Directorate of Radio, Television and Cinematography (Mexico) rating.\",\n - \ \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ]\n },\n \"djctqRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ]\n },\n - \ \"incaaRating\": {\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\"\n },\n \"mtrcbRating\": {\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n - \ \"X\",\n \"\"\n ]\n },\n \"nbcplRating\": - {\n \"description\": \"The video's rating in Poland.\",\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"kijkwijzerRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's NICAM/Kijkwijzer rating from the - Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\",\n - \ \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ]\n },\n \"fcbmRating\": {\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"enum\": - [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"cncRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Rating system in France - Commission de classification - cinematographique\"\n },\n \"cicfRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"description\": - \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\"\n - \ },\n \"bfvcRating\": {\n \"description\": \"The video's - rating from Thailand's Board of Film and Video Censors.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ]\n },\n \"ilfilmRating\": - {\n \"description\": \"The video's rating in Israel.\",\n \"enum\": - [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n - \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"egfilmRating\": {\n - \ \"description\": \"The video's rating in Egypt.\",\n \"enum\": - [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n \"egfilm18\",\n - \ \"egfilmBn\",\n \"egfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"catvfrRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"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.\",\n \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ]\n },\n \"mcstRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating system for Vietnam - MCST\",\n - \ \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ]\n },\n \"nfvcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Nigeria's National Film and Video Censors Board.\",\n \"type\": - \"string\",\n \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ]\n },\n \"smsaRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Statens medier\xE5d (Sweden's National Media Council).\",\n \"enum\": - [\n \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"All - ages\",\n \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ]\n },\n \"bbfcRating\": {\n \"enum\": [\n - \ \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - British Board of Film Classification (BBFC) rating.\"\n },\n \"nmcRating\": - {\n \"description\": \"The National Media Council ratings system - for United Arab Emirates.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"PG-15\",\n - \ \"15+\",\n \"18+\",\n \"18TC\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ]\n },\n - \ \"kfcbRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Kenya - Film Classification Board.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GE\",\n \"PG\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n }\n },\n \"type\": \"object\"\n - \ },\n \"ThirdPartyLinkListResponse\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"type\": \"array\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"ThirdPartyLinkSnippet\": {\n \"id\": \"ThirdPartyLinkSnippet\",\n - \ \"description\": \"Basic information about a third party account link, - including its type and type-specific information.\",\n \"properties\": - {\n \"type\": {\n \"description\": \"Type of the link named - after the entities that are being linked.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\"\n },\n \"channelToStoreLink\": - {\n \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"TestItem\": - {\n \"properties\": {\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"gaia\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"TestItem\",\n \"type\": \"object\"\n },\n - \ \"VideoSnippet\": {\n \"id\": \"VideoSnippet\",\n \"properties\": - {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ },\n \"tags\": {\n \"type\": \"array\",\n \"description\": - \"A list of keyword tags associated with the video. Tags may contain spaces.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The video's title. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the videos's default snippet.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"defaultAudioLanguage\": {\n - \ \"type\": \"string\",\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the video - belongs to.\"\n },\n \"liveBroadcastContent\": {\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"description\": \"Indicates - if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" if - the video is not an upcoming/active live broadcast.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ]\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - when the video was uploaded.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"categoryId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube video category associated with the - video.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that the video was uploaded to.\"\n },\n \"localized\": - {\n \"$ref\": \"VideoLocalization\",\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a video, including title, description, uploader, thumbnails - and category.\"\n },\n \"CommentThreadReplies\": {\n \"id\": \"CommentThreadReplies\",\n - \ \"type\": \"object\",\n \"description\": \"Comments written in - (direct or indirect) reply to the top level comment.\",\n \"properties\": - {\n \"comments\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"description\": - \"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.\"\n }\n }\n },\n \"VideoFileDetails\": - {\n \"description\": \"Describes original video file properties, including - technical details about audio and video streams, but also metadata information - like content length, digitization time, or geotagging information.\",\n \"type\": - \"object\",\n \"id\": \"VideoFileDetails\",\n \"properties\": {\n - \ \"fileName\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\"\n },\n \"audioStreams\": - {\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of audio streams contained in the uploaded video file. Each item in the - list contains detailed metadata about an audio stream.\"\n },\n \"fileType\": - {\n \"type\": \"string\",\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"Known video - file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an MP3 - file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"description\": \"The uploaded file's type as detected by YouTube's - video processing engine. Currently, YouTube only processes video files, but - this field is present whether a video file or another type of file was uploaded.\"\n - \ },\n \"durationMs\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The length of the uploaded video in milliseconds.\",\n - \ \"type\": \"string\"\n },\n \"creationTime\": {\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the uploaded video file was created. The value is specified in ISO - 8601 format. Currently, the following ISO 8601 formats are supported: - Date - only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \"\n },\n \"container\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded video file's container format.\"\n - \ },\n \"bitrateBps\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The uploaded video file's combined - (video and audio) bitrate in bits per second.\"\n },\n \"videoStreams\": - {\n \"description\": \"A list of video streams contained in the uploaded - video file. Each item in the list contains detailed metadata about a video - stream.\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"type\": \"array\"\n },\n \"fileSize\": - {\n \"description\": \"The uploaded file's size in bytes. This field - is present whether a video file or another type of file was uploaded.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n }\n - \ }\n },\n \"ChannelSectionLocalization\": {\n \"id\": \"ChannelSectionLocalization\",\n - \ \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for channel section's title.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"ChannelSection localization - setting\",\n \"type\": \"object\"\n },\n \"AccessPolicy\": {\n - \ \"type\": \"object\",\n \"description\": \"Rights management policy - for YouTube resources.\",\n \"properties\": {\n \"exception\": - {\n \"type\": \"array\",\n \"description\": \"A list of - region codes that identify countries where the default policy do not apply.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"allowed\": {\n \"description\": \"The value of allowed - indicates whether the access to the policy is allowed or denied by default.\",\n - \ \"type\": \"boolean\"\n }\n },\n \"id\": \"AccessPolicy\"\n - \ },\n \"ActivityContentDetailsUpload\": {\n \"id\": \"ActivityContentDetailsUpload\",\n - \ \"description\": \"Information about the uploaded video.\",\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoFileDetailsAudioStream\": - {\n \"id\": \"VideoFileDetailsAudioStream\",\n \"properties\": {\n - \ \"vendor\": {\n \"description\": \"A value that uniquely - identifies a video vendor. Typically, the value is a four-letter vendor code.\",\n - \ \"type\": \"string\"\n },\n \"bitrateBps\": {\n \"description\": - \"The audio stream's bitrate, in bits per second.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"channelCount\": - {\n \"type\": \"integer\",\n \"description\": \"The number - of audio channels that the stream contains.\",\n \"format\": \"uint32\"\n - \ },\n \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The audio codec that the stream uses.\"\n }\n },\n \"description\": - \"Information about an audio stream.\",\n \"type\": \"object\"\n },\n - \ \"ActivityContentDetailsFavorite\": {\n \"description\": \"Information - about a video that was marked as a favorite video.\",\n \"id\": \"ActivityContentDetailsFavorite\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource that was marked as - a favorite.\"\n }\n }\n },\n \"Entity\": {\n \"type\": - \"object\",\n \"id\": \"Entity\",\n \"properties\": {\n \"typeId\": - {\n \"type\": \"string\"\n },\n \"url\": {\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"CommentListResponse\": {\n \"id\": - \"CommentListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"eventId\": {\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - comments that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Comment\"\n }\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"default\": \"youtube#commentListResponse\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelStatus\": {\n \"id\": \"ChannelStatus\",\n - \ \"properties\": {\n \"longUploadsStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\"\n },\n \"isLinked\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\",\n \"description\": \"Privacy status of the channel.\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"description\": \"JSON template for the status - part of a channel.\",\n \"type\": \"object\"\n },\n \"LiveChatModeratorSnippet\": - {\n \"id\": \"LiveChatModeratorSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"moderatorDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - moderator.\"\n },\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the live chat this moderator can act - on.\"\n }\n }\n },\n \"VideoRating\": {\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n },\n - \ \"rating\": {\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\",\n \"description\": - \"Rating of a video.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ]\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic details about rating of a video.\",\n \"id\": \"VideoRating\"\n - \ },\n \"ActivityContentDetailsSocial\": {\n \"id\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"Details about a social network post.\",\n \"type\": - \"object\",\n \"properties\": {\n \"author\": {\n \"description\": - \"The author of the social network post.\",\n \"type\": \"string\"\n - \ },\n \"referenceUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL of the social network post.\"\n },\n - \ \"imageUrl\": {\n \"description\": \"An image of the post's - author.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\",\n \"$ref\": - \"ResourceId\"\n },\n \"type\": {\n \"description\": - \"The name of the social network.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n - \ \"facebook\",\n \"twitter\"\n ]\n }\n - \ }\n },\n \"CommentThreadListResponse\": {\n \"id\": \"CommentThreadListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"default\": \"youtube#commentThreadListResponse\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"description\": \"A list of comment threads that match the request - criteria.\",\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"VideoCategoryListResponse\": {\n \"id\": \"VideoCategoryListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoCategory\"\n },\n - \ \"description\": \"A list of video categories that can be associated - with YouTube videos. In this map, the video category ID is the map key, and - its value is the corresponding videoCategory resource.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#videoCategoryListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveStream\": - {\n \"type\": \"object\",\n \"id\": \"LiveStream\",\n \"description\": - \"A live stream describes a live ingestion point.\",\n \"properties\": - {\n \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n \"description\": - \"The status object contains information about live stream's status.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\",\n - \ \"$ref\": \"LiveStreamSnippet\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveStream\\\".\",\n \"default\": \"youtube#liveStream\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n - \ \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\"\n },\n - \ \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the stream.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.update\"\n ]\n }\n - \ }\n }\n },\n \"ResourceId\": {\n \"type\": \"object\",\n - \ \"id\": \"ResourceId\",\n \"properties\": {\n \"playlistId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the referred resource, if that resource - is a playlist. This property is only present if the resourceId.kind value - is youtube#playlist.\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"The type of the API resource.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"A resource id is a generic reference that - points to another YouTube resource.\"\n },\n \"SuperChatEventSnippet\": - {\n \"properties\": {\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"Channel id where the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"supporterDetails\": {\n \"description\": \"Details - about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n - \ \"messageType\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The tier for the paid message, which - is based on the amount of money spent to purchase the message.\"\n },\n - \ \"createdAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the event occurred.\",\n \"format\": \"date-time\"\n - \ },\n \"displayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the purchase - amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the - given language.\"\n },\n \"commentText\": {\n \"type\": - \"string\",\n \"description\": \"The text contents of the comment - left by the user.\"\n },\n \"superStickerMetadata\": {\n \"$ref\": - \"SuperStickerMetadata\",\n \"description\": \"If this event is a - Super Sticker event, this field will contain metadata about the Super Sticker.\"\n - \ },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"description\": \"The purchase amount, in micros of the purchase - currency. e.g., 1 is represented as 1000000.\",\n \"format\": \"uint64\"\n - \ },\n \"isSuperStickerEvent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"True if this event is a Super Sticker event.\"\n - \ }\n },\n \"id\": \"SuperChatEventSnippet\",\n \"type\": - \"object\"\n },\n \"LiveChatBan\": {\n \"description\": \"A `__liveChatBan__` - resource represents a ban for a YouTube live chat.\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the ban.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveChatBanSnippet\",\n \"description\": \"The `snippet` object - contains basic details about the ban.\"\n },\n \"kind\": {\n - \ \"default\": \"youtube#liveChatBan\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatBan\"\n },\n \"I18nLanguageSnippet\": {\n \"properties\": - {\n \"name\": {\n \"description\": \"The human-readable name - of the language in the language itself.\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"description\": \"A short BCP-47 - code that uniquely identifies a language.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Basic details about an i18n - language, such as language code and human-readable name.\",\n \"id\": - \"I18nLanguageSnippet\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsComment\": - {\n \"description\": \"Information about a resource that received a comment.\",\n - \ \"id\": \"ActivityContentDetailsComment\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource associated with the comment.\"\n }\n }\n - \ },\n \"LocalizedString\": {\n \"type\": \"object\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n },\n \"language\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LocalizedString\"\n - \ },\n \"LiveChatMessageListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageListResponse\",\n \"properties\": {\n - \ \"offlineAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the underlying stream went offline.\",\n \"format\": - \"date-time\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatMessageListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pollingIntervalMillis\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The amount of time the client should wait before polling again.\"\n }\n - \ }\n },\n \"ChannelConversionPings\": {\n \"type\": \"object\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\",\n \"id\": - \"ChannelConversionPings\",\n \"properties\": {\n \"pings\": {\n - \ \"description\": \"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.\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n },\n \"type\": \"array\"\n }\n - \ }\n },\n \"SubscriptionSubscriberSnippet\": {\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel ID of the subscriber.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"Thumbnails - for this subscriber.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The description of the subscriber.\"\n - \ },\n \"title\": {\n \"description\": \"The title of - the subscriber.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Basic details about a subscription's subscriber including - title, description, channel ID and thumbnails.\",\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"type\": \"object\"\n },\n \"ChannelSectionSnippet\": {\n \"properties\": - {\n \"position\": {\n \"type\": \"integer\",\n \"description\": - \"The position of the channel section in the channel.\",\n \"format\": - \"uint32\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the channel section's default title and description.\",\n - \ \"type\": \"string\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"description\": \"The - type of the channel section.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that published the channel section.\",\n - \ \"type\": \"string\"\n },\n \"localized\": {\n \"$ref\": - \"ChannelSectionLocalization\",\n \"description\": \"Localized title, - read-only.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel section's title for multiple_playlists - and multiple_channels.\"\n },\n \"style\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"description\": \"The style of the channel section.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Basic details - about a channel section, including title, style and position.\",\n \"id\": - \"ChannelSectionSnippet\"\n },\n \"VideoAbuseReport\": {\n \"type\": - \"object\",\n \"id\": \"VideoAbuseReport\",\n \"properties\": {\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the video.\",\n \"type\": \"string\"\n },\n - \ \"comments\": {\n \"type\": \"string\",\n \"description\": - \"Additional comments regarding the abuse report.\"\n },\n \"language\": - {\n \"type\": \"string\",\n \"description\": \"The language - that the content was viewed in.\"\n },\n \"secondaryReasonId\": - {\n \"type\": \"string\",\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\"\n },\n \"reasonId\": {\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"VideoTopicDetails\": {\n \"description\": \"Freebase - topic information related to the video.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"topicIds\": {\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"topicCategories\": {\n \"type\": - \"array\",\n \"description\": \"A list of Wikipedia URLs that provide - a high-level description of the video's content.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"relevantTopicIds\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Similar to topic_id, - except that these topics are merely relevant to the video. These are topics - that may be mentioned in, or appear in the video. You can retrieve information - about each topic using Freebase Topic API.\"\n }\n },\n \"id\": - \"VideoTopicDetails\"\n },\n \"InvideoBranding\": {\n \"id\": \"InvideoBranding\",\n - \ \"description\": \"LINT.IfChange Describes an invideo branding.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"imageUrl\": - {\n \"description\": \"The url of the uploaded image. Only used in - apiary to api communication.\",\n \"type\": \"string\"\n },\n - \ \"position\": {\n \"description\": \"The spatial position - within the video where the branding watermark will be displayed.\",\n \"$ref\": - \"InvideoPosition\"\n },\n \"timing\": {\n \"description\": - \"The temporal position within the video where watermark will be displayed.\",\n - \ \"$ref\": \"InvideoTiming\"\n },\n \"imageBytes\": - {\n \"description\": \"The bytes the uploaded image. Only used in - api to youtube communication.\",\n \"type\": \"string\",\n \"format\": - \"byte\"\n },\n \"targetChannelId\": {\n \"description\": - \"The channel to which this branding links. If not present it defaults to - the current channel.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"PlaylistStatus\": {\n \"properties\": {\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"description\": \"The playlist's - privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"public\",\n \"unlisted\",\n \"private\"\n - \ ]\n }\n },\n \"type\": \"object\",\n \"id\": - \"PlaylistStatus\"\n },\n \"LiveBroadcast\": {\n \"properties\": - {\n \"statistics\": {\n \"description\": \"The statistics - object contains info about the event's current stats. These include concurrent - viewers and total chat count. Statistics can change (in either direction) - during the lifetime of an event. Statistics are only returned while the event - is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveBroadcast\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the broadcast.\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveBroadcastSnippet\",\n \"description\": - \"The snippet object contains basic details about the event, including its - title, description, start time, and end time.\"\n }\n },\n \"id\": - \"LiveBroadcast\",\n \"type\": \"object\",\n \"description\": \"A - *liveBroadcast* resource represents an event that will be streamed, via live - video, on YouTube.\"\n },\n \"MembershipsDurationAtLevel\": {\n \"id\": - \"MembershipsDurationAtLevel\",\n \"type\": \"object\",\n \"properties\": - {\n \"memberSince\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the user became a continuous member for the given - level.\"\n },\n \"level\": {\n \"type\": \"string\",\n - \ \"description\": \"Pricing level ID.\"\n },\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\"\n }\n }\n - \ },\n \"ChannelAuditDetails\": {\n \"id\": \"ChannelAuditDetails\",\n - \ \"properties\": {\n \"contentIdClaimsGoodStanding\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the channel has - any unresolved claims.\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel respects the community guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"The auditDetails object encapsulates - channel data that is relevant for YouTube Partners during the audit process.\"\n - \ },\n \"LiveChatSuperStickerDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatSuperStickerDetails\",\n \"properties\": {\n - \ \"amountMicros\": {\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n },\n \"currency\": - {\n \"description\": \"The currency in which the purchase was made.\",\n - \ \"type\": \"string\"\n },\n \"tier\": {\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n }\n }\n },\n - \ \"VideoAgeGating\": {\n \"properties\": {\n \"restricted\": - {\n \"description\": \"Age-restricted trailers. For redband trailers - and adult-rated video-games. Only users aged 18+ can view the content. The - the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\",\n \"type\": \"boolean\"\n },\n - \ \"alcoholContent\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether or not the video has alcoholic beverage content. Only - users of legal purchasing age in a particular country, as identified by ICAP, - can view the content.\"\n },\n \"videoGameRating\": {\n \"enum\": - [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ],\n \"type\": \"string\",\n \"description\": - \"Video game rating, if any.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"id\": \"VideoAgeGating\",\n \"type\": \"object\"\n - \ },\n \"ChannelBannerResource\": {\n \"id\": \"ChannelBannerResource\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#channelBannerResource\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelBannerResource\\\".\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"url\": {\n \"description\": \"The URL of this - banner image.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\",\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastStatistics\": {\n \"id\": - \"LiveBroadcastStatistics\",\n \"description\": \"Statistics about the - live broadcast. These represent a snapshot of the values at the time of the - request. Statistics are only returned for live broadcasts.\",\n \"properties\": - {\n \"totalChatCount\": {\n \"type\": \"string\",\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\",\n - \ \"format\": \"uint64\"\n },\n \"concurrentViewers\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatTextMessageDetails\": - {\n \"id\": \"LiveChatTextMessageDetails\",\n \"properties\": {\n - \ \"messageText\": {\n \"type\": \"string\",\n \"description\": - \"The user's message.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"PlaylistItemListResponse\": {\n \"properties\": {\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of playlist items that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n - \ }\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n }\n },\n \"id\": \"PlaylistItemListResponse\",\n - \ \"type\": \"object\"\n },\n \"ChannelSectionTargeting\": {\n \"id\": - \"ChannelSectionTargeting\",\n \"properties\": {\n \"countries\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The country the - channel section is targeting.\"\n },\n \"regions\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The region the channel section is targeting.\"\n - \ },\n \"languages\": {\n \"type\": \"array\",\n \"description\": - \"The language the channel section is targeting.\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"type\": - \"object\",\n \"description\": \"ChannelSection targeting setting.\"\n - \ },\n \"I18nRegion\": {\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegion\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the i18n region.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n }\n },\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n - \ \"id\": \"I18nRegion\"\n },\n \"Caption\": {\n \"description\": - \"A *caption* resource represents a YouTube caption track. A caption track - is associated with exactly one YouTube video.\",\n \"properties\": {\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#caption\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the caption track.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n }\n - \ },\n \"id\": \"Caption\",\n \"type\": \"object\"\n },\n - \ \"VideoContentDetails\": {\n \"id\": \"VideoContentDetails\",\n \"type\": - \"object\",\n \"description\": \"Details about the content of a YouTube - Video.\",\n \"properties\": {\n \"caption\": {\n \"enum\": - [\n \"true\",\n \"false\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The value of captions indicates whether the video has captions or not.\",\n - \ \"type\": \"string\"\n },\n \"hasCustomThumbnail\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\"\n },\n \"duration\": - {\n \"type\": \"string\",\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"countryRestriction\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\"\n },\n - \ \"licensedContent\": {\n \"type\": \"boolean\",\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\"\n },\n \"contentRating\": {\n \"description\": - \"Specifies the ratings that the video received under various rating schemes.\",\n - \ \"$ref\": \"ContentRating\"\n },\n \"regionRestriction\": - {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\"\n },\n - \ \"dimension\": {\n \"type\": \"string\",\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\"\n },\n \"definition\": {\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"sd\",\n \"hd\"\n ],\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\"\n },\n \"projection\": - {\n \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"description\": \"Specifies the projection format - of the video.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n }\n }\n - \ },\n \"LiveBroadcastStatus\": {\n \"description\": \"Live broadcast - state.\",\n \"id\": \"LiveBroadcastStatus\",\n \"properties\": {\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"liveBroadcastPriority\": - {\n \"enumDescriptions\": [\n \"\",\n \"Low - priority broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ],\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"type\": \"string\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the broadcast is made for kids or not, decided by YouTube instead of the creator. - This field is read only.\"\n },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's privacy status. Note that the - broadcast represents exactly one YouTube video, so the privacy settings are - identical to those supported for videos. In addition, you can set this field - by modifying the broadcast resource or by setting the privacyStatus field - of the corresponding video resource.\"\n },\n \"recordingStatus\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - recording status.\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ]\n },\n \"lifeCycleStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete - settings\",\n \"Visible only to partner, may need special UI treatment\",\n - \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n - \ \"The broadcast is finished.\",\n \"This broadcast - was removed by admin action\",\n \"Transition into TESTING has - been requested\",\n \"Transition into LIVE has been requested\"\n - \ ],\n \"description\": \"The broadcast's status. The status - can be updated using the API's liveBroadcasts.transition method.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"properties\": {\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level that the viewer - just had joined. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n },\n - \ \"isUpgrade\": {\n \"type\": \"boolean\",\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\"\n }\n }\n - \ },\n \"VideoCategory\": {\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video category.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n },\n \"kind\": {\n \"default\": \"youtube#videoCategory\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategory\\\".\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"VideoCategory\",\n \"description\": \"A *videoCategory* resource identifies - a category that has been or could be associated with uploaded videos.\",\n - \ \"type\": \"object\"\n },\n \"ChannelToStoreLinkDetails\": {\n - \ \"properties\": {\n \"merchantId\": {\n \"type\": \"string\",\n - \ \"description\": \"Google Merchant Center id of the store.\",\n - \ \"format\": \"uint64\"\n },\n \"storeName\": {\n \"type\": - \"string\",\n \"description\": \"Name of the store.\"\n },\n - \ \"storeUrl\": {\n \"type\": \"string\",\n \"description\": - \"Landing page of the store.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"id\": \"ChannelToStoreLinkDetails\"\n - \ },\n \"VideoStatus\": {\n \"description\": \"Basic details about - a video category, such as its localized title. Next Id: 18\",\n \"type\": - \"object\",\n \"id\": \"VideoStatus\",\n \"properties\": {\n \"publicStatsViewable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"privacyStatus\": {\n \"description\": \"The - video's privacy status.\",\n \"type\": \"string\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"uploadStatus\": {\n \"enumDescriptions\": - [\n \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"enum\": - [\n \"uploaded\",\n \"processed\",\n \"failed\",\n - \ \"rejected\",\n \"deleted\"\n ],\n \"type\": - \"string\",\n \"description\": \"The status of the uploaded video.\"\n - \ },\n \"failureReason\": {\n \"description\": \"This - value explains why a video failed to upload. This property is only present - if the uploadStatus property indicates that the upload failed.\",\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ],\n \"enumDescriptions\": [\n \"Unable to convert - video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ],\n \"type\": - \"string\"\n },\n \"rejectionReason\": {\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"description\": \"This value explains why YouTube - rejected an uploaded video. This property is only present if the uploadStatus - property indicates that the upload was rejected.\",\n \"type\": \"string\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"license\": {\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"embeddable\": {\n \"type\": - \"boolean\",\n \"description\": \"This value indicates if the video - can be embedded on another website. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"publishAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the video is scheduled - to publish. It can be set only if the privacy status of the video is private..\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ChannelContentDetails\": - {\n \"properties\": {\n \"relatedPlaylists\": {\n \"type\": - \"object\",\n \"properties\": {\n \"likes\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n },\n \"watchHistory\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"favorites\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s favorite videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n },\n \"watchLater\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch later playlist. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"uploads\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s uploaded videos. Use the videos.insert method to upload new videos - and the videos.delete method to delete previously uploaded videos.\"\n }\n - \ }\n }\n },\n \"id\": \"ChannelContentDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Details about the content - of a channel.\"\n },\n \"LiveChatMessage\": {\n \"id\": \"LiveChatMessage\",\n - \ \"description\": \"A *liveChatMessage* resource represents a chat message - in a YouTube Live Chat.\",\n \"properties\": {\n \"authorDetails\": - {\n \"description\": \"The authorDetails object contains basic details - about the user that posted this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n - \ },\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatMessage\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the message.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveStreamConfigurationIssue\": {\n \"id\": - \"LiveStreamConfigurationIssue\",\n \"type\": \"object\",\n \"properties\": - {\n \"severity\": {\n \"type\": \"string\",\n \"enum\": - [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"description\": \"How severe this issue is to the - stream.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"description\": {\n \"description\": - \"The long-form description of the issue and how to resolve it.\",\n \"type\": - \"string\"\n },\n \"reason\": {\n \"type\": \"string\",\n - \ \"description\": \"The short-form reason for this issue.\"\n },\n - \ \"type\": {\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"description\": \"The kind of error happening.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n }\n },\n \"VideoFileDetailsVideoStream\": - {\n \"id\": \"VideoFileDetailsVideoStream\",\n \"properties\": {\n - \ \"frameRateFps\": {\n \"description\": \"The video stream's - frame rate, in frames per second.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"codec\": {\n \"description\": \"The video codec that the - stream uses.\",\n \"type\": \"string\"\n },\n \"bitrateBps\": - {\n \"description\": \"The video stream's bitrate, in bits per second.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"widthPixels\": {\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\",\n \"type\": - \"integer\"\n },\n \"rotation\": {\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"aspectRatio\": {\n \"format\": - \"double\",\n \"description\": \"The video content's display aspect - ratio, which specifies the aspect ratio in which the video should be displayed.\",\n - \ \"type\": \"number\"\n },\n \"heightPixels\": {\n - \ \"description\": \"The encoded video content's height in pixels.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Information - about a video stream.\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"description\": \"Video processing progress and completion time - estimate.\",\n \"properties\": {\n \"timeLeftMs\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\"\n },\n \"partsTotal\": {\n \"description\": - \"An estimate of the total number of parts that need to be processed for the - video. The number may be updated with more precise estimates while YouTube - processes the video.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"partsProcessed\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of parts of the video - that YouTube has already processed. You can estimate the percentage of the - video that YouTube has already processed by calculating: 100 * parts_processed - / parts_total Note that since the estimated number of parts could increase - without a corresponding increase in the number of parts that have already - been processed, it is possible that the calculated progress could periodically - decrease while YouTube processes a video.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"properties\": - {\n \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the Level at which the viewer is a member. This matches the - `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated - membership gifting message. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\"\n },\n - \ \"gifterChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the user that made the membership gifting purchase. This matches - the `snippet.authorChannelId` of the associated membership gifting message.\"\n - \ },\n \"associatedMembershipGiftingMessageId\": {\n \"description\": - \"The ID of the membership gifting message that is related to this gift membership. - This ID will always refer to a message whose type is 'membershipGiftingEvent'.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamContentDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"isReusable\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the stream is reusable, which means that it can be bound to multiple - broadcasts. It is common for broadcasters to reuse the same stream for many - different broadcasts if those broadcasts occur at different times. If you - set this value to false, then the stream will not be reusable, which means - that it can only be bound to one broadcast. Non-reusable streams differ from - reusable streams in the following ways: - A non-reusable stream can only be - bound to one broadcast. - A non-reusable stream might be deleted by an automated - process after the broadcast ends. - The liveStreams.list method does not list - non-reusable streams if you call the method and set the mine parameter to - true. The only way to use that method to retrieve the resource for a non-reusable - stream is to use the id parameter to identify the stream. \"\n },\n - \ \"closedCaptionsIngestionUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The ingestion URL where the closed captions of - this stream are sent.\"\n }\n },\n \"description\": \"Detailed - settings of a stream.\",\n \"id\": \"LiveStreamContentDetails\"\n },\n - \ \"VideoAbuseReportReasonListResponse\": {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The `visitorId` - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of valid abuse reasons that are used - with `video.ReportAbuse`.\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n },\n \"type\": \"array\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n }\n },\n \"SuperStickerMetadata\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"altTextLanguage\": - {\n \"description\": \"Specifies the localization language in which - the alt text is returned.\",\n \"type\": \"string\"\n },\n - \ \"stickerId\": {\n \"type\": \"string\",\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\"\n - \ },\n \"altText\": {\n \"type\": \"string\",\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\"\n }\n },\n \"id\": \"SuperStickerMetadata\"\n - \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"memberMonth\": {\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level at which the viever is a member. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"userComment\": {\n \"type\": - \"string\",\n \"description\": \"The comment added by the member - to this Member Milestone Chat. This field is empty for messages without a - comment from the member.\"\n }\n },\n \"id\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"PlaylistLocalization\": {\n \"type\": \"object\",\n \"description\": - \"Playlist localization setting\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's description.\"\n },\n \"title\": {\n - \ \"description\": \"The localized strings for playlist's title.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"PlaylistLocalization\"\n - \ },\n \"MembershipsLevelListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"MembershipsLevel\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of pricing levels offered by a creator to the fans.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevelListResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\"\n - \ },\n \"PlaylistPlayer\": {\n \"id\": \"PlaylistPlayer\",\n \"properties\": - {\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that the user subscribed to.\"\n - \ }\n },\n \"description\": \"Information about a channel - that a user subscribed to.\",\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsSubscription\"\n },\n \"VideoListResponse\": - {\n \"type\": \"object\",\n \"id\": \"VideoListResponse\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Video\"\n }\n },\n \"kind\": - {\n \"default\": \"youtube#videoListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelSection\": {\n \"type\": - \"object\",\n \"id\": \"ChannelSection\",\n \"properties\": {\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#channelSection\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelSectionLocalization\"\n - \ }\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\",\n \"$ref\": \"ChannelSectionSnippet\"\n - \ },\n \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n - \ \"description\": \"The targeting object contains basic targeting - settings about the channel section.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ }\n },\n \"LiveChatFanFundingEventDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"properties\": - {\n \"currency\": {\n \"description\": \"The currency in which - the fund was made.\",\n \"type\": \"string\"\n },\n \"amountMicros\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The amount of the fund.\"\n },\n \"userComment\": {\n \"type\": - \"string\",\n \"description\": \"The comment added by the user to - this fan funding event.\"\n },\n \"amountDisplayString\": {\n - \ \"type\": \"string\",\n \"description\": \"A rendered string - that displays the fund amount and currency to the user.\"\n }\n }\n - \ },\n \"SubscriptionSnippet\": {\n \"description\": \"Basic details - about a subscription, including title, description and thumbnails of the subscribed - item.\",\n \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"description\": \"The subscription's details.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The id object contains information about the - channel that the user subscribed to.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.subscriptions.insert\"\n ]\n }\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The subscription's title.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the subscription was created.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the subscriber's channel.\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel that the subscription belongs to.\"\n }\n - \ },\n \"id\": \"SubscriptionSnippet\"\n },\n \"Thumbnail\": - {\n \"description\": \"A thumbnail is an image representing a YouTube - resource.\",\n \"properties\": {\n \"url\": {\n \"type\": - \"string\",\n \"description\": \"The thumbnail image's URL.\"\n },\n - \ \"width\": {\n \"format\": \"uint32\",\n \"description\": - \"(Optional) Width of the thumbnail image.\",\n \"type\": \"integer\"\n - \ },\n \"height\": {\n \"description\": \"(Optional) - Height of the thumbnail image.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"Thumbnail\"\n },\n \"LiveChatBanSnippet\": {\n \"properties\": - {\n \"liveChatId\": {\n \"description\": \"The chat this ban - is pertinent to.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"An invalid ban type.\",\n - \ \"A permanent ban.\",\n \"A temporary ban.\"\n ],\n - \ \"description\": \"The type of ban.\",\n \"enum\": [\n - \ \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"type\": \"string\"\n - \ },\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banDurationSeconds\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The duration - of a ban, only filled if the ban has type TEMPORARY.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatBanSnippet\"\n },\n - \ \"PageInfo\": {\n \"description\": \"Paging details for lists of - resources, including total number of items available and number of resources - returned in a single page.\",\n \"properties\": {\n \"totalResults\": - {\n \"type\": \"integer\",\n \"description\": \"The total - number of results in the result set.\",\n \"format\": \"int32\"\n - \ },\n \"resultsPerPage\": {\n \"type\": \"integer\",\n - \ \"description\": \"The number of results included in the API response.\",\n - \ \"format\": \"int32\"\n }\n },\n \"id\": \"PageInfo\",\n - \ \"type\": \"object\"\n },\n \"InvideoTiming\": {\n \"properties\": - {\n \"type\": {\n \"description\": \"Describes a timing type. - If the value is offsetFromStart, then the offsetMs field represents an offset - from the start of the video. If the value is offsetFromEnd, then the offsetMs - field represents an offset from the end of the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n - \ \"type\": \"string\"\n },\n \"offsetMs\": {\n \"type\": - \"string\",\n \"description\": \"Defines the time at which the promotion - will appear. Depending on the value of type the value of the offsetMs field - will represent a time offset from the start or from the end of the video, - expressed in milliseconds.\",\n \"format\": \"uint64\"\n },\n - \ \"durationMs\": {\n \"description\": \"Defines the duration - in milliseconds for which the promotion should be displayed. If missing, the - client should use the default.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n }\n },\n \"description\": \"Describes a temporal - position of a visual widget inside a video.\",\n \"type\": \"object\",\n - \ \"id\": \"InvideoTiming\"\n },\n \"GeoPoint\": {\n \"description\": - \"Geographical coordinates of a point, in WGS84.\",\n \"id\": \"GeoPoint\",\n - \ \"properties\": {\n \"latitude\": {\n \"description\": - \"Latitude in degrees.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n },\n \"altitude\": {\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n },\n \"longitude\": - {\n \"format\": \"double\",\n \"description\": \"Longitude - in degrees.\",\n \"type\": \"number\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelSnippet\": {\n \"description\": \"Basic - details about a channel, including title, description and thumbnails.\",\n - \ \"properties\": {\n \"publishedAt\": {\n \"description\": - \"The date and time that the channel was created.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel's default title and description.\"\n },\n \"localized\": - {\n \"$ref\": \"ChannelLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"thumbnails\": - {\n \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"description\": {\n \"description\": \"The description - of the channel.\",\n \"type\": \"string\"\n },\n \"country\": - {\n \"type\": \"string\",\n \"description\": \"The country - of the channel.\"\n },\n \"customUrl\": {\n \"description\": - \"The custom url of the channel.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"description\": \"The channel's title.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ChannelSnippet\",\n - \ \"type\": \"object\"\n },\n \"MonitorStreamInfo\": {\n \"id\": - \"MonitorStreamInfo\",\n \"description\": \"Settings and Info of the - monitor stream\",\n \"properties\": {\n \"embedHtml\": {\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\",\n \"type\": - \"string\"\n },\n \"enableMonitorStream\": {\n \"type\": - \"boolean\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"This value determines whether the monitor stream - is enabled for the broadcast. If the monitor stream is enabled, then YouTube - will broadcast the event content on a special stream intended only for the - broadcaster's consumption. The broadcaster can use the stream to review the - event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\"\n },\n \"broadcastStreamDelayMs\": - {\n \"description\": \"If you have set the enableMonitorStream property - to true, then this property determines the length of the live broadcast delay.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n }\n },\n \"type\": \"object\"\n - \ },\n \"CaptionSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"audioTrackType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of audio track associated with the caption track.\",\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"type\": \"string\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify the video associated with the caption track. - @mutable youtube.captions.insert\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"isCC\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the track contains - closed captions for the deaf and hard of hearing. The default value is false.\"\n - \ },\n \"lastUpdated\": {\n \"description\": \"The date - and time when the caption track was last updated.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"isDraft\": - {\n \"type\": \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n },\n \"name\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The name of the - caption track. The name is intended to be visible to the user as an option - during playback.\",\n \"type\": \"string\"\n },\n \"isLarge\": - {\n \"description\": \"Indicates whether the caption track uses large - text for the vision-impaired. The default value is false.\",\n \"type\": - \"boolean\"\n },\n \"language\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the caption track. The property - value is a BCP-47 language tag.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n }\n - \ },\n \"isAutoSynced\": {\n \"description\": \"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.\",\n - \ \"type\": \"boolean\"\n },\n \"failureReason\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"unknownFormat\",\n - \ \"unsupportedFormat\",\n \"processingFailed\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The reason that - YouTube failed to process the caption track. This property is only present - if the state property's value is failed.\"\n },\n \"isEasyReader\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"status\": {\n \"enum\": [\n \"serving\",\n - \ \"syncing\",\n \"failed\"\n ],\n \"type\": - \"string\",\n \"description\": \"The caption track's status.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"trackKind\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"description\": \"The caption track's type.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about a caption track, such as its language and name.\",\n - \ \"id\": \"CaptionSnippet\"\n },\n \"CommentSnippet\": {\n \"properties\": - {\n \"authorChannelUrl\": {\n \"type\": \"string\",\n \"description\": - \"Link to the author's YouTube channel, if any.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the comment was originally - published.\"\n },\n \"canRate\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the current viewer can rate this comment.\"\n - \ },\n \"updatedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the comment - was last updated.\"\n },\n \"textOriginal\": {\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"textDisplay\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"authorChannelId\": {\n \"$ref\": - \"CommentSnippetAuthorChannelId\"\n },\n \"channelId\": {\n - \ \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"likeCount\": {\n \"description\": - \"The total number of likes this comment has received.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"videoId\": - {\n \"description\": \"The ID of the video the comment refers to, - if any.\",\n \"type\": \"string\"\n },\n \"authorDisplayName\": - {\n \"description\": \"The name of the user who posted the comment.\",\n - \ \"type\": \"string\"\n },\n \"parentId\": {\n \"type\": - \"string\",\n \"description\": \"The unique id of the parent comment, - only set for replies.\"\n },\n \"authorProfileImageUrl\": {\n - \ \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"moderationStatus\": - {\n \"description\": \"The comment's moderation status. Will not - be set if the comments were requested through the id filter.\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ]\n },\n - \ \"viewerRating\": {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n }\n },\n \"id\": \"CommentSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a comment, such as its author and text.\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ },\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label for this abuse report secondary reason.\"\n }\n - \ },\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"type\": - \"object\"\n },\n \"ChannelTopicDetails\": {\n \"id\": \"ChannelTopicDetails\",\n - \ \"description\": \"Freebase topic information related to the channel.\",\n - \ \"properties\": {\n \"topicIds\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of Freebase topic IDs associated with - the channel. You can retrieve information about each topic using the Freebase - Topic API.\"\n },\n \"topicCategories\": {\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"IngestionInfo\": - {\n \"properties\": {\n \"rtmpsIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\"\n },\n \"streamName\": {\n \"type\": \"string\",\n - \ \"description\": \"The stream name that YouTube assigns to the video - stream.\"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of backupIngestionAddress in order - to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": - \"string\"\n },\n \"ingestionAddress\": {\n \"description\": - \"The primary ingestion URL that you should use to stream video to YouTube. - You must stream video to this URL. Depending on which application or tool - you use to encode your video stream, you may need to enter the stream URL - and stream name separately or you may need to concatenate them in the following - format: *STREAM_URL/STREAM_NAME* \",\n \"type\": \"string\"\n },\n - \ \"backupIngestionAddress\": {\n \"description\": \"The backup - ingestion URL that you should use to stream video to YouTube. You have the - option of simultaneously streaming the content that you are sending to the - ingestionAddress to this URL.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Describes information necessary for ingesting - an RTMP, HTTP, or SRT stream.\",\n \"type\": \"object\",\n \"id\": - \"IngestionInfo\"\n },\n \"Cuepoint\": {\n \"id\": \"Cuepoint\",\n - \ \"description\": \"Note that there may be a 5-second end-point resolution - issue. For instance, if a cuepoint comes in for 22:03:27, we may stuff the - cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact of HLS.\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"walltimeMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The wall clock time at which the - cuepoint should be inserted. Only one of insertion_offset_time_ms and walltime_ms - may be set at a time.\"\n },\n \"insertionOffsetTimeMs\": {\n - \ \"type\": \"string\",\n \"description\": \"The time when - the cuepoint should be inserted by offset to the broadcast actual start time.\",\n - \ \"format\": \"int64\"\n },\n \"cueType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ],\n - \ \"type\": \"string\"\n },\n \"durationSecs\": {\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The duration of this cuepoint.\"\n },\n \"id\": {\n \"description\": - \"The identifier for cuepoint resource.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"properties\": {\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"eventId\": {\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": - \"A list of moderators that match the request criteria.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatModeratorListResponse\"\n - \ },\n \"ChannelStatistics\": {\n \"id\": \"ChannelStatistics\",\n - \ \"description\": \"Statistics about a channel: number of subscribers, - number of videos in the channel, etc.\",\n \"properties\": {\n \"viewCount\": - {\n \"description\": \"The number of times the channel has been viewed.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"subscriberCount\": {\n \"description\": \"The number of - subscribers that the channel has.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"hiddenSubscriberCount\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the number of subscribers - is shown for this user.\"\n },\n \"videoCount\": {\n \"description\": - \"The number of videos uploaded to the channel.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"commentCount\": {\n - \ \"description\": \"The number of comments for the channel.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"Information about a new playlist item.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"playlistId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"playlistItemId\": {\n \"description\": - \"ID of the item within the playlist.\",\n \"type\": \"string\"\n - \ },\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information about the resource that was added to the playlist.\",\n - \ \"$ref\": \"ResourceId\"\n }\n }\n },\n \"PlaylistContentDetails\": - {\n \"id\": \"PlaylistContentDetails\",\n \"properties\": {\n \"itemCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveStreamHealthStatus\": {\n \"properties\": - {\n \"configurationIssues\": {\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n },\n \"description\": - \"The configurations issues on this stream\",\n \"type\": \"array\"\n - \ },\n \"lastUpdateTimeSeconds\": {\n \"description\": - \"The last time this status was updated (in seconds)\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"status\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The status code of this stream\",\n \"enum\": [\n \"good\",\n - \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveStreamHealthStatus\"\n },\n \"LiveStreamStatus\": - {\n \"type\": \"object\",\n \"properties\": {\n \"streamStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"healthStatus\": {\n \"$ref\": - \"LiveStreamHealthStatus\",\n \"description\": \"The health status - of the stream.\"\n }\n },\n \"id\": \"LiveStreamStatus\",\n - \ \"description\": \"Brief description of the live stream status.\"\n - \ },\n \"PlaylistListResponse\": {\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - playlists that match the request criteria\",\n \"items\": {\n \"$ref\": - \"Playlist\"\n }\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlistListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n - \ }\n },\n \"id\": \"PlaylistListResponse\",\n \"type\": - \"object\"\n },\n \"Channel\": {\n \"description\": \"A *channel* - resource contains information about a YouTube channel.\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"default\": \"youtube#channel\",\n \"type\": \"string\"\n - \ },\n \"contentOwnerDetails\": {\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"topicDetails\": {\n \"description\": \"The - topicDetails object encapsulates information about Freebase topics associated - with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n - \ \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n \"description\": - \"The statistics object encapsulates statistics for the channel.\"\n },\n - \ \"brandingSettings\": {\n \"$ref\": \"ChannelBrandingSettings\",\n - \ \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel, such as its - title, description, and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n - \ },\n \"localizations\": {\n \"description\": \"Localizations - for different languages\",\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n }\n },\n - \ \"status\": {\n \"$ref\": \"ChannelStatus\",\n \"description\": - \"The status object encapsulates information about the privacy status of the - channel.\"\n },\n \"conversionPings\": {\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"auditDetails\": - {\n \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\",\n - \ \"$ref\": \"ChannelAuditDetails\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ChannelContentDetails\",\n \"description\": - \"The contentDetails object encapsulates information about the channel's content.\"\n - \ }\n },\n \"id\": \"Channel\",\n \"type\": \"object\"\n - \ },\n \"ThumbnailSetResponse\": {\n \"id\": \"ThumbnailSetResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n \"default\": - \"youtube#thumbnailSetResponse\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"ThumbnailDetails\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of thumbnails.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n }\n },\n \"VideoProcessingDetails\": - {\n \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\",\n \"properties\": {\n \"processingFailureReason\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ],\n \"description\": \"The reason - that YouTube failed to process the video. This property will only have a value - if the processingStatus property's value is failed.\",\n \"type\": - \"string\"\n },\n \"processingProgress\": {\n \"$ref\": - \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n },\n \"processingStatus\": - {\n \"type\": \"string\",\n \"description\": \"The video's - processing status. This value indicates whether YouTube was able to process - the video or if the video is still being processed.\",\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"thumbnailsAvailability\": {\n \"description\": - \"This value indicates whether thumbnail images have been generated for the - video.\",\n \"type\": \"string\"\n },\n \"tagSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether keyword (tag) - suggestions are available for the video. Tags can be added to a video's metadata - to make it easier for other users to find the video. You can retrieve these - suggestions by requesting the suggestions part in your videos.list() request.\",\n - \ \"type\": \"string\"\n },\n \"editorSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether video editing suggestions, which might improve video quality - or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\"\n },\n \"processingIssuesAvailability\": {\n \"description\": - \"This value indicates whether the video processing engine has generated suggestions - that might improve YouTube's ability to process the the video, warnings that - explain video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"fileDetailsAvailability\": - {\n \"description\": \"This value indicates whether file details - are available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoProcessingDetails\",\n - \ \"type\": \"object\"\n },\n \"MembershipsDuration\": {\n \"id\": - \"MembershipsDuration\",\n \"type\": \"object\",\n \"properties\": - {\n \"memberTotalDurationMonths\": {\n \"description\": \"The - cumulative time the user has been a member across all levels in complete months - (the time is rounded down to the nearest integer).\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n },\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member across all levels.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"SearchResult\": {\n \"description\": \"A search - result contains information about a YouTube video, channel, or playlist that - matches the search parameters specified in an API request. While a search - result points to a uniquely identifiable resource, like a video, it does not - have its own persistent data.\",\n \"id\": \"SearchResult\",\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#searchResult\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about a search result, such as its title or description. For - example, if the search result is a video, then the title will be the video's - title and the description will be the video's description.\",\n \"$ref\": - \"SearchResultSnippet\"\n },\n \"id\": {\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\",\n \"$ref\": \"ResourceId\"\n - \ }\n }\n },\n \"Activity\": {\n \"properties\": {\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#activity\"\n },\n \"contentDetails\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetails\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the activity, including - the activity's type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"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.\",\n - \ \"id\": \"Activity\"\n },\n \"SearchResultSnippet\": {\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"A description of the search result.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - creation date and time of the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the search result. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"The title of the channel that published - the resource that the search result identifies.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the search result.\"\n },\n \"liveBroadcastContent\": {\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ],\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The value that YouTube uses to uniquely - identify the channel that published the resource that the search result identifies.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"SearchResultSnippet\",\n - \ \"description\": \"Basic details about a search result, including title, - description and thumbnails of the item referenced by the search result.\"\n - \ },\n \"Video\": {\n \"description\": \"A *video* resource represents - a YouTube video.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"suggestions\": {\n \"description\": \"The suggestions object - encapsulates suggestions that identify opportunities to improve the video - quality or the metadata for the uploaded video. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the video's uploading, processing, and privacy statuses.\",\n - \ \"$ref\": \"VideoStatus\"\n },\n \"projectDetails\": - {\n \"$ref\": \"VideoProjectDetails\",\n \"description\": - \"The projectDetails object contains information about the project specific - video metadata. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\"\n },\n \"ageGating\": {\n \"description\": - \"Age restriction details related to a video. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoAgeGating\"\n },\n - \ \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n \"description\": - \"The snippet object contains basic details about the video, such as its title, - description, and category.\"\n },\n \"statistics\": {\n \"$ref\": - \"VideoStatistics\",\n \"description\": \"The statistics object contains - statistics about the video.\"\n },\n \"contentDetails\": {\n - \ \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"topicDetails\": - {\n \"$ref\": \"VideoTopicDetails\",\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#video\\\".\",\n \"default\": \"youtube#video\"\n - \ },\n \"monetizationDetails\": {\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\",\n \"$ref\": \"VideoMonetizationDetails\"\n - \ },\n \"player\": {\n \"description\": \"The player - object contains information that you would use to play the video in an embedded - player.\",\n \"$ref\": \"VideoPlayer\"\n },\n \"fileDetails\": - {\n \"$ref\": \"VideoFileDetails\",\n \"description\": \"The - fileDetails object encapsulates information about the video file that was - uploaded to YouTube, including the file's resolution, duration, audio and - video codecs, stream bitrates, and more. This data can only be retrieved by - the video owner.\"\n },\n \"processingDetails\": {\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoProcessingDetails\"\n },\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\"\n },\n \"recordingDetails\": - {\n \"$ref\": \"VideoRecordingDetails\",\n \"description\": - \"The recordingDetails object encapsulates information about the location, - date and address where the video was recorded.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"Video\"\n },\n \"LiveStreamListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"description\": \"A list of live streams that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveStream\"\n }\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"default\": \"youtube#liveStreamListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n }\n },\n \"id\": - \"LiveStreamListResponse\"\n },\n \"MemberListResponse\": {\n \"properties\": - {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Member\"\n },\n - \ \"description\": \"A list of members that match the request criteria.\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"MemberListResponse\",\n \"type\": - \"object\"\n },\n \"LiveBroadcastListResponse\": {\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#liveBroadcastListResponse\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"items\": {\n \"description\": - \"A list of broadcasts that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n - \ }\n }\n }\n },\n \"ActivityListResponse\": {\n - \ \"type\": \"object\",\n \"id\": \"ActivityListResponse\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"default\": \"youtube#activityListResponse\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Activity\"\n }\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"VideoPlayer\": {\n \"type\": \"object\",\n \"description\": - \"Player to be used for a video playback.\",\n \"id\": \"VideoPlayer\",\n - \ \"properties\": {\n \"embedHtml\": {\n \"type\": \"string\",\n - \ \"description\": \"An \\u003ciframe\\u003e tag that embeds a player - that will play the video.\"\n },\n \"embedHeight\": {\n \"type\": - \"string\",\n \"format\": \"int64\"\n },\n \"embedWidth\": - {\n \"format\": \"int64\",\n \"description\": \"The embed - width\",\n \"type\": \"string\"\n }\n }\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"retractedMessageId\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"AbuseReport\": {\n \"properties\": {\n \"abuseTypes\": - {\n \"items\": {\n \"$ref\": \"AbuseType\"\n },\n - \ \"type\": \"array\"\n },\n \"relatedEntities\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n }\n },\n \"subject\": {\n \"$ref\": - \"Entity\"\n },\n \"description\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"AbuseReport\"\n - \ },\n \"ThirdPartyLinkStatus\": {\n \"properties\": {\n \"linkStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"unknown\",\n - \ \"failed\",\n \"pending\",\n \"linked\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"id\": - \"ThirdPartyLinkStatus\",\n \"description\": \"The third-party link status - object contains information about the status of the link.\",\n \"type\": - \"object\"\n },\n \"AbuseType\": {\n \"id\": \"AbuseType\",\n \"type\": - \"object\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\"\n }\n }\n },\n \"VideoLiveStreamingDetails\": - {\n \"description\": \"Details about the live streaming metadata.\",\n - \ \"properties\": {\n \"actualEndTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The time that the broadcast actually - ended. This value will not be available until the broadcast is over.\",\n - \ \"type\": \"string\"\n },\n \"activeLiveChatId\": - {\n \"description\": \"The ID of the currently active live chat attached - to this video. This field is filled only if the video is a currently live - broadcast that has live chat. Once the broadcast transitions to complete this - field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\",\n \"type\": \"string\"\n - \ },\n \"actualStartTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The time - that the broadcast actually started. This value will not be available until - the broadcast begins.\"\n },\n \"concurrentViewers\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n },\n - \ \"scheduledEndTime\": {\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast is scheduled to end. If the value is empty or - the property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"format\": \"date-time\"\n },\n \"scheduledStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast is scheduled to begin.\"\n - \ }\n },\n \"id\": \"VideoLiveStreamingDetails\",\n \"type\": - \"object\"\n },\n \"ChannelProfileDetails\": {\n \"id\": \"ChannelProfileDetails\",\n - \ \"properties\": {\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The YouTube channel ID.\",\n \"type\": - \"string\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n },\n - \ \"profileImageUrl\": {\n \"description\": \"The channels's - avatar URL.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"CommentSnippetAuthorChannelId\": {\n \"description\": - \"The id of the author's YouTube channel, if any.\",\n \"type\": \"object\",\n - \ \"id\": \"CommentSnippetAuthorChannelId\",\n \"properties\": {\n - \ \"value\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"I18nRegionListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\",\n - \ \"items\": {\n \"$ref\": \"I18nRegion\"\n }\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"default\": \"youtube#i18nRegionListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"id\": \"I18nRegionListResponse\"\n },\n \"Playlist\": {\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - status information for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the playlist.\",\n \"type\": \"string\"\n - \ },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"description\": \"Localizations for different languages\"\n - \ },\n \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist, such as its title and description.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"default\": \"youtube#playlist\"\n },\n \"player\": - {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": \"The - player object contains information that you would use to play the playlist - in an embedded player.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information like video count.\",\n \"$ref\": - \"PlaylistContentDetails\"\n }\n },\n \"description\": \"A - *playlist* resource represents a YouTube playlist. A playlist is a collection - of videos that can be viewed sequentially and shared with other users. A playlist - can contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"id\": \"Playlist\"\n },\n - \ \"PlaylistItem\": {\n \"description\": \"A *playlistItem* resource - identifies another resource, such as a video, that is included in a playlist. - In addition, the playlistItem resource contains details about the included - resource that pertain specifically to how that resource is used in that playlist. - YouTube uses playlists to identify special collections of videos for a channel, - such as: - uploaded videos - favorite videos - positively rated (liked) videos - - watch history - watch later To be more specific, these lists are associated - with a channel, which is a collection of a person, group, or company's videos, - playlists, and other YouTube information. You can retrieve the playlist IDs - for each of these lists from the channel resource for a given channel. You - can then use the playlistItems.list method to retrieve any of those lists. - You can also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods. For example, if a user gives a positive - rating to a video, you would insert that video into the liked videos playlist - for that user's channel.\",\n \"id\": \"PlaylistItem\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the playlist item.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#playlistItem\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object is included in the resource if the included item is - a YouTube video. The object contains additional information about the video.\",\n - \ \"$ref\": \"PlaylistItemContentDetails\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the playlist item's privacy status.\",\n \"$ref\": \"PlaylistItemStatus\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the playlist item, such as its title and - position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"description\": \"Details about - a channel bulletin post.\"\n },\n \"LiveBroadcastSnippet\": {\n \"type\": - \"object\",\n \"description\": \"Basic broadcast information.\",\n \"properties\": - {\n \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - was added to YouTube's live broadcast schedule.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is publishing the broadcast.\",\n \"type\": \"string\"\n - \ },\n \"liveChatId\": {\n \"description\": \"The id - of the live chat for this broadcast.\",\n \"type\": \"string\"\n - \ },\n \"scheduledStartTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The date and time - that the broadcast is scheduled to start.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\"\n - \ },\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to end.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the broadcast. For each nested object - in this object, the key is the name of the thumbnail image, and the value - is an object that contains other information about the thumbnail.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"isDefaultBroadcast\": {\n \"description\": - \"Indicates whether this broadcast is the default broadcast. Internal only.\",\n - \ \"type\": \"boolean\"\n },\n \"actualEndTime\": {\n - \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast actually ended. This information is - only available once the broadcast's state is complete.\"\n },\n \"actualStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast actually - started. This information is only available once the broadcast's state is - live.\"\n }\n },\n \"id\": \"LiveBroadcastSnippet\"\n },\n - \ \"PlaylistItemContentDetails\": {\n \"id\": \"PlaylistItemContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"videoPublishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the video was published - to YouTube.\"\n },\n \"note\": {\n \"description\": - \"A user-generated note for this item.\",\n \"type\": \"string\"\n - \ },\n \"endAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify a video. To retrieve the video resource, - set the id query parameter to this value in your API request.\",\n \"type\": - \"string\"\n },\n \"startAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The time, measured in seconds from the start - of the video, when the video should start playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) The default value is 0.\"\n }\n - \ }\n },\n \"ThumbnailDetails\": {\n \"properties\": {\n \"default\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The default - image for this resource.\"\n },\n \"maxres\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The maximum resolution quality - image for this resource.\"\n },\n \"high\": {\n \"description\": - \"The high quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"standard\": {\n \"description\": \"The standard - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"medium\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The medium quality image for this resource.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ThumbnailDetails\",\n \"description\": \"Internal - representation of thumbnails for a YouTube resource.\"\n },\n \"PropertyValue\": - {\n \"id\": \"PropertyValue\",\n \"type\": \"object\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\",\n \"description\": - \"The property's value.\"\n },\n \"property\": {\n \"description\": - \"A property.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"A pair Property / Value.\"\n },\n \"TestItemTestItemSnippet\": {\n - \ \"id\": \"TestItemTestItemSnippet\",\n \"properties\": {},\n \"type\": - \"object\"\n },\n \"TokenPagination\": {\n \"description\": \"Stub - token pagination template to suppress results.\",\n \"properties\": {},\n - \ \"id\": \"TokenPagination\",\n \"type\": \"object\"\n },\n \"LocalizedProperty\": - {\n \"id\": \"LocalizedProperty\",\n \"properties\": {\n \"defaultLanguage\": - {\n \"description\": \"The language of the default property.\",\n - \ \"$ref\": \"LanguageTag\"\n },\n \"localized\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n }\n },\n \"default\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoStatistics\": - {\n \"properties\": {\n \"commentCount\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of comments for the video.\"\n },\n \"likeCount\": - {\n \"description\": \"The number of users who have indicated that - they liked the video by giving it a positive rating.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"viewCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of times the video has been viewed.\",\n \"type\": \"string\"\n },\n - \ \"dislikeCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of users who have indicated that they disliked the video by giving - it a negative rating.\",\n \"format\": \"uint64\"\n },\n \"favoriteCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of users who currently have the video marked as a favorite video.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Statistics about - the video, such as the number of times the video was viewed or liked.\",\n - \ \"type\": \"object\",\n \"id\": \"VideoStatistics\"\n },\n \"SearchListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"Pagination information for token pagination.\",\n - \ \"items\": {\n \"$ref\": \"SearchResult\"\n }\n - \ },\n \"regionCode\": {\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"visitorId\": {\n - \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#searchListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n - \ }\n },\n \"id\": \"SearchListResponse\",\n \"type\": - \"object\"\n },\n \"ChannelSectionListResponse\": {\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of ChannelSections that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ }\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelSectionListResponse\"\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"type\": \"object\",\n \"properties\": {\n \"tag\": - {\n \"description\": \"The keyword tag suggested for the video.\",\n - \ \"type\": \"string\"\n },\n \"categoryRestricts\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A set of video - categories for which the tag is relevant. You can use this information to - display appropriate tag suggestions based on the video category that the video - uploader associates with the video. By default, tag suggestions are relevant - for all categories if there are no restricts defined for the keyword.\"\n - \ }\n },\n \"id\": \"VideoSuggestionsTagSuggestion\",\n \"description\": - \"A single tag suggestion with it's relevance information.\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"properties\": {\n \"giftMembershipsLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the level of the gift - memberships purchased by the user. The Level names are defined by the YouTube - channel offering the Membership. In some situations this field isn't filled.\"\n - \ },\n \"giftMembershipsCount\": {\n \"description\": - \"The number of gift memberships purchased by the user.\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n }\n }\n },\n - \ \"VideoCategorySnippet\": {\n \"id\": \"VideoCategorySnippet\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"channelId\": {\n \"type\": \"string\",\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"description\": \"The YouTube channel - that created the video category.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The video category's title.\"\n - \ },\n \"assignable\": {\n \"type\": \"boolean\"\n }\n - \ }\n },\n \"VideoSuggestions\": {\n \"id\": \"VideoSuggestions\",\n - \ \"properties\": {\n \"editorSuggestions\": {\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\",\n \"items\": {\n - \ \"enumDescriptions\": [\n \"Picture brightness levels - seem off and could be corrected.\",\n \"The video appears shaky - and could be stabilized.\",\n \"Margins (mattes) detected around - the picture could be cropped.\",\n \"The audio track appears - silent and could be swapped with a better quality one.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ]\n },\n \"type\": \"array\"\n },\n \"processingErrors\": - {\n \"type\": \"array\",\n \"description\": \"A list of - errors that will prevent YouTube from successfully processing the uploaded - video video. These errors indicate that, regardless of the video's current - processing status, eventually, that status will almost certainly be failed.\",\n - \ \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n - \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n - \ \"unsupportedSpatialAudioLayout\"\n ],\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ]\n }\n },\n \"tagSuggestions\": - {\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"description\": \"A list of keyword tags that could - be added to the video's metadata to increase the likelihood that users will - locate your video when searching or browsing on YouTube.\",\n \"type\": - \"array\"\n },\n \"processingWarnings\": {\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"enum\": [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ],\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"processingHints\": {\n \"description\": - \"A list of suggestions that may improve YouTube's ability to process the - video.\",\n \"items\": {\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ],\n \"enumDescriptions\": [\n \"The MP4 - file is not streamable, this will slow down the processing. MOOV atom was - not found at the beginning of the file.\",\n \"Probably a better - quality version of the video exists. The video has wide screen aspect ratio, - but is not an HD video.\",\n \"Uploaded video is spherical video.\",\n - \ \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"description\": \"Specifies suggestions on how - to improve video content, including encoding hints, tag suggestions, and editor - suggestions.\",\n \"type\": \"object\"\n }\n },\n \"servicePath\": - \"\",\n \"name\": \"youtube\",\n \"protocol\": \"rest\",\n \"documentationLink\": - \"https://developers.google.com/youtube/\",\n \"id\": \"youtube:v3\",\n \"revision\": - \"20230220\",\n \"discoveryVersion\": \"v1\",\n \"ownerName\": \"Google\",\n - \ \"fullyEncodeReservedExpansion\": true,\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"auth\": {\n \"oauth2\": - {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n }\n - \ }\n }\n },\n \"title\": \"YouTube Data API v3\",\n \"parameters\": - {\n \"upload_protocol\": {\n \"location\": \"query\",\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": - \"string\"\n },\n \"fields\": {\n \"description\": \"Selector specifying - which fields to include in a partial response.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"prettyPrint\": {\n \"default\": - \"true\",\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Returns response with indentations and line breaks.\"\n - \ },\n \"access_token\": {\n \"description\": \"OAuth access token.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"uploadType\": - {\n \"description\": \"Legacy upload protocol for media (e.g. \\\"media\\\", - \\\"multipart\\\").\",\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"quotaUser\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"alt\": {\n \"description\": - \"Data format for response.\",\n \"enum\": [\n \"json\",\n \"media\",\n - \ \"proto\"\n ],\n \"default\": \"json\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"Responses with Content-Type - of application/json\",\n \"Media download with context-dependent Content-Type\",\n - \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n - \ \"type\": \"string\"\n },\n \"key\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": \"query\"\n },\n \"callback\": - {\n \"description\": \"JSONP\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"$.xgafv\": {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"description\": - \"V1 error format.\",\n \"enum\": [\n \"1\",\n \"2\"\n - \ ],\n \"type\": \"string\"\n },\n \"oauth_token\": {\n \"location\": - \"query\",\n \"description\": \"OAuth 2.0 token for the current user.\",\n - \ \"type\": \"string\"\n }\n },\n \"resources\": {\n \"superChatEvents\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"parameters\": - {\n \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the superChatEvent resource parts that the - API response will include. This parameter is currently not supported.\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"hl\": {\n \"location\": \"query\",\n \"description\": - \"Return rendered funding amounts in specified language.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"default\": \"5\",\n \"maximum\": - \"50\"\n }\n },\n \"response\": {\n \"$ref\": - \"SuperChatEventListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.superChatEvents.list\",\n \"path\": \"youtube/v3/superChatEvents\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ }\n }\n },\n \"watermarks\": {\n \"methods\": {\n - \ \"set\": {\n \"description\": \"Allows upload of watermark - image and setting it for a channel.\",\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"httpMethod\": \"POST\",\n \"supportsMediaUpload\": - true,\n \"mediaUpload\": {\n \"maxSize\": \"10485760\",\n - \ \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": true\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"id\": \"youtube.watermarks.set\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/watermarks/set\",\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"unset\": {\n \"httpMethod\": \"POST\",\n \"description\": - \"Allows removal of channel watermark.\",\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"id\": \"youtube.watermarks.unset\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/watermarks/unset\"\n }\n - \ }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": {\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"hl\": - {\n \"location\": \"query\",\n \"default\": \"en-US\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the videoCategory - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"response\": - {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n }\n - \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"insert\": {\n \"description\": \"Inserts a new resource - into this collection.\",\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n }\n },\n - \ \"delete\": {\n \"id\": \"youtube.liveChatModerators.delete\",\n - \ \"description\": \"Deletes a chat moderator.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"path\": \"youtube/v3/liveChat/moderators\"\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the liveChatModerator resource parts that - the API response will include. Supported values are id and snippet.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n },\n \"liveChatId\": {\n \"description\": - \"The id of the live chat for which moderators should be returned.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"default\": \"5\"\n }\n - \ },\n \"id\": \"youtube.liveChatModerators.list\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"response\": {\n \"$ref\": - \"LiveChatModeratorListResponse\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n - \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n - \ \"insert\": {\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"id\": - \"youtube.abuseReports.insert\",\n \"response\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/abuseReports\"\n }\n - \ }\n },\n \"subscriptions\": {\n \"methods\": {\n \"insert\": - {\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"Subscription\"\n }\n },\n \"list\": {\n \"path\": - \"youtube/v3/subscriptions\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.subscriptions.list\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"description\": \"Flag - for returning the subscriptions of the authenticated user.\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the subscriptions of the given channel owner.\"\n },\n - \ \"mySubscribers\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Return - the subscribers of the given channel owner.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the subscriptions with the given IDs - for Stubby or Apiary.\",\n \"repeated\": true\n },\n - \ \"order\": {\n \"type\": \"string\",\n \"description\": - \"The order of the returned subscriptions\",\n \"location\": - \"query\",\n \"default\": \"relevance\",\n \"enum\": - [\n \"subscriptionOrderUnspecified\",\n \"relevance\",\n - \ \"unread\",\n \"alphabetical\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Sort - by relevance.\",\n \"Sort by order of activity.\",\n \"Sort - alphabetically.\"\n ]\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"myRecentSubscribers\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"forChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\",\n \"type\": \"string\"\n },\n - \ \"maxResults\": {\n \"minimum\": \"0\",\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"maximum\": \"50\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ }\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/subscriptions\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\"\n }\n - \ }\n },\n \"liveBroadcasts\": {\n \"methods\": {\n \"bind\": - {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n - \ },\n \"streamId\": {\n \"description\": - \"Stream to bind, if not set unbind the current one.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to bind to the stream\",\n \"required\": - true\n }\n },\n \"description\": \"Bind a broadcast - to a stream.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"id\": \"youtube.liveBroadcasts.bind\",\n \"path\": - \"youtube/v3/liveBroadcasts/bind\",\n \"httpMethod\": \"POST\"\n - \ },\n \"list\": {\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"default\": \"5\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\"\n },\n \"broadcastType\": - {\n \"description\": \"Return only broadcasts with the selected - type.\",\n \"default\": \"event\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ]\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Return - broadcasts with the given ids from Stubby or Apiary.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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, status and - statistics.\"\n },\n \"broadcastStatus\": {\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return broadcasts with a certain - status, e.g. active broadcasts.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ]\n }\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"GET\"\n },\n - \ \"insert\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n }\n },\n \"transition\": - {\n \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n - \ \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.transition\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/transition\",\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"description\": \"Transition a broadcast to a given status.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"broadcastStatus\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"The status to which the broadcast is going to transition.\",\n \"type\": - \"string\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Start testing the broadcast. YouTube transmits video to - the broadcast's monitor stream. Note that you can only transition a broadcast - to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ]\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"required\": - true,\n \"description\": \"Broadcast to transition.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n }\n },\n \"update\": {\n - \ \"id\": \"youtube.liveBroadcasts.update\",\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"description\": \"Updates an existing - broadcast for the authenticated user.\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n },\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"insertCuepoint\": {\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"description\": \"Broadcast to insert ads to, or equivalently - `external_video_id` for internal use.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"description\": - \"Insert cuepoints in a broadcast\",\n \"request\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"parameterOrder\": []\n },\n - \ \"delete\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"description\": \"Delete a given broadcast.\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Broadcast to delete.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"id\": \"youtube.liveBroadcasts.delete\",\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ]\n }\n - \ }\n },\n \"playlists\": {\n \"methods\": {\n \"update\": - {\n \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"parameters\": {\n - \ \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.playlists.update\",\n \"description\": - \"Updates an existing resource.\",\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"response\": {\n \"$ref\": - \"Playlist\"\n }\n },\n \"insert\": {\n \"id\": - \"youtube.playlists.insert\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n }\n }\n },\n - \ \"delete\": {\n \"description\": \"Deletes a resource.\",\n - \ \"id\": \"youtube.playlists.delete\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"list\": {\n \"flatPath\": - \"youtube/v3/playlists\",\n \"parameters\": {\n \"mine\": - {\n \"location\": \"query\",\n \"description\": - \"Return the playlists owned by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return content in specified language\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the playlists owned by the specified - channel ID.\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"default\": \"5\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.playlists.list\",\n \"response\": {\n - \ \"$ref\": \"PlaylistListResponse\"\n }\n }\n }\n - \ },\n \"thumbnails\": {\n \"methods\": {\n \"set\": {\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"Returns the Thumbnail with the given - video IDs for Stubby or Apiary.\"\n }\n },\n \"mediaUpload\": - {\n \"maxSize\": \"2097152\",\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n }\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"videoId\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"response\": {\n \"$ref\": - \"ThumbnailSetResponse\"\n },\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"path\": \"youtube/v3/thumbnails/set\",\n \"id\": \"youtube.thumbnails.set\",\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\"\n }\n - \ }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.search.list\",\n \"path\": \"youtube/v3/search\",\n \"flatPath\": - \"youtube/v3/search\",\n \"parameters\": {\n \"forMine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Search for the private videos of the authenticated - user.\"\n },\n \"order\": {\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"description\": \"Sort order of the results.\",\n - \ \"location\": \"query\",\n \"default\": \"relevance\"\n - \ },\n \"videoLicense\": {\n \"enum\": [\n - \ \"any\",\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Filter - on the license of the videos.\"\n },\n \"relatedToVideoId\": - {\n \"location\": \"query\",\n \"description\": - \"Search related to a resource.\",\n \"type\": \"string\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"videoDuration\": {\n \"type\": - \"string\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"description\": - \"Filter on the duration of the videos.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter video search results based on their duration. This is the default - value.\",\n \"Only include videos that are less than four minutes - long.\",\n \"Only include videos that are between four and - 20 minutes long (inclusive).\",\n \"Only include videos longer - than 20 minutes.\"\n ]\n },\n \"videoType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos.\",\n \"Only retrieve movies.\",\n \"Only - retrieve episodes of shows.\"\n ],\n \"enum\": [\n - \ \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Filter on videos of a specific type.\",\n - \ \"location\": \"query\"\n },\n \"videoDimension\": - {\n \"description\": \"Filter on 3d videos.\",\n \"location\": - \"query\",\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"type\": \"string\"\n },\n - \ \"location\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Filter on location of the video\"\n - \ },\n \"channelId\": {\n \"description\": - \"Filter on resources belonging to this channelId.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoCategoryId\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on videos in a specific category.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n - \ \"channelType\": {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"description\": - \"Add a filter on the channel search.\"\n },\n \"publishedBefore\": - {\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on resources published before this date.\"\n },\n \"videoCaption\": - {\n \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Filter on the presence of captions on the - videos.\",\n \"location\": \"query\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ]\n - \ },\n \"type\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Restrict - results to a particular set of resource types from One Platform.\",\n \"type\": - \"string\"\n },\n \"safeSearch\": {\n \"type\": - \"string\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"location\": \"query\",\n \"default\": - \"moderate\",\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ]\n },\n \"regionCode\": {\n \"description\": - \"Display the content as seen by viewers in this country.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"eventType\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n - \ \"description\": \"Filter on the livestream status of the videos.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"relevanceLanguage\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return results relevant to this language.\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"location\": \"query\",\n \"default\": \"5\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"forContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"Search owned by a content owner.\",\n \"type\": - \"boolean\"\n },\n \"topicId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular topic.\"\n },\n \"locationRadius\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on distance from the location (specified above).\",\n \"location\": - \"query\"\n },\n \"forDeveloper\": {\n \"type\": - \"boolean\",\n \"description\": \"Restrict the search to only - retrieve videos uploaded using the project id of the authenticated user.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoSyndicated\": {\n \"enum\": - [\n \"videoSyndicatedUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos, syndicated or not.\",\n \"Only retrieve syndicated - videos.\"\n ],\n \"location\": \"query\",\n \"description\": - \"Filter on syndicated videos.\"\n },\n \"videoDefinition\": - {\n \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"description\": \"Filter on the definition - of the videos.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ]\n },\n \"q\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Textual search terms to match.\"\n },\n - \ \"videoEmbeddable\": {\n \"location\": \"query\",\n - \ \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, embeddable or not.\",\n \"Only - retrieve embeddable videos.\"\n ],\n \"description\": - \"Filter on embeddable videos.\"\n },\n \"publishedAfter\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on resources published after this date.\",\n \"format\": \"google-datetime\",\n - \ \"location\": \"query\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of search resources\",\n \"response\": - {\n \"$ref\": \"SearchListResponse\"\n }\n }\n - \ }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"parameters\": {\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hasAccessToLevel\": {\n \"location\": - \"query\",\n \"description\": \"Filter members in the results - set to the ones that have access to a level.\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"maximum\": \"1000\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"mode\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"default\": - \"all_current\"\n },\n \"filterByMemberChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Comma - separated list of channel IDs. Only data about members that are part of this - list will be included in the response.\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/members\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of members that match the request criteria for a channel.\",\n - \ \"path\": \"youtube/v3/members\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"id\": \"youtube.members.list\",\n \"response\": - {\n \"$ref\": \"MemberListResponse\"\n }\n }\n - \ }\n },\n \"commentThreads\": {\n \"methods\": {\n \"list\": - {\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"id\": \"youtube.commentThreads.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Returns - the comment threads with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"default\": \"20\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"maximum\": \"100\",\n \"minimum\": \"1\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"searchTerms\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Limits the returned comment threads to those - matching the specified key words. Not compatible with the 'id' filter.\"\n - \ },\n \"textFormat\": {\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"default\": \"html\",\n \"description\": - \"The requested text format for the returned comments.\",\n \"type\": - \"string\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"location\": \"query\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads of all videos of the channel and the channel comments - as well.\",\n \"location\": \"query\"\n },\n \"order\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"default\": \"time\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"type\": \"string\"\n },\n \"moderationStatus\": - {\n \"location\": \"query\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"default\": \"published\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"videoId\": - {\n \"description\": \"Returns the comment threads of the specified - video.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Returns the comment threads for - all the channel comments (ie does not include comments left on videos).\"\n - \ }\n }\n },\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.commentThreads.insert\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"comments\": - {\n \"methods\": {\n \"setModerationStatus\": {\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"parameters\": {\n \"moderationStatus\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the requested moderation - status. Note, comments can be in statuses, which are not available through - this call. For example, this call does not allow to mark a comment as 'likely - spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"location\": - \"query\",\n \"required\": true\n },\n \"banAuthor\": - {\n \"location\": \"query\",\n \"default\": \"false\",\n - \ \"description\": \"If set to true the author of the comment - gets added to the ban list. This means all future comments of the author will - autmomatically be rejected. Only valid in combination with STATUS_REJECTED.\",\n - \ \"type\": \"boolean\"\n },\n \"id\": {\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"description\": \"Sets the moderation - status of one or more comments.\",\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ]\n },\n - \ \"update\": {\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.update\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ }\n },\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Comment\"\n }\n },\n \"list\": - {\n \"parameters\": {\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Returns the comments with the given - IDs for One Platform.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"description\": \"The *part* parameter - specifies a comma-separated list of one or more comment resource properties - that the API response will include.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true,\n \"location\": - \"query\"\n },\n \"parentId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\"\n },\n \"textFormat\": - {\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The - requested text format for the returned comments.\",\n \"default\": - \"html\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"maximum\": - \"100\",\n \"default\": \"20\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"1\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"id\": \"youtube.comments.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments\"\n },\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.comments.delete\"\n - \ },\n \"markAsSpam\": {\n \"description\": \"Expresses - the caller's opinion that one or more comments should be flagged as spam.\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/comments/markAsSpam\",\n \"path\": \"youtube/v3/comments/markAsSpam\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Flags the comments with the given IDs as - spam in the caller's opinion.\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.comments.markAsSpam\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insert\": {\n \"response\": {\n - \ \"$ref\": \"Comment\"\n },\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": true\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"Comment\"\n }\n }\n }\n },\n - \ \"liveStreams\": {\n \"methods\": {\n \"delete\": {\n \"path\": - \"youtube/v3/liveStreams\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes an existing stream for the - authenticated user.\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"id\": - \"youtube.liveStreams.delete\"\n },\n \"list\": {\n \"path\": - \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.list\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"LiveStreamListResponse\"\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Return LiveStreams with the given - ids from Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"location\": \"query\",\n \"default\": \"5\",\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"type\": \"integer\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\"\n }\n },\n \"description\": \"Retrieve - the list of streams associated with the given channel. --\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveStreams\"\n },\n \"update\": - {\n \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"path\": \"youtube/v3/liveStreams\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.liveStreams.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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, - content_details, and status.\",\n \"repeated\": true\n }\n - \ },\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"description\": \"Inserts a new stream for the authenticated - user.\",\n \"id\": \"youtube.liveStreams.insert\",\n \"flatPath\": - \"youtube/v3/liveStreams\"\n }\n }\n },\n \"membershipsLevels\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"description\": \"Retrieves a list of all pricing levels offered - by a creator to the fans.\",\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"path\": \"youtube/v3/membershipsLevels\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the membershipsLevel resource parts that the API response will include. Supported - values are id and snippet.\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"MembershipsLevelListResponse\"\n },\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"activities\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/activities\",\n \"path\": - \"youtube/v3/activities\",\n \"parameters\": {\n \"publishedBefore\": - {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n - \ \"type\": \"string\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"home\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"publishedAfter\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\"\n },\n \"mine\": {\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.activities.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"liveChatBans\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"request\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"delete\": {\n - \ \"id\": \"youtube.liveChatBans.delete\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"description\": - \"Deletes a chat ban.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"DELETE\"\n }\n }\n },\n - \ \"playlistItems\": {\n \"methods\": {\n \"list\": {\n \"path\": - \"youtube/v3/playlistItems\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"videoId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlist items associated with the given video ID.\"\n },\n - \ \"playlistId\": {\n \"description\": \"Return the - playlist items within the given playlist.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"id\": \"youtube.playlistItems.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ }\n },\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/playlistItems\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n }\n },\n \"update\": {\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"path\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"id\": \"youtube.playlistItems.update\"\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.playlistItems.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"description\": - \"Deletes a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/playlistItems\"\n }\n }\n - \ },\n \"channels\": {\n \"methods\": {\n \"update\": {\n - \ \"httpMethod\": \"PUT\",\n \"id\": \"youtube.channels.update\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/channels\",\n \"response\": {\n - \ \"$ref\": \"Channel\"\n },\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"request\": {\n \"$ref\": \"Channel\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Updates an existing resource.\"\n },\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"ChannelListResponse\"\n },\n \"flatPath\": - \"youtube/v3/channels\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"id\": \"youtube.channels.list\",\n \"path\": - \"youtube/v3/channels\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"managedByMe\": {\n - \ \"description\": \"Return the channels managed by the authenticated - user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"location\": \"query\"\n },\n \"forUsername\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channel associated with a YouTube - username.\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"part\": {\n - \ \"description\": \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Return the channels with the specified IDs.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Return - the ids of channels owned by the authenticated user.\"\n },\n \"categoryId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the channels within the specified - guide category ID.\"\n },\n \"mySubscribers\": {\n \"description\": - \"Return the channels subscribed to the authenticated user\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n }\n }\n }\n },\n \"youtube\": - {\n \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameterOrder\": [],\n \"description\": \"Updates - an existing resource.\",\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"request\": {\n \"$ref\": - \"CommentThread\"\n }\n }\n }\n }\n - \ }\n },\n \"channelBanners\": {\n \"methods\": {\n \"insert\": - {\n \"path\": \"youtube/v3/channelBanners/insert\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/channelBanners/insert\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"maxSize\": \"6291456\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"supportsMediaUpload\": true,\n \"id\": \"youtube.channelBanners.insert\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"parameterOrder\": - [],\n \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\"\n }\n }\n },\n \"tests\": {\n \"methods\": - {\n \"insert\": {\n \"request\": {\n \"$ref\": - \"TestItem\"\n },\n \"response\": {\n \"$ref\": - \"TestItem\"\n },\n \"description\": \"POST method.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.tests.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/tests\",\n \"flatPath\": - \"youtube/v3/tests\"\n }\n }\n },\n \"channelSections\": - {\n \"methods\": {\n \"insert\": {\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"id\": \"youtube.channelSections.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/channelSections\"\n },\n \"list\": {\n \"path\": - \"youtube/v3/channelSections\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.channelSections.list\",\n \"parameters\": {\n \"hl\": - {\n \"type\": \"string\",\n \"description\": \"Return - content in specified language\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"description\": - \"Return the ChannelSections owned by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the ChannelSections owned by the specified - channel ID.\"\n }\n },\n \"response\": {\n \"$ref\": - \"ChannelSectionListResponse\"\n }\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"path\": - \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.delete\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a resource.\"\n },\n \"update\": {\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.channelSections.update\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/channelSections\"\n }\n }\n },\n \"videos\": - {\n \"methods\": {\n \"getRating\": {\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"description\": \"Retrieves the ratings that the authorized user - gave to a list of specified videos.\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/videos/getRating\",\n - \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"id\": \"youtube.videos.getRating\"\n },\n - \ \"update\": {\n \"response\": {\n \"$ref\": \"Video\"\n - \ },\n \"id\": \"youtube.videos.update\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"httpMethod\": \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos\"\n },\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/videos\",\n \"id\": \"youtube.videos.list\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"locale\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"maxWidth\": {\n \"minimum\": \"72\",\n - \ \"maximum\": \"8192\",\n \"format\": \"int32\",\n - \ \"type\": \"integer\",\n \"description\": \"Return - the player with maximum height specified in\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Return videos with the given ids.\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"myRating\": {\n \"location\": \"query\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"Return - videos liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n - \ \"type\": \"string\"\n },\n \"videoCategoryId\": - {\n \"type\": \"string\",\n \"default\": \"0\",\n - \ \"description\": \"Use chart that is specific to the specified - video category\",\n \"location\": \"query\"\n },\n - \ \"maxHeight\": {\n \"format\": \"int32\",\n \"maximum\": - \"8192\",\n \"minimum\": \"72\",\n \"location\": - \"query\",\n \"type\": \"integer\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Use a chart that is specific to the specified - region\"\n },\n \"chart\": {\n \"enum\": - [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Return the videos that are in the specified - chart.\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"description\": \"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.\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"minimum\": \"1\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"hl\": {\n \"description\": \"Stands - for \\\"host language\\\". Specifies the localization language of the metadata - to be filled into snippet.localized. The field is filled with the default - metadata if there is no localization in the specified language. The parameter - value must be a language code included in the list returned by the i18nLanguages.list - method (e.g. en_US, es_MX).\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"VideoListResponse\"\n },\n - \ \"httpMethod\": \"GET\"\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"mediaUpload\": {\n \"maxSize\": \"274877906944\",\n - \ \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/videos\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ }\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"id\": \"youtube.videos.insert\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"path\": \"youtube/v3/videos\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"notifySubscribers\": - {\n \"location\": \"query\",\n \"default\": \"true\",\n - \ \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"stabilize\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Should - stabilize be applied to the upload.\",\n \"location\": \"query\"\n - \ },\n \"autoLevels\": {\n \"description\": - \"Should auto-levels be applied to the upload.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"delete\": {\n \"description\": \"Deletes a resource.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.videos.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n }\n - \ },\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/videos\"\n },\n \"reportAbuse\": {\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\",\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Report abuse for a video.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n },\n \"request\": - {\n \"$ref\": \"VideoAbuseReport\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos/reportAbuse\",\n \"id\": - \"youtube.videos.reportAbuse\",\n \"parameterOrder\": []\n },\n - \ \"rate\": {\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.rate\",\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"path\": \"youtube/v3/videos/rate\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"description\": - \"Adds a like or dislike rating to a video or removes a rating from a video.\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"rating\": {\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n }\n }\n - \ }\n },\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"I18nLanguageListResponse\"\n },\n \"parameters\": {\n - \ \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"en_US\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the i18nLanguage resource properties that the API - response will include. Set the parameter value to snippet.\",\n \"repeated\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/i18nLanguages\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"captions\": - {\n \"methods\": {\n \"insert\": {\n \"response\": {\n - \ \"$ref\": \"Caption\"\n },\n \"supportsMediaUpload\": - true,\n \"flatPath\": \"youtube/v3/captions\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n - \ \"resumable\": {\n \"multipart\": true,\n \"path\": - \"/resumable/upload/youtube/v3/captions\"\n }\n },\n - \ \"maxSize\": \"104857600\",\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ]\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/captions\",\n \"id\": - \"youtube.captions.insert\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\"\n },\n \"sync\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n }\n },\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"description\": - \"Inserts a new resource into this collection.\"\n },\n \"delete\": - {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n - \ \"location\": \"query\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/captions\",\n \"description\": - \"Deletes a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.delete\"\n },\n \"update\": - {\n \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ },\n \"maxSize\": \"104857600\"\n },\n \"path\": - \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.update\",\n - \ \"httpMethod\": \"PUT\",\n \"parameters\": {\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\"\n },\n \"sync\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"supportsMediaUpload\": true,\n \"description\": - \"Updates an existing resource.\"\n },\n \"list\": {\n \"parameters\": - {\n \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is on behalf of.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Returns the captions with the given IDs - for Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"required\": true,\n \"description\": \"Returns - the captions for the specified video.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"path\": \"youtube/v3/captions\",\n \"id\": - \"youtube.captions.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/captions\"\n },\n - \ \"download\": {\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the caption track to download, required for One Platform.\",\n \"required\": - true,\n \"location\": \"path\"\n },\n \"tfmt\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Convert the captions into this format. Supported - options are sbv, srt, and vtt.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"tlang\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"tlang - is the language code; machine translate the captions into this language.\"\n - \ }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.captions.download\",\n - \ \"flatPath\": \"youtube/v3/captions/{id}\",\n \"path\": - \"youtube/v3/captions/{id}\",\n \"description\": \"Downloads a caption - track.\",\n \"supportsMediaDownload\": true,\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"useMediaDownloadService\": true\n }\n }\n - \ },\n \"i18nRegions\": {\n \"methods\": {\n \"list\": {\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"I18nRegionListResponse\"\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"hl\": - {\n \"default\": \"en_US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/i18nRegions\",\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"flatPath\": \"youtube/v3/i18nRegions\"\n }\n }\n },\n - \ \"videoCategories\": {\n \"methods\": {\n \"list\": {\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the videoCategory resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"Returns the video categories with the given - IDs for Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"default\": \"en-US\",\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/videoCategories\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/videoCategories\",\n \"response\": - {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videoCategories.list\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"liveChatMessages\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"parameters\": {\n - \ \"profileImageSize\": {\n \"location\": \"query\",\n - \ \"maximum\": \"720\",\n \"format\": \"uint32\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\",\n \"type\": \"integer\",\n - \ \"minimum\": \"16\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The - id of the live chat for which comments should be returned.\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the liveChatComment resource parts that the - API response will include. Supported values are id and snippet.\",\n \"required\": - true\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"2000\",\n \"location\": \"query\",\n - \ \"minimum\": \"200\",\n \"default\": \"500\",\n - \ \"type\": \"integer\"\n },\n \"hl\": {\n - \ \"location\": \"query\",\n \"description\": \"Specifies - the localization language in which the system messages should be returned.\",\n - \ \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.list\"\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"path\": \"youtube/v3/liveChat/messages\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"id\": - \"youtube.liveChatMessages.insert\"\n },\n \"delete\": {\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"description\": \"Deletes a - chat message.\",\n \"httpMethod\": \"DELETE\",\n \"id\": - \"youtube.liveChatMessages.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"delete\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"linkingToken\": {\n \"type\": - \"string\",\n \"description\": \"Delete the partner links with - the given linking token.\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"type\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"description\": \"Type of the link to be deleted.\"\n },\n - \ \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"Do not use. Required for compatibility.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ],\n \"id\": \"youtube.thirdPartyLinks.delete\"\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"parameters\": {\n - \ \"part\": {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"linkingToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Get a third party link with the given linking - token.\"\n },\n \"type\": {\n \"description\": - \"Get a third party link of the given type.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ]\n - \ },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\"\n },\n \"insert\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.insert\"\n - \ },\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.thirdPartyLinks.update\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"description\": \"Updates an existing - resource.\"\n }\n }\n }\n },\n \"ownerDomain\": \"google.com\",\n - \ \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"description\": \"The - YouTube Data API v3 is an API that provides access to YouTube data, such as - videos, playlists, and channels.\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"version\": \"v3\",\n \"basePath\": \"\",\n \"batchPath\": \"batch\",\n - \ \"canonicalName\": \"YouTube\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:32 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCi0q9rOpx1wLBJpdNypbC6w&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"LQZ9BE8wJqPIP0X3gEvu4bHv-lY\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"xjnbNbWdoE8Vwsvk9J_Q2maXXpQ\",\n \"id\": \"UCi0q9rOpx1wLBJpdNypbC6w\",\n - \ \"snippet\": {\n \"title\": \"Donate4Fun\",\n \"description\": - \"It's official channel of Donate4.Fun donation service powered by \u26A1 - Bitcoin Lightning.\\nGo to https://donate4.fun if you want to get your donations.\\n\\n\\n\",\n - \ \"customUrl\": \"@donate4fun\",\n \"publishedAt\": \"2022-07-14T19:58:25.103729Z\",\n - \ \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/u33vOM5CeeMTSMpm55U45jf0xJKymfFlFrRfcl_NMhYDNhCUaykO5BvCgRlVRnNymPVCfhwZww=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/u33vOM5CeeMTSMpm55U45jf0xJKymfFlFrRfcl_NMhYDNhCUaykO5BvCgRlVRnNymPVCfhwZww=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/u33vOM5CeeMTSMpm55U45jf0xJKymfFlFrRfcl_NMhYDNhCUaykO5BvCgRlVRnNymPVCfhwZww=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"defaultLanguage\": \"en\",\n \"localized\": {\n \"title\": - \"Donate4Fun\",\n \"description\": \"It's official channel of Donate4.Fun - donation service powered by \u26A1 Bitcoin Lightning.\\nGo to https://donate4.fun - if you want to get your donations.\\n\\n\\n\"\n }\n },\n \"brandingSettings\": - {\n \"channel\": {\n \"title\": \"Donate4Fun\",\n \"description\": - \"It's official channel of Donate4.Fun donation service powered by \u26A1 - Bitcoin Lightning.\\nGo to https://donate4.fun if you want to get your donations.\\n\\n\\n\",\n - \ \"keywords\": \"donations bitcoin crypto lightningnetwork \\\"lightning - network\\\" tips\",\n \"defaultLanguage\": \"en\"\n }\n }\n - \ }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:33 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"schemas\": {\n \"VideoLocalization\": {\n \"id\": \"VideoLocalization\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"description\": \"Localized version of the video's description.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"Localized version of the video's - title.\"\n }\n },\n \"description\": \"Localized versions - of certain video properties (e.g. title).\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"id\": \"LiveChatMembershipGiftingDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"giftMembershipsCount\": {\n \"type\": - \"integer\",\n \"description\": \"The number of gift memberships - purchased by the user.\",\n \"format\": \"int32\"\n },\n \"giftMembershipsLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the level of the gift memberships purchased by the user. The Level names - are defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n }\n }\n },\n \"AccessPolicy\": - {\n \"properties\": {\n \"allowed\": {\n \"description\": - \"The value of allowed indicates whether the access to the policy is allowed - or denied by default.\",\n \"type\": \"boolean\"\n },\n \"exception\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of region codes - that identify countries where the default policy do not apply.\"\n }\n - \ },\n \"description\": \"Rights management policy for YouTube resources.\",\n - \ \"type\": \"object\",\n \"id\": \"AccessPolicy\"\n },\n \"VideoStatistics\": - {\n \"type\": \"object\",\n \"properties\": {\n \"dislikeCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of users who have indicated that they disliked the video by giving - it a negative rating.\"\n },\n \"viewCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of times the video has - been viewed.\",\n \"type\": \"string\"\n },\n \"commentCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of comments for the video.\",\n \"type\": \"string\"\n },\n - \ \"favoriteCount\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of users who currently - have the video marked as a favorite video.\"\n },\n \"likeCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of users who have indicated that they liked the video by giving it a positive - rating.\",\n \"format\": \"uint64\"\n }\n },\n \"id\": - \"VideoStatistics\",\n \"description\": \"Statistics about the video, - such as the number of times the video was viewed or liked.\"\n },\n \"LiveStreamContentDetails\": - {\n \"id\": \"LiveStreamContentDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"closedCaptionsIngestionUrl\": {\n \"type\": - \"string\",\n \"description\": \"The ingestion URL where the closed - captions of this stream are sent.\"\n },\n \"isReusable\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Indicates whether - the stream is reusable, which means that it can be bound to multiple broadcasts. - It is common for broadcasters to reuse the same stream for many different - broadcasts if those broadcasts occur at different times. If you set this value - to false, then the stream will not be reusable, which means that it can only - be bound to one broadcast. Non-reusable streams differ from reusable streams - in the following ways: - A non-reusable stream can only be bound to one broadcast. - - A non-reusable stream might be deleted by an automated process after the - broadcast ends. - The liveStreams.list method does not list non-reusable streams - if you call the method and set the mine parameter to true. The only way to - use that method to retrieve the resource for a non-reusable stream is to use - the id parameter to identify the stream. \"\n }\n },\n \"description\": - \"Detailed settings of a stream.\"\n },\n \"VideoContentDetails\": {\n - \ \"type\": \"object\",\n \"description\": \"Details about the content - of a YouTube Video.\",\n \"properties\": {\n \"projection\": {\n - \ \"description\": \"Specifies the projection format of the video.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"type\": \"string\"\n },\n \"hasCustomThumbnail\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\"\n },\n \"regionRestriction\": - {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\"\n },\n - \ \"contentRating\": {\n \"$ref\": \"ContentRating\",\n \"description\": - \"Specifies the ratings that the video received under various rating schemes.\"\n - \ },\n \"duration\": {\n \"type\": \"string\",\n \"description\": - \"The length of the video. The tag value is an ISO 8601 duration in the format - PT#M#S, in which the letters PT indicate that the value specifies a period - of time, and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"dimension\": {\n \"description\": \"The value of dimension - indicates whether the video is available in 3D or in 2D.\",\n \"type\": - \"string\"\n },\n \"countryRestriction\": {\n \"description\": - \"The countryRestriction object contains information about the countries where - a video is (or is not) viewable.\",\n \"$ref\": \"AccessPolicy\"\n - \ },\n \"caption\": {\n \"description\": \"The value - of captions indicates whether the video has captions or not.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"true\",\n \"false\"\n - \ ]\n },\n \"licensedContent\": {\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\",\n \"type\": \"boolean\"\n },\n \"definition\": - {\n \"enum\": [\n \"sd\",\n \"hd\"\n ],\n - \ \"description\": \"The value of definition indicates whether the - video is available in high definition or only in standard definition.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ]\n }\n },\n \"id\": \"VideoContentDetails\"\n - \ },\n \"ActivityContentDetailsComment\": {\n \"id\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"Information about a resource that received a comment.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with the - comment.\"\n }\n }\n },\n \"SuperChatEventListResponse\": - {\n \"type\": \"object\",\n \"id\": \"SuperChatEventListResponse\",\n - \ \"properties\": {\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"kind\": - {\n \"default\": \"youtube#superChatEventListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of Super Chat purchases that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n },\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n }\n }\n },\n \"ActivitySnippet\": - {\n \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\",\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The title of the resource primarily - associated with the activity.\"\n },\n \"channelTitle\": {\n - \ \"description\": \"Channel title for the channel responsible for - this activity\",\n \"type\": \"string\"\n },\n \"groupId\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the resource primarily associated - with the activity. @mutable youtube.activities.insert\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel associated with the activity.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of activity that the resource describes.\",\n \"type\": - \"string\",\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n - \ \"like\",\n \"favorite\",\n \"comment\",\n - \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n - \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ]\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the video was uploaded.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"description\": \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n }\n - \ },\n \"id\": \"ActivitySnippet\"\n },\n \"ChannelSectionLocalization\": - {\n \"description\": \"ChannelSection localization setting\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The localized strings - for channel section's title.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelSectionLocalization\"\n - \ },\n \"LiveBroadcastContentDetails\": {\n \"description\": \"Detailed - settings of a broadcast.\",\n \"type\": \"object\",\n \"properties\": - {\n \"boundStreamId\": {\n \"description\": \"This value uniquely - identifies the live stream bound to the broadcast.\",\n \"type\": - \"string\"\n },\n \"enableEmbed\": {\n \"description\": - \"This setting indicates whether the broadcast video can be played in an embedded - player. If you choose to archive the video (using the enableArchive property), - this setting will also apply to the archived video.\",\n \"type\": - \"boolean\"\n },\n \"closedCaptionsType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"type\": - \"string\"\n },\n \"mesh\": {\n \"description\": \"The - mesh for projecting the video if projection is mesh. The mesh value must be - a UTF-8 string containing the base-64 encoding of 3D mesh data that follows - the Spherical Video V2 RFC specification for an mshp box, excluding the box - size and type but including the following four reserved zero bytes for the - version and flags.\",\n \"type\": \"string\",\n \"format\": - \"byte\"\n },\n \"monitorStream\": {\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\",\n \"$ref\": \"MonitorStreamInfo\"\n - \ },\n \"enableClosedCaptions\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether HTTP POST closed - captioning is enabled for this broadcast. The ingestion URL of the closed - captions is returned through the liveStreams API. This is mutually exclusive - with using the closed_captions_type property, and is equivalent to setting - closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n \"latencyPreference\": - {\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"description\": \"If both this and - enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\",\n \"type\": \"string\",\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ]\n },\n - \ \"recordFromStart\": {\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\",\n \"type\": \"boolean\"\n - \ },\n \"enableAutoStop\": {\n \"description\": \"This - setting indicates whether auto stop is enabled for this broadcast. The default - value for this property is false. This setting can only be used by Events.\",\n - \ \"type\": \"boolean\"\n },\n \"projection\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"projectionUnspecified\",\n \"rectangular\",\n \"360\",\n - \ \"mesh\"\n ],\n \"description\": \"The projection - format of this broadcast. This defaults to rectangular.\"\n },\n \"startWithSlate\": - {\n \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n },\n \"stereoLayout\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ],\n \"description\": \"The 3D stereo layout of this broadcast. - This defaults to mono.\"\n },\n \"enableLowLatency\": {\n \"description\": - \"Indicates whether this broadcast has low latency enabled.\",\n \"type\": - \"boolean\"\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the live - stream referenced by boundStreamId was last updated.\",\n \"format\": - \"date-time\"\n },\n \"enableDvr\": {\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n - \ },\n \"enableContentEncryption\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\"\n },\n \"enableAutoStart\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n }\n - \ },\n \"id\": \"LiveBroadcastContentDetails\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"properties\": {\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ },\n \"gifterChannelId\": {\n \"description\": \"The - ID of the user that made the membership gifting purchase. This matches the - `snippet.authorChannelId` of the associated membership gifting message.\",\n - \ \"type\": \"string\"\n },\n \"memberLevelName\": {\n - \ \"description\": \"The name of the Level at which the viewer is - a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ChannelSectionListResponse\": {\n \"id\": \"ChannelSectionListResponse\",\n - \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of ChannelSections that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ }\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#channelSectionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoCategorySnippet\": - {\n \"id\": \"VideoCategorySnippet\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The video - category's title.\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel that created the video category.\",\n \"type\": - \"string\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\"\n },\n - \ \"assignable\": {\n \"type\": \"boolean\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a video category, such as its localized title.\"\n },\n \"InvideoBranding\": - {\n \"type\": \"object\",\n \"properties\": {\n \"position\": - {\n \"$ref\": \"InvideoPosition\",\n \"description\": \"The - spatial position within the video where the branding watermark will be displayed.\"\n - \ },\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The url of the uploaded image. Only used in apiary to api communication.\"\n - \ },\n \"imageBytes\": {\n \"description\": \"The bytes - the uploaded image. Only used in api to youtube communication.\",\n \"type\": - \"string\",\n \"format\": \"byte\"\n },\n \"timing\": - {\n \"description\": \"The temporal position within the video where - watermark will be displayed.\",\n \"$ref\": \"InvideoTiming\"\n },\n - \ \"targetChannelId\": {\n \"description\": \"The channel to - which this branding links. If not present it defaults to the current channel.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"LINT.IfChange Describes an invideo branding.\",\n \"id\": \"InvideoBranding\"\n - \ },\n \"ContentRating\": {\n \"properties\": {\n \"ifcoRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ],\n \"description\": \"The video's Irish Film Classification - Office (IFCO - Ireland) rating. See the IFCO website for more information.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n - \ ]\n },\n \"kmrbRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enum\": [\n - \ \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ]\n },\n \"resorteviolenciaRating\": - {\n \"description\": \"The video's rating in Venezuela.\",\n \"type\": - \"string\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ]\n },\n \"lsfRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n - \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n - \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Indonesia's - Lembaga Sensor Film.\"\n },\n \"djctqRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's Departamento de Justi\xE7a, - Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ]\n },\n - \ \"nfrcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"B\",\n \"C\",\n \"D\",\n - \ \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"type\": - \"string\",\n \"enum\": [\n \"nfrcUnspecified\",\n \"nfrcA\",\n - \ \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n - \ \"nfrcUnrated\"\n ]\n },\n \"smsaRating\": - {\n \"description\": \"The video's rating from Statens medier\xE5d - (Sweden's National Media Council).\",\n \"enumDescriptions\": [\n - \ \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ]\n },\n \"fmocRating\": - {\n \"description\": \"This property has been deprecated. Use the - contentDetails.contentRating.cncRating instead.\",\n \"enum\": [\n - \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ]\n },\n \"kfcbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n - \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n - \ \"kfcbUnrated\"\n ],\n \"description\": \"The - video's rating from the Kenya Film Classification Board.\",\n \"type\": - \"string\"\n },\n \"nbcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"nbcUnspecified\",\n \"nbcG\",\n \"nbcPg\",\n - \ \"nbc12plus\",\n \"nbc15plus\",\n \"nbc18plus\",\n - \ \"nbc18plusr\",\n \"nbcPu\",\n \"nbcUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Maldives - National Bureau of Classification.\"\n },\n \"bfvcRating\": - {\n \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Thailand's Board of Film - and Video Censors.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"E\",\n \"13\",\n \"15\",\n - \ \"18\",\n \"20\",\n \"B\",\n \"\"\n - \ ]\n },\n \"nbcplRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n - \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n - \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ],\n - \ \"description\": \"The video's rating in Poland.\"\n },\n - \ \"rtcRating\": {\n \"enum\": [\n \"rtcUnspecified\",\n - \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n - \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"A\",\n \"B\",\n \"B15\",\n - \ \"C\",\n \"D\",\n \"\"\n ]\n },\n - \ \"nkclvRating\": {\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Nacion\xE3lais - Kino centrs (National Film Centre of Latvia).\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"cicfRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n - \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Commission - de Contr\xF4le des Films (Belgium).\"\n },\n \"fskRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"FSK 0\",\n - \ \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"enum\": - [\n \"fskUnspecified\",\n \"fsk0\",\n \"fsk6\",\n - \ \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n \"fskUnrated\"\n - \ ]\n },\n \"menaMpaaRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To - keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\",\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ]\n - \ },\n \"djctqRatingReasons\": {\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ]\n },\n \"type\": - \"array\"\n },\n \"rteRating\": {\n \"enum\": [\n \"rteUnspecified\",\n - \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n - \ \"rteUnrated\"\n ],\n \"description\": \"The - video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"eefilmRating\": {\n \"description\": \"The - video's rating in Estonia.\",\n \"type\": \"string\",\n \"enum\": - [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n \"eefilmL\",\n - \ \"eefilmMs6\",\n \"eefilmK6\",\n \"eefilmMs12\",\n - \ \"eefilmK12\",\n \"eefilmK14\",\n \"eefilmK16\",\n - \ \"eefilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n - \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n - \ \"K-16\",\n \"\"\n ]\n },\n \"icaaRating\": - {\n \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ]\n },\n \"fcbmRating\": {\n \"enum\": - [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"description\": \"The - video's rating from Malaysia's Film Censorship Board.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ]\n },\n \"mcstRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - system for Vietnam - MCST\",\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"mocRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"description\": \"The video's Ministerio de Cultura - (Colombia) rating.\",\n \"type\": \"string\"\n },\n \"mccypRating\": - {\n \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Danish - Film Institute's (Det Danske Filminstitut) Media Council for Children and - Young People.\"\n },\n \"czfilmRating\": {\n \"description\": - \"The video's rating in the Czech Republic.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ]\n },\n - \ \"cncRating\": {\n \"description\": \"Rating system in France - - Commission de classification cinematographique\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"cncUnspecified\",\n \"cncT\",\n \"cnc10\",\n - \ \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n \"cncE\",\n - \ \"cncInterdiction\",\n \"cncUnrated\"\n ]\n - \ },\n \"fpbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\",\n \"type\": \"string\",\n \"enum\": - [\n \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n - \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n - \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ]\n },\n \"smaisRating\": {\n \"description\": - \"The video's rating in Iceland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"L\",\n \"7\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"cscfRating\": - {\n \"description\": \"The video's rating from Luxembourg's Commission - de surveillance de la classification des films (CSCF).\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ]\n },\n \"bbfcRating\": {\n \"enum\": [\n - \ \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ],\n - \ \"description\": \"The video's British Board of Film Classification - (BBFC) rating.\",\n \"type\": \"string\"\n },\n \"catvRating\": - {\n \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n - \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n - \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n - \ \"catvE\"\n ],\n \"description\": \"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.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"mccaaRating\": {\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\"\n },\n - \ \"ilfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Israel.\",\n \"enum\": - [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n - \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ]\n },\n \"chvrsRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Canadian Home Video Rating System - (CHVRS) rating.\",\n \"enum\": [\n \"chvrsUnspecified\",\n - \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n - \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n - \ \"chvrsUnrated\"\n ]\n },\n \"cnaRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"enum\": - [\n \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n - \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"mtrcbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ],\n \"description\": \"The - video's rating from the Movie and Television Review and Classification Board - (Philippines).\"\n },\n \"acbRating\": {\n \"description\": - \"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.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"Programs that have been given a P classification - by the Australian Communications and Media Authority. These programs are intended - for preschool children.\",\n \"Programs that have been given a - C classification by the Australian Communications and Media Authority. These - programs are intended for children (other than preschool children) who are - younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"ytRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"A rating that - YouTube uses to identify age-restricted content.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ]\n },\n \"pefilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Peru.\"\n },\n \"mdaRating\": {\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"egfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Egypt.\",\n \"type\": - \"string\",\n \"enum\": [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n - \ \"egfilm18\",\n \"egfilmBn\",\n \"egfilmUnrated\"\n - \ ]\n },\n \"csaRating\": {\n \"enum\": [\n - \ \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n - \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n - \ \"csaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from France's Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast - content.\",\n \"type\": \"string\"\n },\n \"mpaatRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GB\",\n \"RB\"\n ],\n \"enum\": - [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n - \ ],\n \"description\": \"The rating system for trailer, - DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n - \ },\n \"tvpgRating\": {\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's TV Parental Guidelines (TVPG) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ]\n },\n \"cceRating\": {\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"type\": \"string\",\n \"enum\": - [\n \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n - \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n - \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ]\n },\n \"cccRating\": {\n \"enum\": [\n - \ \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Todo espectador\",\n - \ \"6+ - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n - \ \"18+\",\n \"18+ - contenido excesivamente violento\",\n - \ \"18+ - contenido pornogr\xE1fico\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"chfilmRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ]\n },\n \"oflcRating\": {\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\",\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"type\": \"string\"\n },\n \"bmukkRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Unrestricted\",\n \"6+\",\n \"8+\",\n - \ \"10+\",\n \"12+\",\n \"14+\",\n \"16+\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Austrian Board of Media Classification (Bundesministerium f\xFCr - Unterricht, Kunst und Kultur).\",\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ]\n },\n - \ \"grfilmRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating in Greece.\",\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ]\n - \ },\n \"agcomRating\": {\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"description\": \"The - video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\",\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"rcnofRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\"\n },\n \"moctwRating\": {\n - \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Taiwan's - Ministry of Culture (\u6587\u5316\u90E8).\"\n },\n \"mekuRating\": - {\n \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual - Institute).\"\n },\n \"anatelRating\": {\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n - \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n - \ ],\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"kijkwijzerRating\": {\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ]\n },\n \"ecbmctRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ],\n \"description\": \"Rating system in Turkey - Evaluation - and Classification Board of the Ministry of Culture and Tourism\"\n },\n - \ \"eirinRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n - \ \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ]\n },\n \"nmcRating\": - {\n \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ],\n \"description\": \"The - National Media Council ratings system for United Arab Emirates.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ]\n - \ },\n \"nfvcbRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Nigeria's National Film - and Video Censors Board.\",\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ]\n },\n \"incaaRating\": {\n \"enum\": - [\n \"incaaUnspecified\",\n \"incaaAtp\",\n \"incaaSam13\",\n - \ \"incaaSam16\",\n \"incaaSam18\",\n \"incaaC\",\n - \ \"incaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's INCAA (Instituto Nacional de Cine - y Artes Audiovisuales - Argentina) rating.\"\n },\n \"skfilmRating\": - {\n \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n - \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n - \ \"skfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Slovakia.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ]\n },\n \"mpaaRating\": - {\n \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n - \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n - \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ]\n },\n \"cbfcRating\": {\n \"enum\": [\n - \ \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ]\n },\n \"fcoRating\": {\n \"enum\": [\n - \ \"fcoUnspecified\",\n \"fcoI\",\n \"fcoIia\",\n - \ \"fcoIib\",\n \"fcoIi\",\n \"fcoIii\",\n - \ \"fcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Hong Kong's Office for Film, Newspaper and Article Administration.\"\n - \ },\n \"mibacRating\": {\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\"\n },\n \"medietilsynetRating\": {\n - \ \"description\": \"The video's rating from Medietilsynet, the Norwegian - Media Authority.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"fpbRatingReasons\": - {\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ]\n },\n - \ \"description\": \"Reasons that explain why the video received its - FPB (South Africa) rating.\",\n \"type\": \"array\"\n },\n - \ \"russiaRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"russiaUnspecified\",\n \"russia0\",\n \"russia6\",\n - \ \"russia12\",\n \"russia16\",\n \"russia18\",\n - \ \"russiaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"description\": \"The video's National Film Registry of the Russian - Federation (MKRF - Russia) rating.\"\n },\n \"catvfrRating\": - {\n \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ],\n \"description\": \"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.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"id\": \"ContentRating\",\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\",\n \"type\": \"object\"\n },\n \"Video\": - {\n \"description\": \"A *video* resource represents a YouTube video.\",\n - \ \"id\": \"Video\",\n \"type\": \"object\",\n \"properties\": - {\n \"projectDetails\": {\n \"$ref\": \"VideoProjectDetails\",\n - \ \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the video, such as its title, description, - and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n \"id\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information about the video content, including the length - of the video and its aspect ratio.\",\n \"$ref\": \"VideoContentDetails\"\n - \ },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#video\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\"\n - \ },\n \"processingDetails\": {\n \"$ref\": \"VideoProcessingDetails\",\n - \ \"description\": \"The processingDetails object encapsulates information - about YouTube's progress in processing the uploaded video file. The properties - in the object identify the current processing status and an estimate of the - time remaining until YouTube finishes processing the video. This part also - indicates whether different types of data or content, such as file details - or thumbnail images, are available for the video. The processingProgress object - is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\"\n },\n \"statistics\": - {\n \"description\": \"The statistics object contains statistics - about the video.\",\n \"$ref\": \"VideoStatistics\"\n },\n - \ \"status\": {\n \"$ref\": \"VideoStatus\",\n \"description\": - \"The status object contains information about the video's uploading, processing, - and privacy statuses.\"\n },\n \"monetizationDetails\": {\n - \ \"description\": \"The monetizationDetails object encapsulates information - about the monetization status of the video.\",\n \"$ref\": \"VideoMonetizationDetails\"\n - \ },\n \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n - \ \"description\": \"Age restriction details related to a video. This - data can only be retrieved by the video owner.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n - \ \"fileDetails\": {\n \"$ref\": \"VideoFileDetails\",\n \"description\": - \"The fileDetails object encapsulates information about the video file that - was uploaded to YouTube, including the file's resolution, duration, audio - and video codecs, stream bitrates, and more. This data can only be retrieved - by the video owner.\"\n },\n \"player\": {\n \"$ref\": - \"VideoPlayer\",\n \"description\": \"The player object contains - information that you would use to play the video in an embedded player.\"\n - \ },\n \"suggestions\": {\n \"$ref\": \"VideoSuggestions\",\n - \ \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\"\n - \ },\n \"recordingDetails\": {\n \"$ref\": \"VideoRecordingDetails\",\n - \ \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\"\n },\n - \ \"liveStreamingDetails\": {\n \"$ref\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\"\n }\n - \ }\n },\n \"VideoTopicDetails\": {\n \"properties\": {\n \"topicIds\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Freebase - topic IDs that are centrally associated with the video. These are topics that - are centrally featured in the video, and it can be said that the video is - mainly about each of these. You can retrieve information about each topic - using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n },\n \"relevantTopicIds\": {\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"topicCategories\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of Wikipedia URLs that provide a high-level - description of the video's content.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoTopicDetails\",\n \"description\": - \"Freebase topic information related to the video.\"\n },\n \"GeoPoint\": - {\n \"id\": \"GeoPoint\",\n \"description\": \"Geographical coordinates - of a point, in WGS84.\",\n \"properties\": {\n \"altitude\": {\n - \ \"description\": \"Altitude above the reference ellipsoid, in meters.\",\n - \ \"type\": \"number\",\n \"format\": \"double\"\n },\n - \ \"latitude\": {\n \"format\": \"double\",\n \"description\": - \"Latitude in degrees.\",\n \"type\": \"number\"\n },\n \"longitude\": - {\n \"format\": \"double\",\n \"type\": \"number\",\n \"description\": - \"Longitude in degrees.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"PlaylistItem\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistItem\",\n \"properties\": {\n \"status\": {\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\",\n \"$ref\": \"PlaylistItemStatus\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the playlist item.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistItemContentDetails\",\n \"description\": \"The contentDetails - object is included in the resource if the included item is a YouTube video. - The object contains additional information about the video.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\"\n },\n \"kind\": - {\n \"default\": \"youtube#playlistItem\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItem\\\".\"\n }\n },\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\"\n },\n - \ \"MemberListResponse\": {\n \"properties\": {\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Member\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of members that match the request criteria.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n - \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#memberListResponse\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"MemberListResponse\"\n - \ },\n \"I18nLanguage\": {\n \"id\": \"I18nLanguage\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#i18nLanguage\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the i18n language.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n language, such as language code and human-readable name.\"\n }\n - \ },\n \"description\": \"An *i18nLanguage* resource identifies a - UI language currently supported by YouTube.\",\n \"type\": \"object\"\n - \ },\n \"PlaylistItemContentDetails\": {\n \"properties\": {\n \"endAt\": - {\n \"description\": \"The time, measured in seconds from the start - of the video, when the video should stop playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) By default, assume that the video.endTime - is the end of the video.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify a video. To retrieve the video - resource, set the id query parameter to this value in your API request.\"\n - \ },\n \"note\": {\n \"type\": \"string\",\n \"description\": - \"A user-generated note for this item.\"\n },\n \"startAt\": - {\n \"description\": \"The time, measured in seconds from the start - of the video, when the video should start playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) The default value is 0.\",\n \"type\": - \"string\"\n },\n \"videoPublishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the video was published to YouTube.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"PlaylistItemContentDetails\"\n - \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the member to this Member Milestone Chat. This field is empty for - messages without a comment from the member.\"\n },\n \"memberMonth\": - {\n \"description\": \"The total amount of months (rounded up) the - viewer has been a member that granted them this Member Milestone Chat. This - is the same number of months as is being displayed to YouTube users.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"memberLevelName\": {\n \"description\": \"The name of the - Level at which the viever is a member. The Level names are defined by the - YouTube channel offering the Membership. In some situations this field isn't - filled.\",\n \"type\": \"string\"\n }\n }\n },\n \"VideoStatus\": - {\n \"id\": \"VideoStatus\",\n \"description\": \"Basic details - about a video category, such as its localized title. Next Id: 18\",\n \"properties\": - {\n \"embeddable\": {\n \"description\": \"This value indicates - if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"publishAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the video is scheduled - to publish. It can be set only if the privacy status of the video is private..\"\n - \ },\n \"publicStatsViewable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value indicates if the extended video statistics - on the watch page can be viewed by everyone. Note that the view count, likes, - etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"uploadStatus\": {\n \"enum\": - [\n \"uploaded\",\n \"processed\",\n \"failed\",\n - \ \"rejected\",\n \"deleted\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Video has been - uploaded but not processed yet.\",\n \"Video has been successfully - processed.\",\n \"Processing has failed. See FailureReason.\",\n - \ \"Video has been rejected. See RejectionReason.\",\n \"Video - has been deleted.\"\n ],\n \"description\": \"The status - of the uploaded video.\"\n },\n \"rejectionReason\": {\n \"enum\": - [\n \"copyright\",\n \"inappropriate\",\n \"duplicate\",\n - \ \"termsOfUse\",\n \"uploaderAccountSuspended\",\n \"length\",\n - \ \"claim\",\n \"uploaderAccountClosed\",\n \"trademark\",\n - \ \"legal\"\n ],\n \"description\": \"This value - explains why YouTube rejected an uploaded video. This property is only present - if the uploadStatus property indicates that the upload was rejected.\",\n - \ \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"type\": \"string\"\n - \ },\n \"failureReason\": {\n \"description\": \"This - value explains why a video failed to upload. This property is only present - if the uploadStatus property indicates that the upload failed.\",\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ],\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ],\n \"type\": - \"string\"\n },\n \"license\": {\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's privacy status.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"properties\": {\n \"banType\": {\n \"enum\": [\n - \ \"permanent\",\n \"temporary\"\n ],\n \"description\": - \"The type of ban.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"The details of the user that was banned.\"\n - \ },\n \"banDurationSeconds\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The duration of the ban. This property is only - present if the banType is temporary.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"VideoFileDetails\": {\n \"id\": \"VideoFileDetails\",\n - \ \"properties\": {\n \"fileSize\": {\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"durationMs\": {\n - \ \"type\": \"string\",\n \"description\": \"The length of - the uploaded video in milliseconds.\",\n \"format\": \"uint64\"\n - \ },\n \"creationTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the uploaded video file - was created. The value is specified in ISO 8601 format. Currently, the following - ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"videoStreams\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n },\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\"\n },\n - \ \"audioStreams\": {\n \"description\": \"A list of audio - streams contained in the uploaded video file. Each item in the list contains - detailed metadata about an audio stream.\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsAudioStream\"\n },\n \"type\": \"array\"\n - \ },\n \"container\": {\n \"description\": \"The uploaded - video file's container format.\",\n \"type\": \"string\"\n },\n - \ \"fileName\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\"\n },\n \"bitrateBps\": - {\n \"description\": \"The uploaded video file's combined (video - and audio) bitrate in bits per second.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"fileType\": {\n \"enum\": - [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"description\": \"The uploaded file's - type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\"\n }\n },\n \"description\": - \"Describes original video file properties, including technical details about - audio and video streams, but also metadata information like content length, - digitization time, or geotagging information.\",\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageListResponse\",\n \"properties\": {\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\"\n - \ },\n \"offlineAt\": {\n \"description\": \"The date - and time when the underlying stream went offline.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"pollingIntervalMillis\": - {\n \"description\": \"The amount of time the client should wait - before polling again.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"type\": \"array\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"Details about a resource which is being promoted.\",\n - \ \"properties\": {\n \"customCtaButtonText\": {\n \"description\": - \"The custom call-to-action button text. If specified, it will override the - default button text for the cta_type.\",\n \"type\": \"string\"\n - \ },\n \"destinationUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should direct the user to, - if the user chooses to visit the advertiser's website.\"\n },\n \"impressionUrl\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The list of impression - URLs. The client should ping all of these URLs to indicate that the user was - shown this promoted item.\"\n },\n \"creativeViewUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user was shown this promoted item.\"\n - \ },\n \"descriptionText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text description to accompany the promoted - item.\"\n },\n \"forecastingUrl\": {\n \"type\": \"array\",\n - \ \"description\": \"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.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the promoted video.\"\n },\n \"adTag\": {\n \"description\": - \"The URL the client should fetch to request a promoted item.\",\n \"type\": - \"string\"\n },\n \"ctaType\": {\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"type\": \"string\"\n },\n \"clickTrackingUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user clicked through on this promoted item.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatBan\": {\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatBan\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the ban.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatBan\",\n \"type\": \"object\",\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\"\n - \ },\n \"I18nLanguageListResponse\": {\n \"id\": \"I18nLanguageListResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"I18nLanguage\"\n },\n \"description\": \"A list of supported - i18n languages. In this map, the i18n language ID is the map key, and its - value is the corresponding i18nLanguage resource.\",\n \"type\": - \"array\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"PlaylistItemListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"description\": \"A list of playlist items that match the request - criteria.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"PlaylistItemListResponse\"\n },\n - \ \"ActivityContentDetailsPlaylistItem\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"properties\": - {\n \"playlistItemId\": {\n \"type\": \"string\",\n \"description\": - \"ID of the item within the playlist.\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"description\": \"The value - that YouTube uses to uniquely identify the playlist.\"\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - about the resource that was added to the playlist.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"description\": \"Information - about a new playlist item.\"\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"id\": \"VideoSuggestionsTagSuggestion\",\n \"properties\": - {\n \"categoryRestricts\": {\n \"type\": \"array\",\n \"description\": - \"A set of video categories for which the tag is relevant. You can use this - information to display appropriate tag suggestions based on the video category - that the video uploader associates with the video. By default, tag suggestions - are relevant for all categories if there are no restricts defined for the - keyword.\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"tag\": {\n \"type\": \"string\",\n \"description\": - \"The keyword tag suggested for the video.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A single tag suggestion with it's relevance - information.\"\n },\n \"SubscriptionSnippet\": {\n \"id\": \"SubscriptionSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The subscription's - details.\"\n },\n \"resourceId\": {\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\",\n \"$ref\": \"ResourceId\",\n \"annotations\": {\n - \ \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n }\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the subscription was created.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the subscriber's channel.\"\n },\n - \ \"title\": {\n \"description\": \"The subscription's title.\",\n - \ \"type\": \"string\"\n },\n \"channelTitle\": {\n - \ \"description\": \"Channel title for the channel that the subscription - belongs to.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about a subscription, including title, description and thumbnails - of the subscribed item.\"\n },\n \"ActivityContentDetailsSocial\": {\n - \ \"id\": \"ActivityContentDetailsSocial\",\n \"description\": \"Details - about a social network post.\",\n \"properties\": {\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The name of the social network.\",\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ]\n },\n \"imageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"An image of - the post's author.\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"referenceUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL of the social network post.\"\n },\n - \ \"author\": {\n \"type\": \"string\",\n \"description\": - \"The author of the social network post.\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelSectionTargeting\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelSectionTargeting\",\n \"properties\": {\n \"countries\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The country the channel - section is targeting.\"\n },\n \"languages\": {\n \"description\": - \"The language the channel section is targeting.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"regions\": {\n \"description\": \"The region the channel - section is targeting.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"description\": - \"ChannelSection targeting setting.\"\n },\n \"ChannelListResponse\": - {\n \"properties\": {\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Channel\"\n },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ }\n },\n \"id\": \"ChannelListResponse\",\n \"type\": - \"object\"\n },\n \"Entity\": {\n \"properties\": {\n \"typeId\": - {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\"\n },\n \"url\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Entity\"\n - \ },\n \"VideoCategory\": {\n \"description\": \"A *videoCategory* - resource identifies a category that has been or could be associated with uploaded - videos.\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoCategory\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the video category, including its title.\",\n - \ \"$ref\": \"VideoCategorySnippet\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the video category.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoCategory\"\n },\n \"ThumbnailDetails\": {\n \"id\": \"ThumbnailDetails\",\n - \ \"properties\": {\n \"maxres\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The maximum resolution quality image for this - resource.\"\n },\n \"medium\": {\n \"description\": - \"The medium quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"high\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The high quality image for this resource.\"\n },\n \"default\": - {\n \"description\": \"The default image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"standard\": {\n \"description\": - \"The standard quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Internal - representation of thumbnails for a YouTube resource.\"\n },\n \"MembershipsLevelSnippet\": - {\n \"properties\": {\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n },\n \"levelDetails\": {\n \"$ref\": \"LevelDetails\",\n - \ \"description\": \"Details about the pricing level.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"MembershipsLevelSnippet\"\n - \ },\n \"CommentThread\": {\n \"id\": \"CommentThread\",\n \"type\": - \"object\",\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"replies\": - {\n \"$ref\": \"CommentThreadReplies\",\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"default\": \"youtube#commentThread\"\n },\n \"snippet\": - {\n \"$ref\": \"CommentThreadSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\"\n }\n },\n \"description\": \"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.\"\n },\n \"LiveChatSuperStickerDetails\": {\n \"id\": - \"LiveChatSuperStickerDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made.\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"amountMicros\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The amount purchased by the user, - in micros (1,750,000 micros = 1.75).\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"Information about the Super Sticker.\",\n - \ \"$ref\": \"SuperStickerMetadata\"\n },\n \"tier\": - {\n \"format\": \"uint32\",\n \"description\": \"The tier - in which the amount belongs. Lower amounts belong to lower tiers. The lowest - tier is 1.\",\n \"type\": \"integer\"\n }\n }\n },\n - \ \"ThirdPartyLinkStatus\": {\n \"properties\": {\n \"linkStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ThirdPartyLinkStatus\",\n \"type\": \"object\",\n - \ \"description\": \"The third-party link status object contains information - about the status of the link.\"\n },\n \"LiveChatMessage\": {\n \"id\": - \"LiveChatMessage\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"authorDetails\": {\n \"$ref\": - \"LiveChatMessageAuthorDetails\",\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the message.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveChatMessage\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n }\n - \ },\n \"description\": \"A *liveChatMessage* resource represents - a chat message in a YouTube Live Chat.\"\n },\n \"InvideoTiming\": {\n - \ \"properties\": {\n \"offsetMs\": {\n \"format\": \"uint64\",\n - \ \"description\": \"Defines the time at which the promotion will - appear. Depending on the value of type the value of the offsetMs field will - represent a time offset from the start or from the end of the video, expressed - in milliseconds.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"enum\": [\n \"offsetFromStart\",\n - \ \"offsetFromEnd\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"Describes a timing type. If the value is offsetFromStart, then the offsetMs - field represents an offset from the start of the video. If the value is offsetFromEnd, - then the offsetMs field represents an offset from the end of the video.\"\n - \ },\n \"durationMs\": {\n \"description\": \"Defines - the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n }\n },\n \"id\": \"InvideoTiming\",\n - \ \"description\": \"Describes a temporal position of a visual widget - inside a video.\",\n \"type\": \"object\"\n },\n \"PropertyValue\": - {\n \"type\": \"object\",\n \"description\": \"A pair Property / - Value.\",\n \"id\": \"PropertyValue\",\n \"properties\": {\n \"property\": - {\n \"description\": \"A property.\",\n \"type\": \"string\"\n - \ },\n \"value\": {\n \"type\": \"string\",\n \"description\": - \"The property's value.\"\n }\n }\n },\n \"LiveChatModeratorListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of moderators that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n }\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": - \"LiveChatModeratorListResponse\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"Thumbnail\": {\n \"id\": - \"Thumbnail\",\n \"properties\": {\n \"width\": {\n \"description\": - \"(Optional) Width of the thumbnail image.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"height\": {\n \"type\": - \"integer\",\n \"description\": \"(Optional) Height of the thumbnail - image.\",\n \"format\": \"uint32\"\n },\n \"url\": - {\n \"type\": \"string\",\n \"description\": \"The thumbnail - image's URL.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"A thumbnail is an image representing a YouTube resource.\"\n },\n \"MembershipsDuration\": - {\n \"properties\": {\n \"memberSince\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the user - became a continuous member across all levels.\"\n },\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"description\": \"The cumulative - time the user has been a member across all levels in complete months (the - time is rounded down to the nearest integer).\",\n \"format\": \"int32\"\n - \ }\n },\n \"id\": \"MembershipsDuration\",\n \"type\": - \"object\"\n },\n \"ChannelBrandingSettings\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"channel\": {\n \"description\": - \"Branding properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n - \ },\n \"hints\": {\n \"items\": {\n \"$ref\": - \"PropertyValue\"\n },\n \"type\": \"array\",\n \"description\": - \"Additional experimental branding properties.\"\n },\n \"image\": - {\n \"$ref\": \"ImageSettings\",\n \"description\": \"Branding - properties for branding images.\"\n },\n \"watch\": {\n \"$ref\": - \"WatchSettings\",\n \"description\": \"Branding properties for the - watch page.\"\n }\n },\n \"description\": \"Branding properties - of a YouTube channel.\",\n \"id\": \"ChannelBrandingSettings\"\n },\n - \ \"VideoPlayer\": {\n \"id\": \"VideoPlayer\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\",\n - \ \"type\": \"string\"\n },\n \"embedHeight\": {\n \"type\": - \"string\",\n \"format\": \"int64\"\n },\n \"embedWidth\": - {\n \"type\": \"string\",\n \"format\": \"int64\",\n \"description\": - \"The embed width\"\n }\n },\n \"description\": \"Player - to be used for a video playback.\"\n },\n \"ChannelSnippet\": {\n \"description\": - \"Basic details about a channel, including title, description and thumbnails.\",\n - \ \"properties\": {\n \"thumbnails\": {\n \"description\": - \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel's default title and description.\"\n },\n \"country\": - {\n \"description\": \"The country of the channel.\",\n \"type\": - \"string\"\n },\n \"customUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The custom url of the channel.\"\n },\n - \ \"title\": {\n \"description\": \"The channel's title.\",\n - \ \"type\": \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"description\": {\n \"description\": \"The description - of the channel.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the channel was created.\"\n - \ }\n },\n \"id\": \"ChannelSnippet\",\n \"type\": \"object\"\n - \ },\n \"RelatedEntity\": {\n \"properties\": {\n \"entity\": - {\n \"$ref\": \"Entity\"\n }\n },\n \"id\": \"RelatedEntity\",\n - \ \"type\": \"object\"\n },\n \"LiveChatBanSnippet\": {\n \"properties\": - {\n \"type\": {\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"type\": - \"string\",\n \"description\": \"The type of ban.\",\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ]\n },\n \"banDurationSeconds\": - {\n \"format\": \"uint64\",\n \"description\": \"The duration - of a ban, only filled if the ban has type TEMPORARY.\",\n \"type\": - \"string\"\n },\n \"liveChatId\": {\n \"description\": - \"The chat this ban is pertinent to.\",\n \"type\": \"string\"\n - \ },\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatBanSnippet\"\n - \ },\n \"SubscriptionSubscriberSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"title\": {\n \"description\": - \"The title of the subscriber.\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"description\": \"Thumbnails for this - subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the subscriber.\"\n },\n \"channelId\": {\n \"description\": - \"The channel ID of the subscriber.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Basic details about a subscription's subscriber - including title, description, channel ID and thumbnails.\",\n \"id\": - \"SubscriptionSubscriberSnippet\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"id\": \"LiveStreamConfigurationIssue\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The long-form description of the issue and how - to resolve it.\"\n },\n \"reason\": {\n \"type\": \"string\",\n - \ \"description\": \"The short-form reason for this issue.\"\n },\n - \ \"type\": {\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"description\": \"The kind of error happening.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"severity\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"How severe this issue is to the stream.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"info\",\n - \ \"warning\",\n \"error\"\n ]\n }\n - \ }\n },\n \"VideoRecordingDetails\": {\n \"description\": - \"Recording information associated with the video.\",\n \"properties\": - {\n \"locationDescription\": {\n \"description\": \"The text - description of the location where the video was recorded.\",\n \"type\": - \"string\"\n },\n \"recordingDate\": {\n \"description\": - \"The date and time when the video was recorded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"location\": {\n - \ \"$ref\": \"GeoPoint\",\n \"description\": \"The geolocation - information associated with the video.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoRecordingDetails\"\n },\n \"ThirdPartyLinkSnippet\": - {\n \"description\": \"Basic information about a third party account - link, including its type and type-specific information.\",\n \"type\": - \"object\",\n \"properties\": {\n \"channelToStoreLink\": {\n - \ \"$ref\": \"ChannelToStoreLinkDetails\",\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\"\n },\n \"type\": {\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Type of the - link named after the entities that are being linked.\"\n }\n },\n - \ \"id\": \"ThirdPartyLinkSnippet\"\n },\n \"ChannelSettings\": - {\n \"description\": \"Branding properties for the channel view.\",\n - \ \"type\": \"object\",\n \"id\": \"ChannelSettings\",\n \"properties\": - {\n \"showRelatedChannels\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether related channels should be proposed.\"\n - \ },\n \"showBrowseView\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the tab to browse the videos should be - displayed.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\"\n },\n \"defaultTab\": {\n \"type\": \"string\",\n - \ \"description\": \"Which content tab users should see when viewing - the channel.\"\n },\n \"featuredChannelsTitle\": {\n \"description\": - \"Title for the featured channels tab.\",\n \"type\": \"string\"\n - \ },\n \"moderateComments\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether user-submitted comments left on the channel - page need to be approved by the channel owner to be publicly visible.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the channel title.\"\n },\n \"unsubscribedTrailer\": - {\n \"description\": \"The trailer of the channel, for users that - are not subscribers.\",\n \"type\": \"string\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"keywords\": {\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\",\n \"type\": \"string\"\n - \ },\n \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"featuredChannelsUrls\": - {\n \"description\": \"The list of featured channels.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"profileColor\": {\n \"description\": \"A prominent - color that can be rendered on this channel page.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the channel description.\"\n }\n - \ }\n },\n \"ThumbnailSetResponse\": {\n \"properties\": {\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": \"A list of - thumbnails.\",\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n \"default\": - \"youtube#thumbnailSetResponse\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ThumbnailSetResponse\",\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageAuthorDetails\": {\n \"properties\": {\n - \ \"isChatSponsor\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is a sponsor of the live chat.\"\n },\n \"isVerified\": - {\n \"description\": \"Whether the author's identity has been verified - by YouTube.\",\n \"type\": \"boolean\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"isChatModerator\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a moderator - of the live chat.\"\n },\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The channel's display name.\"\n - \ },\n \"isChatOwner\": {\n \"description\": \"Whether - the author is the owner of the live chat.\",\n \"type\": \"boolean\"\n - \ },\n \"channelId\": {\n \"description\": \"The YouTube - channel ID.\",\n \"type\": \"string\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageAuthorDetails\"\n - \ },\n \"ChannelSectionSnippet\": {\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel - section's title for multiple_playlists and multiple_channels.\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": - \"The language of the channel section's default title and description.\"\n - \ },\n \"type\": {\n \"description\": \"The type of - the channel section.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ]\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the channel section.\",\n \"type\": \"string\"\n - \ },\n \"position\": {\n \"description\": \"The position - of the channel section in the channel.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"style\": {\n \"description\": - \"The style of the channel section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"localized\": {\n \"$ref\": \"ChannelSectionLocalization\",\n - \ \"description\": \"Localized title, read-only.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ChannelSectionSnippet\",\n \"description\": - \"Basic details about a channel section, including title, style and position.\"\n - \ },\n \"LiveChatModerator\": {\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"default\": \"youtube#liveChatModerator\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatModeratorSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the moderator.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"A *liveChatModerator* resource represents a moderator for a YouTube live - chat. A chat moderator has the ability to ban/unban users from a chat, remove - message, etc.\",\n \"id\": \"LiveChatModerator\"\n },\n \"PlaylistStatus\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistStatus\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The playlist's privacy status.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ]\n }\n }\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"properties\": {\n \"timeLeftMs\": {\n \"type\": - \"string\",\n \"description\": \"An estimate of the amount of time, - in millseconds, that YouTube needs to finish processing the video.\",\n \"format\": - \"uint64\"\n },\n \"partsProcessed\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of parts of the video that YouTube has already processed. You can estimate - the percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\"\n },\n - \ \"partsTotal\": {\n \"format\": \"uint64\",\n \"description\": - \"An estimate of the total number of parts that need to be processed for the - video. The number may be updated with more precise estimates while YouTube - processes the video.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"VideoProcessingDetailsProcessingProgress\",\n \"type\": - \"object\",\n \"description\": \"Video processing progress and completion - time estimate.\"\n },\n \"LiveBroadcastStatus\": {\n \"type\": - \"object\",\n \"properties\": {\n \"lifeCycleStatus\": {\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's status. The status can be updated - using the API's liveBroadcasts.transition method.\",\n \"enum\": - [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ]\n },\n \"liveBroadcastPriority\": - {\n \"enumDescriptions\": [\n \"\",\n \"Low - priority broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ],\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Priority of - the live broadcast event (internal state).\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"This field - will be set to True if the creator declares the broadcast to be kids only: - go/live-cw-work.\"\n },\n \"madeForKids\": {\n \"description\": - \"Whether the broadcast is made for kids or not, decided by YouTube instead - of the creator. This field is read only.\",\n \"type\": \"boolean\"\n - \ },\n \"recordingStatus\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"description\": \"The broadcast's recording status.\",\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"The recording has not yet been started.\",\n \"The - recording is currently on.\",\n \"The recording is completed, and - cannot be started again.\"\n ]\n },\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Live broadcast state.\",\n \"id\": \"LiveBroadcastStatus\"\n - \ },\n \"LiveStreamStatus\": {\n \"id\": \"LiveStreamStatus\",\n - \ \"properties\": {\n \"healthStatus\": {\n \"$ref\": - \"LiveStreamHealthStatus\",\n \"description\": \"The health status - of the stream.\"\n },\n \"streamStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"created\",\n \"ready\",\n - \ \"active\",\n \"inactive\",\n \"error\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Brief description - of the live stream status.\"\n },\n \"MembershipsDetails\": {\n \"id\": - \"MembershipsDetails\",\n \"properties\": {\n \"accessibleLevels\": - {\n \"type\": \"array\",\n \"description\": \"Ids of all - levels that the user has access to. This includes the currently active level - and all other levels that are included because of a higher purchase.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"highestAccessibleLevelDisplayName\": {\n \"description\": - \"Display name for the highest level that the user has access to at the moment.\",\n - \ \"type\": \"string\"\n },\n \"membershipsDuration\": - {\n \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\",\n \"$ref\": \"MembershipsDuration\"\n - \ },\n \"membershipsDurationAtLevels\": {\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"type\": - \"array\",\n \"description\": \"Data about memberships duration on - particular pricing levels.\"\n },\n \"highestAccessibleLevel\": - {\n \"description\": \"Id of the highest level that the user has - access to at the moment.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"MemberSnippet\": {\n \"id\": - \"MemberSnippet\",\n \"properties\": {\n \"memberDetails\": {\n - \ \"description\": \"Details about the member.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"creatorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the channel that's offering - memberships.\"\n },\n \"membershipsDetails\": {\n \"description\": - \"Details about the user's membership.\",\n \"$ref\": \"MembershipsDetails\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"type\": \"object\",\n \"id\": \"VideoFileDetailsVideoStream\",\n - \ \"properties\": {\n \"codec\": {\n \"type\": \"string\",\n - \ \"description\": \"The video codec that the stream uses.\"\n },\n - \ \"rotation\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The amount that YouTube needs to - rotate the original source content to properly display the video.\",\n \"enum\": - [\n \"none\",\n \"clockwise\",\n \"upsideDown\",\n - \ \"counterClockwise\",\n \"other\"\n ],\n \"type\": - \"string\"\n },\n \"bitrateBps\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The video - stream's bitrate, in bits per second.\"\n },\n \"aspectRatio\": - {\n \"format\": \"double\",\n \"description\": \"The video - content's display aspect ratio, which specifies the aspect ratio in which - the video should be displayed.\",\n \"type\": \"number\"\n },\n - \ \"frameRateFps\": {\n \"type\": \"number\",\n \"description\": - \"The video stream's frame rate, in frames per second.\",\n \"format\": - \"double\"\n },\n \"widthPixels\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The encoded - video content's width in pixels. You can calculate the video's encoding aspect - ratio as width_pixels / height_pixels.\"\n },\n \"heightPixels\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The encoded video content's height in pixels.\"\n },\n \"vendor\": - {\n \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Information about - a video stream.\"\n },\n \"LocalizedProperty\": {\n \"properties\": - {\n \"defaultLanguage\": {\n \"description\": \"The language - of the default property.\",\n \"$ref\": \"LanguageTag\"\n },\n - \ \"default\": {\n \"type\": \"string\"\n },\n \"localized\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n }\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LocalizedProperty\"\n },\n \"CaptionListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#captionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#captionListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"description\": - \"A list of captions that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Caption\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"CaptionListResponse\",\n \"type\": - \"object\"\n },\n \"LanguageTag\": {\n \"type\": \"object\",\n - \ \"id\": \"LanguageTag\",\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n }\n },\n \"PlaylistContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistContentDetails\",\n - \ \"properties\": {\n \"itemCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The number - of videos in the playlist.\"\n }\n }\n },\n \"I18nRegionSnippet\": - {\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the region.\"\n },\n - \ \"gl\": {\n \"type\": \"string\",\n \"description\": - \"The region code as a 2-letter ISO country code.\"\n }\n },\n - \ \"description\": \"Basic details about an i18n region, such as region - code and human-readable name.\",\n \"type\": \"object\",\n \"id\": - \"I18nRegionSnippet\"\n },\n \"LiveChatSuperChatDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"currency\": {\n \"type\": - \"string\",\n \"description\": \"The currency in which the purchase - was made.\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this Super Chat event.\",\n \"type\": - \"string\"\n },\n \"tier\": {\n \"description\": \"The - tier in which the amount belongs. Lower amounts belong to lower tiers. The - lowest tier is 1.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n },\n \"amountMicros\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ }\n },\n \"id\": \"LiveChatSuperChatDetails\"\n },\n - \ \"AbuseReport\": {\n \"properties\": {\n \"description\": - {\n \"type\": \"string\"\n },\n \"relatedEntities\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n }\n },\n \"subject\": {\n \"$ref\": - \"Entity\"\n },\n \"abuseTypes\": {\n \"items\": {\n - \ \"$ref\": \"AbuseType\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"AbuseReport\"\n - \ },\n \"CommentThreadListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"CommentThreadListResponse\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"description\": - \"A list of comment threads that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"CommentThread\"\n - \ }\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"default\": \"youtube#commentThreadListResponse\"\n }\n - \ }\n },\n \"ChannelBannerResource\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL of this banner image.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#channelBannerResource\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelBannerResource\",\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\"\n - \ },\n \"PlaylistSnippet\": {\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails.\",\n \"id\": - \"PlaylistSnippet\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"localized\": {\n \"$ref\": \"PlaylistLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"thumbnailVideoId\": {\n \"description\": \"Note: - if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The playlist's description.\",\n \"type\": \"string\"\n },\n - \ \"tags\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"Keyword tags associated with the - playlist.\",\n \"type\": \"array\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlists.insert\",\n \"youtube.playlists.update\"\n - \ ]\n },\n \"description\": \"The playlist's title.\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the playlist was created.\",\n - \ \"format\": \"date-time\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the playlist's default title - and description.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"The channel - title of the channel that the video belongs to.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the playlist.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoFileDetailsAudioStream\": {\n \"description\": - \"Information about an audio stream.\",\n \"id\": \"VideoFileDetailsAudioStream\",\n - \ \"properties\": {\n \"channelCount\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of audio channels that the stream contains.\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n },\n \"codec\": {\n \"description\": - \"The audio codec that the stream uses.\",\n \"type\": \"string\"\n - \ },\n \"bitrateBps\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The audio stream's bitrate, in bits - per second.\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoGetRatingResponse\": - {\n \"type\": \"object\",\n \"id\": \"VideoGetRatingResponse\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of ratings that match the request criteria.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoGetRatingResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"Comment\": {\n \"description\": - \"A *comment* represents a single YouTube comment.\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the comment.\"\n },\n \"kind\": {\n \"default\": - \"youtube#comment\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the comment.\",\n \"$ref\": \"CommentSnippet\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Comment\"\n - \ },\n \"Playlist\": {\n \"description\": \"A *playlist* resource - represents a YouTube playlist. A playlist is a collection of videos that can - be viewed sequentially and shared with other users. A playlist can contain - up to 200 videos, and YouTube does not limit the number of playlists that - each user creates. By default, playlists are publicly visible to other users, - but playlists can be public or private. YouTube also uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the playlist.\"\n },\n \"player\": - {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": \"The - player object contains information that you would use to play the playlist - in an embedded player.\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistSnippet\",\n \"description\": \"The snippet object contains - basic details about the playlist, such as its title and description.\"\n },\n - \ \"status\": {\n \"$ref\": \"PlaylistStatus\",\n \"description\": - \"The status object contains status information for the playlist.\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n }\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"default\": \"youtube#playlist\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Playlist\"\n - \ },\n \"TestItemTestItemSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"TestItemTestItemSnippet\",\n \"properties\": {}\n },\n - \ \"I18nRegion\": {\n \"type\": \"object\",\n \"id\": \"I18nRegion\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the i18n region.\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nRegion\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"I18nRegionSnippet\",\n \"description\": \"The snippet object contains - basic details about the i18n region, such as region code and human-readable - name.\"\n }\n },\n \"description\": \"A *i18nRegion* resource - identifies a region where YouTube is available.\"\n },\n \"Member\": - {\n \"type\": \"object\",\n \"description\": \"A *member* resource - represents a member for a YouTube channel. A member provides recurring monetary - support to a creator and receives special benefits.\",\n \"id\": \"Member\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"default\": \"youtube#member\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"MemberSnippet\",\n \"description\": \"The snippet object contains - basic details about the member.\"\n }\n }\n },\n \"ActivityContentDetailsFavorite\": - {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource that was marked as - a favorite.\"\n }\n },\n \"description\": \"Information about - a video that was marked as a favorite video.\",\n \"id\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"VideoCategoryListResponse\": {\n \"properties\": {\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoCategoryListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n },\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\"\n }\n },\n \"id\": \"VideoCategoryListResponse\",\n - \ \"type\": \"object\"\n },\n \"VideoMonetizationDetails\": {\n - \ \"description\": \"Details about monetization of a YouTube Video.\",\n - \ \"properties\": {\n \"access\": {\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\",\n - \ \"$ref\": \"AccessPolicy\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoMonetizationDetails\"\n },\n \"LiveChatMessageSnippet\": - {\n \"description\": \"Next ID: 33\",\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageSnippet\",\n \"properties\": {\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"fanFundingEventDetails\": - {\n \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n - \ \"description\": \"Details about the Super Chat event, this is only - set if the type is 'superChatEvent'.\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"liveChatId\": - {\n \"type\": \"string\"\n },\n \"authorChannelId\": - {\n \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\",\n \"type\": \"string\"\n },\n \"newSponsorDetails\": - {\n \"description\": \"Details about the New Member Announcement - event, this is only set if the type is 'newSponsorEvent'. Please note that - \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n \"$ref\": - \"LiveChatNewSponsorDetails\"\n },\n \"hasDisplayContent\": - {\n \"description\": \"Whether the message has display content that - should be displayed to users.\",\n \"type\": \"boolean\"\n },\n - \ \"displayMessage\": {\n \"type\": \"string\",\n \"description\": - \"Contains a string that can be displayed to the user. If this field is not - present the message is silent, at the moment only messages of type TOMBSTONE - and CHAT_ENDED_EVENT are silent.\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"description\": \"Details about the Gift Membership Received - event, this is only set if the type is 'giftMembershipReceivedEvent'.\",\n - \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n - \ \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"superStickerDetails\": {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n - \ \"description\": \"Details about the Super Sticker event, this is - only set if the type is 'superStickerEvent'.\"\n },\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n },\n \"textMessageDetails\": - {\n \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\",\n \"$ref\": \"LiveChatTextMessageDetails\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\",\n \"type\": - \"string\",\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ]\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the message was orignally published.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n }\n }\n },\n \"VideoLiveStreamingDetails\": - {\n \"type\": \"object\",\n \"description\": \"Details about the - live streaming metadata.\",\n \"properties\": {\n \"actualEndTime\": - {\n \"description\": \"The time that the broadcast actually ended. - This value will not be available until the broadcast is over.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"activeLiveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the currently active live chat attached to this video. This field is filled - only if the video is a currently live broadcast that has live chat. Once the - broadcast transitions to complete this field will be removed and the live - chat closed down. For persistent broadcasts that live chat id will no longer - be tied to this video but rather to the new video being displayed at the persistent - page.\"\n },\n \"concurrentViewers\": {\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"scheduledEndTime\": - {\n \"description\": \"The time that the broadcast is scheduled to - end. If the value is empty or the property is not present, then the broadcast - is scheduled to contiue indefinitely.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast is scheduled to begin.\"\n - \ },\n \"actualStartTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\",\n \"format\": - \"date-time\"\n }\n },\n \"id\": \"VideoLiveStreamingDetails\"\n - \ },\n \"I18nRegionListResponse\": {\n \"id\": \"I18nRegionListResponse\",\n - \ \"properties\": {\n \"items\": {\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\",\n - \ \"items\": {\n \"$ref\": \"I18nRegion\"\n },\n - \ \"type\": \"array\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#i18nRegionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsLike\": {\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the rated resource.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"type\": \"object\",\n \"description\": \"Information about a - resource that received a positive (like) rating.\"\n },\n \"TokenPagination\": - {\n \"properties\": {},\n \"id\": \"TokenPagination\",\n \"type\": - \"object\",\n \"description\": \"Stub token pagination template to suppress - results.\"\n },\n \"ActivityContentDetailsChannelItem\": {\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\"\n }\n },\n \"description\": - \"Details about a resource which was added to a channel.\",\n \"id\": - \"ActivityContentDetailsChannelItem\",\n \"type\": \"object\"\n },\n - \ \"LocalizedString\": {\n \"type\": \"object\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n },\n \"language\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LocalizedString\"\n - \ },\n \"ActivityContentDetailsBulletin\": {\n \"description\": - \"Details about a channel bulletin post.\",\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsBulletin\",\n \"properties\": {\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\"\n }\n - \ }\n },\n \"SearchListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"default\": \"youtube#searchListResponse\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"regionCode\": {\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"Pagination information for token pagination.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"SearchResult\"\n }\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"SearchListResponse\"\n },\n \"PageInfo\": - {\n \"type\": \"object\",\n \"description\": \"Paging details for - lists of resources, including total number of items available and number of - resources returned in a single page.\",\n \"id\": \"PageInfo\",\n \"properties\": - {\n \"resultsPerPage\": {\n \"format\": \"int32\",\n \"description\": - \"The number of results included in the API response.\",\n \"type\": - \"integer\"\n },\n \"totalResults\": {\n \"type\": - \"integer\",\n \"description\": \"The total number of results in - the result set.\",\n \"format\": \"int32\"\n }\n }\n - \ },\n \"InvideoPosition\": {\n \"type\": \"object\",\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"id\": \"InvideoPosition\",\n \"properties\": {\n \"type\": - {\n \"enum\": [\n \"corner\"\n ],\n \"description\": - \"Defines the position type.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\"\n ]\n },\n \"cornerPosition\": - {\n \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\"\n - \ }\n }\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"type\": \"object\",\n \"description\": \"DEPRECATED Region - restriction of the video.\",\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"properties\": {\n \"allowed\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\"\n },\n - \ \"blocked\": {\n \"description\": \"A list of region codes - that identify countries where the video is blocked. If this property is present - and a country is not listed in its value, then the video is viewable in that - country. If this property is present and contains an empty list, the video - is viewable in all countries.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n }\n - \ },\n \"ImageSettings\": {\n \"description\": \"Branding properties - for images associated with the channel.\",\n \"properties\": {\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"bannerTabletHdImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Tablet size high resolution (2276x377).\"\n - \ },\n \"bannerMobileExtraHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size high resolution (1440x395).\",\n \"type\": - \"string\"\n },\n \"bannerMobileLowImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size low resolution - (320x88).\"\n },\n \"watchIconImageUrl\": {\n \"type\": - \"string\"\n },\n \"bannerMobileImageUrl\": {\n \"description\": - \"Banner image. Mobile size (640x175).\",\n \"type\": \"string\"\n - \ },\n \"bannerTabletImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Tablet size (1707x283).\"\n },\n - \ \"bannerMobileMediumHdImageUrl\": {\n \"description\": \"Banner - image. Mobile size medium/high resolution (960x263).\",\n \"type\": - \"string\"\n },\n \"bannerMobileHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\"\n },\n \"bannerTabletLowImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size low resolution - (1138x188).\"\n },\n \"backgroundImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the background - image shown on the video watch page. The image should be 1200px by 615px, - with a maximum file size of 128k.\"\n },\n \"bannerTvImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": - {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 640px by 70px banner image - that appears below the video player in the default view of the video watch - page. The URL for the image that appears above the top-left corner of the - video player. This is a 25-pixel-high image with a flexible width that cannot - exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"largeBrandedBannerImageUrl\": {\n \"description\": \"The - URL for the 854px by 70px image that appears below the video player in the - expanded video view of the video watch page.\",\n \"$ref\": \"LocalizedProperty\"\n - \ },\n \"trackingImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\"\n - \ },\n \"bannerTvHighImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. TV size high resolution (1920x1080).\"\n - \ },\n \"bannerImageUrl\": {\n \"description\": \"Banner - image. Desktop size (1060x175).\",\n \"type\": \"string\"\n },\n - \ \"bannerTabletExtraHdImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Tablet size extra high resolution - (2560x424).\"\n }\n },\n \"id\": \"ImageSettings\",\n \"type\": - \"object\"\n },\n \"PlaylistPlayer\": {\n \"properties\": {\n \"embedHtml\": - {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a - player that will play the playlist.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"PlaylistPlayer\",\n \"type\": \"object\"\n - \ },\n \"ChannelContentOwnerDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"id\": - \"ChannelContentOwnerDetails\",\n \"properties\": {\n \"timeLinked\": - {\n \"description\": \"The date and time when the channel was linked - to the content owner.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"contentOwner\": {\n \"description\": - \"The ID of the content owner linked to the channel.\",\n \"type\": - \"string\"\n }\n }\n },\n \"MembershipsLevel\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the memberships level.\"\n },\n \"snippet\": {\n \"$ref\": - \"MembershipsLevelSnippet\",\n \"description\": \"The snippet object - contains basic details about the level.\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#membershipsLevel\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A *membershipsLevel* - resource represents an offer made by YouTube creators for their fans. Users - can become members of the channel by joining one of the available levels. - They will provide recurring monetary support and receives special benefits.\",\n - \ \"id\": \"MembershipsLevel\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"description\": \"Information about the uploaded video.\",\n \"id\": - \"ActivityContentDetailsUpload\",\n \"type\": \"object\",\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\"\n }\n - \ }\n },\n \"ChannelLocalization\": {\n \"description\": \"Channel - localization setting\",\n \"type\": \"object\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel's description.\"\n },\n \"title\": - {\n \"description\": \"The localized strings for channel's title.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ChannelLocalization\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"properties\": - {\n \"seedResourceId\": {\n \"description\": \"The seedResourceId - object contains information about the resource that caused the recommendation.\",\n - \ \"$ref\": \"ResourceId\"\n },\n \"resourceId\": {\n - \ \"description\": \"The resourceId object contains information that - identifies the recommended resource.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"reason\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"reasonUnspecified\",\n \"videoFavorited\",\n - \ \"videoLiked\",\n \"videoWatched\"\n ],\n - \ \"description\": \"The reason that the resource is recommended to - the user.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsRecommendation\",\n \"description\": \"Information - that identifies the recommended resource.\"\n },\n \"LiveChatModeratorSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"moderatorDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the moderator.\"\n },\n \"liveChatId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID of the - live chat this moderator can act on.\"\n }\n },\n \"id\": - \"LiveChatModeratorSnippet\"\n },\n \"CommentThreadSnippet\": {\n \"properties\": - {\n \"topLevelComment\": {\n \"$ref\": \"Comment\",\n \"description\": - \"The top level comment of this thread.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\",\n \"type\": \"string\"\n },\n - \ \"isPublic\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\"\n },\n \"totalReplyCount\": {\n \"format\": - \"uint32\",\n \"description\": \"The total number of replies (not - including the top level comment).\",\n \"type\": \"integer\"\n },\n - \ \"canReply\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"CommentThreadSnippet\",\n - \ \"description\": \"Basic details about a comment thread.\"\n },\n - \ \"IngestionInfo\": {\n \"type\": \"object\",\n \"description\": - \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n - \ \"id\": \"IngestionInfo\",\n \"properties\": {\n \"rtmpsIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of ingestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"backupIngestionAddress\": - {\n \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\",\n - \ \"type\": \"string\"\n },\n \"ingestionAddress\": - {\n \"description\": \"The primary ingestion URL that you should - use to stream video to YouTube. You must stream video to this URL. Depending - on which application or tool you use to encode your video stream, you may - need to enter the stream URL and stream name separately or you may need to - concatenate them in the following format: *STREAM_URL/STREAM_NAME* \",\n \"type\": - \"string\"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of backupIngestionAddress in order to stream via RTMPS. Not applicable to - non-RTMP streams.\"\n },\n \"streamName\": {\n \"type\": - \"string\",\n \"description\": \"The stream name that YouTube assigns - to the video stream.\"\n }\n }\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"properties\": {\n \"secondaryReasons\": {\n \"description\": - \"The secondary reasons associated with this reason, if any are available. - (There might be 0 or more.)\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportSecondaryReason\"\n },\n \"type\": \"array\"\n - \ },\n \"label\": {\n \"description\": \"The localized - label belonging to this abuse report reason.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Basic details about a video - category, such as its localized title.\",\n \"type\": \"object\",\n \"id\": - \"VideoAbuseReportReasonSnippet\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\",\n - \ \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label for this abuse report secondary - reason.\"\n },\n \"id\": {\n \"description\": \"The - ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelSection\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"description\": \"Localizations - for different languages\"\n },\n \"targeting\": {\n \"$ref\": - \"ChannelSectionTargeting\",\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the channel section, such as its type, style and title.\",\n - \ \"$ref\": \"ChannelSectionSnippet\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel section.\"\n },\n \"kind\": - {\n \"default\": \"youtube#channelSection\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n }\n },\n \"id\": \"ChannelSection\",\n - \ \"type\": \"object\"\n },\n \"VideoAbuseReportReason\": {\n \"description\": - \"A `__videoAbuseReportReason__` resource identifies a reason that a video - could be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\",\n - \ \"id\": \"VideoAbuseReportReason\",\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the abuse report reason.\",\n \"$ref\": - \"VideoAbuseReportReasonSnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#videoAbuseReportReason\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID of this abuse report reason.\"\n }\n }\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"currency\": {\n \"type\": - \"string\",\n \"description\": \"The currency in which the fund was - made.\"\n },\n \"amountMicros\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The amount of the fund.\",\n \"type\": - \"string\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n }\n }\n },\n \"MembershipsDurationAtLevel\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsDurationAtLevel\",\n - \ \"properties\": {\n \"memberSince\": {\n \"description\": - \"The date and time when the user became a continuous member for the given - level.\",\n \"type\": \"string\"\n },\n \"level\": - {\n \"type\": \"string\",\n \"description\": \"Pricing level - ID.\"\n },\n \"memberTotalDurationMonths\": {\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n }\n }\n },\n - \ \"VideoAgeGating\": {\n \"type\": \"object\",\n \"properties\": - {\n \"videoGameRating\": {\n \"enum\": [\n \"anyone\",\n - \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Video game rating, if any.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"restricted\": {\n \"type\": \"boolean\",\n \"description\": - \"Age-restricted trailers. For redband trailers and adult-rated video-games. - Only users aged 18+ can view the content. The the field is true the content - is restricted to viewers aged 18+. Otherwise The field won't be present.\"\n - \ },\n \"alcoholContent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether or not the video has alcoholic - beverage content. Only users of legal purchasing age in a particular country, - as identified by ICAP, can view the content.\"\n }\n },\n \"id\": - \"VideoAgeGating\"\n },\n \"VideoSuggestions\": {\n \"description\": - \"Specifies suggestions on how to improve video content, including encoding - hints, tag suggestions, and editor suggestions.\",\n \"type\": \"object\",\n - \ \"id\": \"VideoSuggestions\",\n \"properties\": {\n \"editorSuggestions\": - {\n \"description\": \"A list of video editing operations that might - improve the video quality or playback experience of the uploaded video.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ],\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ]\n - \ }\n },\n \"processingWarnings\": {\n \"items\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ]\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of reasons - why YouTube may have difficulty transcoding the uploaded video or that might - result in an erroneous transcoding. These warnings are generated before YouTube - actually processes the uploaded video file. In addition, they identify issues - that are unlikely to cause the video processing to fail but that might cause - problems such as sync issues, video artifacts, or a missing audio track.\"\n - \ },\n \"processingErrors\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of errors that will prevent YouTube from - successfully processing the uploaded video video. These errors indicate that, - regardless of the video's current processing status, eventually, that status - will almost certainly be failed.\",\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"File contains - audio only (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Movie project file (e.g., Microsoft Windows Movie - Maker project).\",\n \"Other non-video file.\",\n \"Document - or text file (e.g., MS Word document).\",\n \"An archive file - (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout - type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n }\n },\n \"processingHints\": {\n \"description\": - \"A list of suggestions that may improve YouTube's ability to process the - video.\",\n \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ]\n }\n },\n \"tagSuggestions\": {\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoSuggestionsTagSuggestion\"\n }\n }\n }\n },\n - \ \"ActivityContentDetailsSubscription\": {\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"type\": \"object\",\n \"description\": \"Information about a - channel that a user subscribed to.\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that the user subscribed to.\",\n \"$ref\": - \"ResourceId\"\n }\n }\n },\n \"SearchResult\": {\n \"id\": - \"SearchResult\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\",\n \"$ref\": \"SearchResultSnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#searchResult\"\n - \ },\n \"id\": {\n \"description\": \"The id object - contains information that can be used to uniquely identify the resource that - matches the search request.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A search result - contains information about a YouTube video, channel, or playlist that matches - the search parameters specified in an API request. While a search result points - to a uniquely identifiable resource, like a video, it does not have its own - persistent data.\"\n },\n \"ChannelTopicDetails\": {\n \"type\": - \"object\",\n \"description\": \"Freebase topic information related to - the channel.\",\n \"id\": \"ChannelTopicDetails\",\n \"properties\": - {\n \"topicIds\": {\n \"description\": \"A list of Freebase - topic IDs associated with the channel. You can retrieve information about - each topic using the Freebase Topic API.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"topicCategories\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Wikipedia - URLs that describe the channel's content.\"\n }\n }\n },\n - \ \"ChannelProfileDetails\": {\n \"id\": \"ChannelProfileDetails\",\n - \ \"properties\": {\n \"channelUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's URL.\"\n },\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - display name.\"\n },\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube channel ID.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"MembershipsLevelListResponse\": {\n \"properties\": {\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"MembershipsLevel\"\n },\n \"description\": \"A list of - pricing levels offered by a creator to the fans.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"default\": - \"youtube#membershipsLevelListResponse\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"MembershipsLevelListResponse\"\n },\n \"ActivityContentDetails\": - {\n \"properties\": {\n \"subscription\": {\n \"description\": - \"The subscription object contains information about a channel that a user - subscribed to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"social\": - {\n \"$ref\": \"ActivityContentDetailsSocial\",\n \"description\": - \"The social object contains details about a social network post. This property - is only present if the snippet.type is social.\"\n },\n \"upload\": - {\n \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\",\n - \ \"$ref\": \"ActivityContentDetailsUpload\"\n },\n \"promotedItem\": - {\n \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\",\n \"$ref\": \"ActivityContentDetailsPromotedItem\"\n - \ },\n \"recommendation\": {\n \"description\": \"The - recommendation object contains information about a recommended resource. This - property is only present if the snippet.type is recommendation.\",\n \"$ref\": - \"ActivityContentDetailsRecommendation\"\n },\n \"bulletin\": - {\n \"description\": \"The bulletin object contains details about - a channel bulletin post. This object is only present if the snippet.type is - bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n },\n - \ \"favorite\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsFavorite\"\n },\n \"like\": {\n \"$ref\": - \"ActivityContentDetailsLike\",\n \"description\": \"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.\"\n },\n - \ \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"channelItem\": {\n \"$ref\": - \"ActivityContentDetailsChannelItem\",\n \"description\": \"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.\"\n },\n - \ \"playlistItem\": {\n \"description\": \"The playlistItem - object contains information about a new playlist item. This property is only - present if the snippet.type is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n - \ }\n },\n \"id\": \"ActivityContentDetails\",\n \"type\": - \"object\",\n \"description\": \"Details about the content of an activity: - the video that was shared, the channel that was subscribed to, etc.\"\n },\n - \ \"PlaylistItemSnippet\": {\n \"description\": \"Basic details about - a playlist, including title, description and thumbnails. Basic details of - a YouTube Playlist item provided by the author. Next ID: 15\",\n \"type\": - \"object\",\n \"properties\": {\n \"videoOwnerChannelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel this video belongs to.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The item's - description.\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist item. 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.\"\n },\n \"position\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The order in - which the item appears in the playlist. The value uses a zero-based index, - so the first item has a position of 0, the second item has a position of 1, - and so forth.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The item's title.\"\n },\n \"videoOwnerChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel id - for the channel this video belongs to.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the user that added the item to the playlist.\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the item was added to - the playlist.\",\n \"format\": \"date-time\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify thGe playlist that the playlist item is in.\"\n - \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The id object contains information that can be - used to uniquely identify the resource that is included in the playlist as - the playlist item.\"\n }\n },\n \"id\": \"PlaylistItemSnippet\"\n - \ },\n \"ThirdPartyLinkListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n }\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n }\n - \ },\n \"id\": \"ThirdPartyLinkListResponse\"\n },\n \"Caption\": - {\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the caption track.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"default\": \"youtube#caption\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"CaptionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the caption.\"\n }\n },\n \"description\": \"A *caption* - resource represents a YouTube caption track. A caption track is associated - with exactly one YouTube video.\",\n \"id\": \"Caption\",\n \"type\": - \"object\"\n },\n \"ThirdPartyLink\": {\n \"properties\": {\n \"linkingToken\": - {\n \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#thirdPartyLink\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"ThirdPartyLinkSnippet\",\n \"description\": \"The snippet object - contains basic details about the third- party account link.\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the status of the link.\",\n \"$ref\": \"ThirdPartyLinkStatus\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ThirdPartyLink\",\n - \ \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\"\n },\n \"ChannelConversionPing\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"context\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"Defines the context - of the ping.\",\n \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ]\n },\n \"conversionUrl\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n }\n },\n \"id\": \"ChannelConversionPing\",\n - \ \"description\": \"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.\"\n },\n \"ChannelAuditDetails\": {\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\",\n \"id\": \"ChannelAuditDetails\",\n - \ \"properties\": {\n \"copyrightStrikesGoodStanding\": {\n \"description\": - \"Whether or not the channel has any copyright strikes.\",\n \"type\": - \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether or - not the channel respects the community guidelines.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any unresolved claims.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveBroadcast\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"statistics\": {\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n - \ },\n \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n - \ \"description\": \"The status object contains information about - the event's status.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the event, including its title, description, start time, - and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n },\n - \ \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the broadcast.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcast\\\".\",\n \"default\": - \"youtube#liveBroadcast\"\n }\n },\n \"description\": \"A - *liveBroadcast* resource represents an event that will be streamed, via live - video, on YouTube.\",\n \"id\": \"LiveBroadcast\"\n },\n \"ChannelToStoreLinkDetails\": - {\n \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"properties\": {\n \"storeName\": - {\n \"type\": \"string\",\n \"description\": \"Name of the - store.\"\n },\n \"storeUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Landing page of the store.\"\n },\n \"merchantId\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"Google Merchant Center id of the store.\"\n }\n },\n \"id\": - \"ChannelToStoreLinkDetails\",\n \"type\": \"object\"\n },\n \"PlaylistItemStatus\": - {\n \"id\": \"PlaylistItemStatus\",\n \"description\": \"Information - about the playlist item's privacy status.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"This resource's privacy status.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\"\n }\n }\n },\n - \ \"SuperChatEventSnippet\": {\n \"type\": \"object\",\n \"id\": - \"SuperChatEventSnippet\",\n \"properties\": {\n \"amountMicros\": - {\n \"description\": \"The purchase amount, in micros of the purchase - currency. e.g., 1 is represented as 1000000.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"commentText\": {\n \"description\": - \"The text contents of the comment left by the user.\",\n \"type\": - \"string\"\n },\n \"supporterDetails\": {\n \"description\": - \"Details about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"isSuperStickerEvent\": {\n \"description\": - \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n - \ },\n \"createdAt\": {\n \"description\": \"The date - and time when the event occurred.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\"\n },\n \"displayString\": {\n \"description\": - \"A rendered string that displays the purchase amount and currency (e.g., - \\\"$1.00\\\"). The string is rendered for the given language.\",\n \"type\": - \"string\"\n },\n \"messageType\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The tier for - the paid message, which is based on the amount of money spent to purchase - the message.\"\n },\n \"channelId\": {\n \"description\": - \"Channel id where the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\"\n }\n }\n - \ },\n \"LevelDetails\": {\n \"id\": \"LevelDetails\",\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The name that should be used when referring to this level.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"Activity\": {\n \"type\": - \"object\",\n \"description\": \"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.\",\n \"properties\": {\n - \ \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n - \ \"description\": \"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.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the activity.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the activity, including the activity's type and group ID.\",\n \"$ref\": - \"ActivitySnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#activity\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"Activity\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageDeletedDetails\"\n },\n \"ChannelSectionContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"playlists\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The playlist ids for - type single_playlist and multiple_playlists. For singlePlaylist, only one - playlistId is allowed.\"\n },\n \"channels\": {\n \"description\": - \"The channel ids for type multiple_channels.\",\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"ChannelSectionContentDetails\",\n \"description\": - \"Details about a channelsection, including playlists and channels.\"\n },\n - \ \"ChannelStatus\": {\n \"id\": \"ChannelStatus\",\n \"description\": - \"JSON template for the status part of a channel.\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"Privacy status of the channel.\",\n \"type\": \"string\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ]\n },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"longUploadsStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ],\n \"description\": \"The long uploads status of this - channel. See https://support.google.com/youtube/answer/71673 for more information.\"\n - \ },\n \"isLinked\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"I18nLanguageSnippet\": - {\n \"id\": \"I18nLanguageSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\",\n \"properties\": {\n \"hl\": {\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\",\n \"type\": - \"string\"\n },\n \"name\": {\n \"description\": \"The - human-readable name of the language in the language itself.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelConversionPings\": {\n - \ \"type\": \"object\",\n \"id\": \"ChannelConversionPings\",\n \"properties\": - {\n \"pings\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ChannelConversionPing\"\n },\n \"description\": - \"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.\"\n }\n },\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\"\n },\n \"SubscriptionContentDetails\": {\n \"type\": - \"object\",\n \"id\": \"SubscriptionContentDetails\",\n \"properties\": - {\n \"totalItemCount\": {\n \"description\": \"The approximate - number of items that the subscription points to.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"newItemCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The number - of new items in the subscription since its content was last read.\",\n \"type\": - \"integer\"\n },\n \"activityType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"description\": - \"Details about the content to witch a subscription refers.\"\n },\n \"SubscriptionListResponse\": - {\n \"id\": \"SubscriptionListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#subscriptionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"description\": - \"A list of subscriptions that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Subscription\"\n - \ }\n }\n }\n },\n \"LiveBroadcastListResponse\": - {\n \"id\": \"LiveBroadcastListResponse\",\n \"properties\": {\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"default\": \"youtube#liveBroadcastListResponse\"\n },\n - \ \"items\": {\n \"description\": \"A list of broadcasts that - match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"SuperStickerMetadata\": - {\n \"id\": \"SuperStickerMetadata\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"altTextLanguage\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the localization language - in which the alt text is returned.\"\n },\n \"stickerId\": {\n - \ \"description\": \"Unique identifier of the Super Sticker. This - is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\",\n \"type\": \"string\"\n },\n - \ \"altText\": {\n \"description\": \"Internationalized alt - text that describes the sticker image and any animation associated with it.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ChannelContentDetails\": - {\n \"description\": \"Details about the content of a channel.\",\n \"id\": - \"ChannelContentDetails\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"properties\": {\n \"favorites\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"uploads\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s uploaded videos. Use the - videos.insert method to upload new videos and the videos.delete method to - delete previously uploaded videos.\"\n },\n \"likes\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"watchHistory\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n },\n \"watchLater\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch later playlist. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n }\n },\n \"type\": \"object\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelStatistics\": - {\n \"type\": \"object\",\n \"properties\": {\n \"videoCount\": - {\n \"description\": \"The number of videos uploaded to the channel.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"viewCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of times the channel has been viewed.\",\n \"type\": - \"string\"\n },\n \"hiddenSubscriberCount\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the number of subscribers - is shown for this user.\"\n },\n \"subscriberCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of subscribers that the - channel has.\",\n \"format\": \"uint64\"\n },\n \"commentCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of comments for the channel.\"\n }\n },\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\",\n \"id\": \"ChannelStatistics\"\n },\n \"LiveBroadcastStatistics\": - {\n \"type\": \"object\",\n \"description\": \"Statistics about - the live broadcast. These represent a snapshot of the values at the time of - the request. Statistics are only returned for live broadcasts.\",\n \"id\": - \"LiveBroadcastStatistics\",\n \"properties\": {\n \"concurrentViewers\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n },\n - \ \"totalChatCount\": {\n \"description\": \"The total number - of live chat messages currently on the broadcast. The property and its value - will be present if the broadcast is public, has the live chat feature enabled, - and has at least one message. Note that this field will not be filled after - the broadcast ends. So this property would not identify the number of chat - messages for an archived video of a completed live broadcast.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n }\n }\n },\n - \ \"CommentThreadReplies\": {\n \"description\": \"Comments written - in (direct or indirect) reply to the top level comment.\",\n \"type\": - \"object\",\n \"properties\": {\n \"comments\": {\n \"description\": - \"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.\",\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"id\": \"CommentThreadReplies\"\n },\n \"WatchSettings\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"textColor\": - {\n \"description\": \"The background color for the video watch page's - branded area.\",\n \"type\": \"string\"\n },\n \"featuredPlaylistId\": - {\n \"type\": \"string\",\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\"\n - \ },\n \"backgroundColor\": {\n \"description\": \"The - text color for the video watch page's branded area.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"WatchSettings\",\n \"description\": - \"Branding properties for the watch. All deprecated.\"\n },\n \"VideoRating\": - {\n \"properties\": {\n \"rating\": {\n \"description\": - \"Rating of a video.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n }\n - \ },\n \"id\": \"VideoRating\",\n \"description\": \"Basic details - about rating of a video.\",\n \"type\": \"object\"\n },\n \"PlaylistListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of playlists that match the request criteria\",\n \"items\": - {\n \"$ref\": \"Playlist\"\n }\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#playlistListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistListResponse\\\".\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"PlaylistListResponse\",\n - \ \"type\": \"object\"\n },\n \"VideoSnippet\": {\n \"description\": - \"Basic details about a video, including title, description, uploader, thumbnails - and category.\",\n \"id\": \"VideoSnippet\",\n \"properties\": {\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that the video was uploaded to.\",\n - \ \"type\": \"string\"\n },\n \"tags\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of keyword tags associated with the video. Tags may contain spaces.\",\n - \ \"type\": \"array\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"liveBroadcastContent\": {\n - \ \"type\": \"string\",\n \"description\": \"Indicates if - the video is an upcoming/active live broadcast. Or it's \\\"none\\\" if the - video is not an upcoming/active live broadcast.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time when the video - was uploaded.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The video's description. @mutable - youtube.videos.insert youtube.videos.update\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - video category associated with the video.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the videos's default snippet.\",\n - \ \"type\": \"string\"\n },\n \"channelTitle\": {\n - \ \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the video belongs to.\"\n },\n \"defaultAudioLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"localized\": {\n \"$ref\": \"VideoLocalization\",\n - \ \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\"\n }\n },\n \"type\": \"object\"\n },\n \"CommentListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"items\": {\n \"description\": - \"A list of comments that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Comment\"\n }\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": - \"CommentListResponse\",\n \"type\": \"object\"\n },\n \"TestItem\": - {\n \"id\": \"TestItem\",\n \"properties\": {\n \"gaia\": - {\n \"type\": \"string\",\n \"format\": \"int64\"\n },\n - \ \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoAbuseReport\": {\n - \ \"properties\": {\n \"comments\": {\n \"type\": \"string\",\n - \ \"description\": \"Additional comments regarding the abuse report.\"\n - \ },\n \"secondaryReasonId\": {\n \"description\": \"The - specific, or secondary, reason that this content is abusive (if available). - The value is an abuse report reason ID that is a valid secondary reason for - the primary reason.\",\n \"type\": \"string\"\n },\n \"reasonId\": - {\n \"description\": \"The high-level, or primary, reason that the - content is abusive. The value is an abuse report reason ID.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n },\n \"language\": {\n \"description\": - \"The language that the content was viewed in.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReport\"\n - \ },\n \"VideoAbuseReportReasonListResponse\": {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The `visitorId` identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ },\n \"description\": \"A list of valid abuse reasons that - are used with `video.ReportAbuse`.\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoAbuseReportReasonListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SearchResultSnippet\": {\n \"type\": \"object\",\n \"id\": - \"SearchResultSnippet\",\n \"properties\": {\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the channel that published the resource that the search result identifies.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the search result.\"\n },\n \"thumbnails\": {\n - \ \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the search result. 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.\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The creation date and time of - the resource that the search result identifies.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The value - that YouTube uses to uniquely identify the channel that published the resource - that the search result identifies.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"A description - of the search result.\"\n },\n \"liveBroadcastContent\": {\n - \ \"description\": \"It indicates if the resource (video or channel) - has upcoming/active live broadcast content. Or it's \\\"none\\\" if there - is not any upcoming/active live broadcasts.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The live - broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n }\n },\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\"\n },\n \"SuperChatEvent\": - {\n \"id\": \"SuperChatEvent\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the Super Chat event.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the Super Chat event.\",\n \"$ref\": \"SuperChatEventSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n \"default\": - \"youtube#superChatEvent\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A `__superChatEvent__` resource represents a Super - Chat purchase on a YouTube channel.\"\n },\n \"LiveBroadcastSnippet\": - {\n \"description\": \"Basic broadcast information.\",\n \"type\": - \"object\",\n \"id\": \"LiveBroadcastSnippet\",\n \"properties\": - {\n \"actualStartTime\": {\n \"description\": \"The date and - time that the broadcast actually started. This information is only available - once the broadcast's state is live.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"actualEndTime\": {\n - \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast actually ended. This information is - only available once the broadcast's state is complete.\"\n },\n \"isDefaultBroadcast\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast is the default broadcast. Internal only.\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The id of the live chat for this broadcast.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\"\n - \ },\n \"scheduledStartTime\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the broadcast is scheduled to start.\",\n \"format\": \"date-time\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's title. Note that the broadcast - represents exactly one YouTube video. You can set this field by modifying - the broadcast resource or by setting the title field of the corresponding - video resource.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - was added to YouTube's live broadcast schedule.\",\n \"format\": - \"date-time\"\n },\n \"scheduledEndTime\": {\n \"description\": - \"The date and time that the broadcast is scheduled to end.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that is publishing the broadcast.\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the broadcast. For each nested object - in this object, the key is the name of the thumbnail image, and the value - is an object that contains other information about the thumbnail.\",\n \"$ref\": - \"ThumbnailDetails\"\n }\n }\n },\n \"ActivityListResponse\": - {\n \"id\": \"ActivityListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Activity\"\n }\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"default\": \"youtube#activityListResponse\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ }\n },\n \"LiveStreamListResponse\": {\n \"id\": \"LiveStreamListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"LiveStream\"\n },\n \"description\": - \"A list of live streams that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveStreamListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n }\n },\n \"MonitorStreamInfo\": {\n \"properties\": - {\n \"enableMonitorStream\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"boolean\",\n \"description\": \"This value - determines whether the monitor stream is enabled for the broadcast. If the - monitor stream is enabled, then YouTube will broadcast the event content on - a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\"\n },\n - \ \"broadcastStreamDelayMs\": {\n \"description\": \"If you - have set the enableMonitorStream property to true, then this property determines - the length of the live broadcast delay.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Settings and - Info of the monitor stream\",\n \"id\": \"MonitorStreamInfo\"\n },\n - \ \"PlaylistLocalization\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistLocalization\",\n \"description\": \"Playlist localization - setting\",\n \"properties\": {\n \"description\": {\n \"description\": - \"The localized strings for playlist's description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - localized strings for playlist's title.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"CaptionSnippet\": {\n \"properties\": - {\n \"isLarge\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\"\n },\n \"status\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The caption - track's status.\",\n \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ]\n },\n \"isEasyReader\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"trackKind\": {\n \"description\": \"The caption - track's type.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"isCC\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the track contains - closed captions for the deaf and hard of hearing. The default value is false.\"\n - \ },\n \"name\": {\n \"description\": \"The name of - the caption track. The name is intended to be visible to the user as an option - during playback.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"audioTrackType\": {\n \"type\": - \"string\",\n \"description\": \"The type of audio track associated - with the caption track.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ]\n },\n \"failureReason\": - {\n \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The reason that YouTube failed to process the - caption track. This property is only present if the state property's value - is failed.\",\n \"type\": \"string\"\n },\n \"isAutoSynced\": - {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"lastUpdated\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the caption track was last updated.\"\n },\n \"isDraft\": - {\n \"type\": \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n },\n \"language\": {\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\",\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n }\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video associated with the caption track. @mutable - youtube.captions.insert\"\n }\n },\n \"id\": \"CaptionSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a caption track, such as its language and name.\"\n },\n \"Channel\": - {\n \"type\": \"object\",\n \"description\": \"A *channel* resource - contains information about a YouTube channel.\",\n \"id\": \"Channel\",\n - \ \"properties\": {\n \"contentOwnerDetails\": {\n \"$ref\": - \"ChannelContentOwnerDetails\",\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object encapsulates statistics for the channel.\",\n \"$ref\": - \"ChannelStatistics\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ChannelContentDetails\",\n \"description\": \"The contentDetails - object encapsulates information about the channel's content.\"\n },\n - \ \"brandingSettings\": {\n \"description\": \"The brandingSettings - object encapsulates information about the branding of the channel.\",\n \"$ref\": - \"ChannelBrandingSettings\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#channel\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the channel, such as its title, description, - and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n },\n - \ \"conversionPings\": {\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n },\n - \ \"topicDetails\": {\n \"description\": \"The topicDetails - object encapsulates information about Freebase topics associated with the - channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"additionalProperties\": {\n - \ \"$ref\": \"ChannelLocalization\"\n },\n \"description\": - \"Localizations for different languages\"\n },\n \"status\": - {\n \"description\": \"The status object encapsulates information - about the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n - \ },\n \"auditDetails\": {\n \"description\": \"The - auditionDetails object encapsulates channel data that is relevant for YouTube - Partners during the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"LiveStreamSnippet\": - {\n \"properties\": {\n \"title\": {\n \"description\": - \"The stream's title. The value must be between 1 and 128 characters long.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"isDefaultStream\": {\n - \ \"type\": \"boolean\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that is transmitting the stream.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the stream was created.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The stream's description. The value cannot be - longer than 10000 characters.\"\n }\n },\n \"id\": \"LiveStreamSnippet\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamHealthStatus\": {\n \"id\": - \"LiveStreamHealthStatus\",\n \"properties\": {\n \"status\": - {\n \"description\": \"The status code of this stream\",\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"configurationIssues\": - {\n \"type\": \"array\",\n \"description\": \"The configurations - issues on this stream\",\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ }\n },\n \"lastUpdateTimeSeconds\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - last time this status was updated (in seconds)\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoProjectDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"DEPRECATED. b/157517979: This part was never populated - after it was added. However, it sees non-zero traffic because there is generated - client code in the wild that refers to it [1]. We keep this field and do NOT - remove it because otherwise V3 would return an error when this part gets requested - [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"id\": \"VideoProjectDetails\",\n \"properties\": {}\n },\n - \ \"CommentSnippet\": {\n \"properties\": {\n \"viewerRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"likeCount\": - {\n \"description\": \"The total number of likes this comment has - received.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"textOriginal\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"moderationStatus\": {\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment is - awaiting review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ]\n },\n \"videoId\": {\n - \ \"description\": \"The ID of the video the comment refers to, if - any.\",\n \"type\": \"string\"\n },\n \"parentId\": - {\n \"type\": \"string\",\n \"description\": \"The unique - id of the parent comment, only set for replies.\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"authorChannelUrl\": {\n \"type\": - \"string\",\n \"description\": \"Link to the author's YouTube channel, - if any.\"\n },\n \"authorDisplayName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the user who posted - the comment.\"\n },\n \"updatedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the comment - was last updated.\",\n \"format\": \"date-time\"\n },\n \"canRate\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the current viewer can rate this comment.\"\n },\n \"textDisplay\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the comment was originally - published.\"\n }\n },\n \"description\": \"Basic details - about a comment, such as its author and text.\",\n \"id\": \"CommentSnippet\",\n - \ \"type\": \"object\"\n },\n \"VideoListResponse\": {\n \"id\": - \"VideoListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"items\": {\n \"items\": {\n \"$ref\": \"Video\"\n - \ },\n \"type\": \"array\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"CommentSnippetAuthorChannelId\": {\n \"type\": - \"object\",\n \"description\": \"The id of the author's YouTube channel, - if any.\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"CdnSettings\": {\n \"id\": \"CdnSettings\",\n \"type\": - \"object\",\n \"description\": \"Brief description of the live stream - cdn settings.\",\n \"properties\": {\n \"format\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The format of the video stream that you are sending - to Youtube. \"\n },\n \"ingestionInfo\": {\n \"$ref\": - \"IngestionInfo\",\n \"description\": \"The ingestionInfo object - contains information that YouTube provides that you need to transmit your - RTMP or HTTP stream to YouTube.\"\n },\n \"frameRate\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"type\": - \"string\",\n \"description\": \"The frame rate of the inbound video - data.\"\n },\n \"resolution\": {\n \"description\": - \"The resolution of the inbound video data.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ]\n },\n \"ingestionType\": {\n \"type\": - \"string\",\n \"description\": \" The method or protocol used to - transmit the video stream.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ]\n }\n }\n },\n \"Subscription\": - {\n \"description\": \"A *subscription* resource contains information - about a YouTube user subscription. A subscription notifies a user when new - videos are added to a channel or when another user takes one of several actions - on YouTube, such as uploading a video, rating a video, or commenting on a - video.\",\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"SubscriptionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the subscription, including its title and the channel that the user subscribed - to.\"\n },\n \"id\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the subscription.\",\n \"type\": - \"string\"\n },\n \"subscriberSnippet\": {\n \"description\": - \"The subscriberSnippet object contains basic details about the subscriber.\",\n - \ \"$ref\": \"SubscriptionSubscriberSnippet\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"default\": \"youtube#subscription\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains basic statistics - about the subscription.\",\n \"$ref\": \"SubscriptionContentDetails\"\n - \ }\n },\n \"id\": \"Subscription\"\n },\n \"Cuepoint\": - {\n \"id\": \"Cuepoint\",\n \"type\": \"object\",\n \"description\": - \"Note that there may be a 5-second end-point resolution issue. For instance, - if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\",\n \"properties\": - {\n \"durationSecs\": {\n \"type\": \"integer\",\n \"description\": - \"The duration of this cuepoint.\",\n \"format\": \"uint32\"\n },\n - \ \"insertionOffsetTimeMs\": {\n \"description\": \"The time - when the cuepoint should be inserted by offset to the broadcast actual start - time.\",\n \"format\": \"int64\",\n \"type\": \"string\"\n - \ },\n \"cueType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ]\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The identifier for cuepoint resource.\"\n },\n \"etag\": {\n - \ \"type\": \"string\"\n },\n \"walltimeMs\": {\n \"format\": - \"uint64\",\n \"description\": \"The wall clock time at which the - cuepoint should be inserted. Only one of insertion_offset_time_ms and walltime_ms - may be set at a time.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"AbuseType\": {\n \"id\": \"AbuseType\",\n \"type\": - \"object\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\"\n }\n }\n },\n \"ResourceId\": {\n \"id\": - \"ResourceId\",\n \"properties\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a channel. This property - is only present if the resourceId.kind value is youtube#channel.\"\n },\n - \ \"playlistId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a playlist. - This property is only present if the resourceId.kind value is youtube#playlist.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"The type of the API resource.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A resource id is a generic reference that points - to another YouTube resource.\"\n },\n \"LiveStream\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the stream.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"cdn\": {\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\",\n \"$ref\": \"CdnSettings\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"default\": \"youtube#liveStream\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveStreamSnippet\",\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n - \ \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\"\n }\n - \ },\n \"description\": \"A live stream describes a live ingestion - point.\",\n \"id\": \"LiveStream\",\n \"type\": \"object\"\n },\n - \ \"VideoProcessingDetails\": {\n \"properties\": {\n \"processingFailureReason\": - {\n \"type\": \"string\",\n \"enum\": [\n \"uploadFailed\",\n - \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n - \ ],\n \"description\": \"The reason that YouTube failed - to process the video. This property will only have a value if the processingStatus - property's value is failed.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"tagSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether keyword (tag) suggestions - are available for the video. Tags can be added to a video's metadata to make - it easier for other users to find the video. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"thumbnailsAvailability\": {\n \"description\": \"This value - indicates whether thumbnail images have been generated for the video.\",\n - \ \"type\": \"string\"\n },\n \"editorSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether video editing suggestions, which might improve video quality - or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\"\n },\n \"processingIssuesAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether the - video processing engine has generated suggestions that might improve YouTube's - ability to process the the video, warnings that explain video processing problems, - or errors that cause video processing problems. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"processingProgress\": {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"The processingProgress object contains information - about the progress YouTube has made in processing the video. The values are - really only relevant if the video's processing status is processing.\"\n },\n - \ \"processingStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\",\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"type\": \"string\"\n - \ },\n \"fileDetailsAvailability\": {\n \"description\": - \"This value indicates whether file details are available for the uploaded - video. You can retrieve a video's file details by requesting the fileDetails - part in your videos.list() request.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Describes processing status and progress - and availability of some other Video resource parts.\",\n \"id\": \"VideoProcessingDetails\",\n - \ \"type\": \"object\"\n },\n \"LiveChatTextMessageDetails\": {\n - \ \"id\": \"LiveChatTextMessageDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"messageText\": {\n \"description\": - \"The user's message.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatNewSponsorDetails\": {\n \"properties\": {\n \"isUpgrade\": - {\n \"description\": \"If the viewer just had upgraded from a lower - level. For viewers that were not members at the time of purchase, this field - is false.\",\n \"type\": \"boolean\"\n },\n \"memberLevelName\": - {\n \"description\": \"The name of the Level that the viewer just - had joined. The Level names are defined by the YouTube channel offering the - Membership. In some situations this field isn't filled.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"type\": \"object\"\n }\n },\n \"name\": \"youtube\",\n \"ownerDomain\": - \"google.com\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"parameters\": {\n \"quotaUser\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"key\": {\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"$.xgafv\": - {\n \"enumDescriptions\": [\n \"v1 error format\",\n \"v2 - error format\"\n ],\n \"location\": \"query\",\n \"enum\": - [\n \"1\",\n \"2\"\n ],\n \"description\": \"V1 error - format.\",\n \"type\": \"string\"\n },\n \"upload_protocol\": {\n - \ \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"prettyPrint\": - {\n \"location\": \"query\",\n \"default\": \"true\",\n \"type\": - \"boolean\",\n \"description\": \"Returns response with indentations - and line breaks.\"\n },\n \"callback\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"JSONP\"\n },\n - \ \"uploadType\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Legacy upload protocol for media (e.g. \\\"media\\\", - \\\"multipart\\\").\"\n },\n \"oauth_token\": {\n \"type\": \"string\",\n - \ \"description\": \"OAuth 2.0 token for the current user.\",\n \"location\": - \"query\"\n },\n \"fields\": {\n \"description\": \"Selector specifying - which fields to include in a partial response.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"alt\": {\n \"default\": \"json\",\n - \ \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"enumDescriptions\": [\n \"Responses with Content-Type - of application/json\",\n \"Media download with context-dependent Content-Type\",\n - \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"Data format for response.\"\n },\n \"access_token\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"OAuth access - token.\"\n }\n },\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"id\": \"youtube:v3\",\n \"canonicalName\": \"YouTube\",\n \"auth\": - {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n }\n - \ }\n }\n },\n \"title\": \"YouTube Data API v3\",\n \"basePath\": - \"\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"ownerName\": - \"Google\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"kind\": - \"discovery#restDescription\",\n \"description\": \"The YouTube Data API - v3 is an API that provides access to YouTube data, such as videos, playlists, - and channels.\",\n \"fullyEncodeReservedExpansion\": true,\n \"version\": - \"v3\",\n \"revision\": \"20230220\",\n \"protocol\": \"rest\",\n \"resources\": - {\n \"videoCategories\": {\n \"methods\": {\n \"list\": {\n - \ \"path\": \"youtube/v3/videoCategories\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"id\": \"youtube.videoCategories.list\",\n \"parameters\": - {\n \"hl\": {\n \"default\": \"en-US\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the videoCategory resource properties that - the API response will include. Set the parameter value to snippet.\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"Returns the video categories with the given IDs for Stubby or Apiary.\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/videoCategories\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"liveChatBans\": - {\n \"methods\": {\n \"delete\": {\n \"description\": - \"Deletes a chat ban.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.liveChatBans.delete\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/bans\"\n },\n - \ \"insert\": {\n \"request\": {\n \"$ref\": \"LiveChatBan\"\n - \ },\n \"response\": {\n \"$ref\": \"LiveChatBan\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\"\n }\n }\n - \ },\n \"search\": {\n \"methods\": {\n \"list\": {\n \"path\": - \"youtube/v3/search\",\n \"parameters\": {\n \"relatedToVideoId\": - {\n \"location\": \"query\",\n \"description\": - \"Search related to a resource.\",\n \"type\": \"string\"\n },\n - \ \"forContentOwner\": {\n \"description\": \"Search - owned by a content owner.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"forDeveloper\": {\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"videoCategoryId\": {\n \"location\": - \"query\",\n \"description\": \"Filter on videos in a specific - category.\",\n \"type\": \"string\"\n },\n \"location\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on location of the video\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Filter on resources belonging to this channelId.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"channelType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all channels.\",\n \"Only retrieve - shows.\"\n ],\n \"description\": \"Add a filter - on the channel search.\"\n },\n \"videoEmbeddable\": - {\n \"description\": \"Filter on embeddable videos.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"videoEmbeddableUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ]\n - \ },\n \"eventType\": {\n \"enum\": [\n - \ \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been - completed.\"\n ],\n \"description\": \"Filter on - the livestream status of the videos.\",\n \"type\": \"string\"\n - \ },\n \"videoDefinition\": {\n \"enum\": - [\n \"any\",\n \"standard\",\n \"high\"\n - \ ],\n \"enumDescriptions\": [\n \"Return - all videos, regardless of their resolution.\",\n \"Only retrieve - videos in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Filter on the definition of the - videos.\"\n },\n \"q\": {\n \"description\": - \"Textual search terms to match.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"videoDuration\": - {\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"location\": \"query\",\n - \ \"description\": \"Filter on the duration of the videos.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter video search results based on their duration. This is the default - value.\",\n \"Only include videos that are less than four minutes - long.\",\n \"Only include videos that are between four and - 20 minutes long (inclusive).\",\n \"Only include videos longer - than 20 minutes.\"\n ],\n \"type\": \"string\"\n - \ },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Filter on resources published - after this date.\"\n },\n \"videoDimension\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"any\",\n \"2d\",\n \"3d\"\n - \ ],\n \"enumDescriptions\": [\n \"Include - both 3D and non-3D videos in returned results. This is the default value.\",\n - \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict - search results to only include 3D videos.\"\n ],\n \"description\": - \"Filter on 3d videos.\"\n },\n \"videoType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"description\": \"Filter on videos of a specific - type.\"\n },\n \"forMine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Search for the private videos of the authenticated user.\"\n },\n - \ \"locationRadius\": {\n \"type\": \"string\",\n \"description\": - \"Filter on distance from the location (specified above).\",\n \"location\": - \"query\"\n },\n \"publishedBefore\": {\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"description\": - \"Filter on resources published before this date.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"topicId\": {\n \"location\": - \"query\",\n \"description\": \"Restrict results to a particular - topic.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"minimum\": \"0\",\n - \ \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"videoSyndicated\": {\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"description\": \"Filter on syndicated videos.\"\n },\n - \ \"regionCode\": {\n \"type\": \"string\",\n \"description\": - \"Display the content as seen by viewers in this country.\",\n \"location\": - \"query\"\n },\n \"safeSearch\": {\n \"enum\": - [\n \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"default\": \"moderate\",\n \"description\": \"Indicates - whether the search results should include restricted content as well as standard - content.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"type\": - \"string\"\n },\n \"type\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Restrict results to a particular set of resource - types from One Platform.\"\n },\n \"pageToken\": {\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"videoCaption\": {\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"description\": \"Filter on the presence - of captions on the videos.\"\n },\n \"order\": {\n \"default\": - \"relevance\",\n \"description\": \"Sort order of the results.\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"type\": \"string\"\n },\n \"relevanceLanguage\": - {\n \"location\": \"query\",\n \"description\": - \"Return results relevant to this language.\",\n \"type\": \"string\"\n - \ },\n \"videoLicense\": {\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Filter - on the license of the videos.\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of search resources\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/search\",\n - \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"id\": \"youtube.search.list\"\n }\n }\n - \ },\n \"liveStreams\": {\n \"methods\": {\n \"list\": {\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieve the list of streams associated - with the given channel. --\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.liveStreams.list\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"Return - LiveStreams with the given ids from Stubby or Apiary.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"maxResults\": {\n \"default\": \"5\",\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"maximum\": \"50\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": - \"query\"\n }\n }\n },\n \"insert\": {\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"request\": {\n - \ \"$ref\": \"LiveStream\"\n },\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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, - content_details, and status.\",\n \"required\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n }\n - \ },\n \"delete\": {\n \"description\": \"Deletes an - existing stream for the authenticated user.\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.liveStreams.delete\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n }\n },\n \"update\": {\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"PUT\",\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"description\": \"Updates an existing stream for - the authenticated user.\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true\n }\n },\n - \ \"id\": \"youtube.liveStreams.update\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"activities\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"maximum\": \"50\",\n \"location\": - \"query\"\n },\n \"publishedBefore\": {\n \"location\": - \"query\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\"\n },\n \"home\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"id\": \"youtube.activities.list\",\n \"path\": \"youtube/v3/activities\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"update\": {\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"request\": {\n - \ \"$ref\": \"ChannelSection\"\n },\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"path\": \"youtube/v3/channelSections\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.update\",\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"delete\": {\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"id\": \"youtube.channelSections.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"path\": \"youtube/v3/channelSections\"\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.insert\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"httpMethod\": \"POST\"\n },\n \"list\": - {\n \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"id\": \"youtube.channelSections.list\",\n \"parameters\": - {\n \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Return the ChannelSections - owned by the authenticated user.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the ChannelSections owned - by the specified channel ID.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return content in specified language\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/channelSections\"\n }\n - \ }\n },\n \"watermarks\": {\n \"methods\": {\n \"unset\": - {\n \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/watermarks/unset\",\n \"flatPath\": - \"youtube/v3/watermarks/unset\",\n \"id\": \"youtube.watermarks.unset\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Allows removal of channel watermark.\"\n - \ },\n \"set\": {\n \"mediaUpload\": {\n \"maxSize\": - \"10485760\",\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n }\n }\n },\n \"id\": \"youtube.watermarks.set\",\n - \ \"supportsMediaUpload\": true,\n \"parameterOrder\": [\n - \ \"channelId\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"description\": \"Allows upload - of watermark image and setting it for a channel.\",\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/watermarks/set\",\n \"flatPath\": - \"youtube/v3/watermarks/set\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n }\n - \ }\n }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"default\": \"en-US\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\"\n - \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"maxResults\": - {\n \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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, status - and statistics.\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"broadcastType\": {\n \"location\": - \"query\",\n \"description\": \"Return only broadcasts with the - selected type.\",\n \"default\": \"event\",\n \"type\": - \"string\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ]\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"repeated\": - true\n },\n \"broadcastStatus\": {\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"description\": \"Return broadcasts - with a certain status, e.g. active broadcasts.\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"description\": \"Retrieve the list of broadcasts associated with - the given channel.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts\"\n },\n - \ \"transition\": {\n \"description\": \"Transition a broadcast - to a given status.\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Broadcast to transition.\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"broadcastStatus\": {\n \"description\": \"The status - to which the broadcast is going to transition.\",\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"enum\": [\n - \ \"statusUnspecified\",\n \"testing\",\n \"live\",\n - \ \"complete\"\n ]\n },\n \"part\": - {\n \"description\": \"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.\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.transition\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insert\": {\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"httpMethod\": \"POST\"\n },\n \"insertCuepoint\": - {\n \"parameterOrder\": [],\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"parameters\": {\n \"id\": {\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"repeated\": true\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"Cuepoint\"\n - \ },\n \"description\": \"Insert cuepoints in a broadcast\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/cuepoint\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"update\": {\n \"id\": \"youtube.liveBroadcasts.update\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"description\": \"Updates an existing broadcast for - the authenticated user.\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"required\": true\n }\n },\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"Broadcast to delete.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"description\": \"Delete a given broadcast.\",\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"bind\": {\n \"parameters\": {\n - \ \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Broadcast - to bind to the stream\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"streamId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Stream to bind, if not set unbind the current - one.\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Bind a broadcast to a stream.\",\n \"id\": - \"youtube.liveBroadcasts.bind\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"path\": \"youtube/v3/liveBroadcasts/bind\"\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.superChatEvents.list\",\n \"parameters\": - {\n \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"minimum\": \"1\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"hl\": {\n - \ \"description\": \"Return rendered funding amounts in specified - language.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - superChatEvent resource parts that the API response will include. This parameter - is currently not supported.\",\n \"location\": \"query\"\n }\n - \ },\n \"path\": \"youtube/v3/superChatEvents\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\"\n }\n }\n },\n \"captions\": {\n \"methods\": - {\n \"download\": {\n \"parameters\": {\n \"tfmt\": - {\n \"description\": \"Convert the captions into this format. - Supported options are sbv, srt, and vtt.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n },\n \"tlang\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"tlang is the language code; machine translate - the captions into this language.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"id\": {\n \"location\": - \"path\",\n \"type\": \"string\",\n \"description\": - \"The ID of the caption track to download, required for One Platform.\",\n - \ \"required\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"useMediaDownloadService\": true,\n \"flatPath\": - \"youtube/v3/captions/{id}\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Downloads a caption track.\",\n - \ \"id\": \"youtube.captions.download\",\n \"supportsMediaDownload\": - true,\n \"path\": \"youtube/v3/captions/{id}\",\n \"httpMethod\": - \"GET\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"onBehalfOf\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n }\n },\n \"flatPath\": - \"youtube/v3/captions\",\n \"id\": \"youtube.captions.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/captions\",\n - \ \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Caption\"\n - \ },\n \"httpMethod\": \"POST\",\n \"mediaUpload\": - {\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\",\n - \ \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n },\n - \ \"resumable\": {\n \"multipart\": true,\n \"path\": - \"/resumable/upload/youtube/v3/captions\"\n }\n }\n - \ },\n \"path\": \"youtube/v3/captions\",\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n },\n \"sync\": {\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.captions.insert\",\n - \ \"supportsMediaUpload\": true,\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/captions\"\n - \ },\n \"list\": {\n \"id\": \"youtube.captions.list\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\",\n - \ \"videoId\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"response\": - {\n \"$ref\": \"CaptionListResponse\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"Returns the captions with the given IDs for Stubby or Apiary.\"\n },\n - \ \"videoId\": {\n \"location\": \"query\",\n \"description\": - \"Returns the captions for the specified video.\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is on behalf of.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/captions\",\n \"description\": \"Retrieves a list of - resources, possibly filtered.\"\n },\n \"update\": {\n \"flatPath\": - \"youtube/v3/captions\",\n \"description\": \"Updates an existing - resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"repeated\": true\n },\n \"sync\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\"\n }\n },\n \"mediaUpload\": - {\n \"maxSize\": \"104857600\",\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"supportsMediaUpload\": true,\n - \ \"path\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.update\",\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Caption\"\n }\n }\n }\n },\n - \ \"playlistItems\": {\n \"methods\": {\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"httpMethod\": \"POST\"\n },\n \"update\": {\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.playlistItems.update\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"description\": \"Updates an existing - resource.\",\n \"path\": \"youtube/v3/playlistItems\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.delete\"\n },\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.list\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"Return the playlist items within - the given playlist.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"videoId\": {\n \"description\": - \"Return the playlist items associated with the given video ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"default\": \"5\",\n - \ \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"PlaylistItemListResponse\"\n }\n }\n - \ }\n },\n \"abuseReports\": {\n \"methods\": {\n \"insert\": - {\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.abuseReports.insert\"\n - \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [],\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/commentThreads\"\n }\n - \ }\n }\n }\n },\n \"playlists\": {\n \"methods\": - {\n \"update\": {\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.playlists.update\",\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"delete\": {\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"id\": \"youtube.playlists.delete\",\n \"description\": - \"Deletes a resource.\"\n },\n \"insert\": {\n \"path\": - \"youtube/v3/playlists\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"id\": \"youtube.playlists.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"Playlist\"\n }\n },\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlists.list\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"response\": {\n \"$ref\": - \"PlaylistListResponse\"\n },\n \"parameters\": {\n \"hl\": - {\n \"description\": \"Return content in specified language\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"Return the playlists with the given IDs for - Stubby or Apiary.\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the playlists owned by - the specified channel ID.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"pageToken\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"default\": - \"5\"\n },\n \"part\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Return - the playlists owned by the authenticated user.\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/playlists\",\n \"httpMethod\": \"GET\"\n }\n - \ }\n },\n \"thirdPartyLinks\": {\n \"methods\": {\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"linkingToken\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"Delete the partner links with the given linking - token.\",\n \"location\": \"query\"\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"required\": true,\n \"description\": - \"Type of the link to be deleted.\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ]\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"Do not use. Required for compatibility.\"\n }\n },\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Deletes a resource.\",\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ],\n \"id\": \"youtube.thirdPartyLinks.delete\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n },\n \"update\": - {\n \"description\": \"Updates an existing resource.\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.thirdPartyLinks.update\"\n },\n - \ \"insert\": {\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"path\": - \"youtube/v3/thirdPartyLinks\"\n },\n \"list\": {\n \"id\": - \"youtube.thirdPartyLinks.list\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Get a third party link of the given type.\",\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ]\n },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"linkingToken\": {\n \"type\": \"string\",\n \"description\": - \"Get a third party link with the given linking token.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ }\n },\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"liveChatModerators\": - {\n \"methods\": {\n \"insert\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"id\": - \"youtube.liveChatModerators.insert\"\n },\n \"delete\": {\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"description\": - \"Deletes a chat moderator.\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.liveChatModerators.delete\"\n },\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"parameters\": {\n \"liveChatId\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - id of the live chat for which moderators should be returned.\"\n },\n - \ \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - liveChatModerator resource parts that the API response will include. Supported - values are id and snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"minimum\": \"0\",\n \"type\": \"integer\"\n }\n - \ },\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"LiveChatModeratorListResponse\"\n },\n - \ \"id\": \"youtube.liveChatModerators.list\"\n }\n }\n - \ },\n \"commentThreads\": {\n \"methods\": {\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"id\": \"youtube.commentThreads.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"order\": {\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"default\": \"time\",\n - \ \"enum\": [\n \"orderUnspecified\",\n \"time\",\n - \ \"relevance\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"maxResults\": {\n \"maximum\": - \"100\",\n \"minimum\": \"1\",\n \"format\": \"uint32\",\n - \ \"default\": \"20\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\"\n },\n \"textFormat\": {\n \"type\": - \"string\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"description\": \"The requested text format for the returned - comments.\",\n \"default\": \"html\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ]\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\"\n },\n \"searchTerms\": - {\n \"description\": \"Limits the returned comment threads to - those matching the specified key words. Not compatible with the 'id' filter.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Returns - the comment threads with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of the specified video.\",\n \"type\": - \"string\"\n },\n \"moderationStatus\": {\n \"default\": - \"published\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new resource into this collection.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"required\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/commentThreads\",\n \"id\": - \"youtube.commentThreads.insert\"\n }\n }\n },\n \"membershipsLevels\": - {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"path\": \"youtube/v3/membershipsLevels\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"required\": true\n }\n },\n \"response\": - {\n \"$ref\": \"MembershipsLevelListResponse\"\n },\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of all pricing levels offered by a creator to the fans.\"\n }\n - \ }\n },\n \"videos\": {\n \"methods\": {\n \"rate\": - {\n \"path\": \"youtube/v3/videos/rate\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Adds a like or dislike rating to - a video or removes a rating from a video.\",\n \"parameters\": {\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"rating\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"location\": \"query\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n - \ }\n },\n \"id\": \"youtube.videos.rate\",\n - \ \"flatPath\": \"youtube/v3/videos/rate\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ]\n },\n - \ \"list\": {\n \"parameters\": {\n \"maxHeight\": - {\n \"format\": \"int32\",\n \"type\": \"integer\",\n - \ \"minimum\": \"72\",\n \"maximum\": \"8192\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"maximum\": \"50\",\n - \ \"description\": \"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.\",\n - \ \"minimum\": \"1\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"default\": \"5\"\n },\n - \ \"hl\": {\n \"description\": \"Stands for \\\"host - language\\\". Specifies the localization language of the metadata to be filled - into snippet.localized. The field is filled with the default metadata if there - is no localization in the specified language. The parameter value must be - a language code included in the list returned by the i18nLanguages.list method - (e.g. en_US, es_MX).\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"myRating\": {\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"description\": \"Return videos liked/disliked - by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ]\n - \ },\n \"chart\": {\n \"location\": \"query\",\n - \ \"description\": \"Return the videos that are in the specified - chart.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"enum\": [\n - \ \"chartUnspecified\",\n \"mostPopular\"\n ],\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"location\": \"query\",\n \"description\": \"Return - videos with the given ids.\",\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"regionCode\": {\n \"location\": - \"query\",\n \"description\": \"Use a chart that is specific - to the specified region\",\n \"type\": \"string\"\n },\n - \ \"videoCategoryId\": {\n \"location\": \"query\",\n - \ \"description\": \"Use chart that is specific to the specified - video category\",\n \"type\": \"string\",\n \"default\": - \"0\"\n },\n \"locale\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"maxWidth\": - {\n \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"description\": \"Return the player with maximum height specified - in\",\n \"format\": \"int32\",\n \"maximum\": \"8192\",\n - \ \"minimum\": \"72\"\n },\n \"part\": {\n - \ \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/videos\",\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.videos.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"VideoListResponse\"\n }\n - \ },\n \"getRating\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.getRating\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"description\": \"Retrieves the ratings that the - authorized user gave to a list of specified videos.\",\n \"flatPath\": - \"youtube/v3/videos/getRating\"\n },\n \"insert\": {\n \"supportsMediaUpload\": - true,\n \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"mediaUpload\": {\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"274877906944\",\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": - true\n },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/videos\"\n }\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"autoLevels\": {\n \"description\": \"Should auto-levels - be applied to the upload.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"stabilize\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Should stabilize be applied to the upload.\"\n },\n \"notifySubscribers\": - {\n \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\",\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"default\": - \"true\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/videos\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"id\": \"youtube.videos.insert\",\n \"httpMethod\": \"POST\"\n - \ },\n \"reportAbuse\": {\n \"description\": \"Report - abuse for a video.\",\n \"id\": \"youtube.videos.reportAbuse\",\n - \ \"parameterOrder\": [],\n \"request\": {\n \"$ref\": - \"VideoAbuseReport\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"flatPath\": \"youtube/v3/videos/reportAbuse\"\n },\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.videos.delete\",\n \"path\": \"youtube/v3/videos\",\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"update\": {\n \"id\": - \"youtube.videos.update\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing resource.\",\n \"path\": \"youtube/v3/videos\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"flatPath\": \"youtube/v3/videos\"\n }\n }\n },\n - \ \"channelBanners\": {\n \"methods\": {\n \"insert\": {\n \"mediaUpload\": - {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"maxSize\": \"6291456\"\n },\n - \ \"parameterOrder\": [],\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"id\": - \"youtube.channelBanners.insert\",\n \"supportsMediaUpload\": true,\n - \ \"parameters\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Unused, channel_id is currently - derived from the security context of the requestor.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"path\": \"youtube/v3/channelBanners/insert\",\n \"description\": - \"Inserts a new resource into this collection.\"\n }\n }\n },\n - \ \"members\": {\n \"methods\": {\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"flatPath\": \"youtube/v3/members\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.members.list\",\n - \ \"parameters\": {\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"filterByMemberChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"required\": true\n },\n \"mode\": - {\n \"description\": \"Parameter that specifies which channel - members to return.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ],\n \"location\": \"query\",\n - \ \"default\": \"all_current\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ]\n },\n \"hasAccessToLevel\": - {\n \"location\": \"query\",\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"maximum\": \"1000\",\n \"default\": \"5\",\n - \ \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"format\": \"uint32\"\n }\n },\n - \ \"description\": \"Retrieves a list of members that match the request - criteria for a channel.\",\n \"path\": \"youtube/v3/members\",\n - \ \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ }\n }\n }\n },\n \"comments\": {\n \"methods\": - {\n \"insert\": {\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/comments\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n - \ }\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n - \ }\n },\n \"delete\": {\n \"id\": \"youtube.comments.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/comments\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments\"\n },\n - \ \"setModerationStatus\": {\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"id\": - \"youtube.comments.setModerationStatus\",\n \"parameterOrder\": [\n - \ \"id\",\n \"moderationStatus\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"moderationStatus\": {\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"type\": \"string\",\n - \ \"required\": true,\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ]\n },\n \"id\": {\n \"description\": - \"Modifies the moderation status of the comments with the given IDs\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"banAuthor\": - {\n \"type\": \"boolean\",\n \"description\": \"If - set to true the author of the comment gets added to the ban list. This means - all future comments of the author will autmomatically be rejected. Only valid - in combination with STATUS_REJECTED.\",\n \"default\": \"false\",\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Sets the moderation status of one or more comments.\",\n \"httpMethod\": - \"POST\"\n },\n \"markAsSpam\": {\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n \"id\": - \"youtube.comments.markAsSpam\",\n \"description\": \"Expresses the - caller's opinion that one or more comments should be flagged as spam.\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"Flags the comments with the given - IDs as spam in the caller's opinion.\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n }\n }\n },\n - \ \"list\": {\n \"path\": \"youtube/v3/comments\",\n \"response\": - {\n \"$ref\": \"CommentListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"maximum\": \"100\",\n \"default\": - \"20\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"minimum\": \"1\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"parentId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Returns - replies to the specified comment. Note, currently YouTube features only one - level of replies (ie replies to top level comments). However replies to replies - may be supported in the future.\"\n },\n \"id\": {\n - \ \"description\": \"Returns the comments with the given IDs for - One Platform.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more comment resource - properties that the API response will include.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"textFormat\": {\n \"location\": - \"query\",\n \"default\": \"html\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"type\": \"string\",\n \"description\": - \"The requested text format for the returned comments.\"\n }\n - \ },\n \"id\": \"youtube.comments.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"update\": {\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"id\": \"youtube.comments.update\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n - \ \"repeated\": true\n }\n },\n \"description\": - \"Updates an existing resource.\"\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"id\": \"youtube.i18nRegions.list\",\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"default\": \"en_US\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the i18nRegion resource properties that the API response - will include. Set the parameter value to snippet.\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"httpMethod\": \"GET\"\n }\n }\n },\n - \ \"tests\": {\n \"methods\": {\n \"insert\": {\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/tests\",\n \"response\": - {\n \"$ref\": \"TestItem\"\n },\n \"id\": \"youtube.tests.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/tests\",\n \"request\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"description\": \"POST method.\"\n }\n }\n - \ },\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": - \"en_US\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - i18nLanguage resource properties that the API response will include. Set the - parameter value to snippet.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"response\": - {\n \"$ref\": \"I18nLanguageListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/i18nLanguages\"\n - \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"id\": \"youtube.channels.list\",\n \"flatPath\": - \"youtube/v3/channels\",\n \"path\": \"youtube/v3/channels\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n },\n \"forUsername\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channel associated with a YouTube - username.\"\n },\n \"categoryId\": {\n \"type\": - \"string\",\n \"description\": \"Return the channels within the - specified guide category ID.\",\n \"location\": \"query\"\n },\n - \ \"managedByMe\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Return the channels managed - by the authenticated user.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mySubscribers\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the channels subscribed to the authenticated user\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Return the channels with the specified IDs.\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Return - the ids of channels owned by the authenticated user.\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"default\": \"5\"\n },\n \"hl\": {\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"update\": {\n - \ \"path\": \"youtube/v3/channels\",\n \"request\": {\n \"$ref\": - \"Channel\"\n },\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"response\": - {\n \"$ref\": \"Channel\"\n },\n \"id\": \"youtube.channels.update\"\n - \ }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"id\": - \"youtube.liveChatMessages.list\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"description\": \"Specifies the localization language - in which the system messages should be returned.\",\n \"type\": - \"string\"\n },\n \"profileImageSize\": {\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"description\": - \"Specifies the size of the profile image that should be returned for each - user.\",\n \"minimum\": \"16\",\n \"type\": \"integer\",\n - \ \"maximum\": \"720\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the liveChatComment - resource parts that the API response will include. Supported values are id - and snippet.\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"minimum\": \"200\",\n - \ \"maximum\": \"2000\",\n \"default\": \"500\",\n - \ \"type\": \"integer\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - id of the live chat for which comments should be returned.\"\n }\n - \ }\n },\n \"insert\": {\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"request\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n }\n },\n \"delete\": - {\n \"id\": \"youtube.liveChatMessages.delete\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Deletes a chat message.\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"DELETE\"\n }\n }\n },\n \"thumbnails\": - {\n \"methods\": {\n \"set\": {\n \"mediaUpload\": {\n - \ \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"2097152\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"parameters\": - {\n \"videoId\": {\n \"description\": \"Returns the - Thumbnail with the given video IDs for Stubby or Apiary.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"parameterOrder\": [\n \"videoId\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.thumbnails.set\",\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"supportsMediaUpload\": true,\n \"response\": {\n \"$ref\": - \"ThumbnailSetResponse\"\n }\n }\n }\n },\n \"subscriptions\": - {\n \"methods\": {\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": true\n }\n - \ },\n \"path\": \"youtube/v3/subscriptions\"\n },\n - \ \"delete\": {\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a resource.\"\n },\n - \ \"list\": {\n \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"path\": \"youtube/v3/subscriptions\",\n \"parameters\": - {\n \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"order\": {\n \"location\": - \"query\",\n \"description\": \"The order of the returned subscriptions\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"default\": \"relevance\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ]\n },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the subscribers of the given channel owner.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"channelId\": - {\n \"description\": \"Return the subscriptions of the given - channel owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"description\": \"Flag for returning the subscriptions - of the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"default\": \"5\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"myRecentSubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"description\": \"Return the subscriptions with the given IDs - for Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"forChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\"\n }\n },\n \"id\": \"youtube.subscriptions.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ }\n }\n }\n },\n \"discoveryVersion\": \"v1\",\n \"batchPath\": - \"batch\",\n \"servicePath\": \"\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:33 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCUHilQpz7Pzth1wwmcQjXjg&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"-h2KRmP36k8CYihDRcwzzhNWkD4\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"OxbUT8OM8DHsft_2GPkVZ1bLrww\",\n \"id\": \"UCUHilQpz7Pzth1wwmcQjXjg\",\n - \ \"snippet\": {\n \"title\": \"Th\xE0nh phi\xEAu live ff 1\",\n - \ \"description\": \"Hi m\xECnh l\xE0 th\xE0nh phi\xEAu th\xEDch quay - l\u1EA1i c\xE1c cu\u1ED9c ch\u01A1i game v\xE0 up l\xEAn youtube .\",\n \"customUrl\": - \"@thanhphieuliveff11\",\n \"publishedAt\": \"2022-04-21T10:27:09.327388Z\",\n - \ \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/dFsQu6ArtuPB2NyOll6IzF-PFFfyrb47V3stTmgg4mac9vUke95ikm2Rox8-GMYNEDUl3jH9AA=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/dFsQu6ArtuPB2NyOll6IzF-PFFfyrb47V3stTmgg4mac9vUke95ikm2Rox8-GMYNEDUl3jH9AA=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/dFsQu6ArtuPB2NyOll6IzF-PFFfyrb47V3stTmgg4mac9vUke95ikm2Rox8-GMYNEDUl3jH9AA=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Th\xE0nh phi\xEAu live ff - 1\",\n \"description\": \"Hi m\xECnh l\xE0 th\xE0nh phi\xEAu th\xEDch - quay l\u1EA1i c\xE1c cu\u1ED9c ch\u01A1i game v\xE0 up l\xEAn youtube .\"\n - \ },\n \"country\": \"VN\"\n },\n \"brandingSettings\": - {\n \"channel\": {\n \"title\": \"Th\xE0nh phi\xEAu live ff - 1\",\n \"description\": \"Hi m\xECnh l\xE0 th\xE0nh phi\xEAu th\xEDch - quay l\u1EA1i c\xE1c cu\u1ED9c ch\u01A1i game v\xE0 up l\xEAn youtube .\",\n - \ \"country\": \"VN\"\n }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:33 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"parameters\": - {\n \"fields\": {\n \"location\": \"query\",\n \"description\": - \"Selector specifying which fields to include in a partial response.\",\n - \ \"type\": \"string\"\n },\n \"callback\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"JSONP\"\n - \ },\n \"alt\": {\n \"type\": \"string\",\n \"enum\": [\n \"json\",\n - \ \"media\",\n \"proto\"\n ],\n \"description\": \"Data - format for response.\",\n \"enumDescriptions\": [\n \"Responses - with Content-Type of application/json\",\n \"Media download with context-dependent - Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n - \ ],\n \"default\": \"json\",\n \"location\": \"query\"\n },\n - \ \"quotaUser\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"uploadType\": {\n \"description\": - \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"key\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"$.xgafv\": {\n \"enumDescriptions\": [\n \"v1 - error format\",\n \"v2 error format\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"1\",\n \"2\"\n ],\n \"description\": - \"V1 error format.\",\n \"location\": \"query\"\n },\n \"prettyPrint\": - {\n \"type\": \"boolean\",\n \"default\": \"true\",\n \"description\": - \"Returns response with indentations and line breaks.\",\n \"location\": - \"query\"\n },\n \"access_token\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"OAuth access token.\"\n - \ },\n \"oauth_token\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"OAuth 2.0 token for the current user.\"\n - \ },\n \"upload_protocol\": {\n \"location\": \"query\",\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": - \"string\"\n }\n },\n \"title\": \"YouTube Data API v3\",\n \"description\": - \"The YouTube Data API v3 is an API that provides access to YouTube data, - such as videos, playlists, and channels.\",\n \"name\": \"youtube\",\n \"protocol\": - \"rest\",\n \"ownerName\": \"Google\",\n \"servicePath\": \"\",\n \"fullyEncodeReservedExpansion\": - true,\n \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"ownerDomain\": \"google.com\",\n \"id\": \"youtube:v3\",\n \"rootUrl\": - \"https://youtube.googleapis.com/\",\n \"version\": \"v3\",\n \"discoveryVersion\": - \"v1\",\n \"kind\": \"discovery#restDescription\",\n \"schemas\": {\n \"LiveChatMessageListResponse\": - {\n \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatMessageListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"pollingIntervalMillis\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The amount of time the client should wait before polling again.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n }\n },\n \"offlineAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the underlying stream went offline.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveChatMessageListResponse\",\n \"type\": - \"object\"\n },\n \"VideoGetRatingResponse\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoGetRatingResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of ratings that match the - request criteria.\",\n \"items\": {\n \"$ref\": \"VideoRating\"\n - \ }\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoGetRatingResponse\"\n },\n \"ChannelSection\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"contentDetails\": {\n - \ \"$ref\": \"ChannelSectionContentDetails\",\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\"\n },\n - \ \"targeting\": {\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\",\n \"$ref\": - \"ChannelSectionTargeting\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelSectionLocalization\"\n - \ }\n },\n \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the channel section, such as its type, style and title.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"default\": \"youtube#channelSection\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel section.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ChannelSection\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"description\": - \"Details about a resource which was added to a channel.\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"TestItem\": {\n \"id\": \"TestItem\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"TestItemTestItemSnippet\"\n },\n \"gaia\": {\n \"type\": - \"string\",\n \"format\": \"int64\"\n },\n \"id\": - {\n \"type\": \"string\"\n },\n \"featuredPart\": {\n - \ \"type\": \"boolean\"\n }\n }\n },\n \"ActivitySnippet\": - {\n \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\",\n \"properties\": - {\n \"description\": {\n \"description\": \"The description - of the resource primarily associated with the activity. @mutable youtube.activities.insert\",\n - \ \"type\": \"string\"\n },\n \"groupId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel responsible - for this activity\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the resource primarily associated with the activity.\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"enum\": [\n \"typeUnspecified\",\n - \ \"upload\",\n \"like\",\n \"favorite\",\n - \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n - \ \"recommendation\",\n \"bulletin\",\n \"social\",\n - \ \"channelItem\",\n \"promotedItem\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of activity that the resource describes.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel associated with the activity.\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the video was uploaded.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivitySnippet\"\n - \ },\n \"CommentSnippetAuthorChannelId\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"The id of the author's YouTube - channel, if any.\",\n \"id\": \"CommentSnippetAuthorChannelId\"\n },\n - \ \"LiveChatTextMessageDetails\": {\n \"id\": \"LiveChatTextMessageDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"messageText\": - {\n \"type\": \"string\",\n \"description\": \"The user's - message.\"\n }\n }\n },\n \"ChannelToStoreLinkDetails\": - {\n \"properties\": {\n \"storeUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Landing page of the store.\"\n },\n \"merchantId\": - {\n \"description\": \"Google Merchant Center id of the store.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"storeName\": {\n \"description\": \"Name of the store.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Information specific to a store on a merchandising platform linked to a - YouTube channel.\",\n \"id\": \"ChannelToStoreLinkDetails\",\n \"type\": - \"object\"\n },\n \"VideoFileDetailsAudioStream\": {\n \"description\": - \"Information about an audio stream.\",\n \"type\": \"object\",\n \"id\": - \"VideoFileDetailsAudioStream\",\n \"properties\": {\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The audio - codec that the stream uses.\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"channelCount\": {\n \"type\": \"integer\",\n \"description\": - \"The number of audio channels that the stream contains.\",\n \"format\": - \"uint32\"\n },\n \"bitrateBps\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The audio stream's bitrate, in bits per second.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoAbuseReportReason\": - {\n \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"id\": \"VideoAbuseReportReason\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID of this abuse report reason.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReason\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"CommentThreadSnippet\": {\n \"description\": - \"Basic details about a comment thread.\",\n \"id\": \"CommentThreadSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comments refer to, if any. No video_id implies a channel discussion - comment.\"\n },\n \"canReply\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n },\n \"totalReplyCount\": {\n \"format\": - \"uint32\",\n \"description\": \"The total number of replies (not - including the top level comment).\",\n \"type\": \"integer\"\n },\n - \ \"channelId\": {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"topLevelComment\": {\n - \ \"description\": \"The top level comment of this thread.\",\n \"$ref\": - \"Comment\"\n },\n \"isPublic\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the thread (and therefore all its comments) - is visible to all YouTube users.\"\n }\n }\n },\n \"ImageSettings\": - {\n \"description\": \"Branding properties for images associated with - the channel.\",\n \"type\": \"object\",\n \"id\": \"ImageSettings\",\n - \ \"properties\": {\n \"bannerMobileHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerImageUrl\": - {\n \"description\": \"Banner image. Desktop size (1060x175).\",\n - \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size medium/high resolution (960x263).\"\n },\n \"bannerExternalUrl\": - {\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"bannerTabletImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Tablet size (1707x283).\"\n },\n - \ \"smallBrandedBannerImageUrl\": {\n \"description\": \"The - URL for the 640px by 70px banner image that appears below the video player - in the default view of the video watch page. The URL for the image that appears - above the top-left corner of the video player. This is a 25-pixel-high image - with a flexible width that cannot exceed 170 pixels.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTvHighImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. TV size high resolution - (1920x1080).\"\n },\n \"bannerTvImageUrl\": {\n \"description\": - \"Banner image. TV size extra high resolution (2120x1192).\",\n \"type\": - \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size high resolution (1440x395).\",\n \"type\": - \"string\"\n },\n \"largeBrandedBannerImageUrl\": {\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"backgroundImageUrl\": {\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"trackingImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL for a 1px by 1px tracking - pixel that can be used to collect statistics for views of the channel or video - pages.\"\n },\n \"bannerTabletHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\"\n },\n \"bannerTvMediumImageUrl\": {\n \"description\": - \"Banner image. TV size medium resolution (1280x720).\",\n \"type\": - \"string\"\n },\n \"bannerTvLowImageUrl\": {\n \"description\": - \"Banner image. TV size low resolution (854x480).\",\n \"type\": - \"string\"\n },\n \"bannerMobileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size (640x175).\"\n - \ },\n \"bannerMobileLowImageUrl\": {\n \"description\": - \"Banner image. Mobile size low resolution (320x88).\",\n \"type\": - \"string\"\n },\n \"watchIconImageUrl\": {\n \"type\": - \"string\"\n },\n \"bannerTabletLowImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size low resolution - (1138x188).\"\n }\n }\n },\n \"ContentRating\": {\n \"id\": - \"ContentRating\",\n \"properties\": {\n \"mocRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Ministerio de Cultura - (Colombia) rating.\",\n \"enum\": [\n \"mocUnspecified\",\n - \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n - \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ]\n },\n \"chvrsRating\": - {\n \"description\": \"The video's Canadian Home Video Rating System - (CHVRS) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"14A\",\n \"18A\",\n - \ \"R\",\n \"E\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"chvrsUnspecified\",\n \"chvrsG\",\n - \ \"chvrsPg\",\n \"chvrs14a\",\n \"chvrs18a\",\n - \ \"chvrsR\",\n \"chvrsE\",\n \"chvrsUnrated\"\n - \ ]\n },\n \"chfilmRating\": {\n \"enum\": - [\n \"chfilmUnspecified\",\n \"chfilm0\",\n \"chfilm6\",\n - \ \"chfilm12\",\n \"chfilm16\",\n \"chfilm18\",\n - \ \"chfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Switzerland.\",\n \"type\": - \"string\"\n },\n \"smsaRating\": {\n \"enum\": [\n - \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Statens - medier\xE5d (Sweden's National Media Council).\",\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"mekuRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"mekuUnspecified\",\n \"mekuS\",\n \"meku7\",\n - \ \"meku12\",\n \"meku16\",\n \"meku18\",\n - \ \"mekuUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Finland's Kansallinen - Audiovisuaalinen Instituutti (National Audiovisual Institute).\"\n },\n - \ \"menaMpaaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ],\n \"description\": \"The rating system for MENA countries, - a clone of MPAA. It is needed to prevent titles go live w/o additional QC - check, since some of them can be inappropriate for the countries at all. See - b/33408548 for more details.\",\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"bbfcRating\": {\n \"enum\": - [\n \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ],\n \"description\": \"The video's British Board of Film - Classification (BBFC) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ]\n },\n \"nbcplRating\": {\n \"description\": - \"The video's rating in Poland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"moctwRating\": {\n \"description\": \"The video's - rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n \"type\": - \"string\",\n \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ]\n },\n \"czfilmRating\": - {\n \"description\": \"The video's rating in the Czech Republic.\",\n - \ \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n - \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n - \ \"czfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ]\n },\n \"cccRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Todo espectador\",\n - \ \"6+ - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n - \ \"18+\",\n \"18+ - contenido excesivamente violento\",\n - \ \"18+ - contenido pornogr\xE1fico\",\n \"\"\n ],\n - \ \"description\": \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica - (Chile) rating.\",\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ]\n },\n \"fpbRating\": {\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\",\n - \ \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ],\n \"type\": \"string\"\n - \ },\n \"bmukkRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"Unrestricted\",\n \"6+\",\n \"8+\",\n - \ \"10+\",\n \"12+\",\n \"14+\",\n \"16+\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Austrian Board of Media Classification (Bundesministerium f\xFCr - Unterricht, Kunst und Kultur).\",\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"kmrbRating\": {\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"bfvcRating\": - {\n \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ],\n \"description\": \"The - video's rating from Thailand's Board of Film and Video Censors.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"mccaaRating\": {\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Malta's - Film Age-Classification Board.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG\",\n \"12A\",\n \"12\",\n - \ \"14 - this rating was removed from the new classification structure - introduced in 2013.\",\n \"15\",\n \"16 - this rating - was removed from the new classification structure introduced in 2013.\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"anatelRating\": {\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ],\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\"\n },\n \"fcoRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Hong Kong's - Office for Film, Newspaper and Article Administration.\"\n },\n \"agcomRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n - \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ]\n },\n \"icaaRating\": {\n \"enum\": [\n - \ \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n - \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n - \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales - (ICAA - Spain) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"APTA\",\n \"7\",\n \"12\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X\",\n \"\"\n - \ ]\n },\n \"medietilsynetRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"description\": \"The video's rating from Medietilsynet, - the Norwegian Media Authority.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ]\n },\n \"kfcbRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n - \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n - \ \"kfcbUnrated\"\n ],\n \"description\": \"The - video's rating from the Kenya Film Classification Board.\"\n },\n \"mpaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n - \ \"! X\",\n \"\"\n ],\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enum\": - [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"djctqRatingReasons\": {\n \"items\": - {\n \"enumDescriptions\": [\n \"\",\n \"Brazil - rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia - (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n - \ \"Conte\xFAdo sexual (Sexual content)\",\n \"Nudez - (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo Expl\xEDcito - (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"type\": \"string\"\n },\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n - \ \"type\": \"array\"\n },\n \"lsfRating\": {\n \"description\": - \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"enum\": - [\n \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ]\n },\n \"oflcRating\": - {\n \"description\": \"The video's Office of Film and Literature - Classification (OFLC - New Zealand) rating.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ],\n \"enum\": - [\n \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n - \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n - \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n - \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n - \ ]\n },\n \"mcstRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - system for Vietnam - MCST\",\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"mpaatRating\": {\n \"enum\": [\n - \ \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"type\": \"string\",\n \"description\": - \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n - \ },\n \"eefilmRating\": {\n \"description\": \"The - video's rating in Estonia.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Pere\",\n \"L\",\n \"MS-6\",\n \"K-6\",\n - \ \"MS-12\",\n \"K-12\",\n \"K-14\",\n \"K-16\",\n - \ \"\"\n ],\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"grfilmRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Greece.\"\n },\n - \ \"smaisRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"L\",\n \"7\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ],\n \"description\": \"The - video's rating in Iceland.\"\n },\n \"mccypRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ],\n \"description\": \"The - video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ]\n },\n \"skfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Slovakia.\",\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ]\n },\n - \ \"nfvcbRating\": {\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"18\",\n \"RE\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Nigeria's National Film - and Video Censors Board.\"\n },\n \"pefilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n - \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n - \ \"pefilmUnrated\"\n ],\n \"description\": \"The - video's rating in Peru.\"\n },\n \"russiaRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's National Film Registry - of the Russian Federation (MKRF - Russia) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ]\n },\n - \ \"fmocRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"E\",\n \"\"\n ],\n - \ \"description\": \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"type\": \"string\",\n \"enum\": [\n \"fmocUnspecified\",\n - \ \"fmocU\",\n \"fmoc10\",\n \"fmoc12\",\n - \ \"fmoc16\",\n \"fmoc18\",\n \"fmocE\",\n - \ \"fmocUnrated\"\n ]\n },\n \"cicfRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Commission de Contr\xF4le - des Films (Belgium).\",\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"kijkwijzerRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\"\n },\n \"eirinRating\": - {\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ],\n \"description\": \"The - video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG-12\",\n \"R15+\",\n \"R18+\",\n - \ \"\"\n ]\n },\n \"cncRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Rating system in France - Commission de classification - cinematographique\"\n },\n \"ytRating\": {\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"tvpgRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's TV Parental Guidelines - (TVPG) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ]\n },\n \"ifcoRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Irish Film Classification Office (IFCO - Ireland) rating. See the IFCO website - for more information.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"15A\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ]\n },\n \"cbfcRating\": {\n \"enum\": [\n - \ \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ]\n },\n \"resorteviolenciaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in Venezuela.\",\n - \ \"enum\": [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ]\n },\n \"csaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from France's Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast - content.\",\n \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"rtcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's General Directorate - of Radio, Television and Cinematography (Mexico) rating.\"\n },\n \"acbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"catvRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n - \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n - \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n - \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n - \ \"catvE\"\n ],\n \"description\": \"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.\"\n },\n \"fpbRatingReasons\": - {\n \"description\": \"Reasons that explain why the video received - its FPB (South Africa) rating.\",\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"South - Africa rating content descriptors.\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ]\n },\n \"type\": \"array\"\n },\n \"incaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"description\": \"The video's INCAA (Instituto Nacional - de Cine y Artes Audiovisuales - Argentina) rating.\",\n \"type\": - \"string\"\n },\n \"ecbmctRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ],\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ],\n \"description\": \"Rating - system in Turkey - Evaluation and Classification Board of the Ministry of - Culture and Tourism\",\n \"type\": \"string\"\n },\n \"fcbmRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG13\",\n \"P13\",\n \"18\",\n - \ \"18SX\",\n \"18PA\",\n \"18SG\",\n \"18PL\",\n - \ \"\"\n ],\n \"enum\": [\n \"fcbmUnspecified\",\n - \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n - \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n - \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n - \ ],\n \"description\": \"The video's rating from Malaysia's - Film Censorship Board.\"\n },\n \"nfrcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"nkclvRating\": - {\n \"description\": \"The video's rating from the Nacion\xE3lais - Kino centrs (National Film Centre of Latvia).\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n - \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n - \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"cscfRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"description\": \"The video's rating from Luxembourg's - Commission de surveillance de la classification des films (CSCF).\"\n },\n - \ \"rcnofRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Hungarian - Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\"\n - \ },\n \"mtrcbRating\": {\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ],\n \"description\": \"The - video's rating from the Movie and Television Review and Classification Board - (Philippines).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ]\n },\n \"djctqRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's Departamento de Justi\xE7a, - Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ]\n },\n - \ \"cceRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"description\": \"The video's rating from Portugal's - Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enum\": - [\n \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n - \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n - \ \"cceUnrated\",\n \"cceM14\"\n ]\n },\n - \ \"mdaRating\": {\n \"enum\": [\n \"mdaUnspecified\",\n - \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n - \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n - \ \"mdaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Singapore's Media Development - Authority (MDA) and, specifically, it's Board of Film Censors (BFC).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ]\n },\n \"rteRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enum\": - [\n \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ]\n },\n \"cnaRating\": {\n \"enum\": [\n - \ \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n - \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"description\": \"The - video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AP\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"18+\",\n \"\"\n ]\n },\n \"fskRating\": - {\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle - der Filmwirtschaft (FSK - Germany) rating.\",\n \"type\": \"string\"\n - \ },\n \"ilfilmRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating in Israel.\",\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ]\n },\n \"mibacRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Ministero dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\"\n - \ },\n \"nbcRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"nbcUnspecified\",\n \"nbcG\",\n \"nbcPg\",\n - \ \"nbc12plus\",\n \"nbc15plus\",\n \"nbc18plus\",\n - \ \"nbc18plusr\",\n \"nbcPu\",\n \"nbcUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Maldives - National Bureau of Classification.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ]\n },\n \"catvfrRating\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n - \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n - \ \"catvfrUnrated\",\n \"catvfrE\"\n ]\n },\n - \ \"nmcRating\": {\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"PG-15\",\n - \ \"15+\",\n \"18+\",\n \"18TC\",\n \"\"\n - \ ]\n },\n \"egfilmRating\": {\n \"description\": - \"The video's rating in Egypt.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GN\",\n \"18\",\n \"BN\",\n \"\"\n - \ ],\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Ratings - schemes. The country-specific ratings are mostly for movies and shows. LINT.IfChange\"\n - \ },\n \"ChannelSectionSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"style\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"description\": \"The - style of the channel section.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel section's default - title and description.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": - \"Localized title, read-only.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\",\n \"type\": \"string\"\n },\n \"position\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The position of the channel section in the channel.\"\n },\n \"type\": - {\n \"description\": \"The type of the channel section.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The channel section's title for multiple_playlists and multiple_channels.\"\n - \ }\n },\n \"description\": \"Basic details about a channel - section, including title, style and position.\",\n \"id\": \"ChannelSectionSnippet\"\n - \ },\n \"LiveChatModeratorListResponse\": {\n \"properties\": {\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"items\": {\n \"description\": - \"A list of moderators that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n - \ }\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"id\": \"LiveChatModeratorListResponse\",\n \"type\": \"object\"\n - \ },\n \"VideoSuggestionsTagSuggestion\": {\n \"properties\": {\n - \ \"categoryRestricts\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A set of video categories for which the tag is relevant. You can use this - information to display appropriate tag suggestions based on the video category - that the video uploader associates with the video. By default, tag suggestions - are relevant for all categories if there are no restricts defined for the - keyword.\"\n },\n \"tag\": {\n \"description\": \"The - keyword tag suggested for the video.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A single tag suggestion with - it's relevance information.\",\n \"id\": \"VideoSuggestionsTagSuggestion\",\n - \ \"type\": \"object\"\n },\n \"ChannelSnippet\": {\n \"id\": - \"ChannelSnippet\",\n \"type\": \"object\",\n \"description\": \"Basic - details about a channel, including title, description and thumbnails.\",\n - \ \"properties\": {\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the channel.\"\n },\n \"customUrl\": {\n - \ \"description\": \"The custom url of the channel.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the channel's default title and - description.\"\n },\n \"title\": {\n \"description\": - \"The channel's title.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the channel was created.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"I18nRegionListResponse\": {\n \"id\": - \"I18nRegionListResponse\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n },\n \"description\": \"A list of regions - where YouTube is available. In this map, the i18n region ID is the map key, - and its value is the corresponding i18nRegion resource.\",\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"default\": \"youtube#i18nRegionListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n \"type\": - \"object\",\n \"properties\": {\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The `visitorId` identifies the visitor.\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n },\n \"description\": \"A list - of valid abuse reasons that are used with `video.ReportAbuse`.\",\n \"type\": - \"array\"\n }\n }\n },\n \"InvideoTiming\": {\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\",\n \"type\": - \"object\",\n \"properties\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Describes a - timing type. If the value is offsetFromStart, then the offsetMs field represents - an offset from the start of the video. If the value is offsetFromEnd, then - the offsetMs field represents an offset from the end of the video.\"\n },\n - \ \"offsetMs\": {\n \"type\": \"string\",\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\",\n \"format\": - \"uint64\"\n },\n \"durationMs\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"Defines the - duration in milliseconds for which the promotion should be displayed. If missing, - the client should use the default.\"\n }\n },\n \"id\": \"InvideoTiming\"\n - \ },\n \"ActivityContentDetailsSubscription\": {\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"description\": \"Information about a channel that a user - subscribed to.\",\n \"type\": \"object\"\n },\n \"Cuepoint\": {\n - \ \"type\": \"object\",\n \"id\": \"Cuepoint\",\n \"description\": - \"Note that there may be a 5-second end-point resolution issue. For instance, - if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\"\n },\n \"insertionOffsetTimeMs\": - {\n \"format\": \"int64\",\n \"type\": \"string\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\"\n },\n \"id\": {\n \"description\": - \"The identifier for cuepoint resource.\",\n \"type\": \"string\"\n - \ },\n \"cueType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ]\n - \ },\n \"durationSecs\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The duration - of this cuepoint.\"\n },\n \"walltimeMs\": {\n \"description\": - \"The wall clock time at which the cuepoint should be inserted. Only one of - insertion_offset_time_ms and walltime_ms may be set at a time.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"MemberSnippet\": {\n \"id\": \"MemberSnippet\",\n \"properties\": - {\n \"membershipsDetails\": {\n \"$ref\": \"MembershipsDetails\",\n - \ \"description\": \"Details about the user's membership.\"\n },\n - \ \"creatorChannelId\": {\n \"description\": \"The id of the - channel that's offering memberships.\",\n \"type\": \"string\"\n - \ },\n \"memberDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the member.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"IngestionInfo\": {\n \"id\": - \"IngestionInfo\",\n \"description\": \"Describes information necessary - for ingesting an RTMP, HTTP, or SRT stream.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"rtmpsIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of backupIngestionAddress in order - to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": - \"string\"\n },\n \"ingestionAddress\": {\n \"description\": - \"The primary ingestion URL that you should use to stream video to YouTube. - You must stream video to this URL. Depending on which application or tool - you use to encode your video stream, you may need to enter the stream URL - and stream name separately or you may need to concatenate them in the following - format: *STREAM_URL/STREAM_NAME* \",\n \"type\": \"string\"\n },\n - \ \"backupIngestionAddress\": {\n \"description\": \"The backup - ingestion URL that you should use to stream video to YouTube. You have the - option of simultaneously streaming the content that you are sending to the - ingestionAddress to this URL.\",\n \"type\": \"string\"\n },\n - \ \"streamName\": {\n \"type\": \"string\",\n \"description\": - \"The stream name that YouTube assigns to the video stream.\"\n }\n - \ }\n },\n \"LiveStreamContentDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamContentDetails\",\n \"properties\": {\n \"closedCaptionsIngestionUrl\": - {\n \"description\": \"The ingestion URL where the closed captions - of this stream are sent.\",\n \"type\": \"string\"\n },\n - \ \"isReusable\": {\n \"description\": \"Indicates whether - the stream is reusable, which means that it can be bound to multiple broadcasts. - It is common for broadcasters to reuse the same stream for many different - broadcasts if those broadcasts occur at different times. If you set this value - to false, then the stream will not be reusable, which means that it can only - be bound to one broadcast. Non-reusable streams differ from reusable streams - in the following ways: - A non-reusable stream can only be bound to one broadcast. - - A non-reusable stream might be deleted by an automated process after the - broadcast ends. - The liveStreams.list method does not list non-reusable streams - if you call the method and set the mine parameter to true. The only way to - use that method to retrieve the resource for a non-reusable stream is to use - the id parameter to identify the stream. \",\n \"type\": \"boolean\"\n - \ }\n },\n \"description\": \"Detailed settings of a stream.\"\n - \ },\n \"LocalizedString\": {\n \"type\": \"object\",\n \"properties\": - {\n \"language\": {\n \"type\": \"string\"\n },\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LocalizedString\"\n - \ },\n \"TokenPagination\": {\n \"properties\": {},\n \"description\": - \"Stub token pagination template to suppress results.\",\n \"type\": - \"object\",\n \"id\": \"TokenPagination\"\n },\n \"Caption\": {\n - \ \"description\": \"A *caption* resource represents a YouTube caption - track. A caption track is associated with exactly one YouTube video.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#caption\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"CaptionSnippet\",\n \"description\": \"The snippet object contains - basic details about the caption.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the caption track.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"Caption\"\n },\n \"VideoCategory\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategory\\\".\",\n \"default\": - \"youtube#videoCategory\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video category.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"VideoCategory\",\n - \ \"type\": \"object\",\n \"description\": \"A *videoCategory* resource - identifies a category that has been or could be associated with uploaded videos.\"\n - \ },\n \"LiveChatSuperChatDetails\": {\n \"id\": \"LiveChatSuperChatDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the user to this Super Chat event.\"\n },\n - \ \"amountMicros\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The amount purchased by the user, - in micros (1,750,000 micros = 1.75).\"\n },\n \"tier\": {\n - \ \"description\": \"The tier in which the amount belongs. Lower amounts - belong to lower tiers. The lowest tier is 1.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"currency\": {\n \"type\": - \"string\",\n \"description\": \"The currency in which the purchase - was made.\"\n }\n }\n },\n \"ChannelTopicDetails\": {\n - \ \"id\": \"ChannelTopicDetails\",\n \"properties\": {\n \"topicCategories\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Wikipedia URLs that describe the channel's - content.\",\n \"type\": \"array\"\n },\n \"topicIds\": - {\n \"description\": \"A list of Freebase topic IDs associated with - the channel. You can retrieve information about each topic using the Freebase - Topic API.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Freebase topic information related to the channel.\"\n - \ },\n \"ThirdPartyLink\": {\n \"type\": \"object\",\n \"description\": - \"A *third party account link* resource represents a link between a YouTube - account or a channel and an account on a third-party service.\",\n \"properties\": - {\n \"linkingToken\": {\n \"type\": \"string\",\n \"description\": - \"The linking_token identifies a YouTube account and channel with which the - third party account is linked.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#thirdPartyLink\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLink\\\".\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the third- party account link.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the status of the link.\",\n - \ \"$ref\": \"ThirdPartyLinkStatus\"\n }\n },\n \"id\": - \"ThirdPartyLink\"\n },\n \"LiveChatModerator\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatModerator\",\n \"description\": - \"A *liveChatModerator* resource represents a moderator for a YouTube live - chat. A chat moderator has the ability to ban/unban users from a chat, remove - message, etc.\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the moderator.\",\n \"$ref\": - \"LiveChatModeratorSnippet\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatModerator\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the moderator.\"\n }\n - \ }\n },\n \"LiveChatSuperStickerDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatSuperStickerDetails\",\n \"properties\": {\n - \ \"superStickerMetadata\": {\n \"description\": \"Information - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\"\n },\n \"tier\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n },\n \"currency\": {\n \"type\": - \"string\",\n \"description\": \"The currency in which the purchase - was made.\"\n },\n \"amountMicros\": {\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n }\n - \ }\n },\n \"Activity\": {\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the activity.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#activity\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n },\n - \ \"contentDetails\": {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetails\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"snippet\": {\n \"$ref\": - \"ActivitySnippet\",\n \"description\": \"The snippet object contains - basic details about the activity, including the activity's type and group - ID.\"\n }\n },\n \"description\": \"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.\",\n \"id\": - \"Activity\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"properties\": - {\n \"associatedMembershipGiftingMessageId\": {\n \"description\": - \"The ID of the membership gifting message that is related to this gift membership. - This ID will always refer to a message whose type is 'membershipGiftingEvent'.\",\n - \ \"type\": \"string\"\n },\n \"memberLevelName\": {\n - \ \"type\": \"string\",\n \"description\": \"The name of - the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"gifterChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the user that made the - membership gifting purchase. This matches the `snippet.authorChannelId` of - the associated membership gifting message.\"\n }\n }\n },\n - \ \"I18nRegionSnippet\": {\n \"properties\": {\n \"gl\": {\n - \ \"type\": \"string\",\n \"description\": \"The region code - as a 2-letter ISO country code.\"\n },\n \"name\": {\n \"type\": - \"string\",\n \"description\": \"The human-readable name of the region.\"\n - \ }\n },\n \"description\": \"Basic details about an i18n - region, such as region code and human-readable name.\",\n \"type\": \"object\",\n - \ \"id\": \"I18nRegionSnippet\"\n },\n \"MembershipsDuration\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsDuration\",\n \"properties\": - {\n \"memberTotalDurationMonths\": {\n \"type\": \"integer\",\n - \ \"description\": \"The cumulative time the user has been a member - across all levels in complete months (the time is rounded down to the nearest - integer).\",\n \"format\": \"int32\"\n },\n \"memberSince\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the user became a continuous member across all levels.\"\n }\n - \ }\n },\n \"ThirdPartyLinkListResponse\": {\n \"id\": \"ThirdPartyLinkListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"type\": \"array\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\"\n }\n - \ }\n },\n \"CommentThread\": {\n \"type\": \"object\",\n \"id\": - \"CommentThread\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentThread\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the comment thread.\",\n \"type\": \"string\"\n - \ },\n \"replies\": {\n \"description\": \"The replies - object contains a limited number of replies (if any) to the top level comment - found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n }\n - \ },\n \"description\": \"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.\"\n },\n \"I18nLanguageListResponse\": - {\n \"properties\": {\n \"items\": {\n \"description\": - \"A list of supported i18n languages. In this map, the i18n language ID is - the map key, and its value is the corresponding i18nLanguage resource.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"I18nLanguage\"\n }\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"default\": \"youtube#i18nLanguageListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ }\n },\n \"id\": \"I18nLanguageListResponse\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsUpload\": {\n \"properties\": - {\n \"videoId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the uploaded video.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Information about the uploaded - video.\",\n \"id\": \"ActivityContentDetailsUpload\",\n \"type\": - \"object\"\n },\n \"PlaylistStatus\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The playlist's - privacy status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n }\n },\n \"id\": \"PlaylistStatus\"\n - \ },\n \"I18nRegion\": {\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the i18n region, such as region code and human-readable - name.\",\n \"$ref\": \"I18nRegionSnippet\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#i18nRegion\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the i18n region.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"I18nRegion\",\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\"\n - \ },\n \"CaptionListResponse\": {\n \"id\": \"CaptionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Caption\"\n },\n - \ \"description\": \"A list of captions that match the request criteria.\",\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"default\": - \"youtube#captionListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n }\n },\n \"PlaylistContentDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"itemCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The number - of videos in the playlist.\",\n \"type\": \"integer\"\n }\n - \ },\n \"id\": \"PlaylistContentDetails\"\n },\n \"VideoAgeGating\": - {\n \"properties\": {\n \"alcoholContent\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether or not the video - has alcoholic beverage content. Only users of legal purchasing age in a particular - country, as identified by ICAP, can view the content.\"\n },\n \"restricted\": - {\n \"type\": \"boolean\",\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\"\n },\n - \ \"videoGameRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"Video game rating, if any.\",\n - \ \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ]\n }\n - \ },\n \"id\": \"VideoAgeGating\",\n \"type\": \"object\"\n - \ },\n \"PlaylistItemContentDetails\": {\n \"id\": \"PlaylistItemContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify a video. To retrieve the video resource, - set the id query parameter to this value in your API request.\"\n },\n - \ \"endAt\": {\n \"description\": \"The time, measured in seconds - from the start of the video, when the video should stop playing. (The playlist - owner can specify the times when the video should start and stop playing when - the video is played in the context of the playlist.) By default, assume that - the video.endTime is the end of the video.\",\n \"type\": \"string\"\n - \ },\n \"startAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\"\n },\n \"note\": {\n \"description\": - \"A user-generated note for this item.\",\n \"type\": \"string\"\n - \ },\n \"videoPublishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the video was published - to YouTube.\",\n \"format\": \"date-time\"\n }\n }\n - \ },\n \"ChannelContentDetails\": {\n \"id\": \"ChannelContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"type\": \"object\",\n \"properties\": {\n \"likes\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"watchHistory\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"watchLater\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s watch later playlist. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"favorites\": {\n \"description\": \"The ID of the - playlist that contains the channel\\\"s favorite videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n },\n \"uploads\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s uploaded videos. Use the videos.insert method to - upload new videos and the videos.delete method to delete previously uploaded - videos.\"\n }\n }\n }\n },\n \"description\": - \"Details about the content of a channel.\"\n },\n \"MembershipsLevel\": - {\n \"description\": \"A *membershipsLevel* resource represents an offer - made by YouTube creators for their fans. Users can become members of the channel - by joining one of the available levels. They will provide recurring monetary - support and receives special benefits.\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the memberships level.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"MembershipsLevelSnippet\",\n \"description\": - \"The snippet object contains basic details about the level.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevel\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"MembershipsLevel\"\n },\n \"ActivityContentDetails\": - {\n \"type\": \"object\",\n \"description\": \"Details about the - content of an activity: the video that was shared, the channel that was subscribed - to, etc.\",\n \"id\": \"ActivityContentDetails\",\n \"properties\": - {\n \"subscription\": {\n \"description\": \"The subscription - object contains information about a channel that a user subscribed to. This - property is only present if the snippet.type is subscription.\",\n \"$ref\": - \"ActivityContentDetailsSubscription\"\n },\n \"channelItem\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"social\": {\n \"description\": \"The social - object contains details about a social network post. This property is only - present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"recommendation\": {\n \"description\": \"The - recommendation object contains information about a recommended resource. This - property is only present if the snippet.type is recommendation.\",\n \"$ref\": - \"ActivityContentDetailsRecommendation\"\n },\n \"upload\": - {\n \"$ref\": \"ActivityContentDetailsUpload\",\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\"\n },\n \"promotedItem\": - {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n \"description\": - \"The promotedItem object contains details about a resource which is being - promoted. This property is only present if the snippet.type is promotedItem.\"\n - \ },\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n },\n \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"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.\"\n },\n \"comment\": {\n \"description\": - \"The comment object contains information about a resource that received a - comment. This property is only present if the snippet.type is comment.\",\n - \ \"$ref\": \"ActivityContentDetailsComment\"\n },\n \"playlistItem\": - {\n \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"like\": {\n \"$ref\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"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.\"\n }\n }\n },\n \"LiveBroadcastStatus\": - {\n \"description\": \"Live broadcast state.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"type\": \"string\"\n },\n \"recordingStatus\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - recording status.\",\n \"enumDescriptions\": [\n \"No - value or the value is unknown.\",\n \"The recording has not yet - been started.\",\n \"The recording is currently on.\",\n \"The - recording is completed, and cannot be started again.\"\n ],\n \"enum\": - [\n \"liveBroadcastRecordingStatusUnspecified\",\n \"notRecording\",\n - \ \"recording\",\n \"recorded\"\n ]\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the broadcast is made for kids or not, decided by YouTube instead - of the creator. This field is read only.\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\",\n \"type\": - \"boolean\"\n },\n \"liveBroadcastPriority\": {\n \"enum\": - [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ],\n \"type\": - \"string\",\n \"description\": \"Priority of the live broadcast event - (internal state).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Low priority broadcast: for low view count HoAs or other low - priority broadcasts.\",\n \"Normal priority broadcast: for regular - HoAs and broadcasts.\",\n \"High priority broadcast: for high profile - HoAs, like PixelCorp ones.\"\n ]\n },\n \"lifeCycleStatus\": - {\n \"description\": \"The broadcast's status. The status can be - updated using the API's liveBroadcasts.transition method.\",\n \"enum\": - [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveBroadcastStatus\"\n },\n \"ThirdPartyLinkSnippet\": - {\n \"properties\": {\n \"channelToStoreLink\": {\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"description\": \"Type - of the link named after the entities that are being linked.\"\n }\n - \ },\n \"id\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"Basic information about a third party account link, including its type and - type-specific information.\",\n \"type\": \"object\"\n },\n \"VideoContentDetails\": - {\n \"properties\": {\n \"caption\": {\n \"description\": - \"The value of captions indicates whether the video has captions or not.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"true\",\n - \ \"false\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ]\n },\n \"definition\": {\n \"type\": - \"string\",\n \"enum\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"description\": \"The value of definition indicates - whether the video is available in high definition or only in standard definition.\"\n - \ },\n \"regionRestriction\": {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\"\n },\n \"hasCustomThumbnail\": - {\n \"description\": \"Indicates whether the video uploader has provided - a custom thumbnail image for the video. This property is only visible to the - video uploader.\",\n \"type\": \"boolean\"\n },\n \"countryRestriction\": - {\n \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\",\n \"$ref\": - \"AccessPolicy\"\n },\n \"projection\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"description\": \"Specifies the projection format - of the video.\"\n },\n \"dimension\": {\n \"type\": - \"string\",\n \"description\": \"The value of dimension indicates - whether the video is available in 3D or in 2D.\"\n },\n \"duration\": - {\n \"type\": \"string\",\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"contentRating\": {\n \"description\": \"Specifies the ratings - that the video received under various rating schemes.\",\n \"$ref\": - \"ContentRating\"\n },\n \"licensedContent\": {\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\",\n \"type\": \"boolean\"\n }\n },\n \"id\": - \"VideoContentDetails\",\n \"description\": \"Details about the content - of a YouTube Video.\",\n \"type\": \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"type\": \"object\",\n \"description\": \"Video processing - progress and completion time estimate.\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"properties\": {\n \"partsProcessed\": {\n \"type\": - \"string\",\n \"description\": \"The number of parts of the video - that YouTube has already processed. You can estimate the percentage of the - video that YouTube has already processed by calculating: 100 * parts_processed - / parts_total Note that since the estimated number of parts could increase - without a corresponding increase in the number of parts that have already - been processed, it is possible that the calculated progress could periodically - decrease while YouTube processes a video.\",\n \"format\": \"uint64\"\n - \ },\n \"partsTotal\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"An estimate - of the total number of parts that need to be processed for the video. The - number may be updated with more precise estimates while YouTube processes - the video.\"\n },\n \"timeLeftMs\": {\n \"format\": - \"uint64\",\n \"description\": \"An estimate of the amount of time, - in millseconds, that YouTube needs to finish processing the video.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoStatistics\": {\n \"type\": - \"object\",\n \"id\": \"VideoStatistics\",\n \"description\": \"Statistics - about the video, such as the number of times the video was viewed or liked.\",\n - \ \"properties\": {\n \"likeCount\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of users who have indicated that they liked the video by giving it a positive - rating.\"\n },\n \"dislikeCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of users who have indicated - that they disliked the video by giving it a negative rating.\",\n \"type\": - \"string\"\n },\n \"favoriteCount\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\"\n - \ },\n \"commentCount\": {\n \"description\": \"The - number of comments for the video.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"viewCount\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of times the video has been viewed.\"\n }\n }\n },\n \"Playlist\": - {\n \"id\": \"Playlist\",\n \"properties\": {\n \"contentDetails\": - {\n \"$ref\": \"PlaylistContentDetails\",\n \"description\": - \"The contentDetails object contains information like video count.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlist\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist, such as its title and description.\"\n },\n \"player\": - {\n \"description\": \"The player object contains information that - you would use to play the playlist in an embedded player.\",\n \"$ref\": - \"PlaylistPlayer\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"description\": \"Localizations - for different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"PlaylistLocalization\"\n }\n },\n \"status\": {\n - \ \"description\": \"The status object contains status information - for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n }\n - \ },\n \"description\": \"A *playlist* resource represents a YouTube - playlist. A playlist is a collection of videos that can be viewed sequentially - and shared with other users. A playlist can contain up to 200 videos, and - YouTube does not limit the number of playlists that each user creates. By - default, playlists are publicly visible to other users, but playlists can - be public or private. YouTube also uses playlists to identify special collections - of videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods.\",\n \"type\": - \"object\"\n },\n \"PlaylistItemListResponse\": {\n \"properties\": - {\n \"pageInfo\": {\n \"description\": \"General pagination - information.\",\n \"$ref\": \"PageInfo\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of - this resource.\",\n \"type\": \"string\",\n \"default\": - \"youtube#playlistItemListResponse\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"description\": \"A list of playlist items that match the request - criteria.\",\n \"type\": \"array\"\n }\n },\n \"id\": - \"PlaylistItemListResponse\",\n \"type\": \"object\"\n },\n \"ChannelContentOwnerDetails\": - {\n \"type\": \"object\",\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"properties\": {\n \"contentOwner\": {\n - \ \"description\": \"The ID of the content owner linked to the channel.\",\n - \ \"type\": \"string\"\n },\n \"timeLinked\": {\n \"description\": - \"The date and time when the channel was linked to the content owner.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelContentOwnerDetails\"\n },\n \"PlaylistItem\": - {\n \"description\": \"A *playlistItem* resource identifies another resource, - such as a video, that is included in a playlist. In addition, the playlistItem - resource contains details about the included resource that pertain specifically - to how that resource is used in that playlist. YouTube uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"properties\": - {\n \"status\": {\n \"description\": \"The status object contains - information about the playlist item's privacy status.\",\n \"$ref\": - \"PlaylistItemStatus\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlistItem\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"PlaylistItemContentDetails\",\n - \ \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"PlaylistItem\"\n },\n - \ \"VideoCategoryListResponse\": {\n \"id\": \"VideoCategoryListResponse\",\n - \ \"properties\": {\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoCategoryListResponse\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"description\": \"A list of video categories - that can be associated with YouTube videos. In this map, the video category - ID is the map key, and its value is the corresponding videoCategory resource.\",\n - \ \"items\": {\n \"$ref\": \"VideoCategory\"\n },\n - \ \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"CommentThreadListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"kind\": {\n \"default\": - \"youtube#commentThreadListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n },\n - \ \"items\": {\n \"description\": \"A list of comment threads - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"CommentThread\"\n },\n \"type\": \"array\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ }\n },\n \"id\": \"CommentThreadListResponse\",\n \"type\": - \"object\"\n },\n \"InvideoPosition\": {\n \"properties\": {\n - \ \"cornerPosition\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\"\n - \ },\n \"type\": {\n \"enum\": [\n \"corner\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\"\n ],\n \"description\": \"Defines the - position type.\"\n }\n },\n \"description\": \"Describes - the spatial position of a visual widget inside a video. It is a union of various - position types, out of which only will be set one.\",\n \"id\": \"InvideoPosition\",\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastContentDetails\": {\n - \ \"description\": \"Detailed settings of a broadcast.\",\n \"type\": - \"object\",\n \"id\": \"LiveBroadcastContentDetails\",\n \"properties\": - {\n \"stereoLayout\": {\n \"description\": \"The 3D stereo - layout of this broadcast. This defaults to mono.\",\n \"enum\": [\n - \ \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"startWithSlate\": - {\n \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n },\n \"projection\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ]\n },\n \"enableEmbed\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast video can be played in an embedded player. - If you choose to archive the video (using the enableArchive property), this - setting will also apply to the archived video.\"\n },\n \"mesh\": - {\n \"format\": \"byte\",\n \"type\": \"string\",\n \"description\": - \"The mesh for projecting the video if projection is mesh. The mesh value - must be a UTF-8 string containing the base-64 encoding of 3D mesh data that - follows the Spherical Video V2 RFC specification for an mshp box, excluding - the box size and type but including the following four reserved zero bytes - for the version and flags.\"\n },\n \"enableContentEncryption\": - {\n \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n - \ },\n \"enableAutoStart\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether auto start is - enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\"\n },\n \"enableAutoStop\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto stop is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"enableLowLatency\": {\n \"description\": \"Indicates whether - this broadcast has low latency enabled.\",\n \"type\": \"boolean\"\n - \ },\n \"monitorStream\": {\n \"$ref\": \"MonitorStreamInfo\",\n - \ \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\"\n },\n \"enableDvr\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - determines whether viewers can access DVR controls while watching the video. - DVR controls enable the viewer to control the video playback experience by - pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\"\n },\n \"latencyPreference\": - {\n \"type\": \"string\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"description\": \"If both this and - enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\"\n },\n \"boundStreamId\": - {\n \"description\": \"This value uniquely identifies the live stream - bound to the broadcast.\",\n \"type\": \"string\"\n },\n \"enableClosedCaptions\": - {\n \"description\": \"This setting indicates whether HTTP POST closed - captioning is enabled for this broadcast. The ingestion URL of the closed - captions is returned through the liveStreams API. This is mutually exclusive - with using the closed_captions_type property, and is equivalent to setting - closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n \"type\": - \"boolean\"\n },\n \"recordFromStart\": {\n \"type\": - \"boolean\",\n \"description\": \"Automatically start recording after - the event goes live. The default value for this property is true. *Important:* - You must also set the enableDvr property's value to true if you want the playback - to be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\"\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"description\": - \"The date and time that the live stream referenced by boundStreamId was last - updated.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"closedCaptionsType\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n }\n },\n - \ \"VideoFileDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"videoStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n },\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\",\n \"type\": - \"array\"\n },\n \"bitrateBps\": {\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"container\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded video file's container format.\"\n },\n \"audioStreams\": - {\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"description\": \"A list of audio streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about an audio stream.\",\n \"type\": \"array\"\n },\n \"fileType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"Known - video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an - MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"description\": \"The uploaded - file's type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\"\n },\n \"creationTime\": - {\n \"description\": \"The date and time when the uploaded video - file was created. The value is specified in ISO 8601 format. Currently, the - following ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive - time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \",\n \"type\": \"string\"\n },\n \"fileName\": {\n - \ \"description\": \"The uploaded file's name. This field is present - whether a video file or another type of file was uploaded.\",\n \"type\": - \"string\"\n },\n \"durationMs\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The length of the uploaded video in milliseconds.\",\n - \ \"type\": \"string\"\n },\n \"fileSize\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded file's size in bytes. - This field is present whether a video file or another type of file was uploaded.\",\n - \ \"format\": \"uint64\"\n }\n },\n \"id\": \"VideoFileDetails\",\n - \ \"description\": \"Describes original video file properties, including - technical details about audio and video streams, but also metadata information - like content length, digitization time, or geotagging information.\"\n },\n - \ \"LiveStreamSnippet\": {\n \"id\": \"LiveStreamSnippet\",\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The stream's - title. The value must be between 1 and 128 characters long.\"\n },\n - \ \"isDefaultStream\": {\n \"type\": \"boolean\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the stream - was created.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The stream's description. The value - cannot be longer than 10000 characters.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is transmitting the stream.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ActivityContentDetailsSocial\": {\n \"properties\": - {\n \"type\": {\n \"type\": \"string\",\n \"description\": - \"The name of the social network.\",\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object encapsulates information that identifies the resource associated with - a social network post.\"\n },\n \"referenceUrl\": {\n \"description\": - \"The URL of the social network post.\",\n \"type\": \"string\"\n - \ },\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"An image of the post's author.\"\n },\n \"author\": {\n \"description\": - \"The author of the social network post.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Details about a social network - post.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsSocial\"\n - \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"banDurationSeconds\": - {\n \"format\": \"uint64\",\n \"description\": \"The duration - of the ban. This property is only present if the banType is temporary.\",\n - \ \"type\": \"string\"\n },\n \"banType\": {\n \"description\": - \"The type of ban.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"permanent\",\n \"temporary\"\n ]\n },\n - \ \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"The details of the user that was banned.\"\n - \ }\n }\n },\n \"ActivityContentDetailsComment\": {\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource associated with the comment.\"\n - \ }\n },\n \"description\": \"Information about a resource - that received a comment.\",\n \"id\": \"ActivityContentDetailsComment\"\n - \ },\n \"ResourceId\": {\n \"properties\": {\n \"kind\": - {\n \"description\": \"The type of the API resource.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\",\n \"type\": \"string\"\n },\n - \ \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"A resource id is a generic - reference that points to another YouTube resource.\",\n \"id\": \"ResourceId\"\n - \ },\n \"CommentListResponse\": {\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"default\": \"youtube#commentListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of comments that match the request criteria.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": - \"CommentListResponse\",\n \"type\": \"object\"\n },\n \"ChannelConversionPing\": - {\n \"properties\": {\n \"conversionUrl\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"context\": {\n \"enum\": - [\n \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"Defines the context of the ping.\"\n }\n - \ },\n \"id\": \"ChannelConversionPing\",\n \"description\": - \"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.\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"id\": \"ActivityContentDetailsRecommendation\",\n \"type\": - \"object\",\n \"properties\": {\n \"reason\": {\n \"enum\": - [\n \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that the resource is recommended to the user.\"\n },\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\"\n },\n \"seedResourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The seedResourceId object contains - information about the resource that caused the recommendation.\"\n }\n - \ },\n \"description\": \"Information that identifies the recommended - resource.\"\n },\n \"ChannelSectionLocalization\": {\n \"id\": - \"ChannelSectionLocalization\",\n \"description\": \"ChannelSection localization - setting\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel - section's title.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"Comment\": {\n \"description\": \"A *comment* represents a single - YouTube comment.\",\n \"type\": \"object\",\n \"id\": \"Comment\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"$ref\": \"CommentSnippet\",\n \"description\": \"The - snippet object contains basic details about the comment.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#comment\\\".\",\n \"default\": - \"youtube#comment\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveBroadcastStatistics\": {\n \"description\": \"Statistics - about the live broadcast. These represent a snapshot of the values at the - time of the request. Statistics are only returned for live broadcasts.\",\n - \ \"id\": \"LiveBroadcastStatistics\",\n \"properties\": {\n \"totalChatCount\": - {\n \"type\": \"string\",\n \"description\": \"The total - number of live chat messages currently on the broadcast. The property and - its value will be present if the broadcast is public, has the live chat feature - enabled, and has at least one message. Note that this field will not be filled - after the broadcast ends. So this property would not identify the number of - chat messages for an archived video of a completed live broadcast.\",\n \"format\": - \"uint64\"\n },\n \"concurrentViewers\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"type\": \"object\",\n \"description\": \"Information about - a video that was marked as a favorite video.\",\n \"id\": \"ActivityContentDetailsFavorite\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"ChannelSectionContentDetails\": {\n \"type\": - \"object\",\n \"description\": \"Details about a channelsection, including - playlists and channels.\",\n \"id\": \"ChannelSectionContentDetails\",\n - \ \"properties\": {\n \"playlists\": {\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"channels\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The channel ids - for type multiple_channels.\"\n }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"description\": \"Information about a new playlist item.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information about the resource that was added to the playlist.\",\n - \ \"$ref\": \"ResourceId\"\n },\n \"playlistId\": {\n - \ \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n },\n \"playlistItemId\": - {\n \"description\": \"ID of the item within the playlist.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"type\": \"object\"\n },\n \"MembershipsDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"highestAccessibleLevel\": - {\n \"description\": \"Id of the highest level that the user has - access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"accessibleLevels\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\"\n - \ },\n \"membershipsDuration\": {\n \"description\": - \"Data about memberships duration without taking into consideration pricing - levels.\",\n \"$ref\": \"MembershipsDuration\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n },\n - \ \"membershipsDurationAtLevels\": {\n \"items\": {\n \"$ref\": - \"MembershipsDurationAtLevel\"\n },\n \"type\": \"array\",\n - \ \"description\": \"Data about memberships duration on particular - pricing levels.\"\n }\n },\n \"id\": \"MembershipsDetails\"\n - \ },\n \"LiveStreamConfigurationIssue\": {\n \"id\": \"LiveStreamConfigurationIssue\",\n - \ \"properties\": {\n \"description\": {\n \"description\": - \"The long-form description of the issue and how to resolve it.\",\n \"type\": - \"string\"\n },\n \"reason\": {\n \"type\": \"string\",\n - \ \"description\": \"The short-form reason for this issue.\"\n },\n - \ \"severity\": {\n \"description\": \"How severe this issue - is to the stream.\",\n \"type\": \"string\",\n \"enum\": - [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"type\": {\n \"description\": - \"The kind of error happening.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ]\n }\n - \ },\n \"type\": \"object\"\n },\n \"I18nLanguageSnippet\": - {\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the language in the - language itself.\"\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"A short BCP-47 code that uniquely identifies - a language.\"\n }\n },\n \"description\": \"Basic details - about an i18n language, such as language code and human-readable name.\",\n - \ \"type\": \"object\",\n \"id\": \"I18nLanguageSnippet\"\n },\n - \ \"SubscriptionContentDetails\": {\n \"description\": \"Details about - the content to witch a subscription refers.\",\n \"id\": \"SubscriptionContentDetails\",\n - \ \"properties\": {\n \"newItemCount\": {\n \"description\": - \"The number of new items in the subscription since its content was last read.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"activityType\": {\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"type\": - \"string\",\n \"description\": \"The type of activity this subscription - is for (only uploads, everything).\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"totalItemCount\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The approximate number of items - that the subscription points to.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveStreamStatus\": {\n \"properties\": {\n \"streamStatus\": - {\n \"enum\": [\n \"created\",\n \"ready\",\n - \ \"active\",\n \"inactive\",\n \"error\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"healthStatus\": {\n \"$ref\": \"LiveStreamHealthStatus\",\n - \ \"description\": \"The health status of the stream.\"\n }\n - \ },\n \"description\": \"Brief description of the live stream status.\",\n - \ \"id\": \"LiveStreamStatus\",\n \"type\": \"object\"\n },\n - \ \"Channel\": {\n \"type\": \"object\",\n \"description\": \"A - *channel* resource contains information about a YouTube channel.\",\n \"id\": - \"Channel\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#channel\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n \"type\": - \"string\"\n },\n \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n - \ \"description\": \"The statistics object encapsulates statistics - for the channel.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel.\"\n },\n \"conversionPings\": {\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n - \ },\n \"brandingSettings\": {\n \"$ref\": \"ChannelBrandingSettings\",\n - \ \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\"\n },\n \"contentOwnerDetails\": - {\n \"description\": \"The contentOwnerDetails object encapsulates - channel data that is relevant for YouTube Partners linked with the channel.\",\n - \ \"$ref\": \"ChannelContentOwnerDetails\"\n },\n \"auditDetails\": - {\n \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\",\n - \ \"$ref\": \"ChannelAuditDetails\"\n },\n \"status\": - {\n \"description\": \"The status object encapsulates information - about the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n - \ },\n \"topicDetails\": {\n \"$ref\": \"ChannelTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"localizations\": {\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n - \ }\n },\n \"contentDetails\": {\n \"$ref\": - \"ChannelContentDetails\",\n \"description\": \"The contentDetails - object encapsulates information about the channel's content.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the channel, such as its title, description, and thumbnail - images.\",\n \"$ref\": \"ChannelSnippet\"\n }\n }\n },\n - \ \"ChannelBrandingSettings\": {\n \"type\": \"object\",\n \"id\": - \"ChannelBrandingSettings\",\n \"properties\": {\n \"channel\": - {\n \"description\": \"Branding properties for the channel view.\",\n - \ \"$ref\": \"ChannelSettings\"\n },\n \"image\": {\n - \ \"$ref\": \"ImageSettings\",\n \"description\": \"Branding - properties for branding images.\"\n },\n \"watch\": {\n \"$ref\": - \"WatchSettings\",\n \"description\": \"Branding properties for the - watch page.\"\n },\n \"hints\": {\n \"description\": - \"Additional experimental branding properties.\",\n \"items\": {\n - \ \"$ref\": \"PropertyValue\"\n },\n \"type\": - \"array\"\n }\n },\n \"description\": \"Branding properties - of a YouTube channel.\"\n },\n \"ThumbnailDetails\": {\n \"id\": - \"ThumbnailDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"standard\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The standard quality image for this resource.\"\n },\n \"maxres\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The maximum - resolution quality image for this resource.\"\n },\n \"medium\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The medium - quality image for this resource.\"\n },\n \"default\": {\n \"description\": - \"The default image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"high\": {\n \"description\": \"The high quality - image for this resource.\",\n \"$ref\": \"Thumbnail\"\n }\n - \ },\n \"description\": \"Internal representation of thumbnails for - a YouTube resource.\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"properties\": - {\n \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the member to this Member Milestone Chat. This field - is empty for messages without a comment from the member.\"\n },\n \"memberMonth\": - {\n \"description\": \"The total amount of months (rounded up) the - viewer has been a member that granted them this Member Milestone Chat. This - is the same number of months as is being displayed to YouTube users.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"memberLevelName\": {\n \"description\": \"The name of the - Level at which the viever is a member. The Level names are defined by the - YouTube channel offering the Membership. In some situations this field isn't - filled.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"AbuseType\": {\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"AbuseType\"\n },\n \"ChannelConversionPings\": {\n \"properties\": - {\n \"pings\": {\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ },\n \"description\": \"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.\",\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"ChannelConversionPings\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"type\": \"object\"\n - \ },\n \"LiveStreamHealthStatus\": {\n \"id\": \"LiveStreamHealthStatus\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"configurationIssues\": - {\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"type\": \"array\",\n \"description\": \"The - configurations issues on this stream\"\n },\n \"status\": {\n - \ \"description\": \"The status code of this stream\",\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"lastUpdateTimeSeconds\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The last time - this status was updated (in seconds)\"\n }\n }\n },\n \"MembershipsDurationAtLevel\": - {\n \"id\": \"MembershipsDurationAtLevel\",\n \"properties\": {\n - \ \"level\": {\n \"type\": \"string\",\n \"description\": - \"Pricing level ID.\"\n },\n \"memberSince\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the user - became a continuous member for the given level.\"\n },\n \"memberTotalDurationMonths\": - {\n \"format\": \"int32\",\n \"type\": \"integer\",\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"Subscription\": {\n \"type\": - \"object\",\n \"description\": \"A *subscription* resource contains information - about a YouTube user subscription. A subscription notifies a user when new - videos are added to a channel or when another user takes one of several actions - on YouTube, such as uploading a video, rating a video, or commenting on a - video.\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#subscription\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"SubscriptionContentDetails\",\n \"description\": \"The contentDetails - object contains basic statistics about the subscription.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the subscription.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the subscription, including its title and the channel that the user - subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n },\n - \ \"subscriberSnippet\": {\n \"description\": \"The subscriberSnippet - object contains basic details about the subscriber.\",\n \"$ref\": - \"SubscriptionSubscriberSnippet\"\n }\n },\n \"id\": \"Subscription\"\n - \ },\n \"GeoPoint\": {\n \"type\": \"object\",\n \"description\": - \"Geographical coordinates of a point, in WGS84.\",\n \"id\": \"GeoPoint\",\n - \ \"properties\": {\n \"altitude\": {\n \"type\": \"number\",\n - \ \"description\": \"Altitude above the reference ellipsoid, in meters.\",\n - \ \"format\": \"double\"\n },\n \"longitude\": {\n \"type\": - \"number\",\n \"description\": \"Longitude in degrees.\",\n \"format\": - \"double\"\n },\n \"latitude\": {\n \"format\": \"double\",\n - \ \"type\": \"number\",\n \"description\": \"Latitude in - degrees.\"\n }\n }\n },\n \"VideoRating\": {\n \"type\": - \"object\",\n \"description\": \"Basic details about rating of a video.\",\n - \ \"id\": \"VideoRating\",\n \"properties\": {\n \"rating\": - {\n \"description\": \"Rating of a video.\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n }\n }\n },\n \"LiveBroadcastSnippet\": {\n - \ \"properties\": {\n \"publishedAt\": {\n \"description\": - \"The date and time that the broadcast was added to YouTube's live broadcast - schedule.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\",\n - \ \"type\": \"string\"\n },\n \"isDefaultBroadcast\": - {\n \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\",\n \"type\": \"boolean\"\n },\n - \ \"scheduledEndTime\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - is scheduled to end.\"\n },\n \"actualStartTime\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast actually started. This information - is only available once the broadcast's state is live.\"\n },\n \"actualEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the broadcast. For each nested object in this object, the - key is the name of the thumbnail image, and the value is an object that contains - other information about the thumbnail.\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the live chat for this broadcast.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's title. Note that the broadcast - represents exactly one YouTube video. You can set this field by modifying - the broadcast resource or by setting the title field of the corresponding - video resource.\"\n },\n \"scheduledStartTime\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast is scheduled to start.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ }\n },\n \"description\": \"Basic broadcast information.\",\n - \ \"id\": \"LiveBroadcastSnippet\",\n \"type\": \"object\"\n },\n - \ \"PlaylistItemSnippet\": {\n \"properties\": {\n \"position\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\"\n },\n \"resourceId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"$ref\": \"ResourceId\",\n \"description\": \"The id object - contains information that can be used to uniquely identify the resource that - is included in the playlist as the playlist item.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the user that added the item to the playlist.\"\n - \ },\n \"playlistId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify thGe playlist that the playlist item - is in.\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the item - was added to the playlist.\",\n \"type\": \"string\"\n },\n - \ \"videoOwnerChannelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel this video belongs to.\"\n },\n \"videoOwnerChannelId\": - {\n \"description\": \"Channel id for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the playlist item. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The item's description.\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - item's title.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"PlaylistItemSnippet\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails. - Basic details of a YouTube Playlist item provided by the author. Next ID: - 15\"\n },\n \"ActivityListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivityListResponse\",\n \"properties\": {\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Activity\"\n },\n \"type\": \"array\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#activityListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n }\n },\n \"ChannelStatus\": {\n \"id\": \"ChannelStatus\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"description\": \"Privacy status of the channel.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n },\n - \ \"longUploadsStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"type\": \"string\",\n \"enum\": - [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ]\n },\n \"isLinked\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n }\n },\n \"description\": - \"JSON template for the status part of a channel.\"\n },\n \"LiveChatBan\": - {\n \"type\": \"object\",\n \"description\": \"A `__liveChatBan__` - resource represents a ban for a YouTube live chat.\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"default\": - \"youtube#liveChatBan\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the ban.\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the ban.\",\n \"$ref\": - \"LiveChatBanSnippet\"\n }\n },\n \"id\": \"LiveChatBan\"\n - \ },\n \"WatchSettings\": {\n \"id\": \"WatchSettings\",\n \"type\": - \"object\",\n \"properties\": {\n \"textColor\": {\n \"type\": - \"string\",\n \"description\": \"The background color for the video - watch page's branded area.\"\n },\n \"featuredPlaylistId\": - {\n \"description\": \"An ID that uniquely identifies a playlist - that displays next to the video player.\",\n \"type\": \"string\"\n - \ },\n \"backgroundColor\": {\n \"type\": \"string\",\n - \ \"description\": \"The text color for the video watch page's branded - area.\"\n }\n },\n \"description\": \"Branding properties - for the watch. All deprecated.\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"id\": \"LiveChatMembershipGiftingDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"giftMembershipsLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the level of the gift - memberships purchased by the user. The Level names are defined by the YouTube - channel offering the Membership. In some situations this field isn't filled.\"\n - \ },\n \"giftMembershipsCount\": {\n \"description\": - \"The number of gift memberships purchased by the user.\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n }\n }\n },\n - \ \"Entity\": {\n \"properties\": {\n \"typeId\": {\n \"type\": - \"string\"\n },\n \"url\": {\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"Entity\"\n },\n - \ \"ThirdPartyLinkStatus\": {\n \"description\": \"The third-party - link status object contains information about the status of the link.\",\n - \ \"properties\": {\n \"linkStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ],\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ThirdPartyLinkStatus\"\n },\n \"CommentThreadReplies\": {\n \"id\": - \"CommentThreadReplies\",\n \"properties\": {\n \"comments\": - {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"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.\",\n \"type\": - \"array\"\n }\n },\n \"description\": \"Comments written - in (direct or indirect) reply to the top level comment.\",\n \"type\": - \"object\"\n },\n \"RelatedEntity\": {\n \"properties\": {\n \"entity\": - {\n \"$ref\": \"Entity\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"RelatedEntity\"\n },\n \"ThumbnailSetResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": \"A list of - thumbnails.\",\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#thumbnailSetResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ThumbnailSetResponse\"\n - \ },\n \"LiveChatNewSponsorDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"isUpgrade\": {\n \"type\": \"boolean\",\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\"\n }\n },\n - \ \"id\": \"LiveChatNewSponsorDetails\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"type\": \"object\",\n \"properties\": {\n \"customCtaButtonText\": - {\n \"type\": \"string\",\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\"\n },\n \"clickTrackingUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user clicked through - on this promoted item.\",\n \"type\": \"string\"\n },\n \"ctaType\": - {\n \"enum\": [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of call-to-action, a message - to the user indicating action that can be taken.\",\n \"type\": \"string\"\n - \ },\n \"descriptionText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text description to accompany the promoted - item.\"\n },\n \"adTag\": {\n \"description\": \"The - URL the client should fetch to request a promoted item.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\"\n },\n \"impressionUrl\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The list of impression URLs. The client should - ping all of these URLs to indicate that the user was shown this promoted item.\"\n - \ },\n \"destinationUrl\": {\n \"description\": \"The - URL the client should direct the user to, if the user chooses to visit the - advertiser's website.\",\n \"type\": \"string\"\n },\n \"forecastingUrl\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"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.\"\n },\n - \ \"creativeViewUrl\": {\n \"type\": \"string\",\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\"\n }\n },\n \"description\": \"Details about - a resource which is being promoted.\",\n \"id\": \"ActivityContentDetailsPromotedItem\"\n - \ },\n \"VideoRecordingDetails\": {\n \"id\": \"VideoRecordingDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Recording information - associated with the video.\",\n \"properties\": {\n \"locationDescription\": - {\n \"description\": \"The text description of the location where - the video was recorded.\",\n \"type\": \"string\"\n },\n \"location\": - {\n \"description\": \"The geolocation information associated with - the video.\",\n \"$ref\": \"GeoPoint\"\n },\n \"recordingDate\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the video was recorded.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"Video\": {\n \"properties\": {\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"projectDetails\": - {\n \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"fileDetails\": - {\n \"description\": \"The fileDetails object encapsulates information - about the video file that was uploaded to YouTube, including the file's resolution, - duration, audio and video codecs, stream bitrates, and more. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n - \ },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"VideoLocalization\"\n },\n \"description\": - \"The localizations object contains localized versions of the basic details - about the video, such as its title and description.\",\n \"type\": - \"object\"\n },\n \"topicDetails\": {\n \"$ref\": \"VideoTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the video.\"\n },\n \"status\": - {\n \"$ref\": \"VideoStatus\",\n \"description\": \"The - status object contains information about the video's uploading, processing, - and privacy statuses.\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ },\n \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n - \ \"description\": \"Age restriction details related to a video. This - data can only be retrieved by the video owner.\"\n },\n \"suggestions\": - {\n \"$ref\": \"VideoSuggestions\",\n \"description\": \"The - suggestions object encapsulates suggestions that identify opportunities to - improve the video quality or the metadata for the uploaded video. This data - can only be retrieved by the video owner.\"\n },\n \"monetizationDetails\": - {\n \"description\": \"The monetizationDetails object encapsulates - information about the monetization status of the video.\",\n \"$ref\": - \"VideoMonetizationDetails\"\n },\n \"processingDetails\": {\n - \ \"$ref\": \"VideoProcessingDetails\",\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#video\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#video\\\".\",\n \"type\": \"string\"\n - \ },\n \"recordingDetails\": {\n \"description\": \"The - recordingDetails object encapsulates information about the location, date - and address where the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"player\": {\n \"description\": \"The player - object contains information that you would use to play the video in an embedded - player.\",\n \"$ref\": \"VideoPlayer\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video, such as its title, - description, and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n - \ \"statistics\": {\n \"$ref\": \"VideoStatistics\",\n \"description\": - \"The statistics object contains statistics about the video.\"\n }\n - \ },\n \"id\": \"Video\",\n \"type\": \"object\",\n \"description\": - \"A *video* resource represents a YouTube video.\"\n },\n \"ChannelAuditDetails\": - {\n \"type\": \"object\",\n \"id\": \"ChannelAuditDetails\",\n \"properties\": - {\n \"communityGuidelinesGoodStanding\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether or not the channel respects the community - guidelines.\"\n },\n \"contentIdClaimsGoodStanding\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the channel has - any unresolved claims.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n }\n },\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\"\n },\n \"SearchResultSnippet\": - {\n \"properties\": {\n \"channelId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"description\": \"The - title of the channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The creation date and time of the resource that the search result identifies.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"description\": \"The title of the search - result.\",\n \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"description\": \"It indicates if the resource (video or channel) - has upcoming/active live broadcast content. Or it's \\\"none\\\" if there - is not any upcoming/active live broadcasts.\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ]\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"A description of the search result.\"\n },\n - \ \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"SearchResultSnippet\",\n - \ \"description\": \"Basic details about a search result, including title, - description and thumbnails of the item referenced by the search result.\"\n - \ },\n \"SubscriptionSnippet\": {\n \"properties\": {\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the subscription belongs to.\"\n },\n \"title\": - {\n \"description\": \"The subscription's title.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The subscription's details.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the subscriber's channel.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the subscription was created.\"\n },\n \"resourceId\": - {\n \"description\": \"The id object contains information about the - channel that the user subscribed to.\",\n \"$ref\": \"ResourceId\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n }\n }\n },\n \"description\": \"Basic - details about a subscription, including title, description and thumbnails - of the subscribed item.\",\n \"id\": \"SubscriptionSnippet\",\n \"type\": - \"object\"\n },\n \"SubscriptionListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of subscriptions that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Subscription\"\n }\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"SubscriptionListResponse\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"label\": {\n \"description\": - \"The localized label for this abuse report secondary reason.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of this abuse report secondary reason.\"\n - \ }\n }\n },\n \"ChannelBannerResource\": {\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"url\": {\n \"description\": \"The URL of this - banner image.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ChannelBannerResource\",\n \"description\": \"A channel banner returned - as the response to a channel_banner.insert call.\"\n },\n \"Member\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the member.\",\n \"$ref\": \"MemberSnippet\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#member\"\n - \ }\n },\n \"id\": \"Member\",\n \"description\": \"A - *member* resource represents a member for a YouTube channel. A member provides - recurring monetary support to a creator and receives special benefits.\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource associated with a bulletin post. - @mutable youtube.activities.insert\"\n }\n },\n \"description\": - \"Details about a channel bulletin post.\",\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsBulletin\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageRetractedDetails\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"VideoSnippet\": {\n \"properties\": - {\n \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"localized\": {\n \"description\": \"Localized - snippet selected with the hl parameter. If no such localization exists, this - field is populated with the default snippet. (Read-only)\",\n \"$ref\": - \"VideoLocalization\"\n },\n \"title\": {\n \"description\": - \"The video's title. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"type\": \"string\"\n },\n \"tags\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of keyword tags associated with the video. - Tags may contain spaces.\",\n \"type\": \"array\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the videos's default snippet.\",\n - \ \"type\": \"string\"\n },\n \"categoryId\": {\n \"description\": - \"The YouTube video category associated with the video.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the video - was uploaded.\",\n \"type\": \"string\"\n },\n \"defaultAudioLanguage\": - {\n \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the video - belongs to.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The video's description. @mutable - youtube.videos.insert youtube.videos.update\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that the video was uploaded - to.\"\n }\n },\n \"description\": \"Basic details about a - video, including title, description, uploader, thumbnails and category.\",\n - \ \"id\": \"VideoSnippet\",\n \"type\": \"object\"\n },\n \"LiveBroadcast\": - {\n \"properties\": {\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the event, including its title, description, start time, - and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - contains info about the event's current stats. These include concurrent viewers - and total chat count. Statistics can change (in either direction) during the - lifetime of an event. Statistics are only returned while the event is live.\",\n - \ \"$ref\": \"LiveBroadcastStatistics\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the broadcast.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"status\": {\n \"description\": - \"The status object contains information about the event's status.\",\n \"$ref\": - \"LiveBroadcastStatus\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveBroadcast\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A *liveBroadcast* resource represents an event that will be streamed, via - live video, on YouTube.\",\n \"id\": \"LiveBroadcast\",\n \"type\": - \"object\"\n },\n \"ChannelSettings\": {\n \"description\": \"Branding - properties for the channel view.\",\n \"id\": \"ChannelSettings\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the channel description.\"\n },\n \"keywords\": {\n \"type\": - \"string\",\n \"description\": \"Lists keywords associated with the - channel, comma-separated.\"\n },\n \"showBrowseView\": {\n \"description\": - \"Whether the tab to browse the videos should be displayed.\",\n \"type\": - \"boolean\"\n },\n \"moderateComments\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether user-submitted comments - left on the channel page need to be approved by the channel owner to be publicly - visible.\"\n },\n \"title\": {\n \"description\": \"Specifies - the channel title.\",\n \"type\": \"string\"\n },\n \"country\": - {\n \"description\": \"The country of the channel.\",\n \"type\": - \"string\"\n },\n \"featuredChannelsUrls\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The list of featured channels.\"\n },\n - \ \"featuredChannelsTitle\": {\n \"description\": \"Title for - the featured channels tab.\",\n \"type\": \"string\"\n },\n - \ \"defaultTab\": {\n \"description\": \"Which content tab - users should see when viewing the channel.\",\n \"type\": \"string\"\n - \ },\n \"unsubscribedTrailer\": {\n \"type\": \"string\",\n - \ \"description\": \"The trailer of the channel, for users that are - not subscribers.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\"\n },\n \"profileColor\": {\n \"description\": - \"A prominent color that can be rendered on this channel page.\",\n \"type\": - \"string\"\n },\n \"trackingAnalyticsAccountId\": {\n \"description\": - \"The ID for a Google Analytics account to track and measure traffic to the - channels.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"PlaylistSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"defaultLanguage\": {\n \"description\": \"The language - of the playlist's default title and description.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the playlist was created.\",\n - \ \"format\": \"date-time\"\n },\n \"thumbnailVideoId\": - {\n \"type\": \"string\",\n \"description\": \"Note: if - the playlist has a custom thumbnail, this field will not be populated. The - video id selected by the user that will be used as the thumbnail of this playlist. - This field defaults to the first publicly viewable video in the playlist, - if: 1. The user has never selected a video to be the thumbnail of the playlist. - 2. The user selects a video to be the thumbnail, and then removes that video - from the playlist. 3. The user selects a non-owned video to be the thumbnail, - but that video becomes private, or gets deleted.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the playlist.\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The playlist's description.\"\n },\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The playlist's - title.\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"tags\": {\n \"type\": \"array\",\n \"description\": - \"Keyword tags associated with the playlist.\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"The channel - title of the channel that the video belongs to.\"\n }\n },\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails.\",\n - \ \"id\": \"PlaylistSnippet\"\n },\n \"VideoTopicDetails\": {\n - \ \"description\": \"Freebase topic information related to the video.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"relevantTopicIds\": - {\n \"type\": \"array\",\n \"description\": \"Similar to - topic_id, except that these topics are merely relevant to the video. These - are topics that may be mentioned in, or appear in the video. You can retrieve - information about each topic using Freebase Topic API.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicIds\": - {\n \"type\": \"array\",\n \"description\": \"A list of - Freebase topic IDs that are centrally associated with the video. These are - topics that are centrally featured in the video, and it can be said that the - video is mainly about each of these. You can retrieve information about each - topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n },\n \"topicCategories\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Wikipedia URLs that provide a high-level - description of the video's content.\"\n }\n },\n \"id\": - \"VideoTopicDetails\"\n },\n \"SuperChatEventSnippet\": {\n \"properties\": - {\n \"displayString\": {\n \"description\": \"A rendered string - that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). The - string is rendered for the given language.\",\n \"type\": \"string\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\",\n \"type\": \"string\"\n - \ },\n \"createdAt\": {\n \"description\": \"The date - and time when the event occurred.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n },\n \"commentText\": {\n \"description\": - \"The text contents of the comment left by the user.\",\n \"type\": - \"string\"\n },\n \"isSuperStickerEvent\": {\n \"type\": - \"boolean\",\n \"description\": \"True if this event is a Super Sticker - event.\"\n },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"description\": \"The purchase amount, in micros of the purchase - currency. e.g., 1 is represented as 1000000.\",\n \"format\": \"uint64\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Channel id where the event occurred.\"\n },\n \"supporterDetails\": - {\n \"description\": \"Details about the supporter.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"messageType\": {\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n }\n },\n \"id\": \"SuperChatEventSnippet\",\n - \ \"type\": \"object\"\n },\n \"VideoSuggestions\": {\n \"id\": - \"VideoSuggestions\",\n \"properties\": {\n \"processingHints\": - {\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ]\n },\n \"type\": - \"array\",\n \"description\": \"A list of suggestions that may improve - YouTube's ability to process the video.\"\n },\n \"editorSuggestions\": - {\n \"type\": \"array\",\n \"description\": \"A list of - video editing operations that might improve the video quality or playback - experience of the uploaded video.\",\n \"items\": {\n \"enum\": - [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n - \ \"enumDescriptions\": [\n \"Picture brightness levels - seem off and could be corrected.\",\n \"The video appears shaky - and could be stabilized.\",\n \"Margins (mattes) detected around - the picture could be cropped.\",\n \"The audio track appears - silent and could be swapped with a better quality one.\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"processingErrors\": - {\n \"description\": \"A list of errors that will prevent YouTube - from successfully processing the uploaded video video. These errors indicate - that, regardless of the video's current processing status, eventually, that - status will almost certainly be failed.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n }\n },\n \"tagSuggestions\": {\n \"type\": - \"array\",\n \"description\": \"A list of keyword tags that could - be added to the video's metadata to increase the likelihood that users will - locate your video when searching or browsing on YouTube.\",\n \"items\": - {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n }\n - \ },\n \"processingWarnings\": {\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"enumDescriptions\": [\n \"Unrecognized file format, - transcoding is likely to fail.\",\n \"Unrecognized video codec, - transcoding is likely to fail.\",\n \"Unrecognized audio codec, - transcoding is likely to fail.\",\n \"Conflicting container and - stream resolutions.\",\n \"Edit lists are not currently supported.\",\n - \ \"Video codec that is known to cause problems was used.\",\n - \ \"Audio codec that is known to cause problems was used.\",\n - \ \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ]\n }\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Specifies suggestions on how to improve video content, - including encoding hints, tag suggestions, and editor suggestions.\"\n },\n - \ \"LiveStream\": {\n \"properties\": {\n \"cdn\": {\n \"$ref\": - \"CdnSettings\",\n \"description\": \"The cdn object defines the - live stream's content delivery network (CDN) settings. These settings provide - details about the manner in which you stream your content to YouTube.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveStreamSnippet\",\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the stream.\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"$ref\": \"LiveStreamStatus\",\n \"description\": \"The - status object contains information about live stream's status.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStream\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - content_details object contains information about the stream, including the - closed captions ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveStream\",\n - \ \"description\": \"A live stream describes a live ingestion point.\"\n - \ },\n \"ChannelSectionTargeting\": {\n \"properties\": {\n \"languages\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The language - the channel section is targeting.\"\n },\n \"regions\": {\n - \ \"description\": \"The region the channel section is targeting.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"countries\": {\n \"description\": - \"The country the channel section is targeting.\",\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"ChannelSection - targeting setting.\",\n \"id\": \"ChannelSectionTargeting\"\n },\n - \ \"PlaylistLocalization\": {\n \"type\": \"object\",\n \"description\": - \"Playlist localization setting\",\n \"id\": \"PlaylistLocalization\",\n - \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for playlist's title.\"\n - \ },\n \"description\": {\n \"description\": \"The localized - strings for playlist's description.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"SearchResult\": {\n \"properties\": {\n \"id\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The id - object contains information that can be used to uniquely identify the resource - that matches the search request.\"\n },\n \"kind\": {\n \"default\": - \"youtube#searchResult\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\",\n \"$ref\": \"SearchResultSnippet\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A search result - contains information about a YouTube video, channel, or playlist that matches - the search parameters specified in an API request. While a search result points - to a uniquely identifiable resource, like a video, it does not have its own - persistent data.\",\n \"id\": \"SearchResult\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"amountMicros\": - {\n \"format\": \"uint64\",\n \"description\": \"The amount - of the fund.\",\n \"type\": \"string\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the user to this fan funding event.\"\n },\n \"currency\": - {\n \"description\": \"The currency in which the fund was made.\",\n - \ \"type\": \"string\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatFanFundingEventDetails\"\n },\n \"SuperChatEvent\": - {\n \"id\": \"SuperChatEvent\",\n \"description\": \"A `__superChatEvent__` - resource represents a Super Chat purchase on a YouTube channel.\",\n \"type\": - \"object\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the Super Chat event.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#superChatEvent\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n - \ },\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n }\n }\n },\n \"VideoListResponse\": - {\n \"id\": \"VideoListResponse\",\n \"properties\": {\n \"items\": - {\n \"items\": {\n \"$ref\": \"Video\"\n },\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LocalizedProperty\": - {\n \"id\": \"LocalizedProperty\",\n \"properties\": {\n \"localized\": - {\n \"items\": {\n \"$ref\": \"LocalizedString\"\n },\n - \ \"type\": \"array\"\n },\n \"default\": {\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the default property.\",\n \"$ref\": \"LanguageTag\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoLiveStreamingDetails\": - {\n \"properties\": {\n \"activeLiveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the currently active live - chat attached to this video. This field is filled only if the video is a currently - live broadcast that has live chat. Once the broadcast transitions to complete - this field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\"\n },\n \"actualStartTime\": - {\n \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"scheduledEndTime\": - {\n \"type\": \"string\",\n \"description\": \"The time - that the broadcast is scheduled to end. If the value is empty or the property - is not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"format\": \"date-time\"\n },\n \"concurrentViewers\": - {\n \"type\": \"string\",\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"format\": \"uint64\"\n - \ },\n \"actualEndTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast actually ended. This - value will not be available until the broadcast is over.\",\n \"format\": - \"date-time\"\n },\n \"scheduledStartTime\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The time that the broadcast is scheduled to begin.\"\n }\n },\n - \ \"id\": \"VideoLiveStreamingDetails\",\n \"type\": \"object\",\n - \ \"description\": \"Details about the live streaming metadata.\"\n },\n - \ \"LiveChatBanSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The chat this ban is pertinent to.\"\n },\n \"type\": {\n - \ \"enum\": [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"description\": \"The - type of ban.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ]\n },\n \"banDurationSeconds\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n }\n - \ },\n \"id\": \"LiveChatBanSnippet\"\n },\n \"VideoAbuseReport\": - {\n \"type\": \"object\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n },\n \"secondaryReasonId\": - {\n \"type\": \"string\",\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\"\n },\n \"reasonId\": {\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\",\n \"type\": \"string\"\n },\n - \ \"language\": {\n \"type\": \"string\",\n \"description\": - \"The language that the content was viewed in.\"\n },\n \"comments\": - {\n \"description\": \"Additional comments regarding the abuse report.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoAbuseReport\"\n - \ },\n \"LanguageTag\": {\n \"type\": \"object\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LanguageTag\"\n },\n \"ChannelLocalization\": {\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel's title.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel's description.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelLocalization\",\n \"description\": - \"Channel localization setting\"\n },\n \"TestItemTestItemSnippet\": - {\n \"properties\": {},\n \"type\": \"object\",\n \"id\": \"TestItemTestItemSnippet\"\n - \ },\n \"LiveBroadcastListResponse\": {\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"default\": \"youtube#liveBroadcastListResponse\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of broadcasts that match the - request criteria.\"\n }\n },\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"type\": \"object\"\n },\n \"ChannelSectionListResponse\": {\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - ChannelSections that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"ChannelSection\"\n }\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelSectionListResponse\"\n - \ },\n \"VideoContentDetailsRegionRestriction\": {\n \"description\": - \"DEPRECATED Region restriction of the video.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"allowed\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"blocked\": {\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"id\": \"VideoContentDetailsRegionRestriction\"\n - \ },\n \"LiveChatMessageAuthorDetails\": {\n \"id\": \"LiveChatMessageAuthorDetails\",\n - \ \"properties\": {\n \"isChatOwner\": {\n \"description\": - \"Whether the author is the owner of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The channel's display name.\"\n },\n \"isChatSponsor\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether the - author is a sponsor of the live chat.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n },\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"isChatModerator\": - {\n \"description\": \"Whether the author is a moderator of the live - chat.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": - \"object\"\n },\n \"AbuseReport\": {\n \"properties\": {\n \"subject\": - {\n \"$ref\": \"Entity\"\n },\n \"description\": {\n - \ \"type\": \"string\"\n },\n \"abuseTypes\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"AbuseType\"\n - \ }\n },\n \"relatedEntities\": {\n \"items\": - {\n \"$ref\": \"RelatedEntity\"\n },\n \"type\": - \"array\"\n }\n },\n \"id\": \"AbuseReport\",\n \"type\": - \"object\"\n },\n \"VideoPlayer\": {\n \"properties\": {\n \"embedHeight\": - {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n - \ \"embedWidth\": {\n \"description\": \"The embed width\",\n - \ \"format\": \"int64\",\n \"type\": \"string\"\n },\n - \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\"\n - \ }\n },\n \"description\": \"Player to be used for a video - playback.\",\n \"id\": \"VideoPlayer\",\n \"type\": \"object\"\n - \ },\n \"SearchListResponse\": {\n \"id\": \"SearchListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#searchListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"regionCode\": {\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"SearchResult\"\n },\n \"description\": - \"Pagination information for token pagination.\",\n \"type\": \"array\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n }\n },\n \"LiveChatMessage\": {\n \"description\": - \"A *liveChatMessage* resource represents a chat message in a YouTube Live - Chat.\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"LiveChatMessageSnippet\",\n \"description\": \"The snippet object - contains basic details about the message.\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the message.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"authorDetails\": {\n \"description\": - \"The authorDetails object contains basic details about the user that posted - this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatMessage\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatMessage\"\n - \ },\n \"ChannelProfileDetails\": {\n \"id\": \"ChannelProfileDetails\",\n - \ \"properties\": {\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"channelUrl\": {\n \"description\": \"The channel's URL.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube channel ID.\"\n },\n - \ \"displayName\": {\n \"description\": \"The channel's display - name.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"SuperChatEventListResponse\": {\n \"type\": - \"object\",\n \"id\": \"SuperChatEventListResponse\",\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of Super Chat purchases that - match the request criteria.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#superChatEventListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n }\n }\n },\n \"MonitorStreamInfo\": {\n \"type\": - \"object\",\n \"description\": \"Settings and Info of the monitor stream\",\n - \ \"properties\": {\n \"enableMonitorStream\": {\n \"description\": - \"This value determines whether the monitor stream is enabled for the broadcast. - If the monitor stream is enabled, then YouTube will broadcast the event content - on a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"boolean\"\n },\n - \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\"\n },\n - \ \"broadcastStreamDelayMs\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"If you have set the enableMonitorStream property - to true, then this property determines the length of the live broadcast delay.\"\n - \ }\n },\n \"id\": \"MonitorStreamInfo\"\n },\n \"ChannelListResponse\": - {\n \"id\": \"ChannelListResponse\",\n \"properties\": {\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Channel\"\n }\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"default\": \"youtube#channelListResponse\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n }\n },\n \"type\": \"object\"\n },\n \"LevelDetails\": - {\n \"id\": \"LevelDetails\",\n \"properties\": {\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - that should be used when referring to this level.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"AccessPolicy\": {\n \"properties\": - {\n \"exception\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of region codes - that identify countries where the default policy do not apply.\",\n \"type\": - \"array\"\n },\n \"allowed\": {\n \"description\": - \"The value of allowed indicates whether the access to the policy is allowed - or denied by default.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"id\": \"AccessPolicy\",\n \"description\": \"Rights management - policy for YouTube resources.\",\n \"type\": \"object\"\n },\n \"VideoCategorySnippet\": - {\n \"id\": \"VideoCategorySnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\",\n \"properties\": {\n \"title\": {\n \"description\": - \"The video category's title.\",\n \"type\": \"string\"\n },\n - \ \"assignable\": {\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n - \ \"description\": \"The YouTube channel that created the video category.\"\n - \ }\n }\n },\n \"MembershipsLevelListResponse\": {\n \"id\": - \"MembershipsLevelListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"description\": \"A list of pricing levels - offered by a creator to the fans.\",\n \"items\": {\n \"$ref\": - \"MembershipsLevel\"\n },\n \"type\": \"array\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevelListResponse\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"PlaylistItemStatus\": - {\n \"description\": \"Information about the playlist item's privacy - status.\",\n \"type\": \"object\",\n \"properties\": {\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"This resource's privacy status.\"\n }\n - \ },\n \"id\": \"PlaylistItemStatus\"\n },\n \"MembershipsLevelSnippet\": - {\n \"id\": \"MembershipsLevelSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n },\n \"levelDetails\": {\n \"$ref\": \"LevelDetails\",\n - \ \"description\": \"Details about the pricing level.\"\n }\n - \ }\n },\n \"CaptionSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"CaptionSnippet\",\n \"description\": \"Basic details - about a caption track, such as its language and name.\",\n \"properties\": - {\n \"lastUpdated\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time when the caption - track was last updated.\"\n },\n \"isLarge\": {\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\",\n \"type\": \"boolean\"\n },\n - \ \"trackKind\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The caption track's type.\",\n \"enum\": [\n \"standard\",\n - \ \"ASR\",\n \"forced\"\n ],\n \"type\": - \"string\"\n },\n \"isEasyReader\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n },\n \"failureReason\": - {\n \"type\": \"string\",\n \"enum\": [\n \"unknownFormat\",\n - \ \"unsupportedFormat\",\n \"processingFailed\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The reason that - YouTube failed to process the caption track. This property is only present - if the state property's value is failed.\"\n },\n \"videoId\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video associated with the caption track. @mutable - youtube.captions.insert\",\n \"type\": \"string\"\n },\n \"isDraft\": - {\n \"type\": \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n },\n \"isAutoSynced\": {\n \"description\": - \"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.\",\n \"type\": \"boolean\"\n },\n \"language\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The language of - the caption track. The property value is a BCP-47 language tag.\",\n \"type\": - \"string\"\n },\n \"name\": {\n \"description\": \"The - name of the caption track. The name is intended to be visible to the user - as an option during playback.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"audioTrackType\": {\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"description\": \"The - type of audio track associated with the caption track.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"status\": - {\n \"description\": \"The caption track's status.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"serving\",\n - \ \"syncing\",\n \"failed\"\n ]\n },\n - \ \"isCC\": {\n \"description\": \"Indicates whether the track - contains closed captions for the deaf and hard of hearing. The default value - is false.\",\n \"type\": \"boolean\"\n }\n }\n },\n - \ \"I18nLanguage\": {\n \"type\": \"object\",\n \"id\": \"I18nLanguage\",\n - \ \"description\": \"An *i18nLanguage* resource identifies a UI language - currently supported by YouTube.\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the i18n language, such as language code and human-readable name.\",\n - \ \"$ref\": \"I18nLanguageSnippet\"\n },\n \"kind\": - {\n \"default\": \"youtube#i18nLanguage\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n language.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ }\n },\n \"PlaylistListResponse\": {\n \"properties\": {\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Playlist\"\n },\n \"description\": \"A list of playlists - that match the request criteria\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlistListResponse\"\n - \ }\n },\n \"id\": \"PlaylistListResponse\",\n \"type\": - \"object\"\n },\n \"PlaylistPlayer\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"PlaylistPlayer\"\n - \ },\n \"VideoStatus\": {\n \"description\": \"Basic details about - a video category, such as its localized title. Next Id: 18\",\n \"type\": - \"object\",\n \"id\": \"VideoStatus\",\n \"properties\": {\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"embeddable\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This value - indicates if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"publishAt\": {\n \"description\": - \"The date and time when the video is scheduled to publish. It can be set - only if the privacy status of the video is private..\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"uploadStatus\": - {\n \"type\": \"string\",\n \"description\": \"The status - of the uploaded video.\",\n \"enumDescriptions\": [\n \"Video - has been uploaded but not processed yet.\",\n \"Video has been - successfully processed.\",\n \"Processing has failed. See FailureReason.\",\n - \ \"Video has been rejected. See RejectionReason.\",\n \"Video - has been deleted.\"\n ],\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ]\n },\n \"license\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\",\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ]\n - \ },\n \"rejectionReason\": {\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ]\n },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's privacy - status.\"\n },\n \"failureReason\": {\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ],\n \"type\": \"string\",\n \"description\": - \"This value explains why a video failed to upload. This property is only - present if the uploadStatus property indicates that the upload failed.\",\n - \ \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ]\n }\n }\n },\n \"LiveStreamListResponse\": - {\n \"id\": \"LiveStreamListResponse\",\n \"properties\": {\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of live - streams that match the request criteria.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveStreamListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoProjectDetails\": {\n \"description\": \"DEPRECATED. - b/157517979: This part was never populated after it was added. However, it - sees non-zero traffic because there is generated client code in the wild that - refers to it [1]. We keep this field and do NOT remove it because otherwise - V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"properties\": {},\n \"id\": \"VideoProjectDetails\",\n \"type\": - \"object\"\n },\n \"Thumbnail\": {\n \"description\": \"A thumbnail - is an image representing a YouTube resource.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"width\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"(Optional) - Width of the thumbnail image.\"\n },\n \"height\": {\n \"type\": - \"integer\",\n \"description\": \"(Optional) Height of the thumbnail - image.\",\n \"format\": \"uint32\"\n },\n \"url\": - {\n \"description\": \"The thumbnail image's URL.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"Thumbnail\"\n },\n \"InvideoBranding\": - {\n \"description\": \"LINT.IfChange Describes an invideo branding.\",\n - \ \"properties\": {\n \"imageBytes\": {\n \"type\": \"string\",\n - \ \"description\": \"The bytes the uploaded image. Only used in api - to youtube communication.\",\n \"format\": \"byte\"\n },\n - \ \"targetChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel to which this branding links. If not present it defaults to - the current channel.\"\n },\n \"position\": {\n \"description\": - \"The spatial position within the video where the branding watermark will - be displayed.\",\n \"$ref\": \"InvideoPosition\"\n },\n \"imageUrl\": - {\n \"description\": \"The url of the uploaded image. Only used in - apiary to api communication.\",\n \"type\": \"string\"\n },\n - \ \"timing\": {\n \"$ref\": \"InvideoTiming\",\n \"description\": - \"The temporal position within the video where watermark will be displayed.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"InvideoBranding\"\n - \ },\n \"ChannelStatistics\": {\n \"type\": \"object\",\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\",\n \"properties\": {\n \"videoCount\": {\n \"description\": - \"The number of videos uploaded to the channel.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"hiddenSubscriberCount\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the number of subscribers is shown for this user.\"\n },\n \"viewCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of times the channel has been viewed.\",\n \"type\": \"string\"\n - \ },\n \"commentCount\": {\n \"description\": \"The - number of comments for the channel.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"subscriberCount\": {\n - \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of subscribers that the channel has.\"\n }\n },\n - \ \"id\": \"ChannelStatistics\"\n },\n \"LiveChatMessageSnippet\": - {\n \"id\": \"LiveChatMessageSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"displayMessage\": {\n \"description\": - \"Contains a string that can be displayed to the user. If this field is not - present the message is silent, at the moment only messages of type TOMBSTONE - and CHAT_ENDED_EVENT are silent.\",\n \"type\": \"string\"\n },\n - \ \"authorChannelId\": {\n \"description\": \"The ID of the - user that authored this message, this field is not always filled. textMessageEvent - - the user that wrote the message fanFundingEvent - the user that funded the - broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\",\n \"type\": \"string\"\n },\n - \ \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"memberMilestoneChatDetails\": {\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\",\n \"description\": \"Details - about the Member Milestone Chat event, this is only set if the type is 'memberMilestoneChatEvent'.\"\n - \ },\n \"fanFundingEventDetails\": {\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"giftMembershipReceivedDetails\": {\n \"description\": \"Details - about the Gift Membership Received event, this is only set if the type is - 'giftMembershipReceivedEvent'.\",\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"membershipGiftingDetails\": {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n - \ \"description\": \"Details about the Membership Gifting event, this - is only set if the type is 'membershipGiftingEvent'.\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\"\n },\n \"superStickerDetails\": {\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the message was orignally - published.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"newSponsorDetails\": {\n \"description\": \"Details - about the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. - Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n - \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"superChatDetails\": - {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"hasDisplayContent\": {\n \"description\": \"Whether - the message has display content that should be displayed to users.\",\n \"type\": - \"boolean\"\n },\n \"textMessageDetails\": {\n \"$ref\": - \"LiveChatTextMessageDetails\",\n \"description\": \"Details about - the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Next ID: 33\"\n },\n \"ActivityContentDetailsLike\": - {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the rated resource.\"\n }\n - \ },\n \"description\": \"Information about a resource that received - a positive (like) rating.\",\n \"id\": \"ActivityContentDetailsLike\"\n - \ },\n \"CdnSettings\": {\n \"properties\": {\n \"format\": - {\n \"description\": \"The format of the video stream that you are - sending to Youtube. \",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"resolution\": {\n \"description\": \"The resolution of - the inbound video data.\",\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n - \ \"description\": \"The ingestionInfo object contains information - that YouTube provides that you need to transmit your RTMP or HTTP stream to - YouTube.\"\n },\n \"frameRate\": {\n \"type\": \"string\",\n - \ \"description\": \"The frame rate of the inbound video data.\",\n - \ \"enum\": [\n \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"ingestionType\": {\n - \ \"type\": \"string\",\n \"description\": \" The method - or protocol used to transmit the video stream.\",\n \"enum\": [\n - \ \"rtmp\",\n \"dash\",\n \"webrtc\",\n \"hls\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Brief - description of the live stream cdn settings.\",\n \"id\": \"CdnSettings\"\n - \ },\n \"SubscriptionSubscriberSnippet\": {\n \"properties\": {\n - \ \"thumbnails\": {\n \"description\": \"Thumbnails for this - subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"title\": - {\n \"description\": \"The title of the subscriber.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel ID of the subscriber.\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the subscriber.\"\n }\n },\n \"id\": - \"SubscriptionSubscriberSnippet\",\n \"description\": \"Basic details - about a subscription's subscriber including title, description, channel ID - and thumbnails.\",\n \"type\": \"object\"\n },\n \"PropertyValue\": - {\n \"properties\": {\n \"property\": {\n \"description\": - \"A property.\",\n \"type\": \"string\"\n },\n \"value\": - {\n \"description\": \"The property's value.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"PropertyValue\",\n \"description\": \"A pair Property / Value.\"\n - \ },\n \"VideoAbuseReportReasonSnippet\": {\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\",\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"properties\": - {\n \"label\": {\n \"description\": \"The localized label - belonging to this abuse report reason.\",\n \"type\": \"string\"\n - \ },\n \"secondaryReasons\": {\n \"description\": \"The - secondary reasons associated with this reason, if any are available. (There - might be 0 or more.)\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n }\n - \ }\n }\n },\n \"VideoMonetizationDetails\": {\n \"description\": - \"Details about monetization of a YouTube Video.\",\n \"id\": \"VideoMonetizationDetails\",\n - \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The value of access indicates whether the video - can be monetized or not.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageDeletedDetails\": {\n \"properties\": {\n - \ \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"LiveChatModeratorSnippet\": {\n \"id\": \"LiveChatModeratorSnippet\",\n - \ \"properties\": {\n \"moderatorDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - moderator.\"\n },\n \"liveChatId\": {\n \"description\": - \"The ID of the live chat this moderator can act on.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"properties\": {\n \"frameRateFps\": {\n \"type\": - \"number\",\n \"format\": \"double\",\n \"description\": - \"The video stream's frame rate, in frames per second.\"\n },\n \"heightPixels\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's height in pixels.\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n },\n \"aspectRatio\": {\n \"format\": - \"double\",\n \"type\": \"number\",\n \"description\": \"The - video content's display aspect ratio, which specifies the aspect ratio in - which the video should be displayed.\"\n },\n \"bitrateBps\": - {\n \"type\": \"string\",\n \"description\": \"The video - stream's bitrate, in bits per second.\",\n \"format\": \"uint64\"\n - \ },\n \"codec\": {\n \"description\": \"The video codec - that the stream uses.\",\n \"type\": \"string\"\n },\n \"rotation\": - {\n \"description\": \"The amount that YouTube needs to rotate the - original source content to properly display the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ],\n \"type\": \"string\"\n },\n - \ \"widthPixels\": {\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\",\n \"type\": - \"integer\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoFileDetailsVideoStream\",\n \"description\": \"Information about - a video stream.\"\n },\n \"CommentSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"CommentSnippet\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comment refers to, if any.\"\n },\n \"authorDisplayName\": - {\n \"description\": \"The name of the user who posted the comment.\",\n - \ \"type\": \"string\"\n },\n \"authorChannelId\": {\n - \ \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"likeCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The total number of likes this comment has received.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the comment was originally - published.\"\n },\n \"textDisplay\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"viewerRating\": - {\n \"description\": \"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.\",\n \"enum\": [\n - \ \"none\",\n \"like\",\n \"dislike\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ]\n },\n \"parentId\": {\n \"type\": \"string\",\n - \ \"description\": \"The unique id of the parent comment, only set - for replies.\"\n },\n \"textOriginal\": {\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"updatedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the comment was last updated.\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"authorProfileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL for the avatar of the user - who posted the comment.\"\n },\n \"authorChannelUrl\": {\n \"description\": - \"Link to the author's YouTube channel, if any.\",\n \"type\": \"string\"\n - \ },\n \"moderationStatus\": {\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment is - unfit for display.\"\n ],\n \"type\": \"string\",\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\"\n },\n \"canRate\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the current viewer can - rate this comment.\"\n }\n },\n \"description\": \"Basic - details about a comment, such as its author and text.\"\n },\n \"PageInfo\": - {\n \"properties\": {\n \"resultsPerPage\": {\n \"format\": - \"int32\",\n \"description\": \"The number of results included in - the API response.\",\n \"type\": \"integer\"\n },\n \"totalResults\": - {\n \"type\": \"integer\",\n \"description\": \"The total - number of results in the result set.\",\n \"format\": \"int32\"\n - \ }\n },\n \"id\": \"PageInfo\",\n \"type\": \"object\",\n - \ \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\"\n },\n \"VideoProcessingDetails\": {\n \"id\": \"VideoProcessingDetails\",\n - \ \"properties\": {\n \"processingFailureReason\": {\n \"type\": - \"string\",\n \"description\": \"The reason that YouTube failed to - process the video. This property will only have a value if the processingStatus - property's value is failed.\",\n \"enum\": [\n \"uploadFailed\",\n - \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n },\n - \ \"processingProgress\": {\n \"description\": \"The processingProgress - object contains information about the progress YouTube has made in processing - the video. The values are really only relevant if the video's processing status - is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"fileDetailsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether file details are - available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\"\n },\n - \ \"processingStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's processing status. - This value indicates whether YouTube was able to process the video or if the - video is still being processed.\"\n },\n \"processingIssuesAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether the video processing engine has generated suggestions that - might improve YouTube's ability to process the the video, warnings that explain - video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\"\n },\n \"tagSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether keyword (tag) - suggestions are available for the video. Tags can be added to a video's metadata - to make it easier for other users to find the video. You can retrieve these - suggestions by requesting the suggestions part in your videos.list() request.\",\n - \ \"type\": \"string\"\n },\n \"editorSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether video editing - suggestions, which might improve video quality or the playback experience, - are available for the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Describes processing status and progress and availability of some other - Video resource parts.\"\n },\n \"VideoLocalization\": {\n \"id\": - \"VideoLocalization\",\n \"type\": \"object\",\n \"description\": - \"Localized versions of certain video properties (e.g. title).\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"Localized version of the video's description.\"\n },\n \"title\": - {\n \"description\": \"Localized version of the video's title.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"SuperStickerMetadata\": - {\n \"properties\": {\n \"stickerId\": {\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\",\n - \ \"type\": \"string\"\n },\n \"altText\": {\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\",\n \"type\": \"string\"\n },\n \"altTextLanguage\": - {\n \"description\": \"Specifies the localization language in which - the alt text is returned.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"SuperStickerMetadata\",\n \"type\": \"object\"\n - \ },\n \"MemberListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"default\": \"youtube#memberListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Member\"\n },\n \"description\": - \"A list of members that match the request criteria.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"MemberListResponse\"\n }\n },\n \"auth\": {\n \"oauth2\": - {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n }\n }\n - \ }\n },\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"canonicalName\": \"YouTube\",\n \"resources\": {\n \"playlistItems\": - {\n \"methods\": {\n \"insert\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true,\n \"description\": - \"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.\"\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.playlistItems.insert\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n }\n },\n \"list\": - {\n \"id\": \"youtube.playlistItems.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"PlaylistItemListResponse\"\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"minimum\": \"0\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"playlistId\": {\n \"description\": \"Return the - playlist items within the given playlist.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the playlist items associated with the given video ID.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"id\": \"youtube.playlistItems.delete\",\n \"path\": \"youtube/v3/playlistItems\"\n - \ },\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.update\",\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n }\n }\n }\n },\n \"liveChatMessages\": - {\n \"methods\": {\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/messages\"\n },\n - \ \"delete\": {\n \"id\": \"youtube.liveChatMessages.delete\",\n - \ \"description\": \"Deletes a chat message.\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"DELETE\",\n \"path\": - \"youtube/v3/liveChat/messages\"\n },\n \"list\": {\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.liveChatMessages.list\",\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"parameters\": {\n \"pageToken\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - liveChatComment resource parts that the API response will include. Supported - values are id and snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"liveChatId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"The id of the live chat for which comments should be returned.\",\n \"required\": - true\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"200\",\n \"format\": - \"uint32\",\n \"maximum\": \"2000\",\n \"default\": - \"500\",\n \"type\": \"integer\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"description\": - \"Specifies the localization language in which the system messages should - be returned.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"profileImageSize\": {\n \"minimum\": - \"16\",\n \"type\": \"integer\",\n \"description\": - \"Specifies the size of the profile image that should be returned for each - user.\",\n \"maximum\": \"720\",\n \"location\": - \"query\",\n \"format\": \"uint32\"\n }\n },\n - \ \"path\": \"youtube/v3/liveChat/messages\"\n }\n }\n - \ },\n \"videoCategories\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/videoCategories\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"id\": \"youtube.videoCategories.list\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"The *part* parameter - specifies the videoCategory resource properties that the API response will - include. Set the parameter value to snippet.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true\n },\n \"id\": {\n - \ \"description\": \"Returns the video categories with the given - IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"default\": \"en-US\",\n \"location\": \"query\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/videoCategories\"\n }\n - \ }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [],\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"description\": \"Updates an existing resource.\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/commentThreads\"\n }\n - \ }\n }\n }\n },\n \"liveChatBans\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"httpMethod\": \"POST\"\n },\n \"delete\": {\n \"id\": - \"youtube.liveChatBans.delete\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"description\": \"Deletes a chat ban.\",\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/liveChat/bans\"\n }\n }\n },\n - \ \"captions\": {\n \"methods\": {\n \"insert\": {\n \"path\": - \"youtube/v3/captions\",\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"supportsMediaUpload\": - true,\n \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n - \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n }\n },\n \"parameters\": - {\n \"sync\": {\n \"description\": \"Extra parameter - to allow automatically syncing the uploaded caption/transcript with the audio.\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"description\": \"The *part* parameter - specifies the caption resource parts that the API response will include. Set - the parameter value to snippet.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.captions.insert\",\n \"description\": \"Inserts a new resource - into this collection.\",\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n }\n - \ },\n \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.delete\",\n - \ \"httpMethod\": \"DELETE\"\n },\n \"download\": {\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"id\": \"youtube.captions.download\",\n \"supportsMediaDownload\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/captions/{id}\",\n \"parameters\": {\n \"tlang\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"tlang is the language code; machine translate - the captions into this language.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"path\",\n - \ \"description\": \"The ID of the caption track to download, - required for One Platform.\"\n },\n \"tfmt\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Convert the captions into this format. Supported options are sbv, srt, and - vtt.\"\n }\n },\n \"useMediaDownloadService\": - true,\n \"description\": \"Downloads a caption track.\"\n },\n - \ \"update\": {\n \"parameters\": {\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\"\n },\n \"sync\": - {\n \"type\": \"boolean\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.captions.update\",\n \"response\": {\n - \ \"$ref\": \"Caption\"\n },\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n - \ \"resumable\": {\n \"multipart\": true,\n \"path\": - \"/resumable/upload/youtube/v3/captions\"\n }\n },\n - \ \"maxSize\": \"104857600\",\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ]\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"supportsMediaUpload\": true,\n \"httpMethod\": - \"PUT\",\n \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"path\": \"youtube/v3/captions\"\n },\n \"list\": - {\n \"flatPath\": \"youtube/v3/captions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/captions\",\n \"id\": - \"youtube.captions.list\",\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"CaptionListResponse\"\n },\n \"parameterOrder\": [\n \"part\",\n - \ \"videoId\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"Returns - the captions for the specified video.\"\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\"\n },\n \"id\": {\n \"description\": - \"Returns the captions with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"parameters\": {\n \"publishedBefore\": {\n \"location\": - \"query\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"description\": \"Filter on resources published - before this date.\"\n },\n \"order\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"default\": - \"relevance\",\n \"description\": \"Sort order of the results.\",\n - \ \"enum\": [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ]\n - \ },\n \"forContentOwner\": {\n \"description\": - \"Search owned by a content owner.\",\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"videoSyndicated\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos, syndicated or not.\",\n \"Only retrieve syndicated - videos.\"\n ],\n \"description\": \"Filter on syndicated - videos.\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoDefinition\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"description\": \"Filter on the definition - of the videos.\",\n \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ]\n },\n \"relatedToVideoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Search related to a resource.\"\n },\n - \ \"topicId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Restrict results to a particular - topic.\"\n },\n \"relevanceLanguage\": {\n \"type\": - \"string\",\n \"description\": \"Return results relevant to this - language.\",\n \"location\": \"query\"\n },\n \"eventType\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"description\": \"Filter on the livestream status of the videos.\",\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n - \ },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"maximum\": - \"50\"\n },\n \"forDeveloper\": {\n \"type\": - \"boolean\",\n \"description\": \"Restrict the search to only - retrieve videos uploaded using the project id of the authenticated user.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Filter on resources belonging - to this channelId.\",\n \"type\": \"string\"\n },\n - \ \"publishedAfter\": {\n \"format\": \"google-datetime\",\n - \ \"description\": \"Filter on resources published after this - date.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"videoLicense\": {\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"description\": \"Filter on the license of the videos.\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"type\": \"string\"\n },\n \"safeSearch\": - {\n \"type\": \"string\",\n \"default\": \"moderate\",\n - \ \"description\": \"Indicates whether the search results should - include restricted content as well as standard content.\",\n \"enumDescriptions\": - [\n \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ]\n },\n \"videoDuration\": {\n \"enum\": - [\n \"videoDurationUnspecified\",\n \"any\",\n - \ \"short\",\n \"medium\",\n \"long\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Filter on the duration of the videos.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter video search results based on their duration. This is the default - value.\",\n \"Only include videos that are less than four minutes - long.\",\n \"Only include videos that are between four and - 20 minutes long (inclusive).\",\n \"Only include videos longer - than 20 minutes.\"\n ]\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"location\": {\n \"location\": - \"query\",\n \"description\": \"Filter on location of the video\",\n - \ \"type\": \"string\"\n },\n \"videoCategoryId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on videos in a specific category.\"\n - \ },\n \"q\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Textual - search terms to match.\"\n },\n \"videoCaption\": {\n - \ \"location\": \"query\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter results based on caption availability.\",\n - \ \"Only include videos that have captions.\",\n \"Only - include videos that do not have captions.\"\n ],\n \"type\": - \"string\",\n \"description\": \"Filter on the presence of captions - on the videos.\"\n },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Display the content as seen by viewers in this country.\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"videoType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos.\",\n \"Only retrieve movies.\",\n \"Only - retrieve episodes of shows.\"\n ],\n \"description\": - \"Filter on videos of a specific type.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"videoTypeUnspecified\",\n \"any\",\n - \ \"movie\",\n \"episode\"\n ],\n - \ \"location\": \"query\"\n },\n \"locationRadius\": - {\n \"description\": \"Filter on distance from the location (specified - above).\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"type\": {\n \"description\": - \"Restrict results to a particular set of resource types from One Platform.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"videoEmbeddable\": - {\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"description\": \"Filter on embeddable videos.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all videos, embeddable or - not.\",\n \"Only retrieve embeddable videos.\"\n ]\n - \ },\n \"forMine\": {\n \"location\": \"query\",\n - \ \"description\": \"Search for the private videos of the authenticated - user.\",\n \"type\": \"boolean\"\n },\n \"videoDimension\": - {\n \"description\": \"Filter on 3d videos.\",\n \"location\": - \"query\",\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"type\": \"string\"\n },\n - \ \"channelType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all channels.\",\n \"Only retrieve - shows.\"\n ],\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Add a filter on the channel search.\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/search\",\n \"id\": \"youtube.search.list\",\n - \ \"description\": \"Retrieves a list of search resources\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"SearchListResponse\"\n },\n \"flatPath\": \"youtube/v3/search\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"activities\": {\n \"methods\": {\n - \ \"list\": {\n \"path\": \"youtube/v3/activities\",\n \"id\": - \"youtube.activities.list\",\n \"parameters\": {\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"default\": \"5\",\n - \ \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"publishedBefore\": {\n \"format\": - \"google-datetime\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"home\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ActivityListResponse\"\n }\n }\n }\n },\n \"thirdPartyLinks\": - {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.thirdPartyLinks.list\",\n - \ \"parameters\": {\n \"linkingToken\": {\n \"description\": - \"Get a third party link with the given linking token.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"description\": - \"Get a third party link of the given type.\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - response will include. Supported values are linkingToken, status, and snippet.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\"\n },\n \"update\": {\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API request and response will include. - Supported values are linkingToken, status, and snippet.\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\"\n }\n }\n },\n \"delete\": {\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.delete\",\n - \ \"parameters\": {\n \"linkingToken\": {\n \"type\": - \"string\",\n \"description\": \"Delete the partner links with - the given linking token.\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Do not use. Required for compatibility.\"\n - \ },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Channel ID to which changes should - be applied, for delegation.\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"description\": \"Type of the link - to be deleted.\",\n \"required\": true,\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"description\": - \"Deletes a resource.\"\n },\n \"insert\": {\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"parameters\": {\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"id\": \"youtube.liveChatModerators.list\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the liveChatModerator resource parts that - the API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"default\": \"5\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"liveChatId\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"The id of the live chat for which - moderators should be returned.\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveChat/moderators\"\n },\n \"insert\": {\n \"response\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveChatModerators.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n - \ }\n },\n \"delete\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveChatModerators.delete\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": \"DELETE\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Deletes a chat moderator.\"\n }\n }\n },\n \"i18nLanguages\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.i18nLanguages.list\",\n \"path\": \"youtube/v3/i18nLanguages\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"I18nLanguageListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"hl\": {\n \"default\": \"en_US\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the i18nLanguage - resource properties that the API response will include. Set the parameter - value to snippet.\"\n }\n }\n }\n }\n },\n - \ \"videoAbuseReportReasons\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"parameters\": - {\n \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"en-US\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the videoCategory - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"VideoAbuseReportReasonListResponse\"\n },\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\"\n }\n },\n \"mediaUpload\": {\n - \ \"maxSize\": \"6291456\",\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"parameterOrder\": [],\n \"supportsMediaUpload\": - true,\n \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"id\": \"youtube.channelBanners.insert\",\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/channelBanners/insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ]\n - \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"bind\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ },\n \"id\": {\n \"description\": \"Broadcast - to bind to the stream\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"streamId\": - {\n \"description\": \"Stream to bind, if not set unbind the - current one.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"description\": - \"Bind a broadcast to a stream.\",\n \"parameterOrder\": [\n \"id\",\n - \ \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n }\n - \ },\n \"insert\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.liveBroadcasts.insert\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n }\n - \ },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"id\": - \"youtube.liveBroadcasts.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"broadcastType\": {\n \"location\": - \"query\",\n \"default\": \"event\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"description\": \"Return only - broadcasts with the selected type.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ]\n },\n \"id\": {\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"broadcastStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"description\": \"Return broadcasts - with a certain status, e.g. active broadcasts.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ]\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"pageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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, status and statistics.\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"response\": {\n \"$ref\": - \"LiveBroadcastListResponse\"\n },\n \"description\": \"Retrieve - the list of broadcasts associated with the given channel.\"\n },\n - \ \"update\": {\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing broadcast for the authenticated user.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.update\"\n },\n \"transition\": - {\n \"id\": \"youtube.liveBroadcasts.transition\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/transition\",\n \"description\": \"Transition - a broadcast to a given status.\",\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"parameterOrder\": [\n \"broadcastStatus\",\n - \ \"id\",\n \"part\"\n ],\n \"parameters\": - {\n \"broadcastStatus\": {\n \"location\": \"query\",\n - \ \"enum\": [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"description\": \"The status to which the broadcast is going - to transition.\",\n \"required\": true,\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Start testing the broadcast. YouTube transmits video to - the broadcast's monitor stream. Note that you can only transition a broadcast - to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ]\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"Broadcast to transition.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/liveBroadcasts/transition\"\n - \ },\n \"insertCuepoint\": {\n \"response\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"description\": \"Insert cuepoints - in a broadcast\",\n \"parameterOrder\": [],\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/cuepoint\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Cuepoint\"\n - \ },\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\"\n },\n - \ \"delete\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"description\": \"Delete a given broadcast.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"id\": \"youtube.liveBroadcasts.delete\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"Broadcast to delete.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ }\n }\n }\n },\n \"thumbnails\": {\n \"methods\": - {\n \"set\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"required\": - true,\n \"description\": \"Returns the Thumbnail with the given - video IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.thumbnails.set\",\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"description\": - \"As this is not an insert in a strict sense (it supports uploading/setting - of a thumbnail for multiple videos, which doesn't result in creation of a - single resource), I use a custom verb here.\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"2097152\"\n },\n \"response\": - {\n \"$ref\": \"ThumbnailSetResponse\"\n }\n }\n - \ }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of members that match the - request criteria for a channel.\",\n \"flatPath\": \"youtube/v3/members\",\n - \ \"path\": \"youtube/v3/members\",\n \"id\": \"youtube.members.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\"\n },\n \"filterByMemberChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\"\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"maximum\": - \"1000\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"minimum\": \"0\",\n \"default\": \"5\",\n \"type\": - \"integer\"\n },\n \"hasAccessToLevel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mode\": - {\n \"type\": \"string\",\n \"default\": \"all_current\",\n - \ \"enum\": [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ],\n \"description\": \"Parameter - that specifies which channel members to return.\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ }\n }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/membershipsLevels\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"The *part* parameter - specifies the membershipsLevel resource parts that the API response will include. - Supported values are id and snippet.\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"id\": \"youtube.membershipsLevels.list\",\n \"response\": - {\n \"$ref\": \"MembershipsLevelListResponse\"\n }\n }\n - \ }\n },\n \"superChatEvents\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/superChatEvents\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"id\": \"youtube.superChatEvents.list\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"parameters\": {\n \"maxResults\": {\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"1\",\n \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the superChatEvent - resource parts that the API response will include. This parameter is currently - not supported.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"hl\": {\n \"description\": \"Return rendered funding - amounts in specified language.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n }\n }\n - \ }\n },\n \"channels\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"id\": \"youtube.channels.list\",\n \"path\": - \"youtube/v3/channels\",\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"parameters\": {\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the channels with the specified IDs.\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"description\": - \"Return the ids of channels owned by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"managedByMe\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Return - the channels managed by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"default\": \"5\",\n \"format\": - \"uint32\"\n },\n \"categoryId\": {\n \"type\": - \"string\",\n \"description\": \"Return the channels within the - specified guide category ID.\",\n \"location\": \"query\"\n },\n - \ \"forUsername\": {\n \"location\": \"query\",\n \"description\": - \"Return the channel associated with a YouTube username.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": - true\n },\n \"mySubscribers\": {\n \"location\": - \"query\",\n \"description\": \"Return the channels subscribed - to the authenticated user\",\n \"type\": \"boolean\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"update\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Channel\"\n - \ },\n \"response\": {\n \"$ref\": \"Channel\"\n - \ },\n \"flatPath\": \"youtube/v3/channels\",\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/channels\",\n \"id\": \"youtube.channels.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"playlists\": {\n \"methods\": {\n \"update\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/playlists\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"id\": \"youtube.playlists.update\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\"\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"id\": \"youtube.playlists.delete\"\n },\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.playlists.list\",\n \"parameters\": - {\n \"hl\": {\n \"description\": \"Return content - in specified language\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"description\": - \"Return the playlists owned by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"Return - the playlists with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Return the playlists owned by - the specified channel ID.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"location\": \"query\",\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\"\n }\n - \ }\n },\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"Playlist\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlists.insert\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n }\n - \ }\n }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.tests.insert\",\n \"response\": - {\n \"$ref\": \"TestItem\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/tests\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"TestItem\"\n },\n \"description\": - \"POST method.\",\n \"path\": \"youtube/v3/tests\"\n }\n }\n - \ },\n \"abuseReports\": {\n \"methods\": {\n \"insert\": - {\n \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/abuseReports\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n }\n - \ }\n }\n },\n \"subscriptions\": {\n \"methods\": {\n - \ \"delete\": {\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Deletes a resource.\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/subscriptions\",\n \"flatPath\": - \"youtube/v3/subscriptions\"\n },\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.subscriptions.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"pageToken\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"forChannelId\": {\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"required\": - true\n },\n \"myRecentSubscribers\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"order\": - {\n \"enumDescriptions\": [\n \"\",\n \"Sort - by relevance.\",\n \"Sort by order of activity.\",\n \"Sort - alphabetically.\"\n ],\n \"description\": \"The - order of the returned subscriptions\",\n \"location\": \"query\",\n - \ \"default\": \"relevance\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"type\": \"string\"\n },\n \"mySubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Return the subscribers of the given channel - owner.\"\n },\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Return the subscriptions of the given channel owner.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"httpMethod\": \"GET\"\n },\n \"insert\": - {\n \"response\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"id\": \"youtube.subscriptions.insert\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/subscriptions\"\n }\n }\n },\n \"liveStreams\": - {\n \"methods\": {\n \"update\": {\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"id\": \"youtube.liveStreams.update\",\n \"httpMethod\": - \"PUT\",\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"path\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Updates - an existing stream for the authenticated user.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ }\n },\n \"insert\": {\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"response\": {\n - \ \"$ref\": \"LiveStream\"\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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, content_details, and status.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ }\n },\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes an existing stream for the - authenticated user.\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"id\": \"youtube.liveStreams.delete\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveStreams\"\n },\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.list\",\n - \ \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"Return LiveStreams with the given ids from Stubby or Apiary.\"\n },\n - \ \"maxResults\": {\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Retrieve the list of streams associated with - the given channel. --\"\n }\n }\n },\n \"channelSections\": - {\n \"methods\": {\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.channelSections.insert\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/channelSections\"\n },\n \"list\": - {\n \"path\": \"youtube/v3/channelSections\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channelSections.list\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return content in specified language\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"mine\": - {\n \"description\": \"Return the ChannelSections owned by the - authenticated user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"response\": {\n \"$ref\": - \"ChannelSectionListResponse\"\n }\n },\n \"delete\": - {\n \"path\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.channelSections.delete\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n }\n },\n - \ \"update\": {\n \"request\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"id\": \"youtube.channelSections.update\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Updates - an existing resource.\",\n \"httpMethod\": \"PUT\"\n }\n }\n - \ },\n \"watermarks\": {\n \"methods\": {\n \"unset\": {\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"description\": - \"Allows removal of channel watermark.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"id\": \"youtube.watermarks.unset\",\n \"path\": - \"youtube/v3/watermarks/unset\",\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/watermarks/unset\"\n },\n \"set\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/watermarks/set\",\n \"supportsMediaUpload\": - true,\n \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"parameters\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.watermarks.set\",\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n - \ \"description\": \"Allows upload of watermark image and setting - it for a channel.\",\n \"mediaUpload\": {\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ }\n },\n \"maxSize\": \"10485760\"\n },\n - \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - i18nRegion resource properties that the API response will include. Set the - parameter value to snippet.\",\n \"repeated\": true\n },\n - \ \"hl\": {\n \"default\": \"en_US\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.i18nRegions.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"I18nRegionListResponse\"\n }\n }\n }\n },\n \"commentThreads\": - {\n \"methods\": {\n \"insert\": {\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\"\n },\n \"list\": - {\n \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Returns the comment threads with - the given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n },\n \"order\": - {\n \"default\": \"time\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Order - by time.\",\n \"Order by relevance.\"\n ]\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n },\n \"textFormat\": {\n \"location\": - \"query\",\n \"default\": \"html\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"description\": - \"The requested text format for the returned comments.\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"videoId\": {\n \"location\": - \"query\",\n \"description\": \"Returns the comment threads of - the specified video.\",\n \"type\": \"string\"\n },\n - \ \"searchTerms\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Limits the returned comment threads - to those matching the specified key words. Not compatible with the 'id' filter.\"\n - \ },\n \"moderationStatus\": {\n \"default\": - \"published\",\n \"description\": \"Limits the returned comment - threads to those with the specified moderation status. Not compatible with - the 'id' filter. Valid values: published, heldForReview, likelySpam.\",\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by - a moderator.\",\n \"\",\n \"The comment is unfit - for display.\"\n ],\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Returns the comment threads for - all the channel comments (ie does not include comments left on videos).\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"100\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"minimum\": \"1\",\n \"default\": - \"20\",\n \"format\": \"uint32\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads of all videos of the channel and the channel comments - as well.\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.commentThreads.list\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"comments\": {\n \"methods\": - {\n \"update\": {\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n - \ },\n \"id\": \"youtube.comments.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true\n }\n - \ },\n \"path\": \"youtube/v3/comments\",\n \"description\": - \"Updates an existing resource.\"\n },\n \"insert\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.comments.insert\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/comments\"\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/comments\",\n \"id\": \"youtube.comments.delete\",\n - \ \"path\": \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n }\n },\n \"setModerationStatus\": - {\n \"id\": \"youtube.comments.setModerationStatus\",\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"moderationStatus\": {\n \"description\": \"Specifies - the requested moderation status. Note, comments can be in statuses, which - are not available through this call. For example, this call does not allow - to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"required\": - true,\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by - a moderator.\",\n \"\",\n \"The comment is unfit - for display.\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Modifies the moderation status of - the comments with the given IDs\",\n \"required\": true\n },\n - \ \"banAuthor\": {\n \"description\": \"If set to true - the author of the comment gets added to the ban list. This means all future - comments of the author will autmomatically be rejected. Only valid in combination - with STATUS_REJECTED.\",\n \"default\": \"false\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"description\": \"Sets the moderation status of one or more comments.\"\n - \ },\n \"list\": {\n \"id\": \"youtube.comments.list\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/comments\",\n \"path\": - \"youtube/v3/comments\",\n \"parameters\": {\n \"textFormat\": - {\n \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The requested text format for the returned - comments.\",\n \"location\": \"query\",\n \"default\": - \"html\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies a comma-separated - list of one or more comment resource properties that the API response will - include.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"minimum\": \"1\",\n \"default\": \"20\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"maximum\": \"100\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"parentId\": {\n \"location\": - \"query\",\n \"description\": \"Returns replies to the specified - comment. Note, currently YouTube features only one level of replies (ie replies - to top level comments). However replies to replies may be supported in the - future.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comments with the given IDs for - One Platform.\",\n \"repeated\": true\n }\n }\n - \ },\n \"markAsSpam\": {\n \"description\": \"Expresses - the caller's opinion that one or more comments should be flagged as spam.\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/comments/markAsSpam\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"Flags the comments with the given - IDs as spam in the caller's opinion.\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"id\": - \"youtube.comments.markAsSpam\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"videos\": {\n \"methods\": - {\n \"reportAbuse\": {\n \"description\": \"Report abuse for - a video.\",\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\",\n \"parameterOrder\": [],\n \"request\": - {\n \"$ref\": \"VideoAbuseReport\"\n },\n \"id\": - \"youtube.videos.reportAbuse\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos/reportAbuse\"\n },\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"regionCode\": - {\n \"description\": \"Use a chart that is specific to the specified - region\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"chart\": {\n \"description\": - \"Return the videos that are in the specified chart.\",\n \"location\": - \"query\",\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ]\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"maxWidth\": - {\n \"type\": \"integer\",\n \"minimum\": \"72\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the player with maximum height specified in\",\n \"maximum\": - \"8192\",\n \"format\": \"int32\"\n },\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Return videos with the given ids.\",\n \"type\": - \"string\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"type\": \"string\"\n },\n \"locale\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"videoCategoryId\": {\n \"default\": - \"0\",\n \"type\": \"string\",\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"location\": - \"query\"\n },\n \"maxHeight\": {\n \"minimum\": - \"72\",\n \"maximum\": \"8192\",\n \"format\": \"int32\",\n - \ \"type\": \"integer\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"minimum\": \"1\",\n \"description\": - \"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.\",\n \"type\": - \"integer\",\n \"maximum\": \"50\"\n },\n \"myRating\": - {\n \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"VideoListResponse\"\n },\n \"path\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.list\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"insert\": {\n - \ \"mediaUpload\": {\n \"maxSize\": \"274877906944\",\n - \ \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"video/*\",\n \"application/octet-stream\"\n - \ ]\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"supportsMediaUpload\": - true,\n \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"id\": \"youtube.videos.insert\",\n \"parameters\": {\n - \ \"autoLevels\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Should auto-levels be applied - to the upload.\"\n },\n \"stabilize\": {\n \"type\": - \"boolean\",\n \"description\": \"Should stabilize be applied - to the upload.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"notifySubscribers\": {\n \"description\": - \"Notify the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"location\": \"query\",\n \"default\": - \"true\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos\"\n },\n \"rate\": {\n - \ \"flatPath\": \"youtube/v3/videos/rate\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"description\": - \"Adds a like or dislike rating to a video or removes a rating from a video.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/videos/rate\",\n - \ \"id\": \"youtube.videos.rate\",\n \"parameters\": {\n - \ \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"rating\": - {\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"delete\": {\n \"id\": - \"youtube.videos.delete\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos\"\n },\n \"getRating\": - {\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves the ratings that the authorized user - gave to a list of specified videos.\",\n \"id\": \"youtube.videos.getRating\",\n - \ \"flatPath\": \"youtube/v3/videos/getRating\",\n \"response\": - {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"httpMethod\": - \"GET\"\n },\n \"update\": {\n \"parameters\": {\n - \ \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"flatPath\": - \"youtube/v3/videos\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"path\": \"youtube/v3/videos\",\n \"httpMethod\": \"PUT\",\n - \ \"id\": \"youtube.videos.update\"\n }\n }\n }\n },\n - \ \"basePath\": \"\",\n \"revision\": \"20230220\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"batchPath\": \"batch\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:33 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCUGfDbfRIx51kJGGHIFo8Rw&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"DNCfTRMWlcgek_HpZonVGOvmTEo\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"mi9vCIcCSkNTYzU1xCZAeN2u_P0\",\n \"id\": \"UCUGfDbfRIx51kJGGHIFo8Rw\",\n - \ \"snippet\": {\n \"title\": \"\u041C\u0430\u043A\u0441\u0438\u043C - \u041A\u0430\u0446\",\n \"description\": \"\u041D\u0430 \u044D\u0442\u043E\u043C - \u043A\u0430\u043D\u0430\u043B\u0435 \u0432\u0438\u0434\u0435\u043E \u043F\u0440\u043E - \u043F\u043E\u043B\u0438\u0442\u0438\u043A\u0443, \u0443\u0440\u0431\u0430\u043D\u0438\u0441\u0442\u0438\u043A\u0443, - \u0433\u043E\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0435\u043D\u043D\u043E\u0435 - \u0443\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435. \u0421\u0442\u0430\u0440\u0430\u044E\u0441\u044C - \u0438\u0445 \u0434\u0435\u043B\u0430\u0442\u044C \u0441\u043F\u043E\u043A\u043E\u0439\u043D\u044B\u043C\u0438 - \u0438 \u043E\u0431\u043E\u0441\u043D\u043E\u0432\u0430\u043D\u043D\u044B\u043C\u0438 - \u043D\u0430\u0443\u0447\u043D\u044B\u043C\u0438 \u0434\u0430\u043D\u043D\u044B\u043C\u0438.\\n\\n\u041F\u043E - \u0432\u043E\u043F\u0440\u043E\u0441\u0430\u043C \u0440\u0435\u043A\u043B\u0430\u043C\u044B - \u043F\u0438\u0448\u0438\u0442\u0435 \u043D\u0430 maxkatz@avtormedia.ru.\\n\\n\u042F - \u041C\u0430\u043A\u0441\u0438\u043C \u041A\u0430\u0446, 10 \u043B\u0435\u0442 - \u0437\u0430\u043D\u0438\u043C\u0430\u044E\u0441\u044C \u043E\u043F\u043F\u043E\u0437\u0438\u0446\u0438\u043E\u043D\u043D\u043E\u0439 - \u043F\u043E\u043B\u0438\u0442\u0438\u043A\u043E\u0439: \u0441\u0430\u043C - \u0431\u044B\u043B \u0434\u0435\u043F\u0443\u0442\u0430\u0442\u043E\u043C, - \u0443\u043F\u0440\u0430\u0432\u043B\u044F\u043B \u043C\u043D\u043E\u0433\u0438\u043C\u0438 - \u043E\u043F\u043F\u043E\u0437\u0438\u0446\u0438\u043E\u043D\u043D\u044B\u043C\u0438 - \u0438\u0437\u0431\u0438\u0440\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u043C\u0438 - \u043A\u0430\u043C\u043F\u0430\u043D\u0438\u044F\u043C\u0438 \u2014 \u043E\u0442 - \u0448\u0442\u0430\u0431\u0430 \u041D\u0430\u0432\u0430\u043B\u044C\u043D\u043E\u0433\u043E - \u0432 2013 \u0434\u043E \u043A\u0430\u043C\u043F\u0430\u043D\u0438\u0438 - \u0411\u0440\u044E\u0445\u0430\u043D\u043E\u0432\u043E\u0439 \u0432 2021. - \u0425\u043E\u0447\u0443 \u0441\u0434\u0435\u043B\u0430\u0442\u044C \u0420\u043E\u0441\u0441\u0438\u044E - \u043B\u0443\u0447\u0448\u0435 \u0438 \u0438\u0437\u0431\u0440\u0430\u0442\u044C\u0441\u044F - \u043C\u044D\u0440\u043E\u043C \u041C\u043E\u0441\u043A\u0432\u044B \u043A\u043E\u0433\u0434\u0430-\u043D\u0438\u0431\u0443\u0434\u044C - :)\\n\u0422\u0435\u043B\u0435\u0433\u0440\u0430\u043C: t.me/maximkatz\\n\",\n - \ \"customUrl\": \"@max_katz\",\n \"publishedAt\": \"2008-07-20T21:19:33Z\",\n - \ \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/8jwjxBVOsqIFY00sfeAUDdIPvW2EbSv6CEvdPl-ys5GcranurSeb0U8gaGeXU8W-qTf0QjrEvQ=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/8jwjxBVOsqIFY00sfeAUDdIPvW2EbSv6CEvdPl-ys5GcranurSeb0U8gaGeXU8W-qTf0QjrEvQ=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/8jwjxBVOsqIFY00sfeAUDdIPvW2EbSv6CEvdPl-ys5GcranurSeb0U8gaGeXU8W-qTf0QjrEvQ=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"defaultLanguage\": \"ru\",\n \"localized\": {\n \"title\": - \"\u041C\u0430\u043A\u0441\u0438\u043C \u041A\u0430\u0446\",\n \"description\": - \"\u041D\u0430 \u044D\u0442\u043E\u043C \u043A\u0430\u043D\u0430\u043B\u0435 - \u0432\u0438\u0434\u0435\u043E \u043F\u0440\u043E \u043F\u043E\u043B\u0438\u0442\u0438\u043A\u0443, - \u0443\u0440\u0431\u0430\u043D\u0438\u0441\u0442\u0438\u043A\u0443, \u0433\u043E\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0435\u043D\u043D\u043E\u0435 - \u0443\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435. \u0421\u0442\u0430\u0440\u0430\u044E\u0441\u044C - \u0438\u0445 \u0434\u0435\u043B\u0430\u0442\u044C \u0441\u043F\u043E\u043A\u043E\u0439\u043D\u044B\u043C\u0438 - \u0438 \u043E\u0431\u043E\u0441\u043D\u043E\u0432\u0430\u043D\u043D\u044B\u043C\u0438 - \u043D\u0430\u0443\u0447\u043D\u044B\u043C\u0438 \u0434\u0430\u043D\u043D\u044B\u043C\u0438.\\n\\n\u041F\u043E - \u0432\u043E\u043F\u0440\u043E\u0441\u0430\u043C \u0440\u0435\u043A\u043B\u0430\u043C\u044B - \u043F\u0438\u0448\u0438\u0442\u0435 \u043D\u0430 maxkatz@avtormedia.ru.\\n\\n\u042F - \u041C\u0430\u043A\u0441\u0438\u043C \u041A\u0430\u0446, 10 \u043B\u0435\u0442 - \u0437\u0430\u043D\u0438\u043C\u0430\u044E\u0441\u044C \u043E\u043F\u043F\u043E\u0437\u0438\u0446\u0438\u043E\u043D\u043D\u043E\u0439 - \u043F\u043E\u043B\u0438\u0442\u0438\u043A\u043E\u0439: \u0441\u0430\u043C - \u0431\u044B\u043B \u0434\u0435\u043F\u0443\u0442\u0430\u0442\u043E\u043C, - \u0443\u043F\u0440\u0430\u0432\u043B\u044F\u043B \u043C\u043D\u043E\u0433\u0438\u043C\u0438 - \u043E\u043F\u043F\u043E\u0437\u0438\u0446\u0438\u043E\u043D\u043D\u044B\u043C\u0438 - \u0438\u0437\u0431\u0438\u0440\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u043C\u0438 - \u043A\u0430\u043C\u043F\u0430\u043D\u0438\u044F\u043C\u0438 \u2014 \u043E\u0442 - \u0448\u0442\u0430\u0431\u0430 \u041D\u0430\u0432\u0430\u043B\u044C\u043D\u043E\u0433\u043E - \u0432 2013 \u0434\u043E \u043A\u0430\u043C\u043F\u0430\u043D\u0438\u0438 - \u0411\u0440\u044E\u0445\u0430\u043D\u043E\u0432\u043E\u0439 \u0432 2021. - \u0425\u043E\u0447\u0443 \u0441\u0434\u0435\u043B\u0430\u0442\u044C \u0420\u043E\u0441\u0441\u0438\u044E - \u043B\u0443\u0447\u0448\u0435 \u0438 \u0438\u0437\u0431\u0440\u0430\u0442\u044C\u0441\u044F - \u043C\u044D\u0440\u043E\u043C \u041C\u043E\u0441\u043A\u0432\u044B \u043A\u043E\u0433\u0434\u0430-\u043D\u0438\u0431\u0443\u0434\u044C - :)\\n\u0422\u0435\u043B\u0435\u0433\u0440\u0430\u043C: t.me/maximkatz\\n\"\n - \ },\n \"country\": \"IL\"\n },\n \"brandingSettings\": - {\n \"channel\": {\n \"title\": \"\u041C\u0430\u043A\u0441\u0438\u043C - \u041A\u0430\u0446\",\n \"description\": \"\u041D\u0430 \u044D\u0442\u043E\u043C - \u043A\u0430\u043D\u0430\u043B\u0435 \u0432\u0438\u0434\u0435\u043E \u043F\u0440\u043E - \u043F\u043E\u043B\u0438\u0442\u0438\u043A\u0443, \u0443\u0440\u0431\u0430\u043D\u0438\u0441\u0442\u0438\u043A\u0443, - \u0433\u043E\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0435\u043D\u043D\u043E\u0435 - \u0443\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435. \u0421\u0442\u0430\u0440\u0430\u044E\u0441\u044C - \u0438\u0445 \u0434\u0435\u043B\u0430\u0442\u044C \u0441\u043F\u043E\u043A\u043E\u0439\u043D\u044B\u043C\u0438 - \u0438 \u043E\u0431\u043E\u0441\u043D\u043E\u0432\u0430\u043D\u043D\u044B\u043C\u0438 - \u043D\u0430\u0443\u0447\u043D\u044B\u043C\u0438 \u0434\u0430\u043D\u043D\u044B\u043C\u0438.\\n\\n\u041F\u043E - \u0432\u043E\u043F\u0440\u043E\u0441\u0430\u043C \u0440\u0435\u043A\u043B\u0430\u043C\u044B - \u043F\u0438\u0448\u0438\u0442\u0435 \u043D\u0430 maxkatz@avtormedia.ru.\\n\\n\u042F - \u041C\u0430\u043A\u0441\u0438\u043C \u041A\u0430\u0446, 10 \u043B\u0435\u0442 - \u0437\u0430\u043D\u0438\u043C\u0430\u044E\u0441\u044C \u043E\u043F\u043F\u043E\u0437\u0438\u0446\u0438\u043E\u043D\u043D\u043E\u0439 - \u043F\u043E\u043B\u0438\u0442\u0438\u043A\u043E\u0439: \u0441\u0430\u043C - \u0431\u044B\u043B \u0434\u0435\u043F\u0443\u0442\u0430\u0442\u043E\u043C, - \u0443\u043F\u0440\u0430\u0432\u043B\u044F\u043B \u043C\u043D\u043E\u0433\u0438\u043C\u0438 - \u043E\u043F\u043F\u043E\u0437\u0438\u0446\u0438\u043E\u043D\u043D\u044B\u043C\u0438 - \u0438\u0437\u0431\u0438\u0440\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u043C\u0438 - \u043A\u0430\u043C\u043F\u0430\u043D\u0438\u044F\u043C\u0438 \u2014 \u043E\u0442 - \u0448\u0442\u0430\u0431\u0430 \u041D\u0430\u0432\u0430\u043B\u044C\u043D\u043E\u0433\u043E - \u0432 2013 \u0434\u043E \u043A\u0430\u043C\u043F\u0430\u043D\u0438\u0438 - \u0411\u0440\u044E\u0445\u0430\u043D\u043E\u0432\u043E\u0439 \u0432 2021. - \u0425\u043E\u0447\u0443 \u0441\u0434\u0435\u043B\u0430\u0442\u044C \u0420\u043E\u0441\u0441\u0438\u044E - \u043B\u0443\u0447\u0448\u0435 \u0438 \u0438\u0437\u0431\u0440\u0430\u0442\u044C\u0441\u044F - \u043C\u044D\u0440\u043E\u043C \u041C\u043E\u0441\u043A\u0432\u044B \u043A\u043E\u0433\u0434\u0430-\u043D\u0438\u0431\u0443\u0434\u044C - :)\\n\u0422\u0435\u043B\u0435\u0433\u0440\u0430\u043C: t.me/maximkatz\\n\",\n - \ \"keywords\": \"\\\"\u041C\u0430\u043A\u0441\u0438\u043C \u041A\u0430\u0446\\\" - \u041A\u0430\u0442\u0446 \u041A\u0430\u0442\u0441 \\\"\u041C\u0430\u043A\u0441 - \u041A\u0430\u0446\\\" \\\"\u041C\u0430\u043A\u0441 \u041A\u0430\u0442\u0441\\\" - \\\"\u041C\u0430\u043A\u0441 \u041A\u0430\u0442\u0446\\\" \\\"\u041C\u0430\u043A\u0441\u0438\u043C - \u041A\u0430\u0442\u0441\\\" \u041C\u0430\u043A\u0441\u0438\u043C \u041A\u0430\u0442\u0446 - \u0443\u0440\u0431\u0430\u043D\u0438\u0441\u0442\u0438\u043A\u0430 \\\"\u0433\u043E\u0440\u043E\u0434\u0441\u043A\u0438\u0435 - \u043F\u0440\u043E\u0435\u043A\u0442\u044B\\\" \u043F\u043E\u043B\u0438\u0442\u0438\u043A\u0430 - \u0420\u043E\u0441\u0441\u0438\u044F \u0432\u044B\u0431\u043E\u0440\u044B - \u0411\u0435\u043B\u0430\u0440\u0443\u0441\u044C \u043F\u0440\u0435\u0437\u0438\u0434\u0435\u043D\u0442 - \u041C\u043E\u0441\u043A\u0432\u0430 \u0442\u0440\u0430\u043C\u0432\u0430\u0439 - \u0442\u0440\u043E\u043B\u043B\u0435\u0439\u0431\u0443\u0441 \\\"\u041A\u0430\u0446 - \u043F\u0440\u0435\u0434\u043B\u0430\u0433\u0430\u0435\u0442 \u043F\u043E\u0431\u0435\u0434\u0438\u0442\u044C\\\" - \\\"\u043C\u044D\u0440 \u041C\u043E\u0441\u043A\u0432\u044B\\\" \\\"\u043F\u043E\u043B\u0438\u0442\u0438\u043A\u0430 - \u0432 \u0420\u043E\u0441\u0441\u0438\u0438\\\" \\\"\u0432\u043E\u0439\u043D\u044B - \u0438 \u043A\u043E\u043D\u0444\u043B\u0438\u043A\u0442\u044B\\\" \u0438\u0441\u0442\u043E\u0440\u0438\u044F - \\\"\u0433\u043E\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0435\u043D\u043D\u0430\u044F - \u0434\u0443\u043C\u0430\\\" \u0431\u0435\u0441\u0435\u0434\u0438\u043D\u0430\",\n - \ \"unsubscribedTrailer\": \"SayIpe0-tME\",\n \"defaultLanguage\": - \"ru\",\n \"country\": \"IL\"\n },\n \"image\": {\n - \ \"bannerExternalUrl\": \"https://yt3.googleusercontent.com/n14zVJAbPxL_rm9kXYw3B3WFSqwXoT5Wz7YOlgX3J5NQ0xlSVlwhhBEjhM7xqFwHo5Hmdnx_\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:34 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"revision\": \"20230220\",\n \"auth\": {\n \"oauth2\": {\n - \ \"scopes\": {\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n }\n }\n }\n },\n \"documentationLink\": - \"https://developers.google.com/youtube/\",\n \"parameters\": {\n \"uploadType\": - {\n \"location\": \"query\",\n \"description\": \"Legacy upload - protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"type\": - \"string\"\n },\n \"access_token\": {\n \"location\": \"query\",\n - \ \"description\": \"OAuth access token.\",\n \"type\": \"string\"\n - \ },\n \"prettyPrint\": {\n \"type\": \"boolean\",\n \"default\": - \"true\",\n \"location\": \"query\",\n \"description\": \"Returns - response with indentations and line breaks.\"\n },\n \"callback\": {\n - \ \"location\": \"query\",\n \"description\": \"JSONP\",\n \"type\": - \"string\"\n },\n \"oauth_token\": {\n \"location\": \"query\",\n - \ \"description\": \"OAuth 2.0 token for the current user.\",\n \"type\": - \"string\"\n },\n \"fields\": {\n \"type\": \"string\",\n \"description\": - \"Selector specifying which fields to include in a partial response.\",\n - \ \"location\": \"query\"\n },\n \"alt\": {\n \"enum\": [\n - \ \"json\",\n \"media\",\n \"proto\"\n ],\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"description\": - \"Data format for response.\",\n \"default\": \"json\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"upload_protocol\": - {\n \"type\": \"string\",\n \"description\": \"Upload protocol for - media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"location\": \"query\"\n - \ },\n \"$.xgafv\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"v1 error format\",\n - \ \"v2 error format\"\n ],\n \"enum\": [\n \"1\",\n - \ \"2\"\n ],\n \"description\": \"V1 error format.\"\n },\n - \ \"quotaUser\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"key\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n }\n },\n \"icons\": - {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"canonicalName\": \"YouTube\",\n \"version\": \"v3\",\n \"ownerName\": - \"Google\",\n \"kind\": \"discovery#restDescription\",\n \"fullyEncodeReservedExpansion\": - true,\n \"id\": \"youtube:v3\",\n \"description\": \"The YouTube Data API - v3 is an API that provides access to YouTube data, such as videos, playlists, - and channels.\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"discoveryVersion\": \"v1\",\n \"title\": \"YouTube Data API v3\",\n \"servicePath\": - \"\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"batchPath\": - \"batch\",\n \"ownerDomain\": \"google.com\",\n \"name\": \"youtube\",\n - \ \"schemas\": {\n \"LiveChatTextMessageDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatTextMessageDetails\",\n \"properties\": {\n \"messageText\": - {\n \"description\": \"The user's message.\",\n \"type\": - \"string\"\n }\n }\n },\n \"CdnSettings\": {\n \"type\": - \"object\",\n \"id\": \"CdnSettings\",\n \"properties\": {\n \"resolution\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\",\n \"type\": \"string\"\n },\n \"ingestionType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"enum\": [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"description\": \" The method - or protocol used to transmit the video stream.\"\n },\n \"format\": - {\n \"type\": \"string\",\n \"description\": \"The format - of the video stream that you are sending to Youtube. \",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n - \ \"description\": \"The ingestionInfo object contains information - that YouTube provides that you need to transmit your RTMP or HTTP stream to - YouTube.\"\n },\n \"frameRate\": {\n \"enum\": [\n - \ \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The frame rate of the inbound video data.\"\n }\n },\n \"description\": - \"Brief description of the live stream cdn settings.\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"associatedMembershipGiftingMessageId\": - {\n \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n - \ },\n \"gifterChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the user that made the membership gifting - purchase. This matches the `snippet.authorChannelId` of the associated membership - gifting message.\"\n },\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level at which the - viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n }\n },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"ActivityContentDetailsPlaylistItem\": {\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The value that YouTube uses to uniquely - identify the playlist.\"\n },\n \"playlistItemId\": {\n \"type\": - \"string\",\n \"description\": \"ID of the item within the playlist.\"\n - \ }\n },\n \"description\": \"Information about a new playlist - item.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"PlaylistItemListResponse\": {\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"description\": \"A list of playlist items that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"PlaylistItem\"\n }\n },\n \"etag\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"PlaylistItemListResponse\",\n - \ \"type\": \"object\"\n },\n \"Comment\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#comment\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the comment.\",\n \"$ref\": \"CommentSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the comment.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - *comment* represents a single YouTube comment.\",\n \"id\": \"Comment\"\n - \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"The details of the user that was banned.\"\n },\n \"banDurationSeconds\": - {\n \"type\": \"string\",\n \"description\": \"The duration - of the ban. This property is only present if the banType is temporary.\",\n - \ \"format\": \"uint64\"\n },\n \"banType\": {\n \"enum\": - [\n \"permanent\",\n \"temporary\"\n ],\n \"type\": - \"string\",\n \"description\": \"The type of ban.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n }\n }\n - \ },\n \"LiveChatSuperChatDetails\": {\n \"id\": \"LiveChatSuperChatDetails\",\n - \ \"properties\": {\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"userComment\": {\n \"description\": \"The comment - added by the user to this Super Chat event.\",\n \"type\": \"string\"\n - \ },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"description\": \"The amount purchased by the user, in micros (1,750,000 - micros = 1.75).\",\n \"format\": \"uint64\"\n },\n \"tier\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SubscriptionContentDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"SubscriptionContentDetails\",\n \"description\": \"Details - about the content to witch a subscription refers.\",\n \"properties\": - {\n \"totalItemCount\": {\n \"type\": \"integer\",\n \"description\": - \"The approximate number of items that the subscription points to.\",\n \"format\": - \"uint32\"\n },\n \"activityType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The type of activity this subscription is for - (only uploads, everything).\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"type\": - \"string\"\n },\n \"newItemCount\": {\n \"description\": - \"The number of new items in the subscription since its content was last read.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n - \ }\n },\n \"Caption\": {\n \"type\": \"object\",\n \"id\": - \"Caption\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the caption track.\"\n },\n \"snippet\": - {\n \"$ref\": \"CaptionSnippet\",\n \"description\": \"The - snippet object contains basic details about the caption.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#caption\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#caption\\\".\"\n }\n },\n \"description\": - \"A *caption* resource represents a YouTube caption track. A caption track - is associated with exactly one YouTube video.\"\n },\n \"VideoTopicDetails\": - {\n \"description\": \"Freebase topic information related to the video.\",\n - \ \"id\": \"VideoTopicDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"topicIds\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Freebase - topic IDs that are centrally associated with the video. These are topics that - are centrally featured in the video, and it can be said that the video is - mainly about each of these. You can retrieve information about each topic - using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"type\": \"array\"\n },\n \"relevantTopicIds\": - {\n \"type\": \"array\",\n \"description\": \"Similar to - topic_id, except that these topics are merely relevant to the video. These - are topics that may be mentioned in, or appear in the video. You can retrieve - information about each topic using Freebase Topic API.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicCategories\": - {\n \"type\": \"array\",\n \"description\": \"A list of - Wikipedia URLs that provide a high-level description of the video's content.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n }\n - \ }\n },\n \"ChannelProfileDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelProfileDetails\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n },\n \"profileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channels's avatar URL.\"\n },\n - \ \"channelUrl\": {\n \"description\": \"The channel's URL.\",\n - \ \"type\": \"string\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ActivitySnippet\": {\n \"description\": \"Basic - details about an activity, including title, description, thumbnails, activity - type and group. Next ID: 12\",\n \"id\": \"ActivitySnippet\",\n \"properties\": - {\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of activity that the resource describes.\",\n \"type\": - \"string\",\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n - \ \"like\",\n \"favorite\",\n \"comment\",\n - \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n - \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ]\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel responsible - for this activity\",\n \"type\": \"string\"\n },\n \"groupId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the resource primarily associated with the activity.\"\n },\n - \ \"description\": {\n \"description\": \"The description of - the resource primarily associated with the activity. @mutable youtube.activities.insert\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel associated with the activity.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the video was uploaded.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"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.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoAgeGating\": {\n \"properties\": {\n \"alcoholContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether or not the video has alcoholic beverage content. Only users of legal - purchasing age in a particular country, as identified by ICAP, can view the - content.\"\n },\n \"restricted\": {\n \"description\": - \"Age-restricted trailers. For redband trailers and adult-rated video-games. - Only users aged 18+ can view the content. The the field is true the content - is restricted to viewers aged 18+. Otherwise The field won't be present.\",\n - \ \"type\": \"boolean\"\n },\n \"videoGameRating\": - {\n \"description\": \"Video game rating, if any.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ]\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoAgeGating\"\n },\n \"VideoSuggestions\": - {\n \"type\": \"object\",\n \"properties\": {\n \"processingErrors\": - {\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n - \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n - \ \"unsupportedSpatialAudioLayout\"\n ],\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ]\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of errors that will prevent YouTube from - successfully processing the uploaded video video. These errors indicate that, - regardless of the video's current processing status, eventually, that status - will almost certainly be failed.\"\n },\n \"processingWarnings\": - {\n \"description\": \"A list of reasons why YouTube may have difficulty - transcoding the uploaded video or that might result in an erroneous transcoding. - These warnings are generated before YouTube actually processes the uploaded - video file. In addition, they identify issues that are unlikely to cause the - video processing to fail but that might cause problems such as sync issues, - video artifacts, or a missing audio track.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"tagSuggestions\": - {\n \"type\": \"array\",\n \"description\": \"A list of - keyword tags that could be added to the video's metadata to increase the likelihood - that users will locate your video when searching or browsing on YouTube.\",\n - \ \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ }\n },\n \"editorSuggestions\": {\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\",\n \"items\": {\n - \ \"enumDescriptions\": [\n \"Picture brightness levels - seem off and could be corrected.\",\n \"The video appears shaky - and could be stabilized.\",\n \"Margins (mattes) detected around - the picture could be cropped.\",\n \"The audio track appears - silent and could be swapped with a better quality one.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ]\n },\n \"type\": \"array\"\n },\n \"processingHints\": - {\n \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of suggestions that may - improve YouTube's ability to process the video.\"\n }\n },\n \"id\": - \"VideoSuggestions\",\n \"description\": \"Specifies suggestions on how - to improve video content, including encoding hints, tag suggestions, and editor - suggestions.\"\n },\n \"CommentListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"description\": \"A list of comments that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Comment\"\n }\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#commentListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"eventId\": {\n - \ \"type\": \"string\",\n \"description\": \"Serialized EventId - of the request which produced this response.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"CommentListResponse\"\n },\n \"LiveStreamStatus\": {\n - \ \"description\": \"Brief description of the live stream status.\",\n - \ \"properties\": {\n \"healthStatus\": {\n \"$ref\": - \"LiveStreamHealthStatus\",\n \"description\": \"The health status - of the stream.\"\n },\n \"streamStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"created\",\n \"ready\",\n - \ \"active\",\n \"inactive\",\n \"error\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"id\": \"LiveStreamStatus\",\n \"type\": \"object\"\n - \ },\n \"LocalizedProperty\": {\n \"id\": \"LocalizedProperty\",\n - \ \"properties\": {\n \"defaultLanguage\": {\n \"description\": - \"The language of the default property.\",\n \"$ref\": \"LanguageTag\"\n - \ },\n \"localized\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LocalizedString\"\n }\n },\n \"default\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsComment\": {\n \"properties\": {\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with the comment.\"\n }\n },\n \"id\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"Information about a resource that received a comment.\",\n - \ \"type\": \"object\"\n },\n \"PlaylistStatus\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistStatus\",\n \"properties\": {\n - \ \"privacyStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The playlist's - privacy status.\"\n }\n }\n },\n \"LiveChatModeratorSnippet\": - {\n \"properties\": {\n \"liveChatId\": {\n \"description\": - \"The ID of the live chat this moderator can act on.\",\n \"type\": - \"string\"\n },\n \"moderatorDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - moderator.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatModeratorSnippet\"\n },\n \"MembershipsDetails\": {\n \"id\": - \"MembershipsDetails\",\n \"properties\": {\n \"highestAccessibleLevelDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n },\n - \ \"membershipsDurationAtLevels\": {\n \"description\": \"Data - about memberships duration on particular pricing levels.\",\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"type\": - \"array\"\n },\n \"accessibleLevels\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"Ids of all levels that the user has access to. - This includes the currently active level and all other levels that are included - because of a higher purchase.\"\n },\n \"highestAccessibleLevel\": - {\n \"description\": \"Id of the highest level that the user has - access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"membershipsDuration\": {\n \"description\": \"Data about - memberships duration without taking into consideration pricing levels.\",\n - \ \"$ref\": \"MembershipsDuration\"\n }\n },\n \"type\": - \"object\"\n },\n \"LanguageTag\": {\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LanguageTag\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"type\": \"object\",\n \"properties\": {\n \"blocked\": - {\n \"description\": \"A list of region codes that identify countries - where the video is blocked. If this property is present and a country is not - listed in its value, then the video is viewable in that country. If this property - is present and contains an empty list, the video is viewable in all countries.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"allowed\": {\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"description\": \"DEPRECATED Region restriction - of the video.\",\n \"id\": \"VideoContentDetailsRegionRestriction\"\n - \ },\n \"InvideoBranding\": {\n \"properties\": {\n \"position\": - {\n \"$ref\": \"InvideoPosition\",\n \"description\": \"The - spatial position within the video where the branding watermark will be displayed.\"\n - \ },\n \"timing\": {\n \"description\": \"The temporal - position within the video where watermark will be displayed.\",\n \"$ref\": - \"InvideoTiming\"\n },\n \"imageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The url of the uploaded image. Only - used in apiary to api communication.\"\n },\n \"imageBytes\": - {\n \"description\": \"The bytes the uploaded image. Only used in - api to youtube communication.\",\n \"format\": \"byte\",\n \"type\": - \"string\"\n },\n \"targetChannelId\": {\n \"description\": - \"The channel to which this branding links. If not present it defaults to - the current channel.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"InvideoBranding\",\n \"type\": \"object\",\n \"description\": - \"LINT.IfChange Describes an invideo branding.\"\n },\n \"LocalizedString\": - {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ },\n \"language\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LocalizedString\"\n - \ },\n \"ActivityContentDetails\": {\n \"properties\": {\n \"channelItem\": - {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n \"description\": - \"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.\"\n - \ },\n \"playlistItem\": {\n \"description\": \"The - playlistItem object contains information about a new playlist item. This property - is only present if the snippet.type is playlistItem.\",\n \"$ref\": - \"ActivityContentDetailsPlaylistItem\"\n },\n \"subscription\": - {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n \"description\": - \"The subscription object contains information about a channel that a user - subscribed to. This property is only present if the snippet.type is subscription.\"\n - \ },\n \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"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.\"\n },\n \"recommendation\": - {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n \"description\": - \"The recommendation object contains information about a recommended resource. - This property is only present if the snippet.type is recommendation.\"\n },\n - \ \"like\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsLike\"\n },\n \"bulletin\": {\n \"description\": - \"The bulletin object contains details about a channel bulletin post. This - object is only present if the snippet.type is bulletin.\",\n \"$ref\": - \"ActivityContentDetailsBulletin\"\n },\n \"comment\": {\n \"$ref\": - \"ActivityContentDetailsComment\",\n \"description\": \"The comment - object contains information about a resource that received a comment. This - property is only present if the snippet.type is comment.\"\n },\n \"social\": - {\n \"description\": \"The social object contains details about a - social network post. This property is only present if the snippet.type is - social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n },\n - \ \"promotedItem\": {\n \"description\": \"The promotedItem - object contains details about a resource which is being promoted. This property - is only present if the snippet.type is promotedItem.\",\n \"$ref\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"upload\": {\n - \ \"$ref\": \"ActivityContentDetailsUpload\",\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\"\n }\n },\n \"description\": - \"Details about the content of an activity: the video that was shared, the - channel that was subscribed to, etc.\",\n \"id\": \"ActivityContentDetails\",\n - \ \"type\": \"object\"\n },\n \"ThirdPartyLinkListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n }\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\"\n }\n - \ },\n \"id\": \"ThirdPartyLinkListResponse\"\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"type\": \"object\",\n \"description\": \"A single tag suggestion - with it's relevance information.\",\n \"properties\": {\n \"tag\": - {\n \"description\": \"The keyword tag suggested for the video.\",\n - \ \"type\": \"string\"\n },\n \"categoryRestricts\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A set of video categories for which the tag is - relevant. You can use this information to display appropriate tag suggestions - based on the video category that the video uploader associates with the video. - By default, tag suggestions are relevant for all categories if there are no - restricts defined for the keyword.\",\n \"type\": \"array\"\n }\n - \ },\n \"id\": \"VideoSuggestionsTagSuggestion\"\n },\n \"TokenPagination\": - {\n \"properties\": {},\n \"type\": \"object\",\n \"id\": \"TokenPagination\",\n - \ \"description\": \"Stub token pagination template to suppress results.\"\n - \ },\n \"PropertyValue\": {\n \"type\": \"object\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\",\n \"description\": - \"The property's value.\"\n },\n \"property\": {\n \"description\": - \"A property.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"PropertyValue\",\n \"description\": \"A pair Property / Value.\"\n - \ },\n \"SuperChatEventListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of Super Chat purchases that - match the request criteria.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"SuperChatEventListResponse\",\n - \ \"type\": \"object\"\n },\n \"VideoFileDetails\": {\n \"properties\": - {\n \"container\": {\n \"description\": \"The uploaded video - file's container format.\",\n \"type\": \"string\"\n },\n - \ \"bitrateBps\": {\n \"description\": \"The uploaded video - file's combined (video and audio) bitrate in bits per second.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"videoStreams\": - {\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of video streams contained in the uploaded video file. Each item in the - list contains detailed metadata about a video stream.\"\n },\n \"creationTime\": - {\n \"description\": \"The date and time when the uploaded video - file was created. The value is specified in ISO 8601 format. Currently, the - following ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive - time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \",\n \"type\": \"string\"\n },\n \"fileName\": {\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - file's name. This field is present whether a video file or another type of - file was uploaded.\"\n },\n \"audioStreams\": {\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ }\n },\n \"fileType\": {\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"description\": \"The uploaded file's - type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\",\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ],\n \"type\": \"string\"\n },\n \"fileSize\": - {\n \"format\": \"uint64\",\n \"description\": \"The uploaded - file's size in bytes. This field is present whether a video file or another - type of file was uploaded.\",\n \"type\": \"string\"\n },\n - \ \"durationMs\": {\n \"type\": \"string\",\n \"description\": - \"The length of the uploaded video in milliseconds.\",\n \"format\": - \"uint64\"\n }\n },\n \"description\": \"Describes original - video file properties, including technical details about audio and video streams, - but also metadata information like content length, digitization time, or geotagging - information.\",\n \"type\": \"object\",\n \"id\": \"VideoFileDetails\"\n - \ },\n \"PlaylistLocalization\": {\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's description.\"\n },\n \"title\": {\n - \ \"description\": \"The localized strings for playlist's title.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"PlaylistLocalization\",\n - \ \"description\": \"Playlist localization setting\",\n \"type\": - \"object\"\n },\n \"SearchResult\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#searchResult\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ },\n \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about a search result, such as its title or description. For example, if the - search result is a video, then the title will be the video's title and the - description will be the video's description.\",\n \"$ref\": \"SearchResultSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"description\": \"A - search result contains information about a YouTube video, channel, or playlist - that matches the search parameters specified in an API request. While a search - result points to a uniquely identifiable resource, like a video, it does not - have its own persistent data.\",\n \"id\": \"SearchResult\"\n },\n - \ \"LiveChatMembershipGiftingDetails\": {\n \"properties\": {\n \"giftMembershipsLevelName\": - {\n \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n },\n \"giftMembershipsCount\": - {\n \"description\": \"The number of gift memberships purchased by - the user.\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ }\n },\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"type\": \"object\"\n },\n \"ChannelSection\": {\n \"type\": - \"object\",\n \"id\": \"ChannelSection\",\n \"properties\": {\n - \ \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel section.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n - \ \"description\": \"The targeting object contains basic targeting - settings about the channel section.\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelSection\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n - \ },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\",\n \"$ref\": - \"ChannelSectionContentDetails\"\n }\n }\n },\n \"ChannelSectionListResponse\": - {\n \"id\": \"ChannelSectionListResponse\",\n \"properties\": {\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"description\": \"A list of ChannelSections - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveStream\": {\n \"type\": - \"object\",\n \"description\": \"A live stream describes a live ingestion - point.\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#liveStream\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"type\": \"string\"\n },\n \"contentDetails\": {\n - \ \"$ref\": \"LiveStreamContentDetails\",\n \"description\": - \"The content_details object contains information about the stream, including - the closed captions ingestion URL.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the stream.\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveStreamSnippet\",\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"cdn\": {\n \"description\": \"The cdn object defines the - live stream's content delivery network (CDN) settings. These settings provide - details about the manner in which you stream your content to YouTube.\",\n - \ \"$ref\": \"CdnSettings\"\n }\n },\n \"id\": \"LiveStream\"\n - \ },\n \"LiveStreamHealthStatus\": {\n \"id\": \"LiveStreamHealthStatus\",\n - \ \"properties\": {\n \"status\": {\n \"description\": - \"The status code of this stream\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"good\",\n - \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n - \ ]\n },\n \"lastUpdateTimeSeconds\": {\n \"description\": - \"The last time this status was updated (in seconds)\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"configurationIssues\": - {\n \"description\": \"The configurations issues on this stream\",\n - \ \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelToStoreLinkDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"storeName\": {\n \"type\": - \"string\",\n \"description\": \"Name of the store.\"\n },\n - \ \"merchantId\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"Google Merchant Center id of the - store.\"\n },\n \"storeUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Landing page of the store.\"\n }\n },\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"id\": \"ChannelToStoreLinkDetails\"\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"id\": \"LiveChatFanFundingEventDetails\",\n - \ \"properties\": {\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ },\n \"amountMicros\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The amount of - the fund.\"\n }\n },\n \"type\": \"object\"\n },\n \"InvideoPosition\": - {\n \"description\": \"Describes the spatial position of a visual widget - inside a video. It is a union of various position types, out of which only - will be set one.\",\n \"id\": \"InvideoPosition\",\n \"properties\": - {\n \"cornerPosition\": {\n \"description\": \"Describes in - which corner of the video the visual widget will appear.\",\n \"enum\": - [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n - \ \"bottomRight\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"type\": - {\n \"enum\": [\n \"corner\"\n ],\n \"enumDescriptions\": - [\n \"\"\n ],\n \"description\": \"Defines the - position type.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"MemberSnippet\": {\n \"properties\": {\n \"memberDetails\": - {\n \"description\": \"Details about the member.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"membershipsDetails\": {\n - \ \"$ref\": \"MembershipsDetails\",\n \"description\": \"Details - about the user's membership.\"\n },\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering memberships.\"\n }\n },\n \"id\": - \"MemberSnippet\",\n \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"type\": \"object\",\n \"id\": \"VideoFileDetailsVideoStream\",\n - \ \"properties\": {\n \"codec\": {\n \"type\": \"string\",\n - \ \"description\": \"The video codec that the stream uses.\"\n },\n - \ \"aspectRatio\": {\n \"description\": \"The video content's - display aspect ratio, which specifies the aspect ratio in which the video - should be displayed.\",\n \"format\": \"double\",\n \"type\": - \"number\"\n },\n \"widthPixels\": {\n \"type\": \"integer\",\n - \ \"description\": \"The encoded video content's width in pixels. - You can calculate the video's encoding aspect ratio as width_pixels / height_pixels.\",\n - \ \"format\": \"uint32\"\n },\n \"bitrateBps\": {\n - \ \"description\": \"The video stream's bitrate, in bits per second.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"rotation\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ]\n },\n \"heightPixels\": {\n \"type\": - \"integer\",\n \"description\": \"The encoded video content's height - in pixels.\",\n \"format\": \"uint32\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n },\n \"frameRateFps\": {\n \"type\": - \"number\",\n \"description\": \"The video stream's frame rate, in - frames per second.\",\n \"format\": \"double\"\n }\n },\n - \ \"description\": \"Information about a video stream.\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"id\": \"LiveChatMessageAuthorDetails\",\n \"properties\": - {\n \"isChatSponsor\": {\n \"description\": \"Whether the - author is a sponsor of the live chat.\",\n \"type\": \"boolean\"\n - \ },\n \"isChatOwner\": {\n \"description\": \"Whether - the author is the owner of the live chat.\",\n \"type\": \"boolean\"\n - \ },\n \"profileImageUrl\": {\n \"description\": \"The - channels's avatar URL.\",\n \"type\": \"string\"\n },\n \"isVerified\": - {\n \"description\": \"Whether the author's identity has been verified - by YouTube.\",\n \"type\": \"boolean\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"isChatModerator\": {\n \"description\": - \"Whether the author is a moderator of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel ID.\"\n },\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - display name.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"VideoFileDetailsAudioStream\": {\n \"type\": \"object\",\n \"properties\": - {\n \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"codec\": {\n \"description\": - \"The audio codec that the stream uses.\",\n \"type\": \"string\"\n - \ },\n \"bitrateBps\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The audio stream's - bitrate, in bits per second.\"\n },\n \"channelCount\": {\n - \ \"format\": \"uint32\",\n \"description\": \"The number - of audio channels that the stream contains.\",\n \"type\": \"integer\"\n - \ }\n },\n \"description\": \"Information about an audio stream.\",\n - \ \"id\": \"VideoFileDetailsAudioStream\"\n },\n \"I18nLanguageListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"I18nLanguage\"\n },\n \"description\": \"A list of supported - i18n languages. In this map, the i18n language ID is the map key, and its - value is the corresponding i18nLanguage resource.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nLanguageListResponse\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"I18nLanguageListResponse\"\n - \ },\n \"AccessPolicy\": {\n \"description\": \"Rights management - policy for YouTube resources.\",\n \"id\": \"AccessPolicy\",\n \"properties\": - {\n \"exception\": {\n \"description\": \"A list of region - codes that identify countries where the default policy do not apply.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"allowed\": {\n \"description\": - \"The value of allowed indicates whether the access to the policy is allowed - or denied by default.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoProcessingDetails\": {\n \"description\": - \"Describes processing status and progress and availability of some other - Video resource parts.\",\n \"id\": \"VideoProcessingDetails\",\n \"properties\": - {\n \"fileDetailsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether file details are - available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether video editing suggestions, which might improve video - quality or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\",\n \"type\": \"string\"\n },\n \"processingStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"description\": \"The - video's processing status. This value indicates whether YouTube was able to - process the video or if the video is still being processed.\",\n \"type\": - \"string\"\n },\n \"thumbnailsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether thumbnail - images have been generated for the video.\"\n },\n \"processingFailureReason\": - {\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"processingProgress\": {\n \"description\": \"The processingProgress - object contains information about the progress YouTube has made in processing - the video. The values are really only relevant if the video's processing status - is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"tagSuggestionsAvailability\": {\n \"description\": - \"This value indicates whether keyword (tag) suggestions are available for - the video. Tags can be added to a video's metadata to make it easier for other - users to find the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingIssuesAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether the - video processing engine has generated suggestions that might improve YouTube's - ability to process the the video, warnings that explain video processing problems, - or errors that cause video processing problems. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"SuperStickerMetadata\": - {\n \"type\": \"object\",\n \"properties\": {\n \"altTextLanguage\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the alt text is returned.\"\n },\n - \ \"stickerId\": {\n \"type\": \"string\",\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\"\n - \ },\n \"altText\": {\n \"type\": \"string\",\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\"\n }\n },\n \"id\": \"SuperStickerMetadata\"\n - \ },\n \"ChannelBannerResource\": {\n \"id\": \"ChannelBannerResource\",\n - \ \"type\": \"object\",\n \"description\": \"A channel banner returned - as the response to a channel_banner.insert call.\",\n \"properties\": - {\n \"url\": {\n \"type\": \"string\",\n \"description\": - \"The URL of this banner image.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelBannerResource\"\n - \ }\n }\n },\n \"ThumbnailSetResponse\": {\n \"id\": - \"ThumbnailSetResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"description\": \"A list of thumbnails.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#thumbnailSetResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n }\n }\n - \ },\n \"VideoRecordingDetails\": {\n \"type\": \"object\",\n \"id\": - \"VideoRecordingDetails\",\n \"properties\": {\n \"location\": - {\n \"description\": \"The geolocation information associated with - the video.\",\n \"$ref\": \"GeoPoint\"\n },\n \"recordingDate\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the video was recorded.\",\n \"format\": \"date-time\"\n - \ },\n \"locationDescription\": {\n \"description\": - \"The text description of the location where the video was recorded.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Recording information associated with the video.\"\n },\n \"InvideoTiming\": - {\n \"properties\": {\n \"durationMs\": {\n \"format\": - \"uint64\",\n \"description\": \"Defines the duration in milliseconds - for which the promotion should be displayed. If missing, the client should - use the default.\",\n \"type\": \"string\"\n },\n \"offsetMs\": - {\n \"format\": \"uint64\",\n \"description\": \"Defines - the time at which the promotion will appear. Depending on the value of type - the value of the offsetMs field will represent a time offset from the start - or from the end of the video, expressed in milliseconds.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"description\": \"Describes a timing type. If the - value is offsetFromStart, then the offsetMs field represents an offset from - the start of the video. If the value is offsetFromEnd, then the offsetMs field - represents an offset from the end of the video.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"InvideoTiming\",\n \"description\": \"Describes - a temporal position of a visual widget inside a video.\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was added to the channel.\"\n - \ }\n },\n \"description\": \"Details about a resource which - was added to a channel.\",\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"type\": \"object\"\n },\n \"VideoCategoryListResponse\": {\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n \"default\": - \"youtube#videoCategoryListResponse\"\n },\n \"pageInfo\": {\n - \ \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"description\": \"A list of video categories that can be associated - with YouTube videos. In this map, the video category ID is the map key, and - its value is the corresponding videoCategory resource.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoCategory\"\n - \ }\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoCategoryListResponse\"\n - \ },\n \"LiveStreamListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveStreamListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"description\": \"A list of live streams that match the request - criteria.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveStreamListResponse\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"properties\": {\n \"label\": {\n \"description\": - \"The localized label for this abuse report secondary reason.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of this abuse report secondary reason.\"\n - \ }\n },\n \"id\": \"VideoAbuseReportSecondaryReason\",\n - \ \"type\": \"object\"\n },\n \"VideoAbuseReportReason\": {\n \"id\": - \"VideoAbuseReportReason\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoAbuseReportReason\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n - \ },\n \"id\": {\n \"description\": \"The ID of this - abuse report reason.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"type\": \"object\"\n },\n - \ \"MemberListResponse\": {\n \"type\": \"object\",\n \"id\": - \"MemberListResponse\",\n \"properties\": {\n \"items\": {\n \"description\": - \"A list of members that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Member\"\n }\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n }\n },\n \"PlaylistItemStatus\": {\n \"properties\": - {\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"This resource's privacy status.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Information about the playlist item's privacy status.\",\n \"id\": - \"PlaylistItemStatus\"\n },\n \"CaptionSnippet\": {\n \"type\": - \"object\",\n \"id\": \"CaptionSnippet\",\n \"properties\": {\n - \ \"isAutoSynced\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n \"isEasyReader\": {\n \"description\": - \"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.\",\n - \ \"type\": \"boolean\"\n },\n \"isLarge\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the caption track - uses large text for the vision-impaired. The default value is false.\"\n },\n - \ \"language\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The language of the caption track. The property - value is a BCP-47 language tag.\",\n \"type\": \"string\"\n },\n - \ \"name\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The name of the caption track. The name is intended - to be visible to the user as an option during playback.\",\n \"type\": - \"string\"\n },\n \"status\": {\n \"description\": - \"The caption track's status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ]\n },\n \"isCC\": {\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\",\n \"type\": \"boolean\"\n - \ },\n \"failureReason\": {\n \"description\": \"The - reason that YouTube failed to process the caption track. This property is - only present if the state property's value is failed.\",\n \"enum\": - [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"isDraft\": {\n \"type\": \"boolean\",\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n },\n \"lastUpdated\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the caption - track was last updated.\",\n \"format\": \"date-time\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video associated with - the caption track. @mutable youtube.captions.insert\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"trackKind\": {\n \"description\": - \"The caption track's type.\",\n \"enum\": [\n \"standard\",\n - \ \"ASR\",\n \"forced\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"audioTrackType\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"description\": \"The - type of audio track associated with the caption track.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - a caption track, such as its language and name.\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"properties\": {\n \"imageUrl\": {\n \"description\": - \"An image of the post's author.\",\n \"type\": \"string\"\n },\n - \ \"referenceUrl\": {\n \"description\": \"The URL of the social - network post.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\",\n \"$ref\": - \"ResourceId\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The name of the social network.\",\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ]\n },\n \"author\": {\n \"description\": - \"The author of the social network post.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Details about a social network - post.\",\n \"id\": \"ActivityContentDetailsSocial\",\n \"type\": - \"object\"\n },\n \"LiveChatMessage\": {\n \"properties\": {\n - \ \"authorDetails\": {\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\",\n - \ \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatMessage\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessage\\\".\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the message.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessage\",\n \"type\": - \"object\",\n \"description\": \"A *liveChatMessage* resource represents - a chat message in a YouTube Live Chat.\"\n },\n \"MonitorStreamInfo\": - {\n \"type\": \"object\",\n \"id\": \"MonitorStreamInfo\",\n \"description\": - \"Settings and Info of the monitor stream\",\n \"properties\": {\n \"embedHtml\": - {\n \"description\": \"HTML code that embeds a player that plays - the monitor stream.\",\n \"type\": \"string\"\n },\n \"enableMonitorStream\": - {\n \"description\": \"This value determines whether the monitor - stream is enabled for the broadcast. If the monitor stream is enabled, then - YouTube will broadcast the event content on a special stream intended only - for the broadcaster's consumption. The broadcaster can use the stream to review - the event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"boolean\"\n },\n \"broadcastStreamDelayMs\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"If you have set the enableMonitorStream - property to true, then this property determines the length of the live broadcast - delay.\"\n }\n }\n },\n \"Cuepoint\": {\n \"id\": \"Cuepoint\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"cueType\": - {\n \"type\": \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ]\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The identifier - for cuepoint resource.\"\n },\n \"insertionOffsetTimeMs\": {\n - \ \"description\": \"The time when the cuepoint should be inserted - by offset to the broadcast actual start time.\",\n \"format\": \"int64\",\n - \ \"type\": \"string\"\n },\n \"durationSecs\": {\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The duration of this cuepoint.\"\n },\n \"walltimeMs\": {\n - \ \"format\": \"uint64\",\n \"description\": \"The wall clock - time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Note that there may be a 5-second end-point - resolution issue. For instance, if a cuepoint comes in for 22:03:27, we may - stuff the cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact - of HLS.\"\n },\n \"LiveChatBanSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"liveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The chat this ban is pertinent to.\"\n - \ },\n \"type\": {\n \"description\": \"The type of - ban.\",\n \"type\": \"string\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ]\n },\n \"banDurationSeconds\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n }\n - \ },\n \"id\": \"LiveChatBanSnippet\"\n },\n \"RelatedEntity\": - {\n \"type\": \"object\",\n \"id\": \"RelatedEntity\",\n \"properties\": - {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n }\n - \ },\n \"ChannelContentOwnerDetails\": {\n \"properties\": {\n \"timeLinked\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the channel was linked - to the content owner.\"\n },\n \"contentOwner\": {\n \"description\": - \"The ID of the content owner linked to the channel.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"type\": \"object\",\n \"id\": \"ChannelContentOwnerDetails\"\n - \ },\n \"TestItemTestItemSnippet\": {\n \"properties\": {},\n \"type\": - \"object\",\n \"id\": \"TestItemTestItemSnippet\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"description\": \"Information about a channel that a user subscribed - to.\"\n },\n \"LiveStreamConfigurationIssue\": {\n \"properties\": - {\n \"reason\": {\n \"type\": \"string\",\n \"description\": - \"The short-form reason for this issue.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The long-form - description of the issue and how to resolve it.\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"description\": \"The kind of error happening.\"\n - \ },\n \"severity\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"How severe this issue is to the stream.\",\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ]\n }\n },\n \"id\": \"LiveStreamConfigurationIssue\",\n - \ \"type\": \"object\"\n },\n \"CommentThread\": {\n \"id\": - \"CommentThread\",\n \"description\": \"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.\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\"\n },\n - \ \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\"\n },\n \"snippet\": - {\n \"$ref\": \"CommentThreadSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"default\": \"youtube#commentThread\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"Subscription\": {\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the subscription.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n \"default\": - \"youtube#subscription\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\",\n - \ \"$ref\": \"SubscriptionContentDetails\"\n },\n \"subscriberSnippet\": - {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n \"description\": - \"The subscriberSnippet object contains basic details about the subscriber.\"\n - \ }\n },\n \"description\": \"A *subscription* resource contains - information about a YouTube user subscription. A subscription notifies a user - when new videos are added to a channel or when another user takes one of several - actions on YouTube, such as uploading a video, rating a video, or commenting - on a video.\",\n \"type\": \"object\",\n \"id\": \"Subscription\"\n - \ },\n \"I18nLanguageSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"hl\": {\n \"description\": \"A short BCP-47 code that - uniquely identifies a language.\",\n \"type\": \"string\"\n },\n - \ \"name\": {\n \"description\": \"The human-readable name - of the language in the language itself.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Basic details about an i18n - language, such as language code and human-readable name.\",\n \"id\": - \"I18nLanguageSnippet\"\n },\n \"Activity\": {\n \"type\": \"object\",\n - \ \"description\": \"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.\",\n \"id\": \"Activity\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n \"description\": - \"The snippet object contains basic details about the activity, including - the activity's type and group ID.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"default\": \"youtube#activity\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the activity.\",\n \"type\": \"string\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n - \ \"description\": \"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.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ChannelBrandingSettings\": {\n \"properties\": {\n \"watch\": - {\n \"$ref\": \"WatchSettings\",\n \"description\": \"Branding - properties for the watch page.\"\n },\n \"hints\": {\n \"description\": - \"Additional experimental branding properties.\",\n \"items\": {\n - \ \"$ref\": \"PropertyValue\"\n },\n \"type\": - \"array\"\n },\n \"image\": {\n \"$ref\": \"ImageSettings\",\n - \ \"description\": \"Branding properties for branding images.\"\n - \ },\n \"channel\": {\n \"$ref\": \"ChannelSettings\",\n - \ \"description\": \"Branding properties for the channel view.\"\n - \ }\n },\n \"description\": \"Branding properties of a YouTube - channel.\",\n \"id\": \"ChannelBrandingSettings\",\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageDeletedDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageDeletedDetails\",\n \"properties\": {\n - \ \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"I18nRegionSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"I18nRegionSnippet\",\n \"properties\": {\n \"name\": - {\n \"type\": \"string\",\n \"description\": \"The human-readable - name of the region.\"\n },\n \"gl\": {\n \"type\": - \"string\",\n \"description\": \"The region code as a 2-letter ISO - country code.\"\n }\n },\n \"description\": \"Basic details - about an i18n region, such as region code and human-readable name.\"\n },\n - \ \"Video\": {\n \"id\": \"Video\",\n \"type\": \"object\",\n - \ \"description\": \"A *video* resource represents a YouTube video.\",\n - \ \"properties\": {\n \"localizations\": {\n \"type\": - \"object\",\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\",\n \"additionalProperties\": {\n \"$ref\": - \"VideoLocalization\"\n }\n },\n \"statistics\": {\n - \ \"description\": \"The statistics object contains statistics about - the video.\",\n \"$ref\": \"VideoStatistics\"\n },\n \"liveStreamingDetails\": - {\n \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\",\n \"$ref\": - \"VideoLiveStreamingDetails\"\n },\n \"fileDetails\": {\n \"description\": - \"The fileDetails object encapsulates information about the video file that - was uploaded to YouTube, including the file's resolution, duration, audio - and video codecs, stream bitrates, and more. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"VideoContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\"\n },\n \"suggestions\": {\n \"description\": - \"The suggestions object encapsulates suggestions that identify opportunities - to improve the video quality or the metadata for the uploaded video. This - data can only be retrieved by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n - \ },\n \"projectDetails\": {\n \"description\": \"The - projectDetails object contains information about the project specific video - metadata. b/157517979: This part was never populated after it was added. However, - it sees non-zero traffic because there is generated client code in the wild - that refers to it [1]. We keep this field and do NOT remove it because otherwise - V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the video, such as its title, description, and category.\",\n \"$ref\": - \"VideoSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#video\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the video's uploading, processing, and privacy - statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"topicDetails\": {\n \"$ref\": - \"VideoTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the video.\"\n - \ },\n \"ageGating\": {\n \"description\": \"Age restriction - details related to a video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoAgeGating\"\n },\n \"monetizationDetails\": - {\n \"$ref\": \"VideoMonetizationDetails\",\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\"\n },\n \"processingDetails\": {\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoProcessingDetails\"\n },\n \"recordingDetails\": - {\n \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\",\n \"$ref\": - \"VideoRecordingDetails\"\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the video - in an embedded player.\",\n \"$ref\": \"VideoPlayer\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the video.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n }\n }\n }\n },\n \"ThirdPartyLink\": - {\n \"type\": \"object\",\n \"description\": \"A *third party account - link* resource represents a link between a YouTube account or a channel and - an account on a third-party service.\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the third- party account link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the status of the link.\",\n \"$ref\": - \"ThirdPartyLinkStatus\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#thirdPartyLink\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"type\": \"string\"\n },\n \"linkingToken\": {\n - \ \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ThirdPartyLink\"\n },\n - \ \"ImageSettings\": {\n \"type\": \"object\",\n \"description\": - \"Branding properties for images associated with the channel.\",\n \"id\": - \"ImageSettings\",\n \"properties\": {\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"largeBrandedBannerImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n - \ \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\"\n - \ },\n \"bannerTabletExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size extra - high resolution (2560x424).\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size low resolution (320x88).\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size medium/high resolution (960x263).\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": - {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": - {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\",\n \"type\": \"string\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"smallBrandedBannerImageImapScript\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The image map script - for the small banner image.\"\n },\n \"bannerTabletImageUrl\": - {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n - \ \"type\": \"string\"\n },\n \"bannerImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n },\n \"trackingImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\"\n },\n \"bannerMobileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size (640x175).\"\n },\n \"backgroundImageUrl\": {\n - \ \"description\": \"The URL for the background image shown on the - video watch page. The image should be 1200px by 615px, with a maximum file - size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerTvImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. TV size extra high resolution (2120x1192).\"\n },\n - \ \"watchIconImageUrl\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"AbuseType\": {\n \"id\": \"AbuseType\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"SuperChatEvent\": {\n \"type\": - \"object\",\n \"id\": \"SuperChatEvent\",\n \"description\": \"A - `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#superChatEvent\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n - \ },\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the Super Chat event.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ }\n },\n \"VideoAbuseReportReasonListResponse\": {\n \"properties\": - {\n \"items\": {\n \"description\": \"A list of valid abuse - reasons that are used with `video.ReportAbuse`.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ }\n },\n \"visitorId\": {\n \"description\": - \"The `visitorId` identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"MembershipsLevelListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"MembershipsLevel\"\n },\n - \ \"description\": \"A list of pricing levels offered by a creator - to the fans.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevelListResponse\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\"\n - \ },\n \"SubscriptionSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel that the subscription belongs to.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The subscription's title.\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"The subscription's details.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the subscription was created.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\"\n }\n },\n \"description\": \"Basic details about a - subscription, including title, description and thumbnails of the subscribed - item.\",\n \"id\": \"SubscriptionSnippet\"\n },\n \"VideoProjectDetails\": - {\n \"id\": \"VideoProjectDetails\",\n \"properties\": {},\n \"type\": - \"object\",\n \"description\": \"DEPRECATED. b/157517979: This part was - never populated after it was added. However, it sees non-zero traffic because - there is generated client code in the wild that refers to it [1]. We keep - this field and do NOT remove it because otherwise V3 would return an error - when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"VideoListResponse\": {\n \"properties\": {\n \"items\": - {\n \"items\": {\n \"$ref\": \"Video\"\n },\n - \ \"type\": \"array\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"VideoListResponse\"\n },\n - \ \"LiveBroadcastSnippet\": {\n \"type\": \"object\",\n \"id\": - \"LiveBroadcastSnippet\",\n \"description\": \"Basic broadcast information.\",\n - \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's title. Note that the broadcast - represents exactly one YouTube video. You can set this field by modifying - the broadcast resource or by setting the title field of the corresponding - video resource.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the broadcast was added to YouTube's live broadcast - schedule.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"liveChatId\": {\n \"description\": \"The id - of the live chat for this broadcast.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the broadcast. For each nested object - in this object, the key is the name of the thumbnail image, and the value - is an object that contains other information about the thumbnail.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\",\n \"type\": \"string\"\n },\n \"actualStartTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast actually started. This information is only available - once the broadcast's state is live.\",\n \"format\": \"date-time\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's description. As with the title, - you can set this field by modifying the broadcast resource or by setting the - description field of the corresponding video resource.\"\n },\n \"scheduledEndTime\": - {\n \"description\": \"The date and time that the broadcast is scheduled - to end.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"isDefaultBroadcast\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\"\n },\n \"scheduledStartTime\": {\n - \ \"format\": \"date-time\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast is scheduled to start.\"\n },\n - \ \"actualEndTime\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - actually ended. This information is only available once the broadcast's state - is complete.\"\n }\n }\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"properties\": {\n \"timeLeftMs\": {\n \"type\": - \"string\",\n \"description\": \"An estimate of the amount of time, - in millseconds, that YouTube needs to finish processing the video.\",\n \"format\": - \"uint64\"\n },\n \"partsProcessed\": {\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"partsTotal\": {\n \"type\": \"string\",\n \"description\": - \"An estimate of the total number of parts that need to be processed for the - video. The number may be updated with more precise estimates while YouTube - processes the video.\",\n \"format\": \"uint64\"\n }\n },\n - \ \"description\": \"Video processing progress and completion time estimate.\",\n - \ \"id\": \"VideoProcessingDetailsProcessingProgress\",\n \"type\": - \"object\"\n },\n \"Channel\": {\n \"description\": \"A *channel* - resource contains information about a YouTube channel.\",\n \"properties\": - {\n \"contentDetails\": {\n \"description\": \"The contentDetails - object encapsulates information about the channel's content.\",\n \"$ref\": - \"ChannelContentDetails\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#channel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the channel, such as its title, description, - and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n },\n - \ \"contentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"localizations\": {\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n - \ }\n },\n \"brandingSettings\": {\n \"$ref\": - \"ChannelBrandingSettings\",\n \"description\": \"The brandingSettings - object encapsulates information about the branding of the channel.\"\n },\n - \ \"topicDetails\": {\n \"description\": \"The topicDetails - object encapsulates information about Freebase topics associated with the - channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n \"auditDetails\": - {\n \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\",\n - \ \"$ref\": \"ChannelAuditDetails\"\n },\n \"status\": - {\n \"description\": \"The status object encapsulates information - about the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel.\",\n \"type\": \"string\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ }\n },\n \"id\": \"Channel\",\n \"type\": \"object\"\n - \ },\n \"ChannelStatus\": {\n \"description\": \"JSON template for - the status part of a channel.\",\n \"properties\": {\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"longUploadsStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The long uploads status of this channel. See - https://support.google.com/youtube/answer/71673 for more information.\",\n - \ \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ]\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"isLinked\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n - \ \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"description\": \"Privacy status of the channel.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ChannelStatus\",\n - \ \"type\": \"object\"\n },\n \"PlaylistPlayer\": {\n \"id\": - \"PlaylistPlayer\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\",\n \"type\": - \"string\"\n }\n }\n },\n \"I18nRegion\": {\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n - \ \"id\": \"I18nRegion\",\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegion\\\".\",\n \"default\": \"youtube#i18nRegion\"\n - \ }\n }\n },\n \"LiveChatMessageListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"pollingIntervalMillis\": {\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The amount of time the client should wait before polling again.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatMessageListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"offlineAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the underlying stream went offline.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageListResponse\"\n - \ },\n \"ChannelContentDetails\": {\n \"properties\": {\n \"relatedPlaylists\": - {\n \"properties\": {\n \"favorites\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s favorite videos. Use the playlistItems.insert and - playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"uploads\": {\n \"description\": \"The ID of the - playlist that contains the channel\\\"s uploaded videos. Use the videos.insert - method to upload new videos and the videos.delete method to delete previously - uploaded videos.\",\n \"type\": \"string\"\n },\n - \ \"watchHistory\": {\n \"description\": \"The ID of - the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n },\n \"likes\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"watchLater\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch later playlist. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n }\n },\n - \ \"id\": \"ChannelContentDetails\",\n \"type\": \"object\",\n \"description\": - \"Details about the content of a channel.\"\n },\n \"VideoStatus\": - {\n \"description\": \"Basic details about a video category, such as - its localized title. Next Id: 18\",\n \"type\": \"object\",\n \"properties\": - {\n \"publicStatsViewable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value indicates if the extended video statistics - on the watch page can be viewed by everyone. Note that the view count, likes, - etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"embeddable\": {\n \"type\": - \"boolean\",\n \"description\": \"This value indicates if the video - can be embedded on another website. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The video's privacy status.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"rejectionReason\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"Copyright - infringement.\",\n \"Inappropriate video content.\",\n \"Duplicate - upload in the same channel.\",\n \"Terms of use violation.\",\n - \ \"Uploader account was suspended.\",\n \"Video duration - was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"description\": \"This value explains why YouTube - rejected an uploaded video. This property is only present if the uploadStatus - property indicates that the upload was rejected.\"\n },\n \"license\": - {\n \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"failureReason\": {\n \"description\": \"This - value explains why a video failed to upload. This property is only present - if the uploadStatus property indicates that the upload failed.\",\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ],\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ],\n \"type\": - \"string\"\n },\n \"publishAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the video is scheduled to publish. It can be set only if the - privacy status of the video is private..\"\n },\n \"uploadStatus\": - {\n \"enumDescriptions\": [\n \"Video has been uploaded - but not processed yet.\",\n \"Video has been successfully processed.\",\n - \ \"Processing has failed. See FailureReason.\",\n \"Video - has been rejected. See RejectionReason.\",\n \"Video has been deleted.\"\n - \ ],\n \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ],\n \"description\": \"The status of the uploaded video.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoStatus\"\n - \ },\n \"VideoStatistics\": {\n \"description\": \"Statistics about - the video, such as the number of times the video was viewed or liked.\",\n - \ \"id\": \"VideoStatistics\",\n \"type\": \"object\",\n \"properties\": - {\n \"favoriteCount\": {\n \"description\": \"The number of - users who currently have the video marked as a favorite video.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"dislikeCount\": - {\n \"description\": \"The number of users who have indicated that - they disliked the video by giving it a negative rating.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"viewCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of times the video has been viewed.\",\n \"type\": \"string\"\n },\n - \ \"likeCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of users who have indicated that they liked the video by giving - it a positive rating.\",\n \"format\": \"uint64\"\n },\n \"commentCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of comments for the video.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveBroadcastStatistics\": {\n \"type\": \"object\",\n - \ \"description\": \"Statistics about the live broadcast. These represent - a snapshot of the values at the time of the request. Statistics are only returned - for live broadcasts.\",\n \"properties\": {\n \"concurrentViewers\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n },\n - \ \"totalChatCount\": {\n \"description\": \"The total number - of live chat messages currently on the broadcast. The property and its value - will be present if the broadcast is public, has the live chat feature enabled, - and has at least one message. Note that this field will not be filled after - the broadcast ends. So this property would not identify the number of chat - messages for an archived video of a completed live broadcast.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n }\n },\n \"id\": - \"LiveBroadcastStatistics\"\n },\n \"ChannelAuditDetails\": {\n \"id\": - \"ChannelAuditDetails\",\n \"description\": \"The auditDetails object - encapsulates channel data that is relevant for YouTube Partners during the - audit process.\",\n \"properties\": {\n \"communityGuidelinesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel respects the community guidelines.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any unresolved claims.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatBan\": {\n \"id\": \"LiveChatBan\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the ban.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"default\": \"youtube#liveChatBan\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the ban.\",\n \"$ref\": - \"LiveChatBanSnippet\"\n }\n },\n \"description\": \"A `__liveChatBan__` - resource represents a ban for a YouTube live chat.\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"Information about a video that was marked as a favorite - video.\"\n },\n \"ChannelSectionSnippet\": {\n \"properties\": - {\n \"localized\": {\n \"description\": \"Localized title, - read-only.\",\n \"$ref\": \"ChannelSectionLocalization\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that published the channel section.\",\n - \ \"type\": \"string\"\n },\n \"defaultLanguage\": {\n - \ \"type\": \"string\",\n \"description\": \"The language - of the channel section's default title and description.\"\n },\n \"style\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The style of the channel section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ]\n - \ },\n \"position\": {\n \"description\": \"The position - of the channel section in the channel.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"title\": {\n \"description\": - \"The channel section's title for multiple_playlists and multiple_channels.\",\n - \ \"type\": \"string\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"description\": \"The - type of the channel section.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelSectionSnippet\",\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\"\n },\n \"VideoSnippet\": {\n \"description\": - \"Basic details about a video, including title, description, uploader, thumbnails - and category.\",\n \"type\": \"object\",\n \"id\": \"VideoSnippet\",\n - \ \"properties\": {\n \"categoryId\": {\n \"description\": - \"The YouTube video category associated with the video.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the video was uploaded.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that the video was uploaded to.\",\n \"type\": \"string\"\n - \ },\n \"defaultAudioLanguage\": {\n \"description\": - \"The default_audio_language property specifies the language spoken in the - video's default audio track.\",\n \"type\": \"string\"\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the videos's default snippet.\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The video's description. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"localized\": {\n \"description\": \"Localized - snippet selected with the hl parameter. If no such localization exists, this - field is populated with the default snippet. (Read-only)\",\n \"$ref\": - \"VideoLocalization\"\n },\n \"liveBroadcastContent\": {\n \"type\": - \"string\",\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ]\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"tags\": {\n \"type\": - \"array\",\n \"description\": \"A list of keyword tags associated - with the video. Tags may contain spaces.\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n }\n },\n \"ThirdPartyLinkSnippet\": - {\n \"description\": \"Basic information about a third party account - link, including its type and type-specific information.\",\n \"properties\": - {\n \"channelToStoreLink\": {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n - \ \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\"\n },\n \"type\": - {\n \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Type of the link named after the entities that - are being linked.\"\n }\n },\n \"id\": \"ThirdPartyLinkSnippet\",\n - \ \"type\": \"object\"\n },\n \"MembershipsLevelSnippet\": {\n \"id\": - \"MembershipsLevelSnippet\",\n \"properties\": {\n \"levelDetails\": - {\n \"description\": \"Details about the pricing level.\",\n \"$ref\": - \"LevelDetails\"\n },\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoContentDetails\": - {\n \"id\": \"VideoContentDetails\",\n \"properties\": {\n \"dimension\": - {\n \"description\": \"The value of dimension indicates whether the - video is available in 3D or in 2D.\",\n \"type\": \"string\"\n },\n - \ \"definition\": {\n \"enum\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"description\": \"The value of definition indicates - whether the video is available in high definition or only in standard definition.\",\n - \ \"type\": \"string\"\n },\n \"countryRestriction\": - {\n \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\",\n \"$ref\": - \"AccessPolicy\"\n },\n \"caption\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"The value of captions indicates - whether the video has captions or not.\",\n \"enum\": [\n \"true\",\n - \ \"false\"\n ]\n },\n \"licensedContent\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of is_license_content indicates whether the video is licensed content.\"\n - \ },\n \"regionRestriction\": {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\"\n },\n \"projection\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ],\n \"description\": \"Specifies - the projection format of the video.\"\n },\n \"contentRating\": - {\n \"$ref\": \"ContentRating\",\n \"description\": \"Specifies - the ratings that the video received under various rating schemes.\"\n },\n - \ \"duration\": {\n \"description\": \"The length of the video. - The tag value is an ISO 8601 duration in the format PT#M#S, in which the letters - PT indicate that the value specifies a period of time, and the letters M and - S refer to length in minutes and seconds, respectively. The # characters preceding - the M and S letters are both integers that specify the number of minutes (or - seconds) of the video. For example, a value of PT15M51S indicates that the - video is 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n - \ },\n \"hasCustomThumbnail\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether the video uploader has provided - a custom thumbnail image for the video. This property is only visible to the - video uploader.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Details about the content of a YouTube Video.\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"description\": \"Details about a channel bulletin post.\",\n \"id\": - \"ActivityContentDetailsBulletin\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource associated with a bulletin post. @mutable youtube.activities.insert\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"CommentThreadListResponse\": {\n \"id\": \"CommentThreadListResponse\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"CommentThread\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of comment threads that match the request criteria.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n \"default\": - \"youtube#commentThreadListResponse\"\n }\n },\n \"type\": - \"object\"\n },\n \"CommentSnippet\": {\n \"id\": \"CommentSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a comment, such as its author and text.\",\n \"properties\": {\n \"viewerRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ],\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"description\": \"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.\"\n },\n \"moderationStatus\": {\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\"\n },\n \"parentId\": {\n \"description\": - \"The unique id of the parent comment, only set for replies.\",\n \"type\": - \"string\"\n },\n \"textOriginal\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"authorDisplayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the user who posted the comment.\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comment refers to, if any.\"\n },\n \"updatedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was last updated.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"authorChannelId\": {\n \"$ref\": - \"CommentSnippetAuthorChannelId\"\n },\n \"canRate\": {\n \"description\": - \"Whether the current viewer can rate this comment.\",\n \"type\": - \"boolean\"\n },\n \"likeCount\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The total number - of likes this comment has received.\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the comment was originally published.\",\n \"type\": - \"string\"\n },\n \"textDisplay\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n }\n },\n \"LiveStreamSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The stream's title. - The value must be between 1 and 128 characters long.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The stream's - description. The value cannot be longer than 10000 characters.\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the stream was created.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\"\n },\n \"isDefaultStream\": {\n \"type\": - \"boolean\"\n }\n },\n \"id\": \"LiveStreamSnippet\"\n },\n - \ \"VideoRating\": {\n \"id\": \"VideoRating\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about rating of a video.\",\n \"properties\": - {\n \"rating\": {\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"Rating of - a video.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n }\n }\n },\n - \ \"ActivityContentDetailsPromotedItem\": {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"type\": \"object\",\n \"description\": \"Details about a resource - which is being promoted.\",\n \"properties\": {\n \"clickTrackingUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user clicked through on this promoted item.\",\n \"type\": - \"string\"\n },\n \"descriptionText\": {\n \"type\": - \"string\",\n \"description\": \"The text description to accompany - the promoted item.\"\n },\n \"creativeViewUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user was shown this promoted item.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the promoted video.\"\n },\n \"forecastingUrl\": - {\n \"description\": \"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.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"impressionUrl\": {\n \"description\": \"The list of impression - URLs. The client should ping all of these URLs to indicate that the user was - shown this promoted item.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"ctaType\": - {\n \"type\": \"string\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\"\n },\n \"adTag\": {\n \"description\": - \"The URL the client should fetch to request a promoted item.\",\n \"type\": - \"string\"\n },\n \"customCtaButtonText\": {\n \"description\": - \"The custom call-to-action button text. If specified, it will override the - default button text for the cta_type.\",\n \"type\": \"string\"\n - \ },\n \"destinationUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should direct the user to, - if the user chooses to visit the advertiser's website.\"\n }\n }\n - \ },\n \"VideoLiveStreamingDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"Details about the live streaming metadata.\",\n \"properties\": - {\n \"actualStartTime\": {\n \"description\": \"The time that - the broadcast actually started. This value will not be available until the - broadcast begins.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"scheduledEndTime\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The time that the broadcast is scheduled to end. If the value is empty or - the property is not present, then the broadcast is scheduled to contiue indefinitely.\"\n - \ },\n \"actualEndTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The time - that the broadcast actually ended. This value will not be available until - the broadcast is over.\"\n },\n \"activeLiveChatId\": {\n \"description\": - \"The ID of the currently active live chat attached to this video. This field - is filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\",\n \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"description\": \"The time that the broadcast is scheduled to - begin.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"concurrentViewers\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of viewers currently watching the - broadcast. The property and its value will be present if the broadcast has - current viewers and the broadcast owner has not hidden the viewcount for the - video. Note that YouTube stops tracking the number of concurrent viewers for - a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"format\": \"uint64\"\n }\n },\n - \ \"id\": \"VideoLiveStreamingDetails\"\n },\n \"VideoMonetizationDetails\": - {\n \"id\": \"VideoMonetizationDetails\",\n \"description\": \"Details - about monetization of a YouTube Video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"access\": {\n \"description\": \"The value of access - indicates whether the video can be monetized or not.\",\n \"$ref\": - \"AccessPolicy\"\n }\n }\n },\n \"VideoPlayer\": {\n \"description\": - \"Player to be used for a video playback.\",\n \"id\": \"VideoPlayer\",\n - \ \"properties\": {\n \"embedWidth\": {\n \"type\": \"string\",\n - \ \"description\": \"The embed width\",\n \"format\": \"int64\"\n - \ },\n \"embedHeight\": {\n \"format\": \"int64\",\n - \ \"type\": \"string\"\n },\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"CommentThreadSnippet\": {\n \"id\": \"CommentThreadSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a comment thread.\",\n \"properties\": {\n \"canReply\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the video the comments - refer to, if any. No video_id implies a channel discussion comment.\"\n },\n - \ \"isPublic\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\"\n },\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"totalReplyCount\": - {\n \"description\": \"The total number of replies (not including - the top level comment).\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"topLevelComment\": {\n \"description\": - \"The top level comment of this thread.\",\n \"$ref\": \"Comment\"\n - \ }\n }\n },\n \"Member\": {\n \"type\": \"object\",\n - \ \"id\": \"Member\",\n \"description\": \"A *member* resource represents - a member for a YouTube channel. A member provides recurring monetary support - to a creator and receives special benefits.\",\n \"properties\": {\n - \ \"kind\": {\n \"default\": \"youtube#member\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"MemberSnippet\",\n \"description\": \"The snippet object contains - basic details about the member.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"AbuseReport\": {\n \"type\": \"object\",\n \"id\": - \"AbuseReport\",\n \"properties\": {\n \"description\": {\n \"type\": - \"string\"\n },\n \"abuseTypes\": {\n \"items\": {\n - \ \"$ref\": \"AbuseType\"\n },\n \"type\": \"array\"\n - \ },\n \"subject\": {\n \"$ref\": \"Entity\"\n },\n - \ \"relatedEntities\": {\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n },\n \"type\": \"array\"\n }\n - \ }\n },\n \"ChannelConversionPing\": {\n \"properties\": {\n - \ \"context\": {\n \"description\": \"Defines the context of - the ping.\",\n \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"conversionUrl\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"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.\",\n \"id\": \"ChannelConversionPing\"\n - \ },\n \"SearchResultSnippet\": {\n \"id\": \"SearchResultSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The value - that YouTube uses to uniquely identify the channel that published the resource - that the search result identifies.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"liveBroadcastContent\": {\n \"description\": \"It indicates - if the resource (video or channel) has upcoming/active live broadcast content. - Or it's \\\"none\\\" if there is not any upcoming/active live broadcasts.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The creation date and time of - the resource that the search result identifies.\"\n },\n \"description\": - {\n \"description\": \"A description of the search result.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"description\": - \"The title of the channel that published the resource that the search result - identifies.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The title of the search result.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - a search result, including title, description and thumbnails of the item referenced - by the search result.\"\n },\n \"IngestionInfo\": {\n \"type\": - \"object\",\n \"id\": \"IngestionInfo\",\n \"properties\": {\n \"backupIngestionAddress\": - {\n \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\",\n - \ \"type\": \"string\"\n },\n \"rtmpsIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"streamName\": - {\n \"description\": \"The stream name that YouTube assigns to the - video stream.\",\n \"type\": \"string\"\n },\n \"ingestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The primary - ingestion URL that you should use to stream video to YouTube. You must stream - video to this URL. Depending on which application or tool you use to encode - your video stream, you may need to enter the stream URL and stream name separately - or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of backupIngestionAddress in order to stream via RTMPS. Not applicable to - non-RTMP streams.\"\n }\n },\n \"description\": \"Describes - information necessary for ingesting an RTMP, HTTP, or SRT stream.\"\n },\n - \ \"VideoAbuseReport\": {\n \"id\": \"VideoAbuseReport\",\n \"type\": - \"object\",\n \"properties\": {\n \"reasonId\": {\n \"type\": - \"string\",\n \"description\": \"The high-level, or primary, reason - that the content is abusive. The value is an abuse report reason ID.\"\n },\n - \ \"language\": {\n \"description\": \"The language that the - content was viewed in.\",\n \"type\": \"string\"\n },\n \"secondaryReasonId\": - {\n \"type\": \"string\",\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\"\n },\n \"comments\": {\n \"type\": \"string\",\n - \ \"description\": \"Additional comments regarding the abuse report.\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"PageInfo\": {\n \"properties\": {\n - \ \"resultsPerPage\": {\n \"format\": \"int32\",\n \"description\": - \"The number of results included in the API response.\",\n \"type\": - \"integer\"\n },\n \"totalResults\": {\n \"description\": - \"The total number of results in the result set.\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n }\n },\n \"description\": - \"Paging details for lists of resources, including total number of items available - and number of resources returned in a single page.\",\n \"type\": \"object\",\n - \ \"id\": \"PageInfo\"\n },\n \"ChannelConversionPings\": {\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"properties\": {\n \"pings\": - {\n \"type\": \"array\",\n \"description\": \"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.\",\n - \ \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ }\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelConversionPings\"\n },\n \"ChannelListResponse\": {\n \"id\": - \"ChannelListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"pageInfo\": {\n \"description\": \"General pagination - information.\",\n \"$ref\": \"PageInfo\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelListResponse\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Channel\"\n },\n \"type\": \"array\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatModerator\": {\n \"description\": - \"A *liveChatModerator* resource represents a moderator for a YouTube live - chat. A chat moderator has the ability to ban/unban users from a chat, remove - message, etc.\",\n \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveChatModerator\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModerator\\\".\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"id\": \"LiveChatModerator\"\n },\n \"LevelDetails\": {\n \"id\": - \"LevelDetails\",\n \"properties\": {\n \"displayName\": {\n \"description\": - \"The name that should be used when referring to this level.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"Entity\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"url\": {\n \"type\": \"string\"\n },\n - \ \"typeId\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"Entity\"\n },\n \"VideoLocalization\": - {\n \"type\": \"object\",\n \"description\": \"Localized versions - of certain video properties (e.g. title).\",\n \"id\": \"VideoLocalization\",\n - \ \"properties\": {\n \"description\": {\n \"description\": - \"Localized version of the video's description.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"description\": \"Localized version - of the video's title.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ChannelSettings\": {\n \"id\": \"ChannelSettings\",\n \"description\": - \"Branding properties for the channel view.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"title\": {\n \"description\": - \"Specifies the channel title.\",\n \"type\": \"string\"\n },\n - \ \"showRelatedChannels\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether related channels should be proposed.\"\n },\n \"country\": - {\n \"description\": \"The country of the channel.\",\n \"type\": - \"string\"\n },\n \"keywords\": {\n \"description\": - \"Lists keywords associated with the channel, comma-separated.\",\n \"type\": - \"string\"\n },\n \"moderateComments\": {\n \"description\": - \"Whether user-submitted comments left on the channel page need to be approved - by the channel owner to be publicly visible.\",\n \"type\": \"boolean\"\n - \ },\n \"defaultTab\": {\n \"type\": \"string\",\n \"description\": - \"Which content tab users should see when viewing the channel.\"\n },\n - \ \"featuredChannelsUrls\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"The list of featured channels.\"\n },\n \"profileColor\": - {\n \"description\": \"A prominent color that can be rendered on - this channel page.\",\n \"type\": \"string\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"type\": \"string\",\n \"description\": \"The ID for - a Google Analytics account to track and measure traffic to the channels.\"\n - \ },\n \"unsubscribedTrailer\": {\n \"description\": - \"The trailer of the channel, for users that are not subscribers.\",\n \"type\": - \"string\"\n },\n \"showBrowseView\": {\n \"description\": - \"Whether the tab to browse the videos should be displayed.\",\n \"type\": - \"boolean\"\n },\n \"description\": {\n \"description\": - \"Specifies the channel description.\",\n \"type\": \"string\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoCategorySnippet\": {\n \"properties\": - {\n \"channelId\": {\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n - \ \"type\": \"string\",\n \"description\": \"The YouTube - channel that created the video category.\"\n },\n \"assignable\": - {\n \"type\": \"boolean\"\n },\n \"title\": {\n \"description\": - \"The video category's title.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Basic details - about a video category, such as its localized title.\",\n \"id\": \"VideoCategorySnippet\"\n - \ },\n \"Playlist\": {\n \"properties\": {\n \"localizations\": - {\n \"type\": \"object\",\n \"description\": \"Localizations - for different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"PlaylistLocalization\"\n }\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlist\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the playlist, such as its title and description.\",\n \"$ref\": - \"PlaylistSnippet\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the playlist.\"\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the playlist - in an embedded player.\",\n \"$ref\": \"PlaylistPlayer\"\n },\n - \ \"status\": {\n \"$ref\": \"PlaylistStatus\",\n \"description\": - \"The status object contains status information for the playlist.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"PlaylistContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - like video count.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"Playlist\",\n \"description\": \"A *playlist* resource represents a - YouTube playlist. A playlist is a collection of videos that can be viewed - sequentially and shared with other users. A playlist can contain up to 200 - videos, and YouTube does not limit the number of playlists that each user - creates. By default, playlists are publicly visible to other users, but playlists - can be public or private. YouTube also uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods.\"\n - \ },\n \"I18nRegionListResponse\": {\n \"id\": \"I18nRegionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#i18nRegionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveChatSuperStickerDetails\": {\n \"properties\": - {\n \"amountDisplayString\": {\n \"type\": \"string\",\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\"\n - \ },\n \"amountMicros\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made.\"\n },\n \"tier\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n },\n \"superStickerMetadata\": {\n - \ \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n }\n },\n \"id\": - \"LiveChatSuperStickerDetails\",\n \"type\": \"object\"\n },\n \"MembershipsDuration\": - {\n \"type\": \"object\",\n \"properties\": {\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member across all levels.\",\n \"type\": \"string\"\n },\n - \ \"memberTotalDurationMonths\": {\n \"format\": \"int32\",\n - \ \"description\": \"The cumulative time the user has been a member - across all levels in complete months (the time is rounded down to the nearest - integer).\",\n \"type\": \"integer\"\n }\n },\n \"id\": - \"MembershipsDuration\"\n },\n \"CommentThreadReplies\": {\n \"id\": - \"CommentThreadReplies\",\n \"description\": \"Comments written in (direct - or indirect) reply to the top level comment.\",\n \"properties\": {\n - \ \"comments\": {\n \"description\": \"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.\",\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageRetractedDetails\": {\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"ChannelStatistics\": {\n \"id\": \"ChannelStatistics\",\n - \ \"properties\": {\n \"subscriberCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of subscribers that the channel has.\"\n },\n \"videoCount\": - {\n \"description\": \"The number of videos uploaded to the channel.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"commentCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of comments for the channel.\",\n \"type\": \"string\"\n - \ },\n \"viewCount\": {\n \"description\": \"The number - of times the channel has been viewed.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"hiddenSubscriberCount\": - {\n \"description\": \"Whether or not the number of subscribers is - shown for this user.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Statistics about a channel: - number of subscribers, number of videos in the channel, etc.\"\n },\n \"ThumbnailDetails\": - {\n \"properties\": {\n \"default\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The default image for this resource.\"\n },\n - \ \"medium\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The medium quality image for this resource.\"\n },\n \"high\": - {\n \"description\": \"The high quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"maxres\": {\n \"description\": - \"The maximum resolution quality image for this resource.\",\n \"$ref\": - \"Thumbnail\"\n },\n \"standard\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The standard quality image for this resource.\"\n - \ }\n },\n \"description\": \"Internal representation of thumbnails - for a YouTube resource.\",\n \"id\": \"ThumbnailDetails\",\n \"type\": - \"object\"\n },\n \"ChannelLocalization\": {\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel's description.\"\n },\n \"title\": - {\n \"description\": \"The localized strings for channel's title.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Channel localization setting\",\n \"id\": \"ChannelLocalization\",\n - \ \"type\": \"object\"\n },\n \"TestItem\": {\n \"id\": \"TestItem\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"gaia\": {\n - \ \"type\": \"string\",\n \"format\": \"int64\"\n },\n - \ \"featuredPart\": {\n \"type\": \"boolean\"\n },\n - \ \"id\": {\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"TestItemTestItemSnippet\"\n }\n }\n },\n - \ \"LiveChatNewSponsorDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"isUpgrade\": {\n \"description\": \"If the viewer just - had upgraded from a lower level. For viewers that were not members at the - time of purchase, this field is false.\",\n \"type\": \"boolean\"\n - \ },\n \"memberLevelName\": {\n \"description\": \"The - name of the Level that the viewer just had joined. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveChatNewSponsorDetails\"\n },\n \"PlaylistContentDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"itemCount\": - {\n \"description\": \"The number of videos in the playlist.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n - \ },\n \"id\": \"PlaylistContentDetails\"\n },\n \"WatchSettings\": - {\n \"type\": \"object\",\n \"properties\": {\n \"backgroundColor\": - {\n \"type\": \"string\",\n \"description\": \"The text - color for the video watch page's branded area.\"\n },\n \"featuredPlaylistId\": - {\n \"description\": \"An ID that uniquely identifies a playlist - that displays next to the video player.\",\n \"type\": \"string\"\n - \ },\n \"textColor\": {\n \"description\": \"The background - color for the video watch page's branded area.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Branding properties for the - watch. All deprecated.\",\n \"id\": \"WatchSettings\"\n },\n \"LiveBroadcastContentDetails\": - {\n \"description\": \"Detailed settings of a broadcast.\",\n \"properties\": - {\n \"projection\": {\n \"type\": \"string\",\n \"enum\": - [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The projection format of this broadcast. - This defaults to rectangular.\"\n },\n \"enableEmbed\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast video can be played in an embedded player. - If you choose to archive the video (using the enableArchive property), this - setting will also apply to the archived video.\"\n },\n \"stereoLayout\": - {\n \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n - \ \"leftRight\",\n \"topBottom\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\"\n },\n - \ \"enableDvr\": {\n \"description\": \"This setting determines - whether viewers can access DVR controls while watching the video. DVR controls - enable the viewer to control the video playback experience by pausing, rewinding, - or fast forwarding content. The default value for this property is true. *Important:* - You must set the value to true and also set the enableArchive property's value - to true if you want to make playback available immediately after the broadcast - ends.\",\n \"type\": \"boolean\"\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"enableContentEncryption\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether YouTube should enable content encryption for the broadcast.\"\n - \ },\n \"recordFromStart\": {\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\",\n \"type\": \"boolean\"\n - \ },\n \"enableLowLatency\": {\n \"description\": \"Indicates - whether this broadcast has low latency enabled.\",\n \"type\": \"boolean\"\n - \ },\n \"enableAutoStop\": {\n \"description\": \"This - setting indicates whether auto stop is enabled for this broadcast. The default - value for this property is false. This setting can only be used by Events.\",\n - \ \"type\": \"boolean\"\n },\n \"boundStreamId\": {\n - \ \"type\": \"string\",\n \"description\": \"This value uniquely - identifies the live stream bound to the broadcast.\"\n },\n \"mesh\": - {\n \"type\": \"string\",\n \"description\": \"The mesh - for projecting the video if projection is mesh. The mesh value must be a UTF-8 - string containing the base-64 encoding of 3D mesh data that follows the Spherical - Video V2 RFC specification for an mshp box, excluding the box size and type - but including the following four reserved zero bytes for the version and flags.\",\n - \ \"format\": \"byte\"\n },\n \"monitorStream\": {\n - \ \"$ref\": \"MonitorStreamInfo\",\n \"description\": \"The - monitorStream object contains information about the monitor stream, which - the broadcaster can use to review the event content before the broadcast stream - is shown publicly.\"\n },\n \"closedCaptionsType\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ]\n },\n \"startWithSlate\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - the broadcast should automatically begin with an in-stream slate when you - update the broadcast's status to live. After updating the status, you then - need to send a liveCuepoints.insert request that sets the cuepoint's eventState - to end to remove the in-stream slate and make your broadcast stream visible - to viewers.\"\n },\n \"enableAutoStart\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - auto start is enabled for this broadcast. The default value for this property - is false. This setting can only be used by Events.\"\n },\n \"latencyPreference\": - {\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"type\": \"string\",\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\"\n },\n - \ \"enableClosedCaptions\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n - \ }\n },\n \"id\": \"LiveBroadcastContentDetails\",\n \"type\": - \"object\"\n },\n \"LiveBroadcastStatus\": {\n \"description\": - \"Live broadcast state.\",\n \"id\": \"LiveBroadcastStatus\",\n \"type\": - \"object\",\n \"properties\": {\n \"recordingStatus\": {\n \"description\": - \"The broadcast's recording status.\",\n \"enumDescriptions\": [\n - \ \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ]\n },\n \"lifeCycleStatus\": {\n \"enum\": - [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"enumDescriptions\": [\n \"No value or the - value is unknown.\",\n \"Incomplete settings, but otherwise valid\",\n - \ \"Complete settings\",\n \"Visible only to partner, - may need special UI treatment\",\n \"Viper is recording; this means - the \\\"clock\\\" is running\",\n \"The broadcast is finished.\",\n - \ \"This broadcast was removed by admin action\",\n \"Transition - into TESTING has been requested\",\n \"Transition into LIVE has - been requested\"\n ],\n \"type\": \"string\"\n },\n - \ \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's privacy status. Note that the - broadcast represents exactly one YouTube video, so the privacy settings are - identical to those supported for videos. In addition, you can set this field - by modifying the broadcast resource or by setting the privacyStatus field - of the corresponding video resource.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\",\n \"description\": \"This field will be set to True - if the creator declares the broadcast to be kids only: go/live-cw-work.\"\n - \ },\n \"liveBroadcastPriority\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Low priority - broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ],\n \"description\": \"Priority of the live broadcast - event (internal state).\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ]\n - \ },\n \"madeForKids\": {\n \"description\": \"Whether - the broadcast is made for kids or not, decided by YouTube instead of the creator. - This field is read only.\",\n \"type\": \"boolean\"\n }\n - \ }\n },\n \"SearchListResponse\": {\n \"id\": \"SearchListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"Pagination information for token pagination.\",\n - \ \"items\": {\n \"$ref\": \"SearchResult\"\n }\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#searchListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"regionCode\": - {\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelSectionLocalization\": {\n \"id\": \"ChannelSectionLocalization\",\n - \ \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for channel section's title.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"ChannelSection localization setting\"\n },\n \"LiveStreamContentDetails\": - {\n \"properties\": {\n \"closedCaptionsIngestionUrl\": {\n \"type\": - \"string\",\n \"description\": \"The ingestion URL where the closed - captions of this stream are sent.\"\n },\n \"isReusable\": {\n - \ \"description\": \"Indicates whether the stream is reusable, which - means that it can be bound to multiple broadcasts. It is common for broadcasters - to reuse the same stream for many different broadcasts if those broadcasts - occur at different times. If you set this value to false, then the stream - will not be reusable, which means that it can only be bound to one broadcast. - Non-reusable streams differ from reusable streams in the following ways: - - A non-reusable stream can only be bound to one broadcast. - A non-reusable - stream might be deleted by an automated process after the broadcast ends. - - The liveStreams.list method does not list non-reusable streams if you call - the method and set the mine parameter to true. The only way to use that method - to retrieve the resource for a non-reusable stream is to use the id parameter - to identify the stream. \",\n \"type\": \"boolean\"\n }\n - \ },\n \"id\": \"LiveStreamContentDetails\",\n \"type\": \"object\",\n - \ \"description\": \"Detailed settings of a stream.\"\n },\n \"ChannelSectionContentDetails\": - {\n \"id\": \"ChannelSectionContentDetails\",\n \"description\": - \"Details about a channelsection, including playlists and channels.\",\n \"type\": - \"object\",\n \"properties\": {\n \"playlists\": {\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"channels\": - {\n \"type\": \"array\",\n \"description\": \"The channel - ids for type multiple_channels.\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n }\n },\n \"SuperChatEventSnippet\": - {\n \"id\": \"SuperChatEventSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"commentText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text contents of the comment left by the - user.\"\n },\n \"superStickerMetadata\": {\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"description\": \"The purchase amount, in micros of the purchase - currency. e.g., 1 is represented as 1000000.\",\n \"format\": \"uint64\"\n - \ },\n \"supporterDetails\": {\n \"description\": \"Details - about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n - \ \"displayString\": {\n \"description\": \"A rendered string - that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). The - string is rendered for the given language.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": \"Channel - id where the event occurred.\",\n \"type\": \"string\"\n },\n - \ \"isSuperStickerEvent\": {\n \"type\": \"boolean\",\n \"description\": - \"True if this event is a Super Sticker event.\"\n },\n \"createdAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the event occurred.\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\",\n \"type\": \"string\"\n - \ },\n \"messageType\": {\n \"description\": \"The tier - for the paid message, which is based on the amount of money spent to purchase - the message.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ }\n }\n },\n \"PlaylistItemSnippet\": {\n \"properties\": - {\n \"videoOwnerChannelTitle\": {\n \"description\": \"Channel - title for the channel this video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the playlist - item belongs to.\"\n },\n \"resourceId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"$ref\": \"ResourceId\",\n \"description\": \"The id object - contains information that can be used to uniquely identify the resource that - is included in the playlist as the playlist item.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the item was added to the playlist.\",\n \"type\": - \"string\"\n },\n \"position\": {\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist - item is in.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"description\": {\n \"description\": \"The item's - description.\",\n \"type\": \"string\"\n },\n \"videoOwnerChannelId\": - {\n \"description\": \"Channel id for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the user that added the item to the playlist.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"description\": \"The item's - title.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist item. 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.\"\n }\n - \ },\n \"id\": \"PlaylistItemSnippet\",\n \"description\": \"Basic - details about a playlist, including title, description and thumbnails. Basic - details of a YouTube Playlist item provided by the author. Next ID: 15\",\n - \ \"type\": \"object\"\n },\n \"PlaylistSnippet\": {\n \"id\": - \"PlaylistSnippet\",\n \"properties\": {\n \"channelTitle\": {\n - \ \"type\": \"string\",\n \"description\": \"The channel - title of the channel that the video belongs to.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the playlist's default title and description.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the playlist.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"description\": \"The playlist's - title.\",\n \"type\": \"string\",\n \"annotations\": {\n - \ \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the playlist - was created.\"\n },\n \"tags\": {\n \"description\": - \"Keyword tags associated with the playlist.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"thumbnailVideoId\": {\n \"description\": \"Note: if the - playlist has a custom thumbnail, this field will not be populated. The video - id selected by the user that will be used as the thumbnail of this playlist. - This field defaults to the first publicly viewable video in the playlist, - if: 1. The user has never selected a video to be the thumbnail of the playlist. - 2. The user selects a video to be the thumbnail, and then removes that video - from the playlist. 3. The user selects a non-owned video to be the thumbnail, - but that video becomes private, or gets deleted.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"description\": {\n \"description\": \"The playlist's - description.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"$ref\": \"PlaylistLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about a playlist, including - title, description and thumbnails.\"\n },\n \"ContentRating\": {\n \"id\": - \"ContentRating\",\n \"description\": \"Ratings schemes. The country-specific - ratings are mostly for movies and shows. LINT.IfChange\",\n \"type\": - \"object\",\n \"properties\": {\n \"ecbmctRating\": {\n \"description\": - \"Rating system in Turkey - Evaluation and Classification Board of the Ministry - of Culture and Tourism\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ]\n },\n \"menaMpaaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ]\n },\n \"nfrcRating\": {\n \"enum\": [\n - \ \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Bulgarian - National Film Center.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ]\n },\n - \ \"mpaaRating\": {\n \"description\": \"The video's Motion - Picture Association of America (MPAA) rating.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n - \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n - \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n - \ \"! X\",\n \"\"\n ]\n },\n \"bmukkRating\": - {\n \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ],\n \"description\": \"The - video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"ifcoRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n - \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n - \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n - \ \"ifco18\",\n \"ifcoUnrated\"\n ]\n },\n - \ \"anatelRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n - \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n - \ ],\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\",\n \"type\": \"string\"\n },\n \"rteRating\": - {\n \"description\": \"The video's rating from Ireland's Raidi\xF3 - Teilif\xEDs \xC9ireann.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"enum\": [\n - \ \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ]\n },\n \"nbcRating\": {\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\",\n - \ \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"oflcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"M\",\n \"R13\",\n - \ \"R15\",\n \"R16\",\n \"R18\",\n \"\",\n - \ \"RP13\",\n \"RP16\",\n \"RP18\"\n ],\n - \ \"description\": \"The video's Office of Film and Literature Classification - (OFLC - New Zealand) rating.\",\n \"enum\": [\n \"oflcUnspecified\",\n - \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n - \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n - \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n - \ \"oflcRp16\",\n \"oflcRp18\"\n ],\n \"type\": - \"string\"\n },\n \"mtrcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Movie - and Television Review and Classification Board (Philippines).\",\n \"enum\": - [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n - \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n - \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"rcnofRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Hungarian - Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ]\n },\n \"kmrbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n - \ \"kmrb12plus\",\n \"kmrb15plus\",\n \"kmrbTeenr\",\n - \ \"kmrbR\",\n \"kmrbUnrated\"\n ]\n },\n - \ \"nkclvRating\": {\n \"description\": \"The video's rating - from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"kijkwijzerRating\": - {\n \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\",\n \"type\": - \"string\"\n },\n \"fpbRating\": {\n \"enum\": [\n - \ \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n - \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n - \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ]\n },\n \"medietilsynetRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from Medietilsynet, - the Norwegian Media Authority.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ]\n },\n \"acbRating\": {\n \"enum\": [\n - \ \"acbUnspecified\",\n \"acbE\",\n \"acbP\",\n - \ \"acbC\",\n \"acbG\",\n \"acbPg\",\n \"acbM\",\n - \ \"acbMa15plus\",\n \"acbR18plus\",\n \"acbUnrated\"\n - \ ],\n \"description\": \"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.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"agcomRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from Italy's - Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n \"enum\": - [\n \"agcomUnspecified\",\n \"agcomT\",\n \"agcomVm14\",\n - \ \"agcomVm18\",\n \"agcomUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ]\n },\n \"fmocRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ],\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ],\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\",\n \"type\": - \"string\"\n },\n \"pefilmRating\": {\n \"enum\": [\n - \ \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Peru.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"PT\",\n - \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"cncRating\": - {\n \"description\": \"Rating system in France - Commission de classification - cinematographique\",\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"tvpgRating\": {\n \"description\": \"The video's TV Parental - Guidelines (TVPG) rating.\",\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"smaisRating\": {\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Iceland.\"\n },\n \"bfvcRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Thailand's Board of Film - and Video Censors.\",\n \"type\": \"string\",\n \"enum\": - [\n \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ]\n },\n \"mcstRating\": {\n \"enum\": [\n - \ \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ],\n \"description\": \"The video's rating system for Vietnam - - MCST\",\n \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"ytRating\": {\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"czfilmRating\": {\n - \ \"description\": \"The video's rating in the Czech Republic.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ]\n },\n - \ \"mdaRating\": {\n \"description\": \"The video's rating - from Singapore's Media Development Authority (MDA) and, specifically, it's - Board of Film Censors (BFC).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG13\",\n \"NC16\",\n - \ \"M18\",\n \"R21\",\n \"\"\n ],\n - \ \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"kfcbRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GE\",\n \"PG\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Kenya Film Classification Board.\",\n \"enum\": [\n \"kfcbUnspecified\",\n - \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n - \ \"kfcbR\",\n \"kfcbUnrated\"\n ]\n },\n - \ \"ilfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Israel.\"\n },\n \"cbfcRating\": {\n - \ \"type\": \"string\",\n \"description\": \"The video's - Central Board of Film Certification (CBFC - India) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ],\n \"enum\": [\n - \ \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ]\n },\n \"fcbmRating\": {\n \"enum\": [\n - \ \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"description\": \"The - video's rating from Malaysia's Film Censorship Board.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ]\n },\n \"mccypRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\"\n },\n \"nmcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The National - Media Council ratings system for United Arab Emirates.\",\n \"enum\": - [\n \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n - \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n - \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n - \ ]\n },\n \"egfilmRating\": {\n \"description\": - \"The video's rating in Egypt.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ]\n },\n \"djctqRatingReasons\": - {\n \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ]\n },\n \"description\": \"Reasons that explain - why the video received its DJCQT (Brazil) rating.\"\n },\n \"fcoRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"I\",\n \"IIA\",\n \"IIB\",\n \"II\",\n - \ \"III\",\n \"\"\n ],\n \"description\": - \"The video's rating from Hong Kong's Office for Film, Newspaper and Article - Administration.\",\n \"enum\": [\n \"fcoUnspecified\",\n - \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n - \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n - \ ]\n },\n \"moctwRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n - \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ]\n },\n \"mekuRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Finland's Kansallinen - Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n \"enum\": - [\n \"mekuUnspecified\",\n \"mekuS\",\n \"meku7\",\n - \ \"meku12\",\n \"meku16\",\n \"meku18\",\n - \ \"mekuUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"mibacRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Ministero - dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\"\n },\n - \ \"catvRating\": {\n \"description\": \"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.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n - \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ]\n },\n - \ \"incaaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"ATP (Apta para todo publico)\",\n \"13 (Solo apta - para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para mayores de - 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 a\xF1os)\",\n - \ \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"description\": \"The video's INCAA - (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.\",\n - \ \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n - \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n - \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"chvrsRating\": {\n \"enum\": [\n - \ \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Canadian Home Video - Rating System (CHVRS) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"14A\",\n \"18A\",\n - \ \"R\",\n \"E\",\n \"\"\n ]\n },\n - \ \"russiaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"0+\",\n \"6+\",\n \"12+\",\n \"16+\",\n - \ \"18+\",\n \"\"\n ],\n \"enum\": - [\n \"russiaUnspecified\",\n \"russia0\",\n \"russia6\",\n - \ \"russia12\",\n \"russia16\",\n \"russia18\",\n - \ \"russiaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's National Film Registry of the Russian - Federation (MKRF - Russia) rating.\"\n },\n \"nfvcbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"18\",\n \"RE\",\n \"\"\n ],\n - \ \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Nigeria's National Film - and Video Censors Board.\"\n },\n \"lsfRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n - \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n - \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"description\": \"The video's rating from Indonesia's - Lembaga Sensor Film.\"\n },\n \"resorteviolenciaRating\": {\n - \ \"enum\": [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"description\": \"The video's rating in Venezuela.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"cscfRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"AL\",\n \"A\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Luxembourg's - Commission de surveillance de la classification des films (CSCF).\",\n \"enum\": - [\n \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n - \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"nbcplRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Poland.\"\n },\n \"grfilmRating\": {\n - \ \"description\": \"The video's rating in Greece.\",\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n - \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n - \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n - \ ]\n },\n \"bbfcRating\": {\n \"description\": - \"The video's British Board of Film Classification (BBFC) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ],\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"fskRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"FSK 0\",\n - \ \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\",\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ]\n },\n \"skfilmRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P2\",\n \"P5\",\n \"P8\",\n - \ \"\"\n ],\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Slovakia.\"\n },\n \"cceRating\": {\n - \ \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"description\": \"The video's rating from Portugal's - Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\"\n },\n \"catvfrRating\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ]\n },\n \"eefilmRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating in Estonia.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ]\n },\n \"cnaRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Romania's CONSILIUL NATIONAL - AL AUDIOVIZUALULUI (CNA).\",\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"mocRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"description\": \"The - video's Ministerio de Cultura (Colombia) rating.\"\n },\n \"rtcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n - \ \"D\",\n \"\"\n ],\n \"enum\": [\n - \ \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ],\n \"description\": \"The - video's General Directorate of Radio, Television and Cinematography (Mexico) - rating.\",\n \"type\": \"string\"\n },\n \"eirinRating\": - {\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ],\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n - \ \"type\": \"string\"\n },\n \"csaRating\": {\n \"description\": - \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, - which rates broadcast content.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"Interdiction\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ]\n },\n \"mpaatRating\": {\n \"enum\": [\n - \ \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"type\": \"string\",\n \"description\": - \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n - \ },\n \"smsaRating\": {\n \"enum\": [\n \"smsaUnspecified\",\n - \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n - \ \"smsa15\",\n \"smsaUnrated\"\n ],\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"All ages\",\n \"7\",\n \"11\",\n \"15\",\n - \ \"\"\n ]\n },\n \"icaaRating\": {\n \"description\": - \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales - (ICAA - Spain) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"APTA\",\n \"7\",\n \"12\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X\",\n \"\"\n - \ ],\n \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"chfilmRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Switzerland.\",\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n - \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n - \ \"chfilm18\",\n \"chfilmUnrated\"\n ]\n },\n - \ \"djctqRating\": {\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\"\n },\n \"mccaaRating\": - {\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n - \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n - \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n - \ \"mccaa18\",\n \"mccaaUnrated\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ]\n },\n \"cicfRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Commission - de Contr\xF4le des Films (Belgium).\",\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ]\n },\n \"fpbRatingReasons\": {\n - \ \"items\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"South Africa rating content descriptors.\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"type\": \"string\"\n },\n \"type\": - \"array\",\n \"description\": \"Reasons that explain why the video - received its FPB (South Africa) rating.\"\n },\n \"cccRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ]\n }\n - \ }\n },\n \"CaptionListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Caption\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of captions that match the request criteria.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#captionListResponse\"\n - \ }\n },\n \"id\": \"CaptionListResponse\"\n },\n \"LiveChatMessageSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"membershipGiftingDetails\": {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n - \ \"description\": \"Details about the Membership Gifting event, this - is only set if the type is 'membershipGiftingEvent'.\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"superChatDetails\": - {\n \"description\": \"Details about the Super Chat event, this is - only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n - \ },\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"giftMembershipReceivedDetails\": {\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\",\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"fanFundingEventDetails\": {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n - \ \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\"\n },\n \"hasDisplayContent\": - {\n \"description\": \"Whether the message has display content that - should be displayed to users.\",\n \"type\": \"boolean\"\n },\n - \ \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n - \ \"description\": \"Details about the New Member Announcement event, - this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" - is the new term for \\\"sponsor\\\".\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the message was orignally - published.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"superStickerDetails\": {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n - \ \"description\": \"Details about the Super Sticker event, this is - only set if the type is 'superStickerEvent'.\"\n },\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n },\n \"type\": {\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The type of - message, this will always be present, it determines the contents of the message - as well as which fields will be present.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"authorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the user that authored - this message, this field is not always filled. textMessageEvent - the user - that wrote the message fanFundingEvent - the user that funded the broadcast - newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n },\n \"displayMessage\": - {\n \"type\": \"string\",\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n }\n },\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"Next ID: 33\"\n },\n \"LiveBroadcastListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"default\": - \"youtube#liveBroadcastListResponse\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"A list of broadcasts that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n }\n },\n \"id\": \"LiveBroadcastListResponse\"\n - \ },\n \"GeoPoint\": {\n \"id\": \"GeoPoint\",\n \"type\": - \"object\",\n \"description\": \"Geographical coordinates of a point, - in WGS84.\",\n \"properties\": {\n \"longitude\": {\n \"description\": - \"Longitude in degrees.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n },\n \"latitude\": {\n \"type\": \"number\",\n - \ \"description\": \"Latitude in degrees.\",\n \"format\": - \"double\"\n },\n \"altitude\": {\n \"format\": \"double\",\n - \ \"type\": \"number\",\n \"description\": \"Altitude above - the reference ellipsoid, in meters.\"\n }\n }\n },\n \"ChannelSectionTargeting\": - {\n \"id\": \"ChannelSectionTargeting\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"languages\": {\n \"description\": - \"The language the channel section is targeting.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"countries\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The country the channel section is targeting.\"\n },\n \"regions\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The region the - channel section is targeting.\"\n }\n },\n \"description\": - \"ChannelSection targeting setting.\"\n },\n \"ActivityContentDetailsLike\": - {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the rated resource.\",\n \"$ref\": \"ResourceId\"\n - \ }\n },\n \"description\": \"Information about a resource - that received a positive (like) rating.\",\n \"id\": \"ActivityContentDetailsLike\"\n - \ },\n \"SubscriptionSubscriberSnippet\": {\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"properties\": {\n \"title\": {\n \"description\": - \"The title of the subscriber.\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"description\": \"The description of - the subscriber.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"Thumbnails - for this subscriber.\"\n },\n \"channelId\": {\n \"description\": - \"The channel ID of the subscriber.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Basic details - about a subscription's subscriber including title, description, channel ID - and thumbnails.\"\n },\n \"ActivityContentDetailsRecommendation\": {\n - \ \"description\": \"Information that identifies the recommended resource.\",\n - \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"properties\": {\n \"seedResourceId\": {\n \"description\": - \"The seedResourceId object contains information about the resource that caused - the recommendation.\",\n \"$ref\": \"ResourceId\"\n },\n \"reason\": - {\n \"enum\": [\n \"reasonUnspecified\",\n \"videoFavorited\",\n - \ \"videoLiked\",\n \"videoWatched\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that the resource is recommended to the user.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\",\n \"$ref\": \"ResourceId\"\n }\n }\n },\n - \ \"SubscriptionListResponse\": {\n \"properties\": {\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"description\": - \"A list of subscriptions that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Subscription\"\n - \ }\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"SubscriptionListResponse\"\n - \ },\n \"VideoCategory\": {\n \"description\": \"A *videoCategory* - resource identifies a category that has been or could be associated with uploaded - videos.\",\n \"id\": \"VideoCategory\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video category.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoCategory\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"VideoCategorySnippet\",\n \"description\": \"The snippet object - contains basic details about the video category, including its title.\"\n - \ }\n }\n },\n \"ChannelTopicDetails\": {\n \"id\": - \"ChannelTopicDetails\",\n \"type\": \"object\",\n \"description\": - \"Freebase topic information related to the channel.\",\n \"properties\": - {\n \"topicCategories\": {\n \"description\": \"A list of - Wikipedia URLs that describe the channel's content.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"topicIds\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\"\n }\n - \ }\n },\n \"MembershipsLevel\": {\n \"description\": \"A *membershipsLevel* - resource represents an offer made by YouTube creators for their fans. Users - can become members of the channel by joining one of the available levels. - They will provide recurring monetary support and receives special benefits.\",\n - \ \"id\": \"MembershipsLevel\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the memberships level.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"MembershipsLevelSnippet\",\n \"description\": - \"The snippet object contains basic details about the level.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#membershipsLevel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcast\": - {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#liveBroadcast\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the event's status.\",\n \"$ref\": - \"LiveBroadcastStatus\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the event, including its title, description, - start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the broadcast.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LiveBroadcast\",\n \"description\": \"A *liveBroadcast* - resource represents an event that will be streamed, via live video, on YouTube.\",\n - \ \"type\": \"object\"\n },\n \"ChannelSnippet\": {\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The channel's title.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the channel's default - title and description.\"\n },\n \"localized\": {\n \"$ref\": - \"ChannelLocalization\",\n \"description\": \"Localized title and - description, read-only.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails in your application, make - sure that your code uses the image URLs exactly as they are returned in API - responses. For example, your application should not use the http domain instead - of the https domain in a URL returned in an API response. Beginning in July - 2018, channel thumbnail URLs will only be available in the https domain, which - is how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\"\n },\n \"description\": {\n - \ \"type\": \"string\",\n \"description\": \"The description - of the channel.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the channel was created.\"\n },\n \"customUrl\": - {\n \"type\": \"string\",\n \"description\": \"The custom - url of the channel.\"\n },\n \"country\": {\n \"type\": - \"string\",\n \"description\": \"The country of the channel.\"\n - \ }\n },\n \"description\": \"Basic details about a channel, - including title, description and thumbnails.\",\n \"id\": \"ChannelSnippet\",\n - \ \"type\": \"object\"\n },\n \"ThirdPartyLinkStatus\": {\n \"type\": - \"object\",\n \"description\": \"The third-party link status object contains - information about the status of the link.\",\n \"properties\": {\n \"linkStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"unknown\",\n - \ \"failed\",\n \"pending\",\n \"linked\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"id\": - \"ThirdPartyLinkStatus\"\n },\n \"VideoAbuseReportReasonSnippet\": {\n - \ \"id\": \"VideoAbuseReportReasonSnippet\",\n \"description\": \"Basic - details about a video category, such as its localized title.\",\n \"properties\": - {\n \"secondaryReasons\": {\n \"items\": {\n \"$ref\": - \"VideoAbuseReportSecondaryReason\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The secondary reasons associated with this reason, - if any are available. (There might be 0 or more.)\"\n },\n \"label\": - {\n \"description\": \"The localized label belonging to this abuse - report reason.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"Thumbnail\": {\n \"properties\": {\n \"width\": - {\n \"format\": \"uint32\",\n \"description\": \"(Optional) - Width of the thumbnail image.\",\n \"type\": \"integer\"\n },\n - \ \"url\": {\n \"type\": \"string\",\n \"description\": - \"The thumbnail image's URL.\"\n },\n \"height\": {\n \"format\": - \"uint32\",\n \"description\": \"(Optional) Height of the thumbnail - image.\",\n \"type\": \"integer\"\n }\n },\n \"description\": - \"A thumbnail is an image representing a YouTube resource.\",\n \"type\": - \"object\",\n \"id\": \"Thumbnail\"\n },\n \"ResourceId\": {\n - \ \"description\": \"A resource id is a generic reference that points - to another YouTube resource.\",\n \"properties\": {\n \"playlistId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the referred resource, if that resource - is a playlist. This property is only present if the resourceId.kind value - is youtube#playlist.\"\n },\n \"kind\": {\n \"description\": - \"The type of the API resource.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the referred resource, if that resource is a video. This - property is only present if the resourceId.kind value is youtube#video.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a channel. This property - is only present if the resourceId.kind value is youtube#channel.\"\n }\n - \ },\n \"id\": \"ResourceId\",\n \"type\": \"object\"\n },\n - \ \"VideoGetRatingResponse\": {\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of ratings that match the request criteria.\",\n - \ \"items\": {\n \"$ref\": \"VideoRating\"\n }\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#videoGetRatingResponse\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoGetRatingResponse\"\n - \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"properties\": - {\n \"memberLevelName\": {\n \"description\": \"The name of - the Level at which the viever is a member. The Level names are defined by - the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"userComment\": - {\n \"description\": \"The comment added by the member to this Member - Milestone Chat. This field is empty for messages without a comment from the - member.\",\n \"type\": \"string\"\n },\n \"memberMonth\": - {\n \"format\": \"uint32\",\n \"description\": \"The total - amount of months (rounded up) the viewer has been a member that granted them - this Member Milestone Chat. This is the same number of months as is being - displayed to YouTube users.\",\n \"type\": \"integer\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"ActivityListResponse\": {\n \"type\": \"object\",\n \"id\": - \"ActivityListResponse\",\n \"properties\": {\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Activity\"\n }\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"default\": \"youtube#activityListResponse\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n }\n }\n },\n \"I18nLanguage\": {\n \"type\": - \"object\",\n \"id\": \"I18nLanguage\",\n \"description\": \"An - *i18nLanguage* resource identifies a UI language currently supported by YouTube.\",\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the i18n language.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n language, such as language code and human-readable name.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nLanguage\"\n - \ }\n }\n },\n \"PlaylistItemContentDetails\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistItemContentDetails\",\n \"properties\": - {\n \"endAt\": {\n \"description\": \"The time, measured in - seconds from the start of the video, when the video should stop playing. (The - playlist owner can specify the times when the video should start and stop - playing when the video is played in the context of the playlist.) By default, - assume that the video.endTime is the end of the video.\",\n \"type\": - \"string\"\n },\n \"startAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\",\n \"type\": \"string\"\n },\n - \ \"videoPublishedAt\": {\n \"description\": \"The date and - time that the video was published to YouTube.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"note\": {\n \"type\": - \"string\",\n \"description\": \"A user-generated note for this item.\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify a video. To retrieve the video resource, - set the id query parameter to this value in your API request.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatModeratorListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - moderators that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"LiveChatModerator\"\n }\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatModeratorListResponse\"\n - \ },\n \"CommentSnippetAuthorChannelId\": {\n \"type\": \"object\",\n - \ \"id\": \"CommentSnippetAuthorChannelId\",\n \"properties\": {\n - \ \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"The id of the author's YouTube channel, if any.\"\n - \ },\n \"PlaylistItem\": {\n \"id\": \"PlaylistItem\",\n \"properties\": - {\n \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"default\": \"youtube#playlistItem\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the playlist item.\"\n },\n \"contentDetails\": {\n - \ \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n - \ },\n \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist item, such as its title and position in the playlist.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A *playlistItem* - resource identifies another resource, such as a video, that is included in - a playlist. In addition, the playlistItem resource contains details about - the included resource that pertain specifically to how that resource is used - in that playlist. YouTube uses playlists to identify special collections of - videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods. For example, if - a user gives a positive rating to a video, you would insert that video into - the liked videos playlist for that user's channel.\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Information about - the uploaded video.\",\n \"id\": \"ActivityContentDetailsUpload\",\n - \ \"type\": \"object\"\n },\n \"PlaylistListResponse\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistListResponse\",\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of playlists that match the request criteria\",\n \"items\": - {\n \"$ref\": \"Playlist\"\n }\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlistListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n }\n },\n \"MembershipsDurationAtLevel\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsDurationAtLevel\",\n - \ \"properties\": {\n \"memberTotalDurationMonths\": {\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n },\n \"memberSince\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the user became a continuous member for the given level.\"\n - \ },\n \"level\": {\n \"description\": \"Pricing level - ID.\",\n \"type\": \"string\"\n }\n }\n }\n },\n - \ \"protocol\": \"rest\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"basePath\": \"\",\n \"resources\": {\n \"membershipsLevels\": {\n - \ \"methods\": {\n \"list\": {\n \"response\": {\n \"$ref\": - \"MembershipsLevelListResponse\"\n },\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"id\": \"youtube.membershipsLevels.list\",\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"path\": \"youtube/v3/membershipsLevels\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"parameters\": {\n \"videoCaption\": {\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ],\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"forContentOwner\": - {\n \"type\": \"boolean\",\n \"description\": \"Search - owned by a content owner.\",\n \"location\": \"query\"\n },\n - \ \"relatedToVideoId\": {\n \"location\": \"query\",\n - \ \"description\": \"Search related to a resource.\",\n \"type\": - \"string\"\n },\n \"videoDuration\": {\n \"enum\": - [\n \"videoDurationUnspecified\",\n \"any\",\n - \ \"short\",\n \"medium\",\n \"long\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter video search results based on their duration. - This is the default value.\",\n \"Only include videos that - are less than four minutes long.\",\n \"Only include videos - that are between four and 20 minutes long (inclusive).\",\n \"Only - include videos longer than 20 minutes.\"\n ],\n \"description\": - \"Filter on the duration of the videos.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"channelType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"description\": \"Add - a filter on the channel search.\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ]\n },\n \"videoDefinition\": - {\n \"type\": \"string\",\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"description\": \"Filter on the definition of the videos.\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"regionCode\": {\n \"type\": \"string\",\n \"description\": - \"Display the content as seen by viewers in this country.\",\n \"location\": - \"query\"\n },\n \"topicId\": {\n \"location\": - \"query\",\n \"description\": \"Restrict results to a particular - topic.\",\n \"type\": \"string\"\n },\n \"publishedBefore\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on resources published before this date.\",\n \"format\": - \"google-datetime\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"description\": \"Restrict results - to a particular set of resource types from One Platform.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Filter on resources belonging to this channelId.\",\n - \ \"location\": \"query\"\n },\n \"videoSyndicated\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos, syndicated or not.\",\n \"Only retrieve syndicated - videos.\"\n ],\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"description\": - \"Filter on syndicated videos.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"videoType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"description\": \"Filter on videos of a specific - type.\",\n \"location\": \"query\",\n \"enum\": - [\n \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ]\n },\n \"forMine\": - {\n \"location\": \"query\",\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"location\": - \"query\"\n },\n \"q\": {\n \"location\": - \"query\",\n \"description\": \"Textual search terms to match.\",\n - \ \"type\": \"string\"\n },\n \"location\": - {\n \"description\": \"Filter on location of the video\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"eventType\": - {\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Filter on the livestream status of the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ]\n },\n \"locationRadius\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on distance from the location (specified above).\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true,\n \"type\": - \"string\"\n },\n \"videoCategoryId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on videos in a specific category.\"\n },\n \"videoEmbeddable\": - {\n \"description\": \"Filter on embeddable videos.\",\n \"location\": - \"query\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoLicense\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"any\",\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"description\": \"Filter on the license of - the videos.\",\n \"enumDescriptions\": [\n \"Return - all videos, regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ]\n },\n \"safeSearch\": - {\n \"default\": \"moderate\",\n \"enumDescriptions\": - [\n \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"enum\": - [\n \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Indicates whether the search results should - include restricted content as well as standard content.\"\n },\n - \ \"forDeveloper\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Restrict - the search to only retrieve videos uploaded using the project id of the authenticated - user.\"\n },\n \"order\": {\n \"location\": - \"query\",\n \"description\": \"Sort order of the results.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Resources - are sorted in reverse chronological order based on the date they were created.\",\n - \ \"Resources are sorted from highest to lowest rating.\",\n - \ \"Resources are sorted from highest to lowest number of views.\",\n - \ \"Resources are sorted based on their relevance to the search - query. This is the default value for this parameter.\",\n \"Resources - are sorted alphabetically by title.\",\n \"Channels are sorted - in descending order of their number of uploaded videos.\"\n ],\n - \ \"default\": \"relevance\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"type\": \"string\"\n },\n \"relevanceLanguage\": - {\n \"description\": \"Return results relevant to this language.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"videoDimension\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ],\n \"description\": - \"Filter on 3d videos.\"\n },\n \"publishedAfter\": - {\n \"description\": \"Filter on resources published after this - date.\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"SearchListResponse\"\n },\n \"description\": \"Retrieves - a list of search resources\",\n \"path\": \"youtube/v3/search\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/search\",\n \"id\": \"youtube.search.list\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"youtube\": {\n \"resources\": - {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"httpMethod\": \"PUT\",\n \"response\": {\n - \ \"$ref\": \"CommentThread\"\n },\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"parameterOrder\": [],\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Updates - an existing resource.\",\n \"id\": \"youtube.youtube.v3.updateCommentThreads\"\n - \ }\n }\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/i18nRegions\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/i18nRegions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the i18nRegion resource properties that the API response will include. Set - the parameter value to snippet.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"hl\": - {\n \"type\": \"string\",\n \"default\": \"en_US\",\n - \ \"location\": \"query\"\n }\n }\n }\n - \ }\n },\n \"captions\": {\n \"methods\": {\n \"update\": - {\n \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n - \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ }\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is on behalf of.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"supportsMediaUpload\": - true,\n \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"id\": \"youtube.captions.update\"\n },\n \"list\": - {\n \"id\": \"youtube.captions.list\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/captions\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ],\n \"parameters\": - {\n \"onBehalfOf\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"ID of - the Google+ Page for the channel that the request is on behalf of.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"Returns the captions with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"Returns - the captions for the specified video.\"\n },\n \"part\": - {\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/captions\"\n },\n - \ \"insert\": {\n \"parameters\": {\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is be on behalf of\",\n - \ \"location\": \"query\"\n },\n \"sync\": - {\n \"location\": \"query\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"type\": \"boolean\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the caption resource parts that the API response will - include. Set the parameter value to snippet.\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.insert\",\n - \ \"supportsMediaUpload\": true,\n \"description\": \"Inserts - a new resource into this collection.\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/captions\"\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ }\n },\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ]\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"httpMethod\": \"POST\"\n },\n \"download\": {\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/captions/{id}\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"tlang\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"tlang is the language code; - machine translate the captions into this language.\"\n },\n \"tfmt\": - {\n \"type\": \"string\",\n \"description\": \"Convert - the captions into this format. Supported options are sbv, srt, and vtt.\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"path\",\n \"description\": \"The - ID of the caption track to download, required for One Platform.\"\n },\n - \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"useMediaDownloadService\": - true,\n \"supportsMediaDownload\": true,\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"id\": \"youtube.captions.download\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Downloads a caption track.\"\n - \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.captions.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"path\": \"youtube/v3/captions\",\n \"parameters\": {\n - \ \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n }\n }\n }\n },\n \"channelBanners\": - {\n \"methods\": {\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"path\": - \"youtube/v3/channelBanners/insert\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\"\n },\n \"onBehalfOfContentOwner\": {\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [],\n \"id\": - \"youtube.channelBanners.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"supportsMediaUpload\": true,\n \"mediaUpload\": - {\n \"maxSize\": \"6291456\",\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/channelBanners/insert\",\n \"multipart\": - true\n }\n }\n }\n }\n }\n },\n - \ \"comments\": {\n \"methods\": {\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.comments.list\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"path\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"textFormat\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"default\": \"html\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"The requested text format for the returned comments.\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ]\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comments with the given IDs for - One Platform.\",\n \"repeated\": true\n },\n \"maxResults\": - {\n \"minimum\": \"1\",\n \"maximum\": \"100\",\n - \ \"format\": \"uint32\",\n \"default\": \"20\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies a comma-separated list of one or more comment resource - properties that the API response will include.\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"parentId\": - {\n \"description\": \"Returns replies to the specified comment. - Note, currently YouTube features only one level of replies (ie replies to - top level comments). However replies to replies may be supported in the future.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/comments\",\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"id\": \"youtube.comments.insert\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\"\n }\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"delete\": {\n \"id\": \"youtube.comments.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"httpMethod\": \"DELETE\",\n \"path\": - \"youtube/v3/comments\"\n },\n \"markAsSpam\": {\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.comments.markAsSpam\",\n \"flatPath\": - \"youtube/v3/comments/markAsSpam\",\n \"description\": \"Expresses - the caller's opinion that one or more comments should be flagged as spam.\",\n - \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Flags the comments with the given IDs as - spam in the caller's opinion.\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"setModerationStatus\": {\n \"description\": - \"Sets the moderation status of one or more comments.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.comments.setModerationStatus\",\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ],\n \"path\": - \"youtube/v3/comments/setModerationStatus\",\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"moderationStatus\": - {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"required\": true,\n \"description\": \"Specifies - the requested moderation status. Note, comments can be in statuses, which - are not available through this call. For example, this call does not allow - to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"type\": \"string\"\n - \ },\n \"banAuthor\": {\n \"default\": \"false\",\n - \ \"description\": \"If set to true the author of the comment - gets added to the ban list. This means all future comments of the author will - autmomatically be rejected. Only valid in combination with STATUS_REJECTED.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\",\n \"repeated\": true\n }\n }\n - \ },\n \"update\": {\n \"description\": \"Updates an - existing resource.\",\n \"request\": {\n \"$ref\": \"Comment\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\"\n }\n - \ },\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"channels\": {\n \"methods\": {\n \"update\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.channels.update\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/channels\",\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"path\": \"youtube/v3/channels\",\n - \ \"request\": {\n \"$ref\": \"Channel\"\n },\n - \ \"description\": \"Updates an existing resource.\"\n },\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"id\": \"youtube.channels.list\",\n \"path\": - \"youtube/v3/channels\",\n \"parameters\": {\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the ids of channels owned by the authenticated - user.\"\n },\n \"categoryId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the channels within the specified guide category ID.\"\n },\n - \ \"hl\": {\n \"description\": \"Stands for \\\"host - language\\\". Specifies the localization language of the metadata to be filled - into snippet.localized. The field is filled with the default metadata if there - is no localization in the specified language. The parameter value must be - a language code included in the list returned by the i18nLanguages.list method - (e.g. en_US, es_MX).\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\"\n },\n \"part\": {\n - \ \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"mySubscribers\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the channels subscribed to the authenticated user\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the channels with the specified IDs.\"\n - \ },\n \"forUsername\": {\n \"description\": - \"Return the channel associated with a YouTube username.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"managedByMe\": - {\n \"location\": \"query\",\n \"description\": - \"Return the channels managed by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"flatPath\": \"youtube/v3/channels\"\n }\n - \ }\n },\n \"subscriptions\": {\n \"methods\": {\n \"insert\": - {\n \"response\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"id\": \"youtube.subscriptions.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"repeated\": true\n }\n },\n \"request\": - {\n \"$ref\": \"Subscription\"\n },\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"POST\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"id\": \"youtube.subscriptions.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/subscriptions\"\n - \ },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.subscriptions.list\",\n \"parameters\": - {\n \"maxResults\": {\n \"maximum\": \"50\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"format\": \"uint32\"\n - \ },\n \"forChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions to the subset of - these channels that the authenticated user is subscribed to.\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"description\": \"Flag for returning the subscriptions - of the authenticated user.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"myRecentSubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"mySubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the subscribers of the given channel - owner.\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"order\": - {\n \"default\": \"relevance\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - order of the returned subscriptions\",\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ]\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the subscriptions of the - given channel owner.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"Return the subscriptions with the - given IDs for Stubby or Apiary.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"response\": - {\n \"$ref\": \"SubscriptionListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\"\n - \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"delete\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"id\": \"youtube.liveBroadcasts.delete\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"Broadcast to delete.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Delete a given broadcast.\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\"\n },\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"id\": - \"youtube.liveBroadcasts.insert\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"description\": \"Inserts a new - stream for the authenticated user.\"\n },\n \"update\": {\n - \ \"description\": \"Updates an existing broadcast for the authenticated - user.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"id\": \"youtube.liveBroadcasts.update\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n }\n },\n \"bind\": - {\n \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"description\": \"Bind a broadcast to a stream.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"repeated\": - true\n },\n \"streamId\": {\n \"description\": - \"Stream to bind, if not set unbind the current one.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"Broadcast - to bind to the stream\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"path\": \"youtube/v3/liveBroadcasts/bind\"\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieve the list of broadcasts - associated with the given channel.\",\n \"parameters\": {\n \"broadcastStatus\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"description\": \"Return broadcasts - with a certain status, e.g. active broadcasts.\",\n \"type\": - \"string\",\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ]\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"minimum\": \"0\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"broadcastType\": {\n \"default\": - \"event\",\n \"description\": \"Return only broadcasts with the - selected type.\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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, status and statistics.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"pageToken\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Return - broadcasts with the given ids from Stubby or Apiary.\",\n \"repeated\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"LiveBroadcastListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"id\": \"youtube.liveBroadcasts.list\"\n },\n \"insertCuepoint\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts/cuepoint\",\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"description\": \"Insert cuepoints in a broadcast\",\n \"parameterOrder\": - [],\n \"parameters\": {\n \"id\": {\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\"\n - \ },\n \"transition\": {\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"broadcastStatus\",\n - \ \"id\",\n \"part\"\n ],\n \"description\": - \"Transition a broadcast to a given status.\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n \"location\": \"query\"\n },\n \"broadcastStatus\": - {\n \"enum\": [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"The status - to which the broadcast is going to transition.\",\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ]\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to transition.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n }\n }\n }\n - \ },\n \"playlists\": {\n \"methods\": {\n \"delete\": {\n - \ \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.playlists.delete\"\n },\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.playlists.list\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the playlists owned by - the specified channel ID.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"id\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\"\n },\n - \ \"hl\": {\n \"location\": \"query\",\n \"description\": - \"Return content in specified language\",\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the playlists owned by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"minimum\": - \"0\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/playlists\"\n },\n \"update\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.playlists.update\",\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"path\": \"youtube/v3/playlists\"\n - \ },\n \"insert\": {\n \"id\": \"youtube.playlists.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlists\",\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/playlists\"\n - \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"insert\": {\n \"description\": \"Inserts a new resource - into this collection.\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.thirdPartyLinks.insert\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\"\n }\n }\n },\n \"list\": - {\n \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - response will include. Supported values are linkingToken, status, and snippet.\",\n - \ \"location\": \"query\"\n },\n \"linkingToken\": - {\n \"description\": \"Get a third party link with the given - linking token.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"description\": - \"Get a third party link of the given type.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.thirdPartyLinks.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n - \ },\n \"update\": {\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Updates - an existing resource.\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\",\n \"required\": true\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"PUT\"\n },\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.thirdPartyLinks.delete\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"Do not use. Required for compatibility.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"linkingToken\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"Delete - the partner links with the given linking token.\"\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"type\": {\n \"required\": - true,\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Type - of the link to be deleted.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ]\n }\n },\n - \ \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n - \ ]\n }\n }\n },\n \"liveChatBans\": {\n \"methods\": - {\n \"insert\": {\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatBan\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\"\n },\n \"delete\": {\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"description\": - \"Deletes a chat ban.\",\n \"id\": \"youtube.liveChatBans.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n }\n }\n }\n },\n \"abuseReports\": - {\n \"methods\": {\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"AbuseReport\"\n - \ },\n \"request\": {\n \"$ref\": \"AbuseReport\"\n - \ },\n \"path\": \"youtube/v3/abuseReports\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"repeated\": - true\n }\n },\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/abuseReports\"\n }\n }\n },\n \"liveChatMessages\": - {\n \"methods\": {\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"LiveChatMessage\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.liveChatMessages.insert\"\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"hl\": {\n \"description\": \"Specifies the localization - language in which the system messages should be returned.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"maximum\": \"2000\",\n \"default\": - \"500\",\n \"minimum\": \"200\"\n },\n \"liveChatId\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - id of the live chat for which comments should be returned.\"\n },\n - \ \"profileImageSize\": {\n \"location\": \"query\",\n - \ \"maximum\": \"720\",\n \"minimum\": \"16\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the liveChatComment resource parts that the - API response will include. Supported values are id and snippet.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.liveChatMessages.list\",\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n }\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"description\": - \"Deletes a chat message.\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"id\": \"youtube.liveChatMessages.delete\",\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"watermarks\": {\n \"methods\": {\n - \ \"unset\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"path\": \"youtube/v3/watermarks/unset\",\n \"flatPath\": - \"youtube/v3/watermarks/unset\",\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Allows removal of channel watermark.\",\n \"id\": - \"youtube.watermarks.unset\"\n },\n \"set\": {\n \"mediaUpload\": - {\n \"maxSize\": \"10485760\",\n \"protocols\": {\n - \ \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/watermarks/set\"\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"id\": \"youtube.watermarks.set\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"flatPath\": - \"youtube/v3/watermarks/set\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"description\": \"Allows upload of watermark image - and setting it for a channel.\",\n \"supportsMediaUpload\": true,\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the ChannelSections with the given IDs for Stubby or Apiary.\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return content in specified language\"\n - \ },\n \"mine\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the ChannelSections owned by the authenticated user.\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.channelSections.list\",\n \"flatPath\": \"youtube/v3/channelSections\"\n - \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.channelSections.delete\",\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/channelSections\",\n \"description\": - \"Deletes a resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/channelSections\"\n - \ },\n \"update\": {\n \"path\": \"youtube/v3/channelSections\",\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\",\n \"id\": \"youtube.channelSections.update\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.channelSections.insert\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"path\": \"youtube/v3/channelSections\"\n - \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"insert\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n }\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"id\": \"youtube.liveChatModerators.delete\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Deletes a chat moderator.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\"\n },\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"parameters\": {\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"liveChatId\": {\n \"description\": - \"The id of the live chat for which moderators should be returned.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"id\": \"youtube.liveChatModerators.list\"\n }\n }\n - \ },\n \"thumbnails\": {\n \"methods\": {\n \"set\": {\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"id\": - \"youtube.thumbnails.set\",\n \"parameterOrder\": [\n \"videoId\"\n - \ ],\n \"path\": \"youtube/v3/thumbnails/set\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"2097152\"\n },\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"Returns the Thumbnail with the - given video IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"supportsMediaUpload\": - true,\n \"flatPath\": \"youtube/v3/thumbnails/set\"\n }\n - \ }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": {\n - \ \"list\": {\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"en-US\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the videoCategory resource parts that the API response - will include. Supported values are id and snippet.\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\"\n }\n }\n },\n \"superChatEvents\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.superChatEvents.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/superChatEvents\",\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the superChatEvent resource parts that the - API response will include. This parameter is currently not supported.\",\n - \ \"required\": true,\n \"repeated\": true\n },\n - \ \"hl\": {\n \"description\": \"Return rendered funding - amounts in specified language.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"1\",\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"type\": \"integer\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n }\n - \ }\n }\n },\n \"activities\": {\n \"methods\": {\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"path\": \"youtube/v3/activities\",\n \"response\": {\n - \ \"$ref\": \"ActivityListResponse\"\n },\n \"id\": - \"youtube.activities.list\",\n \"parameters\": {\n \"publishedAfter\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"format\": \"google-datetime\"\n },\n \"home\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"publishedBefore\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"description\": - \"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.\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"minimum\": \"0\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n }\n }\n }\n },\n \"i18nLanguages\": - {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"hl\": - {\n \"default\": \"en_US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the i18nLanguage resource properties that the API - response will include. Set the parameter value to snippet.\",\n \"repeated\": - true\n }\n },\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/i18nLanguages\",\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"path\": \"youtube/v3/i18nLanguages\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ }\n }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"insert\": {\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\"\n },\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"id\": - \"youtube.commentThreads.list\",\n \"parameters\": {\n \"id\": - {\n \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\",\n \"type\": \"string\"\n },\n - \ \"searchTerms\": {\n \"location\": \"query\",\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\",\n \"type\": \"string\"\n - \ },\n \"videoId\": {\n \"description\": - \"Returns the comment threads of the specified video.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"location\": \"query\"\n },\n - \ \"order\": {\n \"default\": \"time\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Order by time.\",\n \"Order by relevance.\"\n - \ ]\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"maximum\": \"100\",\n \"format\": - \"uint32\",\n \"location\": \"query\",\n \"default\": - \"20\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"minimum\": \"1\"\n },\n \"moderationStatus\": - {\n \"type\": \"string\",\n \"description\": \"Limits - the returned comment threads to those with the specified moderation status. - Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"default\": \"published\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ]\n - \ },\n \"textFormat\": {\n \"description\": - \"The requested text format for the returned comments.\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"html\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\"\n }\n },\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"tests\": {\n \"methods\": - {\n \"insert\": {\n \"response\": {\n \"$ref\": - \"TestItem\"\n },\n \"description\": \"POST method.\",\n - \ \"flatPath\": \"youtube/v3/tests\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.tests.insert\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"TestItem\"\n },\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/tests\"\n }\n }\n - \ },\n \"videos\": {\n \"methods\": {\n \"insert\": {\n \"response\": - {\n \"$ref\": \"Video\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"stabilize\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Should stabilize be applied to the upload.\"\n - \ },\n \"autoLevels\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Should auto-levels be applied to the upload.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"notifySubscribers\": - {\n \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\",\n \"default\": - \"true\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n }\n },\n \"path\": \"youtube/v3/videos\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"supportsMediaUpload\": true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.videos.insert\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/videos\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ }\n },\n \"maxSize\": \"274877906944\",\n - \ \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n - \ ]\n },\n \"flatPath\": \"youtube/v3/videos\"\n - \ },\n \"rate\": {\n \"description\": \"Adds a like - or dislike rating to a video or removes a rating from a video.\",\n \"flatPath\": - \"youtube/v3/videos/rate\",\n \"parameters\": {\n \"rating\": - {\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ]\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"youtube.videos.rate\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\",\n \"rating\"\n - \ ],\n \"path\": \"youtube/v3/videos/rate\"\n },\n - \ \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"response\": {\n \"$ref\": \"Video\"\n - \ },\n \"id\": \"youtube.videos.update\",\n \"path\": - \"youtube/v3/videos\",\n \"description\": \"Updates an existing resource.\",\n - \ \"httpMethod\": \"PUT\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/videos\",\n \"path\": - \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"VideoListResponse\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.videos.list\",\n \"description\": \"Retrieves a list of - resources, possibly filtered.\",\n \"parameters\": {\n \"maxWidth\": - {\n \"maximum\": \"8192\",\n \"type\": \"integer\",\n - \ \"minimum\": \"72\",\n \"format\": \"int32\",\n - \ \"description\": \"Return the player with maximum height specified - in\",\n \"location\": \"query\"\n },\n \"myRating\": - {\n \"location\": \"query\",\n \"description\": - \"Return videos liked/disliked by the authenticated user. Does not support - RateType.RATED_TYPE_NONE.\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"type\": \"string\"\n },\n \"hl\": {\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"locale\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Return videos with the given ids.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"videoCategoryId\": - {\n \"description\": \"Use chart that is specific to the specified - video category\",\n \"default\": \"0\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"maxHeight\": - {\n \"minimum\": \"72\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"maximum\": \"8192\",\n - \ \"format\": \"int32\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Use a chart that is specific to the specified region\"\n },\n - \ \"chart\": {\n \"description\": \"Return the videos - that are in the specified chart.\",\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ]\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"minimum\": \"1\",\n \"maximum\": \"50\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ }\n },\n \"httpMethod\": \"GET\"\n },\n - \ \"reportAbuse\": {\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"path\": \"youtube/v3/videos/reportAbuse\",\n \"description\": - \"Report abuse for a video.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.videos.reportAbuse\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": []\n },\n - \ \"getRating\": {\n \"flatPath\": \"youtube/v3/videos/getRating\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.videos.getRating\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos/getRating\",\n \"description\": - \"Retrieves the ratings that the authorized user gave to a list of specified - videos.\",\n \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"parameterOrder\": [\n \"id\"\n ]\n - \ },\n \"delete\": {\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"path\": \"youtube/v3/videos\",\n \"id\": \"youtube.videos.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"liveStreams\": {\n \"methods\": {\n - \ \"update\": {\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing stream for the authenticated user.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"id\": - \"youtube.liveStreams.update\"\n },\n \"list\": {\n \"path\": - \"youtube/v3/liveStreams\",\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\",\n - \ \"id\": \"youtube.liveStreams.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Return LiveStreams with the given ids from - Stubby or Apiary.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"minimum\": \"0\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"maximum\": - \"50\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n - \ \"required\": true,\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ }\n },\n \"delete\": {\n \"description\": - \"Deletes an existing stream for the authenticated user.\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.delete\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"description\": - \"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, content_details, and status.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"httpMethod\": \"POST\"\n }\n - \ }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of members that match the request criteria for a channel.\",\n - \ \"path\": \"youtube/v3/members\",\n \"flatPath\": \"youtube/v3/members\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"required\": true\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"maximum\": \"1000\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"format\": \"uint32\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"hasAccessToLevel\": {\n \"location\": - \"query\",\n \"description\": \"Filter members in the results - set to the ones that have access to a level.\",\n \"type\": \"string\"\n - \ },\n \"mode\": {\n \"type\": \"string\",\n - \ \"description\": \"Parameter that specifies which channel members - to return.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ],\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"default\": \"all_current\",\n \"location\": \"query\"\n - \ },\n \"filterByMemberChannelId\": {\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ },\n \"id\": \"youtube.members.list\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ]\n }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videoCategories.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the videoCategory resource properties that the API response will include. - Set the parameter value to snippet.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"Returns the video categories with the given IDs for Stubby or Apiary.\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"default\": \"en-US\",\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/videoCategories\",\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ }\n }\n }\n },\n \"playlistItems\": {\n \"methods\": - {\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"id\": - \"youtube.playlistItems.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlistItems\"\n },\n - \ \"list\": {\n \"id\": \"youtube.playlistItems.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"default\": - \"5\",\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the playlist items within the given - playlist.\"\n },\n \"videoId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlist items associated with the given video ID.\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/playlistItems\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"GET\"\n },\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.update\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"path\": \"youtube/v3/playlistItems\"\n - \ },\n \"insert\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"id\": - \"youtube.playlistItems.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n }\n }\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:34 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCgpSieplNxXxLXYAzJLLpng&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"p2rEppO6aEYisNeBzZUbKtzwxH0\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"fsrkQLXAl95YCjAImwblyxy8RXo\",\n \"id\": \"UCgpSieplNxXxLXYAzJLLpng\",\n - \ \"snippet\": {\n \"title\": \"\u041C\u0430\u0439\u043A\u043B - \u041D\u0430\u043A\u0438\",\n \"description\": \"\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u0430\u0442\u044C - \u043A\u0430\u043D\u0430\u043B: https://www.patreon.com/macknack\\n\",\n \"customUrl\": - \"@macknack\",\n \"publishedAt\": \"2012-06-19T20:02:18Z\",\n \"thumbnails\": - {\n \"default\": {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJVz5sfIaBP9a8u2sL4GVwt_CUrcCEW2_xyoLCeoug=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJVz5sfIaBP9a8u2sL4GVwt_CUrcCEW2_xyoLCeoug=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJVz5sfIaBP9a8u2sL4GVwt_CUrcCEW2_xyoLCeoug=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"\u041C\u0430\u0439\u043A\u043B - \u041D\u0430\u043A\u0438\",\n \"description\": \"\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u0430\u0442\u044C - \u043A\u0430\u043D\u0430\u043B: https://www.patreon.com/macknack\\n\"\n },\n - \ \"country\": \"RU\"\n },\n \"brandingSettings\": {\n \"channel\": - {\n \"title\": \"\u041C\u0430\u0439\u043A\u043B \u041D\u0430\u043A\u0438\",\n - \ \"description\": \"\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u0430\u0442\u044C - \u043A\u0430\u043D\u0430\u043B: https://www.patreon.com/macknack\\n\",\n \"keywords\": - \"\u043F\u043E\u043B\u0438\u0442\u0438\u043A\u0430 \u043E\u0431\u0449\u0435\u0441\u0442\u0432\u043E - \\\"\u043C\u0430\u0439\u043A\u043B \u043D\u0430\u043A\u0438\\\" \u043D\u0430\u043A\u0438 - \u0421\u041C\u0418 \u0420\u043E\u0441\u0441\u0438 \u041A\u0440\u0435\u043C\u043B\u044C\",\n - \ \"unsubscribedTrailer\": \"VEPydh3IkEQ\",\n \"country\": - \"RU\"\n },\n \"image\": {\n \"bannerExternalUrl\": - \"https://yt3.googleusercontent.com/Am6f3jarcTFv6Rxa3wax5kjXmNXanLt1HCWduPpGyoRs64l-gCnnOt6E5zScv8RjbAk1I6e3ww\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:34 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"protocol\": - \"rest\",\n \"version\": \"v3\",\n \"kind\": \"discovery#restDescription\",\n - \ \"revision\": \"20230220\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": - {\n \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n }\n - \ }\n }\n },\n \"fullyEncodeReservedExpansion\": true,\n \"ownerName\": - \"Google\",\n \"batchPath\": \"batch\",\n \"id\": \"youtube:v3\",\n \"baseUrl\": - \"https://youtube.googleapis.com/\",\n \"discoveryVersion\": \"v1\",\n \"basePath\": - \"\",\n \"ownerDomain\": \"google.com\",\n \"description\": \"The YouTube - Data API v3 is an API that provides access to YouTube data, such as videos, - playlists, and channels.\",\n \"name\": \"youtube\",\n \"resources\": {\n - \ \"subscriptions\": {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"id\": {\n \"description\": \"Return the subscriptions - with the given IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"minimum\": \"0\",\n \"default\": \"5\",\n \"format\": - \"uint32\"\n },\n \"channelId\": {\n \"description\": - \"Return the subscriptions of the given channel owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"myRecentSubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"mySubscribers\": {\n \"description\": - \"Return the subscribers of the given channel owner.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\"\n },\n \"forChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\",\n \"type\": \"string\"\n },\n - \ \"order\": {\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"relevance\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"The - order of the returned subscriptions\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n - \ },\n \"id\": \"youtube.subscriptions.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/subscriptions\"\n },\n - \ \"delete\": {\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n }\n },\n \"insert\": {\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.subscriptions.insert\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"Subscription\"\n }\n }\n }\n - \ },\n \"playlists\": {\n \"methods\": {\n \"list\": {\n - \ \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlists.list\",\n \"parameters\": - {\n \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Return the playlists owned - by the authenticated user.\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\"\n },\n \"hl\": {\n - \ \"type\": \"string\",\n \"description\": \"Return - content in specified language\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": true\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"Return - the playlists with the given IDs for Stubby or Apiary.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"channelId\": {\n - \ \"description\": \"Return the playlists owned by the specified - channel ID.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n },\n \"insert\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"flatPath\": - \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.insert\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"response\": {\n - \ \"$ref\": \"Playlist\"\n }\n },\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"description\": \"Deletes a resource.\",\n - \ \"id\": \"youtube.playlists.delete\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"path\": \"youtube/v3/playlists\"\n - \ },\n \"update\": {\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true,\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlists\",\n \"id\": - \"youtube.playlists.update\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"httpMethod\": \"PUT\"\n }\n - \ }\n },\n \"channelSections\": {\n \"methods\": {\n \"update\": - {\n \"id\": \"youtube.channelSections.update\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/channelSections\"\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"mine\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the ChannelSections - owned by the authenticated user.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\"\n },\n - \ \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return content in specified - language\"\n },\n \"channelId\": {\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.channelSections.list\",\n \"response\": - {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"path\": - \"youtube/v3/channelSections\"\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.channelSections.delete\",\n \"description\": - \"Deletes a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"flatPath\": \"youtube/v3/channelSections\"\n },\n \"insert\": - {\n \"path\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.insert\",\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"repeated\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"description\": \"Inserts a new - resource into this collection.\"\n }\n }\n },\n \"commentThreads\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.commentThreads.list\",\n \"response\": - {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"order\": - {\n \"enum\": [\n \"orderUnspecified\",\n \"time\",\n - \ \"relevance\"\n ],\n \"default\": - \"time\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Order by time.\",\n \"Order by relevance.\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"maximum\": \"100\",\n \"type\": - \"integer\",\n \"description\": \"The *maxResults* parameter - specifies the maximum number of items that should be returned in the result - set.\",\n \"location\": \"query\",\n \"minimum\": - \"1\",\n \"default\": \"20\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\",\n \"type\": \"string\"\n },\n - \ \"textFormat\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"html\",\n \"location\": \"query\",\n \"description\": - \"The requested text format for the returned comments.\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ]\n },\n \"searchTerms\": - {\n \"type\": \"string\",\n \"description\": \"Limits - the returned comment threads to those matching the specified key words. Not - compatible with the 'id' filter.\",\n \"location\": \"query\"\n - \ },\n \"videoId\": {\n \"description\": - \"Returns the comment threads of the specified video.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"moderationStatus\": {\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"location\": \"query\",\n \"default\": - \"published\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": - \"string\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads of all videos of the channel and the channel comments - as well.\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n }\n },\n \"insert\": {\n - \ \"id\": \"youtube.commentThreads.insert\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.membershipsLevels.list\",\n \"description\": \"Retrieves - a list of all pricing levels offered by a creator to the fans.\",\n \"response\": - {\n \"$ref\": \"MembershipsLevelListResponse\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"path\": \"youtube/v3/membershipsLevels\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/membershipsLevels\"\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"regionCode\": {\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"hl\": {\n - \ \"default\": \"en-US\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the video categories with the given - IDs for Stubby or Apiary.\",\n \"repeated\": true\n },\n - \ \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the videoCategory resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.videoCategories.list\",\n - \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/videoCategories\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/videoCategories\"\n - \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n - \ \"set\": {\n \"id\": \"youtube.thumbnails.set\",\n \"response\": - {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n \"description\": - \"As this is not an insert in a strict sense (it supports uploading/setting - of a thumbnail for multiple videos, which doesn't result in creation of a - single resource), I use a custom verb here.\",\n \"parameterOrder\": - [\n \"videoId\"\n ],\n \"parameters\": {\n \"videoId\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Returns - the Thumbnail with the given video IDs for Stubby or Apiary.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/thumbnails/set\",\n \"supportsMediaUpload\": - true,\n \"httpMethod\": \"POST\",\n \"mediaUpload\": {\n - \ \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"2097152\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ]\n }\n }\n - \ }\n },\n \"videos\": {\n \"methods\": {\n \"delete\": - {\n \"id\": \"youtube.videos.delete\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"path\": \"youtube/v3/videos\",\n \"httpMethod\": \"DELETE\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n }\n },\n \"rate\": {\n - \ \"flatPath\": \"youtube/v3/videos/rate\",\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/videos/rate\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.rate\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"description\": - \"Adds a like or dislike rating to a video or removes a rating from a video.\",\n - \ \"parameters\": {\n \"rating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"required\": true,\n - \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n }\n },\n - \ \"update\": {\n \"description\": \"Updates an existing resource.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/videos\",\n \"httpMethod\": \"PUT\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"id\": \"youtube.videos.update\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n }\n },\n \"request\": - {\n \"$ref\": \"Video\"\n },\n \"response\": - {\n \"$ref\": \"Video\"\n }\n },\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"VideoListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.videos.list\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"path\": \"youtube/v3/videos\",\n \"parameters\": - {\n \"maxResults\": {\n \"description\": \"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.\",\n \"default\": \"5\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"minimum\": \"1\"\n },\n \"locale\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"maxHeight\": {\n \"maximum\": \"8192\",\n - \ \"minimum\": \"72\",\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"location\": \"query\"\n - \ },\n \"chart\": {\n \"location\": \"query\",\n - \ \"enum\": [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"description\": \"Return the videos that - are in the specified chart.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"type\": \"string\"\n - \ },\n \"maxWidth\": {\n \"minimum\": \"72\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the player with maximum height specified in\",\n \"format\": - \"int32\",\n \"maximum\": \"8192\",\n \"type\": - \"integer\"\n },\n \"videoCategoryId\": {\n \"default\": - \"0\",\n \"location\": \"query\",\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"type\": - \"string\"\n },\n \"regionCode\": {\n \"description\": - \"Use a chart that is specific to the specified region\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"Return - videos with the given ids.\",\n \"location\": \"query\"\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"myRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ },\n \"getRating\": {\n \"id\": \"youtube.videos.getRating\",\n - \ \"path\": \"youtube/v3/videos/getRating\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/videos/getRating\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves the ratings that the - authorized user gave to a list of specified videos.\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ }\n },\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"Video\"\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"httpMethod\": \"POST\",\n \"supportsMediaUpload\": true,\n - \ \"path\": \"youtube/v3/videos\",\n \"parameters\": {\n - \ \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"notifySubscribers\": {\n \"default\": \"true\",\n - \ \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"stabilize\": - {\n \"type\": \"boolean\",\n \"description\": \"Should - stabilize be applied to the upload.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"autoLevels\": - {\n \"location\": \"query\",\n \"description\": - \"Should auto-levels be applied to the upload.\",\n \"type\": - \"boolean\"\n }\n },\n \"description\": \"Inserts - a new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"mediaUpload\": - {\n \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"274877906944\",\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/videos\"\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ }\n }\n },\n \"id\": \"youtube.videos.insert\"\n - \ },\n \"reportAbuse\": {\n \"request\": {\n \"$ref\": - \"VideoAbuseReport\"\n },\n \"id\": \"youtube.videos.reportAbuse\",\n - \ \"path\": \"youtube/v3/videos/reportAbuse\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\",\n \"description\": \"Report abuse - for a video.\",\n \"parameterOrder\": [],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"abuseReports\": - {\n \"methods\": {\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"path\": \"youtube/v3/abuseReports\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/abuseReports\"\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"parameters\": - {\n \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return rendered funding amounts - in specified language.\"\n },\n \"maxResults\": {\n - \ \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"minimum\": \"1\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"default\": \"5\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the superChatEvent resource parts that the API - response will include. This parameter is currently not supported.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.superChatEvents.list\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/superChatEvents\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"channels\": - {\n \"methods\": {\n \"update\": {\n \"path\": \"youtube/v3/channels\",\n - \ \"id\": \"youtube.channels.update\",\n \"response\": {\n - \ \"$ref\": \"Channel\"\n },\n \"request\": {\n - \ \"$ref\": \"Channel\"\n },\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/channels\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n - \ }\n }\n },\n \"list\": {\n \"response\": - {\n \"$ref\": \"ChannelListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"path\": \"youtube/v3/channels\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"mySubscribers\": - {\n \"description\": \"Return the channels subscribed to the - authenticated user\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"default\": \"5\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n },\n - \ \"forUsername\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return the channel associated - with a YouTube username.\"\n },\n \"managedByMe\": {\n - \ \"location\": \"query\",\n \"description\": \"Return - the channels managed by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the ids of channels - owned by the authenticated user.\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the channels with the specified IDs.\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\"\n },\n \"categoryId\": - {\n \"description\": \"Return the channels within the specified - guide category ID.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.channels.list\",\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n }\n }\n },\n \"youtube\": - {\n \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"path\": - \"youtube/v3/commentThreads\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameterOrder\": [],\n \"description\": \"Updates - an existing resource.\",\n \"response\": {\n \"$ref\": - \"CommentThread\"\n }\n }\n }\n }\n - \ }\n },\n \"liveStreams\": {\n \"methods\": {\n \"delete\": - {\n \"description\": \"Deletes an existing stream for the authenticated - user.\",\n \"path\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.delete\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n }\n },\n \"update\": {\n - \ \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"response\": {\n \"$ref\": - \"LiveStream\"\n }\n },\n \"insert\": {\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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, content_details, and status.\"\n }\n },\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"id\": \"youtube.liveStreams.insert\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"list\": {\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Return LiveStreams with the given - ids from Stubby or Apiary.\"\n },\n \"pageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"default\": \"5\",\n \"minimum\": - \"0\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"type\": \"integer\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Retrieve the list of streams associated with - the given channel. --\",\n \"response\": {\n \"$ref\": - \"LiveStreamListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.liveStreams.list\"\n }\n - \ }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"parameters\": {\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\"\n }\n - \ },\n \"path\": \"youtube/v3/tests\",\n \"flatPath\": - \"youtube/v3/tests\",\n \"response\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.tests.insert\",\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"description\": \"POST method.\"\n }\n }\n },\n - \ \"thirdPartyLinks\": {\n \"methods\": {\n \"update\": {\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"httpMethod\": \"PUT\",\n \"id\": - \"youtube.thirdPartyLinks.update\",\n \"description\": \"Updates - an existing resource.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"parameters\": - {\n \"linkingToken\": {\n \"description\": \"Delete - the partner links with the given linking token.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel ID to which changes - should be applied, for delegation.\",\n \"location\": \"query\"\n - \ },\n \"type\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"description\": \"Type of the link to be deleted.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Do not use. Required for compatibility.\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.thirdPartyLinks.delete\"\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.insert\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API request and response will include. - Supported values are linkingToken, status, and snippet.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n }\n },\n \"list\": {\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.thirdPartyLinks.list\",\n \"parameters\": {\n \"linkingToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Get a third party link with the given linking - token.\"\n },\n \"type\": {\n \"description\": - \"Get a third party link of the given type.\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ]\n },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API response will include. Supported values are linkingToken, - status, and snippet.\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"comments\": {\n \"methods\": {\n \"markAsSpam\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.comments.markAsSpam\",\n \"description\": \"Expresses the - caller's opinion that one or more comments should be flagged as spam.\",\n - \ \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n \"path\": - \"youtube/v3/comments/markAsSpam\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"Flags - the comments with the given IDs as spam in the caller's opinion.\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\"\n },\n \"setModerationStatus\": - {\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"path\": \"youtube/v3/comments/setModerationStatus\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Sets the moderation status of one - or more comments.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"banAuthor\": {\n - \ \"type\": \"boolean\",\n \"description\": \"If - set to true the author of the comment gets added to the ban list. This means - all future comments of the author will autmomatically be rejected. Only valid - in combination with STATUS_REJECTED.\",\n \"default\": \"false\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\",\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"moderationStatus\": {\n \"type\": - \"string\",\n \"required\": true,\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"description\": \"Specifies the requested moderation status. - Note, comments can be in statuses, which are not available through this call. - For example, this call does not allow to mark a comment as 'likely spam'. - Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\"\n }\n }\n },\n \"update\": - {\n \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"id\": \"youtube.comments.update\",\n - \ \"httpMethod\": \"PUT\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n - \ },\n \"path\": \"youtube/v3/comments\",\n \"flatPath\": - \"youtube/v3/comments\"\n },\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/comments\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.comments.insert\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"Comment\"\n }\n },\n \"list\": {\n \"id\": - \"youtube.comments.list\",\n \"path\": \"youtube/v3/comments\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more comment resource - properties that the API response will include.\",\n \"type\": - \"string\"\n },\n \"parentId\": {\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"1\",\n \"maximum\": - \"100\",\n \"type\": \"integer\",\n \"default\": - \"20\",\n \"format\": \"uint32\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Returns the comments with the - given IDs for One Platform.\",\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"textFormat\": {\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"default\": \"html\",\n \"type\": - \"string\",\n \"description\": \"The requested text format for - the returned comments.\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"location\": \"query\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"activities\": {\n \"methods\": {\n - \ \"list\": {\n \"id\": \"youtube.activities.list\",\n \"parameters\": - {\n \"publishedBefore\": {\n \"format\": \"google-datetime\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"home\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/activities\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/activities\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ }\n }\n }\n },\n \"i18nLanguages\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"path\": \"youtube/v3/i18nLanguages\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the i18nLanguage - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"repeated\": true\n },\n \"hl\": - {\n \"default\": \"en_US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"response\": - {\n \"$ref\": \"I18nLanguageListResponse\"\n },\n \"flatPath\": - \"youtube/v3/i18nLanguages\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\"\n }\n }\n },\n \"liveChatMessages\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"parameters\": {\n \"liveChatId\": {\n \"required\": - true,\n \"description\": \"The id of the live chat for which - comments should be returned.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"hl\": {\n - \ \"description\": \"Specifies the localization language in which - the system messages should be returned.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the liveChatComment resource parts that the API - response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"200\",\n \"maximum\": \"2000\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"500\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"profileImageSize\": - {\n \"maximum\": \"720\",\n \"minimum\": \"16\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.liveChatMessages.list\",\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ]\n },\n \"delete\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a chat message.\"\n },\n \"insert\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveChatMessages.insert\",\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"response\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"path\": \"youtube/v3/liveChat/messages\"\n - \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"insert\": - {\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"sync\": - {\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the caption - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"supportsMediaUpload\": true,\n \"mediaUpload\": {\n \"maxSize\": - \"104857600\",\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"request\": {\n - \ \"$ref\": \"Caption\"\n },\n \"id\": \"youtube.captions.insert\"\n - \ },\n \"download\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"parameters\": - {\n \"tlang\": {\n \"location\": \"query\",\n \"description\": - \"tlang is the language code; machine translate the captions into this language.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"path\",\n \"description\": - \"The ID of the caption track to download, required for One Platform.\",\n - \ \"required\": true\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n },\n \"tfmt\": {\n - \ \"description\": \"Convert the captions into this format. Supported - options are sbv, srt, and vtt.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"useMediaDownloadService\": - true,\n \"description\": \"Downloads a caption track.\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.captions.download\",\n \"supportsMediaDownload\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions/{id}\"\n },\n \"update\": - {\n \"httpMethod\": \"PUT\",\n \"description\": \"Updates - an existing resource.\",\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/captions\",\n \"id\": - \"youtube.captions.update\",\n \"supportsMediaUpload\": true,\n \"mediaUpload\": - {\n \"maxSize\": \"104857600\",\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n - \ \"resumable\": {\n \"multipart\": true,\n \"path\": - \"/resumable/upload/youtube/v3/captions\"\n }\n }\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is on behalf of.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"sync\": - {\n \"type\": \"boolean\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/captions\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"id\": \"youtube.captions.list\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"id\": {\n \"description\": \"Returns the captions - with the given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"videoId\": {\n \"location\": - \"query\",\n \"description\": \"Returns the captions for the - specified video.\",\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ]\n },\n \"delete\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"path\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.delete\",\n - \ \"description\": \"Deletes a resource.\"\n }\n }\n },\n - \ \"members\": {\n \"methods\": {\n \"list\": {\n \"id\": - \"youtube.members.list\",\n \"parameters\": {\n \"maxResults\": - {\n \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"maximum\": \"1000\",\n \"default\": \"5\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"mode\": - {\n \"type\": \"string\",\n \"default\": \"all_current\",\n - \ \"location\": \"query\",\n \"description\": \"Parameter - that specifies which channel members to return.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"enum\": - [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ]\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"filterByMemberChannelId\": {\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"hasAccessToLevel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter members in the results set to the - ones that have access to a level.\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/members\",\n - \ \"description\": \"Retrieves a list of members that match the request - criteria for a channel.\",\n \"flatPath\": \"youtube/v3/members\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ },\n \"httpMethod\": \"GET\"\n }\n }\n },\n - \ \"videoAbuseReportReasons\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"hl\": {\n \"location\": \"query\",\n \"default\": - \"en-US\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the videoCategory resource parts that the - API response will include. Supported values are id and snippet.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/videoAbuseReportReasons\"\n - \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"maxResults\": - {\n \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"The id - of the live chat for which moderators should be returned.\"\n },\n - \ \"part\": {\n \"description\": \"The *part* parameter - specifies the liveChatModerator resource parts that the API response will - include. Supported values are id and snippet.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"id\": \"youtube.liveChatModerators.list\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ }\n },\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"description\": \"Deletes a - chat moderator.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.liveChatModerators.delete\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"id\": - \"youtube.liveChatModerators.insert\"\n }\n }\n },\n \"playlistItems\": - {\n \"methods\": {\n \"insert\": {\n \"id\": \"youtube.playlistItems.insert\",\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"description\": \"Inserts a new - resource into this collection.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.playlistItems.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"description\": - \"Deletes a resource.\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n }\n - \ },\n \"list\": {\n \"parameters\": {\n \"videoId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the playlist items associated with the given video ID.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"playlistId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return the playlist items within - the given playlist.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"required\": true\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\",\n \"default\": \"5\",\n \"minimum\": - \"0\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"PlaylistItemListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.list\"\n },\n \"update\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"description\": \"Updates an existing - resource.\",\n \"httpMethod\": \"PUT\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"id\": \"youtube.playlistItems.update\"\n }\n }\n },\n - \ \"liveBroadcasts\": {\n \"methods\": {\n \"insert\": {\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"description\": \"Inserts a new - stream for the authenticated user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.liveBroadcasts.insert\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n }\n },\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"minimum\": \"0\"\n },\n \"mine\": {\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"part\": {\n \"description\": \"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, status - and statistics.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"broadcastStatus\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return current live broadcasts.\",\n - \ \"Return broadcasts that have not yet started.\",\n \"Return - broadcasts that have already ended.\"\n ],\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"description\": \"Return broadcasts with - a certain status, e.g. active broadcasts.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"broadcastType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return only scheduled event broadcasts.\",\n - \ \"Return only persistent broadcasts.\"\n ],\n - \ \"description\": \"Return only broadcasts with the selected - type.\",\n \"location\": \"query\",\n \"enum\": - [\n \"broadcastTypeFilterUnspecified\",\n \"all\",\n - \ \"event\",\n \"persistent\"\n ],\n - \ \"default\": \"event\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"Return - broadcasts with the given ids from Stubby or Apiary.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\"\n },\n - \ \"insertCuepoint\": {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"Broadcast to insert ads to, or equivalently - `external_video_id` for internal use.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"response\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"description\": \"Insert cuepoints in a broadcast\",\n \"parameterOrder\": - []\n },\n \"delete\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.liveBroadcasts.delete\",\n \"description\": \"Delete a - given broadcast.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameters\": {\n \"id\": {\n \"description\": - \"Broadcast to delete.\",\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n }\n },\n \"update\": {\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"PUT\",\n - \ \"id\": \"youtube.liveBroadcasts.update\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"Updates an existing broadcast for the authenticated user.\"\n },\n - \ \"bind\": {\n \"parameterOrder\": [\n \"id\",\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Broadcast to bind to the stream\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"streamId\": - {\n \"description\": \"Stream to bind, if not set unbind the - current one.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"description\": - \"Bind a broadcast to a stream.\",\n \"path\": \"youtube/v3/liveBroadcasts/bind\"\n - \ },\n \"transition\": {\n \"httpMethod\": \"POST\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Broadcast to transition.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"broadcastStatus\": - {\n \"required\": true,\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"location\": \"query\",\n \"description\": - \"The status to which the broadcast is going to transition.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"path\": - \"youtube/v3/liveBroadcasts/transition\",\n \"description\": \"Transition - a broadcast to a given status.\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ]\n }\n }\n },\n \"liveChatBans\": {\n \"methods\": - {\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"request\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"description\": \"Inserts - a new resource into this collection.\",\n \"id\": \"youtube.liveChatBans.insert\"\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - chat ban.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.liveChatBans.delete\",\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"httpMethod\": \"DELETE\"\n }\n }\n },\n \"watermarks\": - {\n \"methods\": {\n \"unset\": {\n \"parameters\": {\n - \ \"channelId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"path\": \"youtube/v3/watermarks/unset\",\n \"flatPath\": - \"youtube/v3/watermarks/unset\",\n \"httpMethod\": \"POST\",\n \"description\": - \"Allows removal of channel watermark.\",\n \"parameterOrder\": [\n - \ \"channelId\"\n ],\n \"id\": \"youtube.watermarks.unset\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"set\": {\n \"supportsMediaUpload\": - true,\n \"id\": \"youtube.watermarks.set\",\n \"mediaUpload\": - {\n \"maxSize\": \"10485760\",\n \"protocols\": {\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"parameters\": {\n \"channelId\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n - \ \"description\": \"Allows upload of watermark image and setting - it for a channel.\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"path\": \"youtube/v3/watermarks/set\",\n \"httpMethod\": - \"POST\"\n }\n }\n },\n \"i18nRegions\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the i18nRegion resource properties that the API response - will include. Set the parameter value to snippet.\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"default\": \"en_US\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"path\": \"youtube/v3/i18nRegions\",\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n }\n }\n },\n \"channelBanners\": - {\n \"methods\": {\n \"insert\": {\n \"supportsMediaUpload\": - true,\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"description\": \"Unused, channel_id - is currently derived from the security context of the requestor.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"id\": - \"youtube.channelBanners.insert\",\n \"parameterOrder\": [],\n \"path\": - \"youtube/v3/channelBanners/insert\",\n \"request\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"mediaUpload\": {\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\",\n \"protocols\": - {\n \"resumable\": {\n \"multipart\": true,\n - \ \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"httpMethod\": \"POST\"\n }\n }\n },\n - \ \"search\": {\n \"methods\": {\n \"list\": {\n \"flatPath\": - \"youtube/v3/search\",\n \"id\": \"youtube.search.list\",\n \"response\": - {\n \"$ref\": \"SearchListResponse\"\n },\n \"parameters\": - {\n \"videoLicense\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"description\": \"Filter on - the license of the videos.\"\n },\n \"forContentOwner\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Search owned by a content owner.\"\n },\n - \ \"q\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Textual search terms to match.\"\n - \ },\n \"location\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Filter - on location of the video\"\n },\n \"forMine\": {\n \"location\": - \"query\",\n \"description\": \"Search for the private videos - of the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"topicId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Restrict results to a particular - topic.\"\n },\n \"videoSyndicated\": {\n \"type\": - \"string\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"description\": - \"Filter on syndicated videos.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos, syndicated or not.\",\n \"Only retrieve syndicated - videos.\"\n ]\n },\n \"relevanceLanguage\": - {\n \"type\": \"string\",\n \"description\": \"Return - results relevant to this language.\",\n \"location\": \"query\"\n - \ },\n \"eventType\": {\n \"location\": - \"query\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Filter - on the livestream status of the videos.\"\n },\n \"forDeveloper\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\"\n },\n - \ \"locationRadius\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Filter on distance from the location - (specified above).\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\"\n },\n \"publishedAfter\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\",\n \"description\": - \"Filter on resources published after this date.\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"description\": \"Restrict - results to a particular set of resource types from One Platform.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"videoType\": - {\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos.\",\n \"Only retrieve movies.\",\n - \ \"Only retrieve episodes of shows.\"\n ],\n \"description\": - \"Filter on videos of a specific type.\"\n },\n \"videoEmbeddable\": - {\n \"description\": \"Filter on embeddable videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"publishedBefore\": - {\n \"format\": \"google-datetime\",\n \"description\": - \"Filter on resources published before this date.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"relatedToVideoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Search related to a resource.\"\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"description\": - \"Filter on resources belonging to this channelId.\",\n \"type\": - \"string\"\n },\n \"videoCaption\": {\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"description\": \"Filter on the presence - of captions on the videos.\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"channelType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all channels.\",\n \"Only retrieve - shows.\"\n ],\n \"description\": \"Add a filter - on the channel search.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"videoCategoryId\": {\n \"description\": - \"Filter on videos in a specific category.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"order\": {\n \"default\": \"relevance\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Sort order of the results.\",\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Resources - are sorted in reverse chronological order based on the date they were created.\",\n - \ \"Resources are sorted from highest to lowest rating.\",\n - \ \"Resources are sorted from highest to lowest number of views.\",\n - \ \"Resources are sorted based on their relevance to the search - query. This is the default value for this parameter.\",\n \"Resources - are sorted alphabetically by title.\",\n \"Channels are sorted - in descending order of their number of uploaded videos.\"\n ]\n - \ },\n \"safeSearch\": {\n \"enum\": [\n - \ \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"location\": \"query\",\n \"default\": - \"moderate\",\n \"type\": \"string\",\n \"description\": - \"Indicates whether the search results should include restricted content as - well as standard content.\"\n },\n \"videoDimension\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on 3d videos.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ]\n },\n - \ \"videoDefinition\": {\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Filter - on the definition of the videos.\",\n \"enumDescriptions\": [\n - \ \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"type\": \"string\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Display the content as seen by viewers in this country.\"\n },\n - \ \"videoDuration\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on the duration of the videos.\",\n - \ \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ]\n }\n },\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/search\",\n \"description\": \"Retrieves - a list of search resources\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n }\n },\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"parameters\": {\n \"fields\": {\n \"description\": \"Selector - specifying which fields to include in a partial response.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"$.xgafv\": {\n \"type\": - \"string\",\n \"description\": \"V1 error format.\",\n \"location\": - \"query\",\n \"enum\": [\n \"1\",\n \"2\"\n ],\n \"enumDescriptions\": - [\n \"v1 error format\",\n \"v2 error format\"\n ]\n },\n - \ \"upload_protocol\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", - \\\"multipart\\\").\"\n },\n \"access_token\": {\n \"description\": - \"OAuth access token.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"key\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"oauth_token\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"OAuth 2.0 - token for the current user.\"\n },\n \"callback\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"JSONP\"\n - \ },\n \"prettyPrint\": {\n \"default\": \"true\",\n \"description\": - \"Returns response with indentations and line breaks.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"quotaUser\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n - \ },\n \"alt\": {\n \"enum\": [\n \"json\",\n \"media\",\n - \ \"proto\"\n ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"type\": \"string\",\n - \ \"default\": \"json\",\n \"description\": \"Data format for response.\"\n - \ },\n \"uploadType\": {\n \"type\": \"string\",\n \"description\": - \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n - \ \"location\": \"query\"\n }\n },\n \"schemas\": {\n \"ChannelSectionLocalization\": - {\n \"type\": \"object\",\n \"description\": \"ChannelSection localization - setting\",\n \"id\": \"ChannelSectionLocalization\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel section's title.\"\n }\n }\n - \ },\n \"VideoStatus\": {\n \"properties\": {\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"description\": \"The video's privacy status.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"license\": {\n \"description\": \"The video's license. - @mutable youtube.videos.insert youtube.videos.update\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"type\": \"string\"\n },\n \"failureReason\": {\n - \ \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ],\n \"description\": \"This - value explains why a video failed to upload. This property is only present - if the uploadStatus property indicates that the upload failed.\",\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ],\n \"type\": \"string\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"publishAt\": {\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the video is scheduled to publish. It can be set - only if the privacy status of the video is private..\"\n },\n \"embeddable\": - {\n \"description\": \"This value indicates if the video can be embedded - on another website. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n },\n \"uploadStatus\": {\n - \ \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ],\n \"description\": \"The status of the uploaded video.\",\n - \ \"enumDescriptions\": [\n \"Video has been uploaded but - not processed yet.\",\n \"Video has been successfully processed.\",\n - \ \"Processing has failed. See FailureReason.\",\n \"Video - has been rejected. See RejectionReason.\",\n \"Video has been deleted.\"\n - \ ],\n \"type\": \"string\"\n },\n \"publicStatsViewable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"rejectionReason\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\",\n - \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ]\n }\n - \ },\n \"description\": \"Basic details about a video category, such - as its localized title. Next Id: 18\",\n \"type\": \"object\",\n \"id\": - \"VideoStatus\"\n },\n \"ThirdPartyLinkListResponse\": {\n \"type\": - \"object\",\n \"id\": \"ThirdPartyLinkListResponse\",\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"properties\": {\n \"allowed\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\"\n },\n - \ \"blocked\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of region codes that identify countries where the video is blocked. If - this property is present and a country is not listed in its value, then the - video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\"\n }\n },\n - \ \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"id\": \"VideoContentDetailsRegionRestriction\",\n \"type\": \"object\"\n - \ },\n \"ThirdPartyLinkSnippet\": {\n \"id\": \"ThirdPartyLinkSnippet\",\n - \ \"properties\": {\n \"type\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A link - that is connecting (or about to connect) a channel with a store on a merchandising - platform in order to enable retail commerce capabilities for that channel - on YouTube.\"\n ],\n \"description\": \"Type of the link - named after the entities that are being linked.\",\n \"enum\": [\n - \ \"linkUnspecified\",\n \"channelToStoreLink\"\n ]\n - \ },\n \"channelToStoreLink\": {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n - \ \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\"\n }\n },\n \"description\": - \"Basic information about a third party account link, including its type and - type-specific information.\",\n \"type\": \"object\"\n },\n \"PropertyValue\": - {\n \"description\": \"A pair Property / Value.\",\n \"type\": \"object\",\n - \ \"id\": \"PropertyValue\",\n \"properties\": {\n \"value\": - {\n \"type\": \"string\",\n \"description\": \"The property's - value.\"\n },\n \"property\": {\n \"description\": - \"A property.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"CommentThreadSnippet\": {\n \"id\": \"CommentThreadSnippet\",\n - \ \"properties\": {\n \"topLevelComment\": {\n \"description\": - \"The top level comment of this thread.\",\n \"$ref\": \"Comment\"\n - \ },\n \"isPublic\": {\n \"description\": \"Whether - the thread (and therefore all its comments) is visible to all YouTube users.\",\n - \ \"type\": \"boolean\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n - \ \"totalReplyCount\": {\n \"description\": \"The total number - of replies (not including the top level comment).\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"canReply\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a comment thread.\"\n },\n - \ \"ThumbnailSetResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"default\": \"youtube#thumbnailSetResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of thumbnails.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThumbnailDetails\"\n }\n }\n },\n - \ \"id\": \"ThumbnailSetResponse\"\n },\n \"ChannelSectionListResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of ChannelSections that match - the request criteria.\"\n }\n },\n \"id\": \"ChannelSectionListResponse\",\n - \ \"type\": \"object\"\n },\n \"InvideoTiming\": {\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\",\n \"properties\": - {\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"Describes a timing - type. If the value is offsetFromStart, then the offsetMs field represents - an offset from the start of the video. If the value is offsetFromEnd, then - the offsetMs field represents an offset from the end of the video.\",\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n - \ \"type\": \"string\"\n },\n \"durationMs\": {\n \"format\": - \"uint64\",\n \"description\": \"Defines the duration in milliseconds - for which the promotion should be displayed. If missing, the client should - use the default.\",\n \"type\": \"string\"\n },\n \"offsetMs\": - {\n \"description\": \"Defines the time at which the promotion will - appear. Depending on the value of type the value of the offsetMs field will - represent a time offset from the start or from the end of the video, expressed - in milliseconds.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"InvideoTiming\"\n },\n \"VideoStatistics\": {\n \"properties\": - {\n \"viewCount\": {\n \"description\": \"The number of times - the video has been viewed.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"commentCount\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of comments for the video.\",\n \"format\": - \"uint64\"\n },\n \"favoriteCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of users who currently have the video marked as a favorite video.\"\n - \ },\n \"dislikeCount\": {\n \"description\": \"The - number of users who have indicated that they disliked the video by giving - it a negative rating.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"likeCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of users who have indicated that they - liked the video by giving it a positive rating.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoStatistics\",\n - \ \"description\": \"Statistics about the video, such as the number of - times the video was viewed or liked.\"\n },\n \"InvideoBranding\": {\n - \ \"id\": \"InvideoBranding\",\n \"properties\": {\n \"position\": - {\n \"$ref\": \"InvideoPosition\",\n \"description\": \"The - spatial position within the video where the branding watermark will be displayed.\"\n - \ },\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The url of the uploaded image. Only used in apiary to api communication.\"\n - \ },\n \"timing\": {\n \"description\": \"The temporal - position within the video where watermark will be displayed.\",\n \"$ref\": - \"InvideoTiming\"\n },\n \"targetChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The channel to which this branding - links. If not present it defaults to the current channel.\"\n },\n - \ \"imageBytes\": {\n \"description\": \"The bytes the uploaded - image. Only used in api to youtube communication.\",\n \"format\": - \"byte\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"LINT.IfChange Describes an invideo branding.\"\n - \ },\n \"VideoAbuseReportReason\": {\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReason\"\n - \ },\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"id\": {\n \"description\": - \"The ID of this abuse report reason.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"VideoAbuseReportReason\",\n - \ \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\"\n },\n \"LiveStream\": {\n \"type\": - \"object\",\n \"description\": \"A live stream describes a live ingestion - point.\",\n \"properties\": {\n \"contentDetails\": {\n \"$ref\": - \"LiveStreamContentDetails\",\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveStream\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the stream.\"\n },\n \"cdn\": {\n - \ \"$ref\": \"CdnSettings\",\n \"description\": \"The cdn - object defines the live stream's content delivery network (CDN) settings. - These settings provide details about the manner in which you stream your content - to YouTube.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about live stream's status.\",\n - \ \"$ref\": \"LiveStreamStatus\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the stream, including its channel, title, and description.\",\n \"$ref\": - \"LiveStreamSnippet\"\n }\n },\n \"id\": \"LiveStream\"\n - \ },\n \"VideoSuggestionsTagSuggestion\": {\n \"properties\": {\n - \ \"tag\": {\n \"description\": \"The keyword tag suggested - for the video.\",\n \"type\": \"string\"\n },\n \"categoryRestricts\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A set of video categories - for which the tag is relevant. You can use this information to display appropriate - tag suggestions based on the video category that the video uploader associates - with the video. By default, tag suggestions are relevant for all categories - if there are no restricts defined for the keyword.\"\n }\n },\n - \ \"description\": \"A single tag suggestion with it's relevance information.\",\n - \ \"type\": \"object\",\n \"id\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"PlaylistItemListResponse\": {\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"description\": \"A list of playlist items that match - the request criteria.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistItemListResponse\"\n },\n \"SuperChatEventSnippet\": - {\n \"type\": \"object\",\n \"id\": \"SuperChatEventSnippet\",\n - \ \"properties\": {\n \"amountMicros\": {\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Channel id where the event occurred.\"\n },\n \"createdAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the event occurred.\"\n - \ },\n \"isSuperStickerEvent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"True if this event is a Super Sticker event.\"\n - \ },\n \"displayString\": {\n \"description\": \"A rendered - string that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). - The string is rendered for the given language.\",\n \"type\": \"string\"\n - \ },\n \"commentText\": {\n \"description\": \"The text - contents of the comment left by the user.\",\n \"type\": \"string\"\n - \ },\n \"supporterDetails\": {\n \"description\": \"Details - about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n - \ \"superStickerMetadata\": {\n \"$ref\": \"SuperStickerMetadata\",\n - \ \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\"\n },\n \"currency\": - {\n \"description\": \"The currency in which the purchase was made. - ISO 4217.\",\n \"type\": \"string\"\n },\n \"messageType\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\"\n }\n }\n },\n \"PlaylistItemContentDetails\": - {\n \"id\": \"PlaylistItemContentDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"endAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\",\n - \ \"type\": \"string\"\n },\n \"videoPublishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the video was published to YouTube.\",\n \"format\": - \"date-time\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - a video. To retrieve the video resource, set the id query parameter to this - value in your API request.\"\n },\n \"startAt\": {\n \"type\": - \"string\",\n \"description\": \"The time, measured in seconds from - the start of the video, when the video should start playing. (The playlist - owner can specify the times when the video should start and stop playing when - the video is played in the context of the playlist.) The default value is - 0.\"\n },\n \"note\": {\n \"type\": \"string\",\n \"description\": - \"A user-generated note for this item.\"\n }\n }\n },\n \"ChannelSectionContentDetails\": - {\n \"properties\": {\n \"playlists\": {\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"channels\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"type\": \"array\"\n }\n },\n \"description\": - \"Details about a channelsection, including playlists and channels.\",\n \"id\": - \"ChannelSectionContentDetails\",\n \"type\": \"object\"\n },\n \"CaptionSnippet\": - {\n \"id\": \"CaptionSnippet\",\n \"description\": \"Basic details - about a caption track, such as its language and name.\",\n \"properties\": - {\n \"status\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"serving\",\n \"syncing\",\n \"failed\"\n - \ ],\n \"description\": \"The caption track's status.\",\n - \ \"type\": \"string\"\n },\n \"lastUpdated\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the caption - track was last updated.\",\n \"type\": \"string\"\n },\n \"language\": - {\n \"description\": \"The language of the caption track. The property - value is a BCP-47 language tag.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"isCC\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the track contains - closed captions for the deaf and hard of hearing. The default value is false.\"\n - \ },\n \"isLarge\": {\n \"description\": \"Indicates - whether the caption track uses large text for the vision-impaired. The default - value is false.\",\n \"type\": \"boolean\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video associated with the caption track. @mutable youtube.captions.insert\"\n - \ },\n \"isAutoSynced\": {\n \"description\": \"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.\",\n - \ \"type\": \"boolean\"\n },\n \"name\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\"\n },\n \"trackKind\": {\n - \ \"type\": \"string\",\n \"description\": \"The caption - track's type.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"standard\",\n - \ \"ASR\",\n \"forced\"\n ]\n },\n \"isDraft\": - {\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\",\n - \ \"type\": \"boolean\"\n },\n \"isEasyReader\": {\n - \ \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n \"failureReason\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The reason that - YouTube failed to process the caption track. This property is only present - if the state property's value is failed.\",\n \"enum\": [\n \"unknownFormat\",\n - \ \"unsupportedFormat\",\n \"processingFailed\"\n ],\n - \ \"type\": \"string\"\n },\n \"audioTrackType\": {\n - \ \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of audio track associated - with the caption track.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"I18nRegionListResponse\": {\n \"type\": - \"object\",\n \"id\": \"I18nRegionListResponse\",\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"description\": \"A list of regions where - YouTube is available. In this map, the i18n region ID is the map key, and - its value is the corresponding i18nRegion resource.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"I18nRegion\"\n - \ }\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#i18nRegionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"MemberListResponse\": {\n \"properties\": - {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#memberListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Member\"\n },\n - \ \"description\": \"A list of members that match the request criteria.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"MemberListResponse\",\n \"type\": \"object\"\n },\n \"VideoSnippet\": - {\n \"id\": \"VideoSnippet\",\n \"properties\": {\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the video was uploaded.\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"categoryId\": {\n \"description\": \"The YouTube - video category associated with the video.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the videos's default - snippet.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that the video - was uploaded to.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n },\n - \ \"defaultAudioLanguage\": {\n \"type\": \"string\",\n \"description\": - \"The default_audio_language property specifies the language spoken in the - video's default audio track.\"\n },\n \"tags\": {\n \"description\": - \"A list of keyword tags associated with the video. Tags may contain spaces.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"localized\": {\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\",\n - \ \"$ref\": \"VideoLocalization\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the video belongs to.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about a video, including - title, description, uploader, thumbnails and category.\"\n },\n \"ChannelStatus\": - {\n \"description\": \"JSON template for the status part of a channel.\",\n - \ \"properties\": {\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\"\n },\n \"isLinked\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n },\n \"privacyStatus\": {\n \"description\": - \"Privacy status of the channel.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"longUploadsStatus\": - {\n \"description\": \"The long uploads status of this channel. See - https://support.google.com/youtube/answer/71673 for more information.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ]\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelStatus\"\n },\n \"LiveStreamContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamContentDetails\",\n - \ \"description\": \"Detailed settings of a stream.\",\n \"properties\": - {\n \"isReusable\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \"\n },\n \"closedCaptionsIngestionUrl\": {\n \"type\": - \"string\",\n \"description\": \"The ingestion URL where the closed - captions of this stream are sent.\"\n }\n }\n },\n \"PlaylistListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"default\": \"youtube#playlistListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Playlist\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of playlists that match the request criteria\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"PlaylistListResponse\"\n },\n \"LiveStreamListResponse\": - {\n \"id\": \"LiveStreamListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#liveStreamListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of live - streams that match the request criteria.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ }\n }\n },\n \"SubscriptionListResponse\": {\n \"id\": - \"SubscriptionListResponse\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"description\": - \"A list of subscriptions that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Subscription\"\n },\n \"type\": - \"array\"\n },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": - \"object\"\n },\n \"CommentThreadListResponse\": {\n \"id\": \"CommentThreadListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#commentThreadListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"items\": {\n \"description\": - \"A list of comment threads that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"CommentThread\"\n - \ }\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoAbuseReport\": {\n \"properties\": {\n \"secondaryReasonId\": - {\n \"type\": \"string\",\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n },\n \"comments\": {\n \"description\": - \"Additional comments regarding the abuse report.\",\n \"type\": - \"string\"\n },\n \"reasonId\": {\n \"type\": \"string\",\n - \ \"description\": \"The high-level, or primary, reason that the content - is abusive. The value is an abuse report reason ID.\"\n },\n \"language\": - {\n \"type\": \"string\",\n \"description\": \"The language - that the content was viewed in.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoAbuseReport\"\n },\n \"ChannelBannerResource\": - {\n \"type\": \"object\",\n \"id\": \"ChannelBannerResource\",\n - \ \"description\": \"A channel banner returned as the response to a channel_banner.insert - call.\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\"\n },\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL of this banner image.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#channelBannerResource\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n - \ }\n }\n },\n \"LiveChatSuperStickerDetails\": {\n \"properties\": - {\n \"amountMicros\": {\n \"type\": \"string\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"format\": \"uint64\"\n },\n \"tier\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"Information about the Super Sticker.\",\n - \ \"$ref\": \"SuperStickerMetadata\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatSuperStickerDetails\"\n },\n \"TestItemTestItemSnippet\": - {\n \"id\": \"TestItemTestItemSnippet\",\n \"properties\": {},\n - \ \"type\": \"object\"\n },\n \"ActivityListResponse\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#activityListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Activity\"\n },\n \"type\": \"array\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ActivityListResponse\",\n - \ \"type\": \"object\"\n },\n \"PlaylistStatus\": {\n \"properties\": - {\n \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The playlist's privacy status.\"\n }\n },\n \"id\": \"PlaylistStatus\",\n - \ \"type\": \"object\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"id\": \"CommentSnippetAuthorChannelId\",\n \"properties\": {\n - \ \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"Comment\": {\n \"description\": - \"A *comment* represents a single YouTube comment.\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the comment.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#comment\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#comment\\\".\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the comment.\",\n \"$ref\": \"CommentSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"Comment\",\n \"type\": \"object\"\n },\n \"ImageSettings\": {\n - \ \"id\": \"ImageSettings\",\n \"properties\": {\n \"bannerMobileMediumHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size medium/high resolution (960x263).\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileImageUrl\": - {\n \"description\": \"Banner image. Mobile size (640x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"bannerTvHighImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. TV size high resolution (1920x1080).\"\n - \ },\n \"bannerImageUrl\": {\n \"description\": \"Banner - image. Desktop size (1060x175).\",\n \"type\": \"string\"\n },\n - \ \"bannerTvLowImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. TV size low resolution (854x480).\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerTvImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n },\n \"bannerTabletImageUrl\": - {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size medium resolution (1280x720).\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size low resolution (320x88).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"trackingImageUrl\": - {\n \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size high resolution (2276x377).\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"smallBrandedBannerImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n - \ \"description\": \"The URL for the 640px by 70px banner image that - appears below the video player in the default view of the video watch page. - The URL for the image that appears above the top-left corner of the video - player. This is a 25-pixel-high image with a flexible width that cannot exceed - 170 pixels.\"\n },\n \"bannerTabletExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size extra - high resolution (2560x424).\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Branding properties - for images associated with the channel.\"\n },\n \"Playlist\": {\n \"description\": - \"A *playlist* resource represents a YouTube playlist. A playlist is a collection - of videos that can be viewed sequentially and shared with other users. A playlist - can contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"id\": \"Playlist\",\n \"properties\": - {\n \"contentDetails\": {\n \"$ref\": \"PlaylistContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - like video count.\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistSnippet\",\n \"description\": \"The snippet object contains - basic details about the playlist, such as its title and description.\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n }\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the playlist.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlist\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n },\n - \ \"status\": {\n \"$ref\": \"PlaylistStatus\",\n \"description\": - \"The status object contains status information for the playlist.\"\n },\n - \ \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": - \"The player object contains information that you would use to play the playlist - in an embedded player.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"MembershipsDetails\": - {\n \"properties\": {\n \"membershipsDurationAtLevels\": {\n \"description\": - \"Data about memberships duration on particular pricing levels.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ }\n },\n \"membershipsDuration\": {\n \"$ref\": - \"MembershipsDuration\",\n \"description\": \"Data about memberships - duration without taking into consideration pricing levels.\"\n },\n - \ \"highestAccessibleLevel\": {\n \"description\": \"Id of - the highest level that the user has access to at the moment.\",\n \"type\": - \"string\"\n },\n \"highestAccessibleLevelDisplayName\": {\n - \ \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n },\n - \ \"accessibleLevels\": {\n \"type\": \"array\",\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"id\": \"MembershipsDetails\",\n \"type\": \"object\"\n - \ },\n \"VideoMonetizationDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoMonetizationDetails\",\n \"properties\": {\n \"access\": - {\n \"description\": \"The value of access indicates whether the - video can be monetized or not.\",\n \"$ref\": \"AccessPolicy\"\n - \ }\n },\n \"description\": \"Details about monetization of - a YouTube Video.\"\n },\n \"PlaylistItem\": {\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#playlistItem\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItem\\\".\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the playlist item, such as its title and - position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\",\n \"type\": - \"string\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\",\n \"$ref\": \"PlaylistItemStatus\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n - \ }\n },\n \"id\": \"PlaylistItem\",\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"type\": - \"object\"\n },\n \"ChannelSnippet\": {\n \"id\": \"ChannelSnippet\",\n - \ \"description\": \"Basic details about a channel, including title, description - and thumbnails.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"country\": - {\n \"type\": \"string\",\n \"description\": \"The country - of the channel.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's title.\"\n },\n \"thumbnails\": - {\n \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the channel's default title and - description.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The description of the channel.\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the channel was created.\"\n },\n \"customUrl\": - {\n \"type\": \"string\",\n \"description\": \"The custom - url of the channel.\"\n }\n }\n },\n \"SubscriptionSnippet\": - {\n \"properties\": {\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\",\n - \ \"type\": \"string\"\n },\n \"channelTitle\": {\n - \ \"description\": \"Channel title for the channel that the subscription - belongs to.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the subscription was created.\"\n - \ },\n \"description\": {\n \"description\": \"The subscription's - details.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"title\": - {\n \"description\": \"The subscription's title.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\"\n }\n },\n \"id\": \"SubscriptionSnippet\",\n \"description\": - \"Basic details about a subscription, including title, description and thumbnails - of the subscribed item.\",\n \"type\": \"object\"\n },\n \"LiveChatBanSnippet\": - {\n \"id\": \"LiveChatBanSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"type\": {\n \"enumDescriptions\": [\n \"An - invalid ban type.\",\n \"A permanent ban.\",\n \"A temporary - ban.\"\n ],\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"description\": - \"The type of ban.\",\n \"type\": \"string\"\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"liveChatId\": - {\n \"description\": \"The chat this ban is pertinent to.\",\n \"type\": - \"string\"\n },\n \"banDurationSeconds\": {\n \"type\": - \"string\",\n \"description\": \"The duration of a ban, only filled - if the ban has type TEMPORARY.\",\n \"format\": \"uint64\"\n }\n - \ }\n },\n \"Caption\": {\n \"type\": \"object\",\n \"id\": - \"Caption\",\n \"description\": \"A *caption* resource represents a YouTube - caption track. A caption track is associated with exactly one YouTube video.\",\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the caption track.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n }\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the caption.\",\n \"$ref\": - \"CaptionSnippet\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"default\": \"youtube#caption\"\n }\n }\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"label\": - {\n \"description\": \"The localized label belonging to this abuse - report reason.\",\n \"type\": \"string\"\n },\n \"secondaryReasons\": - {\n \"description\": \"The secondary reasons associated with this - reason, if any are available. (There might be 0 or more.)\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ }\n }\n },\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\"\n },\n \"AbuseType\": {\n \"properties\": {\n - \ \"id\": {\n \"type\": \"string\"\n }\n },\n \"id\": - \"AbuseType\",\n \"type\": \"object\"\n },\n \"PlaylistItemStatus\": - {\n \"properties\": {\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"This resource's - privacy status.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"PlaylistItemStatus\",\n \"description\": - \"Information about the playlist item's privacy status.\"\n },\n \"Member\": - {\n \"type\": \"object\",\n \"id\": \"Member\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#member\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#member\\\".\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the member.\",\n \"$ref\": - \"MemberSnippet\"\n }\n },\n \"description\": \"A *member* - resource represents a member for a YouTube channel. A member provides recurring - monetary support to a creator and receives special benefits.\"\n },\n \"VideoCategoryListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n },\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoCategoryListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ },\n \"id\": \"VideoCategoryListResponse\"\n },\n \"ThirdPartyLinkStatus\": - {\n \"type\": \"object\",\n \"properties\": {\n \"linkStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"The third-party link status object contains - information about the status of the link.\",\n \"id\": \"ThirdPartyLinkStatus\"\n - \ },\n \"MembershipsDurationAtLevel\": {\n \"id\": \"MembershipsDurationAtLevel\",\n - \ \"properties\": {\n \"memberTotalDurationMonths\": {\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n },\n \"level\": - {\n \"type\": \"string\",\n \"description\": \"Pricing level - ID.\"\n },\n \"memberSince\": {\n \"description\": - \"The date and time when the user became a continuous member for the given - level.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"LocalizedString\": {\n \"properties\": {\n - \ \"value\": {\n \"type\": \"string\"\n },\n \"language\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LocalizedString\",\n - \ \"type\": \"object\"\n },\n \"VideoContentDetails\": {\n \"description\": - \"Details about the content of a YouTube Video.\",\n \"properties\": - {\n \"definition\": {\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"sd\",\n \"hd\"\n ],\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\"\n },\n \"dimension\": - {\n \"type\": \"string\",\n \"description\": \"The value - of dimension indicates whether the video is available in 3D or in 2D.\"\n - \ },\n \"licensedContent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"The value of is_license_content indicates whether - the video is licensed content.\"\n },\n \"hasCustomThumbnail\": - {\n \"description\": \"Indicates whether the video uploader has provided - a custom thumbnail image for the video. This property is only visible to the - video uploader.\",\n \"type\": \"boolean\"\n },\n \"projection\": - {\n \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"Specifies the projection format of the video.\"\n },\n \"contentRating\": - {\n \"description\": \"Specifies the ratings that the video received - under various rating schemes.\",\n \"$ref\": \"ContentRating\"\n - \ },\n \"duration\": {\n \"type\": \"string\",\n \"description\": - \"The length of the video. The tag value is an ISO 8601 duration in the format - PT#M#S, in which the letters PT indicate that the value specifies a period - of time, and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"caption\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"true\",\n \"false\"\n ],\n \"description\": - \"The value of captions indicates whether the video has captions or not.\"\n - \ },\n \"countryRestriction\": {\n \"description\": - \"The countryRestriction object contains information about the countries where - a video is (or is not) viewable.\",\n \"$ref\": \"AccessPolicy\"\n - \ },\n \"regionRestriction\": {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\"\n }\n },\n - \ \"id\": \"VideoContentDetails\",\n \"type\": \"object\"\n },\n - \ \"VideoProcessingDetails\": {\n \"type\": \"object\",\n \"id\": - \"VideoProcessingDetails\",\n \"description\": \"Describes processing - status and progress and availability of some other Video resource parts.\",\n - \ \"properties\": {\n \"thumbnailsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether thumbnail - images have been generated for the video.\"\n },\n \"processingIssuesAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether the video processing engine has generated suggestions that - might improve YouTube's ability to process the the video, warnings that explain - video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\"\n },\n \"editorSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether video editing suggestions, which might improve video quality - or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\"\n },\n \"processingStatus\": {\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\"\n },\n - \ \"fileDetailsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether file details are - available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\"\n },\n - \ \"processingFailureReason\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"tagSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether keyword (tag) suggestions are available for the video. Tags - can be added to a video's metadata to make it easier for other users to find - the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"processingProgress\": - {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n }\n }\n },\n \"CdnSettings\": - {\n \"properties\": {\n \"frameRate\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"description\": - \"The frame rate of the inbound video data.\"\n },\n \"format\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The format of the - video stream that you are sending to Youtube. \"\n },\n \"ingestionType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \" The method or protocol used to transmit the - video stream.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"enum\": [\n \"rtmp\",\n - \ \"dash\",\n \"webrtc\",\n \"hls\"\n ]\n - \ },\n \"resolution\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\",\n \"enum\": [\n \"240p\",\n \"360p\",\n - \ \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\",\n - \ \"2160p\",\n \"variable\"\n ]\n },\n - \ \"ingestionInfo\": {\n \"description\": \"The ingestionInfo - object contains information that YouTube provides that you need to transmit - your RTMP or HTTP stream to YouTube.\",\n \"$ref\": \"IngestionInfo\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"CdnSettings\",\n - \ \"description\": \"Brief description of the live stream cdn settings.\"\n - \ },\n \"ActivityContentDetailsUpload\": {\n \"properties\": {\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the uploaded video.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsUpload\",\n \"description\": - \"Information about the uploaded video.\",\n \"type\": \"object\"\n },\n - \ \"WatchSettings\": {\n \"description\": \"Branding properties for - the watch. All deprecated.\",\n \"type\": \"object\",\n \"properties\": - {\n \"backgroundColor\": {\n \"description\": \"The text color - for the video watch page's branded area.\",\n \"type\": \"string\"\n - \ },\n \"featuredPlaylistId\": {\n \"description\": - \"An ID that uniquely identifies a playlist that displays next to the video - player.\",\n \"type\": \"string\"\n },\n \"textColor\": - {\n \"type\": \"string\",\n \"description\": \"The background - color for the video watch page's branded area.\"\n }\n },\n \"id\": - \"WatchSettings\"\n },\n \"ActivityContentDetailsPromotedItem\": {\n - \ \"properties\": {\n \"impressionUrl\": {\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"clickTrackingUrl\": {\n \"description\": \"The - URL the client should ping to indicate that the user clicked through on this - promoted item.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the promoted video.\"\n },\n \"destinationUrl\": - {\n \"description\": \"The URL the client should direct the user - to, if the user chooses to visit the advertiser's website.\",\n \"type\": - \"string\"\n },\n \"creativeViewUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user was shown this promoted item.\"\n },\n \"descriptionText\": - {\n \"type\": \"string\",\n \"description\": \"The text - description to accompany the promoted item.\"\n },\n \"forecastingUrl\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"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.\"\n },\n - \ \"customCtaButtonText\": {\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\",\n \"type\": \"string\"\n },\n \"adTag\": - {\n \"description\": \"The URL the client should fetch to request - a promoted item.\",\n \"type\": \"string\"\n },\n \"ctaType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of call-to-action, a message - to the user indicating action that can be taken.\",\n \"enum\": [\n - \ \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"description\": - \"Details about a resource which is being promoted.\",\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsPromotedItem\"\n },\n \"CommentSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"viewerRating\": - {\n \"description\": \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ]\n },\n \"likeCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The total - number of likes this comment has received.\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"authorDisplayName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the user who posted - the comment.\"\n },\n \"moderationStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment is - unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"description\": \"The comment's moderation status. - Will not be set if the comments were requested through the id filter.\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time when the comment was originally published.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"canRate\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the current viewer can rate this comment.\"\n },\n \"videoId\": - {\n \"description\": \"The ID of the video the comment refers to, - if any.\",\n \"type\": \"string\"\n },\n \"textDisplay\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"parentId\": - {\n \"description\": \"The unique id of the parent comment, only - set for replies.\",\n \"type\": \"string\"\n },\n \"authorChannelUrl\": - {\n \"type\": \"string\",\n \"description\": \"Link to the - author's YouTube channel, if any.\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"updatedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the comment was last updated.\"\n - \ },\n \"textOriginal\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ }\n },\n \"description\": \"Basic details about a comment, - such as its author and text.\",\n \"id\": \"CommentSnippet\"\n },\n - \ \"LiveChatMembershipGiftingDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"giftMembershipsLevelName\": {\n \"description\": - \"The name of the level of the gift memberships purchased by the user. The - Level names are defined by the YouTube channel offering the Membership. In - some situations this field isn't filled.\",\n \"type\": \"string\"\n - \ },\n \"giftMembershipsCount\": {\n \"description\": - \"The number of gift memberships purchased by the user.\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n }\n },\n \"id\": - \"LiveChatMembershipGiftingDetails\"\n },\n \"VideoTopicDetails\": {\n - \ \"description\": \"Freebase topic information related to the video.\",\n - \ \"properties\": {\n \"relevantTopicIds\": {\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"topicCategories\": {\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\"\n },\n \"topicIds\": {\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoTopicDetails\"\n },\n \"VideoCategory\": {\n \"description\": - \"A *videoCategory* resource identifies a category that has been or could - be associated with uploaded videos.\",\n \"id\": \"VideoCategory\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video category.\"\n },\n \"snippet\": {\n \"$ref\": - \"VideoCategorySnippet\",\n \"description\": \"The snippet object - contains basic details about the video category, including its title.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"default\": \"youtube#videoCategory\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"Activity\": {\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the activity.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the activity, including - the activity's type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n - \ },\n \"contentDetails\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetails\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#activity\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n - \ }\n },\n \"description\": \"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.\",\n \"type\": - \"object\",\n \"id\": \"Activity\"\n },\n \"ChannelAuditDetails\": - {\n \"description\": \"The auditDetails object encapsulates channel data - that is relevant for YouTube Partners during the audit process.\",\n \"id\": - \"ChannelAuditDetails\",\n \"properties\": {\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsSubscription\": {\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\"\n }\n },\n \"description\": - \"Information about a channel that a user subscribed to.\",\n \"id\": - \"ActivityContentDetailsSubscription\",\n \"type\": \"object\"\n },\n - \ \"VideoProjectDetails\": {\n \"description\": \"DEPRECATED. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"properties\": {},\n \"id\": \"VideoProjectDetails\",\n \"type\": - \"object\"\n },\n \"LiveChatMessageDeletedDetails\": {\n \"properties\": - {\n \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"type\": - \"object\"\n },\n \"LiveChatFanFundingEventDetails\": {\n \"properties\": - {\n \"amountDisplayString\": {\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\",\n \"type\": - \"string\"\n },\n \"amountMicros\": {\n \"description\": - \"The amount of the fund.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ },\n \"userComment\": {\n \"description\": \"The comment - added by the user to this fan funding event.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"ActivityContentDetailsBulletin\": {\n \"description\": - \"Details about a channel bulletin post.\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource associated with a bulletin post. @mutable youtube.activities.insert\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"type\": \"object\"\n },\n \"CommentListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"default\": \"youtube#commentListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of comments that match the request criteria.\",\n - \ \"items\": {\n \"$ref\": \"Comment\"\n }\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n }\n },\n \"id\": \"CommentListResponse\"\n - \ },\n \"VideoLiveStreamingDetails\": {\n \"description\": \"Details - about the live streaming metadata.\",\n \"properties\": {\n \"actualStartTime\": - {\n \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"activeLiveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the currently active live chat attached to this video. This field is filled - only if the video is a currently live broadcast that has live chat. Once the - broadcast transitions to complete this field will be removed and the live - chat closed down. For persistent broadcasts that live chat id will no longer - be tied to this video but rather to the new video being displayed at the persistent - page.\"\n },\n \"actualEndTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The time - that the broadcast actually ended. This value will not be available until - the broadcast is over.\"\n },\n \"concurrentViewers\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n },\n - \ \"scheduledEndTime\": {\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast is scheduled to end. If the value is empty or - the property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"format\": \"date-time\"\n },\n \"scheduledStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast is scheduled to begin.\"\n - \ }\n },\n \"id\": \"VideoLiveStreamingDetails\",\n \"type\": - \"object\"\n },\n \"ChannelContentOwnerDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"contentOwner\": {\n \"description\": - \"The ID of the content owner linked to the channel.\",\n \"type\": - \"string\"\n },\n \"timeLinked\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the channel was linked to the content owner.\"\n }\n },\n - \ \"id\": \"ChannelContentOwnerDetails\",\n \"description\": \"The - contentOwnerDetails object encapsulates channel data that is relevant for - YouTube Partners linked with the channel.\"\n },\n \"LiveStreamSnippet\": - {\n \"properties\": {\n \"description\": {\n \"description\": - \"The stream's description. The value cannot be longer than 10000 characters.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The stream's - title. The value must be between 1 and 128 characters long.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the stream was created.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamSnippet\"\n },\n \"ThirdPartyLink\": {\n \"properties\": - {\n \"status\": {\n \"description\": \"The status object contains - information about the status of the link.\",\n \"$ref\": \"ThirdPartyLinkStatus\"\n - \ },\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#thirdPartyLink\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLink\\\".\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the third- party account link.\",\n \"$ref\": - \"ThirdPartyLinkSnippet\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource\"\n }\n - \ },\n \"id\": \"ThirdPartyLink\",\n \"description\": \"A *third - party account link* resource represents a link between a YouTube account or - a channel and an account on a third-party service.\",\n \"type\": \"object\"\n - \ },\n \"VideoGetRatingResponse\": {\n \"id\": \"VideoGetRatingResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#videoGetRatingResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"A list of ratings - that match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoRating\"\n }\n }\n }\n - \ },\n \"I18nRegionSnippet\": {\n \"properties\": {\n \"name\": - {\n \"description\": \"The human-readable name of the region.\",\n - \ \"type\": \"string\"\n },\n \"gl\": {\n \"description\": - \"The region code as a 2-letter ISO country code.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - an i18n region, such as region code and human-readable name.\",\n \"type\": - \"object\",\n \"id\": \"I18nRegionSnippet\"\n },\n \"ChannelLocalization\": - {\n \"properties\": {\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - description.\"\n },\n \"title\": {\n \"description\": - \"The localized strings for channel's title.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Channel - localization setting\",\n \"id\": \"ChannelLocalization\"\n },\n \"InvideoPosition\": - {\n \"id\": \"InvideoPosition\",\n \"type\": \"object\",\n \"properties\": - {\n \"cornerPosition\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\",\n - \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"type\": - \"string\"\n },\n \"type\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"corner\"\n ],\n \"enumDescriptions\": - [\n \"\"\n ],\n \"description\": \"Defines the - position type.\"\n }\n },\n \"description\": \"Describes - the spatial position of a visual widget inside a video. It is a union of various - position types, out of which only will be set one.\"\n },\n \"ChannelConversionPing\": - {\n \"description\": \"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.\",\n \"properties\": {\n \"conversionUrl\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"context\": {\n \"description\": \"Defines the context of - the ping.\",\n \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelConversionPing\"\n - \ },\n \"ActivityContentDetailsComment\": {\n \"properties\": {\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with the comment.\"\n }\n },\n \"description\": - \"Information about a resource that received a comment.\",\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsComment\"\n },\n \"IngestionInfo\": - {\n \"id\": \"IngestionInfo\",\n \"description\": \"Describes information - necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"properties\": - {\n \"backupIngestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\"\n - \ },\n \"rtmpsIngestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"This ingestion url may be used instead of ingestionAddress - in order to stream via RTMPS. Not applicable to non-RTMP streams.\"\n },\n - \ \"ingestionAddress\": {\n \"description\": \"The primary - ingestion URL that you should use to stream video to YouTube. You must stream - video to this URL. Depending on which application or tool you use to encode - your video stream, you may need to enter the stream URL and stream name separately - or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \",\n \"type\": \"string\"\n },\n \"rtmpsBackupIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - backupIngestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"streamName\": - {\n \"type\": \"string\",\n \"description\": \"The stream - name that YouTube assigns to the video stream.\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoCategorySnippet\": {\n \"properties\": - {\n \"channelId\": {\n \"description\": \"The YouTube channel - that created the video category.\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The video category's title.\"\n - \ },\n \"assignable\": {\n \"type\": \"boolean\"\n }\n - \ },\n \"id\": \"VideoCategorySnippet\",\n \"description\": - \"Basic details about a video category, such as its localized title.\",\n - \ \"type\": \"object\"\n },\n \"ChannelConversionPings\": {\n \"id\": - \"ChannelConversionPings\",\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"pings\": {\n \"description\": \"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.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ }\n }\n }\n },\n \"LiveStreamConfigurationIssue\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamConfigurationIssue\",\n - \ \"properties\": {\n \"description\": {\n \"description\": - \"The long-form description of the issue and how to resolve it.\",\n \"type\": - \"string\"\n },\n \"severity\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"How severe this - issue is to the stream.\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"description\": \"The kind of error happening.\",\n - \ \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n - \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n - \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n - \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n - \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n - \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"reason\": {\n \"description\": - \"The short-form reason for this issue.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoAgeGating\": {\n \"properties\": - {\n \"alcoholContent\": {\n \"description\": \"Indicates whether - or not the video has alcoholic beverage content. Only users of legal purchasing - age in a particular country, as identified by ICAP, can view the content.\",\n - \ \"type\": \"boolean\"\n },\n \"videoGameRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ],\n \"type\": \"string\",\n \"description\": - \"Video game rating, if any.\"\n },\n \"restricted\": {\n \"description\": - \"Age-restricted trailers. For redband trailers and adult-rated video-games. - Only users aged 18+ can view the content. The the field is true the content - is restricted to viewers aged 18+. Otherwise The field won't be present.\",\n - \ \"type\": \"boolean\"\n }\n },\n \"id\": \"VideoAgeGating\",\n - \ \"type\": \"object\"\n },\n \"ChannelSectionSnippet\": {\n \"id\": - \"ChannelSectionSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"position\": {\n \"description\": \"The position of the - channel section in the channel.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the channel section's - default title and description.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\",\n \"type\": \"string\"\n },\n \"style\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The style of the channel section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ]\n - \ },\n \"type\": {\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of the channel section.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"localized\": {\n \"$ref\": - \"ChannelSectionLocalization\",\n \"description\": \"Localized title, - read-only.\"\n },\n \"title\": {\n \"description\": - \"The channel section's title for multiple_playlists and multiple_channels.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about a channel section, including title, style and position.\"\n - \ },\n \"ContentRating\": {\n \"id\": \"ContentRating\",\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\",\n \"type\": \"object\",\n \"properties\": - {\n \"resorteviolenciaRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Venezuela.\"\n },\n \"cscfRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"description\": \"The video's rating from Luxembourg's - Commission de surveillance de la classification des films (CSCF).\"\n },\n - \ \"smsaRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ]\n },\n \"moctwRating\": - {\n \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Taiwan's - Ministry of Culture (\u6587\u5316\u90E8).\"\n },\n \"mccaaRating\": - {\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n - \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n - \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n - \ \"mccaa18\",\n \"mccaaUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Malta's Film Age-Classification Board.\"\n },\n \"cicfRating\": - {\n \"description\": \"The video's rating from the Commission de - Contr\xF4le des Films (Belgium).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ]\n },\n \"agcomRating\": - {\n \"description\": \"The video's rating from Italy's Autorit\xE0 - per le Garanzie nelle Comunicazioni (AGCOM).\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n - \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ]\n },\n \"russiaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"description\": \"The video's National Film Registry - of the Russian Federation (MKRF - Russia) rating.\"\n },\n \"mekuRating\": - {\n \"description\": \"The video's rating from Finland's Kansallinen - Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"cnaRating\": {\n \"description\": - \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\",\n \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n - \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ]\n },\n \"ifcoRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Irish Film Classification Office (IFCO - Ireland) rating. See the IFCO website - for more information.\",\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n - \ ]\n },\n \"nfrcRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n - \ \"\"\n ],\n \"enum\": [\n \"nfrcUnspecified\",\n - \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n - \ \"nfrcX\",\n \"nfrcUnrated\"\n ],\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\"\n },\n - \ \"eefilmRating\": {\n \"description\": \"The video's rating - in Estonia.\",\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"cceRating\": - {\n \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ],\n \"description\": \"The video's rating from Portugal's - Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"type\": \"string\"\n },\n \"kijkwijzerRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\",\n \"type\": - \"string\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ]\n },\n \"rtcRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"rtcUnspecified\",\n - \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n - \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n - \ ],\n \"description\": \"The video's General Directorate - of Radio, Television and Cinematography (Mexico) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ]\n },\n \"kmrbRating\": {\n \"enum\": [\n - \ \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\"\n },\n \"lsfRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"SU\",\n \"A\",\n \"BO\",\n \"13\",\n - \ \"R\",\n \"17\",\n \"D\",\n \"21\",\n - \ \"\"\n ],\n \"enum\": [\n \"lsfUnspecified\",\n - \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n - \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n - \ \"lsfUnrated\"\n ],\n \"description\": \"The - video's rating from Indonesia's Lembaga Sensor Film.\"\n },\n \"icaaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"description\": - \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales - (ICAA - Spain) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"APTA\",\n \"7\",\n \"12\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X\",\n \"\"\n - \ ]\n },\n \"smaisRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ]\n },\n \"bbfcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ],\n - \ \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n - \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n - \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n - \ \"bbfcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's British Board of Film Classification - (BBFC) rating.\"\n },\n \"fskRating\": {\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\",\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"mccypRating\": - {\n \"description\": \"The video's rating from the Danish Film Institute's - (Det Danske Filminstitut) Media Council for Children and Young People.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"7\",\n \"11\",\n \"15\",\n - \ \"\"\n ],\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ]\n },\n - \ \"djctqRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"L\",\n \"10\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n - \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n - \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n - \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n - \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n - \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n - \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n - \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n - \ ],\n \"description\": \"The video's Departamento de Justi\xE7a, - Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n - \ \"type\": \"string\"\n },\n \"skfilmRating\": {\n - \ \"description\": \"The video's rating in Slovakia.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n - \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n - \ \"skfilmUnrated\"\n ]\n },\n \"egfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ],\n - \ \"enum\": [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n - \ \"egfilm18\",\n \"egfilmBn\",\n \"egfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Egypt.\",\n - \ \"type\": \"string\"\n },\n \"mibacRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Ministero dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ]\n },\n - \ \"anatelRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"description\": \"The video's Anatel - (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\",\n - \ \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n - \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n - \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n - \ \"anatelUnrated\"\n ]\n },\n \"eirinRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"The video's Eirin (\u6620\u502B) - rating. Eirin is the Japanese rating system.\"\n },\n \"nfvcbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"18\",\n \"RE\",\n \"\"\n ],\n - \ \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ],\n \"description\": \"The - video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"type\": \"string\"\n },\n \"bmukkRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"enum\": - [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n \"bmukk6\",\n - \ \"bmukk8\",\n \"bmukk10\",\n \"bmukk12\",\n - \ \"bmukk14\",\n \"bmukk16\",\n \"bmukkUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Austrian - Board of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst - und Kultur).\",\n \"type\": \"string\"\n },\n \"mcstRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating system for Vietnam - MCST\",\n \"enumDescriptions\": [\n \"\",\n - \ \"P\",\n \"0\",\n \"C13\",\n \"C16\",\n - \ \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n \"\"\n - \ ],\n \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ]\n },\n \"acbRating\": - {\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"description\": \"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.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ]\n },\n \"chvrsRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ],\n \"description\": \"The video's Canadian Home Video - Rating System (CHVRS) rating.\",\n \"enum\": [\n \"chvrsUnspecified\",\n - \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n - \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n - \ \"chvrsUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"ecbmctRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"description\": \"Rating system in Turkey - Evaluation - and Classification Board of the Ministry of Culture and Tourism\"\n },\n - \ \"mdaRating\": {\n \"description\": \"The video's rating - from Singapore's Media Development Authority (MDA) and, specifically, it's - Board of Film Censors (BFC).\",\n \"enum\": [\n \"mdaUnspecified\",\n - \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n - \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n - \ \"mdaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ]\n },\n \"nbcplRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Poland.\",\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"csaRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from France's - Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\",\n - \ \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ]\n },\n - \ \"incaaRating\": {\n \"description\": \"The video's INCAA - (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ]\n },\n \"fcbmRating\": {\n \"enum\": - [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Malaysia's - Film Censorship Board.\"\n },\n \"chfilmRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Switzerland.\"\n - \ },\n \"cbfcRating\": {\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Central Board of Film - Certification (CBFC - India) rating.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ]\n },\n \"mpaatRating\": - {\n \"description\": \"The rating system for trailer, DVD, and Ad - in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GB\",\n \"RB\"\n ]\n - \ },\n \"fpbRatingReasons\": {\n \"description\": \"Reasons - that explain why the video received its FPB (South Africa) rating.\",\n \"type\": - \"array\",\n \"items\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ],\n \"type\": - \"string\"\n }\n },\n \"nbcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Maldives - National Bureau of Classification.\"\n },\n \"grfilmRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n - \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n - \ ],\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"description\": \"The video's rating in Greece.\"\n },\n - \ \"mtrcbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"R-13\",\n \"R-16\",\n - \ \"R-18\",\n \"X\",\n \"\"\n ],\n - \ \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Movie - and Television Review and Classification Board (Philippines).\",\n \"type\": - \"string\"\n },\n \"mpaaRating\": {\n \"enum\": [\n - \ \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n - \ \"! X\",\n \"\"\n ]\n },\n \"menaMpaaRating\": - {\n \"type\": \"string\",\n \"description\": \"The rating - system for MENA countries, a clone of MPAA. It is needed to prevent titles - go live w/o additional QC check, since some of them can be inappropriate for - the countries at all. See b/33408548 for more details.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ],\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ]\n - \ },\n \"oflcRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"description\": \"The video's - Office of Film and Literature Classification (OFLC - New Zealand) rating.\",\n - \ \"type\": \"string\"\n },\n \"cncRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"Rating system in France - Commission de classification cinematographique\",\n - \ \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ]\n },\n \"djctqRatingReasons\": {\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"fcoRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"description\": - \"The video's rating from Hong Kong's Office for Film, Newspaper and Article - Administration.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"I\",\n \"IIA\",\n \"IIB\",\n \"II\",\n - \ \"III\",\n \"\"\n ]\n },\n \"kfcbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Kenya - Film Classification Board.\",\n \"type\": \"string\",\n \"enum\": - [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ]\n },\n \"catvfrRating\": {\n \"description\": - \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ]\n },\n \"cccRating\": {\n - \ \"description\": \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica - (Chile) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Todo espectador\",\n \"6+ - Inconveniente para menores - de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n \"18+ - - contenido excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"catvRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"C\",\n - \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n - \ \"18+\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n - \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n - \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n - \ \"catvE\"\n ],\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"rteRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ],\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ]\n },\n \"medietilsynetRating\": {\n \"enum\": - [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Medietilsynet, - the Norwegian Media Authority.\",\n \"type\": \"string\"\n },\n - \ \"fpbRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n - \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n - \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ],\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\"\n },\n - \ \"nkclvRating\": {\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Nacion\xE3lais Kino - centrs (National Film Centre of Latvia).\"\n },\n \"tvpgRating\": - {\n \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n - \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n - \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ],\n \"description\": \"The video's TV Parental Guidelines - (TVPG) rating.\"\n },\n \"fmocRating\": {\n \"enum\": - [\n \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ],\n \"description\": - \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\"\n },\n \"nmcRating\": {\n \"enum\": [\n - \ \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n - \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n - \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"description\": \"The National - Media Council ratings system for United Arab Emirates.\"\n },\n \"bfvcRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Thailand's Board of Film and Video Censors.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ],\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ]\n },\n - \ \"ilfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Israel.\",\n \"enum\": - [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n - \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ]\n },\n \"rcnofRating\": - {\n \"description\": \"The video's rating from the Hungarian Nemzeti - Filmiroda, the Rating Committee of the National Office of Film.\",\n \"enum\": - [\n \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n - \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n - \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"ytRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"A rating that YouTube uses to identify - age-restricted content.\",\n \"type\": \"string\",\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ]\n - \ },\n \"pefilmRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Peru.\",\n \"enum\": - [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ]\n },\n \"mocRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\"\n },\n \"czfilmRating\": - {\n \"description\": \"The video's rating in the Czech Republic.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatBan\": {\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\",\n - \ \"type\": \"object\",\n \"id\": \"LiveChatBan\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatBan\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\"\n }\n - \ }\n },\n \"I18nLanguage\": {\n \"description\": \"An *i18nLanguage* - resource identifies a UI language currently supported by YouTube.\",\n \"id\": - \"I18nLanguage\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the i18n language.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nLanguage\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n - \ }\n }\n },\n \"Subscription\": {\n \"description\": - \"A *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#subscription\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"subscriberSnippet\": {\n - \ \"$ref\": \"SubscriptionSubscriberSnippet\",\n \"description\": - \"The subscriberSnippet object contains basic details about the subscriber.\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains basic statistics about the subscription.\",\n - \ \"$ref\": \"SubscriptionContentDetails\"\n },\n \"snippet\": - {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the subscription.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"Subscription\"\n },\n \"SuperChatEvent\": {\n \"id\": - \"SuperChatEvent\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the Super Chat event.\"\n - \ },\n \"snippet\": {\n \"description\": \"The `snippet` - object contains basic details about the Super Chat event.\",\n \"$ref\": - \"SuperChatEventSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#superChatEvent\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A `__superChatEvent__` resource represents a Super - Chat purchase on a YouTube channel.\"\n },\n \"SuperChatEventListResponse\": - {\n \"id\": \"SuperChatEventListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"SuperChatEvent\"\n },\n - \ \"description\": \"A list of Super Chat purchases that match the - request criteria.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n }\n - \ }\n },\n \"AccessPolicy\": {\n \"type\": \"object\",\n \"id\": - \"AccessPolicy\",\n \"properties\": {\n \"exception\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the default policy do not apply.\"\n },\n \"allowed\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of allowed indicates whether the access to the policy is allowed or denied - by default.\"\n }\n },\n \"description\": \"Rights management - policy for YouTube resources.\"\n },\n \"ChannelContentDetails\": {\n - \ \"id\": \"ChannelContentDetails\",\n \"type\": \"object\",\n \"description\": - \"Details about the content of a channel.\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"properties\": {\n \"likes\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"uploads\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s uploaded videos. Use the - videos.insert method to upload new videos and the videos.delete method to - delete previously uploaded videos.\"\n },\n \"watchLater\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch later playlist. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"favorites\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"watchHistory\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n }\n - \ },\n \"type\": \"object\"\n }\n }\n },\n - \ \"ActivityContentDetailsRecommendation\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsRecommendation\",\n \"description\": - \"Information that identifies the recommended resource.\",\n \"properties\": - {\n \"reason\": {\n \"description\": \"The reason that the - resource is recommended to the user.\",\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"seedResourceId\": {\n \"description\": \"The - seedResourceId object contains information about the resource that caused - the recommendation.\",\n \"$ref\": \"ResourceId\"\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the recommended resource.\",\n \"$ref\": \"ResourceId\"\n - \ }\n }\n },\n \"CaptionListResponse\": {\n \"type\": - \"object\",\n \"id\": \"CaptionListResponse\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#captionListResponse\"\n - \ },\n \"items\": {\n \"description\": \"A list of captions - that match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Caption\"\n }\n }\n }\n },\n - \ \"MembershipsLevelListResponse\": {\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of pricing levels offered - by a creator to the fans.\",\n \"items\": {\n \"$ref\": - \"MembershipsLevel\"\n }\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevelListResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"MembershipsLevelListResponse\"\n },\n \"LiveChatTextMessageDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"messageText\": - {\n \"type\": \"string\",\n \"description\": \"The user's - message.\"\n }\n },\n \"id\": \"LiveChatTextMessageDetails\"\n - \ },\n \"MonitorStreamInfo\": {\n \"id\": \"MonitorStreamInfo\",\n - \ \"description\": \"Settings and Info of the monitor stream\",\n \"properties\": - {\n \"broadcastStreamDelayMs\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"If you have set the enableMonitorStream property to true, then this property - determines the length of the live broadcast delay.\"\n },\n \"enableMonitorStream\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"boolean\",\n \"description\": - \"This value determines whether the monitor stream is enabled for the broadcast. - If the monitor stream is enabled, then YouTube will broadcast the event content - on a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\"\n },\n - \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ChannelTopicDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"topicCategories\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Wikipedia URLs that describe the channel's - content.\",\n \"type\": \"array\"\n },\n \"topicIds\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of Freebase - topic IDs associated with the channel. You can retrieve information about - each topic using the Freebase Topic API.\"\n }\n },\n \"id\": - \"ChannelTopicDetails\",\n \"description\": \"Freebase topic information - related to the channel.\"\n },\n \"LiveStreamStatus\": {\n \"type\": - \"object\",\n \"description\": \"Brief description of the live stream - status.\",\n \"id\": \"LiveStreamStatus\",\n \"properties\": {\n - \ \"healthStatus\": {\n \"$ref\": \"LiveStreamHealthStatus\",\n - \ \"description\": \"The health status of the stream.\"\n },\n - \ \"streamStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n }\n },\n \"Video\": - {\n \"id\": \"Video\",\n \"properties\": {\n \"monetizationDetails\": - {\n \"description\": \"The monetizationDetails object encapsulates - information about the monetization status of the video.\",\n \"$ref\": - \"VideoMonetizationDetails\"\n },\n \"suggestions\": {\n \"description\": - \"The suggestions object encapsulates suggestions that identify opportunities - to improve the video quality or the metadata for the uploaded video. This - data can only be retrieved by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the video, such as its title, description, - and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the video's uploading, processing, and privacy statuses.\",\n \"$ref\": - \"VideoStatus\"\n },\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information about the video content, including the length - of the video and its aspect ratio.\",\n \"$ref\": \"VideoContentDetails\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n },\n - \ \"statistics\": {\n \"$ref\": \"VideoStatistics\",\n \"description\": - \"The statistics object contains statistics about the video.\"\n },\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"VideoLocalization\"\n },\n \"type\": \"object\",\n \"description\": - \"The localizations object contains localized versions of the basic details - about the video, such as its title and description.\"\n },\n \"ageGating\": - {\n \"description\": \"Age restriction details related to a video. - This data can only be retrieved by the video owner.\",\n \"$ref\": - \"VideoAgeGating\"\n },\n \"processingDetails\": {\n \"$ref\": - \"VideoProcessingDetails\",\n \"description\": \"The processingDetails - object encapsulates information about YouTube's progress in processing the - uploaded video file. The properties in the object identify the current processing - status and an estimate of the time remaining until YouTube finishes processing - the video. This part also indicates whether different types of data or content, - such as file details or thumbnail images, are available for the video. The - processingProgress object is designed to be polled so that the video uploaded - can track the progress that YouTube has made in processing the uploaded video - file. This data can only be retrieved by the video owner.\"\n },\n - \ \"liveStreamingDetails\": {\n \"$ref\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#video\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"type\": \"string\"\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the video - in an embedded player.\",\n \"$ref\": \"VideoPlayer\"\n },\n - \ \"fileDetails\": {\n \"description\": \"The fileDetails object - encapsulates information about the video file that was uploaded to YouTube, - including the file's resolution, duration, audio and video codecs, stream - bitrates, and more. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoFileDetails\"\n },\n \"recordingDetails\": - {\n \"$ref\": \"VideoRecordingDetails\",\n \"description\": - \"The recordingDetails object encapsulates information about the location, - date and address where the video was recorded.\"\n },\n \"projectDetails\": - {\n \"$ref\": \"VideoProjectDetails\",\n \"description\": - \"The projectDetails object contains information about the project specific - video metadata. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ }\n },\n \"description\": \"A *video* resource represents - a YouTube video.\",\n \"type\": \"object\"\n },\n \"SearchResultSnippet\": - {\n \"properties\": {\n \"publishedAt\": {\n \"description\": - \"The creation date and time of the resource that the search result identifies.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"description\": \"A description of - the search result.\",\n \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"type\": - \"string\",\n \"description\": \"It indicates if the resource (video - or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" - if there is not any upcoming/active live broadcasts.\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the search result. 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.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\"\n },\n \"title\": - {\n \"description\": \"The title of the search result.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the channel that published the resource - that the search result identifies.\"\n }\n },\n \"id\": \"SearchResultSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a search result, including title, description and thumbnails of the item referenced - by the search result.\"\n },\n \"ChannelListResponse\": {\n \"id\": - \"ChannelListResponse\",\n \"properties\": {\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Channel\"\n },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"I18nRegion\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the i18n region.\"\n },\n \"snippet\": {\n \"$ref\": - \"I18nRegionSnippet\",\n \"description\": \"The snippet object contains - basic details about the i18n region, such as region code and human-readable - name.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"default\": \"youtube#i18nRegion\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"I18nRegion\",\n - \ \"description\": \"A *i18nRegion* resource identifies a region where - YouTube is available.\",\n \"type\": \"object\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"isVerified\": - {\n \"description\": \"Whether the author's identity has been verified - by YouTube.\",\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"description\": \"The YouTube channel ID.\",\n \"type\": - \"string\"\n },\n \"isChatModerator\": {\n \"description\": - \"Whether the author is a moderator of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"isChatOwner\": {\n \"description\": - \"Whether the author is the owner of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"channelUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's URL.\"\n },\n \"displayName\": - {\n \"description\": \"The channel's display name.\",\n \"type\": - \"string\"\n },\n \"isChatSponsor\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a sponsor - of the live chat.\"\n },\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatMessageAuthorDetails\"\n },\n \"LiveBroadcastStatistics\": - {\n \"id\": \"LiveBroadcastStatistics\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"concurrentViewers\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"type\": \"string\"\n },\n \"totalChatCount\": - {\n \"type\": \"string\",\n \"description\": \"The total - number of live chat messages currently on the broadcast. The property and - its value will be present if the broadcast is public, has the live chat feature - enabled, and has at least one message. Note that this field will not be filled - after the broadcast ends. So this property would not identify the number of - chat messages for an archived video of a completed live broadcast.\",\n \"format\": - \"uint64\"\n }\n },\n \"description\": \"Statistics about - the live broadcast. These represent a snapshot of the values at the time of - the request. Statistics are only returned for live broadcasts.\"\n },\n - \ \"ChannelSection\": {\n \"properties\": {\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains details - about the channel section content, such as a list of playlists or channels - featured in the section.\",\n \"$ref\": \"ChannelSectionContentDetails\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the channel section, such as its type, - style and title.\",\n \"$ref\": \"ChannelSectionSnippet\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"default\": \"youtube#channelSection\"\n },\n \"localizations\": - {\n \"additionalProperties\": {\n \"$ref\": \"ChannelSectionLocalization\"\n - \ },\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\"\n },\n \"id\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel section.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n - \ \"description\": \"The targeting object contains basic targeting - settings about the channel section.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelSection\"\n },\n \"Thumbnail\": - {\n \"type\": \"object\",\n \"properties\": {\n \"width\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"(Optional) Width of the thumbnail image.\"\n },\n \"url\": - {\n \"type\": \"string\",\n \"description\": \"The thumbnail - image's URL.\"\n },\n \"height\": {\n \"description\": - \"(Optional) Height of the thumbnail image.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n }\n },\n \"description\": - \"A thumbnail is an image representing a YouTube resource.\",\n \"id\": - \"Thumbnail\"\n },\n \"VideoSuggestions\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"tagSuggestions\": {\n \"items\": - {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of keyword - tags that could be added to the video's metadata to increase the likelihood - that users will locate your video when searching or browsing on YouTube.\"\n - \ },\n \"editorSuggestions\": {\n \"description\": \"A - list of video editing operations that might improve the video quality or playback - experience of the uploaded video.\",\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ],\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ]\n - \ },\n \"type\": \"array\"\n },\n \"processingHints\": - {\n \"items\": {\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ],\n \"enumDescriptions\": [\n \"The MP4 - file is not streamable, this will slow down the processing. MOOV atom was - not found at the beginning of the file.\",\n \"Probably a better - quality version of the video exists. The video has wide screen aspect ratio, - but is not an HD video.\",\n \"Uploaded video is spherical video.\",\n - \ \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of suggestions that may improve YouTube's - ability to process the video.\"\n },\n \"processingErrors\": - {\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n - \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n - \ \"unsupportedSpatialAudioLayout\"\n ],\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ]\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of errors that will prevent YouTube from - successfully processing the uploaded video video. These errors indicate that, - regardless of the video's current processing status, eventually, that status - will almost certainly be failed.\"\n },\n \"processingWarnings\": - {\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ]\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of reasons - why YouTube may have difficulty transcoding the uploaded video or that might - result in an erroneous transcoding. These warnings are generated before YouTube - actually processes the uploaded video file. In addition, they identify issues - that are unlikely to cause the video processing to fail but that might cause - problems such as sync issues, video artifacts, or a missing audio track.\"\n - \ }\n },\n \"id\": \"VideoSuggestions\",\n \"description\": - \"Specifies suggestions on how to improve video content, including encoding - hints, tag suggestions, and editor suggestions.\"\n },\n \"ActivityContentDetailsLike\": - {\n \"id\": \"ActivityContentDetailsLike\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the rated resource.\"\n }\n },\n \"description\": - \"Information about a resource that received a positive (like) rating.\"\n - \ },\n \"LiveBroadcastListResponse\": {\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"default\": - \"youtube#liveBroadcastListResponse\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"items\": {\n \"description\": \"A list of broadcasts - that match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"CommentThread\": {\n \"properties\": {\n \"snippet\": {\n - \ \"$ref\": \"CommentThreadSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the comment thread.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentThread\"\n - \ },\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n - \ \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"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.\",\n \"id\": \"CommentThread\"\n },\n \"LiveBroadcastContentDetails\": - {\n \"properties\": {\n \"projection\": {\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"latencyPreference\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Best for: highest quality viewer playbacks and higher resolutions.\",\n - \ \"Best for: near real-time interaction, with minimal playback - buffering.\",\n \"Best for: real-time interaction Does not support: - Closed captions, 1440p, and 4k resolutions\"\n ],\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ]\n },\n - \ \"enableEmbed\": {\n \"description\": \"This setting indicates - whether the broadcast video can be played in an embedded player. If you choose - to archive the video (using the enableArchive property), this setting will - also apply to the archived video.\",\n \"type\": \"boolean\"\n },\n - \ \"boundStreamId\": {\n \"description\": \"This value uniquely - identifies the live stream bound to the broadcast.\",\n \"type\": - \"string\"\n },\n \"enableDvr\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting determines whether viewers can access - DVR controls while watching the video. DVR controls enable the viewer to control - the video playback experience by pausing, rewinding, or fast forwarding content. - The default value for this property is true. *Important:* You must set the - value to true and also set the enableArchive property's value to true if you - want to make playback available immediately after the broadcast ends.\"\n - \ },\n \"closedCaptionsType\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ]\n },\n \"monitorStream\": {\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\",\n \"$ref\": \"MonitorStreamInfo\"\n - \ },\n \"stereoLayout\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\",\n \"enum\": - [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ]\n },\n \"enableContentEncryption\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether YouTube should enable content encryption for the broadcast.\"\n - \ },\n \"mesh\": {\n \"format\": \"byte\",\n \"description\": - \"The mesh for projecting the video if projection is mesh. The mesh value - must be a UTF-8 string containing the base-64 encoding of 3D mesh data that - follows the Spherical Video V2 RFC specification for an mshp box, excluding - the box size and type but including the following four reserved zero bytes - for the version and flags.\",\n \"type\": \"string\"\n },\n - \ \"enableAutoStop\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether auto stop is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\"\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the live - stream referenced by boundStreamId was last updated.\",\n \"format\": - \"date-time\"\n },\n \"enableClosedCaptions\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - HTTP POST closed captioning is enabled for this broadcast. The ingestion URL - of the closed captions is returned through the liveStreams API. This is mutually - exclusive with using the closed_captions_type property, and is equivalent - to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n - \ \"enableLowLatency\": {\n \"description\": \"Indicates whether - this broadcast has low latency enabled.\",\n \"type\": \"boolean\"\n - \ },\n \"recordFromStart\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\"\n },\n \"enableAutoStart\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - auto start is enabled for this broadcast. The default value for this property - is false. This setting can only be used by Events.\"\n },\n \"startWithSlate\": - {\n \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n }\n },\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"Detailed settings of a broadcast.\",\n \"type\": - \"object\"\n },\n \"MemberSnippet\": {\n \"id\": \"MemberSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"membershipsDetails\": - {\n \"$ref\": \"MembershipsDetails\",\n \"description\": - \"Details about the user's membership.\"\n },\n \"memberDetails\": - {\n \"description\": \"Details about the member.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering memberships.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelBrandingSettings\": {\n - \ \"description\": \"Branding properties of a YouTube channel.\",\n \"properties\": - {\n \"watch\": {\n \"$ref\": \"WatchSettings\",\n \"description\": - \"Branding properties for the watch page.\"\n },\n \"channel\": - {\n \"$ref\": \"ChannelSettings\",\n \"description\": \"Branding - properties for the channel view.\"\n },\n \"image\": {\n \"description\": - \"Branding properties for branding images.\",\n \"$ref\": \"ImageSettings\"\n - \ },\n \"hints\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n },\n \"description\": - \"Additional experimental branding properties.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelBrandingSettings\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"id\": \"LiveChatModeratorListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of moderators that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n }\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatModeratorListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n }\n },\n \"SubscriptionContentDetails\": {\n \"description\": - \"Details about the content to witch a subscription refers.\",\n \"properties\": - {\n \"totalItemCount\": {\n \"description\": \"The approximate - number of items that the subscription points to.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"newItemCount\": {\n - \ \"format\": \"uint32\",\n \"description\": \"The number - of new items in the subscription since its content was last read.\",\n \"type\": - \"integer\"\n },\n \"activityType\": {\n \"type\": - \"string\",\n \"description\": \"The type of activity this subscription - is for (only uploads, everything).\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"subscriptionActivityTypeUnspecified\",\n \"all\",\n - \ \"uploads\"\n ]\n }\n },\n \"type\": - \"object\",\n \"id\": \"SubscriptionContentDetails\"\n },\n \"ChannelStatistics\": - {\n \"type\": \"object\",\n \"properties\": {\n \"hiddenSubscriberCount\": - {\n \"description\": \"Whether or not the number of subscribers is - shown for this user.\",\n \"type\": \"boolean\"\n },\n \"commentCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of comments for the channel.\",\n \"format\": \"uint64\"\n },\n - \ \"subscriberCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of subscribers that the channel has.\",\n \"format\": - \"uint64\"\n },\n \"viewCount\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of times the channel has been viewed.\"\n },\n \"videoCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of videos uploaded to the channel.\"\n }\n },\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\",\n \"id\": \"ChannelStatistics\"\n },\n \"LiveBroadcastStatus\": - {\n \"id\": \"LiveBroadcastStatus\",\n \"description\": \"Live broadcast - state.\",\n \"type\": \"object\",\n \"properties\": {\n \"recordingStatus\": - {\n \"enumDescriptions\": [\n \"No value or the value - is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"description\": - \"The broadcast's recording status.\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"type\": \"string\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"This field - will be set to True if the creator declares the broadcast to be kids only: - go/live-cw-work.\"\n },\n \"liveBroadcastPriority\": {\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"enum\": - [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ],\n \"type\": - \"string\",\n \"description\": \"Priority of the live broadcast event - (internal state).\"\n },\n \"privacyStatus\": {\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"lifeCycleStatus\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"No - value or the value is unknown.\",\n \"Incomplete settings, but - otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"description\": \"The broadcast's status. The status can be updated - using the API's liveBroadcasts.transition method.\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the broadcast is made for kids or not, decided by YouTube instead of the creator. - This field is read only.\"\n }\n }\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"properties\": {\n \"bannedUserDetails\": {\n \"description\": - \"The details of the user that was banned.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banType\": {\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ],\n \"description\": \"The - type of ban.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"banDurationSeconds\": - {\n \"format\": \"uint64\",\n \"description\": \"The duration - of the ban. This property is only present if the banType is temporary.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"type\": \"object\"\n },\n \"VideoLocalization\": {\n \"type\": - \"object\",\n \"id\": \"VideoLocalization\",\n \"properties\": {\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"Localized version of the video's title.\"\n },\n \"description\": - {\n \"description\": \"Localized version of the video's description.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Localized versions of certain video properties (e.g. title).\"\n },\n - \ \"GeoPoint\": {\n \"type\": \"object\",\n \"description\": \"Geographical - coordinates of a point, in WGS84.\",\n \"properties\": {\n \"latitude\": - {\n \"format\": \"double\",\n \"description\": \"Latitude - in degrees.\",\n \"type\": \"number\"\n },\n \"altitude\": - {\n \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\"\n },\n \"longitude\": - {\n \"description\": \"Longitude in degrees.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n }\n },\n \"id\": - \"GeoPoint\"\n },\n \"PageInfo\": {\n \"type\": \"object\",\n \"id\": - \"PageInfo\",\n \"properties\": {\n \"totalResults\": {\n \"description\": - \"The total number of results in the result set.\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n },\n \"resultsPerPage\": - {\n \"type\": \"integer\",\n \"description\": \"The number - of results included in the API response.\",\n \"format\": \"int32\"\n - \ }\n },\n \"description\": \"Paging details for lists of - resources, including total number of items available and number of resources - returned in a single page.\"\n },\n \"SuperStickerMetadata\": {\n \"type\": - \"object\",\n \"properties\": {\n \"altText\": {\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\",\n \"type\": \"string\"\n },\n \"altTextLanguage\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the alt text is returned.\"\n },\n - \ \"stickerId\": {\n \"type\": \"string\",\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\"\n - \ }\n },\n \"id\": \"SuperStickerMetadata\"\n },\n \"LiveChatModeratorSnippet\": - {\n \"properties\": {\n \"liveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the live chat this moderator - can act on.\"\n },\n \"moderatorDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - moderator.\"\n }\n },\n \"id\": \"LiveChatModeratorSnippet\",\n - \ \"type\": \"object\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"type\": \"object\",\n \"properties\": {\n \"label\": - {\n \"type\": \"string\",\n \"description\": \"The localized - label for this abuse report secondary reason.\"\n },\n \"id\": - {\n \"description\": \"The ID of this abuse report secondary reason.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"ActivityContentDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\"\n },\n \"social\": {\n \"description\": - \"The social object contains details about a social network post. This property - is only present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"playlistItem\": {\n \"description\": \"The - playlistItem object contains information about a new playlist item. This property - is only present if the snippet.type is playlistItem.\",\n \"$ref\": - \"ActivityContentDetailsPlaylistItem\"\n },\n \"promotedItem\": - {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n \"description\": - \"The promotedItem object contains details about a resource which is being - promoted. This property is only present if the snippet.type is promotedItem.\"\n - \ },\n \"channelItem\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsChannelItem\"\n },\n \"subscription\": - {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n \"description\": - \"The subscription object contains information about a channel that a user - subscribed to. This property is only present if the snippet.type is subscription.\"\n - \ },\n \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"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.\"\n },\n \"upload\": {\n \"$ref\": - \"ActivityContentDetailsUpload\",\n \"description\": \"The upload - object contains information about the uploaded video. This property is only - present if the snippet.type is upload.\"\n },\n \"like\": {\n - \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsLike\"\n - \ },\n \"comment\": {\n \"description\": \"The comment - object contains information about a resource that received a comment. This - property is only present if the snippet.type is comment.\",\n \"$ref\": - \"ActivityContentDetailsComment\"\n },\n \"bulletin\": {\n \"$ref\": - \"ActivityContentDetailsBulletin\",\n \"description\": \"The bulletin - object contains details about a channel bulletin post. This object is only - present if the snippet.type is bulletin.\"\n }\n },\n \"description\": - \"Details about the content of an activity: the video that was shared, the - channel that was subscribed to, etc.\",\n \"id\": \"ActivityContentDetails\"\n - \ },\n \"SearchResult\": {\n \"description\": \"A search result - contains information about a YouTube video, channel, or playlist that matches - the search parameters specified in an API request. While a search result points - to a uniquely identifiable resource, like a video, it does not have its own - persistent data.\",\n \"id\": \"SearchResult\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"SearchResultSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - a search result, such as its title or description. For example, if the search - result is a video, then the title will be the video's title and the description - will be the video's description.\"\n },\n \"id\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The id object contains information - that can be used to uniquely identify the resource that matches the search - request.\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#searchResult\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#searchResult\\\".\"\n }\n }\n },\n - \ \"PlaylistItemSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The item's description.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The item's title.\"\n },\n - \ \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the playlist item. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the item was added to the playlist.\"\n },\n \"resourceId\": - {\n \"description\": \"The id object contains information that can - be used to uniquely identify the resource that is included in the playlist - as the playlist item.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\"\n },\n - \ \"position\": {\n \"type\": \"integer\",\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\",\n \"format\": \"uint32\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the user that added the item to the playlist.\",\n \"type\": \"string\"\n - \ },\n \"videoOwnerChannelId\": {\n \"description\": - \"Channel id for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist - item is in.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"videoOwnerChannelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel this video belongs to.\"\n }\n },\n - \ \"id\": \"PlaylistItemSnippet\",\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails. Basic details - of a YouTube Playlist item provided by the author. Next ID: 15\"\n },\n - \ \"VideoFileDetails\": {\n \"description\": \"Describes original video - file properties, including technical details about audio and video streams, - but also metadata information like content length, digitization time, or geotagging - information.\",\n \"type\": \"object\",\n \"id\": \"VideoFileDetails\",\n - \ \"properties\": {\n \"audioStreams\": {\n \"type\": - \"array\",\n \"description\": \"A list of audio streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about an audio stream.\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ }\n },\n \"fileType\": {\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"description\": \"The uploaded - file's type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"description\": \"The uploaded - video file's combined (video and audio) bitrate in bits per second.\",\n \"type\": - \"string\"\n },\n \"fileName\": {\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\",\n \"type\": \"string\"\n },\n - \ \"fileSize\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The uploaded file's size in bytes. - This field is present whether a video file or another type of file was uploaded.\"\n - \ },\n \"videoStreams\": {\n \"description\": \"A list - of video streams contained in the uploaded video file. Each item in the list - contains detailed metadata about a video stream.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ }\n },\n \"durationMs\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - length of the uploaded video in milliseconds.\"\n },\n \"creationTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the uploaded video file was created. The value is specified - in ISO 8601 format. Currently, the following ISO 8601 formats are supported: - - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: - YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"container\": {\n \"description\": - \"The uploaded video file's container format.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"SearchListResponse\": {\n \"properties\": - {\n \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"regionCode\": - {\n \"type\": \"string\"\n },\n \"visitorId\": {\n - \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"Pagination information for token pagination.\",\n - \ \"items\": {\n \"$ref\": \"SearchResult\"\n }\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#searchListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#searchListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"SearchListResponse\"\n },\n \"LanguageTag\": {\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LanguageTag\",\n \"type\": \"object\"\n },\n \"RelatedEntity\": - {\n \"properties\": {\n \"entity\": {\n \"$ref\": \"Entity\"\n - \ }\n },\n \"id\": \"RelatedEntity\",\n \"type\": \"object\"\n - \ },\n \"LiveChatSuperChatDetails\": {\n \"id\": \"LiveChatSuperChatDetails\",\n - \ \"properties\": {\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n },\n \"tier\": - {\n \"description\": \"The tier in which the amount belongs. Lower - amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"userComment\": - {\n \"description\": \"The comment added by the user to this Super - Chat event.\",\n \"type\": \"string\"\n },\n \"currency\": - {\n \"description\": \"The currency in which the purchase was made.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level that the viewer just had joined. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"isUpgrade\": {\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\",\n \"type\": - \"boolean\"\n }\n },\n \"id\": \"LiveChatNewSponsorDetails\"\n - \ },\n \"AbuseReport\": {\n \"type\": \"object\",\n \"properties\": - {\n \"abuseTypes\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"AbuseType\"\n }\n },\n \"description\": - {\n \"type\": \"string\"\n },\n \"subject\": {\n \"$ref\": - \"Entity\"\n },\n \"relatedEntities\": {\n \"items\": - {\n \"$ref\": \"RelatedEntity\"\n },\n \"type\": - \"array\"\n }\n },\n \"id\": \"AbuseReport\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"properties\": {\n \"partsProcessed\": {\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"partsTotal\": {\n \"description\": \"An estimate of the - total number of parts that need to be processed for the video. The number - may be updated with more precise estimates while YouTube processes the video.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"timeLeftMs\": {\n \"description\": \"An estimate of the - amount of time, in millseconds, that YouTube needs to finish processing the - video.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ }\n },\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"type\": \"object\",\n \"description\": \"Video processing progress - and completion time estimate.\"\n },\n \"PlaylistPlayer\": {\n \"id\": - \"PlaylistPlayer\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\"\n - \ }\n }\n },\n \"MembershipsLevelSnippet\": {\n \"id\": - \"MembershipsLevelSnippet\",\n \"properties\": {\n \"creatorChannelId\": - {\n \"description\": \"The id of the channel that's offering channel - memberships.\",\n \"type\": \"string\"\n },\n \"levelDetails\": - {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details - about the pricing level.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsSocial\": {\n \"id\": \"ActivityContentDetailsSocial\",\n - \ \"type\": \"object\",\n \"description\": \"Details about a social - network post.\",\n \"properties\": {\n \"author\": {\n \"type\": - \"string\",\n \"description\": \"The author of the social network - post.\"\n },\n \"type\": {\n \"description\": \"The - name of the social network.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ],\n \"type\": \"string\"\n },\n - \ \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"An image of the post's author.\"\n },\n \"referenceUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL of - the social network post.\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n - \ }\n }\n },\n \"TokenPagination\": {\n \"properties\": - {},\n \"description\": \"Stub token pagination template to suppress results.\",\n - \ \"id\": \"TokenPagination\",\n \"type\": \"object\"\n },\n \"PlaylistContentDetails\": - {\n \"id\": \"PlaylistContentDetails\",\n \"properties\": {\n \"itemCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatMessageRetractedDetails\": {\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"ChannelSectionTargeting\": {\n \"properties\": {\n \"regions\": - {\n \"description\": \"The region the channel section is targeting.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"countries\": {\n \"description\": - \"The country the channel section is targeting.\",\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"languages\": {\n \"type\": \"array\",\n \"description\": - \"The language the channel section is targeting.\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"id\": - \"ChannelSectionTargeting\",\n \"type\": \"object\",\n \"description\": - \"ChannelSection targeting setting.\"\n },\n \"PlaylistLocalization\": - {\n \"id\": \"PlaylistLocalization\",\n \"properties\": {\n \"description\": - {\n \"description\": \"The localized strings for playlist's description.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for playlist's - title.\"\n }\n },\n \"description\": \"Playlist localization - setting\",\n \"type\": \"object\"\n },\n \"LiveBroadcastSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"publishedAt\": - {\n \"description\": \"The date and time that the broadcast was added - to YouTube's live broadcast schedule.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the broadcast. For each nested object in this object, the - key is the name of the thumbnail image, and the value is an object that contains - other information about the thumbnail.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\"\n - \ },\n \"actualStartTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the broadcast actually started. This information is only available - once the broadcast's state is live.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is publishing the broadcast.\",\n \"type\": \"string\"\n - \ },\n \"scheduledEndTime\": {\n \"description\": \"The - date and time that the broadcast is scheduled to end.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\"\n },\n \"actualEndTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the broadcast actually ended. This information is only - available once the broadcast's state is complete.\",\n \"type\": - \"string\"\n },\n \"isDefaultBroadcast\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether this broadcast - is the default broadcast. Internal only.\"\n },\n \"scheduledStartTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast is scheduled to start.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"format\": \"date-time\"\n },\n \"liveChatId\": {\n - \ \"type\": \"string\",\n \"description\": \"The id of the - live chat for this broadcast.\"\n }\n },\n \"id\": \"LiveBroadcastSnippet\",\n - \ \"description\": \"Basic broadcast information.\"\n },\n \"LiveChatMessageListResponse\": - {\n \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatMessage\"\n }\n },\n \"offlineAt\": - {\n \"description\": \"The date and time when the underlying stream - went offline.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveChatMessageListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"pollingIntervalMillis\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The amount of time the client should wait before polling again.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatMessageListResponse\"\n - \ },\n \"LiveBroadcast\": {\n \"id\": \"LiveBroadcast\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the event, including its title, description, - start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n - \ \"description\": \"The status object contains information about - the event's status.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveBroadcast\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information about the event's video content, such as whether - the content can be shown in an embedded video player or if it will be archived - and therefore available for viewing after the event has concluded.\",\n \"$ref\": - \"LiveBroadcastContentDetails\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the broadcast.\"\n },\n \"statistics\": - {\n \"description\": \"The statistics object contains info about - the event's current stats. These include concurrent viewers and total chat - count. Statistics can change (in either direction) during the lifetime of - an event. Statistics are only returned while the event is live.\",\n \"$ref\": - \"LiveBroadcastStatistics\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A *liveBroadcast* resource represents an event that - will be streamed, via live video, on YouTube.\"\n },\n \"VideoFileDetailsAudioStream\": - {\n \"id\": \"VideoFileDetailsAudioStream\",\n \"type\": \"object\",\n - \ \"description\": \"Information about an audio stream.\",\n \"properties\": - {\n \"bitrateBps\": {\n \"type\": \"string\",\n \"description\": - \"The audio stream's bitrate, in bits per second.\",\n \"format\": - \"uint64\"\n },\n \"vendor\": {\n \"type\": \"string\",\n - \ \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\"\n },\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The audio - codec that the stream uses.\"\n },\n \"channelCount\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of audio channels that the stream contains.\"\n }\n }\n - \ },\n \"ActivityContentDetailsFavorite\": {\n \"type\": \"object\",\n - \ \"description\": \"Information about a video that was marked as a favorite - video.\",\n \"id\": \"ActivityContentDetailsFavorite\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\"\n }\n }\n },\n \"ActivitySnippet\": - {\n \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\",\n \"type\": - \"object\",\n \"properties\": {\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel responsible - for this activity\"\n },\n \"thumbnails\": {\n \"description\": - \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"groupId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the video was uploaded.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel associated with the activity.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the resource primarily associated - with the activity. @mutable youtube.activities.insert\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ],\n \"description\": \"The type of activity that the resource - describes.\"\n },\n \"title\": {\n \"description\": - \"The title of the resource primarily associated with the activity.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ActivitySnippet\"\n },\n - \ \"MembershipsDuration\": {\n \"id\": \"MembershipsDuration\",\n \"properties\": - {\n \"memberTotalDurationMonths\": {\n \"description\": \"The - cumulative time the user has been a member across all levels in complete months - (the time is rounded down to the nearest integer).\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n },\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member across all levels.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LocalizedProperty\": {\n - \ \"id\": \"LocalizedProperty\",\n \"properties\": {\n \"default\": - {\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The - language of the default property.\"\n },\n \"localized\": {\n - \ \"items\": {\n \"$ref\": \"LocalizedString\"\n },\n - \ \"type\": \"array\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelSettings\": {\n \"properties\": {\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"moderateComments\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - user-submitted comments left on the channel page need to be approved by the - channel owner to be publicly visible.\"\n },\n \"profileColor\": - {\n \"type\": \"string\",\n \"description\": \"A prominent - color that can be rendered on this channel page.\"\n },\n \"defaultTab\": - {\n \"type\": \"string\",\n \"description\": \"Which content - tab users should see when viewing the channel.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the channel title.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\"\n },\n \"showBrowseView\": {\n \"description\": - \"Whether the tab to browse the videos should be displayed.\",\n \"type\": - \"boolean\"\n },\n \"unsubscribedTrailer\": {\n \"type\": - \"string\",\n \"description\": \"The trailer of the channel, for - users that are not subscribers.\"\n },\n \"featuredChannelsUrls\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The list of featured channels.\",\n \"type\": - \"array\"\n },\n \"featuredChannelsTitle\": {\n \"description\": - \"Title for the featured channels tab.\",\n \"type\": \"string\"\n - \ },\n \"keywords\": {\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\",\n \"type\": \"string\"\n - \ },\n \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"type\": \"string\",\n \"description\": \"The ID for - a Google Analytics account to track and measure traffic to the channels.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the channel description.\"\n }\n - \ },\n \"id\": \"ChannelSettings\",\n \"type\": \"object\",\n - \ \"description\": \"Branding properties for the channel view.\"\n },\n - \ \"LevelDetails\": {\n \"id\": \"LevelDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The name that should be used when - referring to this level.\"\n }\n }\n },\n \"VideoRating\": - {\n \"description\": \"Basic details about rating of a video.\",\n \"id\": - \"VideoRating\",\n \"properties\": {\n \"rating\": {\n \"description\": - \"Rating of a video.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the video.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"Channel\": {\n \"description\": - \"A *channel* resource contains information about a YouTube channel.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"conversionPings\": - {\n \"$ref\": \"ChannelConversionPings\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ChannelContentDetails\",\n \"description\": - \"The contentDetails object encapsulates information about the channel's content.\"\n - \ },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n },\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\"\n - \ },\n \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n - \ \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the channel, such as its title, description, - and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"brandingSettings\": - {\n \"$ref\": \"ChannelBrandingSettings\",\n \"description\": - \"The brandingSettings object encapsulates information about the branding - of the channel.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel.\"\n },\n \"status\": {\n \"description\": - \"The status object encapsulates information about the privacy status of the - channel.\",\n \"$ref\": \"ChannelStatus\"\n },\n \"contentOwnerDetails\": - {\n \"description\": \"The contentOwnerDetails object encapsulates - channel data that is relevant for YouTube Partners linked with the channel.\",\n - \ \"$ref\": \"ChannelContentOwnerDetails\"\n },\n \"kind\": - {\n \"default\": \"youtube#channel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"type\": \"string\"\n },\n \"topicDetails\": {\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\",\n \"$ref\": - \"ChannelTopicDetails\"\n }\n },\n \"id\": \"Channel\"\n - \ },\n \"ActivityContentDetailsChannelItem\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"description\": - \"Details about a resource which was added to a channel.\"\n },\n \"VideoRecordingDetails\": - {\n \"description\": \"Recording information associated with the video.\",\n - \ \"id\": \"VideoRecordingDetails\",\n \"properties\": {\n \"locationDescription\": - {\n \"type\": \"string\",\n \"description\": \"The text - description of the location where the video was recorded.\"\n },\n - \ \"location\": {\n \"description\": \"The geolocation information - associated with the video.\",\n \"$ref\": \"GeoPoint\"\n },\n - \ \"recordingDate\": {\n \"description\": \"The date and time - when the video was recorded.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelProfileDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - display name.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube channel ID.\"\n }\n - \ },\n \"id\": \"ChannelProfileDetails\"\n },\n \"TestItem\": - {\n \"id\": \"TestItem\",\n \"properties\": {\n \"gaia\": - {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"featuredPart\": {\n \"type\": \"boolean\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"CommentThreadReplies\": - {\n \"id\": \"CommentThreadReplies\",\n \"type\": \"object\",\n - \ \"description\": \"Comments written in (direct or indirect) reply to - the top level comment.\",\n \"properties\": {\n \"comments\": - {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"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.\",\n \"type\": - \"array\"\n }\n }\n },\n \"PlaylistSnippet\": {\n \"id\": - \"PlaylistSnippet\",\n \"properties\": {\n \"tags\": {\n \"description\": - \"Keyword tags associated with the playlist.\",\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the playlist was created.\",\n - \ \"format\": \"date-time\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the playlist.\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel title of the channel that the video - belongs to.\"\n },\n \"thumbnailVideoId\": {\n \"type\": - \"string\",\n \"description\": \"Note: if the playlist has a custom - thumbnail, this field will not be populated. The video id selected by the - user that will be used as the thumbnail of this playlist. This field defaults - to the first publicly viewable video in the playlist, if: 1. The user has - never selected a video to be the thumbnail of the playlist. 2. The user selects - a video to be the thumbnail, and then removes that video from the playlist. - 3. The user selects a non-owned video to be the thumbnail, but that video - becomes private, or gets deleted.\"\n },\n \"localized\": {\n - \ \"$ref\": \"PlaylistLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"description\": - {\n \"description\": \"The playlist's description.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist. 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.\"\n },\n \"title\": {\n \"description\": - \"The playlist's title.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the playlist's default title and description.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Basic details about a playlist, - including title, description and thumbnails.\",\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsPlaylistItem\": {\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"Information about a new playlist item.\",\n \"type\": - \"object\",\n \"properties\": {\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The value that YouTube uses to uniquely - identify the playlist.\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\",\n \"$ref\": \"ResourceId\"\n },\n \"playlistItemId\": - {\n \"description\": \"ID of the item within the playlist.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveStreamHealthStatus\": {\n - \ \"id\": \"LiveStreamHealthStatus\",\n \"type\": \"object\",\n \"properties\": - {\n \"configurationIssues\": {\n \"description\": \"The configurations - issues on this stream\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n }\n },\n - \ \"lastUpdateTimeSeconds\": {\n \"description\": \"The last - time this status was updated (in seconds)\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"status\": {\n \"type\": - \"string\",\n \"description\": \"The status code of this stream\",\n - \ \"enum\": [\n \"good\",\n \"ok\",\n \"bad\",\n - \ \"noData\",\n \"revoked\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n }\n },\n \"MembershipsLevel\": - {\n \"id\": \"MembershipsLevel\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the memberships level.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"MembershipsLevelSnippet\",\n \"description\": - \"The snippet object contains basic details about the level.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#membershipsLevel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - *membershipsLevel* resource represents an offer made by YouTube creators for - their fans. Users can become members of the channel by joining one of the - available levels. They will provide recurring monetary support and receives - special benefits.\"\n },\n \"LiveChatMessageSnippet\": {\n \"description\": - \"Next ID: 33\",\n \"properties\": {\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"memberMilestoneChatDetails\": - {\n \"description\": \"Details about the Member Milestone Chat event, - this is only set if the type is 'memberMilestoneChatEvent'.\",\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"superChatDetails\": - {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n - \ \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"textMessageDetails\": {\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\",\n - \ \"$ref\": \"LiveChatTextMessageDetails\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"authorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that authored this message, this field is not always filled. textMessageEvent - - the user that wrote the message fanFundingEvent - the user that funded the - broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"superStickerDetails\": - {\n \"description\": \"Details about the Super Sticker event, this - is only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The type of - message, this will always be present, it determines the contents of the message - as well as which fields will be present.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the message was orignally - published.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"displayMessage\": {\n \"type\": \"string\",\n - \ \"description\": \"Contains a string that can be displayed to the - user. If this field is not present the message is silent, at the moment only - messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\"\n },\n - \ \"newSponsorDetails\": {\n \"description\": \"Details about - the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. - Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n - \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"fanFundingEventDetails\": - {\n \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"hasDisplayContent\": {\n \"description\": \"Whether - the message has display content that should be displayed to users.\",\n \"type\": - \"boolean\"\n },\n \"userBannedDetails\": {\n \"$ref\": - \"LiveChatUserBannedMessageDetails\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatMessageSnippet\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"VideoAbuseReportReason\"\n },\n \"description\": - \"A list of valid abuse reasons that are used with `video.ReportAbuse`.\",\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The `visitorId` identifies the visitor.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"I18nLanguageSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"hl\": {\n \"type\": - \"string\",\n \"description\": \"A short BCP-47 code that uniquely - identifies a language.\"\n },\n \"name\": {\n \"type\": - \"string\",\n \"description\": \"The human-readable name of the language - in the language itself.\"\n }\n },\n \"description\": \"Basic - details about an i18n language, such as language code and human-readable name.\",\n - \ \"id\": \"I18nLanguageSnippet\"\n },\n \"LiveChatModerator\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatModerator\",\n \"description\": - \"A *liveChatModerator* resource represents a moderator for a YouTube live - chat. A chat moderator has the ability to ban/unban users from a chat, remove - message, etc.\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"default\": \"youtube#liveChatModerator\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the moderator.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatMessage\": {\n \"id\": - \"LiveChatMessage\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#liveChatMessage\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the message.\",\n \"$ref\": - \"LiveChatMessageSnippet\"\n },\n \"authorDetails\": {\n \"$ref\": - \"LiveChatMessageAuthorDetails\",\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the message.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"A *liveChatMessage* resource represents a chat message in a YouTube Live - Chat.\",\n \"type\": \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"properties\": {\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ },\n \"memberLevelName\": {\n \"description\": \"The - name of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"gifterChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\"\n }\n },\n \"id\": - \"LiveChatGiftMembershipReceivedDetails\",\n \"type\": \"object\"\n },\n - \ \"VideoFileDetailsVideoStream\": {\n \"properties\": {\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The video - codec that the stream uses.\"\n },\n \"bitrateBps\": {\n \"description\": - \"The video stream's bitrate, in bits per second.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"frameRateFps\": - {\n \"format\": \"double\",\n \"description\": \"The video - stream's frame rate, in frames per second.\",\n \"type\": \"number\"\n - \ },\n \"aspectRatio\": {\n \"type\": \"number\",\n - \ \"format\": \"double\",\n \"description\": \"The video - content's display aspect ratio, which specifies the aspect ratio in which - the video should be displayed.\"\n },\n \"widthPixels\": {\n - \ \"description\": \"The encoded video content's width in pixels. - You can calculate the video's encoding aspect ratio as width_pixels / height_pixels.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"rotation\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The amount that - YouTube needs to rotate the original source content to properly display the - video.\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ]\n },\n \"heightPixels\": {\n \"type\": - \"integer\",\n \"description\": \"The encoded video content's height - in pixels.\",\n \"format\": \"uint32\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n }\n },\n \"description\": \"Information - about a video stream.\",\n \"type\": \"object\",\n \"id\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"Entity\": {\n \"properties\": {\n \"id\": {\n \"type\": - \"string\"\n },\n \"url\": {\n \"type\": \"string\"\n - \ },\n \"typeId\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"Entity\",\n \"type\": \"object\"\n },\n - \ \"ResourceId\": {\n \"description\": \"A resource id is a generic - reference that points to another YouTube resource.\",\n \"properties\": - {\n \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"The type of the API resource.\"\n - \ }\n },\n \"id\": \"ResourceId\",\n \"type\": \"object\"\n - \ },\n \"VideoPlayer\": {\n \"id\": \"VideoPlayer\",\n \"properties\": - {\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\"\n - \ },\n \"embedHeight\": {\n \"format\": \"int64\",\n - \ \"type\": \"string\"\n },\n \"embedWidth\": {\n \"type\": - \"string\",\n \"format\": \"int64\",\n \"description\": - \"The embed width\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Player to be used for a video playback.\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"Thumbnails - for this subscriber.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The description of the subscriber.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the subscriber.\"\n },\n \"channelId\": {\n \"description\": - \"The channel ID of the subscriber.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Basic details about a subscription's subscriber - including title, description, channel ID and thumbnails.\",\n \"id\": - \"SubscriptionSubscriberSnippet\"\n },\n \"VideoListResponse\": {\n - \ \"id\": \"VideoListResponse\",\n \"properties\": {\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Video\"\n },\n \"type\": \"array\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": - \"object\"\n },\n \"I18nLanguageListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n },\n \"description\": - \"A list of supported i18n languages. In this map, the i18n language ID is - the map key, and its value is the corresponding i18nLanguage resource.\",\n - \ \"type\": \"array\"\n }\n },\n \"id\": \"I18nLanguageListResponse\"\n - \ },\n \"ThumbnailDetails\": {\n \"id\": \"ThumbnailDetails\",\n - \ \"description\": \"Internal representation of thumbnails for a YouTube - resource.\",\n \"properties\": {\n \"maxres\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The maximum resolution quality - image for this resource.\"\n },\n \"medium\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The medium quality image for - this resource.\"\n },\n \"standard\": {\n \"description\": - \"The standard quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"default\": {\n \"description\": \"The default - image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"high\": {\n \"description\": \"The high quality image for - this resource.\",\n \"$ref\": \"Thumbnail\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"Cuepoint\": {\n \"id\": \"Cuepoint\",\n - \ \"type\": \"object\",\n \"description\": \"Note that there may - be a 5-second end-point resolution issue. For instance, if a cuepoint comes - in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. - This is an artifact of HLS.\",\n \"properties\": {\n \"walltimeMs\": - {\n \"format\": \"uint64\",\n \"description\": \"The wall - clock time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"cueType\": {\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"durationSecs\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The duration - of this cuepoint.\"\n },\n \"insertionOffsetTimeMs\": {\n \"format\": - \"int64\",\n \"description\": \"The time when the cuepoint should - be inserted by offset to the broadcast actual start time.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The identifier for cuepoint resource.\"\n }\n - \ }\n },\n \"ChannelToStoreLinkDetails\": {\n \"properties\": - {\n \"storeName\": {\n \"description\": \"Name of the store.\",\n - \ \"type\": \"string\"\n },\n \"storeUrl\": {\n \"type\": - \"string\",\n \"description\": \"Landing page of the store.\"\n },\n - \ \"merchantId\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"Google Merchant Center id of the - store.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelToStoreLinkDetails\",\n \"description\": \"Information specific - to a store on a merchandising platform linked to a YouTube channel.\"\n },\n - \ \"LiveChatMemberMilestoneChatDetails\": {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"properties\": {\n \"userComment\": {\n \"description\": - \"The comment added by the member to this Member Milestone Chat. This field - is empty for messages without a comment from the member.\",\n \"type\": - \"string\"\n },\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viever is a member. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"memberMonth\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The total amount of months (rounded - up) the viewer has been a member that granted them this Member Milestone Chat. - This is the same number of months as is being displayed to YouTube users.\"\n - \ }\n },\n \"type\": \"object\"\n }\n },\n \"title\": - \"YouTube Data API v3\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"servicePath\": \"\",\n \"canonicalName\": \"YouTube\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:34 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UChzLnWVsl3puKQwc5PoO6Zg&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"akovlC_TZanj-QfcFAeSbGsyrmg\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"f7BnuHZk9DgZBVOdj4GJ8xZm-GY\",\n \"id\": \"UChzLnWVsl3puKQwc5PoO6Zg\",\n - \ \"snippet\": {\n \"title\": \"BTC Sessions\",\n \"description\": - \"BTC Sessions is geared towards helping you understand Bitcoin. Get the tutorials - on wallets, hardware, security, exchanges and much more, as well as the latest - news and industry interviews. \\nhttps://linktr.ee/btcsessions\\n\u26A1btcsessions@getalby.com\\n\",\n - \ \"customUrl\": \"@btcsessions\",\n \"publishedAt\": \"2016-06-27T20:27:57Z\",\n - \ \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/ytc/AL5GRJX0cjntbYQt3KQ1nGFqZiwTnVs2ljXs4WkDSlD8vg=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJX0cjntbYQt3KQ1nGFqZiwTnVs2ljXs4WkDSlD8vg=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJX0cjntbYQt3KQ1nGFqZiwTnVs2ljXs4WkDSlD8vg=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"BTC Sessions\",\n \"description\": - \"BTC Sessions is geared towards helping you understand Bitcoin. Get the tutorials - on wallets, hardware, security, exchanges and much more, as well as the latest - news and industry interviews. \\nhttps://linktr.ee/btcsessions\\n\u26A1btcsessions@getalby.com\\n\"\n - \ },\n \"country\": \"CA\"\n },\n \"brandingSettings\": - {\n \"channel\": {\n \"title\": \"BTC Sessions\",\n \"description\": - \"BTC Sessions is geared towards helping you understand Bitcoin. Get the tutorials - on wallets, hardware, security, exchanges and much more, as well as the latest - news and industry interviews. \\nhttps://linktr.ee/btcsessions\\n\u26A1btcsessions@getalby.com\\n\",\n - \ \"keywords\": \"bitcoin \\\"bitcoin news\\\" \\\"btc sessions\\\" - \\\"what is bitcoin\\\" \\\"bitcoin tutorial\\\" btcsessions \\\"bitcoin canada\\\" - \\\"bitcoin price\\\" \\\"bitcoin wallet\\\" \\\"bitcoin exchange\\\" \\\"buy - bitcoin\\\" \\\"use bitcoin\\\" \\\"btc sessions\\\" btcsessions \\\"bitcoin - tutorial\\\" \\\"how to use bitcoin\\\" \\\"bitcoin wallet\\\" \\\"lightning - network\\\" \\\"bitcoin privacy\\\" \\\"learn about bitcoin\\\"\",\n \"trackingAnalyticsAccountId\": - \"UA-131198466-2\",\n \"unsubscribedTrailer\": \"MIaJ_5xJe64\",\n - \ \"country\": \"CA\"\n },\n \"image\": {\n \"bannerExternalUrl\": - \"https://yt3.googleusercontent.com/Mjvu4BMgOFCMYfN1Y0-_hE52IE86FknF_YRa73tfXBGIChbwXguJ5QRHb_UttFQUwH1qu5Xn0A\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:34 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"canonicalName\": \"YouTube\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"name\": \"youtube\",\n \"discoveryVersion\": \"v1\",\n \"ownerDomain\": - \"google.com\",\n \"description\": \"The YouTube Data API v3 is an API that - provides access to YouTube data, such as videos, playlists, and channels.\",\n - \ \"title\": \"YouTube Data API v3\",\n \"kind\": \"discovery#restDescription\",\n - \ \"schemas\": {\n \"ActivityContentDetailsLike\": {\n \"description\": - \"Information about a resource that received a positive (like) rating.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the rated resource.\",\n \"$ref\": \"ResourceId\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsLike\"\n },\n - \ \"SuperChatEventSnippet\": {\n \"type\": \"object\",\n \"id\": - \"SuperChatEventSnippet\",\n \"properties\": {\n \"commentText\": - {\n \"description\": \"The text contents of the comment left by the - user.\",\n \"type\": \"string\"\n },\n \"createdAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the event occurred.\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\",\n \"type\": \"string\"\n - \ },\n \"displayString\": {\n \"description\": \"A rendered - string that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). - The string is rendered for the given language.\",\n \"type\": \"string\"\n - \ },\n \"amountMicros\": {\n \"description\": \"The - purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ },\n \"superStickerMetadata\": {\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"isSuperStickerEvent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"True if this event is a Super Sticker event.\"\n - \ },\n \"channelId\": {\n \"description\": \"Channel - id where the event occurred.\",\n \"type\": \"string\"\n },\n - \ \"supporterDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the supporter.\"\n },\n - \ \"messageType\": {\n \"description\": \"The tier for the - paid message, which is based on the amount of money spent to purchase the - message.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ }\n }\n },\n \"VideoLiveStreamingDetails\": {\n \"type\": - \"object\",\n \"description\": \"Details about the live streaming metadata.\",\n - \ \"properties\": {\n \"activeLiveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the currently active live - chat attached to this video. This field is filled only if the video is a currently - live broadcast that has live chat. Once the broadcast transitions to complete - this field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\"\n },\n \"actualStartTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - time that the broadcast actually started. This value will not be available - until the broadcast begins.\",\n \"type\": \"string\"\n },\n - \ \"concurrentViewers\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\"\n },\n \"scheduledStartTime\": {\n \"description\": - \"The time that the broadcast is scheduled to begin.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"actualEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast actually ended. This - value will not be available until the broadcast is over.\"\n },\n \"scheduledEndTime\": - {\n \"description\": \"The time that the broadcast is scheduled to - end. If the value is empty or the property is not present, then the broadcast - is scheduled to contiue indefinitely.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n }\n },\n \"id\": \"VideoLiveStreamingDetails\"\n - \ },\n \"ChannelSectionTargeting\": {\n \"description\": \"ChannelSection - targeting setting.\",\n \"id\": \"ChannelSectionTargeting\",\n \"type\": - \"object\",\n \"properties\": {\n \"countries\": {\n \"description\": - \"The country the channel section is targeting.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"regions\": {\n \"description\": \"The region the channel - section is targeting.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"languages\": - {\n \"description\": \"The language the channel section is targeting.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n }\n }\n },\n \"VideoSnippet\": {\n \"type\": - \"object\",\n \"id\": \"VideoSnippet\",\n \"description\": \"Basic - details about a video, including title, description, uploader, thumbnails - and category.\",\n \"properties\": {\n \"localized\": {\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\",\n - \ \"$ref\": \"VideoLocalization\"\n },\n \"defaultAudioLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the videos's default snippet.\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the video was uploaded.\"\n },\n \"categoryId\": {\n - \ \"description\": \"The YouTube video category associated with the - video.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the video belongs to.\"\n },\n \"description\": - {\n \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that the video was uploaded to.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"description\": \"The video's - title. @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": - \"string\"\n },\n \"liveBroadcastContent\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n },\n \"tags\": {\n - \ \"description\": \"A list of keyword tags associated with the video. - Tags may contain spaces.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n }\n },\n - \ \"SuperStickerMetadata\": {\n \"properties\": {\n \"altTextLanguage\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the alt text is returned.\"\n },\n - \ \"altText\": {\n \"description\": \"Internationalized alt - text that describes the sticker image and any animation associated with it.\",\n - \ \"type\": \"string\"\n },\n \"stickerId\": {\n \"type\": - \"string\",\n \"description\": \"Unique identifier of the Super Sticker. - This is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"SuperStickerMetadata\"\n },\n \"ChannelContentDetails\": - {\n \"type\": \"object\",\n \"description\": \"Details about the - content of a channel.\",\n \"id\": \"ChannelContentDetails\",\n \"properties\": - {\n \"relatedPlaylists\": {\n \"properties\": {\n \"favorites\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s favorite videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"watchHistory\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n },\n \"likes\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"uploads\": {\n \"description\": \"The ID of the - playlist that contains the channel\\\"s uploaded videos. Use the videos.insert - method to upload new videos and the videos.delete method to delete previously - uploaded videos.\",\n \"type\": \"string\"\n },\n - \ \"watchLater\": {\n \"description\": \"The ID of - the playlist that contains the channel\\\"s watch later playlist. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n }\n }\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageDeletedDetails\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"PlaylistItemSnippet\": {\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails. - Basic details of a YouTube Playlist item provided by the author. Next ID: - 15\",\n \"properties\": {\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the item was added to the playlist.\"\n },\n - \ \"title\": {\n \"description\": \"The item's title.\",\n - \ \"type\": \"string\"\n },\n \"channelTitle\": {\n - \ \"description\": \"Channel title for the channel that the playlist - item belongs to.\",\n \"type\": \"string\"\n },\n \"position\": - {\n \"description\": \"The order in which the item appears in the - playlist. The value uses a zero-based index, so the first item has a position - of 0, the second item has a position of 1, and so forth.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"description\": - {\n \"description\": \"The item's description.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist item. 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.\"\n },\n \"resourceId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"$ref\": \"ResourceId\",\n \"description\": \"The id object - contains information that can be used to uniquely identify the resource that - is included in the playlist as the playlist item.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the user that added the item to the playlist.\"\n - \ },\n \"videoOwnerChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel id for the channel this video belongs - to.\"\n },\n \"playlistId\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify thGe playlist that the playlist - item is in.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"videoOwnerChannelTitle\": {\n \"description\": - \"Channel title for the channel this video belongs to.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"PlaylistItemSnippet\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"banType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ],\n \"description\": \"The - type of ban.\"\n },\n \"banDurationSeconds\": {\n \"format\": - \"uint64\",\n \"description\": \"The duration of the ban. This property - is only present if the banType is temporary.\",\n \"type\": \"string\"\n - \ },\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"The details of the user that was banned.\"\n - \ }\n },\n \"id\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"LiveChatSuperChatDetails\": {\n \"id\": \"LiveChatSuperChatDetails\",\n - \ \"properties\": {\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the user to this Super Chat event.\"\n },\n \"tier\": - {\n \"description\": \"The tier in which the amount belongs. Lower - amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"currency\": - {\n \"description\": \"The currency in which the purchase was made.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcastSnippet\": - {\n \"id\": \"LiveBroadcastSnippet\",\n \"description\": \"Basic - broadcast information.\",\n \"properties\": {\n \"scheduledStartTime\": - {\n \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"format\": \"date-time\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the broadcast. For each nested object in this object, the key is the name - of the thumbnail image, and the value is an object that contains other information - about the thumbnail.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"actualEndTime\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - actually ended. This information is only available once the broadcast's state - is complete.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - was added to YouTube's live broadcast schedule.\",\n \"format\": - \"date-time\"\n },\n \"isDefaultBroadcast\": {\n \"description\": - \"Indicates whether this broadcast is the default broadcast. Internal only.\",\n - \ \"type\": \"boolean\"\n },\n \"actualStartTime\": - {\n \"description\": \"The date and time that the broadcast actually - started. This information is only available once the broadcast's state is - live.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to end.\",\n \"type\": \"string\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the live chat for this broadcast.\"\n },\n \"description\": - {\n \"description\": \"The broadcast's description. As with the title, - you can set this field by modifying the broadcast resource or by setting the - description field of the corresponding video resource.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's title. Note that the broadcast - represents exactly one YouTube video. You can set this field by modifying - the broadcast resource or by setting the title field of the corresponding - video resource.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"MembershipsLevelSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"levelDetails\": {\n \"description\": \"Details about - the pricing level.\",\n \"$ref\": \"LevelDetails\"\n },\n - \ \"creatorChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The id of the channel that's offering channel memberships.\"\n }\n - \ },\n \"id\": \"MembershipsLevelSnippet\"\n },\n \"Channel\": - {\n \"type\": \"object\",\n \"id\": \"Channel\",\n \"properties\": - {\n \"contentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object encapsulates information about the channel's content.\",\n - \ \"$ref\": \"ChannelContentDetails\"\n },\n \"conversionPings\": - {\n \"$ref\": \"ChannelConversionPings\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\"\n },\n \"snippet\": - {\n \"$ref\": \"ChannelSnippet\",\n \"description\": \"The - snippet object contains basic details about the channel, such as its title, - description, and thumbnail images.\"\n },\n \"brandingSettings\": - {\n \"$ref\": \"ChannelBrandingSettings\",\n \"description\": - \"The brandingSettings object encapsulates information about the branding - of the channel.\"\n },\n \"status\": {\n \"description\": - \"The status object encapsulates information about the privacy status of the - channel.\",\n \"$ref\": \"ChannelStatus\"\n },\n \"statistics\": - {\n \"$ref\": \"ChannelStatistics\",\n \"description\": - \"The statistics object encapsulates statistics for the channel.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"topicDetails\": {\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\",\n \"$ref\": - \"ChannelTopicDetails\"\n },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n },\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\"\n - \ },\n \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n - \ \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#channel\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channel\\\".\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A *channel* resource contains - information about a YouTube channel.\"\n },\n \"LiveChatTextMessageDetails\": - {\n \"properties\": {\n \"messageText\": {\n \"description\": - \"The user's message.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatTextMessageDetails\"\n - \ },\n \"ActivityContentDetailsPlaylistItem\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The value that YouTube uses to uniquely - identify the playlist.\"\n },\n \"playlistItemId\": {\n \"description\": - \"ID of the item within the playlist.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Information about a new playlist - item.\"\n },\n \"Video\": {\n \"id\": \"Video\",\n \"description\": - \"A *video* resource represents a YouTube video.\",\n \"properties\": - {\n \"monetizationDetails\": {\n \"description\": \"The monetizationDetails - object encapsulates information about the monetization status of the video.\",\n - \ \"$ref\": \"VideoMonetizationDetails\"\n },\n \"recordingDetails\": - {\n \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\",\n \"$ref\": - \"VideoRecordingDetails\"\n },\n \"liveStreamingDetails\": {\n - \ \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"statistics\": - {\n \"description\": \"The statistics object contains statistics - about the video.\",\n \"$ref\": \"VideoStatistics\"\n },\n - \ \"suggestions\": {\n \"$ref\": \"VideoSuggestions\",\n \"description\": - \"The suggestions object encapsulates suggestions that identify opportunities - to improve the video quality or the metadata for the uploaded video. This - data can only be retrieved by the video owner.\"\n },\n \"topicDetails\": - {\n \"$ref\": \"VideoTopicDetails\",\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information about the video content, including the length - of the video and its aspect ratio.\",\n \"$ref\": \"VideoContentDetails\"\n - \ },\n \"fileDetails\": {\n \"description\": \"The fileDetails - object encapsulates information about the video file that was uploaded to - YouTube, including the file's resolution, duration, audio and video codecs, - stream bitrates, and more. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoFileDetails\"\n },\n \"projectDetails\": - {\n \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#video\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#video\"\n },\n \"player\": - {\n \"description\": \"The player object contains information that - you would use to play the video in an embedded player.\",\n \"$ref\": - \"VideoPlayer\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n },\n - \ \"localizations\": {\n \"description\": \"The localizations - object contains localized versions of the basic details about the video, such - as its title and description.\",\n \"additionalProperties\": {\n - \ \"$ref\": \"VideoLocalization\"\n },\n \"type\": - \"object\"\n },\n \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video, such as its title, description, and category.\"\n },\n \"processingDetails\": - {\n \"$ref\": \"VideoProcessingDetails\",\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\"\n - \ },\n \"ageGating\": {\n \"description\": \"Age restriction - details related to a video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoAgeGating\"\n },\n \"status\": {\n - \ \"$ref\": \"VideoStatus\",\n \"description\": \"The status - object contains information about the video's uploading, processing, and privacy - statuses.\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n \"type\": - \"object\",\n \"properties\": {\n \"allowed\": {\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"blocked\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\"\n }\n },\n - \ \"description\": \"DEPRECATED Region restriction of the video.\"\n },\n - \ \"LiveChatMemberMilestoneChatDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"properties\": - {\n \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the Level at which the viever is a member. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n },\n \"userComment\": {\n \"type\": - \"string\",\n \"description\": \"The comment added by the member - to this Member Milestone Chat. This field is empty for messages without a - comment from the member.\"\n },\n \"memberMonth\": {\n \"type\": - \"integer\",\n \"description\": \"The total amount of months (rounded - up) the viewer has been a member that granted them this Member Milestone Chat. - This is the same number of months as is being displayed to YouTube users.\",\n - \ \"format\": \"uint32\"\n }\n }\n },\n \"PlaylistPlayer\": - {\n \"id\": \"PlaylistPlayer\",\n \"type\": \"object\",\n \"properties\": - {\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\"\n - \ }\n }\n },\n \"Comment\": {\n \"type\": \"object\",\n - \ \"id\": \"Comment\",\n \"description\": \"A *comment* represents - a single YouTube comment.\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"CommentSnippet\",\n \"description\": \"The - snippet object contains basic details about the comment.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the comment.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#comment\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#comment\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"I18nLanguage\": {\n \"type\": - \"object\",\n \"id\": \"I18nLanguage\",\n \"description\": \"An - *i18nLanguage* resource identifies a UI language currently supported by YouTube.\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the i18n language.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n \"default\": - \"youtube#i18nLanguage\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ActivityContentDetailsSubscription\": {\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that the user subscribed - to.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"id\": - \"ActivityContentDetailsSubscription\",\n \"type\": \"object\",\n \"description\": - \"Information about a channel that a user subscribed to.\"\n },\n \"ActivityContentDetailsComment\": - {\n \"description\": \"Information about a resource that received a comment.\",\n - \ \"id\": \"ActivityContentDetailsComment\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource associated with the comment.\"\n }\n }\n - \ },\n \"LiveStreamHealthStatus\": {\n \"id\": \"LiveStreamHealthStatus\",\n - \ \"properties\": {\n \"lastUpdateTimeSeconds\": {\n \"description\": - \"The last time this status was updated (in seconds)\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"type\": \"string\",\n \"description\": \"The status - code of this stream\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"good\",\n \"ok\",\n - \ \"bad\",\n \"noData\",\n \"revoked\"\n ]\n - \ },\n \"configurationIssues\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"description\": \"The configurations issues on this - stream\"\n }\n },\n \"type\": \"object\"\n },\n \"CaptionSnippet\": - {\n \"properties\": {\n \"isLarge\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether the caption track uses large - text for the vision-impaired. The default value is false.\"\n },\n - \ \"language\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The language of the caption track. The property - value is a BCP-47 language tag.\",\n \"type\": \"string\"\n },\n - \ \"isEasyReader\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n - \ },\n \"lastUpdated\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the caption track was last updated.\"\n },\n \"status\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The caption track's - status.\",\n \"type\": \"string\",\n \"enum\": [\n \"serving\",\n - \ \"syncing\",\n \"failed\"\n ]\n },\n - \ \"isAutoSynced\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the caption track. The name is intended - to be visible to the user as an option during playback.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"failureReason\": {\n \"enum\": - [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The reason that - YouTube failed to process the caption track. This property is only present - if the state property's value is failed.\",\n \"type\": \"string\"\n - \ },\n \"isCC\": {\n \"description\": \"Indicates whether - the track contains closed captions for the deaf and hard of hearing. The default - value is false.\",\n \"type\": \"boolean\"\n },\n \"trackKind\": - {\n \"enum\": [\n \"standard\",\n \"ASR\",\n - \ \"forced\"\n ],\n \"type\": \"string\",\n \"description\": - \"The caption track's type.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video associated with the caption track. @mutable youtube.captions.insert\",\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n }\n - \ },\n \"isDraft\": {\n \"type\": \"boolean\",\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n },\n \"audioTrackType\": {\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"description\": \"The - type of audio track associated with the caption track.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"CaptionSnippet\",\n \"description\": \"Basic - details about a caption track, such as its language and name.\"\n },\n - \ \"I18nLanguageListResponse\": {\n \"properties\": {\n \"items\": - {\n \"description\": \"A list of supported i18n languages. In this - map, the i18n language ID is the map key, and its value is the corresponding - i18nLanguage resource.\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n - \ },\n \"type\": \"array\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"id\": \"I18nLanguageListResponse\",\n \"type\": - \"object\"\n },\n \"ThumbnailSetResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"ThumbnailSetResponse\",\n \"properties\": {\n \"items\": - {\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of thumbnails.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n \"default\": - \"youtube#thumbnailSetResponse\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"AbuseType\": {\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"AbuseType\"\n },\n \"SubscriptionListResponse\": {\n - \ \"id\": \"SubscriptionListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#subscriptionListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"description\": \"A list of subscriptions that match - the request criteria.\",\n \"type\": \"array\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelContentOwnerDetails\": - {\n \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"properties\": - {\n \"timeLinked\": {\n \"description\": \"The date and time - when the channel was linked to the content owner.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"contentOwner\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the content owner linked to the channel.\"\n }\n },\n \"id\": - \"ChannelContentOwnerDetails\",\n \"type\": \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"properties\": {\n \"partsProcessed\": {\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"partsTotal\": {\n \"description\": \"An estimate of the - total number of parts that need to be processed for the video. The number - may be updated with more precise estimates while YouTube processes the video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"timeLeftMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"An estimate of the amount of time, - in millseconds, that YouTube needs to finish processing the video.\"\n }\n - \ },\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n \"type\": - \"object\",\n \"description\": \"Video processing progress and completion - time estimate.\"\n },\n \"SearchListResponse\": {\n \"id\": \"SearchListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#searchListResponse\\\".\",\n \"default\": - \"youtube#searchListResponse\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"regionCode\": {\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"SearchResult\"\n },\n - \ \"description\": \"Pagination information for token pagination.\",\n - \ \"type\": \"array\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LocalizedProperty\": - {\n \"type\": \"object\",\n \"properties\": {\n \"defaultLanguage\": - {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The - language of the default property.\"\n },\n \"localized\": {\n - \ \"items\": {\n \"$ref\": \"LocalizedString\"\n },\n - \ \"type\": \"array\"\n },\n \"default\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LocalizedProperty\"\n },\n - \ \"PageInfo\": {\n \"id\": \"PageInfo\",\n \"properties\": {\n - \ \"resultsPerPage\": {\n \"format\": \"int32\",\n \"description\": - \"The number of results included in the API response.\",\n \"type\": - \"integer\"\n },\n \"totalResults\": {\n \"description\": - \"The total number of results in the result set.\",\n \"type\": \"integer\",\n - \ \"format\": \"int32\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\"\n },\n \"VideoAbuseReportSecondaryReason\": {\n \"properties\": - {\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label for this abuse report secondary reason.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID of this abuse report secondary reason.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\"\n },\n \"WatchSettings\": - {\n \"id\": \"WatchSettings\",\n \"description\": \"Branding properties - for the watch. All deprecated.\",\n \"properties\": {\n \"backgroundColor\": - {\n \"description\": \"The text color for the video watch page's - branded area.\",\n \"type\": \"string\"\n },\n \"featuredPlaylistId\": - {\n \"description\": \"An ID that uniquely identifies a playlist - that displays next to the video player.\",\n \"type\": \"string\"\n - \ },\n \"textColor\": {\n \"type\": \"string\",\n \"description\": - \"The background color for the video watch page's branded area.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"TokenPagination\": {\n - \ \"id\": \"TokenPagination\",\n \"properties\": {},\n \"type\": - \"object\",\n \"description\": \"Stub token pagination template to suppress - results.\"\n },\n \"CommentThreadReplies\": {\n \"description\": - \"Comments written in (direct or indirect) reply to the top level comment.\",\n - \ \"id\": \"CommentThreadReplies\",\n \"type\": \"object\",\n \"properties\": - {\n \"comments\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"description\": - \"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.\"\n }\n }\n },\n \"LiveChatSuperStickerDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatSuperStickerDetails\",\n - \ \"properties\": {\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"superStickerMetadata\": {\n \"$ref\": \"SuperStickerMetadata\",\n - \ \"description\": \"Information about the Super Sticker.\"\n },\n - \ \"amountMicros\": {\n \"format\": \"uint64\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"type\": \"string\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"tier\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\"\n }\n - \ }\n },\n \"AbuseReport\": {\n \"properties\": {\n \"relatedEntities\": - {\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n - \ \"type\": \"array\"\n },\n \"description\": {\n \"type\": - \"string\"\n },\n \"abuseTypes\": {\n \"items\": {\n - \ \"$ref\": \"AbuseType\"\n },\n \"type\": \"array\"\n - \ },\n \"subject\": {\n \"$ref\": \"Entity\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"AbuseReport\"\n },\n - \ \"ChannelLocalization\": {\n \"properties\": {\n \"title\": - {\n \"description\": \"The localized strings for channel's title.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - description.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Channel localization setting\",\n \"id\": \"ChannelLocalization\"\n - \ },\n \"MemberListResponse\": {\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#memberListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#memberListResponse\\\".\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - members that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Member\"\n }\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"MemberListResponse\"\n },\n \"MembershipsDurationAtLevel\": {\n \"properties\": - {\n \"memberTotalDurationMonths\": {\n \"format\": \"int32\",\n - \ \"description\": \"The cumulative time the user has been a member - for the given level in complete months (the time is rounded down to the nearest - integer).\",\n \"type\": \"integer\"\n },\n \"level\": - {\n \"type\": \"string\",\n \"description\": \"Pricing level - ID.\"\n },\n \"memberSince\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the user became a continuous - member for the given level.\"\n }\n },\n \"id\": \"MembershipsDurationAtLevel\",\n - \ \"type\": \"object\"\n },\n \"ChannelSectionLocalization\": {\n - \ \"id\": \"ChannelSectionLocalization\",\n \"description\": \"ChannelSection - localization setting\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel - section's title.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"VideoRating\": {\n \"description\": \"Basic details about rating - of a video.\",\n \"properties\": {\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video.\"\n },\n \"rating\": {\n \"description\": - \"Rating of a video.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n }\n },\n \"id\": \"VideoRating\",\n - \ \"type\": \"object\"\n },\n \"ResourceId\": {\n \"type\": - \"object\",\n \"description\": \"A resource id is a generic reference - that points to another YouTube resource.\",\n \"id\": \"ResourceId\",\n - \ \"properties\": {\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a playlist. This property - is only present if the resourceId.kind value is youtube#playlist.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"The type of the API resource.\"\n }\n }\n },\n \"CdnSettings\": - {\n \"type\": \"object\",\n \"id\": \"CdnSettings\",\n \"properties\": - {\n \"ingestionType\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \" The method or protocol used to transmit the video stream.\",\n \"type\": - \"string\",\n \"enum\": [\n \"rtmp\",\n \"dash\",\n - \ \"webrtc\",\n \"hls\"\n ]\n },\n \"frameRate\": - {\n \"description\": \"The frame rate of the inbound video data.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ]\n },\n \"resolution\": {\n \"enum\": [\n - \ \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"ingestionInfo\": {\n \"description\": - \"The ingestionInfo object contains information that YouTube provides that - you need to transmit your RTMP or HTTP stream to YouTube.\",\n \"$ref\": - \"IngestionInfo\"\n },\n \"format\": {\n \"description\": - \"The format of the video stream that you are sending to Youtube. \",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ }\n },\n \"description\": \"Brief description of the live - stream cdn settings.\"\n },\n \"LiveChatModerator\": {\n \"id\": - \"LiveChatModerator\",\n \"properties\": {\n \"snippet\": {\n - \ \"description\": \"The snippet object contains basic details about - the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the moderator.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"default\": \"youtube#liveChatModerator\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"description\": \"A *liveChatModerator* - resource represents a moderator for a YouTube live chat. A chat moderator - has the ability to ban/unban users from a chat, remove message, etc.\",\n - \ \"type\": \"object\"\n },\n \"ChannelProfileDetails\": {\n \"id\": - \"ChannelProfileDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"channelUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channel's URL.\"\n },\n \"profileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channels's avatar URL.\"\n },\n - \ \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The channel's display name.\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"VideoSuggestionsTagSuggestion\": {\n \"type\": - \"object\",\n \"id\": \"VideoSuggestionsTagSuggestion\",\n \"description\": - \"A single tag suggestion with it's relevance information.\",\n \"properties\": - {\n \"categoryRestricts\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A set of video categories for which the tag is relevant. You can use this - information to display appropriate tag suggestions based on the video category - that the video uploader associates with the video. By default, tag suggestions - are relevant for all categories if there are no restricts defined for the - keyword.\"\n },\n \"tag\": {\n \"description\": \"The - keyword tag suggested for the video.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ThirdPartyLinkSnippet\": {\n \"type\": - \"object\",\n \"description\": \"Basic information about a third party - account link, including its type and type-specific information.\",\n \"id\": - \"ThirdPartyLinkSnippet\",\n \"properties\": {\n \"channelToStoreLink\": - {\n \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n - \ },\n \"type\": {\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"description\": \"Type of the link named after the entities that - are being linked.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ChannelStatistics\": {\n \"id\": \"ChannelStatistics\",\n - \ \"description\": \"Statistics about a channel: number of subscribers, - number of videos in the channel, etc.\",\n \"properties\": {\n \"videoCount\": - {\n \"description\": \"The number of videos uploaded to the channel.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"hiddenSubscriberCount\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether or not the number of subscribers is shown for this user.\"\n },\n - \ \"commentCount\": {\n \"description\": \"The number of comments - for the channel.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"viewCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of times the channel has been viewed.\",\n - \ \"type\": \"string\"\n },\n \"subscriberCount\": {\n - \ \"type\": \"string\",\n \"description\": \"The number of - subscribers that the channel has.\",\n \"format\": \"uint64\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"description\": \"Basic details about a video category, such as - its localized title.\",\n \"properties\": {\n \"secondaryReasons\": - {\n \"description\": \"The secondary reasons associated with this - reason, if any are available. (There might be 0 or more.)\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"type\": \"array\"\n },\n \"label\": {\n \"description\": - \"The localized label belonging to this abuse report reason.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoAbuseReportReasonSnippet\"\n },\n \"LiveChatBanSnippet\": {\n - \ \"id\": \"LiveChatBanSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"liveChatId\": {\n \"description\": \"The chat - this ban is pertinent to.\",\n \"type\": \"string\"\n },\n - \ \"banDurationSeconds\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The duration of a ban, only filled - if the ban has type TEMPORARY.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"description\": \"The - type of ban.\"\n }\n }\n },\n \"VideoCategoryListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"default\": \"youtube#videoCategoryListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n }\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"VideoCategoryListResponse\",\n \"type\": \"object\"\n },\n \"TestItem\": - {\n \"id\": \"TestItem\",\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"gaia\": {\n \"format\": \"int64\",\n \"type\": - \"string\"\n },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ }\n }\n },\n \"LiveChatModeratorSnippet\": {\n \"properties\": - {\n \"liveChatId\": {\n \"description\": \"The ID of the live - chat this moderator can act on.\",\n \"type\": \"string\"\n },\n - \ \"moderatorDetails\": {\n \"description\": \"Details about - the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\"\n - \ },\n \"TestItemTestItemSnippet\": {\n \"id\": \"TestItemTestItemSnippet\",\n - \ \"properties\": {},\n \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": - {\n \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveBroadcastListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of broadcasts - that match the request criteria.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"id\": \"LiveBroadcastListResponse\",\n \"type\": \"object\"\n - \ },\n \"Thumbnail\": {\n \"description\": \"A thumbnail is an image - representing a YouTube resource.\",\n \"type\": \"object\",\n \"properties\": - {\n \"width\": {\n \"description\": \"(Optional) Width of - the thumbnail image.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"height\": {\n \"description\": - \"(Optional) Height of the thumbnail image.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"url\": {\n \"description\": - \"The thumbnail image's URL.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"Thumbnail\"\n },\n \"ChannelConversionPing\": - {\n \"type\": \"object\",\n \"properties\": {\n \"conversionUrl\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"context\": {\n \"description\": \"Defines the context of - the ping.\",\n \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ChannelConversionPing\",\n \"description\": - \"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.\"\n },\n \"LiveChatMembershipGiftingDetails\": {\n \"properties\": - {\n \"giftMembershipsCount\": {\n \"type\": \"integer\",\n - \ \"description\": \"The number of gift memberships purchased by the - user.\",\n \"format\": \"int32\"\n },\n \"giftMembershipsLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the level of the gift memberships purchased by the user. The Level names - are defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n }\n },\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"type\": \"object\"\n },\n \"ThirdPartyLinkListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"InvideoBranding\": {\n \"description\": \"LINT.IfChange - Describes an invideo branding.\",\n \"properties\": {\n \"timing\": - {\n \"$ref\": \"InvideoTiming\",\n \"description\": \"The - temporal position within the video where watermark will be displayed.\"\n - \ },\n \"imageBytes\": {\n \"description\": \"The bytes - the uploaded image. Only used in api to youtube communication.\",\n \"format\": - \"byte\",\n \"type\": \"string\"\n },\n \"targetChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The channel - to which this branding links. If not present it defaults to the current channel.\"\n - \ },\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The url of the uploaded image. Only used in apiary to api communication.\"\n - \ },\n \"position\": {\n \"description\": \"The spatial - position within the video where the branding watermark will be displayed.\",\n - \ \"$ref\": \"InvideoPosition\"\n }\n },\n \"id\": - \"InvideoBranding\",\n \"type\": \"object\"\n },\n \"VideoPlayer\": - {\n \"id\": \"VideoPlayer\",\n \"description\": \"Player to be used - for a video playback.\",\n \"type\": \"object\",\n \"properties\": - {\n \"embedWidth\": {\n \"type\": \"string\",\n \"format\": - \"int64\",\n \"description\": \"The embed width\"\n },\n \"embedHeight\": - {\n \"type\": \"string\",\n \"format\": \"int64\"\n },\n - \ \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoSuggestions\": {\n \"properties\": - {\n \"processingWarnings\": {\n \"type\": \"array\",\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"items\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ],\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ]\n }\n },\n \"processingErrors\": - {\n \"description\": \"A list of errors that will prevent YouTube - from successfully processing the uploaded video video. These errors indicate - that, regardless of the video's current processing status, eventually, that - status will almost certainly be failed.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"editorSuggestions\": {\n \"type\": - \"array\",\n \"description\": \"A list of video editing operations - that might improve the video quality or playback experience of the uploaded - video.\",\n \"items\": {\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Picture brightness levels seem off and could be corrected.\",\n - \ \"The video appears shaky and could be stabilized.\",\n \"Margins - (mattes) detected around the picture could be cropped.\",\n \"The - audio track appears silent and could be swapped with a better quality one.\"\n - \ ]\n }\n },\n \"processingHints\": {\n \"description\": - \"A list of suggestions that may improve YouTube's ability to process the - video.\",\n \"items\": {\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ],\n \"enumDescriptions\": [\n \"The MP4 - file is not streamable, this will slow down the processing. MOOV atom was - not found at the beginning of the file.\",\n \"Probably a better - quality version of the video exists. The video has wide screen aspect ratio, - but is not an HD video.\",\n \"Uploaded video is spherical video.\",\n - \ \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"tagSuggestions\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of keyword tags that could be added to - the video's metadata to increase the likelihood that users will locate your - video when searching or browsing on YouTube.\",\n \"items\": {\n - \ \"$ref\": \"VideoSuggestionsTagSuggestion\"\n }\n }\n - \ },\n \"id\": \"VideoSuggestions\",\n \"description\": \"Specifies - suggestions on how to improve video content, including encoding hints, tag - suggestions, and editor suggestions.\",\n \"type\": \"object\"\n },\n - \ \"VideoRecordingDetails\": {\n \"id\": \"VideoRecordingDetails\",\n - \ \"description\": \"Recording information associated with the video.\",\n - \ \"properties\": {\n \"location\": {\n \"$ref\": \"GeoPoint\",\n - \ \"description\": \"The geolocation information associated with the - video.\"\n },\n \"recordingDate\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the video - was recorded.\",\n \"type\": \"string\"\n },\n \"locationDescription\": - {\n \"type\": \"string\",\n \"description\": \"The text - description of the location where the video was recorded.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LevelDetails\": {\n \"id\": - \"LevelDetails\",\n \"properties\": {\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The name that should be used when - referring to this level.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsUpload\": {\n \"properties\": {\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the uploaded video.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Information about the uploaded - video.\",\n \"id\": \"ActivityContentDetailsUpload\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsChannelItem\": {\n \"description\": - \"Details about a resource which was added to a channel.\",\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that was added to - the channel.\",\n \"$ref\": \"ResourceId\"\n }\n }\n - \ },\n \"ChannelConversionPings\": {\n \"type\": \"object\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"id\": \"ChannelConversionPings\",\n - \ \"properties\": {\n \"pings\": {\n \"type\": \"array\",\n - \ \"description\": \"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.\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n }\n }\n }\n },\n \"ThirdPartyLinkStatus\": - {\n \"type\": \"object\",\n \"id\": \"ThirdPartyLinkStatus\",\n - \ \"description\": \"The third-party link status object contains information - about the status of the link.\",\n \"properties\": {\n \"linkStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ]\n }\n - \ }\n },\n \"ChannelToStoreLinkDetails\": {\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"properties\": {\n \"merchantId\": - {\n \"description\": \"Google Merchant Center id of the store.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"storeUrl\": {\n \"description\": \"Landing page of the - store.\",\n \"type\": \"string\"\n },\n \"storeName\": - {\n \"description\": \"Name of the store.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n \"type\": - \"object\",\n \"description\": \"Details about a resource which is being - promoted.\",\n \"properties\": {\n \"adTag\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should fetch - to request a promoted item.\"\n },\n \"forecastingUrl\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"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.\"\n },\n - \ \"impressionUrl\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the promoted video.\"\n },\n \"customCtaButtonText\": - {\n \"description\": \"The custom call-to-action button text. If - specified, it will override the default button text for the cta_type.\",\n - \ \"type\": \"string\"\n },\n \"clickTrackingUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user clicked through on this promoted - item.\"\n },\n \"creativeViewUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should ping to indicate that - the user was shown this promoted item.\"\n },\n \"descriptionText\": - {\n \"type\": \"string\",\n \"description\": \"The text - description to accompany the promoted item.\"\n },\n \"ctaType\": - {\n \"description\": \"The type of call-to-action, a message to the - user indicating action that can be taken.\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"destinationUrl\": {\n \"description\": \"The - URL the client should direct the user to, if the user chooses to visit the - advertiser's website.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ImageSettings\": {\n \"description\": \"Branding properties - for images associated with the channel.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"bannerMobileMediumHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size medium/high resolution (960x263).\",\n \"type\": - \"string\"\n },\n \"watchIconImageUrl\": {\n \"type\": - \"string\"\n },\n \"largeBrandedBannerImageImapScript\": {\n - \ \"description\": \"The image map script for the large banner image.\",\n - \ \"$ref\": \"LocalizedProperty\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"bannerTabletLowImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Tablet size low resolution (1138x188).\"\n - \ },\n \"bannerTvHighImageUrl\": {\n \"description\": - \"Banner image. TV size high resolution (1920x1080).\",\n \"type\": - \"string\"\n },\n \"bannerTvMediumImageUrl\": {\n \"description\": - \"Banner image. TV size medium resolution (1280x720).\",\n \"type\": - \"string\"\n },\n \"smallBrandedBannerImageImapScript\": {\n - \ \"description\": \"The image map script for the small banner image.\",\n - \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileImageUrl\": - {\n \"description\": \"Banner image. Mobile size (640x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\",\n \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size low resolution (854x480).\"\n },\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"bannerTabletHdImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Tablet size high resolution (2276x377).\"\n - \ },\n \"bannerTabletImageUrl\": {\n \"description\": - \"Banner image. Tablet size (1707x283).\",\n \"type\": \"string\"\n - \ },\n \"bannerTabletExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size extra - high resolution (2560x424).\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n },\n \"trackingImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n }\n - \ },\n \"id\": \"ImageSettings\"\n },\n \"I18nLanguageSnippet\": - {\n \"id\": \"I18nLanguageSnippet\",\n \"properties\": {\n \"name\": - {\n \"description\": \"The human-readable name of the language in - the language itself.\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"description\": \"A short BCP-47 code that uniquely identifies - a language.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about an i18n language, - such as language code and human-readable name.\"\n },\n \"ChannelBrandingSettings\": - {\n \"properties\": {\n \"hints\": {\n \"items\": {\n - \ \"$ref\": \"PropertyValue\"\n },\n \"type\": - \"array\",\n \"description\": \"Additional experimental branding - properties.\"\n },\n \"watch\": {\n \"description\": - \"Branding properties for the watch page.\",\n \"$ref\": \"WatchSettings\"\n - \ },\n \"channel\": {\n \"description\": \"Branding - properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n - \ },\n \"image\": {\n \"description\": \"Branding properties - for branding images.\",\n \"$ref\": \"ImageSettings\"\n }\n - \ },\n \"id\": \"ChannelBrandingSettings\",\n \"type\": \"object\",\n - \ \"description\": \"Branding properties of a YouTube channel.\"\n },\n - \ \"CommentThreadSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a comment thread.\",\n \"properties\": {\n \"isPublic\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the thread (and therefore all its comments) is visible to all YouTube users.\"\n - \ },\n \"totalReplyCount\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The total number of replies (not including the - top level comment).\",\n \"type\": \"integer\"\n },\n \"topLevelComment\": - {\n \"description\": \"The top level comment of this thread.\",\n - \ \"$ref\": \"Comment\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the video the comments - refer to, if any. No video_id implies a channel discussion comment.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"canReply\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n }\n },\n \"id\": \"CommentThreadSnippet\"\n - \ },\n \"LiveStreamStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"healthStatus\": {\n \"$ref\": \"LiveStreamHealthStatus\",\n - \ \"description\": \"The health status of the stream.\"\n },\n - \ \"streamStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"description\": - \"Brief description of the live stream status.\",\n \"id\": \"LiveStreamStatus\"\n - \ },\n \"PlaylistSnippet\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistSnippet\",\n \"description\": \"Basic details about a playlist, - including title, description and thumbnails.\",\n \"properties\": {\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that published the playlist.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist. 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.\"\n },\n \"title\": {\n \"description\": - \"The playlist's title.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"localized\": {\n \"description\": \"Localized title and - description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the playlist's default title - and description.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the playlist was created.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"tags\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Keyword tags associated - with the playlist.\"\n },\n \"channelTitle\": {\n \"description\": - \"The channel title of the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"thumbnailVideoId\": {\n \"description\": - \"Note: if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The playlist's description.\"\n }\n }\n - \ },\n \"ActivityContentDetails\": {\n \"id\": \"ActivityContentDetails\",\n - \ \"properties\": {\n \"upload\": {\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"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.\"\n },\n \"promotedItem\": - {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n \"description\": - \"The promotedItem object contains details about a resource which is being - promoted. This property is only present if the snippet.type is promotedItem.\"\n - \ },\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n },\n \"favorite\": {\n \"description\": - \"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.\",\n - \ \"$ref\": \"ActivityContentDetailsFavorite\"\n },\n \"like\": - {\n \"$ref\": \"ActivityContentDetailsLike\",\n \"description\": - \"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.\"\n - \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"recommendation\": {\n \"description\": - \"The recommendation object contains information about a recommended resource. - This property is only present if the snippet.type is recommendation.\",\n - \ \"$ref\": \"ActivityContentDetailsRecommendation\"\n },\n - \ \"social\": {\n \"description\": \"The social object contains - details about a social network post. This property is only present if the - snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"playlistItem\": {\n \"description\": \"The - playlistItem object contains information about a new playlist item. This property - is only present if the snippet.type is playlistItem.\",\n \"$ref\": - \"ActivityContentDetailsPlaylistItem\"\n },\n \"subscription\": - {\n \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Details - about the content of an activity: the video that was shared, the channel that - was subscribed to, etc.\"\n },\n \"MembershipsLevel\": {\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"MembershipsLevelSnippet\",\n \"description\": \"The snippet object - contains basic details about the level.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevel\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the memberships level.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"description\": \"A - *membershipsLevel* resource represents an offer made by YouTube creators for - their fans. Users can become members of the channel by joining one of the - available levels. They will provide recurring monetary support and receives - special benefits.\",\n \"id\": \"MembershipsLevel\"\n },\n \"LiveStreamContentDetails\": - {\n \"description\": \"Detailed settings of a stream.\",\n \"properties\": - {\n \"closedCaptionsIngestionUrl\": {\n \"description\": \"The - ingestion URL where the closed captions of this stream are sent.\",\n \"type\": - \"string\"\n },\n \"isReusable\": {\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \",\n \"type\": \"boolean\"\n }\n },\n \"id\": \"LiveStreamContentDetails\",\n - \ \"type\": \"object\"\n },\n \"I18nRegion\": {\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#i18nRegion\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"I18nRegion\",\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\"\n - \ },\n \"VideoMonetizationDetails\": {\n \"properties\": {\n \"access\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - value of access indicates whether the video can be monetized or not.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Details about - monetization of a YouTube Video.\",\n \"id\": \"VideoMonetizationDetails\"\n - \ },\n \"I18nRegionListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"I18nRegion\"\n },\n - \ \"description\": \"A list of regions where YouTube is available. - In this map, the i18n region ID is the map key, and its value is the corresponding - i18nRegion resource.\",\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#i18nRegionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"I18nRegionListResponse\",\n - \ \"type\": \"object\"\n },\n \"ChannelSectionContentDetails\": - {\n \"id\": \"ChannelSectionContentDetails\",\n \"properties\": - {\n \"channels\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The channel ids for type multiple_channels.\"\n },\n \"playlists\": - {\n \"type\": \"array\",\n \"description\": \"The playlist - ids for type single_playlist and multiple_playlists. For singlePlaylist, only - one playlistId is allowed.\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Details about a channelsection, including playlists - and channels.\"\n },\n \"VideoLocalization\": {\n \"type\": \"object\",\n - \ \"description\": \"Localized versions of certain video properties (e.g. - title).\",\n \"id\": \"VideoLocalization\",\n \"properties\": {\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"Localized version of the video's description.\"\n },\n \"title\": - {\n \"description\": \"Localized version of the video's title.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ChannelListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"pageInfo\": {\n - \ \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Channel\"\n },\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"default\": \"youtube#channelListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"id\": \"ChannelListResponse\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsFavorite\": {\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that was marked as - a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Information about a - video that was marked as a favorite video.\",\n \"id\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"VideoGetRatingResponse\": {\n \"id\": \"VideoGetRatingResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of ratings - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"type\": \"array\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"default\": \"youtube#videoGetRatingResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoStatistics\": {\n \"id\": - \"VideoStatistics\",\n \"type\": \"object\",\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\",\n \"properties\": {\n \"viewCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of times the video has - been viewed.\",\n \"format\": \"uint64\"\n },\n \"dislikeCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of users who have indicated that they disliked the video by giving - it a negative rating.\"\n },\n \"likeCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of users who have indicated - that they liked the video by giving it a positive rating.\",\n \"type\": - \"string\"\n },\n \"favoriteCount\": {\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"commentCount\": {\n \"description\": \"The number of comments - for the video.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelSection\": {\n \"type\": - \"object\",\n \"id\": \"ChannelSection\",\n \"properties\": {\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel section.\"\n },\n \"contentDetails\": {\n - \ \"$ref\": \"ChannelSectionContentDetails\",\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#channelSection\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the channel section, such as its type, - style and title.\",\n \"$ref\": \"ChannelSectionSnippet\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"description\": - \"Localizations for different languages\"\n },\n \"targeting\": - {\n \"$ref\": \"ChannelSectionTargeting\",\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\"\n }\n }\n },\n \"Cuepoint\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The identifier for cuepoint resource.\",\n - \ \"type\": \"string\"\n },\n \"cueType\": {\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ]\n },\n \"durationSecs\": {\n \"type\": - \"integer\",\n \"description\": \"The duration of this cuepoint.\",\n - \ \"format\": \"uint32\"\n },\n \"walltimeMs\": {\n - \ \"format\": \"uint64\",\n \"description\": \"The wall clock - time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\",\n \"type\": \"string\"\n - \ },\n \"insertionOffsetTimeMs\": {\n \"type\": \"string\",\n - \ \"format\": \"int64\",\n \"description\": \"The time when - the cuepoint should be inserted by offset to the broadcast actual start time.\"\n - \ }\n },\n \"id\": \"Cuepoint\",\n \"description\": \"Note - that there may be a 5-second end-point resolution issue. For instance, if - a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\",\n \"type\": \"object\"\n - \ },\n \"VideoStatus\": {\n \"description\": \"Basic details about - a video category, such as its localized title. Next Id: 18\",\n \"properties\": - {\n \"embeddable\": {\n \"type\": \"boolean\",\n \"description\": - \"This value indicates if the video can be embedded on another website. @mutable - youtube.videos.insert youtube.videos.update\"\n },\n \"uploadStatus\": - {\n \"description\": \"The status of the uploaded video.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Video has been - uploaded but not processed yet.\",\n \"Video has been successfully - processed.\",\n \"Processing has failed. See FailureReason.\",\n - \ \"Video has been rejected. See RejectionReason.\",\n \"Video - has been deleted.\"\n ],\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ]\n },\n \"publicStatsViewable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"license\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"failureReason\": {\n \"type\": - \"string\",\n \"description\": \"This value explains why a video - failed to upload. This property is only present if the uploadStatus property - indicates that the upload failed.\",\n \"enumDescriptions\": [\n - \ \"Unable to convert video content.\",\n \"Invalid file - format.\",\n \"Empty file.\",\n \"File was too small.\",\n - \ \"Unsupported codec.\",\n \"Upload wasn't finished.\"\n - \ ],\n \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ]\n },\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The video's privacy status.\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"madeForKids\": {\n - \ \"type\": \"boolean\"\n },\n \"rejectionReason\": - {\n \"type\": \"string\",\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"description\": \"This value explains why YouTube - rejected an uploaded video. This property is only present if the uploadStatus - property indicates that the upload was rejected.\",\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n },\n \"publishAt\": - {\n \"description\": \"The date and time when the video is scheduled - to publish. It can be set only if the privacy status of the video is private..\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n }\n - \ },\n \"id\": \"VideoStatus\",\n \"type\": \"object\"\n },\n - \ \"VideoFileDetailsVideoStream\": {\n \"properties\": {\n \"codec\": - {\n \"description\": \"The video codec that the stream uses.\",\n - \ \"type\": \"string\"\n },\n \"aspectRatio\": {\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\",\n \"type\": \"number\",\n - \ \"format\": \"double\"\n },\n \"widthPixels\": {\n - \ \"type\": \"integer\",\n \"description\": \"The encoded - video content's width in pixels. You can calculate the video's encoding aspect - ratio as width_pixels / height_pixels.\",\n \"format\": \"uint32\"\n - \ },\n \"frameRateFps\": {\n \"description\": \"The - video stream's frame rate, in frames per second.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The video stream's bitrate, in bits per second.\"\n },\n \"heightPixels\": - {\n \"description\": \"The encoded video content's height in pixels.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"rotation\": {\n \"description\": \"The amount that YouTube - needs to rotate the original source content to properly display the video.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"none\",\n \"clockwise\",\n \"upsideDown\",\n - \ \"counterClockwise\",\n \"other\"\n ],\n \"type\": - \"string\"\n },\n \"vendor\": {\n \"type\": \"string\",\n - \ \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Information about a - video stream.\",\n \"id\": \"VideoFileDetailsVideoStream\"\n },\n - \ \"GeoPoint\": {\n \"description\": \"Geographical coordinates of - a point, in WGS84.\",\n \"type\": \"object\",\n \"id\": \"GeoPoint\",\n - \ \"properties\": {\n \"longitude\": {\n \"description\": - \"Longitude in degrees.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n },\n \"altitude\": {\n \"format\": \"double\",\n - \ \"type\": \"number\",\n \"description\": \"Altitude above - the reference ellipsoid, in meters.\"\n },\n \"latitude\": {\n - \ \"type\": \"number\",\n \"description\": \"Latitude in - degrees.\",\n \"format\": \"double\"\n }\n }\n },\n - \ \"VideoCategory\": {\n \"description\": \"A *videoCategory* resource - identifies a category that has been or could be associated with uploaded videos.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoCategory\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the video category.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoCategory\"\n },\n \"PlaylistStatus\": - {\n \"id\": \"PlaylistStatus\",\n \"type\": \"object\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The playlist's - privacy status.\"\n }\n }\n },\n \"CommentSnippet\": {\n - \ \"id\": \"CommentSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about a comment, such as its author and text.\",\n \"properties\": - {\n \"textOriginal\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"moderationStatus\": {\n \"description\": \"The comment's - moderation status. Will not be set if the comments were requested through - the id filter.\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": \"string\"\n - \ },\n \"authorChannelId\": {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID of - the video the comment refers to, if any.\",\n \"type\": \"string\"\n - \ },\n \"textDisplay\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"authorDisplayName\": {\n \"description\": - \"The name of the user who posted the comment.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"updatedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was last updated.\"\n - \ },\n \"parentId\": {\n \"description\": \"The unique - id of the parent comment, only set for replies.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was originally - published.\",\n \"format\": \"date-time\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"viewerRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"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.\"\n },\n \"likeCount\": {\n \"description\": - \"The total number of likes this comment has received.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"canRate\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the current viewer can rate this comment.\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoAgeGating\": - {\n \"id\": \"VideoAgeGating\",\n \"type\": \"object\",\n \"properties\": - {\n \"alcoholContent\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether or not the video has alcoholic beverage content. Only - users of legal purchasing age in a particular country, as identified by ICAP, - can view the content.\"\n },\n \"videoGameRating\": {\n \"description\": - \"Video game rating, if any.\",\n \"enum\": [\n \"anyone\",\n - \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"restricted\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Age-restricted trailers. For redband trailers - and adult-rated video-games. Only users aged 18+ can view the content. The - the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\"\n }\n }\n },\n \"LiveStreamListResponse\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"default\": \"youtube#liveStreamListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveStream\"\n },\n \"description\": - \"A list of live streams that match the request criteria.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoFileDetails\": {\n \"properties\": - {\n \"fileType\": {\n \"description\": \"The uploaded file's - type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\",\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ],\n \"type\": \"string\"\n },\n \"videoStreams\": - {\n \"description\": \"A list of video streams contained in the uploaded - video file. Each item in the list contains detailed metadata about a video - stream.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n }\n },\n \"bitrateBps\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\"\n },\n \"container\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded video file's container format.\"\n - \ },\n \"durationMs\": {\n \"description\": \"The length - of the uploaded video in milliseconds.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"creationTime\": {\n - \ \"description\": \"The date and time when the uploaded video file - was created. The value is specified in ISO 8601 format. Currently, the following - ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n - \ },\n \"fileSize\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The uploaded file's size in bytes. - This field is present whether a video file or another type of file was uploaded.\"\n - \ },\n \"audioStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsAudioStream\"\n },\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\",\n \"type\": - \"array\"\n },\n \"fileName\": {\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoFileDetails\",\n \"description\": \"Describes - original video file properties, including technical details about audio and - video streams, but also metadata information like content length, digitization - time, or geotagging information.\",\n \"type\": \"object\"\n },\n - \ \"LocalizedString\": {\n \"id\": \"LocalizedString\",\n \"type\": - \"object\",\n \"properties\": {\n \"language\": {\n \"type\": - \"string\"\n },\n \"value\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoProjectDetails\": {\n \"properties\": - {},\n \"type\": \"object\",\n \"id\": \"VideoProjectDetails\",\n - \ \"description\": \"DEPRECATED. b/157517979: This part was never populated - after it was added. However, it sees non-zero traffic because there is generated - client code in the wild that refers to it [1]. We keep this field and do NOT - remove it because otherwise V3 would return an error when this part gets requested - [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"LiveStreamSnippet\": {\n \"type\": \"object\",\n \"id\": - \"LiveStreamSnippet\",\n \"properties\": {\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n },\n \"title\": {\n \"description\": - \"The stream's title. The value must be between 1 and 128 characters long.\",\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The stream's description. The value cannot - be longer than 10000 characters.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the stream - was created.\"\n }\n }\n },\n \"VideoAbuseReport\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"secondaryReasonId\": - {\n \"type\": \"string\",\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\"\n },\n \"reasonId\": {\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\",\n \"type\": \"string\"\n },\n - \ \"language\": {\n \"type\": \"string\",\n \"description\": - \"The language that the content was viewed in.\"\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n },\n \"comments\": - {\n \"type\": \"string\",\n \"description\": \"Additional - comments regarding the abuse report.\"\n }\n },\n \"id\": - \"VideoAbuseReport\"\n },\n \"LiveChatModeratorListResponse\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatModeratorListResponse\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"description\": \"A list of moderators that match the request criteria.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"ThumbnailDetails\": - {\n \"properties\": {\n \"standard\": {\n \"description\": - \"The standard quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The default image for this resource.\"\n },\n \"maxres\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The maximum - resolution quality image for this resource.\"\n },\n \"high\": - {\n \"description\": \"The high quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"medium\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The medium quality image for - this resource.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ThumbnailDetails\",\n \"description\": \"Internal representation of - thumbnails for a YouTube resource.\"\n },\n \"ThirdPartyLink\": {\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#thirdPartyLink\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLink\\\".\",\n \"type\": \"string\"\n - \ },\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the third- party account link.\",\n \"$ref\": - \"ThirdPartyLinkSnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"$ref\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The status object contains information about the status of the link.\"\n - \ }\n },\n \"id\": \"ThirdPartyLink\",\n \"type\": \"object\",\n - \ \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\"\n },\n \"LiveChatFanFundingEventDetails\": {\n \"properties\": - {\n \"currency\": {\n \"description\": \"The currency in which - the fund was made.\",\n \"type\": \"string\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The amount of the fund.\"\n },\n - \ \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the user to this fan funding event.\"\n }\n - \ },\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"type\": - \"object\"\n },\n \"Caption\": {\n \"id\": \"Caption\",\n \"description\": - \"A *caption* resource represents a YouTube caption track. A caption track - is associated with exactly one YouTube video.\",\n \"properties\": {\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the caption track.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"CaptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the caption.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#caption\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatNewSponsorDetails\": {\n - \ \"properties\": {\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level that the viewer - just had joined. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n },\n - \ \"isUpgrade\": {\n \"description\": \"If the viewer just - had upgraded from a lower level. For viewers that were not members at the - time of purchase, this field is false.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"id\": \"LiveChatNewSponsorDetails\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsSocial\": {\n \"properties\": - {\n \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ],\n \"description\": \"The name - of the social network.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\"\n },\n \"referenceUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL of - the social network post.\"\n },\n \"imageUrl\": {\n \"description\": - \"An image of the post's author.\",\n \"type\": \"string\"\n },\n - \ \"author\": {\n \"description\": \"The author of the social - network post.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ActivityContentDetailsSocial\",\n \"description\": \"Details about - a social network post.\",\n \"type\": \"object\"\n },\n \"PlaylistItemContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistItemContentDetails\",\n - \ \"properties\": {\n \"endAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\",\n - \ \"type\": \"string\"\n },\n \"note\": {\n \"type\": - \"string\",\n \"description\": \"A user-generated note for this item.\"\n - \ },\n \"startAt\": {\n \"description\": \"The time, - measured in seconds from the start of the video, when the video should start - playing. (The playlist owner can specify the times when the video should start - and stop playing when the video is played in the context of the playlist.) - The default value is 0.\",\n \"type\": \"string\"\n },\n \"videoPublishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the video was published - to YouTube.\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify a video. To retrieve the video - resource, set the id query parameter to this value in your API request.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LiveBroadcastStatistics\": - {\n \"type\": \"object\",\n \"description\": \"Statistics about - the live broadcast. These represent a snapshot of the values at the time of - the request. Statistics are only returned for live broadcasts.\",\n \"id\": - \"LiveBroadcastStatistics\",\n \"properties\": {\n \"concurrentViewers\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"type\": \"string\"\n - \ },\n \"totalChatCount\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The total - number of live chat messages currently on the broadcast. The property and - its value will be present if the broadcast is public, has the live chat feature - enabled, and has at least one message. Note that this field will not be filled - after the broadcast ends. So this property would not identify the number of - chat messages for an archived video of a completed live broadcast.\"\n }\n - \ }\n },\n \"PlaylistItem\": {\n \"id\": \"PlaylistItem\",\n - \ \"type\": \"object\",\n \"description\": \"A *playlistItem* resource - identifies another resource, such as a video, that is included in a playlist. - In addition, the playlistItem resource contains details about the included - resource that pertain specifically to how that resource is used in that playlist. - YouTube uses playlists to identify special collections of videos for a channel, - such as: - uploaded videos - favorite videos - positively rated (liked) videos - - watch history - watch later To be more specific, these lists are associated - with a channel, which is a collection of a person, group, or company's videos, - playlists, and other YouTube information. You can retrieve the playlist IDs - for each of these lists from the channel resource for a given channel. You - can then use the playlistItems.list method to retrieve any of those lists. - You can also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods. For example, if a user gives a positive - rating to a video, you would insert that video into the liked videos playlist - for that user's channel.\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"PlaylistItemSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\"\n },\n \"kind\": - {\n \"default\": \"youtube#playlistItem\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"type\": \"string\"\n },\n \"status\": {\n \"$ref\": - \"PlaylistItemStatus\",\n \"description\": \"The status object contains - information about the playlist item's privacy status.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"PlaylistItemContentDetails\",\n \"description\": - \"The contentDetails object is included in the resource if the included item - is a YouTube video. The object contains additional information about the video.\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the playlist item.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"LiveChatMessage\": {\n \"description\": \"A *liveChatMessage* resource - represents a chat message in a YouTube Live Chat.\",\n \"properties\": - {\n \"authorDetails\": {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n - \ \"description\": \"The authorDetails object contains basic details - about the user that posted this message.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessage\\\".\",\n \"default\": - \"youtube#liveChatMessage\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessage\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageRetractedDetails\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"VideoListResponse\": {\n \"type\": - \"object\",\n \"id\": \"VideoListResponse\",\n \"properties\": {\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoListResponse\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Video\"\n },\n \"type\": \"array\"\n - \ }\n }\n },\n \"PropertyValue\": {\n \"id\": \"PropertyValue\",\n - \ \"description\": \"A pair Property / Value.\",\n \"properties\": - {\n \"property\": {\n \"description\": \"A property.\",\n - \ \"type\": \"string\"\n },\n \"value\": {\n \"type\": - \"string\",\n \"description\": \"The property's value.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoCategorySnippet\": - {\n \"type\": \"object\",\n \"id\": \"VideoCategorySnippet\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\",\n \"properties\": {\n \"channelId\": {\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"type\": \"string\",\n \"description\": - \"The YouTube channel that created the video category.\"\n },\n \"assignable\": - {\n \"type\": \"boolean\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The video category's title.\"\n - \ }\n }\n },\n \"LiveBroadcast\": {\n \"description\": - \"A *liveBroadcast* resource represents an event that will be streamed, via - live video, on YouTube.\",\n \"id\": \"LiveBroadcast\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#liveBroadcast\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcast\\\".\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the event, including its title, description, - start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the broadcast.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the event's status.\",\n \"$ref\": - \"LiveBroadcastStatus\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelStatus\": {\n \"properties\": {\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"Privacy status of the channel.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n },\n - \ \"isLinked\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"longUploadsStatus\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"id\": \"ChannelStatus\",\n \"description\": \"JSON - template for the status part of a channel.\",\n \"type\": \"object\"\n - \ },\n \"I18nRegionSnippet\": {\n \"description\": \"Basic details - about an i18n region, such as region code and human-readable name.\",\n \"type\": - \"object\",\n \"id\": \"I18nRegionSnippet\",\n \"properties\": {\n - \ \"gl\": {\n \"type\": \"string\",\n \"description\": - \"The region code as a 2-letter ISO country code.\"\n },\n \"name\": - {\n \"type\": \"string\",\n \"description\": \"The human-readable - name of the region.\"\n }\n }\n },\n \"PlaylistContentDetails\": - {\n \"properties\": {\n \"itemCount\": {\n \"description\": - \"The number of videos in the playlist.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistContentDetails\"\n },\n \"CaptionListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Caption\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of captions that match the request criteria.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"CaptionListResponse\"\n },\n \"SearchResult\": {\n \"type\": - \"object\",\n \"id\": \"SearchResult\",\n \"description\": \"A search - result contains information about a YouTube video, channel, or playlist that - matches the search parameters specified in an API request. While a search - result points to a uniquely identifiable resource, like a video, it does not - have its own persistent data.\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"SearchResultSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - a search result, such as its title or description. For example, if the search - result is a video, then the title will be the video's title and the description - will be the video's description.\"\n },\n \"id\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The id object contains information - that can be used to uniquely identify the resource that matches the search - request.\"\n },\n \"kind\": {\n \"default\": \"youtube#searchResult\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#searchResult\\\".\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoFileDetailsAudioStream\": {\n \"properties\": - {\n \"channelCount\": {\n \"description\": \"The number of - audio channels that the stream contains.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - audio stream's bitrate, in bits per second.\"\n },\n \"codec\": - {\n \"description\": \"The audio codec that the stream uses.\",\n - \ \"type\": \"string\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Information - about an audio stream.\",\n \"id\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"Entity\": {\n \"type\": \"object\",\n \"id\": \"Entity\",\n - \ \"properties\": {\n \"url\": {\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"typeId\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"SuperChatEventListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#superChatEventListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"description\": \"A list of Super Chat purchases - that match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n }\n }\n },\n - \ \"id\": \"SuperChatEventListResponse\"\n },\n \"PlaylistLocalization\": - {\n \"description\": \"Playlist localization setting\",\n \"type\": - \"object\",\n \"id\": \"PlaylistLocalization\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for playlist's description.\"\n },\n \"title\": - {\n \"description\": \"The localized strings for playlist's title.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"Subscription\": - {\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\",\n \"type\": - \"string\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\",\n - \ \"$ref\": \"SubscriptionContentDetails\"\n },\n \"snippet\": - {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#subscription\"\n - \ },\n \"subscriberSnippet\": {\n \"description\": \"The - subscriberSnippet object contains basic details about the subscriber.\",\n - \ \"$ref\": \"SubscriptionSubscriberSnippet\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"A *subscription* resource - contains information about a YouTube user subscription. A subscription notifies - a user when new videos are added to a channel or when another user takes one - of several actions on YouTube, such as uploading a video, rating a video, - or commenting on a video.\",\n \"id\": \"Subscription\"\n },\n \"PlaylistItemStatus\": - {\n \"type\": \"object\",\n \"description\": \"Information about - the playlist item's privacy status.\",\n \"id\": \"PlaylistItemStatus\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"description\": - \"This resource's privacy status.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n }\n }\n },\n \"ChannelAuditDetails\": - {\n \"id\": \"ChannelAuditDetails\",\n \"type\": \"object\",\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\",\n \"properties\": {\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n }\n }\n },\n - \ \"ActivityListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Activity\"\n }\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#activityListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n }\n },\n \"id\": \"ActivityListResponse\"\n - \ },\n \"MonitorStreamInfo\": {\n \"id\": \"MonitorStreamInfo\",\n - \ \"type\": \"object\",\n \"description\": \"Settings and Info of - the monitor stream\",\n \"properties\": {\n \"enableMonitorStream\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - determines whether the monitor stream is enabled for the broadcast. If the - monitor stream is enabled, then YouTube will broadcast the event content on - a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"broadcastStreamDelayMs\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"If you have set the enableMonitorStream - property to true, then this property determines the length of the live broadcast - delay.\"\n },\n \"embedHtml\": {\n \"type\": \"string\",\n - \ \"description\": \"HTML code that embeds a player that plays the - monitor stream.\"\n }\n }\n },\n \"ActivitySnippet\": {\n - \ \"properties\": {\n \"thumbnails\": {\n \"description\": - \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the resource primarily associated with the activity. - @mutable youtube.activities.insert\"\n },\n \"type\": {\n \"enum\": - [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of activity that the resource describes.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the video was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"title\": {\n \"description\": - \"The title of the resource primarily associated with the activity.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel responsible for this activity\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel associated with - the activity.\",\n \"type\": \"string\"\n },\n \"groupId\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Basic details about an activity, - including title, description, thumbnails, activity type and group. Next ID: - 12\",\n \"type\": \"object\",\n \"id\": \"ActivitySnippet\"\n },\n - \ \"LanguageTag\": {\n \"type\": \"object\",\n \"id\": \"LanguageTag\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"SearchResultSnippet\": {\n \"properties\": - {\n \"title\": {\n \"description\": \"The title of the search - result.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"The title of the channel that published the - resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - search result. 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.\"\n },\n \"liveBroadcastContent\": {\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ]\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The creation date and time of the - resource that the search result identifies.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The value - that YouTube uses to uniquely identify the channel that published the resource - that the search result identifies.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"A description - of the search result.\"\n }\n },\n \"id\": \"SearchResultSnippet\",\n - \ \"description\": \"Basic details about a search result, including title, - description and thumbnails of the item referenced by the search result.\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatMessageListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"offlineAt\": - {\n \"description\": \"The date and time when the underlying stream - went offline.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatMessage\"\n }\n },\n \"pollingIntervalMillis\": - {\n \"format\": \"uint32\",\n \"description\": \"The amount - of time the client should wait before polling again.\",\n \"type\": - \"integer\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n }\n - \ },\n \"id\": \"LiveChatMessageListResponse\"\n },\n \"MemberSnippet\": - {\n \"properties\": {\n \"memberDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - member.\"\n },\n \"membershipsDetails\": {\n \"description\": - \"Details about the user's membership.\",\n \"$ref\": \"MembershipsDetails\"\n - \ },\n \"creatorChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The id of the channel that's offering memberships.\"\n - \ }\n },\n \"id\": \"MemberSnippet\",\n \"type\": \"object\"\n - \ },\n \"CommentThread\": {\n \"description\": \"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.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"replies\": - {\n \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\",\n \"$ref\": - \"CommentThreadReplies\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the comment thread and also the top level comment.\",\n \"$ref\": - \"CommentThreadSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"default\": \"youtube#commentThread\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"CommentThread\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"properties\": {\n \"thumbnails\": {\n \"description\": - \"Thumbnails for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the subscriber.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel ID of the subscriber.\"\n },\n \"title\": {\n - \ \"description\": \"The title of the subscriber.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - a subscription's subscriber including title, description, channel ID and thumbnails.\",\n - \ \"type\": \"object\",\n \"id\": \"SubscriptionSubscriberSnippet\"\n - \ },\n \"VideoAbuseReportReasonListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoAbuseReportReasonListResponse\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ },\n \"description\": \"A list of valid abuse reasons that - are used with `video.ReportAbuse`.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The `visitorId` identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"MembershipsLevelListResponse\": {\n \"type\": \"object\",\n \"id\": - \"MembershipsLevelListResponse\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"MembershipsLevel\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of pricing levels offered - by a creator to the fans.\"\n },\n \"kind\": {\n \"default\": - \"youtube#membershipsLevelListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"RelatedEntity\": - {\n \"type\": \"object\",\n \"id\": \"RelatedEntity\",\n \"properties\": - {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n }\n - \ },\n \"CommentSnippetAuthorChannelId\": {\n \"type\": \"object\",\n - \ \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"id\": \"CommentSnippetAuthorChannelId\",\n \"properties\": {\n - \ \"value\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"ChannelSectionListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#channelSectionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"A list of ChannelSections - that match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ChannelSection\"\n }\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ChannelSectionListResponse\"\n - \ },\n \"PlaylistItemListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"PlaylistItemListResponse\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"type\": \"string\",\n \"default\": - \"youtube#playlistItemListResponse\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"description\": - \"A list of playlist items that match the request criteria.\",\n \"type\": - \"array\"\n }\n }\n },\n \"ChannelSectionSnippet\": {\n - \ \"properties\": {\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the channel section's - default title and description.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that published the channel section.\"\n },\n \"type\": - {\n \"description\": \"The type of the channel section.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ]\n },\n \"style\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The style of the channel section.\",\n \"type\": - \"string\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ]\n - \ },\n \"position\": {\n \"description\": \"The position - of the channel section in the channel.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel section's title for - multiple_playlists and multiple_channels.\"\n },\n \"localized\": - {\n \"description\": \"Localized title, read-only.\",\n \"$ref\": - \"ChannelSectionLocalization\"\n }\n },\n \"id\": \"ChannelSectionSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a channel section, including title, style and position.\"\n },\n \"LiveChatMessageSnippet\": - {\n \"properties\": {\n \"liveChatId\": {\n \"type\": - \"string\"\n },\n \"displayMessage\": {\n \"type\": - \"string\",\n \"description\": \"Contains a string that can be displayed - to the user. If this field is not present the message is silent, at the moment - only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\"\n },\n - \ \"authorChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the user that authored this message, this field is not always - filled. textMessageEvent - the user that wrote the message fanFundingEvent - - the user that funded the broadcast newSponsorEvent - the user that just - became a sponsor memberMilestoneChatEvent - the member that sent the message - membershipGiftingEvent - the user that made the purchase giftMembershipReceivedEvent - - the user that received the gift membership messageDeletedEvent - the moderator - that took the action messageRetractedEvent - the author that retracted their - message userBannedEvent - the moderator that took the action superChatEvent - - the user that made the purchase superStickerEvent - the user that made the - purchase\"\n },\n \"messageDeletedDetails\": {\n \"$ref\": - \"LiveChatMessageDeletedDetails\"\n },\n \"membershipGiftingDetails\": - {\n \"description\": \"Details about the Membership Gifting event, - this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": - \"LiveChatMembershipGiftingDetails\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"giftMembershipReceivedDetails\": {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"description\": \"Details about the Gift Membership Received event, - this is only set if the type is 'giftMembershipReceivedEvent'.\"\n },\n - \ \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"memberMilestoneChatDetails\": {\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\",\n \"description\": \"Details - about the Member Milestone Chat event, this is only set if the type is 'memberMilestoneChatEvent'.\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time when the message was orignally published.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"superChatDetails\": - {\n \"description\": \"Details about the Super Chat event, this is - only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n - \ },\n \"hasDisplayContent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the message has display content that - should be displayed to users.\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"fanFundingEventDetails\": {\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n },\n \"newSponsorDetails\": - {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": - \"Details about the New Member Announcement event, this is only set if the - type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term - for \\\"sponsor\\\".\"\n },\n \"superStickerDetails\": {\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\",\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ]\n }\n },\n \"type\": \"object\",\n \"description\": - \"Next ID: 33\",\n \"id\": \"LiveChatMessageSnippet\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"properties\": {\n \"severity\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"info\",\n - \ \"warning\",\n \"error\"\n ],\n \"description\": - \"How severe this issue is to the stream.\"\n },\n \"description\": - {\n \"description\": \"The long-form description of the issue and - how to resolve it.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n - \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n - \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n - \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n - \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n - \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"description\": \"The kind of error happening.\",\n - \ \"type\": \"string\"\n },\n \"reason\": {\n \"type\": - \"string\",\n \"description\": \"The short-form reason for this issue.\"\n - \ }\n },\n \"id\": \"LiveStreamConfigurationIssue\",\n \"type\": - \"object\"\n },\n \"Activity\": {\n \"type\": \"object\",\n \"description\": - \"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.\",\n - \ \"id\": \"Activity\",\n \"properties\": {\n \"contentDetails\": - {\n \"$ref\": \"ActivityContentDetails\",\n \"description\": - \"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.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the activity, including - the activity's type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"default\": \"youtube#activity\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"properties\": {\n \"reason\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"description\": \"The - reason that the resource is recommended to the user.\"\n },\n \"seedResourceId\": - {\n \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\",\n \"$ref\": - \"ResourceId\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"id\": - \"ActivityContentDetailsRecommendation\",\n \"type\": \"object\",\n \"description\": - \"Information that identifies the recommended resource.\"\n },\n \"SubscriptionContentDetails\": - {\n \"id\": \"SubscriptionContentDetails\",\n \"description\": \"Details - about the content to witch a subscription refers.\",\n \"properties\": - {\n \"newItemCount\": {\n \"description\": \"The number of - new items in the subscription since its content was last read.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"totalItemCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The approximate - number of items that the subscription points to.\",\n \"type\": \"integer\"\n - \ },\n \"activityType\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"type\": \"object\"\n - \ },\n \"ContentRating\": {\n \"properties\": {\n \"eirinRating\": - {\n \"description\": \"The video's Eirin (\u6620\u502B) rating. Eirin - is the Japanese rating system.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG-12\",\n \"R15+\",\n \"R18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"mtrcbRating\": {\n \"enum\": - [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n - \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n - \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Movie - and Television Review and Classification Board (Philippines).\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ]\n },\n \"fpbRatingReasons\": {\n \"description\": - \"Reasons that explain why the video received its FPB (South Africa) rating.\",\n - \ \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"type\": - \"array\"\n },\n \"nfrcRating\": {\n \"enum\": [\n - \ \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Bulgarian - National Film Center.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"B\",\n \"C\",\n \"D\",\n - \ \"X\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"fcbmRating\": {\n \"description\": \"The video's - rating from Malaysia's Film Censorship Board.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n - \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n - \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n - \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ]\n },\n \"ecbmctRating\": - {\n \"enum\": [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n - \ \"ecbmct7a\",\n \"ecbmct7plus\",\n \"ecbmct13a\",\n - \ \"ecbmct13plus\",\n \"ecbmct15a\",\n \"ecbmct15plus\",\n - \ \"ecbmct18plus\",\n \"ecbmctUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Rating system in Turkey - Evaluation and Classification Board of the Ministry - of Culture and Tourism\"\n },\n \"csaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ],\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ],\n \"description\": \"The video's rating from France's - Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\",\n - \ \"type\": \"string\"\n },\n \"cicfRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n - \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Commission de Contr\xF4le - des Films (Belgium).\"\n },\n \"bbfcRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ],\n - \ \"description\": \"The video's British Board of Film Classification - (BBFC) rating.\",\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ]\n },\n - \ \"catvfrRating\": {\n \"description\": \"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.\",\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ]\n },\n \"ytRating\": {\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"type\": - \"string\",\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"kfcbRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Kenya - Film Classification Board.\",\n \"enum\": [\n \"kfcbUnspecified\",\n - \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n - \ \"kfcbR\",\n \"kfcbUnrated\"\n ]\n },\n - \ \"smaisRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"L\",\n \"7\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\",\n - \ \"type\": \"string\"\n },\n \"djctqRating\": {\n \"enum\": - [\n \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n - \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n - \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n - \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n - \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n - \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n - \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n - \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n - \ ],\n \"description\": \"The video's Departamento de Justi\xE7a, - Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"smsaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"enum\": [\n - \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\"\n - \ },\n \"rtcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"description\": \"The video's General Directorate - of Radio, Television and Cinematography (Mexico) rating.\",\n \"enum\": - [\n \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ]\n },\n \"kmrbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Korea Media Rating Board - (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. The KMRB rates - videos in South Korea.\",\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ]\n },\n \"oflcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"description\": \"The video's - Office of Film and Literature Classification (OFLC - New Zealand) rating.\",\n - \ \"type\": \"string\"\n },\n \"anatelRating\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n - \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n - \ ],\n \"description\": \"The video's Anatel (Asociaci\xF3n - Nacional de Televisi\xF3n) rating for Chilean television.\",\n \"enum\": - [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ]\n },\n \"medietilsynetRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Medietilsynet, - the Norwegian Media Authority.\"\n },\n \"egfilmRating\": {\n - \ \"description\": \"The video's rating in Egypt.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ],\n - \ \"enum\": [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n - \ \"egfilm18\",\n \"egfilmBn\",\n \"egfilmUnrated\"\n - \ ]\n },\n \"mccypRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Danish - Film Institute's (Det Danske Filminstitut) Media Council for Children and - Young People.\",\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ]\n },\n - \ \"nkclvRating\": {\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\",\n - \ \"type\": \"string\"\n },\n \"eefilmRating\": {\n - \ \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n - \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n - \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n - \ \"eefilmK16\",\n \"eefilmUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Estonia.\",\n - \ \"type\": \"string\"\n },\n \"cscfRating\": {\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\",\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"ilfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in Israel.\",\n \"type\": \"string\",\n \"enum\": - [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n - \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ]\n },\n \"czfilmRating\": - {\n \"description\": \"The video's rating in the Czech Republic.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"bfvcRating\": {\n \"description\": - \"The video's rating from Thailand's Board of Film and Video Censors.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ]\n },\n - \ \"fcoRating\": {\n \"enum\": [\n \"fcoUnspecified\",\n - \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n - \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n - \ ],\n \"description\": \"The video's rating from Hong Kong's - Office for Film, Newspaper and Article Administration.\",\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"menaMpaaRating\": {\n - \ \"enum\": [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n - \ \"menaMpaaPg\",\n \"menaMpaaPg13\",\n \"menaMpaaR\",\n - \ \"menaMpaaUnrated\"\n ],\n \"description\": - \"The rating system for MENA countries, a clone of MPAA. It is needed to prevent - titles go live w/o additional QC check, since some of them can be inappropriate - for the countries at all. See b/33408548 for more details.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ],\n \"type\": \"string\"\n },\n - \ \"pefilmRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating in Peru.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ]\n },\n - \ \"incaaRating\": {\n \"description\": \"The video's INCAA - (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"ATP (Apta - para todo publico)\",\n \"13 (Solo apta para mayores de 13 a\xF1os)\",\n - \ \"16 (Solo apta para mayores de 16 a\xF1os)\",\n \"18 - (Solo apta para mayores de 18 a\xF1os)\",\n \"X (Solo apta para - mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ]\n },\n \"tvpgRating\": {\n \"description\": - \"The video's TV Parental Guidelines (TVPG) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"tvpgUnspecified\",\n \"tvpgY\",\n \"tvpgY7\",\n - \ \"tvpgY7Fv\",\n \"tvpgG\",\n \"tvpgPg\",\n - \ \"pg14\",\n \"tvpgMa\",\n \"tvpgUnrated\"\n - \ ]\n },\n \"acbRating\": {\n \"description\": - \"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.\",\n \"enum\": [\n \"acbUnspecified\",\n - \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n - \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n - \ \"acbR18plus\",\n \"acbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"chvrsRating\": - {\n \"enum\": [\n \"chvrsUnspecified\",\n \"chvrsG\",\n - \ \"chvrsPg\",\n \"chvrs14a\",\n \"chvrs18a\",\n - \ \"chvrsR\",\n \"chvrsE\",\n \"chvrsUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ]\n },\n \"rcnofRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Hungarian - Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\",\n - \ \"type\": \"string\"\n },\n \"cnaRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from Romania's - CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ]\n },\n \"catvRating\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ]\n },\n - \ \"cccRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\"\n - \ },\n \"russiaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"description\": \"The video's National Film Registry - of the Russian Federation (MKRF - Russia) rating.\"\n },\n \"mccaaRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Malta's Film Age-Classification Board.\",\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ]\n },\n - \ \"fskRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"fskUnspecified\",\n \"fsk0\",\n \"fsk6\",\n - \ \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n \"fskUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"FSK - 0\",\n \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\"\n },\n \"chfilmRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n - \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n - \ \"chfilm18\",\n \"chfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Switzerland.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"fpbRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\",\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ]\n },\n - \ \"icaaRating\": {\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ]\n },\n \"djctqRatingReasons\": - {\n \"items\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ]\n },\n \"type\": - \"array\",\n \"description\": \"Reasons that explain why the video - received its DJCQT (Brazil) rating.\"\n },\n \"fmocRating\": - {\n \"description\": \"This property has been deprecated. Use the - contentDetails.contentRating.cncRating instead.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ]\n },\n \"lsfRating\": - {\n \"description\": \"The video's rating from Indonesia's Lembaga - Sensor Film.\",\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"lsfUnspecified\",\n - \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n - \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n - \ \"lsfUnrated\"\n ]\n },\n \"mdaRating\": - {\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ],\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\",\n \"type\": \"string\"\n - \ },\n \"nbcplRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n - \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n - \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ],\n - \ \"description\": \"The video's rating in Poland.\"\n },\n - \ \"agcomRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n - \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ]\n },\n \"nfvcbRating\": {\n \"enum\": [\n - \ \"nfvcbUnspecified\",\n \"nfvcbG\",\n \"nfvcbPg\",\n - \ \"nfvcb12\",\n \"nfvcb12a\",\n \"nfvcb15\",\n - \ \"nfvcb18\",\n \"nfvcbRe\",\n \"nfvcbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Nigeria's National Film and Video Censors Board.\"\n },\n \"nmcRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"PG-15\",\n - \ \"15+\",\n \"18+\",\n \"18TC\",\n \"\"\n - \ ],\n \"description\": \"The National Media Council ratings - system for United Arab Emirates.\",\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ]\n },\n - \ \"mpaaRating\": {\n \"description\": \"The video's Motion - Picture Association of America (MPAA) rating.\",\n \"enum\": [\n - \ \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n - \ \"! X\",\n \"\"\n ]\n },\n \"rteRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GA\",\n \"CH\",\n \"PS\",\n \"MA\",\n - \ \"\"\n ],\n \"enum\": [\n \"rteUnspecified\",\n - \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n - \ \"rteUnrated\"\n ],\n \"description\": \"The - video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\"\n },\n - \ \"bmukkRating\": {\n \"description\": \"The video's rating - from the Austrian Board of Media Classification (Bundesministerium f\xFCr - Unterricht, Kunst und Kultur).\",\n \"type\": \"string\",\n \"enum\": - [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n \"bmukk6\",\n - \ \"bmukk8\",\n \"bmukk10\",\n \"bmukk12\",\n - \ \"bmukk14\",\n \"bmukk16\",\n \"bmukkUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ]\n - \ },\n \"skfilmRating\": {\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in Slovakia.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ]\n },\n \"grfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Greece.\",\n \"type\": \"string\",\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ]\n },\n - \ \"moctwRating\": {\n \"enum\": [\n \"moctwUnspecified\",\n - \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n - \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n - \ \"moctwR15\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\"\n - \ },\n \"kijkwijzerRating\": {\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\"\n },\n \"mibacRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\",\n \"type\": \"string\",\n \"enum\": - [\n \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n - \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n - \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n - \ ]\n },\n \"mekuRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Finland's - Kansallinen Audiovisuaalinen Instituutti (National Audiovisual Institute).\"\n - \ },\n \"resorteviolenciaRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"description\": \"The video's rating in Venezuela.\"\n - \ },\n \"cbfcRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ],\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ]\n },\n - \ \"cceRating\": {\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"description\": \"The video's rating from Portugal's - Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\"\n },\n \"cncRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ],\n - \ \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Rating system in France - Commission de classification cinematographique\"\n - \ },\n \"ifcoRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n - \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n - \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n - \ \"ifco18\",\n \"ifcoUnrated\"\n ]\n },\n - \ \"nbcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12+\",\n \"15+\",\n - \ \"18+\",\n \"18+R\",\n \"PU\",\n \"\"\n - \ ],\n \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Maldives National - Bureau of Classification.\"\n },\n \"mocRating\": {\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ]\n },\n \"mpaatRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GB\",\n \"RB\"\n ],\n - \ \"description\": \"The rating system for trailer, DVD, and Ad in - the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n - \ },\n \"mcstRating\": {\n \"description\": \"The video's - rating system for Vietnam - MCST\",\n \"type\": \"string\",\n \"enum\": - [\n \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ]\n - \ }\n },\n \"id\": \"ContentRating\",\n \"type\": \"object\",\n - \ \"description\": \"Ratings schemes. The country-specific ratings are - mostly for movies and shows. LINT.IfChange\"\n },\n \"MembershipsDuration\": - {\n \"id\": \"MembershipsDuration\",\n \"type\": \"object\",\n \"properties\": - {\n \"memberSince\": {\n \"description\": \"The date and time - when the user became a continuous member across all levels.\",\n \"type\": - \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"description\": \"The cumulative time the user has - been a member across all levels in complete months (the time is rounded down - to the nearest integer).\",\n \"format\": \"int32\"\n }\n - \ }\n },\n \"MembershipsDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"MembershipsDetails\",\n \"properties\": {\n \"accessibleLevels\": - {\n \"type\": \"array\",\n \"description\": \"Ids of all - levels that the user has access to. This includes the currently active level - and all other levels that are included because of a higher purchase.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"highestAccessibleLevel\": {\n \"description\": \"Id of - the highest level that the user has access to at the moment.\",\n \"type\": - \"string\"\n },\n \"membershipsDurationAtLevels\": {\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"description\": - \"Data about memberships duration on particular pricing levels.\",\n \"type\": - \"array\"\n },\n \"membershipsDuration\": {\n \"description\": - \"Data about memberships duration without taking into consideration pricing - levels.\",\n \"$ref\": \"MembershipsDuration\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"description\": \"Display name for the highest level that the - user has access to at the moment.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"VideoProcessingDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\",\n \"properties\": {\n \"tagSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether keyword (tag) suggestions are available for the video. Tags - can be added to a video's metadata to make it easier for other users to find - the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"processingIssuesAvailability\": - {\n \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingFailureReason\": {\n \"type\": - \"string\",\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"editorSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether video editing suggestions, which might improve video quality - or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\"\n },\n \"processingStatus\": {\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\"\n },\n - \ \"fileDetailsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether file details are - available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\"\n },\n - \ \"thumbnailsAvailability\": {\n \"type\": \"string\",\n \"description\": - \"This value indicates whether thumbnail images have been generated for the - video.\"\n },\n \"processingProgress\": {\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ }\n },\n \"id\": \"VideoProcessingDetails\"\n },\n \"ChannelTopicDetails\": - {\n \"id\": \"ChannelTopicDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"topicIds\": {\n \"description\": \"A list of Freebase - topic IDs associated with the channel. You can retrieve information about - each topic using the Freebase Topic API.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"topicCategories\": - {\n \"description\": \"A list of Wikipedia URLs that describe the - channel's content.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"description\": - \"Freebase topic information related to the channel.\"\n },\n \"IngestionInfo\": - {\n \"description\": \"Describes information necessary for ingesting - an RTMP, HTTP, or SRT stream.\",\n \"properties\": {\n \"rtmpsBackupIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - backupIngestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"rtmpsIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"streamName\": - {\n \"description\": \"The stream name that YouTube assigns to the - video stream.\",\n \"type\": \"string\"\n },\n \"backupIngestionAddress\": - {\n \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\",\n - \ \"type\": \"string\"\n },\n \"ingestionAddress\": - {\n \"description\": \"The primary ingestion URL that you should - use to stream video to YouTube. You must stream video to this URL. Depending - on which application or tool you use to encode your video stream, you may - need to enter the stream URL and stream name separately or you may need to - concatenate them in the following format: *STREAM_URL/STREAM_NAME* \",\n \"type\": - \"string\"\n }\n },\n \"id\": \"IngestionInfo\",\n \"type\": - \"object\"\n },\n \"VideoAbuseReportReason\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoAbuseReportReason\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID of this abuse report reason.\"\n },\n \"snippet\": - {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the abuse report reason.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReason\",\n - \ \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\"\n },\n \"LiveBroadcastContentDetails\": - {\n \"properties\": {\n \"recordFromStart\": {\n \"description\": - \"Automatically start recording after the event goes live. The default value - for this property is true. *Important:* You must also set the enableDvr property's - value to true if you want the playback to be available immediately after the - broadcast ends. If you set this property's value to true but do not also set - the enableDvr property to true, there may be a delay of around one day before - the archived video will be available for playback.\",\n \"type\": - \"boolean\"\n },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n },\n \"enableAutoStart\": {\n \"description\": - \"This setting indicates whether auto start is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\",\n \"type\": \"boolean\"\n },\n \"enableClosedCaptions\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether HTTP POST closed captioning is enabled for this broadcast. - The ingestion URL of the closed captions is returned through the liveStreams - API. This is mutually exclusive with using the closed_captions_type property, - and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n - \ },\n \"mesh\": {\n \"type\": \"string\",\n \"description\": - \"The mesh for projecting the video if projection is mesh. The mesh value - must be a UTF-8 string containing the base-64 encoding of 3D mesh data that - follows the Spherical Video V2 RFC specification for an mshp box, excluding - the box size and type but including the following four reserved zero bytes - for the version and flags.\",\n \"format\": \"byte\"\n },\n - \ \"enableContentEncryption\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\"\n },\n \"projection\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\"\n - \ },\n \"boundStreamLastUpdateTimeMs\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the live stream referenced by boundStreamId was last - updated.\"\n },\n \"startWithSlate\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - the broadcast should automatically begin with an in-stream slate when you - update the broadcast's status to live. After updating the status, you then - need to send a liveCuepoints.insert request that sets the cuepoint's eventState - to end to remove the in-stream slate and make your broadcast stream visible - to viewers.\"\n },\n \"enableAutoStop\": {\n \"description\": - \"This setting indicates whether auto stop is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\",\n \"type\": \"boolean\"\n },\n \"enableLowLatency\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast has low latency enabled.\"\n },\n \"latencyPreference\": - {\n \"description\": \"If both this and enable_low_latency are set, - they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW - should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency - omitted.\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"type\": \"string\"\n },\n - \ \"enableDvr\": {\n \"description\": \"This setting determines - whether viewers can access DVR controls while watching the video. DVR controls - enable the viewer to control the video playback experience by pausing, rewinding, - or fast forwarding content. The default value for this property is true. *Important:* - You must set the value to true and also set the enableArchive property's value - to true if you want to make playback available immediately after the broadcast - ends.\",\n \"type\": \"boolean\"\n },\n \"boundStreamId\": - {\n \"type\": \"string\",\n \"description\": \"This value - uniquely identifies the live stream bound to the broadcast.\"\n },\n - \ \"monitorStream\": {\n \"description\": \"The monitorStream - object contains information about the monitor stream, which the broadcaster - can use to review the event content before the broadcast stream is shown publicly.\",\n - \ \"$ref\": \"MonitorStreamInfo\"\n },\n \"closedCaptionsType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ]\n },\n \"stereoLayout\": {\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveBroadcastContentDetails\",\n \"type\": \"object\",\n \"description\": - \"Detailed settings of a broadcast.\"\n },\n \"Member\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#member\\\".\",\n \"default\": - \"youtube#member\"\n },\n \"snippet\": {\n \"$ref\": - \"MemberSnippet\",\n \"description\": \"The snippet object contains - basic details about the member.\"\n }\n },\n \"id\": \"Member\",\n - \ \"description\": \"A *member* resource represents a member for a YouTube - channel. A member provides recurring monetary support to a creator and receives - special benefits.\",\n \"type\": \"object\"\n },\n \"LiveChatBan\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatBan\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\"\n },\n - \ \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n - \ }\n },\n \"id\": \"LiveChatBan\",\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\"\n - \ },\n \"ChannelBannerResource\": {\n \"properties\": {\n \"url\": - {\n \"type\": \"string\",\n \"description\": \"The URL of - this banner image.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\"\n },\n \"etag\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A channel banner returned as the response to a channel_banner.insert - call.\",\n \"id\": \"ChannelBannerResource\"\n },\n \"ChannelSnippet\": - {\n \"description\": \"Basic details about a channel, including title, - description and thumbnails.\",\n \"properties\": {\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the channel was created.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the channel.\"\n },\n - \ \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel's default title and description.\"\n },\n \"customUrl\": - {\n \"type\": \"string\",\n \"description\": \"The custom - url of the channel.\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"title\": {\n \"description\": \"The channel's - title.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelSnippet\"\n },\n \"SuperChatEvent\": - {\n \"description\": \"A `__superChatEvent__` resource represents a Super - Chat purchase on a YouTube channel.\",\n \"type\": \"object\",\n \"id\": - \"SuperChatEvent\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\",\n - \ \"$ref\": \"SuperChatEventSnippet\"\n },\n \"kind\": - {\n \"default\": \"youtube#superChatEvent\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the Super Chat event.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"AccessPolicy\": {\n \"description\": \"Rights management - policy for YouTube resources.\",\n \"id\": \"AccessPolicy\",\n \"type\": - \"object\",\n \"properties\": {\n \"exception\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"type\": \"array\"\n },\n \"allowed\": - {\n \"description\": \"The value of allowed indicates whether the - access to the policy is allowed or denied by default.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"InvideoPosition\": {\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"type\": \"object\",\n \"id\": \"InvideoPosition\",\n \"properties\": - {\n \"cornerPosition\": {\n \"description\": \"Describes in - which corner of the video the visual widget will appear.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"topLeft\",\n - \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n - \ ]\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\"\n ],\n \"enum\": [\n \"corner\"\n - \ ],\n \"description\": \"Defines the position type.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LiveStream\": - {\n \"properties\": {\n \"cdn\": {\n \"$ref\": \"CdnSettings\",\n - \ \"description\": \"The cdn object defines the live stream's content - delivery network (CDN) settings. These settings provide details about the - manner in which you stream your content to YouTube.\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveStream\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveStream\\\".\"\n },\n \"contentDetails\": - {\n \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\",\n \"$ref\": - \"LiveStreamContentDetails\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveStreamSnippet\",\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\"\n - \ },\n \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n - \ \"description\": \"The status object contains information about - live stream's status.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the stream.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A live stream describes a live ingestion point.\",\n - \ \"id\": \"LiveStream\"\n },\n \"CommentListResponse\": {\n \"type\": - \"object\",\n \"id\": \"CommentListResponse\",\n \"properties\": - {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of comments that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n }\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"default\": \"youtube#commentListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n }\n }\n },\n \"PlaylistListResponse\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistListResponse\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"default\": \"youtube#playlistListResponse\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"description\": - \"A list of playlists that match the request criteria\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Playlist\"\n }\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n }\n },\n \"VideoTopicDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"topicCategories\": {\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"topicIds\": {\n \"type\": - \"array\",\n \"description\": \"A list of Freebase topic IDs that - are centrally associated with the video. These are topics that are centrally - featured in the video, and it can be said that the video is mainly about each - of these. You can retrieve information about each topic using the \\u003c - a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase Topic - API.\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"relevantTopicIds\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Similar to topic_id, - except that these topics are merely relevant to the video. These are topics - that may be mentioned in, or appear in the video. You can retrieve information - about each topic using Freebase Topic API.\",\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"VideoTopicDetails\",\n \"description\": - \"Freebase topic information related to the video.\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"type\": \"object\",\n \"description\": \"Details about a channel - bulletin post.\"\n },\n \"CommentThreadListResponse\": {\n \"type\": - \"object\",\n \"id\": \"CommentThreadListResponse\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of comment threads that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"CommentThread\"\n }\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"default\": \"youtube#commentThreadListResponse\"\n }\n - \ }\n },\n \"ChannelSettings\": {\n \"type\": \"object\",\n - \ \"description\": \"Branding properties for the channel view.\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the channel title.\"\n },\n \"moderateComments\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - user-submitted comments left on the channel page need to be approved by the - channel owner to be publicly visible.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"country\": {\n \"type\": - \"string\",\n \"description\": \"The country of the channel.\"\n - \ },\n \"defaultTab\": {\n \"description\": \"Which - content tab users should see when viewing the channel.\",\n \"type\": - \"string\"\n },\n \"keywords\": {\n \"type\": \"string\",\n - \ \"description\": \"Lists keywords associated with the channel, comma-separated.\"\n - \ },\n \"showBrowseView\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the tab to browse the videos should be - displayed.\"\n },\n \"profileColor\": {\n \"description\": - \"A prominent color that can be rendered on this channel page.\",\n \"type\": - \"string\"\n },\n \"trackingAnalyticsAccountId\": {\n \"description\": - \"The ID for a Google Analytics account to track and measure traffic to the - channels.\",\n \"type\": \"string\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n },\n \"unsubscribedTrailer\": - {\n \"description\": \"The trailer of the channel, for users that - are not subscribers.\",\n \"type\": \"string\"\n },\n \"featuredChannelsUrls\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The list of featured - channels.\"\n },\n \"showRelatedChannels\": {\n \"description\": - \"Whether related channels should be proposed.\",\n \"type\": \"boolean\"\n - \ },\n \"description\": {\n \"description\": \"Specifies - the channel description.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ChannelSettings\"\n },\n \"InvideoTiming\": {\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\",\n \"type\": - \"object\",\n \"properties\": {\n \"offsetMs\": {\n \"format\": - \"uint64\",\n \"description\": \"Defines the time at which the promotion - will appear. Depending on the value of type the value of the offsetMs field - will represent a time offset from the start or from the end of the video, - expressed in milliseconds.\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"description\": - \"Describes a timing type. If the value is offsetFromStart, then the offsetMs - field represents an offset from the start of the video. If the value is offsetFromEnd, - then the offsetMs field represents an offset from the end of the video.\",\n - \ \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"durationMs\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"Defines - the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\"\n }\n },\n \"id\": - \"InvideoTiming\"\n },\n \"VideoContentDetails\": {\n \"properties\": - {\n \"dimension\": {\n \"type\": \"string\",\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\"\n },\n \"licensedContent\": {\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\",\n \"type\": \"boolean\"\n },\n \"regionRestriction\": - {\n \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"hasCustomThumbnail\": - {\n \"description\": \"Indicates whether the video uploader has provided - a custom thumbnail image for the video. This property is only visible to the - video uploader.\",\n \"type\": \"boolean\"\n },\n \"duration\": - {\n \"type\": \"string\",\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"contentRating\": {\n \"$ref\": \"ContentRating\",\n \"description\": - \"Specifies the ratings that the video received under various rating schemes.\"\n - \ },\n \"definition\": {\n \"enumDescriptions\": [\n - \ \"sd\",\n \"hd\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"description\": \"The value of definition indicates - whether the video is available in high definition or only in standard definition.\"\n - \ },\n \"caption\": {\n \"type\": \"string\",\n \"enum\": - [\n \"true\",\n \"false\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The value of captions indicates whether the video has captions or not.\"\n - \ },\n \"projection\": {\n \"description\": \"Specifies - the projection format of the video.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ]\n },\n \"countryRestriction\": {\n \"$ref\": - \"AccessPolicy\",\n \"description\": \"The countryRestriction object - contains information about the countries where a video is (or is not) viewable.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoContentDetails\",\n - \ \"description\": \"Details about the content of a YouTube Video.\"\n - \ },\n \"Playlist\": {\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistContentDetails\",\n \"description\": \"The contentDetails - object contains information like video count.\"\n },\n \"status\": - {\n \"description\": \"The status object contains status information - for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#playlist\"\n },\n \"localizations\": - {\n \"description\": \"Localizations for different languages\",\n - \ \"type\": \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"PlaylistLocalization\"\n }\n },\n \"snippet\": {\n - \ \"$ref\": \"PlaylistSnippet\",\n \"description\": \"The - snippet object contains basic details about the playlist, such as its title - and description.\"\n },\n \"player\": {\n \"$ref\": - \"PlaylistPlayer\",\n \"description\": \"The player object contains - information that you would use to play the playlist in an embedded player.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\"\n }\n - \ },\n \"id\": \"Playlist\",\n \"description\": \"A *playlist* - resource represents a YouTube playlist. A playlist is a collection of videos - that can be viewed sequentially and shared with other users. A playlist can - contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"type\": \"object\"\n },\n - \ \"LiveBroadcastStatus\": {\n \"id\": \"LiveBroadcastStatus\",\n \"description\": - \"Live broadcast state.\",\n \"properties\": {\n \"liveBroadcastPriority\": - {\n \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Low priority - broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ],\n \"type\": \"string\"\n },\n \"lifeCycleStatus\": - {\n \"description\": \"The broadcast's status. The status can be - updated using the API's liveBroadcasts.transition method.\",\n \"type\": - \"string\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete - settings\",\n \"Visible only to partner, may need special UI treatment\",\n - \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n - \ \"The broadcast is finished.\",\n \"This broadcast - was removed by admin action\",\n \"Transition into TESTING has - been requested\",\n \"Transition into LIVE has been requested\"\n - \ ]\n },\n \"recordingStatus\": {\n \"description\": - \"The broadcast's recording status.\",\n \"enumDescriptions\": [\n - \ \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ]\n },\n \"selfDeclaredMadeForKids\": {\n \"description\": - \"This field will be set to True if the creator declares the broadcast to - be kids only: go/live-cw-work.\",\n \"type\": \"boolean\"\n },\n - \ \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"madeForKids\": {\n \"description\": - \"Whether the broadcast is made for kids or not, decided by YouTube instead - of the creator. This field is read only.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"SubscriptionSnippet\": - {\n \"properties\": {\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the subscription belongs to.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the video. 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.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the subscription was created.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The subscription's - title.\"\n },\n \"resourceId\": {\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\",\n \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The subscription's details.\"\n }\n },\n - \ \"description\": \"Basic details about a subscription, including title, - description and thumbnails of the subscribed item.\",\n \"type\": \"object\",\n - \ \"id\": \"SubscriptionSnippet\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"properties\": {\n \"associatedMembershipGiftingMessageId\": - {\n \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n - \ },\n \"gifterChannelId\": {\n \"description\": \"The - ID of the user that made the membership gifting purchase. This matches the - `snippet.authorChannelId` of the associated membership gifting message.\",\n - \ \"type\": \"string\"\n },\n \"memberLevelName\": {\n - \ \"description\": \"The name of the Level at which the viewer is - a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n - \ \"LiveChatMessageAuthorDetails\": {\n \"properties\": {\n \"channelUrl\": - {\n \"description\": \"The channel's URL.\",\n \"type\": - \"string\"\n },\n \"isChatModerator\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a moderator - of the live chat.\"\n },\n \"profileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channels's avatar URL.\"\n },\n - \ \"isVerified\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author's identity has been verified by YouTube.\"\n },\n - \ \"isChatOwner\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is the owner of the live chat.\"\n },\n \"displayName\": - {\n \"description\": \"The channel's display name.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"isChatSponsor\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is a sponsor of the live chat.\"\n }\n },\n - \ \"id\": \"LiveChatMessageAuthorDetails\",\n \"type\": \"object\"\n - \ }\n },\n \"ownerName\": \"Google\",\n \"basePath\": \"\",\n \"version\": - \"v3\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n }\n }\n - \ }\n },\n \"batchPath\": \"batch\",\n \"protocol\": \"rest\",\n \"rootUrl\": - \"https://youtube.googleapis.com/\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"servicePath\": \"\",\n \"revision\": \"20230220\",\n \"resources\": - {\n \"subscriptions\": {\n \"methods\": {\n \"delete\": {\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"path\": - \"youtube/v3/subscriptions\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.delete\"\n - \ },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"Subscription\"\n },\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.subscriptions.insert\",\n \"description\": \"Inserts a - new resource into this collection.\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"list\": {\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.subscriptions.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the subscribers of the - given channel owner.\",\n \"location\": \"query\"\n },\n - \ \"forChannelId\": {\n \"description\": \"Return the - subscriptions to the subset of these channels that the authenticated user - is subscribed to.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"order\": {\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The - order of the returned subscriptions\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"default\": \"relevance\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Return - the subscriptions with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"default\": \"5\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Return the subscriptions of - the given channel owner.\",\n \"location\": \"query\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"myRecentSubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ }\n }\n }\n },\n \"channels\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"mySubscribers\": - {\n \"description\": \"Return the channels subscribed to the - authenticated user\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"managedByMe\": {\n \"location\": - \"query\",\n \"description\": \"Return the channels managed by - the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"forUsername\": {\n \"description\": \"Return the - channel associated with a YouTube username.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Return - the channels with the specified IDs.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"description\": - \"Return the ids of channels owned by the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n },\n - \ \"maxResults\": {\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"format\": \"uint32\"\n },\n \"categoryId\": - {\n \"description\": \"Return the channels within the specified - guide category ID.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.channels.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"flatPath\": \"youtube/v3/channels\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"path\": \"youtube/v3/channels\",\n \"response\": - {\n \"$ref\": \"ChannelListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"update\": {\n - \ \"path\": \"youtube/v3/channels\",\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"response\": {\n \"$ref\": \"Channel\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.channels.update\",\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"Channel\"\n },\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"httpMethod\": \"PUT\"\n }\n }\n },\n \"thirdPartyLinks\": - {\n \"methods\": {\n \"delete\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ],\n \"description\": \"Deletes a - resource.\",\n \"id\": \"youtube.thirdPartyLinks.delete\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Do not use. Required for compatibility.\",\n - \ \"type\": \"string\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"enum\": [\n - \ \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"description\": \"Type of the link to be - deleted.\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"linkingToken\": - {\n \"description\": \"Delete the partner links with the given - linking token.\",\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"type\": - {\n \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Get a third party link of the given type.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ]\n },\n - \ \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\"\n },\n - \ \"linkingToken\": {\n \"location\": \"query\",\n - \ \"description\": \"Get a third party link with the given linking - token.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API response will include. Supported values are linkingToken, - status, and snippet.\",\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"id\": \"youtube.thirdPartyLinks.list\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n },\n \"update\": - {\n \"id\": \"youtube.thirdPartyLinks.update\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing resource.\"\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"required\": true\n - \ },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel ID to which changes - should be applied, for delegation.\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n }\n - \ }\n }\n },\n \"liveChatBans\": {\n \"methods\": {\n - \ \"insert\": {\n \"request\": {\n \"$ref\": \"LiveChatBan\"\n - \ },\n \"path\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - chat ban.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"id\": \"youtube.liveChatBans.delete\",\n - \ \"httpMethod\": \"DELETE\"\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the videoCategory resource parts that the - API response will include. Supported values are id and snippet.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"en-US\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/videoAbuseReportReasons\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"VideoAbuseReportReasonListResponse\"\n }\n }\n }\n - \ },\n \"comments\": {\n \"methods\": {\n \"list\": {\n \"flatPath\": - \"youtube/v3/comments\",\n \"path\": \"youtube/v3/comments\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Returns the comments with the given IDs for One Platform.\",\n \"location\": - \"query\"\n },\n \"textFormat\": {\n \"description\": - \"The requested text format for the returned comments.\",\n \"type\": - \"string\",\n \"default\": \"html\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ]\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more comment resource properties that the API response will - include.\",\n \"required\": true\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"default\": - \"20\",\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"100\",\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"minimum\": - \"1\"\n },\n \"parentId\": {\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.comments.list\"\n },\n \"insert\": - {\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.insert\",\n \"request\": {\n - \ \"$ref\": \"Comment\"\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"httpMethod\": \"POST\"\n },\n \"update\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/comments\",\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.update\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true\n }\n }\n },\n - \ \"markAsSpam\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"Flags - the comments with the given IDs as spam in the caller's opinion.\"\n }\n - \ },\n \"description\": \"Expresses the caller's opinion - that one or more comments should be flagged as spam.\",\n \"path\": - \"youtube/v3/comments/markAsSpam\",\n \"id\": \"youtube.comments.markAsSpam\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\"\n },\n - \ \"setModerationStatus\": {\n \"parameterOrder\": [\n \"id\",\n - \ \"moderationStatus\"\n ],\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"id\": \"youtube.comments.setModerationStatus\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Sets the moderation status of one or more comments.\",\n - \ \"path\": \"youtube/v3/comments/setModerationStatus\",\n \"parameters\": - {\n \"moderationStatus\": {\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"location\": - \"query\",\n \"required\": true,\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"banAuthor\": - {\n \"type\": \"boolean\",\n \"description\": \"If - set to true the author of the comment gets added to the ban list. This means - all future comments of the author will autmomatically be rejected. Only valid - in combination with STATUS_REJECTED.\",\n \"location\": \"query\",\n - \ \"default\": \"false\"\n },\n \"id\": - {\n \"description\": \"Modifies the moderation status of the - comments with the given IDs\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n }\n }\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"id\": \"youtube.comments.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"description\": - \"Deletes a resource.\",\n \"path\": \"youtube/v3/comments\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"description\": - \"Deletes a chat message.\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatMessages.delete\",\n \"path\": - \"youtube/v3/liveChat/messages\"\n },\n \"insert\": {\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"id\": \"youtube.liveChatMessages.insert\",\n \"request\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"list\": {\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameters\": {\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"The id of the live chat for which comments - should be returned.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the liveChatComment resource parts that the - API response will include. Supported values are id and snippet.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the localization language in which - the system messages should be returned.\",\n \"location\": \"query\"\n - \ },\n \"profileImageSize\": {\n \"minimum\": - \"16\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"720\",\n \"location\": \"query\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"default\": \"500\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"format\": \"uint32\",\n \"maximum\": - \"2000\",\n \"minimum\": \"200\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n - \ \"set\": {\n \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"supportsMediaUpload\": true,\n \"path\": - \"youtube/v3/thumbnails/set\",\n \"id\": \"youtube.thumbnails.set\",\n - \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"description\": - \"As this is not an insert in a strict sense (it supports uploading/setting - of a thumbnail for multiple videos, which doesn't result in creation of a - single resource), I use a custom verb here.\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"Returns the Thumbnail with the given video - IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"2097152\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"playlistItems\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.playlistItems.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\"\n },\n \"delete\": {\n \"parameters\": {\n - \ \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"description\": \"Deletes a resource.\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.playlistItems.delete\"\n - \ },\n \"list\": {\n \"parameters\": {\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"Return the playlist items associated - with the given video ID.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n - \ \"playlistId\": {\n \"location\": \"query\",\n \"description\": - \"Return the playlist items within the given playlist.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"PlaylistItemListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.playlistItems.list\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\"\n },\n \"update\": - {\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"description\": - \"Updates an existing resource.\",\n \"id\": \"youtube.playlistItems.update\",\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"PUT\"\n }\n }\n },\n - \ \"channelBanners\": {\n \"methods\": {\n \"insert\": {\n \"supportsMediaUpload\": - true,\n \"id\": \"youtube.channelBanners.insert\",\n \"response\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n - \ \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"mediaUpload\": {\n \"accept\": [\n - \ \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\",\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"path\": - \"youtube/v3/channelBanners/insert\",\n \"parameterOrder\": [],\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"channelId\": {\n - \ \"location\": \"query\",\n \"description\": \"Unused, - channel_id is currently derived from the security context of the requestor.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n }\n }\n }\n },\n \"tests\": - {\n \"methods\": {\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"POST method.\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/tests\",\n \"request\": - {\n \"$ref\": \"TestItem\"\n },\n \"response\": - {\n \"$ref\": \"TestItem\"\n },\n \"flatPath\": - \"youtube/v3/tests\",\n \"id\": \"youtube.tests.insert\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"abuseReports\": {\n \"methods\": - {\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/abuseReports\",\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/abuseReports\",\n \"response\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"request\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"id\": \"youtube.i18nLanguages.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/i18nLanguages\",\n \"flatPath\": - \"youtube/v3/i18nLanguages\",\n \"response\": {\n \"$ref\": - \"I18nLanguageListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the i18nLanguage resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"en_US\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"channelSections\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"mine\": {\n \"description\": \"Return the ChannelSections - owned by the authenticated user.\",\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"hl\": {\n - \ \"description\": \"Return content in specified language\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"description\": \"Return the ChannelSections owned by the - specified channel ID.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Return the ChannelSections with - the given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"id\": - \"youtube.channelSections.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\"\n - \ },\n \"insert\": {\n \"path\": \"youtube/v3/channelSections\",\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"id\": - \"youtube.channelSections.insert\"\n },\n \"update\": {\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"path\": - \"youtube/v3/channelSections\",\n \"description\": \"Updates an existing - resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.channelSections.update\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"delete\": {\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/channelSections\"\n }\n - \ }\n },\n \"activities\": {\n \"methods\": {\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"publishedAfter\": {\n \"location\": - \"query\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"publishedBefore\": {\n \"format\": - \"google-datetime\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"home\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"minimum\": \"0\",\n \"default\": \"5\",\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"50\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"path\": \"youtube/v3/activities\",\n \"response\": {\n - \ \"$ref\": \"ActivityListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.activities.list\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"membershipsLevels\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/membershipsLevels\",\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"description\": \"Retrieves a list of all pricing - levels offered by a creator to the fans.\",\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"watermarks\": {\n \"methods\": {\n \"unset\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.watermarks.unset\",\n - \ \"path\": \"youtube/v3/watermarks/unset\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Allows removal of channel watermark.\",\n - \ \"flatPath\": \"youtube/v3/watermarks/unset\"\n },\n \"set\": - {\n \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\",\n \"protocols\": - {\n \"resumable\": {\n \"multipart\": true,\n - \ \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"path\": \"youtube/v3/watermarks/set\",\n \"id\": \"youtube.watermarks.set\",\n - \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"description\": \"Allows upload of watermark image - and setting it for a channel.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"supportsMediaUpload\": - true\n }\n }\n },\n \"i18nRegions\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"hl\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"en_US\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the i18nRegion - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"I18nRegionListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"flatPath\": \"youtube/v3/i18nRegions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.i18nRegions.list\",\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"captions\": {\n \"methods\": - {\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"id\": \"youtube.captions.update\",\n \"path\": \"youtube/v3/captions\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ },\n \"maxSize\": \"104857600\",\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"supportsMediaUpload\": - true,\n \"description\": \"Updates an existing resource.\"\n },\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/captions\",\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - caption resource parts that the API response will include. Set the parameter - value to snippet.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"sync\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\"\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.captions.insert\",\n - \ \"supportsMediaUpload\": true,\n \"flatPath\": \"youtube/v3/captions\"\n - \ },\n \"download\": {\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"supportsMediaDownload\": true,\n \"id\": \"youtube.captions.download\",\n - \ \"description\": \"Downloads a caption track.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"The ID of the caption track to download, - required for One Platform.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"path\"\n },\n \"tfmt\": - {\n \"description\": \"Convert the captions into this format. - Supported options are sbv, srt, and vtt.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n },\n \"tlang\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"tlang is the language code; machine translate - the captions into this language.\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"useMediaDownloadService\": true,\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"list\": {\n \"path\": - \"youtube/v3/captions\",\n \"description\": \"Retrieves a list of - resources, possibly filtered.\",\n \"parameters\": {\n \"videoId\": - {\n \"description\": \"Returns the captions for the specified - video.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Returns - the captions with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.list\"\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.captions.delete\",\n \"description\": \"Deletes a resource.\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"path\": \"youtube/v3/captions\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is be on behalf of\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"playlists\": {\n \"methods\": - {\n \"update\": {\n \"id\": \"youtube.playlists.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"repeated\": true\n }\n - \ },\n \"flatPath\": \"youtube/v3/playlists\",\n \"description\": - \"Updates an existing resource.\",\n \"httpMethod\": \"PUT\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"path\": \"youtube/v3/playlists\"\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/playlists\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"description\": \"Deletes a resource.\",\n \"path\": - \"youtube/v3/playlists\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlists.delete\"\n },\n \"list\": - {\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"minimum\": \"0\"\n },\n \"mine\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Return - the playlists owned by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the playlists owned by the specified channel ID.\"\n }\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.playlists.list\"\n },\n - \ \"insert\": {\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"id\": \"youtube.playlists.insert\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ }\n }\n }\n },\n \"videos\": {\n \"methods\": - {\n \"rate\": {\n \"description\": \"Adds a like or dislike - rating to a video or removes a rating from a video.\",\n \"id\": - \"youtube.videos.rate\",\n \"path\": \"youtube/v3/videos/rate\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"rating\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"flatPath\": - \"youtube/v3/videos/rate\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\"\n },\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/videos\",\n \"id\": \"youtube.videos.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos\",\n \"response\": - {\n \"$ref\": \"VideoListResponse\"\n },\n \"parameters\": - {\n \"maxResults\": {\n \"maximum\": \"50\",\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"minimum\": \"1\",\n \"description\": \"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.\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"videoCategoryId\": {\n \"default\": - \"0\",\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Use chart that is specific to the specified - video category\"\n },\n \"regionCode\": {\n \"type\": - \"string\",\n \"description\": \"Use a chart that is specific - to the specified region\",\n \"location\": \"query\"\n },\n - \ \"maxWidth\": {\n \"description\": \"Return the player - with maximum height specified in\",\n \"location\": \"query\",\n - \ \"maximum\": \"8192\",\n \"minimum\": \"72\",\n - \ \"format\": \"int32\",\n \"type\": \"integer\"\n - \ },\n \"maxHeight\": {\n \"maximum\": \"8192\",\n - \ \"minimum\": \"72\",\n \"format\": \"int32\",\n - \ \"location\": \"query\",\n \"type\": \"integer\"\n - \ },\n \"chart\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the videos that are in the specified - chart.\",\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ]\n },\n \"locale\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"Return videos with the given ids.\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"myRating\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ]\n },\n \"hl\": {\n \"location\": - \"query\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"httpMethod\": \"GET\"\n },\n \"update\": - {\n \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"id\": \"youtube.videos.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"path\": \"youtube/v3/videos\",\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"httpMethod\": - \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\"\n - \ },\n \"insert\": {\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"supportsMediaUpload\": true,\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"stabilize\": {\n \"type\": - \"boolean\",\n \"description\": \"Should stabilize be applied - to the upload.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"autoLevels\": - {\n \"type\": \"boolean\",\n \"description\": \"Should - auto-levels be applied to the upload.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"notifySubscribers\": {\n \"description\": - \"Notify the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"default\": \"true\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.videos.insert\",\n \"mediaUpload\": {\n - \ \"maxSize\": \"274877906944\",\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ }\n }\n },\n \"path\": \"youtube/v3/videos\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n }\n - \ },\n \"getRating\": {\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"id\": \"youtube.videos.getRating\",\n - \ \"description\": \"Retrieves the ratings that the authorized user - gave to a list of specified videos.\",\n \"flatPath\": \"youtube/v3/videos/getRating\",\n - \ \"path\": \"youtube/v3/videos/getRating\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"delete\": {\n \"id\": \"youtube.videos.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"path\": - \"youtube/v3/videos\",\n \"parameters\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\"\n },\n \"reportAbuse\": {\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"request\": {\n \"$ref\": - \"VideoAbuseReport\"\n },\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"description\": \"Report abuse for a video.\",\n \"parameterOrder\": - [],\n \"id\": \"youtube.videos.reportAbuse\",\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\"\n }\n }\n },\n \"videoCategories\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Returns the video categories - with the given IDs for Stubby or Apiary.\",\n \"repeated\": true\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"default\": \"en-US\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"VideoCategoryListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/videoCategories\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videoCategories\",\n \"id\": - \"youtube.videoCategories.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n }\n }\n },\n \"search\": - {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.search.list\",\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of search resources\",\n \"flatPath\": \"youtube/v3/search\",\n - \ \"path\": \"youtube/v3/search\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"locationRadius\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on distance from the location (specified above).\"\n },\n - \ \"videoDefinition\": {\n \"description\": \"Filter - on the definition of the videos.\",\n \"enumDescriptions\": [\n - \ \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Display the content as seen by viewers in this country.\"\n },\n - \ \"forMine\": {\n \"type\": \"boolean\",\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"location\": - \"query\"\n },\n \"videoLicense\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"any\",\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"enumDescriptions\": [\n \"Return - all videos, regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"description\": \"Filter on - the license of the videos.\"\n },\n \"publishedBefore\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on resources published before this date.\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\"\n },\n \"order\": - {\n \"enumDescriptions\": [\n \"\",\n \"Resources - are sorted in reverse chronological order based on the date they were created.\",\n - \ \"Resources are sorted from highest to lowest rating.\",\n - \ \"Resources are sorted from highest to lowest number of views.\",\n - \ \"Resources are sorted based on their relevance to the search - query. This is the default value for this parameter.\",\n \"Resources - are sorted alphabetically by title.\",\n \"Channels are sorted - in descending order of their number of uploaded videos.\"\n ],\n - \ \"description\": \"Sort order of the results.\",\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"type\": \"string\",\n \"default\": \"relevance\",\n - \ \"location\": \"query\"\n },\n \"forContentOwner\": - {\n \"description\": \"Search owned by a content owner.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"eventType\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Filter - on the livestream status of the videos.\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ]\n },\n \"videoDuration\": {\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"description\": \"Filter on the duration of the videos.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ]\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on resources belonging to this channelId.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"safeSearch\": - {\n \"default\": \"moderate\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Indicates whether the search results should include restricted content as - well as standard content.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ],\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n },\n \"relevanceLanguage\": {\n \"description\": - \"Return results relevant to this language.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"default\": \"5\",\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\"\n },\n \"channelType\": - {\n \"description\": \"Add a filter on the channel search.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"location\": \"query\",\n - \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ]\n },\n \"relatedToVideoId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Search related to a resource.\"\n },\n - \ \"videoDimension\": {\n \"description\": \"Filter - on 3d videos.\",\n \"enumDescriptions\": [\n \"Include - both 3D and non-3D videos in returned results. This is the default value.\",\n - \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict - search results to only include 3D videos.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"any\",\n \"2d\",\n \"3d\"\n - \ ]\n },\n \"videoCategoryId\": {\n \"description\": - \"Filter on videos in a specific category.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"publishedAfter\": - {\n \"format\": \"google-datetime\",\n \"location\": - \"query\",\n \"description\": \"Filter on resources published - after this date.\",\n \"type\": \"string\"\n },\n - \ \"videoType\": {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"description\": \"Filter on videos of a specific - type.\",\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"type\": \"string\"\n },\n \"videoEmbeddable\": - {\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"description\": \"Filter on embeddable videos.\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ]\n - \ },\n \"q\": {\n \"description\": \"Textual - search terms to match.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"location\": {\n \"description\": - \"Filter on location of the video\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"forDeveloper\": - {\n \"location\": \"query\",\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"videoSyndicated\": {\n \"description\": \"Filter - on syndicated videos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, syndicated or not.\",\n \"Only - retrieve syndicated videos.\"\n ],\n \"enum\": [\n - \ \"videoSyndicatedUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"videoCaption\": - {\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"description\": \"Filter on the presence - of captions on the videos.\",\n \"location\": \"query\"\n },\n - \ \"topicId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Restrict results to a particular - topic.\"\n },\n \"type\": {\n \"description\": - \"Restrict results to a particular set of resource types from One Platform.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n }\n },\n \"response\": - {\n \"$ref\": \"SearchListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"liveStreams\": {\n \"methods\": - {\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"id\": \"youtube.liveStreams.delete\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Deletes an existing stream for the authenticated - user.\",\n \"path\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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, content_details, and status.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"path\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n }\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"LiveStreamListResponse\"\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"description\": \"Retrieve the list of streams associated with - the given channel. --\",\n \"id\": \"youtube.liveStreams.list\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Return - LiveStreams with the given ids from Stubby or Apiary.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"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.\"\n },\n \"pageToken\": {\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"update\": {\n \"id\": - \"youtube.liveStreams.update\",\n \"description\": \"Updates an existing - stream for the authenticated user.\",\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n }\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the superChatEvent resource parts that the API - response will include. This parameter is currently not supported.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"format\": \"uint32\",\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"maximum\": \"50\",\n - \ \"type\": \"integer\"\n },\n \"hl\": {\n - \ \"description\": \"Return rendered funding amounts in specified - language.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n - \ },\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/superChatEvents\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.superChatEvents.list\",\n \"flatPath\": \"youtube/v3/superChatEvents\"\n - \ }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"id\": - \"youtube.commentThreads.insert\",\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/commentThreads\",\n \"id\": - \"youtube.commentThreads.list\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"parameters\": {\n \"textFormat\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The requested text format for the returned - comments.\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"default\": - \"html\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"location\": \"query\",\n \"default\": - \"20\",\n \"minimum\": \"1\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"100\",\n \"type\": - \"integer\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"Returns the comment threads - of the specified video.\",\n \"location\": \"query\"\n },\n - \ \"moderationStatus\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by - a moderator.\",\n \"\",\n \"The comment is unfit - for display.\"\n ],\n \"description\": \"Limits - the returned comment threads to those with the specified moderation status. - Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"default\": \"published\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\"\n },\n - \ \"allThreadsRelatedToChannelId\": {\n \"description\": - \"Returns the comment threads of all videos of the channel and the channel - comments as well.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads for all the channel - comments (ie does not include comments left on videos).\"\n },\n - \ \"searchTerms\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Limits the returned comment - threads to those matching the specified key words. Not compatible with the - 'id' filter.\"\n },\n \"id\": {\n \"description\": - \"Returns the comment threads with the given IDs for Stubby or Apiary.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"order\": - {\n \"enumDescriptions\": [\n \"\",\n \"Order - by time.\",\n \"Order by relevance.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"default\": \"time\",\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"parameters\": {\n \"pageToken\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"The id of the live chat for which moderators - should be returned.\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"id\": \"youtube.liveChatModerators.list\"\n },\n \"insert\": - {\n \"response\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"id\": \"youtube.liveChatModerators.insert\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Deletes a chat moderator.\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.liveChatModerators.delete\"\n - \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"id\": - \"youtube.youtube.v3.updateCommentThreads\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\"\n }\n },\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/commentThreads\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"parameterOrder\": [],\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"description\": \"Updates an existing resource.\"\n - \ }\n }\n }\n }\n },\n \"members\": {\n - \ \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"mode\": {\n \"default\": - \"all_current\",\n \"type\": \"string\",\n \"enum\": - [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"location\": - \"query\",\n \"description\": \"Parameter that specifies which - channel members to return.\"\n },\n \"hasAccessToLevel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter members in the results set to the - ones that have access to a level.\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"maximum\": \"1000\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"filterByMemberChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/members\",\n - \ \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Retrieves a list of members that match the request - criteria for a channel.\",\n \"flatPath\": \"youtube/v3/members\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"id\": \"youtube.members.list\"\n }\n }\n - \ },\n \"liveBroadcasts\": {\n \"methods\": {\n \"delete\": - {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.delete\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"description\": \"Delete a given - broadcast.\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"description\": \"Broadcast to delete.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"bind\": {\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveBroadcasts.bind\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"description\": - \"Broadcast to bind to the stream\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"streamId\": {\n \"type\": \"string\",\n \"description\": - \"Stream to bind, if not set unbind the current one.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n - \ \"description\": \"Bind a broadcast to a stream.\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n }\n },\n \"update\": {\n \"id\": - \"youtube.liveBroadcasts.update\",\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"description\": \"Updates an existing broadcast for - the authenticated user.\"\n },\n \"transition\": {\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"path\": - \"youtube/v3/liveBroadcasts/transition\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"broadcastStatus\",\n - \ \"id\",\n \"part\"\n ],\n \"description\": - \"Transition a broadcast to a given status.\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"broadcastStatus\": {\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"The status to which the broadcast - is going to transition.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ]\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to transition.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts/transition\"\n },\n \"insertCuepoint\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"parameterOrder\": [],\n \"response\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"description\": \"Insert cuepoints in a broadcast\",\n \"path\": - \"youtube/v3/liveBroadcasts/cuepoint\",\n \"request\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Broadcast to insert ads to, - or equivalently `external_video_id` for internal use.\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"POST\"\n - \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"description\": \"Retrieve the list of broadcasts - associated with the given channel.\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"location\": \"query\",\n \"minimum\": - \"0\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"broadcastType\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"default\": \"event\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return only broadcasts with the selected type.\",\n \"enum\": - [\n \"broadcastTypeFilterUnspecified\",\n \"all\",\n - \ \"event\",\n \"persistent\"\n ]\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"Return broadcasts with the given ids from - Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"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, status - and statistics.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"broadcastStatus\": {\n \"description\": \"Return - broadcasts with a certain status, e.g. active broadcasts.\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return current - live broadcasts.\",\n \"Return broadcasts that have not yet - started.\",\n \"Return broadcasts that have already ended.\"\n - \ ]\n }\n }\n },\n \"insert\": - {\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.liveBroadcasts.insert\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new stream for the authenticated - user.\"\n }\n }\n }\n },\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"parameters\": {\n \"uploadType\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Legacy upload protocol - for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n },\n \"upload_protocol\": - {\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"callback\": - {\n \"description\": \"JSONP\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"access_token\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"OAuth access token.\"\n - \ },\n \"key\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"type\": \"string\"\n },\n \"alt\": {\n \"location\": \"query\",\n - \ \"description\": \"Data format for response.\",\n \"default\": - \"json\",\n \"enumDescriptions\": [\n \"Responses with Content-Type - of application/json\",\n \"Media download with context-dependent Content-Type\",\n - \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"json\",\n \"media\",\n - \ \"proto\"\n ]\n },\n \"fields\": {\n \"location\": - \"query\",\n \"description\": \"Selector specifying which fields to include - in a partial response.\",\n \"type\": \"string\"\n },\n \"$.xgafv\": - {\n \"type\": \"string\",\n \"enum\": [\n \"1\",\n \"2\"\n - \ ],\n \"description\": \"V1 error format.\",\n \"enumDescriptions\": - [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"location\": - \"query\"\n },\n \"quotaUser\": {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"oauth_token\": {\n - \ \"description\": \"OAuth 2.0 token for the current user.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"prettyPrint\": {\n - \ \"default\": \"true\",\n \"description\": \"Returns response with - indentations and line breaks.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube:v3\",\n \"fullyEncodeReservedExpansion\": - true,\n \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ }\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:34 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCPzTEsUQL363GCcHKUYfZdw&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"3nj9wlTwfPdU7F9bd-tSLaQdcz8\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"NnmYtaxXU2J4v2B3woZV1q_zMZE\",\n \"id\": \"UCPzTEsUQL363GCcHKUYfZdw\",\n - \ \"snippet\": {\n \"title\": \"nb-kids\",\n \"description\": - \"\",\n \"customUrl\": \"@nb-kids8693\",\n \"publishedAt\": - \"2022-11-24T13:04:54.230119Z\",\n \"thumbnails\": {\n \"default\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJXxfq7xWRfUIkqWMKQOPcRfGK-SLXgKeGPsnlVlqJ1oERlSCNTcakyKnQg13ZTC=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJXxfq7xWRfUIkqWMKQOPcRfGK-SLXgKeGPsnlVlqJ1oERlSCNTcakyKnQg13ZTC=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJXxfq7xWRfUIkqWMKQOPcRfGK-SLXgKeGPsnlVlqJ1oERlSCNTcakyKnQg13ZTC=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"nb-kids\",\n \"description\": - \"\"\n }\n },\n \"brandingSettings\": {\n \"channel\": - {\n \"title\": \"nb-kids\"\n }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:35 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"id\": \"youtube:v3\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"protocol\": \"rest\",\n \"revision\": \"20230220\",\n \"resources\": - {\n \"playlists\": {\n \"methods\": {\n \"list\": {\n \"id\": - \"youtube.playlists.list\",\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"hl\": {\n \"description\": \"Return content - in specified language\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"description\": - \"Return the playlists owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"repeated\": - true,\n \"description\": \"Return the playlists with the given - IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the playlists owned by the specified channel ID.\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"location\": \"query\",\n \"default\": - \"5\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/playlists\"\n },\n \"delete\": {\n \"path\": - \"youtube/v3/playlists\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlists.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n }\n },\n \"update\": {\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/playlists\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"request\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"id\": \"youtube.playlists.update\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"insert\": {\n - \ \"id\": \"youtube.playlists.insert\",\n \"response\": {\n - \ \"$ref\": \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true\n }\n },\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\"\n }\n }\n },\n - \ \"abuseReports\": {\n \"methods\": {\n \"insert\": {\n \"response\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/abuseReports\"\n }\n }\n },\n - \ \"liveChatBans\": {\n \"methods\": {\n \"insert\": {\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"request\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n }\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a chat ban.\",\n \"id\": \"youtube.liveChatBans.delete\",\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"DELETE\"\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.videoCategories.list\",\n - \ \"flatPath\": \"youtube/v3/videoCategories\",\n \"parameters\": - {\n \"regionCode\": {\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the video categories with the given - IDs for Stubby or Apiary.\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"repeated\": true\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"en-US\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/videoCategories\"\n - \ }\n }\n },\n \"comments\": {\n \"methods\": {\n \"markAsSpam\": - {\n \"path\": \"youtube/v3/comments/markAsSpam\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Expresses the caller's opinion that one or more - comments should be flagged as spam.\",\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"id\": \"youtube.comments.markAsSpam\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\"\n - \ }\n },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/comments/markAsSpam\"\n },\n \"update\": {\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.update\",\n \"request\": {\n - \ \"$ref\": \"Comment\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"Updates an existing resource.\"\n },\n - \ \"setModerationStatus\": {\n \"httpMethod\": \"POST\",\n - \ \"path\": \"youtube/v3/comments/setModerationStatus\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"parameters\": {\n \"moderationStatus\": - {\n \"enumDescriptions\": [\n \"The comment is - available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"required\": true,\n - \ \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"description\": \"Specifies the requested moderation status. - Note, comments can be in statuses, which are not available through this call. - For example, this call does not allow to mark a comment as 'likely spam'. - Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"Modifies the moderation status of - the comments with the given IDs\",\n \"type\": \"string\"\n },\n - \ \"banAuthor\": {\n \"description\": \"If set to true - the author of the comment gets added to the ban list. This means all future - comments of the author will autmomatically be rejected. Only valid in combination - with STATUS_REJECTED.\",\n \"type\": \"boolean\",\n \"default\": - \"false\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Sets the moderation status of one or more comments.\",\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"id\": - \"youtube.comments.setModerationStatus\"\n },\n \"delete\": - {\n \"id\": \"youtube.comments.delete\",\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"path\": - \"youtube/v3/comments\"\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"request\": {\n - \ \"$ref\": \"Comment\"\n },\n \"id\": \"youtube.comments.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/comments\"\n - \ },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.comments.list\",\n \"parameters\": {\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more comment - resource properties that the API response will include.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"parentId\": - {\n \"description\": \"Returns replies to the specified comment. - Note, currently YouTube features only one level of replies (ie replies to - top level comments). However replies to replies may be supported in the future.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"textFormat\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"default\": \"html\",\n - \ \"enum\": [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"description\": - \"The requested text format for the returned comments.\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ]\n },\n \"maxResults\": - {\n \"minimum\": \"1\",\n \"default\": \"20\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"maximum\": \"100\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"Returns the comments with the given IDs for - One Platform.\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/comments\"\n - \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"path\": - \"youtube/v3/commentThreads\",\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"httpMethod\": \"PUT\",\n - \ \"parameterOrder\": [],\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"description\": - \"Updates an existing resource.\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n }\n - \ }\n }\n }\n }\n },\n \"search\": {\n - \ \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/search\",\n - \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/search\",\n \"id\": \"youtube.search.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves a list of search resources\",\n - \ \"parameters\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Filter on resources belonging - to this channelId.\",\n \"location\": \"query\"\n },\n - \ \"videoDimension\": {\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on 3d videos.\",\n \"enumDescriptions\": [\n \"Include - both 3D and non-3D videos in returned results. This is the default value.\",\n - \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict - search results to only include 3D videos.\"\n ]\n },\n - \ \"q\": {\n \"type\": \"string\",\n \"description\": - \"Textual search terms to match.\",\n \"location\": \"query\"\n - \ },\n \"videoCaption\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Filter - on the presence of captions on the videos.\",\n \"enum\": [\n - \ \"videoCaptionUnspecified\",\n \"any\",\n \"closedCaption\",\n - \ \"none\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ]\n },\n \"videoDuration\": {\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"description\": - \"Filter on the duration of the videos.\"\n },\n \"videoCategoryId\": - {\n \"description\": \"Filter on videos in a specific category.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"description\": \"Restrict - results to a particular set of resource types from One Platform.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"forMine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Search for the private videos of the authenticated - user.\"\n },\n \"videoSyndicated\": {\n \"type\": - \"string\",\n \"description\": \"Filter on syndicated videos.\",\n - \ \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"location\": \"query\"\n },\n \"order\": - {\n \"description\": \"Sort order of the results.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"type\": - \"string\",\n \"default\": \"relevance\",\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ]\n - \ },\n \"safeSearch\": {\n \"description\": - \"Indicates whether the search results should include restricted content as - well as standard content.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"default\": \"moderate\",\n \"location\": - \"query\"\n },\n \"videoLicense\": {\n \"description\": - \"Filter on the license of the videos.\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Return - all videos, regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ]\n },\n \"forContentOwner\": - {\n \"description\": \"Search owned by a content owner.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"eventType\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ],\n \"type\": - \"string\",\n \"description\": \"Filter on the livestream status - of the videos.\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"videoEmbeddable\": {\n \"description\": \"Filter - on embeddable videos.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ]\n - \ },\n \"videoDefinition\": {\n \"enum\": - [\n \"any\",\n \"standard\",\n \"high\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"location\": \"query\",\n - \ \"description\": \"Filter on the definition of the videos.\"\n - \ },\n \"channelType\": {\n \"description\": - \"Add a filter on the channel search.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"location\": \"query\",\n - \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"type\": \"string\"\n - \ },\n \"relatedToVideoId\": {\n \"location\": - \"query\",\n \"description\": \"Search related to a resource.\",\n - \ \"type\": \"string\"\n },\n \"relevanceLanguage\": - {\n \"description\": \"Return results relevant to this language.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Display the content as seen by viewers in this country.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"publishedAfter\": - {\n \"description\": \"Filter on resources published after this - date.\",\n \"type\": \"string\",\n \"format\": \"google-datetime\",\n - \ \"location\": \"query\"\n },\n \"location\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on location of the video\"\n },\n - \ \"publishedBefore\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"format\": \"google-datetime\",\n - \ \"description\": \"Filter on resources published before this - date.\"\n },\n \"locationRadius\": {\n \"description\": - \"Filter on distance from the location (specified above).\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"forDeveloper\": - {\n \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"topicId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Restrict results to a particular topic.\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"location\": \"query\"\n },\n \"videoType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos.\",\n \"Only retrieve movies.\",\n \"Only - retrieve episodes of shows.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"description\": \"Filter on videos of a specific - type.\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"watermarks\": {\n \"methods\": {\n \"set\": - {\n \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Allows upload of watermark image and setting - it for a channel.\",\n \"parameters\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"10485760\",\n - \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"id\": \"youtube.watermarks.set\",\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"supportsMediaUpload\": true,\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n }\n },\n \"unset\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.watermarks.unset\",\n \"description\": - \"Allows removal of channel watermark.\",\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n }\n }\n - \ }\n },\n \"liveChatModerators\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"parameters\": {\n \"pageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the liveChatModerator resource parts that - the API response will include. Supported values are id and snippet.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"liveChatId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The id of the live chat for which moderators - should be returned.\",\n \"required\": true\n },\n - \ \"maxResults\": {\n \"maximum\": \"50\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"default\": - \"5\",\n \"location\": \"query\",\n \"minimum\": - \"0\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"id\": \"youtube.liveChatModerators.list\"\n },\n - \ \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatModerators.delete\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a chat moderator.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new resource into this collection.\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"id\": - \"youtube.liveChatModerators.insert\",\n \"httpMethod\": \"POST\"\n - \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"update\": {\n \"description\": \"Updates an existing - resource.\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\"\n },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n }\n - \ },\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"insert\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the thirdPartyLink resource parts that the API request and response will include. - Supported values are linkingToken, status, and snippet.\",\n \"required\": - true\n }\n },\n \"description\": \"Inserts a - new resource into this collection.\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"id\": \"youtube.thirdPartyLinks.insert\"\n - \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.thirdPartyLinks.delete\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"Do not use. Required for compatibility.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel ID to which changes - should be applied, for delegation.\",\n \"location\": \"query\"\n - \ },\n \"linkingToken\": {\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Type - of the link to be deleted.\"\n }\n },\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"httpMethod\": - \"DELETE\"\n },\n \"list\": {\n \"parameters\": {\n - \ \"type\": {\n \"type\": \"string\",\n \"description\": - \"Get a third party link of the given type.\",\n \"enum\": [\n - \ \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API response will include. Supported - values are linkingToken, status, and snippet.\",\n \"type\": - \"string\"\n },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"linkingToken\": {\n \"location\": \"query\",\n - \ \"description\": \"Get a third party link with the given linking - token.\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"path\": \"youtube/v3/thirdPartyLinks\"\n - \ }\n }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/tests\",\n \"flatPath\": - \"youtube/v3/tests\",\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"TestItem\"\n },\n \"id\": \"youtube.tests.insert\",\n - \ \"description\": \"POST method.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"TestItem\"\n }\n - \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"download\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\",\n \"type\": \"string\"\n - \ },\n \"tlang\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"tlang - is the language code; machine translate the captions into this language.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"tfmt\": {\n \"description\": \"Convert the captions - into this format. Supported options are sbv, srt, and vtt.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"path\",\n - \ \"required\": true,\n \"description\": \"The ID - of the caption track to download, required for One Platform.\"\n }\n - \ },\n \"supportsMediaDownload\": true,\n \"flatPath\": - \"youtube/v3/captions/{id}\",\n \"useMediaDownloadService\": true,\n - \ \"description\": \"Downloads a caption track.\",\n \"path\": - \"youtube/v3/captions/{id}\",\n \"id\": \"youtube.captions.download\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"GET\"\n },\n \"update\": {\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"parameters\": {\n \"onBehalfOf\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"sync\": {\n \"type\": - \"boolean\",\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n - \ },\n \"request\": {\n \"$ref\": \"Caption\"\n - \ },\n \"id\": \"youtube.captions.update\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"PUT\",\n \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n - \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n }\n },\n \"supportsMediaUpload\": - true,\n \"path\": \"youtube/v3/captions\"\n },\n \"insert\": - {\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"sync\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"onBehalfOf\": {\n - \ \"type\": \"string\",\n \"description\": \"ID of - the Google+ Page for the channel that the request is be on behalf of\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the caption - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"id\": \"youtube.captions.insert\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ },\n \"maxSize\": \"104857600\"\n },\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"Caption\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"supportsMediaUpload\": - true\n },\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/captions\",\n - \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.captions.list\",\n - \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"parameters\": {\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"Returns the captions for the - specified video.\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is on behalf of.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the captions with the given IDs for - Stubby or Apiary.\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"parameters\": {\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is be on behalf of\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"id\": \"youtube.captions.delete\",\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"path\": - \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ]\n }\n - \ }\n },\n \"liveStreams\": {\n \"methods\": {\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"description\": \"Retrieve - the list of streams associated with the given channel. --\",\n \"id\": - \"youtube.liveStreams.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"parameters\": {\n \"maxResults\": {\n - \ \"location\": \"query\",\n \"default\": \"5\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"maximum\": \"50\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"description\": \"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.\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"Return - LiveStreams with the given ids from Stubby or Apiary.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes an existing stream for the authenticated - user.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.liveStreams.delete\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/liveStreams\"\n },\n - \ \"update\": {\n \"id\": \"youtube.liveStreams.update\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"PUT\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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, content_details, and status.\",\n \"repeated\": true,\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"description\": \"Inserts a new stream - for the authenticated user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.insert\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"path\": \"youtube/v3/liveStreams\"\n - \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n - \ \"set\": {\n \"description\": \"As this is not an insert - in a strict sense (it supports uploading/setting of a thumbnail for multiple - videos, which doesn't result in creation of a single resource), I use a custom - verb here.\",\n \"id\": \"youtube.thumbnails.set\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"2097152\"\n },\n \"flatPath\": - \"youtube/v3/thumbnails/set\",\n \"response\": {\n \"$ref\": - \"ThumbnailSetResponse\"\n },\n \"parameterOrder\": [\n - \ \"videoId\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"supportsMediaUpload\": true,\n \"parameters\": {\n \"videoId\": - {\n \"description\": \"Returns the Thumbnail with the given video - IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"path\": - \"youtube/v3/thumbnails/set\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameters\": {\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"default\": \"5\"\n },\n \"part\": {\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the superChatEvent resource parts that the API - response will include. This parameter is currently not supported.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return rendered funding amounts - in specified language.\"\n }\n },\n \"flatPath\": - \"youtube/v3/superChatEvents\",\n \"response\": {\n \"$ref\": - \"SuperChatEventListResponse\"\n },\n \"id\": \"youtube.superChatEvents.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/superChatEvents\"\n }\n }\n },\n \"channelBanners\": - {\n \"methods\": {\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n - \ \"parameters\": {\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\"\n },\n \"onBehalfOfContentOwner\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"youtube.channelBanners.insert\",\n \"parameterOrder\": - [],\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"response\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"supportsMediaUpload\": - true,\n \"path\": \"youtube/v3/channelBanners/insert\",\n \"mediaUpload\": - {\n \"maxSize\": \"6291456\",\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"httpMethod\": \"POST\"\n }\n - \ }\n },\n \"videos\": {\n \"methods\": {\n \"reportAbuse\": - {\n \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n - \ },\n \"path\": \"youtube/v3/videos/reportAbuse\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.reportAbuse\",\n \"parameterOrder\": - [],\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Report - abuse for a video.\"\n },\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"VideoListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.videos.list\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"minimum\": - \"1\",\n \"type\": \"integer\"\n },\n \"regionCode\": - {\n \"description\": \"Use a chart that is specific to the specified - region\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"maxHeight\": - {\n \"location\": \"query\",\n \"maximum\": \"8192\",\n - \ \"type\": \"integer\",\n \"minimum\": \"72\",\n - \ \"format\": \"int32\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"Return videos with the given ids.\",\n \"location\": \"query\"\n - \ },\n \"videoCategoryId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"default\": - \"0\"\n },\n \"part\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"myRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"Return - videos liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n - \ \"location\": \"query\"\n },\n \"maxWidth\": - {\n \"minimum\": \"72\",\n \"format\": \"int32\",\n - \ \"maximum\": \"8192\",\n \"description\": \"Return - the player with maximum height specified in\",\n \"location\": - \"query\",\n \"type\": \"integer\"\n },\n \"chart\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - the most popular videos for the specified content region and video category.\"\n - \ ],\n \"description\": \"Return the videos that - are in the specified chart.\",\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ]\n },\n \"hl\": - {\n \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"locale\": {\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/videos\"\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/videos\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"id\": \"youtube.videos.delete\",\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"getRating\": {\n - \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"description\": \"Retrieves the ratings that the - authorized user gave to a list of specified videos.\",\n \"path\": - \"youtube/v3/videos/getRating\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.videos.getRating\",\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/videos/getRating\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\"\n },\n \"rate\": {\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.videos.rate\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos/rate\",\n \"description\": - \"Adds a like or dislike rating to a video or removes a rating from a video.\",\n - \ \"path\": \"youtube/v3/videos/rate\",\n \"parameters\": - {\n \"rating\": {\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n }\n },\n - \ \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"Video\"\n - \ },\n \"path\": \"youtube/v3/videos\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"id\": \"youtube.videos.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n }\n },\n - \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"path\": \"youtube/v3/videos\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/videos\"\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"274877906944\",\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"stabilize\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Should stabilize be applied to the upload.\"\n - \ },\n \"autoLevels\": {\n \"location\": - \"query\",\n \"description\": \"Should auto-levels be applied - to the upload.\",\n \"type\": \"boolean\"\n },\n \"notifySubscribers\": - {\n \"type\": \"boolean\",\n \"description\": \"Notify - the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"default\": \"true\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"id\": \"youtube.videos.insert\",\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"description\": \"Retrieves a list of all pricing levels offered - by a creator to the fans.\",\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"MembershipsLevelListResponse\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\"\n }\n - \ },\n \"id\": \"youtube.membershipsLevels.list\",\n \"flatPath\": - \"youtube/v3/membershipsLevels\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ]\n }\n }\n },\n \"playlistItems\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"path\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.playlistItems.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"playlistId\": - {\n \"description\": \"Return the playlist items within the given - playlist.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"videoId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlist items associated with the given video ID.\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"delete\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.delete\",\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/playlistItems\"\n },\n - \ \"update\": {\n \"id\": \"youtube.playlistItems.update\",\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/playlistItems\",\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"PUT\"\n },\n \"insert\": {\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n }\n }\n }\n },\n \"channels\": - {\n \"methods\": {\n \"update\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true\n }\n },\n - \ \"path\": \"youtube/v3/channels\",\n \"httpMethod\": \"PUT\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channels\",\n \"description\": - \"Updates an existing resource.\",\n \"id\": \"youtube.channels.update\",\n - \ \"request\": {\n \"$ref\": \"Channel\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Channel\"\n }\n },\n \"list\": - {\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"path\": \"youtube/v3/channels\",\n \"flatPath\": - \"youtube/v3/channels\",\n \"parameters\": {\n \"mySubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channels subscribed to the authenticated - user\"\n },\n \"managedByMe\": {\n \"description\": - \"Return the channels managed by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"categoryId\": - {\n \"description\": \"Return the channels within the specified - guide category ID.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"forUsername\": {\n \"type\": - \"string\",\n \"description\": \"Return the channel associated - with a YouTube username.\",\n \"location\": \"query\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"description\": - \"Return the ids of channels owned by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"50\",\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Return the channels with the specified - IDs.\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"id\": \"youtube.channels.list\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"liveChatMessages\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"description\": \"Specifies the localization language - in which the system messages should be returned.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"default\": - \"500\",\n \"minimum\": \"200\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"2000\",\n - \ \"location\": \"query\"\n },\n \"profileImageSize\": - {\n \"maximum\": \"720\",\n \"description\": \"Specifies - the size of the profile image that should be returned for each user.\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"16\",\n - \ \"location\": \"query\",\n \"type\": \"integer\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - liveChatComment resource parts that the API response will include. Supported - values are id and snippet.\"\n },\n \"pageToken\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The id of the live chat for which comments should be returned.\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n }\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"description\": \"Deletes a - chat message.\",\n \"id\": \"youtube.liveChatMessages.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"httpMethod\": \"DELETE\"\n },\n \"insert\": {\n - \ \"id\": \"youtube.liveChatMessages.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true\n }\n },\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"request\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"path\": - \"youtube/v3/liveChat/messages\"\n }\n }\n },\n \"activities\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"id\": \"youtube.activities.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n },\n \"flatPath\": - \"youtube/v3/activities\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/activities\",\n - \ \"parameters\": {\n \"publishedBefore\": {\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"home\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"publishedAfter\": {\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"default\": \"5\",\n - \ \"maximum\": \"50\"\n },\n \"mine\": {\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n }\n - \ }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"hl\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return content in specified language\"\n - \ },\n \"mine\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Return the ChannelSections owned by the authenticated - user.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Return - the ChannelSections with the given IDs for Stubby or Apiary.\"\n },\n - \ \"channelId\": {\n \"description\": \"Return the - ChannelSections owned by the specified channel ID.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ChannelSectionListResponse\"\n },\n \"id\": \"youtube.channelSections.list\",\n - \ \"flatPath\": \"youtube/v3/channelSections\"\n },\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.insert\"\n - \ },\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing resource.\",\n \"id\": \"youtube.channelSections.update\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"path\": - \"youtube/v3/channelSections\"\n },\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.delete\"\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"path\": \"youtube/v3/i18nLanguages\",\n \"flatPath\": - \"youtube/v3/i18nLanguages\",\n \"response\": {\n \"$ref\": - \"I18nLanguageListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.i18nLanguages.list\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the i18nLanguage - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"type\": \"string\"\n },\n - \ \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"default\": \"en_US\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"id\": \"youtube.members.list\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/members\",\n \"path\": - \"youtube/v3/members\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"filterByMemberChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"maximum\": \"1000\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"default\": \"5\"\n },\n \"hasAccessToLevel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter members in the results set to the - ones that have access to a level.\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mode\": {\n \"location\": - \"query\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - only members that joined after the first call with this mode was made.\",\n - \ \"Return all current members, from newest to oldest.\"\n ],\n - \ \"default\": \"all_current\",\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Retrieves - a list of members that match the request criteria for a channel.\"\n }\n - \ }\n },\n \"liveBroadcasts\": {\n \"methods\": {\n \"update\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n },\n \"description\": - \"Updates an existing broadcast for the authenticated user.\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"id\": - \"youtube.liveBroadcasts.update\"\n },\n \"bind\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"streamId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Stream to bind, if not set unbind the current one.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"id\": {\n \"required\": - true,\n \"description\": \"Broadcast to bind to the stream\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"id\",\n - \ \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"description\": - \"Bind a broadcast to a stream.\"\n },\n \"insert\": {\n \"id\": - \"youtube.liveBroadcasts.insert\",\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"description\": \"Inserts a new - stream for the authenticated user.\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"transition\": - {\n \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameters\": {\n \"broadcastStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"location\": \"query\",\n \"description\": - \"The status to which the broadcast is going to transition.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Broadcast to transition.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"description\": \"Transition - a broadcast to a given status.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"id\": - \"youtube.liveBroadcasts.transition\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"httpMethod\": \"POST\"\n },\n \"list\": {\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"response\": {\n \"$ref\": - \"LiveBroadcastListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"id\": \"youtube.liveBroadcasts.list\",\n \"parameters\": - {\n \"mine\": {\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"broadcastStatus\": {\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"description\": \"Return broadcasts with - a certain status, e.g. active broadcasts.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"broadcastType\": - {\n \"default\": \"event\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Return only broadcasts with the selected type.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ]\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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, status - and statistics.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n },\n \"delete\": {\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Delete a given broadcast.\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to delete.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n }\n },\n \"insertCuepoint\": - {\n \"description\": \"Insert cuepoints in a broadcast\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"parameterOrder\": [],\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"id\": - {\n \"description\": \"Broadcast to insert ads to, or equivalently - `external_video_id` for internal use.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"part\": {\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the videoCategory resource parts that the - API response will include. Supported values are id and snippet.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"default\": \"en-US\"\n - \ }\n },\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\"\n }\n }\n - \ },\n \"commentThreads\": {\n \"methods\": {\n \"insert\": - {\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"description\": \"Inserts a new - resource into this collection.\",\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"id\": \"youtube.commentThreads.insert\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"list\": {\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"parameters\": - {\n \"order\": {\n \"location\": \"query\",\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Order by time.\",\n \"Order by relevance.\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"time\"\n },\n \"searchTerms\": {\n \"location\": - \"query\",\n \"description\": \"Limits the returned comment threads - to those matching the specified key words. Not compatible with the 'id' filter.\",\n - \ \"type\": \"string\"\n },\n \"moderationStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"default\": - \"published\",\n \"description\": \"Limits the returned comment - threads to those with the specified moderation status. Not compatible with - the 'id' filter. Valid values: published, heldForReview, likelySpam.\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ]\n },\n \"textFormat\": {\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"description\": \"The requested - text format for the returned comments.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"default\": \"html\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of all videos of the channel and the channel - comments as well.\",\n \"type\": \"string\"\n },\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"minimum\": \"1\",\n \"format\": - \"uint32\",\n \"location\": \"query\",\n \"type\": - \"integer\",\n \"default\": \"20\",\n \"maximum\": - \"100\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Returns the comment threads - for all the channel comments (ie does not include comments left on videos).\",\n - \ \"location\": \"query\"\n },\n \"videoId\": - {\n \"description\": \"Returns the comment threads of the specified - video.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"description\": \"Returns the comment - threads with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies a comma-separated list of one or more commentThread resource - properties that the API response will include.\"\n }\n },\n - \ \"id\": \"youtube.commentThreads.list\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"i18nRegions\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"hl\": {\n - \ \"default\": \"en_US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"response\": - {\n \"$ref\": \"I18nRegionListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"flatPath\": \"youtube/v3/i18nRegions\",\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"subscriptions\": - {\n \"methods\": {\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"Subscription\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"response\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"id\": - \"youtube.subscriptions.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"delete\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a resource.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"path\": - \"youtube/v3/subscriptions\"\n },\n \"list\": {\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/subscriptions\",\n \"response\": {\n \"$ref\": - \"SubscriptionListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.subscriptions.list\",\n \"parameters\": {\n \"forChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the subscriptions to the subset of - these channels that the authenticated user is subscribed to.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Return the subscriptions of the given channel owner.\",\n \"location\": - \"query\"\n },\n \"mySubscribers\": {\n \"location\": - \"query\",\n \"description\": \"Return the subscribers of the - given channel owner.\",\n \"type\": \"boolean\"\n },\n - \ \"maxResults\": {\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Flag for returning the subscriptions - of the authenticated user.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"pageToken\": {\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"description\": \"Return the subscriptions with the given IDs - for Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"order\": {\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"default\": \"relevance\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The order of the returned subscriptions\"\n },\n \"myRecentSubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n }\n - \ }\n }\n }\n },\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"ownerName\": \"Google\",\n \"batchPath\": \"batch\",\n \"kind\": \"discovery#restDescription\",\n - \ \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"version\": \"v3\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": - {\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n }\n }\n }\n },\n \"basePath\": - \"\",\n \"canonicalName\": \"YouTube\",\n \"ownerDomain\": \"google.com\",\n - \ \"discoveryVersion\": \"v1\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"name\": \"youtube\",\n \"fullyEncodeReservedExpansion\": true,\n \"schemas\": - {\n \"PlaylistItemStatus\": {\n \"description\": \"Information about - the playlist item's privacy status.\",\n \"id\": \"PlaylistItemStatus\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"This resource's privacy status.\",\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n }\n },\n \"type\": - \"object\"\n },\n \"Entity\": {\n \"id\": \"Entity\",\n \"type\": - \"object\",\n \"properties\": {\n \"url\": {\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"typeId\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"ActivityContentDetailsPromotedItem\": {\n \"description\": - \"Details about a resource which is being promoted.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"ctaType\": {\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\",\n \"type\": \"string\"\n },\n \"adTag\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should fetch to request a promoted item.\"\n },\n \"impressionUrl\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The list of impression URLs. The client should - ping all of these URLs to indicate that the user was shown this promoted item.\",\n - \ \"type\": \"array\"\n },\n \"customCtaButtonText\": - {\n \"type\": \"string\",\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\"\n },\n \"creativeViewUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\",\n \"type\": \"string\"\n },\n \"clickTrackingUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user clicked through on this promoted - item.\"\n },\n \"descriptionText\": {\n \"description\": - \"The text description to accompany the promoted item.\",\n \"type\": - \"string\"\n },\n \"forecastingUrl\": {\n \"description\": - \"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.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"destinationUrl\": - {\n \"description\": \"The URL the client should direct the user - to, if the user chooses to visit the advertiser's website.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ActivityContentDetailsPromotedItem\"\n - \ },\n \"ActivitySnippet\": {\n \"description\": \"Basic details - about an activity, including title, description, thumbnails, activity type - and group. Next ID: 12\",\n \"id\": \"ActivitySnippet\",\n \"type\": - \"object\",\n \"properties\": {\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel responsible - for this activity\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The title of the resource primarily - associated with the activity.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel associated with the activity.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the video was uploaded.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"description\": \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"description\": - {\n \"description\": \"The description of the resource primarily - associated with the activity. @mutable youtube.activities.insert\",\n \"type\": - \"string\"\n },\n \"groupId\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"type\": - {\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n - \ \"like\",\n \"favorite\",\n \"comment\",\n - \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n - \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of activity that the resource describes.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n }\n },\n - \ \"MembershipsLevel\": {\n \"description\": \"A *membershipsLevel* - resource represents an offer made by YouTube creators for their fans. Users - can become members of the channel by joining one of the available levels. - They will provide recurring monetary support and receives special benefits.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevel\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the memberships level.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"MembershipsLevel\"\n - \ },\n \"LiveChatSuperChatDetails\": {\n \"id\": \"LiveChatSuperChatDetails\",\n - \ \"properties\": {\n \"tier\": {\n \"description\": \"The - tier in which the amount belongs. Lower amounts belong to lower tiers. The - lowest tier is 1.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n },\n \"amountMicros\": - {\n \"description\": \"The amount purchased by the user, in micros - (1,750,000 micros = 1.75).\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this Super Chat event.\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LocalizedProperty\": - {\n \"properties\": {\n \"localized\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LocalizedString\"\n - \ }\n },\n \"default\": {\n \"type\": \"string\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the default property.\",\n \"$ref\": \"LanguageTag\"\n - \ }\n },\n \"id\": \"LocalizedProperty\",\n \"type\": - \"object\"\n },\n \"SubscriptionContentDetails\": {\n \"id\": \"SubscriptionContentDetails\",\n - \ \"properties\": {\n \"totalItemCount\": {\n \"type\": - \"integer\",\n \"description\": \"The approximate number of items - that the subscription points to.\",\n \"format\": \"uint32\"\n },\n - \ \"activityType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"subscriptionActivityTypeUnspecified\",\n \"all\",\n - \ \"uploads\"\n ],\n \"description\": \"The type - of activity this subscription is for (only uploads, everything).\",\n \"type\": - \"string\"\n },\n \"newItemCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The number - of new items in the subscription since its content was last read.\"\n }\n - \ },\n \"description\": \"Details about the content to witch a subscription - refers.\",\n \"type\": \"object\"\n },\n \"LiveStreamSnippet\": - {\n \"properties\": {\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The stream's description. The value - cannot be longer than 10000 characters.\"\n },\n \"title\": - {\n \"description\": \"The stream's title. The value must be between - 1 and 128 characters long.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"isDefaultStream\": {\n \"type\": \"boolean\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the stream was created.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is transmitting the stream.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveStreamSnippet\"\n },\n \"VideoCategory\": - {\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video category.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#videoCategory\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the video category, including its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n - \ }\n },\n \"description\": \"A *videoCategory* resource identifies - a category that has been or could be associated with uploaded videos.\",\n - \ \"id\": \"VideoCategory\",\n \"type\": \"object\"\n },\n \"MonitorStreamInfo\": - {\n \"description\": \"Settings and Info of the monitor stream\",\n \"properties\": - {\n \"embedHtml\": {\n \"description\": \"HTML code that embeds - a player that plays the monitor stream.\",\n \"type\": \"string\"\n - \ },\n \"enableMonitorStream\": {\n \"type\": \"boolean\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"This value determines - whether the monitor stream is enabled for the broadcast. If the monitor stream - is enabled, then YouTube will broadcast the event content on a special stream - intended only for the broadcaster's consumption. The broadcaster can use the - stream to review the event content and also to identify the optimal times - to insert cuepoints. You need to set this value to true if you intend to have - a broadcast delay for your event. *Note:* This property cannot be updated - once the broadcast is in the testing or live state.\"\n },\n \"broadcastStreamDelayMs\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"integer\",\n \"description\": - \"If you have set the enableMonitorStream property to true, then this property - determines the length of the live broadcast delay.\",\n \"format\": - \"uint32\"\n }\n },\n \"id\": \"MonitorStreamInfo\",\n \"type\": - \"object\"\n },\n \"CommentSnippetAuthorChannelId\": {\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n - \ \"description\": \"The id of the author's YouTube channel, if any.\"\n - \ },\n \"I18nRegionListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#i18nRegionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\"\n - \ }\n },\n \"id\": \"I18nRegionListResponse\"\n },\n \"PropertyValue\": - {\n \"type\": \"object\",\n \"description\": \"A pair Property / - Value.\",\n \"properties\": {\n \"property\": {\n \"description\": - \"A property.\",\n \"type\": \"string\"\n },\n \"value\": - {\n \"description\": \"The property's value.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"PropertyValue\"\n },\n - \ \"LiveBroadcast\": {\n \"description\": \"A *liveBroadcast* resource - represents an event that will be streamed, via live video, on YouTube.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"statistics\": - {\n \"$ref\": \"LiveBroadcastStatistics\",\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the event, including its - title, description, start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"status\": {\n \"$ref\": - \"LiveBroadcastStatus\",\n \"description\": \"The status object contains - information about the event's status.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the broadcast.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveBroadcast\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\"\n }\n },\n \"id\": - \"LiveBroadcast\"\n },\n \"CommentThreadSnippet\": {\n \"description\": - \"Basic details about a comment thread.\",\n \"properties\": {\n \"canReply\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n - \ \"totalReplyCount\": {\n \"description\": \"The total number - of replies (not including the top level comment).\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"isPublic\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the thread (and therefore all its comments) is visible to all YouTube users.\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID of - the video the comments refer to, if any. No video_id implies a channel discussion - comment.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"topLevelComment\": {\n \"$ref\": - \"Comment\",\n \"description\": \"The top level comment of this thread.\"\n - \ }\n },\n \"id\": \"CommentThreadSnippet\",\n \"type\": - \"object\"\n },\n \"Cuepoint\": {\n \"id\": \"Cuepoint\",\n \"properties\": - {\n \"insertionOffsetTimeMs\": {\n \"type\": \"string\",\n - \ \"description\": \"The time when the cuepoint should be inserted - by offset to the broadcast actual start time.\",\n \"format\": \"int64\"\n - \ },\n \"durationSecs\": {\n \"description\": \"The - duration of this cuepoint.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"cueType\": {\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"walltimeMs\": {\n \"description\": \"The wall - clock time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - identifier for cuepoint resource.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Note that - there may be a 5-second end-point resolution issue. For instance, if a cuepoint - comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, - depending. This is an artifact of HLS.\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"description\": \"Information about a video stream.\",\n \"properties\": - {\n \"codec\": {\n \"description\": \"The video codec that - the stream uses.\",\n \"type\": \"string\"\n },\n \"heightPixels\": - {\n \"description\": \"The encoded video content's height in pixels.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"widthPixels\": {\n \"description\": \"The encoded video - content's width in pixels. You can calculate the video's encoding aspect ratio - as width_pixels / height_pixels.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"vendor\": {\n \"type\": \"string\",\n - \ \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\"\n },\n \"frameRateFps\": - {\n \"format\": \"double\",\n \"description\": \"The video - stream's frame rate, in frames per second.\",\n \"type\": \"number\"\n - \ },\n \"aspectRatio\": {\n \"format\": \"double\",\n - \ \"type\": \"number\",\n \"description\": \"The video content's - display aspect ratio, which specifies the aspect ratio in which the video - should be displayed.\"\n },\n \"rotation\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The amount that - YouTube needs to rotate the original source content to properly display the - video.\",\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ]\n },\n \"bitrateBps\": {\n - \ \"type\": \"string\",\n \"description\": \"The video stream's - bitrate, in bits per second.\",\n \"format\": \"uint64\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"VideoSnippet\": {\n \"description\": \"Basic details about - a video, including title, description, uploader, thumbnails and category.\",\n - \ \"id\": \"VideoSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that the video - was uploaded to.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the video. 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.\"\n },\n \"liveBroadcastContent\": {\n - \ \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ]\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"categoryId\": {\n \"description\": - \"The YouTube video category associated with the video.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\",\n - \ \"$ref\": \"VideoLocalization\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the video was uploaded.\",\n \"format\": \"date-time\"\n - \ },\n \"defaultAudioLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\"\n },\n \"tags\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of keyword - tags associated with the video. Tags may contain spaces.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the videos's default snippet.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the video - belongs to.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"Channel\": {\n \"type\": \"object\",\n \"properties\": - {\n \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n - \ \"contentOwnerDetails\": {\n \"$ref\": \"ChannelContentOwnerDetails\",\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object encapsulates information about the channel's content.\",\n \"$ref\": - \"ChannelContentDetails\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channel\"\n - \ },\n \"auditDetails\": {\n \"description\": \"The - auditionDetails object encapsulates channel data that is relevant for YouTube - Partners during the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n - \ },\n \"topicDetails\": {\n \"description\": \"The - topicDetails object encapsulates information about Freebase topics associated - with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel, such as its - title, description, and thumbnail images.\"\n },\n \"status\": - {\n \"$ref\": \"ChannelStatus\",\n \"description\": \"The - status object encapsulates information about the privacy status of the channel.\"\n - \ },\n \"brandingSettings\": {\n \"description\": \"The - brandingSettings object encapsulates information about the branding of the - channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel.\",\n \"type\": \"string\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n },\n \"description\": - \"Localizations for different languages\"\n }\n },\n \"description\": - \"A *channel* resource contains information about a YouTube channel.\",\n - \ \"id\": \"Channel\"\n },\n \"LiveStreamConfigurationIssue\": {\n - \ \"type\": \"object\",\n \"id\": \"LiveStreamConfigurationIssue\",\n - \ \"properties\": {\n \"reason\": {\n \"description\": - \"The short-form reason for this issue.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The long-form description of the issue and how - to resolve it.\"\n },\n \"type\": {\n \"description\": - \"The kind of error happening.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"type\": \"string\"\n },\n \"severity\": - {\n \"description\": \"How severe this issue is to the stream.\",\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ }\n },\n \"MemberListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"MemberListResponse\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of members that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Member\"\n }\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n }\n },\n \"VideoAbuseReportReason\": {\n - \ \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"id\": \"VideoAbuseReportReason\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the abuse report reason.\",\n - \ \"$ref\": \"VideoAbuseReportReasonSnippet\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReason\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID of this abuse report reason.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"Activity\": - {\n \"properties\": {\n \"contentDetails\": {\n \"description\": - \"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.\",\n \"$ref\": - \"ActivityContentDetails\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the activity, including - the activity's type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the activity.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"default\": \"youtube#activity\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"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.\",\n - \ \"type\": \"object\",\n \"id\": \"Activity\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"properties\": {\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the member to this Member - Milestone Chat. This field is empty for messages without a comment from the - member.\"\n },\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viever is a member. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"memberMonth\": {\n \"format\": \"uint32\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"type\": \"integer\"\n - \ }\n }\n },\n \"LevelDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"displayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name that should be used when referring to - this level.\"\n }\n },\n \"id\": \"LevelDetails\"\n },\n - \ \"SuperChatEventSnippet\": {\n \"type\": \"object\",\n \"id\": - \"SuperChatEventSnippet\",\n \"properties\": {\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\"\n },\n \"createdAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"commentText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text contents of the comment left by the - user.\"\n },\n \"supporterDetails\": {\n \"description\": - \"Details about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Channel id where the event occurred.\"\n },\n \"amountMicros\": - {\n \"description\": \"The purchase amount, in micros of the purchase - currency. e.g., 1 is represented as 1000000.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"isSuperStickerEvent\": - {\n \"type\": \"boolean\",\n \"description\": \"True if - this event is a Super Sticker event.\"\n },\n \"messageType\": - {\n \"format\": \"uint32\",\n \"description\": \"The tier - for the paid message, which is based on the amount of money spent to purchase - the message.\",\n \"type\": \"integer\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\"\n },\n \"displayString\": {\n \"description\": - \"A rendered string that displays the purchase amount and currency (e.g., - \\\"$1.00\\\"). The string is rendered for the given language.\",\n \"type\": - \"string\"\n }\n }\n },\n \"CdnSettings\": {\n \"id\": - \"CdnSettings\",\n \"type\": \"object\",\n \"description\": \"Brief - description of the live stream cdn settings.\",\n \"properties\": {\n - \ \"frameRate\": {\n \"type\": \"string\",\n \"description\": - \"The frame rate of the inbound video data.\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"ingestionInfo\": {\n \"description\": \"The ingestionInfo - object contains information that YouTube provides that you need to transmit - your RTMP or HTTP stream to YouTube.\",\n \"$ref\": \"IngestionInfo\"\n - \ },\n \"resolution\": {\n \"description\": \"The resolution - of the inbound video data.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"240p\",\n \"360p\",\n - \ \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\",\n - \ \"2160p\",\n \"variable\"\n ]\n },\n - \ \"ingestionType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \" The method - or protocol used to transmit the video stream.\",\n \"enum\": [\n - \ \"rtmp\",\n \"dash\",\n \"webrtc\",\n \"hls\"\n - \ ]\n },\n \"format\": {\n \"description\": - \"The format of the video stream that you are sending to Youtube. \",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ }\n }\n },\n \"VideoRecordingDetails\": {\n \"id\": - \"VideoRecordingDetails\",\n \"description\": \"Recording information - associated with the video.\",\n \"properties\": {\n \"location\": - {\n \"$ref\": \"GeoPoint\",\n \"description\": \"The geolocation - information associated with the video.\"\n },\n \"locationDescription\": - {\n \"description\": \"The text description of the location where - the video was recorded.\",\n \"type\": \"string\"\n },\n \"recordingDate\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the video was recorded.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelSectionContentDetails\": - {\n \"id\": \"ChannelSectionContentDetails\",\n \"properties\": - {\n \"channels\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"The channel ids for type multiple_channels.\"\n },\n \"playlists\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The playlist ids for - type single_playlist and multiple_playlists. For singlePlaylist, only one - playlistId is allowed.\"\n }\n },\n \"description\": \"Details - about a channelsection, including playlists and channels.\",\n \"type\": - \"object\"\n },\n \"ChannelStatus\": {\n \"id\": \"ChannelStatus\",\n - \ \"description\": \"JSON template for the status part of a channel.\",\n - \ \"properties\": {\n \"longUploadsStatus\": {\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ],\n \"type\": \"string\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"Privacy status of the channel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"isLinked\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"isUpgrade\": {\n \"description\": \"If the viewer just - had upgraded from a lower level. For viewers that were not members at the - time of purchase, this field is false.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatNewSponsorDetails\"\n - \ },\n \"PlaylistItemSnippet\": {\n \"properties\": {\n \"title\": - {\n \"description\": \"The item's title.\",\n \"type\": - \"string\"\n },\n \"videoOwnerChannelTitle\": {\n \"description\": - \"Channel title for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the user that added the item - to the playlist.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"description\": \"The id object contains - information that can be used to uniquely identify the resource that is included - in the playlist as the playlist item.\"\n },\n \"description\": - {\n \"description\": \"The item's description.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the item was added to - the playlist.\",\n \"format\": \"date-time\"\n },\n \"playlistId\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify thGe playlist that the playlist item is - in.\"\n },\n \"videoOwnerChannelId\": {\n \"description\": - \"Channel id for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist item. 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.\"\n },\n \"position\": {\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n }\n },\n \"description\": \"Basic details about - a playlist, including title, description and thumbnails. Basic details of - a YouTube Playlist item provided by the author. Next ID: 15\",\n \"type\": - \"object\",\n \"id\": \"PlaylistItemSnippet\"\n },\n \"LiveChatMessage\": - {\n \"properties\": {\n \"authorDetails\": {\n \"$ref\": - \"LiveChatMessageAuthorDetails\",\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveChatMessage\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A *liveChatMessage* resource represents a chat message - in a YouTube Live Chat.\",\n \"id\": \"LiveChatMessage\"\n },\n \"AbuseReport\": - {\n \"type\": \"object\",\n \"properties\": {\n \"relatedEntities\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n }\n },\n \"abuseTypes\": {\n \"items\": - {\n \"$ref\": \"AbuseType\"\n },\n \"type\": - \"array\"\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n - \ },\n \"description\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"AbuseReport\"\n },\n \"ChannelAuditDetails\": - {\n \"properties\": {\n \"copyrightStrikesGoodStanding\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether or - not the channel has any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelAuditDetails\",\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\"\n },\n \"ChannelListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelListResponse\\\".\",\n \"default\": - \"youtube#channelListResponse\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Channel\"\n }\n }\n },\n \"id\": - \"ChannelListResponse\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"id\": \"LiveChatMessageAuthorDetails\",\n \"properties\": - {\n \"isChatSponsor\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is a sponsor of the live chat.\"\n },\n \"displayName\": - {\n \"description\": \"The channel's display name.\",\n \"type\": - \"string\"\n },\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The YouTube channel ID.\",\n \"type\": - \"string\"\n },\n \"isChatModerator\": {\n \"description\": - \"Whether the author is a moderator of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"isChatOwner\": {\n \"description\": - \"Whether the author is the owner of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"profileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channels's avatar URL.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ChannelProfileDetails\": - {\n \"type\": \"object\",\n \"id\": \"ChannelProfileDetails\",\n - \ \"properties\": {\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"displayName\": {\n \"description\": \"The channel's display - name.\",\n \"type\": \"string\"\n },\n \"channelUrl\": - {\n \"description\": \"The channel's URL.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"VideoStatus\": {\n \"id\": \"VideoStatus\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title. Next Id: 18\",\n \"properties\": {\n \"publishAt\": - {\n \"description\": \"The date and time when the video is scheduled - to publish. It can be set only if the privacy status of the video is private..\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"rejectionReason\": {\n \"enumDescriptions\": [\n \"Copyright - infringement.\",\n \"Inappropriate video content.\",\n \"Duplicate - upload in the same channel.\",\n \"Terms of use violation.\",\n - \ \"Uploader account was suspended.\",\n \"Video duration - was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ]\n },\n \"embeddable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value indicates if the video can be embedded - on another website. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"license\": {\n \"description\": \"The video's - license. @mutable youtube.videos.insert youtube.videos.update\",\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"privacyStatus\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The video's privacy status.\"\n },\n \"uploadStatus\": - {\n \"type\": \"string\",\n \"description\": \"The status - of the uploaded video.\",\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ],\n \"enumDescriptions\": [\n - \ \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ]\n },\n \"failureReason\": - {\n \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ],\n \"description\": \"This - value explains why a video failed to upload. This property is only present - if the uploadStatus property indicates that the upload failed.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Unable to convert - video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ]\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"publicStatsViewable\": {\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"MembershipsLevelListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#membershipsLevelListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"MembershipsLevel\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of pricing levels offered by a creator to the fans.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\"\n - \ },\n \"SearchResultSnippet\": {\n \"description\": \"Basic details - about a search result, including title, description and thumbnails of the - item referenced by the search result.\",\n \"id\": \"SearchResultSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the search result. 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.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the search result.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"A description - of the search result.\"\n },\n \"channelId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"liveBroadcastContent\": {\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"type\": \"string\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ]\n },\n \"publishedAt\": {\n \"description\": - \"The creation date and time of the resource that the search result identifies.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"The title of the channel that published the resource that the search result - identifies.\"\n }\n }\n },\n \"LiveChatBan\": {\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the ban.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"default\": - \"youtube#liveChatBan\"\n }\n },\n \"id\": \"LiveChatBan\"\n - \ },\n \"CommentThreadReplies\": {\n \"id\": \"CommentThreadReplies\",\n - \ \"properties\": {\n \"comments\": {\n \"description\": - \"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.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Comment\"\n }\n }\n },\n \"type\": - \"object\",\n \"description\": \"Comments written in (direct or indirect) - reply to the top level comment.\"\n },\n \"MemberSnippet\": {\n \"properties\": - {\n \"membershipsDetails\": {\n \"description\": \"Details - about the user's membership.\",\n \"$ref\": \"MembershipsDetails\"\n - \ },\n \"memberDetails\": {\n \"description\": \"Details - about the member.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n - \ \"creatorChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The id of the channel that's offering memberships.\"\n }\n },\n - \ \"id\": \"MemberSnippet\",\n \"type\": \"object\"\n },\n \"ChannelSectionTargeting\": - {\n \"description\": \"ChannelSection targeting setting.\",\n \"properties\": - {\n \"countries\": {\n \"type\": \"array\",\n \"description\": - \"The country the channel section is targeting.\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n },\n \"languages\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The language the channel section is targeting.\",\n - \ \"type\": \"array\"\n },\n \"regions\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The region the channel section is targeting.\",\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"ChannelSectionTargeting\",\n \"type\": - \"object\"\n },\n \"SubscriptionSubscriberSnippet\": {\n \"description\": - \"Basic details about a subscription's subscriber including title, description, - channel ID and thumbnails.\",\n \"properties\": {\n \"channelId\": - {\n \"description\": \"The channel ID of the subscriber.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the subscriber.\"\n },\n - \ \"thumbnails\": {\n \"description\": \"Thumbnails for this - subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"title\": - {\n \"description\": \"The title of the subscriber.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"type\": \"object\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\",\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ },\n \"label\": {\n \"description\": \"The localized - label for this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"PlaylistLocalization\": {\n \"description\": - \"Playlist localization setting\",\n \"id\": \"PlaylistLocalization\",\n - \ \"properties\": {\n \"description\": {\n \"description\": - \"The localized strings for playlist's description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for playlist's title.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The `visitorId` - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of valid abuse reasons that are used with `video.ReportAbuse`.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ }\n }\n }\n },\n \"LiveChatTextMessageDetails\": - {\n \"id\": \"LiveChatTextMessageDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"messageText\": {\n \"type\": \"string\",\n - \ \"description\": \"The user's message.\"\n }\n }\n },\n - \ \"PlaylistItemListResponse\": {\n \"id\": \"PlaylistItemListResponse\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of playlist items that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n }\n }\n },\n - \ \"type\": \"object\"\n },\n \"SubscriptionListResponse\": {\n - \ \"id\": \"SubscriptionListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"default\": \"youtube#subscriptionListResponse\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"items\": {\n - \ \"description\": \"A list of subscriptions that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Subscription\"\n }\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n }\n },\n \"LiveBroadcastStatistics\": {\n \"properties\": - {\n \"concurrentViewers\": {\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"totalChatCount\": {\n - \ \"description\": \"The total number of live chat messages currently - on the broadcast. The property and its value will be present if the broadcast - is public, has the live chat feature enabled, and has at least one message. - Note that this field will not be filled after the broadcast ends. So this - property would not identify the number of chat messages for an archived video - of a completed live broadcast.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Statistics about the live broadcast. These represent a snapshot of the values - at the time of the request. Statistics are only returned for live broadcasts.\",\n - \ \"id\": \"LiveBroadcastStatistics\"\n },\n \"Thumbnail\": {\n - \ \"description\": \"A thumbnail is an image representing a YouTube resource.\",\n - \ \"properties\": {\n \"width\": {\n \"description\": - \"(Optional) Width of the thumbnail image.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"height\": {\n \"description\": - \"(Optional) Height of the thumbnail image.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"url\": {\n \"type\": - \"string\",\n \"description\": \"The thumbnail image's URL.\"\n }\n - \ },\n \"id\": \"Thumbnail\",\n \"type\": \"object\"\n },\n - \ \"VideoSuggestionsTagSuggestion\": {\n \"properties\": {\n \"categoryRestricts\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A set of video - categories for which the tag is relevant. You can use this information to - display appropriate tag suggestions based on the video category that the video - uploader associates with the video. By default, tag suggestions are relevant - for all categories if there are no restricts defined for the keyword.\"\n - \ },\n \"tag\": {\n \"type\": \"string\",\n \"description\": - \"The keyword tag suggested for the video.\"\n }\n },\n \"id\": - \"VideoSuggestionsTagSuggestion\",\n \"description\": \"A single tag - suggestion with it's relevance information.\",\n \"type\": \"object\"\n - \ },\n \"AbuseType\": {\n \"id\": \"AbuseType\",\n \"type\": - \"object\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\"\n }\n }\n },\n \"PlaylistItemContentDetails\": - {\n \"id\": \"PlaylistItemContentDetails\",\n \"properties\": {\n - \ \"endAt\": {\n \"description\": \"The time, measured in seconds - from the start of the video, when the video should stop playing. (The playlist - owner can specify the times when the video should start and stop playing when - the video is played in the context of the playlist.) By default, assume that - the video.endTime is the end of the video.\",\n \"type\": \"string\"\n - \ },\n \"videoPublishedAt\": {\n \"description\": \"The - date and time that the video was published to YouTube.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"note\": - {\n \"type\": \"string\",\n \"description\": \"A user-generated - note for this item.\"\n },\n \"startAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify a video. To retrieve the video - resource, set the id query parameter to this value in your API request.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"Details about a channel bulletin post.\",\n \"type\": - \"object\"\n },\n \"VideoLiveStreamingDetails\": {\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"scheduledEndTime\": - {\n \"description\": \"The time that the broadcast is scheduled to - end. If the value is empty or the property is not present, then the broadcast - is scheduled to contiue indefinitely.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"actualEndTime\": - {\n \"description\": \"The time that the broadcast actually ended. - This value will not be available until the broadcast is over.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"scheduledStartTime\": - {\n \"description\": \"The time that the broadcast is scheduled to - begin.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"actualStartTime\": {\n \"description\": \"The - time that the broadcast actually started. This value will not be available - until the broadcast begins.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"concurrentViewers\": {\n \"type\": - \"string\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"format\": \"uint64\"\n },\n \"activeLiveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the currently active live chat attached to this video. This field is filled - only if the video is a currently live broadcast that has live chat. Once the - broadcast transitions to complete this field will be removed and the live - chat closed down. For persistent broadcasts that live chat id will no longer - be tied to this video but rather to the new video being displayed at the persistent - page.\"\n }\n },\n \"description\": \"Details about the live - streaming metadata.\"\n },\n \"MembershipsDetails\": {\n \"properties\": - {\n \"membershipsDuration\": {\n \"description\": \"Data about - memberships duration without taking into consideration pricing levels.\",\n - \ \"$ref\": \"MembershipsDuration\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"description\": \"Display name for the highest level that the - user has access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"membershipsDurationAtLevels\": {\n \"items\": {\n \"$ref\": - \"MembershipsDurationAtLevel\"\n },\n \"type\": \"array\",\n - \ \"description\": \"Data about memberships duration on particular - pricing levels.\"\n },\n \"accessibleLevels\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\",\n - \ \"type\": \"array\"\n },\n \"highestAccessibleLevel\": - {\n \"description\": \"Id of the highest level that the user has - access to at the moment.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"MembershipsDetails\"\n },\n - \ \"PlaylistPlayer\": {\n \"id\": \"PlaylistPlayer\",\n \"type\": - \"object\",\n \"properties\": {\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that - embeds a player that will play the playlist.\"\n }\n }\n },\n - \ \"ChannelBrandingSettings\": {\n \"description\": \"Branding properties - of a YouTube channel.\",\n \"properties\": {\n \"watch\": {\n - \ \"$ref\": \"WatchSettings\",\n \"description\": \"Branding - properties for the watch page.\"\n },\n \"hints\": {\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n },\n \"description\": - \"Additional experimental branding properties.\",\n \"type\": \"array\"\n - \ },\n \"image\": {\n \"$ref\": \"ImageSettings\",\n - \ \"description\": \"Branding properties for branding images.\"\n - \ },\n \"channel\": {\n \"$ref\": \"ChannelSettings\",\n - \ \"description\": \"Branding properties for the channel view.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelBrandingSettings\"\n - \ },\n \"ChannelSettings\": {\n \"id\": \"ChannelSettings\",\n \"description\": - \"Branding properties for the channel view.\",\n \"properties\": {\n - \ \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"showBrowseView\": {\n - \ \"description\": \"Whether the tab to browse the videos should be - displayed.\",\n \"type\": \"boolean\"\n },\n \"profileColor\": - {\n \"description\": \"A prominent color that can be rendered on - this channel page.\",\n \"type\": \"string\"\n },\n \"moderateComments\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - user-submitted comments left on the channel page need to be approved by the - channel owner to be publicly visible.\"\n },\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"featuredChannelsUrls\": - {\n \"description\": \"The list of featured channels.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"defaultTab\": {\n \"description\": \"Which - content tab users should see when viewing the channel.\",\n \"type\": - \"string\"\n },\n \"unsubscribedTrailer\": {\n \"type\": - \"string\",\n \"description\": \"The trailer of the channel, for - users that are not subscribers.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"type\": \"string\",\n \"description\": \"The ID for - a Google Analytics account to track and measure traffic to the channels.\"\n - \ },\n \"description\": {\n \"description\": \"Specifies - the channel description.\",\n \"type\": \"string\"\n },\n - \ \"featuredChannelsTitle\": {\n \"type\": \"string\",\n \"description\": - \"Title for the featured channels tab.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the channel title.\"\n - \ },\n \"keywords\": {\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"IngestionInfo\": - {\n \"properties\": {\n \"streamName\": {\n \"description\": - \"The stream name that YouTube assigns to the video stream.\",\n \"type\": - \"string\"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of backupIngestionAddress in order to stream via RTMPS. Not applicable to - non-RTMP streams.\"\n },\n \"rtmpsIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\"\n },\n \"backupIngestionAddress\": {\n \"description\": - \"The backup ingestion URL that you should use to stream video to YouTube. - You have the option of simultaneously streaming the content that you are sending - to the ingestionAddress to this URL.\",\n \"type\": \"string\"\n - \ },\n \"ingestionAddress\": {\n \"description\": \"The - primary ingestion URL that you should use to stream video to YouTube. You - must stream video to this URL. Depending on which application or tool you - use to encode your video stream, you may need to enter the stream URL and - stream name separately or you may need to concatenate them in the following - format: *STREAM_URL/STREAM_NAME* \",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"IngestionInfo\",\n \"description\": \"Describes - information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"type\": - \"object\"\n },\n \"RelatedEntity\": {\n \"id\": \"RelatedEntity\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"entity\": - {\n \"$ref\": \"Entity\"\n }\n }\n },\n \"ThumbnailSetResponse\": - {\n \"type\": \"object\",\n \"id\": \"ThumbnailSetResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thumbnailSetResponse\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - thumbnails.\",\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n - \ }\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ActivityContentDetailsSubscription\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsSubscription\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\"\n }\n },\n \"description\": - \"Information about a channel that a user subscribed to.\"\n },\n \"ChannelSectionSnippet\": - {\n \"properties\": {\n \"style\": {\n \"description\": - \"The style of the channel section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"type\": - {\n \"description\": \"The type of the channel section.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ]\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the channel section's default title and description.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"The channel section's title for multiple_playlists and multiple_channels.\",\n - \ \"type\": \"string\"\n },\n \"position\": {\n \"description\": - \"The position of the channel section in the channel.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the channel section.\"\n - \ },\n \"localized\": {\n \"description\": \"Localized - title, read-only.\",\n \"$ref\": \"ChannelSectionLocalization\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelSectionSnippet\",\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\"\n },\n \"SearchResult\": {\n \"id\": - \"SearchResult\",\n \"description\": \"A search result contains information - about a YouTube video, channel, or playlist that matches the search parameters - specified in an API request. While a search result points to a uniquely identifiable - resource, like a video, it does not have its own persistent data.\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#searchResult\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The id object - contains information that can be used to uniquely identify the resource that - matches the search request.\",\n \"$ref\": \"ResourceId\"\n },\n - \ \"snippet\": {\n \"$ref\": \"SearchResultSnippet\",\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"CommentListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"default\": \"youtube#commentListResponse\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of comments that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"CommentListResponse\"\n },\n \"ChannelSnippet\": - {\n \"id\": \"ChannelSnippet\",\n \"properties\": {\n \"customUrl\": - {\n \"description\": \"The custom url of the channel.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\"\n },\n \"description\": {\n - \ \"description\": \"The description of the channel.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the channel - was created.\",\n \"type\": \"string\"\n },\n \"country\": - {\n \"type\": \"string\",\n \"description\": \"The country - of the channel.\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the channel's default title and description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - channel's title.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Basic details about a channel, including title, description - and thumbnails.\",\n \"type\": \"object\"\n },\n \"SuperChatEventListResponse\": - {\n \"id\": \"SuperChatEventListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"SuperChatEvent\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of Super Chat purchases that match the request criteria.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"default\": \"youtube#superChatEventListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n }\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"properties\": {\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The amount of the fund.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatFanFundingEventDetails\"\n },\n \"InvideoBranding\": - {\n \"properties\": {\n \"imageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The url of the uploaded image. Only used in apiary - to api communication.\"\n },\n \"timing\": {\n \"$ref\": - \"InvideoTiming\",\n \"description\": \"The temporal position within - the video where watermark will be displayed.\"\n },\n \"position\": - {\n \"$ref\": \"InvideoPosition\",\n \"description\": \"The - spatial position within the video where the branding watermark will be displayed.\"\n - \ },\n \"targetChannelId\": {\n \"description\": \"The - channel to which this branding links. If not present it defaults to the current - channel.\",\n \"type\": \"string\"\n },\n \"imageBytes\": - {\n \"description\": \"The bytes the uploaded image. Only used in - api to youtube communication.\",\n \"type\": \"string\",\n \"format\": - \"byte\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"LINT.IfChange Describes an invideo branding.\",\n \"id\": \"InvideoBranding\"\n - \ },\n \"LiveChatModeratorListResponse\": {\n \"id\": \"LiveChatModeratorListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveChatModeratorListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"description\": - \"A list of moderators that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"type\": - \"array\"\n }\n }\n },\n \"ChannelContentDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"type\": \"object\",\n \"properties\": {\n \"uploads\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s uploaded videos. Use the videos.insert method to upload new videos - and the videos.delete method to delete previously uploaded videos.\",\n \"type\": - \"string\"\n },\n \"watchLater\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\",\n \"type\": \"string\"\n },\n \"likes\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"watchHistory\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"favorites\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n }\n }\n - \ }\n },\n \"id\": \"ChannelContentDetails\",\n \"description\": - \"Details about the content of a channel.\"\n },\n \"VideoGetRatingResponse\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoGetRatingResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of ratings that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"VideoRating\"\n }\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoGetRatingResponse\"\n - \ },\n \"SearchListResponse\": {\n \"id\": \"SearchListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"regionCode\": {\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"Pagination - information for token pagination.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SearchResult\"\n }\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"default\": \"youtube#searchListResponse\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n }\n },\n \"LiveStreamContentDetails\": - {\n \"properties\": {\n \"closedCaptionsIngestionUrl\": {\n \"description\": - \"The ingestion URL where the closed captions of this stream are sent.\",\n - \ \"type\": \"string\"\n },\n \"isReusable\": {\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \",\n \"type\": \"boolean\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Detailed settings of a stream.\",\n - \ \"id\": \"LiveStreamContentDetails\"\n },\n \"PlaylistItem\": - {\n \"type\": \"object\",\n \"description\": \"A *playlistItem* - resource identifies another resource, such as a video, that is included in - a playlist. In addition, the playlistItem resource contains details about - the included resource that pertain specifically to how that resource is used - in that playlist. YouTube uses playlists to identify special collections of - videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods. For example, if - a user gives a positive rating to a video, you would insert that video into - the liked videos playlist for that user's channel.\",\n \"properties\": - {\n \"contentDetails\": {\n \"$ref\": \"PlaylistItemContentDetails\",\n - \ \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistItemSnippet\",\n \"description\": \"The snippet object - contains basic details about the playlist item, such as its title and position - in the playlist.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the playlist item.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the playlist item's privacy status.\",\n \"$ref\": - \"PlaylistItemStatus\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlistItem\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"PlaylistItem\"\n - \ },\n \"VideoAbuseReportReasonSnippet\": {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"properties\": {\n \"label\": {\n \"description\": - \"The localized label belonging to this abuse report reason.\",\n \"type\": - \"string\"\n },\n \"secondaryReasons\": {\n \"type\": - \"array\",\n \"description\": \"The secondary reasons associated - with this reason, if any are available. (There might be 0 or more.)\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n }\n - \ }\n },\n \"description\": \"Basic details about a video - category, such as its localized title.\",\n \"type\": \"object\"\n },\n - \ \"Video\": {\n \"description\": \"A *video* resource represents a - YouTube video.\",\n \"properties\": {\n \"fileDetails\": {\n \"$ref\": - \"VideoFileDetails\",\n \"description\": \"The fileDetails object - encapsulates information about the video file that was uploaded to YouTube, - including the file's resolution, duration, audio and video codecs, stream - bitrates, and more. This data can only be retrieved by the video owner.\"\n - \ },\n \"statistics\": {\n \"$ref\": \"VideoStatistics\",\n - \ \"description\": \"The statistics object contains statistics about - the video.\"\n },\n \"processingDetails\": {\n \"$ref\": - \"VideoProcessingDetails\",\n \"description\": \"The processingDetails - object encapsulates information about YouTube's progress in processing the - uploaded video file. The properties in the object identify the current processing - status and an estimate of the time remaining until YouTube finishes processing - the video. This part also indicates whether different types of data or content, - such as file details or thumbnail images, are available for the video. The - processingProgress object is designed to be polled so that the video uploaded - can track the progress that YouTube has made in processing the uploaded video - file. This data can only be retrieved by the video owner.\"\n },\n - \ \"ageGating\": {\n \"description\": \"Age restriction details - related to a video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoAgeGating\"\n },\n \"snippet\": {\n - \ \"$ref\": \"VideoSnippet\",\n \"description\": \"The snippet - object contains basic details about the video, such as its title, description, - and category.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information about the video content, - including the length of the video and its aspect ratio.\",\n \"$ref\": - \"VideoContentDetails\"\n },\n \"liveStreamingDetails\": {\n - \ \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"topicDetails\": - {\n \"$ref\": \"VideoTopicDetails\",\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\"\n },\n \"projectDetails\": {\n \"description\": - \"The projectDetails object contains information about the project specific - video metadata. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"id\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n }\n },\n \"player\": {\n \"$ref\": - \"VideoPlayer\",\n \"description\": \"The player object contains - information that you would use to play the video in an embedded player.\"\n - \ },\n \"suggestions\": {\n \"description\": \"The suggestions - object encapsulates suggestions that identify opportunities to improve the - video quality or the metadata for the uploaded video. This data can only be - retrieved by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n - \ },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\"\n },\n \"status\": {\n \"$ref\": - \"VideoStatus\",\n \"description\": \"The status object contains - information about the video's uploading, processing, and privacy statuses.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"recordingDetails\": - {\n \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\",\n \"$ref\": - \"VideoRecordingDetails\"\n },\n \"monetizationDetails\": {\n - \ \"$ref\": \"VideoMonetizationDetails\",\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#video\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\"\n - \ }\n },\n \"id\": \"Video\",\n \"type\": \"object\"\n - \ },\n \"LiveStreamStatus\": {\n \"description\": \"Brief description - of the live stream status.\",\n \"properties\": {\n \"healthStatus\": - {\n \"description\": \"The health status of the stream.\",\n \"$ref\": - \"LiveStreamHealthStatus\"\n },\n \"streamStatus\": {\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"id\": \"LiveStreamStatus\",\n \"type\": \"object\"\n - \ },\n \"GeoPoint\": {\n \"properties\": {\n \"longitude\": - {\n \"description\": \"Longitude in degrees.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n },\n \"latitude\": - {\n \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"Latitude in degrees.\"\n },\n \"altitude\": {\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\",\n \"type\": - \"number\",\n \"format\": \"double\"\n }\n },\n \"id\": - \"GeoPoint\",\n \"type\": \"object\",\n \"description\": \"Geographical - coordinates of a point, in WGS84.\"\n },\n \"LiveStreamHealthStatus\": - {\n \"properties\": {\n \"configurationIssues\": {\n \"description\": - \"The configurations issues on this stream\",\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n },\n \"type\": \"array\"\n - \ },\n \"status\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"good\",\n - \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n - \ ],\n \"description\": \"The status code of this stream\"\n - \ },\n \"lastUpdateTimeSeconds\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The last time this status was updated (in seconds)\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamHealthStatus\"\n },\n \"CommentThreadListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#commentThreadListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"CommentThread\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of comment threads that match the request criteria.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"id\": \"CommentThreadListResponse\",\n \"type\": \"object\"\n - \ },\n \"I18nRegionSnippet\": {\n \"properties\": {\n \"gl\": - {\n \"type\": \"string\",\n \"description\": \"The region - code as a 2-letter ISO country code.\"\n },\n \"name\": {\n - \ \"description\": \"The human-readable name of the region.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"I18nRegionSnippet\",\n \"description\": - \"Basic details about an i18n region, such as region code and human-readable - name.\",\n \"type\": \"object\"\n },\n \"ChannelTopicDetails\": - {\n \"description\": \"Freebase topic information related to the channel.\",\n - \ \"properties\": {\n \"topicIds\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\",\n \"type\": - \"array\"\n },\n \"topicCategories\": {\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"id\": \"ChannelTopicDetails\",\n \"type\": - \"object\"\n },\n \"ChannelConversionPings\": {\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"type\": \"object\",\n - \ \"id\": \"ChannelConversionPings\",\n \"properties\": {\n \"pings\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n },\n \"description\": \"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.\"\n }\n }\n },\n \"PlaylistListResponse\": {\n \"id\": - \"PlaylistListResponse\",\n \"properties\": {\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"description\": \"A list of playlists that - match the request criteria\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Playlist\"\n }\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n \"default\": - \"youtube#playlistListResponse\",\n \"type\": \"string\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"AccessPolicy\": - {\n \"properties\": {\n \"exception\": {\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"allowed\": - {\n \"description\": \"The value of allowed indicates whether the - access to the policy is allowed or denied by default.\",\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"AccessPolicy\",\n \"description\": \"Rights management policy for YouTube - resources.\"\n },\n \"VideoCategorySnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoCategorySnippet\",\n \"description\": \"Basic details - about a video category, such as its localized title.\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The video category's - title.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n - \ \"description\": \"The YouTube channel that created the video category.\"\n - \ },\n \"assignable\": {\n \"type\": \"boolean\"\n }\n - \ }\n },\n \"InvideoTiming\": {\n \"id\": \"InvideoTiming\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"durationMs\": - {\n \"description\": \"Defines the duration in milliseconds for which - the promotion should be displayed. If missing, the client should use the default.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"description\": \"Describes a timing type. - If the value is offsetFromStart, then the offsetMs field represents an offset - from the start of the video. If the value is offsetFromEnd, then the offsetMs - field represents an offset from the end of the video.\",\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ]\n },\n \"offsetMs\": {\n \"format\": - \"uint64\",\n \"description\": \"Defines the time at which the promotion - will appear. Depending on the value of type the value of the offsetMs field - will represent a time offset from the start or from the end of the video, - expressed in milliseconds.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Describes a temporal position of a visual - widget inside a video.\"\n },\n \"ActivityContentDetailsLike\": {\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the rated resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsLike\",\n \"description\": \"Information - about a resource that received a positive (like) rating.\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"giftMembershipsCount\": - {\n \"format\": \"int32\",\n \"description\": \"The number - of gift memberships purchased by the user.\",\n \"type\": \"integer\"\n - \ },\n \"giftMembershipsLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\"\n }\n - \ },\n \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n \"VideoProjectDetails\": - {\n \"description\": \"DEPRECATED. b/157517979: This part was never populated - after it was added. However, it sees non-zero traffic because there is generated - client code in the wild that refers to it [1]. We keep this field and do NOT - remove it because otherwise V3 would return an error when this part gets requested - [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"properties\": {},\n \"id\": \"VideoProjectDetails\",\n \"type\": - \"object\"\n },\n \"I18nLanguageSnippet\": {\n \"properties\": - {\n \"name\": {\n \"description\": \"The human-readable name - of the language in the language itself.\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\"\n }\n - \ },\n \"description\": \"Basic details about an i18n language, such - as language code and human-readable name.\",\n \"type\": \"object\",\n - \ \"id\": \"I18nLanguageSnippet\"\n },\n \"LocalizedString\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"value\": {\n - \ \"type\": \"string\"\n },\n \"language\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LocalizedString\"\n },\n - \ \"ChannelToStoreLinkDetails\": {\n \"properties\": {\n \"merchantId\": - {\n \"description\": \"Google Merchant Center id of the store.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"storeUrl\": {\n \"description\": \"Landing page of the - store.\",\n \"type\": \"string\"\n },\n \"storeName\": - {\n \"description\": \"Name of the store.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"type\": \"object\"\n },\n - \ \"VideoFileDetails\": {\n \"description\": \"Describes original video - file properties, including technical details about audio and video streams, - but also metadata information like content length, digitization time, or geotagging - information.\",\n \"properties\": {\n \"durationMs\": {\n \"type\": - \"string\",\n \"description\": \"The length of the uploaded video - in milliseconds.\",\n \"format\": \"uint64\"\n },\n \"fileName\": - {\n \"type\": \"string\",\n \"description\": \"The uploaded - file's name. This field is present whether a video file or another type of - file was uploaded.\"\n },\n \"container\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded video file's container - format.\"\n },\n \"bitrateBps\": {\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"fileType\": {\n \"enumDescriptions\": [\n \"Known - video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an - MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ],\n \"description\": \"The uploaded file's type as detected - by YouTube's video processing engine. Currently, YouTube only processes video - files, but this field is present whether a video file or another type of file - was uploaded.\"\n },\n \"videoStreams\": {\n \"type\": - \"array\",\n \"description\": \"A list of video streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about a video stream.\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ }\n },\n \"audioStreams\": {\n \"type\": - \"array\",\n \"description\": \"A list of audio streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about an audio stream.\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ }\n },\n \"fileSize\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - file's size in bytes. This field is present whether a video file or another - type of file was uploaded.\"\n },\n \"creationTime\": {\n \"description\": - \"The date and time when the uploaded video file was created. The value is - specified in ISO 8601 format. Currently, the following ISO 8601 formats are - supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time - with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoFileDetails\"\n - \ },\n \"ActivityContentDetails\": {\n \"properties\": {\n \"playlistItem\": - {\n \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"subscription\": {\n \"description\": \"The - subscription object contains information about a channel that a user subscribed - to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"favorite\": - {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n \"description\": - \"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.\"\n - \ },\n \"channelItem\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsChannelItem\"\n },\n \"promotedItem\": - {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n \"description\": - \"The promotedItem object contains details about a resource which is being - promoted. This property is only present if the snippet.type is promotedItem.\"\n - \ },\n \"social\": {\n \"description\": \"The social - object contains details about a social network post. This property is only - present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\"\n },\n \"upload\": {\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n },\n \"like\": {\n \"description\": \"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.\",\n - \ \"$ref\": \"ActivityContentDetailsLike\"\n },\n \"comment\": - {\n \"$ref\": \"ActivityContentDetailsComment\",\n \"description\": - \"The comment object contains information about a resource that received a - comment. This property is only present if the snippet.type is comment.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetails\",\n - \ \"description\": \"Details about the content of an activity: the video - that was shared, the channel that was subscribed to, etc.\"\n },\n \"InvideoPosition\": - {\n \"id\": \"InvideoPosition\",\n \"type\": \"object\",\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"properties\": {\n \"type\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"corner\"\n ],\n \"description\": - \"Defines the position type.\",\n \"enumDescriptions\": [\n \"\"\n - \ ]\n },\n \"cornerPosition\": {\n \"enum\": - [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n - \ \"bottomRight\"\n ],\n \"description\": \"Describes - in which corner of the video the visual widget will appear.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n }\n },\n - \ \"ActivityListResponse\": {\n \"id\": \"ActivityListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#activityListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Activity\"\n - \ },\n \"type\": \"array\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoRating\": - {\n \"type\": \"object\",\n \"id\": \"VideoRating\",\n \"properties\": - {\n \"rating\": {\n \"description\": \"Rating of a video.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - rating of a video.\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n \"properties\": - {\n \"allowed\": {\n \"description\": \"A list of region codes - that identify countries where the video is viewable. If this property is present - and a country is not listed in its value, then the video is blocked from appearing - in that country. If this property is present and contains an empty list, the - video is blocked in all countries.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"blocked\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of region codes - that identify countries where the video is blocked. If this property is present - and a country is not listed in its value, then the video is viewable in that - country. If this property is present and contains an empty list, the video - is viewable in all countries.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"DEPRECATED Region restriction of the video.\"\n },\n - \ \"ThumbnailDetails\": {\n \"properties\": {\n \"medium\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The medium - quality image for this resource.\"\n },\n \"default\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The default image for this resource.\"\n - \ },\n \"standard\": {\n \"description\": \"The standard - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"maxres\": {\n \"description\": \"The maximum resolution - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"high\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The high quality image for this resource.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Internal representation of thumbnails - for a YouTube resource.\",\n \"id\": \"ThumbnailDetails\"\n },\n \"CommentThread\": - {\n \"properties\": {\n \"replies\": {\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentThread\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"CommentThreadSnippet\",\n \"description\": \"The snippet object - contains basic details about the comment thread and also the top level comment.\"\n - \ }\n },\n \"description\": \"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.\",\n \"type\": - \"object\",\n \"id\": \"CommentThread\"\n },\n \"Comment\": {\n - \ \"description\": \"A *comment* represents a single YouTube comment.\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the comment.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#comment\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the comment.\",\n \"$ref\": \"CommentSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"Comment\",\n \"type\": \"object\"\n },\n \"I18nLanguage\": {\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#i18nLanguage\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the i18n language.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"I18nLanguage\",\n \"description\": - \"An *i18nLanguage* resource identifies a UI language currently supported - by YouTube.\"\n },\n \"Caption\": {\n \"type\": \"object\",\n \"description\": - \"A *caption* resource represents a YouTube caption track. A caption track - is associated with exactly one YouTube video.\",\n \"properties\": {\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the caption track.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n }\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n \"default\": - \"youtube#caption\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n }\n - \ },\n \"id\": \"Caption\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"id\": \"ActivityContentDetailsRecommendation\",\n \"type\": - \"object\",\n \"description\": \"Information that identifies the recommended - resource.\",\n \"properties\": {\n \"reason\": {\n \"description\": - \"The reason that the resource is recommended to the user.\",\n \"enum\": - [\n \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"seedResourceId\": - {\n \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\",\n \"$ref\": - \"ResourceId\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\",\n \"$ref\": \"ResourceId\"\n }\n }\n },\n - \ \"ResourceId\": {\n \"description\": \"A resource id is a generic - reference that points to another YouTube resource.\",\n \"properties\": - {\n \"videoId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a video. - This property is only present if the resourceId.kind value is youtube#video.\",\n - \ \"type\": \"string\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a playlist. This property - is only present if the resourceId.kind value is youtube#playlist.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"The type of the API resource.\"\n },\n \"channelId\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the referred resource, if that resource is a channel. This property is only - present if the resourceId.kind value is youtube#channel.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ResourceId\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"Video processing progress and completion time estimate.\",\n - \ \"properties\": {\n \"timeLeftMs\": {\n \"type\": \"string\",\n - \ \"description\": \"An estimate of the amount of time, in millseconds, - that YouTube needs to finish processing the video.\",\n \"format\": - \"uint64\"\n },\n \"partsProcessed\": {\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"partsTotal\": {\n \"format\": \"uint64\",\n \"description\": - \"An estimate of the total number of parts that need to be processed for the - video. The number may be updated with more precise estimates while YouTube - processes the video.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatModeratorSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatModeratorSnippet\",\n \"properties\": {\n \"moderatorDetails\": - {\n \"description\": \"Details about the moderator.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"liveChatId\": {\n \"description\": - \"The ID of the live chat this moderator can act on.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveStreamListResponse\": {\n - \ \"id\": \"LiveStreamListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"default\": \"youtube#liveStreamListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveStream\"\n },\n \"description\": \"A list of live - streams that match the request criteria.\",\n \"type\": \"array\"\n - \ }\n }\n },\n \"ThirdPartyLink\": {\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the third- party account link.\",\n \"$ref\": - \"ThirdPartyLinkSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"default\": \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"status\": {\n \"$ref\": - \"ThirdPartyLinkStatus\",\n \"description\": \"The status object - contains information about the status of the link.\"\n },\n \"linkingToken\": - {\n \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"A *third party account - link* resource represents a link between a YouTube account or a channel and - an account on a third-party service.\",\n \"id\": \"ThirdPartyLink\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMessageSnippet\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatMessageSnippet\",\n \"description\": - \"Next ID: 33\",\n \"properties\": {\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"superChatDetails\": - {\n \"description\": \"Details about the Super Chat event, this is - only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n - \ },\n \"textMessageDetails\": {\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\",\n - \ \"$ref\": \"LiveChatTextMessageDetails\"\n },\n \"authorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that authored this message, this field is not always filled. textMessageEvent - - the user that wrote the message fanFundingEvent - the user that funded the - broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n },\n \"superStickerDetails\": - {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\"\n - \ },\n \"memberMilestoneChatDetails\": {\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\",\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"newSponsorDetails\": {\n \"description\": \"Details - about the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. - Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n - \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\",\n \"type\": \"string\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"displayMessage\": {\n \"type\": \"string\",\n \"description\": - \"Contains a string that can be displayed to the user. If this field is not - present the message is silent, at the moment only messages of type TOMBSTONE - and CHAT_ENDED_EVENT are silent.\"\n },\n \"hasDisplayContent\": - {\n \"description\": \"Whether the message has display content that - should be displayed to users.\",\n \"type\": \"boolean\"\n },\n - \ \"fanFundingEventDetails\": {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n - \ \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the message was orignally published.\",\n \"format\": - \"date-time\"\n },\n \"liveChatId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"VideoPlayer\": {\n \"type\": - \"object\",\n \"description\": \"Player to be used for a video playback.\",\n - \ \"id\": \"VideoPlayer\",\n \"properties\": {\n \"embedHeight\": - {\n \"type\": \"string\",\n \"format\": \"int64\"\n },\n - \ \"embedWidth\": {\n \"description\": \"The embed width\",\n - \ \"type\": \"string\",\n \"format\": \"int64\"\n },\n - \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\"\n - \ }\n }\n },\n \"PlaylistSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"channelTitle\": {\n \"description\": - \"The channel title of the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the playlist's default - title and description.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The playlist's description.\"\n - \ },\n \"thumbnailVideoId\": {\n \"type\": \"string\",\n - \ \"description\": \"Note: if the playlist has a custom thumbnail, - this field will not be populated. The video id selected by the user that will - be used as the thumbnail of this playlist. This field defaults to the first - publicly viewable video in the playlist, if: 1. The user has never selected - a video to be the thumbnail of the playlist. 2. The user selects a video to - be the thumbnail, and then removes that video from the playlist. 3. The user - selects a non-owned video to be the thumbnail, but that video becomes private, - or gets deleted.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the playlist was created.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"tags\": - {\n \"description\": \"Keyword tags associated with the playlist.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that published the playlist.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The playlist's - title.\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist. 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.\"\n }\n },\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails.\",\n \"id\": - \"PlaylistSnippet\"\n },\n \"VideoListResponse\": {\n \"properties\": - {\n \"items\": {\n \"items\": {\n \"$ref\": \"Video\"\n - \ },\n \"type\": \"array\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"default\": \"youtube#videoListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoListResponse\"\n },\n \"MembershipsDuration\": {\n \"type\": - \"object\",\n \"id\": \"MembershipsDuration\",\n \"properties\": - {\n \"memberTotalDurationMonths\": {\n \"description\": \"The - cumulative time the user has been a member across all levels in complete months - (the time is rounded down to the nearest integer).\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n },\n \"memberSince\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the user became a continuous member across all levels.\"\n }\n - \ }\n },\n \"TokenPagination\": {\n \"properties\": {},\n \"description\": - \"Stub token pagination template to suppress results.\",\n \"type\": - \"object\",\n \"id\": \"TokenPagination\"\n },\n \"CommentSnippet\": - {\n \"properties\": {\n \"parentId\": {\n \"description\": - \"The unique id of the parent comment, only set for replies.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the comment was originally published.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"canRate\": {\n \"description\": - \"Whether the current viewer can rate this comment.\",\n \"type\": - \"boolean\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the video the comment refers to, if - any.\"\n },\n \"textDisplay\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"authorChannelId\": {\n \"$ref\": - \"CommentSnippetAuthorChannelId\"\n },\n \"likeCount\": {\n - \ \"description\": \"The total number of likes this comment has received.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"authorChannelUrl\": {\n \"type\": \"string\",\n \"description\": - \"Link to the author's YouTube channel, if any.\"\n },\n \"moderationStatus\": - {\n \"type\": \"string\",\n \"description\": \"The comment's - moderation status. Will not be set if the comments were requested through - the id filter.\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"textOriginal\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"updatedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was last updated.\"\n - \ },\n \"viewerRating\": {\n \"description\": \"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.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n }\n },\n \"description\": - \"Basic details about a comment, such as its author and text.\",\n \"id\": - \"CommentSnippet\",\n \"type\": \"object\"\n },\n \"LiveChatBanSnippet\": - {\n \"properties\": {\n \"liveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The chat this ban is pertinent to.\"\n - \ },\n \"banDurationSeconds\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The duration - of a ban, only filled if the ban has type TEMPORARY.\"\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"An invalid ban type.\",\n - \ \"A permanent ban.\",\n \"A temporary ban.\"\n ],\n - \ \"description\": \"The type of ban.\",\n \"enum\": [\n - \ \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatBanSnippet\"\n - \ },\n \"CaptionSnippet\": {\n \"type\": \"object\",\n \"id\": - \"CaptionSnippet\",\n \"properties\": {\n \"isAutoSynced\": {\n - \ \"type\": \"boolean\",\n \"description\": \"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.\"\n - \ },\n \"isEasyReader\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n },\n \"language\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\"\n },\n \"status\": {\n \"description\": \"The - caption track's status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ]\n },\n \"isDraft\": {\n - \ \"type\": \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n },\n \"isCC\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the track contains - closed captions for the deaf and hard of hearing. The default value is false.\"\n - \ },\n \"name\": {\n \"description\": \"The name of - the caption track. The name is intended to be visible to the user as an option - during playback.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"audioTrackType\": {\n \"description\": - \"The type of audio track associated with the caption track.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ]\n },\n \"lastUpdated\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the caption track was last updated.\",\n \"format\": - \"date-time\"\n },\n \"isLarge\": {\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\",\n \"type\": \"boolean\"\n },\n - \ \"trackKind\": {\n \"enum\": [\n \"standard\",\n - \ \"ASR\",\n \"forced\"\n ],\n \"description\": - \"The caption track's type.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"failureReason\": {\n \"type\": \"string\",\n \"enum\": - [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The reason that - YouTube failed to process the caption track. This property is only present - if the state property's value is failed.\"\n },\n \"videoId\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video associated with - the caption track. @mutable youtube.captions.insert\"\n }\n },\n - \ \"description\": \"Basic details about a caption track, such as its - language and name.\"\n },\n \"VideoContentDetails\": {\n \"id\": - \"VideoContentDetails\",\n \"type\": \"object\",\n \"description\": - \"Details about the content of a YouTube Video.\",\n \"properties\": - {\n \"caption\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The value of captions indicates whether the video has captions or not.\",\n - \ \"enum\": [\n \"true\",\n \"false\"\n ]\n - \ },\n \"projection\": {\n \"type\": \"string\",\n \"enum\": - [\n \"rectangular\",\n \"360\"\n ],\n \"description\": - \"Specifies the projection format of the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"countryRestriction\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - countryRestriction object contains information about the countries where a - video is (or is not) viewable.\"\n },\n \"dimension\": {\n \"type\": - \"string\",\n \"description\": \"The value of dimension indicates - whether the video is available in 3D or in 2D.\"\n },\n \"duration\": - {\n \"description\": \"The length of the video. The tag value is - an ISO 8601 duration in the format PT#M#S, in which the letters PT indicate - that the value specifies a period of time, and the letters M and S refer to - length in minutes and seconds, respectively. The # characters preceding the - M and S letters are both integers that specify the number of minutes (or seconds) - of the video. For example, a value of PT15M51S indicates that the video is - 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n },\n - \ \"hasCustomThumbnail\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\"\n },\n - \ \"definition\": {\n \"enum\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"sd\",\n \"hd\"\n ],\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\"\n },\n \"licensedContent\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of is_license_content indicates whether the video is licensed content.\"\n - \ },\n \"contentRating\": {\n \"$ref\": \"ContentRating\",\n - \ \"description\": \"Specifies the ratings that the video received - under various rating schemes.\"\n },\n \"regionRestriction\": - {\n \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n }\n }\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelSectionLocalization\": - {\n \"id\": \"ChannelSectionLocalization\",\n \"description\": \"ChannelSection - localization setting\",\n \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for channel section's title.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of broadcasts that match the request criteria.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#liveBroadcastListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"pageInfo\": {\n - \ \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"id\": \"LiveBroadcastListResponse\"\n },\n \"SubscriptionSnippet\": - {\n \"id\": \"SubscriptionSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The subscription's title.\"\n },\n \"resourceId\": {\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\",\n \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The subscription's details.\"\n },\n \"channelTitle\": {\n - \ \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the subscription belongs to.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the subscription was created.\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the subscriber's channel.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - a subscription, including title, description and thumbnails of the subscribed - item.\"\n },\n \"ActivityContentDetailsChannelItem\": {\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that was added to - the channel.\",\n \"$ref\": \"ResourceId\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"Details about a resource which was added to a channel.\"\n - \ },\n \"ThirdPartyLinkListResponse\": {\n \"id\": \"ThirdPartyLinkListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n }\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"Subscription\": {\n \"description\": \"A *subscription* - resource contains information about a YouTube user subscription. A subscription - notifies a user when new videos are added to a channel or when another user - takes one of several actions on YouTube, such as uploading a video, rating - a video, or commenting on a video.\",\n \"id\": \"Subscription\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"SubscriptionSnippet\",\n \"description\": \"The snippet object - contains basic details about the subscription, including its title and the - channel that the user subscribed to.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#subscription\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\"\n - \ },\n \"subscriberSnippet\": {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"The subscriberSnippet object contains basic details - about the subscriber.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the subscription.\"\n },\n \"contentDetails\": {\n - \ \"$ref\": \"SubscriptionContentDetails\",\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\"\n - \ }\n }\n },\n \"MembershipsDurationAtLevel\": {\n \"properties\": - {\n \"level\": {\n \"description\": \"Pricing level ID.\",\n - \ \"type\": \"string\"\n },\n \"memberSince\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the user - became a continuous member for the given level.\"\n },\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - for the given level in complete months (the time is rounded down to the nearest - integer).\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"MembershipsDurationAtLevel\"\n - \ },\n \"ChannelSection\": {\n \"id\": \"ChannelSection\",\n \"type\": - \"object\",\n \"properties\": {\n \"targeting\": {\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"contentDetails\": {\n - \ \"$ref\": \"ChannelSectionContentDetails\",\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\"\n },\n - \ \"localizations\": {\n \"description\": \"Localizations for - different languages\",\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n }\n },\n - \ \"kind\": {\n \"default\": \"youtube#channelSection\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the channel section, such as its type, - style and title.\",\n \"$ref\": \"ChannelSectionSnippet\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel section.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"I18nLanguageListResponse\": {\n \"id\": - \"I18nLanguageListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of supported i18n languages. In this map, the i18n language ID is the - map key, and its value is the corresponding i18nLanguage resource.\",\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n },\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n }\n }\n },\n \"ActivityContentDetailsFavorite\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was marked as a favorite.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsFavorite\",\n \"type\": - \"object\",\n \"description\": \"Information about a video that was marked - as a favorite video.\"\n },\n \"ChannelLocalization\": {\n \"properties\": - {\n \"description\": {\n \"description\": \"The localized - strings for channel's description.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"description\": \"The localized strings for - channel's title.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Channel localization - setting\",\n \"id\": \"ChannelLocalization\"\n },\n \"ChannelContentOwnerDetails\": - {\n \"id\": \"ChannelContentOwnerDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"timeLinked\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the channel was linked to the content owner.\"\n - \ },\n \"contentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the content owner linked to the channel.\"\n - \ }\n },\n \"description\": \"The contentOwnerDetails object - encapsulates channel data that is relevant for YouTube Partners linked with - the channel.\"\n },\n \"ImageSettings\": {\n \"description\": \"Branding - properties for images associated with the channel.\",\n \"type\": \"object\",\n - \ \"id\": \"ImageSettings\",\n \"properties\": {\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size (640x175).\"\n },\n \"watchIconImageUrl\": {\n \"type\": - \"string\"\n },\n \"bannerExternalUrl\": {\n \"description\": - \"This is generated when a ChannelBanner.Insert request has succeeded for - the given channel.\",\n \"type\": \"string\"\n },\n \"bannerImageUrl\": - {\n \"description\": \"Banner image. Desktop size (1060x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1280x360).\"\n },\n \"backgroundImageUrl\": - {\n \"description\": \"The URL for the background image shown on - the video watch page. The image should be 1200px by 615px, with a maximum - file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerMobileLowImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Mobile size low resolution (320x88).\"\n - \ },\n \"bannerTabletImageUrl\": {\n \"description\": - \"Banner image. Tablet size (1707x283).\",\n \"type\": \"string\"\n - \ },\n \"trackingImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\"\n - \ },\n \"smallBrandedBannerImageUrl\": {\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"bannerTvHighImageUrl\": - {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": - {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\",\n - \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size medium resolution (1280x720).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"bannerTvImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n }\n }\n },\n - \ \"TestItemTestItemSnippet\": {\n \"properties\": {},\n \"type\": - \"object\",\n \"id\": \"TestItemTestItemSnippet\"\n },\n \"VideoSuggestions\": - {\n \"description\": \"Specifies suggestions on how to improve video - content, including encoding hints, tag suggestions, and editor suggestions.\",\n - \ \"properties\": {\n \"processingWarnings\": {\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"items\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"Unrecognized file format, - transcoding is likely to fail.\",\n \"Unrecognized video codec, - transcoding is likely to fail.\",\n \"Unrecognized audio codec, - transcoding is likely to fail.\",\n \"Conflicting container and - stream resolutions.\",\n \"Edit lists are not currently supported.\",\n - \ \"Video codec that is known to cause problems was used.\",\n - \ \"Audio codec that is known to cause problems was used.\",\n - \ \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ]\n },\n - \ \"type\": \"array\"\n },\n \"tagSuggestions\": {\n - \ \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\"\n },\n \"editorSuggestions\": {\n \"items\": - {\n \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ],\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ]\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of video editing operations that might improve the video quality or playback - experience of the uploaded video.\"\n },\n \"processingHints\": - {\n \"description\": \"A list of suggestions that may improve YouTube's - ability to process the video.\",\n \"type\": \"array\",\n \"items\": - {\n \"enumDescriptions\": [\n \"The MP4 file is not - streamable, this will slow down the processing. MOOV atom was not found at - the beginning of the file.\",\n \"Probably a better quality version - of the video exists. The video has wide screen aspect ratio, but is not an - HD video.\",\n \"Uploaded video is spherical video.\",\n \"Uploaded - video has spatial audio.\",\n \"Uploaded video is VR video.\",\n - \ \"Uploaded video is HDR video.\"\n ],\n \"enum\": - [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"processingErrors\": {\n \"items\": - {\n \"enumDescriptions\": [\n \"File contains audio - only (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n - \ \"Movie project file (e.g., Microsoft Windows Movie Maker project).\",\n - \ \"Other non-video file.\",\n \"Document or text - file (e.g., MS Word document).\",\n \"An archive file (e.g., - a ZIP archive).\",\n \"Unsupported spatial audio layout type.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n - \ \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n - \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n - \ \"unsupportedSpatialAudioLayout\"\n ]\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of errors - that will prevent YouTube from successfully processing the uploaded video - video. These errors indicate that, regardless of the video's current processing - status, eventually, that status will almost certainly be failed.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoSuggestions\"\n - \ },\n \"TestItem\": {\n \"properties\": {\n \"gaia\": {\n - \ \"type\": \"string\",\n \"format\": \"int64\"\n },\n - \ \"featuredPart\": {\n \"type\": \"boolean\"\n },\n - \ \"id\": {\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"TestItemTestItemSnippet\"\n }\n },\n - \ \"id\": \"TestItem\",\n \"type\": \"object\"\n },\n \"VideoFileDetailsAudioStream\": - {\n \"id\": \"VideoFileDetailsAudioStream\",\n \"description\": - \"Information about an audio stream.\",\n \"type\": \"object\",\n \"properties\": - {\n \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"channelCount\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of audio channels that the stream contains.\"\n },\n \"codec\": - {\n \"description\": \"The audio codec that the stream uses.\",\n - \ \"type\": \"string\"\n },\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - audio stream's bitrate, in bits per second.\"\n }\n }\n },\n - \ \"PlaylistStatus\": {\n \"type\": \"object\",\n \"id\": \"PlaylistStatus\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The playlist's - privacy status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n }\n }\n },\n \"VideoCategoryListResponse\": - {\n \"id\": \"VideoCategoryListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"default\": \"youtube#videoCategoryListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"VideoCategory\"\n },\n - \ \"description\": \"A list of video categories that can be associated - with YouTube videos. In this map, the video category ID is the map key, and - its value is the corresponding videoCategory resource.\",\n \"type\": - \"array\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n }\n },\n \"VideoAbuseReport\": - {\n \"id\": \"VideoAbuseReport\",\n \"properties\": {\n \"secondaryReasonId\": - {\n \"description\": \"The specific, or secondary, reason that this - content is abusive (if available). The value is an abuse report reason ID - that is a valid secondary reason for the primary reason.\",\n \"type\": - \"string\"\n },\n \"comments\": {\n \"description\": - \"Additional comments regarding the abuse report.\",\n \"type\": - \"string\"\n },\n \"language\": {\n \"type\": \"string\",\n - \ \"description\": \"The language that the content was viewed in.\"\n - \ },\n \"reasonId\": {\n \"type\": \"string\",\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelBannerResource\": - {\n \"description\": \"A channel banner returned as the response to a - channel_banner.insert call.\",\n \"type\": \"object\",\n \"id\": - \"ChannelBannerResource\",\n \"properties\": {\n \"url\": {\n - \ \"type\": \"string\",\n \"description\": \"The URL of this - banner image.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"I18nRegion\": {\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n - \ \"type\": \"object\",\n \"id\": \"I18nRegion\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nRegion\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the i18n region, such as region code and - human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\"\n }\n - \ }\n },\n \"SuperChatEvent\": {\n \"type\": \"object\",\n - \ \"id\": \"SuperChatEvent\",\n \"description\": \"A `__superChatEvent__` - resource represents a Super Chat purchase on a YouTube channel.\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the Super Chat event.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#superChatEvent\"\n - \ },\n \"snippet\": {\n \"description\": \"The `snippet` - object contains basic details about the Super Chat event.\",\n \"$ref\": - \"SuperChatEventSnippet\"\n }\n }\n },\n \"Member\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#member\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the member.\",\n \"$ref\": \"MemberSnippet\"\n - \ }\n },\n \"description\": \"A *member* resource represents - a member for a YouTube channel. A member provides recurring monetary support - to a creator and receives special benefits.\",\n \"id\": \"Member\"\n - \ },\n \"MembershipsLevelSnippet\": {\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"levelDetails\": - {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details - about the pricing level.\"\n },\n \"creatorChannelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The id of the - channel that's offering channel memberships.\"\n }\n }\n },\n - \ \"LiveChatGiftMembershipReceivedDetails\": {\n \"properties\": {\n - \ \"associatedMembershipGiftingMessageId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\"\n },\n \"gifterChannelId\": - {\n \"description\": \"The ID of the user that made the membership - gifting purchase. This matches the `snippet.authorChannelId` of the associated - membership gifting message.\",\n \"type\": \"string\"\n },\n - \ \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the Level at which the viewer is a member. This matches the - `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated - membership gifting message. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"VideoProcessingDetails\": {\n \"description\": \"Describes - processing status and progress and availability of some other Video resource - parts.\",\n \"type\": \"object\",\n \"properties\": {\n \"tagSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether keyword (tag) - suggestions are available for the video. Tags can be added to a video's metadata - to make it easier for other users to find the video. You can retrieve these - suggestions by requesting the suggestions part in your videos.list() request.\",\n - \ \"type\": \"string\"\n },\n \"fileDetailsAvailability\": - {\n \"description\": \"This value indicates whether file details - are available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"editorSuggestionsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether video - editing suggestions, which might improve video quality or the playback experience, - are available for the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\"\n },\n \"processingProgress\": - {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n },\n \"thumbnailsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether thumbnail images have been generated for the video.\"\n - \ },\n \"processingFailureReason\": {\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ]\n },\n - \ \"processingIssuesAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"processingStatus\": {\n \"description\": \"The video's - processing status. This value indicates whether YouTube was able to process - the video or if the video is still being processed.\",\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"id\": - \"VideoProcessingDetails\"\n },\n \"LiveBroadcastSnippet\": {\n \"description\": - \"Basic broadcast information.\",\n \"type\": \"object\",\n \"properties\": - {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - broadcast. For each nested object in this object, the key is the name of the - thumbnail image, and the value is an object that contains other information - about the thumbnail.\"\n },\n \"scheduledEndTime\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast is scheduled to end.\"\n },\n - \ \"liveChatId\": {\n \"description\": \"The id of the live - chat for this broadcast.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - was added to YouTube's live broadcast schedule.\"\n },\n \"actualStartTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast actually started. This information is only available - once the broadcast's state is live.\",\n \"format\": \"date-time\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that is publishing the - broadcast.\",\n \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"isDefaultBroadcast\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\"\n },\n \"title\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\"\n },\n \"actualEndTime\": - {\n \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The broadcast's description. As with the title, you can set this field by - modifying the broadcast resource or by setting the description field of the - corresponding video resource.\"\n }\n },\n \"id\": \"LiveBroadcastSnippet\"\n - \ },\n \"WatchSettings\": {\n \"type\": \"object\",\n \"properties\": - {\n \"featuredPlaylistId\": {\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\",\n - \ \"type\": \"string\"\n },\n \"backgroundColor\": {\n - \ \"type\": \"string\",\n \"description\": \"The text color - for the video watch page's branded area.\"\n },\n \"textColor\": - {\n \"description\": \"The background color for the video watch page's - branded area.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"WatchSettings\",\n \"description\": \"Branding properties for the watch. - All deprecated.\"\n },\n \"PlaylistContentDetails\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistContentDetails\",\n \"properties\": - {\n \"itemCount\": {\n \"description\": \"The number of videos - in the playlist.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n }\n }\n },\n \"LiveChatSuperStickerDetails\": - {\n \"properties\": {\n \"tier\": {\n \"type\": \"integer\",\n - \ \"description\": \"The tier in which the amount belongs. Lower amounts - belong to lower tiers. The lowest tier is 1.\",\n \"format\": \"uint32\"\n - \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made.\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n }\n },\n \"id\": - \"LiveChatSuperStickerDetails\",\n \"type\": \"object\"\n },\n \"ChannelConversionPing\": - {\n \"description\": \"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.\",\n \"properties\": {\n \"context\": - {\n \"description\": \"Defines the context of the ping.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ]\n },\n - \ \"conversionUrl\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"id\": \"ChannelConversionPing\",\n \"type\": - \"object\"\n },\n \"ChannelStatistics\": {\n \"properties\": {\n - \ \"viewCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of times the channel has been viewed.\",\n \"format\": - \"uint64\"\n },\n \"hiddenSubscriberCount\": {\n \"description\": - \"Whether or not the number of subscribers is shown for this user.\",\n \"type\": - \"boolean\"\n },\n \"commentCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of comments for the channel.\",\n - \ \"type\": \"string\"\n },\n \"subscriberCount\": {\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of subscribers that the channel has.\",\n \"type\": \"string\"\n - \ },\n \"videoCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of videos uploaded to the channel.\",\n \"format\": - \"uint64\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\",\n \"id\": \"ChannelStatistics\"\n },\n \"SuperStickerMetadata\": - {\n \"id\": \"SuperStickerMetadata\",\n \"properties\": {\n \"altTextLanguage\": - {\n \"description\": \"Specifies the localization language in which - the alt text is returned.\",\n \"type\": \"string\"\n },\n - \ \"stickerId\": {\n \"type\": \"string\",\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\"\n - \ },\n \"altText\": {\n \"type\": \"string\",\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"VideoTopicDetails\": {\n \"type\": \"object\",\n \"description\": - \"Freebase topic information related to the video.\",\n \"id\": \"VideoTopicDetails\",\n - \ \"properties\": {\n \"topicCategories\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\",\n \"type\": \"array\"\n },\n \"relevantTopicIds\": - {\n \"description\": \"Similar to topic_id, except that these topics - are merely relevant to the video. These are topics that may be mentioned in, - or appear in the video. You can retrieve information about each topic using - Freebase Topic API.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicIds\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Freebase - topic IDs that are centrally associated with the video. These are topics that - are centrally featured in the video, and it can be said that the video is - mainly about each of these. You can retrieve information about each topic - using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n }\n }\n },\n \"LanguageTag\": {\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LanguageTag\",\n \"type\": \"object\"\n },\n \"VideoAgeGating\": - {\n \"id\": \"VideoAgeGating\",\n \"properties\": {\n \"videoGameRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ],\n \"description\": \"Video - game rating, if any.\"\n },\n \"restricted\": {\n \"description\": - \"Age-restricted trailers. For redband trailers and adult-rated video-games. - Only users aged 18+ can view the content. The the field is true the content - is restricted to viewers aged 18+. Otherwise The field won't be present.\",\n - \ \"type\": \"boolean\"\n },\n \"alcoholContent\": {\n - \ \"description\": \"Indicates whether or not the video has alcoholic - beverage content. Only users of legal purchasing age in a particular country, - as identified by ICAP, can view the content.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoStatistics\": - {\n \"id\": \"VideoStatistics\",\n \"description\": \"Statistics - about the video, such as the number of times the video was viewed or liked.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"viewCount\": - {\n \"description\": \"The number of times the video has been viewed.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"dislikeCount\": {\n \"description\": \"The number of users - who have indicated that they disliked the video by giving it a negative rating.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"commentCount\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of comments for the video.\"\n - \ },\n \"favoriteCount\": {\n \"description\": \"The - number of users who currently have the video marked as a favorite video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"likeCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of users who have indicated that they liked the video by giving - it a positive rating.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ContentRating\": {\n \"description\": \"Ratings schemes. - The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n - \ \"id\": \"ContentRating\",\n \"properties\": {\n \"kmrbRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 \uC774\uC0C1 - \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ],\n \"description\": \"The video's Korea Media Rating - Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. The KMRB - rates videos in South Korea.\"\n },\n \"oflcRating\": {\n \"enum\": - [\n \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n - \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n - \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n - \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"description\": \"The video's Office of Film and - Literature Classification (OFLC - New Zealand) rating.\"\n },\n \"cccRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Todo - espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n - \ \"14+\",\n \"18+\",\n \"18+ - contenido - excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n - \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ]\n },\n - \ \"mcstRating\": {\n \"description\": \"The video's rating - system for Vietnam - MCST\",\n \"enumDescriptions\": [\n \"\",\n - \ \"P\",\n \"0\",\n \"C13\",\n \"C16\",\n - \ \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ]\n },\n - \ \"catvRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n - \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n - \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n - \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n - \ \"catvE\"\n ],\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"nbcRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from the Maldives National Bureau of Classification.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ]\n },\n - \ \"nfvcbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"18\",\n \"RE\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ]\n },\n \"fcoRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"I\",\n - \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"fcoUnspecified\",\n \"fcoI\",\n \"fcoIia\",\n - \ \"fcoIib\",\n \"fcoIi\",\n \"fcoIii\",\n - \ \"fcoUnrated\"\n ],\n \"description\": \"The - video's rating from Hong Kong's Office for Film, Newspaper and Article Administration.\"\n - \ },\n \"djctqRatingReasons\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ],\n \"enum\": [\n - \ \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ]\n },\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\"\n - \ },\n \"fpbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\",\n \"type\": \"string\"\n },\n - \ \"rtcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"A\",\n \"B\",\n \"B15\",\n - \ \"C\",\n \"D\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ],\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\"\n },\n \"cceRating\": {\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ]\n },\n \"mpaaRating\": {\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mpaaUnspecified\",\n - \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n - \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n - \ \"mpaaUnrated\"\n ]\n },\n \"eefilmRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Estonia.\"\n - \ },\n \"nkclvRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Nacion\xE3lais Kino - centrs (National Film Centre of Latvia).\",\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"icaaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"description\": \"The video's Instituto - de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - Spain) rating.\"\n - \ },\n \"cscfRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\",\n \"type\": \"string\"\n },\n \"resorteviolenciaRating\": - {\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"description\": \"The video's rating in Venezuela.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"nfrcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Bulgarian - National Film Center.\"\n },\n \"moctwRating\": {\n \"enum\": - [\n \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n - \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n - \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ],\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\"\n - \ },\n \"bmukkRating\": {\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Austrian - Board of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst - und Kultur).\"\n },\n \"smsaRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from Statens - medier\xE5d (Sweden's National Media Council).\",\n \"enum\": [\n - \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"All - ages\",\n \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ]\n },\n \"chfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Switzerland.\",\n \"type\": - \"string\",\n \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n - \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n - \ \"chfilm18\",\n \"chfilmUnrated\"\n ]\n },\n - \ \"cncRating\": {\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ],\n - \ \"description\": \"Rating system in France - Commission de classification - cinematographique\"\n },\n \"ytRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"type\": - \"string\",\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ]\n },\n \"catvfrRating\": {\n \"description\": - \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ]\n },\n \"anatelRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ],\n \"enum\": - [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ],\n \"description\": \"The video's Anatel (Asociaci\xF3n - Nacional de Televisi\xF3n) rating for Chilean television.\",\n \"type\": - \"string\"\n },\n \"kfcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Kenya Film Classification - Board.\",\n \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n - \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n - \ \"kfcbUnrated\"\n ]\n },\n \"mdaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ],\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\",\n \"enum\": [\n - \ \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n - \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n - \ \"mdaR21\",\n \"mdaUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"fmocRating\": {\n \"enum\": [\n - \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"description\": - \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ]\n },\n \"russiaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"description\": \"The video's National Film Registry - of the Russian Federation (MKRF - Russia) rating.\"\n },\n \"mccypRating\": - {\n \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Danish Film Institute's - (Det Danske Filminstitut) Media Council for Children and Young People.\"\n - \ },\n \"mocRating\": {\n \"enum\": [\n \"mocUnspecified\",\n - \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n - \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Ministerio de Cultura - (Colombia) rating.\"\n },\n \"smaisRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in Iceland.\",\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ]\n },\n \"fskRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"FSK - 0\",\n \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\",\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"acbRating\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ]\n },\n \"rcnofRating\": - {\n \"description\": \"The video's rating from the Hungarian Nemzeti - Filmiroda, the Rating Committee of the National Office of Film.\",\n \"enum\": - [\n \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n - \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n - \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"pefilmRating\": - {\n \"description\": \"The video's rating in Peru.\",\n \"enum\": - [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ]\n },\n \"bbfcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"description\": - \"The video's British Board of Film Classification (BBFC) rating.\"\n },\n - \ \"kijkwijzerRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ]\n },\n \"cicfRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from the Commission de Contr\xF4le des Films (Belgium).\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ]\n },\n \"djctqRating\": - {\n \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\"\n },\n \"tvpgRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"description\": \"The - video's TV Parental Guidelines (TVPG) rating.\"\n },\n \"mccaaRating\": - {\n \"description\": \"The video's rating from Malta's Film Age-Classification - Board.\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"medietilsynetRating\": - {\n \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Medietilsynet, the Norwegian Media Authority.\"\n },\n \"ecbmctRating\": - {\n \"description\": \"Rating system in Turkey - Evaluation and Classification - Board of the Ministry of Culture and Tourism\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n - \ \"ecbmct7a\",\n \"ecbmct7plus\",\n \"ecbmct13a\",\n - \ \"ecbmct13plus\",\n \"ecbmct15a\",\n \"ecbmct15plus\",\n - \ \"ecbmct18plus\",\n \"ecbmctUnrated\"\n ]\n - \ },\n \"fcbmRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"description\": \"The - video's rating from Malaysia's Film Censorship Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ]\n },\n \"incaaRating\": - {\n \"description\": \"The video's INCAA (Instituto Nacional de Cine - y Artes Audiovisuales - Argentina) rating.\",\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ]\n },\n \"eirinRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"The video's Eirin (\u6620\u502B) - rating. Eirin is the Japanese rating system.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ]\n },\n \"mekuRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti - (National Audiovisual Institute).\",\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ]\n },\n \"agcomRating\": {\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\",\n \"type\": \"string\",\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ]\n },\n \"ilfilmRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Israel.\",\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ]\n },\n \"cnaRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Romania's CONSILIUL NATIONAL - AL AUDIOVIZUALULUI (CNA).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AP\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"18+\",\n \"\"\n ],\n \"enum\": - [\n \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n - \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ]\n },\n \"menaMpaaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To - keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\"\n },\n \"mpaatRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GB\",\n \"RB\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ],\n \"description\": - \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n - \ },\n \"mtrcbRating\": {\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Movie and Television - Review and Classification Board (Philippines).\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ]\n },\n \"egfilmRating\": {\n \"description\": - \"The video's rating in Egypt.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GN\",\n \"18\",\n \"BN\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ]\n },\n \"lsfRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Indonesia's - Lembaga Sensor Film.\",\n \"type\": \"string\",\n \"enum\": - [\n \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ]\n },\n \"cbfcRating\": {\n \"enum\": [\n - \ \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ],\n \"description\": \"The video's Central Board of Film - Certification (CBFC - India) rating.\",\n \"type\": \"string\"\n - \ },\n \"mibacRating\": {\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Ministero dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n - \ \"type\": \"string\"\n },\n \"nmcRating\": {\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"PG-15\",\n - \ \"15+\",\n \"18+\",\n \"18TC\",\n \"\"\n - \ ],\n \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ]\n },\n \"nbcplRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Poland.\",\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"czfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in the Czech Republic.\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ]\n },\n - \ \"fpbRatingReasons\": {\n \"description\": \"Reasons that - explain why the video received its FPB (South Africa) rating.\",\n \"items\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ]\n },\n - \ \"type\": \"array\"\n },\n \"ifcoRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Irish Film Classification Office - (IFCO - Ireland) rating. See the IFCO website for more information.\"\n },\n - \ \"bfvcRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Thailand's Board of Film and Video Censors.\",\n - \ \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ]\n },\n \"grfilmRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n - \ \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n - \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n - \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n - \ \"grfilmUnrated\"\n ],\n \"description\": \"The - video's rating in Greece.\"\n },\n \"csaRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from France's - Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\",\n - \ \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ]\n },\n - \ \"skfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P2\",\n \"P5\",\n \"P8\",\n - \ \"\"\n ],\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in Slovakia.\"\n - \ },\n \"chvrsRating\": {\n \"description\": \"The video's - Canadian Home Video Rating System (CHVRS) rating.\",\n \"type\": - \"string\",\n \"enum\": [\n \"chvrsUnspecified\",\n \"chvrsG\",\n - \ \"chvrsPg\",\n \"chvrs14a\",\n \"chvrs18a\",\n - \ \"chvrsR\",\n \"chvrsE\",\n \"chvrsUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ]\n },\n \"rteRating\": - {\n \"description\": \"The video's rating from Ireland's Raidi\xF3 - Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GA\",\n \"CH\",\n \"PS\",\n \"MA\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ]\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n \"properties\": - {\n \"banDurationSeconds\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The duration - of the ban. This property is only present if the banType is temporary.\"\n - \ },\n \"banType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The type of ban.\",\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ]\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"The details of the user that was banned.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatModerator\": {\n \"id\": \"LiveChatModerator\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveChatModeratorSnippet\",\n \"description\": \"The snippet object - contains basic details about the moderator.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModerator\\\".\",\n \"default\": - \"youtube#liveChatModerator\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A *liveChatModerator* resource represents a moderator - for a YouTube live chat. A chat moderator has the ability to ban/unban users - from a chat, remove message, etc.\"\n },\n \"ThirdPartyLinkStatus\": - {\n \"description\": \"The third-party link status object contains information - about the status of the link.\",\n \"properties\": {\n \"linkStatus\": - {\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"id\": - \"ThirdPartyLinkStatus\",\n \"type\": \"object\"\n },\n \"Playlist\": - {\n \"id\": \"Playlist\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": \"The - snippet object contains basic details about the playlist, such as its title - and description.\"\n },\n \"status\": {\n \"description\": - \"The status object contains status information for the playlist.\",\n \"$ref\": - \"PlaylistStatus\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the playlist - in an embedded player.\",\n \"$ref\": \"PlaylistPlayer\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#playlist\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\",\n - \ \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n - \ }\n }\n },\n \"type\": \"object\",\n \"description\": - \"A *playlist* resource represents a YouTube playlist. A playlist is a collection - of videos that can be viewed sequentially and shared with other users. A playlist - can contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"type\": - \"object\",\n \"properties\": {\n \"playlistItemId\": {\n \"description\": - \"ID of the item within the playlist.\",\n \"type\": \"string\"\n - \ },\n \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"The value that YouTube uses to uniquely identify the playlist.\"\n },\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\"\n }\n },\n \"description\": \"Information - about a new playlist item.\"\n },\n \"LiveStream\": {\n \"id\": - \"LiveStream\",\n \"properties\": {\n \"contentDetails\": {\n - \ \"$ref\": \"LiveStreamContentDetails\",\n \"description\": - \"The content_details object contains information about the stream, including - the closed captions ingestion URL.\"\n },\n \"snippet\": {\n - \ \"description\": \"The snippet object contains basic details about - the stream, including its channel, title, and description.\",\n \"$ref\": - \"LiveStreamSnippet\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the stream.\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"$ref\": \"LiveStreamStatus\",\n \"description\": \"The - status object contains information about live stream's status.\"\n },\n - \ \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveStream\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - live stream describes a live ingestion point.\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"type\": \"object\",\n \"description\": \"Details about a social - network post.\",\n \"id\": \"ActivityContentDetailsSocial\",\n \"properties\": - {\n \"referenceUrl\": {\n \"description\": \"The URL of the - social network post.\",\n \"type\": \"string\"\n },\n \"author\": - {\n \"type\": \"string\",\n \"description\": \"The author - of the social network post.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n - \ \"facebook\",\n \"twitter\"\n ],\n \"description\": - \"The name of the social network.\",\n \"type\": \"string\"\n },\n - \ \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"An image of the post's author.\"\n },\n \"resourceId\": {\n - \ \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\",\n \"$ref\": - \"ResourceId\"\n }\n }\n },\n \"PageInfo\": {\n \"id\": - \"PageInfo\",\n \"type\": \"object\",\n \"description\": \"Paging - details for lists of resources, including total number of items available - and number of resources returned in a single page.\",\n \"properties\": - {\n \"resultsPerPage\": {\n \"type\": \"integer\",\n \"description\": - \"The number of results included in the API response.\",\n \"format\": - \"int32\"\n },\n \"totalResults\": {\n \"description\": - \"The total number of results in the result set.\",\n \"type\": \"integer\",\n - \ \"format\": \"int32\"\n }\n }\n },\n \"LiveBroadcastContentDetails\": - {\n \"properties\": {\n \"projection\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"projectionUnspecified\",\n \"rectangular\",\n \"360\",\n - \ \"mesh\"\n ],\n \"description\": \"The projection - format of this broadcast. This defaults to rectangular.\"\n },\n \"enableDvr\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - determines whether viewers can access DVR controls while watching the video. - DVR controls enable the viewer to control the video playback experience by - pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\"\n },\n \"stereoLayout\": - {\n \"type\": \"string\",\n \"description\": \"The 3D stereo - layout of this broadcast. This defaults to mono.\",\n \"enum\": [\n - \ \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"closedCaptionsType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ]\n },\n \"enableAutoStart\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - auto start is enabled for this broadcast. The default value for this property - is false. This setting can only be used by Events.\"\n },\n \"enableEmbed\": - {\n \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\",\n \"type\": \"boolean\"\n },\n \"enableContentEncryption\": - {\n \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n - \ },\n \"startWithSlate\": {\n \"description\": \"This - setting indicates whether the broadcast should automatically begin with an - in-stream slate when you update the broadcast's status to live. After updating - the status, you then need to send a liveCuepoints.insert request that sets - the cuepoint's eventState to end to remove the in-stream slate and make your - broadcast stream visible to viewers.\",\n \"type\": \"boolean\"\n - \ },\n \"boundStreamId\": {\n \"type\": \"string\",\n - \ \"description\": \"This value uniquely identifies the live stream - bound to the broadcast.\"\n },\n \"enableAutoStop\": {\n \"description\": - \"This setting indicates whether auto stop is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\",\n \"type\": \"boolean\"\n },\n \"mesh\": - {\n \"description\": \"The mesh for projecting the video if projection - is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding - of 3D mesh data that follows the Spherical Video V2 RFC specification for - an mshp box, excluding the box size and type but including the following four - reserved zero bytes for the version and flags.\",\n \"format\": \"byte\",\n - \ \"type\": \"string\"\n },\n \"latencyPreference\": - {\n \"description\": \"If both this and enable_low_latency are set, - they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW - should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency - omitted.\",\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ]\n },\n - \ \"enableLowLatency\": {\n \"description\": \"Indicates whether - this broadcast has low latency enabled.\",\n \"type\": \"boolean\"\n - \ },\n \"recordFromStart\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\"\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the live - stream referenced by boundStreamId was last updated.\",\n \"format\": - \"date-time\"\n },\n \"monitorStream\": {\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\",\n \"$ref\": \"MonitorStreamInfo\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"Detailed settings of a broadcast.\"\n },\n \"LiveBroadcastStatus\": - {\n \"type\": \"object\",\n \"description\": \"Live broadcast state.\",\n - \ \"properties\": {\n \"recordingStatus\": {\n \"description\": - \"The broadcast's recording status.\",\n \"enumDescriptions\": [\n - \ \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ],\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"type\": \"string\"\n },\n \"liveBroadcastPriority\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Low priority broadcast: for low view count HoAs or other low - priority broadcasts.\",\n \"Normal priority broadcast: for regular - HoAs and broadcasts.\",\n \"High priority broadcast: for high profile - HoAs, like PixelCorp ones.\"\n ],\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"description\": \"Priority of the live broadcast event (internal - state).\"\n },\n \"lifeCycleStatus\": {\n \"type\": - \"string\",\n \"description\": \"The broadcast's status. The status - can be updated using the API's liveBroadcasts.transition method.\",\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ]\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the broadcast is made for kids or not, - decided by YouTube instead of the creator. This field is read only.\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"description\": \"This - field will be set to True if the creator declares the broadcast to be kids - only: go/live-cw-work.\",\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"description\": \"The broadcast's privacy status. - Note that the broadcast represents exactly one YouTube video, so the privacy - settings are identical to those supported for videos. In addition, you can - set this field by modifying the broadcast resource or by setting the privacyStatus - field of the corresponding video resource.\"\n }\n },\n \"id\": - \"LiveBroadcastStatus\"\n },\n \"CaptionListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"description\": \"A list of captions that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Caption\"\n }\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#captionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"CaptionListResponse\"\n },\n \"ActivityContentDetailsComment\": - {\n \"id\": \"ActivityContentDetailsComment\",\n \"type\": \"object\",\n - \ \"description\": \"Information about a resource that received a comment.\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource associated with the comment.\"\n }\n }\n - \ },\n \"VideoMonetizationDetails\": {\n \"id\": \"VideoMonetizationDetails\",\n - \ \"description\": \"Details about monetization of a YouTube Video.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"access\": - {\n \"description\": \"The value of access indicates whether the - video can be monetized or not.\",\n \"$ref\": \"AccessPolicy\"\n - \ }\n }\n },\n \"ThirdPartyLinkSnippet\": {\n \"type\": - \"object\",\n \"description\": \"Basic information about a third party - account link, including its type and type-specific information.\",\n \"id\": - \"ThirdPartyLinkSnippet\",\n \"properties\": {\n \"type\": {\n - \ \"description\": \"Type of the link named after the entities that - are being linked.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A link - that is connecting (or about to connect) a channel with a store on a merchandising - platform in order to enable retail commerce capabilities for that channel - on YouTube.\"\n ]\n },\n \"channelToStoreLink\": {\n - \ \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n - \ }\n }\n },\n \"ActivityContentDetailsUpload\": {\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsUpload\",\n \"description\": - \"Information about the uploaded video.\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the uploaded video.\"\n }\n }\n - \ },\n \"VideoLocalization\": {\n \"description\": \"Localized versions - of certain video properties (e.g. title).\",\n \"id\": \"VideoLocalization\",\n - \ \"properties\": {\n \"title\": {\n \"description\": - \"Localized version of the video's title.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Localized version of the video's description.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelSectionListResponse\": - {\n \"type\": \"object\",\n \"id\": \"ChannelSectionListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\"\n },\n - \ \"items\": {\n \"description\": \"A list of ChannelSections - that match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ChannelSection\"\n }\n }\n }\n - \ },\n \"LiveChatMessageListResponse\": {\n \"properties\": {\n - \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"type\": \"array\"\n },\n \"pollingIntervalMillis\": - {\n \"description\": \"The amount of time the client should wait - before polling again.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"offlineAt\": {\n \"description\": \"The date and time when - the underlying stream went offline.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatMessageListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageListResponse\",\n - \ \"type\": \"object\"\n }\n },\n \"servicePath\": \"\",\n \"title\": - \"YouTube Data API v3\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"description\": \"The YouTube Data API v3 is an API that provides access - to YouTube data, such as videos, playlists, and channels.\",\n \"parameters\": - {\n \"fields\": {\n \"description\": \"Selector specifying which fields - to include in a partial response.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"oauth_token\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"OAuth 2.0 token for - the current user.\"\n },\n \"$.xgafv\": {\n \"type\": \"string\",\n - \ \"description\": \"V1 error format.\",\n \"enum\": [\n \"1\",\n - \ \"2\"\n ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"v1 error format\",\n \"v2 error format\"\n ]\n },\n - \ \"uploadType\": {\n \"description\": \"Legacy upload protocol for - media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"quotaUser\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"callback\": {\n \"location\": \"query\",\n \"description\": - \"JSONP\",\n \"type\": \"string\"\n },\n \"prettyPrint\": {\n \"type\": - \"boolean\",\n \"default\": \"true\",\n \"description\": \"Returns - response with indentations and line breaks.\",\n \"location\": \"query\"\n - \ },\n \"alt\": {\n \"description\": \"Data format for response.\",\n - \ \"enumDescriptions\": [\n \"Responses with Content-Type of application/json\",\n - \ \"Media download with context-dependent Content-Type\",\n \"Responses - with Content-Type of application/x-protobuf\"\n ],\n \"enum\": [\n - \ \"json\",\n \"media\",\n \"proto\"\n ],\n \"default\": - \"json\",\n \"type\": \"string\",\n \"location\": \"query\"\n },\n - \ \"access_token\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"OAuth access token.\"\n },\n \"upload_protocol\": - {\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"key\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n }\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:35 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UC16niRr50-MSBwiO3YDb3RA&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"y0wTSj_tZ4udZx8U_Le0EltU0-g\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"56RuOr0uvX_T1YUVKBOYhe_mZK4\",\n \"id\": \"UC16niRr50-MSBwiO3YDb3RA\",\n - \ \"snippet\": {\n \"title\": \"BBC News\",\n \"description\": - \"Welcome to the official BBC News YouTube channel. \\n\\nInterested in global - news with an impartial perspective? Want to see behind-the-scenes clips and - footage directly from the front-line? Our YouTube channel has all this and - more, bringing you specially selected clips from the world's most trusted - news source.\\n\\nTune into BBC World News for 24 hour news on TV. Check out - BBC News on mobile and download our app for iPhone, Android and Kindle Fire. - \\n\\nThe official BBC News YouTube channel is operated by BBC Global News - Ltd which comprises BBC World News the 24hr TV channel and bbc.com/news, the - international news website.\",\n \"customUrl\": \"@bbcnews\",\n \"publishedAt\": - \"2006-04-08T05:51:05Z\",\n \"thumbnails\": {\n \"default\": - {\n \"url\": \"https://yt3.ggpht.com/MRywaef1JLriHf-MUivy7-WAoVAL4sB7VHZXgmprXtmpOlN73I4wBhjjWdkZNFyJNiUP6MHm1w=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/MRywaef1JLriHf-MUivy7-WAoVAL4sB7VHZXgmprXtmpOlN73I4wBhjjWdkZNFyJNiUP6MHm1w=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/MRywaef1JLriHf-MUivy7-WAoVAL4sB7VHZXgmprXtmpOlN73I4wBhjjWdkZNFyJNiUP6MHm1w=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"defaultLanguage\": \"en-GB\",\n \"localized\": {\n \"title\": - \"BBC News\",\n \"description\": \"Welcome to the official BBC News - YouTube channel. \\n\\nInterested in global news with an impartial perspective? - Want to see behind-the-scenes clips and footage directly from the front-line? - Our YouTube channel has all this and more, bringing you specially selected - clips from the world's most trusted news source.\\n\\nTune into BBC World - News for 24 hour news on TV. Check out BBC News on mobile and download our - app for iPhone, Android and Kindle Fire. \\n\\nThe official BBC News YouTube - channel is operated by BBC Global News Ltd which comprises BBC World News - the 24hr TV channel and bbc.com/news, the international news website.\"\n - \ },\n \"country\": \"GB\"\n },\n \"brandingSettings\": - {\n \"channel\": {\n \"title\": \"BBC News\",\n \"description\": - \"Welcome to the official BBC News YouTube channel. \\n\\nInterested in global - news with an impartial perspective? Want to see behind-the-scenes clips and - footage directly from the front-line? Our YouTube channel has all this and - more, bringing you specially selected clips from the world's most trusted - news source.\\n\\nTune into BBC World News for 24 hour news on TV. Check out - BBC News on mobile and download our app for iPhone, Android and Kindle Fire. - \\n\\nThe official BBC News YouTube channel is operated by BBC Global News - Ltd which comprises BBC World News the 24hr TV channel and bbc.com/news, the - international news website.\",\n \"keywords\": \"BBC News Official - YouTube Channel\",\n \"defaultLanguage\": \"en-GB\",\n \"country\": - \"GB\"\n },\n \"image\": {\n \"bannerExternalUrl\": - \"https://yt3.googleusercontent.com/17kAwg2fa9c2YrnL5ukw_7RBUMngHNw4LvNd0UqkIYIbckbSKCLo1md8bwML1Sas5_LXP3KCgg\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:35 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"version\": \"v3\",\n \"canonicalName\": \"YouTube\",\n \"schemas\": - {\n \"LiveStreamContentDetails\": {\n \"type\": \"object\",\n \"id\": - \"LiveStreamContentDetails\",\n \"description\": \"Detailed settings - of a stream.\",\n \"properties\": {\n \"closedCaptionsIngestionUrl\": - {\n \"type\": \"string\",\n \"description\": \"The ingestion - URL where the closed captions of this stream are sent.\"\n },\n \"isReusable\": - {\n \"description\": \"Indicates whether the stream is reusable, - which means that it can be bound to multiple broadcasts. It is common for - broadcasters to reuse the same stream for many different broadcasts if those - broadcasts occur at different times. If you set this value to false, then - the stream will not be reusable, which means that it can only be bound to - one broadcast. Non-reusable streams differ from reusable streams in the following - ways: - A non-reusable stream can only be bound to one broadcast. - A non-reusable - stream might be deleted by an automated process after the broadcast ends. - - The liveStreams.list method does not list non-reusable streams if you call - the method and set the mine parameter to true. The only way to use that method - to retrieve the resource for a non-reusable stream is to use the id parameter - to identify the stream. \",\n \"type\": \"boolean\"\n }\n - \ }\n },\n \"VideoStatus\": {\n \"id\": \"VideoStatus\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title. Next Id: 18\",\n \"properties\": {\n \"rejectionReason\": - {\n \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\"\n - \ },\n \"publishAt\": {\n \"description\": \"The date - and time when the video is scheduled to publish. It can be set only if the - privacy status of the video is private..\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"description\": \"The video's - privacy status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"uploadStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"uploaded\",\n \"processed\",\n \"failed\",\n - \ \"rejected\",\n \"deleted\"\n ],\n \"enumDescriptions\": - [\n \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"description\": - \"The status of the uploaded video.\"\n },\n \"license\": {\n - \ \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"failureReason\": {\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Unable to convert - video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ],\n \"description\": - \"This value explains why a video failed to upload. This property is only - present if the uploadStatus property indicates that the upload failed.\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"embeddable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value indicates if the video can be embedded - on another website. @mutable youtube.videos.insert youtube.videos.update\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"CommentThreadSnippet\": - {\n \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the video the comments refer to, if - any. No video_id implies a channel discussion comment.\"\n },\n \"topLevelComment\": - {\n \"description\": \"The top level comment of this thread.\",\n - \ \"$ref\": \"Comment\"\n },\n \"canReply\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n \"totalReplyCount\": - {\n \"description\": \"The total number of replies (not including - the top level comment).\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"isPublic\": {\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\",\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - a comment thread.\",\n \"type\": \"object\",\n \"id\": \"CommentThreadSnippet\"\n - \ },\n \"LiveStreamConfigurationIssue\": {\n \"properties\": {\n - \ \"severity\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"description\": \"How severe this issue is to the - stream.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The kind of error happening.\",\n \"enum\": - [\n \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ]\n },\n - \ \"reason\": {\n \"description\": \"The short-form reason - for this issue.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The long-form - description of the issue and how to resolve it.\"\n }\n },\n \"id\": - \"LiveStreamConfigurationIssue\",\n \"type\": \"object\"\n },\n \"VideoAbuseReport\": - {\n \"id\": \"VideoAbuseReport\",\n \"type\": \"object\",\n \"properties\": - {\n \"videoId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ },\n \"secondaryReasonId\": {\n \"description\": \"The - specific, or secondary, reason that this content is abusive (if available). - The value is an abuse report reason ID that is a valid secondary reason for - the primary reason.\",\n \"type\": \"string\"\n },\n \"language\": - {\n \"description\": \"The language that the content was viewed in.\",\n - \ \"type\": \"string\"\n },\n \"reasonId\": {\n \"type\": - \"string\",\n \"description\": \"The high-level, or primary, reason - that the content is abusive. The value is an abuse report reason ID.\"\n },\n - \ \"comments\": {\n \"type\": \"string\",\n \"description\": - \"Additional comments regarding the abuse report.\"\n }\n }\n - \ },\n \"LiveChatBan\": {\n \"id\": \"LiveChatBan\",\n \"type\": - \"object\",\n \"description\": \"A `__liveChatBan__` resource represents - a ban for a YouTube live chat.\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the ban.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"default\": - \"youtube#liveChatBan\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the ban.\",\n \"$ref\": - \"LiveChatBanSnippet\"\n }\n }\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n \"description\": - \"DEPRECATED Region restriction of the video.\",\n \"properties\": {\n - \ \"blocked\": {\n \"description\": \"A list of region codes - that identify countries where the video is blocked. If this property is present - and a country is not listed in its value, then the video is viewable in that - country. If this property is present and contains an empty list, the video - is viewable in all countries.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"allowed\": - {\n \"type\": \"array\",\n \"description\": \"A list of - region codes that identify countries where the video is viewable. If this - property is present and a country is not listed in its value, then the video - is blocked from appearing in that country. If this property is present and - contains an empty list, the video is blocked in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"type\": - \"object\"\n },\n \"Video\": {\n \"description\": \"A *video* resource - represents a YouTube video.\",\n \"id\": \"Video\",\n \"type\": - \"object\",\n \"properties\": {\n \"monetizationDetails\": {\n - \ \"description\": \"The monetizationDetails object encapsulates information - about the monetization status of the video.\",\n \"$ref\": \"VideoMonetizationDetails\"\n - \ },\n \"projectDetails\": {\n \"$ref\": \"VideoProjectDetails\",\n - \ \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"VideoLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\"\n },\n \"liveStreamingDetails\": {\n \"$ref\": - \"VideoLiveStreamingDetails\",\n \"description\": \"The liveStreamingDetails - object contains metadata about a live video broadcast. The object will only - be present in a video resource if the video is an upcoming, live, or completed - live broadcast.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the video's uploading, processing, - and privacy statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - contains statistics about the video.\",\n \"$ref\": \"VideoStatistics\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.videos.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"ageGating\": {\n \"$ref\": - \"VideoAgeGating\",\n \"description\": \"Age restriction details - related to a video. This data can only be retrieved by the video owner.\"\n - \ },\n \"processingDetails\": {\n \"description\": \"The - processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoProcessingDetails\"\n },\n \"kind\": - {\n \"default\": \"youtube#video\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#video\\\".\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"recordingDetails\": - {\n \"$ref\": \"VideoRecordingDetails\",\n \"description\": - \"The recordingDetails object encapsulates information about the location, - date and address where the video was recorded.\"\n },\n \"player\": - {\n \"$ref\": \"VideoPlayer\",\n \"description\": \"The - player object contains information that you would use to play the video in - an embedded player.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video, such as its title, - description, and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n - \ \"topicDetails\": {\n \"description\": \"The topicDetails - object encapsulates information about Freebase topics associated with the - video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n \"fileDetails\": - {\n \"description\": \"The fileDetails object encapsulates information - about the video file that was uploaded to YouTube, including the file's resolution, - duration, audio and video codecs, stream bitrates, and more. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"suggestions\": {\n \"$ref\": - \"VideoSuggestions\",\n \"description\": \"The suggestions object - encapsulates suggestions that identify opportunities to improve the video - quality or the metadata for the uploaded video. This data can only be retrieved - by the video owner.\"\n }\n }\n },\n \"SearchResultSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"liveBroadcastContent\": - {\n \"description\": \"It indicates if the resource (video or channel) - has upcoming/active live broadcast content. Or it's \\\"none\\\" if there - is not any upcoming/active live broadcasts.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The creation date and time of the resource that the search result identifies.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the search result.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"A description - of the search result.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The value that YouTube uses to uniquely - identify the channel that published the resource that the search result identifies.\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the search result. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelTitle\": {\n \"description\": - \"The title of the channel that published the resource that the search result - identifies.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"id\": \"SearchResultSnippet\"\n - \ },\n \"PlaylistItem\": {\n \"description\": \"A *playlistItem* - resource identifies another resource, such as a video, that is included in - a playlist. In addition, the playlistItem resource contains details about - the included resource that pertain specifically to how that resource is used - in that playlist. YouTube uses playlists to identify special collections of - videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods. For example, if - a user gives a positive rating to a video, you would insert that video into - the liked videos playlist for that user's channel.\",\n \"id\": \"PlaylistItem\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"contentDetails\": - {\n \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#playlistItem\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItem\\\".\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the playlist item's privacy status.\",\n \"$ref\": \"PlaylistItemStatus\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the playlist item, such as its title and position in the - playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n }\n }\n - \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"properties\": - {\n \"banType\": {\n \"description\": \"The type of ban.\",\n - \ \"enum\": [\n \"permanent\",\n \"temporary\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"bannedUserDetails\": - {\n \"description\": \"The details of the user that was banned.\",\n - \ \"$ref\": \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": - {\n \"format\": \"uint64\",\n \"description\": \"The duration - of the ban. This property is only present if the banType is temporary.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"type\": \"object\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"id\": \"CommentSnippetAuthorChannelId\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"The id of the author's YouTube - channel, if any.\"\n },\n \"VideoContentDetails\": {\n \"type\": - \"object\",\n \"description\": \"Details about the content of a YouTube - Video.\",\n \"id\": \"VideoContentDetails\",\n \"properties\": {\n - \ \"hasCustomThumbnail\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\"\n },\n - \ \"regionRestriction\": {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\"\n },\n \"caption\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"true\",\n - \ \"false\"\n ],\n \"description\": \"The value - of captions indicates whether the video has captions or not.\"\n },\n - \ \"definition\": {\n \"enum\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"description\": \"The value of definition indicates - whether the video is available in high definition or only in standard definition.\",\n - \ \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"type\": \"string\"\n },\n \"countryRestriction\": - {\n \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\",\n \"$ref\": - \"AccessPolicy\"\n },\n \"licensedContent\": {\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\",\n \"type\": \"boolean\"\n },\n \"duration\": - {\n \"type\": \"string\",\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"dimension\": {\n \"type\": \"string\",\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\"\n },\n \"projection\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"description\": \"Specifies the projection format - of the video.\"\n },\n \"contentRating\": {\n \"$ref\": - \"ContentRating\",\n \"description\": \"Specifies the ratings that - the video received under various rating schemes.\"\n }\n }\n },\n - \ \"ImageSettings\": {\n \"id\": \"ImageSettings\",\n \"properties\": - {\n \"smallBrandedBannerImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n - \ \"description\": \"The URL for the 640px by 70px banner image that - appears below the video player in the default view of the video watch page. - The URL for the image that appears above the top-left corner of the video - player. This is a 25-pixel-high image with a flexible width that cannot exceed - 170 pixels.\"\n },\n \"backgroundImageUrl\": {\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTvMediumImageUrl\": {\n - \ \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size low resolution (854x480).\"\n },\n \"bannerImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n },\n \"bannerTabletImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\",\n \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTvImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n },\n \"bannerTvHighImageUrl\": - {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": - {\n \"description\": \"Banner image. Mobile size (640x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"bannerMobileMediumHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size medium/high - resolution (960x263).\"\n },\n \"watchIconImageUrl\": {\n \"type\": - \"string\"\n },\n \"trackingImageUrl\": {\n \"description\": - \"The URL for a 1px by 1px tracking pixel that can be used to collect statistics - for views of the channel or video pages.\",\n \"type\": \"string\"\n - \ },\n \"bannerTabletHdImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Tablet size high resolution (2276x377).\"\n - \ }\n },\n \"description\": \"Branding properties for images - associated with the channel.\",\n \"type\": \"object\"\n },\n \"CdnSettings\": - {\n \"properties\": {\n \"format\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The format of the video stream that you are sending - to Youtube. \"\n },\n \"resolution\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\",\n \"enum\": [\n \"240p\",\n \"360p\",\n - \ \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\",\n - \ \"2160p\",\n \"variable\"\n ],\n \"type\": - \"string\"\n },\n \"ingestionType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"rtmp\",\n \"dash\",\n - \ \"webrtc\",\n \"hls\"\n ],\n \"description\": - \" The method or protocol used to transmit the video stream.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"frameRate\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The frame rate - of the inbound video data.\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ]\n },\n - \ \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n \"description\": - \"The ingestionInfo object contains information that YouTube provides that - you need to transmit your RTMP or HTTP stream to YouTube.\"\n }\n },\n - \ \"id\": \"CdnSettings\",\n \"type\": \"object\",\n \"description\": - \"Brief description of the live stream cdn settings.\"\n },\n \"TestItem\": - {\n \"id\": \"TestItem\",\n \"type\": \"object\",\n \"properties\": - {\n \"gaia\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ }\n }\n },\n \"ActivityContentDetailsFavorite\": {\n \"type\": - \"object\",\n \"description\": \"Information about a video that was marked - as a favorite video.\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that was marked as a favorite.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"I18nRegionSnippet\": {\n \"description\": \"Basic details - about an i18n region, such as region code and human-readable name.\",\n \"type\": - \"object\",\n \"id\": \"I18nRegionSnippet\",\n \"properties\": {\n - \ \"gl\": {\n \"type\": \"string\",\n \"description\": - \"The region code as a 2-letter ISO country code.\"\n },\n \"name\": - {\n \"type\": \"string\",\n \"description\": \"The human-readable - name of the region.\"\n }\n }\n },\n \"ChannelProfileDetails\": - {\n \"properties\": {\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n },\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The channel's display name.\"\n - \ },\n \"profileImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The channels's avatar URL.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ChannelProfileDetails\"\n },\n - \ \"Channel\": {\n \"properties\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#channel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\"\n - \ },\n \"brandingSettings\": {\n \"$ref\": \"ChannelBrandingSettings\",\n - \ \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\"\n },\n \"contentOwnerDetails\": - {\n \"$ref\": \"ChannelContentOwnerDetails\",\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\"\n },\n \"topicDetails\": - {\n \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\",\n \"$ref\": - \"ChannelTopicDetails\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the channel, such as its title, description, and thumbnail - images.\",\n \"$ref\": \"ChannelSnippet\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"description\": \"Localizations - for different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelLocalization\"\n }\n },\n \"auditDetails\": - {\n \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\",\n - \ \"$ref\": \"ChannelAuditDetails\"\n },\n \"conversionPings\": - {\n \"$ref\": \"ChannelConversionPings\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\"\n },\n \"status\": - {\n \"$ref\": \"ChannelStatus\",\n \"description\": \"The - status object encapsulates information about the privacy status of the channel.\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object encapsulates information about the channel's content.\",\n - \ \"$ref\": \"ChannelContentDetails\"\n },\n \"statistics\": - {\n \"$ref\": \"ChannelStatistics\",\n \"description\": - \"The statistics object encapsulates statistics for the channel.\"\n }\n - \ },\n \"description\": \"A *channel* resource contains information - about a YouTube channel.\",\n \"id\": \"Channel\",\n \"type\": \"object\"\n - \ },\n \"SearchResult\": {\n \"description\": \"A search result - contains information about a YouTube video, channel, or playlist that matches - the search parameters specified in an API request. While a search result points - to a uniquely identifiable resource, like a video, it does not have its own - persistent data.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\",\n \"$ref\": \"SearchResultSnippet\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#searchResult\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ },\n \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n }\n },\n \"id\": - \"SearchResult\"\n },\n \"ChannelLocalization\": {\n \"id\": \"ChannelLocalization\",\n - \ \"description\": \"Channel localization setting\",\n \"type\": - \"object\",\n \"properties\": {\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - description.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for channel's title.\"\n - \ }\n }\n },\n \"Comment\": {\n \"id\": \"Comment\",\n - \ \"type\": \"object\",\n \"description\": \"A *comment* represents - a single YouTube comment.\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#comment\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#comment\\\".\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment.\"\n }\n - \ }\n },\n \"VideoPlayer\": {\n \"description\": \"Player to - be used for a video playback.\",\n \"id\": \"VideoPlayer\",\n \"properties\": - {\n \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\",\n \"type\": - \"string\"\n },\n \"embedWidth\": {\n \"type\": \"string\",\n - \ \"format\": \"int64\",\n \"description\": \"The embed width\"\n - \ },\n \"embedHeight\": {\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"MembershipsDurationAtLevel\": {\n \"properties\": {\n \"memberSince\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the user became a continuous member for the given level.\"\n - \ },\n \"level\": {\n \"description\": \"Pricing level - ID.\",\n \"type\": \"string\"\n },\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - for the given level in complete months (the time is rounded down to the nearest - integer).\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"MembershipsDurationAtLevel\"\n - \ },\n \"ActivityListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#activityListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Activity\"\n }\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ActivityListResponse\"\n - \ },\n \"PlaylistItemContentDetails\": {\n \"properties\": {\n \"startAt\": - {\n \"description\": \"The time, measured in seconds from the start - of the video, when the video should start playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) The default value is 0.\",\n \"type\": - \"string\"\n },\n \"endAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The time, measured in seconds from the start - of the video, when the video should stop playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) By default, assume that the video.endTime - is the end of the video.\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify a video. To retrieve the video - resource, set the id query parameter to this value in your API request.\",\n - \ \"type\": \"string\"\n },\n \"videoPublishedAt\": - {\n \"description\": \"The date and time that the video was published - to YouTube.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"note\": {\n \"type\": \"string\",\n - \ \"description\": \"A user-generated note for this item.\"\n }\n - \ },\n \"id\": \"PlaylistItemContentDetails\",\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageRetractedDetails\": {\n \"id\": \"LiveChatMessageRetractedDetails\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"Activity\": - {\n \"description\": \"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.\",\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ActivityContentDetails\",\n \"description\": \"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.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the activity, including the activity's type and group ID.\",\n \"$ref\": - \"ActivitySnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"default\": \"youtube#activity\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"Activity\"\n },\n \"ChannelSectionLocalization\": - {\n \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for channel section's title.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"ChannelSection localization setting\",\n \"id\": \"ChannelSectionLocalization\"\n - \ },\n \"VideoFileDetailsAudioStream\": {\n \"id\": \"VideoFileDetailsAudioStream\",\n - \ \"description\": \"Information about an audio stream.\",\n \"properties\": - {\n \"channelCount\": {\n \"description\": \"The number of - audio channels that the stream contains.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"codec\": {\n \"description\": - \"The audio codec that the stream uses.\",\n \"type\": \"string\"\n - \ },\n \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - audio stream's bitrate, in bits per second.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"properties\": - {\n \"memberLevelName\": {\n \"description\": \"The name of - the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ },\n \"gifterChannelId\": {\n \"description\": \"The - ID of the user that made the membership gifting purchase. This matches the - `snippet.authorChannelId` of the associated membership gifting message.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"InvideoPosition\": - {\n \"id\": \"InvideoPosition\",\n \"type\": \"object\",\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"properties\": {\n \"type\": {\n \"enum\": [\n \"corner\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\"\n ],\n \"description\": \"Defines the - position type.\"\n },\n \"cornerPosition\": {\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\",\n - \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n }\n },\n - \ \"Member\": {\n \"description\": \"A *member* resource represents - a member for a YouTube channel. A member provides recurring monetary support - to a creator and receives special benefits.\",\n \"id\": \"Member\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#member\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"MemberSnippet\",\n \"description\": \"The snippet object contains - basic details about the member.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatModerator\": {\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"LiveChatModeratorSnippet\",\n \"description\": - \"The snippet object contains basic details about the moderator.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"default\": \"youtube#liveChatModerator\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\"\n }\n },\n \"id\": \"LiveChatModerator\",\n - \ \"description\": \"A *liveChatModerator* resource represents a moderator - for a YouTube live chat. A chat moderator has the ability to ban/unban users - from a chat, remove message, etc.\",\n \"type\": \"object\"\n },\n - \ \"VideoFileDetailsVideoStream\": {\n \"id\": \"VideoFileDetailsVideoStream\",\n - \ \"properties\": {\n \"rotation\": {\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ]\n },\n \"bitrateBps\": {\n - \ \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The video stream's bitrate, in bits per second.\"\n },\n \"aspectRatio\": - {\n \"description\": \"The video content's display aspect ratio, - which specifies the aspect ratio in which the video should be displayed.\",\n - \ \"format\": \"double\",\n \"type\": \"number\"\n },\n - \ \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The video codec that the stream uses.\"\n },\n \"widthPixels\": - {\n \"type\": \"integer\",\n \"description\": \"The encoded - video content's width in pixels. You can calculate the video's encoding aspect - ratio as width_pixels / height_pixels.\",\n \"format\": \"uint32\"\n - \ },\n \"heightPixels\": {\n \"description\": \"The - encoded video content's height in pixels.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"frameRateFps\": {\n \"format\": \"double\",\n \"type\": - \"number\",\n \"description\": \"The video stream's frame rate, in - frames per second.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Information about a video stream.\"\n },\n \"Subscription\": {\n \"id\": - \"Subscription\",\n \"properties\": {\n \"contentDetails\": {\n - \ \"description\": \"The contentDetails object contains basic statistics - about the subscription.\",\n \"$ref\": \"SubscriptionContentDetails\"\n - \ },\n \"subscriberSnippet\": {\n \"description\": \"The - subscriberSnippet object contains basic details about the subscriber.\",\n - \ \"$ref\": \"SubscriptionSubscriberSnippet\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the subscription.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#subscription\\\".\",\n \"default\": - \"youtube#subscription\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the subscription, including its title and the channel that the user - subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A *subscription* resource contains information about - a YouTube user subscription. A subscription notifies a user when new videos - are added to a channel or when another user takes one of several actions on - YouTube, such as uploading a video, rating a video, or commenting on a video.\"\n - \ },\n \"MembershipsDetails\": {\n \"type\": \"object\",\n \"id\": - \"MembershipsDetails\",\n \"properties\": {\n \"membershipsDuration\": - {\n \"$ref\": \"MembershipsDuration\",\n \"description\": - \"Data about memberships duration without taking into consideration pricing - levels.\"\n },\n \"highestAccessibleLevelDisplayName\": {\n - \ \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n },\n - \ \"accessibleLevels\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Ids of all levels that - the user has access to. This includes the currently active level and all other - levels that are included because of a higher purchase.\",\n \"type\": - \"array\"\n },\n \"membershipsDurationAtLevels\": {\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"description\": - \"Data about memberships duration on particular pricing levels.\",\n \"type\": - \"array\"\n },\n \"highestAccessibleLevel\": {\n \"description\": - \"Id of the highest level that the user has access to at the moment.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"TokenPagination\": - {\n \"id\": \"TokenPagination\",\n \"description\": \"Stub token - pagination template to suppress results.\",\n \"properties\": {},\n \"type\": - \"object\"\n },\n \"VideoAbuseReportReasonSnippet\": {\n \"description\": - \"Basic details about a video category, such as its localized title.\",\n - \ \"id\": \"VideoAbuseReportReasonSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"secondaryReasons\": {\n \"description\": - \"The secondary reasons associated with this reason, if any are available. - (There might be 0 or more.)\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n }\n - \ },\n \"label\": {\n \"description\": \"The localized - label belonging to this abuse report reason.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoAbuseReportReason\": {\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoAbuseReportReason\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID of this abuse report reason.\"\n }\n },\n \"description\": - \"A `__videoAbuseReportReason__` resource identifies a reason that a video - could be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\",\n - \ \"id\": \"VideoAbuseReportReason\",\n \"type\": \"object\"\n },\n - \ \"Cuepoint\": {\n \"properties\": {\n \"insertionOffsetTimeMs\": - {\n \"description\": \"The time when the cuepoint should be inserted - by offset to the broadcast actual start time.\",\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n },\n \"id\": {\n \"description\": - \"The identifier for cuepoint resource.\",\n \"type\": \"string\"\n - \ },\n \"durationSecs\": {\n \"description\": \"The - duration of this cuepoint.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"cueType\": {\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"walltimeMs\": {\n \"type\": \"string\",\n \"description\": - \"The wall clock time at which the cuepoint should be inserted. Only one of - insertion_offset_time_ms and walltime_ms may be set at a time.\",\n \"format\": - \"uint64\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"Cuepoint\",\n \"description\": \"Note that there may be a 5-second - end-point resolution issue. For instance, if a cuepoint comes in for 22:03:27, - we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. This is an - artifact of HLS.\"\n },\n \"LevelDetails\": {\n \"id\": \"LevelDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - that should be used when referring to this level.\"\n }\n }\n - \ },\n \"CaptionSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a caption track, such as its language and name.\",\n - \ \"id\": \"CaptionSnippet\",\n \"properties\": {\n \"name\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the caption track. The name is intended to be visible to the user as an - option during playback.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n }\n - \ },\n \"language\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The language of the caption track. The property - value is a BCP-47 language tag.\",\n \"type\": \"string\"\n },\n - \ \"isEasyReader\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n - \ },\n \"isCC\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\"\n },\n \"trackKind\": - {\n \"description\": \"The caption track's type.\",\n \"type\": - \"string\",\n \"enum\": [\n \"standard\",\n \"ASR\",\n - \ \"forced\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"audioTrackType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of audio track associated with the caption track.\",\n \"type\": - \"string\",\n \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ]\n },\n - \ \"isAutoSynced\": {\n \"description\": \"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.\",\n - \ \"type\": \"boolean\"\n },\n \"lastUpdated\": {\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the caption track was last updated.\"\n },\n - \ \"status\": {\n \"description\": \"The caption track's status.\",\n - \ \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"isDraft\": {\n \"type\": \"boolean\",\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video associated with - the caption track. @mutable youtube.captions.insert\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"isLarge\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the caption track - uses large text for the vision-impaired. The default value is false.\"\n },\n - \ \"failureReason\": {\n \"enum\": [\n \"unknownFormat\",\n - \ \"unsupportedFormat\",\n \"processingFailed\"\n ],\n - \ \"description\": \"The reason that YouTube failed to process the - caption track. This property is only present if the state property's value - is failed.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ }\n },\n \"ChannelSectionSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"description\": \"The - type of the channel section.\",\n \"type\": \"string\"\n },\n - \ \"localized\": {\n \"$ref\": \"ChannelSectionLocalization\",\n - \ \"description\": \"Localized title, read-only.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel section's default title and description.\"\n },\n \"title\": - {\n \"description\": \"The channel section's title for multiple_playlists - and multiple_channels.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the channel section.\",\n \"type\": \"string\"\n - \ },\n \"style\": {\n \"description\": \"The style of - the channel section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"position\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The position of the channel section - in the channel.\"\n }\n },\n \"id\": \"ChannelSectionSnippet\",\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\"\n },\n \"MemberListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of members that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Member\"\n }\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"id\": \"MemberListResponse\"\n },\n \"ChannelSettings\": - {\n \"description\": \"Branding properties for the channel view.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"description\": \"Specifies the channel description.\",\n \"type\": - \"string\"\n },\n \"moderateComments\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether user-submitted comments - left on the channel page need to be approved by the channel owner to be publicly - visible.\"\n },\n \"showRelatedChannels\": {\n \"description\": - \"Whether related channels should be proposed.\",\n \"type\": \"boolean\"\n - \ },\n \"keywords\": {\n \"type\": \"string\",\n \"description\": - \"Lists keywords associated with the channel, comma-separated.\"\n },\n - \ \"featuredChannelsUrls\": {\n \"type\": \"array\",\n \"description\": - \"The list of featured channels.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"profileColor\": {\n \"description\": - \"A prominent color that can be rendered on this channel page.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\"\n },\n \"unsubscribedTrailer\": {\n \"description\": - \"The trailer of the channel, for users that are not subscribers.\",\n \"type\": - \"string\"\n },\n \"trackingAnalyticsAccountId\": {\n \"type\": - \"string\",\n \"description\": \"The ID for a Google Analytics account - to track and measure traffic to the channels.\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the channel title.\"\n - \ },\n \"defaultTab\": {\n \"description\": \"Which - content tab users should see when viewing the channel.\",\n \"type\": - \"string\"\n },\n \"showBrowseView\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the tab to browse the videos - should be displayed.\"\n },\n \"country\": {\n \"type\": - \"string\",\n \"description\": \"The country of the channel.\"\n - \ }\n },\n \"id\": \"ChannelSettings\"\n },\n \"PlaylistItemStatus\": - {\n \"id\": \"PlaylistItemStatus\",\n \"description\": \"Information - about the playlist item's privacy status.\",\n \"properties\": {\n \"privacyStatus\": - {\n \"description\": \"This resource's privacy status.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ThirdPartyLinkSnippet\": - {\n \"properties\": {\n \"type\": {\n \"type\": \"string\",\n - \ \"description\": \"Type of the link named after the entities that - are being linked.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel with - a store on a merchandising platform in order to enable retail commerce capabilities - for that channel on YouTube.\"\n ],\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ]\n },\n \"channelToStoreLink\": - {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ThirdPartyLinkSnippet\",\n \"description\": \"Basic information about - a third party account link, including its type and type-specific information.\"\n - \ },\n \"ChannelSectionTargeting\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelSectionTargeting\",\n \"description\": \"ChannelSection - targeting setting.\",\n \"properties\": {\n \"regions\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The region the channel section is targeting.\",\n \"type\": \"array\"\n - \ },\n \"countries\": {\n \"type\": \"array\",\n \"description\": - \"The country the channel section is targeting.\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n },\n \"languages\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The language the channel - section is targeting.\"\n }\n }\n },\n \"PlaylistLocalization\": - {\n \"description\": \"Playlist localization setting\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for playlist's description.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's title.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PlaylistLocalization\"\n },\n \"IngestionInfo\": {\n - \ \"id\": \"IngestionInfo\",\n \"description\": \"Describes information - necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"properties\": - {\n \"ingestionAddress\": {\n \"type\": \"string\",\n \"description\": - \"The primary ingestion URL that you should use to stream video to YouTube. - You must stream video to this URL. Depending on which application or tool - you use to encode your video stream, you may need to enter the stream URL - and stream name separately or you may need to concatenate them in the following - format: *STREAM_URL/STREAM_NAME* \"\n },\n \"backupIngestionAddress\": - {\n \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\",\n - \ \"type\": \"string\"\n },\n \"rtmpsIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"streamName\": - {\n \"description\": \"The stream name that YouTube assigns to the - video stream.\",\n \"type\": \"string\"\n },\n \"rtmpsBackupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of backupIngestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoLocalization\": {\n \"description\": \"Localized - versions of certain video properties (e.g. title).\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"Localized version of the video's description.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's title.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoLocalization\"\n },\n \"LiveChatMessageSnippet\": - {\n \"description\": \"Next ID: 33\",\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"displayMessage\": - {\n \"type\": \"string\",\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"messageDeletedDetails\": {\n \"$ref\": - \"LiveChatMessageDeletedDetails\"\n },\n \"publishedAt\": {\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the message was orignally published.\"\n },\n - \ \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n - \ \"description\": \"Details about the Super Chat event, this is only - set if the type is 'superChatEvent'.\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"memberMilestoneChatDetails\": {\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\",\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"giftMembershipReceivedDetails\": {\n \"$ref\": - \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": \"Details - about the Gift Membership Received event, this is only set if the type is - 'giftMembershipReceivedEvent'.\"\n },\n \"superStickerDetails\": - {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\"\n - \ },\n \"hasDisplayContent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the message has display content that - should be displayed to users.\"\n },\n \"membershipGiftingDetails\": - {\n \"description\": \"Details about the Membership Gifting event, - this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": - \"LiveChatMembershipGiftingDetails\"\n },\n \"fanFundingEventDetails\": - {\n \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"newSponsorDetails\": {\n \"description\": \"Details - about the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. - Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n - \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"liveChatId\": - {\n \"type\": \"string\"\n },\n \"type\": {\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"authorChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\"\n }\n }\n },\n \"ActivityContentDetailsLike\": - {\n \"id\": \"ActivityContentDetailsLike\",\n \"properties\": {\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Information - about a resource that received a positive (like) rating.\"\n },\n \"LiveStreamStatus\": - {\n \"id\": \"LiveStreamStatus\",\n \"type\": \"object\",\n \"description\": - \"Brief description of the live stream status.\",\n \"properties\": {\n - \ \"healthStatus\": {\n \"description\": \"The health status - of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n },\n - \ \"streamStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ]\n }\n }\n },\n \"PlaylistItemSnippet\": - {\n \"id\": \"PlaylistItemSnippet\",\n \"properties\": {\n \"videoOwnerChannelId\": - {\n \"description\": \"Channel id for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The item's - description.\"\n },\n \"videoOwnerChannelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel this - video belongs to.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the playlist item. 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.\"\n },\n \"title\": {\n - \ \"description\": \"The item's title.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the user that added the item to the - playlist.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"description\": \"The id object contains information that can - be used to uniquely identify the resource that is included in the playlist - as the playlist item.\",\n \"$ref\": \"ResourceId\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the item was added to the playlist.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"position\": - {\n \"description\": \"The order in which the item appears in the - playlist. The value uses a zero-based index, so the first item has a position - of 0, the second item has a position of 1, and so forth.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify thGe playlist that the playlist item is in.\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the playlist - item belongs to.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails. - Basic details of a YouTube Playlist item provided by the author. Next ID: - 15\"\n },\n \"I18nLanguageSnippet\": {\n \"properties\": {\n \"name\": - {\n \"description\": \"The human-readable name of the language in - the language itself.\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"description\": \"A short BCP-47 code that uniquely identifies - a language.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"I18nLanguageSnippet\",\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\"\n },\n \"ChannelTopicDetails\": {\n \"id\": \"ChannelTopicDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"topicCategories\": - {\n \"type\": \"array\",\n \"description\": \"A list of - Wikipedia URLs that describe the channel's content.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicIds\": - {\n \"type\": \"array\",\n \"description\": \"A list of - Freebase topic IDs associated with the channel. You can retrieve information - about each topic using the Freebase Topic API.\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n }\n },\n \"description\": - \"Freebase topic information related to the channel.\"\n },\n \"LiveBroadcastStatus\": - {\n \"properties\": {\n \"recordingStatus\": {\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ],\n \"description\": \"The broadcast's recording status.\",\n - \ \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"type\": \"string\"\n },\n \"lifeCycleStatus\": - {\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"This field - will be set to True if the creator declares the broadcast to be kids only: - go/live-cw-work.\"\n },\n \"madeForKids\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the broadcast is made for - kids or not, decided by YouTube instead of the creator. This field is read - only.\"\n },\n \"liveBroadcastPriority\": {\n \"description\": - \"Priority of the live broadcast event (internal state).\",\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ]\n - \ },\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveBroadcastStatus\",\n - \ \"description\": \"Live broadcast state.\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level at which the viever is a member. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"memberMonth\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\"\n },\n \"userComment\": - {\n \"description\": \"The comment added by the member to this Member - Milestone Chat. This field is empty for messages without a comment from the - member.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"properties\": {\n \"giftMembershipsCount\": {\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The number of gift memberships purchased by the user.\"\n },\n \"giftMembershipsLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the level of the gift memberships purchased by the user. The Level names - are defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n }\n }\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that was added to the channel.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"Details about a resource which was added to a channel.\"\n - \ },\n \"RelatedEntity\": {\n \"type\": \"object\",\n \"id\": - \"RelatedEntity\",\n \"properties\": {\n \"entity\": {\n \"$ref\": - \"Entity\"\n }\n }\n },\n \"CommentListResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"description\": - \"A list of comments that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"type\": \"array\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": - \"CommentListResponse\",\n \"type\": \"object\"\n },\n \"MembershipsLevelSnippet\": - {\n \"id\": \"MembershipsLevelSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"levelDetails\": {\n \"description\": - \"Details about the pricing level.\",\n \"$ref\": \"LevelDetails\"\n - \ },\n \"creatorChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The id of the channel that's offering channel - memberships.\"\n }\n }\n },\n \"SubscriptionSnippet\": {\n - \ \"description\": \"Basic details about a subscription, including title, - description and thumbnails of the subscribed item.\",\n \"type\": \"object\",\n - \ \"id\": \"SubscriptionSnippet\",\n \"properties\": {\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the subscription was created.\",\n \"format\": \"date-time\"\n - \ },\n \"resourceId\": {\n \"description\": \"The id - object contains information about the channel that the user subscribed to.\",\n - \ \"$ref\": \"ResourceId\",\n \"annotations\": {\n \"required\": - [\n \"youtube.subscriptions.insert\"\n ]\n }\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The subscription's details.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The subscription's - title.\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the subscription belongs to.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"Caption\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the caption track.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n }\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"default\": \"youtube#caption\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"CaptionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the caption.\"\n }\n },\n \"description\": \"A *caption* - resource represents a YouTube caption track. A caption track is associated - with exactly one YouTube video.\",\n \"id\": \"Caption\",\n \"type\": - \"object\"\n },\n \"CaptionListResponse\": {\n \"id\": \"CaptionListResponse\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"Caption\"\n },\n \"description\": \"A list of captions - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": - {\n \"id\": \"LiveChatMessageListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatMessageListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"type\": - \"array\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"pollingIntervalMillis\": {\n \"description\": \"The amount - of time the client should wait before polling again.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"offlineAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the underlying stream - went offline.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n }\n },\n \"InvideoBranding\": {\n \"type\": - \"object\",\n \"description\": \"LINT.IfChange Describes an invideo branding.\",\n - \ \"id\": \"InvideoBranding\",\n \"properties\": {\n \"position\": - {\n \"description\": \"The spatial position within the video where - the branding watermark will be displayed.\",\n \"$ref\": \"InvideoPosition\"\n - \ },\n \"imageBytes\": {\n \"description\": \"The bytes - the uploaded image. Only used in api to youtube communication.\",\n \"type\": - \"string\",\n \"format\": \"byte\"\n },\n \"timing\": - {\n \"description\": \"The temporal position within the video where - watermark will be displayed.\",\n \"$ref\": \"InvideoTiming\"\n },\n - \ \"imageUrl\": {\n \"description\": \"The url of the uploaded - image. Only used in apiary to api communication.\",\n \"type\": \"string\"\n - \ },\n \"targetChannelId\": {\n \"description\": \"The - channel to which this branding links. If not present it defaults to the current - channel.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"VideoTopicDetails\": {\n \"properties\": {\n \"topicIds\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Freebase - topic IDs that are centrally associated with the video. These are topics that - are centrally featured in the video, and it can be said that the video is - mainly about each of these. You can retrieve information about each topic - using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n },\n \"topicCategories\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\",\n \"type\": \"array\"\n },\n \"relevantTopicIds\": - {\n \"type\": \"array\",\n \"description\": \"Similar to - topic_id, except that these topics are merely relevant to the video. These - are topics that may be mentioned in, or appear in the video. You can retrieve - information about each topic using Freebase Topic API.\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"id\": - \"VideoTopicDetails\",\n \"description\": \"Freebase topic information - related to the video.\",\n \"type\": \"object\"\n },\n \"LanguageTag\": - {\n \"id\": \"LanguageTag\",\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelAuditDetails\": {\n \"type\": \"object\",\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\",\n \"properties\": {\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any unresolved claims.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n }\n },\n \"id\": - \"ChannelAuditDetails\"\n },\n \"ChannelSnippet\": {\n \"properties\": - {\n \"customUrl\": {\n \"type\": \"string\",\n \"description\": - \"The custom url of the channel.\"\n },\n \"thumbnails\": {\n - \ \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the channel was created.\"\n },\n \"localized\": {\n - \ \"description\": \"Localized title and description, read-only.\",\n - \ \"$ref\": \"ChannelLocalization\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - title.\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the channel.\"\n },\n - \ \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel's default title - and description.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ChannelSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about a channel, including title, description and thumbnails.\"\n - \ },\n \"ThumbnailDetails\": {\n \"id\": \"ThumbnailDetails\",\n - \ \"description\": \"Internal representation of thumbnails for a YouTube - resource.\",\n \"properties\": {\n \"default\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The default image for this resource.\"\n - \ },\n \"high\": {\n \"description\": \"The high quality - image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"maxres\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The maximum resolution quality image for this resource.\"\n },\n - \ \"medium\": {\n \"description\": \"The medium quality image - for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"standard\": - {\n \"description\": \"The standard quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"PlaylistItemListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"PlaylistItemListResponse\",\n \"properties\": {\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"items\": {\n \"description\": - \"A list of playlist items that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n - \ }\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n }\n },\n \"MemberSnippet\": {\n \"properties\": - {\n \"creatorChannelId\": {\n \"description\": \"The id of - the channel that's offering memberships.\",\n \"type\": \"string\"\n - \ },\n \"memberDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the member.\"\n },\n \"membershipsDetails\": - {\n \"$ref\": \"MembershipsDetails\",\n \"description\": - \"Details about the user's membership.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"MemberSnippet\"\n },\n \"ThumbnailSetResponse\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n \"default\": - \"youtube#thumbnailSetResponse\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThumbnailDetails\"\n },\n \"description\": - \"A list of thumbnails.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ThumbnailSetResponse\"\n },\n \"VideoCategoryListResponse\": - {\n \"id\": \"VideoCategoryListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n },\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\",\n \"type\": \"array\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#videoCategoryListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n - \ }\n }\n },\n \"LiveChatModeratorListResponse\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatModeratorListResponse\",\n \"properties\": - {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of moderators that match the - request criteria.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n }\n },\n \"VideoProjectDetails\": {\n \"id\": - \"VideoProjectDetails\",\n \"description\": \"DEPRECATED. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"type\": \"object\",\n \"properties\": {}\n },\n \"ThirdPartyLinkStatus\": - {\n \"type\": \"object\",\n \"properties\": {\n \"linkStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ]\n }\n },\n \"id\": \"ThirdPartyLinkStatus\",\n - \ \"description\": \"The third-party link status object contains information - about the status of the link.\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"description\": \"Details about a social network post.\",\n \"id\": - \"ActivityContentDetailsSocial\",\n \"properties\": {\n \"author\": - {\n \"description\": \"The author of the social network post.\",\n - \ \"type\": \"string\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ],\n \"description\": \"The name - of the social network.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"An image of the post's author.\"\n },\n \"referenceUrl\": - {\n \"description\": \"The URL of the social network post.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoStatistics\": - {\n \"type\": \"object\",\n \"properties\": {\n \"viewCount\": - {\n \"description\": \"The number of times the video has been viewed.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"likeCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of users who have indicated - that they liked the video by giving it a positive rating.\"\n },\n - \ \"commentCount\": {\n \"description\": \"The number of comments - for the video.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"favoriteCount\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\"\n - \ },\n \"dislikeCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of users who have indicated that they - disliked the video by giving it a negative rating.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoStatistics\",\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\"\n },\n \"ActivityContentDetailsBulletin\": {\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsBulletin\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\"\n }\n - \ },\n \"description\": \"Details about a channel bulletin post.\"\n - \ },\n \"ActivitySnippet\": {\n \"id\": \"ActivitySnippet\",\n \"properties\": - {\n \"channelTitle\": {\n \"description\": \"Channel title - for the channel responsible for this activity\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"The description - of the resource primarily associated with the activity. @mutable youtube.activities.insert\",\n - \ \"type\": \"string\"\n },\n \"groupId\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"type\": - {\n \"description\": \"The type of activity that the resource describes.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ],\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel associated with the activity.\"\n - \ },\n \"thumbnails\": {\n \"description\": \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"title\": {\n \"description\": \"The title of the resource - primarily associated with the activity.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the video was uploaded.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\"\n },\n - \ \"GeoPoint\": {\n \"properties\": {\n \"longitude\": {\n \"format\": - \"double\",\n \"type\": \"number\",\n \"description\": \"Longitude - in degrees.\"\n },\n \"altitude\": {\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\",\n \"type\": - \"number\",\n \"format\": \"double\"\n },\n \"latitude\": - {\n \"description\": \"Latitude in degrees.\",\n \"type\": - \"number\",\n \"format\": \"double\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Geographical coordinates of a point, - in WGS84.\",\n \"id\": \"GeoPoint\"\n },\n \"CommentThreadReplies\": - {\n \"properties\": {\n \"comments\": {\n \"description\": - \"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.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Comment\"\n }\n }\n },\n \"id\": - \"CommentThreadReplies\",\n \"type\": \"object\",\n \"description\": - \"Comments written in (direct or indirect) reply to the top level comment.\"\n - \ },\n \"ChannelSectionListResponse\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"items\": {\n \"items\": {\n - \ \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"A list of ChannelSections that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelSectionListResponse\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelSectionListResponse\"\n - \ },\n \"SearchListResponse\": {\n \"type\": \"object\",\n \"id\": - \"SearchListResponse\",\n \"properties\": {\n \"items\": {\n \"description\": - \"Pagination information for token pagination.\",\n \"items\": {\n - \ \"$ref\": \"SearchResult\"\n },\n \"type\": - \"array\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#searchListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"type\": \"object\",\n \"properties\": {\n \"seedResourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The seedResourceId - object contains information about the resource that caused the recommendation.\"\n - \ },\n \"reason\": {\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that the resource is recommended to the user.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the recommended resource.\"\n }\n },\n \"id\": - \"ActivityContentDetailsRecommendation\",\n \"description\": \"Information - that identifies the recommended resource.\"\n },\n \"LiveStreamListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of live - streams that match the request criteria.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"LiveStream\"\n }\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveStreamListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": - \"LiveStreamListResponse\",\n \"type\": \"object\"\n },\n \"PlaylistSnippet\": - {\n \"properties\": {\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"The channel title of the channel - that the video belongs to.\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The playlist's description.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist. 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.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the playlist's default title - and description.\",\n \"type\": \"string\"\n },\n \"tags\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Keyword tags associated - with the playlist.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The playlist's title.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"thumbnailVideoId\": {\n \"description\": \"Note: if the - playlist has a custom thumbnail, this field will not be populated. The video - id selected by the user that will be used as the thumbnail of this playlist. - This field defaults to the first publicly viewable video in the playlist, - if: 1. The user has never selected a video to be the thumbnail of the playlist. - 2. The user selects a video to be the thumbnail, and then removes that video - from the playlist. 3. The user selects a non-owned video to be the thumbnail, - but that video becomes private, or gets deleted.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the playlist was created.\",\n - \ \"format\": \"date-time\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the playlist.\"\n - \ }\n },\n \"id\": \"PlaylistSnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a playlist, including title, - description and thumbnails.\"\n },\n \"WatchSettings\": {\n \"type\": - \"object\",\n \"id\": \"WatchSettings\",\n \"description\": \"Branding - properties for the watch. All deprecated.\",\n \"properties\": {\n \"backgroundColor\": - {\n \"type\": \"string\",\n \"description\": \"The text - color for the video watch page's branded area.\"\n },\n \"textColor\": - {\n \"description\": \"The background color for the video watch page's - branded area.\",\n \"type\": \"string\"\n },\n \"featuredPlaylistId\": - {\n \"type\": \"string\",\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\"\n - \ }\n }\n },\n \"ChannelBrandingSettings\": {\n \"id\": - \"ChannelBrandingSettings\",\n \"type\": \"object\",\n \"properties\": - {\n \"hints\": {\n \"description\": \"Additional experimental - branding properties.\",\n \"items\": {\n \"$ref\": \"PropertyValue\"\n - \ },\n \"type\": \"array\"\n },\n \"channel\": - {\n \"description\": \"Branding properties for the channel view.\",\n - \ \"$ref\": \"ChannelSettings\"\n },\n \"watch\": {\n - \ \"description\": \"Branding properties for the watch page.\",\n - \ \"$ref\": \"WatchSettings\"\n },\n \"image\": {\n - \ \"description\": \"Branding properties for branding images.\",\n - \ \"$ref\": \"ImageSettings\"\n }\n },\n \"description\": - \"Branding properties of a YouTube channel.\"\n },\n \"VideoRecordingDetails\": - {\n \"description\": \"Recording information associated with the video.\",\n - \ \"properties\": {\n \"recordingDate\": {\n \"description\": - \"The date and time when the video was recorded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"locationDescription\": - {\n \"type\": \"string\",\n \"description\": \"The text - description of the location where the video was recorded.\"\n },\n - \ \"location\": {\n \"$ref\": \"GeoPoint\",\n \"description\": - \"The geolocation information associated with the video.\"\n }\n },\n - \ \"id\": \"VideoRecordingDetails\",\n \"type\": \"object\"\n },\n - \ \"LiveBroadcastStatistics\": {\n \"type\": \"object\",\n \"id\": - \"LiveBroadcastStatistics\",\n \"properties\": {\n \"concurrentViewers\": - {\n \"description\": \"The number of viewers currently watching the - broadcast. The property and its value will be present if the broadcast has - current viewers and the broadcast owner has not hidden the viewcount for the - video. Note that YouTube stops tracking the number of concurrent viewers for - a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"totalChatCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The total number of live chat messages - currently on the broadcast. The property and its value will be present if - the broadcast is public, has the live chat feature enabled, and has at least - one message. Note that this field will not be filled after the broadcast ends. - So this property would not identify the number of chat messages for an archived - video of a completed live broadcast.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Statistics about the live broadcast. - These represent a snapshot of the values at the time of the request. Statistics - are only returned for live broadcasts.\"\n },\n \"VideoSuggestions\": - {\n \"id\": \"VideoSuggestions\",\n \"properties\": {\n \"tagSuggestions\": - {\n \"type\": \"array\",\n \"description\": \"A list of - keyword tags that could be added to the video's metadata to increase the likelihood - that users will locate your video when searching or browsing on YouTube.\",\n - \ \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ }\n },\n \"processingErrors\": {\n \"items\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n },\n \"description\": \"A list of errors - that will prevent YouTube from successfully processing the uploaded video - video. These errors indicate that, regardless of the video's current processing - status, eventually, that status will almost certainly be failed.\",\n \"type\": - \"array\"\n },\n \"processingWarnings\": {\n \"items\": - {\n \"type\": \"string\",\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ]\n },\n \"type\": \"array\",\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\"\n },\n \"editorSuggestions\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Picture brightness levels seem off and could be corrected.\",\n - \ \"The video appears shaky and could be stabilized.\",\n \"Margins - (mattes) detected around the picture could be cropped.\",\n \"The - audio track appears silent and could be swapped with a better quality one.\"\n - \ ],\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ]\n },\n \"description\": \"A list of video - editing operations that might improve the video quality or playback experience - of the uploaded video.\"\n },\n \"processingHints\": {\n \"type\": - \"array\",\n \"description\": \"A list of suggestions that may improve - YouTube's ability to process the video.\",\n \"items\": {\n \"enum\": - [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"The MP4 file is not streamable, - this will slow down the processing. MOOV atom was not found at the beginning - of the file.\",\n \"Probably a better quality version of the - video exists. The video has wide screen aspect ratio, but is not an HD video.\",\n - \ \"Uploaded video is spherical video.\",\n \"Uploaded - video has spatial audio.\",\n \"Uploaded video is VR video.\",\n - \ \"Uploaded video is HDR video.\"\n ]\n }\n - \ }\n },\n \"description\": \"Specifies suggestions on how - to improve video content, including encoding hints, tag suggestions, and editor - suggestions.\",\n \"type\": \"object\"\n },\n \"ChannelSection\": - {\n \"properties\": {\n \"targeting\": {\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n },\n \"snippet\": {\n \"$ref\": - \"ChannelSectionSnippet\",\n \"description\": \"The snippet object - contains basic details about the channel section, such as its type, style - and title.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\",\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelSectionLocalization\"\n - \ }\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel section.\"\n },\n \"kind\": - {\n \"default\": \"youtube#channelSection\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelSection\"\n - \ },\n \"Playlist\": {\n \"description\": \"A *playlist* resource - represents a YouTube playlist. A playlist is a collection of videos that can - be viewed sequentially and shared with other users. A playlist can contain - up to 200 videos, and YouTube does not limit the number of playlists that - each user creates. By default, playlists are publicly visible to other users, - but playlists can be public or private. YouTube also uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n - \ \"properties\": {\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the playlist - in an embedded player.\",\n \"$ref\": \"PlaylistPlayer\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"status\": {\n \"$ref\": - \"PlaylistStatus\",\n \"description\": \"The status object contains - status information for the playlist.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the playlist.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistContentDetails\",\n \"description\": \"The contentDetails - object contains information like video count.\"\n },\n \"localizations\": - {\n \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlist\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#playlist\"\n },\n \"snippet\": - {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": \"The - snippet object contains basic details about the playlist, such as its title - and description.\"\n }\n },\n \"id\": \"Playlist\",\n \"type\": - \"object\"\n },\n \"LiveChatSuperStickerDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatSuperStickerDetails\",\n \"properties\": - {\n \"tier\": {\n \"format\": \"uint32\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"type\": \"integer\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"Information about the Super Sticker.\",\n - \ \"$ref\": \"SuperStickerMetadata\"\n },\n \"amountMicros\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made.\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n }\n - \ }\n },\n \"I18nRegionListResponse\": {\n \"id\": \"I18nRegionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"I18nRegion\"\n },\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"default\": \"youtube#i18nRegionListResponse\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveBroadcastContentDetails\": - {\n \"properties\": {\n \"closedCaptionsType\": {\n \"enum\": - [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"enableEmbed\": {\n \"description\": \"This - setting indicates whether the broadcast video can be played in an embedded - player. If you choose to archive the video (using the enableArchive property), - this setting will also apply to the archived video.\",\n \"type\": - \"boolean\"\n },\n \"stereoLayout\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The 3D stereo layout of this broadcast. - This defaults to mono.\",\n \"type\": \"string\",\n \"enum\": - [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ]\n },\n \"enableContentEncryption\": - {\n \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n - \ },\n \"projection\": {\n \"description\": \"The projection - format of this broadcast. This defaults to rectangular.\",\n \"enum\": - [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"mesh\": - {\n \"description\": \"The mesh for projecting the video if projection - is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding - of 3D mesh data that follows the Spherical Video V2 RFC specification for - an mshp box, excluding the box size and type but including the following four - reserved zero bytes for the version and flags.\",\n \"type\": \"string\",\n - \ \"format\": \"byte\"\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the live stream referenced by boundStreamId was last updated.\",\n - \ \"type\": \"string\"\n },\n \"enableClosedCaptions\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether HTTP POST closed captioning is enabled for this broadcast. - The ingestion URL of the closed captions is returned through the liveStreams - API. This is mutually exclusive with using the closed_captions_type property, - and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n - \ },\n \"monitorStream\": {\n \"$ref\": \"MonitorStreamInfo\",\n - \ \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\"\n },\n \"recordFromStart\": - {\n \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\",\n \"type\": \"boolean\"\n },\n \"latencyPreference\": - {\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"description\": \"If both this and - enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"type\": \"string\"\n },\n \"boundStreamId\": - {\n \"description\": \"This value uniquely identifies the live stream - bound to the broadcast.\",\n \"type\": \"string\"\n },\n \"enableAutoStop\": - {\n \"description\": \"This setting indicates whether auto stop is - enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\",\n \"type\": \"boolean\"\n - \ },\n \"enableLowLatency\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether this broadcast has low latency - enabled.\"\n },\n \"enableAutoStart\": {\n \"description\": - \"This setting indicates whether auto start is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\",\n \"type\": \"boolean\"\n },\n \"enableDvr\": - {\n \"description\": \"This setting determines whether viewers can - access DVR controls while watching the video. DVR controls enable the viewer - to control the video playback experience by pausing, rewinding, or fast forwarding - content. The default value for this property is true. *Important:* You must - set the value to true and also set the enableArchive property's value to true - if you want to make playback available immediately after the broadcast ends.\",\n - \ \"type\": \"boolean\"\n },\n \"startWithSlate\": {\n - \ \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n }\n },\n \"description\": \"Detailed settings - of a broadcast.\",\n \"id\": \"LiveBroadcastContentDetails\",\n \"type\": - \"object\"\n },\n \"SuperChatEventListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#superChatEventListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"A list of Super - Chat purchases that match the request criteria.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"SuperChatEvent\"\n }\n - \ }\n },\n \"id\": \"SuperChatEventListResponse\",\n \"type\": - \"object\"\n },\n \"VideoSuggestionsTagSuggestion\": {\n \"description\": - \"A single tag suggestion with it's relevance information.\",\n \"id\": - \"VideoSuggestionsTagSuggestion\",\n \"type\": \"object\",\n \"properties\": - {\n \"categoryRestricts\": {\n \"type\": \"array\",\n \"description\": - \"A set of video categories for which the tag is relevant. You can use this - information to display appropriate tag suggestions based on the video category - that the video uploader associates with the video. By default, tag suggestions - are relevant for all categories if there are no restricts defined for the - keyword.\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"tag\": {\n \"type\": \"string\",\n \"description\": - \"The keyword tag suggested for the video.\"\n }\n }\n },\n - \ \"VideoAbuseReportSecondaryReason\": {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"label\": {\n - \ \"type\": \"string\",\n \"description\": \"The localized - label for this abuse report secondary reason.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - this abuse report secondary reason.\"\n }\n }\n },\n \"ChannelToStoreLinkDetails\": - {\n \"properties\": {\n \"storeUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Landing page of the store.\"\n },\n \"storeName\": - {\n \"type\": \"string\",\n \"description\": \"Name of the - store.\"\n },\n \"merchantId\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"Google Merchant - Center id of the store.\"\n }\n },\n \"description\": \"Information - specific to a store on a merchandising platform linked to a YouTube channel.\",\n - \ \"id\": \"ChannelToStoreLinkDetails\",\n \"type\": \"object\"\n - \ },\n \"Entity\": {\n \"type\": \"object\",\n \"id\": \"Entity\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"typeId\": {\n \"type\": \"string\"\n },\n - \ \"url\": {\n \"type\": \"string\"\n }\n }\n },\n - \ \"SubscriptionSubscriberSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"description\": {\n \"description\": \"The description - of the subscriber.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"Thumbnails - for this subscriber.\"\n },\n \"title\": {\n \"description\": - \"The title of the subscriber.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The channel ID of the - subscriber.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"SubscriptionSubscriberSnippet\",\n \"description\": \"Basic details - about a subscription's subscriber including title, description, channel ID - and thumbnails.\"\n },\n \"ActivityContentDetailsUpload\": {\n \"properties\": - {\n \"videoId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the uploaded video.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsUpload\",\n \"type\": - \"object\",\n \"description\": \"Information about the uploaded video.\"\n - \ },\n \"AbuseReport\": {\n \"id\": \"AbuseReport\",\n \"type\": - \"object\",\n \"properties\": {\n \"description\": {\n \"type\": - \"string\"\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n - \ },\n \"abuseTypes\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"AbuseType\"\n }\n },\n \"relatedEntities\": - {\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n - \ \"type\": \"array\"\n }\n }\n },\n \"VideoCategorySnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The video - category's title.\"\n },\n \"assignable\": {\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"description\": - \"The YouTube channel that created the video category.\"\n }\n },\n - \ \"id\": \"VideoCategorySnippet\",\n \"description\": \"Basic details - about a video category, such as its localized title.\"\n },\n \"VideoMonetizationDetails\": - {\n \"description\": \"Details about monetization of a YouTube Video.\",\n - \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The value of access indicates whether the video - can be monetized or not.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoMonetizationDetails\"\n },\n \"VideoAgeGating\": - {\n \"type\": \"object\",\n \"id\": \"VideoAgeGating\",\n \"properties\": - {\n \"alcoholContent\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether or not the video has alcoholic beverage content. Only - users of legal purchasing age in a particular country, as identified by ICAP, - can view the content.\"\n },\n \"restricted\": {\n \"type\": - \"boolean\",\n \"description\": \"Age-restricted trailers. For redband - trailers and adult-rated video-games. Only users aged 18+ can view the content. - The the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\"\n },\n \"videoGameRating\": {\n - \ \"description\": \"Video game rating, if any.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ]\n }\n }\n },\n \"Thumbnail\": - {\n \"description\": \"A thumbnail is an image representing a YouTube - resource.\",\n \"id\": \"Thumbnail\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"width\": {\n \"description\": - \"(Optional) Width of the thumbnail image.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"url\": {\n \"description\": - \"The thumbnail image's URL.\",\n \"type\": \"string\"\n },\n - \ \"height\": {\n \"type\": \"integer\",\n \"description\": - \"(Optional) Height of the thumbnail image.\",\n \"format\": \"uint32\"\n - \ }\n }\n },\n \"MonitorStreamInfo\": {\n \"id\": \"MonitorStreamInfo\",\n - \ \"type\": \"object\",\n \"description\": \"Settings and Info of - the monitor stream\",\n \"properties\": {\n \"enableMonitorStream\": - {\n \"description\": \"This value determines whether the monitor - stream is enabled for the broadcast. If the monitor stream is enabled, then - YouTube will broadcast the event content on a special stream intended only - for the broadcaster's consumption. The broadcaster can use the stream to review - the event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"boolean\"\n },\n \"broadcastStreamDelayMs\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"If you have set - the enableMonitorStream property to true, then this property determines the - length of the live broadcast delay.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"HTML code that embeds a player that - plays the monitor stream.\"\n }\n }\n },\n \"LiveChatSuperChatDetails\": - {\n \"properties\": {\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"description\": \"The amount purchased by the user, in micros (1,750,000 - micros = 1.75).\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"userComment\": {\n \"description\": \"The comment - added by the user to this Super Chat event.\",\n \"type\": \"string\"\n - \ },\n \"tier\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\"\n }\n - \ },\n \"id\": \"LiveChatSuperChatDetails\",\n \"type\": \"object\"\n - \ },\n \"LiveBroadcastSnippet\": {\n \"id\": \"LiveBroadcastSnippet\",\n - \ \"properties\": {\n \"isDefaultBroadcast\": {\n \"description\": - \"Indicates whether this broadcast is the default broadcast. Internal only.\",\n - \ \"type\": \"boolean\"\n },\n \"scheduledStartTime\": - {\n \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"description\": {\n \"description\": - \"The broadcast's description. As with the title, you can set this field by - modifying the broadcast resource or by setting the description field of the - corresponding video resource.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\"\n },\n \"actualEndTime\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - actually ended. This information is only available once the broadcast's state - is complete.\",\n \"format\": \"date-time\"\n },\n \"actualStartTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast actually - started. This information is only available once the broadcast's state is - live.\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the broadcast. For each nested - object in this object, the key is the name of the thumbnail image, and the - value is an object that contains other information about the thumbnail.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"title\": {\n - \ \"description\": \"The broadcast's title. Note that the broadcast - represents exactly one YouTube video. You can set this field by modifying - the broadcast resource or by setting the title field of the corresponding - video resource.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The id of the live chat for this broadcast.\"\n },\n \"scheduledEndTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the broadcast is scheduled to end.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the broadcast was added to YouTube's live broadcast - schedule.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Basic broadcast information.\",\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": {\n - \ \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#liveBroadcastListResponse\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of broadcasts that match the request criteria.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveBroadcastListResponse\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"properties\": {\n \"isUpgrade\": {\n \"type\": - \"boolean\",\n \"description\": \"If the viewer just had upgraded - from a lower level. For viewers that were not members at the time of purchase, - this field is false.\"\n },\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level that the viewer - just had joined. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n }\n - \ },\n \"id\": \"LiveChatNewSponsorDetails\",\n \"type\": \"object\"\n - \ },\n \"VideoGetRatingResponse\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoGetRatingResponse\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"description\": \"A list of ratings that - match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoRating\"\n }\n }\n },\n - \ \"id\": \"VideoGetRatingResponse\",\n \"type\": \"object\"\n },\n - \ \"LiveStream\": {\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n \"default\": - \"youtube#liveStream\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the stream.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the stream, including its channel, title, - and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"status\": {\n \"$ref\": - \"LiveStreamStatus\",\n \"description\": \"The status object contains - information about live stream's status.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"LiveStreamContentDetails\",\n \"description\": - \"The content_details object contains information about the stream, including - the closed captions ingestion URL.\"\n },\n \"cdn\": {\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\",\n \"$ref\": \"CdnSettings\"\n }\n - \ },\n \"description\": \"A live stream describes a live ingestion - point.\",\n \"id\": \"LiveStream\",\n \"type\": \"object\"\n },\n - \ \"CommentThreadListResponse\": {\n \"id\": \"CommentThreadListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentThreadListResponse\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"CommentThread\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of comment threads that match the request criteria.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n }\n },\n \"LiveBroadcast\": {\n \"type\": - \"object\",\n \"id\": \"LiveBroadcast\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"LiveBroadcastSnippet\",\n \"description\": - \"The snippet object contains basic details about the event, including its - title, description, start time, and end time.\"\n },\n \"statistics\": - {\n \"description\": \"The statistics object contains info about - the event's current stats. These include concurrent viewers and total chat - count. Statistics can change (in either direction) during the lifetime of - an event. Statistics are only returned while the event is live.\",\n \"$ref\": - \"LiveBroadcastStatistics\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the broadcast.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the event's status.\",\n \"$ref\": - \"LiveBroadcastStatus\"\n },\n \"contentDetails\": {\n \"$ref\": - \"LiveBroadcastContentDetails\",\n \"description\": \"The contentDetails - object contains information about the event's video content, such as whether - the content can be shown in an embedded video player or if it will be archived - and therefore available for viewing after the event has concluded.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"default\": \"youtube#liveBroadcast\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A *liveBroadcast* resource represents - an event that will be streamed, via live video, on YouTube.\"\n },\n \"ChannelListResponse\": - {\n \"id\": \"ChannelListResponse\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Channel\"\n }\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelListResponse\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"AccessPolicy\": {\n \"type\": \"object\",\n \"description\": - \"Rights management policy for YouTube resources.\",\n \"properties\": - {\n \"exception\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\"\n },\n \"allowed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"The value of allowed indicates whether the access - to the policy is allowed or denied by default.\"\n }\n },\n \"id\": - \"AccessPolicy\"\n },\n \"LiveChatMessageDeletedDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"properties\": - {\n \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"ContentRating\": {\n \"properties\": {\n \"tvpgRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ],\n \"description\": \"The video's TV Parental Guidelines - (TVPG) rating.\",\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"rcnofRating\": {\n \"description\": \"The video's - rating from the Hungarian Nemzeti Filmiroda, the Rating Committee of the National - Office of Film.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n - \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n - \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"ilfilmRating\": {\n \"description\": - \"The video's rating in Israel.\",\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"eefilmRating\": {\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Estonia.\"\n },\n \"chfilmRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"0\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ]\n },\n \"djctqRatingReasons\": {\n \"items\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Brazil rating content descriptors. See - http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ],\n \"enum\": [\n - \ \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ]\n },\n \"type\": - \"array\",\n \"description\": \"Reasons that explain why the video - received its DJCQT (Brazil) rating.\"\n },\n \"bfvcRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"E\",\n \"13\",\n \"15\",\n - \ \"18\",\n \"20\",\n \"B\",\n \"\"\n - \ ],\n \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ],\n \"description\": \"The - video's rating from Thailand's Board of Film and Video Censors.\"\n },\n - \ \"lsfRating\": {\n \"description\": \"The video's rating - from Indonesia's Lembaga Sensor Film.\",\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"enum\": [\n - \ \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"ifcoRating\": - {\n \"description\": \"The video's Irish Film Classification Office - (IFCO - Ireland) rating. See the IFCO website for more information.\",\n \"enum\": - [\n \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"fmocRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ]\n },\n \"menaMpaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ],\n \"description\": \"The rating - system for MENA countries, a clone of MPAA. It is needed to prevent titles - go live w/o additional QC check, since some of them can be inappropriate for - the countries at all. See b/33408548 for more details.\",\n \"enum\": - [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n - \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"csaRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"Interdiction\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from France's Conseil sup\xE9rieur - de l\u2019audiovisuel, which rates broadcast content.\",\n \"enum\": - [\n \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n - \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n - \ \"csaUnrated\"\n ]\n },\n \"nkclvRating\": - {\n \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n - \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n - \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n - \ \"description\": \"The video's rating from the Nacion\xE3lais Kino - centrs (National Film Centre of Latvia).\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"nbcRating\": {\n \"enum\": - [\n \"nbcUnspecified\",\n \"nbcG\",\n \"nbcPg\",\n - \ \"nbc12plus\",\n \"nbc15plus\",\n \"nbc18plus\",\n - \ \"nbc18plusr\",\n \"nbcPu\",\n \"nbcUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Maldives - National Bureau of Classification.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ]\n },\n \"mdaRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from Singapore's - Media Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\",\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ]\n },\n \"fskRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"FSK 0\",\n - \ \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"enum\": - [\n \"fskUnspecified\",\n \"fsk0\",\n \"fsk6\",\n - \ \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n \"fskUnrated\"\n - \ ]\n },\n \"cceRating\": {\n \"enum\": [\n - \ \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n - \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n - \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"4\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\",\n \"14\"\n ],\n - \ \"type\": \"string\"\n },\n \"russiaRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's National - Film Registry of the Russian Federation (MKRF - Russia) rating.\",\n \"enum\": - [\n \"russiaUnspecified\",\n \"russia0\",\n \"russia6\",\n - \ \"russia12\",\n \"russia16\",\n \"russia18\",\n - \ \"russiaUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"kijkwijzerRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating - from the Nederlands Instituut voor de Classificatie van Audiovisuele Media - (Netherlands).\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"anatelRating\": {\n \"description\": \"The - video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean - television.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ]\n },\n - \ \"kmrbRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"description\": \"The - video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ]\n },\n \"mekuRating\": {\n \"description\": - \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti - (National Audiovisual Institute).\",\n \"enumDescriptions\": [\n - \ \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ]\n },\n \"mccypRating\": {\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ]\n },\n \"rteRating\": - {\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ]\n },\n \"cccRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica - (Chile) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Todo espectador\",\n \"6+ - Inconveniente para menores - de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n \"18+ - - contenido excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ]\n },\n \"acbRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n - \ \"description\": \"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.\",\n \"enum\": - [\n \"acbUnspecified\",\n \"acbE\",\n \"acbP\",\n - \ \"acbC\",\n \"acbG\",\n \"acbPg\",\n \"acbM\",\n - \ \"acbMa15plus\",\n \"acbR18plus\",\n \"acbUnrated\"\n - \ ]\n },\n \"mpaaRating\": {\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mpaaUnspecified\",\n - \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n - \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n - \ \"mpaaUnrated\"\n ]\n },\n \"catvfrRating\": - {\n \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"incaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's INCAA (Instituto Nacional de Cine - y Artes Audiovisuales - Argentina) rating.\",\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ]\n },\n \"chvrsRating\": {\n \"enum\": [\n - \ \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ]\n },\n \"eirinRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"The video's Eirin (\u6620\u502B) - rating. Eirin is the Japanese rating system.\",\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"catvRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ],\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"grfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n - \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n - \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Greece.\"\n - \ },\n \"bbfcRating\": {\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ],\n - \ \"description\": \"The video's British Board of Film Classification - (BBFC) rating.\"\n },\n \"cicfRating\": {\n \"enum\": - [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Commission de Contr\xF4le des Films (Belgium).\",\n \"type\": - \"string\"\n },\n \"fcoRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Hong Kong's Office for Film, Newspaper and Article Administration.\",\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ]\n },\n - \ \"mpaatRating\": {\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ],\n \"type\": - \"string\",\n \"description\": \"The rating system for trailer, DVD, - and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ]\n },\n \"smaisRating\": {\n - \ \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in Iceland.\",\n \"type\": \"string\"\n },\n - \ \"nfvcbRating\": {\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Nigeria's National Film and Video Censors Board.\",\n \"type\": - \"string\"\n },\n \"mocRating\": {\n \"enum\": [\n - \ \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ]\n },\n \"mcstRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n - \ \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating system for Vietnam - MCST\"\n - \ },\n \"fcbmRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"enum\": - [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"czfilmRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n - \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n - \ \"czfilmUnrated\"\n ],\n \"description\": \"The - video's rating in the Czech Republic.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ]\n },\n \"fpbRating\": - {\n \"description\": \"The video's rating from South Africa's Film - and Publication Board.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X18\",\n - \ \"XX\",\n \"\",\n \"10\"\n ],\n - \ \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"type\": \"string\"\n },\n \"icaaRating\": - {\n \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ],\n - \ \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ]\n },\n \"fpbRatingReasons\": - {\n \"description\": \"Reasons that explain why the video received - its FPB (South Africa) rating.\",\n \"type\": \"array\",\n \"items\": - {\n \"enumDescriptions\": [\n \"\",\n \"South - Africa rating content descriptors.\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"type\": \"string\"\n }\n },\n - \ \"egfilmRating\": {\n \"description\": \"The video's rating - in Egypt.\",\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ]\n },\n \"cncRating\": - {\n \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"description\": \"Rating system - in France - Commission de classification cinematographique\"\n },\n - \ \"skfilmRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n - \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Slovakia.\"\n - \ },\n \"mccaaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"type\": - \"string\",\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n - \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n - \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n - \ \"mccaa18\",\n \"mccaaUnrated\"\n ]\n },\n - \ \"ecbmctRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ],\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ],\n \"description\": \"Rating - system in Turkey - Evaluation and Classification Board of the Ministry of - Culture and Tourism\"\n },\n \"smsaRating\": {\n \"enum\": - [\n \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Statens - medier\xE5d (Sweden's National Media Council).\",\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"oflcRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n - \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n - \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n - \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ],\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\"\n },\n \"rtcRating\": {\n \"enum\": [\n \"rtcUnspecified\",\n - \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n - \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n - \ ],\n \"description\": \"The video's General Directorate - of Radio, Television and Cinematography (Mexico) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n - \ \"D\",\n \"\"\n ]\n },\n \"ytRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"A rating that YouTube uses to identify - age-restricted content.\",\n \"type\": \"string\",\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ]\n - \ },\n \"mtrcbRating\": {\n \"description\": \"The video's - rating from the Movie and Television Review and Classification Board (Philippines).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n - \ \"X\",\n \"\"\n ],\n \"enum\": [\n - \ \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n - \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n - \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"resorteviolenciaRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"description\": \"The video's rating in Venezuela.\"\n - \ },\n \"pefilmRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Peru.\",\n - \ \"type\": \"string\"\n },\n \"bmukkRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"cbfcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Central Board of Film Certification - (CBFC - India) rating.\",\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ]\n },\n - \ \"nmcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"PG-15\",\n - \ \"15+\",\n \"18+\",\n \"18TC\",\n \"\"\n - \ ],\n \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The National Media Council ratings system for - United Arab Emirates.\"\n },\n \"djctqRating\": {\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ]\n },\n - \ \"cnaRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n - \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"description\": \"The - video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"cscfRating\": {\n \"enum\": - [\n \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n - \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Luxembourg's Commission de surveillance de la classification des - films (CSCF).\"\n },\n \"nfrcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Bulgarian - National Film Center.\",\n \"enum\": [\n \"nfrcUnspecified\",\n - \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n - \ \"nfrcX\",\n \"nfrcUnrated\"\n ]\n },\n - \ \"medietilsynetRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Medietilsynet, the Norwegian Media Authority.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ]\n },\n \"agcomRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ],\n \"description\": \"The video's rating from Italy's - Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ]\n },\n \"nbcplRating\": {\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"description\": \"The - video's rating in Poland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"mibacRating\": {\n \"description\": \"The video's - rating from the Ministero dei Beni e delle Attivit\xE0 Culturali e del Turismo - (Italy).\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ]\n },\n \"kfcbRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from the Kenya Film Classification Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ]\n },\n \"moctwRating\": {\n \"enum\": [\n - \ \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n - \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n - \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ],\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\"\n - \ }\n },\n \"id\": \"ContentRating\",\n \"type\": \"object\",\n - \ \"description\": \"Ratings schemes. The country-specific ratings are - mostly for movies and shows. LINT.IfChange\"\n },\n \"ResourceId\": - {\n \"properties\": {\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a playlist. This property - is only present if the resourceId.kind value is youtube#playlist.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"The type of the API resource.\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A resource id is a generic reference that points - to another YouTube resource.\",\n \"id\": \"ResourceId\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"id\": \"ActivityContentDetailsSubscription\",\n \"description\": - \"Information about a channel that a user subscribed to.\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that the user subscribed to.\"\n - \ }\n }\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n \"type\": - \"object\",\n \"properties\": {\n \"partsProcessed\": {\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"partsTotal\": {\n \"type\": \"string\",\n \"description\": - \"An estimate of the total number of parts that need to be processed for the - video. The number may be updated with more precise estimates while YouTube - processes the video.\",\n \"format\": \"uint64\"\n },\n \"timeLeftMs\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\"\n }\n },\n \"description\": - \"Video processing progress and completion time estimate.\"\n },\n \"PageInfo\": - {\n \"properties\": {\n \"totalResults\": {\n \"format\": - \"int32\",\n \"type\": \"integer\",\n \"description\": \"The - total number of results in the result set.\"\n },\n \"resultsPerPage\": - {\n \"description\": \"The number of results included in the API - response.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ }\n },\n \"description\": \"Paging details for lists of - resources, including total number of items available and number of resources - returned in a single page.\",\n \"type\": \"object\",\n \"id\": - \"PageInfo\"\n },\n \"ThirdPartyLinkListResponse\": {\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"ThirdPartyLinkListResponse\",\n - \ \"type\": \"object\"\n },\n \"AbuseType\": {\n \"id\": \"AbuseType\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"description\": \"Information about a new playlist item.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information about the resource that was added to the playlist.\",\n - \ \"$ref\": \"ResourceId\"\n },\n \"playlistId\": {\n - \ \"type\": \"string\",\n \"description\": \"The value that - YouTube uses to uniquely identify the playlist.\"\n },\n \"playlistItemId\": - {\n \"type\": \"string\",\n \"description\": \"ID of the - item within the playlist.\"\n }\n },\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"type\": \"object\"\n },\n \"ChannelBannerResource\": {\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\"\n },\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL of this banner image.\"\n }\n - \ },\n \"id\": \"ChannelBannerResource\",\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\"\n - \ },\n \"LiveChatTextMessageDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatTextMessageDetails\",\n \"properties\": {\n \"messageText\": - {\n \"description\": \"The user's message.\",\n \"type\": - \"string\"\n }\n }\n },\n \"SuperStickerMetadata\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"altTextLanguage\": - {\n \"description\": \"Specifies the localization language in which - the alt text is returned.\",\n \"type\": \"string\"\n },\n - \ \"stickerId\": {\n \"description\": \"Unique identifier of - the Super Sticker. This is a shorter form of the alt_text that includes pack - name and a recognizable characteristic of the sticker.\",\n \"type\": - \"string\"\n },\n \"altText\": {\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"SuperStickerMetadata\"\n },\n \"SuperChatEventSnippet\": - {\n \"id\": \"SuperChatEventSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"messageType\": {\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"supporterDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - supporter.\"\n },\n \"displayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the purchase amount and currency (e.g., \\\"$1.00\\\"). The string is rendered - for the given language.\"\n },\n \"commentText\": {\n \"type\": - \"string\",\n \"description\": \"The text contents of the comment - left by the user.\"\n },\n \"isSuperStickerEvent\": {\n \"description\": - \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n - \ },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The purchase - amount, in micros of the purchase currency. e.g., 1 is represented as 1000000.\"\n - \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\"\n },\n \"channelId\": - {\n \"description\": \"Channel id where the event occurred.\",\n - \ \"type\": \"string\"\n },\n \"createdAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the event occurred.\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n }\n }\n },\n \"CommentThread\": - {\n \"id\": \"CommentThread\",\n \"type\": \"object\",\n \"properties\": - {\n \"replies\": {\n \"description\": \"The replies object - contains a limited number of replies (if any) to the top level comment found - in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the comment thread.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#commentThread\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"CommentThreadSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment thread and also the top level comment.\"\n }\n },\n - \ \"description\": \"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.\"\n },\n \"VideoProcessingDetails\": - {\n \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\",\n \"properties\": {\n \"fileDetailsAvailability\": - {\n \"description\": \"This value indicates whether file details - are available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"processing\",\n \"succeeded\",\n - \ \"failed\",\n \"terminated\"\n ],\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"tagSuggestionsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether keyword - (tag) suggestions are available for the video. Tags can be added to a video's - metadata to make it easier for other users to find the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\"\n },\n \"processingFailureReason\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ]\n },\n - \ \"processingIssuesAvailability\": {\n \"description\": \"This - value indicates whether the video processing engine has generated suggestions - that might improve YouTube's ability to process the the video, warnings that - explain video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"editorSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether video editing - suggestions, which might improve video quality or the playback experience, - are available for the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"thumbnailsAvailability\": {\n \"description\": - \"This value indicates whether thumbnail images have been generated for the - video.\",\n \"type\": \"string\"\n },\n \"processingProgress\": - {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoProcessingDetails\"\n },\n \"VideoListResponse\": - {\n \"properties\": {\n \"items\": {\n \"items\": {\n - \ \"$ref\": \"Video\"\n },\n \"type\": \"array\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"default\": \"youtube#videoListResponse\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ }\n },\n \"id\": \"VideoListResponse\",\n \"type\": - \"object\"\n },\n \"MembershipsLevelListResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevelListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of pricing levels offered by a creator to the fans.\",\n \"items\": - {\n \"$ref\": \"MembershipsLevel\"\n },\n \"type\": - \"array\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\",\n - \ \"type\": \"object\"\n },\n \"MembershipsDuration\": {\n \"id\": - \"MembershipsDuration\",\n \"properties\": {\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - across all levels in complete months (the time is rounded down to the nearest - integer).\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ },\n \"memberSince\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the user became a continuous - member across all levels.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LocalizedString\": {\n \"id\": \"LocalizedString\",\n \"properties\": - {\n \"language\": {\n \"type\": \"string\"\n },\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoSnippet\": {\n \"type\": \"object\",\n \"id\": - \"VideoSnippet\",\n \"description\": \"Basic details about a video, including - title, description, uploader, thumbnails and category.\",\n \"properties\": - {\n \"localized\": {\n \"$ref\": \"VideoLocalization\",\n - \ \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\"\n },\n \"title\": {\n \"description\": - \"The video's title. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"tags\": {\n \"description\": \"A list of keyword - tags associated with the video. Tags may contain spaces.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"categoryId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube video category associated with the video.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the video belongs to.\"\n },\n \"defaultAudioLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the videos's default snippet.\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time when the video was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"description\": - {\n \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that the video was uploaded to.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveStreamSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"isDefaultStream\": {\n \"type\": - \"boolean\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the stream - was created.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The stream's - description. The value cannot be longer than 10000 characters.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The stream's title. The value must be between - 1 and 128 characters long.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveStreamSnippet\"\n },\n \"ActivityContentDetails\": {\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetails\",\n \"properties\": - {\n \"promotedItem\": {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\"\n },\n \"like\": {\n \"description\": - \"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.\",\n - \ \"$ref\": \"ActivityContentDetailsLike\"\n },\n \"subscription\": - {\n \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"upload\": {\n \"$ref\": \"ActivityContentDetailsUpload\",\n - \ \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\"\n - \ },\n \"recommendation\": {\n \"description\": \"The - recommendation object contains information about a recommended resource. This - property is only present if the snippet.type is recommendation.\",\n \"$ref\": - \"ActivityContentDetailsRecommendation\"\n },\n \"social\": - {\n \"$ref\": \"ActivityContentDetailsSocial\",\n \"description\": - \"The social object contains details about a social network post. This property - is only present if the snippet.type is social.\"\n },\n \"playlistItem\": - {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"The playlistItem object contains information about a new playlist item. - This property is only present if the snippet.type is playlistItem.\"\n },\n - \ \"favorite\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsFavorite\"\n },\n \"channelItem\": {\n - \ \"$ref\": \"ActivityContentDetailsChannelItem\",\n \"description\": - \"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.\"\n - \ },\n \"comment\": {\n \"description\": \"The comment - object contains information about a resource that received a comment. This - property is only present if the snippet.type is comment.\",\n \"$ref\": - \"ActivityContentDetailsComment\"\n },\n \"bulletin\": {\n \"description\": - \"The bulletin object contains details about a channel bulletin post. This - object is only present if the snippet.type is bulletin.\",\n \"$ref\": - \"ActivityContentDetailsBulletin\"\n }\n },\n \"description\": - \"Details about the content of an activity: the video that was shared, the - channel that was subscribed to, etc.\"\n },\n \"I18nLanguageListResponse\": - {\n \"id\": \"I18nLanguageListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of supported i18n languages. In this map, the i18n language ID is the - map key, and its value is the corresponding i18nLanguage resource.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"MembershipsLevel\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsLevel\",\n \"description\": - \"A *membershipsLevel* resource represents an offer made by YouTube creators - for their fans. Users can become members of the channel by joining one of - the available levels. They will provide recurring monetary support and receives - special benefits.\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the memberships level.\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevel\"\n }\n }\n - \ },\n \"PlaylistPlayer\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistPlayer\",\n \"properties\": {\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that - embeds a player that will play the playlist.\"\n }\n }\n },\n - \ \"ActivityContentDetailsPromotedItem\": {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"properties\": {\n \"ctaType\": {\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the promoted video.\"\n },\n \"descriptionText\": - {\n \"type\": \"string\",\n \"description\": \"The text - description to accompany the promoted item.\"\n },\n \"customCtaButtonText\": - {\n \"description\": \"The custom call-to-action button text. If - specified, it will override the default button text for the cta_type.\",\n - \ \"type\": \"string\"\n },\n \"adTag\": {\n \"description\": - \"The URL the client should fetch to request a promoted item.\",\n \"type\": - \"string\"\n },\n \"destinationUrl\": {\n \"description\": - \"The URL the client should direct the user to, if the user chooses to visit - the advertiser's website.\",\n \"type\": \"string\"\n },\n - \ \"clickTrackingUrl\": {\n \"description\": \"The URL the - client should ping to indicate that the user clicked through on this promoted - item.\",\n \"type\": \"string\"\n },\n \"forecastingUrl\": - {\n \"type\": \"array\",\n \"description\": \"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.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"impressionUrl\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\"\n },\n \"creativeViewUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user was shown this promoted item.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Details about a resource which - is being promoted.\",\n \"type\": \"object\"\n },\n \"ChannelStatus\": - {\n \"id\": \"ChannelStatus\",\n \"properties\": {\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"isLinked\": {\n - \ \"description\": \"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.\",\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"description\": \"Privacy status of the channel.\"\n - \ },\n \"longUploadsStatus\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"JSON template for the - status part of a channel.\"\n },\n \"LiveStreamHealthStatus\": {\n \"properties\": - {\n \"lastUpdateTimeSeconds\": {\n \"description\": \"The - last time this status was updated (in seconds)\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"configurationIssues\": - {\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"description\": \"The configurations issues on this - stream\",\n \"type\": \"array\"\n },\n \"status\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The status code of this stream\",\n \"enum\": [\n \"good\",\n - \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveStreamHealthStatus\",\n \"type\": \"object\"\n },\n \"ChannelContentDetails\": - {\n \"type\": \"object\",\n \"description\": \"Details about the - content of a channel.\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"properties\": {\n \"uploads\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s uploaded videos. Use the videos.insert method to - upload new videos and the videos.delete method to delete previously uploaded - videos.\"\n },\n \"favorites\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"watchHistory\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"watchLater\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\"\n },\n \"likes\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n }\n },\n \"type\": - \"object\"\n }\n },\n \"id\": \"ChannelContentDetails\"\n - \ },\n \"TestItemTestItemSnippet\": {\n \"properties\": {},\n \"type\": - \"object\",\n \"id\": \"TestItemTestItemSnippet\"\n },\n \"ChannelConversionPings\": - {\n \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\",\n \"properties\": - {\n \"pings\": {\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ },\n \"description\": \"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.\",\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"ChannelConversionPings\",\n \"type\": - \"object\"\n },\n \"LocalizedProperty\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"default\": {\n \"type\": \"string\"\n - \ },\n \"defaultLanguage\": {\n \"$ref\": \"LanguageTag\",\n - \ \"description\": \"The language of the default property.\"\n },\n - \ \"localized\": {\n \"items\": {\n \"$ref\": \"LocalizedString\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"id\": - \"LocalizedProperty\"\n },\n \"LiveChatMessageAuthorDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"isChatModerator\": - {\n \"description\": \"Whether the author is a moderator of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"isChatOwner\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is the owner of the live chat.\"\n },\n \"channelId\": - {\n \"description\": \"The YouTube channel ID.\",\n \"type\": - \"string\"\n },\n \"isVerified\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author's identity has been verified - by YouTube.\"\n },\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The channel's display name.\"\n },\n \"isChatSponsor\": {\n - \ \"description\": \"Whether the author is a sponsor of the live chat.\",\n - \ \"type\": \"boolean\"\n }\n },\n \"id\": \"LiveChatMessageAuthorDetails\"\n - \ },\n \"ChannelStatistics\": {\n \"type\": \"object\",\n \"properties\": - {\n \"viewCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of times the channel has been viewed.\",\n \"type\": - \"string\"\n },\n \"hiddenSubscriberCount\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the number of subscribers - is shown for this user.\"\n },\n \"videoCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of videos uploaded to the channel.\"\n },\n \"commentCount\": - {\n \"description\": \"The number of comments for the channel.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"subscriberCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of subscribers that the - channel has.\"\n }\n },\n \"description\": \"Statistics about - a channel: number of subscribers, number of videos in the channel, etc.\",\n - \ \"id\": \"ChannelStatistics\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The `visitorId` - identifies the visitor.\"\n },\n \"items\": {\n \"description\": - \"A list of valid abuse reasons that are used with `video.ReportAbuse`.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n }\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoAbuseReportReasonListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"SubscriptionContentDetails\": {\n \"description\": \"Details - about the content to witch a subscription refers.\",\n \"properties\": - {\n \"activityType\": {\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"totalItemCount\": {\n \"type\": \"integer\",\n \"description\": - \"The approximate number of items that the subscription points to.\",\n \"format\": - \"uint32\"\n },\n \"newItemCount\": {\n \"type\": \"integer\",\n - \ \"description\": \"The number of new items in the subscription since - its content was last read.\",\n \"format\": \"uint32\"\n }\n - \ },\n \"id\": \"SubscriptionContentDetails\",\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsComment\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsComment\",\n \"description\": \"Information - about a resource that received a comment.\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with the - comment.\"\n }\n }\n },\n \"VideoFileDetails\": {\n \"type\": - \"object\",\n \"description\": \"Describes original video file properties, - including technical details about audio and video streams, but also metadata - information like content length, digitization time, or geotagging information.\",\n - \ \"properties\": {\n \"videoStreams\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"description\": \"A list of video streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about a video stream.\"\n },\n \"audioStreams\": {\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n },\n \"type\": - \"array\"\n },\n \"fileSize\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The uploaded file's size in bytes. This field - is present whether a video file or another type of file was uploaded.\",\n - \ \"type\": \"string\"\n },\n \"durationMs\": {\n \"type\": - \"string\",\n \"description\": \"The length of the uploaded video - in milliseconds.\",\n \"format\": \"uint64\"\n },\n \"fileName\": - {\n \"description\": \"The uploaded file's name. This field is present - whether a video file or another type of file was uploaded.\",\n \"type\": - \"string\"\n },\n \"container\": {\n \"description\": - \"The uploaded video file's container format.\",\n \"type\": \"string\"\n - \ },\n \"creationTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the uploaded video file - was created. The value is specified in ISO 8601 format. Currently, the following - ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"bitrateBps\": - {\n \"description\": \"The uploaded video file's combined (video - and audio) bitrate in bits per second.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"fileType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"video\",\n \"audio\",\n - \ \"image\",\n \"archive\",\n \"document\",\n - \ \"project\",\n \"other\"\n ],\n \"description\": - \"The uploaded file's type as detected by YouTube's video processing engine. - Currently, YouTube only processes video files, but this field is present whether - a video file or another type of file was uploaded.\",\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ]\n }\n },\n \"id\": \"VideoFileDetails\"\n - \ },\n \"VideoRating\": {\n \"properties\": {\n \"rating\": - {\n \"description\": \"Rating of a video.\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n }\n },\n \"id\": \"VideoRating\",\n \"type\": - \"object\",\n \"description\": \"Basic details about rating of a video.\"\n - \ },\n \"VideoCategory\": {\n \"description\": \"A *videoCategory* - resource identifies a category that has been or could be associated with uploaded - videos.\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoCategory\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the video category.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video category, including its title.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoCategory\"\n },\n \"SubscriptionListResponse\": - {\n \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"description\": \"A list of subscriptions that match - the request criteria.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n \"default\": - \"youtube#subscriptionListResponse\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n },\n \"id\": \"SubscriptionListResponse\",\n - \ \"type\": \"object\"\n },\n \"PropertyValue\": {\n \"description\": - \"A pair Property / Value.\",\n \"id\": \"PropertyValue\",\n \"properties\": - {\n \"value\": {\n \"description\": \"The property's value.\",\n - \ \"type\": \"string\"\n },\n \"property\": {\n \"type\": - \"string\",\n \"description\": \"A property.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"SuperChatEvent\": {\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the Super Chat event.\",\n \"$ref\": - \"SuperChatEventSnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#superChatEvent\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the Super Chat event.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"A `__superChatEvent__` - resource represents a Super Chat purchase on a YouTube channel.\",\n \"type\": - \"object\",\n \"id\": \"SuperChatEvent\"\n },\n \"LiveChatBanSnippet\": - {\n \"id\": \"LiveChatBanSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"banDurationSeconds\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The duration of a ban, only filled if the ban - has type TEMPORARY.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"description\": \"The type of ban.\",\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ]\n },\n \"liveChatId\": - {\n \"description\": \"The chat this ban is pertinent to.\",\n \"type\": - \"string\"\n },\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\"\n }\n }\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the fund was made.\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n },\n \"amountMicros\": {\n \"description\": - \"The amount of the fund.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n }\n },\n \"id\": - \"LiveChatFanFundingEventDetails\"\n },\n \"ChannelSectionContentDetails\": - {\n \"properties\": {\n \"channels\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"The channel ids for type multiple_channels.\"\n },\n \"playlists\": - {\n \"description\": \"The playlist ids for type single_playlist - and multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelSectionContentDetails\",\n \"description\": \"Details - about a channelsection, including playlists and channels.\"\n },\n \"ChannelConversionPing\": - {\n \"id\": \"ChannelConversionPing\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"conversionUrl\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"context\": {\n \"enum\": - [\n \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"Defines the context of the ping.\"\n }\n },\n \"description\": - \"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.\"\n },\n \"LiveChatMessage\": {\n \"properties\": {\n - \ \"authorDetails\": {\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\",\n - \ \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n \"default\": - \"youtube#liveChatMessage\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the message.\",\n \"$ref\": - \"LiveChatMessageSnippet\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessage\",\n \"description\": \"A *liveChatMessage* - resource represents a chat message in a YouTube Live Chat.\"\n },\n \"ChannelContentOwnerDetails\": - {\n \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"properties\": - {\n \"contentOwner\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the content owner linked to the channel.\"\n },\n \"timeLinked\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the channel was linked to the content owner.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelContentOwnerDetails\"\n },\n \"PlaylistStatus\": {\n \"id\": - \"PlaylistStatus\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\",\n \"description\": \"The playlist's privacy status.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n }\n },\n \"PlaylistContentDetails\": - {\n \"id\": \"PlaylistContentDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"itemCount\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The number - of videos in the playlist.\"\n }\n }\n },\n \"I18nRegion\": - {\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#i18nRegion\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the i18n region.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"I18nRegion\",\n \"description\": \"A *i18nRegion* - resource identifies a region where YouTube is available.\"\n },\n \"ThirdPartyLink\": - {\n \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\",\n \"id\": \"ThirdPartyLink\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n },\n \"linkingToken\": - {\n \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\",\n \"type\": - \"string\"\n },\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n - \ \"description\": \"The status object contains information about - the status of the link.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#thirdPartyLink\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLink\\\".\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoLiveStreamingDetails\": {\n \"type\": - \"object\",\n \"description\": \"Details about the live streaming metadata.\",\n - \ \"properties\": {\n \"scheduledEndTime\": {\n \"type\": - \"string\",\n \"description\": \"The time that the broadcast is scheduled - to end. If the value is empty or the property is not present, then the broadcast - is scheduled to contiue indefinitely.\",\n \"format\": \"date-time\"\n - \ },\n \"scheduledStartTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast is scheduled to begin.\",\n - \ \"format\": \"date-time\"\n },\n \"actualStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\"\n },\n - \ \"concurrentViewers\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\",\n \"type\": - \"string\"\n },\n \"actualEndTime\": {\n \"description\": - \"The time that the broadcast actually ended. This value will not be available - until the broadcast is over.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"activeLiveChatId\": {\n \"description\": - \"The ID of the currently active live chat attached to this video. This field - is filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"VideoLiveStreamingDetails\"\n },\n \"CommentSnippet\": - {\n \"id\": \"CommentSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"likeCount\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The total number of likes this - comment has received.\"\n },\n \"textDisplay\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comment refers to, if any.\"\n },\n \"authorChannelUrl\": - {\n \"type\": \"string\",\n \"description\": \"Link to the - author's YouTube channel, if any.\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"parentId\": - {\n \"description\": \"The unique id of the parent comment, only - set for replies.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the comment was originally published.\",\n \"format\": - \"date-time\"\n },\n \"moderationStatus\": {\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment is - awaiting review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ]\n },\n \"canRate\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether the - current viewer can rate this comment.\"\n },\n \"textOriginal\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"updatedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the comment was last updated.\",\n \"format\": \"date-time\"\n - \ },\n \"authorDisplayName\": {\n \"description\": \"The - name of the user who posted the comment.\",\n \"type\": \"string\"\n - \ },\n \"viewerRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"description\": \"Basic - details about a comment, such as its author and text.\"\n },\n \"InvideoTiming\": - {\n \"id\": \"InvideoTiming\",\n \"properties\": {\n \"offsetMs\": - {\n \"description\": \"Defines the time at which the promotion will - appear. Depending on the value of type the value of the offsetMs field will - represent a time offset from the start or from the end of the video, expressed - in milliseconds.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"durationMs\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"Defines the - duration in milliseconds for which the promotion should be displayed. If missing, - the client should use the default.\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"Describes a timing type. If the - value is offsetFromStart, then the offsetMs field represents an offset from - the start of the video. If the value is offsetFromEnd, then the offsetMs field - represents an offset from the end of the video.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Describes a temporal position of a visual - widget inside a video.\"\n },\n \"PlaylistListResponse\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistListResponse\",\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"default\": \"youtube#playlistListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"description\": \"A list of playlists that - match the request criteria\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Playlist\"\n }\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"I18nLanguage\": {\n \"id\": \"I18nLanguage\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#i18nLanguage\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguage\\\".\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the i18n language.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the i18n language, such as language code - and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"An *i18nLanguage* resource identifies a UI language currently supported - by YouTube.\",\n \"type\": \"object\"\n },\n \"LiveChatModeratorSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the live chat this moderator can act on.\"\n },\n \"moderatorDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the moderator.\"\n }\n },\n \"id\": \"LiveChatModeratorSnippet\"\n - \ }\n },\n \"servicePath\": \"\",\n \"ownerDomain\": \"google.com\",\n - \ \"parameters\": {\n \"oauth_token\": {\n \"location\": \"query\",\n - \ \"description\": \"OAuth 2.0 token for the current user.\",\n \"type\": - \"string\"\n },\n \"quotaUser\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"prettyPrint\": {\n \"description\": - \"Returns response with indentations and line breaks.\",\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"default\": \"true\"\n },\n - \ \"upload_protocol\": {\n \"description\": \"Upload protocol for media - (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"access_token\": {\n \"description\": \"OAuth - access token.\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"uploadType\": {\n \"description\": \"Legacy upload protocol - for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"$.xgafv\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n \"1\",\n - \ \"2\"\n ],\n \"description\": \"V1 error format.\",\n \"enumDescriptions\": - [\n \"v1 error format\",\n \"v2 error format\"\n ]\n },\n - \ \"callback\": {\n \"type\": \"string\",\n \"description\": \"JSONP\",\n - \ \"location\": \"query\"\n },\n \"key\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": \"query\"\n },\n \"alt\": - {\n \"default\": \"json\",\n \"enumDescriptions\": [\n \"Responses - with Content-Type of application/json\",\n \"Media download with context-dependent - Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n - \ ],\n \"description\": \"Data format for response.\",\n \"type\": - \"string\",\n \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"location\": \"query\"\n },\n \"fields\": {\n \"type\": - \"string\",\n \"description\": \"Selector specifying which fields to - include in a partial response.\",\n \"location\": \"query\"\n }\n - \ },\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"resources\": {\n \"videoAbuseReportReasons\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"response\": - {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"en-US\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the videoCategory resource parts that the - API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\"\n }\n }\n },\n - \ \"videoCategories\": {\n \"methods\": {\n \"list\": {\n \"response\": - {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"id\": - \"youtube.videoCategories.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"path\": \"youtube/v3/videoCategories\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"description\": - \"Returns the video categories with the given IDs for Stubby or Apiary.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"repeated\": true\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"default\": \"en-US\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n - \ \"set\": {\n \"supportsMediaUpload\": true,\n \"mediaUpload\": - {\n \"maxSize\": \"2097152\",\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"response\": {\n \"$ref\": - \"ThumbnailSetResponse\"\n },\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.thumbnails.set\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"parameterOrder\": - [\n \"videoId\"\n ],\n \"parameters\": {\n \"videoId\": - {\n \"required\": true,\n \"description\": \"Returns - the Thumbnail with the given video IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"flatPath\": - \"youtube/v3/thumbnails/set\"\n }\n }\n },\n \"commentThreads\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.commentThreads.list\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"parameters\": - {\n \"pageToken\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"moderationStatus\": {\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"default\": \"published\",\n - \ \"type\": \"string\",\n \"description\": \"Limits - the returned comment threads to those with the specified moderation status. - Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\"\n },\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"default\": \"20\",\n \"maximum\": \"100\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\"\n },\n \"order\": {\n \"location\": - \"query\",\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"default\": \"time\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Returns the comment threads with the given IDs for Stubby or Apiary.\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\"\n },\n \"searchTerms\": - {\n \"location\": \"query\",\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\",\n \"type\": \"string\"\n - \ },\n \"textFormat\": {\n \"enum\": [\n - \ \"textFormatUnspecified\",\n \"html\",\n \"plainText\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"html\",\n \"location\": \"query\",\n \"description\": - \"The requested text format for the returned comments.\"\n },\n - \ \"videoId\": {\n \"description\": \"Returns the comment - threads of the specified video.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Inserts - a new resource into this collection.\",\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"response\": - {\n \"$ref\": \"CommentThread\"\n }\n }\n }\n - \ },\n \"playlistItems\": {\n \"methods\": {\n \"list\": - {\n \"id\": \"youtube.playlistItems.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"playlistId\": {\n \"description\": - \"Return the playlist items within the given playlist.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\",\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"default\": \"5\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the playlist items associated with the given video ID.\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ }\n },\n \"update\": {\n \"id\": \"youtube.playlistItems.update\",\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n }\n - \ },\n \"delete\": {\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlistItems\"\n },\n \"insert\": - {\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n }\n }\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"insert\": - {\n \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"id\": \"youtube.videos.insert\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/videos\",\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Video\"\n - \ },\n \"mediaUpload\": {\n \"maxSize\": \"274877906944\",\n - \ \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": - true\n },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/videos\"\n }\n - \ }\n },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"stabilize\": {\n \"type\": - \"boolean\",\n \"description\": \"Should stabilize be applied - to the upload.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"notifySubscribers\": - {\n \"type\": \"boolean\",\n \"default\": \"true\",\n - \ \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"autoLevels\": {\n \"location\": - \"query\",\n \"description\": \"Should auto-levels be applied - to the upload.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"supportsMediaUpload\": true\n },\n \"update\": {\n - \ \"path\": \"youtube/v3/videos\",\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing resource.\",\n \"id\": \"youtube.videos.update\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n - \ \"repeated\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos\"\n },\n \"getRating\": - {\n \"id\": \"youtube.videos.getRating\",\n \"flatPath\": - \"youtube/v3/videos/getRating\",\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - the ratings that the authorized user gave to a list of specified videos.\",\n - \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n }\n }\n },\n - \ \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"path\": - \"youtube/v3/videos\",\n \"parameters\": {\n \"id\": {\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/videos\",\n \"id\": - \"youtube.videos.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\"\n },\n - \ \"reportAbuse\": {\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"parameterOrder\": [],\n \"httpMethod\": \"POST\",\n \"description\": - \"Report abuse for a video.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n - \ },\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.videos.reportAbuse\"\n },\n \"rate\": - {\n \"flatPath\": \"youtube/v3/videos/rate\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"rating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"required\": true\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [\n \"id\",\n \"rating\"\n - \ ],\n \"description\": \"Adds a like or dislike rating to - a video or removes a rating from a video.\",\n \"path\": \"youtube/v3/videos/rate\",\n - \ \"id\": \"youtube.videos.rate\"\n },\n \"list\": {\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"maxHeight\": {\n \"minimum\": - \"72\",\n \"type\": \"integer\",\n \"format\": \"int32\",\n - \ \"location\": \"query\",\n \"maximum\": \"8192\"\n - \ },\n \"maxResults\": {\n \"description\": - \"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.\",\n \"maximum\": - \"50\",\n \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"1\",\n - \ \"default\": \"5\"\n },\n \"hl\": {\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"description\": - \"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.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"description\": \"Return videos with the given ids.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxWidth\": {\n \"maximum\": \"8192\",\n - \ \"description\": \"Return the player with maximum height specified - in\",\n \"minimum\": \"72\",\n \"location\": \"query\",\n - \ \"format\": \"int32\",\n \"type\": \"integer\"\n - \ },\n \"regionCode\": {\n \"description\": - \"Use a chart that is specific to the specified region\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"chart\": - {\n \"location\": \"query\",\n \"description\": - \"Return the videos that are in the specified chart.\",\n \"enum\": - [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"type\": \"string\"\n - \ },\n \"myRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"Return - videos liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"locale\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoCategoryId\": - {\n \"location\": \"query\",\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"type\": - \"string\",\n \"default\": \"0\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/videos\",\n - \ \"response\": {\n \"$ref\": \"VideoListResponse\"\n },\n - \ \"id\": \"youtube.videos.list\"\n }\n }\n },\n \"captions\": - {\n \"methods\": {\n \"download\": {\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/captions/{id}\",\n \"supportsMediaDownload\": - true,\n \"description\": \"Downloads a caption track.\",\n \"parameters\": - {\n \"tlang\": {\n \"description\": \"tlang is the - language code; machine translate the captions into this language.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"path\",\n \"description\": \"The - ID of the caption track to download, required for One Platform.\"\n },\n - \ \"tfmt\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Convert the captions into this - format. Supported options are sbv, srt, and vtt.\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"useMediaDownloadService\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.download\",\n \"flatPath\": - \"youtube/v3/captions/{id}\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"insert\": {\n \"supportsMediaUpload\": - true,\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ },\n \"maxSize\": \"104857600\"\n },\n \"id\": - \"youtube.captions.insert\",\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the caption - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/captions\"\n },\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.list\",\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ],\n \"response\": - {\n \"$ref\": \"CaptionListResponse\"\n },\n \"parameters\": - {\n \"videoId\": {\n \"location\": \"query\",\n \"description\": - \"Returns the captions for the specified video.\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Returns the captions with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\",\n - \ \"repeated\": true\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is on behalf of.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/captions\",\n \"path\": - \"youtube/v3/captions\",\n \"description\": \"Retrieves a list of - resources, possibly filtered.\"\n },\n \"delete\": {\n \"parameters\": - {\n \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is be on behalf of\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.captions.delete\",\n - \ \"path\": \"youtube/v3/captions\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"description\": \"Deletes a resource.\"\n },\n \"update\": - {\n \"path\": \"youtube/v3/captions\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Caption\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"104857600\",\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ },\n \"sync\": {\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\"\n }\n },\n \"supportsMediaUpload\": - true,\n \"flatPath\": \"youtube/v3/captions\",\n \"id\": - \"youtube.captions.update\",\n \"httpMethod\": \"PUT\"\n }\n - \ }\n },\n \"abuseReports\": {\n \"methods\": {\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"required\": true\n }\n },\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.abuseReports.insert\",\n \"path\": \"youtube/v3/abuseReports\"\n - \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"id\": \"youtube.membershipsLevels.list\",\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n }\n }\n - \ }\n },\n \"liveStreams\": {\n \"methods\": {\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"id\": \"youtube.liveStreams.delete\",\n \"description\": - \"Deletes an existing stream for the authenticated user.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"update\": {\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing stream for the - authenticated user.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": - \"youtube.liveStreams.update\",\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveStreams\"\n },\n \"list\": - {\n \"parameters\": {\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"description\": \"Return LiveStreams - with the given ids from Stubby or Apiary.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"required\": true\n }\n - \ },\n \"path\": \"youtube/v3/liveStreams\",\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.liveStreams.list\",\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\"\n },\n \"insert\": - {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n - \ \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"description\": - \"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, content_details, and status.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true\n }\n - \ },\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.insert\",\n \"description\": - \"Inserts a new stream for the authenticated user.\"\n }\n }\n - \ },\n \"liveChatMessages\": {\n \"methods\": {\n \"delete\": - {\n \"id\": \"youtube.liveChatMessages.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Deletes a chat message.\"\n },\n \"insert\": - {\n \"response\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"description\": \"Inserts a - new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatMessages.insert\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"request\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"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.\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"parameters\": {\n \"maxResults\": - {\n \"minimum\": \"200\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"maximum\": \"2000\",\n \"location\": - \"query\",\n \"default\": \"500\"\n },\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for which comments - should be returned.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"profileImageSize\": - {\n \"location\": \"query\",\n \"maximum\": \"720\",\n - \ \"minimum\": \"16\",\n \"description\": \"Specifies - the size of the profile image that should be returned for each user.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - liveChatComment resource parts that the API response will include. Supported - values are id and snippet.\"\n },\n \"pageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the system messages should be returned.\"\n - \ }\n },\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"httpMethod\": \"GET\"\n }\n }\n },\n - \ \"members\": {\n \"methods\": {\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"description\": \"Retrieves a list of members that - match the request criteria for a channel.\",\n \"flatPath\": \"youtube/v3/members\",\n - \ \"id\": \"youtube.members.list\",\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"path\": \"youtube/v3/members\",\n - \ \"parameters\": {\n \"mode\": {\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"enum\": - [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ],\n \"default\": \"all_current\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"location\": \"query\",\n \"maximum\": - \"1000\",\n \"default\": \"5\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - member resource parts that the API response will include. Set the parameter - value to snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"hasAccessToLevel\": - {\n \"description\": \"Filter members in the results set to the - ones that have access to a level.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"filterByMemberChannelId\": - {\n \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"activities\": {\n \"methods\": - {\n \"list\": {\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"id\": \"youtube.activities.list\",\n \"path\": \"youtube/v3/activities\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"home\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"location\": \"query\",\n \"minimum\": - \"0\"\n },\n \"publishedBefore\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"format\": - \"google-datetime\"\n },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n }\n - \ }\n }\n },\n \"watermarks\": {\n \"methods\": {\n - \ \"set\": {\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"id\": \"youtube.watermarks.set\",\n \"parameters\": {\n - \ \"channelId\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Allows upload - of watermark image and setting it for a channel.\",\n \"mediaUpload\": - {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"10485760\"\n },\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"supportsMediaUpload\": true,\n \"path\": - \"youtube/v3/watermarks/set\"\n },\n \"unset\": {\n \"description\": - \"Allows removal of channel watermark.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.watermarks.unset\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"search\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/search\",\n - \ \"id\": \"youtube.search.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of search resources\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"relevanceLanguage\": {\n \"type\": - \"string\",\n \"description\": \"Return results relevant to this - language.\",\n \"location\": \"query\"\n },\n \"channelType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all channels.\",\n \"Only retrieve shows.\"\n ],\n - \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"description\": - \"Add a filter on the channel search.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"videoEmbeddable\": - {\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"description\": \"Filter on embeddable videos.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos, embeddable or not.\",\n \"Only retrieve embeddable - videos.\"\n ],\n \"location\": \"query\"\n },\n - \ \"videoDimension\": {\n \"type\": \"string\",\n \"description\": - \"Filter on 3d videos.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ]\n },\n - \ \"forMine\": {\n \"description\": \"Search for the - private videos of the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"relatedToVideoId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Search related to a resource.\"\n },\n - \ \"location\": {\n \"location\": \"query\",\n \"description\": - \"Filter on location of the video\",\n \"type\": \"string\"\n - \ },\n \"q\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Textual - search terms to match.\"\n },\n \"forDeveloper\": {\n - \ \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\"\n },\n - \ \"safeSearch\": {\n \"default\": \"moderate\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\"\n - \ },\n \"publishedAfter\": {\n \"description\": - \"Filter on resources published after this date.\",\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on resources belonging to this channelId.\"\n },\n \"topicId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Restrict results to a particular topic.\"\n - \ },\n \"eventType\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n - \ \"description\": \"Filter on the livestream status of the videos.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"location\": \"query\"\n },\n \"videoDuration\": - {\n \"description\": \"Filter on the duration of the videos.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ]\n - \ },\n \"videoLicense\": {\n \"type\": \"string\",\n - \ \"description\": \"Filter on the license of the videos.\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"location\": \"query\",\n - \ \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ]\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"default\": \"5\"\n },\n \"videoCategoryId\": - {\n \"description\": \"Filter on videos in a specific category.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"order\": {\n \"location\": \"query\",\n - \ \"enum\": [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"description\": \"Sort order of the results.\",\n \"default\": - \"relevance\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"type\": - \"string\"\n },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Display the content as seen by viewers in this country.\"\n },\n - \ \"publishedBefore\": {\n \"description\": \"Filter - on resources published before this date.\",\n \"type\": \"string\",\n - \ \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"videoType\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on videos of a specific type.\",\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos.\",\n \"Only retrieve movies.\",\n - \ \"Only retrieve episodes of shows.\"\n ]\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"videoDefinition\": {\n \"description\": - \"Filter on the definition of the videos.\",\n \"enum\": [\n - \ \"any\",\n \"standard\",\n \"high\"\n - \ ],\n \"enumDescriptions\": [\n \"Return - all videos, regardless of their resolution.\",\n \"Only retrieve - videos in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"videoSyndicated\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on syndicated videos.\"\n },\n \"locationRadius\": - {\n \"description\": \"Filter on distance from the location (specified - above).\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"forContentOwner\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Search owned by a content owner.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"required\": true\n },\n \"videoCaption\": - {\n \"location\": \"query\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"description\": \"Filter on the presence - of captions on the videos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter results based on caption availability.\",\n - \ \"Only include videos that have captions.\",\n \"Only - include videos that do not have captions.\"\n ],\n \"type\": - \"string\"\n },\n \"type\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Restrict results to a particular set of resource types from One Platform.\",\n - \ \"repeated\": true\n }\n },\n \"path\": - \"youtube/v3/search\"\n }\n }\n },\n \"channels\": {\n \"methods\": - {\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channels.update\",\n \"request\": - {\n \"$ref\": \"Channel\"\n },\n \"flatPath\": - \"youtube/v3/channels\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"response\": {\n \"$ref\": \"Channel\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n },\n - \ \"path\": \"youtube/v3/channels\",\n \"httpMethod\": \"PUT\"\n - \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/channels\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"ChannelListResponse\"\n },\n \"path\": - \"youtube/v3/channels\",\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"parameters\": {\n \"maxResults\": {\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"categoryId\": {\n \"type\": - \"string\",\n \"description\": \"Return the channels within the - specified guide category ID.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the ids of channels owned by the authenticated user.\"\n },\n - \ \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"forUsername\": {\n \"location\": - \"query\",\n \"description\": \"Return the channel associated - with a YouTube username.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\"\n },\n \"managedByMe\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the channels managed by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"mySubscribers\": {\n \"description\": - \"Return the channels subscribed to the authenticated user\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Return the channels with the specified - IDs.\",\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n }\n },\n \"id\": - \"youtube.channels.list\"\n }\n }\n },\n \"playlists\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"id\": {\n \"location\": \"query\",\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"mine\": - {\n \"location\": \"query\",\n \"description\": - \"Return the playlists owned by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"description\": - \"Return the playlists owned by the specified channel ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"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.\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"Return content in specified language\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"minimum\": \"0\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/playlists\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlists\",\n \"id\": - \"youtube.playlists.list\",\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"update\": {\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"id\": \"youtube.playlists.update\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Updates an existing resource.\"\n },\n - \ \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/playlists\",\n \"description\": - \"Deletes a resource.\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlists.delete\"\n },\n - \ \"insert\": {\n \"path\": \"youtube/v3/playlists\",\n \"id\": - \"youtube.playlists.insert\",\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n }\n }\n }\n - \ },\n \"subscriptions\": {\n \"methods\": {\n \"delete\": - {\n \"id\": \"youtube.subscriptions.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/subscriptions\"\n - \ },\n \"insert\": {\n \"response\": {\n \"$ref\": - \"Subscription\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"SubscriptionListResponse\"\n },\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"id\": \"youtube.subscriptions.list\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"order\": {\n \"default\": - \"relevance\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"description\": \"The order of the returned - subscriptions\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mySubscribers\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the subscribers of the given channel owner.\"\n },\n \"myRecentSubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"Return the subscriptions with the given IDs - for Stubby or Apiary.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Flag for returning the subscriptions of the - authenticated user.\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"0\",\n \"type\": - \"integer\"\n },\n \"forChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the subscriptions to the - subset of these channels that the authenticated user is subscribed to.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return the subscriptions of - the given channel owner.\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"liveChatModerators\": - {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"id\": - \"youtube.liveChatModerators.list\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"liveChatId\": {\n \"required\": true,\n \"type\": - \"string\",\n \"description\": \"The id of the live chat for - which moderators should be returned.\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"minimum\": - \"0\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveChatModeratorListResponse\"\n },\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Deletes a chat moderator.\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"id\": - \"youtube.liveChatModerators.delete\"\n },\n \"insert\": {\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"id\": - \"youtube.liveChatModerators.insert\",\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n - \ },\n \"httpMethod\": \"POST\"\n }\n }\n },\n - \ \"comments\": {\n \"methods\": {\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/comments\",\n \"id\": - \"youtube.comments.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"setModerationStatus\": {\n \"id\": - \"youtube.comments.setModerationStatus\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Sets the moderation status of one - or more comments.\",\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\",\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ],\n \"path\": - \"youtube/v3/comments/setModerationStatus\",\n \"parameters\": {\n - \ \"banAuthor\": {\n \"description\": \"If set to true - the author of the comment gets added to the ban list. This means all future - comments of the author will autmomatically be rejected. Only valid in combination - with STATUS_REJECTED.\",\n \"type\": \"boolean\",\n \"default\": - \"false\",\n \"location\": \"query\"\n },\n \"moderationStatus\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"Specifies - the requested moderation status. Note, comments can be in statuses, which - are not available through this call. For example, this call does not allow - to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"id\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n }\n },\n \"update\": {\n - \ \"path\": \"youtube/v3/comments\",\n \"response\": {\n - \ \"$ref\": \"Comment\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.comments.update\",\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"required\": true,\n \"type\": \"string\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/comments\",\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"Comment\"\n }\n },\n \"insert\": {\n \"path\": - \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/comments\",\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"list\": {\n \"id\": - \"youtube.comments.list\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"Returns - the comments with the given IDs for One Platform.\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"parentId\": {\n \"location\": - \"query\",\n \"description\": \"Returns replies to the specified - comment. Note, currently YouTube features only one level of replies (ie replies - to top level comments). However replies to replies may be supported in the - future.\",\n \"type\": \"string\"\n },\n \"textFormat\": - {\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"description\": - \"The requested text format for the returned comments.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": - \"html\"\n },\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"default\": \"20\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"maximum\": \"100\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more comment resource - properties that the API response will include.\",\n \"repeated\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"CommentListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/comments\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"markAsSpam\": {\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/comments/markAsSpam\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.markAsSpam\",\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Flags the comments with the given IDs as - spam in the caller's opinion.\",\n \"repeated\": true\n }\n - \ },\n \"path\": \"youtube/v3/comments/markAsSpam\",\n \"parameterOrder\": - [\n \"id\"\n ]\n }\n }\n },\n \"youtube\": - {\n \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"parameterOrder\": [],\n \"response\": {\n - \ \"$ref\": \"CommentThread\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"request\": {\n \"$ref\": - \"CommentThread\"\n }\n }\n }\n }\n - \ }\n },\n \"channelBanners\": {\n \"methods\": {\n \"insert\": - {\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/channelBanners/insert\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"6291456\"\n - \ },\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"supportsMediaUpload\": true,\n \"id\": \"youtube.channelBanners.insert\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Unused, channel_id is currently derived from - the security context of the requestor.\"\n }\n },\n \"response\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"path\": - \"youtube/v3/channelBanners/insert\",\n \"request\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"httpMethod\": \"POST\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"parameterOrder\": []\n }\n }\n },\n - \ \"tests\": {\n \"methods\": {\n \"insert\": {\n \"parameters\": - {\n \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true\n }\n - \ },\n \"response\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"description\": \"POST method.\",\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/tests\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"TestItem\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/tests\",\n \"id\": - \"youtube.tests.insert\"\n }\n }\n },\n \"liveChatBans\": - {\n \"methods\": {\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a chat ban.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.liveChatBans.delete\"\n },\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n }\n }\n }\n - \ },\n \"channelSections\": {\n \"methods\": {\n \"update\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Updates - an existing resource.\",\n \"id\": \"youtube.channelSections.update\",\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n }\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/channelSections\",\n \"response\": {\n \"$ref\": - \"ChannelSectionListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.channelSections.list\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"parameters\": {\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the ChannelSections owned by the specified - channel ID.\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the ChannelSections - owned by the authenticated user.\",\n \"location\": \"query\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - content in specified language\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": - \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ }\n }\n },\n \"insert\": {\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"id\": - \"youtube.channelSections.insert\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n }\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.channelSections.delete\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"delete\": {\n \"description\": \"Deletes a resource.\",\n - \ \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n - \ ],\n \"parameters\": {\n \"type\": {\n \"type\": - \"string\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"description\": - \"Type of the link to be deleted.\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ]\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Do - not use. Required for compatibility.\",\n \"type\": \"string\"\n - \ },\n \"linkingToken\": {\n \"location\": - \"query\",\n \"description\": \"Delete the partner links with - the given linking token.\",\n \"required\": true,\n \"type\": - \"string\"\n },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Channel ID to which changes should - be applied, for delegation.\",\n \"type\": \"string\"\n }\n - \ },\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.delete\"\n },\n \"list\": - {\n \"parameters\": {\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Channel ID to which changes should - be applied, for delegation.\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Get - a third party link of the given type.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ]\n },\n - \ \"linkingToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Get a third party link with the - given linking token.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the thirdPartyLink resource parts that the API response - will include. Supported values are linkingToken, status, and snippet.\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"id\": - \"youtube.thirdPartyLinks.list\",\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\"\n },\n \"update\": {\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"description\": \"Updates an existing - resource.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"location\": \"query\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"id\": \"youtube.thirdPartyLinks.update\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"insert\": - {\n \"id\": \"youtube.thirdPartyLinks.insert\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n }\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"minimum\": \"1\",\n - \ \"default\": \"5\"\n },\n \"part\": {\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the superChatEvent resource parts that the - API response will include. This parameter is currently not supported.\"\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Return - rendered funding amounts in specified language.\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.superChatEvents.list\",\n \"path\": - \"youtube/v3/superChatEvents\",\n \"response\": {\n \"$ref\": - \"SuperChatEventListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"i18nLanguages\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/i18nLanguages\",\n - \ \"id\": \"youtube.i18nLanguages.list\",\n \"flatPath\": - \"youtube/v3/i18nLanguages\",\n \"parameters\": {\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"en_US\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the i18nLanguage resource properties that the API - response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ }\n }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"insertCuepoint\": {\n \"request\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"path\": - \"youtube/v3/liveBroadcasts/cuepoint\",\n \"httpMethod\": \"POST\",\n - \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"description\": \"Insert cuepoints in a broadcast\",\n \"parameterOrder\": - [],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"id\": {\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"bind\": {\n \"id\": \"youtube.liveBroadcasts.bind\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"description\": - \"Bind a broadcast to a stream.\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"streamId\": - {\n \"type\": \"string\",\n \"description\": \"Stream - to bind, if not set unbind the current one.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Broadcast to bind to the stream\",\n - \ \"required\": true,\n \"type\": \"string\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\"\n - \ },\n \"delete\": {\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"description\": \"Delete a given - broadcast.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"Broadcast to delete.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n }\n },\n \"update\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.update\",\n - \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n },\n \"description\": - \"Updates an existing broadcast for the authenticated user.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\"\n },\n - \ \"list\": {\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"description\": \"Retrieve the list of broadcasts - associated with the given channel.\",\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"Return broadcasts with the given - ids from Stubby or Apiary.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"minimum\": \"0\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"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, status - and statistics.\",\n \"required\": true\n },\n \"broadcastStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return current live broadcasts.\",\n - \ \"Return broadcasts that have not yet started.\",\n \"Return - broadcasts that have already ended.\"\n ],\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"broadcastType\": {\n \"default\": - \"event\",\n \"description\": \"Return only broadcasts with the - selected type.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\"\n - \ },\n \"transition\": {\n \"description\": \"Transition - a broadcast to a given status.\",\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"broadcastStatus\": {\n \"location\": - \"query\",\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"description\": \"The status to - which the broadcast is going to transition.\",\n \"enum\": [\n - \ \"statusUnspecified\",\n \"testing\",\n \"live\",\n - \ \"complete\"\n ],\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"required\": true,\n - \ \"description\": \"Broadcast to transition.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n }\n }\n },\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.liveBroadcasts.insert\",\n \"description\": \"Inserts a - new stream for the authenticated user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"default\": \"en_US\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"path\": \"youtube/v3/i18nRegions\",\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"httpMethod\": \"GET\"\n }\n }\n }\n - \ },\n \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n }\n - \ }\n }\n },\n \"batchPath\": \"batch\",\n \"protocol\": \"rest\",\n - \ \"kind\": \"discovery#restDescription\",\n \"revision\": \"20230220\",\n - \ \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"title\": - \"YouTube Data API v3\",\n \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"discoveryVersion\": - \"v1\",\n \"name\": \"youtube\",\n \"description\": \"The YouTube Data API - v3 is an API that provides access to YouTube data, such as videos, playlists, - and channels.\",\n \"basePath\": \"\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"id\": \"youtube:v3\",\n \"fullyEncodeReservedExpansion\": true,\n \"ownerName\": - \"Google\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:35 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCfrkBCa4zJ9lUdmK5-Mq7SQ&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"nyGV3-01Ckx9oU9ljvIZykGbSy0\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"HQATm_97p_envZWupgjekxxFScI\",\n \"id\": \"UCfrkBCa4zJ9lUdmK5-Mq7SQ\",\n - \ \"snippet\": {\n \"title\": \"Hayley Morris\",\n \"description\": - \"MY BOOK ME VS BRAIN IS COMING 16TH FEBRUARY 2023!\\nPRE-ORDER HERE: https://linktr.ee/hayleymorris3\\n\\n\\n\\n\",\n - \ \"customUrl\": \"@hayleymorris\",\n \"publishedAt\": \"2010-01-15T14:02:02Z\",\n - \ \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/ytc/AL5GRJUlcO5RKimhmGbbqjjVvtByJT7jyCl_MYTS-ERRyA=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJUlcO5RKimhmGbbqjjVvtByJT7jyCl_MYTS-ERRyA=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJUlcO5RKimhmGbbqjjVvtByJT7jyCl_MYTS-ERRyA=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Hayley Morris\",\n \"description\": - \"MY BOOK ME VS BRAIN IS COMING 16TH FEBRUARY 2023!\\nPRE-ORDER HERE: https://linktr.ee/hayleymorris3\\n\\n\\n\\n\"\n - \ },\n \"country\": \"GB\"\n },\n \"brandingSettings\": - {\n \"channel\": {\n \"title\": \"Hayley Morris\",\n \"description\": - \"MY BOOK ME VS BRAIN IS COMING 16TH FEBRUARY 2023!\\nPRE-ORDER HERE: https://linktr.ee/hayleymorris3\\n\\n\\n\\n\",\n - \ \"keywords\": \"\\\"hayley morris\\\" \\\"pooping in public\\\" - \\\"girls don't poo\\\" \\\"pooping yourself\\\" \\\"women in comedy\\\"\",\n - \ \"unsubscribedTrailer\": \"0151LJmOgMw\",\n \"country\": - \"GB\"\n },\n \"image\": {\n \"bannerExternalUrl\": - \"https://yt3.googleusercontent.com/LcHW6504sueeL-eUvk7CyutCVUS3AThX4tQE-LBta4_bmoc0aqRs6nOWGaVNCPq5TAjlw7IcvUo\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:36 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"discoveryVersion\": \"v1\",\n \"version\": \"v3\",\n \"mtlsRootUrl\": - \"https://youtube.mtls.googleapis.com/\",\n \"ownerName\": \"Google\",\n - \ \"servicePath\": \"\",\n \"parameters\": {\n \"quotaUser\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"callback\": {\n \"location\": \"query\",\n \"description\": - \"JSONP\",\n \"type\": \"string\"\n },\n \"alt\": {\n \"default\": - \"json\",\n \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"enumDescriptions\": [\n \"Responses with Content-Type - of application/json\",\n \"Media download with context-dependent Content-Type\",\n - \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Data format for response.\",\n - \ \"type\": \"string\"\n },\n \"upload_protocol\": {\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"$.xgafv\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"v1 - error format\",\n \"v2 error format\"\n ],\n \"description\": - \"V1 error format.\",\n \"enum\": [\n \"1\",\n \"2\"\n - \ ]\n },\n \"prettyPrint\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"default\": \"true\",\n \"description\": - \"Returns response with indentations and line breaks.\"\n },\n \"uploadType\": - {\n \"description\": \"Legacy upload protocol for media (e.g. \\\"media\\\", - \\\"multipart\\\").\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"access_token\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"OAuth access token.\"\n },\n \"oauth_token\": - {\n \"description\": \"OAuth 2.0 token for the current user.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"fields\": {\n \"description\": - \"Selector specifying which fields to include in a partial response.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"key\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"auth\": {\n \"oauth2\": {\n \"scopes\": - {\n \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n }\n }\n - \ }\n },\n \"title\": \"YouTube Data API v3\",\n \"icons\": {\n \"x32\": - \"http://www.google.com/images/icons/product/search-32.gif\",\n \"x16\": - \"http://www.google.com/images/icons/product/search-16.gif\"\n },\n \"canonicalName\": - \"YouTube\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"id\": - \"youtube:v3\",\n \"description\": \"The YouTube Data API v3 is an API that - provides access to YouTube data, such as videos, playlists, and channels.\",\n - \ \"resources\": {\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.i18nLanguages.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n - \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"path\": \"youtube/v3/i18nLanguages\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the i18nLanguage resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"hl\": {\n \"default\": - \"en_US\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n }\n }\n }\n },\n \"channels\": - {\n \"methods\": {\n \"update\": {\n \"request\": {\n - \ \"$ref\": \"Channel\"\n },\n \"path\": \"youtube/v3/channels\",\n - \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"id\": \"youtube.channels.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"description\": - \"Updates an existing resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channels\"\n },\n - \ \"list\": {\n \"id\": \"youtube.channels.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"path\": \"youtube/v3/channels\",\n \"parameters\": - {\n \"categoryId\": {\n \"description\": \"Return - the channels within the specified guide category ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"forUsername\": - {\n \"location\": \"query\",\n \"description\": - \"Return the channel associated with a YouTube username.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"Return the channels with the specified IDs.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"hl\": {\n \"location\": \"query\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"type\": - \"string\"\n },\n \"managedByMe\": {\n \"description\": - \"Return the channels managed by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"description\": \"Return the ids of channels owned by the - authenticated user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"maximum\": \"50\",\n \"default\": - \"5\"\n },\n \"mySubscribers\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the channels subscribed to the authenticated user\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/channels\",\n \"description\": \"Retrieves a list of - resources, possibly filtered.\"\n }\n }\n },\n \"commentThreads\": - {\n \"methods\": {\n \"insert\": {\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"path\": \"youtube/v3/commentThreads\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"id\": \"youtube.commentThreads.insert\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"list\": {\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"parameters\": {\n \"id\": - {\n \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\"\n },\n \"videoId\": {\n - \ \"location\": \"query\",\n \"description\": \"Returns - the comment threads of the specified video.\",\n \"type\": \"string\"\n - \ },\n \"searchTerms\": {\n \"location\": - \"query\",\n \"description\": \"Limits the returned comment threads - to those matching the specified key words. Not compatible with the 'id' filter.\",\n - \ \"type\": \"string\"\n },\n \"order\": - {\n \"enum\": [\n \"orderUnspecified\",\n \"time\",\n - \ \"relevance\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"type\": \"string\",\n \"default\": - \"time\",\n \"location\": \"query\"\n },\n \"moderationStatus\": - {\n \"type\": \"string\",\n \"default\": \"published\",\n - \ \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by - a moderator.\",\n \"\",\n \"The comment is unfit - for display.\"\n ],\n \"description\": \"Limits - the returned comment threads to those with the specified moderation status. - Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"maximum\": \"100\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"1\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"20\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"textFormat\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"description\": \"The requested text format - for the returned comments.\",\n \"location\": \"query\",\n \"default\": - \"html\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ]\n - \ },\n \"allThreadsRelatedToChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of all videos of the channel and the channel - comments as well.\"\n }\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"id\": \"youtube.commentThreads.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ }\n }\n }\n },\n \"tests\": {\n \"methods\": - {\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"request\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"httpMethod\": \"POST\",\n \"description\": - \"POST method.\",\n \"response\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"path\": \"youtube/v3/tests\",\n \"flatPath\": - \"youtube/v3/tests\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"id\": \"youtube.tests.insert\"\n - \ }\n }\n },\n \"liveChatBans\": {\n \"methods\": {\n - \ \"insert\": {\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\"\n }\n },\n \"request\": {\n - \ \"$ref\": \"LiveChatBan\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatBan\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - chat ban.\",\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveChatBans.delete\"\n }\n - \ }\n },\n \"superChatEvents\": {\n \"methods\": {\n \"list\": - {\n \"id\": \"youtube.superChatEvents.list\",\n \"flatPath\": - \"youtube/v3/superChatEvents\",\n \"response\": {\n \"$ref\": - \"SuperChatEventListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"maxResults\": {\n \"default\": \"5\",\n \"minimum\": - \"1\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"maximum\": \"50\"\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"description\": \"Return rendered funding amounts in specified - language.\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the superChatEvent resource parts that the API - response will include. This parameter is currently not supported.\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/superChatEvents\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n }\n }\n - \ },\n \"channelBanners\": {\n \"methods\": {\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [],\n - \ \"path\": \"youtube/v3/channelBanners/insert\",\n \"flatPath\": - \"youtube/v3/channelBanners/insert\",\n \"mediaUpload\": {\n \"maxSize\": - \"6291456\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/channelBanners/insert\"\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"id\": \"youtube.channelBanners.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"supportsMediaUpload\": - true\n }\n }\n },\n \"watermarks\": {\n \"methods\": - {\n \"unset\": {\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.watermarks.unset\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"channelId\": {\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"path\": - \"youtube/v3/watermarks/unset\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"description\": \"Allows removal of channel watermark.\"\n - \ },\n \"set\": {\n \"mediaUpload\": {\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\",\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/watermarks/set\"\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/watermarks/set\",\n \"description\": - \"Allows upload of watermark image and setting it for a channel.\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n - \ \"id\": \"youtube.watermarks.set\",\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"supportsMediaUpload\": - true,\n \"httpMethod\": \"POST\"\n }\n }\n },\n \"liveStreams\": - {\n \"methods\": {\n \"delete\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"id\": \"youtube.liveStreams.delete\",\n \"description\": - \"Deletes an existing stream for the authenticated user.\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n }\n },\n \"update\": - {\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"youtube.liveStreams.update\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing stream for the authenticated user.\",\n \"response\": - {\n \"$ref\": \"LiveStream\"\n }\n },\n \"insert\": - {\n \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveStreams\",\n \"description\": \"Inserts a new stream - for the authenticated user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.insert\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"description\": - \"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, content_details, and status.\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieve the list of streams associated - with the given channel. --\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\"\n },\n \"id\": {\n \"description\": - \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.liveStreams.list\",\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"path\": \"youtube/v3/liveStreams\"\n }\n }\n },\n - \ \"i18nRegions\": {\n \"methods\": {\n \"list\": {\n \"path\": - \"youtube/v3/i18nRegions\",\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - i18nRegion resource properties that the API response will include. Set the - parameter value to snippet.\",\n \"location\": \"query\"\n },\n - \ \"hl\": {\n \"default\": \"en_US\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/i18nRegions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of all - pricing levels offered by a creator to the fans.\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/membershipsLevels\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the membershipsLevel - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ }\n }\n }\n },\n \"videos\": {\n \"methods\": - {\n \"update\": {\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"path\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.videos.update\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"rate\": {\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"description\": \"Adds a like or dislike rating to a video or removes - a rating from a video.\",\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"rating\": {\n \"location\": - \"query\",\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.videos.rate\",\n \"path\": - \"youtube/v3/videos/rate\"\n },\n \"getRating\": {\n \"path\": - \"youtube/v3/videos/getRating\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos/getRating\",\n \"id\": - \"youtube.videos.getRating\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"response\": - {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves the ratings that the authorized - user gave to a list of specified videos.\"\n },\n \"reportAbuse\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [],\n \"request\": {\n \"$ref\": - \"VideoAbuseReport\"\n },\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"path\": \"youtube/v3/videos/reportAbuse\",\n \"id\": - \"youtube.videos.reportAbuse\",\n \"description\": \"Report abuse - for a video.\"\n },\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"description\": - \"Return videos with the given ids.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"hl\": {\n \"description\": \"Stands for \\\"host - language\\\". Specifies the localization language of the metadata to be filled - into snippet.localized. The field is filled with the default metadata if there - is no localization in the specified language. The parameter value must be - a language code included in the list returned by the i18nLanguages.list method - (e.g. en_US, es_MX).\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"myRating\": {\n \"location\": - \"query\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"Return - videos liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n - \ \"type\": \"string\"\n },\n \"locale\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"description\": \"Use a chart that is specific to the specified - region\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxHeight\": {\n \"format\": - \"int32\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"maximum\": \"8192\",\n \"minimum\": - \"72\"\n },\n \"videoCategoryId\": {\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"type\": - \"string\",\n \"default\": \"0\",\n \"location\": - \"query\"\n },\n \"maxWidth\": {\n \"minimum\": - \"72\",\n \"type\": \"integer\",\n \"description\": - \"Return the player with maximum height specified in\",\n \"maximum\": - \"8192\",\n \"format\": \"int32\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"minimum\": \"1\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"maximum\": \"50\"\n },\n \"chart\": - {\n \"location\": \"query\",\n \"description\": - \"Return the videos that are in the specified chart.\",\n \"enum\": - [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.videos.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/videos\",\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"VideoListResponse\"\n }\n },\n - \ \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"path\": - \"youtube/v3/videos\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.delete\"\n },\n \"insert\": - {\n \"mediaUpload\": {\n \"maxSize\": \"274877906944\",\n - \ \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"path\": \"/upload/youtube/v3/videos\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ }\n }\n },\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos\",\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"id\": \"youtube.videos.insert\",\n - \ \"supportsMediaUpload\": true,\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"stabilize\": {\n - \ \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Should stabilize be applied to the upload.\"\n - \ },\n \"notifySubscribers\": {\n \"default\": - \"true\",\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Notify the channel subscribers - about the new video. As default, the notification is enabled.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"autoLevels\": - {\n \"description\": \"Should auto-levels be applied to the upload.\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ }\n }\n }\n }\n },\n \"members\": {\n - \ \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/members\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"description\": \"Retrieves a list of members that - match the request criteria for a channel.\",\n \"response\": {\n - \ \"$ref\": \"MemberListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.members.list\",\n - \ \"path\": \"youtube/v3/members\",\n \"parameters\": {\n - \ \"maxResults\": {\n \"location\": \"query\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"maximum\": \"1000\"\n },\n - \ \"hasAccessToLevel\": {\n \"location\": \"query\",\n - \ \"description\": \"Filter members in the results set to the - ones that have access to a level.\",\n \"type\": \"string\"\n - \ },\n \"filterByMemberChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Comma separated list of channel - IDs. Only data about members that are part of this list will be included in - the response.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\"\n },\n \"mode\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"default\": \"all_current\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - only members that joined after the first call with this mode was made.\",\n - \ \"Return all current members, from newest to oldest.\"\n ],\n - \ \"description\": \"Parameter that specifies which channel members - to return.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"liveBroadcasts\": - {\n \"methods\": {\n \"transition\": {\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"Broadcast to transition.\",\n \"type\": - \"string\"\n },\n \"broadcastStatus\": {\n \"location\": - \"query\",\n \"description\": \"The status to which the broadcast - is going to transition.\",\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ]\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Transition a broadcast to a given status.\"\n - \ },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Inserts a new stream for the authenticated - user.\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ }\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.list\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieve the list of broadcasts associated - with the given channel.\",\n \"response\": {\n \"$ref\": - \"LiveBroadcastListResponse\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameters\": {\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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, status and statistics.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"id\": - {\n \"description\": \"Return broadcasts with the given ids from - Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"broadcastStatus\": - {\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ]\n },\n \"maxResults\": {\n - \ \"location\": \"query\",\n \"default\": \"5\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"maximum\": \"50\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"broadcastType\": - {\n \"description\": \"Return only broadcasts with the selected - type.\",\n \"default\": \"event\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/liveBroadcasts\"\n - \ },\n \"delete\": {\n \"description\": \"Delete a given - broadcast.\",\n \"id\": \"youtube.liveBroadcasts.delete\",\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Broadcast to delete.\",\n \"type\": \"string\"\n }\n - \ },\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\"\n },\n \"insertCuepoint\": - {\n \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Cuepoint\"\n - \ },\n \"request\": {\n \"$ref\": \"Cuepoint\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"description\": - \"Insert cuepoints in a broadcast\",\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"parameterOrder\": - []\n },\n \"bind\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Bind a broadcast to a stream.\",\n - \ \"parameters\": {\n \"streamId\": {\n \"location\": - \"query\",\n \"description\": \"Stream to bind, if not set unbind - the current one.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Broadcast to bind to the stream\",\n - \ \"type\": \"string\",\n \"required\": true\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"id\": - \"youtube.liveBroadcasts.bind\"\n },\n \"update\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"PUT\",\n \"id\": \"youtube.liveBroadcasts.update\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"Updates an existing broadcast for the authenticated user.\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"playlists\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"id\": {\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return content in specified language\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the playlists owned by - the specified channel ID.\",\n \"type\": \"string\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"description\": - \"Return the playlists owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"maximum\": \"50\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"minimum\": \"0\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"id\": \"youtube.playlists.list\"\n },\n \"insert\": - {\n \"flatPath\": \"youtube/v3/playlists\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.playlists.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"path\": \"youtube/v3/playlists\"\n },\n \"update\": - {\n \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/playlists\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.playlists.update\",\n \"request\": {\n - \ \"$ref\": \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"id\": \"youtube.playlists.delete\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/playlists\"\n - \ }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"insert\": {\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/messages\",\n \"id\": - \"youtube.liveChatMessages.insert\"\n },\n \"delete\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Deletes a chat message.\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"id\": - \"youtube.liveChatMessages.delete\"\n },\n \"list\": {\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"profileImageSize\": - {\n \"maximum\": \"720\",\n \"description\": \"Specifies - the size of the profile image that should be returned for each user.\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"16\",\n - \ \"location\": \"query\",\n \"type\": \"integer\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the liveChatComment - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"hl\": - {\n \"description\": \"Specifies the localization language in - which the system messages should be returned.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"liveChatId\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - id of the live chat for which comments should be returned.\"\n },\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"minimum\": \"200\",\n \"default\": - \"500\",\n \"maximum\": \"2000\",\n \"format\": - \"uint32\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/liveChat/messages\",\n \"id\": - \"youtube.liveChatMessages.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ]\n }\n - \ }\n },\n \"videoCategories\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/videoCategories\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the videoCategory resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"default\": \"en-US\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"Returns the video categories with the given IDs for Stubby or Apiary.\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"id\": \"youtube.videoCategories.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/videoCategories\",\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"VideoCategoryListResponse\"\n }\n }\n - \ }\n },\n \"playlistItems\": {\n \"methods\": {\n \"update\": - {\n \"id\": \"youtube.playlistItems.update\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"description\": \"Updates an - existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"path\": \"youtube/v3/playlistItems\"\n },\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.playlistItems.list\",\n \"parameters\": {\n \"playlistId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the playlist items within the given - playlist.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"maximum\": \"50\",\n \"default\": \"5\",\n - \ \"type\": \"integer\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the playlist items associated with the given video ID.\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"delete\": {\n - \ \"id\": \"youtube.playlistItems.delete\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"delete\": {\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.channelSections.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\",\n \"flatPath\": - \"youtube/v3/channelSections\"\n },\n \"insert\": {\n \"id\": - \"youtube.channelSections.insert\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n }\n },\n \"list\": {\n \"path\": - \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"id\": - \"youtube.channelSections.list\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the ChannelSections owned - by the specified channel ID.\",\n \"type\": \"string\"\n },\n - \ \"mine\": {\n \"description\": \"Return the ChannelSections - owned by the authenticated user.\",\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"id\": {\n \"repeated\": true,\n - \ \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"flatPath\": \"youtube/v3/channelSections\"\n },\n - \ \"update\": {\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ }\n },\n \"httpMethod\": \"PUT\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.channelSections.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"description\": \"Updates an - existing resource.\",\n \"path\": \"youtube/v3/channelSections\"\n - \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"id\": \"youtube.captions.list\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"parameters\": {\n \"onBehalfOf\": {\n - \ \"type\": \"string\",\n \"description\": \"ID of - the Google+ Page for the channel that the request is on behalf of.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Returns the captions with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"description\": - \"Returns the captions for the specified video.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"download\": {\n \"id\": - \"youtube.captions.download\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/captions/{id}\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"path\",\n \"description\": - \"The ID of the caption track to download, required for One Platform.\",\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"tlang\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"tlang is the language code; - machine translate the captions into this language.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"tfmt\": {\n \"type\": - \"string\",\n \"description\": \"Convert the captions into this - format. Supported options are sbv, srt, and vtt.\",\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n }\n },\n \"flatPath\": \"youtube/v3/captions/{id}\",\n - \ \"supportsMediaDownload\": true,\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"useMediaDownloadService\": true,\n \"description\": \"Downloads - a caption track.\"\n },\n \"update\": {\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"flatPath\": - \"youtube/v3/captions\",\n \"description\": \"Updates an existing - resource.\",\n \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n - \ \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n }\n - \ },\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"parameters\": - {\n \"onBehalfOf\": {\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"sync\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\"\n },\n \"onBehalfOfContentOwner\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"id\": \"youtube.captions.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Caption\"\n - \ },\n \"path\": \"youtube/v3/captions\",\n \"supportsMediaUpload\": - true\n },\n \"insert\": {\n \"mediaUpload\": {\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\",\n - \ \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n },\n - \ \"resumable\": {\n \"multipart\": true,\n \"path\": - \"/resumable/upload/youtube/v3/captions\"\n }\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"supportsMediaUpload\": - true,\n \"path\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"onBehalfOf\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\"\n },\n \"sync\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - caption resource parts that the API response will include. Set the parameter - value to snippet.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.captions.insert\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"delete\": {\n \"id\": \"youtube.captions.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"onBehalfOf\": {\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"parameterOrder\": [\n \"id\"\n ]\n }\n - \ }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"httpMethod\": - \"PUT\",\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"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.\"\n }\n },\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [],\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"id\": \"youtube.youtube.v3.updateCommentThreads\"\n - \ }\n }\n }\n }\n },\n \"subscriptions\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"path\": \"youtube/v3/subscriptions\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"mine\": {\n \"type\": - \"boolean\",\n \"description\": \"Flag for returning the subscriptions - of the authenticated user.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"mySubscribers\": - {\n \"description\": \"Return the subscribers of the given channel - owner.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"channelId\": - {\n \"description\": \"Return the subscriptions of the given - channel owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"forChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\"\n },\n \"id\": {\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"order\": {\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"type\": \"string\",\n \"default\": \"relevance\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"description\": \"The order of the returned - subscriptions\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"myRecentSubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\"\n }\n },\n \"id\": \"youtube.subscriptions.list\"\n - \ },\n \"insert\": {\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"id\": - \"youtube.subscriptions.insert\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.subscriptions.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n }\n }\n }\n },\n \"abuseReports\": - {\n \"methods\": {\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.abuseReports.insert\",\n \"response\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"flatPath\": \"youtube/v3/abuseReports\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/abuseReports\"\n }\n }\n },\n - \ \"thirdPartyLinks\": {\n \"methods\": {\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.thirdPartyLinks.list\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API response will include. Supported - values are linkingToken, status, and snippet.\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"description\": \"Get a third party link - of the given type.\",\n \"location\": \"query\"\n },\n - \ \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\",\n \"location\": \"query\"\n },\n - \ \"linkingToken\": {\n \"description\": \"Get a third - party link with the given linking token.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n }\n },\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the thirdPartyLink resource parts that the API request and response will include. - Supported values are linkingToken, status, and snippet.\",\n \"repeated\": - true\n }\n },\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\"\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"Do not use. Required for compatibility.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"linkingToken\": - {\n \"description\": \"Delete the partner links with the given - linking token.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"type\": {\n \"required\": - true,\n \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"description\": - \"Type of the link to be deleted.\"\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.thirdPartyLinks.delete\",\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"description\": - \"Deletes a resource.\"\n },\n \"update\": {\n \"httpMethod\": - \"PUT\",\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Updates an existing resource.\",\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"type\": \"string\"\n },\n - \ \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\"\n }\n - \ },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n }\n }\n - \ },\n \"comments\": {\n \"methods\": {\n \"insert\": {\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"id\": \"youtube.comments.insert\",\n - \ \"httpMethod\": \"POST\"\n },\n \"update\": {\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.comments.update\",\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Updates an existing resource.\"\n - \ },\n \"delete\": {\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.comments.delete\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"path\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"setModerationStatus\": {\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"description\": - \"Modifies the moderation status of the comments with the given IDs\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"banAuthor\": {\n \"description\": - \"If set to true the author of the comment gets added to the ban list. This - means all future comments of the author will autmomatically be rejected. Only - valid in combination with STATUS_REJECTED.\",\n \"default\": - \"false\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"moderationStatus\": {\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"description\": \"Sets the moderation status of one - or more comments.\",\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/comments/setModerationStatus\"\n - \ },\n \"list\": {\n \"id\": \"youtube.comments.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"description\": - \"Returns the comments with the given IDs for One Platform.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"textFormat\": - {\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"description\": \"The requested text format for the returned - comments.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"default\": \"html\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies a comma-separated list of one or more comment resource - properties that the API response will include.\",\n \"required\": - true\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"minimum\": - \"1\",\n \"default\": \"20\",\n \"maximum\": \"100\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\"\n },\n \"parentId\": {\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/comments\",\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments\",\n \"response\": {\n - \ \"$ref\": \"CommentListResponse\"\n }\n },\n \"markAsSpam\": - {\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.comments.markAsSpam\",\n - \ \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n - \ \"repeated\": true\n }\n },\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"parameterOrder\": [\n \"id\"\n ]\n - \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n - \ \"set\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"id\": \"youtube.thumbnails.set\",\n \"response\": {\n - \ \"$ref\": \"ThumbnailSetResponse\"\n },\n \"flatPath\": - \"youtube/v3/thumbnails/set\",\n \"supportsMediaUpload\": true,\n - \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"description\": - \"As this is not an insert in a strict sense (it supports uploading/setting - of a thumbnail for multiple videos, which doesn't result in creation of a - single resource), I use a custom verb here.\",\n \"mediaUpload\": - {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"2097152\",\n \"protocols\": {\n \"resumable\": {\n - \ \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n }\n }\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"description\": \"Returns the Thumbnail with the given video - IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n }\n - \ }\n }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"hl\": {\n \"default\": - \"en-US\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - videoCategory resource parts that the API response will include. Supported - values are id and snippet.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"flatPath\": - \"youtube/v3/videoAbuseReportReasons\",\n \"httpMethod\": \"GET\"\n - \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/search\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"path\": \"youtube/v3/search\",\n \"description\": - \"Retrieves a list of search resources\",\n \"parameters\": {\n \"locationRadius\": - {\n \"description\": \"Filter on distance from the location (specified - above).\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"relevanceLanguage\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return results relevant to this language.\"\n },\n \"type\": - {\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular set of resource types from One Platform.\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"publishedAfter\": {\n \"type\": \"string\",\n \"format\": - \"google-datetime\",\n \"description\": \"Filter on resources - published after this date.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"eventType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Filter - on the livestream status of the videos.\"\n },\n \"videoDuration\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Filter - on the duration of the videos.\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ]\n },\n \"videoCaption\": - {\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter results based on caption availability.\",\n - \ \"Only include videos that have captions.\",\n \"Only - include videos that do not have captions.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on the presence of captions on the videos.\"\n },\n \"videoType\": - {\n \"location\": \"query\",\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"description\": \"Filter on videos of a specific - type.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ]\n },\n \"forContentOwner\": {\n \"type\": - \"boolean\",\n \"description\": \"Search owned by a content owner.\",\n - \ \"location\": \"query\"\n },\n \"relatedToVideoId\": - {\n \"type\": \"string\",\n \"description\": \"Search - related to a resource.\",\n \"location\": \"query\"\n },\n - \ \"videoLicense\": {\n \"description\": \"Filter on - the license of the videos.\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ]\n },\n \"videoDimension\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"description\": \"Filter on - 3d videos.\"\n },\n \"videoEmbeddable\": {\n \"enum\": - [\n \"videoEmbeddableUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos, embeddable or not.\",\n \"Only retrieve embeddable - videos.\"\n ],\n \"type\": \"string\",\n \"description\": - \"Filter on embeddable videos.\"\n },\n \"videoCategoryId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on videos in a specific category.\"\n - \ },\n \"videoDefinition\": {\n \"type\": - \"string\",\n \"description\": \"Filter on the definition of - the videos.\",\n \"enumDescriptions\": [\n \"Return - all videos, regardless of their resolution.\",\n \"Only retrieve - videos in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"location\": \"query\",\n \"enum\": - [\n \"any\",\n \"standard\",\n \"high\"\n - \ ]\n },\n \"channelType\": {\n \"description\": - \"Add a filter on the channel search.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all channels.\",\n \"Only retrieve shows.\"\n ]\n - \ },\n \"forMine\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Search - for the private videos of the authenticated user.\"\n },\n \"forDeveloper\": - {\n \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"topicId\": - {\n \"type\": \"string\",\n \"description\": \"Restrict - results to a particular topic.\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"format\": - \"uint32\",\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\"\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"description\": - \"Filter on resources belonging to this channelId.\",\n \"type\": - \"string\"\n },\n \"safeSearch\": {\n \"default\": - \"moderate\",\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ]\n },\n \"videoSyndicated\": - {\n \"description\": \"Filter on syndicated videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ]\n },\n - \ \"order\": {\n \"description\": \"Sort order of the - results.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"default\": \"relevance\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"regionCode\": - {\n \"description\": \"Display the content as seen by viewers - in this country.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"publishedBefore\": {\n \"format\": \"google-datetime\",\n - \ \"description\": \"Filter on resources published before this - date.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"location\": {\n \"type\": - \"string\",\n \"description\": \"Filter on location of the video\",\n - \ \"location\": \"query\"\n },\n \"q\": - {\n \"location\": \"query\",\n \"description\": - \"Textual search terms to match.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.search.list\",\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"liveChatModerators\": - {\n \"methods\": {\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"id\": - \"youtube.liveChatModerators.delete\",\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"description\": \"Deletes a chat - moderator.\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveChatModerator\"\n }\n },\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"response\": {\n \"$ref\": - \"LiveChatModeratorListResponse\"\n },\n \"id\": \"youtube.liveChatModerators.list\",\n - \ \"parameters\": {\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"location\": \"query\"\n },\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for which moderators - should be returned.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\"\n }\n }\n }\n }\n },\n \"activities\": - {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/activities\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/activities\",\n \"parameters\": - {\n \"home\": {\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"regionCode\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"publishedBefore\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"repeated\": - true\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"publishedAfter\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"format\": \"google-datetime\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"maxResults\": {\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\",\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"minimum\": - \"0\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.activities.list\"\n - \ }\n }\n }\n },\n \"name\": \"youtube\",\n \"fullyEncodeReservedExpansion\": - true,\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"protocol\": - \"rest\",\n \"revision\": \"20230220\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"batchPath\": \"batch\",\n \"kind\": \"discovery#restDescription\",\n - \ \"ownerDomain\": \"google.com\",\n \"schemas\": {\n \"ActivityContentDetailsFavorite\": - {\n \"id\": \"ActivityContentDetailsFavorite\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource that was marked as a favorite.\"\n }\n },\n - \ \"description\": \"Information about a video that was marked as a favorite - video.\"\n },\n \"SubscriptionSubscriberSnippet\": {\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the subscriber.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The channel - ID of the subscriber.\"\n },\n \"thumbnails\": {\n \"description\": - \"Thumbnails for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"title\": {\n \"description\": \"The title of - the subscriber.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"SubscriptionSubscriberSnippet\",\n \"description\": \"Basic - details about a subscription's subscriber including title, description, channel - ID and thumbnails.\",\n \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"properties\": {\n \"heightPixels\": {\n \"description\": - \"The encoded video content's height in pixels.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"codec\": {\n \"description\": - \"The video codec that the stream uses.\",\n \"type\": \"string\"\n - \ },\n \"rotation\": {\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ],\n \"description\": \"The amount - that YouTube needs to rotate the original source content to properly display - the video.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"bitrateBps\": {\n \"type\": \"string\",\n - \ \"description\": \"The video stream's bitrate, in bits per second.\",\n - \ \"format\": \"uint64\"\n },\n \"frameRateFps\": {\n - \ \"description\": \"The video stream's frame rate, in frames per - second.\",\n \"format\": \"double\",\n \"type\": \"number\"\n - \ },\n \"vendor\": {\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\",\n \"type\": \"string\"\n },\n \"widthPixels\": - {\n \"description\": \"The encoded video content's width in pixels. - You can calculate the video's encoding aspect ratio as width_pixels / height_pixels.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"aspectRatio\": {\n \"description\": \"The video content's - display aspect ratio, which specifies the aspect ratio in which the video - should be displayed.\",\n \"format\": \"double\",\n \"type\": - \"number\"\n }\n },\n \"id\": \"VideoFileDetailsVideoStream\",\n - \ \"description\": \"Information about a video stream.\",\n \"type\": - \"object\"\n },\n \"LiveChatNewSponsorDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatNewSponsorDetails\",\n \"properties\": - {\n \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n },\n \"isUpgrade\": {\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"SuperChatEventListResponse\": - {\n \"id\": \"SuperChatEventListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n },\n \"description\": - \"A list of Super Chat purchases that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n }\n },\n \"LiveChatMessageDeletedDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"properties\": - {\n \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"VideoAbuseReport\": {\n \"id\": \"VideoAbuseReport\",\n - \ \"properties\": {\n \"secondaryReasonId\": {\n \"type\": - \"string\",\n \"description\": \"The specific, or secondary, reason - that this content is abusive (if available). The value is an abuse report - reason ID that is a valid secondary reason for the primary reason.\"\n },\n - \ \"language\": {\n \"description\": \"The language that the - content was viewed in.\",\n \"type\": \"string\"\n },\n \"reasonId\": - {\n \"type\": \"string\",\n \"description\": \"The high-level, - or primary, reason that the content is abusive. The value is an abuse report - reason ID.\"\n },\n \"comments\": {\n \"description\": - \"Additional comments regarding the abuse report.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n }\n },\n \"type\": \"object\"\n },\n \"LocalizedString\": - {\n \"id\": \"LocalizedString\",\n \"properties\": {\n \"language\": - {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcast\": - {\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the event, including its - title, description, start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the broadcast.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"LiveBroadcastContentDetails\",\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n \"default\": - \"youtube#liveBroadcast\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"$ref\": \"LiveBroadcastStatus\",\n \"description\": - \"The status object contains information about the event's status.\"\n },\n - \ \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"The statistics object contains info about the - event's current stats. These include concurrent viewers and total chat count. - Statistics can change (in either direction) during the lifetime of an event. - Statistics are only returned while the event is live.\"\n }\n },\n - \ \"description\": \"A *liveBroadcast* resource represents an event that - will be streamed, via live video, on YouTube.\",\n \"id\": \"LiveBroadcast\",\n - \ \"type\": \"object\"\n },\n \"VideoLocalization\": {\n \"type\": - \"object\",\n \"id\": \"VideoLocalization\",\n \"properties\": {\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"Localized version of the video's title.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's description.\"\n }\n },\n \"description\": - \"Localized versions of certain video properties (e.g. title).\"\n },\n - \ \"VideoAbuseReportReasonListResponse\": {\n \"properties\": {\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n },\n \"description\": \"A list - of valid abuse reasons that are used with `video.ReportAbuse`.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The `visitorId` identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoAbuseReportReasonListResponse\"\n },\n \"ActivitySnippet\": {\n - \ \"id\": \"ActivitySnippet\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the resource primarily associated with the activity.\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of activity that the resource describes.\",\n \"enum\": - [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ]\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"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.\"\n },\n \"groupId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel associated with - the activity.\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel responsible for this activity\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the resource primarily associated - with the activity. @mutable youtube.activities.insert\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the video was uploaded.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n }\n - \ },\n \"description\": \"Basic details about an activity, including - title, description, thumbnails, activity type and group. Next ID: 12\",\n - \ \"type\": \"object\"\n },\n \"ChannelContentDetails\": {\n \"id\": - \"ChannelContentDetails\",\n \"description\": \"Details about the content - of a channel.\",\n \"type\": \"object\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"type\": \"object\",\n \"properties\": {\n \"uploads\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s uploaded videos. Use the - videos.insert method to upload new videos and the videos.delete method to - delete previously uploaded videos.\"\n },\n \"watchLater\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch later playlist. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"likes\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n },\n \"watchHistory\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"favorites\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s favorite videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n }\n }\n }\n - \ }\n },\n \"ChannelConversionPing\": {\n \"description\": - \"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.\",\n \"type\": \"object\",\n \"id\": \"ChannelConversionPing\",\n - \ \"properties\": {\n \"conversionUrl\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"context\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ],\n \"type\": - \"string\",\n \"description\": \"Defines the context of the ping.\"\n - \ }\n }\n },\n \"LiveChatSuperStickerDetails\": {\n \"id\": - \"LiveChatSuperStickerDetails\",\n \"properties\": {\n \"currency\": - {\n \"description\": \"The currency in which the purchase was made.\",\n - \ \"type\": \"string\"\n },\n \"tier\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n },\n \"amountDisplayString\": {\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveBroadcastContentDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"enableEmbed\": {\n \"description\": - \"This setting indicates whether the broadcast video can be played in an embedded - player. If you choose to archive the video (using the enableArchive property), - this setting will also apply to the archived video.\",\n \"type\": - \"boolean\"\n },\n \"monitorStream\": {\n \"$ref\": - \"MonitorStreamInfo\",\n \"description\": \"The monitorStream object - contains information about the monitor stream, which the broadcaster can use - to review the event content before the broadcast stream is shown publicly.\"\n - \ },\n \"boundStreamId\": {\n \"type\": \"string\",\n - \ \"description\": \"This value uniquely identifies the live stream - bound to the broadcast.\"\n },\n \"enableDvr\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting determines whether - viewers can access DVR controls while watching the video. DVR controls enable - the viewer to control the video playback experience by pausing, rewinding, - or fast forwarding content. The default value for this property is true. *Important:* - You must set the value to true and also set the enableArchive property's value - to true if you want to make playback available immediately after the broadcast - ends.\"\n },\n \"closedCaptionsType\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ]\n },\n \"enableAutoStart\": {\n \"description\": - \"This setting indicates whether auto start is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\",\n \"type\": \"boolean\"\n },\n \"enableAutoStop\": - {\n \"description\": \"This setting indicates whether auto stop is - enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\",\n \"type\": \"boolean\"\n - \ },\n \"startWithSlate\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\"\n },\n \"latencyPreference\": - {\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"type\": \"string\",\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ]\n },\n - \ \"enableContentEncryption\": {\n \"description\": \"This - setting indicates whether YouTube should enable content encryption for the - broadcast.\",\n \"type\": \"boolean\"\n },\n \"stereoLayout\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The 3D stereo layout of this broadcast. This - defaults to mono.\"\n },\n \"projection\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ],\n \"description\": \"The projection format of this broadcast. - This defaults to rectangular.\",\n \"type\": \"string\"\n },\n - \ \"enableLowLatency\": {\n \"description\": \"Indicates whether - this broadcast has low latency enabled.\",\n \"type\": \"boolean\"\n - \ },\n \"boundStreamLastUpdateTimeMs\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the live stream referenced by boundStreamId was last - updated.\"\n },\n \"mesh\": {\n \"type\": \"string\",\n - \ \"description\": \"The mesh for projecting the video if projection - is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding - of 3D mesh data that follows the Spherical Video V2 RFC specification for - an mshp box, excluding the box size and type but including the following four - reserved zero bytes for the version and flags.\",\n \"format\": \"byte\"\n - \ },\n \"enableClosedCaptions\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether HTTP POST closed - captioning is enabled for this broadcast. The ingestion URL of the closed - captions is returned through the liveStreams API. This is mutually exclusive - with using the closed_captions_type property, and is equivalent to setting - closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n \"recordFromStart\": - {\n \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\",\n \"type\": \"boolean\"\n }\n },\n \"id\": - \"LiveBroadcastContentDetails\",\n \"description\": \"Detailed settings - of a broadcast.\"\n },\n \"ActivityListResponse\": {\n \"id\": - \"ActivityListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#activityListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Activity\"\n },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ }\n },\n \"MemberListResponse\": {\n \"id\": \"MemberListResponse\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#memberListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"items\": {\n - \ \"description\": \"A list of members that match the request criteria.\",\n - \ \"items\": {\n \"$ref\": \"Member\"\n },\n \"type\": - \"array\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsRecommendation\": {\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\"\n },\n \"seedResourceId\": {\n \"description\": - \"The seedResourceId object contains information about the resource that caused - the recommendation.\",\n \"$ref\": \"ResourceId\"\n },\n \"reason\": - {\n \"description\": \"The reason that the resource is recommended - to the user.\",\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsRecommendation\",\n \"description\": \"Information - that identifies the recommended resource.\"\n },\n \"IngestionInfo\": - {\n \"description\": \"Describes information necessary for ingesting - an RTMP, HTTP, or SRT stream.\",\n \"id\": \"IngestionInfo\",\n \"type\": - \"object\",\n \"properties\": {\n \"rtmpsIngestionAddress\": {\n - \ \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of ingestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"ingestionAddress\": - {\n \"description\": \"The primary ingestion URL that you should - use to stream video to YouTube. You must stream video to this URL. Depending - on which application or tool you use to encode your video stream, you may - need to enter the stream URL and stream name separately or you may need to - concatenate them in the following format: *STREAM_URL/STREAM_NAME* \",\n \"type\": - \"string\"\n },\n \"backupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The backup ingestion URL that you - should use to stream video to YouTube. You have the option of simultaneously - streaming the content that you are sending to the ingestionAddress to this - URL.\"\n },\n \"streamName\": {\n \"description\": - \"The stream name that YouTube assigns to the video stream.\",\n \"type\": - \"string\"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of backupIngestionAddress in order to stream via RTMPS. Not applicable to - non-RTMP streams.\"\n }\n }\n },\n \"CaptionListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#captionListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Caption\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of captions that match the request criteria.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"CaptionListResponse\"\n },\n - \ \"PlaylistItemStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"This resource's privacy status.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"id\": \"PlaylistItemStatus\",\n \"description\": \"Information - about the playlist item's privacy status.\"\n },\n \"LocalizedProperty\": - {\n \"properties\": {\n \"defaultLanguage\": {\n \"description\": - \"The language of the default property.\",\n \"$ref\": \"LanguageTag\"\n - \ },\n \"default\": {\n \"type\": \"string\"\n },\n - \ \"localized\": {\n \"items\": {\n \"$ref\": \"LocalizedString\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"id\": - \"LocalizedProperty\",\n \"type\": \"object\"\n },\n \"LiveStreamContentDetails\": - {\n \"id\": \"LiveStreamContentDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"closedCaptionsIngestionUrl\": {\n \"type\": - \"string\",\n \"description\": \"The ingestion URL where the closed - captions of this stream are sent.\"\n },\n \"isReusable\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Indicates whether - the stream is reusable, which means that it can be bound to multiple broadcasts. - It is common for broadcasters to reuse the same stream for many different - broadcasts if those broadcasts occur at different times. If you set this value - to false, then the stream will not be reusable, which means that it can only - be bound to one broadcast. Non-reusable streams differ from reusable streams - in the following ways: - A non-reusable stream can only be bound to one broadcast. - - A non-reusable stream might be deleted by an automated process after the - broadcast ends. - The liveStreams.list method does not list non-reusable streams - if you call the method and set the mine parameter to true. The only way to - use that method to retrieve the resource for a non-reusable stream is to use - the id parameter to identify the stream. \"\n }\n },\n \"description\": - \"Detailed settings of a stream.\"\n },\n \"VideoProjectDetails\": {\n - \ \"properties\": {},\n \"type\": \"object\",\n \"id\": \"VideoProjectDetails\",\n - \ \"description\": \"DEPRECATED. b/157517979: This part was never populated - after it was added. However, it sees non-zero traffic because there is generated - client code in the wild that refers to it [1]. We keep this field and do NOT - remove it because otherwise V3 would return an error when this part gets requested - [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"LiveChatMessageListResponse\": {\n \"properties\": {\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pollingIntervalMillis\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The amount of time the client should wait before polling again.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatMessage\"\n }\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"offlineAt\": {\n \"description\": - \"The date and time when the underlying stream went offline.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatMessageListResponse\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"Video processing progress and completion time estimate.\",\n - \ \"properties\": {\n \"timeLeftMs\": {\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"partsTotal\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"An estimate - of the total number of parts that need to be processed for the video. The - number may be updated with more precise estimates while YouTube processes - the video.\"\n },\n \"partsProcessed\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of parts of the video that YouTube has already processed. You can estimate - the percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\"\n }\n - \ }\n },\n \"MembershipsLevel\": {\n \"description\": \"A *membershipsLevel* - resource represents an offer made by YouTube creators for their fans. Users - can become members of the channel by joining one of the available levels. - They will provide recurring monetary support and receives special benefits.\",\n - \ \"id\": \"MembershipsLevel\",\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the memberships level.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"MembershipsLevelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the level.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevel\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelStatus\": - {\n \"id\": \"ChannelStatus\",\n \"type\": \"object\",\n \"properties\": - {\n \"isLinked\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"longUploadsStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ]\n },\n \"privacyStatus\": {\n \"description\": - \"Privacy status of the channel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n }\n },\n \"description\": - \"JSON template for the status part of a channel.\"\n },\n \"Member\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the member.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#member\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\"\n - \ }\n },\n \"description\": \"A *member* resource represents - a member for a YouTube channel. A member provides recurring monetary support - to a creator and receives special benefits.\",\n \"id\": \"Member\"\n - \ },\n \"I18nLanguageListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of supported - i18n languages. In this map, the i18n language ID is the map key, and its - value is the corresponding i18nLanguage resource.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n - \ }\n },\n \"kind\": {\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"I18nLanguageListResponse\"\n },\n \"VideoStatistics\": {\n \"type\": - \"object\",\n \"id\": \"VideoStatistics\",\n \"description\": \"Statistics - about the video, such as the number of times the video was viewed or liked.\",\n - \ \"properties\": {\n \"favoriteCount\": {\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"dislikeCount\": {\n \"description\": \"The number of users - who have indicated that they disliked the video by giving it a negative rating.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"commentCount\": {\n \"description\": \"The number of comments - for the video.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"likeCount\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of users who have indicated that they - liked the video by giving it a positive rating.\",\n \"format\": - \"uint64\"\n },\n \"viewCount\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of times the video has been viewed.\"\n }\n }\n },\n \"PageInfo\": - {\n \"type\": \"object\",\n \"properties\": {\n \"totalResults\": - {\n \"description\": \"The total number of results in the result - set.\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ },\n \"resultsPerPage\": {\n \"format\": \"int32\",\n - \ \"description\": \"The number of results included in the API response.\",\n - \ \"type\": \"integer\"\n }\n },\n \"description\": - \"Paging details for lists of resources, including total number of items available - and number of resources returned in a single page.\",\n \"id\": \"PageInfo\"\n - \ },\n \"LiveStreamSnippet\": {\n \"id\": \"LiveStreamSnippet\",\n - \ \"properties\": {\n \"description\": {\n \"description\": - \"The stream's description. The value cannot be longer than 10000 characters.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the stream was created.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The stream's - title. The value must be between 1 and 128 characters long.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that is transmitting the - stream.\",\n \"type\": \"string\"\n },\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveStreamStatus\": {\n \"properties\": {\n \"streamStatus\": - {\n \"enum\": [\n \"created\",\n \"ready\",\n - \ \"active\",\n \"inactive\",\n \"error\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"healthStatus\": {\n \"$ref\": \"LiveStreamHealthStatus\",\n - \ \"description\": \"The health status of the stream.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Brief description - of the live stream status.\",\n \"id\": \"LiveStreamStatus\"\n },\n - \ \"LiveChatMessage\": {\n \"description\": \"A *liveChatMessage* resource - represents a chat message in a YouTube Live Chat.\",\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessage\",\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the message.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"authorDetails\": {\n \"$ref\": - \"LiveChatMessageAuthorDetails\",\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatMessage\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ }\n }\n },\n \"InvideoPosition\": {\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"type\": \"object\",\n \"id\": \"InvideoPosition\",\n \"properties\": - {\n \"cornerPosition\": {\n \"type\": \"string\",\n \"enum\": - [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n - \ \"bottomRight\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"Describes in which corner of the - video the visual widget will appear.\"\n },\n \"type\": {\n - \ \"type\": \"string\",\n \"description\": \"Defines the - position type.\",\n \"enum\": [\n \"corner\"\n ],\n - \ \"enumDescriptions\": [\n \"\"\n ]\n }\n - \ }\n },\n \"PlaylistLocalization\": {\n \"properties\": {\n - \ \"description\": {\n \"description\": \"The localized strings - for playlist's description.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"description\": \"The localized strings for - playlist's title.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"PlaylistLocalization\",\n \"description\": \"Playlist - localization setting\",\n \"type\": \"object\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"id\": \"ThirdPartyLinkListResponse\",\n \"properties\": {\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"type\": \"array\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n \"default\": - \"youtube#thirdPartyLinkListResponse\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SubscriptionListResponse\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#subscriptionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of subscriptions that match the request criteria.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"SubscriptionListResponse\"\n },\n \"ActivityContentDetails\": {\n - \ \"properties\": {\n \"subscription\": {\n \"description\": - \"The subscription object contains information about a channel that a user - subscribed to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"playlistItem\": - {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"The playlistItem object contains information about a new playlist item. - This property is only present if the snippet.type is playlistItem.\"\n },\n - \ \"recommendation\": {\n \"description\": \"The recommendation - object contains information about a recommended resource. This property is - only present if the snippet.type is recommendation.\",\n \"$ref\": - \"ActivityContentDetailsRecommendation\"\n },\n \"comment\": - {\n \"$ref\": \"ActivityContentDetailsComment\",\n \"description\": - \"The comment object contains information about a resource that received a - comment. This property is only present if the snippet.type is comment.\"\n - \ },\n \"promotedItem\": {\n \"description\": \"The - promotedItem object contains details about a resource which is being promoted. - This property is only present if the snippet.type is promotedItem.\",\n \"$ref\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"favorite\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"like\": {\n \"$ref\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"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.\"\n },\n \"social\": {\n \"description\": - \"The social object contains details about a social network post. This property - is only present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"upload\": {\n \"description\": \"The upload - object contains information about the uploaded video. This property is only - present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"bulletin\": {\n \"description\": \"The bulletin - object contains details about a channel bulletin post. This object is only - present if the snippet.type is bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n - \ },\n \"channelItem\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsChannelItem\"\n }\n },\n \"id\": - \"ActivityContentDetails\",\n \"description\": \"Details about the content - of an activity: the video that was shared, the channel that was subscribed - to, etc.\",\n \"type\": \"object\"\n },\n \"PlaylistContentDetails\": - {\n \"id\": \"PlaylistContentDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"itemCount\": {\n \"description\": - \"The number of videos in the playlist.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n }\n }\n },\n \"WatchSettings\": - {\n \"id\": \"WatchSettings\",\n \"description\": \"Branding properties - for the watch. All deprecated.\",\n \"type\": \"object\",\n \"properties\": - {\n \"backgroundColor\": {\n \"type\": \"string\",\n \"description\": - \"The text color for the video watch page's branded area.\"\n },\n - \ \"featuredPlaylistId\": {\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\",\n - \ \"type\": \"string\"\n },\n \"textColor\": {\n \"description\": - \"The background color for the video watch page's branded area.\",\n \"type\": - \"string\"\n }\n }\n },\n \"PlaylistSnippet\": {\n \"id\": - \"PlaylistSnippet\",\n \"description\": \"Basic details about a playlist, - including title, description and thumbnails.\",\n \"properties\": {\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that published the playlist.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel title of the channel that the video - belongs to.\"\n },\n \"tags\": {\n \"description\": - \"Keyword tags associated with the playlist.\",\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The playlist's description.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the playlist was created.\"\n - \ },\n \"localized\": {\n \"description\": \"Localized - title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"thumbnailVideoId\": {\n \"description\": \"Note: - if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - playlist's title.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the playlist's default title and description.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelSectionTargeting\": - {\n \"type\": \"object\",\n \"properties\": {\n \"regions\": - {\n \"type\": \"array\",\n \"description\": \"The region - the channel section is targeting.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"countries\": {\n \"description\": - \"The country the channel section is targeting.\",\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"languages\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The language the channel - section is targeting.\",\n \"type\": \"array\"\n }\n },\n - \ \"description\": \"ChannelSection targeting setting.\",\n \"id\": - \"ChannelSectionTargeting\"\n },\n \"VideoCategoryListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoCategoryListResponse\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\",\n \"items\": {\n \"$ref\": - \"VideoCategory\"\n },\n \"type\": \"array\"\n }\n - \ },\n \"id\": \"VideoCategoryListResponse\"\n },\n \"CommentListResponse\": - {\n \"type\": \"object\",\n \"id\": \"CommentListResponse\",\n \"properties\": - {\n \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"default\": - \"youtube#commentListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"description\": - \"A list of comments that match the request criteria.\",\n \"type\": - \"array\"\n }\n }\n },\n \"Video\": {\n \"description\": - \"A *video* resource represents a YouTube video.\",\n \"id\": \"Video\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#video\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#video\\\".\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.videos.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n },\n \"liveStreamingDetails\": {\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n - \ },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"description\": \"The localizations object contains localized versions - of the basic details about the video, such as its title and description.\",\n - \ \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ }\n },\n \"monetizationDetails\": {\n \"$ref\": - \"VideoMonetizationDetails\",\n \"description\": \"The monetizationDetails - object encapsulates information about the monetization status of the video.\"\n - \ },\n \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n - \ \"description\": \"Age restriction details related to a video. This - data can only be retrieved by the video owner.\"\n },\n \"snippet\": - {\n \"$ref\": \"VideoSnippet\",\n \"description\": \"The - snippet object contains basic details about the video, such as its title, - description, and category.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains statistics about the video.\",\n \"$ref\": - \"VideoStatistics\"\n },\n \"projectDetails\": {\n \"$ref\": - \"VideoProjectDetails\",\n \"description\": \"The projectDetails - object contains information about the project specific video metadata. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"recordingDetails\": {\n \"description\": \"The - recordingDetails object encapsulates information about the location, date - and address where the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the video's uploading, processing, and privacy - statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n \"player\": - {\n \"$ref\": \"VideoPlayer\",\n \"description\": \"The - player object contains information that you would use to play the video in - an embedded player.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"topicDetails\": {\n \"description\": \"The topicDetails - object encapsulates information about Freebase topics associated with the - video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n \"suggestions\": - {\n \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoSuggestions\"\n },\n \"processingDetails\": - {\n \"$ref\": \"VideoProcessingDetails\",\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"VideoContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\"\n },\n \"fileDetails\": {\n \"description\": - \"The fileDetails object encapsulates information about the video file that - was uploaded to YouTube, including the file's resolution, duration, audio - and video codecs, stream bitrates, and more. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n }\n - \ }\n },\n \"SearchListResponse\": {\n \"id\": \"SearchListResponse\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"SearchResult\"\n },\n \"type\": - \"array\",\n \"description\": \"Pagination information for token - pagination.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"default\": \"youtube#searchListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"regionCode\": {\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatModeratorSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"moderatorDetails\": - {\n \"description\": \"Details about the moderator.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"liveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the live chat this moderator - can act on.\"\n }\n },\n \"id\": \"LiveChatModeratorSnippet\"\n - \ },\n \"VideoSnippet\": {\n \"id\": \"VideoSnippet\",\n \"properties\": - {\n \"defaultAudioLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The video's - title. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"tags\": {\n \"description\": \"A list of keyword tags associated - with the video. Tags may contain spaces.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": - \"The language of the videos's default snippet.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the video was uploaded.\"\n - \ },\n \"localized\": {\n \"description\": \"Localized - snippet selected with the hl parameter. If no such localization exists, this - field is populated with the default snippet. (Read-only)\",\n \"$ref\": - \"VideoLocalization\"\n },\n \"liveBroadcastContent\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\"\n },\n \"categoryId\": {\n \"description\": - \"The YouTube video category associated with the video.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that the video was uploaded to.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the video belongs to.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about a video, including - title, description, uploader, thumbnails and category.\"\n },\n \"PlaylistPlayer\": - {\n \"properties\": {\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"PlaylistPlayer\",\n - \ \"type\": \"object\"\n },\n \"InvideoTiming\": {\n \"type\": - \"object\",\n \"description\": \"Describes a temporal position of a visual - widget inside a video.\",\n \"properties\": {\n \"offsetMs\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\"\n },\n - \ \"durationMs\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"Defines the duration in milliseconds - for which the promotion should be displayed. If missing, the client should - use the default.\"\n },\n \"type\": {\n \"enum\": [\n - \ \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"Describes a timing - type. If the value is offsetFromStart, then the offsetMs field represents - an offset from the start of the video. If the value is offsetFromEnd, then - the offsetMs field represents an offset from the end of the video.\"\n }\n - \ },\n \"id\": \"InvideoTiming\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"properties\": {\n \"description\": {\n \"description\": - \"The long-form description of the issue and how to resolve it.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The kind of error happening.\"\n },\n \"severity\": {\n \"enum\": - [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"How severe this - issue is to the stream.\",\n \"type\": \"string\"\n },\n \"reason\": - {\n \"type\": \"string\",\n \"description\": \"The short-form - reason for this issue.\"\n }\n },\n \"id\": \"LiveStreamConfigurationIssue\",\n - \ \"type\": \"object\"\n },\n \"AbuseType\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"AbuseType\",\n \"type\": \"object\"\n },\n \"CommentThreadSnippet\": - {\n \"properties\": {\n \"topLevelComment\": {\n \"description\": - \"The top level comment of this thread.\",\n \"$ref\": \"Comment\"\n - \ },\n \"isPublic\": {\n \"description\": \"Whether - the thread (and therefore all its comments) is visible to all YouTube users.\",\n - \ \"type\": \"boolean\"\n },\n \"totalReplyCount\": - {\n \"description\": \"The total number of replies (not including - the top level comment).\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"canReply\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n }\n },\n \"description\": \"Basic details about - a comment thread.\",\n \"id\": \"CommentThreadSnippet\",\n \"type\": - \"object\"\n },\n \"LiveBroadcastStatistics\": {\n \"description\": - \"Statistics about the live broadcast. These represent a snapshot of the values - at the time of the request. Statistics are only returned for live broadcasts.\",\n - \ \"type\": \"object\",\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"properties\": {\n \"totalChatCount\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\"\n - \ },\n \"concurrentViewers\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\"\n }\n }\n },\n - \ \"ChannelSectionListResponse\": {\n \"id\": \"ChannelSectionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"A list of ChannelSections that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelSettings\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"showRelatedChannels\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether related channels should - be proposed.\"\n },\n \"description\": {\n \"description\": - \"Specifies the channel description.\",\n \"type\": \"string\"\n - \ },\n \"showBrowseView\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the tab to browse the videos should be - displayed.\"\n },\n \"unsubscribedTrailer\": {\n \"description\": - \"The trailer of the channel, for users that are not subscribers.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"Specifies - the channel title.\",\n \"type\": \"string\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n },\n \"defaultLanguage\": {\n - \ \"type\": \"string\"\n },\n \"country\": {\n \"type\": - \"string\",\n \"description\": \"The country of the channel.\"\n - \ },\n \"trackingAnalyticsAccountId\": {\n \"description\": - \"The ID for a Google Analytics account to track and measure traffic to the - channels.\",\n \"type\": \"string\"\n },\n \"featuredChannelsUrls\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The list of featured channels.\",\n \"type\": - \"array\"\n },\n \"moderateComments\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether user-submitted comments - left on the channel page need to be approved by the channel owner to be publicly - visible.\"\n },\n \"profileColor\": {\n \"type\": \"string\",\n - \ \"description\": \"A prominent color that can be rendered on this - channel page.\"\n },\n \"defaultTab\": {\n \"type\": - \"string\",\n \"description\": \"Which content tab users should see - when viewing the channel.\"\n },\n \"keywords\": {\n \"description\": - \"Lists keywords associated with the channel, comma-separated.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Branding properties - for the channel view.\",\n \"id\": \"ChannelSettings\"\n },\n \"ChannelListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Channel\"\n }\n },\n \"kind\": - {\n \"default\": \"youtube#channelListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n }\n - \ },\n \"id\": \"ChannelListResponse\"\n },\n \"PropertyValue\": - {\n \"id\": \"PropertyValue\",\n \"properties\": {\n \"property\": - {\n \"description\": \"A property.\",\n \"type\": \"string\"\n - \ },\n \"value\": {\n \"description\": \"The property's - value.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"A pair Property / Value.\",\n \"type\": \"object\"\n },\n \"VideoRecordingDetails\": - {\n \"description\": \"Recording information associated with the video.\",\n - \ \"properties\": {\n \"recordingDate\": {\n \"description\": - \"The date and time when the video was recorded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"location\": {\n - \ \"$ref\": \"GeoPoint\",\n \"description\": \"The geolocation - information associated with the video.\"\n },\n \"locationDescription\": - {\n \"type\": \"string\",\n \"description\": \"The text - description of the location where the video was recorded.\"\n }\n },\n - \ \"id\": \"VideoRecordingDetails\",\n \"type\": \"object\"\n },\n - \ \"MembershipsLevelListResponse\": {\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"description\": \"A list of pricing levels - offered by a creator to the fans.\",\n \"items\": {\n \"$ref\": - \"MembershipsLevel\"\n },\n \"type\": \"array\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ }\n },\n \"id\": \"MembershipsLevelListResponse\",\n \"type\": - \"object\"\n },\n \"CommentThreadListResponse\": {\n \"id\": \"CommentThreadListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"description\": \"A list of comment - threads that match the request criteria.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"CommentThread\"\n }\n - \ },\n \"kind\": {\n \"default\": \"youtube#commentThreadListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n }\n },\n \"Subscription\": {\n \"id\": \"Subscription\",\n - \ \"description\": \"A *subscription* resource contains information about - a YouTube user subscription. A subscription notifies a user when new videos - are added to a channel or when another user takes one of several actions on - YouTube, such as uploading a video, rating a video, or commenting on a video.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the subscription.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains basic statistics - about the subscription.\",\n \"$ref\": \"SubscriptionContentDetails\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\"\n },\n \"kind\": - {\n \"default\": \"youtube#subscription\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscription\\\".\"\n },\n \"subscriberSnippet\": - {\n \"description\": \"The subscriberSnippet object contains basic - details about the subscriber.\",\n \"$ref\": \"SubscriptionSubscriberSnippet\"\n - \ }\n }\n },\n \"Cuepoint\": {\n \"type\": \"object\",\n - \ \"id\": \"Cuepoint\",\n \"description\": \"Note that there may - be a 5-second end-point resolution issue. For instance, if a cuepoint comes - in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. - This is an artifact of HLS.\",\n \"properties\": {\n \"durationSecs\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The duration of this cuepoint.\"\n },\n \"walltimeMs\": {\n - \ \"type\": \"string\",\n \"description\": \"The wall clock - time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\",\n \"format\": \"uint64\"\n - \ },\n \"insertionOffsetTimeMs\": {\n \"format\": \"int64\",\n - \ \"description\": \"The time when the cuepoint should be inserted - by offset to the broadcast actual start time.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"The identifier for cuepoint - resource.\",\n \"type\": \"string\"\n },\n \"cueType\": - {\n \"enum\": [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n }\n }\n - \ },\n \"LiveStreamHealthStatus\": {\n \"properties\": {\n \"status\": - {\n \"description\": \"The status code of this stream\",\n \"type\": - \"string\",\n \"enum\": [\n \"good\",\n \"ok\",\n - \ \"bad\",\n \"noData\",\n \"revoked\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"configurationIssues\": {\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The configurations issues on this stream\"\n - \ },\n \"lastUpdateTimeSeconds\": {\n \"type\": \"string\",\n - \ \"description\": \"The last time this status was updated (in seconds)\",\n - \ \"format\": \"uint64\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamHealthStatus\"\n },\n \"ThumbnailDetails\": - {\n \"id\": \"ThumbnailDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The default image for this resource.\"\n },\n \"medium\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The medium - quality image for this resource.\"\n },\n \"standard\": {\n - \ \"description\": \"The standard quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"maxres\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The maximum resolution quality - image for this resource.\"\n },\n \"high\": {\n \"description\": - \"The high quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ }\n },\n \"description\": \"Internal representation of thumbnails - for a YouTube resource.\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"id\": \"LiveChatModeratorListResponse\",\n \"properties\": - {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveChatModeratorListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of moderators that match the request criteria.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoListResponse\": {\n \"type\": \"object\",\n \"id\": - \"VideoListResponse\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoListResponse\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Video\"\n },\n \"type\": \"array\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"properties\": - {\n \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"The value that YouTube uses to uniquely identify the playlist.\"\n },\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\"\n },\n \"playlistItemId\": {\n \"type\": - \"string\",\n \"description\": \"ID of the item within the playlist.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Information - about a new playlist item.\"\n },\n \"VideoCategory\": {\n \"id\": - \"VideoCategory\",\n \"description\": \"A *videoCategory* resource identifies - a category that has been or could be associated with uploaded videos.\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video category.\"\n },\n \"snippet\": - {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n },\n \"kind\": {\n \"default\": \"youtube#videoCategory\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategory\\\".\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatModerator\": - {\n \"type\": \"object\",\n \"description\": \"A *liveChatModerator* - resource represents a moderator for a YouTube live chat. A chat moderator - has the ability to ban/unban users from a chat, remove message, etc.\",\n - \ \"id\": \"LiveChatModerator\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatModerator\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"LiveChatBan\": {\n \"description\": \"A `__liveChatBan__` resource - represents a ban for a YouTube live chat.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the ban.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatBan\"\n - \ },\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the ban.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"id\": \"LiveChatBan\"\n },\n \"LiveChatTextMessageDetails\": - {\n \"id\": \"LiveChatTextMessageDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"messageText\": {\n \"description\": - \"The user's message.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"Activity\": {\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"default\": \"youtube#activity\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"contentDetails\": {\n \"description\": - \"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.\",\n \"$ref\": - \"ActivityContentDetails\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the activity.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the activity, including - the activity's type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n - \ }\n },\n \"id\": \"Activity\",\n \"description\": \"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.\"\n - \ },\n \"ChannelLocalization\": {\n \"description\": \"Channel localization - setting\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - title.\"\n },\n \"description\": {\n \"description\": - \"The localized strings for channel's description.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ChannelLocalization\",\n - \ \"type\": \"object\"\n },\n \"TokenPagination\": {\n \"description\": - \"Stub token pagination template to suppress results.\",\n \"properties\": - {},\n \"type\": \"object\",\n \"id\": \"TokenPagination\"\n },\n - \ \"VideoAbuseReportSecondaryReason\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"label\": {\n \"description\": - \"The localized label for this abuse report secondary reason.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"ThirdPartyLinkStatus\": {\n \"type\": \"object\",\n \"description\": - \"The third-party link status object contains information about the status - of the link.\",\n \"id\": \"ThirdPartyLinkStatus\",\n \"properties\": - {\n \"linkStatus\": {\n \"enum\": [\n \"unknown\",\n - \ \"failed\",\n \"pending\",\n \"linked\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ }\n }\n },\n \"Caption\": {\n \"id\": \"Caption\",\n - \ \"type\": \"object\",\n \"description\": \"A *caption* resource - represents a YouTube caption track. A caption track is associated with exactly - one YouTube video.\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#caption\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the caption track.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"CaptionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the caption.\"\n }\n }\n },\n \"VideoAbuseReportReason\": - {\n \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"type\": \"object\",\n \"id\": - \"VideoAbuseReportReason\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the abuse report reason.\",\n \"$ref\": \"VideoAbuseReportReasonSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoAbuseReportReason\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n },\n - \ \"id\": {\n \"description\": \"The ID of this abuse report - reason.\",\n \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was added to the channel.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"Details about a resource which was added to a channel.\",\n - \ \"type\": \"object\"\n },\n \"ChannelSnippet\": {\n \"properties\": - {\n \"localized\": {\n \"description\": \"Localized title - and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"country\": {\n \"description\": \"The country - of the channel.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"description\": {\n \"description\": \"The description - of the channel.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The channel's title.\",\n \"type\": - \"string\"\n },\n \"customUrl\": {\n \"description\": - \"The custom url of the channel.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the channel - was created.\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the channel's default title and description.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelSnippet\",\n \"description\": \"Basic details about a channel, - including title, description and thumbnails.\"\n },\n \"VideoProcessingDetails\": - {\n \"properties\": {\n \"thumbnailsAvailability\": {\n \"description\": - \"This value indicates whether thumbnail images have been generated for the - video.\",\n \"type\": \"string\"\n },\n \"fileDetailsAvailability\": - {\n \"description\": \"This value indicates whether file details - are available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"editorSuggestionsAvailability\": {\n \"description\": - \"This value indicates whether video editing suggestions, which might improve - video quality or the playback experience, are available for the video. You - can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"tagSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether keyword (tag) suggestions are available for the video. Tags - can be added to a video's metadata to make it easier for other users to find - the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"processingProgress\": - {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n },\n \"processingStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\"\n },\n - \ \"processingFailureReason\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"processingIssuesAvailability\": - {\n \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Describes processing - status and progress and availability of some other Video resource parts.\",\n - \ \"type\": \"object\",\n \"id\": \"VideoProcessingDetails\"\n },\n - \ \"ChannelToStoreLinkDetails\": {\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"properties\": {\n \"storeName\": {\n \"description\": - \"Name of the store.\",\n \"type\": \"string\"\n },\n \"storeUrl\": - {\n \"description\": \"Landing page of the store.\",\n \"type\": - \"string\"\n },\n \"merchantId\": {\n \"description\": - \"Google Merchant Center id of the store.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Information specific to a store on a merchandising platform linked to a - YouTube channel.\",\n \"type\": \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viever is a member. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the member to this Member Milestone Chat. This field - is empty for messages without a comment from the member.\"\n },\n \"memberMonth\": - {\n \"description\": \"The total amount of months (rounded up) the - viewer has been a member that granted them this Member Milestone Chat. This - is the same number of months as is being displayed to YouTube users.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n - \ },\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"type\": - \"object\"\n },\n \"VideoFileDetailsAudioStream\": {\n \"id\": - \"VideoFileDetailsAudioStream\",\n \"type\": \"object\",\n \"description\": - \"Information about an audio stream.\",\n \"properties\": {\n \"bitrateBps\": - {\n \"type\": \"string\",\n \"description\": \"The audio - stream's bitrate, in bits per second.\",\n \"format\": \"uint64\"\n - \ },\n \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"codec\": {\n \"type\": - \"string\",\n \"description\": \"The audio codec that the stream - uses.\"\n },\n \"channelCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The number - of audio channels that the stream contains.\"\n }\n }\n },\n - \ \"PlaylistItem\": {\n \"properties\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the playlist item.\"\n },\n \"contentDetails\": {\n - \ \"$ref\": \"PlaylistItemContentDetails\",\n \"description\": - \"The contentDetails object is included in the resource if the included item - is a YouTube video. The object contains additional information about the video.\"\n - \ },\n \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n - \ \"description\": \"The status object contains information about - the playlist item's privacy status.\"\n },\n \"snippet\": {\n - \ \"description\": \"The snippet object contains basic details about - the playlist item, such as its title and position in the playlist.\",\n \"$ref\": - \"PlaylistItemSnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlistItem\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#playlistItem\\\".\"\n }\n - \ },\n \"description\": \"A *playlistItem* resource identifies another - resource, such as a video, that is included in a playlist. In addition, the - playlistItem resource contains details about the included resource that pertain - specifically to how that resource is used in that playlist. YouTube uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods. For example, if a user gives a positive - rating to a video, you would insert that video into the liked videos playlist - for that user's channel.\",\n \"type\": \"object\",\n \"id\": \"PlaylistItem\"\n - \ },\n \"PlaylistItemListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"PlaylistItemListResponse\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"items\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"description\": \"A list of playlist - items that match the request criteria.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatMessageAuthorDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"channelUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's URL.\"\n },\n \"isVerified\": - {\n \"description\": \"Whether the author's identity has been verified - by YouTube.\",\n \"type\": \"boolean\"\n },\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - display name.\"\n },\n \"isChatModerator\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a moderator - of the live chat.\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"isChatSponsor\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is a sponsor of the live chat.\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"isChatOwner\": {\n \"description\": - \"Whether the author is the owner of the live chat.\",\n \"type\": - \"boolean\"\n }\n },\n \"id\": \"LiveChatMessageAuthorDetails\"\n - \ },\n \"CommentSnippet\": {\n \"description\": \"Basic details - about a comment, such as its author and text.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the comment was originally published.\"\n },\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"authorChannelUrl\": - {\n \"type\": \"string\",\n \"description\": \"Link to the - author's YouTube channel, if any.\"\n },\n \"textOriginal\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"moderationStatus\": - {\n \"description\": \"The comment's moderation status. Will not - be set if the comments were requested through the id filter.\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by a - moderator.\",\n \"\",\n \"The comment is unfit for display.\"\n - \ ]\n },\n \"authorProfileImageUrl\": {\n \"description\": - \"The URL for the avatar of the user who posted the comment.\",\n \"type\": - \"string\"\n },\n \"updatedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was last updated.\",\n - \ \"format\": \"date-time\"\n },\n \"videoId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID of the - video the comment refers to, if any.\"\n },\n \"likeCount\": - {\n \"description\": \"The total number of likes this comment has - received.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"viewerRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"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.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\"\n },\n - \ \"textDisplay\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"parentId\": {\n \"type\": \"string\",\n - \ \"description\": \"The unique id of the parent comment, only set - for replies.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"canRate\": - {\n \"description\": \"Whether the current viewer can rate this comment.\",\n - \ \"type\": \"boolean\"\n }\n },\n \"id\": \"CommentSnippet\"\n - \ },\n \"MembershipsLevelSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"MembershipsLevelSnippet\",\n \"properties\": {\n \"levelDetails\": - {\n \"description\": \"Details about the pricing level.\",\n \"$ref\": - \"LevelDetails\"\n },\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n }\n }\n },\n \"I18nRegion\": {\n \"type\": - \"object\",\n \"description\": \"A *i18nRegion* resource identifies a - region where YouTube is available.\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"I18nRegionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n region, such as region code and human-readable name.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#i18nRegion\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\"\n - \ }\n },\n \"id\": \"I18nRegion\"\n },\n \"Playlist\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlist\\\".\",\n \"default\": \"youtube#playlist\"\n - \ },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"description\": \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n }\n },\n - \ \"contentDetails\": {\n \"$ref\": \"PlaylistContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - like video count.\"\n },\n \"status\": {\n \"description\": - \"The status object contains status information for the playlist.\",\n \"$ref\": - \"PlaylistStatus\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistSnippet\",\n \"description\": \"The snippet object contains - basic details about the playlist, such as its title and description.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the playlist.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"player\": {\n \"$ref\": - \"PlaylistPlayer\",\n \"description\": \"The player object contains - information that you would use to play the playlist in an embedded player.\"\n - \ }\n },\n \"description\": \"A *playlist* resource represents - a YouTube playlist. A playlist is a collection of videos that can be viewed - sequentially and shared with other users. A playlist can contain up to 200 - videos, and YouTube does not limit the number of playlists that each user - creates. By default, playlists are publicly visible to other users, but playlists - can be public or private. YouTube also uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n - \ \"id\": \"Playlist\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource associated with a bulletin post. - @mutable youtube.activities.insert\"\n }\n },\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"type\": \"object\",\n \"description\": \"Details about a channel - bulletin post.\"\n },\n \"MonitorStreamInfo\": {\n \"description\": - \"Settings and Info of the monitor stream\",\n \"id\": \"MonitorStreamInfo\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"broadcastStreamDelayMs\": - {\n \"description\": \"If you have set the enableMonitorStream property - to true, then this property determines the length of the live broadcast delay.\",\n - \ \"type\": \"integer\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"format\": \"uint32\"\n },\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"HTML code that embeds a player that - plays the monitor stream.\"\n },\n \"enableMonitorStream\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"This value determines - whether the monitor stream is enabled for the broadcast. If the monitor stream - is enabled, then YouTube will broadcast the event content on a special stream - intended only for the broadcaster's consumption. The broadcaster can use the - stream to review the event content and also to identify the optimal times - to insert cuepoints. You need to set this value to true if you intend to have - a broadcast delay for your event. *Note:* This property cannot be updated - once the broadcast is in the testing or live state.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"ActivityContentDetailsLike\": - {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the rated resource.\"\n }\n - \ },\n \"id\": \"ActivityContentDetailsLike\",\n \"description\": - \"Information about a resource that received a positive (like) rating.\"\n - \ },\n \"SearchResult\": {\n \"id\": \"SearchResult\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#searchResult\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"SearchResultSnippet\",\n \"description\": \"The snippet object - contains basic details about a search result, such as its title or description. - For example, if the search result is a video, then the title will be the video's - title and the description will be the video's description.\"\n },\n - \ \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A search result contains information - about a YouTube video, channel, or playlist that matches the search parameters - specified in an API request. While a search result points to a uniquely identifiable - resource, like a video, it does not have its own persistent data.\"\n },\n - \ \"VideoGetRatingResponse\": {\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoGetRatingResponse\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"description\": - \"A list of ratings that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoRating\"\n - \ }\n }\n },\n \"id\": \"VideoGetRatingResponse\",\n - \ \"type\": \"object\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"CommentSnippetAuthorChannelId\",\n \"description\": - \"The id of the author's YouTube channel, if any.\",\n \"type\": \"object\"\n - \ },\n \"LiveBroadcastSnippet\": {\n \"properties\": {\n \"scheduledStartTime\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - was added to YouTube's live broadcast schedule.\",\n \"format\": - \"date-time\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the broadcast. For each nested - object in this object, the key is the name of the thumbnail image, and the - value is an object that contains other information about the thumbnail.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"description\": - {\n \"description\": \"The broadcast's description. As with the title, - you can set this field by modifying the broadcast resource or by setting the - description field of the corresponding video resource.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's title. Note that the broadcast - represents exactly one YouTube video. You can set this field by modifying - the broadcast resource or by setting the title field of the corresponding - video resource.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"isDefaultBroadcast\": {\n - \ \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\",\n \"type\": \"boolean\"\n },\n - \ \"actualStartTime\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the broadcast actually started. This information - is only available once the broadcast's state is live.\",\n \"type\": - \"string\"\n },\n \"actualEndTime\": {\n \"description\": - \"The date and time that the broadcast actually ended. This information is - only available once the broadcast's state is complete.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for this broadcast.\",\n - \ \"type\": \"string\"\n },\n \"scheduledEndTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the broadcast is scheduled to end.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveBroadcastSnippet\",\n \"description\": \"Basic broadcast information.\"\n - \ },\n \"VideoStatus\": {\n \"type\": \"object\",\n \"id\": - \"VideoStatus\",\n \"description\": \"Basic details about a video category, - such as its localized title. Next Id: 18\",\n \"properties\": {\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"license\": {\n \"type\": - \"string\",\n \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"madeForKids\": {\n \"type\": - \"boolean\"\n },\n \"uploadStatus\": {\n \"enum\": - [\n \"uploaded\",\n \"processed\",\n \"failed\",\n - \ \"rejected\",\n \"deleted\"\n ],\n \"description\": - \"The status of the uploaded video.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"Video has been uploaded but - not processed yet.\",\n \"Video has been successfully processed.\",\n - \ \"Processing has failed. See FailureReason.\",\n \"Video - has been rejected. See RejectionReason.\",\n \"Video has been deleted.\"\n - \ ]\n },\n \"rejectionReason\": {\n \"enum\": - [\n \"copyright\",\n \"inappropriate\",\n \"duplicate\",\n - \ \"termsOfUse\",\n \"uploaderAccountSuspended\",\n \"length\",\n - \ \"claim\",\n \"uploaderAccountClosed\",\n \"trademark\",\n - \ \"legal\"\n ],\n \"description\": \"This value - explains why YouTube rejected an uploaded video. This property is only present - if the uploadStatus property indicates that the upload was rejected.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"Copyright - infringement.\",\n \"Inappropriate video content.\",\n \"Duplicate - upload in the same channel.\",\n \"Terms of use violation.\",\n - \ \"Uploader account was suspended.\",\n \"Video duration - was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n },\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's privacy status.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n },\n - \ \"failureReason\": {\n \"enumDescriptions\": [\n \"Unable - to convert video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ],\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ],\n \"description\": \"This value explains why a video - failed to upload. This property is only present if the uploadStatus property - indicates that the upload failed.\",\n \"type\": \"string\"\n },\n - \ \"embeddable\": {\n \"description\": \"This value indicates - if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"publicStatsViewable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"publishAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the video is scheduled to publish. It can be set - only if the privacy status of the video is private..\",\n \"format\": - \"date-time\"\n }\n }\n },\n \"LiveBroadcastStatus\": {\n - \ \"id\": \"LiveBroadcastStatus\",\n \"description\": \"Live broadcast - state.\",\n \"properties\": {\n \"recordingStatus\": {\n \"description\": - \"The broadcast's recording status.\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"type\": - \"string\"\n },\n \"madeForKids\": {\n \"description\": - \"Whether the broadcast is made for kids or not, decided by YouTube instead - of the creator. This field is read only.\",\n \"type\": \"boolean\"\n - \ },\n \"privacyStatus\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The broadcast's - privacy status. Note that the broadcast represents exactly one YouTube video, - so the privacy settings are identical to those supported for videos. In addition, - you can set this field by modifying the broadcast resource or by setting the - privacyStatus field of the corresponding video resource.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ]\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\",\n \"description\": \"This field will be set to True - if the creator declares the broadcast to be kids only: go/live-cw-work.\"\n - \ },\n \"lifeCycleStatus\": {\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete - settings\",\n \"Visible only to partner, may need special UI treatment\",\n - \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n - \ \"The broadcast is finished.\",\n \"This broadcast - was removed by admin action\",\n \"Transition into TESTING has - been requested\",\n \"Transition into LIVE has been requested\"\n - \ ],\n \"type\": \"string\"\n },\n \"liveBroadcastPriority\": - {\n \"type\": \"string\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"enumDescriptions\": [\n \"\",\n \"Low - priority broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ]\n }\n },\n \"type\": \"object\"\n },\n - \ \"Channel\": {\n \"description\": \"A *channel* resource contains - information about a YouTube channel.\",\n \"id\": \"Channel\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channel\"\n - \ },\n \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n - \ \"description\": \"The statistics object encapsulates statistics - for the channel.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelLocalization\"\n },\n \"description\": \"Localizations - for different languages\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n - \ \"description\": \"The contentDetails object encapsulates information - about the channel's content.\"\n },\n \"brandingSettings\": - {\n \"$ref\": \"ChannelBrandingSettings\",\n \"description\": - \"The brandingSettings object encapsulates information about the branding - of the channel.\"\n },\n \"conversionPings\": {\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the channel, such as its title, description, and thumbnail images.\"\n },\n - \ \"contentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"status\": {\n \"$ref\": \"ChannelStatus\",\n - \ \"description\": \"The status object encapsulates information about - the privacy status of the channel.\"\n },\n \"auditDetails\": - {\n \"$ref\": \"ChannelAuditDetails\",\n \"description\": - \"The auditionDetails object encapsulates channel data that is relevant for - YouTube Partners during the audition process.\"\n },\n \"topicDetails\": - {\n \"$ref\": \"ChannelTopicDetails\",\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the channel.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel.\"\n }\n }\n },\n \"ContentRating\": {\n \"id\": - \"ContentRating\",\n \"properties\": {\n \"eefilmRating\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Pere\",\n \"L\",\n \"MS-6\",\n \"K-6\",\n - \ \"MS-12\",\n \"K-12\",\n \"K-14\",\n \"K-16\",\n - \ \"\"\n ],\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Estonia.\"\n - \ },\n \"medietilsynetRating\": {\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n - \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Medietilsynet, the Norwegian Media Authority.\"\n - \ },\n \"rtcRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\",\n \"enum\": [\n \"rtcUnspecified\",\n - \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n - \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n - \ \"D\",\n \"\"\n ]\n },\n \"rcnofRating\": - {\n \"description\": \"The video's rating from the Hungarian Nemzeti - Filmiroda, the Rating Committee of the National Office of Film.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ]\n },\n \"nbcRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Maldives National Bureau of Classification.\"\n },\n \"fpbRatingReasons\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"South - Africa rating content descriptors.\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ]\n },\n \"description\": \"Reasons that explain - why the video received its FPB (South Africa) rating.\"\n },\n \"chvrsRating\": - {\n \"description\": \"The video's Canadian Home Video Rating System - (CHVRS) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"14A\",\n \"18A\",\n - \ \"R\",\n \"E\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"chvrsUnspecified\",\n \"chvrsG\",\n - \ \"chvrsPg\",\n \"chvrs14a\",\n \"chvrs18a\",\n - \ \"chvrsR\",\n \"chvrsE\",\n \"chvrsUnrated\"\n - \ ]\n },\n \"djctqRatingReasons\": {\n \"items\": - {\n \"type\": \"string\",\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ]\n },\n \"type\": \"array\",\n - \ \"description\": \"Reasons that explain why the video received its - DJCQT (Brazil) rating.\"\n },\n \"fpbRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ],\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\"\n },\n - \ \"cnaRating\": {\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\"\n },\n - \ \"fcoRating\": {\n \"description\": \"The video's rating - from Hong Kong's Office for Film, Newspaper and Article Administration.\",\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"catvfrRating\": {\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ]\n },\n \"egfilmRating\": {\n \"description\": - \"The video's rating in Egypt.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GN\",\n \"18\",\n \"BN\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ]\n },\n \"mccypRating\": - {\n \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ],\n \"description\": \"The - video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"menaMpaaRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ],\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ]\n - \ },\n \"cceRating\": {\n \"description\": \"The video's - rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"4\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\",\n \"14\"\n ],\n - \ \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ]\n },\n \"ecbmctRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ],\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Rating system in Turkey - Evaluation and Classification - Board of the Ministry of Culture and Tourism\"\n },\n \"ilfilmRating\": - {\n \"description\": \"The video's rating in Israel.\",\n \"type\": - \"string\",\n \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"russiaRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"description\": \"The video's National Film Registry of the Russian - Federation (MKRF - Russia) rating.\"\n },\n \"nkclvRating\": - {\n \"description\": \"The video's rating from the Nacion\xE3lais - Kino centrs (National Film Centre of Latvia).\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n - \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n - \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"cccRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's Consejo de Calificaci\xF3n - Cinematogr\xE1fica (Chile) rating.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Todo espectador\",\n \"6+ - Inconveniente - para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ]\n },\n - \ \"mekuRating\": {\n \"description\": \"The video's rating - from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual - Institute).\",\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"tvpgRating\": {\n \"description\": \"The video's - TV Parental Guidelines (TVPG) rating.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n - \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n - \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ]\n },\n \"oflcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Office of Film and Literature Classification - (OFLC - New Zealand) rating.\"\n },\n \"pefilmRating\": {\n - \ \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n - \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n - \ \"pefilmUnrated\"\n ],\n \"description\": \"The - video's rating in Peru.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ]\n },\n \"smaisRating\": - {\n \"description\": \"The video's rating in Iceland.\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"nfrcRating\": - {\n \"description\": \"The video's rating from the Bulgarian National - Film Center.\",\n \"enum\": [\n \"nfrcUnspecified\",\n - \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n - \ \"nfrcX\",\n \"nfrcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"grfilmRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n - \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n - \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n - \ \"grfilmUnrated\"\n ],\n \"description\": \"The - video's rating in Greece.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n - \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n - \ ]\n },\n \"cscfRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Luxembourg's Commission - de surveillance de la classification des films (CSCF).\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ]\n },\n - \ \"mpaatRating\": {\n \"type\": \"string\",\n \"description\": - \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ]\n },\n - \ \"bmukkRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Unrestricted\",\n \"6+\",\n \"8+\",\n - \ \"10+\",\n \"12+\",\n \"14+\",\n \"16+\",\n - \ \"\"\n ],\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Austrian - Board of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst - und Kultur).\"\n },\n \"fcbmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Malaysia's - Film Censorship Board.\",\n \"enum\": [\n \"fcbmUnspecified\",\n - \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n - \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n - \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n - \ ]\n },\n \"nbcplRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n - \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n - \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ],\n - \ \"description\": \"The video's rating in Poland.\"\n },\n - \ \"lsfRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"enum\": [\n - \ \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ]\n },\n \"icaaRating\": {\n \"enum\": [\n - \ \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n - \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n - \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n - \ ],\n \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"mocRating\": {\n \"description\": \"The video's Ministerio - de Cultura (Colombia) rating.\",\n \"enum\": [\n \"mocUnspecified\",\n - \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n - \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ]\n },\n \"ifcoRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\",\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"cncRating\": - {\n \"description\": \"Rating system in France - Commission de classification - cinematographique\",\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"rteRating\": {\n \"enum\": [\n \"rteUnspecified\",\n - \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n - \ \"rteUnrated\"\n ],\n \"description\": \"The - video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"bbfcRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's British Board of Film Classification (BBFC) rating.\",\n \"enum\": - [\n \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ]\n - \ },\n \"fmocRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ],\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\",\n \"type\": - \"string\",\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ]\n },\n \"czfilmRating\": {\n \"description\": - \"The video's rating in the Czech Republic.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ]\n },\n - \ \"nfvcbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"18\",\n \"RE\",\n \"\"\n - \ ],\n \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ],\n \"description\": \"The - video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"type\": \"string\"\n },\n \"skfilmRating\": {\n - \ \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n - \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n - \ \"skfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Slovakia.\"\n },\n - \ \"moctwRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P\",\n \"PG\",\n \"R\",\n - \ \"\",\n \"R-12\",\n \"R-15\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"moctwUnspecified\",\n - \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n - \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n - \ \"moctwR15\"\n ],\n \"description\": \"The video's - rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\"\n },\n - \ \"cbfcRating\": {\n \"description\": \"The video's Central - Board of Film Certification (CBFC - India) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ],\n \"enum\": [\n - \ \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"bfvcRating\": - {\n \"description\": \"The video's rating from Thailand's Board of - Film and Video Censors.\",\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ]\n },\n - \ \"smsaRating\": {\n \"description\": \"The video's rating - from Statens medier\xE5d (Sweden's National Media Council).\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"All - ages\",\n \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ]\n },\n \"catvRating\": - {\n \"description\": \"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.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"C\",\n - \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n - \ \"18+\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n - \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n - \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n - \ \"catvE\"\n ],\n \"type\": \"string\"\n },\n - \ \"mibacRating\": {\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Ministero - dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"agcomRating\": {\n \"enum\": - [\n \"agcomUnspecified\",\n \"agcomT\",\n \"agcomVm14\",\n - \ \"agcomVm18\",\n \"agcomUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Italy's - Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ]\n },\n \"csaRating\": {\n \"enum\": - [\n \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n - \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n - \ \"csaUnrated\"\n ],\n \"description\": \"The - video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, which - rates broadcast content.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ]\n },\n \"mdaRating\": {\n \"enum\": - [\n \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n - \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n - \ \"mdaR21\",\n \"mdaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\"\n },\n \"kijkwijzerRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AL\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"\",\n \"\"\n ],\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\",\n \"enum\": - [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ]\n },\n \"mtrcbRating\": {\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n - \ \"X\",\n \"\"\n ]\n },\n \"mcstRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - system for Vietnam - MCST\"\n },\n \"anatelRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\",\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ]\n },\n - \ \"mpaaRating\": {\n \"description\": \"The video's Motion - Picture Association of America (MPAA) rating.\",\n \"enum\": [\n - \ \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n - \ \"! X\",\n \"\"\n ]\n },\n \"kmrbRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 \uC774\uC0C1 - \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ],\n \"description\": \"The video's Korea Media Rating - Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. The KMRB - rates videos in South Korea.\"\n },\n \"eirinRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ],\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ]\n - \ },\n \"incaaRating\": {\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"description\": \"The video's INCAA (Instituto Nacional - de Cine y Artes Audiovisuales - Argentina) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ]\n },\n \"ytRating\": {\n \"type\": - \"string\",\n \"description\": \"A rating that YouTube uses to identify - age-restricted content.\",\n \"enum\": [\n \"ytUnspecified\",\n - \ \"ytAgeRestricted\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"cicfRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Commission - de Contr\xF4le des Films (Belgium).\",\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ]\n },\n \"mccaaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Malta's Film Age-Classification Board.\"\n },\n \"chfilmRating\": - {\n \"description\": \"The video's rating in Switzerland.\",\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ]\n },\n \"kfcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\"\n },\n - \ \"resorteviolenciaRating\": {\n \"description\": \"The video's - rating in Venezuela.\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ]\n },\n - \ \"fskRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"FSK 0\",\n \"FSK 6\",\n \"FSK 12\",\n - \ \"FSK 16\",\n \"FSK 18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.\",\n - \ \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ]\n },\n \"djctqRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos - (DJCQT - Brazil) rating.\",\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"nmcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\",\n - \ \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ]\n },\n \"acbRating\": - {\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\",\n \"type\": \"object\"\n },\n \"InvideoBranding\": - {\n \"id\": \"InvideoBranding\",\n \"type\": \"object\",\n \"properties\": - {\n \"imageBytes\": {\n \"format\": \"byte\",\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"type\": \"string\"\n },\n \"targetChannelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The channel - to which this branding links. If not present it defaults to the current channel.\"\n - \ },\n \"imageUrl\": {\n \"description\": \"The url - of the uploaded image. Only used in apiary to api communication.\",\n \"type\": - \"string\"\n },\n \"timing\": {\n \"description\": - \"The temporal position within the video where watermark will be displayed.\",\n - \ \"$ref\": \"InvideoTiming\"\n },\n \"position\": {\n - \ \"description\": \"The spatial position within the video where the - branding watermark will be displayed.\",\n \"$ref\": \"InvideoPosition\"\n - \ }\n },\n \"description\": \"LINT.IfChange Describes an invideo - branding.\"\n },\n \"SuperStickerMetadata\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"altTextLanguage\": {\n \"description\": - \"Specifies the localization language in which the alt text is returned.\",\n - \ \"type\": \"string\"\n },\n \"altText\": {\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\",\n \"type\": \"string\"\n },\n \"stickerId\": - {\n \"description\": \"Unique identifier of the Super Sticker. This - is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"SuperStickerMetadata\"\n },\n \"MemberSnippet\": - {\n \"id\": \"MemberSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"creatorChannelId\": {\n \"description\": \"The id of - the channel that's offering memberships.\",\n \"type\": \"string\"\n - \ },\n \"membershipsDetails\": {\n \"$ref\": \"MembershipsDetails\",\n - \ \"description\": \"Details about the user's membership.\"\n },\n - \ \"memberDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the member.\"\n }\n }\n - \ },\n \"VideoSuggestionsTagSuggestion\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"tag\": {\n \"type\": \"string\",\n - \ \"description\": \"The keyword tag suggested for the video.\"\n - \ },\n \"categoryRestricts\": {\n \"description\": \"A - set of video categories for which the tag is relevant. You can use this information - to display appropriate tag suggestions based on the video category that the - video uploader associates with the video. By default, tag suggestions are - relevant for all categories if there are no restricts defined for the keyword.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"description\": \"A single - tag suggestion with it's relevance information.\",\n \"id\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"CommentThread\": {\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\"\n },\n - \ \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"CommentThreadSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment thread and also the top level comment.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"default\": \"youtube#commentThread\"\n }\n },\n \"description\": - \"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.\",\n \"id\": \"CommentThread\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"description\": \"Details about a resource which is being promoted.\",\n - \ \"properties\": {\n \"adTag\": {\n \"description\": - \"The URL the client should fetch to request a promoted item.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the promoted video.\",\n \"type\": - \"string\"\n },\n \"creativeViewUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user was shown this promoted item.\"\n },\n \"customCtaButtonText\": - {\n \"type\": \"string\",\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\"\n },\n \"descriptionText\": {\n \"description\": - \"The text description to accompany the promoted item.\",\n \"type\": - \"string\"\n },\n \"destinationUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should direct - the user to, if the user chooses to visit the advertiser's website.\"\n },\n - \ \"clickTrackingUrl\": {\n \"type\": \"string\",\n \"description\": - \"The URL the client should ping to indicate that the user clicked through - on this promoted item.\"\n },\n \"impressionUrl\": {\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"ctaType\": {\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"type\": \"string\"\n },\n \"forecastingUrl\": - {\n \"type\": \"array\",\n \"description\": \"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.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPromotedItem\"\n - \ },\n \"ChannelStatistics\": {\n \"id\": \"ChannelStatistics\",\n - \ \"description\": \"Statistics about a channel: number of subscribers, - number of videos in the channel, etc.\",\n \"type\": \"object\",\n \"properties\": - {\n \"viewCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of times the channel has been viewed.\",\n \"format\": - \"uint64\"\n },\n \"hiddenSubscriberCount\": {\n \"description\": - \"Whether or not the number of subscribers is shown for this user.\",\n \"type\": - \"boolean\"\n },\n \"videoCount\": {\n \"description\": - \"The number of videos uploaded to the channel.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"commentCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of comments for the channel.\",\n \"type\": \"string\"\n },\n - \ \"subscriberCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of subscribers that the channel has.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoMonetizationDetails\": - {\n \"id\": \"VideoMonetizationDetails\",\n \"description\": \"Details - about monetization of a YouTube Video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\"\n - \ }\n }\n },\n \"ChannelSection\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelSection\",\n \"properties\": {\n \"contentDetails\": - {\n \"$ref\": \"ChannelSectionContentDetails\",\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\"\n },\n - \ \"targeting\": {\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\",\n \"$ref\": - \"ChannelSectionTargeting\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\",\n \"$ref\": \"ChannelSectionSnippet\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"default\": \"youtube#channelSection\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"description\": \"Localizations - for different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n }\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel section.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelBannerResource\": {\n - \ \"id\": \"ChannelBannerResource\",\n \"type\": \"object\",\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\"\n },\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL of this banner image.\"\n },\n - \ \"etag\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"I18nLanguageSnippet\": {\n \"type\": \"object\",\n \"id\": - \"I18nLanguageSnippet\",\n \"properties\": {\n \"hl\": {\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\",\n \"type\": - \"string\"\n },\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the language in the - language itself.\"\n }\n },\n \"description\": \"Basic details - about an i18n language, such as language code and human-readable name.\"\n - \ },\n \"Entity\": {\n \"id\": \"Entity\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"typeId\": {\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"url\": {\n \"type\": \"string\"\n }\n }\n },\n - \ \"SubscriptionContentDetails\": {\n \"type\": \"object\",\n \"description\": - \"Details about the content to witch a subscription refers.\",\n \"id\": - \"SubscriptionContentDetails\",\n \"properties\": {\n \"totalItemCount\": - {\n \"type\": \"integer\",\n \"description\": \"The approximate - number of items that the subscription points to.\",\n \"format\": - \"uint32\"\n },\n \"activityType\": {\n \"type\": \"string\",\n - \ \"description\": \"The type of activity this subscription is for - (only uploads, everything).\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"newItemCount\": {\n \"type\": \"integer\",\n \"description\": - \"The number of new items in the subscription since its content was last read.\",\n - \ \"format\": \"uint32\"\n }\n }\n },\n \"ActivityContentDetailsUpload\": - {\n \"description\": \"Information about the uploaded video.\",\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsUpload\"\n - \ },\n \"LiveChatSuperChatDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"amountMicros\": {\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"amountDisplayString\": {\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\",\n \"type\": - \"string\"\n },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the user to this Super Chat - event.\"\n },\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the purchase was made.\"\n - \ },\n \"tier\": {\n \"description\": \"The tier in - which the amount belongs. Lower amounts belong to lower tiers. The lowest - tier is 1.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ }\n },\n \"id\": \"LiveChatSuperChatDetails\"\n },\n - \ \"ThirdPartyLinkSnippet\": {\n \"id\": \"ThirdPartyLinkSnippet\",\n - \ \"description\": \"Basic information about a third party account link, - including its type and type-specific information.\",\n \"properties\": - {\n \"type\": {\n \"description\": \"Type of the link named - after the entities that are being linked.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A link - that is connecting (or about to connect) a channel with a store on a merchandising - platform in order to enable retail commerce capabilities for that channel - on YouTube.\"\n ],\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ]\n },\n \"channelToStoreLink\": - {\n \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"CommentThreadReplies\": - {\n \"id\": \"CommentThreadReplies\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"comments\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"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.\"\n }\n },\n - \ \"description\": \"Comments written in (direct or indirect) reply to - the top level comment.\"\n },\n \"ChannelBrandingSettings\": {\n \"type\": - \"object\",\n \"id\": \"ChannelBrandingSettings\",\n \"properties\": - {\n \"hints\": {\n \"items\": {\n \"$ref\": \"PropertyValue\"\n - \ },\n \"type\": \"array\",\n \"description\": \"Additional - experimental branding properties.\"\n },\n \"watch\": {\n \"description\": - \"Branding properties for the watch page.\",\n \"$ref\": \"WatchSettings\"\n - \ },\n \"image\": {\n \"description\": \"Branding properties - for branding images.\",\n \"$ref\": \"ImageSettings\"\n },\n - \ \"channel\": {\n \"description\": \"Branding properties for - the channel view.\",\n \"$ref\": \"ChannelSettings\"\n }\n - \ },\n \"description\": \"Branding properties of a YouTube channel.\"\n - \ },\n \"LiveChatBanSnippet\": {\n \"properties\": {\n \"type\": - {\n \"enumDescriptions\": [\n \"An invalid ban type.\",\n - \ \"A permanent ban.\",\n \"A temporary ban.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"description\": - \"The type of ban.\"\n },\n \"banDurationSeconds\": {\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The chat - this ban is pertinent to.\"\n },\n \"bannedUserDetails\": {\n - \ \"$ref\": \"ChannelProfileDetails\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatBanSnippet\"\n },\n \"Comment\": - {\n \"description\": \"A *comment* represents a single YouTube comment.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#comment\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment.\",\n \"$ref\": - \"CommentSnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\"\n }\n - \ },\n \"id\": \"Comment\"\n },\n \"I18nLanguage\": {\n \"description\": - \"An *i18nLanguage* resource identifies a UI language currently supported - by YouTube.\",\n \"type\": \"object\",\n \"id\": \"I18nLanguage\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the i18n language.\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nLanguage\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"TestItem\": - {\n \"properties\": {\n \"featuredPart\": {\n \"type\": - \"boolean\"\n },\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"gaia\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n }\n },\n \"id\": \"TestItem\",\n \"type\": - \"object\"\n },\n \"LevelDetails\": {\n \"properties\": {\n \"displayName\": - {\n \"description\": \"The name that should be used when referring - to this level.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LevelDetails\",\n \"type\": \"object\"\n },\n \"LiveChatMessageSnippet\": - {\n \"properties\": {\n \"type\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ],\n \"description\": \"The type of message, this will - always be present, it determines the contents of the message as well as which - fields will be present.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"membershipGiftingDetails\": {\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\",\n \"$ref\": \"LiveChatMembershipGiftingDetails\"\n - \ },\n \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n - \ \"description\": \"Details about the New Member Announcement event, - this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" - is the new term for \\\"sponsor\\\".\"\n },\n \"superChatDetails\": - {\n \"description\": \"Details about the Super Chat event, this is - only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n - \ \"hasDisplayContent\": {\n \"description\": \"Whether the - message has display content that should be displayed to users.\",\n \"type\": - \"boolean\"\n },\n \"messageDeletedDetails\": {\n \"$ref\": - \"LiveChatMessageDeletedDetails\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"description\": \"Details about the Gift Membership Received - event, this is only set if the type is 'giftMembershipReceivedEvent'.\",\n - \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n - \ \"textMessageDetails\": {\n \"$ref\": \"LiveChatTextMessageDetails\",\n - \ \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\"\n },\n \"superStickerDetails\": - {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"authorChannelId\": {\n \"description\": \"The - ID of the user that authored this message, this field is not always filled. - textMessageEvent - the user that wrote the message fanFundingEvent - the user - that funded the broadcast newSponsorEvent - the user that just became a sponsor - memberMilestoneChatEvent - the member that sent the message membershipGiftingEvent - - the user that made the purchase giftMembershipReceivedEvent - the user that - received the gift membership messageDeletedEvent - the moderator that took - the action messageRetractedEvent - the author that retracted their message - userBannedEvent - the moderator that took the action superChatEvent - the - user that made the purchase superStickerEvent - the user that made the purchase\",\n - \ \"type\": \"string\"\n },\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n },\n \"displayMessage\": - {\n \"description\": \"Contains a string that can be displayed to - the user. If this field is not present the message is silent, at the moment - only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the message - was orignally published.\",\n \"type\": \"string\"\n },\n - \ \"fanFundingEventDetails\": {\n \"description\": \"Details - about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n }\n },\n - \ \"description\": \"Next ID: 33\",\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageSnippet\"\n },\n \"CdnSettings\": {\n \"type\": - \"object\",\n \"id\": \"CdnSettings\",\n \"properties\": {\n \"format\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The format of - the video stream that you are sending to Youtube. \"\n },\n \"frameRate\": - {\n \"enum\": [\n \"30fps\",\n \"60fps\",\n - \ \"variable\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The frame rate of the inbound video data.\",\n \"type\": \"string\"\n - \ },\n \"resolution\": {\n \"description\": \"The resolution - of the inbound video data.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"240p\",\n \"360p\",\n - \ \"480p\",\n \"720p\",\n \"1080p\",\n \"1440p\",\n - \ \"2160p\",\n \"variable\"\n ]\n },\n - \ \"ingestionType\": {\n \"description\": \" The method or - protocol used to transmit the video stream.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ]\n },\n \"ingestionInfo\": {\n - \ \"$ref\": \"IngestionInfo\",\n \"description\": \"The ingestionInfo - object contains information that YouTube provides that you need to transmit - your RTMP or HTTP stream to YouTube.\"\n }\n },\n \"description\": - \"Brief description of the live stream cdn settings.\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"id\": \"LiveChatMembershipGiftingDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"giftMembershipsCount\": {\n \"format\": - \"int32\",\n \"description\": \"The number of gift memberships purchased - by the user.\",\n \"type\": \"integer\"\n },\n \"giftMembershipsLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the level of the gift memberships purchased by the user. The Level names - are defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n }\n }\n },\n \"VideoFileDetails\": - {\n \"properties\": {\n \"fileSize\": {\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"audioStreams\": {\n - \ \"type\": \"array\",\n \"description\": \"A list of audio - streams contained in the uploaded video file. Each item in the list contains - detailed metadata about an audio stream.\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsAudioStream\"\n }\n },\n \"fileName\": - {\n \"type\": \"string\",\n \"description\": \"The uploaded - file's name. This field is present whether a video file or another type of - file was uploaded.\"\n },\n \"container\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded video file's container - format.\"\n },\n \"durationMs\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The length of the uploaded video in milliseconds.\",\n - \ \"type\": \"string\"\n },\n \"videoStreams\": {\n - \ \"description\": \"A list of video streams contained in the uploaded - video file. Each item in the list contains detailed metadata about a video - stream.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n }\n },\n \"fileType\": - {\n \"type\": \"string\",\n \"description\": \"The uploaded - file's type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\",\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"Known video - file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an MP3 - file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ]\n - \ },\n \"bitrateBps\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - video file's combined (video and audio) bitrate in bits per second.\"\n },\n - \ \"creationTime\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the uploaded video file was created. The value is - specified in ISO 8601 format. Currently, the following ISO 8601 formats are - supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time - with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \"\n }\n },\n \"description\": - \"Describes original video file properties, including technical details about - audio and video streams, but also metadata information like content length, - digitization time, or geotagging information.\",\n \"id\": \"VideoFileDetails\",\n - \ \"type\": \"object\"\n },\n \"CaptionSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"language\": {\n \"type\": - \"string\",\n \"description\": \"The language of the caption track. - The property value is a BCP-47 language tag.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"status\": {\n \"enum\": - [\n \"serving\",\n \"syncing\",\n \"failed\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The caption track's status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"trackKind\": - {\n \"enum\": [\n \"standard\",\n \"ASR\",\n - \ \"forced\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The caption track's type.\",\n \"type\": \"string\"\n },\n - \ \"isCC\": {\n \"description\": \"Indicates whether the track - contains closed captions for the deaf and hard of hearing. The default value - is false.\",\n \"type\": \"boolean\"\n },\n \"failureReason\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\",\n \"enum\": - [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ]\n },\n \"isDraft\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\"\n - \ },\n \"name\": {\n \"type\": \"string\",\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n }\n - \ },\n \"videoId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video associated with the caption track. @mutable youtube.captions.insert\",\n - \ \"type\": \"string\"\n },\n \"isEasyReader\": {\n - \ \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n \"isAutoSynced\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n - \ },\n \"lastUpdated\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the caption track was last updated.\"\n },\n \"audioTrackType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of audio track associated with the caption track.\",\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ]\n },\n \"isLarge\": - {\n \"description\": \"Indicates whether the caption track uses large - text for the vision-impaired. The default value is false.\",\n \"type\": - \"boolean\"\n }\n },\n \"description\": \"Basic details about - a caption track, such as its language and name.\",\n \"id\": \"CaptionSnippet\"\n - \ },\n \"ActivityContentDetailsSocial\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsSocial\",\n \"properties\": {\n - \ \"author\": {\n \"type\": \"string\",\n \"description\": - \"The author of the social network post.\"\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object encapsulates information that identifies the resource associated with - a social network post.\"\n },\n \"referenceUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL of the social network post.\"\n - \ },\n \"imageUrl\": {\n \"description\": \"An image - of the post's author.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"description\": \"The name of the social network.\",\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"description\": - \"Details about a social network post.\"\n },\n \"SearchResultSnippet\": - {\n \"id\": \"SearchResultSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the search result.\"\n },\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The value that YouTube uses to uniquely - identify the channel that published the resource that the search result identifies.\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The creation - date and time of the resource that the search result identifies.\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"A description of the search result.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the channel that published the resource that the search result identifies.\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - search result. 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.\"\n }\n },\n \"description\": \"Basic details - about a search result, including title, description and thumbnails of the - item referenced by the search result.\"\n },\n \"LiveBroadcastListResponse\": - {\n \"type\": \"object\",\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#liveBroadcastListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"A list of broadcasts that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"AbuseReport\": - {\n \"type\": \"object\",\n \"properties\": {\n \"subject\": - {\n \"$ref\": \"Entity\"\n },\n \"relatedEntities\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n }\n },\n \"abuseTypes\": {\n \"items\": - {\n \"$ref\": \"AbuseType\"\n },\n \"type\": - \"array\"\n },\n \"description\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"AbuseReport\"\n },\n \"VideoTopicDetails\": - {\n \"id\": \"VideoTopicDetails\",\n \"description\": \"Freebase - topic information related to the video.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"topicIds\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n },\n \"topicCategories\": {\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"relevantTopicIds\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"Similar to topic_id, except that these topics - are merely relevant to the video. These are topics that may be mentioned in, - or appear in the video. You can retrieve information about each topic using - Freebase Topic API.\"\n }\n }\n },\n \"SubscriptionSnippet\": - {\n \"id\": \"SubscriptionSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ },\n \"title\": {\n \"description\": \"The subscription's - title.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The subscription's details.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\",\n \"$ref\": \"ResourceId\",\n \"annotations\": {\n - \ \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n }\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the subscription belongs to.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the subscription was created.\"\n }\n },\n - \ \"description\": \"Basic details about a subscription, including title, - description and thumbnails of the subscribed item.\"\n },\n \"ThirdPartyLink\": - {\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n },\n \"linkingToken\": - {\n \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"$ref\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The status object contains information about the status of the link.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"default\": \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A *third party account link* - resource represents a link between a YouTube account or a channel and an account - on a third-party service.\",\n \"type\": \"object\",\n \"id\": \"ThirdPartyLink\"\n - \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"properties\": - {\n \"banDurationSeconds\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The duration of the ban. This property is only - present if the banType is temporary.\",\n \"type\": \"string\"\n - \ },\n \"banType\": {\n \"type\": \"string\",\n \"description\": - \"The type of ban.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ]\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"The details of the user that was banned.\"\n }\n },\n \"id\": - \"LiveChatUserBannedMessageDetails\",\n \"type\": \"object\"\n },\n - \ \"Thumbnail\": {\n \"description\": \"A thumbnail is an image representing - a YouTube resource.\",\n \"id\": \"Thumbnail\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The thumbnail image's URL.\"\n },\n \"width\": - {\n \"description\": \"(Optional) Width of the thumbnail image.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"height\": {\n \"description\": \"(Optional) Height of the - thumbnail image.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n }\n }\n },\n \"ChannelAuditDetails\": {\n \"properties\": - {\n \"communityGuidelinesGoodStanding\": {\n \"description\": - \"Whether or not the channel respects the community guidelines.\",\n \"type\": - \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the channel has - any unresolved claims.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelAuditDetails\",\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\"\n },\n \"VideoPlayer\": {\n \"description\": - \"Player to be used for a video playback.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"embedHeight\": {\n \"format\": - \"int64\",\n \"type\": \"string\"\n },\n \"embedWidth\": - {\n \"type\": \"string\",\n \"format\": \"int64\",\n \"description\": - \"The embed width\"\n },\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that - embeds a player that will play the video.\"\n }\n },\n \"id\": - \"VideoPlayer\"\n },\n \"RelatedEntity\": {\n \"id\": \"RelatedEntity\",\n - \ \"properties\": {\n \"entity\": {\n \"$ref\": \"Entity\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelContentOwnerDetails\": - {\n \"properties\": {\n \"contentOwner\": {\n \"description\": - \"The ID of the content owner linked to the channel.\",\n \"type\": - \"string\"\n },\n \"timeLinked\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the channel was linked to the content owner.\"\n }\n },\n - \ \"id\": \"ChannelContentOwnerDetails\",\n \"type\": \"object\",\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\"\n },\n - \ \"ActivityContentDetailsSubscription\": {\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"type\": \"object\",\n \"description\": \"Information about a - channel that a user subscribed to.\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource that the user subscribed - to.\"\n }\n }\n },\n \"ChannelProfileDetails\": {\n \"id\": - \"ChannelProfileDetails\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n },\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The channel's display name.\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"I18nRegionListResponse\": {\n \"id\": - \"I18nRegionListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n },\n \"description\": \"A list of regions - where YouTube is available. In this map, the i18n region ID is the map key, - and its value is the corresponding i18nRegion resource.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#i18nRegionListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n - \ }\n }\n },\n \"ChannelSectionSnippet\": {\n \"description\": - \"Basic details about a channel section, including title, style and position.\",\n - \ \"id\": \"ChannelSectionSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"defaultLanguage\": {\n \"description\": \"The language - of the channel section's default title and description.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ],\n \"description\": \"The type of the channel section.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The channel section's title for multiple_playlists and multiple_channels.\"\n - \ },\n \"style\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The style of the channel section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"type\": \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized title, read-only.\",\n \"$ref\": \"ChannelSectionLocalization\"\n - \ },\n \"position\": {\n \"format\": \"uint32\",\n \"description\": - \"The position of the channel section in the channel.\",\n \"type\": - \"integer\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveStreamListResponse\": {\n \"id\": \"LiveStreamListResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"description\": \"A list of live streams that match - the request criteria.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"default\": \"youtube#liveStreamListResponse\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoRating\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - rating of a video.\",\n \"id\": \"VideoRating\",\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n },\n - \ \"rating\": {\n \"description\": \"Rating of a video.\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"type\": \"string\"\n }\n }\n },\n \"SuperChatEventSnippet\": - {\n \"properties\": {\n \"createdAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the event occurred.\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\"\n },\n \"displayString\": - {\n \"description\": \"A rendered string that displays the purchase - amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the - given language.\",\n \"type\": \"string\"\n },\n \"supporterDetails\": - {\n \"description\": \"Details about the supporter.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"isSuperStickerEvent\": {\n - \ \"type\": \"boolean\",\n \"description\": \"True if this - event is a Super Sticker event.\"\n },\n \"amountMicros\": {\n - \ \"format\": \"uint64\",\n \"description\": \"The purchase - amount, in micros of the purchase currency. e.g., 1 is represented as 1000000.\",\n - \ \"type\": \"string\"\n },\n \"commentText\": {\n \"type\": - \"string\",\n \"description\": \"The text contents of the comment - left by the user.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel id where the event occurred.\"\n - \ },\n \"messageType\": {\n \"format\": \"uint32\",\n - \ \"description\": \"The tier for the paid message, which is based - on the amount of money spent to purchase the message.\",\n \"type\": - \"integer\"\n },\n \"superStickerMetadata\": {\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ }\n },\n \"id\": \"SuperChatEventSnippet\",\n \"type\": - \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": {\n \"type\": - \"object\",\n \"properties\": {\n \"allowed\": {\n \"type\": - \"array\",\n \"description\": \"A list of region codes that identify - countries where the video is viewable. If this property is present and a country - is not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"blocked\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\",\n \"type\": - \"array\"\n }\n },\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"DEPRECATED Region restriction of the video.\"\n },\n - \ \"VideoCategorySnippet\": {\n \"properties\": {\n \"assignable\": - {\n \"type\": \"boolean\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n - \ \"description\": \"The YouTube channel that created the video category.\"\n - \ },\n \"title\": {\n \"description\": \"The video category's - title.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"VideoCategorySnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about a video category, such as its localized title.\"\n },\n - \ \"MembershipsDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"highestAccessibleLevel\": {\n \"description\": \"Id - of the highest level that the user has access to at the moment.\",\n \"type\": - \"string\"\n },\n \"accessibleLevels\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"Ids of all levels that the user has access to. - This includes the currently active level and all other levels that are included - because of a higher purchase.\"\n },\n \"membershipsDuration\": - {\n \"$ref\": \"MembershipsDuration\",\n \"description\": - \"Data about memberships duration without taking into consideration pricing - levels.\"\n },\n \"highestAccessibleLevelDisplayName\": {\n - \ \"description\": \"Display name for the highest level that the user - has access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"membershipsDurationAtLevels\": {\n \"type\": \"array\",\n - \ \"description\": \"Data about memberships duration on particular - pricing levels.\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ }\n }\n },\n \"id\": \"MembershipsDetails\"\n },\n - \ \"LanguageTag\": {\n \"type\": \"object\",\n \"id\": \"LanguageTag\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"PlaylistItemContentDetails\": {\n \"id\": - \"PlaylistItemContentDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"videoPublishedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the video was published - to YouTube.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify a video. To retrieve the video resource, - set the id query parameter to this value in your API request.\"\n },\n - \ \"note\": {\n \"type\": \"string\",\n \"description\": - \"A user-generated note for this item.\"\n },\n \"endAt\": {\n - \ \"description\": \"The time, measured in seconds from the start - of the video, when the video should stop playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) By default, assume that the video.endTime - is the end of the video.\",\n \"type\": \"string\"\n },\n - \ \"startAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\"\n }\n }\n },\n \"VideoAgeGating\": - {\n \"type\": \"object\",\n \"id\": \"VideoAgeGating\",\n \"properties\": - {\n \"videoGameRating\": {\n \"description\": \"Video game - rating, if any.\",\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"alcoholContent\": - {\n \"description\": \"Indicates whether or not the video has alcoholic - beverage content. Only users of legal purchasing age in a particular country, - as identified by ICAP, can view the content.\",\n \"type\": \"boolean\"\n - \ },\n \"restricted\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Age-restricted trailers. For redband trailers - and adult-rated video-games. Only users aged 18+ can view the content. The - the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\"\n }\n }\n },\n \"PlaylistStatus\": - {\n \"type\": \"object\",\n \"properties\": {\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"description\": \"The playlist's - privacy status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"id\": \"PlaylistStatus\"\n },\n \"TestItemTestItemSnippet\": - {\n \"properties\": {},\n \"type\": \"object\",\n \"id\": \"TestItemTestItemSnippet\"\n - \ },\n \"ImageSettings\": {\n \"description\": \"Branding properties - for images associated with the channel.\",\n \"properties\": {\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"bannerTvImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"trackingImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\",\n \"type\": \"string\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1280x360).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"bannerTvHighImageUrl\": - {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n },\n \"backgroundImageUrl\": {\n - \ \"$ref\": \"LocalizedProperty\",\n \"description\": \"The - URL for the background image shown on the video watch page. The image should - be 1200px by 615px, with a maximum file size of 128k.\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 640px by 70px banner image - that appears below the video player in the default view of the video watch - page. The URL for the image that appears above the top-left corner of the - video player. This is a 25-pixel-high image with a flexible width that cannot - exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"watchIconImageUrl\": {\n \"type\": \"string\"\n },\n - \ \"bannerTvMediumImageUrl\": {\n \"description\": \"Banner - image. TV size medium resolution (1280x720).\",\n \"type\": \"string\"\n - \ },\n \"bannerTabletHdImageUrl\": {\n \"description\": - \"Banner image. Tablet size high resolution (2276x377).\",\n \"type\": - \"string\"\n },\n \"largeBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 854px - by 70px image that appears below the video player in the expanded video view - of the video watch page.\"\n },\n \"bannerTvLowImageUrl\": {\n - \ \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"bannerImageUrl\": {\n \"description\": \"Banner - image. Desktop size (1060x175).\",\n \"type\": \"string\"\n },\n - \ \"bannerMobileImageUrl\": {\n \"description\": \"Banner image. - Mobile size (640x175).\",\n \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ImageSettings\",\n \"type\": \"object\"\n },\n \"PlaylistListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistListResponse\\\".\",\n \"default\": - \"youtube#playlistListResponse\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"description\": - \"A list of playlists that match the request criteria\",\n \"items\": - {\n \"$ref\": \"Playlist\"\n },\n \"type\": \"array\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"PlaylistListResponse\"\n },\n \"ChannelSectionLocalization\": - {\n \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for channel section's title.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"ChannelSection localization - setting\",\n \"id\": \"ChannelSectionLocalization\",\n \"type\": - \"object\"\n },\n \"LiveStream\": {\n \"description\": \"A live - stream describes a live ingestion point.\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveStream\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"LiveStreamSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the stream, including its channel, title, and description.\"\n },\n - \ \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the stream.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - content_details object contains information about the stream, including the - closed captions ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n - \ }\n },\n \"id\": \"LiveStream\",\n \"type\": \"object\"\n - \ },\n \"ChannelConversionPings\": {\n \"id\": \"ChannelConversionPings\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"pings\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n },\n \"description\": \"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.\"\n }\n },\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\"\n },\n \"ResourceId\": {\n \"type\": \"object\",\n - \ \"description\": \"A resource id is a generic reference that points - to another YouTube resource.\",\n \"properties\": {\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the referred resource, if that resource is a channel. This property is only - present if the resourceId.kind value is youtube#channel.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"The type of the API resource.\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ResourceId\"\n },\n \"ActivityContentDetailsComment\": - {\n \"id\": \"ActivityContentDetailsComment\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource associated with the comment.\"\n }\n },\n - \ \"description\": \"Information about a resource that received a comment.\"\n - \ },\n \"GeoPoint\": {\n \"description\": \"Geographical coordinates - of a point, in WGS84.\",\n \"id\": \"GeoPoint\",\n \"properties\": - {\n \"longitude\": {\n \"format\": \"double\",\n \"type\": - \"number\",\n \"description\": \"Longitude in degrees.\"\n },\n - \ \"altitude\": {\n \"type\": \"number\",\n \"format\": - \"double\",\n \"description\": \"Altitude above the reference ellipsoid, - in meters.\"\n },\n \"latitude\": {\n \"description\": - \"Latitude in degrees.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n }\n },\n \"type\": \"object\"\n },\n \"I18nRegionSnippet\": - {\n \"id\": \"I18nRegionSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"gl\": {\n \"type\": \"string\",\n \"description\": - \"The region code as a 2-letter ISO country code.\"\n },\n \"name\": - {\n \"description\": \"The human-readable name of the region.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about an i18n region, such as region code and human-readable - name.\"\n },\n \"MembershipsDurationAtLevel\": {\n \"type\": \"object\",\n - \ \"id\": \"MembershipsDurationAtLevel\",\n \"properties\": {\n \"memberTotalDurationMonths\": - {\n \"format\": \"int32\",\n \"description\": \"The cumulative - time the user has been a member for the given level in complete months (the - time is rounded down to the nearest integer).\",\n \"type\": \"integer\"\n - \ },\n \"memberSince\": {\n \"description\": \"The date - and time when the user became a continuous member for the given level.\",\n - \ \"type\": \"string\"\n },\n \"level\": {\n \"description\": - \"Pricing level ID.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"PlaylistItemSnippet\": {\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails. Basic details - of a YouTube Playlist item provided by the author. Next ID: 15\",\n \"properties\": - {\n \"videoOwnerChannelId\": {\n \"description\": \"Channel - id for the channel this video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"resourceId\": {\n \"description\": \"The id - object contains information that can be used to uniquely identify the resource - that is included in the playlist as the playlist item.\",\n \"$ref\": - \"ResourceId\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n }\n },\n \"videoOwnerChannelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel this video belongs to.\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify thGe playlist that the playlist item is - in.\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the item was added to the playlist.\"\n },\n \"description\": - {\n \"description\": \"The item's description.\",\n \"type\": - \"string\"\n },\n \"position\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The order in - which the item appears in the playlist. The value uses a zero-based index, - so the first item has a position of 0, the second item has a position of 1, - and so forth.\"\n },\n \"title\": {\n \"description\": - \"The item's title.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the user that added the item to the playlist.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist item. 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.\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"PlaylistItemSnippet\"\n },\n \"VideoSuggestions\": {\n \"description\": - \"Specifies suggestions on how to improve video content, including encoding - hints, tag suggestions, and editor suggestions.\",\n \"id\": \"VideoSuggestions\",\n - \ \"properties\": {\n \"tagSuggestions\": {\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\",\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"type\": \"array\"\n },\n \"processingErrors\": - {\n \"description\": \"A list of errors that will prevent YouTube - from successfully processing the uploaded video video. These errors indicate - that, regardless of the video's current processing status, eventually, that - status will almost certainly be failed.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"File - contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., - a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file.\",\n \"Document - or text file (e.g., MS Word document).\",\n \"An archive file - (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout - type.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n - \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n - \ \"unsupportedSpatialAudioLayout\"\n ]\n }\n - \ },\n \"processingHints\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ],\n \"enumDescriptions\": [\n \"The MP4 - file is not streamable, this will slow down the processing. MOOV atom was - not found at the beginning of the file.\",\n \"Probably a better - quality version of the video exists. The video has wide screen aspect ratio, - but is not an HD video.\",\n \"Uploaded video is spherical video.\",\n - \ \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\"\n },\n \"description\": - \"A list of suggestions that may improve YouTube's ability to process the - video.\"\n },\n \"processingWarnings\": {\n \"type\": - \"array\",\n \"description\": \"A list of reasons why YouTube may - have difficulty transcoding the uploaded video or that might result in an - erroneous transcoding. These warnings are generated before YouTube actually - processes the uploaded video file. In addition, they identify issues that - are unlikely to cause the video processing to fail but that might cause problems - such as sync issues, video artifacts, or a missing audio track.\",\n \"items\": - {\n \"enum\": [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ],\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"editorSuggestions\": {\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Picture brightness levels seem off and could be corrected.\",\n - \ \"The video appears shaky and could be stabilized.\",\n \"Margins - (mattes) detected around the picture could be cropped.\",\n \"The - audio track appears silent and could be swapped with a better quality one.\"\n - \ ]\n }\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelSectionContentDetails\": {\n \"properties\": {\n - \ \"playlists\": {\n \"description\": \"The playlist ids for - type single_playlist and multiple_playlists. For singlePlaylist, only one - playlistId is allowed.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"channels\": - {\n \"type\": \"array\",\n \"description\": \"The channel - ids for type multiple_channels.\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelSectionContentDetails\",\n \"description\": \"Details - about a channelsection, including playlists and channels.\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"properties\": - {\n \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the user to this fan funding event.\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the fund was made.\",\n \"type\": \"string\"\n },\n \"amountMicros\": - {\n \"type\": \"string\",\n \"description\": \"The amount - of the fund.\",\n \"format\": \"uint64\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"properties\": - {\n \"secondaryReasons\": {\n \"description\": \"The secondary - reasons associated with this reason, if any are available. (There might be - 0 or more.)\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"type\": \"array\"\n },\n \"label\": - {\n \"description\": \"The localized label belonging to this abuse - report reason.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about a video category, - such as its localized title.\"\n },\n \"VideoContentDetails\": {\n \"description\": - \"Details about the content of a YouTube Video.\",\n \"properties\": - {\n \"dimension\": {\n \"description\": \"The value of dimension - indicates whether the video is available in 3D or in 2D.\",\n \"type\": - \"string\"\n },\n \"projection\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"rectangular\",\n \"360\"\n ],\n \"type\": - \"string\",\n \"description\": \"Specifies the projection format - of the video.\"\n },\n \"regionRestriction\": {\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"licensedContent\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of is_license_content indicates whether the video is licensed content.\"\n - \ },\n \"countryRestriction\": {\n \"description\": - \"The countryRestriction object contains information about the countries where - a video is (or is not) viewable.\",\n \"$ref\": \"AccessPolicy\"\n - \ },\n \"contentRating\": {\n \"$ref\": \"ContentRating\",\n - \ \"description\": \"Specifies the ratings that the video received - under various rating schemes.\"\n },\n \"definition\": {\n \"enum\": - [\n \"sd\",\n \"hd\"\n ],\n \"type\": - \"string\",\n \"description\": \"The value of definition indicates - whether the video is available in high definition or only in standard definition.\",\n - \ \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ]\n },\n \"caption\": {\n \"enum\": [\n \"true\",\n - \ \"false\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"The value of - captions indicates whether the video has captions or not.\",\n \"type\": - \"string\"\n },\n \"duration\": {\n \"type\": \"string\",\n - \ \"description\": \"The length of the video. The tag value is an - ISO 8601 duration in the format PT#M#S, in which the letters PT indicate that - the value specifies a period of time, and the letters M and S refer to length - in minutes and seconds, respectively. The # characters preceding the M and - S letters are both integers that specify the number of minutes (or seconds) - of the video. For example, a value of PT15M51S indicates that the video is - 15 minutes and 51 seconds long.\"\n },\n \"hasCustomThumbnail\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"VideoContentDetails\"\n },\n - \ \"VideoLiveStreamingDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"scheduledStartTime\": {\n \"description\": \"The time - that the broadcast is scheduled to begin.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"actualEndTime\": {\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The time that the broadcast actually ended. This value will not be available - until the broadcast is over.\"\n },\n \"actualStartTime\": {\n - \ \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"concurrentViewers\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"type\": \"string\"\n - \ },\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast is scheduled to end. - If the value is empty or the property is not present, then the broadcast is - scheduled to contiue indefinitely.\",\n \"type\": \"string\"\n },\n - \ \"activeLiveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the currently active live chat attached to this video. This field - is filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\"\n }\n },\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"Details about the live streaming metadata.\"\n },\n - \ \"MembershipsDuration\": {\n \"properties\": {\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member across all levels.\",\n \"type\": \"string\"\n },\n - \ \"memberTotalDurationMonths\": {\n \"format\": \"int32\",\n - \ \"type\": \"integer\",\n \"description\": \"The cumulative - time the user has been a member across all levels in complete months (the - time is rounded down to the nearest integer).\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"MembershipsDuration\"\n },\n \"AccessPolicy\": - {\n \"type\": \"object\",\n \"id\": \"AccessPolicy\",\n \"properties\": - {\n \"allowed\": {\n \"type\": \"boolean\",\n \"description\": - \"The value of allowed indicates whether the access to the policy is allowed - or denied by default.\"\n },\n \"exception\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"type\": \"array\"\n }\n },\n \"description\": - \"Rights management policy for YouTube resources.\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"properties\": {\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ },\n \"memberLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the Level at which the viewer is - a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"gifterChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the user that made the - membership gifting purchase. This matches the `snippet.authorChannelId` of - the associated membership gifting message.\"\n }\n }\n },\n - \ \"ChannelTopicDetails\": {\n \"properties\": {\n \"topicCategories\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Wikipedia URLs that describe the channel's - content.\",\n \"type\": \"array\"\n },\n \"topicIds\": - {\n \"description\": \"A list of Freebase topic IDs associated with - the channel. You can retrieve information about each topic using the Freebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"description\": - \"Freebase topic information related to the channel.\",\n \"id\": \"ChannelTopicDetails\",\n - \ \"type\": \"object\"\n },\n \"ThumbnailSetResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": \"A list of - thumbnails.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#thumbnailSetResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ThumbnailSetResponse\"\n - \ },\n \"SuperChatEvent\": {\n \"type\": \"object\",\n \"id\": - \"SuperChatEvent\",\n \"description\": \"A `__superChatEvent__` resource - represents a Super Chat purchase on a YouTube channel.\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"default\": \"youtube#superChatEvent\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\",\n - \ \"$ref\": \"SuperChatEventSnippet\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the Super Chat event.\",\n \"type\": \"string\"\n }\n }\n - \ }\n },\n \"basePath\": \"\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:36 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCWbvt1ucc8u1woJe9sO11iA&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"oUU4PaWEcqmYu3JmrU9qktWsGmU\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"mZRo8-5TSni9716paPvvU5aEBoo\",\n \"id\": \"UCWbvt1ucc8u1woJe9sO11iA\",\n - \ \"snippet\": {\n \"title\": \"Anak\",\n \"description\": - \"\u0412\u0441\u0435\u043C \u043F\u0440\u0438\u0432\u0435\u0442, \u043C\u043E\u0439 - \u043D\u0438\u043A \u0410\u043D\u0430\u043A \u0438 \u044F \u0431\u044B\u0432\u0448\u0438\u0439 - \u043A\u0438\u0431\u0435\u0440\u0441\u043F\u043E\u0440\u0442\u0441\u043C\u0435\u043D - \u043F\u043E \u0434\u0438\u0441\u0446\u0438\u043F\u043B\u0438\u043D\u0435 - Overwatch, \u0430 \u043D\u044B\u043D\u0435 \u0441\u0442\u0440\u0438\u043C\u0435\u0440.\\n\u041D\u0430 - \u043A\u0430\u043D\u0430\u043B\u0435 \u043C\u043E\u0436\u043D\u043E \u043D\u0430\u0439\u0442\u0438 - \u0440\u0430\u0437\u043B\u0438\u0447\u043D\u043E\u0433\u043E \u0440\u043E\u0434\u0430 - \u043A\u043E\u043D\u0442\u0435\u043D\u0442 \u043F\u0440\u043E Overwatch. \u041E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0439, - \u0420\u0430\u0437\u0432\u043B\u0435\u043A\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0439, - \u0412\u043B\u043E\u0433\u0438, \u0427\u0435\u043B\u043B\u0435\u043D\u0434\u0436\u0438 - \u0438 \u043C\u043D\u043E\u0433\u043E\u0435 \u0434\u0440\u0443\u0433\u043E\u0435.\\n\u0415\u0436\u0435\u0434\u043D\u0435\u0432\u043D\u044B\u0435 - \u0441\u0442\u0440\u0438\u043C\u044B \u043F\u0440\u043E\u0445\u043E\u0434\u044F\u0442 - \u0442\u0443\u0442: https://twitch.tv/anakq\\n\u0412\u0441\u0435 \u043D\u043E\u0432\u043E\u0441\u0442\u0438 - \u0438 \u0430\u043D\u043E\u043D\u0441\u044B \u043E \u0441\u0430\u043C\u043E\u043C - \u0438\u043D\u0442\u0435\u0440\u0435\u0441\u043D\u043E\u043C \u043C\u043E\u0436\u043D\u043E - \u043D\u0430\u0439\u0442\u0438 \u0432 \u043C\u043E\u0435\u043C \u043F\u0430\u0431\u043B\u0438\u043A\u0435 - \u0432\u043A, \u043F\u043E\u0434\u043F\u0438\u0441\u044B\u0432\u0430\u0439\u0441\u044F: - vk.com/anakq\\n\u041D\u0443 \u0430 \u043E \u0437\u0430\u043A\u0443\u043B\u0438\u0441\u044C\u044F\u0445 - \u0441\u0442\u0440\u0438\u043C\u0435\u0440\u0441\u043A\u043E\u0439 \u0436\u0438\u0437\u043D\u0438 - \u043D\u0430\u0439\u0442\u0438 \u043C\u043E\u0436\u043D\u043E \u0442\u0443\u0442: - https://www.instagram.com/anakqqq/\\n\u0412 \u0414\u0438\u0441\u043A\u043E\u0440\u0434\u0435 - \u043E\u0431\u0438\u0442\u0430\u0435\u0442 \u0441\u0430\u043C\u0430\u044F - \u0430\u043A\u0442\u0438\u0432\u043D\u0430\u044F \u0447\u0430\u0441\u0442\u044C - \u043A\u043E\u043C\u044C\u044E\u043D\u0438\u0442\u0438, \u0437\u0430 \u043E\u0431\u0449\u0435\u043D\u0438\u0435\u043C - \u0441\u044E\u0434\u0430: https://discordapp.com/invite/anakq\\n\u041D\u043E\u0432\u043E\u0441\u0442\u0438 - \u0432 \u0442\u0435\u043B\u0435\u0433\u0440\u0430\u043C\u0435 \u0442\u0430\u043A\u0436\u0435 - \u043F\u043E\u0440\u0442\u0438\u0440\u0443\u044E\u0442\u0441\u044F \u0438\u0437 - \u0432\u043A, \u0435\u0441\u043B\u0438 \u0432\u043A \u043D\u0435 \u043F\u043E\u0434\u0445\u043E\u0434\u0438\u0442: - https://t.me/anakqqq\",\n \"customUrl\": \"@anakq\",\n \"publishedAt\": - \"2015-07-22T13:53:51Z\",\n \"thumbnails\": {\n \"default\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJVOaUCPwZ5zw0JdDbmvsvorBUkgNDZnYb4E5Nm6PQ=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJVOaUCPwZ5zw0JdDbmvsvorBUkgNDZnYb4E5Nm6PQ=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJVOaUCPwZ5zw0JdDbmvsvorBUkgNDZnYb4E5Nm6PQ=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Anak\",\n \"description\": - \"\u0412\u0441\u0435\u043C \u043F\u0440\u0438\u0432\u0435\u0442, \u043C\u043E\u0439 - \u043D\u0438\u043A \u0410\u043D\u0430\u043A \u0438 \u044F \u0431\u044B\u0432\u0448\u0438\u0439 - \u043A\u0438\u0431\u0435\u0440\u0441\u043F\u043E\u0440\u0442\u0441\u043C\u0435\u043D - \u043F\u043E \u0434\u0438\u0441\u0446\u0438\u043F\u043B\u0438\u043D\u0435 - Overwatch, \u0430 \u043D\u044B\u043D\u0435 \u0441\u0442\u0440\u0438\u043C\u0435\u0440.\\n\u041D\u0430 - \u043A\u0430\u043D\u0430\u043B\u0435 \u043C\u043E\u0436\u043D\u043E \u043D\u0430\u0439\u0442\u0438 - \u0440\u0430\u0437\u043B\u0438\u0447\u043D\u043E\u0433\u043E \u0440\u043E\u0434\u0430 - \u043A\u043E\u043D\u0442\u0435\u043D\u0442 \u043F\u0440\u043E Overwatch. \u041E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0439, - \u0420\u0430\u0437\u0432\u043B\u0435\u043A\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0439, - \u0412\u043B\u043E\u0433\u0438, \u0427\u0435\u043B\u043B\u0435\u043D\u0434\u0436\u0438 - \u0438 \u043C\u043D\u043E\u0433\u043E\u0435 \u0434\u0440\u0443\u0433\u043E\u0435.\\n\u0415\u0436\u0435\u0434\u043D\u0435\u0432\u043D\u044B\u0435 - \u0441\u0442\u0440\u0438\u043C\u044B \u043F\u0440\u043E\u0445\u043E\u0434\u044F\u0442 - \u0442\u0443\u0442: https://twitch.tv/anakq\\n\u0412\u0441\u0435 \u043D\u043E\u0432\u043E\u0441\u0442\u0438 - \u0438 \u0430\u043D\u043E\u043D\u0441\u044B \u043E \u0441\u0430\u043C\u043E\u043C - \u0438\u043D\u0442\u0435\u0440\u0435\u0441\u043D\u043E\u043C \u043C\u043E\u0436\u043D\u043E - \u043D\u0430\u0439\u0442\u0438 \u0432 \u043C\u043E\u0435\u043C \u043F\u0430\u0431\u043B\u0438\u043A\u0435 - \u0432\u043A, \u043F\u043E\u0434\u043F\u0438\u0441\u044B\u0432\u0430\u0439\u0441\u044F: - vk.com/anakq\\n\u041D\u0443 \u0430 \u043E \u0437\u0430\u043A\u0443\u043B\u0438\u0441\u044C\u044F\u0445 - \u0441\u0442\u0440\u0438\u043C\u0435\u0440\u0441\u043A\u043E\u0439 \u0436\u0438\u0437\u043D\u0438 - \u043D\u0430\u0439\u0442\u0438 \u043C\u043E\u0436\u043D\u043E \u0442\u0443\u0442: - https://www.instagram.com/anakqqq/\\n\u0412 \u0414\u0438\u0441\u043A\u043E\u0440\u0434\u0435 - \u043E\u0431\u0438\u0442\u0430\u0435\u0442 \u0441\u0430\u043C\u0430\u044F - \u0430\u043A\u0442\u0438\u0432\u043D\u0430\u044F \u0447\u0430\u0441\u0442\u044C - \u043A\u043E\u043C\u044C\u044E\u043D\u0438\u0442\u0438, \u0437\u0430 \u043E\u0431\u0449\u0435\u043D\u0438\u0435\u043C - \u0441\u044E\u0434\u0430: https://discordapp.com/invite/anakq\\n\u041D\u043E\u0432\u043E\u0441\u0442\u0438 - \u0432 \u0442\u0435\u043B\u0435\u0433\u0440\u0430\u043C\u0435 \u0442\u0430\u043A\u0436\u0435 - \u043F\u043E\u0440\u0442\u0438\u0440\u0443\u044E\u0442\u0441\u044F \u0438\u0437 - \u0432\u043A, \u0435\u0441\u043B\u0438 \u0432\u043A \u043D\u0435 \u043F\u043E\u0434\u0445\u043E\u0434\u0438\u0442: - https://t.me/anakqqq\"\n },\n \"country\": \"RU\"\n },\n - \ \"brandingSettings\": {\n \"channel\": {\n \"title\": - \"Anak\",\n \"description\": \"\u0412\u0441\u0435\u043C \u043F\u0440\u0438\u0432\u0435\u0442, - \u043C\u043E\u0439 \u043D\u0438\u043A \u0410\u043D\u0430\u043A \u0438 \u044F - \u0431\u044B\u0432\u0448\u0438\u0439 \u043A\u0438\u0431\u0435\u0440\u0441\u043F\u043E\u0440\u0442\u0441\u043C\u0435\u043D - \u043F\u043E \u0434\u0438\u0441\u0446\u0438\u043F\u043B\u0438\u043D\u0435 - Overwatch, \u0430 \u043D\u044B\u043D\u0435 \u0441\u0442\u0440\u0438\u043C\u0435\u0440.\\n\u041D\u0430 - \u043A\u0430\u043D\u0430\u043B\u0435 \u043C\u043E\u0436\u043D\u043E \u043D\u0430\u0439\u0442\u0438 - \u0440\u0430\u0437\u043B\u0438\u0447\u043D\u043E\u0433\u043E \u0440\u043E\u0434\u0430 - \u043A\u043E\u043D\u0442\u0435\u043D\u0442 \u043F\u0440\u043E Overwatch. \u041E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0439, - \u0420\u0430\u0437\u0432\u043B\u0435\u043A\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0439, - \u0412\u043B\u043E\u0433\u0438, \u0427\u0435\u043B\u043B\u0435\u043D\u0434\u0436\u0438 - \u0438 \u043C\u043D\u043E\u0433\u043E\u0435 \u0434\u0440\u0443\u0433\u043E\u0435.\\n\u0415\u0436\u0435\u0434\u043D\u0435\u0432\u043D\u044B\u0435 - \u0441\u0442\u0440\u0438\u043C\u044B \u043F\u0440\u043E\u0445\u043E\u0434\u044F\u0442 - \u0442\u0443\u0442: https://twitch.tv/anakq\\n\u0412\u0441\u0435 \u043D\u043E\u0432\u043E\u0441\u0442\u0438 - \u0438 \u0430\u043D\u043E\u043D\u0441\u044B \u043E \u0441\u0430\u043C\u043E\u043C - \u0438\u043D\u0442\u0435\u0440\u0435\u0441\u043D\u043E\u043C \u043C\u043E\u0436\u043D\u043E - \u043D\u0430\u0439\u0442\u0438 \u0432 \u043C\u043E\u0435\u043C \u043F\u0430\u0431\u043B\u0438\u043A\u0435 - \u0432\u043A, \u043F\u043E\u0434\u043F\u0438\u0441\u044B\u0432\u0430\u0439\u0441\u044F: - vk.com/anakq\\n\u041D\u0443 \u0430 \u043E \u0437\u0430\u043A\u0443\u043B\u0438\u0441\u044C\u044F\u0445 - \u0441\u0442\u0440\u0438\u043C\u0435\u0440\u0441\u043A\u043E\u0439 \u0436\u0438\u0437\u043D\u0438 - \u043D\u0430\u0439\u0442\u0438 \u043C\u043E\u0436\u043D\u043E \u0442\u0443\u0442: - https://www.instagram.com/anakqqq/\\n\u0412 \u0414\u0438\u0441\u043A\u043E\u0440\u0434\u0435 - \u043E\u0431\u0438\u0442\u0430\u0435\u0442 \u0441\u0430\u043C\u0430\u044F - \u0430\u043A\u0442\u0438\u0432\u043D\u0430\u044F \u0447\u0430\u0441\u0442\u044C - \u043A\u043E\u043C\u044C\u044E\u043D\u0438\u0442\u0438, \u0437\u0430 \u043E\u0431\u0449\u0435\u043D\u0438\u0435\u043C - \u0441\u044E\u0434\u0430: https://discordapp.com/invite/anakq\\n\u041D\u043E\u0432\u043E\u0441\u0442\u0438 - \u0432 \u0442\u0435\u043B\u0435\u0433\u0440\u0430\u043C\u0435 \u0442\u0430\u043A\u0436\u0435 - \u043F\u043E\u0440\u0442\u0438\u0440\u0443\u044E\u0442\u0441\u044F \u0438\u0437 - \u0432\u043A, \u0435\u0441\u043B\u0438 \u0432\u043A \u043D\u0435 \u043F\u043E\u0434\u0445\u043E\u0434\u0438\u0442: - https://t.me/anakqqq\",\n \"keywords\": \"anak anakq \u043E\u0432\u0435\u0440\u0432\u043E\u0442\u0447 - \u043E\u0432 \u043E\u0432\u0435\u0440 overwatch \\\"\u043E\u0432\u0435\u0440\u0432\u043E\u0442 - \u043D\u043E\u0432\u044B\u0439\\\" \\\"overwatch \u043D\u043E\u0432\u044B\u0439\\\" - \u0430\u043D\u0430\u043A stream \u0441\u0442\u0440\u0438\u043C ow \\\"\u043E\u0432\u0435\u0440\u0432\u043E\u0442\u0447 - 2\\\" \\\"\u043E\u0432\u0435\u0440\u0432\u043E\u0442\u0447 \u0430\u043D\u0430\u043A\\\" - \\\"\u043E\u0432\u0435\u0440\u0432\u043E\u0442\u0447 \u043D\u043E\u0432\u044B\u0439 - \u0433\u0435\u0440\u043E\u0439\\\" \\\"\u043E\u0432\u0435\u0440\u0432\u043E\u0442\u0447 - \u043D\u043E\u0432\u0430\u044F \u043A\u0430\u0440\u0442\u0430\\\" \\\"\u043E\u0432\u0435\u0440\u0432\u043E\u0442\u0447 - \u043B\u043E\u0440\\\" \\\"\u043E\u0432\u0435\u0440\u0432\u043E\u0442\u0447 - \u0433\u0430\u0439\u0434\\\" \\\"\u043E\u0432\u0435\u0440\u0432\u043E\u0442\u0447 - \u0430\u043D\u0430\u043B\u0438\u0442\u0438\u043A\u0430\\\" \\\"\u043E\u0432\u0435\u0440\u0432\u043E\u0442\u0447 - \u0448\u043A\u043E\u043B\u0430\\\" \u043E\u04322 ow2 \\\"overwatch 2\\\"\",\n - \ \"unsubscribedTrailer\": \"g_JPsiGIc3A\",\n \"country\": - \"RU\"\n },\n \"image\": {\n \"bannerExternalUrl\": - \"https://yt3.googleusercontent.com/8YzM_SdeZYMBTIcA02YKw9IBg6UIvslMpa460iNWxINU0bw8PgkuUcLzwaCPJ3AZ1Xs3gthBSw\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:36 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"id\": \"youtube:v3\",\n \"basePath\": \"\",\n \"revision\": - \"20230220\",\n \"discoveryVersion\": \"v1\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"canonicalName\": \"YouTube\",\n \"fullyEncodeReservedExpansion\": true,\n - \ \"protocol\": \"rest\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n }\n }\n }\n },\n \"schemas\": {\n - \ \"VideoContentDetailsRegionRestriction\": {\n \"description\": \"DEPRECATED - Region restriction of the video.\",\n \"type\": \"object\",\n \"id\": - \"VideoContentDetailsRegionRestriction\",\n \"properties\": {\n \"allowed\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\",\n \"type\": \"array\"\n },\n - \ \"blocked\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of region codes that identify - countries where the video is blocked. If this property is present and a country - is not listed in its value, then the video is viewable in that country. If - this property is present and contains an empty list, the video is viewable - in all countries.\",\n \"type\": \"array\"\n }\n }\n - \ },\n \"CommentListResponse\": {\n \"properties\": {\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"A list of comments that match the request criteria.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#commentListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ }\n },\n \"id\": \"CommentListResponse\",\n \"type\": - \"object\"\n },\n \"SuperChatEvent\": {\n \"id\": \"SuperChatEvent\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the Super Chat event.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"default\": \"youtube#superChatEvent\"\n }\n },\n \"description\": - \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\",\n \"type\": \"object\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of this abuse report secondary reason.\"\n - \ },\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label for this abuse report secondary reason.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"ImageSettings\": {\n \"type\": \"object\",\n \"properties\": - {\n \"watchIconImageUrl\": {\n \"type\": \"string\"\n },\n - \ \"bannerTvLowImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. TV size low resolution (854x480).\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": - {\n \"description\": \"Banner image. Mobile size (640x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"bannerTvImageUrl\": {\n \"description\": \"Banner - image. TV size extra high resolution (2120x1192).\",\n \"type\": - \"string\"\n },\n \"bannerImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Desktop size (1060x175).\"\n - \ },\n \"bannerTvMediumImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. TV size medium resolution (1280x720).\"\n - \ },\n \"bannerTabletImageUrl\": {\n \"description\": - \"Banner image. Tablet size (1707x283).\",\n \"type\": \"string\"\n - \ },\n \"bannerMobileExtraHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size high resolution (1440x395).\",\n \"type\": - \"string\"\n },\n \"bannerTvHighImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. TV size high resolution - (1920x1080).\"\n },\n \"largeBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 854px - by 70px image that appears below the video player in the expanded video view - of the video watch page.\"\n },\n \"trackingImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"backgroundImageUrl\": - {\n \"description\": \"The URL for the background image shown on - the video watch page. The image should be 1200px by 615px, with a maximum - file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerMobileLowImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Mobile size low resolution (320x88).\"\n - \ },\n \"bannerMobileMediumHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size medium/high resolution (960x263).\",\n \"type\": - \"string\"\n },\n \"smallBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 640px - by 70px banner image that appears below the video player in the default view - of the video watch page. The URL for the image that appears above the top-left - corner of the video player. This is a 25-pixel-high image with a flexible - width that cannot exceed 170 pixels.\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size extra high resolution - (2560x424).\",\n \"type\": \"string\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n }\n },\n - \ \"id\": \"ImageSettings\",\n \"description\": \"Branding properties - for images associated with the channel.\"\n },\n \"ChannelStatistics\": - {\n \"type\": \"object\",\n \"id\": \"ChannelStatistics\",\n \"properties\": - {\n \"hiddenSubscriberCount\": {\n \"description\": \"Whether - or not the number of subscribers is shown for this user.\",\n \"type\": - \"boolean\"\n },\n \"subscriberCount\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of subscribers that the channel has.\"\n },\n \"commentCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of comments for the channel.\"\n },\n \"viewCount\": - {\n \"description\": \"The number of times the channel has been viewed.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"videoCount\": {\n \"description\": \"The number of videos - uploaded to the channel.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n }\n },\n \"description\": \"Statistics about - a channel: number of subscribers, number of videos in the channel, etc.\"\n - \ },\n \"Subscription\": {\n \"id\": \"Subscription\",\n \"type\": - \"object\",\n \"properties\": {\n \"contentDetails\": {\n \"$ref\": - \"SubscriptionContentDetails\",\n \"description\": \"The contentDetails - object contains basic statistics about the subscription.\"\n },\n \"subscriberSnippet\": - {\n \"description\": \"The subscriberSnippet object contains basic - details about the subscriber.\",\n \"$ref\": \"SubscriptionSubscriberSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\",\n \"$ref\": - \"SubscriptionSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"default\": \"youtube#subscription\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A *subscription* resource contains - information about a YouTube user subscription. A subscription notifies a user - when new videos are added to a channel or when another user takes one of several - actions on YouTube, such as uploading a video, rating a video, or commenting - on a video.\"\n },\n \"TestItem\": {\n \"properties\": {\n \"featuredPart\": - {\n \"type\": \"boolean\"\n },\n \"id\": {\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"gaia\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"TestItem\"\n },\n \"IngestionInfo\": {\n \"id\": \"IngestionInfo\",\n - \ \"properties\": {\n \"rtmpsIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of ingestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ },\n \"ingestionAddress\": {\n \"description\": \"The - primary ingestion URL that you should use to stream video to YouTube. You - must stream video to this URL. Depending on which application or tool you - use to encode your video stream, you may need to enter the stream URL and - stream name separately or you may need to concatenate them in the following - format: *STREAM_URL/STREAM_NAME* \",\n \"type\": \"string\"\n },\n - \ \"rtmpsBackupIngestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"This ingestion url may be used instead of backupIngestionAddress - in order to stream via RTMPS. Not applicable to non-RTMP streams.\"\n },\n - \ \"streamName\": {\n \"description\": \"The stream name that - YouTube assigns to the video stream.\",\n \"type\": \"string\"\n - \ },\n \"backupIngestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\"\n - \ }\n },\n \"description\": \"Describes information necessary - for ingesting an RTMP, HTTP, or SRT stream.\",\n \"type\": \"object\"\n - \ },\n \"LiveStreamStatus\": {\n \"id\": \"LiveStreamStatus\",\n - \ \"description\": \"Brief description of the live stream status.\",\n - \ \"properties\": {\n \"streamStatus\": {\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"healthStatus\": {\n \"description\": \"The health status - of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"PlaylistItemStatus\": - {\n \"type\": \"object\",\n \"description\": \"Information about - the playlist item's privacy status.\",\n \"properties\": {\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"This resource's privacy status.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"PlaylistItemStatus\"\n },\n \"I18nRegionSnippet\": - {\n \"properties\": {\n \"name\": {\n \"description\": - \"The human-readable name of the region.\",\n \"type\": \"string\"\n - \ },\n \"gl\": {\n \"description\": \"The region code - as a 2-letter ISO country code.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"I18nRegionSnippet\",\n \"description\": \"Basic - details about an i18n region, such as region code and human-readable name.\",\n - \ \"type\": \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"type\": \"object\",\n \"properties\": {\n \"partsProcessed\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\"\n - \ },\n \"partsTotal\": {\n \"format\": \"uint64\",\n - \ \"description\": \"An estimate of the total number of parts that - need to be processed for the video. The number may be updated with more precise - estimates while YouTube processes the video.\",\n \"type\": \"string\"\n - \ },\n \"timeLeftMs\": {\n \"type\": \"string\",\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\",\n \"format\": \"uint64\"\n }\n - \ },\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"Video processing progress and completion time estimate.\"\n },\n \"CommentThreadReplies\": - {\n \"description\": \"Comments written in (direct or indirect) reply - to the top level comment.\",\n \"id\": \"CommentThreadReplies\",\n \"type\": - \"object\",\n \"properties\": {\n \"comments\": {\n \"description\": - \"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.\",\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"type\": \"array\"\n }\n }\n - \ },\n \"LiveBroadcastStatistics\": {\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"properties\": {\n \"totalChatCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The total number of live chat messages - currently on the broadcast. The property and its value will be present if - the broadcast is public, has the live chat feature enabled, and has at least - one message. Note that this field will not be filled after the broadcast ends. - So this property would not identify the number of chat messages for an archived - video of a completed live broadcast.\",\n \"type\": \"string\"\n - \ },\n \"concurrentViewers\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The number of - viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Statistics about the live broadcast. - These represent a snapshot of the values at the time of the request. Statistics - are only returned for live broadcasts.\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that was added to - the channel.\",\n \"$ref\": \"ResourceId\"\n }\n },\n - \ \"description\": \"Details about a resource which was added to a channel.\",\n - \ \"type\": \"object\"\n },\n \"VideoCategory\": {\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoCategory\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video category.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"VideoCategorySnippet\",\n \"description\": \"The snippet object - contains basic details about the video category, including its title.\"\n - \ }\n },\n \"description\": \"A *videoCategory* resource identifies - a category that has been or could be associated with uploaded videos.\",\n - \ \"id\": \"VideoCategory\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"description\": \"Information about a channel that a user subscribed - to.\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that the user subscribed to.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamContentDetails\": {\n - \ \"type\": \"object\",\n \"description\": \"Detailed settings of - a stream.\",\n \"properties\": {\n \"closedCaptionsIngestionUrl\": - {\n \"description\": \"The ingestion URL where the closed captions - of this stream are sent.\",\n \"type\": \"string\"\n },\n - \ \"isReusable\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \"\n }\n },\n \"id\": \"LiveStreamContentDetails\"\n },\n - \ \"ChannelSectionListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"description\": \"A list of ChannelSections - that match the request criteria.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#channelSectionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelSectionListResponse\"\n },\n \"VideoSuggestions\": {\n \"id\": - \"VideoSuggestions\",\n \"description\": \"Specifies suggestions on how - to improve video content, including encoding hints, tag suggestions, and editor - suggestions.\",\n \"properties\": {\n \"processingErrors\": {\n - \ \"items\": {\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"enumDescriptions\": [\n \"File - contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., - a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file.\",\n \"Document - or text file (e.g., MS Word document).\",\n \"An archive file - (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout - type.\"\n ],\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of errors that will prevent YouTube from - successfully processing the uploaded video video. These errors indicate that, - regardless of the video's current processing status, eventually, that status - will almost certainly be failed.\",\n \"type\": \"array\"\n },\n - \ \"tagSuggestions\": {\n \"description\": \"A list of keyword - tags that could be added to the video's metadata to increase the likelihood - that users will locate your video when searching or browsing on YouTube.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoSuggestionsTagSuggestion\"\n }\n },\n \"editorSuggestions\": - {\n \"items\": {\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ],\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ],\n - \ \"type\": \"string\"\n },\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\",\n \"type\": \"array\"\n - \ },\n \"processingHints\": {\n \"items\": {\n \"enum\": - [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of suggestions that may improve YouTube's - ability to process the video.\"\n },\n \"processingWarnings\": - {\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ],\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ]\n },\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoRating\": {\n \"id\": \"VideoRating\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - rating of a video.\",\n \"properties\": {\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video.\"\n },\n \"rating\": {\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"description\": \"Rating of a video.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelSectionSnippet\": {\n \"properties\": - {\n \"type\": {\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"description\": \"The - type of the channel section.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"style\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The style of the channel section.\",\n \"enum\": - [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The channel section's title for multiple_playlists and multiple_channels.\"\n - \ },\n \"position\": {\n \"description\": \"The position - of the channel section in the channel.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that published the channel section.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel section's default title and description.\"\n },\n \"localized\": - {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": - \"Localized title, read-only.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelSectionSnippet\",\n \"description\": \"Basic details - about a channel section, including title, style and position.\"\n },\n - \ \"LiveStream\": {\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"LiveStreamSnippet\",\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about live stream's status.\",\n \"$ref\": - \"LiveStreamStatus\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveStream\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"contentDetails\": - {\n \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\",\n \"$ref\": - \"LiveStreamContentDetails\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the stream.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\"\n }\n },\n \"id\": \"LiveStream\",\n - \ \"type\": \"object\",\n \"description\": \"A live stream describes - a live ingestion point.\"\n },\n \"ActivityContentDetailsUpload\": {\n - \ \"description\": \"Information about the uploaded video.\",\n \"id\": - \"ActivityContentDetailsUpload\",\n \"type\": \"object\",\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\"\n }\n - \ }\n },\n \"VideoProcessingDetails\": {\n \"id\": \"VideoProcessingDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Describes processing - status and progress and availability of some other Video resource parts.\",\n - \ \"properties\": {\n \"fileDetailsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether file - details are available for the uploaded video. You can retrieve a video's file - details by requesting the fileDetails part in your videos.list() request.\"\n - \ },\n \"processingStatus\": {\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's processing status. This value indicates - whether YouTube was able to process the video or if the video is still being - processed.\"\n },\n \"tagSuggestionsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether keyword - (tag) suggestions are available for the video. Tags can be added to a video's - metadata to make it easier for other users to find the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\"\n },\n \"thumbnailsAvailability\": {\n \"description\": - \"This value indicates whether thumbnail images have been generated for the - video.\",\n \"type\": \"string\"\n },\n \"editorSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether video editing - suggestions, which might improve video quality or the playback experience, - are available for the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingProgress\": {\n \"$ref\": - \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n },\n \"processingFailureReason\": - {\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\"\n - \ },\n \"processingIssuesAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether the - video processing engine has generated suggestions that might improve YouTube's - ability to process the the video, warnings that explain video processing problems, - or errors that cause video processing problems. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n }\n - \ }\n },\n \"LiveChatMessageSnippet\": {\n \"properties\": - {\n \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"displayMessage\": {\n \"type\": \"string\",\n - \ \"description\": \"Contains a string that can be displayed to the - user. If this field is not present the message is silent, at the moment only - messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\"\n },\n - \ \"membershipGiftingDetails\": {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n - \ \"description\": \"Details about the Membership Gifting event, this - is only set if the type is 'membershipGiftingEvent'.\"\n },\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n },\n \"authorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that authored this message, this field is not always filled. textMessageEvent - - the user that wrote the message fanFundingEvent - the user that funded the - broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ],\n \"description\": \"The type of message, this will - always be present, it determines the contents of the message as well as which - fields will be present.\",\n \"type\": \"string\"\n },\n \"fanFundingEventDetails\": - {\n \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"superStickerDetails\": {\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"superChatDetails\": - {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n - \ \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n - \ \"description\": \"Details about the New Member Announcement event, - this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" - is the new term for \\\"sponsor\\\".\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the message was orignally published.\",\n \"format\": - \"date-time\"\n },\n \"hasDisplayContent\": {\n \"description\": - \"Whether the message has display content that should be displayed to users.\",\n - \ \"type\": \"boolean\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"giftMembershipReceivedDetails\": {\n \"$ref\": - \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": \"Details - about the Gift Membership Received event, this is only set if the type is - 'giftMembershipReceivedEvent'.\"\n }\n },\n \"description\": - \"Next ID: 33\",\n \"id\": \"LiveChatMessageSnippet\",\n \"type\": - \"object\"\n },\n \"I18nLanguageSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"name\": {\n \"description\": \"The - human-readable name of the language in the language itself.\",\n \"type\": - \"string\"\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"A short BCP-47 code that uniquely identifies - a language.\"\n }\n },\n \"description\": \"Basic details - about an i18n language, such as language code and human-readable name.\",\n - \ \"id\": \"I18nLanguageSnippet\"\n },\n \"LiveStreamSnippet\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamSnippet\",\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the stream was created.\"\n },\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The stream's - title. The value must be between 1 and 128 characters long.\"\n },\n - \ \"isDefaultStream\": {\n \"type\": \"boolean\"\n },\n - \ \"description\": {\n \"description\": \"The stream's description. - The value cannot be longer than 10000 characters.\",\n \"type\": - \"string\"\n }\n }\n },\n \"Video\": {\n \"type\": - \"object\",\n \"description\": \"A *video* resource represents a YouTube - video.\",\n \"id\": \"Video\",\n \"properties\": {\n \"localizations\": - {\n \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"type\": \"object\",\n \"description\": - \"The localizations object contains localized versions of the basic details - about the video, such as its title and description.\"\n },\n \"suggestions\": - {\n \"$ref\": \"VideoSuggestions\",\n \"description\": \"The - suggestions object encapsulates suggestions that identify opportunities to - improve the video quality or the metadata for the uploaded video. This data - can only be retrieved by the video owner.\"\n },\n \"topicDetails\": - {\n \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n - \ },\n \"recordingDetails\": {\n \"$ref\": \"VideoRecordingDetails\",\n - \ \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\"\n },\n - \ \"processingDetails\": {\n \"$ref\": \"VideoProcessingDetails\",\n - \ \"description\": \"The processingDetails object encapsulates information - about YouTube's progress in processing the uploaded video file. The properties - in the object identify the current processing status and an estimate of the - time remaining until YouTube finishes processing the video. This part also - indicates whether different types of data or content, such as file details - or thumbnail images, are available for the video. The processingProgress object - is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\"\n },\n \"status\": {\n - \ \"$ref\": \"VideoStatus\",\n \"description\": \"The status - object contains information about the video's uploading, processing, and privacy - statuses.\"\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the video - in an embedded player.\",\n \"$ref\": \"VideoPlayer\"\n },\n - \ \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n \"description\": - \"Age restriction details related to a video. This data can only be retrieved - by the video owner.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information about the video content, including the length - of the video and its aspect ratio.\",\n \"$ref\": \"VideoContentDetails\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#video\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the video, such as its title, description, - and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n \"statistics\": - {\n \"$ref\": \"VideoStatistics\",\n \"description\": \"The - statistics object contains statistics about the video.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"projectDetails\": {\n \"description\": - \"The projectDetails object contains information about the project specific - video metadata. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"monetizationDetails\": - {\n \"description\": \"The monetizationDetails object encapsulates - information about the monetization status of the video.\",\n \"$ref\": - \"VideoMonetizationDetails\"\n },\n \"fileDetails\": {\n \"$ref\": - \"VideoFileDetails\",\n \"description\": \"The fileDetails object - encapsulates information about the video file that was uploaded to YouTube, - including the file's resolution, duration, audio and video codecs, stream - bitrates, and more. This data can only be retrieved by the video owner.\"\n - \ }\n }\n },\n \"SubscriptionSnippet\": {\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\"\n - \ },\n \"channelTitle\": {\n \"description\": \"Channel - title for the channel that the subscription belongs to.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the subscription was created.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"description\": - {\n \"description\": \"The subscription's details.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - subscription's title.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\"\n },\n \"thumbnails\": {\n \"description\": \"A - map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n }\n },\n \"description\": \"Basic - details about a subscription, including title, description and thumbnails - of the subscribed item.\",\n \"type\": \"object\",\n \"id\": \"SubscriptionSnippet\"\n - \ },\n \"CommentSnippetAuthorChannelId\": {\n \"properties\": {\n - \ \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"type\": \"object\",\n \"id\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"LiveBroadcastSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic broadcast information.\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the broadcast was added to YouTube's live broadcast schedule.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the broadcast. For each nested object in this object, the key is the name - of the thumbnail image, and the value is an object that contains other information - about the thumbnail.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"scheduledEndTime\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - is scheduled to end.\"\n },\n \"scheduledStartTime\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - is scheduled to start.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"format\": \"date-time\"\n },\n - \ \"isDefaultBroadcast\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether this broadcast is the default broadcast. Internal only.\"\n - \ },\n \"description\": {\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\",\n - \ \"type\": \"string\"\n },\n \"actualStartTime\": {\n - \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast actually started. This information - is only available once the broadcast's state is live.\"\n },\n \"actualEndTime\": - {\n \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The id of the live chat for this broadcast.\"\n }\n },\n \"id\": - \"LiveBroadcastSnippet\"\n },\n \"LiveBroadcastContentDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"latencyPreference\": - {\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"type\": \"string\",\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ]\n },\n - \ \"enableContentEncryption\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\"\n },\n \"projection\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"type\": - \"string\"\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the live - stream referenced by boundStreamId was last updated.\",\n \"type\": - \"string\"\n },\n \"enableEmbed\": {\n \"description\": - \"This setting indicates whether the broadcast video can be played in an embedded - player. If you choose to archive the video (using the enableArchive property), - this setting will also apply to the archived video.\",\n \"type\": - \"boolean\"\n },\n \"enableAutoStop\": {\n \"description\": - \"This setting indicates whether auto stop is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\",\n \"type\": \"boolean\"\n },\n \"enableClosedCaptions\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether HTTP POST closed captioning is enabled for this broadcast. - The ingestion URL of the closed captions is returned through the liveStreams - API. This is mutually exclusive with using the closed_captions_type property, - and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n - \ },\n \"enableAutoStart\": {\n \"description\": \"This - setting indicates whether auto start is enabled for this broadcast. The default - value for this property is false. This setting can only be used by Events.\",\n - \ \"type\": \"boolean\"\n },\n \"startWithSlate\": {\n - \ \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n },\n \"stereoLayout\": {\n \"enum\": - [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The 3D stereo layout of this broadcast. This - defaults to mono.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"mesh\": {\n \"description\": \"The mesh for projecting - the video if projection is mesh. The mesh value must be a UTF-8 string containing - the base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC - specification for an mshp box, excluding the box size and type but including - the following four reserved zero bytes for the version and flags.\",\n \"type\": - \"string\",\n \"format\": \"byte\"\n },\n \"recordFromStart\": - {\n \"type\": \"boolean\",\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\"\n },\n \"closedCaptionsType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ],\n \"type\": \"string\"\n },\n \"boundStreamId\": - {\n \"description\": \"This value uniquely identifies the live stream - bound to the broadcast.\",\n \"type\": \"string\"\n },\n \"enableDvr\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - determines whether viewers can access DVR controls while watching the video. - DVR controls enable the viewer to control the video playback experience by - pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\"\n },\n \"monitorStream\": - {\n \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\",\n \"$ref\": - \"MonitorStreamInfo\"\n },\n \"enableLowLatency\": {\n \"description\": - \"Indicates whether this broadcast has low latency enabled.\",\n \"type\": - \"boolean\"\n }\n },\n \"description\": \"Detailed settings - of a broadcast.\",\n \"id\": \"LiveBroadcastContentDetails\"\n },\n - \ \"CaptionSnippet\": {\n \"description\": \"Basic details about a - caption track, such as its language and name.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"isLarge\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether the caption track uses large - text for the vision-impaired. The default value is false.\"\n },\n - \ \"trackKind\": {\n \"type\": \"string\",\n \"description\": - \"The caption track's type.\",\n \"enum\": [\n \"standard\",\n - \ \"ASR\",\n \"forced\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"isAutoSynced\": {\n \"description\": \"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.\",\n - \ \"type\": \"boolean\"\n },\n \"lastUpdated\": {\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the caption track was last updated.\",\n \"type\": - \"string\"\n },\n \"audioTrackType\": {\n \"description\": - \"The type of audio track associated with the caption track.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"unknown\",\n - \ \"primary\",\n \"commentary\",\n \"descriptive\"\n - \ ]\n },\n \"failureReason\": {\n \"type\": - \"string\",\n \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ],\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"name\": {\n \"type\": \"string\",\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n }\n - \ },\n \"isCC\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\"\n },\n \"videoId\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video associated with the caption track. @mutable - youtube.captions.insert\",\n \"type\": \"string\"\n },\n \"isEasyReader\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n - \ },\n \"language\": {\n \"description\": \"The language - of the caption track. The property value is a BCP-47 language tag.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"status\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ],\n \"description\": \"The caption - track's status.\"\n },\n \"isDraft\": {\n \"type\": - \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\"\n - \ }\n },\n \"id\": \"CaptionSnippet\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"properties\": {\n \"userComment\": {\n \"description\": - \"The comment added by the member to this Member Milestone Chat. This field - is empty for messages without a comment from the member.\",\n \"type\": - \"string\"\n },\n \"memberMonth\": {\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level at which the viever is a member. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"TestItemTestItemSnippet\": - {\n \"id\": \"TestItemTestItemSnippet\",\n \"properties\": {},\n - \ \"type\": \"object\"\n },\n \"LiveChatModeratorSnippet\": {\n - \ \"properties\": {\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the live chat this moderator can act - on.\"\n },\n \"moderatorDetails\": {\n \"description\": - \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\"\n - \ },\n \"ThumbnailSetResponse\": {\n \"id\": \"ThumbnailSetResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"ThumbnailDetails\"\n },\n \"description\": - \"A list of thumbnails.\",\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#thumbnailSetResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n - \ }\n }\n },\n \"Comment\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment.\"\n },\n \"snippet\": - {\n \"$ref\": \"CommentSnippet\",\n \"description\": \"The - snippet object contains basic details about the comment.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#comment\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#comment\"\n }\n },\n \"id\": - \"Comment\",\n \"description\": \"A *comment* represents a single YouTube - comment.\"\n },\n \"PlaylistPlayer\": {\n \"type\": \"object\",\n - \ \"id\": \"PlaylistPlayer\",\n \"properties\": {\n \"embedHtml\": - {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a - player that will play the playlist.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ActivityContentDetailsLike\": {\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the rated resource.\"\n }\n },\n \"description\": - \"Information about a resource that received a positive (like) rating.\",\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": {\n - \ \"id\": \"LiveBroadcastListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of broadcasts that match the - request criteria.\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n - \ }\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveBroadcastListResponse\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n }\n },\n \"ThumbnailDetails\": {\n \"properties\": - {\n \"high\": {\n \"description\": \"The high quality image - for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"medium\": - {\n \"description\": \"The medium quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"standard\": {\n \"description\": - \"The standard quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"maxres\": {\n \"description\": \"The maximum - resolution quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"default\": {\n \"description\": \"The default - image for this resource.\",\n \"$ref\": \"Thumbnail\"\n }\n - \ },\n \"id\": \"ThumbnailDetails\",\n \"description\": \"Internal - representation of thumbnails for a YouTube resource.\",\n \"type\": \"object\"\n - \ },\n \"AbuseReport\": {\n \"properties\": {\n \"abuseTypes\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"AbuseType\"\n }\n },\n \"description\": {\n \"type\": - \"string\"\n },\n \"relatedEntities\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n - \ }\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"AbuseReport\"\n - \ },\n \"ChannelSection\": {\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#channelSection\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\",\n \"$ref\": - \"ChannelSectionContentDetails\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\",\n \"$ref\": \"ChannelSectionSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n - \ \"description\": \"The targeting object contains basic targeting - settings about the channel section.\"\n },\n \"localizations\": - {\n \"description\": \"Localizations for different languages\",\n - \ \"type\": \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n }\n }\n },\n \"id\": - \"ChannelSection\",\n \"type\": \"object\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The `visitorId` - identifies the visitor.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n },\n \"description\": \"A list - of valid abuse reasons that are used with `video.ReportAbuse`.\",\n \"type\": - \"array\"\n }\n },\n \"id\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"VideoAbuseReportReason\": {\n \"id\": \"VideoAbuseReportReason\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the abuse report reason.\"\n - \ },\n \"id\": {\n \"description\": \"The ID of this - abuse report reason.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReason\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n }\n - \ },\n \"description\": \"A `__videoAbuseReportReason__` resource - identifies a reason that a video could be reported as abusive. Video abuse - report reasons are used with `video.ReportAbuse`.\",\n \"type\": \"object\"\n - \ },\n \"VideoLocalization\": {\n \"properties\": {\n \"description\": - {\n \"description\": \"Localized version of the video's description.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"Localized version of the video's - title.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoLocalization\",\n \"description\": \"Localized versions of certain - video properties (e.g. title).\"\n },\n \"GeoPoint\": {\n \"id\": - \"GeoPoint\",\n \"description\": \"Geographical coordinates of a point, - in WGS84.\",\n \"type\": \"object\",\n \"properties\": {\n \"altitude\": - {\n \"description\": \"Altitude above the reference ellipsoid, in - meters.\",\n \"type\": \"number\",\n \"format\": \"double\"\n - \ },\n \"longitude\": {\n \"type\": \"number\",\n \"format\": - \"double\",\n \"description\": \"Longitude in degrees.\"\n },\n - \ \"latitude\": {\n \"type\": \"number\",\n \"description\": - \"Latitude in degrees.\",\n \"format\": \"double\"\n }\n }\n - \ },\n \"SuperStickerMetadata\": {\n \"type\": \"object\",\n \"properties\": - {\n \"altTextLanguage\": {\n \"description\": \"Specifies - the localization language in which the alt text is returned.\",\n \"type\": - \"string\"\n },\n \"stickerId\": {\n \"type\": \"string\",\n - \ \"description\": \"Unique identifier of the Super Sticker. This - is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\"\n },\n \"altText\": {\n \"type\": - \"string\",\n \"description\": \"Internationalized alt text that - describes the sticker image and any animation associated with it.\"\n }\n - \ },\n \"id\": \"SuperStickerMetadata\"\n },\n \"LocalizedString\": - {\n \"type\": \"object\",\n \"properties\": {\n \"language\": - {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LocalizedString\"\n },\n - \ \"VideoPlayer\": {\n \"type\": \"object\",\n \"id\": \"VideoPlayer\",\n - \ \"properties\": {\n \"embedHeight\": {\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n },\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\",\n - \ \"type\": \"string\"\n },\n \"embedWidth\": {\n \"type\": - \"string\",\n \"description\": \"The embed width\",\n \"format\": - \"int64\"\n }\n },\n \"description\": \"Player to be used - for a video playback.\"\n },\n \"MembershipsLevelSnippet\": {\n \"id\": - \"MembershipsLevelSnippet\",\n \"properties\": {\n \"creatorChannelId\": - {\n \"description\": \"The id of the channel that's offering channel - memberships.\",\n \"type\": \"string\"\n },\n \"levelDetails\": - {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details - about the pricing level.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"WatchSettings\": {\n \"type\": \"object\",\n \"properties\": - {\n \"featuredPlaylistId\": {\n \"type\": \"string\",\n \"description\": - \"An ID that uniquely identifies a playlist that displays next to the video - player.\"\n },\n \"textColor\": {\n \"type\": \"string\",\n - \ \"description\": \"The background color for the video watch page's - branded area.\"\n },\n \"backgroundColor\": {\n \"description\": - \"The text color for the video watch page's branded area.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"WatchSettings\",\n \"description\": - \"Branding properties for the watch. All deprecated.\"\n },\n \"ActivitySnippet\": - {\n \"id\": \"ActivitySnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about an activity, including title, description, thumbnails, - activity type and group. Next ID: 12\",\n \"properties\": {\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the video was uploaded.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel associated with the activity.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"type\": {\n \"enum\": [\n \"typeUnspecified\",\n - \ \"upload\",\n \"like\",\n \"favorite\",\n - \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n - \ \"recommendation\",\n \"bulletin\",\n \"social\",\n - \ \"channelItem\",\n \"promotedItem\"\n ],\n - \ \"description\": \"The type of activity that the resource describes.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"groupId\": {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The title of the resource primarily - associated with the activity.\"\n },\n \"channelTitle\": {\n - \ \"description\": \"Channel title for the channel responsible for - this activity\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The description of the resource primarily - associated with the activity. @mutable youtube.activities.insert\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoFileDetailsVideoStream\": - {\n \"description\": \"Information about a video stream.\",\n \"properties\": - {\n \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The video codec that the stream uses.\"\n },\n \"frameRateFps\": - {\n \"description\": \"The video stream's frame rate, in frames per - second.\",\n \"format\": \"double\",\n \"type\": \"number\"\n - \ },\n \"heightPixels\": {\n \"type\": \"integer\",\n - \ \"description\": \"The encoded video content's height in pixels.\",\n - \ \"format\": \"uint32\"\n },\n \"aspectRatio\": {\n - \ \"format\": \"double\",\n \"description\": \"The video - content's display aspect ratio, which specifies the aspect ratio in which - the video should be displayed.\",\n \"type\": \"number\"\n },\n - \ \"rotation\": {\n \"description\": \"The amount that YouTube - needs to rotate the original source content to properly display the video.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"none\",\n \"clockwise\",\n \"upsideDown\",\n - \ \"counterClockwise\",\n \"other\"\n ],\n \"type\": - \"string\"\n },\n \"bitrateBps\": {\n \"description\": - \"The video stream's bitrate, in bits per second.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"widthPixels\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n }\n },\n \"id\": \"VideoFileDetailsVideoStream\",\n - \ \"type\": \"object\"\n },\n \"CommentThreadListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"CommentThread\"\n },\n \"description\": - \"A list of comment threads that match the request criteria.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#commentThreadListResponse\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"id\": \"CommentThreadListResponse\"\n },\n - \ \"SubscriptionListResponse\": {\n \"id\": \"SubscriptionListResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Subscription\"\n },\n \"description\": \"A list of subscriptions - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoGetRatingResponse\": {\n \"id\": \"VideoGetRatingResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"VideoRating\"\n },\n - \ \"description\": \"A list of ratings that match the request criteria.\",\n - \ \"type\": \"array\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoGetRatingResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoFileDetails\": - {\n \"type\": \"object\",\n \"description\": \"Describes original - video file properties, including technical details about audio and video streams, - but also metadata information like content length, digitization time, or geotagging - information.\",\n \"properties\": {\n \"creationTime\": {\n \"description\": - \"The date and time when the uploaded video file was created. The value is - specified in ISO 8601 format. Currently, the following ISO 8601 formats are - supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time - with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n - \ },\n \"videoStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of video streams contained in the uploaded - video file. Each item in the list contains detailed metadata about a video - stream.\"\n },\n \"fileName\": {\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\",\n \"type\": \"string\"\n },\n - \ \"fileType\": {\n \"enum\": [\n \"video\",\n \"audio\",\n - \ \"image\",\n \"archive\",\n \"document\",\n - \ \"project\",\n \"other\"\n ],\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"description\": \"The uploaded file's - type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\",\n \"type\": \"string\"\n - \ },\n \"fileSize\": {\n \"description\": \"The uploaded - file's size in bytes. This field is present whether a video file or another - type of file was uploaded.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"audioStreams\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of audio streams contained in the uploaded - video file. Each item in the list contains detailed metadata about an audio - stream.\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ }\n },\n \"durationMs\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - length of the uploaded video in milliseconds.\"\n },\n \"container\": - {\n \"description\": \"The uploaded video file's container format.\",\n - \ \"type\": \"string\"\n },\n \"bitrateBps\": {\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ }\n },\n \"id\": \"VideoFileDetails\"\n },\n \"MemberListResponse\": - {\n \"id\": \"MemberListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Member\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of members that match the request criteria.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#memberListResponse\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n }\n },\n \"InvideoBranding\": - {\n \"properties\": {\n \"imageUrl\": {\n \"description\": - \"The url of the uploaded image. Only used in apiary to api communication.\",\n - \ \"type\": \"string\"\n },\n \"targetChannelId\": {\n - \ \"description\": \"The channel to which this branding links. If - not present it defaults to the current channel.\",\n \"type\": \"string\"\n - \ },\n \"imageBytes\": {\n \"format\": \"byte\",\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"type\": \"string\"\n },\n \"position\": {\n \"$ref\": - \"InvideoPosition\",\n \"description\": \"The spatial position within - the video where the branding watermark will be displayed.\"\n },\n - \ \"timing\": {\n \"description\": \"The temporal position - within the video where watermark will be displayed.\",\n \"$ref\": - \"InvideoTiming\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"LINT.IfChange Describes an invideo branding.\",\n \"id\": \"InvideoBranding\"\n - \ },\n \"ChannelStatus\": {\n \"type\": \"object\",\n \"description\": - \"JSON template for the status part of a channel.\",\n \"properties\": - {\n \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"privacyStatus\": {\n \"description\": \"Privacy - status of the channel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\"\n },\n \"isLinked\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n \"longUploadsStatus\": - {\n \"description\": \"The long uploads status of this channel. See - https://support.google.com/youtube/answer/71673 for more information.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ]\n }\n },\n \"id\": - \"ChannelStatus\"\n },\n \"LiveStreamHealthStatus\": {\n \"type\": - \"object\",\n \"id\": \"LiveStreamHealthStatus\",\n \"properties\": - {\n \"status\": {\n \"description\": \"The status code of - this stream\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ],\n \"type\": \"string\"\n },\n - \ \"lastUpdateTimeSeconds\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The last time this status was updated - (in seconds)\"\n },\n \"configurationIssues\": {\n \"type\": - \"array\",\n \"description\": \"The configurations issues on this - stream\",\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ }\n }\n }\n },\n \"PropertyValue\": {\n \"type\": - \"object\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\",\n \"description\": \"The property's value.\"\n },\n - \ \"property\": {\n \"description\": \"A property.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"PropertyValue\",\n \"description\": - \"A pair Property / Value.\"\n },\n \"MembershipsDurationAtLevel\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsDurationAtLevel\",\n - \ \"properties\": {\n \"level\": {\n \"type\": \"string\",\n - \ \"description\": \"Pricing level ID.\"\n },\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - for the given level in complete months (the time is rounded down to the nearest - integer).\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ },\n \"memberSince\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the user became a continuous - member for the given level.\"\n }\n }\n },\n \"MembershipsDuration\": - {\n \"id\": \"MembershipsDuration\",\n \"properties\": {\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - across all levels in complete months (the time is rounded down to the nearest - integer).\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ },\n \"memberSince\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the user became a continuous - member across all levels.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageRetractedDetails\": {\n \"id\": \"LiveChatMessageRetractedDetails\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelSectionContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"Details about a channelsection, including playlists - and channels.\",\n \"properties\": {\n \"channels\": {\n \"description\": - \"The channel ids for type multiple_channels.\",\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"playlists\": {\n \"description\": \"The playlist - ids for type single_playlist and multiple_playlists. For singlePlaylist, only - one playlistId is allowed.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n }\n },\n - \ \"PlaylistItemSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails. - Basic details of a YouTube Playlist item provided by the author. Next ID: - 15\",\n \"properties\": {\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the user that added the item - to the playlist.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"$ref\": \"ResourceId\",\n \"description\": \"The id object - contains information that can be used to uniquely identify the resource that - is included in the playlist as the playlist item.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The item's - description.\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\"\n },\n \"position\": - {\n \"type\": \"integer\",\n \"description\": \"The order - in which the item appears in the playlist. The value uses a zero-based index, - so the first item has a position of 0, the second item has a position of 1, - and so forth.\",\n \"format\": \"uint32\"\n },\n \"title\": - {\n \"description\": \"The item's title.\",\n \"type\": - \"string\"\n },\n \"videoOwnerChannelId\": {\n \"description\": - \"Channel id for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist item. 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.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the item - was added to the playlist.\",\n \"format\": \"date-time\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\"\n },\n - \ \"videoOwnerChannelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel this video belongs to.\"\n }\n },\n - \ \"id\": \"PlaylistItemSnippet\"\n },\n \"ChannelListResponse\": - {\n \"type\": \"object\",\n \"id\": \"ChannelListResponse\",\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#channelListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Channel\"\n }\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageDeletedDetails\",\n - \ \"type\": \"object\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"properties\": {\n \"channelId\": {\n \"description\": - \"The channel ID of the subscriber.\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"Thumbnails for this subscriber.\"\n },\n \"title\": {\n \"description\": - \"The title of the subscriber.\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the subscriber.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about a subscription's - subscriber including title, description, channel ID and thumbnails.\",\n \"id\": - \"SubscriptionSubscriberSnippet\"\n },\n \"ContentRating\": {\n \"id\": - \"ContentRating\",\n \"properties\": {\n \"cnaRating\": {\n \"description\": - \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\",\n \"type\": \"string\",\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"rcnofRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\"\n },\n \"fmocRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ],\n \"enum\": [\n - \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"description\": - \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"type\": \"string\"\n },\n \"ecbmctRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ],\n \"description\": \"Rating system in Turkey - Evaluation - and Classification Board of the Ministry of Culture and Tourism\",\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"kijkwijzerRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating - from the Nederlands Instituut voor de Classificatie van Audiovisuele Media - (Netherlands).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AL\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"\",\n \"\"\n ]\n },\n - \ \"mpaaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"NC-17\",\n \"! X\",\n \"\"\n ],\n - \ \"description\": \"The video's Motion Picture Association of America - (MPAA) rating.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ]\n },\n - \ \"bfvcRating\": {\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Thailand's - Board of Film and Video Censors.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"E\",\n \"13\",\n \"15\",\n - \ \"18\",\n \"20\",\n \"B\",\n \"\"\n - \ ]\n },\n \"anatelRating\": {\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n - \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ]\n },\n - \ \"grfilmRating\": {\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Greece.\",\n \"type\": - \"string\"\n },\n \"medietilsynetRating\": {\n \"enum\": - [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Medietilsynet, the Norwegian Media Authority.\"\n },\n \"menaMpaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To - keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\",\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"cceRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from Portugal's - Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enum\": - [\n \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n - \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n - \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ]\n },\n \"tvpgRating\": {\n \"description\": - \"The video's TV Parental Guidelines (TVPG) rating.\",\n \"type\": - \"string\",\n \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n - \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n - \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ]\n },\n \"cicfRating\": {\n \"enum\": - [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\"\n - \ },\n \"russiaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"description\": \"The video's National Film Registry of the Russian - Federation (MKRF - Russia) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"russiaUnspecified\",\n \"russia0\",\n \"russia6\",\n - \ \"russia12\",\n \"russia16\",\n \"russia18\",\n - \ \"russiaUnrated\"\n ]\n },\n \"fpbRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X18\",\n - \ \"XX\",\n \"\",\n \"10\"\n ],\n - \ \"description\": \"The video's rating from South Africa's Film and - Publication Board.\",\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ]\n },\n - \ \"mccypRating\": {\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ]\n },\n \"moctwRating\": {\n \"enum\": [\n - \ \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n - \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n - \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Taiwan's - Ministry of Culture (\u6587\u5316\u90E8).\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ]\n },\n \"resorteviolenciaRating\": {\n \"description\": - \"The video's rating in Venezuela.\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ]\n },\n - \ \"cccRating\": {\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Todo - espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n - \ \"14+\",\n \"18+\",\n \"18+ - contenido - excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"description\": \"The video's Consejo - de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n \"type\": - \"string\"\n },\n \"nbcplRating\": {\n \"description\": - \"The video's rating in Poland.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ]\n },\n \"icaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ],\n - \ \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"enum\": - [\n \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n - \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n - \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"nfvcbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"18\",\n \"RE\",\n \"\"\n ],\n - \ \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Nigeria's National Film - and Video Censors Board.\"\n },\n \"bbfcRating\": {\n \"enum\": - [\n \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ],\n - \ \"description\": \"The video's British Board of Film Classification - (BBFC) rating.\",\n \"type\": \"string\"\n },\n \"mocRating\": - {\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"description\": \"The - video's Ministerio de Cultura (Colombia) rating.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ]\n },\n \"rtcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"rtcUnspecified\",\n - \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n - \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n - \ ],\n \"description\": \"The video's General Directorate - of Radio, Television and Cinematography (Mexico) rating.\"\n },\n \"eefilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Estonia.\",\n - \ \"type\": \"string\"\n },\n \"czfilmRating\": {\n - \ \"description\": \"The video's rating in the Czech Republic.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"cbfcRating\": {\n \"enum\": [\n - \ \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"description\": \"The video's Central Board of Film - Certification (CBFC - India) rating.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ]\n },\n \"egfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n \"egfilm18\",\n - \ \"egfilmBn\",\n \"egfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Egypt.\"\n },\n \"mcstRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n - \ \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating system for Vietnam - MCST\"\n - \ },\n \"fskRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"fskUnspecified\",\n \"fsk0\",\n \"fsk6\",\n - \ \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n \"fskUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"FSK - 0\",\n \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\"\n },\n \"fcbmRating\": {\n \"enum\": [\n - \ \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Malaysia's - Film Censorship Board.\"\n },\n \"skfilmRating\": {\n \"description\": - \"The video's rating in Slovakia.\",\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ]\n },\n \"csaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, - which rates broadcast content.\",\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ]\n },\n \"mibacRating\": {\n \"enum\": [\n - \ \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n - \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n - \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Ministero dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\"\n - \ },\n \"djctqRatingReasons\": {\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Brazil - rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia - (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n - \ \"Conte\xFAdo sexual (Sexual content)\",\n \"Nudez - (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo Expl\xEDcito - (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ]\n },\n \"description\": \"Reasons that explain - why the video received its DJCQT (Brazil) rating.\",\n \"type\": - \"array\"\n },\n \"incaaRating\": {\n \"enum\": [\n - \ \"incaaUnspecified\",\n \"incaaAtp\",\n \"incaaSam13\",\n - \ \"incaaSam16\",\n \"incaaSam18\",\n \"incaaC\",\n - \ \"incaaUnrated\"\n ],\n \"description\": \"The - video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"acbRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"acbUnspecified\",\n \"acbE\",\n \"acbP\",\n - \ \"acbC\",\n \"acbG\",\n \"acbPg\",\n \"acbM\",\n - \ \"acbMa15plus\",\n \"acbR18plus\",\n \"acbUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n - \ \"description\": \"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.\"\n },\n \"nbcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n - \ \"18+R\",\n \"PU\",\n \"\"\n ],\n - \ \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Maldives National - Bureau of Classification.\"\n },\n \"oflcRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"description\": \"The video's Office of Film and - Literature Classification (OFLC - New Zealand) rating.\"\n },\n \"agcomRating\": - {\n \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\"\n - \ },\n \"ytRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"A rating that - YouTube uses to identify age-restricted content.\",\n \"enum\": [\n - \ \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n - \ \"type\": \"string\"\n },\n \"bmukkRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"fpbRatingReasons\": {\n \"type\": - \"array\",\n \"description\": \"Reasons that explain why the video - received its FPB (South Africa) rating.\",\n \"items\": {\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"South - Africa rating content descriptors.\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"rteRating\": {\n \"enum\": - [\n \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Ireland's - Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"type\": \"string\"\n },\n - \ \"nmcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"description\": \"The National - Media Council ratings system for United Arab Emirates.\",\n \"enum\": - [\n \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n - \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n - \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n - \ ]\n },\n \"kmrbRating\": {\n \"enum\": [\n - \ \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\"\n },\n \"cscfRating\": - {\n \"description\": \"The video's rating from Luxembourg's Commission - de surveillance de la classification des films (CSCF).\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ]\n },\n \"pefilmRating\": {\n \"enum\": - [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Peru.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n - \ \"\"\n ]\n },\n \"cncRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"description\": \"Rating system - in France - Commission de classification cinematographique\",\n \"type\": - \"string\",\n \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ]\n },\n \"kfcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"enum\": - [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"mccaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ]\n },\n \"smsaRating\": - {\n \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"All ages\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Statens - medier\xE5d (Sweden's National Media Council).\"\n },\n \"mtrcbRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ],\n \"description\": \"The - video's rating from the Movie and Television Review and Classification Board - (Philippines).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"R-13\",\n \"R-16\",\n - \ \"R-18\",\n \"X\",\n \"\"\n ]\n - \ },\n \"chvrsRating\": {\n \"description\": \"The video's - Canadian Home Video Rating System (CHVRS) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ],\n \"enum\": [\n \"chvrsUnspecified\",\n \"chvrsG\",\n - \ \"chvrsPg\",\n \"chvrs14a\",\n \"chvrs18a\",\n - \ \"chvrsR\",\n \"chvrsE\",\n \"chvrsUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"lsfRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n - \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n - \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Indonesia's Lembaga Sensor Film.\"\n },\n - \ \"catvRating\": {\n \"description\": \"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.\",\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"mdaRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n - \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n - \ \"mdaR21\",\n \"mdaUnrated\"\n ],\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ]\n },\n \"chfilmRating\": {\n \"enum\": - [\n \"chfilmUnspecified\",\n \"chfilm0\",\n \"chfilm6\",\n - \ \"chfilm12\",\n \"chfilm16\",\n \"chfilm18\",\n - \ \"chfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Switzerland.\"\n },\n \"mpaatRating\": {\n \"type\": - \"string\",\n \"description\": \"The rating system for trailer, DVD, - and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ]\n },\n - \ \"ifcoRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"15A\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\",\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ]\n },\n \"eirinRating\": {\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"mekuRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Finland's Kansallinen - Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n \"type\": - \"string\",\n \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ]\n },\n - \ \"catvfrRating\": {\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"djctqRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ]\n },\n \"nfrcRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"B\",\n \"C\",\n \"D\",\n - \ \"X\",\n \"\"\n ],\n \"enum\": [\n - \ \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Bulgarian - National Film Center.\"\n },\n \"fcoRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from Hong Kong's - Office for Film, Newspaper and Article Administration.\",\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ]\n },\n - \ \"ilfilmRating\": {\n \"description\": \"The video's rating - in Israel.\",\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"smaisRating\": {\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\",\n - \ \"type\": \"string\"\n },\n \"nkclvRating\": {\n \"enum\": - [\n \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n - \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n - \ \"nkclvUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Ratings - schemes. The country-specific ratings are mostly for movies and shows. LINT.IfChange\"\n - \ },\n \"Activity\": {\n \"id\": \"Activity\",\n \"type\": - \"object\",\n \"description\": \"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.\",\n \"properties\": {\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetails\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the activity, including the activity's type and group ID.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#activity\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource\"\n }\n }\n },\n \"LiveBroadcast\": {\n \"type\": - \"object\",\n \"id\": \"LiveBroadcast\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"LiveBroadcastSnippet\",\n \"description\": - \"The snippet object contains basic details about the event, including its - title, description, start time, and end time.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"LiveBroadcastContentDetails\",\n \"description\": \"The contentDetails - object contains information about the event's video content, such as whether - the content can be shown in an embedded video player or if it will be archived - and therefore available for viewing after the event has concluded.\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n - \ },\n \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"The statistics object contains info about the - event's current stats. These include concurrent viewers and total chat count. - Statistics can change (in either direction) during the lifetime of an event. - Statistics are only returned while the event is live.\"\n },\n \"id\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the broadcast.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"default\": \"youtube#liveBroadcast\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A *liveBroadcast* resource represents - an event that will be streamed, via live video, on YouTube.\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"id\": \"LiveStreamConfigurationIssue\",\n \"properties\": - {\n \"severity\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"How severe this issue is to the stream.\",\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ]\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The long-form description of the issue and how - to resolve it.\"\n },\n \"type\": {\n \"enum\": [\n - \ \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ],\n \"description\": - \"The kind of error happening.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"reason\": - {\n \"type\": \"string\",\n \"description\": \"The short-form - reason for this issue.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatBanSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"type\": {\n \"description\": \"The type of ban.\",\n - \ \"enum\": [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"enumDescriptions\": [\n - \ \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"type\": \"string\"\n - \ },\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banDurationSeconds\": {\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"liveChatId\": - {\n \"description\": \"The chat this ban is pertinent to.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatBanSnippet\"\n },\n - \ \"PageInfo\": {\n \"properties\": {\n \"totalResults\": {\n - \ \"type\": \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The total number of results in the result set.\"\n },\n \"resultsPerPage\": - {\n \"format\": \"int32\",\n \"description\": \"The number - of results included in the API response.\",\n \"type\": \"integer\"\n - \ }\n },\n \"description\": \"Paging details for lists of - resources, including total number of items available and number of resources - returned in a single page.\",\n \"id\": \"PageInfo\",\n \"type\": - \"object\"\n },\n \"ChannelSnippet\": {\n \"description\": \"Basic - details about a channel, including title, description and thumbnails.\",\n - \ \"properties\": {\n \"country\": {\n \"type\": \"string\",\n - \ \"description\": \"The country of the channel.\"\n },\n \"customUrl\": - {\n \"description\": \"The custom url of the channel.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's title.\"\n },\n \"thumbnails\": - {\n \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the channel was created.\"\n },\n \"localized\": {\n - \ \"description\": \"Localized title and description, read-only.\",\n - \ \"$ref\": \"ChannelLocalization\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel's default title and description.\"\n },\n \"description\": - {\n \"description\": \"The description of the channel.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelSnippet\"\n },\n \"SuperChatEventSnippet\": {\n \"id\": - \"SuperChatEventSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"superStickerMetadata\": {\n \"description\": \"If this - event is a Super Sticker event, this field will contain metadata about the - Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n },\n - \ \"isSuperStickerEvent\": {\n \"description\": \"True if this - event is a Super Sticker event.\",\n \"type\": \"boolean\"\n },\n - \ \"amountMicros\": {\n \"type\": \"string\",\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\",\n \"format\": \"uint64\"\n },\n \"messageType\": - {\n \"description\": \"The tier for the paid message, which is based - on the amount of money spent to purchase the message.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"supporterDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the supporter.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel id where the event occurred.\"\n - \ },\n \"commentText\": {\n \"description\": \"The text - contents of the comment left by the user.\",\n \"type\": \"string\"\n - \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\"\n },\n \"displayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). - The string is rendered for the given language.\"\n },\n \"createdAt\": - {\n \"description\": \"The date and time when the event occurred.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n }\n - \ }\n },\n \"SearchResultSnippet\": {\n \"properties\": {\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"A description of the search result.\"\n },\n \"channelId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the search result. 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.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - creation date and time of the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"type\": \"string\",\n \"description\": \"It indicates - if the resource (video or channel) has upcoming/active live broadcast content. - Or it's \\\"none\\\" if there is not any upcoming/active live broadcasts.\",\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ]\n },\n \"title\": {\n \"description\": - \"The title of the search result.\",\n \"type\": \"string\"\n },\n - \ \"channelTitle\": {\n \"description\": \"The title of the - channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"SearchResultSnippet\",\n \"description\": \"Basic details - about a search result, including title, description and thumbnails of the - item referenced by the search result.\"\n },\n \"SubscriptionContentDetails\": - {\n \"type\": \"object\",\n \"description\": \"Details about the - content to witch a subscription refers.\",\n \"id\": \"SubscriptionContentDetails\",\n - \ \"properties\": {\n \"activityType\": {\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"subscriptionActivityTypeUnspecified\",\n \"all\",\n - \ \"uploads\"\n ]\n },\n \"newItemCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of new items in the subscription since its content was last read.\"\n - \ },\n \"totalItemCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The approximate - number of items that the subscription points to.\"\n }\n }\n },\n - \ \"ChannelToStoreLinkDetails\": {\n \"type\": \"object\",\n \"id\": - \"ChannelToStoreLinkDetails\",\n \"description\": \"Information specific - to a store on a merchandising platform linked to a YouTube channel.\",\n \"properties\": - {\n \"storeUrl\": {\n \"description\": \"Landing page of the - store.\",\n \"type\": \"string\"\n },\n \"storeName\": - {\n \"description\": \"Name of the store.\",\n \"type\": - \"string\"\n },\n \"merchantId\": {\n \"type\": \"string\",\n - \ \"description\": \"Google Merchant Center id of the store.\",\n - \ \"format\": \"uint64\"\n }\n }\n },\n \"VideoContentDetails\": - {\n \"properties\": {\n \"countryRestriction\": {\n \"$ref\": - \"AccessPolicy\",\n \"description\": \"The countryRestriction object - contains information about the countries where a video is (or is not) viewable.\"\n - \ },\n \"projection\": {\n \"description\": \"Specifies - the projection format of the video.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"duration\": {\n \"description\": - \"The length of the video. The tag value is an ISO 8601 duration in the format - PT#M#S, in which the letters PT indicate that the value specifies a period - of time, and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\",\n \"type\": - \"string\"\n },\n \"licensedContent\": {\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\",\n \"type\": \"boolean\"\n },\n \"dimension\": - {\n \"type\": \"string\",\n \"description\": \"The value - of dimension indicates whether the video is available in 3D or in 2D.\"\n - \ },\n \"caption\": {\n \"description\": \"The value - of captions indicates whether the video has captions or not.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"true\",\n \"false\"\n ],\n \"type\": - \"string\"\n },\n \"regionRestriction\": {\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"hasCustomThumbnail\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\"\n },\n \"contentRating\": - {\n \"description\": \"Specifies the ratings that the video received - under various rating schemes.\",\n \"$ref\": \"ContentRating\"\n - \ },\n \"definition\": {\n \"enumDescriptions\": [\n - \ \"sd\",\n \"hd\"\n ],\n \"enum\": - [\n \"sd\",\n \"hd\"\n ],\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Details - about the content of a YouTube Video.\",\n \"id\": \"VideoContentDetails\"\n - \ },\n \"AbuseType\": {\n \"type\": \"object\",\n \"id\": \"AbuseType\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoSuggestionsTagSuggestion\": {\n \"id\": - \"VideoSuggestionsTagSuggestion\",\n \"description\": \"A single tag - suggestion with it's relevance information.\",\n \"properties\": {\n - \ \"categoryRestricts\": {\n \"type\": \"array\",\n \"description\": - \"A set of video categories for which the tag is relevant. You can use this - information to display appropriate tag suggestions based on the video category - that the video uploader associates with the video. By default, tag suggestions - are relevant for all categories if there are no restricts defined for the - keyword.\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"tag\": {\n \"type\": \"string\",\n \"description\": - \"The keyword tag suggested for the video.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveStreamListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamListResponse\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveStreamListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"LiveStream\"\n },\n \"description\": - \"A list of live streams that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n }\n }\n },\n \"SuperChatEventListResponse\": - {\n \"properties\": {\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#superChatEventListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"A list of Super - Chat purchases that match the request criteria.\",\n \"items\": {\n - \ \"$ref\": \"SuperChatEvent\"\n },\n \"type\": - \"array\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n }\n - \ },\n \"id\": \"SuperChatEventListResponse\",\n \"type\": \"object\"\n - \ },\n \"LiveChatNewSponsorDetails\": {\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level that the viewer just had joined. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"isUpgrade\": {\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"InvideoTiming\": {\n \"type\": - \"object\",\n \"properties\": {\n \"offsetMs\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\"\n },\n - \ \"type\": {\n \"enum\": [\n \"offsetFromStart\",\n - \ \"offsetFromEnd\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Describes a timing type. If the value is offsetFromStart, - then the offsetMs field represents an offset from the start of the video. - If the value is offsetFromEnd, then the offsetMs field represents an offset - from the end of the video.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ]\n },\n \"durationMs\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"Defines - the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\"\n }\n },\n \"id\": - \"InvideoTiming\",\n \"description\": \"Describes a temporal position - of a visual widget inside a video.\"\n },\n \"MembershipsDetails\": - {\n \"properties\": {\n \"highestAccessibleLevelDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n },\n - \ \"membershipsDurationAtLevels\": {\n \"type\": \"array\",\n - \ \"description\": \"Data about memberships duration on particular - pricing levels.\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ }\n },\n \"accessibleLevels\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"Ids of all levels that the user has access to. - This includes the currently active level and all other levels that are included - because of a higher purchase.\"\n },\n \"highestAccessibleLevel\": - {\n \"description\": \"Id of the highest level that the user has - access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"membershipsDuration\": {\n \"description\": \"Data about - memberships duration without taking into consideration pricing levels.\",\n - \ \"$ref\": \"MembershipsDuration\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"MembershipsDetails\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"type\": \"object\",\n \"description\": \"Information that - identifies the recommended resource.\",\n \"properties\": {\n \"seedResourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The seedResourceId - object contains information about the resource that caused the recommendation.\"\n - \ },\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the recommended resource.\",\n - \ \"$ref\": \"ResourceId\"\n },\n \"reason\": {\n \"enum\": - [\n \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The reason that the resource is recommended to - the user.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"id\": - \"ActivityContentDetailsRecommendation\"\n },\n \"PlaylistListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"default\": \"youtube#playlistListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of playlists that match the request criteria\",\n \"items\": - {\n \"$ref\": \"Playlist\"\n }\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"PlaylistListResponse\"\n },\n \"VideoAgeGating\": {\n \"id\": - \"VideoAgeGating\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"alcoholContent\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether or not the video has alcoholic beverage content. Only - users of legal purchasing age in a particular country, as identified by ICAP, - can view the content.\"\n },\n \"videoGameRating\": {\n \"description\": - \"Video game rating, if any.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ]\n },\n - \ \"restricted\": {\n \"description\": \"Age-restricted trailers. - For redband trailers and adult-rated video-games. Only users aged 18+ can - view the content. The the field is true the content is restricted to viewers - aged 18+. Otherwise The field won't be present.\",\n \"type\": \"boolean\"\n - \ }\n }\n },\n \"LevelDetails\": {\n \"id\": \"LevelDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"displayName\": - {\n \"description\": \"The name that should be used when referring - to this level.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ThirdPartyLinkStatus\": {\n \"type\": \"object\",\n \"description\": - \"The third-party link status object contains information about the status - of the link.\",\n \"id\": \"ThirdPartyLinkStatus\",\n \"properties\": - {\n \"linkStatus\": {\n \"enum\": [\n \"unknown\",\n - \ \"failed\",\n \"pending\",\n \"linked\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelTopicDetails\": {\n \"description\": - \"Freebase topic information related to the channel.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"topicIds\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\"\n },\n - \ \"topicCategories\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\"\n }\n - \ },\n \"id\": \"ChannelTopicDetails\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"banDurationSeconds\": - {\n \"format\": \"uint64\",\n \"description\": \"The duration - of the ban. This property is only present if the banType is temporary.\",\n - \ \"type\": \"string\"\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"The details of the user that was banned.\"\n },\n \"banType\": - {\n \"description\": \"The type of ban.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"permanent\",\n \"temporary\"\n - \ ]\n }\n },\n \"id\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"RelatedEntity\": {\n \"properties\": {\n \"entity\": - {\n \"$ref\": \"Entity\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"RelatedEntity\"\n },\n \"ResourceId\": {\n \"id\": - \"ResourceId\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"The type of the API resource.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the referred resource, if that resource is a video. This - property is only present if the resourceId.kind value is youtube#video.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\",\n \"type\": \"string\"\n },\n - \ \"playlistId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a playlist. - This property is only present if the resourceId.kind value is youtube#playlist.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A resource id is a generic reference that points - to another YouTube resource.\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageAuthorDetails\",\n - \ \"properties\": {\n \"isVerified\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author's identity has been verified - by YouTube.\"\n },\n \"channelUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channel's URL.\"\n },\n - \ \"isChatOwner\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is the owner of the live chat.\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"isChatSponsor\": {\n \"description\": - \"Whether the author is a sponsor of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"isChatModerator\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a moderator - of the live chat.\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The YouTube channel - ID.\",\n \"type\": \"string\"\n }\n }\n },\n \"LiveChatMessage\": - {\n \"description\": \"A *liveChatMessage* resource represents a chat - message in a YouTube Live Chat.\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"LiveChatMessageSnippet\",\n \"description\": - \"The snippet object contains basic details about the message.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"authorDetails\": {\n \"$ref\": - \"LiveChatMessageAuthorDetails\",\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatMessage\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessage\"\n - \ },\n \"VideoLiveStreamingDetails\": {\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"Details about the live streaming metadata.\",\n \"properties\": - {\n \"scheduledStartTime\": {\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast is scheduled to begin.\",\n \"format\": - \"date-time\"\n },\n \"activeLiveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the currently active live - chat attached to this video. This field is filled only if the video is a currently - live broadcast that has live chat. Once the broadcast transitions to complete - this field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\"\n },\n \"actualEndTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - time that the broadcast actually ended. This value will not be available until - the broadcast is over.\",\n \"type\": \"string\"\n },\n \"scheduledEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast is scheduled to end. - If the value is empty or the property is not present, then the broadcast is - scheduled to contiue indefinitely.\"\n },\n \"concurrentViewers\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n },\n - \ \"actualStartTime\": {\n \"description\": \"The time that - the broadcast actually started. This value will not be available until the - broadcast begins.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n }\n },\n \"type\": \"object\"\n },\n \"MemberSnippet\": - {\n \"type\": \"object\",\n \"id\": \"MemberSnippet\",\n \"properties\": - {\n \"creatorChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The id of the channel that's offering memberships.\"\n },\n \"memberDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the member.\"\n },\n \"membershipsDetails\": - {\n \"$ref\": \"MembershipsDetails\",\n \"description\": - \"Details about the user's membership.\"\n }\n }\n },\n \"ChannelLocalization\": - {\n \"properties\": {\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - description.\"\n },\n \"title\": {\n \"description\": - \"The localized strings for channel's title.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Channel - localization setting\",\n \"id\": \"ChannelLocalization\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"id\": \"LiveChatSuperChatDetails\",\n \"properties\": {\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the user to this Super Chat event.\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"tier\": - {\n \"type\": \"integer\",\n \"description\": \"The tier - in which the amount belongs. Lower amounts belong to lower tiers. The lowest - tier is 1.\",\n \"format\": \"uint32\"\n }\n },\n \"type\": - \"object\"\n },\n \"CommentSnippet\": {\n \"description\": \"Basic - details about a comment, such as its author and text.\",\n \"type\": - \"object\",\n \"id\": \"CommentSnippet\",\n \"properties\": {\n - \ \"viewerRating\": {\n \"description\": \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ]\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the comment was originally published.\"\n },\n \"textDisplay\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"moderationStatus\": - {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"parentId\": - {\n \"type\": \"string\",\n \"description\": \"The unique - id of the parent comment, only set for replies.\"\n },\n \"videoId\": - {\n \"description\": \"The ID of the video the comment refers to, - if any.\",\n \"type\": \"string\"\n },\n \"canRate\": - {\n \"description\": \"Whether the current viewer can rate this comment.\",\n - \ \"type\": \"boolean\"\n },\n \"likeCount\": {\n \"description\": - \"The total number of likes this comment has received.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"updatedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was last updated.\"\n - \ },\n \"authorDisplayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the user who posted the comment.\"\n - \ },\n \"textOriginal\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelSettings\": {\n \"id\": - \"ChannelSettings\",\n \"description\": \"Branding properties for the - channel view.\",\n \"type\": \"object\",\n \"properties\": {\n \"showBrowseView\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the tab to browse the videos should be displayed.\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"type\": \"string\",\n \"description\": \"The ID for - a Google Analytics account to track and measure traffic to the channels.\"\n - \ },\n \"title\": {\n \"description\": \"Specifies the - channel title.\",\n \"type\": \"string\"\n },\n \"unsubscribedTrailer\": - {\n \"description\": \"The trailer of the channel, for users that - are not subscribers.\",\n \"type\": \"string\"\n },\n \"moderateComments\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - user-submitted comments left on the channel page need to be approved by the - channel owner to be publicly visible.\"\n },\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"country\": {\n - \ \"type\": \"string\",\n \"description\": \"The country - of the channel.\"\n },\n \"profileColor\": {\n \"type\": - \"string\",\n \"description\": \"A prominent color that can be rendered - on this channel page.\"\n },\n \"featuredChannelsUrls\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The list of featured - channels.\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the channel description.\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\"\n },\n - \ \"defaultTab\": {\n \"type\": \"string\",\n \"description\": - \"Which content tab users should see when viewing the channel.\"\n },\n - \ \"keywords\": {\n \"description\": \"Lists keywords associated - with the channel, comma-separated.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"PlaylistItemContentDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"PlaylistItemContentDetails\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - a video. To retrieve the video resource, set the id query parameter to this - value in your API request.\",\n \"type\": \"string\"\n },\n - \ \"videoPublishedAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the video was published to YouTube.\",\n \"format\": - \"date-time\"\n },\n \"endAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The time, measured in seconds from the start - of the video, when the video should stop playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) By default, assume that the video.endTime - is the end of the video.\"\n },\n \"startAt\": {\n \"type\": - \"string\",\n \"description\": \"The time, measured in seconds from - the start of the video, when the video should start playing. (The playlist - owner can specify the times when the video should start and stop playing when - the video is played in the context of the playlist.) The default value is - 0.\"\n },\n \"note\": {\n \"type\": \"string\",\n \"description\": - \"A user-generated note for this item.\"\n }\n }\n },\n \"I18nLanguage\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#i18nLanguage\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguage\\\".\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the i18n language.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n language, such as language code and human-readable name.\"\n }\n - \ },\n \"description\": \"An *i18nLanguage* resource identifies a - UI language currently supported by YouTube.\",\n \"id\": \"I18nLanguage\"\n - \ },\n \"CaptionListResponse\": {\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Caption\"\n },\n \"description\": - \"A list of captions that match the request criteria.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#captionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#captionListResponse\\\".\"\n }\n },\n - \ \"id\": \"CaptionListResponse\",\n \"type\": \"object\"\n },\n - \ \"ChannelSectionLocalization\": {\n \"id\": \"ChannelSectionLocalization\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The localized - strings for channel section's title.\"\n }\n },\n \"description\": - \"ChannelSection localization setting\"\n },\n \"PlaylistStatus\": {\n - \ \"properties\": {\n \"privacyStatus\": {\n \"description\": - \"The playlist's privacy status.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"id\": \"PlaylistStatus\",\n - \ \"type\": \"object\"\n },\n \"VideoListResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoListResponse\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Video\"\n }\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoListResponse\"\n },\n \"VideoStatistics\": - {\n \"properties\": {\n \"dislikeCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of users who have indicated - that they disliked the video by giving it a negative rating.\",\n \"format\": - \"uint64\"\n },\n \"viewCount\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of times the video has been viewed.\",\n - \ \"format\": \"uint64\"\n },\n \"favoriteCount\": {\n - \ \"description\": \"The number of users who currently have the video - marked as a favorite video.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"likeCount\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of users who have indicated that they - liked the video by giving it a positive rating.\",\n \"format\": - \"uint64\"\n },\n \"commentCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of comments for the video.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\",\n \"type\": \"object\",\n \"id\": \"VideoStatistics\"\n - \ },\n \"ChannelAuditDetails\": {\n \"properties\": {\n \"contentIdClaimsGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any unresolved claims.\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel respects the community guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n }\n },\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\",\n \"type\": \"object\",\n \"id\": - \"ChannelAuditDetails\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"properties\": {\n \"forecastingUrl\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"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.\"\n },\n \"customCtaButtonText\": - {\n \"type\": \"string\",\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\"\n },\n \"destinationUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should direct - the user to, if the user chooses to visit the advertiser's website.\"\n },\n - \ \"adTag\": {\n \"type\": \"string\",\n \"description\": - \"The URL the client should fetch to request a promoted item.\"\n },\n - \ \"descriptionText\": {\n \"description\": \"The text description - to accompany the promoted item.\",\n \"type\": \"string\"\n },\n - \ \"clickTrackingUrl\": {\n \"description\": \"The URL the - client should ping to indicate that the user clicked through on this promoted - item.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\",\n \"type\": \"string\"\n },\n \"creativeViewUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user was shown this promoted item.\"\n - \ },\n \"impressionUrl\": {\n \"description\": \"The - list of impression URLs. The client should ping all of these URLs to indicate - that the user was shown this promoted item.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"ctaType\": {\n \"description\": \"The type of call-to-action, - a message to the user indicating action that can be taken.\",\n \"enum\": - [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Details about a resource which is being - promoted.\",\n \"id\": \"ActivityContentDetailsPromotedItem\"\n },\n - \ \"PlaylistItemListResponse\": {\n \"id\": \"PlaylistItemListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of playlist - items that match the request criteria.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"PlaylistItem\"\n }\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n }\n }\n },\n \"SearchResult\": {\n \"description\": - \"A search result contains information about a YouTube video, channel, or - playlist that matches the search parameters specified in an API request. While - a search result points to a uniquely identifiable resource, like a video, - it does not have its own persistent data.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - id object contains information that can be used to uniquely identify the resource - that matches the search request.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"SearchResultSnippet\",\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\"\n },\n \"kind\": {\n \"default\": \"youtube#searchResult\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ }\n },\n \"id\": \"SearchResult\"\n },\n \"VideoSnippet\": - {\n \"id\": \"VideoSnippet\",\n \"description\": \"Basic details - about a video, including title, description, uploader, thumbnails and category.\",\n - \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"defaultAudioLanguage\": {\n - \ \"type\": \"string\",\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the videos's default snippet.\",\n \"type\": \"string\"\n - \ },\n \"tags\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of keyword tags associated with the video. Tags may contain spaces.\"\n - \ },\n \"categoryId\": {\n \"description\": \"The YouTube - video category associated with the video.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that the video was uploaded - to.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"$ref\": \"VideoLocalization\",\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\"\n - \ },\n \"liveBroadcastContent\": {\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the video - belongs to.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The video's - description. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the video was uploaded.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReport\": - {\n \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n },\n \"language\": {\n \"description\": - \"The language that the content was viewed in.\",\n \"type\": \"string\"\n - \ },\n \"reasonId\": {\n \"type\": \"string\",\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\"\n },\n \"comments\": {\n \"description\": - \"Additional comments regarding the abuse report.\",\n \"type\": - \"string\"\n },\n \"secondaryReasonId\": {\n \"type\": - \"string\",\n \"description\": \"The specific, or secondary, reason - that this content is abusive (if available). The value is an abuse report - reason ID that is a valid secondary reason for the primary reason.\"\n }\n - \ },\n \"id\": \"VideoAbuseReport\",\n \"type\": \"object\"\n - \ },\n \"AccessPolicy\": {\n \"type\": \"object\",\n \"properties\": - {\n \"allowed\": {\n \"type\": \"boolean\",\n \"description\": - \"The value of allowed indicates whether the access to the policy is allowed - or denied by default.\"\n },\n \"exception\": {\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n }\n },\n \"description\": - \"Rights management policy for YouTube resources.\",\n \"id\": \"AccessPolicy\"\n - \ },\n \"LiveChatSuperStickerDetails\": {\n \"id\": \"LiveChatSuperStickerDetails\",\n - \ \"properties\": {\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"description\": \"The amount purchased by the user, - in micros (1,750,000 micros = 1.75).\",\n \"type\": \"string\"\n - \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n },\n \"currency\": - {\n \"description\": \"The currency in which the purchase was made.\",\n - \ \"type\": \"string\"\n },\n \"tier\": {\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n }\n },\n \"type\": \"object\"\n },\n \"CommentThread\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"default\": \"youtube#commentThread\"\n },\n \"replies\": - {\n \"$ref\": \"CommentThreadReplies\",\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the comment thread.\"\n },\n \"snippet\": {\n \"$ref\": - \"CommentThreadSnippet\",\n \"description\": \"The snippet object - contains basic details about the comment thread and also the top level comment.\"\n - \ }\n },\n \"id\": \"CommentThread\",\n \"description\": - \"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.\"\n },\n \"VideoStatus\": {\n \"id\": \"VideoStatus\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title. Next Id: 18\",\n \"type\": \"object\",\n \"properties\": - {\n \"uploadStatus\": {\n \"enumDescriptions\": [\n \"Video - has been uploaded but not processed yet.\",\n \"Video has been - successfully processed.\",\n \"Processing has failed. See FailureReason.\",\n - \ \"Video has been rejected. See RejectionReason.\",\n \"Video - has been deleted.\"\n ],\n \"type\": \"string\",\n \"description\": - \"The status of the uploaded video.\",\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ]\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"publishAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the video is scheduled - to publish. It can be set only if the privacy status of the video is private..\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"rejectionReason\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ],\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\"\n - \ },\n \"license\": {\n \"type\": \"string\",\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's privacy - status.\",\n \"type\": \"string\"\n },\n \"failureReason\": - {\n \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"This value explains why a video failed to upload. - This property is only present if the uploadStatus property indicates that - the upload failed.\",\n \"enumDescriptions\": [\n \"Unable - to convert video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ]\n },\n - \ \"embeddable\": {\n \"type\": \"boolean\",\n \"description\": - \"This value indicates if the video can be embedded on another website. @mutable - youtube.videos.insert youtube.videos.update\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n }\n }\n },\n \"LanguageTag\": - {\n \"id\": \"LanguageTag\",\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"Thumbnail\": {\n \"type\": \"object\",\n \"description\": - \"A thumbnail is an image representing a YouTube resource.\",\n \"properties\": - {\n \"height\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"(Optional) Height of the thumbnail - image.\"\n },\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The thumbnail image's URL.\"\n },\n \"width\": - {\n \"format\": \"uint32\",\n \"description\": \"(Optional) - Width of the thumbnail image.\",\n \"type\": \"integer\"\n }\n - \ },\n \"id\": \"Thumbnail\"\n },\n \"CommentThreadSnippet\": - {\n \"id\": \"CommentThreadSnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a comment thread.\",\n \"properties\": - {\n \"totalReplyCount\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The total number of replies (not - including the top level comment).\"\n },\n \"canReply\": {\n - \ \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comments refer to, if any. No video_id implies a channel discussion - comment.\"\n },\n \"isPublic\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the thread (and therefore all its comments) - is visible to all YouTube users.\"\n },\n \"topLevelComment\": - {\n \"description\": \"The top level comment of this thread.\",\n - \ \"$ref\": \"Comment\"\n },\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"InvideoPosition\": {\n \"properties\": {\n \"cornerPosition\": - {\n \"description\": \"Describes in which corner of the video the - visual widget will appear.\",\n \"enum\": [\n \"topLeft\",\n - \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\"\n - \ ],\n \"description\": \"Defines the position type.\",\n - \ \"enum\": [\n \"corner\"\n ],\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"id\": \"InvideoPosition\"\n },\n \"MonitorStreamInfo\": {\n - \ \"type\": \"object\",\n \"description\": \"Settings and Info of - the monitor stream\",\n \"id\": \"MonitorStreamInfo\",\n \"properties\": - {\n \"embedHtml\": {\n \"description\": \"HTML code that embeds - a player that plays the monitor stream.\",\n \"type\": \"string\"\n - \ },\n \"broadcastStreamDelayMs\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"If you have set - the enableMonitorStream property to true, then this property determines the - length of the live broadcast delay.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"enableMonitorStream\": - {\n \"description\": \"This value determines whether the monitor - stream is enabled for the broadcast. If the monitor stream is enabled, then - YouTube will broadcast the event content on a special stream intended only - for the broadcaster's consumption. The broadcaster can use the stream to review - the event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"boolean\"\n }\n }\n },\n \"PlaylistLocalization\": - {\n \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for playlist's title.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"The localized - strings for playlist's description.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"PlaylistLocalization\",\n \"description\": - \"Playlist localization setting\",\n \"type\": \"object\"\n },\n \"ChannelContentDetails\": - {\n \"properties\": {\n \"relatedPlaylists\": {\n \"properties\": - {\n \"likes\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"watchLater\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s watch later playlist. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"watchHistory\": {\n \"description\": \"The ID of - the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n },\n \"uploads\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use - the videos.insert method to upload new videos and the videos.delete method - to delete previously uploaded videos.\",\n \"type\": \"string\"\n - \ },\n \"favorites\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s favorite videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n }\n },\n \"type\": - \"object\"\n }\n },\n \"description\": \"Details about the - content of a channel.\",\n \"type\": \"object\",\n \"id\": \"ChannelContentDetails\"\n - \ },\n \"ThirdPartyLinkSnippet\": {\n \"id\": \"ThirdPartyLinkSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic information about - a third party account link, including its type and type-specific information.\",\n - \ \"properties\": {\n \"type\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A link - that is connecting (or about to connect) a channel with a store on a merchandising - platform in order to enable retail commerce capabilities for that channel - on YouTube.\"\n ],\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"description\": - \"Type of the link named after the entities that are being linked.\"\n },\n - \ \"channelToStoreLink\": {\n \"description\": \"Information - specific to a link between a channel and a store on a merchandising platform.\",\n - \ \"$ref\": \"ChannelToStoreLinkDetails\"\n }\n }\n },\n - \ \"VideoProjectDetails\": {\n \"type\": \"object\",\n \"id\": - \"VideoProjectDetails\",\n \"properties\": {},\n \"description\": - \"DEPRECATED. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"ActivityContentDetailsBulletin\": {\n \"properties\": {\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"Details about a channel bulletin post.\"\n },\n - \ \"LiveChatTextMessageDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"messageText\": {\n \"type\": \"string\",\n \"description\": - \"The user's message.\"\n }\n },\n \"id\": \"LiveChatTextMessageDetails\"\n - \ },\n \"Entity\": {\n \"id\": \"Entity\",\n \"properties\": - {\n \"typeId\": {\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\"\n },\n \"url\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageListResponse\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"type\": \"array\"\n },\n \"pollingIntervalMillis\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The amount of time the client should wait before polling again.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatMessageListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n - \ },\n \"offlineAt\": {\n \"description\": \"The date - and time when the underlying stream went offline.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatBan\": {\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatBan\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n - \ }\n },\n \"id\": \"LiveChatBan\",\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\",\n - \ \"type\": \"object\"\n },\n \"Cuepoint\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"walltimeMs\": {\n \"type\": \"string\",\n - \ \"description\": \"The wall clock time at which the cuepoint should - be inserted. Only one of insertion_offset_time_ms and walltime_ms may be set - at a time.\",\n \"format\": \"uint64\"\n },\n \"cueType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ]\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The identifier for cuepoint resource.\"\n - \ },\n \"durationSecs\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The duration - of this cuepoint.\"\n },\n \"insertionOffsetTimeMs\": {\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\",\n \"format\": \"int64\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"Cuepoint\",\n \"description\": \"Note - that there may be a 5-second end-point resolution issue. For instance, if - a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\"\n },\n \"Channel\": - {\n \"properties\": {\n \"topicDetails\": {\n \"$ref\": - \"ChannelTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the channel.\"\n - \ },\n \"brandingSettings\": {\n \"$ref\": \"ChannelBrandingSettings\",\n - \ \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channel\"\n - \ },\n \"contentOwnerDetails\": {\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the channel, such as its title, description, - and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n },\n - \ \"auditDetails\": {\n \"description\": \"The auditionDetails - object encapsulates channel data that is relevant for YouTube Partners during - the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel.\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n },\n \"description\": - \"Localizations for different languages\"\n },\n \"status\": - {\n \"$ref\": \"ChannelStatus\",\n \"description\": \"The - status object encapsulates information about the privacy status of the channel.\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n - \ \"description\": \"The contentDetails object encapsulates information - about the channel's content.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"conversionPings\": {\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n }\n - \ },\n \"description\": \"A *channel* resource contains information - about a YouTube channel.\",\n \"id\": \"Channel\",\n \"type\": \"object\"\n - \ },\n \"PlaylistItem\": {\n \"id\": \"PlaylistItem\",\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"type\": - \"object\",\n \"properties\": {\n \"contentDetails\": {\n \"$ref\": - \"PlaylistItemContentDetails\",\n \"description\": \"The contentDetails - object is included in the resource if the included item is a YouTube video. - The object contains additional information about the video.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n \"default\": - \"youtube#playlistItem\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\",\n \"$ref\": \"PlaylistItemStatus\"\n },\n \"snippet\": - {\n \"$ref\": \"PlaylistItemSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the playlist item.\"\n }\n }\n - \ },\n \"ChannelContentOwnerDetails\": {\n \"description\": \"The - contentOwnerDetails object encapsulates channel data that is relevant for - YouTube Partners linked with the channel.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"timeLinked\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the channel was linked to the content owner.\"\n - \ },\n \"contentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the content owner linked to the channel.\"\n - \ }\n },\n \"id\": \"ChannelContentOwnerDetails\"\n },\n - \ \"VideoTopicDetails\": {\n \"properties\": {\n \"relevantTopicIds\": - {\n \"type\": \"array\",\n \"description\": \"Similar to - topic_id, except that these topics are merely relevant to the video. These - are topics that may be mentioned in, or appear in the video. You can retrieve - information about each topic using Freebase Topic API.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicIds\": - {\n \"description\": \"A list of Freebase topic IDs that are centrally - associated with the video. These are topics that are centrally featured in - the video, and it can be said that the video is mainly about each of these. - You can retrieve information about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"topicCategories\": - {\n \"description\": \"A list of Wikipedia URLs that provide a high-level - description of the video's content.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Freebase topic information - related to the video.\",\n \"id\": \"VideoTopicDetails\"\n },\n \"ActivityContentDetails\": - {\n \"properties\": {\n \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"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.\"\n },\n \"playlistItem\": - {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"The playlistItem object contains information about a new playlist item. - This property is only present if the snippet.type is playlistItem.\"\n },\n - \ \"comment\": {\n \"description\": \"The comment object contains - information about a resource that received a comment. This property is only - present if the snippet.type is comment.\",\n \"$ref\": \"ActivityContentDetailsComment\"\n - \ },\n \"upload\": {\n \"description\": \"The upload - object contains information about the uploaded video. This property is only - present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"subscription\": {\n \"description\": \"The - subscription object contains information about a channel that a user subscribed - to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"like\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsLike\"\n - \ },\n \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"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.\"\n },\n \"social\": {\n \"description\": - \"The social object contains details about a social network post. This property - is only present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"promotedItem\": {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\"\n },\n \"recommendation\": {\n \"$ref\": - \"ActivityContentDetailsRecommendation\",\n \"description\": \"The - recommendation object contains information about a recommended resource. This - property is only present if the snippet.type is recommendation.\"\n },\n - \ \"bulletin\": {\n \"description\": \"The bulletin object - contains details about a channel bulletin post. This object is only present - if the snippet.type is bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetails\",\n - \ \"description\": \"Details about the content of an activity: the video - that was shared, the channel that was subscribed to, etc.\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"properties\": {\n \"giftMembershipsLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the level of the gift - memberships purchased by the user. The Level names are defined by the YouTube - channel offering the Membership. In some situations this field isn't filled.\"\n - \ },\n \"giftMembershipsCount\": {\n \"format\": \"int32\",\n - \ \"type\": \"integer\",\n \"description\": \"The number - of gift memberships purchased by the user.\"\n }\n }\n },\n - \ \"VideoRecordingDetails\": {\n \"type\": \"object\",\n \"id\": - \"VideoRecordingDetails\",\n \"description\": \"Recording information - associated with the video.\",\n \"properties\": {\n \"location\": - {\n \"$ref\": \"GeoPoint\",\n \"description\": \"The geolocation - information associated with the video.\"\n },\n \"locationDescription\": - {\n \"type\": \"string\",\n \"description\": \"The text - description of the location where the video was recorded.\"\n },\n - \ \"recordingDate\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the video was recorded.\",\n \"format\": - \"date-time\"\n }\n }\n },\n \"ChannelSectionTargeting\": - {\n \"id\": \"ChannelSectionTargeting\",\n \"properties\": {\n \"countries\": - {\n \"type\": \"array\",\n \"description\": \"The country - the channel section is targeting.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"languages\": {\n \"description\": - \"The language the channel section is targeting.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"regions\": {\n \"description\": \"The region - the channel section is targeting.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"description\": - \"ChannelSection targeting setting.\",\n \"type\": \"object\"\n },\n - \ \"ActivityListResponse\": {\n \"properties\": {\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#activityListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Activity\"\n }\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"visitorId\": {\n \"description\": \"The - visitorId identifies the visitor.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityListResponse\"\n - \ },\n \"ThirdPartyLink\": {\n \"type\": \"object\",\n \"id\": - \"ThirdPartyLink\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource\"\n },\n - \ \"linkingToken\": {\n \"type\": \"string\",\n \"description\": - \"The linking_token identifies a YouTube account and channel with which the - third party account is linked.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n \"default\": - \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n },\n - \ \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The status object contains information about the status of the link.\"\n - \ }\n },\n \"description\": \"A *third party account link* - resource represents a link between a YouTube account or a channel and an account - on a third-party service.\"\n },\n \"ActivityContentDetailsComment\": - {\n \"id\": \"ActivityContentDetailsComment\",\n \"type\": \"object\",\n - \ \"description\": \"Information about a resource that received a comment.\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with the comment.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"VideoCategoryListResponse\": {\n \"id\": \"VideoCategoryListResponse\",\n - \ \"properties\": {\n \"items\": {\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\",\n \"items\": {\n \"$ref\": - \"VideoCategory\"\n },\n \"type\": \"array\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoCategoryListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LocalizedProperty\": {\n - \ \"properties\": {\n \"defaultLanguage\": {\n \"$ref\": - \"LanguageTag\",\n \"description\": \"The language of the default - property.\"\n },\n \"localized\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"LocalizedString\"\n }\n - \ },\n \"default\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LocalizedProperty\",\n \"type\": \"object\"\n - \ },\n \"VideoMonetizationDetails\": {\n \"id\": \"VideoMonetizationDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"access\": - {\n \"description\": \"The value of access indicates whether the - video can be monetized or not.\",\n \"$ref\": \"AccessPolicy\"\n - \ }\n },\n \"description\": \"Details about monetization of - a YouTube Video.\"\n },\n \"LiveChatFanFundingEventDetails\": {\n \"properties\": - {\n \"amountMicros\": {\n \"type\": \"string\",\n \"description\": - \"The amount of the fund.\",\n \"format\": \"uint64\"\n },\n - \ \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the fund was made.\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the user to this fan funding event.\"\n }\n - \ },\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsFavorite\": {\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsFavorite\",\n \"description\": - \"Information about a video that was marked as a favorite video.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that was marked as - a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n }\n },\n - \ \"VideoFileDetailsAudioStream\": {\n \"type\": \"object\",\n \"id\": - \"VideoFileDetailsAudioStream\",\n \"description\": \"Information about - an audio stream.\",\n \"properties\": {\n \"bitrateBps\": {\n - \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The audio stream's bitrate, in bits per second.\"\n },\n \"vendor\": - {\n \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\",\n \"type\": - \"string\"\n },\n \"channelCount\": {\n \"description\": - \"The number of audio channels that the stream contains.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The audio - codec that the stream uses.\"\n }\n }\n },\n \"VideoCategorySnippet\": - {\n \"id\": \"VideoCategorySnippet\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The video - category's title.\"\n },\n \"channelId\": {\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"type\": \"string\",\n \"description\": - \"The YouTube channel that created the video category.\"\n },\n \"assignable\": - {\n \"type\": \"boolean\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\"\n },\n \"ChannelProfileDetails\": {\n \"id\": - \"ChannelProfileDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The channel's display name.\"\n },\n \"channelUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channel's URL.\"\n },\n - \ \"profileImageUrl\": {\n \"description\": \"The channels's - avatar URL.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The YouTube channel ID.\",\n \"type\": - \"string\"\n }\n }\n },\n \"I18nRegion\": {\n \"id\": - \"I18nRegion\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the i18n region.\"\n },\n \"kind\": - {\n \"default\": \"youtube#i18nRegion\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A *i18nRegion* resource identifies a region where - YouTube is available.\"\n },\n \"I18nRegionListResponse\": {\n \"id\": - \"I18nRegionListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"items\": {\n \"description\": \"A list of regions where - YouTube is available. In this map, the i18n region ID is the map key, and - its value is the corresponding i18nRegion resource.\",\n \"items\": - {\n \"$ref\": \"I18nRegion\"\n },\n \"type\": - \"array\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#i18nRegionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelBannerResource\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n \"default\": - \"youtube#channelBannerResource\",\n \"type\": \"string\"\n },\n - \ \"url\": {\n \"description\": \"The URL of this banner image.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A channel banner returned as the response to a channel_banner.insert - call.\",\n \"id\": \"ChannelBannerResource\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"properties\": - {\n \"associatedMembershipGiftingMessageId\": {\n \"description\": - \"The ID of the membership gifting message that is related to this gift membership. - This ID will always refer to a message whose type is 'membershipGiftingEvent'.\",\n - \ \"type\": \"string\"\n },\n \"memberLevelName\": {\n - \ \"type\": \"string\",\n \"description\": \"The name of - the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"gifterChannelId\": {\n \"description\": - \"The ID of the user that made the membership gifting purchase. This matches - the `snippet.authorChannelId` of the associated membership gifting message.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelBrandingSettings\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"hints\": {\n \"description\": - \"Additional experimental branding properties.\",\n \"items\": {\n - \ \"$ref\": \"PropertyValue\"\n },\n \"type\": - \"array\"\n },\n \"watch\": {\n \"description\": \"Branding - properties for the watch page.\",\n \"$ref\": \"WatchSettings\"\n - \ },\n \"channel\": {\n \"$ref\": \"ChannelSettings\",\n - \ \"description\": \"Branding properties for the channel view.\"\n - \ },\n \"image\": {\n \"$ref\": \"ImageSettings\",\n - \ \"description\": \"Branding properties for branding images.\"\n - \ }\n },\n \"id\": \"ChannelBrandingSettings\",\n \"description\": - \"Branding properties of a YouTube channel.\"\n },\n \"PlaylistSnippet\": - {\n \"id\": \"PlaylistSnippet\",\n \"properties\": {\n \"tags\": - {\n \"description\": \"Keyword tags associated with the playlist.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The playlist's description.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"description\": \"The playlist's title.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the playlist.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the playlist was created.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the playlist's default title - and description.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"$ref\": \"PlaylistLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"channelTitle\": - {\n \"description\": \"The channel title of the channel that the - video belongs to.\",\n \"type\": \"string\"\n },\n \"thumbnailVideoId\": - {\n \"description\": \"Note: if the playlist has a custom thumbnail, - this field will not be populated. The video id selected by the user that will - be used as the thumbnail of this playlist. This field defaults to the first - publicly viewable video in the playlist, if: 1. The user has never selected - a video to be the thumbnail of the playlist. 2. The user selects a video to - be the thumbnail, and then removes that video from the playlist. 3. The user - selects a non-owned video to be the thumbnail, but that video becomes private, - or gets deleted.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist. 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.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a playlist, including title, description and thumbnails.\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"description\": \"Information about a new playlist item.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information about the resource that was added to the playlist.\",\n - \ \"$ref\": \"ResourceId\"\n },\n \"playlistId\": {\n - \ \"type\": \"string\",\n \"description\": \"The value that - YouTube uses to uniquely identify the playlist.\"\n },\n \"playlistItemId\": - {\n \"description\": \"ID of the item within the playlist.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"type\": \"object\"\n },\n \"MembershipsLevel\": {\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"MembershipsLevelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the level.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the memberships level.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevel\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"A *membershipsLevel* resource represents an offer made by YouTube creators - for their fans. Users can become members of the channel by joining one of - the available levels. They will provide recurring monetary support and receives - special benefits.\",\n \"type\": \"object\",\n \"id\": \"MembershipsLevel\"\n - \ },\n \"SearchListResponse\": {\n \"id\": \"SearchListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"regionCode\": {\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#searchListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"SearchResult\"\n - \ },\n \"description\": \"Pagination information for token - pagination.\",\n \"type\": \"array\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n }\n },\n \"PlaylistContentDetails\": - {\n \"properties\": {\n \"itemCount\": {\n \"format\": - \"uint32\",\n \"description\": \"The number of videos in the playlist.\",\n - \ \"type\": \"integer\"\n }\n },\n \"id\": \"PlaylistContentDetails\",\n - \ \"type\": \"object\"\n },\n \"MembershipsLevelListResponse\": - {\n \"id\": \"MembershipsLevelListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#membershipsLevelListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of pricing levels offered by a creator - to the fans.\",\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n - \ },\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n }\n },\n \"Playlist\": {\n \"id\": - \"Playlist\",\n \"properties\": {\n \"localizations\": {\n \"description\": - \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"type\": - \"object\"\n },\n \"status\": {\n \"$ref\": \"PlaylistStatus\",\n - \ \"description\": \"The status object contains status information - for the playlist.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistContentDetails\",\n \"description\": \"The contentDetails - object contains information like video count.\"\n },\n \"player\": - {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": \"The - player object contains information that you would use to play the playlist - in an embedded player.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n \"default\": - \"youtube#playlist\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\",\n \"$ref\": \"PlaylistSnippet\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"A *playlist* resource - represents a YouTube playlist. A playlist is a collection of videos that can - be viewed sequentially and shared with other users. A playlist can contain - up to 200 videos, and YouTube does not limit the number of playlists that - each user creates. By default, playlists are publicly visible to other users, - but playlists can be public or private. YouTube also uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": {\n \"type\": - \"object\",\n \"properties\": {\n \"lifeCycleStatus\": {\n \"enum\": - [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's status. The status can be updated - using the API's liveBroadcasts.transition method.\",\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ]\n },\n \"privacyStatus\": - {\n \"description\": \"The broadcast's privacy status. Note that - the broadcast represents exactly one YouTube video, so the privacy settings - are identical to those supported for videos. In addition, you can set this - field by modifying the broadcast resource or by setting the privacyStatus - field of the corresponding video resource.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"madeForKids\": {\n \"description\": - \"Whether the broadcast is made for kids or not, decided by YouTube instead - of the creator. This field is read only.\",\n \"type\": \"boolean\"\n - \ },\n \"liveBroadcastPriority\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Low priority - broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ],\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"description\": \"Priority of the live broadcast event (internal - state).\"\n },\n \"selfDeclaredMadeForKids\": {\n \"description\": - \"This field will be set to True if the creator declares the broadcast to - be kids only: go/live-cw-work.\",\n \"type\": \"boolean\"\n },\n - \ \"recordingStatus\": {\n \"enumDescriptions\": [\n \"No - value or the value is unknown.\",\n \"The recording has not yet - been started.\",\n \"The recording is currently on.\",\n \"The - recording is completed, and cannot be started again.\"\n ],\n \"description\": - \"The broadcast's recording status.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ]\n }\n },\n \"id\": \"LiveBroadcastStatus\",\n - \ \"description\": \"Live broadcast state.\"\n },\n \"LiveChatModerator\": - {\n \"id\": \"LiveChatModerator\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#liveChatModerator\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveChatModeratorSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the moderator.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"A *liveChatModerator* - resource represents a moderator for a YouTube live chat. A chat moderator - has the ability to ban/unban users from a chat, remove message, etc.\"\n },\n - \ \"ChannelConversionPings\": {\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"properties\": {\n \"pings\": {\n \"description\": - \"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.\",\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelConversionPings\"\n },\n \"TokenPagination\": - {\n \"properties\": {},\n \"description\": \"Stub token pagination - template to suppress results.\",\n \"id\": \"TokenPagination\",\n \"type\": - \"object\"\n },\n \"Member\": {\n \"description\": \"A *member* - resource represents a member for a YouTube channel. A member provides recurring - monetary support to a creator and receives special benefits.\",\n \"type\": - \"object\",\n \"id\": \"Member\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"MemberSnippet\",\n \"description\": \"The - snippet object contains basic details about the member.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#member\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#member\\\".\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"Caption\": {\n \"id\": \"Caption\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"default\": \"youtube#caption\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the caption track.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n }\n }\n },\n \"description\": \"A - *caption* resource represents a YouTube caption track. A caption track is - associated with exactly one YouTube video.\",\n \"type\": \"object\"\n - \ },\n \"ThirdPartyLinkListResponse\": {\n \"id\": \"ThirdPartyLinkListResponse\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#thirdPartyLinkListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoAbuseReportReasonSnippet\": {\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\",\n \"properties\": {\n \"secondaryReasons\": - {\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"description\": \"The secondary reasons associated - with this reason, if any are available. (There might be 0 or more.)\",\n \"type\": - \"array\"\n },\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label belonging to this abuse report - reason.\"\n }\n },\n \"id\": \"VideoAbuseReportReasonSnippet\"\n - \ },\n \"I18nLanguageListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"I18nLanguageListResponse\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"I18nLanguage\"\n },\n - \ \"description\": \"A list of supported i18n languages. In this map, - the i18n language ID is the map key, and its value is the corresponding i18nLanguage - resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"CdnSettings\": {\n \"type\": \"object\",\n - \ \"description\": \"Brief description of the live stream cdn settings.\",\n - \ \"properties\": {\n \"resolution\": {\n \"description\": - \"The resolution of the inbound video data.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"240p\",\n \"360p\",\n \"480p\",\n - \ \"720p\",\n \"1080p\",\n \"1440p\",\n \"2160p\",\n - \ \"variable\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"frameRate\": {\n \"enum\": [\n - \ \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The frame rate of the inbound video data.\"\n - \ },\n \"ingestionInfo\": {\n \"description\": \"The - ingestionInfo object contains information that YouTube provides that you need - to transmit your RTMP or HTTP stream to YouTube.\",\n \"$ref\": \"IngestionInfo\"\n - \ },\n \"format\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The format of the video stream that you are sending - to Youtube. \"\n },\n \"ingestionType\": {\n \"description\": - \" The method or protocol used to transmit the video stream.\",\n \"type\": - \"string\",\n \"enum\": [\n \"rtmp\",\n \"dash\",\n - \ \"webrtc\",\n \"hls\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n }\n },\n \"id\": \"CdnSettings\"\n - \ },\n \"LiveChatModeratorListResponse\": {\n \"id\": \"LiveChatModeratorListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"description\": \"A list of moderators that match - the request criteria.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n }\n }\n },\n \"ChannelConversionPing\": - {\n \"description\": \"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.\",\n \"type\": \"object\",\n \"properties\": - {\n \"context\": {\n \"type\": \"string\",\n \"description\": - \"Defines the context of the ping.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ]\n },\n \"conversionUrl\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n }\n },\n \"id\": \"ChannelConversionPing\"\n - \ },\n \"ActivityContentDetailsSocial\": {\n \"id\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"Details about a social network post.\",\n \"properties\": - {\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The name of the social network.\",\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"type\": \"string\"\n },\n \"referenceUrl\": - {\n \"description\": \"The URL of the social network post.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"An image of the post's author.\"\n },\n \"author\": {\n \"type\": - \"string\",\n \"description\": \"The author of the social network - post.\"\n }\n },\n \"type\": \"object\"\n }\n },\n \"parameters\": - {\n \"fields\": {\n \"description\": \"Selector specifying which fields - to include in a partial response.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"uploadType\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Legacy upload protocol for media (e.g. - \\\"media\\\", \\\"multipart\\\").\"\n },\n \"alt\": {\n \"type\": - \"string\",\n \"description\": \"Data format for response.\",\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"location\": \"query\",\n - \ \"default\": \"json\",\n \"enum\": [\n \"json\",\n \"media\",\n - \ \"proto\"\n ]\n },\n \"oauth_token\": {\n \"type\": - \"string\",\n \"description\": \"OAuth 2.0 token for the current user.\",\n - \ \"location\": \"query\"\n },\n \"$.xgafv\": {\n \"enumDescriptions\": - [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"description\": - \"V1 error format.\",\n \"type\": \"string\",\n \"enum\": [\n \"1\",\n - \ \"2\"\n ],\n \"location\": \"query\"\n },\n \"quotaUser\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n - \ },\n \"prettyPrint\": {\n \"default\": \"true\",\n \"location\": - \"query\",\n \"description\": \"Returns response with indentations and - line breaks.\",\n \"type\": \"boolean\"\n },\n \"access_token\": - {\n \"description\": \"OAuth access token.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"upload_protocol\": {\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"callback\": {\n \"type\": - \"string\",\n \"description\": \"JSONP\",\n \"location\": \"query\"\n - \ },\n \"key\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"ownerDomain\": \"google.com\",\n - \ \"title\": \"YouTube Data API v3\",\n \"ownerName\": \"Google\",\n \"kind\": - \"discovery#restDescription\",\n \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"description\": - \"The YouTube Data API v3 is an API that provides access to YouTube data, - such as videos, playlists, and channels.\",\n \"name\": \"youtube\",\n \"batchPath\": - \"batch\",\n \"version\": \"v3\",\n \"resources\": {\n \"liveBroadcasts\": - {\n \"methods\": {\n \"insertCuepoint\": {\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"request\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"response\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [],\n \"description\": - \"Insert cuepoints in a broadcast\",\n \"httpMethod\": \"POST\"\n - \ },\n \"insert\": {\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveBroadcasts\"\n },\n \"bind\": {\n \"id\": - \"youtube.liveBroadcasts.bind\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"streamId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Stream to bind, if not set unbind the current one.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Broadcast to bind to the stream\",\n \"required\": true\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Bind a broadcast to a stream.\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveBroadcasts/bind\",\n \"httpMethod\": \"POST\"\n - \ },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"id\": - \"youtube.liveBroadcasts.list\",\n \"parameters\": {\n \"maxResults\": - {\n \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"default\": \"5\",\n - \ \"minimum\": \"0\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"mine\": {\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"broadcastStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"location\": \"query\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return broadcasts with the given - ids from Stubby or Apiary.\",\n \"repeated\": true\n },\n - \ \"part\": {\n \"description\": \"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, status and statistics.\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"broadcastType\": {\n \"default\": \"event\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return only scheduled event broadcasts.\",\n - \ \"Return only persistent broadcasts.\"\n ],\n - \ \"description\": \"Return only broadcasts with the selected - type.\",\n \"location\": \"query\",\n \"enum\": - [\n \"broadcastTypeFilterUnspecified\",\n \"all\",\n - \ \"event\",\n \"persistent\"\n ],\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"GET\"\n - \ },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.update\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n },\n \"description\": - \"Updates an existing broadcast for the authenticated user.\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\"\n },\n \"delete\": {\n \"description\": - \"Delete a given broadcast.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"required\": - true,\n \"description\": \"Broadcast to delete.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"transition\": {\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"parameters\": {\n \"broadcastStatus\": - {\n \"enum\": [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The - status to which the broadcast is going to transition.\",\n \"location\": - \"query\",\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ]\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to transition.\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"description\": - \"Transition a broadcast to a given status.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/transition\"\n }\n - \ }\n },\n \"subscriptions\": {\n \"methods\": {\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"parameters\": {\n \"forChannelId\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the subscriptions to the subset of - these channels that the authenticated user is subscribed to.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"myRecentSubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"mySubscribers\": - {\n \"description\": \"Return the subscribers of the given channel - owner.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"description\": - \"Return the subscriptions of the given channel owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Flag for returning the subscriptions of the - authenticated user.\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"order\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"location\": \"query\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The order of the returned subscriptions\",\n \"default\": \"relevance\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"description\": \"Return the subscriptions with the given IDs - for Stubby or Apiary.\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"id\": - \"youtube.subscriptions.list\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\"\n },\n \"delete\": {\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/subscriptions\",\n \"id\": - \"youtube.subscriptions.delete\",\n \"description\": \"Deletes a - resource.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"request\": - {\n \"$ref\": \"Subscription\"\n },\n \"path\": - \"youtube/v3/subscriptions\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"id\": - \"youtube.subscriptions.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"activities\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.activities.list\",\n \"path\": - \"youtube/v3/activities\",\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"channelId\": {\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"maxResults\": {\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\"\n },\n \"home\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"publishedBefore\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\"\n },\n \"publishedAfter\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"format\": \"google-datetime\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"liveStreams\": - {\n \"methods\": {\n \"insert\": {\n \"response\": {\n - \ \"$ref\": \"LiveStream\"\n },\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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, - content_details, and status.\",\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new stream for the authenticated - user.\",\n \"id\": \"youtube.liveStreams.insert\",\n \"flatPath\": - \"youtube/v3/liveStreams\"\n },\n \"list\": {\n \"path\": - \"youtube/v3/liveStreams\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.liveStreams.list\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"description\": \"Retrieve the list of streams associated with - the given channel. --\",\n \"response\": {\n \"$ref\": - \"LiveStreamListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"location\": \"query\",\n \"default\": - \"5\",\n \"minimum\": \"0\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return LiveStreams with the given ids from - Stubby or Apiary.\",\n \"repeated\": true\n }\n }\n - \ },\n \"update\": {\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n },\n \"description\": - \"Updates an existing stream for the authenticated user.\",\n \"id\": - \"youtube.liveStreams.update\",\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"httpMethod\": \"PUT\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"delete\": {\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"id\": \"youtube.liveStreams.delete\",\n \"description\": - \"Deletes an existing stream for the authenticated user.\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ]\n }\n }\n },\n \"superChatEvents\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"id\": \"youtube.superChatEvents.list\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"response\": - {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"path\": - \"youtube/v3/superChatEvents\",\n \"parameters\": {\n \"hl\": - {\n \"type\": \"string\",\n \"description\": \"Return - rendered funding amounts in specified language.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the superChatEvent resource parts that the API response will include. This - parameter is currently not supported.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"maxResults\": {\n \"minimum\": \"1\",\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"50\",\n \"default\": \"5\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n }\n }\n }\n }\n },\n \"playlistItems\": - {\n \"methods\": {\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.delete\",\n - \ \"description\": \"Deletes a resource.\"\n },\n \"list\": - {\n \"id\": \"youtube.playlistItems.list\",\n \"parameters\": - {\n \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the playlist items associated with - the given video ID.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"Return the playlist items within - the given playlist.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"0\",\n \"default\": - \"5\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItemListResponse\"\n }\n },\n - \ \"update\": {\n \"description\": \"Updates an existing resource.\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"PUT\",\n \"id\": \"youtube.playlistItems.update\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new resource into this collection.\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"id\": - \"youtube.playlistItems.insert\"\n }\n }\n },\n \"tests\": - {\n \"methods\": {\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.tests.insert\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true\n }\n - \ },\n \"description\": \"POST method.\",\n \"path\": - \"youtube/v3/tests\",\n \"flatPath\": \"youtube/v3/tests\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"response\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"request\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"channels\": - {\n \"methods\": {\n \"update\": {\n \"id\": \"youtube.channels.update\",\n - \ \"description\": \"Updates an existing resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/channels\",\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"request\": {\n - \ \"$ref\": \"Channel\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Channel\"\n }\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"flatPath\": \"youtube/v3/channels\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Return the channels with the specified IDs.\"\n },\n \"forUsername\": - {\n \"type\": \"string\",\n \"description\": \"Return - the channel associated with a YouTube username.\",\n \"location\": - \"query\"\n },\n \"categoryId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the channels within the specified guide category ID.\"\n },\n - \ \"mySubscribers\": {\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Return the channels subscribed - to the authenticated user\"\n },\n \"maxResults\": {\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"hl\": {\n \"description\": \"Stands for \\\"host - language\\\". Specifies the localization language of the metadata to be filled - into snippet.localized. The field is filled with the default metadata if there - is no localization in the specified language. The parameter value must be - a language code included in the list returned by the i18nLanguages.list method - (e.g. en_US, es_MX).\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Return the ids of channels owned by the authenticated - user.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"managedByMe\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the channels managed by the authenticated user.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.channels.list\",\n - \ \"path\": \"youtube/v3/channels\",\n \"response\": {\n - \ \"$ref\": \"ChannelListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n }\n }\n - \ },\n \"channelSections\": {\n \"methods\": {\n \"list\": - {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n - \ \"location\": \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return content in specified language\"\n - \ },\n \"mine\": {\n \"description\": \"Return - the ChannelSections owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.channelSections.list\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"update\": {\n \"id\": \"youtube.channelSections.update\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"description\": \"Updates an existing - resource.\",\n \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"required\": true\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.channelSections.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/channelSections\"\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.insert\",\n \"description\": \"Inserts - a new resource into this collection.\"\n }\n }\n },\n \"comments\": - {\n \"methods\": {\n \"insert\": {\n \"id\": \"youtube.comments.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"Comment\"\n - \ },\n \"path\": \"youtube/v3/comments\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"setModerationStatus\": {\n \"description\": - \"Sets the moderation status of one or more comments.\",\n \"parameters\": - {\n \"moderationStatus\": {\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"banAuthor\": {\n \"default\": - \"false\",\n \"description\": \"If set to true the author of - the comment gets added to the ban list. This means all future comments of - the author will autmomatically be rejected. Only valid in combination with - STATUS_REJECTED.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Modifies the moderation status of the comments with the given IDs\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.comments.setModerationStatus\",\n \"path\": - \"youtube/v3/comments/setModerationStatus\",\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\"\n - \ },\n \"delete\": {\n \"id\": \"youtube.comments.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a resource.\",\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"update\": {\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"path\": \"youtube/v3/comments\",\n \"description\": \"Updates - an existing resource.\",\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.update\",\n \"httpMethod\": - \"PUT\",\n \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true\n }\n - \ }\n },\n \"list\": {\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.comments.list\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - a comma-separated list of one or more comment resource properties that the - API response will include.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true\n },\n \"maxResults\": - {\n \"default\": \"20\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"minimum\": \"1\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"maximum\": \"100\"\n },\n \"parentId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns replies to the specified comment. - Note, currently YouTube features only one level of replies (ie replies to - top level comments). However replies to replies may be supported in the future.\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comments with the given IDs for One Platform.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"textFormat\": - {\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"location\": \"query\",\n \"default\": \"html\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"description\": - \"The requested text format for the returned comments.\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"httpMethod\": \"GET\"\n },\n \"markAsSpam\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"Flags - the comments with the given IDs as spam in the caller's opinion.\"\n }\n - \ },\n \"path\": \"youtube/v3/comments/markAsSpam\",\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.comments.markAsSpam\",\n \"httpMethod\": - \"POST\"\n }\n }\n },\n \"captions\": {\n \"methods\": - {\n \"update\": {\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"PUT\",\n \"supportsMediaUpload\": true,\n - \ \"description\": \"Updates an existing resource.\",\n \"path\": - \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"mediaUpload\": {\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\",\n - \ \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n }\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.captions.update\"\n },\n - \ \"insert\": {\n \"mediaUpload\": {\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"maxSize\": \"104857600\"\n },\n \"supportsMediaUpload\": - true,\n \"path\": \"youtube/v3/captions\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"Caption\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.captions.insert\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameters\": {\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n }\n },\n \"download\": - {\n \"description\": \"Downloads a caption track.\",\n \"supportsMediaDownload\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.captions.download\",\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\",\n \"type\": \"string\"\n - \ },\n \"tfmt\": {\n \"location\": \"query\",\n - \ \"description\": \"Convert the captions into this format. Supported - options are sbv, srt, and vtt.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"required\": true,\n \"location\": - \"path\",\n \"type\": \"string\",\n \"description\": - \"The ID of the caption track to download, required for One Platform.\"\n - \ },\n \"tlang\": {\n \"description\": \"tlang - is the language code; machine translate the captions into this language.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/captions/{id}\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"useMediaDownloadService\": - true,\n \"flatPath\": \"youtube/v3/captions/{id}\"\n },\n - \ \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.captions.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/captions\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is be on behalf of\",\n - \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"list\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n },\n \"id\": - {\n \"description\": \"Returns the captions with the given IDs - for Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"description\": \"Returns the captions for the specified - video.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\"\n },\n \"part\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.captions.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ],\n \"response\": - {\n \"$ref\": \"CaptionListResponse\"\n },\n \"path\": - \"youtube/v3/captions\"\n }\n }\n },\n \"search\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/search\",\n \"id\": - \"youtube.search.list\",\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves a list of search resources\",\n - \ \"parameters\": {\n \"publishedBefore\": {\n \"description\": - \"Filter on resources published before this date.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"format\": - \"google-datetime\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Filter on resources belonging - to this channelId.\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"Restrict results to a particular set of resource types from One Platform.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"channelType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all channels.\",\n \"Only retrieve shows.\"\n ],\n - \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"location\": \"query\",\n - \ \"description\": \"Add a filter on the channel search.\",\n - \ \"type\": \"string\"\n },\n \"videoDuration\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"description\": \"Filter on the duration of the videos.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ]\n },\n \"forMine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Search for the private videos of the authenticated - user.\"\n },\n \"q\": {\n \"description\": - \"Textual search terms to match.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"videoSyndicated\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Filter - on syndicated videos.\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ]\n },\n - \ \"relatedToVideoId\": {\n \"type\": \"string\",\n - \ \"description\": \"Search related to a resource.\",\n \"location\": - \"query\"\n },\n \"relevanceLanguage\": {\n \"description\": - \"Return results relevant to this language.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoEmbeddable\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos, embeddable or not.\",\n \"Only retrieve embeddable - videos.\"\n ],\n \"description\": \"Filter on embeddable - videos.\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ]\n },\n - \ \"order\": {\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"default\": \"relevance\",\n \"description\": - \"Sort order of the results.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ]\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"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.\"\n },\n \"forContentOwner\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Search - owned by a content owner.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"eventType\": {\n \"description\": - \"Filter on the livestream status of the videos.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been - completed.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"locationRadius\": {\n \"type\": \"string\",\n \"description\": - \"Filter on distance from the location (specified above).\",\n \"location\": - \"query\"\n },\n \"forDeveloper\": {\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"videoCaption\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"description\": \"Filter on the presence of captions on the - videos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter results based on caption availability.\",\n - \ \"Only include videos that have captions.\",\n \"Only - include videos that do not have captions.\"\n ]\n },\n - \ \"videoLicense\": {\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Filter on the license of the - videos.\"\n },\n \"videoDimension\": {\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"Include - both 3D and non-3D videos in returned results. This is the default value.\",\n - \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict - search results to only include 3D videos.\"\n ],\n \"description\": - \"Filter on 3d videos.\",\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ],\n \"type\": - \"string\"\n },\n \"videoDefinition\": {\n \"enum\": - [\n \"any\",\n \"standard\",\n \"high\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Filter on the definition of the videos.\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"location\": \"query\"\n - \ },\n \"videoCategoryId\": {\n \"location\": - \"query\",\n \"description\": \"Filter on videos in a specific - category.\",\n \"type\": \"string\"\n },\n \"location\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on location of the video\"\n },\n - \ \"safeSearch\": {\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"moderate\",\n \"location\": \"query\"\n },\n \"topicId\": - {\n \"description\": \"Restrict results to a particular topic.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"videoType\": {\n \"location\": - \"query\",\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"description\": \"Filter on videos of a specific - type.\"\n },\n \"publishedAfter\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"format\": - \"google-datetime\",\n \"description\": \"Filter on resources - published after this date.\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Display the content as seen by viewers in - this country.\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"location\": \"query\",\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"format\": - \"uint32\"\n }\n },\n \"path\": \"youtube/v3/search\",\n - \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ }\n }\n }\n },\n \"playlists\": {\n \"methods\": - {\n \"update\": {\n \"description\": \"Updates an existing - resource.\",\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"httpMethod\": \"PUT\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlists.update\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n }\n },\n \"insert\": {\n \"id\": - \"youtube.playlists.insert\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"delete\": {\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"path\": \"youtube/v3/playlists\",\n - \ \"id\": \"youtube.playlists.delete\",\n \"description\": - \"Deletes a resource.\"\n },\n \"list\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/playlists\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the playlists owned by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"description\": \"Return the - playlists owned by the specified channel ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.playlists.list\"\n }\n }\n },\n - \ \"liveChatMessages\": {\n \"methods\": {\n \"insert\": {\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"path\": \"youtube/v3/liveChat/messages\",\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"id\": - \"youtube.liveChatMessages.insert\",\n \"httpMethod\": \"POST\"\n - \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat message.\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"id\": \"youtube.liveChatMessages.delete\",\n \"path\": - \"youtube/v3/liveChat/messages\"\n },\n \"list\": {\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"parameters\": - {\n \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"minimum\": - \"200\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"2000\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"default\": \"500\"\n },\n \"hl\": {\n - \ \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the system messages should be returned.\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the liveChatComment - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"liveChatId\": {\n \"location\": - \"query\",\n \"description\": \"The id of the live chat for which - comments should be returned.\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"profileImageSize\": {\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"maximum\": - \"720\",\n \"format\": \"uint32\",\n \"minimum\": - \"16\",\n \"description\": \"Specifies the size of the profile - image that should be returned for each user.\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.liveChatMessages.list\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\"\n }\n }\n },\n \"videos\": - {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"VideoListResponse\"\n },\n \"path\": \"youtube/v3/videos\",\n - \ \"id\": \"youtube.videos.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"maxHeight\": - {\n \"type\": \"integer\",\n \"maximum\": \"8192\",\n - \ \"location\": \"query\",\n \"format\": \"int32\",\n - \ \"minimum\": \"72\"\n },\n \"maxWidth\": - {\n \"description\": \"Return the player with maximum height - specified in\",\n \"maximum\": \"8192\",\n \"format\": - \"int32\",\n \"minimum\": \"72\",\n \"type\": \"integer\",\n - \ \"location\": \"query\"\n },\n \"regionCode\": - {\n \"description\": \"Use a chart that is specific to the specified - region\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n },\n - \ \"videoCategoryId\": {\n \"type\": \"string\",\n - \ \"description\": \"Use chart that is specific to the specified - video category\",\n \"default\": \"0\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"myRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"description\": \"Return videos - liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\"\n - \ },\n \"locale\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Return videos with the given ids.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n - \ },\n \"maxResults\": {\n \"description\": - \"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.\",\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"minimum\": \"1\",\n \"default\": \"5\",\n - \ \"format\": \"uint32\"\n },\n \"chart\": - {\n \"description\": \"Return the videos that are in the specified - chart.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ]\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"id\": \"youtube.videos.delete\",\n \"description\": \"Deletes - a resource.\",\n \"flatPath\": \"youtube/v3/videos\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/videos\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n }\n },\n \"rate\": {\n \"path\": - \"youtube/v3/videos/rate\",\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Adds a like or dislike rating to - a video or removes a rating from a video.\",\n \"id\": \"youtube.videos.rate\",\n - \ \"flatPath\": \"youtube/v3/videos/rate\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"rating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"location\": \"query\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"required\": - true,\n \"type\": \"string\"\n }\n }\n },\n - \ \"update\": {\n \"path\": \"youtube/v3/videos\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"response\": {\n \"$ref\": \"Video\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.videos.update\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\"\n },\n \"getRating\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos/getRating\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Retrieves the ratings - that the authorized user gave to a list of specified videos.\",\n \"path\": - \"youtube/v3/videos/getRating\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"id\": \"youtube.videos.getRating\"\n },\n - \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ }\n },\n \"maxSize\": \"274877906944\"\n - \ },\n \"response\": {\n \"$ref\": \"Video\"\n - \ },\n \"id\": \"youtube.videos.insert\",\n \"path\": - \"youtube/v3/videos\",\n \"parameters\": {\n \"notifySubscribers\": - {\n \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\",\n \"location\": - \"query\",\n \"default\": \"true\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"stabilize\": - {\n \"location\": \"query\",\n \"description\": - \"Should stabilize be applied to the upload.\",\n \"type\": \"boolean\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"autoLevels\": {\n \"description\": - \"Should auto-levels be applied to the upload.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/videos\",\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"supportsMediaUpload\": - true\n },\n \"reportAbuse\": {\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Report abuse for a video.\",\n \"parameterOrder\": - [],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.videos.reportAbuse\",\n - \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n }\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n - \ \"path\": \"youtube/v3/i18nLanguages\",\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - i18nLanguage resource properties that the API response will include. Set the - parameter value to snippet.\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"default\": \"en_US\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"GET\"\n - \ }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"request\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"supportsMediaUpload\": - true,\n \"parameterOrder\": [],\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"id\": \"youtube.channelBanners.insert\",\n \"httpMethod\": - \"POST\",\n \"mediaUpload\": {\n \"maxSize\": \"6291456\",\n - \ \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ }\n }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": - \"en-US\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Returns the video categories - with the given IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"part\": {\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"VideoCategoryListResponse\"\n },\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"id\": \"youtube.videoCategories.list\"\n }\n }\n },\n - \ \"i18nRegions\": {\n \"methods\": {\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/i18nRegions\",\n \"response\": {\n - \ \"$ref\": \"I18nRegionListResponse\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the i18nRegion - resource properties that the API response will include. Set the parameter - value to snippet.\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"default\": \"en_US\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/i18nRegions\",\n \"id\": \"youtube.i18nRegions.list\"\n - \ }\n }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"repeated\": true,\n \"required\": - true\n },\n \"hl\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"default\": \"en-US\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"liveChatModerators\": {\n \"methods\": {\n \"list\": - {\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the liveChatModerator resource parts that the API response will include. Supported - values are id and snippet.\",\n \"required\": true\n },\n - \ \"liveChatId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"The id of the live chat for which - moderators should be returned.\",\n \"required\": true\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"id\": \"youtube.liveChatModerators.list\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"response\": {\n \"$ref\": - \"LiveChatModeratorListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"insert\": - {\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"response\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"delete\": {\n \"id\": \"youtube.liveChatModerators.delete\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"description\": - \"Deletes a chat moderator.\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"thumbnails\": {\n \"methods\": - {\n \"set\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n - \ \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"parameters\": {\n \"videoId\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"mediaUpload\": {\n \"maxSize\": - \"2097152\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"resumable\": {\n \"multipart\": true,\n - \ \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"description\": - \"As this is not an insert in a strict sense (it supports uploading/setting - of a thumbnail for multiple videos, which doesn't result in creation of a - single resource), I use a custom verb here.\",\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"flatPath\": \"youtube/v3/thumbnails/set\",\n \"id\": - \"youtube.thumbnails.set\"\n }\n }\n },\n \"thirdPartyLinks\": - {\n \"methods\": {\n \"update\": {\n \"response\": {\n - \ \"$ref\": \"ThirdPartyLink\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API request and response will include. - Supported values are linkingToken, status, and snippet.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"delete\": {\n - \ \"id\": \"youtube.thirdPartyLinks.delete\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a resource.\",\n \"parameters\": {\n \"linkingToken\": - {\n \"required\": true,\n \"description\": \"Delete - the partner links with the given linking token.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Do not - use. Required for compatibility.\"\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"type\": {\n \"description\": - \"Type of the link to be deleted.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"type\": \"string\",\n - \ \"required\": true,\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ]\n }\n },\n - \ \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n - \ ],\n \"path\": \"youtube/v3/thirdPartyLinks\"\n },\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"description\": - \"Get a third party link of the given type.\",\n \"enum\": [\n - \ \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"linkingToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Get a third party link with the given linking token.\"\n }\n - \ },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.list\",\n - \ \"httpMethod\": \"GET\"\n },\n \"insert\": {\n \"parameters\": - {\n \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\",\n \"location\": \"query\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.thirdPartyLinks.insert\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\"\n - \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true\n }\n },\n - \ \"parameterOrder\": [],\n \"httpMethod\": \"PUT\",\n - \ \"path\": \"youtube/v3/commentThreads\"\n }\n }\n - \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.members.list\",\n \"path\": \"youtube/v3/members\",\n \"flatPath\": - \"youtube/v3/members\",\n \"parameters\": {\n \"filterByMemberChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"maximum\": \"1000\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"location\": \"query\"\n },\n \"mode\": - {\n \"description\": \"Parameter that specifies which channel - members to return.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"all_current\",\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"enum\": - [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ]\n },\n \"hasAccessToLevel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter members in the results set to the - ones that have access to a level.\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the member resource parts that the API response will include. - Set the parameter value to snippet.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of members that match the request criteria for a channel.\",\n - \ \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ }\n }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"description\": \"Retrieves a list of all pricing - levels offered by a creator to the fans.\",\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the membershipsLevel resource parts that the API - response will include. Supported values are id and snippet.\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.membershipsLevels.list\"\n }\n }\n },\n \"watermarks\": - {\n \"methods\": {\n \"set\": {\n \"supportsMediaUpload\": - true,\n \"path\": \"youtube/v3/watermarks/set\",\n \"id\": - \"youtube.watermarks.set\",\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"parameters\": {\n \"channelId\": {\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"mediaUpload\": {\n \"maxSize\": \"10485760\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"description\": \"Allows upload of watermark image and setting - it for a channel.\",\n \"flatPath\": \"youtube/v3/watermarks/set\"\n - \ },\n \"unset\": {\n \"parameters\": {\n \"channelId\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"path\": \"youtube/v3/watermarks/unset\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.watermarks.unset\",\n \"description\": - \"Allows removal of channel watermark.\"\n }\n }\n },\n \"abuseReports\": - {\n \"methods\": {\n \"insert\": {\n \"flatPath\": \"youtube/v3/abuseReports\",\n - \ \"id\": \"youtube.abuseReports.insert\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/abuseReports\",\n \"request\": {\n - \ \"$ref\": \"AbuseReport\"\n },\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ }\n }\n },\n \"liveChatBans\": {\n \"methods\": {\n - \ \"delete\": {\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"description\": - \"Deletes a chat ban.\",\n \"httpMethod\": \"DELETE\",\n \"id\": - \"youtube.liveChatBans.delete\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.liveChatBans.insert\",\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n }\n - \ }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"insert\": {\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"id\": \"youtube.commentThreads.insert\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"flatPath\": - \"youtube/v3/commentThreads\"\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"CommentThreadListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"allThreadsRelatedToChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of all videos of the channel and the channel - comments as well.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"Returns the comment - threads of the specified video.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"order\": - {\n \"enumDescriptions\": [\n \"\",\n \"Order - by time.\",\n \"Order by relevance.\"\n ],\n \"default\": - \"time\",\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"moderationStatus\": {\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"description\": \"Limits the returned comment threads to those - with the specified moderation status. Not compatible with the 'id' filter. - Valid values: published, heldForReview, likelySpam.\",\n \"default\": - \"published\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"textFormat\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"description\": \"The requested text format for the returned - comments.\",\n \"default\": \"html\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"id\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Returns - the comment threads with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"searchTerms\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"minimum\": \"1\",\n - \ \"location\": \"query\",\n \"maximum\": \"100\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"default\": \"20\"\n }\n - \ },\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.commentThreads.list\",\n - \ \"path\": \"youtube/v3/commentThreads\"\n }\n }\n }\n - \ },\n \"servicePath\": \"\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:36 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCGzOtu1tlrOeq_-jXzV-Fng&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"Lh4HwWDWCbDyI86GYt1MjLHavMA\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"mMK0H1sg4kODXs8QU4N2qsg3dYY\",\n \"id\": \"UCGzOtu1tlrOeq_-jXzV-Fng\",\n - \ \"snippet\": {\n \"title\": \"CRYPTUS \",\n \"description\": - \"\u041A\u0430\u043A \u0437\u0430\u0440\u0430\u0431\u043E\u0442\u0430\u0442\u044C - \u043D\u0430 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0435? - \u0412\u044B \u043D\u0430\u0445\u043E\u0434\u0438\u0442\u0435\u0441\u044C - \u0432 \u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u043E\u043C \u043C\u0435\u0441\u0442\u0435, - \u0435\u0441\u043B\u0438 \u0437\u0430\u0434\u0430\u043B\u0438 \u0441\u0435\u0431\u0435 - \u044D\u0442\u043E\u0442 \u0432\u043E\u043F\u0440\u043E\u0441. \u0418\u043D\u0432\u0435\u0441\u0442\u0438\u0446\u0438\u0438 - \u0432 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0443, - \u0437\u0430\u0440\u0430\u0431\u043E\u0442\u043E\u043A \u043D\u0430 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0435 - - \u0432 \u0441\u043A\u043E\u0440\u043E\u043C \u0432\u0440\u0435\u043C\u0435\u043D\u0438 - \u0432\u044B \u0438\u0437\u0443\u0447\u0438\u0442\u0435 \u0432\u0441\u0435 - \u043F\u0440\u043E \u044D\u0442\u0438 \u0442\u0435\u043C\u044B.\\n\\n\u041F\u043E\u0434\u043F\u0438\u0448\u0438\u0442\u0435\u0441\u044C - \u043D\u0430 \u043A\u0430\u043D\u0430\u043B \u0438 \u0443\u0437\u043D\u0430\u0439\u0442\u0435:\\n\\n- - \u043A\u0430\u043A \u043A\u0443\u043F\u0438\u0442\u044C \u0441\u0432\u043E\u0439 - \u043F\u0435\u0440\u0432\u044B\u0439 \u0431\u0438\u0442\u043A\u043E\u0438\u043D\\n- - \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0430 2022 - - \u0442\u0440\u0435\u043D\u0434\u044B \u0437\u0430\u0440\u0430\u0431\u043E\u0442\u043A\u0430\\n- - \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0430 \u0434\u043B\u044F - \u043D\u0430\u0447\u0438\u043D\u0430\u044E\u0449\u0438\u0445 - \u0432\u0441\u0435, - \u0447\u0442\u043E \u043D\u0443\u0436\u043D\u043E \u0437\u043D\u0430\u0442\u044C\\n- - \u043D\u043E\u0432\u043E\u0441\u0442\u0438 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\\n- - \u043A\u0430\u043A\u0438\u0435 \u0430\u043B\u044C\u0442\u043A\u043E\u0438\u043D\u044B - \u043A\u0443\u043F\u0438\u0442\u044C \u043D\u0430 \u0434\u043E\u043B\u0433\u043E\u0441\u0440\u043E\u043A\\n- - \u0447\u0442\u043E \u0442\u0430\u043A\u043E\u0435 \u043A\u0440\u0438\u043F\u0442\u0430 - \u0412\u041E\u041E\u0411\u0429\u0415 \u0438 \u043A\u0430\u043A \u0440\u0430\u0431\u043E\u0442\u0430\u0435\u0442 - \u0442\u0435\u0445\u043D\u043E\u043B\u043E\u0433\u0438\u044F \u0431\u043B\u043E\u043A\u0447\u0435\u0439\u043D\\n- - \u043A\u0430\u043A \u043D\u0430\u0441\u0442\u0440\u043E\u0438\u0442\u044C - Metamask \u043A\u043E\u0448\u0435\u043B\u0435\u043A, Metamask \u043A\u0430\u043A - \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C\u0441\u044F\\n- - \u043A\u0430\u043A \u043A\u0443\u043F\u0438\u0442\u044C \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0443 - Binance, \u0431\u0438\u043D\u0430\u043D\u0441 \u0434\u043B\u044F \u043D\u043E\u0432\u0438\u0447\u043A\u043E\u0432\\n\\n\u041F\u043E\u0434\u043F\u0438\u0441\u044B\u0432\u0430\u0439\u0442\u0435\u0441\u044C - \u0442\u0430\u043A\u0436\u0435 \u043D\u0430 \u043D\u0430\u0448 Telegram - - \u0442\u0430\u043C \u043C\u044B \u043A\u0430\u0436\u0434\u044B\u0439 \u0434\u0435\u043D\u044C - \u0434\u0435\u043B\u0438\u043C\u0441\u044F \u043F\u043E\u043B\u0435\u0437\u043D\u043E\u0439 - \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u0435\u0439 \u043F\u0440\u043E - \u0437\u0430\u0440\u0430\u0431\u043E\u0442\u043E\u043A \u043D\u0430 \u043A\u0440\u0438\u043F\u0442\u0435: - https://t.me/CRYPTUS_MEDIA\\n\\n\u0422\u0430\u043A \u0436\u0435 \u0438\u0449\u0435\u0442\u0435 - \u043D\u0430\u0441 \u0442\u0443\u0442:\\n\U0001F4E2 Telegram \u0427\u0430\u0442: - https://t.me/CRYPTUS_CHAT\\n\U0001F54A Twitter: https://twitter.com/CryptusMedia\\n\\n\U0001F60E - \u0417\u0430\u043A\u0440\u044B\u0442\u043E\u0435 \u043A\u043E\u043C\u044C\u044E\u043D\u0438\u0442\u0438 - CRYPTUS UNION: https://www.notion.so/cryptusunion/CryptusUnion-f38464ae0c974779878a8922e9d23ad3\\n\",\n - \ \"customUrl\": \"@cryptusmedia\",\n \"publishedAt\": \"2021-03-12T21:14:22.233196Z\",\n - \ \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/a78U2XVsdik38WbqAvKKqAl08ob3R75ipG4mynoIaR6lyRG4VzfHLWMXFKnkAc1dRyuAn2f3lQ=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/a78U2XVsdik38WbqAvKKqAl08ob3R75ipG4mynoIaR6lyRG4VzfHLWMXFKnkAc1dRyuAn2f3lQ=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/a78U2XVsdik38WbqAvKKqAl08ob3R75ipG4mynoIaR6lyRG4VzfHLWMXFKnkAc1dRyuAn2f3lQ=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"CRYPTUS \",\n \"description\": - \"\u041A\u0430\u043A \u0437\u0430\u0440\u0430\u0431\u043E\u0442\u0430\u0442\u044C - \u043D\u0430 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0435? - \u0412\u044B \u043D\u0430\u0445\u043E\u0434\u0438\u0442\u0435\u0441\u044C - \u0432 \u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u043E\u043C \u043C\u0435\u0441\u0442\u0435, - \u0435\u0441\u043B\u0438 \u0437\u0430\u0434\u0430\u043B\u0438 \u0441\u0435\u0431\u0435 - \u044D\u0442\u043E\u0442 \u0432\u043E\u043F\u0440\u043E\u0441. \u0418\u043D\u0432\u0435\u0441\u0442\u0438\u0446\u0438\u0438 - \u0432 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0443, - \u0437\u0430\u0440\u0430\u0431\u043E\u0442\u043E\u043A \u043D\u0430 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0435 - - \u0432 \u0441\u043A\u043E\u0440\u043E\u043C \u0432\u0440\u0435\u043C\u0435\u043D\u0438 - \u0432\u044B \u0438\u0437\u0443\u0447\u0438\u0442\u0435 \u0432\u0441\u0435 - \u043F\u0440\u043E \u044D\u0442\u0438 \u0442\u0435\u043C\u044B.\\n\\n\u041F\u043E\u0434\u043F\u0438\u0448\u0438\u0442\u0435\u0441\u044C - \u043D\u0430 \u043A\u0430\u043D\u0430\u043B \u0438 \u0443\u0437\u043D\u0430\u0439\u0442\u0435:\\n\\n- - \u043A\u0430\u043A \u043A\u0443\u043F\u0438\u0442\u044C \u0441\u0432\u043E\u0439 - \u043F\u0435\u0440\u0432\u044B\u0439 \u0431\u0438\u0442\u043A\u043E\u0438\u043D\\n- - \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0430 2022 - - \u0442\u0440\u0435\u043D\u0434\u044B \u0437\u0430\u0440\u0430\u0431\u043E\u0442\u043A\u0430\\n- - \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0430 \u0434\u043B\u044F - \u043D\u0430\u0447\u0438\u043D\u0430\u044E\u0449\u0438\u0445 - \u0432\u0441\u0435, - \u0447\u0442\u043E \u043D\u0443\u0436\u043D\u043E \u0437\u043D\u0430\u0442\u044C\\n- - \u043D\u043E\u0432\u043E\u0441\u0442\u0438 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\\n- - \u043A\u0430\u043A\u0438\u0435 \u0430\u043B\u044C\u0442\u043A\u043E\u0438\u043D\u044B - \u043A\u0443\u043F\u0438\u0442\u044C \u043D\u0430 \u0434\u043E\u043B\u0433\u043E\u0441\u0440\u043E\u043A\\n- - \u0447\u0442\u043E \u0442\u0430\u043A\u043E\u0435 \u043A\u0440\u0438\u043F\u0442\u0430 - \u0412\u041E\u041E\u0411\u0429\u0415 \u0438 \u043A\u0430\u043A \u0440\u0430\u0431\u043E\u0442\u0430\u0435\u0442 - \u0442\u0435\u0445\u043D\u043E\u043B\u043E\u0433\u0438\u044F \u0431\u043B\u043E\u043A\u0447\u0435\u0439\u043D\\n- - \u043A\u0430\u043A \u043D\u0430\u0441\u0442\u0440\u043E\u0438\u0442\u044C - Metamask \u043A\u043E\u0448\u0435\u043B\u0435\u043A, Metamask \u043A\u0430\u043A - \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C\u0441\u044F\\n- - \u043A\u0430\u043A \u043A\u0443\u043F\u0438\u0442\u044C \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0443 - Binance, \u0431\u0438\u043D\u0430\u043D\u0441 \u0434\u043B\u044F \u043D\u043E\u0432\u0438\u0447\u043A\u043E\u0432\\n\\n\u041F\u043E\u0434\u043F\u0438\u0441\u044B\u0432\u0430\u0439\u0442\u0435\u0441\u044C - \u0442\u0430\u043A\u0436\u0435 \u043D\u0430 \u043D\u0430\u0448 Telegram - - \u0442\u0430\u043C \u043C\u044B \u043A\u0430\u0436\u0434\u044B\u0439 \u0434\u0435\u043D\u044C - \u0434\u0435\u043B\u0438\u043C\u0441\u044F \u043F\u043E\u043B\u0435\u0437\u043D\u043E\u0439 - \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u0435\u0439 \u043F\u0440\u043E - \u0437\u0430\u0440\u0430\u0431\u043E\u0442\u043E\u043A \u043D\u0430 \u043A\u0440\u0438\u043F\u0442\u0435: - https://t.me/CRYPTUS_MEDIA\\n\\n\u0422\u0430\u043A \u0436\u0435 \u0438\u0449\u0435\u0442\u0435 - \u043D\u0430\u0441 \u0442\u0443\u0442:\\n\U0001F4E2 Telegram \u0427\u0430\u0442: - https://t.me/CRYPTUS_CHAT\\n\U0001F54A Twitter: https://twitter.com/CryptusMedia\\n\\n\U0001F60E - \u0417\u0430\u043A\u0440\u044B\u0442\u043E\u0435 \u043A\u043E\u043C\u044C\u044E\u043D\u0438\u0442\u0438 - CRYPTUS UNION: https://www.notion.so/cryptusunion/CryptusUnion-f38464ae0c974779878a8922e9d23ad3\\n\"\n - \ },\n \"country\": \"RU\"\n },\n \"brandingSettings\": - {\n \"channel\": {\n \"title\": \"CRYPTUS \",\n \"description\": - \"\u041A\u0430\u043A \u0437\u0430\u0440\u0430\u0431\u043E\u0442\u0430\u0442\u044C - \u043D\u0430 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0435? - \u0412\u044B \u043D\u0430\u0445\u043E\u0434\u0438\u0442\u0435\u0441\u044C - \u0432 \u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u043E\u043C \u043C\u0435\u0441\u0442\u0435, - \u0435\u0441\u043B\u0438 \u0437\u0430\u0434\u0430\u043B\u0438 \u0441\u0435\u0431\u0435 - \u044D\u0442\u043E\u0442 \u0432\u043E\u043F\u0440\u043E\u0441. \u0418\u043D\u0432\u0435\u0441\u0442\u0438\u0446\u0438\u0438 - \u0432 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0443, - \u0437\u0430\u0440\u0430\u0431\u043E\u0442\u043E\u043A \u043D\u0430 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0435 - - \u0432 \u0441\u043A\u043E\u0440\u043E\u043C \u0432\u0440\u0435\u043C\u0435\u043D\u0438 - \u0432\u044B \u0438\u0437\u0443\u0447\u0438\u0442\u0435 \u0432\u0441\u0435 - \u043F\u0440\u043E \u044D\u0442\u0438 \u0442\u0435\u043C\u044B.\\n\\n\u041F\u043E\u0434\u043F\u0438\u0448\u0438\u0442\u0435\u0441\u044C - \u043D\u0430 \u043A\u0430\u043D\u0430\u043B \u0438 \u0443\u0437\u043D\u0430\u0439\u0442\u0435:\\n\\n- - \u043A\u0430\u043A \u043A\u0443\u043F\u0438\u0442\u044C \u0441\u0432\u043E\u0439 - \u043F\u0435\u0440\u0432\u044B\u0439 \u0431\u0438\u0442\u043A\u043E\u0438\u043D\\n- - \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0430 2022 - - \u0442\u0440\u0435\u043D\u0434\u044B \u0437\u0430\u0440\u0430\u0431\u043E\u0442\u043A\u0430\\n- - \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0430 \u0434\u043B\u044F - \u043D\u0430\u0447\u0438\u043D\u0430\u044E\u0449\u0438\u0445 - \u0432\u0441\u0435, - \u0447\u0442\u043E \u043D\u0443\u0436\u043D\u043E \u0437\u043D\u0430\u0442\u044C\\n- - \u043D\u043E\u0432\u043E\u0441\u0442\u0438 \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\\n- - \u043A\u0430\u043A\u0438\u0435 \u0430\u043B\u044C\u0442\u043A\u043E\u0438\u043D\u044B - \u043A\u0443\u043F\u0438\u0442\u044C \u043D\u0430 \u0434\u043E\u043B\u0433\u043E\u0441\u0440\u043E\u043A\\n- - \u0447\u0442\u043E \u0442\u0430\u043A\u043E\u0435 \u043A\u0440\u0438\u043F\u0442\u0430 - \u0412\u041E\u041E\u0411\u0429\u0415 \u0438 \u043A\u0430\u043A \u0440\u0430\u0431\u043E\u0442\u0430\u0435\u0442 - \u0442\u0435\u0445\u043D\u043E\u043B\u043E\u0433\u0438\u044F \u0431\u043B\u043E\u043A\u0447\u0435\u0439\u043D\\n- - \u043A\u0430\u043A \u043D\u0430\u0441\u0442\u0440\u043E\u0438\u0442\u044C - Metamask \u043A\u043E\u0448\u0435\u043B\u0435\u043A, Metamask \u043A\u0430\u043A - \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C\u0441\u044F\\n- - \u043A\u0430\u043A \u043A\u0443\u043F\u0438\u0442\u044C \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0443 - Binance, \u0431\u0438\u043D\u0430\u043D\u0441 \u0434\u043B\u044F \u043D\u043E\u0432\u0438\u0447\u043A\u043E\u0432\\n\\n\u041F\u043E\u0434\u043F\u0438\u0441\u044B\u0432\u0430\u0439\u0442\u0435\u0441\u044C - \u0442\u0430\u043A\u0436\u0435 \u043D\u0430 \u043D\u0430\u0448 Telegram - - \u0442\u0430\u043C \u043C\u044B \u043A\u0430\u0436\u0434\u044B\u0439 \u0434\u0435\u043D\u044C - \u0434\u0435\u043B\u0438\u043C\u0441\u044F \u043F\u043E\u043B\u0435\u0437\u043D\u043E\u0439 - \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u0435\u0439 \u043F\u0440\u043E - \u0437\u0430\u0440\u0430\u0431\u043E\u0442\u043E\u043A \u043D\u0430 \u043A\u0440\u0438\u043F\u0442\u0435: - https://t.me/CRYPTUS_MEDIA\\n\\n\u0422\u0430\u043A \u0436\u0435 \u0438\u0449\u0435\u0442\u0435 - \u043D\u0430\u0441 \u0442\u0443\u0442:\\n\U0001F4E2 Telegram \u0427\u0430\u0442: - https://t.me/CRYPTUS_CHAT\\n\U0001F54A Twitter: https://twitter.com/CryptusMedia\\n\\n\U0001F60E - \u0417\u0430\u043A\u0440\u044B\u0442\u043E\u0435 \u043A\u043E\u043C\u044C\u044E\u043D\u0438\u0442\u0438 - CRYPTUS UNION: https://www.notion.so/cryptusunion/CryptusUnion-f38464ae0c974779878a8922e9d23ad3\\n\",\n - \ \"keywords\": \"\u041A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0430 - \u043A\u0440\u0438\u043F\u0442\u0430 \u0442\u043E\u043A\u0435\u043D \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0430 - \\\"\u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0430 - \u043A\u0430\u043A \u0437\u0430\u0440\u0430\u0431\u043E\u0442\u0430\u0442\u044C\\\" - \\\"\u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0430 - 2022\\\" \\\"\u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0430 - \u0447\u0442\u043E \u044D\u0442\u043E\\\" \\\"\u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0430 - \u043E\u0431\u0443\u0447\u0435\u043D\u0438\u0435\\\" \\\"defi \u0447\u0442\u043E - \u044D\u0442\u043E\\\" \\\"defi \u043F\u0440\u043E\u0435\u043A\u0442\u044B\\\" - \\\"defi \u043A\u0430\u043A \u0437\u0430\u0440\u0430\u0431\u043E\u0442\u0430\u0442\u044C\\\" - \\\"\u0431\u0438\u0442\u043A\u043E\u0438\u043D \u0447\u0442\u043E \u044D\u0442\u043E\\\" - \u0431\u0438\u0442\u043A\u043E\u0438\u043D \\\"\u0431\u0438\u0442\u043A\u043E\u0438\u043D - \u0437\u0430\u0440\u0430\u0431\u043E\u0442\u043E\u043A\\\" \\\"\u0431\u0438\u0442\u043A\u043E\u0438\u043D - \u043A\u0430\u043A \u0437\u0430\u0440\u0430\u0431\u043E\u0442\u0430\u0442\u044C\\\" - \\\"\u043F\u0440\u0435\u0441\u0435\u0439\u043B \u043C\u043E\u043D\u0435\u0442\\\" - \\\"\u043F\u0440\u0435\u0441\u0435\u0439\u043B \u043A\u0440\u0438\u043F\u0442\u043E\u0432\u0430\u043B\u044E\u0442\u0430\\\" - \u0431\u043B\u043E\u043A\u0447\u0435\u0439\u043D\",\n \"unsubscribedTrailer\": - \"NOl_HzQ6Gx0\",\n \"country\": \"RU\"\n },\n \"image\": - {\n \"bannerExternalUrl\": \"https://yt3.googleusercontent.com/KyikmvB6pXDS5knhkuqn2SsgKU51ENoWWG4pOcL4kLXazhPkTsMz9hNZefnIFYEI36C0-wXyag\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:36 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"id\": \"youtube:v3\",\n \"ownerName\": \"Google\",\n \"kind\": - \"discovery#restDescription\",\n \"basePath\": \"\",\n \"title\": \"YouTube - Data API v3\",\n \"schemas\": {\n \"AbuseReport\": {\n \"properties\": - {\n \"description\": {\n \"type\": \"string\"\n },\n - \ \"subject\": {\n \"$ref\": \"Entity\"\n },\n \"abuseTypes\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"AbuseType\"\n }\n },\n \"relatedEntities\": {\n \"items\": - {\n \"$ref\": \"RelatedEntity\"\n },\n \"type\": - \"array\"\n }\n },\n \"id\": \"AbuseReport\",\n \"type\": - \"object\"\n },\n \"MembershipsLevelListResponse\": {\n \"type\": - \"object\",\n \"id\": \"MembershipsLevelListResponse\",\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of pricing - levels offered by a creator to the fans.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"MembershipsLevel\"\n }\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevelListResponse\"\n }\n - \ }\n },\n \"ChannelSectionSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel section's title for multiple_playlists - and multiple_channels.\"\n },\n \"position\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The position of the channel section in the channel.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel section's default - title and description.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enum\": [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ],\n \"description\": \"The type of the channel section.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"localized\": {\n \"description\": - \"Localized title, read-only.\",\n \"$ref\": \"ChannelSectionLocalization\"\n - \ },\n \"style\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"description\": \"The - style of the channel section.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\"\n }\n },\n \"description\": \"Basic - details about a channel section, including title, style and position.\",\n - \ \"id\": \"ChannelSectionSnippet\"\n },\n \"PlaylistItemStatus\": - {\n \"properties\": {\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"This resource's - privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"description\": - \"Information about the playlist item's privacy status.\",\n \"type\": - \"object\",\n \"id\": \"PlaylistItemStatus\"\n },\n \"VideoSnippet\": - {\n \"description\": \"Basic details about a video, including title, - description, uploader, thumbnails and category.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"categoryId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube video category associated with the - video.\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that the video - was uploaded to.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the video was uploaded.\",\n \"format\": \"date-time\"\n - \ },\n \"tags\": {\n \"description\": \"A list of keyword - tags associated with the video. Tags may contain spaces.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The video's title. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"liveBroadcastContent\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n },\n \"defaultAudioLanguage\": - {\n \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"$ref\": \"VideoLocalization\",\n - \ \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the videos's default - snippet.\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\"\n }\n },\n \"id\": \"VideoSnippet\"\n - \ },\n \"LiveStreamSnippet\": {\n \"properties\": {\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n },\n \"publishedAt\": {\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the stream was created.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is transmitting the stream.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"The stream's - description. The value cannot be longer than 10000 characters.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"annotations\": {\n - \ \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The stream's title. The value must be between - 1 and 128 characters long.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveStreamSnippet\"\n - \ },\n \"WatchSettings\": {\n \"type\": \"object\",\n \"properties\": - {\n \"textColor\": {\n \"type\": \"string\",\n \"description\": - \"The background color for the video watch page's branded area.\"\n },\n - \ \"backgroundColor\": {\n \"type\": \"string\",\n \"description\": - \"The text color for the video watch page's branded area.\"\n },\n - \ \"featuredPlaylistId\": {\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"WatchSettings\",\n - \ \"description\": \"Branding properties for the watch. All deprecated.\"\n - \ },\n \"SubscriptionContentDetails\": {\n \"id\": \"SubscriptionContentDetails\",\n - \ \"description\": \"Details about the content to witch a subscription - refers.\",\n \"type\": \"object\",\n \"properties\": {\n \"totalItemCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The approximate - number of items that the subscription points to.\",\n \"type\": \"integer\"\n - \ },\n \"activityType\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ]\n },\n \"newItemCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of new items in the subscription since its content was last read.\"\n - \ }\n }\n },\n \"LiveChatModerator\": {\n \"id\": \"LiveChatModerator\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModerator\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatModerator\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the moderator.\"\n }\n },\n - \ \"description\": \"A *liveChatModerator* resource represents a moderator - for a YouTube live chat. A chat moderator has the ability to ban/unban users - from a chat, remove message, etc.\"\n },\n \"AbuseType\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"AbuseType\",\n \"type\": \"object\"\n },\n \"I18nLanguageListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of supported - i18n languages. In this map, the i18n language ID is the map key, and its - value is the corresponding i18nLanguage resource.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"I18nLanguageListResponse\",\n \"type\": \"object\"\n },\n \"ThirdPartyLinkSnippet\": - {\n \"id\": \"ThirdPartyLinkSnippet\",\n \"properties\": {\n \"channelToStoreLink\": - {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\"\n },\n \"type\": {\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"description\": - \"Type of the link named after the entities that are being linked.\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Basic information about a third party account link, - including its type and type-specific information.\"\n },\n \"MembershipsDuration\": - {\n \"properties\": {\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"description\": \"The cumulative time the user has - been a member across all levels in complete months (the time is rounded down - to the nearest integer).\",\n \"format\": \"int32\"\n },\n - \ \"memberSince\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the user became a continuous member across all levels.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"MembershipsDuration\"\n - \ },\n \"MembershipsLevelSnippet\": {\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"properties\": {\n \"creatorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the channel that's offering - channel memberships.\"\n },\n \"levelDetails\": {\n \"$ref\": - \"LevelDetails\",\n \"description\": \"Details about the pricing - level.\"\n }\n },\n \"type\": \"object\"\n },\n \"LanguageTag\": - {\n \"id\": \"LanguageTag\",\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelContentOwnerDetails\": {\n \"properties\": {\n \"timeLinked\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the channel was linked to the content owner.\",\n \"format\": - \"date-time\"\n },\n \"contentOwner\": {\n \"description\": - \"The ID of the content owner linked to the channel.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"id\": \"ChannelContentOwnerDetails\",\n \"type\": - \"object\"\n },\n \"LiveChatModeratorSnippet\": {\n \"properties\": - {\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the live chat this moderator can act on.\"\n },\n \"moderatorDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the moderator.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatModeratorSnippet\"\n },\n \"ChannelListResponse\": - {\n \"type\": \"object\",\n \"id\": \"ChannelListResponse\",\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Channel\"\n }\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelListResponse\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"visitorId\": {\n \"description\": \"The - visitorId identifies the visitor.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ }\n },\n \"Member\": {\n \"id\": \"Member\",\n \"type\": - \"object\",\n \"description\": \"A *member* resource represents a member - for a YouTube channel. A member provides recurring monetary support to a creator - and receives special benefits.\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the member.\",\n \"$ref\": \"MemberSnippet\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#member\\\".\",\n \"default\": - \"youtube#member\"\n }\n }\n },\n \"I18nRegionSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - an i18n region, such as region code and human-readable name.\",\n \"id\": - \"I18nRegionSnippet\",\n \"properties\": {\n \"gl\": {\n \"type\": - \"string\",\n \"description\": \"The region code as a 2-letter ISO - country code.\"\n },\n \"name\": {\n \"description\": - \"The human-readable name of the region.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"properties\": {\n \"blocked\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\",\n \"type\": - \"array\"\n },\n \"allowed\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"DEPRECATED Region restriction of the video.\"\n },\n - \ \"Caption\": {\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#caption\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the caption track.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n }\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"Caption\",\n \"type\": \"object\",\n \"description\": - \"A *caption* resource represents a YouTube caption track. A caption track - is associated with exactly one YouTube video.\"\n },\n \"GeoPoint\": - {\n \"id\": \"GeoPoint\",\n \"properties\": {\n \"altitude\": - {\n \"description\": \"Altitude above the reference ellipsoid, in - meters.\",\n \"format\": \"double\",\n \"type\": \"number\"\n - \ },\n \"longitude\": {\n \"type\": \"number\",\n \"description\": - \"Longitude in degrees.\",\n \"format\": \"double\"\n },\n - \ \"latitude\": {\n \"type\": \"number\",\n \"format\": - \"double\",\n \"description\": \"Latitude in degrees.\"\n }\n - \ },\n \"description\": \"Geographical coordinates of a point, in - WGS84.\",\n \"type\": \"object\"\n },\n \"VideoCategory\": {\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video category.\"\n },\n \"snippet\": {\n \"$ref\": - \"VideoCategorySnippet\",\n \"description\": \"The snippet object - contains basic details about the video category, including its title.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"default\": \"youtube#videoCategory\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"A *videoCategory* resource identifies a category that has been or could - be associated with uploaded videos.\",\n \"id\": \"VideoCategory\"\n - \ },\n \"ChannelProfileDetails\": {\n \"type\": \"object\",\n \"id\": - \"ChannelProfileDetails\",\n \"properties\": {\n \"profileImageUrl\": - {\n \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"Playlist\": {\n \"description\": \"A *playlist* - resource represents a YouTube playlist. A playlist is a collection of videos - that can be viewed sequentially and shared with other users. A playlist can - contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"id\": \"Playlist\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistSnippet\",\n \"description\": \"The snippet object contains - basic details about the playlist, such as its title and description.\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - status information for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlist\"\n - \ },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"description\": \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n }\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n - \ },\n \"player\": {\n \"description\": \"The player - object contains information that you would use to play the playlist in an - embedded player.\",\n \"$ref\": \"PlaylistPlayer\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastSnippet\": {\n \"description\": - \"Basic broadcast information.\",\n \"type\": \"object\",\n \"id\": - \"LiveBroadcastSnippet\",\n \"properties\": {\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for this broadcast.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's title. Note that the broadcast - represents exactly one YouTube video. You can set this field by modifying - the broadcast resource or by setting the title field of the corresponding - video resource.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - was added to YouTube's live broadcast schedule.\",\n \"format\": - \"date-time\"\n },\n \"actualStartTime\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast actually started. This information - is only available once the broadcast's state is live.\"\n },\n \"isDefaultBroadcast\": - {\n \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\",\n \"type\": \"boolean\"\n },\n - \ \"actualEndTime\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the broadcast actually ended. This information is - only available once the broadcast's state is complete.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - broadcast. For each nested object in this object, the key is the name of the - thumbnail image, and the value is an object that contains other information - about the thumbnail.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that is publishing the broadcast.\"\n },\n \"description\": - {\n \"description\": \"The broadcast's description. As with the title, - you can set this field by modifying the broadcast resource or by setting the - description field of the corresponding video resource.\",\n \"type\": - \"string\"\n },\n \"scheduledEndTime\": {\n \"description\": - \"The date and time that the broadcast is scheduled to end.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the broadcast is scheduled to start.\",\n \"type\": - \"string\"\n }\n }\n },\n \"SuperStickerMetadata\": {\n - \ \"properties\": {\n \"altTextLanguage\": {\n \"description\": - \"Specifies the localization language in which the alt text is returned.\",\n - \ \"type\": \"string\"\n },\n \"stickerId\": {\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\",\n - \ \"type\": \"string\"\n },\n \"altText\": {\n \"type\": - \"string\",\n \"description\": \"Internationalized alt text that - describes the sticker image and any animation associated with it.\"\n }\n - \ },\n \"id\": \"SuperStickerMetadata\",\n \"type\": \"object\"\n - \ },\n \"ChannelSectionTargeting\": {\n \"description\": \"ChannelSection - targeting setting.\",\n \"properties\": {\n \"languages\": {\n - \ \"description\": \"The language the channel section is targeting.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"countries\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The country the channel section is targeting.\"\n - \ },\n \"regions\": {\n \"description\": \"The region - the channel section is targeting.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"id\": \"ChannelSectionTargeting\",\n \"type\": \"object\"\n },\n - \ \"LiveChatSuperChatDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"amountDisplayString\": {\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\",\n \"type\": - \"string\"\n },\n \"tier\": {\n \"description\": \"The - tier in which the amount belongs. Lower amounts belong to lower tiers. The - lowest tier is 1.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"amountMicros\": {\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"userComment\": {\n \"description\": \"The comment added - by the user to this Super Chat event.\",\n \"type\": \"string\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatSuperChatDetails\"\n },\n \"MembershipsDurationAtLevel\": - {\n \"properties\": {\n \"memberSince\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the user - became a continuous member for the given level.\"\n },\n \"level\": - {\n \"type\": \"string\",\n \"description\": \"Pricing level - ID.\"\n },\n \"memberTotalDurationMonths\": {\n \"format\": - \"int32\",\n \"type\": \"integer\",\n \"description\": \"The - cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\"\n }\n },\n - \ \"id\": \"MembershipsDurationAtLevel\",\n \"type\": \"object\"\n - \ },\n \"LiveBroadcastStatistics\": {\n \"description\": \"Statistics - about the live broadcast. These represent a snapshot of the values at the - time of the request. Statistics are only returned for live broadcasts.\",\n - \ \"id\": \"LiveBroadcastStatistics\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"totalChatCount\": {\n \"type\": - \"string\",\n \"description\": \"The total number of live chat messages - currently on the broadcast. The property and its value will be present if - the broadcast is public, has the live chat feature enabled, and has at least - one message. Note that this field will not be filled after the broadcast ends. - So this property would not identify the number of chat messages for an archived - video of a completed live broadcast.\",\n \"format\": \"uint64\"\n - \ },\n \"concurrentViewers\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of viewers currently watching the - broadcast. The property and its value will be present if the broadcast has - current viewers and the broadcast owner has not hidden the viewcount for the - video. Note that YouTube stops tracking the number of concurrent viewers for - a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ChannelContentDetails\": {\n \"type\": \"object\",\n \"description\": - \"Details about the content of a channel.\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"type\": \"object\",\n \"properties\": {\n \"watchHistory\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"likes\": {\n \"description\": \"The - ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n },\n \"watchLater\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\",\n \"type\": \"string\"\n },\n \"uploads\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s uploaded videos. Use the - videos.insert method to upload new videos and the videos.delete method to - delete previously uploaded videos.\"\n },\n \"favorites\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s favorite videos. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n }\n }\n }\n },\n \"id\": - \"ChannelContentDetails\"\n },\n \"SearchResult\": {\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#searchResult\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about a search result, such as its title or description. For example, if the - search result is a video, then the title will be the video's title and the - description will be the video's description.\",\n \"$ref\": \"SearchResultSnippet\"\n - \ },\n \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n }\n },\n \"description\": - \"A search result contains information about a YouTube video, channel, or - playlist that matches the search parameters specified in an API request. While - a search result points to a uniquely identifiable resource, like a video, - it does not have its own persistent data.\",\n \"id\": \"SearchResult\"\n - \ },\n \"LiveBroadcast\": {\n \"type\": \"object\",\n \"description\": - \"A *liveBroadcast* resource represents an event that will be streamed, via - live video, on YouTube.\",\n \"id\": \"LiveBroadcast\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"status\": {\n \"$ref\": - \"LiveBroadcastStatus\",\n \"description\": \"The status object contains - information about the event's status.\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveBroadcastSnippet\",\n \"description\": - \"The snippet object contains basic details about the event, including its - title, description, start time, and end time.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"LiveBroadcastContentDetails\",\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"default\": \"youtube#liveBroadcast\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the broadcast.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n - \ }\n }\n },\n \"MembershipsDetails\": {\n \"id\": \"MembershipsDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"membershipsDuration\": - {\n \"$ref\": \"MembershipsDuration\",\n \"description\": - \"Data about memberships duration without taking into consideration pricing - levels.\"\n },\n \"membershipsDurationAtLevels\": {\n \"type\": - \"array\",\n \"description\": \"Data about memberships duration on - particular pricing levels.\",\n \"items\": {\n \"$ref\": - \"MembershipsDurationAtLevel\"\n }\n },\n \"highestAccessibleLevel\": - {\n \"description\": \"Id of the highest level that the user has - access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"accessibleLevels\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\"\n - \ },\n \"highestAccessibleLevelDisplayName\": {\n \"description\": - \"Display name for the highest level that the user has access to at the moment.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ChannelSettings\": - {\n \"properties\": {\n \"moderateComments\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether user-submitted comments - left on the channel page need to be approved by the channel owner to be publicly - visible.\"\n },\n \"featuredChannelsUrls\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The list of featured channels.\"\n },\n - \ \"featuredChannelsTitle\": {\n \"description\": \"Title for - the featured channels tab.\",\n \"type\": \"string\"\n },\n - \ \"profileColor\": {\n \"description\": \"A prominent color - that can be rendered on this channel page.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"Specifies - the channel description.\",\n \"type\": \"string\"\n },\n - \ \"showBrowseView\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the tab to browse the videos should be displayed.\"\n },\n - \ \"showRelatedChannels\": {\n \"description\": \"Whether related - channels should be proposed.\",\n \"type\": \"boolean\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\"\n },\n - \ \"unsubscribedTrailer\": {\n \"description\": \"The trailer - of the channel, for users that are not subscribers.\",\n \"type\": - \"string\"\n },\n \"defaultTab\": {\n \"type\": \"string\",\n - \ \"description\": \"Which content tab users should see when viewing - the channel.\"\n },\n \"trackingAnalyticsAccountId\": {\n \"type\": - \"string\",\n \"description\": \"The ID for a Google Analytics account - to track and measure traffic to the channels.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the channel title.\"\n },\n \"keywords\": {\n \"type\": - \"string\",\n \"description\": \"Lists keywords associated with the - channel, comma-separated.\"\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Branding properties - for the channel view.\",\n \"id\": \"ChannelSettings\"\n },\n \"PlaylistSnippet\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistSnippet\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails.\",\n - \ \"properties\": {\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The playlist's description.\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel title of the channel that the video - belongs to.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the playlist.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The playlist's title.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the playlist's default title and description.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the playlist was created.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"localized\": {\n - \ \"description\": \"Localized title and description, read-only.\",\n - \ \"$ref\": \"PlaylistLocalization\"\n },\n \"thumbnailVideoId\": - {\n \"description\": \"Note: if the playlist has a custom thumbnail, - this field will not be populated. The video id selected by the user that will - be used as the thumbnail of this playlist. This field defaults to the first - publicly viewable video in the playlist, if: 1. The user has never selected - a video to be the thumbnail of the playlist. 2. The user selects a video to - be the thumbnail, and then removes that video from the playlist. 3. The user - selects a non-owned video to be the thumbnail, but that video becomes private, - or gets deleted.\",\n \"type\": \"string\"\n },\n \"tags\": - {\n \"description\": \"Keyword tags associated with the playlist.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n }\n }\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"id\": \"VideoSuggestionsTagSuggestion\",\n \"properties\": - {\n \"tag\": {\n \"type\": \"string\",\n \"description\": - \"The keyword tag suggested for the video.\"\n },\n \"categoryRestricts\": - {\n \"type\": \"array\",\n \"description\": \"A set of video - categories for which the tag is relevant. You can use this information to - display appropriate tag suggestions based on the video category that the video - uploader associates with the video. By default, tag suggestions are relevant - for all categories if there are no restricts defined for the keyword.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"description\": \"A single tag suggestion with it's relevance - information.\",\n \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": - {\n \"id\": \"LiveBroadcastListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"default\": - \"youtube#liveBroadcastListResponse\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"description\": \"A list of broadcasts that match - the request criteria.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"PlaylistItemSnippet\": {\n \"id\": - \"PlaylistItemSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the user that added the item to the playlist.\",\n - \ \"type\": \"string\"\n },\n \"position\": {\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The item's title.\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify thGe playlist that the playlist item is - in.\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"videoOwnerChannelTitle\": {\n \"description\": - \"Channel title for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the playlist - item belongs to.\"\n },\n \"resourceId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The id object contains information that can be - used to uniquely identify the resource that is included in the playlist as - the playlist item.\",\n \"$ref\": \"ResourceId\"\n },\n \"videoOwnerChannelId\": - {\n \"description\": \"Channel id for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The item's - description.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the playlist item. 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.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the item was added to the playlist.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - a playlist, including title, description and thumbnails. Basic details of - a YouTube Playlist item provided by the author. Next ID: 15\"\n },\n \"LiveChatMessage\": - {\n \"description\": \"A *liveChatMessage* resource represents a chat - message in a YouTube Live Chat.\",\n \"type\": \"object\",\n \"properties\": - {\n \"authorDetails\": {\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\",\n - \ \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the message.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatMessage\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"id\": \"LiveChatMessage\"\n },\n \"SearchResultSnippet\": {\n - \ \"id\": \"SearchResultSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - search result. 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.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The value that YouTube uses to uniquely identify - the channel that published the resource that the search result identifies.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the search result.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The creation date and time of the resource that - the search result identifies.\"\n },\n \"liveBroadcastContent\": - {\n \"type\": \"string\",\n \"description\": \"It indicates - if the resource (video or channel) has upcoming/active live broadcast content. - Or it's \\\"none\\\" if there is not any upcoming/active live broadcasts.\",\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ]\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"The title of the channel that published - the resource that the search result identifies.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"A description - of the search result.\"\n }\n },\n \"description\": \"Basic - details about a search result, including title, description and thumbnails - of the item referenced by the search result.\"\n },\n \"ChannelSectionListResponse\": - {\n \"type\": \"object\",\n \"id\": \"ChannelSectionListResponse\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"description\": \"A list of ChannelSections - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"CommentThreadReplies\": - {\n \"properties\": {\n \"comments\": {\n \"type\": \"array\",\n - \ \"description\": \"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.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n }\n }\n },\n \"id\": - \"CommentThreadReplies\",\n \"type\": \"object\",\n \"description\": - \"Comments written in (direct or indirect) reply to the top level comment.\"\n - \ },\n \"LocalizedProperty\": {\n \"properties\": {\n \"defaultLanguage\": - {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The - language of the default property.\"\n },\n \"default\": {\n - \ \"type\": \"string\"\n },\n \"localized\": {\n \"items\": - {\n \"$ref\": \"LocalizedString\"\n },\n \"type\": - \"array\"\n }\n },\n \"id\": \"LocalizedProperty\",\n \"type\": - \"object\"\n },\n \"ThirdPartyLinkListResponse\": {\n \"id\": \"ThirdPartyLinkListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsSocial\": - {\n \"id\": \"ActivityContentDetailsSocial\",\n \"type\": \"object\",\n - \ \"description\": \"Details about a social network post.\",\n \"properties\": - {\n \"author\": {\n \"type\": \"string\",\n \"description\": - \"The author of the social network post.\"\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object encapsulates information that identifies the resource associated with - a social network post.\"\n },\n \"referenceUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL of the social network post.\"\n - \ },\n \"type\": {\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The name of the social network.\"\n },\n - \ \"imageUrl\": {\n \"description\": \"An image of the post's - author.\",\n \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsUpload\": - {\n \"description\": \"Information about the uploaded video.\",\n \"id\": - \"ActivityContentDetailsUpload\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the uploaded video.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsLike\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the rated resource.\",\n \"$ref\": \"ResourceId\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsLike\",\n \"description\": - \"Information about a resource that received a positive (like) rating.\"\n - \ },\n \"VideoProcessingDetailsProcessingProgress\": {\n \"id\": - \"VideoProcessingDetailsProcessingProgress\",\n \"properties\": {\n \"partsTotal\": - {\n \"description\": \"An estimate of the total number of parts that - need to be processed for the video. The number may be updated with more precise - estimates while YouTube processes the video.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"timeLeftMs\": {\n - \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\"\n },\n \"partsProcessed\": {\n - \ \"description\": \"The number of parts of the video that YouTube - has already processed. You can estimate the percentage of the video that YouTube - has already processed by calculating: 100 * parts_processed / parts_total - Note that since the estimated number of parts could increase without a corresponding - increase in the number of parts that have already been processed, it is possible - that the calculated progress could periodically decrease while YouTube processes - a video.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Video - processing progress and completion time estimate.\"\n },\n \"VideoLiveStreamingDetails\": - {\n \"id\": \"VideoLiveStreamingDetails\",\n \"description\": \"Details - about the live streaming metadata.\",\n \"properties\": {\n \"actualStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\"\n },\n - \ \"scheduledStartTime\": {\n \"description\": \"The time that - the broadcast is scheduled to begin.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"scheduledEndTime\": - {\n \"description\": \"The time that the broadcast is scheduled to - end. If the value is empty or the property is not present, then the broadcast - is scheduled to contiue indefinitely.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"activeLiveChatId\": - {\n \"description\": \"The ID of the currently active live chat attached - to this video. This field is filled only if the video is a currently live - broadcast that has live chat. Once the broadcast transitions to complete this - field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\",\n \"type\": \"string\"\n - \ },\n \"concurrentViewers\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of viewers currently watching the - broadcast. The property and its value will be present if the broadcast has - current viewers and the broadcast owner has not hidden the viewcount for the - video. Note that YouTube stops tracking the number of concurrent viewers for - a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"format\": \"uint64\"\n },\n \"actualEndTime\": - {\n \"description\": \"The time that the broadcast actually ended. - This value will not be available until the broadcast is over.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoProcessingDetails\": {\n \"description\": - \"Describes processing status and progress and availability of some other - Video resource parts.\",\n \"properties\": {\n \"fileDetailsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether file details are available for the uploaded video. You can - retrieve a video's file details by requesting the fileDetails part in your - videos.list() request.\"\n },\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n },\n - \ \"processingProgress\": {\n \"description\": \"The processingProgress - object contains information about the progress YouTube has made in processing - the video. The values are really only relevant if the video's processing status - is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"tagSuggestionsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether keyword - (tag) suggestions are available for the video. Tags can be added to a video's - metadata to make it easier for other users to find the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\"\n },\n \"processingIssuesAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether the - video processing engine has generated suggestions that might improve YouTube's - ability to process the the video, warnings that explain video processing problems, - or errors that cause video processing problems. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether video editing suggestions, which might improve video - quality or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\",\n \"type\": \"string\"\n },\n \"processingFailureReason\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"uploadFailed\",\n - \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n - \ ]\n },\n \"processingStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"processing\",\n \"succeeded\",\n - \ \"failed\",\n \"terminated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's processing status. - This value indicates whether YouTube was able to process the video or if the - video is still being processed.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoProcessingDetails\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of this abuse report secondary reason.\"\n - \ },\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label for this abuse report secondary reason.\"\n }\n - \ },\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"type\": - \"object\"\n },\n \"ChannelBannerResource\": {\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\"\n },\n \"url\": {\n \"type\": - \"string\",\n \"description\": \"The URL of this banner image.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ChannelBannerResource\"\n - \ },\n \"SuperChatEvent\": {\n \"id\": \"SuperChatEvent\",\n \"description\": - \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"SuperChatEventSnippet\",\n \"description\": \"The `snippet` object - contains basic details about the Super Chat event.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n \"default\": - \"youtube#superChatEvent\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the Super Chat event.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"LevelDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"displayName\": {\n \"description\": - \"The name that should be used when referring to this level.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LevelDetails\"\n },\n - \ \"CommentSnippetAuthorChannelId\": {\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"description\": - \"The id of the author's YouTube channel, if any.\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n - \ \"type\": \"object\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n \"properties\": - {\n \"banType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of ban.\"\n },\n \"banDurationSeconds\": - {\n \"format\": \"uint64\",\n \"description\": \"The duration - of the ban. This property is only present if the banType is temporary.\",\n - \ \"type\": \"string\"\n },\n \"bannedUserDetails\": - {\n \"description\": \"The details of the user that was banned.\",\n - \ \"$ref\": \"ChannelProfileDetails\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelConversionPing\": {\n \"id\": \"ChannelConversionPing\",\n - \ \"description\": \"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.\",\n \"type\": \"object\",\n \"properties\": - {\n \"context\": {\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"Defines the context - of the ping.\"\n },\n \"conversionUrl\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n }\n },\n \"LiveChatBan\": - {\n \"id\": \"LiveChatBan\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the ban.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatBan\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\",\n - \ \"type\": \"object\"\n },\n \"VideoAbuseReportReason\": {\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the abuse report reason.\",\n \"$ref\": - \"VideoAbuseReportReasonSnippet\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReason\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID of this abuse report reason.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\",\n \"id\": - \"VideoAbuseReportReason\"\n },\n \"ChannelStatus\": {\n \"id\": - \"ChannelStatus\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"isLinked\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"longUploadsStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The long uploads status of this - channel. See https://support.google.com/youtube/answer/71673 for more information.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ]\n },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"Privacy status of the channel.\"\n }\n },\n \"description\": - \"JSON template for the status part of a channel.\"\n },\n \"VideoPlayer\": - {\n \"properties\": {\n \"embedWidth\": {\n \"description\": - \"The embed width\",\n \"format\": \"int64\",\n \"type\": - \"string\"\n },\n \"embedHeight\": {\n \"format\": - \"int64\",\n \"type\": \"string\"\n },\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"VideoPlayer\",\n \"description\": - \"Player to be used for a video playback.\"\n },\n \"ThumbnailDetails\": - {\n \"type\": \"object\",\n \"id\": \"ThumbnailDetails\",\n \"properties\": - {\n \"standard\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The standard quality image for this resource.\"\n },\n \"medium\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The medium - quality image for this resource.\"\n },\n \"maxres\": {\n \"description\": - \"The maximum resolution quality image for this resource.\",\n \"$ref\": - \"Thumbnail\"\n },\n \"default\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The default image for this resource.\"\n },\n - \ \"high\": {\n \"description\": \"The high quality image for - this resource.\",\n \"$ref\": \"Thumbnail\"\n }\n },\n - \ \"description\": \"Internal representation of thumbnails for a YouTube - resource.\"\n },\n \"PlaylistItemListResponse\": {\n \"properties\": - {\n \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"etag\": {\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"description\": - \"A list of playlist items that match the request criteria.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"PlaylistItemListResponse\"\n - \ },\n \"TestItem\": {\n \"type\": \"object\",\n \"id\": \"TestItem\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"gaia\": {\n \"format\": \"int64\",\n \"type\": - \"string\"\n },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveStreamStatus\": {\n \"description\": \"Brief - description of the live stream status.\",\n \"type\": \"object\",\n \"properties\": - {\n \"healthStatus\": {\n \"description\": \"The health status - of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n },\n - \ \"streamStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ]\n }\n },\n \"id\": \"LiveStreamStatus\"\n - \ },\n \"LiveBroadcastContentDetails\": {\n \"description\": \"Detailed - settings of a broadcast.\",\n \"type\": \"object\",\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"properties\": {\n \"mesh\": {\n \"type\": \"string\",\n - \ \"description\": \"The mesh for projecting the video if projection - is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding - of 3D mesh data that follows the Spherical Video V2 RFC specification for - an mshp box, excluding the box size and type but including the following four - reserved zero bytes for the version and flags.\",\n \"format\": \"byte\"\n - \ },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"stereoLayout\": {\n - \ \"description\": \"The 3D stereo layout of this broadcast. This - defaults to mono.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ],\n \"type\": \"string\"\n - \ },\n \"startWithSlate\": {\n \"description\": \"This - setting indicates whether the broadcast should automatically begin with an - in-stream slate when you update the broadcast's status to live. After updating - the status, you then need to send a liveCuepoints.insert request that sets - the cuepoint's eventState to end to remove the in-stream slate and make your - broadcast stream visible to viewers.\",\n \"type\": \"boolean\"\n - \ },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n },\n \"boundStreamId\": {\n \"description\": - \"This value uniquely identifies the live stream bound to the broadcast.\",\n - \ \"type\": \"string\"\n },\n \"enableAutoStop\": {\n - \ \"description\": \"This setting indicates whether auto stop is enabled - for this broadcast. The default value for this property is false. This setting - can only be used by Events.\",\n \"type\": \"boolean\"\n },\n - \ \"enableLowLatency\": {\n \"description\": \"Indicates whether - this broadcast has low latency enabled.\",\n \"type\": \"boolean\"\n - \ },\n \"latencyPreference\": {\n \"enumDescriptions\": - [\n \"\",\n \"Best for: highest quality viewer playbacks - and higher resolutions.\",\n \"Best for: near real-time interaction, - with minimal playback buffering.\",\n \"Best for: real-time interaction - Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"description\": \"If both this and enable_low_latency - are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\"\n },\n \"recordFromStart\": - {\n \"type\": \"boolean\",\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\"\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\"\n },\n \"closedCaptionsType\": - {\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"enableContentEncryption\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether YouTube should enable content encryption for the broadcast.\"\n - \ },\n \"monitorStream\": {\n \"description\": \"The - monitorStream object contains information about the monitor stream, which - the broadcaster can use to review the event content before the broadcast stream - is shown publicly.\",\n \"$ref\": \"MonitorStreamInfo\"\n },\n - \ \"enableDvr\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\"\n },\n \"projection\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\"\n - \ },\n \"enableAutoStart\": {\n \"description\": \"This - setting indicates whether auto start is enabled for this broadcast. The default - value for this property is false. This setting can only be used by Events.\",\n - \ \"type\": \"boolean\"\n }\n }\n },\n \"ChannelBrandingSettings\": - {\n \"properties\": {\n \"watch\": {\n \"description\": - \"Branding properties for the watch page.\",\n \"$ref\": \"WatchSettings\"\n - \ },\n \"channel\": {\n \"$ref\": \"ChannelSettings\",\n - \ \"description\": \"Branding properties for the channel view.\"\n - \ },\n \"hints\": {\n \"items\": {\n \"$ref\": - \"PropertyValue\"\n },\n \"type\": \"array\",\n \"description\": - \"Additional experimental branding properties.\"\n },\n \"image\": - {\n \"$ref\": \"ImageSettings\",\n \"description\": \"Branding - properties for branding images.\"\n }\n },\n \"description\": - \"Branding properties of a YouTube channel.\",\n \"id\": \"ChannelBrandingSettings\",\n - \ \"type\": \"object\"\n },\n \"VideoCategoryListResponse\": {\n - \ \"id\": \"VideoCategoryListResponse\",\n \"properties\": {\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoCategoryListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"items\": {\n - \ \"type\": \"array\",\n \"description\": \"A list of video - categories that can be associated with YouTube videos. In this map, the video - category ID is the map key, and its value is the corresponding videoCategory - resource.\",\n \"items\": {\n \"$ref\": \"VideoCategory\"\n - \ }\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level that the viewer just had joined. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"isUpgrade\": {\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\",\n \"type\": - \"boolean\"\n }\n },\n \"id\": \"LiveChatNewSponsorDetails\"\n - \ },\n \"ChannelTopicDetails\": {\n \"properties\": {\n \"topicCategories\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Wikipedia - URLs that describe the channel's content.\"\n },\n \"topicIds\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of Freebase - topic IDs associated with the channel. You can retrieve information about - each topic using the Freebase Topic API.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Freebase topic information related to - the channel.\",\n \"id\": \"ChannelTopicDetails\"\n },\n \"Thumbnail\": - {\n \"type\": \"object\",\n \"description\": \"A thumbnail is an - image representing a YouTube resource.\",\n \"id\": \"Thumbnail\",\n - \ \"properties\": {\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The thumbnail image's URL.\"\n },\n \"width\": - {\n \"format\": \"uint32\",\n \"description\": \"(Optional) - Width of the thumbnail image.\",\n \"type\": \"integer\"\n },\n - \ \"height\": {\n \"description\": \"(Optional) Height of the - thumbnail image.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n }\n }\n },\n \"PropertyValue\": {\n \"properties\": - {\n \"value\": {\n \"type\": \"string\",\n \"description\": - \"The property's value.\"\n },\n \"property\": {\n \"description\": - \"A property.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"A pair Property / Value.\",\n \"id\": \"PropertyValue\",\n \"type\": - \"object\"\n },\n \"SuperChatEventSnippet\": {\n \"properties\": - {\n \"amountMicros\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The purchase amount, in micros of - the purchase currency. e.g., 1 is represented as 1000000.\"\n },\n - \ \"isSuperStickerEvent\": {\n \"type\": \"boolean\",\n \"description\": - \"True if this event is a Super Sticker event.\"\n },\n \"supporterDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the supporter.\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n },\n \"commentText\": {\n \"type\": - \"string\",\n \"description\": \"The text contents of the comment - left by the user.\"\n },\n \"messageType\": {\n \"format\": - \"uint32\",\n \"description\": \"The tier for the paid message, which - is based on the amount of money spent to purchase the message.\",\n \"type\": - \"integer\"\n },\n \"displayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the purchase amount and currency (e.g., \\\"$1.00\\\"). The string is rendered - for the given language.\"\n },\n \"createdAt\": {\n \"description\": - \"The date and time when the event occurred.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"currency\": {\n - \ \"description\": \"The currency in which the purchase was made. - ISO 4217.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel id - where the event occurred.\"\n }\n },\n \"id\": \"SuperChatEventSnippet\",\n - \ \"type\": \"object\"\n },\n \"ChannelAuditDetails\": {\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\",\n \"properties\": {\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel respects the community guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n }\n },\n \"id\": - \"ChannelAuditDetails\",\n \"type\": \"object\"\n },\n \"MonitorStreamInfo\": - {\n \"type\": \"object\",\n \"properties\": {\n \"broadcastStreamDelayMs\": - {\n \"format\": \"uint32\",\n \"description\": \"If you - have set the enableMonitorStream property to true, then this property determines - the length of the live broadcast delay.\",\n \"type\": \"integer\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"enableMonitorStream\": {\n - \ \"type\": \"boolean\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"This value determines whether the monitor stream - is enabled for the broadcast. If the monitor stream is enabled, then YouTube - will broadcast the event content on a special stream intended only for the - broadcaster's consumption. The broadcaster can use the stream to review the - event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\"\n },\n \"embedHtml\": {\n - \ \"description\": \"HTML code that embeds a player that plays the - monitor stream.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"MonitorStreamInfo\",\n \"description\": \"Settings and - Info of the monitor stream\"\n },\n \"VideoLocalization\": {\n \"id\": - \"VideoLocalization\",\n \"properties\": {\n \"title\": {\n \"description\": - \"Localized version of the video's title.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"Localized - version of the video's description.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Localized versions of certain video properties - (e.g. title).\",\n \"type\": \"object\"\n },\n \"ChannelSectionContentDetails\": - {\n \"properties\": {\n \"playlists\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The playlist ids for type single_playlist and - multiple_playlists. For singlePlaylist, only one playlistId is allowed.\"\n - \ },\n \"channels\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The channel ids for - type multiple_channels.\",\n \"type\": \"array\"\n }\n },\n - \ \"description\": \"Details about a channelsection, including playlists - and channels.\",\n \"id\": \"ChannelSectionContentDetails\",\n \"type\": - \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"properties\": - {\n \"gifterChannelId\": {\n \"description\": \"The ID of - the user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\",\n \"type\": \"string\"\n - \ },\n \"memberLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the Level at which the viewer is - a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ }\n }\n },\n \"Video\": {\n \"description\": \"A *video* - resource represents a YouTube video.\",\n \"properties\": {\n \"player\": - {\n \"description\": \"The player object contains information that - you would use to play the video in an embedded player.\",\n \"$ref\": - \"VideoPlayer\"\n },\n \"projectDetails\": {\n \"$ref\": - \"VideoProjectDetails\",\n \"description\": \"The projectDetails - object contains information about the project specific video metadata. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\",\n \"additionalProperties\": {\n \"$ref\": - \"VideoLocalization\"\n }\n },\n \"topicDetails\": - {\n \"$ref\": \"VideoTopicDetails\",\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\"\n },\n \"monetizationDetails\": {\n \"$ref\": - \"VideoMonetizationDetails\",\n \"description\": \"The monetizationDetails - object encapsulates information about the monetization status of the video.\"\n - \ },\n \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video, such as its title, description, and category.\"\n },\n \"suggestions\": - {\n \"$ref\": \"VideoSuggestions\",\n \"description\": \"The - suggestions object encapsulates suggestions that identify opportunities to - improve the video quality or the metadata for the uploaded video. This data - can only be retrieved by the video owner.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"VideoContentDetails\",\n \"description\": - \"The contentDetails object contains information about the video content, - including the length of the video and its aspect ratio.\"\n },\n \"fileDetails\": - {\n \"$ref\": \"VideoFileDetails\",\n \"description\": \"The - fileDetails object encapsulates information about the video file that was - uploaded to YouTube, including the file's resolution, duration, audio and - video codecs, stream bitrates, and more. This data can only be retrieved by - the video owner.\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n },\n - \ \"liveStreamingDetails\": {\n \"$ref\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\"\n },\n - \ \"ageGating\": {\n \"description\": \"Age restriction details - related to a video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoAgeGating\"\n },\n \"recordingDetails\": - {\n \"$ref\": \"VideoRecordingDetails\",\n \"description\": - \"The recordingDetails object encapsulates information about the location, - date and address where the video was recorded.\"\n },\n \"processingDetails\": - {\n \"description\": \"The processingDetails object encapsulates - information about YouTube's progress in processing the uploaded video file. - The properties in the object identify the current processing status and an - estimate of the time remaining until YouTube finishes processing the video. - This part also indicates whether different types of data or content, such - as file details or thumbnail images, are available for the video. The processingProgress - object is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoProcessingDetails\"\n - \ },\n \"statistics\": {\n \"$ref\": \"VideoStatistics\",\n - \ \"description\": \"The statistics object contains statistics about - the video.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the video's uploading, processing, - and privacy statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#video\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"Video\"\n },\n \"PlaylistListResponse\": {\n \"id\": - \"PlaylistListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#playlistListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistListResponse\\\".\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of playlists that match the request criteria\",\n \"items\": - {\n \"$ref\": \"Playlist\"\n },\n \"type\": \"array\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"eventId\": {\n - \ \"type\": \"string\",\n \"description\": \"Serialized EventId - of the request which produced this response.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"I18nLanguageSnippet\": - {\n \"id\": \"I18nLanguageSnippet\",\n \"description\": \"Basic - details about an i18n language, such as language code and human-readable name.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"hl\": {\n - \ \"description\": \"A short BCP-47 code that uniquely identifies - a language.\",\n \"type\": \"string\"\n },\n \"name\": - {\n \"description\": \"The human-readable name of the language in - the language itself.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"properties\": {\n - \ \"amountMicros\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The amount of the fund.\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the fund was made.\",\n \"type\": \"string\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the user to this fan funding event.\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n }\n - \ },\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"type\": - \"object\"\n },\n \"PlaylistItemContentDetails\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistItemContentDetails\",\n \"properties\": - {\n \"note\": {\n \"description\": \"A user-generated note - for this item.\",\n \"type\": \"string\"\n },\n \"videoPublishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the video was published to YouTube.\",\n \"type\": - \"string\"\n },\n \"startAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify a video. To retrieve the video - resource, set the id query parameter to this value in your API request.\"\n - \ },\n \"endAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\"\n - \ }\n }\n },\n \"RelatedEntity\": {\n \"properties\": - {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n },\n - \ \"id\": \"RelatedEntity\",\n \"type\": \"object\"\n },\n \"SuperChatEventListResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of Super Chat purchases that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n }\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#superChatEventListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"SuperChatEventListResponse\"\n },\n \"CdnSettings\": {\n \"id\": - \"CdnSettings\",\n \"description\": \"Brief description of the live stream - cdn settings.\",\n \"properties\": {\n \"format\": {\n \"type\": - \"string\",\n \"description\": \"The format of the video stream that - you are sending to Youtube. \",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"ingestionInfo\": {\n \"description\": - \"The ingestionInfo object contains information that YouTube provides that - you need to transmit your RTMP or HTTP stream to YouTube.\",\n \"$ref\": - \"IngestionInfo\"\n },\n \"resolution\": {\n \"description\": - \"The resolution of the inbound video data.\",\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"ingestionType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \" The method or protocol used to - transmit the video stream.\",\n \"enum\": [\n \"rtmp\",\n - \ \"dash\",\n \"webrtc\",\n \"hls\"\n ],\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"frameRate\": {\n \"description\": - \"The frame rate of the inbound video data.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ]\n }\n - \ },\n \"type\": \"object\"\n },\n \"ThirdPartyLink\": {\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#thirdPartyLink\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the third- party account link.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the status of the link.\",\n - \ \"$ref\": \"ThirdPartyLinkStatus\"\n },\n \"linkingToken\": - {\n \"type\": \"string\",\n \"description\": \"The linking_token - identifies a YouTube account and channel with which the third party account - is linked.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\",\n \"type\": \"object\",\n \"id\": \"ThirdPartyLink\"\n - \ },\n \"VideoStatus\": {\n \"type\": \"object\",\n \"id\": - \"VideoStatus\",\n \"description\": \"Basic details about a video category, - such as its localized title. Next Id: 18\",\n \"properties\": {\n \"license\": - {\n \"type\": \"string\",\n \"description\": \"The video's - license. @mutable youtube.videos.insert youtube.videos.update\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ]\n - \ },\n \"embeddable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value indicates if the video can be embedded - on another website. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"uploadStatus\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ],\n \"description\": \"The status of the uploaded video.\",\n - \ \"enumDescriptions\": [\n \"Video has been uploaded but - not processed yet.\",\n \"Video has been successfully processed.\",\n - \ \"Processing has failed. See FailureReason.\",\n \"Video - has been rejected. See RejectionReason.\",\n \"Video has been deleted.\"\n - \ ]\n },\n \"publicStatsViewable\": {\n \"type\": - \"boolean\",\n \"description\": \"This value indicates if the extended - video statistics on the watch page can be viewed by everyone. Note that the - view count, likes, etc will still be visible if this is disabled. @mutable - youtube.videos.insert youtube.videos.update\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"rejectionReason\": - {\n \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\"\n - \ },\n \"failureReason\": {\n \"type\": \"string\",\n - \ \"description\": \"This value explains why a video failed to upload. - This property is only present if the uploadStatus property indicates that - the upload failed.\",\n \"enumDescriptions\": [\n \"Unable - to convert video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ],\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ]\n },\n \"publishAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the video is scheduled - to publish. It can be set only if the privacy status of the video is private..\",\n - \ \"format\": \"date-time\"\n },\n \"privacyStatus\": - {\n \"description\": \"The video's privacy status.\",\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\"\n }\n }\n - \ },\n \"LiveStreamConfigurationIssue\": {\n \"id\": \"LiveStreamConfigurationIssue\",\n - \ \"properties\": {\n \"reason\": {\n \"type\": \"string\",\n - \ \"description\": \"The short-form reason for this issue.\"\n },\n - \ \"severity\": {\n \"description\": \"How severe this issue - is to the stream.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"info\",\n \"warning\",\n \"error\"\n ],\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"The long-form description of the issue and how to resolve it.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The kind of error happening.\",\n \"enum\": - [\n \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ]\n }\n - \ },\n \"type\": \"object\"\n },\n \"TokenPagination\": {\n - \ \"description\": \"Stub token pagination template to suppress results.\",\n - \ \"id\": \"TokenPagination\",\n \"properties\": {},\n \"type\": - \"object\"\n },\n \"PlaylistPlayer\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"PlaylistPlayer\"\n - \ },\n \"LiveChatMessageDeletedDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"LiveStream\": {\n \"type\": \"object\",\n \"id\": - \"LiveStream\",\n \"description\": \"A live stream describes a live ingestion - point.\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the stream.\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveStream\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveStream\\\".\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"LiveStreamContentDetails\",\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n - \ },\n \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n - \ \"description\": \"The status object contains information about - live stream's status.\"\n },\n \"cdn\": {\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\",\n \"$ref\": \"CdnSettings\"\n }\n - \ }\n },\n \"IngestionInfo\": {\n \"type\": \"object\",\n \"id\": - \"IngestionInfo\",\n \"description\": \"Describes information necessary - for ingesting an RTMP, HTTP, or SRT stream.\",\n \"properties\": {\n - \ \"backupIngestionAddress\": {\n \"type\": \"string\",\n \"description\": - \"The backup ingestion URL that you should use to stream video to YouTube. - You have the option of simultaneously streaming the content that you are sending - to the ingestionAddress to this URL.\"\n },\n \"rtmpsIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"rtmpsBackupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of backupIngestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"ingestionAddress\": - {\n \"description\": \"The primary ingestion URL that you should - use to stream video to YouTube. You must stream video to this URL. Depending - on which application or tool you use to encode your video stream, you may - need to enter the stream URL and stream name separately or you may need to - concatenate them in the following format: *STREAM_URL/STREAM_NAME* \",\n \"type\": - \"string\"\n },\n \"streamName\": {\n \"description\": - \"The stream name that YouTube assigns to the video stream.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ThumbnailSetResponse\": {\n - \ \"id\": \"ThumbnailSetResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"items\": {\n \"description\": \"A list of thumbnails.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n }\n },\n \"kind\": {\n \"default\": - \"youtube#thumbnailSetResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"VideoTopicDetails\": {\n \"description\": \"Freebase topic information - related to the video.\",\n \"type\": \"object\",\n \"id\": \"VideoTopicDetails\",\n - \ \"properties\": {\n \"topicCategories\": {\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"relevantTopicIds\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\",\n - \ \"type\": \"array\"\n },\n \"topicIds\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"type\": \"array\"\n }\n }\n },\n - \ \"VideoMonetizationDetails\": {\n \"description\": \"Details about - monetization of a YouTube Video.\",\n \"id\": \"VideoMonetizationDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"access\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - value of access indicates whether the video can be monetized or not.\"\n }\n - \ }\n },\n \"Channel\": {\n \"properties\": {\n \"statistics\": - {\n \"$ref\": \"ChannelStatistics\",\n \"description\": - \"The statistics object encapsulates statistics for the channel.\"\n },\n - \ \"brandingSettings\": {\n \"description\": \"The brandingSettings - object encapsulates information about the branding of the channel.\",\n \"$ref\": - \"ChannelBrandingSettings\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel.\",\n \"type\": - \"string\"\n },\n \"topicDetails\": {\n \"$ref\": \"ChannelTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ChannelContentDetails\",\n \"description\": \"The contentDetails - object encapsulates information about the channel's content.\"\n },\n - \ \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n - \ \"localizations\": {\n \"description\": \"Localizations for - different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelLocalization\"\n },\n \"type\": \"object\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the channel, such as its title, description, and thumbnail - images.\",\n \"$ref\": \"ChannelSnippet\"\n },\n \"contentOwnerDetails\": - {\n \"description\": \"The contentOwnerDetails object encapsulates - channel data that is relevant for YouTube Partners linked with the channel.\",\n - \ \"$ref\": \"ChannelContentOwnerDetails\"\n },\n \"kind\": - {\n \"default\": \"youtube#channel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"type\": \"string\"\n },\n \"auditDetails\": {\n - \ \"$ref\": \"ChannelAuditDetails\",\n \"description\": \"The - auditionDetails object encapsulates channel data that is relevant for YouTube - Partners during the audition process.\"\n },\n \"status\": {\n - \ \"description\": \"The status object encapsulates information about - the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Channel\",\n - \ \"description\": \"A *channel* resource contains information about a - YouTube channel.\"\n },\n \"ChannelStatistics\": {\n \"properties\": - {\n \"hiddenSubscriberCount\": {\n \"description\": \"Whether - or not the number of subscribers is shown for this user.\",\n \"type\": - \"boolean\"\n },\n \"commentCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of comments for the channel.\",\n - \ \"type\": \"string\"\n },\n \"viewCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of times the channel has been viewed.\"\n },\n \"subscriberCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of subscribers that the channel has.\",\n \"format\": \"uint64\"\n - \ },\n \"videoCount\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of videos uploaded to - the channel.\"\n }\n },\n \"id\": \"ChannelStatistics\",\n - \ \"type\": \"object\",\n \"description\": \"Statistics about a channel: - number of subscribers, number of videos in the channel, etc.\"\n },\n \"InvideoTiming\": - {\n \"id\": \"InvideoTiming\",\n \"properties\": {\n \"offsetMs\": - {\n \"format\": \"uint64\",\n \"description\": \"Defines - the time at which the promotion will appear. Depending on the value of type - the value of the offsetMs field will represent a time offset from the start - or from the end of the video, expressed in milliseconds.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"Describes a timing type. If the - value is offsetFromStart, then the offsetMs field represents an offset from - the start of the video. If the value is offsetFromEnd, then the offsetMs field - represents an offset from the end of the video.\"\n },\n \"durationMs\": - {\n \"format\": \"uint64\",\n \"description\": \"Defines - the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Describes - a temporal position of a visual widget inside a video.\"\n },\n \"CommentThreadListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of comment threads that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"CommentThread\"\n - \ }\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"default\": \"youtube#commentThreadListResponse\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n },\n \"id\": \"CommentThreadListResponse\"\n - \ },\n \"ChannelConversionPings\": {\n \"properties\": {\n \"pings\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n },\n \"description\": \"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.\"\n }\n },\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"id\": \"ChannelConversionPings\",\n \"type\": - \"object\"\n },\n \"VideoFileDetails\": {\n \"id\": \"VideoFileDetails\",\n - \ \"description\": \"Describes original video file properties, including - technical details about audio and video streams, but also metadata information - like content length, digitization time, or geotagging information.\",\n \"type\": - \"object\",\n \"properties\": {\n \"creationTime\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the uploaded - video file was created. The value is specified in ISO 8601 format. Currently, - the following ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive - time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \"\n },\n \"fileSize\": {\n \"description\": \"The - uploaded file's size in bytes. This field is present whether a video file - or another type of file was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"audioStreams\": {\n - \ \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"description\": \"A list of audio streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about an audio stream.\",\n \"type\": \"array\"\n },\n \"fileType\": - {\n \"description\": \"The uploaded file's type as detected by YouTube's - video processing engine. Currently, YouTube only processes video files, but - this field is present whether a video file or another type of file was uploaded.\",\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ]\n },\n \"container\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded video file's container - format.\"\n },\n \"bitrateBps\": {\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"videoStreams\": {\n \"description\": \"A list - of video streams contained in the uploaded video file. Each item in the list - contains detailed metadata about a video stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n },\n \"type\": - \"array\"\n },\n \"durationMs\": {\n \"type\": \"string\",\n - \ \"description\": \"The length of the uploaded video in milliseconds.\",\n - \ \"format\": \"uint64\"\n },\n \"fileName\": {\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"InvideoPosition\": {\n \"properties\": {\n \"type\": - {\n \"type\": \"string\",\n \"enum\": [\n \"corner\"\n - \ ],\n \"enumDescriptions\": [\n \"\"\n ],\n - \ \"description\": \"Defines the position type.\"\n },\n \"cornerPosition\": - {\n \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"id\": \"InvideoPosition\",\n \"description\": \"Describes - the spatial position of a visual widget inside a video. It is a union of various - position types, out of which only will be set one.\",\n \"type\": \"object\"\n - \ },\n \"ActivitySnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about an activity, including title, description, thumbnails, - activity type and group. Next ID: 12\",\n \"id\": \"ActivitySnippet\",\n - \ \"properties\": {\n \"thumbnails\": {\n \"description\": - \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the video - was uploaded.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel associated with the activity.\"\n },\n \"groupId\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel responsible for - this activity\"\n },\n \"description\": {\n \"description\": - \"The description of the resource primarily associated with the activity. - @mutable youtube.activities.insert\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"enum\": [\n \"typeUnspecified\",\n - \ \"upload\",\n \"like\",\n \"favorite\",\n - \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n - \ \"recommendation\",\n \"bulletin\",\n \"social\",\n - \ \"channelItem\",\n \"promotedItem\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of activity that the resource describes.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the resource primarily associated - with the activity.\"\n }\n }\n },\n \"ChannelToStoreLinkDetails\": - {\n \"id\": \"ChannelToStoreLinkDetails\",\n \"description\": \"Information - specific to a store on a merchandising platform linked to a YouTube channel.\",\n - \ \"properties\": {\n \"merchantId\": {\n \"type\": \"string\",\n - \ \"description\": \"Google Merchant Center id of the store.\",\n - \ \"format\": \"uint64\"\n },\n \"storeName\": {\n \"type\": - \"string\",\n \"description\": \"Name of the store.\"\n },\n - \ \"storeUrl\": {\n \"description\": \"Landing page of the - store.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"I18nLanguage\": {\n \"id\": \"I18nLanguage\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the i18n language, such as language code and human-readable name.\",\n - \ \"$ref\": \"I18nLanguageSnippet\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"default\": \"youtube#i18nLanguage\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the i18n language.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"An *i18nLanguage* resource - identifies a UI language currently supported by YouTube.\"\n },\n \"MemberListResponse\": - {\n \"id\": \"MemberListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Member\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of members that match the request criteria.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"VideoAgeGating\": {\n \"type\": \"object\",\n \"id\": - \"VideoAgeGating\",\n \"properties\": {\n \"videoGameRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"Video game rating, if any.\",\n \"enum\": [\n \"anyone\",\n - \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n - \ ]\n },\n \"restricted\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Age-restricted trailers. For redband trailers - and adult-rated video-games. Only users aged 18+ can view the content. The - the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\"\n },\n \"alcoholContent\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Indicates whether - or not the video has alcoholic beverage content. Only users of legal purchasing - age in a particular country, as identified by ICAP, can view the content.\"\n - \ }\n }\n },\n \"VideoStatistics\": {\n \"id\": \"VideoStatistics\",\n - \ \"properties\": {\n \"likeCount\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of users who have indicated that they - liked the video by giving it a positive rating.\",\n \"format\": - \"uint64\"\n },\n \"favoriteCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of users who currently have the video marked as a favorite video.\"\n - \ },\n \"commentCount\": {\n \"description\": \"The - number of comments for the video.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"viewCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of times the video has - been viewed.\",\n \"type\": \"string\"\n },\n \"dislikeCount\": - {\n \"description\": \"The number of users who have indicated that - they disliked the video by giving it a negative rating.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Statistics about the video, such as - the number of times the video was viewed or liked.\"\n },\n \"LiveChatMessageListResponse\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatMessage\"\n }\n },\n \"pollingIntervalMillis\": - {\n \"description\": \"The amount of time the client should wait - before polling again.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"offlineAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the underlying stream went offline.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ }\n },\n \"MembershipsLevel\": {\n \"id\": \"MembershipsLevel\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#membershipsLevel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the memberships level.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n - \ }\n },\n \"description\": \"A *membershipsLevel* resource - represents an offer made by YouTube creators for their fans. Users can become - members of the channel by joining one of the available levels. They will provide - recurring monetary support and receives special benefits.\"\n },\n \"ActivityContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"like\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsLike\"\n - \ },\n \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"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.\"\n },\n \"favorite\": {\n - \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"recommendation\": {\n \"$ref\": - \"ActivityContentDetailsRecommendation\",\n \"description\": \"The - recommendation object contains information about a recommended resource. This - property is only present if the snippet.type is recommendation.\"\n },\n - \ \"playlistItem\": {\n \"description\": \"The playlistItem - object contains information about a new playlist item. This property is only - present if the snippet.type is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"subscription\": {\n \"description\": \"The - subscription object contains information about a channel that a user subscribed - to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"bulletin\": - {\n \"description\": \"The bulletin object contains details about - a channel bulletin post. This object is only present if the snippet.type is - bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n },\n - \ \"promotedItem\": {\n \"description\": \"The promotedItem - object contains details about a resource which is being promoted. This property - is only present if the snippet.type is promotedItem.\",\n \"$ref\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"social\": {\n - \ \"$ref\": \"ActivityContentDetailsSocial\",\n \"description\": - \"The social object contains details about a social network post. This property - is only present if the snippet.type is social.\"\n },\n \"upload\": - {\n \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\",\n - \ \"$ref\": \"ActivityContentDetailsUpload\"\n }\n },\n - \ \"id\": \"ActivityContentDetails\",\n \"description\": \"Details - about the content of an activity: the video that was shared, the channel that - was subscribed to, etc.\"\n },\n \"PlaylistItem\": {\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the playlist item, such as its title and position in the - playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n },\n \"contentDetails\": - {\n \"$ref\": \"PlaylistItemContentDetails\",\n \"description\": - \"The contentDetails object is included in the resource if the included item - is a YouTube video. The object contains additional information about the video.\"\n - \ },\n \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n - \ \"description\": \"The status object contains information about - the playlist item's privacy status.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlistItem\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the playlist item.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"PlaylistItem\"\n },\n \"Entity\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"url\": {\n \"type\": \"string\"\n },\n - \ \"typeId\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"Entity\",\n \"type\": \"object\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatModeratorListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"description\": \"A list of - moderators that match the request criteria.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n },\n \"id\": \"LiveChatModeratorListResponse\"\n - \ },\n \"I18nRegionListResponse\": {\n \"id\": \"I18nRegionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n },\n \"description\": \"A list of regions - where YouTube is available. In this map, the i18n region ID is the map key, - and its value is the corresponding i18nRegion resource.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ }\n },\n \"LiveChatMessageRetractedDetails\": {\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"VideoRating\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about rating of a video.\",\n \"id\": \"VideoRating\",\n - \ \"properties\": {\n \"rating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"Rating of - a video.\",\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the video.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"CaptionSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"isAutoSynced\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n - \ \"isLarge\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\"\n },\n \"isDraft\": {\n \"type\": - \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\"\n - \ },\n \"videoId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video associated with the caption track. @mutable youtube.captions.insert\",\n - \ \"type\": \"string\"\n },\n \"failureReason\": {\n - \ \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ],\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"audioTrackType\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of audio track associated with the caption track.\",\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"type\": \"string\",\n \"description\": - \"The caption track's status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"serving\",\n \"syncing\",\n \"failed\"\n - \ ]\n },\n \"language\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The language of - the caption track. The property value is a BCP-47 language tag.\",\n \"type\": - \"string\"\n },\n \"isEasyReader\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n },\n \"isCC\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Indicates whether - the track contains closed captions for the deaf and hard of hearing. The default - value is false.\"\n },\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the caption track. The name is intended - to be visible to the user as an option during playback.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"lastUpdated\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the caption track was last updated.\"\n },\n - \ \"trackKind\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The caption track's type.\"\n }\n },\n \"description\": - \"Basic details about a caption track, such as its language and name.\",\n - \ \"id\": \"CaptionSnippet\"\n },\n \"VideoRecordingDetails\": {\n - \ \"description\": \"Recording information associated with the video.\",\n - \ \"properties\": {\n \"locationDescription\": {\n \"type\": - \"string\",\n \"description\": \"The text description of the location - where the video was recorded.\"\n },\n \"location\": {\n \"$ref\": - \"GeoPoint\",\n \"description\": \"The geolocation information associated - with the video.\"\n },\n \"recordingDate\": {\n \"description\": - \"The date and time when the video was recorded.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoRecordingDetails\"\n },\n \"MemberSnippet\": - {\n \"properties\": {\n \"membershipsDetails\": {\n \"$ref\": - \"MembershipsDetails\",\n \"description\": \"Details about the user's - membership.\"\n },\n \"memberDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - member.\"\n },\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering memberships.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"MemberSnippet\"\n },\n \"VideoAbuseReport\": {\n \"properties\": - {\n \"secondaryReasonId\": {\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n },\n \"language\": - {\n \"description\": \"The language that the content was viewed in.\",\n - \ \"type\": \"string\"\n },\n \"reasonId\": {\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\",\n \"type\": \"string\"\n },\n - \ \"comments\": {\n \"description\": \"Additional comments - regarding the abuse report.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReport\"\n - \ },\n \"PlaylistStatus\": {\n \"properties\": {\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"The playlist's - privacy status.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"id\": \"PlaylistStatus\",\n \"type\": \"object\"\n - \ },\n \"PageInfo\": {\n \"description\": \"Paging details for lists - of resources, including total number of items available and number of resources - returned in a single page.\",\n \"id\": \"PageInfo\",\n \"properties\": - {\n \"totalResults\": {\n \"description\": \"The total number - of results in the result set.\",\n \"type\": \"integer\",\n \"format\": - \"int32\"\n },\n \"resultsPerPage\": {\n \"format\": - \"int32\",\n \"type\": \"integer\",\n \"description\": \"The - number of results included in the API response.\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoContentDetails\": {\n \"description\": - \"Details about the content of a YouTube Video.\",\n \"properties\": - {\n \"licensedContent\": {\n \"type\": \"boolean\",\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\"\n },\n \"regionRestriction\": {\n \"$ref\": - \"VideoContentDetailsRegionRestriction\",\n \"description\": \"The - regionRestriction object contains information about the countries where a - video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\"\n },\n - \ \"caption\": {\n \"enum\": [\n \"true\",\n \"false\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The value of captions indicates whether the video has captions or not.\"\n - \ },\n \"countryRestriction\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\"\n },\n - \ \"definition\": {\n \"enum\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\"\n },\n \"projection\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the projection format of the video.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"rectangular\",\n \"360\"\n ]\n },\n - \ \"contentRating\": {\n \"description\": \"Specifies the ratings - that the video received under various rating schemes.\",\n \"$ref\": - \"ContentRating\"\n },\n \"dimension\": {\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\",\n \"type\": \"string\"\n },\n \"hasCustomThumbnail\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\"\n },\n \"duration\": - {\n \"description\": \"The length of the video. The tag value is - an ISO 8601 duration in the format PT#M#S, in which the letters PT indicate - that the value specifies a period of time, and the letters M and S refer to - length in minutes and seconds, respectively. The # characters preceding the - M and S letters are both integers that specify the number of minutes (or seconds) - of the video. For example, a value of PT15M51S indicates that the video is - 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoContentDetails\",\n \"type\": \"object\"\n - \ },\n \"CommentSnippet\": {\n \"description\": \"Basic details - about a comment, such as its author and text.\",\n \"id\": \"CommentSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comment refers to, if any.\"\n },\n \"authorProfileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - the avatar of the user who posted the comment.\"\n },\n \"updatedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the comment was last updated.\",\n \"format\": \"date-time\"\n - \ },\n \"textOriginal\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"channelId\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"viewerRating\": - {\n \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"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.\"\n },\n \"parentId\": {\n \"description\": - \"The unique id of the parent comment, only set for replies.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the comment was originally published.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"textDisplay\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"authorChannelId\": {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"likeCount\": {\n \"description\": \"The total - number of likes this comment has received.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"authorDisplayName\": - {\n \"description\": \"The name of the user who posted the comment.\",\n - \ \"type\": \"string\"\n },\n \"canRate\": {\n \"description\": - \"Whether the current viewer can rate this comment.\",\n \"type\": - \"boolean\"\n },\n \"moderationStatus\": {\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n }\n }\n },\n - \ \"CommentThread\": {\n \"description\": \"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.\",\n \"id\": - \"CommentThread\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the comment thread.\"\n },\n \"snippet\": {\n \"$ref\": - \"CommentThreadSnippet\",\n \"description\": \"The snippet object - contains basic details about the comment thread and also the top level comment.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"default\": \"youtube#commentThread\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveChatMembershipGiftingDetails\": {\n - \ \"properties\": {\n \"giftMembershipsCount\": {\n \"description\": - \"The number of gift memberships purchased by the user.\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n },\n \"giftMembershipsLevelName\": - {\n \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": {\n \"type\": - \"object\",\n \"id\": \"LiveBroadcastStatus\",\n \"description\": - \"Live broadcast state.\",\n \"properties\": {\n \"madeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the broadcast is made for kids or not, decided by YouTube instead of the creator. - This field is read only.\"\n },\n \"liveBroadcastPriority\": - {\n \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"type\": \"string\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Low priority - broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ]\n },\n \"recordingStatus\": {\n \"description\": - \"The broadcast's recording status.\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"type\": - \"string\"\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\",\n \"description\": \"This field will be set to True - if the creator declares the broadcast to be kids only: go/live-cw-work.\"\n - \ },\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The broadcast's - privacy status. Note that the broadcast represents exactly one YouTube video, - so the privacy settings are identical to those supported for videos. In addition, - you can set this field by modifying the broadcast resource or by setting the - privacyStatus field of the corresponding video resource.\",\n \"type\": - \"string\"\n },\n \"lifeCycleStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"Incomplete settings, but otherwise - valid\",\n \"Complete settings\",\n \"Visible only to - partner, may need special UI treatment\",\n \"Viper is recording; - this means the \\\"clock\\\" is running\",\n \"The broadcast is - finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ]\n - \ }\n }\n },\n \"ActivityContentDetailsChannelItem\": {\n - \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"description\": \"Details about a resource which was added - to a channel.\"\n },\n \"PlaylistLocalization\": {\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for playlist's description.\"\n },\n \"title\": - {\n \"description\": \"The localized strings for playlist's title.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"PlaylistLocalization\",\n - \ \"description\": \"Playlist localization setting\",\n \"type\": - \"object\"\n },\n \"CaptionListResponse\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Caption\"\n },\n \"description\": \"A list of captions - that match the request criteria.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"CaptionListResponse\"\n - \ },\n \"PlaylistContentDetails\": {\n \"id\": \"PlaylistContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"itemCount\": - {\n \"description\": \"The number of videos in the playlist.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n }\n - \ }\n },\n \"SubscriptionListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Subscription\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of subscriptions that match - the request criteria.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"id\": \"SubscriptionListResponse\"\n },\n \"ChannelSnippet\": - {\n \"properties\": {\n \"customUrl\": {\n \"type\": - \"string\",\n \"description\": \"The custom url of the channel.\"\n - \ },\n \"description\": {\n \"description\": \"The description - of the channel.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel's default title - and description.\",\n \"type\": \"string\"\n },\n \"country\": - {\n \"description\": \"The country of the channel.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the channel was created.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\"\n },\n - \ \"title\": {\n \"description\": \"The channel's title.\",\n - \ \"type\": \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelSnippet\",\n - \ \"description\": \"Basic details about a channel, including title, description - and thumbnails.\"\n },\n \"VideoCategorySnippet\": {\n \"id\": - \"VideoCategorySnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"assignable\": {\n \"type\": \"boolean\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The video category's title.\"\n },\n \"channelId\": {\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"type\": \"string\",\n \"description\": - \"The YouTube channel that created the video category.\"\n }\n },\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\"\n },\n \"ActivityContentDetailsBulletin\": {\n \"id\": - \"ActivityContentDetailsBulletin\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource associated with a bulletin post. @mutable youtube.activities.insert\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Details about a channel bulletin post.\"\n },\n - \ \"ActivityContentDetailsPromotedItem\": {\n \"properties\": {\n \"clickTrackingUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user clicked through on this promoted item.\",\n \"type\": - \"string\"\n },\n \"destinationUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should direct - the user to, if the user chooses to visit the advertiser's website.\"\n },\n - \ \"descriptionText\": {\n \"description\": \"The text description - to accompany the promoted item.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the promoted video.\",\n \"type\": \"string\"\n - \ },\n \"customCtaButtonText\": {\n \"description\": - \"The custom call-to-action button text. If specified, it will override the - default button text for the cta_type.\",\n \"type\": \"string\"\n - \ },\n \"ctaType\": {\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"type\": \"string\"\n },\n \"adTag\": - {\n \"description\": \"The URL the client should fetch to request - a promoted item.\",\n \"type\": \"string\"\n },\n \"forecastingUrl\": - {\n \"type\": \"array\",\n \"description\": \"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.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"impressionUrl\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\"\n },\n \"creativeViewUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user was shown this promoted item.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"type\": \"object\",\n \"description\": \"Details about a resource - which is being promoted.\"\n },\n \"VideoProjectDetails\": {\n \"type\": - \"object\",\n \"properties\": {},\n \"description\": \"DEPRECATED. - b/157517979: This part was never populated after it was added. However, it - sees non-zero traffic because there is generated client code in the wild that - refers to it [1]. We keep this field and do NOT remove it because otherwise - V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"id\": \"VideoProjectDetails\"\n },\n \"VideoFileDetailsAudioStream\": - {\n \"id\": \"VideoFileDetailsAudioStream\",\n \"description\": - \"Information about an audio stream.\",\n \"type\": \"object\",\n \"properties\": - {\n \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The audio codec that the stream uses.\"\n },\n \"channelCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of audio channels that the stream contains.\"\n },\n \"vendor\": - {\n \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\",\n \"type\": - \"string\"\n },\n \"bitrateBps\": {\n \"description\": - \"The audio stream's bitrate, in bits per second.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"VideoListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Video\"\n }\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"default\": \"youtube#videoListResponse\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ }\n },\n \"id\": \"VideoListResponse\",\n \"type\": - \"object\"\n },\n \"Comment\": {\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"CommentSnippet\",\n \"description\": \"The - snippet object contains basic details about the comment.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#comment\\\".\",\n \"default\": - \"youtube#comment\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"Comment\",\n \"description\": - \"A *comment* represents a single YouTube comment.\",\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsFavorite\": {\n \"properties\": {\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Information about a video that was marked as a favorite - video.\",\n \"id\": \"ActivityContentDetailsFavorite\"\n },\n \"CommentThreadSnippet\": - {\n \"type\": \"object\",\n \"id\": \"CommentThreadSnippet\",\n - \ \"properties\": {\n \"totalReplyCount\": {\n \"format\": - \"uint32\",\n \"description\": \"The total number of replies (not - including the top level comment).\",\n \"type\": \"integer\"\n },\n - \ \"topLevelComment\": {\n \"$ref\": \"Comment\",\n \"description\": - \"The top level comment of this thread.\"\n },\n \"canReply\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n - \ \"isPublic\": {\n \"description\": \"Whether the thread (and - therefore all its comments) is visible to all YouTube users.\",\n \"type\": - \"boolean\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"description\": \"Basic - details about a comment thread.\"\n },\n \"ChannelSectionLocalization\": - {\n \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for channel section's title.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"ChannelSection localization - setting\",\n \"type\": \"object\",\n \"id\": \"ChannelSectionLocalization\"\n - \ },\n \"ActivityContentDetailsSubscription\": {\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Information about a channel that a user subscribed - to.\",\n \"id\": \"ActivityContentDetailsSubscription\"\n },\n \"ImageSettings\": - {\n \"properties\": {\n \"bannerMobileLowImageUrl\": {\n \"description\": - \"Banner image. Mobile size low resolution (320x88).\",\n \"type\": - \"string\"\n },\n \"bannerTvHighImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. TV size high resolution - (1920x1080).\"\n },\n \"bannerTabletImageUrl\": {\n \"description\": - \"Banner image. Tablet size (1707x283).\",\n \"type\": \"string\"\n - \ },\n \"backgroundImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n - \ \"description\": \"The URL for the background image shown on the - video watch page. The image should be 1200px by 615px, with a maximum file - size of 128k.\"\n },\n \"bannerImageUrl\": {\n \"description\": - \"Banner image. Desktop size (1060x175).\",\n \"type\": \"string\"\n - \ },\n \"bannerTvImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. TV size extra high resolution (2120x1192).\"\n - \ },\n \"bannerTabletExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size extra - high resolution (2560x424).\"\n },\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"largeBrandedBannerImageUrl\": {\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"watchIconImageUrl\": {\n \"type\": - \"string\"\n },\n \"bannerTvMediumImageUrl\": {\n \"description\": - \"Banner image. TV size medium resolution (1280x720).\",\n \"type\": - \"string\"\n },\n \"smallBrandedBannerImageImapScript\": {\n - \ \"$ref\": \"LocalizedProperty\",\n \"description\": \"The - image map script for the small banner image.\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 640px by 70px banner image - that appears below the video player in the default view of the video watch - page. The URL for the image that appears above the top-left corner of the - video player. This is a 25-pixel-high image with a flexible width that cannot - exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"trackingImageUrl\": {\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\",\n \"type\": \"string\"\n },\n - \ \"bannerTabletLowImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Tablet size low resolution (1138x188).\"\n - \ },\n \"bannerTvLowImageUrl\": {\n \"description\": - \"Banner image. TV size low resolution (854x480).\",\n \"type\": - \"string\"\n },\n \"bannerTabletHdImageUrl\": {\n \"description\": - \"Banner image. Tablet size high resolution (2276x377).\",\n \"type\": - \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size medium/high resolution (960x263).\",\n \"type\": - \"string\"\n },\n \"largeBrandedBannerImageImapScript\": {\n - \ \"$ref\": \"LocalizedProperty\",\n \"description\": \"The - image map script for the large banner image.\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": - {\n \"description\": \"Banner image. Mobile size (640x175).\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Branding properties for images associated with the - channel.\",\n \"id\": \"ImageSettings\"\n },\n \"LocalizedString\": - {\n \"id\": \"LocalizedString\",\n \"type\": \"object\",\n \"properties\": - {\n \"language\": {\n \"type\": \"string\"\n },\n \"value\": - {\n \"type\": \"string\"\n }\n }\n },\n \"CommentListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"A list of comments that match the request criteria.\"\n - \ }\n },\n \"id\": \"CommentListResponse\"\n },\n \"Activity\": - {\n \"id\": \"Activity\",\n \"description\": \"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.\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#activity\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n },\n \"contentDetails\": {\n - \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetails\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the activity, including the activity's type and group - ID.\",\n \"$ref\": \"ActivitySnippet\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelLocalization\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelLocalization\",\n \"description\": \"Channel localization - setting\",\n \"properties\": {\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - description.\"\n },\n \"title\": {\n \"description\": - \"The localized strings for channel's title.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": {\n - \ \"properties\": {\n \"playlistItemId\": {\n \"type\": - \"string\",\n \"description\": \"ID of the item within the playlist.\"\n - \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n },\n \"playlistId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"Information about a new playlist item.\"\n },\n \"SubscriptionSnippet\": - {\n \"description\": \"Basic details about a subscription, including - title, description and thumbnails of the subscribed item.\",\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The subscription's title.\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the subscription was created.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the video. 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.\"\n },\n \"resourceId\": {\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\",\n \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel that the subscription belongs to.\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the subscriber's channel.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The subscription's details.\"\n }\n },\n - \ \"id\": \"SubscriptionSnippet\"\n },\n \"ActivityContentDetailsComment\": - {\n \"id\": \"ActivityContentDetailsComment\",\n \"description\": - \"Information about a resource that received a comment.\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource associated with the comment.\"\n - \ }\n }\n },\n \"LiveChatTextMessageDetails\": {\n \"id\": - \"LiveChatTextMessageDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"messageText\": {\n \"description\": \"The user's message.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LiveChatBanSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"type\": - {\n \"enumDescriptions\": [\n \"An invalid ban type.\",\n - \ \"A permanent ban.\",\n \"A temporary ban.\"\n ],\n - \ \"enum\": [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"description\": \"The - type of ban.\",\n \"type\": \"string\"\n },\n \"banDurationSeconds\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The chat this ban is pertinent to.\"\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n }\n },\n \"id\": - \"LiveChatBanSnippet\"\n },\n \"ThirdPartyLinkStatus\": {\n \"properties\": - {\n \"linkStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"description\": \"The third-party - link status object contains information about the status of the link.\",\n - \ \"type\": \"object\",\n \"id\": \"ThirdPartyLinkStatus\"\n },\n - \ \"LiveChatMessageSnippet\": {\n \"properties\": {\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n },\n \"fanFundingEventDetails\": - {\n \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"superStickerDetails\": {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n - \ \"description\": \"Details about the Super Sticker event, this is - only set if the type is 'superStickerEvent'.\"\n },\n \"authorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that authored this message, this field is not always filled. textMessageEvent - - the user that wrote the message fanFundingEvent - the user that funded the - broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n },\n \"membershipGiftingDetails\": - {\n \"description\": \"Details about the Membership Gifting event, - this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": - \"LiveChatMembershipGiftingDetails\"\n },\n \"hasDisplayContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the message has display content that should be displayed to users.\"\n },\n - \ \"type\": {\n \"description\": \"The type of message, this - will always be present, it determines the contents of the message as well - as which fields will be present.\",\n \"enum\": [\n \"invalidType\",\n - \ \"textMessageEvent\",\n \"tombstone\",\n \"fanFundingEvent\",\n - \ \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n - \ \"description\": \"Details about the New Member Announcement event, - this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" - is the new term for \\\"sponsor\\\".\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the message was orignally published.\",\n \"type\": - \"string\"\n },\n \"giftMembershipReceivedDetails\": {\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\",\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"displayMessage\": {\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\",\n \"type\": \"string\"\n },\n \"superChatDetails\": - {\n \"description\": \"Details about the Super Chat event, this is - only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n - \ },\n \"textMessageDetails\": {\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\",\n - \ \"$ref\": \"LiveChatTextMessageDetails\"\n },\n \"liveChatId\": - {\n \"type\": \"string\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n }\n },\n - \ \"description\": \"Next ID: 33\",\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamListResponse\": {\n \"properties\": - {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveStreamListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"description\": \"A list of live streams that match the request - criteria.\",\n \"type\": \"array\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n }\n },\n \"id\": \"LiveStreamListResponse\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"description\": \"Information that identifies the recommended resource.\",\n - \ \"id\": \"ActivityContentDetailsRecommendation\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the recommended resource.\",\n - \ \"$ref\": \"ResourceId\"\n },\n \"seedResourceId\": - {\n \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\",\n \"$ref\": - \"ResourceId\"\n },\n \"reason\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ],\n \"description\": \"The reason that the resource is - recommended to the user.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SubscriptionSubscriberSnippet\": {\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"Basic details about a subscription's subscriber including - title, description, channel ID and thumbnails.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"channelId\": {\n \"description\": - \"The channel ID of the subscriber.\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"Thumbnails for this subscriber.\"\n },\n \"title\": {\n \"description\": - \"The title of the subscriber.\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"description\": \"The description of - the subscriber.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"LiveChatMemberMilestoneChatDetails\": {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"properties\": {\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the member to this Member - Milestone Chat. This field is empty for messages without a comment from the - member.\"\n },\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viever is a member. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"memberMonth\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The total amount of months (rounded - up) the viewer has been a member that granted them this Member Milestone Chat. - This is the same number of months as is being displayed to YouTube users.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"I18nRegion\": - {\n \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n region.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegion\"\n - \ }\n },\n \"description\": \"A *i18nRegion* resource identifies - a region where YouTube is available.\",\n \"id\": \"I18nRegion\"\n },\n - \ \"VideoGetRatingResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"default\": \"youtube#videoGetRatingResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of ratings that match the request criteria.\",\n - \ \"items\": {\n \"$ref\": \"VideoRating\"\n },\n - \ \"type\": \"array\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n },\n \"id\": \"VideoGetRatingResponse\"\n - \ },\n \"LiveChatSuperStickerDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"amountMicros\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made.\",\n \"type\": \"string\"\n },\n - \ \"tier\": {\n \"description\": \"The tier in which the amount - belongs. Lower amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"superStickerMetadata\": {\n \"description\": \"Information - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ }\n },\n \"id\": \"LiveChatSuperStickerDetails\"\n },\n - \ \"VideoAbuseReportReasonListResponse\": {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n },\n \"description\": \"A list - of valid abuse reasons that are used with `video.ReportAbuse`.\",\n \"type\": - \"array\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The `visitorId` identifies - the visitor.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"SearchListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"SearchResult\"\n - \ },\n \"type\": \"array\",\n \"description\": \"Pagination - information for token pagination.\"\n },\n \"eventId\": {\n - \ \"type\": \"string\",\n \"description\": \"Serialized EventId - of the request which produced this response.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#searchListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#searchListResponse\\\".\"\n },\n \"regionCode\": - {\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": - \"SearchListResponse\"\n },\n \"LiveChatMessageAuthorDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"isChatSponsor\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is a sponsor of the live chat.\"\n },\n \"isChatModerator\": - {\n \"description\": \"Whether the author is a moderator of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"displayName\": - {\n \"description\": \"The channel's display name.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channels's avatar URL.\"\n },\n \"isVerified\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author's identity has - been verified by YouTube.\"\n },\n \"isChatOwner\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is the owner - of the live chat.\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LiveChatMessageAuthorDetails\"\n },\n \"ContentRating\": - {\n \"description\": \"Ratings schemes. The country-specific ratings - are mostly for movies and shows. LINT.IfChange\",\n \"properties\": {\n - \ \"bbfcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG\",\n \"12A\",\n \"12\",\n - \ \"15\",\n \"18\",\n \"R18\",\n \"\"\n - \ ],\n \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n - \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n - \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n - \ \"bbfcUnrated\"\n ],\n \"description\": \"The - video's British Board of Film Classification (BBFC) rating.\",\n \"type\": - \"string\"\n },\n \"mccaaRating\": {\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"acbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"enum\": [\n \"acbUnspecified\",\n - \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n - \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n - \ \"acbR18plus\",\n \"acbUnrated\"\n ]\n },\n - \ \"mtrcbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"R-13\",\n \"R-16\",\n - \ \"R-18\",\n \"X\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Movie and Television - Review and Classification Board (Philippines).\",\n \"enum\": [\n - \ \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n - \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n - \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"menaMpaaRating\": {\n \"description\": - \"The rating system for MENA countries, a clone of MPAA. It is needed to prevent - titles go live w/o additional QC check, since some of them can be inappropriate - for the countries at all. See b/33408548 for more details.\",\n \"enum\": - [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n - \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ]\n },\n \"djctqRating\": {\n - \ \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's Departamento de Justi\xE7a, - Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n - \ \"type\": \"string\"\n },\n \"djctqRatingReasons\": - {\n \"type\": \"array\",\n \"description\": \"Reasons that - explain why the video received its DJCQT (Brazil) rating.\",\n \"items\": - {\n \"type\": \"string\",\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ]\n }\n },\n \"mocRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ],\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"description\": \"The - video's Ministerio de Cultura (Colombia) rating.\",\n \"type\": \"string\"\n - \ },\n \"moctwRating\": {\n \"enum\": [\n \"moctwUnspecified\",\n - \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n - \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n - \ \"moctwR15\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Taiwan's Ministry of - Culture (\u6587\u5316\u90E8).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P\",\n \"PG\",\n \"R\",\n - \ \"\",\n \"R-12\",\n \"R-15\"\n ]\n - \ },\n \"incaaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"description\": - \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\",\n \"type\": \"string\",\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ]\n },\n \"cicfRating\": {\n \"enum\": [\n - \ \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Commission de Contr\xF4le des Films (Belgium).\",\n \"type\": - \"string\"\n },\n \"fpbRatingReasons\": {\n \"description\": - \"Reasons that explain why the video received its FPB (South Africa) rating.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": - \"string\"\n }\n },\n \"mpaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"description\": \"The video's Motion Picture Association - of America (MPAA) rating.\",\n \"enum\": [\n \"mpaaUnspecified\",\n - \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n - \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n - \ \"mpaaUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"mdaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Singapore's - Media Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\",\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"smaisRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\"\n - \ },\n \"mekuRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Finland's - Kansallinen Audiovisuaalinen Instituutti (National Audiovisual Institute).\"\n - \ },\n \"nbcRating\": {\n \"description\": \"The video's - rating from the Maldives National Bureau of Classification.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n - \ \"18+R\",\n \"PU\",\n \"\"\n ],\n - \ \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ]\n },\n \"medietilsynetRating\": - {\n \"description\": \"The video's rating from Medietilsynet, the - Norwegian Media Authority.\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n - \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"\"\n ]\n },\n \"czfilmRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"description\": - \"The video's rating in the Czech Republic.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ]\n },\n \"mccypRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\"\n },\n \"rcnofRating\": - {\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Hungarian Nemzeti - Filmiroda, the Rating Committee of the National Office of Film.\"\n },\n - \ \"grfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n - \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n - \ ],\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"description\": \"The video's rating in Greece.\",\n \"type\": - \"string\"\n },\n \"cnaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"description\": \"The - video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n - \ \"type\": \"string\"\n },\n \"catvfrRating\": {\n - \ \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"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.\"\n },\n \"lsfRating\": {\n \"description\": - \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n - \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n - \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ]\n },\n \"rtcRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"description\": \"The video's General Directorate - of Radio, Television and Cinematography (Mexico) rating.\"\n },\n \"egfilmRating\": - {\n \"enum\": [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n - \ \"egfilm18\",\n \"egfilmBn\",\n \"egfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Egypt.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"kfcbRating\": {\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"enum\": - [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"anatelRating\": - {\n \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n - \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n - \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n - \ \"anatelUnrated\"\n ],\n \"description\": \"The - video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean - television.\",\n \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"ecbmctRating\": {\n \"enum\": [\n - \ \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Rating system in Turkey - Evaluation and Classification - Board of the Ministry of Culture and Tourism\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ]\n },\n \"catvRating\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ]\n },\n \"bmukkRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ],\n \"description\": \"The - video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\"\n },\n \"chvrsRating\": - {\n \"enum\": [\n \"chvrsUnspecified\",\n \"chvrsG\",\n - \ \"chvrsPg\",\n \"chvrs14a\",\n \"chvrs18a\",\n - \ \"chvrsR\",\n \"chvrsE\",\n \"chvrsUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ]\n },\n \"nkclvRating\": {\n \"description\": - \"The video's rating from the Nacion\xE3lais Kino centrs (National Film Centre - of Latvia).\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"mibacRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Ministero - dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n \"enum\": - [\n \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n - \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n - \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n - \ ]\n },\n \"agcomRating\": {\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\",\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ]\n },\n \"kijkwijzerRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\",\n \"type\": - \"string\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ]\n },\n \"cccRating\": - {\n \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n - \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Todo - espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n - \ \"14+\",\n \"18+\",\n \"18+ - contenido - excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"description\": \"The video's Consejo - de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\"\n },\n \"fcbmRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"fcbmUnspecified\",\n - \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n - \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n - \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Malaysia's - Film Censorship Board.\"\n },\n \"cbfcRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ],\n \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n - \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n - \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n - \ \"cbfcUnrated\"\n ],\n \"description\": \"The - video's Central Board of Film Certification (CBFC - India) rating.\"\n },\n - \ \"ilfilmRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n - \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ],\n \"description\": \"The - video's rating in Israel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"kmrbRating\": - {\n \"enum\": [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n - \ \"kmrb12plus\",\n \"kmrb15plus\",\n \"kmrbTeenr\",\n - \ \"kmrbR\",\n \"kmrbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"description\": \"The video's Korea - Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. - The KMRB rates videos in South Korea.\",\n \"type\": \"string\"\n - \ },\n \"smsaRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ]\n },\n \"mpaatRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GB\",\n \"RB\"\n ],\n \"description\": - \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ]\n },\n \"fmocRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"fmocUnspecified\",\n - \ \"fmocU\",\n \"fmoc10\",\n \"fmoc12\",\n - \ \"fmoc16\",\n \"fmoc18\",\n \"fmocE\",\n - \ \"fmocUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ],\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\"\n },\n \"ytRating\": - {\n \"description\": \"A rating that YouTube uses to identify age-restricted - content.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"ytUnspecified\",\n - \ \"ytAgeRestricted\"\n ]\n },\n \"pefilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Peru.\",\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ]\n },\n \"nbcplRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ],\n \"description\": \"The video's rating in Poland.\",\n - \ \"type\": \"string\"\n },\n \"chfilmRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ]\n },\n \"rteRating\": {\n \"enum\": [\n - \ \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"description\": \"The video's rating from Ireland's - Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"tvpgRating\": {\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's TV Parental Guidelines (TVPG) rating.\"\n },\n \"fpbRating\": - {\n \"description\": \"The video's rating from South Africa's Film - and Publication Board.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ]\n },\n \"oflcRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ],\n \"enum\": - [\n \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n - \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n - \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n - \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n - \ ],\n \"description\": \"The video's Office of Film and - Literature Classification (OFLC - New Zealand) rating.\"\n },\n \"nfrcRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from the Bulgarian National Film Center.\",\n \"enum\": [\n - \ \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n - \ \"\"\n ]\n },\n \"resorteviolenciaRating\": - {\n \"description\": \"The video's rating in Venezuela.\",\n \"enum\": - [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"fskRating\": {\n \"enum\": [\n \"fskUnspecified\",\n - \ \"fsk0\",\n \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n - \ \"fsk18\",\n \"fskUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\"\n },\n \"eirinRating\": {\n \"enum\": [\n - \ \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ],\n \"description\": \"The video's Eirin (\u6620\u502B) - rating. Eirin is the Japanese rating system.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"eefilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n - \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n - \ \"K-16\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n - \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n - \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n - \ \"eefilmK16\",\n \"eefilmUnrated\"\n ],\n - \ \"description\": \"The video's rating in Estonia.\"\n },\n - \ \"cscfRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\"\n },\n \"icaaRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ]\n },\n - \ \"nmcRating\": {\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"fcoRating\": {\n \"description\": - \"The video's rating from Hong Kong's Office for Film, Newspaper and Article - Administration.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ]\n },\n - \ \"cncRating\": {\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"Rating system in France - Commission de classification cinematographique\"\n - \ },\n \"csaRating\": {\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, - which rates broadcast content.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"Interdiction\",\n \"\"\n ]\n - \ },\n \"skfilmRating\": {\n \"description\": \"The - video's rating in Slovakia.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P2\",\n \"P5\",\n \"P8\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n - \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n - \ ]\n },\n \"cceRating\": {\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ]\n },\n \"russiaRating\": {\n \"description\": - \"The video's National Film Registry of the Russian Federation (MKRF - Russia) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"russiaUnspecified\",\n \"russia0\",\n \"russia6\",\n - \ \"russia12\",\n \"russia16\",\n \"russia18\",\n - \ \"russiaUnrated\"\n ]\n },\n \"bfvcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Thailand's Board of Film - and Video Censors.\",\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"nfvcbRating\": {\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"18\",\n \"RE\",\n \"\"\n ]\n - \ },\n \"ifcoRating\": {\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ],\n \"description\": \"The video's Irish Film Classification - Office (IFCO - Ireland) rating. See the IFCO website for more information.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"mcstRating\": - {\n \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - system for Vietnam - MCST\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ContentRating\"\n },\n - \ \"VideoAbuseReportReasonSnippet\": {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label belonging to this abuse report - reason.\"\n },\n \"secondaryReasons\": {\n \"description\": - \"The secondary reasons associated with this reason, if any are available. - (There might be 0 or more.)\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n }\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a video category, such as its localized title.\"\n },\n \"AccessPolicy\": - {\n \"type\": \"object\",\n \"properties\": {\n \"exception\": - {\n \"description\": \"A list of region codes that identify countries - where the default policy do not apply.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"allowed\": - {\n \"description\": \"The value of allowed indicates whether the - access to the policy is allowed or denied by default.\",\n \"type\": - \"boolean\"\n }\n },\n \"id\": \"AccessPolicy\",\n \"description\": - \"Rights management policy for YouTube resources.\"\n },\n \"ChannelSection\": - {\n \"id\": \"ChannelSection\",\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel section.\"\n },\n \"snippet\": - {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"contentDetails\": {\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\",\n \"$ref\": \"ChannelSectionContentDetails\"\n - \ },\n \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n - \ \"description\": \"The targeting object contains basic targeting - settings about the channel section.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#channelSection\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n - \ },\n \"localizations\": {\n \"description\": \"Localizations - for different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"type\": \"object\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ResourceId\": - {\n \"id\": \"ResourceId\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"The type of the API resource.\",\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a video. This property - is only present if the resourceId.kind value is youtube#video.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"A resource id is a generic reference that - points to another YouTube resource.\"\n },\n \"VideoSuggestions\": {\n - \ \"type\": \"object\",\n \"id\": \"VideoSuggestions\",\n \"properties\": - {\n \"editorSuggestions\": {\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ],\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ]\n - \ },\n \"description\": \"A list of video editing operations - that might improve the video quality or playback experience of the uploaded - video.\",\n \"type\": \"array\"\n },\n \"processingWarnings\": - {\n \"items\": {\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\"\n },\n \"tagSuggestions\": {\n \"items\": - {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of keyword - tags that could be added to the video's metadata to increase the likelihood - that users will locate your video when searching or browsing on YouTube.\"\n - \ },\n \"processingErrors\": {\n \"items\": {\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\"\n },\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\",\n \"type\": \"array\"\n },\n \"processingHints\": - {\n \"items\": {\n \"enumDescriptions\": [\n \"The - MP4 file is not streamable, this will slow down the processing. MOOV atom - was not found at the beginning of the file.\",\n \"Probably a - better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of suggestions that may - improve YouTube's ability to process the video.\",\n \"type\": \"array\"\n - \ }\n },\n \"description\": \"Specifies suggestions on how - to improve video content, including encoding hints, tag suggestions, and editor - suggestions.\"\n },\n \"TestItemTestItemSnippet\": {\n \"id\": - \"TestItemTestItemSnippet\",\n \"type\": \"object\",\n \"properties\": - {}\n },\n \"LiveStreamContentDetails\": {\n \"description\": \"Detailed - settings of a stream.\",\n \"type\": \"object\",\n \"properties\": - {\n \"closedCaptionsIngestionUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The ingestion URL where the closed captions of - this stream are sent.\"\n },\n \"isReusable\": {\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \",\n \"type\": \"boolean\"\n }\n },\n \"id\": \"LiveStreamContentDetails\"\n - \ },\n \"ActivityListResponse\": {\n \"id\": \"ActivityListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Activity\"\n - \ },\n \"type\": \"array\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#activityListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n }\n },\n \"Cuepoint\": - {\n \"description\": \"Note that there may be a 5-second end-point resolution - issue. For instance, if a cuepoint comes in for 22:03:27, we may stuff the - cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact of HLS.\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The identifier for cuepoint resource.\"\n },\n - \ \"insertionOffsetTimeMs\": {\n \"description\": \"The time - when the cuepoint should be inserted by offset to the broadcast actual start - time.\",\n \"format\": \"int64\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"cueType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ]\n - \ },\n \"durationSecs\": {\n \"description\": \"The - duration of this cuepoint.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"walltimeMs\": {\n \"type\": \"string\",\n - \ \"description\": \"The wall clock time at which the cuepoint should - be inserted. Only one of insertion_offset_time_ms and walltime_ms may be set - at a time.\",\n \"format\": \"uint64\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"Cuepoint\"\n },\n \"LiveStreamHealthStatus\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamHealthStatus\",\n - \ \"properties\": {\n \"status\": {\n \"type\": \"string\",\n - \ \"description\": \"The status code of this stream\",\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"lastUpdateTimeSeconds\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The last time this status was updated (in seconds)\"\n },\n \"configurationIssues\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n },\n \"description\": - \"The configurations issues on this stream\"\n }\n }\n },\n - \ \"Subscription\": {\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the subscription, including its title and the - channel that the user subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n - \ },\n \"subscriberSnippet\": {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"The subscriberSnippet object contains basic details - about the subscriber.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"default\": \"youtube#subscription\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the subscription.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains basic statistics - about the subscription.\",\n \"$ref\": \"SubscriptionContentDetails\"\n - \ }\n },\n \"id\": \"Subscription\",\n \"description\": - \"A *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"description\": \"Information about a video stream.\",\n \"id\": - \"VideoFileDetailsVideoStream\",\n \"type\": \"object\",\n \"properties\": - {\n \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The video codec that the stream uses.\"\n },\n \"bitrateBps\": - {\n \"type\": \"string\",\n \"description\": \"The video - stream's bitrate, in bits per second.\",\n \"format\": \"uint64\"\n - \ },\n \"frameRateFps\": {\n \"description\": \"The - video stream's frame rate, in frames per second.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n },\n \"rotation\": - {\n \"description\": \"The amount that YouTube needs to rotate the - original source content to properly display the video.\",\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"heightPixels\": {\n \"description\": \"The encoded video - content's height in pixels.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"aspectRatio\": {\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\",\n \"format\": \"double\",\n - \ \"type\": \"number\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"widthPixels\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The encoded video content's width - in pixels. You can calculate the video's encoding aspect ratio as width_pixels - / height_pixels.\"\n }\n }\n },\n \"InvideoBranding\": {\n - \ \"id\": \"InvideoBranding\",\n \"type\": \"object\",\n \"properties\": - {\n \"position\": {\n \"description\": \"The spatial position - within the video where the branding watermark will be displayed.\",\n \"$ref\": - \"InvideoPosition\"\n },\n \"timing\": {\n \"$ref\": - \"InvideoTiming\",\n \"description\": \"The temporal position within - the video where watermark will be displayed.\"\n },\n \"imageUrl\": - {\n \"description\": \"The url of the uploaded image. Only used in - apiary to api communication.\",\n \"type\": \"string\"\n },\n - \ \"imageBytes\": {\n \"format\": \"byte\",\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"type\": \"string\"\n },\n \"targetChannelId\": {\n - \ \"description\": \"The channel to which this branding links. If - not present it defaults to the current channel.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"LINT.IfChange Describes an invideo - branding.\"\n }\n },\n \"revision\": \"20230220\",\n \"protocol\": \"rest\",\n - \ \"documentationLink\": \"https://developers.google.com/youtube/\",\n \"fullyEncodeReservedExpansion\": - true,\n \"parameters\": {\n \"prettyPrint\": {\n \"type\": \"boolean\",\n - \ \"default\": \"true\",\n \"location\": \"query\",\n \"description\": - \"Returns response with indentations and line breaks.\"\n },\n \"alt\": - {\n \"type\": \"string\",\n \"default\": \"json\",\n \"enum\": - [\n \"json\",\n \"media\",\n \"proto\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"Responses with Content-Type - of application/json\",\n \"Media download with context-dependent Content-Type\",\n - \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n - \ \"description\": \"Data format for response.\"\n },\n \"$.xgafv\": - {\n \"type\": \"string\",\n \"enum\": [\n \"1\",\n \"2\"\n - \ ],\n \"enumDescriptions\": [\n \"v1 error format\",\n \"v2 - error format\"\n ],\n \"description\": \"V1 error format.\",\n \"location\": - \"query\"\n },\n \"fields\": {\n \"type\": \"string\",\n \"description\": - \"Selector specifying which fields to include in a partial response.\",\n - \ \"location\": \"query\"\n },\n \"access_token\": {\n \"location\": - \"query\",\n \"description\": \"OAuth access token.\",\n \"type\": - \"string\"\n },\n \"upload_protocol\": {\n \"description\": \"Upload - protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"uploadType\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n - \ },\n \"quotaUser\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"type\": \"string\"\n },\n \"callback\": {\n \"description\": - \"JSONP\",\n \"type\": \"string\",\n \"location\": \"query\"\n },\n - \ \"key\": {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"oauth_token\": {\n \"description\": \"OAuth - 2.0 token for the current user.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"auth\": {\n \"oauth2\": {\n \"scopes\": - {\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n }\n - \ }\n }\n },\n \"version\": \"v3\",\n \"discoveryVersion\": \"v1\",\n - \ \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"baseUrl\": - \"https://youtube.googleapis.com/\",\n \"canonicalName\": \"YouTube\",\n - \ \"description\": \"The YouTube Data API v3 is an API that provides access - to YouTube data, such as videos, playlists, and channels.\",\n \"rootUrl\": - \"https://youtube.googleapis.com/\",\n \"ownerDomain\": \"google.com\",\n - \ \"name\": \"youtube\",\n \"servicePath\": \"\",\n \"batchPath\": \"batch\",\n - \ \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"resources\": {\n \"activities\": {\n \"methods\": {\n \"list\": - {\n \"flatPath\": \"youtube/v3/activities\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/activities\",\n \"id\": \"youtube.activities.list\",\n - \ \"parameters\": {\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"home\": {\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": - true\n },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"publishedBefore\": - {\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"publishedAfter\": - {\n \"format\": \"google-datetime\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"maximum\": \"50\",\n - \ \"format\": \"uint32\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/superChatEvents\",\n - \ \"id\": \"youtube.superChatEvents.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"parameters\": {\n \"pageToken\": {\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"type\": \"integer\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the superChatEvent - resource parts that the API response will include. This parameter is currently - not supported.\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Return - rendered funding amounts in specified language.\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"liveChatBans\": {\n \"methods\": {\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatBans.delete\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Deletes a chat ban.\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"flatPath\": \"youtube/v3/liveChat/bans\"\n - \ },\n \"insert\": {\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\"\n }\n - \ },\n \"path\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"id\": \"youtube.liveChatBans.insert\"\n }\n }\n },\n - \ \"subscriptions\": {\n \"methods\": {\n \"list\": {\n \"response\": - {\n \"$ref\": \"SubscriptionListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Flag for returning the subscriptions of the - authenticated user.\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions of the given channel - owner.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"order\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"location\": \"query\",\n \"default\": \"relevance\",\n - \ \"description\": \"The order of the returned subscriptions\",\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ]\n },\n \"forChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\"\n },\n \"myRecentSubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"mySubscribers\": {\n \"description\": - \"Return the subscribers of the given channel owner.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"Return - the subscriptions with the given IDs for Stubby or Apiary.\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.subscriptions.list\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\"\n },\n \"insert\": {\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.subscriptions.insert\",\n \"request\": - {\n \"$ref\": \"Subscription\"\n },\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Subscription\"\n - \ }\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"id\": \"youtube.subscriptions.delete\",\n \"description\": - \"Deletes a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/subscriptions\"\n }\n }\n },\n - \ \"thirdPartyLinks\": {\n \"methods\": {\n \"list\": {\n \"id\": - \"youtube.thirdPartyLinks.list\",\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"description\": \"Get a third party link - of the given type.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ]\n - \ },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\",\n \"repeated\": true\n },\n \"linkingToken\": - {\n \"description\": \"Get a third party link with the given - linking token.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\"\n },\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.thirdPartyLinks.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Channel ID to which changes should - be applied, for delegation.\",\n \"type\": \"string\"\n },\n - \ \"linkingToken\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Delete - the partner links with the given linking token.\",\n \"required\": - true\n },\n \"type\": {\n \"enum\": [\n - \ \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Type of the link to be deleted.\",\n \"required\": true,\n - \ \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Do not use. Required for compatibility.\"\n - \ }\n }\n },\n \"update\": {\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"httpMethod\": - \"PUT\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"description\": \"Updates an existing resource.\"\n },\n - \ \"insert\": {\n \"description\": \"Inserts a new resource - into this collection.\",\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.thirdPartyLinks.insert\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"parameters\": {\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n }\n }\n }\n },\n \"liveStreams\": - {\n \"methods\": {\n \"insert\": {\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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, content_details, and status.\",\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveStreams\",\n \"description\": \"Inserts a new stream - for the authenticated user.\",\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\"\n },\n \"update\": - {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"request\": {\n - \ \"$ref\": \"LiveStream\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"PUT\",\n \"id\": \"youtube.liveStreams.update\",\n \"description\": - \"Updates an existing stream for the authenticated user.\"\n },\n \"list\": - {\n \"id\": \"youtube.liveStreams.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieve - the list of streams associated with the given channel. --\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Return LiveStreams with the - given ids from Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\",\n \"type\": - \"integer\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/liveStreams\"\n - \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.liveStreams.delete\",\n \"description\": \"Deletes an existing - stream for the authenticated user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n }\n - \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"insert\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"response\": - {\n \"$ref\": \"LiveChatModerator\"\n }\n },\n - \ \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a chat moderator.\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"id\": - \"youtube.liveChatModerators.delete\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"list\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": - {\n \"liveChatId\": {\n \"description\": \"The id - of the live chat for which moderators should be returned.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"type\": \"integer\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"LiveChatModeratorListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.liveChatModerators.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ]\n }\n }\n },\n \"playlistItems\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"parameters\": {\n \"maxResults\": {\n - \ \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"format\": \"uint32\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the playlist items associated with - the given video ID.\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"playlistId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return the playlist items within - the given playlist.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ },\n \"delete\": {\n \"id\": \"youtube.playlistItems.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n }\n },\n \"update\": - {\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"id\": - \"youtube.playlistItems.update\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true,\n \"description\": - \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"watermarks\": {\n \"methods\": - {\n \"unset\": {\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"description\": \"Allows removal of channel watermark.\",\n - \ \"path\": \"youtube/v3/watermarks/unset\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.watermarks.unset\",\n \"parameters\": - {\n \"channelId\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"set\": {\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"description\": \"Allows upload of watermark image - and setting it for a channel.\",\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"parameters\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n - \ \"path\": \"youtube/v3/watermarks/set\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\",\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n - \ }\n }\n },\n \"id\": \"youtube.watermarks.set\",\n - \ \"supportsMediaUpload\": true\n }\n }\n },\n \"channelSections\": - {\n \"methods\": {\n \"update\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"id\": - \"youtube.channelSections.update\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"PUT\"\n },\n \"insert\": {\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"id\": - \"youtube.channelSections.insert\",\n \"flatPath\": \"youtube/v3/channelSections\"\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Deletes a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\"\n },\n - \ \"list\": {\n \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return content in specified - language\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the ChannelSections owned by the authenticated - user.\"\n },\n \"id\": {\n \"description\": - \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"id\": \"youtube.channelSections.list\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n }\n }\n - \ },\n \"videos\": {\n \"methods\": {\n \"reportAbuse\": - {\n \"path\": \"youtube/v3/videos/reportAbuse\",\n \"description\": - \"Report abuse for a video.\",\n \"request\": {\n \"$ref\": - \"VideoAbuseReport\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.videos.reportAbuse\",\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\",\n \"parameterOrder\": []\n },\n - \ \"update\": {\n \"id\": \"youtube.videos.update\",\n \"response\": - {\n \"$ref\": \"Video\"\n },\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/videos\",\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"httpMethod\": \"PUT\"\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.videos.delete\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"flatPath\": - \"youtube/v3/videos\",\n \"description\": \"Deletes a resource.\",\n - \ \"path\": \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"getRating\": {\n \"description\": - \"Retrieves the ratings that the authorized user gave to a list of specified - videos.\",\n \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos/getRating\",\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/videos/getRating\",\n \"id\": - \"youtube.videos.getRating\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n }\n },\n \"rate\": {\n \"parameters\": - {\n \"rating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"required\": true,\n \"location\": - \"query\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/videos/rate\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.videos.rate\",\n - \ \"parameterOrder\": [\n \"id\",\n \"rating\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos/rate\",\n \"description\": - \"Adds a like or dislike rating to a video or removes a rating from a video.\"\n - \ },\n \"insert\": {\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"path\": \"youtube/v3/videos\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"supportsMediaUpload\": true,\n \"id\": - \"youtube.videos.insert\",\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"description\": \"Inserts a new resource - into this collection.\",\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"mediaUpload\": {\n \"protocols\": - {\n \"resumable\": {\n \"multipart\": true,\n - \ \"path\": \"/resumable/upload/youtube/v3/videos\"\n },\n - \ \"simple\": {\n \"path\": \"/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"274877906944\",\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"autoLevels\": - {\n \"description\": \"Should auto-levels be applied to the upload.\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"notifySubscribers\": {\n \"type\": - \"boolean\",\n \"default\": \"true\",\n \"description\": - \"Notify the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"location\": \"query\"\n },\n \"stabilize\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Should stabilize be applied to the upload.\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ }\n },\n \"list\": {\n \"id\": \"youtube.videos.list\",\n - \ \"parameters\": {\n \"locale\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"chart\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ],\n - \ \"description\": \"Return the videos that are in the specified - chart.\",\n \"location\": \"query\",\n \"enum\": - [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ]\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"maxWidth\": {\n \"minimum\": - \"72\",\n \"location\": \"query\",\n \"format\": - \"int32\",\n \"type\": \"integer\",\n \"description\": - \"Return the player with maximum height specified in\",\n \"maximum\": - \"8192\"\n },\n \"maxHeight\": {\n \"minimum\": - \"72\",\n \"format\": \"int32\",\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"maximum\": - \"8192\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Return - videos with the given ids.\",\n \"repeated\": true\n },\n - \ \"myRating\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return videos liked/disliked - by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"minimum\": \"1\",\n - \ \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"default\": \"5\"\n - \ },\n \"videoCategoryId\": {\n \"location\": - \"query\",\n \"default\": \"0\",\n \"type\": \"string\",\n - \ \"description\": \"Use chart that is specific to the specified - video category\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"regionCode\": {\n \"description\": - \"Use a chart that is specific to the specified region\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/videos\",\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/videos\",\n \"response\": {\n \"$ref\": \"VideoListResponse\"\n - \ }\n }\n }\n },\n \"comments\": {\n \"methods\": - {\n \"setModerationStatus\": {\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"parameters\": {\n \"moderationStatus\": {\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"required\": - true,\n \"description\": \"Specifies the requested moderation - status. Note, comments can be in statuses, which are not available through - this call. For example, this call does not allow to mark a comment as 'likely - spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Modifies - the moderation status of the comments with the given IDs\"\n },\n - \ \"banAuthor\": {\n \"default\": \"false\",\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"If set to true the author of the comment gets added to the ban list. This - means all future comments of the author will autmomatically be rejected. Only - valid in combination with STATUS_REJECTED.\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"id\",\n - \ \"moderationStatus\"\n ],\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments/setModerationStatus\",\n \"id\": - \"youtube.comments.setModerationStatus\",\n \"description\": \"Sets - the moderation status of one or more comments.\"\n },\n \"delete\": - {\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"path\": - \"youtube/v3/comments\",\n \"description\": \"Deletes a resource.\",\n - \ \"id\": \"youtube.comments.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\"\n - \ },\n \"update\": {\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"PUT\",\n - \ \"id\": \"youtube.comments.update\",\n \"request\": {\n - \ \"$ref\": \"Comment\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments\",\n \"response\": {\n - \ \"$ref\": \"Comment\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"insert\": {\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.comments.insert\",\n \"description\": \"Inserts a new resource - into this collection.\",\n \"path\": \"youtube/v3/comments\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"flatPath\": - \"youtube/v3/comments\"\n },\n \"markAsSpam\": {\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n - \ \"repeated\": true\n }\n },\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.markAsSpam\",\n \"path\": - \"youtube/v3/comments/markAsSpam\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"list\": {\n \"path\": \"youtube/v3/comments\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"response\": - {\n \"$ref\": \"CommentListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.comments.list\",\n \"parameters\": {\n - \ \"textFormat\": {\n \"default\": \"html\",\n \"location\": - \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"type\": - \"string\",\n \"description\": \"The requested text format for - the returned comments.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"Returns the comments with the given IDs for One Platform.\",\n \"location\": - \"query\"\n },\n \"parentId\": {\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"minimum\": \"1\",\n \"default\": - \"20\",\n \"location\": \"query\",\n \"maximum\": - \"100\",\n \"type\": \"integer\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies a comma-separated list of one or more comment resource - properties that the API response will include.\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the videoCategory resource parts that the API response - will include. Supported values are id and snippet.\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"default\": \"en-US\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"VideoAbuseReportReasonListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"flatPath\": - \"youtube/v3/videoAbuseReportReasons\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"i18nRegions\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/i18nRegions\",\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"id\": \"youtube.i18nRegions.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"I18nRegionListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"en_US\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n }\n }\n }\n - \ }\n },\n \"membershipsLevels\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the membershipsLevel resource parts that the API response - will include. Supported values are id and snippet.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"path\": - \"youtube/v3/membershipsLevels\",\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"update\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.channels.update\",\n \"httpMethod\": \"PUT\",\n \"request\": - {\n \"$ref\": \"Channel\"\n },\n \"flatPath\": - \"youtube/v3/channels\",\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channels\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Updates an existing resource.\"\n },\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"Return the channels with the specified IDs.\",\n \"location\": - \"query\"\n },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the channels subscribed - to the authenticated user\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"managedByMe\": - {\n \"location\": \"query\",\n \"description\": - \"Return the channels managed by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"location\": \"query\",\n \"type\": - \"integer\",\n \"description\": \"The *maxResults* parameter - specifies the maximum number of items that should be returned in the result - set.\",\n \"minimum\": \"0\",\n \"maximum\": \"50\",\n - \ \"default\": \"5\"\n },\n \"forUsername\": - {\n \"type\": \"string\",\n \"description\": \"Return - the channel associated with a YouTube username.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n },\n - \ \"mine\": {\n \"description\": \"Return the ids of - channels owned by the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"categoryId\": {\n \"location\": \"query\",\n \"description\": - \"Return the channels within the specified guide category ID.\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n - \ },\n \"id\": \"youtube.channels.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ChannelListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/channels\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/channels\"\n - \ }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.channelBanners.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"supportsMediaUpload\": true,\n \"parameterOrder\": - [],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"mediaUpload\": {\n \"maxSize\": \"6291456\",\n - \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"resumable\": {\n \"multipart\": true,\n - \ \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"path\": - \"youtube/v3/channelBanners/insert\",\n \"response\": {\n \"$ref\": - \"ChannelBannerResource\"\n }\n }\n }\n },\n \"search\": - {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/search\",\n - \ \"parameters\": {\n \"forDeveloper\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\"\n },\n \"relevanceLanguage\": - {\n \"location\": \"query\",\n \"description\": - \"Return results relevant to this language.\",\n \"type\": \"string\"\n - \ },\n \"videoCategoryId\": {\n \"description\": - \"Filter on videos in a specific category.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\"\n },\n \"forMine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Search for the private videos of the authenticated - user.\"\n },\n \"type\": {\n \"repeated\": - true,\n \"description\": \"Restrict results to a particular set - of resource types from One Platform.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"q\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Textual search terms to match.\"\n },\n - \ \"videoEmbeddable\": {\n \"description\": \"Filter - on embeddable videos.\",\n \"type\": \"string\",\n \"enum\": - [\n \"videoEmbeddableUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos, embeddable or not.\",\n \"Only retrieve embeddable - videos.\"\n ]\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"videoCaption\": {\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ]\n },\n \"videoType\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"description\": \"Filter on videos of a specific - type.\"\n },\n \"location\": {\n \"description\": - \"Filter on location of the video\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on resources belonging to this channelId.\"\n - \ },\n \"channelType\": {\n \"location\": - \"query\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"description\": \"Add - a filter on the channel search.\",\n \"type\": \"string\"\n },\n - \ \"order\": {\n \"default\": \"relevance\",\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"description\": \"Sort order of the results.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ]\n },\n \"publishedBefore\": - {\n \"type\": \"string\",\n \"format\": \"google-datetime\",\n - \ \"description\": \"Filter on resources published before this - date.\",\n \"location\": \"query\"\n },\n \"locationRadius\": - {\n \"description\": \"Filter on distance from the location (specified - above).\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoSyndicated\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"description\": \"Filter on syndicated videos.\",\n \"type\": - \"string\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\"\n },\n \"videoDimension\": {\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Filter on 3d videos.\",\n \"enum\": - [\n \"any\",\n \"2d\",\n \"3d\"\n - \ ]\n },\n \"videoLicense\": {\n \"description\": - \"Filter on the license of the videos.\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"safeSearch\": - {\n \"location\": \"query\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"moderate\"\n },\n \"videoDefinition\": {\n \"type\": - \"string\",\n \"description\": \"Filter on the definition of - the videos.\",\n \"location\": \"query\",\n \"enum\": - [\n \"any\",\n \"standard\",\n \"high\"\n - \ ],\n \"enumDescriptions\": [\n \"Return - all videos, regardless of their resolution.\",\n \"Only retrieve - videos in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ]\n },\n \"regionCode\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Display the content as seen by viewers in this country.\"\n },\n - \ \"topicId\": {\n \"type\": \"string\",\n \"description\": - \"Restrict results to a particular topic.\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"videoDuration\": {\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter video search results based on their duration. This is the default - value.\",\n \"Only include videos that are less than four minutes - long.\",\n \"Only include videos that are between four and - 20 minutes long (inclusive).\",\n \"Only include videos longer - than 20 minutes.\"\n ],\n \"location\": \"query\",\n - \ \"description\": \"Filter on the duration of the videos.\"\n - \ },\n \"eventType\": {\n \"type\": \"string\",\n - \ \"description\": \"Filter on the livestream status of the videos.\",\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"location\": \"query\"\n },\n \"forContentOwner\": - {\n \"type\": \"boolean\",\n \"description\": \"Search - owned by a content owner.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true\n },\n \"publishedAfter\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\",\n \"description\": - \"Filter on resources published after this date.\"\n },\n \"relatedToVideoId\": - {\n \"type\": \"string\",\n \"description\": \"Search - related to a resource.\",\n \"location\": \"query\"\n }\n - \ },\n \"description\": \"Retrieves a list of search resources\",\n - \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/search\",\n \"id\": \"youtube.search.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"delete\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"id\": - \"youtube.liveBroadcasts.delete\",\n \"description\": \"Delete a - given broadcast.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Broadcast to delete.\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new stream for the authenticated user.\",\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\"\n },\n \"insertCuepoint\": - {\n \"parameterOrder\": [],\n \"description\": \"Insert - cuepoints in a broadcast\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"id\": {\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"path\": - \"youtube/v3/liveBroadcasts/cuepoint\"\n },\n \"bind\": {\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"Broadcast to bind to the stream\"\n },\n \"streamId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Stream to bind, if not set unbind the current - one.\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"description\": - \"Bind a broadcast to a stream.\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"id\": \"youtube.liveBroadcasts.bind\"\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"LiveBroadcastListResponse\"\n },\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"id\": \"youtube.liveBroadcasts.list\",\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"location\": \"query\",\n \"type\": - \"integer\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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, status and statistics.\"\n },\n \"broadcastStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"location\": \"query\",\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ]\n },\n \"id\": {\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"broadcastType\": {\n \"enum\": - [\n \"broadcastTypeFilterUnspecified\",\n \"all\",\n - \ \"event\",\n \"persistent\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return only broadcasts with the selected - type.\",\n \"default\": \"event\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ]\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"mine\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"description\": \"Updates an - existing broadcast for the authenticated user.\",\n \"id\": \"youtube.liveBroadcasts.update\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\"\n },\n \"transition\": - {\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"description\": - \"Transition a broadcast to a given status.\",\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameters\": - {\n \"broadcastStatus\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"required\": true,\n \"description\": - \"The status to which the broadcast is going to transition.\"\n },\n - \ \"id\": {\n \"description\": \"Broadcast to transition.\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"id\": - \"youtube.liveBroadcasts.transition\",\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n - \ \"set\": {\n \"path\": \"youtube/v3/thumbnails/set\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"mediaUpload\": {\n \"protocols\": {\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ }\n },\n \"maxSize\": \"2097152\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"videoId\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n - \ \"location\": \"query\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"videoId\"\n ],\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"supportsMediaUpload\": - true,\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n \"response\": - {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"id\": - \"youtube.thumbnails.set\"\n }\n }\n },\n \"youtube\": {\n - \ \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"parameterOrder\": [],\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true\n - \ }\n },\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"description\": \"Updates - an existing resource.\",\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n - \ }\n }\n }\n }\n }\n },\n - \ \"captions\": {\n \"methods\": {\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"CaptionListResponse\"\n },\n \"path\": - \"youtube/v3/captions\",\n \"parameterOrder\": [\n \"part\",\n - \ \"videoId\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": - \"Returns the captions with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\"\n - \ },\n \"videoId\": {\n \"required\": true,\n - \ \"description\": \"Returns the captions for the specified video.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.captions.list\"\n - \ },\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"Caption\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"supportsMediaUpload\": - true,\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"sync\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\"\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"maxSize\": \"104857600\"\n },\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"id\": \"youtube.captions.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"PUT\"\n },\n \"insert\": {\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n },\n - \ \"resumable\": {\n \"multipart\": true,\n \"path\": - \"/resumable/upload/youtube/v3/captions\"\n }\n },\n - \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n - \ },\n \"flatPath\": \"youtube/v3/captions\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"sync\": - {\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"supportsMediaUpload\": true,\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"id\": \"youtube.captions.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"id\": \"youtube.captions.delete\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"path\": \"youtube/v3/captions\"\n },\n \"download\": - {\n \"useMediaDownloadService\": true,\n \"supportsMediaDownload\": - true,\n \"path\": \"youtube/v3/captions/{id}\",\n \"flatPath\": - \"youtube/v3/captions/{id}\",\n \"parameters\": {\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n },\n \"tfmt\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Convert the captions into this format. Supported - options are sbv, srt, and vtt.\"\n },\n \"tlang\": {\n - \ \"type\": \"string\",\n \"description\": \"tlang - is the language code; machine translate the captions into this language.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"description\": \"The - ID of the caption track to download, required for One Platform.\",\n \"type\": - \"string\",\n \"location\": \"path\",\n \"required\": - true\n }\n },\n \"description\": \"Downloads - a caption track.\",\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.download\"\n }\n }\n },\n - \ \"i18nLanguages\": {\n \"methods\": {\n \"list\": {\n \"response\": - {\n \"$ref\": \"I18nLanguageListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/i18nLanguages\",\n \"parameters\": - {\n \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"default\": \"en_US\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the i18nLanguage - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/i18nLanguages\"\n }\n }\n - \ },\n \"playlists\": {\n \"methods\": {\n \"list\": {\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"parameters\": {\n - \ \"hl\": {\n \"description\": \"Return content in - specified language\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlists owned by the specified channel ID.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"description\": \"Return the playlists owned by the authenticated - user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"PlaylistListResponse\"\n },\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlists.list\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"delete\": {\n - \ \"path\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"id\": \"youtube.playlists.delete\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n }\n },\n \"update\": {\n \"flatPath\": - \"youtube/v3/playlists\",\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"path\": \"youtube/v3/playlists\",\n \"parameters\": {\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"id\": \"youtube.playlists.update\"\n },\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"id\": \"youtube.playlists.insert\"\n }\n - \ }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.tests.insert\",\n \"response\": - {\n \"$ref\": \"TestItem\"\n },\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/tests\",\n \"request\": - {\n \"$ref\": \"TestItem\"\n },\n \"description\": - \"POST method.\",\n \"flatPath\": \"youtube/v3/tests\"\n }\n - \ }\n },\n \"videoCategories\": {\n \"methods\": {\n \"list\": - {\n \"id\": \"youtube.videoCategories.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"path\": \"youtube/v3/videoCategories\",\n \"parameters\": - {\n \"hl\": {\n \"default\": \"en-US\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the video categories with the given - IDs for Stubby or Apiary.\"\n },\n \"regionCode\": {\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/commentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"id\": - \"youtube.commentThreads.list\",\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"videoId\": {\n \"location\": - \"query\",\n \"description\": \"Returns the comment threads of - the specified video.\",\n \"type\": \"string\"\n },\n - \ \"searchTerms\": {\n \"location\": \"query\",\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\",\n \"type\": \"string\"\n - \ },\n \"moderationStatus\": {\n \"type\": - \"string\",\n \"default\": \"published\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\",\n \"description\": \"Limits the returned comment threads - to those with the specified moderation status. Not compatible with the 'id' - filter. Valid values: published, heldForReview, likelySpam.\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"100\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"20\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"1\",\n \"type\": \"integer\"\n },\n - \ \"order\": {\n \"location\": \"query\",\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Order by time.\",\n \"Order by relevance.\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"time\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"required\": - true\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Returns the comment threads - for all the channel comments (ie does not include comments left on videos).\",\n - \ \"location\": \"query\"\n },\n \"textFormat\": - {\n \"description\": \"The requested text format for the returned - comments.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"default\": \"html\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ]\n }\n }\n },\n - \ \"insert\": {\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"id\": \"youtube.commentThreads.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/commentThreads\"\n }\n }\n },\n - \ \"members\": {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"description\": \"Retrieves - a list of members that match the request criteria for a channel.\",\n \"id\": - \"youtube.members.list\",\n \"path\": \"youtube/v3/members\",\n \"flatPath\": - \"youtube/v3/members\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"minimum\": - \"0\",\n \"maximum\": \"1000\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"filterByMemberChannelId\": - {\n \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"hasAccessToLevel\": {\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"mode\": {\n \"location\": \"query\",\n - \ \"enum\": [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"default\": - \"all_current\",\n \"type\": \"string\",\n \"description\": - \"Parameter that specifies which channel members to return.\"\n }\n - \ }\n }\n }\n },\n \"abuseReports\": {\n \"methods\": - {\n \"insert\": {\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"id\": \"youtube.abuseReports.insert\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\"\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"AbuseReport\"\n - \ },\n \"flatPath\": \"youtube/v3/abuseReports\"\n }\n - \ }\n },\n \"liveChatMessages\": {\n \"methods\": {\n \"delete\": - {\n \"description\": \"Deletes a chat message.\",\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatMessages.delete\",\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"list\": {\n \"parameters\": - {\n \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n - \ },\n \"maxResults\": {\n \"type\": \"integer\",\n - \ \"minimum\": \"200\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"default\": \"500\",\n \"location\": - \"query\",\n \"maximum\": \"2000\",\n \"format\": - \"uint32\"\n },\n \"liveChatId\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The id of the live chat for which comments should be returned.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the liveChatComment resource parts that the API response will include. Supported - values are id and snippet.\",\n \"repeated\": true\n },\n - \ \"profileImageSize\": {\n \"format\": \"uint32\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\",\n \"type\": \"integer\",\n - \ \"minimum\": \"16\",\n \"location\": \"query\",\n - \ \"maximum\": \"720\"\n },\n \"hl\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Specifies the localization language in which - the system messages should be returned.\"\n }\n },\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.liveChatMessages.list\",\n \"response\": - {\n \"$ref\": \"LiveChatMessageListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"httpMethod\": - \"GET\"\n },\n \"insert\": {\n \"id\": \"youtube.liveChatMessages.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/liveChat/messages\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"request\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ }\n }\n }\n }\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:37 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCxcrzzhQDj5zKJbXfIscCtg&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"J54DNArhCa4pNDsE6Id_JNoOZHs\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"eB4QkL4gaQqpWYXpGF_uc1igsC0\",\n \"id\": \"UCxcrzzhQDj5zKJbXfIscCtg\",\n - \ \"snippet\": {\n \"title\": \"ABC News In-depth\",\n \"description\": - \"Welcome to ABC News In-depth, where you'll find our long-form journalism - and explainers to help you understand what's going on in the world around - you.\\n\\nYou'll find all your favourite ABC News programs: Four Corners, - Foreign Correspondent, Australian Story, Planet America and selected 7.30 - stories, as well as explainers and news features made just for you. Make sure - you subscribe and hit the bell so you don't miss new episodes.\\n\\nABC News - In-depth helps you dig a little deeper. That means looking into the issues - that affect all of us, and why it matters to you. It means going to where - the people are, across Australia and the world. And it also means breaking - all of that down for you, one step at a time.\\n\\nIf you're looking for breaking - news and our 24/7 ABC News live stream, subscribe to ABC News: https://www.youtube.com/user/NewsOnABC\\n\",\n - \ \"customUrl\": \"@abcnewsindepth\",\n \"publishedAt\": \"2019-08-18T23:30:03Z\",\n - \ \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/ytc/AL5GRJUfp4K_rSw1cyrmvPPpipql2lb5bbfrNuWDwO2E=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJUfp4K_rSw1cyrmvPPpipql2lb5bbfrNuWDwO2E=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJUfp4K_rSw1cyrmvPPpipql2lb5bbfrNuWDwO2E=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"ABC News In-depth\",\n \"description\": - \"Welcome to ABC News In-depth, where you'll find our long-form journalism - and explainers to help you understand what's going on in the world around - you.\\n\\nYou'll find all your favourite ABC News programs: Four Corners, - Foreign Correspondent, Australian Story, Planet America and selected 7.30 - stories, as well as explainers and news features made just for you. Make sure - you subscribe and hit the bell so you don't miss new episodes.\\n\\nABC News - In-depth helps you dig a little deeper. That means looking into the issues - that affect all of us, and why it matters to you. It means going to where - the people are, across Australia and the world. And it also means breaking - all of that down for you, one step at a time.\\n\\nIf you're looking for breaking - news and our 24/7 ABC News live stream, subscribe to ABC News: https://www.youtube.com/user/NewsOnABC\\n\"\n - \ },\n \"country\": \"AU\"\n },\n \"brandingSettings\": - {\n \"channel\": {\n \"title\": \"ABC News In-depth\",\n \"description\": - \"Welcome to ABC News In-depth, where you'll find our long-form journalism - and explainers to help you understand what's going on in the world around - you.\\n\\nYou'll find all your favourite ABC News programs: Four Corners, - Foreign Correspondent, Australian Story, Planet America and selected 7.30 - stories, as well as explainers and news features made just for you. Make sure - you subscribe and hit the bell so you don't miss new episodes.\\n\\nABC News - In-depth helps you dig a little deeper. That means looking into the issues - that affect all of us, and why it matters to you. It means going to where - the people are, across Australia and the world. And it also means breaking - all of that down for you, one step at a time.\\n\\nIf you're looking for breaking - news and our 24/7 ABC News live stream, subscribe to ABC News: https://www.youtube.com/user/NewsOnABC\\n\",\n - \ \"keywords\": \"news abc \\\"abc news\\\" \\\"abc news Australia\\\" - \\\"abc news in-depth\\\"\",\n \"country\": \"AU\"\n },\n - \ \"image\": {\n \"bannerExternalUrl\": \"https://yt3.googleusercontent.com/v_adX_IpkgOBf8afiLaDZ1RkDamWj6hTq4ucmx3mHV9ZAFfi-5dnz1k5OA0-p3fk76SsDSSmEyE\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:37 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"parameters\": {\n \"callback\": {\n \"location\": \"query\",\n - \ \"description\": \"JSONP\",\n \"type\": \"string\"\n },\n \"oauth_token\": - {\n \"description\": \"OAuth 2.0 token for the current user.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"upload_protocol\": - {\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"quotaUser\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"uploadType\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Legacy upload protocol - for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n },\n \"prettyPrint\": - {\n \"description\": \"Returns response with indentations and line breaks.\",\n - \ \"location\": \"query\",\n \"default\": \"true\",\n \"type\": - \"boolean\"\n },\n \"key\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"fields\": {\n \"type\": - \"string\",\n \"description\": \"Selector specifying which fields to - include in a partial response.\",\n \"location\": \"query\"\n },\n - \ \"access_token\": {\n \"description\": \"OAuth access token.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"alt\": - {\n \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"default\": \"json\",\n \"description\": \"Data format - for response.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"location\": \"query\"\n - \ },\n \"$.xgafv\": {\n \"enumDescriptions\": [\n \"v1 error - format\",\n \"v2 error format\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"1\",\n \"2\"\n ],\n \"description\": - \"V1 error format.\",\n \"location\": \"query\"\n }\n },\n \"basePath\": - \"\",\n \"canonicalName\": \"YouTube\",\n \"auth\": {\n \"oauth2\": {\n - \ \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n }\n - \ }\n }\n },\n \"description\": \"The YouTube Data API v3 is an API - that provides access to YouTube data, such as videos, playlists, and channels.\",\n - \ \"title\": \"YouTube Data API v3\",\n \"kind\": \"discovery#restDescription\",\n - \ \"schemas\": {\n \"Playlist\": {\n \"description\": \"A *playlist* - resource represents a YouTube playlist. A playlist is a collection of videos - that can be viewed sequentially and shared with other users. A playlist can - contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"properties\": {\n \"player\": - {\n \"description\": \"The player object contains information that - you would use to play the playlist in an embedded player.\",\n \"$ref\": - \"PlaylistPlayer\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the playlist, such as its title and description.\",\n \"$ref\": - \"PlaylistSnippet\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information like video count.\",\n \"$ref\": - \"PlaylistContentDetails\"\n },\n \"status\": {\n \"description\": - \"The status object contains status information for the playlist.\",\n \"$ref\": - \"PlaylistStatus\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the playlist.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#playlist\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n - \ },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"description\": \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n }\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"Playlist\"\n },\n - \ \"CommentSnippet\": {\n \"properties\": {\n \"publishedAt\": - {\n \"description\": \"The date and time when the comment was originally - published.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comment refers to, if any.\"\n },\n \"textOriginal\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"likeCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total number of likes this comment has received.\"\n },\n \"textDisplay\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"canRate\": {\n \"description\": - \"Whether the current viewer can rate this comment.\",\n \"type\": - \"boolean\"\n },\n \"updatedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the comment was last updated.\"\n },\n \"authorProfileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - the avatar of the user who posted the comment.\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"viewerRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"moderationStatus\": - {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"parentId\": - {\n \"type\": \"string\",\n \"description\": \"The unique - id of the parent comment, only set for replies.\"\n }\n },\n \"id\": - \"CommentSnippet\",\n \"type\": \"object\",\n \"description\": \"Basic - details about a comment, such as its author and text.\"\n },\n \"LiveBroadcast\": - {\n \"description\": \"A *liveBroadcast* resource represents an event - that will be streamed, via live video, on YouTube.\",\n \"id\": \"LiveBroadcast\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"LiveBroadcastSnippet\",\n \"description\": - \"The snippet object contains basic details about the event, including its - title, description, start time, and end time.\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"default\": \"youtube#liveBroadcast\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the broadcast.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"The statistics object contains info about the - event's current stats. These include concurrent viewers and total chat count. - Statistics can change (in either direction) during the lifetime of an event. - Statistics are only returned while the event is live.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveBroadcastContentDetails\": - {\n \"id\": \"LiveBroadcastContentDetails\",\n \"description\": - \"Detailed settings of a broadcast.\",\n \"properties\": {\n \"stereoLayout\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The 3D stereo layout of this broadcast. This - defaults to mono.\"\n },\n \"boundStreamId\": {\n \"type\": - \"string\",\n \"description\": \"This value uniquely identifies the - live stream bound to the broadcast.\"\n },\n \"recordFromStart\": - {\n \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\",\n \"type\": \"boolean\"\n },\n \"enableDvr\": - {\n \"description\": \"This setting determines whether viewers can - access DVR controls while watching the video. DVR controls enable the viewer - to control the video playback experience by pausing, rewinding, or fast forwarding - content. The default value for this property is true. *Important:* You must - set the value to true and also set the enableArchive property's value to true - if you want to make playback available immediately after the broadcast ends.\",\n - \ \"type\": \"boolean\"\n },\n \"enableContentEncryption\": - {\n \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n - \ },\n \"closedCaptionsType\": {\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\"\n },\n \"enableClosedCaptions\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether HTTP POST closed captioning is enabled for this broadcast. - The ingestion URL of the closed captions is returned through the liveStreams - API. This is mutually exclusive with using the closed_captions_type property, - and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n - \ },\n \"projection\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\"\n - \ },\n \"startWithSlate\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\"\n },\n \"latencyPreference\": - {\n \"description\": \"If both this and enable_low_latency are set, - they must match. LATENCY_NORMAL should match enable_low_latency=false LATENCY_LOW - should match enable_low_latency=true LATENCY_ULTRA_LOW should have enable_low_latency - omitted.\",\n \"type\": \"string\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ]\n },\n \"enableAutoStop\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - auto stop is enabled for this broadcast. The default value for this property - is false. This setting can only be used by Events.\"\n },\n \"enableAutoStart\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"mesh\": {\n \"type\": \"string\",\n \"format\": - \"byte\",\n \"description\": \"The mesh for projecting the video - if projection is mesh. The mesh value must be a UTF-8 string containing the - base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC specification - for an mshp box, excluding the box size and type but including the following - four reserved zero bytes for the version and flags.\"\n },\n \"monitorStream\": - {\n \"$ref\": \"MonitorStreamInfo\",\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\"\n },\n \"enableLowLatency\": {\n - \ \"description\": \"Indicates whether this broadcast has low latency - enabled.\",\n \"type\": \"boolean\"\n },\n \"enableEmbed\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast video can be played in an embedded player. - If you choose to archive the video (using the enableArchive property), this - setting will also apply to the archived video.\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelTopicDetails\": {\n \"properties\": - {\n \"topicCategories\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\"\n },\n - \ \"topicIds\": {\n \"description\": \"A list of Freebase topic - IDs associated with the channel. You can retrieve information about each topic - using the Freebase Topic API.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Freebase topic information - related to the channel.\",\n \"id\": \"ChannelTopicDetails\"\n },\n - \ \"SuperChatEventSnippet\": {\n \"properties\": {\n \"isSuperStickerEvent\": - {\n \"description\": \"True if this event is a Super Sticker event.\",\n - \ \"type\": \"boolean\"\n },\n \"supporterDetails\": - {\n \"description\": \"Details about the supporter.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"displayString\": {\n \"description\": - \"A rendered string that displays the purchase amount and currency (e.g., - \\\"$1.00\\\"). The string is rendered for the given language.\",\n \"type\": - \"string\"\n },\n \"commentText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text contents of the comment left by the - user.\"\n },\n \"amountMicros\": {\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"createdAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the event - occurred.\"\n },\n \"messageType\": {\n \"format\": - \"uint32\",\n \"description\": \"The tier for the paid message, which - is based on the amount of money spent to purchase the message.\",\n \"type\": - \"integer\"\n },\n \"channelId\": {\n \"description\": - \"Channel id where the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"superStickerMetadata\": {\n \"$ref\": \"SuperStickerMetadata\",\n - \ \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\"\n }\n },\n \"id\": - \"SuperChatEventSnippet\",\n \"type\": \"object\"\n },\n \"LiveChatMessageSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Next ID: 33\",\n - \ \"id\": \"LiveChatMessageSnippet\",\n \"properties\": {\n \"hasDisplayContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the message has display content that should be displayed to users.\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"memberMilestoneChatDetails\": {\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\",\n \"description\": \"Details - about the Member Milestone Chat event, this is only set if the type is 'memberMilestoneChatEvent'.\"\n - \ },\n \"fanFundingEventDetails\": {\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n },\n \"newSponsorDetails\": - {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": - \"Details about the New Member Announcement event, this is only set if the - type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term - for \\\"sponsor\\\".\"\n },\n \"messageRetractedDetails\": {\n - \ \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"displayMessage\": {\n \"description\": \"Contains a string - that can be displayed to the user. If this field is not present the message - is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\",\n \"type\": \"string\"\n },\n \"superStickerDetails\": - {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\",\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"type\": \"string\"\n },\n \"superChatDetails\": - {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the message was orignally - published.\",\n \"format\": \"date-time\"\n },\n \"membershipGiftingDetails\": - {\n \"description\": \"Details about the Membership Gifting event, - this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": - \"LiveChatMembershipGiftingDetails\"\n },\n \"authorChannelId\": - {\n \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\",\n \"type\": \"string\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n }\n }\n - \ },\n \"Activity\": {\n \"description\": \"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.\",\n \"type\": - \"object\",\n \"id\": \"Activity\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the activity.\",\n \"type\": \"string\"\n },\n \"contentDetails\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetails\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the activity, including - the activity's type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#activity\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#activity\\\".\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelBrandingSettings\": {\n \"id\": - \"ChannelBrandingSettings\",\n \"properties\": {\n \"watch\": - {\n \"$ref\": \"WatchSettings\",\n \"description\": \"Branding - properties for the watch page.\"\n },\n \"hints\": {\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n },\n \"description\": - \"Additional experimental branding properties.\",\n \"type\": \"array\"\n - \ },\n \"image\": {\n \"$ref\": \"ImageSettings\",\n - \ \"description\": \"Branding properties for branding images.\"\n - \ },\n \"channel\": {\n \"$ref\": \"ChannelSettings\",\n - \ \"description\": \"Branding properties for the channel view.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Branding - properties of a YouTube channel.\"\n },\n \"ChannelSectionContentDetails\": - {\n \"properties\": {\n \"channels\": {\n \"type\": \"array\",\n - \ \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"playlists\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Details about a channelsection, including playlists - and channels.\",\n \"id\": \"ChannelSectionContentDetails\"\n },\n - \ \"VideoLiveStreamingDetails\": {\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"activeLiveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the currently active live chat attached to this video. This field is filled - only if the video is a currently live broadcast that has live chat. Once the - broadcast transitions to complete this field will be removed and the live - chat closed down. For persistent broadcasts that live chat id will no longer - be tied to this video but rather to the new video being displayed at the persistent - page.\"\n },\n \"scheduledStartTime\": {\n \"description\": - \"The time that the broadcast is scheduled to begin.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"concurrentViewers\": - {\n \"description\": \"The number of viewers currently watching the - broadcast. The property and its value will be present if the broadcast has - current viewers and the broadcast owner has not hidden the viewcount for the - video. Note that YouTube stops tracking the number of concurrent viewers for - a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"scheduledEndTime\": {\n \"description\": - \"The time that the broadcast is scheduled to end. If the value is empty or - the property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"actualStartTime\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The time that the broadcast actually - started. This value will not be available until the broadcast begins.\"\n - \ },\n \"actualEndTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast actually ended. This - value will not be available until the broadcast is over.\",\n \"format\": - \"date-time\"\n }\n },\n \"description\": \"Details about - the live streaming metadata.\"\n },\n \"ContentRating\": {\n \"type\": - \"object\",\n \"id\": \"ContentRating\",\n \"description\": \"Ratings - schemes. The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n - \ \"properties\": {\n \"nfvcbRating\": {\n \"enum\": [\n - \ \"nfvcbUnspecified\",\n \"nfvcbG\",\n \"nfvcbPg\",\n - \ \"nfvcb12\",\n \"nfvcb12a\",\n \"nfvcb15\",\n - \ \"nfvcb18\",\n \"nfvcbRe\",\n \"nfvcbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Nigeria's National Film and Video Censors Board.\"\n },\n \"rcnofRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Hungarian - Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\"\n - \ },\n \"ytRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ]\n - \ },\n \"bmukkRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"Unrestricted\",\n \"6+\",\n \"8+\",\n - \ \"10+\",\n \"12+\",\n \"14+\",\n \"16+\",\n - \ \"\"\n ],\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"type\": \"string\"\n - \ },\n \"acbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"E\",\n \"Programs that have been - given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"acbUnspecified\",\n - \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n - \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n - \ \"acbR18plus\",\n \"acbUnrated\"\n ]\n },\n - \ \"csaRating\": {\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from France's - Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\"\n - \ },\n \"mcstRating\": {\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating system for Vietnam - - MCST\",\n \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ]\n - \ },\n \"bfvcRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ],\n \"description\": \"The video's rating from Thailand's - Board of Film and Video Censors.\"\n },\n \"grfilmRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n - \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n - \ ],\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"description\": \"The video's rating in Greece.\"\n },\n - \ \"chvrsRating\": {\n \"enum\": [\n \"chvrsUnspecified\",\n - \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n - \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n - \ \"chvrsUnrated\"\n ],\n \"description\": \"The - video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"mpaaRating\": - {\n \"description\": \"The video's Motion Picture Association of - America (MPAA) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ]\n },\n \"fcoRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Hong Kong's Office for - Film, Newspaper and Article Administration.\",\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ]\n },\n - \ \"lsfRating\": {\n \"enum\": [\n \"lsfUnspecified\",\n - \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n - \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n - \ \"lsfUnrated\"\n ],\n \"description\": \"The - video's rating from Indonesia's Lembaga Sensor Film.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ]\n },\n \"cncRating\": {\n \"enum\": [\n - \ \"cncUnspecified\",\n \"cncT\",\n \"cnc10\",\n - \ \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n \"cncE\",\n - \ \"cncInterdiction\",\n \"cncUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ],\n - \ \"description\": \"Rating system in France - Commission de classification - cinematographique\",\n \"type\": \"string\"\n },\n \"incaaRating\": - {\n \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n - \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n - \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"description\": \"The video's INCAA - (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.\"\n - \ },\n \"smsaRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"All - ages\",\n \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Statens - medier\xE5d (Sweden's National Media Council).\"\n },\n \"ecbmctRating\": - {\n \"description\": \"Rating system in Turkey - Evaluation and Classification - Board of the Ministry of Culture and Tourism\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ]\n },\n \"fcbmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"enum\": - [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"description\": \"The - video's rating from Malaysia's Film Censorship Board.\",\n \"type\": - \"string\"\n },\n \"icaaRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ],\n - \ \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ],\n \"description\": \"The - video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - - Spain) rating.\"\n },\n \"fpbRating\": {\n \"enum\": - [\n \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n - \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n - \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X18\",\n - \ \"XX\",\n \"\",\n \"10\"\n ],\n - \ \"type\": \"string\"\n },\n \"skfilmRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ],\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in Slovakia.\"\n - \ },\n \"fskRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"description\": \"The - video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.\"\n - \ },\n \"russiaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"description\": \"The video's National Film Registry - of the Russian Federation (MKRF - Russia) rating.\"\n },\n \"cicfRating\": - {\n \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n - \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Commission de Contr\xF4le - des Films (Belgium).\",\n \"type\": \"string\"\n },\n \"eirinRating\": - {\n \"description\": \"The video's Eirin (\u6620\u502B) rating. Eirin - is the Japanese rating system.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG-12\",\n \"R15+\",\n \"R18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"kfcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"enum\": - [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"cbfcRating\": - {\n \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n - \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n - \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n - \ \"cbfcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ],\n \"description\": \"The video's Central Board of Film - Certification (CBFC - India) rating.\"\n },\n \"kijkwijzerRating\": - {\n \"description\": \"The video's NICAM/Kijkwijzer rating from the - Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\",\n - \ \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"rtcRating\": {\n \"enum\": [\n \"rtcUnspecified\",\n - \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n - \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n - \ ],\n \"description\": \"The video's General Directorate - of Radio, Television and Cinematography (Mexico) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n - \ \"D\",\n \"\"\n ]\n },\n \"mekuRating\": - {\n \"description\": \"The video's rating from Finland's Kansallinen - Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ]\n },\n \"nmcRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ],\n - \ \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ],\n \"description\": \"The - National Media Council ratings system for United Arab Emirates.\"\n },\n - \ \"smaisRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\"\n - \ },\n \"djctqRatingReasons\": {\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Brazil - rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia - (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n - \ \"Conte\xFAdo sexual (Sexual content)\",\n \"Nudez - (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo Expl\xEDcito - (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ]\n }\n },\n \"tvpgRating\": {\n \"enum\": - [\n \"tvpgUnspecified\",\n \"tvpgY\",\n \"tvpgY7\",\n - \ \"tvpgY7Fv\",\n \"tvpgG\",\n \"tvpgPg\",\n - \ \"pg14\",\n \"tvpgMa\",\n \"tvpgUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's TV Parental Guidelines (TVPG) rating.\"\n },\n \"menaMpaaRating\": - {\n \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\",\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ]\n },\n \"mocRating\": {\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"kmrbRating\": - {\n \"enum\": [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n - \ \"kmrb12plus\",\n \"kmrb15plus\",\n \"kmrbTeenr\",\n - \ \"kmrbR\",\n \"kmrbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"description\": \"The video's Korea - Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. - The KMRB rates videos in South Korea.\",\n \"type\": \"string\"\n - \ },\n \"medietilsynetRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Medietilsynet, the Norwegian - Media Authority.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ]\n },\n \"mccypRating\": {\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ]\n },\n \"cscfRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Luxembourg's Commission de surveillance de la classification des - films (CSCF).\",\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ]\n },\n \"cccRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Todo espectador\",\n - \ \"6+ - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n - \ \"18+\",\n \"18+ - contenido excesivamente violento\",\n - \ \"18+ - contenido pornogr\xE1fico\",\n \"\"\n ],\n - \ \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n - \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\"\n - \ },\n \"mpaatRating\": {\n \"description\": \"The rating - system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n - \ ]\n },\n \"mdaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Singapore's - Media Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\",\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"chfilmRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"0\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ]\n },\n \"djctqRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's Departamento de Justi\xE7a, - Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n - \ \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"czfilmRating\": {\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"description\": - \"The video's rating in the Czech Republic.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ]\n },\n \"eefilmRating\": {\n \"description\": - \"The video's rating in Estonia.\",\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"resorteviolenciaRating\": - {\n \"description\": \"The video's rating in Venezuela.\",\n \"enum\": - [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"rteRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"description\": \"The video's rating from Ireland's - Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ]\n },\n \"pefilmRating\": - {\n \"description\": \"The video's rating in Peru.\",\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"egfilmRating\": - {\n \"description\": \"The video's rating in Egypt.\",\n \"enum\": - [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n \"egfilm18\",\n - \ \"egfilmBn\",\n \"egfilmUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ]\n - \ },\n \"nkclvRating\": {\n \"description\": \"The video's - rating from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"ilfilmRating\": {\n \"enum\": - [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n - \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating in Israel.\"\n },\n \"cceRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"4\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\",\n \"14\"\n ],\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\"\n },\n \"mccaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ],\n \"description\": \"The - video's rating from Malta's Film Age-Classification Board.\",\n \"type\": - \"string\"\n },\n \"bbfcRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ],\n - \ \"description\": \"The video's British Board of Film Classification - (BBFC) rating.\",\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ]\n },\n - \ \"cnaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"AP\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"18+\",\n \"\"\n ],\n \"description\": - \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\",\n \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"mibacRating\": {\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"oflcRating\": {\n \"enum\": - [\n \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n - \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n - \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n - \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n - \ ],\n \"description\": \"The video's Office of Film and - Literature Classification (OFLC - New Zealand) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ]\n },\n \"moctwRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P\",\n \"PG\",\n \"R\",\n - \ \"\",\n \"R-12\",\n \"R-15\"\n ],\n - \ \"description\": \"The video's rating from Taiwan's Ministry of - Culture (\u6587\u5316\u90E8).\",\n \"enum\": [\n \"moctwUnspecified\",\n - \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n - \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n - \ \"moctwR15\"\n ]\n },\n \"agcomRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n - \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\"\n },\n \"nfrcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"type\": - \"string\",\n \"enum\": [\n \"nfrcUnspecified\",\n \"nfrcA\",\n - \ \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n - \ \"nfrcUnrated\"\n ]\n },\n \"catvRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n - \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n - \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n - \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n - \ \"catvE\"\n ],\n \"description\": \"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.\"\n },\n \"anatelRating\": - {\n \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n - \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n - \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n - \ \"anatelUnrated\"\n ],\n \"description\": \"The - video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean - television.\",\n \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"nbcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Maldives National Bureau of Classification.\",\n \"enum\": - [\n \"nbcUnspecified\",\n \"nbcG\",\n \"nbcPg\",\n - \ \"nbc12plus\",\n \"nbc15plus\",\n \"nbc18plus\",\n - \ \"nbc18plusr\",\n \"nbcPu\",\n \"nbcUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"ifcoRating\": - {\n \"description\": \"The video's Irish Film Classification Office - (IFCO - Ireland) rating. See the IFCO website for more information.\",\n \"type\": - \"string\",\n \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n - \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n - \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n - \ \"ifco18\",\n \"ifcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"mtrcbRating\": - {\n \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n - \ \"X\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Movie and Television - Review and Classification Board (Philippines).\"\n },\n \"catvfrRating\": - {\n \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"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.\"\n },\n \"fmocRating\": {\n \"enum\": [\n - \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"description\": - \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ]\n },\n \"nbcplRating\": {\n \"enum\": [\n - \ \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The video's rating in Poland.\",\n \"type\": \"string\"\n },\n - \ \"fpbRatingReasons\": {\n \"items\": {\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"South - Africa rating content descriptors.\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"description\": \"Reasons that explain - why the video received its FPB (South Africa) rating.\",\n \"type\": - \"array\"\n }\n }\n },\n \"VideoTopicDetails\": {\n \"id\": - \"VideoTopicDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"topicCategories\": {\n \"description\": \"A list of - Wikipedia URLs that provide a high-level description of the video's content.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"relevantTopicIds\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"Similar to topic_id, except that these topics - are merely relevant to the video. These are topics that may be mentioned in, - or appear in the video. You can retrieve information about each topic using - Freebase Topic API.\"\n },\n \"topicIds\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of Freebase topic IDs that are centrally - associated with the video. These are topics that are centrally featured in - the video, and it can be said that the video is mainly about each of these. - You can retrieve information about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n }\n },\n \"description\": \"Freebase topic - information related to the video.\"\n },\n \"ChannelConversionPings\": - {\n \"id\": \"ChannelConversionPings\",\n \"properties\": {\n \"pings\": - {\n \"description\": \"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.\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n },\n \"type\": \"array\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\"\n },\n \"I18nLanguageListResponse\": {\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of supported i18n languages. In this map, the i18n language ID is - the map key, and its value is the corresponding i18nLanguage resource.\",\n - \ \"items\": {\n \"$ref\": \"I18nLanguage\"\n }\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"I18nLanguageListResponse\"\n },\n \"IngestionInfo\": {\n \"id\": - \"IngestionInfo\",\n \"properties\": {\n \"ingestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The primary - ingestion URL that you should use to stream video to YouTube. You must stream - video to this URL. Depending on which application or tool you use to encode - your video stream, you may need to enter the stream URL and stream name separately - or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \"\n },\n \"backupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The backup ingestion URL that you - should use to stream video to YouTube. You have the option of simultaneously - streaming the content that you are sending to the ingestionAddress to this - URL.\"\n },\n \"streamName\": {\n \"description\": - \"The stream name that YouTube assigns to the video stream.\",\n \"type\": - \"string\"\n },\n \"rtmpsIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of backupIngestionAddress in order - to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Describes information - necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"type\": - \"object\"\n },\n \"MembershipsDuration\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The cumulative time the user has been a member across all levels in complete - months (the time is rounded down to the nearest integer).\"\n },\n - \ \"memberSince\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the user became a continuous member across all levels.\"\n - \ }\n },\n \"id\": \"MembershipsDuration\"\n },\n \"VideoStatus\": - {\n \"description\": \"Basic details about a video category, such as - its localized title. Next Id: 18\",\n \"properties\": {\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"uploadStatus\": - {\n \"description\": \"The status of the uploaded video.\",\n \"enum\": - [\n \"uploaded\",\n \"processed\",\n \"failed\",\n - \ \"rejected\",\n \"deleted\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Video has been - uploaded but not processed yet.\",\n \"Video has been successfully - processed.\",\n \"Processing has failed. See FailureReason.\",\n - \ \"Video has been rejected. See RejectionReason.\",\n \"Video - has been deleted.\"\n ]\n },\n \"license\": {\n \"type\": - \"string\",\n \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"rejectionReason\": - {\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ]\n },\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's privacy - status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n },\n \"failureReason\": - {\n \"enumDescriptions\": [\n \"Unable to convert video - content.\",\n \"Invalid file format.\",\n \"Empty file.\",\n - \ \"File was too small.\",\n \"Unsupported codec.\",\n - \ \"Upload wasn't finished.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ],\n \"description\": \"This - value explains why a video failed to upload. This property is only present - if the uploadStatus property indicates that the upload failed.\"\n },\n - \ \"publishAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time when the video - is scheduled to publish. It can be set only if the privacy status of the video - is private..\"\n },\n \"embeddable\": {\n \"description\": - \"This value indicates if the video can be embedded on another website. @mutable - youtube.videos.insert youtube.videos.update\",\n \"type\": \"boolean\"\n - \ }\n },\n \"id\": \"VideoStatus\",\n \"type\": \"object\"\n - \ },\n \"Comment\": {\n \"type\": \"object\",\n \"description\": - \"A *comment* represents a single YouTube comment.\",\n \"id\": \"Comment\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#comment\\\".\",\n \"default\": \"youtube#comment\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the comment.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the comment.\",\n \"$ref\": \"CommentSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"LocalizedProperty\": - {\n \"type\": \"object\",\n \"id\": \"LocalizedProperty\",\n \"properties\": - {\n \"defaultLanguage\": {\n \"$ref\": \"LanguageTag\",\n - \ \"description\": \"The language of the default property.\"\n },\n - \ \"localized\": {\n \"items\": {\n \"$ref\": \"LocalizedString\"\n - \ },\n \"type\": \"array\"\n },\n \"default\": - {\n \"type\": \"string\"\n }\n }\n },\n \"LiveBroadcastStatistics\": - {\n \"description\": \"Statistics about the live broadcast. These represent - a snapshot of the values at the time of the request. Statistics are only returned - for live broadcasts.\",\n \"id\": \"LiveBroadcastStatistics\",\n \"type\": - \"object\",\n \"properties\": {\n \"concurrentViewers\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of viewers currently watching the broadcast. The property and its value - will be present if the broadcast has current viewers and the broadcast owner - has not hidden the viewcount for the video. Note that YouTube stops tracking - the number of concurrent viewers for a broadcast when the broadcast ends. - So, this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\"\n },\n \"totalChatCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\"\n - \ }\n }\n },\n \"VideoSnippet\": {\n \"id\": \"VideoSnippet\",\n - \ \"description\": \"Basic details about a video, including title, description, - uploader, thumbnails and category.\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The video's - title. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"defaultAudioLanguage\": {\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\",\n - \ \"type\": \"string\"\n },\n \"categoryId\": {\n \"description\": - \"The YouTube video category associated with the video.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the video - belongs to.\"\n },\n \"localized\": {\n \"$ref\": \"VideoLocalization\",\n - \ \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the videos's default - snippet.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the video was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"thumbnails\": {\n - \ \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n },\n \"tags\": - {\n \"description\": \"A list of keyword tags associated with the - video. Tags may contain spaces.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that the video was uploaded - to.\"\n },\n \"description\": {\n \"description\": - \"The video's description. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"type\": - \"string\",\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n }\n - \ },\n \"type\": \"object\"\n },\n \"ResourceId\": {\n \"type\": - \"object\",\n \"id\": \"ResourceId\",\n \"description\": \"A resource - id is a generic reference that points to another YouTube resource.\",\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\"\n },\n \"kind\": {\n \"description\": - \"The type of the API resource.\",\n \"type\": \"string\"\n },\n - \ \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a channel. This property - is only present if the resourceId.kind value is youtube#channel.\"\n }\n - \ }\n },\n \"ActivityContentDetailsUpload\": {\n \"id\": \"ActivityContentDetailsUpload\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the uploaded video.\"\n }\n },\n - \ \"description\": \"Information about the uploaded video.\"\n },\n - \ \"PlaylistItemListResponse\": {\n \"id\": \"PlaylistItemListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\"\n - \ },\n \"items\": {\n \"description\": \"A list of playlist - items that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"type\": \"array\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"visitorId\": {\n - \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ }\n }\n },\n \"SuperChatEvent\": {\n \"description\": - \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"SuperChatEventSnippet\",\n \"description\": \"The `snippet` object - contains basic details about the Super Chat event.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the Super Chat event.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#superChatEvent\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"SuperChatEvent\"\n - \ },\n \"PlaylistStatus\": {\n \"id\": \"PlaylistStatus\",\n \"type\": - \"object\",\n \"properties\": {\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The playlist's privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n }\n },\n - \ \"ChannelToStoreLinkDetails\": {\n \"properties\": {\n \"storeName\": - {\n \"type\": \"string\",\n \"description\": \"Name of the - store.\"\n },\n \"merchantId\": {\n \"format\": \"uint64\",\n - \ \"description\": \"Google Merchant Center id of the store.\",\n - \ \"type\": \"string\"\n },\n \"storeUrl\": {\n \"description\": - \"Landing page of the store.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"properties\": {\n \"secondaryReasons\": {\n \"type\": - \"array\",\n \"description\": \"The secondary reasons associated - with this reason, if any are available. (There might be 0 or more.)\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n }\n - \ },\n \"label\": {\n \"description\": \"The localized - label belonging to this abuse report reason.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\"\n },\n \"LiveChatFanFundingEventDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"currency\": {\n \"type\": - \"string\",\n \"description\": \"The currency in which the fund was - made.\"\n },\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n },\n \"amountMicros\": - {\n \"type\": \"string\",\n \"description\": \"The amount - of the fund.\",\n \"format\": \"uint64\"\n },\n \"userComment\": - {\n \"description\": \"The comment added by the user to this fan - funding event.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveChatFanFundingEventDetails\"\n },\n \"ChannelBannerResource\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#channelBannerResource\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n - \ },\n \"url\": {\n \"type\": \"string\",\n \"description\": - \"The URL of this banner image.\"\n }\n },\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\",\n - \ \"id\": \"ChannelBannerResource\",\n \"type\": \"object\"\n },\n - \ \"ActivityListResponse\": {\n \"id\": \"ActivityListResponse\",\n - \ \"properties\": {\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Activity\"\n }\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#activityListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#activityListResponse\\\".\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatModerator\": {\n \"id\": - \"LiveChatModerator\",\n \"description\": \"A *liveChatModerator* resource - represents a moderator for a YouTube live chat. A chat moderator has the ability - to ban/unban users from a chat, remove message, etc.\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#liveChatModerator\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the moderator.\",\n \"$ref\": - \"LiveChatModeratorSnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the moderator.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"description\": \"Details about a channel bulletin post.\",\n \"id\": - \"ActivityContentDetailsBulletin\",\n \"type\": \"object\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource associated with a - bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": - \"ResourceId\"\n }\n }\n },\n \"ChannelContentDetails\": - {\n \"description\": \"Details about the content of a channel.\",\n \"type\": - \"object\",\n \"properties\": {\n \"relatedPlaylists\": {\n \"type\": - \"object\",\n \"properties\": {\n \"watchLater\": {\n - \ \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch later playlist. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"watchHistory\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"favorites\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s favorite videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"likes\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n },\n \"uploads\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s uploaded videos. Use the videos.insert method to upload new videos - and the videos.delete method to delete previously uploaded videos.\",\n \"type\": - \"string\"\n }\n }\n }\n },\n \"id\": - \"ChannelContentDetails\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - valid abuse reasons that are used with `video.ReportAbuse`.\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportReason\"\n }\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoAbuseReportReasonListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The `visitorId` identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"CdnSettings\": {\n \"type\": \"object\",\n \"id\": - \"CdnSettings\",\n \"description\": \"Brief description of the live stream - cdn settings.\",\n \"properties\": {\n \"resolution\": {\n \"enum\": - [\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\"\n },\n \"frameRate\": {\n \"description\": - \"The frame rate of the inbound video data.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ],\n \"type\": \"string\"\n },\n \"ingestionType\": - {\n \"enum\": [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \" The method or protocol used to transmit the video stream.\"\n },\n - \ \"format\": {\n \"type\": \"string\",\n \"description\": - \"The format of the video stream that you are sending to Youtube. \",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n - \ \"description\": \"The ingestionInfo object contains information - that YouTube provides that you need to transmit your RTMP or HTTP stream to - YouTube.\"\n }\n }\n },\n \"ChannelSectionLocalization\": - {\n \"id\": \"ChannelSectionLocalization\",\n \"description\": \"ChannelSection - localization setting\",\n \"type\": \"object\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The localized strings - for channel section's title.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"CommentThreadListResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#commentThreadListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - comment threads that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"CommentThread\"\n }\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": - \"CommentThreadListResponse\",\n \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": - {\n \"id\": \"LiveBroadcastListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"description\": \"A list of broadcasts that - match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"default\": \"youtube#liveBroadcastListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n }\n },\n \"GeoPoint\": {\n - \ \"type\": \"object\",\n \"id\": \"GeoPoint\",\n \"description\": - \"Geographical coordinates of a point, in WGS84.\",\n \"properties\": - {\n \"altitude\": {\n \"type\": \"number\",\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\",\n \"format\": - \"double\"\n },\n \"longitude\": {\n \"type\": \"number\",\n - \ \"format\": \"double\",\n \"description\": \"Longitude - in degrees.\"\n },\n \"latitude\": {\n \"description\": - \"Latitude in degrees.\",\n \"format\": \"double\",\n \"type\": - \"number\"\n }\n }\n },\n \"LanguageTag\": {\n \"id\": - \"LanguageTag\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n \"type\": - \"object\",\n \"properties\": {\n \"partsProcessed\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\"\n - \ },\n \"partsTotal\": {\n \"description\": \"An estimate - of the total number of parts that need to be processed for the video. The - number may be updated with more precise estimates while YouTube processes - the video.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ },\n \"timeLeftMs\": {\n \"description\": \"An estimate - of the amount of time, in millseconds, that YouTube needs to finish processing - the video.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Video processing progress and - completion time estimate.\"\n },\n \"LiveChatNewSponsorDetails\": {\n - \ \"id\": \"LiveChatNewSponsorDetails\",\n \"properties\": {\n \"isUpgrade\": - {\n \"description\": \"If the viewer just had upgraded from a lower - level. For viewers that were not members at the time of purchase, this field - is false.\",\n \"type\": \"boolean\"\n },\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level that the viewer just had joined. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"LiveChatSuperStickerDetails\": {\n \"id\": \"LiveChatSuperStickerDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made.\"\n },\n \"tier\": {\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"superStickerMetadata\": {\n \"description\": - \"Information about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"amountMicros\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n }\n - \ }\n },\n \"LiveChatMessageAuthorDetails\": {\n \"properties\": - {\n \"channelUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channel's URL.\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n },\n - \ \"isChatOwner\": {\n \"description\": \"Whether the author - is the owner of the live chat.\",\n \"type\": \"boolean\"\n },\n - \ \"isChatModerator\": {\n \"description\": \"Whether the author - is a moderator of the live chat.\",\n \"type\": \"boolean\"\n },\n - \ \"isVerified\": {\n \"description\": \"Whether the author's - identity has been verified by YouTube.\",\n \"type\": \"boolean\"\n - \ },\n \"isChatSponsor\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author is a sponsor of the live chat.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube channel ID.\"\n },\n \"profileImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageAuthorDetails\"\n },\n \"VideoCategorySnippet\": {\n - \ \"properties\": {\n \"assignable\": {\n \"type\": \"boolean\"\n - \ },\n \"title\": {\n \"description\": \"The video category's - title.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n - \ \"description\": \"The YouTube channel that created the video category.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoCategorySnippet\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\"\n },\n \"VideoAbuseReport\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"language\": {\n \"description\": - \"The language that the content was viewed in.\",\n \"type\": \"string\"\n - \ },\n \"secondaryReasonId\": {\n \"type\": \"string\",\n - \ \"description\": \"The specific, or secondary, reason that this - content is abusive (if available). The value is an abuse report reason ID - that is a valid secondary reason for the primary reason.\"\n },\n \"comments\": - {\n \"description\": \"Additional comments regarding the abuse report.\",\n - \ \"type\": \"string\"\n },\n \"reasonId\": {\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the video.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoAbuseReport\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"type\": \"object\",\n \"description\": \"Information about - a channel that a user subscribed to.\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that the user subscribed to.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"WatchSettings\": {\n \"type\": \"object\",\n \"properties\": - {\n \"featuredPlaylistId\": {\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\",\n - \ \"type\": \"string\"\n },\n \"backgroundColor\": {\n - \ \"type\": \"string\",\n \"description\": \"The text color - for the video watch page's branded area.\"\n },\n \"textColor\": - {\n \"description\": \"The background color for the video watch page's - branded area.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Branding properties for the watch. All deprecated.\",\n \"id\": \"WatchSettings\"\n - \ },\n \"LiveChatBanSnippet\": {\n \"properties\": {\n \"banDurationSeconds\": - {\n \"type\": \"string\",\n \"description\": \"The duration - of a ban, only filled if the ban has type TEMPORARY.\",\n \"format\": - \"uint64\"\n },\n \"liveChatId\": {\n \"description\": - \"The chat this ban is pertinent to.\",\n \"type\": \"string\"\n - \ },\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"type\": {\n \"description\": \"The type of - ban.\",\n \"type\": \"string\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ]\n }\n },\n \"id\": - \"LiveChatBanSnippet\",\n \"type\": \"object\"\n },\n \"MembershipsLevelListResponse\": - {\n \"id\": \"MembershipsLevelListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#membershipsLevelListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of pricing levels offered by a creator - to the fans.\",\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n - \ }\n }\n }\n },\n \"SearchListResponse\": {\n \"properties\": - {\n \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"regionCode\": - {\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"Pagination - information for token pagination.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SearchResult\"\n }\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#searchListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#searchListResponse\\\".\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ },\n \"id\": \"SearchListResponse\",\n \"type\": \"object\"\n - \ },\n \"LiveStream\": {\n \"id\": \"LiveStream\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"default\": \"youtube#liveStream\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"LiveStreamSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the stream, including its channel, title, and description.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n },\n - \ \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about live stream's status.\",\n - \ \"$ref\": \"LiveStreamStatus\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the stream.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n }\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A live stream describes a live ingestion point.\"\n - \ },\n \"ChannelStatus\": {\n \"description\": \"JSON template for - the status part of a channel.\",\n \"type\": \"object\",\n \"id\": - \"ChannelStatus\",\n \"properties\": {\n \"longUploadsStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"type\": \"string\",\n \"enum\": - [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ]\n },\n \"isLinked\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"Privacy status of the channel.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ }\n }\n },\n \"AbuseType\": {\n \"id\": \"AbuseType\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoProcessingDetails\": - {\n \"type\": \"object\",\n \"description\": \"Describes processing - status and progress and availability of some other Video resource parts.\",\n - \ \"properties\": {\n \"processingIssuesAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether the - video processing engine has generated suggestions that might improve YouTube's - ability to process the the video, warnings that explain video processing problems, - or errors that cause video processing problems. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"tagSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether keyword (tag) suggestions are available for the video. - Tags can be added to a video's metadata to make it easier for other users - to find the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether video editing suggestions, - which might improve video quality or the playback experience, are available - for the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"fileDetailsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether file details are available for the uploaded video. You can - retrieve a video's file details by requesting the fileDetails part in your - videos.list() request.\"\n },\n \"processingProgress\": {\n - \ \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n },\n \"thumbnailsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether thumbnail images have been generated for the video.\"\n - \ },\n \"processingStatus\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's processing status. This value indicates - whether YouTube was able to process the video or if the video is still being - processed.\",\n \"enum\": [\n \"processing\",\n \"succeeded\",\n - \ \"failed\",\n \"terminated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"processingFailureReason\": {\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"uploadFailed\",\n - \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"id\": - \"VideoProcessingDetails\"\n },\n \"ChannelContentOwnerDetails\": {\n - \ \"id\": \"ChannelContentOwnerDetails\",\n \"description\": \"The - contentOwnerDetails object encapsulates channel data that is relevant for - YouTube Partners linked with the channel.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"contentOwner\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the content owner linked - to the channel.\"\n },\n \"timeLinked\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the channel was linked to the content owner.\"\n - \ }\n }\n },\n \"VideoAbuseReportSecondaryReason\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID of this abuse report secondary reason.\"\n },\n \"label\": - {\n \"type\": \"string\",\n \"description\": \"The localized - label for this abuse report secondary reason.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\"\n },\n \"PlaylistItemSnippet\": - {\n \"description\": \"Basic details about a playlist, including title, - description and thumbnails. Basic details of a YouTube Playlist item provided - by the author. Next ID: 15\",\n \"id\": \"PlaylistItemSnippet\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The item's title.\",\n - \ \"type\": \"string\"\n },\n \"channelTitle\": {\n - \ \"description\": \"Channel title for the channel that the playlist - item belongs to.\",\n \"type\": \"string\"\n },\n \"position\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\"\n },\n \"description\": {\n \"description\": - \"The item's description.\",\n \"type\": \"string\"\n },\n - \ \"videoOwnerChannelId\": {\n \"description\": \"Channel id - for the channel this video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the user that added the item to the - playlist.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the item was added - to the playlist.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"resourceId\": {\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that is included in the playlist as the playlist item.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"$ref\": \"ResourceId\"\n },\n \"thumbnails\": {\n - \ \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist item. 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.\"\n },\n - \ \"playlistId\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\"\n },\n \"videoOwnerChannelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel this video belongs to.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"id\": - \"LiveChatGiftMembershipReceivedDetails\",\n \"properties\": {\n \"gifterChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n - \ },\n \"memberLevelName\": {\n \"description\": \"The - name of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveBroadcastStatus\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"liveBroadcastPriority\": {\n \"enum\": - [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Low - priority broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ],\n \"description\": \"Priority of the live broadcast - event (internal state).\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\",\n \"type\": - \"boolean\"\n },\n \"lifeCycleStatus\": {\n \"enum\": - [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ]\n },\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n },\n - \ \"madeForKids\": {\n \"description\": \"Whether the broadcast - is made for kids or not, decided by YouTube instead of the creator. This field - is read only.\",\n \"type\": \"boolean\"\n },\n \"recordingStatus\": - {\n \"enumDescriptions\": [\n \"No value or the value - is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"description\": - \"The broadcast's recording status.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ]\n }\n },\n \"id\": \"LiveBroadcastStatus\",\n - \ \"description\": \"Live broadcast state.\"\n },\n \"I18nRegionSnippet\": - {\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the region.\"\n },\n - \ \"gl\": {\n \"description\": \"The region code as a 2-letter - ISO country code.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Basic details about an i18n region, such as region - code and human-readable name.\",\n \"id\": \"I18nRegionSnippet\",\n \"type\": - \"object\"\n },\n \"SuperChatEventListResponse\": {\n \"id\": \"SuperChatEventListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#superChatEventListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n },\n - \ \"items\": {\n \"description\": \"A list of Super Chat purchases - that match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n }\n }\n }\n - \ },\n \"Cuepoint\": {\n \"id\": \"Cuepoint\",\n \"description\": - \"Note that there may be a 5-second end-point resolution issue. For instance, - if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\"\n },\n \"cueType\": - {\n \"type\": \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ]\n },\n \"durationSecs\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The duration of this cuepoint.\"\n },\n \"insertionOffsetTimeMs\": - {\n \"description\": \"The time when the cuepoint should be inserted - by offset to the broadcast actual start time.\",\n \"format\": \"int64\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The identifier for cuepoint resource.\"\n - \ },\n \"walltimeMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The wall clock time at which the - cuepoint should be inserted. Only one of insertion_offset_time_ms and walltime_ms - may be set at a time.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"PlaylistItemContentDetails\": {\n \"properties\": {\n \"startAt\": - {\n \"type\": \"string\",\n \"description\": \"The time, - measured in seconds from the start of the video, when the video should start - playing. (The playlist owner can specify the times when the video should start - and stop playing when the video is played in the context of the playlist.) - The default value is 0.\"\n },\n \"endAt\": {\n \"type\": - \"string\",\n \"description\": \"The time, measured in seconds from - the start of the video, when the video should stop playing. (The playlist - owner can specify the times when the video should start and stop playing when - the video is played in the context of the playlist.) By default, assume that - the video.endTime is the end of the video.\"\n },\n \"note\": - {\n \"type\": \"string\",\n \"description\": \"A user-generated - note for this item.\"\n },\n \"videoPublishedAt\": {\n \"description\": - \"The date and time that the video was published to YouTube.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - a video. To retrieve the video resource, set the id query parameter to this - value in your API request.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"PlaylistItemContentDetails\"\n - \ },\n \"VideoMonetizationDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The value of access indicates whether the video - can be monetized or not.\"\n }\n },\n \"description\": \"Details - about monetization of a YouTube Video.\",\n \"id\": \"VideoMonetizationDetails\"\n - \ },\n \"AbuseReport\": {\n \"properties\": {\n \"relatedEntities\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n }\n },\n \"description\": {\n \"type\": - \"string\"\n },\n \"abuseTypes\": {\n \"items\": {\n - \ \"$ref\": \"AbuseType\"\n },\n \"type\": \"array\"\n - \ },\n \"subject\": {\n \"$ref\": \"Entity\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"AbuseReport\"\n },\n - \ \"ChannelSnippet\": {\n \"id\": \"ChannelSnippet\",\n \"description\": - \"Basic details about a channel, including title, description and thumbnails.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the channel - was created.\"\n },\n \"title\": {\n \"description\": - \"The channel's title.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the channel.\"\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n },\n - \ \"localized\": {\n \"description\": \"Localized title and - description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the channel's default title and description.\",\n \"type\": - \"string\"\n },\n \"customUrl\": {\n \"description\": - \"The custom url of the channel.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"LocalizedString\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ },\n \"language\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LocalizedString\"\n },\n \"VideoStatistics\": - {\n \"id\": \"VideoStatistics\",\n \"properties\": {\n \"dislikeCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of users who have indicated that they disliked the video by giving - it a negative rating.\"\n },\n \"viewCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of times the video has been viewed.\"\n },\n \"likeCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of users who have indicated that they liked the video by giving it a positive - rating.\",\n \"format\": \"uint64\"\n },\n \"favoriteCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\"\n - \ },\n \"commentCount\": {\n \"description\": \"The - number of comments for the video.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\",\n \"type\": \"object\"\n },\n \"VideoFileDetailsAudioStream\": - {\n \"type\": \"object\",\n \"description\": \"Information about - an audio stream.\",\n \"id\": \"VideoFileDetailsAudioStream\",\n \"properties\": - {\n \"channelCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The number of audio channels that the stream contains.\",\n \"type\": - \"integer\"\n },\n \"codec\": {\n \"description\": - \"The audio codec that the stream uses.\",\n \"type\": \"string\"\n - \ },\n \"vendor\": {\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\",\n \"type\": \"string\"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The audio stream's bitrate, in bits per second.\"\n }\n }\n - \ },\n \"SubscriptionSnippet\": {\n \"properties\": {\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the subscription was created.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The subscription's details.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the subscriber's channel.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The subscription's title.\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.subscriptions.insert\"\n ]\n },\n - \ \"description\": \"The id object contains information about the - channel that the user subscribed to.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the subscription - belongs to.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about a subscription, - including title, description and thumbnails of the subscribed item.\",\n \"id\": - \"SubscriptionSnippet\"\n },\n \"ActivitySnippet\": {\n \"properties\": - {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"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.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel associated with the activity.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n - \ \"like\",\n \"favorite\",\n \"comment\",\n - \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n - \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ],\n \"description\": \"The - type of activity that the resource describes.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel responsible - for this activity\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the video was uploaded.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"title\": {\n \"description\": \"The title of the resource - primarily associated with the activity.\",\n \"type\": \"string\"\n - \ },\n \"groupId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the resource primarily associated - with the activity. @mutable youtube.activities.insert\"\n }\n },\n - \ \"id\": \"ActivitySnippet\",\n \"description\": \"Basic details - about an activity, including title, description, thumbnails, activity type - and group. Next ID: 12\",\n \"type\": \"object\"\n },\n \"ChannelStatistics\": - {\n \"type\": \"object\",\n \"properties\": {\n \"commentCount\": - {\n \"description\": \"The number of comments for the channel.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"hiddenSubscriberCount\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether or not the number of subscribers is shown for this user.\"\n },\n - \ \"subscriberCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of subscribers that the channel has.\",\n \"format\": - \"uint64\"\n },\n \"videoCount\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of videos uploaded to the channel.\",\n - \ \"format\": \"uint64\"\n },\n \"viewCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of times the channel has been viewed.\"\n }\n },\n \"id\": - \"ChannelStatistics\",\n \"description\": \"Statistics about a channel: - number of subscribers, number of videos in the channel, etc.\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information about the resource that was added to the playlist.\"\n },\n - \ \"playlistItemId\": {\n \"description\": \"ID of the item - within the playlist.\",\n \"type\": \"string\"\n },\n \"playlistId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ActivityContentDetailsPlaylistItem\",\n \"description\": \"Information - about a new playlist item.\",\n \"type\": \"object\"\n },\n \"ThirdPartyLinkStatus\": - {\n \"description\": \"The third-party link status object contains information - about the status of the link.\",\n \"properties\": {\n \"linkStatus\": - {\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"id\": - \"ThirdPartyLinkStatus\",\n \"type\": \"object\"\n },\n \"I18nLanguage\": - {\n \"description\": \"An *i18nLanguage* resource identifies a UI language - currently supported by YouTube.\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"default\": \"youtube#i18nLanguage\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the i18n language.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n language, such as language code and human-readable name.\"\n }\n - \ },\n \"id\": \"I18nLanguage\",\n \"type\": \"object\"\n },\n - \ \"PlaylistSnippet\": {\n \"properties\": {\n \"publishedAt\": - {\n \"description\": \"The date and time that the playlist was created.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"The channel title of the channel that the video belongs to.\"\n },\n - \ \"thumbnailVideoId\": {\n \"type\": \"string\",\n \"description\": - \"Note: if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\"\n },\n - \ \"tags\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\",\n \"description\": \"Keyword - tags associated with the playlist.\"\n },\n \"title\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The playlist's - title.\"\n },\n \"localized\": {\n \"$ref\": \"PlaylistLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the playlist.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the playlist's default - title and description.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The playlist's description.\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist. 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.\"\n }\n },\n \"id\": \"PlaylistSnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about a playlist, including - title, description and thumbnails.\"\n },\n \"VideoListResponse\": {\n - \ \"type\": \"object\",\n \"id\": \"VideoListResponse\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"eventId\": {\n - \ \"type\": \"string\",\n \"description\": \"Serialized EventId - of the request which produced this response.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Video\"\n },\n - \ \"type\": \"array\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ }\n },\n \"SuperStickerMetadata\": {\n \"properties\": {\n - \ \"altText\": {\n \"type\": \"string\",\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\"\n },\n \"altTextLanguage\": {\n \"description\": - \"Specifies the localization language in which the alt text is returned.\",\n - \ \"type\": \"string\"\n },\n \"stickerId\": {\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"SuperStickerMetadata\"\n },\n \"VideoPlayer\": {\n \"type\": - \"object\",\n \"id\": \"VideoPlayer\",\n \"properties\": {\n \"embedHeight\": - {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n - \ \"embedWidth\": {\n \"type\": \"string\",\n \"description\": - \"The embed width\",\n \"format\": \"int64\"\n },\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\"\n }\n },\n - \ \"description\": \"Player to be used for a video playback.\"\n },\n - \ \"Entity\": {\n \"properties\": {\n \"id\": {\n \"type\": - \"string\"\n },\n \"typeId\": {\n \"type\": \"string\"\n - \ },\n \"url\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"Entity\",\n \"type\": \"object\"\n },\n - \ \"LiveStreamContentDetails\": {\n \"properties\": {\n \"closedCaptionsIngestionUrl\": - {\n \"type\": \"string\",\n \"description\": \"The ingestion - URL where the closed captions of this stream are sent.\"\n },\n \"isReusable\": - {\n \"description\": \"Indicates whether the stream is reusable, - which means that it can be bound to multiple broadcasts. It is common for - broadcasters to reuse the same stream for many different broadcasts if those - broadcasts occur at different times. If you set this value to false, then - the stream will not be reusable, which means that it can only be bound to - one broadcast. Non-reusable streams differ from reusable streams in the following - ways: - A non-reusable stream can only be bound to one broadcast. - A non-reusable - stream might be deleted by an automated process after the broadcast ends. - - The liveStreams.list method does not list non-reusable streams if you call - the method and set the mine parameter to true. The only way to use that method - to retrieve the resource for a non-reusable stream is to use the id parameter - to identify the stream. \",\n \"type\": \"boolean\"\n }\n - \ },\n \"description\": \"Detailed settings of a stream.\",\n \"type\": - \"object\",\n \"id\": \"LiveStreamContentDetails\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"properties\": {\n \"severity\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"How severe this issue is to the stream.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"info\",\n - \ \"warning\",\n \"error\"\n ]\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The long-form description of the issue and how to resolve it.\"\n },\n - \ \"type\": {\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"description\": \"The kind of error happening.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"reason\": {\n \"type\": - \"string\",\n \"description\": \"The short-form reason for this issue.\"\n - \ }\n },\n \"id\": \"LiveStreamConfigurationIssue\",\n \"type\": - \"object\"\n },\n \"VideoAgeGating\": {\n \"id\": \"VideoAgeGating\",\n - \ \"properties\": {\n \"videoGameRating\": {\n \"description\": - \"Video game rating, if any.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ]\n },\n - \ \"restricted\": {\n \"type\": \"boolean\",\n \"description\": - \"Age-restricted trailers. For redband trailers and adult-rated video-games. - Only users aged 18+ can view the content. The the field is true the content - is restricted to viewers aged 18+. Otherwise The field won't be present.\"\n - \ },\n \"alcoholContent\": {\n \"description\": \"Indicates - whether or not the video has alcoholic beverage content. Only users of legal - purchasing age in a particular country, as identified by ICAP, can view the - content.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": - \"object\"\n },\n \"Member\": {\n \"type\": \"object\",\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\",\n - \ \"id\": \"Member\",\n \"properties\": {\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#member\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#member\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the member.\",\n \"$ref\": \"MemberSnippet\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"VideoFileDetailsVideoStream\": - {\n \"description\": \"Information about a video stream.\",\n \"properties\": - {\n \"frameRateFps\": {\n \"description\": \"The video stream's - frame rate, in frames per second.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n },\n \"heightPixels\": {\n \"format\": - \"uint32\",\n \"description\": \"The encoded video content's height - in pixels.\",\n \"type\": \"integer\"\n },\n \"widthPixels\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\"\n },\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The video - codec that the stream uses.\"\n },\n \"rotation\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The amount that - YouTube needs to rotate the original source content to properly display the - video.\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"type\": \"string\"\n },\n \"bitrateBps\": - {\n \"description\": \"The video stream's bitrate, in bits per second.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"vendor\": {\n \"description\": \"A value that uniquely - identifies a video vendor. Typically, the value is a four-letter vendor code.\",\n - \ \"type\": \"string\"\n },\n \"aspectRatio\": {\n \"type\": - \"number\",\n \"format\": \"double\",\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoFileDetailsVideoStream\"\n },\n \"VideoCategoryListResponse\": - {\n \"id\": \"VideoCategoryListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n }\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#videoCategoryListResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"LiveChatMemberMilestoneChatDetails\": {\n \"properties\": {\n \"memberMonth\": - {\n \"description\": \"The total amount of months (rounded up) the - viewer has been a member that granted them this Member Milestone Chat. This - is the same number of months as is being displayed to YouTube users.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the member to this Member Milestone Chat. This field - is empty for messages without a comment from the member.\"\n },\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level at which the viever is a member. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"MembershipsLevel\": - {\n \"description\": \"A *membershipsLevel* resource represents an offer - made by YouTube creators for their fans. Users can become members of the channel - by joining one of the available levels. They will provide recurring monetary - support and receives special benefits.\",\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the memberships level.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#membershipsLevel\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the level.\",\n \"$ref\": - \"MembershipsLevelSnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"MembershipsLevel\"\n },\n \"TestItem\": {\n \"id\": - \"TestItem\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"TestItemTestItemSnippet\"\n },\n \"featuredPart\": {\n \"type\": - \"boolean\"\n },\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"gaia\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoCategory\": - {\n \"description\": \"A *videoCategory* resource identifies a category - that has been or could be associated with uploaded videos.\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"default\": \"youtube#videoCategory\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video category.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the video category, including its title.\",\n \"$ref\": - \"VideoCategorySnippet\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"id\": \"VideoCategory\"\n },\n \"VideoSuggestions\": - {\n \"id\": \"VideoSuggestions\",\n \"properties\": {\n \"tagSuggestions\": - {\n \"description\": \"A list of keyword tags that could be added - to the video's metadata to increase the likelihood that users will locate - your video when searching or browsing on YouTube.\",\n \"items\": - {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n },\n - \ \"type\": \"array\"\n },\n \"processingErrors\": {\n - \ \"items\": {\n \"enumDescriptions\": [\n \"File - contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., - a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file.\",\n \"Document - or text file (e.g., MS Word document).\",\n \"An archive file - (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout - type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\"\n },\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\",\n \"type\": \"array\"\n },\n \"processingHints\": - {\n \"type\": \"array\",\n \"description\": \"A list of - suggestions that may improve YouTube's ability to process the video.\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"The - MP4 file is not streamable, this will slow down the processing. MOOV atom - was not found at the beginning of the file.\",\n \"Probably a - better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"editorSuggestions\": {\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ],\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"processingWarnings\": - {\n \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"type\": - \"string\"\n },\n \"description\": \"A list of reasons why - YouTube may have difficulty transcoding the uploaded video or that might result - in an erroneous transcoding. These warnings are generated before YouTube actually - processes the uploaded video file. In addition, they identify issues that - are unlikely to cause the video processing to fail but that might cause problems - such as sync issues, video artifacts, or a missing audio track.\"\n }\n - \ },\n \"description\": \"Specifies suggestions on how to improve - video content, including encoding hints, tag suggestions, and editor suggestions.\",\n - \ \"type\": \"object\"\n },\n \"LiveChatBan\": {\n \"id\": - \"LiveChatBan\",\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatBan\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the ban.\"\n }\n },\n \"description\": \"A `__liveChatBan__` - resource represents a ban for a YouTube live chat.\"\n },\n \"ChannelSection\": - {\n \"id\": \"ChannelSection\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#channelSection\\\".\",\n \"default\": - \"youtube#channelSection\",\n \"type\": \"string\"\n },\n - \ \"targeting\": {\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\",\n \"$ref\": - \"ChannelSectionTargeting\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel section.\"\n },\n \"contentDetails\": {\n - \ \"$ref\": \"ChannelSectionContentDetails\",\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\"\n },\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"type\": \"object\",\n - \ \"description\": \"Localizations for different languages\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveStreamStatus\": {\n - \ \"id\": \"LiveStreamStatus\",\n \"properties\": {\n \"streamStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"created\",\n \"ready\",\n - \ \"active\",\n \"inactive\",\n \"error\"\n - \ ]\n },\n \"healthStatus\": {\n \"$ref\": - \"LiveStreamHealthStatus\",\n \"description\": \"The health status - of the stream.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Brief description of the live stream status.\"\n },\n \"CommentListResponse\": - {\n \"id\": \"CommentListResponse\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentListResponse\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of comments that match the request criteria.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"Channel\": - {\n \"id\": \"Channel\",\n \"properties\": {\n \"contentOwnerDetails\": - {\n \"description\": \"The contentOwnerDetails object encapsulates - channel data that is relevant for YouTube Partners linked with the channel.\",\n - \ \"$ref\": \"ChannelContentOwnerDetails\"\n },\n \"topicDetails\": - {\n \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\",\n \"$ref\": - \"ChannelTopicDetails\"\n },\n \"auditDetails\": {\n \"$ref\": - \"ChannelAuditDetails\",\n \"description\": \"The auditionDetails - object encapsulates channel data that is relevant for YouTube Partners during - the audition process.\"\n },\n \"status\": {\n \"$ref\": - \"ChannelStatus\",\n \"description\": \"The status object encapsulates - information about the privacy status of the channel.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the channel, such as its title, description, and thumbnail images.\"\n },\n - \ \"conversionPings\": {\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"brandingSettings\": {\n \"description\": \"The - brandingSettings object encapsulates information about the branding of the - channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel.\",\n \"type\": \"string\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n }\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n - \ \"description\": \"The contentDetails object encapsulates information - about the channel's content.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channel\\\".\",\n \"default\": - \"youtube#channel\"\n }\n },\n \"description\": \"A *channel* - resource contains information about a YouTube channel.\",\n \"type\": - \"object\"\n },\n \"SearchResultSnippet\": {\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"id\": \"SearchResultSnippet\",\n - \ \"properties\": {\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the search result. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"The title of the channel that published - the resource that the search result identifies.\"\n },\n \"description\": - {\n \"description\": \"A description of the search result.\",\n \"type\": - \"string\"\n },\n \"liveBroadcastContent\": {\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"description\": \"It indicates - if the resource (video or channel) has upcoming/active live broadcast content. - Or it's \\\"none\\\" if there is not any upcoming/active live broadcasts.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The live - broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the search result.\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The creation date - and time of the resource that the search result identifies.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"channelId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SubscriptionSubscriberSnippet\": {\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"description\": \"The description of the subscriber.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"Thumbnails for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the subscriber.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The channel ID of the subscriber.\"\n - \ }\n },\n \"description\": \"Basic details about a subscription's - subscriber including title, description, channel ID and thumbnails.\"\n },\n - \ \"Video\": {\n \"id\": \"Video\",\n \"type\": \"object\",\n - \ \"description\": \"A *video* resource represents a YouTube video.\",\n - \ \"properties\": {\n \"recordingDetails\": {\n \"description\": - \"The recordingDetails object encapsulates information about the location, - date and address where the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video, such as its title, description, and category.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the video - in an embedded player.\",\n \"$ref\": \"VideoPlayer\"\n },\n - \ \"monetizationDetails\": {\n \"description\": \"The monetizationDetails - object encapsulates information about the monetization status of the video.\",\n - \ \"$ref\": \"VideoMonetizationDetails\"\n },\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"topicDetails\": - {\n \"$ref\": \"VideoTopicDetails\",\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\"\n },\n \"processingDetails\": {\n \"$ref\": - \"VideoProcessingDetails\",\n \"description\": \"The processingDetails - object encapsulates information about YouTube's progress in processing the - uploaded video file. The properties in the object identify the current processing - status and an estimate of the time remaining until YouTube finishes processing - the video. This part also indicates whether different types of data or content, - such as file details or thumbnail images, are available for the video. The - processingProgress object is designed to be polled so that the video uploaded - can track the progress that YouTube has made in processing the uploaded video - file. This data can only be retrieved by the video owner.\"\n },\n - \ \"ageGating\": {\n \"description\": \"Age restriction details - related to a video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoAgeGating\"\n },\n \"localizations\": - {\n \"description\": \"The localizations object contains localized - versions of the basic details about the video, such as its title and description.\",\n - \ \"type\": \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"VideoLocalization\"\n }\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"statistics\": {\n \"$ref\": \"VideoStatistics\",\n \"description\": - \"The statistics object contains statistics about the video.\"\n },\n - \ \"fileDetails\": {\n \"$ref\": \"VideoFileDetails\",\n \"description\": - \"The fileDetails object encapsulates information about the video file that - was uploaded to YouTube, including the file's resolution, duration, audio - and video codecs, stream bitrates, and more. This data can only be retrieved - by the video owner.\"\n },\n \"kind\": {\n \"default\": - \"youtube#video\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#video\\\".\",\n \"type\": - \"string\"\n },\n \"suggestions\": {\n \"$ref\": \"VideoSuggestions\",\n - \ \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains information about the video content, including - the length of the video and its aspect ratio.\",\n \"$ref\": \"VideoContentDetails\"\n - \ },\n \"status\": {\n \"$ref\": \"VideoStatus\",\n - \ \"description\": \"The status object contains information about - the video's uploading, processing, and privacy statuses.\"\n },\n \"projectDetails\": - {\n \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n }\n }\n },\n - \ \"I18nRegionListResponse\": {\n \"id\": \"I18nRegionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n },\n \"description\": \"A list of regions - where YouTube is available. In this map, the i18n region ID is the map key, - and its value is the corresponding i18nRegion resource.\",\n \"type\": - \"array\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"default\": \"youtube#i18nRegionListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n }\n },\n \"MembershipsLevelSnippet\": {\n - \ \"type\": \"object\",\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"properties\": {\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n },\n \"levelDetails\": {\n \"description\": - \"Details about the pricing level.\",\n \"$ref\": \"LevelDetails\"\n - \ }\n }\n },\n \"ActivityContentDetailsSocial\": {\n \"type\": - \"object\",\n \"properties\": {\n \"referenceUrl\": {\n \"description\": - \"The URL of the social network post.\",\n \"type\": \"string\"\n - \ },\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"An image of the post's author.\"\n },\n \"resourceId\": {\n - \ \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object encapsulates information that identifies the resource associated with - a social network post.\"\n },\n \"type\": {\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The name of the social network.\"\n },\n \"author\": {\n \"description\": - \"The author of the social network post.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Details about a social network - post.\",\n \"id\": \"ActivityContentDetailsSocial\"\n },\n \"InvideoTiming\": - {\n \"properties\": {\n \"offsetMs\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"Defines the - time at which the promotion will appear. Depending on the value of type the - value of the offsetMs field will represent a time offset from the start or - from the end of the video, expressed in milliseconds.\"\n },\n \"type\": - {\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"Describes a timing type. If the value is offsetFromStart, then the offsetMs - field represents an offset from the start of the video. If the value is offsetFromEnd, - then the offsetMs field represents an offset from the end of the video.\"\n - \ },\n \"durationMs\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"Defines the - duration in milliseconds for which the promotion should be displayed. If missing, - the client should use the default.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Describes a temporal position of a visual - widget inside a video.\",\n \"id\": \"InvideoTiming\"\n },\n \"ChannelSectionListResponse\": - {\n \"id\": \"ChannelSectionListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"A list of ChannelSections that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoRating\": {\n \"id\": - \"VideoRating\",\n \"type\": \"object\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n },\n \"rating\": - {\n \"description\": \"Rating of a video.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ]\n }\n },\n \"description\": \"Basic details about - rating of a video.\"\n },\n \"AccessPolicy\": {\n \"description\": - \"Rights management policy for YouTube resources.\",\n \"id\": \"AccessPolicy\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"exception\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of region codes that identify countries - where the default policy do not apply.\",\n \"type\": \"array\"\n - \ },\n \"allowed\": {\n \"type\": \"boolean\",\n \"description\": - \"The value of allowed indicates whether the access to the policy is allowed - or denied by default.\"\n }\n }\n },\n \"ActivityContentDetailsComment\": - {\n \"description\": \"Information about a resource that received a comment.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource associated with the comment.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsComment\"\n - \ },\n \"ActivityContentDetailsPromotedItem\": {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"properties\": {\n \"ctaType\": {\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"creativeViewUrl\": {\n \"description\": \"The - URL the client should ping to indicate that the user was shown this promoted - item.\",\n \"type\": \"string\"\n },\n \"descriptionText\": - {\n \"description\": \"The text description to accompany the promoted - item.\",\n \"type\": \"string\"\n },\n \"adTag\": {\n - \ \"description\": \"The URL the client should fetch to request a - promoted item.\",\n \"type\": \"string\"\n },\n \"destinationUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should direct the user to, if the user chooses to visit the advertiser's - website.\"\n },\n \"impressionUrl\": {\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"customCtaButtonText\": {\n \"description\": - \"The custom call-to-action button text. If specified, it will override the - default button text for the cta_type.\",\n \"type\": \"string\"\n - \ },\n \"clickTrackingUrl\": {\n \"description\": \"The - URL the client should ping to indicate that the user clicked through on this - promoted item.\",\n \"type\": \"string\"\n },\n \"forecastingUrl\": - {\n \"type\": \"array\",\n \"description\": \"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.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the promoted video.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Details - about a resource which is being promoted.\"\n },\n \"ImageSettings\": - {\n \"id\": \"ImageSettings\",\n \"description\": \"Branding properties - for images associated with the channel.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"watchIconImageUrl\": {\n \"type\": - \"string\"\n },\n \"largeBrandedBannerImageImapScript\": {\n - \ \"description\": \"The image map script for the large banner image.\",\n - \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"bannerTabletHdImageUrl\": {\n \"description\": - \"Banner image. Tablet size high resolution (2276x377).\",\n \"type\": - \"string\"\n },\n \"bannerMobileLowImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size low resolution - (320x88).\"\n },\n \"smallBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 640px - by 70px banner image that appears below the video player in the default view - of the video watch page. The URL for the image that appears above the top-left - corner of the video player. This is a 25-pixel-high image with a flexible - width that cannot exceed 170 pixels.\"\n },\n \"bannerTabletImageUrl\": - {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size (640x175).\"\n },\n \"backgroundImageUrl\": {\n - \ \"$ref\": \"LocalizedProperty\",\n \"description\": \"The - URL for the background image shown on the video watch page. The image should - be 1200px by 615px, with a maximum file size of 128k.\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\",\n - \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n },\n \"bannerImageUrl\": {\n - \ \"description\": \"Banner image. Desktop size (1060x175).\",\n \"type\": - \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\"\n },\n \"bannerTabletExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size extra - high resolution (2560x424).\"\n },\n \"bannerTvImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"trackingImageUrl\": - {\n \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTvLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size low resolution (854x480).\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"SubscriptionListResponse\": - {\n \"id\": \"SubscriptionListResponse\",\n \"properties\": {\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"default\": \"youtube#subscriptionListResponse\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"description\": \"A list of subscriptions that match - the request criteria.\",\n \"type\": \"array\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"VideoRecordingDetails\": {\n \"description\": \"Recording information - associated with the video.\",\n \"id\": \"VideoRecordingDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"locationDescription\": - {\n \"type\": \"string\",\n \"description\": \"The text - description of the location where the video was recorded.\"\n },\n - \ \"recordingDate\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the video was recorded.\",\n \"format\": - \"date-time\"\n },\n \"location\": {\n \"$ref\": \"GeoPoint\",\n - \ \"description\": \"The geolocation information associated with the - video.\"\n }\n }\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"The details of the user that was banned.\"\n },\n \"banType\": - {\n \"description\": \"The type of ban.\",\n \"enum\": [\n - \ \"permanent\",\n \"temporary\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"banDurationSeconds\": {\n \"type\": - \"string\",\n \"description\": \"The duration of the ban. This property - is only present if the banType is temporary.\",\n \"format\": \"uint64\"\n - \ }\n },\n \"id\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"LiveChatModeratorSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatModeratorSnippet\",\n \"properties\": {\n \"liveChatId\": - {\n \"description\": \"The ID of the live chat this moderator can - act on.\",\n \"type\": \"string\"\n },\n \"moderatorDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the moderator.\"\n }\n }\n },\n \"SubscriptionContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"activityType\": - {\n \"description\": \"The type of activity this subscription is - for (only uploads, everything).\",\n \"type\": \"string\",\n \"enum\": - [\n \"subscriptionActivityTypeUnspecified\",\n \"all\",\n - \ \"uploads\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"newItemCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The number of new items in the subscription since its content was last read.\",\n - \ \"type\": \"integer\"\n },\n \"totalItemCount\": {\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The approximate number of items that the subscription points to.\"\n }\n - \ },\n \"description\": \"Details about the content to witch a subscription - refers.\",\n \"id\": \"SubscriptionContentDetails\"\n },\n \"TestItemTestItemSnippet\": - {\n \"id\": \"TestItemTestItemSnippet\",\n \"properties\": {},\n - \ \"type\": \"object\"\n },\n \"LiveStreamHealthStatus\": {\n \"type\": - \"object\",\n \"properties\": {\n \"configurationIssues\": {\n - \ \"description\": \"The configurations issues on this stream\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n }\n },\n \"lastUpdateTimeSeconds\": - {\n \"description\": \"The last time this status was updated (in - seconds)\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"status\": {\n \"enum\": [\n \"good\",\n - \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The status code of this stream\"\n - \ }\n },\n \"id\": \"LiveStreamHealthStatus\"\n },\n \"ChannelConversionPing\": - {\n \"properties\": {\n \"context\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"Defines the context of the ping.\",\n \"type\": - \"string\",\n \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ]\n },\n \"conversionUrl\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n }\n },\n \"description\": - \"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.\",\n \"type\": \"object\",\n \"id\": \"ChannelConversionPing\"\n - \ },\n \"PlaylistItemStatus\": {\n \"properties\": {\n \"privacyStatus\": - {\n \"description\": \"This resource's privacy status.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Information - about the playlist item's privacy status.\",\n \"id\": \"PlaylistItemStatus\"\n - \ },\n \"MemberListResponse\": {\n \"id\": \"MemberListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of members that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Member\"\n }\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#memberListResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoContentDetails\": - {\n \"properties\": {\n \"dimension\": {\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\",\n \"type\": \"string\"\n },\n \"caption\": - {\n \"enum\": [\n \"true\",\n \"false\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"description\": \"The value of captions indicates whether the video - has captions or not.\",\n \"type\": \"string\"\n },\n \"duration\": - {\n \"type\": \"string\",\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"countryRestriction\": {\n \"description\": \"The countryRestriction - object contains information about the countries where a video is (or is not) - viewable.\",\n \"$ref\": \"AccessPolicy\"\n },\n \"hasCustomThumbnail\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\"\n },\n \"regionRestriction\": - {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\"\n },\n - \ \"contentRating\": {\n \"$ref\": \"ContentRating\",\n \"description\": - \"Specifies the ratings that the video received under various rating schemes.\"\n - \ },\n \"projection\": {\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ],\n \"type\": \"string\",\n \"description\": - \"Specifies the projection format of the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"licensedContent\": - {\n \"description\": \"The value of is_license_content indicates - whether the video is licensed content.\",\n \"type\": \"boolean\"\n - \ },\n \"definition\": {\n \"description\": \"The value - of definition indicates whether the video is available in high definition - or only in standard definition.\",\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoContentDetails\",\n \"description\": \"Details - about the content of a YouTube Video.\",\n \"type\": \"object\"\n },\n - \ \"LiveBroadcastSnippet\": {\n \"description\": \"Basic broadcast - information.\",\n \"properties\": {\n \"liveChatId\": {\n \"description\": - \"The id of the live chat for this broadcast.\",\n \"type\": \"string\"\n - \ },\n \"scheduledStartTime\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"actualEndTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\",\n - \ \"format\": \"date-time\"\n },\n \"isDefaultBroadcast\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast is the default broadcast. Internal only.\"\n },\n - \ \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The broadcast's title. Note that the broadcast represents exactly one YouTube - video. You can set this field by modifying the broadcast resource or by setting - the title field of the corresponding video resource.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that is publishing the broadcast.\"\n - \ },\n \"scheduledEndTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the broadcast is scheduled to end.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the broadcast was added to YouTube's live broadcast schedule.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the broadcast. For each nested - object in this object, the key is the name of the thumbnail image, and the - value is an object that contains other information about the thumbnail.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"actualStartTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast actually - started. This information is only available once the broadcast's state is - live.\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's description. As with the title, - you can set this field by modifying the broadcast resource or by setting the - description field of the corresponding video resource.\"\n }\n },\n - \ \"id\": \"LiveBroadcastSnippet\",\n \"type\": \"object\"\n },\n - \ \"LiveChatMessageDeletedDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatMessageDeletedDetails\"\n },\n \"ChannelLocalization\": - {\n \"id\": \"ChannelLocalization\",\n \"description\": \"Channel - localization setting\",\n \"type\": \"object\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The localized strings - for channel's title.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The localized strings for channel's description.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LiveChatSuperChatDetails\": - {\n \"id\": \"LiveChatSuperChatDetails\",\n \"properties\": {\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n },\n \"amountMicros\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"tier\": {\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the user to this Super Chat - event.\"\n }\n },\n \"type\": \"object\"\n },\n \"Caption\": - {\n \"description\": \"A *caption* resource represents a YouTube caption - track. A caption track is associated with exactly one YouTube video.\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#caption\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the caption track.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n }\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"Caption\"\n },\n - \ \"MemberSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"memberDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the member.\"\n },\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering memberships.\"\n },\n \"membershipsDetails\": - {\n \"description\": \"Details about the user's membership.\",\n - \ \"$ref\": \"MembershipsDetails\"\n }\n },\n \"id\": - \"MemberSnippet\"\n },\n \"InvideoBranding\": {\n \"properties\": - {\n \"timing\": {\n \"$ref\": \"InvideoTiming\",\n \"description\": - \"The temporal position within the video where watermark will be displayed.\"\n - \ },\n \"position\": {\n \"description\": \"The spatial - position within the video where the branding watermark will be displayed.\",\n - \ \"$ref\": \"InvideoPosition\"\n },\n \"targetChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The channel - to which this branding links. If not present it defaults to the current channel.\"\n - \ },\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The url of the uploaded image. Only used in apiary to api communication.\"\n - \ },\n \"imageBytes\": {\n \"format\": \"byte\",\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"InvideoBranding\",\n \"description\": \"LINT.IfChange - Describes an invideo branding.\"\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"type\": \"object\",\n \"description\": \"A single tag suggestion - with it's relevance information.\",\n \"id\": \"VideoSuggestionsTagSuggestion\",\n - \ \"properties\": {\n \"categoryRestricts\": {\n \"description\": - \"A set of video categories for which the tag is relevant. You can use this - information to display appropriate tag suggestions based on the video category - that the video uploader associates with the video. By default, tag suggestions - are relevant for all categories if there are no restricts defined for the - keyword.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"tag\": {\n \"type\": - \"string\",\n \"description\": \"The keyword tag suggested for the - video.\"\n }\n }\n },\n \"CaptionListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Caption\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of captions - that match the request criteria.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"CaptionListResponse\"\n },\n \"I18nLanguageSnippet\": {\n \"properties\": - {\n \"name\": {\n \"description\": \"The human-readable name - of the language in the language itself.\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\"\n }\n - \ },\n \"description\": \"Basic details about an i18n language, such - as language code and human-readable name.\",\n \"type\": \"object\",\n - \ \"id\": \"I18nLanguageSnippet\"\n },\n \"MembershipsDetails\": - {\n \"properties\": {\n \"accessibleLevels\": {\n \"type\": - \"array\",\n \"description\": \"Ids of all levels that the user has - access to. This includes the currently active level and all other levels that - are included because of a higher purchase.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"membershipsDuration\": {\n - \ \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\",\n \"$ref\": \"MembershipsDuration\"\n - \ },\n \"membershipsDurationAtLevels\": {\n \"description\": - \"Data about memberships duration on particular pricing levels.\",\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"type\": - \"array\"\n },\n \"highestAccessibleLevel\": {\n \"type\": - \"string\",\n \"description\": \"Id of the highest level that the - user has access to at the moment.\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"description\": \"Display name for the highest level that the - user has access to at the moment.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"MembershipsDetails\"\n - \ },\n \"ChannelAuditDetails\": {\n \"type\": \"object\",\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\",\n \"id\": \"ChannelAuditDetails\",\n - \ \"properties\": {\n \"contentIdClaimsGoodStanding\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the channel has - any unresolved claims.\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n }\n }\n },\n - \ \"ThirdPartyLink\": {\n \"description\": \"A *third party account - link* resource represents a link between a YouTube account or a channel and - an account on a third-party service.\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#thirdPartyLink\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the status of the link.\",\n - \ \"$ref\": \"ThirdPartyLinkStatus\"\n },\n \"linkingToken\": - {\n \"type\": \"string\",\n \"description\": \"The linking_token - identifies a YouTube account and channel with which the third party account - is linked.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n }\n },\n - \ \"id\": \"ThirdPartyLink\",\n \"type\": \"object\"\n },\n \"LiveChatMessage\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveChatMessage\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveChatMessageSnippet\",\n \"description\": \"The snippet object - contains basic details about the message.\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the message.\"\n },\n \"authorDetails\": - {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n \"description\": - \"The authorDetails object contains basic details about the user that posted - this message.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessage\",\n \"description\": \"A *liveChatMessage* resource - represents a chat message in a YouTube Live Chat.\"\n },\n \"I18nRegion\": - {\n \"type\": \"object\",\n \"id\": \"I18nRegion\",\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the i18n region, such as region code and human-readable name.\",\n \"$ref\": - \"I18nRegionSnippet\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#i18nRegion\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\"\n - \ }\n }\n },\n \"VideoLocalization\": {\n \"properties\": - {\n \"title\": {\n \"description\": \"Localized version of - the video's title.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"Localized version of the video's description.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Localized versions of certain video properties (e.g. title).\",\n \"id\": - \"VideoLocalization\",\n \"type\": \"object\"\n },\n \"ChannelProfileDetails\": - {\n \"properties\": {\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The YouTube channel - ID.\",\n \"type\": \"string\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelProfileDetails\",\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageListResponse\": {\n \"properties\": {\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"offlineAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the underlying stream - went offline.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"type\": \"array\"\n },\n \"pollingIntervalMillis\": - {\n \"description\": \"The amount of time the client should wait - before polling again.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageListResponse\"\n },\n \"ChannelSectionSnippet\": {\n - \ \"id\": \"ChannelSectionSnippet\",\n \"description\": \"Basic details - about a channel section, including title, style and position.\",\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the channel section's default title and description.\",\n - \ \"type\": \"string\"\n },\n \"style\": {\n \"type\": - \"string\",\n \"description\": \"The style of the channel section.\",\n - \ \"enum\": [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"localized\": {\n \"$ref\": \"ChannelSectionLocalization\",\n - \ \"description\": \"Localized title, read-only.\"\n },\n \"type\": - {\n \"description\": \"The type of the channel section.\",\n \"type\": - \"string\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel section's title for - multiple_playlists and multiple_channels.\"\n },\n \"position\": - {\n \"description\": \"The position of the channel section in the - channel.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"TokenPagination\": - {\n \"properties\": {},\n \"id\": \"TokenPagination\",\n \"type\": - \"object\",\n \"description\": \"Stub token pagination template to suppress - results.\"\n },\n \"LiveChatTextMessageDetails\": {\n \"properties\": - {\n \"messageText\": {\n \"description\": \"The user's message.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatTextMessageDetails\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"id\": \"CommentSnippetAuthorChannelId\",\n \"properties\": {\n - \ \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetails\": {\n \"description\": - \"Details about the content of an activity: the video that was shared, the - channel that was subscribed to, etc.\",\n \"id\": \"ActivityContentDetails\",\n - \ \"properties\": {\n \"promotedItem\": {\n \"description\": - \"The promotedItem object contains details about a resource which is being - promoted. This property is only present if the snippet.type is promotedItem.\",\n - \ \"$ref\": \"ActivityContentDetailsPromotedItem\"\n },\n \"like\": - {\n \"$ref\": \"ActivityContentDetailsLike\",\n \"description\": - \"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.\"\n - \ },\n \"subscription\": {\n \"description\": \"The - subscription object contains information about a channel that a user subscribed - to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"channelItem\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\"\n },\n \"favorite\": {\n \"description\": - \"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.\",\n - \ \"$ref\": \"ActivityContentDetailsFavorite\"\n },\n \"upload\": - {\n \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\",\n - \ \"$ref\": \"ActivityContentDetailsUpload\"\n },\n \"bulletin\": - {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n \"description\": - \"The bulletin object contains details about a channel bulletin post. This - object is only present if the snippet.type is bulletin.\"\n },\n \"comment\": - {\n \"$ref\": \"ActivityContentDetailsComment\",\n \"description\": - \"The comment object contains information about a resource that received a - comment. This property is only present if the snippet.type is comment.\"\n - \ },\n \"social\": {\n \"description\": \"The social - object contains details about a social network post. This property is only - present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"recommendation\": {\n \"description\": \"The - recommendation object contains information about a recommended resource. This - property is only present if the snippet.type is recommendation.\",\n \"$ref\": - \"ActivityContentDetailsRecommendation\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveStreamSnippet\": {\n \"properties\": {\n - \ \"isDefaultStream\": {\n \"type\": \"boolean\"\n },\n - \ \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The stream's title. The value must be between 1 and 128 characters long.\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the stream was created.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The stream's - description. The value cannot be longer than 10000 characters.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\"\n }\n },\n \"id\": \"LiveStreamSnippet\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsLike\": {\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\",\n - \ \"$ref\": \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"type\": \"object\",\n \"description\": \"Information about a - resource that received a positive (like) rating.\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n \"description\": - \"DEPRECATED Region restriction of the video.\",\n \"properties\": {\n - \ \"blocked\": {\n \"description\": \"A list of region codes - that identify countries where the video is blocked. If this property is present - and a country is not listed in its value, then the video is viewable in that - country. If this property is present and contains an empty list, the video - is viewable in all countries.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"allowed\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\",\n \"type\": \"array\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"PlaylistItem\": {\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"id\": - \"PlaylistItem\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"contentDetails\": {\n \"$ref\": \"PlaylistItemContentDetails\",\n - \ \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#playlistItem\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist item, such as its title and position in the playlist.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\"\n },\n - \ \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ActivityContentDetailsChannelItem\": {\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"description\": \"Details about a resource which was added - to a channel.\",\n \"type\": \"object\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"properties\": {\n \"giftMembershipsLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the level of the gift - memberships purchased by the user. The Level names are defined by the YouTube - channel offering the Membership. In some situations this field isn't filled.\"\n - \ },\n \"giftMembershipsCount\": {\n \"format\": \"int32\",\n - \ \"description\": \"The number of gift memberships purchased by the - user.\",\n \"type\": \"integer\"\n }\n }\n },\n \"VideoAbuseReportReason\": - {\n \"id\": \"VideoAbuseReportReason\",\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#videoAbuseReportReason\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID of this abuse report reason.\"\n }\n },\n \"type\": - \"object\"\n },\n \"ThumbnailDetails\": {\n \"id\": \"ThumbnailDetails\",\n - \ \"description\": \"Internal representation of thumbnails for a YouTube - resource.\",\n \"properties\": {\n \"high\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The high quality image for this - resource.\"\n },\n \"medium\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The medium quality image for this resource.\"\n - \ },\n \"standard\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The standard quality image for this resource.\"\n - \ },\n \"default\": {\n \"description\": \"The default - image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"maxres\": {\n \"description\": \"The maximum resolution - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"RelatedEntity\": {\n \"type\": - \"object\",\n \"id\": \"RelatedEntity\",\n \"properties\": {\n \"entity\": - {\n \"$ref\": \"Entity\"\n }\n }\n },\n \"ChannelListResponse\": - {\n \"id\": \"ChannelListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Channel\"\n },\n \"type\": \"array\"\n - \ }\n }\n },\n \"CommentThreadSnippet\": {\n \"type\": - \"object\",\n \"description\": \"Basic details about a comment thread.\",\n - \ \"id\": \"CommentThreadSnippet\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comments refer to, if any. No video_id implies a channel discussion - comment.\"\n },\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"canReply\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n },\n \"totalReplyCount\": - {\n \"description\": \"The total number of replies (not including - the top level comment).\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"isPublic\": {\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\",\n \"type\": \"boolean\"\n },\n \"topLevelComment\": - {\n \"description\": \"The top level comment of this thread.\",\n - \ \"$ref\": \"Comment\"\n }\n }\n },\n \"ChannelSectionTargeting\": - {\n \"type\": \"object\",\n \"properties\": {\n \"regions\": - {\n \"type\": \"array\",\n \"description\": \"The region - the channel section is targeting.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"languages\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The language the channel section is targeting.\"\n - \ },\n \"countries\": {\n \"description\": \"The country - the channel section is targeting.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"description\": - \"ChannelSection targeting setting.\",\n \"id\": \"ChannelSectionTargeting\"\n - \ },\n \"VideoFileDetails\": {\n \"id\": \"VideoFileDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"videoStreams\": - {\n \"type\": \"array\",\n \"description\": \"A list of - video streams contained in the uploaded video file. Each item in the list - contains detailed metadata about a video stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n }\n },\n - \ \"durationMs\": {\n \"description\": \"The length of the - uploaded video in milliseconds.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"fileSize\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded file's size in bytes. This field - is present whether a video file or another type of file was uploaded.\",\n - \ \"format\": \"uint64\"\n },\n \"container\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded video file's container - format.\"\n },\n \"audioStreams\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of audio streams contained in the uploaded - video file. Each item in the list contains detailed metadata about an audio - stream.\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ }\n },\n \"creationTime\": {\n \"description\": - \"The date and time when the uploaded video file was created. The value is - specified in ISO 8601 format. Currently, the following ISO 8601 formats are - supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time - with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n - \ },\n \"bitrateBps\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\",\n \"format\": \"uint64\"\n },\n \"fileType\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"Known - video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an - MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"description\": \"The uploaded - file's type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\"\n },\n \"fileName\": - {\n \"description\": \"The uploaded file's name. This field is present - whether a video file or another type of file was uploaded.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Describes original - video file properties, including technical details about audio and video streams, - but also metadata information like content length, digitization time, or geotagging - information.\"\n },\n \"CommentThread\": {\n \"properties\": {\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentThread\"\n - \ },\n \"replies\": {\n \"description\": \"The replies - object contains a limited number of replies (if any) to the top level comment - found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the comment thread and also the top level comment.\",\n - \ \"$ref\": \"CommentThreadSnippet\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"description\": \"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.\",\n - \ \"id\": \"CommentThread\",\n \"type\": \"object\"\n },\n \"VideoGetRatingResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"default\": \"youtube#videoGetRatingResponse\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"VideoRating\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of ratings - that match the request criteria.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoGetRatingResponse\"\n },\n \"CaptionSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"isAutoSynced\": - {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"audioTrackType\": {\n \"type\": - \"string\",\n \"description\": \"The type of audio track associated - with the caption track.\",\n \"enum\": [\n \"unknown\",\n - \ \"primary\",\n \"commentary\",\n \"descriptive\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"language\": - {\n \"description\": \"The language of the caption track. The property - value is a BCP-47 language tag.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video associated with the caption track. @mutable youtube.captions.insert\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"trackKind\": {\n \"type\": - \"string\",\n \"description\": \"The caption track's type.\",\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"isCC\": {\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\",\n \"type\": \"boolean\"\n - \ },\n \"failureReason\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The reason that YouTube failed to process the - caption track. This property is only present if the state property's value - is failed.\",\n \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ],\n \"type\": \"string\"\n - \ },\n \"name\": {\n \"description\": \"The name of - the caption track. The name is intended to be visible to the user as an option - during playback.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"status\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"serving\",\n - \ \"syncing\",\n \"failed\"\n ],\n \"description\": - \"The caption track's status.\"\n },\n \"isDraft\": {\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n },\n - \ \"isEasyReader\": {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"lastUpdated\": {\n \"description\": - \"The date and time when the caption track was last updated.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"isLarge\": - {\n \"description\": \"Indicates whether the caption track uses large - text for the vision-impaired. The default value is false.\",\n \"type\": - \"boolean\"\n }\n },\n \"description\": \"Basic details about - a caption track, such as its language and name.\",\n \"id\": \"CaptionSnippet\"\n - \ },\n \"InvideoPosition\": {\n \"type\": \"object\",\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"properties\": {\n \"type\": {\n \"type\": \"string\",\n - \ \"description\": \"Defines the position type.\",\n \"enum\": - [\n \"corner\"\n ],\n \"enumDescriptions\": [\n - \ \"\"\n ]\n },\n \"cornerPosition\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\"\n - \ }\n },\n \"id\": \"InvideoPosition\"\n },\n \"PageInfo\": - {\n \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\",\n \"id\": \"PageInfo\",\n \"type\": \"object\",\n \"properties\": - {\n \"resultsPerPage\": {\n \"type\": \"integer\",\n \"format\": - \"int32\",\n \"description\": \"The number of results included in - the API response.\"\n },\n \"totalResults\": {\n \"description\": - \"The total number of results in the result set.\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n }\n }\n },\n - \ \"MonitorStreamInfo\": {\n \"properties\": {\n \"broadcastStreamDelayMs\": - {\n \"description\": \"If you have set the enableMonitorStream property - to true, then this property determines the length of the live broadcast delay.\",\n - \ \"type\": \"integer\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"format\": \"uint32\"\n },\n \"embedHtml\": {\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\",\n \"type\": - \"string\"\n },\n \"enableMonitorStream\": {\n \"type\": - \"boolean\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"This value determines whether the monitor stream - is enabled for the broadcast. If the monitor stream is enabled, then YouTube - will broadcast the event content on a special stream intended only for the - broadcaster's consumption. The broadcaster can use the stream to review the - event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\"\n }\n },\n \"description\": - \"Settings and Info of the monitor stream\",\n \"type\": \"object\",\n - \ \"id\": \"MonitorStreamInfo\"\n },\n \"ThirdPartyLinkSnippet\": - {\n \"id\": \"ThirdPartyLinkSnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic information about a third party account link, - including its type and type-specific information.\",\n \"properties\": - {\n \"type\": {\n \"description\": \"Type of the link named - after the entities that are being linked.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ]\n },\n \"channelToStoreLink\": - {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\"\n }\n }\n },\n \"CommentThreadReplies\": {\n - \ \"id\": \"CommentThreadReplies\",\n \"properties\": {\n \"comments\": - {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"type\": \"array\",\n \"description\": \"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.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Comments written in (direct or indirect) reply to the top level comment.\"\n - \ },\n \"PlaylistPlayer\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistPlayer\",\n \"properties\": {\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that - embeds a player that will play the playlist.\"\n }\n }\n },\n - \ \"PropertyValue\": {\n \"description\": \"A pair Property / Value.\",\n - \ \"type\": \"object\",\n \"id\": \"PropertyValue\",\n \"properties\": - {\n \"property\": {\n \"type\": \"string\",\n \"description\": - \"A property.\"\n },\n \"value\": {\n \"type\": \"string\",\n - \ \"description\": \"The property's value.\"\n }\n }\n - \ },\n \"PlaylistLocalization\": {\n \"id\": \"PlaylistLocalization\",\n - \ \"description\": \"Playlist localization setting\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for playlist's title.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's description.\"\n }\n },\n \"type\": - \"object\"\n },\n \"SearchResult\": {\n \"description\": \"A search - result contains information about a YouTube video, channel, or playlist that - matches the search parameters specified in an API request. While a search - result points to a uniquely identifiable resource, like a video, it does not - have its own persistent data.\",\n \"properties\": {\n \"id\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The id - object contains information that can be used to uniquely identify the resource - that matches the search request.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about a search result, such as its title or description. For - example, if the search result is a video, then the title will be the video's - title and the description will be the video's description.\",\n \"$ref\": - \"SearchResultSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#searchResult\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ }\n },\n \"id\": \"SearchResult\",\n \"type\": \"object\"\n - \ },\n \"LiveChatModeratorListResponse\": {\n \"id\": \"LiveChatModeratorListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatModeratorListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": - \"A list of moderators that match the request criteria.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n }\n },\n \"ThumbnailSetResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#thumbnailSetResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of thumbnails.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n - \ }\n }\n },\n \"type\": \"object\",\n \"id\": - \"ThumbnailSetResponse\"\n },\n \"Subscription\": {\n \"description\": - \"A *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\"\n },\n - \ \"subscriberSnippet\": {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"The subscriberSnippet object contains basic details - about the subscriber.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\",\n - \ \"$ref\": \"SubscriptionContentDetails\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the subscription, including its title and the channel that the user - subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n \"default\": - \"youtube#subscription\"\n }\n },\n \"id\": \"Subscription\",\n - \ \"type\": \"object\"\n },\n \"MembershipsDurationAtLevel\": {\n - \ \"type\": \"object\",\n \"id\": \"MembershipsDurationAtLevel\",\n - \ \"properties\": {\n \"memberTotalDurationMonths\": {\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n },\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member for the given level.\",\n \"type\": \"string\"\n },\n - \ \"level\": {\n \"type\": \"string\",\n \"description\": - \"Pricing level ID.\"\n }\n }\n },\n \"ThirdPartyLinkListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"LevelDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The name that should be used when referring to this level.\"\n }\n - \ },\n \"id\": \"LevelDetails\"\n },\n \"PlaylistContentDetails\": - {\n \"properties\": {\n \"itemCount\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n },\n \"id\": - \"PlaylistContentDetails\",\n \"type\": \"object\"\n },\n \"Thumbnail\": - {\n \"properties\": {\n \"height\": {\n \"description\": - \"(Optional) Height of the thumbnail image.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"url\": {\n \"description\": - \"The thumbnail image's URL.\",\n \"type\": \"string\"\n },\n - \ \"width\": {\n \"description\": \"(Optional) Width of the - thumbnail image.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"A thumbnail is an image representing a YouTube resource.\",\n \"id\": - \"Thumbnail\"\n },\n \"PlaylistListResponse\": {\n \"id\": \"PlaylistListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"description\": - \"A list of playlists that match the request criteria\",\n \"items\": - {\n \"$ref\": \"Playlist\"\n },\n \"type\": \"array\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlistListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n }\n }\n },\n \"ChannelSettings\": - {\n \"id\": \"ChannelSettings\",\n \"properties\": {\n \"defaultTab\": - {\n \"description\": \"Which content tab users should see when viewing - the channel.\",\n \"type\": \"string\"\n },\n \"featuredChannelsUrls\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The list of featured - channels.\"\n },\n \"profileColor\": {\n \"type\": - \"string\",\n \"description\": \"A prominent color that can be rendered - on this channel page.\"\n },\n \"keywords\": {\n \"type\": - \"string\",\n \"description\": \"Lists keywords associated with the - channel, comma-separated.\"\n },\n \"featuredChannelsTitle\": - {\n \"type\": \"string\",\n \"description\": \"Title for - the featured channels tab.\"\n },\n \"country\": {\n \"type\": - \"string\",\n \"description\": \"The country of the channel.\"\n - \ },\n \"trackingAnalyticsAccountId\": {\n \"description\": - \"The ID for a Google Analytics account to track and measure traffic to the - channels.\",\n \"type\": \"string\"\n },\n \"unsubscribedTrailer\": - {\n \"type\": \"string\",\n \"description\": \"The trailer - of the channel, for users that are not subscribers.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the channel title.\"\n },\n \"moderateComments\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether user-submitted comments - left on the channel page need to be approved by the channel owner to be publicly - visible.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\"\n },\n \"showRelatedChannels\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether related channels should - be proposed.\"\n },\n \"description\": {\n \"description\": - \"Specifies the channel description.\",\n \"type\": \"string\"\n - \ },\n \"showBrowseView\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the tab to browse the videos should be - displayed.\"\n }\n },\n \"description\": \"Branding properties - for the channel view.\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"id\": \"ActivityContentDetailsFavorite\",\n \"type\": \"object\",\n - \ \"description\": \"Information about a video that was marked as a favorite - video.\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was marked as a favorite.\"\n - \ }\n }\n },\n \"VideoProjectDetails\": {\n \"id\": - \"VideoProjectDetails\",\n \"properties\": {},\n \"type\": \"object\",\n - \ \"description\": \"DEPRECATED. b/157517979: This part was never populated - after it was added. However, it sees non-zero traffic because there is generated - client code in the wild that refers to it [1]. We keep this field and do NOT - remove it because otherwise V3 would return an error when this part gets requested - [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"description\": - \"Information that identifies the recommended resource.\",\n \"id\": - \"ActivityContentDetailsRecommendation\",\n \"properties\": {\n \"seedResourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The seedResourceId - object contains information about the resource that caused the recommendation.\"\n - \ },\n \"reason\": {\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ],\n \"description\": \"The reason that the resource is - recommended to the user.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatMessageRetractedDetails\": {\n \"id\": - \"LiveChatMessageRetractedDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveStreamListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamListResponse\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"description\": \"A list of live streams that match - the request criteria.\",\n \"type\": \"array\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"default\": \"youtube#liveStreamListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ }\n }\n }\n },\n \"name\": \"youtube\",\n \"fullyEncodeReservedExpansion\": - true,\n \"ownerName\": \"Google\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"batchPath\": \"batch\",\n \"id\": \"youtube:v3\",\n \"servicePath\": - \"\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"version\": \"v3\",\n \"discoveryVersion\": \"v1\",\n \"mtlsRootUrl\": - \"https://youtube.mtls.googleapis.com/\",\n \"protocol\": \"rest\",\n \"baseUrl\": - \"https://youtube.googleapis.com/\",\n \"resources\": {\n \"i18nLanguages\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - i18nLanguage resource properties that the API response will include. Set the - parameter value to snippet.\",\n \"required\": true\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"en_US\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.i18nLanguages.list\",\n \"response\": - {\n \"$ref\": \"I18nLanguageListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/i18nLanguages\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/i18nLanguages\"\n - \ }\n }\n },\n \"liveChatBans\": {\n \"methods\": {\n - \ \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"id\": \"youtube.liveChatBans.delete\",\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Deletes a chat ban.\",\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"request\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"liveBroadcasts\": {\n \"methods\": {\n \"bind\": - {\n \"id\": \"youtube.liveBroadcasts.bind\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameters\": - {\n \"streamId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Stream to bind, if not set unbind - the current one.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"id\": {\n \"required\": - true,\n \"description\": \"Broadcast to bind to the stream\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Bind a broadcast to a stream.\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"httpMethod\": \"POST\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n }\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"LiveBroadcastListResponse\"\n },\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Return - broadcasts with the given ids from Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"broadcastStatus\": - {\n \"location\": \"query\",\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"description\": \"Return broadcasts - with a certain status, e.g. active broadcasts.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"broadcastType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return only scheduled event broadcasts.\",\n - \ \"Return only persistent broadcasts.\"\n ],\n - \ \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"default\": \"event\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return only broadcasts with the selected type.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"format\": - \"uint32\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"default\": \"5\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"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, status - and statistics.\"\n }\n },\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\"\n },\n - \ \"delete\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Delete - a given broadcast.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Broadcast to delete.\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\"\n },\n \"transition\": - {\n \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"description\": \"Transition a broadcast to a given status.\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"broadcastStatus\": - {\n \"description\": \"The status to which the broadcast is going - to transition.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Start testing the broadcast. YouTube transmits video to - the broadcast's monitor stream. Note that you can only transition a broadcast - to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"required\": true,\n \"type\": - \"string\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"description\": \"Broadcast to transition.\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.transition\"\n },\n \"insert\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"id\": \"youtube.liveBroadcasts.insert\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"description\": \"Inserts a new - stream for the authenticated user.\",\n \"httpMethod\": \"POST\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\"\n },\n \"update\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"description\": \"Updates an existing - broadcast for the authenticated user.\",\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n - \ }\n },\n \"insertCuepoint\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"repeated\": true\n - \ },\n \"id\": {\n \"description\": \"Broadcast - to insert ads to, or equivalently `external_video_id` for internal use.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"description\": - \"Insert cuepoints in a broadcast\",\n \"parameterOrder\": [],\n - \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"response\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\"\n - \ }\n }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"request\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"response\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/tests\",\n \"description\": - \"POST method.\",\n \"id\": \"youtube.tests.insert\",\n \"flatPath\": - \"youtube/v3/tests\"\n }\n }\n },\n \"youtube\": {\n \"resources\": - {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"path\": \"youtube/v3/commentThreads\",\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [],\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\"\n }\n }\n }\n }\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/superChatEvents\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.superChatEvents.list\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"parameters\": {\n \"pageToken\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"minimum\": \"1\",\n \"maximum\": - \"50\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the superChatEvent resource parts that the API response will include. This - parameter is currently not supported.\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return rendered funding amounts - in specified language.\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/superChatEvents\"\n }\n }\n },\n \"subscriptions\": - {\n \"methods\": {\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Deletes a resource.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"path\": - \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"list\": {\n \"parameters\": {\n \"forChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"myRecentSubscribers\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"mySubscribers\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the subscribers of the given channel owner.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"description\": - \"Return the subscriptions of the given channel owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"type\": \"integer\"\n },\n \"order\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Sort - by relevance.\",\n \"Sort by order of activity.\",\n \"Sort - alphabetically.\"\n ],\n \"default\": \"relevance\",\n - \ \"description\": \"The order of the returned subscriptions\",\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ]\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.subscriptions.list\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"flatPath\": - \"youtube/v3/subscriptions\"\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"description\": \"Inserts a - new resource into this collection.\",\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"path\": - \"youtube/v3/subscriptions\"\n }\n }\n },\n \"thumbnails\": - {\n \"methods\": {\n \"set\": {\n \"parameterOrder\": - [\n \"videoId\"\n ],\n \"mediaUpload\": {\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"2097152\"\n - \ },\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n \"description\": - \"As this is not an insert in a strict sense (it supports uploading/setting - of a thumbnail for multiple videos, which doesn't result in creation of a - single resource), I use a custom verb here.\",\n \"id\": \"youtube.thumbnails.set\",\n - \ \"path\": \"youtube/v3/thumbnails/set\",\n \"parameters\": - {\n \"videoId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Returns the Thumbnail with the - given video IDs for Stubby or Apiary.\",\n \"required\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n - \ \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"insert\": {\n \"request\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"id\": \"youtube.liveChatMessages.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/liveChat/messages\"\n - \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/messages\",\n \"id\": - \"youtube.liveChatMessages.list\",\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The id of the live chat for which comments should be returned.\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"profileImageSize\": - {\n \"location\": \"query\",\n \"description\": - \"Specifies the size of the profile image that should be returned for each - user.\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"maximum\": \"720\",\n \"minimum\": \"16\"\n },\n - \ \"maxResults\": {\n \"default\": \"500\",\n \"maximum\": - \"2000\",\n \"minimum\": \"200\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the localization language - in which the system messages should be returned.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - liveChatComment resource parts that the API response will include. Supported - values are id and snippet.\",\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ]\n },\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Deletes a chat message.\",\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.delete\"\n - \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"update\": - {\n \"description\": \"Updates an existing resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"id\": \"youtube.channels.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/channels\",\n \"request\": {\n \"$ref\": - \"Channel\"\n },\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n }\n },\n \"list\": {\n \"parameters\": - {\n \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"mine\": {\n \"description\": \"Return the ids of - channels owned by the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"managedByMe\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channels managed by the authenticated - user.\"\n },\n \"categoryId\": {\n \"description\": - \"Return the channels within the specified guide category ID.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Return the channels with the specified IDs.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"mySubscribers\": {\n \"description\": - \"Return the channels subscribed to the authenticated user\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"forUsername\": - {\n \"description\": \"Return the channel associated with a YouTube - username.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"default\": \"5\",\n - \ \"location\": \"query\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"flatPath\": \"youtube/v3/channels\",\n \"response\": - {\n \"$ref\": \"ChannelListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.channels.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/channels\"\n }\n }\n },\n \"members\": {\n - \ \"methods\": {\n \"list\": {\n \"parameters\": {\n \"filterByMemberChannelId\": - {\n \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"maximum\": - \"1000\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mode\": {\n \"enum\": - [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"default\": - \"all_current\"\n },\n \"hasAccessToLevel\": {\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"description\": \"The - *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/members\",\n - \ \"description\": \"Retrieves a list of members that match the request - criteria for a channel.\",\n \"id\": \"youtube.members.list\",\n - \ \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ },\n \"path\": \"youtube/v3/members\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"liveStreams\": {\n \"methods\": {\n - \ \"insert\": {\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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, - content_details, and status.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new stream for the authenticated user.\",\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n }\n },\n \"list\": - {\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"id\": \"youtube.liveStreams.list\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Return LiveStreams with the - given ids from Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"default\": \"5\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n }\n },\n - \ \"description\": \"Retrieve the list of streams associated with - the given channel. --\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\"\n },\n - \ \"delete\": {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes an existing stream for the authenticated - user.\",\n \"id\": \"youtube.liveStreams.delete\",\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"update\": {\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.liveStreams.update\",\n \"description\": - \"Updates an existing stream for the authenticated user.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"PUT\"\n }\n }\n },\n \"activities\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"default\": \"5\",\n \"format\": - \"uint32\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"location\": - \"query\"\n },\n \"publishedAfter\": {\n \"location\": - \"query\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"home\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"publishedBefore\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"format\": - \"google-datetime\"\n }\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"id\": \"youtube.activities.list\",\n \"path\": - \"youtube/v3/activities\",\n \"flatPath\": \"youtube/v3/activities\"\n - \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n - \ \"insert\": {\n \"flatPath\": \"youtube/v3/abuseReports\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"id\": \"youtube.abuseReports.insert\",\n \"request\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n }\n - \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - i18nRegion resource properties that the API response will include. Set the - parameter value to snippet.\"\n },\n \"hl\": {\n \"default\": - \"en_US\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.i18nRegions.list\",\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"path\": \"youtube/v3/i18nRegions\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"part\": {\n \"description\": \"The *part* parameter - specifies the videoCategory resource parts that the API response will include. - Supported values are id and snippet.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"repeated\": - true\n },\n \"hl\": {\n \"default\": \"en-US\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"id\": \"youtube.videoAbuseReportReasons.list\"\n - \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"update\": - {\n \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameters\": {\n \"sync\": {\n \"location\": - \"query\",\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is on behalf of.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"mediaUpload\": - {\n \"maxSize\": \"104857600\",\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n }\n - \ }\n },\n \"supportsMediaUpload\": true,\n \"id\": - \"youtube.captions.update\",\n \"description\": \"Updates an existing - resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"httpMethod\": \"PUT\"\n - \ },\n \"download\": {\n \"useMediaDownloadService\": - true,\n \"description\": \"Downloads a caption track.\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"supportsMediaDownload\": true,\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"flatPath\": \"youtube/v3/captions/{id}\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"path\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The ID of the caption track to download, required for One Platform.\"\n - \ },\n \"tlang\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"tlang - is the language code; machine translate the captions into this language.\"\n - \ },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"tfmt\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Convert the captions into this - format. Supported options are sbv, srt, and vtt.\"\n }\n },\n - \ \"id\": \"youtube.captions.download\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.delete\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"path\": - \"youtube/v3/captions\"\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/captions\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"Returns the captions with the given IDs for Stubby or Apiary.\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the captions for the specified video.\",\n \"required\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"CaptionListResponse\"\n },\n \"id\": \"youtube.captions.list\",\n - \ \"flatPath\": \"youtube/v3/captions\"\n },\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.insert\",\n \"path\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"mediaUpload\": {\n \"protocols\": - {\n \"resumable\": {\n \"multipart\": true,\n - \ \"path\": \"/resumable/upload/youtube/v3/captions\"\n },\n - \ \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/captions\"\n }\n },\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"sync\": {\n \"location\": - \"query\",\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"type\": - \"boolean\"\n }\n },\n \"supportsMediaUpload\": - true,\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\"\n }\n }\n },\n - \ \"channelSections\": {\n \"methods\": {\n \"delete\": {\n - \ \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"id\": \"youtube.channelSections.delete\"\n },\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return content in specified language\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the ChannelSections owned by the authenticated - user.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"Return the ChannelSections with the - given IDs for Stubby or Apiary.\"\n },\n \"part\": {\n - \ \"required\": true,\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"Return the ChannelSections owned by the - specified channel ID.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"update\": {\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.channelSections.update\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"path\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ }\n },\n \"httpMethod\": \"PUT\"\n },\n - \ \"insert\": {\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"flatPath\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"path\": - \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.insert\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"id\": - \"youtube.commentThreads.insert\",\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n }\n },\n \"list\": - {\n \"path\": \"youtube/v3/commentThreads\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.commentThreads.list\",\n - \ \"parameters\": {\n \"allThreadsRelatedToChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\"\n },\n \"moderationStatus\": - {\n \"default\": \"published\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Limits - the returned comment threads to those with the specified moderation status. - Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\"\n },\n \"id\": {\n \"repeated\": - true,\n \"description\": \"Returns the comment threads with the - given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"textFormat\": - {\n \"default\": \"html\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"type\": - \"string\",\n \"description\": \"The requested text format for - the returned comments.\",\n \"location\": \"query\"\n },\n - \ \"videoId\": {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of the specified video.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"default\": \"20\",\n \"maximum\": - \"100\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"minimum\": \"1\",\n \"type\": \"integer\",\n - \ \"location\": \"query\"\n },\n \"channelId\": - {\n \"description\": \"Returns the comment threads for all the - channel comments (ie does not include comments left on videos).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies a comma-separated list of one or more commentThread resource - properties that the API response will include.\",\n \"type\": - \"string\"\n },\n \"order\": {\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"default\": \"time\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"searchTerms\": {\n \"type\": - \"string\",\n \"description\": \"Limits the returned comment - threads to those matching the specified key words. Not compatible with the - 'id' filter.\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"httpMethod\": \"GET\"\n }\n }\n },\n - \ \"playlistItems\": {\n \"methods\": {\n \"insert\": {\n \"path\": - \"youtube/v3/playlistItems\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"id\": \"youtube.playlistItems.insert\"\n - \ },\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.playlistItems.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"path\": - \"youtube/v3/playlistItems\",\n \"flatPath\": \"youtube/v3/playlistItems\"\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"id\": - \"youtube.playlistItems.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n }\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"playlistId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlist items within the given playlist.\"\n },\n - \ \"videoId\": {\n \"description\": \"Return the playlist - items associated with the given video ID.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"response\": {\n \"$ref\": - \"PlaylistItemListResponse\"\n },\n \"id\": \"youtube.playlistItems.list\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"httpMethod\": \"GET\"\n }\n - \ }\n },\n \"thirdPartyLinks\": {\n \"methods\": {\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Do not use. Required for compatibility.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"Type of - the link to be deleted.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"type\": \"string\"\n },\n \"linkingToken\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"Delete - the partner links with the given linking token.\"\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n }\n },\n \"id\": \"youtube.thirdPartyLinks.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\"\n },\n \"insert\": {\n \"parameters\": - {\n \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"location\": \"query\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.insert\"\n - \ },\n \"update\": {\n \"parameters\": {\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"description\": \"Updates an - existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"id\": - \"youtube.thirdPartyLinks.update\",\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n }\n },\n \"list\": {\n \"id\": - \"youtube.thirdPartyLinks.list\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n },\n \"linkingToken\": {\n \"description\": - \"Get a third party link with the given linking token.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"type\": - {\n \"description\": \"Get a third party link of the given type.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"A link that is connecting (or about - to connect) a channel with a store on a merchandising platform in order to - enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"liveChatModerators\": {\n \"methods\": {\n \"list\": - {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"LiveChatModeratorListResponse\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"liveChatId\": {\n - \ \"description\": \"The id of the live chat for which moderators - should be returned.\",\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the liveChatModerator resource parts that - the API response will include. Supported values are id and snippet.\"\n },\n - \ \"maxResults\": {\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"minimum\": - \"0\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"50\",\n \"type\": \"integer\"\n - \ }\n },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"id\": - \"youtube.liveChatModerators.list\",\n \"path\": \"youtube/v3/liveChat/moderators\"\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a chat moderator.\",\n \"id\": \"youtube.liveChatModerators.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"insert\": {\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"response\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.liveChatModerators.insert\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": - true\n }\n },\n \"description\": \"Inserts a - new resource into this collection.\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"membershipsLevels\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of all pricing levels offered - by a creator to the fans.\",\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"id\": - \"youtube.membershipsLevels.list\",\n \"httpMethod\": \"GET\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ }\n }\n }\n },\n \"comments\": {\n \"methods\": - {\n \"setModerationStatus\": {\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"path\": \"youtube/v3/comments/setModerationStatus\",\n \"parameters\": - {\n \"banAuthor\": {\n \"default\": \"false\",\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"If set to true the author of the comment gets added to the ban list. This - means all future comments of the author will autmomatically be rejected. Only - valid in combination with STATUS_REJECTED.\"\n },\n \"moderationStatus\": - {\n \"description\": \"Specifies the requested moderation status. - Note, comments can be in statuses, which are not available through this call. - For example, this call does not allow to mark a comment as 'likely spam'. - Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"location\": \"query\",\n \"required\": true\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Sets the moderation status of one - or more comments.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\"\n },\n \"markAsSpam\": - {\n \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Flags - the comments with the given IDs as spam in the caller's opinion.\"\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.comments.markAsSpam\",\n \"path\": \"youtube/v3/comments/markAsSpam\",\n - \ \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\"\n },\n \"delete\": {\n \"id\": \"youtube.comments.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/comments\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Deletes a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/comments\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"textFormat\": {\n - \ \"description\": \"The requested text format for the returned - comments.\",\n \"location\": \"query\",\n \"default\": - \"html\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"textFormatUnspecified\",\n \"html\",\n \"plainText\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ]\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Returns the comments with the given IDs for - One Platform.\"\n },\n \"maxResults\": {\n \"maximum\": - \"100\",\n \"format\": \"uint32\",\n \"minimum\": - \"1\",\n \"default\": \"20\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - a comma-separated list of one or more comment resource properties that the - API response will include.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"parentId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.list\",\n \"flatPath\": - \"youtube/v3/comments\"\n },\n \"update\": {\n \"path\": - \"youtube/v3/comments\",\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"description\": - \"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.\"\n - \ }\n },\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"Comment\"\n - \ },\n \"id\": \"youtube.comments.update\",\n \"description\": - \"Updates an existing resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"id\": \"youtube.comments.insert\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"path\": \"youtube/v3/comments\",\n \"response\": {\n - \ \"$ref\": \"Comment\"\n },\n \"description\": - \"Inserts a new resource into this collection.\"\n }\n }\n },\n - \ \"watermarks\": {\n \"methods\": {\n \"unset\": {\n \"description\": - \"Allows removal of channel watermark.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"id\": \"youtube.watermarks.unset\",\n \"path\": - \"youtube/v3/watermarks/unset\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/watermarks/unset\"\n },\n - \ \"set\": {\n \"supportsMediaUpload\": true,\n \"flatPath\": - \"youtube/v3/watermarks/set\",\n \"id\": \"youtube.watermarks.set\",\n - \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/watermarks/set\",\n \"description\": - \"Allows upload of watermark image and setting it for a channel.\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"mediaUpload\": {\n - \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ }\n },\n \"maxSize\": \"10485760\"\n }\n - \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"id\": \"youtube.search.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/search\",\n - \ \"flatPath\": \"youtube/v3/search\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"locationRadius\": {\n - \ \"description\": \"Filter on distance from the location (specified - above).\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"order\": {\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Sort order of the results.\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"default\": \"relevance\"\n },\n - \ \"relevanceLanguage\": {\n \"description\": \"Return - results relevant to this language.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"forContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Search owned by a content owner.\"\n },\n - \ \"videoDuration\": {\n \"description\": \"Filter - on the duration of the videos.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ]\n },\n \"channelType\": - {\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Add - a filter on the channel search.\"\n },\n \"videoDefinition\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on the definition of the videos.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ]\n },\n \"videoType\": - {\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Filter on videos of a specific type.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"forDeveloper\": {\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Restrict the search to only retrieve - videos uploaded using the project id of the authenticated user.\"\n },\n - \ \"videoSyndicated\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"description\": - \"Filter on syndicated videos.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all videos, syndicated or - not.\",\n \"Only retrieve syndicated videos.\"\n ]\n - \ },\n \"videoLicense\": {\n \"enum\": [\n - \ \"any\",\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Return - all videos, regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"description\": \"Filter on - the license of the videos.\"\n },\n \"relatedToVideoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Search related to a resource.\"\n },\n - \ \"eventType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ],\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"description\": - \"Filter on the livestream status of the videos.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": - true\n },\n \"forMine\": {\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"videoDimension\": - {\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"Include both 3D and non-3D videos in returned results. This - is the default value.\",\n \"Restrict search results to exclude - 3D videos.\",\n \"Restrict search results to only include 3D - videos.\"\n ],\n \"description\": \"Filter on 3d - videos.\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"format\": - \"uint32\"\n },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"description\": - \"Filter on resources published after this date.\",\n \"type\": - \"string\"\n },\n \"q\": {\n \"description\": - \"Textual search terms to match.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"videoCategoryId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on videos in a specific category.\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"description\": \"Display the content as seen by - viewers in this country.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"location\": - {\n \"description\": \"Filter on location of the video\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"publishedBefore\": - {\n \"format\": \"google-datetime\",\n \"description\": - \"Filter on resources published before this date.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoCaption\": - {\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"description\": \"Filter on the presence - of captions on the videos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter results based on caption availability.\",\n - \ \"Only include videos that have captions.\",\n \"Only - include videos that do not have captions.\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoEmbeddable\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos, embeddable or not.\",\n \"Only retrieve embeddable - videos.\"\n ],\n \"description\": \"Filter on embeddable - videos.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ]\n },\n - \ \"safeSearch\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ],\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"default\": \"moderate\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"type\": - {\n \"repeated\": true,\n \"description\": \"Restrict - results to a particular set of resource types from One Platform.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on resources belonging to this channelId.\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"topicId\": - {\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular topic.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Retrieves a list - of search resources\",\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"playlists\": {\n \"methods\": {\n \"delete\": - {\n \"flatPath\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlists.delete\"\n },\n \"list\": - {\n \"flatPath\": \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"mine\": {\n \"description\": - \"Return the playlists owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the playlists owned by the specified channel ID.\",\n \"type\": - \"string\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return content in specified language\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"location\": \"query\",\n \"default\": - \"5\",\n \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"minimum\": \"0\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/playlists\",\n \"response\": {\n - \ \"$ref\": \"PlaylistListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\"\n },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"id\": \"youtube.playlists.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"update\": {\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\",\n \"id\": \"youtube.playlists.update\",\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\"\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.videoCategories.list\",\n - \ \"parameters\": {\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the videoCategory resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"Returns the video categories with the given - IDs for Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"en-US\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"response\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"id\": \"youtube.channelBanners.insert\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\",\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/channelBanners/insert\"\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"supportsMediaUpload\": true,\n \"parameterOrder\": [],\n - \ \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"channelId\": {\n - \ \"location\": \"query\",\n \"description\": \"Unused, - channel_id is currently derived from the security context of the requestor.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/channelBanners/insert\"\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"getRating\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"VideoGetRatingResponse\"\n },\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"description\": \"Retrieves the ratings that the authorized user - gave to a list of specified videos.\",\n \"id\": \"youtube.videos.getRating\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true\n }\n - \ },\n \"flatPath\": \"youtube/v3/videos/getRating\"\n },\n - \ \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"description\": - \"Deletes a resource.\",\n \"path\": \"youtube/v3/videos\",\n \"id\": - \"youtube.videos.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"update\": {\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"description\": - \"Updates an existing resource.\",\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/videos\",\n \"id\": \"youtube.videos.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n - \ }\n }\n },\n \"list\": {\n \"response\": - {\n \"$ref\": \"VideoListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"id\": \"youtube.videos.list\",\n \"path\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Use a chart that is specific to the specified region\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"myRating\": - {\n \"type\": \"string\",\n \"description\": \"Return - videos liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"location\": \"query\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Stands - for \\\"host language\\\". Specifies the localization language of the metadata - to be filled into snippet.localized. The field is filled with the default - metadata if there is no localization in the specified language. The parameter - value must be a language code included in the list returned by the i18nLanguages.list - method (e.g. en_US, es_MX).\"\n },\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return videos with the given ids.\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"minimum\": \"1\",\n \"maximum\": \"50\",\n - \ \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"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.\"\n },\n \"maxWidth\": - {\n \"location\": \"query\",\n \"format\": \"int32\",\n - \ \"maximum\": \"8192\",\n \"description\": \"Return - the player with maximum height specified in\",\n \"type\": \"integer\",\n - \ \"minimum\": \"72\"\n },\n \"chart\": - {\n \"enum\": [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Return the videos that are in the specified - chart.\",\n \"location\": \"query\"\n },\n \"maxHeight\": - {\n \"maximum\": \"8192\",\n \"format\": \"int32\",\n - \ \"location\": \"query\",\n \"minimum\": \"72\",\n - \ \"type\": \"integer\"\n },\n \"videoCategoryId\": - {\n \"description\": \"Use chart that is specific to the specified - video category\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"0\"\n },\n \"locale\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"GET\"\n },\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"supportsMediaUpload\": true,\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"parameters\": {\n \"notifySubscribers\": {\n \"default\": - \"true\",\n \"description\": \"Notify the channel subscribers - about the new video. As default, the notification is enabled.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"autoLevels\": {\n \"description\": \"Should auto-levels - be applied to the upload.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"stabilize\": {\n \"description\": - \"Should stabilize be applied to the upload.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ }\n },\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"mediaUpload\": {\n \"maxSize\": - \"274877906944\",\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/videos\"\n }\n - \ },\n \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n - \ ]\n },\n \"id\": \"youtube.videos.insert\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"path\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"rate\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"rating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\",\n \"rating\"\n ],\n \"path\": - \"youtube/v3/videos/rate\",\n \"httpMethod\": \"POST\",\n \"description\": - \"Adds a like or dislike rating to a video or removes a rating from a video.\",\n - \ \"flatPath\": \"youtube/v3/videos/rate\",\n \"id\": \"youtube.videos.rate\"\n - \ },\n \"reportAbuse\": {\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n - \ \"description\": \"Report abuse for a video.\",\n \"parameterOrder\": - [],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.videos.reportAbuse\"\n - \ }\n }\n }\n },\n \"revision\": \"20230220\",\n \"ownerDomain\": - \"google.com\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:37 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCJgwIs09zF4iM-sxb9X0jCA&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"4rd8rENLoT3ktlYnKC0fJPT9P4o\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"gU_6QtzSQi3CLUV5CPc4u-Dd4jg\",\n \"id\": \"UCJgwIs09zF4iM-sxb9X0jCA\",\n - \ \"snippet\": {\n \"title\": \"Kwarantanna z Bitcoin\",\n \"description\": - \"Kwarantanna z Bitcoinem to najd\u0142u\u017Cej nadawany, polski podcast - wideo traktuj\u0105cy o wydarzeniach makroekonomicznych, Bitcoinie i zmianach - zachodz\u0105cych w \u015Bwiecie. Program ma charakter rozrywkowy oraz edukacyjny - i nie znajdziesz tu porad inwestycyjnych.\\n\\n\\n\",\n \"customUrl\": - \"@kwarantannazbitcoin\",\n \"publishedAt\": \"2021-12-22T12:49:42.313612Z\",\n - \ \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/TmAG8l1gKoB_7gtMVAm7qxkJrhQkhBi18TJDbsquIH-DQcibziLs6b3wYQEw8F38xLyaAOjwZw=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/TmAG8l1gKoB_7gtMVAm7qxkJrhQkhBi18TJDbsquIH-DQcibziLs6b3wYQEw8F38xLyaAOjwZw=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/TmAG8l1gKoB_7gtMVAm7qxkJrhQkhBi18TJDbsquIH-DQcibziLs6b3wYQEw8F38xLyaAOjwZw=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Kwarantanna z Bitcoin\",\n - \ \"description\": \"Kwarantanna z Bitcoinem to najd\u0142u\u017Cej - nadawany, polski podcast wideo traktuj\u0105cy o wydarzeniach makroekonomicznych, - Bitcoinie i zmianach zachodz\u0105cych w \u015Bwiecie. Program ma charakter - rozrywkowy oraz edukacyjny i nie znajdziesz tu porad inwestycyjnych.\\n\\n\\n\"\n - \ },\n \"country\": \"PL\"\n },\n \"brandingSettings\": - {\n \"channel\": {\n \"title\": \"Kwarantanna z Bitcoin\",\n - \ \"description\": \"Kwarantanna z Bitcoinem to najd\u0142u\u017Cej - nadawany, polski podcast wideo traktuj\u0105cy o wydarzeniach makroekonomicznych, - Bitcoinie i zmianach zachodz\u0105cych w \u015Bwiecie. Program ma charakter - rozrywkowy oraz edukacyjny i nie znajdziesz tu porad inwestycyjnych.\\n\\n\\n\",\n - \ \"keywords\": \"bitcoin kryptowaluty \\\"kwarantanna z bitcoinem\\\" - \\\"sztuczna inteligencja\\\"\",\n \"country\": \"PL\"\n },\n - \ \"image\": {\n \"bannerExternalUrl\": \"https://yt3.googleusercontent.com/NX6mujZlAkFTelkSXOEE_j7CzerpretG_nDE6TDW7BQl2fsYoAEz6tWdMOb2aiONsLv2tjGExQ\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:37 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"id\": \"youtube:v3\",\n \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"parameters\": {\n \"alt\": {\n \"default\": \"json\",\n - \ \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"Responses - with Content-Type of application/json\",\n \"Media download with context-dependent - Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n - \ ],\n \"location\": \"query\",\n \"description\": \"Data format - for response.\"\n },\n \"upload_protocol\": {\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"oauth_token\": {\n - \ \"description\": \"OAuth 2.0 token for the current user.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"prettyPrint\": {\n \"description\": - \"Returns response with indentations and line breaks.\",\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"default\": \"true\"\n - \ },\n \"access_token\": {\n \"location\": \"query\",\n \"description\": - \"OAuth access token.\",\n \"type\": \"string\"\n },\n \"fields\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"Selector specifying which fields to include in a partial response.\"\n },\n - \ \"key\": {\n \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"uploadType\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Legacy upload protocol - for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n },\n \"$.xgafv\": - {\n \"location\": \"query\",\n \"enumDescriptions\": [\n \"v1 - error format\",\n \"v2 error format\"\n ],\n \"enum\": [\n - \ \"1\",\n \"2\"\n ],\n \"description\": \"V1 error - format.\",\n \"type\": \"string\"\n },\n \"callback\": {\n \"description\": - \"JSONP\",\n \"location\": \"query\",\n \"type\": \"string\"\n },\n - \ \"quotaUser\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"canonicalName\": \"YouTube\",\n - \ \"fullyEncodeReservedExpansion\": true,\n \"batchPath\": \"batch\",\n \"ownerDomain\": - \"google.com\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"ownerName\": \"Google\",\n \"version\": \"v3\",\n \"auth\": {\n \"oauth2\": - {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n }\n - \ }\n }\n },\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"schemas\": {\n \"AbuseType\": {\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"AbuseType\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"properties\": {\n \"impressionUrl\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\",\n \"type\": - \"array\"\n },\n \"clickTrackingUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user clicked through - on this promoted item.\",\n \"type\": \"string\"\n },\n \"descriptionText\": - {\n \"type\": \"string\",\n \"description\": \"The text - description to accompany the promoted item.\"\n },\n \"ctaType\": - {\n \"type\": \"string\",\n \"description\": \"The type - of call-to-action, a message to the user indicating action that can be taken.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ]\n },\n \"destinationUrl\": {\n \"description\": - \"The URL the client should direct the user to, if the user chooses to visit - the advertiser's website.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the promoted video.\"\n },\n - \ \"adTag\": {\n \"type\": \"string\",\n \"description\": - \"The URL the client should fetch to request a promoted item.\"\n },\n - \ \"creativeViewUrl\": {\n \"type\": \"string\",\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\"\n },\n \"customCtaButtonText\": {\n \"type\": - \"string\",\n \"description\": \"The custom call-to-action button - text. If specified, it will override the default button text for the cta_type.\"\n - \ },\n \"forecastingUrl\": {\n \"description\": \"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.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Details about a resource which is being promoted.\",\n - \ \"id\": \"ActivityContentDetailsPromotedItem\"\n },\n \"MembershipsLevelSnippet\": - {\n \"id\": \"MembershipsLevelSnippet\",\n \"properties\": {\n \"levelDetails\": - {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details - about the pricing level.\"\n },\n \"creatorChannelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The id of the - channel that's offering channel memberships.\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoSnippet\": {\n \"id\": \"VideoSnippet\",\n - \ \"properties\": {\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the video was uploaded.\"\n },\n \"localized\": - {\n \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\",\n \"$ref\": \"VideoLocalization\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The video's - title. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The video's description. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"channelTitle\": {\n \"description\": \"Channel - title for the channel that the video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the videos's default snippet.\",\n \"type\": \"string\"\n - \ },\n \"liveBroadcastContent\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n },\n \"tags\": {\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of keyword tags associated - with the video. Tags may contain spaces.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - video category associated with the video.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that the video was uploaded to.\",\n \"type\": \"string\"\n - \ },\n \"defaultAudioLanguage\": {\n \"description\": - \"The default_audio_language property specifies the language spoken in the - video's default audio track.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Basic details about a video, including - title, description, uploader, thumbnails and category.\",\n \"type\": - \"object\"\n },\n \"ActivitySnippet\": {\n \"properties\": {\n - \ \"description\": {\n \"description\": \"The description of - the resource primarily associated with the activity. @mutable youtube.activities.insert\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel associated with - the activity.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"groupId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The title of the resource primarily associated - with the activity.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel responsible - for this activity\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the video was uploaded.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ],\n \"description\": \"The type of activity that the resource - describes.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"id\": - \"ActivitySnippet\",\n \"description\": \"Basic details about an activity, - including title, description, thumbnails, activity type and group. Next ID: - 12\",\n \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": - {\n \"properties\": {\n \"pollingIntervalMillis\": {\n \"description\": - \"The amount of time the client should wait before polling again.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"offlineAt\": {\n - \ \"description\": \"The date and time when the underlying stream - went offline.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatMessageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"type\": \"array\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageListResponse\"\n - \ },\n \"VideoCategory\": {\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video category.\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoCategory\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#videoCategory\\\".\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the video category, including its title.\",\n \"$ref\": - \"VideoCategorySnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"A *videoCategory* resource - identifies a category that has been or could be associated with uploaded videos.\",\n - \ \"id\": \"VideoCategory\"\n },\n \"CommentListResponse\": {\n - \ \"type\": \"object\",\n \"id\": \"CommentListResponse\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#commentListResponse\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of comments that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n }\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n }\n }\n },\n \"ThirdPartyLink\": - {\n \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\",\n \"properties\": {\n \"status\": {\n \"$ref\": - \"ThirdPartyLinkStatus\",\n \"description\": \"The status object - contains information about the status of the link.\"\n },\n \"snippet\": - {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"default\": \"youtube#thirdPartyLink\"\n },\n \"linkingToken\": - {\n \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ThirdPartyLink\",\n \"type\": - \"object\"\n },\n \"LiveChatMessageDeletedDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"LiveChatMessage\": {\n \"type\": \"object\",\n \"properties\": - {\n \"authorDetails\": {\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\",\n - \ \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessage\\\".\",\n \"default\": - \"youtube#liveChatMessage\"\n }\n },\n \"id\": \"LiveChatMessage\",\n - \ \"description\": \"A *liveChatMessage* resource represents a chat message - in a YouTube Live Chat.\"\n },\n \"PlaylistItem\": {\n \"id\": - \"PlaylistItem\",\n \"description\": \"A *playlistItem* resource identifies - another resource, such as a video, that is included in a playlist. In addition, - the playlistItem resource contains details about the included resource that - pertain specifically to how that resource is used in that playlist. YouTube - uses playlists to identify special collections of videos for a channel, such - as: - uploaded videos - favorite videos - positively rated (liked) videos - - watch history - watch later To be more specific, these lists are associated - with a channel, which is a collection of a person, group, or company's videos, - playlists, and other YouTube information. You can retrieve the playlist IDs - for each of these lists from the channel resource for a given channel. You - can then use the playlistItems.list method to retrieve any of those lists. - You can also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods. For example, if a user gives a positive - rating to a video, you would insert that video into the liked videos playlist - for that user's channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"contentDetails\": {\n \"description\": \"The contentDetails - object is included in the resource if the included item is a YouTube video. - The object contains additional information about the video.\",\n \"$ref\": - \"PlaylistItemContentDetails\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the playlist item's privacy status.\",\n \"$ref\": - \"PlaylistItemStatus\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#playlistItem\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItem\\\".\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the playlist item, such as its title and position in the playlist.\"\n }\n - \ }\n },\n \"ChannelContentDetails\": {\n \"properties\": {\n - \ \"relatedPlaylists\": {\n \"type\": \"object\",\n \"properties\": - {\n \"favorites\": {\n \"description\": \"The ID of - the playlist that contains the channel\\\"s favorite videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n },\n \"likes\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"uploads\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s uploaded videos. Use the - videos.insert method to upload new videos and the videos.delete method to - delete previously uploaded videos.\"\n },\n \"watchHistory\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"watchLater\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s watch later playlist. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n }\n }\n }\n - \ },\n \"description\": \"Details about the content of a channel.\",\n - \ \"type\": \"object\",\n \"id\": \"ChannelContentDetails\"\n },\n - \ \"ThirdPartyLinkSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"type\": {\n \"description\": \"Type of the link named - after the entities that are being linked.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\"\n },\n \"channelToStoreLink\": - {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\"\n }\n },\n \"description\": \"Basic information - about a third party account link, including its type and type-specific information.\",\n - \ \"id\": \"ThirdPartyLinkSnippet\"\n },\n \"VideoLocalization\": - {\n \"type\": \"object\",\n \"description\": \"Localized versions - of certain video properties (e.g. title).\",\n \"id\": \"VideoLocalization\",\n - \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Localized version of the video's description.\"\n - \ },\n \"title\": {\n \"description\": \"Localized version - of the video's title.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"SearchResult\": {\n \"id\": \"SearchResult\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\",\n \"$ref\": \"SearchResultSnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n \"default\": - \"youtube#searchResult\"\n },\n \"id\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The id object contains information - that can be used to uniquely identify the resource that matches the search - request.\"\n }\n },\n \"description\": \"A search result - contains information about a YouTube video, channel, or playlist that matches - the search parameters specified in an API request. While a search result points - to a uniquely identifiable resource, like a video, it does not have its own - persistent data.\"\n },\n \"SubscriptionContentDetails\": {\n \"properties\": - {\n \"newItemCount\": {\n \"type\": \"integer\",\n \"description\": - \"The number of new items in the subscription since its content was last read.\",\n - \ \"format\": \"uint32\"\n },\n \"totalItemCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The approximate - number of items that the subscription points to.\",\n \"type\": \"integer\"\n - \ },\n \"activityType\": {\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The type of activity - this subscription is for (only uploads, everything).\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Details about the content - to witch a subscription refers.\",\n \"id\": \"SubscriptionContentDetails\"\n - \ },\n \"LiveChatModeratorListResponse\": {\n \"id\": \"LiveChatModeratorListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveChatModeratorListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"description\": \"A list of moderators that match - the request criteria.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatSuperStickerDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatSuperStickerDetails\",\n \"properties\": {\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"Information about the Super Sticker.\",\n - \ \"$ref\": \"SuperStickerMetadata\"\n },\n \"tier\": - {\n \"type\": \"integer\",\n \"description\": \"The tier - in which the amount belongs. Lower amounts belong to lower tiers. The lowest - tier is 1.\",\n \"format\": \"uint32\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"PlaylistLocalization\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistLocalization\",\n \"description\": \"Playlist localization - setting\",\n \"properties\": {\n \"description\": {\n \"description\": - \"The localized strings for playlist's description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - localized strings for playlist's title.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"CdnSettings\": {\n \"type\": \"object\",\n - \ \"description\": \"Brief description of the live stream cdn settings.\",\n - \ \"id\": \"CdnSettings\",\n \"properties\": {\n \"ingestionInfo\": - {\n \"$ref\": \"IngestionInfo\",\n \"description\": \"The - ingestionInfo object contains information that YouTube provides that you need - to transmit your RTMP or HTTP stream to YouTube.\"\n },\n \"ingestionType\": - {\n \"enum\": [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"description\": \" The method - or protocol used to transmit the video stream.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"format\": - {\n \"description\": \"The format of the video stream that you are - sending to Youtube. \",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"frameRate\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The frame rate of the inbound video data.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ]\n },\n \"resolution\": {\n \"type\": \"string\",\n - \ \"description\": \"The resolution of the inbound video data.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ]\n }\n }\n },\n \"LiveChatModeratorSnippet\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\",\n - \ \"properties\": {\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the live chat this moderator can act - on.\"\n },\n \"moderatorDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the moderator.\"\n }\n }\n - \ },\n \"ActivityListResponse\": {\n \"id\": \"ActivityListResponse\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"default\": \"youtube#activityListResponse\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Activity\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ChannelConversionPings\": {\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"type\": \"object\",\n - \ \"id\": \"ChannelConversionPings\",\n \"properties\": {\n \"pings\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n },\n \"description\": \"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.\"\n }\n }\n },\n \"Thumbnail\": {\n \"description\": - \"A thumbnail is an image representing a YouTube resource.\",\n \"id\": - \"Thumbnail\",\n \"type\": \"object\",\n \"properties\": {\n \"url\": - {\n \"description\": \"The thumbnail image's URL.\",\n \"type\": - \"string\"\n },\n \"height\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"(Optional) - Height of the thumbnail image.\"\n },\n \"width\": {\n \"description\": - \"(Optional) Width of the thumbnail image.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n }\n }\n },\n \"InvideoPosition\": - {\n \"description\": \"Describes the spatial position of a visual widget - inside a video. It is a union of various position types, out of which only - will be set one.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"type\": {\n \"enum\": [\n \"corner\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Defines the - position type.\",\n \"enumDescriptions\": [\n \"\"\n ]\n - \ },\n \"cornerPosition\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"id\": - \"InvideoPosition\"\n },\n \"PlaylistStatus\": {\n \"properties\": - {\n \"privacyStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The playlist's privacy status.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ]\n }\n },\n \"id\": \"PlaylistStatus\",\n \"type\": - \"object\"\n },\n \"ChannelConversionPing\": {\n \"id\": \"ChannelConversionPing\",\n - \ \"properties\": {\n \"context\": {\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ],\n \"type\": - \"string\",\n \"description\": \"Defines the context of the ping.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"conversionUrl\": {\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"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.\"\n },\n - \ \"Video\": {\n \"id\": \"Video\",\n \"properties\": {\n \"recordingDetails\": - {\n \"$ref\": \"VideoRecordingDetails\",\n \"description\": - \"The recordingDetails object encapsulates information about the location, - date and address where the video was recorded.\"\n },\n \"player\": - {\n \"description\": \"The player object contains information that - you would use to play the video in an embedded player.\",\n \"$ref\": - \"VideoPlayer\"\n },\n \"topicDetails\": {\n \"$ref\": - \"VideoTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the video.\"\n - \ },\n \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n - \ \"description\": \"Age restriction details related to a video. This - data can only be retrieved by the video owner.\"\n },\n \"localizations\": - {\n \"description\": \"The localizations object contains localized - versions of the basic details about the video, such as its title and description.\",\n - \ \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"type\": \"object\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the video, such as its title, description, and category.\",\n \"$ref\": - \"VideoSnippet\"\n },\n \"fileDetails\": {\n \"description\": - \"The fileDetails object encapsulates information about the video file that - was uploaded to YouTube, including the file's resolution, duration, audio - and video codecs, stream bitrates, and more. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the video.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n }\n },\n \"projectDetails\": {\n \"$ref\": - \"VideoProjectDetails\",\n \"description\": \"The projectDetails - object contains information about the project specific video metadata. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#video\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#video\\\".\",\n \"type\": \"string\"\n - \ },\n \"suggestions\": {\n \"$ref\": \"VideoSuggestions\",\n - \ \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\"\n - \ },\n \"statistics\": {\n \"$ref\": \"VideoStatistics\",\n - \ \"description\": \"The statistics object contains statistics about - the video.\"\n },\n \"liveStreamingDetails\": {\n \"$ref\": - \"VideoLiveStreamingDetails\",\n \"description\": \"The liveStreamingDetails - object contains metadata about a live video broadcast. The object will only - be present in a video resource if the video is an upcoming, live, or completed - live broadcast.\"\n },\n \"processingDetails\": {\n \"$ref\": - \"VideoProcessingDetails\",\n \"description\": \"The processingDetails - object encapsulates information about YouTube's progress in processing the - uploaded video file. The properties in the object identify the current processing - status and an estimate of the time remaining until YouTube finishes processing - the video. This part also indicates whether different types of data or content, - such as file details or thumbnail images, are available for the video. The - processingProgress object is designed to be polled so that the video uploaded - can track the progress that YouTube has made in processing the uploaded video - file. This data can only be retrieved by the video owner.\"\n },\n - \ \"status\": {\n \"$ref\": \"VideoStatus\",\n \"description\": - \"The status object contains information about the video's uploading, processing, - and privacy statuses.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information about the video content, including the length - of the video and its aspect ratio.\",\n \"$ref\": \"VideoContentDetails\"\n - \ },\n \"monetizationDetails\": {\n \"$ref\": \"VideoMonetizationDetails\",\n - \ \"description\": \"The monetizationDetails object encapsulates information - about the monetization status of the video.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A *video* resource represents a YouTube - video.\"\n },\n \"VideoProcessingDetailsProcessingProgress\": {\n \"type\": - \"object\",\n \"description\": \"Video processing progress and completion - time estimate.\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"properties\": {\n \"partsProcessed\": {\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"partsTotal\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"An estimate of the total number - of parts that need to be processed for the video. The number may be updated - with more precise estimates while YouTube processes the video.\"\n },\n - \ \"timeLeftMs\": {\n \"type\": \"string\",\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\",\n \"format\": \"uint64\"\n }\n - \ }\n },\n \"AccessPolicy\": {\n \"description\": \"Rights - management policy for YouTube resources.\",\n \"properties\": {\n \"allowed\": - {\n \"description\": \"The value of allowed indicates whether the - access to the policy is allowed or denied by default.\",\n \"type\": - \"boolean\"\n },\n \"exception\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"AccessPolicy\"\n },\n \"Channel\": {\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#channel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"type\": \"string\"\n },\n \"statistics\": {\n \"$ref\": - \"ChannelStatistics\",\n \"description\": \"The statistics object - encapsulates statistics for the channel.\"\n },\n \"localizations\": - {\n \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\"\n },\n \"status\": - {\n \"$ref\": \"ChannelStatus\",\n \"description\": \"The - status object encapsulates information about the privacy status of the channel.\"\n - \ },\n \"contentOwnerDetails\": {\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"topicDetails\": {\n \"description\": \"The - topicDetails object encapsulates information about Freebase topics associated - with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"ChannelSnippet\",\n \"description\": \"The snippet object contains - basic details about the channel, such as its title, description, and thumbnail - images.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ChannelContentDetails\",\n \"description\": \"The contentDetails - object encapsulates information about the channel's content.\"\n },\n - \ \"conversionPings\": {\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n },\n - \ \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n - \ \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel.\",\n \"type\": \"string\"\n - \ },\n \"brandingSettings\": {\n \"$ref\": \"ChannelBrandingSettings\",\n - \ \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\"\n }\n },\n \"description\": - \"A *channel* resource contains information about a YouTube channel.\",\n - \ \"id\": \"Channel\",\n \"type\": \"object\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n - \ \"description\": \"The id of the author's YouTube channel, if any.\"\n - \ },\n \"VideoSuggestionsTagSuggestion\": {\n \"properties\": {\n - \ \"categoryRestricts\": {\n \"description\": \"A set of video - categories for which the tag is relevant. You can use this information to - display appropriate tag suggestions based on the video category that the video - uploader associates with the video. By default, tag suggestions are relevant - for all categories if there are no restricts defined for the keyword.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"tag\": {\n \"description\": - \"The keyword tag suggested for the video.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A single tag suggestion with - it's relevance information.\",\n \"id\": \"VideoSuggestionsTagSuggestion\",\n - \ \"type\": \"object\"\n },\n \"I18nLanguageSnippet\": {\n \"properties\": - {\n \"hl\": {\n \"type\": \"string\",\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\"\n },\n - \ \"name\": {\n \"description\": \"The human-readable name - of the language in the language itself.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Basic details about an i18n - language, such as language code and human-readable name.\",\n \"id\": - \"I18nLanguageSnippet\",\n \"type\": \"object\"\n },\n \"I18nLanguage\": - {\n \"type\": \"object\",\n \"description\": \"An *i18nLanguage* - resource identifies a UI language currently supported by YouTube.\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#i18nLanguage\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"I18nLanguageSnippet\",\n \"description\": \"The snippet object - contains basic details about the i18n language, such as language code and - human-readable name.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n language.\"\n }\n },\n \"id\": \"I18nLanguage\"\n - \ },\n \"ThumbnailSetResponse\": {\n \"id\": \"ThumbnailSetResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"description\": \"A list of thumbnails.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n - \ }\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thumbnailSetResponse\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelSection\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the channel section, such as its type, style and title.\",\n - \ \"$ref\": \"ChannelSectionSnippet\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#channelSection\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSection\\\".\"\n },\n \"targeting\": - {\n \"description\": \"The targeting object contains basic targeting - settings about the channel section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n - \ },\n \"localizations\": {\n \"type\": \"object\",\n - \ \"description\": \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n }\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelSection\"\n },\n \"ChannelSectionLocalization\": {\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel section's title.\"\n }\n },\n - \ \"description\": \"ChannelSection localization setting\",\n \"id\": - \"ChannelSectionLocalization\",\n \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"properties\": {\n \"rotation\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"none\",\n \"clockwise\",\n \"upsideDown\",\n - \ \"counterClockwise\",\n \"other\"\n ],\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\"\n },\n \"heightPixels\": {\n \"description\": - \"The encoded video content's height in pixels.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"bitrateBps\": {\n - \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The video stream's bitrate, in bits per second.\"\n },\n \"codec\": - {\n \"description\": \"The video codec that the stream uses.\",\n - \ \"type\": \"string\"\n },\n \"widthPixels\": {\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"aspectRatio\": - {\n \"format\": \"double\",\n \"type\": \"number\",\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\"\n },\n \"frameRateFps\": - {\n \"format\": \"double\",\n \"description\": \"The video - stream's frame rate, in frames per second.\",\n \"type\": \"number\"\n - \ },\n \"vendor\": {\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Information about a video stream.\",\n \"type\": \"object\",\n \"id\": - \"VideoFileDetailsVideoStream\"\n },\n \"ChannelSnippet\": {\n \"id\": - \"ChannelSnippet\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"localized\": {\n \"description\": \"Localized title and - description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"title\": {\n \"description\": \"The channel's - title.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The description of the channel.\",\n \"type\": - \"string\"\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n },\n - \ \"customUrl\": {\n \"type\": \"string\",\n \"description\": - \"The custom url of the channel.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel's default title - and description.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the channel was created.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about a channel, including title, description and thumbnails.\"\n - \ },\n \"VideoAbuseReportReasonSnippet\": {\n \"properties\": {\n - \ \"secondaryReasons\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"description\": \"The secondary reasons associated with this reason, - if any are available. (There might be 0 or more.)\"\n },\n \"label\": - {\n \"type\": \"string\",\n \"description\": \"The localized - label belonging to this abuse report reason.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about a video category, - such as its localized title.\",\n \"id\": \"VideoAbuseReportReasonSnippet\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"type\": \"object\",\n - \ \"description\": \"Information that identifies the recommended resource.\",\n - \ \"id\": \"ActivityContentDetailsRecommendation\",\n \"properties\": - {\n \"seedResourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The seedResourceId object contains information about the resource that caused - the recommendation.\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the recommended resource.\"\n },\n \"reason\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The reason that the resource is recommended to - the user.\"\n }\n }\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"VideoListResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#videoListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Video\"\n }\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"VideoListResponse\",\n \"type\": \"object\"\n },\n - \ \"MonitorStreamInfo\": {\n \"id\": \"MonitorStreamInfo\",\n \"description\": - \"Settings and Info of the monitor stream\",\n \"properties\": {\n \"embedHtml\": - {\n \"description\": \"HTML code that embeds a player that plays - the monitor stream.\",\n \"type\": \"string\"\n },\n \"enableMonitorStream\": - {\n \"type\": \"boolean\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"This value determines whether the monitor stream - is enabled for the broadcast. If the monitor stream is enabled, then YouTube - will broadcast the event content on a special stream intended only for the - broadcaster's consumption. The broadcaster can use the stream to review the - event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\"\n },\n \"broadcastStreamDelayMs\": - {\n \"description\": \"If you have set the enableMonitorStream property - to true, then this property determines the length of the live broadcast delay.\",\n - \ \"format\": \"uint32\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ThirdPartyLinkStatus\": {\n \"type\": \"object\",\n \"id\": - \"ThirdPartyLinkStatus\",\n \"description\": \"The third-party link status - object contains information about the status of the link.\",\n \"properties\": - {\n \"linkStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ]\n }\n - \ }\n },\n \"Entity\": {\n \"properties\": {\n \"id\": - {\n \"type\": \"string\"\n },\n \"typeId\": {\n \"type\": - \"string\"\n },\n \"url\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"Entity\",\n \"type\": \"object\"\n - \ },\n \"VideoStatistics\": {\n \"properties\": {\n \"viewCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of times the video has been viewed.\"\n },\n \"favoriteCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\"\n - \ },\n \"dislikeCount\": {\n \"description\": \"The - number of users who have indicated that they disliked the video by giving - it a negative rating.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"likeCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of users who have indicated that they - liked the video by giving it a positive rating.\",\n \"type\": \"string\"\n - \ },\n \"commentCount\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The number of - comments for the video.\"\n }\n },\n \"description\": \"Statistics - about the video, such as the number of times the video was viewed or liked.\",\n - \ \"id\": \"VideoStatistics\",\n \"type\": \"object\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatSuperChatDetails\",\n - \ \"properties\": {\n \"amountMicros\": {\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made.\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the user to this Super Chat event.\"\n },\n - \ \"tier\": {\n \"description\": \"The tier in which the amount - belongs. Lower amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n }\n }\n },\n - \ \"SuperStickerMetadata\": {\n \"type\": \"object\",\n \"properties\": - {\n \"altTextLanguage\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the localization language in which the alt text is returned.\"\n - \ },\n \"altText\": {\n \"description\": \"Internationalized - alt text that describes the sticker image and any animation associated with - it.\",\n \"type\": \"string\"\n },\n \"stickerId\": - {\n \"type\": \"string\",\n \"description\": \"Unique identifier - of the Super Sticker. This is a shorter form of the alt_text that includes - pack name and a recognizable characteristic of the sticker.\"\n }\n - \ },\n \"id\": \"SuperStickerMetadata\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"description\": \"Information about a new playlist item.\",\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"properties\": - {\n \"playlistId\": {\n \"description\": \"The value that - YouTube uses to uniquely identify the playlist.\",\n \"type\": \"string\"\n - \ },\n \"playlistItemId\": {\n \"description\": \"ID - of the item within the playlist.\",\n \"type\": \"string\"\n },\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\"\n }\n }\n },\n \"VideoLiveStreamingDetails\": - {\n \"type\": \"object\",\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"properties\": {\n \"activeLiveChatId\": {\n \"description\": - \"The ID of the currently active live chat attached to this video. This field - is filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\",\n \"type\": \"string\"\n },\n \"concurrentViewers\": - {\n \"description\": \"The number of viewers currently watching the - broadcast. The property and its value will be present if the broadcast has - current viewers and the broadcast owner has not hidden the viewcount for the - video. Note that YouTube stops tracking the number of concurrent viewers for - a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"scheduledStartTime\": {\n \"description\": - \"The time that the broadcast is scheduled to begin.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"actualEndTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - time that the broadcast actually ended. This value will not be available until - the broadcast is over.\",\n \"type\": \"string\"\n },\n \"scheduledEndTime\": - {\n \"type\": \"string\",\n \"description\": \"The time - that the broadcast is scheduled to end. If the value is empty or the property - is not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"format\": \"date-time\"\n },\n \"actualStartTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - time that the broadcast actually started. This value will not be available - until the broadcast begins.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Details about the live streaming metadata.\"\n - \ },\n \"SubscriptionSnippet\": {\n \"properties\": {\n \"title\": - {\n \"description\": \"The subscription's title.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information about the channel that the user subscribed - to.\"\n },\n \"description\": {\n \"description\": - \"The subscription's details.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the subscriber's channel.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the subscription was created.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the subscription belongs to.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n }\n },\n - \ \"id\": \"SubscriptionSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about a subscription, including title, description and thumbnails - of the subscribed item.\"\n },\n \"ActivityContentDetails\": {\n \"id\": - \"ActivityContentDetails\",\n \"properties\": {\n \"playlistItem\": - {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"The playlistItem object contains information about a new playlist item. - This property is only present if the snippet.type is playlistItem.\"\n },\n - \ \"recommendation\": {\n \"description\": \"The recommendation - object contains information about a recommended resource. This property is - only present if the snippet.type is recommendation.\",\n \"$ref\": - \"ActivityContentDetailsRecommendation\"\n },\n \"subscription\": - {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n \"description\": - \"The subscription object contains information about a channel that a user - subscribed to. This property is only present if the snippet.type is subscription.\"\n - \ },\n \"channelItem\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsChannelItem\"\n },\n \"favorite\": {\n - \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"social\": {\n \"$ref\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"The social object contains details about a social - network post. This property is only present if the snippet.type is social.\"\n - \ },\n \"promotedItem\": {\n \"description\": \"The - promotedItem object contains details about a resource which is being promoted. - This property is only present if the snippet.type is promotedItem.\",\n \"$ref\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"upload\": {\n - \ \"$ref\": \"ActivityContentDetailsUpload\",\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\"\n },\n \"bulletin\": - {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n \"description\": - \"The bulletin object contains details about a channel bulletin post. This - object is only present if the snippet.type is bulletin.\"\n },\n \"comment\": - {\n \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\",\n \"$ref\": \"ActivityContentDetailsComment\"\n },\n - \ \"like\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsLike\"\n }\n },\n \"description\": - \"Details about the content of an activity: the video that was shared, the - channel that was subscribed to, etc.\",\n \"type\": \"object\"\n },\n - \ \"ChannelSectionSnippet\": {\n \"properties\": {\n \"style\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The style of - the channel section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"type\": \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized title, read-only.\",\n \"$ref\": \"ChannelSectionLocalization\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The channel section's title for multiple_playlists and multiple_channels.\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the channel section's default - title and description.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"description\": \"The - type of the channel section.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"position\": {\n \"description\": - \"The position of the channel section in the channel.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n }\n },\n \"description\": - \"Basic details about a channel section, including title, style and position.\",\n - \ \"id\": \"ChannelSectionSnippet\",\n \"type\": \"object\"\n },\n - \ \"CommentThreadListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"description\": \"A list of comment threads that - match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#commentThreadListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"CommentThreadListResponse\"\n },\n - \ \"VideoAbuseReport\": {\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n },\n \"secondaryReasonId\": - {\n \"description\": \"The specific, or secondary, reason that this - content is abusive (if available). The value is an abuse report reason ID - that is a valid secondary reason for the primary reason.\",\n \"type\": - \"string\"\n },\n \"language\": {\n \"description\": - \"The language that the content was viewed in.\",\n \"type\": \"string\"\n - \ },\n \"comments\": {\n \"type\": \"string\",\n \"description\": - \"Additional comments regarding the abuse report.\"\n },\n \"reasonId\": - {\n \"type\": \"string\",\n \"description\": \"The high-level, - or primary, reason that the content is abusive. The value is an abuse report - reason ID.\"\n }\n },\n \"id\": \"VideoAbuseReport\",\n \"type\": - \"object\"\n },\n \"SearchResultSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"SearchResultSnippet\",\n \"description\": \"Basic details - about a search result, including title, description and thumbnails of the - item referenced by the search result.\",\n \"properties\": {\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the channel that published the resource that the search result identifies.\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The creation date and time of the resource that - the search result identifies.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"description\": \"The title of the search - result.\",\n \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\",\n \"description\": \"It indicates if the resource (video - or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" - if there is not any upcoming/active live broadcasts.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ]\n },\n \"description\": {\n \"description\": - \"A description of the search result.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"TestItemTestItemSnippet\": {\n \"properties\": - {},\n \"id\": \"TestItemTestItemSnippet\",\n \"type\": \"object\"\n - \ },\n \"Cuepoint\": {\n \"type\": \"object\",\n \"properties\": - {\n \"cueType\": {\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"insertionOffsetTimeMs\": {\n \"format\": \"int64\",\n - \ \"description\": \"The time when the cuepoint should be inserted - by offset to the broadcast actual start time.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The identifier for cuepoint resource.\"\n },\n \"durationSecs\": - {\n \"description\": \"The duration of this cuepoint.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"walltimeMs\": - {\n \"description\": \"The wall clock time at which the cuepoint - should be inserted. Only one of insertion_offset_time_ms and walltime_ms may - be set at a time.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n }\n },\n \"description\": \"Note that there - may be a 5-second end-point resolution issue. For instance, if a cuepoint - comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, - depending. This is an artifact of HLS.\",\n \"id\": \"Cuepoint\"\n },\n - \ \"PlaylistItemStatus\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistItemStatus\",\n \"description\": \"Information about the playlist - item's privacy status.\",\n \"properties\": {\n \"privacyStatus\": - {\n \"description\": \"This resource's privacy status.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ }\n },\n \"LocalizedString\": {\n \"id\": \"LocalizedString\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"language\": - {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelSectionTargeting\": {\n - \ \"properties\": {\n \"languages\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"description\": - \"The language the channel section is targeting.\",\n \"type\": \"array\"\n - \ },\n \"regions\": {\n \"description\": \"The region - the channel section is targeting.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"countries\": - {\n \"type\": \"array\",\n \"description\": \"The country - the channel section is targeting.\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"description\": \"ChannelSection - targeting setting.\",\n \"id\": \"ChannelSectionTargeting\",\n \"type\": - \"object\"\n },\n \"WatchSettings\": {\n \"id\": \"WatchSettings\",\n - \ \"description\": \"Branding properties for the watch. All deprecated.\",\n - \ \"properties\": {\n \"featuredPlaylistId\": {\n \"type\": - \"string\",\n \"description\": \"An ID that uniquely identifies a - playlist that displays next to the video player.\"\n },\n \"textColor\": - {\n \"type\": \"string\",\n \"description\": \"The background - color for the video watch page's branded area.\"\n },\n \"backgroundColor\": - {\n \"description\": \"The text color for the video watch page's - branded area.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"LanguageTag\": {\n \"id\": \"LanguageTag\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"GeoPoint\": - {\n \"type\": \"object\",\n \"description\": \"Geographical coordinates - of a point, in WGS84.\",\n \"properties\": {\n \"longitude\": - {\n \"format\": \"double\",\n \"type\": \"number\",\n \"description\": - \"Longitude in degrees.\"\n },\n \"latitude\": {\n \"description\": - \"Latitude in degrees.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n },\n \"altitude\": {\n \"type\": \"number\",\n - \ \"description\": \"Altitude above the reference ellipsoid, in meters.\",\n - \ \"format\": \"double\"\n }\n },\n \"id\": \"GeoPoint\"\n - \ },\n \"LiveChatMembershipGiftingDetails\": {\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"giftMembershipsCount\": - {\n \"format\": \"int32\",\n \"type\": \"integer\",\n \"description\": - \"The number of gift memberships purchased by the user.\"\n },\n \"giftMembershipsLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the level of the gift memberships purchased by the user. The Level names - are defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n }\n }\n },\n \"VideoAgeGating\": - {\n \"id\": \"VideoAgeGating\",\n \"type\": \"object\",\n \"properties\": - {\n \"restricted\": {\n \"type\": \"boolean\",\n \"description\": - \"Age-restricted trailers. For redband trailers and adult-rated video-games. - Only users aged 18+ can view the content. The the field is true the content - is restricted to viewers aged 18+. Otherwise The field won't be present.\"\n - \ },\n \"alcoholContent\": {\n \"description\": \"Indicates - whether or not the video has alcoholic beverage content. Only users of legal - purchasing age in a particular country, as identified by ICAP, can view the - content.\",\n \"type\": \"boolean\"\n },\n \"videoGameRating\": - {\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"type\": - \"string\",\n \"description\": \"Video game rating, if any.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n }\n },\n - \ \"MembershipsDetails\": {\n \"properties\": {\n \"membershipsDuration\": - {\n \"$ref\": \"MembershipsDuration\",\n \"description\": - \"Data about memberships duration without taking into consideration pricing - levels.\"\n },\n \"membershipsDurationAtLevels\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ },\n \"description\": \"Data about memberships duration - on particular pricing levels.\"\n },\n \"accessibleLevels\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"Ids of all levels - that the user has access to. This includes the currently active level and - all other levels that are included because of a higher purchase.\"\n },\n - \ \"highestAccessibleLevelDisplayName\": {\n \"description\": - \"Display name for the highest level that the user has access to at the moment.\",\n - \ \"type\": \"string\"\n },\n \"highestAccessibleLevel\": - {\n \"type\": \"string\",\n \"description\": \"Id of the - highest level that the user has access to at the moment.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"MembershipsDetails\"\n },\n - \ \"VideoCategorySnippet\": {\n \"id\": \"VideoCategorySnippet\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\",\n \"properties\": {\n \"title\": {\n \"description\": - \"The video category's title.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n - \ \"description\": \"The YouTube channel that created the video category.\",\n - \ \"type\": \"string\"\n },\n \"assignable\": {\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcastStatistics\": - {\n \"id\": \"LiveBroadcastStatistics\",\n \"description\": \"Statistics - about the live broadcast. These represent a snapshot of the values at the - time of the request. Statistics are only returned for live broadcasts.\",\n - \ \"properties\": {\n \"concurrentViewers\": {\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"totalChatCount\": - {\n \"description\": \"The total number of live chat messages currently - on the broadcast. The property and its value will be present if the broadcast - is public, has the live chat feature enabled, and has at least one message. - Note that this field will not be filled after the broadcast ends. So this - property would not identify the number of chat messages for an archived video - of a completed live broadcast.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"Subscription\": - {\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\",\n \"$ref\": - \"SubscriptionSnippet\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n \"default\": - \"youtube#subscription\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains basic statistics about the subscription.\",\n \"$ref\": - \"SubscriptionContentDetails\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\",\n \"type\": - \"string\"\n },\n \"subscriberSnippet\": {\n \"description\": - \"The subscriberSnippet object contains basic details about the subscriber.\",\n - \ \"$ref\": \"SubscriptionSubscriberSnippet\"\n }\n },\n - \ \"id\": \"Subscription\",\n \"description\": \"A *subscription* - resource contains information about a YouTube user subscription. A subscription - notifies a user when new videos are added to a channel or when another user - takes one of several actions on YouTube, such as uploading a video, rating - a video, or commenting on a video.\",\n \"type\": \"object\"\n },\n - \ \"LiveChatNewSponsorDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"isUpgrade\": {\n \"description\": \"If the viewer just - had upgraded from a lower level. For viewers that were not members at the - time of purchase, this field is false.\",\n \"type\": \"boolean\"\n - \ },\n \"memberLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the Level that the viewer just had - joined. The Level names are defined by the YouTube channel offering the Membership. - In some situations this field isn't filled.\"\n }\n },\n \"id\": - \"LiveChatNewSponsorDetails\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsUpload\",\n - \ \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the uploaded video.\"\n }\n },\n \"description\": \"Information - about the uploaded video.\"\n },\n \"TestItem\": {\n \"properties\": - {\n \"featuredPart\": {\n \"type\": \"boolean\"\n },\n - \ \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"gaia\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n }\n },\n \"id\": \"TestItem\",\n \"type\": - \"object\"\n },\n \"LiveStreamListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#liveStreamListResponse\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"description\": - \"A list of live streams that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n - \ }\n }\n },\n \"id\": \"LiveStreamListResponse\"\n - \ },\n \"LiveBroadcastListResponse\": {\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of broadcasts - that match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"default\": \"youtube#liveBroadcastListResponse\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ActivityContentDetailsLike\": {\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the rated resource.\",\n \"$ref\": \"ResourceId\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsLike\",\n \"description\": - \"Information about a resource that received a positive (like) rating.\",\n - \ \"type\": \"object\"\n },\n \"ThirdPartyLinkListResponse\": {\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ThirdPartyLinkListResponse\"\n },\n \"LiveChatBan\": {\n \"id\": - \"LiveChatBan\",\n \"description\": \"A `__liveChatBan__` resource represents - a ban for a YouTube live chat.\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the ban.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveChatBan\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the ban.\",\n \"$ref\": - \"LiveChatBanSnippet\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoPlayer\": {\n \"description\": - \"Player to be used for a video playback.\",\n \"id\": \"VideoPlayer\",\n - \ \"properties\": {\n \"embedWidth\": {\n \"description\": - \"The embed width\",\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"embedHeight\": {\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n },\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"PlaylistListResponse\": {\n \"properties\": {\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Playlist\"\n },\n \"description\": \"A list of playlists - that match the request criteria\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlistListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistListResponse\\\".\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"PlaylistListResponse\"\n },\n \"ChannelListResponse\": {\n \"id\": - \"ChannelListResponse\",\n \"properties\": {\n \"eventId\": {\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Channel\"\n },\n \"type\": \"array\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"SubscriptionListResponse\": - {\n \"id\": \"SubscriptionListResponse\",\n \"properties\": {\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Subscription\"\n },\n \"description\": \"A list of subscriptions - that match the request criteria.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"default\": \"youtube#subscriptionListResponse\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"description\": \"Information about a channel that a user subscribed - to.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"LiveChatMessageAuthorDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatMessageAuthorDetails\",\n \"properties\": - {\n \"isChatOwner\": {\n \"description\": \"Whether the author - is the owner of the live chat.\",\n \"type\": \"boolean\"\n },\n - \ \"isChatModerator\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is a moderator of the live chat.\"\n },\n \"channelUrl\": - {\n \"description\": \"The channel's URL.\",\n \"type\": - \"string\"\n },\n \"isVerified\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author's identity has been verified - by YouTube.\"\n },\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube channel ID.\"\n },\n \"isChatSponsor\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a sponsor - of the live chat.\"\n },\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The channel's display name.\"\n - \ }\n }\n },\n \"PlaylistItemListResponse\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"type\": \"string\",\n \"default\": - \"youtube#playlistItemListResponse\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"description\": \"A list of playlist - items that match the request criteria.\",\n \"type\": \"array\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n }\n },\n \"id\": \"PlaylistItemListResponse\",\n - \ \"type\": \"object\"\n },\n \"AbuseReport\": {\n \"properties\": - {\n \"subject\": {\n \"$ref\": \"Entity\"\n },\n \"description\": - {\n \"type\": \"string\"\n },\n \"relatedEntities\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n }\n },\n \"abuseTypes\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"AbuseType\"\n - \ }\n }\n },\n \"id\": \"AbuseReport\",\n \"type\": - \"object\"\n },\n \"VideoRating\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoRating\",\n \"description\": \"Basic details about - rating of a video.\",\n \"properties\": {\n \"rating\": {\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Rating of a video.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ]\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n }\n }\n },\n \"SearchListResponse\": {\n \"id\": - \"SearchListResponse\",\n \"properties\": {\n \"visitorId\": {\n - \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": - \"string\"\n },\n \"regionCode\": {\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"eventId\": {\n - \ \"type\": \"string\",\n \"description\": \"Serialized EventId - of the request which produced this response.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"kind\": {\n \"default\": - \"youtube#searchListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"SearchResult\"\n },\n \"description\": \"Pagination information - for token pagination.\",\n \"type\": \"array\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": {\n \"properties\": - {\n \"recordingStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"liveBroadcastRecordingStatusUnspecified\",\n \"notRecording\",\n - \ \"recording\",\n \"recorded\"\n ],\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ],\n \"description\": \"The broadcast's recording status.\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the broadcast is made for kids or not, - decided by YouTube instead of the creator. This field is read only.\"\n },\n - \ \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"liveBroadcastPriority\": - {\n \"type\": \"string\",\n \"description\": \"Priority - of the live broadcast event (internal state).\",\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"enum\": - [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ]\n },\n \"lifeCycleStatus\": - {\n \"enumDescriptions\": [\n \"No value or the value - is unknown.\",\n \"Incomplete settings, but otherwise valid\",\n - \ \"Complete settings\",\n \"Visible only to partner, - may need special UI treatment\",\n \"Viper is recording; this means - the \\\"clock\\\" is running\",\n \"The broadcast is finished.\",\n - \ \"This broadcast was removed by admin action\",\n \"Transition - into TESTING has been requested\",\n \"Transition into LIVE has - been requested\"\n ],\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The broadcast's - status. The status can be updated using the API's liveBroadcasts.transition - method.\"\n }\n },\n \"id\": \"LiveBroadcastStatus\",\n \"type\": - \"object\",\n \"description\": \"Live broadcast state.\"\n },\n \"ThumbnailDetails\": - {\n \"properties\": {\n \"maxres\": {\n \"description\": - \"The maximum resolution quality image for this resource.\",\n \"$ref\": - \"Thumbnail\"\n },\n \"high\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The high quality image for this resource.\"\n - \ },\n \"medium\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The medium quality image for this resource.\"\n },\n \"standard\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The standard - quality image for this resource.\"\n },\n \"default\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The default image for this resource.\"\n - \ }\n },\n \"id\": \"ThumbnailDetails\",\n \"description\": - \"Internal representation of thumbnails for a YouTube resource.\",\n \"type\": - \"object\"\n },\n \"LiveStreamHealthStatus\": {\n \"properties\": - {\n \"configurationIssues\": {\n \"description\": \"The configurations - issues on this stream\",\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"type\": \"array\"\n },\n \"lastUpdateTimeSeconds\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The last time this status was updated (in seconds)\"\n },\n \"status\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"good\",\n \"ok\",\n - \ \"bad\",\n \"noData\",\n \"revoked\"\n ],\n - \ \"description\": \"The status code of this stream\"\n }\n - \ },\n \"id\": \"LiveStreamHealthStatus\",\n \"type\": \"object\"\n - \ },\n \"LocalizedProperty\": {\n \"properties\": {\n \"localized\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n }\n },\n \"default\": {\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the default property.\",\n \"$ref\": \"LanguageTag\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LocalizedProperty\"\n - \ },\n \"LiveChatBanSnippet\": {\n \"type\": \"object\",\n \"id\": - \"LiveChatBanSnippet\",\n \"properties\": {\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"description\": - \"The type of ban.\",\n \"enumDescriptions\": [\n \"An - invalid ban type.\",\n \"A permanent ban.\",\n \"A temporary - ban.\"\n ]\n },\n \"banDurationSeconds\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - duration of a ban, only filled if the ban has type TEMPORARY.\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The chat this ban is pertinent to.\"\n }\n }\n },\n \"RelatedEntity\": - {\n \"type\": \"object\",\n \"properties\": {\n \"entity\": - {\n \"$ref\": \"Entity\"\n }\n },\n \"id\": \"RelatedEntity\"\n - \ },\n \"MemberListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#memberListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"A list of members - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Member\"\n },\n \"type\": \"array\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n - \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"MemberListResponse\"\n },\n \"VideoAbuseReportSecondaryReason\": {\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ },\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label for this abuse report secondary reason.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"PlaylistPlayer\": {\n \"id\": \"PlaylistPlayer\",\n \"type\": - \"object\",\n \"properties\": {\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that - embeds a player that will play the playlist.\"\n }\n }\n },\n - \ \"LevelDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The name that should be used when referring to this level.\"\n }\n - \ },\n \"id\": \"LevelDetails\"\n },\n \"VideoMonetizationDetails\": - {\n \"description\": \"Details about monetization of a YouTube Video.\",\n - \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The value of access indicates whether the video - can be monetized or not.\"\n }\n },\n \"id\": \"VideoMonetizationDetails\",\n - \ \"type\": \"object\"\n },\n \"PlaylistItemSnippet\": {\n \"id\": - \"PlaylistItemSnippet\",\n \"description\": \"Basic details about a playlist, - including title, description and thumbnails. Basic details of a YouTube Playlist - item provided by the author. Next ID: 15\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"playlistId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify thGe playlist that the playlist item is - in.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The item's title.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the item was added - to the playlist.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist item. 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.\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the playlist item belongs to.\"\n },\n \"resourceId\": {\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that is included in the playlist as the playlist item.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"$ref\": \"ResourceId\"\n },\n \"videoOwnerChannelId\": - {\n \"description\": \"Channel id for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The item's description.\",\n \"type\": - \"string\"\n },\n \"position\": {\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"videoOwnerChannelTitle\": {\n \"description\": - \"Channel title for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the user that added the item - to the playlist.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"VideoGetRatingResponse\": {\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of ratings that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"VideoRating\"\n }\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#videoGetRatingResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n }\n },\n - \ \"id\": \"VideoGetRatingResponse\",\n \"type\": \"object\"\n },\n - \ \"ActivityContentDetailsSocial\": {\n \"type\": \"object\",\n \"description\": - \"Details about a social network post.\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\",\n \"$ref\": - \"ResourceId\"\n },\n \"author\": {\n \"description\": - \"The author of the social network post.\",\n \"type\": \"string\"\n - \ },\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"An image of the post's author.\"\n },\n \"referenceUrl\": - {\n \"description\": \"The URL of the social network post.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"description\": \"The - name of the social network.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ActivityContentDetailsSocial\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n \"properties\": - {\n \"bannedUserDetails\": {\n \"description\": \"The details - of the user that was banned.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banDurationSeconds\": {\n \"type\": \"string\",\n - \ \"description\": \"The duration of the ban. This property is only - present if the banType is temporary.\",\n \"format\": \"uint64\"\n - \ },\n \"banType\": {\n \"description\": \"The type - of ban.\",\n \"type\": \"string\",\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ]\n }\n },\n \"type\": - \"object\"\n },\n \"ImageSettings\": {\n \"id\": \"ImageSettings\",\n - \ \"description\": \"Branding properties for images associated with the - channel.\",\n \"properties\": {\n \"bannerTvImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. TV size extra high - resolution (2120x1192).\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"bannerTabletImageUrl\": {\n \"description\": - \"Banner image. Tablet size (1707x283).\",\n \"type\": \"string\"\n - \ },\n \"bannerMobileImageUrl\": {\n \"description\": - \"Banner image. Mobile size (640x175).\",\n \"type\": \"string\"\n - \ },\n \"bannerMobileMediumHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size medium/high resolution (960x263).\",\n \"type\": - \"string\"\n },\n \"bannerImageUrl\": {\n \"description\": - \"Banner image. Desktop size (1060x175).\",\n \"type\": \"string\"\n - \ },\n \"bannerMobileLowImageUrl\": {\n \"description\": - \"Banner image. Mobile size low resolution (320x88).\",\n \"type\": - \"string\"\n },\n \"bannerTvMediumImageUrl\": {\n \"description\": - \"Banner image. TV size medium resolution (1280x720).\",\n \"type\": - \"string\"\n },\n \"largeBrandedBannerImageUrl\": {\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"watchIconImageUrl\": {\n \"type\": - \"string\"\n },\n \"smallBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 640px - by 70px banner image that appears below the video player in the default view - of the video watch page. The URL for the image that appears above the top-left - corner of the video player. This is a 25-pixel-high image with a flexible - width that cannot exceed 170 pixels.\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1280x360).\"\n },\n \"backgroundImageUrl\": - {\n \"description\": \"The URL for the background image shown on - the video watch page. The image should be 1200px by 615px, with a maximum - file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"smallBrandedBannerImageImapScript\": {\n \"description\": - \"The image map script for the small banner image.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTabletHdImageUrl\": {\n - \ \"description\": \"Banner image. Tablet size high resolution (2276x377).\",\n - \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"trackingImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\"\n },\n \"bannerTvLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size low resolution (854x480).\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelProfileDetails\": {\n \"id\": \"ChannelProfileDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"displayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's display name.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n },\n \"profileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channels's avatar URL.\"\n }\n - \ }\n },\n \"LiveChatModerator\": {\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n \"default\": - \"youtube#liveChatModerator\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the moderator.\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveChatModeratorSnippet\",\n \"description\": \"The snippet object - contains basic details about the moderator.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A *liveChatModerator* resource represents - a moderator for a YouTube live chat. A chat moderator has the ability to ban/unban - users from a chat, remove message, etc.\",\n \"id\": \"LiveChatModerator\"\n - \ },\n \"ChannelSectionContentDetails\": {\n \"properties\": {\n - \ \"playlists\": {\n \"description\": \"The playlist ids for - type single_playlist and multiple_playlists. For singlePlaylist, only one - playlistId is allowed.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"channels\": - {\n \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"description\": \"Details - about a channelsection, including playlists and channels.\",\n \"type\": - \"object\",\n \"id\": \"ChannelSectionContentDetails\"\n },\n \"ChannelBrandingSettings\": - {\n \"properties\": {\n \"watch\": {\n \"description\": - \"Branding properties for the watch page.\",\n \"$ref\": \"WatchSettings\"\n - \ },\n \"hints\": {\n \"description\": \"Additional - experimental branding properties.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n }\n },\n \"image\": - {\n \"description\": \"Branding properties for branding images.\",\n - \ \"$ref\": \"ImageSettings\"\n },\n \"channel\": {\n - \ \"$ref\": \"ChannelSettings\",\n \"description\": \"Branding - properties for the channel view.\"\n }\n },\n \"description\": - \"Branding properties of a YouTube channel.\",\n \"type\": \"object\",\n - \ \"id\": \"ChannelBrandingSettings\"\n },\n \"ChannelContentOwnerDetails\": - {\n \"id\": \"ChannelContentOwnerDetails\",\n \"description\": \"The - contentOwnerDetails object encapsulates channel data that is relevant for - YouTube Partners linked with the channel.\",\n \"properties\": {\n \"contentOwner\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the content owner linked to the channel.\"\n },\n \"timeLinked\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the channel was linked - to the content owner.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"MembershipsLevel\": {\n \"id\": \"MembershipsLevel\",\n - \ \"type\": \"object\",\n \"description\": \"A *membershipsLevel* - resource represents an offer made by YouTube creators for their fans. Users - can become members of the channel by joining one of the available levels. - They will provide recurring monetary support and receives special benefits.\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#membershipsLevel\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the memberships level.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"SuperChatEventListResponse\": {\n \"id\": - \"SuperChatEventListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#superChatEventListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of Super Chat purchases that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n }\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n }\n }\n },\n \"SuperChatEvent\": {\n \"type\": - \"object\",\n \"id\": \"SuperChatEvent\",\n \"description\": \"A - `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#superChatEvent\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n - \ },\n \"snippet\": {\n \"description\": \"The `snippet` - object contains basic details about the Super Chat event.\",\n \"$ref\": - \"SuperChatEventSnippet\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the Super Chat event.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ }\n },\n \"CaptionListResponse\": {\n \"properties\": {\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\"\n },\n \"items\": - {\n \"description\": \"A list of captions that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"Caption\"\n - \ },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"CaptionListResponse\"\n - \ },\n \"MembershipsDuration\": {\n \"id\": \"MembershipsDuration\",\n - \ \"properties\": {\n \"memberSince\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the user became a continuous - member across all levels.\"\n },\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"description\": \"The cumulative - time the user has been a member across all levels in complete months (the - time is rounded down to the nearest integer).\",\n \"format\": \"int32\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"PlaylistSnippet\": - {\n \"properties\": {\n \"description\": {\n \"description\": - \"The playlist's description.\",\n \"type\": \"string\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"The channel title of the channel that the video belongs to.\"\n },\n - \ \"thumbnailVideoId\": {\n \"type\": \"string\",\n \"description\": - \"Note: if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\"\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the playlist's default title and description.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"description\": \"The playlist's - title.\",\n \"type\": \"string\",\n \"annotations\": {\n - \ \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"A map of thumbnail images associated with the playlist. 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.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the playlist.\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the playlist was created.\"\n },\n \"localized\": - {\n \"$ref\": \"PlaylistLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"tags\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"Keyword tags - associated with the playlist.\"\n }\n },\n \"id\": \"PlaylistSnippet\",\n - \ \"description\": \"Basic details about a playlist, including title, - description and thumbnails.\",\n \"type\": \"object\"\n },\n \"MembershipsDurationAtLevel\": - {\n \"type\": \"object\",\n \"properties\": {\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member for the given level.\",\n \"type\": \"string\"\n },\n - \ \"memberTotalDurationMonths\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"description\": \"The cumulative - time the user has been a member for the given level in complete months (the - time is rounded down to the nearest integer).\"\n },\n \"level\": - {\n \"type\": \"string\",\n \"description\": \"Pricing level - ID.\"\n }\n },\n \"id\": \"MembershipsDurationAtLevel\"\n - \ },\n \"VideoContentDetailsRegionRestriction\": {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"properties\": {\n \"blocked\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\",\n \"type\": - \"array\"\n },\n \"allowed\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of region codes - that identify countries where the video is viewable. If this property is present - and a country is not listed in its value, then the video is blocked from appearing - in that country. If this property is present and contains an empty list, the - video is blocked in all countries.\",\n \"type\": \"array\"\n }\n - \ },\n \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viever is a member. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"memberMonth\": {\n \"type\": \"integer\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"format\": \"uint32\"\n - \ },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the member to this Member - Milestone Chat. This field is empty for messages without a comment from the - member.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"CommentSnippet\": {\n - \ \"description\": \"Basic details about a comment, such as its author - and text.\",\n \"type\": \"object\",\n \"id\": \"CommentSnippet\",\n - \ \"properties\": {\n \"textOriginal\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comment refers to, if any.\",\n \"type\": - \"string\"\n },\n \"authorChannelUrl\": {\n \"type\": - \"string\",\n \"description\": \"Link to the author's YouTube channel, - if any.\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the comment was originally published.\"\n },\n \"viewerRating\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ]\n },\n \"textDisplay\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"authorDisplayName\": {\n \"description\": - \"The name of the user who posted the comment.\",\n \"type\": \"string\"\n - \ },\n \"likeCount\": {\n \"description\": \"The total - number of likes this comment has received.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"authorProfileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL for the avatar of the user - who posted the comment.\"\n },\n \"canRate\": {\n \"description\": - \"Whether the current viewer can rate this comment.\",\n \"type\": - \"boolean\"\n },\n \"updatedAt\": {\n \"description\": - \"The date and time when the comment was last updated.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"moderationStatus\": - {\n \"type\": \"string\",\n \"description\": \"The comment's - moderation status. Will not be set if the comments were requested through - the id filter.\",\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment is - unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ]\n },\n \"parentId\": {\n \"type\": \"string\",\n - \ \"description\": \"The unique id of the parent comment, only set - for replies.\"\n }\n }\n },\n \"ChannelBannerResource\": - {\n \"type\": \"object\",\n \"id\": \"ChannelBannerResource\",\n - \ \"description\": \"A channel banner returned as the response to a channel_banner.insert - call.\",\n \"properties\": {\n \"url\": {\n \"type\": - \"string\",\n \"description\": \"The URL of this banner image.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\"\n },\n \"etag\": - {\n \"type\": \"string\"\n }\n }\n },\n \"PlaylistContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistContentDetails\",\n - \ \"properties\": {\n \"itemCount\": {\n \"description\": - \"The number of videos in the playlist.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n }\n }\n },\n \"Playlist\": - {\n \"type\": \"object\",\n \"id\": \"Playlist\",\n \"description\": - \"A *playlist* resource represents a YouTube playlist. A playlist is a collection - of videos that can be viewed sequentially and shared with other users. A playlist - can contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"properties\": {\n \"status\": - {\n \"$ref\": \"PlaylistStatus\",\n \"description\": \"The - status object contains status information for the playlist.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistSnippet\",\n \"description\": \"The snippet object contains - basic details about the playlist, such as its title and description.\"\n },\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"PlaylistLocalization\"\n },\n \"type\": \"object\",\n - \ \"description\": \"Localizations for different languages\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"PlaylistContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - like video count.\"\n },\n \"player\": {\n \"$ref\": - \"PlaylistPlayer\",\n \"description\": \"The player object contains - information that you would use to play the playlist in an embedded player.\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the playlist.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#playlist\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n - \ }\n }\n },\n \"CaptionSnippet\": {\n \"id\": \"CaptionSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"isAutoSynced\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n - \ },\n \"status\": {\n \"type\": \"string\",\n \"description\": - \"The caption track's status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"serving\",\n \"syncing\",\n \"failed\"\n - \ ]\n },\n \"failureReason\": {\n \"enum\": - [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ],\n \"description\": \"The reason that YouTube failed - to process the caption track. This property is only present if the state property's - value is failed.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"isCC\": {\n \"description\": \"Indicates whether the track - contains closed captions for the deaf and hard of hearing. The default value - is false.\",\n \"type\": \"boolean\"\n },\n \"isLarge\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the caption track uses large text for the vision-impaired. The default - value is false.\"\n },\n \"isDraft\": {\n \"type\": - \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\"\n - \ },\n \"lastUpdated\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the caption track was - last updated.\",\n \"type\": \"string\"\n },\n \"audioTrackType\": - {\n \"type\": \"string\",\n \"enum\": [\n \"unknown\",\n - \ \"primary\",\n \"commentary\",\n \"descriptive\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of audio track associated with the caption track.\"\n },\n - \ \"name\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The name of the - caption track. The name is intended to be visible to the user as an option - during playback.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video associated with the caption track. @mutable youtube.captions.insert\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"trackKind\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The caption track's type.\",\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"type\": \"string\"\n },\n \"language\": - {\n \"description\": \"The language of the caption track. The property - value is a BCP-47 language tag.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"isEasyReader\": {\n - \ \"type\": \"boolean\",\n \"description\": \"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.\"\n }\n },\n - \ \"description\": \"Basic details about a caption track, such as its - language and name.\"\n },\n \"VideoFileDetails\": {\n \"id\": \"VideoFileDetails\",\n - \ \"properties\": {\n \"videoStreams\": {\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ }\n },\n \"fileSize\": {\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"bitrateBps\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded video file's combined - (video and audio) bitrate in bits per second.\",\n \"format\": \"uint64\"\n - \ },\n \"fileName\": {\n \"description\": \"The uploaded - file's name. This field is present whether a video file or another type of - file was uploaded.\",\n \"type\": \"string\"\n },\n \"creationTime\": - {\n \"description\": \"The date and time when the uploaded video - file was created. The value is specified in ISO 8601 format. Currently, the - following ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive - time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \",\n \"type\": \"string\"\n },\n \"audioStreams\": - {\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of audio streams contained in the uploaded video file. Each item in the - list contains detailed metadata about an audio stream.\"\n },\n \"container\": - {\n \"description\": \"The uploaded video file's container format.\",\n - \ \"type\": \"string\"\n },\n \"fileType\": {\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ],\n \"description\": \"The uploaded file's type as detected - by YouTube's video processing engine. Currently, YouTube only processes video - files, but this field is present whether a video file or another type of file - was uploaded.\",\n \"type\": \"string\"\n },\n \"durationMs\": - {\n \"type\": \"string\",\n \"description\": \"The length - of the uploaded video in milliseconds.\",\n \"format\": \"uint64\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Describes - original video file properties, including technical details about audio and - video streams, but also metadata information like content length, digitization - time, or geotagging information.\"\n },\n \"VideoStatus\": {\n \"description\": - \"Basic details about a video category, such as its localized title. Next - Id: 18\",\n \"id\": \"VideoStatus\",\n \"properties\": {\n \"embeddable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"license\": {\n \"type\": - \"string\",\n \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ]\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's privacy - status.\",\n \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"rejectionReason\": {\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\",\n - \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n },\n \"publishAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the video is scheduled to publish. It can be set only if the - privacy status of the video is private..\",\n \"format\": \"date-time\"\n - \ },\n \"uploadStatus\": {\n \"description\": \"The - status of the uploaded video.\",\n \"type\": \"string\",\n \"enum\": - [\n \"uploaded\",\n \"processed\",\n \"failed\",\n - \ \"rejected\",\n \"deleted\"\n ],\n \"enumDescriptions\": - [\n \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ]\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"failureReason\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"Unable - to convert video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ],\n \"description\": - \"This value explains why a video failed to upload. This property is only - present if the uploadStatus property indicates that the upload failed.\",\n - \ \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ]\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelSettings\": {\n \"id\": \"ChannelSettings\",\n - \ \"description\": \"Branding properties for the channel view.\",\n \"properties\": - {\n \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"moderateComments\": - {\n \"description\": \"Whether user-submitted comments left on the - channel page need to be approved by the channel owner to be publicly visible.\",\n - \ \"type\": \"boolean\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"unsubscribedTrailer\": {\n \"type\": \"string\",\n - \ \"description\": \"The trailer of the channel, for users that are - not subscribers.\"\n },\n \"defaultTab\": {\n \"description\": - \"Which content tab users should see when viewing the channel.\",\n \"type\": - \"string\"\n },\n \"profileColor\": {\n \"type\": \"string\",\n - \ \"description\": \"A prominent color that can be rendered on this - channel page.\"\n },\n \"showBrowseView\": {\n \"description\": - \"Whether the tab to browse the videos should be displayed.\",\n \"type\": - \"boolean\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"Specifies - the channel title.\",\n \"type\": \"string\"\n },\n \"featuredChannelsUrls\": - {\n \"description\": \"The list of featured channels.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"featuredChannelsTitle\": {\n \"description\": - \"Title for the featured channels tab.\",\n \"type\": \"string\"\n - \ },\n \"keywords\": {\n \"type\": \"string\",\n \"description\": - \"Lists keywords associated with the channel, comma-separated.\"\n },\n - \ \"description\": {\n \"description\": \"Specifies the channel - description.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoAbuseReportReasonListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The `visitorId` identifies the visitor.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"VideoAbuseReportReason\"\n },\n \"description\": - \"A list of valid abuse reasons that are used with `video.ReportAbuse`.\",\n - \ \"type\": \"array\"\n }\n },\n \"id\": \"VideoAbuseReportReasonListResponse\",\n - \ \"type\": \"object\"\n },\n \"VideoProjectDetails\": {\n \"type\": - \"object\",\n \"description\": \"DEPRECATED. b/157517979: This part was - never populated after it was added. However, it sees non-zero traffic because - there is generated client code in the wild that refers to it [1]. We keep - this field and do NOT remove it because otherwise V3 would return an error - when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"id\": \"VideoProjectDetails\",\n \"properties\": {}\n },\n - \ \"ChannelStatistics\": {\n \"properties\": {\n \"subscriberCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of subscribers that the channel has.\"\n },\n \"hiddenSubscriberCount\": - {\n \"description\": \"Whether or not the number of subscribers is - shown for this user.\",\n \"type\": \"boolean\"\n },\n \"viewCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of times the channel has been viewed.\"\n },\n \"videoCount\": - {\n \"description\": \"The number of videos uploaded to the channel.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"commentCount\": {\n \"description\": \"The number of comments - for the channel.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\",\n \"id\": \"ChannelStatistics\"\n },\n \"TokenPagination\": - {\n \"properties\": {},\n \"description\": \"Stub token pagination - template to suppress results.\",\n \"id\": \"TokenPagination\",\n \"type\": - \"object\"\n },\n \"ResourceId\": {\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"The type - of the API resource.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a video. This property - is only present if the resourceId.kind value is youtube#video.\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a channel. - This property is only present if the resourceId.kind value is youtube#channel.\",\n - \ \"type\": \"string\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ResourceId\",\n \"description\": - \"A resource id is a generic reference that points to another YouTube resource.\"\n - \ },\n \"VideoAbuseReportReason\": {\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the abuse report reason.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID of this abuse report reason.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReason\"\n - \ }\n },\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\",\n \"id\": - \"VideoAbuseReportReason\",\n \"type\": \"object\"\n },\n \"LiveChatMessageSnippet\": - {\n \"properties\": {\n \"messageRetractedDetails\": {\n \"$ref\": - \"LiveChatMessageRetractedDetails\"\n },\n \"authorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that authored this message, this field is not always filled. textMessageEvent - - the user that wrote the message fanFundingEvent - the user that funded the - broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n },\n \"displayMessage\": - {\n \"description\": \"Contains a string that can be displayed to - the user. If this field is not present the message is silent, at the moment - only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\",\n \"type\": - \"string\"\n },\n \"memberMilestoneChatDetails\": {\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\",\n \"description\": \"Details - about the Member Milestone Chat event, this is only set if the type is 'memberMilestoneChatEvent'.\"\n - \ },\n \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n - \ \"description\": \"Details about the New Member Announcement event, - this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" - is the new term for \\\"sponsor\\\".\"\n },\n \"superStickerDetails\": - {\n \"description\": \"Details about the Super Sticker event, this - is only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n - \ \"fanFundingEventDetails\": {\n \"description\": \"Details - about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"hasDisplayContent\": - {\n \"description\": \"Whether the message has display content that - should be displayed to users.\",\n \"type\": \"boolean\"\n },\n - \ \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\",\n \"type\": \"string\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"superChatDetails\": - {\n \"description\": \"Details about the Super Chat event, this is - only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n - \ },\n \"textMessageDetails\": {\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\",\n - \ \"$ref\": \"LiveChatTextMessageDetails\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the message was orignally - published.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"giftMembershipReceivedDetails\": {\n \"$ref\": - \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": \"Details - about the Gift Membership Received event, this is only set if the type is - 'giftMembershipReceivedEvent'.\"\n }\n },\n \"description\": - \"Next ID: 33\",\n \"type\": \"object\",\n \"id\": \"LiveChatMessageSnippet\"\n - \ },\n \"VideoContentDetails\": {\n \"type\": \"object\",\n \"id\": - \"VideoContentDetails\",\n \"description\": \"Details about the content - of a YouTube Video.\",\n \"properties\": {\n \"regionRestriction\": - {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\"\n },\n - \ \"hasCustomThumbnail\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\"\n },\n - \ \"countryRestriction\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\"\n },\n - \ \"definition\": {\n \"description\": \"The value of definition - indicates whether the video is available in high definition or only in standard - definition.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"sd\",\n \"hd\"\n ],\n \"enum\": - [\n \"sd\",\n \"hd\"\n ]\n },\n \"contentRating\": - {\n \"$ref\": \"ContentRating\",\n \"description\": \"Specifies - the ratings that the video received under various rating schemes.\"\n },\n - \ \"licensedContent\": {\n \"description\": \"The value of - is_license_content indicates whether the video is licensed content.\",\n \"type\": - \"boolean\"\n },\n \"duration\": {\n \"description\": - \"The length of the video. The tag value is an ISO 8601 duration in the format - PT#M#S, in which the letters PT indicate that the value specifies a period - of time, and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\",\n \"type\": - \"string\"\n },\n \"dimension\": {\n \"type\": \"string\",\n - \ \"description\": \"The value of dimension indicates whether the - video is available in 3D or in 2D.\"\n },\n \"caption\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"true\",\n - \ \"false\"\n ],\n \"description\": \"The value - of captions indicates whether the video has captions or not.\"\n },\n - \ \"projection\": {\n \"description\": \"Specifies the projection - format of the video.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ],\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveStream\": {\n \"id\": \"LiveStream\",\n \"description\": - \"A live stream describes a live ingestion point.\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveStream\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n - \ },\n \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"LiveStreamContentDetails\",\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the stream.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about live stream's status.\",\n - \ \"$ref\": \"LiveStreamStatus\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveStreamSnippet\",\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsChannelItem\": {\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that was added to - the channel.\",\n \"$ref\": \"ResourceId\"\n }\n },\n - \ \"description\": \"Details about a resource which was added to a channel.\",\n - \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"SuperChatEventSnippet\": {\n \"type\": \"object\",\n \"id\": - \"SuperChatEventSnippet\",\n \"properties\": {\n \"isSuperStickerEvent\": - {\n \"type\": \"boolean\",\n \"description\": \"True if - this event is a Super Sticker event.\"\n },\n \"displayString\": - {\n \"description\": \"A rendered string that displays the purchase - amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the - given language.\",\n \"type\": \"string\"\n },\n \"amountMicros\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\"\n },\n \"superStickerMetadata\": {\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"createdAt\": {\n \"description\": \"The date - and time when the event occurred.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"Channel id where the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"commentText\": {\n \"description\": \"The text - contents of the comment left by the user.\",\n \"type\": \"string\"\n - \ },\n \"messageType\": {\n \"description\": \"The tier - for the paid message, which is based on the amount of money spent to purchase - the message.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\"\n },\n \"supporterDetails\": - {\n \"description\": \"Details about the supporter.\",\n \"$ref\": - \"ChannelProfileDetails\"\n }\n }\n },\n \"MembershipsLevelListResponse\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsLevelListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"default\": \"youtube#membershipsLevelListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"MembershipsLevel\"\n },\n \"description\": \"A list of - pricing levels offered by a creator to the fans.\"\n }\n }\n },\n - \ \"LiveChatGiftMembershipReceivedDetails\": {\n \"properties\": {\n - \ \"associatedMembershipGiftingMessageId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\"\n },\n \"gifterChannelId\": - {\n \"description\": \"The ID of the user that made the membership - gifting purchase. This matches the `snippet.authorChannelId` of the associated - membership gifting message.\",\n \"type\": \"string\"\n },\n - \ \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the Level at which the viewer is a member. This matches the - `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated - membership gifting message. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"CommentThread\": {\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"CommentThreadSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#commentThread\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\",\n \"type\": - \"string\"\n },\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n - \ \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\"\n }\n - \ },\n \"id\": \"CommentThread\",\n \"type\": \"object\",\n - \ \"description\": \"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.\"\n },\n \"InvideoBranding\": - {\n \"properties\": {\n \"imageUrl\": {\n \"description\": - \"The url of the uploaded image. Only used in apiary to api communication.\",\n - \ \"type\": \"string\"\n },\n \"targetChannelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The channel - to which this branding links. If not present it defaults to the current channel.\"\n - \ },\n \"position\": {\n \"$ref\": \"InvideoPosition\",\n - \ \"description\": \"The spatial position within the video where the - branding watermark will be displayed.\"\n },\n \"timing\": {\n - \ \"description\": \"The temporal position within the video where - watermark will be displayed.\",\n \"$ref\": \"InvideoTiming\"\n },\n - \ \"imageBytes\": {\n \"type\": \"string\",\n \"format\": - \"byte\",\n \"description\": \"The bytes the uploaded image. Only - used in api to youtube communication.\"\n }\n },\n \"description\": - \"LINT.IfChange Describes an invideo branding.\",\n \"type\": \"object\",\n - \ \"id\": \"InvideoBranding\"\n },\n \"MemberSnippet\": {\n \"id\": - \"MemberSnippet\",\n \"properties\": {\n \"creatorChannelId\": - {\n \"description\": \"The id of the channel that's offering memberships.\",\n - \ \"type\": \"string\"\n },\n \"memberDetails\": {\n - \ \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the member.\"\n },\n \"membershipsDetails\": - {\n \"$ref\": \"MembershipsDetails\",\n \"description\": - \"Details about the user's membership.\"\n }\n },\n \"type\": - \"object\"\n },\n \"IngestionInfo\": {\n \"properties\": {\n \"streamName\": - {\n \"description\": \"The stream name that YouTube assigns to the - video stream.\",\n \"type\": \"string\"\n },\n \"ingestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The primary - ingestion URL that you should use to stream video to YouTube. You must stream - video to this URL. Depending on which application or tool you use to encode - your video stream, you may need to enter the stream URL and stream name separately - or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of backupIngestionAddress in order - to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": - \"string\"\n },\n \"rtmpsIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\"\n },\n \"backupIngestionAddress\": {\n \"description\": - \"The backup ingestion URL that you should use to stream video to YouTube. - You have the option of simultaneously streaming the content that you are sending - to the ingestionAddress to this URL.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"IngestionInfo\",\n - \ \"description\": \"Describes information necessary for ingesting an - RTMP, HTTP, or SRT stream.\"\n },\n \"ChannelToStoreLinkDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"merchantId\": - {\n \"type\": \"string\",\n \"description\": \"Google Merchant - Center id of the store.\",\n \"format\": \"uint64\"\n },\n - \ \"storeUrl\": {\n \"type\": \"string\",\n \"description\": - \"Landing page of the store.\"\n },\n \"storeName\": {\n \"description\": - \"Name of the store.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ChannelToStoreLinkDetails\",\n \"description\": \"Information - specific to a store on a merchandising platform linked to a YouTube channel.\"\n - \ },\n \"Caption\": {\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"CaptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the caption.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the caption track.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n }\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#caption\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#caption\\\".\"\n }\n },\n - \ \"description\": \"A *caption* resource represents a YouTube caption - track. A caption track is associated with exactly one YouTube video.\",\n - \ \"id\": \"Caption\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"description\": \"The amount of the fund.\",\n \"type\": - \"string\"\n },\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n },\n \"currency\": - {\n \"description\": \"The currency in which the fund was made.\",\n - \ \"type\": \"string\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n }\n }\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"channelId\": - {\n \"description\": \"The channel ID of the subscriber.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the subscriber.\"\n },\n - \ \"description\": {\n \"description\": \"The description of - the subscriber.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"Thumbnails - for this subscriber.\"\n }\n },\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"Basic details about a subscription's subscriber including - title, description, channel ID and thumbnails.\"\n },\n \"VideoRecordingDetails\": - {\n \"description\": \"Recording information associated with the video.\",\n - \ \"id\": \"VideoRecordingDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"location\": {\n \"description\": \"The geolocation information - associated with the video.\",\n \"$ref\": \"GeoPoint\"\n },\n - \ \"locationDescription\": {\n \"type\": \"string\",\n \"description\": - \"The text description of the location where the video was recorded.\"\n },\n - \ \"recordingDate\": {\n \"description\": \"The date and time - when the video was recorded.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n }\n }\n },\n \"ChannelAuditDetails\": {\n - \ \"type\": \"object\",\n \"description\": \"The auditDetails object - encapsulates channel data that is relevant for YouTube Partners during the - audit process.\",\n \"id\": \"ChannelAuditDetails\",\n \"properties\": - {\n \"communityGuidelinesGoodStanding\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether or not the channel respects the community - guidelines.\"\n },\n \"contentIdClaimsGoodStanding\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the channel has - any unresolved claims.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n }\n }\n },\n - \ \"ActivityContentDetailsComment\": {\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsComment\",\n \"description\": \"Information about - a resource that received a comment.\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with the - comment.\"\n }\n }\n },\n \"VideoCategoryListResponse\": - {\n \"id\": \"VideoCategoryListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of video categories that can be associated with YouTube videos. In this - map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\",\n \"items\": {\n \"$ref\": - \"VideoCategory\"\n },\n \"type\": \"array\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoCategoryListResponse\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoTopicDetails\": {\n \"properties\": - {\n \"relevantTopicIds\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\"\n - \ },\n \"topicIds\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n },\n \"topicCategories\": {\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\"\n }\n },\n \"id\": \"VideoTopicDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Freebase topic information - related to the video.\"\n },\n \"Activity\": {\n \"description\": - \"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.\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#activity\\\".\",\n \"default\": \"youtube#activity\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the activity, including the activity's - type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n },\n \"contentDetails\": {\n - \ \"$ref\": \"ActivityContentDetails\",\n \"description\": - \"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.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\"\n }\n - \ },\n \"id\": \"Activity\",\n \"type\": \"object\"\n },\n - \ \"VideoSuggestions\": {\n \"description\": \"Specifies suggestions - on how to improve video content, including encoding hints, tag suggestions, - and editor suggestions.\",\n \"type\": \"object\",\n \"id\": \"VideoSuggestions\",\n - \ \"properties\": {\n \"processingWarnings\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ]\n },\n - \ \"description\": \"A list of reasons why YouTube may have difficulty - transcoding the uploaded video or that might result in an erroneous transcoding. - These warnings are generated before YouTube actually processes the uploaded - video file. In addition, they identify issues that are unlikely to cause the - video processing to fail but that might cause problems such as sync issues, - video artifacts, or a missing audio track.\"\n },\n \"tagSuggestions\": - {\n \"description\": \"A list of keyword tags that could be added - to the video's metadata to increase the likelihood that users will locate - your video when searching or browsing on YouTube.\",\n \"items\": - {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n },\n - \ \"type\": \"array\"\n },\n \"processingHints\": {\n - \ \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ]\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of suggestions that may improve YouTube's ability to process the video.\"\n - \ },\n \"editorSuggestions\": {\n \"description\": \"A - list of video editing operations that might improve the video quality or playback - experience of the uploaded video.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"Picture brightness levels seem off and could be corrected.\",\n - \ \"The video appears shaky and could be stabilized.\",\n \"Margins - (mattes) detected around the picture could be cropped.\",\n \"The - audio track appears silent and could be swapped with a better quality one.\"\n - \ ],\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ],\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"processingErrors\": {\n \"type\": - \"array\",\n \"items\": {\n \"enumDescriptions\": [\n - \ \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\"\n },\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\"\n }\n }\n },\n \"ChannelTopicDetails\": {\n \"properties\": - {\n \"topicCategories\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\"\n },\n - \ \"topicIds\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of Freebase topic IDs associated with the channel. You can retrieve information - about each topic using the Freebase Topic API.\"\n }\n },\n \"id\": - \"ChannelTopicDetails\",\n \"description\": \"Freebase topic information - related to the channel.\",\n \"type\": \"object\"\n },\n \"CommentThreadSnippet\": - {\n \"properties\": {\n \"isPublic\": {\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\",\n \"type\": \"boolean\"\n },\n \"totalReplyCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total number of replies (not including the top level comment).\"\n },\n - \ \"canReply\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n - \ \"topLevelComment\": {\n \"$ref\": \"Comment\",\n \"description\": - \"The top level comment of this thread.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the video the comments refer to, if - any. No video_id implies a channel discussion comment.\"\n }\n },\n - \ \"description\": \"Basic details about a comment thread.\",\n \"type\": - \"object\",\n \"id\": \"CommentThreadSnippet\"\n },\n \"I18nRegion\": - {\n \"type\": \"object\",\n \"id\": \"I18nRegion\",\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n \"default\": - \"youtube#i18nRegion\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the i18n region, such as region code and human-readable name.\",\n \"$ref\": - \"I18nRegionSnippet\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n region.\"\n }\n }\n },\n \"I18nRegionSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"gl\": {\n - \ \"description\": \"The region code as a 2-letter ISO country code.\",\n - \ \"type\": \"string\"\n },\n \"name\": {\n \"type\": - \"string\",\n \"description\": \"The human-readable name of the region.\"\n - \ }\n },\n \"id\": \"I18nRegionSnippet\",\n \"description\": - \"Basic details about an i18n region, such as region code and human-readable - name.\"\n },\n \"LiveStreamContentDetails\": {\n \"properties\": - {\n \"isReusable\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \"\n },\n \"closedCaptionsIngestionUrl\": {\n \"description\": - \"The ingestion URL where the closed captions of this stream are sent.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Detailed settings of a stream.\",\n \"type\": \"object\",\n \"id\": - \"LiveStreamContentDetails\"\n },\n \"I18nLanguageListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of supported i18n languages. In this map, the i18n language ID is the - map key, and its value is the corresponding i18nLanguage resource.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n - \ }\n }\n },\n \"id\": \"I18nLanguageListResponse\"\n - \ },\n \"Member\": {\n \"id\": \"Member\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#member\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#member\\\".\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the member.\",\n \"$ref\": \"MemberSnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamSnippet\": {\n \"id\": - \"LiveStreamSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The stream's title. - The value must be between 1 and 128 characters long.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The stream's description. The value cannot be - longer than 10000 characters.\"\n },\n \"publishedAt\": {\n - \ \"description\": \"The date and time that the stream was created.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\"\n },\n \"isDefaultStream\": {\n \"type\": - \"boolean\"\n }\n }\n },\n \"LiveStreamConfigurationIssue\": - {\n \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The long-form - description of the issue and how to resolve it.\"\n },\n \"type\": - {\n \"description\": \"The kind of error happening.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n - \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n - \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n - \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n - \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n - \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ]\n },\n \"reason\": {\n \"description\": - \"The short-form reason for this issue.\",\n \"type\": \"string\"\n - \ },\n \"severity\": {\n \"type\": \"string\",\n \"enum\": - [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"How severe this - issue is to the stream.\"\n }\n },\n \"id\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"PlaylistItemContentDetails\": {\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify a video. To retrieve the video resource, - set the id query parameter to this value in your API request.\"\n },\n - \ \"videoPublishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the video - was published to YouTube.\"\n },\n \"startAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\",\n \"type\": \"string\"\n },\n - \ \"note\": {\n \"type\": \"string\",\n \"description\": - \"A user-generated note for this item.\"\n },\n \"endAt\": {\n - \ \"description\": \"The time, measured in seconds from the start - of the video, when the video should stop playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) By default, assume that the video.endTime - is the end of the video.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"PlaylistItemContentDetails\",\n \"type\": \"object\"\n - \ },\n \"VideoFileDetailsAudioStream\": {\n \"type\": \"object\",\n - \ \"description\": \"Information about an audio stream.\",\n \"properties\": - {\n \"channelCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The number of audio channels that the stream contains.\",\n \"type\": - \"integer\"\n },\n \"bitrateBps\": {\n \"type\": \"string\",\n - \ \"description\": \"The audio stream's bitrate, in bits per second.\",\n - \ \"format\": \"uint64\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"codec\": {\n \"description\": \"The audio codec that the - stream uses.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"VideoFileDetailsAudioStream\"\n },\n \"LiveBroadcast\": {\n \"properties\": - {\n \"contentDetails\": {\n \"$ref\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\"\n },\n \"statistics\": - {\n \"$ref\": \"LiveBroadcastStatistics\",\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the event, including its - title, description, start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveBroadcast\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcast\\\".\",\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the event's status.\",\n \"$ref\": - \"LiveBroadcastStatus\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the broadcast.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveBroadcast\",\n \"type\": - \"object\",\n \"description\": \"A *liveBroadcast* resource represents - an event that will be streamed, via live video, on YouTube.\"\n },\n \"ChannelSectionListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of ChannelSections that match the request criteria.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#channelSectionListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ChannelSectionListResponse\"\n },\n \"LiveChatTextMessageDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"messageText\": - {\n \"type\": \"string\",\n \"description\": \"The user's - message.\"\n }\n },\n \"id\": \"LiveChatTextMessageDetails\"\n - \ },\n \"LiveStreamStatus\": {\n \"properties\": {\n \"streamStatus\": - {\n \"enum\": [\n \"created\",\n \"ready\",\n - \ \"active\",\n \"inactive\",\n \"error\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"healthStatus\": {\n \"$ref\": - \"LiveStreamHealthStatus\",\n \"description\": \"The health status - of the stream.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveStreamStatus\",\n \"description\": \"Brief description of the live - stream status.\"\n },\n \"Comment\": {\n \"description\": \"A *comment* - represents a single YouTube comment.\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the comment.\"\n },\n \"kind\": {\n \"default\": \"youtube#comment\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the comment.\",\n \"$ref\": \"CommentSnippet\"\n - \ }\n },\n \"id\": \"Comment\",\n \"type\": \"object\"\n - \ },\n \"VideoProcessingDetails\": {\n \"id\": \"VideoProcessingDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Describes processing - status and progress and availability of some other Video resource parts.\",\n - \ \"properties\": {\n \"tagSuggestionsAvailability\": {\n \"description\": - \"This value indicates whether keyword (tag) suggestions are available for - the video. Tags can be added to a video's metadata to make it easier for other - users to find the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"editorSuggestionsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether video - editing suggestions, which might improve video quality or the playback experience, - are available for the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\"\n },\n \"processingProgress\": - {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n },\n \"processingStatus\": - {\n \"enum\": [\n \"processing\",\n \"succeeded\",\n - \ \"failed\",\n \"terminated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\"\n },\n - \ \"processingFailureReason\": {\n \"enum\": [\n \"uploadFailed\",\n - \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n - \ ],\n \"description\": \"The reason that YouTube failed - to process the video. This property will only have a value if the processingStatus - property's value is failed.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"processingIssuesAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether the - video processing engine has generated suggestions that might improve YouTube's - ability to process the the video, warnings that explain video processing problems, - or errors that cause video processing problems. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"fileDetailsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether file details are - available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\"\n },\n - \ \"thumbnailsAvailability\": {\n \"type\": \"string\",\n \"description\": - \"This value indicates whether thumbnail images have been generated for the - video.\"\n }\n }\n },\n \"InvideoTiming\": {\n \"type\": - \"object\",\n \"id\": \"InvideoTiming\",\n \"properties\": {\n \"type\": - {\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"description\": \"Describes a timing type. If the - value is offsetFromStart, then the offsetMs field represents an offset from - the start of the video. If the value is offsetFromEnd, then the offsetMs field - represents an offset from the end of the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"offsetMs\": {\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"durationMs\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\"\n }\n },\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\"\n },\n - \ \"LiveBroadcastContentDetails\": {\n \"description\": \"Detailed - settings of a broadcast.\",\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"enableDvr\": - {\n \"description\": \"This setting determines whether viewers can - access DVR controls while watching the video. DVR controls enable the viewer - to control the video playback experience by pausing, rewinding, or fast forwarding - content. The default value for this property is true. *Important:* You must - set the value to true and also set the enableArchive property's value to true - if you want to make playback available immediately after the broadcast ends.\",\n - \ \"type\": \"boolean\"\n },\n \"startWithSlate\": {\n - \ \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n },\n \"latencyPreference\": {\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"type\": - \"string\",\n \"description\": \"If both this and enable_low_latency - are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Best for: highest quality viewer playbacks and higher resolutions.\",\n - \ \"Best for: near real-time interaction, with minimal playback - buffering.\",\n \"Best for: real-time interaction Does not support: - Closed captions, 1440p, and 4k resolutions\"\n ]\n },\n \"enableClosedCaptions\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether HTTP POST closed captioning is enabled for this broadcast. - The ingestion URL of the closed captions is returned through the liveStreams - API. This is mutually exclusive with using the closed_captions_type property, - and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n - \ },\n \"boundStreamId\": {\n \"type\": \"string\",\n - \ \"description\": \"This value uniquely identifies the live stream - bound to the broadcast.\"\n },\n \"enableLowLatency\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether this broadcast - has low latency enabled.\"\n },\n \"enableEmbed\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - the broadcast video can be played in an embedded player. If you choose to - archive the video (using the enableArchive property), this setting will also - apply to the archived video.\"\n },\n \"projection\": {\n \"type\": - \"string\",\n \"description\": \"The projection format of this broadcast. - This defaults to rectangular.\",\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\"\n },\n \"monitorStream\": - {\n \"$ref\": \"MonitorStreamInfo\",\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\"\n },\n \"closedCaptionsType\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"enableContentEncryption\": {\n \"description\": - \"This setting indicates whether YouTube should enable content encryption - for the broadcast.\",\n \"type\": \"boolean\"\n },\n \"stereoLayout\": - {\n \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n - \ \"leftRight\",\n \"topBottom\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\"\n },\n - \ \"mesh\": {\n \"type\": \"string\",\n \"format\": - \"byte\",\n \"description\": \"The mesh for projecting the video - if projection is mesh. The mesh value must be a UTF-8 string containing the - base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC specification - for an mshp box, excluding the box size and type but including the following - four reserved zero bytes for the version and flags.\"\n },\n \"enableAutoStart\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"enableAutoStop\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether auto stop is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\"\n },\n \"recordFromStart\": {\n \"description\": - \"Automatically start recording after the event goes live. The default value - for this property is true. *Important:* You must also set the enableDvr property's - value to true if you want the playback to be available immediately after the - broadcast ends. If you set this property's value to true but do not also set - the enableDvr property to true, there may be a delay of around one day before - the archived video will be available for playback.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"LiveBroadcastSnippet\": {\n - \ \"id\": \"LiveBroadcastSnippet\",\n \"description\": \"Basic broadcast - information.\",\n \"type\": \"object\",\n \"properties\": {\n \"actualStartTime\": - {\n \"description\": \"The date and time that the broadcast actually - started. This information is only available once the broadcast's state is - live.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"actualEndTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\",\n \"type\": \"string\"\n },\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for this broadcast.\",\n - \ \"type\": \"string\"\n },\n \"isDefaultBroadcast\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast is the default broadcast. Internal only.\"\n },\n - \ \"title\": {\n \"description\": \"The broadcast's title. - Note that the broadcast represents exactly one YouTube video. You can set - this field by modifying the broadcast resource or by setting the title field - of the corresponding video resource.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"A map of thumbnail images associated with the broadcast. For each nested - object in this object, the key is the name of the thumbnail image, and the - value is an object that contains other information about the thumbnail.\"\n - \ },\n \"description\": {\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the broadcast was added to YouTube's live broadcast - schedule.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"scheduledStartTime\": {\n \"description\": - \"The date and time that the broadcast is scheduled to start.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"format\": \"date-time\"\n },\n \"scheduledEndTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to end.\"\n }\n }\n },\n \"CommentThreadReplies\": {\n \"type\": - \"object\",\n \"properties\": {\n \"comments\": {\n \"description\": - \"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.\",\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"description\": \"Comments written in (direct or indirect) reply to - the top level comment.\",\n \"id\": \"CommentThreadReplies\"\n },\n - \ \"ActivityContentDetailsBulletin\": {\n \"type\": \"object\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\"\n }\n - \ },\n \"id\": \"ActivityContentDetailsBulletin\",\n \"description\": - \"Details about a channel bulletin post.\"\n },\n \"PropertyValue\": - {\n \"type\": \"object\",\n \"description\": \"A pair Property / - Value.\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\",\n \"description\": \"The property's value.\"\n },\n - \ \"property\": {\n \"type\": \"string\",\n \"description\": - \"A property.\"\n }\n },\n \"id\": \"PropertyValue\"\n },\n - \ \"ChannelStatus\": {\n \"description\": \"JSON template for the status - part of a channel.\",\n \"id\": \"ChannelStatus\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"longUploadsStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The long uploads status of this - channel. See https://support.google.com/youtube/answer/71673 for more information.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ]\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\"\n },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"Privacy status of the channel.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\"\n },\n \"isLinked\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n }\n }\n - \ },\n \"ActivityContentDetailsFavorite\": {\n \"properties\": {\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsFavorite\",\n \"description\": - \"Information about a video that was marked as a favorite video.\"\n },\n - \ \"PageInfo\": {\n \"properties\": {\n \"resultsPerPage\": - {\n \"description\": \"The number of results included in the API - response.\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ },\n \"totalResults\": {\n \"description\": \"The - total number of results in the result set.\",\n \"type\": \"integer\",\n - \ \"format\": \"int32\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PageInfo\",\n \"description\": \"Paging details for lists - of resources, including total number of items available and number of resources - returned in a single page.\"\n },\n \"ContentRating\": {\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\",\n \"id\": \"ContentRating\",\n \"properties\": - {\n \"chvrsRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ],\n \"description\": \"The video's Canadian Home Video - Rating System (CHVRS) rating.\",\n \"enum\": [\n \"chvrsUnspecified\",\n - \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n - \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n - \ \"chvrsUnrated\"\n ]\n },\n \"mibacRating\": - {\n \"description\": \"The video's rating from the Ministero dei - Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n - \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n - \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n - \ ]\n },\n \"fskRating\": {\n \"enum\": [\n - \ \"fskUnspecified\",\n \"fsk0\",\n \"fsk6\",\n - \ \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n \"fskUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle - der Filmwirtschaft (FSK - Germany) rating.\"\n },\n \"cncRating\": - {\n \"description\": \"Rating system in France - Commission de classification - cinematographique\",\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ]\n - \ },\n \"kfcbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"enum\": - [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"bmukkRating\": - {\n \"description\": \"The video's rating from the Austrian Board - of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst und Kultur).\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Unrestricted\",\n \"6+\",\n \"8+\",\n - \ \"10+\",\n \"12+\",\n \"14+\",\n \"16+\",\n - \ \"\"\n ],\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ]\n },\n - \ \"kmrbRating\": {\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ],\n \"description\": \"The video's Korea Media Rating - Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. The KMRB - rates videos in South Korea.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ]\n },\n \"incaaRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n - \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n - \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"description\": - \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ]\n },\n \"mccaaRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n - \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n - \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n - \ \"mccaa18\",\n \"mccaaUnrated\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ]\n },\n - \ \"ytRating\": {\n \"description\": \"A rating that YouTube - uses to identify age-restricted content.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"mekuRating\": {\n \"description\": - \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti - (National Audiovisual Institute).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ]\n },\n - \ \"mdaRating\": {\n \"enum\": [\n \"mdaUnspecified\",\n - \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n - \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n - \ \"mdaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Singapore's - Media Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\",\n \"type\": \"string\"\n },\n \"lsfRating\": - {\n \"description\": \"The video's rating from Indonesia's Lembaga - Sensor Film.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"enum\": [\n - \ \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ]\n },\n \"nmcRating\": {\n \"enum\": [\n - \ \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n - \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n - \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n - \ ],\n \"description\": \"The National Media Council ratings - system for United Arab Emirates.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ]\n },\n \"csaRating\": {\n \"enum\": - [\n \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n - \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n - \ \"csaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from France's Conseil sup\xE9rieur - de l\u2019audiovisuel, which rates broadcast content.\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ]\n },\n \"medietilsynetRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"description\": \"The video's rating from Medietilsynet, - the Norwegian Media Authority.\"\n },\n \"mpaaRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n - \ \"! X\",\n \"\"\n ],\n \"enum\": - [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"type\": - \"string\"\n },\n \"ifcoRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's Irish Film Classification - Office (IFCO - Ireland) rating. See the IFCO website for more information.\",\n - \ \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n - \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n - \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n - \ \"ifco18\",\n \"ifcoUnrated\"\n ]\n },\n - \ \"fcoRating\": {\n \"description\": \"The video's rating - from Hong Kong's Office for Film, Newspaper and Article Administration.\",\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"nfvcbRating\": {\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"18\",\n \"RE\",\n \"\"\n ]\n - \ },\n \"anatelRating\": {\n \"description\": \"The - video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean - television.\",\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"ecbmctRating\": {\n \"description\": \"Rating system in - Turkey - Evaluation and Classification Board of the Ministry of Culture and - Tourism\",\n \"enum\": [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n - \ \"ecbmct7a\",\n \"ecbmct7plus\",\n \"ecbmct13a\",\n - \ \"ecbmct13plus\",\n \"ecbmct15a\",\n \"ecbmct15plus\",\n - \ \"ecbmct18plus\",\n \"ecbmctUnrated\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"7A\",\n \"7+\",\n \"13A\",\n - \ \"13+\",\n \"15A\",\n \"15+\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"cceRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"description\": \"The video's rating from Portugal's - Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"type\": - \"string\",\n \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ]\n },\n \"mpaatRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GB\",\n \"RB\"\n ],\n - \ \"description\": \"The rating system for trailer, DVD, and Ad in - the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ],\n \"type\": \"string\"\n },\n - \ \"russiaRating\": {\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"description\": \"The video's National Film Registry - of the Russian Federation (MKRF - Russia) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"fpbRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ],\n \"enum\": [\n - \ \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n - \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n - \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\"\n },\n \"czfilmRating\": {\n \"description\": - \"The video's rating in the Czech Republic.\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"bfvcRating\": {\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ],\n \"description\": - \"The video's rating from Thailand's Board of Film and Video Censors.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"E\",\n \"13\",\n \"15\",\n - \ \"18\",\n \"20\",\n \"B\",\n \"\"\n - \ ]\n },\n \"cbfcRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Central Board of Film Certification - (CBFC - India) rating.\",\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ]\n },\n \"catvfrRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ],\n \"description\": \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ]\n },\n \"oflcRating\": {\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ]\n },\n \"fmocRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ],\n \"enum\": [\n - \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\"\n },\n \"bbfcRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"description\": - \"The video's British Board of Film Classification (BBFC) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ]\n },\n \"menaMpaaRating\": {\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ],\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"kijkwijzerRating\": - {\n \"description\": \"The video's NICAM/Kijkwijzer rating from the - Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ]\n },\n \"djctqRatingReasons\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ]\n },\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\"\n - \ },\n \"chfilmRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Switzerland.\"\n - \ },\n \"ilfilmRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in Israel.\"\n - \ },\n \"nbcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Maldives National Bureau of Classification.\",\n \"enum\": - [\n \"nbcUnspecified\",\n \"nbcG\",\n \"nbcPg\",\n - \ \"nbc12plus\",\n \"nbc15plus\",\n \"nbc18plus\",\n - \ \"nbc18plusr\",\n \"nbcPu\",\n \"nbcUnrated\"\n - \ ]\n },\n \"mccypRating\": {\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ]\n },\n \"moctwRating\": - {\n \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"description\": \"The video's rating from Taiwan's - Ministry of Culture (\u6587\u5316\u90E8).\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ]\n },\n \"nfrcRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"nfrcUnspecified\",\n - \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n - \ \"nfrcX\",\n \"nfrcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\"\n },\n - \ \"cccRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n - \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ]\n },\n - \ \"rcnofRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Hungarian - Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\",\n - \ \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ]\n },\n \"cnaRating\": {\n \"description\": - \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\",\n \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n - \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ]\n },\n \"skfilmRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ],\n \"description\": - \"The video's rating in Slovakia.\"\n },\n \"cscfRating\": {\n - \ \"description\": \"The video's rating from Luxembourg's Commission - de surveillance de la classification des films (CSCF).\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n - \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ]\n },\n \"mtrcbRating\": {\n \"enum\": [\n - \ \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n - \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n - \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n - \ \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\"\n },\n \"smsaRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from Statens - medier\xE5d (Sweden's National Media Council).\",\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"enum\": [\n - \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ]\n },\n \"rtcRating\": {\n \"enum\": [\n - \ \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"description\": \"The video's General Directorate - of Radio, Television and Cinematography (Mexico) rating.\",\n \"type\": - \"string\"\n },\n \"agcomRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n - \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"resorteviolenciaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Venezuela.\"\n },\n \"acbRating\": {\n \"enum\": - [\n \"acbUnspecified\",\n \"acbE\",\n \"acbP\",\n - \ \"acbC\",\n \"acbG\",\n \"acbPg\",\n \"acbM\",\n - \ \"acbMa15plus\",\n \"acbR18plus\",\n \"acbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"Programs that have been given a P classification - by the Australian Communications and Media Authority. These programs are intended - for preschool children.\",\n \"Programs that have been given a - C classification by the Australian Communications and Media Authority. These - programs are intended for children (other than preschool children) who are - younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ]\n },\n \"catvRating\": {\n \"enum\": [\n - \ \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ]\n },\n \"djctqRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's Departamento de Justi\xE7a, - Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n - \ \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"eefilmRating\": {\n \"description\": - \"The video's rating in Estonia.\",\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"nkclvRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"7+\",\n \"12+\",\n \"! - 16+\",\n \"18+\",\n \"\"\n ],\n \"enum\": - [\n \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n - \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n - \ \"nkclvUnrated\"\n ],\n \"description\": \"The - video's rating from the Nacion\xE3lais Kino centrs (National Film Centre of - Latvia).\"\n },\n \"smaisRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ]\n },\n \"grfilmRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n - \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n - \ ],\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"description\": \"The video's rating in Greece.\"\n },\n - \ \"tvpgRating\": {\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"description\": \"The - video's TV Parental Guidelines (TVPG) rating.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ]\n },\n \"icaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"description\": \"The video's Instituto - de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n - \ \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"cicfRating\": {\n \"description\": \"The video's - rating from the Commission de Contr\xF4le des Films (Belgium).\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ]\n },\n - \ \"nbcplRating\": {\n \"description\": \"The video's rating - in Poland.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ]\n },\n \"egfilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Egypt.\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ]\n },\n \"fpbRatingReasons\": {\n - \ \"description\": \"Reasons that explain why the video received its - FPB (South Africa) rating.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ]\n },\n \"type\": \"array\"\n },\n \"rteRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"rteUnspecified\",\n - \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n - \ \"rteUnrated\"\n ],\n \"description\": \"The - video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\"\n },\n - \ \"mocRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"T\",\n \"7\",\n \"12\",\n - \ \"15\",\n \"18\",\n \"X\",\n \"Banned\",\n - \ \"\"\n ],\n \"enum\": [\n \"mocUnspecified\",\n - \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n - \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Ministerio de Cultura (Colombia) - rating.\"\n },\n \"mcstRating\": {\n \"enum\": [\n - \ \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ],\n \"description\": \"The video's rating system for Vietnam - - MCST\",\n \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"fcbmRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n - \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n - \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n - \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ],\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ]\n },\n \"pefilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"PT\",\n - \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in Peru.\"\n - \ },\n \"eirinRating\": {\n \"description\": \"The video's - Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n \"enum\": - [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"I18nRegionListResponse\": {\n \"id\": \"I18nRegionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#i18nRegionListResponse\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n }\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelLocalization\": {\n \"id\": - \"ChannelLocalization\",\n \"description\": \"Channel localization setting\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The localized - strings for channel's title.\"\n },\n \"description\": {\n \"description\": - \"The localized strings for channel's description.\",\n \"type\": - \"string\"\n }\n }\n }\n },\n \"title\": \"YouTube Data API - v3\",\n \"servicePath\": \"\",\n \"discoveryVersion\": \"v1\",\n \"kind\": - \"discovery#restDescription\",\n \"basePath\": \"\",\n \"protocol\": \"rest\",\n - \ \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"revision\": \"20230220\",\n - \ \"description\": \"The YouTube Data API v3 is an API that provides access - to YouTube data, such as videos, playlists, and channels.\",\n \"rootUrl\": - \"https://youtube.googleapis.com/\",\n \"name\": \"youtube\",\n \"resources\": - {\n \"i18nRegions\": {\n \"methods\": {\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"id\": \"youtube.i18nRegions.list\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": - \"en_US\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"path\": \"youtube/v3/i18nRegions\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ }\n }\n }\n },\n \"liveStreams\": {\n \"methods\": - {\n \"insert\": {\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"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, - content_details, and status.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveStreams.insert\"\n },\n - \ \"list\": {\n \"description\": \"Retrieve the list of streams - associated with the given channel. --\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Return LiveStreams with the given - ids from Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n - \ },\n \"update\": {\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Updates an existing stream for - the authenticated user.\",\n \"id\": \"youtube.liveStreams.update\",\n - \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveStreams\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.delete\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"description\": \"Deletes an existing - stream for the authenticated user.\",\n \"httpMethod\": \"DELETE\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/liveStreams\"\n - \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"type\": {\n \"description\": - \"Get a third party link of the given type.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ]\n },\n - \ \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\"\n },\n - \ \"linkingToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Get a third party link with the - given linking token.\"\n }\n },\n \"id\": \"youtube.thirdPartyLinks.list\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"linkingToken\",\n \"type\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Do not use. Required for compatibility.\",\n \"location\": - \"query\"\n },\n \"linkingToken\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"description\": - \"Type of the link to be deleted.\",\n \"required\": true,\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.thirdPartyLinks.delete\"\n },\n \"insert\": - {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"id\": \"youtube.thirdPartyLinks.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ }\n },\n \"update\": {\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.thirdPartyLinks.update\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"playlistItems\": {\n \"methods\": {\n \"insert\": - {\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/playlistItems\"\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a resource.\",\n \"id\": - \"youtube.playlistItems.delete\"\n },\n \"update\": {\n \"id\": - \"youtube.playlistItems.update\",\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Updates an existing resource.\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"PlaylistItemListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"playlistId\": {\n \"description\": \"Return the - playlist items within the given playlist.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"maximum\": \"50\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\",\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"description\": \"Return the playlist items associated with - the given video ID.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.list\"\n - \ }\n }\n },\n \"watermarks\": {\n \"methods\": {\n - \ \"unset\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/watermarks/unset\",\n \"id\": - \"youtube.watermarks.unset\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Allows removal of channel watermark.\"\n - \ },\n \"set\": {\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"10485760\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n - \ \"description\": \"Allows upload of watermark image and setting - it for a channel.\",\n \"supportsMediaUpload\": true,\n \"path\": - \"youtube/v3/watermarks/set\",\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/watermarks/set\",\n \"id\": \"youtube.watermarks.set\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n }\n }\n - \ }\n },\n \"liveChatMessages\": {\n \"methods\": {\n \"insert\": - {\n \"id\": \"youtube.liveChatMessages.insert\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"request\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/messages\"\n },\n - \ \"delete\": {\n \"description\": \"Deletes a chat message.\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.liveChatMessages.delete\",\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n }\n },\n - \ \"list\": {\n \"parameters\": {\n \"pageToken\": - {\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"description\": \"Specifies - the localization language in which the system messages should be returned.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"2000\",\n - \ \"minimum\": \"200\",\n \"format\": \"uint32\",\n - \ \"default\": \"500\",\n \"type\": \"integer\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the liveChatComment resource parts that the - API response will include. Supported values are id and snippet.\"\n },\n - \ \"profileImageSize\": {\n \"format\": \"uint32\",\n - \ \"maximum\": \"720\",\n \"location\": \"query\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\",\n \"type\": \"integer\",\n - \ \"minimum\": \"16\"\n },\n \"liveChatId\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - id of the live chat for which comments should be returned.\"\n }\n - \ },\n \"id\": \"youtube.liveChatMessages.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/liveChat/messages\"\n - \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"id\": \"youtube.liveChatModerators.delete\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"description\": \"Deletes - a chat moderator.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"DELETE\"\n - \ },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true\n }\n },\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatModerators.insert\"\n },\n \"list\": - {\n \"parameters\": {\n \"maxResults\": {\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"default\": \"5\"\n },\n \"liveChatId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The id of the live chat for which moderators - should be returned.\",\n \"required\": true\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the liveChatModerator resource parts that - the API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"id\": \"youtube.liveChatModerators.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"LiveChatModeratorListResponse\"\n }\n }\n }\n },\n - \ \"search\": {\n \"methods\": {\n \"list\": {\n \"path\": - \"youtube/v3/search\",\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.search.list\",\n - \ \"flatPath\": \"youtube/v3/search\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"videoDefinition\": {\n \"description\": - \"Filter on the definition of the videos.\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"maximum\": \"50\",\n \"default\": \"5\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n },\n \"type\": {\n \"location\": - \"query\",\n \"description\": \"Restrict results to a particular - set of resource types from One Platform.\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n },\n \"forMine\": - {\n \"description\": \"Search for the private videos of the authenticated - user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"publishedAfter\": {\n \"location\": - \"query\",\n \"description\": \"Filter on resources published - after this date.\",\n \"type\": \"string\",\n \"format\": - \"google-datetime\"\n },\n \"forDeveloper\": {\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"videoLicense\": {\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on the license of the videos.\"\n },\n \"relevanceLanguage\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return results relevant to this language.\"\n - \ },\n \"videoType\": {\n \"enum\": [\n - \ \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Filter - on videos of a specific type.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ]\n },\n \"publishedBefore\": {\n \"type\": - \"string\",\n \"description\": \"Filter on resources published - before this date.\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"videoSyndicated\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"description\": - \"Filter on syndicated videos.\"\n },\n \"topicId\": - {\n \"type\": \"string\",\n \"description\": \"Restrict - results to a particular topic.\",\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Filter - on resources belonging to this channelId.\"\n },\n \"videoCategoryId\": - {\n \"description\": \"Filter on videos in a specific category.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"q\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Textual - search terms to match.\"\n },\n \"safeSearch\": {\n - \ \"description\": \"Indicates whether the search results should - include restricted content as well as standard content.\",\n \"enum\": - [\n \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"type\": \"string\",\n \"default\": \"moderate\",\n - \ \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"forContentOwner\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Search - owned by a content owner.\"\n },\n \"pageToken\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"required\": - true\n },\n \"channelType\": {\n \"enum\": - [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Add - a filter on the channel search.\"\n },\n \"locationRadius\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on distance from the location (specified - above).\"\n },\n \"videoDuration\": {\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"location\": \"query\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Filter on the duration of the videos.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"eventType\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Filter - on the livestream status of the videos.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ]\n - \ },\n \"order\": {\n \"default\": \"relevance\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Resources - are sorted in reverse chronological order based on the date they were created.\",\n - \ \"Resources are sorted from highest to lowest rating.\",\n - \ \"Resources are sorted from highest to lowest number of views.\",\n - \ \"Resources are sorted based on their relevance to the search - query. This is the default value for this parameter.\",\n \"Resources - are sorted alphabetically by title.\",\n \"Channels are sorted - in descending order of their number of uploaded videos.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Sort - order of the results.\",\n \"type\": \"string\",\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ]\n - \ },\n \"regionCode\": {\n \"description\": - \"Display the content as seen by viewers in this country.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"location\": - {\n \"description\": \"Filter on location of the video\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoCaption\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Do not filter results based on caption - availability.\",\n \"Only include videos that have captions.\",\n - \ \"Only include videos that do not have captions.\"\n ]\n - \ },\n \"videoDimension\": {\n \"enum\": - [\n \"any\",\n \"2d\",\n \"3d\"\n - \ ],\n \"description\": \"Filter on 3d videos.\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"type\": \"string\"\n },\n - \ \"videoEmbeddable\": {\n \"location\": \"query\",\n - \ \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"description\": - \"Filter on embeddable videos.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all videos, embeddable or - not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"type\": \"string\"\n },\n \"relatedToVideoId\": - {\n \"type\": \"string\",\n \"description\": \"Search - related to a resource.\",\n \"location\": \"query\"\n }\n - \ },\n \"description\": \"Retrieves a list of search resources\"\n - \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n - \ \"set\": {\n \"parameterOrder\": [\n \"videoId\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"videoId\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"supportsMediaUpload\": true,\n \"description\": - \"As this is not an insert in a strict sense (it supports uploading/setting - of a thumbnail for multiple videos, which doesn't result in creation of a - single resource), I use a custom verb here.\",\n \"id\": \"youtube.thumbnails.set\",\n - \ \"path\": \"youtube/v3/thumbnails/set\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n \"mediaUpload\": - {\n \"maxSize\": \"2097152\",\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ }\n }\n },\n \"response\": {\n - \ \"$ref\": \"ThumbnailSetResponse\"\n }\n }\n }\n - \ },\n \"channels\": {\n \"methods\": {\n \"update\": {\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"Channel\"\n },\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"Channel\"\n },\n - \ \"id\": \"youtube.channels.update\",\n \"path\": \"youtube/v3/channels\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/channels\"\n },\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"ChannelListResponse\"\n },\n \"path\": \"youtube/v3/channels\",\n - \ \"parameters\": {\n \"mySubscribers\": {\n \"description\": - \"Return the channels subscribed to the authenticated user\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Return the channels with the specified IDs.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"managedByMe\": - {\n \"description\": \"Return the channels managed by the authenticated - user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\"\n },\n \"forUsername\": {\n \"description\": - \"Return the channel associated with a YouTube username.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the channels within the specified guide category ID.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"mine\": {\n \"description\": - \"Return the ids of channels owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.channels.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ]\n }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"parameterOrder\": [],\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/channelBanners/insert\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"6291456\",\n - \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"httpMethod\": \"POST\",\n \"supportsMediaUpload\": true,\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"path\": \"youtube/v3/channelBanners/insert\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Unused, - channel_id is currently derived from the security context of the requestor.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"id\": - \"youtube.channelBanners.insert\",\n \"description\": \"Inserts a - new resource into this collection.\"\n }\n }\n },\n \"abuseReports\": - {\n \"methods\": {\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"path\": - \"youtube/v3/abuseReports\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.abuseReports.insert\",\n \"request\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/abuseReports\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n - \ }\n }\n }\n },\n \"videos\": {\n \"methods\": - {\n \"reportAbuse\": {\n \"id\": \"youtube.videos.reportAbuse\",\n - \ \"description\": \"Report abuse for a video.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n - \ \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [],\n \"path\": \"youtube/v3/videos/reportAbuse\"\n - \ },\n \"getRating\": {\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.videos.getRating\",\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Retrieves the ratings that the authorized user gave to a list of specified - videos.\",\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"flatPath\": \"youtube/v3/videos/getRating\",\n - \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"insert\": {\n \"id\": \"youtube.videos.insert\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"stabilize\": {\n \"description\": - \"Should stabilize be applied to the upload.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true,\n \"description\": - \"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.\"\n },\n \"autoLevels\": {\n \"type\": - \"boolean\",\n \"description\": \"Should auto-levels be applied - to the upload.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"notifySubscribers\": - {\n \"location\": \"query\",\n \"description\": - \"Notify the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"default\": \"true\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"mediaUpload\": {\n \"maxSize\": - \"274877906944\",\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/videos\"\n - \ }\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos\",\n \"supportsMediaUpload\": - true,\n \"flatPath\": \"youtube/v3/videos\"\n },\n \"delete\": - {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n - \ \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true\n }\n - \ },\n \"id\": \"youtube.videos.delete\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/videos\",\n \"description\": - \"Deletes a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\"\n },\n \"update\": - {\n \"path\": \"youtube/v3/videos\",\n \"id\": \"youtube.videos.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"Video\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Updates - an existing resource.\",\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/videos\"\n },\n \"list\": {\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"VideoListResponse\"\n },\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.videos.list\",\n \"parameters\": - {\n \"chart\": {\n \"location\": \"query\",\n \"enum\": - [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Return the videos that are in the specified - chart.\"\n },\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"format\": - \"uint32\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"type\": \"integer\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Use a chart that is specific to the specified region\"\n },\n - \ \"videoCategoryId\": {\n \"description\": \"Use chart - that is specific to the specified video category\",\n \"location\": - \"query\",\n \"default\": \"0\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxWidth\": {\n \"location\": - \"query\",\n \"minimum\": \"72\",\n \"maximum\": - \"8192\",\n \"description\": \"Return the player with maximum - height specified in\",\n \"format\": \"int32\",\n \"type\": - \"integer\"\n },\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return videos with the given ids.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\"\n },\n \"myRating\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"type\": - \"string\"\n },\n \"locale\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxHeight\": - {\n \"format\": \"int32\",\n \"location\": \"query\",\n - \ \"minimum\": \"72\",\n \"type\": \"integer\",\n - \ \"maximum\": \"8192\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"rate\": {\n \"parameters\": - {\n \"rating\": {\n \"location\": \"query\",\n \"required\": - true,\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.videos.rate\",\n - \ \"path\": \"youtube/v3/videos/rate\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Adds a like or dislike rating to a video or removes - a rating from a video.\",\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ]\n }\n }\n },\n \"tests\": - {\n \"methods\": {\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.tests.insert\",\n - \ \"description\": \"POST method.\",\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/tests\",\n \"response\": {\n - \ \"$ref\": \"TestItem\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"path\": \"youtube/v3/tests\",\n \"request\": {\n \"$ref\": - \"TestItem\"\n },\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true\n - \ },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return rendered funding amounts - in specified language.\"\n },\n \"maxResults\": {\n - \ \"minimum\": \"1\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"default\": \"5\",\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the superChatEvent resource parts that the - API response will include. This parameter is currently not supported.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/superChatEvents\",\n \"response\": - {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"id\": - \"youtube.superChatEvents.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"youtube\": {\n \"resources\": - {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"id\": - \"youtube.youtube.v3.updateCommentThreads\",\n \"parameterOrder\": - [],\n \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/commentThreads\"\n }\n }\n }\n }\n - \ },\n \"videoAbuseReportReasons\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"The *part* parameter - specifies the videoCategory resource parts that the API response will include. - Supported values are id and snippet.\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"en-US\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.videoAbuseReportReasons.list\",\n \"response\": {\n \"$ref\": - \"VideoAbuseReportReasonListResponse\"\n }\n }\n }\n - \ },\n \"videoCategories\": {\n \"methods\": {\n \"list\": - {\n \"id\": \"youtube.videoCategories.list\",\n \"response\": - {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"parameters\": - {\n \"regionCode\": {\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Returns the video categories with the given IDs for Stubby or Apiary.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"hl\": {\n \"default\": - \"en-US\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - videoCategory resource properties that the API response will include. Set - the parameter value to snippet.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/videoCategories\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/videoCategories\"\n }\n }\n - \ },\n \"members\": {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"flatPath\": \"youtube/v3/members\",\n \"description\": - \"Retrieves a list of members that match the request criteria for a channel.\",\n - \ \"id\": \"youtube.members.list\",\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"mode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": - \"all_current\",\n \"description\": \"Parameter that specifies - which channel members to return.\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - only members that joined after the first call with this mode was made.\",\n - \ \"Return all current members, from newest to oldest.\"\n ]\n - \ },\n \"hasAccessToLevel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\"\n - \ },\n \"filterByMemberChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"1000\",\n \"default\": \"5\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/members\"\n - \ }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/commentThreads\"\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"id\": \"youtube.commentThreads.list\",\n - \ \"parameters\": {\n \"textFormat\": {\n \"location\": - \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The - requested text format for the returned comments.\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"default\": \"html\"\n },\n - \ \"id\": {\n \"description\": \"Returns the comment - threads with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"searchTerms\": {\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"moderationStatus\": - {\n \"type\": \"string\",\n \"description\": \"Limits - the returned comment threads to those with the specified moderation status. - Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"default\": - \"published\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ]\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"20\",\n \"minimum\": \"1\",\n \"maximum\": - \"100\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"videoId\": {\n \"description\": - \"Returns the comment threads of the specified video.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads of all videos of the channel and the channel comments - as well.\",\n \"location\": \"query\"\n },\n \"order\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"default\": \"time\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies a comma-separated list of one or more commentThread resource - properties that the API response will include.\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads for all the channel - comments (ie does not include comments left on videos).\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ }\n }\n }\n },\n \"activities\": {\n \"methods\": - {\n \"list\": {\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"parameters\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"publishedBefore\": {\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"home\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"publishedAfter\": {\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"0\",\n \"type\": - \"integer\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.activities.list\",\n \"path\": \"youtube/v3/activities\",\n - \ \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"parameters\": {\n \"id\": {\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"type\": \"integer\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"broadcastType\": {\n \"default\": - \"event\",\n \"description\": \"Return only broadcasts with the - selected type.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ],\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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, status and statistics.\"\n },\n \"broadcastStatus\": - {\n \"description\": \"Return broadcasts with a certain status, - e.g. active broadcasts.\",\n \"type\": \"string\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return current - live broadcasts.\",\n \"Return broadcasts that have not yet - started.\",\n \"Return broadcasts that have already ended.\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n }\n },\n - \ \"insert\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.delete\",\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"description\": \"Delete a given broadcast.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Broadcast to delete.\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n }\n },\n \"update\": - {\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"description\": \"Updates an existing broadcast for the authenticated - user.\",\n \"id\": \"youtube.liveBroadcasts.update\"\n },\n - \ \"insertCuepoint\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Broadcast to insert ads to, or equivalently - `external_video_id` for internal use.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts/cuepoint\",\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"parameterOrder\": [],\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"description\": \"Insert cuepoints in a broadcast\",\n \"request\": - {\n \"$ref\": \"Cuepoint\"\n }\n },\n \"bind\": - {\n \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"streamId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Stream to bind, if not set unbind the current one.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Broadcast to bind to the stream\",\n \"required\": true\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"description\": \"Bind a broadcast - to a stream.\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ]\n },\n \"transition\": - {\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"description\": - \"Transition a broadcast to a given status.\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.liveBroadcasts.transition\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Broadcast - to transition.\"\n },\n \"broadcastStatus\": {\n \"description\": - \"The status to which the broadcast is going to transition.\",\n \"required\": - true,\n \"type\": \"string\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ]\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\"\n - \ }\n },\n \"path\": \"youtube/v3/liveBroadcasts/transition\"\n - \ }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.channelSections.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"mine\": {\n \"description\": - \"Return the ChannelSections owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Return - the ChannelSections with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"description\": \"Return - content in specified language\",\n \"location\": \"query\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"flatPath\": - \"youtube/v3/channelSections\"\n },\n \"update\": {\n \"description\": - \"Updates an existing resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"path\": - \"youtube/v3/channelSections\",\n \"httpMethod\": \"PUT\",\n \"id\": - \"youtube.channelSections.update\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n }\n - \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/channelSections\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.channelSections.insert\"\n },\n \"delete\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.channelSections.delete\",\n \"description\": \"Deletes - a resource.\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/channelSections\"\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"hl\": {\n \"default\": - \"en_US\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the i18nLanguage resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.i18nLanguages.list\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"I18nLanguageListResponse\"\n },\n \"flatPath\": - \"youtube/v3/i18nLanguages\",\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"path\": \"youtube/v3/i18nLanguages\"\n - \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"description\": \"Retrieves a list of all pricing levels offered - by a creator to the fans.\",\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"MembershipsLevelListResponse\"\n },\n - \ \"id\": \"youtube.membershipsLevels.list\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - membershipsLevel resource parts that the API response will include. Supported - values are id and snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ]\n }\n }\n },\n \"subscriptions\": {\n \"methods\": - {\n \"insert\": {\n \"request\": {\n \"$ref\": - \"Subscription\"\n },\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.subscriptions.insert\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"response\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"flatPath\": \"youtube/v3/subscriptions\"\n },\n - \ \"list\": {\n \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"parameters\": {\n \"myRecentSubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"order\": {\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"default\": \"relevance\",\n \"location\": - \"query\",\n \"description\": \"The order of the returned subscriptions\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": - \"Return the subscriptions of the given channel owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"forChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions to the subset of - these channels that the authenticated user is subscribed to.\"\n },\n - \ \"maxResults\": {\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\"\n - \ },\n \"mySubscribers\": {\n \"location\": - \"query\",\n \"description\": \"Return the subscribers of the - given channel owner.\",\n \"type\": \"boolean\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\"\n }\n - \ },\n \"path\": \"youtube/v3/subscriptions\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.subscriptions.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.subscriptions.delete\"\n }\n - \ }\n },\n \"playlists\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"description\": \"Return the playlists owned by the authenticated - user.\",\n \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"pageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"description\": - \"Return the playlists owned by the specified channel ID.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.playlists.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlists\"\n },\n \"update\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/playlists\",\n \"description\": \"Updates an existing - resource.\",\n \"flatPath\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"id\": \"youtube.playlists.update\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"request\": {\n \"$ref\": \"Playlist\"\n - \ }\n },\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.playlists.insert\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"request\": {\n - \ \"$ref\": \"Playlist\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"httpMethod\": \"POST\"\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/playlists\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlists.delete\"\n }\n }\n },\n - \ \"captions\": {\n \"methods\": {\n \"list\": {\n \"response\": - {\n \"$ref\": \"CaptionListResponse\"\n },\n \"flatPath\": - \"youtube/v3/captions\",\n \"path\": \"youtube/v3/captions\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\"\n - \ },\n \"videoId\": {\n \"description\": - \"Returns the captions for the specified video.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Returns the captions with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\",\n - \ \"videoId\"\n ],\n \"id\": \"youtube.captions.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n }\n },\n \"path\": - \"youtube/v3/captions\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.delete\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"description\": \"Deletes a resource.\"\n },\n \"insert\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.captions.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/captions\",\n - \ \"supportsMediaUpload\": true,\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"mediaUpload\": {\n \"maxSize\": - \"104857600\",\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ]\n - \ },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"parameters\": {\n \"sync\": - {\n \"location\": \"query\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"type\": \"boolean\"\n },\n - \ \"part\": {\n \"description\": \"The *part* parameter - specifies the caption resource parts that the API response will include. Set - the parameter value to snippet.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"download\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"useMediaDownloadService\": true,\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"supportsMediaDownload\": true,\n \"id\": - \"youtube.captions.download\",\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the caption track to download, required for One Platform.\",\n - \ \"required\": true,\n \"location\": \"path\"\n - \ },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"tlang\": {\n \"location\": \"query\",\n \"description\": - \"tlang is the language code; machine translate the captions into this language.\",\n - \ \"type\": \"string\"\n },\n \"tfmt\": - {\n \"description\": \"Convert the captions into this format. - Supported options are sbv, srt, and vtt.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Downloads a caption track.\",\n \"flatPath\": \"youtube/v3/captions/{id}\",\n - \ \"path\": \"youtube/v3/captions/{id}\"\n },\n \"update\": - {\n \"path\": \"youtube/v3/captions\",\n \"request\": {\n - \ \"$ref\": \"Caption\"\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\"\n },\n \"sync\": - {\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"supportsMediaUpload\": - true,\n \"httpMethod\": \"PUT\",\n \"mediaUpload\": {\n - \ \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n - \ },\n \"id\": \"youtube.captions.update\"\n }\n }\n - \ },\n \"comments\": {\n \"methods\": {\n \"list\": {\n \"response\": - {\n \"$ref\": \"CommentListResponse\"\n },\n \"parameters\": - {\n \"textFormat\": {\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"default\": - \"html\",\n \"description\": \"The requested text format for - the returned comments.\"\n },\n \"parentId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more comment - resource properties that the API response will include.\",\n \"required\": - true\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"Returns - the comments with the given IDs for One Platform.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"maximum\": - \"100\",\n \"default\": \"20\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"1\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"id\": \"youtube.comments.list\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"Comment\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.comments.insert\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"update\": {\n - \ \"httpMethod\": \"PUT\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.update\",\n \"request\": {\n - \ \"$ref\": \"Comment\"\n },\n \"response\": {\n - \ \"$ref\": \"Comment\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Updates - an existing resource.\"\n },\n \"markAsSpam\": {\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"id\": \"youtube.comments.markAsSpam\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n \"path\": - \"youtube/v3/comments/markAsSpam\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"description\": \"Flags - the comments with the given IDs as spam in the caller's opinion.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"setModerationStatus\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.comments.setModerationStatus\",\n \"path\": - \"youtube/v3/comments/setModerationStatus\",\n \"parameters\": {\n - \ \"id\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Modifies the moderation status of the comments with the given IDs\",\n \"required\": - true\n },\n \"banAuthor\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"If set to true the author of the comment gets added to the ban list. This - means all future comments of the author will autmomatically be rejected. Only - valid in combination with STATUS_REJECTED.\",\n \"default\": - \"false\"\n },\n \"moderationStatus\": {\n \"required\": - true,\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"description\": \"Specifies the requested moderation status. - Note, comments can be in statuses, which are not available through this call. - For example, this call does not allow to mark a comment as 'likely spam'. - Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n }\n },\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"description\": - \"Sets the moderation status of one or more comments.\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ]\n },\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.comments.delete\",\n - \ \"path\": \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ]\n - \ }\n }\n },\n \"liveChatBans\": {\n \"methods\": {\n - \ \"delete\": {\n \"parameters\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatBans.delete\",\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"description\": \"Deletes a chat - ban.\",\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveChat/bans\"\n - \ },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"description\": \"Inserts a new - resource into this collection.\",\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true\n }\n },\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.liveChatBans.insert\",\n \"flatPath\": \"youtube/v3/liveChat/bans\"\n - \ }\n }\n }\n }\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:37 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCCG0Nmkibm-P5rTIWGq1PSA&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"vlBJYnlg1qtmGZCahNCNLEmLxic\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"iSGgjh3rRRhixzCysLaMwnCKOQk\",\n \"id\": \"UCCG0Nmkibm-P5rTIWGq1PSA\",\n - \ \"snippet\": {\n \"title\": \"Kevin Rooke\",\n \"description\": - \"\",\n \"customUrl\": \"@kevinrooke7070\",\n \"publishedAt\": - \"2006-10-21T05:51:59Z\",\n \"thumbnails\": {\n \"default\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJXEOsIFpwnnOxEUBzdZs-_DikEjIw--fVCIAg=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJXEOsIFpwnnOxEUBzdZs-_DikEjIw--fVCIAg=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJXEOsIFpwnnOxEUBzdZs-_DikEjIw--fVCIAg=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Kevin Rooke\",\n \"description\": - \"\"\n }\n },\n \"brandingSettings\": {\n \"channel\": - {\n \"title\": \"Kevin Rooke\"\n }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:38 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"discoveryVersion\": - \"v1\",\n \"fullyEncodeReservedExpansion\": true,\n \"auth\": {\n \"oauth2\": - {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n }\n - \ }\n }\n },\n \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"description\": \"The YouTube Data API v3 is an API that provides - access to YouTube data, such as videos, playlists, and channels.\",\n \"parameters\": - {\n \"$.xgafv\": {\n \"enum\": [\n \"1\",\n \"2\"\n - \ ],\n \"description\": \"V1 error format.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"v1 error format\",\n \"v2 - error format\"\n ],\n \"location\": \"query\"\n },\n \"key\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"prettyPrint\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Returns response with indentations and line breaks.\",\n - \ \"location\": \"query\",\n \"default\": \"true\"\n },\n \"access_token\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"OAuth access token.\"\n },\n \"uploadType\": {\n \"description\": - \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"oauth_token\": - {\n \"description\": \"OAuth 2.0 token for the current user.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"callback\": {\n \"location\": - \"query\",\n \"description\": \"JSONP\",\n \"type\": \"string\"\n - \ },\n \"alt\": {\n \"enumDescriptions\": [\n \"Responses - with Content-Type of application/json\",\n \"Media download with context-dependent - Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"json\",\n - \ \"media\",\n \"proto\"\n ],\n \"description\": \"Data - format for response.\",\n \"location\": \"query\",\n \"default\": - \"json\"\n },\n \"upload_protocol\": {\n \"description\": \"Upload - protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"quotaUser\": {\n \"description\": - \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"fields\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"Selector specifying which fields to include in a partial response.\"\n }\n - \ },\n \"name\": \"youtube\",\n \"canonicalName\": \"YouTube\",\n \"version\": - \"v3\",\n \"protocol\": \"rest\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"schemas\": {\n \"VideoAbuseReportReasonListResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n },\n \"description\": \"A list - of valid abuse reasons that are used with `video.ReportAbuse`.\",\n \"type\": - \"array\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The `visitorId` identifies the visitor.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoAbuseReportReasonListResponse\",\n - \ \"type\": \"object\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"type\": \"object\",\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the subscriber.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel ID of the subscriber.\"\n },\n \"thumbnails\": - {\n \"description\": \"Thumbnails for this subscriber.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The title of the subscriber.\"\n - \ }\n },\n \"description\": \"Basic details about a subscription's - subscriber including title, description, channel ID and thumbnails.\"\n },\n - \ \"ResourceId\": {\n \"type\": \"object\",\n \"description\": - \"A resource id is a generic reference that points to another YouTube resource.\",\n - \ \"id\": \"ResourceId\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the referred resource, if that resource - is a channel. This property is only present if the resourceId.kind value is - youtube#channel.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a video. This property - is only present if the resourceId.kind value is youtube#video.\"\n },\n - \ \"kind\": {\n \"description\": \"The type of the API resource.\",\n - \ \"type\": \"string\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"TokenPagination\": {\n \"type\": \"object\",\n - \ \"id\": \"TokenPagination\",\n \"properties\": {},\n \"description\": - \"Stub token pagination template to suppress results.\"\n },\n \"PlaylistItem\": - {\n \"id\": \"PlaylistItem\",\n \"description\": \"A *playlistItem* - resource identifies another resource, such as a video, that is included in - a playlist. In addition, the playlistItem resource contains details about - the included resource that pertain specifically to how that resource is used - in that playlist. YouTube uses playlists to identify special collections of - videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods. For example, if - a user gives a positive rating to a video, you would insert that video into - the liked videos playlist for that user's channel.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"contentDetails\": {\n \"description\": - \"The contentDetails object is included in the resource if the included item - is a YouTube video. The object contains additional information about the video.\",\n - \ \"$ref\": \"PlaylistItemContentDetails\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the playlist item, such as its title and position in the playlist.\",\n - \ \"$ref\": \"PlaylistItemSnippet\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\",\n \"$ref\": \"PlaylistItemStatus\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#playlistItem\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItem\\\".\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the playlist item.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"VideoAgeGating\": {\n \"id\": \"VideoAgeGating\",\n \"type\": - \"object\",\n \"properties\": {\n \"videoGameRating\": {\n \"description\": - \"Video game rating, if any.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ],\n \"type\": \"string\"\n },\n - \ \"restricted\": {\n \"description\": \"Age-restricted trailers. - For redband trailers and adult-rated video-games. Only users aged 18+ can - view the content. The the field is true the content is restricted to viewers - aged 18+. Otherwise The field won't be present.\",\n \"type\": \"boolean\"\n - \ },\n \"alcoholContent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether or not the video has alcoholic - beverage content. Only users of legal purchasing age in a particular country, - as identified by ICAP, can view the content.\"\n }\n }\n },\n - \ \"LanguageTag\": {\n \"id\": \"LanguageTag\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"MembershipsLevelListResponse\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsLevelListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"default\": - \"youtube#membershipsLevelListResponse\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n - \ },\n \"description\": \"A list of pricing levels offered - by a creator to the fans.\",\n \"type\": \"array\"\n }\n }\n - \ },\n \"Activity\": {\n \"id\": \"Activity\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the activity, including - the activity's type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#activity\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"type\": \"string\"\n },\n \"contentDetails\": {\n - \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetails\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\"\n }\n - \ },\n \"description\": \"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.\"\n },\n \"GeoPoint\": - {\n \"properties\": {\n \"latitude\": {\n \"type\": \"number\",\n - \ \"format\": \"double\",\n \"description\": \"Latitude in - degrees.\"\n },\n \"longitude\": {\n \"description\": - \"Longitude in degrees.\",\n \"format\": \"double\",\n \"type\": - \"number\"\n },\n \"altitude\": {\n \"format\": \"double\",\n - \ \"type\": \"number\",\n \"description\": \"Altitude above - the reference ellipsoid, in meters.\"\n }\n },\n \"id\": - \"GeoPoint\",\n \"type\": \"object\",\n \"description\": \"Geographical - coordinates of a point, in WGS84.\"\n },\n \"CommentListResponse\": - {\n \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"description\": - \"A list of comments that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentListResponse\"\n - \ }\n },\n \"id\": \"CommentListResponse\",\n \"type\": - \"object\"\n },\n \"MonitorStreamInfo\": {\n \"properties\": {\n - \ \"broadcastStreamDelayMs\": {\n \"type\": \"integer\",\n - \ \"description\": \"If you have set the enableMonitorStream property - to true, then this property determines the length of the live broadcast delay.\",\n - \ \"format\": \"uint32\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\"\n },\n - \ \"enableMonitorStream\": {\n \"type\": \"boolean\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"This value determines - whether the monitor stream is enabled for the broadcast. If the monitor stream - is enabled, then YouTube will broadcast the event content on a special stream - intended only for the broadcaster's consumption. The broadcaster can use the - stream to review the event content and also to identify the optimal times - to insert cuepoints. You need to set this value to true if you intend to have - a broadcast delay for your event. *Note:* This property cannot be updated - once the broadcast is in the testing or live state.\"\n }\n },\n - \ \"id\": \"MonitorStreamInfo\",\n \"type\": \"object\",\n \"description\": - \"Settings and Info of the monitor stream\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"description\": \"Details about a resource which was added to a - channel.\",\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was added to the channel.\"\n - \ }\n }\n },\n \"VideoCategoryListResponse\": {\n \"id\": - \"VideoCategoryListResponse\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#videoCategoryListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\",\n \"items\": {\n \"$ref\": - \"VideoCategory\"\n },\n \"type\": \"array\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoMonetizationDetails\": {\n \"id\": \"VideoMonetizationDetails\",\n - \ \"description\": \"Details about monetization of a YouTube Video.\",\n - \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The value of access indicates whether the video - can be monetized or not.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ContentRating\": {\n \"description\": \"Ratings schemes. - The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n - \ \"id\": \"ContentRating\",\n \"properties\": {\n \"eirinRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG-12\",\n \"R15+\",\n \"R18+\",\n - \ \"\"\n ],\n \"description\": \"The video's Eirin - (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n \"enum\": - [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ]\n },\n \"mocRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"description\": \"The - video's Ministerio de Cultura (Colombia) rating.\"\n },\n \"mdaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ],\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\",\n \"enum\": [\n - \ \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n - \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n - \ \"mdaR21\",\n \"mdaUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"bbfcRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n - \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n - \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n - \ \"bbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ],\n \"description\": \"The video's British - Board of Film Classification (BBFC) rating.\"\n },\n \"menaMpaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To - keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n - \ \"enum\": [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n - \ \"menaMpaaPg\",\n \"menaMpaaPg13\",\n \"menaMpaaR\",\n - \ \"menaMpaaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\"\n },\n \"fcoRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Hong Kong's Office for - Film, Newspaper and Article Administration.\",\n \"enum\": [\n \"fcoUnspecified\",\n - \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n - \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"pefilmRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in Peru.\"\n },\n \"cccRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's Consejo de Calificaci\xF3n - Cinematogr\xE1fica (Chile) rating.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Todo espectador\",\n \"6+ - Inconveniente - para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ]\n },\n - \ \"nfrcRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n - \ \"\"\n ]\n },\n \"rteRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs - \xC9ireann.\",\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ]\n },\n \"skfilmRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Slovakia.\",\n - \ \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n - \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n - \ \"skfilmUnrated\"\n ]\n },\n \"djctqRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos - (DJCQT - Brazil) rating.\",\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"kijkwijzerRating\": {\n \"enum\": - [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating - from the Nederlands Instituut voor de Classificatie van Audiovisuele Media - (Netherlands).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ]\n },\n \"cnaRating\": {\n \"description\": - \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\",\n \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"medietilsynetRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"description\": \"The video's rating from Medietilsynet, - the Norwegian Media Authority.\",\n \"type\": \"string\"\n },\n - \ \"oflcRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n - \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n - \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n - \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n - \ ],\n \"description\": \"The video's Office of Film and - Literature Classification (OFLC - New Zealand) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ]\n },\n \"grfilmRating\": {\n \"enum\": - [\n \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n - \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n - \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Greece.\"\n },\n \"mpaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"description\": \"The video's Motion Picture Association - of America (MPAA) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ]\n },\n - \ \"egfilmRating\": {\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Egypt.\"\n },\n \"russiaRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"russiaUnspecified\",\n \"russia0\",\n \"russia6\",\n - \ \"russia12\",\n \"russia16\",\n \"russia18\",\n - \ \"russiaUnrated\"\n ],\n \"description\": \"The - video's National Film Registry of the Russian Federation (MKRF - Russia) rating.\"\n - \ },\n \"djctqRatingReasons\": {\n \"type\": \"array\",\n - \ \"description\": \"Reasons that explain why the video received its - DJCQT (Brazil) rating.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ],\n \"enum\": [\n - \ \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ],\n \"type\": - \"string\"\n }\n },\n \"cceRating\": {\n \"enum\": - [\n \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n - \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n - \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"4\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\",\n \"14\"\n ],\n - \ \"type\": \"string\"\n },\n \"nmcRating\": {\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\",\n - \ \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ]\n - \ },\n \"cncRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Rating system in France - Commission de classification - cinematographique\"\n },\n \"fskRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's Freiwillige Selbstkontrolle - der Filmwirtschaft (FSK - Germany) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ]\n },\n \"nkclvRating\": - {\n \"description\": \"The video's rating from the Nacion\xE3lais - Kino centrs (National Film Centre of Latvia).\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ]\n },\n \"acbRating\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ]\n },\n \"csaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from France's - Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\",\n - \ \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ]\n - \ },\n \"fpbRatingReasons\": {\n \"type\": \"array\",\n - \ \"description\": \"Reasons that explain why the video received its - FPB (South Africa) rating.\",\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"South - Africa rating content descriptors.\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ]\n }\n },\n \"mekuRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from Finland's - Kansallinen Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n - \ \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"ilfilmRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Israel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"nbcRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from the Maldives National Bureau of Classification.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ]\n },\n - \ \"rcnofRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n - \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n - \ \"rcnofVi\",\n \"rcnofUnrated\"\n ]\n },\n - \ \"cicfRating\": {\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Commission de Contr\xF4le - des Films (Belgium).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n - \ ]\n },\n \"agcomRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ]\n },\n \"mpaatRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"description\": \"The rating - system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ]\n },\n - \ \"bfvcRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Thailand's Board of Film - and Video Censors.\"\n },\n \"kfcbRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Kenya - Film Classification Board.\",\n \"enum\": [\n \"kfcbUnspecified\",\n - \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n - \ \"kfcbR\",\n \"kfcbUnrated\"\n ]\n },\n - \ \"nbcplRating\": {\n \"description\": \"The video's rating - in Poland.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ]\n },\n \"mcstRating\": - {\n \"description\": \"The video's rating system for Vietnam - MCST\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"P\",\n \"0\",\n \"C13\",\n \"C16\",\n - \ \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n \"\"\n - \ ],\n \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ]\n },\n \"ifcoRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's Irish Film Classification - Office (IFCO - Ireland) rating. See the IFCO website for more information.\"\n - \ },\n \"fpbRating\": {\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ],\n \"type\": \"string\"\n - \ },\n \"fcbmRating\": {\n \"enum\": [\n \"fcbmUnspecified\",\n - \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n - \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n - \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n - \ ],\n \"description\": \"The video's rating from Malaysia's - Film Censorship Board.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG13\",\n \"P13\",\n \"18\",\n - \ \"18SX\",\n \"18PA\",\n \"18SG\",\n \"18PL\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"incaaRating\": {\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"description\": \"The video's INCAA - (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) rating.\",\n - \ \"type\": \"string\"\n },\n \"kmrbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ],\n \"description\": \"The video's Korea Media Rating - Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. The KMRB - rates videos in South Korea.\",\n \"type\": \"string\"\n },\n - \ \"nfvcbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"18\",\n \"RE\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ]\n },\n \"catvfrRating\": - {\n \"description\": \"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.\",\n - \ \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"ecbmctRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"Rating system in Turkey - Evaluation - and Classification Board of the Ministry of Culture and Tourism\",\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ]\n },\n \"cbfcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ],\n \"description\": \"The video's Central Board of Film - Certification (CBFC - India) rating.\",\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"chvrsRating\": {\n \"enum\": [\n - \ \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ],\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\"\n },\n - \ \"anatelRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"F\",\n \"I\",\n \"I-7\",\n \"I-10\",\n - \ \"I-12\",\n \"R\",\n \"A\",\n \"\"\n - \ ],\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Anatel (Asociaci\xF3n - Nacional de Televisi\xF3n) rating for Chilean television.\"\n },\n - \ \"mibacRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Ministero - dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n \"type\": - \"string\",\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ]\n },\n \"smaisRating\": - {\n \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in Iceland.\",\n \"type\": \"string\"\n },\n - \ \"fmocRating\": {\n \"description\": \"This property has - been deprecated. Use the contentDetails.contentRating.cncRating instead.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ]\n },\n \"mccaaRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n - \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n - \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n - \ \"mccaa18\",\n \"mccaaUnrated\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ]\n },\n - \ \"icaaRating\": {\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales - (ICAA - Spain) rating.\"\n },\n \"smsaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"enum\": [\n - \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Statens - medier\xE5d (Sweden's National Media Council).\",\n \"type\": \"string\"\n - \ },\n \"moctwRating\": {\n \"description\": \"The video's - rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n \"enum\": - [\n \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n - \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n - \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ],\n \"type\": \"string\"\n },\n \"resorteviolenciaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"description\": \"The video's rating in Venezuela.\",\n - \ \"type\": \"string\"\n },\n \"mccypRating\": {\n \"enum\": - [\n \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n - \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Danish - Film Institute's (Det Danske Filminstitut) Media Council for Children and - Young People.\",\n \"type\": \"string\"\n },\n \"rtcRating\": - {\n \"description\": \"The video's General Directorate of Radio, - Television and Cinematography (Mexico) rating.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ]\n },\n \"czfilmRating\": {\n \"description\": - \"The video's rating in the Czech Republic.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n - \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n - \ \"czfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ]\n },\n \"mtrcbRating\": - {\n \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Movie - and Television Review and Classification Board (Philippines).\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"bmukkRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ],\n - \ \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Austrian Board of - Media Classification (Bundesministerium f\xFCr Unterricht, Kunst und Kultur).\"\n - \ },\n \"ytRating\": {\n \"enum\": [\n \"ytUnspecified\",\n - \ \"ytAgeRestricted\"\n ],\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"lsfRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Indonesia's Lembaga Sensor - Film.\",\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n - \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n - \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ]\n },\n \"chfilmRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating in Switzerland.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ]\n },\n \"catvRating\": {\n \"description\": - \"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.\",\n \"enum\": - [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ]\n },\n \"cscfRating\": {\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AL\",\n \"A\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ]\n },\n - \ \"eefilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Pere\",\n \"L\",\n \"MS-6\",\n \"K-6\",\n - \ \"MS-12\",\n \"K-12\",\n \"K-14\",\n \"K-16\",\n - \ \"\"\n ],\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Estonia.\",\n - \ \"type\": \"string\"\n },\n \"tvpgRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n - \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n - \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"description\": \"The video's TV - Parental Guidelines (TVPG) rating.\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelSettings\": {\n \"id\": \"ChannelSettings\",\n - \ \"properties\": {\n \"defaultTab\": {\n \"type\": \"string\",\n - \ \"description\": \"Which content tab users should see when viewing - the channel.\"\n },\n \"featuredChannelsUrls\": {\n \"description\": - \"The list of featured channels.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"showBrowseView\": - {\n \"description\": \"Whether the tab to browse the videos should - be displayed.\",\n \"type\": \"boolean\"\n },\n \"keywords\": - {\n \"description\": \"Lists keywords associated with the channel, - comma-separated.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"moderateComments\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - user-submitted comments left on the channel page need to be approved by the - channel owner to be publicly visible.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the channel description.\"\n },\n \"unsubscribedTrailer\": {\n - \ \"description\": \"The trailer of the channel, for users that are - not subscribers.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the channel title.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"country\": {\n \"description\": \"The country - of the channel.\",\n \"type\": \"string\"\n },\n \"showRelatedChannels\": - {\n \"description\": \"Whether related channels should be proposed.\",\n - \ \"type\": \"boolean\"\n },\n \"profileColor\": {\n - \ \"type\": \"string\",\n \"description\": \"A prominent - color that can be rendered on this channel page.\"\n },\n \"featuredChannelsTitle\": - {\n \"type\": \"string\",\n \"description\": \"Title for - the featured channels tab.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Branding properties for the channel view.\"\n },\n - \ \"LiveStreamConfigurationIssue\": {\n \"properties\": {\n \"severity\": - {\n \"type\": \"string\",\n \"description\": \"How severe - this issue is to the stream.\",\n \"enum\": [\n \"info\",\n - \ \"warning\",\n \"error\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"type\": {\n \"description\": \"The kind of error happening.\",\n - \ \"enum\": [\n \"gopSizeOver\",\n \"gopSizeLong\",\n - \ \"gopSizeShort\",\n \"openGop\",\n \"badContainer\",\n - \ \"audioBitrateHigh\",\n \"audioBitrateLow\",\n \"audioSampleRate\",\n - \ \"bitrateHigh\",\n \"bitrateLow\",\n \"audioCodec\",\n - \ \"videoCodec\",\n \"noAudioStream\",\n \"noVideoStream\",\n - \ \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"reason\": - {\n \"description\": \"The short-form reason for this issue.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"The long-form description of the issue and how to resolve it.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveStreamConfigurationIssue\"\n },\n \"LiveStreamListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of live - streams that match the request criteria.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#liveStreamListResponse\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveStreamListResponse\"\n },\n \"PlaylistSnippet\": {\n \"type\": - \"object\",\n \"description\": \"Basic details about a playlist, including - title, description and thumbnails.\",\n \"id\": \"PlaylistSnippet\",\n - \ \"properties\": {\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the playlist was created.\",\n - \ \"format\": \"date-time\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the playlist's default title and description.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the playlist.\"\n - \ },\n \"title\": {\n \"description\": \"The playlist's - title.\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"The playlist's description.\",\n \"type\": \"string\"\n },\n - \ \"localized\": {\n \"$ref\": \"PlaylistLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"tags\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Keyword tags associated - with the playlist.\",\n \"type\": \"array\"\n },\n \"channelTitle\": - {\n \"description\": \"The channel title of the channel that the - video belongs to.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist. 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.\"\n },\n \"thumbnailVideoId\": - {\n \"description\": \"Note: if the playlist has a custom thumbnail, - this field will not be populated. The video id selected by the user that will - be used as the thumbnail of this playlist. This field defaults to the first - publicly viewable video in the playlist, if: 1. The user has never selected - a video to be the thumbnail of the playlist. 2. The user selects a video to - be the thumbnail, and then removes that video from the playlist. 3. The user - selects a non-owned video to be the thumbnail, but that video becomes private, - or gets deleted.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"VideoFileDetails\": {\n \"description\": \"Describes original - video file properties, including technical details about audio and video streams, - but also metadata information like content length, digitization time, or geotagging - information.\",\n \"type\": \"object\",\n \"properties\": {\n \"creationTime\": - {\n \"description\": \"The date and time when the uploaded video - file was created. The value is specified in ISO 8601 format. Currently, the - following ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive - time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \",\n \"type\": \"string\"\n },\n \"bitrateBps\": {\n - \ \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\"\n },\n \"fileName\": {\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\",\n \"type\": \"string\"\n },\n - \ \"durationMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The length of the uploaded video - in milliseconds.\"\n },\n \"audioStreams\": {\n \"type\": - \"array\",\n \"description\": \"A list of audio streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about an audio stream.\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ }\n },\n \"fileSize\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded file's size in bytes. This field - is present whether a video file or another type of file was uploaded.\",\n - \ \"format\": \"uint64\"\n },\n \"container\": {\n \"description\": - \"The uploaded video file's container format.\",\n \"type\": \"string\"\n - \ },\n \"videoStreams\": {\n \"description\": \"A list - of video streams contained in the uploaded video file. Each item in the list - contains detailed metadata about a video stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n },\n \"type\": - \"array\"\n },\n \"fileType\": {\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"Known video - file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an MP3 - file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - file's type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\"\n }\n },\n \"id\": - \"VideoFileDetails\"\n },\n \"WatchSettings\": {\n \"type\": \"object\",\n - \ \"id\": \"WatchSettings\",\n \"description\": \"Branding properties - for the watch. All deprecated.\",\n \"properties\": {\n \"featuredPlaylistId\": - {\n \"type\": \"string\",\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\"\n - \ },\n \"textColor\": {\n \"type\": \"string\",\n \"description\": - \"The background color for the video watch page's branded area.\"\n },\n - \ \"backgroundColor\": {\n \"type\": \"string\",\n \"description\": - \"The text color for the video watch page's branded area.\"\n }\n }\n - \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"properties\": - {\n \"banType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ],\n \"description\": \"The - type of ban.\",\n \"type\": \"string\"\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"The details of the user that was banned.\"\n },\n \"banDurationSeconds\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The duration of the ban. This property is only present if the banType is - temporary.\"\n }\n },\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"type\": \"object\"\n },\n \"MemberSnippet\": {\n \"type\": - \"object\",\n \"id\": \"MemberSnippet\",\n \"properties\": {\n \"creatorChannelId\": - {\n \"description\": \"The id of the channel that's offering memberships.\",\n - \ \"type\": \"string\"\n },\n \"membershipsDetails\": - {\n \"description\": \"Details about the user's membership.\",\n - \ \"$ref\": \"MembershipsDetails\"\n },\n \"memberDetails\": - {\n \"description\": \"Details about the member.\",\n \"$ref\": - \"ChannelProfileDetails\"\n }\n }\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ },\n \"memberLevelName\": {\n \"description\": \"The - name of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"gifterChannelId\": - {\n \"description\": \"The ID of the user that made the membership - gifting purchase. This matches the `snippet.authorChannelId` of the associated - membership gifting message.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n - \ \"ChannelTopicDetails\": {\n \"type\": \"object\",\n \"id\": - \"ChannelTopicDetails\",\n \"description\": \"Freebase topic information - related to the channel.\",\n \"properties\": {\n \"topicCategories\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Wikipedia - URLs that describe the channel's content.\"\n },\n \"topicIds\": - {\n \"description\": \"A list of Freebase topic IDs associated with - the channel. You can retrieve information about each topic using the Freebase - Topic API.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n }\n },\n \"ChannelStatistics\": - {\n \"id\": \"ChannelStatistics\",\n \"type\": \"object\",\n \"properties\": - {\n \"hiddenSubscriberCount\": {\n \"description\": \"Whether - or not the number of subscribers is shown for this user.\",\n \"type\": - \"boolean\"\n },\n \"viewCount\": {\n \"description\": - \"The number of times the channel has been viewed.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"videoCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of videos uploaded to the channel.\"\n },\n \"commentCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of comments for the channel.\",\n \"type\": \"string\"\n },\n - \ \"subscriberCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of subscribers that the channel has.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Statistics about - a channel: number of subscribers, number of videos in the channel, etc.\"\n - \ },\n \"ChannelAuditDetails\": {\n \"description\": \"The auditDetails - object encapsulates channel data that is relevant for YouTube Partners during - the audit process.\",\n \"properties\": {\n \"communityGuidelinesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel respects the community guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any unresolved claims.\"\n }\n },\n \"id\": - \"ChannelAuditDetails\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsComment\": - {\n \"description\": \"Information about a resource that received a comment.\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource associated with the comment.\"\n }\n },\n - \ \"id\": \"ActivityContentDetailsComment\",\n \"type\": \"object\"\n - \ },\n \"LiveChatNewSponsorDetails\": {\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"memberLevelName\": - {\n \"description\": \"The name of the Level that the viewer just - had joined. The Level names are defined by the YouTube channel offering the - Membership. In some situations this field isn't filled.\",\n \"type\": - \"string\"\n },\n \"isUpgrade\": {\n \"type\": \"boolean\",\n - \ \"description\": \"If the viewer just had upgraded from a lower - level. For viewers that were not members at the time of purchase, this field - is false.\"\n }\n }\n },\n \"PlaylistItemSnippet\": {\n - \ \"properties\": {\n \"videoOwnerChannelTitle\": {\n \"description\": - \"Channel title for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The id object contains information that can be - used to uniquely identify the resource that is included in the playlist as - the playlist item.\",\n \"$ref\": \"ResourceId\"\n },\n \"description\": - {\n \"description\": \"The item's description.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the item was added to the playlist.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The item's - title.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the user that added the item - to the playlist.\",\n \"type\": \"string\"\n },\n \"playlistId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"videoOwnerChannelId\": {\n \"description\": - \"Channel id for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist item. 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.\"\n },\n \"position\": {\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails. - Basic details of a YouTube Playlist item provided by the author. Next ID: - 15\",\n \"id\": \"PlaylistItemSnippet\"\n },\n \"AbuseType\": {\n - \ \"type\": \"object\",\n \"id\": \"AbuseType\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"VideoSnippet\": {\n \"description\": \"Basic details about - a video, including title, description, uploader, thumbnails and category.\",\n - \ \"properties\": {\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the video was uploaded.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the videos's default snippet.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the video. 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.\"\n },\n \"localized\": {\n \"$ref\": - \"VideoLocalization\",\n \"description\": \"Localized snippet selected - with the hl parameter. If no such localization exists, this field is populated - with the default snippet. (Read-only)\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The video's - title. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"categoryId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube video category associated with the video.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that the video was uploaded to.\",\n \"type\": \"string\"\n - \ },\n \"defaultAudioLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The video's - description. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"liveBroadcastContent\": {\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the video belongs to.\"\n },\n \"tags\": {\n \"description\": - \"A list of keyword tags associated with the video. Tags may contain spaces.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"id\": \"VideoSnippet\",\n - \ \"type\": \"object\"\n },\n \"PlaylistLocalization\": {\n \"id\": - \"PlaylistLocalization\",\n \"properties\": {\n \"title\": {\n - \ \"description\": \"The localized strings for playlist's title.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"The localized strings for playlist's description.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Playlist localization - setting\",\n \"type\": \"object\"\n },\n \"SearchResultSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The creation date - and time of the resource that the search result identifies.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The title of the search result.\"\n - \ },\n \"description\": {\n \"description\": \"A description - of the search result.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"channelTitle\": {\n - \ \"description\": \"The title of the channel that published the resource - that the search result identifies.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Basic details about a search result, including - title, description and thumbnails of the item referenced by the search result.\",\n - \ \"id\": \"SearchResultSnippet\"\n },\n \"TestItemTestItemSnippet\": - {\n \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\",\n - \ \"type\": \"object\"\n },\n \"VideoProcessingDetails\": {\n \"properties\": - {\n \"tagSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether keyword (tag) suggestions are available for the video. - Tags can be added to a video's metadata to make it easier for other users - to find the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether video editing suggestions, which might improve video - quality or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\",\n \"type\": \"string\"\n },\n \"processingIssuesAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether the video processing engine has generated suggestions that - might improve YouTube's ability to process the the video, warnings that explain - video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\"\n },\n \"fileDetailsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether file details are available for the uploaded video. You can - retrieve a video's file details by requesting the fileDetails part in your - videos.list() request.\"\n },\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n },\n - \ \"processingProgress\": {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"The processingProgress object contains information - about the progress YouTube has made in processing the video. The values are - really only relevant if the video's processing status is processing.\"\n },\n - \ \"processingStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"description\": \"The - video's processing status. This value indicates whether YouTube was able to - process the video or if the video is still being processed.\",\n \"type\": - \"string\"\n },\n \"processingFailureReason\": {\n \"type\": - \"string\",\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"type\": - \"object\",\n \"description\": \"Describes processing status and progress - and availability of some other Video resource parts.\",\n \"id\": \"VideoProcessingDetails\"\n - \ },\n \"LiveBroadcastListResponse\": {\n \"properties\": {\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"default\": - \"youtube#liveBroadcastListResponse\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of broadcasts that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n - \ }\n }\n },\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"type\": \"object\"\n },\n \"MemberListResponse\": {\n \"id\": - \"MemberListResponse\",\n \"properties\": {\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"description\": \"A list of members that - match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Member\"\n }\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#memberListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelLocalization\": - {\n \"id\": \"ChannelLocalization\",\n \"description\": \"Channel - localization setting\",\n \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for channel's title.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"The localized - strings for channel's description.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"I18nRegionListResponse\": - {\n \"type\": \"object\",\n \"id\": \"I18nRegionListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\",\n - \ \"items\": {\n \"$ref\": \"I18nRegion\"\n }\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#i18nRegionListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n - \ }\n }\n },\n \"ChannelStatus\": {\n \"properties\": - {\n \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"privacyStatus\": {\n \"description\": \"Privacy status - of the channel.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"longUploadsStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"isLinked\": {\n - \ \"type\": \"boolean\",\n \"description\": \"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.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ChannelStatus\",\n \"description\": - \"JSON template for the status part of a channel.\"\n },\n \"ImageSettings\": - {\n \"id\": \"ImageSettings\",\n \"properties\": {\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"bannerExternalUrl\": {\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\",\n - \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1280x360).\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\",\n - \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 640px by 70px banner image - that appears below the video player in the default view of the video watch - page. The URL for the image that appears above the top-left corner of the - video player. This is a 25-pixel-high image with a flexible width that cannot - exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerTvMediumImageUrl\": {\n \"description\": \"Banner - image. TV size medium resolution (1280x720).\",\n \"type\": \"string\"\n - \ },\n \"bannerMobileExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\"\n },\n \"bannerTabletImageUrl\": {\n \"description\": - \"Banner image. Tablet size (1707x283).\",\n \"type\": \"string\"\n - \ },\n \"bannerTabletLowImageUrl\": {\n \"description\": - \"Banner image. Tablet size low resolution (1138x188).\",\n \"type\": - \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size medium/high resolution (960x263).\",\n \"type\": - \"string\"\n },\n \"bannerTvLowImageUrl\": {\n \"description\": - \"Banner image. TV size low resolution (854x480).\",\n \"type\": - \"string\"\n },\n \"bannerTvHighImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. TV size high resolution - (1920x1080).\"\n },\n \"bannerTabletExtraHdImageUrl\": {\n \"description\": - \"Banner image. Tablet size extra high resolution (2560x424).\",\n \"type\": - \"string\"\n },\n \"bannerMobileLowImageUrl\": {\n \"description\": - \"Banner image. Mobile size low resolution (320x88).\",\n \"type\": - \"string\"\n },\n \"bannerTvImageUrl\": {\n \"description\": - \"Banner image. TV size extra high resolution (2120x1192).\",\n \"type\": - \"string\"\n },\n \"trackingImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL for a 1px by 1px tracking - pixel that can be used to collect statistics for views of the channel or video - pages.\"\n },\n \"bannerMobileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size (640x175).\"\n - \ },\n \"watchIconImageUrl\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Branding - properties for images associated with the channel.\"\n },\n \"VideoRecordingDetails\": - {\n \"description\": \"Recording information associated with the video.\",\n - \ \"properties\": {\n \"locationDescription\": {\n \"description\": - \"The text description of the location where the video was recorded.\",\n - \ \"type\": \"string\"\n },\n \"recordingDate\": {\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the video was recorded.\",\n \"type\": \"string\"\n - \ },\n \"location\": {\n \"description\": \"The geolocation - information associated with the video.\",\n \"$ref\": \"GeoPoint\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoRecordingDetails\"\n - \ },\n \"ChannelBrandingSettings\": {\n \"description\": \"Branding - properties of a YouTube channel.\",\n \"id\": \"ChannelBrandingSettings\",\n - \ \"properties\": {\n \"image\": {\n \"description\": - \"Branding properties for branding images.\",\n \"$ref\": \"ImageSettings\"\n - \ },\n \"hints\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n },\n \"description\": - \"Additional experimental branding properties.\"\n },\n \"channel\": - {\n \"description\": \"Branding properties for the channel view.\",\n - \ \"$ref\": \"ChannelSettings\"\n },\n \"watch\": {\n - \ \"description\": \"Branding properties for the watch page.\",\n - \ \"$ref\": \"WatchSettings\"\n }\n },\n \"type\": - \"object\"\n },\n \"AccessPolicy\": {\n \"id\": \"AccessPolicy\",\n - \ \"properties\": {\n \"allowed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"The value of allowed indicates whether the access - to the policy is allowed or denied by default.\"\n },\n \"exception\": - {\n \"description\": \"A list of region codes that identify countries - where the default policy do not apply.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"description\": \"Rights management policy for YouTube resources.\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"description\": \"Information that identifies the recommended resource.\",\n - \ \"id\": \"ActivityContentDetailsRecommendation\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"reason\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"reasonUnspecified\",\n \"videoFavorited\",\n - \ \"videoLiked\",\n \"videoWatched\"\n ],\n - \ \"description\": \"The reason that the resource is recommended to - the user.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"seedResourceId\": - {\n \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\",\n \"$ref\": - \"ResourceId\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the recommended resource.\"\n }\n }\n - \ },\n \"ActivityListResponse\": {\n \"type\": \"object\",\n \"id\": - \"ActivityListResponse\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Activity\"\n }\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"default\": \"youtube#activityListResponse\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoCategory\": - {\n \"type\": \"object\",\n \"description\": \"A *videoCategory* - resource identifies a category that has been or could be associated with uploaded - videos.\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the video category, including its title.\",\n \"$ref\": - \"VideoCategorySnippet\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n \"default\": - \"youtube#videoCategory\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video category.\"\n }\n },\n \"id\": \"VideoCategory\"\n - \ },\n \"MembershipsDurationAtLevel\": {\n \"properties\": {\n \"level\": - {\n \"type\": \"string\",\n \"description\": \"Pricing level - ID.\"\n },\n \"memberTotalDurationMonths\": {\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n },\n \"memberSince\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the user became a continuous member for the given level.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"MembershipsDurationAtLevel\"\n - \ },\n \"LiveChatMessageSnippet\": {\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"properties\": {\n \"displayMessage\": {\n \"description\": - \"Contains a string that can be displayed to the user. If this field is not - present the message is silent, at the moment only messages of type TOMBSTONE - and CHAT_ENDED_EVENT are silent.\",\n \"type\": \"string\"\n },\n - \ \"membershipGiftingDetails\": {\n \"description\": \"Details - about the Membership Gifting event, this is only set if the type is 'membershipGiftingEvent'.\",\n - \ \"$ref\": \"LiveChatMembershipGiftingDetails\"\n },\n \"liveChatId\": - {\n \"type\": \"string\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"fanFundingEventDetails\": - {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n - \ },\n \"memberMilestoneChatDetails\": {\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\",\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time when the message was orignally published.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"hasDisplayContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the message has display content that should be displayed to users.\"\n },\n - \ \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\",\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"type\": \"string\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"authorChannelId\": - {\n \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\",\n \"type\": \"string\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n - \ \"description\": \"Details about the New Member Announcement event, - this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" - is the new term for \\\"sponsor\\\".\"\n },\n \"superChatDetails\": - {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"textMessageDetails\": {\n \"$ref\": \"LiveChatTextMessageDetails\",\n - \ \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\"\n },\n \"superStickerDetails\": - {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Next - ID: 33\"\n },\n \"VideoFileDetailsVideoStream\": {\n \"description\": - \"Information about a video stream.\",\n \"properties\": {\n \"aspectRatio\": - {\n \"format\": \"double\",\n \"type\": \"number\",\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\"\n },\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The video - codec that the stream uses.\"\n },\n \"frameRateFps\": {\n \"format\": - \"double\",\n \"description\": \"The video stream's frame rate, in - frames per second.\",\n \"type\": \"number\"\n },\n \"rotation\": - {\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The amount that - YouTube needs to rotate the original source content to properly display the - video.\"\n },\n \"widthPixels\": {\n \"type\": \"integer\",\n - \ \"description\": \"The encoded video content's width in pixels. - You can calculate the video's encoding aspect ratio as width_pixels / height_pixels.\",\n - \ \"format\": \"uint32\"\n },\n \"heightPixels\": {\n - \ \"description\": \"The encoded video content's height in pixels.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"bitrateBps\": {\n \"format\": \"uint64\",\n \"description\": - \"The video stream's bitrate, in bits per second.\",\n \"type\": - \"string\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"LiveChatMessageAuthorDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageAuthorDetails\",\n \"properties\": {\n - \ \"isChatModerator\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is a moderator of the live chat.\"\n },\n \"isChatOwner\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is the owner of the live chat.\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"isVerified\": {\n \"description\": \"Whether the author's - identity has been verified by YouTube.\",\n \"type\": \"boolean\"\n - \ },\n \"isChatSponsor\": {\n \"description\": \"Whether - the author is a sponsor of the live chat.\",\n \"type\": \"boolean\"\n - \ },\n \"displayName\": {\n \"description\": \"The channel's - display name.\",\n \"type\": \"string\"\n },\n \"channelUrl\": - {\n \"description\": \"The channel's URL.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"type\": \"object\",\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"properties\": {\n \"blocked\": {\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"allowed\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\"\n }\n - \ }\n },\n \"LevelDetails\": {\n \"id\": \"LevelDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"displayName\": - {\n \"description\": \"The name that should be used when referring - to this level.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"CommentSnippetAuthorChannelId\": {\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"id\": \"CommentSnippetAuthorChannelId\"\n },\n \"LiveBroadcastSnippet\": - {\n \"properties\": {\n \"description\": {\n \"description\": - \"The broadcast's description. As with the title, you can set this field by - modifying the broadcast resource or by setting the description field of the - corresponding video resource.\",\n \"type\": \"string\"\n },\n - \ \"isDefaultBroadcast\": {\n \"description\": \"Indicates - whether this broadcast is the default broadcast. Internal only.\",\n \"type\": - \"boolean\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast was added to YouTube's live broadcast - schedule.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's title. Note that the broadcast - represents exactly one YouTube video. You can set this field by modifying - the broadcast resource or by setting the title field of the corresponding - video resource.\"\n },\n \"liveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the live chat for this - broadcast.\"\n },\n \"actualStartTime\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the broadcast actually started. This information - is only available once the broadcast's state is live.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the broadcast. For each nested object in this object, the key is the name - of the thumbnail image, and the value is an object that contains other information - about the thumbnail.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"actualEndTime\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast actually ended. This information is - only available once the broadcast's state is complete.\",\n \"format\": - \"date-time\"\n },\n \"scheduledEndTime\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - is scheduled to end.\",\n \"format\": \"date-time\"\n },\n - \ \"scheduledStartTime\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - is scheduled to start.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that is publishing the broadcast.\"\n }\n },\n - \ \"id\": \"LiveBroadcastSnippet\",\n \"description\": \"Basic broadcast - information.\",\n \"type\": \"object\"\n },\n \"CommentThreadSnippet\": - {\n \"id\": \"CommentThreadSnippet\",\n \"properties\": {\n \"canReply\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n },\n \"isPublic\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the thread (and therefore all its comments) is visible to all YouTube users.\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID of - the video the comments refer to, if any. No video_id implies a channel discussion - comment.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"totalReplyCount\": {\n \"description\": - \"The total number of replies (not including the top level comment).\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"topLevelComment\": {\n \"$ref\": \"Comment\",\n \"description\": - \"The top level comment of this thread.\"\n }\n },\n \"description\": - \"Basic details about a comment thread.\",\n \"type\": \"object\"\n },\n - \ \"VideoSuggestionsTagSuggestion\": {\n \"properties\": {\n \"tag\": - {\n \"type\": \"string\",\n \"description\": \"The keyword - tag suggested for the video.\"\n },\n \"categoryRestricts\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A set of video categories for which the tag is - relevant. You can use this information to display appropriate tag suggestions - based on the video category that the video uploader associates with the video. - By default, tag suggestions are relevant for all categories if there are no - restricts defined for the keyword.\",\n \"type\": \"array\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A single tag - suggestion with it's relevance information.\",\n \"id\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"ChannelSectionSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a channel section, including title, style and position.\",\n - \ \"properties\": {\n \"type\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of the channel section.\"\n },\n \"localized\": {\n - \ \"$ref\": \"ChannelSectionLocalization\",\n \"description\": - \"Localized title, read-only.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel section's default title and description.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the channel section.\",\n \"type\": \"string\"\n - \ },\n \"style\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The style of the channel section.\"\n },\n - \ \"title\": {\n \"description\": \"The channel section's title - for multiple_playlists and multiple_channels.\",\n \"type\": \"string\"\n - \ },\n \"position\": {\n \"type\": \"integer\",\n \"description\": - \"The position of the channel section in the channel.\",\n \"format\": - \"uint32\"\n }\n },\n \"id\": \"ChannelSectionSnippet\"\n - \ },\n \"VideoStatistics\": {\n \"id\": \"VideoStatistics\",\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\",\n \"type\": \"object\",\n \"properties\": {\n \"favoriteCount\": - {\n \"description\": \"The number of users who currently have the - video marked as a favorite video.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"viewCount\": {\n \"description\": - \"The number of times the video has been viewed.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"dislikeCount\": {\n - \ \"description\": \"The number of users who have indicated that they - disliked the video by giving it a negative rating.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"likeCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of users who have indicated that they liked the video by giving it a positive - rating.\",\n \"format\": \"uint64\"\n },\n \"commentCount\": - {\n \"description\": \"The number of comments for the video.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n }\n - \ }\n },\n \"LiveChatBan\": {\n \"description\": \"A `__liveChatBan__` - resource represents a ban for a YouTube live chat.\",\n \"id\": \"LiveChatBan\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"default\": - \"youtube#liveChatBan\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the ban.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoLiveStreamingDetails\": - {\n \"type\": \"object\",\n \"description\": \"Details about the - live streaming metadata.\",\n \"properties\": {\n \"actualEndTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast actually ended. This - value will not be available until the broadcast is over.\"\n },\n \"actualStartTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\"\n },\n - \ \"activeLiveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the currently active live chat attached to this video. This field - is filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\"\n },\n \"scheduledStartTime\": {\n - \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast is scheduled to begin.\"\n },\n \"scheduledEndTime\": - {\n \"type\": \"string\",\n \"description\": \"The time - that the broadcast is scheduled to end. If the value is empty or the property - is not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"format\": \"date-time\"\n },\n \"concurrentViewers\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n }\n },\n - \ \"id\": \"VideoLiveStreamingDetails\"\n },\n \"ChannelContentDetails\": - {\n \"properties\": {\n \"relatedPlaylists\": {\n \"type\": - \"object\",\n \"properties\": {\n \"likes\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n },\n \"watchHistory\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"watchLater\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s watch later playlist. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n },\n \"uploads\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s uploaded videos. Use the videos.insert method to upload new videos - and the videos.delete method to delete previously uploaded videos.\",\n \"type\": - \"string\"\n },\n \"favorites\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n }\n }\n - \ }\n },\n \"description\": \"Details about the content of - a channel.\",\n \"type\": \"object\",\n \"id\": \"ChannelContentDetails\"\n - \ },\n \"ActivityContentDetailsUpload\": {\n \"id\": \"ActivityContentDetailsUpload\",\n - \ \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Information about the uploaded video.\"\n },\n \"ChannelProfileDetails\": - {\n \"properties\": {\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The channel's display name.\"\n - \ },\n \"channelUrl\": {\n \"description\": \"The channel's - URL.\",\n \"type\": \"string\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelProfileDetails\"\n - \ },\n \"LiveChatMembershipGiftingDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"giftMembershipsLevelName\": {\n \"description\": - \"The name of the level of the gift memberships purchased by the user. The - Level names are defined by the YouTube channel offering the Membership. In - some situations this field isn't filled.\",\n \"type\": \"string\"\n - \ },\n \"giftMembershipsCount\": {\n \"type\": \"integer\",\n - \ \"description\": \"The number of gift memberships purchased by the - user.\",\n \"format\": \"int32\"\n }\n },\n \"id\": - \"LiveChatMembershipGiftingDetails\"\n },\n \"ThirdPartyLink\": {\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the status of the link.\",\n \"$ref\": \"ThirdPartyLinkStatus\"\n - \ },\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"default\": \"youtube#thirdPartyLink\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the third- party account link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - *third party account link* resource represents a link between a YouTube account - or a channel and an account on a third-party service.\",\n \"id\": \"ThirdPartyLink\"\n - \ },\n \"Member\": {\n \"description\": \"A *member* resource represents - a member for a YouTube channel. A member provides recurring monetary support - to a creator and receives special benefits.\",\n \"id\": \"Member\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"default\": \"youtube#member\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the member.\",\n \"$ref\": \"MemberSnippet\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"VideoSuggestions\": - {\n \"type\": \"object\",\n \"properties\": {\n \"editorSuggestions\": - {\n \"items\": {\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Picture brightness levels seem off and could be corrected.\",\n - \ \"The video appears shaky and could be stabilized.\",\n \"Margins - (mattes) detected around the picture could be cropped.\",\n \"The - audio track appears silent and could be swapped with a better quality one.\"\n - \ ]\n },\n \"type\": \"array\",\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\"\n },\n \"tagSuggestions\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoSuggestionsTagSuggestion\"\n },\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\"\n },\n \"processingErrors\": {\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\",\n \"items\": {\n \"enumDescriptions\": [\n - \ \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"audioFile\",\n \"imageFile\",\n - \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n - \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n },\n \"type\": \"array\"\n },\n \"processingWarnings\": - {\n \"items\": {\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ]\n },\n \"type\": - \"array\",\n \"description\": \"A list of reasons why YouTube may - have difficulty transcoding the uploaded video or that might result in an - erroneous transcoding. These warnings are generated before YouTube actually - processes the uploaded video file. In addition, they identify issues that - are unlikely to cause the video processing to fail but that might cause problems - such as sync issues, video artifacts, or a missing audio track.\"\n },\n - \ \"processingHints\": {\n \"items\": {\n \"enum\": - [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"The MP4 file is not streamable, - this will slow down the processing. MOOV atom was not found at the beginning - of the file.\",\n \"Probably a better quality version of the - video exists. The video has wide screen aspect ratio, but is not an HD video.\",\n - \ \"Uploaded video is spherical video.\",\n \"Uploaded - video has spatial audio.\",\n \"Uploaded video is VR video.\",\n - \ \"Uploaded video is HDR video.\"\n ]\n },\n - \ \"description\": \"A list of suggestions that may improve YouTube's - ability to process the video.\",\n \"type\": \"array\"\n }\n - \ },\n \"id\": \"VideoSuggestions\",\n \"description\": \"Specifies - suggestions on how to improve video content, including encoding hints, tag - suggestions, and editor suggestions.\"\n },\n \"ChannelConversionPings\": - {\n \"id\": \"ChannelConversionPings\",\n \"description\": \"The - conversionPings object encapsulates information about conversion pings that - need to be respected by the channel.\",\n \"properties\": {\n \"pings\": - {\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ },\n \"type\": \"array\",\n \"description\": \"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.\"\n }\n },\n \"type\": \"object\"\n },\n \"Cuepoint\": - {\n \"properties\": {\n \"insertionOffsetTimeMs\": {\n \"type\": - \"string\",\n \"description\": \"The time when the cuepoint should - be inserted by offset to the broadcast actual start time.\",\n \"format\": - \"int64\"\n },\n \"id\": {\n \"description\": \"The - identifier for cuepoint resource.\",\n \"type\": \"string\"\n },\n - \ \"walltimeMs\": {\n \"description\": \"The wall clock time - at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"durationSecs\": {\n \"type\": \"integer\",\n - \ \"description\": \"The duration of this cuepoint.\",\n \"format\": - \"uint32\"\n },\n \"cueType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Note that there may be a 5-second end-point resolution issue. For instance, - if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\",\n \"type\": \"object\",\n - \ \"id\": \"Cuepoint\"\n },\n \"PlaylistItemStatus\": {\n \"description\": - \"Information about the playlist item's privacy status.\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"This resource's privacy status.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\"\n }\n },\n \"id\": \"PlaylistItemStatus\",\n \"type\": - \"object\"\n },\n \"LiveChatMessageDeletedDetails\": {\n \"properties\": - {\n \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"type\": - \"object\"\n },\n \"I18nRegion\": {\n \"id\": \"I18nRegion\",\n - \ \"type\": \"object\",\n \"description\": \"A *i18nRegion* resource - identifies a region where YouTube is available.\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegion\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the i18n region.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the i18n region, such as region code and human-readable name.\",\n \"$ref\": - \"I18nRegionSnippet\"\n }\n }\n },\n \"Playlist\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistContentDetails\",\n \"description\": \"The contentDetails - object contains information like video count.\"\n },\n \"status\": - {\n \"description\": \"The status object contains status information - for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the playlist.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"default\": \"youtube#playlist\"\n },\n \"snippet\": - {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": \"The - snippet object contains basic details about the playlist, such as its title - and description.\"\n },\n \"player\": {\n \"$ref\": - \"PlaylistPlayer\",\n \"description\": \"The player object contains - information that you would use to play the playlist in an embedded player.\"\n - \ },\n \"localizations\": {\n \"description\": \"Localizations - for different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"PlaylistLocalization\"\n },\n \"type\": \"object\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"Playlist\",\n \"description\": - \"A *playlist* resource represents a YouTube playlist. A playlist is a collection - of videos that can be viewed sequentially and shared with other users. A playlist - can contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\"\n },\n \"ChannelSectionListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - ChannelSections that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"ChannelSection\"\n }\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"id\": \"ChannelSectionListResponse\",\n \"type\": \"object\"\n - \ },\n \"SearchListResponse\": {\n \"type\": \"object\",\n \"id\": - \"SearchListResponse\",\n \"properties\": {\n \"regionCode\": - {\n \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"SearchResult\"\n },\n \"description\": \"Pagination information - for token pagination.\",\n \"type\": \"array\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"default\": \"youtube#searchListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n }\n }\n },\n \"LiveChatModerator\": - {\n \"id\": \"LiveChatModerator\",\n \"description\": \"A *liveChatModerator* - resource represents a moderator for a YouTube live chat. A chat moderator - has the ability to ban/unban users from a chat, remove message, etc.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveChatModerator\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveChatModeratorSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the moderator.\"\n }\n }\n },\n \"ActivityContentDetailsSubscription\": - {\n \"id\": \"ActivityContentDetailsSubscription\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that the user subscribed - to.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Information about a channel that a user - subscribed to.\"\n },\n \"LiveChatMessageListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n - \ }\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#liveChatMessageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pollingIntervalMillis\": {\n \"type\": \"integer\",\n - \ \"description\": \"The amount of time the client should wait before - polling again.\",\n \"format\": \"uint32\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"offlineAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the underlying - stream went offline.\"\n }\n },\n \"id\": \"LiveChatMessageListResponse\"\n - \ },\n \"VideoPlayer\": {\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\"\n },\n \"embedWidth\": - {\n \"format\": \"int64\",\n \"description\": \"The embed - width\",\n \"type\": \"string\"\n },\n \"embedHeight\": - {\n \"type\": \"string\",\n \"format\": \"int64\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoPlayer\",\n \"description\": - \"Player to be used for a video playback.\"\n },\n \"InvideoTiming\": - {\n \"properties\": {\n \"durationMs\": {\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"type\": {\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n - \ \"description\": \"Describes a timing type. If the value is offsetFromStart, - then the offsetMs field represents an offset from the start of the video. - If the value is offsetFromEnd, then the offsetMs field represents an offset - from the end of the video.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"offsetMs\": - {\n \"description\": \"Defines the time at which the promotion will - appear. Depending on the value of type the value of the offsetMs field will - represent a time offset from the start or from the end of the video, expressed - in milliseconds.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\",\n \"id\": - \"InvideoTiming\"\n },\n \"ChannelToStoreLinkDetails\": {\n \"properties\": - {\n \"storeUrl\": {\n \"description\": \"Landing page of the - store.\",\n \"type\": \"string\"\n },\n \"merchantId\": - {\n \"description\": \"Google Merchant Center id of the store.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"storeName\": {\n \"type\": \"string\",\n \"description\": - \"Name of the store.\"\n }\n },\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Information specific - to a store on a merchandising platform linked to a YouTube channel.\"\n },\n - \ \"Entity\": {\n \"type\": \"object\",\n \"properties\": {\n - \ \"url\": {\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\"\n },\n \"typeId\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"Entity\"\n },\n \"InvideoBranding\": - {\n \"id\": \"InvideoBranding\",\n \"properties\": {\n \"imageBytes\": - {\n \"format\": \"byte\",\n \"type\": \"string\",\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\"\n - \ },\n \"imageUrl\": {\n \"description\": \"The url - of the uploaded image. Only used in apiary to api communication.\",\n \"type\": - \"string\"\n },\n \"position\": {\n \"description\": - \"The spatial position within the video where the branding watermark will - be displayed.\",\n \"$ref\": \"InvideoPosition\"\n },\n \"targetChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The channel - to which this branding links. If not present it defaults to the current channel.\"\n - \ },\n \"timing\": {\n \"$ref\": \"InvideoTiming\",\n - \ \"description\": \"The temporal position within the video where - watermark will be displayed.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"LINT.IfChange Describes an invideo branding.\"\n - \ },\n \"ChannelSection\": {\n \"type\": \"object\",\n \"id\": - \"ChannelSection\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"ChannelSectionSnippet\",\n \"description\": \"The snippet object - contains basic details about the channel section, such as its type, style - and title.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ChannelSectionContentDetails\",\n \"description\": \"The contentDetails - object contains details about the channel section content, such as a list - of playlists or channels featured in the section.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel section.\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"description\": \"Localizations - for different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n }\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#channelSection\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSection\\\".\",\n \"type\": \"string\"\n - \ },\n \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n - \ \"description\": \"The targeting object contains basic targeting - settings about the channel section.\"\n }\n }\n },\n \"ActivityContentDetailsFavorite\": - {\n \"description\": \"Information about a video that was marked as a - favorite video.\",\n \"id\": \"ActivityContentDetailsFavorite\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that was marked as - a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"I18nLanguage\": {\n \"type\": - \"object\",\n \"description\": \"An *i18nLanguage* resource identifies - a UI language currently supported by YouTube.\",\n \"properties\": {\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the i18n language.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"I18nLanguageSnippet\",\n \"description\": \"The snippet object - contains basic details about the i18n language, such as language code and - human-readable name.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n \"default\": - \"youtube#i18nLanguage\"\n }\n },\n \"id\": \"I18nLanguage\"\n - \ },\n \"ActivityContentDetailsBulletin\": {\n \"description\": - \"Details about a channel bulletin post.\",\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource associated with a bulletin post. @mutable youtube.activities.insert\",\n - \ \"$ref\": \"ResourceId\"\n }\n }\n },\n \"LiveStream\": - {\n \"type\": \"object\",\n \"properties\": {\n \"status\": - {\n \"description\": \"The status object contains information about - live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n },\n - \ \"cdn\": {\n \"$ref\": \"CdnSettings\",\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n },\n - \ \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the stream.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveStream\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#liveStream\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveStreamSnippet\",\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\"\n }\n },\n \"description\": - \"A live stream describes a live ingestion point.\",\n \"id\": \"LiveStream\"\n - \ },\n \"IngestionInfo\": {\n \"description\": \"Describes information - necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"properties\": - {\n \"streamName\": {\n \"type\": \"string\",\n \"description\": - \"The stream name that YouTube assigns to the video stream.\"\n },\n - \ \"backupIngestionAddress\": {\n \"type\": \"string\",\n \"description\": - \"The backup ingestion URL that you should use to stream video to YouTube. - You have the option of simultaneously streaming the content that you are sending - to the ingestionAddress to this URL.\"\n },\n \"rtmpsBackupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of backupIngestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"rtmpsIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of ingestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"ingestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The primary - ingestion URL that you should use to stream video to YouTube. You must stream - video to this URL. Depending on which application or tool you use to encode - your video stream, you may need to enter the stream URL and stream name separately - or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \"\n }\n },\n \"type\": \"object\",\n \"id\": \"IngestionInfo\"\n - \ },\n \"LocalizedProperty\": {\n \"id\": \"LocalizedProperty\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"defaultLanguage\": - {\n \"description\": \"The language of the default property.\",\n - \ \"$ref\": \"LanguageTag\"\n },\n \"default\": {\n - \ \"type\": \"string\"\n },\n \"localized\": {\n \"items\": - {\n \"$ref\": \"LocalizedString\"\n },\n \"type\": - \"array\"\n }\n }\n },\n \"PlaylistPlayer\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistPlayer\",\n \"properties\": {\n - \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\"\n - \ }\n }\n },\n \"ActivityContentDetails\": {\n \"properties\": - {\n \"favorite\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsFavorite\"\n },\n \"upload\": {\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"social\": {\n \"$ref\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"The social object contains details about a social - network post. This property is only present if the snippet.type is social.\"\n - \ },\n \"promotedItem\": {\n \"description\": \"The - promotedItem object contains details about a resource which is being promoted. - This property is only present if the snippet.type is promotedItem.\",\n \"$ref\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"channelItem\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"comment\": {\n \"description\": \"The comment - object contains information about a resource that received a comment. This - property is only present if the snippet.type is comment.\",\n \"$ref\": - \"ActivityContentDetailsComment\"\n },\n \"bulletin\": {\n \"description\": - \"The bulletin object contains details about a channel bulletin post. This - object is only present if the snippet.type is bulletin.\",\n \"$ref\": - \"ActivityContentDetailsBulletin\"\n },\n \"recommendation\": - {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n \"description\": - \"The recommendation object contains information about a recommended resource. - This property is only present if the snippet.type is recommendation.\"\n },\n - \ \"like\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsLike\"\n },\n \"playlistItem\": {\n - \ \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\",\n \"$ref\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"subscription\": {\n \"description\": \"The - subscription object contains information about a channel that a user subscribed - to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n }\n },\n - \ \"id\": \"ActivityContentDetails\",\n \"type\": \"object\",\n \"description\": - \"Details about the content of an activity: the video that was shared, the - channel that was subscribed to, etc.\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"properties\": {\n \"tier\": {\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this Super Chat event.\",\n \"type\": - \"string\"\n },\n \"amountMicros\": {\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"amountDisplayString\": {\n \"type\": \"string\",\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\"\n - \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatSuperChatDetails\"\n },\n \"ActivityContentDetailsLike\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"Information about a resource that received a positive - (like) rating.\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the rated resource.\"\n }\n }\n },\n - \ \"SubscriptionContentDetails\": {\n \"id\": \"SubscriptionContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"totalItemCount\": - {\n \"description\": \"The approximate number of items that the subscription - points to.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"activityType\": {\n \"description\": \"The - type of activity this subscription is for (only uploads, everything).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"newItemCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The number of new items in the subscription since its content was last read.\",\n - \ \"type\": \"integer\"\n }\n },\n \"description\": - \"Details about the content to witch a subscription refers.\"\n },\n \"I18nLanguageSnippet\": - {\n \"type\": \"object\",\n \"id\": \"I18nLanguageSnippet\",\n \"properties\": - {\n \"hl\": {\n \"description\": \"A short BCP-47 code that - uniquely identifies a language.\",\n \"type\": \"string\"\n },\n - \ \"name\": {\n \"type\": \"string\",\n \"description\": - \"The human-readable name of the language in the language itself.\"\n }\n - \ },\n \"description\": \"Basic details about an i18n language, such - as language code and human-readable name.\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"retractedMessageId\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"AbuseReport\": {\n \"properties\": {\n \"relatedEntities\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n }\n },\n \"description\": {\n \"type\": - \"string\"\n },\n \"abuseTypes\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"AbuseType\"\n }\n - \ },\n \"subject\": {\n \"$ref\": \"Entity\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"AbuseReport\"\n },\n - \ \"CaptionListResponse\": {\n \"type\": \"object\",\n \"id\": - \"CaptionListResponse\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#captionListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Caption\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of captions that match the request criteria.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelBannerResource\": {\n - \ \"id\": \"ChannelBannerResource\",\n \"properties\": {\n \"url\": - {\n \"description\": \"The URL of this banner image.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelBannerResource\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A channel - banner returned as the response to a channel_banner.insert call.\"\n },\n - \ \"VideoFileDetailsAudioStream\": {\n \"id\": \"VideoFileDetailsAudioStream\",\n - \ \"description\": \"Information about an audio stream.\",\n \"type\": - \"object\",\n \"properties\": {\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"description\": \"The audio stream's bitrate, in bits - per second.\",\n \"type\": \"string\"\n },\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The audio - codec that the stream uses.\"\n },\n \"channelCount\": {\n \"description\": - \"The number of audio channels that the stream contains.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"vendor\": - {\n \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\",\n \"type\": - \"string\"\n }\n }\n },\n \"Comment\": {\n \"description\": - \"A *comment* represents a single YouTube comment.\",\n \"type\": \"object\",\n - \ \"id\": \"Comment\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#comment\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#comment\\\".\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment.\",\n \"$ref\": - \"CommentSnippet\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoContentDetails\": {\n \"description\": - \"Details about the content of a YouTube Video.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"contentRating\": {\n \"description\": - \"Specifies the ratings that the video received under various rating schemes.\",\n - \ \"$ref\": \"ContentRating\"\n },\n \"projection\": - {\n \"description\": \"Specifies the projection format of the video.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"rectangular\",\n - \ \"360\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ]\n },\n \"definition\": {\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\",\n \"enumDescriptions\": - [\n \"sd\",\n \"hd\"\n ],\n \"enum\": - [\n \"sd\",\n \"hd\"\n ],\n \"type\": - \"string\"\n },\n \"hasCustomThumbnail\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the video uploader - has provided a custom thumbnail image for the video. This property is only - visible to the video uploader.\"\n },\n \"licensedContent\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of is_license_content indicates whether the video is licensed content.\"\n - \ },\n \"dimension\": {\n \"description\": \"The value - of dimension indicates whether the video is available in 3D or in 2D.\",\n - \ \"type\": \"string\"\n },\n \"regionRestriction\": - {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\"\n },\n - \ \"duration\": {\n \"description\": \"The length of the video. - The tag value is an ISO 8601 duration in the format PT#M#S, in which the letters - PT indicate that the value specifies a period of time, and the letters M and - S refer to length in minutes and seconds, respectively. The # characters preceding - the M and S letters are both integers that specify the number of minutes (or - seconds) of the video. For example, a value of PT15M51S indicates that the - video is 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n - \ },\n \"countryRestriction\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\"\n },\n - \ \"caption\": {\n \"type\": \"string\",\n \"description\": - \"The value of captions indicates whether the video has captions or not.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"true\",\n \"false\"\n ]\n - \ }\n },\n \"id\": \"VideoContentDetails\"\n },\n \"Channel\": - {\n \"description\": \"A *channel* resource contains information about - a YouTube channel.\",\n \"properties\": {\n \"conversionPings\": - {\n \"$ref\": \"ChannelConversionPings\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\"\n },\n \"id\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#channel\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channel\\\".\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object encapsulates information - about the channel's content.\",\n \"$ref\": \"ChannelContentDetails\"\n - \ },\n \"brandingSettings\": {\n \"description\": \"The - brandingSettings object encapsulates information about the branding of the - channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"auditDetails\": {\n \"description\": - \"The auditionDetails object encapsulates channel data that is relevant for - YouTube Partners during the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n - \ },\n \"status\": {\n \"description\": \"The status - object encapsulates information about the privacy status of the channel.\",\n - \ \"$ref\": \"ChannelStatus\"\n },\n \"snippet\": {\n - \ \"description\": \"The snippet object contains basic details about - the channel, such as its title, description, and thumbnail images.\",\n \"$ref\": - \"ChannelSnippet\"\n },\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n }\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"contentOwnerDetails\": {\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ }\n },\n \"id\": \"Channel\",\n \"type\": \"object\"\n - \ },\n \"VideoGetRatingResponse\": {\n \"id\": \"VideoGetRatingResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"description\": \"A list of ratings - that match the request criteria.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoGetRatingResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n - \ }\n }\n },\n \"I18nLanguageListResponse\": {\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of supported i18n languages. In this map, - the i18n language ID is the map key, and its value is the corresponding i18nLanguage - resource.\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n - \ }\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"I18nLanguageListResponse\"\n },\n \"MembershipsLevelSnippet\": {\n - \ \"type\": \"object\",\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"properties\": {\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n },\n \"levelDetails\": {\n \"$ref\": \"LevelDetails\",\n - \ \"description\": \"Details about the pricing level.\"\n }\n - \ }\n },\n \"ThumbnailSetResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thumbnailSetResponse\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"ThumbnailDetails\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of thumbnails.\"\n }\n - \ },\n \"id\": \"ThumbnailSetResponse\"\n },\n \"LiveBroadcast\": - {\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the broadcast.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n - \ },\n \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"The statistics object contains info about the - event's current stats. These include concurrent viewers and total chat count. - Statistics can change (in either direction) during the lifetime of an event. - Statistics are only returned while the event is live.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the event, including its title, description, - start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"default\": \"youtube#liveBroadcast\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - *liveBroadcast* resource represents an event that will be streamed, via live - video, on YouTube.\",\n \"id\": \"LiveBroadcast\"\n },\n \"PlaylistItemContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistItemContentDetails\",\n - \ \"properties\": {\n \"startAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\",\n \"type\": \"string\"\n },\n - \ \"endAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify a video. To retrieve the video resource, - set the id query parameter to this value in your API request.\",\n \"type\": - \"string\"\n },\n \"videoPublishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the video was published to YouTube.\"\n },\n - \ \"note\": {\n \"type\": \"string\",\n \"description\": - \"A user-generated note for this item.\"\n }\n }\n },\n \"SuperStickerMetadata\": - {\n \"id\": \"SuperStickerMetadata\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"altText\": {\n \"type\": \"string\",\n - \ \"description\": \"Internationalized alt text that describes the - sticker image and any animation associated with it.\"\n },\n \"altTextLanguage\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the alt text is returned.\"\n },\n - \ \"stickerId\": {\n \"description\": \"Unique identifier of - the Super Sticker. This is a shorter form of the alt_text that includes pack - name and a recognizable characteristic of the sticker.\",\n \"type\": - \"string\"\n }\n }\n },\n \"PlaylistContentDetails\": {\n - \ \"type\": \"object\",\n \"id\": \"PlaylistContentDetails\",\n \"properties\": - {\n \"itemCount\": {\n \"type\": \"integer\",\n \"description\": - \"The number of videos in the playlist.\",\n \"format\": \"uint32\"\n - \ }\n }\n },\n \"PlaylistListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of playlists that match the request - criteria\",\n \"items\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"type\": \"array\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlistListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"PlaylistListResponse\"\n },\n - \ \"ChannelContentOwnerDetails\": {\n \"id\": \"ChannelContentOwnerDetails\",\n - \ \"properties\": {\n \"timeLinked\": {\n \"description\": - \"The date and time when the channel was linked to the content owner.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"contentOwner\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the content owner linked to the channel.\"\n }\n },\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsPlaylistItem\": {\n \"type\": - \"object\",\n \"description\": \"Information about a new playlist item.\",\n - \ \"properties\": {\n \"playlistId\": {\n \"type\": \"string\",\n - \ \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information about the resource that was added to the playlist.\"\n },\n - \ \"playlistItemId\": {\n \"description\": \"ID of the item - within the playlist.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ActivityContentDetailsPlaylistItem\"\n },\n \"LiveChatSuperStickerDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made.\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"Information about the Super Sticker.\",\n - \ \"$ref\": \"SuperStickerMetadata\"\n },\n \"tier\": - {\n \"description\": \"The tier in which the amount belongs. Lower - amounts belong to lower tiers. The lowest tier is 1.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n }\n },\n \"id\": - \"LiveChatSuperStickerDetails\"\n },\n \"ThirdPartyLinkStatus\": {\n - \ \"type\": \"object\",\n \"id\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The third-party link status object contains information about the status - of the link.\",\n \"properties\": {\n \"linkStatus\": {\n \"enum\": - [\n \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n }\n },\n \"VideoAbuseReport\": {\n \"type\": - \"object\",\n \"properties\": {\n \"reasonId\": {\n \"type\": - \"string\",\n \"description\": \"The high-level, or primary, reason - that the content is abusive. The value is an abuse report reason ID.\"\n },\n - \ \"secondaryReasonId\": {\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\",\n \"type\": \"string\"\n },\n \"comments\": - {\n \"type\": \"string\",\n \"description\": \"Additional - comments regarding the abuse report.\"\n },\n \"videoId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n },\n \"language\": - {\n \"description\": \"The language that the content was viewed in.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoAbuseReport\"\n - \ },\n \"SubscriptionListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"default\": - \"youtube#subscriptionListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Subscription\"\n },\n \"description\": - \"A list of subscriptions that match the request criteria.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"SubscriptionListResponse\"\n - \ },\n \"ThirdPartyLinkListResponse\": {\n \"id\": \"ThirdPartyLinkListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"type\": \"array\"\n }\n }\n },\n \"LiveChatModeratorListResponse\": - {\n \"id\": \"LiveChatModeratorListResponse\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"description\": \"A list of - moderators that match the request criteria.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsSocial\": {\n \"id\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"Details about a social network post.\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\"\n },\n \"imageUrl\": - {\n \"description\": \"An image of the post's author.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The name of the social network.\",\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ]\n },\n \"referenceUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL of the social network post.\"\n - \ },\n \"author\": {\n \"description\": \"The author - of the social network post.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoListResponse\": {\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoListResponse\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Video\"\n },\n - \ \"type\": \"array\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoListResponse\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label for this abuse report secondary - reason.\"\n },\n \"id\": {\n \"description\": \"The - ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"Subscription\": {\n \"type\": \"object\",\n \"id\": - \"Subscription\",\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\",\n \"$ref\": - \"SubscriptionSnippet\"\n },\n \"contentDetails\": {\n \"$ref\": - \"SubscriptionContentDetails\",\n \"description\": \"The contentDetails - object contains basic statistics about the subscription.\"\n },\n \"subscriberSnippet\": - {\n \"description\": \"The subscriberSnippet object contains basic - details about the subscriber.\",\n \"$ref\": \"SubscriptionSubscriberSnippet\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"default\": \"youtube#subscription\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"description\": \"A - *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\"\n },\n \"MembershipsLevel\": - {\n \"type\": \"object\",\n \"description\": \"A *membershipsLevel* - resource represents an offer made by YouTube creators for their fans. Users - can become members of the channel by joining one of the available levels. - They will provide recurring monetary support and receives special benefits.\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"MembershipsLevelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the level.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the memberships level.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevel\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"MembershipsLevel\"\n },\n \"VideoAbuseReportReason\": {\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID of this abuse report - reason.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReason\"\n - \ }\n },\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\",\n \"id\": - \"VideoAbuseReportReason\",\n \"type\": \"object\"\n },\n \"ThumbnailDetails\": - {\n \"properties\": {\n \"medium\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The medium quality image for this resource.\"\n - \ },\n \"maxres\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The maximum resolution quality image for this resource.\"\n },\n - \ \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The default image for this resource.\"\n },\n \"high\": {\n - \ \"description\": \"The high quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"standard\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The standard quality image for - this resource.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Internal representation of thumbnails for a YouTube resource.\",\n \"id\": - \"ThumbnailDetails\"\n },\n \"VideoRating\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoRating\",\n \"description\": \"Basic details about - rating of a video.\",\n \"properties\": {\n \"rating\": {\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"description\": \"Rating of a video.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ]\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoProjectDetails\": {\n \"description\": - \"DEPRECATED. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"id\": \"VideoProjectDetails\",\n \"type\": \"object\",\n \"properties\": - {}\n },\n \"CommentThreadReplies\": {\n \"description\": \"Comments - written in (direct or indirect) reply to the top level comment.\",\n \"properties\": - {\n \"comments\": {\n \"type\": \"array\",\n \"description\": - \"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.\",\n \"items\": {\n \"$ref\": - \"Comment\"\n }\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"CommentThreadReplies\"\n },\n \"LiveChatModeratorSnippet\": - {\n \"id\": \"LiveChatModeratorSnippet\",\n \"properties\": {\n - \ \"moderatorDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the moderator.\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the live chat this moderator can act on.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"CommentSnippet\": {\n \"type\": - \"object\",\n \"id\": \"CommentSnippet\",\n \"properties\": {\n - \ \"authorChannelId\": {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"textDisplay\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"canRate\": {\n \"description\": - \"Whether the current viewer can rate this comment.\",\n \"type\": - \"boolean\"\n },\n \"likeCount\": {\n \"description\": - \"The total number of likes this comment has received.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"updatedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the comment was last updated.\",\n \"type\": \"string\"\n - \ },\n \"authorChannelUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Link to the author's YouTube channel, if any.\"\n - \ },\n \"parentId\": {\n \"description\": \"The unique - id of the parent comment, only set for replies.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"viewerRating\": - {\n \"description\": \"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.\",\n \"enum\": [\n - \ \"none\",\n \"like\",\n \"dislike\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ]\n },\n \"moderationStatus\": {\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ]\n },\n \"textOriginal\": {\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was originally - published.\",\n \"format\": \"date-time\"\n },\n \"authorDisplayName\": - {\n \"description\": \"The name of the user who posted the comment.\",\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comment refers to, if any.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - a comment, such as its author and text.\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n \"description\": - \"Basic details about a video category, such as its localized title.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"label\": {\n - \ \"type\": \"string\",\n \"description\": \"The localized - label belonging to this abuse report reason.\"\n },\n \"secondaryReasons\": - {\n \"type\": \"array\",\n \"description\": \"The secondary - reasons associated with this reason, if any are available. (There might be - 0 or more.)\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ }\n }\n }\n },\n \"ChannelSectionTargeting\": - {\n \"type\": \"object\",\n \"properties\": {\n \"regions\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The region the - channel section is targeting.\"\n },\n \"languages\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The language the channel section is targeting.\"\n - \ },\n \"countries\": {\n \"description\": \"The country - the channel section is targeting.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"id\": \"ChannelSectionTargeting\",\n \"description\": \"ChannelSection - targeting setting.\"\n },\n \"InvideoPosition\": {\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"id\": \"InvideoPosition\",\n \"type\": \"object\",\n \"properties\": - {\n \"type\": {\n \"enumDescriptions\": [\n \"\"\n - \ ],\n \"description\": \"Defines the position type.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"corner\"\n - \ ]\n },\n \"cornerPosition\": {\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"topLeft\",\n - \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n }\n },\n - \ \"ChannelConversionPing\": {\n \"type\": \"object\",\n \"description\": - \"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.\",\n \"properties\": {\n \"context\": {\n \"type\": - \"string\",\n \"description\": \"Defines the context of the ping.\",\n - \ \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"conversionUrl\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelConversionPing\"\n },\n \"LiveStreamStatus\": - {\n \"properties\": {\n \"streamStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"created\",\n \"ready\",\n - \ \"active\",\n \"inactive\",\n \"error\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"healthStatus\": {\n \"$ref\": \"LiveStreamHealthStatus\",\n - \ \"description\": \"The health status of the stream.\"\n }\n - \ },\n \"id\": \"LiveStreamStatus\",\n \"type\": \"object\",\n - \ \"description\": \"Brief description of the live stream status.\"\n - \ },\n \"ChannelSectionContentDetails\": {\n \"id\": \"ChannelSectionContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"playlists\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The playlist ids for type single_playlist and - multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n - \ \"type\": \"array\"\n },\n \"channels\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The channel ids for type multiple_channels.\",\n \"type\": \"array\"\n - \ }\n },\n \"description\": \"Details about a channelsection, - including playlists and channels.\"\n },\n \"Caption\": {\n \"description\": - \"A *caption* resource represents a YouTube caption track. A caption track - is associated with exactly one YouTube video.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"CaptionSnippet\",\n \"description\": \"The - snippet object contains basic details about the caption.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#caption\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#caption\\\".\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the caption track.\"\n }\n },\n \"id\": \"Caption\"\n },\n - \ \"VideoStatus\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a video category, such as its localized title. Next - Id: 18\",\n \"id\": \"VideoStatus\",\n \"properties\": {\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"publicStatsViewable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"publishAt\": {\n \"description\": \"The date - and time when the video is scheduled to publish. It can be set only if the - privacy status of the video is private..\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"failureReason\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"Unable - to convert video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ],\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ],\n \"description\": \"This value explains why a video - failed to upload. This property is only present if the uploadStatus property - indicates that the upload failed.\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"license\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"uploadStatus\": - {\n \"enumDescriptions\": [\n \"Video has been uploaded - but not processed yet.\",\n \"Video has been successfully processed.\",\n - \ \"Processing has failed. See FailureReason.\",\n \"Video - has been rejected. See RejectionReason.\",\n \"Video has been deleted.\"\n - \ ],\n \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The status of the uploaded video.\"\n },\n \"embeddable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's privacy status.\"\n },\n \"rejectionReason\": - {\n \"type\": \"string\",\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"description\": \"This value explains why YouTube - rejected an uploaded video. This property is only present if the uploadStatus - property indicates that the upload was rejected.\",\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n }\n }\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"properties\": - {\n \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the member to this Member Milestone Chat. This field - is empty for messages without a comment from the member.\"\n },\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level at which the viever is a member. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"memberMonth\": {\n \"format\": - \"uint32\",\n \"description\": \"The total amount of months (rounded - up) the viewer has been a member that granted them this Member Milestone Chat. - This is the same number of months as is being displayed to YouTube users.\",\n - \ \"type\": \"integer\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveBroadcastStatistics\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"concurrentViewers\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n },\n - \ \"totalChatCount\": {\n \"type\": \"string\",\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\",\n - \ \"format\": \"uint64\"\n }\n },\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"Statistics about the live broadcast. These represent - a snapshot of the values at the time of the request. Statistics are only returned - for live broadcasts.\"\n },\n \"LiveBroadcastStatus\": {\n \"id\": - \"LiveBroadcastStatus\",\n \"properties\": {\n \"liveBroadcastPriority\": - {\n \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"type\": \"string\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Low priority - broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ]\n },\n \"lifeCycleStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"Incomplete settings, but otherwise - valid\",\n \"Complete settings\",\n \"Visible only to - partner, may need special UI treatment\",\n \"Viper is recording; - this means the \\\"clock\\\" is running\",\n \"The broadcast is - finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"description\": \"The broadcast's status. The status can be updated - using the API's liveBroadcasts.transition method.\"\n },\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's privacy status. Note that the - broadcast represents exactly one YouTube video, so the privacy settings are - identical to those supported for videos. In addition, you can set this field - by modifying the broadcast resource or by setting the privacyStatus field - of the corresponding video resource.\",\n \"type\": \"string\"\n - \ },\n \"recordingStatus\": {\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"type\": - \"string\",\n \"description\": \"The broadcast's recording status.\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the broadcast is made for kids or not, decided by YouTube instead of the creator. - This field is read only.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Live broadcast state.\"\n },\n \"PageInfo\": - {\n \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\",\n \"id\": \"PageInfo\",\n \"properties\": {\n \"resultsPerPage\": - {\n \"type\": \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The number of results included in the API response.\"\n },\n \"totalResults\": - {\n \"description\": \"The total number of results in the result - set.\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"Thumbnail\": - {\n \"description\": \"A thumbnail is an image representing a YouTube - resource.\",\n \"id\": \"Thumbnail\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"height\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"(Optional) - Height of the thumbnail image.\"\n },\n \"url\": {\n \"description\": - \"The thumbnail image's URL.\",\n \"type\": \"string\"\n },\n - \ \"width\": {\n \"format\": \"uint32\",\n \"description\": - \"(Optional) Width of the thumbnail image.\",\n \"type\": \"integer\"\n - \ }\n }\n },\n \"CdnSettings\": {\n \"description\": - \"Brief description of the live stream cdn settings.\",\n \"id\": \"CdnSettings\",\n - \ \"properties\": {\n \"frameRate\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The frame rate of the inbound video data.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ]\n },\n - \ \"resolution\": {\n \"description\": \"The resolution of - the inbound video data.\",\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n - \ \"description\": \"The ingestionInfo object contains information - that YouTube provides that you need to transmit your RTMP or HTTP stream to - YouTube.\"\n },\n \"format\": {\n \"type\": \"string\",\n - \ \"description\": \"The format of the video stream that you are sending - to Youtube. \",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"ingestionType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \" The method or protocol used to transmit the video stream.\",\n \"enum\": - [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ]\n }\n },\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsPromotedItem\": {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"Details about a resource which is being promoted.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"customCtaButtonText\": - {\n \"description\": \"The custom call-to-action button text. If - specified, it will override the default button text for the cta_type.\",\n - \ \"type\": \"string\"\n },\n \"descriptionText\": {\n - \ \"type\": \"string\",\n \"description\": \"The text description - to accompany the promoted item.\"\n },\n \"forecastingUrl\": - {\n \"type\": \"array\",\n \"description\": \"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.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"creativeViewUrl\": {\n \"description\": \"The URL the client - should ping to indicate that the user was shown this promoted item.\",\n \"type\": - \"string\"\n },\n \"ctaType\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of call-to-action, a message - to the user indicating action that can be taken.\"\n },\n \"destinationUrl\": - {\n \"description\": \"The URL the client should direct the user - to, if the user chooses to visit the advertiser's website.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the promoted video.\",\n \"type\": - \"string\"\n },\n \"impressionUrl\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\",\n \"type\": - \"array\"\n },\n \"adTag\": {\n \"description\": \"The - URL the client should fetch to request a promoted item.\",\n \"type\": - \"string\"\n },\n \"clickTrackingUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user clicked through on this promoted item.\"\n }\n - \ }\n },\n \"ActivitySnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"ActivitySnippet\",\n \"description\": \"Basic details - about an activity, including title, description, thumbnails, activity type - and group. Next ID: 12\",\n \"properties\": {\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the video was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"groupId\": {\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the resource primarily associated with the activity.\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the resource primarily associated with the activity. - @mutable youtube.activities.insert\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel responsible - for this activity\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel associated with the activity.\"\n - \ },\n \"type\": {\n \"description\": \"The type of - activity that the resource describes.\",\n \"enum\": [\n \"typeUnspecified\",\n - \ \"upload\",\n \"like\",\n \"favorite\",\n - \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n - \ \"recommendation\",\n \"bulletin\",\n \"social\",\n - \ \"channelItem\",\n \"promotedItem\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveStreamHealthStatus\": {\n \"type\": - \"object\",\n \"id\": \"LiveStreamHealthStatus\",\n \"properties\": - {\n \"status\": {\n \"type\": \"string\",\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ],\n \"description\": \"The status - code of this stream\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"lastUpdateTimeSeconds\": {\n \"description\": - \"The last time this status was updated (in seconds)\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"configurationIssues\": - {\n \"description\": \"The configurations issues on this stream\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n }\n }\n }\n },\n - \ \"ChannelSectionLocalization\": {\n \"description\": \"ChannelSection - localization setting\",\n \"id\": \"ChannelSectionLocalization\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The localized strings - for channel section's title.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"SearchResult\": {\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about a search result, such as its title or description. For - example, if the search result is a video, then the title will be the video's - title and the description will be the video's description.\",\n \"$ref\": - \"SearchResultSnippet\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#searchResult\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ },\n \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n }\n },\n \"description\": - \"A search result contains information about a YouTube video, channel, or - playlist that matches the search parameters specified in an API request. While - a search result points to a uniquely identifiable resource, like a video, - it does not have its own persistent data.\",\n \"id\": \"SearchResult\"\n - \ },\n \"PlaylistItemListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"PlaylistItemListResponse\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"description\": \"A list of playlist - items that match the request criteria.\",\n \"type\": \"array\"\n - \ }\n }\n },\n \"MembershipsDetails\": {\n \"id\": \"MembershipsDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"highestAccessibleLevelDisplayName\": - {\n \"description\": \"Display name for the highest level that the - user has access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"membershipsDurationAtLevels\": {\n \"type\": \"array\",\n - \ \"description\": \"Data about memberships duration on particular - pricing levels.\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ }\n },\n \"membershipsDuration\": {\n \"$ref\": - \"MembershipsDuration\",\n \"description\": \"Data about memberships - duration without taking into consideration pricing levels.\"\n },\n - \ \"highestAccessibleLevel\": {\n \"type\": \"string\",\n \"description\": - \"Id of the highest level that the user has access to at the moment.\"\n },\n - \ \"accessibleLevels\": {\n \"description\": \"Ids of all levels - that the user has access to. This includes the currently active level and - all other levels that are included because of a higher purchase.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ }\n }\n },\n \"SuperChatEventListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#superChatEventListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of Super Chat purchases that - match the request criteria.\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"SuperChatEventListResponse\"\n },\n \"VideoTopicDetails\": {\n \"description\": - \"Freebase topic information related to the video.\",\n \"properties\": - {\n \"relevantTopicIds\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Similar to topic_id, - except that these topics are merely relevant to the video. These are topics - that may be mentioned in, or appear in the video. You can retrieve information - about each topic using Freebase Topic API.\",\n \"type\": \"array\"\n - \ },\n \"topicCategories\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Wikipedia - URLs that provide a high-level description of the video's content.\",\n \"type\": - \"array\"\n },\n \"topicIds\": {\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoTopicDetails\"\n },\n \"SuperChatEvent\": {\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the Super Chat event.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#superChatEvent\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n - \ }\n },\n \"id\": \"SuperChatEvent\",\n \"description\": - \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\",\n \"type\": \"object\"\n },\n \"VideoLocalization\": - {\n \"properties\": {\n \"title\": {\n \"description\": - \"Localized version of the video's title.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Localized version of the video's description.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Localized - versions of certain video properties (e.g. title).\",\n \"id\": \"VideoLocalization\"\n - \ },\n \"CaptionSnippet\": {\n \"description\": \"Basic details - about a caption track, such as its language and name.\",\n \"properties\": - {\n \"name\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The name of the - caption track. The name is intended to be visible to the user as an option - during playback.\"\n },\n \"videoId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video associated with - the caption track. @mutable youtube.captions.insert\"\n },\n \"isEasyReader\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"failureReason\": {\n \"description\": \"The - reason that YouTube failed to process the caption track. This property is - only present if the state property's value is failed.\",\n \"type\": - \"string\",\n \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"lastUpdated\": {\n \"description\": \"The date and time - when the caption track was last updated.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"audioTrackType\": - {\n \"description\": \"The type of audio track associated with the - caption track.\",\n \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"isAutoSynced\": - {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"isDraft\": {\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n },\n - \ \"language\": {\n \"type\": \"string\",\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"isCC\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the track contains - closed captions for the deaf and hard of hearing. The default value is false.\"\n - \ },\n \"isLarge\": {\n \"description\": \"Indicates - whether the caption track uses large text for the vision-impaired. The default - value is false.\",\n \"type\": \"boolean\"\n },\n \"status\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"serving\",\n - \ \"syncing\",\n \"failed\"\n ],\n \"type\": - \"string\",\n \"description\": \"The caption track's status.\"\n - \ },\n \"trackKind\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The caption track's type.\",\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ]\n }\n },\n \"id\": \"CaptionSnippet\",\n \"type\": - \"object\"\n },\n \"MembershipsDuration\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"memberSince\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the user became a continuous - member across all levels.\"\n },\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - across all levels in complete months (the time is rounded down to the nearest - integer).\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ }\n },\n \"id\": \"MembershipsDuration\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"amountMicros\": {\n \"type\": \"string\",\n \"description\": - \"The amount of the fund.\",\n \"format\": \"uint64\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the fund was made.\",\n \"type\": \"string\"\n },\n \"userComment\": - {\n \"description\": \"The comment added by the user to this fan - funding event.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveChatFanFundingEventDetails\"\n },\n \"TestItem\": {\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"gaia\": {\n \"format\": \"int64\",\n \"type\": - \"string\"\n },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"id\": \"TestItem\",\n \"type\": \"object\"\n - \ },\n \"CommentThreadListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"CommentThreadListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"eventId\": {\n - \ \"type\": \"string\",\n \"description\": \"Serialized EventId - of the request which produced this response.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"default\": \"youtube#commentThreadListResponse\"\n },\n - \ \"items\": {\n \"description\": \"A list of comment threads - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"CommentThread\"\n },\n \"type\": \"array\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ThirdPartyLinkSnippet\": {\n \"properties\": {\n \"channelToStoreLink\": - {\n \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel with - a store on a merchandising platform in order to enable retail commerce capabilities - for that channel on YouTube.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"description\": \"Type of the link named after the - entities that are being linked.\"\n }\n },\n \"description\": - \"Basic information about a third party account link, including its type and - type-specific information.\",\n \"id\": \"ThirdPartyLinkSnippet\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamContentDetails\": {\n - \ \"description\": \"Detailed settings of a stream.\",\n \"properties\": - {\n \"isReusable\": {\n \"description\": \"Indicates whether - the stream is reusable, which means that it can be bound to multiple broadcasts. - It is common for broadcasters to reuse the same stream for many different - broadcasts if those broadcasts occur at different times. If you set this value - to false, then the stream will not be reusable, which means that it can only - be bound to one broadcast. Non-reusable streams differ from reusable streams - in the following ways: - A non-reusable stream can only be bound to one broadcast. - - A non-reusable stream might be deleted by an automated process after the - broadcast ends. - The liveStreams.list method does not list non-reusable streams - if you call the method and set the mine parameter to true. The only way to - use that method to retrieve the resource for a non-reusable stream is to use - the id parameter to identify the stream. \",\n \"type\": \"boolean\"\n - \ },\n \"closedCaptionsIngestionUrl\": {\n \"type\": - \"string\",\n \"description\": \"The ingestion URL where the closed - captions of this stream are sent.\"\n }\n },\n \"id\": \"LiveStreamContentDetails\",\n - \ \"type\": \"object\"\n },\n \"ChannelListResponse\": {\n \"type\": - \"object\",\n \"id\": \"ChannelListResponse\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Channel\"\n },\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"default\": \"youtube#channelListResponse\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveBroadcastContentDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"enableDvr\": {\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n - \ },\n \"closedCaptionsType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ]\n },\n \"monitorStream\": - {\n \"$ref\": \"MonitorStreamInfo\",\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\"\n },\n \"latencyPreference\": {\n - \ \"enum\": [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"description\": \"If both this and - enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\"\n },\n \"enableContentEncryption\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether YouTube should enable content encryption for the broadcast.\"\n - \ },\n \"startWithSlate\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\"\n },\n \"boundStreamId\": - {\n \"description\": \"This value uniquely identifies the live stream - bound to the broadcast.\",\n \"type\": \"string\"\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the live stream referenced by boundStreamId was last updated.\",\n - \ \"format\": \"date-time\"\n },\n \"enableAutoStop\": - {\n \"description\": \"This setting indicates whether auto stop is - enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\",\n \"type\": \"boolean\"\n - \ },\n \"enableLowLatency\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether this broadcast has low latency - enabled.\"\n },\n \"enableAutoStart\": {\n \"description\": - \"This setting indicates whether auto start is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\",\n \"type\": \"boolean\"\n },\n \"recordFromStart\": - {\n \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\",\n \"type\": \"boolean\"\n },\n \"projection\": - {\n \"description\": \"The projection format of this broadcast. This - defaults to rectangular.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ]\n },\n \"enableClosedCaptions\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - HTTP POST closed captioning is enabled for this broadcast. The ingestion URL - of the closed captions is returned through the liveStreams API. This is mutually - exclusive with using the closed_captions_type property, and is equivalent - to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n - \ \"mesh\": {\n \"description\": \"The mesh for projecting - the video if projection is mesh. The mesh value must be a UTF-8 string containing - the base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC - specification for an mshp box, excluding the box size and type but including - the following four reserved zero bytes for the version and flags.\",\n \"type\": - \"string\",\n \"format\": \"byte\"\n },\n \"enableEmbed\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast video can be played in an embedded player. - If you choose to archive the video (using the enableArchive property), this - setting will also apply to the archived video.\"\n },\n \"stereoLayout\": - {\n \"description\": \"The 3D stereo layout of this broadcast. This - defaults to mono.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveBroadcastContentDetails\",\n \"description\": - \"Detailed settings of a broadcast.\"\n },\n \"VideoCategorySnippet\": - {\n \"id\": \"VideoCategorySnippet\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The video - category's title.\"\n },\n \"assignable\": {\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel that created the video category.\",\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Basic details - about a video category, such as its localized title.\"\n },\n \"LiveChatBanSnippet\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatBanSnippet\",\n \"properties\": - {\n \"type\": {\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"description\": - \"The type of ban.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ]\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The chat - this ban is pertinent to.\"\n },\n \"banDurationSeconds\": {\n - \ \"description\": \"The duration of a ban, only filled if the ban - has type TEMPORARY.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\"\n }\n }\n },\n \"SuperChatEventSnippet\": - {\n \"properties\": {\n \"superStickerMetadata\": {\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"isSuperStickerEvent\": {\n \"description\": - \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n - \ },\n \"createdAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the event occurred.\"\n },\n \"currency\": {\n \"type\": - \"string\",\n \"description\": \"The currency in which the purchase - was made. ISO 4217.\"\n },\n \"messageType\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\"\n },\n \"displayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the purchase amount and currency (e.g., \\\"$1.00\\\"). The string is rendered - for the given language.\"\n },\n \"amountMicros\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\"\n },\n \"commentText\": {\n \"type\": - \"string\",\n \"description\": \"The text contents of the comment - left by the user.\"\n },\n \"supporterDetails\": {\n \"description\": - \"Details about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"channelId\": {\n \"description\": \"Channel - id where the event occurred.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"SuperChatEventSnippet\",\n \"type\": \"object\"\n - \ },\n \"ChannelSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a channel, including title, description and thumbnails.\",\n - \ \"properties\": {\n \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"customUrl\": {\n \"description\": \"The custom - url of the channel.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The channel's title.\",\n \"type\": - \"string\"\n },\n \"country\": {\n \"type\": \"string\",\n - \ \"description\": \"The country of the channel.\"\n },\n \"description\": - {\n \"description\": \"The description of the channel.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the channel - was created.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the channel's default title and - description.\"\n }\n },\n \"id\": \"ChannelSnippet\"\n },\n - \ \"VideoProcessingDetailsProcessingProgress\": {\n \"description\": - \"Video processing progress and completion time estimate.\",\n \"id\": - \"VideoProcessingDetailsProcessingProgress\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"partsTotal\": {\n \"description\": - \"An estimate of the total number of parts that need to be processed for the - video. The number may be updated with more precise estimates while YouTube - processes the video.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"partsProcessed\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of parts of the video that YouTube has already processed. You can estimate - the percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\"\n },\n - \ \"timeLeftMs\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"An estimate of the amount of time, - in millseconds, that YouTube needs to finish processing the video.\"\n }\n - \ }\n },\n \"LiveChatMessage\": {\n \"description\": \"A *liveChatMessage* - resource represents a chat message in a YouTube Live Chat.\",\n \"type\": - \"object\",\n \"id\": \"LiveChatMessage\",\n \"properties\": {\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the message.\",\n \"$ref\": - \"LiveChatMessageSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n - \ \"default\": \"youtube#liveChatMessage\",\n \"type\": \"string\"\n - \ },\n \"authorDetails\": {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n - \ \"description\": \"The authorDetails object contains basic details - about the user that posted this message.\"\n },\n \"id\": {\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the message.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"RelatedEntity\": {\n \"type\": \"object\",\n \"id\": \"RelatedEntity\",\n - \ \"properties\": {\n \"entity\": {\n \"$ref\": \"Entity\"\n - \ }\n }\n },\n \"Video\": {\n \"id\": \"Video\",\n \"type\": - \"object\",\n \"description\": \"A *video* resource represents a YouTube - video.\",\n \"properties\": {\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n - \ \"suggestions\": {\n \"$ref\": \"VideoSuggestions\",\n \"description\": - \"The suggestions object encapsulates suggestions that identify opportunities - to improve the video quality or the metadata for the uploaded video. This - data can only be retrieved by the video owner.\"\n },\n \"projectDetails\": - {\n \"$ref\": \"VideoProjectDetails\",\n \"description\": - \"The projectDetails object contains information about the project specific - video metadata. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"processingDetails\": {\n \"description\": \"The - processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoProcessingDetails\"\n },\n \"ageGating\": - {\n \"description\": \"Age restriction details related to a video. - This data can only be retrieved by the video owner.\",\n \"$ref\": - \"VideoAgeGating\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.videos.update\"\n ]\n },\n \"type\": - \"string\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information about the video content, - including the length of the video and its aspect ratio.\",\n \"$ref\": - \"VideoContentDetails\"\n },\n \"fileDetails\": {\n \"$ref\": - \"VideoFileDetails\",\n \"description\": \"The fileDetails object - encapsulates information about the video file that was uploaded to YouTube, - including the file's resolution, duration, audio and video codecs, stream - bitrates, and more. This data can only be retrieved by the video owner.\"\n - \ },\n \"liveStreamingDetails\": {\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n - \ },\n \"status\": {\n \"$ref\": \"VideoStatus\",\n - \ \"description\": \"The status object contains information about - the video's uploading, processing, and privacy statuses.\"\n },\n \"snippet\": - {\n \"$ref\": \"VideoSnippet\",\n \"description\": \"The - snippet object contains basic details about the video, such as its title, - description, and category.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"VideoLocalization\"\n },\n \"description\": \"The localizations - object contains localized versions of the basic details about the video, such - as its title and description.\"\n },\n \"statistics\": {\n \"$ref\": - \"VideoStatistics\",\n \"description\": \"The statistics object contains - statistics about the video.\"\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the video - in an embedded player.\",\n \"$ref\": \"VideoPlayer\"\n },\n - \ \"recordingDetails\": {\n \"$ref\": \"VideoRecordingDetails\",\n - \ \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\"\n },\n - \ \"monetizationDetails\": {\n \"$ref\": \"VideoMonetizationDetails\",\n - \ \"description\": \"The monetizationDetails object encapsulates information - about the monetization status of the video.\"\n },\n \"kind\": - {\n \"default\": \"youtube#video\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"I18nRegionSnippet\": - {\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the region.\"\n },\n - \ \"gl\": {\n \"type\": \"string\",\n \"description\": - \"The region code as a 2-letter ISO country code.\"\n }\n },\n - \ \"description\": \"Basic details about an i18n region, such as region - code and human-readable name.\",\n \"id\": \"I18nRegionSnippet\",\n \"type\": - \"object\"\n },\n \"CommentThread\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"replies\": {\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the comment thread.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"CommentThreadSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"default\": \"youtube#commentThread\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"CommentThread\",\n \"description\": - \"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.\"\n },\n \"LiveStreamSnippet\": {\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The stream's description. The value cannot be longer than 10000 characters.\"\n - \ },\n \"isDefaultStream\": {\n \"type\": \"boolean\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that is transmitting the - stream.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The stream's title. The value must be between - 1 and 128 characters long.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the stream was created.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveStreamSnippet\",\n - \ \"type\": \"object\"\n },\n \"PlaylistStatus\": {\n \"type\": - \"object\",\n \"properties\": {\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The playlist's privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"id\": - \"PlaylistStatus\"\n },\n \"LocalizedString\": {\n \"properties\": - {\n \"language\": {\n \"type\": \"string\"\n },\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LocalizedString\"\n },\n \"PropertyValue\": {\n \"properties\": - {\n \"property\": {\n \"description\": \"A property.\",\n - \ \"type\": \"string\"\n },\n \"value\": {\n \"type\": - \"string\",\n \"description\": \"The property's value.\"\n }\n - \ },\n \"id\": \"PropertyValue\",\n \"type\": \"object\",\n - \ \"description\": \"A pair Property / Value.\"\n },\n \"SubscriptionSnippet\": - {\n \"type\": \"object\",\n \"id\": \"SubscriptionSnippet\",\n \"description\": - \"Basic details about a subscription, including title, description and thumbnails - of the subscribed item.\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The subscription's - details.\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"description\": \"The id object contains - information about the channel that the user subscribed to.\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel that the subscription belongs to.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the subscription was created.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"The subscription's title.\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"A map of thumbnail images associated with the video. 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.\"\n }\n }\n - \ },\n \"LiveChatTextMessageDetails\": {\n \"properties\": {\n \"messageText\": - {\n \"type\": \"string\",\n \"description\": \"The user's - message.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatTextMessageDetails\"\n }\n },\n \"ownerName\": \"Google\",\n - \ \"documentationLink\": \"https://developers.google.com/youtube/\",\n \"batchPath\": - \"batch\",\n \"kind\": \"discovery#restDescription\",\n \"resources\": {\n - \ \"captions\": {\n \"methods\": {\n \"delete\": {\n \"path\": - \"youtube/v3/captions\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is be on behalf of\",\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.captions.delete\",\n \"description\": \"Deletes a resource.\"\n - \ },\n \"update\": {\n \"mediaUpload\": {\n \"maxSize\": - \"104857600\",\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"flatPath\": - \"youtube/v3/captions\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Caption\"\n - \ },\n \"supportsMediaUpload\": true,\n \"parameters\": - {\n \"onBehalfOf\": {\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n },\n \"sync\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"description\": \"Updates - an existing resource.\",\n \"id\": \"youtube.captions.update\",\n - \ \"request\": {\n \"$ref\": \"Caption\"\n }\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/captions\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"parameterOrder\": [\n \"part\",\n - \ \"videoId\"\n ],\n \"response\": {\n \"$ref\": - \"CaptionListResponse\"\n },\n \"id\": \"youtube.captions.list\",\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"videoId\": {\n \"description\": \"Returns the captions - for the specified video.\",\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Returns - the captions with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\"\n }\n }\n },\n \"insert\": {\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"supportsMediaUpload\": true,\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"104857600\"\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"id\": \"youtube.captions.insert\",\n \"parameters\": - {\n \"sync\": {\n \"location\": \"query\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"type\": \"boolean\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - caption resource parts that the API response will include. Set the parameter - value to snippet.\"\n },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"download\": {\n \"useMediaDownloadService\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions/{id}\",\n \"supportsMediaDownload\": - true,\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.captions.download\",\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"tlang\": {\n \"type\": \"string\",\n - \ \"description\": \"tlang is the language code; machine translate - the captions into this language.\",\n \"location\": \"query\"\n - \ },\n \"tfmt\": {\n \"description\": \"Convert - the captions into this format. Supported options are sbv, srt, and vtt.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"location\": \"path\",\n - \ \"type\": \"string\",\n \"description\": \"The - ID of the caption track to download, required for One Platform.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"path\": \"youtube/v3/captions/{id}\",\n \"description\": - \"Downloads a caption track.\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"id\": \"youtube.commentThreads.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"moderationStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"description\": \"Limits the returned comment threads to those - with the specified moderation status. Not compatible with the 'id' filter. - Valid values: published, heldForReview, likelySpam.\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"default\": - \"published\",\n \"location\": \"query\"\n },\n \"textFormat\": - {\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"default\": \"html\",\n \"location\": - \"query\",\n \"description\": \"The requested text format for - the returned comments.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\"\n },\n - \ \"videoId\": {\n \"description\": \"Returns the comment - threads of the specified video.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\",\n \"minimum\": - \"1\",\n \"default\": \"20\",\n \"maximum\": \"100\",\n - \ \"format\": \"uint32\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\",\n \"repeated\": true\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads for all the channel comments (ie does not include comments - left on videos).\",\n \"location\": \"query\"\n },\n - \ \"searchTerms\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Limits the returned comment threads - to those matching the specified key words. Not compatible with the 'id' filter.\"\n - \ },\n \"allThreadsRelatedToChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Returns the comment threads of - all videos of the channel and the channel comments as well.\",\n \"type\": - \"string\"\n },\n \"order\": {\n \"type\": - \"string\",\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"default\": \"time\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Order - by time.\",\n \"Order by relevance.\"\n ]\n }\n - \ },\n \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/commentThreads\"\n - \ },\n \"insert\": {\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/search\",\n \"description\": - \"Retrieves a list of search resources\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"id\": \"youtube.search.list\",\n \"flatPath\": - \"youtube/v3/search\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"forMine\": {\n \"description\": \"Search for - the private videos of the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"forDeveloper\": - {\n \"type\": \"boolean\",\n \"description\": \"Restrict - the search to only retrieve videos uploaded using the project id of the authenticated - user.\",\n \"location\": \"query\"\n },\n \"publishedBefore\": - {\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"description\": \"Filter on resources published - before this date.\",\n \"location\": \"query\"\n },\n - \ \"videoDefinition\": {\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Filter - on the definition of the videos.\",\n \"enumDescriptions\": [\n - \ \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"location\": \"query\"\n - \ },\n \"videoDuration\": {\n \"description\": - \"Filter on the duration of the videos.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ]\n - \ },\n \"videoLicense\": {\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"Return - all videos, regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"description\": \"Filter on the license of the videos.\",\n - \ \"type\": \"string\"\n },\n \"relevanceLanguage\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return results relevant to this language.\"\n - \ },\n \"videoSyndicated\": {\n \"enum\": - [\n \"videoSyndicatedUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"description\": - \"Filter on syndicated videos.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all videos, syndicated or - not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"forContentOwner\": {\n \"type\": - \"boolean\",\n \"description\": \"Search owned by a content owner.\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"videoType\": {\n \"description\": - \"Filter on videos of a specific type.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": - [\n \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ],\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"description\": \"Restrict results to a particular set of - resource types from One Platform.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"safeSearch\": {\n \"default\": - \"moderate\",\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ],\n \"location\": \"query\",\n - \ \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Indicates whether the search results should include restricted content as - well as standard content.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n },\n \"videoEmbeddable\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on embeddable videos.\"\n },\n \"topicId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Restrict results to a particular topic.\"\n - \ },\n \"channelType\": {\n \"description\": - \"Add a filter on the channel search.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all channels.\",\n \"Only retrieve shows.\"\n ],\n - \ \"location\": \"query\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ]\n },\n - \ \"videoDimension\": {\n \"description\": \"Filter - on 3d videos.\",\n \"location\": \"query\",\n \"enum\": - [\n \"any\",\n \"2d\",\n \"3d\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ]\n },\n \"locationRadius\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on distance from the location (specified above).\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"Filter on resources belonging to this channelId.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoCaption\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on the presence of captions on the - videos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter results based on caption availability.\",\n - \ \"Only include videos that have captions.\",\n \"Only - include videos that do not have captions.\"\n ],\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ]\n - \ },\n \"order\": {\n \"default\": \"relevance\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"description\": - \"Sort order of the results.\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"eventType\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"description\": \"Filter on the livestream status of the videos.\",\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"videoCategoryId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on videos in a specific category.\"\n },\n \"publishedAfter\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"format\": \"google-datetime\",\n \"description\": - \"Filter on resources published after this date.\"\n },\n \"relatedToVideoId\": - {\n \"type\": \"string\",\n \"description\": \"Search - related to a resource.\",\n \"location\": \"query\"\n },\n - \ \"regionCode\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Display the content as seen - by viewers in this country.\"\n },\n \"location\": {\n - \ \"location\": \"query\",\n \"description\": \"Filter - on location of the video\",\n \"type\": \"string\"\n },\n - \ \"q\": {\n \"type\": \"string\",\n \"description\": - \"Textual search terms to match.\",\n \"location\": \"query\"\n - \ }\n }\n }\n }\n },\n \"thirdPartyLinks\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"linkingToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Get a third party link with the - given linking token.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API response will include. Supported - values are linkingToken, status, and snippet.\",\n \"repeated\": - true\n },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"description\": \"Get - a third party link of the given type.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.list\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n }\n },\n - \ \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.thirdPartyLinks.update\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the thirdPartyLink resource parts that the API request - and response will include. Supported values are linkingToken, status, and - snippet.\"\n },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Channel ID to which changes should - be applied, for delegation.\",\n \"type\": \"string\"\n }\n - \ },\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing resource.\"\n },\n \"delete\": {\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Do not use. Required for compatibility.\",\n \"repeated\": - true\n },\n \"linkingToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"Delete the partner links with the - given linking token.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"description\": \"Type of the link to be deleted.\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.thirdPartyLinks.delete\"\n - \ },\n \"insert\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.insert\",\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\"\n },\n - \ \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\"\n }\n },\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n }\n }\n - \ },\n \"comments\": {\n \"methods\": {\n \"update\": {\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.comments.update\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"path\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"request\": {\n \"$ref\": - \"Comment\"\n }\n },\n \"markAsSpam\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"description\": \"Flags - the comments with the given IDs as spam in the caller's opinion.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Expresses the caller's opinion that one or more - comments should be flagged as spam.\",\n \"path\": \"youtube/v3/comments/markAsSpam\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"id\": \"youtube.comments.markAsSpam\"\n },\n \"insert\": - {\n \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.comments.insert\",\n \"path\": \"youtube/v3/comments\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\"\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/comments\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"id\": \"youtube.comments.delete\"\n - \ },\n \"setModerationStatus\": {\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"parameters\": {\n \"banAuthor\": {\n \"type\": - \"boolean\",\n \"description\": \"If set to true the author of - the comment gets added to the ban list. This means all future comments of - the author will autmomatically be rejected. Only valid in combination with - STATUS_REJECTED.\",\n \"location\": \"query\",\n \"default\": - \"false\"\n },\n \"moderationStatus\": {\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"required\": - true,\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ]\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Modifies the moderation status of the comments with the given IDs\"\n }\n - \ },\n \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"description\": \"Sets the moderation status of one - or more comments.\",\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\"\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"CommentListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.list\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"description\": - \"Returns the comments with the given IDs for One Platform.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"parentId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Returns - replies to the specified comment. Note, currently YouTube features only one - level of replies (ie replies to top level comments). However replies to replies - may be supported in the future.\"\n },\n \"textFormat\": - {\n \"location\": \"query\",\n \"description\": - \"The requested text format for the returned comments.\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"default\": \"html\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"default\": - \"20\",\n \"maximum\": \"100\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"1\",\n \"type\": - \"integer\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - a comma-separated list of one or more comment resource properties that the - API response will include.\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the videoCategory resource parts that the API response - will include. Supported values are id and snippet.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"en-US\"\n }\n }\n }\n - \ }\n },\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"path\": - \"youtube/v3/i18nLanguages\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the i18nLanguage - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"default\": \"en_US\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"id\": \"youtube.i18nLanguages.list\"\n - \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"parameterOrder\": - [],\n \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true\n - \ }\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/commentThreads\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n }\n }\n - \ }\n }\n }\n },\n \"watermarks\": {\n \"methods\": - {\n \"set\": {\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"description\": \"Allows upload of watermark image and setting - it for a channel.\",\n \"supportsMediaUpload\": true,\n \"httpMethod\": - \"POST\",\n \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.watermarks.set\",\n \"request\": - {\n \"$ref\": \"InvideoBranding\"\n },\n \"path\": - \"youtube/v3/watermarks/set\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ]\n },\n \"unset\": {\n \"id\": \"youtube.watermarks.unset\",\n - \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Allows removal of channel watermark.\",\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\"\n }\n }\n },\n - \ \"abuseReports\": {\n \"methods\": {\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n }\n },\n \"id\": - \"youtube.abuseReports.insert\",\n \"flatPath\": \"youtube/v3/abuseReports\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"playlistItems\": {\n \"methods\": {\n \"update\": - {\n \"path\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Updates an existing resource.\",\n \"id\": \"youtube.playlistItems.update\"\n - \ },\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.insert\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n }\n },\n \"delete\": {\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Deletes a resource.\"\n },\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"maxResults\": - {\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\",\n \"type\": - \"integer\",\n \"minimum\": \"0\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the playlist items associated with - the given video ID.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\"\n },\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the playlist items within the given - playlist.\"\n }\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.playlistItems.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ }\n }\n }\n },\n \"tests\": {\n \"methods\": - {\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/tests\",\n \"description\": \"POST method.\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"response\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"id\": \"youtube.tests.insert\",\n \"flatPath\": \"youtube/v3/tests\"\n - \ }\n }\n },\n \"playlists\": {\n \"methods\": {\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"id\": \"youtube.playlists.insert\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n }\n - \ },\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"request\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"id\": \"youtube.playlists.update\",\n \"description\": - \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"flatPath\": \"youtube/v3/playlists\"\n - \ },\n \"list\": {\n \"id\": \"youtube.playlists.list\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"parameters\": {\n \"pageToken\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"location\": \"query\",\n \"default\": - \"5\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"Return the playlists with the given IDs for - Stubby or Apiary.\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the playlists owned - by the authenticated user.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"description\": \"Return the - playlists owned by the specified channel ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return content in specified language\"\n - \ }\n }\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"I18nRegionListResponse\"\n },\n \"flatPath\": - \"youtube/v3/i18nRegions\",\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.i18nRegions.list\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"default\": \"en_US\",\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"GET\"\n }\n - \ }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/members\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ },\n \"parameters\": {\n \"hasAccessToLevel\": - {\n \"description\": \"Filter members in the results set to the - ones that have access to a level.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"maximum\": \"1000\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"mode\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"default\": \"all_current\",\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ]\n },\n - \ \"filterByMemberChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Comma - separated list of channel IDs. Only data about members that are part of this - list will be included in the response.\"\n }\n },\n \"id\": - \"youtube.members.list\",\n \"flatPath\": \"youtube/v3/members\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"description\": \"Retrieves a list of members that - match the request criteria for a channel.\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"thumbnails\": - {\n \"methods\": {\n \"set\": {\n \"id\": \"youtube.thumbnails.set\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"description\": \"Returns the Thumbnail with the given video - IDs for Stubby or Apiary.\",\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"videoId\"\n ],\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": true\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ }\n },\n \"maxSize\": \"2097152\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"description\": \"As this is not an insert in a strict - sense (it supports uploading/setting of a thumbnail for multiple videos, which - doesn't result in creation of a single resource), I use a custom verb here.\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"supportsMediaUpload\": true\n }\n }\n },\n \"channelBanners\": - {\n \"methods\": {\n \"insert\": {\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Unused, channel_id is currently - derived from the security context of the requestor.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"description\": \"Inserts - a new resource into this collection.\",\n \"request\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"id\": \"youtube.channelBanners.insert\",\n \"supportsMediaUpload\": - true,\n \"path\": \"youtube/v3/channelBanners/insert\",\n \"parameterOrder\": - [],\n \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"maxSize\": \"6291456\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"httpMethod\": \"POST\"\n }\n - \ }\n },\n \"liveChatMessages\": {\n \"methods\": {\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"description\": - \"Deletes a chat message.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.delete\"\n - \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"id\": \"youtube.liveChatMessages.list\",\n \"parameters\": - {\n \"maxResults\": {\n \"maximum\": \"2000\",\n \"default\": - \"500\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"minimum\": \"200\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the liveChatComment resource parts that the - API response will include. Supported values are id and snippet.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"profileImageSize\": {\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"description\": - \"Specifies the size of the profile image that should be returned for each - user.\",\n \"maximum\": \"720\",\n \"minimum\": - \"16\",\n \"format\": \"uint32\"\n },\n \"liveChatId\": - {\n \"required\": true,\n \"description\": \"The - id of the live chat for which comments should be returned.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"hl\": {\n \"description\": \"Specifies - the localization language in which the system messages should be returned.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"path\": \"youtube/v3/liveChat/messages\"\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.insert\",\n - \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n }\n - \ }\n }\n },\n \"activities\": {\n \"methods\": {\n - \ \"list\": {\n \"id\": \"youtube.activities.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/activities\",\n \"path\": \"youtube/v3/activities\",\n - \ \"parameters\": {\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"description\": \"The *maxResults* parameter - specifies the maximum number of items that should be returned in the result - set.\",\n \"maximum\": \"50\",\n \"minimum\": \"0\",\n - \ \"format\": \"uint32\",\n \"default\": \"5\",\n - \ \"location\": \"query\"\n },\n \"publishedBefore\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"home\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n }\n }\n - \ }\n },\n \"liveChatModerators\": {\n \"methods\": {\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": true\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/moderators\"\n },\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"maxResults\": - {\n \"default\": \"5\",\n \"maximum\": \"50\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"0\",\n \"type\": - \"integer\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"liveChatId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"The id of the live chat for which moderators should be returned.\",\n \"required\": - true\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.liveChatModerators.list\"\n },\n - \ \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"id\": - \"youtube.liveChatModerators.delete\",\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"description\": \"Deletes a chat moderator.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.superChatEvents.list\",\n - \ \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return rendered funding amounts in specified language.\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - superChatEvent resource parts that the API response will include. This parameter - is currently not supported.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"default\": - \"5\",\n \"minimum\": \"1\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"path\": \"youtube/v3/superChatEvents\",\n \"flatPath\": - \"youtube/v3/superChatEvents\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\"\n - \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of all - pricing levels offered by a creator to the fans.\",\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the membershipsLevel resource parts that the API - response will include. Supported values are id and snippet.\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"path\": \"youtube/v3/membershipsLevels\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/membershipsLevels\"\n }\n }\n - \ },\n \"liveBroadcasts\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveBroadcastListResponse\"\n },\n \"parameters\": {\n - \ \"id\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"Return broadcasts with the given - ids from Stubby or Apiary.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"default\": \"5\"\n },\n - \ \"broadcastStatus\": {\n \"description\": \"Return - broadcasts with a certain status, e.g. active broadcasts.\",\n \"type\": - \"string\",\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return current - live broadcasts.\",\n \"Return broadcasts that have not yet - started.\",\n \"Return broadcasts that have already ended.\"\n - \ ]\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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, status - and statistics.\",\n \"required\": true\n },\n \"broadcastType\": - {\n \"type\": \"string\",\n \"description\": \"Return - only broadcasts with the selected type.\",\n \"default\": \"event\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ]\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n }\n },\n - \ \"description\": \"Retrieve the list of broadcasts associated with - the given channel.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n },\n \"delete\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to delete.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Delete a given broadcast.\",\n \"id\": - \"youtube.liveBroadcasts.delete\",\n \"httpMethod\": \"DELETE\"\n - \ },\n \"transition\": {\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"broadcastStatus\": {\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Start testing the broadcast. YouTube transmits video to - the broadcast's monitor stream. Note that you can only transition a broadcast - to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"required\": true,\n \"description\": - \"The status to which the broadcast is going to transition.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Broadcast to transition.\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"broadcastStatus\",\n - \ \"id\",\n \"part\"\n ],\n \"description\": - \"Transition a broadcast to a given status.\",\n \"path\": \"youtube/v3/liveBroadcasts/transition\"\n - \ },\n \"insert\": {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.insert\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Inserts a new stream for the authenticated user.\"\n },\n \"update\": - {\n \"description\": \"Updates an existing broadcast for the authenticated - user.\",\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n }\n },\n \"bind\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Broadcast to bind to the stream\",\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"streamId\": {\n \"description\": - \"Stream to bind, if not set unbind the current one.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Bind a broadcast to a stream.\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"id\": - \"youtube.liveBroadcasts.bind\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n }\n },\n \"insertCuepoint\": {\n - \ \"request\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to insert ads to, or equivalently - `external_video_id` for internal use.\"\n }\n },\n \"parameterOrder\": - [],\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"description\": - \"Insert cuepoints in a broadcast\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Cuepoint\"\n - \ },\n \"httpMethod\": \"POST\"\n }\n }\n },\n - \ \"liveStreams\": {\n \"methods\": {\n \"delete\": {\n \"path\": - \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes an existing stream for the - authenticated user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.liveStreams.delete\",\n \"flatPath\": \"youtube/v3/liveStreams\"\n - \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.liveStreams.list\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return LiveStreams with the given - ids from Stubby or Apiary.\",\n \"repeated\": true\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"default\": - \"5\",\n \"location\": \"query\",\n \"minimum\": - \"0\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"type\": \"integer\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\"\n },\n - \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.insert\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"response\": {\n - \ \"$ref\": \"LiveStream\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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, - content_details, and status.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveStreams\"\n },\n \"update\": - {\n \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"id\": \"youtube.liveStreams.update\",\n \"httpMethod\": - \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"subscriptions\": - {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"id\": \"youtube.subscriptions.list\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"mine\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Flag for returning the subscriptions of the - authenticated user.\",\n \"location\": \"query\"\n },\n - \ \"myRecentSubscribers\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"order\": {\n \"type\": \"string\",\n \"enum\": - [\n \"subscriptionOrderUnspecified\",\n \"relevance\",\n - \ \"unread\",\n \"alphabetical\"\n ],\n - \ \"location\": \"query\",\n \"default\": \"relevance\",\n - \ \"description\": \"The order of the returned subscriptions\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Sort - by relevance.\",\n \"Sort by order of activity.\",\n \"Sort - alphabetically.\"\n ]\n },\n \"id\": {\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\"\n },\n \"forChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Return the subscriptions to - the subset of these channels that the authenticated user is subscribed to.\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\",\n \"maximum\": \"50\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"mySubscribers\": {\n \"description\": - \"Return the subscribers of the given channel owner.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the subscriptions of the given channel - owner.\"\n }\n },\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"path\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"description\": - \"Deletes a resource.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"id\": \"youtube.subscriptions.delete\"\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.subscriptions.insert\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Inserts - a new resource into this collection.\",\n \"response\": {\n \"$ref\": - \"Subscription\"\n }\n }\n }\n },\n \"channels\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/channels\",\n - \ \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n },\n - \ \"forUsername\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return the channel associated - with a YouTube username.\"\n },\n \"pageToken\": {\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mySubscribers\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the channels subscribed to the authenticated user\",\n \"location\": - \"query\"\n },\n \"categoryId\": {\n \"description\": - \"Return the channels within the specified guide category ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Return the ids of channels owned by the authenticated - user.\"\n },\n \"id\": {\n \"description\": - \"Return the channels with the specified IDs.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"managedByMe\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the channels managed by the authenticated user.\"\n },\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"default\": \"5\",\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"id\": \"youtube.channels.list\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ]\n },\n \"update\": {\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/channels\",\n - \ \"id\": \"youtube.channels.update\",\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"Channel\"\n },\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"PUT\"\n }\n }\n },\n \"liveChatBans\": - {\n \"methods\": {\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"request\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"description\": \"Inserts a new - resource into this collection.\",\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\"\n }\n }\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveChatBans.delete\",\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"description\": \"Deletes a chat - ban.\",\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"httpMethod\": \"DELETE\"\n }\n }\n },\n \"videoCategories\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videoCategories\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - videoCategory resource properties that the API response will include. Set - the parameter value to snippet.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"regionCode\": {\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"default\": \"en-US\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"repeated\": - true,\n \"description\": \"Returns the video categories with - the given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/videoCategories\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.videoCategories.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n }\n }\n - \ },\n \"videos\": {\n \"methods\": {\n \"insert\": {\n \"supportsMediaUpload\": - true,\n \"parameters\": {\n \"stabilize\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Should stabilize be applied to the upload.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"autoLevels\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Should auto-levels be applied to the upload.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"notifySubscribers\": {\n \"default\": - \"true\",\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Notify the channel subscribers - about the new video. As default, the notification is enabled.\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/videos\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"id\": \"youtube.videos.insert\",\n \"mediaUpload\": {\n - \ \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"274877906944\",\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/videos\"\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ }\n }\n },\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\"\n },\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/videos\",\n - \ \"response\": {\n \"$ref\": \"VideoListResponse\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.list\",\n \"parameters\": {\n - \ \"id\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return videos with the given ids.\"\n },\n \"maxHeight\": - {\n \"minimum\": \"72\",\n \"maximum\": \"8192\",\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"format\": \"int32\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"maxResults\": {\n \"description\": - \"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.\",\n \"default\": - \"5\",\n \"minimum\": \"1\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Use a chart that is specific to the specified - region\"\n },\n \"chart\": {\n \"type\": - \"string\",\n \"description\": \"Return the videos that are in - the specified chart.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ],\n - \ \"enum\": [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ]\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ },\n \"locale\": {\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"videoCategoryId\": - {\n \"default\": \"0\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Use - chart that is specific to the specified video category\"\n },\n - \ \"hl\": {\n \"description\": \"Stands for \\\"host - language\\\". Specifies the localization language of the metadata to be filled - into snippet.localized. The field is filled with the default metadata if there - is no localization in the specified language. The parameter value must be - a language code included in the list returned by the i18nLanguages.list method - (e.g. en_US, es_MX).\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"myRating\": - {\n \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ]\n },\n \"maxWidth\": {\n - \ \"minimum\": \"72\",\n \"description\": \"Return - the player with maximum height specified in\",\n \"maximum\": - \"8192\",\n \"format\": \"int32\",\n \"location\": - \"query\",\n \"type\": \"integer\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ },\n \"getRating\": {\n \"description\": \"Retrieves - the ratings that the authorized user gave to a list of specified videos.\",\n - \ \"id\": \"youtube.videos.getRating\",\n \"flatPath\": \"youtube/v3/videos/getRating\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n }\n },\n \"path\": - \"youtube/v3/videos/getRating\",\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"response\": {\n \"$ref\": - \"VideoGetRatingResponse\"\n }\n },\n \"rate\": {\n - \ \"flatPath\": \"youtube/v3/videos/rate\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"id\",\n \"rating\"\n - \ ],\n \"description\": \"Adds a like or dislike rating to - a video or removes a rating from a video.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos/rate\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"rating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n }\n },\n - \ \"id\": \"youtube.videos.rate\"\n },\n \"reportAbuse\": - {\n \"path\": \"youtube/v3/videos/reportAbuse\",\n \"parameterOrder\": - [],\n \"id\": \"youtube.videos.reportAbuse\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"description\": \"Report abuse for a video.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"delete\": {\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/videos\",\n \"description\": \"Deletes - a resource.\",\n \"flatPath\": \"youtube/v3/videos\",\n \"id\": - \"youtube.videos.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"update\": {\n \"path\": \"youtube/v3/videos\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"description\": - \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"id\": \"youtube.videos.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"httpMethod\": \"PUT\",\n \"request\": {\n - \ \"$ref\": \"Video\"\n }\n }\n }\n },\n - \ \"channelSections\": {\n \"methods\": {\n \"insert\": {\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.channelSections.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"request\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"ChannelSectionListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"hl\": - {\n \"description\": \"Return content in specified language\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Return - the ChannelSections owned by the authenticated user.\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"Return the ChannelSections with - the given IDs for Stubby or Apiary.\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"path\": - \"youtube/v3/channelSections\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.channelSections.list\"\n },\n \"update\": - {\n \"path\": \"youtube/v3/channelSections\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"id\": \"youtube.channelSections.update\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"description\": \"Updates an existing - resource.\",\n \"httpMethod\": \"PUT\"\n },\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.channelSections.delete\",\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\"\n }\n - \ }\n }\n },\n \"id\": \"youtube:v3\",\n \"basePath\": \"\",\n \"revision\": - \"20230220\",\n \"title\": \"YouTube Data API v3\",\n \"ownerDomain\": \"google.com\",\n - \ \"servicePath\": \"\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:38 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCYoGg9ZHGNMi_5Lc15kLyLg&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"Eia1_pQ45w19YtHFwztLVwDVxx8\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"Y1nK-Fuv9SKIyvX8Y_HVJtU6Xko\",\n \"id\": \"UCYoGg9ZHGNMi_5Lc15kLyLg\",\n - \ \"snippet\": {\n \"title\": \"NB\",\n \"description\": - \"\u26A1 Donate4Fun to me here https://donate4.fun/youtube/8615758b-bafe-48de-9c8a-7dab12cd615a\\n\\n\u26A1nbryskin@getalby.com\",\n - \ \"customUrl\": \"@nbryskin\",\n \"publishedAt\": \"2009-02-16T12:04:58Z\",\n - \ \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/qZj4tXSeLwp58MY7M7imxR0SqQ_QJc2bp3Hs3gvcESyUIylKG5xGOWlJjSh1Ww2eBg9oVoz0Xg=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/qZj4tXSeLwp58MY7M7imxR0SqQ_QJc2bp3Hs3gvcESyUIylKG5xGOWlJjSh1Ww2eBg9oVoz0Xg=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/qZj4tXSeLwp58MY7M7imxR0SqQ_QJc2bp3Hs3gvcESyUIylKG5xGOWlJjSh1Ww2eBg9oVoz0Xg=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"NB\",\n \"description\": - \"\u26A1 Donate4Fun to me here https://donate4.fun/youtube/8615758b-bafe-48de-9c8a-7dab12cd615a\\n\\n\u26A1nbryskin@getalby.com\"\n - \ }\n },\n \"brandingSettings\": {\n \"channel\": {\n - \ \"title\": \"NB\",\n \"description\": \"\u26A1 Donate4Fun - to me here https://donate4.fun/youtube/8615758b-bafe-48de-9c8a-7dab12cd615a\\n\\n\u26A1nbryskin@getalby.com\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:38 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n }\n - \ }\n }\n },\n \"version\": \"v3\",\n \"canonicalName\": \"YouTube\",\n - \ \"id\": \"youtube:v3\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"servicePath\": \"\",\n \"description\": \"The YouTube Data API v3 is - an API that provides access to YouTube data, such as videos, playlists, and - channels.\",\n \"resources\": {\n \"watermarks\": {\n \"methods\": - {\n \"unset\": {\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n - \ \"description\": \"Allows removal of channel watermark.\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.watermarks.unset\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"path\": \"youtube/v3/watermarks/unset\"\n - \ },\n \"set\": {\n \"mediaUpload\": {\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"10485760\",\n - \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"id\": \"youtube.watermarks.set\",\n \"parameters\": {\n - \ \"channelId\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"path\": \"youtube/v3/watermarks/set\",\n \"request\": - {\n \"$ref\": \"InvideoBranding\"\n },\n \"supportsMediaUpload\": - true,\n \"flatPath\": \"youtube/v3/watermarks/set\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Allows upload of watermark image and - setting it for a channel.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"delete\": - {\n \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/videos\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.videos.delete\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/videos\"\n },\n - \ \"insert\": {\n \"path\": \"youtube/v3/videos\",\n \"supportsMediaUpload\": - true,\n \"flatPath\": \"youtube/v3/videos\",\n \"mediaUpload\": - {\n \"maxSize\": \"274877906944\",\n \"accept\": [\n - \ \"video/*\",\n \"application/octet-stream\"\n ],\n - \ \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": true\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\"\n },\n \"autoLevels\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Should auto-levels be applied to the upload.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"notifySubscribers\": {\n \"description\": - \"Notify the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"default\": \"true\"\n },\n \"stabilize\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Should stabilize be applied to the upload.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.videos.insert\"\n - \ },\n \"list\": {\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/videos\",\n - \ \"response\": {\n \"$ref\": \"VideoListResponse\"\n },\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"parameters\": - {\n \"maxHeight\": {\n \"minimum\": \"72\",\n \"maximum\": - \"8192\",\n \"location\": \"query\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return videos with the given ids.\",\n \"repeated\": true\n - \ },\n \"part\": {\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"type\": \"integer\",\n \"description\": \"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.\",\n \"default\": - \"5\",\n \"location\": \"query\",\n \"minimum\": - \"1\"\n },\n \"myRating\": {\n \"location\": - \"query\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\"\n },\n \"chart\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the videos that are in the specified - chart.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"enum\": [\n - \ \"chartUnspecified\",\n \"mostPopular\"\n ]\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"locale\": {\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"maxWidth\": - {\n \"format\": \"int32\",\n \"description\": \"Return - the player with maximum height specified in\",\n \"type\": \"integer\",\n - \ \"minimum\": \"72\",\n \"location\": \"query\",\n - \ \"maximum\": \"8192\"\n },\n \"regionCode\": - {\n \"description\": \"Use a chart that is specific to the specified - region\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoCategoryId\": - {\n \"description\": \"Use chart that is specific to the specified - video category\",\n \"location\": \"query\",\n \"default\": - \"0\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.videos.list\"\n },\n \"rate\": {\n - \ \"flatPath\": \"youtube/v3/videos/rate\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"path\": - \"youtube/v3/videos/rate\",\n \"id\": \"youtube.videos.rate\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"rating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ]\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Adds a like or dislike rating to a video or removes - a rating from a video.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"getRating\": {\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"description\": \"Retrieves the ratings that the - authorized user gave to a list of specified videos.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.getRating\",\n \"flatPath\": - \"youtube/v3/videos/getRating\",\n \"httpMethod\": \"GET\"\n },\n - \ \"reportAbuse\": {\n \"request\": {\n \"$ref\": - \"VideoAbuseReport\"\n },\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Report abuse for a video.\",\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\",\n \"id\": \"youtube.videos.reportAbuse\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"parameterOrder\": [],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos/reportAbuse\"\n },\n - \ \"update\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"path\": \"youtube/v3/videos\",\n \"httpMethod\": \"PUT\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"id\": \"youtube.videos.update\",\n \"response\": {\n - \ \"$ref\": \"Video\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"members\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/members\",\n \"id\": - \"youtube.members.list\",\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"flatPath\": \"youtube/v3/members\",\n - \ \"description\": \"Retrieves a list of members that match the request - criteria for a channel.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"filterByMemberChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Comma separated list of channel - IDs. Only data about members that are part of this list will be included in - the response.\",\n \"type\": \"string\"\n },\n \"mode\": - {\n \"location\": \"query\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - only members that joined after the first call with this mode was made.\",\n - \ \"Return all current members, from newest to oldest.\"\n ],\n - \ \"default\": \"all_current\",\n \"type\": \"string\",\n - \ \"description\": \"Parameter that specifies which channel members - to return.\"\n },\n \"maxResults\": {\n \"maximum\": - \"1000\",\n \"default\": \"5\",\n \"minimum\": \"0\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"hasAccessToLevel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter members in the results set to the - ones that have access to a level.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"liveChatBans\": {\n \"methods\": {\n \"insert\": - {\n \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.liveChatBans.insert\"\n - \ },\n \"delete\": {\n \"id\": \"youtube.liveChatBans.delete\",\n - \ \"description\": \"Deletes a chat ban.\",\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ }\n }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": - {\n \"list\": {\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"parameters\": - {\n \"hl\": {\n \"default\": \"en-US\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the videoCategory resource parts that the API response - will include. Supported values are id and snippet.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"liveChatModerators\": - {\n \"methods\": {\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a chat moderator.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"id\": - \"youtube.liveChatModerators.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n }\n },\n \"insert\": {\n \"id\": - \"youtube.liveChatModerators.insert\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\"\n },\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"LiveChatModeratorListResponse\"\n },\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameters\": {\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"liveChatId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The id - of the live chat for which moderators should be returned.\"\n },\n - \ \"part\": {\n \"description\": \"The *part* parameter - specifies the liveChatModerator resource parts that the API response will - include. Supported values are id and snippet.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\"\n }\n },\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"id\": \"youtube.liveChatModerators.list\"\n }\n }\n - \ },\n \"liveStreams\": {\n \"methods\": {\n \"update\": - {\n \"path\": \"youtube/v3/liveStreams\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"description\": - \"Updates an existing stream for the authenticated user.\",\n \"httpMethod\": - \"PUT\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"id\": \"youtube.liveStreams.update\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"delete\": {\n - \ \"description\": \"Deletes an existing stream for the authenticated - user.\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n }\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieve - the list of streams associated with the given channel. --\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Return - LiveStreams with the given ids from Stubby or Apiary.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.list\",\n - \ \"path\": \"youtube/v3/liveStreams\"\n },\n \"insert\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.insert\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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, content_details, and status.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true\n }\n - \ },\n \"path\": \"youtube/v3/liveStreams\",\n \"flatPath\": - \"youtube/v3/liveStreams\"\n }\n }\n },\n \"search\": {\n - \ \"methods\": {\n \"list\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"publishedBefore\": {\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"description\": - \"Filter on resources published before this date.\",\n \"type\": - \"string\"\n },\n \"videoLicense\": {\n \"location\": - \"query\",\n \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"description\": - \"Filter on the license of the videos.\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"type\": \"string\"\n },\n \"location\": - {\n \"description\": \"Filter on location of the video\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"safeSearch\": - {\n \"default\": \"moderate\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ],\n \"description\": \"Indicates - whether the search results should include restricted content as well as standard - content.\"\n },\n \"regionCode\": {\n \"type\": - \"string\",\n \"description\": \"Display the content as seen - by viewers in this country.\",\n \"location\": \"query\"\n },\n - \ \"forMine\": {\n \"location\": \"query\",\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n },\n \"channelId\": {\n \"description\": - \"Filter on resources belonging to this channelId.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"relatedToVideoId\": - {\n \"location\": \"query\",\n \"description\": - \"Search related to a resource.\",\n \"type\": \"string\"\n },\n - \ \"videoCategoryId\": {\n \"type\": \"string\",\n - \ \"description\": \"Filter on videos in a specific category.\",\n - \ \"location\": \"query\"\n },\n \"videoSyndicated\": - {\n \"type\": \"string\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"description\": \"Filter on syndicated videos.\",\n \"location\": - \"query\"\n },\n \"order\": {\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"description\": \"Sort order of the results.\",\n \"default\": - \"relevance\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"eventType\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Filter - on the livestream status of the videos.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n - \ },\n \"videoDimension\": {\n \"enum\": - [\n \"any\",\n \"2d\",\n \"3d\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"type\": \"string\",\n \"description\": - \"Filter on 3d videos.\"\n },\n \"videoEmbeddable\": - {\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on embeddable videos.\"\n },\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"default\": \"5\",\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"location\": \"query\",\n \"format\": - \"uint32\"\n },\n \"forDeveloper\": {\n \"location\": - \"query\",\n \"description\": \"Restrict the search to only retrieve - videos uploaded using the project id of the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"videoDuration\": {\n \"description\": - \"Filter on the duration of the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"forContentOwner\": - {\n \"description\": \"Search owned by a content owner.\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"locationRadius\": {\n \"description\": - \"Filter on distance from the location (specified above).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoDefinition\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on the definition of the videos.\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ]\n },\n \"videoType\": - {\n \"location\": \"query\",\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"description\": \"Filter on videos of a specific - type.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ]\n },\n \"videoCaption\": {\n \"location\": - \"query\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter results based on caption availability.\",\n - \ \"Only include videos that have captions.\",\n \"Only - include videos that do not have captions.\"\n ],\n \"type\": - \"string\",\n \"description\": \"Filter on the presence of captions - on the videos.\"\n },\n \"relevanceLanguage\": {\n \"location\": - \"query\",\n \"description\": \"Return results relevant to this - language.\",\n \"type\": \"string\"\n },\n \"q\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Textual search terms to match.\"\n },\n - \ \"topicId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Restrict results to a particular - topic.\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Restrict results to a particular set - of resource types from One Platform.\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"publishedAfter\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"format\": - \"google-datetime\",\n \"description\": \"Filter on resources - published after this date.\"\n },\n \"channelType\": - {\n \"type\": \"string\",\n \"description\": \"Add - a filter on the channel search.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"SearchListResponse\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/search\",\n \"id\": - \"youtube.search.list\",\n \"flatPath\": \"youtube/v3/search\",\n - \ \"description\": \"Retrieves a list of search resources\"\n }\n - \ }\n },\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the i18nLanguage resource properties that the API response will include. Set - the parameter value to snippet.\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"en_US\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"path\": \"youtube/v3/i18nLanguages\",\n \"id\": - \"youtube.i18nLanguages.list\",\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"activities\": {\n \"methods\": {\n - \ \"list\": {\n \"path\": \"youtube/v3/activities\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"parameters\": {\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"publishedAfter\": - {\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"publishedBefore\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ },\n \"home\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"description\": \"The *maxResults* parameter - specifies the maximum number of items that should be returned in the result - set.\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"maximum\": \"50\"\n }\n },\n \"id\": - \"youtube.activities.list\",\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"description\": \"POST method.\",\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"path\": \"youtube/v3/tests\",\n \"response\": - {\n \"$ref\": \"TestItem\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.tests.insert\",\n - \ \"flatPath\": \"youtube/v3/tests\"\n }\n }\n },\n - \ \"thirdPartyLinks\": {\n \"methods\": {\n \"list\": {\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.list\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"The *part* parameter - specifies the thirdPartyLink resource parts that the API response will include. - Supported values are linkingToken, status, and snippet.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"linkingToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Get a third party link with the given linking token.\"\n },\n - \ \"type\": {\n \"description\": \"Get a third party - link of the given type.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ]\n }\n },\n \"httpMethod\": \"GET\"\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"type\": {\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"description\": \"Type of the link to be - deleted.\",\n \"type\": \"string\",\n \"required\": - true,\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"location\": - \"query\"\n },\n \"linkingToken\": {\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"Do not use. Required for compatibility.\",\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.thirdPartyLinks.delete\"\n - \ },\n \"update\": {\n \"description\": \"Updates an - existing resource.\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.update\"\n },\n \"insert\": - {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"type\": \"string\"\n },\n - \ \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\"\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.i18nRegions.list\",\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"default\": \"en_US\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the i18nRegion resource properties that the API response - will include. Set the parameter value to snippet.\"\n }\n }\n - \ }\n }\n },\n \"playlistItems\": {\n \"methods\": {\n - \ \"list\": {\n \"path\": \"youtube/v3/playlistItems\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"minimum\": \"0\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"type\": \"integer\"\n },\n - \ \"playlistId\": {\n \"description\": \"Return the - playlist items within the given playlist.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the playlist items associated with the given video ID.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"id\": \"youtube.playlistItems.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\"\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"path\": \"youtube/v3/playlistItems\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"id\": \"youtube.playlistItems.delete\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n }\n },\n - \ \"insert\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"path\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.playlistItems.update\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"PUT\"\n }\n }\n },\n \"playlists\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"id\": \"youtube.playlists.list\",\n \"path\": - \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"maxResults\": {\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\",\n \"default\": \"5\",\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the playlists owned by - the specified channel ID.\",\n \"type\": \"string\"\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return content in specified language\"\n - \ },\n \"mine\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Return the playlists owned by the authenticated - user.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Return - the playlists with the given IDs for Stubby or Apiary.\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"GET\"\n },\n \"update\": {\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"id\": \"youtube.playlists.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true\n }\n },\n \"path\": - \"youtube/v3/playlists\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"httpMethod\": \"PUT\"\n },\n \"insert\": - {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"id\": \"youtube.playlists.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"path\": \"youtube/v3/playlists\"\n },\n \"delete\": - {\n \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlists.delete\",\n \"path\": \"youtube/v3/playlists\"\n - \ }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"path\": \"youtube/v3/commentThreads\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"id\": \"youtube.commentThreads.list\",\n - \ \"parameters\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\"\n },\n \"textFormat\": {\n - \ \"description\": \"The requested text format for the returned - comments.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"type\": \"string\",\n \"default\": - \"html\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ]\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"maximum\": \"100\",\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"minimum\": \"1\",\n \"type\": \"integer\",\n - \ \"default\": \"20\"\n },\n \"id\": {\n - \ \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"searchTerms\": {\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"repeated\": - true\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"Returns the comment threads - of the specified video.\",\n \"location\": \"query\"\n },\n - \ \"order\": {\n \"default\": \"time\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"allThreadsRelatedToChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of all videos of the channel and the channel - comments as well.\"\n },\n \"moderationStatus\": {\n - \ \"type\": \"string\",\n \"description\": \"Limits - the returned comment threads to those with the specified moderation status. - Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"default\": - \"published\",\n \"location\": \"query\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ]\n }\n }\n - \ },\n \"insert\": {\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"description\": \"Inserts a new - resource into this collection.\",\n \"httpMethod\": \"POST\"\n }\n - \ }\n },\n \"channelSections\": {\n \"methods\": {\n \"update\": - {\n \"id\": \"youtube.channelSections.update\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"path\": - \"youtube/v3/channelSections\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/channelSections\"\n - \ },\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"description\": - \"Deletes a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.delete\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n }\n },\n \"list\": {\n - \ \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return content in specified language\"\n - \ },\n \"mine\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Return the ChannelSections owned by the authenticated - user.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Return the ChannelSections with - the given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"channelId\": - {\n \"description\": \"Return the ChannelSections owned by the - specified channel ID.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"id\": \"youtube.channelSections.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/channelSections\"\n },\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"id\": \"youtube.channelSections.insert\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"description\": \"Inserts a new - resource into this collection.\",\n \"path\": \"youtube/v3/channelSections\"\n - \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"update\": - {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"response\": {\n \"$ref\": \"Channel\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/channels\",\n - \ \"description\": \"Updates an existing resource.\",\n \"id\": - \"youtube.channels.update\",\n \"request\": {\n \"$ref\": - \"Channel\"\n }\n },\n \"list\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Return the ids of channels owned by the authenticated - user.\"\n },\n \"categoryId\": {\n \"type\": - \"string\",\n \"description\": \"Return the channels within the - specified guide category ID.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"Return the channels with the - specified IDs.\",\n \"type\": \"string\"\n },\n \"managedByMe\": - {\n \"description\": \"Return the channels managed by the authenticated - user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n },\n \"mySubscribers\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the channels subscribed to the authenticated user\"\n },\n - \ \"forUsername\": {\n \"description\": \"Return the - channel associated with a YouTube username.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"location\": \"query\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/channels\",\n \"path\": - \"youtube/v3/channels\",\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.channels.list\",\n \"response\": {\n \"$ref\": - \"ChannelListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\"\n },\n \"list\": {\n - \ \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"description\": \"Specifies the localization language - in which the system messages should be returned.\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the liveChatComment resource parts that the API - response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"200\",\n \"maximum\": \"2000\",\n \"default\": - \"500\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"location\": \"query\"\n },\n \"liveChatId\": - {\n \"location\": \"query\",\n \"description\": - \"The id of the live chat for which comments should be returned.\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"profileImageSize\": - {\n \"minimum\": \"16\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"720\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\"\n },\n \"delete\": {\n \"description\": - \"Deletes a chat message.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.liveChatMessages.delete\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": - [\n \"id\"\n ]\n }\n }\n },\n \"membershipsLevels\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"MembershipsLevelListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"id\": \"youtube.membershipsLevels.list\",\n \"path\": - \"youtube/v3/membershipsLevels\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of all pricing - levels offered by a creator to the fans.\",\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the membershipsLevel - resource parts that the API response will include. Supported values are id - and snippet.\"\n }\n }\n }\n }\n },\n \"youtube\": - {\n \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"path\": \"youtube/v3/commentThreads\",\n \"parameterOrder\": - [],\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"id\": \"youtube.youtube.v3.updateCommentThreads\"\n - \ }\n }\n }\n }\n },\n \"subscriptions\": - {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"response\": - {\n \"$ref\": \"SubscriptionListResponse\"\n },\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"myRecentSubscribers\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"forChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the subscriptions to the subset of - these channels that the authenticated user is subscribed to.\"\n },\n - \ \"order\": {\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"default\": \"relevance\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"The order of the returned subscriptions\",\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ]\n - \ },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the subscribers of the given channel owner.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the subscriptions of the given channel owner.\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"default\": \"5\"\n }\n },\n \"id\": - \"youtube.subscriptions.list\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\"\n },\n \"insert\": {\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/subscriptions\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.subscriptions.insert\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"response\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"flatPath\": \"youtube/v3/subscriptions\"\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"id\": \"youtube.subscriptions.delete\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"httpMethod\": \"DELETE\"\n }\n - \ }\n },\n \"abuseReports\": {\n \"methods\": {\n \"insert\": - {\n \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/abuseReports\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": true\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"captions\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/captions\",\n - \ \"id\": \"youtube.captions.list\",\n \"response\": {\n - \ \"$ref\": \"CaptionListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/captions\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"videoId\": {\n \"description\": \"Returns the captions - for the specified video.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the captions with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n }\n },\n \"delete\": {\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.captions.delete\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"path\": \"youtube/v3/captions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\"\n },\n - \ \"update\": {\n \"id\": \"youtube.captions.update\",\n \"path\": - \"youtube/v3/captions\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"supportsMediaUpload\": true,\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"sync\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOf\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is on behalf of.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"description\": \"Updates an existing resource.\"\n },\n - \ \"insert\": {\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"path\": \"youtube/v3/captions\",\n \"response\": {\n - \ \"$ref\": \"Caption\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"mediaUpload\": {\n \"protocols\": {\n - \ \"simple\": {\n \"path\": \"/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"104857600\",\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"The *part* parameter - specifies the caption resource parts that the API response will include. Set - the parameter value to snippet.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"sync\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\",\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n }\n - \ },\n \"supportsMediaUpload\": true,\n \"id\": - \"youtube.captions.insert\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"description\": - \"Inserts a new resource into this collection.\"\n },\n \"download\": - {\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.captions.download\",\n - \ \"parameters\": {\n \"tfmt\": {\n \"type\": - \"string\",\n \"description\": \"Convert the captions into this - format. Supported options are sbv, srt, and vtt.\",\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"required\": true,\n - \ \"location\": \"path\",\n \"description\": \"The - ID of the caption track to download, required for One Platform.\",\n \"type\": - \"string\"\n },\n \"tlang\": {\n \"description\": - \"tlang is the language code; machine translate the captions into this language.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/captions/{id}\",\n \"supportsMediaDownload\": - true,\n \"path\": \"youtube/v3/captions/{id}\",\n \"description\": - \"Downloads a caption track.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"useMediaDownloadService\": true,\n \"parameterOrder\": - [\n \"id\"\n ]\n }\n }\n },\n \"thumbnails\": - {\n \"methods\": {\n \"set\": {\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"parameters\": {\n \"videoId\": {\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"supportsMediaUpload\": true,\n \"parameterOrder\": [\n - \ \"videoId\"\n ],\n \"id\": \"youtube.thumbnails.set\",\n - \ \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/thumbnails/set\",\n \"description\": - \"As this is not an insert in a strict sense (it supports uploading/setting - of a thumbnail for multiple videos, which doesn't result in creation of a - single resource), I use a custom verb here.\",\n \"mediaUpload\": - {\n \"maxSize\": \"2097152\",\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ }\n }\n },\n \"httpMethod\": \"POST\"\n - \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"transition\": {\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Transition a broadcast to a given - status.\",\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"Broadcast - to transition.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"broadcastStatus\": {\n \"required\": - true,\n \"enumDescriptions\": [\n \"\",\n \"Start - testing the broadcast. YouTube transmits video to the broadcast's monitor - stream. Note that you can only transition a broadcast to the testing state - if its contentDetails.monitorStream.enableMonitorStream property is set to - true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The - broadcast is over. YouTube stops transmitting video.\"\n ],\n - \ \"enum\": [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"The - status to which the broadcast is going to transition.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"id\": \"youtube.liveBroadcasts.transition\"\n },\n \"list\": - {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n - \ \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"type\": \"integer\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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, status - and statistics.\",\n \"required\": true,\n \"type\": - \"string\"\n },\n \"broadcastType\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ],\n \"location\": \"query\",\n \"enum\": - [\n \"broadcastTypeFilterUnspecified\",\n \"all\",\n - \ \"event\",\n \"persistent\"\n ],\n - \ \"default\": \"event\",\n \"description\": \"Return - only broadcasts with the selected type.\"\n },\n \"broadcastStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return current live broadcasts.\",\n - \ \"Return broadcasts that have not yet started.\",\n \"Return - broadcasts that have already ended.\"\n ],\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"description\": \"Return broadcasts with - a certain status, e.g. active broadcasts.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieve - the list of broadcasts associated with the given channel.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"id\": - \"youtube.liveBroadcasts.list\"\n },\n \"update\": {\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\"\n }\n - \ },\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.update\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Updates an existing broadcast for the authenticated user.\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"delete\": - {\n \"id\": \"youtube.liveBroadcasts.delete\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Broadcast to delete.\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"description\": \"Delete - a given broadcast.\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"bind\": {\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.liveBroadcasts.bind\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"location\": \"query\"\n - \ },\n \"streamId\": {\n \"type\": \"string\",\n - \ \"description\": \"Stream to bind, if not set unbind the current - one.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"description\": - \"Broadcast to bind to the stream\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Bind a broadcast to a stream.\",\n \"parameterOrder\": [\n \"id\",\n - \ \"part\"\n ]\n },\n \"insert\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n }\n },\n \"insertCuepoint\": - {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"Broadcast - to insert ads to, or equivalently `external_video_id` for internal use.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"request\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/cuepoint\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"parameterOrder\": - [],\n \"description\": \"Insert cuepoints in a broadcast\"\n }\n - \ }\n },\n \"comments\": {\n \"methods\": {\n \"setModerationStatus\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Sets the moderation status of one - or more comments.\",\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"path\": \"youtube/v3/comments/setModerationStatus\",\n \"parameters\": - {\n \"id\": {\n \"description\": \"Modifies the moderation - status of the comments with the given IDs\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"banAuthor\": - {\n \"location\": \"query\",\n \"description\": - \"If set to true the author of the comment gets added to the ban list. This - means all future comments of the author will autmomatically be rejected. Only - valid in combination with STATUS_REJECTED.\",\n \"type\": \"boolean\",\n - \ \"default\": \"false\"\n },\n \"moderationStatus\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by - a moderator.\",\n \"\",\n \"The comment is unfit - for display.\"\n ],\n \"description\": \"Specifies - the requested moderation status. Note, comments can be in statuses, which - are not available through this call. For example, this call does not allow - to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"required\": - true,\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ]\n - \ }\n },\n \"parameterOrder\": [\n \"id\",\n - \ \"moderationStatus\"\n ],\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"httpMethod\": \"POST\"\n },\n \"update\": {\n \"flatPath\": - \"youtube/v3/comments\",\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.update\",\n \"description\": - \"Updates an existing resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n - \ \"required\": true,\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"Comment\"\n }\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new resource into this collection.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"request\": {\n - \ \"$ref\": \"Comment\"\n },\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.comments.insert\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"response\": - {\n \"$ref\": \"Comment\"\n }\n },\n \"markAsSpam\": - {\n \"id\": \"youtube.comments.markAsSpam\",\n \"flatPath\": - \"youtube/v3/comments/markAsSpam\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"Flags - the comments with the given IDs as spam in the caller's opinion.\",\n \"repeated\": - true\n }\n },\n \"description\": \"Expresses - the caller's opinion that one or more comments should be flagged as spam.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/comments/markAsSpam\"\n - \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Deletes a resource.\"\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"CommentListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.comments.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more comment - resource properties that the API response will include.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n },\n \"id\": {\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"Returns the comments with the given IDs for One Platform.\"\n },\n - \ \"maxResults\": {\n \"default\": \"20\",\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"minimum\": - \"1\",\n \"maximum\": \"100\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"parentId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Returns replies to the specified - comment. Note, currently YouTube features only one level of replies (ie replies - to top level comments). However replies to replies may be supported in the - future.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"textFormat\": - {\n \"type\": \"string\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"default\": \"html\",\n \"description\": \"The - requested text format for the returned comments.\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"flatPath\": \"youtube/v3/comments\"\n }\n }\n },\n - \ \"superChatEvents\": {\n \"methods\": {\n \"list\": {\n \"path\": - \"youtube/v3/superChatEvents\",\n \"parameters\": {\n \"hl\": - {\n \"description\": \"Return rendered funding amounts in specified - language.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - superChatEvent resource parts that the API response will include. This parameter - is currently not supported.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"minimum\": \"1\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.superChatEvents.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"videoCategories\": - {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/videoCategories\",\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"Returns the video categories - with the given IDs for Stubby or Apiary.\",\n \"location\": \"query\"\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"default\": \"en-US\",\n \"type\": \"string\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"VideoCategoryListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"id\": \"youtube.videoCategories.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.channelBanners.insert\",\n - \ \"supportsMediaUpload\": true,\n \"request\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"parameterOrder\": [],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\",\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/channelBanners/insert\"\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n }\n },\n \"description\": \"Inserts - a new resource into this collection.\",\n \"path\": \"youtube/v3/channelBanners/insert\"\n - \ }\n }\n }\n },\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"ownerDomain\": \"google.com\",\n \"parameters\": {\n \"upload_protocol\": - {\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"$.xgafv\": - {\n \"enum\": [\n \"1\",\n \"2\"\n ],\n \"location\": - \"query\",\n \"description\": \"V1 error format.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"v1 error format\",\n - \ \"v2 error format\"\n ]\n },\n \"uploadType\": {\n \"type\": - \"string\",\n \"description\": \"Legacy upload protocol for media (e.g. - \\\"media\\\", \\\"multipart\\\").\",\n \"location\": \"query\"\n },\n - \ \"alt\": {\n \"enumDescriptions\": [\n \"Responses with Content-Type - of application/json\",\n \"Media download with context-dependent Content-Type\",\n - \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n - \ \"description\": \"Data format for response.\",\n \"default\": - \"json\",\n \"type\": \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"json\",\n \"media\",\n \"proto\"\n ]\n },\n - \ \"quotaUser\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n - \ \"location\": \"query\"\n },\n \"callback\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": \"JSONP\"\n - \ },\n \"prettyPrint\": {\n \"default\": \"true\",\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": \"Returns - response with indentations and line breaks.\"\n },\n \"access_token\": - {\n \"location\": \"query\",\n \"description\": \"OAuth access token.\",\n - \ \"type\": \"string\"\n },\n \"fields\": {\n \"description\": - \"Selector specifying which fields to include in a partial response.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n },\n \"oauth_token\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"OAuth 2.0 token for the current user.\"\n },\n \"key\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"kind\": \"discovery#restDescription\",\n - \ \"protocol\": \"rest\",\n \"schemas\": {\n \"Caption\": {\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#caption\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the caption track.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the caption.\",\n \"$ref\": - \"CaptionSnippet\"\n }\n },\n \"id\": \"Caption\",\n \"type\": - \"object\",\n \"description\": \"A *caption* resource represents a YouTube - caption track. A caption track is associated with exactly one YouTube video.\"\n - \ },\n \"VideoGetRatingResponse\": {\n \"properties\": {\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - ratings that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"VideoRating\"\n }\n },\n \"kind\": {\n \"default\": - \"youtube#videoGetRatingResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoGetRatingResponse\"\n },\n \"VideoStatistics\": - {\n \"type\": \"object\",\n \"properties\": {\n \"favoriteCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of users who currently have the video marked as a favorite video.\",\n \"format\": - \"uint64\"\n },\n \"commentCount\": {\n \"description\": - \"The number of comments for the video.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"dislikeCount\": {\n - \ \"type\": \"string\",\n \"description\": \"The number of - users who have indicated that they disliked the video by giving it a negative - rating.\",\n \"format\": \"uint64\"\n },\n \"likeCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of users who have indicated that they liked the video by giving it a positive - rating.\",\n \"type\": \"string\"\n },\n \"viewCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of times the video has been viewed.\",\n \"format\": \"uint64\"\n - \ }\n },\n \"description\": \"Statistics about the video, - such as the number of times the video was viewed or liked.\",\n \"id\": - \"VideoStatistics\"\n },\n \"ThirdPartyLinkStatus\": {\n \"properties\": - {\n \"linkStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ]\n }\n - \ },\n \"id\": \"ThirdPartyLinkStatus\",\n \"type\": \"object\",\n - \ \"description\": \"The third-party link status object contains information - about the status of the link.\"\n },\n \"CaptionListResponse\": {\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"description\": - \"A list of captions that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Caption\"\n }\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#captionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"CaptionListResponse\"\n - \ },\n \"PlaylistListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of playlists that match the - request criteria\",\n \"items\": {\n \"$ref\": \"Playlist\"\n - \ }\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#playlistListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n - \ }\n },\n \"id\": \"PlaylistListResponse\"\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"properties\": {\n \"tag\": {\n \"type\": \"string\",\n - \ \"description\": \"The keyword tag suggested for the video.\"\n - \ },\n \"categoryRestricts\": {\n \"description\": \"A - set of video categories for which the tag is relevant. You can use this information - to display appropriate tag suggestions based on the video category that the - video uploader associates with the video. By default, tag suggestions are - relevant for all categories if there are no restricts defined for the keyword.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoSuggestionsTagSuggestion\",\n \"description\": \"A - single tag suggestion with it's relevance information.\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"properties\": - {\n \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatModerator\": {\n - \ \"type\": \"object\",\n \"description\": \"A *liveChatModerator* - resource represents a moderator for a YouTube live chat. A chat moderator - has the ability to ban/unban users from a chat, remove message, etc.\",\n - \ \"id\": \"LiveChatModerator\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"LiveChatModeratorSnippet\",\n \"description\": - \"The snippet object contains basic details about the moderator.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the moderator.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModerator\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"Activity\": - {\n \"type\": \"object\",\n \"id\": \"Activity\",\n \"properties\": - {\n \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n - \ \"description\": \"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.\"\n },\n \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the activity, including the activity's type and group ID.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n \"default\": - \"youtube#activity\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the activity.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"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.\"\n },\n \"LocalizedProperty\": - {\n \"type\": \"object\",\n \"properties\": {\n \"localized\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n }\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the default property.\",\n - \ \"$ref\": \"LanguageTag\"\n },\n \"default\": {\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LocalizedProperty\"\n - \ },\n \"InvideoTiming\": {\n \"id\": \"InvideoTiming\",\n \"properties\": - {\n \"offsetMs\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"Defines the time at which the promotion - will appear. Depending on the value of type the value of the offsetMs field - will represent a time offset from the start or from the end of the video, - expressed in milliseconds.\"\n },\n \"durationMs\": {\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"type\": {\n \"description\": - \"Describes a timing type. If the value is offsetFromStart, then the offsetMs - field represents an offset from the start of the video. If the value is offsetFromEnd, - then the offsetMs field represents an offset from the end of the video.\",\n - \ \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Describes a temporal - position of a visual widget inside a video.\"\n },\n \"ActivityContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"social\": - {\n \"description\": \"The social object contains details about a - social network post. This property is only present if the snippet.type is - social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n },\n - \ \"promotedItem\": {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\"\n },\n \"recommendation\": {\n \"$ref\": - \"ActivityContentDetailsRecommendation\",\n \"description\": \"The - recommendation object contains information about a recommended resource. This - property is only present if the snippet.type is recommendation.\"\n },\n - \ \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"channelItem\": {\n \"$ref\": - \"ActivityContentDetailsChannelItem\",\n \"description\": \"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.\"\n },\n - \ \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\"\n },\n \"subscription\": {\n \"description\": - \"The subscription object contains information about a channel that a user - subscribed to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"upload\": - {\n \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\",\n - \ \"$ref\": \"ActivityContentDetailsUpload\"\n },\n \"favorite\": - {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n \"description\": - \"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.\"\n - \ },\n \"like\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsLike\"\n },\n \"bulletin\": {\n \"description\": - \"The bulletin object contains details about a channel bulletin post. This - object is only present if the snippet.type is bulletin.\",\n \"$ref\": - \"ActivityContentDetailsBulletin\"\n }\n },\n \"id\": \"ActivityContentDetails\",\n - \ \"description\": \"Details about the content of an activity: the video - that was shared, the channel that was subscribed to, etc.\"\n },\n \"ChannelAuditDetails\": - {\n \"id\": \"ChannelAuditDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"communityGuidelinesGoodStanding\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether or not the channel respects the community - guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": {\n \"description\": - \"Whether or not the channel has any copyright strikes.\",\n \"type\": - \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": {\n \"description\": - \"Whether or not the channel has any unresolved claims.\",\n \"type\": - \"boolean\"\n }\n },\n \"description\": \"The auditDetails - object encapsulates channel data that is relevant for YouTube Partners during - the audit process.\"\n },\n \"VideoCategory\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoCategory\",\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video category.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"default\": \"youtube#videoCategory\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A *videoCategory* resource identifies - a category that has been or could be associated with uploaded videos.\"\n - \ },\n \"TokenPagination\": {\n \"type\": \"object\",\n \"id\": - \"TokenPagination\",\n \"description\": \"Stub token pagination template - to suppress results.\",\n \"properties\": {}\n },\n \"LiveChatTextMessageDetails\": - {\n \"properties\": {\n \"messageText\": {\n \"type\": - \"string\",\n \"description\": \"The user's message.\"\n }\n - \ },\n \"id\": \"LiveChatTextMessageDetails\",\n \"type\": \"object\"\n - \ },\n \"ChannelSection\": {\n \"id\": \"ChannelSection\",\n \"properties\": - {\n \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the channel section, such as its type, style and title.\",\n \"$ref\": - \"ChannelSectionSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelSection\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel section.\",\n \"type\": \"string\"\n - \ },\n \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n - \ \"description\": \"The targeting object contains basic targeting - settings about the channel section.\"\n }\n },\n \"type\": - \"object\"\n },\n \"CdnSettings\": {\n \"id\": \"CdnSettings\",\n - \ \"properties\": {\n \"resolution\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The resolution of the inbound video data.\",\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ]\n },\n \"ingestionType\": {\n \"enum\": - [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"description\": \" The method - or protocol used to transmit the video stream.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"format\": - {\n \"description\": \"The format of the video stream that you are - sending to Youtube. \",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"ingestionInfo\": {\n \"description\": \"The - ingestionInfo object contains information that YouTube provides that you need - to transmit your RTMP or HTTP stream to YouTube.\",\n \"$ref\": \"IngestionInfo\"\n - \ },\n \"frameRate\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The frame rate of the inbound video data.\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Brief description of the live stream cdn settings.\"\n },\n \"LiveBroadcast\": - {\n \"description\": \"A *liveBroadcast* resource represents an event - that will be streamed, via live video, on YouTube.\",\n \"properties\": - {\n \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"The statistics object contains info about the - event's current stats. These include concurrent viewers and total chat count. - Statistics can change (in either direction) during the lifetime of an event. - Statistics are only returned while the event is live.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the broadcast.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the event, including its title, description, start time, - and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveBroadcast\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - information about the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n - \ }\n },\n \"id\": \"LiveBroadcast\",\n \"type\": \"object\"\n - \ },\n \"CommentThread\": {\n \"type\": \"object\",\n \"id\": - \"CommentThread\",\n \"description\": \"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.\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the comment thread and also the top level comment.\",\n - \ \"$ref\": \"CommentThreadSnippet\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment thread.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentThread\\\".\",\n \"default\": - \"youtube#commentThread\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n - \ \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\"\n }\n - \ }\n },\n \"VideoRecordingDetails\": {\n \"properties\": {\n - \ \"location\": {\n \"description\": \"The geolocation information - associated with the video.\",\n \"$ref\": \"GeoPoint\"\n },\n - \ \"locationDescription\": {\n \"type\": \"string\",\n \"description\": - \"The text description of the location where the video was recorded.\"\n },\n - \ \"recordingDate\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the video was recorded.\",\n \"format\": - \"date-time\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Recording information associated with the video.\",\n \"id\": \"VideoRecordingDetails\"\n - \ },\n \"VideoAbuseReport\": {\n \"properties\": {\n \"secondaryReasonId\": - {\n \"description\": \"The specific, or secondary, reason that this - content is abusive (if available). The value is an abuse report reason ID - that is a valid secondary reason for the primary reason.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n },\n \"reasonId\": {\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\",\n \"type\": \"string\"\n },\n - \ \"comments\": {\n \"type\": \"string\",\n \"description\": - \"Additional comments regarding the abuse report.\"\n },\n \"language\": - {\n \"description\": \"The language that the content was viewed in.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoAbuseReport\"\n },\n \"ChannelContentOwnerDetails\": - {\n \"id\": \"ChannelContentOwnerDetails\",\n \"type\": \"object\",\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"properties\": - {\n \"timeLinked\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the channel was linked to the content owner.\",\n - \ \"format\": \"date-time\"\n },\n \"contentOwner\": - {\n \"description\": \"The ID of the content owner linked to the - channel.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"VideoAbuseReportReason\": {\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReason\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID of this abuse report reason.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the abuse report reason.\",\n - \ \"$ref\": \"VideoAbuseReportReasonSnippet\"\n }\n },\n - \ \"id\": \"VideoAbuseReportReason\",\n \"type\": \"object\",\n \"description\": - \"A `__videoAbuseReportReason__` resource identifies a reason that a video - could be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\"\n - \ },\n \"MembershipsLevelListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"MembershipsLevelListResponse\",\n \"properties\": {\n - \ \"items\": {\n \"description\": \"A list of pricing levels - offered by a creator to the fans.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"MembershipsLevel\"\n }\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevelListResponse\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"TestItem\": - {\n \"type\": \"object\",\n \"id\": \"TestItem\",\n \"properties\": - {\n \"featuredPart\": {\n \"type\": \"boolean\"\n },\n - \ \"gaia\": {\n \"format\": \"int64\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ }\n }\n },\n \"SuperChatEventListResponse\": {\n \"properties\": - {\n \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of Super - Chat purchases that match the request criteria.\"\n }\n },\n \"id\": - \"SuperChatEventListResponse\",\n \"type\": \"object\"\n },\n \"Member\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#member\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the member.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A *member* resource represents a member for a YouTube - channel. A member provides recurring monetary support to a creator and receives - special benefits.\",\n \"type\": \"object\",\n \"id\": \"Member\"\n - \ },\n \"ActivityContentDetailsComment\": {\n \"id\": \"ActivityContentDetailsComment\",\n - \ \"type\": \"object\",\n \"description\": \"Information about a - resource that received a comment.\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with the - comment.\"\n }\n }\n },\n \"LiveChatMessageSnippet\": {\n - \ \"type\": \"object\",\n \"id\": \"LiveChatMessageSnippet\",\n \"properties\": - {\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time when the message was orignally published.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n },\n \"hasDisplayContent\": - {\n \"description\": \"Whether the message has display content that - should be displayed to users.\",\n \"type\": \"boolean\"\n },\n - \ \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\",\n \"type\": - \"string\",\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ]\n },\n \"membershipGiftingDetails\": {\n \"$ref\": - \"LiveChatMembershipGiftingDetails\",\n \"description\": \"Details - about the Membership Gifting event, this is only set if the type is 'membershipGiftingEvent'.\"\n - \ },\n \"displayMessage\": {\n \"type\": \"string\",\n - \ \"description\": \"Contains a string that can be displayed to the - user. If this field is not present the message is silent, at the moment only - messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"superStickerDetails\": {\n \"description\": \"Details about - the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"superChatDetails\": - {\n \"description\": \"Details about the Super Chat event, this is - only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n - \ },\n \"fanFundingEventDetails\": {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n - \ \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\"\n },\n \"textMessageDetails\": - {\n \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\",\n \"$ref\": \"LiveChatTextMessageDetails\"\n - \ },\n \"giftMembershipReceivedDetails\": {\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\",\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n - \ },\n \"authorChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"newSponsorDetails\": - {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": - \"Details about the New Member Announcement event, this is only set if the - type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term - for \\\"sponsor\\\".\"\n }\n },\n \"description\": \"Next - ID: 33\"\n },\n \"VideoContentDetailsRegionRestriction\": {\n \"type\": - \"object\",\n \"description\": \"DEPRECATED Region restriction of the - video.\",\n \"properties\": {\n \"blocked\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of region codes that identify countries - where the video is blocked. If this property is present and a country is not - listed in its value, then the video is viewable in that country. If this property - is present and contains an empty list, the video is viewable in all countries.\"\n - \ },\n \"allowed\": {\n \"description\": \"A list of - region codes that identify countries where the video is viewable. If this - property is present and a country is not listed in its value, then the video - is blocked from appearing in that country. If this property is present and - contains an empty list, the video is blocked in all countries.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"id\": \"VideoContentDetailsRegionRestriction\"\n - \ },\n \"ActivityContentDetailsSocial\": {\n \"id\": \"ActivityContentDetailsSocial\",\n - \ \"properties\": {\n \"referenceUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL of the social network post.\"\n - \ },\n \"type\": {\n \"description\": \"The name of - the social network.\",\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"author\": {\n \"description\": \"The author - of the social network post.\",\n \"type\": \"string\"\n },\n - \ \"imageUrl\": {\n \"description\": \"An image of the post's - author.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"description\": \"Details about - a social network post.\",\n \"type\": \"object\"\n },\n \"PlaylistItemStatus\": - {\n \"description\": \"Information about the playlist item's privacy - status.\",\n \"properties\": {\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"This resource's - privacy status.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"PlaylistItemStatus\"\n },\n - \ \"LiveChatNewSponsorDetails\": {\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"properties\": {\n \"isUpgrade\": {\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\",\n \"type\": - \"boolean\"\n },\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level that the viewer - just had joined. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ChannelToStoreLinkDetails\": - {\n \"properties\": {\n \"merchantId\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"Google Merchant Center id of the store.\"\n },\n \"storeUrl\": - {\n \"description\": \"Landing page of the store.\",\n \"type\": - \"string\"\n },\n \"storeName\": {\n \"type\": \"string\",\n - \ \"description\": \"Name of the store.\"\n }\n },\n \"id\": - \"ChannelToStoreLinkDetails\",\n \"description\": \"Information specific - to a store on a merchandising platform linked to a YouTube channel.\",\n \"type\": - \"object\"\n },\n \"PlaylistStatus\": {\n \"type\": \"object\",\n - \ \"id\": \"PlaylistStatus\",\n \"properties\": {\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"The playlist's - privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelStatus\": {\n \"description\": - \"JSON template for the status part of a channel.\",\n \"id\": \"ChannelStatus\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Privacy status - of the channel.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n },\n \"longUploadsStatus\": - {\n \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"isLinked\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"PlaylistItemListResponse\": - {\n \"id\": \"PlaylistItemListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"description\": \"A list of playlist items that match the request - criteria.\",\n \"type\": \"array\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"Playlist\": - {\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"PlaylistContentDetails\",\n \"description\": - \"The contentDetails object contains information like video count.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\"\n },\n \"localizations\": {\n \"description\": - \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"type\": - \"object\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlist\"\n - \ },\n \"status\": {\n \"$ref\": \"PlaylistStatus\",\n - \ \"description\": \"The status object contains status information - for the playlist.\"\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the playlist - in an embedded player.\",\n \"$ref\": \"PlaylistPlayer\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"Playlist\",\n \"description\": - \"A *playlist* resource represents a YouTube playlist. A playlist is a collection - of videos that can be viewed sequentially and shared with other users. A playlist - can contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\"\n },\n \"SuperChatEventSnippet\": - {\n \"id\": \"SuperChatEventSnippet\",\n \"properties\": {\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\"\n },\n \"amountMicros\": {\n \"type\": - \"string\",\n \"description\": \"The purchase amount, in micros of - the purchase currency. e.g., 1 is represented as 1000000.\",\n \"format\": - \"uint64\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel id where the event occurred.\"\n },\n - \ \"isSuperStickerEvent\": {\n \"description\": \"True if this - event is a Super Sticker event.\",\n \"type\": \"boolean\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made. ISO 4217.\",\n \"type\": \"string\"\n },\n - \ \"commentText\": {\n \"description\": \"The text contents - of the comment left by the user.\",\n \"type\": \"string\"\n },\n - \ \"supporterDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the supporter.\"\n },\n - \ \"messageType\": {\n \"format\": \"uint32\",\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\",\n \"type\": \"integer\"\n },\n - \ \"createdAt\": {\n \"description\": \"The date and time when - the event occurred.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"displayString\": {\n \"description\": - \"A rendered string that displays the purchase amount and currency (e.g., - \\\"$1.00\\\"). The string is rendered for the given language.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"CommentThreadListResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#commentThreadListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of comment threads that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"CommentThread\"\n - \ }\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"CommentThreadListResponse\",\n - \ \"type\": \"object\"\n },\n \"VideoCategoryListResponse\": {\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#videoCategoryListResponse\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n }\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoCategoryListResponse\",\n - \ \"type\": \"object\"\n },\n \"AbuseReport\": {\n \"type\": - \"object\",\n \"properties\": {\n \"abuseTypes\": {\n \"items\": - {\n \"$ref\": \"AbuseType\"\n },\n \"type\": - \"array\"\n },\n \"description\": {\n \"type\": \"string\"\n - \ },\n \"subject\": {\n \"$ref\": \"Entity\"\n },\n - \ \"relatedEntities\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"RelatedEntity\"\n }\n }\n },\n - \ \"id\": \"AbuseReport\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"id\": \"ThirdPartyLinkListResponse\",\n \"properties\": {\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatSuperChatDetails\",\n - \ \"properties\": {\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the purchase was made.\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"tier\": {\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n },\n - \ \"userComment\": {\n \"description\": \"The comment added - by the user to this Super Chat event.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveStreamListResponse\": {\n \"type\": - \"object\",\n \"id\": \"LiveStreamListResponse\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - live streams that match the request criteria.\",\n \"items\": {\n - \ \"$ref\": \"LiveStream\"\n }\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveStreamListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"VideoAgeGating\": - {\n \"properties\": {\n \"alcoholContent\": {\n \"description\": - \"Indicates whether or not the video has alcoholic beverage content. Only - users of legal purchasing age in a particular country, as identified by ICAP, - can view the content.\",\n \"type\": \"boolean\"\n },\n \"videoGameRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ],\n \"description\": \"Video - game rating, if any.\",\n \"type\": \"string\"\n },\n \"restricted\": - {\n \"type\": \"boolean\",\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\"\n }\n - \ },\n \"id\": \"VideoAgeGating\",\n \"type\": \"object\"\n - \ },\n \"ImageSettings\": {\n \"properties\": {\n \"bannerTvImageUrl\": - {\n \"description\": \"Banner image. TV size extra high resolution - (2120x1192).\",\n \"type\": \"string\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size high resolution (2276x377).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": - {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"backgroundImageUrl\": - {\n \"description\": \"The URL for the background image shown on - the video watch page. The image should be 1200px by 615px, with a maximum - file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerMobileLowImageUrl\": {\n \"description\": \"Banner - image. Mobile size low resolution (320x88).\",\n \"type\": \"string\"\n - \ },\n \"largeBrandedBannerImageImapScript\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The image map script - for the large banner image.\"\n },\n \"bannerTvHighImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size medium/high resolution (960x263).\"\n },\n \"bannerExternalUrl\": - {\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"bannerMobileExtraHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size high resolution (1440x395).\",\n \"type\": - \"string\"\n },\n \"trackingImageUrl\": {\n \"description\": - \"The URL for a 1px by 1px tracking pixel that can be used to collect statistics - for views of the channel or video pages.\",\n \"type\": \"string\"\n - \ },\n \"largeBrandedBannerImageUrl\": {\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerMobileImageUrl\": {\n \"description\": - \"Banner image. Mobile size (640x175).\",\n \"type\": \"string\"\n - \ },\n \"bannerMobileHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size high resolution (1280x360).\",\n \"type\": - \"string\"\n },\n \"bannerTabletLowImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size low resolution - (1138x188).\"\n },\n \"smallBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 640px - by 70px banner image that appears below the video player in the default view - of the video watch page. The URL for the image that appears above the top-left - corner of the video player. This is a 25-pixel-high image with a flexible - width that cannot exceed 170 pixels.\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"bannerTabletImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n },\n \"bannerImageUrl\": {\n \"description\": - \"Banner image. Desktop size (1060x175).\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ImageSettings\",\n \"description\": - \"Branding properties for images associated with the channel.\",\n \"type\": - \"object\"\n },\n \"ChannelLocalization\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"description\": {\n \"description\": - \"The localized strings for channel's description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for channel's title.\"\n - \ }\n },\n \"description\": \"Channel localization setting\",\n - \ \"id\": \"ChannelLocalization\"\n },\n \"ChannelSectionLocalization\": - {\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for channel section's title.\"\n - \ }\n },\n \"description\": \"ChannelSection localization - setting\",\n \"type\": \"object\",\n \"id\": \"ChannelSectionLocalization\"\n - \ },\n \"CommentListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#commentListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"description\": \"A list of comments - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"CommentListResponse\"\n - \ },\n \"I18nLanguageSnippet\": {\n \"properties\": {\n \"name\": - {\n \"description\": \"The human-readable name of the language in - the language itself.\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"description\": \"A short BCP-47 code that uniquely identifies - a language.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\",\n \"id\": \"I18nLanguageSnippet\",\n \"type\": \"object\"\n - \ },\n \"VideoLiveStreamingDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoLiveStreamingDetails\",\n \"properties\": {\n \"activeLiveChatId\": - {\n \"description\": \"The ID of the currently active live chat attached - to this video. This field is filled only if the video is a currently live - broadcast that has live chat. Once the broadcast transitions to complete this - field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\",\n \"type\": \"string\"\n - \ },\n \"scheduledEndTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The time - that the broadcast is scheduled to end. If the value is empty or the property - is not present, then the broadcast is scheduled to contiue indefinitely.\"\n - \ },\n \"actualStartTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The time that - the broadcast actually started. This value will not be available until the - broadcast begins.\"\n },\n \"actualEndTime\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The time that the broadcast actually ended. This value will not be available - until the broadcast is over.\"\n },\n \"concurrentViewers\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n },\n - \ \"scheduledStartTime\": {\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast is scheduled to begin.\",\n \"format\": - \"date-time\"\n }\n },\n \"description\": \"Details about - the live streaming metadata.\"\n },\n \"VideoSnippet\": {\n \"id\": - \"VideoSnippet\",\n \"properties\": {\n \"defaultLanguage\": {\n - \ \"type\": \"string\",\n \"description\": \"The language - of the videos's default snippet.\"\n },\n \"channelId\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that the video was uploaded to.\",\n \"type\": \"string\"\n - \ },\n \"categoryId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube video category associated with the video.\"\n },\n \"tags\": - {\n \"type\": \"array\",\n \"description\": \"A list of - keyword tags associated with the video. Tags may contain spaces.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"localized\": - {\n \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\",\n \"$ref\": \"VideoLocalization\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the video was uploaded.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"defaultAudioLanguage\": {\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The video's description. @mutable - youtube.videos.insert youtube.videos.update\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the video belongs to.\"\n },\n \"liveBroadcastContent\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"title\": - {\n \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Basic details about a video, including title, description, - uploader, thumbnails and category.\",\n \"type\": \"object\"\n },\n - \ \"LanguageTag\": {\n \"type\": \"object\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LanguageTag\"\n },\n \"InvideoBranding\": {\n \"description\": - \"LINT.IfChange Describes an invideo branding.\",\n \"type\": \"object\",\n - \ \"id\": \"InvideoBranding\",\n \"properties\": {\n \"position\": - {\n \"$ref\": \"InvideoPosition\",\n \"description\": \"The - spatial position within the video where the branding watermark will be displayed.\"\n - \ },\n \"timing\": {\n \"$ref\": \"InvideoTiming\",\n - \ \"description\": \"The temporal position within the video where - watermark will be displayed.\"\n },\n \"imageBytes\": {\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"type\": \"string\",\n \"format\": \"byte\"\n },\n - \ \"targetChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel to which this branding links. If not present it defaults to - the current channel.\"\n },\n \"imageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The url of the uploaded image. Only - used in apiary to api communication.\"\n }\n }\n },\n \"LiveChatModeratorSnippet\": - {\n \"properties\": {\n \"moderatorDetails\": {\n \"description\": - \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the live chat this moderator can act on.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\"\n - \ },\n \"ChannelSettings\": {\n \"id\": \"ChannelSettings\",\n \"properties\": - {\n \"trackingAnalyticsAccountId\": {\n \"description\": \"The - ID for a Google Analytics account to track and measure traffic to the channels.\",\n - \ \"type\": \"string\"\n },\n \"defaultTab\": {\n \"type\": - \"string\",\n \"description\": \"Which content tab users should see - when viewing the channel.\"\n },\n \"moderateComments\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether user-submitted - comments left on the channel page need to be approved by the channel owner - to be publicly visible.\"\n },\n \"showBrowseView\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the tab to browse the videos - should be displayed.\"\n },\n \"country\": {\n \"type\": - \"string\",\n \"description\": \"The country of the channel.\"\n - \ },\n \"profileColor\": {\n \"type\": \"string\",\n - \ \"description\": \"A prominent color that can be rendered on this - channel page.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"Specifies the channel title.\"\n },\n - \ \"featuredChannelsUrls\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The list of featured - channels.\",\n \"type\": \"array\"\n },\n \"showRelatedChannels\": - {\n \"description\": \"Whether related channels should be proposed.\",\n - \ \"type\": \"boolean\"\n },\n \"description\": {\n - \ \"type\": \"string\",\n \"description\": \"Specifies the - channel description.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\"\n },\n \"unsubscribedTrailer\": {\n \"type\": - \"string\",\n \"description\": \"The trailer of the channel, for - users that are not subscribers.\"\n },\n \"keywords\": {\n \"type\": - \"string\",\n \"description\": \"Lists keywords associated with the - channel, comma-separated.\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Branding properties for the channel view.\",\n \"type\": \"object\"\n - \ },\n \"SearchListResponse\": {\n \"type\": \"object\",\n \"id\": - \"SearchListResponse\",\n \"properties\": {\n \"eventId\": {\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#searchListResponse\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SearchResult\"\n },\n \"description\": - \"Pagination information for token pagination.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ }\n }\n },\n \"AccessPolicy\": {\n \"id\": \"AccessPolicy\",\n - \ \"type\": \"object\",\n \"description\": \"Rights management policy - for YouTube resources.\",\n \"properties\": {\n \"exception\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of region - codes that identify countries where the default policy do not apply.\"\n },\n - \ \"allowed\": {\n \"type\": \"boolean\",\n \"description\": - \"The value of allowed indicates whether the access to the policy is allowed - or denied by default.\"\n }\n }\n },\n \"PlaylistPlayer\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistPlayer\",\n \"properties\": - {\n \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelSnippet\": {\n \"description\": - \"Basic details about a channel, including title, description and thumbnails.\",\n - \ \"properties\": {\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the channel was created.\"\n },\n \"country\": - {\n \"description\": \"The country of the channel.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the channel's default - title and description.\"\n },\n \"customUrl\": {\n \"type\": - \"string\",\n \"description\": \"The custom url of the channel.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the channel.\"\n },\n - \ \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The channel's title.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelSnippet\"\n },\n \"ChannelSectionContentDetails\": - {\n \"id\": \"ChannelSectionContentDetails\",\n \"properties\": - {\n \"playlists\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The playlist ids for - type single_playlist and multiple_playlists. For singlePlaylist, only one - playlistId is allowed.\",\n \"type\": \"array\"\n },\n \"channels\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The channel ids - for type multiple_channels.\"\n }\n },\n \"description\": - \"Details about a channelsection, including playlists and channels.\",\n \"type\": - \"object\"\n },\n \"ChannelSectionTargeting\": {\n \"id\": \"ChannelSectionTargeting\",\n - \ \"properties\": {\n \"languages\": {\n \"description\": - \"The language the channel section is targeting.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"regions\": {\n \"type\": \"array\",\n \"description\": - \"The region the channel section is targeting.\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n },\n \"countries\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The country the channel section is targeting.\",\n - \ \"type\": \"array\"\n }\n },\n \"description\": - \"ChannelSection targeting setting.\",\n \"type\": \"object\"\n },\n - \ \"SuperChatEvent\": {\n \"description\": \"A `__superChatEvent__` - resource represents a Super Chat purchase on a YouTube channel.\",\n \"type\": - \"object\",\n \"id\": \"SuperChatEvent\",\n \"properties\": {\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the Super Chat event.\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\",\n - \ \"$ref\": \"SuperChatEventSnippet\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n \"type\": - \"string\",\n \"default\": \"youtube#superChatEvent\"\n }\n - \ }\n },\n \"LiveStreamContentDetails\": {\n \"id\": \"LiveStreamContentDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Detailed settings of - a stream.\",\n \"properties\": {\n \"isReusable\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the stream is - reusable, which means that it can be bound to multiple broadcasts. It is common - for broadcasters to reuse the same stream for many different broadcasts if - those broadcasts occur at different times. If you set this value to false, - then the stream will not be reusable, which means that it can only be bound - to one broadcast. Non-reusable streams differ from reusable streams in the - following ways: - A non-reusable stream can only be bound to one broadcast. - - A non-reusable stream might be deleted by an automated process after the - broadcast ends. - The liveStreams.list method does not list non-reusable streams - if you call the method and set the mine parameter to true. The only way to - use that method to retrieve the resource for a non-reusable stream is to use - the id parameter to identify the stream. \"\n },\n \"closedCaptionsIngestionUrl\": - {\n \"type\": \"string\",\n \"description\": \"The ingestion - URL where the closed captions of this stream are sent.\"\n }\n }\n - \ },\n \"WatchSettings\": {\n \"id\": \"WatchSettings\",\n \"type\": - \"object\",\n \"description\": \"Branding properties for the watch. All - deprecated.\",\n \"properties\": {\n \"textColor\": {\n \"description\": - \"The background color for the video watch page's branded area.\",\n \"type\": - \"string\"\n },\n \"featuredPlaylistId\": {\n \"description\": - \"An ID that uniquely identifies a playlist that displays next to the video - player.\",\n \"type\": \"string\"\n },\n \"backgroundColor\": - {\n \"description\": \"The text color for the video watch page's - branded area.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"I18nLanguage\": {\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#i18nLanguage\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n language.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"An *i18nLanguage* resource identifies a UI language currently supported - by YouTube.\",\n \"id\": \"I18nLanguage\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"id\": \"CommentSnippetAuthorChannelId\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"ActivityContentDetailsUpload\": {\n \"description\": - \"Information about the uploaded video.\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the uploaded video.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ActivityContentDetailsUpload\",\n \"type\": \"object\"\n - \ },\n \"CommentThreadReplies\": {\n \"type\": \"object\",\n \"description\": - \"Comments written in (direct or indirect) reply to the top level comment.\",\n - \ \"properties\": {\n \"comments\": {\n \"items\": {\n - \ \"$ref\": \"Comment\"\n },\n \"description\": - \"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.\",\n \"type\": \"array\"\n }\n - \ },\n \"id\": \"CommentThreadReplies\"\n },\n \"ActivityContentDetailsLike\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the rated resource.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Information about a resource that received - a positive (like) rating.\",\n \"id\": \"ActivityContentDetailsLike\"\n - \ },\n \"RelatedEntity\": {\n \"id\": \"RelatedEntity\",\n \"properties\": - {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"SearchResult\": {\n \"id\": - \"SearchResult\",\n \"description\": \"A search result contains information - about a YouTube video, channel, or playlist that matches the search parameters - specified in an API request. While a search result points to a uniquely identifiable - resource, like a video, it does not have its own persistent data.\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"SearchResultSnippet\",\n \"description\": \"The snippet object - contains basic details about a search result, such as its title or description. - For example, if the search result is a video, then the title will be the video's - title and the description will be the video's description.\"\n },\n - \ \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#searchResult\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#searchResult\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"I18nRegionListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - regions where YouTube is available. In this map, the i18n region ID is the - map key, and its value is the corresponding i18nRegion resource.\",\n \"items\": - {\n \"$ref\": \"I18nRegion\"\n }\n },\n \"kind\": - {\n \"default\": \"youtube#i18nRegionListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"I18nRegionListResponse\"\n },\n \"LiveChatBan\": {\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\",\n - \ \"type\": \"object\",\n \"id\": \"LiveChatBan\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the ban.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the ban.\",\n \"$ref\": - \"LiveChatBanSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatBan\"\n - \ }\n }\n },\n \"ChannelProfileDetails\": {\n \"properties\": - {\n \"channelId\": {\n \"description\": \"The YouTube channel - ID.\",\n \"type\": \"string\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n },\n - \ \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channels's avatar URL.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelProfileDetails\"\n },\n \"VideoProjectDetails\": - {\n \"description\": \"DEPRECATED. b/157517979: This part was never populated - after it was added. However, it sees non-zero traffic because there is generated - client code in the wild that refers to it [1]. We keep this field and do NOT - remove it because otherwise V3 would return an error when this part gets requested - [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"id\": \"VideoProjectDetails\",\n \"type\": \"object\",\n \"properties\": - {}\n },\n \"LiveStream\": {\n \"id\": \"LiveStream\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n \"default\": - \"youtube#liveStream\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveStreamSnippet\",\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about live stream's status.\",\n \"$ref\": - \"LiveStreamStatus\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the stream.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"cdn\": {\n \"description\": \"The cdn object - defines the live stream's content delivery network (CDN) settings. These settings - provide details about the manner in which you stream your content to YouTube.\",\n - \ \"$ref\": \"CdnSettings\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n }\n - \ },\n \"description\": \"A live stream describes a live ingestion - point.\"\n },\n \"LiveChatMessageRetractedDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"retractedMessageId\": {\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"VideoAbuseReportReasonSnippet\": {\n \"description\": \"Basic - details about a video category, such as its localized title.\",\n \"id\": - \"VideoAbuseReportReasonSnippet\",\n \"properties\": {\n \"secondaryReasons\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportSecondaryReason\"\n },\n \"description\": - \"The secondary reasons associated with this reason, if any are available. - (There might be 0 or more.)\"\n },\n \"label\": {\n \"type\": - \"string\",\n \"description\": \"The localized label belonging to - this abuse report reason.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"InvideoPosition\": {\n \"description\": \"Describes the - spatial position of a visual widget inside a video. It is a union of various - position types, out of which only will be set one.\",\n \"id\": \"InvideoPosition\",\n - \ \"properties\": {\n \"cornerPosition\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"Describes in which corner of the - video the visual widget will appear.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ]\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"corner\"\n ],\n \"description\": \"Defines - the position type.\",\n \"enumDescriptions\": [\n \"\"\n - \ ]\n }\n },\n \"type\": \"object\"\n },\n \"VideoStatus\": - {\n \"type\": \"object\",\n \"properties\": {\n \"failureReason\": - {\n \"enumDescriptions\": [\n \"Unable to convert video - content.\",\n \"Invalid file format.\",\n \"Empty file.\",\n - \ \"File was too small.\",\n \"Unsupported codec.\",\n - \ \"Upload wasn't finished.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ],\n \"description\": \"This - value explains why a video failed to upload. This property is only present - if the uploadStatus property indicates that the upload failed.\"\n },\n - \ \"license\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ]\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\"\n },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"publishAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the video is scheduled - to publish. It can be set only if the privacy status of the video is private..\",\n - \ \"type\": \"string\"\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"embeddable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"uploadStatus\": {\n \"enumDescriptions\": - [\n \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ],\n \"description\": \"The status of the uploaded video.\"\n - \ },\n \"rejectionReason\": {\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\",\n - \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ],\n \"type\": - \"string\"\n },\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The video's privacy status.\"\n }\n },\n - \ \"description\": \"Basic details about a video category, such as its - localized title. Next Id: 18\",\n \"id\": \"VideoStatus\"\n },\n \"VideoContentDetails\": - {\n \"id\": \"VideoContentDetails\",\n \"properties\": {\n \"dimension\": - {\n \"description\": \"The value of dimension indicates whether the - video is available in 3D or in 2D.\",\n \"type\": \"string\"\n },\n - \ \"contentRating\": {\n \"$ref\": \"ContentRating\",\n \"description\": - \"Specifies the ratings that the video received under various rating schemes.\"\n - \ },\n \"licensedContent\": {\n \"description\": \"The - value of is_license_content indicates whether the video is licensed content.\",\n - \ \"type\": \"boolean\"\n },\n \"countryRestriction\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - countryRestriction object contains information about the countries where a - video is (or is not) viewable.\"\n },\n \"duration\": {\n \"description\": - \"The length of the video. The tag value is an ISO 8601 duration in the format - PT#M#S, in which the letters PT indicate that the value specifies a period - of time, and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\",\n \"type\": - \"string\"\n },\n \"definition\": {\n \"type\": \"string\",\n - \ \"description\": \"The value of definition indicates whether the - video is available in high definition or only in standard definition.\",\n - \ \"enum\": [\n \"sd\",\n \"hd\"\n ],\n - \ \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ]\n },\n \"hasCustomThumbnail\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the video uploader - has provided a custom thumbnail image for the video. This property is only - visible to the video uploader.\"\n },\n \"regionRestriction\": - {\n \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"caption\": - {\n \"description\": \"The value of captions indicates whether the - video has captions or not.\",\n \"enum\": [\n \"true\",\n - \ \"false\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"projection\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the projection format of the video.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"rectangular\",\n \"360\"\n ]\n }\n - \ },\n \"description\": \"Details about the content of a YouTube - Video.\",\n \"type\": \"object\"\n },\n \"IngestionInfo\": {\n - \ \"id\": \"IngestionInfo\",\n \"properties\": {\n \"rtmpsIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of ingestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"rtmpsBackupIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - backupIngestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"backupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The backup - ingestion URL that you should use to stream video to YouTube. You have the - option of simultaneously streaming the content that you are sending to the - ingestionAddress to this URL.\"\n },\n \"streamName\": {\n \"type\": - \"string\",\n \"description\": \"The stream name that YouTube assigns - to the video stream.\"\n },\n \"ingestionAddress\": {\n \"description\": - \"The primary ingestion URL that you should use to stream video to YouTube. - You must stream video to this URL. Depending on which application or tool - you use to encode your video stream, you may need to enter the stream URL - and stream name separately or you may need to concatenate them in the following - format: *STREAM_URL/STREAM_NAME* \",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Describes information necessary for ingesting - an RTMP, HTTP, or SRT stream.\",\n \"type\": \"object\"\n },\n \"PropertyValue\": - {\n \"type\": \"object\",\n \"description\": \"A pair Property / - Value.\",\n \"id\": \"PropertyValue\",\n \"properties\": {\n \"property\": - {\n \"type\": \"string\",\n \"description\": \"A property.\"\n - \ },\n \"value\": {\n \"type\": \"string\",\n \"description\": - \"The property's value.\"\n }\n }\n },\n \"LiveChatBanSnippet\": - {\n \"id\": \"LiveChatBanSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The chat this ban is pertinent to.\"\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n },\n - \ \"type\": {\n \"description\": \"The type of ban.\",\n \"enum\": - [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"enumDescriptions\": [\n - \ \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"type\": \"string\"\n - \ }\n }\n },\n \"SubscriptionListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n - \ },\n \"items\": {\n \"description\": \"A list of subscriptions - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Subscription\"\n },\n \"type\": \"array\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"id\": \"SubscriptionListResponse\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"properties\": {\n \"seedResourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The seedResourceId object contains - information about the resource that caused the recommendation.\"\n },\n - \ \"reason\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The reason that the resource is - recommended to the user.\",\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ]\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"description\": - \"Information that identifies the recommended resource.\"\n },\n \"ThirdPartyLink\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#thirdPartyLink\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n },\n \"linkingToken\": {\n - \ \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the third- party account link.\"\n },\n \"status\": {\n \"$ref\": - \"ThirdPartyLinkStatus\",\n \"description\": \"The status object - contains information about the status of the link.\"\n }\n },\n - \ \"id\": \"ThirdPartyLink\",\n \"description\": \"A *third party - account link* resource represents a link between a YouTube account or a channel - and an account on a third-party service.\"\n },\n \"VideoMonetizationDetails\": - {\n \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The value of access indicates whether the video - can be monetized or not.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Details about monetization of a YouTube Video.\",\n - \ \"id\": \"VideoMonetizationDetails\"\n },\n \"MonitorStreamInfo\": - {\n \"type\": \"object\",\n \"id\": \"MonitorStreamInfo\",\n \"properties\": - {\n \"embedHtml\": {\n \"description\": \"HTML code that embeds - a player that plays the monitor stream.\",\n \"type\": \"string\"\n - \ },\n \"broadcastStreamDelayMs\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"If you have set the enableMonitorStream property - to true, then this property determines the length of the live broadcast delay.\"\n - \ },\n \"enableMonitorStream\": {\n \"type\": \"boolean\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"This value determines - whether the monitor stream is enabled for the broadcast. If the monitor stream - is enabled, then YouTube will broadcast the event content on a special stream - intended only for the broadcaster's consumption. The broadcaster can use the - stream to review the event content and also to identify the optimal times - to insert cuepoints. You need to set this value to true if you intend to have - a broadcast delay for your event. *Note:* This property cannot be updated - once the broadcast is in the testing or live state.\"\n }\n },\n - \ \"description\": \"Settings and Info of the monitor stream\"\n },\n - \ \"Comment\": {\n \"description\": \"A *comment* represents a single - YouTube comment.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n - \ \"default\": \"youtube#comment\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the comment.\",\n \"$ref\": \"CommentSnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"Comment\"\n - \ },\n \"SearchResultSnippet\": {\n \"properties\": {\n \"description\": - {\n \"description\": \"A description of the search result.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"description\": - \"The title of the channel that published the resource that the search result - identifies.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"channelId\": {\n \"description\": \"The value that YouTube - uses to uniquely identify the channel that published the resource that the - search result identifies.\",\n \"type\": \"string\"\n },\n - \ \"liveBroadcastContent\": {\n \"description\": \"It indicates - if the resource (video or channel) has upcoming/active live broadcast content. - Or it's \\\"none\\\" if there is not any upcoming/active live broadcasts.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n },\n - \ \"title\": {\n \"description\": \"The title of the search - result.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The creation date and time of the resource - that the search result identifies.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"id\": \"SearchResultSnippet\",\n - \ \"type\": \"object\"\n },\n \"Thumbnail\": {\n \"description\": - \"A thumbnail is an image representing a YouTube resource.\",\n \"type\": - \"object\",\n \"id\": \"Thumbnail\",\n \"properties\": {\n \"width\": - {\n \"description\": \"(Optional) Width of the thumbnail image.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"height\": {\n \"description\": \"(Optional) Height of the - thumbnail image.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The thumbnail image's URL.\"\n }\n }\n - \ },\n \"LiveBroadcastStatistics\": {\n \"properties\": {\n \"concurrentViewers\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n },\n - \ \"totalChatCount\": {\n \"description\": \"The total number - of live chat messages currently on the broadcast. The property and its value - will be present if the broadcast is public, has the live chat feature enabled, - and has at least one message. Note that this field will not be filled after - the broadcast ends. So this property would not identify the number of chat - messages for an archived video of a completed live broadcast.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveBroadcastStatistics\",\n \"description\": \"Statistics about the - live broadcast. These represent a snapshot of the values at the time of the - request. Statistics are only returned for live broadcasts.\",\n \"type\": - \"object\"\n },\n \"LocalizedString\": {\n \"type\": \"object\",\n - \ \"id\": \"LocalizedString\",\n \"properties\": {\n \"language\": - {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatMessage\": {\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the message.\",\n \"$ref\": - \"LiveChatMessageSnippet\"\n },\n \"authorDetails\": {\n \"description\": - \"The authorDetails object contains basic details about the user that posted - this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatMessage\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"LiveChatMessage\",\n - \ \"description\": \"A *liveChatMessage* resource represents a chat message - in a YouTube Live Chat.\"\n },\n \"AbuseType\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"AbuseType\"\n },\n \"LevelDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - that should be used when referring to this level.\"\n }\n },\n - \ \"id\": \"LevelDetails\"\n },\n \"ThumbnailDetails\": {\n \"description\": - \"Internal representation of thumbnails for a YouTube resource.\",\n \"properties\": - {\n \"maxres\": {\n \"description\": \"The maximum resolution - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"high\": {\n \"description\": \"The high quality image for - this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"standard\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The standard - quality image for this resource.\"\n },\n \"medium\": {\n \"description\": - \"The medium quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The default image for this resource.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ThumbnailDetails\"\n },\n \"I18nRegion\": - {\n \"description\": \"A *i18nRegion* resource identifies a region where - YouTube is available.\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n region.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"default\": \"youtube#i18nRegion\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the i18n region, such as region code and human-readable name.\",\n \"$ref\": - \"I18nRegionSnippet\"\n }\n },\n \"id\": \"I18nRegion\",\n - \ \"type\": \"object\"\n },\n \"VideoFileDetails\": {\n \"id\": - \"VideoFileDetails\",\n \"description\": \"Describes original video file - properties, including technical details about audio and video streams, but - also metadata information like content length, digitization time, or geotagging - information.\",\n \"type\": \"object\",\n \"properties\": {\n \"videoStreams\": - {\n \"description\": \"A list of video streams contained in the uploaded - video file. Each item in the list contains detailed metadata about a video - stream.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n }\n },\n \"fileSize\": - {\n \"format\": \"uint64\",\n \"description\": \"The uploaded - file's size in bytes. This field is present whether a video file or another - type of file was uploaded.\",\n \"type\": \"string\"\n },\n - \ \"fileType\": {\n \"enumDescriptions\": [\n \"Known - video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an - MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive - file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., - MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"description\": \"The uploaded - file's type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\",\n \"type\": \"string\"\n - \ },\n \"creationTime\": {\n \"description\": \"The - date and time when the uploaded video file was created. The value is specified - in ISO 8601 format. Currently, the following ISO 8601 formats are supported: - - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: - YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n },\n - \ \"audioStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsAudioStream\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of audio streams contained in the uploaded - video file. Each item in the list contains detailed metadata about an audio - stream.\"\n },\n \"bitrateBps\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - video file's combined (video and audio) bitrate in bits per second.\"\n },\n - \ \"container\": {\n \"description\": \"The uploaded video - file's container format.\",\n \"type\": \"string\"\n },\n - \ \"durationMs\": {\n \"description\": \"The length of the - uploaded video in milliseconds.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"fileName\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded file's name. This field is present - whether a video file or another type of file was uploaded.\"\n }\n - \ }\n },\n \"LiveChatModeratorListResponse\": {\n \"properties\": - {\n \"items\": {\n \"description\": \"A list of moderators - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"type\": \"array\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\"\n }\n - \ },\n \"id\": \"LiveChatModeratorListResponse\",\n \"type\": - \"object\"\n },\n \"LiveBroadcastListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"items\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"description\": \"A list of broadcasts - that match the request criteria.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveBroadcastListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n }\n - \ },\n \"id\": \"LiveBroadcastListResponse\"\n },\n \"ChannelContentDetails\": - {\n \"id\": \"ChannelContentDetails\",\n \"type\": \"object\",\n - \ \"description\": \"Details about the content of a channel.\",\n \"properties\": - {\n \"relatedPlaylists\": {\n \"properties\": {\n \"watchLater\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch later playlist. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"likes\": {\n \"description\": \"The - ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n },\n \"uploads\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s uploaded videos. Use the videos.insert method to - upload new videos and the videos.delete method to delete previously uploaded - videos.\"\n },\n \"watchHistory\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"favorites\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s favorite videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n }\n }\n - \ },\n \"ActivityContentDetailsPromotedItem\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"customCtaButtonText\": {\n \"type\": - \"string\",\n \"description\": \"The custom call-to-action button - text. If specified, it will override the default button text for the cta_type.\"\n - \ },\n \"descriptionText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text description to accompany the promoted - item.\"\n },\n \"destinationUrl\": {\n \"description\": - \"The URL the client should direct the user to, if the user chooses to visit - the advertiser's website.\",\n \"type\": \"string\"\n },\n - \ \"ctaType\": {\n \"type\": \"string\",\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"clickTrackingUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user clicked through on this promoted - item.\"\n },\n \"forecastingUrl\": {\n \"type\": \"array\",\n - \ \"description\": \"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.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the promoted video.\",\n \"type\": - \"string\"\n },\n \"adTag\": {\n \"description\": \"The - URL the client should fetch to request a promoted item.\",\n \"type\": - \"string\"\n },\n \"impressionUrl\": {\n \"type\": - \"array\",\n \"description\": \"The list of impression URLs. The - client should ping all of these URLs to indicate that the user was shown this - promoted item.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n },\n \"creativeViewUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user was shown this promoted item.\"\n }\n },\n - \ \"description\": \"Details about a resource which is being promoted.\",\n - \ \"id\": \"ActivityContentDetailsPromotedItem\"\n },\n \"SubscriptionContentDetails\": - {\n \"id\": \"SubscriptionContentDetails\",\n \"properties\": {\n - \ \"activityType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of activity this subscription is for - (only uploads, everything).\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ]\n },\n \"totalItemCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The approximate number of items that the subscription points to.\"\n },\n - \ \"newItemCount\": {\n \"description\": \"The number of new - items in the subscription since its content was last read.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n }\n },\n \"description\": - \"Details about the content to witch a subscription refers.\",\n \"type\": - \"object\"\n },\n \"ContentRating\": {\n \"properties\": {\n \"catvRating\": - {\n \"description\": \"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.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"C\",\n - \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n - \ \"18+\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ]\n },\n - \ \"menaMpaaRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ],\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\"\n },\n \"cceRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ],\n \"description\": \"The video's - rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\"\n - \ },\n \"mtrcbRating\": {\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Movie and Television - Review and Classification Board (Philippines).\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ]\n },\n \"nbcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Maldives National Bureau of Classification.\",\n \"enum\": - [\n \"nbcUnspecified\",\n \"nbcG\",\n \"nbcPg\",\n - \ \"nbc12plus\",\n \"nbc15plus\",\n \"nbc18plus\",\n - \ \"nbc18plusr\",\n \"nbcPu\",\n \"nbcUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"mocRating\": - {\n \"description\": \"The video's Ministerio de Cultura (Colombia) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ],\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"lsfRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Indonesia's Lembaga Sensor - Film.\",\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n - \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n - \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ]\n },\n \"fskRating\": {\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\",\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"FSK 0\",\n - \ \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ]\n },\n \"fcoRating\": - {\n \"description\": \"The video's rating from Hong Kong's Office - for Film, Newspaper and Article Administration.\",\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"cccRating\": {\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Todo espectador\",\n - \ \"6+ - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n - \ \"18+\",\n \"18+ - contenido excesivamente violento\",\n - \ \"18+ - contenido pornogr\xE1fico\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"cccUnspecified\",\n - \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n - \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n - \ ]\n },\n \"nfrcRating\": {\n \"enum\": [\n - \ \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ]\n },\n - \ \"smsaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"All ages\",\n \"7\",\n \"11\",\n \"15\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Statens - medier\xE5d (Sweden's National Media Council).\"\n },\n \"russiaRating\": - {\n \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"description\": - \"The video's National Film Registry of the Russian Federation (MKRF - Russia) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"mekuRating\": {\n \"description\": \"The video's rating - from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual - Institute).\",\n \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"mekuUnspecified\",\n \"mekuS\",\n \"meku7\",\n - \ \"meku12\",\n \"meku16\",\n \"meku18\",\n - \ \"mekuUnrated\"\n ]\n },\n \"djctqRatingReasons\": - {\n \"description\": \"Reasons that explain why the video received - its DJCQT (Brazil) rating.\",\n \"type\": \"array\",\n \"items\": - {\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ]\n }\n },\n - \ \"kijkwijzerRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\",\n \"enum\": - [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ]\n },\n \"pefilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"PT\",\n - \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"description\": - \"The video's rating in Peru.\"\n },\n \"acbRating\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ]\n },\n \"tvpgRating\": - {\n \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n - \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n - \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"description\": \"The - video's TV Parental Guidelines (TVPG) rating.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ]\n },\n \"bbfcRating\": {\n \"description\": - \"The video's British Board of Film Classification (BBFC) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ]\n },\n \"catvfrRating\": {\n \"enum\": - [\n \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n - \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n - \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"anatelRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ],\n \"enum\": - [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\"\n },\n \"mdaRating\": {\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\",\n \"enum\": [\n - \ \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n - \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n - \ \"mdaR21\",\n \"mdaUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ]\n },\n \"ifcoRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Irish Film Classification Office (IFCO - Ireland) rating. See the IFCO website - for more information.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"15A\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ]\n },\n \"fpbRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ],\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\",\n - \ \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ]\n },\n \"kmrbRating\": {\n \"enum\": [\n - \ \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ]\n },\n \"skfilmRating\": {\n \"enum\": - [\n \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n - \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Slovakia.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P2\",\n \"P5\",\n \"P8\",\n - \ \"\"\n ]\n },\n \"medietilsynetRating\": - {\n \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"description\": \"The video's rating from Medietilsynet, the Norwegian - Media Authority.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"kfcbRating\": {\n \"enum\": [\n \"kfcbUnspecified\",\n - \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n - \ \"kfcbR\",\n \"kfcbUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Kenya - Film Classification Board.\"\n },\n \"ecbmctRating\": {\n \"description\": - \"Rating system in Turkey - Evaluation and Classification Board of the Ministry - of Culture and Tourism\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"7A\",\n \"7+\",\n \"13A\",\n - \ \"13+\",\n \"15A\",\n \"15+\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ]\n },\n \"chfilmRating\": - {\n \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n - \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n - \ \"chfilm18\",\n \"chfilmUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Switzerland.\"\n },\n \"nmcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"description\": \"The National - Media Council ratings system for United Arab Emirates.\",\n \"enum\": - [\n \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n - \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n - \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"csaRating\": - {\n \"description\": \"The video's rating from France's Conseil sup\xE9rieur - de l\u2019audiovisuel, which rates broadcast content.\",\n \"enum\": - [\n \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n - \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n - \ \"csaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ]\n },\n - \ \"rtcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"A\",\n \"B\",\n \"B15\",\n - \ \"C\",\n \"D\",\n \"\"\n ],\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ]\n },\n \"eefilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Estonia.\",\n - \ \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n - \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n - \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n - \ \"eefilmK16\",\n \"eefilmUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"resorteviolenciaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"description\": \"The video's rating in Venezuela.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ]\n },\n \"cicfRating\": {\n \"enum\": - [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Commission de Contr\xF4le - des Films (Belgium).\"\n },\n \"fpbRatingReasons\": {\n \"items\": - {\n \"enumDescriptions\": [\n \"\",\n \"South - Africa rating content descriptors.\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n - \ \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ]\n },\n - \ \"type\": \"array\",\n \"description\": \"Reasons that - explain why the video received its FPB (South Africa) rating.\"\n },\n - \ \"nkclvRating\": {\n \"description\": \"The video's rating - from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"czfilmRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating in the Czech - Republic.\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ]\n },\n - \ \"mpaaRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ]\n },\n \"grfilmRating\": {\n \"enum\": - [\n \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n - \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n - \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating in Greece.\"\n },\n \"ilfilmRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Israel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"egfilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Egypt.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GN\",\n \"18\",\n \"BN\",\n \"\"\n - \ ],\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ]\n },\n \"cbfcRating\": - {\n \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n - \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n - \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n - \ \"cbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Central Board of Film Certification - (CBFC - India) rating.\"\n },\n \"bmukkRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ]\n },\n \"fmocRating\": - {\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ],\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"mccypRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"7\",\n \"11\",\n \"15\",\n - \ \"\"\n ],\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\"\n },\n \"agcomRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n - \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ]\n },\n \"nfvcbRating\": {\n \"enum\": [\n - \ \"nfvcbUnspecified\",\n \"nfvcbG\",\n \"nfvcbPg\",\n - \ \"nfvcb12\",\n \"nfvcb12a\",\n \"nfvcb15\",\n - \ \"nfvcb18\",\n \"nfvcbRe\",\n \"nfvcbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Nigeria's National Film and Video Censors Board.\"\n },\n \"cscfRating\": - {\n \"description\": \"The video's rating from Luxembourg's Commission - de surveillance de la classification des films (CSCF).\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ]\n },\n \"smaisRating\": {\n \"enum\": [\n - \ \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n - \ \"smais12\",\n \"smais14\",\n \"smais16\",\n - \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in Iceland.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"mcstRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating system for Vietnam - MCST\",\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ]\n },\n - \ \"moctwRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n - \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ]\n },\n \"mccaaRating\": - {\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n - \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n - \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n - \ \"mccaa18\",\n \"mccaaUnrated\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ]\n },\n \"chvrsRating\": {\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ],\n \"description\": \"The video's Canadian Home Video - Rating System (CHVRS) rating.\",\n \"type\": \"string\"\n },\n - \ \"fcbmRating\": {\n \"description\": \"The video's rating - from Malaysia's Film Censorship Board.\",\n \"enum\": [\n \"fcbmUnspecified\",\n - \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n - \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n - \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ]\n },\n \"cncRating\": - {\n \"type\": \"string\",\n \"description\": \"Rating system - in France - Commission de classification cinematographique\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ]\n },\n \"icaaRating\": - {\n \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"enum\": - [\n \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n - \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n - \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ]\n },\n \"eirinRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ],\n \"description\": \"The - video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ]\n },\n \"ytRating\": {\n \"type\": \"string\",\n - \ \"description\": \"A rating that YouTube uses to identify age-restricted - content.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ]\n },\n \"oflcRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ],\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\",\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ]\n },\n \"bfvcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ],\n \"description\": - \"The video's rating from Thailand's Board of Film and Video Censors.\"\n - \ },\n \"cnaRating\": {\n \"description\": \"The video's - rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"rteRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"rteUnspecified\",\n - \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n - \ \"rteUnrated\"\n ]\n },\n \"mibacRating\": - {\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"description\": \"The - video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali e - del Turismo (Italy).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"rcnofRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Hungarian - Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n - \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n - \ \"rcnofVi\",\n \"rcnofUnrated\"\n ]\n },\n - \ \"mpaatRating\": {\n \"description\": \"The rating system - for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GB\",\n \"RB\"\n ]\n - \ },\n \"djctqRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ]\n },\n - \ \"nbcplRating\": {\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Poland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"incaaRating\": - {\n \"description\": \"The video's INCAA (Instituto Nacional de Cine - y Artes Audiovisuales - Argentina) rating.\",\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ContentRating\",\n \"type\": \"object\",\n - \ \"description\": \"Ratings schemes. The country-specific ratings are - mostly for movies and shows. LINT.IfChange\"\n },\n \"MembershipsDetails\": - {\n \"id\": \"MembershipsDetails\",\n \"properties\": {\n \"accessibleLevels\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"Ids of all levels that the user has access to. - This includes the currently active level and all other levels that are included - because of a higher purchase.\",\n \"type\": \"array\"\n },\n - \ \"highestAccessibleLevel\": {\n \"description\": \"Id of - the highest level that the user has access to at the moment.\",\n \"type\": - \"string\"\n },\n \"membershipsDuration\": {\n \"$ref\": - \"MembershipsDuration\",\n \"description\": \"Data about memberships - duration without taking into consideration pricing levels.\"\n },\n - \ \"membershipsDurationAtLevels\": {\n \"description\": \"Data - about memberships duration on particular pricing levels.\",\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"type\": - \"array\"\n },\n \"highestAccessibleLevelDisplayName\": {\n - \ \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\",\n \"$ref\": \"ResourceId\"\n },\n \"playlistId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n },\n \"playlistItemId\": - {\n \"type\": \"string\",\n \"description\": \"ID of the - item within the playlist.\"\n }\n },\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"type\": \"object\",\n \"description\": \"Information about a - new playlist item.\"\n },\n \"LiveBroadcastStatus\": {\n \"type\": - \"object\",\n \"id\": \"LiveBroadcastStatus\",\n \"properties\": - {\n \"liveBroadcastPriority\": {\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Priority of - the live broadcast event (internal state).\",\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"This field - will be set to True if the creator declares the broadcast to be kids only: - go/live-cw-work.\"\n },\n \"lifeCycleStatus\": {\n \"enum\": - [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's status. The status can be updated - using the API's liveBroadcasts.transition method.\",\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ]\n },\n \"privacyStatus\": - {\n \"description\": \"The broadcast's privacy status. Note that - the broadcast represents exactly one YouTube video, so the privacy settings - are identical to those supported for videos. In addition, you can set this - field by modifying the broadcast resource or by setting the privacyStatus - field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\"\n },\n \"recordingStatus\": {\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ],\n \"description\": \"The broadcast's recording status.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ]\n },\n \"madeForKids\": {\n \"description\": - \"Whether the broadcast is made for kids or not, decided by YouTube instead - of the creator. This field is read only.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"description\": \"Live broadcast state.\"\n },\n - \ \"ActivityContentDetailsFavorite\": {\n \"id\": \"ActivityContentDetailsFavorite\",\n - \ \"type\": \"object\",\n \"description\": \"Information about a - video that was marked as a favorite video.\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that was marked as a favorite.\",\n \"$ref\": - \"ResourceId\"\n }\n }\n },\n \"VideoCategorySnippet\": - {\n \"type\": \"object\",\n \"id\": \"VideoCategorySnippet\",\n - \ \"properties\": {\n \"channelId\": {\n \"description\": - \"The YouTube channel that created the video category.\",\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"description\": \"The video category's title.\",\n - \ \"type\": \"string\"\n },\n \"assignable\": {\n \"type\": - \"boolean\"\n }\n },\n \"description\": \"Basic details about - a video category, such as its localized title.\"\n },\n \"VideoFileDetailsAudioStream\": - {\n \"properties\": {\n \"vendor\": {\n \"type\": \"string\",\n - \ \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\"\n },\n \"bitrateBps\": - {\n \"description\": \"The audio stream's bitrate, in bits per second.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"codec\": {\n \"description\": \"The audio codec that the - stream uses.\",\n \"type\": \"string\"\n },\n \"channelCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of audio channels that the stream contains.\"\n }\n },\n - \ \"description\": \"Information about an audio stream.\",\n \"id\": - \"VideoFileDetailsAudioStream\",\n \"type\": \"object\"\n },\n \"ChannelStatistics\": - {\n \"description\": \"Statistics about a channel: number of subscribers, - number of videos in the channel, etc.\",\n \"properties\": {\n \"hiddenSubscriberCount\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the number of subscribers is shown for this user.\"\n },\n \"commentCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of comments for the channel.\",\n \"format\": \"uint64\"\n },\n - \ \"viewCount\": {\n \"description\": \"The number of times - the channel has been viewed.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"videoCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of videos uploaded to the channel.\",\n - \ \"type\": \"string\"\n },\n \"subscriberCount\": {\n - \ \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of subscribers that the channel has.\"\n }\n },\n - \ \"id\": \"ChannelStatistics\",\n \"type\": \"object\"\n },\n - \ \"I18nRegionSnippet\": {\n \"properties\": {\n \"gl\": {\n - \ \"description\": \"The region code as a 2-letter ISO country code.\",\n - \ \"type\": \"string\"\n },\n \"name\": {\n \"type\": - \"string\",\n \"description\": \"The human-readable name of the region.\"\n - \ }\n },\n \"description\": \"Basic details about an i18n - region, such as region code and human-readable name.\",\n \"type\": \"object\",\n - \ \"id\": \"I18nRegionSnippet\"\n },\n \"VideoProcessingDetails\": - {\n \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\",\n \"properties\": {\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether video editing suggestions, which might improve video - quality or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\",\n \"type\": \"string\"\n },\n \"processingStatus\": - {\n \"description\": \"The video's processing status. This value - indicates whether YouTube was able to process the video or if the video is - still being processed.\",\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"fileDetailsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether file details are - available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\"\n },\n - \ \"processingIssuesAvailability\": {\n \"description\": \"This - value indicates whether the video processing engine has generated suggestions - that might improve YouTube's ability to process the the video, warnings that - explain video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"processingFailureReason\": - {\n \"type\": \"string\",\n \"description\": \"The reason - that YouTube failed to process the video. This property will only have a value - if the processingStatus property's value is failed.\",\n \"enum\": - [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"tagSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether keyword (tag) suggestions - are available for the video. Tags can be added to a video's metadata to make - it easier for other users to find the video. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"processingProgress\": {\n \"description\": \"The processingProgress - object contains information about the progress YouTube has made in processing - the video. The values are really only relevant if the video's processing status - is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ }\n },\n \"id\": \"VideoProcessingDetails\",\n \"type\": - \"object\"\n },\n \"PlaylistItemContentDetails\": {\n \"id\": \"PlaylistItemContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - a video. To retrieve the video resource, set the id query parameter to this - value in your API request.\",\n \"type\": \"string\"\n },\n - \ \"startAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\"\n },\n \"endAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\",\n - \ \"type\": \"string\"\n },\n \"note\": {\n \"description\": - \"A user-generated note for this item.\",\n \"type\": \"string\"\n - \ },\n \"videoPublishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the video was published - to YouTube.\",\n \"format\": \"date-time\"\n }\n }\n - \ },\n \"VideoAbuseReportReasonListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The `visitorId` identifies the visitor.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - valid abuse reasons that are used with `video.ReportAbuse`.\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportReason\"\n }\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoAbuseReportReasonListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"ActivityContentDetailsBulletin\": {\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource associated with a bulletin post. @mutable youtube.activities.insert\"\n - \ }\n },\n \"description\": \"Details about a channel bulletin - post.\",\n \"type\": \"object\"\n },\n \"MembershipsLevel\": {\n - \ \"description\": \"A *membershipsLevel* resource represents an offer - made by YouTube creators for their fans. Users can become members of the channel - by joining one of the available levels. They will provide recurring monetary - support and receives special benefits.\",\n \"id\": \"MembershipsLevel\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"default\": - \"youtube#membershipsLevel\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the memberships level.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"PageInfo\": {\n \"properties\": {\n \"resultsPerPage\": - {\n \"type\": \"integer\",\n \"description\": \"The number - of results included in the API response.\",\n \"format\": \"int32\"\n - \ },\n \"totalResults\": {\n \"description\": \"The - total number of results in the result set.\",\n \"format\": \"int32\",\n - \ \"type\": \"integer\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"PageInfo\",\n \"description\": \"Paging details for lists - of resources, including total number of items available and number of resources - returned in a single page.\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"properties\": {\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"format\": \"uint64\",\n \"description\": \"The amount - of the fund.\",\n \"type\": \"string\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the user to this fan funding event.\"\n },\n \"currency\": - {\n \"description\": \"The currency in which the fund was made.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatFanFundingEventDetails\",\n - \ \"type\": \"object\"\n },\n \"SubscriptionSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The subscription's title.\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the subscriber's channel.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The id object contains information about the - channel that the user subscribed to.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.subscriptions.insert\"\n ]\n }\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The subscription's details.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the subscription - belongs to.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the subscription was - created.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ }\n },\n \"description\": \"Basic details about a subscription, - including title, description and thumbnails of the subscribed item.\",\n \"id\": - \"SubscriptionSnippet\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"properties\": {\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"The details of the - user that was banned.\"\n },\n \"banDurationSeconds\": {\n \"type\": - \"string\",\n \"description\": \"The duration of the ban. This property - is only present if the banType is temporary.\",\n \"format\": \"uint64\"\n - \ },\n \"banType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"permanent\",\n \"temporary\"\n ],\n \"description\": - \"The type of ban.\"\n }\n }\n },\n \"Subscription\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"subscriberSnippet\": - {\n \"description\": \"The subscriberSnippet object contains basic - details about the subscriber.\",\n \"$ref\": \"SubscriptionSubscriberSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#subscription\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\",\n \"$ref\": - \"SubscriptionSnippet\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\",\n - \ \"$ref\": \"SubscriptionContentDetails\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the subscription.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A *subscription* resource contains information about - a YouTube user subscription. A subscription notifies a user when new videos - are added to a channel or when another user takes one of several actions on - YouTube, such as uploading a video, rating a video, or commenting on a video.\",\n - \ \"id\": \"Subscription\"\n },\n \"ActivitySnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"groupId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the resource primarily associated with the activity. @mutable youtube.activities.insert\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"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.\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of activity that the resource describes.\",\n \"enum\": - [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ],\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the resource primarily associated with the activity.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel associated with the activity.\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel responsible for - this activity\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the video - was uploaded.\",\n \"format\": \"date-time\"\n }\n },\n - \ \"id\": \"ActivitySnippet\",\n \"description\": \"Basic details - about an activity, including title, description, thumbnails, activity type - and group. Next ID: 12\"\n },\n \"MembershipsDurationAtLevel\": {\n - \ \"id\": \"MembershipsDurationAtLevel\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"memberTotalDurationMonths\": {\n \"format\": - \"int32\",\n \"type\": \"integer\",\n \"description\": \"The - cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\"\n },\n - \ \"memberSince\": {\n \"description\": \"The date and time - when the user became a continuous member for the given level.\",\n \"type\": - \"string\"\n },\n \"level\": {\n \"description\": \"Pricing - level ID.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"LiveChatMemberMilestoneChatDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level at which the - viever is a member. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n },\n - \ \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the member to this Member Milestone Chat. This field - is empty for messages without a comment from the member.\"\n },\n \"memberMonth\": - {\n \"format\": \"uint32\",\n \"description\": \"The total - amount of months (rounded up) the viewer has been a member that granted them - this Member Milestone Chat. This is the same number of months as is being - displayed to YouTube users.\",\n \"type\": \"integer\"\n }\n - \ },\n \"id\": \"LiveChatMemberMilestoneChatDetails\"\n },\n \"ChannelBannerResource\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#channelBannerResource\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n - \ },\n \"url\": {\n \"type\": \"string\",\n \"description\": - \"The URL of this banner image.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n }\n },\n \"description\": \"A channel banner - returned as the response to a channel_banner.insert call.\",\n \"id\": - \"ChannelBannerResource\",\n \"type\": \"object\"\n },\n \"VideoRating\": - {\n \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n },\n \"rating\": {\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"description\": - \"Rating of a video.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n }\n },\n \"id\": \"VideoRating\",\n - \ \"description\": \"Basic details about rating of a video.\",\n \"type\": - \"object\"\n },\n \"Video\": {\n \"id\": \"Video\",\n \"properties\": - {\n \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n \"description\": - \"Age restriction details related to a video. This data can only be retrieved - by the video owner.\"\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the video - in an embedded player.\",\n \"$ref\": \"VideoPlayer\"\n },\n - \ \"projectDetails\": {\n \"description\": \"The projectDetails - object contains information about the project specific video metadata. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"fileDetails\": - {\n \"description\": \"The fileDetails object encapsulates information - about the video file that was uploaded to YouTube, including the file's resolution, - duration, audio and video codecs, stream bitrates, and more. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n - \ },\n \"liveStreamingDetails\": {\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"processingDetails\": {\n - \ \"$ref\": \"VideoProcessingDetails\",\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"default\": \"youtube#video\",\n \"type\": \"string\"\n - \ },\n \"recordingDetails\": {\n \"description\": \"The - recordingDetails object encapsulates information about the location, date - and address where the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"suggestions\": {\n \"description\": \"The suggestions - object encapsulates suggestions that identify opportunities to improve the - video quality or the metadata for the uploaded video. This data can only be - retrieved by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n - \ },\n \"localizations\": {\n \"description\": \"The - localizations object contains localized versions of the basic details about - the video, such as its title and description.\",\n \"additionalProperties\": - {\n \"$ref\": \"VideoLocalization\"\n },\n \"type\": - \"object\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.videos.update\"\n ]\n }\n },\n - \ \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n \"description\": - \"The snippet object contains basic details about the video, such as its title, - description, and category.\"\n },\n \"contentDetails\": {\n - \ \"$ref\": \"VideoContentDetails\",\n \"description\": \"The - contentDetails object contains information about the video content, including - the length of the video and its aspect ratio.\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the video's uploading, processing, and privacy statuses.\",\n \"$ref\": - \"VideoStatus\"\n },\n \"topicDetails\": {\n \"$ref\": - \"VideoTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the video.\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object contains statistics about the video.\",\n \"$ref\": \"VideoStatistics\"\n - \ },\n \"monetizationDetails\": {\n \"$ref\": \"VideoMonetizationDetails\",\n - \ \"description\": \"The monetizationDetails object encapsulates information - about the monetization status of the video.\"\n }\n },\n \"description\": - \"A *video* resource represents a YouTube video.\",\n \"type\": \"object\"\n - \ },\n \"MembershipsDuration\": {\n \"id\": \"MembershipsDuration\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - across all levels in complete months (the time is rounded down to the nearest - integer).\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ },\n \"memberSince\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the user became a continuous - member across all levels.\"\n }\n }\n },\n \"VideoFileDetailsVideoStream\": - {\n \"description\": \"Information about a video stream.\",\n \"properties\": - {\n \"heightPixels\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The encoded video content's height - in pixels.\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"widthPixels\": {\n \"type\": \"integer\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\",\n \"format\": - \"uint32\"\n },\n \"codec\": {\n \"type\": \"string\",\n - \ \"description\": \"The video codec that the stream uses.\"\n },\n - \ \"bitrateBps\": {\n \"description\": \"The video stream's - bitrate, in bits per second.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"rotation\": {\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The amount that YouTube needs to - rotate the original source content to properly display the video.\",\n \"type\": - \"string\"\n },\n \"frameRateFps\": {\n \"description\": - \"The video stream's frame rate, in frames per second.\",\n \"type\": - \"number\",\n \"format\": \"double\"\n },\n \"aspectRatio\": - {\n \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\"\n }\n },\n \"id\": - \"VideoFileDetailsVideoStream\",\n \"type\": \"object\"\n },\n \"CommentThreadSnippet\": - {\n \"properties\": {\n \"isPublic\": {\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\",\n \"type\": \"boolean\"\n },\n \"topLevelComment\": - {\n \"description\": \"The top level comment of this thread.\",\n - \ \"$ref\": \"Comment\"\n },\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"canReply\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comments refer to, if any. No video_id implies a channel discussion - comment.\"\n },\n \"totalReplyCount\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The total number of replies (not including the top level comment).\"\n }\n - \ },\n \"id\": \"CommentThreadSnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a comment thread.\"\n },\n - \ \"LiveStreamHealthStatus\": {\n \"id\": \"LiveStreamHealthStatus\",\n - \ \"properties\": {\n \"configurationIssues\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"description\": \"The configurations issues on this - stream\"\n },\n \"status\": {\n \"description\": \"The - status code of this stream\",\n \"enum\": [\n \"good\",\n - \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"lastUpdateTimeSeconds\": - {\n \"format\": \"uint64\",\n \"description\": \"The last - time this status was updated (in seconds)\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"CaptionSnippet\": - {\n \"properties\": {\n \"lastUpdated\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the caption - track was last updated.\",\n \"format\": \"date-time\"\n },\n - \ \"failureReason\": {\n \"description\": \"The reason that - YouTube failed to process the caption track. This property is only present - if the state property's value is failed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ],\n \"type\": \"string\"\n - \ },\n \"status\": {\n \"type\": \"string\",\n \"enum\": - [\n \"serving\",\n \"syncing\",\n \"failed\"\n - \ ],\n \"description\": \"The caption track's status.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"audioTrackType\": {\n - \ \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ],\n \"description\": - \"The type of audio track associated with the caption track.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"isCC\": - {\n \"description\": \"Indicates whether the track contains closed - captions for the deaf and hard of hearing. The default value is false.\",\n - \ \"type\": \"boolean\"\n },\n \"isLarge\": {\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\",\n \"type\": \"boolean\"\n },\n - \ \"trackKind\": {\n \"type\": \"string\",\n \"description\": - \"The caption track's type.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"standard\",\n \"ASR\",\n \"forced\"\n - \ ]\n },\n \"isDraft\": {\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n },\n - \ \"name\": {\n \"description\": \"The name of the caption - track. The name is intended to be visible to the user as an option during - playback.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"videoId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video associated with - the caption track. @mutable youtube.captions.insert\"\n },\n \"isAutoSynced\": - {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"language\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\"\n },\n \"isEasyReader\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n }\n },\n \"id\": - \"CaptionSnippet\",\n \"type\": \"object\",\n \"description\": \"Basic - details about a caption track, such as its language and name.\"\n },\n - \ \"ActivityListResponse\": {\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#activityListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Activity\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ActivityListResponse\"\n },\n \"Channel\": - {\n \"description\": \"A *channel* resource contains information about - a YouTube channel.\",\n \"id\": \"Channel\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel, such as its - title, description, and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n - \ },\n \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n - \ \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\"\n - \ },\n \"contentOwnerDetails\": {\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"status\": {\n \"$ref\": - \"ChannelStatus\",\n \"description\": \"The status object encapsulates - information about the privacy status of the channel.\"\n },\n \"brandingSettings\": - {\n \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"topicDetails\": {\n \"$ref\": \"ChannelTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object encapsulates information - about the channel's content.\",\n \"$ref\": \"ChannelContentDetails\"\n - \ },\n \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"ChannelLocalization\"\n },\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\"\n },\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channel\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#channel\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel.\"\n }\n }\n },\n - \ \"ChannelSectionSnippet\": {\n \"type\": \"object\",\n \"id\": - \"ChannelSectionSnippet\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the channel section.\"\n - \ },\n \"style\": {\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The style of the channel section.\"\n },\n \"position\": {\n - \ \"description\": \"The position of the channel section in the channel.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": - \"The language of the channel section's default title and description.\"\n - \ },\n \"type\": {\n \"description\": \"The type of - the channel section.\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"title\": {\n \"description\": \"The channel section's title - for multiple_playlists and multiple_channels.\",\n \"type\": \"string\"\n - \ },\n \"localized\": {\n \"$ref\": \"ChannelSectionLocalization\",\n - \ \"description\": \"Localized title, read-only.\"\n }\n },\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\"\n },\n \"LiveBroadcastContentDetails\": - {\n \"description\": \"Detailed settings of a broadcast.\",\n \"properties\": - {\n \"mesh\": {\n \"description\": \"The mesh for projecting - the video if projection is mesh. The mesh value must be a UTF-8 string containing - the base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC - specification for an mshp box, excluding the box size and type but including - the following four reserved zero bytes for the version and flags.\",\n \"type\": - \"string\",\n \"format\": \"byte\"\n },\n \"enableDvr\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - determines whether viewers can access DVR controls while watching the video. - DVR controls enable the viewer to control the video playback experience by - pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\"\n },\n \"enableAutoStart\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"boundStreamLastUpdateTimeMs\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\",\n \"type\": \"string\"\n },\n - \ \"startWithSlate\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether the broadcast should automatically begin - with an in-stream slate when you update the broadcast's status to live. After - updating the status, you then need to send a liveCuepoints.insert request - that sets the cuepoint's eventState to end to remove the in-stream slate and - make your broadcast stream visible to viewers.\"\n },\n \"recordFromStart\": - {\n \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\",\n \"type\": \"boolean\"\n },\n \"enableEmbed\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast video can be played in an embedded player. - If you choose to archive the video (using the enableArchive property), this - setting will also apply to the archived video.\"\n },\n \"enableAutoStop\": - {\n \"description\": \"This setting indicates whether auto stop is - enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\",\n \"type\": \"boolean\"\n - \ },\n \"monitorStream\": {\n \"$ref\": \"MonitorStreamInfo\",\n - \ \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\"\n },\n \"boundStreamId\": - {\n \"type\": \"string\",\n \"description\": \"This value - uniquely identifies the live stream bound to the broadcast.\"\n },\n - \ \"enableContentEncryption\": {\n \"description\": \"This - setting indicates whether YouTube should enable content encryption for the - broadcast.\",\n \"type\": \"boolean\"\n },\n \"closedCaptionsType\": - {\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"stereoLayout\": - {\n \"description\": \"The 3D stereo layout of this broadcast. This - defaults to mono.\",\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"enableLowLatency\": {\n \"description\": - \"Indicates whether this broadcast has low latency enabled.\",\n \"type\": - \"boolean\"\n },\n \"projection\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\"\n - \ },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"latencyPreference\": - {\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"description\": \"If both this and - enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\",\n \"type\": \"string\",\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ]\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveBroadcastContentDetails\"\n - \ },\n \"I18nLanguageListResponse\": {\n \"properties\": {\n \"items\": - {\n \"description\": \"A list of supported i18n languages. In this - map, the i18n language ID is the map key, and its value is the corresponding - i18nLanguage resource.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n }\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"I18nLanguageListResponse\",\n - \ \"type\": \"object\"\n },\n \"PlaylistContentDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"itemCount\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n },\n \"id\": - \"PlaylistContentDetails\"\n },\n \"VideoListResponse\": {\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Video\"\n }\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"default\": \"youtube#videoListResponse\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": - \"VideoListResponse\",\n \"type\": \"object\"\n },\n \"PlaylistSnippet\": - {\n \"properties\": {\n \"defaultLanguage\": {\n \"description\": - \"The language of the playlist's default title and description.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel title of the channel that the video - belongs to.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The playlist's description.\"\n - \ },\n \"tags\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Keyword tags associated - with the playlist.\",\n \"type\": \"array\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlists.insert\",\n \"youtube.playlists.update\"\n - \ ]\n },\n \"description\": \"The playlist's title.\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"thumbnailVideoId\": {\n \"description\": \"Note: - if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the playlist.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the playlist was created.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"localized\": {\n \"$ref\": \"PlaylistLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ }\n },\n \"description\": \"Basic details about a playlist, - including title, description and thumbnails.\",\n \"type\": \"object\",\n - \ \"id\": \"PlaylistSnippet\"\n },\n \"ThirdPartyLinkSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic information - about a third party account link, including its type and type-specific information.\",\n - \ \"properties\": {\n \"channelToStoreLink\": {\n \"$ref\": - \"ChannelToStoreLinkDetails\",\n \"description\": \"Information specific - to a link between a channel and a store on a merchandising platform.\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"description\": - \"Type of the link named after the entities that are being linked.\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ]\n }\n },\n \"id\": \"ThirdPartyLinkSnippet\"\n - \ },\n \"MemberListResponse\": {\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#memberListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"description\": \"A list of members that - match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Member\"\n }\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n },\n \"id\": \"MemberListResponse\",\n - \ \"type\": \"object\"\n },\n \"MemberSnippet\": {\n \"id\": - \"MemberSnippet\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"membershipsDetails\": {\n \"description\": \"Details about - the user's membership.\",\n \"$ref\": \"MembershipsDetails\"\n },\n - \ \"creatorChannelId\": {\n \"description\": \"The id of the - channel that's offering memberships.\",\n \"type\": \"string\"\n - \ },\n \"memberDetails\": {\n \"description\": \"Details - about the member.\",\n \"$ref\": \"ChannelProfileDetails\"\n }\n - \ }\n },\n \"LiveBroadcastSnippet\": {\n \"properties\": {\n - \ \"scheduledStartTime\": {\n \"description\": \"The date and - time that the broadcast is scheduled to start.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"scheduledEndTime\": {\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the broadcast is scheduled to end.\",\n \"format\": \"date-time\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the broadcast was added to YouTube's live broadcast schedule.\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - broadcast. For each nested object in this object, the key is the name of the - thumbnail image, and the value is an object that contains other information - about the thumbnail.\"\n },\n \"actualStartTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - actually started. This information is only available once the broadcast's - state is live.\",\n \"type\": \"string\"\n },\n \"actualEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\"\n - \ },\n \"isDefaultBroadcast\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\"\n },\n \"liveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the live chat for this - broadcast.\"\n },\n \"description\": {\n \"description\": - \"The broadcast's description. As with the title, you can set this field by - modifying the broadcast resource or by setting the description field of the - corresponding video resource.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\"\n },\n \"title\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's title. Note that the broadcast - represents exactly one YouTube video. You can set this field by modifying - the broadcast resource or by setting the title field of the corresponding - video resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Basic broadcast information.\",\n - \ \"id\": \"LiveBroadcastSnippet\"\n },\n \"ChannelListResponse\": - {\n \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#channelListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Channel\"\n }\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelListResponse\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"description\": \"Video processing progress and completion time - estimate.\",\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"properties\": {\n \"timeLeftMs\": {\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"partsTotal\": {\n \"type\": \"string\",\n - \ \"description\": \"An estimate of the total number of parts that - need to be processed for the video. The number may be updated with more precise - estimates while YouTube processes the video.\",\n \"format\": \"uint64\"\n - \ },\n \"partsProcessed\": {\n \"description\": \"The - number of parts of the video that YouTube has already processed. You can estimate - the percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ActivityContentDetailsSubscription\": {\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource that the user subscribed - to.\"\n }\n },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"description\": \"Information about a channel that a user subscribed - to.\"\n },\n \"PlaylistLocalization\": {\n \"properties\": {\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for playlist's title.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's description.\"\n }\n },\n \"id\": - \"PlaylistLocalization\",\n \"type\": \"object\",\n \"description\": - \"Playlist localization setting\"\n },\n \"ChannelTopicDetails\": {\n - \ \"id\": \"ChannelTopicDetails\",\n \"type\": \"object\",\n \"description\": - \"Freebase topic information related to the channel.\",\n \"properties\": - {\n \"topicCategories\": {\n \"type\": \"array\",\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicIds\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Freebase topic IDs associated with - the channel. You can retrieve information about each topic using the Freebase - Topic API.\",\n \"type\": \"array\"\n }\n }\n },\n - \ \"ActivityContentDetailsChannelItem\": {\n \"description\": \"Details - about a resource which was added to a channel.\",\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that was added to the channel.\",\n \"$ref\": - \"ResourceId\"\n }\n }\n },\n \"VideoSuggestions\": {\n - \ \"description\": \"Specifies suggestions on how to improve video content, - including encoding hints, tag suggestions, and editor suggestions.\",\n \"type\": - \"object\",\n \"properties\": {\n \"editorSuggestions\": {\n \"items\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"Picture brightness levels seem off and could be corrected.\",\n - \ \"The video appears shaky and could be stabilized.\",\n \"Margins - (mattes) detected around the picture could be cropped.\",\n \"The - audio track appears silent and could be swapped with a better quality one.\"\n - \ ],\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ]\n },\n \"description\": \"A list of video - editing operations that might improve the video quality or playback experience - of the uploaded video.\",\n \"type\": \"array\"\n },\n \"processingWarnings\": - {\n \"description\": \"A list of reasons why YouTube may have difficulty - transcoding the uploaded video or that might result in an erroneous transcoding. - These warnings are generated before YouTube actually processes the uploaded - video file. In addition, they identify issues that are unlikely to cause the - video processing to fail but that might cause problems such as sync issues, - video artifacts, or a missing audio track.\",\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ]\n },\n \"type\": \"array\"\n },\n \"tagSuggestions\": - {\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"description\": \"A list of keyword tags that could - be added to the video's metadata to increase the likelihood that users will - locate your video when searching or browsing on YouTube.\",\n \"type\": - \"array\"\n },\n \"processingErrors\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n - \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n - \ \"unsupportedSpatialAudioLayout\"\n ],\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ]\n },\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\"\n },\n \"processingHints\": {\n \"items\": - {\n \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"The MP4 file is not streamable, - this will slow down the processing. MOOV atom was not found at the beginning - of the file.\",\n \"Probably a better quality version of the - video exists. The video has wide screen aspect ratio, but is not an HD video.\",\n - \ \"Uploaded video is spherical video.\",\n \"Uploaded - video has spatial audio.\",\n \"Uploaded video is VR video.\",\n - \ \"Uploaded video is HDR video.\"\n ]\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of suggestions - that may improve YouTube's ability to process the video.\"\n }\n },\n - \ \"id\": \"VideoSuggestions\"\n },\n \"ChannelConversionPing\": - {\n \"id\": \"ChannelConversionPing\",\n \"description\": \"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.\",\n \"properties\": {\n \"conversionUrl\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"context\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"Defines the context of the ping.\",\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ]\n }\n - \ },\n \"type\": \"object\"\n },\n \"PlaylistItem\": {\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n - \ },\n \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n - \ \"description\": \"The status object contains information about - the playlist item's privacy status.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#playlistItem\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n - \ }\n },\n \"description\": \"A *playlistItem* resource identifies - another resource, such as a video, that is included in a playlist. In addition, - the playlistItem resource contains details about the included resource that - pertain specifically to how that resource is used in that playlist. YouTube - uses playlists to identify special collections of videos for a channel, such - as: - uploaded videos - favorite videos - positively rated (liked) videos - - watch history - watch later To be more specific, these lists are associated - with a channel, which is a collection of a person, group, or company's videos, - playlists, and other YouTube information. You can retrieve the playlist IDs - for each of these lists from the channel resource for a given channel. You - can then use the playlistItems.list method to retrieve any of those lists. - You can also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods. For example, if a user gives a positive - rating to a video, you would insert that video into the liked videos playlist - for that user's channel.\",\n \"id\": \"PlaylistItem\"\n },\n \"ResourceId\": - {\n \"properties\": {\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the referred resource, if that resource is a video. This - property is only present if the resourceId.kind value is youtube#video.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"The type of the API resource.\",\n \"type\": \"string\"\n },\n - \ \"playlistId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a playlist. - This property is only present if the resourceId.kind value is youtube#playlist.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A resource id is a generic reference that points - to another YouTube resource.\",\n \"id\": \"ResourceId\"\n },\n \"GeoPoint\": - {\n \"type\": \"object\",\n \"properties\": {\n \"latitude\": - {\n \"description\": \"Latitude in degrees.\",\n \"type\": - \"number\",\n \"format\": \"double\"\n },\n \"longitude\": - {\n \"description\": \"Longitude in degrees.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n },\n \"altitude\": - {\n \"format\": \"double\",\n \"description\": \"Altitude - above the reference ellipsoid, in meters.\",\n \"type\": \"number\"\n - \ }\n },\n \"id\": \"GeoPoint\",\n \"description\": \"Geographical - coordinates of a point, in WGS84.\"\n },\n \"LiveStreamStatus\": {\n - \ \"description\": \"Brief description of the live stream status.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"streamStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"healthStatus\": {\n \"description\": - \"The health status of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n - \ }\n },\n \"id\": \"LiveStreamStatus\"\n },\n \"ThumbnailSetResponse\": - {\n \"properties\": {\n \"items\": {\n \"items\": {\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of thumbnails.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#thumbnailSetResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ThumbnailSetResponse\"\n - \ },\n \"SuperStickerMetadata\": {\n \"id\": \"SuperStickerMetadata\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"stickerId\": - {\n \"description\": \"Unique identifier of the Super Sticker. This - is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\",\n \"type\": \"string\"\n },\n - \ \"altText\": {\n \"type\": \"string\",\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\"\n },\n \"altTextLanguage\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the localization language - in which the alt text is returned.\"\n }\n }\n },\n \"MembershipsLevelSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"creatorChannelId\": - {\n \"description\": \"The id of the channel that's offering channel - memberships.\",\n \"type\": \"string\"\n },\n \"levelDetails\": - {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details - about the pricing level.\"\n }\n },\n \"id\": \"MembershipsLevelSnippet\"\n - \ },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"properties\": {\n \"associatedMembershipGiftingMessageId\": - {\n \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n - \ },\n \"gifterChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the user that made the membership gifting - purchase. This matches the `snippet.authorChannelId` of the associated membership - gifting message.\"\n },\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viewer is a member. This matches the - `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated - membership gifting message. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoPlayer\": {\n \"properties\": {\n \"embedHeight\": - {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n - \ \"embedWidth\": {\n \"description\": \"The embed width\",\n - \ \"format\": \"int64\",\n \"type\": \"string\"\n },\n - \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoPlayer\",\n - \ \"description\": \"Player to be used for a video playback.\"\n },\n - \ \"ChannelConversionPings\": {\n \"id\": \"ChannelConversionPings\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"pings\": {\n - \ \"description\": \"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.\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n },\n \"type\": \"array\"\n }\n - \ },\n \"description\": \"The conversionPings object encapsulates - information about conversion pings that need to be respected by the channel.\"\n - \ },\n \"SubscriptionSubscriberSnippet\": {\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the subscriber.\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"Thumbnails for this subscriber.\"\n },\n \"channelId\": {\n - \ \"description\": \"The channel ID of the subscriber.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the subscriber.\"\n }\n - \ },\n \"description\": \"Basic details about a subscription's subscriber - including title, description, channel ID and thumbnails.\",\n \"type\": - \"object\"\n },\n \"PlaylistItemSnippet\": {\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails. - Basic details of a YouTube Playlist item provided by the author. Next ID: - 15\",\n \"type\": \"object\",\n \"id\": \"PlaylistItemSnippet\",\n - \ \"properties\": {\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist item. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The item's title.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the user that added the item - to the playlist.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The item's description.\"\n },\n - \ \"videoOwnerChannelTitle\": {\n \"description\": \"Channel - title for the channel this video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"description\": \"Channel - title for the channel that the playlist item belongs to.\",\n \"type\": - \"string\"\n },\n \"position\": {\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"videoOwnerChannelId\": {\n \"description\": - \"Channel id for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"playlistId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the item was added to the playlist.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"description\": \"The id object contains information that can - be used to uniquely identify the resource that is included in the playlist - as the playlist item.\",\n \"$ref\": \"ResourceId\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ }\n }\n },\n \"ChannelSectionListResponse\": {\n \"properties\": - {\n \"items\": {\n \"description\": \"A list of ChannelSections - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"type\": \"array\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#channelSectionListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelSectionListResponse\"\n - \ },\n \"VideoTopicDetails\": {\n \"description\": \"Freebase topic - information related to the video.\",\n \"id\": \"VideoTopicDetails\",\n - \ \"properties\": {\n \"relevantTopicIds\": {\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"topicIds\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Freebase - topic IDs that are centrally associated with the video. These are topics that - are centrally featured in the video, and it can be said that the video is - mainly about each of these. You can retrieve information about each topic - using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"type\": \"array\"\n },\n \"topicCategories\": - {\n \"description\": \"A list of Wikipedia URLs that provide a high-level - description of the video's content.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelBrandingSettings\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"image\": {\n \"$ref\": \"ImageSettings\",\n - \ \"description\": \"Branding properties for branding images.\"\n - \ },\n \"hints\": {\n \"description\": \"Additional - experimental branding properties.\",\n \"items\": {\n \"$ref\": - \"PropertyValue\"\n },\n \"type\": \"array\"\n },\n - \ \"channel\": {\n \"$ref\": \"ChannelSettings\",\n \"description\": - \"Branding properties for the channel view.\"\n },\n \"watch\": - {\n \"description\": \"Branding properties for the watch page.\",\n - \ \"$ref\": \"WatchSettings\"\n }\n },\n \"id\": - \"ChannelBrandingSettings\",\n \"description\": \"Branding properties - of a YouTube channel.\"\n },\n \"LiveChatMessageAuthorDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"isChatSponsor\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is a sponsor of the live chat.\"\n },\n \"isChatOwner\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is the owner of the live chat.\"\n },\n \"channelId\": - {\n \"description\": \"The YouTube channel ID.\",\n \"type\": - \"string\"\n },\n \"isChatModerator\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a moderator - of the live chat.\"\n },\n \"isVerified\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author's identity has - been verified by YouTube.\"\n },\n \"profileImageUrl\": {\n - \ \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"channelUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's URL.\"\n },\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - display name.\"\n }\n },\n \"id\": \"LiveChatMessageAuthorDetails\"\n - \ },\n \"CommentSnippet\": {\n \"id\": \"CommentSnippet\",\n \"type\": - \"object\",\n \"properties\": {\n \"viewerRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID of the video the - comment refers to, if any.\",\n \"type\": \"string\"\n },\n - \ \"moderationStatus\": {\n \"type\": \"string\",\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment is - awaiting review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ]\n },\n \"authorDisplayName\": {\n \"description\": - \"The name of the user who posted the comment.\",\n \"type\": \"string\"\n - \ },\n \"textDisplay\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the comment was originally published.\"\n },\n \"canRate\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the current viewer can rate this comment.\"\n },\n \"updatedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the comment was last updated.\"\n - \ },\n \"parentId\": {\n \"type\": \"string\",\n \"description\": - \"The unique id of the parent comment, only set for replies.\"\n },\n - \ \"likeCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The total number of likes this comment has received.\",\n \"type\": - \"integer\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"authorChannelId\": {\n - \ \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"textOriginal\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n }\n },\n \"description\": - \"Basic details about a comment, such as its author and text.\"\n },\n - \ \"TestItemTestItemSnippet\": {\n \"properties\": {},\n \"id\": - \"TestItemTestItemSnippet\",\n \"type\": \"object\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"label\": {\n \"description\": - \"The localized label for this abuse report secondary reason.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of this abuse report secondary reason.\"\n - \ }\n }\n },\n \"LiveChatSuperStickerDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatSuperStickerDetails\",\n \"properties\": - {\n \"superStickerMetadata\": {\n \"description\": \"Information - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"tier\": {\n \"description\": \"The tier in - which the amount belongs. Lower amounts belong to lower tiers. The lowest - tier is 1.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"Cuepoint\": {\n \"type\": \"object\",\n \"properties\": - {\n \"walltimeMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The wall clock time at which the - cuepoint should be inserted. Only one of insertion_offset_time_ms and walltime_ms - may be set at a time.\"\n },\n \"id\": {\n \"description\": - \"The identifier for cuepoint resource.\",\n \"type\": \"string\"\n - \ },\n \"cueType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ]\n - \ },\n \"durationSecs\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The duration - of this cuepoint.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"insertionOffsetTimeMs\": {\n \"format\": - \"int64\",\n \"description\": \"The time when the cuepoint should - be inserted by offset to the broadcast actual start time.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Note that there - may be a 5-second end-point resolution issue. For instance, if a cuepoint - comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, - depending. This is an artifact of HLS.\",\n \"id\": \"Cuepoint\"\n },\n - \ \"VideoLocalization\": {\n \"id\": \"VideoLocalization\",\n \"properties\": - {\n \"title\": {\n \"description\": \"Localized version of - the video's title.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"Localized version of the video's description.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Localized versions of certain video properties (e.g. title).\",\n \"type\": - \"object\"\n },\n \"LiveStreamConfigurationIssue\": {\n \"id\": - \"LiveStreamConfigurationIssue\",\n \"type\": \"object\",\n \"properties\": - {\n \"severity\": {\n \"enum\": [\n \"info\",\n - \ \"warning\",\n \"error\"\n ],\n \"type\": - \"string\",\n \"description\": \"How severe this issue is to the - stream.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ],\n \"type\": - \"string\",\n \"description\": \"The kind of error happening.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The long-form description of the issue and how - to resolve it.\"\n },\n \"reason\": {\n \"description\": - \"The short-form reason for this issue.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveChatMessageListResponse\": {\n \"id\": - \"LiveChatMessageListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatMessageListResponse\",\n \"type\": - \"string\"\n },\n \"pollingIntervalMillis\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The amount of time the client should wait before polling again.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"offlineAt\": {\n \"description\": \"The date - and time when the underlying stream went offline.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"type\": \"array\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveStreamSnippet\": {\n - \ \"id\": \"LiveStreamSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The stream's title. The value must be between 1 and 128 characters long.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"description\": {\n \"description\": \"The stream's - description. The value cannot be longer than 10000 characters.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the stream was created.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"channelId\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is transmitting the stream.\",\n \"type\": \"string\"\n - \ },\n \"isDefaultStream\": {\n \"type\": \"boolean\"\n - \ }\n }\n },\n \"Entity\": {\n \"id\": \"Entity\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"typeId\": - {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\"\n },\n \"url\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveChatMembershipGiftingDetails\": {\n - \ \"type\": \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"properties\": {\n \"giftMembershipsLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the level of the gift - memberships purchased by the user. The Level names are defined by the YouTube - channel offering the Membership. In some situations this field isn't filled.\"\n - \ },\n \"giftMembershipsCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"description\": \"The number - of gift memberships purchased by the user.\"\n }\n }\n }\n - \ },\n \"fullyEncodeReservedExpansion\": true,\n \"basePath\": \"\",\n \"revision\": - \"20230220\",\n \"ownerName\": \"Google\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"title\": \"YouTube Data API v3\",\n \"discoveryVersion\": \"v1\",\n \"name\": - \"youtube\",\n \"batchPath\": \"batch\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:38 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCQc2abzqbqrp-TZG3K79Wng&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"Sc-tGugzHQEN_l3yALhko8imuu0\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"-2HDmC00IqM8mwuR_eQ1xYEwaF0\",\n \"id\": \"UCQc2abzqbqrp-TZG3K79Wng\",\n - \ \"snippet\": {\n \"title\": \"Pedro Mota\",\n \"description\": - \"Riding around the world on a Honda Transalp motorcycle experiencing the - ultimate freedom of the road. Follow me to the end of the world and experience - the real adventure of life on the road in strange, distant and marvelous lands. - A life of adventure travel.\\n\\nSupport the channel here, thanks a whole - lot: https://donorbox.org/supportpedromota\",\n \"customUrl\": \"@ipedromota\",\n - \ \"publishedAt\": \"2014-05-19T15:51:14Z\",\n \"thumbnails\": - {\n \"default\": {\n \"url\": \"https://yt3.ggpht.com/o94SGBpdlUjlhyQeelOJ7mTivkhVvIkVgsxY8PVAk6jnpgW7RCZw4VksDRx0hLEizkqzPNbvzb4=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/o94SGBpdlUjlhyQeelOJ7mTivkhVvIkVgsxY8PVAk6jnpgW7RCZw4VksDRx0hLEizkqzPNbvzb4=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/o94SGBpdlUjlhyQeelOJ7mTivkhVvIkVgsxY8PVAk6jnpgW7RCZw4VksDRx0hLEizkqzPNbvzb4=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Pedro Mota\",\n \"description\": - \"Riding around the world on a Honda Transalp motorcycle experiencing the - ultimate freedom of the road. Follow me to the end of the world and experience - the real adventure of life on the road in strange, distant and marvelous lands. - A life of adventure travel.\\n\\nSupport the channel here, thanks a whole - lot: https://donorbox.org/supportpedromota\"\n },\n \"country\": - \"NL\"\n },\n \"brandingSettings\": {\n \"channel\": {\n - \ \"title\": \"Pedro Mota\",\n \"description\": \"Riding - around the world on a Honda Transalp motorcycle experiencing the ultimate - freedom of the road. Follow me to the end of the world and experience the - real adventure of life on the road in strange, distant and marvelous lands. - A life of adventure travel.\\n\\nSupport the channel here, thanks a whole - lot: https://donorbox.org/supportpedromota\",\n \"keywords\": \"Motovlogger - \\\"Round the world traveller\\\" \\\"Motorcycle travel\\\" \\\"Honda Transalp\\\" - \\\"Solo motorcyclist\\\"\",\n \"unsubscribedTrailer\": \"4dQoI3-FUnY\",\n - \ \"country\": \"NL\"\n },\n \"image\": {\n \"bannerExternalUrl\": - \"https://yt3.googleusercontent.com/Lx0E030zchoPMXCDG3WyH-S7FFsvcL4BUudxklrVLm9FflzrpqYfU1a8oBT63sUt_awfZtQPUL4\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:39 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"id\": \"youtube:v3\",\n \"batchPath\": \"batch\",\n \"resources\": - {\n \"liveChatMessages\": {\n \"methods\": {\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a chat message.\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"id\": \"youtube.liveChatMessages.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\"\n },\n \"list\": {\n \"parameters\": - {\n \"maxResults\": {\n \"default\": \"500\",\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"maximum\": - \"2000\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"minimum\": \"200\"\n - \ },\n \"profileImageSize\": {\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"maximum\": - \"720\",\n \"type\": \"integer\",\n \"description\": - \"Specifies the size of the profile image that should be returned for each - user.\",\n \"minimum\": \"16\"\n },\n \"liveChatId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The id - of the live chat for which comments should be returned.\"\n },\n - \ \"hl\": {\n \"description\": \"Specifies the localization - language in which the system messages should be returned.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the liveChatComment - resource parts that the API response will include. Supported values are id - and snippet.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"id\": \"youtube.liveChatMessages.list\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"insert\": - {\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.liveChatMessages.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true\n }\n },\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatMessage\"\n - \ }\n }\n }\n },\n \"playlists\": {\n \"methods\": - {\n \"delete\": {\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.playlists.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/playlists\"\n },\n \"update\": {\n \"path\": - \"youtube/v3/playlists\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.playlists.update\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\"\n },\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"id\": \"youtube.playlists.list\",\n - \ \"parameters\": {\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the playlists owned by the specified - channel ID.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Return the playlists owned by the authenticated - user.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"PlaylistListResponse\"\n }\n },\n \"insert\": {\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/playlists\",\n \"path\": - \"youtube/v3/playlists\",\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.playlists.insert\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"youtube\": {\n \"resources\": - {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [],\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/commentThreads\"\n - \ }\n }\n }\n }\n },\n \"subscriptions\": - {\n \"methods\": {\n \"insert\": {\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"id\": \"youtube.subscriptions.insert\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"request\": - {\n \"$ref\": \"Subscription\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"DELETE\",\n \"id\": - \"youtube.subscriptions.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Deletes a resource.\"\n },\n - \ \"list\": {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"myRecentSubscribers\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"id\": {\n - \ \"description\": \"Return the subscriptions with the given IDs - for Stubby or Apiary.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\"\n },\n \"forChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the subscriptions to the subset of - these channels that the authenticated user is subscribed to.\"\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions of the given channel owner.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\"\n },\n \"mySubscribers\": - {\n \"location\": \"query\",\n \"description\": - \"Return the subscribers of the given channel owner.\",\n \"type\": - \"boolean\"\n },\n \"order\": {\n \"location\": - \"query\",\n \"description\": \"The order of the returned subscriptions\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"default\": \"relevance\",\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ]\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\",\n \"type\": - \"boolean\"\n }\n },\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.subscriptions.list\",\n \"flatPath\": - \"youtube/v3/subscriptions\"\n }\n }\n },\n \"channels\": - {\n \"methods\": {\n \"update\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/channels\",\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"description\": \"Updates an existing resource.\",\n \"response\": - {\n \"$ref\": \"Channel\"\n },\n \"request\": - {\n \"$ref\": \"Channel\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"httpMethod\": - \"PUT\",\n \"id\": \"youtube.channels.update\"\n },\n \"list\": - {\n \"path\": \"youtube/v3/channels\",\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Return the channels with the - specified IDs.\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the ids of channels owned by the authenticated user.\"\n },\n - \ \"forUsername\": {\n \"location\": \"query\",\n \"description\": - \"Return the channel associated with a YouTube username.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"minimum\": \"0\"\n },\n \"mySubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channels subscribed to the authenticated - user\"\n },\n \"categoryId\": {\n \"location\": - \"query\",\n \"description\": \"Return the channels within the - specified guide category ID.\",\n \"type\": \"string\"\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"managedByMe\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channels managed by the authenticated - user.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"id\": \"youtube.channels.list\",\n \"response\": - {\n \"$ref\": \"ChannelListResponse\"\n }\n }\n - \ }\n },\n \"captions\": {\n \"methods\": {\n \"download\": - {\n \"useMediaDownloadService\": true,\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"tfmt\": {\n \"location\": - \"query\",\n \"description\": \"Convert the captions into this - format. Supported options are sbv, srt, and vtt.\",\n \"type\": - \"string\"\n },\n \"tlang\": {\n \"location\": - \"query\",\n \"description\": \"tlang is the language code; machine - translate the captions into this language.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"id\": {\n \"location\": \"path\",\n - \ \"description\": \"The ID of the caption track to download, - required for One Platform.\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/captions/{id}\",\n \"path\": - \"youtube/v3/captions/{id}\",\n \"description\": \"Downloads a caption - track.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.captions.download\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"supportsMediaDownload\": true\n },\n \"list\": - {\n \"path\": \"youtube/v3/captions\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"id\": \"youtube.captions.list\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the captions for the specified video.\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"id\": {\n - \ \"location\": \"query\",\n \"description\": \"Returns - the captions with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is on behalf of.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/captions\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"id\": - \"youtube.captions.delete\",\n \"path\": \"youtube/v3/captions\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/captions\"\n },\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.captions.insert\",\n \"supportsMediaUpload\": - true,\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/captions\",\n \"mediaUpload\": - {\n \"maxSize\": \"104857600\",\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"id\": \"youtube.captions.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"supportsMediaUpload\": - true,\n \"path\": \"youtube/v3/captions\",\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"PUT\",\n \"mediaUpload\": {\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\",\n - \ \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/captions\",\n \"multipart\": true\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"sync\": {\n \"description\": \"Extra parameter - to allow automatically syncing the uploaded caption/transcript with the audio.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ }\n }\n }\n }\n },\n \"i18nLanguages\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"default\": \"en_US\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the i18nLanguage resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/i18nLanguages\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"I18nLanguageListResponse\"\n },\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"flatPath\": \"youtube/v3/i18nLanguages\"\n }\n }\n - \ },\n \"thirdPartyLinks\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.thirdPartyLinks.list\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"parameters\": {\n \"linkingToken\": {\n - \ \"type\": \"string\",\n \"description\": \"Get - a third party link with the given linking token.\",\n \"location\": - \"query\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Get a third party link of the given type.\",\n \"location\": - \"query\"\n },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API response will include. Supported - values are linkingToken, status, and snippet.\",\n \"type\": - \"string\",\n \"required\": true\n }\n }\n - \ },\n \"delete\": {\n \"id\": \"youtube.thirdPartyLinks.delete\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Deletes a resource.\",\n \"parameters\": {\n \"linkingToken\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"Delete the partner links with the given linking - token.\",\n \"location\": \"query\"\n },\n \"type\": - {\n \"required\": true,\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"description\": - \"Type of the link to be deleted.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"location\": - \"query\"\n },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel ID to which changes - should be applied, for delegation.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"Do not - use. Required for compatibility.\",\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"DELETE\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ]\n },\n \"update\": {\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\"\n },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.thirdPartyLinks.update\"\n },\n \"insert\": - {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API request and response will include. - Supported values are linkingToken, status, and snippet.\",\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\"\n }\n }\n },\n \"comments\": - {\n \"methods\": {\n \"markAsSpam\": {\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"Flags the comments with the given IDs as - spam in the caller's opinion.\"\n }\n },\n \"path\": - \"youtube/v3/comments/markAsSpam\",\n \"description\": \"Expresses - the caller's opinion that one or more comments should be flagged as spam.\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.markAsSpam\",\n \"flatPath\": - \"youtube/v3/comments/markAsSpam\"\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.delete\",\n \"httpMethod\": - \"DELETE\"\n },\n \"insert\": {\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"path\": \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"Comment\"\n - \ },\n \"id\": \"youtube.comments.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"POST\"\n },\n \"update\": {\n \"path\": \"youtube/v3/comments\",\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.update\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing resource.\"\n },\n \"setModerationStatus\": - {\n \"parameters\": {\n \"moderationStatus\": {\n \"required\": - true,\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"description\": \"Specifies the requested - moderation status. Note, comments can be in statuses, which are not available - through this call. For example, this call does not allow to mark a comment - as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\"\n },\n \"banAuthor\": - {\n \"default\": \"false\",\n \"description\": \"If - set to true the author of the comment gets added to the ban list. This means - all future comments of the author will autmomatically be rejected. Only valid - in combination with STATUS_REJECTED.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Sets the moderation status of one - or more comments.\",\n \"parameterOrder\": [\n \"id\",\n - \ \"moderationStatus\"\n ],\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\"\n },\n - \ \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.list\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more comment resource - properties that the API response will include.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"parentId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Returns - the comments with the given IDs for One Platform.\"\n },\n \"textFormat\": - {\n \"default\": \"html\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"description\": \"The requested text format - for the returned comments.\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"100\",\n \"default\": \"20\",\n \"location\": - \"query\",\n \"minimum\": \"1\"\n }\n },\n - \ \"path\": \"youtube/v3/comments\"\n }\n }\n },\n - \ \"activities\": {\n \"methods\": {\n \"list\": {\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/activities\",\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"parameters\": {\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"publishedBefore\": {\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"home\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\"\n },\n \"part\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"id\": \"youtube.activities.list\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"watermarks\": {\n \"methods\": - {\n \"set\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"maxSize\": \"10485760\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n - \ }\n }\n },\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"description\": \"Allows upload - of watermark image and setting it for a channel.\",\n \"supportsMediaUpload\": - true,\n \"parameters\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"path\": \"youtube/v3/watermarks/set\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"id\": \"youtube.watermarks.set\"\n - \ },\n \"unset\": {\n \"id\": \"youtube.watermarks.unset\",\n - \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"path\": - \"youtube/v3/watermarks/unset\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"description\": \"Allows - removal of channel watermark.\"\n }\n }\n },\n \"tests\": - {\n \"methods\": {\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"description\": \"POST method.\",\n \"request\": - {\n \"$ref\": \"TestItem\"\n },\n \"path\": \"youtube/v3/tests\",\n - \ \"id\": \"youtube.tests.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ }\n },\n \"flatPath\": \"youtube/v3/tests\"\n - \ }\n }\n },\n \"playlistItems\": {\n \"methods\": {\n - \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"path\": \"youtube/v3/playlistItems\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.playlistItems.insert\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"id\": \"youtube.playlistItems.delete\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"PlaylistItemListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"maxResults\": {\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"type\": \"integer\",\n \"minimum\": - \"0\",\n \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"playlistId\": - {\n \"description\": \"Return the playlist items within the given - playlist.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the playlist items associated with the given video ID.\"\n },\n - \ \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.playlistItems.list\",\n \"path\": \"youtube/v3/playlistItems\"\n - \ },\n \"update\": {\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"path\": \"youtube/v3/playlistItems\"\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"delete\": - {\n \"id\": \"youtube.videos.delete\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"path\": - \"youtube/v3/videos\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/videos\"\n },\n \"reportAbuse\": {\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\",\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Report abuse - for a video.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"parameterOrder\": [],\n - \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n - \ \"id\": \"youtube.videos.reportAbuse\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"Video\"\n },\n \"id\": \"youtube.videos.update\",\n - \ \"path\": \"youtube/v3/videos\"\n },\n \"getRating\": - {\n \"id\": \"youtube.videos.getRating\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Retrieves the ratings that the authorized user - gave to a list of specified videos.\",\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"flatPath\": - \"youtube/v3/videos/getRating\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"id\": \"youtube.videos.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos\",\n \"response\": {\n \"$ref\": - \"VideoListResponse\"\n },\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"myRating\": {\n \"description\": - \"Return videos liked/disliked by the authenticated user. Does not support - RateType.RATED_TYPE_NONE.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n },\n \"videoCategoryId\": - {\n \"default\": \"0\",\n \"location\": \"query\",\n - \ \"description\": \"Use chart that is specific to the specified - video category\",\n \"type\": \"string\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"description\": - \"Use a chart that is specific to the specified region\",\n \"type\": - \"string\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n },\n - \ \"maxWidth\": {\n \"type\": \"integer\",\n \"format\": - \"int32\",\n \"minimum\": \"72\",\n \"description\": - \"Return the player with maximum height specified in\",\n \"location\": - \"query\",\n \"maximum\": \"8192\"\n },\n \"locale\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Return - videos with the given ids.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxHeight\": {\n \"minimum\": - \"72\",\n \"format\": \"int32\",\n \"location\": - \"query\",\n \"maximum\": \"8192\",\n \"type\": - \"integer\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"description\": \"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.\",\n - \ \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"1\",\n \"type\": \"integer\",\n - \ \"location\": \"query\"\n },\n \"chart\": - {\n \"type\": \"string\",\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ],\n \"location\": - \"query\",\n \"description\": \"Return the videos that are in - the specified chart.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ]\n }\n }\n - \ },\n \"insert\": {\n \"parameters\": {\n \"notifySubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"default\": \"true\",\n \"description\": \"Notify - the channel subscribers about the new video. As default, the notification - is enabled.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"autoLevels\": {\n \"description\": - \"Should auto-levels be applied to the upload.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"stabilize\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Should stabilize be applied to the upload.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"response\": {\n - \ \"$ref\": \"Video\"\n },\n \"path\": \"youtube/v3/videos\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.insert\",\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"mediaUpload\": {\n \"maxSize\": - \"274877906944\",\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": - true\n },\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/videos\",\n \"multipart\": true\n }\n - \ },\n \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n - \ ]\n },\n \"supportsMediaUpload\": true,\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\"\n - \ },\n \"rate\": {\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"id\": \"youtube.videos.rate\",\n \"path\": \"youtube/v3/videos/rate\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Adds a like or dislike rating to - a video or removes a rating from a video.\",\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [\n \"id\",\n \"rating\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"rating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"required\": true,\n \"location\": - \"query\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n }\n }\n - \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n - \ \"insert\": {\n \"description\": \"Inserts a new resource - into this collection.\",\n \"request\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"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.\"\n }\n },\n \"response\": {\n - \ \"$ref\": \"AbuseReport\"\n },\n \"httpMethod\": - \"POST\"\n }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"MembershipsLevelListResponse\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"description\": \"Retrieves a list of all pricing - levels offered by a creator to the fans.\",\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.membershipsLevels.list\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the membershipsLevel - resource parts that the API response will include. Supported values are id - and snippet.\"\n }\n }\n }\n }\n },\n \"superChatEvents\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"SuperChatEventListResponse\"\n },\n \"parameters\": - {\n \"maxResults\": {\n \"type\": \"integer\",\n \"minimum\": - \"1\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"default\": \"5\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the superChatEvent - resource parts that the API response will include. This parameter is currently - not supported.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return rendered funding amounts in specified - language.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/superChatEvents\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/superChatEvents\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.superChatEvents.list\"\n }\n }\n },\n \"members\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"id\": \"youtube.members.list\",\n \"path\": - \"youtube/v3/members\",\n \"parameters\": {\n \"mode\": - {\n \"description\": \"Parameter that specifies which channel - members to return.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ],\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"default\": \"all_current\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"filterByMemberChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Comma - separated list of channel IDs. Only data about members that are part of this - list will be included in the response.\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"maximum\": - \"1000\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"type\": - \"integer\"\n },\n \"hasAccessToLevel\": {\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of members that - match the request criteria for a channel.\",\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/members\",\n \"response\": {\n - \ \"$ref\": \"MemberListResponse\"\n }\n }\n }\n - \ },\n \"liveChatBans\": {\n \"methods\": {\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"request\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.liveChatBans.insert\"\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"id\": \"youtube.liveChatBans.delete\",\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"description\": - \"Deletes a chat ban.\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"parameters\": {\n \"searchTerms\": {\n - \ \"location\": \"query\",\n \"description\": \"Limits - the returned comment threads to those matching the specified key words. Not - compatible with the 'id' filter.\",\n \"type\": \"string\"\n - \ },\n \"videoId\": {\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads of the specified - video.\",\n \"type\": \"string\"\n },\n \"order\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"orderUnspecified\",\n \"time\",\n - \ \"relevance\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"default\": \"time\"\n },\n - \ \"moderationStatus\": {\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by - a moderator.\",\n \"\",\n \"The comment is unfit - for display.\"\n ],\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"published\",\n \"description\": \"Limits the returned comment - threads to those with the specified moderation status. Not compatible with - the 'id' filter. Valid values: published, heldForReview, likelySpam.\"\n },\n - \ \"allThreadsRelatedToChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Returns the comment threads of all videos of the channel and the channel - comments as well.\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Returns the comment threads for - all the channel comments (ie does not include comments left on videos).\",\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"default\": - \"20\",\n \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"100\",\n \"format\": \"uint32\",\n \"minimum\": - \"1\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Returns the comment threads with the given IDs for Stubby or Apiary.\",\n - \ \"repeated\": true\n },\n \"textFormat\": - {\n \"type\": \"string\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"description\": \"The requested text format for the returned - comments.\",\n \"default\": \"html\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true\n }\n },\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.commentThreads.list\"\n },\n \"insert\": - {\n \"path\": \"youtube/v3/commentThreads\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.commentThreads.insert\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n }\n }\n }\n - \ },\n \"channelSections\": {\n \"methods\": {\n \"delete\": - {\n \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.channelSections.delete\",\n \"path\": - \"youtube/v3/channelSections\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\"\n ]\n },\n \"update\": {\n \"path\": - \"youtube/v3/channelSections\",\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"id\": \"youtube.channelSections.update\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"required\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/channelSections\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"hl\": - {\n \"location\": \"query\",\n \"description\": - \"Return content in specified language\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"Return the ChannelSections with the given IDs for Stubby or Apiary.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"description\": - \"Return the ChannelSections owned by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Return the ChannelSections owned - by the specified channel ID.\",\n \"location\": \"query\"\n }\n - \ },\n \"id\": \"youtube.channelSections.list\"\n },\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.insert\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"ChannelSection\"\n - \ }\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the videoCategory resource parts that the - API response will include. Supported values are id and snippet.\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"default\": \"en-US\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n \"id\": - \"youtube.videoAbuseReportReasons.list\",\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\"\n - \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"insertCuepoint\": {\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Insert cuepoints in a broadcast\",\n \"request\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"parameterOrder\": [],\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/cuepoint\"\n },\n \"insert\": - {\n \"parameters\": {\n \"onBehalfOfContentOwner\": {\n - \ \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n }\n },\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.liveBroadcasts.insert\",\n \"description\": \"Inserts a - new stream for the authenticated user.\",\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\"\n },\n \"transition\": - {\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"Broadcast to transition.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"broadcastStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Start testing the broadcast. YouTube transmits video to - the broadcast's monitor stream. Note that you can only transition a broadcast - to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"description\": \"The status to - which the broadcast is going to transition.\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"description\": - \"Transition a broadcast to a given status.\",\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ]\n },\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"description\": \"Retrieve the - list of broadcasts associated with the given channel.\",\n \"id\": - \"youtube.liveBroadcasts.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"broadcastType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return only scheduled event broadcasts.\",\n - \ \"Return only persistent broadcasts.\"\n ],\n - \ \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return only broadcasts with the - selected type.\",\n \"default\": \"event\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"default\": \"5\",\n \"minimum\": - \"0\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"format\": \"uint32\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"broadcastStatus\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return current live broadcasts.\",\n - \ \"Return broadcasts that have not yet started.\",\n \"Return - broadcasts that have already ended.\"\n ],\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ]\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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, status and statistics.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"id\": {\n \"repeated\": - true,\n \"description\": \"Return broadcasts with the given ids - from Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts\"\n },\n \"bind\": - {\n \"httpMethod\": \"POST\",\n \"description\": \"Bind - a broadcast to a stream.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"Broadcast to bind to the stream\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"streamId\": {\n \"location\": \"query\",\n \"description\": - \"Stream to bind, if not set unbind the current one.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"id\": - \"youtube.liveBroadcasts.bind\"\n },\n \"delete\": {\n \"description\": - \"Delete a given broadcast.\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.delete\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"description\": \"Broadcast to delete.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/liveBroadcasts\"\n - \ },\n \"update\": {\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"httpMethod\": \"PUT\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.update\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\"\n }\n - \ },\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Updates an existing broadcast for the authenticated user.\"\n }\n - \ }\n },\n \"channelBanners\": {\n \"methods\": {\n \"insert\": - {\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"mediaUpload\": - {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"6291456\",\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/channelBanners/insert\",\n \"multipart\": - true\n }\n }\n },\n \"supportsMediaUpload\": - true,\n \"parameterOrder\": [],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"channelId\": {\n \"description\": \"Unused, - channel_id is currently derived from the security context of the requestor.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.channelBanners.insert\",\n \"path\": - \"youtube/v3/channelBanners/insert\",\n \"response\": {\n \"$ref\": - \"ChannelBannerResource\"\n }\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.i18nRegions.list\",\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"required\": - true\n },\n \"hl\": {\n \"default\": \"en_US\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/i18nRegions\"\n - \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n - \ \"set\": {\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"2097152\",\n - \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"path\": \"youtube/v3/thumbnails/set\",\n \"httpMethod\": - \"POST\",\n \"supportsMediaUpload\": true,\n \"id\": \"youtube.thumbnails.set\",\n - \ \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"description\": \"As this is not an insert in a strict - sense (it supports uploading/setting of a thumbnail for multiple videos, which - doesn't result in creation of a single resource), I use a custom verb here.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"videoId\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the Thumbnail with the given video - IDs for Stubby or Apiary.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"videoId\"\n ]\n }\n }\n },\n \"liveChatModerators\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"id\": \"youtube.liveChatModerators.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"maximum\": - \"50\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"The id of the live chat for which - moderators should be returned.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"description\": \"The - *part* parameter specifies the liveChatModerator resource parts that the API - response will include. Supported values are id and snippet.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n }\n }\n - \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"id\": \"youtube.liveChatModerators.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a chat moderator.\"\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"id\": - \"youtube.liveChatModerators.insert\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ }\n },\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n }\n }\n }\n - \ },\n \"search\": {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/search\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"required\": - true\n },\n \"videoSyndicated\": {\n \"enum\": - [\n \"videoSyndicatedUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all videos, syndicated or - not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"description\": \"Filter on syndicated videos.\"\n },\n - \ \"videoDefinition\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"description\": \"Filter on the definition of the videos.\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ]\n },\n \"locationRadius\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on distance from the location (specified above).\"\n },\n - \ \"q\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Textual search terms to match.\"\n - \ },\n \"videoDimension\": {\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ],\n \"location\": - \"query\",\n \"description\": \"Filter on 3d videos.\",\n \"type\": - \"string\"\n },\n \"videoCategoryId\": {\n \"type\": - \"string\",\n \"description\": \"Filter on videos in a specific - category.\",\n \"location\": \"query\"\n },\n \"topicId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Restrict results to a particular topic.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"videoEmbeddable\": - {\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, embeddable or not.\",\n \"Only - retrieve embeddable videos.\"\n ],\n \"description\": - \"Filter on embeddable videos.\",\n \"location\": \"query\"\n - \ },\n \"videoLicense\": {\n \"description\": - \"Filter on the license of the videos.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ]\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"safeSearch\": {\n \"enum\": - [\n \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Indicates whether the search results should include restricted content as - well as standard content.\",\n \"location\": \"query\",\n \"default\": - \"moderate\"\n },\n \"type\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular set of resource types from One Platform.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on resources belonging to this channelId.\"\n - \ },\n \"forMine\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Search - for the private videos of the authenticated user.\"\n },\n \"location\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on location of the video\",\n \"type\": \"string\"\n - \ },\n \"relatedToVideoId\": {\n \"location\": - \"query\",\n \"description\": \"Search related to a resource.\",\n - \ \"type\": \"string\"\n },\n \"publishedBefore\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on resources published before this date.\",\n \"type\": - \"string\",\n \"format\": \"google-datetime\"\n },\n - \ \"eventType\": {\n \"location\": \"query\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ],\n \"type\": - \"string\",\n \"description\": \"Filter on the livestream status - of the videos.\"\n },\n \"videoCaption\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"description\": \"Filter on the presence - of captions on the videos.\"\n },\n \"forContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Search owned by a content owner.\"\n },\n - \ \"videoDuration\": {\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Filter - on the duration of the videos.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ]\n - \ },\n \"channelType\": {\n \"description\": - \"Add a filter on the channel search.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ]\n },\n - \ \"order\": {\n \"type\": \"string\",\n \"description\": - \"Sort order of the results.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"default\": \"relevance\",\n \"location\": \"query\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Display the content as seen by viewers in this country.\"\n },\n - \ \"videoType\": {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"description\": \"Filter on videos of a specific - type.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ]\n },\n \"forDeveloper\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\"\n },\n - \ \"publishedAfter\": {\n \"location\": \"query\",\n - \ \"description\": \"Filter on resources published after this - date.\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\"\n },\n \"relevanceLanguage\": {\n \"type\": - \"string\",\n \"description\": \"Return results relevant to this - language.\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\",\n \"format\": - \"uint32\",\n \"location\": \"query\",\n \"type\": - \"integer\",\n \"minimum\": \"0\"\n }\n },\n - \ \"id\": \"youtube.search.list\",\n \"path\": \"youtube/v3/search\",\n - \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"description\": \"Retrieves a list of search resources\"\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.videoCategories.list\",\n \"flatPath\": - \"youtube/v3/videoCategories\",\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"The *part* parameter - specifies the videoCategory resource properties that the API response will - include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"id\": {\n - \ \"description\": \"Returns the video categories with the given - IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"hl\": - {\n \"type\": \"string\",\n \"default\": \"en-US\",\n - \ \"location\": \"query\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/videoCategories\"\n }\n }\n },\n - \ \"liveStreams\": {\n \"methods\": {\n \"insert\": {\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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, content_details, and status.\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.insert\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new stream for the authenticated user.\"\n },\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.liveStreams.list\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"response\": {\n - \ \"$ref\": \"LiveStreamListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieve the list of streams associated - with the given channel. --\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"id\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Return - LiveStreams with the given ids from Stubby or Apiary.\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.liveStreams.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - an existing stream for the authenticated user.\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"id\": \"youtube.liveStreams.update\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"httpMethod\": \"PUT\"\n }\n - \ }\n }\n },\n \"servicePath\": \"\",\n \"ownerName\": \"Google\",\n - \ \"basePath\": \"\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"kind\": \"discovery#restDescription\",\n - \ \"canonicalName\": \"YouTube\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"description\": \"The YouTube Data API v3 is an API that provides access - to YouTube data, such as videos, playlists, and channels.\",\n \"revision\": - \"20230220\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n }\n }\n - \ }\n },\n \"title\": \"YouTube Data API v3\",\n \"version\": \"v3\",\n - \ \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"parameters\": {\n \"access_token\": {\n \"location\": \"query\",\n - \ \"description\": \"OAuth access token.\",\n \"type\": \"string\"\n - \ },\n \"quotaUser\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"$.xgafv\": {\n \"enum\": - [\n \"1\",\n \"2\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"v1 error - format\",\n \"v2 error format\"\n ],\n \"description\": \"V1 - error format.\"\n },\n \"fields\": {\n \"description\": \"Selector - specifying which fields to include in a partial response.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"callback\": {\n - \ \"description\": \"JSONP\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"oauth_token\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"OAuth 2.0 token for - the current user.\"\n },\n \"prettyPrint\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"default\": \"true\",\n \"description\": - \"Returns response with indentations and line breaks.\"\n },\n \"key\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n - \ },\n \"alt\": {\n \"description\": \"Data format for response.\",\n - \ \"enumDescriptions\": [\n \"Responses with Content-Type of application/json\",\n - \ \"Media download with context-dependent Content-Type\",\n \"Responses - with Content-Type of application/x-protobuf\"\n ],\n \"default\": - \"json\",\n \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"location\": \"query\",\n \"type\": \"string\"\n },\n - \ \"uploadType\": {\n \"description\": \"Legacy upload protocol for - media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"upload_protocol\": {\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n \"ownerDomain\": - \"google.com\",\n \"name\": \"youtube\",\n \"fullyEncodeReservedExpansion\": - true,\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"schemas\": - {\n \"I18nLanguage\": {\n \"id\": \"I18nLanguage\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the i18n language.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nLanguage\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the i18n language, such as language code - and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"An - *i18nLanguage* resource identifies a UI language currently supported by YouTube.\"\n - \ },\n \"CommentThreadListResponse\": {\n \"id\": \"CommentThreadListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentThreadListResponse\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"CommentThread\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of comment threads that match the request criteria.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"PlaylistItem\": - {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlistItem\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object is included in the resource if the included item is - a YouTube video. The object contains additional information about the video.\",\n - \ \"$ref\": \"PlaylistItemContentDetails\"\n },\n \"status\": - {\n \"$ref\": \"PlaylistItemStatus\",\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\"\n }\n - \ },\n \"id\": \"PlaylistItem\",\n \"description\": \"A *playlistItem* - resource identifies another resource, such as a video, that is included in - a playlist. In addition, the playlistItem resource contains details about - the included resource that pertain specifically to how that resource is used - in that playlist. YouTube uses playlists to identify special collections of - videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods. For example, if - a user gives a positive rating to a video, you would insert that video into - the liked videos playlist for that user's channel.\"\n },\n \"PlaylistContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"itemCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n },\n \"id\": - \"PlaylistContentDetails\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"properties\": {\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The description of the subscriber.\"\n - \ },\n \"thumbnails\": {\n \"description\": \"Thumbnails - for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"channelId\": {\n \"description\": \"The channel ID of the - subscriber.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The title of the subscriber.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a subscription's subscriber including title, description, channel ID and thumbnails.\"\n - \ },\n \"I18nLanguageListResponse\": {\n \"id\": \"I18nLanguageListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n - \ },\n \"description\": \"A list of supported i18n languages. - In this map, the i18n language ID is the map key, and its value is the corresponding - i18nLanguage resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nLanguageListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoLocalization\": - {\n \"properties\": {\n \"description\": {\n \"description\": - \"Localized version of the video's description.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"Localized version of the video's title.\"\n }\n },\n \"description\": - \"Localized versions of certain video properties (e.g. title).\",\n \"id\": - \"VideoLocalization\",\n \"type\": \"object\"\n },\n \"ChannelConversionPings\": - {\n \"id\": \"ChannelConversionPings\",\n \"properties\": {\n \"pings\": - {\n \"description\": \"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.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ }\n }\n },\n \"type\": \"object\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n - \ \"facebook\",\n \"twitter\"\n ],\n \"description\": - \"The name of the social network.\"\n },\n \"author\": {\n \"description\": - \"The author of the social network post.\",\n \"type\": \"string\"\n - \ },\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"An image of the post's author.\"\n },\n \"referenceUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL of - the social network post.\"\n }\n },\n \"description\": \"Details - about a social network post.\",\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsSocial\"\n },\n \"I18nRegionListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#i18nRegionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n },\n \"description\": \"A list of regions - where YouTube is available. In this map, the i18n region ID is the map key, - and its value is the corresponding i18nRegion resource.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"I18nRegionListResponse\"\n },\n \"SuperChatEventSnippet\": {\n \"id\": - \"SuperChatEventSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"supporterDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the supporter.\"\n },\n - \ \"isSuperStickerEvent\": {\n \"type\": \"boolean\",\n \"description\": - \"True if this event is a Super Sticker event.\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\"\n },\n \"messageType\": - {\n \"description\": \"The tier for the paid message, which is based - on the amount of money spent to purchase the message.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n },\n \"channelId\": {\n \"description\": - \"Channel id where the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"createdAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the event occurred.\"\n },\n \"commentText\": {\n - \ \"type\": \"string\",\n \"description\": \"The text contents - of the comment left by the user.\"\n },\n \"displayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). - The string is rendered for the given language.\"\n },\n \"amountMicros\": - {\n \"description\": \"The purchase amount, in micros of the purchase - currency. e.g., 1 is represented as 1000000.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"TestItemTestItemSnippet\": - {\n \"id\": \"TestItemTestItemSnippet\",\n \"properties\": {},\n - \ \"type\": \"object\"\n },\n \"RelatedEntity\": {\n \"id\": - \"RelatedEntity\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"entity\": {\n \"$ref\": \"Entity\"\n }\n }\n - \ },\n \"ActivityContentDetailsUpload\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ActivityContentDetailsUpload\",\n - \ \"description\": \"Information about the uploaded video.\"\n },\n - \ \"LiveChatMemberMilestoneChatDetails\": {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"properties\": {\n \"memberMonth\": {\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"memberLevelName\": - {\n \"description\": \"The name of the Level at which the viever - is a member. The Level names are defined by the YouTube channel offering the - Membership. In some situations this field isn't filled.\",\n \"type\": - \"string\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the member to this Member Milestone Chat. This field - is empty for messages without a comment from the member.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"CommentSnippet\": - {\n \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID of the video the comment refers to, if any.\",\n \"type\": - \"string\"\n },\n \"authorChannelUrl\": {\n \"type\": - \"string\",\n \"description\": \"Link to the author's YouTube channel, - if any.\"\n },\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"canRate\": - {\n \"description\": \"Whether the current viewer can rate this comment.\",\n - \ \"type\": \"boolean\"\n },\n \"parentId\": {\n \"description\": - \"The unique id of the parent comment, only set for replies.\",\n \"type\": - \"string\"\n },\n \"moderationStatus\": {\n \"type\": - \"string\",\n \"description\": \"The comment's moderation status. - Will not be set if the comments were requested through the id filter.\",\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by a - moderator.\",\n \"\",\n \"The comment is unfit for display.\"\n - \ ],\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ]\n },\n - \ \"likeCount\": {\n \"type\": \"integer\",\n \"description\": - \"The total number of likes this comment has received.\",\n \"format\": - \"uint32\"\n },\n \"authorChannelId\": {\n \"$ref\": - \"CommentSnippetAuthorChannelId\"\n },\n \"updatedAt\": {\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the comment was last updated.\"\n },\n \"textOriginal\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"authorProfileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - the avatar of the user who posted the comment.\"\n },\n \"viewerRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"description\": - \"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.\"\n },\n \"authorDisplayName\": {\n - \ \"description\": \"The name of the user who posted the comment.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the comment was originally published.\"\n },\n - \ \"textDisplay\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"description\": \"Basic details about - a comment, such as its author and text.\",\n \"type\": \"object\",\n - \ \"id\": \"CommentSnippet\"\n },\n \"CaptionListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of captions that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Caption\"\n }\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"default\": \"youtube#captionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"CaptionListResponse\"\n },\n - \ \"PlaylistItemStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"This resource's - privacy status.\"\n }\n },\n \"description\": \"Information - about the playlist item's privacy status.\",\n \"id\": \"PlaylistItemStatus\"\n - \ },\n \"LevelDetails\": {\n \"properties\": {\n \"displayName\": - {\n \"description\": \"The name that should be used when referring - to this level.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LevelDetails\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"properties\": {\n \"giftMembershipsLevelName\": {\n \"description\": - \"The name of the level of the gift memberships purchased by the user. The - Level names are defined by the YouTube channel offering the Membership. In - some situations this field isn't filled.\",\n \"type\": \"string\"\n - \ },\n \"giftMembershipsCount\": {\n \"type\": \"integer\",\n - \ \"description\": \"The number of gift memberships purchased by the - user.\",\n \"format\": \"int32\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n - \ \"CaptionSnippet\": {\n \"id\": \"CaptionSnippet\",\n \"description\": - \"Basic details about a caption track, such as its language and name.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"isLarge\": - {\n \"description\": \"Indicates whether the caption track uses large - text for the vision-impaired. The default value is false.\",\n \"type\": - \"boolean\"\n },\n \"isEasyReader\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video associated with the caption track. @mutable youtube.captions.insert\"\n - \ },\n \"lastUpdated\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the caption track was - last updated.\",\n \"type\": \"string\"\n },\n \"isAutoSynced\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n - \ },\n \"audioTrackType\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"description\": \"The - type of audio track associated with the caption track.\"\n },\n \"trackKind\": - {\n \"type\": \"string\",\n \"description\": \"The caption - track's type.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"standard\",\n - \ \"ASR\",\n \"forced\"\n ]\n },\n \"isCC\": - {\n \"description\": \"Indicates whether the track contains closed - captions for the deaf and hard of hearing. The default value is false.\",\n - \ \"type\": \"boolean\"\n },\n \"language\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\"\n },\n \"failureReason\": {\n \"enum\": [\n - \ \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\"\n },\n \"status\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"serving\",\n - \ \"syncing\",\n \"failed\"\n ],\n \"description\": - \"The caption track's status.\",\n \"type\": \"string\"\n },\n - \ \"name\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The name of the - caption track. The name is intended to be visible to the user as an option - during playback.\"\n },\n \"isDraft\": {\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n }\n }\n - \ },\n \"VideoProjectDetails\": {\n \"type\": \"object\",\n \"properties\": - {},\n \"description\": \"DEPRECATED. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"id\": \"VideoProjectDetails\"\n },\n \"I18nRegionSnippet\": - {\n \"description\": \"Basic details about an i18n region, such as region - code and human-readable name.\",\n \"type\": \"object\",\n \"properties\": - {\n \"gl\": {\n \"type\": \"string\",\n \"description\": - \"The region code as a 2-letter ISO country code.\"\n },\n \"name\": - {\n \"type\": \"string\",\n \"description\": \"The human-readable - name of the region.\"\n }\n },\n \"id\": \"I18nRegionSnippet\"\n - \ },\n \"VideoStatistics\": {\n \"id\": \"VideoStatistics\",\n \"type\": - \"object\",\n \"properties\": {\n \"dislikeCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of users who have indicated - that they disliked the video by giving it a negative rating.\",\n \"format\": - \"uint64\"\n },\n \"commentCount\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of comments for the video.\"\n },\n \"favoriteCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of users who currently - have the video marked as a favorite video.\",\n \"format\": \"uint64\"\n - \ },\n \"likeCount\": {\n \"description\": \"The number - of users who have indicated that they liked the video by giving it a positive - rating.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ },\n \"viewCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of times the video has been viewed.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\"\n },\n \"CommentThread\": {\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"default\": \"youtube#commentThread\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"CommentThreadSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment thread and also the top level comment.\"\n },\n \"replies\": - {\n \"$ref\": \"CommentThreadReplies\",\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment thread.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"CommentThread\",\n \"description\": - \"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.\"\n },\n \"LocalizedProperty\": {\n \"type\": - \"object\",\n \"properties\": {\n \"localized\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LocalizedString\"\n - \ }\n },\n \"defaultLanguage\": {\n \"$ref\": - \"LanguageTag\",\n \"description\": \"The language of the default - property.\"\n },\n \"default\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LocalizedProperty\"\n },\n \"ChannelStatistics\": - {\n \"type\": \"object\",\n \"description\": \"Statistics about - a channel: number of subscribers, number of videos in the channel, etc.\",\n - \ \"id\": \"ChannelStatistics\",\n \"properties\": {\n \"commentCount\": - {\n \"description\": \"The number of comments for the channel.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"subscriberCount\": {\n \"description\": \"The number of - subscribers that the channel has.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"videoCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of videos uploaded to - the channel.\",\n \"type\": \"string\"\n },\n \"hiddenSubscriberCount\": - {\n \"description\": \"Whether or not the number of subscribers is - shown for this user.\",\n \"type\": \"boolean\"\n },\n \"viewCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of times the channel has been viewed.\"\n }\n }\n - \ },\n \"IngestionInfo\": {\n \"id\": \"IngestionInfo\",\n \"description\": - \"Describes information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"rtmpsBackupIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - backupIngestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"backupIngestionAddress\": - {\n \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\",\n - \ \"type\": \"string\"\n },\n \"streamName\": {\n \"type\": - \"string\",\n \"description\": \"The stream name that YouTube assigns - to the video stream.\"\n },\n \"ingestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The primary ingestion URL that you - should use to stream video to YouTube. You must stream video to this URL. - Depending on which application or tool you use to encode your video stream, - you may need to enter the stream URL and stream name separately or you may - need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \"\n },\n \"rtmpsIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\"\n }\n }\n },\n \"VideoFileDetailsVideoStream\": - {\n \"id\": \"VideoFileDetailsVideoStream\",\n \"description\": - \"Information about a video stream.\",\n \"properties\": {\n \"rotation\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The amount that YouTube needs to - rotate the original source content to properly display the video.\",\n \"enum\": - [\n \"none\",\n \"clockwise\",\n \"upsideDown\",\n - \ \"counterClockwise\",\n \"other\"\n ]\n },\n - \ \"bitrateBps\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The video stream's bitrate, in bits - per second.\"\n },\n \"aspectRatio\": {\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\",\n \"format\": \"double\",\n - \ \"type\": \"number\"\n },\n \"heightPixels\": {\n - \ \"format\": \"uint32\",\n \"description\": \"The encoded - video content's height in pixels.\",\n \"type\": \"integer\"\n },\n - \ \"vendor\": {\n \"description\": \"A value that uniquely - identifies a video vendor. Typically, the value is a four-letter vendor code.\",\n - \ \"type\": \"string\"\n },\n \"widthPixels\": {\n \"format\": - \"uint32\",\n \"description\": \"The encoded video content's width - in pixels. You can calculate the video's encoding aspect ratio as width_pixels - / height_pixels.\",\n \"type\": \"integer\"\n },\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The video - codec that the stream uses.\"\n },\n \"frameRateFps\": {\n \"description\": - \"The video stream's frame rate, in frames per second.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": {\n - \ \"type\": \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"Video processing progress and completion time estimate.\",\n - \ \"properties\": {\n \"timeLeftMs\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"An estimate - of the amount of time, in millseconds, that YouTube needs to finish processing - the video.\"\n },\n \"partsTotal\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"An estimate - of the total number of parts that need to be processed for the video. The - number may be updated with more precise estimates while YouTube processes - the video.\"\n },\n \"partsProcessed\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\"\n - \ }\n }\n },\n \"ChannelContentOwnerDetails\": {\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"id\": \"ChannelContentOwnerDetails\",\n - \ \"properties\": {\n \"timeLinked\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the channel was linked to the content owner.\"\n - \ },\n \"contentOwner\": {\n \"description\": \"The - ID of the content owner linked to the channel.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoMonetizationDetails\": - {\n \"properties\": {\n \"access\": {\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\",\n - \ \"$ref\": \"AccessPolicy\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Details about monetization of a YouTube - Video.\",\n \"id\": \"VideoMonetizationDetails\"\n },\n \"ChannelStatus\": - {\n \"description\": \"JSON template for the status part of a channel.\",\n - \ \"id\": \"ChannelStatus\",\n \"type\": \"object\",\n \"properties\": - {\n \"privacyStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"Privacy - status of the channel.\"\n },\n \"longUploadsStatus\": {\n \"enum\": - [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\"\n },\n \"madeForKids\": {\n \"type\": - \"boolean\"\n },\n \"isLinked\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n },\n \"selfDeclaredMadeForKids\": {\n - \ \"type\": \"boolean\"\n }\n }\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"id\": \"CommentSnippetAuthorChannelId\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelToStoreLinkDetails\": {\n \"id\": - \"ChannelToStoreLinkDetails\",\n \"properties\": {\n \"storeName\": - {\n \"description\": \"Name of the store.\",\n \"type\": - \"string\"\n },\n \"merchantId\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"Google Merchant - Center id of the store.\"\n },\n \"storeUrl\": {\n \"description\": - \"Landing page of the store.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Information - specific to a store on a merchandising platform linked to a YouTube channel.\"\n - \ },\n \"ActivityContentDetailsSubscription\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource that the user subscribed to.\"\n }\n },\n - \ \"description\": \"Information about a channel that a user subscribed - to.\",\n \"id\": \"ActivityContentDetailsSubscription\"\n },\n \"VideoAbuseReportReason\": - {\n \"id\": \"VideoAbuseReportReason\",\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#videoAbuseReportReason\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\"\n - \ },\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"id\": {\n \"description\": - \"The ID of this abuse report reason.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"TestItem\": {\n \"id\": \"TestItem\",\n \"type\": - \"object\",\n \"properties\": {\n \"featuredPart\": {\n \"type\": - \"boolean\"\n },\n \"gaia\": {\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n },\n \"id\": {\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ }\n }\n },\n \"AbuseType\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"AbuseType\"\n },\n \"ChannelListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n \"default\": - \"youtube#channelListResponse\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Channel\"\n },\n \"type\": \"array\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n }\n - \ },\n \"id\": \"ChannelListResponse\"\n },\n \"VideoGetRatingResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"default\": \"youtube#videoGetRatingResponse\"\n },\n \"items\": - {\n \"description\": \"A list of ratings that match the request criteria.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoRating\"\n }\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"id\": \"VideoGetRatingResponse\",\n \"type\": \"object\"\n - \ },\n \"CdnSettings\": {\n \"type\": \"object\",\n \"properties\": - {\n \"resolution\": {\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"frameRate\": {\n \"type\": \"string\",\n - \ \"description\": \"The frame rate of the inbound video data.\",\n - \ \"enum\": [\n \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"ingestionInfo\": {\n - \ \"description\": \"The ingestionInfo object contains information - that YouTube provides that you need to transmit your RTMP or HTTP stream to - YouTube.\",\n \"$ref\": \"IngestionInfo\"\n },\n \"ingestionType\": - {\n \"description\": \" The method or protocol used to transmit the - video stream.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"enum\": [\n \"rtmp\",\n - \ \"dash\",\n \"webrtc\",\n \"hls\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"format\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The format of the video stream that you are sending - to Youtube. \"\n }\n },\n \"id\": \"CdnSettings\",\n \"description\": - \"Brief description of the live stream cdn settings.\"\n },\n \"I18nRegion\": - {\n \"description\": \"A *i18nRegion* resource identifies a region where - YouTube is available.\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegion\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"I18nRegionSnippet\",\n \"description\": \"The snippet object contains - basic details about the i18n region, such as region code and human-readable - name.\"\n }\n },\n \"id\": \"I18nRegion\"\n },\n \"VideoPlayer\": - {\n \"id\": \"VideoPlayer\",\n \"type\": \"object\",\n \"description\": - \"Player to be used for a video playback.\",\n \"properties\": {\n \"embedHtml\": - {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a - player that will play the video.\",\n \"type\": \"string\"\n },\n - \ \"embedWidth\": {\n \"type\": \"string\",\n \"description\": - \"The embed width\",\n \"format\": \"int64\"\n },\n \"embedHeight\": - {\n \"type\": \"string\",\n \"format\": \"int64\"\n }\n - \ }\n },\n \"ThirdPartyLinkStatus\": {\n \"type\": \"object\",\n - \ \"id\": \"ThirdPartyLinkStatus\",\n \"description\": \"The third-party - link status object contains information about the status of the link.\",\n - \ \"properties\": {\n \"linkStatus\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n }\n },\n \"LiveChatMessageSnippet\": {\n - \ \"description\": \"Next ID: 33\",\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\",\n \"type\": \"string\"\n },\n \"authorChannelId\": - {\n \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\",\n \"type\": \"string\"\n },\n \"newSponsorDetails\": - {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": - \"Details about the New Member Announcement event, this is only set if the - type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term - for \\\"sponsor\\\".\"\n },\n \"userBannedDetails\": {\n \"$ref\": - \"LiveChatUserBannedMessageDetails\"\n },\n \"fanFundingEventDetails\": - {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n - \ },\n \"membershipGiftingDetails\": {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n - \ \"description\": \"Details about the Membership Gifting event, this - is only set if the type is 'membershipGiftingEvent'.\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"superChatDetails\": {\n \"description\": \"Details - about the Super Chat event, this is only set if the type is 'superChatEvent'.\",\n - \ \"$ref\": \"LiveChatSuperChatDetails\"\n },\n \"hasDisplayContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the message has display content that should be displayed to users.\"\n },\n - \ \"memberMilestoneChatDetails\": {\n \"description\": \"Details - about the Member Milestone Chat event, this is only set if the type is 'memberMilestoneChatEvent'.\",\n - \ \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the message was orignally published.\",\n \"type\": - \"string\"\n },\n \"displayMessage\": {\n \"type\": - \"string\",\n \"description\": \"Contains a string that can be displayed - to the user. If this field is not present the message is silent, at the moment - only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\"\n },\n - \ \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"superStickerDetails\": {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n - \ \"description\": \"Details about the Super Sticker event, this is - only set if the type is 'superStickerEvent'.\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"liveChatId\": - {\n \"type\": \"string\"\n }\n }\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"properties\": - {\n \"label\": {\n \"description\": \"The localized label - for this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID of this abuse report secondary reason.\"\n }\n },\n \"type\": - \"object\"\n },\n \"I18nLanguageSnippet\": {\n \"id\": \"I18nLanguageSnippet\",\n - \ \"properties\": {\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the language in the - language itself.\"\n },\n \"hl\": {\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - an i18n language, such as language code and human-readable name.\",\n \"type\": - \"object\"\n },\n \"LocalizedString\": {\n \"properties\": {\n - \ \"value\": {\n \"type\": \"string\"\n },\n \"language\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LocalizedString\"\n },\n \"PlaylistLocalization\": {\n - \ \"description\": \"Playlist localization setting\",\n \"id\": \"PlaylistLocalization\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's description.\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's title.\"\n }\n }\n },\n \"PlaylistItemSnippet\": - {\n \"properties\": {\n \"playlistId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"The item's - description.\",\n \"type\": \"string\"\n },\n \"videoOwnerChannelId\": - {\n \"description\": \"Channel id for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the user that added the item to the playlist.\"\n - \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The id object contains information that can be - used to uniquely identify the resource that is included in the playlist as - the playlist item.\"\n },\n \"title\": {\n \"description\": - \"The item's title.\",\n \"type\": \"string\"\n },\n \"position\": - {\n \"description\": \"The order in which the item appears in the - playlist. The value uses a zero-based index, so the first item has a position - of 0, the second item has a position of 1, and so forth.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the playlist item. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the item - was added to the playlist.\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\",\n \"type\": - \"string\"\n },\n \"videoOwnerChannelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel this - video belongs to.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"PlaylistItemSnippet\",\n \"description\": \"Basic details about a playlist, - including title, description and thumbnails. Basic details of a YouTube Playlist - item provided by the author. Next ID: 15\"\n },\n \"SuperStickerMetadata\": - {\n \"properties\": {\n \"stickerId\": {\n \"type\": - \"string\",\n \"description\": \"Unique identifier of the Super Sticker. - This is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\"\n },\n \"altText\": {\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\",\n \"type\": \"string\"\n },\n \"altTextLanguage\": - {\n \"description\": \"Specifies the localization language in which - the alt text is returned.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"SuperStickerMetadata\"\n - \ },\n \"LiveBroadcastContentDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"Detailed settings of a broadcast.\",\n \"properties\": - {\n \"enableAutoStop\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether auto stop is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\"\n },\n \"mesh\": {\n \"format\": \"byte\",\n - \ \"type\": \"string\",\n \"description\": \"The mesh for - projecting the video if projection is mesh. The mesh value must be a UTF-8 - string containing the base-64 encoding of 3D mesh data that follows the Spherical - Video V2 RFC specification for an mshp box, excluding the box size and type - but including the following four reserved zero bytes for the version and flags.\"\n - \ },\n \"closedCaptionsType\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ]\n },\n \"stereoLayout\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\",\n \"enum\": - [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ]\n },\n \"enableAutoStart\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"enableClosedCaptions\": {\n \"description\": \"This setting - indicates whether HTTP POST closed captioning is enabled for this broadcast. - The ingestion URL of the closed captions is returned through the liveStreams - API. This is mutually exclusive with using the closed_captions_type property, - and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"monitorStream\": {\n - \ \"$ref\": \"MonitorStreamInfo\",\n \"description\": \"The - monitorStream object contains information about the monitor stream, which - the broadcaster can use to review the event content before the broadcast stream - is shown publicly.\"\n },\n \"boundStreamId\": {\n \"type\": - \"string\",\n \"description\": \"This value uniquely identifies the - live stream bound to the broadcast.\"\n },\n \"projection\": - {\n \"type\": \"string\",\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\"\n - \ },\n \"enableEmbed\": {\n \"description\": \"This - setting indicates whether the broadcast video can be played in an embedded - player. If you choose to archive the video (using the enableArchive property), - this setting will also apply to the archived video.\",\n \"type\": - \"boolean\"\n },\n \"enableDvr\": {\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n - \ },\n \"recordFromStart\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\"\n },\n \"startWithSlate\": {\n \"description\": - \"This setting indicates whether the broadcast should automatically begin - with an in-stream slate when you update the broadcast's status to live. After - updating the status, you then need to send a liveCuepoints.insert request - that sets the cuepoint's eventState to end to remove the in-stream slate and - make your broadcast stream visible to viewers.\",\n \"type\": \"boolean\"\n - \ },\n \"boundStreamLastUpdateTimeMs\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the live - stream referenced by boundStreamId was last updated.\",\n \"type\": - \"string\"\n },\n \"enableLowLatency\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether this broadcast - has low latency enabled.\"\n },\n \"latencyPreference\": {\n - \ \"enum\": [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enumDescriptions\": - [\n \"\",\n \"Best for: highest quality viewer playbacks - and higher resolutions.\",\n \"Best for: near real-time interaction, - with minimal playback buffering.\",\n \"Best for: real-time interaction - Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n - \ \"type\": \"string\"\n },\n \"enableContentEncryption\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether YouTube should enable content encryption for the broadcast.\"\n - \ }\n },\n \"id\": \"LiveBroadcastContentDetails\"\n },\n - \ \"SearchResultSnippet\": {\n \"description\": \"Basic details about - a search result, including title, description and thumbnails of the item referenced - by the search result.\",\n \"properties\": {\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - creation date and time of the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the channel that published the resource - that the search result identifies.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the search result. 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.\"\n },\n - \ \"title\": {\n \"description\": \"The title of the search - result.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"A description - of the search result.\"\n },\n \"liveBroadcastContent\": {\n - \ \"type\": \"string\",\n \"description\": \"It indicates - if the resource (video or channel) has upcoming/active live broadcast content. - Or it's \\\"none\\\" if there is not any upcoming/active live broadcasts.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The live - broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n }\n },\n \"type\": - \"object\",\n \"id\": \"SearchResultSnippet\"\n },\n \"LiveChatBanSnippet\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatBanSnippet\",\n \"properties\": - {\n \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"description\": \"The - type of ban.\",\n \"enumDescriptions\": [\n \"An invalid - ban type.\",\n \"A permanent ban.\",\n \"A temporary - ban.\"\n ]\n },\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": {\n - \ \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n },\n - \ \"liveChatId\": {\n \"description\": \"The chat this ban - is pertinent to.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"VideoContentDetailsRegionRestriction\": {\n \"properties\": - {\n \"allowed\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of region codes that identify - countries where the video is viewable. If this property is present and a country - is not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\",\n \"type\": \"array\"\n },\n - \ \"blocked\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of region codes that identify - countries where the video is blocked. If this property is present and a country - is not listed in its value, then the video is viewable in that country. If - this property is present and contains an empty list, the video is viewable - in all countries.\",\n \"type\": \"array\"\n }\n },\n - \ \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"id\": \"VideoContentDetailsRegionRestriction\",\n \"type\": \"object\"\n - \ },\n \"ThirdPartyLinkSnippet\": {\n \"id\": \"ThirdPartyLinkSnippet\",\n - \ \"properties\": {\n \"type\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A link - that is connecting (or about to connect) a channel with a store on a merchandising - platform in order to enable retail commerce capabilities for that channel - on YouTube.\"\n ],\n \"description\": \"Type of the link - named after the entities that are being linked.\",\n \"enum\": [\n - \ \"linkUnspecified\",\n \"channelToStoreLink\"\n ]\n - \ },\n \"channelToStoreLink\": {\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Basic information - about a third party account link, including its type and type-specific information.\"\n - \ },\n \"VideoSuggestions\": {\n \"description\": \"Specifies suggestions - on how to improve video content, including encoding hints, tag suggestions, - and editor suggestions.\",\n \"id\": \"VideoSuggestions\",\n \"type\": - \"object\",\n \"properties\": {\n \"processingErrors\": {\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"audioFile\",\n \"imageFile\",\n - \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n - \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"enumDescriptions\": [\n \"File - contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., - a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file.\",\n \"Document - or text file (e.g., MS Word document).\",\n \"An archive file - (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout - type.\"\n ]\n }\n },\n \"editorSuggestions\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ],\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ]\n - \ },\n \"description\": \"A list of video editing operations - that might improve the video quality or playback experience of the uploaded - video.\"\n },\n \"tagSuggestions\": {\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\",\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"type\": \"array\"\n },\n \"processingHints\": - {\n \"description\": \"A list of suggestions that may improve YouTube's - ability to process the video.\",\n \"items\": {\n \"enum\": - [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"processingWarnings\": {\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ]\n },\n \"type\": \"array\",\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\"\n }\n }\n },\n \"ResourceId\": {\n \"id\": - \"ResourceId\",\n \"type\": \"object\",\n \"properties\": {\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the referred resource, if that resource is a channel. This property is only - present if the resourceId.kind value is youtube#channel.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\",\n \"type\": \"string\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the referred resource, if that resource - is a playlist. This property is only present if the resourceId.kind value - is youtube#playlist.\"\n },\n \"kind\": {\n \"description\": - \"The type of the API resource.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"A resource id is a generic reference that - points to another YouTube resource.\"\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"description\": \"A single tag suggestion with it's relevance information.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"tag\": {\n - \ \"description\": \"The keyword tag suggested for the video.\",\n - \ \"type\": \"string\"\n },\n \"categoryRestricts\": - {\n \"type\": \"array\",\n \"description\": \"A set of video - categories for which the tag is relevant. You can use this information to - display appropriate tag suggestions based on the video category that the video - uploader associates with the video. By default, tag suggestions are relevant - for all categories if there are no restricts defined for the keyword.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"id\": \"VideoSuggestionsTagSuggestion\"\n },\n \"CommentThreadReplies\": - {\n \"properties\": {\n \"comments\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"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.\"\n }\n },\n - \ \"id\": \"CommentThreadReplies\",\n \"description\": \"Comments - written in (direct or indirect) reply to the top level comment.\",\n \"type\": - \"object\"\n },\n \"LiveChatNewSponsorDetails\": {\n \"properties\": - {\n \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n },\n \"isUpgrade\": {\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\",\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatNewSponsorDetails\"\n },\n \"VideoRecordingDetails\": {\n - \ \"properties\": {\n \"recordingDate\": {\n \"description\": - \"The date and time when the video was recorded.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"location\": - {\n \"description\": \"The geolocation information associated with - the video.\",\n \"$ref\": \"GeoPoint\"\n },\n \"locationDescription\": - {\n \"type\": \"string\",\n \"description\": \"The text - description of the location where the video was recorded.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Recording information - associated with the video.\",\n \"id\": \"VideoRecordingDetails\"\n },\n - \ \"LiveChatMessageDeletedDetails\": {\n \"properties\": {\n \"deletedMessageId\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageDeletedDetails\"\n },\n \"LiveChatModerator\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n \"default\": - \"youtube#liveChatModerator\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the moderator.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveChatModeratorSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the moderator.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"A *liveChatModerator* resource represents a moderator for a YouTube live - chat. A chat moderator has the ability to ban/unban users from a chat, remove - message, etc.\",\n \"id\": \"LiveChatModerator\"\n },\n \"VideoLiveStreamingDetails\": - {\n \"type\": \"object\",\n \"description\": \"Details about the - live streaming metadata.\",\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"properties\": {\n \"actualEndTime\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast actually ended. This value will not be available - until the broadcast is over.\"\n },\n \"scheduledEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast is scheduled to end. - If the value is empty or the property is not present, then the broadcast is - scheduled to contiue indefinitely.\"\n },\n \"concurrentViewers\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n },\n - \ \"scheduledStartTime\": {\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast is scheduled to begin.\",\n \"format\": - \"date-time\"\n },\n \"activeLiveChatId\": {\n \"description\": - \"The ID of the currently active live chat attached to this video. This field - is filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\",\n \"type\": \"string\"\n },\n \"actualStartTime\": - {\n \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"PlaylistSnippet\": {\n \"properties\": {\n \"localized\": - {\n \"$ref\": \"PlaylistLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the playlist's default title - and description.\",\n \"type\": \"string\"\n },\n \"tags\": - {\n \"description\": \"Keyword tags associated with the playlist.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the playlist.\"\n },\n \"channelTitle\": - {\n \"description\": \"The channel title of the channel that the - video belongs to.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"description\": - {\n \"description\": \"The playlist's description.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the playlist was created.\"\n },\n \"thumbnailVideoId\": - {\n \"type\": \"string\",\n \"description\": \"Note: if - the playlist has a custom thumbnail, this field will not be populated. The - video id selected by the user that will be used as the thumbnail of this playlist. - This field defaults to the first publicly viewable video in the playlist, - if: 1. The user has never selected a video to be the thumbnail of the playlist. - 2. The user selects a video to be the thumbnail, and then removes that video - from the playlist. 3. The user selects a non-owned video to be the thumbnail, - but that video becomes private, or gets deleted.\"\n },\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The playlist's - title.\"\n }\n },\n \"description\": \"Basic details about - a playlist, including title, description and thumbnails.\",\n \"type\": - \"object\",\n \"id\": \"PlaylistSnippet\"\n },\n \"Entity\": {\n - \ \"type\": \"object\",\n \"id\": \"Entity\",\n \"properties\": - {\n \"typeId\": {\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\"\n },\n \"url\": {\n \"type\": - \"string\"\n }\n }\n },\n \"ThirdPartyLinkListResponse\": - {\n \"id\": \"ThirdPartyLinkListResponse\",\n \"properties\": {\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n }\n },\n - \ \"type\": \"object\"\n },\n \"Subscription\": {\n \"id\": - \"Subscription\",\n \"properties\": {\n \"contentDetails\": {\n - \ \"description\": \"The contentDetails object contains basic statistics - about the subscription.\",\n \"$ref\": \"SubscriptionContentDetails\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the subscription, including its title - and the channel that the user subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n - \ },\n \"subscriberSnippet\": {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"The subscriberSnippet object contains basic details - about the subscriber.\"\n },\n \"kind\": {\n \"default\": - \"youtube#subscription\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the subscription.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A *subscription* - resource contains information about a YouTube user subscription. A subscription - notifies a user when new videos are added to a channel or when another user - takes one of several actions on YouTube, such as uploading a video, rating - a video, or commenting on a video.\"\n },\n \"SuperChatEvent\": {\n - \ \"description\": \"A `__superChatEvent__` resource represents a Super - Chat purchase on a YouTube channel.\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"default\": \"youtube#superChatEvent\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The `snippet` - object contains basic details about the Super Chat event.\",\n \"$ref\": - \"SuperChatEventSnippet\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the Super Chat event.\"\n }\n },\n \"id\": \"SuperChatEvent\",\n - \ \"type\": \"object\"\n },\n \"VideoProcessingDetails\": {\n \"type\": - \"object\",\n \"description\": \"Describes processing status and progress - and availability of some other Video resource parts.\",\n \"id\": \"VideoProcessingDetails\",\n - \ \"properties\": {\n \"thumbnailsAvailability\": {\n \"description\": - \"This value indicates whether thumbnail images have been generated for the - video.\",\n \"type\": \"string\"\n },\n \"editorSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether video editing - suggestions, which might improve video quality or the playback experience, - are available for the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"tagSuggestionsAvailability\": {\n \"description\": - \"This value indicates whether keyword (tag) suggestions are available for - the video. Tags can be added to a video's metadata to make it easier for other - users to find the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"fileDetailsAvailability\": {\n \"description\": - \"This value indicates whether file details are available for the uploaded - video. You can retrieve a video's file details by requesting the fileDetails - part in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"processingStatus\": {\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's processing status. This value indicates - whether YouTube was able to process the video or if the video is still being - processed.\"\n },\n \"processingProgress\": {\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"processingFailureReason\": {\n \"enum\": [\n - \ \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ],\n \"description\": \"The reason - that YouTube failed to process the video. This property will only have a value - if the processingStatus property's value is failed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"processingIssuesAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether the video processing engine has generated suggestions that - might improve YouTube's ability to process the the video, warnings that explain - video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\"\n }\n }\n },\n \"MembershipsDurationAtLevel\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsDurationAtLevel\",\n - \ \"properties\": {\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\"\n },\n - \ \"level\": {\n \"type\": \"string\",\n \"description\": - \"Pricing level ID.\"\n },\n \"memberSince\": {\n \"description\": - \"The date and time when the user became a continuous member for the given - level.\",\n \"type\": \"string\"\n }\n }\n },\n \"LiveChatMessageListResponse\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageListResponse\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"offlineAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the underlying stream - went offline.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n }\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatMessageListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"pollingIntervalMillis\": - {\n \"type\": \"integer\",\n \"description\": \"The amount - of time the client should wait before polling again.\",\n \"format\": - \"uint32\"\n }\n }\n },\n \"MembershipsLevel\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"MembershipsLevelSnippet\",\n \"description\": \"The snippet object - contains basic details about the level.\"\n },\n \"id\": {\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the memberships level.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#membershipsLevel\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ }\n },\n \"id\": \"MembershipsLevel\",\n \"type\": - \"object\",\n \"description\": \"A *membershipsLevel* resource represents - an offer made by YouTube creators for their fans. Users can become members - of the channel by joining one of the available levels. They will provide recurring - monetary support and receives special benefits.\"\n },\n \"ActivityListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#activityListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#activityListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Activity\"\n },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n }\n - \ },\n \"id\": \"ActivityListResponse\",\n \"type\": \"object\"\n - \ },\n \"VideoFileDetailsAudioStream\": {\n \"id\": \"VideoFileDetailsAudioStream\",\n - \ \"description\": \"Information about an audio stream.\",\n \"type\": - \"object\",\n \"properties\": {\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"channelCount\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The number of audio channels that - the stream contains.\"\n },\n \"codec\": {\n \"description\": - \"The audio codec that the stream uses.\",\n \"type\": \"string\"\n - \ },\n \"bitrateBps\": {\n \"description\": \"The audio - stream's bitrate, in bits per second.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"Activity\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource\"\n },\n \"contentDetails\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetails\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the activity, including the activity's type and group - ID.\",\n \"$ref\": \"ActivitySnippet\"\n },\n \"kind\": - {\n \"default\": \"youtube#activity\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#activity\\\".\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the activity.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"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.\",\n \"id\": \"Activity\"\n - \ },\n \"MemberSnippet\": {\n \"type\": \"object\",\n \"id\": - \"MemberSnippet\",\n \"properties\": {\n \"membershipsDetails\": - {\n \"$ref\": \"MembershipsDetails\",\n \"description\": - \"Details about the user's membership.\"\n },\n \"creatorChannelId\": - {\n \"description\": \"The id of the channel that's offering memberships.\",\n - \ \"type\": \"string\"\n },\n \"memberDetails\": {\n - \ \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the member.\"\n }\n }\n },\n \"ChannelSnippet\": - {\n \"description\": \"Basic details about a channel, including title, - description and thumbnails.\",\n \"id\": \"ChannelSnippet\",\n \"type\": - \"object\",\n \"properties\": {\n \"customUrl\": {\n \"type\": - \"string\",\n \"description\": \"The custom url of the channel.\"\n - \ },\n \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\"\n },\n \"description\": {\n - \ \"description\": \"The description of the channel.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - channel's title.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the channel was created.\",\n \"format\": \"date-time\"\n - \ },\n \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel's default title - and description.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ActivityContentDetailsChannelItem\": {\n \"description\": - \"Details about a resource which was added to a channel.\",\n \"id\": - \"ActivityContentDetailsChannelItem\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that was added to the channel.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"VideoFileDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"fileSize\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\",\n \"format\": \"uint64\"\n - \ },\n \"durationMs\": {\n \"description\": \"The length - of the uploaded video in milliseconds.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"fileName\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded file's name. This field - is present whether a video file or another type of file was uploaded.\"\n - \ },\n \"videoStreams\": {\n \"description\": \"A list - of video streams contained in the uploaded video file. Each item in the list - contains detailed metadata about a video stream.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ }\n },\n \"fileType\": {\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"type\": \"string\",\n \"description\": - \"The uploaded file's type as detected by YouTube's video processing engine. - Currently, YouTube only processes video files, but this field is present whether - a video file or another type of file was uploaded.\",\n \"enum\": - [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ]\n },\n \"container\": {\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - video file's container format.\"\n },\n \"creationTime\": {\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the uploaded video file was created. The value is specified in ISO - 8601 format. Currently, the following ISO 8601 formats are supported: - Date - only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \"\n },\n \"audioStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsAudioStream\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of audio streams contained in the uploaded - video file. Each item in the list contains detailed metadata about an audio - stream.\"\n },\n \"bitrateBps\": {\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ }\n },\n \"id\": \"VideoFileDetails\",\n \"description\": - \"Describes original video file properties, including technical details about - audio and video streams, but also metadata information like content length, - digitization time, or geotagging information.\"\n },\n \"ChannelLocalization\": - {\n \"id\": \"ChannelLocalization\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel's title.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - description.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Channel localization setting\"\n },\n \"InvideoBranding\": {\n \"properties\": - {\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The url of the uploaded image. Only used in apiary to api communication.\"\n - \ },\n \"timing\": {\n \"$ref\": \"InvideoTiming\",\n - \ \"description\": \"The temporal position within the video where - watermark will be displayed.\"\n },\n \"imageBytes\": {\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"type\": \"string\",\n \"format\": \"byte\"\n },\n - \ \"position\": {\n \"description\": \"The spatial position - within the video where the branding watermark will be displayed.\",\n \"$ref\": - \"InvideoPosition\"\n },\n \"targetChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The channel to which this branding - links. If not present it defaults to the current channel.\"\n }\n },\n - \ \"description\": \"LINT.IfChange Describes an invideo branding.\",\n - \ \"type\": \"object\",\n \"id\": \"InvideoBranding\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"properties\": {\n \"associatedMembershipGiftingMessageId\": - {\n \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n - \ },\n \"gifterChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the user that made the membership gifting - purchase. This matches the `snippet.authorChannelId` of the associated membership - gifting message.\"\n },\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level at which the - viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatGiftMembershipReceivedDetails\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"description\": \"Details about a resource which is being promoted.\",\n - \ \"id\": \"ActivityContentDetailsPromotedItem\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"ctaType\": {\n \"type\": \"string\",\n - \ \"description\": \"The type of call-to-action, a message to the - user indicating action that can be taken.\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"destinationUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should direct the user to, if the user chooses to visit the advertiser's - website.\"\n },\n \"clickTrackingUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user clicked through - on this promoted item.\",\n \"type\": \"string\"\n },\n \"adTag\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should fetch to request a promoted item.\"\n },\n \"impressionUrl\": - {\n \"description\": \"The list of impression URLs. The client should - ping all of these URLs to indicate that the user was shown this promoted item.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"customCtaButtonText\": {\n - \ \"description\": \"The custom call-to-action button text. If specified, - it will override the default button text for the cta_type.\",\n \"type\": - \"string\"\n },\n \"creativeViewUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\",\n \"type\": \"string\"\n },\n \"descriptionText\": - {\n \"type\": \"string\",\n \"description\": \"The text - description to accompany the promoted item.\"\n },\n \"forecastingUrl\": - {\n \"description\": \"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.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the promoted video.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveChatMessageAuthorDetails\": {\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The channel's display name.\"\n },\n \"profileImageUrl\": - {\n \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"isChatOwner\": {\n \"description\": - \"Whether the author is the owner of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"isChatSponsor\": {\n \"description\": - \"Whether the author is a sponsor of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"isChatModerator\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a moderator - of the live chat.\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"isVerified\": {\n \"description\": \"Whether the author's - identity has been verified by YouTube.\",\n \"type\": \"boolean\"\n - \ },\n \"channelUrl\": {\n \"description\": \"The channel's - URL.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatMessageAuthorDetails\"\n },\n \"VideoAbuseReport\": - {\n \"type\": \"object\",\n \"properties\": {\n \"language\": - {\n \"description\": \"The language that the content was viewed in.\",\n - \ \"type\": \"string\"\n },\n \"secondaryReasonId\": - {\n \"description\": \"The specific, or secondary, reason that this - content is abusive (if available). The value is an abuse report reason ID - that is a valid secondary reason for the primary reason.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n },\n \"comments\": {\n \"description\": - \"Additional comments regarding the abuse report.\",\n \"type\": - \"string\"\n },\n \"reasonId\": {\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoAbuseReport\"\n },\n \"ChannelSectionTargeting\": - {\n \"description\": \"ChannelSection targeting setting.\",\n \"properties\": - {\n \"countries\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The country the channel section is targeting.\"\n },\n \"languages\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The language the channel section is targeting.\",\n - \ \"type\": \"array\"\n },\n \"regions\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The region the channel section is targeting.\",\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"ChannelSectionTargeting\",\n \"type\": - \"object\"\n },\n \"ChannelConversionPing\": {\n \"properties\": - {\n \"conversionUrl\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"context\": {\n \"description\": \"Defines - the context of the ping.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ]\n }\n },\n \"description\": - \"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.\",\n \"id\": \"ChannelConversionPing\",\n \"type\": \"object\"\n - \ },\n \"InvideoTiming\": {\n \"type\": \"object\",\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\",\n \"properties\": - {\n \"offsetMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"Defines the time at which the promotion - will appear. Depending on the value of type the value of the offsetMs field - will represent a time offset from the start or from the end of the video, - expressed in milliseconds.\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"Describes a timing type. If the - value is offsetFromStart, then the offsetMs field represents an offset from - the start of the video. If the value is offsetFromEnd, then the offsetMs field - represents an offset from the end of the video.\",\n \"enum\": [\n - \ \"offsetFromStart\",\n \"offsetFromEnd\"\n ]\n - \ },\n \"durationMs\": {\n \"description\": \"Defines - the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"InvideoTiming\"\n - \ },\n \"VideoStatus\": {\n \"type\": \"object\",\n \"id\": - \"VideoStatus\",\n \"properties\": {\n \"license\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"uploadStatus\": {\n \"description\": - \"The status of the uploaded video.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ],\n \"enumDescriptions\": [\n \"Video has been - uploaded but not processed yet.\",\n \"Video has been successfully - processed.\",\n \"Processing has failed. See FailureReason.\",\n - \ \"Video has been rejected. See RejectionReason.\",\n \"Video - has been deleted.\"\n ]\n },\n \"rejectionReason\": - {\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"description\": \"This value explains why YouTube - rejected an uploaded video. This property is only present if the uploadStatus - property indicates that the upload was rejected.\",\n \"type\": \"string\"\n - \ },\n \"embeddable\": {\n \"description\": \"This value - indicates if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"failureReason\": - {\n \"type\": \"string\",\n \"description\": \"This value - explains why a video failed to upload. This property is only present if the - uploadStatus property indicates that the upload failed.\",\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ],\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ]\n },\n - \ \"publishAt\": {\n \"description\": \"The date and time when - the video is scheduled to publish. It can be set only if the privacy status - of the video is private..\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"publicStatsViewable\": {\n \"description\": - \"This value indicates if the extended video statistics on the watch page - can be viewed by everyone. Note that the view count, likes, etc will still - be visible if this is disabled. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n },\n \"madeForKids\": {\n - \ \"type\": \"boolean\"\n },\n \"privacyStatus\": {\n - \ \"type\": \"string\",\n \"description\": \"The video's - privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"public\",\n \"unlisted\",\n \"private\"\n - \ ]\n },\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\"\n }\n },\n \"description\": \"Basic details about - a video category, such as its localized title. Next Id: 18\"\n },\n \"LiveChatMessage\": - {\n \"properties\": {\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatMessage\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"authorDetails\": {\n \"description\": \"The - authorDetails object contains basic details about the user that posted this - message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n }\n - \ },\n \"id\": \"LiveChatMessage\",\n \"description\": \"A *liveChatMessage* - resource represents a chat message in a YouTube Live Chat.\",\n \"type\": - \"object\"\n },\n \"ChannelBannerResource\": {\n \"id\": \"ChannelBannerResource\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"url\": {\n - \ \"description\": \"The URL of this banner image.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A channel banner returned as - the response to a channel_banner.insert call.\"\n },\n \"PageInfo\": - {\n \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\",\n \"id\": \"PageInfo\",\n \"properties\": {\n \"totalResults\": - {\n \"description\": \"The total number of results in the result - set.\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ },\n \"resultsPerPage\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"description\": \"The number - of results included in the API response.\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoSnippet\": {\n \"description\": \"Basic - details about a video, including title, description, uploader, thumbnails - and category.\",\n \"properties\": {\n \"defaultAudioLanguage\": - {\n \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"tags\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of keyword tags associated with the video. Tags may contain spaces.\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the videos's default snippet.\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the video was uploaded.\",\n - \ \"format\": \"date-time\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that the video was uploaded to.\"\n },\n \"description\": - {\n \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - video category associated with the video.\"\n },\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the video belongs to.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"localized\": - {\n \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\",\n \"$ref\": \"VideoLocalization\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"VideoSnippet\"\n },\n \"LiveBroadcastStatistics\": - {\n \"id\": \"LiveBroadcastStatistics\",\n \"description\": \"Statistics - about the live broadcast. These represent a snapshot of the values at the - time of the request. Statistics are only returned for live broadcasts.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"totalChatCount\": - {\n \"description\": \"The total number of live chat messages currently - on the broadcast. The property and its value will be present if the broadcast - is public, has the live chat feature enabled, and has at least one message. - Note that this field will not be filled after the broadcast ends. So this - property would not identify the number of chat messages for an archived video - of a completed live broadcast.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"concurrentViewers\": {\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"LiveBroadcastStatus\": {\n \"id\": \"LiveBroadcastStatus\",\n \"type\": - \"object\",\n \"description\": \"Live broadcast state.\",\n \"properties\": - {\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"madeForKids\": - {\n \"description\": \"Whether the broadcast is made for kids or - not, decided by YouTube instead of the creator. This field is read only.\",\n - \ \"type\": \"boolean\"\n },\n \"lifeCycleStatus\": - {\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's status. The status can be updated - using the API's liveBroadcasts.transition method.\"\n },\n \"recordingStatus\": - {\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"description\": \"The broadcast's recording status.\",\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"The recording has not yet been started.\",\n \"The - recording is currently on.\",\n \"The recording is completed, and - cannot be started again.\"\n ],\n \"type\": \"string\"\n - \ },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"The broadcast's - privacy status. Note that the broadcast represents exactly one YouTube video, - so the privacy settings are identical to those supported for videos. In addition, - you can set this field by modifying the broadcast resource or by setting the - privacyStatus field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"liveBroadcastPriority\": - {\n \"type\": \"string\",\n \"description\": \"Priority - of the live broadcast event (internal state).\",\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"enum\": - [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ]\n }\n }\n - \ },\n \"PlaylistPlayer\": {\n \"type\": \"object\",\n \"properties\": - {\n \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"PlaylistPlayer\"\n },\n - \ \"ThumbnailDetails\": {\n \"type\": \"object\",\n \"description\": - \"Internal representation of thumbnails for a YouTube resource.\",\n \"properties\": - {\n \"high\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The high quality image for this resource.\"\n },\n \"maxres\": - {\n \"description\": \"The maximum resolution quality image for this - resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"standard\": - {\n \"description\": \"The standard quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"medium\": {\n \"description\": - \"The medium quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"default\": {\n \"description\": \"The default - image for this resource.\",\n \"$ref\": \"Thumbnail\"\n }\n - \ },\n \"id\": \"ThumbnailDetails\"\n },\n \"MembershipsDetails\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsDetails\",\n \"properties\": - {\n \"membershipsDuration\": {\n \"$ref\": \"MembershipsDuration\",\n - \ \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\"\n },\n \"membershipsDurationAtLevels\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"MembershipsDurationAtLevel\"\n },\n \"description\": \"Data - about memberships duration on particular pricing levels.\"\n },\n \"accessibleLevels\": - {\n \"description\": \"Ids of all levels that the user has access - to. This includes the currently active level and all other levels that are - included because of a higher purchase.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"highestAccessibleLevel\": - {\n \"description\": \"Id of the highest level that the user has - access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"highestAccessibleLevelDisplayName\": {\n \"description\": - \"Display name for the highest level that the user has access to at the moment.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"PlaylistListResponse\": - {\n \"id\": \"PlaylistListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Playlist\"\n },\n \"description\": \"A list of playlists - that match the request criteria\",\n \"type\": \"array\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#playlistListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n }\n }\n },\n \"ContentRating\": {\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\",\n \"id\": \"ContentRating\",\n \"properties\": - {\n \"ytRating\": {\n \"description\": \"A rating that YouTube - uses to identify age-restricted content.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ]\n },\n \"agcomRating\": {\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\",\n \"type\": \"string\",\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ]\n },\n \"mccaaRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n - \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n - \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n - \ \"mccaa18\",\n \"mccaaUnrated\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ]\n },\n - \ \"csaRating\": {\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ],\n \"description\": \"The video's rating from France's - Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"ecbmctRating\": {\n \"enum\": [\n - \ \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Rating system in Turkey - Evaluation and Classification - Board of the Ministry of Culture and Tourism\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ]\n },\n \"nmcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ],\n - \ \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The National Media Council ratings system for - United Arab Emirates.\"\n },\n \"smsaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"enum\": [\n - \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\"\n - \ },\n \"mccypRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Danish - Film Institute's (Det Danske Filminstitut) Media Council for Children and - Young People.\",\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ]\n },\n - \ \"menaMpaaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ],\n \"description\": \"The rating system for MENA countries, - a clone of MPAA. It is needed to prevent titles go live w/o additional QC - check, since some of them can be inappropriate for the countries at all. See - b/33408548 for more details.\",\n \"type\": \"string\",\n \"enum\": - [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n - \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n - \ ]\n },\n \"grfilmRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating in Greece.\",\n - \ \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n - \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n - \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n - \ \"grfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ]\n },\n \"fpbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\"\n },\n - \ \"moctwRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P\",\n \"PG\",\n \"R\",\n - \ \"\",\n \"R-12\",\n \"R-15\"\n ],\n - \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"description\": \"The video's rating from Taiwan's - Ministry of Culture (\u6587\u5316\u90E8).\",\n \"type\": \"string\"\n - \ },\n \"rtcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ],\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\"\n },\n \"mibacRating\": {\n \"enum\": - [\n \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n - \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n - \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Ministero - dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"skfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P2\",\n \"P5\",\n \"P8\",\n - \ \"\"\n ],\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in Slovakia.\"\n - \ },\n \"mpaatRating\": {\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ],\n \"description\": - \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GB\",\n \"RB\"\n ]\n },\n \"kmrbRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ]\n },\n \"mcstRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n - \ \"description\": \"The video's rating system for Vietnam - MCST\",\n - \ \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ]\n },\n \"rcnofRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n - \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n - \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Hungarian - Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\"\n - \ },\n \"resorteviolenciaRating\": {\n \"enum\": [\n - \ \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Venezuela.\",\n \"type\": \"string\"\n },\n \"cccRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ]\n },\n - \ \"kfcbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"GE\",\n \"PG\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"enum\": - [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ]\n },\n \"rteRating\": {\n \"enum\": [\n - \ \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"description\": \"The video's rating from Ireland's - Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ]\n },\n \"fskRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"FSK - 0\",\n \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"description\": \"The - video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.\"\n - \ },\n \"mtrcbRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n - \ \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\"\n },\n \"cncRating\": {\n \"description\": - \"Rating system in France - Commission de classification cinematographique\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"E\",\n \"interdiction\",\n \"\"\n - \ ],\n \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ]\n },\n \"chfilmRating\": {\n \"description\": - \"The video's rating in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"nbcRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\",\n - \ \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ]\n },\n \"bfvcRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from Thailand's - Board of Film and Video Censors.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"E\",\n \"13\",\n \"15\",\n - \ \"18\",\n \"20\",\n \"B\",\n \"\"\n - \ ],\n \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ]\n },\n \"acbRating\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ]\n },\n \"czfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in the Czech - Republic.\",\n \"type\": \"string\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ]\n },\n - \ \"djctqRatingReasons\": {\n \"type\": \"array\",\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n - \ \"items\": {\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"nfvcbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Nigeria's National Film and Video Censors Board.\",\n \"type\": - \"string\",\n \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ]\n },\n \"icaaRating\": - {\n \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"description\": \"The video's Instituto - de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n - \ \"type\": \"string\"\n },\n \"russiaRating\": {\n - \ \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's National - Film Registry of the Russian Federation (MKRF - Russia) rating.\"\n },\n - \ \"cbfcRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\",\n - \ \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n - \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n - \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n - \ \"cbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ]\n },\n \"eefilmRating\": - {\n \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n - \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n - \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n - \ \"eefilmK16\",\n \"eefilmUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Estonia.\"\n },\n \"cscfRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\"\n },\n \"mpaaRating\": {\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"enum\": - [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"oflcRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"oflcUnspecified\",\n - \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n - \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n - \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n - \ \"oflcRp16\",\n \"oflcRp18\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"description\": \"The video's Office of Film and - Literature Classification (OFLC - New Zealand) rating.\"\n },\n \"pefilmRating\": - {\n \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n - \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n - \ \"pefilmUnrated\"\n ],\n \"description\": \"The - video's rating in Peru.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ]\n },\n \"ilfilmRating\": - {\n \"description\": \"The video's rating in Israel.\",\n \"enum\": - [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n - \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"catvRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"C\",\n - \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n - \ \"18+\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"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.\",\n \"enum\": - [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ]\n },\n \"mdaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mdaUnspecified\",\n - \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n - \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n - \ \"mdaUnrated\"\n ],\n \"description\": \"The - video's rating from Singapore's Media Development Authority (MDA) and, specifically, - it's Board of Film Censors (BFC).\"\n },\n \"nbcplRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"description\": \"The - video's rating in Poland.\"\n },\n \"tvpgRating\": {\n \"description\": - \"The video's TV Parental Guidelines (TVPG) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ],\n \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n - \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n - \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ]\n },\n \"fpbRatingReasons\": - {\n \"type\": \"array\",\n \"description\": \"Reasons that - explain why the video received its FPB (South Africa) rating.\",\n \"items\": - {\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n - \ \"cicfRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ],\n \"description\": \"The - video's rating from the Commission de Contr\xF4le des Films (Belgium).\"\n - \ },\n \"medietilsynetRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"6\",\n \"7\",\n - \ \"9\",\n \"11\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"description\": \"The video's rating from Medietilsynet, the Norwegian - Media Authority.\",\n \"type\": \"string\"\n },\n \"egfilmRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GN\",\n \"18\",\n \"BN\",\n \"\"\n - \ ],\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"description\": \"The - video's rating in Egypt.\"\n },\n \"bmukkRating\": {\n \"enum\": - [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n \"bmukk6\",\n - \ \"bmukk8\",\n \"bmukk10\",\n \"bmukk12\",\n - \ \"bmukk14\",\n \"bmukk16\",\n \"bmukkUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Austrian Board of - Media Classification (Bundesministerium f\xFCr Unterricht, Kunst und Kultur).\",\n - \ \"type\": \"string\"\n },\n \"smaisRating\": {\n \"description\": - \"The video's rating in Iceland.\",\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"eirinRating\": - {\n \"description\": \"The video's Eirin (\u6620\u502B) rating. Eirin - is the Japanese rating system.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG-12\",\n \"R15+\",\n \"R18+\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ]\n },\n \"kijkwijzerRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's NICAM/Kijkwijzer rating - from the Nederlands Instituut voor de Classificatie van Audiovisuele Media - (Netherlands).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AL\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ]\n },\n \"nkclvRating\": {\n \"description\": - \"The video's rating from the Nacion\xE3lais Kino centrs (National Film Centre - of Latvia).\",\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"lsfRating\": {\n \"description\": \"The video's rating - from Indonesia's Lembaga Sensor Film.\",\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"enum\": [\n - \ \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"fcoRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Hong Kong's Office for Film, Newspaper and Article Administration.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"I\",\n - \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n - \ \"\"\n ],\n \"enum\": [\n \"fcoUnspecified\",\n - \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n - \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n - \ ]\n },\n \"bbfcRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's British Board of Film Classification - (BBFC) rating.\",\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ]\n },\n \"mocRating\": {\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ],\n \"description\": \"The video's Ministerio de Cultura - (Colombia) rating.\",\n \"type\": \"string\"\n },\n \"cceRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"4\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\",\n \"14\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Portugal's Comiss\xE3o - de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ]\n },\n \"anatelRating\": - {\n \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n - \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n - \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n - \ \"anatelUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Anatel (Asociaci\xF3n Nacional de - Televisi\xF3n) rating for Chilean television.\",\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ]\n },\n \"ifcoRating\": {\n \"enum\": - [\n \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"description\": \"The - video's Irish Film Classification Office (IFCO - Ireland) rating. See the - IFCO website for more information.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"djctqRating\": {\n \"description\": \"The video's - Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos - (DJCQT - Brazil) rating.\",\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"mekuRating\": - {\n \"description\": \"The video's rating from Finland's Kansallinen - Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n \"type\": - \"string\",\n \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"fcbmRating\": {\n \"description\": \"The video's - rating from Malaysia's Film Censorship Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"enum\": - [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"cnaRating\": {\n \"description\": \"The video's - rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"enum\": - [\n \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n - \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"fmocRating\": {\n \"description\": - \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ]\n },\n \"incaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's INCAA (Instituto Nacional de Cine - y Artes Audiovisuales - Argentina) rating.\",\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ]\n },\n \"nfrcRating\": {\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"nfrcUnspecified\",\n \"nfrcA\",\n - \ \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n - \ \"nfrcUnrated\"\n ]\n },\n \"chvrsRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Canadian Home Video Rating System (CHVRS) rating.\",\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ]\n },\n \"catvfrRating\": {\n \"description\": - \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ChannelContentDetails\": - {\n \"type\": \"object\",\n \"description\": \"Details about the - content of a channel.\",\n \"id\": \"ChannelContentDetails\",\n \"properties\": - {\n \"relatedPlaylists\": {\n \"properties\": {\n \"uploads\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s uploaded videos. Use the videos.insert method to upload new videos - and the videos.delete method to delete previously uploaded videos.\",\n \"type\": - \"string\"\n },\n \"favorites\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"watchLater\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch later playlist. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"likes\": {\n \"description\": \"The - ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n },\n \"watchHistory\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s watch history. Use the playlistItems.insert and - playlistItems.delete to add or remove items from that list.\"\n }\n - \ },\n \"type\": \"object\"\n }\n }\n },\n - \ \"LiveStreamHealthStatus\": {\n \"id\": \"LiveStreamHealthStatus\",\n - \ \"properties\": {\n \"status\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ],\n \"description\": \"The status - code of this stream\"\n },\n \"lastUpdateTimeSeconds\": {\n - \ \"format\": \"uint64\",\n \"description\": \"The last time - this status was updated (in seconds)\",\n \"type\": \"string\"\n - \ },\n \"configurationIssues\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"description\": \"The configurations issues on this - stream\"\n }\n },\n \"type\": \"object\"\n },\n \"GeoPoint\": - {\n \"description\": \"Geographical coordinates of a point, in WGS84.\",\n - \ \"properties\": {\n \"longitude\": {\n \"type\": \"number\",\n - \ \"description\": \"Longitude in degrees.\",\n \"format\": - \"double\"\n },\n \"altitude\": {\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n },\n \"latitude\": - {\n \"description\": \"Latitude in degrees.\",\n \"format\": - \"double\",\n \"type\": \"number\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"GeoPoint\"\n },\n \"AccessPolicy\": {\n - \ \"id\": \"AccessPolicy\",\n \"type\": \"object\",\n \"description\": - \"Rights management policy for YouTube resources.\",\n \"properties\": - {\n \"allowed\": {\n \"description\": \"The value of allowed - indicates whether the access to the policy is allowed or denied by default.\",\n - \ \"type\": \"boolean\"\n },\n \"exception\": {\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n }\n }\n },\n - \ \"LiveStreamConfigurationIssue\": {\n \"type\": \"object\",\n \"id\": - \"LiveStreamConfigurationIssue\",\n \"properties\": {\n \"reason\": - {\n \"description\": \"The short-form reason for this issue.\",\n - \ \"type\": \"string\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The kind of error happening.\",\n \"type\": \"string\",\n \"enum\": - [\n \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ]\n },\n - \ \"severity\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"info\",\n \"warning\",\n \"error\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"How severe this - issue is to the stream.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The long-form description of the - issue and how to resolve it.\"\n }\n }\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"description\": \"Basic details about a video category, such as - its localized title.\",\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label belonging to this abuse report - reason.\"\n },\n \"secondaryReasons\": {\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The secondary - reasons associated with this reason, if any are available. (There might be - 0 or more.)\"\n }\n },\n \"type\": \"object\"\n },\n \"SearchResult\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#searchResult\\\".\",\n \"default\": - \"youtube#searchResult\"\n },\n \"snippet\": {\n \"$ref\": - \"SearchResultSnippet\",\n \"description\": \"The snippet object - contains basic details about a search result, such as its title or description. - For example, if the search result is a video, then the title will be the video's - title and the description will be the video's description.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\",\n \"$ref\": \"ResourceId\"\n - \ }\n },\n \"id\": \"SearchResult\",\n \"type\": \"object\",\n - \ \"description\": \"A search result contains information about a YouTube - video, channel, or playlist that matches the search parameters specified in - an API request. While a search result points to a uniquely identifiable resource, - like a video, it does not have its own persistent data.\"\n },\n \"LiveChatModeratorSnippet\": - {\n \"properties\": {\n \"moderatorDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - moderator.\"\n },\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the live chat this moderator can act - on.\"\n }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\"\n - \ },\n \"Thumbnail\": {\n \"id\": \"Thumbnail\",\n \"properties\": - {\n \"width\": {\n \"description\": \"(Optional) Width of - the thumbnail image.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The thumbnail image's URL.\"\n },\n \"height\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"(Optional) Height of the thumbnail image.\"\n }\n },\n \"description\": - \"A thumbnail is an image representing a YouTube resource.\",\n \"type\": - \"object\"\n },\n \"VideoAgeGating\": {\n \"properties\": {\n \"restricted\": - {\n \"type\": \"boolean\",\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\"\n },\n - \ \"videoGameRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"description\": - \"Video game rating, if any.\"\n },\n \"alcoholContent\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Indicates whether - or not the video has alcoholic beverage content. Only users of legal purchasing - age in a particular country, as identified by ICAP, can view the content.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAgeGating\"\n - \ },\n \"LanguageTag\": {\n \"id\": \"LanguageTag\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"MembershipsDuration\": {\n \"type\": - \"object\",\n \"properties\": {\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The cumulative time the user has been a member across all levels in complete - months (the time is rounded down to the nearest integer).\"\n },\n - \ \"memberSince\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the user became a continuous member across all levels.\"\n - \ }\n },\n \"id\": \"MembershipsDuration\"\n },\n \"PropertyValue\": - {\n \"description\": \"A pair Property / Value.\",\n \"properties\": - {\n \"property\": {\n \"description\": \"A property.\",\n - \ \"type\": \"string\"\n },\n \"value\": {\n \"type\": - \"string\",\n \"description\": \"The property's value.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"PropertyValue\"\n },\n - \ \"MembershipsLevelSnippet\": {\n \"properties\": {\n \"creatorChannelId\": - {\n \"description\": \"The id of the channel that's offering channel - memberships.\",\n \"type\": \"string\"\n },\n \"levelDetails\": - {\n \"description\": \"Details about the pricing level.\",\n \"$ref\": - \"LevelDetails\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"MembershipsLevelSnippet\"\n },\n \"ThirdPartyLink\": {\n \"id\": - \"ThirdPartyLink\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n },\n \"linkingToken\": - {\n \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\",\n \"type\": - \"string\"\n },\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n - \ \"description\": \"The status object contains information about - the status of the link.\"\n },\n \"kind\": {\n \"default\": - \"youtube#thirdPartyLink\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the third- party account link.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\"\n },\n \"ActivityContentDetailsComment\": {\n \"type\": - \"object\",\n \"description\": \"Information about a resource that received - a comment.\",\n \"id\": \"ActivityContentDetailsComment\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with the comment.\"\n }\n }\n },\n \"PlaylistStatus\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistStatus\",\n \"properties\": - {\n \"privacyStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"The playlist's - privacy status.\"\n }\n }\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonListResponse\",\n - \ \"properties\": {\n \"items\": {\n \"description\": - \"A list of valid abuse reasons that are used with `video.ReportAbuse`.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n }\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The `visitorId` identifies the visitor.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n - \ }\n }\n },\n \"LiveChatTextMessageDetails\": {\n \"properties\": - {\n \"messageText\": {\n \"description\": \"The user's message.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatTextMessageDetails\",\n - \ \"type\": \"object\"\n },\n \"Comment\": {\n \"id\": \"Comment\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#comment\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#comment\\\".\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment.\"\n },\n \"snippet\": - {\n \"$ref\": \"CommentSnippet\",\n \"description\": \"The - snippet object contains basic details about the comment.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"A *comment* represents - a single YouTube comment.\"\n },\n \"VideoTopicDetails\": {\n \"properties\": - {\n \"topicIds\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n },\n \"relevantTopicIds\": {\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"topicCategories\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\",\n \"type\": \"array\"\n }\n },\n \"id\": - \"VideoTopicDetails\",\n \"type\": \"object\",\n \"description\": - \"Freebase topic information related to the video.\"\n },\n \"LiveBroadcast\": - {\n \"type\": \"object\",\n \"description\": \"A *liveBroadcast* - resource represents an event that will be streamed, via live video, on YouTube.\",\n - \ \"properties\": {\n \"status\": {\n \"description\": - \"The status object contains information about the event's status.\",\n \"$ref\": - \"LiveBroadcastStatus\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveBroadcast\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object contains info about the event's current stats. These include concurrent - viewers and total chat count. Statistics can change (in either direction) - during the lifetime of an event. Statistics are only returned while the event - is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"contentDetails\": {\n - \ \"$ref\": \"LiveBroadcastContentDetails\",\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the event, including its - title, description, start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the broadcast.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveBroadcast\"\n },\n \"TokenPagination\": {\n \"type\": \"object\",\n - \ \"description\": \"Stub token pagination template to suppress results.\",\n - \ \"id\": \"TokenPagination\",\n \"properties\": {}\n },\n \"MemberListResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Member\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of members that match the request criteria.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#memberListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#memberListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"MemberListResponse\"\n - \ },\n \"ChannelSectionContentDetails\": {\n \"description\": \"Details - about a channelsection, including playlists and channels.\",\n \"properties\": - {\n \"playlists\": {\n \"description\": \"The playlist ids - for type single_playlist and multiple_playlists. For singlePlaylist, only - one playlistId is allowed.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"channels\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The channel ids - for type multiple_channels.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelSectionContentDetails\"\n },\n \"ActivityContentDetails\": - {\n \"id\": \"ActivityContentDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"subscription\": {\n \"description\": - \"The subscription object contains information about a channel that a user - subscribed to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"social\": - {\n \"description\": \"The social object contains details about a - social network post. This property is only present if the snippet.type is - social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n },\n - \ \"upload\": {\n \"$ref\": \"ActivityContentDetailsUpload\",\n - \ \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\"\n - \ },\n \"comment\": {\n \"description\": \"The comment - object contains information about a resource that received a comment. This - property is only present if the snippet.type is comment.\",\n \"$ref\": - \"ActivityContentDetailsComment\"\n },\n \"favorite\": {\n \"$ref\": - \"ActivityContentDetailsFavorite\",\n \"description\": \"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.\"\n },\n - \ \"promotedItem\": {\n \"description\": \"The promotedItem - object contains details about a resource which is being promoted. This property - is only present if the snippet.type is promotedItem.\",\n \"$ref\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"playlistItem\": - {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"The playlistItem object contains information about a new playlist item. - This property is only present if the snippet.type is playlistItem.\"\n },\n - \ \"like\": {\n \"$ref\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"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.\"\n },\n \"recommendation\": {\n - \ \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\",\n \"$ref\": \"ActivityContentDetailsRecommendation\"\n - \ },\n \"channelItem\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsChannelItem\"\n },\n \"bulletin\": {\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n }\n - \ },\n \"description\": \"Details about the content of an activity: - the video that was shared, the channel that was subscribed to, etc.\"\n },\n - \ \"WatchSettings\": {\n \"description\": \"Branding properties for - the watch. All deprecated.\",\n \"type\": \"object\",\n \"id\": - \"WatchSettings\",\n \"properties\": {\n \"backgroundColor\": - {\n \"description\": \"The text color for the video watch page's - branded area.\",\n \"type\": \"string\"\n },\n \"textColor\": - {\n \"description\": \"The background color for the video watch page's - branded area.\",\n \"type\": \"string\"\n },\n \"featuredPlaylistId\": - {\n \"type\": \"string\",\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\"\n - \ }\n }\n },\n \"ChannelBrandingSettings\": {\n \"id\": - \"ChannelBrandingSettings\",\n \"description\": \"Branding properties - of a YouTube channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"watch\": {\n \"$ref\": \"WatchSettings\",\n \"description\": - \"Branding properties for the watch page.\"\n },\n \"image\": - {\n \"$ref\": \"ImageSettings\",\n \"description\": \"Branding - properties for branding images.\"\n },\n \"hints\": {\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n },\n \"type\": - \"array\",\n \"description\": \"Additional experimental branding - properties.\"\n },\n \"channel\": {\n \"description\": - \"Branding properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n - \ }\n }\n },\n \"ChannelTopicDetails\": {\n \"description\": - \"Freebase topic information related to the channel.\",\n \"id\": \"ChannelTopicDetails\",\n - \ \"properties\": {\n \"topicIds\": {\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"topicCategories\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ChannelProfileDetails\": - {\n \"properties\": {\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"channelUrl\": {\n \"description\": \"The channel's URL.\",\n - \ \"type\": \"string\"\n },\n \"profileImageUrl\": {\n - \ \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelProfileDetails\",\n \"type\": \"object\"\n - \ },\n \"SubscriptionSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic details about a subscription, including title, description and thumbnails - of the subscribed item.\",\n \"id\": \"SubscriptionSnippet\",\n \"properties\": - {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The subscription's details.\"\n },\n \"resourceId\": - {\n \"description\": \"The id object contains information about the - channel that the user subscribed to.\",\n \"$ref\": \"ResourceId\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n }\n },\n \"title\": {\n \"description\": - \"The subscription's title.\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the subscription was created.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\",\n - \ \"type\": \"string\"\n },\n \"channelTitle\": {\n - \ \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the subscription belongs to.\"\n }\n }\n - \ },\n \"MonitorStreamInfo\": {\n \"id\": \"MonitorStreamInfo\",\n - \ \"description\": \"Settings and Info of the monitor stream\",\n \"properties\": - {\n \"broadcastStreamDelayMs\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"If you have set the enableMonitorStream property to true, then this property - determines the length of the live broadcast delay.\"\n },\n \"enableMonitorStream\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"boolean\",\n \"description\": - \"This value determines whether the monitor stream is enabled for the broadcast. - If the monitor stream is enabled, then YouTube will broadcast the event content - on a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\"\n },\n - \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageRetractedDetails\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"PlaylistItemListResponse\": - {\n \"id\": \"PlaylistItemListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"description\": - \"A list of playlist items that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n - \ }\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"visitorId\": {\n - \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n }\n - \ }\n },\n \"Member\": {\n \"description\": \"A *member* resource - represents a member for a YouTube channel. A member provides recurring monetary - support to a creator and receives special benefits.\",\n \"type\": \"object\",\n - \ \"id\": \"Member\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#member\"\n - \ },\n \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the member.\"\n }\n }\n },\n \"LiveStreamSnippet\": {\n - \ \"properties\": {\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\",\n \"type\": \"string\"\n },\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n },\n \"title\": {\n \"description\": - \"The stream's title. The value must be between 1 and 128 characters long.\",\n - \ \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The stream's description. The value - cannot be longer than 10000 characters.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the stream was created.\",\n \"format\": \"date-time\"\n - \ }\n },\n \"id\": \"LiveStreamSnippet\",\n \"type\": - \"object\"\n },\n \"CommentListResponse\": {\n \"id\": \"CommentListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"default\": \"youtube#commentListResponse\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Comment\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of comments that match the request criteria.\"\n }\n }\n - \ },\n \"SubscriptionContentDetails\": {\n \"description\": \"Details - about the content to witch a subscription refers.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"totalItemCount\": {\n \"type\": - \"integer\",\n \"description\": \"The approximate number of items - that the subscription points to.\",\n \"format\": \"uint32\"\n },\n - \ \"newItemCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The number of new items in the subscription since its content was last read.\",\n - \ \"type\": \"integer\"\n },\n \"activityType\": {\n - \ \"type\": \"string\",\n \"description\": \"The type of - activity this subscription is for (only uploads, everything).\",\n \"enum\": - [\n \"subscriptionActivityTypeUnspecified\",\n \"all\",\n - \ \"uploads\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"id\": \"SubscriptionContentDetails\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"type\": \"object\",\n \"description\": \"Details about a channel - bulletin post.\",\n \"id\": \"ActivityContentDetailsBulletin\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\"\n }\n - \ }\n },\n \"ChannelSectionLocalization\": {\n \"id\": \"ChannelSectionLocalization\",\n - \ \"description\": \"ChannelSection localization setting\",\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel - section's title.\"\n }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"type\": \"object\",\n \"description\": \"Information about - a new playlist item.\",\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"properties\": {\n \"playlistItemId\": {\n \"description\": - \"ID of the item within the playlist.\",\n \"type\": \"string\"\n - \ },\n \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"The value that YouTube uses to uniquely identify the playlist.\"\n },\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\"\n }\n }\n },\n \"ChannelSection\": {\n - \ \"type\": \"object\",\n \"id\": \"ChannelSection\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#channelSection\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains details about the channel section content, such as a list - of playlists or channels featured in the section.\",\n \"$ref\": - \"ChannelSectionContentDetails\"\n },\n \"targeting\": {\n \"$ref\": - \"ChannelSectionTargeting\",\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"localizations\": {\n - \ \"type\": \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"description\": \"Localizations - for different languages\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ }\n },\n \"LiveStreamStatus\": {\n \"description\": \"Brief - description of the live stream status.\",\n \"type\": \"object\",\n \"properties\": - {\n \"streamStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ]\n },\n \"healthStatus\": - {\n \"description\": \"The health status of the stream.\",\n \"$ref\": - \"LiveStreamHealthStatus\"\n }\n },\n \"id\": \"LiveStreamStatus\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"properties\": - {\n \"reason\": {\n \"description\": \"The reason that the - resource is recommended to the user.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ]\n },\n \"seedResourceId\": - {\n \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\",\n \"$ref\": - \"ResourceId\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Information that identifies the recommended - resource.\",\n \"id\": \"ActivityContentDetailsRecommendation\"\n },\n - \ \"SubscriptionListResponse\": {\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"default\": \"youtube#subscriptionListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of subscriptions that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"Subscription\"\n - \ }\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"SubscriptionListResponse\"\n - \ },\n \"VideoContentDetails\": {\n \"type\": \"object\",\n \"id\": - \"VideoContentDetails\",\n \"properties\": {\n \"dimension\": - {\n \"type\": \"string\",\n \"description\": \"The value - of dimension indicates whether the video is available in 3D or in 2D.\"\n - \ },\n \"contentRating\": {\n \"description\": \"Specifies - the ratings that the video received under various rating schemes.\",\n \"$ref\": - \"ContentRating\"\n },\n \"hasCustomThumbnail\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the video uploader - has provided a custom thumbnail image for the video. This property is only - visible to the video uploader.\"\n },\n \"regionRestriction\": - {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\"\n },\n - \ \"countryRestriction\": {\n \"description\": \"The countryRestriction - object contains information about the countries where a video is (or is not) - viewable.\",\n \"$ref\": \"AccessPolicy\"\n },\n \"definition\": - {\n \"enum\": [\n \"sd\",\n \"hd\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"description\": \"The value of - definition indicates whether the video is available in high definition or - only in standard definition.\"\n },\n \"projection\": {\n \"type\": - \"string\",\n \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"Specifies the projection format - of the video.\"\n },\n \"caption\": {\n \"type\": \"string\",\n - \ \"description\": \"The value of captions indicates whether the video - has captions or not.\",\n \"enum\": [\n \"true\",\n \"false\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"licensedContent\": {\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\",\n \"type\": \"boolean\"\n },\n \"duration\": - {\n \"description\": \"The length of the video. The tag value is - an ISO 8601 duration in the format PT#M#S, in which the letters PT indicate - that the value specifies a period of time, and the letters M and S refer to - length in minutes and seconds, respectively. The # characters preceding the - M and S letters are both integers that specify the number of minutes (or seconds) - of the video. For example, a value of PT15M51S indicates that the video is - 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Details about the content of a YouTube - Video.\"\n },\n \"VideoRating\": {\n \"description\": \"Basic details - about rating of a video.\",\n \"type\": \"object\",\n \"id\": \"VideoRating\",\n - \ \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n },\n \"rating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The entity - is liked.\",\n \"The entity is disliked.\"\n ],\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"description\": \"Rating of a video.\"\n }\n - \ }\n },\n \"ChannelSettings\": {\n \"type\": \"object\",\n - \ \"description\": \"Branding properties for the channel view.\",\n \"properties\": - {\n \"unsubscribedTrailer\": {\n \"description\": \"The trailer - of the channel, for users that are not subscribers.\",\n \"type\": - \"string\"\n },\n \"trackingAnalyticsAccountId\": {\n \"description\": - \"The ID for a Google Analytics account to track and measure traffic to the - channels.\",\n \"type\": \"string\"\n },\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"keywords\": - {\n \"type\": \"string\",\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"profileColor\": {\n - \ \"type\": \"string\",\n \"description\": \"A prominent - color that can be rendered on this channel page.\"\n },\n \"showBrowseView\": - {\n \"description\": \"Whether the tab to browse the videos should - be displayed.\",\n \"type\": \"boolean\"\n },\n \"moderateComments\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - user-submitted comments left on the channel page need to be approved by the - channel owner to be publicly visible.\"\n },\n \"featuredChannelsUrls\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The list of featured - channels.\"\n },\n \"featuredChannelsTitle\": {\n \"description\": - \"Title for the featured channels tab.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"description\": \"Specifies the - channel title.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"Specifies the channel description.\",\n \"type\": - \"string\"\n },\n \"country\": {\n \"type\": \"string\",\n - \ \"description\": \"The country of the channel.\"\n },\n \"defaultTab\": - {\n \"type\": \"string\",\n \"description\": \"Which content - tab users should see when viewing the channel.\"\n }\n },\n \"id\": - \"ChannelSettings\"\n },\n \"ActivityContentDetailsFavorite\": {\n \"description\": - \"Information about a video that was marked as a favorite video.\",\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsFavorite\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource that was marked as - a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n }\n },\n - \ \"PlaylistItemContentDetails\": {\n \"properties\": {\n \"startAt\": - {\n \"description\": \"The time, measured in seconds from the start - of the video, when the video should start playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) The default value is 0.\",\n \"type\": - \"string\"\n },\n \"endAt\": {\n \"description\": \"The - time, measured in seconds from the start of the video, when the video should - stop playing. (The playlist owner can specify the times when the video should - start and stop playing when the video is played in the context of the playlist.) - By default, assume that the video.endTime is the end of the video.\",\n \"type\": - \"string\"\n },\n \"note\": {\n \"type\": \"string\",\n - \ \"description\": \"A user-generated note for this item.\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify a video. To retrieve the video resource, set the id query - parameter to this value in your API request.\",\n \"type\": \"string\"\n - \ },\n \"videoPublishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the video was published to YouTube.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"PlaylistItemContentDetails\"\n },\n \"CommentThreadSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a comment thread.\",\n \"id\": \"CommentThreadSnippet\",\n \"properties\": - {\n \"isPublic\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the video the comments refer to, if - any. No video_id implies a channel discussion comment.\"\n },\n \"channelId\": - {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"totalReplyCount\": {\n \"format\": - \"uint32\",\n \"description\": \"The total number of replies (not - including the top level comment).\",\n \"type\": \"integer\"\n },\n - \ \"topLevelComment\": {\n \"$ref\": \"Comment\",\n \"description\": - \"The top level comment of this thread.\"\n },\n \"canReply\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n }\n }\n - \ },\n \"LiveBroadcastListResponse\": {\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveBroadcastListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"description\": - \"A list of broadcasts that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n - \ }\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatBan\": {\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatBan\"\n },\n - \ \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the ban.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatBan\",\n \"description\": \"A `__liveChatBan__` - resource represents a ban for a YouTube live chat.\"\n },\n \"ActivitySnippet\": - {\n \"id\": \"ActivitySnippet\",\n \"description\": \"Basic details - about an activity, including title, description, thumbnails, activity type - and group. Next ID: 12\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the resource primarily associated with the activity. @mutable youtube.activities.insert\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"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.\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of activity that the resource describes.\",\n - \ \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n - \ \"like\",\n \"favorite\",\n \"comment\",\n - \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n - \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ]\n },\n \"groupId\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel responsible for - this activity\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the video was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel associated with the activity.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the resource primarily associated with the activity.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"MembershipsLevelListResponse\": - {\n \"id\": \"MembershipsLevelListResponse\",\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"description\": - \"A list of pricing levels offered by a creator to the fans.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n - \ }\n }\n },\n \"type\": \"object\"\n },\n \"LiveStreamListResponse\": - {\n \"properties\": {\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"description\": \"A list of live - streams that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"LiveStream\"\n },\n \"type\": \"array\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveStreamListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LiveStreamListResponse\",\n \"type\": \"object\"\n },\n - \ \"VideoListResponse\": {\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Video\"\n },\n \"type\": \"array\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#videoListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n - \ }\n },\n \"id\": \"VideoListResponse\",\n \"type\": - \"object\"\n },\n \"InvideoPosition\": {\n \"properties\": {\n - \ \"cornerPosition\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"Describes in which corner of the - video the visual widget will appear.\",\n \"enum\": [\n \"topLeft\",\n - \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n - \ ]\n },\n \"type\": {\n \"description\": \"Defines - the position type.\",\n \"enumDescriptions\": [\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"corner\"\n - \ ]\n }\n },\n \"type\": \"object\",\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"id\": \"InvideoPosition\"\n },\n \"VideoCategory\": {\n \"description\": - \"A *videoCategory* resource identifies a category that has been or could - be associated with uploaded videos.\",\n \"id\": \"VideoCategory\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n },\n \"kind\": {\n \"default\": \"youtube#videoCategory\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategory\\\".\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video category.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsLike\": - {\n \"description\": \"Information about a resource that received a positive - (like) rating.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the rated resource.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsLike\"\n },\n - \ \"VideoCategoryListResponse\": {\n \"properties\": {\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"default\": \"youtube#videoCategoryListResponse\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoCategory\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n }\n },\n \"id\": - \"VideoCategoryListResponse\",\n \"type\": \"object\"\n },\n \"ChannelSectionSnippet\": - {\n \"properties\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The type of the - channel section.\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that published the channel - section.\",\n \"type\": \"string\"\n },\n \"style\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The style of - the channel section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"type\": \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized title, read-only.\",\n \"$ref\": \"ChannelSectionLocalization\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The channel section's title for multiple_playlists and multiple_channels.\"\n - \ },\n \"position\": {\n \"description\": \"The position - of the channel section in the channel.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel section's default - title and description.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\",\n \"id\": \"ChannelSectionSnippet\",\n - \ \"type\": \"object\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorListResponse\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of moderators that match the - request criteria.\",\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n - \ }\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n }\n - \ }\n },\n \"Channel\": {\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel.\"\n },\n \"topicDetails\": - {\n \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\",\n \"$ref\": - \"ChannelTopicDetails\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object encapsulates statistics for the channel.\",\n \"$ref\": - \"ChannelStatistics\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel, such as its - title, description, and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n - \ },\n \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n - \ \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\"\n - \ },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n },\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\"\n - \ },\n \"brandingSettings\": {\n \"description\": \"The - brandingSettings object encapsulates information about the branding of the - channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#channel\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n \"type\": - \"string\"\n },\n \"conversionPings\": {\n \"$ref\": - \"ChannelConversionPings\",\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ChannelContentDetails\",\n \"description\": \"The contentDetails - object encapsulates information about the channel's content.\"\n },\n - \ \"status\": {\n \"description\": \"The status object encapsulates - information about the privacy status of the channel.\",\n \"$ref\": - \"ChannelStatus\"\n },\n \"contentOwnerDetails\": {\n \"$ref\": - \"ChannelContentOwnerDetails\",\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\"\n }\n },\n \"description\": \"A *channel* - resource contains information about a YouTube channel.\",\n \"id\": \"Channel\",\n - \ \"type\": \"object\"\n },\n \"ChannelSectionListResponse\": {\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"items\": {\n \"description\": \"A list of ChannelSections - that match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ChannelSection\"\n }\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#channelSectionListResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelSectionListResponse\"\n },\n \"Playlist\": - {\n \"type\": \"object\",\n \"id\": \"Playlist\",\n \"description\": - \"A *playlist* resource represents a YouTube playlist. A playlist is a collection - of videos that can be viewed sequentially and shared with other users. A playlist - can contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#playlist\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the playlist, such as its title and description.\",\n - \ \"$ref\": \"PlaylistSnippet\"\n },\n \"status\": {\n - \ \"description\": \"The status object contains status information - for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n },\n - \ \"localizations\": {\n \"description\": \"Localizations for - different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"PlaylistLocalization\"\n },\n \"type\": \"object\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\"\n },\n - \ \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": - \"The player object contains information that you would use to play the playlist - in an embedded player.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information like video count.\",\n \"$ref\": - \"PlaylistContentDetails\"\n }\n }\n },\n \"ImageSettings\": - {\n \"properties\": {\n \"bannerTvMediumImageUrl\": {\n \"description\": - \"Banner image. TV size medium resolution (1280x720).\",\n \"type\": - \"string\"\n },\n \"bannerTabletImageUrl\": {\n \"description\": - \"Banner image. Tablet size (1707x283).\",\n \"type\": \"string\"\n - \ },\n \"bannerTabletHdImageUrl\": {\n \"description\": - \"Banner image. Tablet size high resolution (2276x377).\",\n \"type\": - \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size medium/high - resolution (960x263).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"backgroundImageUrl\": {\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\",\n \"type\": \"string\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size low resolution (1138x188).\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size low resolution (320x88).\"\n },\n \"bannerTvLowImageUrl\": - {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"bannerTvHighImageUrl\": - {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n - \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\",\n - \ \"$ref\": \"LocalizedProperty\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"trackingImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\"\n },\n \"bannerTvImageUrl\": - {\n \"description\": \"Banner image. TV size extra high resolution - (2120x1192).\",\n \"type\": \"string\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1280x360).\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 640px by 70px banner image - that appears below the video player in the default view of the video watch - page. The URL for the image that appears above the top-left corner of the - video player. This is a 25-pixel-high image with a flexible width that cannot - exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerImageUrl\": {\n \"description\": \"Banner image. - Desktop size (1060x175).\",\n \"type\": \"string\"\n },\n - \ \"bannerMobileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. Mobile size (640x175).\"\n }\n },\n \"description\": - \"Branding properties for images associated with the channel.\",\n \"type\": - \"object\",\n \"id\": \"ImageSettings\"\n },\n \"AbuseReport\": - {\n \"type\": \"object\",\n \"id\": \"AbuseReport\",\n \"properties\": - {\n \"subject\": {\n \"$ref\": \"Entity\"\n },\n \"description\": - {\n \"type\": \"string\"\n },\n \"abuseTypes\": {\n - \ \"items\": {\n \"$ref\": \"AbuseType\"\n },\n - \ \"type\": \"array\"\n },\n \"relatedEntities\": {\n - \ \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n - \ \"type\": \"array\"\n }\n }\n },\n \"SearchListResponse\": - {\n \"id\": \"SearchListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#searchListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"regionCode\": - {\n \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"Pagination information for token - pagination.\",\n \"items\": {\n \"$ref\": \"SearchResult\"\n - \ }\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n }\n }\n },\n \"SuperChatEventListResponse\": - {\n \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - Super Chat purchases that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n }\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#superChatEventListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"SuperChatEventListResponse\",\n - \ \"type\": \"object\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - amount of the fund.\"\n },\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the fund was made.\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatSuperStickerDetails\": - {\n \"id\": \"LiveChatSuperStickerDetails\",\n \"properties\": {\n - \ \"superStickerMetadata\": {\n \"description\": \"Information - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made.\",\n \"type\": \"string\"\n },\n - \ \"tier\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\"\n },\n - \ \"amountDisplayString\": {\n \"type\": \"string\",\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\"\n - \ },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"description\": \"The amount purchased by the user, in micros (1,750,000 - micros = 1.75).\",\n \"format\": \"uint64\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatSuperChatDetails\": {\n - \ \"properties\": {\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"userComment\": {\n \"description\": \"The comment - added by the user to this Super Chat event.\",\n \"type\": \"string\"\n - \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\"\n },\n \"tier\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n },\n \"amountMicros\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatSuperChatDetails\"\n - \ },\n \"LiveBroadcastSnippet\": {\n \"id\": \"LiveBroadcastSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic broadcast information.\",\n - \ \"properties\": {\n \"actualEndTime\": {\n \"description\": - \"The date and time that the broadcast actually ended. This information is - only available once the broadcast's state is complete.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for this broadcast.\",\n - \ \"type\": \"string\"\n },\n \"scheduledEndTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to end.\"\n },\n \"isDefaultBroadcast\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether this broadcast - is the default broadcast. Internal only.\"\n },\n \"actualStartTime\": - {\n \"description\": \"The date and time that the broadcast actually - started. This information is only available once the broadcast's state is - live.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The broadcast's title. Note that the broadcast represents exactly one YouTube - video. You can set this field by modifying the broadcast resource or by setting - the title field of the corresponding video resource.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the broadcast. For each nested object - in this object, the key is the name of the thumbnail image, and the value - is an object that contains other information about the thumbnail.\"\n },\n - \ \"description\": {\n \"description\": \"The broadcast's description. - As with the title, you can set this field by modifying the broadcast resource - or by setting the description field of the corresponding video resource.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that is publishing the broadcast.\"\n },\n \"scheduledStartTime\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the broadcast was added to YouTube's live broadcast schedule.\"\n - \ }\n }\n },\n \"LiveChatUserBannedMessageDetails\": {\n - \ \"id\": \"LiveChatUserBannedMessageDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"banType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"permanent\",\n \"temporary\"\n ],\n \"description\": - \"The type of ban.\",\n \"type\": \"string\"\n },\n \"banDurationSeconds\": - {\n \"description\": \"The duration of the ban. This property is - only present if the banType is temporary.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"bannedUserDetails\": - {\n \"description\": \"The details of the user that was banned.\",\n - \ \"$ref\": \"ChannelProfileDetails\"\n }\n }\n },\n - \ \"VideoCategorySnippet\": {\n \"properties\": {\n \"title\": - {\n \"description\": \"The video category's title.\",\n \"type\": - \"string\"\n },\n \"assignable\": {\n \"type\": \"boolean\"\n - \ },\n \"channelId\": {\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n - \ \"description\": \"The YouTube channel that created the video category.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoCategorySnippet\",\n \"description\": \"Basic details - about a video category, such as its localized title.\"\n },\n \"LiveStream\": - {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the stream.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\",\n - \ \"$ref\": \"LiveStreamSnippet\"\n },\n \"contentDetails\": - {\n \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\",\n \"$ref\": - \"LiveStreamContentDetails\"\n },\n \"status\": {\n \"$ref\": - \"LiveStreamStatus\",\n \"description\": \"The status object contains - information about live stream's status.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"cdn\": {\n \"$ref\": \"CdnSettings\",\n - \ \"description\": \"The cdn object defines the live stream's content - delivery network (CDN) settings. These settings provide details about the - manner in which you stream your content to YouTube.\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveStream\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveStream\\\".\"\n }\n },\n \"id\": - \"LiveStream\",\n \"description\": \"A live stream describes a live ingestion - point.\"\n },\n \"LiveStreamContentDetails\": {\n \"description\": - \"Detailed settings of a stream.\",\n \"id\": \"LiveStreamContentDetails\",\n - \ \"properties\": {\n \"isReusable\": {\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \",\n \"type\": \"boolean\"\n },\n \"closedCaptionsIngestionUrl\": - {\n \"description\": \"The ingestion URL where the closed captions - of this stream are sent.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"Cuepoint\": {\n \"type\": \"object\",\n - \ \"id\": \"Cuepoint\",\n \"properties\": {\n \"durationSecs\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The duration of this cuepoint.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"insertionOffsetTimeMs\": {\n \"format\": - \"int64\",\n \"type\": \"string\",\n \"description\": \"The - time when the cuepoint should be inserted by offset to the broadcast actual - start time.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The identifier for cuepoint resource.\"\n },\n - \ \"walltimeMs\": {\n \"description\": \"The wall clock time - at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"cueType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ]\n }\n },\n \"description\": - \"Note that there may be a 5-second end-point resolution issue. For instance, - if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\"\n },\n \"ThumbnailSetResponse\": - {\n \"type\": \"object\",\n \"id\": \"ThumbnailSetResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"default\": \"youtube#thumbnailSetResponse\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": \"A list of - thumbnails.\",\n \"type\": \"array\"\n }\n }\n },\n - \ \"Video\": {\n \"id\": \"Video\",\n \"properties\": {\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"statistics\": - {\n \"description\": \"The statistics object contains statistics - about the video.\",\n \"$ref\": \"VideoStatistics\"\n },\n - \ \"fileDetails\": {\n \"$ref\": \"VideoFileDetails\",\n \"description\": - \"The fileDetails object encapsulates information about the video file that - was uploaded to YouTube, including the file's resolution, duration, audio - and video codecs, stream bitrates, and more. This data can only be retrieved - by the video owner.\"\n },\n \"snippet\": {\n \"$ref\": - \"VideoSnippet\",\n \"description\": \"The snippet object contains - basic details about the video, such as its title, description, and category.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"default\": \"youtube#video\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"player\": - {\n \"$ref\": \"VideoPlayer\",\n \"description\": \"The - player object contains information that you would use to play the video in - an embedded player.\"\n },\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n - \ \"processingDetails\": {\n \"description\": \"The processingDetails - object encapsulates information about YouTube's progress in processing the - uploaded video file. The properties in the object identify the current processing - status and an estimate of the time remaining until YouTube finishes processing - the video. This part also indicates whether different types of data or content, - such as file details or thumbnail images, are available for the video. The - processingProgress object is designed to be polled so that the video uploaded - can track the progress that YouTube has made in processing the uploaded video - file. This data can only be retrieved by the video owner.\",\n \"$ref\": - \"VideoProcessingDetails\"\n },\n \"liveStreamingDetails\": - {\n \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\",\n \"$ref\": - \"VideoLiveStreamingDetails\"\n },\n \"status\": {\n \"$ref\": - \"VideoStatus\",\n \"description\": \"The status object contains - information about the video's uploading, processing, and privacy statuses.\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.videos.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"description\": \"The localizations - object contains localized versions of the basic details about the video, such - as its title and description.\",\n \"additionalProperties\": {\n - \ \"$ref\": \"VideoLocalization\"\n }\n },\n \"monetizationDetails\": - {\n \"description\": \"The monetizationDetails object encapsulates - information about the monetization status of the video.\",\n \"$ref\": - \"VideoMonetizationDetails\"\n },\n \"suggestions\": {\n \"description\": - \"The suggestions object encapsulates suggestions that identify opportunities - to improve the video quality or the metadata for the uploaded video. This - data can only be retrieved by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n - \ },\n \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n - \ \"description\": \"Age restriction details related to a video. This - data can only be retrieved by the video owner.\"\n },\n \"recordingDetails\": - {\n \"$ref\": \"VideoRecordingDetails\",\n \"description\": - \"The recordingDetails object encapsulates information about the location, - date and address where the video was recorded.\"\n },\n \"projectDetails\": - {\n \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n }\n },\n \"description\": - \"A *video* resource represents a YouTube video.\",\n \"type\": \"object\"\n - \ },\n \"ChannelAuditDetails\": {\n \"properties\": {\n \"copyrightStrikesGoodStanding\": - {\n \"description\": \"Whether or not the channel has any copyright - strikes.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel respects the community guidelines.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n }\n },\n \"id\": - \"ChannelAuditDetails\",\n \"description\": \"The auditDetails object - encapsulates channel data that is relevant for YouTube Partners during the - audit process.\",\n \"type\": \"object\"\n },\n \"Caption\": {\n - \ \"description\": \"A *caption* resource represents a YouTube caption - track. A caption track is associated with exactly one YouTube video.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the caption track.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#caption\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#caption\\\".\"\n }\n },\n - \ \"id\": \"Caption\"\n }\n },\n \"protocol\": \"rest\",\n \"discoveryVersion\": - \"v1\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:39 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCRijo3ddMTht_IHyNSNXpNQ&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"LopTy8pOmnSVp7RBtrF4Ovtu_hM\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"_5qO6MP8p4e7aLNQzXYetKxlZAk\",\n \"id\": \"UCRijo3ddMTht_IHyNSNXpNQ\",\n - \ \"snippet\": {\n \"title\": \"Dude Perfect\",\n \"description\": - \"5 best buds just kickin' it.\\nIf you like Sports + Comedy, come join the - Dude Perfect team!\",\n \"customUrl\": \"@dudeperfect\",\n \"publishedAt\": - \"2009-03-17T05:44:36Z\",\n \"thumbnails\": {\n \"default\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJVdEnUyNNPVUQzeUAB0EFmP_cNCJWUX9qnBwAdesA=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJVdEnUyNNPVUQzeUAB0EFmP_cNCJWUX9qnBwAdesA=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJVdEnUyNNPVUQzeUAB0EFmP_cNCJWUX9qnBwAdesA=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Dude Perfect\",\n \"description\": - \"5 best buds just kickin' it.\\nIf you like Sports + Comedy, come join the - Dude Perfect team!\"\n },\n \"country\": \"US\"\n },\n - \ \"brandingSettings\": {\n \"channel\": {\n \"title\": - \"Dude Perfect\",\n \"description\": \"5 best buds just kickin' it.\\nIf - you like Sports + Comedy, come join the Dude Perfect team!\",\n \"keywords\": - \"\\\"dude perfect\\\" \\\"dude perfect stereotypes\\\" \\\"dude perfect water - bottle flip\\\" \\\"bottle flip\\\" \\\"water bottle flip\\\" \\\"dude perfect - bottle flip\\\" \\\"dude perfect basketball\\\" dp \\\"dude perfect world - record\\\" edition nerf \\\"trick shots\\\" \\\"trick shot\\\" family \\\"ping - pong\\\" bowling clean \\\"family friendly\\\" \\\"bubble wrap\\\" soccer - football spinner spinners \\\"fidget spinners\\\" dude\",\n \"unsubscribedTrailer\": - \"pLlOkqBoZK4\",\n \"country\": \"US\"\n },\n \"image\": - {\n \"bannerExternalUrl\": \"https://yt3.googleusercontent.com/CmtXpTex_Y1gyVoFxzzwmIIdhXcCwbmg7kv2fmIkEt9MadSleRcdyU0SYjW2z95l5jNeiNHJAw\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:39 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"ownerName\": \"Google\",\n \"version\": \"v3\",\n \"servicePath\": - \"\",\n \"parameters\": {\n \"key\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"access_token\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"OAuth access token.\"\n },\n \"alt\": {\n \"description\": \"Data - format for response.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"enum\": [\n \"json\",\n - \ \"media\",\n \"proto\"\n ],\n \"type\": \"string\",\n - \ \"default\": \"json\"\n },\n \"upload_protocol\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"Upload protocol - for media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n },\n \"fields\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"Selector specifying which fields to include in a partial response.\"\n },\n - \ \"quotaUser\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"type\": \"string\"\n },\n \"oauth_token\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": \"OAuth - 2.0 token for the current user.\"\n },\n \"uploadType\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"Legacy upload - protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n },\n \"prettyPrint\": - {\n \"description\": \"Returns response with indentations and line breaks.\",\n - \ \"location\": \"query\",\n \"default\": \"true\",\n \"type\": - \"boolean\"\n },\n \"callback\": {\n \"type\": \"string\",\n \"description\": - \"JSONP\",\n \"location\": \"query\"\n },\n \"$.xgafv\": {\n \"enum\": - [\n \"1\",\n \"2\"\n ],\n \"location\": \"query\",\n - \ \"description\": \"V1 error format.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"v1 error format\",\n \"v2 - error format\"\n ]\n }\n },\n \"description\": \"The YouTube Data - API v3 is an API that provides access to YouTube data, such as videos, playlists, - and channels.\",\n \"revision\": \"20230220\",\n \"discoveryVersion\": \"v1\",\n - \ \"protocol\": \"rest\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"id\": \"youtube:v3\",\n \"fullyEncodeReservedExpansion\": true,\n - \ \"documentationLink\": \"https://developers.google.com/youtube/\",\n \"resources\": - {\n \"commentThreads\": {\n \"methods\": {\n \"insert\": {\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.commentThreads.insert\",\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"description\": \"Inserts a new - resource into this collection.\"\n },\n \"list\": {\n \"id\": - \"youtube.commentThreads.list\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"parameters\": - {\n \"id\": {\n \"description\": \"Returns the comment - threads with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"textFormat\": {\n \"description\": - \"The requested text format for the returned comments.\",\n \"location\": - \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"default\": \"html\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ]\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads of the specified - video.\"\n },\n \"searchTerms\": {\n \"type\": - \"string\",\n \"description\": \"Limits the returned comment - threads to those matching the specified key words. Not compatible with the - 'id' filter.\",\n \"location\": \"query\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\"\n },\n \"maxResults\": - {\n \"maximum\": \"100\",\n \"minimum\": \"1\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"20\",\n \"type\": \"integer\"\n },\n \"order\": - {\n \"default\": \"time\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Order - by time.\",\n \"Order by relevance.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ]\n - \ },\n \"moderationStatus\": {\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"default\": \"published\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by - a moderator.\",\n \"\",\n \"The comment is unfit - for display.\"\n ],\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies a comma-separated list of one or more commentThread resource - properties that the API response will include.\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ }\n }\n }\n },\n \"watermarks\": {\n \"methods\": - {\n \"unset\": {\n \"httpMethod\": \"POST\",\n \"description\": - \"Allows removal of channel watermark.\",\n \"id\": \"youtube.watermarks.unset\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"set\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n - \ \"id\": \"youtube.watermarks.set\",\n \"description\": - \"Allows upload of watermark image and setting it for a channel.\",\n \"parameters\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"supportsMediaUpload\": true,\n \"parameterOrder\": [\n - \ \"channelId\"\n ],\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"mediaUpload\": - {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"10485760\",\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n - \ }\n }\n }\n }\n }\n },\n - \ \"thirdPartyLinks\": {\n \"methods\": {\n \"update\": {\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.update\",\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\"\n - \ },\n \"insert\": {\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\"\n },\n \"list\": {\n \"id\": - \"youtube.thirdPartyLinks.list\",\n \"parameters\": {\n \"linkingToken\": - {\n \"location\": \"query\",\n \"description\": - \"Get a third party link with the given linking token.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the thirdPartyLink resource parts that the API response will include. Supported - values are linkingToken, status, and snippet.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n },\n \"type\": {\n \"description\": - \"Get a third party link of the given type.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"enum\": [\n - \ \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n },\n \"delete\": - {\n \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"linkingToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"Delete the partner links with the - given linking token.\"\n },\n \"type\": {\n \"required\": - true,\n \"type\": \"string\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Type - of the link to be deleted.\"\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"Do not use. Required for compatibility.\"\n - \ }\n },\n \"id\": \"youtube.thirdPartyLinks.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ]\n }\n }\n },\n \"liveChatModerators\": - {\n \"methods\": {\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat moderator.\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"id\": \"youtube.liveChatModerators.delete\"\n - \ },\n \"list\": {\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"LiveChatModeratorListResponse\"\n },\n \"parameters\": - {\n \"liveChatId\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"The id of the live chat for which moderators should be returned.\"\n },\n - \ \"maxResults\": {\n \"minimum\": \"0\",\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"50\",\n \"type\": \"integer\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the liveChatModerator resource parts that the API - response will include. Supported values are id and snippet.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.liveChatModerators.list\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/videoCategories\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"parameters\": - {\n \"id\": {\n \"description\": \"Returns the video - categories with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": - \"en-US\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - videoCategory resource properties that the API response will include. Set - the parameter value to snippet.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.videoCategories.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"insertCuepoint\": {\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"parameterOrder\": [],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"description\": \"Insert cuepoints in a broadcast\",\n \"response\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"Broadcast to insert ads to, or equivalently - `external_video_id` for internal use.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"request\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"httpMethod\": - \"POST\"\n },\n \"transition\": {\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"Transition a broadcast to a given status.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"Broadcast to transition.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"broadcastStatus\": {\n \"required\": - true,\n \"location\": \"query\",\n \"enum\": [\n - \ \"statusUnspecified\",\n \"testing\",\n \"live\",\n - \ \"complete\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Start - testing the broadcast. YouTube transmits video to the broadcast's monitor - stream. Note that you can only transition a broadcast to the testing state - if its contentDetails.monitorStream.enableMonitorStream property is set to - true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The - broadcast is over. YouTube stops transmitting video.\"\n ],\n - \ \"description\": \"The status to which the broadcast is going - to transition.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"parameterOrder\": [\n \"broadcastStatus\",\n - \ \"id\",\n \"part\"\n ]\n },\n \"insert\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.liveBroadcasts.insert\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new stream for the authenticated user.\",\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\"\n - \ },\n \"bind\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": true\n },\n \"id\": - {\n \"required\": true,\n \"description\": \"Broadcast - to bind to the stream\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"streamId\": {\n \"location\": - \"query\",\n \"description\": \"Stream to bind, if not set unbind - the current one.\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"description\": \"Bind a broadcast to a stream.\",\n - \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\"\n },\n \"update\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"description\": \"Updates an existing broadcast for the authenticated - user.\",\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.liveBroadcasts.update\"\n - \ },\n \"list\": {\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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, status and statistics.\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\"\n },\n \"id\": {\n - \ \"description\": \"Return broadcasts with the given ids from - Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"broadcastType\": {\n \"default\": \"event\",\n - \ \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"location\": \"query\",\n - \ \"description\": \"Return only broadcasts with the selected - type.\"\n },\n \"broadcastStatus\": {\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return current - live broadcasts.\",\n \"Return broadcasts that have not yet - started.\",\n \"Return broadcasts that have already ended.\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Retrieve - the list of broadcasts associated with the given channel.\",\n \"id\": - \"youtube.liveBroadcasts.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"delete\": {\n \"description\": \"Delete a given broadcast.\",\n - \ \"id\": \"youtube.liveBroadcasts.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"Broadcast to delete.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"playlistItems\": {\n \"methods\": {\n - \ \"insert\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n }\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.playlistItems.delete\",\n - \ \"path\": \"youtube/v3/playlistItems\"\n },\n \"list\": - {\n \"id\": \"youtube.playlistItems.list\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"response\": {\n \"$ref\": - \"PlaylistItemListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\"\n },\n \"playlistId\": - {\n \"description\": \"Return the playlist items within the given - playlist.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"default\": - \"5\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the playlist items associated with the given video ID.\",\n \"type\": - \"string\"\n }\n }\n },\n \"update\": {\n - \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"id\": - \"youtube.playlistItems.update\",\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"description\": \"Updates an existing resource.\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"insert\": {\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.channelSections.insert\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"update\": {\n \"httpMethod\": - \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"id\": \"youtube.channelSections.update\",\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n }\n - \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.channelSections.list\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/channelSections\",\n \"response\": {\n \"$ref\": - \"ChannelSectionListResponse\"\n },\n \"parameters\": {\n - \ \"mine\": {\n \"location\": \"query\",\n \"description\": - \"Return the ChannelSections owned by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the ChannelSections owned by the specified channel ID.\"\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"description\": - \"Return content in specified language\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ },\n \"delete\": {\n \"id\": \"youtube.channelSections.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"description\": \"Deletes a - resource.\",\n \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"DELETE\"\n }\n }\n },\n \"activities\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n },\n \"publishedBefore\": - {\n \"format\": \"google-datetime\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"home\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"location\": \"query\",\n \"default\": - \"5\",\n \"minimum\": \"0\"\n },\n \"publishedAfter\": - {\n \"type\": \"string\",\n \"format\": \"google-datetime\",\n - \ \"location\": \"query\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"ActivityListResponse\"\n },\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"path\": \"youtube/v3/activities\",\n \"id\": \"youtube.activities.list\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"id\": \"youtube.membershipsLevels.list\",\n \"flatPath\": - \"youtube/v3/membershipsLevels\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the membershipsLevel - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/membershipsLevels\",\n \"response\": {\n \"$ref\": - \"MembershipsLevelListResponse\"\n }\n }\n }\n },\n - \ \"liveChatMessages\": {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveChatMessageListResponse\"\n },\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"parameters\": {\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n - \ \"maxResults\": {\n \"minimum\": \"200\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"500\",\n \"maximum\": \"2000\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - id of the live chat for which comments should be returned.\",\n \"required\": - true\n },\n \"hl\": {\n \"description\": - \"Specifies the localization language in which the system messages should - be returned.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"profileImageSize\": {\n \"location\": - \"query\",\n \"description\": \"Specifies the size of the profile - image that should be returned for each user.\",\n \"maximum\": - \"720\",\n \"type\": \"integer\",\n \"minimum\": - \"16\",\n \"format\": \"uint32\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the liveChatComment resource parts that the API - response will include. Supported values are id and snippet.\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.liveChatMessages.list\"\n - \ },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatMessages.insert\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"required\": true\n - \ }\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"response\": {\n \"$ref\": - \"LiveChatMessage\"\n }\n },\n \"delete\": {\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Deletes a chat message.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.liveChatMessages.delete\",\n - \ \"httpMethod\": \"DELETE\"\n }\n }\n },\n \"tests\": - {\n \"methods\": {\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"TestItem\"\n },\n \"parameters\": - {\n \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/tests\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"description\": \"POST method.\",\n \"id\": \"youtube.tests.insert\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/tests\",\n - \ \"response\": {\n \"$ref\": \"TestItem\"\n }\n - \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of search resources\",\n - \ \"parameters\": {\n \"forMine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Search for the private videos of the authenticated user.\"\n },\n - \ \"videoType\": {\n \"description\": \"Filter on videos - of a specific type.\",\n \"location\": \"query\",\n \"enum\": - [\n \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"type\": \"string\"\n },\n \"publishedAfter\": - {\n \"description\": \"Filter on resources published after this - date.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"format\": \"google-datetime\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": true\n },\n \"videoCategoryId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on videos in a specific category.\"\n - \ },\n \"videoEmbeddable\": {\n \"location\": - \"query\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Filter - on embeddable videos.\"\n },\n \"videoLicense\": {\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"description\": \"Filter on the license of the videos.\"\n - \ },\n \"relevanceLanguage\": {\n \"description\": - \"Return results relevant to this language.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"q\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Textual search terms to match.\"\n },\n - \ \"eventType\": {\n \"description\": \"Filter on the - livestream status of the videos.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ]\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"relatedToVideoId\": {\n \"type\": \"string\",\n - \ \"description\": \"Search related to a resource.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"minimum\": \"0\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Display the content as seen by viewers in - this country.\"\n },\n \"type\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"Restrict results to a particular set of resource types from One Platform.\",\n - \ \"type\": \"string\"\n },\n \"order\": - {\n \"default\": \"relevance\",\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"description\": - \"Sort order of the results.\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoSyndicated\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"description\": - \"Filter on syndicated videos.\"\n },\n \"videoDimension\": - {\n \"location\": \"query\",\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ],\n \"type\": - \"string\",\n \"description\": \"Filter on 3d videos.\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ]\n },\n \"videoCaption\": - {\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter results based on caption availability.\",\n - \ \"Only include videos that have captions.\",\n \"Only - include videos that do not have captions.\"\n ],\n \"description\": - \"Filter on the presence of captions on the videos.\"\n },\n \"channelType\": - {\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Add a filter on the channel search.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ]\n },\n \"locationRadius\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on distance from the location (specified - above).\"\n },\n \"publishedBefore\": {\n \"description\": - \"Filter on resources published before this date.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"format\": - \"google-datetime\"\n },\n \"safeSearch\": {\n \"default\": - \"moderate\",\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ]\n },\n \"onBehalfOfContentOwner\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on resources belonging to this channelId.\"\n },\n \"videoDuration\": - {\n \"type\": \"string\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"location\": \"query\",\n - \ \"description\": \"Filter on the duration of the videos.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter video search results based on their duration. This is the default - value.\",\n \"Only include videos that are less than four minutes - long.\",\n \"Only include videos that are between four and - 20 minutes long (inclusive).\",\n \"Only include videos longer - than 20 minutes.\"\n ]\n },\n \"topicId\": - {\n \"type\": \"string\",\n \"description\": \"Restrict - results to a particular topic.\",\n \"location\": \"query\"\n - \ },\n \"forDeveloper\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\"\n },\n \"forContentOwner\": - {\n \"description\": \"Search owned by a content owner.\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"videoDefinition\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"description\": \"Filter - on the definition of the videos.\",\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ]\n - \ },\n \"location\": {\n \"type\": \"string\",\n - \ \"description\": \"Filter on location of the video\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/search\",\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.search.list\",\n \"flatPath\": \"youtube/v3/search\"\n - \ }\n }\n },\n \"subscriptions\": {\n \"methods\": {\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"Subscription\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"response\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/subscriptions\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.subscriptions.insert\"\n - \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/subscriptions\",\n \"id\": - \"youtube.subscriptions.list\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"SubscriptionListResponse\"\n },\n \"parameters\": {\n - \ \"maxResults\": {\n \"maximum\": \"50\",\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"default\": \"5\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mySubscribers\": {\n \"description\": - \"Return the subscribers of the given channel owner.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"order\": - {\n \"default\": \"relevance\",\n \"enum\": [\n - \ \"subscriptionOrderUnspecified\",\n \"relevance\",\n - \ \"unread\",\n \"alphabetical\"\n ],\n - \ \"description\": \"The order of the returned subscriptions\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Sort - by relevance.\",\n \"Sort by order of activity.\",\n \"Sort - alphabetically.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"forChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"description\": \"Flag for returning the subscriptions of - the authenticated user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"myRecentSubscribers\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the subscriptions of the given channel - owner.\"\n },\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"GET\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.subscriptions.delete\"\n }\n - \ }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": {\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - videoCategory resource parts that the API response will include. Supported - values are id and snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"hl\": {\n \"default\": - \"en-US\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"VideoAbuseReportReasonListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/videoAbuseReportReasons\"\n }\n }\n },\n \"captions\": - {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ],\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/captions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/captions\",\n \"id\": - \"youtube.captions.list\",\n \"response\": {\n \"$ref\": - \"CaptionListResponse\"\n },\n \"parameters\": {\n \"id\": - {\n \"description\": \"Returns the captions with the given IDs - for Stubby or Apiary.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"Returns - the captions for the specified video.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.delete\",\n \"path\": \"youtube/v3/captions\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"insert\": {\n \"parameters\": {\n \"sync\": - {\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n },\n \"part\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"path\": - \"youtube/v3/captions\",\n \"supportsMediaUpload\": true,\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"mediaUpload\": - {\n \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ },\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.captions.insert\",\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"download\": {\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"useMediaDownloadService\": true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaDownload\": true,\n \"flatPath\": \"youtube/v3/captions/{id}\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.captions.download\",\n - \ \"description\": \"Downloads a caption track.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The ID of the caption track to download, required for One Platform.\",\n - \ \"location\": \"path\"\n },\n \"tfmt\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Convert the captions into this format. Supported - options are sbv, srt, and vtt.\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n },\n \"tlang\": - {\n \"description\": \"tlang is the language code; machine translate - the captions into this language.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n }\n },\n - \ \"update\": {\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.captions.update\",\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"maxSize\": \"104857600\",\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n }\n },\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"request\": - {\n \"$ref\": \"Caption\"\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"supportsMediaUpload\": true,\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"sync\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\"\n },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n }\n - \ }\n }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.superChatEvents.list\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"minimum\": \"1\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"location\": \"query\",\n \"format\": - \"uint32\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the superChatEvent - resource parts that the API response will include. This parameter is currently - not supported.\",\n \"location\": \"query\"\n },\n - \ \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return rendered funding amounts - in specified language.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/superChatEvents\",\n \"flatPath\": - \"youtube/v3/superChatEvents\"\n }\n }\n },\n \"comments\": - {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.comments.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"CommentListResponse\"\n },\n \"path\": - \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - a comma-separated list of one or more comment resource properties that the - API response will include.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"textFormat\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"The requested text format for - the returned comments.\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"default\": \"html\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ]\n },\n \"parentId\": - {\n \"description\": \"Returns replies to the specified comment. - Note, currently YouTube features only one level of replies (ie replies to - top level comments). However replies to replies may be supported in the future.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"default\": \"20\",\n \"minimum\": \"1\",\n \"maximum\": - \"100\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Returns - the comments with the given IDs for One Platform.\",\n \"repeated\": - true\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/comments\"\n - \ },\n \"markAsSpam\": {\n \"description\": \"Expresses - the caller's opinion that one or more comments should be flagged as spam.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.comments.markAsSpam\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"Flags the comments with the given - IDs as spam in the caller's opinion.\"\n }\n },\n \"path\": - \"youtube/v3/comments/markAsSpam\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"httpMethod\": \"POST\"\n },\n \"update\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n - \ },\n \"id\": \"youtube.comments.update\",\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"delete\": {\n - \ \"path\": \"youtube/v3/comments\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.delete\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a resource.\"\n },\n \"insert\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/comments\",\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"id\": \"youtube.comments.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n }\n },\n \"setModerationStatus\": - {\n \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"parameters\": {\n \"moderationStatus\": {\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"Modifies - the moderation status of the comments with the given IDs\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"banAuthor\": - {\n \"description\": \"If set to true the author of the comment - gets added to the ban list. This means all future comments of the author will - autmomatically be rejected. Only valid in combination with STATUS_REJECTED.\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"default\": \"false\"\n }\n },\n \"description\": - \"Sets the moderation status of one or more comments.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments/setModerationStatus\",\n \"id\": - \"youtube.comments.setModerationStatus\",\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ]\n }\n }\n },\n \"videos\": {\n \"methods\": - {\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.delete\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"description\": \"Deletes a resource.\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/videos\"\n },\n \"reportAbuse\": {\n \"parameterOrder\": - [],\n \"id\": \"youtube.videos.reportAbuse\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"description\": \"Report abuse for a video.\"\n },\n \"insert\": - {\n \"mediaUpload\": {\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"274877906944\",\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/videos\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ }\n }\n },\n \"id\": \"youtube.videos.insert\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"stabilize\": {\n - \ \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Should stabilize be applied to the upload.\"\n - \ },\n \"notifySubscribers\": {\n \"default\": - \"true\",\n \"description\": \"Notify the channel subscribers - about the new video. As default, the notification is enabled.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"autoLevels\": - {\n \"description\": \"Should auto-levels be applied to the upload.\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ }\n },\n \"path\": \"youtube/v3/videos\",\n - \ \"supportsMediaUpload\": true,\n \"description\": \"Inserts - a new resource into this collection.\",\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"rate\": {\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ],\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"rating\": - {\n \"location\": \"query\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"type\": \"string\",\n \"required\": true\n }\n - \ },\n \"id\": \"youtube.videos.rate\",\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/videos/rate\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Adds a like or dislike rating to a video or removes - a rating from a video.\",\n \"flatPath\": \"youtube/v3/videos/rate\"\n - \ },\n \"update\": {\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"description\": \"Updates an existing - resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true\n }\n - \ },\n \"id\": \"youtube.videos.update\",\n \"path\": - \"youtube/v3/videos\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/videos\"\n },\n \"list\": {\n \"response\": - {\n \"$ref\": \"VideoListResponse\"\n },\n \"parameters\": - {\n \"locale\": {\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"maxHeight\": - {\n \"location\": \"query\",\n \"format\": \"int32\",\n - \ \"type\": \"integer\",\n \"maximum\": \"8192\",\n - \ \"minimum\": \"72\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"type\": \"string\"\n },\n \"chart\": - {\n \"description\": \"Return the videos that are in the specified - chart.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"chartUnspecified\",\n \"mostPopular\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - the most popular videos for the specified content region and video category.\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"myRating\": {\n \"description\": \"Return videos - liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n },\n \"regionCode\": - {\n \"description\": \"Use a chart that is specific to the specified - region\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxWidth\": {\n \"maximum\": - \"8192\",\n \"minimum\": \"72\",\n \"location\": - \"query\",\n \"description\": \"Return the player with maximum - height specified in\",\n \"type\": \"integer\",\n \"format\": - \"int32\"\n },\n \"hl\": {\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"1\",\n \"description\": - \"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.\"\n },\n \"videoCategoryId\": - {\n \"default\": \"0\",\n \"location\": \"query\",\n - \ \"description\": \"Use chart that is specific to the specified - video category\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return videos with the given ids.\",\n \"repeated\": - true\n }\n },\n \"path\": \"youtube/v3/videos\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.videos.list\",\n \"flatPath\": \"youtube/v3/videos\"\n - \ },\n \"getRating\": {\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"id\": \"youtube.videos.getRating\",\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos/getRating\",\n \"description\": - \"Retrieves the ratings that the authorized user gave to a list of specified - videos.\",\n \"parameterOrder\": [\n \"id\"\n ]\n - \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n - \ \"set\": {\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/thumbnails/set\",\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"supportsMediaUpload\": - true,\n \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"2097152\",\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/thumbnails/set\"\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.thumbnails.set\",\n \"response\": {\n - \ \"$ref\": \"ThumbnailSetResponse\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"videoId\": {\n \"description\": \"Returns the Thumbnail - with the given video IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"videoId\"\n ]\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/i18nRegions\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the i18nRegion resource properties that the API - response will include. Set the parameter value to snippet.\",\n \"repeated\": - true\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"default\": \"en_US\",\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"path\": \"youtube/v3/i18nRegions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"liveChatBans\": {\n \"methods\": - {\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a chat ban.\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/bans\",\n \"id\": - \"youtube.liveChatBans.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"id\": - \"youtube.liveChatBans.insert\",\n \"request\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"path\": \"youtube/v3/liveChat/bans\"\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.i18nLanguages.list\",\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"I18nLanguageListResponse\"\n },\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"default\": \"en_US\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - i18nLanguage resource properties that the API response will include. Set the - parameter value to snippet.\",\n \"type\": \"string\"\n }\n - \ },\n \"path\": \"youtube/v3/i18nLanguages\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"abuseReports\": - {\n \"methods\": {\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"AbuseReport\"\n },\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.abuseReports.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"response\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/abuseReports\"\n - \ }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"mediaUpload\": {\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/channelBanners/insert\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"6291456\"\n - \ },\n \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [],\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"id\": \"youtube.channelBanners.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/channelBanners/insert\",\n \"supportsMediaUpload\": - true,\n \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ }\n }\n }\n },\n \"channels\": {\n \"methods\": - {\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/channels\",\n \"description\": \"Updates an existing - resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Channel\"\n - \ },\n \"request\": {\n \"$ref\": \"Channel\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n - \ \"id\": \"youtube.channels.update\",\n \"flatPath\": \"youtube/v3/channels\"\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/channels\",\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the channels with the specified IDs.\"\n },\n \"hl\": - {\n \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"0\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"description\": - \"Return the ids of channels owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"categoryId\": {\n \"type\": - \"string\",\n \"description\": \"Return the channels within the - specified guide category ID.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"mySubscribers\": {\n \"description\": - \"Return the channels subscribed to the authenticated user\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"managedByMe\": - {\n \"description\": \"Return the channels managed by the authenticated - user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"forUsername\": {\n \"description\": - \"Return the channel associated with a YouTube username.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.channels.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ]\n }\n }\n },\n \"youtube\": {\n \"resources\": - {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"type\": \"string\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"id\": - \"youtube.youtube.v3.updateCommentThreads\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameterOrder\": [],\n \"httpMethod\": \"PUT\"\n - \ }\n }\n }\n }\n },\n \"liveStreams\": - {\n \"methods\": {\n \"delete\": {\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"description\": \"Deletes an existing stream for the authenticated - user.\",\n \"path\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.delete\"\n },\n \"list\": - {\n \"path\": \"youtube/v3/liveStreams\",\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"id\": - \"youtube.liveStreams.list\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"id\": - {\n \"description\": \"Return LiveStreams with the given ids - from Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n }\n }\n - \ },\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"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, content_details, and status.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"description\": \"Inserts a new stream for the authenticated - user.\"\n },\n \"update\": {\n \"parameters\": {\n - \ \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"description\": - \"Updates an existing stream for the authenticated user.\",\n \"id\": - \"youtube.liveStreams.update\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n }\n - \ }\n }\n },\n \"playlists\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"default\": \"5\",\n \"maximum\": - \"50\"\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ },\n \"mine\": {\n \"description\": \"Return - the playlists owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"Return the playlists with the given IDs for - Stubby or Apiary.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Return the playlists owned by - the specified channel ID.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.playlists.list\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"description\": \"Deletes a resource.\",\n \"path\": - \"youtube/v3/playlists\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"id\": \"youtube.playlists.delete\"\n },\n \"insert\": - {\n \"path\": \"youtube/v3/playlists\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/playlists\",\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"id\": \"youtube.playlists.insert\"\n },\n - \ \"update\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"id\": \"youtube.playlists.update\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Updates an existing resource.\",\n \"path\": - \"youtube/v3/playlists\"\n }\n }\n },\n \"members\": {\n - \ \"methods\": {\n \"list\": {\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"id\": \"youtube.members.list\",\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of members that match the request criteria for a channel.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"hasAccessToLevel\": - {\n \"description\": \"Filter members in the results set to the - ones that have access to a level.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"maximum\": - \"1000\",\n \"location\": \"query\",\n \"type\": - \"integer\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"mode\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ],\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"description\": \"Parameter that specifies which channel members - to return.\",\n \"default\": \"all_current\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"filterByMemberChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/members\",\n - \ \"path\": \"youtube/v3/members\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n }\n },\n \"batchPath\": - \"batch\",\n \"title\": \"YouTube Data API v3\",\n \"canonicalName\": \"YouTube\",\n - \ \"rootUrl\": \"https://youtube.googleapis.com/\",\n \"kind\": \"discovery#restDescription\",\n - \ \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"schemas\": - {\n \"CommentThreadListResponse\": {\n \"properties\": {\n \"items\": - {\n \"description\": \"A list of comment threads that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"CommentThread\"\n }\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#commentThreadListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"CommentThreadListResponse\"\n },\n \"VideoLiveStreamingDetails\": - {\n \"description\": \"Details about the live streaming metadata.\",\n - \ \"id\": \"VideoLiveStreamingDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"scheduledStartTime\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast is scheduled to begin.\"\n },\n \"scheduledEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast is scheduled to end. - If the value is empty or the property is not present, then the broadcast is - scheduled to contiue indefinitely.\"\n },\n \"concurrentViewers\": - {\n \"description\": \"The number of viewers currently watching the - broadcast. The property and its value will be present if the broadcast has - current viewers and the broadcast owner has not hidden the viewcount for the - video. Note that YouTube stops tracking the number of concurrent viewers for - a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"actualEndTime\": {\n \"description\": - \"The time that the broadcast actually ended. This value will not be available - until the broadcast is over.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"actualStartTime\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The time that the broadcast actually started. This value will not be available - until the broadcast begins.\"\n },\n \"activeLiveChatId\": {\n - \ \"description\": \"The ID of the currently active live chat attached - to this video. This field is filled only if the video is a currently live - broadcast that has live chat. Once the broadcast transitions to complete this - field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LanguageTag\": {\n \"type\": \"object\",\n - \ \"id\": \"LanguageTag\",\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n }\n },\n \"LiveStream\": - {\n \"properties\": {\n \"contentDetails\": {\n \"$ref\": - \"LiveStreamContentDetails\",\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStream\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about live stream's status.\",\n \"$ref\": - \"LiveStreamStatus\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the stream.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"cdn\": {\n \"$ref\": - \"CdnSettings\",\n \"description\": \"The cdn object defines the - live stream's content delivery network (CDN) settings. These settings provide - details about the manner in which you stream your content to YouTube.\"\n - \ },\n \"snippet\": {\n \"$ref\": \"LiveStreamSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the stream, including its channel, title, and description.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveStream\",\n \"description\": - \"A live stream describes a live ingestion point.\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"id\": \"ActivityContentDetailsRecommendation\",\n \"properties\": - {\n \"seedResourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The seedResourceId object contains information about the resource that caused - the recommendation.\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\",\n \"$ref\": \"ResourceId\"\n },\n \"reason\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The reason that the resource is recommended to - the user.\",\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ]\n }\n },\n \"type\": \"object\",\n \"description\": - \"Information that identifies the recommended resource.\"\n },\n \"ImageSettings\": - {\n \"id\": \"ImageSettings\",\n \"properties\": {\n \"bannerTvHighImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"trackingImageUrl\": - {\n \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"bannerMobileImageUrl\": - {\n \"description\": \"Banner image. Mobile size (640x175).\",\n - \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\",\n - \ \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTvLowImageUrl\": - {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size medium resolution (1280x720).\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size low resolution (320x88).\"\n },\n \"backgroundImageUrl\": - {\n \"description\": \"The URL for the background image shown on - the video watch page. The image should be 1200px by 615px, with a maximum - file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerExternalUrl\": {\n \"type\": \"string\",\n \"description\": - \"This is generated when a ChannelBanner.Insert request has succeeded for - the given channel.\"\n },\n \"bannerImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Desktop size (1060x175).\"\n - \ },\n \"bannerMobileExtraHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size high resolution (1440x395).\",\n \"type\": - \"string\"\n },\n \"bannerMobileHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\"\n },\n \"smallBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 640px - by 70px banner image that appears below the video player in the default view - of the video watch page. The URL for the image that appears above the top-left - corner of the video player. This is a 25-pixel-high image with a flexible - width that cannot exceed 170 pixels.\"\n },\n \"bannerTabletImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n }\n },\n \"description\": \"Branding - properties for images associated with the channel.\",\n \"type\": \"object\"\n - \ },\n \"ChannelStatus\": {\n \"properties\": {\n \"isLinked\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"longUploadsStatus\": - {\n \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"description\": \"Privacy status - of the channel.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"description\": \"JSON template for the status part of a - channel.\",\n \"id\": \"ChannelStatus\",\n \"type\": \"object\"\n - \ },\n \"LiveChatNewSponsorDetails\": {\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"isUpgrade\": - {\n \"type\": \"boolean\",\n \"description\": \"If the viewer - just had upgraded from a lower level. For viewers that were not members at - the time of purchase, this field is false.\"\n },\n \"memberLevelName\": - {\n \"description\": \"The name of the Level that the viewer just - had joined. The Level names are defined by the YouTube channel offering the - Membership. In some situations this field isn't filled.\",\n \"type\": - \"string\"\n }\n }\n },\n \"SearchListResponse\": {\n \"id\": - \"SearchListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"regionCode\": {\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#searchListResponse\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"SearchResult\"\n },\n \"type\": \"array\",\n \"description\": - \"Pagination information for token pagination.\"\n }\n }\n },\n - \ \"VideoAbuseReportSecondaryReason\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label for this abuse report secondary - reason.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of this abuse report secondary reason.\"\n - \ }\n },\n \"id\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"LiveChatTextMessageDetails\": {\n \"type\": \"object\",\n \"id\": - \"LiveChatTextMessageDetails\",\n \"properties\": {\n \"messageText\": - {\n \"type\": \"string\",\n \"description\": \"The user's - message.\"\n }\n }\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"properties\": {\n \"partsProcessed\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\"\n - \ },\n \"timeLeftMs\": {\n \"type\": \"string\",\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\",\n \"format\": \"uint64\"\n },\n - \ \"partsTotal\": {\n \"description\": \"An estimate of the - total number of parts that need to be processed for the video. The number - may be updated with more precise estimates while YouTube processes the video.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n }\n - \ },\n \"description\": \"Video processing progress and completion - time estimate.\"\n },\n \"CommentSnippet\": {\n \"properties\": - {\n \"moderationStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"description\": \"The comment's moderation status. - Will not be set if the comments were requested through the id filter.\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was originally - published.\",\n \"format\": \"date-time\"\n },\n \"authorChannelUrl\": - {\n \"type\": \"string\",\n \"description\": \"Link to the - author's YouTube channel, if any.\"\n },\n \"viewerRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"authorDisplayName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the user who posted - the comment.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"likeCount\": - {\n \"type\": \"integer\",\n \"description\": \"The total - number of likes this comment has received.\",\n \"format\": \"uint32\"\n - \ },\n \"authorProfileImageUrl\": {\n \"description\": - \"The URL for the avatar of the user who posted the comment.\",\n \"type\": - \"string\"\n },\n \"textDisplay\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"canRate\": - {\n \"description\": \"Whether the current viewer can rate this comment.\",\n - \ \"type\": \"boolean\"\n },\n \"parentId\": {\n \"description\": - \"The unique id of the parent comment, only set for replies.\",\n \"type\": - \"string\"\n },\n \"authorChannelId\": {\n \"$ref\": - \"CommentSnippetAuthorChannelId\"\n },\n \"textOriginal\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"videoId\": - {\n \"description\": \"The ID of the video the comment refers to, - if any.\",\n \"type\": \"string\"\n },\n \"updatedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the comment was last updated.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"CommentSnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a comment, such as its author - and text.\"\n },\n \"VideoGetRatingResponse\": {\n \"id\": \"VideoGetRatingResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"default\": \"youtube#videoGetRatingResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of ratings that match the request criteria.\",\n - \ \"items\": {\n \"$ref\": \"VideoRating\"\n }\n - \ }\n }\n },\n \"LiveBroadcastSnippet\": {\n \"id\": - \"LiveBroadcastSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"actualStartTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the broadcast actually started. This information is only available - once the broadcast's state is live.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that is publishing the broadcast.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's title. Note that the broadcast - represents exactly one YouTube video. You can set this field by modifying - the broadcast resource or by setting the title field of the corresponding - video resource.\"\n },\n \"liveChatId\": {\n \"description\": - \"The id of the live chat for this broadcast.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the broadcast. For each nested object - in this object, the key is the name of the thumbnail image, and the value - is an object that contains other information about the thumbnail.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"actualEndTime\": {\n \"description\": - \"The date and time that the broadcast actually ended. This information is - only available once the broadcast's state is complete.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the broadcast was added - to YouTube's live broadcast schedule.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"scheduledEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to end.\"\n },\n \"scheduledStartTime\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the broadcast is scheduled to start.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"isDefaultBroadcast\": {\n \"description\": - \"Indicates whether this broadcast is the default broadcast. Internal only.\",\n - \ \"type\": \"boolean\"\n },\n \"description\": {\n - \ \"type\": \"string\",\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\"\n - \ }\n },\n \"description\": \"Basic broadcast information.\"\n - \ },\n \"ChannelAuditDetails\": {\n \"properties\": {\n \"contentIdClaimsGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any unresolved claims.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel respects the community guidelines.\"\n }\n },\n - \ \"id\": \"ChannelAuditDetails\",\n \"description\": \"The auditDetails - object encapsulates channel data that is relevant for YouTube Partners during - the audit process.\",\n \"type\": \"object\"\n },\n \"RelatedEntity\": - {\n \"type\": \"object\",\n \"id\": \"RelatedEntity\",\n \"properties\": - {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n }\n - \ },\n \"LiveChatMembershipGiftingDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMembershipGiftingDetails\",\n \"properties\": - {\n \"giftMembershipsCount\": {\n \"description\": \"The number - of gift memberships purchased by the user.\",\n \"format\": \"int32\",\n - \ \"type\": \"integer\"\n },\n \"giftMembershipsLevelName\": - {\n \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"PropertyValue\": - {\n \"properties\": {\n \"property\": {\n \"description\": - \"A property.\",\n \"type\": \"string\"\n },\n \"value\": - {\n \"description\": \"The property's value.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"PropertyValue\",\n \"type\": - \"object\",\n \"description\": \"A pair Property / Value.\"\n },\n - \ \"LocalizedString\": {\n \"id\": \"LocalizedString\",\n \"type\": - \"object\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n },\n \"language\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelContentDetails\": {\n \"properties\": - {\n \"relatedPlaylists\": {\n \"type\": \"object\",\n \"properties\": - {\n \"watchHistory\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n },\n \"uploads\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s uploaded videos. Use the videos.insert method to upload new videos - and the videos.delete method to delete previously uploaded videos.\",\n \"type\": - \"string\"\n },\n \"watchLater\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\",\n \"type\": \"string\"\n },\n \"favorites\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s favorite videos. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"likes\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n }\n }\n - \ }\n },\n \"description\": \"Details about the content of - a channel.\",\n \"type\": \"object\",\n \"id\": \"ChannelContentDetails\"\n - \ },\n \"SubscriptionSnippet\": {\n \"id\": \"SubscriptionSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"description\": \"The subscription's details.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - subscription's title.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The id - object contains information about the channel that the user subscribed to.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n }\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the subscription belongs to.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the subscription was created.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n }\n },\n - \ \"description\": \"Basic details about a subscription, including title, - description and thumbnails of the subscribed item.\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"description\": \"Basic details about a subscription's subscriber - including title, description, channel ID and thumbnails.\",\n \"id\": - \"SubscriptionSubscriberSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the subscriber.\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The title of - the subscriber.\"\n },\n \"thumbnails\": {\n \"description\": - \"Thumbnails for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel ID of the subscriber.\"\n }\n }\n },\n \"ChannelLocalization\": - {\n \"id\": \"ChannelLocalization\",\n \"description\": \"Channel - localization setting\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - title.\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for channel's description.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelSectionLocalization\": - {\n \"description\": \"ChannelSection localization setting\",\n \"type\": - \"object\",\n \"id\": \"ChannelSectionLocalization\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The localized strings - for channel section's title.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"Member\": {\n \"id\": \"Member\",\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the member.\",\n \"$ref\": \"MemberSnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#member\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"properties\": - {\n \"memberMonth\": {\n \"description\": \"The total amount - of months (rounded up) the viewer has been a member that granted them this - Member Milestone Chat. This is the same number of months as is being displayed - to YouTube users.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level at which the - viever is a member. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n },\n - \ \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the member to this Member Milestone Chat. This field - is empty for messages without a comment from the member.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Information about the uploaded video.\",\n \"id\": \"ActivityContentDetailsUpload\"\n - \ },\n \"ActivityContentDetails\": {\n \"description\": \"Details - about the content of an activity: the video that was shared, the channel that - was subscribed to, etc.\",\n \"id\": \"ActivityContentDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"favorite\": {\n \"description\": - \"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.\",\n - \ \"$ref\": \"ActivityContentDetailsFavorite\"\n },\n \"social\": - {\n \"description\": \"The social object contains details about a - social network post. This property is only present if the snippet.type is - social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n },\n - \ \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\"\n },\n \"channelItem\": {\n \"description\": - \"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.\",\n - \ \"$ref\": \"ActivityContentDetailsChannelItem\"\n },\n \"like\": - {\n \"$ref\": \"ActivityContentDetailsLike\",\n \"description\": - \"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.\"\n - \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\"\n },\n \"upload\": {\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"promotedItem\": {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n - \ \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\"\n },\n \"bulletin\": {\n \"description\": - \"The bulletin object contains details about a channel bulletin post. This - object is only present if the snippet.type is bulletin.\",\n \"$ref\": - \"ActivityContentDetailsBulletin\"\n },\n \"subscription\": - {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n \"description\": - \"The subscription object contains information about a channel that a user - subscribed to. This property is only present if the snippet.type is subscription.\"\n - \ },\n \"comment\": {\n \"description\": \"The comment - object contains information about a resource that received a comment. This - property is only present if the snippet.type is comment.\",\n \"$ref\": - \"ActivityContentDetailsComment\"\n }\n }\n },\n \"PlaylistSnippet\": - {\n \"id\": \"PlaylistSnippet\",\n \"properties\": {\n \"title\": - {\n \"description\": \"The playlist's title.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the playlist's default title and description.\",\n \"type\": \"string\"\n - \ },\n \"thumbnailVideoId\": {\n \"description\": \"Note: - if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the playlist.\"\n },\n \"tags\": - {\n \"description\": \"Keyword tags associated with the playlist.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"localized\": {\n \"$ref\": - \"PlaylistLocalization\",\n \"description\": \"Localized title and - description, read-only.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the playlist - was created.\",\n \"format\": \"date-time\"\n },\n \"description\": - {\n \"description\": \"The playlist's description.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel title of the channel that the video - belongs to.\"\n }\n },\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails.\",\n \"type\": - \"object\"\n },\n \"LiveChatModerator\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatModerator\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#liveChatModerator\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModerator\\\".\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the moderator.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"description\": \"A - *liveChatModerator* resource represents a moderator for a YouTube live chat. - A chat moderator has the ability to ban/unban users from a chat, remove message, - etc.\"\n },\n \"VideoAbuseReportReason\": {\n \"type\": \"object\",\n - \ \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"id\": \"VideoAbuseReportReason\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The ID of this abuse report reason.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReason\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n }\n }\n },\n \"ActivityContentDetailsComment\": - {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with the - comment.\"\n }\n },\n \"description\": \"Information about - a resource that received a comment.\",\n \"id\": \"ActivityContentDetailsComment\"\n - \ },\n \"VideoAbuseReportReasonListResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The `visitorId` identifies the visitor.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of valid abuse reasons that are used with - `video.ReportAbuse`.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoAbuseReportReasonListResponse\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"properties\": {\n \"allowed\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\"\n },\n \"blocked\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\",\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"SubscriptionContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"SubscriptionContentDetails\",\n - \ \"properties\": {\n \"newItemCount\": {\n \"description\": - \"The number of new items in the subscription since its content was last read.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"totalItemCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The approximate number of items that the subscription points to.\",\n \"type\": - \"integer\"\n },\n \"activityType\": {\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"subscriptionActivityTypeUnspecified\",\n \"all\",\n - \ \"uploads\"\n ]\n }\n },\n \"description\": - \"Details about the content to witch a subscription refers.\"\n },\n \"LiveBroadcast\": - {\n \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the event, including its title, description, start time, and end time.\",\n - \ \"$ref\": \"LiveBroadcastSnippet\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the event's status.\",\n \"$ref\": - \"LiveBroadcastStatus\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the broadcast.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"statistics\": {\n \"$ref\": - \"LiveBroadcastStatistics\",\n \"description\": \"The statistics - object contains info about the event's current stats. These include concurrent - viewers and total chat count. Statistics can change (in either direction) - during the lifetime of an event. Statistics are only returned while the event - is live.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveBroadcast\"\n - \ }\n },\n \"id\": \"LiveBroadcast\",\n \"description\": - \"A *liveBroadcast* resource represents an event that will be streamed, via - live video, on YouTube.\"\n },\n \"ChannelConversionPings\": {\n \"properties\": - {\n \"pings\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ChannelConversionPing\"\n },\n \"description\": - \"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.\"\n }\n },\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"id\": \"ChannelConversionPings\",\n \"type\": - \"object\"\n },\n \"Cuepoint\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The identifier for cuepoint resource.\"\n - \ },\n \"cueType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ]\n - \ },\n \"durationSecs\": {\n \"description\": \"The - duration of this cuepoint.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"insertionOffsetTimeMs\": {\n \"type\": - \"string\",\n \"format\": \"int64\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\"\n },\n \"walltimeMs\": {\n \"description\": - \"The wall clock time at which the cuepoint should be inserted. Only one of - insertion_offset_time_ms and walltime_ms may be set at a time.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n }\n },\n \"id\": - \"Cuepoint\",\n \"type\": \"object\",\n \"description\": \"Note - that there may be a 5-second end-point resolution issue. For instance, if - a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\"\n },\n \"GeoPoint\": - {\n \"properties\": {\n \"latitude\": {\n \"description\": - \"Latitude in degrees.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n },\n \"longitude\": {\n \"type\": \"number\",\n - \ \"description\": \"Longitude in degrees.\",\n \"format\": - \"double\"\n },\n \"altitude\": {\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\",\n \"type\": - \"number\",\n \"format\": \"double\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Geographical coordinates of a point, - in WGS84.\",\n \"id\": \"GeoPoint\"\n },\n \"ChannelSectionTargeting\": - {\n \"properties\": {\n \"countries\": {\n \"type\": - \"array\",\n \"description\": \"The country the channel section is - targeting.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n },\n \"languages\": {\n \"description\": - \"The language the channel section is targeting.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"regions\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"The region the channel section - is targeting.\",\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"ChannelSection targeting setting.\",\n - \ \"id\": \"ChannelSectionTargeting\"\n },\n \"MembershipsLevel\": - {\n \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#membershipsLevel\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the memberships level.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A *membershipsLevel* resource represents an offer - made by YouTube creators for their fans. Users can become members of the channel - by joining one of the available levels. They will provide recurring monetary - support and receives special benefits.\",\n \"id\": \"MembershipsLevel\"\n - \ },\n \"SuperChatEventListResponse\": {\n \"id\": \"SuperChatEventListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of Super Chat purchases that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n }\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelSectionListResponse\": {\n \"id\": \"ChannelSectionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelSectionListResponse\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - ChannelSections that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"ChannelSection\"\n }\n }\n }\n - \ },\n \"VideoPlayer\": {\n \"type\": \"object\",\n \"id\": - \"VideoPlayer\",\n \"properties\": {\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\",\n - \ \"type\": \"string\"\n },\n \"embedWidth\": {\n \"type\": - \"string\",\n \"description\": \"The embed width\",\n \"format\": - \"int64\"\n },\n \"embedHeight\": {\n \"format\": \"int64\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Player to be used for a video playback.\"\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"properties\": {\n \"tag\": {\n \"type\": \"string\",\n - \ \"description\": \"The keyword tag suggested for the video.\"\n - \ },\n \"categoryRestricts\": {\n \"description\": \"A - set of video categories for which the tag is relevant. You can use this information - to display appropriate tag suggestions based on the video category that the - video uploader associates with the video. By default, tag suggestions are - relevant for all categories if there are no restricts defined for the keyword.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A single tag suggestion with it's relevance information.\",\n - \ \"id\": \"VideoSuggestionsTagSuggestion\"\n },\n \"I18nRegionSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - an i18n region, such as region code and human-readable name.\",\n \"id\": - \"I18nRegionSnippet\",\n \"properties\": {\n \"gl\": {\n \"type\": - \"string\",\n \"description\": \"The region code as a 2-letter ISO - country code.\"\n },\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the region.\"\n }\n - \ }\n },\n \"LiveChatBanSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"type\": {\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"description\": - \"The type of ban.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ]\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The chat - this ban is pertinent to.\"\n },\n \"banDurationSeconds\": {\n - \ \"description\": \"The duration of a ban, only filled if the ban - has type TEMPORARY.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\"\n }\n },\n \"id\": \"LiveChatBanSnippet\"\n - \ },\n \"PlaylistListResponse\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of playlists that match the request - criteria\",\n \"items\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"default\": \"youtube#playlistListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"PlaylistListResponse\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsLike\": {\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the rated resource.\"\n }\n },\n \"id\": - \"ActivityContentDetailsLike\",\n \"description\": \"Information about - a resource that received a positive (like) rating.\"\n },\n \"CdnSettings\": - {\n \"description\": \"Brief description of the live stream cdn settings.\",\n - \ \"id\": \"CdnSettings\",\n \"type\": \"object\",\n \"properties\": - {\n \"frameRate\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The frame rate of the inbound video data.\",\n - \ \"enum\": [\n \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ]\n },\n \"ingestionInfo\": {\n \"$ref\": - \"IngestionInfo\",\n \"description\": \"The ingestionInfo object - contains information that YouTube provides that you need to transmit your - RTMP or HTTP stream to YouTube.\"\n },\n \"format\": {\n \"description\": - \"The format of the video stream that you are sending to Youtube. \",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"ingestionType\": {\n - \ \"description\": \" The method or protocol used to transmit the - video stream.\",\n \"enum\": [\n \"rtmp\",\n \"dash\",\n - \ \"webrtc\",\n \"hls\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"resolution\": {\n \"description\": \"The resolution of - the inbound video data.\",\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoMonetizationDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"access\": {\n \"$ref\": - \"AccessPolicy\",\n \"description\": \"The value of access indicates - whether the video can be monetized or not.\"\n }\n },\n \"id\": - \"VideoMonetizationDetails\",\n \"description\": \"Details about monetization - of a YouTube Video.\"\n },\n \"PlaylistPlayer\": {\n \"id\": \"PlaylistPlayer\",\n - \ \"properties\": {\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageSnippet\": {\n \"description\": \"Next ID: - 33\",\n \"id\": \"LiveChatMessageSnippet\",\n \"properties\": {\n - \ \"liveChatId\": {\n \"type\": \"string\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"description\": \"The type - of message, this will always be present, it determines the contents of the - message as well as which fields will be present.\",\n \"enum\": [\n - \ \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"fanFundingEventDetails\": - {\n \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"superStickerDetails\": {\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"newSponsorDetails\": - {\n \"description\": \"Details about the New Member Announcement - event, this is only set if the type is 'newSponsorEvent'. Please note that - \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n \"$ref\": - \"LiveChatNewSponsorDetails\"\n },\n \"hasDisplayContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the message has display content that should be displayed to users.\"\n },\n - \ \"textMessageDetails\": {\n \"$ref\": \"LiveChatTextMessageDetails\",\n - \ \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"superChatDetails\": {\n \"description\": \"Details about - the Super Chat event, this is only set if the type is 'superChatEvent'.\",\n - \ \"$ref\": \"LiveChatSuperChatDetails\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the message was orignally published.\",\n \"format\": - \"date-time\"\n },\n \"authorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the user that authored - this message, this field is not always filled. textMessageEvent - the user - that wrote the message fanFundingEvent - the user that funded the broadcast - newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n },\n \"displayMessage\": - {\n \"type\": \"string\",\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"messageDeletedDetails\": {\n \"$ref\": - \"LiveChatMessageDeletedDetails\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"description\": \"Details about the Gift Membership Received - event, this is only set if the type is 'giftMembershipReceivedEvent'.\",\n - \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n - \ \"memberMilestoneChatDetails\": {\n \"description\": \"Details - about the Member Milestone Chat event, this is only set if the type is 'memberMilestoneChatEvent'.\",\n - \ \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoCategoryListResponse\": {\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoCategoryListResponse\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n },\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoCategoryListResponse\",\n - \ \"type\": \"object\"\n },\n \"Subscription\": {\n \"description\": - \"A *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#subscription\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"contentDetails\": - {\n \"$ref\": \"SubscriptionContentDetails\",\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the subscription, including its title - and the channel that the user subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\"\n },\n - \ \"subscriberSnippet\": {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"The subscriberSnippet object contains basic details - about the subscriber.\"\n }\n },\n \"id\": \"Subscription\",\n - \ \"type\": \"object\"\n },\n \"LiveChatModeratorSnippet\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the live chat this moderator can act on.\"\n },\n \"moderatorDetails\": - {\n \"description\": \"Details about the moderator.\",\n \"$ref\": - \"ChannelProfileDetails\"\n }\n },\n \"id\": \"LiveChatModeratorSnippet\"\n - \ },\n \"ActivityListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Activity\"\n },\n - \ \"type\": \"array\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#activityListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"ActivityListResponse\"\n - \ },\n \"Comment\": {\n \"id\": \"Comment\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the comment.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"default\": \"youtube#comment\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#comment\\\".\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the comment.\",\n \"$ref\": \"CommentSnippet\"\n }\n - \ },\n \"description\": \"A *comment* represents a single YouTube - comment.\"\n },\n \"PlaylistItemContentDetails\": {\n \"properties\": - {\n \"videoPublishedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the video was published - to YouTube.\",\n \"type\": \"string\"\n },\n \"endAt\": - {\n \"description\": \"The time, measured in seconds from the start - of the video, when the video should stop playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) By default, assume that the video.endTime - is the end of the video.\",\n \"type\": \"string\"\n },\n - \ \"startAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\"\n },\n \"videoId\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - a video. To retrieve the video resource, set the id query parameter to this - value in your API request.\",\n \"type\": \"string\"\n },\n - \ \"note\": {\n \"type\": \"string\",\n \"description\": - \"A user-generated note for this item.\"\n }\n },\n \"id\": - \"PlaylistItemContentDetails\",\n \"type\": \"object\"\n },\n \"LiveChatBan\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatBan\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the ban.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatBan\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n - \ }\n },\n \"description\": \"A `__liveChatBan__` resource - represents a ban for a YouTube live chat.\"\n },\n \"VideoSuggestions\": - {\n \"properties\": {\n \"processingHints\": {\n \"description\": - \"A list of suggestions that may improve YouTube's ability to process the - video.\",\n \"items\": {\n \"enumDescriptions\": [\n \"The - MP4 file is not streamable, this will slow down the processing. MOOV atom - was not found at the beginning of the file.\",\n \"Probably a - better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ]\n },\n \"type\": \"array\"\n },\n \"processingWarnings\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ]\n },\n \"description\": \"A list of reasons - why YouTube may have difficulty transcoding the uploaded video or that might - result in an erroneous transcoding. These warnings are generated before YouTube - actually processes the uploaded video file. In addition, they identify issues - that are unlikely to cause the video processing to fail but that might cause - problems such as sync issues, video artifacts, or a missing audio track.\"\n - \ },\n \"editorSuggestions\": {\n \"items\": {\n \"enum\": - [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ]\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of video editing operations that might improve the video quality or playback - experience of the uploaded video.\"\n },\n \"processingErrors\": - {\n \"type\": \"array\",\n \"items\": {\n \"enum\": - [\n \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n - \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n - \ \"unsupportedSpatialAudioLayout\"\n ],\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of errors that will prevent YouTube from - successfully processing the uploaded video video. These errors indicate that, - regardless of the video's current processing status, eventually, that status - will almost certainly be failed.\"\n },\n \"tagSuggestions\": - {\n \"description\": \"A list of keyword tags that could be added - to the video's metadata to increase the likelihood that users will locate - your video when searching or browsing on YouTube.\",\n \"items\": - {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n },\n - \ \"type\": \"array\"\n }\n },\n \"id\": \"VideoSuggestions\",\n - \ \"description\": \"Specifies suggestions on how to improve video content, - including encoding hints, tag suggestions, and editor suggestions.\",\n \"type\": - \"object\"\n },\n \"ThumbnailDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"ThumbnailDetails\",\n \"description\": \"Internal representation - of thumbnails for a YouTube resource.\",\n \"properties\": {\n \"medium\": - {\n \"description\": \"The medium quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n },\n \"default\": {\n \"description\": - \"The default image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"maxres\": {\n \"description\": \"The maximum - resolution quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"standard\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The standard quality image for this resource.\"\n - \ },\n \"high\": {\n \"description\": \"The high quality - image for this resource.\",\n \"$ref\": \"Thumbnail\"\n }\n - \ }\n },\n \"VideoStatistics\": {\n \"description\": \"Statistics - about the video, such as the number of times the video was viewed or liked.\",\n - \ \"id\": \"VideoStatistics\",\n \"type\": \"object\",\n \"properties\": - {\n \"dislikeCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of users who have indicated that they disliked the video by giving - it a negative rating.\",\n \"type\": \"string\"\n },\n \"commentCount\": - {\n \"description\": \"The number of comments for the video.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"favoriteCount\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of users who currently - have the video marked as a favorite video.\"\n },\n \"viewCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of times the video has been viewed.\",\n \"format\": \"uint64\"\n - \ },\n \"likeCount\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The number of - users who have indicated that they liked the video by giving it a positive - rating.\"\n }\n }\n },\n \"ChannelSectionContentDetails\": - {\n \"properties\": {\n \"channels\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The channel ids for type multiple_channels.\",\n \"type\": \"array\"\n - \ },\n \"playlists\": {\n \"description\": \"The playlist - ids for type single_playlist and multiple_playlists. For singlePlaylist, only - one playlistId is allowed.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"id\": - \"ChannelSectionContentDetails\",\n \"type\": \"object\",\n \"description\": - \"Details about a channelsection, including playlists and channels.\"\n },\n - \ \"VideoStatus\": {\n \"description\": \"Basic details about a video - category, such as its localized title. Next Id: 18\",\n \"properties\": - {\n \"license\": {\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"failureReason\": {\n - \ \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ],\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ],\n \"description\": \"This value explains - why a video failed to upload. This property is only present if the uploadStatus - property indicates that the upload failed.\",\n \"type\": \"string\"\n - \ },\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The video's privacy status.\",\n \"type\": - \"string\"\n },\n \"embeddable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value indicates if the video can be embedded - on another website. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"rejectionReason\": {\n \"type\": \"string\",\n - \ \"description\": \"This value explains why YouTube rejected an uploaded - video. This property is only present if the uploadStatus property indicates - that the upload was rejected.\",\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n },\n \"uploadStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"Video - has been uploaded but not processed yet.\",\n \"Video has been - successfully processed.\",\n \"Processing has failed. See FailureReason.\",\n - \ \"Video has been rejected. See RejectionReason.\",\n \"Video - has been deleted.\"\n ],\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ],\n \"description\": \"The status - of the uploaded video.\"\n },\n \"madeForKids\": {\n \"type\": - \"boolean\"\n },\n \"publishAt\": {\n \"description\": - \"The date and time when the video is scheduled to publish. It can be set - only if the privacy status of the video is private..\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"publicStatsViewable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"id\": \"VideoStatus\",\n \"type\": \"object\"\n - \ },\n \"I18nRegion\": {\n \"description\": \"A *i18nRegion* resource - identifies a region where YouTube is available.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n },\n \"kind\": {\n - \ \"default\": \"youtube#i18nRegion\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"I18nRegion\"\n },\n \"ThumbnailSetResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of thumbnails.\",\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thumbnailSetResponse\"\n - \ }\n },\n \"id\": \"ThumbnailSetResponse\",\n \"type\": - \"object\"\n },\n \"ChannelConversionPing\": {\n \"description\": - \"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.\",\n \"type\": \"object\",\n \"properties\": {\n \"conversionUrl\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"context\": {\n \"description\": \"Defines the context of - the ping.\",\n \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"id\": \"ChannelConversionPing\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"properties\": {\n \"destinationUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should direct - the user to, if the user chooses to visit the advertiser's website.\"\n },\n - \ \"adTag\": {\n \"type\": \"string\",\n \"description\": - \"The URL the client should fetch to request a promoted item.\"\n },\n - \ \"customCtaButtonText\": {\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\",\n \"type\": \"string\"\n },\n \"clickTrackingUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user clicked through on this promoted - item.\"\n },\n \"forecastingUrl\": {\n \"description\": - \"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.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"ctaType\": - {\n \"type\": \"string\",\n \"description\": \"The type - of call-to-action, a message to the user indicating action that can be taken.\",\n - \ \"enum\": [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\"\n },\n \"descriptionText\": {\n \"type\": - \"string\",\n \"description\": \"The text description to accompany - the promoted item.\"\n },\n \"creativeViewUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\",\n \"type\": \"string\"\n },\n \"impressionUrl\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The list of impression - URLs. The client should ping all of these URLs to indicate that the user was - shown this promoted item.\"\n }\n },\n \"description\": \"Details - about a resource which is being promoted.\",\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of broadcasts - that match the request criteria.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveBroadcastListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveBroadcastListResponse\"\n - \ },\n \"VideoAgeGating\": {\n \"type\": \"object\",\n \"properties\": - {\n \"restricted\": {\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\",\n \"type\": - \"boolean\"\n },\n \"videoGameRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"Video game rating, if any.\"\n - \ },\n \"alcoholContent\": {\n \"description\": \"Indicates - whether or not the video has alcoholic beverage content. Only users of legal - purchasing age in a particular country, as identified by ICAP, can view the - content.\",\n \"type\": \"boolean\"\n }\n },\n \"id\": - \"VideoAgeGating\"\n },\n \"Entity\": {\n \"properties\": {\n \"url\": - {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\"\n },\n \"typeId\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"Entity\",\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsSocial\": {\n \"properties\": {\n - \ \"author\": {\n \"type\": \"string\",\n \"description\": - \"The author of the social network post.\"\n },\n \"imageUrl\": - {\n \"type\": \"string\",\n \"description\": \"An image - of the post's author.\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object encapsulates - information that identifies the resource associated with a social network - post.\"\n },\n \"type\": {\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The name of the social network.\",\n \"type\": \"string\"\n },\n - \ \"referenceUrl\": {\n \"description\": \"The URL of the social - network post.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Details about a social network post.\",\n - \ \"id\": \"ActivityContentDetailsSocial\"\n },\n \"VideoRecordingDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"recordingDate\": - {\n \"description\": \"The date and time when the video was recorded.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"locationDescription\": {\n \"type\": \"string\",\n \"description\": - \"The text description of the location where the video was recorded.\"\n },\n - \ \"location\": {\n \"$ref\": \"GeoPoint\",\n \"description\": - \"The geolocation information associated with the video.\"\n }\n },\n - \ \"description\": \"Recording information associated with the video.\",\n - \ \"id\": \"VideoRecordingDetails\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"properties\": {\n \"banDurationSeconds\": {\n \"format\": - \"uint64\",\n \"description\": \"The duration of the ban. This property - is only present if the banType is temporary.\",\n \"type\": \"string\"\n - \ },\n \"banType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of ban.\",\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ]\n },\n \"bannedUserDetails\": - {\n \"description\": \"The details of the user that was banned.\",\n - \ \"$ref\": \"ChannelProfileDetails\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"ThirdPartyLinkListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"VideoFileDetailsAudioStream\": {\n \"id\": \"VideoFileDetailsAudioStream\",\n - \ \"properties\": {\n \"channelCount\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of audio channels that the stream contains.\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n },\n \"codec\": {\n \"type\": \"string\",\n - \ \"description\": \"The audio codec that the stream uses.\"\n },\n - \ \"bitrateBps\": {\n \"type\": \"string\",\n \"description\": - \"The audio stream's bitrate, in bits per second.\",\n \"format\": - \"uint64\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Information about an audio stream.\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\",\n - \ \"properties\": {\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n },\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - amount of the fund.\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"Thumbnail\": {\n \"description\": \"A - thumbnail is an image representing a YouTube resource.\",\n \"id\": \"Thumbnail\",\n - \ \"properties\": {\n \"width\": {\n \"type\": \"integer\",\n - \ \"description\": \"(Optional) Width of the thumbnail image.\",\n - \ \"format\": \"uint32\"\n },\n \"url\": {\n \"type\": - \"string\",\n \"description\": \"The thumbnail image's URL.\"\n },\n - \ \"height\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"(Optional) Height of the thumbnail - image.\"\n }\n },\n \"type\": \"object\"\n },\n \"SuperStickerMetadata\": - {\n \"id\": \"SuperStickerMetadata\",\n \"properties\": {\n \"altText\": - {\n \"description\": \"Internationalized alt text that describes - the sticker image and any animation associated with it.\",\n \"type\": - \"string\"\n },\n \"stickerId\": {\n \"type\": \"string\",\n - \ \"description\": \"Unique identifier of the Super Sticker. This - is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\"\n },\n \"altTextLanguage\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the alt text is returned.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"MembershipsDetails\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsDetails\",\n \"properties\": - {\n \"membershipsDurationAtLevels\": {\n \"type\": \"array\",\n - \ \"description\": \"Data about memberships duration on particular - pricing levels.\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ }\n },\n \"highestAccessibleLevelDisplayName\": {\n - \ \"description\": \"Display name for the highest level that the user - has access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"membershipsDuration\": {\n \"$ref\": \"MembershipsDuration\",\n - \ \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\"\n },\n \"accessibleLevels\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"Ids of all levels - that the user has access to. This includes the currently active level and - all other levels that are included because of a higher purchase.\"\n },\n - \ \"highestAccessibleLevel\": {\n \"description\": \"Id of - the highest level that the user has access to at the moment.\",\n \"type\": - \"string\"\n }\n }\n },\n \"SearchResult\": {\n \"type\": - \"object\",\n \"description\": \"A search result contains information - about a YouTube video, channel, or playlist that matches the search parameters - specified in an API request. While a search result points to a uniquely identifiable - resource, like a video, it does not have its own persistent data.\",\n \"properties\": - {\n \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n },\n \"kind\": - {\n \"default\": \"youtube#searchResult\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about a search result, such as its title or description. For - example, if the search result is a video, then the title will be the video's - title and the description will be the video's description.\",\n \"$ref\": - \"SearchResultSnippet\"\n }\n },\n \"id\": \"SearchResult\"\n - \ },\n \"VideoSnippet\": {\n \"description\": \"Basic details about - a video, including title, description, uploader, thumbnails and category.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The video's - description. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"channelTitle\": {\n \"description\": \"Channel title for - the channel that the video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"description\": \"The video's - title. @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the videos's default snippet.\",\n \"type\": \"string\"\n - \ },\n \"defaultAudioLanguage\": {\n \"description\": - \"The default_audio_language property specifies the language spoken in the - video's default audio track.\",\n \"type\": \"string\"\n },\n - \ \"tags\": {\n \"description\": \"A list of keyword tags associated - with the video. Tags may contain spaces.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"localized\": - {\n \"$ref\": \"VideoLocalization\",\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the video was uploaded.\",\n - \ \"format\": \"date-time\"\n },\n \"thumbnails\": {\n - \ \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n },\n \"categoryId\": - {\n \"description\": \"The YouTube video category associated with - the video.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that the video was uploaded - to.\"\n },\n \"liveBroadcastContent\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n }\n },\n \"id\": - \"VideoSnippet\"\n },\n \"TestItemTestItemSnippet\": {\n \"type\": - \"object\",\n \"id\": \"TestItemTestItemSnippet\",\n \"properties\": - {}\n },\n \"VideoRating\": {\n \"id\": \"VideoRating\",\n \"type\": - \"object\",\n \"properties\": {\n \"rating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"Rating of - a video.\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n }\n },\n \"description\": \"Basic details - about rating of a video.\"\n },\n \"Activity\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the activity, including - the activity's type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the activity.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#activity\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n - \ \"description\": \"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.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"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.\",\n \"id\": \"Activity\"\n },\n - \ \"LiveStreamListResponse\": {\n \"properties\": {\n \"items\": - {\n \"description\": \"A list of live streams that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveStream\"\n }\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"default\": \"youtube#liveStreamListResponse\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"id\": \"LiveStreamListResponse\",\n \"type\": \"object\"\n - \ },\n \"ActivitySnippet\": {\n \"description\": \"Basic details - about an activity, including title, description, thumbnails, activity type - and group. Next ID: 12\",\n \"id\": \"ActivitySnippet\",\n \"type\": - \"object\",\n \"properties\": {\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel responsible - for this activity\"\n },\n \"thumbnails\": {\n \"description\": - \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"type\": {\n \"enum\": [\n \"typeUnspecified\",\n - \ \"upload\",\n \"like\",\n \"favorite\",\n - \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n - \ \"recommendation\",\n \"bulletin\",\n \"social\",\n - \ \"channelItem\",\n \"promotedItem\"\n ],\n - \ \"description\": \"The type of activity that the resource describes.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel associated with - the activity.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the video - was uploaded.\",\n \"format\": \"date-time\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the resource primarily associated with the activity.\"\n },\n \"groupId\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the resource primarily associated - with the activity. @mutable youtube.activities.insert\"\n }\n }\n - \ },\n \"VideoContentDetails\": {\n \"properties\": {\n \"countryRestriction\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - countryRestriction object contains information about the countries where a - video is (or is not) viewable.\"\n },\n \"dimension\": {\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\",\n \"type\": \"string\"\n },\n \"regionRestriction\": - {\n \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"caption\": - {\n \"enum\": [\n \"true\",\n \"false\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"The value of - captions indicates whether the video has captions or not.\"\n },\n - \ \"duration\": {\n \"description\": \"The length of the video. - The tag value is an ISO 8601 duration in the format PT#M#S, in which the letters - PT indicate that the value specifies a period of time, and the letters M and - S refer to length in minutes and seconds, respectively. The # characters preceding - the M and S letters are both integers that specify the number of minutes (or - seconds) of the video. For example, a value of PT15M51S indicates that the - video is 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n - \ },\n \"licensedContent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"The value of is_license_content indicates whether - the video is licensed content.\"\n },\n \"hasCustomThumbnail\": - {\n \"description\": \"Indicates whether the video uploader has provided - a custom thumbnail image for the video. This property is only visible to the - video uploader.\",\n \"type\": \"boolean\"\n },\n \"definition\": - {\n \"type\": \"string\",\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"description\": \"The value of - definition indicates whether the video is available in high definition or - only in standard definition.\",\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ]\n },\n \"contentRating\": {\n - \ \"description\": \"Specifies the ratings that the video received - under various rating schemes.\",\n \"$ref\": \"ContentRating\"\n - \ },\n \"projection\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Specifies the projection format of the video.\",\n - \ \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ]\n }\n },\n \"description\": \"Details about the - content of a YouTube Video.\",\n \"type\": \"object\",\n \"id\": - \"VideoContentDetails\"\n },\n \"SuperChatEvent\": {\n \"type\": - \"object\",\n \"id\": \"SuperChatEvent\",\n \"description\": \"A - `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#superChatEvent\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\",\n - \ \"$ref\": \"SuperChatEventSnippet\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the Super Chat event.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoFileDetails\": {\n \"id\": - \"VideoFileDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"container\": {\n \"description\": \"The uploaded video - file's container format.\",\n \"type\": \"string\"\n },\n - \ \"fileType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"description\": \"The uploaded file's - type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\",\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ]\n },\n \"bitrateBps\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded video file's combined (video and - audio) bitrate in bits per second.\",\n \"format\": \"uint64\"\n - \ },\n \"creationTime\": {\n \"description\": \"The - date and time when the uploaded video file was created. The value is specified - in ISO 8601 format. Currently, the following ISO 8601 formats are supported: - - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: - YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n },\n - \ \"fileName\": {\n \"description\": \"The uploaded file's - name. This field is present whether a video file or another type of file was - uploaded.\",\n \"type\": \"string\"\n },\n \"fileSize\": - {\n \"description\": \"The uploaded file's size in bytes. This field - is present whether a video file or another type of file was uploaded.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"audioStreams\": {\n \"description\": \"A list of audio - streams contained in the uploaded video file. Each item in the list contains - detailed metadata about an audio stream.\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsAudioStream\"\n },\n \"type\": \"array\"\n - \ },\n \"videoStreams\": {\n \"description\": \"A list - of video streams contained in the uploaded video file. Each item in the list - contains detailed metadata about a video stream.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ }\n },\n \"durationMs\": {\n \"type\": \"string\",\n - \ \"description\": \"The length of the uploaded video in milliseconds.\",\n - \ \"format\": \"uint64\"\n }\n },\n \"description\": - \"Describes original video file properties, including technical details about - audio and video streams, but also metadata information like content length, - digitization time, or geotagging information.\"\n },\n \"PlaylistItemSnippet\": - {\n \"properties\": {\n \"videoOwnerChannelTitle\": {\n \"description\": - \"Channel title for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the item was added to the playlist.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"resourceId\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"$ref\": \"ResourceId\",\n \"description\": \"The id object - contains information that can be used to uniquely identify the resource that - is included in the playlist as the playlist item.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the playlist item belongs to.\"\n },\n \"playlistId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"title\": {\n \"description\": \"The item's - title.\",\n \"type\": \"string\"\n },\n \"position\": - {\n \"description\": \"The order in which the item appears in the - playlist. The value uses a zero-based index, so the first item has a position - of 0, the second item has a position of 1, and so forth.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"videoOwnerChannelId\": - {\n \"description\": \"Channel id for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the user that added the item to the playlist.\"\n - \ },\n \"description\": {\n \"description\": \"The item's - description.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the playlist item. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Basic details - about a playlist, including title, description and thumbnails. Basic details - of a YouTube Playlist item provided by the author. Next ID: 15\",\n \"id\": - \"PlaylistItemSnippet\"\n },\n \"AccessPolicy\": {\n \"type\": - \"object\",\n \"id\": \"AccessPolicy\",\n \"properties\": {\n \"exception\": - {\n \"description\": \"A list of region codes that identify countries - where the default policy do not apply.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"allowed\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of allowed indicates whether the access to the policy is allowed or denied - by default.\"\n }\n },\n \"description\": \"Rights management - policy for YouTube resources.\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"description\": \"Basic details about a video category, such as - its localized title.\",\n \"type\": \"object\",\n \"properties\": - {\n \"label\": {\n \"description\": \"The localized label - belonging to this abuse report reason.\",\n \"type\": \"string\"\n - \ },\n \"secondaryReasons\": {\n \"description\": \"The - secondary reasons associated with this reason, if any are available. (There - might be 0 or more.)\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"id\": - \"VideoAbuseReportReasonSnippet\"\n },\n \"ChannelContentOwnerDetails\": - {\n \"properties\": {\n \"contentOwner\": {\n \"description\": - \"The ID of the content owner linked to the channel.\",\n \"type\": - \"string\"\n },\n \"timeLinked\": {\n \"description\": - \"The date and time when the channel was linked to the content owner.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelContentOwnerDetails\",\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\"\n },\n - \ \"ChannelStatistics\": {\n \"type\": \"object\",\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\",\n \"properties\": {\n \"hiddenSubscriberCount\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the number of subscribers is shown for this user.\"\n },\n \"subscriberCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of subscribers that the channel has.\",\n \"format\": \"uint64\"\n - \ },\n \"viewCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of times the channel has been viewed.\",\n - \ \"type\": \"string\"\n },\n \"videoCount\": {\n \"description\": - \"The number of videos uploaded to the channel.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"commentCount\": - {\n \"description\": \"The number of comments for the channel.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ChannelStatistics\"\n },\n \"InvideoPosition\": - {\n \"properties\": {\n \"type\": {\n \"description\": - \"Defines the position type.\",\n \"enumDescriptions\": [\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"corner\"\n - \ ]\n },\n \"cornerPosition\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"type\": - \"string\",\n \"description\": \"Describes in which corner of the - video the visual widget will appear.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"InvideoPosition\",\n \"description\": \"Describes - the spatial position of a visual widget inside a video. It is a union of various - position types, out of which only will be set one.\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"retractedMessageId\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"I18nRegionListResponse\": {\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"I18nRegion\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of regions where YouTube is - available. In this map, the i18n region ID is the map key, and its value is - the corresponding i18nRegion resource.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#i18nRegionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"I18nRegionListResponse\",\n - \ \"type\": \"object\"\n },\n \"LevelDetails\": {\n \"id\": - \"LevelDetails\",\n \"properties\": {\n \"displayName\": {\n \"description\": - \"The name that should be used when referring to this level.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"SuperChatEventSnippet\": - {\n \"properties\": {\n \"isSuperStickerEvent\": {\n \"type\": - \"boolean\",\n \"description\": \"True if this event is a Super Sticker - event.\"\n },\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the purchase was made. - ISO 4217.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel id where the event occurred.\"\n },\n - \ \"commentText\": {\n \"description\": \"The text contents - of the comment left by the user.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The purchase amount, in micros of - the purchase currency. e.g., 1 is represented as 1000000.\"\n },\n - \ \"displayString\": {\n \"description\": \"A rendered string - that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). The - string is rendered for the given language.\",\n \"type\": \"string\"\n - \ },\n \"supporterDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the supporter.\"\n },\n - \ \"superStickerMetadata\": {\n \"description\": \"If this - event is a Super Sticker event, this field will contain metadata about the - Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n },\n - \ \"createdAt\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"messageType\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The tier for - the paid message, which is based on the amount of money spent to purchase - the message.\"\n }\n },\n \"id\": \"SuperChatEventSnippet\",\n - \ \"type\": \"object\"\n },\n \"CommentThreadSnippet\": {\n \"id\": - \"CommentThreadSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about a comment thread.\",\n \"properties\": {\n \"canReply\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n - \ \"isPublic\": {\n \"description\": \"Whether the thread (and - therefore all its comments) is visible to all YouTube users.\",\n \"type\": - \"boolean\"\n },\n \"totalReplyCount\": {\n \"description\": - \"The total number of replies (not including the top level comment).\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the video the comments - refer to, if any. No video_id implies a channel discussion comment.\"\n },\n - \ \"topLevelComment\": {\n \"description\": \"The top level - comment of this thread.\",\n \"$ref\": \"Comment\"\n }\n }\n - \ },\n \"CommentThreadReplies\": {\n \"description\": \"Comments - written in (direct or indirect) reply to the top level comment.\",\n \"id\": - \"CommentThreadReplies\",\n \"type\": \"object\",\n \"properties\": - {\n \"comments\": {\n \"description\": \"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.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Comment\"\n }\n }\n }\n },\n \"ChannelProfileDetails\": - {\n \"id\": \"ChannelProfileDetails\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"profileImageUrl\": - {\n \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"displayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's display name.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ChannelListResponse\": {\n \"id\": - \"ChannelListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Channel\"\n }\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"default\": \"youtube#channelListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"PlaylistContentDetails\": {\n \"id\": \"PlaylistContentDetails\",\n - \ \"properties\": {\n \"itemCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The number - of videos in the playlist.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"MemberSnippet\": {\n \"id\": \"MemberSnippet\",\n \"type\": - \"object\",\n \"properties\": {\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering memberships.\",\n \"type\": - \"string\"\n },\n \"memberDetails\": {\n \"description\": - \"Details about the member.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"membershipsDetails\": {\n \"$ref\": \"MembershipsDetails\",\n - \ \"description\": \"Details about the user's membership.\"\n }\n - \ }\n },\n \"ChannelToStoreLinkDetails\": {\n \"properties\": - {\n \"storeUrl\": {\n \"description\": \"Landing page of the - store.\",\n \"type\": \"string\"\n },\n \"storeName\": - {\n \"description\": \"Name of the store.\",\n \"type\": - \"string\"\n },\n \"merchantId\": {\n \"description\": - \"Google Merchant Center id of the store.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"id\": \"ChannelToStoreLinkDetails\"\n - \ },\n \"ChannelTopicDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"topicIds\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\"\n },\n - \ \"topicCategories\": {\n \"type\": \"array\",\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"description\": - \"Freebase topic information related to the channel.\",\n \"id\": \"ChannelTopicDetails\"\n - \ },\n \"AbuseType\": {\n \"id\": \"AbuseType\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"TestItem\": {\n \"id\": \"TestItem\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"gaia\": {\n - \ \"type\": \"string\",\n \"format\": \"int64\"\n },\n - \ \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveChatMessageAuthorDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"isChatModerator\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a moderator - of the live chat.\"\n },\n \"isChatOwner\": {\n \"description\": - \"Whether the author is the owner of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"isChatSponsor\": {\n \"description\": - \"Whether the author is a sponsor of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"displayName\": - {\n \"description\": \"The channel's display name.\",\n \"type\": - \"string\"\n },\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube channel ID.\"\n },\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n }\n },\n \"id\": \"LiveChatMessageAuthorDetails\"\n - \ },\n \"ActivityContentDetailsSubscription\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource that the user subscribed to.\"\n }\n },\n - \ \"id\": \"ActivityContentDetailsSubscription\",\n \"description\": - \"Information about a channel that a user subscribed to.\"\n },\n \"PlaylistLocalization\": - {\n \"id\": \"PlaylistLocalization\",\n \"description\": \"Playlist - localization setting\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's description.\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's title.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelSettings\": {\n \"properties\": {\n \"country\": - {\n \"type\": \"string\",\n \"description\": \"The country - of the channel.\"\n },\n \"trackingAnalyticsAccountId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID for a - Google Analytics account to track and measure traffic to the channels.\"\n - \ },\n \"profileColor\": {\n \"description\": \"A prominent - color that can be rendered on this channel page.\",\n \"type\": \"string\"\n - \ },\n \"showBrowseView\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the tab to browse the videos should be - displayed.\"\n },\n \"defaultTab\": {\n \"type\": \"string\",\n - \ \"description\": \"Which content tab users should see when viewing - the channel.\"\n },\n \"featuredChannelsTitle\": {\n \"description\": - \"Title for the featured channels tab.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"Specifies - the channel description.\",\n \"type\": \"string\"\n },\n - \ \"moderateComments\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether user-submitted comments left on the channel page need to be approved - by the channel owner to be publicly visible.\"\n },\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"featuredChannelsUrls\": - {\n \"type\": \"array\",\n \"description\": \"The list of - featured channels.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n },\n \"title\": {\n \"description\": - \"Specifies the channel title.\",\n \"type\": \"string\"\n },\n - \ \"keywords\": {\n \"description\": \"Lists keywords associated - with the channel, comma-separated.\",\n \"type\": \"string\"\n },\n - \ \"unsubscribedTrailer\": {\n \"type\": \"string\",\n \"description\": - \"The trailer of the channel, for users that are not subscribers.\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Branding properties - for the channel view.\",\n \"id\": \"ChannelSettings\"\n },\n \"ContentRating\": - {\n \"id\": \"ContentRating\",\n \"type\": \"object\",\n \"properties\": - {\n \"mpaaRating\": {\n \"enum\": [\n \"mpaaUnspecified\",\n - \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n - \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n - \ \"mpaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\"\n },\n - \ \"mpaatRating\": {\n \"description\": \"The rating system - for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"GB\",\n \"RB\"\n ],\n - \ \"type\": \"string\"\n },\n \"kfcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n - \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n - \ \"kfcbUnrated\"\n ],\n \"description\": \"The - video's rating from the Kenya Film Classification Board.\"\n },\n \"acbRating\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ]\n },\n \"ifcoRating\": {\n \"enum\": [\n - \ \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\",\n \"type\": \"string\"\n - \ },\n \"mccaaRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n - \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n - \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n - \ \"mccaa18\",\n \"mccaaUnrated\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ]\n },\n - \ \"rteRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Ireland's - Raidi\xF3 Teilif\xEDs \xC9ireann.\"\n },\n \"cnaRating\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AP\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"18+\",\n \"\"\n ],\n \"description\": - \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\",\n \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ]\n },\n \"cncRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"description\": \"Rating system - in France - Commission de classification cinematographique\"\n },\n - \ \"mtrcbRating\": {\n \"description\": \"The video's rating - from the Movie and Television Review and Classification Board (Philippines).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ]\n },\n \"oflcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"description\": \"The video's Office of Film and - Literature Classification (OFLC - New Zealand) rating.\",\n \"enum\": - [\n \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n - \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n - \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n - \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n - \ ],\n \"type\": \"string\"\n },\n \"catvRating\": - {\n \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n - \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n - \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n - \ \"catvE\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n - \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"czfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in the Czech - Republic.\"\n },\n \"fpbRating\": {\n \"enum\": [\n - \ \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n - \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n - \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from South Africa's Film and - Publication Board.\"\n },\n \"cicfRating\": {\n \"enum\": - [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"description\": - \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"cceRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from Portugal's - Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ]\n },\n \"mekuRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual - Institute).\",\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ]\n },\n \"rtcRating\": {\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ]\n },\n \"cscfRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Luxembourg's Commission - de surveillance de la classification des films (CSCF).\",\n \"enum\": - [\n \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n - \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"grfilmRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n - \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n - \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n - \ \"grfilmUnrated\"\n ],\n \"description\": \"The - video's rating in Greece.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n - \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n - \ ]\n },\n \"egfilmRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Egypt.\",\n \"enum\": - [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n \"egfilm18\",\n - \ \"egfilmBn\",\n \"egfilmUnrated\"\n ]\n },\n - \ \"mocRating\": {\n \"description\": \"The video's Ministerio - de Cultura (Colombia) rating.\",\n \"enum\": [\n \"mocUnspecified\",\n - \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n - \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ]\n },\n \"fpbRatingReasons\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ]\n },\n - \ \"description\": \"Reasons that explain why the video received its - FPB (South Africa) rating.\"\n },\n \"mcstRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - system for Vietnam - MCST\"\n },\n \"bbfcRating\": {\n \"enum\": - [\n \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's British Board of Film Classification (BBFC) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ]\n },\n \"nfvcbRating\": {\n \"enum\": - [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n \"nfvcbPg\",\n - \ \"nfvcb12\",\n \"nfvcb12a\",\n \"nfvcb15\",\n - \ \"nfvcb18\",\n \"nfvcbRe\",\n \"nfvcbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"18\",\n \"RE\",\n \"\"\n ]\n - \ },\n \"smsaRating\": {\n \"description\": \"The video's - rating from Statens medier\xE5d (Sweden's National Media Council).\",\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"enum\": [\n - \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"kmrbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"enum\": - [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"description\": \"The - video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"type\": \"string\"\n - \ },\n \"mccypRating\": {\n \"description\": \"The video's - rating from the Danish Film Institute's (Det Danske Filminstitut) Media Council - for Children and Young People.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"7\",\n \"11\",\n \"15\",\n - \ \"\"\n ],\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"smaisRating\": {\n \"enum\": [\n - \ \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n - \ \"smais12\",\n \"smais14\",\n \"smais16\",\n - \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\",\n - \ \"type\": \"string\"\n },\n \"chfilmRating\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"0\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ]\n },\n \"mibacRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"description\": \"The - video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali e - del Turismo (Italy).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"cbfcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ],\n \"enum\": [\n - \ \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"description\": \"The video's Central Board of Film - Certification (CBFC - India) rating.\",\n \"type\": \"string\"\n - \ },\n \"eirinRating\": {\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ],\n - \ \"description\": \"The video's Eirin (\u6620\u502B) rating. Eirin - is the Japanese rating system.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG-12\",\n \"R15+\",\n \"R18+\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"agcomRating\": {\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Italy's Autorit\xE0 per - le Garanzie nelle Comunicazioni (AGCOM).\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ]\n },\n \"fcoRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Hong Kong's Office for - Film, Newspaper and Article Administration.\",\n \"enum\": [\n \"fcoUnspecified\",\n - \ \"fcoI\",\n \"fcoIia\",\n \"fcoIib\",\n - \ \"fcoIi\",\n \"fcoIii\",\n \"fcoUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"skfilmRating\": - {\n \"description\": \"The video's rating in Slovakia.\",\n \"type\": - \"string\",\n \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n - \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n - \ \"skfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ]\n },\n \"catvfrRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"8+\",\n \"13+\",\n \"16+\",\n - \ \"18+\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"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.\",\n - \ \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ]\n },\n \"csaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ],\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ],\n \"description\": \"The video's rating from France's - Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\",\n - \ \"type\": \"string\"\n },\n \"icaaRating\": {\n \"enum\": - [\n \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n - \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n - \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - Spain) - rating.\"\n },\n \"medietilsynetRating\": {\n \"enum\": - [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Medietilsynet, - the Norwegian Media Authority.\",\n \"type\": \"string\"\n },\n - \ \"ecbmctRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"7A\",\n \"7+\",\n \"13A\",\n - \ \"13+\",\n \"15A\",\n \"15+\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Rating system in Turkey - Evaluation and Classification Board of the Ministry - of Culture and Tourism\"\n },\n \"rcnofRating\": {\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\",\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"ytRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"ytUnspecified\",\n - \ \"ytAgeRestricted\"\n ],\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\"\n },\n - \ \"nbcRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\",\n - \ \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ]\n },\n \"fcbmRating\": {\n \"enum\": - [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"type\": - \"string\"\n },\n \"cccRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Todo espectador\",\n - \ \"6+ - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n - \ \"18+\",\n \"18+ - contenido excesivamente violento\",\n - \ \"18+ - contenido pornogr\xE1fico\",\n \"\"\n ],\n - \ \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n - \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\"\n - \ },\n \"bmukkRating\": {\n \"description\": \"The video's - rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ]\n },\n \"pefilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"PT\",\n - \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"description\": - \"The video's rating in Peru.\",\n \"type\": \"string\"\n },\n - \ \"incaaRating\": {\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ]\n },\n \"anatelRating\": {\n \"enum\": - [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"description\": \"The video's Anatel - (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\"\n - \ },\n \"djctqRatingReasons\": {\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n - \ \"items\": {\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ]\n },\n \"type\": - \"array\"\n },\n \"chvrsRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Canadian Home Video Rating System - (CHVRS) rating.\",\n \"enum\": [\n \"chvrsUnspecified\",\n - \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n - \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n - \ \"chvrsUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ]\n },\n \"moctwRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ],\n \"enum\": - [\n \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n - \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n - \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\"\n - \ },\n \"nfrcRating\": {\n \"enum\": [\n \"nfrcUnspecified\",\n - \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n - \ \"nfrcX\",\n \"nfrcUnrated\"\n ],\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"ilfilmRating\": {\n \"enum\": [\n - \ \"ilfilmUnspecified\",\n \"ilfilmAa\",\n \"ilfilm12\",\n - \ \"ilfilm14\",\n \"ilfilm16\",\n \"ilfilm18\",\n - \ \"ilfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating in Israel.\"\n },\n \"fmocRating\": {\n \"description\": - \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ],\n \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ]\n },\n \"djctqRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, - Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enum\": - [\n \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n - \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n - \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n - \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n - \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n - \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n - \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n - \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"eefilmRating\": - {\n \"description\": \"The video's rating in Estonia.\",\n \"enumDescriptions\": - [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n - \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n - \ \"K-16\",\n \"\"\n ],\n \"enum\": - [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n \"eefilmL\",\n - \ \"eefilmMs6\",\n \"eefilmK6\",\n \"eefilmMs12\",\n - \ \"eefilmK12\",\n \"eefilmK14\",\n \"eefilmK16\",\n - \ \"eefilmUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"nmcRating\": {\n \"type\": \"string\",\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ],\n - \ \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ]\n },\n \"nkclvRating\": - {\n \"description\": \"The video's rating from the Nacion\xE3lais - Kino centrs (National Film Centre of Latvia).\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n - \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n - \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"lsfRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"enum\": [\n - \ \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"description\": \"The video's rating from Indonesia's - Lembaga Sensor Film.\",\n \"type\": \"string\"\n },\n \"nbcplRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Poland.\",\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"resorteviolenciaRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Venezuela.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"B\",\n \"C\",\n \"D\",\n - \ \"E\",\n \"\"\n ],\n \"enum\": [\n - \ \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ]\n },\n \"mdaRating\": {\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"fskRating\": - {\n \"description\": \"The video's Freiwillige Selbstkontrolle der - Filmwirtschaft (FSK - Germany) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"kijkwijzerRating\": {\n \"description\": \"The - video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de Classificatie - van Audiovisuele Media (Netherlands).\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ]\n },\n \"menaMpaaRating\": - {\n \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\",\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To - keep the same enum values as MPAA's items have, skip NC_17.\"\n ],\n - \ \"type\": \"string\"\n },\n \"tvpgRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ],\n \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n - \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n - \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"description\": \"The - video's TV Parental Guidelines (TVPG) rating.\"\n },\n \"bfvcRating\": - {\n \"description\": \"The video's rating from Thailand's Board of - Film and Video Censors.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ],\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ]\n },\n - \ \"russiaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"0+\",\n \"6+\",\n \"12+\",\n \"16+\",\n - \ \"18+\",\n \"\"\n ],\n \"enum\": - [\n \"russiaUnspecified\",\n \"russia0\",\n \"russia6\",\n - \ \"russia12\",\n \"russia16\",\n \"russia18\",\n - \ \"russiaUnrated\"\n ],\n \"description\": \"The - video's National Film Registry of the Russian Federation (MKRF - Russia) rating.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\"\n },\n \"PlaylistItem\": {\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"properties\": - {\n \"contentDetails\": {\n \"description\": \"The contentDetails - object is included in the resource if the included item is a YouTube video. - The object contains additional information about the video.\",\n \"$ref\": - \"PlaylistItemContentDetails\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the playlist item.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the playlist item's privacy status.\",\n \"$ref\": \"PlaylistItemStatus\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#playlistItem\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"PlaylistItem\"\n - \ },\n \"ChannelBannerResource\": {\n \"type\": \"object\",\n \"properties\": - {\n \"url\": {\n \"type\": \"string\",\n \"description\": - \"The URL of this banner image.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#channelBannerResource\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n - \ }\n },\n \"description\": \"A channel banner returned as - the response to a channel_banner.insert call.\",\n \"id\": \"ChannelBannerResource\"\n - \ },\n \"LiveBroadcastContentDetails\": {\n \"description\": \"Detailed - settings of a broadcast.\",\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"enableClosedCaptions\": - {\n \"description\": \"This setting indicates whether HTTP POST closed - captioning is enabled for this broadcast. The ingestion URL of the closed - captions is returned through the liveStreams API. This is mutually exclusive - with using the closed_captions_type property, and is equivalent to setting - closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n \"type\": - \"boolean\"\n },\n \"projection\": {\n \"enum\": [\n - \ \"projectionUnspecified\",\n \"rectangular\",\n \"360\",\n - \ \"mesh\"\n ],\n \"description\": \"The projection - format of this broadcast. This defaults to rectangular.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"recordFromStart\": - {\n \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\",\n \"type\": \"boolean\"\n },\n \"latencyPreference\": - {\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"type\": \"string\",\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ]\n },\n - \ \"enableContentEncryption\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\"\n },\n \"stereoLayout\": - {\n \"type\": \"string\",\n \"description\": \"The 3D stereo - layout of this broadcast. This defaults to mono.\",\n \"enum\": [\n - \ \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the live stream referenced by boundStreamId was last - updated.\"\n },\n \"enableAutoStop\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - auto stop is enabled for this broadcast. The default value for this property - is false. This setting can only be used by Events.\"\n },\n \"enableAutoStart\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"boundStreamId\": {\n \"description\": \"This value uniquely - identifies the live stream bound to the broadcast.\",\n \"type\": - \"string\"\n },\n \"monitorStream\": {\n \"$ref\": - \"MonitorStreamInfo\",\n \"description\": \"The monitorStream object - contains information about the monitor stream, which the broadcaster can use - to review the event content before the broadcast stream is shown publicly.\"\n - \ },\n \"enableEmbed\": {\n \"description\": \"This - setting indicates whether the broadcast video can be played in an embedded - player. If you choose to archive the video (using the enableArchive property), - this setting will also apply to the archived video.\",\n \"type\": - \"boolean\"\n },\n \"enableLowLatency\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether this broadcast - has low latency enabled.\"\n },\n \"mesh\": {\n \"format\": - \"byte\",\n \"description\": \"The mesh for projecting the video - if projection is mesh. The mesh value must be a UTF-8 string containing the - base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC specification - for an mshp box, excluding the box size and type but including the following - four reserved zero bytes for the version and flags.\",\n \"type\": - \"string\"\n },\n \"closedCaptionsType\": {\n \"enum\": - [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"enableDvr\": {\n \"description\": \"This setting - determines whether viewers can access DVR controls while watching the video. - DVR controls enable the viewer to control the video playback experience by - pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n - \ },\n \"startWithSlate\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\"\n }\n }\n - \ },\n \"LocalizedProperty\": {\n \"properties\": {\n \"localized\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n }\n },\n \"default\": {\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the default property.\",\n \"$ref\": \"LanguageTag\"\n - \ }\n },\n \"id\": \"LocalizedProperty\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsChannelItem\": {\n \"id\": - \"ActivityContentDetailsChannelItem\",\n \"description\": \"Details about - a resource which was added to a channel.\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource that was added to - the channel.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"MemberListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#memberListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"items\": {\n \"description\": \"A list of members - that match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Member\"\n }\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"id\": \"MemberListResponse\"\n },\n \"PageInfo\": - {\n \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\",\n \"id\": \"PageInfo\",\n \"properties\": {\n \"totalResults\": - {\n \"format\": \"int32\",\n \"type\": \"integer\",\n \"description\": - \"The total number of results in the result set.\"\n },\n \"resultsPerPage\": - {\n \"format\": \"int32\",\n \"type\": \"integer\",\n \"description\": - \"The number of results included in the API response.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"properties\": {\n \"gifterChannelId\": {\n \"description\": - \"The ID of the user that made the membership gifting purchase. This matches - the `snippet.authorChannelId` of the associated membership gifting message.\",\n - \ \"type\": \"string\"\n },\n \"memberLevelName\": {\n - \ \"type\": \"string\",\n \"description\": \"The name of - the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ }\n },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"type\": \"object\"\n },\n \"ChannelSnippet\": {\n \"properties\": - {\n \"thumbnails\": {\n \"description\": \"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. When displaying thumbnails in your - application, make sure that your code uses the image URLs exactly as they - are returned in API responses. For example, your application should not use - the http domain instead of the https domain in a URL returned in an API response. - Beginning in July 2018, channel thumbnail URLs will only be available in the - https domain, which is how the URLs appear in API responses. After that time, - you might see broken images in your application if it tries to load YouTube - images from the http domain. Thumbnail images might be empty for newly created - channels and might take up to one day to populate.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n },\n - \ \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"customUrl\": - {\n \"description\": \"The custom url of the channel.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - channel's title.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the channel was created.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"The description - of the channel.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel's default title - and description.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ChannelSnippet\",\n \"description\": - \"Basic details about a channel, including title, description and thumbnails.\"\n - \ },\n \"CommentListResponse\": {\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#commentListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"description\": - \"A list of comments that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"CommentListResponse\",\n \"type\": - \"object\"\n },\n \"VideoTopicDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"Freebase topic information related to the video.\",\n - \ \"id\": \"VideoTopicDetails\",\n \"properties\": {\n \"topicCategories\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of Wikipedia - URLs that provide a high-level description of the video's content.\"\n },\n - \ \"relevantTopicIds\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Similar to topic_id, - except that these topics are merely relevant to the video. These are topics - that may be mentioned in, or appear in the video. You can retrieve information - about each topic using Freebase Topic API.\",\n \"type\": \"array\"\n - \ },\n \"topicIds\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n }\n }\n },\n \"VideoCategory\": {\n \"description\": - \"A *videoCategory* resource identifies a category that has been or could - be associated with uploaded videos.\",\n \"id\": \"VideoCategory\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video category.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#videoCategory\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#videoCategory\"\n },\n - \ \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatSuperChatDetails\": {\n \"properties\": {\n \"amountMicros\": - {\n \"type\": \"string\",\n \"description\": \"The amount - purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": - \"uint64\"\n },\n \"tier\": {\n \"description\": \"The - tier in which the amount belongs. Lower amounts belong to lower tiers. The - lowest tier is 1.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this Super Chat event.\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the purchase was made.\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatSuperChatDetails\",\n - \ \"type\": \"object\"\n },\n \"SearchResultSnippet\": {\n \"type\": - \"object\",\n \"description\": \"Basic details about a search result, - including title, description and thumbnails of the item referenced by the - search result.\",\n \"properties\": {\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The creation date and time of - the resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": \"The value - that YouTube uses to uniquely identify the channel that published the resource - that the search result identifies.\",\n \"type\": \"string\"\n },\n - \ \"liveBroadcastContent\": {\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"description\": \"It indicates if the resource (video - or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" - if there is not any upcoming/active live broadcasts.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"The title of the channel that published the - resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"description\": \"The title of - the search result.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"A description of the search result.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - search result. 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.\"\n }\n },\n \"id\": \"SearchResultSnippet\"\n - \ },\n \"Playlist\": {\n \"description\": \"A *playlist* resource - represents a YouTube playlist. A playlist is a collection of videos that can - be viewed sequentially and shared with other users. A playlist can contain - up to 200 videos, and YouTube does not limit the number of playlists that - each user creates. By default, playlists are publicly visible to other users, - but playlists can be public or private. YouTube also uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#playlist\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlist\\\".\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n },\n \"localizations\": - {\n \"description\": \"Localizations for different languages\",\n - \ \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"type\": \"object\"\n },\n \"player\": - {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": \"The - player object contains information that you would use to play the playlist - in an embedded player.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information like video count.\",\n \"$ref\": - \"PlaylistContentDetails\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\",\n \"$ref\": \"PlaylistSnippet\"\n },\n - \ \"status\": {\n \"$ref\": \"PlaylistStatus\",\n \"description\": - \"The status object contains status information for the playlist.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"Playlist\"\n - \ },\n \"PlaylistStatus\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistStatus\",\n \"properties\": {\n \"privacyStatus\": {\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The playlist's privacy status.\"\n }\n - \ }\n },\n \"LiveChatMessageListResponse\": {\n \"id\": \"LiveChatMessageListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"offlineAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the underlying stream - went offline.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"pollingIntervalMillis\": - {\n \"description\": \"The amount of time the client should wait - before polling again.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveChatMessageListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatMessage\"\n }\n }\n }\n - \ },\n \"LiveStreamContentDetails\": {\n \"properties\": {\n \"isReusable\": - {\n \"description\": \"Indicates whether the stream is reusable, - which means that it can be bound to multiple broadcasts. It is common for - broadcasters to reuse the same stream for many different broadcasts if those - broadcasts occur at different times. If you set this value to false, then - the stream will not be reusable, which means that it can only be bound to - one broadcast. Non-reusable streams differ from reusable streams in the following - ways: - A non-reusable stream can only be bound to one broadcast. - A non-reusable - stream might be deleted by an automated process after the broadcast ends. - - The liveStreams.list method does not list non-reusable streams if you call - the method and set the mine parameter to true. The only way to use that method - to retrieve the resource for a non-reusable stream is to use the id parameter - to identify the stream. \",\n \"type\": \"boolean\"\n },\n - \ \"closedCaptionsIngestionUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The ingestion URL where the closed captions of - this stream are sent.\"\n }\n },\n \"description\": \"Detailed - settings of a stream.\",\n \"id\": \"LiveStreamContentDetails\",\n \"type\": - \"object\"\n },\n \"ResourceId\": {\n \"description\": \"A resource - id is a generic reference that points to another YouTube resource.\",\n \"properties\": - {\n \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"The type of the API resource.\",\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a video. This property - is only present if the resourceId.kind value is youtube#video.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ResourceId\"\n },\n - \ \"I18nLanguage\": {\n \"description\": \"An *i18nLanguage* resource - identifies a UI language currently supported by YouTube.\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n language.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#i18nLanguage\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"I18nLanguage\"\n },\n \"ChannelBrandingSettings\": {\n - \ \"properties\": {\n \"watch\": {\n \"$ref\": \"WatchSettings\",\n - \ \"description\": \"Branding properties for the watch page.\"\n },\n - \ \"image\": {\n \"description\": \"Branding properties for - branding images.\",\n \"$ref\": \"ImageSettings\"\n },\n \"channel\": - {\n \"description\": \"Branding properties for the channel view.\",\n - \ \"$ref\": \"ChannelSettings\"\n },\n \"hints\": {\n - \ \"type\": \"array\",\n \"description\": \"Additional experimental - branding properties.\",\n \"items\": {\n \"$ref\": \"PropertyValue\"\n - \ }\n }\n },\n \"type\": \"object\",\n \"description\": - \"Branding properties of a YouTube channel.\",\n \"id\": \"ChannelBrandingSettings\"\n - \ },\n \"LiveStreamStatus\": {\n \"properties\": {\n \"healthStatus\": - {\n \"$ref\": \"LiveStreamHealthStatus\",\n \"description\": - \"The health status of the stream.\"\n },\n \"streamStatus\": - {\n \"enum\": [\n \"created\",\n \"ready\",\n - \ \"active\",\n \"inactive\",\n \"error\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"id\": \"LiveStreamStatus\",\n - \ \"description\": \"Brief description of the live stream status.\",\n - \ \"type\": \"object\"\n },\n \"LiveChatSuperStickerDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"currency\": - {\n \"description\": \"The currency in which the purchase was made.\",\n - \ \"type\": \"string\"\n },\n \"tier\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n },\n \"superStickerMetadata\": {\n - \ \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n },\n \"amountMicros\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\"\n }\n },\n \"id\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"VideoProcessingDetails\": {\n \"description\": \"Describes - processing status and progress and availability of some other Video resource - parts.\",\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetails\",\n - \ \"properties\": {\n \"processingFailureReason\": {\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ]\n },\n \"tagSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether keyword (tag) suggestions are available for the video. Tags - can be added to a video's metadata to make it easier for other users to find - the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"editorSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether video editing - suggestions, which might improve video quality or the playback experience, - are available for the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingIssuesAvailability\": {\n \"description\": - \"This value indicates whether the video processing engine has generated suggestions - that might improve YouTube's ability to process the the video, warnings that - explain video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\",\n \"type\": \"string\"\n },\n \"processingStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\",\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ]\n },\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n },\n - \ \"processingProgress\": {\n \"description\": \"The processingProgress - object contains information about the progress YouTube has made in processing - the video. The values are really only relevant if the video's processing status - is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"fileDetailsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether file details are - available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\"\n }\n - \ }\n },\n \"LiveChatModeratorListResponse\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatModeratorListResponse\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#liveChatModeratorListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": - \"A list of moderators that match the request criteria.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n }\n },\n \"PlaylistItemListResponse\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistItemListResponse\",\n - \ \"properties\": {\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of playlist - items that match the request criteria.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"PlaylistItem\"\n }\n - \ }\n }\n },\n \"ThirdPartyLink\": {\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the third- party account link.\",\n \"$ref\": - \"ThirdPartyLinkSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#thirdPartyLink\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n },\n \"linkingToken\": - {\n \"type\": \"string\",\n \"description\": \"The linking_token - identifies a YouTube account and channel with which the third party account - is linked.\"\n },\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n - \ \"description\": \"The status object contains information about - the status of the link.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ThirdPartyLink\",\n \"description\": \"A *third party - account link* resource represents a link between a YouTube account or a channel - and an account on a third-party service.\"\n },\n \"InvideoTiming\": - {\n \"id\": \"InvideoTiming\",\n \"type\": \"object\",\n \"properties\": - {\n \"offsetMs\": {\n \"description\": \"Defines the time - at which the promotion will appear. Depending on the value of type the value - of the offsetMs field will represent a time offset from the start or from - the end of the video, expressed in milliseconds.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"description\": \"Describes a timing type. If the - value is offsetFromStart, then the offsetMs field represents an offset from - the start of the video. If the value is offsetFromEnd, then the offsetMs field - represents an offset from the end of the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"durationMs\": {\n \"format\": \"uint64\",\n - \ \"description\": \"Defines the duration in milliseconds for which - the promotion should be displayed. If missing, the client should use the default.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\"\n },\n - \ \"ThirdPartyLinkSnippet\": {\n \"id\": \"ThirdPartyLinkSnippet\",\n - \ \"properties\": {\n \"channelToStoreLink\": {\n \"$ref\": - \"ChannelToStoreLinkDetails\",\n \"description\": \"Information specific - to a link between a channel and a store on a merchandising platform.\"\n },\n - \ \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel with - a store on a merchandising platform in order to enable retail commerce capabilities - for that channel on YouTube.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Type of the link named after the entities that - are being linked.\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ]\n }\n },\n \"description\": - \"Basic information about a third party account link, including its type and - type-specific information.\",\n \"type\": \"object\"\n },\n \"MembershipsDuration\": - {\n \"properties\": {\n \"memberTotalDurationMonths\": {\n \"format\": - \"int32\",\n \"description\": \"The cumulative time the user has - been a member across all levels in complete months (the time is rounded down - to the nearest integer).\",\n \"type\": \"integer\"\n },\n - \ \"memberSince\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the user became a continuous member across all levels.\"\n - \ }\n },\n \"id\": \"MembershipsDuration\",\n \"type\": - \"object\"\n },\n \"SubscriptionListResponse\": {\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of subscriptions that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"Subscription\"\n - \ }\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#subscriptionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"SubscriptionListResponse\",\n - \ \"type\": \"object\"\n },\n \"MonitorStreamInfo\": {\n \"properties\": - {\n \"broadcastStreamDelayMs\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"If you have set the enableMonitorStream property - to true, then this property determines the length of the live broadcast delay.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"embedHtml\": {\n \"description\": \"HTML code that embeds - a player that plays the monitor stream.\",\n \"type\": \"string\"\n - \ },\n \"enableMonitorStream\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"This value determines - whether the monitor stream is enabled for the broadcast. If the monitor stream - is enabled, then YouTube will broadcast the event content on a special stream - intended only for the broadcaster's consumption. The broadcaster can use the - stream to review the event content and also to identify the optimal times - to insert cuepoints. You need to set this value to true if you intend to have - a broadcast delay for your event. *Note:* This property cannot be updated - once the broadcast is in the testing or live state.\",\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Settings and Info of the monitor stream\",\n \"id\": \"MonitorStreamInfo\"\n - \ },\n \"IngestionInfo\": {\n \"description\": \"Describes information - necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"type\": - \"object\",\n \"properties\": {\n \"streamName\": {\n \"description\": - \"The stream name that YouTube assigns to the video stream.\",\n \"type\": - \"string\"\n },\n \"backupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The backup ingestion URL that you - should use to stream video to YouTube. You have the option of simultaneously - streaming the content that you are sending to the ingestionAddress to this - URL.\"\n },\n \"rtmpsIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of ingestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ },\n \"ingestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"The primary ingestion URL that you should use - to stream video to YouTube. You must stream video to this URL. Depending on - which application or tool you use to encode your video stream, you may need - to enter the stream URL and stream name separately or you may need to concatenate - them in the following format: *STREAM_URL/STREAM_NAME* \"\n },\n \"rtmpsBackupIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - backupIngestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"IngestionInfo\"\n },\n \"LiveChatMessageDeletedDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"MembershipsLevelSnippet\": {\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"properties\": {\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n },\n \"levelDetails\": {\n \"$ref\": \"LevelDetails\",\n - \ \"description\": \"Details about the pricing level.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"id\": \"ActivityContentDetailsFavorite\",\n \"type\": - \"object\",\n \"description\": \"Information about a video that was marked - as a favorite video.\"\n },\n \"ChannelSection\": {\n \"id\": \"ChannelSection\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"localizations\": {\n - \ \"type\": \"object\",\n \"description\": \"Localizations - for different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n }\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains details - about the channel section content, such as a list of playlists or channels - featured in the section.\",\n \"$ref\": \"ChannelSectionContentDetails\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"targeting\": {\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#channelSection\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n - \ }\n }\n },\n \"WatchSettings\": {\n \"type\": \"object\",\n - \ \"id\": \"WatchSettings\",\n \"properties\": {\n \"backgroundColor\": - {\n \"description\": \"The text color for the video watch page's - branded area.\",\n \"type\": \"string\"\n },\n \"textColor\": - {\n \"description\": \"The background color for the video watch page's - branded area.\",\n \"type\": \"string\"\n },\n \"featuredPlaylistId\": - {\n \"description\": \"An ID that uniquely identifies a playlist - that displays next to the video player.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Branding properties for the - watch. All deprecated.\"\n },\n \"TokenPagination\": {\n \"description\": - \"Stub token pagination template to suppress results.\",\n \"properties\": - {},\n \"type\": \"object\",\n \"id\": \"TokenPagination\"\n },\n - \ \"CommentSnippetAuthorChannelId\": {\n \"description\": \"The id - of the author's YouTube channel, if any.\",\n \"type\": \"object\",\n - \ \"id\": \"CommentSnippetAuthorChannelId\",\n \"properties\": {\n - \ \"value\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"I18nLanguageListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n - \ },\n \"description\": \"A list of supported i18n languages. - In this map, the i18n language ID is the map key, and its value is the corresponding - i18nLanguage resource.\",\n \"type\": \"array\"\n }\n },\n - \ \"id\": \"I18nLanguageListResponse\"\n },\n \"LiveStreamHealthStatus\": - {\n \"properties\": {\n \"configurationIssues\": {\n \"items\": - {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The configurations - issues on this stream\"\n },\n \"status\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"good\",\n - \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The status code of this stream\"\n },\n \"lastUpdateTimeSeconds\": - {\n \"format\": \"uint64\",\n \"description\": \"The last - time this status was updated (in seconds)\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveStreamHealthStatus\",\n \"type\": - \"object\"\n },\n \"PlaylistItemStatus\": {\n \"type\": \"object\",\n - \ \"description\": \"Information about the playlist item's privacy status.\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"This resource's privacy status.\",\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n }\n },\n \"id\": \"PlaylistItemStatus\"\n - \ },\n \"I18nLanguageSnippet\": {\n \"properties\": {\n \"name\": - {\n \"description\": \"The human-readable name of the language in - the language itself.\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"description\": \"A short BCP-47 code that uniquely identifies - a language.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\",\n \"type\": \"object\",\n \"id\": \"I18nLanguageSnippet\"\n - \ },\n \"CommentThread\": {\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#commentThread\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentThread\\\".\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"replies\": {\n \"$ref\": - \"CommentThreadReplies\",\n \"description\": \"The replies object - contains a limited number of replies (if any) to the top level comment found - in the snippet.\"\n },\n \"snippet\": {\n \"$ref\": - \"CommentThreadSnippet\",\n \"description\": \"The snippet object - contains basic details about the comment thread and also the top level comment.\"\n - \ }\n },\n \"description\": \"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.\",\n \"type\": - \"object\",\n \"id\": \"CommentThread\"\n },\n \"MembershipsLevelListResponse\": - {\n \"id\": \"MembershipsLevelListResponse\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of pricing levels offered by a creator to the fans.\",\n \"items\": - {\n \"$ref\": \"MembershipsLevel\"\n },\n \"type\": - \"array\"\n },\n \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReport\": - {\n \"type\": \"object\",\n \"properties\": {\n \"reasonId\": - {\n \"type\": \"string\",\n \"description\": \"The high-level, - or primary, reason that the content is abusive. The value is an abuse report - reason ID.\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n },\n \"secondaryReasonId\": {\n \"type\": - \"string\",\n \"description\": \"The specific, or secondary, reason - that this content is abusive (if available). The value is an abuse report - reason ID that is a valid secondary reason for the primary reason.\"\n },\n - \ \"comments\": {\n \"type\": \"string\",\n \"description\": - \"Additional comments regarding the abuse report.\"\n },\n \"language\": - {\n \"type\": \"string\",\n \"description\": \"The language - that the content was viewed in.\"\n }\n },\n \"id\": \"VideoAbuseReport\"\n - \ },\n \"CaptionListResponse\": {\n \"id\": \"CaptionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of captions that match the - request criteria.\",\n \"items\": {\n \"$ref\": \"Caption\"\n - \ }\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#captionListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\"\n - \ }\n }\n },\n \"Channel\": {\n \"type\": \"object\",\n - \ \"description\": \"A *channel* resource contains information about a - YouTube channel.\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#channel\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n \"type\": - \"string\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object encapsulates information about the channel's content.\",\n - \ \"$ref\": \"ChannelContentDetails\"\n },\n \"status\": - {\n \"$ref\": \"ChannelStatus\",\n \"description\": \"The - status object encapsulates information about the privacy status of the channel.\"\n - \ },\n \"conversionPings\": {\n \"description\": \"The - conversionPings object encapsulates information about conversion pings that - need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n - \ },\n \"auditDetails\": {\n \"description\": \"The - auditionDetails object encapsulates channel data that is relevant for YouTube - Partners during the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n - \ },\n \"contentOwnerDetails\": {\n \"$ref\": \"ChannelContentOwnerDetails\",\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel.\",\n \"type\": \"string\"\n },\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"ChannelLocalization\"\n },\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\"\n },\n \"statistics\": - {\n \"$ref\": \"ChannelStatistics\",\n \"description\": - \"The statistics object encapsulates statistics for the channel.\"\n },\n - \ \"topicDetails\": {\n \"description\": \"The topicDetails - object encapsulates information about Freebase topics associated with the - channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the channel, such as its title, description, and thumbnail images.\",\n - \ \"$ref\": \"ChannelSnippet\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"brandingSettings\": {\n \"$ref\": - \"ChannelBrandingSettings\",\n \"description\": \"The brandingSettings - object encapsulates information about the branding of the channel.\"\n }\n - \ },\n \"id\": \"Channel\"\n },\n \"ChannelSectionSnippet\": - {\n \"id\": \"ChannelSectionSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\",\n \"type\": \"string\"\n },\n \"style\": - {\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"description\": \"The style of the channel section.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"description\": \"The type of the channel section.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ]\n },\n \"position\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The position - of the channel section in the channel.\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The channel - section's title for multiple_playlists and multiple_channels.\"\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the channel section's default title and description.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized title, read-only.\",\n \"$ref\": \"ChannelSectionLocalization\"\n - \ }\n },\n \"description\": \"Basic details about a channel - section, including title, style and position.\"\n },\n \"VideoLocalization\": - {\n \"type\": \"object\",\n \"id\": \"VideoLocalization\",\n \"description\": - \"Localized versions of certain video properties (e.g. title).\",\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"Localized version of the video's description.\"\n },\n \"title\": - {\n \"description\": \"Localized version of the video's title.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoProjectDetails\": - {\n \"type\": \"object\",\n \"description\": \"DEPRECATED. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"id\": \"VideoProjectDetails\",\n \"properties\": {}\n },\n - \ \"ActivityContentDetailsBulletin\": {\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with a - bulletin post. @mutable youtube.activities.insert\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"Details about a channel bulletin post.\"\n },\n - \ \"LiveBroadcastStatus\": {\n \"description\": \"Live broadcast state.\",\n - \ \"id\": \"LiveBroadcastStatus\",\n \"type\": \"object\",\n \"properties\": - {\n \"recordingStatus\": {\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"type\": - \"string\",\n \"description\": \"The broadcast's recording status.\"\n - \ },\n \"privacyStatus\": {\n \"description\": \"The - broadcast's privacy status. Note that the broadcast represents exactly one - YouTube video, so the privacy settings are identical to those supported for - videos. In addition, you can set this field by modifying the broadcast resource - or by setting the privacyStatus field of the corresponding video resource.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n },\n \"madeForKids\": - {\n \"description\": \"Whether the broadcast is made for kids or - not, decided by YouTube instead of the creator. This field is read only.\",\n - \ \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\",\n \"type\": - \"boolean\"\n },\n \"lifeCycleStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete - settings\",\n \"Visible only to partner, may need special UI treatment\",\n - \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n - \ \"The broadcast is finished.\",\n \"This broadcast - was removed by admin action\",\n \"Transition into TESTING has - been requested\",\n \"Transition into LIVE has been requested\"\n - \ ],\n \"description\": \"The broadcast's status. The status - can be updated using the API's liveBroadcasts.transition method.\"\n },\n - \ \"liveBroadcastPriority\": {\n \"type\": \"string\",\n \"enum\": - [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"description\": - \"Priority of the live broadcast event (internal state).\"\n }\n }\n - \ },\n \"LiveBroadcastStatistics\": {\n \"description\": \"Statistics - about the live broadcast. These represent a snapshot of the values at the - time of the request. Statistics are only returned for live broadcasts.\",\n - \ \"id\": \"LiveBroadcastStatistics\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"concurrentViewers\": {\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"totalChatCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\"\n - \ }\n }\n },\n \"LiveStreamSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The stream's description. The value - cannot be longer than 10000 characters.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is transmitting the stream.\",\n \"type\": \"string\"\n - \ },\n \"isDefaultStream\": {\n \"type\": \"boolean\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the stream was created.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The stream's title. The value must be between - 1 and 128 characters long.\"\n }\n },\n \"id\": \"LiveStreamSnippet\"\n - \ },\n \"ThirdPartyLinkStatus\": {\n \"id\": \"ThirdPartyLinkStatus\",\n - \ \"type\": \"object\",\n \"description\": \"The third-party link - status object contains information about the status of the link.\",\n \"properties\": - {\n \"linkStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ]\n }\n - \ }\n },\n \"VideoListResponse\": {\n \"id\": \"VideoListResponse\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoListResponse\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Video\"\n }\n }\n },\n \"type\": \"object\"\n - \ },\n \"Video\": {\n \"properties\": {\n \"ageGating\": - {\n \"$ref\": \"VideoAgeGating\",\n \"description\": \"Age - restriction details related to a video. This data can only be retrieved by - the video owner.\"\n },\n \"fileDetails\": {\n \"description\": - \"The fileDetails object encapsulates information about the video file that - was uploaded to YouTube, including the file's resolution, duration, audio - and video codecs, stream bitrates, and more. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information about the video content, including the length - of the video and its aspect ratio.\",\n \"$ref\": \"VideoContentDetails\"\n - \ },\n \"recordingDetails\": {\n \"description\": \"The - recordingDetails object encapsulates information about the location, date - and address where the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"processingDetails\": {\n - \ \"description\": \"The processingDetails object encapsulates information - about YouTube's progress in processing the uploaded video file. The properties - in the object identify the current processing status and an estimate of the - time remaining until YouTube finishes processing the video. This part also - indicates whether different types of data or content, such as file details - or thumbnail images, are available for the video. The processingProgress object - is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoProcessingDetails\"\n - \ },\n \"player\": {\n \"$ref\": \"VideoPlayer\",\n - \ \"description\": \"The player object contains information that you - would use to play the video in an embedded player.\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"description\": \"The localizations - object contains localized versions of the basic details about the video, such - as its title and description.\",\n \"additionalProperties\": {\n - \ \"$ref\": \"VideoLocalization\"\n }\n },\n \"suggestions\": - {\n \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoSuggestions\"\n },\n \"monetizationDetails\": - {\n \"$ref\": \"VideoMonetizationDetails\",\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ },\n \"liveStreamingDetails\": {\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n - \ },\n \"projectDetails\": {\n \"description\": \"The - projectDetails object contains information about the project specific video - metadata. b/157517979: This part was never populated after it was added. However, - it sees non-zero traffic because there is generated client code in the wild - that refers to it [1]. We keep this field and do NOT remove it because otherwise - V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"statistics\": - {\n \"$ref\": \"VideoStatistics\",\n \"description\": \"The - statistics object contains statistics about the video.\"\n },\n \"topicDetails\": - {\n \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the video's uploading, processing, and privacy - statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n \"snippet\": - {\n \"$ref\": \"VideoSnippet\",\n \"description\": \"The - snippet object contains basic details about the video, such as its title, - description, and category.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#video\\\".\",\n \"default\": - \"youtube#video\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"Video\",\n \"description\": \"A *video* resource represents a YouTube - video.\"\n },\n \"VideoCategorySnippet\": {\n \"description\": - \"Basic details about a video category, such as its localized title.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"channelId\": - {\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"description\": - \"The YouTube channel that created the video category.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The video category's title.\"\n },\n \"assignable\": - {\n \"type\": \"boolean\"\n }\n },\n \"id\": \"VideoCategorySnippet\"\n - \ },\n \"LiveStreamConfigurationIssue\": {\n \"id\": \"LiveStreamConfigurationIssue\",\n - \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The long-form description of the issue and how - to resolve it.\"\n },\n \"severity\": {\n \"description\": - \"How severe this issue is to the stream.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"type\": {\n \"description\": - \"The kind of error happening.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ]\n },\n - \ \"reason\": {\n \"type\": \"string\",\n \"description\": - \"The short-form reason for this issue.\"\n }\n },\n \"type\": - \"object\"\n },\n \"AbuseReport\": {\n \"properties\": {\n \"abuseTypes\": - {\n \"items\": {\n \"$ref\": \"AbuseType\"\n },\n - \ \"type\": \"array\"\n },\n \"description\": {\n \"type\": - \"string\"\n },\n \"relatedEntities\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n - \ }\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n - \ }\n },\n \"id\": \"AbuseReport\",\n \"type\": \"object\"\n - \ },\n \"Caption\": {\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the caption track.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#caption\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"Caption\",\n - \ \"description\": \"A *caption* resource represents a YouTube caption - track. A caption track is associated with exactly one YouTube video.\",\n - \ \"type\": \"object\"\n },\n \"MembershipsDurationAtLevel\": {\n - \ \"properties\": {\n \"level\": {\n \"description\": - \"Pricing level ID.\",\n \"type\": \"string\"\n },\n \"memberTotalDurationMonths\": - {\n \"format\": \"int32\",\n \"description\": \"The cumulative - time the user has been a member for the given level in complete months (the - time is rounded down to the nearest integer).\",\n \"type\": \"integer\"\n - \ },\n \"memberSince\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the user became a continuous - member for the given level.\"\n }\n },\n \"id\": \"MembershipsDurationAtLevel\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"description\": \"Information about a new playlist item.\",\n \"type\": - \"object\",\n \"properties\": {\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The value that YouTube uses to uniquely - identify the playlist.\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\",\n \"$ref\": \"ResourceId\"\n },\n \"playlistItemId\": - {\n \"type\": \"string\",\n \"description\": \"ID of the - item within the playlist.\"\n }\n },\n \"id\": \"ActivityContentDetailsPlaylistItem\"\n - \ },\n \"CaptionSnippet\": {\n \"id\": \"CaptionSnippet\",\n \"type\": - \"object\",\n \"properties\": {\n \"status\": {\n \"description\": - \"The caption track's status.\",\n \"enum\": [\n \"serving\",\n - \ \"syncing\",\n \"failed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"failureReason\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\",\n \"enum\": - [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ]\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video associated with the caption track. @mutable - youtube.captions.insert\"\n },\n \"isAutoSynced\": {\n \"description\": - \"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.\",\n \"type\": \"boolean\"\n },\n \"audioTrackType\": - {\n \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The type of audio track associated with the caption track.\"\n },\n - \ \"lastUpdated\": {\n \"description\": \"The date and time - when the caption track was last updated.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"isLarge\": {\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\",\n \"type\": \"boolean\"\n },\n - \ \"language\": {\n \"description\": \"The language of the - caption track. The property value is a BCP-47 language tag.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"name\": {\n \"type\": \"string\",\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n }\n - \ },\n \"isCC\": {\n \"description\": \"Indicates whether - the track contains closed captions for the deaf and hard of hearing. The default - value is false.\",\n \"type\": \"boolean\"\n },\n \"isEasyReader\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"isDraft\": {\n \"description\": \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n },\n - \ \"trackKind\": {\n \"enum\": [\n \"standard\",\n - \ \"ASR\",\n \"forced\"\n ],\n \"description\": - \"The caption track's type.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Basic details about a caption - track, such as its language and name.\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"type\": \"object\",\n \"id\": \"VideoFileDetailsVideoStream\",\n - \ \"description\": \"Information about a video stream.\",\n \"properties\": - {\n \"heightPixels\": {\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's height in pixels.\",\n \"type\": \"integer\"\n - \ },\n \"widthPixels\": {\n \"description\": \"The encoded - video content's width in pixels. You can calculate the video's encoding aspect - ratio as width_pixels / height_pixels.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"frameRateFps\": {\n - \ \"format\": \"double\",\n \"description\": \"The video - stream's frame rate, in frames per second.\",\n \"type\": \"number\"\n - \ },\n \"bitrateBps\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The video stream's - bitrate, in bits per second.\"\n },\n \"aspectRatio\": {\n \"format\": - \"double\",\n \"description\": \"The video content's display aspect - ratio, which specifies the aspect ratio in which the video should be displayed.\",\n - \ \"type\": \"number\"\n },\n \"rotation\": {\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ]\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The video codec that the stream uses.\"\n }\n }\n },\n \"LiveChatMessage\": - {\n \"id\": \"LiveChatMessage\",\n \"type\": \"object\",\n \"properties\": - {\n \"authorDetails\": {\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\",\n - \ \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the message.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveChatMessage\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ }\n },\n \"description\": \"A *liveChatMessage* resource - represents a chat message in a YouTube Live Chat.\"\n },\n \"InvideoBranding\": - {\n \"description\": \"LINT.IfChange Describes an invideo branding.\",\n - \ \"id\": \"InvideoBranding\",\n \"type\": \"object\",\n \"properties\": - {\n \"position\": {\n \"$ref\": \"InvideoPosition\",\n \"description\": - \"The spatial position within the video where the branding watermark will - be displayed.\"\n },\n \"timing\": {\n \"$ref\": \"InvideoTiming\",\n - \ \"description\": \"The temporal position within the video where - watermark will be displayed.\"\n },\n \"imageBytes\": {\n \"format\": - \"byte\",\n \"description\": \"The bytes the uploaded image. Only - used in api to youtube communication.\",\n \"type\": \"string\"\n - \ },\n \"targetChannelId\": {\n \"description\": \"The - channel to which this branding links. If not present it defaults to the current - channel.\",\n \"type\": \"string\"\n },\n \"imageUrl\": - {\n \"description\": \"The url of the uploaded image. Only used in - apiary to api communication.\",\n \"type\": \"string\"\n }\n - \ }\n }\n },\n \"auth\": {\n \"oauth2\": {\n \"scopes\": - {\n \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n }\n }\n }\n },\n - \ \"basePath\": \"\",\n \"ownerDomain\": \"google.com\",\n \"name\": \"youtube\",\n - \ \"baseUrl\": \"https://youtube.googleapis.com/\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:39 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UC3ptU7hyNeFlJdvQj2nZHJg&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"UpF0jT1moaxmtck1d7paQFWSaNM\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"MmQwIswQl4m5V4dHxWE6E2cAKh8\",\n \"id\": \"UC3ptU7hyNeFlJdvQj2nZHJg\",\n - \ \"snippet\": {\n \"title\": \"Alex007SC2\",\n \"description\": - \"Alex007 - \u0433\u043E\u043B\u043E\u0441 StarCraft II, \u043C\u0430\u0442\u0435\u043C\u0430\u0442\u0438\u043A, - \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0442\u043E\u0440, YouTube-\u0431\u043B\u043E\u0433\u0433\u0435\u0440 - \u0438 \u0433\u0435\u0439\u043C-\u0434\u0438\u0437\u0430\u0439\u043D\u0435\u0440. - \u041D\u0430 \u044D\u0442\u043E\u043C \u043A\u0430\u043D\u0430\u043B\u0435 - \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043D\u0430\u0439\u0442\u0438 - \u0432\u0441\u0435 \u043B\u0443\u0447\u0448\u0438\u0435 \u0432\u0438\u0434\u0435\u043E - \u043F\u043E StarCraft II \u0438 \u0434\u0440\u0443\u0433\u0438\u043C RTS: - \u043C\u0430\u0442\u0447\u0438 \u043F\u0440\u043E\u0444\u0435\u0441\u0441\u0438\u043E\u043D\u0430\u043B\u043E\u0432, - \u0438\u0433\u0440\u044B \u043E\u0442 \u043F\u0435\u0440\u0432\u043E\u0433\u043E - \u043B\u0438\u0446\u0430 \u0437\u0430 \u0441\u043B\u0443\u0447\u0430\u0439\u043D\u0443\u044E - \u0440\u0430\u0441\u0443, \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0435 - \u043C\u0430\u0442\u0435\u0440\u0438\u0430\u043B\u044B \u0438 \u0441\u043F\u0435\u0446\u0438\u0430\u043B\u044C\u043D\u044B\u0435 - \u0440\u0443\u0431\u0440\u0438\u043A\u0438.\\n\u041B\u0438\u0447\u043D\u044B\u0439 - \u0441\u0430\u0439\u0442: https://clever.press\\n\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0430 - \u0440\u043E\u043B\u0438\u043A\u043E\u0432: https://clever.press/donate\\n\u0425\u0430\u0440\u0430\u043A\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043A\u0438 - \u0440\u0430\u0431\u043E\u0447\u0435\u0433\u043E \u041F\u041A EVOLVE \u0434\u043B\u044F - \u043A\u043E\u043D\u0442\u0435\u043D\u0442\u0430 \u0432 4\u041A: https://clever.press/myPC\\n\",\n - \ \"customUrl\": \"@alex007\",\n \"publishedAt\": \"2011-10-25T18:32:10Z\",\n - \ \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/XRROgwcAhtZPrd7FWz0jLU3b1ii45tmP1SX9BvWrZOFl4iTDKoSruJtK0wm8q4Lf2PlVJmoGTw=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/XRROgwcAhtZPrd7FWz0jLU3b1ii45tmP1SX9BvWrZOFl4iTDKoSruJtK0wm8q4Lf2PlVJmoGTw=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/XRROgwcAhtZPrd7FWz0jLU3b1ii45tmP1SX9BvWrZOFl4iTDKoSruJtK0wm8q4Lf2PlVJmoGTw=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Alex007SC2\",\n \"description\": - \"Alex007 - \u0433\u043E\u043B\u043E\u0441 StarCraft II, \u043C\u0430\u0442\u0435\u043C\u0430\u0442\u0438\u043A, - \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0442\u043E\u0440, YouTube-\u0431\u043B\u043E\u0433\u0433\u0435\u0440 - \u0438 \u0433\u0435\u0439\u043C-\u0434\u0438\u0437\u0430\u0439\u043D\u0435\u0440. - \u041D\u0430 \u044D\u0442\u043E\u043C \u043A\u0430\u043D\u0430\u043B\u0435 - \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043D\u0430\u0439\u0442\u0438 - \u0432\u0441\u0435 \u043B\u0443\u0447\u0448\u0438\u0435 \u0432\u0438\u0434\u0435\u043E - \u043F\u043E StarCraft II \u0438 \u0434\u0440\u0443\u0433\u0438\u043C RTS: - \u043C\u0430\u0442\u0447\u0438 \u043F\u0440\u043E\u0444\u0435\u0441\u0441\u0438\u043E\u043D\u0430\u043B\u043E\u0432, - \u0438\u0433\u0440\u044B \u043E\u0442 \u043F\u0435\u0440\u0432\u043E\u0433\u043E - \u043B\u0438\u0446\u0430 \u0437\u0430 \u0441\u043B\u0443\u0447\u0430\u0439\u043D\u0443\u044E - \u0440\u0430\u0441\u0443, \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0435 - \u043C\u0430\u0442\u0435\u0440\u0438\u0430\u043B\u044B \u0438 \u0441\u043F\u0435\u0446\u0438\u0430\u043B\u044C\u043D\u044B\u0435 - \u0440\u0443\u0431\u0440\u0438\u043A\u0438.\\n\u041B\u0438\u0447\u043D\u044B\u0439 - \u0441\u0430\u0439\u0442: https://clever.press\\n\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0430 - \u0440\u043E\u043B\u0438\u043A\u043E\u0432: https://clever.press/donate\\n\u0425\u0430\u0440\u0430\u043A\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043A\u0438 - \u0440\u0430\u0431\u043E\u0447\u0435\u0433\u043E \u041F\u041A EVOLVE \u0434\u043B\u044F - \u043A\u043E\u043D\u0442\u0435\u043D\u0442\u0430 \u0432 4\u041A: https://clever.press/myPC\\n\"\n - \ },\n \"country\": \"UA\"\n },\n \"brandingSettings\": - {\n \"channel\": {\n \"title\": \"Alex007SC2\",\n \"description\": - \"Alex007 - \u0433\u043E\u043B\u043E\u0441 StarCraft II, \u043C\u0430\u0442\u0435\u043C\u0430\u0442\u0438\u043A, - \u043A\u043E\u043C\u043C\u0435\u043D\u0442\u0430\u0442\u043E\u0440, YouTube-\u0431\u043B\u043E\u0433\u0433\u0435\u0440 - \u0438 \u0433\u0435\u0439\u043C-\u0434\u0438\u0437\u0430\u0439\u043D\u0435\u0440. - \u041D\u0430 \u044D\u0442\u043E\u043C \u043A\u0430\u043D\u0430\u043B\u0435 - \u0432\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u043D\u0430\u0439\u0442\u0438 - \u0432\u0441\u0435 \u043B\u0443\u0447\u0448\u0438\u0435 \u0432\u0438\u0434\u0435\u043E - \u043F\u043E StarCraft II \u0438 \u0434\u0440\u0443\u0433\u0438\u043C RTS: - \u043C\u0430\u0442\u0447\u0438 \u043F\u0440\u043E\u0444\u0435\u0441\u0441\u0438\u043E\u043D\u0430\u043B\u043E\u0432, - \u0438\u0433\u0440\u044B \u043E\u0442 \u043F\u0435\u0440\u0432\u043E\u0433\u043E - \u043B\u0438\u0446\u0430 \u0437\u0430 \u0441\u043B\u0443\u0447\u0430\u0439\u043D\u0443\u044E - \u0440\u0430\u0441\u0443, \u043E\u0431\u0443\u0447\u0430\u044E\u0449\u0438\u0435 - \u043C\u0430\u0442\u0435\u0440\u0438\u0430\u043B\u044B \u0438 \u0441\u043F\u0435\u0446\u0438\u0430\u043B\u044C\u043D\u044B\u0435 - \u0440\u0443\u0431\u0440\u0438\u043A\u0438.\\n\u041B\u0438\u0447\u043D\u044B\u0439 - \u0441\u0430\u0439\u0442: https://clever.press\\n\u041F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0430 - \u0440\u043E\u043B\u0438\u043A\u043E\u0432: https://clever.press/donate\\n\u0425\u0430\u0440\u0430\u043A\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043A\u0438 - \u0440\u0430\u0431\u043E\u0447\u0435\u0433\u043E \u041F\u041A EVOLVE \u0434\u043B\u044F - \u043A\u043E\u043D\u0442\u0435\u043D\u0442\u0430 \u0432 4\u041A: https://clever.press/myPC\\n\",\n - \ \"keywords\": \"\\\"StarCraft 2\\\" Alex007 StarCraft \\\"StarCraft - 3\\\" \u0421\u0442\u0430\u0440\u043A\u0440\u0430\u0444\u0442 \\\"\u0421\u0442\u0430\u0440\u043A\u0440\u0430\u0444\u0442 - 2\\\" \\\"\u0421\u0442\u0430\u0440\u043A\u0440\u0430\u0444\u0442 3\\\" \u0410\u043B\u0435\u043A\u0441007 - \u041A\u0438\u0431\u0435\u0440\u0441\u043F\u043E\u0440\u0442 \u0413\u0435\u0439\u043C\u0438\u043D\u0433 - Esports Gaming \\\"\u0410\u043B\u0435\u043A\u0441 007\\\" \\\"Alex 007\\\" - Straregy \u0421\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u044F RTS \\\"\u0410\u043B\u0435\u043A\u0441\u0435\u0439 - \u0422\u0440\u0443\u0448\u043B\u044F\u043A\u043E\u0432\\\" \\\"Oleksii Trushliakov\\\"\",\n - \ \"unsubscribedTrailer\": \"BbRxLABHw_A\",\n \"country\": - \"UA\"\n },\n \"image\": {\n \"bannerExternalUrl\": - \"https://yt3.googleusercontent.com/PBjLOoFvBS5u0GTtAQpoRfZdPr1FviiGQjwp0FrvFJYbnXiynyG-AdGxDQQSP9MbA6PfvDq-VQ\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:39 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"servicePath\": - \"\",\n \"name\": \"youtube\",\n \"parameters\": {\n \"callback\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"JSONP\"\n },\n \"key\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"fields\": {\n \"location\": - \"query\",\n \"description\": \"Selector specifying which fields to include - in a partial response.\",\n \"type\": \"string\"\n },\n \"access_token\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"OAuth access token.\"\n },\n \"prettyPrint\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"default\": \"true\",\n \"description\": - \"Returns response with indentations and line breaks.\"\n },\n \"$.xgafv\": - {\n \"description\": \"V1 error format.\",\n \"enum\": [\n \"1\",\n - \ \"2\"\n ],\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"v1 error format\",\n \"v2 - error format\"\n ]\n },\n \"alt\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"Responses - with Content-Type of application/json\",\n \"Media download with context-dependent - Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n - \ ],\n \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"default\": \"json\",\n \"description\": \"Data format - for response.\"\n },\n \"quotaUser\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"upload_protocol\": - {\n \"location\": \"query\",\n \"description\": \"Upload protocol - for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": \"string\"\n - \ },\n \"uploadType\": {\n \"location\": \"query\",\n \"description\": - \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n - \ \"type\": \"string\"\n },\n \"oauth_token\": {\n \"location\": - \"query\",\n \"description\": \"OAuth 2.0 token for the current user.\",\n - \ \"type\": \"string\"\n }\n },\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"basePath\": \"\",\n \"ownerName\": \"Google\",\n \"protocol\": \"rest\",\n - \ \"discoveryVersion\": \"v1\",\n \"kind\": \"discovery#restDescription\",\n - \ \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n }\n - \ }\n }\n },\n \"batchPath\": \"batch\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"resources\": {\n \"captions\": {\n \"methods\": {\n \"insert\": - {\n \"parameters\": {\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"part\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the caption resource parts that the API response will - include. Set the parameter value to snippet.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n }\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ],\n - \ \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"104857600\"\n },\n \"id\": \"youtube.captions.insert\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"supportsMediaUpload\": - true\n },\n \"list\": {\n \"parameters\": {\n \"videoId\": - {\n \"description\": \"Returns the captions for the specified - video.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Returns the captions with the - given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"id\": \"youtube.captions.list\",\n \"path\": - \"youtube/v3/captions\",\n \"response\": {\n \"$ref\": - \"CaptionListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\",\n - \ \"videoId\"\n ]\n },\n \"download\": {\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"location\": \"path\",\n \"description\": - \"The ID of the caption track to download, required for One Platform.\",\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\"\n },\n \"tfmt\": - {\n \"location\": \"query\",\n \"description\": - \"Convert the captions into this format. Supported options are sbv, srt, and - vtt.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"tlang\": {\n \"description\": - \"tlang is the language code; machine translate the captions into this language.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Downloads a caption - track.\",\n \"supportsMediaDownload\": true,\n \"path\": - \"youtube/v3/captions/{id}\",\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"id\": - \"youtube.captions.download\",\n \"useMediaDownloadService\": true\n - \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"onBehalfOf\": {\n - \ \"type\": \"string\",\n \"description\": \"ID of - the Google+ Page for the channel that the request is be on behalf of\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n }\n },\n - \ \"update\": {\n \"id\": \"youtube.captions.update\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"required\": true,\n \"repeated\": true\n },\n - \ \"sync\": {\n \"description\": \"Extra parameter - to allow automatically syncing the uploaded caption/transcript with the audio.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"httpMethod\": \"PUT\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ },\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n - \ },\n \"path\": \"youtube/v3/captions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Caption\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"supportsMediaUpload\": true,\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"parameters\": {\n \"mode\": {\n \"location\": - \"query\",\n \"description\": \"Parameter that specifies which - channel members to return.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"enum\": - [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"default\": - \"all_current\"\n },\n \"hasAccessToLevel\": {\n \"type\": - \"string\",\n \"description\": \"Filter members in the results - set to the ones that have access to a level.\",\n \"location\": - \"query\"\n },\n \"filterByMemberChannelId\": {\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"maximum\": \"1000\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"path\": \"youtube/v3/members\",\n \"response\": - {\n \"$ref\": \"MemberListResponse\"\n },\n \"id\": - \"youtube.members.list\",\n \"description\": \"Retrieves a list of - members that match the request criteria for a channel.\",\n \"flatPath\": - \"youtube/v3/members\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"thumbnails\": {\n \"methods\": - {\n \"set\": {\n \"id\": \"youtube.thumbnails.set\",\n \"flatPath\": - \"youtube/v3/thumbnails/set\",\n \"response\": {\n \"$ref\": - \"ThumbnailSetResponse\"\n },\n \"supportsMediaUpload\": - true,\n \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"2097152\",\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n }\n }\n },\n \"parameters\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n }\n - \ },\n \"parameterOrder\": [\n \"videoId\"\n ],\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/thumbnails/set\",\n \"httpMethod\": - \"POST\"\n }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.commentThreads.list\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"parameters\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Returns the comment threads for - all the channel comments (ie does not include comments left on videos).\"\n - \ },\n \"textFormat\": {\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"location\": \"query\",\n - \ \"description\": \"The requested text format for the returned - comments.\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"default\": \"html\",\n \"type\": \"string\"\n - \ },\n \"order\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"orderUnspecified\",\n \"time\",\n - \ \"relevance\"\n ],\n \"default\": - \"time\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ]\n },\n \"videoId\": - {\n \"description\": \"Returns the comment threads of the specified - video.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"default\": \"20\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"type\": \"integer\",\n \"minimum\": - \"1\",\n \"format\": \"uint32\",\n \"maximum\": - \"100\",\n \"location\": \"query\"\n },\n \"moderationStatus\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Limits the returned comment threads to those - with the specified moderation status. Not compatible with the 'id' filter. - Valid values: published, heldForReview, likelySpam.\",\n \"default\": - \"published\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"Returns - the comment threads with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"searchTerms\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Limits the returned comment threads to those - matching the specified key words. Not compatible with the 'id' filter.\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"CommentThreadListResponse\"\n }\n },\n \"insert\": - {\n \"id\": \"youtube.commentThreads.insert\",\n \"httpMethod\": - \"POST\",\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/commentThreads\"\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"I18nLanguageListResponse\"\n },\n \"path\": \"youtube/v3/i18nLanguages\",\n - \ \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.i18nLanguages.list\",\n \"parameters\": - {\n \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"default\": \"en_US\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the i18nLanguage - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n }\n }\n }\n },\n \"channels\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"hl\": {\n \"type\": \"string\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"Return the channels with the specified IDs.\",\n \"type\": - \"string\"\n },\n \"categoryId\": {\n \"location\": - \"query\",\n \"description\": \"Return the channels within the - specified guide category ID.\",\n \"type\": \"string\"\n },\n - \ \"mine\": {\n \"description\": \"Return the ids of - channels owned by the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"forUsername\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the channel associated with a YouTube username.\"\n },\n - \ \"mySubscribers\": {\n \"description\": \"Return - the channels subscribed to the authenticated user\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"managedByMe\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the channels managed by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"maximum\": \"50\",\n - \ \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"default\": \"5\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"id\": \"youtube.channels.list\",\n \"flatPath\": - \"youtube/v3/channels\",\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"ChannelListResponse\"\n },\n \"path\": - \"youtube/v3/channels\"\n },\n \"update\": {\n \"flatPath\": - \"youtube/v3/channels\",\n \"httpMethod\": \"PUT\",\n \"path\": - \"youtube/v3/channels\",\n \"description\": \"Updates an existing - resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"Channel\"\n },\n - \ \"request\": {\n \"$ref\": \"Channel\"\n },\n - \ \"id\": \"youtube.channels.update\"\n }\n }\n },\n - \ \"membershipsLevels\": {\n \"methods\": {\n \"list\": {\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of all pricing levels offered by a creator to the fans.\",\n \"flatPath\": - \"youtube/v3/membershipsLevels\",\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"path\": \"youtube/v3/membershipsLevels\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - membershipsLevel resource parts that the API response will include. Supported - values are id and snippet.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"MembershipsLevelListResponse\"\n }\n }\n }\n },\n - \ \"playlists\": {\n \"methods\": {\n \"insert\": {\n \"id\": - \"youtube.playlists.insert\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"parameters\": {\n - \ \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\"\n },\n \"delete\": - {\n \"path\": \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/playlists\",\n \"description\": - \"Deletes a resource.\"\n },\n \"list\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"id\": {\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return content in specified - language\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the playlists owned by the authenticated user.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"default\": - \"5\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"description\": \"Return the playlists owned by the specified - channel ID.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"PlaylistListResponse\"\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.list\"\n - \ },\n \"update\": {\n \"description\": \"Updates an - existing resource.\",\n \"path\": \"youtube/v3/playlists\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n },\n \"id\": \"youtube.playlists.update\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"default\": \"en-US\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the videoCategory - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"VideoAbuseReportReasonListResponse\"\n },\n \"flatPath\": - \"youtube/v3/videoAbuseReportReasons\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.videoAbuseReportReasons.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\"\n }\n }\n },\n - \ \"channelBanners\": {\n \"methods\": {\n \"insert\": {\n \"flatPath\": - \"youtube/v3/channelBanners/insert\",\n \"request\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"httpMethod\": \"POST\",\n - \ \"mediaUpload\": {\n \"maxSize\": \"6291456\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"supportsMediaUpload\": true,\n \"response\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"id\": \"youtube.channelBanners.insert\",\n - \ \"path\": \"youtube/v3/channelBanners/insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n - \ \"parameters\": {\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Unused, channel_id is currently - derived from the security context of the requestor.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"parameterOrder\": - []\n }\n }\n },\n \"videos\": {\n \"methods\": {\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.videos.insert\",\n \"supportsMediaUpload\": - true,\n \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"path\": \"youtube/v3/videos\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"mediaUpload\": - {\n \"maxSize\": \"274877906944\",\n \"accept\": [\n - \ \"video/*\",\n \"application/octet-stream\"\n ],\n - \ \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/videos\"\n }\n - \ }\n },\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"stabilize\": {\n \"description\": - \"Should stabilize be applied to the upload.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"autoLevels\": - {\n \"location\": \"query\",\n \"description\": - \"Should auto-levels be applied to the upload.\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"notifySubscribers\": {\n \"description\": - \"Notify the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"default\": \"true\"\n }\n }\n - \ },\n \"list\": {\n \"parameters\": {\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"myRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"location\": - \"query\",\n \"description\": \"Return videos liked/disliked - by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\"\n - \ },\n \"part\": {\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"description\": \"Use - a chart that is specific to the specified region\",\n \"location\": - \"query\"\n },\n \"videoCategoryId\": {\n \"default\": - \"0\",\n \"description\": \"Use chart that is specific to the - specified video category\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"locale\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"chart\": - {\n \"location\": \"query\",\n \"description\": - \"Return the videos that are in the specified chart.\",\n \"enum\": - [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ]\n - \ },\n \"maxWidth\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"minimum\": \"72\",\n - \ \"description\": \"Return the player with maximum height specified - in\",\n \"maximum\": \"8192\",\n \"location\": \"query\"\n - \ },\n \"maxHeight\": {\n \"format\": \"int32\",\n - \ \"maximum\": \"8192\",\n \"minimum\": \"72\",\n - \ \"location\": \"query\",\n \"type\": \"integer\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n - \ },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"minimum\": \"1\",\n \"default\": \"5\",\n \"format\": - \"uint32\",\n \"description\": \"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.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"Return videos with the given ids.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"id\": \"youtube.videos.list\",\n - \ \"response\": {\n \"$ref\": \"VideoListResponse\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"path\": \"youtube/v3/videos\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ },\n \"reportAbuse\": {\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [],\n \"description\": \"Report abuse - for a video.\",\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"id\": \"youtube.videos.reportAbuse\",\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\",\n \"request\": {\n \"$ref\": - \"VideoAbuseReport\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n }\n },\n \"delete\": {\n - \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.videos.delete\",\n - \ \"path\": \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n }\n - \ },\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/videos\"\n - \ },\n \"rate\": {\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.videos.rate\",\n \"path\": \"youtube/v3/videos/rate\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Adds a like or dislike rating to - a video or removes a rating from a video.\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"flatPath\": - \"youtube/v3/videos/rate\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n },\n \"rating\": - {\n \"required\": true,\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ]\n - \ }\n }\n },\n \"update\": {\n \"httpMethod\": - \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Video\"\n - \ },\n \"flatPath\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.videos.update\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"path\": \"youtube/v3/videos\"\n },\n \"getRating\": - {\n \"description\": \"Retrieves the ratings that the authorized - user gave to a list of specified videos.\",\n \"id\": \"youtube.videos.getRating\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/videos/getRating\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"VideoGetRatingResponse\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"path\": \"youtube/v3/videos/getRating\"\n - \ }\n }\n },\n \"liveChatBans\": {\n \"methods\": {\n - \ \"delete\": {\n \"description\": \"Deletes a chat ban.\",\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveChatBans.delete\",\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/liveChat/bans\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"insert\": {\n \"request\": {\n \"$ref\": \"LiveChatBan\"\n - \ },\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\"\n }\n }\n - \ },\n \"channelSections\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"mine\": - {\n \"description\": \"Return the ChannelSections owned by the - authenticated user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n },\n \"hl\": - {\n \"description\": \"Return content in specified language\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the ChannelSections owned - by the specified channel ID.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"Return the ChannelSections - with the given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"path\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.channelSections.list\"\n },\n \"insert\": - {\n \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"id\": - \"youtube.channelSections.insert\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/channelSections\"\n },\n \"delete\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"path\": - \"youtube/v3/channelSections\",\n \"description\": \"Deletes a resource.\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.channelSections.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\"\n },\n \"update\": - {\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.channelSections.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"playlistItems\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"maxResults\": - {\n \"location\": \"query\",\n \"minimum\": \"0\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the playlist items associated with the given video ID.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"Return the playlist items within the given playlist.\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlistItems.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"response\": {\n \"$ref\": - \"PlaylistItemListResponse\"\n }\n },\n \"update\": - {\n \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"id\": - \"youtube.playlistItems.update\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"description\": \"Updates an existing resource.\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n }\n },\n \"insert\": - {\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n }\n },\n \"delete\": {\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"id\": \"youtube.playlistItems.delete\",\n \"httpMethod\": - \"DELETE\"\n }\n }\n },\n \"subscriptions\": {\n \"methods\": - {\n \"insert\": {\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/subscriptions\",\n \"id\": - \"youtube.subscriptions.insert\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true\n }\n },\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"request\": - {\n \"$ref\": \"Subscription\"\n },\n \"description\": - \"Inserts a new resource into this collection.\"\n },\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.subscriptions.list\",\n - \ \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"parameters\": {\n \"id\": {\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"myRecentSubscribers\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\",\n \"type\": - \"integer\",\n \"default\": \"5\",\n \"location\": - \"query\",\n \"minimum\": \"0\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"channelId\": - {\n \"description\": \"Return the subscriptions of the given - channel owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"mySubscribers\": {\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"description\": \"Return the subscribers of the - given channel owner.\"\n },\n \"forChannelId\": {\n - \ \"type\": \"string\",\n \"description\": \"Return - the subscriptions to the subset of these channels that the authenticated user - is subscribed to.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"order\": {\n \"default\": - \"relevance\",\n \"description\": \"The order of the returned - subscriptions\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/subscriptions\"\n },\n \"delete\": {\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"id\": \"youtube.subscriptions.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"liveStreams\": {\n \"methods\": {\n - \ \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Deletes an existing stream for - the authenticated user.\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.liveStreams.delete\"\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"id\": - \"youtube.liveStreams.insert\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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, content_details, and status.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"httpMethod\": \"POST\"\n },\n \"list\": {\n \"id\": - \"youtube.liveStreams.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"maxResults\": {\n \"minimum\": \"0\",\n \"type\": - \"integer\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Return - LiveStreams with the given ids from Stubby or Apiary.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"description\": \"Retrieve the list - of streams associated with the given channel. --\",\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n }\n },\n - \ \"update\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"PUT\",\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveStreams.update\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"path\": \"youtube/v3/liveStreams\"\n }\n }\n },\n - \ \"search\": {\n \"methods\": {\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"path\": \"youtube/v3/search\",\n \"description\": - \"Retrieves a list of search resources\",\n \"flatPath\": \"youtube/v3/search\",\n - \ \"id\": \"youtube.search.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"videoSyndicated\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"description\": \"Filter on syndicated videos.\",\n \"location\": - \"query\"\n },\n \"publishedAfter\": {\n \"location\": - \"query\",\n \"description\": \"Filter on resources published - after this date.\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\"\n },\n \"forDeveloper\": {\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"regionCode\": {\n \"description\": - \"Display the content as seen by viewers in this country.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoDuration\": - {\n \"type\": \"string\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"description\": - \"Filter on the duration of the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"location\": \"query\"\n },\n \"location\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on location of the video\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular set of resource types from One Platform.\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n - \ \"publishedBefore\": {\n \"format\": \"google-datetime\",\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on resources published before this - date.\"\n },\n \"videoType\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Filter on videos of a specific type.\",\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on resources belonging to this channelId.\"\n - \ },\n \"videoCategoryId\": {\n \"description\": - \"Filter on videos in a specific category.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"relevanceLanguage\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return results relevant to this language.\"\n - \ },\n \"locationRadius\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on distance from the location (specified above).\"\n },\n - \ \"videoLicense\": {\n \"location\": \"query\",\n - \ \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Filter - on the license of the videos.\"\n },\n \"videoCaption\": - {\n \"description\": \"Filter on the presence of captions on - the videos.\",\n \"location\": \"query\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ],\n \"type\": \"string\"\n - \ },\n \"safeSearch\": {\n \"default\": - \"moderate\",\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ],\n \"location\": \"query\",\n - \ \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"type\": \"string\"\n },\n \"videoEmbeddable\": - {\n \"description\": \"Filter on embeddable videos.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ]\n },\n - \ \"topicId\": {\n \"type\": \"string\",\n \"description\": - \"Restrict results to a particular topic.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"relatedToVideoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Search related to a resource.\"\n },\n - \ \"eventType\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ],\n \"description\": - \"Filter on the livestream status of the videos.\",\n \"location\": - \"query\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n - \ },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"format\": - \"uint32\"\n },\n \"order\": {\n \"location\": - \"query\",\n \"default\": \"relevance\",\n \"description\": - \"Sort order of the results.\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ]\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"videoDefinition\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"description\": \"Filter - on the definition of the videos.\",\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ]\n - \ },\n \"q\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Textual - search terms to match.\"\n },\n \"videoDimension\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"description\": \"Filter - on 3d videos.\",\n \"enumDescriptions\": [\n \"Include - both 3D and non-3D videos in returned results. This is the default value.\",\n - \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict - search results to only include 3D videos.\"\n ]\n },\n - \ \"forMine\": {\n \"description\": \"Search for the - private videos of the authenticated user.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"channelType\": - {\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all channels.\",\n \"Only retrieve - shows.\"\n ],\n \"description\": \"Add a filter - on the channel search.\",\n \"location\": \"query\"\n },\n - \ \"forContentOwner\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Search - owned by a content owner.\"\n }\n }\n }\n }\n - \ },\n \"liveChatMessages\": {\n \"methods\": {\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.liveChatMessages.delete\",\n - \ \"description\": \"Deletes a chat message.\"\n },\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"maximum\": \"2000\",\n \"default\": - \"500\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"minimum\": \"200\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n - \ \"part\": {\n \"description\": \"The *part* parameter - specifies the liveChatComment resource parts that the API response will include. - Supported values are id and snippet.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"repeated\": - true\n },\n \"profileImageSize\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"maximum\": - \"720\",\n \"location\": \"query\",\n \"description\": - \"Specifies the size of the profile image that should be returned for each - user.\",\n \"minimum\": \"16\"\n },\n \"liveChatId\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"The id of the live chat for which comments - should be returned.\",\n \"type\": \"string\"\n },\n - \ \"hl\": {\n \"location\": \"query\",\n \"description\": - \"Specifies the localization language in which the system messages should - be returned.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.liveChatMessages.list\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\"\n },\n \"insert\": {\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"request\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatMessages.insert\",\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"httpMethod\": \"POST\"\n }\n }\n },\n \"comments\": - {\n \"methods\": {\n \"markAsSpam\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"description\": \"Expresses the caller's opinion that one or more - comments should be flagged as spam.\",\n \"id\": \"youtube.comments.markAsSpam\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments/markAsSpam\",\n \"parameters\": - {\n \"id\": {\n \"description\": \"Flags the comments - with the given IDs as spam in the caller's opinion.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n }\n },\n - \ \"update\": {\n \"id\": \"youtube.comments.update\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/comments\",\n \"flatPath\": - \"youtube/v3/comments\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"id\": \"youtube.comments.delete\",\n \"path\": - \"youtube/v3/comments\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/comments\"\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new resource into this collection.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"Comment\"\n - \ },\n \"request\": {\n \"$ref\": \"Comment\"\n - \ },\n \"path\": \"youtube/v3/comments\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.comments.insert\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n }\n },\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"textFormat\": {\n \"location\": \"query\",\n - \ \"enum\": [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"default\": - \"html\",\n \"type\": \"string\",\n \"description\": - \"The requested text format for the returned comments.\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ]\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more comment resource - properties that the API response will include.\",\n \"required\": - true,\n \"repeated\": true\n },\n \"parentId\": - {\n \"description\": \"Returns replies to the specified comment. - Note, currently YouTube features only one level of replies (ie replies to - top level comments). However replies to replies may be supported in the future.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"type\": \"integer\",\n \"default\": \"20\",\n - \ \"maximum\": \"100\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\",\n \"format\": - \"uint32\"\n },\n \"id\": {\n \"repeated\": - true,\n \"description\": \"Returns the comments with the given - IDs for One Platform.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"path\": \"youtube/v3/comments\",\n \"response\": {\n - \ \"$ref\": \"CommentListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.comments.list\"\n },\n \"setModerationStatus\": - {\n \"httpMethod\": \"POST\",\n \"parameters\": {\n \"id\": - {\n \"description\": \"Modifies the moderation status of the - comments with the given IDs\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"banAuthor\": {\n \"location\": - \"query\",\n \"default\": \"false\",\n \"description\": - \"If set to true the author of the comment gets added to the ban list. This - means all future comments of the author will autmomatically be rejected. Only - valid in combination with STATUS_REJECTED.\",\n \"type\": \"boolean\"\n - \ },\n \"moderationStatus\": {\n \"location\": - \"query\",\n \"description\": \"Specifies the requested moderation - status. Note, comments can be in statuses, which are not available through - this call. For example, this call does not allow to mark a comment as 'likely - spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"required\": true,\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ]\n }\n },\n - \ \"description\": \"Sets the moderation status of one or more comments.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"id\": \"youtube.comments.setModerationStatus\",\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\"\n }\n }\n },\n - \ \"tests\": {\n \"methods\": {\n \"insert\": {\n \"response\": - {\n \"$ref\": \"TestItem\"\n },\n \"path\": \"youtube/v3/tests\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"POST method.\",\n - \ \"flatPath\": \"youtube/v3/tests\",\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"id\": \"youtube.tests.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"youtube\": {\n \"resources\": - {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"id\": - \"youtube.youtube.v3.updateCommentThreads\",\n \"httpMethod\": - \"PUT\",\n \"path\": \"youtube/v3/commentThreads\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n - \ },\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"parameterOrder\": [],\n - \ \"description\": \"Updates an existing resource.\"\n }\n - \ }\n }\n }\n },\n \"watermarks\": {\n \"methods\": - {\n \"set\": {\n \"id\": \"youtube.watermarks.set\",\n \"path\": - \"youtube/v3/watermarks/set\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"description\": \"Allows - upload of watermark image and setting it for a channel.\",\n \"request\": - {\n \"$ref\": \"InvideoBranding\"\n },\n \"flatPath\": - \"youtube/v3/watermarks/set\",\n \"supportsMediaUpload\": true,\n - \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\",\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n }\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"unset\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Allows removal - of channel watermark.\",\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.watermarks.unset\"\n }\n - \ }\n },\n \"superChatEvents\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.superChatEvents.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/superChatEvents\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"format\": - \"uint32\"\n },\n \"hl\": {\n \"description\": - \"Return rendered funding amounts in specified language.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the superChatEvent - resource parts that the API response will include. This parameter is currently - not supported.\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/superChatEvents\",\n \"response\": - {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n }\n }\n - \ },\n \"videoCategories\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"flatPath\": - \"youtube/v3/videoCategories\",\n \"parameters\": {\n \"hl\": - {\n \"default\": \"en-US\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Returns the video categories with the given IDs for Stubby or Apiary.\",\n - \ \"repeated\": true\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.videoCategories.list\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"bind\": {\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.bind\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"Bind a broadcast to a stream.\",\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Broadcast to bind to the stream\",\n \"required\": true\n },\n - \ \"streamId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Stream to bind, if not set unbind - the current one.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\"\n - \ },\n \"transition\": {\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"httpMethod\": \"POST\",\n \"description\": - \"Transition a broadcast to a given status.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"broadcastStatus\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"description\": \"The status to which the - broadcast is going to transition.\",\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ]\n },\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Broadcast to transition.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"youtube.liveBroadcasts.transition\",\n \"path\": - \"youtube/v3/liveBroadcasts/transition\",\n \"parameterOrder\": [\n - \ \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"LiveBroadcastListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"broadcastType\": - {\n \"default\": \"event\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"description\": \"Return only - broadcasts with the selected type.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ]\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"maximum\": \"50\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"default\": \"5\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"broadcastStatus\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"description\": \"Return broadcasts - with a certain status, e.g. active broadcasts.\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Return - broadcasts with the given ids from Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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, status and statistics.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"pageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieve - the list of broadcasts associated with the given channel.\",\n \"id\": - \"youtube.liveBroadcasts.list\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n },\n \"insert\": {\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n }\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"description\": - \"Broadcast to delete.\",\n \"required\": true,\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Delete a given broadcast.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"id\": \"youtube.liveBroadcasts.delete\"\n },\n \"update\": - {\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"description\": \"Updates an existing broadcast for the authenticated - user.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.update\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n }\n - \ },\n \"insertCuepoint\": {\n \"request\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"description\": \"Insert cuepoints - in a broadcast\",\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"parameterOrder\": [],\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"parameters\": {\n \"id\": {\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": - true\n }\n }\n }\n }\n },\n \"liveChatModerators\": - {\n \"methods\": {\n \"insert\": {\n \"response\": {\n - \ \"$ref\": \"LiveChatModerator\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"httpMethod\": - \"POST\"\n },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.liveChatModerators.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"description\": \"Deletes - a chat moderator.\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\"\n },\n \"list\": - {\n \"parameters\": {\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"minimum\": \"0\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the liveChatModerator resource parts that - the API response will include. Supported values are id and snippet.\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for which moderators - should be returned.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.liveChatModerators.list\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"response\": {\n \"$ref\": - \"LiveChatModeratorListResponse\"\n },\n \"path\": \"youtube/v3/liveChat/moderators\"\n - \ }\n }\n },\n \"activities\": {\n \"methods\": {\n - \ \"list\": {\n \"path\": \"youtube/v3/activities\",\n \"parameters\": - {\n \"maxResults\": {\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"default\": \"5\",\n \"type\": \"integer\"\n },\n - \ \"home\": {\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\"\n },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"publishedBefore\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"format\": - \"google-datetime\"\n }\n },\n \"flatPath\": - \"youtube/v3/activities\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"id\": \"youtube.activities.list\",\n \"response\": {\n - \ \"$ref\": \"ActivityListResponse\"\n }\n }\n }\n - \ },\n \"thirdPartyLinks\": {\n \"methods\": {\n \"update\": - {\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.thirdPartyLinks.update\",\n \"description\": - \"Updates an existing resource.\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"delete\": - {\n \"id\": \"youtube.thirdPartyLinks.delete\",\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"Do not use. Required - for compatibility.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Type of the link to be deleted.\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ]\n },\n \"linkingToken\": {\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"path\": - \"youtube/v3/thirdPartyLinks\"\n },\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.thirdPartyLinks.insert\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"parameters\": {\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\"\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\"\n },\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.list\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - response will include. Supported values are linkingToken, status, and snippet.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"type\": {\n \"location\": \"query\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"description\": - \"Get a third party link of the given type.\",\n \"type\": \"string\"\n - \ },\n \"linkingToken\": {\n \"location\": - \"query\",\n \"description\": \"Get a third party link with the - given linking token.\",\n \"type\": \"string\"\n }\n - \ }\n }\n }\n },\n \"i18nRegions\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - i18nRegion resource properties that the API response will include. Set the - parameter value to snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"default\": \"en_US\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/i18nRegions\",\n \"path\": \"youtube/v3/i18nRegions\"\n - \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n - \ \"insert\": {\n \"response\": {\n \"$ref\": \"AbuseReport\"\n - \ },\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"id\": \"youtube.abuseReports.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/abuseReports\"\n - \ }\n }\n }\n },\n \"canonicalName\": \"YouTube\",\n \"id\": - \"youtube:v3\",\n \"revision\": \"20230220\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"ownerDomain\": \"google.com\",\n \"title\": \"YouTube Data API v3\",\n - \ \"description\": \"The YouTube Data API v3 is an API that provides access - to YouTube data, such as videos, playlists, and channels.\",\n \"version\": - \"v3\",\n \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"schemas\": {\n \"LevelDetails\": {\n \"properties\": {\n - \ \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The name that should be used when referring to this level.\"\n }\n - \ },\n \"id\": \"LevelDetails\",\n \"type\": \"object\"\n },\n - \ \"ThirdPartyLinkSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"channelToStoreLink\": {\n \"description\": \"Information - specific to a link between a channel and a store on a merchandising platform.\",\n - \ \"$ref\": \"ChannelToStoreLinkDetails\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel with - a store on a merchandising platform in order to enable retail commerce capabilities - for that channel on YouTube.\"\n ],\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"description\": - \"Type of the link named after the entities that are being linked.\"\n }\n - \ },\n \"id\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"Basic information about a third party account link, including its type and - type-specific information.\"\n },\n \"LiveChatModeratorSnippet\": {\n - \ \"properties\": {\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the live chat this moderator can act - on.\"\n },\n \"moderatorDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the moderator.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\"\n - \ },\n \"VideoFileDetailsAudioStream\": {\n \"properties\": {\n - \ \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"codec\": {\n \"description\": - \"The audio codec that the stream uses.\",\n \"type\": \"string\"\n - \ },\n \"channelCount\": {\n \"description\": \"The - number of audio channels that the stream contains.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"bitrateBps\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The audio stream's bitrate, in bits per second.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Information about an - audio stream.\",\n \"id\": \"VideoFileDetailsAudioStream\"\n },\n - \ \"I18nLanguageSnippet\": {\n \"properties\": {\n \"name\": - {\n \"type\": \"string\",\n \"description\": \"The human-readable - name of the language in the language itself.\"\n },\n \"hl\": - {\n \"description\": \"A short BCP-47 code that uniquely identifies - a language.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"I18nLanguageSnippet\",\n \"description\": \"Basic details about an - i18n language, such as language code and human-readable name.\",\n \"type\": - \"object\"\n },\n \"VideoContentDetails\": {\n \"id\": \"VideoContentDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Details about the content - of a YouTube Video.\",\n \"properties\": {\n \"contentRating\": - {\n \"description\": \"Specifies the ratings that the video received - under various rating schemes.\",\n \"$ref\": \"ContentRating\"\n - \ },\n \"duration\": {\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\",\n \"type\": - \"string\"\n },\n \"caption\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"true\",\n \"false\"\n ],\n - \ \"description\": \"The value of captions indicates whether the video - has captions or not.\"\n },\n \"licensedContent\": {\n \"type\": - \"boolean\",\n \"description\": \"The value of is_license_content - indicates whether the video is licensed content.\"\n },\n \"hasCustomThumbnail\": - {\n \"description\": \"Indicates whether the video uploader has provided - a custom thumbnail image for the video. This property is only visible to the - video uploader.\",\n \"type\": \"boolean\"\n },\n \"definition\": - {\n \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"enum\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"description\": \"The value of definition indicates - whether the video is available in high definition or only in standard definition.\",\n - \ \"type\": \"string\"\n },\n \"regionRestriction\": - {\n \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"projection\": - {\n \"description\": \"Specifies the projection format of the video.\",\n - \ \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"dimension\": - {\n \"description\": \"The value of dimension indicates whether the - video is available in 3D or in 2D.\",\n \"type\": \"string\"\n },\n - \ \"countryRestriction\": {\n \"description\": \"The countryRestriction - object contains information about the countries where a video is (or is not) - viewable.\",\n \"$ref\": \"AccessPolicy\"\n }\n }\n },\n - \ \"LiveBroadcastContentDetails\": {\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"Detailed settings of a broadcast.\",\n \"type\": - \"object\",\n \"properties\": {\n \"enableClosedCaptions\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether HTTP POST closed captioning is enabled for this broadcast. - The ingestion URL of the closed captions is returned through the liveStreams - API. This is mutually exclusive with using the closed_captions_type property, - and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n - \ },\n \"mesh\": {\n \"description\": \"The mesh for - projecting the video if projection is mesh. The mesh value must be a UTF-8 - string containing the base-64 encoding of 3D mesh data that follows the Spherical - Video V2 RFC specification for an mshp box, excluding the box size and type - but including the following four reserved zero bytes for the version and flags.\",\n - \ \"type\": \"string\",\n \"format\": \"byte\"\n },\n - \ \"enableAutoStart\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether auto start is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\"\n },\n \"closedCaptionsType\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ]\n },\n \"enableContentEncryption\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - YouTube should enable content encryption for the broadcast.\"\n },\n - \ \"projection\": {\n \"description\": \"The projection format - of this broadcast. This defaults to rectangular.\",\n \"enum\": [\n - \ \"projectionUnspecified\",\n \"rectangular\",\n \"360\",\n - \ \"mesh\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"stereoLayout\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n - \ \"leftRight\",\n \"topBottom\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The 3D stereo layout of this broadcast. - This defaults to mono.\"\n },\n \"boundStreamId\": {\n \"description\": - \"This value uniquely identifies the live stream bound to the broadcast.\",\n - \ \"type\": \"string\"\n },\n \"enableAutoStop\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto stop is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"boundStreamLastUpdateTimeMs\": {\n \"description\": \"The - date and time that the live stream referenced by boundStreamId was last updated.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"enableLowLatency\": {\n \"description\": \"Indicates whether - this broadcast has low latency enabled.\",\n \"type\": \"boolean\"\n - \ },\n \"enableEmbed\": {\n \"description\": \"This - setting indicates whether the broadcast video can be played in an embedded - player. If you choose to archive the video (using the enableArchive property), - this setting will also apply to the archived video.\",\n \"type\": - \"boolean\"\n },\n \"recordFromStart\": {\n \"description\": - \"Automatically start recording after the event goes live. The default value - for this property is true. *Important:* You must also set the enableDvr property's - value to true if you want the playback to be available immediately after the - broadcast ends. If you set this property's value to true but do not also set - the enableDvr property to true, there may be a delay of around one day before - the archived video will be available for playback.\",\n \"type\": - \"boolean\"\n },\n \"startWithSlate\": {\n \"description\": - \"This setting indicates whether the broadcast should automatically begin - with an in-stream slate when you update the broadcast's status to live. After - updating the status, you then need to send a liveCuepoints.insert request - that sets the cuepoint's eventState to end to remove the in-stream slate and - make your broadcast stream visible to viewers.\",\n \"type\": \"boolean\"\n - \ },\n \"enableDvr\": {\n \"description\": \"This setting - determines whether viewers can access DVR controls while watching the video. - DVR controls enable the viewer to control the video playback experience by - pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n - \ },\n \"latencyPreference\": {\n \"description\": \"If - both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Best for: highest quality viewer playbacks - and higher resolutions.\",\n \"Best for: near real-time interaction, - with minimal playback buffering.\",\n \"Best for: real-time interaction - Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n - \ \"type\": \"string\"\n },\n \"monitorStream\": {\n - \ \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\",\n \"$ref\": - \"MonitorStreamInfo\"\n }\n }\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"ChannelStatistics\": {\n \"type\": \"object\",\n \"properties\": - {\n \"commentCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of comments for the channel.\",\n \"type\": \"string\"\n - \ },\n \"hiddenSubscriberCount\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether or not the number of subscribers is shown - for this user.\"\n },\n \"videoCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of videos uploaded to - the channel.\",\n \"format\": \"uint64\"\n },\n \"subscriberCount\": - {\n \"description\": \"The number of subscribers that the channel - has.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"viewCount\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of times the channel - has been viewed.\"\n }\n },\n \"description\": \"Statistics - about a channel: number of subscribers, number of videos in the channel, etc.\",\n - \ \"id\": \"ChannelStatistics\"\n },\n \"ChannelStatus\": {\n \"type\": - \"object\",\n \"description\": \"JSON template for the status part of - a channel.\",\n \"id\": \"ChannelStatus\",\n \"properties\": {\n - \ \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"Privacy status of the channel.\"\n },\n \"longUploadsStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The long uploads status of this channel. See - https://support.google.com/youtube/answer/71673 for more information.\"\n - \ },\n \"isLinked\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n }\n - \ }\n },\n \"ContentRating\": {\n \"id\": \"ContentRating\",\n - \ \"description\": \"Ratings schemes. The country-specific ratings are - mostly for movies and shows. LINT.IfChange\",\n \"properties\": {\n \"catvRating\": - {\n \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n - \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n - \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n - \ \"catvE\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n - \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"eefilmRating\": - {\n \"description\": \"The video's rating in Estonia.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ]\n },\n \"mtrcbRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n - \ \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ]\n },\n \"tvpgRating\": - {\n \"description\": \"The video's TV Parental Guidelines (TVPG) - rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ]\n },\n \"ifcoRating\": - {\n \"description\": \"The video's Irish Film Classification Office - (IFCO - Ireland) rating. See the IFCO website for more information.\",\n \"type\": - \"string\",\n \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n - \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n - \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n - \ \"ifco18\",\n \"ifcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"rcnofRating\": - {\n \"description\": \"The video's rating from the Hungarian Nemzeti - Filmiroda, the Rating Committee of the National Office of Film.\",\n \"enum\": - [\n \"rcnofUnspecified\",\n \"rcnofI\",\n \"rcnofIi\",\n - \ \"rcnofIii\",\n \"rcnofIv\",\n \"rcnofV\",\n - \ \"rcnofVi\",\n \"rcnofUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"rtcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n - \ \"D\",\n \"\"\n ],\n \"enum\": [\n - \ \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ],\n \"description\": \"The - video's General Directorate of Radio, Television and Cinematography (Mexico) - rating.\",\n \"type\": \"string\"\n },\n \"kijkwijzerRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n \"kijkwijzer6\",\n - \ \"kijkwijzer9\",\n \"kijkwijzer12\",\n \"kijkwijzer16\",\n - \ \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - NICAM/Kijkwijzer rating from the Nederlands Instituut voor de Classificatie - van Audiovisuele Media (Netherlands).\"\n },\n \"bfvcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Thailand's Board of Film - and Video Censors.\",\n \"type\": \"string\",\n \"enum\": - [\n \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ]\n },\n \"egfilmRating\": {\n \"description\": - \"The video's rating in Egypt.\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"ecbmctRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ],\n \"description\": - \"Rating system in Turkey - Evaluation and Classification Board of the Ministry - of Culture and Tourism\"\n },\n \"agcomRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ],\n \"description\": \"The video's rating from Italy's - Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ]\n },\n \"fpbRatingReasons\": {\n - \ \"description\": \"Reasons that explain why the video received its - FPB (South Africa) rating.\",\n \"type\": \"array\",\n \"items\": - {\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"South Africa rating content descriptors.\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"fcbmRating\": {\n \"enum\": [\n \"fcbmUnspecified\",\n - \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n - \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n - \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\"\n },\n - \ \"menaMpaaRating\": {\n \"type\": \"string\",\n \"description\": - \"The rating system for MENA countries, a clone of MPAA. It is needed to prevent - titles go live w/o additional QC check, since some of them can be inappropriate - for the countries at all. See b/33408548 for more details.\",\n \"enum\": - [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n - \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"To - keep the same enum values as MPAA's items have, skip NC_17.\"\n ]\n - \ },\n \"nmcRating\": {\n \"description\": \"The National - Media Council ratings system for United Arab Emirates.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n - \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n - \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n - \ ]\n },\n \"chvrsRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ],\n \"enum\": [\n \"chvrsUnspecified\",\n \"chvrsG\",\n - \ \"chvrsPg\",\n \"chvrs14a\",\n \"chvrs18a\",\n - \ \"chvrsR\",\n \"chvrsE\",\n \"chvrsUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\"\n },\n - \ \"mpaaRating\": {\n \"description\": \"The video's Motion - Picture Association of America (MPAA) rating.\",\n \"enum\": [\n - \ \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n - \ \"! X\",\n \"\"\n ]\n },\n \"mcstRating\": - {\n \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n - \ \"description\": \"The video's rating system for Vietnam - MCST\"\n - \ },\n \"fskRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"fskUnspecified\",\n \"fsk0\",\n \"fsk6\",\n - \ \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n \"fskUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"FSK - 0\",\n \"FSK 6\",\n \"FSK 12\",\n \"FSK 16\",\n - \ \"FSK 18\",\n \"\"\n ],\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\"\n },\n \"smaisRating\": {\n \"description\": - \"The video's rating in Iceland.\",\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"icaaRating\": - {\n \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"type\": - \"string\",\n \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ]\n },\n \"ytRating\": {\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"A rating that - YouTube uses to identify age-restricted content.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"eirinRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ],\n - \ \"description\": \"The video's Eirin (\u6620\u502B) rating. Eirin - is the Japanese rating system.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG-12\",\n \"R15+\",\n \"R18+\",\n - \ \"\"\n ]\n },\n \"czfilmRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in the Czech - Republic.\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ]\n },\n - \ \"oflcRating\": {\n \"description\": \"The video's Office - of Film and Literature Classification (OFLC - New Zealand) rating.\",\n \"type\": - \"string\",\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ]\n },\n \"cceRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\"\n },\n \"mibacRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Ministero dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n - \ \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"resorteviolenciaRating\": {\n \"description\": - \"The video's rating in Venezuela.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ],\n \"enum\": - [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ]\n },\n \"skfilmRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating in Slovakia.\",\n - \ \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n - \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n - \ \"skfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ]\n },\n \"kmrbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"enum\": - [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\"\n },\n \"cscfRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\"\n },\n \"nbcRating\": {\n \"enum\": - [\n \"nbcUnspecified\",\n \"nbcG\",\n \"nbcPg\",\n - \ \"nbc12plus\",\n \"nbc15plus\",\n \"nbc18plus\",\n - \ \"nbc18plusr\",\n \"nbcPu\",\n \"nbcUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Maldives - National Bureau of Classification.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"medietilsynetRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Medietilsynet, the Norwegian Media Authority.\",\n \"enum\": - [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"mocRating\": {\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ],\n \"enum\": [\n \"mocUnspecified\",\n \"mocE\",\n - \ \"mocT\",\n \"moc7\",\n \"moc12\",\n \"moc15\",\n - \ \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ]\n },\n \"kfcbRating\": - {\n \"description\": \"The video's rating from the Kenya Film Classification - Board.\",\n \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n - \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n - \ \"kfcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"mccypRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Danish Film Institute's - (Det Danske Filminstitut) Media Council for Children and Young People.\",\n - \ \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ]\n },\n \"lsfRating\": - {\n \"description\": \"The video's rating from Indonesia's Lembaga - Sensor Film.\",\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n - \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n - \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"cbfcRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"U/A\",\n \"U/A 7+\",\n \"U/A - 13+\",\n \"U/A 16+\",\n \"A\",\n \"S\",\n - \ \"\"\n ],\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\"\n - \ },\n \"cccRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Todo espectador\",\n - \ \"6+ - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n - \ \"18+\",\n \"18+ - contenido excesivamente violento\",\n - \ \"18+ - contenido pornogr\xE1fico\",\n \"\"\n ]\n - \ },\n \"djctqRating\": {\n \"description\": \"The video's - Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o e T\xEDtulos - (DJCQT - Brazil) rating.\",\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"nfvcbRating\": - {\n \"description\": \"The video's rating from Nigeria's National - Film and Video Censors Board.\",\n \"type\": \"string\",\n \"enum\": - [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n \"nfvcbPg\",\n - \ \"nfvcb12\",\n \"nfvcb12a\",\n \"nfvcb15\",\n - \ \"nfvcb18\",\n \"nfvcbRe\",\n \"nfvcbUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"18\",\n \"RE\",\n \"\"\n ]\n - \ },\n \"mdaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Singapore's - Media Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\",\n \"type\": \"string\"\n },\n \"chfilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Switzerland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"0\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"chfilmUnspecified\",\n \"chfilm0\",\n \"chfilm6\",\n - \ \"chfilm12\",\n \"chfilm16\",\n \"chfilm18\",\n - \ \"chfilmUnrated\"\n ]\n },\n \"russiaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"description\": \"The video's National Film Registry - of the Russian Federation (MKRF - Russia) rating.\",\n \"type\": - \"string\"\n },\n \"ilfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating in Israel.\",\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ]\n },\n \"cnaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"enum\": - [\n \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n - \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ]\n },\n \"catvfrRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n - \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n - \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"cicfRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n - \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Commission - de Contr\xF4le des Films (Belgium).\",\n \"enumDescriptions\": [\n - \ \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ]\n },\n \"fpbRating\": {\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X18\",\n - \ \"XX\",\n \"\",\n \"10\"\n ],\n - \ \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ]\n },\n \"acbRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n - \ \"description\": \"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.\",\n \"enum\": - [\n \"acbUnspecified\",\n \"acbE\",\n \"acbP\",\n - \ \"acbC\",\n \"acbG\",\n \"acbPg\",\n \"acbM\",\n - \ \"acbMa15plus\",\n \"acbR18plus\",\n \"acbUnrated\"\n - \ ]\n },\n \"mpaatRating\": {\n \"description\": - \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GB\",\n \"RB\"\n ],\n \"enum\": - [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n - \ ]\n },\n \"cncRating\": {\n \"description\": - \"Rating system in France - Commission de classification cinematographique\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"E\",\n \"interdiction\",\n \"\"\n - \ ],\n \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ]\n },\n \"bbfcRating\": {\n \"enum\": [\n - \ \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ],\n \"description\": \"The video's British Board of Film - Classification (BBFC) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ]\n },\n \"mekuRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"description\": - \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti - (National Audiovisual Institute).\",\n \"type\": \"string\"\n },\n - \ \"fmocRating\": {\n \"description\": \"This property has - been deprecated. Use the contentDetails.contentRating.cncRating instead.\",\n - \ \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ]\n },\n \"nkclvRating\": {\n \"enum\": [\n - \ \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n - \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n - \ \"nkclvUnrated\"\n ],\n \"description\": \"The - video's rating from the Nacion\xE3lais Kino centrs (National Film Centre of - Latvia).\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"nfrcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Bulgarian - National Film Center.\"\n },\n \"pefilmRating\": {\n \"enum\": - [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"PT\",\n - \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Peru.\"\n },\n \"incaaRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"ATP (Apta - para todo publico)\",\n \"13 (Solo apta para mayores de 13 a\xF1os)\",\n - \ \"16 (Solo apta para mayores de 16 a\xF1os)\",\n \"18 - (Solo apta para mayores de 18 a\xF1os)\",\n \"X (Solo apta para - mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"description\": \"The video's INCAA (Instituto Nacional - de Cine y Artes Audiovisuales - Argentina) rating.\"\n },\n \"anatelRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ],\n \"enum\": - [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ]\n },\n \"rteRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs - \xC9ireann.\",\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ]\n },\n \"nbcplRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"description\": \"The - video's rating in Poland.\",\n \"type\": \"string\"\n },\n - \ \"bmukkRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n \"bmukk6\",\n - \ \"bmukk8\",\n \"bmukk10\",\n \"bmukk12\",\n - \ \"bmukk14\",\n \"bmukk16\",\n \"bmukkUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Austrian Board of - Media Classification (Bundesministerium f\xFCr Unterricht, Kunst und Kultur).\"\n - \ },\n \"djctqRatingReasons\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"type\": \"string\"\n },\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\"\n - \ },\n \"csaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, - which rates broadcast content.\",\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ]\n },\n \"grfilmRating\": {\n \"description\": - \"The video's rating in Greece.\",\n \"type\": \"string\",\n \"enum\": - [\n \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n - \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n - \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ]\n - \ },\n \"mccaaRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"smsaRating\": {\n \"description\": \"The video's - rating from Statens medier\xE5d (Sweden's National Media Council).\",\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"enum\": [\n - \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"fcoRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Hong Kong's Office for Film, Newspaper and Article Administration.\",\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ]\n - \ },\n \"moctwRating\": {\n \"description\": \"The video's - rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n \"enum\": - [\n \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n - \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n - \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ]\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n \"properties\": - {\n \"blocked\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of region codes that identify - countries where the video is blocked. If this property is present and a country - is not listed in its value, then the video is viewable in that country. If - this property is present and contains an empty list, the video is viewable - in all countries.\",\n \"type\": \"array\"\n },\n \"allowed\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\",\n \"type\": \"array\"\n }\n - \ },\n \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"type\": \"object\"\n },\n \"VideoRecordingDetails\": {\n \"description\": - \"Recording information associated with the video.\",\n \"properties\": - {\n \"recordingDate\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time when the video - was recorded.\"\n },\n \"locationDescription\": {\n \"type\": - \"string\",\n \"description\": \"The text description of the location - where the video was recorded.\"\n },\n \"location\": {\n \"description\": - \"The geolocation information associated with the video.\",\n \"$ref\": - \"GeoPoint\"\n }\n },\n \"id\": \"VideoRecordingDetails\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"id\": \"LiveStreamConfigurationIssue\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The long-form description of the issue and how - to resolve it.\"\n },\n \"type\": {\n \"enum\": [\n - \ \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ],\n \"description\": - \"The kind of error happening.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"reason\": - {\n \"description\": \"The short-form reason for this issue.\",\n - \ \"type\": \"string\"\n },\n \"severity\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"How severe this - issue is to the stream.\",\n \"enum\": [\n \"info\",\n - \ \"warning\",\n \"error\"\n ]\n }\n - \ }\n },\n \"ChannelConversionPing\": {\n \"properties\": {\n - \ \"context\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ],\n \"description\": \"Defines the context of the ping.\",\n - \ \"type\": \"string\"\n },\n \"conversionUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"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.\",\n \"id\": \"ChannelConversionPing\"\n - \ },\n \"ThirdPartyLinkListResponse\": {\n \"properties\": {\n \"items\": - {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ThirdPartyLinkListResponse\",\n \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveBroadcastListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of broadcasts that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"type\": \"array\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n }\n },\n \"id\": \"LiveBroadcastListResponse\"\n - \ },\n \"ChannelSettings\": {\n \"type\": \"object\",\n \"id\": - \"ChannelSettings\",\n \"description\": \"Branding properties for the - channel view.\",\n \"properties\": {\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"unsubscribedTrailer\": - {\n \"type\": \"string\",\n \"description\": \"The trailer - of the channel, for users that are not subscribers.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"showBrowseView\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the tab to browse the videos should be displayed.\"\n },\n \"featuredChannelsUrls\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The list of featured - channels.\"\n },\n \"moderateComments\": {\n \"description\": - \"Whether user-submitted comments left on the channel page need to be approved - by the channel owner to be publicly visible.\",\n \"type\": \"boolean\"\n - \ },\n \"country\": {\n \"description\": \"The country - of the channel.\",\n \"type\": \"string\"\n },\n \"keywords\": - {\n \"type\": \"string\",\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"profileColor\": {\n \"type\": \"string\",\n - \ \"description\": \"A prominent color that can be rendered on this - channel page.\"\n },\n \"defaultTab\": {\n \"type\": - \"string\",\n \"description\": \"Which content tab users should see - when viewing the channel.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the channel description.\"\n - \ },\n \"featuredChannelsTitle\": {\n \"description\": - \"Title for the featured channels tab.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the channel title.\"\n }\n }\n },\n \"I18nLanguageListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"A list of supported - i18n languages. In this map, the i18n language ID is the map key, and its - value is the corresponding i18nLanguage resource.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n - \ }\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"id\": \"I18nLanguageListResponse\",\n \"type\": \"object\"\n - \ },\n \"ChannelConversionPings\": {\n \"id\": \"ChannelConversionPings\",\n - \ \"type\": \"object\",\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"properties\": {\n \"pings\": {\n \"items\": - {\n \"$ref\": \"ChannelConversionPing\"\n },\n \"description\": - \"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.\",\n \"type\": \"array\"\n }\n }\n },\n - \ \"Cuepoint\": {\n \"properties\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The identifier for cuepoint resource.\"\n - \ },\n \"walltimeMs\": {\n \"type\": \"string\",\n \"description\": - \"The wall clock time at which the cuepoint should be inserted. Only one of - insertion_offset_time_ms and walltime_ms may be set at a time.\",\n \"format\": - \"uint64\"\n },\n \"insertionOffsetTimeMs\": {\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\",\n \"format\": \"int64\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"durationSecs\": {\n \"type\": \"integer\",\n - \ \"description\": \"The duration of this cuepoint.\",\n \"format\": - \"uint32\"\n },\n \"cueType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Note that there may be a 5-second end-point resolution - issue. For instance, if a cuepoint comes in for 22:03:27, we may stuff the - cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact of HLS.\",\n - \ \"id\": \"Cuepoint\"\n },\n \"VideoAbuseReport\": {\n \"id\": - \"VideoAbuseReport\",\n \"properties\": {\n \"comments\": {\n - \ \"description\": \"Additional comments regarding the abuse report.\",\n - \ \"type\": \"string\"\n },\n \"language\": {\n \"description\": - \"The language that the content was viewed in.\",\n \"type\": \"string\"\n - \ },\n \"secondaryReasonId\": {\n \"type\": \"string\",\n - \ \"description\": \"The specific, or secondary, reason that this - content is abusive (if available). The value is an abuse report reason ID - that is a valid secondary reason for the primary reason.\"\n },\n \"reasonId\": - {\n \"description\": \"The high-level, or primary, reason that the - content is abusive. The value is an abuse report reason ID.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": - {\n \"type\": \"object\",\n \"description\": \"Live broadcast state.\",\n - \ \"properties\": {\n \"lifeCycleStatus\": {\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's status. The status can be updated - using the API's liveBroadcasts.transition method.\",\n \"enum\": - [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ]\n },\n \"liveBroadcastPriority\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Low priority broadcast: for low view count HoAs or other low - priority broadcasts.\",\n \"Normal priority broadcast: for regular - HoAs and broadcasts.\",\n \"High priority broadcast: for high profile - HoAs, like PixelCorp ones.\"\n ],\n \"description\": \"Priority - of the live broadcast event (internal state).\",\n \"enum\": [\n - \ \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\",\n \"type\": - \"boolean\"\n },\n \"madeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the broadcast is made for kids or not, - decided by YouTube instead of the creator. This field is read only.\"\n },\n - \ \"privacyStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The broadcast's - privacy status. Note that the broadcast represents exactly one YouTube video, - so the privacy settings are identical to those supported for videos. In addition, - you can set this field by modifying the broadcast resource or by setting the - privacyStatus field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"recordingStatus\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"The recording has not yet been started.\",\n \"The - recording is currently on.\",\n \"The recording is completed, and - cannot be started again.\"\n ],\n \"description\": \"The - broadcast's recording status.\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ]\n }\n },\n \"id\": \"LiveBroadcastStatus\"\n - \ },\n \"CaptionListResponse\": {\n \"id\": \"CaptionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"description\": \"A list of captions that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Caption\"\n }\n }\n }\n },\n \"LiveChatSuperStickerDetails\": - {\n \"properties\": {\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n },\n - \ \"amountDisplayString\": {\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\",\n \"type\": - \"string\"\n },\n \"tier\": {\n \"description\": \"The - tier in which the amount belongs. Lower amounts belong to lower tiers. The - lowest tier is 1.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"superStickerMetadata\": {\n \"description\": - \"Information about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"Channel\": {\n \"description\": \"A *channel* resource - contains information about a YouTube channel.\",\n \"type\": \"object\",\n - \ \"id\": \"Channel\",\n \"properties\": {\n \"brandingSettings\": - {\n \"$ref\": \"ChannelBrandingSettings\",\n \"description\": - \"The brandingSettings object encapsulates information about the branding - of the channel.\"\n },\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"ChannelLocalization\"\n },\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\"\n },\n \"status\": - {\n \"description\": \"The status object encapsulates information - about the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object encapsulates statistics for the channel.\",\n \"$ref\": - \"ChannelStatistics\"\n },\n \"auditDetails\": {\n \"$ref\": - \"ChannelAuditDetails\",\n \"description\": \"The auditionDetails - object encapsulates channel data that is relevant for YouTube Partners during - the audition process.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel, such as its - title, description, and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n - \ },\n \"conversionPings\": {\n \"description\": \"The - conversionPings object encapsulates information about conversion pings that - need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"default\": \"youtube#channel\"\n },\n \"contentOwnerDetails\": - {\n \"$ref\": \"ChannelContentOwnerDetails\",\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel.\",\n \"type\": \"string\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object encapsulates information - about the channel's content.\",\n \"$ref\": \"ChannelContentDetails\"\n - \ }\n }\n },\n \"PlaylistStatus\": {\n \"id\": \"PlaylistStatus\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"description\": \"The playlist's privacy status.\",\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"type\": \"object\"\n },\n \"InvideoPosition\": {\n - \ \"description\": \"Describes the spatial position of a visual widget - inside a video. It is a union of various position types, out of which only - will be set one.\",\n \"properties\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"\"\n ],\n \"enum\": [\n \"corner\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Defines the position type.\"\n },\n \"cornerPosition\": {\n - \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ],\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"InvideoPosition\"\n - \ },\n \"VideoStatistics\": {\n \"description\": \"Statistics about - the video, such as the number of times the video was viewed or liked.\",\n - \ \"id\": \"VideoStatistics\",\n \"properties\": {\n \"dislikeCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of users who have indicated that they disliked the video by giving - it a negative rating.\"\n },\n \"viewCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of times the video has been viewed.\"\n },\n \"commentCount\": - {\n \"description\": \"The number of comments for the video.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"favoriteCount\": {\n \"description\": \"The number of users - who currently have the video marked as a favorite video.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"likeCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of users who have indicated that they liked the video by giving it a positive - rating.\",\n \"format\": \"uint64\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoLiveStreamingDetails\": {\n \"description\": - \"Details about the live streaming metadata.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"scheduledEndTime\": {\n \"description\": - \"The time that the broadcast is scheduled to end. If the value is empty or - the property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"actualStartTime\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The time that the broadcast actually - started. This value will not be available until the broadcast begins.\"\n - \ },\n \"concurrentViewers\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\"\n },\n \"actualEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast actually ended. This - value will not be available until the broadcast is over.\"\n },\n \"activeLiveChatId\": - {\n \"description\": \"The ID of the currently active live chat attached - to this video. This field is filled only if the video is a currently live - broadcast that has live chat. Once the broadcast transitions to complete this - field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\",\n \"type\": \"string\"\n - \ },\n \"scheduledStartTime\": {\n \"description\": - \"The time that the broadcast is scheduled to begin.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"VideoLiveStreamingDetails\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"isUpgrade\": - {\n \"type\": \"boolean\",\n \"description\": \"If the viewer - just had upgraded from a lower level. For viewers that were not members at - the time of purchase, this field is false.\"\n },\n \"memberLevelName\": - {\n \"description\": \"The name of the Level that the viewer just - had joined. The Level names are defined by the YouTube channel offering the - Membership. In some situations this field isn't filled.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatNewSponsorDetails\"\n - \ },\n \"ActivityContentDetailsPlaylistItem\": {\n \"description\": - \"Information about a new playlist item.\",\n \"properties\": {\n \"playlistId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n },\n \"playlistItemId\": - {\n \"description\": \"ID of the item within the playlist.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n }\n },\n \"id\": - \"ActivityContentDetailsPlaylistItem\",\n \"type\": \"object\"\n },\n - \ \"PlaylistSnippet\": {\n \"description\": \"Basic details about a - playlist, including title, description and thumbnails.\",\n \"properties\": - {\n \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the playlist - was created.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The playlist's description.\"\n - \ },\n \"thumbnailVideoId\": {\n \"description\": \"Note: - if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel title of the channel that the video - belongs to.\"\n },\n \"title\": {\n \"description\": - \"The playlist's title.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the playlist.\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"The language of the playlist's default title - and description.\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"tags\": {\n \"description\": - \"Keyword tags associated with the playlist.\",\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"PlaylistSnippet\",\n \"type\": \"object\"\n - \ },\n \"VideoSnippet\": {\n \"description\": \"Basic details about - a video, including title, description, uploader, thumbnails and category.\",\n - \ \"properties\": {\n \"tags\": {\n \"description\": \"A - list of keyword tags associated with the video. Tags may contain spaces.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that the video - was uploaded to.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"$ref\": \"VideoLocalization\",\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\"\n - \ },\n \"categoryId\": {\n \"description\": \"The YouTube - video category associated with the video.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"description\": \"The video's - title. @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": - \"string\"\n },\n \"defaultAudioLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The default_audio_language property - specifies the language spoken in the video's default audio track.\"\n },\n - \ \"liveBroadcastContent\": {\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the videos's default snippet.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the video belongs to.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the video. 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.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the video was uploaded.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoSnippet\"\n },\n \"ChannelBrandingSettings\": - {\n \"properties\": {\n \"hints\": {\n \"description\": - \"Additional experimental branding properties.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"PropertyValue\"\n }\n - \ },\n \"channel\": {\n \"$ref\": \"ChannelSettings\",\n - \ \"description\": \"Branding properties for the channel view.\"\n - \ },\n \"watch\": {\n \"description\": \"Branding properties - for the watch page.\",\n \"$ref\": \"WatchSettings\"\n },\n - \ \"image\": {\n \"description\": \"Branding properties for - branding images.\",\n \"$ref\": \"ImageSettings\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Branding properties - of a YouTube channel.\",\n \"id\": \"ChannelBrandingSettings\"\n },\n - \ \"ChannelContentOwnerDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"timeLinked\": {\n \"description\": \"The date and time - when the channel was linked to the content owner.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"contentOwner\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the content owner linked to the channel.\"\n }\n },\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"id\": \"ChannelContentOwnerDetails\"\n - \ },\n \"ChannelContentDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"relatedPlaylists\": {\n \"type\": \"object\",\n \"properties\": - {\n \"watchHistory\": {\n \"description\": \"The ID - of the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n },\n \"watchLater\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\",\n \"type\": \"string\"\n },\n \"likes\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"favorites\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"uploads\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s uploaded videos. Use the videos.insert method to - upload new videos and the videos.delete method to delete previously uploaded - videos.\"\n }\n }\n }\n },\n \"description\": - \"Details about the content of a channel.\",\n \"id\": \"ChannelContentDetails\"\n - \ },\n \"ActivityListResponse\": {\n \"type\": \"object\",\n \"id\": - \"ActivityListResponse\",\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"default\": \"youtube#activityListResponse\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Activity\"\n },\n \"type\": \"array\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"SearchResult\": {\n \"id\": \"SearchResult\",\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"SearchResultSnippet\",\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#searchResult\"\n - \ },\n \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n }\n },\n \"description\": - \"A search result contains information about a YouTube video, channel, or - playlist that matches the search parameters specified in an API request. While - a search result points to a uniquely identifiable resource, like a video, - it does not have its own persistent data.\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"id\": \"ActivityContentDetailsUpload\",\n \"properties\": - {\n \"videoId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the uploaded video.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Information about the uploaded - video.\",\n \"type\": \"object\"\n },\n \"ChannelSection\": {\n - \ \"type\": \"object\",\n \"id\": \"ChannelSection\",\n \"properties\": - {\n \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"type\": \"object\",\n - \ \"description\": \"Localizations for different languages\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelSection\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"targeting\": {\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\",\n \"$ref\": - \"ChannelSectionTargeting\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ChannelSectionContentDetails\",\n \"description\": \"The contentDetails - object contains details about the channel section content, such as a list - of playlists or channels featured in the section.\"\n }\n }\n - \ },\n \"VideoListResponse\": {\n \"properties\": {\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Video\"\n }\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ },\n \"id\": \"VideoListResponse\",\n \"type\": \"object\"\n - \ },\n \"CommentSnippet\": {\n \"properties\": {\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the comment was originally - published.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"moderationStatus\": - {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"type\": \"string\"\n },\n \"canRate\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the current viewer can rate this comment.\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"parentId\": - {\n \"type\": \"string\",\n \"description\": \"The unique - id of the parent comment, only set for replies.\"\n },\n \"likeCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The total number of likes this comment has received.\"\n },\n \"textDisplay\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"The ID of the video the comment refers to, - if any.\",\n \"type\": \"string\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"viewerRating\": {\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ]\n - \ },\n \"updatedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the comment was last updated.\",\n - \ \"type\": \"string\"\n },\n \"authorDisplayName\": - {\n \"description\": \"The name of the user who posted the comment.\",\n - \ \"type\": \"string\"\n },\n \"textOriginal\": {\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"CommentSnippet\",\n \"description\": \"Basic details - about a comment, such as its author and text.\"\n },\n \"ChannelLocalization\": - {\n \"id\": \"ChannelLocalization\",\n \"description\": \"Channel - localization setting\",\n \"type\": \"object\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The localized strings - for channel's title.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel's description.\"\n }\n }\n },\n \"VideoAbuseReportReason\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#videoAbuseReportReason\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the abuse report reason.\",\n \"$ref\": - \"VideoAbuseReportReasonSnippet\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID of this abuse report reason.\"\n - \ }\n },\n \"id\": \"VideoAbuseReportReason\",\n \"description\": - \"A `__videoAbuseReportReason__` resource identifies a reason that a video - could be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\"\n - \ },\n \"SearchListResponse\": {\n \"id\": \"SearchListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#searchListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"regionCode\": {\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"Pagination - information for token pagination.\",\n \"items\": {\n \"$ref\": - \"SearchResult\"\n },\n \"type\": \"array\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ }\n },\n \"VideoSuggestionsTagSuggestion\": {\n \"properties\": - {\n \"categoryRestricts\": {\n \"type\": \"array\",\n \"description\": - \"A set of video categories for which the tag is relevant. You can use this - information to display appropriate tag suggestions based on the video category - that the video uploader associates with the video. By default, tag suggestions - are relevant for all categories if there are no restricts defined for the - keyword.\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"tag\": {\n \"type\": \"string\",\n \"description\": - \"The keyword tag suggested for the video.\"\n }\n },\n \"description\": - \"A single tag suggestion with it's relevance information.\",\n \"id\": - \"VideoSuggestionsTagSuggestion\",\n \"type\": \"object\"\n },\n \"SubscriptionListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Subscription\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of subscriptions that match the request criteria.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#subscriptionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"SubscriptionListResponse\",\n - \ \"type\": \"object\"\n },\n \"LocalizedString\": {\n \"type\": - \"object\",\n \"id\": \"LocalizedString\",\n \"properties\": {\n - \ \"value\": {\n \"type\": \"string\"\n },\n \"language\": - {\n \"type\": \"string\"\n }\n }\n },\n \"MembershipsDuration\": - {\n \"type\": \"object\",\n \"properties\": {\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member across all levels.\",\n \"type\": \"string\"\n },\n - \ \"memberTotalDurationMonths\": {\n \"description\": \"The - cumulative time the user has been a member across all levels in complete months - (the time is rounded down to the nearest integer).\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n }\n },\n \"id\": - \"MembershipsDuration\"\n },\n \"ThirdPartyLinkStatus\": {\n \"type\": - \"object\",\n \"id\": \"ThirdPartyLinkStatus\",\n \"properties\": - {\n \"linkStatus\": {\n \"enum\": [\n \"unknown\",\n - \ \"failed\",\n \"pending\",\n \"linked\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"description\": \"The third-party - link status object contains information about the status of the link.\"\n - \ },\n \"VideoCategoryListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoCategoryListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"A list of video - categories that can be associated with YouTube videos. In this map, the video - category ID is the map key, and its value is the corresponding videoCategory - resource.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoCategory\"\n }\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoCategoryListResponse\"\n - \ },\n \"VideoFileDetails\": {\n \"id\": \"VideoFileDetails\",\n - \ \"description\": \"Describes original video file properties, including - technical details about audio and video streams, but also metadata information - like content length, digitization time, or geotagging information.\",\n \"type\": - \"object\",\n \"properties\": {\n \"videoStreams\": {\n \"type\": - \"array\",\n \"description\": \"A list of video streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about a video stream.\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ }\n },\n \"durationMs\": {\n \"description\": - \"The length of the uploaded video in milliseconds.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"fileType\": - {\n \"enumDescriptions\": [\n \"Known video file (e.g., - an MP4 file).\",\n \"Audio only file (e.g., an MP3 file).\",\n - \ \"Image file (e.g., a JPEG image).\",\n \"Archive file - (e.g., a ZIP archive).\",\n \"Document or text file (e.g., MS Word - document).\",\n \"Movie project file (e.g., Microsoft Windows Movie - Maker project).\",\n \"Other non-video file type.\"\n ],\n - \ \"description\": \"The uploaded file's type as detected by YouTube's - video processing engine. Currently, YouTube only processes video files, but - this field is present whether a video file or another type of file was uploaded.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ]\n },\n \"fileSize\": {\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"bitrateBps\": {\n - \ \"description\": \"The uploaded video file's combined (video and - audio) bitrate in bits per second.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"fileName\": {\n \"type\": \"string\",\n - \ \"description\": \"The uploaded file's name. This field is present - whether a video file or another type of file was uploaded.\"\n },\n - \ \"audioStreams\": {\n \"description\": \"A list of audio - streams contained in the uploaded video file. Each item in the list contains - detailed metadata about an audio stream.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ }\n },\n \"creationTime\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the uploaded - video file was created. The value is specified in ISO 8601 format. Currently, - the following ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive - time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \"\n },\n \"container\": {\n \"description\": \"The - uploaded video file's container format.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoFileDetailsVideoStream\": {\n \"properties\": - {\n \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The video codec that the stream uses.\"\n },\n \"aspectRatio\": - {\n \"description\": \"The video content's display aspect ratio, - which specifies the aspect ratio in which the video should be displayed.\",\n - \ \"format\": \"double\",\n \"type\": \"number\"\n },\n - \ \"rotation\": {\n \"description\": \"The amount that YouTube - needs to rotate the original source content to properly display the video.\",\n - \ \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"heightPixels\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The encoded video content's height in pixels.\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n },\n \"bitrateBps\": {\n \"format\": - \"uint64\",\n \"description\": \"The video stream's bitrate, in bits - per second.\",\n \"type\": \"string\"\n },\n \"frameRateFps\": - {\n \"description\": \"The video stream's frame rate, in frames per - second.\",\n \"type\": \"number\",\n \"format\": \"double\"\n - \ },\n \"widthPixels\": {\n \"description\": \"The encoded - video content's width in pixels. You can calculate the video's encoding aspect - ratio as width_pixels / height_pixels.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoFileDetailsVideoStream\",\n \"description\": \"Information - about a video stream.\"\n },\n \"ChannelBannerResource\": {\n \"id\": - \"ChannelBannerResource\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n - \ \"default\": \"youtube#channelBannerResource\"\n },\n \"etag\": - {\n \"type\": \"string\"\n },\n \"url\": {\n \"type\": - \"string\",\n \"description\": \"The URL of this banner image.\"\n - \ }\n },\n \"description\": \"A channel banner returned as - the response to a channel_banner.insert call.\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"deletedMessageId\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"MemberListResponse\": {\n \"id\": \"MemberListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#memberListResponse\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Member\"\n },\n - \ \"description\": \"A list of members that match the request criteria.\"\n - \ }\n }\n },\n \"ActivityContentDetailsComment\": {\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource associated with the comment.\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsComment\",\n \"description\": - \"Information about a resource that received a comment.\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"properties\": {\n \"giftMembershipsLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the level of the gift - memberships purchased by the user. The Level names are defined by the YouTube - channel offering the Membership. In some situations this field isn't filled.\"\n - \ },\n \"giftMembershipsCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"description\": \"The number - of gift memberships purchased by the user.\"\n }\n }\n },\n - \ \"ChannelSectionLocalization\": {\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel section's title.\"\n }\n },\n \"description\": - \"ChannelSection localization setting\",\n \"id\": \"ChannelSectionLocalization\",\n - \ \"type\": \"object\"\n },\n \"ImageSettings\": {\n \"type\": - \"object\",\n \"id\": \"ImageSettings\",\n \"description\": \"Branding - properties for images associated with the channel.\",\n \"properties\": - {\n \"watchIconImageUrl\": {\n \"type\": \"string\"\n },\n - \ \"bannerTabletLowImageUrl\": {\n \"description\": \"Banner - image. Tablet size low resolution (1138x188).\",\n \"type\": \"string\"\n - \ },\n \"bannerTabletExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size extra - high resolution (2560x424).\"\n },\n \"trackingImageUrl\": {\n - \ \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 640px by 70px banner image - that appears below the video player in the default view of the video watch - page. The URL for the image that appears above the top-left corner of the - video player. This is a 25-pixel-high image with a flexible width that cannot - exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerTvHighImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. TV size high resolution (1920x1080).\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"bannerExternalUrl\": - {\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"bannerImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Desktop size (1060x175).\"\n },\n - \ \"smallBrandedBannerImageImapScript\": {\n \"description\": - \"The image map script for the small banner image.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerMobileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size (640x175).\"\n - \ },\n \"largeBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 854px - by 70px image that appears below the video player in the expanded video view - of the video watch page.\"\n },\n \"backgroundImageUrl\": {\n - \ \"$ref\": \"LocalizedProperty\",\n \"description\": \"The - URL for the background image shown on the video watch page. The image should - be 1200px by 615px, with a maximum file size of 128k.\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size medium resolution (1280x720).\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerTabletImageUrl\": - {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1280x360).\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size low resolution (854x480).\"\n },\n \"bannerTvImageUrl\": - {\n \"description\": \"Banner image. TV size extra high resolution - (2120x1192).\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ActivityContentDetailsFavorite\": {\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource that was marked as - a favorite.\"\n }\n },\n \"description\": \"Information about - a video that was marked as a favorite video.\",\n \"id\": \"ActivityContentDetailsFavorite\",\n - \ \"type\": \"object\"\n },\n \"MembershipsLevel\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the memberships level.\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#membershipsLevel\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ }\n },\n \"description\": \"A *membershipsLevel* resource - represents an offer made by YouTube creators for their fans. Users can become - members of the channel by joining one of the available levels. They will provide - recurring monetary support and receives special benefits.\",\n \"id\": - \"MembershipsLevel\",\n \"type\": \"object\"\n },\n \"CommentListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"items\": {\n \"description\": - \"A list of comments that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"type\": \"array\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"CommentListResponse\",\n - \ \"type\": \"object\"\n },\n \"VideoAgeGating\": {\n \"id\": - \"VideoAgeGating\",\n \"properties\": {\n \"restricted\": {\n - \ \"description\": \"Age-restricted trailers. For redband trailers - and adult-rated video-games. Only users aged 18+ can view the content. The - the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\",\n \"type\": \"boolean\"\n },\n - \ \"videoGameRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"Video game rating, if any.\",\n \"enum\": [\n \"anyone\",\n - \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n - \ ],\n \"type\": \"string\"\n },\n \"alcoholContent\": - {\n \"description\": \"Indicates whether or not the video has alcoholic - beverage content. Only users of legal purchasing age in a particular country, - as identified by ICAP, can view the content.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ResourceId\": - {\n \"description\": \"A resource id is a generic reference that points - to another YouTube resource.\",\n \"id\": \"ResourceId\",\n \"type\": - \"object\",\n \"properties\": {\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a playlist. This property - is only present if the resourceId.kind value is youtube#playlist.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"The type of the API resource.\"\n },\n \"channelId\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the referred resource, if that resource is a channel. This property is only - present if the resourceId.kind value is youtube#channel.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"I18nLanguage\": {\n \"id\": \"I18nLanguage\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n \"default\": - \"youtube#i18nLanguage\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n language.\"\n }\n - \ },\n \"description\": \"An *i18nLanguage* resource identifies a - UI language currently supported by YouTube.\",\n \"type\": \"object\"\n - \ },\n \"ThumbnailDetails\": {\n \"properties\": {\n \"high\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The high - quality image for this resource.\"\n },\n \"standard\": {\n - \ \"$ref\": \"Thumbnail\",\n \"description\": \"The standard - quality image for this resource.\"\n },\n \"medium\": {\n \"description\": - \"The medium quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The default image for this resource.\"\n },\n \"maxres\": - {\n \"description\": \"The maximum resolution quality image for this - resource.\",\n \"$ref\": \"Thumbnail\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ThumbnailDetails\",\n \"description\": \"Internal - representation of thumbnails for a YouTube resource.\"\n },\n \"MonitorStreamInfo\": - {\n \"type\": \"object\",\n \"properties\": {\n \"broadcastStreamDelayMs\": - {\n \"format\": \"uint32\",\n \"description\": \"If you - have set the enableMonitorStream property to true, then this property determines - the length of the live broadcast delay.\",\n \"type\": \"integer\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"embedHtml\": {\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\",\n \"type\": - \"string\"\n },\n \"enableMonitorStream\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"This value determines - whether the monitor stream is enabled for the broadcast. If the monitor stream - is enabled, then YouTube will broadcast the event content on a special stream - intended only for the broadcaster's consumption. The broadcaster can use the - stream to review the event content and also to identify the optimal times - to insert cuepoints. You need to set this value to true if you intend to have - a broadcast delay for your event. *Note:* This property cannot be updated - once the broadcast is in the testing or live state.\",\n \"type\": - \"boolean\"\n }\n },\n \"description\": \"Settings and Info - of the monitor stream\",\n \"id\": \"MonitorStreamInfo\"\n },\n \"IngestionInfo\": - {\n \"id\": \"IngestionInfo\",\n \"description\": \"Describes information - necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"properties\": - {\n \"backupIngestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\"\n - \ },\n \"rtmpsBackupIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of backupIngestionAddress in order - to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": - \"string\"\n },\n \"rtmpsIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\"\n },\n \"ingestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The primary ingestion URL that you - should use to stream video to YouTube. You must stream video to this URL. - Depending on which application or tool you use to encode your video stream, - you may need to enter the stream URL and stream name separately or you may - need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \"\n },\n \"streamName\": {\n \"description\": \"The - stream name that YouTube assigns to the video stream.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"PlaylistItemStatus\": - {\n \"description\": \"Information about the playlist item's privacy - status.\",\n \"type\": \"object\",\n \"id\": \"PlaylistItemStatus\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"description\": - \"This resource's privacy status.\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n }\n },\n \"VideoGetRatingResponse\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoGetRatingResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"description\": \"A list of ratings - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoGetRatingResponse\"\n },\n \"CdnSettings\": {\n - \ \"type\": \"object\",\n \"description\": \"Brief description of - the live stream cdn settings.\",\n \"properties\": {\n \"ingestionInfo\": - {\n \"$ref\": \"IngestionInfo\",\n \"description\": \"The - ingestionInfo object contains information that YouTube provides that you need - to transmit your RTMP or HTTP stream to YouTube.\"\n },\n \"format\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The format of the video stream that you are sending - to Youtube. \",\n \"type\": \"string\"\n },\n \"ingestionType\": - {\n \"description\": \" The method or protocol used to transmit the - video stream.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"type\": \"string\"\n },\n - \ \"resolution\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\",\n \"type\": \"string\"\n },\n \"frameRate\": - {\n \"type\": \"string\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"description\": - \"The frame rate of the inbound video data.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"id\": \"CdnSettings\"\n },\n \"LiveStreamSnippet\": - {\n \"properties\": {\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the stream - was created.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The stream's - description. The value cannot be longer than 10000 characters.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\"\n },\n \"isDefaultStream\": {\n \"type\": - \"boolean\"\n },\n \"title\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The stream's - title. The value must be between 1 and 128 characters long.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveStreamSnippet\"\n - \ },\n \"LiveChatBan\": {\n \"id\": \"LiveChatBan\",\n \"type\": - \"object\",\n \"description\": \"A `__liveChatBan__` resource represents - a ban for a YouTube live chat.\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the ban.\",\n \"$ref\": - \"LiveChatBanSnippet\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"default\": - \"youtube#liveChatBan\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\",\n \"type\": - \"string\"\n }\n }\n },\n \"Entity\": {\n \"type\": - \"object\",\n \"id\": \"Entity\",\n \"properties\": {\n \"id\": - {\n \"type\": \"string\"\n },\n \"url\": {\n \"type\": - \"string\"\n },\n \"typeId\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"SuperChatEventSnippet\": {\n \"id\": - \"SuperChatEventSnippet\",\n \"properties\": {\n \"createdAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the event occurred.\",\n \"format\": \"date-time\"\n - \ },\n \"messageType\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The tier for - the paid message, which is based on the amount of money spent to purchase - the message.\"\n },\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the purchase was made. - ISO 4217.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel id where the event occurred.\"\n },\n - \ \"displayString\": {\n \"type\": \"string\",\n \"description\": - \"A rendered string that displays the purchase amount and currency (e.g., - \\\"$1.00\\\"). The string is rendered for the given language.\"\n },\n - \ \"amountMicros\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The purchase amount, in micros of - the purchase currency. e.g., 1 is represented as 1000000.\"\n },\n - \ \"isSuperStickerEvent\": {\n \"type\": \"boolean\",\n \"description\": - \"True if this event is a Super Sticker event.\"\n },\n \"supporterDetails\": - {\n \"description\": \"Details about the supporter.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"commentText\": {\n \"description\": - \"The text contents of the comment left by the user.\",\n \"type\": - \"string\"\n },\n \"superStickerMetadata\": {\n \"$ref\": - \"SuperStickerMetadata\",\n \"description\": \"If this event is a - Super Sticker event, this field will contain metadata about the Super Sticker.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"PageInfo\": - {\n \"properties\": {\n \"resultsPerPage\": {\n \"format\": - \"int32\",\n \"type\": \"integer\",\n \"description\": \"The - number of results included in the API response.\"\n },\n \"totalResults\": - {\n \"format\": \"int32\",\n \"description\": \"The total - number of results in the result set.\",\n \"type\": \"integer\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Paging - details for lists of resources, including total number of items available - and number of resources returned in a single page.\",\n \"id\": \"PageInfo\"\n - \ },\n \"LiveBroadcastSnippet\": {\n \"id\": \"LiveBroadcastSnippet\",\n - \ \"description\": \"Basic broadcast information.\",\n \"properties\": - {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - broadcast. For each nested object in this object, the key is the name of the - thumbnail image, and the value is an object that contains other information - about the thumbnail.\"\n },\n \"actualEndTime\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - actually ended. This information is only available once the broadcast's state - is complete.\",\n \"format\": \"date-time\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast was added to YouTube's live broadcast schedule.\",\n - \ \"format\": \"date-time\"\n },\n \"liveChatId\": {\n - \ \"description\": \"The id of the live chat for this broadcast.\",\n - \ \"type\": \"string\"\n },\n \"isDefaultBroadcast\": - {\n \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\",\n \"type\": \"boolean\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that is publishing the broadcast.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The broadcast's description. As - with the title, you can set this field by modifying the broadcast resource - or by setting the description field of the corresponding video resource.\"\n - \ },\n \"actualStartTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the broadcast actually started. This information is only available - once the broadcast's state is live.\"\n },\n \"scheduledStartTime\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the broadcast is scheduled to start.\",\n \"format\": \"date-time\"\n - \ },\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the broadcast is scheduled to end.\"\n }\n },\n \"type\": - \"object\"\n },\n \"PlaylistPlayer\": {\n \"properties\": {\n \"embedHtml\": - {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a - player that will play the playlist.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"PlaylistPlayer\",\n \"type\": \"object\"\n - \ },\n \"Playlist\": {\n \"id\": \"Playlist\",\n \"properties\": - {\n \"player\": {\n \"description\": \"The player object contains - information that you would use to play the playlist in an embedded player.\",\n - \ \"$ref\": \"PlaylistPlayer\"\n },\n \"localizations\": - {\n \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"description\": \"Localizations for different languages\",\n - \ \"type\": \"object\"\n },\n \"contentDetails\": {\n - \ \"description\": \"The contentDetails object contains information - like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the playlist.\",\n \"type\": \"string\"\n },\n - \ \"status\": {\n \"description\": \"The status object contains - status information for the playlist.\",\n \"$ref\": \"PlaylistStatus\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistSnippet\",\n \"description\": \"The snippet object contains - basic details about the playlist, such as its title and description.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n \"default\": - \"youtube#playlist\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"A *playlist* resource - represents a YouTube playlist. A playlist is a collection of videos that can - be viewed sequentially and shared with other users. A playlist can contain - up to 200 videos, and YouTube does not limit the number of playlists that - each user creates. By default, playlists are publicly visible to other users, - but playlists can be public or private. YouTube also uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods.\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"reason\": - {\n \"enum\": [\n \"reasonUnspecified\",\n \"videoFavorited\",\n - \ \"videoLiked\",\n \"videoWatched\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The reason that the resource is recommended to the user.\",\n \"type\": - \"string\"\n },\n \"seedResourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The seedResourceId object contains - information about the resource that caused the recommendation.\"\n },\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\"\n }\n },\n \"description\": \"Information that - identifies the recommended resource.\"\n },\n \"LiveStreamContentDetails\": - {\n \"description\": \"Detailed settings of a stream.\",\n \"type\": - \"object\",\n \"id\": \"LiveStreamContentDetails\",\n \"properties\": - {\n \"closedCaptionsIngestionUrl\": {\n \"description\": \"The - ingestion URL where the closed captions of this stream are sent.\",\n \"type\": - \"string\"\n },\n \"isReusable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether the stream is reusable, which - means that it can be bound to multiple broadcasts. It is common for broadcasters - to reuse the same stream for many different broadcasts if those broadcasts - occur at different times. If you set this value to false, then the stream - will not be reusable, which means that it can only be bound to one broadcast. - Non-reusable streams differ from reusable streams in the following ways: - - A non-reusable stream can only be bound to one broadcast. - A non-reusable - stream might be deleted by an automated process after the broadcast ends. - - The liveStreams.list method does not list non-reusable streams if you call - the method and set the mine parameter to true. The only way to use that method - to retrieve the resource for a non-reusable stream is to use the id parameter - to identify the stream. \"\n }\n }\n },\n \"ChannelListResponse\": - {\n \"properties\": {\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Channel\"\n }\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"default\": \"youtube#channelListResponse\"\n }\n },\n - \ \"id\": \"ChannelListResponse\",\n \"type\": \"object\"\n },\n - \ \"VideoLocalization\": {\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's description.\"\n },\n \"title\": {\n - \ \"description\": \"Localized version of the video's title.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Localized versions of certain video properties (e.g. title).\",\n \"id\": - \"VideoLocalization\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"description\": \"Information about a channel that a user subscribed - to.\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"id\": \"ActivityContentDetailsSubscription\",\n \"type\": - \"object\"\n },\n \"MemberSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"membershipsDetails\": {\n \"$ref\": - \"MembershipsDetails\",\n \"description\": \"Details about the user's - membership.\"\n },\n \"memberDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - member.\"\n },\n \"creatorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the channel that's offering - memberships.\"\n }\n },\n \"id\": \"MemberSnippet\"\n },\n - \ \"InvideoBranding\": {\n \"id\": \"InvideoBranding\",\n \"properties\": - {\n \"imageUrl\": {\n \"description\": \"The url of the uploaded - image. Only used in apiary to api communication.\",\n \"type\": \"string\"\n - \ },\n \"targetChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel to which this branding links. If - not present it defaults to the current channel.\"\n },\n \"position\": - {\n \"description\": \"The spatial position within the video where - the branding watermark will be displayed.\",\n \"$ref\": \"InvideoPosition\"\n - \ },\n \"timing\": {\n \"description\": \"The temporal - position within the video where watermark will be displayed.\",\n \"$ref\": - \"InvideoTiming\"\n },\n \"imageBytes\": {\n \"type\": - \"string\",\n \"format\": \"byte\",\n \"description\": \"The - bytes the uploaded image. Only used in api to youtube communication.\"\n }\n - \ },\n \"description\": \"LINT.IfChange Describes an invideo branding.\",\n - \ \"type\": \"object\"\n },\n \"TokenPagination\": {\n \"type\": - \"object\",\n \"properties\": {},\n \"id\": \"TokenPagination\",\n - \ \"description\": \"Stub token pagination template to suppress results.\"\n - \ },\n \"LiveChatModerator\": {\n \"id\": \"LiveChatModerator\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModerator\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the moderator.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the moderator.\",\n \"$ref\": - \"LiveChatModeratorSnippet\"\n }\n },\n \"description\": - \"A *liveChatModerator* resource represents a moderator for a YouTube live - chat. A chat moderator has the ability to ban/unban users from a chat, remove - message, etc.\",\n \"type\": \"object\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"userComment\": {\n \"description\": \"The comment added - by the user to this Super Chat event.\",\n \"type\": \"string\"\n - \ },\n \"tier\": {\n \"description\": \"The tier in - which the amount belongs. Lower amounts belong to lower tiers. The lowest - tier is 1.\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"currency\": {\n \"description\": \"The currency - in which the purchase was made.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveChatSuperChatDetails\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageAuthorDetails\",\n - \ \"properties\": {\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n },\n - \ \"isChatSponsor\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is a sponsor of the live chat.\"\n },\n \"profileImageUrl\": - {\n \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel ID.\"\n },\n \"channelUrl\": - {\n \"description\": \"The channel's URL.\",\n \"type\": - \"string\"\n },\n \"isChatModerator\": {\n \"description\": - \"Whether the author is a moderator of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"isChatOwner\": {\n \"description\": - \"Whether the author is the owner of the live chat.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"LiveChatModeratorListResponse\": - {\n \"id\": \"LiveChatModeratorListResponse\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#liveChatModeratorListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of moderators that match the request criteria.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoCategory\": {\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoCategory\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the video category.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n }\n },\n - \ \"id\": \"VideoCategory\",\n \"description\": \"A *videoCategory* - resource identifies a category that has been or could be associated with uploaded - videos.\"\n },\n \"TestItem\": {\n \"id\": \"TestItem\",\n \"type\": - \"object\",\n \"properties\": {\n \"gaia\": {\n \"format\": - \"int64\",\n \"type\": \"string\"\n },\n \"featuredPart\": - {\n \"type\": \"boolean\"\n },\n \"snippet\": {\n \"$ref\": - \"TestItemTestItemSnippet\"\n },\n \"id\": {\n \"type\": - \"string\"\n }\n }\n },\n \"InvideoTiming\": {\n \"type\": - \"object\",\n \"properties\": {\n \"durationMs\": {\n \"format\": - \"uint64\",\n \"description\": \"Defines the duration in milliseconds - for which the promotion should be displayed. If missing, the client should - use the default.\",\n \"type\": \"string\"\n },\n \"offsetMs\": - {\n \"description\": \"Defines the time at which the promotion will - appear. Depending on the value of type the value of the offsetMs field will - represent a time offset from the start or from the end of the video, expressed - in milliseconds.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"type\": {\n \"description\": \"Describes - a timing type. If the value is offsetFromStart, then the offsetMs field represents - an offset from the start of the video. If the value is offsetFromEnd, then - the offsetMs field represents an offset from the end of the video.\",\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\",\n \"id\": - \"InvideoTiming\"\n },\n \"ActivityContentDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"favorite\": {\n \"description\": - \"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.\",\n - \ \"$ref\": \"ActivityContentDetailsFavorite\"\n },\n \"playlistItem\": - {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"The playlistItem object contains information about a new playlist item. - This property is only present if the snippet.type is playlistItem.\"\n },\n - \ \"promotedItem\": {\n \"description\": \"The promotedItem - object contains details about a resource which is being promoted. This property - is only present if the snippet.type is promotedItem.\",\n \"$ref\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"recommendation\": - {\n \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\",\n \"$ref\": \"ActivityContentDetailsRecommendation\"\n - \ },\n \"social\": {\n \"$ref\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"The social object contains details about a social - network post. This property is only present if the snippet.type is social.\"\n - \ },\n \"comment\": {\n \"description\": \"The comment - object contains information about a resource that received a comment. This - property is only present if the snippet.type is comment.\",\n \"$ref\": - \"ActivityContentDetailsComment\"\n },\n \"upload\": {\n \"$ref\": - \"ActivityContentDetailsUpload\",\n \"description\": \"The upload - object contains information about the uploaded video. This property is only - present if the snippet.type is upload.\"\n },\n \"bulletin\": - {\n \"description\": \"The bulletin object contains details about - a channel bulletin post. This object is only present if the snippet.type is - bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n },\n - \ \"subscription\": {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n - \ \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\"\n },\n \"channelItem\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"like\": {\n \"$ref\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"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.\"\n }\n },\n \"description\": - \"Details about the content of an activity: the video that was shared, the - channel that was subscribed to, etc.\",\n \"id\": \"ActivityContentDetails\"\n - \ },\n \"LiveStreamListResponse\": {\n \"type\": \"object\",\n \"id\": - \"LiveStreamListResponse\",\n \"properties\": {\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveStream\"\n },\n \"description\": - \"A list of live streams that match the request criteria.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveStreamListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n }\n },\n \"Comment\": {\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#comment\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#comment\\\".\"\n },\n - \ \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment.\"\n }\n - \ },\n \"id\": \"Comment\",\n \"description\": \"A *comment* - represents a single YouTube comment.\"\n },\n \"ChannelAuditDetails\": - {\n \"type\": \"object\",\n \"id\": \"ChannelAuditDetails\",\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\",\n \"properties\": {\n \"contentIdClaimsGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any unresolved claims.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n }\n }\n },\n - \ \"ChannelSectionContentDetails\": {\n \"properties\": {\n \"channels\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The channel ids for - type multiple_channels.\"\n },\n \"playlists\": {\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"id\": \"ChannelSectionContentDetails\",\n \"description\": \"Details - about a channelsection, including playlists and channels.\",\n \"type\": - \"object\"\n },\n \"LiveBroadcast\": {\n \"id\": \"LiveBroadcast\",\n - \ \"description\": \"A *liveBroadcast* resource represents an event that - will be streamed, via live video, on YouTube.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"id\": {\n \"annotations\": {\n - \ \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the broadcast.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the event's status.\",\n \"$ref\": - \"LiveBroadcastStatus\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveBroadcastSnippet\",\n \"description\": \"The snippet object - contains basic details about the event, including its title, description, - start time, and end time.\"\n },\n \"statistics\": {\n \"$ref\": - \"LiveBroadcastStatistics\",\n \"description\": \"The statistics - object contains info about the event's current stats. These include concurrent - viewers and total chat count. Statistics can change (in either direction) - during the lifetime of an event. Statistics are only returned while the event - is live.\"\n },\n \"kind\": {\n \"default\": \"youtube#liveBroadcast\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\"\n }\n }\n },\n - \ \"LiveChatMessageSnippet\": {\n \"description\": \"Next ID: 33\",\n - \ \"properties\": {\n \"fanFundingEventDetails\": {\n \"$ref\": - \"LiveChatFanFundingEventDetails\",\n \"description\": \"Details - about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\",\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"type\": \"string\"\n },\n \"newSponsorDetails\": - {\n \"description\": \"Details about the New Member Announcement - event, this is only set if the type is 'newSponsorEvent'. Please note that - \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n \"$ref\": - \"LiveChatNewSponsorDetails\"\n },\n \"hasDisplayContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the message has display content that should be displayed to users.\"\n },\n - \ \"giftMembershipReceivedDetails\": {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"description\": \"Details about the Gift Membership Received event, - this is only set if the type is 'giftMembershipReceivedEvent'.\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - when the message was orignally published.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"authorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that authored this message, this field is not always filled. textMessageEvent - - the user that wrote the message fanFundingEvent - the user that funded the - broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n },\n \"superChatDetails\": - {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n - \ \"displayMessage\": {\n \"type\": \"string\",\n \"description\": - \"Contains a string that can be displayed to the user. If this field is not - present the message is silent, at the moment only messages of type TOMBSTONE - and CHAT_ENDED_EVENT are silent.\"\n },\n \"membershipGiftingDetails\": - {\n \"description\": \"Details about the Membership Gifting event, - this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": - \"LiveChatMembershipGiftingDetails\"\n },\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n },\n \"superStickerDetails\": - {\n \"description\": \"Details about the Super Sticker event, this - is only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"textMessageDetails\": {\n \"$ref\": \"LiveChatTextMessageDetails\",\n - \ \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ }\n },\n \"id\": \"LiveChatMessageSnippet\",\n \"type\": - \"object\"\n },\n \"ChannelSnippet\": {\n \"id\": \"ChannelSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a channel, including title, description and thumbnails.\",\n \"properties\": - {\n \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel's title.\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the channel.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the channel was created.\",\n \"type\": \"string\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the channel's default title and description.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"thumbnails\": {\n \"description\": \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"customUrl\": - {\n \"type\": \"string\",\n \"description\": \"The custom - url of the channel.\"\n }\n }\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"properties\": - {\n \"memberMonth\": {\n \"format\": \"uint32\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"type\": \"integer\"\n - \ },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the member to this Member - Milestone Chat. This field is empty for messages without a comment from the - member.\"\n },\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level at which the - viever is a member. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoCategorySnippet\": - {\n \"description\": \"Basic details about a video category, such as - its localized title.\",\n \"properties\": {\n \"channelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The YouTube - channel that created the video category.\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The video category's title.\"\n },\n \"assignable\": {\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoCategorySnippet\"\n },\n \"SubscriptionSubscriberSnippet\": {\n - \ \"properties\": {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"Thumbnails for this subscriber.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the subscriber.\"\n },\n \"description\": {\n - \ \"type\": \"string\",\n \"description\": \"The description - of the subscriber.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The channel ID of the subscriber.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a subscription's subscriber including title, description, channel - ID and thumbnails.\",\n \"id\": \"SubscriptionSubscriberSnippet\"\n },\n - \ \"SubscriptionContentDetails\": {\n \"description\": \"Details about - the content to witch a subscription refers.\",\n \"properties\": {\n - \ \"totalItemCount\": {\n \"description\": \"The approximate - number of items that the subscription points to.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"newItemCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The number - of new items in the subscription since its content was last read.\",\n \"type\": - \"integer\"\n },\n \"activityType\": {\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"subscriptionActivityTypeUnspecified\",\n \"all\",\n - \ \"uploads\"\n ]\n }\n },\n \"type\": - \"object\",\n \"id\": \"SubscriptionContentDetails\"\n },\n \"VideoProcessingDetails\": - {\n \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\",\n \"properties\": {\n \"tagSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether keyword (tag) - suggestions are available for the video. Tags can be added to a video's metadata - to make it easier for other users to find the video. You can retrieve these - suggestions by requesting the suggestions part in your videos.list() request.\",\n - \ \"type\": \"string\"\n },\n \"processingStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ],\n \"description\": \"The video's processing status. - This value indicates whether YouTube was able to process the video or if the - video is still being processed.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"fileDetailsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether file details are - available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether video editing suggestions, - which might improve video quality or the playback experience, are available - for the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"processingFailureReason\": - {\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The reason that YouTube failed - to process the video. This property will only have a value if the processingStatus - property's value is failed.\",\n \"type\": \"string\"\n },\n - \ \"processingIssuesAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"thumbnailsAvailability\": {\n \"description\": \"This value - indicates whether thumbnail images have been generated for the video.\",\n - \ \"type\": \"string\"\n },\n \"processingProgress\": - {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n }\n },\n \"id\": - \"VideoProcessingDetails\",\n \"type\": \"object\"\n },\n \"GeoPoint\": - {\n \"description\": \"Geographical coordinates of a point, in WGS84.\",\n - \ \"id\": \"GeoPoint\",\n \"properties\": {\n \"altitude\": - {\n \"description\": \"Altitude above the reference ellipsoid, in - meters.\",\n \"format\": \"double\",\n \"type\": \"number\"\n - \ },\n \"latitude\": {\n \"format\": \"double\",\n \"type\": - \"number\",\n \"description\": \"Latitude in degrees.\"\n },\n - \ \"longitude\": {\n \"format\": \"double\",\n \"description\": - \"Longitude in degrees.\",\n \"type\": \"number\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"PlaylistItem\": {\n \"id\": - \"PlaylistItem\",\n \"description\": \"A *playlistItem* resource identifies - another resource, such as a video, that is included in a playlist. In addition, - the playlistItem resource contains details about the included resource that - pertain specifically to how that resource is used in that playlist. YouTube - uses playlists to identify special collections of videos for a channel, such - as: - uploaded videos - favorite videos - positively rated (liked) videos - - watch history - watch later To be more specific, these lists are associated - with a channel, which is a collection of a person, group, or company's videos, - playlists, and other YouTube information. You can retrieve the playlist IDs - for each of these lists from the channel resource for a given channel. You - can then use the playlistItems.list method to retrieve any of those lists. - You can also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods. For example, if a user gives a positive - rating to a video, you would insert that video into the liked videos playlist - for that user's channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"contentDetails\": {\n \"description\": \"The contentDetails - object is included in the resource if the included item is a YouTube video. - The object contains additional information about the video.\",\n \"$ref\": - \"PlaylistItemContentDetails\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\"\n },\n \"status\": - {\n \"$ref\": \"PlaylistItemStatus\",\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"default\": \"youtube#playlistItem\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the playlist item.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viewer is a member. This matches the - `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated - membership gifting message. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n },\n \"gifterChannelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID of the - user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ }\n },\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageRetractedDetails\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"Video\": {\n \"id\": \"Video\",\n - \ \"description\": \"A *video* resource represents a YouTube video.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"player\": - {\n \"$ref\": \"VideoPlayer\",\n \"description\": \"The - player object contains information that you would use to play the video in - an embedded player.\"\n },\n \"suggestions\": {\n \"description\": - \"The suggestions object encapsulates suggestions that identify opportunities - to improve the video quality or the metadata for the uploaded video. This - data can only be retrieved by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the video, such as its title, description, - and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n \"fileDetails\": - {\n \"description\": \"The fileDetails object encapsulates information - about the video file that was uploaded to YouTube, including the file's resolution, - duration, audio and video codecs, stream bitrates, and more. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"VideoContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#video\"\n - \ },\n \"projectDetails\": {\n \"description\": \"The - projectDetails object contains information about the project specific video - metadata. b/157517979: This part was never populated after it was added. However, - it sees non-zero traffic because there is generated client code in the wild - that refers to it [1]. We keep this field and do NOT remove it because otherwise - V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"localizations\": - {\n \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\",\n \"type\": \"object\"\n },\n \"monetizationDetails\": - {\n \"$ref\": \"VideoMonetizationDetails\",\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\"\n },\n \"statistics\": {\n \"$ref\": - \"VideoStatistics\",\n \"description\": \"The statistics object contains - statistics about the video.\"\n },\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"status\": {\n - \ \"$ref\": \"VideoStatus\",\n \"description\": \"The status - object contains information about the video's uploading, processing, and privacy - statuses.\"\n },\n \"recordingDetails\": {\n \"$ref\": - \"VideoRecordingDetails\",\n \"description\": \"The recordingDetails - object encapsulates information about the location, date and address where - the video was recorded.\"\n },\n \"processingDetails\": {\n - \ \"description\": \"The processingDetails object encapsulates information - about YouTube's progress in processing the uploaded video file. The properties - in the object identify the current processing status and an estimate of the - time remaining until YouTube finishes processing the video. This part also - indicates whether different types of data or content, such as file details - or thumbnail images, are available for the video. The processingProgress object - is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoProcessingDetails\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n }\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n \"description\": - \"Age restriction details related to a video. This data can only be retrieved - by the video owner.\"\n },\n \"topicDetails\": {\n \"$ref\": - \"VideoTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the video.\"\n - \ }\n }\n },\n \"PlaylistContentDetails\": {\n \"id\": - \"PlaylistContentDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"itemCount\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The number of videos in the playlist.\"\n - \ }\n }\n },\n \"ChannelSectionTargeting\": {\n \"id\": - \"ChannelSectionTargeting\",\n \"type\": \"object\",\n \"properties\": - {\n \"languages\": {\n \"description\": \"The language the - channel section is targeting.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"countries\": - {\n \"description\": \"The country the channel section is targeting.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"regions\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"The region the channel section is targeting.\"\n }\n },\n \"description\": - \"ChannelSection targeting setting.\"\n },\n \"I18nRegion\": {\n \"id\": - \"I18nRegion\",\n \"description\": \"A *i18nRegion* resource identifies - a region where YouTube is available.\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegion\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n region.\"\n }\n }\n },\n \"SubscriptionSnippet\": - {\n \"id\": \"SubscriptionSnippet\",\n \"properties\": {\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the subscription was created.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the subscription - belongs to.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the subscriber's channel.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the video. 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.\"\n },\n \"title\": {\n \"description\": - \"The subscription's title.\",\n \"type\": \"string\"\n },\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"annotations\": - {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"description\": \"The id object contains - information about the channel that the user subscribed to.\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The subscription's details.\"\n }\n },\n \"description\": - \"Basic details about a subscription, including title, description and thumbnails - of the subscribed item.\",\n \"type\": \"object\"\n },\n \"PlaylistLocalization\": - {\n \"properties\": {\n \"description\": {\n \"description\": - \"The localized strings for playlist's description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - localized strings for playlist's title.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"PlaylistLocalization\",\n \"description\": - \"Playlist localization setting\",\n \"type\": \"object\"\n },\n \"MembershipsDetails\": - {\n \"id\": \"MembershipsDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"highestAccessibleLevelDisplayName\": {\n \"type\": \"string\",\n - \ \"description\": \"Display name for the highest level that the user - has access to at the moment.\"\n },\n \"membershipsDurationAtLevels\": - {\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ },\n \"description\": \"Data about memberships duration - on particular pricing levels.\",\n \"type\": \"array\"\n },\n - \ \"membershipsDuration\": {\n \"description\": \"Data about - memberships duration without taking into consideration pricing levels.\",\n - \ \"$ref\": \"MembershipsDuration\"\n },\n \"accessibleLevels\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"Ids of all levels that the user has access to. - This includes the currently active level and all other levels that are included - because of a higher purchase.\",\n \"type\": \"array\"\n },\n - \ \"highestAccessibleLevel\": {\n \"description\": \"Id of - the highest level that the user has access to at the moment.\",\n \"type\": - \"string\"\n }\n }\n },\n \"MembershipsLevelSnippet\": {\n - \ \"id\": \"MembershipsLevelSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"levelDetails\": {\n \"description\": - \"Details about the pricing level.\",\n \"$ref\": \"LevelDetails\"\n - \ },\n \"creatorChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The id of the channel that's offering channel - memberships.\"\n }\n }\n },\n \"Caption\": {\n \"id\": - \"Caption\",\n \"type\": \"object\",\n \"description\": \"A *caption* - resource represents a YouTube caption track. A caption track is associated - with exactly one YouTube video.\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#caption\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#caption\\\".\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the caption track.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n }\n }\n }\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the user to this fan funding event.\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"amountMicros\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The amount of the fund.\"\n },\n - \ \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the fund was made.\"\n }\n },\n \"id\": - \"LiveChatFanFundingEventDetails\"\n },\n \"VideoPlayer\": {\n \"type\": - \"object\",\n \"description\": \"Player to be used for a video playback.\",\n - \ \"id\": \"VideoPlayer\",\n \"properties\": {\n \"embedWidth\": - {\n \"type\": \"string\",\n \"format\": \"int64\",\n \"description\": - \"The embed width\"\n },\n \"embedHeight\": {\n \"type\": - \"string\",\n \"format\": \"int64\"\n },\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\"\n }\n }\n - \ },\n \"LiveChatMessage\": {\n \"description\": \"A *liveChatMessage* - resource represents a chat message in a YouTube Live Chat.\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveChatMessageSnippet\",\n \"description\": \"The snippet object - contains basic details about the message.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n - \ \"default\": \"youtube#liveChatMessage\"\n },\n \"authorDetails\": - {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n \"description\": - \"The authorDetails object contains basic details about the user that posted - this message.\"\n }\n },\n \"id\": \"LiveChatMessage\",\n - \ \"type\": \"object\"\n },\n \"Member\": {\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\",\n - \ \"id\": \"Member\",\n \"properties\": {\n \"snippet\": {\n - \ \"$ref\": \"MemberSnippet\",\n \"description\": \"The snippet - object contains basic details about the member.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"default\": \"youtube#member\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with a - bulletin post. @mutable youtube.activities.insert\"\n }\n },\n - \ \"id\": \"ActivityContentDetailsBulletin\",\n \"description\": - \"Details about a channel bulletin post.\"\n },\n \"WatchSettings\": - {\n \"id\": \"WatchSettings\",\n \"description\": \"Branding properties - for the watch. All deprecated.\",\n \"type\": \"object\",\n \"properties\": - {\n \"backgroundColor\": {\n \"type\": \"string\",\n \"description\": - \"The text color for the video watch page's branded area.\"\n },\n - \ \"featuredPlaylistId\": {\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\",\n - \ \"type\": \"string\"\n },\n \"textColor\": {\n \"type\": - \"string\",\n \"description\": \"The background color for the video - watch page's branded area.\"\n }\n }\n },\n \"CommentThread\": - {\n \"id\": \"CommentThread\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentThread\\\".\",\n \"default\": - \"youtube#commentThread\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment thread.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n - \ \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the comment thread and also the top level comment.\",\n - \ \"$ref\": \"CommentThreadSnippet\"\n }\n },\n \"description\": - \"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.\",\n \"type\": \"object\"\n },\n \"RelatedEntity\": - {\n \"type\": \"object\",\n \"id\": \"RelatedEntity\",\n \"properties\": - {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n }\n - \ },\n \"Activity\": {\n \"description\": \"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.\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"ActivitySnippet\",\n \"description\": \"The snippet object contains - basic details about the activity, including the activity's type and group - ID.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#activity\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"contentDetails\": {\n \"description\": - \"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.\",\n \"$ref\": - \"ActivityContentDetails\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the activity.\"\n }\n },\n \"id\": \"Activity\"\n - \ },\n \"MembershipsDurationAtLevel\": {\n \"properties\": {\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"description\": \"The cumulative - time the user has been a member for the given level in complete months (the - time is rounded down to the nearest integer).\",\n \"format\": \"int32\"\n - \ },\n \"level\": {\n \"description\": \"Pricing level - ID.\",\n \"type\": \"string\"\n },\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member for the given level.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"MembershipsDurationAtLevel\"\n - \ },\n \"Subscription\": {\n \"description\": \"A *subscription* - resource contains information about a YouTube user subscription. A subscription - notifies a user when new videos are added to a channel or when another user - takes one of several actions on YouTube, such as uploading a video, rating - a video, or commenting on a video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"subscriberSnippet\": {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"The subscriberSnippet object contains basic details - about the subscriber.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\",\n - \ \"$ref\": \"SubscriptionContentDetails\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the subscription.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscription\\\".\",\n \"default\": - \"youtube#subscription\"\n },\n \"snippet\": {\n \"$ref\": - \"SubscriptionSnippet\",\n \"description\": \"The snippet object - contains basic details about the subscription, including its title and the - channel that the user subscribed to.\"\n }\n },\n \"id\": - \"Subscription\"\n },\n \"SuperChatEventListResponse\": {\n \"type\": - \"object\",\n \"id\": \"SuperChatEventListResponse\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of Super - Chat purchases that match the request criteria.\",\n \"items\": {\n - \ \"$ref\": \"SuperChatEvent\"\n },\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#superChatEventListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"PlaylistItemContentDetails\": {\n \"properties\": - {\n \"endAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\"\n - \ },\n \"videoPublishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the video was published - to YouTube.\",\n \"format\": \"date-time\"\n },\n \"startAt\": - {\n \"type\": \"string\",\n \"description\": \"The time, - measured in seconds from the start of the video, when the video should start - playing. (The playlist owner can specify the times when the video should start - and stop playing when the video is played in the context of the playlist.) - The default value is 0.\"\n },\n \"note\": {\n \"type\": - \"string\",\n \"description\": \"A user-generated note for this item.\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify a video. To retrieve the video - resource, set the id query parameter to this value in your API request.\"\n - \ }\n },\n \"id\": \"PlaylistItemContentDetails\",\n \"type\": - \"object\"\n },\n \"LanguageTag\": {\n \"type\": \"object\",\n - \ \"id\": \"LanguageTag\",\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that was added to the channel.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"description\": \"Details about - a resource which was added to a channel.\",\n \"id\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"VideoRating\": {\n \"type\": \"object\",\n \"id\": - \"VideoRating\",\n \"properties\": {\n \"rating\": {\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"Rating of - a video.\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n }\n },\n \"description\": \"Basic details - about rating of a video.\"\n },\n \"ChannelSectionSnippet\": {\n \"description\": - \"Basic details about a channel section, including title, style and position.\",\n - \ \"type\": \"object\",\n \"id\": \"ChannelSectionSnippet\",\n \"properties\": - {\n \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ],\n \"description\": \"The type of the channel section.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"localized\": {\n \"$ref\": \"ChannelSectionLocalization\",\n - \ \"description\": \"Localized title, read-only.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel section's default - title and description.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the channel section.\"\n - \ },\n \"style\": {\n \"description\": \"The style of - the channel section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"position\": - {\n \"description\": \"The position of the channel section in the - channel.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The channel section's title for multiple_playlists and multiple_channels.\"\n - \ }\n }\n },\n \"CommentThreadReplies\": {\n \"description\": - \"Comments written in (direct or indirect) reply to the top level comment.\",\n - \ \"id\": \"CommentThreadReplies\",\n \"type\": \"object\",\n \"properties\": - {\n \"comments\": {\n \"type\": \"array\",\n \"description\": - \"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.\",\n \"items\": {\n \"$ref\": - \"Comment\"\n }\n }\n }\n },\n \"LiveStreamHealthStatus\": - {\n \"properties\": {\n \"configurationIssues\": {\n \"description\": - \"The configurations issues on this stream\",\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n },\n \"type\": \"array\"\n - \ },\n \"lastUpdateTimeSeconds\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The last time - this status was updated (in seconds)\"\n },\n \"status\": {\n - \ \"enum\": [\n \"good\",\n \"ok\",\n \"bad\",\n - \ \"noData\",\n \"revoked\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The status code of this stream\"\n }\n },\n \"id\": \"LiveStreamHealthStatus\",\n - \ \"type\": \"object\"\n },\n \"CommentThreadSnippet\": {\n \"description\": - \"Basic details about a comment thread.\",\n \"id\": \"CommentThreadSnippet\",\n - \ \"properties\": {\n \"isPublic\": {\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\",\n \"type\": \"boolean\"\n },\n \"topLevelComment\": - {\n \"description\": \"The top level comment of this thread.\",\n - \ \"$ref\": \"Comment\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"totalReplyCount\": {\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The total number of replies (not including the top level comment).\"\n },\n - \ \"canReply\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"PlaylistItemSnippet\": - {\n \"id\": \"PlaylistItemSnippet\",\n \"properties\": {\n \"position\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the playlist item belongs to.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the user that added the item to the playlist.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The item's - title.\"\n },\n \"videoOwnerChannelTitle\": {\n \"description\": - \"Channel title for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"videoOwnerChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel id for the channel this - video belongs to.\"\n },\n \"resourceId\": {\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that is included in the playlist as the playlist item.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"$ref\": \"ResourceId\"\n },\n \"publishedAt\": {\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the item was added to the playlist.\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The item's description.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the playlist item. 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.\"\n },\n \"playlistId\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a playlist, including title, description and thumbnails. Basic - details of a YouTube Playlist item provided by the author. Next ID: 15\"\n - \ },\n \"VideoSuggestions\": {\n \"type\": \"object\",\n \"properties\": - {\n \"processingWarnings\": {\n \"description\": \"A list - of reasons why YouTube may have difficulty transcoding the uploaded video - or that might result in an erroneous transcoding. These warnings are generated - before YouTube actually processes the uploaded video file. In addition, they - identify issues that are unlikely to cause the video processing to fail but - that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"enumDescriptions\": [\n \"Unrecognized file format, - transcoding is likely to fail.\",\n \"Unrecognized video codec, - transcoding is likely to fail.\",\n \"Unrecognized audio codec, - transcoding is likely to fail.\",\n \"Conflicting container and - stream resolutions.\",\n \"Edit lists are not currently supported.\",\n - \ \"Video codec that is known to cause problems was used.\",\n - \ \"Audio codec that is known to cause problems was used.\",\n - \ \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ]\n }\n },\n \"tagSuggestions\": {\n \"items\": - {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of keyword - tags that could be added to the video's metadata to increase the likelihood - that users will locate your video when searching or browsing on YouTube.\"\n - \ },\n \"processingErrors\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of errors that will prevent YouTube from - successfully processing the uploaded video video. These errors indicate that, - regardless of the video's current processing status, eventually, that status - will almost certainly be failed.\",\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"audioFile\",\n \"imageFile\",\n - \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n - \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"enumDescriptions\": [\n \"File - contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., - a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file.\",\n \"Document - or text file (e.g., MS Word document).\",\n \"An archive file - (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout - type.\"\n ]\n }\n },\n \"editorSuggestions\": - {\n \"type\": \"array\",\n \"items\": {\n \"enum\": - [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n - \ \"enumDescriptions\": [\n \"Picture brightness levels - seem off and could be corrected.\",\n \"The video appears shaky - and could be stabilized.\",\n \"Margins (mattes) detected around - the picture could be cropped.\",\n \"The audio track appears - silent and could be swapped with a better quality one.\"\n ],\n - \ \"type\": \"string\"\n },\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\"\n },\n \"processingHints\": - {\n \"type\": \"array\",\n \"description\": \"A list of - suggestions that may improve YouTube's ability to process the video.\",\n - \ \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ]\n }\n }\n },\n - \ \"id\": \"VideoSuggestions\",\n \"description\": \"Specifies suggestions - on how to improve video content, including encoding hints, tag suggestions, - and editor suggestions.\"\n },\n \"PlaylistListResponse\": {\n \"id\": - \"PlaylistListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"description\": \"A list of playlists that match the request criteria\",\n - \ \"type\": \"array\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlistListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"SearchResultSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The creation date and time of the resource that - the search result identifies.\",\n \"format\": \"date-time\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the search result. 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.\"\n },\n - \ \"liveBroadcastContent\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"The title of the channel that published the - resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"description\": \"The title of - the search result.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"A description - of the search result.\"\n }\n },\n \"id\": \"SearchResultSnippet\",\n - \ \"description\": \"Basic details about a search result, including title, - description and thumbnails of the item referenced by the search result.\"\n - \ },\n \"LiveChatTextMessageDetails\": {\n \"id\": \"LiveChatTextMessageDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"messageText\": - {\n \"type\": \"string\",\n \"description\": \"The user's - message.\"\n }\n }\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"type\": \"object\",\n \"properties\": {\n \"label\": - {\n \"description\": \"The localized label for this abuse report - secondary reason.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - this abuse report secondary reason.\"\n }\n },\n \"id\": - \"VideoAbuseReportSecondaryReason\"\n },\n \"SuperStickerMetadata\": - {\n \"type\": \"object\",\n \"id\": \"SuperStickerMetadata\",\n - \ \"properties\": {\n \"altText\": {\n \"type\": \"string\",\n - \ \"description\": \"Internationalized alt text that describes the - sticker image and any animation associated with it.\"\n },\n \"altTextLanguage\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the alt text is returned.\"\n },\n - \ \"stickerId\": {\n \"type\": \"string\",\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\"\n - \ }\n }\n },\n \"VideoAbuseReportReasonListResponse\": {\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of valid abuse reasons that are used with `video.ReportAbuse`.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ }\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The `visitorId` - identifies the visitor.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"VideoAbuseReportReasonListResponse\",\n \"type\": \"object\"\n - \ },\n \"VideoStatus\": {\n \"properties\": {\n \"rejectionReason\": - {\n \"type\": \"string\",\n \"description\": \"This value - explains why YouTube rejected an uploaded video. This property is only present - if the uploadStatus property indicates that the upload was rejected.\",\n - \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ],\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n },\n \"publishAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the video is scheduled - to publish. It can be set only if the privacy status of the video is private..\"\n - \ },\n \"publicStatsViewable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value indicates if the extended video statistics - on the watch page can be viewed by everyone. Note that the view count, likes, - etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"uploadStatus\": - {\n \"description\": \"The status of the uploaded video.\",\n \"enumDescriptions\": - [\n \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ]\n },\n \"failureReason\": {\n \"description\": - \"This value explains why a video failed to upload. This property is only - present if the uploadStatus property indicates that the upload failed.\",\n - \ \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"Unable to convert video content.\",\n - \ \"Invalid file format.\",\n \"Empty file.\",\n \"File - was too small.\",\n \"Unsupported codec.\",\n \"Upload - wasn't finished.\"\n ]\n },\n \"embeddable\": {\n \"description\": - \"This value indicates if the video can be embedded on another website. @mutable - youtube.videos.insert youtube.videos.update\",\n \"type\": \"boolean\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"license\": {\n \"description\": \"The video's - license. @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": - \"string\",\n \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"description\": \"The video's privacy status.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"id\": - \"VideoStatus\",\n \"type\": \"object\",\n \"description\": \"Basic - details about a video category, such as its localized title. Next Id: 18\"\n - \ },\n \"LiveStream\": {\n \"properties\": {\n \"status\": - {\n \"description\": \"The status object contains information about - live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"cdn\": {\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\",\n \"$ref\": \"CdnSettings\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"default\": \"youtube#liveStream\"\n },\n \"id\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the stream.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\",\n - \ \"$ref\": \"LiveStreamSnippet\"\n },\n \"contentDetails\": - {\n \"$ref\": \"LiveStreamContentDetails\",\n \"description\": - \"The content_details object contains information about the stream, including - the closed captions ingestion URL.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A live stream describes a live ingestion - point.\",\n \"id\": \"LiveStream\"\n },\n \"VideoProjectDetails\": - {\n \"type\": \"object\",\n \"properties\": {},\n \"id\": \"VideoProjectDetails\",\n - \ \"description\": \"DEPRECATED. b/157517979: This part was never populated - after it was added. However, it sees non-zero traffic because there is generated - client code in the wild that refers to it [1]. We keep this field and do NOT - remove it because otherwise V3 would return an error when this part gets requested - [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"LiveBroadcastStatistics\": {\n \"properties\": {\n \"concurrentViewers\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n },\n - \ \"totalChatCount\": {\n \"type\": \"string\",\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\",\n - \ \"format\": \"uint64\"\n }\n },\n \"description\": - \"Statistics about the live broadcast. These represent a snapshot of the values - at the time of the request. Statistics are only returned for live broadcasts.\",\n - \ \"id\": \"LiveBroadcastStatistics\",\n \"type\": \"object\"\n },\n - \ \"AbuseType\": {\n \"properties\": {\n \"id\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"AbuseType\"\n },\n \"SuperChatEvent\": {\n \"id\": \"SuperChatEvent\",\n - \ \"description\": \"A `__superChatEvent__` resource represents a Super - Chat purchase on a YouTube channel.\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the Super Chat event.\",\n \"$ref\": \"SuperChatEventSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the Super Chat event.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#superChatEvent\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"ActivitySnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the video was uploaded.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel responsible for this activity\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the resource primarily associated with the activity. @mutable youtube.activities.insert\"\n - \ },\n \"type\": {\n \"description\": \"The type of - activity that the resource describes.\",\n \"enum\": [\n \"typeUnspecified\",\n - \ \"upload\",\n \"like\",\n \"favorite\",\n - \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n - \ \"recommendation\",\n \"bulletin\",\n \"social\",\n - \ \"channelItem\",\n \"promotedItem\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"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.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel associated with the activity.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the resource primarily associated with the activity.\"\n },\n \"groupId\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ActivitySnippet\",\n \"description\": - \"Basic details about an activity, including title, description, thumbnails, - activity type and group. Next ID: 12\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n \"properties\": - {\n \"adTag\": {\n \"description\": \"The URL the client should - fetch to request a promoted item.\",\n \"type\": \"string\"\n },\n - \ \"forecastingUrl\": {\n \"description\": \"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.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"customCtaButtonText\": {\n \"type\": \"string\",\n - \ \"description\": \"The custom call-to-action button text. If specified, - it will override the default button text for the cta_type.\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the promoted video.\"\n },\n - \ \"ctaType\": {\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"creativeViewUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user was shown this promoted item.\"\n - \ },\n \"impressionUrl\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The list of impression - URLs. The client should ping all of these URLs to indicate that the user was - shown this promoted item.\",\n \"type\": \"array\"\n },\n - \ \"descriptionText\": {\n \"type\": \"string\",\n \"description\": - \"The text description to accompany the promoted item.\"\n },\n \"destinationUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should direct the user to, if the user chooses to visit the advertiser's - website.\"\n },\n \"clickTrackingUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user clicked through on this promoted item.\"\n }\n - \ },\n \"description\": \"Details about a resource which is being - promoted.\",\n \"type\": \"object\"\n },\n \"ChannelToStoreLinkDetails\": - {\n \"properties\": {\n \"storeUrl\": {\n \"description\": - \"Landing page of the store.\",\n \"type\": \"string\"\n },\n - \ \"storeName\": {\n \"description\": \"Name of the store.\",\n - \ \"type\": \"string\"\n },\n \"merchantId\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"Google Merchant Center id of the store.\"\n }\n },\n \"description\": - \"Information specific to a store on a merchandising platform linked to a - YouTube channel.\",\n \"id\": \"ChannelToStoreLinkDetails\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsSocial\": {\n \"id\": - \"ActivityContentDetailsSocial\",\n \"type\": \"object\",\n \"description\": - \"Details about a social network post.\",\n \"properties\": {\n \"type\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ],\n \"description\": \"The name - of the social network.\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object encapsulates - information that identifies the resource associated with a social network - post.\"\n },\n \"author\": {\n \"type\": \"string\",\n - \ \"description\": \"The author of the social network post.\"\n },\n - \ \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"An image of the post's author.\"\n },\n \"referenceUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL of - the social network post.\"\n }\n }\n },\n \"Thumbnail\": - {\n \"id\": \"Thumbnail\",\n \"type\": \"object\",\n \"properties\": - {\n \"url\": {\n \"description\": \"The thumbnail image's - URL.\",\n \"type\": \"string\"\n },\n \"width\": {\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"(Optional) Width of the thumbnail image.\"\n },\n \"height\": - {\n \"format\": \"uint32\",\n \"description\": \"(Optional) - Height of the thumbnail image.\",\n \"type\": \"integer\"\n }\n - \ },\n \"description\": \"A thumbnail is an image representing a - YouTube resource.\"\n },\n \"LocalizedProperty\": {\n \"properties\": - {\n \"default\": {\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The - language of the default property.\"\n },\n \"localized\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n }\n }\n },\n \"id\": \"LocalizedProperty\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": {\n - \ \"type\": \"object\",\n \"id\": \"LiveChatMessageListResponse\",\n - \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"LiveChatMessage\"\n }\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"offlineAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the underlying stream - went offline.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"pollingIntervalMillis\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The amount - of time the client should wait before polling again.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveChatMessageListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"PlaylistItemListResponse\": {\n \"id\": - \"PlaylistItemListResponse\",\n \"properties\": {\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"description\": - \"A list of playlist items that match the request criteria.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"properties\": {\n \"secondaryReasons\": {\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"description\": \"The secondary reasons associated with this reason, - if any are available. (There might be 0 or more.)\",\n \"type\": - \"array\"\n },\n \"label\": {\n \"description\": \"The - localized label belonging to this abuse report reason.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - a video category, such as its localized title.\",\n \"type\": \"object\",\n - \ \"id\": \"VideoAbuseReportReasonSnippet\"\n },\n \"ActivityContentDetailsLike\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the rated resource.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsLike\",\n \"description\": - \"Information about a resource that received a positive (like) rating.\"\n - \ },\n \"LiveStreamStatus\": {\n \"description\": \"Brief description - of the live stream status.\",\n \"type\": \"object\",\n \"properties\": - {\n \"streamStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ]\n },\n \"healthStatus\": - {\n \"$ref\": \"LiveStreamHealthStatus\",\n \"description\": - \"The health status of the stream.\"\n }\n },\n \"id\": \"LiveStreamStatus\"\n - \ },\n \"VideoTopicDetails\": {\n \"type\": \"object\",\n \"description\": - \"Freebase topic information related to the video.\",\n \"properties\": - {\n \"topicCategories\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\"\n },\n \"topicIds\": {\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"relevantTopicIds\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Similar to topic_id, - except that these topics are merely relevant to the video. These are topics - that may be mentioned in, or appear in the video. You can retrieve information - about each topic using Freebase Topic API.\"\n }\n },\n \"id\": - \"VideoTopicDetails\"\n },\n \"ChannelSectionListResponse\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"description\": \"A list of ChannelSections - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"type\": \"array\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#channelSectionListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelSectionListResponse\"\n },\n \"PropertyValue\": {\n \"description\": - \"A pair Property / Value.\",\n \"type\": \"object\",\n \"id\": - \"PropertyValue\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\",\n \"description\": \"The property's value.\"\n },\n - \ \"property\": {\n \"description\": \"A property.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatBanSnippet\": {\n \"id\": - \"LiveChatBanSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"type\": {\n \"type\": \"string\",\n \"description\": - \"The type of ban.\",\n \"enumDescriptions\": [\n \"An - invalid ban type.\",\n \"A permanent ban.\",\n \"A temporary - ban.\"\n ],\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ]\n },\n - \ \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banDurationSeconds\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The duration of a ban, only filled if the ban - has type TEMPORARY.\",\n \"type\": \"string\"\n },\n \"liveChatId\": - {\n \"description\": \"The chat this ban is pertinent to.\",\n \"type\": - \"string\"\n }\n }\n },\n \"CommentThreadListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentThreadListResponse\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"description\": \"A list of comment threads that match the request - criteria.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n },\n \"id\": \"CommentThreadListResponse\"\n - \ },\n \"AbuseReport\": {\n \"id\": \"AbuseReport\",\n \"type\": - \"object\",\n \"properties\": {\n \"abuseTypes\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"AbuseType\"\n - \ }\n },\n \"description\": {\n \"type\": \"string\"\n - \ },\n \"subject\": {\n \"$ref\": \"Entity\"\n },\n - \ \"relatedEntities\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"RelatedEntity\"\n }\n }\n }\n - \ },\n \"I18nRegionListResponse\": {\n \"id\": \"I18nRegionListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"I18nRegion\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of regions - where YouTube is available. In this map, the i18n region ID is the map key, - and its value is the corresponding i18nRegion resource.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#i18nRegionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoMonetizationDetails\": {\n \"description\": - \"Details about monetization of a YouTube Video.\",\n \"properties\": - {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoMonetizationDetails\"\n - \ },\n \"VideoProcessingDetailsProcessingProgress\": {\n \"type\": - \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"Video processing progress and completion time estimate.\",\n - \ \"properties\": {\n \"partsProcessed\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of parts of the video that YouTube has already processed. You can estimate - the percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\"\n },\n - \ \"timeLeftMs\": {\n \"description\": \"An estimate of the - amount of time, in millseconds, that YouTube needs to finish processing the - video.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"partsTotal\": {\n \"description\": \"An estimate - of the total number of parts that need to be processed for the video. The - number may be updated with more precise estimates while YouTube processes - the video.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ }\n }\n },\n \"AccessPolicy\": {\n \"properties\": - {\n \"allowed\": {\n \"description\": \"The value of allowed - indicates whether the access to the policy is allowed or denied by default.\",\n - \ \"type\": \"boolean\"\n },\n \"exception\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the default policy do not apply.\"\n }\n },\n \"description\": - \"Rights management policy for YouTube resources.\",\n \"type\": \"object\",\n - \ \"id\": \"AccessPolicy\"\n },\n \"CaptionSnippet\": {\n \"properties\": - {\n \"trackKind\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"description\": \"The caption track's type.\"\n },\n - \ \"isDraft\": {\n \"type\": \"boolean\",\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n },\n \"name\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The name of the - caption track. The name is intended to be visible to the user as an option - during playback.\",\n \"type\": \"string\"\n },\n \"isEasyReader\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n - \ },\n \"isCC\": {\n \"description\": \"Indicates whether - the track contains closed captions for the deaf and hard of hearing. The default - value is false.\",\n \"type\": \"boolean\"\n },\n \"audioTrackType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"description\": \"The - type of audio track associated with the caption track.\",\n \"type\": - \"string\"\n },\n \"lastUpdated\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the caption track was - last updated.\",\n \"format\": \"date-time\"\n },\n \"failureReason\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The reason that - YouTube failed to process the caption track. This property is only present - if the state property's value is failed.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ]\n },\n \"language\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The language of the caption track. The property - value is a BCP-47 language tag.\"\n },\n \"status\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The caption track's - status.\",\n \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ]\n },\n \"videoId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video associated with the caption track. - @mutable youtube.captions.insert\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n }\n - \ },\n \"isLarge\": {\n \"description\": \"Indicates - whether the caption track uses large text for the vision-impaired. The default - value is false.\",\n \"type\": \"boolean\"\n },\n \"isAutoSynced\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a caption track, such as its language and name.\",\n \"id\": - \"CaptionSnippet\"\n },\n \"TestItemTestItemSnippet\": {\n \"properties\": - {},\n \"type\": \"object\",\n \"id\": \"TestItemTestItemSnippet\"\n - \ },\n \"MembershipsLevelListResponse\": {\n \"properties\": {\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#membershipsLevelListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of pricing levels offered by a creator to the fans.\",\n \"items\": - {\n \"$ref\": \"MembershipsLevel\"\n }\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"MembershipsLevelListResponse\"\n - \ },\n \"ThirdPartyLink\": {\n \"description\": \"A *third party - account link* resource represents a link between a YouTube account or a channel - and an account on a third-party service.\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLink\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLink\\\".\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource\",\n \"type\": - \"string\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the status of the link.\",\n - \ \"$ref\": \"ThirdPartyLinkStatus\"\n },\n \"snippet\": - {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\"\n },\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"ThirdPartyLink\"\n },\n \"I18nRegionSnippet\": - {\n \"description\": \"Basic details about an i18n region, such as region - code and human-readable name.\",\n \"properties\": {\n \"name\": - {\n \"description\": \"The human-readable name of the region.\",\n - \ \"type\": \"string\"\n },\n \"gl\": {\n \"type\": - \"string\",\n \"description\": \"The region code as a 2-letter ISO - country code.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"I18nRegionSnippet\"\n },\n \"ChannelProfileDetails\": {\n \"properties\": - {\n \"profileImageUrl\": {\n \"description\": \"The channels's - avatar URL.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n },\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The channel's display name.\"\n - \ },\n \"channelUrl\": {\n \"description\": \"The channel's - URL.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ChannelProfileDetails\",\n \"type\": \"object\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"properties\": {\n \"banDurationSeconds\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - duration of the ban. This property is only present if the banType is temporary.\"\n - \ },\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"The details of the user that was banned.\"\n - \ },\n \"banType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ],\n \"description\": \"The - type of ban.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveChatUserBannedMessageDetails\",\n \"type\": \"object\"\n },\n - \ \"ThumbnailSetResponse\": {\n \"id\": \"ThumbnailSetResponse\",\n - \ \"properties\": {\n \"items\": {\n \"description\": - \"A list of thumbnails.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThumbnailDetails\"\n }\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#thumbnailSetResponse\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelTopicDetails\": - {\n \"properties\": {\n \"topicIds\": {\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"topicCategories\": {\n \"description\": \"A - list of Wikipedia URLs that describe the channel's content.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"id\": \"ChannelTopicDetails\",\n \"type\": - \"object\",\n \"description\": \"Freebase topic information related to - the channel.\"\n }\n },\n \"fullyEncodeReservedExpansion\": true\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:39 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCDMWKl6zT0AYMEhL9mWjjNA&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"Rhw2JGaMdl1AxmCCMvOfduR9XCQ\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"5O_I-6mrIyGDSOIIC76Mc1f_-Bk\",\n \"id\": \"UCDMWKl6zT0AYMEhL9mWjjNA\",\n - \ \"snippet\": {\n \"title\": \"Sarbehawa\",\n \"description\": - \"Hi Enter With Smile\U0001F609\",\n \"customUrl\": \"@sarbehawa\",\n - \ \"publishedAt\": \"2022-04-20T14:29:24.853718Z\",\n \"thumbnails\": - {\n \"default\": {\n \"url\": \"https://yt3.ggpht.com/gmRlRyWf27EbDwpQaP_ADj-fw0ThzfjyctcqROBr7RcJ5bixv0s8n_hamQSUQjx3k6FGROmL=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/gmRlRyWf27EbDwpQaP_ADj-fw0ThzfjyctcqROBr7RcJ5bixv0s8n_hamQSUQjx3k6FGROmL=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/gmRlRyWf27EbDwpQaP_ADj-fw0ThzfjyctcqROBr7RcJ5bixv0s8n_hamQSUQjx3k6FGROmL=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Sarbehawa\",\n \"description\": - \"Hi Enter With Smile\U0001F609\"\n },\n \"country\": \"US\"\n - \ },\n \"brandingSettings\": {\n \"channel\": {\n \"title\": - \"Sarbehawa\",\n \"description\": \"Hi Enter With Smile\U0001F609\",\n - \ \"unsubscribedTrailer\": \"4Fl9xJqFBrk\",\n \"country\": - \"US\"\n },\n \"image\": {\n \"bannerExternalUrl\": - \"https://yt3.googleusercontent.com/rO7hbJ8QVwUR7XnRyJOQdFI-0EjuxCf84OUDpgoDOGLctexKtG6zftlPhLZF2G6Q-h3c4TE1SQ\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:40 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"servicePath\": \"\",\n \"kind\": \"discovery#restDescription\",\n - \ \"batchPath\": \"batch\",\n \"discoveryVersion\": \"v1\",\n \"parameters\": - {\n \"callback\": {\n \"type\": \"string\",\n \"description\": - \"JSONP\",\n \"location\": \"query\"\n },\n \"access_token\": {\n - \ \"description\": \"OAuth access token.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"oauth_token\": {\n \"description\": - \"OAuth 2.0 token for the current user.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"prettyPrint\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": \"Returns - response with indentations and line breaks.\",\n \"default\": \"true\"\n - \ },\n \"quotaUser\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"upload_protocol\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"Upload protocol - for media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n },\n \"key\": {\n - \ \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"uploadType\": {\n \"description\": \"Legacy upload protocol - for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"fields\": {\n \"type\": - \"string\",\n \"description\": \"Selector specifying which fields to - include in a partial response.\",\n \"location\": \"query\"\n },\n - \ \"$.xgafv\": {\n \"location\": \"query\",\n \"description\": - \"V1 error format.\",\n \"enumDescriptions\": [\n \"v1 error format\",\n - \ \"v2 error format\"\n ],\n \"enum\": [\n \"1\",\n - \ \"2\"\n ],\n \"type\": \"string\"\n },\n \"alt\": - {\n \"description\": \"Data format for response.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"Responses with Content-Type - of application/json\",\n \"Media download with context-dependent Content-Type\",\n - \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n - \ \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"type\": \"string\",\n \"default\": \"json\"\n }\n - \ },\n \"id\": \"youtube:v3\",\n \"basePath\": \"\",\n \"mtlsRootUrl\": - \"https://youtube.mtls.googleapis.com/\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"name\": \"youtube\",\n \"revision\": \"20230220\",\n \"resources\": - {\n \"members\": {\n \"methods\": {\n \"list\": {\n \"path\": - \"youtube/v3/members\",\n \"parameters\": {\n \"filterByMemberChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Comma - separated list of channel IDs. Only data about members that are part of this - list will be included in the response.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the member resource parts that the API response will include. Set the parameter - value to snippet.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"maximum\": \"1000\",\n \"type\": - \"integer\",\n \"default\": \"5\"\n },\n \"mode\": - {\n \"default\": \"all_current\",\n \"enum\": [\n - \ \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ],\n \"description\": \"Parameter - that specifies which channel members to return.\",\n \"location\": - \"query\"\n },\n \"hasAccessToLevel\": {\n \"location\": - \"query\",\n \"description\": \"Filter members in the results - set to the ones that have access to a level.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.members.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"flatPath\": \"youtube/v3/members\",\n \"response\": - {\n \"$ref\": \"MemberListResponse\"\n },\n \"description\": - \"Retrieves a list of members that match the request criteria for a channel.\"\n - \ }\n }\n },\n \"watermarks\": {\n \"methods\": {\n - \ \"set\": {\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"id\": \"youtube.watermarks.set\",\n \"description\": - \"Allows upload of watermark image and setting it for a channel.\",\n \"request\": - {\n \"$ref\": \"InvideoBranding\"\n },\n \"parameters\": - {\n \"channelId\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/watermarks/set\",\n \"httpMethod\": - \"POST\",\n \"supportsMediaUpload\": true,\n \"flatPath\": - \"youtube/v3/watermarks/set\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"mediaUpload\": {\n \"maxSize\": \"10485760\",\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ]\n }\n },\n \"unset\": {\n \"flatPath\": - \"youtube/v3/watermarks/unset\",\n \"description\": \"Allows removal - of channel watermark.\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"path\": \"youtube/v3/watermarks/unset\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"channelId\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.watermarks.unset\",\n \"httpMethod\": - \"POST\"\n }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"delete\": {\n \"description\": \"Deletes a resource.\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"id\": \"youtube.channelSections.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\"\n - \ },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"flatPath\": \"youtube/v3/channelSections\",\n \"path\": - \"youtube/v3/channelSections\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.channelSections.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\"\n },\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"ChannelSectionListResponse\"\n },\n \"parameters\": - {\n \"channelId\": {\n \"description\": \"Return the - ChannelSections owned by the specified channel ID.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"mine\": {\n \"description\": - \"Return the ChannelSections owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.channelSections.list\"\n },\n \"update\": - {\n \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"path\": \"youtube/v3/channelSections\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"id\": \"youtube.channelSections.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"description\": \"Updates an existing resource.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/channelSections\"\n - \ }\n }\n },\n \"liveChatBans\": {\n \"methods\": {\n - \ \"insert\": {\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"description\": - \"Inserts a new resource into this collection.\"\n },\n \"delete\": - {\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a chat ban.\",\n \"id\": \"youtube.liveChatBans.delete\",\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ]\n }\n }\n },\n \"superChatEvents\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.superChatEvents.list\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the superChatEvent resource parts that the API response will include. This - parameter is currently not supported.\",\n \"repeated\": true,\n - \ \"required\": true\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"5\",\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"1\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"Return rendered funding amounts in specified - language.\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/superChatEvents\",\n \"response\": - {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\"\n - \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"id\": \"youtube.membershipsLevels.list\",\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/membershipsLevels\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"delete\": {\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"Do not use. Required for compatibility.\",\n - \ \"location\": \"query\"\n },\n \"linkingToken\": - {\n \"location\": \"query\",\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"description\": \"Type of the link to be deleted.\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.delete\",\n \"description\": \"Deletes - a resource.\",\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ],\n \"path\": \"youtube/v3/thirdPartyLinks\"\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new resource into this collection.\",\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.insert\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API request and response will include. - Supported values are linkingToken, status, and snippet.\",\n \"repeated\": - true\n }\n },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n }\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"parameters\": {\n \"type\": {\n \"description\": - \"Get a third party link of the given type.\",\n \"enum\": [\n - \ \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - response will include. Supported values are linkingToken, status, and snippet.\",\n - \ \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"linkingToken\": {\n \"description\": - \"Get a third party link with the given linking token.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.thirdPartyLinks.list\"\n },\n - \ \"update\": {\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"description\": \"Updates an existing resource.\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"required\": true,\n \"location\": - \"query\"\n }\n }\n }\n }\n },\n \"i18nLanguages\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/i18nLanguages\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the i18nLanguage resource properties that the API - response will include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"default\": \"en_US\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"playlists\": - {\n \"methods\": {\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": true\n - \ }\n },\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"id\": \"youtube.playlists.insert\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ },\n \"delete\": {\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"httpMethod\": \"DELETE\",\n - \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.playlists.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"maximum\": \"50\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"description\": \"Return - content in specified language\",\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the playlists owned by - the specified channel ID.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Return the playlists owned by the authenticated - user.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"Return the playlists with the given IDs for - Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/playlists\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"PlaylistListResponse\"\n },\n \"httpMethod\": - \"GET\"\n },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.playlists.update\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"request\": {\n - \ \"$ref\": \"Playlist\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"description\": \"Updates an existing resource.\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"parameterOrder\": [],\n \"flatPath\": - \"youtube/v3/channelBanners/insert\",\n \"parameters\": {\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"id\": \"youtube.channelBanners.insert\",\n \"supportsMediaUpload\": - true,\n \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"request\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"mediaUpload\": {\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/channelBanners/insert\"\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\"\n }\n }\n - \ }\n },\n \"liveStreams\": {\n \"methods\": {\n \"delete\": - {\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"description\": - \"Deletes an existing stream for the authenticated user.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.liveStreams.delete\",\n - \ \"path\": \"youtube/v3/liveStreams\"\n },\n \"insert\": - {\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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, content_details, and status.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"list\": {\n \"parameters\": {\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\"\n },\n \"part\": {\n \"description\": - \"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.\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Return - LiveStreams with the given ids from Stubby or Apiary.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\",\n - \ \"id\": \"youtube.liveStreams.list\",\n \"response\": {\n - \ \"$ref\": \"LiveStreamListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\"\n },\n \"update\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveStreams\",\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"id\": \"youtube.liveStreams.update\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"httpMethod\": \"PUT\"\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"hl\": {\n - \ \"default\": \"en_US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the i18nRegion - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/i18nRegions\"\n - \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n - \ \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.abuseReports.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"request\": {\n \"$ref\": \"AbuseReport\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"flatPath\": \"youtube/v3/abuseReports\"\n }\n }\n - \ },\n \"liveChatMessages\": {\n \"methods\": {\n \"delete\": - {\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.liveChatMessages.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Deletes a chat message.\"\n },\n - \ \"insert\": {\n \"request\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"id\": \"youtube.liveChatMessages.insert\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": - true\n }\n },\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.liveChatMessages.list\",\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"hl\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Specifies the localization language - in which the system messages should be returned.\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the liveChatComment - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"liveChatId\": {\n \"description\": - \"The id of the live chat for which comments should be returned.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"profileImageSize\": - {\n \"format\": \"uint32\",\n \"maximum\": \"720\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\",\n \"minimum\": \"16\",\n - \ \"type\": \"integer\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"default\": - \"500\",\n \"maximum\": \"2000\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"minimum\": \"200\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"thumbnails\": {\n \"methods\": - {\n \"set\": {\n \"id\": \"youtube.thumbnails.set\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/thumbnails/set\",\n \"multipart\": - true\n },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n }\n - \ },\n \"maxSize\": \"2097152\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"path\": \"youtube/v3/thumbnails/set\",\n \"parameterOrder\": - [\n \"videoId\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"videoId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"ThumbnailSetResponse\"\n },\n \"supportsMediaUpload\": - true,\n \"description\": \"As this is not an insert in a strict sense - (it supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"httpMethod\": - \"POST\"\n }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": - {\n \"maxResults\": {\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"location\": \"query\",\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"type\": \"integer\"\n - \ },\n \"liveChatId\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"The id of the live chat for which moderators - should be returned.\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the liveChatModerator resource parts that the API response - will include. Supported values are id and snippet.\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveChatModeratorListResponse\"\n },\n \"id\": \"youtube.liveChatModerators.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\"\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat moderator.\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"id\": \"youtube.liveChatModerators.delete\"\n - \ },\n \"insert\": {\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"repeated\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/liveChat/moderators\"\n - \ }\n }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"TestItem\"\n - \ },\n \"path\": \"youtube/v3/tests\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"id\": \"youtube.tests.insert\",\n \"httpMethod\": \"POST\",\n - \ \"description\": \"POST method.\",\n \"response\": {\n - \ \"$ref\": \"TestItem\"\n },\n \"flatPath\": - \"youtube/v3/tests\"\n }\n }\n },\n \"liveBroadcasts\": - {\n \"methods\": {\n \"transition\": {\n \"description\": - \"Transition a broadcast to a given status.\",\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Broadcast to transition.\",\n \"required\": true,\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"broadcastStatus\": {\n \"enum\": - [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"The status to which the broadcast - is going to transition.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Start testing the broadcast. YouTube transmits video to - the broadcast's monitor stream. Note that you can only transition a broadcast - to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ]\n }\n },\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"id\": - \"youtube.liveBroadcasts.transition\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"update\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"id\": \"youtube.liveBroadcasts.update\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"Updates an existing broadcast for the authenticated user.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"bind\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveBroadcasts.bind\",\n - \ \"description\": \"Bind a broadcast to a stream.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Broadcast - to bind to the stream\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"streamId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Stream to bind, if not set unbind the current one.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameterOrder\": [\n \"id\",\n - \ \"part\"\n ]\n },\n \"list\": {\n \"response\": - {\n \"$ref\": \"LiveBroadcastListResponse\"\n },\n \"parameters\": - {\n \"pageToken\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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, status and statistics.\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"broadcastStatus\": {\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return current - live broadcasts.\",\n \"Return broadcasts that have not yet - started.\",\n \"Return broadcasts that have already ended.\"\n - \ ]\n },\n \"broadcastType\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"location\": \"query\",\n - \ \"default\": \"event\",\n \"description\": \"Return - only broadcasts with the selected type.\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"location\": \"query\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"type\": - \"integer\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieve - the list of broadcasts associated with the given channel.\"\n },\n - \ \"delete\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Delete a - given broadcast.\",\n \"parameters\": {\n \"id\": {\n - \ \"description\": \"Broadcast to delete.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"insert\": {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Inserts - a new stream for the authenticated user.\",\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.insert\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ }\n },\n \"insertCuepoint\": {\n \"path\": - \"youtube/v3/liveBroadcasts/cuepoint\",\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Insert cuepoints - in a broadcast\",\n \"response\": {\n \"$ref\": \"Cuepoint\"\n - \ },\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Broadcast to insert ads to, - or equivalently `external_video_id` for internal use.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Cuepoint\"\n - \ },\n \"parameterOrder\": []\n }\n }\n },\n - \ \"channels\": {\n \"methods\": {\n \"list\": {\n \"path\": - \"youtube/v3/channels\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.channels.list\",\n \"response\": - {\n \"$ref\": \"ChannelListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"managedByMe\": - {\n \"location\": \"query\",\n \"description\": - \"Return the channels managed by the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"forUsername\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the channel associated with a YouTube username.\"\n },\n - \ \"hl\": {\n \"type\": \"string\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the ids of channels owned by the authenticated user.\"\n },\n - \ \"maxResults\": {\n \"default\": \"5\",\n \"type\": - \"integer\",\n \"description\": \"The *maxResults* parameter - specifies the maximum number of items that should be returned in the result - set.\",\n \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"location\": \"query\"\n - \ },\n \"mySubscribers\": {\n \"description\": - \"Return the channels subscribed to the authenticated user\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"categoryId\": - {\n \"description\": \"Return the channels within the specified - guide category ID.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": true\n },\n - \ \"id\": {\n \"description\": \"Return the channels - with the specified IDs.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/channels\"\n },\n \"update\": {\n \"response\": - {\n \"$ref\": \"Channel\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Updates - an existing resource.\",\n \"request\": {\n \"$ref\": - \"Channel\"\n },\n \"path\": \"youtube/v3/channels\",\n - \ \"httpMethod\": \"PUT\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channels.update\"\n }\n }\n - \ },\n \"comments\": {\n \"methods\": {\n \"list\": {\n \"path\": - \"youtube/v3/comments\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"CommentListResponse\"\n },\n \"parameters\": {\n \"parentId\": - {\n \"description\": \"Returns replies to the specified comment. - Note, currently YouTube features only one level of replies (ie replies to - top level comments). However replies to replies may be supported in the future.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more comment resource - properties that the API response will include.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n },\n \"id\": - {\n \"description\": \"Returns the comments with the given IDs - for One Platform.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"textFormat\": {\n \"type\": \"string\",\n - \ \"default\": \"html\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"description\": \"The requested - text format for the returned comments.\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"maximum\": \"100\",\n \"default\": - \"20\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"minimum\": \"1\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"update\": {\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.update\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n - \ \"required\": true,\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Comment\"\n }\n },\n \"markAsSpam\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"Flags the comments with the given - IDs as spam in the caller's opinion.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n },\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"id\": \"youtube.comments.markAsSpam\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"id\"\n ]\n - \ },\n \"setModerationStatus\": {\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ],\n \"path\": - \"youtube/v3/comments/setModerationStatus\",\n \"description\": \"Sets - the moderation status of one or more comments.\",\n \"parameters\": - {\n \"moderationStatus\": {\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\"\n },\n - \ \"banAuthor\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"default\": \"false\",\n \"description\": - \"If set to true the author of the comment gets added to the ban list. This - means all future comments of the author will autmomatically be rejected. Only - valid in combination with STATUS_REJECTED.\"\n },\n \"id\": - {\n \"required\": true,\n \"description\": \"Modifies - the moderation status of the comments with the given IDs\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\"\n },\n - \ \"insert\": {\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"path\": \"youtube/v3/comments\",\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.comments.insert\"\n - \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/comments\",\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.comments.delete\"\n - \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [],\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"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.\"\n }\n },\n \"description\": - \"Updates an existing resource.\",\n \"id\": \"youtube.youtube.v3.updateCommentThreads\"\n - \ }\n }\n }\n }\n },\n \"search\": {\n - \ \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of search resources\",\n \"response\": {\n \"$ref\": - \"SearchListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"location\": {\n \"description\": - \"Filter on location of the video\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"publishedAfter\": - {\n \"description\": \"Filter on resources published after this - date.\",\n \"location\": \"query\",\n \"format\": - \"google-datetime\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Filter on resources belonging - to this channelId.\"\n },\n \"videoCaption\": {\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"location\": \"query\"\n },\n \"videoLicense\": - {\n \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"description\": - \"Filter on the license of the videos.\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"videoDefinition\": {\n \"description\": - \"Filter on the definition of the videos.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ],\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ]\n },\n \"videoEmbeddable\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"description\": \"Filter on embeddable videos.\",\n \"enum\": - [\n \"videoEmbeddableUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"safeSearch\": - {\n \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"moderate\",\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"location\": \"query\"\n },\n \"eventType\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on the livestream status of the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n - \ },\n \"videoCategoryId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on videos in a specific category.\"\n },\n \"type\": - {\n \"repeated\": true,\n \"description\": \"Restrict - results to a particular set of resource types from One Platform.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"order\": - {\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"relevance\",\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"description\": - \"Sort order of the results.\"\n },\n \"topicId\": {\n - \ \"type\": \"string\",\n \"description\": \"Restrict - results to a particular topic.\",\n \"location\": \"query\"\n - \ },\n \"q\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Textual - search terms to match.\"\n },\n \"regionCode\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Display the content as seen by viewers in - this country.\"\n },\n \"videoType\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": - [\n \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ],\n \"description\": - \"Filter on videos of a specific type.\",\n \"location\": \"query\"\n - \ },\n \"forDeveloper\": {\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"channelType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all channels.\",\n \"Only retrieve shows.\"\n ],\n - \ \"description\": \"Add a filter on the channel search.\",\n - \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"relevanceLanguage\": - {\n \"type\": \"string\",\n \"description\": \"Return - results relevant to this language.\",\n \"location\": \"query\"\n - \ },\n \"forMine\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Search - for the private videos of the authenticated user.\"\n },\n \"locationRadius\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on distance from the location (specified - above).\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"relatedToVideoId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Search related to a resource.\"\n },\n \"videoDuration\": - {\n \"enumDescriptions\": [\n \"\",\n \"Do - not filter video search results based on their duration. This is the default - value.\",\n \"Only include videos that are less than four minutes - long.\",\n \"Only include videos that are between four and - 20 minutes long (inclusive).\",\n \"Only include videos longer - than 20 minutes.\"\n ],\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"description\": - \"Filter on the duration of the videos.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"videoDimension\": - {\n \"enumDescriptions\": [\n \"Include both 3D - and non-3D videos in returned results. This is the default value.\",\n \"Restrict - search results to exclude 3D videos.\",\n \"Restrict search - results to only include 3D videos.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"description\": \"Filter - on 3d videos.\",\n \"type\": \"string\"\n },\n \"publishedBefore\": - {\n \"description\": \"Filter on resources published before this - date.\",\n \"location\": \"query\",\n \"format\": - \"google-datetime\",\n \"type\": \"string\"\n },\n - \ \"videoSyndicated\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all videos, syndicated or - not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"description\": - \"Filter on syndicated videos.\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"forContentOwner\": - {\n \"description\": \"Search owned by a content owner.\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.search.list\",\n - \ \"path\": \"youtube/v3/search\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/search\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.commentThreads.insert\",\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"flatPath\": \"youtube/v3/commentThreads\"\n },\n \"list\": - {\n \"id\": \"youtube.commentThreads.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"textFormat\": {\n - \ \"location\": \"query\",\n \"default\": \"html\",\n - \ \"description\": \"The requested text format for the returned - comments.\",\n \"type\": \"string\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ]\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"default\": \"20\",\n - \ \"minimum\": \"1\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"maximum\": \"100\"\n },\n \"videoId\": - {\n \"description\": \"Returns the comment threads of the specified - video.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"searchTerms\": {\n \"location\": - \"query\",\n \"description\": \"Limits the returned comment threads - to those matching the specified key words. Not compatible with the 'id' filter.\",\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n },\n \"moderationStatus\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"description\": \"Limits the returned comment threads to those - with the specified moderation status. Not compatible with the 'id' filter. - Valid values: published, heldForReview, likelySpam.\",\n \"default\": - \"published\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\",\n \"repeated\": true\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\",\n \"type\": \"string\"\n },\n - \ \"order\": {\n \"type\": \"string\",\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"default\": \"time\"\n }\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThreadListResponse\"\n }\n }\n - \ }\n },\n \"captions\": {\n \"methods\": {\n \"download\": - {\n \"id\": \"youtube.captions.download\",\n \"supportsMediaDownload\": - true,\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Downloads a caption track.\",\n \"parameters\": {\n \"tlang\": - {\n \"description\": \"tlang is the language code; machine translate - the captions into this language.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"required\": true,\n \"location\": \"path\",\n - \ \"description\": \"The ID of the caption track to download, - required for One Platform.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\"\n },\n \"tfmt\": - {\n \"location\": \"query\",\n \"description\": - \"Convert the captions into this format. Supported options are sbv, srt, and - vtt.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/captions/{id}\",\n \"useMediaDownloadService\": - true\n },\n \"delete\": {\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n },\n \"id\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.captions.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Deletes a resource.\"\n },\n \"list\": - {\n \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.list\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\",\n - \ \"videoId\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"parameters\": {\n \"videoId\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"Returns the captions for the specified video.\",\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true,\n \"location\": - \"query\"\n },\n \"id\": {\n \"description\": - \"Returns the captions with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n }\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"location\": - \"query\"\n },\n \"sync\": {\n \"location\": - \"query\",\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"type\": - \"boolean\"\n }\n },\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"mediaUpload\": {\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ }\n },\n \"maxSize\": \"104857600\",\n - \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"supportsMediaUpload\": true,\n \"id\": \"youtube.captions.insert\"\n - \ },\n \"update\": {\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"supportsMediaUpload\": true,\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n - \ \"protocols\": {\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ },\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"path\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.update\",\n - \ \"description\": \"Updates an existing resource.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": - true\n },\n \"sync\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\"\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"request\": {\n \"$ref\": \"Caption\"\n }\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"update\": - {\n \"id\": \"youtube.videos.update\",\n \"path\": \"youtube/v3/videos\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"request\": {\n - \ \"$ref\": \"Video\"\n },\n \"parameters\": {\n - \ \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"rate\": {\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.videos.rate\",\n \"path\": \"youtube/v3/videos/rate\",\n - \ \"flatPath\": \"youtube/v3/videos/rate\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Adds a like or dislike rating to a video or removes - a rating from a video.\",\n \"parameters\": {\n \"rating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n }\n },\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"response\": {\n \"$ref\": \"VideoListResponse\"\n - \ },\n \"id\": \"youtube.videos.list\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"path\": \"youtube/v3/videos\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"pageToken\": {\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Return - videos with the given ids.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoCategoryId\": {\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"default\": - \"0\",\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxHeight\": {\n \"format\": \"int32\",\n - \ \"minimum\": \"72\",\n \"maximum\": \"8192\",\n - \ \"type\": \"integer\",\n \"location\": \"query\"\n - \ },\n \"locale\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"regionCode\": - {\n \"description\": \"Use a chart that is specific to the specified - region\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"chart\": {\n \"enum\": - [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Return the videos that are in the specified - chart.\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"default\": \"5\",\n - \ \"minimum\": \"1\",\n \"maximum\": \"50\",\n \"type\": - \"integer\",\n \"description\": \"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.\",\n \"format\": \"uint32\"\n },\n - \ \"maxWidth\": {\n \"format\": \"int32\",\n \"maximum\": - \"8192\",\n \"minimum\": \"72\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the player with maximum height specified in\"\n },\n \"myRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"description\": - \"Return videos liked/disliked by the authenticated user. Does not support - RateType.RATED_TYPE_NONE.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n }\n },\n \"insert\": {\n - \ \"id\": \"youtube.videos.insert\",\n \"mediaUpload\": {\n - \ \"protocols\": {\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/videos\",\n \"multipart\": true\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"274877906944\",\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/videos\",\n \"supportsMediaUpload\": - true,\n \"parameters\": {\n \"notifySubscribers\": {\n - \ \"default\": \"true\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Notify - the channel subscribers about the new video. As default, the notification - is enabled.\"\n },\n \"autoLevels\": {\n \"type\": - \"boolean\",\n \"description\": \"Should auto-levels be applied - to the upload.\",\n \"location\": \"query\"\n },\n - \ \"stabilize\": {\n \"description\": \"Should stabilize - be applied to the upload.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.videos.delete\",\n \"path\": - \"youtube/v3/videos\",\n \"httpMethod\": \"DELETE\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"getRating\": {\n \"response\": {\n \"$ref\": - \"VideoGetRatingResponse\"\n },\n \"parameterOrder\": [\n - \ \"id\"\n ],\n \"flatPath\": \"youtube/v3/videos/getRating\",\n - \ \"path\": \"youtube/v3/videos/getRating\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves the ratings that the authorized - user gave to a list of specified videos.\",\n \"parameters\": {\n - \ \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.getRating\"\n },\n - \ \"reportAbuse\": {\n \"parameterOrder\": [],\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n - \ },\n \"description\": \"Report abuse for a video.\",\n - \ \"path\": \"youtube/v3/videos/reportAbuse\",\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"id\": \"youtube.videos.reportAbuse\"\n }\n - \ }\n },\n \"subscriptions\": {\n \"methods\": {\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/subscriptions\",\n \"description\": \"Deletes a resource.\",\n - \ \"id\": \"youtube.subscriptions.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"insert\": {\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"response\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"path\": \"youtube/v3/subscriptions\"\n },\n \"list\": - {\n \"parameters\": {\n \"myRecentSubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\",\n \"location\": - \"query\"\n },\n \"order\": {\n \"type\": - \"string\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"default\": \"relevance\",\n \"description\": - \"The order of the returned subscriptions\"\n },\n \"channelId\": - {\n \"description\": \"Return the subscriptions of the given - channel owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"forChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n },\n \"id\": {\n \"repeated\": true,\n - \ \"description\": \"Return the subscriptions with the given IDs - for Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mySubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the subscribers of the given channel - owner.\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.subscriptions.list\",\n \"path\": \"youtube/v3/subscriptions\"\n - \ }\n }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"path\": - \"youtube/v3/videoAbuseReportReasons\",\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"en-US\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the videoCategory resource parts that the - API response will include. Supported values are id and snippet.\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"activities\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/activities\",\n \"id\": \"youtube.activities.list\",\n - \ \"flatPath\": \"youtube/v3/activities\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"publishedAfter\": {\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"publishedBefore\": - {\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"type\": \"integer\"\n },\n - \ \"regionCode\": {\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"home\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"playlistItems\": {\n \"methods\": - {\n \"delete\": {\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.playlistItems.delete\"\n },\n \"update\": - {\n \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"description\": \"Updates an existing - resource.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.playlistItems.update\"\n },\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.playlistItems.insert\",\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"path\": \"youtube/v3/playlistItems\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"list\": {\n \"id\": \"youtube.playlistItems.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"PlaylistItemListResponse\"\n },\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the playlist items associated with - the given video ID.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the playlist items within the given playlist.\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"50\",\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ },\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.videoCategories.list\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"VideoCategoryListResponse\"\n },\n \"parameters\": {\n - \ \"hl\": {\n \"location\": \"query\",\n \"default\": - \"en-US\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"repeated\": true,\n \"description\": \"Returns - the video categories with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"type\": \"string\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/videoCategories\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videoCategories\"\n }\n }\n }\n - \ },\n \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n }\n }\n - \ }\n },\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"schemas\": {\n \"VideoProjectDetails\": {\n \"properties\": - {},\n \"type\": \"object\",\n \"description\": \"DEPRECATED. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"id\": \"VideoProjectDetails\"\n },\n \"LiveChatBan\": {\n \"type\": - \"object\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the ban.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatBan\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n }\n - \ },\n \"id\": \"LiveChatBan\",\n \"description\": \"A `__liveChatBan__` - resource represents a ban for a YouTube live chat.\"\n },\n \"I18nLanguageSnippet\": - {\n \"properties\": {\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"A short BCP-47 code that uniquely identifies - a language.\"\n },\n \"name\": {\n \"description\": - \"The human-readable name of the language in the language itself.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\",\n \"id\": \"I18nLanguageSnippet\"\n },\n \"PlaylistItem\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistItem\",\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"default\": \"youtube#playlistItem\"\n },\n \"snippet\": - {\n \"$ref\": \"PlaylistItemSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n - \ \"description\": \"The status object contains information about - the playlist item's privacy status.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\"\n }\n - \ }\n },\n \"VideoContentDetailsRegionRestriction\": {\n \"type\": - \"object\",\n \"properties\": {\n \"blocked\": {\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"allowed\": {\n \"description\": \"A list of - region codes that identify countries where the video is viewable. If this - property is present and a country is not listed in its value, then the video - is blocked from appearing in that country. If this property is present and - contains an empty list, the video is blocked in all countries.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"DEPRECATED Region restriction of the video.\"\n },\n - \ \"LevelDetails\": {\n \"properties\": {\n \"displayName\": - {\n \"description\": \"The name that should be used when referring - to this level.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LevelDetails\",\n \"type\": \"object\"\n },\n \"MonitorStreamInfo\": - {\n \"type\": \"object\",\n \"description\": \"Settings and Info - of the monitor stream\",\n \"properties\": {\n \"enableMonitorStream\": - {\n \"type\": \"boolean\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"This value determines whether the monitor stream - is enabled for the broadcast. If the monitor stream is enabled, then YouTube - will broadcast the event content on a special stream intended only for the - broadcaster's consumption. The broadcaster can use the stream to review the - event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\"\n },\n \"embedHtml\": {\n - \ \"type\": \"string\",\n \"description\": \"HTML code that - embeds a player that plays the monitor stream.\"\n },\n \"broadcastStreamDelayMs\": - {\n \"type\": \"integer\",\n \"description\": \"If you have - set the enableMonitorStream property to true, then this property determines - the length of the live broadcast delay.\",\n \"annotations\": {\n - \ \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"format\": \"uint32\"\n }\n - \ },\n \"id\": \"MonitorStreamInfo\"\n },\n \"ChannelConversionPing\": - {\n \"properties\": {\n \"conversionUrl\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"context\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"Defines the context - of the ping.\",\n \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelConversionPing\",\n - \ \"description\": \"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.\"\n },\n \"ChannelProfileDetails\": {\n - \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel ID.\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The channel's display name.\"\n - \ },\n \"channelUrl\": {\n \"description\": \"The channel's - URL.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ChannelProfileDetails\",\n \"type\": \"object\"\n },\n \"ChannelSectionTargeting\": - {\n \"id\": \"ChannelSectionTargeting\",\n \"description\": \"ChannelSection - targeting setting.\",\n \"type\": \"object\",\n \"properties\": - {\n \"regions\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The region the channel section is targeting.\"\n },\n \"countries\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The country the channel section is targeting.\",\n - \ \"type\": \"array\"\n },\n \"languages\": {\n \"description\": - \"The language the channel section is targeting.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ }\n }\n },\n \"LiveBroadcastListResponse\": {\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of broadcasts that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"default\": \"youtube#liveBroadcastListResponse\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveBroadcastListResponse\"\n - \ },\n \"CdnSettings\": {\n \"type\": \"object\",\n \"properties\": - {\n \"frameRate\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The frame rate of the inbound video data.\",\n - \ \"enum\": [\n \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ]\n },\n \"ingestionInfo\": {\n \"$ref\": - \"IngestionInfo\",\n \"description\": \"The ingestionInfo object - contains information that YouTube provides that you need to transmit your - RTMP or HTTP stream to YouTube.\"\n },\n \"ingestionType\": - {\n \"description\": \" The method or protocol used to transmit the - video stream.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"enum\": [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"type\": \"string\"\n },\n - \ \"resolution\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\",\n \"type\": \"string\"\n },\n \"format\": - {\n \"description\": \"The format of the video stream that you are - sending to Youtube. \",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"CdnSettings\",\n \"description\": \"Brief description - of the live stream cdn settings.\"\n },\n \"MembershipsDurationAtLevel\": - {\n \"properties\": {\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"description\": \"The cumulative time the user has - been a member for the given level in complete months (the time is rounded - down to the nearest integer).\",\n \"format\": \"int32\"\n },\n - \ \"memberSince\": {\n \"description\": \"The date and time - when the user became a continuous member for the given level.\",\n \"type\": - \"string\"\n },\n \"level\": {\n \"type\": \"string\",\n - \ \"description\": \"Pricing level ID.\"\n }\n },\n \"id\": - \"MembershipsDurationAtLevel\",\n \"type\": \"object\"\n },\n \"LiveChatBanSnippet\": - {\n \"id\": \"LiveChatBanSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The chat this ban is pertinent to.\"\n },\n \"banDurationSeconds\": - {\n \"format\": \"uint64\",\n \"description\": \"The duration - of a ban, only filled if the ban has type TEMPORARY.\",\n \"type\": - \"string\"\n },\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"description\": - \"The type of ban.\"\n }\n }\n },\n \"CommentThreadSnippet\": - {\n \"type\": \"object\",\n \"id\": \"CommentThreadSnippet\",\n - \ \"properties\": {\n \"canReply\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n },\n \"isPublic\": {\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\",\n \"type\": \"boolean\"\n },\n \"topLevelComment\": - {\n \"description\": \"The top level comment of this thread.\",\n - \ \"$ref\": \"Comment\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\",\n \"type\": \"string\"\n },\n - \ \"totalReplyCount\": {\n \"type\": \"integer\",\n \"description\": - \"The total number of replies (not including the top level comment).\",\n - \ \"format\": \"uint32\"\n },\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Basic details about a comment thread.\"\n },\n - \ \"ThirdPartyLinkListResponse\": {\n \"id\": \"ThirdPartyLinkListResponse\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoRecordingDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"locationDescription\": - {\n \"description\": \"The text description of the location where - the video was recorded.\",\n \"type\": \"string\"\n },\n \"location\": - {\n \"$ref\": \"GeoPoint\",\n \"description\": \"The geolocation - information associated with the video.\"\n },\n \"recordingDate\": - {\n \"description\": \"The date and time when the video was recorded.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoRecordingDetails\",\n \"description\": - \"Recording information associated with the video.\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the member to this Member Milestone Chat. This field is empty for - messages without a comment from the member.\"\n },\n \"memberMonth\": - {\n \"description\": \"The total amount of months (rounded up) the - viewer has been a member that granted them this Member Milestone Chat. This - is the same number of months as is being displayed to YouTube users.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"memberLevelName\": {\n \"description\": \"The name of the - Level at which the viever is a member. The Level names are defined by the - YouTube channel offering the Membership. In some situations this field isn't - filled.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"SubscriptionListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"description\": \"A list of subscriptions - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Subscription\"\n },\n \"type\": \"array\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#subscriptionListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"SubscriptionListResponse\"\n - \ },\n \"LiveChatNewSponsorDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatNewSponsorDetails\",\n \"properties\": {\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level that the viewer just had joined. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"isUpgrade\": {\n \"type\": - \"boolean\",\n \"description\": \"If the viewer just had upgraded - from a lower level. For viewers that were not members at the time of purchase, - this field is false.\"\n }\n }\n },\n \"ActivityContentDetailsBulletin\": - {\n \"id\": \"ActivityContentDetailsBulletin\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Details about - a channel bulletin post.\"\n },\n \"InvideoBranding\": {\n \"type\": - \"object\",\n \"description\": \"LINT.IfChange Describes an invideo branding.\",\n - \ \"id\": \"InvideoBranding\",\n \"properties\": {\n \"imageBytes\": - {\n \"description\": \"The bytes the uploaded image. Only used in - api to youtube communication.\",\n \"type\": \"string\",\n \"format\": - \"byte\"\n },\n \"targetChannelId\": {\n \"description\": - \"The channel to which this branding links. If not present it defaults to - the current channel.\",\n \"type\": \"string\"\n },\n \"imageUrl\": - {\n \"description\": \"The url of the uploaded image. Only used in - apiary to api communication.\",\n \"type\": \"string\"\n },\n - \ \"position\": {\n \"description\": \"The spatial position - within the video where the branding watermark will be displayed.\",\n \"$ref\": - \"InvideoPosition\"\n },\n \"timing\": {\n \"description\": - \"The temporal position within the video where watermark will be displayed.\",\n - \ \"$ref\": \"InvideoTiming\"\n }\n }\n },\n \"VideoFileDetails\": - {\n \"type\": \"object\",\n \"description\": \"Describes original - video file properties, including technical details about audio and video streams, - but also metadata information like content length, digitization time, or geotagging - information.\",\n \"properties\": {\n \"durationMs\": {\n \"description\": - \"The length of the uploaded video in milliseconds.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"fileType\": - {\n \"description\": \"The uploaded file's type as detected by YouTube's - video processing engine. Currently, YouTube only processes video files, but - this field is present whether a video file or another type of file was uploaded.\",\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ]\n },\n \"container\": {\n \"description\": - \"The uploaded video file's container format.\",\n \"type\": \"string\"\n - \ },\n \"fileSize\": {\n \"format\": \"uint64\",\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\",\n \"type\": \"string\"\n - \ },\n \"audioStreams\": {\n \"description\": \"A list - of audio streams contained in the uploaded video file. Each item in the list - contains detailed metadata about an audio stream.\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n },\n \"type\": - \"array\"\n },\n \"creationTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the uploaded video file - was created. The value is specified in ISO 8601 format. Currently, the following - ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"bitrateBps\": - {\n \"format\": \"uint64\",\n \"description\": \"The uploaded - video file's combined (video and audio) bitrate in bits per second.\",\n \"type\": - \"string\"\n },\n \"fileName\": {\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\",\n \"type\": \"string\"\n },\n - \ \"videoStreams\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n },\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\"\n }\n - \ },\n \"id\": \"VideoFileDetails\"\n },\n \"VideoProcessingDetails\": - {\n \"properties\": {\n \"thumbnailsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether thumbnail - images have been generated for the video.\"\n },\n \"processingStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\"\n },\n - \ \"processingProgress\": {\n \"description\": \"The processingProgress - object contains information about the progress YouTube has made in processing - the video. The values are really only relevant if the video's processing status - is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"processingFailureReason\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ],\n \"description\": \"The reason - that YouTube failed to process the video. This property will only have a value - if the processingStatus property's value is failed.\"\n },\n \"processingIssuesAvailability\": - {\n \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"fileDetailsAvailability\": {\n \"description\": - \"This value indicates whether file details are available for the uploaded - video. You can retrieve a video's file details by requesting the fileDetails - part in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether video editing suggestions, - which might improve video quality or the playback experience, are available - for the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"tagSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether keyword (tag) suggestions are available for the video. Tags - can be added to a video's metadata to make it easier for other users to find - the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n }\n },\n \"id\": - \"VideoProcessingDetails\",\n \"description\": \"Describes processing - status and progress and availability of some other Video resource parts.\",\n - \ \"type\": \"object\"\n },\n \"ChannelAuditDetails\": {\n \"type\": - \"object\",\n \"description\": \"The auditDetails object encapsulates - channel data that is relevant for YouTube Partners during the audit process.\",\n - \ \"id\": \"ChannelAuditDetails\",\n \"properties\": {\n \"contentIdClaimsGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any unresolved claims.\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel respects the community guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n }\n }\n },\n - \ \"LiveChatModeratorListResponse\": {\n \"type\": \"object\",\n \"id\": - \"LiveChatModeratorListResponse\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": - \"A list of moderators that match the request criteria.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ }\n }\n },\n \"ChannelSnippet\": {\n \"id\": \"ChannelSnippet\",\n - \ \"properties\": {\n \"thumbnails\": {\n \"description\": - \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel's default title and description.\"\n },\n \"localized\": - {\n \"$ref\": \"ChannelLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"title\": - {\n \"description\": \"The channel's title.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the channel was created.\"\n },\n \"customUrl\": - {\n \"type\": \"string\",\n \"description\": \"The custom - url of the channel.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The description of the channel.\"\n - \ },\n \"country\": {\n \"description\": \"The country - of the channel.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Basic details about a channel, including title, description - and thumbnails.\",\n \"type\": \"object\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"properties\": {\n \"banDurationSeconds\": {\n \"description\": - \"The duration of the ban. This property is only present if the banType is - temporary.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ },\n \"banType\": {\n \"type\": \"string\",\n \"description\": - \"The type of ban.\",\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ]\n },\n \"bannedUserDetails\": - {\n \"description\": \"The details of the user that was banned.\",\n - \ \"$ref\": \"ChannelProfileDetails\"\n }\n }\n },\n - \ \"TestItemTestItemSnippet\": {\n \"properties\": {},\n \"id\": - \"TestItemTestItemSnippet\",\n \"type\": \"object\"\n },\n \"CommentListResponse\": - {\n \"id\": \"CommentListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"description\": \"A list of comments that - match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"type\": \"array\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"properties\": {\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The value that YouTube uses to uniquely - identify the playlist.\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information about the resource that was added to the playlist.\"\n },\n - \ \"playlistItemId\": {\n \"type\": \"string\",\n \"description\": - \"ID of the item within the playlist.\"\n }\n },\n \"id\": - \"ActivityContentDetailsPlaylistItem\",\n \"type\": \"object\",\n \"description\": - \"Information about a new playlist item.\"\n },\n \"ChannelContentDetails\": - {\n \"id\": \"ChannelContentDetails\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"type\": \"object\",\n \"properties\": {\n \"watchHistory\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"watchLater\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\"\n },\n \"favorites\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s favorite videos. Use the playlistItems.insert and - playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"uploads\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use - the videos.insert method to upload new videos and the videos.delete method - to delete previously uploaded videos.\"\n },\n \"likes\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n }\n - \ }\n }\n },\n \"description\": \"Details about the - content of a channel.\",\n \"type\": \"object\"\n },\n \"CaptionSnippet\": - {\n \"description\": \"Basic details about a caption track, such as its - language and name.\",\n \"type\": \"object\",\n \"properties\": - {\n \"isLarge\": {\n \"description\": \"Indicates whether - the caption track uses large text for the vision-impaired. The default value - is false.\",\n \"type\": \"boolean\"\n },\n \"isAutoSynced\": - {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"isEasyReader\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n \"language\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The language of the caption track. The property - value is a BCP-47 language tag.\"\n },\n \"trackKind\": {\n - \ \"description\": \"The caption track's type.\",\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the video associated with the caption track. @mutable - youtube.captions.insert\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"audioTrackType\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"unknown\",\n - \ \"primary\",\n \"commentary\",\n \"descriptive\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of audio track associated with the caption track.\"\n },\n - \ \"status\": {\n \"description\": \"The caption track's status.\",\n - \ \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"lastUpdated\": {\n \"description\": - \"The date and time when the caption track was last updated.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"isDraft\": - {\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\",\n - \ \"type\": \"boolean\"\n },\n \"failureReason\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ],\n \"description\": \"The reason that YouTube failed - to process the caption track. This property is only present if the state property's - value is failed.\"\n },\n \"isCC\": {\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\",\n \"type\": \"boolean\"\n - \ },\n \"name\": {\n \"type\": \"string\",\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n }\n - \ }\n },\n \"id\": \"CaptionSnippet\"\n },\n \"VideoContentDetails\": - {\n \"id\": \"VideoContentDetails\",\n \"description\": \"Details - about the content of a YouTube Video.\",\n \"properties\": {\n \"licensedContent\": - {\n \"description\": \"The value of is_license_content indicates - whether the video is licensed content.\",\n \"type\": \"boolean\"\n - \ },\n \"projection\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"Specifies the projection format of the video.\",\n \"enum\": [\n - \ \"rectangular\",\n \"360\"\n ]\n },\n - \ \"contentRating\": {\n \"$ref\": \"ContentRating\",\n \"description\": - \"Specifies the ratings that the video received under various rating schemes.\"\n - \ },\n \"duration\": {\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\",\n \"type\": - \"string\"\n },\n \"hasCustomThumbnail\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the video uploader - has provided a custom thumbnail image for the video. This property is only - visible to the video uploader.\"\n },\n \"definition\": {\n - \ \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\",\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ]\n },\n \"countryRestriction\": - {\n \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\",\n \"$ref\": - \"AccessPolicy\"\n },\n \"regionRestriction\": {\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"caption\": - {\n \"description\": \"The value of captions indicates whether the - video has captions or not.\",\n \"enum\": [\n \"true\",\n - \ \"false\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"dimension\": - {\n \"type\": \"string\",\n \"description\": \"The value - of dimension indicates whether the video is available in 3D or in 2D.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoAbuseReport\": - {\n \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n },\n \"comments\": {\n \"description\": - \"Additional comments regarding the abuse report.\",\n \"type\": - \"string\"\n },\n \"language\": {\n \"type\": \"string\",\n - \ \"description\": \"The language that the content was viewed in.\"\n - \ },\n \"reasonId\": {\n \"type\": \"string\",\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\"\n },\n \"secondaryReasonId\": - {\n \"type\": \"string\",\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\"\n }\n },\n \"id\": \"VideoAbuseReport\",\n \"type\": - \"object\"\n },\n \"TokenPagination\": {\n \"properties\": {},\n - \ \"id\": \"TokenPagination\",\n \"type\": \"object\",\n \"description\": - \"Stub token pagination template to suppress results.\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the uploaded video.\"\n }\n },\n \"id\": \"ActivityContentDetailsUpload\",\n - \ \"type\": \"object\",\n \"description\": \"Information about the - uploaded video.\"\n },\n \"ChannelSectionListResponse\": {\n \"type\": - \"object\",\n \"id\": \"ChannelSectionListResponse\",\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"A list of ChannelSections that match the request criteria.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#channelSectionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"Cuepoint\": {\n \"type\": - \"object\",\n \"description\": \"Note that there may be a 5-second end-point - resolution issue. For instance, if a cuepoint comes in for 22:03:27, we may - stuff the cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact - of HLS.\",\n \"properties\": {\n \"walltimeMs\": {\n \"format\": - \"uint64\",\n \"description\": \"The wall clock time at which the - cuepoint should be inserted. Only one of insertion_offset_time_ms and walltime_ms - may be set at a time.\",\n \"type\": \"string\"\n },\n \"insertionOffsetTimeMs\": - {\n \"format\": \"int64\",\n \"description\": \"The time - when the cuepoint should be inserted by offset to the broadcast actual start - time.\",\n \"type\": \"string\"\n },\n \"cueType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"The identifier for cuepoint - resource.\",\n \"type\": \"string\"\n },\n \"durationSecs\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The duration of this cuepoint.\"\n }\n },\n \"id\": \"Cuepoint\"\n - \ },\n \"ChannelStatistics\": {\n \"description\": \"Statistics - about a channel: number of subscribers, number of videos in the channel, etc.\",\n - \ \"properties\": {\n \"viewCount\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of times the channel has been viewed.\"\n },\n \"commentCount\": - {\n \"description\": \"The number of comments for the channel.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"hiddenSubscriberCount\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether or not the number of subscribers is shown for this user.\"\n },\n - \ \"videoCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of videos uploaded to the channel.\",\n \"type\": \"string\"\n - \ },\n \"subscriberCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of subscribers that the channel has.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ChannelStatistics\",\n - \ \"type\": \"object\"\n },\n \"ChannelLocalization\": {\n \"type\": - \"object\",\n \"id\": \"ChannelLocalization\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel's title.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel's description.\"\n }\n },\n \"description\": - \"Channel localization setting\"\n },\n \"LiveBroadcast\": {\n \"description\": - \"A *liveBroadcast* resource represents an event that will be streamed, via - live video, on YouTube.\",\n \"id\": \"LiveBroadcast\",\n \"properties\": - {\n \"statistics\": {\n \"description\": \"The statistics - object contains info about the event's current stats. These include concurrent - viewers and total chat count. Statistics can change (in either direction) - during the lifetime of an event. Statistics are only returned while the event - is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n - \ \"description\": \"The status object contains information about - the event's status.\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveBroadcastSnippet\",\n \"description\": \"The snippet object - contains basic details about the event, including its title, description, - start time, and end time.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the broadcast.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveBroadcast\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelTopicDetails\": - {\n \"id\": \"ChannelTopicDetails\",\n \"properties\": {\n \"topicIds\": - {\n \"description\": \"A list of Freebase topic IDs associated with - the channel. You can retrieve information about each topic using the Freebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"topicCategories\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Wikipedia URLs that describe the channel's - content.\",\n \"type\": \"array\"\n }\n },\n \"description\": - \"Freebase topic information related to the channel.\",\n \"type\": \"object\"\n - \ },\n \"Video\": {\n \"type\": \"object\",\n \"id\": \"Video\",\n - \ \"description\": \"A *video* resource represents a YouTube video.\",\n - \ \"properties\": {\n \"topicDetails\": {\n \"$ref\": - \"VideoTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the video.\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the video's uploading, processing, and privacy - statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n }\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"liveStreamingDetails\": {\n \"$ref\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\"\n },\n - \ \"processingDetails\": {\n \"description\": \"The processingDetails - object encapsulates information about YouTube's progress in processing the - uploaded video file. The properties in the object identify the current processing - status and an estimate of the time remaining until YouTube finishes processing - the video. This part also indicates whether different types of data or content, - such as file details or thumbnail images, are available for the video. The - processingProgress object is designed to be polled so that the video uploaded - can track the progress that YouTube has made in processing the uploaded video - file. This data can only be retrieved by the video owner.\",\n \"$ref\": - \"VideoProcessingDetails\"\n },\n \"localizations\": {\n \"description\": - \"The localizations object contains localized versions of the basic details - about the video, such as its title and description.\",\n \"additionalProperties\": - {\n \"$ref\": \"VideoLocalization\"\n },\n \"type\": - \"object\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#video\\\".\",\n \"default\": \"youtube#video\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the video, such as its title, description, - and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n \"suggestions\": - {\n \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoSuggestions\"\n },\n \"fileDetails\": - {\n \"$ref\": \"VideoFileDetails\",\n \"description\": \"The - fileDetails object encapsulates information about the video file that was - uploaded to YouTube, including the file's resolution, duration, audio and - video codecs, stream bitrates, and more. This data can only be retrieved by - the video owner.\"\n },\n \"player\": {\n \"$ref\": - \"VideoPlayer\",\n \"description\": \"The player object contains - information that you would use to play the video in an embedded player.\"\n - \ },\n \"monetizationDetails\": {\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\",\n \"$ref\": \"VideoMonetizationDetails\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains information about the video content, including - the length of the video and its aspect ratio.\",\n \"$ref\": \"VideoContentDetails\"\n - \ },\n \"recordingDetails\": {\n \"$ref\": \"VideoRecordingDetails\",\n - \ \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\"\n },\n - \ \"projectDetails\": {\n \"description\": \"The projectDetails - object contains information about the project specific video metadata. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"ageGating\": - {\n \"$ref\": \"VideoAgeGating\",\n \"description\": \"Age - restriction details related to a video. This data can only be retrieved by - the video owner.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains statistics about the video.\",\n \"$ref\": - \"VideoStatistics\"\n }\n }\n },\n \"InvideoTiming\": {\n - \ \"properties\": {\n \"type\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"description\": \"Describes a timing type. If the - value is offsetFromStart, then the offsetMs field represents an offset from - the start of the video. If the value is offsetFromEnd, then the offsetMs field - represents an offset from the end of the video.\"\n },\n \"durationMs\": - {\n \"type\": \"string\",\n \"description\": \"Defines the - duration in milliseconds for which the promotion should be displayed. If missing, - the client should use the default.\",\n \"format\": \"uint64\"\n - \ },\n \"offsetMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"Defines the time at which the promotion - will appear. Depending on the value of type the value of the offsetMs field - will represent a time offset from the start or from the end of the video, - expressed in milliseconds.\"\n }\n },\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\",\n \"type\": - \"object\",\n \"id\": \"InvideoTiming\"\n },\n \"ThirdPartyLinkSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic information - about a third party account link, including its type and type-specific information.\",\n - \ \"id\": \"ThirdPartyLinkSnippet\",\n \"properties\": {\n \"channelToStoreLink\": - {\n \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n - \ },\n \"type\": {\n \"description\": \"Type of the - link named after the entities that are being linked.\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"type\": \"string\"\n }\n }\n },\n - \ \"ChannelBannerResource\": {\n \"type\": \"object\",\n \"id\": - \"ChannelBannerResource\",\n \"description\": \"A channel banner returned - as the response to a channel_banner.insert call.\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\"\n },\n \"url\": - {\n \"description\": \"The URL of this banner image.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#channelBannerResource\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelBannerResource\\\".\",\n \"type\": - \"string\"\n }\n }\n },\n \"PlaylistContentDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"itemCount\": - {\n \"type\": \"integer\",\n \"description\": \"The number - of videos in the playlist.\",\n \"format\": \"uint32\"\n }\n - \ },\n \"id\": \"PlaylistContentDetails\"\n },\n \"ImageSettings\": - {\n \"properties\": {\n \"backgroundImageUrl\": {\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerMobileHdImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1280x360).\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"bannerTvHighImageUrl\": - {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": - {\n \"description\": \"Banner image. Mobile size (640x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size low resolution (1138x188).\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"bannerTvImageUrl\": - {\n \"description\": \"Banner image. TV size extra high resolution - (2120x1192).\",\n \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"description\": \"Banner image. TV size medium resolution (1280x720).\",\n - \ \"type\": \"string\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"trackingImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size extra high resolution - (2560x424).\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"bannerTvLowImageUrl\": {\n \"description\": \"Banner image. - TV size low resolution (854x480).\",\n \"type\": \"string\"\n },\n - \ \"bannerExternalUrl\": {\n \"type\": \"string\",\n \"description\": - \"This is generated when a ChannelBanner.Insert request has succeeded for - the given channel.\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"bannerTabletImageUrl\": - {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n - \ \"type\": \"string\"\n },\n \"bannerImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size high resolution (2276x377).\"\n }\n },\n \"description\": - \"Branding properties for images associated with the channel.\",\n \"type\": - \"object\",\n \"id\": \"ImageSettings\"\n },\n \"ChannelSectionSnippet\": - {\n \"description\": \"Basic details about a channel section, including - title, style and position.\",\n \"id\": \"ChannelSectionSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the channel section.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The channel section's title for multiple_playlists and multiple_channels.\"\n - \ },\n \"localized\": {\n \"$ref\": \"ChannelSectionLocalization\",\n - \ \"description\": \"Localized title, read-only.\"\n },\n \"style\": - {\n \"description\": \"The style of the channel section.\",\n \"enum\": - [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"position\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The position of the channel section in the channel.\"\n },\n \"type\": - {\n \"description\": \"The type of the channel section.\",\n \"type\": - \"string\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"defaultLanguage\": {\n - \ \"type\": \"string\",\n \"description\": \"The language - of the channel section's default title and description.\"\n }\n }\n - \ },\n \"LiveStreamListResponse\": {\n \"id\": \"LiveStreamListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"LiveStream\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of live streams that match - the request criteria.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStreamListResponse\"\n - \ }\n }\n },\n \"Thumbnail\": {\n \"properties\": {\n - \ \"width\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"(Optional) Width of the thumbnail - image.\"\n },\n \"height\": {\n \"description\": \"(Optional) - Height of the thumbnail image.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"url\": {\n \"description\": \"The - thumbnail image's URL.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A thumbnail is an image representing a YouTube resource.\",\n - \ \"type\": \"object\",\n \"id\": \"Thumbnail\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"id\": \"ActivityContentDetailsRecommendation\",\n \"description\": - \"Information that identifies the recommended resource.\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the recommended resource.\"\n },\n \"reason\": - {\n \"type\": \"string\",\n \"description\": \"The reason - that the resource is recommended to the user.\",\n \"enum\": [\n - \ \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"seedResourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The seedResourceId object contains - information about the resource that caused the recommendation.\"\n }\n - \ }\n },\n \"SuperStickerMetadata\": {\n \"properties\": {\n - \ \"altText\": {\n \"type\": \"string\",\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\"\n },\n \"stickerId\": {\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\",\n - \ \"type\": \"string\"\n },\n \"altTextLanguage\": {\n - \ \"description\": \"Specifies the localization language in which - the alt text is returned.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"SuperStickerMetadata\",\n \"type\": \"object\"\n - \ },\n \"ThumbnailDetails\": {\n \"description\": \"Internal representation - of thumbnails for a YouTube resource.\",\n \"type\": \"object\",\n \"id\": - \"ThumbnailDetails\",\n \"properties\": {\n \"default\": {\n \"description\": - \"The default image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"maxres\": {\n \"description\": \"The maximum - resolution quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"medium\": {\n \"description\": \"The medium - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"high\": {\n \"description\": \"The high quality image for - this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"standard\": - {\n \"description\": \"The standard quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n }\n }\n },\n \"ThirdPartyLink\": - {\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"default\": \"youtube#thirdPartyLink\",\n \"type\": \"string\"\n - \ },\n \"linkingToken\": {\n \"description\": \"The - linking_token identifies a YouTube account and channel with which the third - party account is linked.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"ThirdPartyLinkSnippet\",\n \"description\": \"The snippet object - contains basic details about the third- party account link.\"\n },\n - \ \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The status object contains information about the status of the link.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - *third party account link* resource represents a link between a YouTube account - or a channel and an account on a third-party service.\",\n \"id\": \"ThirdPartyLink\"\n - \ },\n \"PageInfo\": {\n \"type\": \"object\",\n \"id\": \"PageInfo\",\n - \ \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\",\n \"properties\": {\n \"resultsPerPage\": {\n \"format\": - \"int32\",\n \"type\": \"integer\",\n \"description\": \"The - number of results included in the API response.\"\n },\n \"totalResults\": - {\n \"description\": \"The total number of results in the result - set.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ }\n }\n },\n \"SearchListResponse\": {\n \"type\": - \"object\",\n \"id\": \"SearchListResponse\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#searchListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#searchListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"regionCode\": {\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"SearchResult\"\n },\n - \ \"description\": \"Pagination information for token pagination.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n }\n },\n \"ActivityContentDetailsComment\": - {\n \"id\": \"ActivityContentDetailsComment\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with the comment.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"description\": \"Information about a resource that received - a comment.\"\n },\n \"ChannelSectionContentDetails\": {\n \"type\": - \"object\",\n \"description\": \"Details about a channelsection, including - playlists and channels.\",\n \"properties\": {\n \"channels\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The channel ids for - type multiple_channels.\"\n },\n \"playlists\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"type\": \"array\"\n }\n - \ },\n \"id\": \"ChannelSectionContentDetails\"\n },\n \"RelatedEntity\": - {\n \"id\": \"RelatedEntity\",\n \"type\": \"object\",\n \"properties\": - {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n }\n - \ },\n \"PlaylistSnippet\": {\n \"id\": \"PlaylistSnippet\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails.\",\n - \ \"properties\": {\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the playlist was created.\"\n },\n \"tags\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Keyword tags associated - with the playlist.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The playlist's description.\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the playlist's default title and description.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"description\": - \"The channel title of the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"description\": - \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that published the playlist.\",\n - \ \"type\": \"string\"\n },\n \"thumbnailVideoId\": - {\n \"type\": \"string\",\n \"description\": \"Note: if - the playlist has a custom thumbnail, this field will not be populated. The - video id selected by the user that will be used as the thumbnail of this playlist. - This field defaults to the first publicly viewable video in the playlist, - if: 1. The user has never selected a video to be the thumbnail of the playlist. - 2. The user selects a video to be the thumbnail, and then removes that video - from the playlist. 3. The user selects a non-owned video to be the thumbnail, - but that video becomes private, or gets deleted.\"\n },\n \"title\": - {\n \"description\": \"The playlist's title.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n }\n - \ },\n \"type\": \"object\"\n },\n \"AccessPolicy\": {\n \"type\": - \"object\",\n \"description\": \"Rights management policy for YouTube - resources.\",\n \"id\": \"AccessPolicy\",\n \"properties\": {\n - \ \"exception\": {\n \"description\": \"A list of region codes - that identify countries where the default policy do not apply.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"allowed\": {\n \"description\": \"The value - of allowed indicates whether the access to the policy is allowed or denied - by default.\",\n \"type\": \"boolean\"\n }\n }\n },\n - \ \"SubscriptionSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the subscription was created.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The subscription's details.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The subscription's title.\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.subscriptions.insert\"\n ]\n },\n - \ \"description\": \"The id object contains information about the - channel that the user subscribed to.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the subscription - belongs to.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"SubscriptionSnippet\",\n \"description\": \"Basic details about a subscription, - including title, description and thumbnails of the subscribed item.\"\n },\n - \ \"LiveChatFanFundingEventDetails\": {\n \"properties\": {\n \"currency\": - {\n \"description\": \"The currency in which the fund was made.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The amount of the fund.\"\n },\n \"userComment\": {\n \"type\": - \"string\",\n \"description\": \"The comment added by the user to - this fan funding event.\"\n },\n \"amountDisplayString\": {\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"VideoGetRatingResponse\": {\n \"type\": \"object\",\n \"id\": - \"VideoGetRatingResponse\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"description\": \"A list of ratings - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoGetRatingResponse\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"PlaylistItemSnippet\": {\n \"properties\": - {\n \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the user that added the item to the playlist.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The item's title.\"\n },\n - \ \"position\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The order in which the item appears - in the playlist. The value uses a zero-based index, so the first item has - a position of 0, the second item has a position of 1, and so forth.\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"A map of thumbnail images associated with the playlist item. 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.\"\n },\n - \ \"playlistId\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\"\n },\n \"videoOwnerChannelId\": - {\n \"description\": \"Channel id for the channel this video belongs - to.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The item's - description.\"\n },\n \"videoOwnerChannelTitle\": {\n \"description\": - \"Channel title for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the item - was added to the playlist.\",\n \"type\": \"string\"\n },\n - \ \"resourceId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that is included in the playlist as the playlist item.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"PlaylistItemSnippet\",\n - \ \"description\": \"Basic details about a playlist, including title, - description and thumbnails. Basic details of a YouTube Playlist item provided - by the author. Next ID: 15\"\n },\n \"LiveChatSuperStickerDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatSuperStickerDetails\",\n - \ \"properties\": {\n \"superStickerMetadata\": {\n \"$ref\": - \"SuperStickerMetadata\",\n \"description\": \"Information about - the Super Sticker.\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"amountMicros\": {\n \"description\": \"The - amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"tier\": - {\n \"description\": \"The tier in which the amount belongs. Lower - amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ChannelStatus\": {\n \"description\": \"JSON template - for the status part of a channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"longUploadsStatus\": {\n \"description\": \"The - long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"Privacy status of the channel.\",\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n },\n \"isLinked\": {\n - \ \"type\": \"boolean\",\n \"description\": \"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.\"\n }\n },\n - \ \"id\": \"ChannelStatus\"\n },\n \"LiveBroadcastStatistics\": - {\n \"properties\": {\n \"concurrentViewers\": {\n \"type\": - \"string\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"format\": \"uint64\"\n },\n \"totalChatCount\": - {\n \"type\": \"string\",\n \"description\": \"The total - number of live chat messages currently on the broadcast. The property and - its value will be present if the broadcast is public, has the live chat feature - enabled, and has at least one message. Note that this field will not be filled - after the broadcast ends. So this property would not identify the number of - chat messages for an archived video of a completed live broadcast.\",\n \"format\": - \"uint64\"\n }\n },\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"Statistics about the live broadcast. These represent - a snapshot of the values at the time of the request. Statistics are only returned - for live broadcasts.\",\n \"type\": \"object\"\n },\n \"VideoLocalization\": - {\n \"id\": \"VideoLocalization\",\n \"properties\": {\n \"title\": - {\n \"description\": \"Localized version of the video's title.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"Localized version of the video's description.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Localized - versions of certain video properties (e.g. title).\"\n },\n \"ActivityListResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"default\": \"youtube#activityListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Activity\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"id\": - \"ActivityListResponse\",\n \"type\": \"object\"\n },\n \"TestItem\": - {\n \"id\": \"TestItem\",\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n },\n \"gaia\": - {\n \"type\": \"string\",\n \"format\": \"int64\"\n },\n - \ \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ }\n }\n },\n \"GeoPoint\": {\n \"description\": \"Geographical - coordinates of a point, in WGS84.\",\n \"type\": \"object\",\n \"id\": - \"GeoPoint\",\n \"properties\": {\n \"latitude\": {\n \"type\": - \"number\",\n \"description\": \"Latitude in degrees.\",\n \"format\": - \"double\"\n },\n \"altitude\": {\n \"format\": \"double\",\n - \ \"description\": \"Altitude above the reference ellipsoid, in meters.\",\n - \ \"type\": \"number\"\n },\n \"longitude\": {\n \"type\": - \"number\",\n \"description\": \"Longitude in degrees.\",\n \"format\": - \"double\"\n }\n }\n },\n \"ActivitySnippet\": {\n \"description\": - \"Basic details about an activity, including title, description, thumbnails, - activity type and group. Next ID: 12\",\n \"properties\": {\n \"description\": - {\n \"description\": \"The description of the resource primarily - associated with the activity. @mutable youtube.activities.insert\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel associated with - the activity.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of activity that the resource describes.\",\n \"enum\": - [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ],\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel responsible - for this activity\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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.\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the video - was uploaded.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The title of the resource primarily associated - with the activity.\",\n \"type\": \"string\"\n },\n \"groupId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivitySnippet\"\n - \ },\n \"LiveChatMembershipGiftingDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMembershipGiftingDetails\",\n \"properties\": - {\n \"giftMembershipsCount\": {\n \"format\": \"int32\",\n - \ \"description\": \"The number of gift memberships purchased by the - user.\",\n \"type\": \"integer\"\n },\n \"giftMembershipsLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the level of the gift memberships purchased by the user. The Level names - are defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n }\n }\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ },\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label for this abuse report secondary reason.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"SubscriptionContentDetails\": {\n \"description\": \"Details - about the content to witch a subscription refers.\",\n \"properties\": - {\n \"activityType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\",\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"type\": - \"string\"\n },\n \"newItemCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The number - of new items in the subscription since its content was last read.\"\n },\n - \ \"totalItemCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The approximate number of items that the subscription points to.\",\n \"type\": - \"integer\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"SubscriptionContentDetails\"\n },\n \"AbuseReport\": {\n \"properties\": - {\n \"description\": {\n \"type\": \"string\"\n },\n - \ \"subject\": {\n \"$ref\": \"Entity\"\n },\n \"abuseTypes\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"AbuseType\"\n }\n },\n \"relatedEntities\": {\n \"items\": - {\n \"$ref\": \"RelatedEntity\"\n },\n \"type\": - \"array\"\n }\n },\n \"id\": \"AbuseReport\",\n \"type\": - \"object\"\n },\n \"VideoStatistics\": {\n \"description\": \"Statistics - about the video, such as the number of times the video was viewed or liked.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"likeCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of users who have indicated that they liked the video by giving it a positive - rating.\",\n \"format\": \"uint64\"\n },\n \"commentCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of comments for the video.\",\n \"type\": \"string\"\n },\n - \ \"viewCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of times the video has - been viewed.\"\n },\n \"favoriteCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of users who currently - have the video marked as a favorite video.\",\n \"type\": \"string\"\n - \ },\n \"dislikeCount\": {\n \"description\": \"The - number of users who have indicated that they disliked the video by giving - it a negative rating.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n }\n },\n \"id\": \"VideoStatistics\"\n },\n - \ \"LiveChatMessageListResponse\": {\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pollingIntervalMillis\": - {\n \"description\": \"The amount of time the client should wait - before polling again.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatMessageListResponse\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"offlineAt\": {\n \"description\": - \"The date and time when the underlying stream went offline.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ },\n \"id\": \"LiveChatMessageListResponse\",\n \"type\": - \"object\"\n },\n \"PlaylistStatus\": {\n \"properties\": {\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"The playlist's - privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"PlaylistStatus\",\n \"type\": \"object\"\n - \ },\n \"LiveChatModeratorSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"liveChatId\": {\n \"description\": - \"The ID of the live chat this moderator can act on.\",\n \"type\": - \"string\"\n },\n \"moderatorDetails\": {\n \"description\": - \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ }\n },\n \"id\": \"LiveChatModeratorSnippet\"\n },\n - \ \"ChannelContentOwnerDetails\": {\n \"properties\": {\n \"contentOwner\": - {\n \"description\": \"The ID of the content owner linked to the - channel.\",\n \"type\": \"string\"\n },\n \"timeLinked\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the channel was linked to the content owner.\",\n \"format\": - \"date-time\"\n }\n },\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"id\": \"ChannelContentOwnerDetails\",\n \"type\": - \"object\"\n },\n \"IngestionInfo\": {\n \"type\": \"object\",\n - \ \"id\": \"IngestionInfo\",\n \"properties\": {\n \"rtmpsIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"ingestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The primary - ingestion URL that you should use to stream video to YouTube. You must stream - video to this URL. Depending on which application or tool you use to encode - your video stream, you may need to enter the stream URL and stream name separately - or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \"\n },\n \"backupIngestionAddress\": {\n \"description\": - \"The backup ingestion URL that you should use to stream video to YouTube. - You have the option of simultaneously streaming the content that you are sending - to the ingestionAddress to this URL.\",\n \"type\": \"string\"\n - \ },\n \"streamName\": {\n \"description\": \"The stream - name that YouTube assigns to the video stream.\",\n \"type\": \"string\"\n - \ },\n \"rtmpsBackupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of backupIngestionAddress in order to stream via RTMPS. Not applicable to - non-RTMP streams.\"\n }\n },\n \"description\": \"Describes - information necessary for ingesting an RTMP, HTTP, or SRT stream.\"\n },\n - \ \"ActivityContentDetailsLike\": {\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsLike\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the rated resource.\"\n }\n - \ },\n \"description\": \"Information about a resource that received - a positive (like) rating.\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageDeletedDetails\",\n - \ \"type\": \"object\"\n },\n \"CaptionListResponse\": {\n \"id\": - \"CaptionListResponse\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"default\": \"youtube#captionListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - captions that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Caption\"\n }\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"type\": \"object\",\n \"properties\": {\n \"imageUrl\": - {\n \"description\": \"An image of the post's author.\",\n \"type\": - \"string\"\n },\n \"referenceUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL of the social network post.\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"description\": - \"The name of the social network.\",\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object encapsulates information that identifies the resource associated with - a social network post.\"\n },\n \"author\": {\n \"description\": - \"The author of the social network post.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Details about a social network - post.\",\n \"id\": \"ActivityContentDetailsSocial\"\n },\n \"ChannelBrandingSettings\": - {\n \"description\": \"Branding properties of a YouTube channel.\",\n - \ \"properties\": {\n \"watch\": {\n \"$ref\": \"WatchSettings\",\n - \ \"description\": \"Branding properties for the watch page.\"\n },\n - \ \"hints\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n },\n \"description\": - \"Additional experimental branding properties.\"\n },\n \"image\": - {\n \"$ref\": \"ImageSettings\",\n \"description\": \"Branding - properties for branding images.\"\n },\n \"channel\": {\n \"$ref\": - \"ChannelSettings\",\n \"description\": \"Branding properties for - the channel view.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelBrandingSettings\"\n },\n \"I18nRegionSnippet\": {\n \"properties\": - {\n \"gl\": {\n \"description\": \"The region code as a 2-letter - ISO country code.\",\n \"type\": \"string\"\n },\n \"name\": - {\n \"type\": \"string\",\n \"description\": \"The human-readable - name of the region.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Basic details about an i18n region, such as region - code and human-readable name.\",\n \"id\": \"I18nRegionSnippet\"\n },\n - \ \"VideoAbuseReportReasonSnippet\": {\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label belonging to this abuse report - reason.\"\n },\n \"secondaryReasons\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"description\": \"The secondary reasons associated - with this reason, if any are available. (There might be 0 or more.)\"\n }\n - \ },\n \"description\": \"Basic details about a video category, such - as its localized title.\",\n \"type\": \"object\"\n },\n \"MembershipsLevelListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"MembershipsLevel\"\n },\n \"description\": - \"A list of pricing levels offered by a creator to the fans.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#membershipsLevelListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\",\n - \ \"type\": \"object\"\n },\n \"I18nLanguage\": {\n \"description\": - \"An *i18nLanguage* resource identifies a UI language currently supported - by YouTube.\",\n \"type\": \"object\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the i18n language.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n language, such as language code and human-readable name.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"default\": \"youtube#i18nLanguage\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"I18nLanguage\"\n },\n \"VideoAbuseReportReason\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"id\": - {\n \"description\": \"The ID of this abuse report reason.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the abuse report reason.\",\n - \ \"$ref\": \"VideoAbuseReportReasonSnippet\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n \"default\": - \"youtube#videoAbuseReportReason\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"VideoAbuseReportReason\",\n \"description\": - \"A `__videoAbuseReportReason__` resource identifies a reason that a video - could be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\",\n - \ \"type\": \"object\"\n },\n \"VideoListResponse\": {\n \"id\": - \"VideoListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Video\"\n }\n - \ }\n }\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"properties\": {\n \"gifterChannelId\": {\n \"description\": - \"The ID of the user that made the membership gifting purchase. This matches - the `snippet.authorChannelId` of the associated membership gifting message.\",\n - \ \"type\": \"string\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n - \ },\n \"memberLevelName\": {\n \"description\": \"The - name of the Level at which the viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n - \ \"MemberSnippet\": {\n \"properties\": {\n \"membershipsDetails\": - {\n \"$ref\": \"MembershipsDetails\",\n \"description\": - \"Details about the user's membership.\"\n },\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering memberships.\"\n },\n \"memberDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the member.\"\n }\n },\n \"id\": \"MemberSnippet\",\n - \ \"type\": \"object\"\n },\n \"Activity\": {\n \"type\": \"object\",\n - \ \"id\": \"Activity\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the activity, including the activity's type and group ID.\",\n \"$ref\": - \"ActivitySnippet\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n - \ \"description\": \"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.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#activity\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the activity.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"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.\"\n },\n \"VideoMonetizationDetails\": - {\n \"description\": \"Details about monetization of a YouTube Video.\",\n - \ \"id\": \"VideoMonetizationDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n - \ \"description\": \"The value of access indicates whether the video - can be monetized or not.\"\n }\n }\n },\n \"ChannelConversionPings\": - {\n \"properties\": {\n \"pings\": {\n \"items\": {\n - \ \"$ref\": \"ChannelConversionPing\"\n },\n \"description\": - \"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.\",\n \"type\": \"array\"\n }\n },\n \"id\": - \"ChannelConversionPings\",\n \"type\": \"object\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"properties\": {\n \"isChatSponsor\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a sponsor - of the live chat.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube channel ID.\"\n },\n - \ \"displayName\": {\n \"description\": \"The channel's display - name.\",\n \"type\": \"string\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"isChatOwner\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author is the owner of the live chat.\"\n - \ },\n \"profileImageUrl\": {\n \"description\": \"The - channels's avatar URL.\",\n \"type\": \"string\"\n },\n \"isVerified\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author's identity has been verified by YouTube.\"\n },\n \"isChatModerator\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is a moderator of the live chat.\"\n }\n },\n \"id\": - \"LiveChatMessageAuthorDetails\",\n \"type\": \"object\"\n },\n \"WatchSettings\": - {\n \"id\": \"WatchSettings\",\n \"description\": \"Branding properties - for the watch. All deprecated.\",\n \"properties\": {\n \"featuredPlaylistId\": - {\n \"type\": \"string\",\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\"\n - \ },\n \"backgroundColor\": {\n \"type\": \"string\",\n - \ \"description\": \"The text color for the video watch page's branded - area.\"\n },\n \"textColor\": {\n \"type\": \"string\",\n - \ \"description\": \"The background color for the video watch page's - branded area.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"LanguageTag\": {\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LanguageTag\"\n },\n \"SearchResultSnippet\": {\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"properties\": {\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the search result.\"\n },\n \"thumbnails\": {\n - \ \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the search result. 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.\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The creation date - and time of the resource that the search result identifies.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"description\": \"It indicates if the resource (video or channel) - has upcoming/active live broadcast content. Or it's \\\"none\\\" if there - is not any upcoming/active live broadcasts.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ]\n },\n \"channelId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"description\": \"The - title of the channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"A description of the search result.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"SearchResultSnippet\"\n - \ },\n \"PlaylistLocalization\": {\n \"description\": \"Playlist - localization setting\",\n \"id\": \"PlaylistLocalization\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for playlist's title.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's description.\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelSection\": {\n \"properties\": {\n \"targeting\": - {\n \"description\": \"The targeting object contains basic targeting - settings about the channel section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\",\n \"$ref\": - \"ChannelSectionContentDetails\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\",\n \"$ref\": \"ChannelSectionSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"default\": \"youtube#channelSection\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n }\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelSection\"\n - \ },\n \"MembershipsLevelSnippet\": {\n \"properties\": {\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering channel memberships.\"\n },\n \"levelDetails\": - {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details - about the pricing level.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"MembershipsLevelSnippet\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The `visitorId` - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of valid abuse reasons that are used with - `video.ReportAbuse`.\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ }\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"SearchResult\": - {\n \"type\": \"object\",\n \"id\": \"SearchResult\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"SearchResultSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - a search result, such as its title or description. For example, if the search - result is a video, then the title will be the video's title and the description - will be the video's description.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n },\n \"kind\": - {\n \"default\": \"youtube#searchResult\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#searchResult\\\".\"\n }\n },\n \"description\": - \"A search result contains information about a YouTube video, channel, or - playlist that matches the search parameters specified in an API request. While - a search result points to a uniquely identifiable resource, like a video, - it does not have its own persistent data.\"\n },\n \"LiveChatTextMessageDetails\": - {\n \"id\": \"LiveChatTextMessageDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"messageText\": {\n \"description\": - \"The user's message.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"VideoTopicDetails\": {\n \"properties\": {\n \"topicIds\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Freebase topic IDs that are centrally - associated with the video. These are topics that are centrally featured in - the video, and it can be said that the video is mainly about each of these. - You can retrieve information about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"type\": \"array\"\n },\n \"topicCategories\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Wikipedia URLs that provide a high-level - description of the video's content.\",\n \"type\": \"array\"\n },\n - \ \"relevantTopicIds\": {\n \"description\": \"Similar to topic_id, - except that these topics are merely relevant to the video. These are topics - that may be mentioned in, or appear in the video. You can retrieve information - about each topic using Freebase Topic API.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"VideoTopicDetails\",\n \"description\": - \"Freebase topic information related to the video.\"\n },\n \"CommentThreadReplies\": - {\n \"id\": \"CommentThreadReplies\",\n \"properties\": {\n \"comments\": - {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"type\": \"array\",\n \"description\": \"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.\"\n }\n },\n \"description\": \"Comments written - in (direct or indirect) reply to the top level comment.\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsSubscription\": {\n \"description\": - \"Information about a channel that a user subscribed to.\",\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsSubscription\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\"\n }\n }\n },\n \"Channel\": - {\n \"id\": \"Channel\",\n \"description\": \"A *channel* resource - contains information about a YouTube channel.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\"\n - \ },\n \"auditDetails\": {\n \"description\": \"The - auditionDetails object encapsulates channel data that is relevant for YouTube - Partners during the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n - \ },\n \"contentOwnerDetails\": {\n \"$ref\": \"ChannelContentOwnerDetails\",\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object encapsulates information about the channel's content.\",\n \"$ref\": - \"ChannelContentDetails\"\n },\n \"status\": {\n \"$ref\": - \"ChannelStatus\",\n \"description\": \"The status object encapsulates - information about the privacy status of the channel.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel.\",\n \"type\": \"string\"\n },\n \"conversionPings\": - {\n \"$ref\": \"ChannelConversionPings\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\"\n },\n \"kind\": - {\n \"default\": \"youtube#channel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"type\": \"string\"\n },\n \"brandingSettings\": - {\n \"$ref\": \"ChannelBrandingSettings\",\n \"description\": - \"The brandingSettings object encapsulates information about the branding - of the channel.\"\n },\n \"topicDetails\": {\n \"$ref\": - \"ChannelTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the channel.\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the channel, such as its title, description, and thumbnail images.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object encapsulates statistics for the channel.\",\n \"$ref\": - \"ChannelStatistics\"\n }\n }\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"description\": \"The description of the subscriber.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - title of the subscriber.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel ID of the subscriber.\"\n },\n \"thumbnails\": - {\n \"description\": \"Thumbnails for this subscriber.\",\n \"$ref\": - \"ThumbnailDetails\"\n }\n },\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"Basic details about a subscription's subscriber including - title, description, channel ID and thumbnails.\"\n },\n \"VideoAgeGating\": - {\n \"properties\": {\n \"videoGameRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"Video game rating, if any.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"anyone\",\n - \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n - \ ]\n },\n \"alcoholContent\": {\n \"description\": - \"Indicates whether or not the video has alcoholic beverage content. Only - users of legal purchasing age in a particular country, as identified by ICAP, - can view the content.\",\n \"type\": \"boolean\"\n },\n \"restricted\": - {\n \"type\": \"boolean\",\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\"\n }\n - \ },\n \"id\": \"VideoAgeGating\",\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Next ID: 33\",\n \"properties\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\",\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ]\n - \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n - \ \"displayMessage\": {\n \"description\": \"Contains a string - that can be displayed to the user. If this field is not present the message - is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\",\n \"type\": \"string\"\n },\n \"hasDisplayContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the message has display content that should be displayed to users.\"\n },\n - \ \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"membershipGiftingDetails\": {\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\",\n \"$ref\": \"LiveChatMembershipGiftingDetails\"\n - \ },\n \"textMessageDetails\": {\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\",\n - \ \"$ref\": \"LiveChatTextMessageDetails\"\n },\n \"superStickerDetails\": - {\n \"description\": \"Details about the Super Sticker event, this - is only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"authorChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the message was orignally published.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"superChatDetails\": - {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"memberMilestoneChatDetails\": {\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\",\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"userBannedDetails\": {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"fanFundingEventDetails\": {\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"newSponsorDetails\": - {\n \"description\": \"Details about the New Member Announcement - event, this is only set if the type is 'newSponsorEvent'. Please note that - \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n \"$ref\": - \"LiveChatNewSponsorDetails\"\n }\n },\n \"id\": \"LiveChatMessageSnippet\"\n - \ },\n \"CommentSnippet\": {\n \"id\": \"CommentSnippet\",\n \"properties\": - {\n \"authorChannelUrl\": {\n \"type\": \"string\",\n \"description\": - \"Link to the author's YouTube channel, if any.\"\n },\n \"textDisplay\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"authorDisplayName\": {\n \"description\": \"The name of - the user who posted the comment.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"canRate\": {\n \"description\": - \"Whether the current viewer can rate this comment.\",\n \"type\": - \"boolean\"\n },\n \"textOriginal\": {\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the comment was originally published.\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID of the video the - comment refers to, if any.\",\n \"type\": \"string\"\n },\n - \ \"updatedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the comment - was last updated.\"\n },\n \"likeCount\": {\n \"type\": - \"integer\",\n \"description\": \"The total number of likes this - comment has received.\",\n \"format\": \"uint32\"\n },\n \"parentId\": - {\n \"description\": \"The unique id of the parent comment, only - set for replies.\",\n \"type\": \"string\"\n },\n \"moderationStatus\": - {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"authorProfileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - the avatar of the user who posted the comment.\"\n },\n \"viewerRating\": - {\n \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"description\": \"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.\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Basic details - about a comment, such as its author and text.\"\n },\n \"VideoCategorySnippet\": - {\n \"description\": \"Basic details about a video category, such as - its localized title.\",\n \"id\": \"VideoCategorySnippet\",\n \"properties\": - {\n \"assignable\": {\n \"type\": \"boolean\"\n },\n - \ \"channelId\": {\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n - \ \"type\": \"string\",\n \"description\": \"The YouTube - channel that created the video category.\"\n },\n \"title\": - {\n \"description\": \"The video category's title.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"I18nLanguageListResponse\": - {\n \"id\": \"I18nLanguageListResponse\",\n \"properties\": {\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"description\": - \"A list of supported i18n languages. In this map, the i18n language ID is - the map key, and its value is the corresponding i18nLanguage resource.\",\n - \ \"items\": {\n \"$ref\": \"I18nLanguage\"\n },\n - \ \"type\": \"array\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"description\": \"A single tag suggestion with it's relevance information.\",\n - \ \"id\": \"VideoSuggestionsTagSuggestion\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"categoryRestricts\": {\n \"description\": - \"A set of video categories for which the tag is relevant. You can use this - information to display appropriate tag suggestions based on the video category - that the video uploader associates with the video. By default, tag suggestions - are relevant for all categories if there are no restricts defined for the - keyword.\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\"\n },\n \"tag\": {\n \"type\": - \"string\",\n \"description\": \"The keyword tag suggested for the - video.\"\n }\n }\n },\n \"ThirdPartyLinkStatus\": {\n \"type\": - \"object\",\n \"properties\": {\n \"linkStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ]\n }\n },\n \"description\": - \"The third-party link status object contains information about the status - of the link.\",\n \"id\": \"ThirdPartyLinkStatus\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"id\": \"LiveChatSuperChatDetails\",\n \"properties\": {\n - \ \"tier\": {\n \"type\": \"integer\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"format\": \"uint32\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n },\n \"amountMicros\": - {\n \"description\": \"The amount purchased by the user, in micros - (1,750,000 micros = 1.75).\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the user to this Super Chat - event.\"\n }\n },\n \"type\": \"object\"\n },\n \"Comment\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the comment.\"\n },\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n - \ \"default\": \"youtube#comment\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"Comment\",\n \"description\": \"A *comment* - represents a single YouTube comment.\"\n },\n \"MembershipsDuration\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsDuration\",\n \"properties\": - {\n \"memberSince\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the user became a continuous member across all levels.\"\n - \ },\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The cumulative time the user has been a member across all levels in complete - months (the time is rounded down to the nearest integer).\"\n }\n }\n - \ },\n \"LiveStreamContentDetails\": {\n \"description\": \"Detailed - settings of a stream.\",\n \"type\": \"object\",\n \"properties\": - {\n \"closedCaptionsIngestionUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The ingestion URL where the closed captions of - this stream are sent.\"\n },\n \"isReusable\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the stream is - reusable, which means that it can be bound to multiple broadcasts. It is common - for broadcasters to reuse the same stream for many different broadcasts if - those broadcasts occur at different times. If you set this value to false, - then the stream will not be reusable, which means that it can only be bound - to one broadcast. Non-reusable streams differ from reusable streams in the - following ways: - A non-reusable stream can only be bound to one broadcast. - - A non-reusable stream might be deleted by an automated process after the - broadcast ends. - The liveStreams.list method does not list non-reusable streams - if you call the method and set the mine parameter to true. The only way to - use that method to retrieve the resource for a non-reusable stream is to use - the id parameter to identify the stream. \"\n }\n },\n \"id\": - \"LiveStreamContentDetails\"\n },\n \"I18nRegion\": {\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nRegion\"\n - \ }\n },\n \"id\": \"I18nRegion\"\n },\n \"VideoPlayer\": - {\n \"id\": \"VideoPlayer\",\n \"properties\": {\n \"embedHtml\": - {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a - player that will play the video.\",\n \"type\": \"string\"\n },\n - \ \"embedWidth\": {\n \"type\": \"string\",\n \"format\": - \"int64\",\n \"description\": \"The embed width\"\n },\n \"embedHeight\": - {\n \"format\": \"int64\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Player to - be used for a video playback.\"\n },\n \"CommentThread\": {\n \"id\": - \"CommentThread\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n - \ },\n \"replies\": {\n \"description\": \"The replies - object contains a limited number of replies (if any) to the top level comment - found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the comment thread.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"default\": \"youtube#commentThread\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"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.\"\n },\n - \ \"LiveChatMessage\": {\n \"properties\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the message.\"\n },\n \"authorDetails\": {\n \"description\": - \"The authorDetails object contains basic details about the user that posted - this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n - \ \"default\": \"youtube#liveChatMessage\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatMessage\",\n \"description\": \"A - *liveChatMessage* resource represents a chat message in a YouTube Live Chat.\"\n - \ },\n \"MemberListResponse\": {\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n \"default\": - \"youtube#memberListResponse\",\n \"type\": \"string\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Member\"\n },\n \"description\": \"A list of members that - match the request criteria.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"MemberListResponse\"\n },\n \"AbuseType\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"AbuseType\",\n \"type\": \"object\"\n },\n \"LiveStream\": - {\n \"id\": \"LiveStream\",\n \"description\": \"A live stream describes - a live ingestion point.\",\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"cdn\": {\n \"description\": - \"The cdn object defines the live stream's content delivery network (CDN) - settings. These settings provide details about the manner in which you stream - your content to YouTube.\",\n \"$ref\": \"CdnSettings\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStream\"\n - \ },\n \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n - \ \"description\": \"The status object contains information about - live stream's status.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the stream.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"InvideoPosition\": {\n \"properties\": {\n \"type\": {\n - \ \"description\": \"Defines the position type.\",\n \"enumDescriptions\": - [\n \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"corner\"\n ]\n },\n \"cornerPosition\": - {\n \"description\": \"Describes in which corner of the video the - visual widget will appear.\",\n \"type\": \"string\",\n \"enum\": - [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n - \ \"bottomRight\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"type\": \"object\",\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"id\": \"InvideoPosition\"\n },\n \"PropertyValue\": {\n \"id\": - \"PropertyValue\",\n \"description\": \"A pair Property / Value.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"value\": {\n - \ \"description\": \"The property's value.\",\n \"type\": - \"string\"\n },\n \"property\": {\n \"type\": \"string\",\n - \ \"description\": \"A property.\"\n }\n }\n },\n \"Subscription\": - {\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"SubscriptionContentDetails\",\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\"\n - \ },\n \"subscriberSnippet\": {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n - \ \"description\": \"The subscriberSnippet object contains basic details - about the subscriber.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"default\": \"youtube#subscription\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\",\n \"id\": \"Subscription\"\n - \ },\n \"LiveChatModerator\": {\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the moderator.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n \"default\": - \"youtube#liveChatModerator\"\n }\n },\n \"description\": - \"A *liveChatModerator* resource represents a moderator for a YouTube live - chat. A chat moderator has the ability to ban/unban users from a chat, remove - message, etc.\",\n \"id\": \"LiveChatModerator\",\n \"type\": \"object\"\n - \ },\n \"LiveStreamHealthStatus\": {\n \"properties\": {\n \"lastUpdateTimeSeconds\": - {\n \"description\": \"The last time this status was updated (in - seconds)\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ },\n \"configurationIssues\": {\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The configurations issues on this stream\"\n - \ },\n \"status\": {\n \"type\": \"string\",\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ],\n \"description\": \"The status - code of this stream\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"id\": \"LiveStreamHealthStatus\",\n - \ \"type\": \"object\"\n },\n \"SuperChatEventSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"superStickerMetadata\": {\n - \ \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\"\n },\n \"displayString\": {\n \"description\": - \"A rendered string that displays the purchase amount and currency (e.g., - \\\"$1.00\\\"). The string is rendered for the given language.\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the purchase was made. - ISO 4217.\"\n },\n \"amountMicros\": {\n \"type\": - \"string\",\n \"description\": \"The purchase amount, in micros of - the purchase currency. e.g., 1 is represented as 1000000.\",\n \"format\": - \"uint64\"\n },\n \"channelId\": {\n \"description\": - \"Channel id where the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"createdAt\": {\n \"description\": \"The date - and time when the event occurred.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"messageType\": {\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"supporterDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - supporter.\"\n },\n \"commentText\": {\n \"type\": - \"string\",\n \"description\": \"The text contents of the comment - left by the user.\"\n },\n \"isSuperStickerEvent\": {\n \"description\": - \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"id\": \"SuperChatEventSnippet\"\n },\n \"ActivityContentDetails\": - {\n \"id\": \"ActivityContentDetails\",\n \"description\": \"Details - about the content of an activity: the video that was shared, the channel that - was subscribed to, etc.\",\n \"type\": \"object\",\n \"properties\": - {\n \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\"\n },\n \"bulletin\": {\n \"$ref\": - \"ActivityContentDetailsBulletin\",\n \"description\": \"The bulletin - object contains details about a channel bulletin post. This object is only - present if the snippet.type is bulletin.\"\n },\n \"recommendation\": - {\n \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\",\n \"$ref\": \"ActivityContentDetailsRecommendation\"\n - \ },\n \"favorite\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsFavorite\"\n },\n \"upload\": {\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"channelItem\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsChannelItem\"\n },\n \"subscription\": - {\n \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"like\": {\n \"$ref\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"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.\"\n },\n \"promotedItem\": {\n - \ \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\",\n \"$ref\": \"ActivityContentDetailsPromotedItem\"\n - \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"social\": {\n \"$ref\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"The social object contains details about a social - network post. This property is only present if the snippet.type is social.\"\n - \ }\n }\n },\n \"LiveStreamStatus\": {\n \"properties\": - {\n \"streamStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"healthStatus\": {\n \"description\": - \"The health status of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n - \ }\n },\n \"description\": \"Brief description of the live - stream status.\",\n \"type\": \"object\",\n \"id\": \"LiveStreamStatus\"\n - \ },\n \"ActivityContentDetailsFavorite\": {\n \"id\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"Information about a video that was marked as a favorite - video.\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was marked as a favorite.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"MembershipsDetails\": - {\n \"id\": \"MembershipsDetails\",\n \"properties\": {\n \"highestAccessibleLevel\": - {\n \"type\": \"string\",\n \"description\": \"Id of the - highest level that the user has access to at the moment.\"\n },\n \"membershipsDuration\": - {\n \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\",\n \"$ref\": \"MembershipsDuration\"\n - \ },\n \"accessibleLevels\": {\n \"description\": \"Ids - of all levels that the user has access to. This includes the currently active - level and all other levels that are included because of a higher purchase.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"Display name - for the highest level that the user has access to at the moment.\"\n },\n - \ \"membershipsDurationAtLevels\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ },\n \"description\": \"Data about memberships duration - on particular pricing levels.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoFileDetailsVideoStream\": {\n \"properties\": {\n - \ \"aspectRatio\": {\n \"description\": \"The video content's - display aspect ratio, which specifies the aspect ratio in which the video - should be displayed.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n },\n \"rotation\": {\n \"type\": \"string\",\n - \ \"description\": \"The amount that YouTube needs to rotate the original - source content to properly display the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ]\n },\n \"codec\": {\n \"description\": - \"The video codec that the stream uses.\",\n \"type\": \"string\"\n - \ },\n \"bitrateBps\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The video stream's - bitrate, in bits per second.\"\n },\n \"heightPixels\": {\n - \ \"type\": \"integer\",\n \"description\": \"The encoded - video content's height in pixels.\",\n \"format\": \"uint32\"\n },\n - \ \"frameRateFps\": {\n \"type\": \"number\",\n \"format\": - \"double\",\n \"description\": \"The video stream's frame rate, in - frames per second.\"\n },\n \"widthPixels\": {\n \"format\": - \"uint32\",\n \"description\": \"The encoded video content's width - in pixels. You can calculate the video's encoding aspect ratio as width_pixels - / height_pixels.\",\n \"type\": \"integer\"\n },\n \"vendor\": - {\n \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Information about - a video stream.\",\n \"type\": \"object\",\n \"id\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"LocalizedString\": {\n \"properties\": {\n \"language\": - {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LocalizedString\"\n },\n \"VideoFileDetailsAudioStream\": {\n \"id\": - \"VideoFileDetailsAudioStream\",\n \"properties\": {\n \"channelCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The number - of audio channels that the stream contains.\",\n \"type\": \"integer\"\n - \ },\n \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The audio codec that the stream uses.\"\n },\n \"bitrateBps\": - {\n \"description\": \"The audio stream's bitrate, in bits per second.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"vendor\": {\n \"description\": \"A value that uniquely - identifies a video vendor. Typically, the value is a four-letter vendor code.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Information about an audio stream.\"\n },\n \"ThumbnailSetResponse\": - {\n \"id\": \"ThumbnailSetResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thumbnailSetResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of thumbnails.\",\n \"items\": - {\n \"$ref\": \"ThumbnailDetails\"\n },\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"CommentThreadListResponse\": {\n \"id\": - \"CommentThreadListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"default\": \"youtube#commentThreadListResponse\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"CommentThread\"\n },\n \"description\": - \"A list of comment threads that match the request criteria.\"\n }\n - \ }\n },\n \"ChannelSectionLocalization\": {\n \"description\": - \"ChannelSection localization setting\",\n \"type\": \"object\",\n \"id\": - \"ChannelSectionLocalization\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel section's title.\"\n }\n }\n },\n \"ChannelListResponse\": - {\n \"type\": \"object\",\n \"id\": \"ChannelListResponse\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Channel\"\n }\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"default\": \"youtube#channelListResponse\"\n }\n }\n - \ },\n \"VideoStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"publishAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the video is scheduled to publish. It can be set - only if the privacy status of the video is private..\",\n \"format\": - \"date-time\"\n },\n \"publicStatsViewable\": {\n \"description\": - \"This value indicates if the extended video statistics on the watch page - can be viewed by everyone. Note that the view count, likes, etc will still - be visible if this is disabled. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n },\n \"privacyStatus\": {\n - \ \"type\": \"string\",\n \"description\": \"The video's - privacy status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"embeddable\": {\n \"description\": \"This value indicates - if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"rejectionReason\": - {\n \"description\": \"This value explains why YouTube rejected an - uploaded video. This property is only present if the uploadStatus property - indicates that the upload was rejected.\",\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n },\n \"failureReason\": - {\n \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ],\n \"description\": \"This - value explains why a video failed to upload. This property is only present - if the uploadStatus property indicates that the upload failed.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Unable to convert - video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ]\n },\n - \ \"uploadStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"uploaded\",\n \"processed\",\n \"failed\",\n - \ \"rejected\",\n \"deleted\"\n ],\n \"enumDescriptions\": - [\n \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"description\": - \"The status of the uploaded video.\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"license\": {\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - license. @mutable youtube.videos.insert youtube.videos.update\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n }\n },\n - \ \"id\": \"VideoStatus\",\n \"description\": \"Basic details about - a video category, such as its localized title. Next Id: 18\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"description\": \"Details about a resource which was added to a - channel.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource that was added to the channel.\"\n }\n }\n - \ },\n \"LiveChatMessageRetractedDetails\": {\n \"id\": \"LiveChatMessageRetractedDetails\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelSettings\": - {\n \"properties\": {\n \"profileColor\": {\n \"type\": - \"string\",\n \"description\": \"A prominent color that can be rendered - on this channel page.\"\n },\n \"featuredChannelsUrls\": {\n - \ \"description\": \"The list of featured channels.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"keywords\": {\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\",\n \"type\": \"string\"\n - \ },\n \"moderateComments\": {\n \"description\": \"Whether - user-submitted comments left on the channel page need to be approved by the - channel owner to be publicly visible.\",\n \"type\": \"boolean\"\n - \ },\n \"unsubscribedTrailer\": {\n \"type\": \"string\",\n - \ \"description\": \"The trailer of the channel, for users that are - not subscribers.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\"\n },\n \"showBrowseView\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the tab to browse the videos - should be displayed.\"\n },\n \"featuredChannelsTitle\": {\n - \ \"description\": \"Title for the featured channels tab.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"Specifies the channel description.\",\n \"type\": \"string\"\n - \ },\n \"showRelatedChannels\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether related channels should be proposed.\"\n - \ },\n \"defaultTab\": {\n \"type\": \"string\",\n \"description\": - \"Which content tab users should see when viewing the channel.\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the channel title.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"country\": {\n \"description\": \"The country - of the channel.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Branding properties - for the channel view.\",\n \"id\": \"ChannelSettings\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"The - id of the author's YouTube channel, if any.\",\n \"id\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"VideoCategory\": {\n \"type\": \"object\",\n \"description\": - \"A *videoCategory* resource identifies a category that has been or could - be associated with uploaded videos.\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoCategory\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the video category.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"VideoCategory\"\n - \ },\n \"SuperChatEvent\": {\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n },\n \"kind\": {\n \"default\": - \"youtube#superChatEvent\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the Super Chat event.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"SuperChatEvent\",\n \"description\": - \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\"\n },\n \"VideoLiveStreamingDetails\": {\n \"properties\": - {\n \"actualEndTime\": {\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast actually ended. This value will not be available - until the broadcast is over.\",\n \"format\": \"date-time\"\n },\n - \ \"scheduledStartTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The time that - the broadcast is scheduled to begin.\"\n },\n \"actualStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\"\n },\n - \ \"concurrentViewers\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\",\n \"type\": - \"string\"\n },\n \"activeLiveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the currently active live - chat attached to this video. This field is filled only if the video is a currently - live broadcast that has live chat. Once the broadcast transitions to complete - this field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\"\n },\n \"scheduledEndTime\": - {\n \"description\": \"The time that the broadcast is scheduled to - end. If the value is empty or the property is not present, then the broadcast - is scheduled to contiue indefinitely.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Details about the live - streaming metadata.\"\n },\n \"PlaylistListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistListResponse\\\".\",\n \"default\": - \"youtube#playlistListResponse\"\n },\n \"items\": {\n \"description\": - \"A list of playlists that match the request criteria\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Playlist\"\n }\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n }\n },\n \"id\": \"PlaylistListResponse\"\n - \ },\n \"VideoSuggestions\": {\n \"properties\": {\n \"editorSuggestions\": - {\n \"type\": \"array\",\n \"description\": \"A list of - video editing operations that might improve the video quality or playback - experience of the uploaded video.\",\n \"items\": {\n \"enum\": - [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n - \ \"enumDescriptions\": [\n \"Picture brightness levels - seem off and could be corrected.\",\n \"The video appears shaky - and could be stabilized.\",\n \"Margins (mattes) detected around - the picture could be cropped.\",\n \"The audio track appears - silent and could be swapped with a better quality one.\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"processingHints\": - {\n \"items\": {\n \"enumDescriptions\": [\n \"The - MP4 file is not streamable, this will slow down the processing. MOOV atom - was not found at the beginning of the file.\",\n \"Probably a - better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of suggestions that may - improve YouTube's ability to process the video.\",\n \"type\": \"array\"\n - \ },\n \"processingErrors\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of errors that will prevent YouTube from - successfully processing the uploaded video video. These errors indicate that, - regardless of the video's current processing status, eventually, that status - will almost certainly be failed.\",\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"File contains - audio only (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Movie project file (e.g., Microsoft Windows Movie - Maker project).\",\n \"Other non-video file.\",\n \"Document - or text file (e.g., MS Word document).\",\n \"An archive file - (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout - type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n }\n },\n \"tagSuggestions\": {\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\",\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"type\": \"array\"\n },\n \"processingWarnings\": - {\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ]\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of reasons - why YouTube may have difficulty transcoding the uploaded video or that might - result in an erroneous transcoding. These warnings are generated before YouTube - actually processes the uploaded video file. In addition, they identify issues - that are unlikely to cause the video processing to fail but that might cause - problems such as sync issues, video artifacts, or a missing audio track.\"\n - \ }\n },\n \"id\": \"VideoSuggestions\",\n \"type\": - \"object\",\n \"description\": \"Specifies suggestions on how to improve - video content, including encoding hints, tag suggestions, and editor suggestions.\"\n - \ },\n \"MembershipsLevel\": {\n \"id\": \"MembershipsLevel\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"default\": \"youtube#membershipsLevel\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"MembershipsLevelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the level.\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the memberships level.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A *membershipsLevel* resource represents an offer - made by YouTube creators for their fans. Users can become members of the channel - by joining one of the available levels. They will provide recurring monetary - support and receives special benefits.\"\n },\n \"SuperChatEventListResponse\": - {\n \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#superChatEventListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"description\": \"A list of Super Chat purchases that match - the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n }\n }\n },\n - \ \"id\": \"SuperChatEventListResponse\",\n \"type\": \"object\"\n - \ },\n \"ResourceId\": {\n \"id\": \"ResourceId\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"The type of the API resource.\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\",\n \"type\": \"string\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the referred resource, if that resource - is a playlist. This property is only present if the resourceId.kind value - is youtube#playlist.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"A resource id is a generic reference that - points to another YouTube resource.\",\n \"type\": \"object\"\n },\n - \ \"Caption\": {\n \"type\": \"object\",\n \"properties\": {\n - \ \"snippet\": {\n \"$ref\": \"CaptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the caption.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#caption\\\".\",\n \"default\": - \"youtube#caption\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the caption track.\"\n }\n },\n \"description\": - \"A *caption* resource represents a YouTube caption track. A caption track - is associated with exactly one YouTube video.\",\n \"id\": \"Caption\"\n - \ },\n \"Entity\": {\n \"type\": \"object\",\n \"properties\": - {\n \"typeId\": {\n \"type\": \"string\"\n },\n \"url\": - {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"Entity\"\n },\n \"ContentRating\": - {\n \"type\": \"object\",\n \"id\": \"ContentRating\",\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\",\n \"properties\": {\n \"medietilsynetRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Medietilsynet, the Norwegian Media Authority.\",\n \"enum\": - [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ]\n },\n \"grfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Greece.\",\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ]\n },\n - \ \"eefilmRating\": {\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Estonia.\"\n },\n \"egfilmRating\": - {\n \"enum\": [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n - \ \"egfilm18\",\n \"egfilmBn\",\n \"egfilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Egypt.\"\n },\n \"csaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from France's Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast - content.\",\n \"type\": \"string\",\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ]\n },\n \"anatelRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's Anatel (Asociaci\xF3n - Nacional de Televisi\xF3n) rating for Chilean television.\",\n \"enum\": - [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ]\n },\n - \ \"mdaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG13\",\n \"NC16\",\n - \ \"M18\",\n \"R21\",\n \"\"\n ],\n - \ \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Singapore's - Media Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\",\n \"type\": \"string\"\n },\n \"kmrbRating\": - {\n \"enum\": [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n - \ \"kmrb12plus\",\n \"kmrb15plus\",\n \"kmrbTeenr\",\n - \ \"kmrbR\",\n \"kmrbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"description\": \"The video's Korea - Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. - The KMRB rates videos in South Korea.\",\n \"type\": \"string\"\n - \ },\n \"ytRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ]\n - \ },\n \"lsfRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Indonesia's Lembaga Sensor - Film.\",\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n - \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n - \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ]\n },\n \"cnaRating\": {\n \"enum\": [\n - \ \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n - \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Romania's CONSILIUL NATIONAL - AL AUDIOVIZUALULUI (CNA).\",\n \"type\": \"string\"\n },\n - \ \"bfvcRating\": {\n \"description\": \"The video's rating - from Thailand's Board of Film and Video Censors.\",\n \"enum\": [\n - \ \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"fcbmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"type\": - \"string\",\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n - \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n - \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n - \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ]\n },\n - \ \"kijkwijzerRating\": {\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\"\n },\n \"cceRating\": - {\n \"enum\": [\n \"cceUnspecified\",\n \"cceM4\",\n - \ \"cceM6\",\n \"cceM12\",\n \"cceM16\",\n - \ \"cceM18\",\n \"cceUnrated\",\n \"cceM14\"\n - \ ],\n \"description\": \"The video's rating from Portugal's - Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"type\": \"string\"\n },\n \"cccRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Todo - espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n - \ \"14+\",\n \"18+\",\n \"18+ - contenido - excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"description\": \"The video's Consejo - de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"incaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's INCAA (Instituto Nacional de Cine - y Artes Audiovisuales - Argentina) rating.\",\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ]\n },\n \"ifcoRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n - \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n - \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n - \ \"ifco18\",\n \"ifcoUnrated\"\n ],\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\"\n },\n \"icaaRating\": - {\n \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ],\n \"description\": \"The - video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales (ICAA - - Spain) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ]\n },\n \"nfvcbRating\": {\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"18\",\n \"RE\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ]\n },\n - \ \"smsaRating\": {\n \"enum\": [\n \"smsaUnspecified\",\n - \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n - \ \"smsa15\",\n \"smsaUnrated\"\n ],\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"All ages\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"nkclvRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ]\n },\n \"rcnofRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\"\n },\n \"catvfrRating\": {\n - \ \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ],\n \"description\": \"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.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ]\n },\n \"nmcRating\": {\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\",\n - \ \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ]\n - \ },\n \"mcstRating\": {\n \"description\": \"The video's - rating system for Vietnam - MCST\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ]\n },\n - \ \"acbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"Programs that have been given a P classification - by the Australian Communications and Media Authority. These programs are intended - for preschool children.\",\n \"Programs that have been given a - C classification by the Australian Communications and Media Authority. These - programs are intended for children (other than preschool children) who are - younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"acbUnspecified\",\n - \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n - \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n - \ \"acbR18plus\",\n \"acbUnrated\"\n ],\n \"description\": - \"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.\"\n },\n \"fmocRating\": {\n \"enum\": - [\n \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"description\": - \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"fskRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft - (FSK - Germany) rating.\"\n },\n \"eirinRating\": {\n \"enum\": - [\n \"eirinUnspecified\",\n \"eirinG\",\n \"eirinPg12\",\n - \ \"eirinR15plus\",\n \"eirinR18plus\",\n \"eirinUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"The video's Eirin (\u6620\u502B) - rating. Eirin is the Japanese rating system.\",\n \"type\": \"string\"\n - \ },\n \"cncRating\": {\n \"description\": \"Rating - system in France - Commission de classification cinematographique\",\n \"enum\": - [\n \"cncUnspecified\",\n \"cncT\",\n \"cnc10\",\n - \ \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n \"cncE\",\n - \ \"cncInterdiction\",\n \"cncUnrated\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"E\",\n \"interdiction\",\n \"\"\n - \ ]\n },\n \"oflcRating\": {\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\",\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ]\n },\n \"rteRating\": - {\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\"\n - \ },\n \"bmukkRating\": {\n \"description\": \"The video's - rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ]\n },\n \"chfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Switzerland.\",\n - \ \"type\": \"string\"\n },\n \"smaisRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Iceland.\",\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ]\n },\n \"mibacRating\": - {\n \"description\": \"The video's rating from the Ministero dei - Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n \"type\": - \"string\",\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"czfilmRating\": {\n \"enum\": - [\n \"czfilmUnspecified\",\n \"czfilmU\",\n \"czfilm12\",\n - \ \"czfilm14\",\n \"czfilm18\",\n \"czfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in the Czech - Republic.\",\n \"type\": \"string\"\n },\n \"mccaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Malta's - Film Age-Classification Board.\",\n \"type\": \"string\"\n },\n - \ \"menaMpaaRating\": {\n \"description\": \"The rating system - for MENA countries, a clone of MPAA. It is needed to prevent titles go live - w/o additional QC check, since some of them can be inappropriate for the countries - at all. See b/33408548 for more details.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ],\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"fcoRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Hong Kong's - Office for Film, Newspaper and Article Administration.\"\n },\n \"kfcbRating\": - {\n \"enum\": [\n \"kfcbUnspecified\",\n \"kfcbG\",\n - \ \"kfcbPg\",\n \"kfcb16plus\",\n \"kfcbR\",\n - \ \"kfcbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Kenya Film Classification - Board.\",\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ]\n },\n \"moctwRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ],\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\"\n - \ },\n \"catvRating\": {\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ],\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"C\",\n - \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n - \ \"18+\",\n \"\",\n \"\"\n ]\n },\n - \ \"pefilmRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating in Peru.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ]\n },\n - \ \"cicfRating\": {\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Commission de Contr\xF4le - des Films (Belgium).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n - \ ]\n },\n \"ecbmctRating\": {\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ],\n \"description\": \"Rating - system in Turkey - Evaluation and Classification Board of the Ministry of - Culture and Tourism\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ]\n },\n \"cscfRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"description\": \"The video's rating from Luxembourg's - Commission de surveillance de la classification des films (CSCF).\",\n \"type\": - \"string\"\n },\n \"fpbRatingReasons\": {\n \"description\": - \"Reasons that explain why the video received its FPB (South Africa) rating.\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"South Africa rating content descriptors.\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"nfrcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\",\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"chvrsRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Canadian Home Video Rating System (CHVRS) rating.\",\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ]\n },\n \"mpaatRating\": {\n \"enum\": [\n - \ \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The rating system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ]\n },\n \"tvpgRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's TV Parental Guidelines - (TVPG) rating.\",\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ]\n },\n \"cbfcRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's Central Board of Film - Certification (CBFC - India) rating.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ],\n \"enum\": [\n - \ \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ]\n },\n \"resorteviolenciaRating\": {\n \"enum\": - [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"description\": \"The video's rating in Venezuela.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"nbcplRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"description\": \"The - video's rating in Poland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"mpaaRating\": - {\n \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n - \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n - \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n - \ \"! X\",\n \"\"\n ],\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"type\": - \"string\"\n },\n \"djctqRatingReasons\": {\n \"items\": - {\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ]\n },\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n - \ \"type\": \"array\"\n },\n \"mekuRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ],\n \"description\": \"The video's rating from Finland's - Kansallinen Audiovisuaalinen Instituutti (National Audiovisual Institute).\"\n - \ },\n \"mtrcbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ],\n \"description\": \"The - video's rating from the Movie and Television Review and Classification Board - (Philippines).\"\n },\n \"djctqRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"djctqUnspecified\",\n - \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n - \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n - \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n - \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n - \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n - \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n - \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n - \ \"djctq1618\",\n \"djctqUnrated\"\n ],\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\"\n },\n \"rtcRating\": - {\n \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's General Directorate - of Radio, Television and Cinematography (Mexico) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ]\n },\n \"russiaRating\": {\n \"description\": - \"The video's National Film Registry of the Russian Federation (MKRF - Russia) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"mocRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"T\",\n \"7\",\n \"12\",\n - \ \"15\",\n \"18\",\n \"X\",\n \"Banned\",\n - \ \"\"\n ],\n \"description\": \"The video's Ministerio - de Cultura (Colombia) rating.\",\n \"enum\": [\n \"mocUnspecified\",\n - \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n - \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ]\n },\n \"skfilmRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"P2\",\n \"P5\",\n \"P8\",\n - \ \"\"\n ],\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Slovakia.\"\n },\n \"ilfilmRating\": - {\n \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in Israel.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"fpbRating\": {\n \"enum\": - [\n \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n - \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n - \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ],\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\",\n - \ \"type\": \"string\"\n },\n \"mccypRating\": {\n \"enum\": - [\n \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n - \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\"\n },\n \"bbfcRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - British Board of Film Classification (BBFC) rating.\",\n \"enum\": - [\n \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ]\n - \ },\n \"nbcRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Maldives - National Bureau of Classification.\"\n },\n \"agcomRating\": - {\n \"description\": \"The video's rating from Italy's Autorit\xE0 - per le Garanzie nelle Comunicazioni (AGCOM).\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n - \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ]\n }\n }\n },\n \"PlaylistItemListResponse\": - {\n \"id\": \"PlaylistItemListResponse\",\n \"properties\": {\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlistItemListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of playlist - items that match the request criteria.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"PlaylistItem\"\n }\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"Member\": {\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\",\n - \ \"id\": \"Member\",\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n \"description\": - \"The snippet object contains basic details about the member.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#member\"\n - \ }\n }\n },\n \"PlaylistPlayer\": {\n \"id\": \"PlaylistPlayer\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"embedHtml\": - {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a - player that will play the playlist.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveBroadcastSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"scheduledStartTime\": {\n \"format\": - \"date-time\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The date and time that the broadcast is scheduled to start.\"\n },\n - \ \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\",\n \"type\": \"string\"\n - \ },\n \"liveChatId\": {\n \"description\": \"The id - of the live chat for this broadcast.\",\n \"type\": \"string\"\n - \ },\n \"actualStartTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the broadcast actually started. This information is only available - once the broadcast's state is live.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is publishing the broadcast.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\",\n - \ \"type\": \"string\"\n },\n \"scheduledEndTime\": - {\n \"description\": \"The date and time that the broadcast is scheduled - to end.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"isDefaultBroadcast\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the broadcast. For each nested object in this object, the - key is the name of the thumbnail image, and the value is an object that contains - other information about the thumbnail.\"\n },\n \"actualEndTime\": - {\n \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - was added to YouTube's live broadcast schedule.\"\n }\n },\n \"id\": - \"LiveBroadcastSnippet\",\n \"description\": \"Basic broadcast information.\"\n - \ },\n \"PlaylistItemContentDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"startAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify a video. To retrieve the video - resource, set the id query parameter to this value in your API request.\"\n - \ },\n \"endAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\"\n - \ },\n \"videoPublishedAt\": {\n \"description\": \"The - date and time that the video was published to YouTube.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"note\": - {\n \"type\": \"string\",\n \"description\": \"A user-generated - note for this item.\"\n }\n },\n \"id\": \"PlaylistItemContentDetails\"\n - \ },\n \"VideoSnippet\": {\n \"description\": \"Basic details about - a video, including title, description, uploader, thumbnails and category.\",\n - \ \"properties\": {\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the video belongs to.\"\n },\n \"liveBroadcastContent\": {\n - \ \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - video category associated with the video.\"\n },\n \"tags\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of keyword - tags associated with the video. Tags may contain spaces.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that the video was uploaded to.\",\n \"type\": \"string\"\n - \ },\n \"localized\": {\n \"$ref\": \"VideoLocalization\",\n - \ \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\"\n },\n \"defaultAudioLanguage\": {\n \"description\": - \"The default_audio_language property specifies the language spoken in the - video's default audio track.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"description\": \"The video's title. @mutable - youtube.videos.insert youtube.videos.update\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the videos's default snippet.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the video was uploaded.\",\n - \ \"format\": \"date-time\"\n }\n },\n \"id\": \"VideoSnippet\",\n - \ \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": {\n \"properties\": - {\n \"selfDeclaredMadeForKids\": {\n \"description\": \"This - field will be set to True if the creator declares the broadcast to be kids - only: go/live-cw-work.\",\n \"type\": \"boolean\"\n },\n \"liveBroadcastPriority\": - {\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Priority of - the live broadcast event (internal state).\",\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ]\n },\n \"lifeCycleStatus\": - {\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's status. The status can be updated - using the API's liveBroadcasts.transition method.\",\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ]\n },\n \"madeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the broadcast is made for kids or not, decided by YouTube instead of the creator. - This field is read only.\"\n },\n \"recordingStatus\": {\n \"description\": - \"The broadcast's recording status.\",\n \"enumDescriptions\": [\n - \ \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ]\n },\n \"privacyStatus\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's privacy status. Note that the - broadcast represents exactly one YouTube video, so the privacy settings are - identical to those supported for videos. In addition, you can set this field - by modifying the broadcast resource or by setting the privacyStatus field - of the corresponding video resource.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Live broadcast state.\",\n \"id\": - \"LiveBroadcastStatus\"\n },\n \"LiveBroadcastContentDetails\": {\n - \ \"description\": \"Detailed settings of a broadcast.\",\n \"type\": - \"object\",\n \"id\": \"LiveBroadcastContentDetails\",\n \"properties\": - {\n \"enableAutoStop\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting indicates whether auto stop is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\"\n },\n \"enableDvr\": {\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n - \ },\n \"recordFromStart\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\"\n },\n \"enableAutoStart\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - auto start is enabled for this broadcast. The default value for this property - is false. This setting can only be used by Events.\"\n },\n \"boundStreamId\": - {\n \"description\": \"This value uniquely identifies the live stream - bound to the broadcast.\",\n \"type\": \"string\"\n },\n \"monitorStream\": - {\n \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\",\n \"$ref\": - \"MonitorStreamInfo\"\n },\n \"enableEmbed\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - the broadcast video can be played in an embedded player. If you choose to - archive the video (using the enableArchive property), this setting will also - apply to the archived video.\"\n },\n \"closedCaptionsType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ]\n },\n \"startWithSlate\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - the broadcast should automatically begin with an in-stream slate when you - update the broadcast's status to live. After updating the status, you then - need to send a liveCuepoints.insert request that sets the cuepoint's eventState - to end to remove the in-stream slate and make your broadcast stream visible - to viewers.\"\n },\n \"mesh\": {\n \"description\": - \"The mesh for projecting the video if projection is mesh. The mesh value - must be a UTF-8 string containing the base-64 encoding of 3D mesh data that - follows the Spherical Video V2 RFC specification for an mshp box, excluding - the box size and type but including the following four reserved zero bytes - for the version and flags.\",\n \"format\": \"byte\",\n \"type\": - \"string\"\n },\n \"latencyPreference\": {\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Best for: highest quality viewer playbacks - and higher resolutions.\",\n \"Best for: near real-time interaction, - with minimal playback buffering.\",\n \"Best for: real-time interaction - Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n - \ \"type\": \"string\"\n },\n \"enableContentEncryption\": - {\n \"description\": \"This setting indicates whether YouTube should - enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n - \ },\n \"enableLowLatency\": {\n \"description\": \"Indicates - whether this broadcast has low latency enabled.\",\n \"type\": \"boolean\"\n - \ },\n \"boundStreamLastUpdateTimeMs\": {\n \"description\": - \"The date and time that the live stream referenced by boundStreamId was last - updated.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"stereoLayout\": {\n - \ \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n - \ \"leftRight\",\n \"topBottom\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The 3D stereo layout of this broadcast. - This defaults to mono.\",\n \"type\": \"string\"\n },\n \"projection\": - {\n \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ }\n }\n },\n \"ChannelToStoreLinkDetails\": {\n \"properties\": - {\n \"storeName\": {\n \"type\": \"string\",\n \"description\": - \"Name of the store.\"\n },\n \"merchantId\": {\n \"format\": - \"uint64\",\n \"description\": \"Google Merchant Center id of the - store.\",\n \"type\": \"string\"\n },\n \"storeUrl\": - {\n \"type\": \"string\",\n \"description\": \"Landing page - of the store.\"\n }\n },\n \"description\": \"Information - specific to a store on a merchandising platform linked to a YouTube channel.\",\n - \ \"id\": \"ChannelToStoreLinkDetails\",\n \"type\": \"object\"\n - \ },\n \"VideoRating\": {\n \"id\": \"VideoRating\",\n \"type\": - \"object\",\n \"properties\": {\n \"rating\": {\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"description\": \"Rating of a video.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ]\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Basic details about rating of - a video.\"\n },\n \"LiveStreamSnippet\": {\n \"properties\": {\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The stream's description. The value cannot be longer than 10000 characters.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\"\n },\n \"isDefaultStream\": {\n \"type\": - \"boolean\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The stream's title. The value must be between - 1 and 128 characters long.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the stream was created.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveStreamSnippet\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"type\": \"object\",\n \"description\": \"Video processing - progress and completion time estimate.\",\n \"properties\": {\n \"partsProcessed\": - {\n \"type\": \"string\",\n \"description\": \"The number - of parts of the video that YouTube has already processed. You can estimate - the percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\",\n \"format\": - \"uint64\"\n },\n \"timeLeftMs\": {\n \"format\": \"uint64\",\n - \ \"description\": \"An estimate of the amount of time, in millseconds, - that YouTube needs to finish processing the video.\",\n \"type\": - \"string\"\n },\n \"partsTotal\": {\n \"type\": \"string\",\n - \ \"description\": \"An estimate of the total number of parts that - need to be processed for the video. The number may be updated with more precise - estimates while YouTube processes the video.\",\n \"format\": \"uint64\"\n - \ }\n },\n \"id\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"Playlist\": {\n \"type\": \"object\",\n \"description\": - \"A *playlist* resource represents a YouTube playlist. A playlist is a collection - of videos that can be viewed sequentially and shared with other users. A playlist - can contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": \"The - snippet object contains basic details about the playlist, such as its title - and description.\"\n },\n \"player\": {\n \"$ref\": - \"PlaylistPlayer\",\n \"description\": \"The player object contains - information that you would use to play the playlist in an embedded player.\"\n - \ },\n \"status\": {\n \"$ref\": \"PlaylistStatus\",\n - \ \"description\": \"The status object contains status information - for the playlist.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the playlist.\",\n \"type\": \"string\"\n },\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"PlaylistLocalization\"\n },\n \"description\": \"Localizations - for different languages\",\n \"type\": \"object\"\n },\n \"contentDetails\": - {\n \"$ref\": \"PlaylistContentDetails\",\n \"description\": - \"The contentDetails object contains information like video count.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"default\": \"youtube#playlist\"\n }\n },\n \"id\": - \"Playlist\"\n },\n \"LiveStreamConfigurationIssue\": {\n \"type\": - \"object\",\n \"id\": \"LiveStreamConfigurationIssue\",\n \"properties\": - {\n \"reason\": {\n \"description\": \"The short-form reason - for this issue.\",\n \"type\": \"string\"\n },\n \"severity\": - {\n \"description\": \"How severe this issue is to the stream.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"info\",\n \"warning\",\n \"error\"\n - \ ]\n },\n \"description\": {\n \"description\": - \"The long-form description of the issue and how to resolve it.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"description\": \"The - kind of error happening.\",\n \"type\": \"string\",\n \"enum\": - [\n \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n }\n },\n - \ \"PlaylistItemStatus\": {\n \"id\": \"PlaylistItemStatus\",\n \"description\": - \"Information about the playlist item's privacy status.\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"This resource's - privacy status.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"VideoCategoryListResponse\": {\n \"properties\": {\n \"items\": - {\n \"description\": \"A list of video categories that can be associated - with YouTube videos. In this map, the video category ID is the map key, and - its value is the corresponding videoCategory resource.\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n },\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoCategoryListResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"VideoCategoryListResponse\",\n \"type\": \"object\"\n },\n \"LocalizedProperty\": - {\n \"type\": \"object\",\n \"properties\": {\n \"defaultLanguage\": - {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The - language of the default property.\"\n },\n \"localized\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n }\n },\n \"default\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LocalizedProperty\"\n },\n - \ \"I18nRegionListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#i18nRegionListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"description\": \"A list of regions where YouTube is available. - In this map, the i18n region ID is the map key, and its value is the corresponding - i18nRegion resource.\",\n \"items\": {\n \"$ref\": \"I18nRegion\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"id\": - \"I18nRegionListResponse\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"properties\": {\n \"customCtaButtonText\": {\n \"type\": - \"string\",\n \"description\": \"The custom call-to-action button - text. If specified, it will override the default button text for the cta_type.\"\n - \ },\n \"destinationUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should direct the user to, - if the user chooses to visit the advertiser's website.\"\n },\n \"ctaType\": - {\n \"type\": \"string\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\"\n },\n \"descriptionText\": {\n \"type\": - \"string\",\n \"description\": \"The text description to accompany - the promoted item.\"\n },\n \"clickTrackingUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user clicked through - on this promoted item.\",\n \"type\": \"string\"\n },\n \"creativeViewUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user was shown this promoted item.\"\n - \ },\n \"adTag\": {\n \"description\": \"The URL the - client should fetch to request a promoted item.\",\n \"type\": \"string\"\n - \ },\n \"videoId\": {\n \"description\": \"The ID that - YouTube uses to uniquely identify the promoted video.\",\n \"type\": - \"string\"\n },\n \"forecastingUrl\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"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.\",\n \"type\": \"array\"\n },\n \"impressionUrl\": - {\n \"description\": \"The list of impression URLs. The client should - ping all of these URLs to indicate that the user was shown this promoted item.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Details about a resource which is being promoted.\",\n - \ \"id\": \"ActivityContentDetailsPromotedItem\"\n }\n },\n \"ownerName\": - \"Google\",\n \"ownerDomain\": \"google.com\",\n \"canonicalName\": \"YouTube\",\n - \ \"title\": \"YouTube Data API v3\",\n \"version\": \"v3\",\n \"fullyEncodeReservedExpansion\": - true,\n \"protocol\": \"rest\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"description\": \"The YouTube Data API v3 is an API that provides access - to YouTube data, such as videos, playlists, and channels.\",\n \"rootUrl\": - \"https://youtube.googleapis.com/\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:40 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCHaLe-nsVi4Kfnz3B0XqTMQ&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"YpaGqCz3TmYbKZbXo4BXMNybrFk\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"72gyK-mtwN-ElgejemqI1zq42PU\",\n \"id\": \"UCHaLe-nsVi4Kfnz3B0XqTMQ\",\n - \ \"snippet\": {\n \"title\": \"Safas\",\n \"description\": - \"laurynas.zmejauskas@gmail.com\",\n \"customUrl\": \"@safaschannel\",\n - \ \"publishedAt\": \"2008-09-07T11:55:19Z\",\n \"thumbnails\": - {\n \"default\": {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJUzIk1tCT4ZlN-HRlmCEXfsnrKvqt0ACLU43yHjMg=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJUzIk1tCT4ZlN-HRlmCEXfsnrKvqt0ACLU43yHjMg=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJUzIk1tCT4ZlN-HRlmCEXfsnrKvqt0ACLU43yHjMg=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Safas\",\n \"description\": - \"laurynas.zmejauskas@gmail.com\"\n },\n \"country\": \"LT\"\n - \ },\n \"brandingSettings\": {\n \"channel\": {\n \"title\": - \"Safas\",\n \"description\": \"laurynas.zmejauskas@gmail.com\",\n - \ \"keywords\": \"safuelis\",\n \"country\": \"LT\"\n },\n - \ \"image\": {\n \"bannerExternalUrl\": \"https://yt3.googleusercontent.com/YmVEwdzbEA1F8N8KxSWyAgP-hlbaF8eqiHkLkVwIPBz6n8aWcGG0vq-MLzw5nbNNrJBvtGFDcg\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:40 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"kind\": \"discovery#restDescription\",\n \"documentationLink\": - \"https://developers.google.com/youtube/\",\n \"description\": \"The YouTube - Data API v3 is an API that provides access to YouTube data, such as videos, - playlists, and channels.\",\n \"schemas\": {\n \"ChannelContentOwnerDetails\": - {\n \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"id\": - \"ChannelContentOwnerDetails\",\n \"properties\": {\n \"contentOwner\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the content owner linked to the channel.\"\n },\n \"timeLinked\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the channel was linked - to the content owner.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"Caption\": {\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the caption track.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#caption\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#caption\\\".\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"Caption\",\n \"description\": \"A - *caption* resource represents a YouTube caption track. A caption track is - associated with exactly one YouTube video.\",\n \"type\": \"object\"\n - \ },\n \"LiveBroadcastListResponse\": {\n \"properties\": {\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveBroadcastListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of broadcasts that match the request criteria.\",\n - \ \"items\": {\n \"$ref\": \"LiveBroadcast\"\n }\n - \ }\n },\n \"id\": \"LiveBroadcastListResponse\",\n \"type\": - \"object\"\n },\n \"PlaylistLocalization\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for playlist's title.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"The localized - strings for playlist's description.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Playlist localization setting\",\n \"id\": - \"PlaylistLocalization\"\n },\n \"VideoAbuseReport\": {\n \"type\": - \"object\",\n \"properties\": {\n \"secondaryReasonId\": {\n \"description\": - \"The specific, or secondary, reason that this content is abusive (if available). - The value is an abuse report reason ID that is a valid secondary reason for - the primary reason.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n },\n \"comments\": - {\n \"description\": \"Additional comments regarding the abuse report.\",\n - \ \"type\": \"string\"\n },\n \"reasonId\": {\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\",\n \"type\": \"string\"\n },\n - \ \"language\": {\n \"type\": \"string\",\n \"description\": - \"The language that the content was viewed in.\"\n }\n },\n \"id\": - \"VideoAbuseReport\"\n },\n \"LiveChatMembershipGiftingDetails\": {\n - \ \"properties\": {\n \"giftMembershipsCount\": {\n \"description\": - \"The number of gift memberships purchased by the user.\",\n \"format\": - \"int32\",\n \"type\": \"integer\"\n },\n \"giftMembershipsLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the level of the gift memberships purchased by the user. The Level names - are defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n \"PlaylistPlayer\": - {\n \"properties\": {\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"An \\u003ciframe\\u003e tag that - embeds a player that will play the playlist.\"\n }\n },\n \"id\": - \"PlaylistPlayer\",\n \"type\": \"object\"\n },\n \"MembershipsDurationAtLevel\": - {\n \"properties\": {\n \"level\": {\n \"type\": \"string\",\n - \ \"description\": \"Pricing level ID.\"\n },\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"description\": \"The cumulative - time the user has been a member for the given level in complete months (the - time is rounded down to the nearest integer).\",\n \"format\": \"int32\"\n - \ },\n \"memberSince\": {\n \"description\": \"The date - and time when the user became a continuous member for the given level.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"MembershipsDurationAtLevel\"\n },\n \"AbuseReport\": - {\n \"properties\": {\n \"description\": {\n \"type\": - \"string\"\n },\n \"abuseTypes\": {\n \"items\": {\n - \ \"$ref\": \"AbuseType\"\n },\n \"type\": \"array\"\n - \ },\n \"subject\": {\n \"$ref\": \"Entity\"\n },\n - \ \"relatedEntities\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"RelatedEntity\"\n }\n }\n },\n - \ \"id\": \"AbuseReport\",\n \"type\": \"object\"\n },\n \"PlaylistStatus\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistStatus\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The playlist's privacy status.\",\n \"type\": - \"string\"\n }\n }\n },\n \"Channel\": {\n \"id\": - \"Channel\",\n \"properties\": {\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n - \ \"brandingSettings\": {\n \"description\": \"The brandingSettings - object encapsulates information about the branding of the channel.\",\n \"$ref\": - \"ChannelBrandingSettings\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelLocalization\"\n },\n \"description\": \"Localizations - for different languages\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object encapsulates statistics for the channel.\",\n \"$ref\": - \"ChannelStatistics\"\n },\n \"kind\": {\n \"default\": - \"youtube#channel\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel.\"\n },\n \"conversionPings\": {\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the channel, such as its title, description, - and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"auditDetails\": {\n \"description\": - \"The auditionDetails object encapsulates channel data that is relevant for - YouTube Partners during the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object encapsulates information about the channel's content.\",\n - \ \"$ref\": \"ChannelContentDetails\"\n },\n \"contentOwnerDetails\": - {\n \"description\": \"The contentOwnerDetails object encapsulates - channel data that is relevant for YouTube Partners linked with the channel.\",\n - \ \"$ref\": \"ChannelContentOwnerDetails\"\n },\n \"status\": - {\n \"description\": \"The status object encapsulates information - about the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - *channel* resource contains information about a YouTube channel.\"\n },\n - \ \"SearchResultSnippet\": {\n \"properties\": {\n \"description\": - {\n \"description\": \"A description of the search result.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the search result. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The value that YouTube uses to uniquely - identify the channel that published the resource that the search result identifies.\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the channel that published the resource - that the search result identifies.\"\n },\n \"publishedAt\": - {\n \"description\": \"The creation date and time of the resource - that the search result identifies.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"liveBroadcastContent\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\",\n \"description\": \"It indicates if the resource (video - or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" - if there is not any upcoming/active live broadcasts.\"\n },\n \"title\": - {\n \"description\": \"The title of the search result.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"id\": \"SearchResultSnippet\"\n - \ },\n \"VideoCategory\": {\n \"type\": \"object\",\n \"id\": - \"VideoCategory\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoCategory\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the video category.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"A *videoCategory* - resource identifies a category that has been or could be associated with uploaded - videos.\"\n },\n \"SuperStickerMetadata\": {\n \"id\": \"SuperStickerMetadata\",\n - \ \"properties\": {\n \"altText\": {\n \"type\": \"string\",\n - \ \"description\": \"Internationalized alt text that describes the - sticker image and any animation associated with it.\"\n },\n \"stickerId\": - {\n \"description\": \"Unique identifier of the Super Sticker. This - is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\",\n \"type\": \"string\"\n },\n - \ \"altTextLanguage\": {\n \"description\": \"Specifies the - localization language in which the alt text is returned.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"description\": \"Information about a new playlist item.\",\n \"type\": - \"object\",\n \"properties\": {\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The value that YouTube uses to uniquely - identify the playlist.\"\n },\n \"playlistItemId\": {\n \"type\": - \"string\",\n \"description\": \"ID of the item within the playlist.\"\n - \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n }\n },\n \"id\": - \"ActivityContentDetailsPlaylistItem\"\n },\n \"LiveStreamContentDetails\": - {\n \"type\": \"object\",\n \"description\": \"Detailed settings - of a stream.\",\n \"id\": \"LiveStreamContentDetails\",\n \"properties\": - {\n \"closedCaptionsIngestionUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The ingestion URL where the closed captions of - this stream are sent.\"\n },\n \"isReusable\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the stream is - reusable, which means that it can be bound to multiple broadcasts. It is common - for broadcasters to reuse the same stream for many different broadcasts if - those broadcasts occur at different times. If you set this value to false, - then the stream will not be reusable, which means that it can only be bound - to one broadcast. Non-reusable streams differ from reusable streams in the - following ways: - A non-reusable stream can only be bound to one broadcast. - - A non-reusable stream might be deleted by an automated process after the - broadcast ends. - The liveStreams.list method does not list non-reusable streams - if you call the method and set the mine parameter to true. The only way to - use that method to retrieve the resource for a non-reusable stream is to use - the id parameter to identify the stream. \"\n }\n }\n },\n - \ \"ActivityContentDetailsComment\": {\n \"id\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"Information about a resource that received a comment.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource associated with the comment.\",\n \"$ref\": - \"ResourceId\"\n }\n }\n },\n \"LocalizedProperty\": {\n - \ \"properties\": {\n \"localized\": {\n \"items\": {\n - \ \"$ref\": \"LocalizedString\"\n },\n \"type\": - \"array\"\n },\n \"defaultLanguage\": {\n \"$ref\": - \"LanguageTag\",\n \"description\": \"The language of the default - property.\"\n },\n \"default\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LocalizedProperty\"\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"id\": \"LiveChatFanFundingEventDetails\",\n - \ \"properties\": {\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"format\": \"uint64\",\n \"description\": \"The amount - of the fund.\",\n \"type\": \"string\"\n },\n \"currency\": - {\n \"description\": \"The currency in which the fund was made.\",\n - \ \"type\": \"string\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"properties\": {\n \"seedResourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The seedResourceId object contains - information about the resource that caused the recommendation.\"\n },\n - \ \"reason\": {\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The reason that the resource is recommended to - the user.\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the recommended resource.\"\n }\n },\n \"description\": - \"Information that identifies the recommended resource.\",\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsRecommendation\"\n },\n - \ \"LiveBroadcastContentDetails\": {\n \"properties\": {\n \"enableAutoStop\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto stop is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"enableDvr\": {\n \"description\": \"This setting determines - whether viewers can access DVR controls while watching the video. DVR controls - enable the viewer to control the video playback experience by pausing, rewinding, - or fast forwarding content. The default value for this property is true. *Important:* - You must set the value to true and also set the enableArchive property's value - to true if you want to make playback available immediately after the broadcast - ends.\",\n \"type\": \"boolean\"\n },\n \"boundStreamId\": - {\n \"type\": \"string\",\n \"description\": \"This value - uniquely identifies the live stream bound to the broadcast.\"\n },\n - \ \"stereoLayout\": {\n \"type\": \"string\",\n \"enum\": - [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ],\n \"description\": \"The - 3D stereo layout of this broadcast. This defaults to mono.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"closedCaptionsType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"type\": - \"string\"\n },\n \"enableLowLatency\": {\n \"description\": - \"Indicates whether this broadcast has low latency enabled.\",\n \"type\": - \"boolean\"\n },\n \"monitorStream\": {\n \"$ref\": - \"MonitorStreamInfo\",\n \"description\": \"The monitorStream object - contains information about the monitor stream, which the broadcaster can use - to review the event content before the broadcast stream is shown publicly.\"\n - \ },\n \"recordFromStart\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\"\n },\n \"mesh\": {\n \"format\": \"byte\",\n - \ \"description\": \"The mesh for projecting the video if projection - is mesh. The mesh value must be a UTF-8 string containing the base-64 encoding - of 3D mesh data that follows the Spherical Video V2 RFC specification for - an mshp box, excluding the box size and type but including the following four - reserved zero bytes for the version and flags.\",\n \"type\": \"string\"\n - \ },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"enableContentEncryption\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether YouTube should enable content encryption for the broadcast.\"\n - \ },\n \"projection\": {\n \"type\": \"string\",\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n },\n \"enableAutoStart\": {\n \"description\": - \"This setting indicates whether auto start is enabled for this broadcast. - The default value for this property is false. This setting can only be used - by Events.\",\n \"type\": \"boolean\"\n },\n \"startWithSlate\": - {\n \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n },\n \"latencyPreference\": {\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Best for: highest quality viewer playbacks - and higher resolutions.\",\n \"Best for: near real-time interaction, - with minimal playback buffering.\",\n \"Best for: real-time interaction - Does not support: Closed captions, 1440p, and 4k resolutions\"\n ],\n - \ \"type\": \"string\"\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the live stream referenced by boundStreamId was last updated.\",\n - \ \"format\": \"date-time\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Detailed settings of a broadcast.\",\n - \ \"id\": \"LiveBroadcastContentDetails\"\n },\n \"ChannelSectionLocalization\": - {\n \"description\": \"ChannelSection localization setting\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel section's title.\"\n }\n },\n - \ \"id\": \"ChannelSectionLocalization\",\n \"type\": \"object\"\n - \ },\n \"CommentListResponse\": {\n \"id\": \"CommentListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of comments that match the request criteria.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentListResponse\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"ChannelContentDetails\",\n - \ \"description\": \"Details about the content of a channel.\",\n \"properties\": - {\n \"relatedPlaylists\": {\n \"type\": \"object\",\n \"properties\": - {\n \"favorites\": {\n \"description\": \"The ID of - the playlist that contains the channel\\\"s favorite videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n },\n \"uploads\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use - the videos.insert method to upload new videos and the videos.delete method - to delete previously uploaded videos.\",\n \"type\": \"string\"\n - \ },\n \"likes\": {\n \"description\": \"The - ID of the playlist that contains the channel\\\"s liked videos. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\",\n \"type\": - \"string\"\n },\n \"watchLater\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\",\n \"type\": \"string\"\n },\n \"watchHistory\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n }\n - \ }\n }\n }\n },\n \"VideoFileDetailsAudioStream\": - {\n \"id\": \"VideoFileDetailsAudioStream\",\n \"description\": - \"Information about an audio stream.\",\n \"properties\": {\n \"channelCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of audio channels that the stream contains.\"\n },\n \"bitrateBps\": - {\n \"description\": \"The audio stream's bitrate, in bits per second.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"codec\": {\n \"type\": - \"string\",\n \"description\": \"The audio codec that the stream - uses.\"\n }\n },\n \"type\": \"object\"\n },\n \"I18nRegion\": - {\n \"type\": \"object\",\n \"description\": \"A *i18nRegion* resource - identifies a region where YouTube is available.\",\n \"id\": \"I18nRegion\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the i18n region.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#i18nRegion\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"I18nRegionSnippet\",\n \"description\": \"The snippet object contains - basic details about the i18n region, such as region code and human-readable - name.\"\n }\n }\n },\n \"LiveChatTextMessageDetails\": {\n - \ \"properties\": {\n \"messageText\": {\n \"description\": - \"The user's message.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LiveChatTextMessageDetails\",\n \"type\": \"object\"\n - \ },\n \"ThirdPartyLinkSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"type\": {\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or about to - connect) a channel with a store on a merchandising platform in order to enable - retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Type of the - link named after the entities that are being linked.\"\n },\n \"channelToStoreLink\": - {\n \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n - \ }\n },\n \"id\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"Basic information about a third party account link, including its type and - type-specific information.\"\n },\n \"ChannelAuditDetails\": {\n \"type\": - \"object\",\n \"id\": \"ChannelAuditDetails\",\n \"properties\": - {\n \"copyrightStrikesGoodStanding\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether or not the channel has any copyright - strikes.\"\n },\n \"communityGuidelinesGoodStanding\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the channel respects - the community guidelines.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any unresolved claims.\"\n }\n },\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\"\n },\n \"AbuseType\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"AbuseType\"\n },\n \"ImageSettings\": - {\n \"properties\": {\n \"bannerMobileHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\"\n },\n \"bannerMobileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size (640x175).\"\n - \ },\n \"largeBrandedBannerImageImapScript\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The image map script - for the large banner image.\"\n },\n \"bannerImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n },\n \"bannerExternalUrl\": {\n - \ \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"smallBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 640px - by 70px banner image that appears below the video player in the default view - of the video watch page. The URL for the image that appears above the top-left - corner of the video player. This is a 25-pixel-high image with a flexible - width that cannot exceed 170 pixels.\"\n },\n \"bannerTvHighImageUrl\": - {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"bannerTvMediumImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. TV size medium resolution (1280x720).\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": - {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size medium/high resolution (960x263).\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"bannerTabletImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n },\n \"watchIconImageUrl\": {\n - \ \"type\": \"string\"\n },\n \"bannerTvImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n },\n \"trackingImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL for - a 1px by 1px tracking pixel that can be used to collect statistics for views - of the channel or video pages.\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\",\n - \ \"$ref\": \"LocalizedProperty\"\n }\n },\n \"description\": - \"Branding properties for images associated with the channel.\",\n \"type\": - \"object\",\n \"id\": \"ImageSettings\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"retractedMessageId\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"PropertyValue\": {\n \"id\": \"PropertyValue\",\n \"properties\": - {\n \"value\": {\n \"description\": \"The property's value.\",\n - \ \"type\": \"string\"\n },\n \"property\": {\n \"description\": - \"A property.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"A pair Property / Value.\",\n \"type\": \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n \"properties\": - {\n \"blocked\": {\n \"type\": \"array\",\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"allowed\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\",\n \"type\": \"array\"\n }\n - \ },\n \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"type\": \"object\"\n },\n \"I18nRegionSnippet\": {\n \"description\": - \"Basic details about an i18n region, such as region code and human-readable - name.\",\n \"id\": \"I18nRegionSnippet\",\n \"properties\": {\n - \ \"name\": {\n \"description\": \"The human-readable name - of the region.\",\n \"type\": \"string\"\n },\n \"gl\": - {\n \"description\": \"The region code as a 2-letter ISO country - code.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"ActivityListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"default\": - \"youtube#activityListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"items\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Activity\"\n }\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ActivityListResponse\",\n - \ \"type\": \"object\"\n },\n \"Comment\": {\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the comment.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#comment\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#comment\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment.\",\n \"$ref\": - \"CommentSnippet\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"Comment\",\n \"description\": \"A *comment* represents a single YouTube - comment.\"\n },\n \"CommentThreadReplies\": {\n \"id\": \"CommentThreadReplies\",\n - \ \"properties\": {\n \"comments\": {\n \"description\": - \"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.\",\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"description\": \"Comments written in (direct or indirect) reply to - the top level comment.\",\n \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": - {\n \"description\": \"Live broadcast state.\",\n \"properties\": - {\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"privacyStatus\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"liveBroadcastPriority\": - {\n \"type\": \"string\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"enumDescriptions\": [\n \"\",\n \"Low - priority broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ]\n },\n \"lifeCycleStatus\": {\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"type\": \"string\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ]\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the broadcast is made for kids or not, - decided by YouTube instead of the creator. This field is read only.\"\n },\n - \ \"recordingStatus\": {\n \"enumDescriptions\": [\n \"No - value or the value is unknown.\",\n \"The recording has not yet - been started.\",\n \"The recording is currently on.\",\n \"The - recording is completed, and cannot be started again.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"description\": \"The broadcast's recording status.\"\n - \ }\n },\n \"id\": \"LiveBroadcastStatus\",\n \"type\": - \"object\"\n },\n \"ChannelSnippet\": {\n \"properties\": {\n \"customUrl\": - {\n \"type\": \"string\",\n \"description\": \"The custom - url of the channel.\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the channel's default title and description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - channel's title.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the channel was created.\"\n - \ },\n \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"thumbnails\": {\n \"description\": - \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"description\": - {\n \"description\": \"The description of the channel.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Basic - details about a channel, including title, description and thumbnails.\",\n - \ \"id\": \"ChannelSnippet\"\n },\n \"MemberSnippet\": {\n \"id\": - \"MemberSnippet\",\n \"properties\": {\n \"membershipsDetails\": - {\n \"$ref\": \"MembershipsDetails\",\n \"description\": - \"Details about the user's membership.\"\n },\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering memberships.\"\n },\n \"memberDetails\": - {\n \"description\": \"Details about the member.\",\n \"$ref\": - \"ChannelProfileDetails\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatBanSnippet\": {\n \"id\": \"LiveChatBanSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"banDurationSeconds\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The duration of a ban, only filled if the ban has type TEMPORARY.\"\n },\n - \ \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"An - invalid ban type.\",\n \"A permanent ban.\",\n \"A temporary - ban.\"\n ],\n \"description\": \"The type of ban.\",\n \"enum\": - [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"type\": \"string\"\n - \ },\n \"liveChatId\": {\n \"description\": \"The chat - this ban is pertinent to.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"SearchListResponse\": {\n \"id\": \"SearchListResponse\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"items\": {\n \"description\": \"Pagination information - for token pagination.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SearchResult\"\n }\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#searchListResponse\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": - \"object\"\n },\n \"SubscriptionSubscriberSnippet\": {\n \"properties\": - {\n \"thumbnails\": {\n \"description\": \"Thumbnails for - this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"channelId\": {\n \"description\": \"The channel ID of the - subscriber.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the subscriber.\"\n },\n \"title\": {\n \"description\": - \"The title of the subscriber.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"SubscriptionSubscriberSnippet\",\n \"description\": - \"Basic details about a subscription's subscriber including title, description, - channel ID and thumbnails.\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"description\": \"Information about a video that was marked as a - favorite video.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsFavorite\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"VideoAbuseReportReasonSnippet\": {\n \"description\": - \"Basic details about a video category, such as its localized title.\",\n - \ \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label belonging to this abuse report - reason.\"\n },\n \"secondaryReasons\": {\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"description\": \"The secondary reasons associated with this reason, - if any are available. (There might be 0 or more.)\",\n \"type\": - \"array\"\n }\n }\n },\n \"LiveChatModerator\": {\n \"description\": - \"A *liveChatModerator* resource represents a moderator for a YouTube live - chat. A chat moderator has the ability to ban/unban users from a chat, remove - message, etc.\",\n \"type\": \"object\",\n \"id\": \"LiveChatModerator\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"LiveChatModeratorSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the moderator.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the moderator.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModerator\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ChannelSettings\": {\n \"properties\": {\n \"keywords\": - {\n \"type\": \"string\",\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n },\n \"featuredChannelsUrls\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The list of featured - channels.\"\n },\n \"description\": {\n \"description\": - \"Specifies the channel description.\",\n \"type\": \"string\"\n - \ },\n \"showBrowseView\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the tab to browse the videos should be - displayed.\"\n },\n \"moderateComments\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether user-submitted comments - left on the channel page need to be approved by the channel owner to be publicly - visible.\"\n },\n \"showRelatedChannels\": {\n \"description\": - \"Whether related channels should be proposed.\",\n \"type\": \"boolean\"\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\"\n - \ },\n \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"type\": \"string\",\n \"description\": \"The ID for - a Google Analytics account to track and measure traffic to the channels.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the channel title.\"\n },\n \"profileColor\": {\n - \ \"description\": \"A prominent color that can be rendered on this - channel page.\",\n \"type\": \"string\"\n },\n \"unsubscribedTrailer\": - {\n \"type\": \"string\",\n \"description\": \"The trailer - of the channel, for users that are not subscribers.\"\n },\n \"defaultTab\": - {\n \"description\": \"Which content tab users should see when viewing - the channel.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ChannelSettings\",\n \"type\": \"object\",\n \"description\": - \"Branding properties for the channel view.\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"properties\": {\n \"items\": {\n \"items\": {\n - \ \"$ref\": \"ThirdPartyLink\"\n },\n \"type\": - \"array\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLinkListResponse\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ThirdPartyLinkListResponse\"\n },\n \"VideoStatus\": - {\n \"id\": \"VideoStatus\",\n \"type\": \"object\",\n \"properties\": - {\n \"license\": {\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"description\": \"The - video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ]\n },\n \"publicStatsViewable\": - {\n \"description\": \"This value indicates if the extended video - statistics on the watch page can be viewed by everyone. Note that the view - count, likes, etc will still be visible if this is disabled. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"boolean\"\n },\n \"rejectionReason\": - {\n \"description\": \"This value explains why YouTube rejected an - uploaded video. This property is only present if the uploadStatus property - indicates that the upload was rejected.\",\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ]\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"failureReason\": {\n \"description\": \"This - value explains why a video failed to upload. This property is only present - if the uploadStatus property indicates that the upload failed.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Unable to convert - video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ],\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ]\n },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"publishAt\": {\n \"description\": \"The date - and time when the video is scheduled to publish. It can be set only if the - privacy status of the video is private..\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"embeddable\": {\n \"description\": - \"This value indicates if the video can be embedded on another website. @mutable - youtube.videos.insert youtube.videos.update\",\n \"type\": \"boolean\"\n - \ },\n \"uploadStatus\": {\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ],\n \"type\": \"string\",\n \"description\": - \"The status of the uploaded video.\",\n \"enumDescriptions\": [\n - \ \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ]\n },\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's privacy status.\"\n - \ }\n },\n \"description\": \"Basic details about a video - category, such as its localized title. Next Id: 18\"\n },\n \"I18nLanguageListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#i18nLanguageListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of supported - i18n languages. In this map, the i18n language ID is the map key, and its - value is the corresponding i18nLanguage resource.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n - \ }\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"I18nLanguageListResponse\"\n },\n - \ \"VideoProcessingDetails\": {\n \"type\": \"object\",\n \"id\": - \"VideoProcessingDetails\",\n \"description\": \"Describes processing - status and progress and availability of some other Video resource parts.\",\n - \ \"properties\": {\n \"processingIssuesAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether the - video processing engine has generated suggestions that might improve YouTube's - ability to process the the video, warnings that explain video processing problems, - or errors that cause video processing problems. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"tagSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether keyword (tag) suggestions - are available for the video. Tags can be added to a video's metadata to make - it easier for other users to find the video. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"thumbnailsAvailability\": {\n \"type\": \"string\",\n \"description\": - \"This value indicates whether thumbnail images have been generated for the - video.\"\n },\n \"processingProgress\": {\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"fileDetailsAvailability\": {\n \"description\": - \"This value indicates whether file details are available for the uploaded - video. You can retrieve a video's file details by requesting the fileDetails - part in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether video editing suggestions, which might improve video - quality or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\",\n \"type\": \"string\"\n },\n \"processingFailureReason\": - {\n \"description\": \"The reason that YouTube failed to process - the video. This property will only have a value if the processingStatus property's - value is failed.\",\n \"type\": \"string\",\n \"enum\": - [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"processingStatus\": {\n \"type\": \"string\",\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\",\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n }\n },\n \"VideoRating\": {\n \"id\": - \"VideoRating\",\n \"properties\": {\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video.\"\n },\n \"rating\": {\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"description\": \"Rating of - a video.\"\n }\n },\n \"description\": \"Basic details about - rating of a video.\",\n \"type\": \"object\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"properties\": - {\n \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"PlaylistItemStatus\": - {\n \"id\": \"PlaylistItemStatus\",\n \"properties\": {\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"This resource's - privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Information about the playlist - item's privacy status.\",\n \"type\": \"object\"\n },\n \"MonitorStreamInfo\": - {\n \"type\": \"object\",\n \"description\": \"Settings and Info - of the monitor stream\",\n \"id\": \"MonitorStreamInfo\",\n \"properties\": - {\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\"\n },\n - \ \"enableMonitorStream\": {\n \"description\": \"This value - determines whether the monitor stream is enabled for the broadcast. If the - monitor stream is enabled, then YouTube will broadcast the event content on - a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"boolean\"\n },\n - \ \"broadcastStreamDelayMs\": {\n \"description\": \"If you - have set the enableMonitorStream property to true, then this property determines - the length of the live broadcast delay.\",\n \"annotations\": {\n - \ \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n }\n }\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viewer is a member. This matches the - `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated - membership gifting message. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n },\n \"gifterChannelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID of the - user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"MembershipsLevelSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"levelDetails\": {\n \"$ref\": - \"LevelDetails\",\n \"description\": \"Details about the pricing - level.\"\n },\n \"creatorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the channel that's offering - channel memberships.\"\n }\n },\n \"id\": \"MembershipsLevelSnippet\"\n - \ },\n \"ActivityContentDetailsLike\": {\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the rated resource.\",\n \"$ref\": \"ResourceId\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsLike\",\n \"description\": - \"Information about a resource that received a positive (like) rating.\",\n - \ \"type\": \"object\"\n },\n \"ThumbnailDetails\": {\n \"id\": - \"ThumbnailDetails\",\n \"properties\": {\n \"high\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The high quality image for this - resource.\"\n },\n \"standard\": {\n \"description\": - \"The standard quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"medium\": {\n \"description\": \"The medium - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The default image for this resource.\"\n },\n \"maxres\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The maximum - resolution quality image for this resource.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Internal representation of thumbnails - for a YouTube resource.\"\n },\n \"SubscriptionContentDetails\": {\n - \ \"description\": \"Details about the content to witch a subscription - refers.\",\n \"type\": \"object\",\n \"properties\": {\n \"newItemCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of new items in the subscription since its content was last read.\"\n - \ },\n \"activityType\": {\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The type of activity - this subscription is for (only uploads, everything).\"\n },\n \"totalItemCount\": - {\n \"description\": \"The approximate number of items that the subscription - points to.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ }\n },\n \"id\": \"SubscriptionContentDetails\"\n },\n - \ \"I18nLanguageSnippet\": {\n \"type\": \"object\",\n \"id\": - \"I18nLanguageSnippet\",\n \"description\": \"Basic details about an - i18n language, such as language code and human-readable name.\",\n \"properties\": - {\n \"hl\": {\n \"type\": \"string\",\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\"\n },\n - \ \"name\": {\n \"type\": \"string\",\n \"description\": - \"The human-readable name of the language in the language itself.\"\n }\n - \ }\n },\n \"VideoAbuseReportReasonListResponse\": {\n \"id\": - \"VideoAbuseReportReasonListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The `visitorId` identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"description\": \"A list of valid abuse reasons that are used - with `video.ReportAbuse`.\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ActivityContentDetailsUpload\",\n - \ \"type\": \"object\",\n \"description\": \"Information about the - uploaded video.\"\n },\n \"VideoSnippet\": {\n \"id\": \"VideoSnippet\",\n - \ \"description\": \"Basic details about a video, including title, description, - uploader, thumbnails and category.\",\n \"properties\": {\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The video's - title. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"localized\": {\n \"description\": \"Localized snippet selected - with the hl parameter. If no such localization exists, this field is populated - with the default snippet. (Read-only)\",\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"defaultLanguage\": {\n \"description\": \"The - language of the videos's default snippet.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"categoryId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube video category associated with the video.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The video's - description. @mutable youtube.videos.insert youtube.videos.update\"\n },\n - \ \"defaultAudioLanguage\": {\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the video was uploaded.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that the video was uploaded - to.\"\n },\n \"tags\": {\n \"type\": \"array\",\n \"description\": - \"A list of keyword tags associated with the video. Tags may contain spaces.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"channelTitle\": {\n \"description\": \"Channel title for - the channel that the video belongs to.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"type\": \"object\",\n \"properties\": {\n \"bitrateBps\": - {\n \"description\": \"The video stream's bitrate, in bits per second.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"codec\": {\n \"description\": \"The video codec that the - stream uses.\",\n \"type\": \"string\"\n },\n \"frameRateFps\": - {\n \"format\": \"double\",\n \"description\": \"The video - stream's frame rate, in frames per second.\",\n \"type\": \"number\"\n - \ },\n \"widthPixels\": {\n \"type\": \"integer\",\n - \ \"description\": \"The encoded video content's width in pixels. - You can calculate the video's encoding aspect ratio as width_pixels / height_pixels.\",\n - \ \"format\": \"uint32\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"heightPixels\": {\n \"description\": \"The encoded video - content's height in pixels.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"rotation\": {\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\"\n },\n \"aspectRatio\": {\n \"format\": - \"double\",\n \"description\": \"The video content's display aspect - ratio, which specifies the aspect ratio in which the video should be displayed.\",\n - \ \"type\": \"number\"\n }\n },\n \"description\": - \"Information about a video stream.\",\n \"id\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"ChannelConversionPing\": {\n \"properties\": {\n \"conversionUrl\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"context\": {\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ],\n \"type\": - \"string\",\n \"description\": \"Defines the context of the ping.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelConversionPing\",\n \"description\": \"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.\"\n },\n - \ \"SuperChatEvent\": {\n \"description\": \"A `__superChatEvent__` - resource represents a Super Chat purchase on a YouTube channel.\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#superChatEvent\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the Super Chat event.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\",\n - \ \"$ref\": \"SuperChatEventSnippet\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"SuperChatEvent\",\n \"type\": - \"object\"\n },\n \"CommentSnippet\": {\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a comment, such as its author - and text.\",\n \"id\": \"CommentSnippet\",\n \"properties\": {\n - \ \"likeCount\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The total number of likes this comment - has received.\"\n },\n \"textOriginal\": {\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comment refers to, if any.\",\n \"type\": - \"string\"\n },\n \"moderationStatus\": {\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ]\n },\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"parentId\": - {\n \"description\": \"The unique id of the parent comment, only - set for replies.\",\n \"type\": \"string\"\n },\n \"authorDisplayName\": - {\n \"description\": \"The name of the user who posted the comment.\",\n - \ \"type\": \"string\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"updatedAt\": - {\n \"description\": \"The date and time when the comment was last - updated.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"authorChannelUrl\": {\n \"description\": \"Link - to the author's YouTube channel, if any.\",\n \"type\": \"string\"\n - \ },\n \"canRate\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the current viewer can rate this comment.\"\n },\n \"viewerRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ],\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"description\": \"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.\"\n },\n \"textDisplay\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the comment was originally published.\",\n \"type\": - \"string\"\n }\n }\n },\n \"Member\": {\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#member\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#member\\\".\"\n },\n - \ \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n \"description\": - \"The snippet object contains basic details about the member.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"Member\",\n \"description\": \"A *member* resource represents - a member for a YouTube channel. A member provides recurring monetary support - to a creator and receives special benefits.\"\n },\n \"VideoSuggestions\": - {\n \"id\": \"VideoSuggestions\",\n \"type\": \"object\",\n \"properties\": - {\n \"editorSuggestions\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"Picture brightness levels seem off and could be corrected.\",\n - \ \"The video appears shaky and could be stabilized.\",\n \"Margins - (mattes) detected around the picture could be cropped.\",\n \"The - audio track appears silent and could be swapped with a better quality one.\"\n - \ ],\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ]\n },\n \"description\": \"A list of video - editing operations that might improve the video quality or playback experience - of the uploaded video.\"\n },\n \"processingErrors\": {\n \"description\": - \"A list of errors that will prevent YouTube from successfully processing - the uploaded video video. These errors indicate that, regardless of the video's - current processing status, eventually, that status will almost certainly be - failed.\",\n \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\"\n }\n },\n - \ \"processingWarnings\": {\n \"description\": \"A list of - reasons why YouTube may have difficulty transcoding the uploaded video or - that might result in an erroneous transcoding. These warnings are generated - before YouTube actually processes the uploaded video file. In addition, they - identify issues that are unlikely to cause the video processing to fail but - that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"enumDescriptions\": [\n \"Unrecognized file format, - transcoding is likely to fail.\",\n \"Unrecognized video codec, - transcoding is likely to fail.\",\n \"Unrecognized audio codec, - transcoding is likely to fail.\",\n \"Conflicting container and - stream resolutions.\",\n \"Edit lists are not currently supported.\",\n - \ \"Video codec that is known to cause problems was used.\",\n - \ \"Audio codec that is known to cause problems was used.\",\n - \ \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"type\": - \"string\"\n }\n },\n \"tagSuggestions\": {\n \"items\": - {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of keyword - tags that could be added to the video's metadata to increase the likelihood - that users will locate your video when searching or browsing on YouTube.\"\n - \ },\n \"processingHints\": {\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ],\n \"enumDescriptions\": [\n \"The MP4 - file is not streamable, this will slow down the processing. MOOV atom was - not found at the beginning of the file.\",\n \"Probably a better - quality version of the video exists. The video has wide screen aspect ratio, - but is not an HD video.\",\n \"Uploaded video is spherical video.\",\n - \ \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ]\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of suggestions that may improve YouTube's ability to process the video.\"\n - \ }\n },\n \"description\": \"Specifies suggestions on how - to improve video content, including encoding hints, tag suggestions, and editor - suggestions.\"\n },\n \"VideoProjectDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"DEPRECATED. b/157517979: This part was never populated - after it was added. However, it sees non-zero traffic because there is generated - client code in the wild that refers to it [1]. We keep this field and do NOT - remove it because otherwise V3 would return an error when this part gets requested - [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"properties\": {},\n \"id\": \"VideoProjectDetails\"\n },\n - \ \"VideoCategorySnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"assignable\": {\n \"type\": \"boolean\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The video category's title.\"\n },\n \"channelId\": {\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"description\": \"The YouTube channel - that created the video category.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Basic details about a video category, such - as its localized title.\",\n \"id\": \"VideoCategorySnippet\"\n },\n - \ \"ChannelSection\": {\n \"id\": \"ChannelSection\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"contentDetails\": {\n - \ \"$ref\": \"ChannelSectionContentDetails\",\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"targeting\": {\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n },\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"description\": \"Localizations - for different languages\",\n \"type\": \"object\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#channelSection\\\".\",\n \"default\": - \"youtube#channelSection\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ChannelBrandingSettings\": {\n \"id\": - \"ChannelBrandingSettings\",\n \"properties\": {\n \"image\": - {\n \"$ref\": \"ImageSettings\",\n \"description\": \"Branding - properties for branding images.\"\n },\n \"watch\": {\n \"description\": - \"Branding properties for the watch page.\",\n \"$ref\": \"WatchSettings\"\n - \ },\n \"hints\": {\n \"type\": \"array\",\n \"description\": - \"Additional experimental branding properties.\",\n \"items\": {\n - \ \"$ref\": \"PropertyValue\"\n }\n },\n \"channel\": - {\n \"description\": \"Branding properties for the channel view.\",\n - \ \"$ref\": \"ChannelSettings\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Branding properties of a YouTube channel.\"\n - \ },\n \"PlaylistItemSnippet\": {\n \"id\": \"PlaylistItemSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a playlist, including title, description and thumbnails. Basic details of - a YouTube Playlist item provided by the author. Next ID: 15\",\n \"properties\": - {\n \"videoOwnerChannelId\": {\n \"description\": \"Channel - id for the channel this video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the user that added the item to the - playlist.\",\n \"type\": \"string\"\n },\n \"position\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The item's title.\"\n },\n - \ \"videoOwnerChannelTitle\": {\n \"description\": \"Channel - title for the channel this video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the item was added to - the playlist.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the playlist item belongs to.\"\n },\n \"description\": - {\n \"description\": \"The item's description.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The id object contains information that can be - used to uniquely identify the resource that is included in the playlist as - the playlist item.\",\n \"$ref\": \"ResourceId\"\n },\n \"playlistId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist item. 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.\"\n }\n }\n },\n \"CommentThreadListResponse\": - {\n \"type\": \"object\",\n \"id\": \"CommentThreadListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"description\": \"A list of comment threads that - match the request criteria.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"default\": \"youtube#commentThreadListResponse\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"properties\": {\n \"label\": {\n \"description\": - \"The localized label for this abuse report secondary reason.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"LiveStreamSnippet\": {\n \"properties\": {\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The stream's - title. The value must be between 1 and 128 characters long.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is transmitting - the stream.\"\n },\n \"isDefaultStream\": {\n \"type\": - \"boolean\"\n },\n \"description\": {\n \"description\": - \"The stream's description. The value cannot be longer than 10000 characters.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the stream was created.\"\n }\n },\n - \ \"id\": \"LiveStreamSnippet\",\n \"type\": \"object\"\n },\n - \ \"CaptionListResponse\": {\n \"type\": \"object\",\n \"id\": - \"CaptionListResponse\",\n \"properties\": {\n \"items\": {\n - \ \"items\": {\n \"$ref\": \"Caption\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of captions - that match the request criteria.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#captionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n }\n },\n \"TestItemTestItemSnippet\": - {\n \"type\": \"object\",\n \"id\": \"TestItemTestItemSnippet\",\n - \ \"properties\": {}\n },\n \"VideoLiveStreamingDetails\": {\n \"properties\": - {\n \"activeLiveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the currently active live chat attached to this video. This field - is filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\"\n },\n \"actualStartTime\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The time that the broadcast actually started. This value will not be available - until the broadcast begins.\"\n },\n \"actualEndTime\": {\n - \ \"description\": \"The time that the broadcast actually ended. This - value will not be available until the broadcast is over.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"scheduledEndTime\": - {\n \"format\": \"date-time\",\n \"description\": \"The - time that the broadcast is scheduled to end. If the value is empty or the - property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"type\": \"string\"\n },\n \"concurrentViewers\": - {\n \"description\": \"The number of viewers currently watching the - broadcast. The property and its value will be present if the broadcast has - current viewers and the broadcast owner has not hidden the viewcount for the - video. Note that YouTube stops tracking the number of concurrent viewers for - a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"scheduledStartTime\": {\n \"description\": - \"The time that the broadcast is scheduled to begin.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n }\n },\n \"description\": - \"Details about the live streaming metadata.\",\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"type\": \"object\"\n },\n \"LanguageTag\": {\n \"id\": - \"LanguageTag\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoContentDetails\": - {\n \"properties\": {\n \"definition\": {\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\",\n \"enumDescriptions\": - [\n \"sd\",\n \"hd\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"sd\",\n \"hd\"\n - \ ]\n },\n \"hasCustomThumbnail\": {\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n },\n \"caption\": {\n \"description\": - \"The value of captions indicates whether the video has captions or not.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"true\",\n - \ \"false\"\n ]\n },\n \"duration\": {\n - \ \"description\": \"The length of the video. The tag value is an - ISO 8601 duration in the format PT#M#S, in which the letters PT indicate that - the value specifies a period of time, and the letters M and S refer to length - in minutes and seconds, respectively. The # characters preceding the M and - S letters are both integers that specify the number of minutes (or seconds) - of the video. For example, a value of PT15M51S indicates that the video is - 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n },\n - \ \"contentRating\": {\n \"description\": \"Specifies the ratings - that the video received under various rating schemes.\",\n \"$ref\": - \"ContentRating\"\n },\n \"licensedContent\": {\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\",\n \"type\": \"boolean\"\n },\n \"regionRestriction\": - {\n \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"projection\": - {\n \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"Specifies the projection format of the video.\"\n },\n \"countryRestriction\": - {\n \"description\": \"The countryRestriction object contains information - about the countries where a video is (or is not) viewable.\",\n \"$ref\": - \"AccessPolicy\"\n },\n \"dimension\": {\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Details about the content of a YouTube Video.\",\n \"id\": \"VideoContentDetails\",\n - \ \"type\": \"object\"\n },\n \"ActivitySnippet\": {\n \"properties\": - {\n \"channelTitle\": {\n \"description\": \"Channel title - for the channel responsible for this activity\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"enum\": [\n \"typeUnspecified\",\n - \ \"upload\",\n \"like\",\n \"favorite\",\n - \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n - \ \"recommendation\",\n \"bulletin\",\n \"social\",\n - \ \"channelItem\",\n \"promotedItem\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The type of - activity that the resource describes.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the resource primarily associated - with the activity. @mutable youtube.activities.insert\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel associated with - the activity.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the video was uploaded.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"groupId\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - title of the resource primarily associated with the activity.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ActivitySnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about an activity, including - title, description, thumbnails, activity type and group. Next ID: 12\"\n },\n - \ \"CommentSnippetAuthorChannelId\": {\n \"type\": \"object\",\n \"description\": - \"The id of the author's YouTube channel, if any.\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"AccessPolicy\": {\n \"type\": \"object\",\n - \ \"id\": \"AccessPolicy\",\n \"properties\": {\n \"exception\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of region codes that identify countries - where the default policy do not apply.\",\n \"type\": \"array\"\n - \ },\n \"allowed\": {\n \"type\": \"boolean\",\n \"description\": - \"The value of allowed indicates whether the access to the policy is allowed - or denied by default.\"\n }\n },\n \"description\": \"Rights - management policy for YouTube resources.\"\n },\n \"PlaylistListResponse\": - {\n \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlistListResponse\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of playlists that match the request criteria\",\n \"items\": - {\n \"$ref\": \"Playlist\"\n }\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"PlaylistListResponse\",\n - \ \"type\": \"object\"\n },\n \"PlaylistItem\": {\n \"properties\": - {\n \"contentDetails\": {\n \"description\": \"The contentDetails - object is included in the resource if the included item is a YouTube video. - The object contains additional information about the video.\",\n \"$ref\": - \"PlaylistItemContentDetails\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlistItem\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the playlist item's privacy status.\",\n - \ \"$ref\": \"PlaylistItemStatus\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the playlist item.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"PlaylistItem\",\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\"\n },\n - \ \"ActivityContentDetails\": {\n \"description\": \"Details about - the content of an activity: the video that was shared, the channel that was - subscribed to, etc.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetails\",\n - \ \"properties\": {\n \"subscription\": {\n \"description\": - \"The subscription object contains information about a channel that a user - subscribed to. This property is only present if the snippet.type is subscription.\",\n - \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"like\": - {\n \"$ref\": \"ActivityContentDetailsLike\",\n \"description\": - \"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.\"\n - \ },\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n },\n \"promotedItem\": {\n \"$ref\": - \"ActivityContentDetailsPromotedItem\",\n \"description\": \"The - promotedItem object contains details about a resource which is being promoted. - This property is only present if the snippet.type is promotedItem.\"\n },\n - \ \"channelItem\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsChannelItem\"\n },\n \"playlistItem\": - {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"The playlistItem object contains information about a new playlist item. - This property is only present if the snippet.type is playlistItem.\"\n },\n - \ \"comment\": {\n \"description\": \"The comment object contains - information about a resource that received a comment. This property is only - present if the snippet.type is comment.\",\n \"$ref\": \"ActivityContentDetailsComment\"\n - \ },\n \"social\": {\n \"description\": \"The social - object contains details about a social network post. This property is only - present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"upload\": {\n \"description\": \"The upload - object contains information about the uploaded video. This property is only - present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\"\n },\n \"favorite\": {\n \"$ref\": - \"ActivityContentDetailsFavorite\",\n \"description\": \"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.\"\n }\n - \ }\n },\n \"VideoPlayer\": {\n \"description\": \"Player to - be used for a video playback.\",\n \"properties\": {\n \"embedWidth\": - {\n \"type\": \"string\",\n \"description\": \"The embed - width\",\n \"format\": \"int64\"\n },\n \"embedHeight\": - {\n \"type\": \"string\",\n \"format\": \"int64\"\n },\n - \ \"embedHtml\": {\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the video.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoPlayer\",\n \"type\": - \"object\"\n },\n \"VideoGetRatingResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoGetRatingResponse\",\n \"properties\": {\n \"items\": - {\n \"description\": \"A list of ratings that match the request criteria.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoRating\"\n }\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoGetRatingResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n }\n - \ },\n \"VideoTopicDetails\": {\n \"properties\": {\n \"topicCategories\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of Wikipedia - URLs that provide a high-level description of the video's content.\"\n },\n - \ \"relevantTopicIds\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Similar to topic_id, - except that these topics are merely relevant to the video. These are topics - that may be mentioned in, or appear in the video. You can retrieve information - about each topic using Freebase Topic API.\",\n \"type\": \"array\"\n - \ },\n \"topicIds\": {\n \"type\": \"array\",\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"id\": \"VideoTopicDetails\",\n \"type\": - \"object\",\n \"description\": \"Freebase topic information related to - the video.\"\n },\n \"ChannelSectionSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"style\": {\n \"description\": - \"The style of the channel section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that published the channel section.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel section's title for - multiple_playlists and multiple_channels.\"\n },\n \"localized\": - {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": - \"Localized title, read-only.\"\n },\n \"type\": {\n \"description\": - \"The type of the channel section.\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"position\": {\n \"description\": \"The position of the - channel section in the channel.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the channel section's default title and description.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ChannelSectionSnippet\",\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\"\n },\n \"MembershipsDetails\": {\n \"id\": - \"MembershipsDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"accessibleLevels\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\"\n - \ },\n \"membershipsDuration\": {\n \"description\": - \"Data about memberships duration without taking into consideration pricing - levels.\",\n \"$ref\": \"MembershipsDuration\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"description\": \"Display name for the highest level that the - user has access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"highestAccessibleLevel\": {\n \"type\": \"string\",\n \"description\": - \"Id of the highest level that the user has access to at the moment.\"\n },\n - \ \"membershipsDurationAtLevels\": {\n \"type\": \"array\",\n - \ \"description\": \"Data about memberships duration on particular - pricing levels.\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ }\n }\n }\n },\n \"Video\": {\n \"id\": \"Video\",\n - \ \"properties\": {\n \"projectDetails\": {\n \"$ref\": - \"VideoProjectDetails\",\n \"description\": \"The projectDetails - object contains information about the project specific video metadata. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"player\": {\n \"description\": \"The player - object contains information that you would use to play the video in an embedded - player.\",\n \"$ref\": \"VideoPlayer\"\n },\n \"localizations\": - {\n \"description\": \"The localizations object contains localized - versions of the basic details about the video, such as its title and description.\",\n - \ \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"type\": \"object\"\n },\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"suggestions\": - {\n \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoSuggestions\"\n },\n \"fileDetails\": - {\n \"description\": \"The fileDetails object encapsulates information - about the video file that was uploaded to YouTube, including the file's resolution, - duration, audio and video codecs, stream bitrates, and more. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n - \ },\n \"recordingDetails\": {\n \"description\": \"The - recordingDetails object encapsulates information about the location, date - and address where the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"topicDetails\": {\n \"description\": \"The - topicDetails object encapsulates information about Freebase topics associated - with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n - \ \"ageGating\": {\n \"description\": \"Age restriction details - related to a video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoAgeGating\"\n },\n \"monetizationDetails\": - {\n \"description\": \"The monetizationDetails object encapsulates - information about the monetization status of the video.\",\n \"$ref\": - \"VideoMonetizationDetails\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the video's uploading, processing, - and privacy statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#video\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"type\": \"string\"\n },\n \"processingDetails\": - {\n \"description\": \"The processingDetails object encapsulates - information about YouTube's progress in processing the uploaded video file. - The properties in the object identify the current processing status and an - estimate of the time remaining until YouTube finishes processing the video. - This part also indicates whether different types of data or content, such - as file details or thumbnail images, are available for the video. The processingProgress - object is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoProcessingDetails\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video, such as its title, - description, and category.\",\n \"$ref\": \"VideoSnippet\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the video.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n }\n },\n \"statistics\": {\n \"$ref\": - \"VideoStatistics\",\n \"description\": \"The statistics object contains - statistics about the video.\"\n },\n \"contentDetails\": {\n - \ \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\",\n \"$ref\": \"VideoContentDetails\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"A *video* resource represents - a YouTube video.\"\n },\n \"LiveBroadcastStatistics\": {\n \"properties\": - {\n \"totalChatCount\": {\n \"description\": \"The total number - of live chat messages currently on the broadcast. The property and its value - will be present if the broadcast is public, has the live chat feature enabled, - and has at least one message. Note that this field will not be filled after - the broadcast ends. So this property would not identify the number of chat - messages for an archived video of a completed live broadcast.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"concurrentViewers\": - {\n \"type\": \"string\",\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"format\": \"uint64\"\n - \ }\n },\n \"id\": \"LiveBroadcastStatistics\",\n \"description\": - \"Statistics about the live broadcast. These represent a snapshot of the values - at the time of the request. Statistics are only returned for live broadcasts.\",\n - \ \"type\": \"object\"\n },\n \"SuperChatEventSnippet\": {\n \"id\": - \"SuperChatEventSnippet\",\n \"properties\": {\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel id where the event occurred.\"\n - \ },\n \"supporterDetails\": {\n \"description\": \"Details - about the supporter.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n - \ \"messageType\": {\n \"type\": \"integer\",\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\",\n \"format\": \"uint32\"\n },\n - \ \"isSuperStickerEvent\": {\n \"description\": \"True if this - event is a Super Sticker event.\",\n \"type\": \"boolean\"\n },\n - \ \"commentText\": {\n \"type\": \"string\",\n \"description\": - \"The text contents of the comment left by the user.\"\n },\n \"displayString\": - {\n \"description\": \"A rendered string that displays the purchase - amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the - given language.\",\n \"type\": \"string\"\n },\n \"createdAt\": - {\n \"description\": \"The date and time when the event occurred.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The purchase amount, in micros of - the purchase currency. e.g., 1 is represented as 1000000.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ThumbnailSetResponse\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of thumbnails.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#thumbnailSetResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ThumbnailSetResponse\",\n - \ \"type\": \"object\"\n },\n \"MembershipsLevelListResponse\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsLevelListResponse\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"MembershipsLevel\"\n },\n \"description\": \"A list of - pricing levels offered by a creator to the fans.\",\n \"type\": \"array\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#membershipsLevelListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n }\n - \ },\n \"CdnSettings\": {\n \"description\": \"Brief description - of the live stream cdn settings.\",\n \"id\": \"CdnSettings\",\n \"properties\": - {\n \"ingestionType\": {\n \"description\": \" The method - or protocol used to transmit the video stream.\",\n \"enum\": [\n - \ \"rtmp\",\n \"dash\",\n \"webrtc\",\n \"hls\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"frameRate\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The frame rate - of the inbound video data.\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ]\n },\n - \ \"ingestionInfo\": {\n \"$ref\": \"IngestionInfo\",\n \"description\": - \"The ingestionInfo object contains information that YouTube provides that - you need to transmit your RTMP or HTTP stream to YouTube.\"\n },\n - \ \"resolution\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The resolution of the inbound video data.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"240p\",\n \"360p\",\n \"480p\",\n - \ \"720p\",\n \"1080p\",\n \"1440p\",\n \"2160p\",\n - \ \"variable\"\n ]\n },\n \"format\": {\n - \ \"type\": \"string\",\n \"description\": \"The format of - the video stream that you are sending to Youtube. \",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelListResponse\": - {\n \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Channel\"\n },\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"default\": \"youtube#channelListResponse\"\n }\n },\n - \ \"id\": \"ChannelListResponse\",\n \"type\": \"object\"\n },\n - \ \"LiveBroadcast\": {\n \"id\": \"LiveBroadcast\",\n \"description\": - \"A *liveBroadcast* resource represents an event that will be streamed, via - live video, on YouTube.\",\n \"type\": \"object\",\n \"properties\": - {\n \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information about the event's video content, such as whether - the content can be shown in an embedded video player or if it will be archived - and therefore available for viewing after the event has concluded.\",\n \"$ref\": - \"LiveBroadcastContentDetails\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"default\": \"youtube#liveBroadcast\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"LiveBroadcastSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the event, including its title, description, start time, and end time.\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the broadcast.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"status\": {\n \"description\": - \"The status object contains information about the event's status.\",\n \"$ref\": - \"LiveBroadcastStatus\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n - \ }\n }\n },\n \"MembershipsDuration\": {\n \"type\": - \"object\",\n \"id\": \"MembershipsDuration\",\n \"properties\": - {\n \"memberSince\": {\n \"description\": \"The date and time - when the user became a continuous member across all levels.\",\n \"type\": - \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"description\": \"The cumulative time the user has - been a member across all levels in complete months (the time is rounded down - to the nearest integer).\",\n \"format\": \"int32\"\n }\n - \ }\n },\n \"PlaylistItemContentDetails\": {\n \"id\": \"PlaylistItemContentDetails\",\n - \ \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - a video. To retrieve the video resource, set the id query parameter to this - value in your API request.\"\n },\n \"videoPublishedAt\": {\n - \ \"description\": \"The date and time that the video was published - to YouTube.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"endAt\": {\n \"description\": \"The - time, measured in seconds from the start of the video, when the video should - stop playing. (The playlist owner can specify the times when the video should - start and stop playing when the video is played in the context of the playlist.) - By default, assume that the video.endTime is the end of the video.\",\n \"type\": - \"string\"\n },\n \"note\": {\n \"description\": \"A - user-generated note for this item.\",\n \"type\": \"string\"\n },\n - \ \"startAt\": {\n \"description\": \"The time, measured in - seconds from the start of the video, when the video should start playing. - (The playlist owner can specify the times when the video should start and - stop playing when the video is played in the context of the playlist.) The - default value is 0.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"Playlist\": {\n \"type\": \"object\",\n - \ \"id\": \"Playlist\",\n \"description\": \"A *playlist* resource - represents a YouTube playlist. A playlist is a collection of videos that can - be viewed sequentially and shared with other users. A playlist can contain - up to 200 videos, and YouTube does not limit the number of playlists that - each user creates. By default, playlists are publicly visible to other users, - but playlists can be public or private. YouTube also uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n - \ \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\",\n \"$ref\": \"PlaylistSnippet\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\",\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n }\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"default\": \"youtube#playlist\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the playlist.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the playlist - in an embedded player.\",\n \"$ref\": \"PlaylistPlayer\"\n },\n - \ \"status\": {\n \"$ref\": \"PlaylistStatus\",\n \"description\": - \"The status object contains status information for the playlist.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object contains information like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n - \ }\n }\n },\n \"VideoRecordingDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"recordingDate\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the video was recorded.\"\n },\n \"locationDescription\": - {\n \"description\": \"The text description of the location where - the video was recorded.\",\n \"type\": \"string\"\n },\n \"location\": - {\n \"description\": \"The geolocation information associated with - the video.\",\n \"$ref\": \"GeoPoint\"\n }\n },\n \"id\": - \"VideoRecordingDetails\",\n \"description\": \"Recording information - associated with the video.\"\n },\n \"ChannelSectionListResponse\": - {\n \"id\": \"ChannelSectionListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#channelSectionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"description\": \"A list of ChannelSections that - match the request criteria.\"\n }\n }\n },\n \"ActivityContentDetailsBulletin\": - {\n \"description\": \"Details about a channel bulletin post.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource associated with a - bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsBulletin\"\n },\n \"Thumbnail\": {\n \"id\": - \"Thumbnail\",\n \"description\": \"A thumbnail is an image representing - a YouTube resource.\",\n \"properties\": {\n \"height\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"(Optional) Height of the thumbnail image.\"\n },\n \"url\": - {\n \"type\": \"string\",\n \"description\": \"The thumbnail - image's URL.\"\n },\n \"width\": {\n \"type\": \"integer\",\n - \ \"description\": \"(Optional) Width of the thumbnail image.\",\n - \ \"format\": \"uint32\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"InvideoBranding\": {\n \"type\": \"object\",\n \"properties\": - {\n \"position\": {\n \"description\": \"The spatial position - within the video where the branding watermark will be displayed.\",\n \"$ref\": - \"InvideoPosition\"\n },\n \"targetChannelId\": {\n \"description\": - \"The channel to which this branding links. If not present it defaults to - the current channel.\",\n \"type\": \"string\"\n },\n \"imageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The url of - the uploaded image. Only used in apiary to api communication.\"\n },\n - \ \"imageBytes\": {\n \"description\": \"The bytes the uploaded - image. Only used in api to youtube communication.\",\n \"type\": - \"string\",\n \"format\": \"byte\"\n },\n \"timing\": - {\n \"description\": \"The temporal position within the video where - watermark will be displayed.\",\n \"$ref\": \"InvideoTiming\"\n }\n - \ },\n \"id\": \"InvideoBranding\",\n \"description\": \"LINT.IfChange - Describes an invideo branding.\"\n },\n \"LiveStreamHealthStatus\": - {\n \"type\": \"object\",\n \"properties\": {\n \"lastUpdateTimeSeconds\": - {\n \"description\": \"The last time this status was updated (in - seconds)\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"configurationIssues\": {\n \"description\": - \"The configurations issues on this stream\",\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ }\n },\n \"status\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The status code of this stream\",\n \"enum\": [\n \"good\",\n - \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n - \ ]\n }\n },\n \"id\": \"LiveStreamHealthStatus\"\n - \ },\n \"LevelDetails\": {\n \"id\": \"LevelDetails\",\n \"properties\": - {\n \"displayName\": {\n \"description\": \"The name that - should be used when referring to this level.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessage\": - {\n \"id\": \"LiveChatMessage\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the message.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n - \ \"default\": \"youtube#liveChatMessage\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"authorDetails\": {\n \"$ref\": - \"LiveChatMessageAuthorDetails\",\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - *liveChatMessage* resource represents a chat message in a YouTube Live Chat.\"\n - \ },\n \"LiveStream\": {\n \"type\": \"object\",\n \"id\": - \"LiveStream\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"LiveStreamSnippet\",\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\"\n - \ },\n \"cdn\": {\n \"description\": \"The cdn object - defines the live stream's content delivery network (CDN) settings. These settings - provide details about the manner in which you stream your content to YouTube.\",\n - \ \"$ref\": \"CdnSettings\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n \"default\": - \"youtube#liveStream\"\n },\n \"contentDetails\": {\n \"description\": - \"The content_details object contains information about the stream, including - the closed captions ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the stream.\"\n }\n },\n \"description\": - \"A live stream describes a live ingestion point.\"\n },\n \"PlaylistSnippet\": - {\n \"id\": \"PlaylistSnippet\",\n \"properties\": {\n \"title\": - {\n \"description\": \"The playlist's title.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the playlist.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the playlist was created.\",\n \"format\": \"date-time\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The playlist's description.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"thumbnailVideoId\": - {\n \"type\": \"string\",\n \"description\": \"Note: if - the playlist has a custom thumbnail, this field will not be populated. The - video id selected by the user that will be used as the thumbnail of this playlist. - This field defaults to the first publicly viewable video in the playlist, - if: 1. The user has never selected a video to be the thumbnail of the playlist. - 2. The user selects a video to be the thumbnail, and then removes that video - from the playlist. 3. The user selects a non-owned video to be the thumbnail, - but that video becomes private, or gets deleted.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the playlist's default title and description.\"\n },\n \"tags\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Keyword tags associated - with the playlist.\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"The channel title of the channel - that the video belongs to.\"\n },\n \"localized\": {\n \"$ref\": - \"PlaylistLocalization\",\n \"description\": \"Localized title and - description, read-only.\"\n }\n },\n \"description\": \"Basic - details about a playlist, including title, description and thumbnails.\",\n - \ \"type\": \"object\"\n },\n \"PageInfo\": {\n \"properties\": - {\n \"totalResults\": {\n \"format\": \"int32\",\n \"type\": - \"integer\",\n \"description\": \"The total number of results in - the result set.\"\n },\n \"resultsPerPage\": {\n \"type\": - \"integer\",\n \"description\": \"The number of results included - in the API response.\",\n \"format\": \"int32\"\n }\n },\n - \ \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\",\n \"type\": \"object\",\n \"id\": \"PageInfo\"\n },\n - \ \"ChannelSectionContentDetails\": {\n \"description\": \"Details - about a channelsection, including playlists and channels.\",\n \"properties\": - {\n \"channels\": {\n \"description\": \"The channel ids for - type multiple_channels.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"playlists\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The playlist ids for - type single_playlist and multiple_playlists. For singlePlaylist, only one - playlistId is allowed.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelSectionContentDetails\"\n },\n \"TokenPagination\": - {\n \"description\": \"Stub token pagination template to suppress results.\",\n - \ \"id\": \"TokenPagination\",\n \"properties\": {},\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsChannelItem\": {\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\"\n }\n },\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"Details about a resource which was added to a channel.\",\n - \ \"type\": \"object\"\n },\n \"Subscription\": {\n \"type\": - \"object\",\n \"properties\": {\n \"subscriberSnippet\": {\n \"$ref\": - \"SubscriptionSubscriberSnippet\",\n \"description\": \"The subscriberSnippet - object contains basic details about the subscriber.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the subscription, including its title and the channel that the user - subscribed to.\",\n \"$ref\": \"SubscriptionSnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#subscription\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"SubscriptionContentDetails\",\n - \ \"description\": \"The contentDetails object contains basic statistics - about the subscription.\"\n }\n },\n \"description\": \"A - *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\",\n \"id\": \"Subscription\"\n - \ },\n \"CommentThreadSnippet\": {\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comments refer to, if any. No video_id implies a channel discussion - comment.\"\n },\n \"isPublic\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the thread (and therefore all its comments) - is visible to all YouTube users.\"\n },\n \"channelId\": {\n - \ \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"topLevelComment\": {\n \"description\": - \"The top level comment of this thread.\",\n \"$ref\": \"Comment\"\n - \ },\n \"totalReplyCount\": {\n \"description\": \"The - total number of replies (not including the top level comment).\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"canReply\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"CommentThreadSnippet\",\n \"description\": - \"Basic details about a comment thread.\"\n },\n \"ChannelBannerResource\": - {\n \"id\": \"ChannelBannerResource\",\n \"properties\": {\n \"url\": - {\n \"type\": \"string\",\n \"description\": \"The URL of - this banner image.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#channelBannerResource\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"A channel banner returned as the response - to a channel_banner.insert call.\",\n \"type\": \"object\"\n },\n - \ \"VideoSuggestionsTagSuggestion\": {\n \"id\": \"VideoSuggestionsTagSuggestion\",\n - \ \"type\": \"object\",\n \"description\": \"A single tag suggestion - with it's relevance information.\",\n \"properties\": {\n \"tag\": - {\n \"description\": \"The keyword tag suggested for the video.\",\n - \ \"type\": \"string\"\n },\n \"categoryRestricts\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A set of video - categories for which the tag is relevant. You can use this information to - display appropriate tag suggestions based on the video category that the video - uploader associates with the video. By default, tag suggestions are relevant - for all categories if there are no restricts defined for the keyword.\"\n - \ }\n }\n },\n \"VideoListResponse\": {\n \"properties\": - {\n \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Video\"\n }\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"VideoListResponse\"\n },\n - \ \"TestItem\": {\n \"id\": \"TestItem\",\n \"properties\": {\n - \ \"gaia\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level at which the viever is a member. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"userComment\": {\n \"description\": \"The comment added - by the member to this Member Milestone Chat. This field is empty for messages - without a comment from the member.\",\n \"type\": \"string\"\n },\n - \ \"memberMonth\": {\n \"type\": \"integer\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"format\": \"uint32\"\n - \ }\n },\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"type\": \"object\"\n },\n \"I18nLanguage\": {\n \"type\": - \"object\",\n \"id\": \"I18nLanguage\",\n \"description\": \"An - *i18nLanguage* resource identifies a UI language currently supported by YouTube.\",\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the i18n language.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguage\\\".\",\n \"default\": - \"youtube#i18nLanguage\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the i18n language, such as language code and human-readable - name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n }\n }\n - \ },\n \"LiveChatUserBannedMessageDetails\": {\n \"properties\": - {\n \"banType\": {\n \"description\": \"The type of ban.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ]\n },\n \"bannedUserDetails\": - {\n \"description\": \"The details of the user that was banned.\",\n - \ \"$ref\": \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The duration of the ban. This property is only present if the banType is - temporary.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatUserBannedMessageDetails\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageAuthorDetails\",\n - \ \"properties\": {\n \"profileImageUrl\": {\n \"description\": - \"The channels's avatar URL.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The YouTube channel - ID.\",\n \"type\": \"string\"\n },\n \"isChatModerator\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is a moderator of the live chat.\"\n },\n \"displayName\": - {\n \"description\": \"The channel's display name.\",\n \"type\": - \"string\"\n },\n \"isVerified\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author's identity has been verified - by YouTube.\"\n },\n \"isChatSponsor\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a sponsor - of the live chat.\"\n },\n \"isChatOwner\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is the owner - of the live chat.\"\n },\n \"channelUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channel's URL.\"\n }\n - \ }\n },\n \"LiveStreamListResponse\": {\n \"properties\": - {\n \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"items\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveStream\"\n },\n \"description\": \"A list of live - streams that match the request criteria.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStreamListResponse\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveStreamListResponse\"\n },\n \"Entity\": {\n \"type\": \"object\",\n - \ \"id\": \"Entity\",\n \"properties\": {\n \"typeId\": {\n - \ \"type\": \"string\"\n },\n \"url\": {\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveChatMessageListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatMessageListResponse\",\n \"type\": - \"string\"\n },\n \"offlineAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the underlying stream - went offline.\",\n \"format\": \"date-time\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"type\": \"array\"\n },\n - \ \"pollingIntervalMillis\": {\n \"description\": \"The amount - of time the client should wait before polling again.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n }\n },\n \"id\": - \"LiveChatMessageListResponse\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"isUpgrade\": {\n \"description\": \"If the viewer just - had upgraded from a lower level. For viewers that were not members at the - time of purchase, this field is false.\",\n \"type\": \"boolean\"\n - \ }\n }\n },\n \"SubscriptionListResponse\": {\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Subscription\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of subscriptions that match the request criteria.\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"eventId\": {\n - \ \"type\": \"string\",\n \"description\": \"Serialized EventId - of the request which produced this response.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"SubscriptionListResponse\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"type\": \"object\",\n \"description\": \"Information about - a channel that a user subscribed to.\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the resource that the user subscribed to.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"id\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"SubscriptionSnippet\": {\n \"id\": \"SubscriptionSnippet\",\n - \ \"description\": \"Basic details about a subscription, including title, - description and thumbnails of the subscribed item.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"description\": \"The id object contains - information about the channel that the user subscribed to.\",\n \"$ref\": - \"ResourceId\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the video. 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.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the subscription was created.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The subscription's - title.\"\n },\n \"description\": {\n \"description\": - \"The subscription's details.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscriber's channel.\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the subscription - belongs to.\"\n }\n }\n },\n \"ChannelProfileDetails\": - {\n \"properties\": {\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"profileImageUrl\": {\n \"description\": \"The channels's - avatar URL.\",\n \"type\": \"string\"\n },\n \"displayName\": - {\n \"description\": \"The channel's display name.\",\n \"type\": - \"string\"\n },\n \"channelUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's URL.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelProfileDetails\"\n },\n \"CaptionSnippet\": - {\n \"description\": \"Basic details about a caption track, such as its - language and name.\",\n \"properties\": {\n \"audioTrackType\": - {\n \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of audio track associated with the caption track.\"\n },\n - \ \"status\": {\n \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ],\n \"description\": \"The caption - track's status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"failureReason\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The reason that - YouTube failed to process the caption track. This property is only present - if the state property's value is failed.\",\n \"enum\": [\n \"unknownFormat\",\n - \ \"unsupportedFormat\",\n \"processingFailed\"\n ]\n - \ },\n \"isLarge\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\"\n },\n \"isDraft\": {\n \"type\": - \"boolean\",\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\"\n - \ },\n \"name\": {\n \"type\": \"string\",\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n }\n - \ },\n \"lastUpdated\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the caption track was - last updated.\",\n \"format\": \"date-time\"\n },\n \"isEasyReader\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"trackKind\": {\n \"type\": \"string\",\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"description\": \"The caption track's type.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"isCC\": {\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\",\n \"type\": \"boolean\"\n - \ },\n \"language\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The language of the caption track. The property - value is a BCP-47 language tag.\",\n \"type\": \"string\"\n },\n - \ \"isAutoSynced\": {\n \"description\": \"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.\",\n - \ \"type\": \"boolean\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video associated with - the caption track. @mutable youtube.captions.insert\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"CaptionSnippet\"\n },\n \"ChannelTopicDetails\": - {\n \"description\": \"Freebase topic information related to the channel.\",\n - \ \"id\": \"ChannelTopicDetails\",\n \"properties\": {\n \"topicCategories\": - {\n \"description\": \"A list of Wikipedia URLs that describe the - channel's content.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicIds\": - {\n \"type\": \"array\",\n \"description\": \"A list of - Freebase topic IDs associated with the channel. You can retrieve information - about each topic using the Freebase Topic API.\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelStatus\": {\n \"id\": \"ChannelStatus\",\n - \ \"properties\": {\n \"selfDeclaredMadeForKids\": {\n \"type\": - \"boolean\"\n },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Privacy status - of the channel.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"isLinked\": {\n - \ \"description\": \"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.\",\n \"type\": \"boolean\"\n },\n \"longUploadsStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"type\": \"string\",\n \"enum\": - [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ]\n }\n },\n \"type\": - \"object\",\n \"description\": \"JSON template for the status part of - a channel.\"\n },\n \"VideoStatistics\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"favoriteCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of users who currently have the video marked as a favorite video.\"\n - \ },\n \"likeCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of users who have indicated that they liked the video by giving - it a positive rating.\",\n \"format\": \"uint64\"\n },\n \"commentCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of comments for the video.\",\n \"type\": \"string\"\n },\n - \ \"dislikeCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of users who have indicated - that they disliked the video by giving it a negative rating.\"\n },\n - \ \"viewCount\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of times the video has - been viewed.\"\n }\n },\n \"id\": \"VideoStatistics\",\n - \ \"description\": \"Statistics about the video, such as the number of - times the video was viewed or liked.\"\n },\n \"InvideoTiming\": {\n - \ \"properties\": {\n \"offsetMs\": {\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"type\": - {\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Describes a timing type. If the value is offsetFromStart, then the offsetMs - field represents an offset from the start of the video. If the value is offsetFromEnd, - then the offsetMs field represents an offset from the end of the video.\"\n - \ },\n \"durationMs\": {\n \"description\": \"Defines - the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Describes a temporal position of a visual widget - inside a video.\",\n \"id\": \"InvideoTiming\"\n },\n \"ThirdPartyLinkStatus\": - {\n \"description\": \"The third-party link status object contains information - about the status of the link.\",\n \"type\": \"object\",\n \"properties\": - {\n \"linkStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ThirdPartyLinkStatus\"\n },\n \"Activity\": - {\n \"description\": \"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.\",\n \"type\": \"object\",\n \"id\": - \"Activity\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the activity.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"ActivityContentDetails\",\n \"description\": \"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.\"\n },\n \"snippet\": - {\n \"$ref\": \"ActivitySnippet\",\n \"description\": \"The - snippet object contains basic details about the activity, including the activity's - type and group ID.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#activity\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LiveChatMessageSnippet\": - {\n \"description\": \"Next ID: 33\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"userBannedDetails\": {\n \"$ref\": - \"LiveChatUserBannedMessageDetails\"\n },\n \"superChatDetails\": - {\n \"description\": \"Details about the Super Chat event, this is - only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n - \ },\n \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"description\": \"The type of message, this will always be present, - it determines the contents of the message as well as which fields will be - present.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"superStickerDetails\": {\n \"description\": - \"Details about the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"displayMessage\": - {\n \"type\": \"string\",\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"membershipGiftingDetails\": {\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\",\n \"$ref\": \"LiveChatMembershipGiftingDetails\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the message was orignally published.\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"description\": \"Details about the Gift Membership Received - event, this is only set if the type is 'giftMembershipReceivedEvent'.\",\n - \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n - \ \"memberMilestoneChatDetails\": {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n - \ \"description\": \"Details about the Member Milestone Chat event, - this is only set if the type is 'memberMilestoneChatEvent'.\"\n },\n - \ \"newSponsorDetails\": {\n \"description\": \"Details about - the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. - Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n - \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"authorChannelId\": - {\n \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\",\n \"type\": \"string\"\n },\n \"hasDisplayContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the message has display content that should be displayed to users.\"\n },\n - \ \"liveChatId\": {\n \"type\": \"string\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"fanFundingEventDetails\": - {\n \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n - \ }\n },\n \"id\": \"LiveChatMessageSnippet\"\n },\n \"VideoAbuseReportReason\": - {\n \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - this abuse report reason.\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoAbuseReportReason\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the abuse report reason.\",\n \"$ref\": - \"VideoAbuseReportReasonSnippet\"\n }\n },\n \"id\": \"VideoAbuseReportReason\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"id\": \"LiveStreamConfigurationIssue\",\n \"properties\": - {\n \"reason\": {\n \"type\": \"string\",\n \"description\": - \"The short-form reason for this issue.\"\n },\n \"description\": - {\n \"description\": \"The long-form description of the issue and - how to resolve it.\",\n \"type\": \"string\"\n },\n \"severity\": - {\n \"enum\": [\n \"info\",\n \"warning\",\n - \ \"error\"\n ],\n \"type\": \"string\",\n \"description\": - \"How severe this issue is to the stream.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"type\": {\n \"description\": \"The kind of error happening.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ]\n }\n },\n \"type\": \"object\"\n },\n \"MembershipsLevel\": - {\n \"id\": \"MembershipsLevel\",\n \"description\": \"A *membershipsLevel* - resource represents an offer made by YouTube creators for their fans. Users - can become members of the channel by joining one of the available levels. - They will provide recurring monetary support and receives special benefits.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the memberships level.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#membershipsLevel\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"ChannelStatistics\": - {\n \"id\": \"ChannelStatistics\",\n \"properties\": {\n \"subscriberCount\": - {\n \"description\": \"The number of subscribers that the channel - has.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ },\n \"commentCount\": {\n \"description\": \"The - number of comments for the channel.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"viewCount\": {\n \"description\": - \"The number of times the channel has been viewed.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"hiddenSubscriberCount\": - {\n \"description\": \"Whether or not the number of subscribers is - shown for this user.\",\n \"type\": \"boolean\"\n },\n \"videoCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of videos uploaded to the channel.\"\n }\n },\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\",\n \"type\": \"object\"\n },\n \"LiveChatSuperStickerDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatSuperStickerDetails\",\n - \ \"properties\": {\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"tier\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n },\n \"amountMicros\": {\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"superStickerMetadata\": {\n \"$ref\": \"SuperStickerMetadata\",\n - \ \"description\": \"Information about the Super Sticker.\"\n }\n - \ }\n },\n \"PlaylistItemListResponse\": {\n \"properties\": - {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"items\": {\n \"description\": - \"A list of playlist items that match the request criteria.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n - \ }\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"etag\": {\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"id\": \"PlaylistItemListResponse\",\n \"type\": - \"object\"\n },\n \"IngestionInfo\": {\n \"type\": \"object\",\n - \ \"id\": \"IngestionInfo\",\n \"properties\": {\n \"rtmpsBackupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of backupIngestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"streamName\": - {\n \"description\": \"The stream name that YouTube assigns to the - video stream.\",\n \"type\": \"string\"\n },\n \"ingestionAddress\": - {\n \"description\": \"The primary ingestion URL that you should - use to stream video to YouTube. You must stream video to this URL. Depending - on which application or tool you use to encode your video stream, you may - need to enter the stream URL and stream name separately or you may need to - concatenate them in the following format: *STREAM_URL/STREAM_NAME* \",\n \"type\": - \"string\"\n },\n \"backupIngestionAddress\": {\n \"description\": - \"The backup ingestion URL that you should use to stream video to YouTube. - You have the option of simultaneously streaming the content that you are sending - to the ingestionAddress to this URL.\",\n \"type\": \"string\"\n - \ },\n \"rtmpsIngestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"This ingestion url may be used instead of ingestionAddress - in order to stream via RTMPS. Not applicable to non-RTMP streams.\"\n }\n - \ },\n \"description\": \"Describes information necessary for ingesting - an RTMP, HTTP, or SRT stream.\"\n },\n \"I18nRegionListResponse\": {\n - \ \"type\": \"object\",\n \"id\": \"I18nRegionListResponse\",\n \"properties\": - {\n \"items\": {\n \"items\": {\n \"$ref\": \"I18nRegion\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of regions where YouTube is available. In this map, the i18n region ID - is the map key, and its value is the corresponding i18nRegion resource.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"default\": - \"youtube#i18nRegionListResponse\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ChannelSectionTargeting\": {\n \"properties\": {\n \"regions\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The region the - channel section is targeting.\"\n },\n \"languages\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The language the channel section is targeting.\"\n - \ },\n \"countries\": {\n \"description\": \"The country - the channel section is targeting.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"description\": \"ChannelSection targeting setting.\",\n \"id\": - \"ChannelSectionTargeting\",\n \"type\": \"object\"\n },\n \"GeoPoint\": - {\n \"properties\": {\n \"longitude\": {\n \"format\": - \"double\",\n \"description\": \"Longitude in degrees.\",\n \"type\": - \"number\"\n },\n \"latitude\": {\n \"description\": - \"Latitude in degrees.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n },\n \"altitude\": {\n \"type\": \"number\",\n - \ \"description\": \"Altitude above the reference ellipsoid, in meters.\",\n - \ \"format\": \"double\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Geographical coordinates of a point, in WGS84.\",\n - \ \"id\": \"GeoPoint\"\n },\n \"ResourceId\": {\n \"id\": \"ResourceId\",\n - \ \"type\": \"object\",\n \"description\": \"A resource id is a generic - reference that points to another YouTube resource.\",\n \"properties\": - {\n \"videoId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a video. - This property is only present if the resourceId.kind value is youtube#video.\",\n - \ \"type\": \"string\"\n },\n \"playlistId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a playlist. This property - is only present if the resourceId.kind value is youtube#playlist.\"\n },\n - \ \"kind\": {\n \"description\": \"The type of the API resource.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a channel. This property - is only present if the resourceId.kind value is youtube#channel.\"\n }\n - \ }\n },\n \"LiveChatModeratorSnippet\": {\n \"properties\": - {\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the live chat this moderator can act on.\"\n },\n \"moderatorDetails\": - {\n \"description\": \"Details about the moderator.\",\n \"$ref\": - \"ChannelProfileDetails\"\n }\n },\n \"id\": \"LiveChatModeratorSnippet\",\n - \ \"type\": \"object\"\n },\n \"InvideoPosition\": {\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"properties\": {\n \"cornerPosition\": {\n \"type\": - \"string\",\n \"description\": \"Describes in which corner of the - video the visual widget will appear.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ]\n },\n - \ \"type\": {\n \"enum\": [\n \"corner\"\n ],\n - \ \"description\": \"Defines the position type.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\"\n ]\n - \ }\n },\n \"id\": \"InvideoPosition\",\n \"type\": \"object\"\n - \ },\n \"CommentThread\": {\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"default\": \"youtube#commentThread\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"replies\": {\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the comment thread.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"CommentThreadSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment thread and also the top level comment.\"\n }\n },\n - \ \"id\": \"CommentThread\",\n \"description\": \"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.\"\n - \ },\n \"SuperChatEventListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"SuperChatEvent\"\n },\n \"description\": \"A list of Super - Chat purchases that match the request criteria.\",\n \"type\": \"array\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n \"default\": - \"youtube#superChatEventListResponse\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n }\n },\n \"id\": \"SuperChatEventListResponse\"\n - \ },\n \"PlaylistContentDetails\": {\n \"id\": \"PlaylistContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"itemCount\": - {\n \"description\": \"The number of videos in the playlist.\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n }\n - \ }\n },\n \"VideoLocalization\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"title\": {\n \"description\": - \"Localized version of the video's title.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"Localized version of the video's description.\"\n - \ }\n },\n \"id\": \"VideoLocalization\",\n \"description\": - \"Localized versions of certain video properties (e.g. title).\"\n },\n - \ \"LiveBroadcastSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel that is publishing the broadcast.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the broadcast was added to YouTube's live broadcast - schedule.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"actualStartTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the broadcast actually started. This information is only available - once the broadcast's state is live.\"\n },\n \"isDefaultBroadcast\": - {\n \"description\": \"Indicates whether this broadcast is the default - broadcast. Internal only.\",\n \"type\": \"boolean\"\n },\n - \ \"title\": {\n \"description\": \"The broadcast's title. - Note that the broadcast represents exactly one YouTube video. You can set - this field by modifying the broadcast resource or by setting the title field - of the corresponding video resource.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"A map of thumbnail images associated with the broadcast. For each nested - object in this object, the key is the name of the thumbnail image, and the - value is an object that contains other information about the thumbnail.\"\n - \ },\n \"scheduledStartTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the broadcast is scheduled to start.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"scheduledEndTime\": {\n \"description\": \"The - date and time that the broadcast is scheduled to end.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"actualEndTime\": - {\n \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The broadcast's description. As with the title, you can set this field by - modifying the broadcast resource or by setting the description field of the - corresponding video resource.\"\n },\n \"liveChatId\": {\n \"description\": - \"The id of the live chat for this broadcast.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Basic broadcast information.\",\n - \ \"id\": \"LiveBroadcastSnippet\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"description\": - \"A list of moderators that match the request criteria.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatModeratorListResponse\"\n - \ },\n \"SearchResult\": {\n \"type\": \"object\",\n \"id\": - \"SearchResult\",\n \"properties\": {\n \"kind\": {\n \"default\": - \"youtube#searchResult\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The id - object contains information that can be used to uniquely identify the resource - that matches the search request.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\",\n \"$ref\": \"SearchResultSnippet\"\n }\n - \ },\n \"description\": \"A search result contains information about - a YouTube video, channel, or playlist that matches the search parameters specified - in an API request. While a search result points to a uniquely identifiable - resource, like a video, it does not have its own persistent data.\"\n },\n - \ \"VideoCategoryListResponse\": {\n \"type\": \"object\",\n \"id\": - \"VideoCategoryListResponse\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoCategory\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoCategoryListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"ChannelConversionPings\": {\n \"properties\": {\n \"pings\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n },\n \"description\": \"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.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"id\": \"ChannelConversionPings\"\n - \ },\n \"VideoProcessingDetailsProcessingProgress\": {\n \"properties\": - {\n \"timeLeftMs\": {\n \"description\": \"An estimate of - the amount of time, in millseconds, that YouTube needs to finish processing - the video.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ },\n \"partsTotal\": {\n \"type\": \"string\",\n \"description\": - \"An estimate of the total number of parts that need to be processed for the - video. The number may be updated with more precise estimates while YouTube - processes the video.\",\n \"format\": \"uint64\"\n },\n \"partsProcessed\": - {\n \"description\": \"The number of parts of the video that YouTube - has already processed. You can estimate the percentage of the video that YouTube - has already processed by calculating: 100 * parts_processed / parts_total - Note that since the estimated number of parts could increase without a corresponding - increase in the number of parts that have already been processed, it is possible - that the calculated progress could periodically decrease while YouTube processes - a video.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ }\n },\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"Video processing progress and completion time estimate.\",\n - \ \"type\": \"object\"\n },\n \"ChannelToStoreLinkDetails\": {\n - \ \"id\": \"ChannelToStoreLinkDetails\",\n \"properties\": {\n \"storeName\": - {\n \"description\": \"Name of the store.\",\n \"type\": - \"string\"\n },\n \"merchantId\": {\n \"description\": - \"Google Merchant Center id of the store.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"storeUrl\": {\n \"type\": - \"string\",\n \"description\": \"Landing page of the store.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Information - specific to a store on a merchandising platform linked to a YouTube channel.\"\n - \ },\n \"WatchSettings\": {\n \"properties\": {\n \"textColor\": - {\n \"type\": \"string\",\n \"description\": \"The background - color for the video watch page's branded area.\"\n },\n \"featuredPlaylistId\": - {\n \"description\": \"An ID that uniquely identifies a playlist - that displays next to the video player.\",\n \"type\": \"string\"\n - \ },\n \"backgroundColor\": {\n \"type\": \"string\",\n - \ \"description\": \"The text color for the video watch page's branded - area.\"\n }\n },\n \"id\": \"WatchSettings\",\n \"description\": - \"Branding properties for the watch. All deprecated.\",\n \"type\": \"object\"\n - \ },\n \"VideoMonetizationDetails\": {\n \"id\": \"VideoMonetizationDetails\",\n - \ \"description\": \"Details about monetization of a YouTube Video.\",\n - \ \"properties\": {\n \"access\": {\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\",\n - \ \"$ref\": \"AccessPolicy\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveChatSuperChatDetails\": {\n \"properties\": - {\n \"userComment\": {\n \"description\": \"The comment added - by the user to this Super Chat event.\",\n \"type\": \"string\"\n - \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\"\n },\n \"currency\": {\n \"type\": - \"string\",\n \"description\": \"The currency in which the purchase - was made.\"\n },\n \"tier\": {\n \"description\": \"The - tier in which the amount belongs. Lower amounts belong to lower tiers. The - lowest tier is 1.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"amountMicros\": {\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatSuperChatDetails\",\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsSocial\": {\n \"id\": \"ActivityContentDetailsSocial\",\n - \ \"type\": \"object\",\n \"description\": \"Details about a social - network post.\",\n \"properties\": {\n \"type\": {\n \"description\": - \"The name of the social network.\",\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\"\n },\n - \ \"author\": {\n \"type\": \"string\",\n \"description\": - \"The author of the social network post.\"\n },\n \"imageUrl\": - {\n \"type\": \"string\",\n \"description\": \"An image - of the post's author.\"\n },\n \"referenceUrl\": {\n \"description\": - \"The URL of the social network post.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ActivityContentDetailsPromotedItem\": {\n - \ \"id\": \"ActivityContentDetailsPromotedItem\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"ctaType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\"\n },\n \"destinationUrl\": {\n \"description\": - \"The URL the client should direct the user to, if the user chooses to visit - the advertiser's website.\",\n \"type\": \"string\"\n },\n - \ \"creativeViewUrl\": {\n \"type\": \"string\",\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\"\n },\n \"adTag\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should fetch to request a - promoted item.\"\n },\n \"impressionUrl\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\",\n \"type\": - \"array\"\n },\n \"forecastingUrl\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"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.\"\n },\n \"customCtaButtonText\": - {\n \"type\": \"string\",\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\"\n },\n \"descriptionText\": {\n \"description\": - \"The text description to accompany the promoted item.\",\n \"type\": - \"string\"\n },\n \"clickTrackingUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user clicked through - on this promoted item.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the promoted video.\"\n }\n },\n - \ \"description\": \"Details about a resource which is being promoted.\"\n - \ },\n \"ChannelLocalization\": {\n \"id\": \"ChannelLocalization\",\n - \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for channel's description.\"\n - \ },\n \"title\": {\n \"description\": \"The localized - strings for channel's title.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Channel localization setting\",\n \"type\": - \"object\"\n },\n \"LiveChatBan\": {\n \"description\": \"A `__liveChatBan__` - resource represents a ban for a YouTube live chat.\",\n \"id\": \"LiveChatBan\",\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the ban.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"default\": \"youtube#liveChatBan\"\n },\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"MemberListResponse\": - {\n \"properties\": {\n \"items\": {\n \"items\": {\n - \ \"$ref\": \"Member\"\n },\n \"description\": - \"A list of members that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#memberListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"MemberListResponse\"\n - \ },\n \"VideoFileDetails\": {\n \"type\": \"object\",\n \"id\": - \"VideoFileDetails\",\n \"description\": \"Describes original video file - properties, including technical details about audio and video streams, but - also metadata information like content length, digitization time, or geotagging - information.\",\n \"properties\": {\n \"bitrateBps\": {\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"audioStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsAudioStream\"\n },\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\",\n \"type\": - \"array\"\n },\n \"videoStreams\": {\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ }\n },\n \"fileSize\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The uploaded file's size in bytes. This field - is present whether a video file or another type of file was uploaded.\",\n - \ \"type\": \"string\"\n },\n \"fileName\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded file's name. This field - is present whether a video file or another type of file was uploaded.\"\n - \ },\n \"fileType\": {\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"description\": \"The uploaded file's - type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\"\n },\n \"durationMs\": - {\n \"format\": \"uint64\",\n \"description\": \"The length - of the uploaded video in milliseconds.\",\n \"type\": \"string\"\n - \ },\n \"creationTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the uploaded video file - was created. The value is specified in ISO 8601 format. Currently, the following - ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"container\": - {\n \"description\": \"The uploaded video file's container format.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ThirdPartyLink\": - {\n \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\",\n \"id\": \"ThirdPartyLink\",\n \"properties\": {\n - \ \"etag\": {\n \"description\": \"Etag of this resource\",\n - \ \"type\": \"string\"\n },\n \"status\": {\n \"$ref\": - \"ThirdPartyLinkStatus\",\n \"description\": \"The status object - contains information about the status of the link.\"\n },\n \"linkingToken\": - {\n \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#thirdPartyLink\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the third- party account link.\",\n \"$ref\": - \"ThirdPartyLinkSnippet\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveStreamStatus\": {\n \"type\": \"object\",\n \"description\": - \"Brief description of the live stream status.\",\n \"id\": \"LiveStreamStatus\",\n - \ \"properties\": {\n \"healthStatus\": {\n \"description\": - \"The health status of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n - \ },\n \"streamStatus\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ]\n }\n - \ }\n },\n \"ContentRating\": {\n \"description\": \"Ratings - schemes. The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n - \ \"properties\": {\n \"eirinRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ],\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\"\n - \ },\n \"grfilmRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Greece.\",\n \"enum\": - [\n \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n - \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n - \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ]\n - \ },\n \"ytRating\": {\n \"description\": \"A rating - that YouTube uses to identify age-restricted content.\",\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"bmukkRating\": {\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"enum\": - [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n \"bmukk6\",\n - \ \"bmukk8\",\n \"bmukk10\",\n \"bmukk12\",\n - \ \"bmukk14\",\n \"bmukk16\",\n \"bmukkUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"eefilmRating\": - {\n \"description\": \"The video's rating in Estonia.\",\n \"enum\": - [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n \"eefilmL\",\n - \ \"eefilmMs6\",\n \"eefilmK6\",\n \"eefilmMs12\",\n - \ \"eefilmK12\",\n \"eefilmK14\",\n \"eefilmK16\",\n - \ \"eefilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ]\n },\n \"mccypRating\": {\n \"enum\": [\n - \ \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n - \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ]\n },\n \"incaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\"\n },\n \"kijkwijzerRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's NICAM/Kijkwijzer rating - from the Nederlands Instituut voor de Classificatie van Audiovisuele Media - (Netherlands).\"\n },\n \"fskRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle - der Filmwirtschaft (FSK - Germany) rating.\"\n },\n \"rteRating\": - {\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ]\n },\n \"fcoRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ],\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"description\": - \"The video's rating from Hong Kong's Office for Film, Newspaper and Article - Administration.\",\n \"type\": \"string\"\n },\n \"cccRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Todo - espectador\",\n \"6+ - Inconveniente para menores de 7 a\xF1os\",\n - \ \"14+\",\n \"18+\",\n \"18+ - contenido - excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ],\n \"description\": \"The video's Consejo - de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n \"type\": - \"string\",\n \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n - \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ]\n },\n - \ \"chvrsRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ],\n \"enum\": [\n \"chvrsUnspecified\",\n \"chvrsG\",\n - \ \"chvrsPg\",\n \"chvrs14a\",\n \"chvrs18a\",\n - \ \"chvrsR\",\n \"chvrsE\",\n \"chvrsUnrated\"\n - \ ]\n },\n \"rtcRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's General Directorate of Radio, Television - and Cinematography (Mexico) rating.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ]\n },\n - \ \"mdaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG13\",\n \"NC16\",\n - \ \"M18\",\n \"R21\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Singapore's Media Development Authority (MDA) and, specifically, - it's Board of Film Censors (BFC).\",\n \"enum\": [\n \"mdaUnspecified\",\n - \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n - \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n - \ \"mdaUnrated\"\n ]\n },\n \"djctqRatingReasons\": - {\n \"description\": \"Reasons that explain why the video received - its DJCQT (Brazil) rating.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ]\n },\n \"type\": \"array\"\n },\n \"csaRating\": - {\n \"description\": \"The video's rating from France's Conseil sup\xE9rieur - de l\u2019audiovisuel, which rates broadcast content.\",\n \"type\": - \"string\",\n \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ]\n },\n - \ \"fpbRatingReasons\": {\n \"type\": \"array\",\n \"items\": - {\n \"enumDescriptions\": [\n \"\",\n \"South - Africa rating content descriptors.\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n - \ \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ]\n },\n - \ \"description\": \"Reasons that explain why the video received its - FPB (South Africa) rating.\"\n },\n \"nfvcbRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from Nigeria's - National Film and Video Censors Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ]\n },\n - \ \"mcstRating\": {\n \"description\": \"The video's rating - system for Vietnam - MCST\",\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"cceRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n - \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n - \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"4\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\",\n \"14\"\n ]\n - \ },\n \"skfilmRating\": {\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Slovakia.\"\n },\n - \ \"lsfRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"enum\": [\n - \ \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"description\": \"The video's rating from Indonesia's - Lembaga Sensor Film.\"\n },\n \"nmcRating\": {\n \"enum\": - [\n \"nmcUnspecified\",\n \"nmcG\",\n \"nmcPg\",\n - \ \"nmcPg13\",\n \"nmcPg15\",\n \"nmc15plus\",\n - \ \"nmc18plus\",\n \"nmc18tc\",\n \"nmcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"PG-15\",\n \"15+\",\n - \ \"18+\",\n \"18TC\",\n \"\"\n ],\n - \ \"description\": \"The National Media Council ratings system for - United Arab Emirates.\",\n \"type\": \"string\"\n },\n \"catvfrRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"8+\",\n \"13+\",\n \"16+\",\n - \ \"18+\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ],\n \"description\": \"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.\"\n },\n \"kmrbRating\": {\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"mocRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Ministerio de Cultura (Colombia) rating.\",\n \"enum\": [\n \"mocUnspecified\",\n - \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n - \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ]\n },\n \"rcnofRating\": - {\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"oflcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"M\",\n \"R13\",\n - \ \"R15\",\n \"R16\",\n \"R18\",\n \"\",\n - \ \"RP13\",\n \"RP16\",\n \"RP18\"\n ],\n - \ \"description\": \"The video's Office of Film and Literature Classification - (OFLC - New Zealand) rating.\",\n \"enum\": [\n \"oflcUnspecified\",\n - \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n - \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n - \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n - \ \"oflcRp16\",\n \"oflcRp18\"\n ],\n \"type\": - \"string\"\n },\n \"resorteviolenciaRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Venezuela.\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ]\n },\n \"agcomRating\": {\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ]\n },\n \"smaisRating\": - {\n \"description\": \"The video's rating in Iceland.\",\n \"enum\": - [\n \"smaisUnspecified\",\n \"smaisL\",\n \"smais7\",\n - \ \"smais12\",\n \"smais14\",\n \"smais16\",\n - \ \"smais18\",\n \"smaisUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"nbcplRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Poland.\",\n \"type\": \"string\",\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ]\n },\n \"cnaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"description\": \"The - video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n - \ \"type\": \"string\"\n },\n \"mtrcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Movie - and Television Review and Classification Board (Philippines).\",\n \"type\": - \"string\",\n \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ]\n },\n \"acbRating\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"enum\": - [\n \"acbUnspecified\",\n \"acbE\",\n \"acbP\",\n - \ \"acbC\",\n \"acbG\",\n \"acbPg\",\n \"acbM\",\n - \ \"acbMa15plus\",\n \"acbR18plus\",\n \"acbUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ]\n - \ },\n \"czfilmRating\": {\n \"description\": \"The - video's rating in the Czech Republic.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n - \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n - \ \"czfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ]\n },\n \"anatelRating\": - {\n \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n - \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n - \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n - \ \"anatelUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"description\": \"The video's Anatel - (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\",\n - \ \"type\": \"string\"\n },\n \"ifcoRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Irish Film Classification Office - (IFCO - Ireland) rating. See the IFCO website for more information.\",\n \"enum\": - [\n \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ]\n },\n \"mccaaRating\": - {\n \"description\": \"The video's rating from Malta's Film Age-Classification - Board.\",\n \"type\": \"string\",\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ]\n },\n \"menaMpaaRating\": {\n - \ \"type\": \"string\",\n \"description\": \"The rating system - for MENA countries, a clone of MPAA. It is needed to prevent titles go live - w/o additional QC check, since some of them can be inappropriate for the countries - at all. See b/33408548 for more details.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ],\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ]\n - \ },\n \"bfvcRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ],\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ],\n \"description\": - \"The video's rating from Thailand's Board of Film and Video Censors.\",\n - \ \"type\": \"string\"\n },\n \"nbcRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Maldives - National Bureau of Classification.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ]\n },\n - \ \"medietilsynetRating\": {\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"description\": \"The video's rating from Medietilsynet, - the Norwegian Media Authority.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"mpaatRating\": {\n \"description\": \"The rating system - for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"GB\",\n \"RB\"\n ],\n - \ \"type\": \"string\"\n },\n \"nkclvRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\",\n - \ \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n - \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n - \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ]\n - \ },\n \"cscfRating\": {\n \"description\": \"The video's - rating from Luxembourg's Commission de surveillance de la classification des - films (CSCF).\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n - \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"egfilmRating\": {\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"description\": \"The - video's rating in Egypt.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ]\n },\n \"mpaaRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's Motion Picture Association - of America (MPAA) rating.\",\n \"enum\": [\n \"mpaaUnspecified\",\n - \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n - \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n - \ \"mpaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ]\n },\n \"ilfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Israel.\"\n - \ },\n \"fpbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\",\n - \ \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ]\n },\n \"nfrcRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"nfrcUnspecified\",\n \"nfrcA\",\n - \ \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n - \ \"nfrcUnrated\"\n ],\n \"description\": \"The - video's rating from the Bulgarian National Film Center.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ]\n },\n - \ \"chfilmRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"chfilmUnspecified\",\n \"chfilm0\",\n \"chfilm6\",\n - \ \"chfilm12\",\n \"chfilm16\",\n \"chfilm18\",\n - \ \"chfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Switzerland.\"\n },\n - \ \"moctwRating\": {\n \"enum\": [\n \"moctwUnspecified\",\n - \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n - \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n - \ \"moctwR15\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ],\n \"description\": \"The video's rating from Taiwan's - Ministry of Culture (\u6587\u5316\u90E8).\",\n \"type\": \"string\"\n - \ },\n \"bbfcRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's British Board of Film Classification (BBFC) rating.\",\n \"enum\": - [\n \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ]\n - \ },\n \"djctqRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ],\n \"description\": \"The - video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"type\": \"string\"\n - \ },\n \"fcbmRating\": {\n \"enum\": [\n \"fcbmUnspecified\",\n - \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n - \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n - \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n - \ ],\n \"description\": \"The video's rating from Malaysia's - Film Censorship Board.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG13\",\n \"P13\",\n \"18\",\n - \ \"18SX\",\n \"18PA\",\n \"18SG\",\n \"18PL\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"mibacRating\": {\n \"description\": \"The video's rating - from the Ministero dei Beni e delle Attivit\xE0 Culturali e del Turismo (Italy).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"cbfcRating\": {\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ]\n },\n \"catvRating\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n - \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n - \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n - \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n - \ \"catvE\"\n ]\n },\n \"fmocRating\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"E\",\n \"\"\n ],\n - \ \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ],\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\"\n },\n \"cncRating\": - {\n \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ],\n - \ \"description\": \"Rating system in France - Commission de classification - cinematographique\",\n \"type\": \"string\"\n },\n \"smsaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"smsaUnspecified\",\n - \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n - \ \"smsa15\",\n \"smsaUnrated\"\n ],\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"All ages\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ]\n },\n \"pefilmRating\": {\n \"enum\": - [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"PT\",\n - \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Peru.\",\n - \ \"type\": \"string\"\n },\n \"mekuRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's rating from Finland's - Kansallinen Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n - \ \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"kfcbRating\": {\n \"enum\": [\n \"kfcbUnspecified\",\n - \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n - \ \"kfcbR\",\n \"kfcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Kenya Film Classification - Board.\"\n },\n \"cicfRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ],\n \"description\": \"The - video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n - \ \"type\": \"string\"\n },\n \"icaaRating\": {\n \"description\": - \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales - (ICAA - Spain) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n - \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n - \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ]\n },\n - \ \"ecbmctRating\": {\n \"type\": \"string\",\n \"description\": - \"Rating system in Turkey - Evaluation and Classification Board of the Ministry - of Culture and Tourism\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ]\n },\n \"tvpgRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"description\": \"The video's TV - Parental Guidelines (TVPG) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"tvpgUnspecified\",\n \"tvpgY\",\n \"tvpgY7\",\n - \ \"tvpgY7Fv\",\n \"tvpgG\",\n \"tvpgPg\",\n - \ \"pg14\",\n \"tvpgMa\",\n \"tvpgUnrated\"\n - \ ]\n },\n \"russiaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"description\": \"The video's National Film Registry of the Russian - Federation (MKRF - Russia) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"russiaUnspecified\",\n \"russia0\",\n \"russia6\",\n - \ \"russia12\",\n \"russia16\",\n \"russia18\",\n - \ \"russiaUnrated\"\n ]\n }\n },\n \"id\": - \"ContentRating\",\n \"type\": \"object\"\n },\n \"Cuepoint\": - {\n \"id\": \"Cuepoint\",\n \"description\": \"Note that there may - be a 5-second end-point resolution issue. For instance, if a cuepoint comes - in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, depending. - This is an artifact of HLS.\",\n \"properties\": {\n \"durationSecs\": - {\n \"format\": \"uint32\",\n \"description\": \"The duration - of this cuepoint.\",\n \"type\": \"integer\"\n },\n \"id\": - {\n \"description\": \"The identifier for cuepoint resource.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"cueType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ]\n },\n \"walltimeMs\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The wall clock time at which the cuepoint should be inserted. Only one of - insertion_offset_time_ms and walltime_ms may be set at a time.\"\n },\n - \ \"insertionOffsetTimeMs\": {\n \"format\": \"int64\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LocalizedString\": {\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n },\n \"language\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LocalizedString\"\n },\n \"VideoAgeGating\": {\n \"properties\": - {\n \"videoGameRating\": {\n \"enum\": [\n \"anyone\",\n - \ \"m15Plus\",\n \"m16Plus\",\n \"m17Plus\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"Video game rating, if any.\",\n \"type\": \"string\"\n },\n - \ \"restricted\": {\n \"type\": \"boolean\",\n \"description\": - \"Age-restricted trailers. For redband trailers and adult-rated video-games. - Only users aged 18+ can view the content. The the field is true the content - is restricted to viewers aged 18+. Otherwise The field won't be present.\"\n - \ },\n \"alcoholContent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether or not the video has alcoholic - beverage content. Only users of legal purchasing age in a particular country, - as identified by ICAP, can view the content.\"\n }\n },\n \"id\": - \"VideoAgeGating\",\n \"type\": \"object\"\n },\n \"RelatedEntity\": - {\n \"properties\": {\n \"entity\": {\n \"$ref\": \"Entity\"\n - \ }\n },\n \"id\": \"RelatedEntity\",\n \"type\": \"object\"\n - \ }\n },\n \"discoveryVersion\": \"v1\",\n \"parameters\": {\n \"fields\": - {\n \"location\": \"query\",\n \"description\": \"Selector specifying - which fields to include in a partial response.\",\n \"type\": \"string\"\n - \ },\n \"quotaUser\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"$.xgafv\": {\n \"type\": - \"string\",\n \"description\": \"V1 error format.\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"v1 error format\",\n - \ \"v2 error format\"\n ],\n \"enum\": [\n \"1\",\n - \ \"2\"\n ]\n },\n \"uploadType\": {\n \"description\": - \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"oauth_token\": - {\n \"description\": \"OAuth 2.0 token for the current user.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"access_token\": - {\n \"description\": \"OAuth access token.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"alt\": {\n \"enum\": [\n \"json\",\n - \ \"media\",\n \"proto\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"default\": \"json\",\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"description\": - \"Data format for response.\"\n },\n \"key\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"callback\": - {\n \"description\": \"JSONP\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"upload_protocol\": {\n \"description\": \"Upload - protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"prettyPrint\": {\n \"description\": - \"Returns response with indentations and line breaks.\",\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"default\": \"true\"\n - \ }\n },\n \"basePath\": \"\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"servicePath\": \"\",\n \"id\": \"youtube:v3\",\n \"batchPath\": \"batch\",\n - \ \"version\": \"v3\",\n \"canonicalName\": \"YouTube\",\n \"resources\": - {\n \"channels\": {\n \"methods\": {\n \"list\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/channels\",\n \"response\": {\n - \ \"$ref\": \"ChannelListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.channels.list\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the channels subscribed to the authenticated user\"\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"minimum\": \"0\"\n },\n - \ \"managedByMe\": {\n \"type\": \"boolean\",\n \"description\": - \"Return the channels managed by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the channels within the specified guide category ID.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"Return the channels with the specified IDs.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n },\n - \ \"mine\": {\n \"description\": \"Return the ids of - channels owned by the authenticated user.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"forUsername\": - {\n \"type\": \"string\",\n \"description\": \"Return - the channel associated with a YouTube username.\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/channels\"\n - \ },\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channels.update\",\n \"request\": - {\n \"$ref\": \"Channel\"\n },\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"Channel\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"path\": \"youtube/v3/channels\",\n \"flatPath\": \"youtube/v3/channels\"\n - \ }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"id\": \"youtube.commentThreads.insert\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"path\": - \"youtube/v3/commentThreads\"\n },\n \"list\": {\n \"parameters\": - {\n \"channelId\": {\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads for all the channel - comments (ie does not include comments left on videos).\",\n \"type\": - \"string\"\n },\n \"searchTerms\": {\n \"description\": - \"Limits the returned comment threads to those matching the specified key - words. Not compatible with the 'id' filter.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"default\": \"20\",\n - \ \"maximum\": \"100\",\n \"minimum\": \"1\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of all videos of the channel and the channel - comments as well.\",\n \"type\": \"string\"\n },\n - \ \"order\": {\n \"location\": \"query\",\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"default\": \"time\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"Returns the comment - threads with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"moderationStatus\": {\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"default\": - \"published\",\n \"type\": \"string\",\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comment threads of the specified - video.\"\n },\n \"textFormat\": {\n \"default\": - \"html\",\n \"location\": \"query\",\n \"description\": - \"The requested text format for the returned comments.\",\n \"enum\": - [\n \"textFormatUnspecified\",\n \"html\",\n - \ \"plainText\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ]\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/commentThreads\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"response\": {\n \"$ref\": - \"CommentThreadListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.commentThreads.list\"\n }\n - \ }\n },\n \"channelBanners\": {\n \"methods\": {\n \"insert\": - {\n \"path\": \"youtube/v3/channelBanners/insert\",\n \"parameters\": - {\n \"channelId\": {\n \"location\": \"query\",\n - \ \"description\": \"Unused, channel_id is currently derived from - the security context of the requestor.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n }\n },\n \"parameterOrder\": - [],\n \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"supportsMediaUpload\": - true,\n \"id\": \"youtube.channelBanners.insert\",\n \"mediaUpload\": - {\n \"maxSize\": \"6291456\",\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ }\n }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"en-US\"\n },\n \"id\": {\n \"repeated\": - true,\n \"description\": \"Returns the video categories with - the given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the videoCategory resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videoCategories\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.videoCategories.list\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/videoCategories\"\n - \ }\n }\n },\n \"watermarks\": {\n \"methods\": {\n - \ \"unset\": {\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"parameters\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"description\": \"Allows removal of channel watermark.\",\n \"id\": - \"youtube.watermarks.unset\"\n },\n \"set\": {\n \"parameters\": - {\n \"channelId\": {\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"description\": \"Allows upload of watermark image and setting - it for a channel.\",\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"id\": \"youtube.watermarks.set\",\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"InvideoBranding\"\n },\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\"\n }\n }\n - \ }\n },\n \"liveStreams\": {\n \"methods\": {\n \"insert\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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, - content_details, and status.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"id\": \"youtube.liveStreams.insert\"\n - \ },\n \"list\": {\n \"description\": \"Retrieve the - list of streams associated with the given channel. --\",\n \"id\": - \"youtube.liveStreams.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameters\": {\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"default\": \"5\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"maximum\": \"50\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"Return LiveStreams with the given ids from - Stubby or Apiary.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/liveStreams\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.liveStreams.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - an existing stream for the authenticated user.\"\n },\n \"update\": - {\n \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"id\": \"youtube.liveStreams.update\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveStreams\"\n }\n }\n },\n - \ \"membershipsLevels\": {\n \"methods\": {\n \"list\": {\n - \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the membershipsLevel - resource parts that the API response will include. Supported values are id - and snippet.\"\n }\n },\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"description\": \"Retrieves a list of all pricing levels offered - by a creator to the fans.\",\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"MembershipsLevelListResponse\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.membershipsLevels.list\"\n }\n }\n - \ },\n \"activities\": {\n \"methods\": {\n \"list\": {\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/activities\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"publishedAfter\": - {\n \"format\": \"google-datetime\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"home\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"publishedBefore\": {\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n },\n \"regionCode\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"minimum\": \"0\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.activities.list\",\n \"response\": {\n \"$ref\": - \"ActivityListResponse\"\n },\n \"flatPath\": \"youtube/v3/activities\"\n - \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/search\",\n \"parameters\": {\n - \ \"forMine\": {\n \"location\": \"query\",\n \"description\": - \"Search for the private videos of the authenticated user.\",\n \"type\": - \"boolean\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\"\n },\n \"safeSearch\": {\n \"enumDescriptions\": - [\n \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"location\": - \"query\",\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"default\": \"moderate\",\n \"type\": - \"string\"\n },\n \"videoCategoryId\": {\n \"description\": - \"Filter on videos in a specific category.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"location\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on location of the video\",\n \"location\": \"query\"\n },\n - \ \"relatedToVideoId\": {\n \"description\": \"Search - related to a resource.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"videoType\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Filter on videos of a specific type.\",\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"type\": \"string\"\n },\n \"videoDimension\": - {\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"description\": \"Filter - on 3d videos.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"location\": \"query\"\n },\n - \ \"videoEmbeddable\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all videos, embeddable or not.\",\n \"Only retrieve embeddable - videos.\"\n ],\n \"location\": \"query\",\n \"enum\": - [\n \"videoEmbeddableUnspecified\",\n \"any\",\n - \ \"true\"\n ],\n \"description\": - \"Filter on embeddable videos.\"\n },\n \"videoSyndicated\": - {\n \"description\": \"Filter on syndicated videos.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ]\n },\n - \ \"regionCode\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Display the content as seen by - viewers in this country.\"\n },\n \"channelId\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on resources belonging to this channelId.\"\n - \ },\n \"publishedAfter\": {\n \"type\": - \"string\",\n \"format\": \"google-datetime\",\n \"description\": - \"Filter on resources published after this date.\",\n \"location\": - \"query\"\n },\n \"type\": {\n \"description\": - \"Restrict results to a particular set of resource types from One Platform.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"videoLicense\": - {\n \"description\": \"Filter on the license of the videos.\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ]\n - \ },\n \"eventType\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"description\": - \"Filter on the livestream status of the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ]\n },\n \"relevanceLanguage\": - {\n \"description\": \"Return results relevant to this language.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"videoDefinition\": {\n \"description\": - \"Filter on the definition of the videos.\",\n \"location\": - \"query\",\n \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ]\n },\n \"forContentOwner\": {\n \"description\": - \"Search owned by a content owner.\",\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"order\": - {\n \"type\": \"string\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"location\": \"query\",\n \"description\": - \"Sort order of the results.\",\n \"default\": \"relevance\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Resources - are sorted in reverse chronological order based on the date they were created.\",\n - \ \"Resources are sorted from highest to lowest rating.\",\n - \ \"Resources are sorted from highest to lowest number of views.\",\n - \ \"Resources are sorted based on their relevance to the search - query. This is the default value for this parameter.\",\n \"Resources - are sorted alphabetically by title.\",\n \"Channels are sorted - in descending order of their number of uploaded videos.\"\n ]\n - \ },\n \"publishedBefore\": {\n \"format\": - \"google-datetime\",\n \"description\": \"Filter on resources - published before this date.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"q\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Textual search terms to match.\"\n - \ },\n \"videoDuration\": {\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"description\": - \"Filter on the duration of the videos.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"forDeveloper\": - {\n \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"locationRadius\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on distance from the location (specified - above).\"\n },\n \"channelType\": {\n \"enum\": - [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all channels.\",\n \"Only retrieve shows.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Add - a filter on the channel search.\"\n },\n \"topicId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Restrict results to a particular topic.\"\n - \ },\n \"videoCaption\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"description\": \"Filter on the presence - of captions on the videos.\",\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ]\n }\n },\n \"description\": \"Retrieves - a list of search resources\",\n \"response\": {\n \"$ref\": - \"SearchListResponse\"\n },\n \"id\": \"youtube.search.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/search\",\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"playlistItems\": {\n \"methods\": - {\n \"insert\": {\n \"id\": \"youtube.playlistItems.insert\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlistItems\"\n },\n \"delete\": - {\n \"description\": \"Deletes a resource.\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"id\": \"youtube.playlistItems.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/playlistItems\"\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"playlistId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the playlist items within the given - playlist.\"\n },\n \"videoId\": {\n \"description\": - \"Return the playlist items associated with the given video ID.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"part\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"repeated\": true\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.playlistItems.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ }\n },\n \"update\": {\n \"response\": {\n - \ \"$ref\": \"PlaylistItem\"\n },\n \"id\": \"youtube.playlistItems.update\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"description\": \"Updates an existing resource.\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"insert\": {\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"description\": \"Inserts a - new resource into this collection.\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"path\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.insert\",\n \"httpMethod\": \"POST\"\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"id\": - \"youtube.channelSections.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"mine\": {\n \"description\": \"Return the ChannelSections - owned by the authenticated user.\",\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the ChannelSections owned by the specified channel ID.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"Return the ChannelSections with the given IDs for Stubby or Apiary.\",\n - \ \"location\": \"query\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return content in specified language\"\n - \ }\n },\n \"path\": \"youtube/v3/channelSections\"\n - \ },\n \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"description\": \"Updates an - existing resource.\",\n \"id\": \"youtube.channelSections.update\",\n - \ \"flatPath\": \"youtube/v3/channelSections\"\n },\n \"delete\": - {\n \"path\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/channelSections\"\n }\n - \ }\n },\n \"liveChatModerators\": {\n \"methods\": {\n \"insert\": - {\n \"request\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveChatModerators.insert\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\"\n },\n \"list\": - {\n \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameters\": {\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for which moderators - should be returned.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"maxResults\": {\n \"default\": \"5\",\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"0\"\n }\n - \ },\n \"id\": \"youtube.liveChatModerators.list\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n },\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.liveChatModerators.delete\",\n \"description\": - \"Deletes a chat moderator.\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\"\n }\n }\n },\n \"youtube\": - {\n \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"parameterOrder\": - [],\n \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"request\": {\n \"$ref\": - \"CommentThread\"\n }\n }\n }\n }\n - \ }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ },\n \"parameters\": {\n \"maxResults\": {\n - \ \"minimum\": \"0\",\n \"default\": \"5\",\n \"format\": - \"uint32\",\n \"maximum\": \"1000\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"location\": \"query\"\n },\n \"mode\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - only members that joined after the first call with this mode was made.\",\n - \ \"Return all current members, from newest to oldest.\"\n ],\n - \ \"enum\": [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"default\": - \"all_current\"\n },\n \"hasAccessToLevel\": {\n \"location\": - \"query\",\n \"description\": \"Filter members in the results - set to the ones that have access to a level.\",\n \"type\": \"string\"\n - \ },\n \"filterByMemberChannelId\": {\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.members.list\",\n \"flatPath\": \"youtube/v3/members\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"description\": \"Retrieves a list of members that - match the request criteria for a channel.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/members\"\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"reportAbuse\": - {\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n \"parameterOrder\": - [],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"request\": {\n \"$ref\": - \"VideoAbuseReport\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/videos/reportAbuse\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.videos.reportAbuse\",\n \"description\": - \"Report abuse for a video.\"\n },\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.videos.delete\",\n \"path\": \"youtube/v3/videos\",\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/videos\"\n - \ },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Video\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/videos\",\n - \ \"id\": \"youtube.videos.update\",\n \"parameters\": {\n - \ \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ },\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"flatPath\": \"youtube/v3/videos\",\n \"description\": - \"Updates an existing resource.\"\n },\n \"rate\": {\n \"path\": - \"youtube/v3/videos/rate\",\n \"description\": \"Adds a like or dislike - rating to a video or removes a rating from a video.\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.rate\",\n \"flatPath\": - \"youtube/v3/videos/rate\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"rating\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ]\n - \ }\n },\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ]\n },\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/videos\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"supportsMediaUpload\": true,\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/videos\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"274877906944\"\n - \ },\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"parameters\": {\n \"notifySubscribers\": - {\n \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\",\n \"default\": - \"true\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"stabilize\": - {\n \"description\": \"Should stabilize be applied to the upload.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\"\n },\n - \ \"autoLevels\": {\n \"location\": \"query\",\n \"description\": - \"Should auto-levels be applied to the upload.\",\n \"type\": - \"boolean\"\n }\n },\n \"id\": \"youtube.videos.insert\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"list\": {\n \"path\": \"youtube/v3/videos\",\n - \ \"id\": \"youtube.videos.list\",\n \"response\": {\n \"$ref\": - \"VideoListResponse\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"description\": \"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.\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"minimum\": - \"1\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"repeated\": - true\n },\n \"myRating\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return videos liked/disliked by the authenticated user. Does not support - RateType.RATED_TYPE_NONE.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n - \ },\n \"maxWidth\": {\n \"maximum\": \"8192\",\n - \ \"type\": \"integer\",\n \"minimum\": \"72\",\n - \ \"location\": \"query\",\n \"format\": \"int32\",\n - \ \"description\": \"Return the player with maximum height specified - in\"\n },\n \"locale\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"chart\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - the most popular videos for the specified content region and video category.\"\n - \ ],\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ],\n \"description\": - \"Return the videos that are in the specified chart.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"regionCode\": - {\n \"description\": \"Use a chart that is specific to the specified - region\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Return videos with the given - ids.\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"videoCategoryId\": {\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": - \"0\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxHeight\": {\n \"format\": \"int32\",\n - \ \"maximum\": \"8192\",\n \"type\": \"integer\",\n - \ \"minimum\": \"72\",\n \"location\": \"query\"\n - \ },\n \"hl\": {\n \"description\": \"Stands - for \\\"host language\\\". Specifies the localization language of the metadata - to be filled into snippet.localized. The field is filled with the default - metadata if there is no localization in the specified language. The parameter - value must be a language code included in the list returned by the i18nLanguages.list - method (e.g. en_US, es_MX).\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n }\n },\n \"getRating\": - {\n \"flatPath\": \"youtube/v3/videos/getRating\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"id\": \"youtube.videos.getRating\",\n \"response\": {\n - \ \"$ref\": \"VideoGetRatingResponse\"\n },\n \"path\": - \"youtube/v3/videos/getRating\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves the ratings that the - authorized user gave to a list of specified videos.\",\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"playlists\": {\n \"methods\": - {\n \"insert\": {\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"youtube.playlists.insert\"\n },\n - \ \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.playlists.list\",\n \"response\": - {\n \"$ref\": \"PlaylistListResponse\"\n },\n \"parameters\": - {\n \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"type\": \"integer\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"mine\": - {\n \"description\": \"Return the playlists owned by the authenticated - user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the playlists owned by - the specified channel ID.\",\n \"type\": \"string\"\n },\n - \ \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return content in specified - language\"\n }\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"httpMethod\": \"DELETE\",\n \"id\": - \"youtube.playlists.delete\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n }\n },\n \"update\": {\n - \ \"description\": \"Updates an existing resource.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"request\": {\n - \ \"$ref\": \"Playlist\"\n },\n \"flatPath\": - \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\"\n - \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n - \ \"list\": {\n \"parameters\": {\n \"hl\": {\n - \ \"type\": \"string\",\n \"default\": \"en_US\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the i18nRegion - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.i18nRegions.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ }\n }\n }\n },\n \"i18nLanguages\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"path\": - \"youtube/v3/i18nLanguages\",\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the i18nLanguage resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"hl\": {\n - \ \"default\": \"en_US\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n }\n }\n - \ }\n },\n \"subscriptions\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/subscriptions\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"forChannelId\": {\n - \ \"type\": \"string\",\n \"description\": \"Return - the subscriptions to the subset of these channels that the authenticated user - is subscribed to.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"myRecentSubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"mySubscribers\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the subscribers of the given channel owner.\"\n },\n \"order\": - {\n \"type\": \"string\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"description\": \"The order of the returned subscriptions\",\n - \ \"location\": \"query\",\n \"default\": \"relevance\"\n - \ },\n \"mine\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Flag - for returning the subscriptions of the authenticated user.\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions of the given channel - owner.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the subscriptions with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n - \ \"maxResults\": {\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\",\n \"default\": \"5\",\n \"location\": - \"query\",\n \"format\": \"uint32\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"SubscriptionListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.subscriptions.list\",\n \"flatPath\": - \"youtube/v3/subscriptions\"\n },\n \"insert\": {\n \"request\": - {\n \"$ref\": \"Subscription\"\n },\n \"path\": - \"youtube/v3/subscriptions\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.subscriptions.insert\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"required\": true\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/subscriptions\"\n },\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n }\n }\n }\n },\n \"liveChatBans\": - {\n \"methods\": {\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.liveChatBans.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat ban.\"\n },\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true\n }\n }\n }\n - \ }\n },\n \"superChatEvents\": {\n \"methods\": {\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the superChatEvent resource parts that the - API response will include. This parameter is currently not supported.\",\n - \ \"repeated\": true,\n \"required\": true\n },\n - \ \"maxResults\": {\n \"location\": \"query\",\n \"type\": - \"integer\",\n \"minimum\": \"1\",\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"50\",\n \"format\": \"uint32\"\n - \ },\n \"hl\": {\n \"description\": \"Return - rendered funding amounts in specified language.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"id\": \"youtube.superChatEvents.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/superChatEvents\"\n - \ }\n }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/videoAbuseReportReasons\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"The *part* parameter specifies the videoCategory resource parts that the - API response will include. Supported values are id and snippet.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"default\": \"en-US\",\n - \ \"type\": \"string\"\n }\n },\n \"response\": - {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\"\n }\n }\n - \ },\n \"thumbnails\": {\n \"methods\": {\n \"set\": {\n - \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"2097152\",\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ }\n }\n },\n \"description\": \"As - this is not an insert in a strict sense (it supports uploading/setting of - a thumbnail for multiple videos, which doesn't result in creation of a single - resource), I use a custom verb here.\",\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"path\": \"youtube/v3/thumbnails/set\",\n \"supportsMediaUpload\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.thumbnails.set\",\n \"parameterOrder\": - [\n \"videoId\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\",\n - \ \"required\": true\n }\n },\n \"httpMethod\": - \"POST\"\n }\n }\n },\n \"abuseReports\": {\n \"methods\": - {\n \"insert\": {\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"AbuseReport\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.abuseReports.insert\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n }\n }\n - \ }\n },\n \"thirdPartyLinks\": {\n \"methods\": {\n \"insert\": - {\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n }\n - \ },\n \"list\": {\n \"description\": \"Retrieves a - list of resources, possibly filtered.\",\n \"id\": \"youtube.thirdPartyLinks.list\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API response will include. Supported - values are linkingToken, status, and snippet.\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"description\": \"Get - a third party link of the given type.\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"linkingToken\": {\n \"description\": \"Get a third - party link with the given linking token.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ }\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Type of the link to be deleted.\",\n - \ \"required\": true,\n \"enumDescriptions\": [\n - \ \"\",\n \"A link that is connecting (or about - to connect) a channel with a store on a merchandising platform in order to - enable retail commerce capabilities for that channel on YouTube.\"\n ]\n - \ },\n \"linkingToken\": {\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"description\": \"Do not use. Required for compatibility.\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"youtube.thirdPartyLinks.delete\"\n },\n - \ \"update\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API request and response will include. - Supported values are linkingToken, status, and snippet.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.update\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"PUT\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"description\": - \"Updates an existing resource.\"\n }\n }\n },\n \"comments\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more comment - resource properties that the API response will include.\",\n \"required\": - true\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"default\": \"20\",\n - \ \"minimum\": \"1\",\n \"maximum\": \"100\",\n \"format\": - \"uint32\"\n },\n \"parentId\": {\n \"type\": - \"string\",\n \"description\": \"Returns replies to the specified - comment. Note, currently YouTube features only one level of replies (ie replies - to top level comments). However replies to replies may be supported in the - future.\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": - \"Returns the comments with the given IDs for One Platform.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"textFormat\": {\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The requested text format for the returned comments.\",\n \"default\": - \"html\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ]\n - \ }\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.comments.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"response\": {\n \"$ref\": - \"CommentListResponse\"\n }\n },\n \"insert\": {\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": - true\n }\n },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.comments.insert\",\n \"request\": {\n - \ \"$ref\": \"Comment\"\n },\n \"path\": \"youtube/v3/comments\"\n - \ },\n \"markAsSpam\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.comments.markAsSpam\",\n \"path\": - \"youtube/v3/comments/markAsSpam\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Flags - the comments with the given IDs as spam in the caller's opinion.\"\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.comments.delete\",\n - \ \"path\": \"youtube/v3/comments\",\n \"flatPath\": \"youtube/v3/comments\"\n - \ },\n \"setModerationStatus\": {\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Sets the moderation status of one - or more comments.\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ],\n \"parameters\": - {\n \"moderationStatus\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Specifies the requested moderation status. - Note, comments can be in statuses, which are not available through this call. - For example, this call does not allow to mark a comment as 'likely spam'. - Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"banAuthor\": - {\n \"default\": \"false\",\n \"type\": \"boolean\",\n - \ \"description\": \"If set to true the author of the comment - gets added to the ban list. This means all future comments of the author will - autmomatically be rejected. Only valid in combination with STATUS_REJECTED.\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Modifies the moderation status of the - comments with the given IDs\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ }\n },\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\"\n },\n - \ \"update\": {\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.comments.update\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"path\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"required\": true,\n \"type\": \"string\"\n }\n - \ }\n }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.liveChatMessages.list\",\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"parameters\": - {\n \"profileImageSize\": {\n \"location\": \"query\",\n - \ \"maximum\": \"720\",\n \"minimum\": \"16\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"maxResults\": - {\n \"minimum\": \"200\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"maximum\": \"2000\",\n \"default\": - \"500\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n - \ },\n \"liveChatId\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"The id of the live chat for which comments should be returned.\",\n \"type\": - \"string\"\n },\n \"hl\": {\n \"description\": - \"Specifies the localization language in which the system messages should - be returned.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the liveChatComment resource parts that the - API response will include. Supported values are id and snippet.\",\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"LiveChatMessageListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.insert\"\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - chat message.\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"id\": \"youtube.liveChatMessages.delete\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\"\n }\n }\n },\n - \ \"captions\": {\n \"methods\": {\n \"delete\": {\n \"parameters\": - {\n \"onBehalfOf\": {\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.captions.delete\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"description\": - \"Deletes a resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/captions\",\n \"httpMethod\": \"DELETE\"\n },\n - \ \"download\": {\n \"flatPath\": \"youtube/v3/captions/{id}\",\n - \ \"parameters\": {\n \"tfmt\": {\n \"description\": - \"Convert the captions into this format. Supported options are sbv, srt, and - vtt.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"tlang\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"tlang is the language code; machine translate the captions into this language.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\"\n },\n \"id\": - {\n \"description\": \"The ID of the caption track to download, - required for One Platform.\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"path\"\n }\n },\n - \ \"useMediaDownloadService\": true,\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"supportsMediaDownload\": - true,\n \"description\": \"Downloads a caption track.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.captions.download\"\n - \ },\n \"list\": {\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/captions\",\n - \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"id\": \"youtube.captions.list\",\n \"parameters\": - {\n \"videoId\": {\n \"description\": \"Returns the - captions for the specified video.\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Returns the captions with the given IDs for - Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOf\": {\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"description\": - \"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.\"\n }\n - \ }\n },\n \"insert\": {\n \"id\": \"youtube.captions.insert\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"request\": {\n - \ \"$ref\": \"Caption\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"mediaUpload\": {\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/captions\"\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ }\n },\n \"maxSize\": \"104857600\",\n - \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"supportsMediaUpload\": - true,\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the caption - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n },\n \"sync\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\"\n }\n }\n },\n \"update\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"parameters\": {\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"sync\": {\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.captions.update\",\n \"path\": \"youtube/v3/captions\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"104857600\",\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"request\": - {\n \"$ref\": \"Caption\"\n }\n }\n }\n },\n - \ \"tests\": {\n \"methods\": {\n \"insert\": {\n \"request\": - {\n \"$ref\": \"TestItem\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"description\": \"POST method.\",\n \"id\": \"youtube.tests.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/tests\",\n \"flatPath\": - \"youtube/v3/tests\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"TestItem\"\n }\n - \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true\n }\n },\n \"description\": \"Inserts a - new stream for the authenticated user.\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"list\": - {\n \"description\": \"Retrieve the list of broadcasts associated - with the given channel.\",\n \"response\": {\n \"$ref\": - \"LiveBroadcastListResponse\"\n },\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"maxResults\": {\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"0\",\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"broadcastStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"location\": - \"query\",\n \"description\": \"Return broadcasts with a certain - status, e.g. active broadcasts.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ]\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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, status and statistics.\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"broadcastType\": {\n \"default\": - \"event\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"broadcastTypeFilterUnspecified\",\n \"all\",\n - \ \"event\",\n \"persistent\"\n ],\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"description\": \"Return only - broadcasts with the selected type.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Return - broadcasts with the given ids from Stubby or Apiary.\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveBroadcasts\"\n },\n \"transition\": {\n \"path\": - \"youtube/v3/liveBroadcasts/transition\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"description\": \"Transition a - broadcast to a given status.\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"Broadcast to transition.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"broadcastStatus\": - {\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"location\": \"query\",\n \"description\": - \"The status to which the broadcast is going to transition.\",\n \"type\": - \"string\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ]\n }\n },\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.transition\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/transition\"\n },\n \"insertCuepoint\": - {\n \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"parameterOrder\": [],\n \"request\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Insert cuepoints - in a broadcast\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Broadcast to insert ads to, or - equivalently `external_video_id` for internal use.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\"\n - \ },\n \"bind\": {\n \"description\": \"Bind a broadcast - to a stream.\",\n \"id\": \"youtube.liveBroadcasts.bind\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"streamId\": {\n \"type\": - \"string\",\n \"description\": \"Stream to bind, if not set unbind - the current one.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ },\n \"id\": {\n \"description\": \"Broadcast - to bind to the stream\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\"\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.liveBroadcasts.delete\",\n \"description\": - \"Delete a given broadcast.\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"Broadcast - to delete.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts\"\n },\n \"update\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Updates an existing broadcast for the authenticated user.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"id\": \"youtube.liveBroadcasts.update\",\n \"httpMethod\": - \"PUT\",\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\"\n }\n - \ }\n }\n },\n \"fullyEncodeReservedExpansion\": true,\n \"ownerDomain\": - \"google.com\",\n \"protocol\": \"rest\",\n \"auth\": {\n \"oauth2\": - {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n }\n - \ }\n }\n },\n \"revision\": \"20230220\",\n \"ownerName\": \"Google\",\n - \ \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"name\": \"youtube\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"title\": \"YouTube - Data API v3\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:40 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCJbWhhzrqHAGdIHuTxhyJIw&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"8cAXI87mxzVHbMi84BSSma5Qv-E\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"hy3UBjDLNLo2TVfViE-WOPe8TTE\",\n \"id\": \"UCJbWhhzrqHAGdIHuTxhyJIw\",\n - \ \"snippet\": {\n \"title\": \"kagiristwins- Shorts\",\n \"description\": - \"Hello Friends\",\n \"customUrl\": \"@tiktokut\",\n \"publishedAt\": - \"2021-09-18T16:34:15.404065Z\",\n \"thumbnails\": {\n \"default\": - {\n \"url\": \"https://yt3.ggpht.com/mhbrfDq4lFUdTBuz42WKBGxr7qRRTgYDENgbj-BWuMtyuze61GKl-NGPU8BMcsHj3ng_f5I7zg=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/mhbrfDq4lFUdTBuz42WKBGxr7qRRTgYDENgbj-BWuMtyuze61GKl-NGPU8BMcsHj3ng_f5I7zg=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/mhbrfDq4lFUdTBuz42WKBGxr7qRRTgYDENgbj-BWuMtyuze61GKl-NGPU8BMcsHj3ng_f5I7zg=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"kagiristwins- Shorts\",\n - \ \"description\": \"Hello Friends\"\n },\n \"country\": - \"KZ\"\n },\n \"brandingSettings\": {\n \"channel\": {\n - \ \"title\": \"kagiristwins- Shorts\",\n \"description\": - \"Hello Friends\",\n \"country\": \"KZ\"\n }\n }\n }\n - \ ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:41 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"servicePath\": \"\",\n \"schemas\": {\n \"ChannelProfileDetails\": - {\n \"properties\": {\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n },\n - \ \"channelUrl\": {\n \"description\": \"The channel's URL.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channels's avatar URL.\"\n }\n },\n \"id\": \"ChannelProfileDetails\",\n - \ \"type\": \"object\"\n },\n \"ChannelToStoreLinkDetails\": {\n - \ \"id\": \"ChannelToStoreLinkDetails\",\n \"properties\": {\n \"merchantId\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"Google Merchant Center id of the store.\"\n },\n \"storeName\": - {\n \"description\": \"Name of the store.\",\n \"type\": - \"string\"\n },\n \"storeUrl\": {\n \"description\": - \"Landing page of the store.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Information - specific to a store on a merchandising platform linked to a YouTube channel.\"\n - \ },\n \"SuperChatEventSnippet\": {\n \"properties\": {\n \"createdAt\": - {\n \"description\": \"The date and time when the event occurred.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"description\": \"The purchase amount, - in micros of the purchase currency. e.g., 1 is represented as 1000000.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"displayString\": {\n \"description\": \"A rendered string - that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). The - string is rendered for the given language.\",\n \"type\": \"string\"\n - \ },\n \"superStickerMetadata\": {\n \"$ref\": \"SuperStickerMetadata\",\n - \ \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\"\n },\n \"supporterDetails\": - {\n \"description\": \"Details about the supporter.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"messageType\": {\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"channelId\": {\n \"description\": - \"Channel id where the event occurred.\",\n \"type\": \"string\"\n - \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\"\n },\n \"commentText\": - {\n \"description\": \"The text contents of the comment left by the - user.\",\n \"type\": \"string\"\n },\n \"isSuperStickerEvent\": - {\n \"type\": \"boolean\",\n \"description\": \"True if - this event is a Super Sticker event.\"\n }\n },\n \"id\": - \"SuperChatEventSnippet\",\n \"type\": \"object\"\n },\n \"ThumbnailSetResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"default\": \"youtube#thumbnailSetResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of thumbnails.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": - \"ThumbnailSetResponse\"\n },\n \"LiveChatMessageAuthorDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"isChatSponsor\": - {\n \"description\": \"Whether the author is a sponsor of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"isChatOwner\": {\n \"description\": - \"Whether the author is the owner of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"displayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's display name.\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"isChatModerator\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a moderator - of the live chat.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube channel ID.\"\n },\n - \ \"isVerified\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author's identity has been verified by YouTube.\"\n }\n - \ },\n \"id\": \"LiveChatMessageAuthorDetails\"\n },\n \"PlaylistItemContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify a video. To retrieve the video resource, - set the id query parameter to this value in your API request.\"\n },\n - \ \"startAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\"\n },\n \"endAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\",\n - \ \"type\": \"string\"\n },\n \"videoPublishedAt\": - {\n \"description\": \"The date and time that the video was published - to YouTube.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"note\": {\n \"description\": \"A - user-generated note for this item.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"PlaylistItemContentDetails\"\n },\n \"MembershipsDurationAtLevel\": - {\n \"properties\": {\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\"\n },\n - \ \"level\": {\n \"description\": \"Pricing level ID.\",\n - \ \"type\": \"string\"\n },\n \"memberSince\": {\n \"type\": - \"string\",\n \"description\": \"The date and time when the user - became a continuous member for the given level.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"MembershipsDurationAtLevel\"\n },\n \"ActivityContentDetailsComment\": - {\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with the comment.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"id\": \"ActivityContentDetailsComment\",\n \"type\": - \"object\",\n \"description\": \"Information about a resource that received - a comment.\"\n },\n \"SearchResult\": {\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"SearchResultSnippet\",\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"default\": \"youtube#searchResult\"\n }\n },\n \"id\": - \"SearchResult\",\n \"description\": \"A search result contains information - about a YouTube video, channel, or playlist that matches the search parameters - specified in an API request. While a search result points to a uniquely identifiable - resource, like a video, it does not have its own persistent data.\",\n \"type\": - \"object\"\n },\n \"TokenPagination\": {\n \"id\": \"TokenPagination\",\n - \ \"properties\": {},\n \"description\": \"Stub token pagination - template to suppress results.\",\n \"type\": \"object\"\n },\n \"VideoPlayer\": - {\n \"id\": \"VideoPlayer\",\n \"description\": \"Player to be used - for a video playback.\",\n \"type\": \"object\",\n \"properties\": - {\n \"embedHeight\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\",\n - \ \"type\": \"string\"\n },\n \"embedWidth\": {\n \"format\": - \"int64\",\n \"description\": \"The embed width\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoGetRatingResponse\": {\n - \ \"id\": \"VideoGetRatingResponse\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#videoGetRatingResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"description\": \"A list of ratings - that match the request criteria.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"SubscriptionSnippet\": {\n \"description\": \"Basic details - about a subscription, including title, description and thumbnails of the subscribed - item.\",\n \"properties\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the subscriber's channel.\"\n },\n \"description\": - {\n \"description\": \"The subscription's details.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"description\": - \"Channel title for the channel that the subscription belongs to.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - subscription's title.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the subscription was - created.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"resourceId\": {\n \"description\": \"The id - object contains information about the channel that the user subscribed to.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"$ref\": \"ResourceId\"\n },\n - \ \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"SubscriptionSnippet\"\n - \ },\n \"Cuepoint\": {\n \"id\": \"Cuepoint\",\n \"type\": - \"object\",\n \"properties\": {\n \"insertionOffsetTimeMs\": {\n - \ \"type\": \"string\",\n \"description\": \"The time when - the cuepoint should be inserted by offset to the broadcast actual start time.\",\n - \ \"format\": \"int64\"\n },\n \"id\": {\n \"description\": - \"The identifier for cuepoint resource.\",\n \"type\": \"string\"\n - \ },\n \"walltimeMs\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The wall clock time at which the - cuepoint should be inserted. Only one of insertion_offset_time_ms and walltime_ms - may be set at a time.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"durationSecs\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The duration - of this cuepoint.\"\n },\n \"cueType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ]\n }\n },\n \"description\": - \"Note that there may be a 5-second end-point resolution issue. For instance, - if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\"\n },\n \"Comment\": - {\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#comment\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the comment.\",\n \"$ref\": \"CommentSnippet\"\n }\n - \ },\n \"id\": \"Comment\",\n \"description\": \"A *comment* - represents a single YouTube comment.\",\n \"type\": \"object\"\n },\n - \ \"ChannelLocalization\": {\n \"id\": \"ChannelLocalization\",\n \"properties\": - {\n \"description\": {\n \"description\": \"The localized - strings for channel's description.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"description\": \"The localized strings for - channel's title.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Channel localization - setting\"\n },\n \"TestItem\": {\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"gaia\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n }\n },\n \"id\": \"TestItem\"\n },\n \"Subscription\": - {\n \"id\": \"Subscription\",\n \"description\": \"A *subscription* - resource contains information about a YouTube user subscription. A subscription - notifies a user when new videos are added to a channel or when another user - takes one of several actions on YouTube, such as uploading a video, rating - a video, or commenting on a video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the subscription.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n \"default\": - \"youtube#subscription\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\",\n \"$ref\": - \"SubscriptionSnippet\"\n },\n \"subscriberSnippet\": {\n \"description\": - \"The subscriberSnippet object contains basic details about the subscriber.\",\n - \ \"$ref\": \"SubscriptionSubscriberSnippet\"\n },\n \"contentDetails\": - {\n \"$ref\": \"SubscriptionContentDetails\",\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\"\n - \ }\n }\n },\n \"CaptionSnippet\": {\n \"properties\": - {\n \"isDraft\": {\n \"description\": \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n },\n - \ \"language\": {\n \"description\": \"The language of the - caption track. The property value is a BCP-47 language tag.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"isLarge\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the caption track - uses large text for the vision-impaired. The default value is false.\"\n },\n - \ \"trackKind\": {\n \"enum\": [\n \"standard\",\n - \ \"ASR\",\n \"forced\"\n ],\n \"description\": - \"The caption track's type.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"name\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The name of - the caption track. The name is intended to be visible to the user as an option - during playback.\"\n },\n \"isAutoSynced\": {\n \"description\": - \"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.\",\n \"type\": \"boolean\"\n },\n \"status\": - {\n \"description\": \"The caption track's status.\",\n \"enum\": - [\n \"serving\",\n \"syncing\",\n \"failed\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"isCC\": {\n \"description\": \"Indicates whether the track - contains closed captions for the deaf and hard of hearing. The default value - is false.\",\n \"type\": \"boolean\"\n },\n \"failureReason\": - {\n \"description\": \"The reason that YouTube failed to process - the caption track. This property is only present if the state property's value - is failed.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ]\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video associated with the caption track. @mutable youtube.captions.insert\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"lastUpdated\": {\n \"description\": - \"The date and time when the caption track was last updated.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"isEasyReader\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n - \ },\n \"audioTrackType\": {\n \"enum\": [\n \"unknown\",\n - \ \"primary\",\n \"commentary\",\n \"descriptive\"\n - \ ],\n \"description\": \"The type of audio track associated - with the caption track.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - a caption track, such as its language and name.\",\n \"id\": \"CaptionSnippet\",\n - \ \"type\": \"object\"\n },\n \"ThirdPartyLinkStatus\": {\n \"description\": - \"The third-party link status object contains information about the status - of the link.\",\n \"type\": \"object\",\n \"id\": \"ThirdPartyLinkStatus\",\n - \ \"properties\": {\n \"linkStatus\": {\n \"enum\": [\n - \ \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n }\n },\n \"ChannelSection\": {\n \"type\": - \"object\",\n \"id\": \"ChannelSection\",\n \"properties\": {\n - \ \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n - \ \"description\": \"The targeting object contains basic targeting - settings about the channel section.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n \"default\": - \"youtube#channelSection\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\",\n \"$ref\": \"ChannelSectionSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel section.\",\n \"type\": \"string\"\n - \ },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n },\n \"description\": - \"Localizations for different languages\",\n \"type\": \"object\"\n - \ }\n }\n },\n \"MemberListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"pageInfo\": {\n - \ \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"description\": \"A list of members - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Member\"\n },\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#memberListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n }\n - \ },\n \"id\": \"MemberListResponse\"\n },\n \"ActivityListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#activityListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Activity\"\n },\n \"type\": \"array\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ActivityListResponse\"\n - \ },\n \"ThumbnailDetails\": {\n \"description\": \"Internal representation - of thumbnails for a YouTube resource.\",\n \"id\": \"ThumbnailDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"standard\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The standard - quality image for this resource.\"\n },\n \"maxres\": {\n \"description\": - \"The maximum resolution quality image for this resource.\",\n \"$ref\": - \"Thumbnail\"\n },\n \"medium\": {\n \"description\": - \"The medium quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"default\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The default image for this resource.\"\n },\n \"high\": {\n - \ \"description\": \"The high quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n }\n }\n },\n \"ActivityContentDetailsBulletin\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource associated with a bulletin post. - @mutable youtube.activities.insert\"\n }\n },\n \"description\": - \"Details about a channel bulletin post.\",\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"type\": \"object\"\n },\n \"I18nLanguageSnippet\": {\n \"type\": - \"object\",\n \"id\": \"I18nLanguageSnippet\",\n \"properties\": - {\n \"name\": {\n \"description\": \"The human-readable name - of the language in the language itself.\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"description\": \"A short BCP-47 - code that uniquely identifies a language.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Basic details about an i18n - language, such as language code and human-readable name.\"\n },\n \"LiveChatTextMessageDetails\": - {\n \"id\": \"LiveChatTextMessageDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"messageText\": {\n \"description\": - \"The user's message.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatMessageSnippet\": {\n \"properties\": {\n \"type\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\",\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ]\n - \ },\n \"hasDisplayContent\": {\n \"description\": \"Whether - the message has display content that should be displayed to users.\",\n \"type\": - \"boolean\"\n },\n \"userBannedDetails\": {\n \"$ref\": - \"LiveChatUserBannedMessageDetails\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"displayMessage\": - {\n \"description\": \"Contains a string that can be displayed to - the user. If this field is not present the message is silent, at the moment - only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\",\n \"type\": - \"string\"\n },\n \"authorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the user that authored - this message, this field is not always filled. textMessageEvent - the user - that wrote the message fanFundingEvent - the user that funded the broadcast - newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n },\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n },\n \"textMessageDetails\": - {\n \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\",\n \"$ref\": \"LiveChatTextMessageDetails\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time when the message was orignally published.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"superChatDetails\": - {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"superStickerDetails\": {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n - \ \"description\": \"Details about the Super Sticker event, this is - only set if the type is 'superStickerEvent'.\"\n },\n \"liveChatId\": - {\n \"type\": \"string\"\n },\n \"newSponsorDetails\": - {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": - \"Details about the New Member Announcement event, this is only set if the - type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term - for \\\"sponsor\\\".\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"description\": \"Details about the Gift Membership Received - event, this is only set if the type is 'giftMembershipReceivedEvent'.\",\n - \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n - \ \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"fanFundingEventDetails\": {\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\",\n - \ \"$ref\": \"LiveChatFanFundingEventDetails\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatMessageSnippet\",\n \"description\": - \"Next ID: 33\"\n },\n \"VideoSuggestions\": {\n \"id\": \"VideoSuggestions\",\n - \ \"properties\": {\n \"processingHints\": {\n \"description\": - \"A list of suggestions that may improve YouTube's ability to process the - video.\",\n \"items\": {\n \"enumDescriptions\": [\n \"The - MP4 file is not streamable, this will slow down the processing. MOOV atom - was not found at the beginning of the file.\",\n \"Probably a - better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ]\n },\n \"type\": \"array\"\n },\n \"editorSuggestions\": - {\n \"items\": {\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ]\n },\n \"type\": \"array\",\n \"description\": - \"A list of video editing operations that might improve the video quality - or playback experience of the uploaded video.\"\n },\n \"processingWarnings\": - {\n \"description\": \"A list of reasons why YouTube may have difficulty - transcoding the uploaded video or that might result in an erroneous transcoding. - These warnings are generated before YouTube actually processes the uploaded - video file. In addition, they identify issues that are unlikely to cause the - video processing to fail but that might cause problems such as sync issues, - video artifacts, or a missing audio track.\",\n \"items\": {\n \"enum\": - [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ]\n },\n \"type\": \"array\"\n },\n \"processingErrors\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"File contains - audio only (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Movie project file (e.g., Microsoft Windows Movie - Maker project).\",\n \"Other non-video file.\",\n \"Document - or text file (e.g., MS Word document).\",\n \"An archive file - (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout - type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n },\n \"description\": \"A list of errors - that will prevent YouTube from successfully processing the uploaded video - video. These errors indicate that, regardless of the video's current processing - status, eventually, that status will almost certainly be failed.\"\n },\n - \ \"tagSuggestions\": {\n \"items\": {\n \"$ref\": - \"VideoSuggestionsTagSuggestion\"\n },\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\",\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Specifies suggestions on how to improve - video content, including encoding hints, tag suggestions, and editor suggestions.\"\n - \ },\n \"I18nRegionListResponse\": {\n \"id\": \"I18nRegionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"default\": \"youtube#i18nRegionListResponse\"\n },\n \"items\": - {\n \"description\": \"A list of regions where YouTube is available. - In this map, the i18n region ID is the map key, and its value is the corresponding - i18nRegion resource.\",\n \"items\": {\n \"$ref\": \"I18nRegion\"\n - \ },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ThirdPartyLinkSnippet\": {\n \"properties\": - {\n \"channelToStoreLink\": {\n \"description\": \"Information - specific to a link between a channel and a store on a merchandising platform.\",\n - \ \"$ref\": \"ChannelToStoreLinkDetails\"\n },\n \"type\": - {\n \"description\": \"Type of the link named after the entities - that are being linked.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel with - a store on a merchandising platform in order to enable retail commerce capabilities - for that channel on YouTube.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ]\n }\n },\n \"id\": \"ThirdPartyLinkSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic information about - a third party account link, including its type and type-specific information.\"\n - \ },\n \"ActivityContentDetailsSubscription\": {\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\"\n }\n },\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"description\": \"Information about a channel that a user subscribed - to.\",\n \"type\": \"object\"\n },\n \"LiveChatSuperChatDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"currency\": - {\n \"description\": \"The currency in which the purchase was made.\",\n - \ \"type\": \"string\"\n },\n \"amountMicros\": {\n - \ \"description\": \"The amount purchased by the user, in micros (1,750,000 - micros = 1.75).\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"tier\": {\n \"description\": \"The - tier in which the amount belongs. Lower amounts belong to lower tiers. The - lowest tier is 1.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the user to this Super Chat - event.\"\n },\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n }\n },\n \"id\": - \"LiveChatSuperChatDetails\"\n },\n \"VideoAbuseReport\": {\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n },\n - \ \"reasonId\": {\n \"type\": \"string\",\n \"description\": - \"The high-level, or primary, reason that the content is abusive. The value - is an abuse report reason ID.\"\n },\n \"secondaryReasonId\": - {\n \"type\": \"string\",\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\"\n },\n \"comments\": {\n \"description\": - \"Additional comments regarding the abuse report.\",\n \"type\": - \"string\"\n },\n \"language\": {\n \"type\": \"string\",\n - \ \"description\": \"The language that the content was viewed in.\"\n - \ }\n },\n \"id\": \"VideoAbuseReport\",\n \"type\": - \"object\"\n },\n \"MembershipsLevelListResponse\": {\n \"id\": - \"MembershipsLevelListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#membershipsLevelListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"description\": \"A list of pricing levels offered by a creator - to the fans.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"$ref\": \"MembershipsLevel\"\n }\n }\n }\n - \ },\n \"VideoContentDetailsRegionRestriction\": {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"blocked\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of region - codes that identify countries where the video is blocked. If this property - is present and a country is not listed in its value, then the video is viewable - in that country. If this property is present and contains an empty list, the - video is viewable in all countries.\"\n },\n \"allowed\": {\n - \ \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n }\n - \ },\n \"LiveChatMembershipGiftingDetails\": {\n \"properties\": - {\n \"giftMembershipsLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\"\n },\n - \ \"giftMembershipsCount\": {\n \"format\": \"int32\",\n \"type\": - \"integer\",\n \"description\": \"The number of gift memberships - purchased by the user.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n \"LiveBroadcast\": - {\n \"id\": \"LiveBroadcast\",\n \"type\": \"object\",\n \"description\": - \"A *liveBroadcast* resource represents an event that will be streamed, via - live video, on YouTube.\",\n \"properties\": {\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n - \ },\n \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n - \ \"description\": \"The status object contains information about - the event's status.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveBroadcastSnippet\",\n \"description\": - \"The snippet object contains basic details about the event, including its - title, description, start time, and end time.\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveBroadcast\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"type\": \"string\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains info about the event's current stats. These - include concurrent viewers and total chat count. Statistics can change (in - either direction) during the lifetime of an event. Statistics are only returned - while the event is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the broadcast.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n }\n }\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"description\": \"A single tag suggestion with it's relevance information.\",\n - \ \"properties\": {\n \"tag\": {\n \"description\": \"The - keyword tag suggested for the video.\",\n \"type\": \"string\"\n - \ },\n \"categoryRestricts\": {\n \"description\": \"A - set of video categories for which the tag is relevant. You can use this information - to display appropriate tag suggestions based on the video category that the - video uploader associates with the video. By default, tag suggestions are - relevant for all categories if there are no restricts defined for the keyword.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"id\": \"VideoSuggestionsTagSuggestion\",\n - \ \"type\": \"object\"\n },\n \"PlaylistListResponse\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistListResponse\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of playlists that match the - request criteria\",\n \"items\": {\n \"$ref\": \"Playlist\"\n - \ }\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#playlistListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n }\n }\n },\n \"LiveChatMessageListResponse\": {\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"type\": \"array\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"offlineAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the underlying stream went offline.\",\n \"format\": - \"date-time\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatMessageListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n - \ },\n \"pollingIntervalMillis\": {\n \"description\": - \"The amount of time the client should wait before polling again.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageListResponse\"\n },\n \"SearchListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n - \ \"default\": \"youtube#searchListResponse\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"description\": \"Pagination information - for token pagination.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SearchResult\"\n }\n },\n \"regionCode\": - {\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n }\n },\n \"id\": \"SearchListResponse\"\n - \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"properties\": - {\n \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the Level at which the viever is a member. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\"\n },\n \"memberMonth\": {\n \"format\": - \"uint32\",\n \"description\": \"The total amount of months (rounded - up) the viewer has been a member that granted them this Member Milestone Chat. - This is the same number of months as is being displayed to YouTube users.\",\n - \ \"type\": \"integer\"\n },\n \"userComment\": {\n - \ \"description\": \"The comment added by the member to this Member - Milestone Chat. This field is empty for messages without a comment from the - member.\",\n \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"properties\": {\n \"playlistId\": {\n \"description\": - \"The value that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"playlistItemId\": {\n \"type\": - \"string\",\n \"description\": \"ID of the item within the playlist.\"\n - \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information about - the resource that was added to the playlist.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Information about a new playlist item.\",\n - \ \"id\": \"ActivityContentDetailsPlaylistItem\"\n },\n \"ChannelSectionTargeting\": - {\n \"description\": \"ChannelSection targeting setting.\",\n \"properties\": - {\n \"countries\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The country the channel section is targeting.\"\n },\n \"regions\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The region the channel - section is targeting.\"\n },\n \"languages\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The language the channel section is targeting.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelSectionTargeting\"\n - \ },\n \"CommentThreadSnippet\": {\n \"description\": \"Basic details - about a comment thread.\",\n \"id\": \"CommentThreadSnippet\",\n \"properties\": - {\n \"videoId\": {\n \"description\": \"The ID of the video - the comments refer to, if any. No video_id implies a channel discussion comment.\",\n - \ \"type\": \"string\"\n },\n \"totalReplyCount\": {\n - \ \"format\": \"uint32\",\n \"description\": \"The total - number of replies (not including the top level comment).\",\n \"type\": - \"integer\"\n },\n \"isPublic\": {\n \"description\": - \"Whether the thread (and therefore all its comments) is visible to all YouTube - users.\",\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"topLevelComment\": {\n \"$ref\": - \"Comment\",\n \"description\": \"The top level comment of this thread.\"\n - \ },\n \"canReply\": {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelTopicDetails\": - {\n \"description\": \"Freebase topic information related to the channel.\",\n - \ \"type\": \"object\",\n \"id\": \"ChannelTopicDetails\",\n \"properties\": - {\n \"topicCategories\": {\n \"type\": \"array\",\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicIds\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Freebase - topic IDs associated with the channel. You can retrieve information about - each topic using the Freebase Topic API.\"\n }\n }\n },\n \"VideoLiveStreamingDetails\": - {\n \"properties\": {\n \"concurrentViewers\": {\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast is scheduled to begin.\"\n - \ },\n \"actualStartTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The time that - the broadcast actually started. This value will not be available until the - broadcast begins.\"\n },\n \"activeLiveChatId\": {\n \"description\": - \"The ID of the currently active live chat attached to this video. This field - is filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\",\n \"type\": \"string\"\n },\n \"actualEndTime\": - {\n \"description\": \"The time that the broadcast actually ended. - This value will not be available until the broadcast is over.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"scheduledEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast is scheduled to end. - If the value is empty or the property is not present, then the broadcast is - scheduled to contiue indefinitely.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoLiveStreamingDetails\",\n \"description\": - \"Details about the live streaming metadata.\"\n },\n \"ChannelSectionListResponse\": - {\n \"id\": \"ChannelSectionListResponse\",\n \"properties\": {\n - \ \"kind\": {\n \"default\": \"youtube#channelSectionListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"description\": \"A list of ChannelSections - that match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n \"type\": - \"object\",\n \"description\": \"Details about a resource which is being - promoted.\",\n \"properties\": {\n \"customCtaButtonText\": {\n - \ \"description\": \"The custom call-to-action button text. If specified, - it will override the default button text for the cta_type.\",\n \"type\": - \"string\"\n },\n \"clickTrackingUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user clicked through on this promoted item.\"\n },\n - \ \"forecastingUrl\": {\n \"type\": \"array\",\n \"description\": - \"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.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n },\n \"descriptionText\": {\n \"description\": - \"The text description to accompany the promoted item.\",\n \"type\": - \"string\"\n },\n \"creativeViewUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\",\n \"type\": \"string\"\n },\n \"destinationUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should direct the user to, if the user chooses to visit the advertiser's - website.\"\n },\n \"adTag\": {\n \"description\": \"The - URL the client should fetch to request a promoted item.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\"\n },\n \"ctaType\": {\n \"enum\": - [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\"\n },\n \"impressionUrl\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The list of impression URLs. The client should - ping all of these URLs to indicate that the user was shown this promoted item.\"\n - \ }\n }\n },\n \"VideoListResponse\": {\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Video\"\n },\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"default\": \"youtube#videoListResponse\"\n }\n },\n - \ \"id\": \"VideoListResponse\",\n \"type\": \"object\"\n },\n - \ \"LiveStreamListResponse\": {\n \"id\": \"LiveStreamListResponse\",\n - \ \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStreamListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"description\": \"A list of live streams that match - the request criteria.\",\n \"type\": \"array\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ChannelConversionPings\": {\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"properties\": {\n \"pings\": - {\n \"type\": \"array\",\n \"description\": \"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.\",\n - \ \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ }\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelConversionPings\"\n },\n \"LiveChatSuperStickerDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made.\"\n },\n \"tier\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n },\n \"amountDisplayString\": {\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"type\": \"string\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"format\": \"uint64\"\n }\n },\n \"id\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"ActivityContentDetailsLike\": {\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the rated resource.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"Information about a resource that received a positive - (like) rating.\"\n },\n \"InvideoBranding\": {\n \"description\": - \"LINT.IfChange Describes an invideo branding.\",\n \"id\": \"InvideoBranding\",\n - \ \"properties\": {\n \"imageUrl\": {\n \"description\": - \"The url of the uploaded image. Only used in apiary to api communication.\",\n - \ \"type\": \"string\"\n },\n \"position\": {\n \"description\": - \"The spatial position within the video where the branding watermark will - be displayed.\",\n \"$ref\": \"InvideoPosition\"\n },\n \"targetChannelId\": - {\n \"description\": \"The channel to which this branding links. - If not present it defaults to the current channel.\",\n \"type\": - \"string\"\n },\n \"imageBytes\": {\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"format\": \"byte\",\n \"type\": \"string\"\n },\n - \ \"timing\": {\n \"$ref\": \"InvideoTiming\",\n \"description\": - \"The temporal position within the video where watermark will be displayed.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LanguageTag\": - {\n \"id\": \"LanguageTag\",\n \"type\": \"object\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"ActivityContentDetailsFavorite\": {\n \"id\": \"ActivityContentDetailsFavorite\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"description\": \"Information about a video that was marked - as a favorite video.\",\n \"type\": \"object\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"Caption\": {\n \"description\": - \"A *caption* resource represents a YouTube caption track. A caption track - is associated with exactly one YouTube video.\",\n \"properties\": {\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"default\": \"youtube#caption\"\n },\n \"snippet\": - {\n \"$ref\": \"CaptionSnippet\",\n \"description\": \"The - snippet object contains basic details about the caption.\"\n },\n \"id\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the caption track.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"Caption\",\n - \ \"type\": \"object\"\n },\n \"PlaylistItemSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist - item is in.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"position\": {\n \"description\": \"The order - in which the item appears in the playlist. The value uses a zero-based index, - so the first item has a position of 0, the second item has a position of 1, - and so forth.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n },\n \"description\": {\n \"description\": - \"The item's description.\",\n \"type\": \"string\"\n },\n - \ \"channelTitle\": {\n \"type\": \"string\",\n \"description\": - \"Channel title for the channel that the playlist item belongs to.\"\n },\n - \ \"videoOwnerChannelTitle\": {\n \"description\": \"Channel - title for the channel this video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the user that added the item - to the playlist.\"\n },\n \"videoOwnerChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel id for the channel this - video belongs to.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The item's title.\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"A map of thumbnail images associated with the playlist item. 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.\"\n },\n - \ \"resourceId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that is included in the playlist as the playlist item.\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the item - was added to the playlist.\"\n }\n },\n \"id\": \"PlaylistItemSnippet\",\n - \ \"description\": \"Basic details about a playlist, including title, - description and thumbnails. Basic details of a YouTube Playlist item provided - by the author. Next ID: 15\"\n },\n \"AccessPolicy\": {\n \"description\": - \"Rights management policy for YouTube resources.\",\n \"type\": \"object\",\n - \ \"id\": \"AccessPolicy\",\n \"properties\": {\n \"allowed\": - {\n \"description\": \"The value of allowed indicates whether the - access to the policy is allowed or denied by default.\",\n \"type\": - \"boolean\"\n },\n \"exception\": {\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"type\": \"array\"\n }\n }\n },\n - \ \"PageInfo\": {\n \"properties\": {\n \"totalResults\": {\n - \ \"type\": \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The total number of results in the result set.\"\n },\n \"resultsPerPage\": - {\n \"description\": \"The number of results included in the API - response.\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"PageInfo\",\n - \ \"description\": \"Paging details for lists of resources, including - total number of items available and number of resources returned in a single - page.\"\n },\n \"PlaylistContentDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"PlaylistContentDetails\",\n \"properties\": {\n \"itemCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n }\n },\n \"InvideoPosition\": - {\n \"properties\": {\n \"cornerPosition\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"topLeft\",\n - \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n - \ ],\n \"description\": \"Describes in which corner of the - video the visual widget will appear.\"\n },\n \"type\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\"\n - \ ],\n \"enum\": [\n \"corner\"\n ],\n - \ \"description\": \"Defines the position type.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"InvideoPosition\",\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\"\n - \ },\n \"CdnSettings\": {\n \"properties\": {\n \"resolution\": - {\n \"description\": \"The resolution of the inbound video data.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"240p\",\n \"360p\",\n \"480p\",\n - \ \"720p\",\n \"1080p\",\n \"1440p\",\n \"2160p\",\n - \ \"variable\"\n ]\n },\n \"frameRate\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"description\": - \"The frame rate of the inbound video data.\",\n \"type\": \"string\"\n - \ },\n \"ingestionType\": {\n \"description\": \" The - method or protocol used to transmit the video stream.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"enum\": [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ]\n },\n \"format\": {\n \"description\": - \"The format of the video stream that you are sending to Youtube. \",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"ingestionInfo\": {\n - \ \"description\": \"The ingestionInfo object contains information - that YouTube provides that you need to transmit your RTMP or HTTP stream to - YouTube.\",\n \"$ref\": \"IngestionInfo\"\n }\n },\n - \ \"description\": \"Brief description of the live stream cdn settings.\",\n - \ \"id\": \"CdnSettings\",\n \"type\": \"object\"\n },\n \"CommentThread\": - {\n \"description\": \"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.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#commentThread\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThread\\\".\"\n },\n \"replies\": - {\n \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\",\n \"$ref\": - \"CommentThreadReplies\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"CommentThreadSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment thread and also the top level comment.\"\n }\n },\n - \ \"id\": \"CommentThread\"\n },\n \"LiveChatBanSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"liveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The chat this ban is pertinent to.\"\n - \ },\n \"banDurationSeconds\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The duration - of a ban, only filled if the ban has type TEMPORARY.\"\n },\n \"type\": - {\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"description\": \"The - type of ban.\",\n \"enumDescriptions\": [\n \"An invalid - ban type.\",\n \"A permanent ban.\",\n \"A temporary - ban.\"\n ],\n \"type\": \"string\"\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n }\n },\n \"id\": - \"LiveChatBanSnippet\"\n },\n \"PlaylistStatus\": {\n \"id\": \"PlaylistStatus\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The playlist's privacy status.\"\n }\n - \ }\n },\n \"Member\": {\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#member\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"MemberSnippet\",\n \"description\": \"The snippet object contains - basic details about the member.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"description\": \"A *member* resource represents a member - for a YouTube channel. A member provides recurring monetary support to a creator - and receives special benefits.\",\n \"type\": \"object\",\n \"id\": - \"Member\"\n },\n \"LiveBroadcastStatus\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveBroadcastStatus\",\n \"description\": \"Live broadcast - state.\",\n \"properties\": {\n \"liveBroadcastPriority\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"enumDescriptions\": [\n \"\",\n \"Low - priority broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ]\n },\n \"recordingStatus\": {\n \"enum\": - [\n \"liveBroadcastRecordingStatusUnspecified\",\n \"notRecording\",\n - \ \"recording\",\n \"recorded\"\n ],\n \"type\": - \"string\",\n \"description\": \"The broadcast's recording status.\",\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"The recording has not yet been started.\",\n \"The - recording is currently on.\",\n \"The recording is completed, and - cannot be started again.\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"This field - will be set to True if the creator declares the broadcast to be kids only: - go/live-cw-work.\"\n },\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"lifeCycleStatus\": {\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete - settings\",\n \"Visible only to partner, may need special UI treatment\",\n - \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n - \ \"The broadcast is finished.\",\n \"This broadcast - was removed by admin action\",\n \"Transition into TESTING has - been requested\",\n \"Transition into LIVE has been requested\"\n - \ ],\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The broadcast's - status. The status can be updated using the API's liveBroadcasts.transition - method.\"\n },\n \"madeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the broadcast is made for kids or not, - decided by YouTube instead of the creator. This field is read only.\"\n }\n - \ }\n },\n \"VideoStatus\": {\n \"description\": \"Basic details - about a video category, such as its localized title. Next Id: 18\",\n \"properties\": - {\n \"publicStatsViewable\": {\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n },\n \"uploadStatus\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ],\n \"description\": \"The status - of the uploaded video.\",\n \"enumDescriptions\": [\n \"Video - has been uploaded but not processed yet.\",\n \"Video has been - successfully processed.\",\n \"Processing has failed. See FailureReason.\",\n - \ \"Video has been rejected. See RejectionReason.\",\n \"Video - has been deleted.\"\n ]\n },\n \"privacyStatus\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The video's privacy status.\"\n },\n \"rejectionReason\": - {\n \"type\": \"string\",\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\"\n - \ },\n \"embeddable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value indicates if the video can be embedded - on another website. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"publishAt\": {\n \"description\": \"The date - and time when the video is scheduled to publish. It can be set only if the - privacy status of the video is private..\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"license\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"failureReason\": - {\n \"description\": \"This value explains why a video failed to - upload. This property is only present if the uploadStatus property indicates - that the upload failed.\",\n \"type\": \"string\",\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ],\n \"enumDescriptions\": [\n \"Unable to convert - video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ]\n }\n - \ },\n \"id\": \"VideoStatus\",\n \"type\": \"object\"\n },\n - \ \"GeoPoint\": {\n \"type\": \"object\",\n \"id\": \"GeoPoint\",\n - \ \"description\": \"Geographical coordinates of a point, in WGS84.\",\n - \ \"properties\": {\n \"altitude\": {\n \"type\": \"number\",\n - \ \"format\": \"double\",\n \"description\": \"Altitude above - the reference ellipsoid, in meters.\"\n },\n \"latitude\": {\n - \ \"description\": \"Latitude in degrees.\",\n \"type\": - \"number\",\n \"format\": \"double\"\n },\n \"longitude\": - {\n \"format\": \"double\",\n \"type\": \"number\",\n \"description\": - \"Longitude in degrees.\"\n }\n }\n },\n \"VideoStatistics\": - {\n \"id\": \"VideoStatistics\",\n \"properties\": {\n \"viewCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of times the video has been viewed.\",\n \"format\": \"uint64\"\n - \ },\n \"commentCount\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of comments for the video.\",\n \"format\": - \"uint64\"\n },\n \"likeCount\": {\n \"description\": - \"The number of users who have indicated that they liked the video by giving - it a positive rating.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"dislikeCount\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of users who have indicated that they disliked the video by giving it a negative - rating.\"\n },\n \"favoriteCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of users who currently have the video marked as a favorite video.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Statistics - about the video, such as the number of times the video was viewed or liked.\"\n - \ },\n \"SubscriptionSubscriberSnippet\": {\n \"description\": \"Basic - details about a subscription's subscriber including title, description, channel - ID and thumbnails.\",\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"properties\": {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"Thumbnails for this subscriber.\"\n },\n - \ \"channelId\": {\n \"description\": \"The channel ID of the - subscriber.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The description of the subscriber.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - title of the subscriber.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"MembershipsDuration\": {\n \"properties\": - {\n \"memberTotalDurationMonths\": {\n \"format\": \"int32\",\n - \ \"type\": \"integer\",\n \"description\": \"The cumulative - time the user has been a member across all levels in complete months (the - time is rounded down to the nearest integer).\"\n },\n \"memberSince\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the user became a continuous member across all levels.\"\n }\n - \ },\n \"id\": \"MembershipsDuration\",\n \"type\": \"object\"\n - \ },\n \"VideoRating\": {\n \"description\": \"Basic details about - rating of a video.\",\n \"id\": \"VideoRating\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"rating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"description\": \"Rating of a video.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n }\n }\n },\n - \ \"ActivityContentDetailsSocial\": {\n \"type\": \"object\",\n \"description\": - \"Details about a social network post.\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\",\n \"$ref\": - \"ResourceId\"\n },\n \"referenceUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL of the social network post.\"\n - \ },\n \"imageUrl\": {\n \"type\": \"string\",\n \"description\": - \"An image of the post's author.\"\n },\n \"author\": {\n \"type\": - \"string\",\n \"description\": \"The author of the social network - post.\"\n },\n \"type\": {\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The name of the social network.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"id\": \"ActivityContentDetailsSocial\"\n - \ },\n \"Video\": {\n \"id\": \"Video\",\n \"properties\": - {\n \"suggestions\": {\n \"description\": \"The suggestions - object encapsulates suggestions that identify opportunities to improve the - video quality or the metadata for the uploaded video. This data can only be - retrieved by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n - \ },\n \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video, such as its title, description, and category.\"\n },\n \"fileDetails\": - {\n \"$ref\": \"VideoFileDetails\",\n \"description\": \"The - fileDetails object encapsulates information about the video file that was - uploaded to YouTube, including the file's resolution, duration, audio and - video codecs, stream bitrates, and more. This data can only be retrieved by - the video owner.\"\n },\n \"recordingDetails\": {\n \"$ref\": - \"VideoRecordingDetails\",\n \"description\": \"The recordingDetails - object encapsulates information about the location, date and address where - the video was recorded.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"VideoContentDetails\",\n \"description\": \"The contentDetails - object contains information about the video content, including the length - of the video and its aspect ratio.\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"description\": \"The localizations - object contains localized versions of the basic details about the video, such - as its title and description.\",\n \"additionalProperties\": {\n - \ \"$ref\": \"VideoLocalization\"\n }\n },\n \"monetizationDetails\": - {\n \"$ref\": \"VideoMonetizationDetails\",\n \"description\": - \"The monetizationDetails object encapsulates information about the monetization - status of the video.\"\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the video - in an embedded player.\",\n \"$ref\": \"VideoPlayer\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"default\": \"youtube#video\"\n },\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"projectDetails\": - {\n \"$ref\": \"VideoProjectDetails\",\n \"description\": - \"The projectDetails object contains information about the project specific - video metadata. b/157517979: This part was never populated after it was added. - However, it sees non-zero traffic because there is generated client code in - the wild that refers to it [1]. We keep this field and do NOT remove it because - otherwise V3 would return an error when this part gets requested [2]. [1] - https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n }\n },\n \"status\": {\n \"$ref\": - \"VideoStatus\",\n \"description\": \"The status object contains - information about the video's uploading, processing, and privacy statuses.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"processingDetails\": - {\n \"$ref\": \"VideoProcessingDetails\",\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\"\n - \ },\n \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n - \ \"description\": \"Age restriction details related to a video. This - data can only be retrieved by the video owner.\"\n },\n \"topicDetails\": - {\n \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object contains statistics about the video.\",\n \"$ref\": \"VideoStatistics\"\n - \ }\n },\n \"description\": \"A *video* resource represents - a YouTube video.\",\n \"type\": \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"description\": \"Video processing progress and completion time - estimate.\",\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"properties\": {\n \"partsTotal\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"An estimate - of the total number of parts that need to be processed for the video. The - number may be updated with more precise estimates while YouTube processes - the video.\"\n },\n \"timeLeftMs\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"An estimate - of the amount of time, in millseconds, that YouTube needs to finish processing - the video.\"\n },\n \"partsProcessed\": {\n \"type\": - \"string\",\n \"description\": \"The number of parts of the video - that YouTube has already processed. You can estimate the percentage of the - video that YouTube has already processed by calculating: 100 * parts_processed - / parts_total Note that since the estimated number of parts could increase - without a corresponding increase in the number of parts that have already - been processed, it is possible that the calculated progress could periodically - decrease while YouTube processes a video.\",\n \"format\": \"uint64\"\n - \ }\n }\n },\n \"ChannelStatus\": {\n \"id\": \"ChannelStatus\",\n - \ \"description\": \"JSON template for the status part of a channel.\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"description\": \"Privacy status of the channel.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"longUploadsStatus\": {\n \"description\": \"The - long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"isLinked\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n },\n \"madeForKids\": {\n \"type\": - \"boolean\"\n }\n },\n \"type\": \"object\"\n },\n \"ChannelBrandingSettings\": - {\n \"description\": \"Branding properties of a YouTube channel.\",\n - \ \"id\": \"ChannelBrandingSettings\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"channel\": {\n \"$ref\": \"ChannelSettings\",\n - \ \"description\": \"Branding properties for the channel view.\"\n - \ },\n \"image\": {\n \"description\": \"Branding properties - for branding images.\",\n \"$ref\": \"ImageSettings\"\n },\n - \ \"watch\": {\n \"description\": \"Branding properties for - the watch page.\",\n \"$ref\": \"WatchSettings\"\n },\n \"hints\": - {\n \"description\": \"Additional experimental branding properties.\",\n - \ \"items\": {\n \"$ref\": \"PropertyValue\"\n },\n - \ \"type\": \"array\"\n }\n }\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"properties\": {\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"The details of the - user that was banned.\"\n },\n \"banType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"permanent\",\n \"temporary\"\n - \ ],\n \"description\": \"The type of ban.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"banDurationSeconds\": - {\n \"description\": \"The duration of the ban. This property is - only present if the banType is temporary.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n }\n }\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"properties\": {\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the fund was made.\"\n - \ },\n \"userComment\": {\n \"description\": \"The comment - added by the user to this fan funding event.\",\n \"type\": \"string\"\n - \ },\n \"amountMicros\": {\n \"description\": \"The - amount of the fund.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatFanFundingEventDetails\"\n },\n \"CommentThreadReplies\": - {\n \"type\": \"object\",\n \"description\": \"Comments written - in (direct or indirect) reply to the top level comment.\",\n \"id\": - \"CommentThreadReplies\",\n \"properties\": {\n \"comments\": - {\n \"type\": \"array\",\n \"description\": \"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.\",\n \"items\": {\n \"$ref\": \"Comment\"\n - \ }\n }\n }\n },\n \"SuperChatEvent\": {\n \"type\": - \"object\",\n \"id\": \"SuperChatEvent\",\n \"properties\": {\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the Super Chat event.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#superChatEvent\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\",\n - \ \"$ref\": \"SuperChatEventSnippet\"\n }\n },\n \"description\": - \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\"\n },\n \"VideoAbuseReportReason\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the abuse report reason.\",\n - \ \"$ref\": \"VideoAbuseReportReasonSnippet\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReason\"\n },\n \"id\": - {\n \"description\": \"The ID of this abuse report reason.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"A `__videoAbuseReportReason__` resource identifies a reason that a video - could be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\",\n - \ \"id\": \"VideoAbuseReportReason\"\n },\n \"PlaylistLocalization\": - {\n \"description\": \"Playlist localization setting\",\n \"id\": - \"PlaylistLocalization\",\n \"properties\": {\n \"description\": - {\n \"description\": \"The localized strings for playlist's description.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"The localized strings for playlist's title.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"PlaylistSnippet\": - {\n \"description\": \"Basic details about a playlist, including title, - description and thumbnails.\",\n \"id\": \"PlaylistSnippet\",\n \"properties\": - {\n \"localized\": {\n \"description\": \"Localized title - and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.playlists.insert\",\n \"youtube.playlists.update\"\n - \ ]\n },\n \"description\": \"The playlist's title.\",\n - \ \"type\": \"string\"\n },\n \"tags\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"Keyword tags associated with the playlist.\",\n \"type\": \"array\"\n - \ },\n \"description\": {\n \"description\": \"The playlist's - description.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the playlist's default title - and description.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist. 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.\"\n },\n \"thumbnailVideoId\": - {\n \"description\": \"Note: if the playlist has a custom thumbnail, - this field will not be populated. The video id selected by the user that will - be used as the thumbnail of this playlist. This field defaults to the first - publicly viewable video in the playlist, if: 1. The user has never selected - a video to be the thumbnail of the playlist. 2. The user selects a video to - be the thumbnail, and then removes that video from the playlist. 3. The user - selects a non-owned video to be the thumbnail, but that video becomes private, - or gets deleted.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the playlist was created.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"channelTitle\": {\n \"description\": \"The channel title - of the channel that the video belongs to.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that published the playlist.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"Entity\": {\n \"type\": \"object\",\n \"properties\": - {\n \"typeId\": {\n \"type\": \"string\"\n },\n \"url\": - {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"Entity\"\n },\n \"Playlist\": - {\n \"id\": \"Playlist\",\n \"description\": \"A *playlist* resource - represents a YouTube playlist. A playlist is a collection of videos that can - be viewed sequentially and shared with other users. A playlist can contain - up to 200 videos, and YouTube does not limit the number of playlists that - each user creates. By default, playlists are publicly visible to other users, - but playlists can be public or private. YouTube also uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the playlist.\"\n },\n \"status\": {\n \"$ref\": \"PlaylistStatus\",\n - \ \"description\": \"The status object contains status information - for the playlist.\"\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the playlist - in an embedded player.\",\n \"$ref\": \"PlaylistPlayer\"\n },\n - \ \"localizations\": {\n \"description\": \"Localizations for - different languages\",\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n }\n },\n - \ \"contentDetails\": {\n \"$ref\": \"PlaylistContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - like video count.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"default\": \"youtube#playlist\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the playlist, such as its title and description.\",\n \"$ref\": - \"PlaylistSnippet\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"ActivityContentDetailsChannelItem\": {\n \"id\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"Details about a resource which was added to a channel.\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource that was added to the channel.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LocalizedProperty\": {\n \"id\": - \"LocalizedProperty\",\n \"properties\": {\n \"localized\": {\n - \ \"items\": {\n \"$ref\": \"LocalizedString\"\n },\n - \ \"type\": \"array\"\n },\n \"default\": {\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"$ref\": - \"LanguageTag\",\n \"description\": \"The language of the default - property.\"\n }\n },\n \"type\": \"object\"\n },\n \"VideoMonetizationDetails\": - {\n \"id\": \"VideoMonetizationDetails\",\n \"properties\": {\n - \ \"access\": {\n \"$ref\": \"AccessPolicy\",\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Details - about monetization of a YouTube Video.\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorListResponse\",\n - \ \"properties\": {\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"description\": \"A list of moderators that match the request criteria.\",\n - \ \"type\": \"array\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n }\n },\n \"LiveBroadcastContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"Detailed settings of a broadcast.\",\n \"properties\": - {\n \"latencyPreference\": {\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"description\": \"If both this and - enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\",\n \"type\": \"string\"\n },\n - \ \"enableLowLatency\": {\n \"description\": \"Indicates whether - this broadcast has low latency enabled.\",\n \"type\": \"boolean\"\n - \ },\n \"startWithSlate\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\"\n },\n \"enableAutoStart\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"boundStreamLastUpdateTimeMs\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the live stream referenced by boundStreamId was last updated.\"\n - \ },\n \"enableEmbed\": {\n \"description\": \"This - setting indicates whether the broadcast video can be played in an embedded - player. If you choose to archive the video (using the enableArchive property), - this setting will also apply to the archived video.\",\n \"type\": - \"boolean\"\n },\n \"closedCaptionsType\": {\n \"enum\": - [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"recordFromStart\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\"\n },\n \"enableClosedCaptions\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - HTTP POST closed captioning is enabled for this broadcast. The ingestion URL - of the closed captions is returned through the liveStreams API. This is mutually - exclusive with using the closed_captions_type property, and is equivalent - to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n - \ \"monitorStream\": {\n \"description\": \"The monitorStream - object contains information about the monitor stream, which the broadcaster - can use to review the event content before the broadcast stream is shown publicly.\",\n - \ \"$ref\": \"MonitorStreamInfo\"\n },\n \"boundStreamId\": - {\n \"type\": \"string\",\n \"description\": \"This value - uniquely identifies the live stream bound to the broadcast.\"\n },\n - \ \"enableAutoStop\": {\n \"description\": \"This setting indicates - whether auto stop is enabled for this broadcast. The default value for this - property is false. This setting can only be used by Events.\",\n \"type\": - \"boolean\"\n },\n \"enableDvr\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting determines whether viewers can access - DVR controls while watching the video. DVR controls enable the viewer to control - the video playback experience by pausing, rewinding, or fast forwarding content. - The default value for this property is true. *Important:* You must set the - value to true and also set the enableArchive property's value to true if you - want to make playback available immediately after the broadcast ends.\"\n - \ },\n \"enableContentEncryption\": {\n \"description\": - \"This setting indicates whether YouTube should enable content encryption - for the broadcast.\",\n \"type\": \"boolean\"\n },\n \"projection\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\"\n - \ },\n \"mesh\": {\n \"format\": \"byte\",\n \"description\": - \"The mesh for projecting the video if projection is mesh. The mesh value - must be a UTF-8 string containing the base-64 encoding of 3D mesh data that - follows the Spherical Video V2 RFC specification for an mshp box, excluding - the box size and type but including the following four reserved zero bytes - for the version and flags.\",\n \"type\": \"string\"\n },\n - \ \"stereoLayout\": {\n \"type\": \"string\",\n \"enum\": - [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ],\n \"description\": \"The - 3D stereo layout of this broadcast. This defaults to mono.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n }\n },\n \"VideoProjectDetails\": {\n - \ \"type\": \"object\",\n \"description\": \"DEPRECATED. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"properties\": {},\n \"id\": \"VideoProjectDetails\"\n },\n - \ \"ChannelListResponse\": {\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#channelListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Channel\"\n },\n \"type\": \"array\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelListResponse\"\n - \ },\n \"PlaylistItemListResponse\": {\n \"id\": \"PlaylistItemListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"items\": {\n \"description\": \"A list of playlist - items that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"type\": \"array\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"CommentListResponse\": {\n \"id\": \"CommentListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"A list of comments that match the request criteria.\",\n - \ \"type\": \"array\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentListResponse\\\".\",\n \"type\": - \"string\"\n }\n }\n },\n \"CommentThreadListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#commentThreadListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of comment threads that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"CommentThread\"\n - \ }\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"CommentThreadListResponse\"\n - \ },\n \"LiveStreamConfigurationIssue\": {\n \"properties\": {\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The long-form description of the issue and how to resolve it.\"\n },\n - \ \"reason\": {\n \"type\": \"string\",\n \"description\": - \"The short-form reason for this issue.\"\n },\n \"severity\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"info\",\n - \ \"warning\",\n \"error\"\n ],\n \"description\": - \"How severe this issue is to the stream.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"type\": \"string\",\n \"description\": - \"The kind of error happening.\",\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"id\": \"LiveStreamConfigurationIssue\",\n - \ \"type\": \"object\"\n },\n \"VideoFileDetailsAudioStream\": {\n - \ \"description\": \"Information about an audio stream.\",\n \"type\": - \"object\",\n \"id\": \"VideoFileDetailsAudioStream\",\n \"properties\": - {\n \"channelCount\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The number of audio channels that - the stream contains.\"\n },\n \"codec\": {\n \"type\": - \"string\",\n \"description\": \"The audio codec that the stream - uses.\"\n },\n \"bitrateBps\": {\n \"description\": - \"The audio stream's bitrate, in bits per second.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"vendor\": - {\n \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\",\n \"type\": - \"string\"\n }\n }\n },\n \"SuperChatEventListResponse\": - {\n \"id\": \"SuperChatEventListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of Super Chat purchases that match the - request criteria.\",\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n - \ }\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"default\": \"youtube#superChatEventListResponse\"\n }\n - \ }\n },\n \"VideoSnippet\": {\n \"id\": \"VideoSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a video, including title, description, uploader, thumbnails and category.\",\n - \ \"properties\": {\n \"liveBroadcastContent\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"description\": \"Indicates if the video is an upcoming/active - live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active - live broadcast.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\"\n },\n \"categoryId\": {\n \"description\": - \"The YouTube video category associated with the video.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the video - belongs to.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the video. 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.\"\n },\n \"defaultAudioLanguage\": {\n - \ \"type\": \"string\",\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the video - was uploaded.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that the video was uploaded - to.\"\n },\n \"title\": {\n \"description\": \"The - video's title. @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the videos's default snippet.\",\n \"type\": \"string\"\n - \ },\n \"localized\": {\n \"description\": \"Localized - snippet selected with the hl parameter. If no such localization exists, this - field is populated with the default snippet. (Read-only)\",\n \"$ref\": - \"VideoLocalization\"\n },\n \"tags\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of keyword tags associated with the video. Tags may contain spaces.\",\n - \ \"type\": \"array\"\n }\n }\n },\n \"ChannelContentOwnerDetails\": - {\n \"id\": \"ChannelContentOwnerDetails\",\n \"properties\": {\n - \ \"contentOwner\": {\n \"description\": \"The ID of the content - owner linked to the channel.\",\n \"type\": \"string\"\n },\n - \ \"timeLinked\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the channel was linked to the content owner.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"type\": \"object\"\n - \ },\n \"ThirdPartyLink\": {\n \"description\": \"A *third party - account link* resource represents a link between a YouTube account or a channel - and an account on a third-party service.\",\n \"id\": \"ThirdPartyLink\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"linkingToken\": - {\n \"type\": \"string\",\n \"description\": \"The linking_token - identifies a YouTube account and channel with which the third party account - is linked.\"\n },\n \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n - \ \"description\": \"The status object contains information about - the status of the link.\"\n },\n \"snippet\": {\n \"$ref\": - \"ThirdPartyLinkSnippet\",\n \"description\": \"The snippet object - contains basic details about the third- party account link.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#thirdPartyLink\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n - \ }\n }\n },\n \"SubscriptionListResponse\": {\n \"id\": - \"SubscriptionListResponse\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Subscription\"\n },\n \"description\": \"A list of subscriptions - that match the request criteria.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n \"default\": - \"youtube#subscriptionListResponse\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveStreamHealthStatus\": {\n \"properties\": - {\n \"configurationIssues\": {\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n },\n \"description\": - \"The configurations issues on this stream\",\n \"type\": \"array\"\n - \ },\n \"lastUpdateTimeSeconds\": {\n \"description\": - \"The last time this status was updated (in seconds)\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"status\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The status code of this stream\",\n \"type\": \"string\",\n \"enum\": - [\n \"good\",\n \"ok\",\n \"bad\",\n \"noData\",\n - \ \"revoked\"\n ]\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveStreamHealthStatus\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"properties\": {\n \"isUpgrade\": {\n \"type\": \"boolean\",\n - \ \"description\": \"If the viewer just had upgraded from a lower - level. For viewers that were not members at the time of purchase, this field - is false.\"\n },\n \"memberLevelName\": {\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"PlaylistPlayer\": {\n \"type\": \"object\",\n \"properties\": - {\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\"\n - \ }\n },\n \"id\": \"PlaylistPlayer\"\n },\n \"ChannelSectionLocalization\": - {\n \"id\": \"ChannelSectionLocalization\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for channel section's title.\"\n - \ }\n },\n \"description\": \"ChannelSection localization - setting\"\n },\n \"CaptionListResponse\": {\n \"properties\": {\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Caption\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of captions that match the request criteria.\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#captionListResponse\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"CaptionListResponse\"\n - \ },\n \"VideoProcessingDetails\": {\n \"properties\": {\n \"processingStatus\": - {\n \"enum\": [\n \"processing\",\n \"succeeded\",\n - \ \"failed\",\n \"terminated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\"\n },\n - \ \"fileDetailsAvailability\": {\n \"description\": \"This - value indicates whether file details are available for the uploaded video. - You can retrieve a video's file details by requesting the fileDetails part - in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"thumbnailsAvailability\": {\n \"description\": \"This value - indicates whether thumbnail images have been generated for the video.\",\n - \ \"type\": \"string\"\n },\n \"processingProgress\": - {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n },\n \"processingIssuesAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether the video processing engine has generated suggestions that - might improve YouTube's ability to process the the video, warnings that explain - video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\"\n },\n \"editorSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether video editing - suggestions, which might improve video quality or the playback experience, - are available for the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"tagSuggestionsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether keyword - (tag) suggestions are available for the video. Tags can be added to a video's - metadata to make it easier for other users to find the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\"\n },\n \"processingFailureReason\": {\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ]\n }\n },\n \"id\": \"VideoProcessingDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Describes processing - status and progress and availability of some other Video resource parts.\"\n - \ },\n \"Thumbnail\": {\n \"properties\": {\n \"height\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"(Optional) Height of the thumbnail image.\"\n },\n \"url\": - {\n \"description\": \"The thumbnail image's URL.\",\n \"type\": - \"string\"\n },\n \"width\": {\n \"format\": \"uint32\",\n - \ \"description\": \"(Optional) Width of the thumbnail image.\",\n - \ \"type\": \"integer\"\n }\n },\n \"description\": - \"A thumbnail is an image representing a YouTube resource.\",\n \"id\": - \"Thumbnail\",\n \"type\": \"object\"\n },\n \"ResourceId\": {\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"The type of the API resource.\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a channel. - This property is only present if the resourceId.kind value is youtube#channel.\",\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a video. This property - is only present if the resourceId.kind value is youtube#video.\"\n },\n - \ \"playlistId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\"\n }\n },\n \"description\": - \"A resource id is a generic reference that points to another YouTube resource.\",\n - \ \"id\": \"ResourceId\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsUpload\": - {\n \"id\": \"ActivityContentDetailsUpload\",\n \"description\": - \"Information about the uploaded video.\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the uploaded video.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ActivitySnippet\": {\n \"id\": - \"ActivitySnippet\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the resource primarily associated with the activity.\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"description\": - \"The type of activity that the resource describes.\",\n \"enum\": - [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"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.\"\n },\n \"description\": {\n \"description\": - \"The description of the resource primarily associated with the activity. - @mutable youtube.activities.insert\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel associated with - the activity.\"\n },\n \"groupId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel responsible - for this activity\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the video was uploaded.\",\n \"format\": \"date-time\"\n - \ }\n },\n \"description\": \"Basic details about an activity, - including title, description, thumbnails, activity type and group. Next ID: - 12\"\n },\n \"LiveChatBan\": {\n \"description\": \"A `__liveChatBan__` - resource represents a ban for a YouTube live chat.\",\n \"id\": \"LiveChatBan\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatBan\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the ban.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The `snippet` - object contains basic details about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n - \ }\n }\n },\n \"VideoCategoryListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of video categories that can be associated - with YouTube videos. In this map, the video category ID is the map key, and - its value is the corresponding videoCategory resource.\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n },\n \"type\": - \"array\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"default\": \"youtube#videoCategoryListResponse\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n }\n },\n \"id\": \"VideoCategoryListResponse\",\n - \ \"type\": \"object\"\n },\n \"VideoCategorySnippet\": {\n \"id\": - \"VideoCategorySnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about a video category, such as its localized title.\",\n - \ \"properties\": {\n \"assignable\": {\n \"type\": \"boolean\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The video category's title.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The YouTube channel that created - the video category.\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\"\n - \ }\n }\n },\n \"LiveStreamStatus\": {\n \"description\": - \"Brief description of the live stream status.\",\n \"properties\": {\n - \ \"healthStatus\": {\n \"description\": \"The health status - of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n },\n - \ \"streamStatus\": {\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveStreamStatus\"\n },\n \"AbuseType\": - {\n \"id\": \"AbuseType\",\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"VideoContentDetails\": {\n \"description\": \"Details about - the content of a YouTube Video.\",\n \"id\": \"VideoContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"dimension\": - {\n \"type\": \"string\",\n \"description\": \"The value - of dimension indicates whether the video is available in 3D or in 2D.\"\n - \ },\n \"duration\": {\n \"type\": \"string\",\n \"description\": - \"The length of the video. The tag value is an ISO 8601 duration in the format - PT#M#S, in which the letters PT indicate that the value specifies a period - of time, and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"licensedContent\": {\n \"type\": \"boolean\",\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\"\n },\n \"countryRestriction\": {\n \"description\": - \"The countryRestriction object contains information about the countries where - a video is (or is not) viewable.\",\n \"$ref\": \"AccessPolicy\"\n - \ },\n \"definition\": {\n \"type\": \"string\",\n \"enum\": - [\n \"sd\",\n \"hd\"\n ],\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\",\n \"enumDescriptions\": - [\n \"sd\",\n \"hd\"\n ]\n },\n \"projection\": - {\n \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"Specifies the projection format - of the video.\",\n \"type\": \"string\"\n },\n \"contentRating\": - {\n \"$ref\": \"ContentRating\",\n \"description\": \"Specifies - the ratings that the video received under various rating schemes.\"\n },\n - \ \"caption\": {\n \"enum\": [\n \"true\",\n \"false\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The value of captions indicates whether the video has captions or not.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"hasCustomThumbnail\": {\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n },\n \"regionRestriction\": {\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n }\n }\n },\n \"Activity\": - {\n \"type\": \"object\",\n \"id\": \"Activity\",\n \"description\": - \"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.\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#activity\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the activity.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"ActivitySnippet\",\n \"description\": \"The - snippet object contains basic details about the activity, including the activity's - type and group ID.\"\n },\n \"contentDetails\": {\n \"description\": - \"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.\",\n \"$ref\": - \"ActivityContentDetails\"\n }\n }\n },\n \"ChannelSettings\": - {\n \"id\": \"ChannelSettings\",\n \"type\": \"object\",\n \"properties\": - {\n \"showBrowseView\": {\n \"description\": \"Whether the - tab to browse the videos should be displayed.\",\n \"type\": \"boolean\"\n - \ },\n \"showRelatedChannels\": {\n \"description\": - \"Whether related channels should be proposed.\",\n \"type\": \"boolean\"\n - \ },\n \"trackingAnalyticsAccountId\": {\n \"type\": - \"string\",\n \"description\": \"The ID for a Google Analytics account - to track and measure traffic to the channels.\"\n },\n \"defaultTab\": - {\n \"type\": \"string\",\n \"description\": \"Which content - tab users should see when viewing the channel.\"\n },\n \"keywords\": - {\n \"description\": \"Lists keywords associated with the channel, - comma-separated.\",\n \"type\": \"string\"\n },\n \"featuredChannelsTitle\": - {\n \"type\": \"string\",\n \"description\": \"Title for - the featured channels tab.\"\n },\n \"moderateComments\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether user-submitted - comments left on the channel page need to be approved by the channel owner - to be publicly visible.\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the channel description.\"\n - \ },\n \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"unsubscribedTrailer\": - {\n \"type\": \"string\",\n \"description\": \"The trailer - of the channel, for users that are not subscribers.\"\n },\n \"featuredChannelsUrls\": - {\n \"description\": \"The list of featured channels.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the channel title.\"\n },\n \"profileColor\": {\n - \ \"description\": \"A prominent color that can be rendered on this - channel page.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n }\n },\n \"description\": - \"Branding properties for the channel view.\"\n },\n \"SearchResultSnippet\": - {\n \"properties\": {\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The creation date and time of the resource that the search result identifies.\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the channel that published the resource - that the search result identifies.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"A description - of the search result.\"\n },\n \"liveBroadcastContent\": {\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The live broadcast is upcoming.\",\n \"The live broadcast - is active.\",\n \"The live broadcast has been completed.\"\n ],\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"The title of the search result.\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the search result. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The value that YouTube uses to uniquely identify the channel that published - the resource that the search result identifies.\"\n }\n },\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"type\": \"object\",\n - \ \"id\": \"SearchResultSnippet\"\n },\n \"VideoLocalization\": - {\n \"type\": \"object\",\n \"description\": \"Localized versions - of certain video properties (e.g. title).\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's description.\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"Localized version - of the video's title.\"\n }\n },\n \"id\": \"VideoLocalization\"\n - \ },\n \"VideoAbuseReportSecondaryReason\": {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID of this - abuse report secondary reason.\"\n },\n \"label\": {\n \"description\": - \"The localized label for this abuse report secondary reason.\",\n \"type\": - \"string\"\n }\n }\n },\n \"SuperStickerMetadata\": {\n - \ \"properties\": {\n \"altTextLanguage\": {\n \"type\": - \"string\",\n \"description\": \"Specifies the localization language - in which the alt text is returned.\"\n },\n \"stickerId\": {\n - \ \"type\": \"string\",\n \"description\": \"Unique identifier - of the Super Sticker. This is a shorter form of the alt_text that includes - pack name and a recognizable characteristic of the sticker.\"\n },\n - \ \"altText\": {\n \"description\": \"Internationalized alt - text that describes the sticker image and any animation associated with it.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"SuperStickerMetadata\"\n },\n \"LevelDetails\": {\n - \ \"properties\": {\n \"displayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name that should be used when referring to - this level.\"\n }\n },\n \"id\": \"LevelDetails\",\n \"type\": - \"object\"\n },\n \"ThirdPartyLinkListResponse\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#thirdPartyLinkListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"id\": - \"ThirdPartyLinkListResponse\",\n \"type\": \"object\"\n },\n \"WatchSettings\": - {\n \"properties\": {\n \"backgroundColor\": {\n \"description\": - \"The text color for the video watch page's branded area.\",\n \"type\": - \"string\"\n },\n \"featuredPlaylistId\": {\n \"description\": - \"An ID that uniquely identifies a playlist that displays next to the video - player.\",\n \"type\": \"string\"\n },\n \"textColor\": - {\n \"description\": \"The background color for the video watch page's - branded area.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Branding properties for the watch. All deprecated.\",\n \"id\": \"WatchSettings\",\n - \ \"type\": \"object\"\n },\n \"MemberSnippet\": {\n \"properties\": - {\n \"memberDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the member.\"\n },\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering memberships.\"\n },\n \"membershipsDetails\": - {\n \"description\": \"Details about the user's membership.\",\n - \ \"$ref\": \"MembershipsDetails\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"MemberSnippet\"\n },\n \"CommentSnippet\": - {\n \"id\": \"CommentSnippet\",\n \"description\": \"Basic details - about a comment, such as its author and text.\",\n \"properties\": {\n - \ \"updatedAt\": {\n \"description\": \"The date and time when - the comment was last updated.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"authorChannelId\": {\n \"$ref\": - \"CommentSnippetAuthorChannelId\"\n },\n \"likeCount\": {\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total number of likes this comment has received.\"\n },\n \"moderationStatus\": - {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comment refers to, if any.\"\n },\n \"authorChannelUrl\": - {\n \"type\": \"string\",\n \"description\": \"Link to the - author's YouTube channel, if any.\"\n },\n \"textOriginal\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"viewerRating\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n \"description\": - \"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.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ]\n },\n \"textDisplay\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"authorProfileImageUrl\": {\n - \ \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"parentId\": {\n - \ \"type\": \"string\",\n \"description\": \"The unique id - of the parent comment, only set for replies.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the comment was originally published.\",\n \"format\": - \"date-time\"\n },\n \"canRate\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the current viewer can rate this comment.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelSectionContentDetails\": {\n \"properties\": {\n - \ \"playlists\": {\n \"description\": \"The playlist ids for - type single_playlist and multiple_playlists. For singlePlaylist, only one - playlistId is allowed.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"channels\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The channel ids - for type multiple_channels.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelSectionContentDetails\",\n \"description\": \"Details - about a channelsection, including playlists and channels.\"\n },\n \"PlaylistItem\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#playlistItem\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItem\\\".\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the playlist item.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistItemContentDetails\",\n \"description\": \"The contentDetails - object is included in the resource if the included item is a YouTube video. - The object contains additional information about the video.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\"\n },\n \"status\": - {\n \"$ref\": \"PlaylistItemStatus\",\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\"\n }\n },\n \"id\": \"PlaylistItem\",\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\"\n },\n - \ \"LiveStreamContentDetails\": {\n \"description\": \"Detailed settings - of a stream.\",\n \"properties\": {\n \"isReusable\": {\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \",\n \"type\": \"boolean\"\n },\n \"closedCaptionsIngestionUrl\": - {\n \"description\": \"The ingestion URL where the closed captions - of this stream are sent.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveStreamContentDetails\"\n - \ },\n \"LiveChatGiftMembershipReceivedDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"properties\": - {\n \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the Level at which the viewer is a member. This matches the - `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated - membership gifting message. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\"\n },\n - \ \"associatedMembershipGiftingMessageId\": {\n \"description\": - \"The ID of the membership gifting message that is related to this gift membership. - This ID will always refer to a message whose type is 'membershipGiftingEvent'.\",\n - \ \"type\": \"string\"\n },\n \"gifterChannelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID of the - user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\"\n }\n }\n },\n - \ \"VideoFileDetails\": {\n \"properties\": {\n \"durationMs\": - {\n \"type\": \"string\",\n \"description\": \"The length - of the uploaded video in milliseconds.\",\n \"format\": \"uint64\"\n - \ },\n \"audioStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsAudioStream\"\n },\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\",\n \"type\": - \"array\"\n },\n \"fileName\": {\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\",\n \"type\": \"string\"\n },\n - \ \"bitrateBps\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\",\n \"format\": \"uint64\"\n },\n \"fileType\": - {\n \"type\": \"string\",\n \"description\": \"The uploaded - file's type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\",\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ]\n },\n \"creationTime\": {\n \"description\": - \"The date and time when the uploaded video file was created. The value is - specified in ISO 8601 format. Currently, the following ISO 8601 formats are - supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time - with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n - \ },\n \"fileSize\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\",\n \"format\": \"uint64\"\n - \ },\n \"videoStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of video streams contained in the uploaded - video file. Each item in the list contains detailed metadata about a video - stream.\"\n },\n \"container\": {\n \"description\": - \"The uploaded video file's container format.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Describes original video file - properties, including technical details about audio and video streams, but - also metadata information like content length, digitization time, or geotagging - information.\",\n \"type\": \"object\",\n \"id\": \"VideoFileDetails\"\n - \ },\n \"LiveChatModeratorSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatModeratorSnippet\",\n \"properties\": {\n \"moderatorDetails\": - {\n \"description\": \"Details about the moderator.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"liveChatId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the live chat this moderator - can act on.\"\n }\n }\n },\n \"I18nRegionSnippet\": {\n - \ \"properties\": {\n \"gl\": {\n \"description\": \"The - region code as a 2-letter ISO country code.\",\n \"type\": \"string\"\n - \ },\n \"name\": {\n \"description\": \"The human-readable - name of the region.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"I18nRegionSnippet\",\n \"description\": - \"Basic details about an i18n region, such as region code and human-readable - name.\"\n },\n \"ChannelContentDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelContentDetails\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"type\": \"object\",\n \"properties\": {\n \"watchHistory\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"likes\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n },\n \"favorites\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s favorite videos. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"watchLater\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s watch later playlist. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"uploads\": {\n \"description\": \"The ID of the - playlist that contains the channel\\\"s uploaded videos. Use the videos.insert - method to upload new videos and the videos.delete method to delete previously - uploaded videos.\",\n \"type\": \"string\"\n }\n }\n - \ }\n },\n \"description\": \"Details about the content of - a channel.\"\n },\n \"I18nLanguage\": {\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#i18nLanguage\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguage\\\".\"\n },\n \"snippet\": - {\n \"$ref\": \"I18nLanguageSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n language, such - as language code and human-readable name.\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the i18n language.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"I18nLanguage\",\n \"description\": - \"An *i18nLanguage* resource identifies a UI language currently supported - by YouTube.\",\n \"type\": \"object\"\n },\n \"VideoAgeGating\": - {\n \"id\": \"VideoAgeGating\",\n \"properties\": {\n \"restricted\": - {\n \"type\": \"boolean\",\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\"\n },\n - \ \"videoGameRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"Video game rating, if any.\",\n \"type\": \"string\",\n \"enum\": - [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ]\n },\n \"alcoholContent\": - {\n \"description\": \"Indicates whether or not the video has alcoholic - beverage content. Only users of legal purchasing age in a particular country, - as identified by ICAP, can view the content.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"id\": \"CommentSnippetAuthorChannelId\",\n \"type\": \"object\",\n - \ \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"LocalizedString\": {\n \"id\": \"LocalizedString\",\n - \ \"properties\": {\n \"language\": {\n \"type\": \"string\"\n - \ },\n \"value\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ChannelAuditDetails\": - {\n \"id\": \"ChannelAuditDetails\",\n \"description\": \"The auditDetails - object encapsulates channel data that is relevant for YouTube Partners during - the audit process.\",\n \"properties\": {\n \"communityGuidelinesGoodStanding\": - {\n \"description\": \"Whether or not the channel respects the community - guidelines.\",\n \"type\": \"boolean\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any unresolved claims.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveStream\": {\n \"id\": \"LiveStream\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n - \ \"description\": \"The status object contains information about - live stream's status.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n - \ },\n \"cdn\": {\n \"description\": \"The cdn object - defines the live stream's content delivery network (CDN) settings. These settings - provide details about the manner in which you stream your content to YouTube.\",\n - \ \"$ref\": \"CdnSettings\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStream\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the stream.\",\n \"annotations\": {\n - \ \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n - \ \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\"\n }\n - \ },\n \"description\": \"A live stream describes a live ingestion - point.\"\n },\n \"VideoTopicDetails\": {\n \"properties\": {\n - \ \"topicCategories\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Wikipedia - URLs that provide a high-level description of the video's content.\",\n \"type\": - \"array\"\n },\n \"topicIds\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Freebase - topic IDs that are centrally associated with the video. These are topics that - are centrally featured in the video, and it can be said that the video is - mainly about each of these. You can retrieve information about each topic - using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"type\": \"array\"\n },\n \"relevantTopicIds\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"Similar to topic_id, - except that these topics are merely relevant to the video. These are topics - that may be mentioned in, or appear in the video. You can retrieve information - about each topic using Freebase Topic API.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoTopicDetails\",\n \"description\": - \"Freebase topic information related to the video.\"\n },\n \"LiveBroadcastSnippet\": - {\n \"description\": \"Basic broadcast information.\",\n \"properties\": - {\n \"liveChatId\": {\n \"description\": \"The id of the live - chat for this broadcast.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\"\n },\n \"actualEndTime\": {\n \"description\": - \"The date and time that the broadcast actually ended. This information is - only available once the broadcast's state is complete.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"scheduledEndTime\": - {\n \"description\": \"The date and time that the broadcast is scheduled - to end.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's title. Note that the broadcast - represents exactly one YouTube video. You can set this field by modifying - the broadcast resource or by setting the title field of the corresponding - video resource.\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the broadcast. For each nested - object in this object, the key is the name of the thumbnail image, and the - value is an object that contains other information about the thumbnail.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"isDefaultBroadcast\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast is the default broadcast. Internal only.\"\n },\n - \ \"actualStartTime\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - actually started. This information is only available once the broadcast's - state is live.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the broadcast was added to YouTube's live broadcast - schedule.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"scheduledStartTime\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"description\": {\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveBroadcastSnippet\"\n },\n \"VideoFileDetailsVideoStream\": - {\n \"description\": \"Information about a video stream.\",\n \"properties\": - {\n \"bitrateBps\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The video stream's bitrate, in bits - per second.\"\n },\n \"rotation\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"none\",\n \"clockwise\",\n \"upsideDown\",\n - \ \"counterClockwise\",\n \"other\"\n ],\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\"\n },\n \"codec\": {\n \"type\": - \"string\",\n \"description\": \"The video codec that the stream - uses.\"\n },\n \"widthPixels\": {\n \"type\": \"integer\",\n - \ \"description\": \"The encoded video content's width in pixels. - You can calculate the video's encoding aspect ratio as width_pixels / height_pixels.\",\n - \ \"format\": \"uint32\"\n },\n \"aspectRatio\": {\n - \ \"format\": \"double\",\n \"type\": \"number\",\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\"\n },\n \"vendor\": - {\n \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\",\n \"type\": - \"string\"\n },\n \"frameRateFps\": {\n \"type\": \"number\",\n - \ \"format\": \"double\",\n \"description\": \"The video - stream's frame rate, in frames per second.\"\n },\n \"heightPixels\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The encoded video content's height in pixels.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoFileDetailsVideoStream\"\n },\n \"LiveBroadcastStatistics\": - {\n \"properties\": {\n \"concurrentViewers\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"type\": \"string\"\n },\n \"totalChatCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The total - number of live chat messages currently on the broadcast. The property and - its value will be present if the broadcast is public, has the live chat feature - enabled, and has at least one message. Note that this field will not be filled - after the broadcast ends. So this property would not identify the number of - chat messages for an archived video of a completed live broadcast.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveBroadcastStatistics\",\n \"description\": \"Statistics about the - live broadcast. These represent a snapshot of the values at the time of the - request. Statistics are only returned for live broadcasts.\"\n },\n \"ContentRating\": - {\n \"id\": \"ContentRating\",\n \"description\": \"Ratings schemes. - The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n - \ \"properties\": {\n \"rcnofRating\": {\n \"description\": - \"The video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee - of the National Office of Film.\",\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"catvfrRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ]\n },\n \"eirinRating\": {\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ]\n - \ },\n \"kmrbRating\": {\n \"description\": \"The video's - Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n - \ \"kmrb12plus\",\n \"kmrb15plus\",\n \"kmrbTeenr\",\n - \ \"kmrbR\",\n \"kmrbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ]\n },\n \"cncRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n - \ \"\"\n ],\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"description\": \"Rating - system in France - Commission de classification cinematographique\",\n \"type\": - \"string\"\n },\n \"cbfcRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n - \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n - \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n - \ \"cbfcUnrated\"\n ],\n \"description\": \"The - video's Central Board of Film Certification (CBFC - India) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ]\n },\n \"bfvcRating\": - {\n \"description\": \"The video's rating from Thailand's Board of - Film and Video Censors.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"E\",\n \"13\",\n \"15\",\n - \ \"18\",\n \"20\",\n \"B\",\n \"\"\n - \ ],\n \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"mekuRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Finland's Kansallinen - Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n \"enum\": - [\n \"mekuUnspecified\",\n \"mekuS\",\n \"meku7\",\n - \ \"meku12\",\n \"meku16\",\n \"meku18\",\n - \ \"mekuUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"czfilmRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"description\": - \"The video's rating in the Czech Republic.\"\n },\n \"fmocRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"fmocUnspecified\",\n - \ \"fmocU\",\n \"fmoc10\",\n \"fmoc12\",\n - \ \"fmoc16\",\n \"fmoc18\",\n \"fmocE\",\n - \ \"fmocUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ],\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\"\n },\n \"fpbRating\": - {\n \"description\": \"The video's rating from South Africa's Film - and Publication Board.\",\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"type\": \"string\"\n },\n \"oflcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"description\": \"The video's - Office of Film and Literature Classification (OFLC - New Zealand) rating.\"\n - \ },\n \"cnaRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\",\n \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"ilfilmRating\": {\n \"description\": \"The - video's rating in Israel.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ]\n },\n - \ \"ifcoRating\": {\n \"description\": \"The video's Irish - Film Classification Office (IFCO - Ireland) rating. See the IFCO website for - more information.\",\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"smsaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"All - ages\",\n \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Statens - medier\xE5d (Sweden's National Media Council).\",\n \"enum\": [\n - \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"catvRating\": - {\n \"description\": \"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.\",\n - \ \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n - \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n - \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n - \ \"catvE\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n - \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"acbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n - \ \"description\": \"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.\",\n \"type\": - \"string\",\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ]\n },\n \"chfilmRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"0\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"chfilmUnspecified\",\n \"chfilm0\",\n \"chfilm6\",\n - \ \"chfilm12\",\n \"chfilm16\",\n \"chfilm18\",\n - \ \"chfilmUnrated\"\n ],\n \"description\": \"The - video's rating in Switzerland.\"\n },\n \"ecbmctRating\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"7A\",\n \"7+\",\n \"13A\",\n - \ \"13+\",\n \"15A\",\n \"15+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"Rating system - in Turkey - Evaluation and Classification Board of the Ministry of Culture - and Tourism\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ]\n },\n \"icaaRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"enum\": - [\n \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n - \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n - \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ]\n },\n - \ \"eefilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Pere\",\n \"L\",\n \"MS-6\",\n \"K-6\",\n - \ \"MS-12\",\n \"K-12\",\n \"K-14\",\n \"K-16\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Estonia.\",\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ]\n },\n \"fpbRatingReasons\": {\n \"type\": - \"array\",\n \"items\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ]\n },\n \"description\": \"Reasons that explain - why the video received its FPB (South Africa) rating.\"\n },\n \"cscfRating\": - {\n \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from Luxembourg's Commission de surveillance de la classification des - films (CSCF).\"\n },\n \"egfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Egypt.\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"grfilmRating\": {\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n - \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Greece.\"\n - \ },\n \"nfvcbRating\": {\n \"description\": \"The video's - rating from Nigeria's National Film and Video Censors Board.\",\n \"enum\": - [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n \"nfvcbPg\",\n - \ \"nfvcb12\",\n \"nfvcb12a\",\n \"nfvcb15\",\n - \ \"nfvcb18\",\n \"nfvcbRe\",\n \"nfvcbUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"18\",\n \"RE\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"russiaRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"description\": \"The video's National Film Registry - of the Russian Federation (MKRF - Russia) rating.\",\n \"type\": - \"string\"\n },\n \"lsfRating\": {\n \"description\": - \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"enum\": - [\n \"lsfUnspecified\",\n \"lsfSu\",\n \"lsfA\",\n - \ \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n \"lsf17\",\n - \ \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"kijkwijzerRating\": - {\n \"description\": \"The video's NICAM/Kijkwijzer rating from the - Nederlands Instituut voor de Classificatie van Audiovisuele Media (Netherlands).\",\n - \ \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"smaisRating\": {\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\",\n - \ \"type\": \"string\"\n },\n \"djctqRatingReasons\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ]\n },\n \"description\": \"Reasons - that explain why the video received its DJCQT (Brazil) rating.\"\n },\n - \ \"anatelRating\": {\n \"description\": \"The video's Anatel - (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n - \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n - \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n - \ \"anatelUnrated\"\n ]\n },\n \"mccypRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\"\n },\n \"nkclvRating\": - {\n \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n - \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n - \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"bmukkRating\": {\n \"enum\": - [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n \"bmukk6\",\n - \ \"bmukk8\",\n \"bmukk10\",\n \"bmukk12\",\n - \ \"bmukk14\",\n \"bmukk16\",\n \"bmukkUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Austrian Board of - Media Classification (Bundesministerium f\xFCr Unterricht, Kunst und Kultur).\",\n - \ \"type\": \"string\"\n },\n \"skfilmRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Slovakia.\"\n },\n \"cccRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"Todo espectador\",\n - \ \"6+ - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n - \ \"18+\",\n \"18+ - contenido excesivamente violento\",\n - \ \"18+ - contenido pornogr\xE1fico\",\n \"\"\n ],\n - \ \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n - \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"type\": \"string\"\n },\n \"fcbmRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"fcbmUnspecified\",\n \"fcbmU\",\n - \ \"fcbmPg13\",\n \"fcbmP13\",\n \"fcbm18\",\n - \ \"fcbm18sx\",\n \"fcbm18pa\",\n \"fcbm18sg\",\n - \ \"fcbm18pl\",\n \"fcbmUnrated\"\n ],\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ]\n },\n \"incaaRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"ATP (Apta para todo publico)\",\n \"13 (Solo apta - para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para mayores de - 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 a\xF1os)\",\n - \ \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"description\": \"The video's INCAA (Instituto Nacional - de Cine y Artes Audiovisuales - Argentina) rating.\"\n },\n \"mpaatRating\": - {\n \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"GB\",\n \"RB\"\n ],\n - \ \"description\": \"The rating system for trailer, DVD, and Ad in - the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\"\n },\n \"moctwRating\": {\n \"description\": - \"The video's rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"moctwUnspecified\",\n - \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n - \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n - \ \"moctwR15\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ]\n },\n \"rtcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\",\n \"enum\": [\n \"rtcUnspecified\",\n - \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n - \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n - \ ]\n },\n \"mpaaRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n - \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n - \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n - \ ],\n \"description\": \"The video's Motion Picture Association - of America (MPAA) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"NC-17\",\n \"! X\",\n \"\"\n ]\n - \ },\n \"fskRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"description\": \"The - video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.\"\n - \ },\n \"agcomRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n - \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ],\n \"description\": \"The video's rating from Italy's - Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\"\n },\n \"mdaRating\": - {\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Singapore's - Media Development Authority (MDA) and, specifically, it's Board of Film Censors - (BFC).\"\n },\n \"nbcRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Maldives National - Bureau of Classification.\",\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ]\n },\n \"cceRating\": {\n \"enum\": - [\n \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n - \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n - \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"4\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\",\n \"14\"\n ],\n - \ \"type\": \"string\"\n },\n \"pefilmRating\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"description\": - \"The video's rating in Peru.\"\n },\n \"djctqRating\": {\n - \ \"description\": \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, - Qualifica\xE7\xE3o e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enum\": - [\n \"djctqUnspecified\",\n \"djctqL\",\n \"djctq10\",\n - \ \"djctq12\",\n \"djctq14\",\n \"djctq16\",\n - \ \"djctq18\",\n \"djctqEr\",\n \"djctqL10\",\n - \ \"djctqL12\",\n \"djctqL14\",\n \"djctqL16\",\n - \ \"djctqL18\",\n \"djctq1012\",\n \"djctq1014\",\n - \ \"djctq1016\",\n \"djctq1018\",\n \"djctq1214\",\n - \ \"djctq1216\",\n \"djctq1218\",\n \"djctq1416\",\n - \ \"djctq1418\",\n \"djctq1618\",\n \"djctqUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"nbcplRating\": {\n \"description\": \"The video's - rating in Poland.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n - \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n - \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ]\n - \ },\n \"nmcRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The National Media Council ratings - system for United Arab Emirates.\"\n },\n \"kfcbRating\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"GE\",\n \"PG\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"kfcbUnspecified\",\n - \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n - \ \"kfcbR\",\n \"kfcbUnrated\"\n ],\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\"\n },\n - \ \"ytRating\": {\n \"description\": \"A rating that YouTube - uses to identify age-restricted content.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"mcstRating\": {\n \"enum\": [\n - \ \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ],\n \"description\": \"The video's rating system for Vietnam - - MCST\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ]\n },\n \"fcoRating\": {\n \"description\": - \"The video's rating from Hong Kong's Office for Film, Newspaper and Article - Administration.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"I\",\n \"IIA\",\n \"IIB\",\n \"II\",\n - \ \"III\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ]\n },\n - \ \"mocRating\": {\n \"description\": \"The video's Ministerio - de Cultura (Colombia) rating.\",\n \"type\": \"string\",\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"T\",\n \"7\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"X\",\n \"Banned\",\n \"\"\n - \ ]\n },\n \"mibacRating\": {\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ]\n },\n - \ \"medietilsynetRating\": {\n \"description\": \"The video's - rating from Medietilsynet, the Norwegian Media Authority.\",\n \"enum\": - [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ]\n },\n \"bbfcRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's British Board of Film - Classification (BBFC) rating.\",\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ]\n },\n \"mtrcbRating\": {\n \"enum\": - [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n - \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n - \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Movie - and Television Review and Classification Board (Philippines).\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ]\n },\n \"csaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, - which rates broadcast content.\",\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ]\n },\n \"menaMpaaRating\": {\n \"type\": - \"string\",\n \"description\": \"The rating system for MENA countries, - a clone of MPAA. It is needed to prevent titles go live w/o additional QC - check, since some of them can be inappropriate for the countries at all. See - b/33408548 for more details.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ],\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ]\n - \ },\n \"rteRating\": {\n \"description\": \"The video's - rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ]\n },\n \"cicfRating\": {\n \"enum\": [\n - \ \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\"\n - \ },\n \"mccaaRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Malta's Film Age-Classification - Board.\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"14 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"15\",\n \"16 - this rating was removed - from the new classification structure introduced in 2013.\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ]\n },\n \"nfrcRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"nfrcUnspecified\",\n \"nfrcA\",\n - \ \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n - \ \"nfrcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\"\n },\n - \ \"chvrsRating\": {\n \"description\": \"The video's Canadian - Home Video Rating System (CHVRS) rating.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"chvrsUnspecified\",\n \"chvrsG\",\n - \ \"chvrsPg\",\n \"chvrs14a\",\n \"chvrs18a\",\n - \ \"chvrsR\",\n \"chvrsE\",\n \"chvrsUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ]\n },\n \"tvpgRating\": - {\n \"enum\": [\n \"tvpgUnspecified\",\n \"tvpgY\",\n - \ \"tvpgY7\",\n \"tvpgY7Fv\",\n \"tvpgG\",\n - \ \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's TV Parental Guidelines (TVPG) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ]\n },\n \"resorteviolenciaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ],\n \"description\": - \"The video's rating in Venezuela.\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelStatistics\": {\n \"id\": \"ChannelStatistics\",\n - \ \"properties\": {\n \"videoCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of videos uploaded to the channel.\"\n },\n \"subscriberCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of subscribers that the channel has.\",\n \"format\": \"uint64\"\n - \ },\n \"commentCount\": {\n \"description\": \"The - number of comments for the channel.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"viewCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of times the channel has been viewed.\"\n },\n \"hiddenSubscriberCount\": - {\n \"description\": \"Whether or not the number of subscribers is - shown for this user.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Statistics about a channel: - number of subscribers, number of videos in the channel, etc.\"\n },\n \"AbuseReport\": - {\n \"id\": \"AbuseReport\",\n \"type\": \"object\",\n \"properties\": - {\n \"abuseTypes\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"AbuseType\"\n }\n },\n \"subject\": - {\n \"$ref\": \"Entity\"\n },\n \"description\": {\n - \ \"type\": \"string\"\n },\n \"relatedEntities\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n }\n }\n }\n },\n \"MembershipsLevel\": - {\n \"description\": \"A *membershipsLevel* resource represents an offer - made by YouTube creators for their fans. Users can become members of the channel - by joining one of the available levels. They will provide recurring monetary - support and receives special benefits.\",\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the memberships level.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevel\"\n }\n },\n - \ \"id\": \"MembershipsLevel\"\n },\n \"SubscriptionContentDetails\": - {\n \"description\": \"Details about the content to witch a subscription - refers.\",\n \"id\": \"SubscriptionContentDetails\",\n \"properties\": - {\n \"activityType\": {\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"The type of activity - this subscription is for (only uploads, everything).\"\n },\n \"totalItemCount\": - {\n \"description\": \"The approximate number of items that the subscription - points to.\",\n \"format\": \"uint32\",\n \"type\": \"integer\"\n - \ },\n \"newItemCount\": {\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The number - of new items in the subscription since its content was last read.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"InvideoTiming\": {\n \"type\": - \"object\",\n \"id\": \"InvideoTiming\",\n \"properties\": {\n \"type\": - {\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Describes a timing type. If the value is offsetFromStart, then the offsetMs - field represents an offset from the start of the video. If the value is offsetFromEnd, - then the offsetMs field represents an offset from the end of the video.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ]\n - \ },\n \"durationMs\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"Defines the - duration in milliseconds for which the promotion should be displayed. If missing, - the client should use the default.\"\n },\n \"offsetMs\": {\n - \ \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\"\n }\n - \ },\n \"description\": \"Describes a temporal position of a visual - widget inside a video.\"\n },\n \"PlaylistItemStatus\": {\n \"id\": - \"PlaylistItemStatus\",\n \"properties\": {\n \"privacyStatus\": - {\n \"description\": \"This resource's privacy status.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Information about the playlist item's privacy - status.\",\n \"type\": \"object\"\n },\n \"PropertyValue\": {\n - \ \"id\": \"PropertyValue\",\n \"description\": \"A pair Property - / Value.\",\n \"properties\": {\n \"property\": {\n \"type\": - \"string\",\n \"description\": \"A property.\"\n },\n \"value\": - {\n \"description\": \"The property's value.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"MembershipsDetails\": - {\n \"properties\": {\n \"membershipsDuration\": {\n \"$ref\": - \"MembershipsDuration\",\n \"description\": \"Data about memberships - duration without taking into consideration pricing levels.\"\n },\n - \ \"highestAccessibleLevelDisplayName\": {\n \"type\": \"string\",\n - \ \"description\": \"Display name for the highest level that the user - has access to at the moment.\"\n },\n \"accessibleLevels\": - {\n \"description\": \"Ids of all levels that the user has access - to. This includes the currently active level and all other levels that are - included because of a higher purchase.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"highestAccessibleLevel\": {\n \"description\": \"Id of - the highest level that the user has access to at the moment.\",\n \"type\": - \"string\"\n },\n \"membershipsDurationAtLevels\": {\n \"description\": - \"Data about memberships duration on particular pricing levels.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ }\n }\n },\n \"id\": \"MembershipsDetails\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMessage\": {\n \"description\": - \"A *liveChatMessage* resource represents a chat message in a YouTube Live - Chat.\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the message.\"\n },\n \"authorDetails\": {\n \"description\": - \"The authorDetails object contains basic details about the user that posted - this message.\",\n \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n - \ \"snippet\": {\n \"$ref\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the message.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatMessage\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatMessage\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"type\": \"object\",\n \"description\": \"Information that identifies - the recommended resource.\",\n \"properties\": {\n \"reason\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The reason that the resource is recommended to - the user.\",\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ]\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the recommended resource.\"\n },\n \"seedResourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The seedResourceId - object contains information about the resource that caused the recommendation.\"\n - \ }\n }\n },\n \"ChannelConversionPing\": {\n \"id\": - \"ChannelConversionPing\",\n \"type\": \"object\",\n \"description\": - \"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.\",\n \"properties\": {\n \"conversionUrl\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"context\": - {\n \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ],\n \"type\": \"string\",\n \"description\": - \"Defines the context of the ping.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ }\n },\n \"ChannelBannerResource\": {\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"url\": {\n \"description\": \"The URL of this - banner image.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n - \ }\n },\n \"id\": \"ChannelBannerResource\",\n \"type\": - \"object\"\n },\n \"ChannelSnippet\": {\n \"properties\": {\n \"publishedAt\": - {\n \"description\": \"The date and time that the channel was created.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\"\n },\n - \ \"customUrl\": {\n \"description\": \"The custom url of the - channel.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel's default title - and description.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The description of the channel.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"country\": {\n \"description\": \"The country - of the channel.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - title.\"\n }\n },\n \"id\": \"ChannelSnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about a channel, including - title, description and thumbnails.\"\n },\n \"LiveChatModerator\": {\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#liveChatModerator\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"LiveChatModeratorSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the moderator.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the moderator.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatModerator\",\n - \ \"description\": \"A *liveChatModerator* resource represents a moderator - for a YouTube live chat. A chat moderator has the ability to ban/unban users - from a chat, remove message, etc.\"\n },\n \"Channel\": {\n \"description\": - \"A *channel* resource contains information about a YouTube channel.\",\n - \ \"id\": \"Channel\",\n \"properties\": {\n \"localizations\": - {\n \"additionalProperties\": {\n \"$ref\": \"ChannelLocalization\"\n - \ },\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\"\n },\n \"auditDetails\": - {\n \"$ref\": \"ChannelAuditDetails\",\n \"description\": - \"The auditionDetails object encapsulates channel data that is relevant for - YouTube Partners during the audition process.\"\n },\n \"statistics\": - {\n \"description\": \"The statistics object encapsulates statistics - for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#channel\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channel\\\".\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel.\",\n \"type\": \"string\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object encapsulates information about the channel's content.\",\n \"$ref\": - \"ChannelContentDetails\"\n },\n \"contentOwnerDetails\": {\n - \ \"$ref\": \"ChannelContentOwnerDetails\",\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"conversionPings\": {\n \"$ref\": - \"ChannelConversionPings\",\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\"\n },\n \"status\": {\n \"$ref\": - \"ChannelStatus\",\n \"description\": \"The status object encapsulates - information about the privacy status of the channel.\"\n },\n \"topicDetails\": - {\n \"$ref\": \"ChannelTopicDetails\",\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the channel.\"\n },\n \"brandingSettings\": {\n \"$ref\": - \"ChannelBrandingSettings\",\n \"description\": \"The brandingSettings - object encapsulates information about the branding of the channel.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ChannelSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel, such as its - title, description, and thumbnail images.\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveStreamSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is transmitting the stream.\"\n },\n \"title\": - {\n \"description\": \"The stream's title. The value must be between - 1 and 128 characters long.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the stream was created.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The stream's description. The value cannot be longer than 10000 characters.\",\n - \ \"type\": \"string\"\n },\n \"isDefaultStream\": {\n - \ \"type\": \"boolean\"\n }\n },\n \"id\": \"LiveStreamSnippet\"\n - \ },\n \"MembershipsLevelSnippet\": {\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"properties\": {\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n },\n \"levelDetails\": {\n \"$ref\": \"LevelDetails\",\n - \ \"description\": \"Details about the pricing level.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"RelatedEntity\": {\n \"id\": - \"RelatedEntity\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"entity\": {\n \"$ref\": \"Entity\"\n }\n }\n - \ },\n \"ChannelSectionSnippet\": {\n \"properties\": {\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the channel section.\",\n \"type\": \"string\"\n - \ },\n \"style\": {\n \"type\": \"string\",\n \"description\": - \"The style of the channel section.\",\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"position\": {\n \"description\": - \"The position of the channel section in the channel.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"localized\": - {\n \"description\": \"Localized title, read-only.\",\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel section's title for - multiple_playlists and multiple_channels.\"\n },\n \"type\": - {\n \"enum\": [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of the channel section.\",\n \"type\": \"string\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": - \"The language of the channel section's default title and description.\"\n - \ }\n },\n \"description\": \"Basic details about a channel - section, including title, style and position.\",\n \"id\": \"ChannelSectionSnippet\",\n - \ \"type\": \"object\"\n },\n \"I18nLanguageListResponse\": {\n - \ \"id\": \"I18nLanguageListResponse\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"description\": \"A list of supported - i18n languages. In this map, the i18n language ID is the map key, and its - value is the corresponding i18nLanguage resource.\",\n \"items\": - {\n \"$ref\": \"I18nLanguage\"\n },\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\"\n },\n \"ImageSettings\": - {\n \"properties\": {\n \"bannerMobileHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size high resolution (1280x360).\",\n \"type\": - \"string\"\n },\n \"smallBrandedBannerImageImapScript\": {\n - \ \"description\": \"The image map script for the small banner image.\",\n - \ \"$ref\": \"LocalizedProperty\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\"\n },\n \"trackingImageUrl\": - {\n \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"bannerMobileExtraHdImageUrl\": {\n \"description\": - \"Banner image. Mobile size high resolution (1440x395).\",\n \"type\": - \"string\"\n },\n \"bannerTabletLowImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size low resolution - (1138x188).\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size medium/high resolution (960x263).\"\n },\n \"bannerTvHighImageUrl\": - {\n \"description\": \"Banner image. TV size high resolution (1920x1080).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletImageUrl\": - {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size extra high resolution - (2560x424).\",\n \"type\": \"string\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"smallBrandedBannerImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n - \ \"description\": \"The URL for the 640px by 70px banner image that - appears below the video player in the default view of the video watch page. - The URL for the image that appears above the top-left corner of the video - player. This is a 25-pixel-high image with a flexible width that cannot exceed - 170 pixels.\"\n },\n \"watchIconImageUrl\": {\n \"type\": - \"string\"\n },\n \"bannerTabletHdImageUrl\": {\n \"description\": - \"Banner image. Tablet size high resolution (2276x377).\",\n \"type\": - \"string\"\n },\n \"bannerImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Desktop size (1060x175).\"\n - \ },\n \"bannerTvLowImageUrl\": {\n \"description\": - \"Banner image. TV size low resolution (854x480).\",\n \"type\": - \"string\"\n },\n \"bannerTvImageUrl\": {\n \"description\": - \"Banner image. TV size extra high resolution (2120x1192).\",\n \"type\": - \"string\"\n },\n \"bannerTvMediumImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. TV size medium resolution - (1280x720).\"\n },\n \"bannerMobileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size (640x175).\"\n - \ }\n },\n \"id\": \"ImageSettings\",\n \"description\": - \"Branding properties for images associated with the channel.\",\n \"type\": - \"object\"\n },\n \"MonitorStreamInfo\": {\n \"properties\": {\n - \ \"enableMonitorStream\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"boolean\",\n \"description\": \"This value - determines whether the monitor stream is enabled for the broadcast. If the - monitor stream is enabled, then YouTube will broadcast the event content on - a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\"\n },\n - \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\"\n },\n - \ \"broadcastStreamDelayMs\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"format\": \"uint32\",\n \"description\": \"If you have - set the enableMonitorStream property to true, then this property determines - the length of the live broadcast delay.\",\n \"type\": \"integer\"\n - \ }\n },\n \"id\": \"MonitorStreamInfo\",\n \"type\": - \"object\",\n \"description\": \"Settings and Info of the monitor stream\"\n - \ },\n \"I18nRegion\": {\n \"description\": \"A *i18nRegion* resource - identifies a region where YouTube is available.\",\n \"id\": \"I18nRegion\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#i18nRegion\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegion\\\".\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetails\": - {\n \"id\": \"ActivityContentDetails\",\n \"description\": \"Details - about the content of an activity: the video that was shared, the channel that - was subscribed to, etc.\",\n \"properties\": {\n \"promotedItem\": - {\n \"$ref\": \"ActivityContentDetailsPromotedItem\",\n \"description\": - \"The promotedItem object contains details about a resource which is being - promoted. This property is only present if the snippet.type is promotedItem.\"\n - \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"channelItem\": {\n \"description\": - \"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.\",\n - \ \"$ref\": \"ActivityContentDetailsChannelItem\"\n },\n \"recommendation\": - {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n \"description\": - \"The recommendation object contains information about a recommended resource. - This property is only present if the snippet.type is recommendation.\"\n },\n - \ \"social\": {\n \"$ref\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"The social object contains details about a social - network post. This property is only present if the snippet.type is social.\"\n - \ },\n \"playlistItem\": {\n \"description\": \"The - playlistItem object contains information about a new playlist item. This property - is only present if the snippet.type is playlistItem.\",\n \"$ref\": - \"ActivityContentDetailsPlaylistItem\"\n },\n \"upload\": {\n - \ \"$ref\": \"ActivityContentDetailsUpload\",\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\"\n },\n \"bulletin\": - {\n \"description\": \"The bulletin object contains details about - a channel bulletin post. This object is only present if the snippet.type is - bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n },\n - \ \"subscription\": {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n - \ \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\"\n },\n \"like\": {\n \"description\": - \"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.\",\n - \ \"$ref\": \"ActivityContentDetailsLike\"\n },\n \"favorite\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsFavorite\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageRetractedDetails\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"VideoRecordingDetails\": {\n - \ \"id\": \"VideoRecordingDetails\",\n \"description\": \"Recording - information associated with the video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"locationDescription\": {\n \"type\": \"string\",\n \"description\": - \"The text description of the location where the video was recorded.\"\n },\n - \ \"recordingDate\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the video was recorded.\",\n \"format\": - \"date-time\"\n },\n \"location\": {\n \"description\": - \"The geolocation information associated with the video.\",\n \"$ref\": - \"GeoPoint\"\n }\n }\n },\n \"TestItemTestItemSnippet\": - {\n \"properties\": {},\n \"type\": \"object\",\n \"id\": \"TestItemTestItemSnippet\"\n - \ },\n \"VideoAbuseReportReasonSnippet\": {\n \"properties\": {\n - \ \"secondaryReasons\": {\n \"items\": {\n \"$ref\": - \"VideoAbuseReportSecondaryReason\"\n },\n \"type\": \"array\",\n - \ \"description\": \"The secondary reasons associated with this reason, - if any are available. (There might be 0 or more.)\"\n },\n \"label\": - {\n \"type\": \"string\",\n \"description\": \"The localized - label belonging to this abuse report reason.\"\n }\n },\n \"description\": - \"Basic details about a video category, such as its localized title.\",\n - \ \"id\": \"VideoAbuseReportReasonSnippet\",\n \"type\": \"object\"\n - \ },\n \"IngestionInfo\": {\n \"description\": \"Describes information - necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"type\": - \"object\",\n \"properties\": {\n \"backupIngestionAddress\": - {\n \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\",\n - \ \"type\": \"string\"\n },\n \"streamName\": {\n \"description\": - \"The stream name that YouTube assigns to the video stream.\",\n \"type\": - \"string\"\n },\n \"ingestionAddress\": {\n \"description\": - \"The primary ingestion URL that you should use to stream video to YouTube. - You must stream video to this URL. Depending on which application or tool - you use to encode your video stream, you may need to enter the stream URL - and stream name separately or you may need to concatenate them in the following - format: *STREAM_URL/STREAM_NAME* \",\n \"type\": \"string\"\n },\n - \ \"rtmpsIngestionAddress\": {\n \"type\": \"string\",\n \"description\": - \"This ingestion url may be used instead of ingestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\"\n },\n \"rtmpsBackupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of backupIngestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n }\n },\n \"id\": - \"IngestionInfo\"\n },\n \"VideoAbuseReportReasonListResponse\": {\n - \ \"id\": \"VideoAbuseReportReasonListResponse\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoAbuseReportReasonListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The `visitorId` identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of valid - abuse reasons that are used with `video.ReportAbuse`.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ }\n }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": - {\n \"id\": \"LiveBroadcastListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveBroadcastListResponse\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of broadcasts - that match the request criteria.\"\n }\n }\n },\n \"VideoCategory\": - {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#videoCategory\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategory\\\".\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video category, including its title.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the video category.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"A *videoCategory* - resource identifies a category that has been or could be associated with uploaded - videos.\",\n \"id\": \"VideoCategory\",\n \"type\": \"object\"\n - \ }\n },\n \"canonicalName\": \"YouTube\",\n \"version\": \"v3\",\n \"rootUrl\": - \"https://youtube.googleapis.com/\",\n \"fullyEncodeReservedExpansion\": - true,\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"ownerDomain\": - \"google.com\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n }\n - \ }\n }\n },\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"id\": \"youtube:v3\",\n \"discoveryVersion\": \"v1\",\n \"description\": - \"The YouTube Data API v3 is an API that provides access to YouTube data, - such as videos, playlists, and channels.\",\n \"batchPath\": \"batch\",\n - \ \"resources\": {\n \"liveBroadcasts\": {\n \"methods\": {\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"id\": \"youtube.liveBroadcasts.insert\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"delete\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"description\": \"Broadcast to delete.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"id\": - \"youtube.liveBroadcasts.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Delete a given broadcast.\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"bind\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"description\": \"Bind a broadcast to a stream.\",\n - \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"streamId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Stream - to bind, if not set unbind the current one.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": - \"Broadcast to bind to the stream\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts/bind\"\n },\n \"list\": - {\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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, status and statistics.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"broadcastStatus\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return current live broadcasts.\",\n - \ \"Return broadcasts that have not yet started.\",\n \"Return - broadcasts that have already ended.\"\n ],\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"description\": \"Return broadcasts with - a certain status, e.g. active broadcasts.\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Return - broadcasts with the given ids from Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"broadcastType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all broadcasts.\",\n \"Return only scheduled event broadcasts.\",\n - \ \"Return only persistent broadcasts.\"\n ],\n - \ \"description\": \"Return only broadcasts with the selected - type.\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"event\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"default\": \"5\"\n },\n \"mine\": {\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.liveBroadcasts.list\",\n \"httpMethod\": \"GET\"\n },\n - \ \"transition\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"broadcastStatus\": {\n \"enum\": - [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Start - testing the broadcast. YouTube transmits video to the broadcast's monitor - stream. Note that you can only transition a broadcast to the testing state - if its contentDetails.monitorStream.enableMonitorStream property is set to - true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The - broadcast is over. YouTube stops transmitting video.\"\n ],\n - \ \"description\": \"The status to which the broadcast is going - to transition.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"description\": - \"Broadcast to transition.\",\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"description\": - \"Transition a broadcast to a given status.\",\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Updates an existing broadcast for - the authenticated user.\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"required\": true,\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"youtube.liveBroadcasts.update\"\n },\n - \ \"insertCuepoint\": {\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"parameterOrder\": [],\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to insert ads to, or equivalently - `external_video_id` for internal use.\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"description\": \"Insert cuepoints in a broadcast\"\n }\n - \ }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"parameters\": {\n \"hasAccessToLevel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"maximum\": \"1000\",\n \"type\": - \"integer\"\n },\n \"mode\": {\n \"default\": - \"all_current\",\n \"location\": \"query\",\n \"enum\": - [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ],\n \"description\": \"Parameter - that specifies which channel members to return.\"\n },\n \"filterByMemberChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/members\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"path\": \"youtube/v3/members\",\n \"id\": - \"youtube.members.list\",\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of members that match the request criteria for a channel.\"\n - \ }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"maxSize\": \"6291456\"\n },\n - \ \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"parameterOrder\": [],\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"id\": \"youtube.channelBanners.insert\",\n \"flatPath\": - \"youtube/v3/channelBanners/insert\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"channelId\": {\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"supportsMediaUpload\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ]\n }\n }\n },\n \"subscriptions\": {\n \"methods\": - {\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"request\": - {\n \"$ref\": \"Subscription\"\n },\n \"path\": - \"youtube/v3/subscriptions\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.subscriptions.insert\",\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true\n }\n - \ }\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.subscriptions.list\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"SubscriptionListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"format\": \"uint32\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n - \ \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the subscribers of the - given channel owner.\",\n \"location\": \"query\"\n },\n - \ \"forChannelId\": {\n \"description\": \"Return the - subscriptions to the subset of these channels that the authenticated user - is subscribed to.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"Return the subscriptions of the given channel owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"order\": {\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"The - order of the returned subscriptions\",\n \"default\": \"relevance\"\n - \ },\n \"myRecentSubscribers\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"description\": \"Flag - for returning the subscriptions of the authenticated user.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/subscriptions\"\n - \ },\n \"delete\": {\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"description\": \"Deletes a - resource.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"DELETE\"\n }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"VideoCategoryListResponse\"\n },\n \"path\": - \"youtube/v3/videoCategories\",\n \"flatPath\": \"youtube/v3/videoCategories\",\n - \ \"parameters\": {\n \"hl\": {\n \"default\": - \"en-US\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Returns the video categories - with the given IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"part\": {\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.videoCategories.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"liveStreams\": {\n \"methods\": {\n - \ \"delete\": {\n \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.liveStreams.delete\",\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Deletes an existing stream for the authenticated - user.\"\n },\n \"insert\": {\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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, content_details, and status.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"LiveStream\"\n }\n },\n \"update\": - {\n \"id\": \"youtube.liveStreams.update\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"path\": \"youtube/v3/liveStreams\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"list\": {\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"id\": \"youtube.liveStreams.list\",\n \"response\": {\n - \ \"$ref\": \"LiveStreamListResponse\"\n },\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"maximum\": - \"50\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Return LiveStreams with the given ids from - Stubby or Apiary.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieve the list of streams associated - with the given channel. --\",\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"abuseReports\": {\n \"methods\": - {\n \"insert\": {\n \"description\": \"Inserts a new resource - into this collection.\",\n \"path\": \"youtube/v3/abuseReports\",\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/abuseReports\",\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"id\": \"youtube.abuseReports.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"AbuseReport\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\"\n }\n }\n }\n - \ }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/search\",\n \"description\": - \"Retrieves a list of search resources\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"parameters\": {\n \"forMine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Search for the private videos of the authenticated - user.\"\n },\n \"order\": {\n \"enum\": - [\n \"searchSortUnspecified\",\n \"date\",\n - \ \"rating\",\n \"viewCount\",\n \"relevance\",\n - \ \"title\",\n \"videoCount\"\n ],\n - \ \"type\": \"string\",\n \"default\": \"relevance\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"description\": - \"Sort order of the results.\"\n },\n \"relevanceLanguage\": - {\n \"description\": \"Return results relevant to this language.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"videoSyndicated\": {\n \"description\": - \"Filter on syndicated videos.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all videos, syndicated or - not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ]\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"videoDefinition\": {\n \"description\": - \"Filter on the definition of the videos.\",\n \"enum\": [\n - \ \"any\",\n \"standard\",\n \"high\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"videoType\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"description\": \"Filter on videos of a specific - type.\",\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ]\n },\n \"type\": {\n \"type\": - \"string\",\n \"description\": \"Restrict results to a particular - set of resource types from One Platform.\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n },\n \"location\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on location of the video\"\n },\n - \ \"channelType\": {\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Add a filter on the channel search.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ]\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on resources belonging to this channelId.\"\n - \ },\n \"videoDimension\": {\n \"description\": - \"Filter on 3d videos.\",\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ],\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"q\": {\n \"description\": - \"Textual search terms to match.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"topicId\": - {\n \"description\": \"Restrict results to a particular topic.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"publishedBefore\": - {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n - \ \"description\": \"Filter on resources published before this - date.\",\n \"type\": \"string\"\n },\n \"relatedToVideoId\": - {\n \"description\": \"Search related to a resource.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"eventType\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"description\": \"Filter on the livestream - status of the videos.\",\n \"location\": \"query\"\n },\n - \ \"videoEmbeddable\": {\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"description\": \"Filter on embeddable videos.\"\n },\n - \ \"videoDuration\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"description\": - \"Filter on the duration of the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ]\n - \ },\n \"publishedAfter\": {\n \"description\": - \"Filter on resources published after this date.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"format\": - \"google-datetime\"\n },\n \"safeSearch\": {\n \"enum\": - [\n \"safeSearchSettingUnspecified\",\n \"none\",\n - \ \"moderate\",\n \"strict\"\n ],\n - \ \"default\": \"moderate\",\n \"description\": \"Indicates - whether the search results should include restricted content as well as standard - content.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"videoCategoryId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on videos in a specific category.\"\n - \ },\n \"regionCode\": {\n \"description\": - \"Display the content as seen by viewers in this country.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"locationRadius\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on distance from the location (specified - above).\"\n },\n \"videoCaption\": {\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"location\": \"query\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"type\": \"string\"\n },\n \"videoLicense\": - {\n \"enumDescriptions\": [\n \"Return all videos, - regardless of which license they have, that match the query parameters.\",\n - \ \"Only return videos that have the standard YouTube license.\",\n - \ \"Only return videos that have a Creative Commons license. - Users can reuse videos with this license in other videos that they create. - Learn more.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Filter - on the license of the videos.\",\n \"location\": \"query\"\n - \ },\n \"forContentOwner\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Search owned by a content owner.\"\n },\n \"forDeveloper\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Restrict the search to only retrieve videos - uploaded using the project id of the authenticated user.\"\n }\n - \ },\n \"id\": \"youtube.search.list\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/search\"\n }\n }\n - \ },\n \"activities\": {\n \"methods\": {\n \"list\": {\n - \ \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/activities\",\n \"parameters\": - {\n \"publishedBefore\": {\n \"format\": \"google-datetime\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"home\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"default\": \"5\",\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"format\": - \"uint32\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/activities\",\n - \ \"id\": \"youtube.activities.list\"\n }\n }\n },\n - \ \"playlistItems\": {\n \"methods\": {\n \"list\": {\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"parameters\": {\n \"maxResults\": - {\n \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"maximum\": \"50\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true,\n \"description\": - \"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.\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"playlistId\": {\n \"description\": - \"Return the playlist items within the given playlist.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"Return the playlist items associated - with the given video ID.\",\n \"location\": \"query\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"id\": \"youtube.playlistItems.list\",\n \"path\": - \"youtube/v3/playlistItems\"\n },\n \"update\": {\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"description\": \"Updates an existing - resource.\",\n \"id\": \"youtube.playlistItems.update\"\n },\n - \ \"insert\": {\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"id\": \"youtube.playlistItems.insert\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\"\n },\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a resource.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"id\": - \"youtube.playlistItems.delete\"\n }\n }\n },\n \"thumbnails\": - {\n \"methods\": {\n \"set\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"As this is not an insert in a strict sense (it - supports uploading/setting of a thumbnail for multiple videos, which doesn't - result in creation of a single resource), I use a custom verb here.\",\n \"supportsMediaUpload\": - true,\n \"httpMethod\": \"POST\",\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"description\": \"Returns the Thumbnail with the given video - IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"2097152\"\n },\n \"id\": - \"youtube.thumbnails.set\",\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"path\": \"youtube/v3/thumbnails/set\",\n \"response\": - {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"parameterOrder\": - [\n \"videoId\"\n ]\n }\n }\n },\n \"comments\": - {\n \"methods\": {\n \"delete\": {\n \"id\": \"youtube.comments.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments\"\n },\n \"setModerationStatus\": - {\n \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"id\": - \"youtube.comments.setModerationStatus\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"banAuthor\": {\n - \ \"description\": \"If set to true the author of the comment - gets added to the ban list. This means all future comments of the author will - autmomatically be rejected. Only valid in combination with STATUS_REJECTED.\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"default\": \"false\"\n },\n \"moderationStatus\": - {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"description\": \"Specifies the requested moderation status. - Note, comments can be in statuses, which are not available through this call. - For example, this call does not allow to mark a comment as 'likely spam'. - Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"id\": {\n \"description\": - \"Modifies the moderation status of the comments with the given IDs\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Sets the - moderation status of one or more comments.\"\n },\n \"insert\": - {\n \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.comments.insert\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"request\": {\n - \ \"$ref\": \"Comment\"\n },\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"Comment\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\"\n },\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/comments\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"Returns the comments with the given IDs for One Platform.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"The *part* parameter specifies a comma-separated - list of one or more comment resource properties that the API response will - include.\"\n },\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"location\": \"query\",\n \"default\": - \"20\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"maximum\": \"100\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n },\n \"parentId\": {\n - \ \"description\": \"Returns replies to the specified comment. - Note, currently YouTube features only one level of replies (ie replies to - top level comments). However replies to replies may be supported in the future.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"textFormat\": - {\n \"default\": \"html\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - requested text format for the returned comments.\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ]\n - \ }\n },\n \"id\": \"youtube.comments.list\"\n - \ },\n \"markAsSpam\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.comments.markAsSpam\",\n \"httpMethod\": - \"POST\"\n },\n \"update\": {\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"id\": \"youtube.comments.update\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/comments\",\n \"description\": \"Updates an existing - resource.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/membershipsLevels\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the membershipsLevel resource parts that the API - response will include. Supported values are id and snippet.\",\n \"repeated\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"path\": \"youtube/v3/membershipsLevels\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"description\": \"Retrieves a list of all pricing levels offered - by a creator to the fans.\"\n }\n }\n },\n \"channels\": - {\n \"methods\": {\n \"update\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/channels\",\n - \ \"description\": \"Updates an existing resource.\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n - \ \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"response\": - {\n \"$ref\": \"Channel\"\n },\n \"id\": \"youtube.channels.update\",\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Channel\"\n - \ }\n },\n \"list\": {\n \"id\": \"youtube.channels.list\",\n - \ \"path\": \"youtube/v3/channels\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"managedByMe\": {\n - \ \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Return the channels managed by the authenticated - user.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the ids of channels owned by the authenticated user.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"maximum\": \"50\"\n - \ },\n \"hl\": {\n \"description\": \"Stands - for \\\"host language\\\". Specifies the localization language of the metadata - to be filled into snippet.localized. The field is filled with the default - metadata if there is no localization in the specified language. The parameter - value must be a language code included in the list returned by the i18nLanguages.list - method (e.g. en_US, es_MX).\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"forUsername\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the channel associated with a YouTube username.\"\n },\n - \ \"mySubscribers\": {\n \"description\": \"Return - the channels subscribed to the authenticated user\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Return - the channels with the specified IDs.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"categoryId\": - {\n \"description\": \"Return the channels within the specified - guide category ID.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"ChannelListResponse\"\n },\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"thirdPartyLinks\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"linkingToken\": {\n \"location\": \"query\",\n - \ \"description\": \"Get a third party link with the given linking - token.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API response will include. Supported values are linkingToken, - status, and snippet.\",\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"type\": {\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Get a third party link of the given type.\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"id\": \"youtube.thirdPartyLinks.list\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"update\": {\n - \ \"id\": \"youtube.thirdPartyLinks.update\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"httpMethod\": - \"PUT\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the thirdPartyLink resource parts that the API request and response will include. - Supported values are linkingToken, status, and snippet.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"description\": \"Updates an existing - resource.\"\n },\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.insert\"\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"id\": \"youtube.thirdPartyLinks.delete\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"Do - not use. Required for compatibility.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"type\": {\n - \ \"type\": \"string\",\n \"required\": true,\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"description\": \"Type of the link to be - deleted.\",\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ]\n - \ },\n \"linkingToken\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"type\": - \"string\"\n },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"description\": \"Channel ID to which changes should - be applied, for delegation.\",\n \"type\": \"string\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Deletes a resource.\"\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"hl\": {\n \"default\": \"en-US\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the videoCategory resource parts that the API response - will include. Supported values are id and snippet.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"VideoAbuseReportReasonListResponse\"\n },\n \"flatPath\": - \"youtube/v3/videoAbuseReportReasons\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/videoAbuseReportReasons\"\n - \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"path\": - \"youtube/v3/commentThreads\",\n \"description\": \"Updates an - existing resource.\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"parameterOrder\": - []\n }\n }\n }\n }\n },\n \"watermarks\": - {\n \"methods\": {\n \"set\": {\n \"description\": \"Allows - upload of watermark image and setting it for a channel.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.watermarks.set\",\n \"flatPath\": - \"youtube/v3/watermarks/set\",\n \"request\": {\n \"$ref\": - \"InvideoBranding\"\n },\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"parameters\": {\n \"channelId\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"supportsMediaUpload\": true,\n - \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\",\n \"protocols\": - {\n \"resumable\": {\n \"multipart\": true,\n - \ \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n }\n }\n }\n - \ },\n \"unset\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/watermarks/unset\",\n \"id\": - \"youtube.watermarks.unset\",\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Allows removal - of channel watermark.\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ]\n }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"part\": - {\n \"description\": \"The *part* parameter specifies the superChatEvent - resource parts that the API response will include. This parameter is currently - not supported.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - rendered funding amounts in specified language.\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"minimum\": \"1\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"response\": {\n \"$ref\": - \"SuperChatEventListResponse\"\n },\n \"path\": \"youtube/v3/superChatEvents\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.superChatEvents.list\",\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\"\n }\n }\n },\n - \ \"liveChatMessages\": {\n \"methods\": {\n \"insert\": {\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"id\": - \"youtube.liveChatMessages.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/liveChat/messages\"\n },\n \"list\": {\n \"response\": - {\n \"$ref\": \"LiveChatMessageListResponse\"\n },\n \"parameters\": - {\n \"hl\": {\n \"location\": \"query\",\n \"description\": - \"Specifies the localization language in which the system messages should - be returned.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the liveChatComment resource parts that the - API response will include. Supported values are id and snippet.\"\n },\n - \ \"liveChatId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"The id of the live chat for - which comments should be returned.\",\n \"required\": true\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"profileImageSize\": - {\n \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\",\n \"minimum\": \"16\",\n - \ \"type\": \"integer\",\n \"maximum\": \"720\"\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"minimum\": - \"200\",\n \"default\": \"500\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"2000\",\n - \ \"type\": \"integer\"\n }\n },\n \"id\": - \"youtube.liveChatMessages.list\",\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/liveChat/messages\"\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"description\": - \"Deletes a chat message.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.liveChatMessages.delete\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ }\n }\n },\n \"i18nRegions\": {\n \"methods\": {\n - \ \"list\": {\n \"id\": \"youtube.i18nRegions.list\",\n \"flatPath\": - \"youtube/v3/i18nRegions\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the i18nRegion resource properties that the API - response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ },\n \"hl\": {\n \"default\": \"en_US\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"I18nRegionListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n }\n }\n - \ },\n \"captions\": {\n \"methods\": {\n \"list\": {\n \"response\": - {\n \"$ref\": \"CaptionListResponse\"\n },\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Returns the captions with the - given IDs for Stubby or Apiary.\",\n \"repeated\": true\n },\n - \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"required\": true,\n \"description\": - \"Returns the captions for the specified video.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"id\": \"youtube.captions.list\",\n - \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"update\": {\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"parameters\": {\n - \ \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"sync\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.captions.update\",\n - \ \"supportsMediaUpload\": true,\n \"mediaUpload\": {\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n - \ },\n \"httpMethod\": \"PUT\"\n },\n \"insert\": - {\n \"parameters\": {\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the caption - resource parts that the API response will include. Set the parameter value - to snippet.\"\n },\n \"sync\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\"\n }\n },\n \"request\": {\n - \ \"$ref\": \"Caption\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.captions.insert\",\n - \ \"path\": \"youtube/v3/captions\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"response\": {\n \"$ref\": - \"Caption\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"mediaUpload\": {\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"104857600\"\n }\n },\n \"download\": {\n \"flatPath\": - \"youtube/v3/captions/{id}\",\n \"supportsMediaDownload\": true,\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Downloads a caption track.\",\n - \ \"path\": \"youtube/v3/captions/{id}\",\n \"parameters\": - {\n \"tlang\": {\n \"description\": \"tlang is the - language code; machine translate the captions into this language.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"path\",\n \"description\": \"The ID of the caption track to - download, required for One Platform.\"\n },\n \"tfmt\": - {\n \"description\": \"Convert the captions into this format. - Supported options are sbv, srt, and vtt.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"useMediaDownloadService\": true,\n \"id\": - \"youtube.captions.download\"\n },\n \"delete\": {\n \"path\": - \"youtube/v3/captions\",\n \"id\": \"youtube.captions.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"flatPath\": \"youtube/v3/captions\"\n }\n - \ }\n },\n \"playlists\": {\n \"methods\": {\n \"delete\": - {\n \"id\": \"youtube.playlists.delete\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\"\n },\n \"update\": {\n \"path\": \"youtube/v3/playlists\",\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"id\": \"youtube.playlists.update\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"list\": {\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"description\": - \"Return the playlists owned by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Return the playlists with the given IDs - for Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"format\": - \"uint32\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"Return the playlists owned by the specified - channel ID.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.playlists.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"path\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlists\",\n \"path\": - \"youtube/v3/playlists\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ }\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.playlists.insert\"\n }\n }\n },\n \"liveChatBans\": - {\n \"methods\": {\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"flatPath\": - \"youtube/v3/liveChat/bans\",\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.liveChatBans.insert\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/bans\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - chat ban.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"id\": \"youtube.liveChatBans.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"path\": \"youtube/v3/liveChat/bans\"\n }\n }\n },\n - \ \"channelSections\": {\n \"methods\": {\n \"insert\": {\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"flatPath\": \"youtube/v3/channelSections\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.channelSections.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"update\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"id\": \"youtube.channelSections.update\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"path\": - \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Updates an existing resource.\"\n },\n - \ \"list\": {\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"id\": \"youtube.channelSections.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"description\": - \"Return content in specified language\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ },\n \"mine\": {\n \"description\": \"Return - the ChannelSections owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\",\n \"repeated\": true\n }\n - \ },\n \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ }\n },\n \"delete\": {\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.channelSections.delete\"\n - \ }\n }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"request\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"flatPath\": \"youtube/v3/tests\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"POST method.\",\n \"id\": - \"youtube.tests.insert\",\n \"response\": {\n \"$ref\": - \"TestItem\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/tests\"\n }\n }\n - \ },\n \"liveChatModerators\": {\n \"methods\": {\n \"insert\": - {\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveChatModerators.insert\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\"\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n }\n },\n - \ \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"description\": - \"Deletes a chat moderator.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatModerators.delete\"\n },\n \"list\": - {\n \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"parameters\": - {\n \"maxResults\": {\n \"default\": \"5\",\n \"minimum\": - \"0\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"50\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"type\": \"integer\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the liveChatModerator resource parts that the API response - will include. Supported values are id and snippet.\"\n },\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for which moderators - should be returned.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.liveChatModerators.list\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\"\n }\n }\n },\n - \ \"commentThreads\": {\n \"methods\": {\n \"list\": {\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.commentThreads.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"channelId\": - {\n \"description\": \"Returns the comment threads for all the - channel comments (ie does not include comments left on videos).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"1\",\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"maximum\": - \"100\",\n \"default\": \"20\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - a comma-separated list of one or more commentThread resource properties that - the API response will include.\",\n \"required\": true\n },\n - \ \"allThreadsRelatedToChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Returns the comment threads of all videos of the channel and the channel - comments as well.\"\n },\n \"searchTerms\": {\n \"type\": - \"string\",\n \"description\": \"Limits the returned comment - threads to those matching the specified key words. Not compatible with the - 'id' filter.\",\n \"location\": \"query\"\n },\n \"textFormat\": - {\n \"default\": \"html\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"description\": - \"The requested text format for the returned comments.\"\n },\n - \ \"moderationStatus\": {\n \"default\": \"published\",\n - \ \"location\": \"query\",\n \"description\": \"Limits - the returned comment threads to those with the specified moderation status. - Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ]\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comment threads of the specified video.\",\n \"type\": - \"string\"\n },\n \"order\": {\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"default\": \"time\",\n - \ \"enum\": [\n \"orderUnspecified\",\n \"time\",\n - \ \"relevance\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ }\n },\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"CommentThread\"\n },\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"path\": - \"youtube/v3/commentThreads\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\"\n }\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"id\": \"youtube.commentThreads.insert\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/i18nLanguages\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"id\": \"youtube.i18nLanguages.list\",\n \"flatPath\": - \"youtube/v3/i18nLanguages\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"The *part* parameter specifies the i18nLanguage - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true\n },\n \"hl\": {\n \"default\": \"en_US\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n }\n }\n }\n },\n \"videos\": {\n - \ \"methods\": {\n \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/videos\",\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"response\": {\n \"$ref\": \"Video\"\n - \ },\n \"id\": \"youtube.videos.update\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"httpMethod\": \"PUT\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\"\n }\n }\n },\n \"delete\": - {\n \"path\": \"youtube/v3/videos\",\n \"description\": - \"Deletes a resource.\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.videos.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\"\n },\n \"list\": - {\n \"id\": \"youtube.videos.list\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"VideoListResponse\"\n },\n \"path\": \"youtube/v3/videos\",\n - \ \"parameters\": {\n \"locale\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"hl\": - {\n \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"description\": \"Use a chart that is specific to the specified - region\",\n \"location\": \"query\"\n },\n \"maxWidth\": - {\n \"maximum\": \"8192\",\n \"type\": \"integer\",\n - \ \"description\": \"Return the player with maximum height specified - in\",\n \"minimum\": \"72\",\n \"location\": \"query\",\n - \ \"format\": \"int32\"\n },\n \"myRating\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ]\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"chart\": {\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Return - the videos that are in the specified chart.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxHeight\": - {\n \"location\": \"query\",\n \"minimum\": \"72\",\n - \ \"maximum\": \"8192\",\n \"type\": \"integer\",\n - \ \"format\": \"int32\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"description\": \"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.\",\n \"minimum\": - \"1\",\n \"location\": \"query\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"format\": \"uint32\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"description\": \"Return videos with the given ids.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoCategoryId\": - {\n \"description\": \"Use chart that is specific to the specified - video category\",\n \"default\": \"0\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"rate\": {\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Adds a like or dislike rating to a video or removes - a rating from a video.\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n },\n \"rating\": - {\n \"location\": \"query\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"required\": true\n - \ }\n },\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ],\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"path\": \"youtube/v3/videos/rate\",\n \"id\": \"youtube.videos.rate\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"reportAbuse\": {\n \"parameterOrder\": - [],\n \"description\": \"Report abuse for a video.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.videos.reportAbuse\",\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/videos/reportAbuse\",\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n - \ }\n },\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"supportsMediaUpload\": true,\n \"id\": - \"youtube.videos.insert\",\n \"parameters\": {\n \"notifySubscribers\": - {\n \"default\": \"true\",\n \"location\": \"query\",\n - \ \"description\": \"Notify the channel subscribers about the - new video. As default, the notification is enabled.\",\n \"type\": - \"boolean\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"autoLevels\": - {\n \"location\": \"query\",\n \"description\": - \"Should auto-levels be applied to the upload.\",\n \"type\": - \"boolean\"\n },\n \"stabilize\": {\n \"type\": - \"boolean\",\n \"description\": \"Should stabilize be applied - to the upload.\",\n \"location\": \"query\"\n }\n - \ },\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"mediaUpload\": {\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"274877906944\",\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/videos\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ }\n }\n },\n \"path\": \"youtube/v3/videos\"\n - \ },\n \"getRating\": {\n \"id\": \"youtube.videos.getRating\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/videos/getRating\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves the ratings that the authorized user - gave to a list of specified videos.\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"path\": - \"youtube/v3/videos/getRating\"\n }\n }\n }\n },\n \"kind\": - \"discovery#restDescription\",\n \"basePath\": \"\",\n \"parameters\": {\n - \ \"fields\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Selector specifying which fields to include in a - partial response.\"\n },\n \"alt\": {\n \"location\": \"query\",\n - \ \"default\": \"json\",\n \"enumDescriptions\": [\n \"Responses - with Content-Type of application/json\",\n \"Media download with context-dependent - Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n - \ ],\n \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"type\": \"string\",\n \"description\": \"Data format - for response.\"\n },\n \"oauth_token\": {\n \"type\": \"string\",\n - \ \"description\": \"OAuth 2.0 token for the current user.\",\n \"location\": - \"query\"\n },\n \"$.xgafv\": {\n \"enum\": [\n \"1\",\n - \ \"2\"\n ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"v1 error format\",\n - \ \"v2 error format\"\n ],\n \"description\": \"V1 error format.\"\n - \ },\n \"upload_protocol\": {\n \"description\": \"Upload protocol - for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"access_token\": {\n \"description\": - \"OAuth access token.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"uploadType\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Legacy upload protocol - for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n },\n \"key\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"callback\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"JSONP\"\n },\n \"quotaUser\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n - \ },\n \"prettyPrint\": {\n \"default\": \"true\",\n \"location\": - \"query\",\n \"description\": \"Returns response with indentations and - line breaks.\",\n \"type\": \"boolean\"\n }\n },\n \"title\": \"YouTube - Data API v3\",\n \"name\": \"youtube\",\n \"baseUrl\": \"https://youtube.googleapis.com/\",\n - \ \"protocol\": \"rest\",\n \"revision\": \"20230220\",\n \"ownerName\": - \"Google\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:41 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCDalvE0aK5bHg7W4HVoXPRg&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"fk5aXTtbA2Y8809AjstlVolK7LE\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"kSrmnDMQFzCdZJ6Hh__yNFu-LKY\",\n \"id\": \"UCDalvE0aK5bHg7W4HVoXPRg\",\n - \ \"snippet\": {\n \"title\": \"more tv\",\n \"description\": - \"more.tv \u2014 \u044D\u0442\u043E \u0432\u0441\u0435, \u0447\u0442\u043E - \u0442\u044B \u0441\u043C\u043E\u0442\u0440\u0438\u0448\u044C \u0438 \u0434\u0430\u0436\u0435 - \u0431\u043E\u043B\u044C\u0448\u0435:\\n\\n\u2014 \u0421\u043E\u0431\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0435 - \u0441\u0435\u0440\u0438\u0430\u043B\u044B \u0438 \u0444\u0438\u043B\u044C\u043C\u044B, - \u0432\u044B\u0445\u043E\u0434\u044F\u0449\u0438\u0435 \u043F\u043E\u0434 - \u0431\u0440\u0435\u043D\u0434\u043E\u043C more originals;\\n\u2014 \u042D\u043A\u0441\u043A\u043B\u044E\u0437\u0438\u0432\u043D\u044B\u0435 - \u0437\u0430\u0440\u0443\u0431\u0435\u0436\u043D\u044B\u0435 \u043F\u0440\u0435\u043C\u044C\u0435\u0440\u044B - \u043E\u0434\u043D\u043E\u0432\u0440\u0435\u043C\u0435\u043D\u043D\u043E \u0441\u043E - \u0432\u0441\u0435\u043C \u043C\u0438\u0440\u043E\u043C;\\n\u2014 \u0420\u043E\u0441\u0441\u0438\u0439\u0441\u043A\u0438\u0435 - \u0441\u0435\u0440\u0438\u0430\u043B\u044B \u0434\u043E \u044D\u0444\u0438\u0440\u0430 - \u043D\u0430 \u0422\u0412;\\n\u2014 \u0421\u0430\u043C\u044B\u0435 \u0437\u0440\u0435\u043B\u0438\u0449\u043D\u044B\u0435 - \u0442\u0443\u0440\u043D\u0438\u0440\u044B UFC;\\n\u2014 \u0425\u0438\u0442\u044B - \u043C\u0438\u0440\u043E\u0432\u043E\u0433\u043E \u043A\u0438\u043D\u043E - \u0438 \u043B\u044E\u0431\u0438\u043C\u0430\u044F \u0442\u0435\u043B\u0435\u0432\u0438\u0437\u0438\u043E\u043D\u043D\u0430\u044F - \u043A\u043B\u0430\u0441\u0441\u0438\u043A\u0430 \u0431\u0435\u0437 \u0440\u0435\u043A\u043B\u0430\u043C\u044B;\\n\u2014 - \u041F\u0440\u044F\u043C\u043E\u0439 \u044D\u0444\u0438\u0440 \u0433\u043B\u0430\u0432\u043D\u044B\u0445 - \u044D\u0444\u0438\u0440\u043D\u044B\u0445 \u0438 \u043F\u043B\u0430\u0442\u043D\u044B\u0445 - \u0442\u0435\u043B\u0435\u043A\u0430\u043D\u0430\u043B\u043E\u0432;\\n\\n\u041E\u0442\u043A\u0440\u044B\u0432\u0430\u0439 - \u043A\u0430\u0436\u0434\u044B\u0439 \u0434\u0435\u043D\u044C more \u0432 - \u043E\u0434\u043D\u043E\u0439 \u043F\u043E\u0434\u043F\u0438\u0441\u043A\u0435 - \u2014 \u0432\u0441\u0435\u0433\u043E \u0437\u0430 299 \u0440\u0443\u0431\u043B\u0435\u0439 - \u0432 \u043C\u0435\u0441\u044F\u0446. \\n\u041D\u0430\u0448 Telegram-\u043A\u0430\u043D\u0430\u043B: - https://t.me/itsmoretv\\n\",\n \"customUrl\": \"@moretvofficial\",\n - \ \"publishedAt\": \"2018-06-09T09:15:28Z\",\n \"thumbnails\": - {\n \"default\": {\n \"url\": \"https://yt3.ggpht.com/DioKqU-aXHydMmK-ZyqRmqv8EXdANeY1FL6rO9QCDJ3Dm28PgLEYXksN0amRccjXergi0Lg3=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/DioKqU-aXHydMmK-ZyqRmqv8EXdANeY1FL6rO9QCDJ3Dm28PgLEYXksN0amRccjXergi0Lg3=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/DioKqU-aXHydMmK-ZyqRmqv8EXdANeY1FL6rO9QCDJ3Dm28PgLEYXksN0amRccjXergi0Lg3=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"more tv\",\n \"description\": - \"more.tv \u2014 \u044D\u0442\u043E \u0432\u0441\u0435, \u0447\u0442\u043E - \u0442\u044B \u0441\u043C\u043E\u0442\u0440\u0438\u0448\u044C \u0438 \u0434\u0430\u0436\u0435 - \u0431\u043E\u043B\u044C\u0448\u0435:\\n\\n\u2014 \u0421\u043E\u0431\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0435 - \u0441\u0435\u0440\u0438\u0430\u043B\u044B \u0438 \u0444\u0438\u043B\u044C\u043C\u044B, - \u0432\u044B\u0445\u043E\u0434\u044F\u0449\u0438\u0435 \u043F\u043E\u0434 - \u0431\u0440\u0435\u043D\u0434\u043E\u043C more originals;\\n\u2014 \u042D\u043A\u0441\u043A\u043B\u044E\u0437\u0438\u0432\u043D\u044B\u0435 - \u0437\u0430\u0440\u0443\u0431\u0435\u0436\u043D\u044B\u0435 \u043F\u0440\u0435\u043C\u044C\u0435\u0440\u044B - \u043E\u0434\u043D\u043E\u0432\u0440\u0435\u043C\u0435\u043D\u043D\u043E \u0441\u043E - \u0432\u0441\u0435\u043C \u043C\u0438\u0440\u043E\u043C;\\n\u2014 \u0420\u043E\u0441\u0441\u0438\u0439\u0441\u043A\u0438\u0435 - \u0441\u0435\u0440\u0438\u0430\u043B\u044B \u0434\u043E \u044D\u0444\u0438\u0440\u0430 - \u043D\u0430 \u0422\u0412;\\n\u2014 \u0421\u0430\u043C\u044B\u0435 \u0437\u0440\u0435\u043B\u0438\u0449\u043D\u044B\u0435 - \u0442\u0443\u0440\u043D\u0438\u0440\u044B UFC;\\n\u2014 \u0425\u0438\u0442\u044B - \u043C\u0438\u0440\u043E\u0432\u043E\u0433\u043E \u043A\u0438\u043D\u043E - \u0438 \u043B\u044E\u0431\u0438\u043C\u0430\u044F \u0442\u0435\u043B\u0435\u0432\u0438\u0437\u0438\u043E\u043D\u043D\u0430\u044F - \u043A\u043B\u0430\u0441\u0441\u0438\u043A\u0430 \u0431\u0435\u0437 \u0440\u0435\u043A\u043B\u0430\u043C\u044B;\\n\u2014 - \u041F\u0440\u044F\u043C\u043E\u0439 \u044D\u0444\u0438\u0440 \u0433\u043B\u0430\u0432\u043D\u044B\u0445 - \u044D\u0444\u0438\u0440\u043D\u044B\u0445 \u0438 \u043F\u043B\u0430\u0442\u043D\u044B\u0445 - \u0442\u0435\u043B\u0435\u043A\u0430\u043D\u0430\u043B\u043E\u0432;\\n\\n\u041E\u0442\u043A\u0440\u044B\u0432\u0430\u0439 - \u043A\u0430\u0436\u0434\u044B\u0439 \u0434\u0435\u043D\u044C more \u0432 - \u043E\u0434\u043D\u043E\u0439 \u043F\u043E\u0434\u043F\u0438\u0441\u043A\u0435 - \u2014 \u0432\u0441\u0435\u0433\u043E \u0437\u0430 299 \u0440\u0443\u0431\u043B\u0435\u0439 - \u0432 \u043C\u0435\u0441\u044F\u0446. \\n\u041D\u0430\u0448 Telegram-\u043A\u0430\u043D\u0430\u043B: - https://t.me/itsmoretv\\n\"\n },\n \"country\": \"RU\"\n },\n - \ \"brandingSettings\": {\n \"channel\": {\n \"title\": - \"more tv\",\n \"description\": \"more.tv \u2014 \u044D\u0442\u043E - \u0432\u0441\u0435, \u0447\u0442\u043E \u0442\u044B \u0441\u043C\u043E\u0442\u0440\u0438\u0448\u044C - \u0438 \u0434\u0430\u0436\u0435 \u0431\u043E\u043B\u044C\u0448\u0435:\\n\\n\u2014 - \u0421\u043E\u0431\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0435 \u0441\u0435\u0440\u0438\u0430\u043B\u044B - \u0438 \u0444\u0438\u043B\u044C\u043C\u044B, \u0432\u044B\u0445\u043E\u0434\u044F\u0449\u0438\u0435 - \u043F\u043E\u0434 \u0431\u0440\u0435\u043D\u0434\u043E\u043C more originals;\\n\u2014 - \u042D\u043A\u0441\u043A\u043B\u044E\u0437\u0438\u0432\u043D\u044B\u0435 \u0437\u0430\u0440\u0443\u0431\u0435\u0436\u043D\u044B\u0435 - \u043F\u0440\u0435\u043C\u044C\u0435\u0440\u044B \u043E\u0434\u043D\u043E\u0432\u0440\u0435\u043C\u0435\u043D\u043D\u043E - \u0441\u043E \u0432\u0441\u0435\u043C \u043C\u0438\u0440\u043E\u043C;\\n\u2014 - \u0420\u043E\u0441\u0441\u0438\u0439\u0441\u043A\u0438\u0435 \u0441\u0435\u0440\u0438\u0430\u043B\u044B - \u0434\u043E \u044D\u0444\u0438\u0440\u0430 \u043D\u0430 \u0422\u0412;\\n\u2014 - \u0421\u0430\u043C\u044B\u0435 \u0437\u0440\u0435\u043B\u0438\u0449\u043D\u044B\u0435 - \u0442\u0443\u0440\u043D\u0438\u0440\u044B UFC;\\n\u2014 \u0425\u0438\u0442\u044B - \u043C\u0438\u0440\u043E\u0432\u043E\u0433\u043E \u043A\u0438\u043D\u043E - \u0438 \u043B\u044E\u0431\u0438\u043C\u0430\u044F \u0442\u0435\u043B\u0435\u0432\u0438\u0437\u0438\u043E\u043D\u043D\u0430\u044F - \u043A\u043B\u0430\u0441\u0441\u0438\u043A\u0430 \u0431\u0435\u0437 \u0440\u0435\u043A\u043B\u0430\u043C\u044B;\\n\u2014 - \u041F\u0440\u044F\u043C\u043E\u0439 \u044D\u0444\u0438\u0440 \u0433\u043B\u0430\u0432\u043D\u044B\u0445 - \u044D\u0444\u0438\u0440\u043D\u044B\u0445 \u0438 \u043F\u043B\u0430\u0442\u043D\u044B\u0445 - \u0442\u0435\u043B\u0435\u043A\u0430\u043D\u0430\u043B\u043E\u0432;\\n\\n\u041E\u0442\u043A\u0440\u044B\u0432\u0430\u0439 - \u043A\u0430\u0436\u0434\u044B\u0439 \u0434\u0435\u043D\u044C more \u0432 - \u043E\u0434\u043D\u043E\u0439 \u043F\u043E\u0434\u043F\u0438\u0441\u043A\u0435 - \u2014 \u0432\u0441\u0435\u0433\u043E \u0437\u0430 299 \u0440\u0443\u0431\u043B\u0435\u0439 - \u0432 \u043C\u0435\u0441\u044F\u0446. \\n\u041D\u0430\u0448 Telegram-\u043A\u0430\u043D\u0430\u043B: - https://t.me/itsmoretv\\n\",\n \"keywords\": \"more moretv more.tv - videomore \u043C\u043E\u0440\u0435\u0442\u0432 \\\"\u043B\u0443\u0447\u0448\u0438\u0439 - \u043E\u043D\u043B\u0430\u0439\u043D \u043A\u0438\u043D\u043E\u0442\u0435\u0430\u0442\u0440\\\"\",\n - \ \"unsubscribedTrailer\": \"DmBBtozY0ns\",\n \"country\": - \"RU\"\n },\n \"image\": {\n \"bannerExternalUrl\": - \"https://yt3.googleusercontent.com/uBHAHtA745dmrXQG7KG2nae_n52oye01Fmf8gKvJkRtSsDZYIvG4Xjvibh_3ffjkYicMU0jpyA\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:41 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"fullyEncodeReservedExpansion\": true,\n \"resources\": {\n - \ \"liveChatModerators\": {\n \"methods\": {\n \"insert\": {\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\"\n - \ },\n \"delete\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes a chat moderator.\",\n \"id\": - \"youtube.liveChatModerators.delete\"\n },\n \"list\": {\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"id\": \"youtube.liveChatModerators.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"liveChatId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"The id of the live chat for which moderators should be returned.\",\n \"required\": - true\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the liveChatModerator resource parts that the API response will include. Supported - values are id and snippet.\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ }\n }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"delete\": {\n \"id\": \"youtube.thirdPartyLinks.delete\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"linkingToken\": - {\n \"type\": \"string\",\n \"description\": \"Delete - the partner links with the given linking token.\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"externalChannelId\": - {\n \"description\": \"Channel ID to which changes should be - applied, for delegation.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"description\": \"Type of the link to be deleted.\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"Do not use. Required for compatibility.\",\n - \ \"type\": \"string\"\n }\n }\n },\n - \ \"list\": {\n \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"parameters\": {\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"linkingToken\": {\n \"description\": - \"Get a third party link with the given linking token.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"description\": \"Get a third party link of the given type.\",\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"location\": \"query\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.thirdPartyLinks.list\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"GET\"\n },\n - \ \"insert\": {\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the thirdPartyLink resource parts that the API request and response will include. - Supported values are linkingToken, status, and snippet.\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ }\n },\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\"\n },\n \"update\": - {\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"description\": \"Updates an existing resource.\",\n - \ \"id\": \"youtube.thirdPartyLinks.update\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"repeated\": true\n }\n - \ }\n }\n }\n },\n \"activities\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.activities.list\",\n \"flatPath\": - \"youtube/v3/activities\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"default\": - \"5\",\n \"minimum\": \"0\"\n },\n \"home\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"publishedBefore\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"format\": \"google-datetime\"\n },\n \"publishedAfter\": - {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n - \ \"type\": \"string\"\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\"\n }\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/activities\"\n }\n }\n - \ },\n \"superChatEvents\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"type\": - \"integer\",\n \"description\": \"The *maxResults* parameter - specifies the maximum number of items that should be returned in the result - set.\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"minimum\": \"1\",\n \"default\": \"5\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"hl\": {\n \"description\": \"Return - rendered funding amounts in specified language.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the superChatEvent resource parts that the API - response will include. This parameter is currently not supported.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.superChatEvents.list\",\n \"path\": \"youtube/v3/superChatEvents\"\n - \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"description\": \"Deletes a resource.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.captions.delete\",\n \"path\": \"youtube/v3/captions\"\n - \ },\n \"download\": {\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/captions/{id}\",\n \"id\": \"youtube.captions.download\",\n - \ \"useMediaDownloadService\": true,\n \"supportsMediaDownload\": - true,\n \"httpMethod\": \"GET\",\n \"description\": \"Downloads - a caption track.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"tfmt\": {\n \"description\": - \"Convert the captions into this format. Supported options are sbv, srt, and - vtt.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - ID of the caption track to download, required for One Platform.\",\n \"location\": - \"path\"\n },\n \"tlang\": {\n \"location\": - \"query\",\n \"description\": \"tlang is the language code; machine - translate the captions into this language.\",\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"update\": {\n \"description\": \"Updates an - existing resource.\",\n \"httpMethod\": \"PUT\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n - \ \"resumable\": {\n \"multipart\": true,\n \"path\": - \"/resumable/upload/youtube/v3/captions\"\n }\n },\n - \ \"maxSize\": \"104857600\",\n \"accept\": [\n \"text/xml\",\n - \ \"application/octet-stream\",\n \"*/*\"\n ]\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/captions\",\n \"response\": {\n - \ \"$ref\": \"Caption\"\n },\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"id\": \"youtube.captions.update\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is on behalf of.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"sync\": - {\n \"type\": \"boolean\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true\n },\n \"list\": {\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/captions\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"id\": \"youtube.captions.list\",\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Returns the captions with the given IDs for - Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"required\": true,\n \"description\": - \"Returns the captions for the specified video.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"insert\": {\n \"parameters\": - {\n \"sync\": {\n \"description\": \"Extra parameter - to allow automatically syncing the uploaded caption/transcript with the audio.\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n },\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"mediaUpload\": {\n \"protocols\": {\n - \ \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/captions\"\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ }\n },\n \"maxSize\": \"104857600\",\n - \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"supportsMediaUpload\": true,\n \"id\": \"youtube.captions.insert\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"flatPath\": \"youtube/v3/captions\"\n }\n }\n },\n - \ \"subscriptions\": {\n \"methods\": {\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/subscriptions\"\n },\n - \ \"insert\": {\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"request\": - {\n \"$ref\": \"Subscription\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\"\n }\n },\n \"response\": - {\n \"$ref\": \"Subscription\"\n }\n },\n \"list\": - {\n \"parameters\": {\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"myRecentSubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\"\n },\n - \ \"order\": {\n \"default\": \"relevance\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Sort by relevance.\",\n \"Sort by order of - activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"description\": \"The order of the returned - subscriptions\"\n },\n \"forChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"channelId\": {\n \"description\": - \"Return the subscriptions of the given channel owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"mySubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Return the subscribers of the given channel - owner.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"description\": \"Retrieves a list of resources, possibly - filtered.\",\n \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"id\": \"youtube.subscriptions.list\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"update\": - {\n \"description\": \"Updates an existing resource.\",\n \"id\": - \"youtube.channels.update\",\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"request\": {\n \"$ref\": - \"Channel\"\n },\n \"flatPath\": \"youtube/v3/channels\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/channels\"\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"0\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"type\": - \"integer\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Return the channels with the - specified IDs.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"categoryId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the channels within the specified guide category ID.\"\n },\n - \ \"managedByMe\": {\n \"description\": \"Return the - channels managed by the authenticated user.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"forUsername\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the channel associated with a YouTube - username.\"\n },\n \"mySubscribers\": {\n \"location\": - \"query\",\n \"description\": \"Return the channels subscribed - to the authenticated user\",\n \"type\": \"boolean\"\n },\n - \ \"mine\": {\n \"type\": \"boolean\",\n \"description\": - \"Return the ids of channels owned by the authenticated user.\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Stands for \\\"host language\\\". Specifies the localization language of - the metadata to be filled into snippet.localized. The field is filled with - the default metadata if there is no localization in the specified language. - The parameter value must be a language code included in the list returned - by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"response\": - {\n \"$ref\": \"ChannelListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.channels.list\",\n - \ \"path\": \"youtube/v3/channels\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ]\n }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"insert\": {\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"list\": {\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": - \"GET\",\n \"id\": \"youtube.liveBroadcasts.list\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"description\": - \"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, status - and statistics.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"broadcastStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"description\": \"Return broadcasts - with a certain status, e.g. active broadcasts.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ]\n },\n \"onBehalfOfContentOwner\": {\n - \ \"location\": \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n - \ \"broadcastType\": {\n \"type\": \"string\",\n \"default\": - \"event\",\n \"description\": \"Return only broadcasts with the - selected type.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return only - scheduled event broadcasts.\",\n \"Return only persistent broadcasts.\"\n - \ ],\n \"location\": \"query\",\n \"enum\": - [\n \"broadcastTypeFilterUnspecified\",\n \"all\",\n - \ \"event\",\n \"persistent\"\n ]\n - \ },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"default\": \"5\"\n },\n \"mine\": {\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"Return broadcasts with the given - ids from Stubby or Apiary.\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"insertCuepoint\": - {\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [],\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"request\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"httpMethod\": - \"POST\",\n \"description\": \"Insert cuepoints in a broadcast\"\n - \ },\n \"update\": {\n \"id\": \"youtube.liveBroadcasts.update\",\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Updates an existing broadcast for the authenticated user.\",\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"bind\": {\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n - \ \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"id\": - \"youtube.liveBroadcasts.bind\",\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"streamId\": {\n - \ \"description\": \"Stream to bind, if not set unbind the current - one.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"Broadcast to bind to the stream\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Bind - a broadcast to a stream.\"\n },\n \"transition\": {\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"Broadcast to transition.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"broadcastStatus\": - {\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"location\": \"query\",\n \"description\": - \"The status to which the broadcast is going to transition.\",\n \"enum\": - [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Transition a broadcast to a given - status.\",\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.transition\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"delete\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.liveBroadcasts.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"Broadcast to delete.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"description\": \"Delete a given broadcast.\"\n }\n - \ }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"TestItem\"\n },\n \"response\": - {\n \"$ref\": \"TestItem\"\n },\n \"description\": - \"POST method.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/tests\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/tests\",\n - \ \"id\": \"youtube.tests.insert\"\n }\n }\n },\n \"search\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"topicId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Restrict results to a particular topic.\"\n },\n \"order\": - {\n \"type\": \"string\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"description\": - \"Sort order of the results.\",\n \"default\": \"relevance\",\n - \ \"location\": \"query\"\n },\n \"relatedToVideoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Search related to a resource.\"\n },\n - \ \"videoCaption\": {\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter results based on caption availability.\",\n - \ \"Only include videos that have captions.\",\n \"Only - include videos that do not have captions.\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on the presence of captions on the videos.\"\n },\n \"forMine\": - {\n \"type\": \"boolean\",\n \"description\": \"Search - for the private videos of the authenticated user.\",\n \"location\": - \"query\"\n },\n \"location\": {\n \"description\": - \"Filter on location of the video\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"relevanceLanguage\": - {\n \"location\": \"query\",\n \"description\": - \"Return results relevant to this language.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"videoSyndicated\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Filter - on syndicated videos.\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ]\n },\n - \ \"channelType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all channels.\",\n \"Only retrieve - shows.\"\n ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Add a filter on the channel - search.\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ]\n },\n - \ \"publishedAfter\": {\n \"location\": \"query\",\n - \ \"description\": \"Filter on resources published after this - date.\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\"\n },\n \"q\": {\n \"description\": - \"Textual search terms to match.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\"\n },\n - \ \"videoEmbeddable\": {\n \"description\": \"Filter - on embeddable videos.\",\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, embeddable or not.\",\n \"Only - retrieve embeddable videos.\"\n ],\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Restrict - results to a particular set of resource types from One Platform.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"required\": - true\n },\n \"videoType\": {\n \"location\": - \"query\",\n \"description\": \"Filter on videos of a specific - type.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ]\n },\n \"videoLicense\": {\n \"description\": - \"Filter on the license of the videos.\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"location\": \"query\"\n },\n \"videoDefinition\": - {\n \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Filter - on the definition of the videos.\",\n \"enumDescriptions\": [\n - \ \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ]\n },\n \"eventType\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on the livestream status of the videos.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n - \ },\n \"videoDimension\": {\n \"enum\": - [\n \"any\",\n \"2d\",\n \"3d\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"Include - both 3D and non-3D videos in returned results. This is the default value.\",\n - \ \"Restrict search results to exclude 3D videos.\",\n \"Restrict - search results to only include 3D videos.\"\n ],\n \"description\": - \"Filter on 3d videos.\"\n },\n \"publishedBefore\": - {\n \"description\": \"Filter on resources published before this - date.\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoCategoryId\": - {\n \"description\": \"Filter on videos in a specific category.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"safeSearch\": {\n \"location\": - \"query\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"default\": \"moderate\",\n \"description\": - \"Indicates whether the search results should include restricted content as - well as standard content.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ],\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n },\n \"locationRadius\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on distance from the location (specified above).\",\n \"type\": - \"string\"\n },\n \"videoDuration\": {\n \"enum\": - [\n \"videoDurationUnspecified\",\n \"any\",\n - \ \"short\",\n \"medium\",\n \"long\"\n - \ ],\n \"description\": \"Filter on the duration - of the videos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Do not filter video search results based on their duration. - This is the default value.\",\n \"Only include videos that - are less than four minutes long.\",\n \"Only include videos - that are between four and 20 minutes long (inclusive).\",\n \"Only - include videos longer than 20 minutes.\"\n ],\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"regionCode\": - {\n \"description\": \"Display the content as seen by viewers - in this country.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"forContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Search owned by a content owner.\"\n },\n \"channelId\": - {\n \"description\": \"Filter on resources belonging to this - channelId.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"forDeveloper\": {\n \"type\": - \"boolean\",\n \"description\": \"Restrict the search to only - retrieve videos uploaded using the project id of the authenticated user.\",\n - \ \"location\": \"query\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/search\",\n \"path\": - \"youtube/v3/search\",\n \"id\": \"youtube.search.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of search resources\"\n }\n }\n },\n \"videos\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos\",\n \"parameters\": {\n - \ \"chart\": {\n \"description\": \"Return the videos - that are in the specified chart.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return the most popular videos for - the specified content region and video category.\"\n ],\n \"enum\": - [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"required\": - true\n },\n \"locale\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"myRating\": {\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\"\n },\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Return videos with the given ids.\",\n \"location\": - \"query\"\n },\n \"regionCode\": {\n \"description\": - \"Use a chart that is specific to the specified region\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"maxWidth\": {\n \"maximum\": - \"8192\",\n \"description\": \"Return the player with maximum - height specified in\",\n \"location\": \"query\",\n \"minimum\": - \"72\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"minimum\": - \"1\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"description\": \"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.\"\n },\n \"videoCategoryId\": - {\n \"location\": \"query\",\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"type\": - \"string\",\n \"default\": \"0\"\n },\n \"maxHeight\": - {\n \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"maximum\": \"8192\",\n \"minimum\": \"72\",\n - \ \"format\": \"int32\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/videos\",\n \"id\": - \"youtube.videos.list\",\n \"response\": {\n \"$ref\": - \"VideoListResponse\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"update\": {\n \"response\": {\n - \ \"$ref\": \"Video\"\n },\n \"httpMethod\": \"PUT\",\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"path\": \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n }\n - \ },\n \"id\": \"youtube.videos.update\",\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"reportAbuse\": {\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"description\": \"Report abuse for a video.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.videos.reportAbuse\",\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n \"parameterOrder\": - [],\n \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n - \ }\n },\n \"insert\": {\n \"supportsMediaUpload\": - true,\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"id\": \"youtube.videos.insert\",\n \"mediaUpload\": {\n - \ \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": true\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/videos\"\n }\n - \ },\n \"maxSize\": \"274877906944\",\n \"accept\": - [\n \"video/*\",\n \"application/octet-stream\"\n - \ ]\n },\n \"parameters\": {\n \"autoLevels\": - {\n \"description\": \"Should auto-levels be applied to the upload.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n - \ \"required\": true\n },\n \"notifySubscribers\": - {\n \"type\": \"boolean\",\n \"description\": \"Notify - the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"default\": \"true\",\n \"location\": - \"query\"\n },\n \"stabilize\": {\n \"location\": - \"query\",\n \"description\": \"Should stabilize be applied to - the upload.\",\n \"type\": \"boolean\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"path\": \"youtube/v3/videos\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\"\n },\n \"getRating\": {\n - \ \"description\": \"Retrieves the ratings that the authorized user - gave to a list of specified videos.\",\n \"httpMethod\": \"GET\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"path\": \"youtube/v3/videos/getRating\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos/getRating\",\n \"response\": - {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"id\": - \"youtube.videos.getRating\"\n },\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"path\": \"youtube/v3/videos\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.videos.delete\",\n - \ \"flatPath\": \"youtube/v3/videos\"\n },\n \"rate\": - {\n \"description\": \"Adds a like or dislike rating to a video or - removes a rating from a video.\",\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/videos/rate\",\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"rating\": {\n \"enum\": [\n - \ \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"required\": true\n }\n - \ },\n \"id\": \"youtube.videos.rate\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"id\",\n \"rating\"\n - \ ]\n }\n }\n },\n \"members\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"mode\": {\n \"location\": - \"query\",\n \"description\": \"Parameter that specifies which - channel members to return.\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - only members that joined after the first call with this mode was made.\",\n - \ \"Return all current members, from newest to oldest.\"\n ],\n - \ \"default\": \"all_current\",\n \"type\": \"string\"\n - \ },\n \"filterByMemberChannelId\": {\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"maximum\": \"1000\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"hasAccessToLevel\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Filter - members in the results set to the ones that have access to a level.\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n }\n },\n \"description\": \"Retrieves - a list of members that match the request criteria for a channel.\",\n \"flatPath\": - \"youtube/v3/members\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"id\": \"youtube.members.list\",\n \"path\": - \"youtube/v3/members\"\n }\n }\n },\n \"liveChatBans\": - {\n \"methods\": {\n \"delete\": {\n \"id\": \"youtube.liveChatBans.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat ban.\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"insert\": {\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\"\n }\n }\n },\n \"watermarks\": - {\n \"methods\": {\n \"set\": {\n \"parameters\": {\n - \ \"channelId\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Allows - upload of watermark image and setting it for a channel.\",\n \"path\": - \"youtube/v3/watermarks/set\",\n \"id\": \"youtube.watermarks.set\",\n - \ \"flatPath\": \"youtube/v3/watermarks/set\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"supportsMediaUpload\": true,\n \"request\": - {\n \"$ref\": \"InvideoBranding\"\n },\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\"\n - \ }\n },\n \"maxSize\": \"10485760\"\n }\n - \ },\n \"unset\": {\n \"description\": \"Allows removal - of channel watermark.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"channelId\": {\n - \ \"type\": \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"path\": - \"youtube/v3/watermarks/unset\",\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.watermarks.unset\"\n }\n }\n },\n \"liveStreams\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"id\": \"youtube.liveStreams.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"0\",\n \"format\": \"uint32\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"maximum\": \"50\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"description\": - \"Return LiveStreams with the given ids from Stubby or Apiary.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n - \ },\n \"description\": \"Retrieve the list of streams associated - with the given channel. --\"\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes an existing stream for the authenticated user.\",\n \"id\": - \"youtube.liveStreams.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveStreams\"\n },\n \"update\": - {\n \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"description\": \"Updates an existing - stream for the authenticated user.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveStreams.update\"\n },\n - \ \"insert\": {\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"description\": \"Inserts a new stream for the authenticated - user.\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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, content_details, and status.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n }\n }\n }\n - \ },\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": - {\n \"path\": \"youtube/v3/i18nLanguages\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"The *part* parameter - specifies the i18nLanguage resource properties that the API response will - include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"hl\": - {\n \"default\": \"en_US\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/i18nLanguages\",\n \"response\": {\n \"$ref\": - \"I18nLanguageListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.i18nLanguages.list\"\n - \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"description\": \"Retrieves a list of all pricing - levels offered by a creator to the fans.\",\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/membershipsLevels\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - membershipsLevel resource parts that the API response will include. Supported - values are id and snippet.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ }\n }\n },\n \"comments\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/comments\",\n \"id\": - \"youtube.comments.list\",\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comments with the given IDs for One Platform.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"minimum\": - \"1\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"maximum\": \"100\",\n - \ \"default\": \"20\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"parentId\": {\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies a comma-separated - list of one or more comment resource properties that the API response will - include.\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"textFormat\": {\n \"default\": - \"html\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"textFormatUnspecified\",\n \"html\",\n \"plainText\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"description\": \"The requested - text format for the returned comments.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n },\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"id\": \"youtube.comments.insert\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"Comment\"\n - \ }\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.comments.delete\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"description\": - \"Deletes a resource.\",\n \"path\": \"youtube/v3/comments\"\n },\n - \ \"setModerationStatus\": {\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"path\": - \"youtube/v3/comments/setModerationStatus\",\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ],\n \"httpMethod\": - \"POST\",\n \"description\": \"Sets the moderation status of one - or more comments.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"banAuthor\": {\n - \ \"description\": \"If set to true the author of the comment - gets added to the ban list. This means all future comments of the author will - autmomatically be rejected. Only valid in combination with STATUS_REJECTED.\",\n - \ \"location\": \"query\",\n \"default\": \"false\",\n - \ \"type\": \"boolean\"\n },\n \"id\": {\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\",\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"moderationStatus\": {\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"required\": - true,\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ]\n - \ }\n }\n },\n \"update\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\"\n }\n },\n \"path\": - \"youtube/v3/comments\",\n \"id\": \"youtube.comments.update\",\n - \ \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/comments\"\n },\n \"markAsSpam\": - {\n \"parameters\": {\n \"id\": {\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/comments/markAsSpam\",\n - \ \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"id\": \"youtube.comments.markAsSpam\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n - \ \"set\": {\n \"id\": \"youtube.thumbnails.set\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"mediaUpload\": {\n \"protocols\": {\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ }\n },\n \"maxSize\": \"2097152\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"path\": \"youtube/v3/thumbnails/set\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the Thumbnail with the given video - IDs for Stubby or Apiary.\",\n \"required\": true\n }\n - \ },\n \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"description\": \"As this is not an insert in a strict - sense (it supports uploading/setting of a thumbnail for multiple videos, which - doesn't result in creation of a single resource), I use a custom verb here.\",\n - \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [\n \"videoId\"\n ]\n }\n - \ }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": {\n - \ \"list\": {\n \"parameters\": {\n \"part\": {\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the videoCategory resource parts that the API response - will include. Supported values are id and snippet.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"default\": \"en-US\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"id\": - \"youtube.videoAbuseReportReasons.list\",\n \"response\": {\n \"$ref\": - \"VideoAbuseReportReasonListResponse\"\n }\n }\n }\n - \ },\n \"youtube\": {\n \"resources\": {\n \"v3\": {\n \"methods\": - {\n \"updateCommentThreads\": {\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"response\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ }\n },\n \"parameterOrder\": []\n - \ }\n }\n }\n }\n },\n \"videoCategories\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/videoCategories\",\n \"response\": {\n \"$ref\": - \"VideoCategoryListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Returns the video categories with - the given IDs for Stubby or Apiary.\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"hl\": {\n \"default\": \"en-US\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.videoCategories.list\",\n \"httpMethod\": \"GET\"\n }\n - \ }\n },\n \"i18nRegions\": {\n \"methods\": {\n \"list\": - {\n \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"I18nRegionListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"flatPath\": \"youtube/v3/i18nRegions\",\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the i18nRegion resource properties that the API response - will include. Set the parameter value to snippet.\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"default\": \"en_US\"\n }\n },\n \"id\": - \"youtube.i18nRegions.list\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/i18nRegions\"\n }\n }\n },\n - \ \"channelBanners\": {\n \"methods\": {\n \"insert\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n - \ \"parameters\": {\n \"channelId\": {\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"request\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"parameterOrder\": [],\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"id\": \"youtube.channelBanners.insert\",\n \"httpMethod\": - \"POST\",\n \"supportsMediaUpload\": true,\n \"description\": - \"Inserts a new resource into this collection.\",\n \"mediaUpload\": - {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"6291456\",\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n }\n }\n }\n }\n },\n - \ \"abuseReports\": {\n \"methods\": {\n \"insert\": {\n \"id\": - \"youtube.abuseReports.insert\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"required\": true\n }\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"response\": {\n \"$ref\": \"AbuseReport\"\n - \ },\n \"httpMethod\": \"POST\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/abuseReports\",\n \"path\": - \"youtube/v3/abuseReports\",\n \"request\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ]\n }\n }\n },\n \"playlists\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.playlists.list\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"description\": - \"Return the playlists owned by the specified channel ID.\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"description\": - \"Return the playlists owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ }\n },\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"path\": \"youtube/v3/playlists\"\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - resource.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/playlists\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.playlists.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"update\": {\n \"path\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"id\": \"youtube.playlists.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"httpMethod\": \"PUT\"\n },\n \"insert\": - {\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/playlists\",\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/playlists\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlists.insert\",\n \"response\": {\n - \ \"$ref\": \"Playlist\"\n }\n }\n }\n },\n - \ \"channelSections\": {\n \"methods\": {\n \"list\": {\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"parameters\": {\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the ChannelSections owned by the specified - channel ID.\"\n },\n \"onBehalfOfContentOwner\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Return - content in specified language\"\n },\n \"mine\": {\n - \ \"description\": \"Return the ChannelSections owned by the authenticated - user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"id\": - \"youtube.channelSections.list\"\n },\n \"update\": {\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/channelSections\",\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.channelSections.update\",\n - \ \"flatPath\": \"youtube/v3/channelSections\"\n },\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.channelSections.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new resource into this collection.\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"path\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channelSections.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\",\n \"repeated\": true\n }\n - \ }\n }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"id\": \"youtube.liveChatMessages.list\",\n \"parameters\": - {\n \"liveChatId\": {\n \"required\": true,\n \"type\": - \"string\",\n \"description\": \"The id of the live chat for - which comments should be returned.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies the liveChatComment resource parts that the API response - will include. Supported values are id and snippet.\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"maximum\": - \"2000\",\n \"default\": \"500\",\n \"minimum\": - \"200\",\n \"format\": \"uint32\"\n },\n \"profileImageSize\": - {\n \"format\": \"uint32\",\n \"minimum\": \"16\",\n - \ \"maximum\": \"720\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"description\": \"Specifies - the size of the profile image that should be returned for each user.\"\n },\n - \ \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Specifies the localization language - in which the system messages should be returned.\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\"\n },\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"id\": - \"youtube.liveChatMessages.delete\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Deletes a chat message.\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ]\n },\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/liveChat/messages\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.insert\"\n - \ }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"id\": \"youtube.commentThreads.list\",\n - \ \"parameters\": {\n \"moderationStatus\": {\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"type\": \"string\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"location\": - \"query\",\n \"default\": \"published\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"allThreadsRelatedToChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Returns the comment threads of all videos of the channel and the channel - comments as well.\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads for all the channel comments (ie does not include comments - left on videos).\",\n \"location\": \"query\"\n },\n - \ \"searchTerms\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Limits the returned comment threads - to those matching the specified key words. Not compatible with the 'id' filter.\"\n - \ },\n \"id\": {\n \"description\": \"Returns - the comment threads with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"order\": {\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"type\": \"string\",\n \"default\": - \"time\"\n },\n \"textFormat\": {\n \"description\": - \"The requested text format for the returned comments.\",\n \"location\": - \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"type\": \"string\",\n \"default\": \"html\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ]\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"Returns - the comment threads of the specified video.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"default\": \"20\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"minimum\": \"1\",\n - \ \"maximum\": \"100\"\n }\n },\n \"path\": - \"youtube/v3/commentThreads\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insert\": {\n \"id\": \"youtube.commentThreads.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"path\": \"youtube/v3/commentThreads\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ }\n }\n },\n \"playlistItems\": {\n \"methods\": {\n - \ \"update\": {\n \"httpMethod\": \"PUT\",\n \"id\": - \"youtube.playlistItems.update\",\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"description\": \"Updates an existing - resource.\"\n },\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"PlaylistItem\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.playlistItems.insert\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"PlaylistItemListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\"\n },\n - \ \"playlistId\": {\n \"description\": \"Return the - playlist items within the given playlist.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoId\": - {\n \"description\": \"Return the playlist items associated with - the given video ID.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.list\"\n - \ },\n \"delete\": {\n \"id\": \"youtube.playlistItems.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n }\n - \ }\n }\n }\n },\n \"ownerDomain\": \"google.com\",\n \"protocol\": - \"rest\",\n \"id\": \"youtube:v3\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": - {\n \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n }\n }\n - \ }\n },\n \"version\": \"v3\",\n \"title\": \"YouTube Data API v3\",\n - \ \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"schemas\": {\n \"ChannelStatus\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelStatus\",\n \"properties\": {\n \"longUploadsStatus\": - {\n \"description\": \"The long uploads status of this channel. See - https://support.google.com/youtube/answer/71673 for more information.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ]\n },\n \"isLinked\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"Privacy - status of the channel.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"description\": \"JSON template for the status - part of a channel.\"\n },\n \"Member\": {\n \"id\": \"Member\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#member\\\".\",\n \"type\": \"string\",\n - \ \"default\": \"youtube#member\"\n },\n \"snippet\": - {\n \"$ref\": \"MemberSnippet\",\n \"description\": \"The - snippet object contains basic details about the member.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"description\": \"A *member* resource - represents a member for a YouTube channel. A member provides recurring monetary - support to a creator and receives special benefits.\"\n },\n \"InvideoPosition\": - {\n \"id\": \"InvideoPosition\",\n \"properties\": {\n \"cornerPosition\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n - \ \"bottomRight\"\n ],\n \"description\": \"Describes - in which corner of the video the visual widget will appear.\"\n },\n - \ \"type\": {\n \"description\": \"Defines the position type.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\"\n - \ ],\n \"enum\": [\n \"corner\"\n ]\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Describes - the spatial position of a visual widget inside a video. It is a union of various - position types, out of which only will be set one.\"\n },\n \"CaptionSnippet\": - {\n \"id\": \"CaptionSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about a caption track, such as its language and name.\",\n - \ \"properties\": {\n \"trackKind\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The caption track's type.\",\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"type\": \"string\"\n },\n \"lastUpdated\": - {\n \"description\": \"The date and time when the caption track was - last updated.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"audioTrackType\": {\n \"type\": - \"string\",\n \"description\": \"The type of audio track associated - with the caption track.\",\n \"enum\": [\n \"unknown\",\n - \ \"primary\",\n \"commentary\",\n \"descriptive\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"isCC\": - {\n \"description\": \"Indicates whether the track contains closed - captions for the deaf and hard of hearing. The default value is false.\",\n - \ \"type\": \"boolean\"\n },\n \"isDraft\": {\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n },\n - \ \"videoId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video associated with the caption track. @mutable youtube.captions.insert\",\n - \ \"type\": \"string\"\n },\n \"failureReason\": {\n - \ \"description\": \"The reason that YouTube failed to process the - caption track. This property is only present if the state property's value - is failed.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ]\n },\n \"name\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\"\n },\n \"isLarge\": {\n - \ \"description\": \"Indicates whether the caption track uses large - text for the vision-impaired. The default value is false.\",\n \"type\": - \"boolean\"\n },\n \"status\": {\n \"enum\": [\n \"serving\",\n - \ \"syncing\",\n \"failed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The caption track's status.\",\n \"type\": - \"string\"\n },\n \"isEasyReader\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n },\n \"isAutoSynced\": - {\n \"description\": \"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.\",\n \"type\": - \"boolean\"\n },\n \"language\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The language of the caption track. The property value is a BCP-47 language - tag.\"\n }\n }\n },\n \"I18nRegion\": {\n \"id\": \"I18nRegion\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#i18nRegion\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegion\\\".\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the i18n region, such as region code and - human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the i18n region.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"A *i18nRegion* resource identifies a region - where YouTube is available.\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n \"type\": - \"object\",\n \"description\": \"Details about a resource which is being - promoted.\",\n \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the promoted video.\",\n \"type\": - \"string\"\n },\n \"adTag\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should fetch to request a - promoted item.\"\n },\n \"creativeViewUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\",\n \"type\": \"string\"\n },\n \"ctaType\": - {\n \"enum\": [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of call-to-action, a message - to the user indicating action that can be taken.\",\n \"type\": \"string\"\n - \ },\n \"forecastingUrl\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"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.\"\n },\n \"clickTrackingUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user clicked through - on this promoted item.\",\n \"type\": \"string\"\n },\n \"impressionUrl\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The list of impression - URLs. The client should ping all of these URLs to indicate that the user was - shown this promoted item.\"\n },\n \"destinationUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should direct - the user to, if the user chooses to visit the advertiser's website.\"\n },\n - \ \"descriptionText\": {\n \"description\": \"The text description - to accompany the promoted item.\",\n \"type\": \"string\"\n },\n - \ \"customCtaButtonText\": {\n \"type\": \"string\",\n \"description\": - \"The custom call-to-action button text. If specified, it will override the - default button text for the cta_type.\"\n }\n }\n },\n \"LiveChatBanSnippet\": - {\n \"id\": \"LiveChatBanSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The chat this ban is pertinent to.\"\n },\n \"type\": {\n - \ \"enum\": [\n \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"An invalid ban type.\",\n - \ \"A permanent ban.\",\n \"A temporary ban.\"\n ],\n - \ \"description\": \"The type of ban.\"\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"banDurationSeconds\": - {\n \"type\": \"string\",\n \"description\": \"The duration - of a ban, only filled if the ban has type TEMPORARY.\",\n \"format\": - \"uint64\"\n }\n }\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"memberMonth\": {\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"userComment\": {\n - \ \"description\": \"The comment added by the member to this Member - Milestone Chat. This field is empty for messages without a comment from the - member.\",\n \"type\": \"string\"\n },\n \"memberLevelName\": - {\n \"description\": \"The name of the Level at which the viever - is a member. The Level names are defined by the YouTube channel offering the - Membership. In some situations this field isn't filled.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ChannelStatistics\": {\n \"type\": - \"object\",\n \"properties\": {\n \"videoCount\": {\n \"description\": - \"The number of videos uploaded to the channel.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"subscriberCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of subscribers that the channel has.\"\n },\n \"commentCount\": - {\n \"description\": \"The number of comments for the channel.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"hiddenSubscriberCount\": {\n \"description\": \"Whether - or not the number of subscribers is shown for this user.\",\n \"type\": - \"boolean\"\n },\n \"viewCount\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The number of - times the channel has been viewed.\"\n }\n },\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\",\n \"id\": \"ChannelStatistics\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"properties\": {\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n - \ \"isChatSponsor\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author is a sponsor of the live chat.\"\n },\n \"profileImageUrl\": - {\n \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"isChatOwner\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author is the owner of the live chat.\"\n - \ },\n \"channelUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channel's URL.\"\n },\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n },\n \"displayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's display name.\"\n },\n \"isChatModerator\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is a moderator of the live chat.\"\n }\n },\n \"id\": - \"LiveChatMessageAuthorDetails\",\n \"type\": \"object\"\n },\n \"ThirdPartyLinkStatus\": - {\n \"type\": \"object\",\n \"description\": \"The third-party link - status object contains information about the status of the link.\",\n \"properties\": - {\n \"linkStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ]\n }\n - \ },\n \"id\": \"ThirdPartyLinkStatus\"\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information about the resource that was added to the playlist.\"\n },\n - \ \"playlistItemId\": {\n \"type\": \"string\",\n \"description\": - \"ID of the item within the playlist.\"\n },\n \"playlistId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"Information about a new playlist item.\"\n },\n \"MembershipsDuration\": - {\n \"properties\": {\n \"memberSince\": {\n \"description\": - \"The date and time when the user became a continuous member across all levels.\",\n - \ \"type\": \"string\"\n },\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - across all levels in complete months (the time is rounded down to the nearest - integer).\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ }\n },\n \"id\": \"MembershipsDuration\",\n \"type\": - \"object\"\n },\n \"ChannelProfileDetails\": {\n \"id\": \"ChannelProfileDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"channelUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channel's URL.\"\n },\n - \ \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The channel's display name.\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel ID.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ChannelSettings\": {\n \"description\": \"Branding - properties for the channel view.\",\n \"id\": \"ChannelSettings\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"country\": - {\n \"description\": \"The country of the channel.\",\n \"type\": - \"string\"\n },\n \"unsubscribedTrailer\": {\n \"description\": - \"The trailer of the channel, for users that are not subscribers.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\"\n },\n \"keywords\": {\n \"type\": \"string\",\n - \ \"description\": \"Lists keywords associated with the channel, comma-separated.\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the channel title.\"\n },\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"moderateComments\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - user-submitted comments left on the channel page need to be approved by the - channel owner to be publicly visible.\"\n },\n \"defaultTab\": - {\n \"description\": \"Which content tab users should see when viewing - the channel.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the channel description.\"\n },\n \"featuredChannelsTitle\": - {\n \"type\": \"string\",\n \"description\": \"Title for - the featured channels tab.\"\n },\n \"featuredChannelsUrls\": - {\n \"description\": \"The list of featured channels.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"trackingAnalyticsAccountId\": {\n \"type\": - \"string\",\n \"description\": \"The ID for a Google Analytics account - to track and measure traffic to the channels.\"\n },\n \"showBrowseView\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the tab to browse the videos should be displayed.\"\n },\n \"profileColor\": - {\n \"description\": \"A prominent color that can be rendered on - this channel page.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"CommentSnippet\": {\n \"id\": \"CommentSnippet\",\n \"properties\": - {\n \"moderationStatus\": {\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\"\n },\n \"textDisplay\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"updatedAt\": {\n \"description\": - \"The date and time when the comment was last updated.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"authorProfileImageUrl\": {\n \"description\": - \"The URL for the avatar of the user who posted the comment.\",\n \"type\": - \"string\"\n },\n \"authorDisplayName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the user who posted - the comment.\"\n },\n \"canRate\": {\n \"description\": - \"Whether the current viewer can rate this comment.\",\n \"type\": - \"boolean\"\n },\n \"parentId\": {\n \"type\": \"string\",\n - \ \"description\": \"The unique id of the parent comment, only set - for replies.\"\n },\n \"textOriginal\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"viewerRating\": {\n \"description\": - \"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.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ],\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\"\n },\n - \ \"likeCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The total number of likes this comment has received.\",\n \"type\": - \"integer\"\n },\n \"authorChannelId\": {\n \"$ref\": - \"CommentSnippetAuthorChannelId\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comment refers to, if any.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the comment was originally published.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a comment, such as its author and text.\"\n },\n \"SearchResult\": {\n - \ \"type\": \"object\",\n \"description\": \"A search result contains - information about a YouTube video, channel, or playlist that matches the search - parameters specified in an API request. While a search result points to a - uniquely identifiable resource, like a video, it does not have its own persistent - data.\",\n \"properties\": {\n \"id\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The id object contains information - that can be used to uniquely identify the resource that matches the search - request.\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"default\": \"youtube#searchResult\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about a search result, such as its title or description. For example, if the - search result is a video, then the title will be the video's title and the - description will be the video's description.\",\n \"$ref\": \"SearchResultSnippet\"\n - \ }\n },\n \"id\": \"SearchResult\"\n },\n \"CommentThreadListResponse\": - {\n \"id\": \"CommentThreadListResponse\",\n \"properties\": {\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentThreadListResponse\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"CommentThread\"\n },\n \"description\": - \"A list of comment threads that match the request criteria.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"LiveBroadcastStatus\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveBroadcastStatus\",\n \"description\": \"Live broadcast - state.\",\n \"properties\": {\n \"recordingStatus\": {\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ],\n \"description\": \"The broadcast's recording status.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ]\n },\n \"madeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the broadcast is made for kids or not, - decided by YouTube instead of the creator. This field is read only.\"\n },\n - \ \"liveBroadcastPriority\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ],\n \"enum\": - [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ],\n \"description\": - \"Priority of the live broadcast event (internal state).\"\n },\n \"lifeCycleStatus\": - {\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n - \ \"ready\",\n \"testing\",\n \"live\",\n - \ \"complete\",\n \"revoked\",\n \"testStarting\",\n - \ \"liveStarting\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"enumDescriptions\": [\n \"No value or the - value is unknown.\",\n \"Incomplete settings, but otherwise valid\",\n - \ \"Complete settings\",\n \"Visible only to partner, - may need special UI treatment\",\n \"Viper is recording; this means - the \\\"clock\\\" is running\",\n \"The broadcast is finished.\",\n - \ \"This broadcast was removed by admin action\",\n \"Transition - into TESTING has been requested\",\n \"Transition into LIVE has - been requested\"\n ],\n \"type\": \"string\"\n },\n - \ \"privacyStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n }\n }\n - \ },\n \"ChannelAuditDetails\": {\n \"id\": \"ChannelAuditDetails\",\n - \ \"description\": \"The auditDetails object encapsulates channel data - that is relevant for YouTube Partners during the audit process.\",\n \"properties\": - {\n \"communityGuidelinesGoodStanding\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether or not the channel respects the community - guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": {\n \"description\": - \"Whether or not the channel has any copyright strikes.\",\n \"type\": - \"boolean\"\n },\n \"contentIdClaimsGoodStanding\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the channel has - any unresolved claims.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsUpload\": {\n \"type\": \"object\",\n - \ \"description\": \"Information about the uploaded video.\",\n \"id\": - \"ActivityContentDetailsUpload\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the uploaded video.\"\n }\n }\n - \ },\n \"LiveChatMessageDeletedDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessageDeletedDetails\",\n \"properties\": {\n - \ \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveChatSuperStickerDetails\": {\n \"id\": \"LiveChatSuperStickerDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"amountMicros\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ },\n \"superStickerMetadata\": {\n \"description\": - \"Information about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\"\n },\n \"tier\": {\n \"format\": - \"uint32\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": - \"integer\"\n },\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the purchase was made.\"\n - \ }\n }\n },\n \"I18nLanguage\": {\n \"id\": \"I18nLanguage\",\n - \ \"description\": \"An *i18nLanguage* resource identifies a UI language - currently supported by YouTube.\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#i18nLanguage\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguage\\\".\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the i18n language.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the i18n language, such as language code and human-readable name.\",\n - \ \"$ref\": \"I18nLanguageSnippet\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of broadcasts that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveBroadcastListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n }\n },\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"type\": \"object\"\n },\n \"CdnSettings\": {\n \"description\": - \"Brief description of the live stream cdn settings.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"format\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The format of - the video stream that you are sending to Youtube. \"\n },\n \"ingestionInfo\": - {\n \"$ref\": \"IngestionInfo\",\n \"description\": \"The - ingestionInfo object contains information that YouTube provides that you need - to transmit your RTMP or HTTP stream to YouTube.\"\n },\n \"resolution\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\",\n \"type\": \"string\"\n },\n \"ingestionType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \" The method or protocol used to transmit the - video stream.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"enum\": [\n \"rtmp\",\n - \ \"dash\",\n \"webrtc\",\n \"hls\"\n ]\n - \ },\n \"frameRate\": {\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"description\": - \"The frame rate of the inbound video data.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"CdnSettings\"\n - \ },\n \"ActivityListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#activityListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Activity\"\n }\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ }\n },\n \"id\": \"ActivityListResponse\"\n },\n \"PlaylistPlayer\": - {\n \"type\": \"object\",\n \"properties\": {\n \"embedHtml\": - {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a - player that will play the playlist.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"PlaylistPlayer\"\n },\n \"PlaylistLocalization\": - {\n \"description\": \"Playlist localization setting\",\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for playlist's - title.\"\n },\n \"description\": {\n \"description\": - \"The localized strings for playlist's description.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"PlaylistLocalization\"\n - \ },\n \"ChannelBannerResource\": {\n \"type\": \"object\",\n \"id\": - \"ChannelBannerResource\",\n \"properties\": {\n \"url\": {\n - \ \"description\": \"The URL of this banner image.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#channelBannerResource\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelBannerResource\\\".\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A channel banner returned as - the response to a channel_banner.insert call.\"\n },\n \"VideoCategoryListResponse\": - {\n \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#videoCategoryListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n - \ },\n \"items\": {\n \"description\": \"A list of video - categories that can be associated with YouTube videos. In this map, the video - category ID is the map key, and its value is the corresponding videoCategory - resource.\",\n \"items\": {\n \"$ref\": \"VideoCategory\"\n - \ },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": - \"VideoCategoryListResponse\",\n \"type\": \"object\"\n },\n \"LocalizedProperty\": - {\n \"properties\": {\n \"defaultLanguage\": {\n \"$ref\": - \"LanguageTag\",\n \"description\": \"The language of the default - property.\"\n },\n \"default\": {\n \"type\": \"string\"\n - \ },\n \"localized\": {\n \"items\": {\n \"$ref\": - \"LocalizedString\"\n },\n \"type\": \"array\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LocalizedProperty\"\n - \ },\n \"ChannelTopicDetails\": {\n \"type\": \"object\",\n \"id\": - \"ChannelTopicDetails\",\n \"properties\": {\n \"topicCategories\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"A list of Wikipedia URLs that describe the channel's - content.\",\n \"type\": \"array\"\n },\n \"topicIds\": - {\n \"type\": \"array\",\n \"description\": \"A list of - Freebase topic IDs associated with the channel. You can retrieve information - about each topic using the Freebase Topic API.\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n }\n },\n \"description\": - \"Freebase topic information related to the channel.\"\n },\n \"MonitorStreamInfo\": - {\n \"properties\": {\n \"broadcastStreamDelayMs\": {\n \"format\": - \"uint32\",\n \"description\": \"If you have set the enableMonitorStream - property to true, then this property determines the length of the live broadcast - delay.\",\n \"type\": \"integer\",\n \"annotations\": {\n - \ \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"HTML code that embeds a player that - plays the monitor stream.\"\n },\n \"enableMonitorStream\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - determines whether the monitor stream is enabled for the broadcast. If the - monitor stream is enabled, then YouTube will broadcast the event content on - a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n }\n },\n \"description\": \"Settings - and Info of the monitor stream\",\n \"type\": \"object\",\n \"id\": - \"MonitorStreamInfo\"\n },\n \"VideoFileDetailsVideoStream\": {\n \"description\": - \"Information about a video stream.\",\n \"properties\": {\n \"rotation\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ],\n \"type\": \"string\"\n },\n \"heightPixels\": - {\n \"type\": \"integer\",\n \"description\": \"The encoded - video content's height in pixels.\",\n \"format\": \"uint32\"\n },\n - \ \"widthPixels\": {\n \"type\": \"integer\",\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\",\n \"format\": - \"uint32\"\n },\n \"bitrateBps\": {\n \"type\": \"string\",\n - \ \"description\": \"The video stream's bitrate, in bits per second.\",\n - \ \"format\": \"uint64\"\n },\n \"codec\": {\n \"description\": - \"The video codec that the stream uses.\",\n \"type\": \"string\"\n - \ },\n \"vendor\": {\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\",\n \"type\": \"string\"\n },\n \"frameRateFps\": - {\n \"type\": \"number\",\n \"description\": \"The video - stream's frame rate, in frames per second.\",\n \"format\": \"double\"\n - \ },\n \"aspectRatio\": {\n \"format\": \"double\",\n - \ \"type\": \"number\",\n \"description\": \"The video content's - display aspect ratio, which specifies the aspect ratio in which the video - should be displayed.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoFileDetailsVideoStream\"\n },\n \"ChannelSectionContentDetails\": - {\n \"properties\": {\n \"playlists\": {\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"channels\": - {\n \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n }\n },\n \"id\": \"ChannelSectionContentDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Details about a channelsection, - including playlists and channels.\"\n },\n \"VideoRecordingDetails\": - {\n \"id\": \"VideoRecordingDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"location\": {\n \"description\": - \"The geolocation information associated with the video.\",\n \"$ref\": - \"GeoPoint\"\n },\n \"locationDescription\": {\n \"description\": - \"The text description of the location where the video was recorded.\",\n - \ \"type\": \"string\"\n },\n \"recordingDate\": {\n - \ \"description\": \"The date and time when the video was recorded.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Recording information associated with the - video.\"\n },\n \"ContentRating\": {\n \"description\": \"Ratings - schemes. The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n - \ \"id\": \"ContentRating\",\n \"properties\": {\n \"russiaRating\": - {\n \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's National - Film Registry of the Russian Federation (MKRF - Russia) rating.\"\n },\n - \ \"nfvcbRating\": {\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"18\",\n \"RE\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"nbcRating\": {\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\",\n - \ \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n - \ \"18+R\",\n \"PU\",\n \"\"\n ]\n - \ },\n \"czfilmRating\": {\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"description\": - \"The video's rating in the Czech Republic.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ]\n },\n \"mccaaRating\": {\n \"enum\": [\n - \ \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ],\n \"description\": \"The - video's rating from Malta's Film Age-Classification Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"eirinRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"description\": \"The video's Eirin (\u6620\u502B) - rating. Eirin is the Japanese rating system.\",\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ]\n - \ },\n \"bfvcRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Thailand's Board of Film and Video Censors.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ]\n },\n \"cccRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ]\n },\n - \ \"mpaatRating\": {\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"description\": \"The rating - system for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n - \ },\n \"smaisRating\": {\n \"enum\": [\n \"smaisUnspecified\",\n - \ \"smaisL\",\n \"smais7\",\n \"smais12\",\n - \ \"smais14\",\n \"smais16\",\n \"smais18\",\n - \ \"smaisUnrated\"\n ],\n \"description\": \"The - video's rating in Iceland.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ]\n },\n \"pefilmRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n - \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n - \ \"pefilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in Peru.\"\n },\n \"djctqRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"10\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ],\n \"description\": \"The - video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\"\n },\n \"mekuRating\": - {\n \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Finland's - Kansallinen Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"fpbRatingReasons\": {\n - \ \"items\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"South Africa rating content descriptors.\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ]\n },\n - \ \"description\": \"Reasons that explain why the video received its - FPB (South Africa) rating.\",\n \"type\": \"array\"\n },\n - \ \"cceRating\": {\n \"description\": \"The video's rating - from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"4\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\",\n \"14\"\n ],\n \"enum\": [\n - \ \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n - \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n - \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"type\": - \"string\"\n },\n \"nbcplRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"nbcplUnspecified\",\n \"nbcplI\",\n \"nbcplIi\",\n - \ \"nbcplIii\",\n \"nbcplIv\",\n \"nbcpl18plus\",\n - \ \"nbcplUnrated\"\n ],\n \"description\": \"The - video's rating in Poland.\",\n \"type\": \"string\"\n },\n - \ \"catvRating\": {\n \"description\": \"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.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n - \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ]\n },\n - \ \"tvpgRating\": {\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"description\": \"The - video's TV Parental Guidelines (TVPG) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"fcbmRating\": {\n \"enum\": [\n \"fcbmUnspecified\",\n - \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n - \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n - \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\"\n },\n - \ \"cbfcRating\": {\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Central Board of Film Certification - (CBFC - India) rating.\"\n },\n \"mocRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"description\": \"The video's Ministerio de Cultura - (Colombia) rating.\",\n \"type\": \"string\"\n },\n \"agcomRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni (AGCOM).\",\n - \ \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ]\n - \ },\n \"ilfilmRating\": {\n \"description\": \"The - video's rating in Israel.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ]\n },\n - \ \"ifcoRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"15A\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Irish Film Classification Office (IFCO - Ireland) rating. See - the IFCO website for more information.\",\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ]\n },\n \"rteRating\": {\n \"enum\": [\n - \ \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"description\": \"The video's rating from Ireland's - Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ]\n },\n \"catvfrRating\": - {\n \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"8+\",\n \"13+\",\n - \ \"16+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"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.\"\n },\n \"fmocRating\": {\n \"enum\": [\n - \ \"fmocUnspecified\",\n \"fmocU\",\n \"fmoc10\",\n - \ \"fmoc12\",\n \"fmoc16\",\n \"fmoc18\",\n - \ \"fmocE\",\n \"fmocUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ],\n \"description\": \"This property has been deprecated. - Use the contentDetails.contentRating.cncRating instead.\",\n \"type\": - \"string\"\n },\n \"smsaRating\": {\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"All ages\",\n \"7\",\n \"11\",\n \"15\",\n - \ \"\"\n ],\n \"enum\": [\n \"smsaUnspecified\",\n - \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n - \ \"smsa15\",\n \"smsaUnrated\"\n ]\n },\n - \ \"egfilmRating\": {\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Egypt.\"\n },\n - \ \"mccypRating\": {\n \"description\": \"The video's rating - from the Danish Film Institute's (Det Danske Filminstitut) Media Council for - Children and Young People.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"7\",\n \"11\",\n \"15\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n - \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n - \ ]\n },\n \"lsfRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ],\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n - \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n - \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"description\": \"The video's rating from Indonesia's - Lembaga Sensor Film.\"\n },\n \"resorteviolenciaRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"description\": \"The video's rating in Venezuela.\"\n - \ },\n \"rcnofRating\": {\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Hungarian - Nemzeti Filmiroda, the Rating Committee of the National Office of Film.\",\n - \ \"type\": \"string\"\n },\n \"kfcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\"\n },\n - \ \"cscfRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"AL\",\n \"A\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Luxembourg's - Commission de surveillance de la classification des films (CSCF).\",\n \"type\": - \"string\",\n \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n - \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ]\n },\n \"ytRating\": {\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ]\n },\n \"chfilmRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n - \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n - \ \"chfilm18\",\n \"chfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Switzerland.\"\n },\n - \ \"mcstRating\": {\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating system for Vietnam - MCST\"\n },\n \"mibacRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"description\": \"The - video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali e - del Turismo (Italy).\"\n },\n \"eefilmRating\": {\n \"enum\": - [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n \"eefilmL\",\n - \ \"eefilmMs6\",\n \"eefilmK6\",\n \"eefilmMs12\",\n - \ \"eefilmK12\",\n \"eefilmK14\",\n \"eefilmK16\",\n - \ \"eefilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n - \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n - \ \"K-16\",\n \"\"\n ],\n \"description\": - \"The video's rating in Estonia.\",\n \"type\": \"string\"\n },\n - \ \"cicfRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n - \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Commission de Contr\xF4le des Films (Belgium).\"\n },\n \"mpaaRating\": - {\n \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n - \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n - \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n - \ ],\n \"description\": \"The video's Motion Picture Association - of America (MPAA) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ]\n },\n \"medietilsynetRating\": {\n \"description\": - \"The video's rating from Medietilsynet, the Norwegian Media Authority.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ]\n },\n \"fcoRating\": {\n \"enum\": [\n - \ \"fcoUnspecified\",\n \"fcoI\",\n \"fcoIia\",\n - \ \"fcoIib\",\n \"fcoIi\",\n \"fcoIii\",\n - \ \"fcoUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Hong Kong's Office for - Film, Newspaper and Article Administration.\",\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ]\n - \ },\n \"fskRating\": {\n \"enum\": [\n \"fskUnspecified\",\n - \ \"fsk0\",\n \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n - \ \"fsk18\",\n \"fskUnrated\"\n ],\n \"description\": - \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) - rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ]\n },\n \"ecbmctRating\": {\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Rating system in Turkey - Evaluation and Classification - Board of the Ministry of Culture and Tourism\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ]\n },\n \"mtrcbRating\": - {\n \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Movie - and Television Review and Classification Board (Philippines).\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"R-13\",\n - \ \"R-16\",\n \"R-18\",\n \"X\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"icaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ],\n - \ \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"type\": - \"string\",\n \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ]\n },\n \"fpbRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"fpbUnspecified\",\n - \ \"fpbA\",\n \"fpbPg\",\n \"fpb79Pg\",\n - \ \"fpb1012Pg\",\n \"fpb13\",\n \"fpb16\",\n - \ \"fpb18\",\n \"fpbX18\",\n \"fpbXx\",\n - \ \"fpbUnrated\",\n \"fpb10\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ],\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\"\n },\n \"bbfcRating\": {\n \"enum\": - [\n \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ],\n \"description\": \"The video's British Board of Film - Classification (BBFC) rating.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n - \ \"\"\n ]\n },\n \"acbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"enum\": [\n \"acbUnspecified\",\n - \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n - \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n - \ \"acbR18plus\",\n \"acbUnrated\"\n ]\n },\n - \ \"cnaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"AP\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"18+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Romania's - CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ]\n },\n - \ \"nkclvRating\": {\n \"description\": \"The video's rating - from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"nmcRating\": - {\n \"description\": \"The National Media Council ratings system - for United Arab Emirates.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"PG-15\",\n - \ \"15+\",\n \"18+\",\n \"18TC\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ]\n },\n - \ \"rtcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ],\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\"\n },\n \"menaMpaaRating\": {\n \"enum\": - [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n - \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n - \ ],\n \"description\": \"The rating system for MENA countries, - a clone of MPAA. It is needed to prevent titles go live w/o additional QC - check, since some of them can be inappropriate for the countries at all. See - b/33408548 for more details.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ],\n \"type\": \"string\"\n },\n \"incaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"enum\": [\n \"incaaUnspecified\",\n - \ \"incaaAtp\",\n \"incaaSam13\",\n \"incaaSam16\",\n - \ \"incaaSam18\",\n \"incaaC\",\n \"incaaUnrated\"\n - \ ],\n \"description\": \"The video's INCAA (Instituto Nacional - de Cine y Artes Audiovisuales - Argentina) rating.\",\n \"type\": - \"string\"\n },\n \"mdaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"mdaUnspecified\",\n - \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n - \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n - \ \"mdaUnrated\"\n ],\n \"description\": \"The - video's rating from Singapore's Media Development Authority (MDA) and, specifically, - it's Board of Film Censors (BFC).\"\n },\n \"oflcRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Office of Film and Literature - Classification (OFLC - New Zealand) rating.\",\n \"enum\": [\n \"oflcUnspecified\",\n - \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n - \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n - \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n - \ \"oflcRp16\",\n \"oflcRp18\"\n ]\n },\n - \ \"chvrsRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ]\n },\n \"csaRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from France's Conseil sup\xE9rieur - de l\u2019audiovisuel, which rates broadcast content.\",\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ],\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ]\n },\n \"moctwRating\": {\n \"enum\": [\n - \ \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n - \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n - \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ],\n \"description\": \"The video's rating from Taiwan's - Ministry of Culture (\u6587\u5316\u90E8).\",\n \"type\": \"string\"\n - \ },\n \"bmukkRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"Unrestricted\",\n \"6+\",\n \"8+\",\n - \ \"10+\",\n \"12+\",\n \"14+\",\n \"16+\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Austrian Board of Media Classification (Bundesministerium f\xFCr - Unterricht, Kunst und Kultur).\",\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"djctqRatingReasons\": {\n \"items\": - {\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"type\": \"string\"\n },\n - \ \"description\": \"Reasons that explain why the video received its - DJCQT (Brazil) rating.\",\n \"type\": \"array\"\n },\n \"kijkwijzerRating\": - {\n \"enum\": [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ]\n },\n \"grfilmRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n - \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n - \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n - \ \"grfilmUnrated\"\n ],\n \"description\": \"The - video's rating in Greece.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n - \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n - \ ]\n },\n \"kmrbRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ]\n },\n \"anatelRating\": {\n \"enum\": - [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ],\n \"description\": \"The video's Anatel (Asociaci\xF3n - Nacional de Televisi\xF3n) rating for Chilean television.\",\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"skfilmRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n - \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Slovakia.\"\n - \ },\n \"nfrcRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Bulgarian National Film Center.\"\n },\n \"cncRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ],\n - \ \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Rating system in France - Commission de classification cinematographique\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"SubscriptionContentDetails\": - {\n \"id\": \"SubscriptionContentDetails\",\n \"properties\": {\n - \ \"activityType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"description\": - \"The type of activity this subscription is for (only uploads, everything).\"\n - \ },\n \"totalItemCount\": {\n \"description\": \"The - approximate number of items that the subscription points to.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"newItemCount\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The number of new items in the subscription since its content was last read.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Details - about the content to witch a subscription refers.\"\n },\n \"VideoGetRatingResponse\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"description\": \"A list of ratings that match the request criteria.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoRating\"\n }\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoGetRatingResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoGetRatingResponse\"\n },\n \"TokenPagination\": - {\n \"id\": \"TokenPagination\",\n \"description\": \"Stub token - pagination template to suppress results.\",\n \"type\": \"object\",\n - \ \"properties\": {}\n },\n \"ChannelSectionTargeting\": {\n \"id\": - \"ChannelSectionTargeting\",\n \"type\": \"object\",\n \"properties\": - {\n \"regions\": {\n \"type\": \"array\",\n \"description\": - \"The region the channel section is targeting.\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n },\n \"languages\": - {\n \"description\": \"The language the channel section is targeting.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"countries\": {\n \"type\": \"array\",\n - \ \"description\": \"The country the channel section is targeting.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"description\": \"ChannelSection targeting setting.\"\n },\n - \ \"ActivityContentDetailsChannelItem\": {\n \"type\": \"object\",\n - \ \"description\": \"Details about a resource which was added to a channel.\",\n - \ \"id\": \"ActivityContentDetailsChannelItem\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\"\n }\n }\n },\n \"ThumbnailDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"maxres\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The maximum - resolution quality image for this resource.\"\n },\n \"standard\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The standard - quality image for this resource.\"\n },\n \"medium\": {\n \"description\": - \"The medium quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"high\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The high quality image for this resource.\"\n },\n \"default\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The default - image for this resource.\"\n }\n },\n \"description\": \"Internal - representation of thumbnails for a YouTube resource.\",\n \"id\": \"ThumbnailDetails\"\n - \ },\n \"VideoStatistics\": {\n \"id\": \"VideoStatistics\",\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\",\n \"type\": \"object\",\n \"properties\": {\n \"dislikeCount\": - {\n \"description\": \"The number of users who have indicated that - they disliked the video by giving it a negative rating.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"viewCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of times the video has been viewed.\",\n \"format\": \"uint64\"\n - \ },\n \"commentCount\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The number - of comments for the video.\"\n },\n \"likeCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of users who have indicated - that they liked the video by giving it a positive rating.\",\n \"type\": - \"string\"\n },\n \"favoriteCount\": {\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"Cuepoint\": {\n \"type\": \"object\",\n \"description\": - \"Note that there may be a 5-second end-point resolution issue. For instance, - if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\",\n \"properties\": - {\n \"insertionOffsetTimeMs\": {\n \"format\": \"int64\",\n - \ \"description\": \"The time when the cuepoint should be inserted - by offset to the broadcast actual start time.\",\n \"type\": \"string\"\n - \ },\n \"cueType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"cueTypeUnspecified\",\n \"cueTypeAd\"\n ]\n - \ },\n \"durationSecs\": {\n \"description\": \"The - duration of this cuepoint.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"walltimeMs\": {\n \"description\": - \"The wall clock time at which the cuepoint should be inserted. Only one of - insertion_offset_time_ms and walltime_ms may be set at a time.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"id\": {\n - \ \"description\": \"The identifier for cuepoint resource.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"Cuepoint\"\n },\n \"ChannelSectionSnippet\": - {\n \"description\": \"Basic details about a channel section, including - title, style and position.\",\n \"id\": \"ChannelSectionSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"position\": - {\n \"type\": \"integer\",\n \"description\": \"The position - of the channel section in the channel.\",\n \"format\": \"uint32\"\n - \ },\n \"type\": {\n \"type\": \"string\",\n \"description\": - \"The type of the channel section.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ]\n },\n \"title\": - {\n \"description\": \"The channel section's title for multiple_playlists - and multiple_channels.\",\n \"type\": \"string\"\n },\n \"style\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"description\": \"The - style of the channel section.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that published the channel section.\"\n },\n \"localized\": - {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": - \"Localized title, read-only.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel section's default title and description.\"\n }\n }\n - \ },\n \"LiveChatSuperChatDetails\": {\n \"properties\": {\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made.\"\n },\n \"amountMicros\": {\n - \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ },\n \"tier\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\"\n },\n - \ \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the user to this Super Chat event.\"\n },\n - \ \"amountDisplayString\": {\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatSuperChatDetails\",\n - \ \"type\": \"object\"\n },\n \"IngestionInfo\": {\n \"id\": - \"IngestionInfo\",\n \"type\": \"object\",\n \"description\": \"Describes - information necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"properties\": - {\n \"backupIngestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\"\n - \ },\n \"ingestionAddress\": {\n \"description\": \"The - primary ingestion URL that you should use to stream video to YouTube. You - must stream video to this URL. Depending on which application or tool you - use to encode your video stream, you may need to enter the stream URL and - stream name separately or you may need to concatenate them in the following - format: *STREAM_URL/STREAM_NAME* \",\n \"type\": \"string\"\n },\n - \ \"rtmpsBackupIngestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"This ingestion url may be used instead of backupIngestionAddress - in order to stream via RTMPS. Not applicable to non-RTMP streams.\"\n },\n - \ \"streamName\": {\n \"type\": \"string\",\n \"description\": - \"The stream name that YouTube assigns to the video stream.\"\n },\n - \ \"rtmpsIngestionAddress\": {\n \"description\": \"This ingestion - url may be used instead of ingestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"MembershipsLevelSnippet\": {\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"levelDetails\": - {\n \"description\": \"Details about the pricing level.\",\n \"$ref\": - \"LevelDetails\"\n },\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n }\n }\n },\n \"MembershipsLevelListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#membershipsLevelListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n },\n - \ \"description\": \"A list of pricing levels offered by a creator - to the fans.\",\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\"\n - \ },\n \"WatchSettings\": {\n \"properties\": {\n \"backgroundColor\": - {\n \"description\": \"The text color for the video watch page's - branded area.\",\n \"type\": \"string\"\n },\n \"featuredPlaylistId\": - {\n \"description\": \"An ID that uniquely identifies a playlist - that displays next to the video player.\",\n \"type\": \"string\"\n - \ },\n \"textColor\": {\n \"description\": \"The background - color for the video watch page's branded area.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"WatchSettings\",\n \"description\": - \"Branding properties for the watch. All deprecated.\",\n \"type\": \"object\"\n - \ },\n \"SuperChatEventSnippet\": {\n \"type\": \"object\",\n \"id\": - \"SuperChatEventSnippet\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel id - where the event occurred.\"\n },\n \"supporterDetails\": {\n - \ \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the supporter.\"\n },\n \"displayString\": {\n - \ \"description\": \"A rendered string that displays the purchase - amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the - given language.\",\n \"type\": \"string\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\"\n },\n \"isSuperStickerEvent\": - {\n \"description\": \"True if this event is a Super Sticker event.\",\n - \ \"type\": \"boolean\"\n },\n \"amountMicros\": {\n - \ \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\"\n },\n \"commentText\": {\n \"description\": - \"The text contents of the comment left by the user.\",\n \"type\": - \"string\"\n },\n \"createdAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the event occurred.\"\n },\n \"messageType\": - {\n \"type\": \"integer\",\n \"description\": \"The tier - for the paid message, which is based on the amount of money spent to purchase - the message.\",\n \"format\": \"uint32\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n }\n }\n },\n \"VideoAbuseReportReason\": - {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReason\",\n - \ \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the abuse report reason.\",\n \"$ref\": \"VideoAbuseReportReasonSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID of this abuse report reason.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReason\"\n }\n }\n - \ },\n \"MembershipsDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"membershipsDuration\": {\n \"description\": \"Data about - memberships duration without taking into consideration pricing levels.\",\n - \ \"$ref\": \"MembershipsDuration\"\n },\n \"membershipsDurationAtLevels\": - {\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ },\n \"description\": \"Data about memberships duration - on particular pricing levels.\",\n \"type\": \"array\"\n },\n - \ \"accessibleLevels\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\"\n - \ },\n \"highestAccessibleLevel\": {\n \"type\": \"string\",\n - \ \"description\": \"Id of the highest level that the user has access - to at the moment.\"\n },\n \"highestAccessibleLevelDisplayName\": - {\n \"description\": \"Display name for the highest level that the - user has access to at the moment.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"MembershipsDetails\"\n },\n \"VideoSnippet\": - {\n \"properties\": {\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that the video - was uploaded to.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\",\n \"description\": - \"The language of the videos's default snippet.\"\n },\n \"categoryId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - video category associated with the video.\"\n },\n \"localized\": - {\n \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\",\n \"$ref\": \"VideoLocalization\"\n },\n \"tags\": - {\n \"description\": \"A list of keyword tags associated with the - video. Tags may contain spaces.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"description\": - {\n \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"defaultAudioLanguage\": - {\n \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the video was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the video - belongs to.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n }\n },\n - \ \"id\": \"VideoSnippet\",\n \"description\": \"Basic details about - a video, including title, description, uploader, thumbnails and category.\",\n - \ \"type\": \"object\"\n },\n \"LiveChatMessageSnippet\": {\n \"description\": - \"Next ID: 33\",\n \"id\": \"LiveChatMessageSnippet\",\n \"type\": - \"object\",\n \"properties\": {\n \"memberMilestoneChatDetails\": - {\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\",\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\"\n },\n \"fanFundingEventDetails\": - {\n \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"superChatDetails\": {\n \"description\": \"Details - about the Super Chat event, this is only set if the type is 'superChatEvent'.\",\n - \ \"$ref\": \"LiveChatSuperChatDetails\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"displayMessage\": - {\n \"type\": \"string\",\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\"\n },\n \"hasDisplayContent\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the message has display - content that should be displayed to users.\"\n },\n \"textMessageDetails\": - {\n \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\",\n \"$ref\": \"LiveChatTextMessageDetails\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n - \ \"authorChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the user that authored this message, this field is not always - filled. textMessageEvent - the user that wrote the message fanFundingEvent - - the user that funded the broadcast newSponsorEvent - the user that just - became a sponsor memberMilestoneChatEvent - the member that sent the message - membershipGiftingEvent - the user that made the purchase giftMembershipReceivedEvent - - the user that received the gift membership messageDeletedEvent - the moderator - that took the action messageRetractedEvent - the author that retracted their - message userBannedEvent - the moderator that took the action superChatEvent - - the user that made the purchase superStickerEvent - the user that made the - purchase\"\n },\n \"membershipGiftingDetails\": {\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\",\n \"$ref\": \"LiveChatMembershipGiftingDetails\"\n - \ },\n \"newSponsorDetails\": {\n \"description\": \"Details - about the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. - Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n - \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ],\n \"description\": \"The type of message, this will - always be present, it determines the contents of the message as well as which - fields will be present.\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the message was orignally published.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"superStickerDetails\": - {\n \"description\": \"Details about the Super Sticker event, this - is only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ }\n }\n },\n \"ThirdPartyLinkSnippet\": {\n \"id\": - \"ThirdPartyLinkSnippet\",\n \"properties\": {\n \"type\": {\n - \ \"description\": \"Type of the link named after the entities that - are being linked.\",\n \"type\": \"string\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ]\n },\n \"channelToStoreLink\": - {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n \"description\": - \"Information specific to a link between a channel and a store on a merchandising - platform.\"\n }\n },\n \"description\": \"Basic information - about a third party account link, including its type and type-specific information.\",\n - \ \"type\": \"object\"\n },\n \"VideoMonetizationDetails\": {\n - \ \"properties\": {\n \"access\": {\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\",\n - \ \"$ref\": \"AccessPolicy\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoMonetizationDetails\",\n \"description\": - \"Details about monetization of a YouTube Video.\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"id\": \"LiveChatNewSponsorDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"memberLevelName\": {\n \"description\": - \"The name of the Level that the viewer just had joined. The Level names are - defined by the YouTube channel offering the Membership. In some situations - this field isn't filled.\",\n \"type\": \"string\"\n },\n - \ \"isUpgrade\": {\n \"description\": \"If the viewer just - had upgraded from a lower level. For viewers that were not members at the - time of purchase, this field is false.\",\n \"type\": \"boolean\"\n - \ }\n }\n },\n \"LiveStreamStatus\": {\n \"id\": \"LiveStreamStatus\",\n - \ \"properties\": {\n \"streamStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ]\n },\n - \ \"healthStatus\": {\n \"description\": \"The health status - of the stream.\",\n \"$ref\": \"LiveStreamHealthStatus\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Brief description - of the live stream status.\"\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"id\": \"VideoAbuseReportReasonListResponse\",\n \"type\": - \"object\",\n \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"items\": {\n \"description\": \"A list of valid - abuse reasons that are used with `video.ReportAbuse`.\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportReason\"\n },\n \"type\": - \"array\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The `visitorId` identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"banDurationSeconds\": - {\n \"description\": \"The duration of the ban. This property is - only present if the banType is temporary.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"The details of the user that was banned.\"\n },\n \"banType\": - {\n \"type\": \"string\",\n \"enum\": [\n \"permanent\",\n - \ \"temporary\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of ban.\"\n }\n },\n \"id\": \"LiveChatUserBannedMessageDetails\"\n - \ },\n \"PlaylistListResponse\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistListResponse\",\n \"properties\": {\n \"eventId\": {\n - \ \"type\": \"string\",\n \"description\": \"Serialized EventId - of the request which produced this response.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"items\": {\n \"description\": - \"A list of playlists that match the request criteria\",\n \"items\": - {\n \"$ref\": \"Playlist\"\n },\n \"type\": \"array\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#playlistListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n }\n - \ }\n },\n \"LanguageTag\": {\n \"properties\": {\n \"value\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LanguageTag\",\n - \ \"type\": \"object\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"userComment\": {\n \"description\": \"The comment added - by the user to this fan funding event.\",\n \"type\": \"string\"\n - \ },\n \"amountMicros\": {\n \"description\": \"The - amount of the fund.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"LiveChatFanFundingEventDetails\"\n },\n - \ \"ActivityContentDetailsBulletin\": {\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"Details about a channel bulletin post.\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource associated with a bulletin post. - @mutable youtube.activities.insert\"\n }\n }\n },\n \"ActivityContentDetails\": - {\n \"type\": \"object\",\n \"description\": \"Details about the - content of an activity: the video that was shared, the channel that was subscribed - to, etc.\",\n \"properties\": {\n \"like\": {\n \"$ref\": - \"ActivityContentDetailsLike\",\n \"description\": \"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.\"\n },\n - \ \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"description\": \"The playlistItem object contains information - about a new playlist item. This property is only present if the snippet.type - is playlistItem.\"\n },\n \"promotedItem\": {\n \"description\": - \"The promotedItem object contains details about a resource which is being - promoted. This property is only present if the snippet.type is promotedItem.\",\n - \ \"$ref\": \"ActivityContentDetailsPromotedItem\"\n },\n \"upload\": - {\n \"$ref\": \"ActivityContentDetailsUpload\",\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\"\n },\n \"recommendation\": - {\n \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\",\n \"$ref\": \"ActivityContentDetailsRecommendation\"\n - \ },\n \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"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.\"\n },\n \"social\": {\n \"$ref\": - \"ActivityContentDetailsSocial\",\n \"description\": \"The social - object contains details about a social network post. This property is only - present if the snippet.type is social.\"\n },\n \"subscription\": - {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n \"description\": - \"The subscription object contains information about a channel that a user - subscribed to. This property is only present if the snippet.type is subscription.\"\n - \ },\n \"comment\": {\n \"description\": \"The comment - object contains information about a resource that received a comment. This - property is only present if the snippet.type is comment.\",\n \"$ref\": - \"ActivityContentDetailsComment\"\n },\n \"bulletin\": {\n \"description\": - \"The bulletin object contains details about a channel bulletin post. This - object is only present if the snippet.type is bulletin.\",\n \"$ref\": - \"ActivityContentDetailsBulletin\"\n },\n \"favorite\": {\n - \ \"$ref\": \"ActivityContentDetailsFavorite\",\n \"description\": - \"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.\"\n - \ }\n },\n \"id\": \"ActivityContentDetails\"\n },\n \"ChannelSectionListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"A list of ChannelSections that match the request criteria.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelSectionListResponse\"\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"properties\": {\n \"timeLeftMs\": {\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"partsProcessed\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of parts of the video - that YouTube has already processed. You can estimate the percentage of the - video that YouTube has already processed by calculating: 100 * parts_processed - / parts_total Note that since the estimated number of parts could increase - without a corresponding increase in the number of parts that have already - been processed, it is possible that the calculated progress could periodically - decrease while YouTube processes a video.\",\n \"type\": \"string\"\n - \ },\n \"partsTotal\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"An estimate of the total number - of parts that need to be processed for the video. The number may be updated - with more precise estimates while YouTube processes the video.\"\n }\n - \ },\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n \"type\": - \"object\",\n \"description\": \"Video processing progress and completion - time estimate.\"\n },\n \"ChannelListResponse\": {\n \"id\": \"ChannelListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Channel\"\n },\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n }\n },\n \"PlaylistItemStatus\": {\n \"description\": - \"Information about the playlist item's privacy status.\",\n \"properties\": - {\n \"privacyStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"This resource's privacy status.\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ]\n }\n },\n \"id\": \"PlaylistItemStatus\",\n - \ \"type\": \"object\"\n },\n \"VideoSuggestions\": {\n \"description\": - \"Specifies suggestions on how to improve video content, including encoding - hints, tag suggestions, and editor suggestions.\",\n \"type\": \"object\",\n - \ \"id\": \"VideoSuggestions\",\n \"properties\": {\n \"processingHints\": - {\n \"type\": \"array\",\n \"description\": \"A list of - suggestions that may improve YouTube's ability to process the video.\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"The - MP4 file is not streamable, this will slow down the processing. MOOV atom - was not found at the beginning of the file.\",\n \"Probably a - better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ]\n }\n },\n \"processingWarnings\": {\n - \ \"description\": \"A list of reasons why YouTube may have difficulty - transcoding the uploaded video or that might result in an erroneous transcoding. - These warnings are generated before YouTube actually processes the uploaded - video file. In addition, they identify issues that are unlikely to cause the - video processing to fail but that might cause problems such as sync issues, - video artifacts, or a missing audio track.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ]\n }\n },\n \"editorSuggestions\": {\n - \ \"description\": \"A list of video editing operations that might - improve the video quality or playback experience of the uploaded video.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"enumDescriptions\": - [\n \"Picture brightness levels seem off and could be corrected.\",\n - \ \"The video appears shaky and could be stabilized.\",\n \"Margins - (mattes) detected around the picture could be cropped.\",\n \"The - audio track appears silent and could be swapped with a better quality one.\"\n - \ ],\n \"enum\": [\n \"videoAutoLevels\",\n - \ \"videoStabilize\",\n \"videoCrop\",\n \"audioQuietAudioSwap\"\n - \ ],\n \"type\": \"string\"\n }\n },\n - \ \"processingErrors\": {\n \"description\": \"A list of errors - that will prevent YouTube from successfully processing the uploaded video - video. These errors indicate that, regardless of the video's current processing - status, eventually, that status will almost certainly be failed.\",\n \"items\": - {\n \"enumDescriptions\": [\n \"File contains audio - only (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n - \ \"Movie project file (e.g., Microsoft Windows Movie Maker project).\",\n - \ \"Other non-video file.\",\n \"Document or text - file (e.g., MS Word document).\",\n \"An archive file (e.g., - a ZIP archive).\",\n \"Unsupported spatial audio layout type.\"\n - \ ],\n \"enum\": [\n \"audioFile\",\n \"imageFile\",\n - \ \"projectFile\",\n \"notAVideoFile\",\n \"docFile\",\n - \ \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"tagSuggestions\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"description\": \"A list of keyword tags that could - be added to the video's metadata to increase the likelihood that users will - locate your video when searching or browsing on YouTube.\"\n }\n }\n - \ },\n \"Caption\": {\n \"description\": \"A *caption* resource - represents a YouTube caption track. A caption track is associated with exactly - one YouTube video.\",\n \"type\": \"object\",\n \"id\": \"Caption\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"CaptionSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the caption.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#caption\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the caption track.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"Thumbnail\": {\n \"properties\": {\n - \ \"height\": {\n \"description\": \"(Optional) Height of the - thumbnail image.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"width\": {\n \"description\": - \"(Optional) Width of the thumbnail image.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"url\": {\n \"description\": - \"The thumbnail image's URL.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"Thumbnail\",\n \"description\": \"A thumbnail - is an image representing a YouTube resource.\",\n \"type\": \"object\"\n - \ },\n \"Playlist\": {\n \"type\": \"object\",\n \"description\": - \"A *playlist* resource represents a YouTube playlist. A playlist is a collection - of videos that can be viewed sequentially and shared with other users. A playlist - can contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#playlist\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"type\": \"string\"\n },\n \"contentDetails\": {\n - \ \"description\": \"The contentDetails object contains information - like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n },\n - \ \"status\": {\n \"$ref\": \"PlaylistStatus\",\n \"description\": - \"The status object contains status information for the playlist.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\",\n - \ \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n - \ }\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"player\": {\n \"description\": - \"The player object contains information that you would use to play the playlist - in an embedded player.\",\n \"$ref\": \"PlaylistPlayer\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"Playlist\"\n - \ },\n \"SuperChatEventListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"items\": {\n \"description\": - \"A list of Super Chat purchases that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n },\n \"type\": - \"array\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#superChatEventListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"SuperChatEventListResponse\",\n \"type\": \"object\"\n - \ },\n \"AbuseType\": {\n \"type\": \"object\",\n \"id\": \"AbuseType\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"SubscriptionSnippet\": {\n \"properties\": - {\n \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the subscriber's channel.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The id object contains information about the - channel that the user subscribed to.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.subscriptions.insert\"\n ]\n }\n - \ },\n \"title\": {\n \"description\": \"The subscription's - title.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the subscription was created.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The subscription's details.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the subscription belongs to.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n }\n },\n - \ \"description\": \"Basic details about a subscription, including title, - description and thumbnails of the subscribed item.\",\n \"id\": \"SubscriptionSnippet\",\n - \ \"type\": \"object\"\n },\n \"I18nRegionListResponse\": {\n \"id\": - \"I18nRegionListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"description\": \"A list of regions - where YouTube is available. In this map, the i18n region ID is the map key, - and its value is the corresponding i18nRegion resource.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"I18nRegion\"\n - \ }\n },\n \"kind\": {\n \"default\": \"youtube#i18nRegionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"type\": - \"string\"\n }\n }\n },\n \"MemberSnippet\": {\n \"type\": - \"object\",\n \"id\": \"MemberSnippet\",\n \"properties\": {\n \"memberDetails\": - {\n \"description\": \"Details about the member.\",\n \"$ref\": - \"ChannelProfileDetails\"\n },\n \"membershipsDetails\": {\n - \ \"$ref\": \"MembershipsDetails\",\n \"description\": \"Details - about the user's membership.\"\n },\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering memberships.\"\n }\n }\n },\n \"VideoTopicDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"topicCategories\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Wikipedia - URLs that provide a high-level description of the video's content.\"\n },\n - \ \"topicIds\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of Freebase topic IDs that are centrally associated with the video. These - are topics that are centrally featured in the video, and it can be said that - the video is mainly about each of these. You can retrieve information about - each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n },\n \"relevantTopicIds\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\",\n - \ \"type\": \"array\"\n }\n },\n \"id\": \"VideoTopicDetails\",\n - \ \"description\": \"Freebase topic information related to the video.\"\n - \ },\n \"LiveChatMessageListResponse\": {\n \"properties\": {\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveChatMessageListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"type\": \"array\"\n },\n - \ \"offlineAt\": {\n \"type\": \"string\",\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the underlying - stream went offline.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"pollingIntervalMillis\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The amount - of time the client should wait before polling again.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageListResponse\"\n - \ },\n \"ChannelSnippet\": {\n \"id\": \"ChannelSnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about a channel, including - title, description and thumbnails.\",\n \"properties\": {\n \"thumbnails\": - {\n \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"country\": {\n \"description\": \"The country - of the channel.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the channel's default title - and description.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The channel's title.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the channel.\"\n },\n - \ \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"customUrl\": - {\n \"type\": \"string\",\n \"description\": \"The custom - url of the channel.\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the channel - was created.\",\n \"format\": \"date-time\"\n }\n }\n - \ },\n \"ActivityContentDetailsComment\": {\n \"properties\": {\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with the comment.\"\n }\n },\n \"description\": - \"Information about a resource that received a comment.\",\n \"id\": - \"ActivityContentDetailsComment\",\n \"type\": \"object\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"The id of the author's YouTube - channel, if any.\",\n \"id\": \"CommentSnippetAuthorChannelId\",\n \"type\": - \"object\"\n },\n \"LiveStreamSnippet\": {\n \"properties\": {\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The stream's description. The value cannot be longer than 10000 characters.\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that is transmitting the - stream.\",\n \"type\": \"string\"\n },\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n },\n \"title\": {\n \"description\": - \"The stream's title. The value must be between 1 and 128 characters long.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the stream was created.\"\n }\n },\n - \ \"id\": \"LiveStreamSnippet\",\n \"type\": \"object\"\n },\n - \ \"LiveChatMessage\": {\n \"description\": \"A *liveChatMessage* resource - represents a chat message in a YouTube Live Chat.\",\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMessage\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"LiveChatMessageSnippet\",\n \"description\": - \"The snippet object contains basic details about the message.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the message.\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatMessage\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"authorDetails\": {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n - \ \"description\": \"The authorDetails object contains basic details - about the user that posted this message.\"\n }\n }\n },\n \"VideoLocalization\": - {\n \"description\": \"Localized versions of certain video properties - (e.g. title).\",\n \"properties\": {\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"Localized version of the video's - description.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"Localized version of the video's title.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoLocalization\"\n - \ },\n \"LiveStreamContentDetails\": {\n \"description\": \"Detailed - settings of a stream.\",\n \"properties\": {\n \"isReusable\": - {\n \"description\": \"Indicates whether the stream is reusable, - which means that it can be bound to multiple broadcasts. It is common for - broadcasters to reuse the same stream for many different broadcasts if those - broadcasts occur at different times. If you set this value to false, then - the stream will not be reusable, which means that it can only be bound to - one broadcast. Non-reusable streams differ from reusable streams in the following - ways: - A non-reusable stream can only be bound to one broadcast. - A non-reusable - stream might be deleted by an automated process after the broadcast ends. - - The liveStreams.list method does not list non-reusable streams if you call - the method and set the mine parameter to true. The only way to use that method - to retrieve the resource for a non-reusable stream is to use the id parameter - to identify the stream. \",\n \"type\": \"boolean\"\n },\n - \ \"closedCaptionsIngestionUrl\": {\n \"description\": \"The - ingestion URL where the closed captions of this stream are sent.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveStreamContentDetails\"\n },\n \"PlaylistItemSnippet\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistItemSnippet\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails. - Basic details of a YouTube Playlist item provided by the author. Next ID: - 15\",\n \"properties\": {\n \"resourceId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"description\": \"The id object contains information that can be - used to uniquely identify the resource that is included in the playlist as - the playlist item.\",\n \"$ref\": \"ResourceId\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the playlist - item belongs to.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the item was added to the playlist.\",\n \"format\": - \"date-time\"\n },\n \"videoOwnerChannelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel this - video belongs to.\"\n },\n \"videoOwnerChannelId\": {\n \"description\": - \"Channel id for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist item. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify thGe playlist that the playlist - item is in.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the user that added the item to the - playlist.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"description\": \"The item's title.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The item's description.\",\n \"type\": \"string\"\n },\n - \ \"position\": {\n \"description\": \"The order in which the - item appears in the playlist. The value uses a zero-based index, so the first - item has a position of 0, the second item has a position of 1, and so forth.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n - \ }\n },\n \"PropertyValue\": {\n \"id\": \"PropertyValue\",\n - \ \"description\": \"A pair Property / Value.\",\n \"properties\": - {\n \"property\": {\n \"type\": \"string\",\n \"description\": - \"A property.\"\n },\n \"value\": {\n \"type\": \"string\",\n - \ \"description\": \"The property's value.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"I18nLanguageSnippet\": {\n \"properties\": - {\n \"name\": {\n \"description\": \"The human-readable name - of the language in the language itself.\",\n \"type\": \"string\"\n - \ },\n \"hl\": {\n \"description\": \"A short BCP-47 - code that uniquely identifies a language.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"I18nLanguageSnippet\",\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\",\n \"type\": \"object\"\n },\n \"ChannelBrandingSettings\": - {\n \"type\": \"object\",\n \"description\": \"Branding properties - of a YouTube channel.\",\n \"properties\": {\n \"hints\": {\n - \ \"items\": {\n \"$ref\": \"PropertyValue\"\n },\n - \ \"description\": \"Additional experimental branding properties.\",\n - \ \"type\": \"array\"\n },\n \"watch\": {\n \"description\": - \"Branding properties for the watch page.\",\n \"$ref\": \"WatchSettings\"\n - \ },\n \"image\": {\n \"description\": \"Branding properties - for branding images.\",\n \"$ref\": \"ImageSettings\"\n },\n - \ \"channel\": {\n \"description\": \"Branding properties for - the channel view.\",\n \"$ref\": \"ChannelSettings\"\n }\n - \ },\n \"id\": \"ChannelBrandingSettings\"\n },\n \"LiveBroadcast\": - {\n \"type\": \"object\",\n \"description\": \"A *liveBroadcast* - resource represents an event that will be streamed, via live video, on YouTube.\",\n - \ \"id\": \"LiveBroadcast\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the broadcast.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveBroadcast\"\n - \ },\n \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"The statistics object contains info about the - event's current stats. These include concurrent viewers and total chat count. - Statistics can change (in either direction) during the lifetime of an event. - Statistics are only returned while the event is live.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the event, including its title, description, - start time, and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n - \ },\n \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n - \ \"description\": \"The status object contains information about - the event's status.\"\n }\n }\n },\n \"MembershipsDurationAtLevel\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsDurationAtLevel\",\n - \ \"properties\": {\n \"memberSince\": {\n \"description\": - \"The date and time when the user became a continuous member for the given - level.\",\n \"type\": \"string\"\n },\n \"level\": - {\n \"description\": \"Pricing level ID.\",\n \"type\": - \"string\"\n },\n \"memberTotalDurationMonths\": {\n \"type\": - \"integer\",\n \"description\": \"The cumulative time the user has - been a member for the given level in complete months (the time is rounded - down to the nearest integer).\",\n \"format\": \"int32\"\n }\n - \ }\n },\n \"VideoSuggestionsTagSuggestion\": {\n \"type\": - \"object\",\n \"description\": \"A single tag suggestion with it's relevance - information.\",\n \"id\": \"VideoSuggestionsTagSuggestion\",\n \"properties\": - {\n \"tag\": {\n \"description\": \"The keyword tag suggested - for the video.\",\n \"type\": \"string\"\n },\n \"categoryRestricts\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A set of video categories - for which the tag is relevant. You can use this information to display appropriate - tag suggestions based on the video category that the video uploader associates - with the video. By default, tag suggestions are relevant for all categories - if there are no restricts defined for the keyword.\"\n }\n }\n - \ },\n \"Channel\": {\n \"properties\": {\n \"auditDetails\": - {\n \"$ref\": \"ChannelAuditDetails\",\n \"description\": - \"The auditionDetails object encapsulates channel data that is relevant for - YouTube Partners during the audition process.\"\n },\n \"topicDetails\": - {\n \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\",\n \"$ref\": - \"ChannelTopicDetails\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"default\": \"youtube#channel\",\n \"type\": \"string\"\n - \ },\n \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n - \ \"contentDetails\": {\n \"description\": \"The contentDetails - object encapsulates information about the channel's content.\",\n \"$ref\": - \"ChannelContentDetails\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel.\",\n \"type\": - \"string\"\n },\n \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n - \ \"description\": \"The statistics object encapsulates statistics - for the channel.\"\n },\n \"brandingSettings\": {\n \"$ref\": - \"ChannelBrandingSettings\",\n \"description\": \"The brandingSettings - object encapsulates information about the branding of the channel.\"\n },\n - \ \"localizations\": {\n \"description\": \"Localizations for - different languages\",\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n }\n },\n - \ \"contentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"status\": {\n \"$ref\": \"ChannelStatus\",\n - \ \"description\": \"The status object encapsulates information about - the privacy status of the channel.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the channel, such as its title, description, and thumbnail - images.\",\n \"$ref\": \"ChannelSnippet\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"A *channel* resource - contains information about a YouTube channel.\",\n \"id\": \"Channel\"\n - \ },\n \"PlaylistItemContentDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"startAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\",\n \"type\": \"string\"\n },\n - \ \"videoPublishedAt\": {\n \"description\": \"The date and - time that the video was published to YouTube.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"note\": {\n \"description\": - \"A user-generated note for this item.\",\n \"type\": \"string\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify a video. To retrieve the video - resource, set the id query parameter to this value in your API request.\"\n - \ },\n \"endAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\"\n - \ }\n },\n \"id\": \"PlaylistItemContentDetails\"\n },\n - \ \"CaptionListResponse\": {\n \"id\": \"CaptionListResponse\",\n \"type\": - \"object\",\n \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#captionListResponse\"\n },\n - \ \"items\": {\n \"description\": \"A list of captions that - match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Caption\"\n },\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n }\n - \ },\n \"VideoFileDetailsAudioStream\": {\n \"description\": \"Information - about an audio stream.\",\n \"id\": \"VideoFileDetailsAudioStream\",\n - \ \"properties\": {\n \"codec\": {\n \"description\": - \"The audio codec that the stream uses.\",\n \"type\": \"string\"\n - \ },\n \"channelCount\": {\n \"description\": \"The - number of audio channels that the stream contains.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"vendor\": - {\n \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\",\n \"type\": - \"string\"\n },\n \"bitrateBps\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The audio stream's - bitrate, in bits per second.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"PlaylistStatus\": {\n \"properties\": {\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The playlist's privacy status.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"PlaylistStatus\",\n \"type\": \"object\"\n - \ },\n \"VideoCategory\": {\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#videoCategory\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the video category.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video category, including its title.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoCategory\",\n \"description\": \"A - *videoCategory* resource identifies a category that has been or could be associated - with uploaded videos.\"\n },\n \"LiveStreamHealthStatus\": {\n \"id\": - \"LiveStreamHealthStatus\",\n \"properties\": {\n \"lastUpdateTimeSeconds\": - {\n \"type\": \"string\",\n \"description\": \"The last - time this status was updated (in seconds)\",\n \"format\": \"uint64\"\n - \ },\n \"configurationIssues\": {\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n },\n \"description\": - \"The configurations issues on this stream\",\n \"type\": \"array\"\n - \ },\n \"status\": {\n \"enum\": [\n \"good\",\n - \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n - \ ],\n \"description\": \"The status code of this stream\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"CommentThreadSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"totalReplyCount\": - {\n \"type\": \"integer\",\n \"description\": \"The total - number of replies (not including the top level comment).\",\n \"format\": - \"uint32\"\n },\n \"canReply\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the video the comments - refer to, if any. No video_id implies a channel discussion comment.\"\n },\n - \ \"isPublic\": {\n \"description\": \"Whether the thread (and - therefore all its comments) is visible to all YouTube users.\",\n \"type\": - \"boolean\"\n },\n \"topLevelComment\": {\n \"description\": - \"The top level comment of this thread.\",\n \"$ref\": \"Comment\"\n - \ },\n \"channelId\": {\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"CommentThreadSnippet\",\n \"description\": \"Basic details about a - comment thread.\"\n },\n \"MembershipsLevel\": {\n \"description\": - \"A *membershipsLevel* resource represents an offer made by YouTube creators - for their fans. Users can become members of the channel by joining one of - the available levels. They will provide recurring monetary support and receives - special benefits.\",\n \"type\": \"object\",\n \"id\": \"MembershipsLevel\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"MembershipsLevelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the level.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#membershipsLevel\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the memberships level.\"\n }\n }\n },\n \"PlaylistItemListResponse\": - {\n \"id\": \"PlaylistItemListResponse\",\n \"properties\": {\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"etag\": {\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\"\n - \ },\n \"items\": {\n \"description\": \"A list of playlist - items that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"type\": \"array\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoContentDetailsRegionRestriction\": {\n \"description\": - \"DEPRECATED Region restriction of the video.\",\n \"type\": \"object\",\n - \ \"id\": \"VideoContentDetailsRegionRestriction\",\n \"properties\": - {\n \"blocked\": {\n \"description\": \"A list of region codes - that identify countries where the video is blocked. If this property is present - and a country is not listed in its value, then the video is viewable in that - country. If this property is present and contains an empty list, the video - is viewable in all countries.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"allowed\": - {\n \"type\": \"array\",\n \"description\": \"A list of - region codes that identify countries where the video is viewable. If this - property is present and a country is not listed in its value, then the video - is blocked from appearing in that country. If this property is present and - contains an empty list, the video is blocked in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n }\n },\n - \ \"ChannelSection\": {\n \"id\": \"ChannelSection\",\n \"type\": - \"object\",\n \"properties\": {\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\",\n \"$ref\": - \"ChannelSectionContentDetails\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"default\": \"youtube#channelSection\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the channel section, such as its type, - style and title.\",\n \"$ref\": \"ChannelSectionSnippet\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel section.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"targeting\": {\n \"description\": - \"The targeting object contains basic targeting settings about the channel - section.\",\n \"$ref\": \"ChannelSectionTargeting\"\n },\n - \ \"localizations\": {\n \"description\": \"Localizations for - different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"type\": \"object\"\n - \ }\n }\n },\n \"TestItemTestItemSnippet\": {\n \"type\": - \"object\",\n \"properties\": {},\n \"id\": \"TestItemTestItemSnippet\"\n - \ },\n \"ChannelConversionPings\": {\n \"properties\": {\n \"pings\": - {\n \"description\": \"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.\",\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n },\n \"type\": \"array\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n - \ \"VideoProcessingDetails\": {\n \"properties\": {\n \"processingIssuesAvailability\": - {\n \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"thumbnailsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether thumbnail - images have been generated for the video.\"\n },\n \"fileDetailsAvailability\": - {\n \"description\": \"This value indicates whether file details - are available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ],\n \"description\": \"The video's processing status. - This value indicates whether YouTube was able to process the video or if the - video is still being processed.\"\n },\n \"editorSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether video editing - suggestions, which might improve video quality or the playback experience, - are available for the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"tagSuggestionsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether keyword - (tag) suggestions are available for the video. Tags can be added to a video's - metadata to make it easier for other users to find the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\"\n },\n \"processingFailureReason\": {\n \"enum\": - [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The reason that YouTube failed - to process the video. This property will only have a value if the processingStatus - property's value is failed.\"\n },\n \"processingProgress\": - {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoProcessingDetails\",\n \"description\": - \"Describes processing status and progress and availability of some other - Video resource parts.\"\n },\n \"VideoPlayer\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"embedHeight\": {\n \"format\": - \"int64\",\n \"type\": \"string\"\n },\n \"embedWidth\": - {\n \"description\": \"The embed width\",\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n },\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Player to be used for a video playback.\",\n \"id\": \"VideoPlayer\"\n - \ },\n \"LiveBroadcastStatistics\": {\n \"type\": \"object\",\n - \ \"description\": \"Statistics about the live broadcast. These represent - a snapshot of the values at the time of the request. Statistics are only returned - for live broadcasts.\",\n \"properties\": {\n \"totalChatCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The total - number of live chat messages currently on the broadcast. The property and - its value will be present if the broadcast is public, has the live chat feature - enabled, and has at least one message. Note that this field will not be filled - after the broadcast ends. So this property would not identify the number of - chat messages for an archived video of a completed live broadcast.\",\n \"type\": - \"string\"\n },\n \"concurrentViewers\": {\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n }\n },\n \"id\": - \"LiveBroadcastStatistics\"\n },\n \"SearchResultSnippet\": {\n \"properties\": - {\n \"liveBroadcastContent\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\",\n \"description\": \"It indicates if the resource (video - or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" - if there is not any upcoming/active live broadcasts.\"\n },\n \"description\": - {\n \"description\": \"A description of the search result.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the search result. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelTitle\": {\n \"description\": - \"The title of the channel that published the resource that the search result - identifies.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The creation date and time of the resource - that the search result identifies.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The title of the search result.\"\n - \ },\n \"channelId\": {\n \"description\": \"The value - that YouTube uses to uniquely identify the channel that published the resource - that the search result identifies.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Basic details about a search result, including - title, description and thumbnails of the item referenced by the search result.\",\n - \ \"type\": \"object\",\n \"id\": \"SearchResultSnippet\"\n },\n - \ \"VideoRating\": {\n \"properties\": {\n \"rating\": {\n \"description\": - \"Rating of a video.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"VideoRating\",\n \"description\": \"Basic details about - rating of a video.\"\n },\n \"CommentThread\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment thread.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"default\": \"youtube#commentThread\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"CommentThreadSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment thread and also the top level comment.\"\n },\n \"replies\": - {\n \"$ref\": \"CommentThreadReplies\",\n \"description\": - \"The replies object contains a limited number of replies (if any) to the - top level comment found in the snippet.\"\n }\n },\n \"description\": - \"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.\",\n \"type\": \"object\",\n \"id\": \"CommentThread\"\n - \ },\n \"LiveChatModeratorSnippet\": {\n \"id\": \"LiveChatModeratorSnippet\",\n - \ \"properties\": {\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the live chat this moderator can act - on.\"\n },\n \"moderatorDetails\": {\n \"description\": - \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"SuperChatEvent\": - {\n \"description\": \"A `__superChatEvent__` resource represents a Super - Chat purchase on a YouTube channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#superChatEvent\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the Super Chat event.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"SuperChatEvent\"\n },\n \"ChannelSectionLocalization\": - {\n \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for channel section's title.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"ChannelSectionLocalization\",\n \"description\": \"ChannelSection localization - setting\"\n },\n \"AccessPolicy\": {\n \"properties\": {\n \"allowed\": - {\n \"description\": \"The value of allowed indicates whether the - access to the policy is allowed or denied by default.\",\n \"type\": - \"boolean\"\n },\n \"exception\": {\n \"description\": - \"A list of region codes that identify countries where the default policy - do not apply.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"type\": \"string\"\n }\n }\n },\n \"type\": - \"object\",\n \"description\": \"Rights management policy for YouTube - resources.\",\n \"id\": \"AccessPolicy\"\n },\n \"RelatedEntity\": - {\n \"type\": \"object\",\n \"id\": \"RelatedEntity\",\n \"properties\": - {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n }\n - \ },\n \"I18nLanguageListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"I18nLanguage\"\n },\n \"description\": \"A list of supported - i18n languages. In this map, the i18n language ID is the map key, and its - value is the corresponding i18nLanguage resource.\"\n }\n },\n - \ \"id\": \"I18nLanguageListResponse\"\n },\n \"LocalizedString\": - {\n \"properties\": {\n \"language\": {\n \"type\": \"string\"\n - \ },\n \"value\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LocalizedString\",\n \"type\": \"object\"\n - \ },\n \"PageInfo\": {\n \"properties\": {\n \"resultsPerPage\": - {\n \"description\": \"The number of results included in the API - response.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ },\n \"totalResults\": {\n \"format\": \"int32\",\n - \ \"description\": \"The total number of results in the result set.\",\n - \ \"type\": \"integer\"\n }\n },\n \"id\": \"PageInfo\",\n - \ \"type\": \"object\",\n \"description\": \"Paging details for lists - of resources, including total number of items available and number of resources - returned in a single page.\"\n },\n \"SuperStickerMetadata\": {\n \"type\": - \"object\",\n \"id\": \"SuperStickerMetadata\",\n \"properties\": - {\n \"altTextLanguage\": {\n \"type\": \"string\",\n \"description\": - \"Specifies the localization language in which the alt text is returned.\"\n - \ },\n \"altText\": {\n \"type\": \"string\",\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\"\n },\n \"stickerId\": {\n \"type\": - \"string\",\n \"description\": \"Unique identifier of the Super Sticker. - This is a shorter form of the alt_text that includes pack name and a recognizable - characteristic of the sticker.\"\n }\n }\n },\n \"GeoPoint\": - {\n \"description\": \"Geographical coordinates of a point, in WGS84.\",\n - \ \"id\": \"GeoPoint\",\n \"type\": \"object\",\n \"properties\": - {\n \"latitude\": {\n \"format\": \"double\",\n \"description\": - \"Latitude in degrees.\",\n \"type\": \"number\"\n },\n \"longitude\": - {\n \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"Longitude in degrees.\"\n },\n \"altitude\": {\n \"description\": - \"Altitude above the reference ellipsoid, in meters.\",\n \"type\": - \"number\",\n \"format\": \"double\"\n }\n }\n },\n - \ \"ActivityContentDetailsSocial\": {\n \"description\": \"Details - about a social network post.\",\n \"id\": \"ActivityContentDetailsSocial\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"author\": - {\n \"description\": \"The author of the social network post.\",\n - \ \"type\": \"string\"\n },\n \"referenceUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"The URL of the - social network post.\"\n },\n \"imageUrl\": {\n \"type\": - \"string\",\n \"description\": \"An image of the post's author.\"\n - \ },\n \"resourceId\": {\n \"description\": \"The resourceId - object encapsulates information that identifies the resource associated with - a social network post.\",\n \"$ref\": \"ResourceId\"\n },\n - \ \"type\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The name of the social network.\",\n - \ \"enum\": [\n \"unspecified\",\n \"googlePlus\",\n - \ \"facebook\",\n \"twitter\"\n ]\n }\n - \ }\n },\n \"LiveChatMessageRetractedDetails\": {\n \"id\": - \"LiveChatMessageRetractedDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ }\n },\n \"ActivitySnippet\": {\n \"id\": \"ActivitySnippet\",\n - \ \"properties\": {\n \"type\": {\n \"description\": \"The - type of activity that the resource describes.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"typeUnspecified\",\n - \ \"upload\",\n \"like\",\n \"favorite\",\n - \ \"comment\",\n \"subscription\",\n \"playlistItem\",\n - \ \"recommendation\",\n \"bulletin\",\n \"social\",\n - \ \"channelItem\",\n \"promotedItem\"\n ]\n - \ },\n \"channelTitle\": {\n \"description\": \"Channel - title for the channel responsible for this activity\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel associated with the activity.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the video was uploaded.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"groupId\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - title of the resource primarily associated with the activity.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The description of the resource primarily associated with the activity. - @mutable youtube.activities.insert\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"description\": \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n }\n },\n - \ \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\",\n \"type\": - \"object\"\n },\n \"Subscription\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"contentDetails\": {\n \"$ref\": - \"SubscriptionContentDetails\",\n \"description\": \"The contentDetails - object contains basic statistics about the subscription.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the subscription.\",\n \"type\": \"string\"\n },\n \"subscriberSnippet\": - {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n \"description\": - \"The subscriberSnippet object contains basic details about the subscriber.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"SubscriptionSnippet\",\n \"description\": \"The snippet object - contains basic details about the subscription, including its title and the - channel that the user subscribed to.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"default\": \"youtube#subscription\"\n }\n },\n \"id\": - \"Subscription\",\n \"description\": \"A *subscription* resource contains - information about a YouTube user subscription. A subscription notifies a user - when new videos are added to a channel or when another user takes one of several - actions on YouTube, such as uploading a video, rating a video, or commenting - on a video.\"\n },\n \"ThirdPartyLink\": {\n \"id\": \"ThirdPartyLink\",\n - \ \"properties\": {\n \"status\": {\n \"description\": - \"The status object contains information about the status of the link.\",\n - \ \"$ref\": \"ThirdPartyLinkStatus\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#thirdPartyLink\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n - \ },\n \"linkingToken\": {\n \"description\": \"The - linking_token identifies a YouTube account and channel with which the third - party account is linked.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\"\n }\n },\n \"description\": \"A *third party account - link* resource represents a link between a YouTube account or a channel and - an account on a third-party service.\",\n \"type\": \"object\"\n },\n - \ \"SubscriptionSubscriberSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"Thumbnails for this subscriber.\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"The description of the subscriber.\"\n },\n \"title\": {\n - \ \"description\": \"The title of the subscriber.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel ID of the subscriber.\"\n }\n - \ },\n \"description\": \"Basic details about a subscription's subscriber - including title, description, channel ID and thumbnails.\",\n \"id\": - \"SubscriptionSubscriberSnippet\"\n },\n \"ChannelConversionPing\": - {\n \"type\": \"object\",\n \"description\": \"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.\",\n \"id\": - \"ChannelConversionPing\",\n \"properties\": {\n \"context\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ],\n \"description\": \"Defines the context of the ping.\"\n - \ },\n \"conversionUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n }\n },\n \"VideoContentDetails\": - {\n \"description\": \"Details about the content of a YouTube Video.\",\n - \ \"type\": \"object\",\n \"id\": \"VideoContentDetails\",\n \"properties\": - {\n \"licensedContent\": {\n \"description\": \"The value - of is_license_content indicates whether the video is licensed content.\",\n - \ \"type\": \"boolean\"\n },\n \"projection\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"rectangular\",\n \"360\"\n ],\n \"type\": - \"string\",\n \"description\": \"Specifies the projection format - of the video.\"\n },\n \"definition\": {\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\",\n \"enumDescriptions\": - [\n \"sd\",\n \"hd\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"sd\",\n \"hd\"\n - \ ]\n },\n \"caption\": {\n \"enum\": [\n \"true\",\n - \ \"false\"\n ],\n \"description\": \"The value - of captions indicates whether the video has captions or not.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"countryRestriction\": {\n \"$ref\": - \"AccessPolicy\",\n \"description\": \"The countryRestriction object - contains information about the countries where a video is (or is not) viewable.\"\n - \ },\n \"hasCustomThumbnail\": {\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n },\n \"regionRestriction\": {\n \"description\": - \"The regionRestriction object contains information about the countries where - a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"duration\": - {\n \"type\": \"string\",\n \"description\": \"The length - of the video. The tag value is an ISO 8601 duration in the format PT#M#S, - in which the letters PT indicate that the value specifies a period of time, - and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"contentRating\": {\n \"$ref\": \"ContentRating\",\n \"description\": - \"Specifies the ratings that the video received under various rating schemes.\"\n - \ },\n \"dimension\": {\n \"type\": \"string\",\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\"\n }\n }\n },\n \"VideoAbuseReport\": {\n \"id\": - \"VideoAbuseReport\",\n \"type\": \"object\",\n \"properties\": - {\n \"comments\": {\n \"type\": \"string\",\n \"description\": - \"Additional comments regarding the abuse report.\"\n },\n \"language\": - {\n \"type\": \"string\",\n \"description\": \"The language - that the content was viewed in.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video.\"\n },\n \"secondaryReasonId\": {\n \"description\": - \"The specific, or secondary, reason that this content is abusive (if available). - The value is an abuse report reason ID that is a valid secondary reason for - the primary reason.\",\n \"type\": \"string\"\n },\n \"reasonId\": - {\n \"type\": \"string\",\n \"description\": \"The high-level, - or primary, reason that the content is abusive. The value is an abuse report - reason ID.\"\n }\n }\n },\n \"CommentThreadReplies\": {\n - \ \"properties\": {\n \"comments\": {\n \"type\": \"array\",\n - \ \"description\": \"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.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n }\n }\n },\n \"type\": - \"object\",\n \"id\": \"CommentThreadReplies\",\n \"description\": - \"Comments written in (direct or indirect) reply to the top level comment.\"\n - \ },\n \"VideoProjectDetails\": {\n \"description\": \"DEPRECATED. - b/157517979: This part was never populated after it was added. However, it - sees non-zero traffic because there is generated client code in the wild that - refers to it [1]. We keep this field and do NOT remove it because otherwise - V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"type\": \"object\",\n \"id\": \"VideoProjectDetails\",\n \"properties\": - {}\n },\n \"TestItem\": {\n \"id\": \"TestItem\",\n \"properties\": - {\n \"gaia\": {\n \"format\": \"int64\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"Entity\": {\n - \ \"id\": \"Entity\",\n \"properties\": {\n \"typeId\": {\n - \ \"type\": \"string\"\n },\n \"url\": {\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"AbuseReport\": - {\n \"id\": \"AbuseReport\",\n \"properties\": {\n \"abuseTypes\": - {\n \"items\": {\n \"$ref\": \"AbuseType\"\n },\n - \ \"type\": \"array\"\n },\n \"description\": {\n \"type\": - \"string\"\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n - \ },\n \"relatedEntities\": {\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n },\n \"type\": \"array\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"InvideoBranding\": {\n - \ \"properties\": {\n \"imageUrl\": {\n \"description\": - \"The url of the uploaded image. Only used in apiary to api communication.\",\n - \ \"type\": \"string\"\n },\n \"targetChannelId\": {\n - \ \"description\": \"The channel to which this branding links. If - not present it defaults to the current channel.\",\n \"type\": \"string\"\n - \ },\n \"timing\": {\n \"description\": \"The temporal - position within the video where watermark will be displayed.\",\n \"$ref\": - \"InvideoTiming\"\n },\n \"imageBytes\": {\n \"type\": - \"string\",\n \"format\": \"byte\",\n \"description\": \"The - bytes the uploaded image. Only used in api to youtube communication.\"\n },\n - \ \"position\": {\n \"$ref\": \"InvideoPosition\",\n \"description\": - \"The spatial position within the video where the branding watermark will - be displayed.\"\n }\n },\n \"id\": \"InvideoBranding\",\n - \ \"description\": \"LINT.IfChange Describes an invideo branding.\",\n - \ \"type\": \"object\"\n },\n \"PlaylistItem\": {\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\",\n \"id\": - \"PlaylistItem\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the playlist item.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"default\": \"youtube#playlistItem\"\n },\n \"status\": - {\n \"$ref\": \"PlaylistItemStatus\",\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoAgeGating\": - {\n \"id\": \"VideoAgeGating\",\n \"properties\": {\n \"restricted\": - {\n \"type\": \"boolean\",\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\"\n },\n - \ \"alcoholContent\": {\n \"description\": \"Indicates whether - or not the video has alcoholic beverage content. Only users of legal purchasing - age in a particular country, as identified by ICAP, can view the content.\",\n - \ \"type\": \"boolean\"\n },\n \"videoGameRating\": - {\n \"type\": \"string\",\n \"description\": \"Video game - rating, if any.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ]\n }\n },\n \"type\": - \"object\"\n },\n \"VideoListResponse\": {\n \"properties\": {\n - \ \"kind\": {\n \"default\": \"youtube#videoListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Video\"\n },\n \"type\": \"array\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoListResponse\"\n - \ },\n \"ActivityContentDetailsFavorite\": {\n \"id\": \"ActivityContentDetailsFavorite\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource that was marked as a favorite.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"Information about a - video that was marked as a favorite video.\"\n },\n \"PlaylistContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"itemCount\": - {\n \"description\": \"The number of videos in the playlist.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n - \ },\n \"id\": \"PlaylistContentDetails\"\n },\n \"VideoAbuseReportReasonSnippet\": - {\n \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label belonging to this abuse report - reason.\"\n },\n \"secondaryReasons\": {\n \"description\": - \"The secondary reasons associated with this reason, if any are available. - (There might be 0 or more.)\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n }\n - \ }\n },\n \"description\": \"Basic details about a video - category, such as its localized title.\",\n \"type\": \"object\",\n \"id\": - \"VideoAbuseReportReasonSnippet\"\n },\n \"ResourceId\": {\n \"type\": - \"object\",\n \"properties\": {\n \"playlistId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a playlist. This property is only present if the resourceId.kind - value is youtube#playlist.\",\n \"type\": \"string\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\"\n },\n \"kind\": {\n \"description\": - \"The type of the API resource.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a channel. This property is only present if the resourceId.kind - value is youtube#channel.\"\n }\n },\n \"description\": \"A - resource id is a generic reference that points to another YouTube resource.\",\n - \ \"id\": \"ResourceId\"\n },\n \"VideoCategorySnippet\": {\n \"properties\": - {\n \"title\": {\n \"description\": \"The video category's - title.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n - \ \"description\": \"The YouTube channel that created the video category.\"\n - \ },\n \"assignable\": {\n \"type\": \"boolean\"\n }\n - \ },\n \"id\": \"VideoCategorySnippet\",\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\"\n },\n \"Video\": {\n \"properties\": {\n \"player\": - {\n \"$ref\": \"VideoPlayer\",\n \"description\": \"The - player object contains information that you would use to play the video in - an embedded player.\"\n },\n \"suggestions\": {\n \"$ref\": - \"VideoSuggestions\",\n \"description\": \"The suggestions object - encapsulates suggestions that identify opportunities to improve the video - quality or the metadata for the uploaded video. This data can only be retrieved - by the video owner.\"\n },\n \"recordingDetails\": {\n \"description\": - \"The recordingDetails object encapsulates information about the location, - date and address where the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"processingDetails\": {\n \"$ref\": \"VideoProcessingDetails\",\n - \ \"description\": \"The processingDetails object encapsulates information - about YouTube's progress in processing the uploaded video file. The properties - in the object identify the current processing status and an estimate of the - time remaining until YouTube finishes processing the video. This part also - indicates whether different types of data or content, such as file details - or thumbnail images, are available for the video. The processingProgress object - is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n }\n },\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n - \ \"projectDetails\": {\n \"$ref\": \"VideoProjectDetails\",\n - \ \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"additionalProperties\": {\n - \ \"$ref\": \"VideoLocalization\"\n },\n \"description\": - \"The localizations object contains localized versions of the basic details - about the video, such as its title and description.\"\n },\n \"ageGating\": - {\n \"$ref\": \"VideoAgeGating\",\n \"description\": \"Age - restriction details related to a video. This data can only be retrieved by - the video owner.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains statistics about the video.\",\n \"$ref\": - \"VideoStatistics\"\n },\n \"contentDetails\": {\n \"$ref\": - \"VideoContentDetails\",\n \"description\": \"The contentDetails - object contains information about the video content, including the length - of the video and its aspect ratio.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#video\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video, such as its title, description, and category.\"\n },\n \"fileDetails\": - {\n \"description\": \"The fileDetails object encapsulates information - about the video file that was uploaded to YouTube, including the file's resolution, - duration, audio and video codecs, stream bitrates, and more. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n - \ },\n \"liveStreamingDetails\": {\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\",\n \"$ref\": \"VideoLiveStreamingDetails\"\n - \ },\n \"status\": {\n \"$ref\": \"VideoStatus\",\n - \ \"description\": \"The status object contains information about - the video's uploading, processing, and privacy statuses.\"\n },\n \"monetizationDetails\": - {\n \"description\": \"The monetizationDetails object encapsulates - information about the monetization status of the video.\",\n \"$ref\": - \"VideoMonetizationDetails\"\n }\n },\n \"id\": \"Video\",\n - \ \"type\": \"object\",\n \"description\": \"A *video* resource represents - a YouTube video.\"\n },\n \"I18nRegionSnippet\": {\n \"properties\": - {\n \"gl\": {\n \"type\": \"string\",\n \"description\": - \"The region code as a 2-letter ISO country code.\"\n },\n \"name\": - {\n \"type\": \"string\",\n \"description\": \"The human-readable - name of the region.\"\n }\n },\n \"id\": \"I18nRegionSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - an i18n region, such as region code and human-readable name.\"\n },\n \"LiveBroadcastSnippet\": - {\n \"properties\": {\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the broadcast. For each nested - object in this object, the key is the name of the thumbnail image, and the - value is an object that contains other information about the thumbnail.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"scheduledStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"isDefaultBroadcast\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Indicates whether - this broadcast is the default broadcast. Internal only.\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the live chat for this broadcast.\"\n },\n \"actualEndTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\"\n - \ },\n \"scheduledEndTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the broadcast is scheduled to end.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - description. As with the title, you can set this field by modifying the broadcast - resource or by setting the description field of the corresponding video resource.\"\n - \ },\n \"title\": {\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the broadcast - was added to YouTube's live broadcast schedule.\",\n \"format\": - \"date-time\"\n },\n \"actualStartTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - actually started. This information is only available once the broadcast's - state is live.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is publishing the broadcast.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Basic broadcast information.\",\n - \ \"id\": \"LiveBroadcastSnippet\",\n \"type\": \"object\"\n },\n - \ \"VideoAbuseReportSecondaryReason\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label for this abuse report secondary - reason.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of this abuse report secondary reason.\"\n - \ }\n },\n \"id\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"LiveStreamConfigurationIssue\": {\n \"id\": \"LiveStreamConfigurationIssue\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"reason\": - {\n \"type\": \"string\",\n \"description\": \"The short-form - reason for this issue.\"\n },\n \"type\": {\n \"description\": - \"The kind of error happening.\",\n \"type\": \"string\",\n \"enum\": - [\n \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"severity\": - {\n \"enum\": [\n \"info\",\n \"warning\",\n - \ \"error\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"How severe this issue is to the stream.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The long-form description of the issue and how - to resolve it.\"\n }\n }\n },\n \"VideoLiveStreamingDetails\": - {\n \"description\": \"Details about the live streaming metadata.\",\n - \ \"type\": \"object\",\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"properties\": {\n \"scheduledEndTime\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast is scheduled to end. If the value is empty or - the property is not present, then the broadcast is scheduled to contiue indefinitely.\"\n - \ },\n \"scheduledStartTime\": {\n \"description\": - \"The time that the broadcast is scheduled to begin.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"concurrentViewers\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of viewers currently watching the broadcast. The property and - its value will be present if the broadcast has current viewers and the broadcast - owner has not hidden the viewcount for the video. Note that YouTube stops - tracking the number of concurrent viewers for a broadcast when the broadcast - ends. So, this property would not identify the number of viewers watching - an archived video of a live broadcast that already ended.\"\n },\n - \ \"activeLiveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the currently active live chat attached to this video. This field - is filled only if the video is a currently live broadcast that has live chat. - Once the broadcast transitions to complete this field will be removed and - the live chat closed down. For persistent broadcasts that live chat id will - no longer be tied to this video but rather to the new video being displayed - at the persistent page.\"\n },\n \"actualEndTime\": {\n \"description\": - \"The time that the broadcast actually ended. This value will not be available - until the broadcast is over.\",\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"actualStartTime\": {\n \"type\": - \"string\",\n \"description\": \"The time that the broadcast actually - started. This value will not be available until the broadcast begins.\",\n - \ \"format\": \"date-time\"\n }\n }\n },\n \"ActivityContentDetailsSubscription\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"description\": \"Information about a channel that a user subscribed - to.\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"ChannelContentOwnerDetails\": {\n \"properties\": - {\n \"contentOwner\": {\n \"description\": \"The ID of the - content owner linked to the channel.\",\n \"type\": \"string\"\n - \ },\n \"timeLinked\": {\n \"description\": \"The date - and time when the channel was linked to the content owner.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n }\n },\n \"id\": - \"ChannelContentOwnerDetails\",\n \"type\": \"object\",\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\"\n },\n \"ChannelToStoreLinkDetails\": - {\n \"properties\": {\n \"merchantId\": {\n \"description\": - \"Google Merchant Center id of the store.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"storeName\": {\n \"type\": - \"string\",\n \"description\": \"Name of the store.\"\n },\n - \ \"storeUrl\": {\n \"type\": \"string\",\n \"description\": - \"Landing page of the store.\"\n }\n },\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Information specific - to a store on a merchandising platform linked to a YouTube channel.\"\n },\n - \ \"ThirdPartyLinkListResponse\": {\n \"id\": \"ThirdPartyLinkListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n \"default\": - \"youtube#thirdPartyLinkListResponse\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatTextMessageDetails\": - {\n \"properties\": {\n \"messageText\": {\n \"description\": - \"The user's message.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LiveChatTextMessageDetails\",\n \"type\": \"object\"\n - \ },\n \"InvideoTiming\": {\n \"type\": \"object\",\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\",\n \"id\": - \"InvideoTiming\",\n \"properties\": {\n \"offsetMs\": {\n \"type\": - \"string\",\n \"description\": \"Defines the time at which the promotion - will appear. Depending on the value of type the value of the offsetMs field - will represent a time offset from the start or from the end of the video, - expressed in milliseconds.\",\n \"format\": \"uint64\"\n },\n - \ \"type\": {\n \"description\": \"Describes a timing type. - If the value is offsetFromStart, then the offsetMs field represents an offset - from the start of the video. If the value is offsetFromEnd, then the offsetMs - field represents an offset from the end of the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n - \ ]\n },\n \"durationMs\": {\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n }\n }\n },\n \"Activity\": - {\n \"description\": \"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.\",\n \"id\": \"Activity\",\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#activity\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n - \ \"description\": \"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.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the activity.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the activity, including the activity's type and group ID.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n }\n }\n },\n \"CommentListResponse\": - {\n \"id\": \"CommentListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Comment\"\n - \ },\n \"description\": \"A list of comments that match the - request criteria.\",\n \"type\": \"array\"\n },\n \"kind\": - {\n \"default\": \"youtube#commentListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ImageSettings\": - {\n \"type\": \"object\",\n \"id\": \"ImageSettings\",\n \"properties\": - {\n \"largeBrandedBannerImageImapScript\": {\n \"description\": - \"The image map script for the large banner image.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\"\n },\n \"bannerTvImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size extra high resolution (2120x1192).\"\n },\n \"bannerTvLowImageUrl\": - {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileImageUrl\": - {\n \"description\": \"Banner image. Mobile size (640x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 640px by 70px banner image - that appears below the video player in the default view of the video watch - page. The URL for the image that appears above the top-left corner of the - video player. This is a 25-pixel-high image with a flexible width that cannot - exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerMobileHdImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. Mobile size high resolution (1280x360).\"\n },\n \"bannerTabletImageUrl\": - {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n - \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"bannerImageUrl\": - {\n \"description\": \"Banner image. Desktop size (1060x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvHighImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\",\n \"type\": \"string\"\n },\n \"backgroundImageUrl\": - {\n \"description\": \"The URL for the background image shown on - the video watch page. The image should be 1200px by 615px, with a maximum - file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"trackingImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The URL for a 1px by 1px tracking pixel that can be used to collect statistics - for views of the channel or video pages.\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"bannerMobileMediumHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size medium/high - resolution (960x263).\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size medium resolution (1280x720).\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Branding properties for images associated with the channel.\"\n },\n - \ \"LiveBroadcastContentDetails\": {\n \"description\": \"Detailed - settings of a broadcast.\",\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"enableAutoStop\": - {\n \"description\": \"This setting indicates whether auto stop is - enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\",\n \"type\": \"boolean\"\n - \ },\n \"boundStreamId\": {\n \"type\": \"string\",\n - \ \"description\": \"This value uniquely identifies the live stream - bound to the broadcast.\"\n },\n \"monitorStream\": {\n \"description\": - \"The monitorStream object contains information about the monitor stream, - which the broadcaster can use to review the event content before the broadcast - stream is shown publicly.\",\n \"$ref\": \"MonitorStreamInfo\"\n - \ },\n \"boundStreamLastUpdateTimeMs\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the live - stream referenced by boundStreamId was last updated.\",\n \"type\": - \"string\"\n },\n \"enableDvr\": {\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n - \ },\n \"mesh\": {\n \"description\": \"The mesh for - projecting the video if projection is mesh. The mesh value must be a UTF-8 - string containing the base-64 encoding of 3D mesh data that follows the Spherical - Video V2 RFC specification for an mshp box, excluding the box size and type - but including the following four reserved zero bytes for the version and flags.\",\n - \ \"type\": \"string\",\n \"format\": \"byte\"\n },\n - \ \"enableLowLatency\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether this broadcast has low latency enabled.\"\n },\n - \ \"enableContentEncryption\": {\n \"description\": \"This - setting indicates whether YouTube should enable content encryption for the - broadcast.\",\n \"type\": \"boolean\"\n },\n \"startWithSlate\": - {\n \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n },\n \"projection\": {\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"projectionUnspecified\",\n - \ \"rectangular\",\n \"360\",\n \"mesh\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"enableAutoStart\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"recordFromStart\": {\n \"type\": \"boolean\",\n \"description\": - \"Automatically start recording after the event goes live. The default value - for this property is true. *Important:* You must also set the enableDvr property's - value to true if you want the playback to be available immediately after the - broadcast ends. If you set this property's value to true but do not also set - the enableDvr property to true, there may be a delay of around one day before - the archived video will be available for playback.\"\n },\n \"latencyPreference\": - {\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"type\": \"string\",\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ]\n },\n - \ \"closedCaptionsType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ],\n \"type\": \"string\"\n },\n \"enableClosedCaptions\": - {\n \"description\": \"This setting indicates whether HTTP POST closed - captioning is enabled for this broadcast. The ingestion URL of the closed - captions is returned through the liveStreams API. This is mutually exclusive - with using the closed_captions_type property, and is equivalent to setting - closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n \"type\": - \"boolean\"\n },\n \"stereoLayout\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ],\n \"description\": \"The 3D stereo layout of this broadcast. - This defaults to mono.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ThumbnailSetResponse\": {\n \"id\": \"ThumbnailSetResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"default\": \"youtube#thumbnailSetResponse\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of thumbnails.\",\n - \ \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"type\": \"array\"\n }\n }\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level at which the - viewer is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"gifterChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the user that made the - membership gifting purchase. This matches the `snippet.authorChannelId` of - the associated membership gifting message.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"description\": \"The ID of the membership gifting message that - is related to this gift membership. This ID will always refer to a message - whose type is 'membershipGiftingEvent'.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoStatus\": {\n \"id\": \"VideoStatus\",\n - \ \"properties\": {\n \"publishAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the video is scheduled to publish. It can be set only if the - privacy status of the video is private..\"\n },\n \"uploadStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ],\n \"enumDescriptions\": [\n - \ \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"description\": - \"The status of the uploaded video.\"\n },\n \"rejectionReason\": - {\n \"description\": \"This value explains why YouTube rejected an - uploaded video. This property is only present if the uploadStatus property - indicates that the upload was rejected.\",\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ]\n },\n - \ \"embeddable\": {\n \"type\": \"boolean\",\n \"description\": - \"This value indicates if the video can be embedded on another website. @mutable - youtube.videos.insert youtube.videos.update\"\n },\n \"license\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ]\n },\n \"failureReason\": {\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ],\n \"description\": \"This value explains - why a video failed to upload. This property is only present if the uploadStatus - property indicates that the upload failed.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ]\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"privacyStatus\": - {\n \"description\": \"The video's privacy status.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\"\n },\n - \ \"publicStatsViewable\": {\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title. Next Id: 18\"\n },\n \"ActivityContentDetailsLike\": - {\n \"description\": \"Information about a resource that received a positive - (like) rating.\",\n \"id\": \"ActivityContentDetailsLike\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the rated resource.\",\n \"$ref\": - \"ResourceId\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"PlaylistSnippet\": {\n \"properties\": {\n \"localized\": - {\n \"description\": \"Localized title and description, read-only.\",\n - \ \"$ref\": \"PlaylistLocalization\"\n },\n \"thumbnailVideoId\": - {\n \"type\": \"string\",\n \"description\": \"Note: if - the playlist has a custom thumbnail, this field will not be populated. The - video id selected by the user that will be used as the thumbnail of this playlist. - This field defaults to the first publicly viewable video in the playlist, - if: 1. The user has never selected a video to be the thumbnail of the playlist. - 2. The user selects a video to be the thumbnail, and then removes that video - from the playlist. 3. The user selects a non-owned video to be the thumbnail, - but that video becomes private, or gets deleted.\"\n },\n \"tags\": - {\n \"type\": \"array\",\n \"description\": \"Keyword tags - associated with the playlist.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"description\": {\n \"description\": - \"The playlist's description.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.playlists.insert\",\n \"youtube.playlists.update\"\n - \ ]\n },\n \"description\": \"The playlist's title.\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the playlist - was created.\",\n \"type\": \"string\"\n },\n \"channelTitle\": - {\n \"description\": \"The channel title of the channel that the - video belongs to.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the playlist's default title and description.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the playlist.\"\n - \ }\n },\n \"id\": \"PlaylistSnippet\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails.\",\n - \ \"type\": \"object\"\n },\n \"VideoFileDetails\": {\n \"id\": - \"VideoFileDetails\",\n \"description\": \"Describes original video file - properties, including technical details about audio and video streams, but - also metadata information like content length, digitization time, or geotagging - information.\",\n \"properties\": {\n \"creationTime\": {\n \"description\": - \"The date and time when the uploaded video file was created. The value is - specified in ISO 8601 format. Currently, the following ISO 8601 formats are - supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time - with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n - \ },\n \"durationMs\": {\n \"description\": \"The length - of the uploaded video in milliseconds.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"videoStreams\": {\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n },\n \"description\": - \"A list of video streams contained in the uploaded video file. Each item - in the list contains detailed metadata about a video stream.\"\n },\n - \ \"fileSize\": {\n \"description\": \"The uploaded file's - size in bytes. This field is present whether a video file or another type - of file was uploaded.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"audioStreams\": {\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ }\n },\n \"bitrateBps\": {\n \"description\": - \"The uploaded video file's combined (video and audio) bitrate in bits per - second.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ },\n \"container\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded video file's container format.\"\n },\n \"fileName\": - {\n \"type\": \"string\",\n \"description\": \"The uploaded - file's name. This field is present whether a video file or another type of - file was uploaded.\"\n },\n \"fileType\": {\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The uploaded file's type as detected by YouTube's video processing engine. - Currently, YouTube only processes video files, but this field is present whether - a video file or another type of file was uploaded.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"SearchListResponse\": {\n \"type\": - \"object\",\n \"properties\": {\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"description\": \"Pagination information - for token pagination.\",\n \"items\": {\n \"$ref\": \"SearchResult\"\n - \ },\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#searchListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n - \ }\n },\n \"id\": \"SearchListResponse\"\n },\n \"ChannelLocalization\": - {\n \"type\": \"object\",\n \"description\": \"Channel localization - setting\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - title.\"\n },\n \"description\": {\n \"description\": - \"The localized strings for channel's description.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ChannelLocalization\"\n },\n - \ \"LiveChatModerator\": {\n \"type\": \"object\",\n \"description\": - \"A *liveChatModerator* resource represents a moderator for a YouTube live - chat. A chat moderator has the ability to ban/unban users from a chat, remove - message, etc.\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatModerator\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the moderator.\",\n \"$ref\": - \"LiveChatModeratorSnippet\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the moderator.\"\n }\n - \ },\n \"id\": \"LiveChatModerator\"\n },\n \"LiveStream\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"LiveStreamContentDetails\",\n \"description\": - \"The content_details object contains information about the stream, including - the closed captions ingestion URL.\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveStream\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the stream, including its channel, title, - and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube assigns - to uniquely identify the stream.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"status\": {\n \"$ref\": - \"LiveStreamStatus\",\n \"description\": \"The status object contains - information about live stream's status.\"\n },\n \"cdn\": {\n - \ \"description\": \"The cdn object defines the live stream's content - delivery network (CDN) settings. These settings provide details about the - manner in which you stream your content to YouTube.\",\n \"$ref\": - \"CdnSettings\"\n }\n },\n \"description\": \"A live stream - describes a live ingestion point.\",\n \"type\": \"object\",\n \"id\": - \"LiveStream\"\n },\n \"ChannelContentDetails\": {\n \"id\": \"ChannelContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"properties\": {\n \"watchHistory\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"watchLater\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch later playlist. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"favorites\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s favorite videos. Use the playlistItems.insert and - playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"likes\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s liked videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"uploads\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s uploaded videos. Use the videos.insert method to - upload new videos and the videos.delete method to delete previously uploaded - videos.\"\n }\n },\n \"type\": \"object\"\n }\n - \ },\n \"description\": \"Details about the content of a channel.\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"properties\": - {\n \"seedResourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The seedResourceId object contains information about the resource that caused - the recommendation.\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the recommended - resource.\",\n \"$ref\": \"ResourceId\"\n },\n \"reason\": - {\n \"description\": \"The reason that the resource is recommended - to the user.\",\n \"enum\": [\n \"reasonUnspecified\",\n - \ \"videoFavorited\",\n \"videoLiked\",\n \"videoWatched\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"type\": \"object\",\n \"description\": \"Information that identifies - the recommended resource.\"\n },\n \"LiveStreamListResponse\": {\n \"properties\": - {\n \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"description\": \"A list of live streams that match - the request criteria.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveStreamListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveStreamListResponse\"\n - \ },\n \"LiveChatModeratorListResponse\": {\n \"properties\": {\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"items\": {\n \"description\": \"A list of moderators that - match the request criteria.\",\n \"items\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"type\": \"array\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorListResponse\"\n - \ },\n \"Comment\": {\n \"description\": \"A *comment* represents - a single YouTube comment.\",\n \"id\": \"Comment\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the comment.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment.\",\n \"$ref\": - \"CommentSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#comment\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"properties\": {\n \"giftMembershipsCount\": {\n \"format\": - \"int32\",\n \"description\": \"The number of gift memberships purchased - by the user.\",\n \"type\": \"integer\"\n },\n \"giftMembershipsLevelName\": - {\n \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMembershipGiftingDetails\"\n },\n \"SubscriptionListResponse\": - {\n \"id\": \"SubscriptionListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - subscriptions that match the request criteria.\",\n \"items\": {\n - \ \"$ref\": \"Subscription\"\n }\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"MemberListResponse\": {\n \"id\": \"MemberListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"description\": - \"A list of members that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Member\"\n },\n \"type\": \"array\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#memberListResponse\\\".\",\n \"default\": - \"youtube#memberListResponse\"\n }\n }\n },\n \"LiveChatBan\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatBan\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the ban.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatBan\"\n - \ }\n },\n \"description\": \"A `__liveChatBan__` resource - represents a ban for a YouTube live chat.\"\n },\n \"LevelDetails\": - {\n \"properties\": {\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The name that should be used when - referring to this level.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LevelDetails\"\n }\n },\n \"canonicalName\": \"YouTube\",\n - \ \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"kind\": \"discovery#restDescription\",\n - \ \"revision\": \"20230220\",\n \"discoveryVersion\": \"v1\",\n \"parameters\": - {\n \"uploadType\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Legacy upload protocol for media (e.g. - \\\"media\\\", \\\"multipart\\\").\"\n },\n \"access_token\": {\n \"description\": - \"OAuth access token.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"prettyPrint\": {\n \"location\": \"query\",\n - \ \"description\": \"Returns response with indentations and line breaks.\",\n - \ \"default\": \"true\",\n \"type\": \"boolean\"\n },\n \"key\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"fields\": {\n \"description\": \"Selector specifying - which fields to include in a partial response.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"$.xgafv\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"v1 - error format\",\n \"v2 error format\"\n ],\n \"enum\": [\n - \ \"1\",\n \"2\"\n ],\n \"description\": \"V1 error - format.\"\n },\n \"upload_protocol\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Upload protocol for - media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n },\n \"callback\": - {\n \"location\": \"query\",\n \"description\": \"JSONP\",\n \"type\": - \"string\"\n },\n \"oauth_token\": {\n \"type\": \"string\",\n - \ \"description\": \"OAuth 2.0 token for the current user.\",\n \"location\": - \"query\"\n },\n \"quotaUser\": {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"alt\": {\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Data format for response.\",\n - \ \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"default\": \"json\"\n }\n },\n \"ownerName\": \"Google\",\n - \ \"description\": \"The YouTube Data API v3 is an API that provides access - to YouTube data, such as videos, playlists, and channels.\",\n \"rootUrl\": - \"https://youtube.googleapis.com/\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"servicePath\": \"\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"basePath\": \"\",\n \"batchPath\": \"batch\",\n \"name\": \"youtube\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:41 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCPWvxc8QuP6gKYqrDdwaNJw&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"ADw0oZAbZaCDDlWXoGximDwmlvw\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"_NaoX02oRWXcxhN-hWimMiZtKAQ\",\n \"id\": \"UCPWvxc8QuP6gKYqrDdwaNJw\",\n - \ \"snippet\": {\n \"title\": \"\u0424\u0435\u043D\u0438\u043A\u0441 - \u041A\u0438\u043D\u043E\",\n \"description\": \"\u041A\u0430\u043D\u0430\u043B - \\\"\u0424\u0435\u043D\u0438\u043A\u0441 \u041A\u0438\u043D\u043E\\\"\\n\u0415\u0434\u0438\u043D\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0439 - \u043E\u0444\u0438\u0446\u0438\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u0430\u043D\u0430\u043B - \u0432 YouTube, \u0433\u0434\u0435 \u043C\u043E\u0436\u043D\u043E \u043F\u043E\u0441\u043C\u043E\u0442\u0440\u0435\u0442\u044C - \u0441\u0435\u0440\u0438\u0430\u043B\u044B \\\"\u0412\u0441\u0435\u0433\u0434\u0430 - \u0413\u043E\u0432\u043E\u0440\u0438 \u0412\u0441\u0435\u0433\u0434\u0430\\\", - \\\"\u0411\u0440\u0430\u043A \u043F\u043E \u0437\u0430\u0432\u0435\u0449\u0430\u043D\u0438\u044E\\\", - \\\"\u0423\u0441\u043B\u043E\u0432\u0438\u044F \u043A\u043E\u043D\u0442\u0440\u0430\u043A\u0442\u0430\\\", - \\\"\u0423\u043B\u044B\u0431\u043A\u0430 \u043F\u0435\u0440\u0435\u0441\u043C\u0435\u0448\u043D\u0438\u043A\u0430\\\", - \\\"\u0421\u0443\u0447\u044C\u044F \u0432\u043E\u0439\u043D\u0430\\\", \\\"\u0414\u0432\u043E\u0439\u043D\u0430\u044F - \u0436\u0438\u0437\u043D\u044C\\\", \\\"\u041B\u044E\u0431\u043E\u0432\u044C - \u043F\u043E \u043F\u0440\u0438\u043A\u0430\u0437\u0443\\\", \\\"\u041F\u043E\u0437\u0434\u043D\u0438\u0439 - \u0441\u0440\u043E\u043A\\\", \\\"\u0422\u0430\u043A\u0430\u044F, \u043A\u0430\u043A - \u0432\u0441\u0435\\\", \u0430 \u0442\u0430\u043A\u0436\u0435 \u0438\u0445 - \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0435\u043D\u0438\u044F \u0438 - \u0434\u0440\u0443\u0433\u0438\u0435 \u0437\u0430\u043C\u0435\u0447\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0435 - \u0441\u0435\u0440\u0438\u0430\u043B\u044B, \u043C\u043D\u043E\u0433\u0438\u0435 - \u0438\u0437 \u043A\u043E\u0442\u043E\u0440\u044B\u0445 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B - \u0432 HD.\\n\\n\u0422\u0435\u043B\u0435\u043A\u0430\u043D\u0430\u043B \\\"\u0424\u0435\u043D\u0438\u043A\u0441 - \u041F\u043B\u044E\u0441 \u041A\u0438\u043D\u043E\\\"\\nhttp://fenixplus.tv - \\n\\n\u041A\u0430\u043D\u0430\u043B \\\"\u0424\u0435\u043D\u0438\u043A\u0441 - \u041A\u0438\u043D\u043E\\\" \u043D\u0430 \u043F\u043E\u0440\u0442\u0430\u043B\u0435 - YouTube.\\nhttps://www.youtube.com/fenixpluskino\\n\\nFenix Kino in English - / \u041D\u0430\u0448 \u043A\u0430\u043D\u0430\u043B \u043D\u0430 \u0430\u043D\u0433\u043B\u0438\u0439\u0441\u043A\u043E\u043C - \u044F\u0437\u044B\u043A\u0435\\nhttps://www.youtube.com/channel/UCZRNguOtj5GlkkN8jzpS7xw?sub_confirmation=1\\n\\n\\n\\n\\n\",\n - \ \"customUrl\": \"@fenixpluskino\",\n \"publishedAt\": \"2013-01-22T11:45:19Z\",\n - \ \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/ytc/AL5GRJUgWrBgv_pBt-f1q4vfQbs4xHFmzp2n7CDhPtqJAw=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJUgWrBgv_pBt-f1q4vfQbs4xHFmzp2n7CDhPtqJAw=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJUgWrBgv_pBt-f1q4vfQbs4xHFmzp2n7CDhPtqJAw=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"\u0424\u0435\u043D\u0438\u043A\u0441 - \u041A\u0438\u043D\u043E\",\n \"description\": \"\u041A\u0430\u043D\u0430\u043B - \\\"\u0424\u0435\u043D\u0438\u043A\u0441 \u041A\u0438\u043D\u043E\\\"\\n\u0415\u0434\u0438\u043D\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0439 - \u043E\u0444\u0438\u0446\u0438\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u0430\u043D\u0430\u043B - \u0432 YouTube, \u0433\u0434\u0435 \u043C\u043E\u0436\u043D\u043E \u043F\u043E\u0441\u043C\u043E\u0442\u0440\u0435\u0442\u044C - \u0441\u0435\u0440\u0438\u0430\u043B\u044B \\\"\u0412\u0441\u0435\u0433\u0434\u0430 - \u0413\u043E\u0432\u043E\u0440\u0438 \u0412\u0441\u0435\u0433\u0434\u0430\\\", - \\\"\u0411\u0440\u0430\u043A \u043F\u043E \u0437\u0430\u0432\u0435\u0449\u0430\u043D\u0438\u044E\\\", - \\\"\u0423\u0441\u043B\u043E\u0432\u0438\u044F \u043A\u043E\u043D\u0442\u0440\u0430\u043A\u0442\u0430\\\", - \\\"\u0423\u043B\u044B\u0431\u043A\u0430 \u043F\u0435\u0440\u0435\u0441\u043C\u0435\u0448\u043D\u0438\u043A\u0430\\\", - \\\"\u0421\u0443\u0447\u044C\u044F \u0432\u043E\u0439\u043D\u0430\\\", \\\"\u0414\u0432\u043E\u0439\u043D\u0430\u044F - \u0436\u0438\u0437\u043D\u044C\\\", \\\"\u041B\u044E\u0431\u043E\u0432\u044C - \u043F\u043E \u043F\u0440\u0438\u043A\u0430\u0437\u0443\\\", \\\"\u041F\u043E\u0437\u0434\u043D\u0438\u0439 - \u0441\u0440\u043E\u043A\\\", \\\"\u0422\u0430\u043A\u0430\u044F, \u043A\u0430\u043A - \u0432\u0441\u0435\\\", \u0430 \u0442\u0430\u043A\u0436\u0435 \u0438\u0445 - \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0435\u043D\u0438\u044F \u0438 - \u0434\u0440\u0443\u0433\u0438\u0435 \u0437\u0430\u043C\u0435\u0447\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0435 - \u0441\u0435\u0440\u0438\u0430\u043B\u044B, \u043C\u043D\u043E\u0433\u0438\u0435 - \u0438\u0437 \u043A\u043E\u0442\u043E\u0440\u044B\u0445 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B - \u0432 HD.\\n\\n\u0422\u0435\u043B\u0435\u043A\u0430\u043D\u0430\u043B \\\"\u0424\u0435\u043D\u0438\u043A\u0441 - \u041F\u043B\u044E\u0441 \u041A\u0438\u043D\u043E\\\"\\nhttp://fenixplus.tv - \\n\\n\u041A\u0430\u043D\u0430\u043B \\\"\u0424\u0435\u043D\u0438\u043A\u0441 - \u041A\u0438\u043D\u043E\\\" \u043D\u0430 \u043F\u043E\u0440\u0442\u0430\u043B\u0435 - YouTube.\\nhttps://www.youtube.com/fenixpluskino\\n\\nFenix Kino in English - / \u041D\u0430\u0448 \u043A\u0430\u043D\u0430\u043B \u043D\u0430 \u0430\u043D\u0433\u043B\u0438\u0439\u0441\u043A\u043E\u043C - \u044F\u0437\u044B\u043A\u0435\\nhttps://www.youtube.com/channel/UCZRNguOtj5GlkkN8jzpS7xw?sub_confirmation=1\\n\\n\\n\\n\\n\"\n - \ }\n },\n \"brandingSettings\": {\n \"channel\": {\n - \ \"title\": \"\u0424\u0435\u043D\u0438\u043A\u0441 \u041A\u0438\u043D\u043E\",\n - \ \"description\": \"\u041A\u0430\u043D\u0430\u043B \\\"\u0424\u0435\u043D\u0438\u043A\u0441 - \u041A\u0438\u043D\u043E\\\"\\n\u0415\u0434\u0438\u043D\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0439 - \u043E\u0444\u0438\u0446\u0438\u0430\u043B\u044C\u043D\u044B\u0439 \u043A\u0430\u043D\u0430\u043B - \u0432 YouTube, \u0433\u0434\u0435 \u043C\u043E\u0436\u043D\u043E \u043F\u043E\u0441\u043C\u043E\u0442\u0440\u0435\u0442\u044C - \u0441\u0435\u0440\u0438\u0430\u043B\u044B \\\"\u0412\u0441\u0435\u0433\u0434\u0430 - \u0413\u043E\u0432\u043E\u0440\u0438 \u0412\u0441\u0435\u0433\u0434\u0430\\\", - \\\"\u0411\u0440\u0430\u043A \u043F\u043E \u0437\u0430\u0432\u0435\u0449\u0430\u043D\u0438\u044E\\\", - \\\"\u0423\u0441\u043B\u043E\u0432\u0438\u044F \u043A\u043E\u043D\u0442\u0440\u0430\u043A\u0442\u0430\\\", - \\\"\u0423\u043B\u044B\u0431\u043A\u0430 \u043F\u0435\u0440\u0435\u0441\u043C\u0435\u0448\u043D\u0438\u043A\u0430\\\", - \\\"\u0421\u0443\u0447\u044C\u044F \u0432\u043E\u0439\u043D\u0430\\\", \\\"\u0414\u0432\u043E\u0439\u043D\u0430\u044F - \u0436\u0438\u0437\u043D\u044C\\\", \\\"\u041B\u044E\u0431\u043E\u0432\u044C - \u043F\u043E \u043F\u0440\u0438\u043A\u0430\u0437\u0443\\\", \\\"\u041F\u043E\u0437\u0434\u043D\u0438\u0439 - \u0441\u0440\u043E\u043A\\\", \\\"\u0422\u0430\u043A\u0430\u044F, \u043A\u0430\u043A - \u0432\u0441\u0435\\\", \u0430 \u0442\u0430\u043A\u0436\u0435 \u0438\u0445 - \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0435\u043D\u0438\u044F \u0438 - \u0434\u0440\u0443\u0433\u0438\u0435 \u0437\u0430\u043C\u0435\u0447\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0435 - \u0441\u0435\u0440\u0438\u0430\u043B\u044B, \u043C\u043D\u043E\u0433\u0438\u0435 - \u0438\u0437 \u043A\u043E\u0442\u043E\u0440\u044B\u0445 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B - \u0432 HD.\\n\\n\u0422\u0435\u043B\u0435\u043A\u0430\u043D\u0430\u043B \\\"\u0424\u0435\u043D\u0438\u043A\u0441 - \u041F\u043B\u044E\u0441 \u041A\u0438\u043D\u043E\\\"\\nhttp://fenixplus.tv - \\n\\n\u041A\u0430\u043D\u0430\u043B \\\"\u0424\u0435\u043D\u0438\u043A\u0441 - \u041A\u0438\u043D\u043E\\\" \u043D\u0430 \u043F\u043E\u0440\u0442\u0430\u043B\u0435 - YouTube.\\nhttps://www.youtube.com/fenixpluskino\\n\\nFenix Kino in English - / \u041D\u0430\u0448 \u043A\u0430\u043D\u0430\u043B \u043D\u0430 \u0430\u043D\u0433\u043B\u0438\u0439\u0441\u043A\u043E\u043C - \u044F\u0437\u044B\u043A\u0435\\nhttps://www.youtube.com/channel/UCZRNguOtj5GlkkN8jzpS7xw?sub_confirmation=1\\n\\n\\n\\n\\n\",\n - \ \"keywords\": \"\\\"\u0423\u043B\u044B\u0431\u043A\u0430 \u043F\u0435\u0440\u0435\u0441\u043C\u0435\u0448\u043D\u0438\u043A\u0430\\\" - \\\"\u0412\u0435\u0440\u044C \u043C\u043D\u0435\\\" \\\"\u0423\u0441\u043B\u043E\u0432\u0438\u044F - \u043A\u043E\u043D\u0442\u0440\u0430\u043A\u0442\u0430\\\" \\\"\u0411\u0440\u0430\u043A - \u043F\u043E \u0437\u0430\u0432\u0435\u0449\u0430\u043D\u0438\u044E\\\" \\\"\u0412\u0441\u0435\u0433\u0434\u0430 - \u0413\u043E\u0432\u043E\u0440\u0438 \u0412\u0441\u0435\u0433\u0434\u0430\\\" - \u0424\u0435\u043D\u0438\u043A\u0441-\u0424\u0438\u043B\u044C\u043C \\\"\u0441\u043C\u043E\u0442\u0440\u0435\u0442\u044C - \u043A\u0438\u043D\u043E \u0431\u0435\u0441\u043F\u043B\u0430\u0442\u043D\u043E\\\" - \\\"\u0441\u043C\u043E\u0442\u0440\u0435\u0442\u044C \u0441\u0435\u0440\u0438\u0430\u043B\u044B - \u0431\u0435\u0441\u043F\u043B\u0430\u0442\u043D\u043E\\\" \u043A\u0438\u043D\u043E - \u0424\u0435\u043D\u0438\u043A\u0441+\u041A\u0438\u043D\u043E \\\"\u0424\u0435\u043D\u0438\u043A\u0441 - \u043F\u043B\u044E\u0441 \u041A\u0438\u043D\u043E\\\"\",\n \"unsubscribedTrailer\": - \"Qw3OiQtTcJQ\"\n },\n \"image\": {\n \"bannerExternalUrl\": - \"https://yt3.googleusercontent.com/kkb_9-sfRGJ9rx7c-SrBA5VSwmfHsUHTSg3KnRZnlKU1CngS_JKZHm8AST9PRm_KIDw4ROgamA\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:42 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"kind\": \"discovery#restDescription\",\n \"canonicalName\": - \"YouTube\",\n \"version\": \"v3\",\n \"ownerDomain\": \"google.com\",\n - \ \"protocol\": \"rest\",\n \"resources\": {\n \"channelBanners\": {\n - \ \"methods\": {\n \"insert\": {\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [],\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"supportsMediaUpload\": true,\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Unused, channel_id is currently - derived from the security context of the requestor.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"id\": \"youtube.channelBanners.insert\",\n \"response\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n - \ \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\",\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n }\n }\n - \ }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"insert\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.insert\",\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n }\n },\n \"delete\": - {\n \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"id\": \"youtube.channelSections.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n }\n },\n \"list\": {\n \"response\": - {\n \"$ref\": \"ChannelSectionListResponse\"\n },\n \"parameters\": - {\n \"mine\": {\n \"description\": \"Return the ChannelSections - owned by the authenticated user.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return the ChannelSections owned - by the specified channel ID.\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"description\": \"Return content in specified - language\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.list\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"update\": {\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"id\": \"youtube.channelSections.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/channelSections\",\n \"flatPath\": - \"youtube/v3/channelSections\"\n }\n }\n },\n \"members\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"MemberListResponse\"\n },\n \"flatPath\": - \"youtube/v3/members\",\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/members\",\n \"description\": \"Retrieves a list of - members that match the request criteria for a channel.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.members.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"parameters\": {\n \"mode\": {\n \"enum\": - [\n \"listMembersModeUnknown\",\n \"updates\",\n - \ \"all_current\"\n ],\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return only members that joined after the first call with - this mode was made.\",\n \"Return all current members, from - newest to oldest.\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Parameter that specifies which channel members - to return.\",\n \"default\": \"all_current\"\n },\n - \ \"filterByMemberChannelId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Comma - separated list of channel IDs. Only data about members that are part of this - list will be included in the response.\"\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"The - *part* parameter specifies the member resource parts that the API response - will include. Set the parameter value to snippet.\"\n },\n \"hasAccessToLevel\": - {\n \"description\": \"Filter members in the results set to the - ones that have access to a level.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"maximum\": \"1000\"\n }\n - \ }\n }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.commentThreads.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"textFormat\": {\n \"default\": - \"html\",\n \"description\": \"The requested text format for - the returned comments.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"location\": \"query\"\n },\n \"moderationStatus\": - {\n \"enumDescriptions\": [\n \"The comment is - available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"location\": \"query\",\n - \ \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"description\": \"Limits the returned comment threads to those - with the specified moderation status. Not compatible with the 'id' filter. - Valid values: published, heldForReview, likelySpam.\",\n \"type\": - \"string\",\n \"default\": \"published\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies a comma-separated list of one or more commentThread - resource properties that the API response will include.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"allThreadsRelatedToChannelId\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\"\n },\n \"order\": - {\n \"default\": \"time\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Order by time.\",\n \"Order - by relevance.\"\n ],\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ]\n - \ },\n \"channelId\": {\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"maximum\": \"100\",\n - \ \"location\": \"query\",\n \"default\": \"20\",\n - \ \"minimum\": \"1\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"videoId\": {\n \"description\": \"Returns the comment - threads of the specified video.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"searchTerms\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Limits the returned comment threads to those - matching the specified key words. Not compatible with the 'id' filter.\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"Returns the comment threads with the given IDs for Stubby or Apiary.\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"CommentThreadListResponse\"\n }\n },\n \"insert\": - {\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"id\": - \"youtube.commentThreads.insert\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"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.\"\n }\n }\n }\n }\n },\n - \ \"channels\": {\n \"methods\": {\n \"update\": {\n \"request\": - {\n \"$ref\": \"Channel\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"path\": \"youtube/v3/channels\",\n - \ \"id\": \"youtube.channels.update\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/channels\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Channel\"\n - \ }\n },\n \"list\": {\n \"parameters\": {\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"minimum\": - \"0\",\n \"default\": \"5\",\n \"maximum\": \"50\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"location\": \"query\"\n },\n \"forUsername\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channel associated with a YouTube - username.\"\n },\n \"id\": {\n \"description\": - \"Return the channels with the specified IDs.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mySubscribers\": - {\n \"location\": \"query\",\n \"description\": - \"Return the channels subscribed to the authenticated user\",\n \"type\": - \"boolean\"\n },\n \"managedByMe\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the channels managed - by the authenticated user.\",\n \"location\": \"query\"\n },\n - \ \"categoryId\": {\n \"description\": \"Return the - channels within the specified guide category ID.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Return the ids of channels owned by the authenticated - user.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"hl\": - {\n \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/channels\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"httpMethod\": - \"GET\",\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"id\": \"youtube.channels.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"path\": \"youtube/v3/channels\"\n }\n }\n - \ },\n \"videoCategories\": {\n \"methods\": {\n \"list\": - {\n \"id\": \"youtube.videoCategories.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"regionCode\": {\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"hl\": {\n \"default\": \"en-US\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Returns - the video categories with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true\n },\n \"part\": {\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the videoCategory - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"flatPath\": - \"youtube/v3/videoCategories\",\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"I18nRegionListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.i18nRegions.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the i18nRegion resource properties that the API response - will include. Set the parameter value to snippet.\"\n },\n \"hl\": - {\n \"default\": \"en_US\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/i18nRegions\",\n \"path\": \"youtube/v3/i18nRegions\"\n - \ }\n }\n },\n \"captions\": {\n \"methods\": {\n \"download\": - {\n \"path\": \"youtube/v3/captions/{id}\",\n \"useMediaDownloadService\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Downloads a caption track.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"location\": \"path\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The ID of the caption track to download, required for One Platform.\"\n - \ },\n \"tfmt\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Convert - the captions into this format. Supported options are sbv, srt, and vtt.\"\n - \ },\n \"tlang\": {\n \"description\": \"tlang - is the language code; machine translate the captions into this language.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is be on behalf of\",\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/captions/{id}\",\n - \ \"supportsMediaDownload\": true,\n \"id\": \"youtube.captions.download\"\n - \ },\n \"list\": {\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n - \ \"required\": true,\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"videoId\": {\n \"description\": - \"Returns the captions for the specified video.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"description\": \"Returns the captions with the given IDs for - Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\"\n - \ }\n },\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/captions\",\n \"response\": {\n \"$ref\": - \"CaptionListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"id\": \"youtube.captions.list\",\n \"flatPath\": - \"youtube/v3/captions\"\n },\n \"insert\": {\n \"path\": - \"youtube/v3/captions\",\n \"mediaUpload\": {\n \"protocols\": - {\n \"resumable\": {\n \"multipart\": true,\n - \ \"path\": \"/resumable/upload/youtube/v3/captions\"\n },\n - \ \"simple\": {\n \"path\": \"/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\"\n - \ },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOf\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is be on behalf of\"\n - \ },\n \"part\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - caption resource parts that the API response will include. Set the parameter - value to snippet.\"\n },\n \"sync\": {\n \"location\": - \"query\",\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\",\n \"type\": - \"boolean\"\n }\n },\n \"id\": \"youtube.captions.insert\",\n - \ \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ },\n \"delete\": {\n \"id\": \"youtube.captions.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/captions\",\n \"description\": \"Deletes a resource.\",\n - \ \"path\": \"youtube/v3/captions\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is be on behalf of\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ }\n }\n },\n \"update\": {\n \"supportsMediaUpload\": - true,\n \"flatPath\": \"youtube/v3/captions\",\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"104857600\",\n - \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ]\n },\n \"id\": \"youtube.captions.update\",\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n },\n \"onBehalfOf\": - {\n \"type\": \"string\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"sync\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\"\n }\n },\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/captions\"\n }\n }\n - \ },\n \"thumbnails\": {\n \"methods\": {\n \"set\": {\n - \ \"path\": \"youtube/v3/thumbnails/set\",\n \"response\": - {\n \"$ref\": \"ThumbnailSetResponse\"\n },\n \"httpMethod\": - \"POST\",\n \"mediaUpload\": {\n \"maxSize\": \"2097152\",\n - \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ }\n }\n },\n \"parameterOrder\": - [\n \"videoId\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/thumbnails/set\",\n \"id\": - \"youtube.thumbnails.set\",\n \"description\": \"As this is not an - insert in a strict sense (it supports uploading/setting of a thumbnail for - multiple videos, which doesn't result in creation of a single resource), I - use a custom verb here.\",\n \"supportsMediaUpload\": true,\n \"parameters\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Returns the Thumbnail with the given video IDs for Stubby or Apiary.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n }\n - \ }\n }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"delete\": {\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"id\": \"youtube.liveChatModerators.delete\",\n - \ \"description\": \"Deletes a chat moderator.\",\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"list\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for which moderators - should be returned.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the liveChatModerator resource parts that - the API response will include. Supported values are id and snippet.\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"id\": \"youtube.liveChatModerators.list\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ]\n },\n - \ \"insert\": {\n \"description\": \"Inserts a new resource - into this collection.\",\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"request\": - {\n \"$ref\": \"LiveChatModerator\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the superChatEvent - resource parts that the API response will include. This parameter is currently - not supported.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"hl\": - {\n \"description\": \"Return rendered funding amounts in specified - language.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"minimum\": \"1\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"type\": \"integer\",\n \"default\": - \"5\"\n }\n },\n \"response\": {\n \"$ref\": - \"SuperChatEventListResponse\"\n },\n \"id\": \"youtube.superChatEvents.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"path\": - \"youtube/v3/superChatEvents\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ]\n }\n }\n },\n \"liveChatMessages\": {\n \"methods\": - {\n \"delete\": {\n \"description\": \"Deletes a chat message.\",\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"id\": \"youtube.liveChatMessages.delete\",\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"description\": \"Inserts a - new resource into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\",\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"request\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ }\n },\n \"id\": \"youtube.liveChatMessages.insert\"\n - \ },\n \"list\": {\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"id\": \"youtube.liveChatMessages.list\",\n \"parameters\": - {\n \"profileImageSize\": {\n \"location\": \"query\",\n - \ \"description\": \"Specifies the size of the profile image that - should be returned for each user.\",\n \"maximum\": \"720\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"minimum\": \"16\"\n },\n \"maxResults\": - {\n \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"default\": - \"500\",\n \"location\": \"query\",\n \"minimum\": - \"200\",\n \"maximum\": \"2000\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the liveChatComment resource parts that the - API response will include. Supported values are id and snippet.\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"liveChatId\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The id of the live chat for which comments - should be returned.\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"description\": \"Specifies the localization language - in which the system messages should be returned.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ]\n }\n }\n },\n \"watermarks\": - {\n \"methods\": {\n \"unset\": {\n \"description\": - \"Allows removal of channel watermark.\",\n \"id\": \"youtube.watermarks.unset\",\n - \ \"flatPath\": \"youtube/v3/watermarks/unset\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"parameterOrder\": - [\n \"channelId\"\n ],\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"set\": {\n \"path\": \"youtube/v3/watermarks/set\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n - \ \"description\": \"Allows upload of watermark image and setting - it for a channel.\",\n \"id\": \"youtube.watermarks.set\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"flatPath\": - \"youtube/v3/watermarks/set\",\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"request\": {\n \"$ref\": \"InvideoBranding\"\n - \ },\n \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\",\n \"protocols\": - {\n \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/watermarks/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n }\n }\n }\n }\n }\n },\n - \ \"videoAbuseReportReasons\": {\n \"methods\": {\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"flatPath\": \"youtube/v3/videoAbuseReportReasons\",\n \"response\": - {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"default\": - \"en-US\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the videoCategory resource parts that the API response will include. Supported - values are id and snippet.\",\n \"repeated\": true\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ]\n - \ }\n }\n },\n \"thirdPartyLinks\": {\n \"methods\": - {\n \"insert\": {\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\",\n \"repeated\": true\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Inserts - a new resource into this collection.\",\n \"id\": \"youtube.thirdPartyLinks.insert\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\"\n },\n \"update\": {\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"id\": \"youtube.thirdPartyLinks.update\",\n - \ \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"PUT\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the thirdPartyLink resource parts that the API request - and response will include. Supported values are linkingToken, status, and - snippet.\"\n },\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n },\n - \ \"delete\": {\n \"parameters\": {\n \"type\": - {\n \"description\": \"Type of the link to be deleted.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"enum\": [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ]\n },\n - \ \"part\": {\n \"repeated\": true,\n \"description\": - \"Do not use. Required for compatibility.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"linkingToken\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Delete - the partner links with the given linking token.\"\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n }\n },\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"DELETE\",\n \"description\": \"Deletes - a resource.\",\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ],\n \"id\": \"youtube.thirdPartyLinks.delete\",\n - \ \"flatPath\": \"youtube/v3/thirdPartyLinks\"\n },\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"description\": \"Get a third party link of the given type.\"\n - \ },\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Get - a third party link with the given linking token.\"\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API response will include. Supported - values are linkingToken, status, and snippet.\",\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"id\": \"youtube.thirdPartyLinks.list\"\n }\n - \ }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"parameterOrder\": - [],\n \"description\": \"Updates an existing resource.\",\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n - \ },\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"id\": \"youtube.youtube.v3.updateCommentThreads\"\n }\n - \ }\n }\n }\n },\n \"playlists\": {\n \"methods\": - {\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.playlists.delete\",\n - \ \"path\": \"youtube/v3/playlists\"\n },\n \"insert\": - {\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.playlists.insert\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n }\n },\n \"path\": - \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"flatPath\": - \"youtube/v3/playlists\"\n },\n \"update\": {\n \"description\": - \"Updates an existing resource.\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.playlists.update\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"list\": {\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"hl\": {\n \"location\": \"query\",\n \"description\": - \"Return content in specified language\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Return - the playlists owned by the specified channel ID.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the playlists with the given IDs for Stubby or Apiary.\",\n \"repeated\": - true\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"required\": true,\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"mine\": {\n \"description\": - \"Return the playlists owned by the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"PlaylistListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.playlists.list\",\n - \ \"flatPath\": \"youtube/v3/playlists\"\n }\n }\n },\n - \ \"activities\": {\n \"methods\": {\n \"list\": {\n \"path\": - \"youtube/v3/activities\",\n \"httpMethod\": \"GET\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.activities.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/activities\",\n \"parameters\": {\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"required\": true\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"0\"\n },\n - \ \"publishedAfter\": {\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\",\n \"type\": \"string\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"home\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"publishedBefore\": {\n \"format\": - \"google-datetime\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ }\n }\n }\n }\n },\n \"search\": {\n - \ \"methods\": {\n \"list\": {\n \"parameters\": {\n \"location\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on location of the video\",\n \"location\": \"query\"\n },\n - \ \"forDeveloper\": {\n \"type\": \"boolean\",\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\",\n \"location\": \"query\"\n },\n - \ \"relatedToVideoId\": {\n \"type\": \"string\",\n - \ \"description\": \"Search related to a resource.\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on resources belonging to this channelId.\"\n },\n \"videoEmbeddable\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on embeddable videos.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ]\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"videoCategoryId\": - {\n \"description\": \"Filter on videos in a specific category.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"channelType\": {\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all channels.\",\n \"Only retrieve - shows.\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"description\": - \"Add a filter on the channel search.\"\n },\n \"regionCode\": - {\n \"description\": \"Display the content as seen by viewers - in this country.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"type\": \"string\",\n \"description\": - \"Filter on resources published after this date.\",\n \"location\": - \"query\"\n },\n \"videoSyndicated\": {\n \"location\": - \"query\",\n \"description\": \"Filter on syndicated videos.\",\n - \ \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"type\": \"string\"\n },\n \"videoDimension\": - {\n \"description\": \"Filter on 3d videos.\",\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"2d\",\n \"3d\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"order\": - {\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"default\": \"relevance\",\n \"description\": - \"Sort order of the results.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"forMine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Search for the private videos of the authenticated - user.\"\n },\n \"relevanceLanguage\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return results relevant to this language.\"\n },\n \"locationRadius\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on distance from the location (specified - above).\"\n },\n \"publishedBefore\": {\n \"location\": - \"query\",\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"description\": \"Filter on resources published - before this date.\"\n },\n \"videoDefinition\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ],\n \"description\": - \"Filter on the definition of the videos.\"\n },\n \"videoDuration\": - {\n \"description\": \"Filter on the duration of the videos.\",\n - \ \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"videoType\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ],\n \"description\": \"Filter on videos of a specific - type.\"\n },\n \"q\": {\n \"location\": - \"query\",\n \"description\": \"Textual search terms to match.\",\n - \ \"type\": \"string\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"Restrict - results to a particular set of resource types from One Platform.\"\n },\n - \ \"safeSearch\": {\n \"default\": \"moderate\",\n - \ \"description\": \"Indicates whether the search results should - include restricted content as well as standard content.\",\n \"location\": - \"query\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"YouTube will not filter the search result set.\",\n \"YouTube - will filter some content from search results and, at the least, will filter - content that is restricted in your locale. Based on their content, search - results could be removed from search results or demoted in search results. - This is the default parameter value.\",\n \"YouTube will try - to exclude all restricted content from the search result set. Based on their - content, search results could be removed from search results or demoted in - search results.\"\n ],\n \"type\": \"string\"\n - \ },\n \"videoLicense\": {\n \"description\": - \"Filter on the license of the videos.\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"location\": \"query\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"type\": \"string\"\n },\n \"topicId\": - {\n \"description\": \"Restrict results to a particular topic.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"eventType\": {\n \"enum\": [\n - \ \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on the livestream status of the videos.\",\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ]\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n },\n \"forContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"Search owned by a content owner.\",\n \"type\": \"boolean\"\n - \ },\n \"videoCaption\": {\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ]\n }\n },\n - \ \"flatPath\": \"youtube/v3/search\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of search resources\",\n \"path\": \"youtube/v3/search\",\n - \ \"httpMethod\": \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"id\": \"youtube.search.list\"\n }\n }\n - \ },\n \"comments\": {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/comments\",\n - \ \"id\": \"youtube.comments.list\",\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"CommentListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"parentId\": {\n \"description\": \"Returns replies - to the specified comment. Note, currently YouTube features only one level - of replies (ie replies to top level comments). However replies to replies - may be supported in the future.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Returns the comments with the given IDs - for One Platform.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"default\": \"20\",\n \"maximum\": \"100\",\n - \ \"minimum\": \"1\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"The *part* - parameter specifies a comma-separated list of one or more comment resource - properties that the API response will include.\",\n \"location\": - \"query\"\n },\n \"textFormat\": {\n \"description\": - \"The requested text format for the returned comments.\",\n \"type\": - \"string\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"location\": - \"query\",\n \"default\": \"html\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n }\n },\n \"delete\": {\n - \ \"id\": \"youtube.comments.delete\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/comments\"\n },\n \"markAsSpam\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"path\": \"youtube/v3/comments/markAsSpam\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.comments.markAsSpam\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"Flags the comments with the given IDs as - spam in the caller's opinion.\"\n }\n },\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\"\n - \ },\n \"update\": {\n \"id\": \"youtube.comments.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\",\n \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"path\": \"youtube/v3/comments\"\n },\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.comments.insert\",\n \"request\": {\n \"$ref\": - \"Comment\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"response\": {\n \"$ref\": \"Comment\"\n }\n - \ },\n \"setModerationStatus\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\",\n \"moderationStatus\"\n - \ ],\n \"parameters\": {\n \"moderationStatus\": - {\n \"required\": true,\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Specifies the requested moderation - status. Note, comments can be in statuses, which are not available through - this call. For example, this call does not allow to mark a comment as 'likely - spam'. Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"banAuthor\": - {\n \"type\": \"boolean\",\n \"description\": \"If - set to true the author of the comment gets added to the ban list. This means - all future comments of the author will autmomatically be rejected. Only valid - in combination with STATUS_REJECTED.\",\n \"location\": \"query\",\n - \ \"default\": \"false\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"description\": - \"Sets the moderation status of one or more comments.\",\n \"id\": - \"youtube.comments.setModerationStatus\",\n \"httpMethod\": \"POST\"\n - \ }\n }\n },\n \"liveBroadcasts\": {\n \"methods\": - {\n \"transition\": {\n \"description\": \"Transition a broadcast - to a given status.\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"broadcastStatus\": {\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ],\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"The status to which the broadcast - is going to transition.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ]\n },\n \"id\": {\n \"description\": - \"Broadcast to transition.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n }\n - \ },\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ]\n },\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Delete a given broadcast.\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.delete\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Broadcast - to delete.\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts\"\n },\n \"insert\": - {\n \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Inserts a new stream for the authenticated user.\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"httpMethod\": - \"POST\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"insertCuepoint\": {\n \"request\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Broadcast to insert ads to, or equivalently `external_video_id` for internal - use.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"description\": \"Insert cuepoints in a broadcast\",\n \"parameterOrder\": - [],\n \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/cuepoint\"\n },\n \"bind\": {\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveBroadcasts.bind\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"type\": \"string\"\n },\n - \ \"streamId\": {\n \"type\": \"string\",\n \"description\": - \"Stream to bind, if not set unbind the current one.\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"required\": - true,\n \"description\": \"Broadcast to bind to the stream\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"id\",\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Bind a broadcast to a stream.\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/bind\",\n \"path\": - \"youtube/v3/liveBroadcasts/bind\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n }\n },\n \"list\": {\n \"httpMethod\": - \"GET\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"parameters\": {\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"Return broadcasts with the given ids - from Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"required\": true,\n \"description\": - \"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, status - and statistics.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"broadcastType\": - {\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Return only broadcasts with the selected type.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"default\": \"event\",\n \"location\": - \"query\"\n },\n \"broadcastStatus\": {\n \"description\": - \"Return broadcasts with a certain status, e.g. active broadcasts.\",\n \"enum\": - [\n \"broadcastStatusFilterUnspecified\",\n \"all\",\n - \ \"active\",\n \"upcoming\",\n \"completed\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return current - live broadcasts.\",\n \"Return broadcasts that have not yet - started.\",\n \"Return broadcasts that have already ended.\"\n - \ ]\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"format\": - \"uint32\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"LiveBroadcastListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieve the list of broadcasts - associated with the given channel.\",\n \"id\": \"youtube.liveBroadcasts.list\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"update\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"id\": - \"youtube.liveBroadcasts.update\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Updates an existing broadcast for the authenticated - user.\",\n \"httpMethod\": \"PUT\",\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n }\n }\n }\n },\n \"liveStreams\": - {\n \"methods\": {\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"description\": - \"Deletes an existing stream for the authenticated user.\",\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveStreams.delete\"\n },\n - \ \"insert\": {\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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, content_details, and status.\",\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"request\": {\n \"$ref\": - \"LiveStream\"\n },\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"path\": \"youtube/v3/liveStreams\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new stream for the authenticated - user.\"\n },\n \"list\": {\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"description\": \"Retrieve - the list of streams associated with the given channel. --\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.liveStreams.list\",\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"path\": - \"youtube/v3/liveStreams\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"maximum\": - \"50\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"repeated\": true,\n \"required\": - true\n },\n \"id\": {\n \"location\": \"query\",\n - \ \"description\": \"Return LiveStreams with the given ids from - Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": - \"string\"\n }\n }\n },\n \"update\": {\n - \ \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"id\": \"youtube.liveStreams.update\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\"\n }\n - \ }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"flatPath\": \"youtube/v3/tests\",\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.tests.insert\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"request\": {\n \"$ref\": \"TestItem\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"POST method.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/tests\"\n - \ }\n }\n },\n \"subscriptions\": {\n \"methods\": {\n - \ \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.subscriptions.delete\",\n \"path\": - \"youtube/v3/subscriptions\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\"\n },\n \"insert\": {\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"repeated\": - true\n }\n },\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"request\": - {\n \"$ref\": \"Subscription\"\n }\n },\n \"list\": - {\n \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"SubscriptionListResponse\"\n },\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"mine\": {\n \"description\": \"Flag for returning - the subscriptions of the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions of the given channel owner.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"minimum\": - \"0\",\n \"type\": \"integer\",\n \"default\": \"5\",\n - \ \"format\": \"uint32\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions with the given IDs - for Stubby or Apiary.\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"forChannelId\": {\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"order\": {\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"location\": \"query\",\n \"default\": \"relevance\",\n - \ \"description\": \"The order of the returned subscriptions\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ]\n },\n \"mySubscribers\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Return the subscribers of the given channel owner.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"myRecentSubscribers\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n - \ },\n \"path\": \"youtube/v3/subscriptions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.subscriptions.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n }\n }\n - \ },\n \"liveChatBans\": {\n \"methods\": {\n \"delete\": - {\n \"id\": \"youtube.liveChatBans.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"httpMethod\": \"DELETE\",\n - \ \"description\": \"Deletes a chat ban.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"flatPath\": \"youtube/v3/liveChat/bans\"\n },\n \"insert\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"id\": - \"youtube.liveChatBans.insert\",\n \"description\": \"Inserts a new - resource into this collection.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveChatBan\"\n - \ }\n }\n }\n },\n \"i18nLanguages\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"parameters\": - {\n \"hl\": {\n \"location\": \"query\",\n \"default\": - \"en_US\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the i18nLanguage resource properties that the API - response will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.i18nLanguages.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/i18nLanguages\",\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"videos\": {\n \"methods\": - {\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n - \ \"required\": true,\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"stabilize\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Should stabilize be applied to the upload.\"\n - \ },\n \"notifySubscribers\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"default\": - \"true\",\n \"description\": \"Notify the channel subscribers - about the new video. As default, the notification is enabled.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"autoLevels\": {\n \"type\": - \"boolean\",\n \"description\": \"Should auto-levels be applied - to the upload.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"mediaUpload\": {\n \"accept\": [\n \"video/*\",\n - \ \"application/octet-stream\"\n ],\n \"maxSize\": - \"274877906944\",\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/videos\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ }\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"path\": \"youtube/v3/videos\",\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.insert\",\n \"response\": {\n - \ \"$ref\": \"Video\"\n },\n \"supportsMediaUpload\": - true\n },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"id\": - \"youtube.videos.delete\",\n \"description\": \"Deletes a resource.\",\n - \ \"path\": \"youtube/v3/videos\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"httpMethod\": \"DELETE\"\n },\n - \ \"rate\": {\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Adds a like or dislike rating to - a video or removes a rating from a video.\",\n \"parameterOrder\": - [\n \"id\",\n \"rating\"\n ],\n \"httpMethod\": - \"POST\",\n \"path\": \"youtube/v3/videos/rate\",\n \"id\": - \"youtube.videos.rate\",\n \"parameters\": {\n \"rating\": - {\n \"location\": \"query\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"required\": true\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n }\n },\n \"getRating\": {\n \"description\": - \"Retrieves the ratings that the authorized user gave to a list of specified - videos.\",\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"youtube.videos.getRating\",\n \"flatPath\": - \"youtube/v3/videos/getRating\",\n \"response\": {\n \"$ref\": - \"VideoGetRatingResponse\"\n },\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"update\": {\n \"id\": \"youtube.videos.update\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"flatPath\": - \"youtube/v3/videos\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos\",\n \"request\": {\n \"$ref\": - \"Video\"\n },\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n }\n - \ }\n },\n \"reportAbuse\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/videos/reportAbuse\",\n \"parameterOrder\": - [],\n \"description\": \"Report abuse for a video.\",\n \"id\": - \"youtube.videos.reportAbuse\"\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/videos\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.list\",\n \"response\": {\n \"$ref\": - \"VideoListResponse\"\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"maxResults\": {\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"minimum\": - \"1\",\n \"description\": \"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.\",\n - \ \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"maximum\": \"50\"\n },\n \"maxWidth\": - {\n \"description\": \"Return the player with maximum height - specified in\",\n \"maximum\": \"8192\",\n \"minimum\": - \"72\",\n \"format\": \"int32\",\n \"type\": \"integer\",\n - \ \"location\": \"query\"\n },\n \"chart\": - {\n \"type\": \"string\",\n \"description\": \"Return - the videos that are in the specified chart.\",\n \"enum\": [\n - \ \"chartUnspecified\",\n \"mostPopular\"\n ],\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ]\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Stands - for \\\"host language\\\". Specifies the localization language of the metadata - to be filled into snippet.localized. The field is filled with the default - metadata if there is no localization in the specified language. The parameter - value must be a language code included in the list returned by the i18nLanguages.list - method (e.g. en_US, es_MX).\"\n },\n \"myRating\": {\n - \ \"description\": \"Return videos liked/disliked by the authenticated - user. Does not support RateType.RATED_TYPE_NONE.\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Use a chart that is specific to the specified region\"\n },\n - \ \"locale\": {\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"videoCategoryId\": - {\n \"description\": \"Use chart that is specific to the specified - video category\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"default\": \"0\"\n },\n \"maxHeight\": - {\n \"type\": \"integer\",\n \"format\": \"int32\",\n - \ \"minimum\": \"72\",\n \"maximum\": \"8192\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Return videos with the given ids.\",\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n - \ \"required\": true\n },\n \"pageToken\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"httpMethod\": - \"GET\"\n }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the membershipsLevel resource parts that - the API response will include. Supported values are id and snippet.\",\n \"type\": - \"string\",\n \"repeated\": true\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"description\": \"Retrieves a list of all pricing levels offered - by a creator to the fans.\"\n }\n }\n },\n \"abuseReports\": - {\n \"methods\": {\n \"insert\": {\n \"flatPath\": \"youtube/v3/abuseReports\",\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"description\": \"Inserts - a new resource into this collection.\",\n \"request\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"httpMethod\": \"POST\",\n \"path\": - \"youtube/v3/abuseReports\",\n \"id\": \"youtube.abuseReports.insert\"\n - \ }\n }\n },\n \"playlistItems\": {\n \"methods\": {\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"response\": {\n \"$ref\": \"PlaylistItemListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the playlist items within the given - playlist.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the playlist items associated with the given video ID.\"\n },\n - \ \"maxResults\": {\n \"default\": \"5\",\n \"location\": - \"query\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"minimum\": \"0\",\n \"maximum\": \"50\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n }\n },\n - \ \"id\": \"youtube.playlistItems.list\",\n \"path\": \"youtube/v3/playlistItems\"\n - \ },\n \"insert\": {\n \"id\": \"youtube.playlistItems.insert\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n }\n - \ },\n \"update\": {\n \"id\": \"youtube.playlistItems.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Updates - an existing resource.\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"httpMethod\": \"PUT\"\n },\n - \ \"delete\": {\n \"description\": \"Deletes a resource.\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/playlistItems\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.delete\"\n - \ }\n }\n }\n },\n \"schemas\": {\n \"ActivityContentDetailsPlaylistItem\": - {\n \"description\": \"Information about a new playlist item.\",\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"properties\": - {\n \"playlistItemId\": {\n \"description\": \"ID of the item - within the playlist.\",\n \"type\": \"string\"\n },\n \"playlistId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information about the resource that was added to the playlist.\"\n - \ }\n }\n },\n \"ChannelBrandingSettings\": {\n \"description\": - \"Branding properties of a YouTube channel.\",\n \"id\": \"ChannelBrandingSettings\",\n - \ \"properties\": {\n \"image\": {\n \"$ref\": \"ImageSettings\",\n - \ \"description\": \"Branding properties for branding images.\"\n - \ },\n \"hints\": {\n \"items\": {\n \"$ref\": - \"PropertyValue\"\n },\n \"description\": \"Additional experimental - branding properties.\",\n \"type\": \"array\"\n },\n \"channel\": - {\n \"description\": \"Branding properties for the channel view.\",\n - \ \"$ref\": \"ChannelSettings\"\n },\n \"watch\": {\n - \ \"description\": \"Branding properties for the watch page.\",\n - \ \"$ref\": \"WatchSettings\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelProfileDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"ChannelProfileDetails\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveChatBan\": {\n \"id\": \"LiveChatBan\",\n - \ \"description\": \"A `__liveChatBan__` resource represents a ban for - a YouTube live chat.\",\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"description\": \"The `snippet` object contains basic details - about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#liveChatBan\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelBannerResource\": {\n \"id\": \"ChannelBannerResource\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelBannerResource\\\".\",\n \"default\": - \"youtube#channelBannerResource\"\n },\n \"etag\": {\n \"type\": - \"string\"\n },\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL of this banner image.\"\n }\n - \ },\n \"description\": \"A channel banner returned as the response - to a channel_banner.insert call.\",\n \"type\": \"object\"\n },\n - \ \"Cuepoint\": {\n \"properties\": {\n \"cueType\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ]\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The identifier for cuepoint resource.\"\n - \ },\n \"etag\": {\n \"type\": \"string\"\n },\n - \ \"walltimeMs\": {\n \"description\": \"The wall clock time - at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"durationSecs\": {\n - \ \"description\": \"The duration of this cuepoint.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"insertionOffsetTimeMs\": - {\n \"type\": \"string\",\n \"format\": \"int64\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\"\n }\n },\n \"description\": \"Note that - there may be a 5-second end-point resolution issue. For instance, if a cuepoint - comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 or 22:03:30, - depending. This is an artifact of HLS.\",\n \"type\": \"object\",\n \"id\": - \"Cuepoint\"\n },\n \"Member\": {\n \"id\": \"Member\",\n \"description\": - \"A *member* resource represents a member for a YouTube channel. A member - provides recurring monetary support to a creator and receives special benefits.\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the member.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#member\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#member\\\".\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoStatistics\": {\n \"id\": - \"VideoStatistics\",\n \"properties\": {\n \"viewCount\": {\n - \ \"description\": \"The number of times the video has been viewed.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"commentCount\": {\n \"description\": \"The number of comments - for the video.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"dislikeCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of users who have indicated that they disliked the video by giving - it a negative rating.\"\n },\n \"likeCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of users who have indicated - that they liked the video by giving it a positive rating.\",\n \"format\": - \"uint64\"\n },\n \"favoriteCount\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Statistics - about the video, such as the number of times the video was viewed or liked.\"\n - \ },\n \"SubscriptionSnippet\": {\n \"properties\": {\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the subscription - belongs to.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The subscription's - title.\"\n },\n \"description\": {\n \"description\": - \"The subscription's details.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the subscriber's channel.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The id object contains information about the - channel that the user subscribed to.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.subscriptions.insert\"\n ]\n }\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the subscription was created.\",\n - \ \"format\": \"date-time\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about a subscription, - including title, description and thumbnails of the subscribed item.\",\n \"id\": - \"SubscriptionSnippet\"\n },\n \"PlaylistLocalization\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistLocalization\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The localized strings - for playlist's title.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for playlist's description.\"\n }\n },\n \"description\": - \"Playlist localization setting\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource associated with a bulletin post. - @mutable youtube.activities.insert\"\n }\n },\n \"id\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"Details about a channel bulletin post.\",\n \"type\": - \"object\"\n },\n \"LiveStreamStatus\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"streamStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ]\n },\n - \ \"healthStatus\": {\n \"$ref\": \"LiveStreamHealthStatus\",\n - \ \"description\": \"The health status of the stream.\"\n }\n - \ },\n \"description\": \"Brief description of the live stream status.\",\n - \ \"id\": \"LiveStreamStatus\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"description\": \"Details about a resource which was added to a - channel.\",\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"LiveBroadcastContentDetails\": {\n \"description\": - \"Detailed settings of a broadcast.\",\n \"id\": \"LiveBroadcastContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"monitorStream\": - {\n \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\",\n \"$ref\": - \"MonitorStreamInfo\"\n },\n \"enableClosedCaptions\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - HTTP POST closed captioning is enabled for this broadcast. The ingestion URL - of the closed captions is returned through the liveStreams API. This is mutually - exclusive with using the closed_captions_type property, and is equivalent - to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n - \ \"mesh\": {\n \"format\": \"byte\",\n \"description\": - \"The mesh for projecting the video if projection is mesh. The mesh value - must be a UTF-8 string containing the base-64 encoding of 3D mesh data that - follows the Spherical Video V2 RFC specification for an mshp box, excluding - the box size and type but including the following four reserved zero bytes - for the version and flags.\",\n \"type\": \"string\"\n },\n - \ \"enableContentEncryption\": {\n \"description\": \"This - setting indicates whether YouTube should enable content encryption for the - broadcast.\",\n \"type\": \"boolean\"\n },\n \"enableEmbed\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast video can be played in an embedded player. - If you choose to archive the video (using the enableArchive property), this - setting will also apply to the archived video.\"\n },\n \"stereoLayout\": - {\n \"description\": \"The 3D stereo layout of this broadcast. This - defaults to mono.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ],\n \"type\": \"string\"\n - \ },\n \"enableDvr\": {\n \"type\": \"boolean\",\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\"\n },\n \"boundStreamId\": - {\n \"type\": \"string\",\n \"description\": \"This value - uniquely identifies the live stream bound to the broadcast.\"\n },\n - \ \"enableAutoStop\": {\n \"description\": \"This setting indicates - whether auto stop is enabled for this broadcast. The default value for this - property is false. This setting can only be used by Events.\",\n \"type\": - \"boolean\"\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the live stream referenced by boundStreamId was last - updated.\"\n },\n \"closedCaptionsType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n - \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n - \ \"closedCaptionsEmbedded\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"startWithSlate\": {\n \"description\": - \"This setting indicates whether the broadcast should automatically begin - with an in-stream slate when you update the broadcast's status to live. After - updating the status, you then need to send a liveCuepoints.insert request - that sets the cuepoint's eventState to end to remove the in-stream slate and - make your broadcast stream visible to viewers.\",\n \"type\": \"boolean\"\n - \ },\n \"latencyPreference\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Best for: - highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"description\": \"If both this and - enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ]\n },\n \"projection\": {\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"enableAutoStart\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"recordFromStart\": {\n \"type\": \"boolean\",\n \"description\": - \"Automatically start recording after the event goes live. The default value - for this property is true. *Important:* You must also set the enableDvr property's - value to true if you want the playback to be available immediately after the - broadcast ends. If you set this property's value to true but do not also set - the enableDvr property to true, there may be a delay of around one day before - the archived video will be available for playback.\"\n },\n \"enableLowLatency\": - {\n \"description\": \"Indicates whether this broadcast has low latency - enabled.\",\n \"type\": \"boolean\"\n }\n }\n },\n - \ \"VideoFileDetailsAudioStream\": {\n \"type\": \"object\",\n \"id\": - \"VideoFileDetailsAudioStream\",\n \"description\": \"Information about - an audio stream.\",\n \"properties\": {\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"channelCount\": {\n \"description\": \"The number of audio - channels that the stream contains.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"codec\": {\n \"description\": - \"The audio codec that the stream uses.\",\n \"type\": \"string\"\n - \ },\n \"bitrateBps\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The audio stream's bitrate, in bits - per second.\"\n }\n }\n },\n \"Subscription\": {\n \"id\": - \"Subscription\",\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\",\n \"type\": - \"string\"\n },\n \"subscriberSnippet\": {\n \"$ref\": - \"SubscriptionSubscriberSnippet\",\n \"description\": \"The subscriberSnippet - object contains basic details about the subscriber.\"\n },\n \"snippet\": - {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains basic statistics about the subscription.\",\n - \ \"$ref\": \"SubscriptionContentDetails\"\n },\n \"kind\": - {\n \"default\": \"youtube#subscription\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A *subscription* resource contains information about a YouTube user subscription. - A subscription notifies a user when new videos are added to a channel or when - another user takes one of several actions on YouTube, such as uploading a - video, rating a video, or commenting on a video.\",\n \"type\": \"object\"\n - \ },\n \"MonitorStreamInfo\": {\n \"type\": \"object\",\n \"description\": - \"Settings and Info of the monitor stream\",\n \"properties\": {\n \"broadcastStreamDelayMs\": - {\n \"description\": \"If you have set the enableMonitorStream property - to true, then this property determines the length of the live broadcast delay.\",\n - \ \"format\": \"uint32\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"integer\"\n },\n \"enableMonitorStream\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"boolean\",\n \"description\": - \"This value determines whether the monitor stream is enabled for the broadcast. - If the monitor stream is enabled, then YouTube will broadcast the event content - on a special stream intended only for the broadcaster's consumption. The broadcaster - can use the stream to review the event content and also to identify the optimal - times to insert cuepoints. You need to set this value to true if you intend - to have a broadcast delay for your event. *Note:* This property cannot be - updated once the broadcast is in the testing or live state.\"\n },\n - \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"HTML code that embeds a player that plays the monitor stream.\"\n }\n - \ },\n \"id\": \"MonitorStreamInfo\"\n },\n \"PlaylistItemContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"startAt\": - {\n \"description\": \"The time, measured in seconds from the start - of the video, when the video should start playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) The default value is 0.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify a video. To retrieve the video - resource, set the id query parameter to this value in your API request.\",\n - \ \"type\": \"string\"\n },\n \"videoPublishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the video was published - to YouTube.\"\n },\n \"endAt\": {\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should stop playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) By default, assume that the video.endTime is the end of the video.\",\n - \ \"type\": \"string\"\n },\n \"note\": {\n \"description\": - \"A user-generated note for this item.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"PlaylistItemContentDetails\"\n },\n - \ \"CommentThreadSnippet\": {\n \"description\": \"Basic details about - a comment thread.\",\n \"id\": \"CommentThreadSnippet\",\n \"type\": - \"object\",\n \"properties\": {\n \"canReply\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n \"videoId\": {\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"totalReplyCount\": {\n \"description\": - \"The total number of replies (not including the top level comment).\",\n - \ \"type\": \"integer\",\n \"format\": \"uint32\"\n },\n - \ \"isPublic\": {\n \"description\": \"Whether the thread (and - therefore all its comments) is visible to all YouTube users.\",\n \"type\": - \"boolean\"\n },\n \"topLevelComment\": {\n \"$ref\": - \"Comment\",\n \"description\": \"The top level comment of this thread.\"\n - \ }\n }\n },\n \"LiveChatMemberMilestoneChatDetails\": {\n - \ \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"properties\": - {\n \"memberMonth\": {\n \"format\": \"uint32\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"type\": \"integer\"\n - \ },\n \"userComment\": {\n \"description\": \"The comment - added by the member to this Member Milestone Chat. This field is empty for - messages without a comment from the member.\",\n \"type\": \"string\"\n - \ },\n \"memberLevelName\": {\n \"description\": \"The - name of the Level at which the viever is a member. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"GeoPoint\": {\n \"description\": \"Geographical - coordinates of a point, in WGS84.\",\n \"type\": \"object\",\n \"properties\": - {\n \"altitude\": {\n \"description\": \"Altitude above the - reference ellipsoid, in meters.\",\n \"format\": \"double\",\n \"type\": - \"number\"\n },\n \"latitude\": {\n \"type\": \"number\",\n - \ \"description\": \"Latitude in degrees.\",\n \"format\": - \"double\"\n },\n \"longitude\": {\n \"type\": \"number\",\n - \ \"description\": \"Longitude in degrees.\",\n \"format\": - \"double\"\n }\n },\n \"id\": \"GeoPoint\"\n },\n \"CommentThreadListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#commentThreadListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"CommentThread\"\n },\n \"description\": \"A list of comment - threads that match the request criteria.\",\n \"type\": \"array\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"id\": \"CommentThreadListResponse\"\n },\n - \ \"CaptionSnippet\": {\n \"properties\": {\n \"status\": {\n - \ \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ],\n \"description\": \"The caption - track's status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"isAutoSynced\": {\n \"type\": \"boolean\",\n - \ \"description\": \"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.\"\n },\n \"failureReason\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ],\n \"description\": \"The reason that YouTube failed - to process the caption track. This property is only present if the state property's - value is failed.\"\n },\n \"trackKind\": {\n \"description\": - \"The caption track's type.\",\n \"type\": \"string\",\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"isDraft\": {\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the video associated with the caption track. @mutable - youtube.captions.insert\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"audioTrackType\": {\n - \ \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of audio track associated - with the caption track.\",\n \"type\": \"string\"\n },\n \"lastUpdated\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the caption track was - last updated.\"\n },\n \"name\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The name of the caption track. The name is intended to be visible to the - user as an option during playback.\"\n },\n \"isCC\": {\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\",\n \"type\": \"boolean\"\n - \ },\n \"language\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The language of - the caption track. The property value is a BCP-47 language tag.\"\n },\n - \ \"isLarge\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\"\n },\n \"isEasyReader\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n }\n },\n - \ \"description\": \"Basic details about a caption track, such as its - language and name.\",\n \"id\": \"CaptionSnippet\",\n \"type\": - \"object\"\n },\n \"ChannelConversionPings\": {\n \"type\": \"object\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\",\n \"id\": - \"ChannelConversionPings\",\n \"properties\": {\n \"pings\": {\n - \ \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ },\n \"type\": \"array\",\n \"description\": \"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.\"\n }\n }\n },\n \"LevelDetails\": {\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The name that should be used when referring to this level.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LevelDetails\"\n },\n - \ \"CommentSnippet\": {\n \"type\": \"object\",\n \"id\": \"CommentSnippet\",\n - \ \"properties\": {\n \"canRate\": {\n \"description\": - \"Whether the current viewer can rate this comment.\",\n \"type\": - \"boolean\"\n },\n \"updatedAt\": {\n \"description\": - \"The date and time when the comment was last updated.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"parentId\": - {\n \"type\": \"string\",\n \"description\": \"The unique - id of the parent comment, only set for replies.\"\n },\n \"authorChannelUrl\": - {\n \"type\": \"string\",\n \"description\": \"Link to the - author's YouTube channel, if any.\"\n },\n \"likeCount\": {\n - \ \"description\": \"The total number of likes this comment has received.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"channelId\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"viewerRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"description\": \"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.\"\n },\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the video the comment refers to, if any.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the comment was originally published.\",\n \"format\": - \"date-time\"\n },\n \"textOriginal\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"textDisplay\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"authorProfileImageUrl\": - {\n \"description\": \"The URL for the avatar of the user who posted - the comment.\",\n \"type\": \"string\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"authorDisplayName\": - {\n \"description\": \"The name of the user who posted the comment.\",\n - \ \"type\": \"string\"\n },\n \"moderationStatus\": - {\n \"type\": \"string\",\n \"description\": \"The comment's - moderation status. Will not be set if the comments were requested through - the id filter.\",\n \"enumDescriptions\": [\n \"The comment - is available for public display.\",\n \"The comment is awaiting - review by a moderator.\",\n \"\",\n \"The comment is - unfit for display.\"\n ],\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ]\n }\n },\n \"description\": \"Basic details about - a comment, such as its author and text.\"\n },\n \"VideoMonetizationDetails\": - {\n \"type\": \"object\",\n \"id\": \"VideoMonetizationDetails\",\n - \ \"properties\": {\n \"access\": {\n \"description\": - \"The value of access indicates whether the video can be monetized or not.\",\n - \ \"$ref\": \"AccessPolicy\"\n }\n },\n \"description\": - \"Details about monetization of a YouTube Video.\"\n },\n \"MembershipsLevelSnippet\": - {\n \"type\": \"object\",\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"properties\": {\n \"levelDetails\": {\n \"description\": - \"Details about the pricing level.\",\n \"$ref\": \"LevelDetails\"\n - \ },\n \"creatorChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The id of the channel that's offering channel - memberships.\"\n }\n }\n },\n \"PlaylistItemStatus\": {\n - \ \"id\": \"PlaylistItemStatus\",\n \"type\": \"object\",\n \"description\": - \"Information about the playlist item's privacy status.\",\n \"properties\": - {\n \"privacyStatus\": {\n \"description\": \"This resource's - privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n }\n }\n },\n \"VideoSuggestionsTagSuggestion\": - {\n \"id\": \"VideoSuggestionsTagSuggestion\",\n \"type\": \"object\",\n - \ \"description\": \"A single tag suggestion with it's relevance information.\",\n - \ \"properties\": {\n \"categoryRestricts\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A set of video categories for which the tag is - relevant. You can use this information to display appropriate tag suggestions - based on the video category that the video uploader associates with the video. - By default, tag suggestions are relevant for all categories if there are no - restricts defined for the keyword.\"\n },\n \"tag\": {\n \"type\": - \"string\",\n \"description\": \"The keyword tag suggested for the - video.\"\n }\n }\n },\n \"PlaylistItemSnippet\": {\n \"id\": - \"PlaylistItemSnippet\",\n \"properties\": {\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the playlist - item belongs to.\",\n \"type\": \"string\"\n },\n \"videoOwnerChannelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel this video belongs to.\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the playlist item. 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.\"\n },\n - \ \"channelId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the user that added the item to the playlist.\",\n - \ \"type\": \"string\"\n },\n \"position\": {\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"resourceId\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"$ref\": \"ResourceId\",\n \"description\": \"The id object - contains information that can be used to uniquely identify the resource that - is included in the playlist as the playlist item.\"\n },\n \"playlistId\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify thGe playlist that the playlist item is in.\"\n - \ },\n \"videoOwnerChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel id for the channel this video belongs - to.\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the item was added to the playlist.\"\n },\n \"title\": - {\n \"description\": \"The item's title.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The item's description.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Basic details about a playlist, including - title, description and thumbnails. Basic details of a YouTube Playlist item - provided by the author. Next ID: 15\",\n \"type\": \"object\"\n },\n - \ \"I18nLanguageSnippet\": {\n \"type\": \"object\",\n \"id\": - \"I18nLanguageSnippet\",\n \"properties\": {\n \"name\": {\n \"type\": - \"string\",\n \"description\": \"The human-readable name of the language - in the language itself.\"\n },\n \"hl\": {\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - an i18n language, such as language code and human-readable name.\"\n },\n - \ \"MembershipsLevelListResponse\": {\n \"type\": \"object\",\n \"id\": - \"MembershipsLevelListResponse\",\n \"properties\": {\n \"items\": - {\n \"description\": \"A list of pricing levels offered by a creator - to the fans.\",\n \"type\": \"array\",\n \"items\": {\n - \ \"$ref\": \"MembershipsLevel\"\n }\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#membershipsLevelListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ }\n }\n },\n \"PageInfo\": {\n \"id\": \"PageInfo\",\n - \ \"type\": \"object\",\n \"description\": \"Paging details for lists - of resources, including total number of items available and number of resources - returned in a single page.\",\n \"properties\": {\n \"resultsPerPage\": - {\n \"type\": \"integer\",\n \"description\": \"The number - of results included in the API response.\",\n \"format\": \"int32\"\n - \ },\n \"totalResults\": {\n \"type\": \"integer\",\n - \ \"description\": \"The total number of results in the result set.\",\n - \ \"format\": \"int32\"\n }\n }\n },\n \"MembershipsDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"accessibleLevels\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"Ids of all levels - that the user has access to. This includes the currently active level and - all other levels that are included because of a higher purchase.\"\n },\n - \ \"membershipsDurationAtLevels\": {\n \"description\": \"Data - about memberships duration on particular pricing levels.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"MembershipsDurationAtLevel\"\n - \ }\n },\n \"highestAccessibleLevel\": {\n \"description\": - \"Id of the highest level that the user has access to at the moment.\",\n - \ \"type\": \"string\"\n },\n \"membershipsDuration\": - {\n \"$ref\": \"MembershipsDuration\",\n \"description\": - \"Data about memberships duration without taking into consideration pricing - levels.\"\n },\n \"highestAccessibleLevelDisplayName\": {\n - \ \"description\": \"Display name for the highest level that the user - has access to at the moment.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"MembershipsDetails\"\n },\n \"Playlist\": - {\n \"id\": \"Playlist\",\n \"properties\": {\n \"id\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n },\n \"player\": - {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": \"The - player object contains information that you would use to play the playlist - in an embedded player.\"\n },\n \"status\": {\n \"description\": - \"The status object contains status information for the playlist.\",\n \"$ref\": - \"PlaylistStatus\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistContentDetails\",\n \"description\": \"The contentDetails - object contains information like video count.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#playlist\\\".\",\n \"default\": - \"youtube#playlist\",\n \"type\": \"string\"\n },\n \"localizations\": - {\n \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"description\": \"Localizations for different languages\",\n - \ \"type\": \"object\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the playlist, such as its title and description.\",\n - \ \"$ref\": \"PlaylistSnippet\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A *playlist* resource represents a YouTube - playlist. A playlist is a collection of videos that can be viewed sequentially - and shared with other users. A playlist can contain up to 200 videos, and - YouTube does not limit the number of playlists that each user creates. By - default, playlists are publicly visible to other users, but playlists can - be public or private. YouTube also uses playlists to identify special collections - of videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods.\"\n },\n \"LiveChatFanFundingEventDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\",\n - \ \"properties\": {\n \"amountDisplayString\": {\n \"type\": - \"string\",\n \"description\": \"A rendered string that displays - the fund amount and currency to the user.\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the user to this fan funding event.\"\n },\n \"amountMicros\": - {\n \"format\": \"uint64\",\n \"description\": \"The amount - of the fund.\",\n \"type\": \"string\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the fund was made.\"\n }\n }\n },\n \"LanguageTag\": - {\n \"type\": \"object\",\n \"id\": \"LanguageTag\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n }\n - \ },\n \"SuperChatEventSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"amountMicros\": {\n \"format\": \"uint64\",\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\",\n \"type\": \"string\"\n },\n \"displayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the purchase amount and currency (e.g., \\\"$1.00\\\"). - The string is rendered for the given language.\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\"\n },\n \"isSuperStickerEvent\": - {\n \"description\": \"True if this event is a Super Sticker event.\",\n - \ \"type\": \"boolean\"\n },\n \"supporterDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"Details about the supporter.\"\n },\n \"commentText\": {\n - \ \"type\": \"string\",\n \"description\": \"The text contents - of the comment left by the user.\"\n },\n \"createdAt\": {\n - \ \"type\": \"string\",\n \"description\": \"The date and - time when the event occurred.\",\n \"format\": \"date-time\"\n },\n - \ \"channelId\": {\n \"description\": \"Channel id where the - event occurred.\",\n \"type\": \"string\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\"\n },\n \"messageType\": {\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n }\n },\n \"id\": \"SuperChatEventSnippet\"\n - \ },\n \"SubscriptionContentDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"SubscriptionContentDetails\",\n \"properties\": {\n \"newItemCount\": - {\n \"type\": \"integer\",\n \"description\": \"The number - of new items in the subscription since its content was last read.\",\n \"format\": - \"uint32\"\n },\n \"totalItemCount\": {\n \"type\": - \"integer\",\n \"description\": \"The approximate number of items - that the subscription points to.\",\n \"format\": \"uint32\"\n },\n - \ \"activityType\": {\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The type of activity this subscription is for - (only uploads, everything).\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Details about the content to witch a subscription - refers.\"\n },\n \"VideoContentDetailsRegionRestriction\": {\n \"type\": - \"object\",\n \"description\": \"DEPRECATED Region restriction of the - video.\",\n \"id\": \"VideoContentDetailsRegionRestriction\",\n \"properties\": - {\n \"blocked\": {\n \"description\": \"A list of region codes - that identify countries where the video is blocked. If this property is present - and a country is not listed in its value, then the video is viewable in that - country. If this property is present and contains an empty list, the video - is viewable in all countries.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"allowed\": - {\n \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n }\n - \ },\n \"ActivityContentDetailsUpload\": {\n \"properties\": {\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the uploaded video.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Information about the uploaded - video.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsUpload\"\n - \ },\n \"I18nLanguageListResponse\": {\n \"id\": \"I18nLanguageListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#i18nLanguageListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of supported i18n languages. In this map, - the i18n language ID is the map key, and its value is the corresponding i18nLanguage - resource.\",\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n - \ }\n }\n }\n },\n \"VideoFileDetails\": {\n \"description\": - \"Describes original video file properties, including technical details about - audio and video streams, but also metadata information like content length, - digitization time, or geotagging information.\",\n \"properties\": {\n - \ \"creationTime\": {\n \"description\": \"The date and time - when the uploaded video file was created. The value is specified in ISO 8601 - format. Currently, the following ISO 8601 formats are supported: - Date only: - YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \",\n \"type\": \"string\"\n },\n \"bitrateBps\": {\n - \ \"description\": \"The uploaded video file's combined (video and - audio) bitrate in bits per second.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"videoStreams\": {\n - \ \"type\": \"array\",\n \"description\": \"A list of video - streams contained in the uploaded video file. Each item in the list contains - detailed metadata about a video stream.\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n }\n },\n \"container\": - {\n \"type\": \"string\",\n \"description\": \"The uploaded - video file's container format.\"\n },\n \"fileType\": {\n \"type\": - \"string\",\n \"enum\": [\n \"video\",\n \"audio\",\n - \ \"image\",\n \"archive\",\n \"document\",\n - \ \"project\",\n \"other\"\n ],\n \"description\": - \"The uploaded file's type as detected by YouTube's video processing engine. - Currently, YouTube only processes video files, but this field is present whether - a video file or another type of file was uploaded.\",\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ]\n },\n \"fileSize\": {\n \"description\": - \"The uploaded file's size in bytes. This field is present whether a video - file or another type of file was uploaded.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"fileName\": {\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\",\n \"type\": \"string\"\n },\n - \ \"durationMs\": {\n \"description\": \"The length of the - uploaded video in milliseconds.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"audioStreams\": {\n \"description\": - \"A list of audio streams contained in the uploaded video file. Each item - in the list contains detailed metadata about an audio stream.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ }\n }\n },\n \"id\": \"VideoFileDetails\",\n \"type\": - \"object\"\n },\n \"InvideoBranding\": {\n \"description\": \"LINT.IfChange - Describes an invideo branding.\",\n \"properties\": {\n \"imageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The url of - the uploaded image. Only used in apiary to api communication.\"\n },\n - \ \"timing\": {\n \"$ref\": \"InvideoTiming\",\n \"description\": - \"The temporal position within the video where watermark will be displayed.\"\n - \ },\n \"position\": {\n \"description\": \"The spatial - position within the video where the branding watermark will be displayed.\",\n - \ \"$ref\": \"InvideoPosition\"\n },\n \"targetChannelId\": - {\n \"description\": \"The channel to which this branding links. - If not present it defaults to the current channel.\",\n \"type\": - \"string\"\n },\n \"imageBytes\": {\n \"description\": - \"The bytes the uploaded image. Only used in api to youtube communication.\",\n - \ \"type\": \"string\",\n \"format\": \"byte\"\n }\n - \ },\n \"id\": \"InvideoBranding\",\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsPromotedItem\": {\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"ctaType\": - {\n \"description\": \"The type of call-to-action, a message to the - user indicating action that can be taken.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ]\n },\n \"destinationUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should direct - the user to, if the user chooses to visit the advertiser's website.\"\n },\n - \ \"descriptionText\": {\n \"description\": \"The text description - to accompany the promoted item.\",\n \"type\": \"string\"\n },\n - \ \"forecastingUrl\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"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.\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the promoted video.\",\n \"type\": - \"string\"\n },\n \"adTag\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should fetch to request a - promoted item.\"\n },\n \"creativeViewUrl\": {\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\",\n \"type\": \"string\"\n },\n \"customCtaButtonText\": - {\n \"description\": \"The custom call-to-action button text. If - specified, it will override the default button text for the cta_type.\",\n - \ \"type\": \"string\"\n },\n \"clickTrackingUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user clicked through on this promoted item.\",\n \"type\": - \"string\"\n },\n \"impressionUrl\": {\n \"description\": - \"The list of impression URLs. The client should ping all of these URLs to - indicate that the user was shown this promoted item.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"description\": \"Details about a resource which - is being promoted.\"\n },\n \"MemberListResponse\": {\n \"properties\": - {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Member\"\n },\n - \ \"description\": \"A list of members that match the request criteria.\",\n - \ \"type\": \"array\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#memberListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"MemberListResponse\",\n \"type\": \"object\"\n - \ },\n \"TokenPagination\": {\n \"id\": \"TokenPagination\",\n \"properties\": - {},\n \"description\": \"Stub token pagination template to suppress results.\",\n - \ \"type\": \"object\"\n },\n \"VideoCategory\": {\n \"id\": - \"VideoCategory\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n - \ \"default\": \"youtube#videoCategory\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the video category.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A *videoCategory* resource identifies - a category that has been or could be associated with uploaded videos.\",\n - \ \"type\": \"object\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"id\": \"CommentSnippetAuthorChannelId\",\n \"type\": \"object\",\n - \ \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"ImageSettings\": {\n \"description\": - \"Branding properties for images associated with the channel.\",\n \"type\": - \"object\",\n \"properties\": {\n \"backgroundImageUrl\": {\n - \ \"description\": \"The URL for the background image shown on the - video watch page. The image should be 1200px by 615px, with a maximum file - size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerImageUrl\": {\n \"description\": \"Banner image. - Desktop size (1060x175).\",\n \"type\": \"string\"\n },\n - \ \"bannerMobileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. Mobile size (640x175).\"\n },\n \"bannerExternalUrl\": - {\n \"description\": \"This is generated when a ChannelBanner.Insert - request has succeeded for the given channel.\",\n \"type\": \"string\"\n - \ },\n \"bannerTvImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. TV size extra high resolution (2120x1192).\"\n - \ },\n \"trackingImageUrl\": {\n \"description\": \"The - URL for a 1px by 1px tracking pixel that can be used to collect statistics - for views of the channel or video pages.\",\n \"type\": \"string\"\n - \ },\n \"bannerTvMediumImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. TV size medium resolution (1280x720).\"\n - \ },\n \"bannerTabletLowImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Tablet size low resolution (1138x188).\"\n - \ },\n \"bannerTvHighImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. TV size high resolution (1920x1080).\"\n - \ },\n \"bannerMobileExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\"\n },\n \"bannerTabletExtraHdImageUrl\": {\n \"description\": - \"Banner image. Tablet size extra high resolution (2560x424).\",\n \"type\": - \"string\"\n },\n \"smallBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 640px - by 70px banner image that appears below the video player in the default view - of the video watch page. The URL for the image that appears above the top-left - corner of the video player. This is a 25-pixel-high image with a flexible - width that cannot exceed 170 pixels.\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size high resolution (2276x377).\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerTvLowImageUrl\": - {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"description\": \"Banner image. Mobile size low resolution (320x88).\",\n - \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerTabletImageUrl\": - {\n \"description\": \"Banner image. Tablet size (1707x283).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ImageSettings\"\n },\n \"VideoSnippet\": {\n \"properties\": - {\n \"localized\": {\n \"description\": \"Localized snippet - selected with the hl parameter. If no such localization exists, this field - is populated with the default snippet. (Read-only)\",\n \"$ref\": - \"VideoLocalization\"\n },\n \"title\": {\n \"description\": - \"The video's title. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"defaultAudioLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The default_audio_language - property specifies the language spoken in the video's default audio track.\"\n - \ },\n \"categoryId\": {\n \"description\": \"The YouTube - video category associated with the video.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the video - belongs to.\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the videos's default snippet.\",\n \"type\": \"string\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that the video - was uploaded to.\"\n },\n \"liveBroadcastContent\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ]\n },\n \"tags\": {\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A list of keyword tags associated with the video. Tags may contain spaces.\",\n - \ \"type\": \"array\"\n },\n \"description\": {\n \"description\": - \"The video's description. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the video was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"thumbnails\": {\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n }\n },\n \"description\": - \"Basic details about a video, including title, description, uploader, thumbnails - and category.\",\n \"type\": \"object\",\n \"id\": \"VideoSnippet\"\n - \ },\n \"LiveChatNewSponsorDetails\": {\n \"id\": \"LiveChatNewSponsorDetails\",\n - \ \"properties\": {\n \"isUpgrade\": {\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\",\n \"type\": - \"boolean\"\n },\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level that the viewer - just had joined. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"id\": \"LiveChatMembershipGiftingDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"giftMembershipsCount\": {\n \"format\": - \"int32\",\n \"description\": \"The number of gift memberships purchased - by the user.\",\n \"type\": \"integer\"\n },\n \"giftMembershipsLevelName\": - {\n \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"SuperChatEvent\": - {\n \"description\": \"A `__superChatEvent__` resource represents a Super - Chat purchase on a YouTube channel.\",\n \"id\": \"SuperChatEvent\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"SuperChatEventSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the Super Chat event.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#superChatEvent\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the Super Chat event.\"\n - \ }\n }\n },\n \"ChannelSectionListResponse\": {\n \"id\": - \"ChannelSectionListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#channelSectionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSectionListResponse\\\".\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"description\": \"A list of ChannelSections that - match the request criteria.\",\n \"type\": \"array\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"WatchSettings\": {\n \"type\": \"object\",\n \"properties\": - {\n \"backgroundColor\": {\n \"description\": \"The text color - for the video watch page's branded area.\",\n \"type\": \"string\"\n - \ },\n \"textColor\": {\n \"type\": \"string\",\n \"description\": - \"The background color for the video watch page's branded area.\"\n },\n - \ \"featuredPlaylistId\": {\n \"type\": \"string\",\n \"description\": - \"An ID that uniquely identifies a playlist that displays next to the video - player.\"\n }\n },\n \"description\": \"Branding properties - for the watch. All deprecated.\",\n \"id\": \"WatchSettings\"\n },\n - \ \"VideoRating\": {\n \"type\": \"object\",\n \"id\": \"VideoRating\",\n - \ \"description\": \"Basic details about rating of a video.\",\n \"properties\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\"\n },\n - \ \"rating\": {\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"description\": \"Rating - of a video.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ]\n }\n }\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The `visitorId` - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ },\n \"description\": \"A list of valid abuse reasons that - are used with `video.ReportAbuse`.\"\n }\n },\n \"id\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"VideoRecordingDetails\": {\n \"type\": \"object\",\n \"description\": - \"Recording information associated with the video.\",\n \"id\": \"VideoRecordingDetails\",\n - \ \"properties\": {\n \"locationDescription\": {\n \"description\": - \"The text description of the location where the video was recorded.\",\n - \ \"type\": \"string\"\n },\n \"recordingDate\": {\n - \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the video was recorded.\"\n },\n \"location\": - {\n \"description\": \"The geolocation information associated with - the video.\",\n \"$ref\": \"GeoPoint\"\n }\n }\n },\n - \ \"ThumbnailDetails\": {\n \"description\": \"Internal representation - of thumbnails for a YouTube resource.\",\n \"properties\": {\n \"high\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The high - quality image for this resource.\"\n },\n \"default\": {\n \"$ref\": - \"Thumbnail\",\n \"description\": \"The default image for this resource.\"\n - \ },\n \"medium\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The medium quality image for this resource.\"\n },\n \"maxres\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The maximum - resolution quality image for this resource.\"\n },\n \"standard\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The standard - quality image for this resource.\"\n }\n },\n \"id\": \"ThumbnailDetails\",\n - \ \"type\": \"object\"\n },\n \"Thumbnail\": {\n \"type\": - \"object\",\n \"id\": \"Thumbnail\",\n \"description\": \"A thumbnail - is an image representing a YouTube resource.\",\n \"properties\": {\n - \ \"url\": {\n \"type\": \"string\",\n \"description\": - \"The thumbnail image's URL.\"\n },\n \"width\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"(Optional) Width of the thumbnail image.\"\n },\n \"height\": - {\n \"description\": \"(Optional) Height of the thumbnail image.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n - \ }\n },\n \"ChannelSettings\": {\n \"description\": \"Branding - properties for the channel view.\",\n \"type\": \"object\",\n \"id\": - \"ChannelSettings\",\n \"properties\": {\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"unsubscribedTrailer\": - {\n \"type\": \"string\",\n \"description\": \"The trailer - of the channel, for users that are not subscribers.\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n },\n \"moderateComments\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - user-submitted comments left on the channel page need to be approved by the - channel owner to be publicly visible.\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"Specifies the - channel title.\"\n },\n \"defaultTab\": {\n \"type\": - \"string\",\n \"description\": \"Which content tab users should see - when viewing the channel.\"\n },\n \"defaultLanguage\": {\n - \ \"type\": \"string\"\n },\n \"showBrowseView\": {\n - \ \"description\": \"Whether the tab to browse the videos should be - displayed.\",\n \"type\": \"boolean\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the channel description.\"\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n },\n - \ \"trackingAnalyticsAccountId\": {\n \"description\": \"The - ID for a Google Analytics account to track and measure traffic to the channels.\",\n - \ \"type\": \"string\"\n },\n \"keywords\": {\n \"description\": - \"Lists keywords associated with the channel, comma-separated.\",\n \"type\": - \"string\"\n },\n \"profileColor\": {\n \"description\": - \"A prominent color that can be rendered on this channel page.\",\n \"type\": - \"string\"\n },\n \"featuredChannelsUrls\": {\n \"type\": - \"array\",\n \"description\": \"The list of featured channels.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n }\n - \ }\n },\n \"AbuseReport\": {\n \"type\": \"object\",\n \"id\": - \"AbuseReport\",\n \"properties\": {\n \"subject\": {\n \"$ref\": - \"Entity\"\n },\n \"description\": {\n \"type\": \"string\"\n - \ },\n \"abuseTypes\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"AbuseType\"\n }\n },\n \"relatedEntities\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n }\n }\n }\n },\n \"MembershipsDurationAtLevel\": - {\n \"type\": \"object\",\n \"properties\": {\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member for the given level.\",\n \"type\": \"string\"\n },\n - \ \"memberTotalDurationMonths\": {\n \"description\": \"The - cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n },\n \"level\": - {\n \"description\": \"Pricing level ID.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"MembershipsDurationAtLevel\"\n - \ },\n \"I18nRegion\": {\n \"type\": \"object\",\n \"id\": - \"I18nRegion\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n \"default\": - \"youtube#i18nRegion\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the i18n region.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\"\n - \ },\n \"LiveChatModeratorListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatModeratorListResponse\",\n \"properties\": {\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of moderators that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveChatModerator\"\n }\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n }\n - \ }\n },\n \"LiveBroadcastStatistics\": {\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"type\": \"object\",\n \"description\": \"Statistics about the - live broadcast. These represent a snapshot of the values at the time of the - request. Statistics are only returned for live broadcasts.\",\n \"properties\": - {\n \"concurrentViewers\": {\n \"description\": \"The number - of viewers currently watching the broadcast. The property and its value will - be present if the broadcast has current viewers and the broadcast owner has - not hidden the viewcount for the video. Note that YouTube stops tracking the - number of concurrent viewers for a broadcast when the broadcast ends. So, - this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\",\n \"format\": \"uint64\",\n - \ \"type\": \"string\"\n },\n \"totalChatCount\": {\n - \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\"\n - \ }\n }\n },\n \"LiveStreamConfigurationIssue\": {\n \"type\": - \"object\",\n \"properties\": {\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The long-form description of the - issue and how to resolve it.\"\n },\n \"reason\": {\n \"type\": - \"string\",\n \"description\": \"The short-form reason for this issue.\"\n - \ },\n \"severity\": {\n \"description\": \"How severe - this issue is to the stream.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"info\",\n \"warning\",\n \"error\"\n ],\n - \ \"type\": \"string\"\n },\n \"type\": {\n \"enum\": - [\n \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ],\n \"type\": - \"string\",\n \"description\": \"The kind of error happening.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"id\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"TestItemTestItemSnippet\": {\n \"type\": \"object\",\n - \ \"id\": \"TestItemTestItemSnippet\",\n \"properties\": {}\n },\n - \ \"ThirdPartyLinkListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"InvideoTiming\": {\n \"properties\": {\n \"type\": - {\n \"type\": \"string\",\n \"description\": \"Describes - a timing type. If the value is offsetFromStart, then the offsetMs field represents - an offset from the start of the video. If the value is offsetFromEnd, then - the offsetMs field represents an offset from the end of the video.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ]\n - \ },\n \"durationMs\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"Defines the - duration in milliseconds for which the promotion should be displayed. If missing, - the client should use the default.\"\n },\n \"offsetMs\": {\n - \ \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\"\n }\n - \ },\n \"description\": \"Describes a temporal position of a visual - widget inside a video.\",\n \"id\": \"InvideoTiming\",\n \"type\": - \"object\"\n },\n \"PlaylistSnippet\": {\n \"id\": \"PlaylistSnippet\",\n - \ \"properties\": {\n \"tags\": {\n \"description\": \"Keyword - tags associated with the playlist.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"thumbnailVideoId\": - {\n \"description\": \"Note: if the playlist has a custom thumbnail, - this field will not be populated. The video id selected by the user that will - be used as the thumbnail of this playlist. This field defaults to the first - publicly viewable video in the playlist, if: 1. The user has never selected - a video to be the thumbnail of the playlist. 2. The user selects a video to - be the thumbnail, and then removes that video from the playlist. 3. The user - selects a non-owned video to be the thumbnail, but that video becomes private, - or gets deleted.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"description\": \"Localized title and description, read-only.\",\n - \ \"$ref\": \"PlaylistLocalization\"\n },\n \"channelTitle\": - {\n \"description\": \"The channel title of the channel that the - video belongs to.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the playlist's default title and description.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that published the playlist.\"\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the playlist was created.\"\n },\n \"description\": - {\n \"description\": \"The playlist's description.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The playlist's title.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"A map of thumbnail images associated with the playlist. 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.\"\n }\n - \ },\n \"description\": \"Basic details about a playlist, including - title, description and thumbnails.\",\n \"type\": \"object\"\n },\n - \ \"LiveChatModeratorSnippet\": {\n \"id\": \"LiveChatModeratorSnippet\",\n - \ \"properties\": {\n \"moderatorDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - moderator.\"\n },\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the live chat this moderator can act - on.\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessageListResponse\": - {\n \"id\": \"LiveChatMessageListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n \"default\": - \"youtube#liveChatMessageListResponse\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"offlineAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the underlying stream - went offline.\",\n \"type\": \"string\"\n },\n \"pollingIntervalMillis\": - {\n \"type\": \"integer\",\n \"description\": \"The amount - of time the client should wait before polling again.\",\n \"format\": - \"uint32\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveChatMessage\"\n },\n \"type\": \"array\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n }\n },\n \"LiveStreamHealthStatus\": {\n \"id\": - \"LiveStreamHealthStatus\",\n \"properties\": {\n \"status\": - {\n \"type\": \"string\",\n \"description\": \"The status - code of this stream\",\n \"enum\": [\n \"good\",\n \"ok\",\n - \ \"bad\",\n \"noData\",\n \"revoked\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"lastUpdateTimeSeconds\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The last time this status was updated (in seconds)\",\n - \ \"type\": \"string\"\n },\n \"configurationIssues\": - {\n \"description\": \"The configurations issues on this stream\",\n - \ \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"type\": \"array\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelSnippet\": {\n \"properties\": {\n \"country\": - {\n \"type\": \"string\",\n \"description\": \"The country - of the channel.\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the channel was created.\"\n },\n \"customUrl\": - {\n \"description\": \"The custom url of the channel.\",\n \"type\": - \"string\"\n },\n \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\"\n },\n \"title\": {\n \"description\": - \"The channel's title.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The description of the channel.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the channel's default - title and description.\"\n }\n },\n \"id\": \"ChannelSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic details about - a channel, including title, description and thumbnails.\"\n },\n \"PlaylistPlayer\": - {\n \"type\": \"object\",\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\"\n }\n },\n - \ \"id\": \"PlaylistPlayer\"\n },\n \"I18nRegionSnippet\": {\n \"properties\": - {\n \"gl\": {\n \"type\": \"string\",\n \"description\": - \"The region code as a 2-letter ISO country code.\"\n },\n \"name\": - {\n \"description\": \"The human-readable name of the region.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"I18nRegionSnippet\",\n \"description\": \"Basic details - about an i18n region, such as region code and human-readable name.\"\n },\n - \ \"LiveStreamListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"default\": \"youtube#liveStreamListResponse\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of live streams that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n - \ }\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n }\n - \ },\n \"id\": \"LiveStreamListResponse\"\n },\n \"Entity\": - {\n \"properties\": {\n \"typeId\": {\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"url\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"Entity\"\n },\n \"ChannelSectionContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"Details about a channelsection, including playlists - and channels.\",\n \"properties\": {\n \"channels\": {\n \"description\": - \"The channel ids for type multiple_channels.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"playlists\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\"\n }\n }\n },\n \"LiveChatBanSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"banDurationSeconds\": - {\n \"description\": \"The duration of a ban, only filled if the - ban has type TEMPORARY.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"liveChatId\": {\n \"type\": \"string\",\n - \ \"description\": \"The chat this ban is pertinent to.\"\n },\n - \ \"type\": {\n \"description\": \"The type of ban.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"An invalid ban - type.\",\n \"A permanent ban.\",\n \"A temporary ban.\"\n - \ ],\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ]\n },\n - \ \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ }\n },\n \"id\": \"LiveChatBanSnippet\"\n },\n \"PlaylistContentDetails\": - {\n \"id\": \"PlaylistContentDetails\",\n \"properties\": {\n \"itemCount\": - {\n \"description\": \"The number of videos in the playlist.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"AbuseType\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"AbuseType\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\",\n \"$ref\": - \"ResourceId\"\n },\n \"author\": {\n \"type\": \"string\",\n - \ \"description\": \"The author of the social network post.\"\n },\n - \ \"type\": {\n \"description\": \"The name of the social network.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ]\n },\n \"imageUrl\": {\n - \ \"description\": \"An image of the post's author.\",\n \"type\": - \"string\"\n },\n \"referenceUrl\": {\n \"description\": - \"The URL of the social network post.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ActivityContentDetailsSocial\",\n \"description\": - \"Details about a social network post.\"\n },\n \"ThirdPartyLink\": - {\n \"id\": \"ThirdPartyLink\",\n \"description\": \"A *third party - account link* resource represents a link between a YouTube account or a channel - and an account on a third-party service.\",\n \"properties\": {\n \"status\": - {\n \"$ref\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The status object contains information about the status of the link.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#thirdPartyLink\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\"\n - \ },\n \"linkingToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the third- party account link.\",\n \"$ref\": - \"ThirdPartyLinkSnippet\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoProcessingDetailsProcessingProgress\": {\n \"description\": - \"Video processing progress and completion time estimate.\",\n \"type\": - \"object\",\n \"properties\": {\n \"partsTotal\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"An estimate of the total number of parts that need to be processed for the - video. The number may be updated with more precise estimates while YouTube - processes the video.\"\n },\n \"partsProcessed\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\"\n - \ },\n \"timeLeftMs\": {\n \"format\": \"uint64\",\n - \ \"description\": \"An estimate of the amount of time, in millseconds, - that YouTube needs to finish processing the video.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"LiveBroadcast\": {\n \"description\": \"A *liveBroadcast* - resource represents an event that will be streamed, via live video, on YouTube.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"status\": - {\n \"description\": \"The status object contains information about - the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n },\n - \ \"statistics\": {\n \"description\": \"The statistics object - contains info about the event's current stats. These include concurrent viewers - and total chat count. Statistics can change (in either direction) during the - lifetime of an event. Statistics are only returned while the event is live.\",\n - \ \"$ref\": \"LiveBroadcastStatistics\"\n },\n \"id\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the broadcast.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"default\": \"youtube#liveBroadcast\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"LiveBroadcastContentDetails\",\n \"description\": \"The contentDetails - object contains information about the event's video content, such as whether - the content can be shown in an embedded video player or if it will be archived - and therefore available for viewing after the event has concluded.\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the event, including its title, description, start time, - and end time.\",\n \"$ref\": \"LiveBroadcastSnippet\"\n }\n - \ },\n \"id\": \"LiveBroadcast\"\n },\n \"CaptionListResponse\": - {\n \"properties\": {\n \"items\": {\n \"items\": {\n - \ \"$ref\": \"Caption\"\n },\n \"description\": - \"A list of captions that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#captionListResponse\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"CaptionListResponse\",\n - \ \"type\": \"object\"\n },\n \"SearchResult\": {\n \"id\": - \"SearchResult\",\n \"properties\": {\n \"id\": {\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"SearchResultSnippet\",\n \"description\": \"The snippet object - contains basic details about a search result, such as its title or description. - For example, if the search result is a video, then the title will be the video's - title and the description will be the video's description.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#searchResult\"\n - \ }\n },\n \"description\": \"A search result contains information - about a YouTube video, channel, or playlist that matches the search parameters - specified in an API request. While a search result points to a uniquely identifiable - resource, like a video, it does not have its own persistent data.\",\n \"type\": - \"object\"\n },\n \"Channel\": {\n \"description\": \"A *channel* - resource contains information about a YouTube channel.\",\n \"type\": - \"object\",\n \"id\": \"Channel\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the channel, such as its title, description, and thumbnail images.\",\n - \ \"$ref\": \"ChannelSnippet\"\n },\n \"status\": {\n - \ \"description\": \"The status object encapsulates information about - the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n - \ },\n \"auditDetails\": {\n \"$ref\": \"ChannelAuditDetails\",\n - \ \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object encapsulates statistics for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel.\",\n \"type\": \"string\"\n - \ },\n \"topicDetails\": {\n \"$ref\": \"ChannelTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"description\": \"Localizations - for different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelLocalization\"\n }\n },\n \"conversionPings\": - {\n \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\",\n \"$ref\": - \"ChannelConversionPings\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n - \ \"description\": \"The contentDetails object encapsulates information - about the channel's content.\"\n },\n \"kind\": {\n \"default\": - \"youtube#channel\",\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n \"type\": - \"string\"\n },\n \"brandingSettings\": {\n \"description\": - \"The brandingSettings object encapsulates information about the branding - of the channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n },\n - \ \"contentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ }\n }\n },\n \"ContentRating\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"nfrcRating\": {\n \"enum\": [\n - \ \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Bulgarian National Film Center.\",\n \"type\": \"string\"\n - \ },\n \"moctwRating\": {\n \"description\": \"The video's - rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n \"type\": - \"string\",\n \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ]\n },\n \"fcbmRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"fcbmUnspecified\",\n - \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n - \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n - \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Malaysia's - Film Censorship Board.\"\n },\n \"kijkwijzerRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\",\n \"enum\": - [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ]\n },\n \"eirinRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ],\n \"description\": \"The - video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\"\n - \ },\n \"egfilmRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Egypt.\",\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ],\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ]\n },\n \"bbfcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - British Board of Film Classification (BBFC) rating.\",\n \"enum\": - [\n \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n - \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n - \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n - \ ]\n },\n \"icaaRating\": {\n \"description\": - \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales - (ICAA - Spain) rating.\",\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ]\n },\n - \ \"smaisRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Iceland.\",\n - \ \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ]\n },\n \"fpbRatingReasons\": {\n \"items\": - {\n \"enumDescriptions\": [\n \"\",\n \"South - Africa rating content descriptors.\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"type\": \"string\"\n },\n \"description\": - \"Reasons that explain why the video received its FPB (South Africa) rating.\",\n - \ \"type\": \"array\"\n },\n \"djctqRatingReasons\": - {\n \"items\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"type\": \"string\"\n },\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n - \ \"type\": \"array\"\n },\n \"nfvcbRating\": {\n \"enum\": - [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n \"nfvcbPg\",\n - \ \"nfvcb12\",\n \"nfvcb12a\",\n \"nfvcb15\",\n - \ \"nfvcb18\",\n \"nfvcbRe\",\n \"nfvcbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"18\",\n \"RE\",\n \"\"\n ]\n - \ },\n \"agcomRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Italy's Autorit\xE0 per - le Garanzie nelle Comunicazioni (AGCOM).\"\n },\n \"mekuRating\": - {\n \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Finland's - Kansallinen Audiovisuaalinen Instituutti (National Audiovisual Institute).\",\n - \ \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"pefilmRating\": {\n \"description\": - \"The video's rating in Peru.\",\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"nkclvRating\": {\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Nacion\xE3lais Kino centrs (National Film Centre - of Latvia).\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"resorteviolenciaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"description\": \"The video's rating in Venezuela.\"\n - \ },\n \"cbfcRating\": {\n \"description\": \"The video's - Central Board of Film Certification (CBFC - India) rating.\",\n \"enum\": - [\n \"cbfcUnspecified\",\n \"cbfcU\",\n \"cbfcUA\",\n - \ \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n - \ \"cbfcA\",\n \"cbfcS\",\n \"cbfcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"ecbmctRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"7A\",\n \"7+\",\n \"13A\",\n \"13+\",\n - \ \"15A\",\n \"15+\",\n \"18+\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"ecbmctUnspecified\",\n - \ \"ecbmctG\",\n \"ecbmct7a\",\n \"ecbmct7plus\",\n - \ \"ecbmct13a\",\n \"ecbmct13plus\",\n \"ecbmct15a\",\n - \ \"ecbmct15plus\",\n \"ecbmct18plus\",\n \"ecbmctUnrated\"\n - \ ],\n \"description\": \"Rating system in Turkey - Evaluation - and Classification Board of the Ministry of Culture and Tourism\"\n },\n - \ \"chfilmRating\": {\n \"description\": \"The video's rating - in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"0\",\n - \ \"6\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"cscfRating\": {\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ],\n \"description\": - \"The video's rating from Luxembourg's Commission de surveillance de la classification - des films (CSCF).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ]\n },\n \"mocRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\"\n },\n \"chvrsRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ],\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"ilfilmRating\": {\n \"description\": - \"The video's rating in Israel.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ]\n },\n - \ \"fmocRating\": {\n \"enum\": [\n \"fmocUnspecified\",\n - \ \"fmocU\",\n \"fmoc10\",\n \"fmoc12\",\n - \ \"fmoc16\",\n \"fmoc18\",\n \"fmocE\",\n - \ \"fmocUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ]\n },\n \"fpbRating\": - {\n \"description\": \"The video's rating from South Africa's Film - and Publication Board.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X18\",\n - \ \"XX\",\n \"\",\n \"10\"\n ],\n - \ \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"type\": \"string\"\n },\n \"lsfRating\": - {\n \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n - \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n - \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"description\": - \"The video's rating from Indonesia's Lembaga Sensor Film.\"\n },\n - \ \"catvRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"C\",\n \"C8\",\n \"G\",\n \"PG\",\n - \ \"14+\",\n \"18+\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"enum\": - [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ]\n },\n \"kfcbRating\": {\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"enum\": - [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"cncRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ],\n - \ \"description\": \"Rating system in France - Commission de classification - cinematographique\",\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"nmcRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The National Media Council ratings - system for United Arab Emirates.\"\n },\n \"mcstRating\": {\n - \ \"description\": \"The video's rating system for Vietnam - MCST\",\n - \ \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"menaMpaaRating\": {\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ]\n },\n \"czfilmRating\": {\n - \ \"enum\": [\n \"czfilmUnspecified\",\n \"czfilmU\",\n - \ \"czfilm12\",\n \"czfilm14\",\n \"czfilm18\",\n - \ \"czfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in the Czech Republic.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ]\n },\n \"russiaRating\": {\n \"enum\": - [\n \"russiaUnspecified\",\n \"russia0\",\n \"russia6\",\n - \ \"russia12\",\n \"russia16\",\n \"russia18\",\n - \ \"russiaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - National Film Registry of the Russian Federation (MKRF - Russia) rating.\"\n - \ },\n \"cnaRating\": {\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Romania's - CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\",\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"mtrcbRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n - \ \"X\",\n \"\"\n ],\n \"enum\": [\n - \ \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n - \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n - \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\"\n },\n \"grfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"K\",\n \"E\",\n \"K-12\",\n - \ \"K-13\",\n \"K-15\",\n \"K-17\",\n \"K-18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - in Greece.\",\n \"type\": \"string\",\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ]\n },\n - \ \"bfvcRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Thailand's Board of Film and Video Censors.\",\n - \ \"enum\": [\n \"bfvcUnspecified\",\n \"bfvcG\",\n - \ \"bfvcE\",\n \"bfvc13\",\n \"bfvc15\",\n - \ \"bfvc18\",\n \"bfvc20\",\n \"bfvcB\",\n - \ \"bfvcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ]\n },\n \"smsaRating\": {\n \"description\": - \"The video's rating from Statens medier\xE5d (Sweden's National Media Council).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"smsaUnspecified\",\n - \ \"smsaA\",\n \"smsa7\",\n \"smsa11\",\n - \ \"smsa15\",\n \"smsaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ]\n },\n \"medietilsynetRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Medietilsynet, - the Norwegian Media Authority.\"\n },\n \"mibacRating\": {\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"description\": \"The - video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali e - del Turismo (Italy).\"\n },\n \"rteRating\": {\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GA\",\n - \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"rteUnspecified\",\n - \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n - \ \"rteUnrated\"\n ]\n },\n \"ifcoRating\": - {\n \"description\": \"The video's Irish Film Classification Office - (IFCO - Ireland) rating. See the IFCO website for more information.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"ifcoUnspecified\",\n \"ifcoG\",\n - \ \"ifcoPg\",\n \"ifco12\",\n \"ifco12a\",\n - \ \"ifco15\",\n \"ifco15a\",\n \"ifco16\",\n - \ \"ifco18\",\n \"ifcoUnrated\"\n ]\n },\n - \ \"acbRating\": {\n \"enum\": [\n \"acbUnspecified\",\n - \ \"acbE\",\n \"acbP\",\n \"acbC\",\n \"acbG\",\n - \ \"acbPg\",\n \"acbM\",\n \"acbMa15plus\",\n - \ \"acbR18plus\",\n \"acbUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"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.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"Programs that have been given a P classification by the Australian - Communications and Media Authority. These programs are intended for preschool - children.\",\n \"Programs that have been given a C classification - by the Australian Communications and Media Authority. These programs are intended - for children (other than preschool children) who are younger than 14 years - of age.\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"MA15+\",\n \"R18+\",\n \"\"\n ]\n - \ },\n \"nbcRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ],\n \"description\": - \"The video's rating from the Maldives National Bureau of Classification.\",\n - \ \"type\": \"string\"\n },\n \"kmrbRating\": {\n \"type\": - \"string\",\n \"description\": \"The video's Korea Media Rating Board - (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. The KMRB rates - videos in South Korea.\",\n \"enum\": [\n \"kmrbUnspecified\",\n - \ \"kmrbAll\",\n \"kmrb12plus\",\n \"kmrb15plus\",\n - \ \"kmrbTeenr\",\n \"kmrbR\",\n \"kmrbUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ]\n },\n \"bmukkRating\": - {\n \"description\": \"The video's rating from the Austrian Board - of Media Classification (Bundesministerium f\xFCr Unterricht, Kunst und Kultur).\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ]\n },\n \"mpaaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n - \ \"! X\",\n \"\"\n ],\n \"enum\": - [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n - \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n - \ \"mpaaX\",\n \"mpaaUnrated\"\n ],\n \"description\": - \"The video's Motion Picture Association of America (MPAA) rating.\",\n \"type\": - \"string\"\n },\n \"anatelRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ],\n \"enum\": - [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n - \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n - \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n - \ ],\n \"description\": \"The video's Anatel (Asociaci\xF3n - Nacional de Televisi\xF3n) rating for Chilean television.\"\n },\n - \ \"rcnofRating\": {\n \"description\": \"The video's rating - from the Hungarian Nemzeti Filmiroda, the Rating Committee of the National - Office of Film.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ]\n },\n \"mccypRating\": {\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"mccypUnspecified\",\n \"mccypA\",\n - \ \"mccyp7\",\n \"mccyp11\",\n \"mccyp15\",\n - \ \"mccypUnrated\"\n ]\n },\n \"cicfRating\": - {\n \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n - \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Commission - de Contr\xF4le des Films (Belgium).\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"E\",\n - \ \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n ]\n - \ },\n \"incaaRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's INCAA (Instituto Nacional de Cine - y Artes Audiovisuales - Argentina) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"enum\": [\n - \ \"incaaUnspecified\",\n \"incaaAtp\",\n \"incaaSam13\",\n - \ \"incaaSam16\",\n \"incaaSam18\",\n \"incaaC\",\n - \ \"incaaUnrated\"\n ]\n },\n \"cccRating\": - {\n \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n - \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Todo espectador\",\n \"6+ - Inconveniente para menores - de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n \"18+ - - contenido excesivamente violento\",\n \"18+ - contenido pornogr\xE1fico\",\n - \ \"\"\n ]\n },\n \"csaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"Interdiction\",\n - \ \"\"\n ],\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, - which rates broadcast content.\"\n },\n \"rtcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's General Directorate of Radio, Television and Cinematography - (Mexico) rating.\",\n \"enum\": [\n \"rtcUnspecified\",\n - \ \"rtcAa\",\n \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n - \ \"rtcC\",\n \"rtcD\",\n \"rtcUnrated\"\n - \ ]\n },\n \"tvpgRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"tvpgUnspecified\",\n \"tvpgY\",\n \"tvpgY7\",\n - \ \"tvpgY7Fv\",\n \"tvpgG\",\n \"tvpgPg\",\n - \ \"pg14\",\n \"tvpgMa\",\n \"tvpgUnrated\"\n - \ ],\n \"description\": \"The video's TV Parental Guidelines - (TVPG) rating.\"\n },\n \"nbcplRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in Poland.\",\n - \ \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n - \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n - \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ]\n - \ },\n \"mdaRating\": {\n \"description\": \"The video's - rating from Singapore's Media Development Authority (MDA) and, specifically, - it's Board of Film Censors (BFC).\",\n \"enum\": [\n \"mdaUnspecified\",\n - \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n - \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n - \ \"mdaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ]\n },\n \"skfilmRating\": - {\n \"enum\": [\n \"skfilmUnspecified\",\n \"skfilmG\",\n - \ \"skfilmP2\",\n \"skfilmP5\",\n \"skfilmP8\",\n - \ \"skfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P2\",\n \"P5\",\n \"P8\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Slovakia.\"\n - \ },\n \"mccaaRating\": {\n \"enum\": [\n \"mccaaUnspecified\",\n - \ \"mccaaU\",\n \"mccaaPg\",\n \"mccaa12a\",\n - \ \"mccaa12\",\n \"mccaa14\",\n \"mccaa15\",\n - \ \"mccaa16\",\n \"mccaa18\",\n \"mccaaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\"\n },\n - \ \"djctqRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"L\",\n \"10\",\n \"12\",\n \"14\",\n - \ \"16\",\n \"18\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ],\n \"description\": \"The - video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\"\n },\n \"fcoRating\": - {\n \"description\": \"The video's rating from Hong Kong's Office - for Film, Newspaper and Article Administration.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"I\",\n \"IIA\",\n \"IIB\",\n - \ \"II\",\n \"III\",\n \"\"\n ]\n - \ },\n \"fskRating\": {\n \"description\": \"The video's - Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.\",\n - \ \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"catvfrRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ],\n \"description\": \"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.\"\n },\n \"eefilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n - \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n - \ \"K-16\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating in Estonia.\",\n - \ \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n - \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n - \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n - \ \"eefilmK16\",\n \"eefilmUnrated\"\n ]\n },\n - \ \"ytRating\": {\n \"enum\": [\n \"ytUnspecified\",\n - \ \"ytAgeRestricted\"\n ],\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"mpaatRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GB\",\n \"RB\"\n ],\n - \ \"description\": \"The rating system for trailer, DVD, and Ad in - the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"mpaatUnspecified\",\n - \ \"mpaatGb\",\n \"mpaatRb\"\n ]\n },\n - \ \"oflcRating\": {\n \"type\": \"string\",\n \"enum\": - [\n \"oflcUnspecified\",\n \"oflcG\",\n \"oflcPg\",\n - \ \"oflcM\",\n \"oflcR13\",\n \"oflcR15\",\n - \ \"oflcR16\",\n \"oflcR18\",\n \"oflcUnrated\",\n - \ \"oflcRp13\",\n \"oflcRp16\",\n \"oflcRp18\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ],\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\"\n },\n \"cceRating\": {\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"enum\": [\n \"cceUnspecified\",\n - \ \"cceM4\",\n \"cceM6\",\n \"cceM12\",\n - \ \"cceM16\",\n \"cceM18\",\n \"cceUnrated\",\n - \ \"cceM14\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ]\n }\n },\n \"id\": \"ContentRating\",\n \"description\": - \"Ratings schemes. The country-specific ratings are mostly for movies and - shows. LINT.IfChange\"\n },\n \"MemberSnippet\": {\n \"properties\": - {\n \"membershipsDetails\": {\n \"description\": \"Details - about the user's membership.\",\n \"$ref\": \"MembershipsDetails\"\n - \ },\n \"creatorChannelId\": {\n \"description\": \"The - id of the channel that's offering memberships.\",\n \"type\": \"string\"\n - \ },\n \"memberDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the member.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"MemberSnippet\"\n },\n \"LiveStreamContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"isReusable\": - {\n \"description\": \"Indicates whether the stream is reusable, - which means that it can be bound to multiple broadcasts. It is common for - broadcasters to reuse the same stream for many different broadcasts if those - broadcasts occur at different times. If you set this value to false, then - the stream will not be reusable, which means that it can only be bound to - one broadcast. Non-reusable streams differ from reusable streams in the following - ways: - A non-reusable stream can only be bound to one broadcast. - A non-reusable - stream might be deleted by an automated process after the broadcast ends. - - The liveStreams.list method does not list non-reusable streams if you call - the method and set the mine parameter to true. The only way to use that method - to retrieve the resource for a non-reusable stream is to use the id parameter - to identify the stream. \",\n \"type\": \"boolean\"\n },\n - \ \"closedCaptionsIngestionUrl\": {\n \"description\": \"The - ingestion URL where the closed captions of this stream are sent.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Detailed settings - of a stream.\",\n \"id\": \"LiveStreamContentDetails\"\n },\n \"InvideoPosition\": - {\n \"description\": \"Describes the spatial position of a visual widget - inside a video. It is a union of various position types, out of which only - will be set one.\",\n \"type\": \"object\",\n \"id\": \"InvideoPosition\",\n - \ \"properties\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"Defines the position type.\",\n \"enum\": [\n \"corner\"\n - \ ]\n },\n \"cornerPosition\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Describes in which corner of the video the visual widget will appear.\",\n - \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n - \ \"bottomLeft\",\n \"bottomRight\"\n ]\n }\n - \ }\n },\n \"LiveChatMessageAuthorDetails\": {\n \"id\": \"LiveChatMessageAuthorDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"channelUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - URL.\"\n },\n \"displayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's display name.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n },\n \"isChatSponsor\": {\n \"description\": - \"Whether the author is a sponsor of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"isChatModerator\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a moderator - of the live chat.\"\n },\n \"isVerified\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author's identity has - been verified by YouTube.\"\n },\n \"profileImageUrl\": {\n - \ \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"isChatOwner\": {\n \"description\": - \"Whether the author is the owner of the live chat.\",\n \"type\": - \"boolean\"\n }\n }\n },\n \"ChannelToStoreLinkDetails\": - {\n \"properties\": {\n \"storeUrl\": {\n \"description\": - \"Landing page of the store.\",\n \"type\": \"string\"\n },\n - \ \"storeName\": {\n \"type\": \"string\",\n \"description\": - \"Name of the store.\"\n },\n \"merchantId\": {\n \"description\": - \"Google Merchant Center id of the store.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n }\n },\n \"id\": \"ChannelToStoreLinkDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Information specific - to a store on a merchandising platform linked to a YouTube channel.\"\n },\n - \ \"PlaylistItemListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of playlist items that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n }\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"PlaylistItemListResponse\"\n },\n \"I18nLanguage\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the i18n language.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n - \ \"default\": \"youtube#i18nLanguage\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"I18nLanguageSnippet\",\n \"description\": \"The snippet object - contains basic details about the i18n language, such as language code and - human-readable name.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"I18nLanguage\",\n \"description\": \"An *i18nLanguage* - resource identifies a UI language currently supported by YouTube.\"\n },\n - \ \"LiveBroadcastSnippet\": {\n \"type\": \"object\",\n \"description\": - \"Basic broadcast information.\",\n \"properties\": {\n \"actualStartTime\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast actually - started. This information is only available once the broadcast's state is - live.\"\n },\n \"description\": {\n \"description\": - \"The broadcast's description. As with the title, you can set this field by - modifying the broadcast resource or by setting the description field of the - corresponding video resource.\",\n \"type\": \"string\"\n },\n - \ \"scheduledStartTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast was added - to YouTube's live broadcast schedule.\",\n \"type\": \"string\"\n - \ },\n \"actualEndTime\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the broadcast actually ended. This information is only available - once the broadcast's state is complete.\"\n },\n \"thumbnails\": - {\n \"description\": \"A map of thumbnail images associated with - the broadcast. For each nested object in this object, the key is the name - of the thumbnail image, and the value is an object that contains other information - about the thumbnail.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"isDefaultBroadcast\": {\n \"description\": \"Indicates - whether this broadcast is the default broadcast. Internal only.\",\n \"type\": - \"boolean\"\n },\n \"title\": {\n \"description\": - \"The broadcast's title. Note that the broadcast represents exactly one YouTube - video. You can set this field by modifying the broadcast resource or by setting - the title field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that is publishing the broadcast.\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the live chat for this broadcast.\"\n },\n \"scheduledEndTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast is scheduled to end.\",\n \"format\": - \"date-time\"\n }\n },\n \"id\": \"LiveBroadcastSnippet\"\n - \ },\n \"I18nRegionListResponse\": {\n \"type\": \"object\",\n \"id\": - \"I18nRegionListResponse\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n - \ \"default\": \"youtube#i18nRegionListResponse\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"I18nRegion\"\n },\n - \ \"description\": \"A list of regions where YouTube is available. - In this map, the i18n region ID is the map key, and its value is the corresponding - i18nRegion resource.\",\n \"type\": \"array\"\n }\n }\n - \ },\n \"VideoPlayer\": {\n \"description\": \"Player to be used - for a video playback.\",\n \"type\": \"object\",\n \"id\": \"VideoPlayer\",\n - \ \"properties\": {\n \"embedHeight\": {\n \"type\": \"string\",\n - \ \"format\": \"int64\"\n },\n \"embedHtml\": {\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\",\n - \ \"type\": \"string\"\n },\n \"embedWidth\": {\n \"type\": - \"string\",\n \"description\": \"The embed width\",\n \"format\": - \"int64\"\n }\n }\n },\n \"LiveBroadcastStatus\": {\n \"description\": - \"Live broadcast state.\",\n \"type\": \"object\",\n \"properties\": - {\n \"liveBroadcastPriority\": {\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Priority of - the live broadcast event (internal state).\",\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ]\n },\n \"privacyStatus\": - {\n \"description\": \"The broadcast's privacy status. Note that - the broadcast represents exactly one YouTube video, so the privacy settings - are identical to those supported for videos. In addition, you can set this - field by modifying the broadcast resource or by setting the privacyStatus - field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"lifeCycleStatus\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"Incomplete - settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible - only to partner, may need special UI treatment\",\n \"Viper is - recording; this means the \\\"clock\\\" is running\",\n \"The broadcast - is finished.\",\n \"This broadcast was removed by admin action\",\n - \ \"Transition into TESTING has been requested\",\n \"Transition - into LIVE has been requested\"\n ],\n \"description\": \"The - broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ]\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"madeForKids\": - {\n \"description\": \"Whether the broadcast is made for kids or - not, decided by YouTube instead of the creator. This field is read only.\",\n - \ \"type\": \"boolean\"\n },\n \"recordingStatus\": - {\n \"enumDescriptions\": [\n \"No value or the value - is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"enum\": - [\n \"liveBroadcastRecordingStatusUnspecified\",\n \"notRecording\",\n - \ \"recording\",\n \"recorded\"\n ],\n \"description\": - \"The broadcast's recording status.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveBroadcastStatus\"\n },\n \"ThumbnailSetResponse\": - {\n \"type\": \"object\",\n \"id\": \"ThumbnailSetResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"description\": \"A - list of thumbnails.\",\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"type\": \"array\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n \"default\": - \"youtube#thumbnailSetResponse\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoFileDetailsVideoStream\": - {\n \"id\": \"VideoFileDetailsVideoStream\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"aspectRatio\": {\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\",\n \"format\": \"double\",\n - \ \"type\": \"number\"\n },\n \"widthPixels\": {\n \"type\": - \"integer\",\n \"description\": \"The encoded video content's width - in pixels. You can calculate the video's encoding aspect ratio as width_pixels - / height_pixels.\",\n \"format\": \"uint32\"\n },\n \"codec\": - {\n \"description\": \"The video codec that the stream uses.\",\n - \ \"type\": \"string\"\n },\n \"bitrateBps\": {\n \"description\": - \"The video stream's bitrate, in bits per second.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"heightPixels\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The encoded video content's height in pixels.\"\n },\n \"vendor\": - {\n \"type\": \"string\",\n \"description\": \"A value that - uniquely identifies a video vendor. Typically, the value is a four-letter - vendor code.\"\n },\n \"rotation\": {\n \"type\": \"string\",\n - \ \"description\": \"The amount that YouTube needs to rotate the original - source content to properly display the video.\",\n \"enum\": [\n - \ \"none\",\n \"clockwise\",\n \"upsideDown\",\n - \ \"counterClockwise\",\n \"other\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"frameRateFps\": {\n \"format\": - \"double\",\n \"type\": \"number\",\n \"description\": \"The - video stream's frame rate, in frames per second.\"\n }\n },\n - \ \"description\": \"Information about a video stream.\"\n },\n \"LiveStreamSnippet\": - {\n \"id\": \"LiveStreamSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The stream's title. - The value must be between 1 and 128 characters long.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The stream's description. The value cannot be - longer than 10000 characters.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that is transmitting the stream.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the stream was created.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"isDefaultStream\": {\n \"type\": \"boolean\"\n }\n - \ }\n },\n \"MembershipsLevel\": {\n \"id\": \"MembershipsLevel\",\n - \ \"type\": \"object\",\n \"description\": \"A *membershipsLevel* - resource represents an offer made by YouTube creators for their fans. Users - can become members of the channel by joining one of the available levels. - They will provide recurring monetary support and receives special benefits.\",\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the memberships level.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#membershipsLevel\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ }\n }\n },\n \"VideoContentDetails\": {\n \"properties\": - {\n \"contentRating\": {\n \"description\": \"Specifies the - ratings that the video received under various rating schemes.\",\n \"$ref\": - \"ContentRating\"\n },\n \"hasCustomThumbnail\": {\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n },\n \"definition\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"description\": \"The value of definition indicates - whether the video is available in high definition or only in standard definition.\",\n - \ \"enum\": [\n \"sd\",\n \"hd\"\n ]\n - \ },\n \"licensedContent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"The value of is_license_content indicates whether - the video is licensed content.\"\n },\n \"dimension\": {\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\",\n \"type\": \"string\"\n },\n \"regionRestriction\": - {\n \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"projection\": - {\n \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"Specifies the projection format - of the video.\",\n \"type\": \"string\"\n },\n \"caption\": - {\n \"enum\": [\n \"true\",\n \"false\"\n ],\n - \ \"description\": \"The value of captions indicates whether the video - has captions or not.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ]\n },\n \"duration\": - {\n \"description\": \"The length of the video. The tag value is - an ISO 8601 duration in the format PT#M#S, in which the letters PT indicate - that the value specifies a period of time, and the letters M and S refer to - length in minutes and seconds, respectively. The # characters preceding the - M and S letters are both integers that specify the number of minutes (or seconds) - of the video. For example, a value of PT15M51S indicates that the video is - 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n },\n - \ \"countryRestriction\": {\n \"description\": \"The countryRestriction - object contains information about the countries where a video is (or is not) - viewable.\",\n \"$ref\": \"AccessPolicy\"\n }\n },\n - \ \"description\": \"Details about the content of a YouTube Video.\",\n - \ \"id\": \"VideoContentDetails\",\n \"type\": \"object\"\n },\n - \ \"SuperChatEventListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"description\": \"A list of Super Chat purchases - that match the request criteria.\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n }\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n - \ \"default\": \"youtube#superChatEventListResponse\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n },\n \"id\": \"SuperChatEventListResponse\",\n - \ \"type\": \"object\"\n },\n \"ChannelContentOwnerDetails\": {\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\",\n \"properties\": - {\n \"contentOwner\": {\n \"description\": \"The ID of the - content owner linked to the channel.\",\n \"type\": \"string\"\n - \ },\n \"timeLinked\": {\n \"description\": \"The date - and time when the channel was linked to the content owner.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelContentOwnerDetails\"\n },\n \"PlaylistStatus\": - {\n \"type\": \"object\",\n \"properties\": {\n \"privacyStatus\": - {\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The playlist's privacy status.\",\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"PlaylistStatus\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"id\": \"ActivityContentDetailsRecommendation\",\n \"type\": - \"object\",\n \"properties\": {\n \"seedResourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The seedResourceId object contains - information about the resource that caused the recommendation.\"\n },\n - \ \"resourceId\": {\n \"description\": \"The resourceId object - contains information that identifies the recommended resource.\",\n \"$ref\": - \"ResourceId\"\n },\n \"reason\": {\n \"type\": \"string\",\n - \ \"description\": \"The reason that the resource is recommended to - the user.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ]\n }\n },\n \"description\": - \"Information that identifies the recommended resource.\"\n },\n \"SearchResultSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a search result, including title, description and thumbnails of the item referenced - by the search result.\",\n \"id\": \"SearchResultSnippet\",\n \"properties\": - {\n \"liveBroadcastContent\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"description\": \"It indicates if the resource (video - or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" - if there is not any upcoming/active live broadcasts.\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the search result.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The value that YouTube uses to uniquely - identify the channel that published the resource that the search result identifies.\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the search result. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The creation date and time of - the resource that the search result identifies.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"The title of the channel that published the resource - that the search result identifies.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"A description - of the search result.\"\n }\n }\n },\n \"VideoAbuseReport\": - {\n \"type\": \"object\",\n \"id\": \"VideoAbuseReport\",\n \"properties\": - {\n \"secondaryReasonId\": {\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\",\n \"type\": \"string\"\n },\n \"comments\": - {\n \"type\": \"string\",\n \"description\": \"Additional - comments regarding the abuse report.\"\n },\n \"videoId\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n },\n \"reasonId\": - {\n \"description\": \"The high-level, or primary, reason that the - content is abusive. The value is an abuse report reason ID.\",\n \"type\": - \"string\"\n },\n \"language\": {\n \"description\": - \"The language that the content was viewed in.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"VideoAbuseReportReasonSnippet\": {\n \"id\": - \"VideoAbuseReportReasonSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label belonging to this abuse report reason.\"\n },\n - \ \"secondaryReasons\": {\n \"description\": \"The secondary - reasons associated with this reason, if any are available. (There might be - 0 or more.)\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoAbuseReportSecondaryReason\"\n }\n }\n },\n \"description\": - \"Basic details about a video category, such as its localized title.\"\n },\n - \ \"LiveBroadcastListResponse\": {\n \"id\": \"LiveBroadcastListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"description\": \"A list of broadcasts - that match the request criteria.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveBroadcastListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n }\n }\n },\n \"SubscriptionListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"description\": \"A list of subscriptions that match the request - criteria.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Subscription\"\n }\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n \"default\": - \"youtube#subscriptionListResponse\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"SubscriptionListResponse\"\n - \ },\n \"PlaylistListResponse\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistListResponse\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"description\": \"A list of playlists that match the request - criteria\",\n \"items\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"type\": \"array\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"prevPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlistListResponse\"\n - \ }\n }\n },\n \"VideoStatus\": {\n \"description\": - \"Basic details about a video category, such as its localized title. Next - Id: 18\",\n \"properties\": {\n \"license\": {\n \"enum\": - [\n \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's privacy status.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"uploadStatus\": {\n \"enumDescriptions\": - [\n \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"description\": - \"The status of the uploaded video.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ]\n },\n \"failureReason\": {\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ],\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ],\n \"type\": - \"string\",\n \"description\": \"This value explains why a video - failed to upload. This property is only present if the uploadStatus property - indicates that the upload failed.\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"publishAt\": {\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the video is scheduled to publish. It can be set - only if the privacy status of the video is private..\"\n },\n \"rejectionReason\": - {\n \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\"\n - \ },\n \"publicStatsViewable\": {\n \"description\": - \"This value indicates if the extended video statistics on the watch page - can be viewed by everyone. Note that the view count, likes, etc will still - be visible if this is disabled. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n },\n \"madeForKids\": {\n - \ \"type\": \"boolean\"\n },\n \"embeddable\": {\n \"type\": - \"boolean\",\n \"description\": \"This value indicates if the video - can be embedded on another website. @mutable youtube.videos.insert youtube.videos.update\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoStatus\"\n - \ },\n \"ChannelSection\": {\n \"properties\": {\n \"contentDetails\": - {\n \"$ref\": \"ChannelSectionContentDetails\",\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n - \ \"description\": \"The targeting object contains basic targeting - settings about the channel section.\"\n },\n \"snippet\": {\n - \ \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"localizations\": {\n - \ \"additionalProperties\": {\n \"$ref\": \"ChannelSectionLocalization\"\n - \ },\n \"description\": \"Localizations for different languages\",\n - \ \"type\": \"object\"\n },\n \"kind\": {\n \"default\": - \"youtube#channelSection\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelSection\"\n - \ },\n \"VideoCategoryListResponse\": {\n \"id\": \"VideoCategoryListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"default\": \"youtube#videoCategoryListResponse\"\n },\n - \ \"items\": {\n \"description\": \"A list of video categories - that can be associated with YouTube videos. In this map, the video category - ID is the map key, and its value is the corresponding videoCategory resource.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoCategory\"\n }\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoGetRatingResponse\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n - \ \"default\": \"youtube#videoGetRatingResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of ratings that match the request criteria.\",\n - \ \"items\": {\n \"$ref\": \"VideoRating\"\n }\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"id\": - \"VideoGetRatingResponse\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"description\": \"Basic details about a subscription's subscriber - including title, description, channel ID and thumbnails.\",\n \"id\": - \"SubscriptionSubscriberSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the subscriber.\"\n },\n \"description\": {\n - \ \"description\": \"The description of the subscriber.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"Thumbnails for this subscriber.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The channel ID of the subscriber.\"\n }\n }\n },\n \"ThirdPartyLinkSnippet\": - {\n \"id\": \"ThirdPartyLinkSnippet\",\n \"description\": \"Basic - information about a third party account link, including its type and type-specific - information.\",\n \"type\": \"object\",\n \"properties\": {\n \"channelToStoreLink\": - {\n \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n - \ },\n \"type\": {\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A link - that is connecting (or about to connect) a channel with a store on a merchandising - platform in order to enable retail commerce capabilities for that channel - on YouTube.\"\n ],\n \"description\": \"Type of the link - named after the entities that are being linked.\"\n }\n }\n },\n - \ \"LiveChatMessage\": {\n \"id\": \"LiveChatMessage\",\n \"description\": - \"A *liveChatMessage* resource represents a chat message in a YouTube Live - Chat.\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n - \ \"default\": \"youtube#liveChatMessage\",\n \"type\": \"string\"\n - \ },\n \"authorDetails\": {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n - \ \"description\": \"The authorDetails object contains basic details - about the user that posted this message.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the message.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelAuditDetails\": {\n \"properties\": {\n \"communityGuidelinesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel respects the community guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"The auditDetails object encapsulates - channel data that is relevant for YouTube Partners during the audit process.\",\n - \ \"id\": \"ChannelAuditDetails\"\n },\n \"VideoListResponse\": - {\n \"type\": \"object\",\n \"id\": \"VideoListResponse\",\n \"properties\": - {\n \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Video\"\n }\n - \ }\n }\n },\n \"ChannelLocalization\": {\n \"type\": - \"object\",\n \"id\": \"ChannelLocalization\",\n \"description\": - \"Channel localization setting\",\n \"properties\": {\n \"title\": - {\n \"description\": \"The localized strings for channel's title.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel's - description.\"\n }\n }\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"properties\": - {\n \"memberLevelName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the Level at which the viewer is a member. This matches the - `snippet.membershipGiftingDetails.giftMembershipsLevelName` of the associated - membership gifting message. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\"\n },\n - \ \"gifterChannelId\": {\n \"description\": \"The ID of the - user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\",\n \"type\": \"string\"\n - \ },\n \"associatedMembershipGiftingMessageId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the membership gifting - message that is related to this gift membership. This ID will always refer - to a message whose type is 'membershipGiftingEvent'.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ChannelSectionSnippet\": {\n \"type\": - \"object\",\n \"id\": \"ChannelSectionSnippet\",\n \"properties\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\"\n },\n \"style\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The style of the channel section.\",\n \"enum\": - [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ],\n \"type\": \"string\"\n - \ },\n \"position\": {\n \"type\": \"integer\",\n \"description\": - \"The position of the channel section in the channel.\",\n \"format\": - \"uint32\"\n },\n \"type\": {\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"description\": \"The - type of the channel section.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"localized\": {\n \"$ref\": - \"ChannelSectionLocalization\",\n \"description\": \"Localized title, - read-only.\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel section's title for multiple_playlists - and multiple_channels.\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the channel section's default title and description.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about a channel section, including title, style and position.\"\n - \ },\n \"ActivitySnippet\": {\n \"id\": \"ActivitySnippet\",\n \"description\": - \"Basic details about an activity, including title, description, thumbnails, - activity type and group. Next ID: 12\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel associated with the activity.\"\n - \ },\n \"channelTitle\": {\n \"description\": \"Channel - title for the channel responsible for this activity\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the video was uploaded.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"description\": \"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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"title\": {\n \"description\": - \"The title of the resource primarily associated with the activity.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the resource primarily associated - with the activity. @mutable youtube.activities.insert\"\n },\n \"groupId\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"type\": {\n \"type\": \"string\",\n \"description\": - \"The type of activity that the resource describes.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n - \ \"like\",\n \"favorite\",\n \"comment\",\n - \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n - \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ]\n }\n },\n \"type\": - \"object\"\n },\n \"VideoAbuseReportSecondaryReason\": {\n \"type\": - \"object\",\n \"properties\": {\n \"label\": {\n \"type\": - \"string\",\n \"description\": \"The localized label for this abuse - report secondary reason.\"\n },\n \"id\": {\n \"description\": - \"The ID of this abuse report secondary reason.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"Activity\": {\n \"type\": \"object\",\n \"id\": \"Activity\",\n - \ \"description\": \"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.\",\n \"properties\": {\n \"contentDetails\": - {\n \"$ref\": \"ActivityContentDetails\",\n \"description\": - \"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.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#activity\"\n },\n \"snippet\": - {\n \"$ref\": \"ActivitySnippet\",\n \"description\": \"The - snippet object contains basic details about the activity, including the activity's - type and group ID.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the activity.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ActivityContentDetailsSubscription\": {\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that the user subscribed to.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsSubscription\",\n \"description\": - \"Information about a channel that a user subscribed to.\"\n },\n \"PlaylistItem\": - {\n \"type\": \"object\",\n \"description\": \"A *playlistItem* - resource identifies another resource, such as a video, that is included in - a playlist. In addition, the playlistItem resource contains details about - the included resource that pertain specifically to how that resource is used - in that playlist. YouTube uses playlists to identify special collections of - videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods. For example, if - a user gives a positive rating to a video, you would insert that video into - the liked videos playlist for that user's channel.\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist item.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#playlistItem\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#playlistItem\\\".\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"PlaylistItemContentDetails\",\n - \ \"description\": \"The contentDetails object is included in the - resource if the included item is a YouTube video. The object contains additional - information about the video.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\",\n \"$ref\": \"PlaylistItemStatus\"\n }\n },\n - \ \"id\": \"PlaylistItem\"\n },\n \"ActivityContentDetailsLike\": - {\n \"id\": \"ActivityContentDetailsLike\",\n \"description\": \"Information - about a resource that received a positive (like) rating.\",\n \"type\": - \"object\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the rated resource.\"\n }\n }\n },\n - \ \"ChannelConversionPing\": {\n \"description\": \"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.\",\n - \ \"id\": \"ChannelConversionPing\",\n \"type\": \"object\",\n \"properties\": - {\n \"context\": {\n \"enum\": [\n \"subscribe\",\n - \ \"unsubscribe\",\n \"cview\"\n ],\n \"description\": - \"Defines the context of the ping.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"conversionUrl\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n }\n },\n \"ActivityContentDetails\": {\n \"description\": - \"Details about the content of an activity: the video that was shared, the - channel that was subscribed to, etc.\",\n \"type\": \"object\",\n \"properties\": - {\n \"social\": {\n \"description\": \"The social object contains - details about a social network post. This property is only present if the - snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ },\n \"favorite\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsFavorite\"\n },\n \"subscription\": - {\n \"description\": \"The subscription object contains information - about a channel that a user subscribed to. This property is only present if - the snippet.type is subscription.\",\n \"$ref\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\"\n },\n \"like\": {\n \"description\": - \"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.\",\n - \ \"$ref\": \"ActivityContentDetailsLike\"\n },\n \"upload\": - {\n \"$ref\": \"ActivityContentDetailsUpload\",\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\"\n },\n \"playlistItem\": - {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"The playlistItem object contains information about a new playlist item. - This property is only present if the snippet.type is playlistItem.\"\n },\n - \ \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n },\n \"promotedItem\": {\n \"$ref\": - \"ActivityContentDetailsPromotedItem\",\n \"description\": \"The - promotedItem object contains details about a resource which is being promoted. - This property is only present if the snippet.type is promotedItem.\"\n },\n - \ \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"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.\"\n }\n },\n \"id\": \"ActivityContentDetails\"\n - \ },\n \"CommentThread\": {\n \"id\": \"CommentThread\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n - \ },\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n - \ \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\",\n - \ \"default\": \"youtube#commentThread\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the comment thread.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"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.\"\n },\n - \ \"VideoCategorySnippet\": {\n \"id\": \"VideoCategorySnippet\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"assignable\": {\n \"type\": \"boolean\"\n },\n \"title\": - {\n \"description\": \"The video category's title.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The YouTube channel that created the video category.\",\n \"default\": - \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"ChannelListResponse\": {\n \"properties\": {\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Channel\"\n - \ },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n - \ \"default\": \"youtube#channelListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelListResponse\"\n - \ },\n \"VideoSuggestions\": {\n \"description\": \"Specifies suggestions - on how to improve video content, including encoding hints, tag suggestions, - and editor suggestions.\",\n \"type\": \"object\",\n \"properties\": - {\n \"tagSuggestions\": {\n \"description\": \"A list of keyword - tags that could be added to the video's metadata to increase the likelihood - that users will locate your video when searching or browsing on YouTube.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoSuggestionsTagSuggestion\"\n }\n },\n \"processingErrors\": - {\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"audioFile\",\n \"imageFile\",\n \"projectFile\",\n - \ \"notAVideoFile\",\n \"docFile\",\n \"archiveFile\",\n - \ \"unsupportedSpatialAudioLayout\"\n ],\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ]\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of errors that will prevent YouTube from - successfully processing the uploaded video video. These errors indicate that, - regardless of the video's current processing status, eventually, that status - will almost certainly be failed.\"\n },\n \"editorSuggestions\": - {\n \"type\": \"array\",\n \"description\": \"A list of - video editing operations that might improve the video quality or playback - experience of the uploaded video.\",\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ],\n - \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ]\n - \ }\n },\n \"processingWarnings\": {\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\",\n \"items\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ],\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ]\n },\n \"type\": - \"array\"\n },\n \"processingHints\": {\n \"description\": - \"A list of suggestions that may improve YouTube's ability to process the - video.\",\n \"items\": {\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ]\n - \ },\n \"type\": \"array\"\n }\n },\n \"id\": - \"VideoSuggestions\"\n },\n \"VideoTopicDetails\": {\n \"properties\": - {\n \"relevantTopicIds\": {\n \"type\": \"array\",\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"topicCategories\": {\n \"type\": \"array\",\n \"description\": - \"A list of Wikipedia URLs that provide a high-level description of the video's - content.\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"topicIds\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Freebase topic information related to the video.\",\n \"id\": \"VideoTopicDetails\"\n - \ },\n \"TestItem\": {\n \"id\": \"TestItem\",\n \"type\": - \"object\",\n \"properties\": {\n \"id\": {\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ },\n \"gaia\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n }\n }\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatMessageDeletedDetails\"\n },\n \"LiveStream\": {\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the stream, including its channel, title, and - description.\",\n \"$ref\": \"LiveStreamSnippet\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#liveStream\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveStream\\\".\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the stream.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"contentDetails\": {\n \"$ref\": - \"LiveStreamContentDetails\",\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about live stream's status.\",\n - \ \"$ref\": \"LiveStreamStatus\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"cdn\": {\n \"$ref\": \"CdnSettings\",\n - \ \"description\": \"The cdn object defines the live stream's content - delivery network (CDN) settings. These settings provide details about the - manner in which you stream your content to YouTube.\"\n }\n },\n - \ \"id\": \"LiveStream\",\n \"type\": \"object\",\n \"description\": - \"A live stream describes a live ingestion point.\"\n },\n \"ThirdPartyLinkStatus\": - {\n \"properties\": {\n \"linkStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"unknown\",\n \"failed\",\n - \ \"pending\",\n \"linked\"\n ],\n \"type\": - \"string\"\n }\n },\n \"description\": \"The third-party - link status object contains information about the status of the link.\",\n - \ \"type\": \"object\",\n \"id\": \"ThirdPartyLinkStatus\"\n },\n - \ \"LiveChatUserBannedMessageDetails\": {\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"banType\": - {\n \"description\": \"The type of ban.\",\n \"enum\": [\n - \ \"permanent\",\n \"temporary\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"bannedUserDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"The details of the - user that was banned.\"\n },\n \"banDurationSeconds\": {\n \"description\": - \"The duration of the ban. This property is only present if the banType is - temporary.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"AccessPolicy\": {\n \"type\": \"object\",\n - \ \"id\": \"AccessPolicy\",\n \"properties\": {\n \"allowed\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of allowed indicates whether the access to the policy is allowed or denied - by default.\"\n },\n \"exception\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of region codes that identify countries - where the default policy do not apply.\"\n }\n },\n \"description\": - \"Rights management policy for YouTube resources.\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"description\": \"Information about a video that was marked as a - favorite video.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsFavorite\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n - \ }\n },\n \"VideoAgeGating\": {\n \"properties\": {\n \"alcoholContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether or not the video has alcoholic beverage content. Only users of legal - purchasing age in a particular country, as identified by ICAP, can view the - content.\"\n },\n \"videoGameRating\": {\n \"enum\": - [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"Video game rating, if any.\",\n - \ \"type\": \"string\"\n },\n \"restricted\": {\n \"type\": - \"boolean\",\n \"description\": \"Age-restricted trailers. For redband - trailers and adult-rated video-games. Only users aged 18+ can view the content. - The the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\"\n }\n },\n \"id\": \"VideoAgeGating\",\n - \ \"type\": \"object\"\n },\n \"LocalizedProperty\": {\n \"id\": - \"LocalizedProperty\",\n \"properties\": {\n \"localized\": {\n - \ \"items\": {\n \"$ref\": \"LocalizedString\"\n },\n - \ \"type\": \"array\"\n },\n \"default\": {\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"$ref\": - \"LanguageTag\",\n \"description\": \"The language of the default - property.\"\n }\n },\n \"type\": \"object\"\n },\n \"SearchListResponse\": - {\n \"type\": \"object\",\n \"id\": \"SearchListResponse\",\n \"properties\": - {\n \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"regionCode\": {\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"Pagination - information for token pagination.\",\n \"items\": {\n \"$ref\": - \"SearchResult\"\n }\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#searchListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#searchListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"PropertyValue\": {\n \"id\": \"PropertyValue\",\n - \ \"description\": \"A pair Property / Value.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"property\": {\n \"description\": - \"A property.\",\n \"type\": \"string\"\n },\n \"value\": - {\n \"type\": \"string\",\n \"description\": \"The property's - value.\"\n }\n }\n },\n \"ChannelSectionTargeting\": {\n - \ \"id\": \"ChannelSectionTargeting\",\n \"properties\": {\n \"countries\": - {\n \"description\": \"The country the channel section is targeting.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"regions\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The region the channel - section is targeting.\",\n \"type\": \"array\"\n },\n \"languages\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The language the channel section is targeting.\",\n - \ \"type\": \"array\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"ChannelSection targeting setting.\"\n },\n \"ChannelStatistics\": - {\n \"description\": \"Statistics about a channel: number of subscribers, - number of videos in the channel, etc.\",\n \"type\": \"object\",\n \"properties\": - {\n \"hiddenSubscriberCount\": {\n \"description\": \"Whether - or not the number of subscribers is shown for this user.\",\n \"type\": - \"boolean\"\n },\n \"commentCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of comments for the channel.\"\n },\n \"subscriberCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of subscribers that the channel has.\",\n \"type\": \"string\"\n - \ },\n \"videoCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of videos uploaded to the channel.\",\n \"format\": - \"uint64\"\n },\n \"viewCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of times the channel has been viewed.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ChannelStatistics\"\n - \ },\n \"VideoProjectDetails\": {\n \"description\": \"DEPRECATED. - b/157517979: This part was never populated after it was added. However, it - sees non-zero traffic because there is generated client code in the wild that - refers to it [1]. We keep this field and do NOT remove it because otherwise - V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"type\": \"object\",\n \"properties\": {},\n \"id\": \"VideoProjectDetails\"\n - \ },\n \"LiveChatSuperStickerDetails\": {\n \"id\": \"LiveChatSuperStickerDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"amountMicros\": {\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"tier\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"superStickerMetadata\": {\n \"$ref\": \"SuperStickerMetadata\",\n - \ \"description\": \"Information about the Super Sticker.\"\n }\n - \ }\n },\n \"ResourceId\": {\n \"type\": \"object\",\n \"description\": - \"A resource id is a generic reference that points to another YouTube resource.\",\n - \ \"id\": \"ResourceId\",\n \"properties\": {\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the referred resource, if that resource is a channel. This property is only - present if the resourceId.kind value is youtube#channel.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"The type of the API resource.\"\n },\n - \ \"playlistId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a playlist. - This property is only present if the resourceId.kind value is youtube#playlist.\",\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"ChannelSectionLocalization\": {\n \"id\": \"ChannelSectionLocalization\",\n - \ \"properties\": {\n \"title\": {\n \"description\": - \"The localized strings for channel section's title.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"ChannelSection localization setting\"\n },\n \"RelatedEntity\": {\n - \ \"properties\": {\n \"entity\": {\n \"$ref\": \"Entity\"\n - \ }\n },\n \"id\": \"RelatedEntity\",\n \"type\": \"object\"\n - \ },\n \"Comment\": {\n \"description\": \"A *comment* represents - a single YouTube comment.\",\n \"id\": \"Comment\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment.\",\n \"$ref\": - \"CommentSnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#comment\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#comment\\\".\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the comment.\"\n }\n }\n },\n \"Caption\": {\n - \ \"type\": \"object\",\n \"id\": \"Caption\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the caption track.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n \"default\": - \"youtube#caption\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"A *caption* resource represents a YouTube caption - track. A caption track is associated with exactly one YouTube video.\"\n },\n - \ \"ActivityListResponse\": {\n \"properties\": {\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Activity\"\n },\n \"type\": \"array\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n - \ \"description\": \"General pagination information.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#activityListResponse\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivityListResponse\"\n - \ },\n \"Video\": {\n \"id\": \"Video\",\n \"properties\": - {\n \"recordingDetails\": {\n \"description\": \"The recordingDetails - object encapsulates information about the location, date and address where - the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"projectDetails\": {\n \"$ref\": \"VideoProjectDetails\",\n - \ \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains information about the video content, including - the length of the video and its aspect ratio.\",\n \"$ref\": \"VideoContentDetails\"\n - \ },\n \"ageGating\": {\n \"description\": \"Age restriction - details related to a video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoAgeGating\"\n },\n \"status\": {\n - \ \"$ref\": \"VideoStatus\",\n \"description\": \"The status - object contains information about the video's uploading, processing, and privacy - statuses.\"\n },\n \"suggestions\": {\n \"description\": - \"The suggestions object encapsulates suggestions that identify opportunities - to improve the video quality or the metadata for the uploaded video. This - data can only be retrieved by the video owner.\",\n \"$ref\": \"VideoSuggestions\"\n - \ },\n \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video, such as its title, description, and category.\"\n },\n \"processingDetails\": - {\n \"$ref\": \"VideoProcessingDetails\",\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\"\n - \ },\n \"monetizationDetails\": {\n \"$ref\": \"VideoMonetizationDetails\",\n - \ \"description\": \"The monetizationDetails object encapsulates information - about the monetization status of the video.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"localizations\": {\n \"type\": - \"object\",\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\",\n \"additionalProperties\": {\n \"$ref\": - \"VideoLocalization\"\n }\n },\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"player\": {\n - \ \"$ref\": \"VideoPlayer\",\n \"description\": \"The player - object contains information that you would use to play the video in an embedded - player.\"\n },\n \"kind\": {\n \"default\": \"youtube#video\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#video\\\".\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n }\n },\n \"fileDetails\": {\n \"description\": - \"The fileDetails object encapsulates information about the video file that - was uploaded to YouTube, including the file's resolution, duration, audio - and video codecs, stream bitrates, and more. This data can only be retrieved - by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n },\n - \ \"topicDetails\": {\n \"description\": \"The topicDetails - object encapsulates information about Freebase topics associated with the - video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n \"statistics\": - {\n \"description\": \"The statistics object contains statistics - about the video.\",\n \"$ref\": \"VideoStatistics\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A *video* - resource represents a YouTube video.\"\n },\n \"ActivityContentDetailsComment\": - {\n \"type\": \"object\",\n \"description\": \"Information about - a resource that received a comment.\",\n \"id\": \"ActivityContentDetailsComment\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource associated with the comment.\"\n }\n }\n - \ },\n \"VideoLocalization\": {\n \"id\": \"VideoLocalization\",\n - \ \"type\": \"object\",\n \"description\": \"Localized versions of - certain video properties (e.g. title).\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's description.\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"Localized version - of the video's title.\"\n }\n }\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"retractedMessageId\": - {\n \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"MembershipsDuration\": {\n \"id\": \"MembershipsDuration\",\n - \ \"properties\": {\n \"memberTotalDurationMonths\": {\n \"description\": - \"The cumulative time the user has been a member across all levels in complete - months (the time is rounded down to the nearest integer).\",\n \"type\": - \"integer\",\n \"format\": \"int32\"\n },\n \"memberSince\": - {\n \"description\": \"The date and time when the user became a continuous - member across all levels.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ChannelTopicDetails\": - {\n \"type\": \"object\",\n \"id\": \"ChannelTopicDetails\",\n \"properties\": - {\n \"topicIds\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of Freebase - topic IDs associated with the channel. You can retrieve information about - each topic using the Freebase Topic API.\",\n \"type\": \"array\"\n - \ },\n \"topicCategories\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\"\n }\n - \ },\n \"description\": \"Freebase topic information related to the - channel.\"\n },\n \"SuperStickerMetadata\": {\n \"id\": \"SuperStickerMetadata\",\n - \ \"properties\": {\n \"altTextLanguage\": {\n \"description\": - \"Specifies the localization language in which the alt text is returned.\",\n - \ \"type\": \"string\"\n },\n \"stickerId\": {\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\",\n - \ \"type\": \"string\"\n },\n \"altText\": {\n \"type\": - \"string\",\n \"description\": \"Internationalized alt text that - describes the sticker image and any animation associated with it.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"CommentThreadReplies\": - {\n \"type\": \"object\",\n \"description\": \"Comments written - in (direct or indirect) reply to the top level comment.\",\n \"id\": - \"CommentThreadReplies\",\n \"properties\": {\n \"comments\": - {\n \"description\": \"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.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Comment\"\n }\n - \ }\n }\n },\n \"LiveChatSuperChatDetails\": {\n \"properties\": - {\n \"amountMicros\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The amount purchased by the user, - in micros (1,750,000 micros = 1.75).\"\n },\n \"tier\": {\n - \ \"description\": \"The tier in which the amount belongs. Lower amounts - belong to lower tiers. The lowest tier is 1.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the user to this Super Chat event.\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LiveChatSuperChatDetails\",\n \"type\": \"object\"\n - \ },\n \"ChannelStatus\": {\n \"id\": \"ChannelStatus\",\n \"description\": - \"JSON template for the status part of a channel.\",\n \"properties\": - {\n \"madeForKids\": {\n \"type\": \"boolean\"\n },\n - \ \"privacyStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"description\": \"Privacy status of the channel.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"isLinked\": {\n \"type\": - \"boolean\",\n \"description\": \"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.\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"longUploadsStatus\": - {\n \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LocalizedString\": - {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ },\n \"language\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LocalizedString\"\n - \ },\n \"VideoProcessingDetails\": {\n \"properties\": {\n \"tagSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether keyword (tag) suggestions are available for the video. Tags - can be added to a video's metadata to make it easier for other users to find - the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"fileDetailsAvailability\": - {\n \"description\": \"This value indicates whether file details - are available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"editorSuggestionsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether video - editing suggestions, which might improve video quality or the playback experience, - are available for the video. You can retrieve these suggestions by requesting - the suggestions part in your videos.list() request.\"\n },\n \"processingIssuesAvailability\": - {\n \"description\": \"This value indicates whether the video processing - engine has generated suggestions that might improve YouTube's ability to process - the the video, warnings that explain video processing problems, or errors - that cause video processing problems. You can retrieve these suggestions by - requesting the suggestions part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingFailureReason\": {\n \"enum\": - [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The reason that YouTube failed - to process the video. This property will only have a value if the processingStatus - property's value is failed.\"\n },\n \"processingStatus\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\",\n \"enum\": - [\n \"processing\",\n \"succeeded\",\n \"failed\",\n - \ \"terminated\"\n ],\n \"type\": \"string\"\n - \ },\n \"thumbnailsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\"\n },\n \"processingProgress\": - {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\"\n }\n },\n \"description\": - \"Describes processing status and progress and availability of some other - Video resource parts.\",\n \"type\": \"object\",\n \"id\": \"VideoProcessingDetails\"\n - \ },\n \"LiveChatTextMessageDetails\": {\n \"id\": \"LiveChatTextMessageDetails\",\n - \ \"properties\": {\n \"messageText\": {\n \"description\": - \"The user's message.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"CommentListResponse\": {\n \"properties\": - {\n \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n - \ \"default\": \"youtube#commentListResponse\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Comment\"\n },\n - \ \"description\": \"A list of comments that match the request criteria.\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"eventId\": {\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"CommentListResponse\",\n - \ \"type\": \"object\"\n },\n \"IngestionInfo\": {\n \"type\": - \"object\",\n \"properties\": {\n \"streamName\": {\n \"description\": - \"The stream name that YouTube assigns to the video stream.\",\n \"type\": - \"string\"\n },\n \"backupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The backup ingestion URL that you - should use to stream video to YouTube. You have the option of simultaneously - streaming the content that you are sending to the ingestionAddress to this - URL.\"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of backupIngestionAddress in order to stream via RTMPS. Not applicable to - non-RTMP streams.\"\n },\n \"rtmpsIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of ingestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ },\n \"ingestionAddress\": {\n \"type\": \"string\",\n - \ \"description\": \"The primary ingestion URL that you should use - to stream video to YouTube. You must stream video to this URL. Depending on - which application or tool you use to encode your video stream, you may need - to enter the stream URL and stream name separately or you may need to concatenate - them in the following format: *STREAM_URL/STREAM_NAME* \"\n }\n },\n - \ \"description\": \"Describes information necessary for ingesting an - RTMP, HTTP, or SRT stream.\",\n \"id\": \"IngestionInfo\"\n },\n \"VideoLiveStreamingDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"actualStartTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\"\n },\n - \ \"concurrentViewers\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\"\n },\n \"scheduledStartTime\": {\n \"description\": - \"The time that the broadcast is scheduled to begin.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"activeLiveChatId\": - {\n \"description\": \"The ID of the currently active live chat attached - to this video. This field is filled only if the video is a currently live - broadcast that has live chat. Once the broadcast transitions to complete this - field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\",\n \"type\": \"string\"\n - \ },\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast is scheduled to end. - If the value is empty or the property is not present, then the broadcast is - scheduled to contiue indefinitely.\",\n \"type\": \"string\"\n },\n - \ \"actualEndTime\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The time that the broadcast actually - ended. This value will not be available until the broadcast is over.\"\n }\n - \ },\n \"id\": \"VideoLiveStreamingDetails\",\n \"description\": - \"Details about the live streaming metadata.\"\n },\n \"LiveChatMessageSnippet\": - {\n \"description\": \"Next ID: 33\",\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"messageRetractedDetails\": {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"displayMessage\": {\n \"description\": \"Contains - a string that can be displayed to the user. If this field is not present the - message is silent, at the moment only messages of type TOMBSTONE and CHAT_ENDED_EVENT - are silent.\",\n \"type\": \"string\"\n },\n \"textMessageDetails\": - {\n \"$ref\": \"LiveChatTextMessageDetails\",\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\"\n },\n - \ \"membershipGiftingDetails\": {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n - \ \"description\": \"Details about the Membership Gifting event, this - is only set if the type is 'membershipGiftingEvent'.\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"superStickerDetails\": - {\n \"description\": \"Details about the Super Sticker event, this - is only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"hasDisplayContent\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the message has display content that - should be displayed to users.\"\n },\n \"memberMilestoneChatDetails\": - {\n \"description\": \"Details about the Member Milestone Chat event, - this is only set if the type is 'memberMilestoneChatEvent'.\",\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"authorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the user that authored this message, this field is not always filled. textMessageEvent - - the user that wrote the message fanFundingEvent - the user that funded the - broadcast newSponsorEvent - the user that just became a sponsor memberMilestoneChatEvent - - the member that sent the message membershipGiftingEvent - the user that - made the purchase giftMembershipReceivedEvent - the user that received the - gift membership messageDeletedEvent - the moderator that took the action messageRetractedEvent - - the author that retracted their message userBannedEvent - the moderator - that took the action superChatEvent - the user that made the purchase superStickerEvent - - the user that made the purchase\"\n },\n \"type\": {\n \"enum\": - [\n \"invalidType\",\n \"textMessageEvent\",\n \"tombstone\",\n - \ \"fanFundingEvent\",\n \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\"\n },\n \"superChatDetails\": - {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"fanFundingEventDetails\": {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n - \ \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the message was orignally - published.\"\n },\n \"newSponsorDetails\": {\n \"description\": - \"Details about the New Member Announcement event, this is only set if the - type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term - for \\\"sponsor\\\".\",\n \"$ref\": \"LiveChatNewSponsorDetails\"\n - \ }\n }\n },\n \"VideoAbuseReportReason\": {\n \"description\": - \"A `__videoAbuseReportReason__` resource identifies a reason that a video - could be reported as abusive. Video abuse report reasons are used with `video.ReportAbuse`.\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"VideoAbuseReportReasonSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the abuse report reason.\"\n },\n \"id\": {\n \"description\": - \"The ID of this abuse report reason.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#videoAbuseReportReason\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n }\n },\n - \ \"id\": \"VideoAbuseReportReason\",\n \"type\": \"object\"\n },\n - \ \"ChannelContentDetails\": {\n \"properties\": {\n \"relatedPlaylists\": - {\n \"type\": \"object\",\n \"properties\": {\n \"likes\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"uploads\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s uploaded videos. Use - the videos.insert method to upload new videos and the videos.delete method - to delete previously uploaded videos.\",\n \"type\": \"string\"\n - \ },\n \"watchLater\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s watch later playlist. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\"\n },\n \"favorites\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s favorite videos. Use the - playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"watchHistory\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n }\n }\n - \ }\n },\n \"description\": \"Details about the content of - a channel.\",\n \"type\": \"object\",\n \"id\": \"ChannelContentDetails\"\n - \ },\n \"CdnSettings\": {\n \"type\": \"object\",\n \"description\": - \"Brief description of the live stream cdn settings.\",\n \"properties\": - {\n \"frameRate\": {\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"description\": - \"The frame rate of the inbound video data.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"ingestionInfo\": {\n - \ \"description\": \"The ingestionInfo object contains information - that YouTube provides that you need to transmit your RTMP or HTTP stream to - YouTube.\",\n \"$ref\": \"IngestionInfo\"\n },\n \"format\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The format of the video stream that you are sending - to Youtube. \",\n \"type\": \"string\"\n },\n \"resolution\": - {\n \"description\": \"The resolution of the inbound video data.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ]\n },\n \"ingestionType\": {\n \"description\": - \" The method or protocol used to transmit the video stream.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"enum\": [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"id\": \"CdnSettings\"\n },\n \"LiveChatModerator\": - {\n \"type\": \"object\",\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"LiveChatModeratorSnippet\",\n \"description\": - \"The snippet object contains basic details about the moderator.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"default\": \"youtube#liveChatModerator\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube assigns to uniquely identify - the moderator.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"A *liveChatModerator* resource represents a moderator for a YouTube live - chat. A chat moderator has the ability to ban/unban users from a chat, remove - message, etc.\",\n \"id\": \"LiveChatModerator\"\n }\n },\n \"documentationLink\": - \"https://developers.google.com/youtube/\",\n \"discoveryVersion\": \"v1\",\n - \ \"id\": \"youtube:v3\",\n \"ownerName\": \"Google\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"batchPath\": \"batch\",\n \"basePath\": \"\",\n \"parameters\": {\n - \ \"key\": {\n \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"quotaUser\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"access_token\": - {\n \"description\": \"OAuth access token.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"uploadType\": {\n \"type\": - \"string\",\n \"description\": \"Legacy upload protocol for media (e.g. - \\\"media\\\", \\\"multipart\\\").\",\n \"location\": \"query\"\n },\n - \ \"fields\": {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Selector specifying which fields to include in a - partial response.\"\n },\n \"oauth_token\": {\n \"location\": \"query\",\n - \ \"description\": \"OAuth 2.0 token for the current user.\",\n \"type\": - \"string\"\n },\n \"upload_protocol\": {\n \"description\": \"Upload - protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"callback\": {\n \"type\": - \"string\",\n \"description\": \"JSONP\",\n \"location\": \"query\"\n - \ },\n \"prettyPrint\": {\n \"type\": \"boolean\",\n \"location\": - \"query\",\n \"default\": \"true\",\n \"description\": \"Returns - response with indentations and line breaks.\"\n },\n \"alt\": {\n \"type\": - \"string\",\n \"description\": \"Data format for response.\",\n \"location\": - \"query\",\n \"enum\": [\n \"json\",\n \"media\",\n \"proto\"\n - \ ],\n \"enumDescriptions\": [\n \"Responses with Content-Type - of application/json\",\n \"Media download with context-dependent Content-Type\",\n - \ \"Responses with Content-Type of application/x-protobuf\"\n ],\n - \ \"default\": \"json\"\n },\n \"$.xgafv\": {\n \"enumDescriptions\": - [\n \"v1 error format\",\n \"v2 error format\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"1\",\n \"2\"\n ],\n - \ \"description\": \"V1 error format.\",\n \"location\": \"query\"\n - \ }\n },\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"title\": \"YouTube Data API v3\",\n \"servicePath\": \"\",\n \"auth\": - {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube\": {\n \"description\": - \"Manage your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n }\n - \ }\n }\n },\n \"description\": \"The YouTube Data API v3 is an API - that provides access to YouTube data, such as videos, playlists, and channels.\",\n - \ \"baseUrl\": \"https://youtube.googleapis.com/\",\n \"revision\": \"20230220\",\n - \ \"fullyEncodeReservedExpansion\": true,\n \"name\": \"youtube\",\n \"icons\": - {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ }\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:42 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UC6numUqNJPlEM0H9-yL2KLA&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"HOia-7JnZovsE07g04etmMXAWjM\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"Jyv4w87EwE9G9XZpzbLzIvnUQ70\",\n \"id\": \"UC6numUqNJPlEM0H9-yL2KLA\",\n - \ \"snippet\": {\n \"title\": \"\u042F\u0437\u044B\u043A\u0438 - \u043F\u0441\u0438\u0445\u0438\u0430\u0442\u0440\u0438\u0438\",\n \"description\": - \"\",\n \"customUrl\": \"@languages_of_psychiatry\",\n \"publishedAt\": - \"2019-03-12T16:39:23Z\",\n \"thumbnails\": {\n \"default\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJXdFuR94Si1d_nFLSw6jSVXthCYeQJ5mtEsI_e8=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJXdFuR94Si1d_nFLSw6jSVXthCYeQJ5mtEsI_e8=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJXdFuR94Si1d_nFLSw6jSVXthCYeQJ5mtEsI_e8=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"\u042F\u0437\u044B\u043A\u0438 - \u043F\u0441\u0438\u0445\u0438\u0430\u0442\u0440\u0438\u0438\",\n \"description\": - \"\"\n },\n \"country\": \"RU\"\n },\n \"brandingSettings\": - {\n \"channel\": {\n \"title\": \"\u042F\u0437\u044B\u043A\u0438 - \u043F\u0441\u0438\u0445\u0438\u0430\u0442\u0440\u0438\u0438\",\n \"keywords\": - \"\u043F\u0441\u0438\u0445\u0438\u0430\u0442\u0440\u0438\u044F\",\n \"country\": - \"RU\"\n }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:42 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"name\": \"youtube\",\n \"kind\": \"discovery#restDescription\",\n \"ownerDomain\": - \"google.com\",\n \"protocol\": \"rest\",\n \"batchPath\": \"batch\",\n - \ \"basePath\": \"\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"ownerName\": \"Google\",\n \"resources\": {\n \"thirdPartyLinks\": - {\n \"methods\": {\n \"insert\": {\n \"response\": {\n - \ \"$ref\": \"ThirdPartyLink\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - request and response will include. Supported values are linkingToken, status, - and snippet.\",\n \"required\": true\n }\n },\n - \ \"id\": \"youtube.thirdPartyLinks.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\"\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API response will include. Supported values are linkingToken, status, and - snippet.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"description\": - \"Get a third party link of the given type.\",\n \"location\": - \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"type\": - \"string\"\n },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"linkingToken\": - {\n \"description\": \"Get a third party link with the given - linking token.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.thirdPartyLinks.list\",\n - \ \"httpMethod\": \"GET\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n },\n \"delete\": - {\n \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n \"id\": - \"youtube.thirdPartyLinks.delete\",\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"linkingToken\": {\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"externalChannelId\": {\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"Do not use. Required for compatibility.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"type\": {\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"description\": \"Type of the link to be - deleted.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ]\n - \ }\n },\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ]\n },\n \"update\": {\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"PUT\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"The *part* parameter specifies the thirdPartyLink resource parts that the - API request and response will include. Supported values are linkingToken, - status, and snippet.\",\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"externalChannelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n }\n - \ },\n \"id\": \"youtube.thirdPartyLinks.update\",\n \"request\": - {\n \"$ref\": \"ThirdPartyLink\"\n }\n }\n }\n - \ },\n \"members\": {\n \"methods\": {\n \"list\": {\n \"path\": - \"youtube/v3/members\",\n \"parameters\": {\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"hasAccessToLevel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n },\n \"mode\": - {\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - only members that joined after the first call with this mode was made.\",\n - \ \"Return all current members, from newest to oldest.\"\n ],\n - \ \"description\": \"Parameter that specifies which channel members - to return.\",\n \"location\": \"query\",\n \"default\": - \"all_current\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"1000\",\n - \ \"type\": \"integer\"\n },\n \"filterByMemberChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Comma separated list of channel IDs. Only data about members that are part - of this list will be included in the response.\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"id\": \"youtube.members.list\",\n \"description\": - \"Retrieves a list of members that match the request criteria for a channel.\",\n - \ \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ },\n \"flatPath\": \"youtube/v3/members\"\n }\n - \ }\n },\n \"watermarks\": {\n \"methods\": {\n \"set\": - {\n \"path\": \"youtube/v3/watermarks/set\",\n \"parameters\": - {\n \"channelId\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"id\": \"youtube.watermarks.set\",\n - \ \"description\": \"Allows upload of watermark image and setting - it for a channel.\",\n \"httpMethod\": \"POST\",\n \"supportsMediaUpload\": - true,\n \"request\": {\n \"$ref\": \"InvideoBranding\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"10485760\"\n },\n \"flatPath\": - \"youtube/v3/watermarks/set\"\n },\n \"unset\": {\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.watermarks.unset\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Allows removal of channel watermark.\",\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/watermarks/unset\"\n }\n - \ }\n },\n \"i18nRegions\": {\n \"methods\": {\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.i18nRegions.list\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"The *part* parameter specifies the i18nRegion resource properties that the - API response will include. Set the parameter value to snippet.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n },\n \"hl\": {\n \"default\": \"en_US\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"I18nRegionListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/i18nRegions\",\n \"path\": \"youtube/v3/i18nRegions\"\n - \ }\n }\n },\n \"liveChatModerators\": {\n \"methods\": - {\n \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"id\": \"youtube.liveChatModerators.delete\",\n \"httpMethod\": - \"DELETE\",\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"description\": \"Deletes a - chat moderator.\"\n },\n \"list\": {\n \"parameters\": - {\n \"maxResults\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"minimum\": \"0\",\n \"default\": - \"5\"\n },\n \"liveChatId\": {\n \"required\": - true,\n \"description\": \"The id of the live chat for which - moderators should be returned.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"GET\",\n \"response\": {\n \"$ref\": - \"LiveChatModeratorListResponse\"\n },\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"id\": - \"youtube.liveChatModerators.list\",\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n },\n \"insert\": - {\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"request\": {\n \"$ref\": \"LiveChatModerator\"\n },\n - \ \"flatPath\": \"youtube/v3/liveChat/moderators\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.liveChatModerators.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"LiveChatModerator\"\n }\n }\n }\n - \ },\n \"playlistItems\": {\n \"methods\": {\n \"insert\": - {\n \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"POST\",\n \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.playlistItems.insert\",\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true\n }\n }\n },\n - \ \"update\": {\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"request\": {\n - \ \"$ref\": \"PlaylistItem\"\n },\n \"id\": \"youtube.playlistItems.update\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"description\": \"Updates an existing - resource.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"response\": {\n \"$ref\": \"PlaylistItem\"\n }\n - \ },\n \"delete\": {\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"description\": \"Deletes - a resource.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.delete\",\n \"path\": - \"youtube/v3/playlistItems\",\n \"httpMethod\": \"DELETE\"\n },\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.playlistItems.list\",\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItemListResponse\"\n },\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"playlistId\": - {\n \"description\": \"Return the playlist items within the given - playlist.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"50\",\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"format\": \"uint32\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"location\": - \"query\",\n \"description\": \"Return the playlist items associated - with the given video ID.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ }\n }\n },\n \"activities\": {\n \"methods\": {\n - \ \"list\": {\n \"parameters\": {\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"maximum\": \"50\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true\n },\n \"home\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"publishedAfter\": - {\n \"location\": \"query\",\n \"format\": \"google-datetime\",\n - \ \"type\": \"string\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"publishedBefore\": - {\n \"type\": \"string\",\n \"format\": \"google-datetime\",\n - \ \"location\": \"query\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"ActivityListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.activities.list\",\n \"path\": - \"youtube/v3/activities\",\n \"flatPath\": \"youtube/v3/activities\",\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"youtube\": - {\n \"resources\": {\n \"v3\": {\n \"methods\": {\n \"updateCommentThreads\": - {\n \"path\": \"youtube/v3/commentThreads\",\n \"parameterOrder\": - [],\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"CommentThread\"\n },\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n - \ }\n }\n }\n }\n }\n },\n - \ \"liveChatMessages\": {\n \"methods\": {\n \"delete\": {\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/messages\",\n \"id\": - \"youtube.liveChatMessages.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"description\": \"Deletes a chat message.\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"list\": {\n \"parameters\": {\n \"liveChatId\": - {\n \"required\": true,\n \"description\": \"The - id of the live chat for which comments should be returned.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the liveChatComment - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"minimum\": \"200\",\n \"maximum\": - \"2000\",\n \"default\": \"500\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"hl\": {\n - \ \"description\": \"Specifies the localization language in which - the system messages should be returned.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n - \ },\n \"profileImageSize\": {\n \"description\": - \"Specifies the size of the profile image that should be returned for each - user.\",\n \"location\": \"query\",\n \"maximum\": - \"720\",\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"minimum\": \"16\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"id\": \"youtube.liveChatMessages.list\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"liveChatId\",\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"httpMethod\": \"GET\"\n },\n \"insert\": - {\n \"request\": {\n \"$ref\": \"LiveChatMessage\"\n },\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/messages\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.liveChatMessages.insert\",\n - \ \"response\": {\n \"$ref\": \"LiveChatMessage\"\n }\n - \ }\n }\n },\n \"liveChatBans\": {\n \"methods\": {\n - \ \"delete\": {\n \"parameters\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"description\": - \"Deletes a chat ban.\",\n \"httpMethod\": \"DELETE\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveChatBans.delete\"\n },\n - \ \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"request\": - {\n \"$ref\": \"LiveChatBan\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\"\n - \ }\n }\n },\n \"comments\": {\n \"methods\": {\n \"list\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"CommentListResponse\"\n },\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - a comma-separated list of one or more comment resource properties that the - API response will include.\",\n \"required\": true,\n \"repeated\": - true\n },\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"20\",\n \"maximum\": \"100\",\n - \ \"type\": \"integer\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\"\n },\n \"parentId\": - {\n \"description\": \"Returns replies to the specified comment. - Note, currently YouTube features only one level of replies (ie replies to - top level comments). However replies to replies may be supported in the future.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Returns the comments with the given IDs for - One Platform.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"textFormat\": - {\n \"default\": \"html\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"The - requested text format for the returned comments.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ]\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"id\": \"youtube.comments.list\",\n - \ \"path\": \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\"\n },\n \"delete\": {\n \"id\": - \"youtube.comments.delete\",\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"flatPath\": - \"youtube/v3/comments\",\n \"path\": \"youtube/v3/comments\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ]\n - \ },\n \"update\": {\n \"id\": \"youtube.comments.update\",\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Updates an existing resource.\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"httpMethod\": - \"PUT\",\n \"response\": {\n \"$ref\": \"Comment\"\n },\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/comments\"\n },\n \"insert\": - {\n \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"path\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"flatPath\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.comments.insert\"\n },\n \"markAsSpam\": - {\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Flags the comments with the given - IDs as spam in the caller's opinion.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"required\": true\n }\n - \ },\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Expresses the caller's opinion - that one or more comments should be flagged as spam.\",\n \"flatPath\": - \"youtube/v3/comments/markAsSpam\",\n \"path\": \"youtube/v3/comments/markAsSpam\",\n - \ \"id\": \"youtube.comments.markAsSpam\"\n },\n \"setModerationStatus\": - {\n \"description\": \"Sets the moderation status of one or more - comments.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\",\n \"repeated\": true\n },\n - \ \"moderationStatus\": {\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by - a moderator.\",\n \"\",\n \"The comment is unfit - for display.\"\n ],\n \"required\": true,\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"type\": - \"string\"\n },\n \"banAuthor\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"default\": - \"false\",\n \"description\": \"If set to true the author of - the comment gets added to the ban list. This means all future comments of - the author will autmomatically be rejected. Only valid in combination with - STATUS_REJECTED.\"\n }\n },\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ],\n \"id\": - \"youtube.comments.setModerationStatus\"\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"parameters\": {\n \"hl\": {\n \"default\": - \"en-US\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - videoCategory resource parts that the API response will include. Supported - values are id and snippet.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/videoAbuseReportReasons\",\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"reportAbuse\": - {\n \"path\": \"youtube/v3/videos/reportAbuse\",\n \"id\": - \"youtube.videos.reportAbuse\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"request\": {\n \"$ref\": - \"VideoAbuseReport\"\n },\n \"parameterOrder\": [],\n \"description\": - \"Report abuse for a video.\",\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"httpMethod\": \"POST\"\n },\n \"getRating\": {\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"response\": - {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"id\": - \"youtube.videos.getRating\",\n \"description\": \"Retrieves the - ratings that the authorized user gave to a list of specified videos.\",\n - \ \"flatPath\": \"youtube/v3/videos/getRating\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"update\": {\n \"path\": \"youtube/v3/videos\",\n - \ \"description\": \"Updates an existing resource.\",\n \"id\": - \"youtube.videos.update\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"Video\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"PUT\",\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"response\": {\n - \ \"$ref\": \"Video\"\n }\n },\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"youtube.videos.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/videos\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos\"\n },\n \"list\": - {\n \"path\": \"youtube/v3/videos\",\n \"httpMethod\": \"GET\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"response\": - {\n \"$ref\": \"VideoListResponse\"\n },\n \"parameters\": - {\n \"myRating\": {\n \"location\": \"query\",\n \"description\": - \"Return videos liked/disliked by the authenticated user. Does not support - RateType.RATED_TYPE_NONE.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n - \ },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"location\": \"query\"\n },\n \"maxHeight\": - {\n \"minimum\": \"72\",\n \"location\": \"query\",\n - \ \"type\": \"integer\",\n \"maximum\": \"8192\",\n - \ \"format\": \"int32\"\n },\n \"id\": {\n - \ \"description\": \"Return videos with the given ids.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"description\": \"Use a chart that is specific to the specified - region\",\n \"location\": \"query\"\n },\n \"chart\": - {\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return the most popular videos - for the specified content region and video category.\"\n ],\n - \ \"enum\": [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Return the videos that are in the specified chart.\"\n },\n \"locale\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxWidth\": {\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"description\": \"Return - the player with maximum height specified in\",\n \"minimum\": - \"72\",\n \"format\": \"int32\",\n \"maximum\": - \"8192\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"1\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"default\": \"5\",\n \"description\": - \"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.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"videoCategoryId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"default\": \"0\",\n \"description\": \"Use chart - that is specific to the specified video category\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"id\": \"youtube.videos.list\"\n - \ },\n \"insert\": {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"stabilize\": {\n \"location\": \"query\",\n \"description\": - \"Should stabilize be applied to the upload.\",\n \"type\": \"boolean\"\n - \ },\n \"autoLevels\": {\n \"location\": - \"query\",\n \"description\": \"Should auto-levels be applied - to the upload.\",\n \"type\": \"boolean\"\n },\n \"notifySubscribers\": - {\n \"default\": \"true\",\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Notify - the channel subscribers about the new video. As default, the notification - is enabled.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"required\": - true\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"supportsMediaUpload\": true,\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"description\": \"Inserts a - new resource into this collection.\",\n \"response\": {\n \"$ref\": - \"Video\"\n },\n \"request\": {\n \"$ref\": \"Video\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/videos\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/videos\"\n }\n - \ },\n \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"274877906944\"\n },\n - \ \"id\": \"youtube.videos.insert\",\n \"path\": \"youtube/v3/videos\"\n - \ },\n \"rate\": {\n \"path\": \"youtube/v3/videos/rate\",\n - \ \"description\": \"Adds a like or dislike rating to a video or removes - a rating from a video.\",\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.rate\",\n \"parameters\": - {\n \"rating\": {\n \"required\": true,\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ]\n },\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ]\n }\n }\n },\n \"videoCategories\": - {\n \"methods\": {\n \"list\": {\n \"response\": {\n - \ \"$ref\": \"VideoCategoryListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.videoCategories.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the videoCategory resource properties that the API response will include. - Set the parameter value to snippet.\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ },\n \"regionCode\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"default\": \"en-US\",\n - \ \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Returns - the video categories with the given IDs for Stubby or Apiary.\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/videoCategories\"\n }\n - \ }\n },\n \"i18nLanguages\": {\n \"methods\": {\n \"list\": - {\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"The *part* parameter specifies the i18nLanguage resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"required\": - true\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"default\": \"en_US\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"I18nLanguageListResponse\"\n - \ },\n \"id\": \"youtube.i18nLanguages.list\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/i18nLanguages\"\n }\n }\n },\n - \ \"abuseReports\": {\n \"methods\": {\n \"insert\": {\n \"path\": - \"youtube/v3/abuseReports\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n }\n },\n \"response\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/abuseReports\",\n \"request\": {\n \"$ref\": - \"AbuseReport\"\n },\n \"id\": \"youtube.abuseReports.insert\"\n - \ }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"parameterOrder\": [],\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.channelBanners.insert\",\n \"flatPath\": - \"youtube/v3/channelBanners/insert\",\n \"request\": {\n \"$ref\": - \"ChannelBannerResource\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"channelId\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Unused, channel_id is currently - derived from the security context of the requestor.\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"path\": \"youtube/v3/channelBanners/insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\"\n ],\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\"\n - \ }\n },\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"6291456\"\n },\n \"response\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"supportsMediaUpload\": - true\n }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.commentThreads.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n \"response\": - {\n \"$ref\": \"CommentThreadListResponse\"\n },\n \"path\": - \"youtube/v3/commentThreads\",\n \"description\": \"Retrieves a list - of resources, possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"textFormat\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"description\": - \"The requested text format for the returned comments.\",\n \"location\": - \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"type\": \"string\",\n \"default\": \"html\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Returns the comment threads with the given - IDs for Stubby or Apiary.\"\n },\n \"searchTerms\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Limits the returned comment threads to those - matching the specified key words. Not compatible with the 'id' filter.\"\n - \ },\n \"videoId\": {\n \"description\": - \"Returns the comment threads of the specified video.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"order\": - {\n \"enumDescriptions\": [\n \"\",\n \"Order - by time.\",\n \"Order by relevance.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ],\n - \ \"location\": \"query\",\n \"default\": \"time\"\n - \ },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Returns the comment threads for all the channel comments (ie does not include - comments left on videos).\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"default\": - \"20\",\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"100\",\n \"minimum\": \"1\",\n \"location\": \"query\"\n - \ },\n \"moderationStatus\": {\n \"default\": - \"published\",\n \"type\": \"string\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"location\": \"query\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"insert\": {\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.commentThreads.insert\",\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"path\": - \"youtube/v3/commentThreads\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the membershipsLevel resource parts that the API response will include. Supported - values are id and snippet.\",\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"path\": \"youtube/v3/membershipsLevels\",\n \"id\": \"youtube.membershipsLevels.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/membershipsLevels\",\n \"response\": {\n \"$ref\": - \"MembershipsLevelListResponse\"\n }\n }\n }\n },\n - \ \"subscriptions\": {\n \"methods\": {\n \"delete\": {\n \"path\": - \"youtube/v3/subscriptions\",\n \"description\": \"Deletes a resource.\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/subscriptions\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"id\": \"youtube.subscriptions.delete\"\n - \ },\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.subscriptions.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameters\": {\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"mySubscribers\": {\n \"description\": \"Return - the subscribers of the given channel owner.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the subscriptions of the given channel - owner.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"description\": \"Flag for returning the subscriptions - of the authenticated user.\",\n \"type\": \"boolean\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"forChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Return the subscriptions with the given IDs for Stubby or Apiary.\"\n },\n - \ \"maxResults\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"50\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"myRecentSubscribers\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"order\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Sort - by relevance.\",\n \"Sort by order of activity.\",\n \"Sort - alphabetically.\"\n ],\n \"default\": \"relevance\",\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"description\": \"The order of the returned - subscriptions\",\n \"location\": \"query\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"path\": - \"youtube/v3/subscriptions\"\n },\n \"insert\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.subscriptions.insert\",\n \"request\": - {\n \"$ref\": \"Subscription\"\n },\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"Subscription\"\n }\n }\n }\n },\n \"liveBroadcasts\": - {\n \"methods\": {\n \"update\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": - true,\n \"repeated\": true\n }\n },\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing broadcast for the - authenticated user.\",\n \"id\": \"youtube.liveBroadcasts.update\",\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"id\": \"youtube.liveBroadcasts.list\",\n \"parameters\": - {\n \"maxResults\": {\n \"location\": \"query\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"maximum\": \"50\",\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"default\": - \"5\"\n },\n \"mine\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"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, status - and statistics.\",\n \"location\": \"query\"\n },\n - \ \"broadcastStatus\": {\n \"description\": \"Return - broadcasts with a certain status, e.g. active broadcasts.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ]\n },\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Return broadcasts with the given ids from Stubby or Apiary.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"broadcastType\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"default\": \"event\",\n \"enum\": - [\n \"broadcastTypeFilterUnspecified\",\n \"all\",\n - \ \"event\",\n \"persistent\"\n ],\n - \ \"description\": \"Return only broadcasts with the selected - type.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n },\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"transition\": {\n \"httpMethod\": \"POST\",\n - \ \"path\": \"youtube/v3/liveBroadcasts/transition\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\",\n \"description\": - \"Broadcast to transition.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"broadcastStatus\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Start - testing the broadcast. YouTube transmits video to the broadcast's monitor - stream. Note that you can only transition a broadcast to the testing state - if its contentDetails.monitorStream.enableMonitorStream property is set to - true.\\\",\",\n \"Return only persistent broadcasts.\",\n \"The - broadcast is over. YouTube stops transmitting video.\"\n ],\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"The status to which the broadcast is going - to transition.\",\n \"enum\": [\n \"statusUnspecified\",\n - \ \"testing\",\n \"live\",\n \"complete\"\n - \ ]\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Transition a broadcast to a given status.\",\n - \ \"parameterOrder\": [\n \"broadcastStatus\",\n \"id\",\n - \ \"part\"\n ],\n \"id\": \"youtube.liveBroadcasts.transition\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n }\n },\n \"delete\": - {\n \"id\": \"youtube.liveBroadcasts.delete\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Broadcast to delete.\",\n \"type\": - \"string\",\n \"required\": true\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"description\": \"Delete a given - broadcast.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"DELETE\"\n },\n \"bind\": {\n \"description\": - \"Bind a broadcast to a stream.\",\n \"response\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"id\": \"youtube.liveBroadcasts.bind\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"streamId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Stream to bind, if not set unbind the current - one.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"description\": \"Broadcast - to bind to the stream\",\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\"\n },\n \"insertCuepoint\": - {\n \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"Cuepoint\"\n },\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"path\": - \"youtube/v3/liveBroadcasts/cuepoint\",\n \"description\": \"Insert - cuepoints in a broadcast\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Broadcast to insert ads to, or equivalently - `external_video_id` for internal use.\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"Cuepoint\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": []\n },\n \"insert\": - {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Inserts a new stream for the authenticated - user.\"\n }\n }\n },\n \"thumbnails\": {\n \"methods\": - {\n \"set\": {\n \"parameterOrder\": [\n \"videoId\"\n - \ ],\n \"description\": \"As this is not an insert in a strict - sense (it supports uploading/setting of a thumbnail for multiple videos, which - doesn't result in creation of a single resource), I use a custom verb here.\",\n - \ \"path\": \"youtube/v3/thumbnails/set\",\n \"mediaUpload\": - {\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ],\n \"protocols\": - {\n \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/thumbnails/set\"\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"2097152\"\n },\n \"flatPath\": \"youtube/v3/thumbnails/set\",\n - \ \"id\": \"youtube.thumbnails.set\",\n \"parameters\": {\n - \ \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"videoId\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"Returns the Thumbnail with the given video - IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"httpMethod\": \"POST\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"supportsMediaUpload\": true\n }\n }\n - \ },\n \"channels\": {\n \"methods\": {\n \"update\": {\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Updates an existing resource.\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": true\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"id\": \"youtube.channels.update\",\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"request\": {\n - \ \"$ref\": \"Channel\"\n },\n \"response\": {\n - \ \"$ref\": \"Channel\"\n },\n \"path\": \"youtube/v3/channels\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"list\": {\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameters\": {\n - \ \"mySubscribers\": {\n \"description\": \"Return - the channels subscribed to the authenticated user\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Return the channels with the specified - IDs.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": - true\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Stands - for \\\"host language\\\". Specifies the localization language of the metadata - to be filled into snippet.localized. The field is filled with the default - metadata if there is no localization in the specified language. The parameter - value must be a language code included in the list returned by the i18nLanguages.list - method (e.g. en_US, es_MX).\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the ids of channels owned by the authenticated user.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"managedByMe\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Return the channels managed by the authenticated - user.\"\n },\n \"categoryId\": {\n \"description\": - \"Return the channels within the specified guide category ID.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"forUsername\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the channel associated with a YouTube - username.\"\n },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"minimum\": - \"0\"\n }\n },\n \"id\": \"youtube.channels.list\",\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"path\": \"youtube/v3/channels\"\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"hl\": {\n \"type\": \"string\",\n \"description\": - \"Return rendered funding amounts in specified language.\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"location\": \"query\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"minimum\": - \"1\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"format\": \"uint32\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the superChatEvent resource parts that the API - response will include. This parameter is currently not supported.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/superChatEvents\",\n \"id\": - \"youtube.superChatEvents.list\",\n \"response\": {\n \"$ref\": - \"SuperChatEventListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/superChatEvents\"\n - \ }\n }\n },\n \"channelSections\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"hl\": {\n - \ \"type\": \"string\",\n \"description\": \"Return - content in specified language\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"mine\": {\n - \ \"description\": \"Return the ChannelSections owned by the authenticated - user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"channelId\": {\n \"description\": \"Return the - ChannelSections owned by the specified channel ID.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\",\n \"id\": \"youtube.channelSections.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"httpMethod\": \"GET\"\n },\n \"update\": - {\n \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"request\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"id\": \"youtube.channelSections.update\",\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"path\": \"youtube/v3/channelSections\"\n },\n \"delete\": - {\n \"httpMethod\": \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.channelSections.delete\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/channelSections\"\n - \ },\n \"insert\": {\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.channelSections.insert\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"flatPath\": \"youtube/v3/channelSections\"\n - \ }\n }\n },\n \"liveStreams\": {\n \"methods\": {\n - \ \"update\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.update\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing stream for the - authenticated user.\",\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"flatPath\": \"youtube/v3/liveStreams\"\n },\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"response\": - {\n \"$ref\": \"LiveStreamListResponse\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"Return - LiveStreams with the given ids from Stubby or Apiary.\",\n \"repeated\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"maxResults\": {\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"maximum\": \"50\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"location\": \"query\",\n \"format\": - \"uint32\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\"\n - \ }\n },\n \"id\": \"youtube.liveStreams.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"description\": \"Retrieve the list - of streams associated with the given channel. --\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"insert\": {\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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, - content_details, and status.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"httpMethod\": \"POST\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"path\": - \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new stream for the authenticated user.\"\n },\n \"delete\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes an existing stream for the authenticated - user.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.liveStreams.delete\"\n }\n - \ }\n },\n \"captions\": {\n \"methods\": {\n \"insert\": - {\n \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/captions\",\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"supportsMediaUpload\": true,\n \"id\": - \"youtube.captions.insert\",\n \"httpMethod\": \"POST\",\n \"mediaUpload\": - {\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"104857600\"\n - \ },\n \"response\": {\n \"$ref\": \"Caption\"\n - \ },\n \"path\": \"youtube/v3/captions\",\n \"parameters\": - {\n \"sync\": {\n \"type\": \"boolean\",\n \"description\": - \"Extra parameter to allow automatically syncing the uploaded caption/transcript - with the audio.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOf\": {\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the caption - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"download\": {\n \"supportsMediaDownload\": - true,\n \"description\": \"Downloads a caption track.\",\n \"httpMethod\": - \"GET\",\n \"useMediaDownloadService\": true,\n \"flatPath\": - \"youtube/v3/captions/{id}\",\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"id\": - \"youtube.captions.download\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"tlang\": {\n \"description\": \"tlang - is the language code; machine translate the captions into this language.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"tfmt\": {\n \"type\": \"string\",\n - \ \"description\": \"Convert the captions into this format. Supported - options are sbv, srt, and vtt.\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"required\": true,\n - \ \"location\": \"path\",\n \"description\": \"The - ID of the caption track to download, required for One Platform.\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n }\n - \ },\n \"list\": {\n \"id\": \"youtube.captions.list\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"Returns the captions with the - given IDs for Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"videoId\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"Returns the captions for the specified video.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOf\": {\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\",\n \"location\": \"query\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\",\n \"videoId\"\n - \ ],\n \"path\": \"youtube/v3/captions\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n },\n \"update\": - {\n \"flatPath\": \"youtube/v3/captions\",\n \"supportsMediaUpload\": - true,\n \"id\": \"youtube.captions.update\",\n \"mediaUpload\": - {\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"maxSize\": \"104857600\",\n - \ \"protocols\": {\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n },\n - \ \"resumable\": {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n }\n },\n - \ \"request\": {\n \"$ref\": \"Caption\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"description\": \"Updates an existing resource.\",\n \"httpMethod\": - \"PUT\",\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"sync\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ },\n \"delete\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOf\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is be on behalf of\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\"\n }\n - \ },\n \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.captions.delete\",\n - \ \"path\": \"youtube/v3/captions\"\n }\n }\n },\n - \ \"playlists\": {\n \"methods\": {\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"response\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.playlists.insert\"\n },\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"path\": \"youtube/v3/playlists\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.playlists.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"response\": - {\n \"$ref\": \"PlaylistListResponse\"\n },\n \"flatPath\": - \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.list\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"default\": \"5\",\n - \ \"maximum\": \"50\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"format\": \"uint32\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Return the playlists owned by the authenticated - user.\"\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"Return the playlists with the given IDs for - Stubby or Apiary.\",\n \"type\": \"string\"\n },\n - \ \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"Return the playlists owned by - the specified channel ID.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n }\n }\n },\n \"update\": {\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"id\": \"youtube.playlists.update\",\n \"description\": - \"Updates an existing resource.\",\n \"request\": {\n \"$ref\": - \"Playlist\"\n },\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n }\n }\n - \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"flatPath\": \"youtube/v3/search\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.search.list\",\n - \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"path\": \"youtube/v3/search\",\n \"description\": - \"Retrieves a list of search resources\",\n \"parameters\": {\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"default\": \"5\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"format\": \"uint32\"\n },\n \"locationRadius\": - {\n \"description\": \"Filter on distance from the location (specified - above).\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"topicId\": {\n \"description\": - \"Restrict results to a particular topic.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"relatedToVideoId\": - {\n \"location\": \"query\",\n \"description\": - \"Search related to a resource.\",\n \"type\": \"string\"\n },\n - \ \"eventType\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"description\": \"Filter on the livestream status of the videos.\"\n - \ },\n \"videoEmbeddable\": {\n \"description\": - \"Filter on embeddable videos.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"Return all videos, embeddable or - not.\",\n \"Only retrieve embeddable videos.\"\n ],\n - \ \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"regionCode\": - {\n \"description\": \"Display the content as seen by viewers - in this country.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"forContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"Search owned by a content owner.\"\n },\n \"videoSyndicated\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos, syndicated or not.\",\n \"Only retrieve syndicated - videos.\"\n ],\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"description\": \"Filter on syndicated videos.\",\n - \ \"type\": \"string\"\n },\n \"publishedBefore\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter on resources published before this - date.\",\n \"format\": \"google-datetime\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"safeSearch\": - {\n \"description\": \"Indicates whether the search results should - include restricted content as well as standard content.\",\n \"enumDescriptions\": - [\n \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"location\": - \"query\",\n \"default\": \"moderate\",\n \"type\": - \"string\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ]\n },\n \"relevanceLanguage\": {\n \"type\": - \"string\",\n \"description\": \"Return results relevant to this - language.\",\n \"location\": \"query\"\n },\n \"publishedAfter\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on resources published after this date.\",\n \"location\": \"query\",\n - \ \"format\": \"google-datetime\"\n },\n \"order\": - {\n \"default\": \"relevance\",\n \"enum\": [\n - \ \"searchSortUnspecified\",\n \"date\",\n \"rating\",\n - \ \"viewCount\",\n \"relevance\",\n \"title\",\n - \ \"videoCount\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Resources are sorted in reverse - chronological order based on the date they were created.\",\n \"Resources - are sorted from highest to lowest rating.\",\n \"Resources - are sorted from highest to lowest number of views.\",\n \"Resources - are sorted based on their relevance to the search query. This is the default - value for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Sort order of the results.\"\n },\n \"q\": {\n \"description\": - \"Textual search terms to match.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"videoCategoryId\": - {\n \"description\": \"Filter on videos in a specific category.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"videoDimension\": {\n \"type\": - \"string\",\n \"description\": \"Filter on 3d videos.\",\n \"location\": - \"query\",\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"enumDescriptions\": - [\n \"Include both 3D and non-3D videos in returned results. - This is the default value.\",\n \"Restrict search results to - exclude 3D videos.\",\n \"Restrict search results to only include - 3D videos.\"\n ]\n },\n \"forMine\": {\n - \ \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Search for the private videos of the authenticated - user.\"\n },\n \"videoDuration\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on the duration of the videos.\",\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ]\n - \ },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"location\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on location of the video\",\n \"type\": \"string\"\n - \ },\n \"videoCaption\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on the presence of captions on the videos.\",\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ]\n },\n \"type\": - {\n \"description\": \"Restrict results to a particular set of - resource types from One Platform.\",\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"location\": \"query\"\n - \ },\n \"forDeveloper\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Restrict - the search to only retrieve videos uploaded using the project id of the authenticated - user.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true\n },\n \"channelType\": {\n \"type\": - \"string\",\n \"description\": \"Add a filter on the channel - search.\",\n \"location\": \"query\",\n \"enum\": - [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all channels.\",\n \"Only - retrieve shows.\"\n ]\n },\n \"videoDefinition\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Return all videos, regardless of their resolution.\",\n - \ \"Only retrieve videos in standard definition.\",\n \"Only - retrieve HD videos.\"\n ],\n \"enum\": [\n \"any\",\n - \ \"standard\",\n \"high\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Filter - on the definition of the videos.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on resources belonging to this channelId.\",\n \"location\": - \"query\"\n },\n \"videoLicense\": {\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"description\": \"Filter on the license of the videos.\",\n - \ \"enum\": [\n \"any\",\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"videoType\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos.\",\n \"Only retrieve movies.\",\n \"Only - retrieve episodes of shows.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on videos of a specific type.\",\n \"enum\": [\n \"videoTypeUnspecified\",\n - \ \"any\",\n \"movie\",\n \"episode\"\n - \ ]\n }\n }\n }\n }\n },\n - \ \"tests\": {\n \"methods\": {\n \"insert\": {\n \"flatPath\": - \"youtube/v3/tests\",\n \"path\": \"youtube/v3/tests\",\n \"id\": - \"youtube.tests.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"POST method.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"TestItem\"\n },\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"required\": true,\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"request\": {\n \"$ref\": \"TestItem\"\n }\n - \ }\n }\n }\n },\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n - \ \"fullyEncodeReservedExpansion\": true,\n \"version\": \"v3\",\n \"icons\": - {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"servicePath\": \"\",\n \"description\": \"The YouTube Data API - v3 is an API that provides access to YouTube data, such as videos, playlists, - and channels.\",\n \"title\": \"YouTube Data API v3\",\n \"id\": \"youtube:v3\",\n - \ \"discoveryVersion\": \"v1\",\n \"revision\": \"20230220\",\n \"parameters\": - {\n \"oauth_token\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"OAuth 2.0 token for the current user.\"\n - \ },\n \"access_token\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"OAuth access token.\"\n },\n \"$.xgafv\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n \"enum\": - [\n \"1\",\n \"2\"\n ],\n \"description\": \"V1 error - format.\",\n \"enumDescriptions\": [\n \"v1 error format\",\n - \ \"v2 error format\"\n ]\n },\n \"uploadType\": {\n \"description\": - \"Legacy upload protocol for media (e.g. \\\"media\\\", \\\"multipart\\\").\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"upload_protocol\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n },\n - \ \"quotaUser\": {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"alt\": {\n \"enum\": [\n \"json\",\n - \ \"media\",\n \"proto\"\n ],\n \"location\": \"query\",\n - \ \"default\": \"json\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"description\": - \"Data format for response.\"\n },\n \"callback\": {\n \"description\": - \"JSONP\",\n \"location\": \"query\",\n \"type\": \"string\"\n },\n - \ \"key\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"fields\": {\n \"type\": \"string\",\n - \ \"description\": \"Selector specifying which fields to include in a - partial response.\",\n \"location\": \"query\"\n },\n \"prettyPrint\": - {\n \"default\": \"true\",\n \"description\": \"Returns response - with indentations and line breaks.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n }\n },\n \"schemas\": {\n \"LiveChatNewSponsorDetails\": - {\n \"id\": \"LiveChatNewSponsorDetails\",\n \"properties\": {\n - \ \"isUpgrade\": {\n \"type\": \"boolean\",\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\"\n },\n - \ \"memberLevelName\": {\n \"description\": \"The name of the - Level that the viewer just had joined. The Level names are defined by the - YouTube channel offering the Membership. In some situations this field isn't - filled.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"PlaylistPlayer\": {\n \"type\": \"object\",\n - \ \"id\": \"PlaylistPlayer\",\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\"\n }\n }\n - \ },\n \"VideoStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"license\": {\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The video's license. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"embeddable\": {\n - \ \"type\": \"boolean\",\n \"description\": \"This value - indicates if the video can be embedded on another website. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The video's privacy status.\"\n },\n \"publishAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the video - is scheduled to publish. It can be set only if the privacy status of the video - is private..\",\n \"type\": \"string\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\"\n },\n \"rejectionReason\": - {\n \"description\": \"This value explains why YouTube rejected an - uploaded video. This property is only present if the uploadStatus property - indicates that the upload was rejected.\",\n \"enumDescriptions\": - [\n \"Copyright infringement.\",\n \"Inappropriate video - content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms - of use violation.\",\n \"Uploader account was suspended.\",\n \"Video - duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ]\n },\n - \ \"publicStatsViewable\": {\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n },\n \"uploadStatus\": {\n - \ \"enumDescriptions\": [\n \"Video has been uploaded but - not processed yet.\",\n \"Video has been successfully processed.\",\n - \ \"Processing has failed. See FailureReason.\",\n \"Video - has been rejected. See RejectionReason.\",\n \"Video has been deleted.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ],\n \"description\": \"The status - of the uploaded video.\"\n },\n \"failureReason\": {\n \"type\": - \"string\",\n \"enum\": [\n \"conversion\",\n \"invalidFile\",\n - \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n - \ \"uploadAborted\"\n ],\n \"description\": \"This - value explains why a video failed to upload. This property is only present - if the uploadStatus property indicates that the upload failed.\",\n \"enumDescriptions\": - [\n \"Unable to convert video content.\",\n \"Invalid - file format.\",\n \"Empty file.\",\n \"File was too - small.\",\n \"Unsupported codec.\",\n \"Upload wasn't - finished.\"\n ]\n }\n },\n \"id\": \"VideoStatus\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title. Next Id: 18\"\n },\n \"MembershipsLevelListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevelListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"MembershipsLevel\"\n },\n \"description\": \"A list of - pricing levels offered by a creator to the fans.\",\n \"type\": \"array\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\"\n - \ },\n \"VideoProcessingDetailsProcessingProgress\": {\n \"type\": - \"object\",\n \"properties\": {\n \"timeLeftMs\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"An estimate of the amount of time, in millseconds, that YouTube needs to - finish processing the video.\"\n },\n \"partsTotal\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"An - estimate of the total number of parts that need to be processed for the video. - The number may be updated with more precise estimates while YouTube processes - the video.\"\n },\n \"partsProcessed\": {\n \"description\": - \"The number of parts of the video that YouTube has already processed. You - can estimate the percentage of the video that YouTube has already processed - by calculating: 100 * parts_processed / parts_total Note that since the estimated - number of parts could increase without a corresponding increase in the number - of parts that have already been processed, it is possible that the calculated - progress could periodically decrease while YouTube processes a video.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Video processing progress and completion - time estimate.\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"Subscription\": {\n \"properties\": {\n \"snippet\": - {\n \"$ref\": \"SubscriptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\"\n },\n \"subscriberSnippet\": - {\n \"description\": \"The subscriberSnippet object contains basic - details about the subscriber.\",\n \"$ref\": \"SubscriptionSubscriberSnippet\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains basic statistics about the subscription.\",\n - \ \"$ref\": \"SubscriptionContentDetails\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#subscription\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#subscription\\\".\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the subscription.\"\n }\n },\n \"id\": \"Subscription\",\n - \ \"type\": \"object\",\n \"description\": \"A *subscription* resource - contains information about a YouTube user subscription. A subscription notifies - a user when new videos are added to a channel or when another user takes one - of several actions on YouTube, such as uploading a video, rating a video, - or commenting on a video.\"\n },\n \"VideoStatistics\": {\n \"type\": - \"object\",\n \"properties\": {\n \"commentCount\": {\n \"description\": - \"The number of comments for the video.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"dislikeCount\": {\n - \ \"description\": \"The number of users who have indicated that they - disliked the video by giving it a negative rating.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n },\n \"favoriteCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of users who currently have the video marked as a favorite video.\",\n \"type\": - \"string\"\n },\n \"likeCount\": {\n \"description\": - \"The number of users who have indicated that they liked the video by giving - it a positive rating.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"viewCount\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of times the video has been viewed.\",\n - \ \"format\": \"uint64\"\n }\n },\n \"id\": \"VideoStatistics\",\n - \ \"description\": \"Statistics about the video, such as the number of - times the video was viewed or liked.\"\n },\n \"LiveStreamConfigurationIssue\": - {\n \"id\": \"LiveStreamConfigurationIssue\",\n \"properties\": - {\n \"reason\": {\n \"type\": \"string\",\n \"description\": - \"The short-form reason for this issue.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The long-form - description of the issue and how to resolve it.\"\n },\n \"severity\": - {\n \"description\": \"How severe this issue is to the stream.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"info\",\n - \ \"warning\",\n \"error\"\n ],\n \"type\": - \"string\"\n },\n \"type\": {\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The kind of error happening.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveStreamSnippet\": {\n \"id\": \"LiveStreamSnippet\",\n - \ \"properties\": {\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The stream's description. The value cannot be - longer than 10000 characters.\"\n },\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that is transmitting the stream.\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the stream was created.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"The stream's title. The value must be between 1 and 128 characters long.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"ChannelConversionPing\": {\n \"properties\": {\n \"conversionUrl\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"context\": {\n \"enum\": - [\n \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Defines the context of the ping.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ]\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ChannelConversionPing\",\n - \ \"description\": \"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.\"\n },\n \"ChannelSectionListResponse\": - {\n \"id\": \"ChannelSectionListResponse\",\n \"properties\": {\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of ChannelSections that match the request criteria.\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"id\": \"LiveChatModeratorListResponse\",\n \"properties\": - {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"description\": \"A list of moderators that match - the request criteria.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatModeratorListResponse\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"deletedMessageId\": {\n \"type\": - \"string\"\n }\n }\n },\n \"VideoListResponse\": {\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"default\": \"youtube#videoListResponse\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Video\"\n }\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoListResponse\"\n - \ },\n \"CommentThreadListResponse\": {\n \"id\": \"CommentThreadListResponse\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"CommentThread\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of comment threads that match the request criteria.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"eventId\": {\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#commentThreadListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcast\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"LiveBroadcastContentDetails\",\n \"description\": - \"The contentDetails object contains information about the event's video content, - such as whether the content can be shown in an embedded video player or if - it will be archived and therefore available for viewing after the event has - concluded.\"\n },\n \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n - \ \"description\": \"The status object contains information about - the event's status.\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveBroadcastSnippet\",\n \"description\": \"The snippet object - contains basic details about the event, including its title, description, - start time, and end time.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveBroadcast\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the broadcast.\",\n \"type\": \"string\"\n },\n \"statistics\": - {\n \"description\": \"The statistics object contains info about - the event's current stats. These include concurrent viewers and total chat - count. Statistics can change (in either direction) during the lifetime of - an event. Statistics are only returned while the event is live.\",\n \"$ref\": - \"LiveBroadcastStatistics\"\n }\n },\n \"id\": \"LiveBroadcast\",\n - \ \"type\": \"object\",\n \"description\": \"A *liveBroadcast* resource - represents an event that will be streamed, via live video, on YouTube.\"\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"userComment\": {\n \"description\": - \"The comment added by the user to this fan funding event.\",\n \"type\": - \"string\"\n },\n \"currency\": {\n \"type\": \"string\",\n - \ \"description\": \"The currency in which the fund was made.\"\n - \ },\n \"amountDisplayString\": {\n \"type\": \"string\",\n - \ \"description\": \"A rendered string that displays the fund amount - and currency to the user.\"\n },\n \"amountMicros\": {\n \"type\": - \"string\",\n \"description\": \"The amount of the fund.\",\n \"format\": - \"uint64\"\n }\n },\n \"id\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"VideoProcessingDetails\": {\n \"id\": \"VideoProcessingDetails\",\n - \ \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\",\n \"type\": \"object\",\n \"properties\": - {\n \"tagSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether keyword (tag) suggestions are available for the video. - Tags can be added to a video's metadata to make it easier for other users - to find the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"processingStatus\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's processing status. This - value indicates whether YouTube was able to process the video or if the video - is still being processed.\",\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ]\n },\n \"fileDetailsAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether file - details are available for the uploaded video. You can retrieve a video's file - details by requesting the fileDetails part in your videos.list() request.\"\n - \ },\n \"processingIssuesAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether the - video processing engine has generated suggestions that might improve YouTube's - ability to process the the video, warnings that explain video processing problems, - or errors that cause video processing problems. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"processingProgress\": {\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\",\n - \ \"description\": \"The processingProgress object contains information - about the progress YouTube has made in processing the video. The values are - really only relevant if the video's processing status is processing.\"\n },\n - \ \"thumbnailsAvailability\": {\n \"type\": \"string\",\n \"description\": - \"This value indicates whether thumbnail images have been generated for the - video.\"\n },\n \"processingFailureReason\": {\n \"enum\": - [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ],\n \"description\": \"The reason - that YouTube failed to process the video. This property will only have a value - if the processingStatus property's value is failed.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"editorSuggestionsAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether video editing suggestions, which might improve video quality - or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\"\n }\n }\n },\n \"PlaylistItemListResponse\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistItemListResponse\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"description\": \"A list of playlist items that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n - \ },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"default\": \"youtube#playlistItemListResponse\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n }\n }\n },\n \"ThirdPartyLinkListResponse\": - {\n \"id\": \"ThirdPartyLinkListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ }\n }\n }\n },\n \"IngestionInfo\": {\n \"properties\": - {\n \"rtmpsBackupIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of backupIngestionAddress in order - to stream via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": - \"string\"\n },\n \"backupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"The backup ingestion URL that you - should use to stream video to YouTube. You have the option of simultaneously - streaming the content that you are sending to the ingestionAddress to this - URL.\"\n },\n \"rtmpsIngestionAddress\": {\n \"description\": - \"This ingestion url may be used instead of ingestionAddress in order to stream - via RTMPS. Not applicable to non-RTMP streams.\",\n \"type\": \"string\"\n - \ },\n \"ingestionAddress\": {\n \"description\": \"The - primary ingestion URL that you should use to stream video to YouTube. You - must stream video to this URL. Depending on which application or tool you - use to encode your video stream, you may need to enter the stream URL and - stream name separately or you may need to concatenate them in the following - format: *STREAM_URL/STREAM_NAME* \",\n \"type\": \"string\"\n },\n - \ \"streamName\": {\n \"type\": \"string\",\n \"description\": - \"The stream name that YouTube assigns to the video stream.\"\n }\n - \ },\n \"description\": \"Describes information necessary for ingesting - an RTMP, HTTP, or SRT stream.\",\n \"id\": \"IngestionInfo\",\n \"type\": - \"object\"\n },\n \"VideoAbuseReportReasonSnippet\": {\n \"id\": - \"VideoAbuseReportReasonSnippet\",\n \"properties\": {\n \"label\": - {\n \"type\": \"string\",\n \"description\": \"The localized - label belonging to this abuse report reason.\"\n },\n \"secondaryReasons\": - {\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"description\": \"The secondary reasons associated - with this reason, if any are available. (There might be 0 or more.)\",\n \"type\": - \"array\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic details about a video category, such as its localized title.\"\n },\n - \ \"LiveBroadcastSnippet\": {\n \"id\": \"LiveBroadcastSnippet\",\n - \ \"type\": \"object\",\n \"description\": \"Basic broadcast information.\",\n - \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that is publishing the broadcast.\"\n },\n \"actualEndTime\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time that the broadcast actually ended. This information is only available - once the broadcast's state is complete.\",\n \"format\": \"date-time\"\n - \ },\n \"liveChatId\": {\n \"description\": \"The id - of the live chat for this broadcast.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - broadcast. For each nested object in this object, the key is the name of the - thumbnail image, and the value is an object that contains other information - about the thumbnail.\"\n },\n \"scheduledStartTime\": {\n \"format\": - \"date-time\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The date and time - that the broadcast is scheduled to start.\",\n \"type\": \"string\"\n - \ },\n \"scheduledEndTime\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the broadcast is scheduled - to end.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The broadcast's description. As with the title, - you can set this field by modifying the broadcast resource or by setting the - description field of the corresponding video resource.\",\n \"type\": - \"string\"\n },\n \"isDefaultBroadcast\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether this broadcast - is the default broadcast. Internal only.\"\n },\n \"actualStartTime\": - {\n \"description\": \"The date and time that the broadcast actually - started. This information is only available once the broadcast's state is - live.\",\n \"type\": \"string\",\n \"format\": \"date-time\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time that the broadcast was added to YouTube's live broadcast schedule.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"MembershipsDurationAtLevel\": {\n \"type\": - \"object\",\n \"id\": \"MembershipsDurationAtLevel\",\n \"properties\": - {\n \"level\": {\n \"type\": \"string\",\n \"description\": - \"Pricing level ID.\"\n },\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - for the given level in complete months (the time is rounded down to the nearest - integer).\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ },\n \"memberSince\": {\n \"description\": \"The date - and time when the user became a continuous member for the given level.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LiveChatSuperChatDetails\": - {\n \"properties\": {\n \"amountMicros\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the purchase was made.\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the user to this Super Chat event.\"\n },\n \"tier\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n },\n \"amountDisplayString\": {\n - \ \"type\": \"string\",\n \"description\": \"A rendered string - that displays the fund amount and currency to the user.\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatSuperChatDetails\"\n - \ },\n \"ThirdPartyLinkStatus\": {\n \"description\": \"The third-party - link status object contains information about the status of the link.\",\n - \ \"type\": \"object\",\n \"id\": \"ThirdPartyLinkStatus\",\n \"properties\": - {\n \"linkStatus\": {\n \"enum\": [\n \"unknown\",\n - \ \"failed\",\n \"pending\",\n \"linked\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveBroadcastListResponse\": {\n \"id\": - \"LiveBroadcastListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of broadcasts - that match the request criteria.\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveBroadcastListResponse\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n }\n }\n },\n \"Video\": - {\n \"type\": \"object\",\n \"properties\": {\n \"localizations\": - {\n \"description\": \"The localizations object contains localized - versions of the basic details about the video, such as its title and description.\",\n - \ \"additionalProperties\": {\n \"$ref\": \"VideoLocalization\"\n - \ },\n \"type\": \"object\"\n },\n \"suggestions\": - {\n \"$ref\": \"VideoSuggestions\",\n \"description\": \"The - suggestions object encapsulates suggestions that identify opportunities to - improve the video quality or the metadata for the uploaded video. This data - can only be retrieved by the video owner.\"\n },\n \"ageGating\": - {\n \"description\": \"Age restriction details related to a video. - This data can only be retrieved by the video owner.\",\n \"$ref\": - \"VideoAgeGating\"\n },\n \"player\": {\n \"$ref\": - \"VideoPlayer\",\n \"description\": \"The player object contains - information that you would use to play the video in an embedded player.\"\n - \ },\n \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video, such as its title, description, and category.\"\n },\n \"processingDetails\": - {\n \"description\": \"The processingDetails object encapsulates - information about YouTube's progress in processing the uploaded video file. - The properties in the object identify the current processing status and an - estimate of the time remaining until YouTube finishes processing the video. - This part also indicates whether different types of data or content, such - as file details or thumbnail images, are available for the video. The processingProgress - object is designed to be polled so that the video uploaded can track the progress - that YouTube has made in processing the uploaded video file. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoProcessingDetails\"\n - \ },\n \"projectDetails\": {\n \"description\": \"The - projectDetails object contains information about the project specific video - metadata. b/157517979: This part was never populated after it was added. However, - it sees non-zero traffic because there is generated client code in the wild - that refers to it [1]. We keep this field and do NOT remove it because otherwise - V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"$ref\": \"VideoProjectDetails\"\n },\n \"kind\": - {\n \"default\": \"youtube#video\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#video\\\".\"\n },\n \"status\": - {\n \"$ref\": \"VideoStatus\",\n \"description\": \"The - status object contains information about the video's uploading, processing, - and privacy statuses.\"\n },\n \"statistics\": {\n \"description\": - \"The statistics object contains statistics about the video.\",\n \"$ref\": - \"VideoStatistics\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.videos.update\"\n ]\n }\n },\n - \ \"monetizationDetails\": {\n \"$ref\": \"VideoMonetizationDetails\",\n - \ \"description\": \"The monetizationDetails object encapsulates information - about the monetization status of the video.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the video content, including the length of the video and its aspect - ratio.\",\n \"$ref\": \"VideoContentDetails\"\n },\n \"recordingDetails\": - {\n \"$ref\": \"VideoRecordingDetails\",\n \"description\": - \"The recordingDetails object encapsulates information about the location, - date and address where the video was recorded.\"\n },\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"topicDetails\": - {\n \"$ref\": \"VideoTopicDetails\",\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"fileDetails\": - {\n \"description\": \"The fileDetails object encapsulates information - about the video file that was uploaded to YouTube, including the file's resolution, - duration, audio and video codecs, stream bitrates, and more. This data can - only be retrieved by the video owner.\",\n \"$ref\": \"VideoFileDetails\"\n - \ }\n },\n \"id\": \"Video\",\n \"description\": \"A - *video* resource represents a YouTube video.\"\n },\n \"ChannelListResponse\": - {\n \"type\": \"object\",\n \"id\": \"ChannelListResponse\",\n \"properties\": - {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Channel\"\n }\n },\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#channelListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n - \ }\n }\n },\n \"AccessPolicy\": {\n \"id\": \"AccessPolicy\",\n - \ \"properties\": {\n \"allowed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"The value of allowed indicates whether the access - to the policy is allowed or denied by default.\"\n },\n \"exception\": - {\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"A list of region codes - that identify countries where the default policy do not apply.\"\n }\n - \ },\n \"description\": \"Rights management policy for YouTube resources.\",\n - \ \"type\": \"object\"\n },\n \"PropertyValue\": {\n \"properties\": - {\n \"property\": {\n \"type\": \"string\",\n \"description\": - \"A property.\"\n },\n \"value\": {\n \"description\": - \"The property's value.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"PropertyValue\",\n \"description\": \"A pair Property - / Value.\",\n \"type\": \"object\"\n },\n \"PlaylistSnippet\": - {\n \"properties\": {\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The playlist's title.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n }\n },\n - \ \"publishedAt\": {\n \"description\": \"The date and time - that the playlist was created.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"tags\": {\n \"type\": - \"array\",\n \"description\": \"Keyword tags associated with the - playlist.\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist. 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.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that published the playlist.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"The channel - title of the channel that the video belongs to.\"\n },\n \"description\": - {\n \"description\": \"The playlist's description.\",\n \"type\": - \"string\"\n },\n \"defaultLanguage\": {\n \"description\": - \"The language of the playlist's default title and description.\",\n \"type\": - \"string\"\n },\n \"thumbnailVideoId\": {\n \"type\": - \"string\",\n \"description\": \"Note: if the playlist has a custom - thumbnail, this field will not be populated. The video id selected by the - user that will be used as the thumbnail of this playlist. This field defaults - to the first publicly viewable video in the playlist, if: 1. The user has - never selected a video to be the thumbnail of the playlist. 2. The user selects - a video to be the thumbnail, and then removes that video from the playlist. - 3. The user selects a non-owned video to be the thumbnail, but that video - becomes private, or gets deleted.\"\n },\n \"localized\": {\n - \ \"description\": \"Localized title and description, read-only.\",\n - \ \"$ref\": \"PlaylistLocalization\"\n }\n },\n \"id\": - \"PlaylistSnippet\",\n \"type\": \"object\",\n \"description\": - \"Basic details about a playlist, including title, description and thumbnails.\"\n - \ },\n \"PlaylistContentDetails\": {\n \"id\": \"PlaylistContentDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"itemCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The number of videos in the playlist.\"\n }\n }\n },\n \"SubscriptionSnippet\": - {\n \"properties\": {\n \"publishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the subscription was created.\"\n },\n \"description\": - {\n \"description\": \"The subscription's details.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - subscription's title.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the subscriber's channel.\",\n \"type\": \"string\"\n },\n - \ \"resourceId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.subscriptions.insert\"\n ]\n },\n - \ \"$ref\": \"ResourceId\",\n \"description\": \"The id object - contains information about the channel that the user subscribed to.\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"A map of thumbnail images associated with the video. 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.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the subscription - belongs to.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about a subscription, including title, description and thumbnails - of the subscribed item.\",\n \"id\": \"SubscriptionSnippet\",\n \"type\": - \"object\"\n },\n \"ChannelConversionPings\": {\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"properties\": {\n \"pings\": - {\n \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ },\n \"description\": \"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.\",\n \"type\": \"array\"\n - \ }\n },\n \"id\": \"ChannelConversionPings\",\n \"type\": - \"object\"\n },\n \"VideoLocalization\": {\n \"id\": \"VideoLocalization\",\n - \ \"description\": \"Localized versions of certain video properties (e.g. - title).\",\n \"type\": \"object\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's title.\"\n },\n \"description\": {\n - \ \"description\": \"Localized version of the video's description.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"I18nRegion\": - {\n \"id\": \"I18nRegion\",\n \"description\": \"A *i18nRegion* - resource identifies a region where YouTube is available.\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#i18nRegion\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"I18nRegionSnippet\",\n \"description\": - \"The snippet object contains basic details about the i18n region, such as - region code and human-readable name.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"Cuepoint\": - {\n \"description\": \"Note that there may be a 5-second end-point resolution - issue. For instance, if a cuepoint comes in for 22:03:27, we may stuff the - cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact of HLS.\",\n - \ \"id\": \"Cuepoint\",\n \"type\": \"object\",\n \"properties\": - {\n \"walltimeMs\": {\n \"description\": \"The wall clock - time at which the cuepoint should be inserted. Only one of insertion_offset_time_ms - and walltime_ms may be set at a time.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"insertionOffsetTimeMs\": - {\n \"type\": \"string\",\n \"format\": \"int64\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\"\n },\n \"id\": {\n \"description\": - \"The identifier for cuepoint resource.\",\n \"type\": \"string\"\n - \ },\n \"cueType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"type\": \"string\"\n - \ },\n \"durationSecs\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"The duration - of this cuepoint.\"\n },\n \"etag\": {\n \"type\": - \"string\"\n }\n }\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"description\": \"Basic details about a subscription's subscriber - including title, description, channel ID and thumbnails.\",\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The title of the subscriber.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the subscriber.\"\n },\n - \ \"thumbnails\": {\n \"description\": \"Thumbnails for this - subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The channel - ID of the subscriber.\"\n }\n },\n \"id\": \"SubscriptionSubscriberSnippet\"\n - \ },\n \"VideoFileDetailsVideoStream\": {\n \"description\": \"Information - about a video stream.\",\n \"type\": \"object\",\n \"properties\": - {\n \"rotation\": {\n \"description\": \"The amount that YouTube - needs to rotate the original source content to properly display the video.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n - \ \"clockwise\",\n \"upsideDown\",\n \"counterClockwise\",\n - \ \"other\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"widthPixels\": {\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n },\n \"heightPixels\": - {\n \"format\": \"uint32\",\n \"description\": \"The encoded - video content's height in pixels.\",\n \"type\": \"integer\"\n },\n - \ \"bitrateBps\": {\n \"description\": \"The video stream's - bitrate, in bits per second.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"aspectRatio\": {\n \"type\": \"number\",\n - \ \"format\": \"double\",\n \"description\": \"The video - content's display aspect ratio, which specifies the aspect ratio in which - the video should be displayed.\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n },\n - \ \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The video codec that the stream uses.\"\n },\n \"frameRateFps\": - {\n \"description\": \"The video stream's frame rate, in frames per - second.\",\n \"type\": \"number\",\n \"format\": \"double\"\n - \ }\n },\n \"id\": \"VideoFileDetailsVideoStream\"\n },\n - \ \"ChannelBannerResource\": {\n \"properties\": {\n \"url\": - {\n \"description\": \"The URL of this banner image.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#channelBannerResource\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"A - channel banner returned as the response to a channel_banner.insert call.\",\n - \ \"id\": \"ChannelBannerResource\"\n },\n \"Comment\": {\n \"description\": - \"A *comment* represents a single YouTube comment.\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n \"description\": - \"The snippet object contains basic details about the comment.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the comment.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#comment\\\".\",\n \"default\": - \"youtube#comment\"\n }\n },\n \"id\": \"Comment\",\n \"type\": - \"object\"\n },\n \"LiveStreamListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveStreamListResponse\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"description\": \"A list of live streams that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LiveStreamListResponse\"\n },\n \"AbuseType\": {\n \"id\": - \"AbuseType\",\n \"type\": \"object\",\n \"properties\": {\n \"id\": - {\n \"type\": \"string\"\n }\n }\n },\n \"ActivityContentDetailsUpload\": - {\n \"id\": \"ActivityContentDetailsUpload\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Information about - the uploaded video.\"\n },\n \"VideoGetRatingResponse\": {\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of ratings that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"VideoRating\"\n }\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#videoGetRatingResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoGetRatingResponse\\\".\",\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoGetRatingResponse\"\n - \ },\n \"GeoPoint\": {\n \"type\": \"object\",\n \"properties\": - {\n \"longitude\": {\n \"format\": \"double\",\n \"description\": - \"Longitude in degrees.\",\n \"type\": \"number\"\n },\n \"latitude\": - {\n \"type\": \"number\",\n \"format\": \"double\",\n \"description\": - \"Latitude in degrees.\"\n },\n \"altitude\": {\n \"format\": - \"double\",\n \"type\": \"number\",\n \"description\": \"Altitude - above the reference ellipsoid, in meters.\"\n }\n },\n \"description\": - \"Geographical coordinates of a point, in WGS84.\",\n \"id\": \"GeoPoint\"\n - \ },\n \"ThirdPartyLink\": {\n \"id\": \"ThirdPartyLink\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n },\n \"linkingToken\": - {\n \"description\": \"The linking_token identifies a YouTube account - and channel with which the third party account is linked.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLink\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"status\": {\n \"$ref\": - \"ThirdPartyLinkStatus\",\n \"description\": \"The status object - contains information about the status of the link.\"\n }\n },\n - \ \"description\": \"A *third party account link* resource represents - a link between a YouTube account or a channel and an account on a third-party - service.\"\n },\n \"VideoContentDetailsRegionRestriction\": {\n \"type\": - \"object\",\n \"id\": \"VideoContentDetailsRegionRestriction\",\n \"properties\": - {\n \"blocked\": {\n \"description\": \"A list of region codes - that identify countries where the video is blocked. If this property is present - and a country is not listed in its value, then the video is viewable in that - country. If this property is present and contains an empty list, the video - is viewable in all countries.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"allowed\": - {\n \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"description\": - \"DEPRECATED Region restriction of the video.\"\n },\n \"ChannelLocalization\": - {\n \"id\": \"ChannelLocalization\",\n \"description\": \"Channel - localization setting\",\n \"type\": \"object\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel's title.\"\n },\n \"description\": - {\n \"description\": \"The localized strings for channel's description.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LiveChatMessageSnippet\": - {\n \"properties\": {\n \"userBannedDetails\": {\n \"$ref\": - \"LiveChatUserBannedMessageDetails\"\n },\n \"newSponsorDetails\": - {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n \"description\": - \"Details about the New Member Announcement event, this is only set if the - type is 'newSponsorEvent'. Please note that \\\"member\\\" is the new term - for \\\"sponsor\\\".\"\n },\n \"memberMilestoneChatDetails\": - {\n \"description\": \"Details about the Member Milestone Chat event, - this is only set if the type is 'memberMilestoneChatEvent'.\",\n \"$ref\": - \"LiveChatMemberMilestoneChatDetails\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"superStickerDetails\": - {\n \"description\": \"Details about the Super Sticker event, this - is only set if the type is 'superStickerEvent'.\",\n \"$ref\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"textMessageDetails\": {\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\",\n - \ \"$ref\": \"LiveChatTextMessageDetails\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"membershipGiftingDetails\": - {\n \"description\": \"Details about the Membership Gifting event, - this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": - \"LiveChatMembershipGiftingDetails\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the message was orignally - published.\"\n },\n \"type\": {\n \"enum\": [\n \"invalidType\",\n - \ \"textMessageEvent\",\n \"tombstone\",\n \"fanFundingEvent\",\n - \ \"chatEndedEvent\",\n \"sponsorOnlyModeStartedEvent\",\n - \ \"sponsorOnlyModeEndedEvent\",\n \"newSponsorEvent\",\n - \ \"memberMilestoneChatEvent\",\n \"membershipGiftingEvent\",\n - \ \"giftMembershipReceivedEvent\",\n \"messageDeletedEvent\",\n - \ \"messageRetractedEvent\",\n \"userBannedEvent\",\n - \ \"superChatEvent\",\n \"superStickerEvent\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\",\n \"type\": - \"string\"\n },\n \"liveChatId\": {\n \"type\": \"string\"\n - \ },\n \"authorChannelId\": {\n \"description\": \"The - ID of the user that authored this message, this field is not always filled. - textMessageEvent - the user that wrote the message fanFundingEvent - the user - that funded the broadcast newSponsorEvent - the user that just became a sponsor - memberMilestoneChatEvent - the member that sent the message membershipGiftingEvent - - the user that made the purchase giftMembershipReceivedEvent - the user that - received the gift membership messageDeletedEvent - the moderator that took - the action messageRetractedEvent - the author that retracted their message - userBannedEvent - the moderator that took the action superChatEvent - the - user that made the purchase superStickerEvent - the user that made the purchase\",\n - \ \"type\": \"string\"\n },\n \"hasDisplayContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the message has display content that should be displayed to users.\"\n },\n - \ \"messageDeletedDetails\": {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n - \ },\n \"fanFundingEventDetails\": {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n - \ \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\"\n },\n \"superChatDetails\": - {\n \"$ref\": \"LiveChatSuperChatDetails\",\n \"description\": - \"Details about the Super Chat event, this is only set if the type is 'superChatEvent'.\"\n - \ },\n \"displayMessage\": {\n \"type\": \"string\",\n - \ \"description\": \"Contains a string that can be displayed to the - user. If this field is not present the message is silent, at the moment only - messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"Next ID: 33\"\n },\n \"SuperChatEvent\": {\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the Super Chat event.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the Super Chat event.\",\n \"$ref\": - \"SuperChatEventSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#superChatEvent\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\",\n \"type\": \"object\",\n \"id\": \"SuperChatEvent\"\n - \ },\n \"ActivityContentDetailsPlaylistItem\": {\n \"properties\": - {\n \"playlistId\": {\n \"description\": \"The value that - YouTube uses to uniquely identify the playlist.\",\n \"type\": \"string\"\n - \ },\n \"playlistItemId\": {\n \"type\": \"string\",\n - \ \"description\": \"ID of the item within the playlist.\"\n },\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\"\n }\n },\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n - \ \"type\": \"object\",\n \"description\": \"Information about a - new playlist item.\"\n },\n \"LiveChatTextMessageDetails\": {\n \"id\": - \"LiveChatTextMessageDetails\",\n \"properties\": {\n \"messageText\": - {\n \"type\": \"string\",\n \"description\": \"The user's - message.\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"properties\": - {\n \"gifterChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the user that made the membership gifting purchase. This matches - the `snippet.authorChannelId` of the associated membership gifting message.\"\n - \ },\n \"associatedMembershipGiftingMessageId\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the membership gifting - message that is related to this gift membership. This ID will always refer - to a message whose type is 'membershipGiftingEvent'.\"\n },\n \"memberLevelName\": - {\n \"description\": \"The name of the Level at which the viewer - is a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\"\n },\n \"LevelDetails\": {\n \"properties\": {\n \"displayName\": - {\n \"description\": \"The name that should be used when referring - to this level.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LevelDetails\",\n \"type\": \"object\"\n },\n \"VideoMonetizationDetails\": - {\n \"description\": \"Details about monetization of a YouTube Video.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"access\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - value of access indicates whether the video can be monetized or not.\"\n }\n - \ },\n \"id\": \"VideoMonetizationDetails\"\n },\n \"VideoAbuseReportReason\": - {\n \"type\": \"object\",\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the abuse report reason.\",\n \"$ref\": - \"VideoAbuseReportReasonSnippet\"\n },\n \"id\": {\n \"description\": - \"The ID of this abuse report reason.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoAbuseReportReason\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoAbuseReportReason\"\n - \ },\n \"ChannelContentDetails\": {\n \"description\": \"Details - about the content of a channel.\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"type\": \"object\",\n \"properties\": {\n \"watchLater\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch later playlist. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"favorites\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"likes\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"watchHistory\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"uploads\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s uploaded videos. Use the videos.insert method to upload new videos - and the videos.delete method to delete previously uploaded videos.\",\n \"type\": - \"string\"\n }\n }\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelContentDetails\"\n },\n \"VideoFileDetailsAudioStream\": - {\n \"description\": \"Information about an audio stream.\",\n \"type\": - \"object\",\n \"id\": \"VideoFileDetailsAudioStream\",\n \"properties\": - {\n \"bitrateBps\": {\n \"description\": \"The audio stream's - bitrate, in bits per second.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"codec\": {\n \"type\": \"string\",\n - \ \"description\": \"The audio codec that the stream uses.\"\n },\n - \ \"channelCount\": {\n \"format\": \"uint32\",\n \"description\": - \"The number of audio channels that the stream contains.\",\n \"type\": - \"integer\"\n },\n \"vendor\": {\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"LiveChatBan\": {\n \"properties\": {\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube assigns to uniquely identify the ban.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n \"default\": - \"youtube#liveChatBan\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the ban.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatBan\",\n \"description\": \"A `__liveChatBan__` resource represents - a ban for a YouTube live chat.\"\n },\n \"Channel\": {\n \"id\": - \"Channel\",\n \"description\": \"A *channel* resource contains information - about a YouTube channel.\",\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ChannelContentDetails\",\n \"description\": - \"The contentDetails object encapsulates information about the channel's content.\"\n - \ },\n \"topicDetails\": {\n \"$ref\": \"ChannelTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\"\n },\n \"localizations\": - {\n \"description\": \"Localizations for different languages\",\n - \ \"type\": \"object\",\n \"additionalProperties\": {\n \"$ref\": - \"ChannelLocalization\"\n }\n },\n \"status\": {\n - \ \"description\": \"The status object encapsulates information about - the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n - \ },\n \"brandingSettings\": {\n \"description\": \"The - brandingSettings object encapsulates information about the branding of the - channel.\",\n \"$ref\": \"ChannelBrandingSettings\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n - \ \"default\": \"youtube#channel\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel, such as its - title, description, and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n - \ },\n \"auditDetails\": {\n \"description\": \"The - auditionDetails object encapsulates channel data that is relevant for YouTube - Partners during the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n - \ },\n \"contentOwnerDetails\": {\n \"$ref\": \"ChannelContentOwnerDetails\",\n - \ \"description\": \"The contentOwnerDetails object encapsulates channel - data that is relevant for YouTube Partners linked with the channel.\"\n },\n - \ \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n - \ \"description\": \"The conversionPings object encapsulates information - about conversion pings that need to be respected by the channel.\"\n },\n - \ \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n \"description\": - \"The statistics object encapsulates statistics for the channel.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LocalizedProperty\": {\n - \ \"id\": \"LocalizedProperty\",\n \"type\": \"object\",\n \"properties\": - {\n \"defaultLanguage\": {\n \"description\": \"The language - of the default property.\",\n \"$ref\": \"LanguageTag\"\n },\n - \ \"default\": {\n \"type\": \"string\"\n },\n \"localized\": - {\n \"items\": {\n \"$ref\": \"LocalizedString\"\n },\n - \ \"type\": \"array\"\n }\n }\n },\n \"CommentListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#commentListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"Comment\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of comments that match the request criteria.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"tokenPagination\": {\n - \ \"$ref\": \"TokenPagination\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ }\n },\n \"id\": \"CommentListResponse\"\n },\n \"ResourceId\": - {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"The type of the API resource.\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a channel. This property - is only present if the resourceId.kind value is youtube#channel.\"\n },\n - \ \"playlistId\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the referred resource, if that resource is a playlist. - This property is only present if the resourceId.kind value is youtube#playlist.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ResourceId\",\n \"description\": \"A resource id is a - generic reference that points to another YouTube resource.\"\n },\n \"ChannelSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"localized\": - {\n \"description\": \"Localized title and description, read-only.\",\n - \ \"$ref\": \"ChannelLocalization\"\n },\n \"customUrl\": - {\n \"description\": \"The custom url of the channel.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - channel's title.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the channel was created.\"\n - \ },\n \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"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. When displaying thumbnails in your application, make - sure that your code uses the image URLs exactly as they are returned in API - responses. For example, your application should not use the http domain instead - of the https domain in a URL returned in an API response. Beginning in July - 2018, channel thumbnail URLs will only be available in the https domain, which - is how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\"\n },\n \"description\": {\n - \ \"type\": \"string\",\n \"description\": \"The description - of the channel.\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the channel's default - title and description.\"\n }\n },\n \"description\": \"Basic - details about a channel, including title, description and thumbnails.\",\n - \ \"id\": \"ChannelSnippet\"\n },\n \"PlaylistItemSnippet\": {\n - \ \"description\": \"Basic details about a playlist, including title, - description and thumbnails. Basic details of a YouTube Playlist item provided - by the author. Next ID: 15\",\n \"id\": \"PlaylistItemSnippet\",\n \"type\": - \"object\",\n \"properties\": {\n \"description\": {\n \"description\": - \"The item's description.\",\n \"type\": \"string\"\n },\n - \ \"resourceId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"description\": \"The id object contains - information that can be used to uniquely identify the resource that is included - in the playlist as the playlist item.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist item. 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.\"\n },\n \"videoOwnerChannelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel this - video belongs to.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the user that added the item to the playlist.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the playlist - item belongs to.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The item's - title.\"\n },\n \"videoOwnerChannelId\": {\n \"type\": - \"string\",\n \"description\": \"Channel id for the channel this - video belongs to.\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the item - was added to the playlist.\",\n \"type\": \"string\"\n },\n - \ \"playlistId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify thGe playlist that the playlist item is in.\",\n - \ \"type\": \"string\"\n },\n \"position\": {\n \"description\": - \"The order in which the item appears in the playlist. The value uses a zero-based - index, so the first item has a position of 0, the second item has a position - of 1, and so forth.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n }\n }\n },\n \"I18nLanguageSnippet\": {\n \"description\": - \"Basic details about an i18n language, such as language code and human-readable - name.\",\n \"type\": \"object\",\n \"properties\": {\n \"name\": - {\n \"description\": \"The human-readable name of the language in - the language itself.\",\n \"type\": \"string\"\n },\n \"hl\": - {\n \"description\": \"A short BCP-47 code that uniquely identifies - a language.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"I18nLanguageSnippet\"\n },\n \"Activity\": {\n \"id\": \"Activity\",\n - \ \"description\": \"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.\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the activity.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the activity, including the activity's type and group ID.\",\n \"$ref\": - \"ActivitySnippet\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource\",\n \"type\": \"string\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ActivityContentDetails\",\n \"description\": - \"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.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\",\n - \ \"default\": \"youtube#activity\"\n }\n },\n \"type\": - \"object\"\n },\n \"PlaylistStatus\": {\n \"properties\": {\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The playlist's privacy status.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"PlaylistStatus\"\n - \ },\n \"VideoRecordingDetails\": {\n \"properties\": {\n \"location\": - {\n \"description\": \"The geolocation information associated with - the video.\",\n \"$ref\": \"GeoPoint\"\n },\n \"recordingDate\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the video was recorded.\",\n \"format\": \"date-time\"\n - \ },\n \"locationDescription\": {\n \"type\": \"string\",\n - \ \"description\": \"The text description of the location where the - video was recorded.\"\n }\n },\n \"id\": \"VideoRecordingDetails\",\n - \ \"description\": \"Recording information associated with the video.\",\n - \ \"type\": \"object\"\n },\n \"CommentThreadSnippet\": {\n \"properties\": - {\n \"topLevelComment\": {\n \"description\": \"The top level - comment of this thread.\",\n \"$ref\": \"Comment\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comments refer to, if any. No video_id implies a - channel discussion comment.\"\n },\n \"canReply\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n },\n \"isPublic\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the thread (and therefore all its comments) - is visible to all YouTube users.\"\n },\n \"totalReplyCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The total number of replies (not including the top level comment).\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n }\n },\n \"description\": \"Basic - details about a comment thread.\",\n \"type\": \"object\",\n \"id\": - \"CommentThreadSnippet\"\n },\n \"ThirdPartyLinkSnippet\": {\n \"id\": - \"ThirdPartyLinkSnippet\",\n \"properties\": {\n \"channelToStoreLink\": - {\n \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\",\n \"$ref\": \"ChannelToStoreLinkDetails\"\n - \ },\n \"type\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel with - a store on a merchandising platform in order to enable retail commerce capabilities - for that channel on YouTube.\"\n ],\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"description\": - \"Type of the link named after the entities that are being linked.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic information - about a third party account link, including its type and type-specific information.\",\n - \ \"type\": \"object\"\n },\n \"SearchListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"description\": \"Pagination information for token pagination.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"SearchResult\"\n }\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"regionCode\": {\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#searchListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"id\": \"SearchListResponse\",\n \"type\": - \"object\"\n },\n \"MemberSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"memberDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - member.\"\n },\n \"membershipsDetails\": {\n \"$ref\": - \"MembershipsDetails\",\n \"description\": \"Details about the user's - membership.\"\n },\n \"creatorChannelId\": {\n \"type\": - \"string\",\n \"description\": \"The id of the channel that's offering - memberships.\"\n }\n },\n \"id\": \"MemberSnippet\"\n },\n - \ \"MembershipsLevel\": {\n \"description\": \"A *membershipsLevel* - resource represents an offer made by YouTube creators for their fans. Users - can become members of the channel by joining one of the available levels. - They will provide recurring monetary support and receives special benefits.\",\n - \ \"id\": \"MembershipsLevel\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the memberships level.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#membershipsLevel\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatMessage\": - {\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\",\n \"type\": - \"string\"\n },\n \"authorDetails\": {\n \"$ref\": - \"LiveChatMessageAuthorDetails\",\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveChatMessage\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessage\\\".\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"snippet\": - {\n \"$ref\": \"LiveChatMessageSnippet\",\n \"description\": - \"The snippet object contains basic details about the message.\"\n }\n - \ },\n \"id\": \"LiveChatMessage\",\n \"description\": \"A *liveChatMessage* - resource represents a chat message in a YouTube Live Chat.\",\n \"type\": - \"object\"\n },\n \"Member\": {\n \"id\": \"Member\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the member.\",\n \"$ref\": - \"MemberSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"default\": \"youtube#member\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"A *member* resource represents - a member for a YouTube channel. A member provides recurring monetary support - to a creator and receives special benefits.\",\n \"type\": \"object\"\n - \ },\n \"Caption\": {\n \"description\": \"A *caption* resource - represents a YouTube caption track. A caption track is associated with exactly - one YouTube video.\",\n \"id\": \"Caption\",\n \"properties\": {\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"default\": \"youtube#caption\"\n },\n \"id\": {\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the caption track.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"CaptionSnippet\",\n \"description\": \"The snippet object contains - basic details about the caption.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatSuperStickerDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"amountMicros\": {\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"currency\": {\n \"description\": \"The currency in which - the purchase was made.\",\n \"type\": \"string\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"tier\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\"\n },\n - \ \"superStickerMetadata\": {\n \"$ref\": \"SuperStickerMetadata\",\n - \ \"description\": \"Information about the Super Sticker.\"\n }\n - \ },\n \"id\": \"LiveChatSuperStickerDetails\"\n },\n \"CaptionListResponse\": - {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#captionListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#captionListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"items\": {\n \"items\": {\n - \ \"$ref\": \"Caption\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of captions that match the request criteria.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"CaptionListResponse\"\n - \ },\n \"ChannelSectionSnippet\": {\n \"properties\": {\n \"localized\": - {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": - \"Localized title, read-only.\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"type\": \"string\",\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"description\": \"The - type of the channel section.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the channel section's - default title and description.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel section's title for - multiple_playlists and multiple_channels.\"\n },\n \"style\": - {\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The style of the channel section.\"\n },\n \"position\": {\n - \ \"type\": \"integer\",\n \"description\": \"The position - of the channel section in the channel.\",\n \"format\": \"uint32\"\n - \ }\n },\n \"id\": \"ChannelSectionSnippet\",\n \"type\": - \"object\",\n \"description\": \"Basic details about a channel section, - including title, style and position.\"\n },\n \"SubscriptionListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Subscription\"\n },\n \"type\": - \"array\",\n \"description\": \"A list of subscriptions that match - the request criteria.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"visitorId\": {\n - \ \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n }\n - \ },\n \"id\": \"SubscriptionListResponse\"\n },\n \"ChannelSection\": - {\n \"properties\": {\n \"kind\": {\n \"default\": \"youtube#channelSection\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#channelSection\\\".\",\n \"type\": \"string\"\n - \ },\n \"targeting\": {\n \"description\": \"The targeting - object contains basic targeting settings about the channel section.\",\n \"$ref\": - \"ChannelSectionTargeting\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"localizations\": {\n \"additionalProperties\": {\n \"$ref\": - \"ChannelSectionLocalization\"\n },\n \"description\": \"Localizations - for different languages\",\n \"type\": \"object\"\n },\n \"snippet\": - {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"contentDetails\": {\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\",\n \"$ref\": \"ChannelSectionContentDetails\"\n - \ }\n },\n \"id\": \"ChannelSection\",\n \"type\": \"object\"\n - \ },\n \"ChannelBrandingSettings\": {\n \"description\": \"Branding - properties of a YouTube channel.\",\n \"id\": \"ChannelBrandingSettings\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"watch\": {\n - \ \"$ref\": \"WatchSettings\",\n \"description\": \"Branding - properties for the watch page.\"\n },\n \"channel\": {\n \"description\": - \"Branding properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n - \ },\n \"image\": {\n \"description\": \"Branding properties - for branding images.\",\n \"$ref\": \"ImageSettings\"\n },\n - \ \"hints\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"PropertyValue\"\n },\n \"description\": - \"Additional experimental branding properties.\"\n }\n }\n },\n - \ \"VideoSuggestionsTagSuggestion\": {\n \"properties\": {\n \"tag\": - {\n \"description\": \"The keyword tag suggested for the video.\",\n - \ \"type\": \"string\"\n },\n \"categoryRestricts\": - {\n \"description\": \"A set of video categories for which the tag - is relevant. You can use this information to display appropriate tag suggestions - based on the video category that the video uploader associates with the video. - By default, tag suggestions are relevant for all categories if there are no - restricts defined for the keyword.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"id\": \"VideoSuggestionsTagSuggestion\",\n \"description\": \"A - single tag suggestion with it's relevance information.\",\n \"type\": - \"object\"\n },\n \"VideoAbuseReport\": {\n \"id\": \"VideoAbuseReport\",\n - \ \"properties\": {\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the video.\",\n \"type\": - \"string\"\n },\n \"language\": {\n \"type\": \"string\",\n - \ \"description\": \"The language that the content was viewed in.\"\n - \ },\n \"reasonId\": {\n \"description\": \"The high-level, - or primary, reason that the content is abusive. The value is an abuse report - reason ID.\",\n \"type\": \"string\"\n },\n \"secondaryReasonId\": - {\n \"description\": \"The specific, or secondary, reason that this - content is abusive (if available). The value is an abuse report reason ID - that is a valid secondary reason for the primary reason.\",\n \"type\": - \"string\"\n },\n \"comments\": {\n \"type\": \"string\",\n - \ \"description\": \"Additional comments regarding the abuse report.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoCategoryListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n \"default\": - \"youtube#videoCategoryListResponse\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoCategory\"\n },\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n }\n },\n \"id\": \"VideoCategoryListResponse\",\n - \ \"type\": \"object\"\n },\n \"PlaylistLocalization\": {\n \"properties\": - {\n \"description\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for playlist's description.\"\n },\n \"title\": - {\n \"description\": \"The localized strings for playlist's title.\",\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Playlist localization setting\",\n \"type\": \"object\",\n \"id\": - \"PlaylistLocalization\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID of this abuse report - secondary reason.\",\n \"type\": \"string\"\n },\n \"label\": - {\n \"type\": \"string\",\n \"description\": \"The localized - label for this abuse report secondary reason.\"\n }\n },\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsSubscription\": {\n \"description\": - \"Information about a channel that a user subscribed to.\",\n \"id\": - \"ActivityContentDetailsSubscription\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource that the user subscribed - to.\"\n }\n },\n \"type\": \"object\"\n },\n \"I18nLanguage\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the i18n language, such as language code and human-readable - name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#i18nLanguage\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguage\\\".\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the i18n language.\"\n }\n },\n - \ \"description\": \"An *i18nLanguage* resource identifies a UI language - currently supported by YouTube.\",\n \"type\": \"object\",\n \"id\": - \"I18nLanguage\"\n },\n \"LiveBroadcastStatistics\": {\n \"type\": - \"object\",\n \"properties\": {\n \"concurrentViewers\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of viewers currently watching the broadcast. The property and its value - will be present if the broadcast has current viewers and the broadcast owner - has not hidden the viewcount for the video. Note that YouTube stops tracking - the number of concurrent viewers for a broadcast when the broadcast ends. - So, this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\"\n },\n \"totalChatCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The total - number of live chat messages currently on the broadcast. The property and - its value will be present if the broadcast is public, has the live chat feature - enabled, and has at least one message. Note that this field will not be filled - after the broadcast ends. So this property would not identify the number of - chat messages for an archived video of a completed live broadcast.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Statistics about - the live broadcast. These represent a snapshot of the values at the time of - the request. Statistics are only returned for live broadcasts.\",\n \"id\": - \"LiveBroadcastStatistics\"\n },\n \"ActivitySnippet\": {\n \"type\": - \"object\",\n \"id\": \"ActivitySnippet\",\n \"description\": \"Basic - details about an activity, including title, description, thumbnails, activity - type and group. Next ID: 12\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel associated with the activity.\"\n - \ },\n \"groupId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel responsible for - this activity\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time that the video was uploaded.\",\n \"type\": \"string\",\n - \ \"format\": \"date-time\"\n },\n \"type\": {\n \"enum\": - [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The type of activity that the resource - describes.\"\n },\n \"title\": {\n \"description\": - \"The title of the resource primarily associated with the activity.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"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.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the resource primarily associated with the activity. @mutable youtube.activities.insert\"\n - \ }\n }\n },\n \"LiveStreamHealthStatus\": {\n \"type\": - \"object\",\n \"properties\": {\n \"configurationIssues\": {\n - \ \"description\": \"The configurations issues on this stream\",\n - \ \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"type\": \"array\"\n },\n \"status\": - {\n \"description\": \"The status code of this stream\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"good\",\n - \ \"ok\",\n \"bad\",\n \"noData\",\n \"revoked\"\n - \ ],\n \"type\": \"string\"\n },\n \"lastUpdateTimeSeconds\": - {\n \"description\": \"The last time this status was updated (in - seconds)\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ }\n },\n \"id\": \"LiveStreamHealthStatus\"\n },\n \"LiveStreamContentDetails\": - {\n \"id\": \"LiveStreamContentDetails\",\n \"properties\": {\n - \ \"closedCaptionsIngestionUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The ingestion URL where the closed captions of - this stream are sent.\"\n },\n \"isReusable\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether the stream is - reusable, which means that it can be bound to multiple broadcasts. It is common - for broadcasters to reuse the same stream for many different broadcasts if - those broadcasts occur at different times. If you set this value to false, - then the stream will not be reusable, which means that it can only be bound - to one broadcast. Non-reusable streams differ from reusable streams in the - following ways: - A non-reusable stream can only be bound to one broadcast. - - A non-reusable stream might be deleted by an automated process after the - broadcast ends. - The liveStreams.list method does not list non-reusable streams - if you call the method and set the mine parameter to true. The only way to - use that method to retrieve the resource for a non-reusable stream is to use - the id parameter to identify the stream. \"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Detailed settings of a stream.\"\n },\n - \ \"PlaylistListResponse\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistListResponse\",\n \"properties\": {\n \"eventId\": {\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Playlist\"\n },\n - \ \"description\": \"A list of playlists that match the request criteria\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlistListResponse\"\n - \ }\n }\n },\n \"VideoSuggestions\": {\n \"type\": \"object\",\n - \ \"id\": \"VideoSuggestions\",\n \"description\": \"Specifies suggestions - on how to improve video content, including encoding hints, tag suggestions, - and editor suggestions.\",\n \"properties\": {\n \"processingErrors\": - {\n \"type\": \"array\",\n \"description\": \"A list of - errors that will prevent YouTube from successfully processing the uploaded - video video. These errors indicate that, regardless of the video's current - processing status, eventually, that status will almost certainly be failed.\",\n - \ \"items\": {\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ]\n }\n },\n \"processingHints\": - {\n \"items\": {\n \"enumDescriptions\": [\n \"The - MP4 file is not streamable, this will slow down the processing. MOOV atom - was not found at the beginning of the file.\",\n \"Probably a - better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"nonStreamableMov\",\n - \ \"sendBestQualityVideo\",\n \"sphericalVideo\",\n - \ \"spatialAudio\",\n \"vrVideo\",\n \"hdrVideo\"\n - \ ]\n },\n \"type\": \"array\",\n \"description\": - \"A list of suggestions that may improve YouTube's ability to process the - video.\"\n },\n \"tagSuggestions\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ },\n \"description\": \"A list of keyword tags that could - be added to the video's metadata to increase the likelihood that users will - locate your video when searching or browsing on YouTube.\"\n },\n \"editorSuggestions\": - {\n \"description\": \"A list of video editing operations that might - improve the video quality or playback experience of the uploaded video.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"Picture - brightness levels seem off and could be corrected.\",\n \"The - video appears shaky and could be stabilized.\",\n \"Margins (mattes) - detected around the picture could be cropped.\",\n \"The audio - track appears silent and could be swapped with a better quality one.\"\n ],\n - \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ]\n - \ }\n },\n \"processingWarnings\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ],\n \"enumDescriptions\": [\n \"Unrecognized - file format, transcoding is likely to fail.\",\n \"Unrecognized - video codec, transcoding is likely to fail.\",\n \"Unrecognized - audio codec, transcoding is likely to fail.\",\n \"Conflicting - container and stream resolutions.\",\n \"Edit lists are not currently - supported.\",\n \"Video codec that is known to cause problems - was used.\",\n \"Audio codec that is known to cause problems - was used.\",\n \"Unsupported VR video stereo mode.\",\n \"Unsupported - spherical video projection type.\",\n \"Unsupported HDR pixel - format.\",\n \"Unspecified HDR color metadata.\",\n \"Problematic - HDR lookup table attached.\"\n ]\n },\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\"\n }\n }\n },\n \"LanguageTag\": {\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LanguageTag\"\n },\n \"LiveStream\": - {\n \"id\": \"LiveStream\",\n \"description\": \"A live stream describes - a live ingestion point.\",\n \"properties\": {\n \"status\": {\n - \ \"description\": \"The status object contains information about - live stream's status.\",\n \"$ref\": \"LiveStreamStatus\"\n },\n - \ \"cdn\": {\n \"description\": \"The cdn object defines the - live stream's content delivery network (CDN) settings. These settings provide - details about the manner in which you stream your content to YouTube.\",\n - \ \"$ref\": \"CdnSettings\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the stream.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n }\n },\n \"kind\": {\n \"default\": - \"youtube#liveStream\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"LiveStreamSnippet\",\n \"description\": \"The snippet object contains - basic details about the stream, including its channel, title, and description.\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"LiveStreamContentDetails\",\n - \ \"description\": \"The content_details object contains information - about the stream, including the closed captions ingestion URL.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"Entity\": {\n \"type\": \"object\",\n \"properties\": - {\n \"url\": {\n \"type\": \"string\"\n },\n \"typeId\": - {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"Entity\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"properties\": {\n \"destinationUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should direct - the user to, if the user chooses to visit the advertiser's website.\"\n },\n - \ \"creativeViewUrl\": {\n \"type\": \"string\",\n \"description\": - \"The URL the client should ping to indicate that the user was shown this - promoted item.\"\n },\n \"customCtaButtonText\": {\n \"description\": - \"The custom call-to-action button text. If specified, it will override the - default button text for the cta_type.\",\n \"type\": \"string\"\n - \ },\n \"clickTrackingUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL the client should ping to indicate that - the user clicked through on this promoted item.\"\n },\n \"descriptionText\": - {\n \"description\": \"The text description to accompany the promoted - item.\",\n \"type\": \"string\"\n },\n \"adTag\": {\n - \ \"type\": \"string\",\n \"description\": \"The URL the - client should fetch to request a promoted item.\"\n },\n \"impressionUrl\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The list of impression URLs. The client should - ping all of these URLs to indicate that the user was shown this promoted item.\",\n - \ \"type\": \"array\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the promoted video.\",\n \"type\": - \"string\"\n },\n \"ctaType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"type\": \"string\",\n \"enum\": [\n - \ \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ]\n },\n \"forecastingUrl\": {\n \"description\": - \"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.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"description\": \"Details - about a resource which is being promoted.\"\n },\n \"VideoFileDetails\": - {\n \"id\": \"VideoFileDetails\",\n \"description\": \"Describes - original video file properties, including technical details about audio and - video streams, but also metadata information like content length, digitization - time, or geotagging information.\",\n \"type\": \"object\",\n \"properties\": - {\n \"creationTime\": {\n \"type\": \"string\",\n \"description\": - \"The date and time when the uploaded video file was created. The value is - specified in ISO 8601 format. Currently, the following ISO 8601 formats are - supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time - with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"durationMs\": - {\n \"format\": \"uint64\",\n \"description\": \"The length - of the uploaded video in milliseconds.\",\n \"type\": \"string\"\n - \ },\n \"container\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded video file's container format.\"\n },\n \"fileName\": - {\n \"description\": \"The uploaded file's name. This field is present - whether a video file or another type of file was uploaded.\",\n \"type\": - \"string\"\n },\n \"bitrateBps\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - video file's combined (video and audio) bitrate in bits per second.\"\n },\n - \ \"fileSize\": {\n \"description\": \"The uploaded file's - size in bytes. This field is present whether a video file or another type - of file was uploaded.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"fileType\": {\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ],\n \"description\": \"The uploaded file's - type as detected by YouTube's video processing engine. Currently, YouTube - only processes video files, but this field is present whether a video file - or another type of file was uploaded.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ]\n },\n \"videoStreams\": - {\n \"description\": \"A list of video streams contained in the uploaded - video file. Each item in the list contains detailed metadata about a video - stream.\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n }\n },\n \"audioStreams\": - {\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ },\n \"description\": \"A list of audio streams contained - in the uploaded video file. Each item in the list contains detailed metadata - about an audio stream.\",\n \"type\": \"array\"\n }\n }\n - \ },\n \"VideoSnippet\": {\n \"description\": \"Basic details about - a video, including title, description, uploader, thumbnails and category.\",\n - \ \"properties\": {\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the video - was uploaded.\",\n \"type\": \"string\"\n },\n \"thumbnails\": - {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": \"A - map of thumbnail images associated with the video. 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.\"\n },\n \"categoryId\": - {\n \"description\": \"The YouTube video category associated with - the video.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The video's description. @mutable youtube.videos.insert - youtube.videos.update\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"$ref\": \"VideoLocalization\",\n \"description\": - \"Localized snippet selected with the hl parameter. If no such localization - exists, this field is populated with the default snippet. (Read-only)\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that the video was uploaded - to.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the videos's default snippet.\"\n },\n \"tags\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of keyword tags associated with the video. Tags may contain spaces.\",\n - \ \"type\": \"array\"\n },\n \"liveBroadcastContent\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"description\": \"Indicates - if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" if - the video is not an upcoming/active live broadcast.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"description\": \"The - video's title. @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": - \"string\"\n },\n \"defaultAudioLanguage\": {\n \"description\": - \"The default_audio_language property specifies the language spoken in the - video's default audio track.\",\n \"type\": \"string\"\n },\n - \ \"channelTitle\": {\n \"description\": \"Channel title for - the channel that the video belongs to.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoSnippet\",\n \"type\": \"object\"\n - \ },\n \"I18nLanguageListResponse\": {\n \"properties\": {\n \"items\": - {\n \"items\": {\n \"$ref\": \"I18nLanguage\"\n },\n - \ \"description\": \"A list of supported i18n languages. In this map, - the i18n language ID is the map key, and its value is the corresponding i18nLanguage - resource.\",\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n - \ \"default\": \"youtube#i18nLanguageListResponse\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"I18nLanguageListResponse\",\n \"type\": - \"object\"\n },\n \"VideoContentDetails\": {\n \"id\": \"VideoContentDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Details about the content - of a YouTube Video.\",\n \"properties\": {\n \"projection\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"Specifies the projection format of the video.\"\n },\n \"countryRestriction\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - countryRestriction object contains information about the countries where a - video is (or is not) viewable.\"\n },\n \"definition\": {\n - \ \"description\": \"The value of definition indicates whether the - video is available in high definition or only in standard definition.\",\n - \ \"enum\": [\n \"sd\",\n \"hd\"\n ],\n - \ \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"type\": \"string\"\n },\n \"contentRating\": - {\n \"description\": \"Specifies the ratings that the video received - under various rating schemes.\",\n \"$ref\": \"ContentRating\"\n - \ },\n \"dimension\": {\n \"type\": \"string\",\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\"\n },\n \"duration\": {\n \"description\": - \"The length of the video. The tag value is an ISO 8601 duration in the format - PT#M#S, in which the letters PT indicate that the value specifies a period - of time, and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\",\n \"type\": - \"string\"\n },\n \"regionRestriction\": {\n \"$ref\": - \"VideoContentDetailsRegionRestriction\",\n \"description\": \"The - regionRestriction object contains information about the countries where a - video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed - property or the contentDetails.regionRestriction.blocked property.\"\n },\n - \ \"hasCustomThumbnail\": {\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n },\n \"caption\": {\n \"enum\": [\n \"true\",\n - \ \"false\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"The value of - captions indicates whether the video has captions or not.\",\n \"type\": - \"string\"\n },\n \"licensedContent\": {\n \"description\": - \"The value of is_license_content indicates whether the video is licensed - content.\",\n \"type\": \"boolean\"\n }\n }\n },\n - \ \"InvideoTiming\": {\n \"type\": \"object\",\n \"properties\": - {\n \"type\": {\n \"description\": \"Describes a timing type. - If the value is offsetFromStart, then the offsetMs field represents an offset - from the start of the video. If the value is offsetFromEnd, then the offsetMs - field represents an offset from the end of the video.\",\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"offsetMs\": {\n \"format\": - \"uint64\",\n \"description\": \"Defines the time at which the promotion - will appear. Depending on the value of type the value of the offsetMs field - will represent a time offset from the start or from the end of the video, - expressed in milliseconds.\",\n \"type\": \"string\"\n },\n - \ \"durationMs\": {\n \"description\": \"Defines the duration - in milliseconds for which the promotion should be displayed. If missing, the - client should use the default.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"InvideoTiming\",\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\"\n },\n - \ \"VideoLiveStreamingDetails\": {\n \"properties\": {\n \"activeLiveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the currently active live chat attached to this video. This field is filled - only if the video is a currently live broadcast that has live chat. Once the - broadcast transitions to complete this field will be removed and the live - chat closed down. For persistent broadcasts that live chat id will no longer - be tied to this video but rather to the new video being displayed at the persistent - page.\"\n },\n \"scheduledStartTime\": {\n \"description\": - \"The time that the broadcast is scheduled to begin.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"actualEndTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast actually ended. This - value will not be available until the broadcast is over.\"\n },\n \"actualStartTime\": - {\n \"type\": \"string\",\n \"description\": \"The time - that the broadcast actually started. This value will not be available until - the broadcast begins.\",\n \"format\": \"date-time\"\n },\n - \ \"scheduledEndTime\": {\n \"description\": \"The time that - the broadcast is scheduled to end. If the value is empty or the property is - not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"concurrentViewers\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\"\n }\n },\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"type\": \"object\",\n \"description\": \"Details about the live - streaming metadata.\"\n },\n \"LiveChatUserBannedMessageDetails\": {\n - \ \"properties\": {\n \"banDurationSeconds\": {\n \"description\": - \"The duration of the ban. This property is only present if the banType is - temporary.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ },\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"The details of the user that was banned.\"\n - \ },\n \"banType\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"The type of ban.\",\n - \ \"enum\": [\n \"permanent\",\n \"temporary\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"ThumbnailDetails\": {\n \"description\": \"Internal representation - of thumbnails for a YouTube resource.\",\n \"id\": \"ThumbnailDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"default\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The default - image for this resource.\"\n },\n \"medium\": {\n \"description\": - \"The medium quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"maxres\": {\n \"description\": \"The maximum - resolution quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"high\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The high quality image for this resource.\"\n },\n \"standard\": - {\n \"description\": \"The standard quality image for this resource.\",\n - \ \"$ref\": \"Thumbnail\"\n }\n }\n },\n \"PageInfo\": - {\n \"properties\": {\n \"resultsPerPage\": {\n \"format\": - \"int32\",\n \"description\": \"The number of results included in - the API response.\",\n \"type\": \"integer\"\n },\n \"totalResults\": - {\n \"description\": \"The total number of results in the result - set.\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ }\n },\n \"description\": \"Paging details for lists of - resources, including total number of items available and number of resources - returned in a single page.\",\n \"id\": \"PageInfo\",\n \"type\": - \"object\"\n },\n \"I18nRegionListResponse\": {\n \"id\": \"I18nRegionListResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"items\": {\n \"description\": \"A list of regions - where YouTube is available. In this map, the i18n region ID is the map key, - and its value is the corresponding i18nRegion resource.\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"I18nRegion\"\n - \ }\n },\n \"kind\": {\n \"default\": \"youtube#i18nRegionListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoAgeGating\": {\n \"properties\": {\n \"videoGameRating\": - {\n \"description\": \"Video game rating, if any.\",\n \"enum\": - [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"alcoholContent\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether or not the video - has alcoholic beverage content. Only users of legal purchasing age in a particular - country, as identified by ICAP, can view the content.\"\n },\n \"restricted\": - {\n \"description\": \"Age-restricted trailers. For redband trailers - and adult-rated video-games. Only users aged 18+ can view the content. The - the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\",\n \"type\": \"boolean\"\n }\n - \ },\n \"id\": \"VideoAgeGating\",\n \"type\": \"object\"\n - \ },\n \"RelatedEntity\": {\n \"type\": \"object\",\n \"id\": - \"RelatedEntity\",\n \"properties\": {\n \"entity\": {\n \"$ref\": - \"Entity\"\n }\n }\n },\n \"ContentRating\": {\n \"type\": - \"object\",\n \"properties\": {\n \"cscfRating\": {\n \"enum\": - [\n \"cscfUnspecified\",\n \"cscfAl\",\n \"cscfA\",\n - \ \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n - \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Luxembourg's Commission de surveillance de la classification des films - (CSCF).\"\n },\n \"acbRating\": {\n \"description\": - \"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.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"Programs that have been given a P classification - by the Australian Communications and Media Authority. These programs are intended - for preschool children.\",\n \"Programs that have been given a - C classification by the Australian Communications and Media Authority. These - programs are intended for children (other than preschool children) who are - younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"csaRating\": {\n \"description\": \"The video's - rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, which rates - broadcast content.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"Interdiction\",\n \"\"\n ],\n - \ \"enum\": [\n \"csaUnspecified\",\n \"csaT\",\n - \ \"csa10\",\n \"csa12\",\n \"csa16\",\n \"csa18\",\n - \ \"csaInterdiction\",\n \"csaUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"mocRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Ministerio de Cultura - (Colombia) rating.\",\n \"enum\": [\n \"mocUnspecified\",\n - \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n - \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ]\n },\n \"grfilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Greece.\",\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ]\n - \ },\n \"rtcRating\": {\n \"description\": \"The video's - General Directorate of Radio, Television and Cinematography (Mexico) rating.\",\n - \ \"enum\": [\n \"rtcUnspecified\",\n \"rtcAa\",\n - \ \"rtcA\",\n \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n - \ \"rtcD\",\n \"rtcUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n - \ \"D\",\n \"\"\n ]\n },\n \"cnaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"description\": - \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\",\n \"enumDescriptions\": [\n \"\",\n \"AP\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n - \ \"\"\n ]\n },\n \"mccaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\",\n \"type\": - \"string\",\n \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n - \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n - \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n - \ \"mccaa18\",\n \"mccaaUnrated\"\n ]\n },\n - \ \"mekuRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti - (National Audiovisual Institute).\",\n \"enumDescriptions\": [\n - \ \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"mekuUnspecified\",\n \"mekuS\",\n - \ \"meku7\",\n \"meku12\",\n \"meku16\",\n - \ \"meku18\",\n \"mekuUnrated\"\n ]\n },\n - \ \"rteRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"GA\",\n \"CH\",\n \"PS\",\n \"MA\",\n - \ \"\"\n ],\n \"enum\": [\n \"rteUnspecified\",\n - \ \"rteGa\",\n \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n - \ \"rteUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs - \xC9ireann.\"\n },\n \"nbcRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12+\",\n \"15+\",\n \"18+\",\n - \ \"18+R\",\n \"PU\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Maldives National - Bureau of Classification.\",\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ]\n },\n - \ \"kfcbRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Kenya Film Classification Board.\",\n \"enum\": - [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ]\n },\n \"bfvcRating\": {\n \"enum\": [\n - \ \"bfvcUnspecified\",\n \"bfvcG\",\n \"bfvcE\",\n - \ \"bfvc13\",\n \"bfvc15\",\n \"bfvc18\",\n - \ \"bfvc20\",\n \"bfvcB\",\n \"bfvcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Thailand's Board of Film and Video Censors.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ]\n },\n - \ \"lsfRating\": {\n \"enum\": [\n \"lsfUnspecified\",\n - \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n - \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n - \ \"lsfUnrated\"\n ],\n \"description\": \"The - video's rating from Indonesia's Lembaga Sensor Film.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ]\n },\n \"eefilmRating\": {\n \"description\": - \"The video's rating in Estonia.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Pere\",\n \"L\",\n \"MS-6\",\n \"K-6\",\n - \ \"MS-12\",\n \"K-12\",\n \"K-14\",\n \"K-16\",\n - \ \"\"\n ],\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"rcnofRating\": - {\n \"enum\": [\n \"rcnofUnspecified\",\n \"rcnofI\",\n - \ \"rcnofIi\",\n \"rcnofIii\",\n \"rcnofIv\",\n - \ \"rcnofV\",\n \"rcnofVi\",\n \"rcnofUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Hungarian Nemzeti - Filmiroda, the Rating Committee of the National Office of Film.\"\n },\n - \ \"fcbmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG13\",\n \"P13\",\n \"18\",\n - \ \"18SX\",\n \"18PA\",\n \"18SG\",\n \"18PL\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Malaysia's Film Censorship Board.\",\n \"enum\": - [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ]\n },\n \"smaisRating\": - {\n \"description\": \"The video's rating in Iceland.\",\n \"type\": - \"string\",\n \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"nmcRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"PG-15\",\n - \ \"15+\",\n \"18+\",\n \"18TC\",\n \"\"\n - \ ],\n \"description\": \"The National Media Council ratings - system for United Arab Emirates.\",\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ]\n },\n - \ \"fmocRating\": {\n \"description\": \"This property has - been deprecated. Use the contentDetails.contentRating.cncRating instead.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"E\",\n \"\"\n ],\n - \ \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ]\n },\n \"ilfilmRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"AA\",\n - \ \"12\",\n \"14\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ],\n \"description\": \"The video's rating in Israel.\"\n - \ },\n \"czfilmRating\": {\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"12\",\n \"14\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in the Czech - Republic.\"\n },\n \"fpbRating\": {\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\",\n - \ \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"PG\",\n \"7-9PG\",\n - \ \"10-12PG\",\n \"13\",\n \"16\",\n \"18\",\n - \ \"X18\",\n \"XX\",\n \"\",\n \"10\"\n - \ ]\n },\n \"nkclvRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"7+\",\n \"12+\",\n - \ \"! 16+\",\n \"18+\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\",\n - \ \"enum\": [\n \"nkclvUnspecified\",\n \"nkclvU\",\n - \ \"nkclv7plus\",\n \"nkclv12plus\",\n \"nkclv16plus\",\n - \ \"nkclv18plus\",\n \"nkclvUnrated\"\n ]\n - \ },\n \"mdaRating\": {\n \"description\": \"The video's - rating from Singapore's Media Development Authority (MDA) and, specifically, - it's Board of Film Censors (BFC).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n - \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n - \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n - \ ]\n },\n \"mibacRating\": {\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\",\n \"type\": \"string\",\n \"enum\": - [\n \"mibacUnspecified\",\n \"mibacT\",\n \"mibacVap\",\n - \ \"mibacVm6\",\n \"mibacVm12\",\n \"mibacVm14\",\n - \ \"mibacVm16\",\n \"mibacVm18\",\n \"mibacUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"cccRating\": {\n \"description\": \"The video's Consejo - de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"enum\": - [\n \"cccUnspecified\",\n \"cccTe\",\n \"ccc6\",\n - \ \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"russiaRating\": {\n \"enum\": [\n - \ \"russiaUnspecified\",\n \"russia0\",\n \"russia6\",\n - \ \"russia12\",\n \"russia16\",\n \"russia18\",\n - \ \"russiaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's National - Film Registry of the Russian Federation (MKRF - Russia) rating.\"\n },\n - \ \"agcomRating\": {\n \"enum\": [\n \"agcomUnspecified\",\n - \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n - \ \"agcomUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Italy's Autorit\xE0 per - le Garanzie nelle Comunicazioni (AGCOM).\"\n },\n \"nbcplRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The video's rating in Poland.\",\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ]\n },\n \"fcoRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"I\",\n - \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from Hong Kong's Office for Film, Newspaper and Article Administration.\",\n - \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n - \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n - \ \"fcoIii\",\n \"fcoUnrated\"\n ]\n },\n - \ \"ecbmctRating\": {\n \"description\": \"Rating system in - Turkey - Evaluation and Classification Board of the Ministry of Culture and - Tourism\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ],\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ]\n },\n \"moctwRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"moctwUnspecified\",\n - \ \"moctwG\",\n \"moctwP\",\n \"moctwPg\",\n - \ \"moctwR\",\n \"moctwUnrated\",\n \"moctwR12\",\n - \ \"moctwR15\"\n ],\n \"description\": \"The video's - rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ]\n },\n \"cncRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ],\n - \ \"description\": \"Rating system in France - Commission de classification - cinematographique\",\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ]\n },\n \"pefilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Peru.\",\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ]\n },\n \"oflcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ],\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\",\n \"type\": \"string\",\n \"enum\": [\n \"oflcUnspecified\",\n - \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n - \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n - \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n - \ \"oflcRp16\",\n \"oflcRp18\"\n ]\n },\n - \ \"ifcoRating\": {\n \"enum\": [\n \"ifcoUnspecified\",\n - \ \"ifcoG\",\n \"ifcoPg\",\n \"ifco12\",\n - \ \"ifco12a\",\n \"ifco15\",\n \"ifco15a\",\n - \ \"ifco16\",\n \"ifco18\",\n \"ifcoUnrated\"\n - \ ],\n \"description\": \"The video's Irish Film Classification - Office (IFCO - Ireland) rating. See the IFCO website for more information.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"mpaaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"mpaaUnspecified\",\n - \ \"mpaaG\",\n \"mpaaPg\",\n \"mpaaPg13\",\n - \ \"mpaaR\",\n \"mpaaNc17\",\n \"mpaaX\",\n - \ \"mpaaUnrated\"\n ],\n \"description\": \"The - video's Motion Picture Association of America (MPAA) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"NC-17\",\n \"! X\",\n \"\"\n - \ ]\n },\n \"fskRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle - der Filmwirtschaft (FSK - Germany) rating.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ]\n },\n \"icaaRating\": - {\n \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"type\": - \"string\",\n \"enum\": [\n \"icaaUnspecified\",\n \"icaaApta\",\n - \ \"icaa7\",\n \"icaa12\",\n \"icaa13\",\n - \ \"icaa16\",\n \"icaa18\",\n \"icaaX\",\n - \ \"icaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ]\n },\n \"incaaRating\": {\n \"enum\": - [\n \"incaaUnspecified\",\n \"incaaAtp\",\n \"incaaSam13\",\n - \ \"incaaSam16\",\n \"incaaSam18\",\n \"incaaC\",\n - \ \"incaaUnrated\"\n ],\n \"description\": \"The - video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - Argentina) - rating.\",\n \"enumDescriptions\": [\n \"\",\n \"ATP - (Apta para todo publico)\",\n \"13 (Solo apta para mayores de 13 - a\xF1os)\",\n \"16 (Solo apta para mayores de 16 a\xF1os)\",\n - \ \"18 (Solo apta para mayores de 18 a\xF1os)\",\n \"X - (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n condicionada)\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"egfilmRating\": {\n \"description\": \"The video's rating - in Egypt.\",\n \"enum\": [\n \"egfilmUnspecified\",\n - \ \"egfilmGn\",\n \"egfilm18\",\n \"egfilmBn\",\n - \ \"egfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ]\n - \ },\n \"cbfcRating\": {\n \"enum\": [\n \"cbfcUnspecified\",\n - \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n - \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n - \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ],\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\",\n - \ \"type\": \"string\"\n },\n \"medietilsynetRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"description\": \"The video's rating from Medietilsynet, - the Norwegian Media Authority.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n - \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"\"\n ]\n },\n \"menaMpaaRating\": {\n - \ \"enum\": [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n - \ \"menaMpaaPg\",\n \"menaMpaaPg13\",\n \"menaMpaaR\",\n - \ \"menaMpaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ],\n \"type\": \"string\",\n \"description\": - \"The rating system for MENA countries, a clone of MPAA. It is needed to prevent - titles go live w/o additional QC check, since some of them can be inappropriate - for the countries at all. See b/33408548 for more details.\"\n },\n - \ \"tvpgRating\": {\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's TV Parental Guidelines (TVPG) rating.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n - \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n - \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n - \ ]\n },\n \"cceRating\": {\n \"enum\": [\n - \ \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n - \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n - \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"description\": \"The video's rating from Portugal's - Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"type\": - \"string\"\n },\n \"eirinRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Eirin (\u6620\u502B) rating. Eirin - is the Japanese rating system.\",\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n - \ ]\n },\n \"anatelRating\": {\n \"description\": - \"The video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for - Chilean television.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"enum\": [\n \"anatelUnspecified\",\n - \ \"anatelF\",\n \"anatelI\",\n \"anatelI7\",\n - \ \"anatelI10\",\n \"anatelI12\",\n \"anatelR\",\n - \ \"anatelA\",\n \"anatelUnrated\"\n ]\n },\n - \ \"bmukkRating\": {\n \"enum\": [\n \"bmukkUnspecified\",\n - \ \"bmukkAa\",\n \"bmukk6\",\n \"bmukk8\",\n - \ \"bmukk10\",\n \"bmukk12\",\n \"bmukk14\",\n - \ \"bmukk16\",\n \"bmukkUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"type\": \"string\"\n - \ },\n \"nfvcbRating\": {\n \"enum\": [\n \"nfvcbUnspecified\",\n - \ \"nfvcbG\",\n \"nfvcbPg\",\n \"nfvcb12\",\n - \ \"nfvcb12a\",\n \"nfvcb15\",\n \"nfvcb18\",\n - \ \"nfvcbRe\",\n \"nfvcbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"18\",\n \"RE\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\"\n - \ },\n \"mccypRating\": {\n \"enum\": [\n \"mccypUnspecified\",\n - \ \"mccypA\",\n \"mccyp7\",\n \"mccyp11\",\n - \ \"mccyp15\",\n \"mccypUnrated\"\n ],\n \"description\": - \"The video's rating from the Danish Film Institute's (Det Danske Filminstitut) - Media Council for Children and Young People.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ]\n },\n \"nfrcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"X\",\n \"\"\n ],\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Bulgarian National Film Center.\"\n },\n - \ \"mpaatRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"GB\",\n \"RB\"\n ],\n \"type\": - \"string\",\n \"description\": \"The rating system for trailer, DVD, - and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ]\n },\n \"djctqRating\": - {\n \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\"\n },\n \"catvfrRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"catvfrUnspecified\",\n \"catvfrG\",\n \"catvfr8plus\",\n - \ \"catvfr13plus\",\n \"catvfr16plus\",\n \"catvfr18plus\",\n - \ \"catvfrUnrated\",\n \"catvfrE\"\n ],\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"catvRating\": {\n \"enum\": [\n - \ \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n - \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n - \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"C\",\n - \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n - \ \"18+\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"kmrbRating\": {\n \"description\": - \"The video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\",\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ]\n },\n \"mcstRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n - \ \"description\": \"The video's rating system for Vietnam - MCST\",\n - \ \"enum\": [\n \"mcstUnspecified\",\n \"mcstP\",\n - \ \"mcst0\",\n \"mcstC13\",\n \"mcstC16\",\n - \ \"mcst16plus\",\n \"mcstC18\",\n \"mcstGPg\",\n - \ \"mcstUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"skfilmRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ],\n \"description\": - \"The video's rating in Slovakia.\",\n \"type\": \"string\",\n \"enum\": - [\n \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n - \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n - \ ]\n },\n \"djctqRatingReasons\": {\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n - \ \"items\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Brazil rating content descriptors. See http://go/brazilratings - section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia extrema - (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual content)\",\n - \ \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo - Expl\xEDcito (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ],\n \"enum\": [\n \"djctqRatingReasonUnspecified\",\n - \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n - \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n - \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n - \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n - \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n - \ ],\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"kijkwijzerRating\": {\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\",\n \"enum\": - [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ]\n },\n \"chvrsRating\": {\n \"description\": - \"The video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n - \ \"E\",\n \"\"\n ]\n },\n \"bbfcRating\": - {\n \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n - \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n - \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n - \ \"bbfcUnrated\"\n ],\n \"description\": \"The - video's British Board of Film Classification (BBFC) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ]\n - \ },\n \"resorteviolenciaRating\": {\n \"enum\": [\n - \ \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Venezuela.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"A\",\n \"B\",\n \"C\",\n - \ \"D\",\n \"E\",\n \"\"\n ]\n },\n - \ \"chfilmRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"enum\": [\n \"chfilmUnspecified\",\n \"chfilm0\",\n - \ \"chfilm6\",\n \"chfilm12\",\n \"chfilm16\",\n - \ \"chfilm18\",\n \"chfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Switzerland.\"\n },\n \"cicfRating\": - {\n \"description\": \"The video's rating from the Commission de - Contr\xF4le des Films (Belgium).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ],\n \"enum\": [\n \"cicfUnspecified\",\n - \ \"cicfE\",\n \"cicfKtEa\",\n \"cicfKntEna\",\n - \ \"cicfUnrated\"\n ]\n },\n \"smsaRating\": - {\n \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"All ages\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Statens - medier\xE5d (Sweden's National Media Council).\"\n },\n \"ytRating\": - {\n \"enum\": [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"A rating that YouTube uses to identify age-restricted content.\"\n },\n - \ \"mtrcbRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"R-13\",\n \"R-16\",\n - \ \"R-18\",\n \"X\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"mtrcbUnspecified\",\n - \ \"mtrcbG\",\n \"mtrcbPg\",\n \"mtrcbR13\",\n - \ \"mtrcbR16\",\n \"mtrcbR18\",\n \"mtrcbX\",\n - \ \"mtrcbUnrated\"\n ],\n \"description\": \"The - video's rating from the Movie and Television Review and Classification Board - (Philippines).\"\n },\n \"fpbRatingReasons\": {\n \"items\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n - \ \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ]\n },\n - \ \"type\": \"array\",\n \"description\": \"Reasons that - explain why the video received its FPB (South Africa) rating.\"\n }\n - \ },\n \"description\": \"Ratings schemes. The country-specific ratings - are mostly for movies and shows. LINT.IfChange\",\n \"id\": \"ContentRating\"\n - \ },\n \"ChannelTopicDetails\": {\n \"id\": \"ChannelTopicDetails\",\n - \ \"description\": \"Freebase topic information related to the channel.\",\n - \ \"properties\": {\n \"topicCategories\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Wikipedia URLs that describe the channel's content.\",\n \"type\": - \"array\"\n },\n \"topicIds\": {\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"CommentThreadReplies\": - {\n \"description\": \"Comments written in (direct or indirect) reply - to the top level comment.\",\n \"id\": \"CommentThreadReplies\",\n \"properties\": - {\n \"comments\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"description\": - \"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.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageListResponse\": {\n \"properties\": {\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"offlineAt\": {\n - \ \"format\": \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the underlying stream went offline.\"\n },\n - \ \"pollingIntervalMillis\": {\n \"type\": \"integer\",\n \"description\": - \"The amount of time the client should wait before polling again.\",\n \"format\": - \"uint32\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatMessageListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatMessageListResponse\\\".\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatMessage\"\n }\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n },\n \"id\": \"LiveChatMessageListResponse\",\n \"type\": - \"object\"\n },\n \"Thumbnail\": {\n \"type\": \"object\",\n \"id\": - \"Thumbnail\",\n \"description\": \"A thumbnail is an image representing - a YouTube resource.\",\n \"properties\": {\n \"url\": {\n \"type\": - \"string\",\n \"description\": \"The thumbnail image's URL.\"\n },\n - \ \"height\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"(Optional) Height of the thumbnail - image.\"\n },\n \"width\": {\n \"description\": \"(Optional) - Width of the thumbnail image.\",\n \"type\": \"integer\",\n \"format\": - \"uint32\"\n }\n }\n },\n \"VideoCategory\": {\n \"id\": - \"VideoCategory\",\n \"properties\": {\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#videoCategory\\\".\",\n \"default\": - \"youtube#videoCategory\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video category.\"\n },\n \"snippet\": {\n \"$ref\": - \"VideoCategorySnippet\",\n \"description\": \"The snippet object - contains basic details about the video category, including its title.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"description\": \"A - *videoCategory* resource identifies a category that has been or could be associated - with uploaded videos.\",\n \"type\": \"object\"\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"memberMonth\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the member to this Member Milestone Chat. This field is empty for - messages without a comment from the member.\"\n },\n \"memberLevelName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the Level at which the viever is a member. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n }\n }\n },\n \"AbuseReport\": {\n \"id\": - \"AbuseReport\",\n \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\"\n },\n \"relatedEntities\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n }\n },\n \"subject\": {\n \"$ref\": - \"Entity\"\n },\n \"abuseTypes\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"AbuseType\"\n }\n - \ }\n }\n },\n \"SubscriptionContentDetails\": {\n \"description\": - \"Details about the content to witch a subscription refers.\",\n \"type\": - \"object\",\n \"properties\": {\n \"totalItemCount\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The approximate number of items that the subscription points to.\"\n },\n - \ \"newItemCount\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The number of new items in the - subscription since its content was last read.\"\n },\n \"activityType\": - {\n \"description\": \"The type of activity this subscription is - for (only uploads, everything).\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ]\n }\n },\n - \ \"id\": \"SubscriptionContentDetails\"\n },\n \"CommentThread\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#commentThread\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThread\\\".\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the comment thread.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the comment thread and also - the top level comment.\",\n \"$ref\": \"CommentThreadSnippet\"\n - \ },\n \"replies\": {\n \"$ref\": \"CommentThreadReplies\",\n - \ \"description\": \"The replies object contains a limited number - of replies (if any) to the top level comment found in the snippet.\"\n }\n - \ },\n \"id\": \"CommentThread\",\n \"description\": \"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.\"\n },\n \"I18nRegionSnippet\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"gl\": {\n \"description\": \"The - region code as a 2-letter ISO country code.\",\n \"type\": \"string\"\n - \ },\n \"name\": {\n \"description\": \"The human-readable - name of the region.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"I18nRegionSnippet\",\n \"description\": \"Basic details - about an i18n region, such as region code and human-readable name.\"\n },\n - \ \"VideoPlayer\": {\n \"properties\": {\n \"embedHeight\": - {\n \"format\": \"int64\",\n \"type\": \"string\"\n },\n - \ \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\"\n - \ },\n \"embedWidth\": {\n \"description\": \"The embed - width\",\n \"format\": \"int64\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoPlayer\",\n \"description\": - \"Player to be used for a video playback.\",\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsComment\": {\n \"description\": \"Information - about a resource that received a comment.\",\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsComment\",\n \"properties\": {\n - \ \"resourceId\": {\n \"description\": \"The resourceId object - contains information that identifies the resource associated with the comment.\",\n - \ \"$ref\": \"ResourceId\"\n }\n }\n },\n \"InvideoBranding\": - {\n \"description\": \"LINT.IfChange Describes an invideo branding.\",\n - \ \"properties\": {\n \"imageBytes\": {\n \"type\": \"string\",\n - \ \"format\": \"byte\",\n \"description\": \"The bytes the - uploaded image. Only used in api to youtube communication.\"\n },\n - \ \"targetChannelId\": {\n \"description\": \"The channel to - which this branding links. If not present it defaults to the current channel.\",\n - \ \"type\": \"string\"\n },\n \"timing\": {\n \"description\": - \"The temporal position within the video where watermark will be displayed.\",\n - \ \"$ref\": \"InvideoTiming\"\n },\n \"imageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"The url of the - uploaded image. Only used in apiary to api communication.\"\n },\n - \ \"position\": {\n \"$ref\": \"InvideoPosition\",\n \"description\": - \"The spatial position within the video where the branding watermark will - be displayed.\"\n }\n },\n \"id\": \"InvideoBranding\",\n - \ \"type\": \"object\"\n },\n \"CaptionSnippet\": {\n \"id\": - \"CaptionSnippet\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"isDraft\": {\n \"type\": \"boolean\",\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video associated with the caption track. @mutable youtube.captions.insert\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n },\n \"lastUpdated\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the caption track was last updated.\"\n },\n - \ \"language\": {\n \"description\": \"The language of the - caption track. The property value is a BCP-47 language tag.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"audioTrackType\": {\n \"type\": \"string\",\n \"description\": - \"The type of audio track associated with the caption track.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ]\n },\n - \ \"name\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The name of the - caption track. The name is intended to be visible to the user as an option - during playback.\"\n },\n \"trackKind\": {\n \"description\": - \"The caption track's type.\",\n \"type\": \"string\",\n \"enum\": - [\n \"standard\",\n \"ASR\",\n \"forced\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"isLarge\": {\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\",\n \"type\": \"boolean\"\n },\n - \ \"isCC\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether the track contains closed captions for the deaf and hard - of hearing. The default value is false.\"\n },\n \"isAutoSynced\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n - \ },\n \"failureReason\": {\n \"enum\": [\n \"unknownFormat\",\n - \ \"unsupportedFormat\",\n \"processingFailed\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\"\n },\n \"isEasyReader\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"status\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The caption track's status.\",\n \"enum\": - [\n \"serving\",\n \"syncing\",\n \"failed\"\n - \ ]\n }\n },\n \"description\": \"Basic details about - a caption track, such as its language and name.\"\n },\n \"ChannelSectionTargeting\": - {\n \"type\": \"object\",\n \"properties\": {\n \"countries\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The country the - channel section is targeting.\"\n },\n \"languages\": {\n \"description\": - \"The language the channel section is targeting.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"regions\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The region the channel section is targeting.\"\n }\n },\n \"id\": - \"ChannelSectionTargeting\",\n \"description\": \"ChannelSection targeting - setting.\"\n },\n \"ChannelSectionLocalization\": {\n \"description\": - \"ChannelSection localization setting\",\n \"properties\": {\n \"title\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel section's title.\"\n }\n },\n \"id\": - \"ChannelSectionLocalization\",\n \"type\": \"object\"\n },\n \"VideoCategorySnippet\": - {\n \"description\": \"Basic details about a video category, such as - its localized title.\",\n \"properties\": {\n \"title\": {\n \"description\": - \"The video category's title.\",\n \"type\": \"string\"\n },\n - \ \"assignable\": {\n \"type\": \"boolean\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel that created the video category.\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\"\n - \ }\n },\n \"id\": \"VideoCategorySnippet\",\n \"type\": - \"object\"\n },\n \"PlaylistItemContentDetails\": {\n \"id\": \"PlaylistItemContentDetails\",\n - \ \"properties\": {\n \"videoPublishedAt\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the video was published to YouTube.\"\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify a video. To retrieve the video - resource, set the id query parameter to this value in your API request.\"\n - \ },\n \"note\": {\n \"type\": \"string\",\n \"description\": - \"A user-generated note for this item.\"\n },\n \"endAt\": {\n - \ \"description\": \"The time, measured in seconds from the start - of the video, when the video should stop playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) By default, assume that the video.endTime - is the end of the video.\",\n \"type\": \"string\"\n },\n - \ \"startAt\": {\n \"type\": \"string\",\n \"description\": - \"The time, measured in seconds from the start of the video, when the video - should start playing. (The playlist owner can specify the times when the video - should start and stop playing when the video is played in the context of the - playlist.) The default value is 0.\"\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelProfileDetails\": {\n \"id\": \"ChannelProfileDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"channelId\": - {\n \"description\": \"The YouTube channel ID.\",\n \"type\": - \"string\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"displayName\": - {\n \"description\": \"The channel's display name.\",\n \"type\": - \"string\"\n },\n \"profileImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channels's avatar URL.\"\n }\n - \ }\n },\n \"LiveChatModeratorSnippet\": {\n \"id\": \"LiveChatModeratorSnippet\",\n - \ \"properties\": {\n \"moderatorDetails\": {\n \"description\": - \"Details about the moderator.\",\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"liveChatId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the live chat this moderator can act on.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"LiveChatBanSnippet\": {\n \"properties\": - {\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"type\": {\n \"description\": \"The type of - ban.\",\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ],\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"type\": \"string\"\n - \ },\n \"liveChatId\": {\n \"description\": \"The chat - this ban is pertinent to.\",\n \"type\": \"string\"\n },\n - \ \"banDurationSeconds\": {\n \"description\": \"The duration - of a ban, only filled if the ban has type TEMPORARY.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatBanSnippet\"\n },\n \"ActivityContentDetailsFavorite\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that was marked as a favorite.\"\n - \ }\n },\n \"description\": \"Information about a video that - was marked as a favorite video.\",\n \"id\": \"ActivityContentDetailsFavorite\",\n - \ \"type\": \"object\"\n },\n \"PlaylistItem\": {\n \"id\": - \"PlaylistItem\",\n \"description\": \"A *playlistItem* resource identifies - another resource, such as a video, that is included in a playlist. In addition, - the playlistItem resource contains details about the included resource that - pertain specifically to how that resource is used in that playlist. YouTube - uses playlists to identify special collections of videos for a channel, such - as: - uploaded videos - favorite videos - positively rated (liked) videos - - watch history - watch later To be more specific, these lists are associated - with a channel, which is a collection of a person, group, or company's videos, - playlists, and other YouTube information. You can retrieve the playlist IDs - for each of these lists from the channel resource for a given channel. You - can then use the playlistItems.list method to retrieve any of those lists. - You can also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods. For example, if a user gives a positive - rating to a video, you would insert that video into the liked videos playlist - for that user's channel.\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\",\n \"$ref\": \"PlaylistItemSnippet\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the playlist item's privacy status.\",\n - \ \"$ref\": \"PlaylistItemStatus\"\n },\n \"id\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the playlist item.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#playlistItem\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItem\\\".\"\n },\n \"contentDetails\": - {\n \"$ref\": \"PlaylistItemContentDetails\",\n \"description\": - \"The contentDetails object is included in the resource if the included item - is a YouTube video. The object contains additional information about the video.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"MonitorStreamInfo\": - {\n \"type\": \"object\",\n \"id\": \"MonitorStreamInfo\",\n \"properties\": - {\n \"embedHtml\": {\n \"description\": \"HTML code that embeds - a player that plays the monitor stream.\",\n \"type\": \"string\"\n - \ },\n \"enableMonitorStream\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value determines whether the monitor stream - is enabled for the broadcast. If the monitor stream is enabled, then YouTube - will broadcast the event content on a special stream intended only for the - broadcaster's consumption. The broadcaster can use the stream to review the - event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"broadcastStreamDelayMs\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"If you have set - the enableMonitorStream property to true, then this property determines the - length of the live broadcast delay.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n }\n },\n \"description\": - \"Settings and Info of the monitor stream\"\n },\n \"ThumbnailSetResponse\": - {\n \"type\": \"object\",\n \"id\": \"ThumbnailSetResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#thumbnailSetResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"description\": \"A list of thumbnails.\",\n \"items\": - {\n \"$ref\": \"ThumbnailDetails\"\n },\n \"type\": - \"array\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n }\n }\n - \ },\n \"MemberListResponse\": {\n \"id\": \"MemberListResponse\",\n - \ \"properties\": {\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"items\": {\n \"description\": \"A list of members that - match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Member\"\n },\n \"type\": \"array\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\",\n - \ \"default\": \"youtube#memberListResponse\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoTopicDetails\": {\n \"properties\": {\n - \ \"topicIds\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Freebase topic IDs that are centrally associated with the video. - These are topics that are centrally featured in the video, and it can be said - that the video is mainly about each of these. You can retrieve information - about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\"\n },\n \"relevantTopicIds\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\",\n - \ \"type\": \"array\"\n },\n \"topicCategories\": {\n - \ \"description\": \"A list of Wikipedia URLs that provide a high-level - description of the video's content.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"description\": - \"Freebase topic information related to the video.\",\n \"id\": \"VideoTopicDetails\",\n - \ \"type\": \"object\"\n },\n \"LiveChatModerator\": {\n \"type\": - \"object\",\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the moderator.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\",\n - \ \"default\": \"youtube#liveChatModerator\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the moderator.\",\n \"$ref\": - \"LiveChatModeratorSnippet\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"description\": \"A *liveChatModerator* resource represents - a moderator for a YouTube live chat. A chat moderator has the ability to ban/unban - users from a chat, remove message, etc.\",\n \"id\": \"LiveChatModerator\"\n - \ },\n \"ImageSettings\": {\n \"description\": \"Branding properties - for images associated with the channel.\",\n \"type\": \"object\",\n - \ \"id\": \"ImageSettings\",\n \"properties\": {\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"bannerMobileExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\"\n },\n \"trackingImageUrl\": {\n \"description\": - \"The URL for a 1px by 1px tracking pixel that can be used to collect statistics - for views of the channel or video pages.\",\n \"type\": \"string\"\n - \ },\n \"bannerTvMediumImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. TV size medium resolution (1280x720).\"\n - \ },\n \"bannerTabletLowImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Tablet size low resolution (1138x188).\"\n - \ },\n \"bannerTabletExtraHdImageUrl\": {\n \"type\": - \"string\",\n \"description\": \"Banner image. Tablet size extra - high resolution (2560x424).\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the large banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerTvImageUrl\": - {\n \"description\": \"Banner image. TV size extra high resolution - (2120x1192).\",\n \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size medium/high resolution (960x263).\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"backgroundImageUrl\": - {\n \"description\": \"The URL for the background image shown on - the video watch page. The image should be 1200px by 615px, with a maximum - file size of 128k.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerTvHighImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. TV size high resolution (1920x1080).\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"bannerTabletImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size (1707x283).\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size low resolution (320x88).\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\"\n },\n \"bannerTvLowImageUrl\": - {\n \"description\": \"Banner image. TV size low resolution (854x480).\",\n - \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 640px by 70px banner image - that appears below the video player in the default view of the video watch - page. The URL for the image that appears above the top-left corner of the - video player. This is a 25-pixel-high image with a flexible width that cannot - exceed 170 pixels.\",\n \"$ref\": \"LocalizedProperty\"\n },\n - \ \"bannerMobileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"Banner image. Mobile size (640x175).\"\n },\n \"bannerImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n }\n }\n },\n \"MembershipsLevelSnippet\": - {\n \"type\": \"object\",\n \"properties\": {\n \"creatorChannelId\": - {\n \"type\": \"string\",\n \"description\": \"The id of - the channel that's offering channel memberships.\"\n },\n \"levelDetails\": - {\n \"description\": \"Details about the pricing level.\",\n \"$ref\": - \"LevelDetails\"\n }\n },\n \"id\": \"MembershipsLevelSnippet\"\n - \ },\n \"PlaylistItemStatus\": {\n \"description\": \"Information - about the playlist item's privacy status.\",\n \"properties\": {\n \"privacyStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"description\": \"This resource's - privacy status.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"PlaylistItemStatus\"\n - \ },\n \"ChannelContentOwnerDetails\": {\n \"properties\": {\n \"contentOwner\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the content owner linked to the channel.\"\n },\n \"timeLinked\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the channel was linked to the content owner.\",\n \"format\": - \"date-time\"\n }\n },\n \"id\": \"ChannelContentOwnerDetails\",\n - \ \"type\": \"object\",\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\"\n },\n \"ActivityContentDetailsSocial\": {\n \"type\": - \"object\",\n \"description\": \"Details about a social network post.\",\n - \ \"properties\": {\n \"referenceUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL of the social network post.\"\n - \ },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object encapsulates information - that identifies the resource associated with a social network post.\"\n },\n - \ \"imageUrl\": {\n \"description\": \"An image of the post's - author.\",\n \"type\": \"string\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The name of the social network.\",\n \"type\": \"string\",\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ]\n },\n \"author\": {\n - \ \"type\": \"string\",\n \"description\": \"The author of - the social network post.\"\n }\n },\n \"id\": \"ActivityContentDetailsSocial\"\n - \ },\n \"MembershipsDuration\": {\n \"id\": \"MembershipsDuration\",\n - \ \"properties\": {\n \"memberSince\": {\n \"description\": - \"The date and time when the user became a continuous member across all levels.\",\n - \ \"type\": \"string\"\n },\n \"memberTotalDurationMonths\": - {\n \"description\": \"The cumulative time the user has been a member - across all levels in complete months (the time is rounded down to the nearest - integer).\",\n \"format\": \"int32\",\n \"type\": \"integer\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"MembershipsDetails\": - {\n \"id\": \"MembershipsDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"membershipsDurationAtLevels\": {\n \"items\": {\n \"$ref\": - \"MembershipsDurationAtLevel\"\n },\n \"type\": \"array\",\n - \ \"description\": \"Data about memberships duration on particular - pricing levels.\"\n },\n \"membershipsDuration\": {\n \"$ref\": - \"MembershipsDuration\",\n \"description\": \"Data about memberships - duration without taking into consideration pricing levels.\"\n },\n - \ \"accessibleLevels\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"Ids of all levels that the user has access to. This includes the currently - active level and all other levels that are included because of a higher purchase.\"\n - \ },\n \"highestAccessibleLevelDisplayName\": {\n \"type\": - \"string\",\n \"description\": \"Display name for the highest level - that the user has access to at the moment.\"\n },\n \"highestAccessibleLevel\": - {\n \"type\": \"string\",\n \"description\": \"Id of the - highest level that the user has access to at the moment.\"\n }\n }\n - \ },\n \"ChannelSectionContentDetails\": {\n \"properties\": {\n - \ \"playlists\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\"\n },\n \"channels\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The channel ids for type multiple_channels.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"Details about a channelsection, including playlists - and channels.\"\n },\n \"LocalizedString\": {\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n },\n \"language\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LocalizedString\"\n },\n \"ActivityContentDetailsLike\": - {\n \"type\": \"object\",\n \"description\": \"Information about - a resource that received a positive (like) rating.\",\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the rated resource.\"\n }\n }\n },\n \"SearchResultSnippet\": - {\n \"id\": \"SearchResultSnippet\",\n \"properties\": {\n \"publishedAt\": - {\n \"description\": \"The creation date and time of the resource - that the search result identifies.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the search result. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"liveBroadcastContent\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"description\": \"It indicates if the resource (video - or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" - if there is not any upcoming/active live broadcasts.\",\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the search result.\"\n },\n \"channelId\": {\n - \ \"description\": \"The value that YouTube uses to uniquely identify - the channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"A description of the search result.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"description\": \"The - title of the channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a search result, including title, - description and thumbnails of the item referenced by the search result.\"\n - \ },\n \"VideoAbuseReportReasonListResponse\": {\n \"properties\": - {\n \"visitorId\": {\n \"description\": \"The `visitorId` - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of valid abuse reasons that are used with `video.ReportAbuse`.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"LiveChatMessageRetractedDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"retractedMessageId\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatMessageRetractedDetails\"\n - \ },\n \"LiveChatMembershipGiftingDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveChatMembershipGiftingDetails\",\n \"properties\": - {\n \"giftMembershipsCount\": {\n \"description\": \"The number - of gift memberships purchased by the user.\",\n \"format\": \"int32\",\n - \ \"type\": \"integer\"\n },\n \"giftMembershipsLevelName\": - {\n \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ChannelAuditDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel respects the community guidelines.\"\n }\n },\n - \ \"description\": \"The auditDetails object encapsulates channel data - that is relevant for YouTube Partners during the audit process.\",\n \"id\": - \"ChannelAuditDetails\"\n },\n \"ActivityListResponse\": {\n \"type\": - \"object\",\n \"id\": \"ActivityListResponse\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#activityListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Activity\"\n }\n }\n }\n },\n - \ \"SuperChatEventSnippet\": {\n \"type\": \"object\",\n \"properties\": - {\n \"createdAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time when the event - occurred.\"\n },\n \"commentText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text contents of the comment left by the - user.\"\n },\n \"superStickerMetadata\": {\n \"description\": - \"If this event is a Super Sticker event, this field will contain metadata - about the Super Sticker.\",\n \"$ref\": \"SuperStickerMetadata\"\n - \ },\n \"supporterDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the supporter.\"\n },\n - \ \"amountMicros\": {\n \"format\": \"uint64\",\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\",\n \"type\": \"string\"\n },\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made. ISO 4217.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel id - where the event occurred.\"\n },\n \"isSuperStickerEvent\": - {\n \"type\": \"boolean\",\n \"description\": \"True if - this event is a Super Sticker event.\"\n },\n \"displayString\": - {\n \"description\": \"A rendered string that displays the purchase - amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the - given language.\",\n \"type\": \"string\"\n },\n \"messageType\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\"\n }\n },\n \"id\": \"SuperChatEventSnippet\"\n - \ },\n \"ChannelStatistics\": {\n \"type\": \"object\",\n \"properties\": - {\n \"viewCount\": {\n \"description\": \"The number of times - the channel has been viewed.\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"commentCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of comments for the channel.\",\n - \ \"type\": \"string\"\n },\n \"videoCount\": {\n \"description\": - \"The number of videos uploaded to the channel.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"hiddenSubscriberCount\": - {\n \"description\": \"Whether or not the number of subscribers is - shown for this user.\",\n \"type\": \"boolean\"\n },\n \"subscriberCount\": - {\n \"description\": \"The number of subscribers that the channel - has.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ChannelStatistics\",\n \"description\": - \"Statistics about a channel: number of subscribers, number of videos in the - channel, etc.\"\n },\n \"ChannelToStoreLinkDetails\": {\n \"description\": - \"Information specific to a store on a merchandising platform linked to a - YouTube channel.\",\n \"id\": \"ChannelToStoreLinkDetails\",\n \"properties\": - {\n \"storeUrl\": {\n \"type\": \"string\",\n \"description\": - \"Landing page of the store.\"\n },\n \"merchantId\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"Google - Merchant Center id of the store.\"\n },\n \"storeName\": {\n - \ \"description\": \"Name of the store.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoRating\": - {\n \"id\": \"VideoRating\",\n \"properties\": {\n \"rating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ],\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"description\": \"Rating - of a video.\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\"\n }\n },\n \"type\": \"object\",\n \"description\": - \"Basic details about rating of a video.\"\n },\n \"ActivityContentDetails\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetails\",\n - \ \"properties\": {\n \"bulletin\": {\n \"description\": - \"The bulletin object contains details about a channel bulletin post. This - object is only present if the snippet.type is bulletin.\",\n \"$ref\": - \"ActivityContentDetailsBulletin\"\n },\n \"favorite\": {\n - \ \"$ref\": \"ActivityContentDetailsFavorite\",\n \"description\": - \"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.\"\n - \ },\n \"promotedItem\": {\n \"description\": \"The - promotedItem object contains details about a resource which is being promoted. - This property is only present if the snippet.type is promotedItem.\",\n \"$ref\": - \"ActivityContentDetailsPromotedItem\"\n },\n \"subscription\": - {\n \"$ref\": \"ActivityContentDetailsSubscription\",\n \"description\": - \"The subscription object contains information about a channel that a user - subscribed to. This property is only present if the snippet.type is subscription.\"\n - \ },\n \"recommendation\": {\n \"$ref\": \"ActivityContentDetailsRecommendation\",\n - \ \"description\": \"The recommendation object contains information - about a recommended resource. This property is only present if the snippet.type - is recommendation.\"\n },\n \"upload\": {\n \"$ref\": - \"ActivityContentDetailsUpload\",\n \"description\": \"The upload - object contains information about the uploaded video. This property is only - present if the snippet.type is upload.\"\n },\n \"channelItem\": - {\n \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsChannelItem\"\n - \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n - \ \"description\": \"The comment object contains information about - a resource that received a comment. This property is only present if the snippet.type - is comment.\"\n },\n \"playlistItem\": {\n \"description\": - \"The playlistItem object contains information about a new playlist item. - This property is only present if the snippet.type is playlistItem.\",\n \"$ref\": - \"ActivityContentDetailsPlaylistItem\"\n },\n \"like\": {\n - \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsLike\"\n - \ },\n \"social\": {\n \"description\": \"The social - object contains details about a social network post. This property is only - present if the snippet.type is social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n - \ }\n },\n \"description\": \"Details about the content of - an activity: the video that was shared, the channel that was subscribed to, - etc.\"\n },\n \"LiveChatMessageAuthorDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The YouTube channel ID.\"\n },\n \"channelUrl\": - {\n \"description\": \"The channel's URL.\",\n \"type\": - \"string\"\n },\n \"isVerified\": {\n \"description\": - \"Whether the author's identity has been verified by YouTube.\",\n \"type\": - \"boolean\"\n },\n \"displayName\": {\n \"description\": - \"The channel's display name.\",\n \"type\": \"string\"\n },\n - \ \"profileImageUrl\": {\n \"type\": \"string\",\n \"description\": - \"The channels's avatar URL.\"\n },\n \"isChatModerator\": {\n - \ \"description\": \"Whether the author is a moderator of the live - chat.\",\n \"type\": \"boolean\"\n },\n \"isChatOwner\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is the owner of the live chat.\"\n },\n \"isChatSponsor\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the author is a sponsor of the live chat.\"\n }\n },\n \"id\": - \"LiveChatMessageAuthorDetails\"\n },\n \"SearchResult\": {\n \"description\": - \"A search result contains information about a YouTube video, channel, or - playlist that matches the search parameters specified in an API request. While - a search result points to a uniquely identifiable resource, like a video, - it does not have its own persistent data.\",\n \"properties\": {\n \"id\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The id - object contains information that can be used to uniquely identify the resource - that matches the search request.\"\n },\n \"kind\": {\n \"default\": - \"youtube#searchResult\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ },\n \"snippet\": {\n \"$ref\": \"SearchResultSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - a search result, such as its title or description. For example, if the search - result is a video, then the title will be the video's title and the description - will be the video's description.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n }\n - \ },\n \"id\": \"SearchResult\",\n \"type\": \"object\"\n },\n - \ \"TestItemTestItemSnippet\": {\n \"type\": \"object\",\n \"properties\": - {},\n \"id\": \"TestItemTestItemSnippet\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource that was added to the channel.\"\n }\n },\n - \ \"description\": \"Details about a resource which was added to a channel.\"\n - \ },\n \"InvideoPosition\": {\n \"properties\": {\n \"type\": - {\n \"description\": \"Defines the position type.\",\n \"enum\": - [\n \"corner\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\"\n ]\n },\n - \ \"cornerPosition\": {\n \"description\": \"Describes in which - corner of the video the visual widget will appear.\",\n \"enum\": - [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n - \ \"bottomRight\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n }\n },\n \"id\": - \"InvideoPosition\",\n \"type\": \"object\",\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\"\n - \ },\n \"TestItem\": {\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"id\": {\n \"type\": \"string\"\n },\n - \ \"featuredPart\": {\n \"type\": \"boolean\"\n },\n - \ \"gaia\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n }\n },\n \"id\": \"TestItem\"\n },\n \"LiveBroadcastStatus\": - {\n \"id\": \"LiveBroadcastStatus\",\n \"description\": \"Live broadcast - state.\",\n \"type\": \"object\",\n \"properties\": {\n \"madeForKids\": - {\n \"description\": \"Whether the broadcast is made for kids or - not, decided by YouTube instead of the creator. This field is read only.\",\n - \ \"type\": \"boolean\"\n },\n \"lifeCycleStatus\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"enumDescriptions\": [\n \"No value or the - value is unknown.\",\n \"Incomplete settings, but otherwise valid\",\n - \ \"Complete settings\",\n \"Visible only to partner, - may need special UI treatment\",\n \"Viper is recording; this means - the \\\"clock\\\" is running\",\n \"The broadcast is finished.\",\n - \ \"This broadcast was removed by admin action\",\n \"Transition - into TESTING has been requested\",\n \"Transition into LIVE has - been requested\"\n ],\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ]\n - \ },\n \"recordingStatus\": {\n \"description\": \"The - broadcast's recording status.\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"No value or the value is unknown.\",\n \"The recording - has not yet been started.\",\n \"The recording is currently on.\",\n - \ \"The recording is completed, and cannot be started again.\"\n - \ ]\n },\n \"privacyStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The broadcast's - privacy status. Note that the broadcast represents exactly one YouTube video, - so the privacy settings are identical to those supported for videos. In addition, - you can set this field by modifying the broadcast resource or by setting the - privacyStatus field of the corresponding video resource.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"liveBroadcastPriority\": {\n \"type\": \"string\",\n \"description\": - \"Priority of the live broadcast event (internal state).\",\n \"enum\": - [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n - \ \"normal\",\n \"high\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Low priority broadcast: for low view count - HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: - for regular HoAs and broadcasts.\",\n \"High priority broadcast: - for high profile HoAs, like PixelCorp ones.\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"This field - will be set to True if the creator declares the broadcast to be kids only: - go/live-cw-work.\"\n }\n }\n },\n \"Playlist\": {\n \"properties\": - {\n \"localizations\": {\n \"description\": \"Localizations - for different languages\",\n \"additionalProperties\": {\n \"$ref\": - \"PlaylistLocalization\"\n },\n \"type\": \"object\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the playlist, such as its title and description.\",\n - \ \"$ref\": \"PlaylistSnippet\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistContentDetails\",\n \"description\": \"The contentDetails - object contains information like video count.\"\n },\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#playlist\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlist\\\".\"\n },\n \"player\": - {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": \"The - player object contains information that you would use to play the playlist - in an embedded player.\"\n },\n \"status\": {\n \"description\": - \"The status object contains status information for the playlist.\",\n \"$ref\": - \"PlaylistStatus\"\n }\n },\n \"id\": \"Playlist\",\n \"type\": - \"object\",\n \"description\": \"A *playlist* resource represents a YouTube - playlist. A playlist is a collection of videos that can be viewed sequentially - and shared with other users. A playlist can contain up to 200 videos, and - YouTube does not limit the number of playlists that each user creates. By - default, playlists are publicly visible to other users, but playlists can - be public or private. YouTube also uses playlists to identify special collections - of videos for a channel, such as: - uploaded videos - favorite videos - positively - rated (liked) videos - watch history - watch later To be more specific, these - lists are associated with a channel, which is a collection of a person, group, - or company's videos, playlists, and other YouTube information. You can retrieve - the playlist IDs for each of these lists from the channel resource for a given - channel. You can then use the playlistItems.list method to retrieve any of - those lists. You can also add or remove items from those lists by calling - the playlistItems.insert and playlistItems.delete methods.\"\n },\n \"ChannelSettings\": - {\n \"type\": \"object\",\n \"properties\": {\n \"unsubscribedTrailer\": - {\n \"type\": \"string\",\n \"description\": \"The trailer - of the channel, for users that are not subscribers.\"\n },\n \"keywords\": - {\n \"description\": \"Lists keywords associated with the channel, - comma-separated.\",\n \"type\": \"string\"\n },\n \"showRelatedChannels\": - {\n \"description\": \"Whether related channels should be proposed.\",\n - \ \"type\": \"boolean\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"description\": \"Specifies - the channel description.\",\n \"type\": \"string\"\n },\n - \ \"profileColor\": {\n \"description\": \"A prominent color - that can be rendered on this channel page.\",\n \"type\": \"string\"\n - \ },\n \"defaultTab\": {\n \"type\": \"string\",\n \"description\": - \"Which content tab users should see when viewing the channel.\"\n },\n - \ \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"title\": {\n \"description\": - \"Specifies the channel title.\",\n \"type\": \"string\"\n },\n - \ \"featuredChannelsTitle\": {\n \"description\": \"Title for - the featured channels tab.\",\n \"type\": \"string\"\n },\n - \ \"defaultLanguage\": {\n \"type\": \"string\"\n },\n - \ \"showBrowseView\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the tab to browse the videos should be displayed.\"\n },\n - \ \"moderateComments\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether user-submitted comments left on the channel page need to be approved - by the channel owner to be publicly visible.\"\n },\n \"featuredChannelsUrls\": - {\n \"type\": \"array\",\n \"description\": \"The list of - featured channels.\",\n \"items\": {\n \"type\": \"string\"\n - \ }\n }\n },\n \"id\": \"ChannelSettings\",\n \"description\": - \"Branding properties for the channel view.\"\n },\n \"VideoProjectDetails\": - {\n \"properties\": {},\n \"id\": \"VideoProjectDetails\",\n \"type\": - \"object\",\n \"description\": \"DEPRECATED. b/157517979: This part was - never populated after it was added. However, it sees non-zero traffic because - there is generated client code in the wild that refers to it [1]. We keep - this field and do NOT remove it because otherwise V3 would return an error - when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"LiveBroadcastContentDetails\": {\n \"properties\": {\n - \ \"enableContentEncryption\": {\n \"description\": \"This - setting indicates whether YouTube should enable content encryption for the - broadcast.\",\n \"type\": \"boolean\"\n },\n \"monitorStream\": - {\n \"description\": \"The monitorStream object contains information - about the monitor stream, which the broadcaster can use to review the event - content before the broadcast stream is shown publicly.\",\n \"$ref\": - \"MonitorStreamInfo\"\n },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"startWithSlate\": {\n - \ \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n },\n \"closedCaptionsType\": {\n \"enum\": - [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"latencyPreference\": {\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"Best - for: highest quality viewer playbacks and higher resolutions.\",\n \"Best - for: near real-time interaction, with minimal playback buffering.\",\n \"Best - for: real-time interaction Does not support: Closed captions, 1440p, and 4k - resolutions\"\n ],\n \"description\": \"If both this and - enable_low_latency are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\",\n \"type\": \"string\"\n },\n - \ \"enableLowLatency\": {\n \"description\": \"Indicates whether - this broadcast has low latency enabled.\",\n \"type\": \"boolean\"\n - \ },\n \"recordFromStart\": {\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\",\n \"type\": \"boolean\"\n - \ },\n \"stereoLayout\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"stereoLayoutUnspecified\",\n - \ \"mono\",\n \"leftRight\",\n \"topBottom\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\"\n },\n - \ \"boundStreamId\": {\n \"description\": \"This value uniquely - identifies the live stream bound to the broadcast.\",\n \"type\": - \"string\"\n },\n \"enableDvr\": {\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n - \ },\n \"enableAutoStop\": {\n \"description\": \"This - setting indicates whether auto stop is enabled for this broadcast. The default - value for this property is false. This setting can only be used by Events.\",\n - \ \"type\": \"boolean\"\n },\n \"mesh\": {\n \"description\": - \"The mesh for projecting the video if projection is mesh. The mesh value - must be a UTF-8 string containing the base-64 encoding of 3D mesh data that - follows the Spherical Video V2 RFC specification for an mshp box, excluding - the box size and type but including the following four reserved zero bytes - for the version and flags.\",\n \"type\": \"string\",\n \"format\": - \"byte\"\n },\n \"enableAutoStart\": {\n \"type\": - \"boolean\",\n \"description\": \"This setting indicates whether - auto start is enabled for this broadcast. The default value for this property - is false. This setting can only be used by Events.\"\n },\n \"projection\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"projectionUnspecified\",\n \"rectangular\",\n \"360\",\n - \ \"mesh\"\n ],\n \"description\": \"The projection - format of this broadcast. This defaults to rectangular.\",\n \"type\": - \"string\"\n },\n \"boundStreamLastUpdateTimeMs\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the live stream referenced by boundStreamId was last - updated.\"\n }\n },\n \"description\": \"Detailed settings - of a broadcast.\",\n \"type\": \"object\",\n \"id\": \"LiveBroadcastContentDetails\"\n - \ },\n \"SuperChatEventListResponse\": {\n \"type\": \"object\",\n - \ \"id\": \"SuperChatEventListResponse\",\n \"properties\": {\n \"items\": - {\n \"description\": \"A list of Super Chat purchases that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n - \ },\n \"type\": \"array\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#superChatEventListResponse\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n }\n }\n },\n \"WatchSettings\": {\n \"type\": - \"object\",\n \"description\": \"Branding properties for the watch. All - deprecated.\",\n \"id\": \"WatchSettings\",\n \"properties\": {\n - \ \"textColor\": {\n \"type\": \"string\",\n \"description\": - \"The background color for the video watch page's branded area.\"\n },\n - \ \"featuredPlaylistId\": {\n \"type\": \"string\",\n \"description\": - \"An ID that uniquely identifies a playlist that displays next to the video - player.\"\n },\n \"backgroundColor\": {\n \"type\": - \"string\",\n \"description\": \"The text color for the video watch - page's branded area.\"\n }\n }\n },\n \"CdnSettings\": {\n - \ \"properties\": {\n \"ingestionInfo\": {\n \"description\": - \"The ingestionInfo object contains information that YouTube provides that - you need to transmit your RTMP or HTTP stream to YouTube.\",\n \"$ref\": - \"IngestionInfo\"\n },\n \"frameRate\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"30fps\",\n \"60fps\",\n \"variable\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The frame rate of the inbound video data.\"\n },\n \"format\": - {\n \"description\": \"The format of the video stream that you are - sending to Youtube. \",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveStreams.insert\",\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"ingestionType\": {\n \"type\": \"string\",\n \"enum\": - [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n - \ \"hls\"\n ],\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \" The method or protocol used to transmit the - video stream.\"\n },\n \"resolution\": {\n \"enum\": - [\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n - \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The resolution of the inbound video data.\"\n - \ }\n },\n \"id\": \"CdnSettings\",\n \"description\": - \"Brief description of the live stream cdn settings.\",\n \"type\": \"object\"\n - \ },\n \"CommentSnippetAuthorChannelId\": {\n \"id\": \"CommentSnippetAuthorChannelId\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"value\": {\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"The id of the author's YouTube channel, if any.\"\n },\n \"ChannelStatus\": - {\n \"properties\": {\n \"madeForKids\": {\n \"type\": - \"boolean\"\n },\n \"isLinked\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n },\n \"longUploadsStatus\": {\n \"enum\": - [\n \"longUploadsUnspecified\",\n \"allowed\",\n \"eligible\",\n - \ \"disallowed\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\"\n },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Privacy status - of the channel.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n }\n },\n \"id\": \"ChannelStatus\",\n - \ \"description\": \"JSON template for the status part of a channel.\",\n - \ \"type\": \"object\"\n },\n \"ActivityContentDetailsRecommendation\": - {\n \"description\": \"Information that identifies the recommended resource.\",\n - \ \"id\": \"ActivityContentDetailsRecommendation\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"reason\": {\n \"description\": - \"The reason that the resource is recommended to the user.\",\n \"enum\": - [\n \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"seedResourceId\": - {\n \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\",\n \"$ref\": - \"ResourceId\"\n },\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the recommended resource.\"\n }\n }\n - \ },\n \"TokenPagination\": {\n \"properties\": {},\n \"description\": - \"Stub token pagination template to suppress results.\",\n \"type\": - \"object\",\n \"id\": \"TokenPagination\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"id\": \"ActivityContentDetailsBulletin\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with a bulletin post. @mutable youtube.activities.insert\"\n }\n - \ },\n \"description\": \"Details about a channel bulletin post.\",\n - \ \"type\": \"object\"\n },\n \"LiveStreamStatus\": {\n \"id\": - \"LiveStreamStatus\",\n \"description\": \"Brief description of the live - stream status.\",\n \"properties\": {\n \"healthStatus\": {\n - \ \"description\": \"The health status of the stream.\",\n \"$ref\": - \"LiveStreamHealthStatus\"\n },\n \"streamStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"created\",\n - \ \"ready\",\n \"active\",\n \"inactive\",\n - \ \"error\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"CommentSnippet\": {\n - \ \"type\": \"object\",\n \"id\": \"CommentSnippet\",\n \"properties\": - {\n \"channelId\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"description\": - \"The date and time when the comment was originally published.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"authorChannelUrl\": - {\n \"description\": \"Link to the author's YouTube channel, if any.\",\n - \ \"type\": \"string\"\n },\n \"moderationStatus\": - {\n \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by a - moderator.\",\n \"\",\n \"The comment is unfit for display.\"\n - \ ],\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"description\": - \"The comment's moderation status. Will not be set if the comments were requested - through the id filter.\",\n \"type\": \"string\"\n },\n \"likeCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The total - number of likes this comment has received.\",\n \"type\": \"integer\"\n - \ },\n \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comment refers to, if any.\"\n },\n \"canRate\": - {\n \"description\": \"Whether the current viewer can rate this comment.\",\n - \ \"type\": \"boolean\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"textOriginal\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n },\n \"textDisplay\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"parentId\": {\n - \ \"description\": \"The unique id of the parent comment, only set - for replies.\",\n \"type\": \"string\"\n },\n \"updatedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the comment was last updated.\",\n \"type\": \"string\"\n - \ },\n \"authorProfileImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"The URL for the avatar of the user who posted - the comment.\"\n },\n \"viewerRating\": {\n \"enum\": - [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ]\n }\n },\n \"description\": \"Basic details about - a comment, such as its author and text.\"\n },\n \"SuperStickerMetadata\": - {\n \"properties\": {\n \"stickerId\": {\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\",\n - \ \"type\": \"string\"\n },\n \"altText\": {\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\",\n \"type\": \"string\"\n },\n \"altTextLanguage\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the alt text is returned.\"\n }\n - \ },\n \"id\": \"SuperStickerMetadata\",\n \"type\": \"object\"\n - \ }\n },\n \"auth\": {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n }\n }\n }\n },\n \"baseUrl\": - \"https://youtube.googleapis.com/\",\n \"canonicalName\": \"YouTube\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:42 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCQVtD_N4OeD-9PshBq7NwyQ&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"UZRK-8auXpH8GCtGg8dIhVF43Fs\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"1edqnlwvZc5BezylbAUFcBz_lUI\",\n \"id\": \"UCQVtD_N4OeD-9PshBq7NwyQ\",\n - \ \"snippet\": {\n \"title\": \"\u0424\u0415\u0419\u0413\u0418\u041D - LIVE\",\n \"description\": \"\u041A\u0430\u043D\u0430\u043B \u0424\u0415\u0419\u0413\u0418\u041D - LIVE \u0441\u043E\u0437\u0434\u0430\u043D \u0434\u043B\u044F \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438 - \u0441\u0432\u043E\u0431\u043E\u0434\u043D\u043E\u0433\u043E \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0433\u043E - \u043E\u0431\u043C\u0435\u043D\u0430, \u0430\u043D\u0430\u043B\u0438\u0437\u0430 - \u0438 \u043F\u043E\u043B\u0438\u0442\u0438\u0447\u0435\u0441\u043A\u043E\u0439 - \u044D\u043A\u0441\u043F\u0435\u0440\u0442\u0438\u0437\u044B \u0430\u043A\u0442\u0443\u0430\u043B\u044C\u043D\u043E\u0439 - \u043F\u043E\u0432\u0435\u0441\u0442\u043A\u0438 \u0432 \u0420\u043E\u0441\u0441\u0438\u0438 - \u0438 \u043C\u0438\u0440\u0435. \u041C\u044B \u0441\u043E\u0437\u0434\u0430\u0451\u043C - \u0441\u0440\u0435\u0434\u0443 \u043D\u0435\u043F\u043E\u0434\u0446\u0435\u043D\u0437\u0443\u0440\u043D\u043E\u0439 - \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439 - \u043F\u043E\u043B\u0438\u0442\u0438\u043A\u0438 \u0438 \u0430\u043D\u0442\u0438\u043F\u0440\u0430\u0432\u0438\u0442\u0435\u043B\u044C\u0441\u0442\u0432\u0435\u043D\u043D\u043E\u0439 - \u0434\u0435\u044F\u0442\u0435\u043B\u044C\u043D\u043E\u0441\u0442\u0438. - \u041C\u044B \u043D\u0430\u0434\u0435\u0435\u043C\u0441\u044F \u0434\u043E\u0436\u0438\u0442\u044C - \u0434\u043E \u043A\u043E\u043D\u0446\u0430 \u043D\u044B\u043D\u0435\u0448\u043D\u0435\u0439 - \u043F\u043E\u043B\u0438\u0442\u0438\u0447\u0435\u0441\u043A\u043E\u0439 \u0441\u0438\u0441\u0442\u0435\u043C\u044B - \u0438 \u043F\u043E\u043C\u043E\u0433\u0430\u0435\u043C \u043F\u0440\u0438\u0431\u043B\u0438\u0437\u0438\u0442\u044C - \u044D\u0442\u043E\u0442 \u043C\u043E\u043C\u0435\u043D\u0442. \u041F\u043E\u0434\u043F\u0438\u0448\u0438\u0442\u0435\u0441\u044C - \u043D\u0430 \u043A\u0430\u043D\u0430\u043B!\\n\\n\u0412\u0441\u0435 \u044E\u0440\u0438\u0434\u0438\u0447\u0435\u0441\u043A\u0438\u0435 - \u043F\u0440\u0435\u0442\u0435\u043D\u0437\u0438\u0438 \u0440\u0430\u0441\u0441\u043C\u0430\u0442\u0440\u0438\u0432\u0430\u044E\u0442\u0441\u044F - \u0432 \u0421\u0430\u043D-\u0411\u0440\u0443\u043D\u043E, \u041A\u0430\u043B\u0438\u0444\u043E\u0440\u043D\u0438\u044F - (\u0421\u0428\u0410).\\n\\n\u0421\u043F\u043E\u0441\u043E\u0431\u044B \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0438 - \u043A\u0430\u043D\u0430\u043B\u0430:\\n\\n\u041F\u0435\u0440\u0435\u0432\u043E\u0434 - \u0441 \u043B\u044E\u0431\u043E\u0439 \u0431\u0430\u043D\u043A\u043E\u0432\u0441\u043A\u043E\u0439 - \u043A\u0430\u0440\u0442\u044B https://buy.stripe.com/3cs03j5drbasg2Q004 \u043D\u0435\u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0439 - \u0434\u043B\u044F \u043A\u043E\u043D\u0442\u0440\u043E\u043B\u044F \u0440\u043E\u0441\u0441\u0438\u0439\u0441\u043A\u0438\u0445 - \u0440\u0435\u0433\u0443\u043B\u044F\u0442\u043E\u0440\u043E\u0432! \\n\\nPaypal: - https://paypal.com/donate/?hosted_button_id=M77VR7HP9FELL&source=url\\n\u042F\u043D\u0434\u0435\u043A\u0441-\u043A\u043E\u0448\u0435\u043B\u0435\u043A - (\u0432 \u0440\u0443\u0431\u043B\u044F\u0445): https://yoomoney.ru/to/4100116535768948\\nQIWI - \u041A\u043E\u0448\u0435\u043B\u0435\u043A: https://qiwi.com/n/FEYGINLIVE\\n\\nBitcoin: - 16rWnEwYErcknE2QWAJwRcGMw8L6cCjXLh\\nETH: 0xe02B9F3b530a0AAf58B626Ad819672FF5c355Aee - (\u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044C, \u0447\u0442\u043E - \u0441\u0435\u0442\u044C \u0432\u0435\u0440\u043D\u0430: Ethereum (ERC20).\\n\u041D\u0430 - \u043F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0435 advcash.com \u0430\u043A\u043A\u0430\u0443\u043D\u0442 - feyginlive@gmail.com\\n\",\n \"customUrl\": \"@feyginlive\",\n \"publishedAt\": - \"2009-06-21T12:12:29Z\",\n \"thumbnails\": {\n \"default\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJWFglJn2OgClirx2CP6pbWyow0Y-DFhYXLEBEayhw=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJWFglJn2OgClirx2CP6pbWyow0Y-DFhYXLEBEayhw=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJWFglJn2OgClirx2CP6pbWyow0Y-DFhYXLEBEayhw=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"\u0424\u0415\u0419\u0413\u0418\u041D - LIVE\",\n \"description\": \"\u041A\u0430\u043D\u0430\u043B \u0424\u0415\u0419\u0413\u0418\u041D - LIVE \u0441\u043E\u0437\u0434\u0430\u043D \u0434\u043B\u044F \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438 - \u0441\u0432\u043E\u0431\u043E\u0434\u043D\u043E\u0433\u043E \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0433\u043E - \u043E\u0431\u043C\u0435\u043D\u0430, \u0430\u043D\u0430\u043B\u0438\u0437\u0430 - \u0438 \u043F\u043E\u043B\u0438\u0442\u0438\u0447\u0435\u0441\u043A\u043E\u0439 - \u044D\u043A\u0441\u043F\u0435\u0440\u0442\u0438\u0437\u044B \u0430\u043A\u0442\u0443\u0430\u043B\u044C\u043D\u043E\u0439 - \u043F\u043E\u0432\u0435\u0441\u0442\u043A\u0438 \u0432 \u0420\u043E\u0441\u0441\u0438\u0438 - \u0438 \u043C\u0438\u0440\u0435. \u041C\u044B \u0441\u043E\u0437\u0434\u0430\u0451\u043C - \u0441\u0440\u0435\u0434\u0443 \u043D\u0435\u043F\u043E\u0434\u0446\u0435\u043D\u0437\u0443\u0440\u043D\u043E\u0439 - \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439 - \u043F\u043E\u043B\u0438\u0442\u0438\u043A\u0438 \u0438 \u0430\u043D\u0442\u0438\u043F\u0440\u0430\u0432\u0438\u0442\u0435\u043B\u044C\u0441\u0442\u0432\u0435\u043D\u043D\u043E\u0439 - \u0434\u0435\u044F\u0442\u0435\u043B\u044C\u043D\u043E\u0441\u0442\u0438. - \u041C\u044B \u043D\u0430\u0434\u0435\u0435\u043C\u0441\u044F \u0434\u043E\u0436\u0438\u0442\u044C - \u0434\u043E \u043A\u043E\u043D\u0446\u0430 \u043D\u044B\u043D\u0435\u0448\u043D\u0435\u0439 - \u043F\u043E\u043B\u0438\u0442\u0438\u0447\u0435\u0441\u043A\u043E\u0439 \u0441\u0438\u0441\u0442\u0435\u043C\u044B - \u0438 \u043F\u043E\u043C\u043E\u0433\u0430\u0435\u043C \u043F\u0440\u0438\u0431\u043B\u0438\u0437\u0438\u0442\u044C - \u044D\u0442\u043E\u0442 \u043C\u043E\u043C\u0435\u043D\u0442. \u041F\u043E\u0434\u043F\u0438\u0448\u0438\u0442\u0435\u0441\u044C - \u043D\u0430 \u043A\u0430\u043D\u0430\u043B!\\n\\n\u0412\u0441\u0435 \u044E\u0440\u0438\u0434\u0438\u0447\u0435\u0441\u043A\u0438\u0435 - \u043F\u0440\u0435\u0442\u0435\u043D\u0437\u0438\u0438 \u0440\u0430\u0441\u0441\u043C\u0430\u0442\u0440\u0438\u0432\u0430\u044E\u0442\u0441\u044F - \u0432 \u0421\u0430\u043D-\u0411\u0440\u0443\u043D\u043E, \u041A\u0430\u043B\u0438\u0444\u043E\u0440\u043D\u0438\u044F - (\u0421\u0428\u0410).\\n\\n\u0421\u043F\u043E\u0441\u043E\u0431\u044B \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0438 - \u043A\u0430\u043D\u0430\u043B\u0430:\\n\\n\u041F\u0435\u0440\u0435\u0432\u043E\u0434 - \u0441 \u043B\u044E\u0431\u043E\u0439 \u0431\u0430\u043D\u043A\u043E\u0432\u0441\u043A\u043E\u0439 - \u043A\u0430\u0440\u0442\u044B https://buy.stripe.com/3cs03j5drbasg2Q004 \u043D\u0435\u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0439 - \u0434\u043B\u044F \u043A\u043E\u043D\u0442\u0440\u043E\u043B\u044F \u0440\u043E\u0441\u0441\u0438\u0439\u0441\u043A\u0438\u0445 - \u0440\u0435\u0433\u0443\u043B\u044F\u0442\u043E\u0440\u043E\u0432! \\n\\nPaypal: - https://paypal.com/donate/?hosted_button_id=M77VR7HP9FELL&source=url\\n\u042F\u043D\u0434\u0435\u043A\u0441-\u043A\u043E\u0448\u0435\u043B\u0435\u043A - (\u0432 \u0440\u0443\u0431\u043B\u044F\u0445): https://yoomoney.ru/to/4100116535768948\\nQIWI - \u041A\u043E\u0448\u0435\u043B\u0435\u043A: https://qiwi.com/n/FEYGINLIVE\\n\\nBitcoin: - 16rWnEwYErcknE2QWAJwRcGMw8L6cCjXLh\\nETH: 0xe02B9F3b530a0AAf58B626Ad819672FF5c355Aee - (\u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044C, \u0447\u0442\u043E - \u0441\u0435\u0442\u044C \u0432\u0435\u0440\u043D\u0430: Ethereum (ERC20).\\n\u041D\u0430 - \u043F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0435 advcash.com \u0430\u043A\u043A\u0430\u0443\u043D\u0442 - feyginlive@gmail.com\\n\"\n },\n \"country\": \"US\"\n },\n - \ \"brandingSettings\": {\n \"channel\": {\n \"title\": - \"\u0424\u0415\u0419\u0413\u0418\u041D LIVE\",\n \"description\": - \"\u041A\u0430\u043D\u0430\u043B \u0424\u0415\u0419\u0413\u0418\u041D LIVE - \u0441\u043E\u0437\u0434\u0430\u043D \u0434\u043B\u044F \u043E\u0440\u0433\u0430\u043D\u0438\u0437\u0430\u0446\u0438\u0438 - \u0441\u0432\u043E\u0431\u043E\u0434\u043D\u043E\u0433\u043E \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0433\u043E - \u043E\u0431\u043C\u0435\u043D\u0430, \u0430\u043D\u0430\u043B\u0438\u0437\u0430 - \u0438 \u043F\u043E\u043B\u0438\u0442\u0438\u0447\u0435\u0441\u043A\u043E\u0439 - \u044D\u043A\u0441\u043F\u0435\u0440\u0442\u0438\u0437\u044B \u0430\u043A\u0442\u0443\u0430\u043B\u044C\u043D\u043E\u0439 - \u043F\u043E\u0432\u0435\u0441\u0442\u043A\u0438 \u0432 \u0420\u043E\u0441\u0441\u0438\u0438 - \u0438 \u043C\u0438\u0440\u0435. \u041C\u044B \u0441\u043E\u0437\u0434\u0430\u0451\u043C - \u0441\u0440\u0435\u0434\u0443 \u043D\u0435\u043F\u043E\u0434\u0446\u0435\u043D\u0437\u0443\u0440\u043D\u043E\u0439 - \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u043E\u043D\u043D\u043E\u0439 - \u043F\u043E\u043B\u0438\u0442\u0438\u043A\u0438 \u0438 \u0430\u043D\u0442\u0438\u043F\u0440\u0430\u0432\u0438\u0442\u0435\u043B\u044C\u0441\u0442\u0432\u0435\u043D\u043D\u043E\u0439 - \u0434\u0435\u044F\u0442\u0435\u043B\u044C\u043D\u043E\u0441\u0442\u0438. - \u041C\u044B \u043D\u0430\u0434\u0435\u0435\u043C\u0441\u044F \u0434\u043E\u0436\u0438\u0442\u044C - \u0434\u043E \u043A\u043E\u043D\u0446\u0430 \u043D\u044B\u043D\u0435\u0448\u043D\u0435\u0439 - \u043F\u043E\u043B\u0438\u0442\u0438\u0447\u0435\u0441\u043A\u043E\u0439 \u0441\u0438\u0441\u0442\u0435\u043C\u044B - \u0438 \u043F\u043E\u043C\u043E\u0433\u0430\u0435\u043C \u043F\u0440\u0438\u0431\u043B\u0438\u0437\u0438\u0442\u044C - \u044D\u0442\u043E\u0442 \u043C\u043E\u043C\u0435\u043D\u0442. \u041F\u043E\u0434\u043F\u0438\u0448\u0438\u0442\u0435\u0441\u044C - \u043D\u0430 \u043A\u0430\u043D\u0430\u043B!\\n\\n\u0412\u0441\u0435 \u044E\u0440\u0438\u0434\u0438\u0447\u0435\u0441\u043A\u0438\u0435 - \u043F\u0440\u0435\u0442\u0435\u043D\u0437\u0438\u0438 \u0440\u0430\u0441\u0441\u043C\u0430\u0442\u0440\u0438\u0432\u0430\u044E\u0442\u0441\u044F - \u0432 \u0421\u0430\u043D-\u0411\u0440\u0443\u043D\u043E, \u041A\u0430\u043B\u0438\u0444\u043E\u0440\u043D\u0438\u044F - (\u0421\u0428\u0410).\\n\\n\u0421\u043F\u043E\u0441\u043E\u0431\u044B \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u043A\u0438 - \u043A\u0430\u043D\u0430\u043B\u0430:\\n\\n\u041F\u0435\u0440\u0435\u0432\u043E\u0434 - \u0441 \u043B\u044E\u0431\u043E\u0439 \u0431\u0430\u043D\u043A\u043E\u0432\u0441\u043A\u043E\u0439 - \u043A\u0430\u0440\u0442\u044B https://buy.stripe.com/3cs03j5drbasg2Q004 \u043D\u0435\u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0439 - \u0434\u043B\u044F \u043A\u043E\u043D\u0442\u0440\u043E\u043B\u044F \u0440\u043E\u0441\u0441\u0438\u0439\u0441\u043A\u0438\u0445 - \u0440\u0435\u0433\u0443\u043B\u044F\u0442\u043E\u0440\u043E\u0432! \\n\\nPaypal: - https://paypal.com/donate/?hosted_button_id=M77VR7HP9FELL&source=url\\n\u042F\u043D\u0434\u0435\u043A\u0441-\u043A\u043E\u0448\u0435\u043B\u0435\u043A - (\u0432 \u0440\u0443\u0431\u043B\u044F\u0445): https://yoomoney.ru/to/4100116535768948\\nQIWI - \u041A\u043E\u0448\u0435\u043B\u0435\u043A: https://qiwi.com/n/FEYGINLIVE\\n\\nBitcoin: - 16rWnEwYErcknE2QWAJwRcGMw8L6cCjXLh\\nETH: 0xe02B9F3b530a0AAf58B626Ad819672FF5c355Aee - (\u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044C, \u0447\u0442\u043E - \u0441\u0435\u0442\u044C \u0432\u0435\u0440\u043D\u0430: Ethereum (ERC20).\\n\u041D\u0430 - \u043F\u043B\u0430\u0442\u0444\u043E\u0440\u043C\u0435 advcash.com \u0430\u043A\u043A\u0430\u0443\u043D\u0442 - feyginlive@gmail.com\\n\",\n \"keywords\": \"\\\"\u0444\u0435\u0439\u0433\u0438\u043D - live\\\" \\\"\u0444\u0435\u0439\u0433\u0438\u043D \u043B\u0430\u0439\u0444\\\" - \\\"\u043C\u0430\u0440\u043A \u0444\u0435\u0439\u0433\u0438\u043D\\\" \\\"mark - feygin\\\" \u0444\u0435\u0439\u0433\u0438\u043D \\\"\u043C\u0430\u0440\u043A - \u0444\u0435\u0439\u0433\u0438\u043D \u0441\u0442\u0440\u0438\u043C\\\" \\\"\u0444\u0435\u0439\u0433\u0438\u043D - \u043C\u0430\u0440\u043A\\\" \u043D\u043E\u0432\u043E\u0441\u0442\u0438 \u043F\u043E\u043B\u0438\u0442\u0438\u043A\u0430 - \u044D\u043A\u043E\u043D\u043E\u043C\u0438\u043A\u0430 \u043E\u0431\u0449\u0435\u0441\u0442\u0432\u043E - \\\"\u043F\u0440\u044F\u043C\u043E\u0439 \u044D\u0444\u0438\u0440\\\" \\\"\u043F\u0440\u044F\u043C\u0430\u044F - \u0442\u0440\u0430\u043D\u0441\u043B\u044F\u0446\u0438\u044F\\\" \u0441\u0442\u0440\u0438\u043C - Society Politics \\\"\u043E\u0431\u0449\u0435\u0441\u0442\u0432\u043E \u0438 - \u043F\u043E\u043B\u0438\u0442\u0438\u043A\u0430\\\" \u0430\u043D\u0430\u043B\u0438\u0442\u0438\u043A\u0430 - \\\"\u043F\u043E\u043B\u0438\u0442\u0438\u0447\u0435\u0441\u043A\u0430\u044F - \u0430\u043D\u0430\u043B\u0438\u0442\u0438\u043A\u0430\\\" \\\"\u044D\u043A\u043E\u043D\u043E\u043C\u0438\u0447\u0435\u0441\u043A\u0438\u0435 - \u043F\u0440\u043E\u0433\u043D\u043E\u0437\u044B\\\" \\\"feigin live\\\"\",\n - \ \"trackingAnalyticsAccountId\": \"UA-119539195-1\",\n \"unsubscribedTrailer\": - \"SbQymxUKkAc\",\n \"country\": \"US\"\n },\n \"image\": - {\n \"bannerExternalUrl\": \"https://yt3.googleusercontent.com/1ZP_z4sWasktCPAk21rltlmYN8BRu9gPLtFTQ656eoxHXHB53QX6V-MqWekj9LOwuJ08rlrzE5s\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:42 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"ownerDomain\": \"google.com\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"batchPath\": \"batch\",\n \"fullyEncodeReservedExpansion\": true,\n \"servicePath\": - \"\",\n \"version\": \"v3\",\n \"discoveryVersion\": \"v1\",\n \"mtlsRootUrl\": - \"https://youtube.mtls.googleapis.com/\",\n \"protocol\": \"rest\",\n \"schemas\": - {\n \"ChannelConversionPing\": {\n \"id\": \"ChannelConversionPing\",\n - \ \"description\": \"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.\",\n \"properties\": {\n \"conversionUrl\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"context\": {\n \"enum\": - [\n \"subscribe\",\n \"unsubscribe\",\n \"cview\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"Defines the context of the ping.\"\n }\n },\n \"type\": - \"object\"\n },\n \"SubscriptionSnippet\": {\n \"id\": \"SubscriptionSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"publishedAt\": - {\n \"description\": \"The date and time that the subscription was - created.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The subscription's details.\"\n },\n \"channelId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the subscriber's channel.\",\n \"type\": \"string\"\n },\n - \ \"resourceId\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.subscriptions.insert\"\n ]\n },\n - \ \"$ref\": \"ResourceId\",\n \"description\": \"The id object - contains information about the channel that the user subscribed to.\"\n },\n - \ \"channelTitle\": {\n \"description\": \"Channel title for - the channel that the subscription belongs to.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - video. 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.\"\n - \ },\n \"title\": {\n \"description\": \"The subscription's - title.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about a subscription, including title, description and thumbnails - of the subscribed item.\"\n },\n \"VideoFileDetailsAudioStream\": {\n - \ \"description\": \"Information about an audio stream.\",\n \"id\": - \"VideoFileDetailsAudioStream\",\n \"type\": \"object\",\n \"properties\": - {\n \"codec\": {\n \"description\": \"The audio codec that - the stream uses.\",\n \"type\": \"string\"\n },\n \"bitrateBps\": - {\n \"type\": \"string\",\n \"description\": \"The audio - stream's bitrate, in bits per second.\",\n \"format\": \"uint64\"\n - \ },\n \"channelCount\": {\n \"type\": \"integer\",\n - \ \"description\": \"The number of audio channels that the stream - contains.\",\n \"format\": \"uint32\"\n },\n \"vendor\": - {\n \"description\": \"A value that uniquely identifies a video vendor. - Typically, the value is a four-letter vendor code.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ThirdPartyLinkSnippet\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"type\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"A link - that is connecting (or about to connect) a channel with a store on a merchandising - platform in order to enable retail commerce capabilities for that channel - on YouTube.\"\n ],\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Type of the link named after the entities that - are being linked.\"\n },\n \"channelToStoreLink\": {\n \"$ref\": - \"ChannelToStoreLinkDetails\",\n \"description\": \"Information specific - to a link between a channel and a store on a merchandising platform.\"\n }\n - \ },\n \"id\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"Basic information about a third party account link, including its type and - type-specific information.\"\n },\n \"TestItem\": {\n \"id\": \"TestItem\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"TestItemTestItemSnippet\"\n - \ },\n \"gaia\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"featuredPart\": {\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ActivityContentDetailsSocial\": - {\n \"description\": \"Details about a social network post.\",\n \"type\": - \"object\",\n \"id\": \"ActivityContentDetailsSocial\",\n \"properties\": - {\n \"imageUrl\": {\n \"description\": \"An image of the post's - author.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object encapsulates information that identifies the resource associated with - a social network post.\"\n },\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"unspecified\",\n - \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n - \ ],\n \"description\": \"The name of the social network.\"\n - \ },\n \"author\": {\n \"description\": \"The author - of the social network post.\",\n \"type\": \"string\"\n },\n - \ \"referenceUrl\": {\n \"type\": \"string\",\n \"description\": - \"The URL of the social network post.\"\n }\n }\n },\n \"MemberSnippet\": - {\n \"properties\": {\n \"membershipsDetails\": {\n \"description\": - \"Details about the user's membership.\",\n \"$ref\": \"MembershipsDetails\"\n - \ },\n \"creatorChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The id of the channel that's offering memberships.\"\n - \ },\n \"memberDetails\": {\n \"description\": \"Details - about the member.\",\n \"$ref\": \"ChannelProfileDetails\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"MemberSnippet\"\n },\n - \ \"VideoAbuseReportReasonSnippet\": {\n \"description\": \"Basic details - about a video category, such as its localized title.\",\n \"id\": \"VideoAbuseReportReasonSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"secondaryReasons\": - {\n \"items\": {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n - \ },\n \"description\": \"The secondary reasons associated - with this reason, if any are available. (There might be 0 or more.)\",\n \"type\": - \"array\"\n },\n \"label\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized label belonging to this abuse report - reason.\"\n }\n }\n },\n \"PageInfo\": {\n \"id\": - \"PageInfo\",\n \"type\": \"object\",\n \"description\": \"Paging - details for lists of resources, including total number of items available - and number of resources returned in a single page.\",\n \"properties\": - {\n \"totalResults\": {\n \"format\": \"int32\",\n \"description\": - \"The total number of results in the result set.\",\n \"type\": \"integer\"\n - \ },\n \"resultsPerPage\": {\n \"description\": \"The - number of results included in the API response.\",\n \"type\": \"integer\",\n - \ \"format\": \"int32\"\n }\n }\n },\n \"I18nLanguageSnippet\": - {\n \"properties\": {\n \"name\": {\n \"type\": \"string\",\n - \ \"description\": \"The human-readable name of the language in the - language itself.\"\n },\n \"hl\": {\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"I18nLanguageSnippet\",\n \"description\": \"Basic details about an - i18n language, such as language code and human-readable name.\"\n },\n - \ \"ChannelAuditDetails\": {\n \"id\": \"ChannelAuditDetails\",\n \"properties\": - {\n \"contentIdClaimsGoodStanding\": {\n \"description\": - \"Whether or not the channel has any unresolved claims.\",\n \"type\": - \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Whether or - not the channel respects the community guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n }\n },\n \"description\": - \"The auditDetails object encapsulates channel data that is relevant for YouTube - Partners during the audit process.\",\n \"type\": \"object\"\n },\n - \ \"ActivityContentDetails\": {\n \"description\": \"Details about - the content of an activity: the video that was shared, the channel that was - subscribed to, etc.\",\n \"id\": \"ActivityContentDetails\",\n \"properties\": - {\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n },\n \"recommendation\": {\n \"$ref\": - \"ActivityContentDetailsRecommendation\",\n \"description\": \"The - recommendation object contains information about a recommended resource. This - property is only present if the snippet.type is recommendation.\"\n },\n - \ \"subscription\": {\n \"description\": \"The subscription - object contains information about a channel that a user subscribed to. This - property is only present if the snippet.type is subscription.\",\n \"$ref\": - \"ActivityContentDetailsSubscription\"\n },\n \"like\": {\n - \ \"$ref\": \"ActivityContentDetailsLike\",\n \"description\": - \"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.\"\n - \ },\n \"upload\": {\n \"$ref\": \"ActivityContentDetailsUpload\",\n - \ \"description\": \"The upload object contains information about - the uploaded video. This property is only present if the snippet.type is upload.\"\n - \ },\n \"playlistItem\": {\n \"description\": \"The - playlistItem object contains information about a new playlist item. This property - is only present if the snippet.type is playlistItem.\",\n \"$ref\": - \"ActivityContentDetailsPlaylistItem\"\n },\n \"promotedItem\": - {\n \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\",\n \"$ref\": \"ActivityContentDetailsPromotedItem\"\n - \ },\n \"channelItem\": {\n \"description\": \"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.\",\n \"$ref\": - \"ActivityContentDetailsChannelItem\"\n },\n \"favorite\": {\n - \ \"description\": \"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.\",\n \"$ref\": \"ActivityContentDetailsFavorite\"\n - \ },\n \"social\": {\n \"$ref\": \"ActivityContentDetailsSocial\",\n - \ \"description\": \"The social object contains details about a social - network post. This property is only present if the snippet.type is social.\"\n - \ },\n \"comment\": {\n \"description\": \"The comment - object contains information about a resource that received a comment. This - property is only present if the snippet.type is comment.\",\n \"$ref\": - \"ActivityContentDetailsComment\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatFanFundingEventDetails\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"amountMicros\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - amount of the fund.\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the fund was made.\",\n \"type\": \"string\"\n - \ },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the user to this fan funding - event.\"\n },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"VideoStatus\": {\n \"type\": \"object\",\n \"properties\": - {\n \"license\": {\n \"description\": \"The video's license. - @mutable youtube.videos.insert youtube.videos.update\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"youtube\",\n \"creativeCommon\"\n - \ ]\n },\n \"publishAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the video is scheduled to publish. It can be set only if the - privacy status of the video is private..\"\n },\n \"privacyStatus\": - {\n \"type\": \"string\",\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"description\": - \"The video's privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"publicStatsViewable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"uploadStatus\": {\n \"enum\": [\n \"uploaded\",\n - \ \"processed\",\n \"failed\",\n \"rejected\",\n - \ \"deleted\"\n ],\n \"enumDescriptions\": [\n - \ \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ],\n \"description\": - \"The status of the uploaded video.\",\n \"type\": \"string\"\n },\n - \ \"failureReason\": {\n \"enumDescriptions\": [\n \"Unable - to convert video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ],\n \"description\": - \"This value explains why a video failed to upload. This property is only - present if the uploadStatus property indicates that the upload failed.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"conversion\",\n - \ \"invalidFile\",\n \"emptyFile\",\n \"tooSmall\",\n - \ \"codec\",\n \"uploadAborted\"\n ]\n },\n - \ \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"embeddable\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This value indicates if the video can be embedded - on another website. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"rejectionReason\": {\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"copyright\",\n - \ \"inappropriate\",\n \"duplicate\",\n \"termsOfUse\",\n - \ \"uploaderAccountSuspended\",\n \"length\",\n \"claim\",\n - \ \"uploaderAccountClosed\",\n \"trademark\",\n \"legal\"\n - \ ],\n \"enumDescriptions\": [\n \"Copyright infringement.\",\n - \ \"Inappropriate video content.\",\n \"Duplicate upload - in the same channel.\",\n \"Terms of use violation.\",\n \"Uploader - account was suspended.\",\n \"Video duration was too long.\",\n - \ \"Blocked by content owner.\",\n \"Uploader closed - his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ]\n }\n },\n \"id\": - \"VideoStatus\",\n \"description\": \"Basic details about a video category, - such as its localized title. Next Id: 18\"\n },\n \"LiveBroadcastStatistics\": - {\n \"id\": \"LiveBroadcastStatistics\",\n \"description\": \"Statistics - about the live broadcast. These represent a snapshot of the values at the - time of the request. Statistics are only returned for live broadcasts.\",\n - \ \"properties\": {\n \"concurrentViewers\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of viewers currently watching the broadcast. The property and its value - will be present if the broadcast has current viewers and the broadcast owner - has not hidden the viewcount for the video. Note that YouTube stops tracking - the number of concurrent viewers for a broadcast when the broadcast ends. - So, this property would not identify the number of viewers watching an archived - video of a live broadcast that already ended.\"\n },\n \"totalChatCount\": - {\n \"type\": \"string\",\n \"description\": \"The total - number of live chat messages currently on the broadcast. The property and - its value will be present if the broadcast is public, has the live chat feature - enabled, and has at least one message. Note that this field will not be filled - after the broadcast ends. So this property would not identify the number of - chat messages for an archived video of a completed live broadcast.\",\n \"format\": - \"uint64\"\n }\n },\n \"type\": \"object\"\n },\n \"PlaylistItemContentDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"note\": - {\n \"type\": \"string\",\n \"description\": \"A user-generated - note for this item.\"\n },\n \"videoPublishedAt\": {\n \"type\": - \"string\",\n \"description\": \"The date and time that the video - was published to YouTube.\",\n \"format\": \"date-time\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify a video. To retrieve the video resource, set the id query - parameter to this value in your API request.\",\n \"type\": \"string\"\n - \ },\n \"endAt\": {\n \"description\": \"The time, measured - in seconds from the start of the video, when the video should stop playing. - (The playlist owner can specify the times when the video should start and - stop playing when the video is played in the context of the playlist.) By - default, assume that the video.endTime is the end of the video.\",\n \"type\": - \"string\"\n },\n \"startAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The time, measured in seconds from the start - of the video, when the video should start playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) The default value is 0.\"\n }\n - \ },\n \"id\": \"PlaylistItemContentDetails\"\n },\n \"WatchSettings\": - {\n \"description\": \"Branding properties for the watch. All deprecated.\",\n - \ \"id\": \"WatchSettings\",\n \"type\": \"object\",\n \"properties\": - {\n \"backgroundColor\": {\n \"type\": \"string\",\n \"description\": - \"The text color for the video watch page's branded area.\"\n },\n - \ \"textColor\": {\n \"description\": \"The background color - for the video watch page's branded area.\",\n \"type\": \"string\"\n - \ },\n \"featuredPlaylistId\": {\n \"description\": - \"An ID that uniquely identifies a playlist that displays next to the video - player.\",\n \"type\": \"string\"\n }\n }\n },\n \"LiveChatMessageRetractedDetails\": - {\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"I18nRegion\": {\n \"description\": - \"A *i18nRegion* resource identifies a region where YouTube is available.\",\n - \ \"id\": \"I18nRegion\",\n \"properties\": {\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the i18n region, such as region code and human-readable name.\",\n \"$ref\": - \"I18nRegionSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nRegion\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nRegion\\\".\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n region.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"CaptionListResponse\": {\n \"properties\": {\n \"items\": - {\n \"description\": \"A list of captions that match the request - criteria.\",\n \"items\": {\n \"$ref\": \"Caption\"\n - \ },\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#captionListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"CaptionListResponse\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"properties\": {\n \"banDurationSeconds\": {\n \"format\": - \"uint64\",\n \"description\": \"The duration of the ban. This property - is only present if the banType is temporary.\",\n \"type\": \"string\"\n - \ },\n \"banType\": {\n \"description\": \"The type - of ban.\",\n \"enum\": [\n \"permanent\",\n \"temporary\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\",\n \"description\": - \"The details of the user that was banned.\"\n }\n },\n \"id\": - \"LiveChatUserBannedMessageDetails\",\n \"type\": \"object\"\n },\n - \ \"LiveChatModerator\": {\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the moderator.\",\n \"$ref\": \"LiveChatModeratorSnippet\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#liveChatModerator\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the moderator.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"A *liveChatModerator* resource represents a moderator for a YouTube live - chat. A chat moderator has the ability to ban/unban users from a chat, remove - message, etc.\",\n \"id\": \"LiveChatModerator\"\n },\n \"ImageSettings\": - {\n \"id\": \"ImageSettings\",\n \"description\": \"Branding properties - for images associated with the channel.\",\n \"properties\": {\n \"bannerTabletExtraHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size extra high resolution (2560x424).\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerMobileHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1280x360).\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 640px by 70px banner image that appears below the video - player in the default view of the video watch page. The URL for the image - that appears above the top-left corner of the video player. This is a 25-pixel-high - image with a flexible width that cannot exceed 170 pixels.\"\n },\n - \ \"backgroundImageUrl\": {\n \"$ref\": \"LocalizedProperty\",\n - \ \"description\": \"The URL for the background image shown on the - video watch page. The image should be 1200px by 615px, with a maximum file - size of 128k.\"\n },\n \"bannerMobileExtraHdImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size high resolution (1440x395).\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size medium/high resolution - (960x263).\",\n \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"bannerTvLowImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. TV size low resolution (854x480).\"\n - \ },\n \"bannerMobileImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Mobile size (640x175).\"\n },\n - \ \"bannerTabletLowImageUrl\": {\n \"description\": \"Banner - image. Tablet size low resolution (1138x188).\",\n \"type\": \"string\"\n - \ },\n \"bannerTvImageUrl\": {\n \"description\": \"Banner - image. TV size extra high resolution (2120x1192).\",\n \"type\": - \"string\"\n },\n \"bannerMobileLowImageUrl\": {\n \"description\": - \"Banner image. Mobile size low resolution (320x88).\",\n \"type\": - \"string\"\n },\n \"bannerTabletImageUrl\": {\n \"description\": - \"Banner image. Tablet size (1707x283).\",\n \"type\": \"string\"\n - \ },\n \"bannerImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Desktop size (1060x175).\"\n },\n - \ \"largeBrandedBannerImageImapScript\": {\n \"description\": - \"The image map script for the large banner image.\",\n \"$ref\": - \"LocalizedProperty\"\n },\n \"bannerTabletHdImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"Banner image. - Tablet size high resolution (2276x377).\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size medium resolution (1280x720).\"\n },\n \"bannerTvHighImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\"\n },\n \"trackingImageUrl\": - {\n \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the small banner image.\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"description\": \"The URL for the 854px by 70px image that appears - below the video player in the expanded video view of the video watch page.\",\n - \ \"$ref\": \"LocalizedProperty\"\n }\n },\n \"type\": - \"object\"\n },\n \"Playlist\": {\n \"description\": \"A *playlist* - resource represents a YouTube playlist. A playlist is a collection of videos - that can be viewed sequentially and shared with other users. A playlist can - contain up to 200 videos, and YouTube does not limit the number of playlists - that each user creates. By default, playlists are publicly visible to other - users, but playlists can be public or private. YouTube also uses playlists - to identify special collections of videos for a channel, such as: - uploaded - videos - favorite videos - positively rated (liked) videos - watch history - - watch later To be more specific, these lists are associated with a channel, - which is a collection of a person, group, or company's videos, playlists, - and other YouTube information. You can retrieve the playlist IDs for each - of these lists from the channel resource for a given channel. You can then - use the playlistItems.list method to retrieve any of those lists. You can - also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods.\",\n \"properties\": {\n \"kind\": - {\n \"default\": \"youtube#playlist\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"type\": \"string\"\n },\n \"localizations\": {\n - \ \"additionalProperties\": {\n \"$ref\": \"PlaylistLocalization\"\n - \ },\n \"type\": \"object\",\n \"description\": - \"Localizations for different languages\"\n },\n \"player\": - {\n \"description\": \"The player object contains information that - you would use to play the playlist in an embedded player.\",\n \"$ref\": - \"PlaylistPlayer\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"PlaylistSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\"\n },\n \"status\": {\n \"$ref\": - \"PlaylistStatus\",\n \"description\": \"The status object contains - status information for the playlist.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - like video count.\",\n \"$ref\": \"PlaylistContentDetails\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"Playlist\"\n },\n - \ \"ChannelSettings\": {\n \"description\": \"Branding properties for - the channel view.\",\n \"properties\": {\n \"featuredChannelsUrls\": - {\n \"description\": \"The list of featured channels.\",\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"defaultLanguage\": {\n \"type\": \"string\"\n - \ },\n \"moderateComments\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether user-submitted comments left on the channel - page need to be approved by the channel owner to be publicly visible.\"\n - \ },\n \"showBrowseView\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the tab to browse the videos should be - displayed.\"\n },\n \"description\": {\n \"description\": - \"Specifies the channel description.\",\n \"type\": \"string\"\n - \ },\n \"keywords\": {\n \"description\": \"Lists keywords - associated with the channel, comma-separated.\",\n \"type\": \"string\"\n - \ },\n \"trackingAnalyticsAccountId\": {\n \"type\": - \"string\",\n \"description\": \"The ID for a Google Analytics account - to track and measure traffic to the channels.\"\n },\n \"title\": - {\n \"description\": \"Specifies the channel title.\",\n \"type\": - \"string\"\n },\n \"country\": {\n \"type\": \"string\",\n - \ \"description\": \"The country of the channel.\"\n },\n \"featuredChannelsTitle\": - {\n \"description\": \"Title for the featured channels tab.\",\n - \ \"type\": \"string\"\n },\n \"showRelatedChannels\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - related channels should be proposed.\"\n },\n \"profileColor\": - {\n \"type\": \"string\",\n \"description\": \"A prominent - color that can be rendered on this channel page.\"\n },\n \"defaultTab\": - {\n \"description\": \"Which content tab users should see when viewing - the channel.\",\n \"type\": \"string\"\n },\n \"unsubscribedTrailer\": - {\n \"description\": \"The trailer of the channel, for users that - are not subscribers.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ChannelSettings\",\n \"type\": \"object\"\n },\n \"Thumbnail\": - {\n \"properties\": {\n \"height\": {\n \"description\": - \"(Optional) Height of the thumbnail image.\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\"\n },\n \"url\": {\n \"description\": - \"The thumbnail image's URL.\",\n \"type\": \"string\"\n },\n - \ \"width\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"(Optional) Width of the thumbnail - image.\"\n }\n },\n \"id\": \"Thumbnail\",\n \"description\": - \"A thumbnail is an image representing a YouTube resource.\",\n \"type\": - \"object\"\n },\n \"Caption\": {\n \"properties\": {\n \"id\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.captions.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the caption track.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#caption\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the caption.\",\n \"$ref\": \"CaptionSnippet\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"description\": \"A - *caption* resource represents a YouTube caption track. A caption track is - associated with exactly one YouTube video.\",\n \"type\": \"object\",\n - \ \"id\": \"Caption\"\n },\n \"MembershipsLevelListResponse\": {\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevelListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"items\": {\n \"description\": - \"A list of pricing levels offered by a creator to the fans.\",\n \"items\": - {\n \"$ref\": \"MembershipsLevel\"\n },\n \"type\": - \"array\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"MembershipsLevelListResponse\",\n \"type\": \"object\"\n - \ },\n \"LiveChatMessageDeletedDetails\": {\n \"id\": \"LiveChatMessageDeletedDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"deletedMessageId\": - {\n \"type\": \"string\"\n }\n }\n },\n \"PlaylistPlayer\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistPlayer\",\n \"properties\": - {\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the playlist.\"\n - \ }\n }\n },\n \"LiveStreamHealthStatus\": {\n \"id\": - \"LiveStreamHealthStatus\",\n \"type\": \"object\",\n \"properties\": - {\n \"configurationIssues\": {\n \"description\": \"The configurations - issues on this stream\",\n \"items\": {\n \"$ref\": \"LiveStreamConfigurationIssue\"\n - \ },\n \"type\": \"array\"\n },\n \"status\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The status code of this stream\",\n - \ \"enum\": [\n \"good\",\n \"ok\",\n \"bad\",\n - \ \"noData\",\n \"revoked\"\n ]\n },\n - \ \"lastUpdateTimeSeconds\": {\n \"description\": \"The last - time this status was updated (in seconds)\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n }\n }\n },\n \"Activity\": - {\n \"type\": \"object\",\n \"description\": \"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.\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource\"\n },\n \"contentDetails\": {\n \"description\": - \"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.\",\n \"$ref\": - \"ActivityContentDetails\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#activity\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activity\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the activity.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the activity, including the activity's type and group ID.\"\n }\n },\n - \ \"id\": \"Activity\"\n },\n \"LevelDetails\": {\n \"id\": - \"LevelDetails\",\n \"properties\": {\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The name that should be used when - referring to this level.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"VideoFileDetailsVideoStream\": {\n \"description\": \"Information - about a video stream.\",\n \"type\": \"object\",\n \"properties\": - {\n \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"frameRateFps\": {\n \"format\": - \"double\",\n \"type\": \"number\",\n \"description\": \"The - video stream's frame rate, in frames per second.\"\n },\n \"codec\": - {\n \"type\": \"string\",\n \"description\": \"The video - codec that the stream uses.\"\n },\n \"rotation\": {\n \"type\": - \"string\",\n \"description\": \"The amount that YouTube needs to - rotate the original source content to properly display the video.\",\n \"enum\": - [\n \"none\",\n \"clockwise\",\n \"upsideDown\",\n - \ \"counterClockwise\",\n \"other\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"bitrateBps\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The video stream's bitrate, in bits per second.\"\n },\n \"widthPixels\": - {\n \"description\": \"The encoded video content's width in pixels. - You can calculate the video's encoding aspect ratio as width_pixels / height_pixels.\",\n - \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n - \ \"aspectRatio\": {\n \"type\": \"number\",\n \"description\": - \"The video content's display aspect ratio, which specifies the aspect ratio - in which the video should be displayed.\",\n \"format\": \"double\"\n - \ },\n \"heightPixels\": {\n \"type\": \"integer\",\n - \ \"description\": \"The encoded video content's height in pixels.\",\n - \ \"format\": \"uint32\"\n }\n },\n \"id\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"VideoSnippet\": {\n \"description\": \"Basic details about - a video, including title, description, uploader, thumbnails and category.\",\n - \ \"id\": \"VideoSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"publishedAt\": {\n \"description\": \"The date and time - when the video was uploaded.\",\n \"type\": \"string\",\n \"format\": - \"date-time\"\n },\n \"localized\": {\n \"$ref\": \"VideoLocalization\",\n - \ \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the video. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"channelTitle\": {\n \"type\": - \"string\",\n \"description\": \"Channel title for the channel that - the video belongs to.\"\n },\n \"defaultAudioLanguage\": {\n - \ \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"liveBroadcastContent\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's title. @mutable youtube.videos.insert - youtube.videos.update\"\n },\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the videos's default - snippet.\"\n },\n \"categoryId\": {\n \"description\": - \"The YouTube video category associated with the video.\",\n \"type\": - \"string\"\n },\n \"description\": {\n \"description\": - \"The video's description. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"tags\": {\n \"description\": - \"A list of keyword tags associated with the video. Tags may contain spaces.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that the video - was uploaded to.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"VideoAbuseReport\": {\n \"id\": \"VideoAbuseReport\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"language\": - {\n \"description\": \"The language that the content was viewed in.\",\n - \ \"type\": \"string\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video.\"\n },\n \"reasonId\": {\n \"type\": - \"string\",\n \"description\": \"The high-level, or primary, reason - that the content is abusive. The value is an abuse report reason ID.\"\n },\n - \ \"comments\": {\n \"type\": \"string\",\n \"description\": - \"Additional comments regarding the abuse report.\"\n },\n \"secondaryReasonId\": - {\n \"type\": \"string\",\n \"description\": \"The specific, - or secondary, reason that this content is abusive (if available). The value - is an abuse report reason ID that is a valid secondary reason for the primary - reason.\"\n }\n }\n },\n \"SubscriptionContentDetails\": - {\n \"id\": \"SubscriptionContentDetails\",\n \"description\": \"Details - about the content to witch a subscription refers.\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"activityType\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The type of activity this subscription is for - (only uploads, everything).\",\n \"type\": \"string\",\n \"enum\": - [\n \"subscriptionActivityTypeUnspecified\",\n \"all\",\n - \ \"uploads\"\n ]\n },\n \"newItemCount\": - {\n \"type\": \"integer\",\n \"description\": \"The number - of new items in the subscription since its content was last read.\",\n \"format\": - \"uint32\"\n },\n \"totalItemCount\": {\n \"description\": - \"The approximate number of items that the subscription points to.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n }\n }\n },\n - \ \"TestItemTestItemSnippet\": {\n \"id\": \"TestItemTestItemSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {}\n },\n \"InvideoTiming\": - {\n \"type\": \"object\",\n \"description\": \"Describes a temporal - position of a visual widget inside a video.\",\n \"id\": \"InvideoTiming\",\n - \ \"properties\": {\n \"durationMs\": {\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\",\n \"type\": \"string\",\n - \ \"format\": \"uint64\"\n },\n \"type\": {\n \"enum\": - [\n \"offsetFromStart\",\n \"offsetFromEnd\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"description\": \"Describes a timing type. If the value is offsetFromStart, - then the offsetMs field represents an offset from the start of the video. - If the value is offsetFromEnd, then the offsetMs field represents an offset - from the end of the video.\",\n \"type\": \"string\"\n },\n - \ \"offsetMs\": {\n \"format\": \"uint64\",\n \"description\": - \"Defines the time at which the promotion will appear. Depending on the value - of type the value of the offsetMs field will represent a time offset from - the start or from the end of the video, expressed in milliseconds.\",\n \"type\": - \"string\"\n }\n }\n },\n \"PlaylistItem\": {\n \"id\": - \"PlaylistItem\",\n \"description\": \"A *playlistItem* resource identifies - another resource, such as a video, that is included in a playlist. In addition, - the playlistItem resource contains details about the included resource that - pertain specifically to how that resource is used in that playlist. YouTube - uses playlists to identify special collections of videos for a channel, such - as: - uploaded videos - favorite videos - positively rated (liked) videos - - watch history - watch later To be more specific, these lists are associated - with a channel, which is a collection of a person, group, or company's videos, - playlists, and other YouTube information. You can retrieve the playlist IDs - for each of these lists from the channel resource for a given channel. You - can then use the playlistItems.list method to retrieve any of those lists. - You can also add or remove items from those lists by calling the playlistItems.insert - and playlistItems.delete methods. For example, if a user gives a positive - rating to a video, you would insert that video into the liked videos playlist - for that user's channel.\",\n \"type\": \"object\",\n \"properties\": - {\n \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the playlist item.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"$ref\": \"PlaylistItemSnippet\",\n \"description\": - \"The snippet object contains basic details about the playlist item, such - as its title and position in the playlist.\"\n },\n \"kind\": - {\n \"default\": \"youtube#playlistItem\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#playlistItem\\\".\"\n },\n \"contentDetails\": - {\n \"$ref\": \"PlaylistItemContentDetails\",\n \"description\": - \"The contentDetails object is included in the resource if the included item - is a YouTube video. The object contains additional information about the video.\"\n - \ }\n }\n },\n \"VideoGetRatingResponse\": {\n \"properties\": - {\n \"items\": {\n \"description\": \"A list of ratings that - match the request criteria.\",\n \"items\": {\n \"$ref\": - \"VideoRating\"\n },\n \"type\": \"array\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#videoGetRatingResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n },\n \"id\": \"VideoGetRatingResponse\",\n - \ \"type\": \"object\"\n },\n \"MonitorStreamInfo\": {\n \"properties\": - {\n \"broadcastStreamDelayMs\": {\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"description\": \"If you have - set the enableMonitorStream property to true, then this property determines - the length of the live broadcast delay.\",\n \"annotations\": {\n - \ \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"embedHtml\": {\n \"type\": - \"string\",\n \"description\": \"HTML code that embeds a player that - plays the monitor stream.\"\n },\n \"enableMonitorStream\": - {\n \"description\": \"This value determines whether the monitor - stream is enabled for the broadcast. If the monitor stream is enabled, then - YouTube will broadcast the event content on a special stream intended only - for the broadcaster's consumption. The broadcaster can use the stream to review - the event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"boolean\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Settings and Info of the monitor stream\",\n \"id\": - \"MonitorStreamInfo\"\n },\n \"ChannelSectionContentDetails\": {\n \"type\": - \"object\",\n \"description\": \"Details about a channelsection, including - playlists and channels.\",\n \"id\": \"ChannelSectionContentDetails\",\n - \ \"properties\": {\n \"playlists\": {\n \"type\": \"array\",\n - \ \"description\": \"The playlist ids for type single_playlist and - multiple_playlists. For singlePlaylist, only one playlistId is allowed.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"channels\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"type\": \"array\"\n }\n }\n },\n \"LiveStreamSnippet\": - {\n \"properties\": {\n \"description\": {\n \"description\": - \"The stream's description. The value cannot be longer than 10000 characters.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that is transmitting the stream.\"\n },\n \"isDefaultStream\": - {\n \"type\": \"boolean\"\n },\n \"publishedAt\": {\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the stream was created.\"\n },\n \"title\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The stream's - title. The value must be between 1 and 128 characters long.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveStreamSnippet\"\n - \ },\n \"AbuseReport\": {\n \"properties\": {\n \"relatedEntities\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"RelatedEntity\"\n }\n },\n \"description\": {\n \"type\": - \"string\"\n },\n \"subject\": {\n \"$ref\": \"Entity\"\n - \ },\n \"abuseTypes\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"AbuseType\"\n }\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"AbuseReport\"\n },\n \"LiveChatMessageListResponse\": - {\n \"id\": \"LiveChatMessageListResponse\",\n \"properties\": {\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveChatMessage\"\n }\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatMessageListResponse\",\n \"type\": - \"string\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"offlineAt\": {\n \"description\": - \"The date and time when the underlying stream went offline.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"pollingIntervalMillis\": - {\n \"format\": \"uint32\",\n \"description\": \"The amount - of time the client should wait before polling again.\",\n \"type\": - \"integer\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"description\": \"The id of the author's YouTube channel, if any.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"value\": {\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"AbuseType\": {\n \"type\": \"object\",\n \"properties\": - {\n \"id\": {\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"AbuseType\"\n },\n \"ChannelSection\": {\n \"properties\": - {\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel section.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"ChannelSectionSnippet\",\n \"description\": \"The snippet object - contains basic details about the channel section, such as its type, style - and title.\"\n },\n \"targeting\": {\n \"$ref\": \"ChannelSectionTargeting\",\n - \ \"description\": \"The targeting object contains basic targeting - settings about the channel section.\"\n },\n \"localizations\": - {\n \"type\": \"object\",\n \"additionalProperties\": {\n - \ \"$ref\": \"ChannelSectionLocalization\"\n },\n \"description\": - \"Localizations for different languages\"\n },\n \"contentDetails\": - {\n \"$ref\": \"ChannelSectionContentDetails\",\n \"description\": - \"The contentDetails object contains details about the channel section content, - such as a list of playlists or channels featured in the section.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"default\": \"youtube#channelSection\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"ChannelSection\"\n },\n \"ThumbnailSetResponse\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"description\": \"A list of thumbnails.\",\n \"type\": - \"array\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"default\": \"youtube#thumbnailSetResponse\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"ThumbnailSetResponse\",\n - \ \"type\": \"object\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"id\": \"LiveChatGiftMembershipReceivedDetails\",\n \"properties\": - {\n \"gifterChannelId\": {\n \"description\": \"The ID of - the user that made the membership gifting purchase. This matches the `snippet.authorChannelId` - of the associated membership gifting message.\",\n \"type\": \"string\"\n - \ },\n \"memberLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the Level at which the viewer is - a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoFileDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"container\": - {\n \"type\": \"string\",\n \"description\": \"The uploaded - video file's container format.\"\n },\n \"creationTime\": {\n - \ \"description\": \"The date and time when the uploaded video file - was created. The value is specified in ISO 8601 format. Currently, the following - ISO 8601 formats are supported: - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM \",\n \"type\": \"string\"\n - \ },\n \"audioStreams\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of audio streams contained in the uploaded - video file. Each item in the list contains detailed metadata about an audio - stream.\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ }\n },\n \"fileSize\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - file's size in bytes. This field is present whether a video file or another - type of file was uploaded.\"\n },\n \"bitrateBps\": {\n \"type\": - \"string\",\n \"description\": \"The uploaded video file's combined - (video and audio) bitrate in bits per second.\",\n \"format\": \"uint64\"\n - \ },\n \"fileName\": {\n \"type\": \"string\",\n \"description\": - \"The uploaded file's name. This field is present whether a video file or - another type of file was uploaded.\"\n },\n \"durationMs\": - {\n \"type\": \"string\",\n \"description\": \"The length - of the uploaded video in milliseconds.\",\n \"format\": \"uint64\"\n - \ },\n \"videoStreams\": {\n \"items\": {\n \"$ref\": - \"VideoFileDetailsVideoStream\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of video streams contained in the uploaded - video file. Each item in the list contains detailed metadata about a video - stream.\"\n },\n \"fileType\": {\n \"enum\": [\n \"video\",\n - \ \"audio\",\n \"image\",\n \"archive\",\n - \ \"document\",\n \"project\",\n \"other\"\n - \ ],\n \"description\": \"The uploaded file's type as detected - by YouTube's video processing engine. Currently, YouTube only processes video - files, but this field is present whether a video file or another type of file - was uploaded.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ]\n }\n },\n \"description\": \"Describes - original video file properties, including technical details about audio and - video streams, but also metadata information like content length, digitization - time, or geotagging information.\",\n \"id\": \"VideoFileDetails\"\n - \ },\n \"ActivityContentDetailsUpload\": {\n \"properties\": {\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the uploaded video.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Information - about the uploaded video.\",\n \"id\": \"ActivityContentDetailsUpload\"\n - \ },\n \"CommentSnippet\": {\n \"description\": \"Basic details - about a comment, such as its author and text.\",\n \"properties\": {\n - \ \"authorDisplayName\": {\n \"type\": \"string\",\n \"description\": - \"The name of the user who posted the comment.\"\n },\n \"likeCount\": - {\n \"format\": \"uint32\",\n \"description\": \"The total - number of likes this comment has received.\",\n \"type\": \"integer\"\n - \ },\n \"authorProfileImageUrl\": {\n \"description\": - \"The URL for the avatar of the user who posted the comment.\",\n \"type\": - \"string\"\n },\n \"updatedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the comment was last updated.\",\n - \ \"format\": \"date-time\"\n },\n \"textOriginal\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"moderationStatus\": - {\n \"description\": \"The comment's moderation status. Will not - be set if the comments were requested through the id filter.\",\n \"type\": - \"string\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ]\n },\n \"authorChannelUrl\": - {\n \"type\": \"string\",\n \"description\": \"Link to the - author's YouTube channel, if any.\"\n },\n \"parentId\": {\n - \ \"description\": \"The unique id of the parent comment, only set - for replies.\",\n \"type\": \"string\"\n },\n \"textDisplay\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n - \ \"canRate\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the current viewer can rate this comment.\"\n },\n \"viewerRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time when the comment was originally published.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n \"authorChannelId\": - {\n \"$ref\": \"CommentSnippetAuthorChannelId\"\n },\n \"videoId\": - {\n \"description\": \"The ID of the video the comment refers to, - if any.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"CommentSnippet\",\n \"type\": \"object\"\n },\n \"ContentRating\": - {\n \"id\": \"ContentRating\",\n \"description\": \"Ratings schemes. - The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"mekuRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"S\",\n - \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"mekuUnspecified\",\n \"mekuS\",\n \"meku7\",\n - \ \"meku12\",\n \"meku16\",\n \"meku18\",\n - \ \"mekuUnrated\"\n ],\n \"description\": \"The - video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti (National - Audiovisual Institute).\"\n },\n \"cicfRating\": {\n \"description\": - \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n \"\"\n - \ ],\n \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n - \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n - \ ]\n },\n \"mcstRating\": {\n \"description\": - \"The video's rating system for Vietnam - MCST\",\n \"enum\": [\n - \ \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n - \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n - \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"P\",\n - \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n - \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"eirinRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ],\n \"description\": - \"The video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"eirinUnspecified\",\n - \ \"eirinG\",\n \"eirinPg12\",\n \"eirinR15plus\",\n - \ \"eirinR18plus\",\n \"eirinUnrated\"\n ]\n - \ },\n \"smsaRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"All ages\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"enum\": [\n - \ \"smsaUnspecified\",\n \"smsaA\",\n \"smsa7\",\n - \ \"smsa11\",\n \"smsa15\",\n \"smsaUnrated\"\n - \ ],\n \"description\": \"The video's rating from Statens - medier\xE5d (Sweden's National Media Council).\"\n },\n \"fcoRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"I\",\n - \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"fcoUnspecified\",\n \"fcoI\",\n \"fcoIia\",\n - \ \"fcoIib\",\n \"fcoIi\",\n \"fcoIii\",\n - \ \"fcoUnrated\"\n ],\n \"description\": \"The - video's rating from Hong Kong's Office for Film, Newspaper and Article Administration.\"\n - \ },\n \"catvRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"C\",\n \"C8\",\n \"G\",\n - \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"catvUnspecified\",\n - \ \"catvC\",\n \"catvC8\",\n \"catvG\",\n - \ \"catvPg\",\n \"catv14plus\",\n \"catv18plus\",\n - \ \"catvUnrated\",\n \"catvE\"\n ],\n \"type\": - \"string\",\n \"description\": \"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.\"\n - \ },\n \"catvfrRating\": {\n \"enum\": [\n \"catvfrUnspecified\",\n - \ \"catvfrG\",\n \"catvfr8plus\",\n \"catvfr13plus\",\n - \ \"catvfr16plus\",\n \"catvfr18plus\",\n \"catvfrUnrated\",\n - \ \"catvfrE\"\n ],\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ]\n },\n \"anatelRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"F\",\n - \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n - \ \"R\",\n \"A\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n - \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n - \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n - \ \"anatelUnrated\"\n ],\n \"description\": \"The - video's Anatel (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean - television.\"\n },\n \"ifcoRating\": {\n \"enum\": - [\n \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"description\": \"The - video's Irish Film Classification Office (IFCO - Ireland) rating. See the - IFCO website for more information.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"12\",\n - \ \"12A\",\n \"15\",\n \"15A\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"acbRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"E\",\n \"Programs that have been - given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"oflcRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"oflcUnspecified\",\n - \ \"oflcG\",\n \"oflcPg\",\n \"oflcM\",\n - \ \"oflcR13\",\n \"oflcR15\",\n \"oflcR16\",\n - \ \"oflcR18\",\n \"oflcUnrated\",\n \"oflcRp13\",\n - \ \"oflcRp16\",\n \"oflcRp18\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"M\",\n - \ \"R13\",\n \"R15\",\n \"R16\",\n \"R18\",\n - \ \"\",\n \"RP13\",\n \"RP16\",\n \"RP18\"\n - \ ],\n \"description\": \"The video's Office of Film and - Literature Classification (OFLC - New Zealand) rating.\"\n },\n \"nbcRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from the Maldives National Bureau of Classification.\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"enum\": [\n \"nbcUnspecified\",\n - \ \"nbcG\",\n \"nbcPg\",\n \"nbc12plus\",\n - \ \"nbc15plus\",\n \"nbc18plus\",\n \"nbc18plusr\",\n - \ \"nbcPu\",\n \"nbcUnrated\"\n ]\n },\n - \ \"moctwRating\": {\n \"description\": \"The video's rating - from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P\",\n \"PG\",\n - \ \"R\",\n \"\",\n \"R-12\",\n \"R-15\"\n - \ ],\n \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n - \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n - \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n - \ ],\n \"type\": \"string\"\n },\n \"resorteviolenciaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n - \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n - \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Venezuela.\"\n },\n \"fpbRatingReasons\": - {\n \"items\": {\n \"enum\": [\n \"fpbRatingReasonUnspecified\",\n - \ \"fpbBlasphemy\",\n \"fpbLanguage\",\n \"fpbNudity\",\n - \ \"fpbPrejudice\",\n \"fpbSex\",\n \"fpbViolence\",\n - \ \"fpbDrugs\",\n \"fpbSexualViolence\",\n \"fpbHorror\",\n - \ \"fpbCriminalTechniques\",\n \"fpbImitativeActsTechniques\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"description\": - \"Reasons that explain why the video received its FPB (South Africa) rating.\",\n - \ \"type\": \"array\"\n },\n \"kmrbRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n - \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 - \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"enum\": - [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n - \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n - \ \"kmrbUnrated\"\n ],\n \"description\": \"The - video's Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) - rating. The KMRB rates videos in South Korea.\"\n },\n \"czfilmRating\": - {\n \"description\": \"The video's rating in the Czech Republic.\",\n - \ \"type\": \"string\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ]\n },\n \"mpaaRating\": - {\n \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n - \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n - \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n - \ ],\n \"description\": \"The video's Motion Picture Association - of America (MPAA) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"NC-17\",\n \"! X\",\n \"\"\n ],\n - \ \"type\": \"string\"\n },\n \"djctqRating\": {\n \"type\": - \"string\",\n \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ],\n \"description\": \"The - video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"nfrcRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Bulgarian National Film Center.\",\n \"enum\": [\n \"nfrcUnspecified\",\n - \ \"nfrcA\",\n \"nfrcB\",\n \"nfrcC\",\n \"nfrcD\",\n - \ \"nfrcX\",\n \"nfrcUnrated\"\n ]\n },\n - \ \"nbcplRating\": {\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The video's rating in Poland.\"\n },\n \"cccRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"Todo espectador\",\n - \ \"6+ - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n - \ \"18+\",\n \"18+ - contenido excesivamente violento\",\n - \ \"18+ - contenido pornogr\xE1fico\",\n \"\"\n ],\n - \ \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n - \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's Consejo de Calificaci\xF3n - Cinematogr\xE1fica (Chile) rating.\"\n },\n \"eefilmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating in Estonia.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Pere\",\n \"L\",\n \"MS-6\",\n \"K-6\",\n - \ \"MS-12\",\n \"K-12\",\n \"K-14\",\n \"K-16\",\n - \ \"\"\n ],\n \"enum\": [\n \"eefilmUnspecified\",\n - \ \"eefilmPere\",\n \"eefilmL\",\n \"eefilmMs6\",\n - \ \"eefilmK6\",\n \"eefilmMs12\",\n \"eefilmK12\",\n - \ \"eefilmK14\",\n \"eefilmK16\",\n \"eefilmUnrated\"\n - \ ]\n },\n \"nfvcbRating\": {\n \"description\": - \"The video's rating from Nigeria's National Film and Video Censors Board.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"18\",\n \"RE\",\n \"\"\n ],\n - \ \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"lsfRating\": {\n \"enum\": [\n \"lsfUnspecified\",\n - \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n - \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n - \ \"lsfUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n - \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n - \ \"21\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Indonesia's Lembaga Sensor - Film.\"\n },\n \"cscfRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from Luxembourg's Commission - de surveillance de la classification des films (CSCF).\",\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n - \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"\"\n ],\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ]\n },\n - \ \"menaMpaaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"To keep the same enum values as MPAA's items have, skip NC_17.\"\n - \ ],\n \"description\": \"The rating system for MENA countries, - a clone of MPAA. It is needed to prevent titles go live w/o additional QC - check, since some of them can be inappropriate for the countries at all. See - b/33408548 for more details.\",\n \"type\": \"string\",\n \"enum\": - [\n \"menaMpaaUnspecified\",\n \"menaMpaaG\",\n \"menaMpaaPg\",\n - \ \"menaMpaaPg13\",\n \"menaMpaaR\",\n \"menaMpaaUnrated\"\n - \ ]\n },\n \"mccaaRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n - \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n - \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n - \ \"mccaa18\",\n \"mccaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating from Malta's Film Age-Classification Board.\"\n },\n - \ \"skfilmRating\": {\n \"description\": \"The video's rating - in Slovakia.\",\n \"enum\": [\n \"skfilmUnspecified\",\n - \ \"skfilmG\",\n \"skfilmP2\",\n \"skfilmP5\",\n - \ \"skfilmP8\",\n \"skfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"grfilmRating\": {\n \"enum\": [\n \"grfilmUnspecified\",\n - \ \"grfilmK\",\n \"grfilmE\",\n \"grfilmK12\",\n - \ \"grfilmK13\",\n \"grfilmK15\",\n \"grfilmK17\",\n - \ \"grfilmK18\",\n \"grfilmUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating in Greece.\"\n },\n \"fskRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK - 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n - \ ],\n \"description\": \"The video's Freiwillige Selbstkontrolle - der Filmwirtschaft (FSK - Germany) rating.\",\n \"enum\": [\n \"fskUnspecified\",\n - \ \"fsk0\",\n \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n - \ \"fsk18\",\n \"fskUnrated\"\n ],\n \"type\": - \"string\"\n },\n \"ecbmctRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n - \ \"ecbmct7a\",\n \"ecbmct7plus\",\n \"ecbmct13a\",\n - \ \"ecbmct13plus\",\n \"ecbmct15a\",\n \"ecbmct15plus\",\n - \ \"ecbmct18plus\",\n \"ecbmctUnrated\"\n ],\n - \ \"description\": \"Rating system in Turkey - Evaluation and Classification - Board of the Ministry of Culture and Tourism\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n - \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n - \ \"18+\",\n \"\"\n ]\n },\n \"mibacRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from the Ministero dei Beni e delle Attivit\xE0 Culturali e del Turismo - (Italy).\",\n \"enum\": [\n \"mibacUnspecified\",\n \"mibacT\",\n - \ \"mibacVap\",\n \"mibacVm6\",\n \"mibacVm12\",\n - \ \"mibacVm14\",\n \"mibacVm16\",\n \"mibacVm18\",\n - \ \"mibacUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"ytRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n - \ \"description\": \"A rating that YouTube uses to identify age-restricted - content.\",\n \"type\": \"string\"\n },\n \"kfcbRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GE\",\n - \ \"PG\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from the Kenya - Film Classification Board.\",\n \"type\": \"string\",\n \"enum\": - [\n \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ]\n },\n \"fpbRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n - \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n - \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ],\n \"description\": \"The video's rating from South Africa's - Film and Publication Board.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"A\",\n \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X18\",\n - \ \"XX\",\n \"\",\n \"10\"\n ]\n - \ },\n \"mdaRating\": {\n \"enum\": [\n \"mdaUnspecified\",\n - \ \"mdaG\",\n \"mdaPg\",\n \"mdaPg13\",\n - \ \"mdaNc16\",\n \"mdaM18\",\n \"mdaR21\",\n - \ \"mdaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"PG13\",\n \"NC16\",\n \"M18\",\n - \ \"R21\",\n \"\"\n ],\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\"\n },\n \"rtcRating\": - {\n \"description\": \"The video's General Directorate of Radio, - Television and Cinematography (Mexico) rating.\",\n \"enum\": [\n - \ \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AA\",\n \"A\",\n \"B\",\n - \ \"B15\",\n \"C\",\n \"D\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"incaaRating\": - {\n \"description\": \"The video's INCAA (Instituto Nacional de Cine - y Artes Audiovisuales - Argentina) rating.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"incaaUnspecified\",\n \"incaaAtp\",\n - \ \"incaaSam13\",\n \"incaaSam16\",\n \"incaaSam18\",\n - \ \"incaaC\",\n \"incaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ]\n },\n \"bbfcRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"PG\",\n \"12A\",\n \"12\",\n - \ \"15\",\n \"18\",\n \"R18\",\n \"\"\n - \ ],\n \"enum\": [\n \"bbfcUnspecified\",\n \"bbfcU\",\n - \ \"bbfcPg\",\n \"bbfc12a\",\n \"bbfc12\",\n - \ \"bbfc15\",\n \"bbfc18\",\n \"bbfcR18\",\n - \ \"bbfcUnrated\"\n ],\n \"description\": \"The - video's British Board of Film Classification (BBFC) rating.\"\n },\n - \ \"djctqRatingReasons\": {\n \"type\": \"array\",\n \"description\": - \"Reasons that explain why the video received its DJCQT (Brazil) rating.\",\n - \ \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Brazil rating content descriptors. - See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia - extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual - content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n - \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas - (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas - Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate - language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo - Impactante (Impacting content)\"\n ],\n \"enum\": [\n - \ \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ]\n }\n },\n - \ \"nkclvRating\": {\n \"description\": \"The video's rating - from the Nacion\xE3lais Kino centrs (National Film Centre of Latvia).\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"U\",\n \"7+\",\n \"12+\",\n \"! - 16+\",\n \"18+\",\n \"\"\n ],\n \"enum\": - [\n \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n - \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n - \ \"nkclvUnrated\"\n ]\n },\n \"cncRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"T\",\n \"10\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"E\",\n \"interdiction\",\n \"\"\n - \ ],\n \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n - \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n - \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n - \ ],\n \"description\": \"Rating system in France - Commission - de classification cinematographique\"\n },\n \"mocRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"E\",\n \"T\",\n \"7\",\n \"12\",\n - \ \"15\",\n \"18\",\n \"X\",\n \"Banned\",\n - \ \"\"\n ],\n \"description\": \"The video's Ministerio - de Cultura (Colombia) rating.\",\n \"enum\": [\n \"mocUnspecified\",\n - \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n - \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n - \ \"mocUnrated\"\n ]\n },\n \"agcomRating\": - {\n \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"VM14\",\n \"VM18\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from Italy's Autorit\xE0 per - le Garanzie nelle Comunicazioni (AGCOM).\",\n \"type\": \"string\"\n - \ },\n \"nmcRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"enum\": [\n \"nmcUnspecified\",\n - \ \"nmcG\",\n \"nmcPg\",\n \"nmcPg13\",\n - \ \"nmcPg15\",\n \"nmc15plus\",\n \"nmc18plus\",\n - \ \"nmc18tc\",\n \"nmcUnrated\"\n ],\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\"\n - \ },\n \"chvrsRating\": {\n \"enum\": [\n \"chvrsUnspecified\",\n - \ \"chvrsG\",\n \"chvrsPg\",\n \"chvrs14a\",\n - \ \"chvrs18a\",\n \"chvrsR\",\n \"chvrsE\",\n - \ \"chvrsUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Canadian Home Video Rating System - (CHVRS) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"14A\",\n \"18A\",\n - \ \"R\",\n \"E\",\n \"\"\n ]\n },\n - \ \"mccypRating\": {\n \"description\": \"The video's rating - from the Danish Film Institute's (Det Danske Filminstitut) Media Council for - Children and Young People.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"A\",\n \"7\",\n \"11\",\n - \ \"15\",\n \"\"\n ],\n \"enum\": [\n - \ \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n - \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n - \ ]\n },\n \"russiaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"0+\",\n \"6+\",\n \"12+\",\n - \ \"16+\",\n \"18+\",\n \"\"\n ],\n - \ \"enum\": [\n \"russiaUnspecified\",\n \"russia0\",\n - \ \"russia6\",\n \"russia12\",\n \"russia16\",\n - \ \"russia18\",\n \"russiaUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's National Film Registry - of the Russian Federation (MKRF - Russia) rating.\"\n },\n \"rteRating\": - {\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n - \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"description\": - \"The video's rating from Ireland's Raidi\xF3 Teilif\xEDs \xC9ireann.\"\n - \ },\n \"chfilmRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The video's - rating in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ]\n },\n \"fcbmRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG13\",\n \"P13\",\n \"18\",\n \"18SX\",\n - \ \"18PA\",\n \"18SG\",\n \"18PL\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Malaysia's - Film Censorship Board.\",\n \"enum\": [\n \"fcbmUnspecified\",\n - \ \"fcbmU\",\n \"fcbmPg13\",\n \"fcbmP13\",\n - \ \"fcbm18\",\n \"fcbm18sx\",\n \"fcbm18pa\",\n - \ \"fcbm18sg\",\n \"fcbm18pl\",\n \"fcbmUnrated\"\n - \ ]\n },\n \"pefilmRating\": {\n \"description\": - \"The video's rating in Peru.\",\n \"type\": \"string\",\n \"enum\": - [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n \"pefilmPg\",\n - \ \"pefilm14\",\n \"pefilm18\",\n \"pefilmUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"PT\",\n - \ \"PG\",\n \"14\",\n \"18\",\n \"\"\n - \ ]\n },\n \"cceRating\": {\n \"enum\": [\n - \ \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n - \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n - \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"4\",\n \"6\",\n \"12\",\n \"16\",\n - \ \"18\",\n \"\",\n \"14\"\n ],\n - \ \"type\": \"string\"\n },\n \"bmukkRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Unrestricted\",\n - \ \"6+\",\n \"8+\",\n \"10+\",\n \"12+\",\n - \ \"14+\",\n \"16+\",\n \"\"\n ],\n - \ \"description\": \"The video's rating from the Austrian Board of - Media Classification (Bundesministerium f\xFCr Unterricht, Kunst und Kultur).\",\n - \ \"enum\": [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n - \ \"bmukk6\",\n \"bmukk8\",\n \"bmukk10\",\n - \ \"bmukk12\",\n \"bmukk14\",\n \"bmukk16\",\n - \ \"bmukkUnrated\"\n ]\n },\n \"cbfcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"U/A\",\n \"U/A 7+\",\n \"U/A 13+\",\n - \ \"U/A 16+\",\n \"A\",\n \"S\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Central Board of Film Certification (CBFC - India) rating.\",\n - \ \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n - \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n - \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n - \ \"cbfcUnrated\"\n ]\n },\n \"rcnofRating\": - {\n \"description\": \"The video's rating from the Hungarian Nemzeti - Filmiroda, the Rating Committee of the National Office of Film.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ]\n },\n \"medietilsynetRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n - \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n - \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n - \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ],\n \"description\": \"The video's rating from Medietilsynet, - the Norwegian Media Authority.\"\n },\n \"mtrcbRating\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"R-13\",\n \"R-16\",\n \"R-18\",\n - \ \"X\",\n \"\"\n ],\n \"enum\": [\n - \ \"mtrcbUnspecified\",\n \"mtrcbG\",\n \"mtrcbPg\",\n - \ \"mtrcbR13\",\n \"mtrcbR16\",\n \"mtrcbR18\",\n - \ \"mtrcbX\",\n \"mtrcbUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from the Movie - and Television Review and Classification Board (Philippines).\"\n },\n - \ \"tvpgRating\": {\n \"description\": \"The video's TV Parental - Guidelines (TVPG) rating.\",\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"ilfilmRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n - \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n - \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"description\": - \"The video's rating in Israel.\"\n },\n \"fmocRating\": {\n - \ \"description\": \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\",\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"fmocUnspecified\",\n \"fmocU\",\n - \ \"fmoc10\",\n \"fmoc12\",\n \"fmoc16\",\n - \ \"fmoc18\",\n \"fmocE\",\n \"fmocUnrated\"\n - \ ]\n },\n \"kijkwijzerRating\": {\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\",\n \"enum\": - [\n \"kijkwijzerUnspecified\",\n \"kijkwijzerAl\",\n - \ \"kijkwijzer6\",\n \"kijkwijzer9\",\n \"kijkwijzer12\",\n - \ \"kijkwijzer16\",\n \"kijkwijzer18\",\n \"kijkwijzerUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"6\",\n \"9\",\n \"12\",\n \"16\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"csaRating\": {\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from France's - Conseil sup\xE9rieur de l\u2019audiovisuel, which rates broadcast content.\"\n - \ },\n \"smaisRating\": {\n \"description\": \"The video's - rating in Iceland.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"7\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\"\n - \ ],\n \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ]\n },\n \"mpaatRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GB\",\n \"RB\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The rating system - for trailer, DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\",\n - \ \"enum\": [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n - \ \"mpaatRb\"\n ]\n },\n \"bfvcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"E\",\n \"13\",\n \"15\",\n \"18\",\n - \ \"20\",\n \"B\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ],\n \"description\": - \"The video's rating from Thailand's Board of Film and Video Censors.\"\n - \ },\n \"egfilmRating\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"GN\",\n - \ \"18\",\n \"BN\",\n \"\"\n ],\n - \ \"description\": \"The video's rating in Egypt.\",\n \"enum\": - [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n \"egfilm18\",\n - \ \"egfilmBn\",\n \"egfilmUnrated\"\n ]\n },\n - \ \"cnaRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"AP\",\n \"12\",\n \"15\",\n \"18\",\n - \ \"18+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"cnaUnspecified\",\n \"cnaAp\",\n - \ \"cna12\",\n \"cna15\",\n \"cna18\",\n \"cna18plus\",\n - \ \"cnaUnrated\"\n ],\n \"description\": \"The - video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI (CNA).\"\n - \ },\n \"icaaRating\": {\n \"enum\": [\n \"icaaUnspecified\",\n - \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n - \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n - \ \"icaaX\",\n \"icaaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n - \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales - (ICAA - Spain) rating.\"\n }\n }\n },\n \"LiveChatMemberMilestoneChatDetails\": - {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n \"type\": - \"object\",\n \"properties\": {\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level at which the - viever is a member. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n },\n - \ \"memberMonth\": {\n \"type\": \"integer\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"format\": \"uint32\"\n - \ },\n \"userComment\": {\n \"type\": \"string\",\n - \ \"description\": \"The comment added by the member to this Member - Milestone Chat. This field is empty for messages without a comment from the - member.\"\n }\n }\n },\n \"PlaylistItemStatus\": {\n \"description\": - \"Information about the playlist item's privacy status.\",\n \"properties\": - {\n \"privacyStatus\": {\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"This resource's privacy status.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"PlaylistItemStatus\"\n },\n \"SuperChatEvent\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely - identify the Super Chat event.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"default\": \"youtube#superChatEvent\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"A `__superChatEvent__` resource represents a Super - Chat purchase on a YouTube channel.\",\n \"id\": \"SuperChatEvent\"\n - \ },\n \"I18nRegionSnippet\": {\n \"properties\": {\n \"name\": - {\n \"type\": \"string\",\n \"description\": \"The human-readable - name of the region.\"\n },\n \"gl\": {\n \"type\": - \"string\",\n \"description\": \"The region code as a 2-letter ISO - country code.\"\n }\n },\n \"description\": \"Basic details - about an i18n region, such as region code and human-readable name.\",\n \"id\": - \"I18nRegionSnippet\",\n \"type\": \"object\"\n },\n \"ActivitySnippet\": - {\n \"properties\": {\n \"title\": {\n \"description\": - \"The title of the resource primarily associated with the activity.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel associated with the activity.\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of activity that the resource describes.\",\n - \ \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n - \ \"like\",\n \"favorite\",\n \"comment\",\n - \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n - \ \"bulletin\",\n \"social\",\n \"channelItem\",\n - \ \"promotedItem\"\n ]\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel responsible - for this activity\",\n \"type\": \"string\"\n },\n \"groupId\": - {\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The description of the resource primarily associated - with the activity. @mutable youtube.activities.insert\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the video was uploaded.\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"description\": \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivitySnippet\",\n - \ \"description\": \"Basic details about an activity, including title, - description, thumbnails, activity type and group. Next ID: 12\"\n },\n - \ \"InvideoBranding\": {\n \"properties\": {\n \"targetChannelId\": - {\n \"description\": \"The channel to which this branding links. - If not present it defaults to the current channel.\",\n \"type\": - \"string\"\n },\n \"timing\": {\n \"$ref\": \"InvideoTiming\",\n - \ \"description\": \"The temporal position within the video where - watermark will be displayed.\"\n },\n \"position\": {\n \"$ref\": - \"InvideoPosition\",\n \"description\": \"The spatial position within - the video where the branding watermark will be displayed.\"\n },\n - \ \"imageBytes\": {\n \"description\": \"The bytes the uploaded - image. Only used in api to youtube communication.\",\n \"format\": - \"byte\",\n \"type\": \"string\"\n },\n \"imageUrl\": - {\n \"description\": \"The url of the uploaded image. Only used in - apiary to api communication.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"InvideoBranding\",\n - \ \"description\": \"LINT.IfChange Describes an invideo branding.\"\n - \ },\n \"Cuepoint\": {\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The identifier - for cuepoint resource.\"\n },\n \"walltimeMs\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The wall clock time at which the cuepoint should be inserted. Only one of - insertion_offset_time_ms and walltime_ms may be set at a time.\"\n },\n - \ \"insertionOffsetTimeMs\": {\n \"type\": \"string\",\n \"description\": - \"The time when the cuepoint should be inserted by offset to the broadcast - actual start time.\",\n \"format\": \"int64\"\n },\n \"cueType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ]\n },\n \"etag\": {\n - \ \"type\": \"string\"\n },\n \"durationSecs\": {\n - \ \"type\": \"integer\",\n \"description\": \"The duration - of this cuepoint.\",\n \"format\": \"uint32\"\n }\n },\n - \ \"id\": \"Cuepoint\",\n \"type\": \"object\",\n \"description\": - \"Note that there may be a 5-second end-point resolution issue. For instance, - if a cuepoint comes in for 22:03:27, we may stuff the cuepoint into 22:03:25 - or 22:03:30, depending. This is an artifact of HLS.\"\n },\n \"InvideoPosition\": - {\n \"description\": \"Describes the spatial position of a visual widget - inside a video. It is a union of various position types, out of which only - will be set one.\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"cornerPosition\": {\n \"enum\": [\n \"topLeft\",\n - \ \"topRight\",\n \"bottomLeft\",\n \"bottomRight\"\n - \ ],\n \"description\": \"Describes in which corner of the - video the visual widget will appear.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"type\": - {\n \"description\": \"Defines the position type.\",\n \"enumDescriptions\": - [\n \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"corner\"\n ]\n }\n },\n \"id\": - \"InvideoPosition\"\n },\n \"MembershipsDetails\": {\n \"type\": - \"object\",\n \"id\": \"MembershipsDetails\",\n \"properties\": - {\n \"accessibleLevels\": {\n \"description\": \"Ids of all - levels that the user has access to. This includes the currently active level - and all other levels that are included because of a higher purchase.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"membershipsDuration\": {\n - \ \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\",\n \"$ref\": \"MembershipsDuration\"\n - \ },\n \"membershipsDurationAtLevels\": {\n \"items\": - {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"type\": - \"array\",\n \"description\": \"Data about memberships duration on - particular pricing levels.\"\n },\n \"highestAccessibleLevel\": - {\n \"description\": \"Id of the highest level that the user has - access to at the moment.\",\n \"type\": \"string\"\n },\n - \ \"highestAccessibleLevelDisplayName\": {\n \"type\": \"string\",\n - \ \"description\": \"Display name for the highest level that the user - has access to at the moment.\"\n }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": - {\n \"properties\": {\n \"playlistItemId\": {\n \"type\": - \"string\",\n \"description\": \"ID of the item within the playlist.\"\n - \ },\n \"playlistId\": {\n \"description\": \"The value - that YouTube uses to uniquely identify the playlist.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\",\n \"$ref\": \"ResourceId\"\n }\n },\n - \ \"id\": \"ActivityContentDetailsPlaylistItem\",\n \"type\": \"object\",\n - \ \"description\": \"Information about a new playlist item.\"\n },\n - \ \"VideoCategory\": {\n \"description\": \"A *videoCategory* resource - identifies a category that has been or could be associated with uploaded videos.\",\n - \ \"properties\": {\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the video category.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"default\": \"youtube#videoCategory\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#videoCategory\\\".\"\n },\n - \ \"snippet\": {\n \"$ref\": \"VideoCategorySnippet\",\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\"\n }\n },\n \"id\": \"VideoCategory\",\n \"type\": - \"object\"\n },\n \"CommentThreadSnippet\": {\n \"properties\": - {\n \"isPublic\": {\n \"description\": \"Whether the thread - (and therefore all its comments) is visible to all YouTube users.\",\n \"type\": - \"boolean\"\n },\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the video the comments refer to, if - any. No video_id implies a channel discussion comment.\"\n },\n \"canReply\": - {\n \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"topLevelComment\": {\n \"$ref\": - \"Comment\",\n \"description\": \"The top level comment of this thread.\"\n - \ },\n \"totalReplyCount\": {\n \"description\": \"The - total number of replies (not including the top level comment).\",\n \"type\": - \"integer\",\n \"format\": \"uint32\"\n }\n },\n \"description\": - \"Basic details about a comment thread.\",\n \"type\": \"object\",\n - \ \"id\": \"CommentThreadSnippet\"\n },\n \"PlaylistSnippet\": {\n - \ \"description\": \"Basic details about a playlist, including title, - description and thumbnails.\",\n \"type\": \"object\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"description\": \"The playlist's title.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the playlist's default title - and description.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the playlist was created.\",\n \"type\": \"string\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The playlist's description.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"The channel - title of the channel that the video belongs to.\"\n },\n \"tags\": - {\n \"type\": \"array\",\n \"description\": \"Keyword tags - associated with the playlist.\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"thumbnailVideoId\": {\n \"description\": - \"Note: if the playlist has a custom thumbnail, this field will not be populated. - The video id selected by the user that will be used as the thumbnail of this - playlist. This field defaults to the first publicly viewable video in the - playlist, if: 1. The user has never selected a video to be the thumbnail of - the playlist. 2. The user selects a video to be the thumbnail, and then removes - that video from the playlist. 3. The user selects a non-owned video to be - the thumbnail, but that video becomes private, or gets deleted.\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist. 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.\"\n },\n \"localized\": {\n \"$ref\": \"PlaylistLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the playlist.\"\n }\n },\n \"id\": \"PlaylistSnippet\"\n - \ },\n \"MembershipsLevelSnippet\": {\n \"properties\": {\n \"levelDetails\": - {\n \"$ref\": \"LevelDetails\",\n \"description\": \"Details - about the pricing level.\"\n },\n \"creatorChannelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The id of the - channel that's offering channel memberships.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"MembershipsLevelSnippet\"\n },\n \"ChannelSnippet\": - {\n \"id\": \"ChannelSnippet\",\n \"description\": \"Basic details - about a channel, including title, description and thumbnails.\",\n \"type\": - \"object\",\n \"properties\": {\n \"localized\": {\n \"$ref\": - \"ChannelLocalization\",\n \"description\": \"Localized title and - description, read-only.\"\n },\n \"thumbnails\": {\n \"description\": - \"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. When displaying thumbnails - in your application, make sure that your code uses the image URLs exactly - as they are returned in API responses. For example, your application should - not use the http domain instead of the https domain in a URL returned in an - API response. Beginning in July 2018, channel thumbnail URLs will only be - available in the https domain, which is how the URLs appear in API responses. - After that time, you might see broken images in your application if it tries - to load YouTube images from the http domain. Thumbnail images might be empty - for newly created channels and might take up to one day to populate.\",\n - \ \"$ref\": \"ThumbnailDetails\"\n },\n \"title\": {\n - \ \"description\": \"The channel's title.\",\n \"type\": - \"string\"\n },\n \"country\": {\n \"type\": \"string\",\n - \ \"description\": \"The country of the channel.\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time that the channel was created.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n - \ \"defaultLanguage\": {\n \"description\": \"The language - of the channel's default title and description.\",\n \"type\": \"string\"\n - \ },\n \"customUrl\": {\n \"type\": \"string\",\n \"description\": - \"The custom url of the channel.\"\n },\n \"description\": {\n - \ \"type\": \"string\",\n \"description\": \"The description - of the channel.\"\n }\n }\n },\n \"LiveChatMessageSnippet\": - {\n \"properties\": {\n \"memberMilestoneChatDetails\": {\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\",\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n - \ },\n \"authorChannelId\": {\n \"description\": \"The - ID of the user that authored this message, this field is not always filled. - textMessageEvent - the user that wrote the message fanFundingEvent - the user - that funded the broadcast newSponsorEvent - the user that just became a sponsor - memberMilestoneChatEvent - the member that sent the message membershipGiftingEvent - - the user that made the purchase giftMembershipReceivedEvent - the user that - received the gift membership messageDeletedEvent - the moderator that took - the action messageRetractedEvent - the author that retracted their message - userBannedEvent - the moderator that took the action superChatEvent - the - user that made the purchase superStickerEvent - the user that made the purchase\",\n - \ \"type\": \"string\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"membershipGiftingDetails\": - {\n \"$ref\": \"LiveChatMembershipGiftingDetails\",\n \"description\": - \"Details about the Membership Gifting event, this is only set if the type - is 'membershipGiftingEvent'.\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"displayMessage\": {\n \"type\": \"string\",\n \"description\": - \"Contains a string that can be displayed to the user. If this field is not - present the message is silent, at the moment only messages of type TOMBSTONE - and CHAT_ENDED_EVENT are silent.\"\n },\n \"hasDisplayContent\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the message has display content that should be displayed to users.\"\n },\n - \ \"superStickerDetails\": {\n \"$ref\": \"LiveChatSuperStickerDetails\",\n - \ \"description\": \"Details about the Super Sticker event, this is - only set if the type is 'superStickerEvent'.\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"description\": \"Details about the Gift Membership Received - event, this is only set if the type is 'giftMembershipReceivedEvent'.\",\n - \ \"$ref\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n - \ \"newSponsorDetails\": {\n \"$ref\": \"LiveChatNewSponsorDetails\",\n - \ \"description\": \"Details about the New Member Announcement event, - this is only set if the type is 'newSponsorEvent'. Please note that \\\"member\\\" - is the new term for \\\"sponsor\\\".\"\n },\n \"liveChatId\": - {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ],\n \"description\": \"The type of message, this will - always be present, it determines the contents of the message as well as which - fields will be present.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"superChatDetails\": {\n \"$ref\": \"LiveChatSuperChatDetails\",\n - \ \"description\": \"Details about the Super Chat event, this is only - set if the type is 'superChatEvent'.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the message was orignally - published.\"\n },\n \"messageDeletedDetails\": {\n \"$ref\": - \"LiveChatMessageDeletedDetails\"\n },\n \"fanFundingEventDetails\": - {\n \"$ref\": \"LiveChatFanFundingEventDetails\",\n \"description\": - \"Details about the funding event, this is only set if the type is 'fanFundingEvent'.\"\n - \ },\n \"textMessageDetails\": {\n \"description\": - \"Details about the text message, this is only set if the type is 'textMessageEvent'.\",\n - \ \"$ref\": \"LiveChatTextMessageDetails\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"LiveChatMessageSnippet\",\n \"description\": - \"Next ID: 33\"\n },\n \"ChannelStatistics\": {\n \"properties\": - {\n \"viewCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of times the channel has been viewed.\",\n \"format\": - \"uint64\"\n },\n \"hiddenSubscriberCount\": {\n \"description\": - \"Whether or not the number of subscribers is shown for this user.\",\n \"type\": - \"boolean\"\n },\n \"subscriberCount\": {\n \"format\": - \"uint64\",\n \"description\": \"The number of subscribers that the - channel has.\",\n \"type\": \"string\"\n },\n \"videoCount\": - {\n \"description\": \"The number of videos uploaded to the channel.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"commentCount\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of comments for the channel.\"\n - \ }\n },\n \"id\": \"ChannelStatistics\",\n \"type\": - \"object\",\n \"description\": \"Statistics about a channel: number of - subscribers, number of videos in the channel, etc.\"\n },\n \"CommentListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"default\": \"youtube#commentListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n - \ },\n \"nextPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - comments that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"Comment\"\n }\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"CommentListResponse\"\n - \ },\n \"Video\": {\n \"properties\": {\n \"suggestions\": - {\n \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoSuggestions\"\n },\n \"snippet\": - {\n \"$ref\": \"VideoSnippet\",\n \"description\": \"The - snippet object contains basic details about the video, such as its title, - description, and category.\"\n },\n \"recordingDetails\": {\n - \ \"description\": \"The recordingDetails object encapsulates information - about the location, date and address where the video was recorded.\",\n \"$ref\": - \"VideoRecordingDetails\"\n },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"VideoLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"The localizations object contains - localized versions of the basic details about the video, such as its title - and description.\"\n },\n \"status\": {\n \"description\": - \"The status object contains information about the video's uploading, processing, - and privacy statuses.\",\n \"$ref\": \"VideoStatus\"\n },\n - \ \"monetizationDetails\": {\n \"$ref\": \"VideoMonetizationDetails\",\n - \ \"description\": \"The monetizationDetails object encapsulates information - about the monetization status of the video.\"\n },\n \"contentDetails\": - {\n \"$ref\": \"VideoContentDetails\",\n \"description\": - \"The contentDetails object contains information about the video content, - including the length of the video and its aspect ratio.\"\n },\n \"fileDetails\": - {\n \"$ref\": \"VideoFileDetails\",\n \"description\": \"The - fileDetails object encapsulates information about the video file that was - uploaded to YouTube, including the file's resolution, duration, audio and - video codecs, stream bitrates, and more. This data can only be retrieved by - the video owner.\"\n },\n \"topicDetails\": {\n \"description\": - \"The topicDetails object encapsulates information about Freebase topics associated - with the video.\",\n \"$ref\": \"VideoTopicDetails\"\n },\n - \ \"liveStreamingDetails\": {\n \"$ref\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"The liveStreamingDetails object contains metadata - about a live video broadcast. The object will only be present in a video resource - if the video is an upcoming, live, or completed live broadcast.\"\n },\n - \ \"ageGating\": {\n \"description\": \"Age restriction details - related to a video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoAgeGating\"\n },\n \"processingDetails\": - {\n \"$ref\": \"VideoProcessingDetails\",\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\"\n - \ },\n \"id\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.videos.update\"\n ]\n },\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"statistics\": {\n \"$ref\": \"VideoStatistics\",\n - \ \"description\": \"The statistics object contains statistics about - the video.\"\n },\n \"projectDetails\": {\n \"$ref\": - \"VideoProjectDetails\",\n \"description\": \"The projectDetails - object contains information about the project specific video metadata. b/157517979: - This part was never populated after it was added. However, it sees non-zero - traffic because there is generated client code in the wild that refers to - it [1]. We keep this field and do NOT remove it because otherwise V3 would - return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"kind\": {\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#video\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#video\"\n - \ },\n \"player\": {\n \"$ref\": \"VideoPlayer\",\n - \ \"description\": \"The player object contains information that you - would use to play the video in an embedded player.\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"A *video* resource represents - a YouTube video.\",\n \"id\": \"Video\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"ThirdPartyLink\"\n }\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"I18nRegionListResponse\": {\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#i18nRegionListResponse\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": - \"I18nRegion\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of regions where YouTube is available. In this map, the i18n region - ID is the map key, and its value is the corresponding i18nRegion resource.\"\n - \ }\n },\n \"id\": \"I18nRegionListResponse\",\n \"type\": - \"object\"\n },\n \"ChannelSectionListResponse\": {\n \"id\": \"ChannelSectionListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of ChannelSections that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"ChannelSection\"\n - \ }\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LocalizedProperty\": {\n \"properties\": - {\n \"default\": {\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The - language of the default property.\"\n },\n \"localized\": {\n - \ \"items\": {\n \"$ref\": \"LocalizedString\"\n },\n - \ \"type\": \"array\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LocalizedProperty\"\n },\n \"Subscription\": {\n \"id\": - \"Subscription\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": - \"SubscriptionSnippet\",\n \"description\": \"The snippet object - contains basic details about the subscription, including its title and the - channel that the user subscribed to.\"\n },\n \"subscriberSnippet\": - {\n \"description\": \"The subscriberSnippet object contains basic - details about the subscriber.\",\n \"$ref\": \"SubscriptionSubscriberSnippet\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"SubscriptionContentDetails\",\n - \ \"description\": \"The contentDetails object contains basic statistics - about the subscription.\"\n },\n \"kind\": {\n \"default\": - \"youtube#subscription\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the subscription.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A *subscription* - resource contains information about a YouTube user subscription. A subscription - notifies a user when new videos are added to a channel or when another user - takes one of several actions on YouTube, such as uploading a video, rating - a video, or commenting on a video.\"\n },\n \"CommentThreadReplies\": - {\n \"properties\": {\n \"comments\": {\n \"type\": \"array\",\n - \ \"description\": \"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.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n }\n }\n },\n \"type\": - \"object\",\n \"description\": \"Comments written in (direct or indirect) - reply to the top level comment.\",\n \"id\": \"CommentThreadReplies\"\n - \ },\n \"I18nLanguage\": {\n \"description\": \"An *i18nLanguage* - resource identifies a UI language currently supported by YouTube.\",\n \"properties\": - {\n \"id\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the i18n language.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the i18n language, such as language code and human-readable name.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#i18nLanguage\\\".\",\n \"default\": - \"youtube#i18nLanguage\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"I18nLanguage\"\n },\n \"SearchResult\": {\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#searchResult\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The id object - contains information that can be used to uniquely identify the resource that - matches the search request.\",\n \"$ref\": \"ResourceId\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"SearchResultSnippet\",\n \"description\": \"The snippet object - contains basic details about a search result, such as its title or description. - For example, if the search result is a video, then the title will be the video's - title and the description will be the video's description.\"\n }\n - \ },\n \"description\": \"A search result contains information about - a YouTube video, channel, or playlist that matches the search parameters specified - in an API request. While a search result points to a uniquely identifiable - resource, like a video, it does not have its own persistent data.\",\n \"id\": - \"SearchResult\",\n \"type\": \"object\"\n },\n \"VideoContentDetails\": - {\n \"id\": \"VideoContentDetails\",\n \"description\": \"Details - about the content of a YouTube Video.\",\n \"type\": \"object\",\n \"properties\": - {\n \"duration\": {\n \"type\": \"string\",\n \"description\": - \"The length of the video. The tag value is an ISO 8601 duration in the format - PT#M#S, in which the letters PT indicate that the value specifies a period - of time, and the letters M and S refer to length in minutes and seconds, respectively. - The # characters preceding the M and S letters are both integers that specify - the number of minutes (or seconds) of the video. For example, a value of PT15M51S - indicates that the video is 15 minutes and 51 seconds long.\"\n },\n - \ \"contentRating\": {\n \"$ref\": \"ContentRating\",\n \"description\": - \"Specifies the ratings that the video received under various rating schemes.\"\n - \ },\n \"countryRestriction\": {\n \"description\": - \"The countryRestriction object contains information about the countries where - a video is (or is not) viewable.\",\n \"$ref\": \"AccessPolicy\"\n - \ },\n \"projection\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"description\": \"Specifies the projection format - of the video.\"\n },\n \"caption\": {\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"true\",\n \"false\"\n ],\n - \ \"description\": \"The value of captions indicates whether the video - has captions or not.\"\n },\n \"hasCustomThumbnail\": {\n \"description\": - \"Indicates whether the video uploader has provided a custom thumbnail image - for the video. This property is only visible to the video uploader.\",\n \"type\": - \"boolean\"\n },\n \"definition\": {\n \"enum\": [\n - \ \"sd\",\n \"hd\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"sd\",\n \"hd\"\n - \ ],\n \"description\": \"The value of definition indicates - whether the video is available in high definition or only in standard definition.\"\n - \ },\n \"regionRestriction\": {\n \"$ref\": \"VideoContentDetailsRegionRestriction\",\n - \ \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\"\n },\n \"licensedContent\": - {\n \"type\": \"boolean\",\n \"description\": \"The value - of is_license_content indicates whether the video is licensed content.\"\n - \ },\n \"dimension\": {\n \"type\": \"string\",\n \"description\": - \"The value of dimension indicates whether the video is available in 3D or - in 2D.\"\n }\n }\n },\n \"LiveStreamContentDetails\": {\n - \ \"type\": \"object\",\n \"description\": \"Detailed settings of - a stream.\",\n \"properties\": {\n \"isReusable\": {\n \"description\": - \"Indicates whether the stream is reusable, which means that it can be bound - to multiple broadcasts. It is common for broadcasters to reuse the same stream - for many different broadcasts if those broadcasts occur at different times. - If you set this value to false, then the stream will not be reusable, which - means that it can only be bound to one broadcast. Non-reusable streams differ - from reusable streams in the following ways: - A non-reusable stream can only - be bound to one broadcast. - A non-reusable stream might be deleted by an - automated process after the broadcast ends. - The liveStreams.list method - does not list non-reusable streams if you call the method and set the mine - parameter to true. The only way to use that method to retrieve the resource - for a non-reusable stream is to use the id parameter to identify the stream. - \",\n \"type\": \"boolean\"\n },\n \"closedCaptionsIngestionUrl\": - {\n \"type\": \"string\",\n \"description\": \"The ingestion - URL where the closed captions of this stream are sent.\"\n }\n },\n - \ \"id\": \"LiveStreamContentDetails\"\n },\n \"VideoLiveStreamingDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"activeLiveChatId\": - {\n \"description\": \"The ID of the currently active live chat attached - to this video. This field is filled only if the video is a currently live - broadcast that has live chat. Once the broadcast transitions to complete this - field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\",\n \"type\": \"string\"\n - \ },\n \"scheduledEndTime\": {\n \"description\": \"The - time that the broadcast is scheduled to end. If the value is empty or the - property is not present, then the broadcast is scheduled to contiue indefinitely.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"actualEndTime\": {\n \"type\": \"string\",\n \"description\": - \"The time that the broadcast actually ended. This value will not be available - until the broadcast is over.\",\n \"format\": \"date-time\"\n },\n - \ \"concurrentViewers\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\"\n },\n \"scheduledStartTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The time that the broadcast is - scheduled to begin.\",\n \"type\": \"string\"\n },\n \"actualStartTime\": - {\n \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Details about the live streaming metadata.\",\n \"id\": \"VideoLiveStreamingDetails\"\n - \ },\n \"LiveChatSuperChatDetails\": {\n \"id\": \"LiveChatSuperChatDetails\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"currency\": - {\n \"description\": \"The currency in which the purchase was made.\",\n - \ \"type\": \"string\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this Super Chat event.\",\n \"type\": - \"string\"\n },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"tier\": {\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\"\n },\n \"amountMicros\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The amount purchased by the user, in micros (1,750,000 micros = 1.75).\"\n - \ }\n }\n },\n \"ChannelContentOwnerDetails\": {\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"id\": \"ChannelContentOwnerDetails\",\n - \ \"properties\": {\n \"contentOwner\": {\n \"description\": - \"The ID of the content owner linked to the channel.\",\n \"type\": - \"string\"\n },\n \"timeLinked\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time when the channel was linked to the content owner.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": - {\n \"type\": \"object\",\n \"properties\": {\n \"lifeCycleStatus\": - {\n \"type\": \"string\",\n \"description\": \"The broadcast's - status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"enumDescriptions\": [\n \"No value or the - value is unknown.\",\n \"Incomplete settings, but otherwise valid\",\n - \ \"Complete settings\",\n \"Visible only to partner, - may need special UI treatment\",\n \"Viper is recording; this means - the \\\"clock\\\" is running\",\n \"The broadcast is finished.\",\n - \ \"This broadcast was removed by admin action\",\n \"Transition - into TESTING has been requested\",\n \"Transition into LIVE has - been requested\"\n ],\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ]\n - \ },\n \"recordingStatus\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"description\": \"The broadcast's recording status.\",\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"The recording has not yet been started.\",\n \"The - recording is currently on.\",\n \"The recording is completed, and - cannot be started again.\"\n ]\n },\n \"liveBroadcastPriority\": - {\n \"description\": \"Priority of the live broadcast event (internal - state).\",\n \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Low priority broadcast: for low view count HoAs or other low - priority broadcasts.\",\n \"Normal priority broadcast: for regular - HoAs and broadcasts.\",\n \"High priority broadcast: for high profile - HoAs, like PixelCorp ones.\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"This field - will be set to True if the creator declares the broadcast to be kids only: - go/live-cw-work.\"\n },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"description\": \"The broadcast's privacy status. Note that the - broadcast represents exactly one YouTube video, so the privacy settings are - identical to those supported for videos. In addition, you can set this field - by modifying the broadcast resource or by setting the privacyStatus field - of the corresponding video resource.\"\n },\n \"madeForKids\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - the broadcast is made for kids or not, decided by YouTube instead of the creator. - This field is read only.\"\n }\n },\n \"id\": \"LiveBroadcastStatus\",\n - \ \"description\": \"Live broadcast state.\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageAuthorDetails\",\n - \ \"properties\": {\n \"isChatOwner\": {\n \"description\": - \"Whether the author is the owner of the live chat.\",\n \"type\": - \"boolean\"\n },\n \"isChatModerator\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the author is a moderator - of the live chat.\"\n },\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The channel's display name.\"\n - \ },\n \"channelId\": {\n \"description\": \"The YouTube - channel ID.\",\n \"type\": \"string\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"channelUrl\": {\n \"type\": - \"string\",\n \"description\": \"The channel's URL.\"\n },\n - \ \"isChatSponsor\": {\n \"description\": \"Whether the author - is a sponsor of the live chat.\",\n \"type\": \"boolean\"\n },\n - \ \"isVerified\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the author's identity has been verified by YouTube.\"\n }\n - \ }\n },\n \"RelatedEntity\": {\n \"properties\": {\n \"entity\": - {\n \"$ref\": \"Entity\"\n }\n },\n \"id\": \"RelatedEntity\",\n - \ \"type\": \"object\"\n },\n \"VideoSuggestions\": {\n \"id\": - \"VideoSuggestions\",\n \"description\": \"Specifies suggestions on how - to improve video content, including encoding hints, tag suggestions, and editor - suggestions.\",\n \"type\": \"object\",\n \"properties\": {\n \"processingErrors\": - {\n \"items\": {\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ],\n \"enumDescriptions\": [\n \"File - contains audio only (e.g., an MP3 file).\",\n \"Image file (e.g., - a JPEG image).\",\n \"Movie project file (e.g., Microsoft Windows - Movie Maker project).\",\n \"Other non-video file.\",\n \"Document - or text file (e.g., MS Word document).\",\n \"An archive file - (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout - type.\"\n ],\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of errors - that will prevent YouTube from successfully processing the uploaded video - video. These errors indicate that, regardless of the video's current processing - status, eventually, that status will almost certainly be failed.\"\n },\n - \ \"processingWarnings\": {\n \"items\": {\n \"enum\": - [\n \"unknownContainer\",\n \"unknownVideoCodec\",\n - \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n - \ \"hasEditlist\",\n \"problematicVideoCodec\",\n - \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n - \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n - \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ]\n },\n \"description\": \"A list of reasons - why YouTube may have difficulty transcoding the uploaded video or that might - result in an erroneous transcoding. These warnings are generated before YouTube - actually processes the uploaded video file. In addition, they identify issues - that are unlikely to cause the video processing to fail but that might cause - problems such as sync issues, video artifacts, or a missing audio track.\",\n - \ \"type\": \"array\"\n },\n \"editorSuggestions\": - {\n \"items\": {\n \"type\": \"string\",\n \"enum\": - [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n - \ \"enumDescriptions\": [\n \"Picture brightness levels - seem off and could be corrected.\",\n \"The video appears shaky - and could be stabilized.\",\n \"Margins (mattes) detected around - the picture could be cropped.\",\n \"The audio track appears - silent and could be swapped with a better quality one.\"\n ]\n - \ },\n \"description\": \"A list of video editing operations - that might improve the video quality or playback experience of the uploaded - video.\",\n \"type\": \"array\"\n },\n \"processingHints\": - {\n \"description\": \"A list of suggestions that may improve YouTube's - ability to process the video.\",\n \"items\": {\n \"enumDescriptions\": - [\n \"The MP4 file is not streamable, this will slow down the - processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably - a better quality version of the video exists. The video has wide screen aspect - ratio, but is not an HD video.\",\n \"Uploaded video is spherical - video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded - video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n - \ \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"tagSuggestions\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"VideoSuggestionsTagSuggestion\"\n },\n \"description\": - \"A list of keyword tags that could be added to the video's metadata to increase - the likelihood that users will locate your video when searching or browsing - on YouTube.\"\n }\n }\n },\n \"TokenPagination\": {\n \"description\": - \"Stub token pagination template to suppress results.\",\n \"properties\": - {},\n \"type\": \"object\",\n \"id\": \"TokenPagination\"\n },\n - \ \"ChannelSectionLocalization\": {\n \"id\": \"ChannelSectionLocalization\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The localized - strings for channel section's title.\"\n }\n },\n \"description\": - \"ChannelSection localization setting\"\n },\n \"LiveChatSuperStickerDetails\": - {\n \"properties\": {\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made.\",\n \"type\": \"string\"\n - \ },\n \"amountMicros\": {\n \"type\": \"string\",\n - \ \"description\": \"The amount purchased by the user, in micros (1,750,000 - micros = 1.75).\",\n \"format\": \"uint64\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"tier\": {\n \"type\": \"integer\",\n \"description\": - \"The tier in which the amount belongs. Lower amounts belong to lower tiers. - The lowest tier is 1.\",\n \"format\": \"uint32\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n }\n },\n \"id\": - \"LiveChatSuperStickerDetails\",\n \"type\": \"object\"\n },\n \"LiveStream\": - {\n \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the stream.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n - \ \"default\": \"youtube#liveStream\",\n \"type\": \"string\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - content_details object contains information about the stream, including the - closed captions ingestion URL.\",\n \"$ref\": \"LiveStreamContentDetails\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about live stream's status.\",\n \"$ref\": - \"LiveStreamStatus\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n - \ },\n \"cdn\": {\n \"description\": \"The cdn object - defines the live stream's content delivery network (CDN) settings. These settings - provide details about the manner in which you stream your content to YouTube.\",\n - \ \"$ref\": \"CdnSettings\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"A live stream describes a live ingestion - point.\",\n \"id\": \"LiveStream\"\n },\n \"CaptionSnippet\": {\n - \ \"description\": \"Basic details about a caption track, such as its - language and name.\",\n \"properties\": {\n \"isEasyReader\": - {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"isLarge\": {\n \"description\": \"Indicates - whether the caption track uses large text for the vision-impaired. The default - value is false.\",\n \"type\": \"boolean\"\n },\n \"isCC\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the track contains closed captions for the deaf and hard of hearing. - The default value is false.\"\n },\n \"name\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The name of the - caption track. The name is intended to be visible to the user as an option - during playback.\"\n },\n \"language\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The language of - the caption track. The property value is a BCP-47 language tag.\"\n },\n - \ \"lastUpdated\": {\n \"description\": \"The date and time - when the caption track was last updated.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"status\": {\n \"type\": - \"string\",\n \"enum\": [\n \"serving\",\n \"syncing\",\n - \ \"failed\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\"\n ],\n \"description\": - \"The caption track's status.\"\n },\n \"trackKind\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The caption track's type.\",\n \"type\": - \"string\",\n \"enum\": [\n \"standard\",\n \"ASR\",\n - \ \"forced\"\n ]\n },\n \"audioTrackType\": - {\n \"type\": \"string\",\n \"description\": \"The type - of audio track associated with the caption track.\",\n \"enum\": - [\n \"unknown\",\n \"primary\",\n \"commentary\",\n - \ \"descriptive\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"isAutoSynced\": {\n \"description\": - \"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.\",\n \"type\": \"boolean\"\n },\n \"isDraft\": - {\n \"description\": \"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. @mutable youtube.captions.insert youtube.captions.update\",\n - \ \"type\": \"boolean\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video associated with the caption track. @mutable - youtube.captions.insert\"\n },\n \"failureReason\": {\n \"enum\": - [\n \"unknownFormat\",\n \"unsupportedFormat\",\n \"processingFailed\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The reason that YouTube failed to process the - caption track. This property is only present if the state property's value - is failed.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"CaptionSnippet\"\n },\n \"ThirdPartyLink\": {\n \"properties\": - {\n \"linkingToken\": {\n \"description\": \"The linking_token - identifies a YouTube account and channel with which the third party account - is linked.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"$ref\": \"ThirdPartyLinkSnippet\",\n \"description\": - \"The snippet object contains basic details about the third- party account - link.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#thirdPartyLink\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains information about the status of the link.\",\n \"$ref\": - \"ThirdPartyLinkStatus\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A *third party - account link* resource represents a link between a YouTube account or a channel - and an account on a third-party service.\",\n \"id\": \"ThirdPartyLink\"\n - \ },\n \"LiveBroadcastContentDetails\": {\n \"type\": \"object\",\n - \ \"description\": \"Detailed settings of a broadcast.\",\n \"id\": - \"LiveBroadcastContentDetails\",\n \"properties\": {\n \"startWithSlate\": - {\n \"description\": \"This setting indicates whether the broadcast - should automatically begin with an in-stream slate when you update the broadcast's - status to live. After updating the status, you then need to send a liveCuepoints.insert - request that sets the cuepoint's eventState to end to remove the in-stream - slate and make your broadcast stream visible to viewers.\",\n \"type\": - \"boolean\"\n },\n \"latencyPreference\": {\n \"type\": - \"string\",\n \"enum\": [\n \"latencyPreferenceUnspecified\",\n - \ \"normal\",\n \"low\",\n \"ultraLow\"\n - \ ],\n \"description\": \"If both this and enable_low_latency - are set, they must match. LATENCY_NORMAL should match enable_low_latency=false - LATENCY_LOW should match enable_low_latency=true LATENCY_ULTRA_LOW should - have enable_low_latency omitted.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Best for: highest quality viewer playbacks and higher resolutions.\",\n - \ \"Best for: near real-time interaction, with minimal playback - buffering.\",\n \"Best for: real-time interaction Does not support: - Closed captions, 1440p, and 4k resolutions\"\n ]\n },\n \"recordFromStart\": - {\n \"type\": \"boolean\",\n \"description\": \"Automatically - start recording after the event goes live. The default value for this property - is true. *Important:* You must also set the enableDvr property's value to - true if you want the playback to be available immediately after the broadcast - ends. If you set this property's value to true but do not also set the enableDvr - property to true, there may be a delay of around one day before the archived - video will be available for playback.\"\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the live stream referenced by boundStreamId was last updated.\",\n - \ \"type\": \"string\"\n },\n \"enableDvr\": {\n \"description\": - \"This setting determines whether viewers can access DVR controls while watching - the video. DVR controls enable the viewer to control the video playback experience - by pausing, rewinding, or fast forwarding content. The default value for this - property is true. *Important:* You must set the value to true and also set - the enableArchive property's value to true if you want to make playback available - immediately after the broadcast ends.\",\n \"type\": \"boolean\"\n - \ },\n \"boundStreamId\": {\n \"type\": \"string\",\n - \ \"description\": \"This value uniquely identifies the live stream - bound to the broadcast.\"\n },\n \"enableLowLatency\": {\n \"type\": - \"boolean\",\n \"description\": \"Indicates whether this broadcast - has low latency enabled.\"\n },\n \"projection\": {\n \"enum\": - [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ],\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ]\n },\n - \ \"stereoLayout\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The 3D stereo layout of this broadcast. This - defaults to mono.\"\n },\n \"monitorStream\": {\n \"$ref\": - \"MonitorStreamInfo\",\n \"description\": \"The monitorStream object - contains information about the monitor stream, which the broadcaster can use - to review the event content before the broadcast stream is shown publicly.\"\n - \ },\n \"enableClosedCaptions\": {\n \"description\": - \"This setting indicates whether HTTP POST closed captioning is enabled for - this broadcast. The ingestion URL of the closed captions is returned through - the liveStreams API. This is mutually exclusive with using the closed_captions_type - property, and is equivalent to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n - \ \"type\": \"boolean\"\n },\n \"enableAutoStart\": - {\n \"description\": \"This setting indicates whether auto start - is enabled for this broadcast. The default value for this property is false. - This setting can only be used by Events.\",\n \"type\": \"boolean\"\n - \ },\n \"enableContentEncryption\": {\n \"description\": - \"This setting indicates whether YouTube should enable content encryption - for the broadcast.\",\n \"type\": \"boolean\"\n },\n \"enableEmbed\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether the broadcast video can be played in an embedded player. - If you choose to archive the video (using the enableArchive property), this - setting will also apply to the archived video.\"\n },\n \"enableAutoStop\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto stop is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"mesh\": {\n \"type\": \"string\",\n \"format\": - \"byte\",\n \"description\": \"The mesh for projecting the video - if projection is mesh. The mesh value must be a UTF-8 string containing the - base-64 encoding of 3D mesh data that follows the Spherical Video V2 RFC specification - for an mshp box, excluding the box size and type but including the following - four reserved zero bytes for the version and flags.\"\n },\n \"closedCaptionsType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ]\n }\n }\n },\n \"ChannelTopicDetails\": {\n - \ \"type\": \"object\",\n \"id\": \"ChannelTopicDetails\",\n \"properties\": - {\n \"topicIds\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of Freebase topic IDs associated with the channel. You can retrieve - information about each topic using the Freebase Topic API.\"\n },\n - \ \"topicCategories\": {\n \"description\": \"A list of Wikipedia - URLs that describe the channel's content.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n }\n },\n - \ \"description\": \"Freebase topic information related to the channel.\"\n - \ },\n \"VideoListResponse\": {\n \"properties\": {\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Video\"\n }\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"VideoListResponse\",\n - \ \"type\": \"object\"\n },\n \"PlaylistStatus\": {\n \"type\": - \"object\",\n \"properties\": {\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"description\": \"The playlist's privacy status.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n },\n \"id\": - \"PlaylistStatus\"\n },\n \"ActivityContentDetailsFavorite\": {\n \"id\": - \"ActivityContentDetailsFavorite\",\n \"description\": \"Information - about a video that was marked as a favorite video.\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LocalizedString\": {\n \"id\": \"LocalizedString\",\n \"properties\": - {\n \"value\": {\n \"type\": \"string\"\n },\n \"language\": - {\n \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"PropertyValue\": {\n \"id\": \"PropertyValue\",\n \"properties\": - {\n \"property\": {\n \"description\": \"A property.\",\n - \ \"type\": \"string\"\n },\n \"value\": {\n \"type\": - \"string\",\n \"description\": \"The property's value.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"A pair Property - / Value.\"\n },\n \"SearchListResponse\": {\n \"properties\": {\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"regionCode\": - {\n \"type\": \"string\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"SearchResult\"\n - \ },\n \"description\": \"Pagination information for token - pagination.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"visitorId\": {\n - \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#searchListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#searchListResponse\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"SearchListResponse\",\n \"type\": - \"object\"\n },\n \"ActivityContentDetailsChannelItem\": {\n \"description\": - \"Details about a resource which was added to a channel.\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was added to the channel.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ActivityContentDetailsChannelItem\"\n },\n \"VideoCategoryListResponse\": - {\n \"properties\": {\n \"items\": {\n \"items\": {\n - \ \"$ref\": \"VideoCategory\"\n },\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\",\n \"type\": \"array\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#videoCategoryListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoCategoryListResponse\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n }\n - \ },\n \"id\": \"VideoCategoryListResponse\",\n \"type\": \"object\"\n - \ },\n \"ChannelLocalization\": {\n \"id\": \"ChannelLocalization\",\n - \ \"description\": \"Channel localization setting\",\n \"properties\": - {\n \"description\": {\n \"description\": \"The localized - strings for channel's description.\",\n \"type\": \"string\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for channel's title.\"\n }\n },\n \"type\": - \"object\"\n },\n \"CommentThread\": {\n \"description\": \"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.\",\n \"type\": \"object\",\n \"properties\": {\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#commentThread\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThread\\\".\",\n \"type\": \"string\"\n - \ },\n \"replies\": {\n \"description\": \"The replies - object contains a limited number of replies (if any) to the top level comment - found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the comment thread.\",\n \"type\": \"string\"\n - \ },\n \"snippet\": {\n \"$ref\": \"CommentThreadSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment thread and also the top level comment.\"\n }\n },\n - \ \"id\": \"CommentThread\"\n },\n \"ActivityContentDetailsLike\": - {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the rated resource.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Information about a resource that received - a positive (like) rating.\",\n \"id\": \"ActivityContentDetailsLike\"\n - \ },\n \"PlaylistListResponse\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistListResponse\",\n \"properties\": {\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"items\": {\n \"description\": - \"A list of playlists that match the request criteria\",\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"Playlist\"\n }\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlistListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n }\n },\n \"ActivityContentDetailsSubscription\": - {\n \"type\": \"object\",\n \"description\": \"Information about - a channel that a user subscribed to.\",\n \"id\": \"ActivityContentDetailsSubscription\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource that the user subscribed to.\"\n }\n }\n - \ },\n \"VideoPlayer\": {\n \"properties\": {\n \"embedHtml\": - {\n \"description\": \"An \\u003ciframe\\u003e tag that embeds a - player that will play the video.\",\n \"type\": \"string\"\n },\n - \ \"embedWidth\": {\n \"description\": \"The embed width\",\n - \ \"format\": \"int64\",\n \"type\": \"string\"\n },\n - \ \"embedHeight\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"VideoPlayer\",\n \"description\": \"Player to be used for a video playback.\"\n - \ },\n \"VideoProjectDetails\": {\n \"id\": \"VideoProjectDetails\",\n - \ \"description\": \"DEPRECATED. b/157517979: This part was never populated - after it was added. However, it sees non-zero traffic because there is generated - client code in the wild that refers to it [1]. We keep this field and do NOT - remove it because otherwise V3 would return an error when this part gets requested - [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"type\": \"object\",\n \"properties\": {}\n },\n \"Channel\": - {\n \"properties\": {\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\"\n - \ },\n \"contentOwnerDetails\": {\n \"description\": - \"The contentOwnerDetails object encapsulates channel data that is relevant - for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ChannelContentDetails\",\n - \ \"description\": \"The contentDetails object encapsulates information - about the channel's content.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"auditDetails\": {\n \"description\": \"The auditionDetails - object encapsulates channel data that is relevant for YouTube Partners during - the audition process.\",\n \"$ref\": \"ChannelAuditDetails\"\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel.\",\n \"type\": \"string\"\n },\n - \ \"brandingSettings\": {\n \"$ref\": \"ChannelBrandingSettings\",\n - \ \"description\": \"The brandingSettings object encapsulates information - about the branding of the channel.\"\n },\n \"snippet\": {\n - \ \"$ref\": \"ChannelSnippet\",\n \"description\": \"The - snippet object contains basic details about the channel, such as its title, - description, and thumbnail images.\"\n },\n \"status\": {\n - \ \"description\": \"The status object encapsulates information about - the privacy status of the channel.\",\n \"$ref\": \"ChannelStatus\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#channel\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\"\n - \ },\n \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n - \ \"description\": \"The statistics object encapsulates statistics - for the channel.\"\n },\n \"topicDetails\": {\n \"$ref\": - \"ChannelTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the channel.\"\n - \ },\n \"conversionPings\": {\n \"description\": \"The - conversionPings object encapsulates information about conversion pings that - need to be respected by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Channel\",\n - \ \"description\": \"A *channel* resource contains information about a - YouTube channel.\"\n },\n \"GeoPoint\": {\n \"properties\": {\n - \ \"longitude\": {\n \"type\": \"number\",\n \"description\": - \"Longitude in degrees.\",\n \"format\": \"double\"\n },\n - \ \"altitude\": {\n \"format\": \"double\",\n \"type\": - \"number\",\n \"description\": \"Altitude above the reference ellipsoid, - in meters.\"\n },\n \"latitude\": {\n \"format\": \"double\",\n - \ \"type\": \"number\",\n \"description\": \"Latitude in - degrees.\"\n }\n },\n \"description\": \"Geographical coordinates - of a point, in WGS84.\",\n \"type\": \"object\",\n \"id\": \"GeoPoint\"\n - \ },\n \"MembershipsDuration\": {\n \"type\": \"object\",\n \"properties\": - {\n \"memberTotalDurationMonths\": {\n \"type\": \"integer\",\n - \ \"format\": \"int32\",\n \"description\": \"The cumulative - time the user has been a member across all levels in complete months (the - time is rounded down to the nearest integer).\"\n },\n \"memberSince\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the user became a continuous member across all levels.\"\n }\n - \ },\n \"id\": \"MembershipsDuration\"\n },\n \"LiveChatMessage\": - {\n \"description\": \"A *liveChatMessage* resource represents a chat - message in a YouTube Live Chat.\",\n \"properties\": {\n \"authorDetails\": - {\n \"$ref\": \"LiveChatMessageAuthorDetails\",\n \"description\": - \"The authorDetails object contains basic details about the user that posted - this message.\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatMessage\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - assigns to uniquely identify the message.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"id\": \"LiveChatMessage\",\n - \ \"type\": \"object\"\n },\n \"LiveBroadcast\": {\n \"description\": - \"A *liveBroadcast* resource represents an event that will be streamed, via - live video, on YouTube.\",\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the broadcast.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"type\": \"string\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#liveBroadcast\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"LiveBroadcastContentDetails\",\n - \ \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the event, including its title, description, start time, and end time.\",\n - \ \"$ref\": \"LiveBroadcastSnippet\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the event's status.\",\n \"$ref\": \"LiveBroadcastStatus\"\n },\n - \ \"statistics\": {\n \"$ref\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"The statistics object contains info about the - event's current stats. These include concurrent viewers and total chat count. - Statistics can change (in either direction) during the lifetime of an event. - Statistics are only returned while the event is live.\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"id\": \"LiveBroadcast\",\n \"type\": - \"object\"\n },\n \"ThumbnailDetails\": {\n \"id\": \"ThumbnailDetails\",\n - \ \"description\": \"Internal representation of thumbnails for a YouTube - resource.\",\n \"properties\": {\n \"standard\": {\n \"description\": - \"The standard quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ },\n \"maxres\": {\n \"$ref\": \"Thumbnail\",\n \"description\": - \"The maximum resolution quality image for this resource.\"\n },\n - \ \"high\": {\n \"description\": \"The high quality image for - this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n \"medium\": - {\n \"$ref\": \"Thumbnail\",\n \"description\": \"The medium - quality image for this resource.\"\n },\n \"default\": {\n \"description\": - \"The default image for this resource.\",\n \"$ref\": \"Thumbnail\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"LiveChatModeratorListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"items\": - {\n \"type\": \"array\",\n \"description\": \"A list of - moderators that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"LiveChatModerator\"\n }\n },\n \"pageInfo\": {\n - \ \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\",\n \"default\": - \"youtube#liveChatModeratorListResponse\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"LiveChatModeratorListResponse\"\n },\n \"VideoTopicDetails\": {\n - \ \"description\": \"Freebase topic information related to the video.\",\n - \ \"type\": \"object\",\n \"id\": \"VideoTopicDetails\",\n \"properties\": - {\n \"topicIds\": {\n \"description\": \"A list of Freebase - topic IDs that are centrally associated with the video. These are topics that - are centrally featured in the video, and it can be said that the video is - mainly about each of these. You can retrieve information about each topic - using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"relevantTopicIds\": - {\n \"type\": \"array\",\n \"description\": \"Similar to - topic_id, except that these topics are merely relevant to the video. These - are topics that may be mentioned in, or appear in the video. You can retrieve - information about each topic using Freebase Topic API.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicCategories\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of Wikipedia - URLs that provide a high-level description of the video's content.\"\n }\n - \ }\n },\n \"ThirdPartyLinkStatus\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"linkStatus\": {\n \"enum\": [\n - \ \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"id\": \"ThirdPartyLinkStatus\",\n - \ \"description\": \"The third-party link status object contains information - about the status of the link.\"\n },\n \"I18nLanguageListResponse\": - {\n \"id\": \"I18nLanguageListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"description\": - \"A list of supported i18n languages. In this map, the i18n language ID is - the map key, and its value is the corresponding i18nLanguage resource.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"I18nLanguage\"\n }\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\",\n \"type\": - \"string\",\n \"default\": \"youtube#i18nLanguageListResponse\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n }\n },\n \"ChannelBannerResource\": - {\n \"id\": \"ChannelBannerResource\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"etag\": {\n \"type\": \"string\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#channelBannerResource\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n - \ },\n \"url\": {\n \"description\": \"The URL of this - banner image.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\"\n - \ },\n \"ChannelSectionTargeting\": {\n \"properties\": {\n \"regions\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The region the channel section is targeting.\",\n - \ \"type\": \"array\"\n },\n \"languages\": {\n \"description\": - \"The language the channel section is targeting.\",\n \"type\": \"array\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"countries\": {\n \"description\": \"The country the channel - section is targeting.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"id\": - \"ChannelSectionTargeting\",\n \"description\": \"ChannelSection targeting - setting.\",\n \"type\": \"object\"\n },\n \"ChannelConversionPings\": - {\n \"type\": \"object\",\n \"id\": \"ChannelConversionPings\",\n - \ \"properties\": {\n \"pings\": {\n \"items\": {\n \"$ref\": - \"ChannelConversionPing\"\n },\n \"description\": \"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.\",\n \"type\": \"array\"\n }\n },\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\"\n },\n \"VideoLocalization\": - {\n \"type\": \"object\",\n \"id\": \"VideoLocalization\",\n \"description\": - \"Localized versions of certain video properties (e.g. title).\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"Localized version of the video's title.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"Localized - version of the video's description.\"\n }\n }\n },\n \"IngestionInfo\": - {\n \"id\": \"IngestionInfo\",\n \"properties\": {\n \"ingestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"The primary - ingestion URL that you should use to stream video to YouTube. You must stream - video to this URL. Depending on which application or tool you use to encode - your video stream, you may need to enter the stream URL and stream name separately - or you may need to concatenate them in the following format: *STREAM_URL/STREAM_NAME* - \"\n },\n \"rtmpsBackupIngestionAddress\": {\n \"type\": - \"string\",\n \"description\": \"This ingestion url may be used instead - of backupIngestionAddress in order to stream via RTMPS. Not applicable to - non-RTMP streams.\"\n },\n \"streamName\": {\n \"type\": - \"string\",\n \"description\": \"The stream name that YouTube assigns - to the video stream.\"\n },\n \"backupIngestionAddress\": {\n - \ \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\",\n - \ \"type\": \"string\"\n },\n \"rtmpsIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Describes information necessary for - ingesting an RTMP, HTTP, or SRT stream.\"\n },\n \"VideoAbuseReportSecondaryReason\": - {\n \"id\": \"VideoAbuseReportSecondaryReason\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of this abuse report secondary reason.\"\n - \ },\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label for this abuse report secondary reason.\"\n }\n - \ }\n },\n \"CdnSettings\": {\n \"properties\": {\n \"resolution\": - {\n \"type\": \"string\",\n \"description\": \"The resolution - of the inbound video data.\",\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"ingestionInfo\": - {\n \"description\": \"The ingestionInfo object contains information - that YouTube provides that you need to transmit your RTMP or HTTP stream to - YouTube.\",\n \"$ref\": \"IngestionInfo\"\n },\n \"ingestionType\": - {\n \"description\": \" The method or protocol used to transmit the - video stream.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"rtmp\",\n \"dash\",\n \"webrtc\",\n \"hls\"\n - \ ],\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"format\": {\n \"type\": \"string\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"description\": \"The format of the video stream that you are sending - to Youtube. \"\n },\n \"frameRate\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ],\n \"description\": - \"The frame rate of the inbound video data.\"\n }\n },\n \"description\": - \"Brief description of the live stream cdn settings.\",\n \"type\": \"object\",\n - \ \"id\": \"CdnSettings\"\n },\n \"VideoAbuseReportReason\": {\n - \ \"description\": \"A `__videoAbuseReportReason__` resource identifies - a reason that a video could be reported as abusive. Video abuse report reasons - are used with `video.ReportAbuse`.\",\n \"type\": \"object\",\n \"id\": - \"VideoAbuseReportReason\",\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\",\n \"description\": \"The ID of this - abuse report reason.\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the abuse report reason.\",\n \"$ref\": - \"VideoAbuseReportReasonSnippet\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#videoAbuseReportReason\"\n - \ }\n }\n },\n \"LiveStreamStatus\": {\n \"type\": \"object\",\n - \ \"id\": \"LiveStreamStatus\",\n \"properties\": {\n \"streamStatus\": - {\n \"enum\": [\n \"created\",\n \"ready\",\n - \ \"active\",\n \"inactive\",\n \"error\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"healthStatus\": {\n \"$ref\": - \"LiveStreamHealthStatus\",\n \"description\": \"The health status - of the stream.\"\n }\n },\n \"description\": \"Brief description - of the live stream status.\"\n },\n \"ChannelBrandingSettings\": {\n - \ \"id\": \"ChannelBrandingSettings\",\n \"type\": \"object\",\n - \ \"description\": \"Branding properties of a YouTube channel.\",\n \"properties\": - {\n \"channel\": {\n \"description\": \"Branding properties - for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n },\n - \ \"watch\": {\n \"description\": \"Branding properties for - the watch page.\",\n \"$ref\": \"WatchSettings\"\n },\n \"hints\": - {\n \"description\": \"Additional experimental branding properties.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"PropertyValue\"\n }\n },\n \"image\": {\n \"description\": - \"Branding properties for branding images.\",\n \"$ref\": \"ImageSettings\"\n - \ }\n }\n },\n \"VideoProcessingDetailsProcessingProgress\": - {\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n \"properties\": - {\n \"partsTotal\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"An estimate of the total number - of parts that need to be processed for the video. The number may be updated - with more precise estimates while YouTube processes the video.\"\n },\n - \ \"timeLeftMs\": {\n \"description\": \"An estimate of the - amount of time, in millseconds, that YouTube needs to finish processing the - video.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"partsProcessed\": {\n \"description\": \"The - number of parts of the video that YouTube has already processed. You can estimate - the percentage of the video that YouTube has already processed by calculating: - 100 * parts_processed / parts_total Note that since the estimated number of - parts could increase without a corresponding increase in the number of parts - that have already been processed, it is possible that the calculated progress - could periodically decrease while YouTube processes a video.\",\n \"type\": - \"string\",\n \"format\": \"uint64\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Video processing progress and completion - time estimate.\"\n },\n \"ActivityContentDetailsPromotedItem\": {\n - \ \"id\": \"ActivityContentDetailsPromotedItem\",\n \"type\": \"object\",\n - \ \"description\": \"Details about a resource which is being promoted.\",\n - \ \"properties\": {\n \"videoId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\"\n },\n \"clickTrackingUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should ping to - indicate that the user clicked through on this promoted item.\"\n },\n - \ \"ctaType\": {\n \"description\": \"The type of call-to-action, - a message to the user indicating action that can be taken.\",\n \"enum\": - [\n \"ctaTypeUnspecified\",\n \"visitAdvertiserSite\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"customCtaButtonText\": - {\n \"type\": \"string\",\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\"\n },\n \"adTag\": {\n \"description\": - \"The URL the client should fetch to request a promoted item.\",\n \"type\": - \"string\"\n },\n \"destinationUrl\": {\n \"type\": - \"string\",\n \"description\": \"The URL the client should direct - the user to, if the user chooses to visit the advertiser's website.\"\n },\n - \ \"impressionUrl\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"description\": \"The list of impression - URLs. The client should ping all of these URLs to indicate that the user was - shown this promoted item.\",\n \"type\": \"array\"\n },\n - \ \"descriptionText\": {\n \"type\": \"string\",\n \"description\": - \"The text description to accompany the promoted item.\"\n },\n \"forecastingUrl\": - {\n \"description\": \"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.\",\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\"\n },\n \"creativeViewUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL the - client should ping to indicate that the user was shown this promoted item.\"\n - \ }\n }\n },\n \"CommentThreadListResponse\": {\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"CommentThread\"\n },\n \"description\": - \"A list of comment threads that match the request criteria.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentThreadListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#commentThreadListResponse\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"CommentThreadListResponse\"\n },\n \"LanguageTag\": {\n \"id\": - \"LanguageTag\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcastListResponse\": - {\n \"id\": \"LiveBroadcastListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"description\": - \"A list of broadcasts that match the request criteria.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveBroadcastListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveBroadcastListResponse\\\".\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"ActivityContentDetailsComment\": {\n \"description\": - \"Information about a resource that received a comment.\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource associated with the - comment.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"id\": - \"ActivityContentDetailsComment\",\n \"type\": \"object\"\n },\n \"ChannelProfileDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"profileImageUrl\": - {\n \"description\": \"The channels's avatar URL.\",\n \"type\": - \"string\"\n },\n \"displayName\": {\n \"type\": \"string\",\n - \ \"description\": \"The channel's display name.\"\n },\n \"channelId\": - {\n \"description\": \"The YouTube channel ID.\",\n \"type\": - \"string\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"ChannelProfileDetails\"\n },\n \"PlaylistItemListResponse\": - {\n \"type\": \"object\",\n \"id\": \"PlaylistItemListResponse\",\n - \ \"properties\": {\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"description\": - \"A list of playlist items that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\",\n \"type\": \"string\",\n \"default\": - \"youtube#playlistItemListResponse\"\n },\n \"eventId\": {\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"type\": \"string\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"LiveStreamConfigurationIssue\": {\n \"type\": - \"object\",\n \"id\": \"LiveStreamConfigurationIssue\",\n \"properties\": - {\n \"reason\": {\n \"type\": \"string\",\n \"description\": - \"The short-form reason for this issue.\"\n },\n \"description\": - {\n \"description\": \"The long-form description of the issue and - how to resolve it.\",\n \"type\": \"string\"\n },\n \"severity\": - {\n \"type\": \"string\",\n \"enum\": [\n \"info\",\n - \ \"warning\",\n \"error\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"How severe this issue is to the stream.\"\n },\n - \ \"type\": {\n \"enum\": [\n \"gopSizeOver\",\n - \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n - \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n - \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n - \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n - \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n - \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n - \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n - \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n - \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n - \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n - \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n - \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n - \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The kind of error happening.\"\n }\n }\n },\n \"LiveBroadcastSnippet\": - {\n \"id\": \"LiveBroadcastSnippet\",\n \"description\": \"Basic - broadcast information.\",\n \"properties\": {\n \"liveChatId\": - {\n \"description\": \"The id of the live chat for this broadcast.\",\n - \ \"type\": \"string\"\n },\n \"actualStartTime\": {\n - \ \"description\": \"The date and time that the broadcast actually - started. This information is only available once the broadcast's state is - live.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ },\n \"thumbnails\": {\n \"description\": \"A map - of thumbnail images associated with the broadcast. For each nested object - in this object, the key is the name of the thumbnail image, and the value - is an object that contains other information about the thumbnail.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"title\": {\n \"description\": - \"The broadcast's title. Note that the broadcast represents exactly one YouTube - video. You can set this field by modifying the broadcast resource or by setting - the title field of the corresponding video resource.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"isDefaultBroadcast\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether this broadcast is the default broadcast. Internal only.\"\n },\n - \ \"scheduledEndTime\": {\n \"description\": \"The date and - time that the broadcast is scheduled to end.\",\n \"format\": \"date-time\",\n - \ \"type\": \"string\"\n },\n \"scheduledStartTime\": - {\n \"description\": \"The date and time that the broadcast is scheduled - to start.\",\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"format\": \"date-time\",\n \"type\": - \"string\"\n },\n \"actualEndTime\": {\n \"type\": - \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the broadcast actually ended. This information is - only available once the broadcast's state is complete.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast was added - to YouTube's live broadcast schedule.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that is publishing the broadcast.\"\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The broadcast's description. As with the title, - you can set this field by modifying the broadcast resource or by setting the - description field of the corresponding video resource.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoRating\": {\n \"properties\": - {\n \"rating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is disliked.\"\n - \ ],\n \"description\": \"Rating of a video.\",\n \"type\": - \"string\",\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ]\n },\n \"videoId\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the video.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"Basic details about rating of a video.\",\n \"id\": \"VideoRating\",\n - \ \"type\": \"object\"\n },\n \"VideoRecordingDetails\": {\n \"properties\": - {\n \"recordingDate\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time when the video was recorded.\",\n \"type\": \"string\"\n - \ },\n \"locationDescription\": {\n \"type\": \"string\",\n - \ \"description\": \"The text description of the location where the - video was recorded.\"\n },\n \"location\": {\n \"$ref\": - \"GeoPoint\",\n \"description\": \"The geolocation information associated - with the video.\"\n }\n },\n \"description\": \"Recording - information associated with the video.\",\n \"type\": \"object\",\n \"id\": - \"VideoRecordingDetails\"\n },\n \"MembershipsDurationAtLevel\": {\n - \ \"properties\": {\n \"level\": {\n \"description\": - \"Pricing level ID.\",\n \"type\": \"string\"\n },\n \"memberTotalDurationMonths\": - {\n \"format\": \"int32\",\n \"type\": \"integer\",\n \"description\": - \"The cumulative time the user has been a member for the given level in complete - months (the time is rounded down to the nearest integer).\"\n },\n - \ \"memberSince\": {\n \"description\": \"The date and time - when the user became a continuous member for the given level.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"MembershipsDurationAtLevel\"\n },\n \"LiveChatNewSponsorDetails\": - {\n \"properties\": {\n \"isUpgrade\": {\n \"description\": - \"If the viewer just had upgraded from a lower level. For viewers that were - not members at the time of purchase, this field is false.\",\n \"type\": - \"boolean\"\n },\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level that the viewer - just had joined. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n }\n - \ },\n \"id\": \"LiveChatNewSponsorDetails\",\n \"type\": \"object\"\n - \ },\n \"ChannelToStoreLinkDetails\": {\n \"description\": \"Information - specific to a store on a merchandising platform linked to a YouTube channel.\",\n - \ \"properties\": {\n \"storeUrl\": {\n \"description\": - \"Landing page of the store.\",\n \"type\": \"string\"\n },\n - \ \"merchantId\": {\n \"type\": \"string\",\n \"description\": - \"Google Merchant Center id of the store.\",\n \"format\": \"uint64\"\n - \ },\n \"storeName\": {\n \"type\": \"string\",\n \"description\": - \"Name of the store.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelToStoreLinkDetails\"\n },\n \"LiveChatModeratorSnippet\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatModeratorSnippet\",\n - \ \"properties\": {\n \"moderatorDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - moderator.\"\n },\n \"liveChatId\": {\n \"description\": - \"The ID of the live chat this moderator can act on.\",\n \"type\": - \"string\"\n }\n }\n },\n \"SearchResultSnippet\": {\n \"description\": - \"Basic details about a search result, including title, description and thumbnails - of the item referenced by the search result.\",\n \"properties\": {\n - \ \"channelTitle\": {\n \"description\": \"The title of the - channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"The title of the search result.\",\n \"type\": \"string\"\n },\n - \ \"description\": {\n \"type\": \"string\",\n \"description\": - \"A description of the search result.\"\n },\n \"channelId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"liveBroadcastContent\": - {\n \"description\": \"It indicates if the resource (video or channel) - has upcoming/active live broadcast content. Or it's \\\"none\\\" if there - is not any upcoming/active live broadcasts.\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the search result. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"publishedAt\": {\n \"description\": - \"The creation date and time of the resource that the search result identifies.\",\n - \ \"format\": \"date-time\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"SearchResultSnippet\"\n - \ },\n \"PlaylistItemSnippet\": {\n \"type\": \"object\",\n \"id\": - \"PlaylistItemSnippet\",\n \"properties\": {\n \"description\": - {\n \"description\": \"The item's description.\",\n \"type\": - \"string\"\n },\n \"videoOwnerChannelId\": {\n \"description\": - \"Channel id for the channel this video belongs to.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the item was added to the playlist.\"\n },\n \"playlistId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - thGe playlist that the playlist item is in.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n }\n - \ },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"A map of thumbnail images associated with the - playlist item. 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.\"\n },\n \"position\": {\n \"type\": \"integer\",\n - \ \"description\": \"The order in which the item appears in the playlist. - The value uses a zero-based index, so the first item has a position of 0, - the second item has a position of 1, and so forth.\",\n \"format\": - \"uint32\"\n },\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The id object contains information that can be - used to uniquely identify the resource that is included in the playlist as - the playlist item.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.playlistItems.insert\",\n \"youtube.playlistItems.update\"\n - \ ]\n }\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the user that added the item to the playlist.\"\n },\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel that the playlist item belongs to.\"\n },\n \"videoOwnerChannelTitle\": - {\n \"type\": \"string\",\n \"description\": \"Channel title - for the channel this video belongs to.\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The item's title.\"\n - \ }\n },\n \"description\": \"Basic details about a playlist, - including title, description and thumbnails. Basic details of a YouTube Playlist - item provided by the author. Next ID: 15\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"description\": \"Basic details about a subscription's subscriber - including title, description, channel ID and thumbnails.\",\n \"properties\": - {\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n - \ \"description\": \"Thumbnails for this subscriber.\"\n },\n - \ \"title\": {\n \"description\": \"The title of the subscriber.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The channel ID of the subscriber.\"\n - \ },\n \"description\": {\n \"description\": \"The description - of the subscriber.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\",\n \"id\": \"SubscriptionSubscriberSnippet\"\n - \ },\n \"ChannelContentDetails\": {\n \"properties\": {\n \"relatedPlaylists\": - {\n \"properties\": {\n \"watchLater\": {\n \"type\": - \"string\",\n \"description\": \"The ID of the playlist that - contains the channel\\\"s watch later playlist. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"favorites\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\"\n },\n \"watchHistory\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch history. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"likes\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"uploads\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID of the playlist that contains the - channel\\\"s uploaded videos. Use the videos.insert method to upload new videos - and the videos.delete method to delete previously uploaded videos.\"\n }\n - \ },\n \"type\": \"object\"\n }\n },\n \"description\": - \"Details about the content of a channel.\",\n \"id\": \"ChannelContentDetails\",\n - \ \"type\": \"object\"\n },\n \"ActivityListResponse\": {\n \"properties\": - {\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Activity\"\n }\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"description\": \"Serialized EventId of - the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#activityListResponse\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"ActivityListResponse\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"description\": - \"Information that identifies the recommended resource.\",\n \"type\": - \"object\",\n \"properties\": {\n \"reason\": {\n \"type\": - \"string\",\n \"description\": \"The reason that the resource is - recommended to the user.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ]\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the recommended resource.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"seedResourceId\": {\n \"description\": \"The - seedResourceId object contains information about the resource that caused - the recommendation.\",\n \"$ref\": \"ResourceId\"\n }\n },\n - \ \"id\": \"ActivityContentDetailsRecommendation\"\n },\n \"PlaylistLocalization\": - {\n \"id\": \"PlaylistLocalization\",\n \"description\": \"Playlist - localization setting\",\n \"type\": \"object\",\n \"properties\": - {\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The localized strings for playlist's title.\"\n },\n \"description\": - {\n \"description\": \"The localized strings for playlist's description.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"VideoAgeGating\": - {\n \"properties\": {\n \"videoGameRating\": {\n \"enum\": - [\n \"anyone\",\n \"m15Plus\",\n \"m16Plus\",\n - \ \"m17Plus\"\n ],\n \"description\": \"Video - game rating, if any.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"restricted\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Age-restricted trailers. For redband trailers - and adult-rated video-games. Only users aged 18+ can view the content. The - the field is true the content is restricted to viewers aged 18+. Otherwise - The field won't be present.\"\n },\n \"alcoholContent\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Indicates whether - or not the video has alcoholic beverage content. Only users of legal purchasing - age in a particular country, as identified by ICAP, can view the content.\"\n - \ }\n },\n \"id\": \"VideoAgeGating\",\n \"type\": \"object\"\n - \ },\n \"VideoProcessingDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"thumbnailsAvailability\": {\n \"description\": \"This - value indicates whether thumbnail images have been generated for the video.\",\n - \ \"type\": \"string\"\n },\n \"tagSuggestionsAvailability\": - {\n \"description\": \"This value indicates whether keyword (tag) - suggestions are available for the video. Tags can be added to a video's metadata - to make it easier for other users to find the video. You can retrieve these - suggestions by requesting the suggestions part in your videos.list() request.\",\n - \ \"type\": \"string\"\n },\n \"fileDetailsAvailability\": - {\n \"description\": \"This value indicates whether file details - are available for the uploaded video. You can retrieve a video's file details - by requesting the fileDetails part in your videos.list() request.\",\n \"type\": - \"string\"\n },\n \"processingIssuesAvailability\": {\n \"type\": - \"string\",\n \"description\": \"This value indicates whether the - video processing engine has generated suggestions that might improve YouTube's - ability to process the the video, warnings that explain video processing problems, - or errors that cause video processing problems. You can retrieve these suggestions - by requesting the suggestions part in your videos.list() request.\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether video editing suggestions, which might improve video - quality or the playback experience, are available for the video. You can retrieve - these suggestions by requesting the suggestions part in your videos.list() - request.\",\n \"type\": \"string\"\n },\n \"processingFailureReason\": - {\n \"enum\": [\n \"uploadFailed\",\n \"transcodeFailed\",\n - \ \"streamingFailed\",\n \"other\"\n ],\n \"description\": - \"The reason that YouTube failed to process the video. This property will - only have a value if the processingStatus property's value is failed.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"processingProgress\": {\n \"description\": - \"The processingProgress object contains information about the progress YouTube - has made in processing the video. The values are really only relevant if the - video's processing status is processing.\",\n \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"processingStatus\": {\n \"enum\": [\n \"processing\",\n - \ \"succeeded\",\n \"failed\",\n \"terminated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's processing status. This value indicates - whether YouTube was able to process the video or if the video is still being - processed.\"\n }\n },\n \"id\": \"VideoProcessingDetails\",\n - \ \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\"\n },\n \"Member\": {\n \"type\": - \"object\",\n \"properties\": {\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"default\": \"youtube#member\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the member.\",\n \"$ref\": \"MemberSnippet\"\n }\n },\n - \ \"id\": \"Member\",\n \"description\": \"A *member* resource represents - a member for a YouTube channel. A member provides recurring monetary support - to a creator and receives special benefits.\"\n },\n \"VideoStatistics\": - {\n \"type\": \"object\",\n \"properties\": {\n \"dislikeCount\": - {\n \"description\": \"The number of users who have indicated that - they disliked the video by giving it a negative rating.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"viewCount\": - {\n \"format\": \"uint64\",\n \"description\": \"The number - of times the video has been viewed.\",\n \"type\": \"string\"\n },\n - \ \"likeCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of users who have indicated that they liked the video by giving - it a positive rating.\",\n \"format\": \"uint64\"\n },\n \"favoriteCount\": - {\n \"type\": \"string\",\n \"description\": \"The number - of users who currently have the video marked as a favorite video.\",\n \"format\": - \"uint64\"\n },\n \"commentCount\": {\n \"type\": \"string\",\n - \ \"description\": \"The number of comments for the video.\",\n \"format\": - \"uint64\"\n }\n },\n \"id\": \"VideoStatistics\",\n \"description\": - \"Statistics about the video, such as the number of times the video was viewed - or liked.\"\n },\n \"ResourceId\": {\n \"id\": \"ResourceId\",\n - \ \"type\": \"object\",\n \"description\": \"A resource id is a generic - reference that points to another YouTube resource.\",\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"The type of the API resource.\"\n },\n \"playlistId\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the referred resource, if that resource is a playlist. This property is only - present if the resourceId.kind value is youtube#playlist.\",\n \"type\": - \"string\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the referred resource, if - that resource is a video. This property is only present if the resourceId.kind - value is youtube#video.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the referred resource, if that resource - is a channel. This property is only present if the resourceId.kind value is - youtube#channel.\"\n }\n }\n },\n \"MemberListResponse\": - {\n \"id\": \"MemberListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#memberListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#memberListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Member\"\n },\n \"description\": - \"A list of members that match the request criteria.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n }\n }\n },\n \"ChannelListResponse\": - {\n \"properties\": {\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#channelListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Channel\"\n }\n }\n },\n \"id\": \"ChannelListResponse\",\n - \ \"type\": \"object\"\n },\n \"MembershipsLevel\": {\n \"properties\": - {\n \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\",\n - \ \"default\": \"youtube#membershipsLevel\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"MembershipsLevelSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the level.\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube assigns to uniquely identify the memberships level.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"MembershipsLevel\",\n \"description\": \"A *membershipsLevel* resource - represents an offer made by YouTube creators for their fans. Users can become - members of the channel by joining one of the available levels. They will provide - recurring monetary support and receives special benefits.\"\n },\n \"SuperStickerMetadata\": - {\n \"id\": \"SuperStickerMetadata\",\n \"properties\": {\n \"altTextLanguage\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the alt text is returned.\"\n },\n - \ \"stickerId\": {\n \"description\": \"Unique identifier of - the Super Sticker. This is a shorter form of the alt_text that includes pack - name and a recognizable characteristic of the sticker.\",\n \"type\": - \"string\"\n },\n \"altText\": {\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"SuperChatEventSnippet\": {\n \"id\": - \"SuperChatEventSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"commentText\": {\n \"type\": \"string\",\n \"description\": - \"The text contents of the comment left by the user.\"\n },\n \"amountMicros\": - {\n \"format\": \"uint64\",\n \"description\": \"The purchase - amount, in micros of the purchase currency. e.g., 1 is represented as 1000000.\",\n - \ \"type\": \"string\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\",\n \"type\": - \"string\"\n },\n \"createdAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time when the event occurred.\",\n - \ \"format\": \"date-time\"\n },\n \"superStickerMetadata\": - {\n \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\",\n \"$ref\": - \"SuperStickerMetadata\"\n },\n \"displayString\": {\n \"description\": - \"A rendered string that displays the purchase amount and currency (e.g., - \\\"$1.00\\\"). The string is rendered for the given language.\",\n \"type\": - \"string\"\n },\n \"supporterDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - supporter.\"\n },\n \"messageType\": {\n \"description\": - \"The tier for the paid message, which is based on the amount of money spent - to purchase the message.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"isSuperStickerEvent\": {\n \"description\": - \"True if this event is a Super Sticker event.\",\n \"type\": \"boolean\"\n - \ },\n \"channelId\": {\n \"description\": \"Channel - id where the event occurred.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"VideoCategorySnippet\": {\n \"description\": \"Basic - details about a video category, such as its localized title.\",\n \"type\": - \"object\",\n \"id\": \"VideoCategorySnippet\",\n \"properties\": - {\n \"title\": {\n \"description\": \"The video category's - title.\",\n \"type\": \"string\"\n },\n \"assignable\": - {\n \"type\": \"boolean\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"description\": \"The YouTube - channel that created the video category.\",\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\"\n - \ }\n }\n },\n \"PlaylistContentDetails\": {\n \"type\": - \"object\",\n \"id\": \"PlaylistContentDetails\",\n \"properties\": - {\n \"itemCount\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The number of videos in the playlist.\"\n - \ }\n }\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"id\": \"VideoContentDetailsRegionRestriction\",\n \"properties\": - {\n \"blocked\": {\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"description\": \"A list of region codes that identify - countries where the video is blocked. If this property is present and a country - is not listed in its value, then the video is viewable in that country. If - this property is present and contains an empty list, the video is viewable - in all countries.\",\n \"type\": \"array\"\n },\n \"allowed\": - {\n \"description\": \"A list of region codes that identify countries - where the video is viewable. If this property is present and a country is - not listed in its value, then the video is blocked from appearing in that - country. If this property is present and contains an empty list, the video - is blocked in all countries.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"type\": - \"object\"\n },\n \"SuperChatEventListResponse\": {\n \"id\": \"SuperChatEventListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"items\": - {\n \"description\": \"A list of Super Chat purchases that match - the request criteria.\",\n \"items\": {\n \"$ref\": \"SuperChatEvent\"\n - \ },\n \"type\": \"array\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"kind\": {\n \"default\": \"youtube#superChatEventListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#superChatEventListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"visitorId\": {\n \"description\": \"The visitorId identifies - the visitor.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"VideoAbuseReportReasonListResponse\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"kind\": {\n \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"VideoAbuseReportReason\"\n },\n \"description\": \"A list - of valid abuse reasons that are used with `video.ReportAbuse`.\",\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The `visitorId` identifies the visitor.\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"VideoAbuseReportReasonListResponse\"\n },\n \"ChannelStatus\": {\n - \ \"description\": \"JSON template for the status part of a channel.\",\n - \ \"properties\": {\n \"isLinked\": {\n \"description\": - \"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.\",\n \"type\": - \"boolean\"\n },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"Privacy status - of the channel.\",\n \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ]\n },\n \"longUploadsStatus\": - {\n \"enum\": [\n \"longUploadsUnspecified\",\n \"allowed\",\n - \ \"eligible\",\n \"disallowed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\"\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"madeForKids\": {\n - \ \"type\": \"boolean\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelStatus\"\n },\n \"SubscriptionListResponse\": - {\n \"type\": \"object\",\n \"id\": \"SubscriptionListResponse\",\n - \ \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"prevPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the previous page in the result - set.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"description\": \"A list of subscriptions that match the request - criteria.\",\n \"type\": \"array\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"kind\": {\n \"default\": - \"youtube#subscriptionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ }\n }\n },\n \"LiveChatBan\": {\n \"properties\": - {\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n \"description\": - \"The `snippet` object contains basic details about the ban.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\",\n - \ \"default\": \"youtube#liveChatBan\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveChatBan\",\n \"description\": - \"A `__liveChatBan__` resource represents a ban for a YouTube live chat.\"\n - \ },\n \"VideoMonetizationDetails\": {\n \"properties\": {\n \"access\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - value of access indicates whether the video can be monetized or not.\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"Details about - monetization of a YouTube Video.\",\n \"id\": \"VideoMonetizationDetails\"\n - \ },\n \"VideoSuggestionsTagSuggestion\": {\n \"properties\": {\n - \ \"categoryRestricts\": {\n \"type\": \"array\",\n \"description\": - \"A set of video categories for which the tag is relevant. You can use this - information to display appropriate tag suggestions based on the video category - that the video uploader associates with the video. By default, tag suggestions - are relevant for all categories if there are no restricts defined for the - keyword.\",\n \"items\": {\n \"type\": \"string\"\n }\n - \ },\n \"tag\": {\n \"description\": \"The keyword tag - suggested for the video.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"VideoSuggestionsTagSuggestion\",\n \"type\": \"object\",\n - \ \"description\": \"A single tag suggestion with it's relevance information.\"\n - \ },\n \"ChannelSectionSnippet\": {\n \"id\": \"ChannelSectionSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"localized\": - {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": - \"Localized title, read-only.\"\n },\n \"position\": {\n \"description\": - \"The position of the channel section in the channel.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"style\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"channelsectionStyleUnspecified\",\n - \ \"horizontalRow\",\n \"verticalList\"\n ],\n - \ \"type\": \"string\",\n \"description\": \"The style of - the channel section.\"\n },\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The channel section's title for - multiple_playlists and multiple_channels.\"\n },\n \"type\": - {\n \"enum\": [\n \"channelsectionTypeUndefined\",\n \"singlePlaylist\",\n - \ \"multiplePlaylists\",\n \"popularUploads\",\n \"recentUploads\",\n - \ \"likes\",\n \"allPlaylists\",\n \"likedPlaylists\",\n - \ \"recentPosts\",\n \"recentActivity\",\n \"liveEvents\",\n - \ \"upcomingEvents\",\n \"completedEvents\",\n \"multipleChannels\",\n - \ \"postedVideos\",\n \"postedPlaylists\",\n \"subscriptions\"\n - \ ],\n \"description\": \"The type of the channel section.\",\n - \ \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that published - the channel section.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\",\n \"description\": \"The language - of the channel section's default title and description.\"\n }\n },\n - \ \"description\": \"Basic details about a channel section, including - title, style and position.\"\n },\n \"ActivityContentDetailsBulletin\": - {\n \"type\": \"object\",\n \"properties\": {\n \"resourceId\": - {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId - object contains information that identifies the resource associated with a - bulletin post. @mutable youtube.activities.insert\"\n }\n },\n - \ \"id\": \"ActivityContentDetailsBulletin\",\n \"description\": - \"Details about a channel bulletin post.\"\n },\n \"LiveChatBanSnippet\": - {\n \"properties\": {\n \"type\": {\n \"type\": \"string\",\n - \ \"description\": \"The type of ban.\",\n \"enum\": [\n - \ \"liveChatBanTypeUnspecified\",\n \"permanent\",\n - \ \"temporary\"\n ],\n \"enumDescriptions\": [\n - \ \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ]\n },\n \"bannedUserDetails\": - {\n \"$ref\": \"ChannelProfileDetails\"\n },\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The chat - this ban is pertinent to.\"\n },\n \"banDurationSeconds\": {\n - \ \"type\": \"string\",\n \"description\": \"The duration - of a ban, only filled if the ban has type TEMPORARY.\",\n \"format\": - \"uint64\"\n }\n },\n \"id\": \"LiveChatBanSnippet\",\n \"type\": - \"object\"\n },\n \"LiveChatTextMessageDetails\": {\n \"type\": - \"object\",\n \"properties\": {\n \"messageText\": {\n \"type\": - \"string\",\n \"description\": \"The user's message.\"\n }\n - \ },\n \"id\": \"LiveChatTextMessageDetails\"\n },\n \"LiveStreamListResponse\": - {\n \"id\": \"LiveStreamListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#liveStreamListResponse\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\"\n - \ },\n \"items\": {\n \"items\": {\n \"$ref\": - \"LiveStream\"\n },\n \"description\": \"A list of live - streams that match the request criteria.\",\n \"type\": \"array\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n }\n }\n },\n \"Comment\": {\n - \ \"description\": \"A *comment* represents a single YouTube comment.\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"kind\": {\n - \ \"type\": \"string\",\n \"default\": \"youtube#comment\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#comment\\\".\"\n },\n \"snippet\": - {\n \"$ref\": \"CommentSnippet\",\n \"description\": \"The - snippet object contains basic details about the comment.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the comment.\"\n }\n },\n \"id\": \"Comment\"\n },\n \"Entity\": - {\n \"type\": \"object\",\n \"id\": \"Entity\",\n \"properties\": - {\n \"url\": {\n \"type\": \"string\"\n },\n \"typeId\": - {\n \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\"\n }\n }\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatMembershipGiftingDetails\",\n - \ \"properties\": {\n \"giftMembershipsCount\": {\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"description\": - \"The number of gift memberships purchased by the user.\"\n },\n \"giftMembershipsLevelName\": - {\n \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"AccessPolicy\": - {\n \"type\": \"object\",\n \"properties\": {\n \"exception\": - {\n \"type\": \"array\",\n \"description\": \"A list of - region codes that identify countries where the default policy do not apply.\",\n - \ \"items\": {\n \"type\": \"string\"\n }\n },\n - \ \"allowed\": {\n \"type\": \"boolean\",\n \"description\": - \"The value of allowed indicates whether the access to the policy is allowed - or denied by default.\"\n }\n },\n \"description\": \"Rights - management policy for YouTube resources.\",\n \"id\": \"AccessPolicy\"\n - \ }\n },\n \"revision\": \"20230220\",\n \"ownerName\": \"Google\",\n - \ \"title\": \"YouTube Data API v3\",\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"description\": \"The YouTube Data API v3 is an API that provides access - to YouTube data, such as videos, playlists, and channels.\",\n \"baseUrl\": - \"https://youtube.googleapis.com/\",\n \"auth\": {\n \"oauth2\": {\n \"scopes\": - {\n \"https://www.googleapis.com/auth/youtube.upload\": {\n \"description\": - \"Manage your YouTube videos\"\n },\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.readonly\": {\n \"description\": - \"View your YouTube account\"\n },\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.force-ssl\": - {\n \"description\": \"See, edit, and permanently delete your YouTube - videos, ratings, comments and captions\"\n },\n \"https://www.googleapis.com/auth/youtubepartner\": - {\n \"description\": \"View and manage your assets and associated - content on YouTube\"\n }\n }\n }\n },\n \"resources\": {\n - \ \"channelSections\": {\n \"methods\": {\n \"delete\": {\n - \ \"path\": \"youtube/v3/channelSections\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"id\": - \"youtube.channelSections.delete\"\n },\n \"insert\": {\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"id\": \"youtube.channelSections.insert\",\n \"path\": - \"youtube/v3/channelSections\",\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"ChannelSection\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\"\n },\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"ChannelSectionListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.channelSections.list\",\n - \ \"httpMethod\": \"GET\",\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"description\": - \"Return content in specified language\",\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"description\": \"Return - the ChannelSections with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\"\n },\n - \ \"mine\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Return the ChannelSections - owned by the authenticated user.\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"update\": {\n \"description\": - \"Updates an existing resource.\",\n \"id\": \"youtube.channelSections.update\",\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/channelSections\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n }\n - \ }\n }\n }\n },\n \"liveStreams\": {\n \"methods\": - {\n \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"description\": \"Retrieve the list - of streams associated with the given channel. --\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"path\": \"youtube/v3/liveStreams\",\n \"id\": \"youtube.liveStreams.list\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"description\": \"Return LiveStreams - with the given ids from Stubby or Apiary.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"maxResults\": {\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"maximum\": - \"50\"\n }\n }\n },\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.liveStreams.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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, - content_details, and status.\"\n }\n },\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"request\": - {\n \"$ref\": \"LiveStream\"\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"path\": \"youtube/v3/liveStreams\"\n },\n - \ \"delete\": {\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n \"description\": - \"Deletes an existing stream for the authenticated user.\",\n \"path\": - \"youtube/v3/liveStreams\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.liveStreams.delete\",\n - \ \"httpMethod\": \"DELETE\"\n },\n \"update\": {\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"httpMethod\": \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"LiveStream\"\n },\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"part\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"description\": \"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.\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.liveStreams.update\",\n - \ \"description\": \"Updates an existing stream for the authenticated - user.\",\n \"path\": \"youtube/v3/liveStreams\"\n }\n }\n - \ },\n \"subscriptions\": {\n \"methods\": {\n \"insert\": - {\n \"response\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.insert\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true\n }\n }\n },\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.subscriptions.list\",\n \"parameters\": - {\n \"mySubscribers\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Return - the subscribers of the given channel owner.\"\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"myRecentSubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"description\": \"Return the subscriptions with the given - IDs for Stubby or Apiary.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"order\": - {\n \"default\": \"relevance\",\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"The order of the returned subscriptions\",\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ]\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"channelId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return the subscriptions of the - given channel owner.\"\n },\n \"mine\": {\n \"description\": - \"Flag for returning the subscriptions of the authenticated user.\",\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"forChannelId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\",\n \"type\": \"string\"\n },\n - \ \"maxResults\": {\n \"maximum\": \"50\",\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"location\": - \"query\",\n \"format\": \"uint32\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"SubscriptionListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"path\": \"youtube/v3/subscriptions\",\n \"flatPath\": - \"youtube/v3/subscriptions\"\n },\n \"delete\": {\n \"path\": - \"youtube/v3/subscriptions\",\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n }\n },\n \"flatPath\": \"youtube/v3/subscriptions\",\n - \ \"description\": \"Deletes a resource.\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"search\": {\n \"methods\": - {\n \"list\": {\n \"httpMethod\": \"GET\",\n \"path\": - \"youtube/v3/search\",\n \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"parameters\": {\n \"videoEmbeddable\": - {\n \"enumDescriptions\": [\n \"\",\n \"Return - all videos, embeddable or not.\",\n \"Only retrieve embeddable - videos.\"\n ],\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"location\": - \"query\",\n \"description\": \"Filter on embeddable videos.\",\n - \ \"type\": \"string\"\n },\n \"safeSearch\": - {\n \"enumDescriptions\": [\n \"\",\n \"YouTube - will not filter the search result set.\",\n \"YouTube will - filter some content from search results and, at the least, will filter content - that is restricted in your locale. Based on their content, search results - could be removed from search results or demoted in search results. This is - the default parameter value.\",\n \"YouTube will try to exclude - all restricted content from the search result set. Based on their content, - search results could be removed from search results or demoted in search results.\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"moderate\",\n \"description\": \"Indicates whether the search - results should include restricted content as well as standard content.\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ]\n },\n \"videoCaption\": {\n \"location\": - \"query\",\n \"description\": \"Filter on the presence of captions - on the videos.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter results based on - caption availability.\",\n \"Only include videos that have - captions.\",\n \"Only include videos that do not have captions.\"\n - \ ],\n \"enum\": [\n \"videoCaptionUnspecified\",\n - \ \"any\",\n \"closedCaption\",\n \"none\"\n - \ ]\n },\n \"q\": {\n \"location\": - \"query\",\n \"description\": \"Textual search terms to match.\",\n - \ \"type\": \"string\"\n },\n \"videoDuration\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Filter on the duration of the videos.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter video search results based on their duration. This is the default - value.\",\n \"Only include videos that are less than four minutes - long.\",\n \"Only include videos that are between four and - 20 minutes long (inclusive).\",\n \"Only include videos longer - than 20 minutes.\"\n ],\n \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ]\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on resources belonging to this channelId.\",\n \"type\": - \"string\"\n },\n \"publishedBefore\": {\n \"format\": - \"google-datetime\",\n \"description\": \"Filter on resources - published before this date.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": - true\n },\n \"videoCategoryId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on videos in a specific category.\"\n },\n \"videoDimension\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on 3d videos.\",\n \"enum\": [\n \"any\",\n \"2d\",\n - \ \"3d\"\n ],\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"Include both 3D and - non-3D videos in returned results. This is the default value.\",\n \"Restrict - search results to exclude 3D videos.\",\n \"Restrict search - results to only include 3D videos.\"\n ]\n },\n \"publishedAfter\": - {\n \"format\": \"google-datetime\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Filter on resources published after this date.\"\n },\n \"locationRadius\": - {\n \"description\": \"Filter on distance from the location (specified - above).\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"description\": - \"Restrict results to a particular set of resource types from One Platform.\",\n - \ \"location\": \"query\"\n },\n \"forMine\": - {\n \"description\": \"Search for the private videos of the authenticated - user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"forContentOwner\": {\n \"description\": - \"Search owned by a content owner.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"default\": \"5\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"format\": \"uint32\"\n },\n \"videoSyndicated\": - {\n \"type\": \"string\",\n \"enum\": [\n \"videoSyndicatedUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, syndicated - or not.\",\n \"Only retrieve syndicated videos.\"\n ],\n - \ \"description\": \"Filter on syndicated videos.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"order\": - {\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"type\": \"string\",\n \"default\": - \"relevance\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"location\": - \"query\",\n \"description\": \"Sort order of the results.\"\n - \ },\n \"channelType\": {\n \"location\": - \"query\",\n \"description\": \"Add a filter on the channel search.\",\n - \ \"enum\": [\n \"channelTypeUnspecified\",\n \"any\",\n - \ \"show\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all channels.\",\n \"Only retrieve shows.\"\n ]\n - \ },\n \"relatedToVideoId\": {\n \"description\": - \"Search related to a resource.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"relevanceLanguage\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return results relevant to this language.\"\n - \ },\n \"videoLicense\": {\n \"enumDescriptions\": - [\n \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"description\": \"Filter on the license of the videos.\",\n - \ \"location\": \"query\"\n },\n \"eventType\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n - \ \"description\": \"Filter on the livestream status of the videos.\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"none\",\n - \ \"upcoming\",\n \"live\",\n \"completed\"\n - \ ],\n \"type\": \"string\"\n },\n \"videoType\": - {\n \"description\": \"Filter on videos of a specific type.\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos.\",\n \"Only - retrieve movies.\",\n \"Only retrieve episodes of shows.\"\n - \ ],\n \"type\": \"string\",\n \"enum\": - [\n \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ]\n },\n \"topicId\": - {\n \"location\": \"query\",\n \"description\": - \"Restrict results to a particular topic.\",\n \"type\": \"string\"\n - \ },\n \"location\": {\n \"description\": - \"Filter on location of the video\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"videoDefinition\": - {\n \"type\": \"string\",\n \"description\": \"Filter - on the definition of the videos.\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ]\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Display the content as seen by viewers in - this country.\"\n },\n \"forDeveloper\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Restrict the search to only retrieve videos uploaded using the project id - of the authenticated user.\"\n },\n \"pageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"id\": \"youtube.search.list\",\n - \ \"flatPath\": \"youtube/v3/search\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves a list of search resources\"\n - \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n - \ \"set\": {\n \"description\": \"As this is not an insert - in a strict sense (it supports uploading/setting of a thumbnail for multiple - videos, which doesn't result in creation of a single resource), I use a custom - verb here.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"path\": \"youtube/v3/thumbnails/set\",\n \"id\": - \"youtube.thumbnails.set\",\n \"parameters\": {\n \"videoId\": - {\n \"description\": \"Returns the Thumbnail with the given video - IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n }\n },\n \"flatPath\": - \"youtube/v3/thumbnails/set\",\n \"supportsMediaUpload\": true,\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ }\n },\n \"maxSize\": \"2097152\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"parameterOrder\": [\n \"videoId\"\n - \ ],\n \"httpMethod\": \"POST\"\n }\n }\n },\n - \ \"liveChatBans\": {\n \"methods\": {\n \"insert\": {\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true,\n \"type\": - \"string\"\n }\n },\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"request\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"response\": {\n \"$ref\": \"LiveChatBan\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatBans.insert\",\n \"path\": \"youtube/v3/liveChat/bans\"\n - \ },\n \"delete\": {\n \"description\": \"Deletes a - chat ban.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n - \ \"id\": \"youtube.liveChatBans.delete\",\n \"path\": \"youtube/v3/liveChat/bans\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"members\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"MemberListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Retrieves a list of members that match the request - criteria for a channel.\",\n \"parameters\": {\n \"filterByMemberChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\"\n - \ },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"maximum\": - \"1000\",\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\"\n },\n \"hasAccessToLevel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Filter members in the results set to the - ones that have access to a level.\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"mode\": {\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"type\": - \"string\",\n \"default\": \"all_current\",\n \"location\": - \"query\",\n \"description\": \"Parameter that specifies which - channel members to return.\",\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ]\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies the member resource parts that the API response will include. - Set the parameter value to snippet.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"flatPath\": - \"youtube/v3/members\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/members\",\n - \ \"id\": \"youtube.members.list\"\n }\n }\n },\n \"i18nLanguages\": - {\n \"methods\": {\n \"list\": {\n \"flatPath\": \"youtube/v3/i18nLanguages\",\n - \ \"path\": \"youtube/v3/i18nLanguages\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"I18nLanguageListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.i18nLanguages.list\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"default\": \"en_US\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"The - *part* parameter specifies the i18nLanguage resource properties that the API - response will include. Set the parameter value to snippet.\"\n }\n - \ }\n }\n }\n },\n \"activities\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"required\": true,\n \"type\": - \"string\",\n \"repeated\": true\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"home\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"mine\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"maxResults\": {\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"minimum\": \"0\",\n \"maximum\": \"50\"\n },\n - \ \"regionCode\": {\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"publishedAfter\": {\n \"format\": - \"google-datetime\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"publishedBefore\": {\n \"format\": - \"google-datetime\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"httpMethod\": \"GET\",\n \"id\": - \"youtube.activities.list\",\n \"path\": \"youtube/v3/activities\",\n - \ \"flatPath\": \"youtube/v3/activities\",\n \"response\": - {\n \"$ref\": \"ActivityListResponse\"\n }\n }\n - \ }\n },\n \"liveChatMessages\": {\n \"methods\": {\n \"list\": - {\n \"id\": \"youtube.liveChatMessages.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\",\n \"response\": {\n \"$ref\": - \"LiveChatMessageListResponse\"\n },\n \"parameterOrder\": - [\n \"liveChatId\",\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"maxResults\": {\n \"minimum\": - \"200\",\n \"default\": \"500\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"maximum\": \"2000\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"format\": - \"uint32\"\n },\n \"liveChatId\": {\n \"type\": - \"string\",\n \"required\": true,\n \"description\": - \"The id of the live chat for which comments should be returned.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the liveChatComment resource parts that the - API response will include. Supported values are id and snippet.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"repeated\": true\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"profileImageSize\": {\n \"description\": - \"Specifies the size of the profile image that should be returned for each - user.\",\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"minimum\": - \"16\",\n \"maximum\": \"720\"\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Specifies the localization language in which - the system messages should be returned.\"\n }\n }\n },\n - \ \"delete\": {\n \"description\": \"Deletes a chat message.\",\n - \ \"path\": \"youtube/v3/liveChat/messages\",\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"id\": - \"youtube.liveChatMessages.delete\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"httpMethod\": \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatMessages.insert\",\n \"path\": - \"youtube/v3/liveChat/messages\",\n \"httpMethod\": \"POST\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"response\": - {\n \"$ref\": \"LiveChatMessage\"\n },\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"location\": \"query\"\n - \ }\n }\n }\n }\n },\n \"videoAbuseReportReasons\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n - \ },\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"hl\": {\n \"type\": \"string\",\n \"default\": - \"en-US\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the videoCategory - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"required\": true\n - \ }\n },\n \"id\": \"youtube.videoAbuseReportReasons.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/videoAbuseReportReasons\"\n - \ }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"description\": \"Retrieves a list of all pricing - levels offered by a creator to the fans.\",\n \"response\": {\n \"$ref\": - \"MembershipsLevelListResponse\"\n },\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"type\": - \"string\",\n \"description\": \"The *part* parameter specifies - the membershipsLevel resource parts that the API response will include. Supported - values are id and snippet.\",\n \"required\": true,\n \"location\": - \"query\"\n }\n },\n \"flatPath\": \"youtube/v3/membershipsLevels\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/membershipsLevels\",\n \"id\": - \"youtube.membershipsLevels.list\"\n }\n }\n },\n \"playlistItems\": - {\n \"methods\": {\n \"update\": {\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Updates - an existing resource.\",\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"id\": \"youtube.playlistItems.update\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/playlistItems\",\n \"request\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n }\n },\n - \ \"insert\": {\n \"id\": \"youtube.playlistItems.insert\",\n - \ \"flatPath\": \"youtube/v3/playlistItems\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"part\"\n ]\n - \ },\n \"delete\": {\n \"parameters\": {\n \"id\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Deletes - a resource.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"DELETE\",\n \"path\": \"youtube/v3/playlistItems\"\n },\n - \ \"list\": {\n \"path\": \"youtube/v3/playlistItems\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"response\": {\n \"$ref\": - \"PlaylistItemListResponse\"\n },\n \"id\": \"youtube.playlistItems.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"playlistId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return the playlist items within the given playlist.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"Return the playlist items associated - with the given video ID.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"repeated\": true,\n - \ \"required\": true\n },\n \"id\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true\n },\n \"maxResults\": - {\n \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"default\": \"5\",\n \"minimum\": - \"0\",\n \"location\": \"query\"\n }\n }\n - \ }\n }\n },\n \"tests\": {\n \"methods\": {\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"TestItem\"\n },\n \"response\": {\n \"$ref\": - \"TestItem\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/tests\",\n \"description\": - \"POST method.\",\n \"id\": \"youtube.tests.insert\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n },\n - \ \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"path\": - \"youtube/v3/tests\"\n }\n }\n },\n \"liveChatModerators\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"0\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\"\n - \ },\n \"liveChatId\": {\n \"required\": - true,\n \"description\": \"The id of the live chat for which - moderators should be returned.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.liveChatModerators.list\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ },\n \"insert\": {\n \"request\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"response\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatModerators.insert\",\n \"path\": - \"youtube/v3/liveChat/moderators\",\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"description\": \"Inserts a - new resource into this collection.\"\n },\n \"delete\": {\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveChatModerators.delete\",\n \"description\": - \"Deletes a chat moderator.\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\"\n - \ }\n }\n },\n \"commentThreads\": {\n \"methods\": - {\n \"insert\": {\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/commentThreads\",\n \"parameters\": {\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"repeated\": true,\n \"description\": \"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.\",\n - \ \"type\": \"string\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.commentThreads.insert\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"request\": {\n \"$ref\": \"CommentThread\"\n }\n - \ },\n \"list\": {\n \"response\": {\n \"$ref\": - \"CommentThreadListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"order\": - {\n \"enumDescriptions\": [\n \"\",\n \"Order - by time.\",\n \"Order by relevance.\"\n ],\n \"enum\": - [\n \"orderUnspecified\",\n \"time\",\n \"relevance\"\n - \ ],\n \"default\": \"time\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"moderationStatus\": - {\n \"default\": \"published\",\n \"location\": - \"query\",\n \"description\": \"Limits the returned comment threads - to those with the specified moderation status. Not compatible with the 'id' - filter. Valid values: published, heldForReview, likelySpam.\",\n \"type\": - \"string\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"enumDescriptions\": [\n \"The comment is available - for public display.\",\n \"The comment is awaiting review by - a moderator.\",\n \"\",\n \"The comment is unfit - for display.\"\n ]\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"default\": \"20\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"location\": \"query\",\n \"maximum\": - \"100\",\n \"minimum\": \"1\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"Returns the comment threads with - the given IDs for Stubby or Apiary.\"\n },\n \"allThreadsRelatedToChannelId\": - {\n \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies a comma-separated - list of one or more commentThread resource properties that the API response - will include.\",\n \"required\": true,\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Returns the comment threads for - all the channel comments (ie does not include comments left on videos).\",\n - \ \"type\": \"string\"\n },\n \"searchTerms\": - {\n \"description\": \"Limits the returned comment threads to - those matching the specified key words. Not compatible with the 'id' filter.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"textFormat\": {\n \"enum\": [\n - \ \"textFormatUnspecified\",\n \"html\",\n \"plainText\"\n - \ ],\n \"description\": \"The requested text format - for the returned comments.\",\n \"type\": \"string\",\n \"default\": - \"html\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Returns the comments in HTML format. This is the default - value.\",\n \"Returns the comments in plain text format.\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"videoId\": {\n \"description\": \"Returns the comment - threads of the specified video.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"path\": - \"youtube/v3/commentThreads\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.commentThreads.list\"\n }\n - \ }\n },\n \"channelBanners\": {\n \"methods\": {\n \"insert\": - {\n \"httpMethod\": \"POST\",\n \"supportsMediaUpload\": - true,\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"mediaUpload\": {\n \"protocols\": {\n - \ \"simple\": {\n \"multipart\": true,\n \"path\": - \"/upload/youtube/v3/channelBanners/insert\"\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"6291456\",\n \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"flatPath\": \"youtube/v3/channelBanners/insert\",\n \"id\": - \"youtube.channelBanners.insert\",\n \"parameterOrder\": [],\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*Note:* This parameter is intended - exclusively for YouTube content partners. The *onBehalfOfContentOwner* parameter - indicates that the request's authorization credentials identify a YouTube - CMS user who is acting on behalf of the content owner specified in the parameter - value. This parameter is intended for YouTube content partners that own and - manage many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"type\": \"string\"\n }\n - \ }\n }\n }\n },\n \"captions\": {\n \"methods\": - {\n \"download\": {\n \"id\": \"youtube.captions.download\",\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"description\": \"The - ID of the caption track to download, required for One Platform.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"path\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"tfmt\": - {\n \"type\": \"string\",\n \"description\": \"Convert - the captions into this format. Supported options are sbv, srt, and vtt.\",\n - \ \"location\": \"query\"\n },\n \"tlang\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"tlang is the language code; machine translate - the captions into this language.\"\n }\n },\n \"httpMethod\": - \"GET\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"useMediaDownloadService\": true,\n \"path\": \"youtube/v3/captions/{id}\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"flatPath\": - \"youtube/v3/captions/{id}\",\n \"description\": \"Downloads a caption - track.\",\n \"supportsMediaDownload\": true\n },\n \"delete\": - {\n \"path\": \"youtube/v3/captions\",\n \"description\": - \"Deletes a resource.\",\n \"httpMethod\": \"DELETE\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is be on behalf of\"\n }\n },\n \"flatPath\": - \"youtube/v3/captions\",\n \"id\": \"youtube.captions.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"list\": {\n \"parameterOrder\": - [\n \"part\",\n \"videoId\"\n ],\n \"id\": - \"youtube.captions.list\",\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"parameters\": - {\n \"videoId\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Returns the captions for the - specified video.\",\n \"required\": true\n },\n \"id\": - {\n \"description\": \"Returns the captions with the given IDs - for Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOf\": {\n \"location\": - \"query\",\n \"description\": \"ID of the Google+ Page for the - channel that the request is on behalf of.\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"description\": \"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.\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ },\n \"path\": \"youtube/v3/captions\",\n \"flatPath\": - \"youtube/v3/captions\"\n },\n \"update\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"Caption\"\n - \ },\n \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n - \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/captions\",\n \"multipart\": - true\n }\n }\n },\n \"supportsMediaUpload\": - true,\n \"description\": \"Updates an existing resource.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.captions.update\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"description\": \"ID of the Google+ Page for the channel - that the request is on behalf of.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"part\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"repeated\": true\n },\n - \ \"sync\": {\n \"description\": \"Extra parameter - to allow automatically syncing the uploaded caption/transcript with the audio.\",\n - \ \"location\": \"query\",\n \"type\": \"boolean\"\n - \ }\n },\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"path\": \"youtube/v3/captions\",\n \"request\": - {\n \"$ref\": \"Caption\"\n }\n },\n \"insert\": - {\n \"path\": \"youtube/v3/captions\",\n \"httpMethod\": - \"POST\",\n \"mediaUpload\": {\n \"maxSize\": \"104857600\",\n - \ \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/captions\"\n - \ }\n }\n },\n \"request\": {\n \"$ref\": - \"Caption\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Caption\"\n - \ },\n \"supportsMediaUpload\": true,\n \"parameters\": - {\n \"sync\": {\n \"location\": \"query\",\n \"type\": - \"boolean\",\n \"description\": \"Extra parameter to allow automatically - syncing the uploaded caption/transcript with the audio.\"\n },\n - \ \"onBehalfOf\": {\n \"description\": \"ID of the - Google+ Page for the channel that the request is be on behalf of\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the caption - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"id\": \"youtube.captions.insert\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"watermarks\": {\n \"methods\": {\n - \ \"set\": {\n \"request\": {\n \"$ref\": \"InvideoBranding\"\n - \ },\n \"flatPath\": \"youtube/v3/watermarks/set\",\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"supportsMediaUpload\": true,\n \"parameters\": {\n \"channelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Allows - upload of watermark image and setting it for a channel.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/watermarks/set\",\n \"mediaUpload\": - {\n \"protocols\": {\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/watermarks/set\"\n }\n - \ },\n \"maxSize\": \"10485760\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ]\n },\n \"id\": \"youtube.watermarks.set\"\n - \ },\n \"unset\": {\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"parameterOrder\": [\n \"channelId\"\n - \ ],\n \"id\": \"youtube.watermarks.unset\",\n \"flatPath\": - \"youtube/v3/watermarks/unset\",\n \"path\": \"youtube/v3/watermarks/unset\",\n - \ \"description\": \"Allows removal of channel watermark.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"id\": - \"youtube.youtube.v3.updateCommentThreads\",\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [],\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ },\n \"flatPath\": \"youtube/v3/commentThreads\",\n - \ \"description\": \"Updates an existing resource.\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n - \ \"description\": \"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.\",\n - \ \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"response\": {\n \"$ref\": - \"CommentThread\"\n }\n }\n }\n }\n - \ }\n },\n \"playlists\": {\n \"methods\": {\n \"insert\": - {\n \"path\": \"youtube/v3/playlists\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"required\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"id\": \"youtube.playlists.insert\",\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"httpMethod\": - \"POST\"\n },\n \"update\": {\n \"description\": \"Updates - an existing resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": - true\n }\n },\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"id\": \"youtube.playlists.update\",\n \"request\": {\n - \ \"$ref\": \"Playlist\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/playlists\",\n - \ \"httpMethod\": \"PUT\",\n \"response\": {\n \"$ref\": - \"Playlist\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"list\": {\n \"id\": \"youtube.playlists.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"path\": \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"description\": \"Return the playlists with the - given IDs for Stubby or Apiary.\"\n },\n \"part\": {\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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.\",\n \"repeated\": true\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"channelId\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the playlists owned by the specified - channel ID.\"\n },\n \"maxResults\": {\n \"default\": - \"5\",\n \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"minimum\": \"0\",\n \"description\": \"The *maxResults* - parameter specifies the maximum number of items that should be returned in - the result set.\",\n \"format\": \"uint32\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"type\": - \"boolean\",\n \"location\": \"query\",\n \"description\": - \"Return the playlists owned by the authenticated user.\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"hl\": {\n \"type\": - \"string\",\n \"description\": \"Return content in specified - language\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"response\": - {\n \"$ref\": \"PlaylistListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"delete\": {\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\"\n }\n },\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Deletes a resource.\",\n \"path\": - \"youtube/v3/playlists\",\n \"id\": \"youtube.playlists.delete\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"parameterOrder\": - [\n \"id\"\n ]\n }\n }\n },\n \"comments\": - {\n \"methods\": {\n \"list\": {\n \"path\": \"youtube/v3/comments\",\n - \ \"parameters\": {\n \"parentId\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Returns replies to the specified comment. Note, currently YouTube features - only one level of replies (ie replies to top level comments). However replies - to replies may be supported in the future.\"\n },\n \"maxResults\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"maximum\": \"100\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"default\": - \"20\",\n \"minimum\": \"1\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies a comma-separated list of one or more comment resource - properties that the API response will include.\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"description\": - \"Returns the comments with the given IDs for One Platform.\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"textFormat\": - {\n \"type\": \"string\",\n \"default\": \"html\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Returns - the comments in HTML format. This is the default value.\",\n \"Returns - the comments in plain text format.\"\n ],\n \"description\": - \"The requested text format for the returned comments.\"\n }\n - \ },\n \"flatPath\": \"youtube/v3/comments\",\n \"response\": - {\n \"$ref\": \"CommentListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.comments.list\",\n \"httpMethod\": - \"GET\"\n },\n \"setModerationStatus\": {\n \"id\": - \"youtube.comments.setModerationStatus\",\n \"parameters\": {\n \"banAuthor\": - {\n \"default\": \"false\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"If - set to true the author of the comment gets added to the ban list. This means - all future comments of the author will autmomatically be rejected. Only valid - in combination with STATUS_REJECTED.\"\n },\n \"moderationStatus\": - {\n \"description\": \"Specifies the requested moderation status. - Note, comments can be in statuses, which are not available through this call. - For example, this call does not allow to mark a comment as 'likely spam'. - Valid values: MODERATION_STATUS_PUBLISHED, MODERATION_STATUS_HELD_FOR_REVIEW, - MODERATION_STATUS_REJECTED.\",\n \"location\": \"query\",\n \"enum\": - [\n \"published\",\n \"heldForReview\",\n \"likelySpam\",\n - \ \"rejected\"\n ],\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"required\": - true,\n \"type\": \"string\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"query\",\n - \ \"description\": \"Modifies the moderation status of the comments - with the given IDs\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"path\": \"youtube/v3/comments/setModerationStatus\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ],\n \"flatPath\": - \"youtube/v3/comments/setModerationStatus\",\n \"description\": \"Sets - the moderation status of one or more comments.\"\n },\n \"markAsSpam\": - {\n \"description\": \"Expresses the caller's opinion that one or - more comments should be flagged as spam.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments/markAsSpam\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"id\": {\n \"description\": - \"Flags the comments with the given IDs as spam in the caller's opinion.\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"id\": - \"youtube.comments.markAsSpam\"\n },\n \"insert\": {\n \"request\": - {\n \"$ref\": \"Comment\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"required\": - true\n }\n },\n \"response\": {\n \"$ref\": - \"Comment\"\n },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/comments\",\n \"path\": \"youtube/v3/comments\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"id\": \"youtube.comments.insert\"\n - \ },\n \"update\": {\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"request\": {\n \"$ref\": \"Comment\"\n },\n - \ \"parameters\": {\n \"part\": {\n \"type\": - \"string\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\"\n - \ }\n },\n \"id\": \"youtube.comments.update\",\n - \ \"httpMethod\": \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments\",\n \"response\": - {\n \"$ref\": \"Comment\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"delete\": {\n \"id\": \"youtube.comments.delete\",\n - \ \"parameters\": {\n \"id\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"required\": - true\n }\n },\n \"httpMethod\": \"DELETE\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"path\": - \"youtube/v3/comments\",\n \"description\": \"Deletes a resource.\",\n - \ \"flatPath\": \"youtube/v3/comments\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"list\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\",\n \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"flatPath\": \"youtube/v3/channels\",\n \"response\": - {\n \"$ref\": \"ChannelListResponse\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"parameters\": {\n \"forUsername\": - {\n \"description\": \"Return the channel associated with a YouTube - username.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"minimum\": - \"0\",\n \"maximum\": \"50\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"format\": - \"uint32\"\n },\n \"mySubscribers\": {\n \"type\": - \"boolean\",\n \"description\": \"Return the channels subscribed - to the authenticated user\",\n \"location\": \"query\"\n },\n - \ \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\"\n - \ },\n \"mine\": {\n \"location\": \"query\",\n - \ \"type\": \"boolean\",\n \"description\": \"Return - the ids of channels owned by the authenticated user.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"categoryId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the channels within the specified guide category ID.\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"managedByMe\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Return the channels managed by the authenticated - user.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"repeated\": - true\n },\n \"id\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"description\": - \"Return the channels with the specified IDs.\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.channels.list\",\n - \ \"path\": \"youtube/v3/channels\"\n },\n \"update\": - {\n \"flatPath\": \"youtube/v3/channels\",\n \"description\": - \"Updates an existing resource.\",\n \"path\": \"youtube/v3/channels\",\n - \ \"id\": \"youtube.channels.update\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"Channel\"\n },\n \"response\": {\n \"$ref\": - \"Channel\"\n },\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"httpMethod\": - \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n }\n }\n },\n \"videos\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/videos\",\n \"response\": - {\n \"$ref\": \"VideoListResponse\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"parameters\": - {\n \"part\": {\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n },\n \"id\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"Return videos with the given ids.\",\n \"location\": - \"query\"\n },\n \"maxHeight\": {\n \"location\": - \"query\",\n \"minimum\": \"72\",\n \"type\": \"integer\",\n - \ \"maximum\": \"8192\",\n \"format\": \"int32\"\n - \ },\n \"hl\": {\n \"location\": \"query\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"type\": \"string\"\n },\n \"videoCategoryId\": - {\n \"default\": \"0\",\n \"location\": \"query\",\n - \ \"description\": \"Use chart that is specific to the specified - video category\",\n \"type\": \"string\"\n },\n \"chart\": - {\n \"location\": \"query\",\n \"enum\": [\n \"chartUnspecified\",\n - \ \"mostPopular\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"description\": - \"Return the videos that are in the specified chart.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"default\": - \"5\",\n \"minimum\": \"1\",\n \"type\": \"integer\",\n - \ \"description\": \"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.\",\n - \ \"maximum\": \"50\"\n },\n \"locale\": - {\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"maxWidth\": {\n \"minimum\": \"72\",\n \"location\": - \"query\",\n \"maximum\": \"8192\",\n \"type\": - \"integer\",\n \"format\": \"int32\",\n \"description\": - \"Return the player with maximum height specified in\"\n },\n \"myRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return videos liked/disliked by the authenticated user. Does not support - RateType.RATED_TYPE_NONE.\"\n },\n \"regionCode\": {\n - \ \"description\": \"Use a chart that is specific to the specified - region\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"httpMethod\": \"GET\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"id\": - \"youtube.videos.list\"\n },\n \"reportAbuse\": {\n \"description\": - \"Report abuse for a video.\",\n \"path\": \"youtube/v3/videos/reportAbuse\",\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.videos.reportAbuse\",\n - \ \"request\": {\n \"$ref\": \"VideoAbuseReport\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos/reportAbuse\",\n - \ \"parameterOrder\": [],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n }\n },\n \"delete\": {\n - \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.videos.delete\",\n - \ \"path\": \"youtube/v3/videos\",\n \"httpMethod\": \"DELETE\",\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n }\n }\n },\n - \ \"update\": {\n \"id\": \"youtube.videos.update\",\n \"description\": - \"Updates an existing resource.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"PUT\",\n \"path\": \"youtube/v3/videos\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"flatPath\": \"youtube/v3/videos\",\n \"request\": {\n - \ \"$ref\": \"Video\"\n },\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"rate\": {\n \"path\": - \"youtube/v3/videos/rate\",\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ],\n \"flatPath\": \"youtube/v3/videos/rate\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"rating\": - {\n \"enum\": [\n \"none\",\n \"like\",\n - \ \"dislike\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"required\": true,\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Adds a like or dislike - rating to a video or removes a rating from a video.\",\n \"id\": - \"youtube.videos.rate\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"getRating\": {\n \"id\": \"youtube.videos.getRating\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves the ratings that the - authorized user gave to a list of specified videos.\",\n \"response\": - {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"parameterOrder\": - [\n \"id\"\n ],\n \"path\": \"youtube/v3/videos/getRating\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/videos/getRating\"\n },\n \"insert\": {\n \"supportsMediaUpload\": - true,\n \"path\": \"youtube/v3/videos\",\n \"request\": - {\n \"$ref\": \"Video\"\n },\n \"description\": - \"Inserts a new resource into this collection.\",\n \"id\": \"youtube.videos.insert\",\n - \ \"response\": {\n \"$ref\": \"Video\"\n },\n - \ \"mediaUpload\": {\n \"maxSize\": \"274877906944\",\n - \ \"accept\": [\n \"video/*\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": - true\n },\n \"simple\": {\n \"path\": - \"/upload/youtube/v3/videos\",\n \"multipart\": true\n }\n - \ }\n },\n \"flatPath\": \"youtube/v3/videos\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"stabilize\": {\n \"description\": - \"Should stabilize be applied to the upload.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"autoLevels\": - {\n \"description\": \"Should auto-levels be applied to the upload.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"notifySubscribers\": {\n \"type\": - \"boolean\",\n \"default\": \"true\",\n \"description\": - \"Notify the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"location\": \"query\"\n }\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"httpMethod\": - \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"hl\": {\n \"default\": - \"en-US\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"description\": - \"The *part* parameter specifies the videoCategory resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"required\": true\n },\n \"regionCode\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"Returns - the video categories with the given IDs for Stubby or Apiary.\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"VideoCategoryListResponse\"\n },\n \"id\": \"youtube.videoCategories.list\",\n - \ \"flatPath\": \"youtube/v3/videoCategories\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/videoCategories\",\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"liveBroadcasts\": - {\n \"methods\": {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Return broadcasts with the given - ids from Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"minimum\": \"0\",\n \"default\": \"5\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"maximum\": - \"50\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"type\": \"integer\"\n },\n \"broadcastStatus\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return broadcasts with a certain status, - e.g. active broadcasts.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all broadcasts.\",\n \"Return current - live broadcasts.\",\n \"Return broadcasts that have not yet - started.\",\n \"Return broadcasts that have already ended.\"\n - \ ],\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ]\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"mine\": {\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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, status and statistics.\",\n \"repeated\": - true,\n \"required\": true\n },\n \"broadcastType\": - {\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"default\": \"event\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Return only broadcasts with the selected type.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ]\n }\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"response\": {\n \"$ref\": - \"LiveBroadcastListResponse\"\n },\n \"description\": \"Retrieve - the list of broadcasts associated with the given channel.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"httpMethod\": \"GET\",\n \"id\": \"youtube.liveBroadcasts.list\"\n - \ },\n \"transition\": {\n \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"httpMethod\": - \"POST\",\n \"parameterOrder\": [\n \"broadcastStatus\",\n - \ \"id\",\n \"part\"\n ],\n \"description\": - \"Transition a broadcast to a given status.\",\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Broadcast to transition.\"\n },\n - \ \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"broadcastStatus\": - {\n \"enum\": [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"description\": \"The status to which the broadcast is going - to transition.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Start testing the broadcast. YouTube transmits video to - the broadcast's monitor stream. Note that you can only transition a broadcast - to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insertCuepoint\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Cuepoint\"\n - \ },\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [],\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to insert ads to, or equivalently - `external_video_id` for internal use.\"\n }\n },\n \"response\": - {\n \"$ref\": \"Cuepoint\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts/cuepoint\",\n \"description\": \"Insert - cuepoints in a broadcast\",\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\"\n - \ },\n \"insert\": {\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"parameters\": - {\n \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"httpMethod\": \"POST\",\n - \ \"id\": \"youtube.liveBroadcasts.insert\"\n },\n \"delete\": - {\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"type\": \"string\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Broadcast to delete.\",\n \"required\": true\n }\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"DELETE\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.delete\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"description\": \"Delete a - given broadcast.\"\n },\n \"update\": {\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"PUT\",\n \"description\": - \"Updates an existing broadcast for the authenticated user.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts\",\n \"request\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"id\": - \"youtube.liveBroadcasts.update\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"repeated\": - true,\n \"required\": true\n }\n }\n },\n - \ \"bind\": {\n \"description\": \"Bind a broadcast to a stream.\",\n - \ \"response\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"httpMethod\": - \"POST\",\n \"parameters\": {\n \"id\": {\n \"description\": - \"Broadcast to bind to the stream\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"streamId\": {\n \"description\": - \"Stream to bind, if not set unbind the current one.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.liveBroadcasts.bind\",\n \"parameterOrder\": - [\n \"id\",\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveBroadcasts/bind\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"path\": \"youtube/v3/superChatEvents\",\n \"response\": - {\n \"$ref\": \"SuperChatEventListResponse\"\n },\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"hl\": {\n \"type\": - \"string\",\n \"description\": \"Return rendered funding amounts - in specified language.\",\n \"location\": \"query\"\n },\n - \ \"pageToken\": {\n \"type\": \"string\",\n \"description\": - \"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.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the superChatEvent resource parts that the - API response will include. This parameter is currently not supported.\"\n - \ },\n \"maxResults\": {\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"minimum\": \"1\",\n \"format\": \"uint32\",\n - \ \"type\": \"integer\",\n \"maximum\": \"50\",\n - \ \"default\": \"5\"\n }\n },\n \"id\": - \"youtube.superChatEvents.list\",\n \"flatPath\": \"youtube/v3/superChatEvents\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n }\n - \ }\n },\n \"thirdPartyLinks\": {\n \"methods\": {\n \"update\": - {\n \"id\": \"youtube.thirdPartyLinks.update\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"The *part* parameter specifies the - thirdPartyLink resource parts that the API request and response will include. - Supported values are linkingToken, status, and snippet.\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"response\": - {\n \"$ref\": \"ThirdPartyLink\"\n },\n \"httpMethod\": - \"PUT\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Updates an existing resource.\"\n },\n - \ \"list\": {\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"linkingToken\": - {\n \"description\": \"Get a third party link with the given - linking token.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the thirdPartyLink resource parts that the API - response will include. Supported values are linkingToken, status, and snippet.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"type\": {\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"description\": - \"Get a third party link of the given type.\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n - \ \"path\": \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ThirdPartyLinkListResponse\"\n },\n \"id\": \"youtube.thirdPartyLinks.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\"\n - \ },\n \"delete\": {\n \"parameterOrder\": [\n \"linkingToken\",\n - \ \"type\"\n ],\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"httpMethod\": \"DELETE\",\n \"id\": \"youtube.thirdPartyLinks.delete\",\n - \ \"description\": \"Deletes a resource.\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"linkingToken\": - {\n \"location\": \"query\",\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"type\": - {\n \"type\": \"string\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"required\": - true,\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"A link that is connecting (or - about to connect) a channel with a store on a merchandising platform in order - to enable retail commerce capabilities for that channel on YouTube.\"\n ],\n - \ \"description\": \"Type of the link to be deleted.\"\n },\n - \ \"externalChannelId\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Do not use. Required for compatibility.\"\n }\n }\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.thirdPartyLinks.insert\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"response\": {\n \"$ref\": \"ThirdPartyLink\"\n },\n - \ \"description\": \"Inserts a new resource into this collection.\",\n - \ \"httpMethod\": \"POST\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\",\n \"required\": true\n - \ }\n },\n \"request\": {\n \"$ref\": - \"ThirdPartyLink\"\n }\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"parameters\": {\n - \ \"hl\": {\n \"location\": \"query\",\n \"default\": - \"en_US\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"description\": \"The *part* parameter specifies the i18nRegion - resource properties that the API response will include. Set the parameter - value to snippet.\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"response\": {\n \"$ref\": - \"I18nRegionListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.i18nRegions.list\",\n \"flatPath\": \"youtube/v3/i18nRegions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/i18nRegions\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\"\n }\n }\n },\n \"abuseReports\": - {\n \"methods\": {\n \"insert\": {\n \"httpMethod\": - \"POST\",\n \"id\": \"youtube.abuseReports.insert\",\n \"path\": - \"youtube/v3/abuseReports\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Inserts a new resource into this - collection.\",\n \"flatPath\": \"youtube/v3/abuseReports\",\n \"request\": - {\n \"$ref\": \"AbuseReport\"\n },\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"response\": {\n \"$ref\": \"AbuseReport\"\n }\n - \ }\n }\n }\n },\n \"id\": \"youtube:v3\",\n \"kind\": \"discovery#restDescription\",\n - \ \"parameters\": {\n \"oauth_token\": {\n \"description\": \"OAuth - 2.0 token for the current user.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"fields\": {\n \"location\": \"query\",\n \"description\": - \"Selector specifying which fields to include in a partial response.\",\n - \ \"type\": \"string\"\n },\n \"alt\": {\n \"enum\": [\n \"json\",\n - \ \"media\",\n \"proto\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Data format for response.\",\n - \ \"default\": \"json\",\n \"enumDescriptions\": [\n \"Responses - with Content-Type of application/json\",\n \"Media download with context-dependent - Content-Type\",\n \"Responses with Content-Type of application/x-protobuf\"\n - \ ]\n },\n \"$.xgafv\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"v1 error format\",\n - \ \"v2 error format\"\n ],\n \"description\": \"V1 error format.\",\n - \ \"enum\": [\n \"1\",\n \"2\"\n ]\n },\n \"key\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n - \ },\n \"callback\": {\n \"type\": \"string\",\n \"description\": - \"JSONP\",\n \"location\": \"query\"\n },\n \"uploadType\": {\n - \ \"description\": \"Legacy upload protocol for media (e.g. \\\"media\\\", - \\\"multipart\\\").\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"quotaUser\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"access_token\": {\n - \ \"description\": \"OAuth access token.\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"upload_protocol\": {\n \"type\": - \"string\",\n \"description\": \"Upload protocol for media (e.g. \\\"raw\\\", - \\\"multipart\\\").\",\n \"location\": \"query\"\n },\n \"prettyPrint\": - {\n \"type\": \"boolean\",\n \"default\": \"true\",\n \"location\": - \"query\",\n \"description\": \"Returns response with indentations and - line breaks.\"\n }\n },\n \"name\": \"youtube\",\n \"canonicalName\": - \"YouTube\",\n \"icons\": {\n \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\",\n - \ \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\"\n - \ },\n \"basePath\": \"\"\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:43 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCX6OQ3DkcsbYNE6H8uQQuVA&part=snippet%2CbrandingSettings - response: - body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"xU5Dw5_No2HU-MFKAboZ1r14JU8\",\n - \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n - \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"UcVypyvY4M3gpYcIzcNPGrQP5lA\",\n \"id\": \"UCX6OQ3DkcsbYNE6H8uQQuVA\",\n - \ \"snippet\": {\n \"title\": \"MrBeast\",\n \"description\": - \"SUBSCRIBE FOR A COOKIE!\\nAccomplishments\\n- Raised $20,000,000 To Plant - 20,000,000 Trees\\n- Given millions to charity\\n- Donated over 100 cars lol\\n- - Gave away a private island\\n- Given away over 100 ps4s lol\\n- Gave away - 1 million dollars in one video \\n- Counted to 100k\\n- Read the Dictionary\\n- - Watched Dance Till You're Dead For 10 Hours\\n- Read Bee Movie Script\\n- - Read Longest English Word\\n- Watched Paint Dry\\n- Ubering Across America\\n- - Watched It's Every Day Bro For 10 Hours\\n- Ran a marathon in the world's - largest shoes\\n- Adopted every dog in a shelter\\nYou get the point haha\\n\\n\\n\\n*Do - not email me asking for money, I give away money because it makes me happy - :)\",\n \"customUrl\": \"@mrbeast\",\n \"publishedAt\": \"2012-02-20T00:43:50Z\",\n - \ \"thumbnails\": {\n \"default\": {\n \"url\": - \"https://yt3.ggpht.com/ytc/AL5GRJUfhQdJS6n-YJtsAf-ouS2myDavDOq_zXBfebal3Q=s88-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJUfhQdJS6n-YJtsAf-ouS2myDavDOq_zXBfebal3Q=s240-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/ytc/AL5GRJUfhQdJS6n-YJtsAf-ouS2myDavDOq_zXBfebal3Q=s800-c-k-c0x00ffffff-no-rj\",\n - \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"MrBeast\",\n \"description\": - \"SUBSCRIBE FOR A COOKIE!\\nAccomplishments\\n- Raised $20,000,000 To Plant - 20,000,000 Trees\\n- Given millions to charity\\n- Donated over 100 cars lol\\n- - Gave away a private island\\n- Given away over 100 ps4s lol\\n- Gave away - 1 million dollars in one video \\n- Counted to 100k\\n- Read the Dictionary\\n- - Watched Dance Till You're Dead For 10 Hours\\n- Read Bee Movie Script\\n- - Read Longest English Word\\n- Watched Paint Dry\\n- Ubering Across America\\n- - Watched It's Every Day Bro For 10 Hours\\n- Ran a marathon in the world's - largest shoes\\n- Adopted every dog in a shelter\\nYou get the point haha\\n\\n\\n\\n*Do - not email me asking for money, I give away money because it makes me happy - :)\"\n },\n \"country\": \"US\"\n },\n \"brandingSettings\": - {\n \"channel\": {\n \"title\": \"MrBeast\",\n \"description\": - \"SUBSCRIBE FOR A COOKIE!\\nAccomplishments\\n- Raised $20,000,000 To Plant - 20,000,000 Trees\\n- Given millions to charity\\n- Donated over 100 cars lol\\n- - Gave away a private island\\n- Given away over 100 ps4s lol\\n- Gave away - 1 million dollars in one video \\n- Counted to 100k\\n- Read the Dictionary\\n- - Watched Dance Till You're Dead For 10 Hours\\n- Read Bee Movie Script\\n- - Read Longest English Word\\n- Watched Paint Dry\\n- Ubering Across America\\n- - Watched It's Every Day Bro For 10 Hours\\n- Ran a marathon in the world's - largest shoes\\n- Adopted every dog in a shelter\\nYou get the point haha\\n\\n\\n\\n*Do - not email me asking for money, I give away money because it makes me happy - :)\",\n \"keywords\": \"mrbeast6000 beast mrbeast Mr.Beast mr\",\n - \ \"unsubscribedTrailer\": \"0CTp1a-aCUM\",\n \"country\": - \"US\"\n },\n \"image\": {\n \"bannerExternalUrl\": - \"https://yt3.googleusercontent.com/NP3nTQ3kxLiXV-kLXKS2zaNL6ESMMBv74m-d5a--q5ThgLD6I-IyqLwAbj-AbClWNbORBg3Pcg\"\n - \ }\n }\n }\n ]\n}\n" - headers: - Alt-Svc: - - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 - Cache-Control: - - private - Content-Encoding: - - gzip - Content-Type: - - application/json; charset=UTF-8 - Date: - - Wed, 22 Feb 2023 18:58:43 GMT - Server: - - scaffolding on HTTPServer2 - Transfer-Encoding: - - chunked - Vary: - - Origin - - X-Origin - - Referer - X-Content-Type-Options: - - nosniff - X-Frame-Options: - - SAMEORIGIN - X-XSS-Protection: - - '0' - status: - code: 200 - message: OK - url: '' -- request: - body: null - headers: - Accept-Encoding: - - gzip - User-Agent: - - Aiogoogle Aiohttp (gzip) - method: GET - uri: https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest - response: - body: - string: "{\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n \"ownerDomain\": - \"google.com\",\n \"kind\": \"discovery#restDescription\",\n \"batchPath\": - \"batch\",\n \"schemas\": {\n \"VideoStatistics\": {\n \"id\": \"VideoStatistics\",\n - \ \"description\": \"Statistics about the video, such as the number of - times the video was viewed or liked.\",\n \"properties\": {\n \"commentCount\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The number of comments for the video.\"\n },\n \"favoriteCount\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"The number of users who currently have the video marked as a favorite video.\"\n - \ },\n \"viewCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of times the video has been viewed.\",\n - \ \"type\": \"string\"\n },\n \"likeCount\": {\n \"type\": - \"string\",\n \"description\": \"The number of users who have indicated - that they liked the video by giving it a positive rating.\",\n \"format\": - \"uint64\"\n },\n \"dislikeCount\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - number of users who have indicated that they disliked the video by giving - it a negative rating.\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"Comment\": {\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"$ref\": \"CommentSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the comment.\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the comment.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#comment\\\".\",\n \"default\": \"youtube#comment\"\n - \ }\n },\n \"description\": \"A *comment* represents a single - YouTube comment.\",\n \"type\": \"object\",\n \"id\": \"Comment\"\n - \ },\n \"ActivityContentDetailsFavorite\": {\n \"type\": \"object\",\n - \ \"description\": \"Information about a video that was marked as a favorite - video.\",\n \"id\": \"ActivityContentDetailsFavorite\",\n \"properties\": - {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The resourceId object contains information that identifies the resource - that was marked as a favorite.\"\n }\n }\n },\n \"Activity\": - {\n \"description\": \"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.\",\n \"id\": \"Activity\",\n \"type\": - \"object\",\n \"properties\": {\n \"contentDetails\": {\n \"description\": - \"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.\",\n \"$ref\": - \"ActivityContentDetails\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#activity\\\".\",\n \"default\": - \"youtube#activity\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the activity, including - the activity's type and group ID.\",\n \"$ref\": \"ActivitySnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource\",\n \"type\": \"string\"\n },\n \"id\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the activity.\",\n \"type\": \"string\"\n }\n }\n },\n - \ \"VideoProcessingDetails\": {\n \"id\": \"VideoProcessingDetails\",\n - \ \"description\": \"Describes processing status and progress and availability - of some other Video resource parts.\",\n \"properties\": {\n \"processingProgress\": - {\n \"description\": \"The processingProgress object contains information - about the progress YouTube has made in processing the video. The values are - really only relevant if the video's processing status is processing.\",\n - \ \"$ref\": \"VideoProcessingDetailsProcessingProgress\"\n },\n - \ \"fileDetailsAvailability\": {\n \"description\": \"This - value indicates whether file details are available for the uploaded video. - You can retrieve a video's file details by requesting the fileDetails part - in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"editorSuggestionsAvailability\": {\n \"type\": \"string\",\n - \ \"description\": \"This value indicates whether video editing suggestions, - which might improve video quality or the playback experience, are available - for the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\"\n },\n \"thumbnailsAvailability\": - {\n \"description\": \"This value indicates whether thumbnail images - have been generated for the video.\",\n \"type\": \"string\"\n },\n - \ \"tagSuggestionsAvailability\": {\n \"description\": \"This - value indicates whether keyword (tag) suggestions are available for the video. - Tags can be added to a video's metadata to make it easier for other users - to find the video. You can retrieve these suggestions by requesting the suggestions - part in your videos.list() request.\",\n \"type\": \"string\"\n },\n - \ \"processingFailureReason\": {\n \"type\": \"string\",\n - \ \"description\": \"The reason that YouTube failed to process the - video. This property will only have a value if the processingStatus property's - value is failed.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"uploadFailed\",\n \"transcodeFailed\",\n \"streamingFailed\",\n - \ \"other\"\n ]\n },\n \"processingIssuesAvailability\": - {\n \"type\": \"string\",\n \"description\": \"This value - indicates whether the video processing engine has generated suggestions that - might improve YouTube's ability to process the the video, warnings that explain - video processing problems, or errors that cause video processing problems. - You can retrieve these suggestions by requesting the suggestions part in your - videos.list() request.\"\n },\n \"processingStatus\": {\n \"type\": - \"string\",\n \"enum\": [\n \"processing\",\n \"succeeded\",\n - \ \"failed\",\n \"terminated\"\n ],\n \"description\": - \"The video's processing status. This value indicates whether YouTube was - able to process the video or if the video is still being processed.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n }\n },\n \"type\": \"object\"\n },\n \"PlaylistSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a playlist, including title, description and thumbnails.\",\n \"properties\": - {\n \"localized\": {\n \"$ref\": \"PlaylistLocalization\",\n - \ \"description\": \"Localized title and description, read-only.\"\n - \ },\n \"channelId\": {\n \"description\": \"The ID - that YouTube uses to uniquely identify the channel that published the playlist.\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.playlists.insert\",\n - \ \"youtube.playlists.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The playlist's - title.\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"format\": \"date-time\",\n \"description\": \"The date - and time that the playlist was created.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the playlist's default title - and description.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The playlist's - description.\"\n },\n \"tags\": {\n \"description\": - \"Keyword tags associated with the playlist.\",\n \"items\": {\n - \ \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"channelTitle\": {\n \"description\": \"The - channel title of the channel that the video belongs to.\",\n \"type\": - \"string\"\n },\n \"thumbnailVideoId\": {\n \"type\": - \"string\",\n \"description\": \"Note: if the playlist has a custom - thumbnail, this field will not be populated. The video id selected by the - user that will be used as the thumbnail of this playlist. This field defaults - to the first publicly viewable video in the playlist, if: 1. The user has - never selected a video to be the thumbnail of the playlist. 2. The user selects - a video to be the thumbnail, and then removes that video from the playlist. - 3. The user selects a non-owned video to be the thumbnail, but that video - becomes private, or gets deleted.\"\n },\n \"thumbnails\": {\n - \ \"description\": \"A map of thumbnail images associated with the - playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n }\n },\n - \ \"id\": \"PlaylistSnippet\"\n },\n \"VideoCategorySnippet\": {\n - \ \"id\": \"VideoCategorySnippet\",\n \"properties\": {\n \"channelId\": - {\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n \"description\": - \"The YouTube channel that created the video category.\",\n \"type\": - \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n - \ \"description\": \"The video category's title.\"\n },\n \"assignable\": - {\n \"type\": \"boolean\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Basic details about a video category, such as its - localized title.\"\n },\n \"ChannelSectionSnippet\": {\n \"description\": - \"Basic details about a channel section, including title, style and position.\",\n - \ \"properties\": {\n \"defaultLanguage\": {\n \"type\": - \"string\",\n \"description\": \"The language of the channel section's - default title and description.\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the channel that published the channel section.\"\n },\n \"position\": - {\n \"type\": \"integer\",\n \"description\": \"The position - of the channel section in the channel.\",\n \"format\": \"uint32\"\n - \ },\n \"style\": {\n \"description\": \"The style of - the channel section.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"channelsectionStyleUnspecified\",\n \"horizontalRow\",\n - \ \"verticalList\"\n ]\n },\n \"title\": - {\n \"description\": \"The channel section's title for multiple_playlists - and multiple_channels.\",\n \"type\": \"string\"\n },\n \"localized\": - {\n \"$ref\": \"ChannelSectionLocalization\",\n \"description\": - \"Localized title, read-only.\"\n },\n \"type\": {\n \"description\": - \"The type of the channel section.\",\n \"enumDescriptions\": [\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"channelsectionTypeUndefined\",\n - \ \"singlePlaylist\",\n \"multiplePlaylists\",\n \"popularUploads\",\n - \ \"recentUploads\",\n \"likes\",\n \"allPlaylists\",\n - \ \"likedPlaylists\",\n \"recentPosts\",\n \"recentActivity\",\n - \ \"liveEvents\",\n \"upcomingEvents\",\n \"completedEvents\",\n - \ \"multipleChannels\",\n \"postedVideos\",\n \"postedPlaylists\",\n - \ \"subscriptions\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ChannelSectionSnippet\",\n \"type\": - \"object\"\n },\n \"LiveBroadcastStatus\": {\n \"type\": \"object\",\n - \ \"description\": \"Live broadcast state.\",\n \"id\": \"LiveBroadcastStatus\",\n - \ \"properties\": {\n \"lifeCycleStatus\": {\n \"description\": - \"The broadcast's status. The status can be updated using the API's liveBroadcasts.transition - method.\",\n \"type\": \"string\",\n \"enum\": [\n \"lifeCycleStatusUnspecified\",\n - \ \"created\",\n \"ready\",\n \"testing\",\n - \ \"live\",\n \"complete\",\n \"revoked\",\n - \ \"testStarting\",\n \"liveStarting\"\n ],\n - \ \"enumDescriptions\": [\n \"No value or the value is - unknown.\",\n \"Incomplete settings, but otherwise valid\",\n \"Complete - settings\",\n \"Visible only to partner, may need special UI treatment\",\n - \ \"Viper is recording; this means the \\\"clock\\\" is running\",\n - \ \"The broadcast is finished.\",\n \"This broadcast - was removed by admin action\",\n \"Transition into TESTING has - been requested\",\n \"Transition into LIVE has been requested\"\n - \ ]\n },\n \"privacyStatus\": {\n \"description\": - \"The broadcast's privacy status. Note that the broadcast represents exactly - one YouTube video, so the privacy settings are identical to those supported - for videos. In addition, you can set this field by modifying the broadcast - resource or by setting the privacyStatus field of the corresponding video - resource.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"annotations\": {\n \"required\": [\n - \ \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"madeForKids\": {\n \"description\": - \"Whether the broadcast is made for kids or not, decided by YouTube instead - of the creator. This field is read only.\",\n \"type\": \"boolean\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This field will be set to True if the creator - declares the broadcast to be kids only: go/live-cw-work.\"\n },\n \"recordingStatus\": - {\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n - \ \"notRecording\",\n \"recording\",\n \"recorded\"\n - \ ],\n \"enumDescriptions\": [\n \"No value or - the value is unknown.\",\n \"The recording has not yet been started.\",\n - \ \"The recording is currently on.\",\n \"The recording - is completed, and cannot be started again.\"\n ],\n \"description\": - \"The broadcast's recording status.\",\n \"type\": \"string\"\n },\n - \ \"liveBroadcastPriority\": {\n \"description\": \"Priority - of the live broadcast event (internal state).\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"liveBroadcastPriorityUnspecified\",\n - \ \"low\",\n \"normal\",\n \"high\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Low priority - broadcast: for low view count HoAs or other low priority broadcasts.\",\n - \ \"Normal priority broadcast: for regular HoAs and broadcasts.\",\n - \ \"High priority broadcast: for high profile HoAs, like PixelCorp - ones.\"\n ]\n }\n }\n },\n \"LiveBroadcastListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveBroadcastListResponse\\\".\",\n \"default\": - \"youtube#liveBroadcastListResponse\",\n \"type\": \"string\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of broadcasts that match the - request criteria.\",\n \"items\": {\n \"$ref\": \"LiveBroadcast\"\n - \ }\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"prevPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"visitorId\": {\n - \ \"description\": \"The visitorId identifies the visitor.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"LiveBroadcastListResponse\"\n },\n \"PlaylistItemStatus\": - {\n \"id\": \"PlaylistItemStatus\",\n \"type\": \"object\",\n \"description\": - \"Information about the playlist item's privacy status.\",\n \"properties\": - {\n \"privacyStatus\": {\n \"type\": \"string\",\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"description\": \"This resource's privacy status.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n }\n }\n },\n \"LiveChatMessageDeletedDetails\": - {\n \"id\": \"LiveChatMessageDeletedDetails\",\n \"properties\": - {\n \"deletedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"ChannelSectionListResponse\": - {\n \"properties\": {\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"description\": \"A list of ChannelSections that match the request - criteria.\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelSectionListResponse\\\".\",\n - \ \"default\": \"youtube#channelSectionListResponse\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"ChannelSectionListResponse\",\n - \ \"type\": \"object\"\n },\n \"CommentSnippetAuthorChannelId\": - {\n \"properties\": {\n \"value\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"The - id of the author's YouTube channel, if any.\",\n \"id\": \"CommentSnippetAuthorChannelId\"\n - \ },\n \"VideoFileDetailsAudioStream\": {\n \"properties\": {\n - \ \"codec\": {\n \"type\": \"string\",\n \"description\": - \"The audio codec that the stream uses.\"\n },\n \"bitrateBps\": - {\n \"description\": \"The audio stream's bitrate, in bits per second.\",\n - \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n - \ \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"channelCount\": {\n \"description\": - \"The number of audio channels that the stream contains.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n }\n },\n \"description\": - \"Information about an audio stream.\",\n \"id\": \"VideoFileDetailsAudioStream\",\n - \ \"type\": \"object\"\n },\n \"VideoCategoryListResponse\": {\n - \ \"properties\": {\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the next page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"prevPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"visitorId\": {\n \"type\": - \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of video categories that can be associated with YouTube videos. In - this map, the video category ID is the map key, and its value is the corresponding - videoCategory resource.\",\n \"items\": {\n \"$ref\": - \"VideoCategory\"\n }\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoCategoryListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n },\n - \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n - \ \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": - \"VideoCategoryListResponse\",\n \"type\": \"object\"\n },\n \"ActivityContentDetailsComment\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsComment\",\n - \ \"properties\": {\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information that identifies the resource - associated with the comment.\",\n \"$ref\": \"ResourceId\"\n }\n - \ },\n \"description\": \"Information about a resource that received - a comment.\"\n },\n \"CdnSettings\": {\n \"description\": \"Brief - description of the live stream cdn settings.\",\n \"properties\": {\n - \ \"resolution\": {\n \"enum\": [\n \"240p\",\n - \ \"360p\",\n \"480p\",\n \"720p\",\n \"1080p\",\n - \ \"1440p\",\n \"2160p\",\n \"variable\"\n - \ ],\n \"description\": \"The resolution of the inbound video - data.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"ingestionInfo\": {\n \"$ref\": - \"IngestionInfo\",\n \"description\": \"The ingestionInfo object - contains information that YouTube provides that you need to transmit your - RTMP or HTTP stream to YouTube.\"\n },\n \"frameRate\": {\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The frame rate of the inbound video data.\",\n \"enum\": [\n \"30fps\",\n - \ \"60fps\",\n \"variable\"\n ]\n },\n - \ \"ingestionType\": {\n \"description\": \" The method or - protocol used to transmit the video stream.\",\n \"type\": \"string\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n },\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"rtmp\",\n \"dash\",\n \"webrtc\",\n \"hls\"\n - \ ]\n },\n \"format\": {\n \"description\": - \"The format of the video stream that you are sending to Youtube. \",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"CdnSettings\"\n - \ },\n \"ChannelSectionLocalization\": {\n \"description\": \"ChannelSection - localization setting\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for channel - section's title.\"\n }\n },\n \"id\": \"ChannelSectionLocalization\",\n - \ \"type\": \"object\"\n },\n \"VideoPlayer\": {\n \"properties\": - {\n \"embedHeight\": {\n \"type\": \"string\",\n \"format\": - \"int64\"\n },\n \"embedWidth\": {\n \"format\": \"int64\",\n - \ \"description\": \"The embed width\",\n \"type\": \"string\"\n - \ },\n \"embedHtml\": {\n \"type\": \"string\",\n \"description\": - \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\"\n - \ }\n },\n \"description\": \"Player to be used for a video - playback.\",\n \"id\": \"VideoPlayer\",\n \"type\": \"object\"\n - \ },\n \"PlaylistItemContentDetails\": {\n \"type\": \"object\",\n - \ \"id\": \"PlaylistItemContentDetails\",\n \"properties\": {\n \"endAt\": - {\n \"description\": \"The time, measured in seconds from the start - of the video, when the video should stop playing. (The playlist owner can - specify the times when the video should start and stop playing when the video - is played in the context of the playlist.) By default, assume that the video.endTime - is the end of the video.\",\n \"type\": \"string\"\n },\n - \ \"videoPublishedAt\": {\n \"type\": \"string\",\n \"description\": - \"The date and time that the video was published to YouTube.\",\n \"format\": - \"date-time\"\n },\n \"videoId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify a video. To retrieve the video - resource, set the id query parameter to this value in your API request.\",\n - \ \"type\": \"string\"\n },\n \"note\": {\n \"type\": - \"string\",\n \"description\": \"A user-generated note for this item.\"\n - \ },\n \"startAt\": {\n \"description\": \"The time, - measured in seconds from the start of the video, when the video should start - playing. (The playlist owner can specify the times when the video should start - and stop playing when the video is played in the context of the playlist.) - The default value is 0.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"VideoMonetizationDetails\": {\n \"properties\": {\n \"access\": - {\n \"$ref\": \"AccessPolicy\",\n \"description\": \"The - value of access indicates whether the video can be monetized or not.\"\n }\n - \ },\n \"description\": \"Details about monetization of a YouTube - Video.\",\n \"id\": \"VideoMonetizationDetails\",\n \"type\": \"object\"\n - \ },\n \"Entity\": {\n \"properties\": {\n \"typeId\": {\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": - \"string\"\n },\n \"url\": {\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"Entity\"\n - \ },\n \"InvideoBranding\": {\n \"properties\": {\n \"timing\": - {\n \"description\": \"The temporal position within the video where - watermark will be displayed.\",\n \"$ref\": \"InvideoTiming\"\n },\n - \ \"imageUrl\": {\n \"description\": \"The url of the uploaded - image. Only used in apiary to api communication.\",\n \"type\": \"string\"\n - \ },\n \"imageBytes\": {\n \"type\": \"string\",\n \"format\": - \"byte\",\n \"description\": \"The bytes the uploaded image. Only - used in api to youtube communication.\"\n },\n \"position\": - {\n \"$ref\": \"InvideoPosition\",\n \"description\": \"The - spatial position within the video where the branding watermark will be displayed.\"\n - \ },\n \"targetChannelId\": {\n \"description\": \"The - channel to which this branding links. If not present it defaults to the current - channel.\",\n \"type\": \"string\"\n }\n },\n \"description\": - \"LINT.IfChange Describes an invideo branding.\",\n \"type\": \"object\",\n - \ \"id\": \"InvideoBranding\"\n },\n \"SubscriptionListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Subscription\"\n },\n \"description\": \"A list of subscriptions - that match the request criteria.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"visitorId\": - {\n \"description\": \"The visitorId identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#subscriptionListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n - \ },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n - \ \"prevPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\",\n \"type\": \"string\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"SubscriptionListResponse\"\n - \ },\n \"LiveStreamListResponse\": {\n \"id\": \"LiveStreamListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#liveStreamListResponse\\\".\",\n \"default\": - \"youtube#liveStreamListResponse\",\n \"type\": \"string\"\n },\n - \ \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of live streams that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"LiveStream\"\n }\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"MembershipsDetails\": {\n \"properties\": - {\n \"highestAccessibleLevelDisplayName\": {\n \"description\": - \"Display name for the highest level that the user has access to at the moment.\",\n - \ \"type\": \"string\"\n },\n \"highestAccessibleLevel\": - {\n \"type\": \"string\",\n \"description\": \"Id of the - highest level that the user has access to at the moment.\"\n },\n \"membershipsDurationAtLevels\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"MembershipsDurationAtLevel\"\n },\n \"description\": \"Data - about memberships duration on particular pricing levels.\"\n },\n \"accessibleLevels\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"Ids of all levels that the user has access to. - This includes the currently active level and all other levels that are included - because of a higher purchase.\",\n \"type\": \"array\"\n },\n - \ \"membershipsDuration\": {\n \"$ref\": \"MembershipsDuration\",\n - \ \"description\": \"Data about memberships duration without taking - into consideration pricing levels.\"\n }\n },\n \"id\": \"MembershipsDetails\",\n - \ \"type\": \"object\"\n },\n \"ChannelSectionContentDetails\": - {\n \"properties\": {\n \"playlists\": {\n \"description\": - \"The playlist ids for type single_playlist and multiple_playlists. For singlePlaylist, - only one playlistId is allowed.\",\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"channels\": - {\n \"description\": \"The channel ids for type multiple_channels.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"ChannelSectionContentDetails\",\n \"description\": \"Details - about a channelsection, including playlists and channels.\"\n },\n \"SearchResultSnippet\": - {\n \"type\": \"object\",\n \"description\": \"Basic details about - a search result, including title, description and thumbnails of the item referenced - by the search result.\",\n \"properties\": {\n \"channelTitle\": - {\n \"type\": \"string\",\n \"description\": \"The title - of the channel that published the resource that the search result identifies.\"\n - \ },\n \"publishedAt\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The creation - date and time of the resource that the search result identifies.\"\n },\n - \ \"description\": {\n \"description\": \"A description of - the search result.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the channel that published the resource that the search result identifies.\",\n - \ \"type\": \"string\"\n },\n \"thumbnails\": {\n \"$ref\": - \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images - associated with the search result. 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.\"\n },\n \"title\": {\n - \ \"type\": \"string\",\n \"description\": \"The title of - the search result.\"\n },\n \"liveBroadcastContent\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n \"The - live broadcast is active.\",\n \"The live broadcast has been completed.\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"It indicates if the resource (video or channel) has upcoming/active live - broadcast content. Or it's \\\"none\\\" if there is not any upcoming/active - live broadcasts.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ]\n }\n - \ },\n \"id\": \"SearchResultSnippet\"\n },\n \"VideoLocalization\": - {\n \"type\": \"object\",\n \"properties\": {\n \"title\": - {\n \"description\": \"Localized version of the video's title.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"Localized version of the video's description.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"VideoLocalization\",\n \"description\": - \"Localized versions of certain video properties (e.g. title).\"\n },\n - \ \"LevelDetails\": {\n \"type\": \"object\",\n \"properties\": - {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": - \"The name that should be used when referring to this level.\"\n }\n - \ },\n \"id\": \"LevelDetails\"\n },\n \"VideoSuggestions\": - {\n \"id\": \"VideoSuggestions\",\n \"type\": \"object\",\n \"properties\": - {\n \"processingHints\": {\n \"description\": \"A list of - suggestions that may improve YouTube's ability to process the video.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"enum\": - [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n - \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n - \ \"hdrVideo\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"The MP4 file is not streamable, - this will slow down the processing. MOOV atom was not found at the beginning - of the file.\",\n \"Probably a better quality version of the - video exists. The video has wide screen aspect ratio, but is not an HD video.\",\n - \ \"Uploaded video is spherical video.\",\n \"Uploaded - video has spatial audio.\",\n \"Uploaded video is VR video.\",\n - \ \"Uploaded video is HDR video.\"\n ]\n }\n - \ },\n \"processingWarnings\": {\n \"items\": {\n \"type\": - \"string\",\n \"enum\": [\n \"unknownContainer\",\n - \ \"unknownVideoCodec\",\n \"unknownAudioCodec\",\n - \ \"inconsistentResolution\",\n \"hasEditlist\",\n - \ \"problematicVideoCodec\",\n \"problematicAudioCodec\",\n - \ \"unsupportedVrStereoMode\",\n \"unsupportedSphericalProjectionType\",\n - \ \"unsupportedHdrPixelFormat\",\n \"unsupportedHdrColorMetadata\",\n - \ \"problematicHdrLookupTable\"\n ],\n \"enumDescriptions\": - [\n \"Unrecognized file format, transcoding is likely to fail.\",\n - \ \"Unrecognized video codec, transcoding is likely to fail.\",\n - \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n - \ \"Conflicting container and stream resolutions.\",\n \"Edit - lists are not currently supported.\",\n \"Video codec that is - known to cause problems was used.\",\n \"Audio codec that is - known to cause problems was used.\",\n \"Unsupported VR video - stereo mode.\",\n \"Unsupported spherical video projection type.\",\n - \ \"Unsupported HDR pixel format.\",\n \"Unspecified - HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n - \ ]\n },\n \"type\": \"array\",\n \"description\": - \"A list of reasons why YouTube may have difficulty transcoding the uploaded - video or that might result in an erroneous transcoding. These warnings are - generated before YouTube actually processes the uploaded video file. In addition, - they identify issues that are unlikely to cause the video processing to fail - but that might cause problems such as sync issues, video artifacts, or a missing - audio track.\"\n },\n \"processingErrors\": {\n \"type\": - \"array\",\n \"items\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"File contains audio only (e.g., an MP3 file).\",\n \"Image - file (e.g., a JPEG image).\",\n \"Movie project file (e.g., Microsoft - Windows Movie Maker project).\",\n \"Other non-video file.\",\n - \ \"Document or text file (e.g., MS Word document).\",\n \"An - archive file (e.g., a ZIP archive).\",\n \"Unsupported spatial - audio layout type.\"\n ],\n \"enum\": [\n \"audioFile\",\n - \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n - \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n - \ ]\n },\n \"description\": \"A list of errors - that will prevent YouTube from successfully processing the uploaded video - video. These errors indicate that, regardless of the video's current processing - status, eventually, that status will almost certainly be failed.\"\n },\n - \ \"editorSuggestions\": {\n \"description\": \"A list of video - editing operations that might improve the video quality or playback experience - of the uploaded video.\",\n \"type\": \"array\",\n \"items\": - {\n \"enumDescriptions\": [\n \"Picture brightness - levels seem off and could be corrected.\",\n \"The video appears - shaky and could be stabilized.\",\n \"Margins (mattes) detected - around the picture could be cropped.\",\n \"The audio track appears - silent and could be swapped with a better quality one.\"\n ],\n - \ \"enum\": [\n \"videoAutoLevels\",\n \"videoStabilize\",\n - \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n - \ \"type\": \"string\"\n }\n },\n \"tagSuggestions\": - {\n \"type\": \"array\",\n \"description\": \"A list of - keyword tags that could be added to the video's metadata to increase the likelihood - that users will locate your video when searching or browsing on YouTube.\",\n - \ \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n - \ }\n }\n },\n \"description\": \"Specifies suggestions - on how to improve video content, including encoding hints, tag suggestions, - and editor suggestions.\"\n },\n \"CaptionListResponse\": {\n \"type\": - \"object\",\n \"id\": \"CaptionListResponse\",\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#captionListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\"\n - \ },\n \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"Caption\"\n },\n - \ \"description\": \"A list of captions that match the request criteria.\",\n - \ \"type\": \"array\"\n },\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveStreamConfigurationIssue\": {\n \"type\": \"object\",\n - \ \"properties\": {\n \"type\": {\n \"description\": \"The - kind of error happening.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"gopSizeOver\",\n \"gopSizeLong\",\n \"gopSizeShort\",\n - \ \"openGop\",\n \"badContainer\",\n \"audioBitrateHigh\",\n - \ \"audioBitrateLow\",\n \"audioSampleRate\",\n \"bitrateHigh\",\n - \ \"bitrateLow\",\n \"audioCodec\",\n \"videoCodec\",\n - \ \"noAudioStream\",\n \"noVideoStream\",\n \"multipleVideoStreams\",\n - \ \"multipleAudioStreams\",\n \"audioTooManyChannels\",\n - \ \"interlacedVideo\",\n \"frameRateHigh\",\n \"resolutionMismatch\",\n - \ \"videoCodecMismatch\",\n \"videoInterlaceMismatch\",\n - \ \"videoProfileMismatch\",\n \"videoBitrateMismatch\",\n - \ \"framerateMismatch\",\n \"gopMismatch\",\n \"audioSampleRateMismatch\",\n - \ \"audioStereoMismatch\",\n \"audioCodecMismatch\",\n - \ \"audioBitrateMismatch\",\n \"videoResolutionSuboptimal\",\n - \ \"videoResolutionUnsupported\",\n \"videoIngestionStarved\",\n - \ \"videoIngestionFasterThanRealtime\"\n ]\n },\n - \ \"description\": {\n \"description\": \"The long-form description - of the issue and how to resolve it.\",\n \"type\": \"string\"\n },\n - \ \"severity\": {\n \"description\": \"How severe this issue - is to the stream.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"info\",\n \"warning\",\n \"error\"\n ],\n - \ \"type\": \"string\"\n },\n \"reason\": {\n \"type\": - \"string\",\n \"description\": \"The short-form reason for this issue.\"\n - \ }\n },\n \"id\": \"LiveStreamConfigurationIssue\"\n },\n - \ \"I18nRegionListResponse\": {\n \"properties\": {\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\",\n \"default\": - \"youtube#i18nRegionListResponse\",\n \"type\": \"string\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"items\": {\n \"description\": \"A list of regions where - YouTube is available. In this map, the i18n region ID is the map key, and - its value is the corresponding i18nRegion resource.\",\n \"items\": - {\n \"$ref\": \"I18nRegion\"\n },\n \"type\": - \"array\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"I18nRegionListResponse\"\n },\n \"PlaylistPlayer\": - {\n \"id\": \"PlaylistPlayer\",\n \"properties\": {\n \"embedHtml\": - {\n \"type\": \"string\",\n \"description\": \"An \\u003ciframe\\u003e - tag that embeds a player that will play the playlist.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"AccessPolicy\": {\n \"description\": - \"Rights management policy for YouTube resources.\",\n \"id\": \"AccessPolicy\",\n - \ \"properties\": {\n \"allowed\": {\n \"description\": - \"The value of allowed indicates whether the access to the policy is allowed - or denied by default.\",\n \"type\": \"boolean\"\n },\n \"exception\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of region - codes that identify countries where the default policy do not apply.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"AbuseType\": {\n \"type\": - \"object\",\n \"id\": \"AbuseType\",\n \"properties\": {\n \"id\": - {\n \"type\": \"string\"\n }\n }\n },\n \"CommentThreadReplies\": - {\n \"id\": \"CommentThreadReplies\",\n \"type\": \"object\",\n - \ \"description\": \"Comments written in (direct or indirect) reply to - the top level comment.\",\n \"properties\": {\n \"comments\": - {\n \"type\": \"array\",\n \"description\": \"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.\",\n \"items\": {\n \"$ref\": \"Comment\"\n - \ }\n }\n }\n },\n \"LiveBroadcast\": {\n \"description\": - \"A *liveBroadcast* resource represents an event that will be streamed, via - live video, on YouTube.\",\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube assigns to uniquely identify the broadcast.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveBroadcast\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#liveBroadcast\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the event, including its title, description, start time, and end time.\",\n - \ \"$ref\": \"LiveBroadcastSnippet\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object contains information - about the event's video content, such as whether the content can be shown - in an embedded video player or if it will be archived and therefore available - for viewing after the event has concluded.\",\n \"$ref\": \"LiveBroadcastContentDetails\"\n - \ },\n \"statistics\": {\n \"description\": \"The statistics - object contains info about the event's current stats. These include concurrent - viewers and total chat count. Statistics can change (in either direction) - during the lifetime of an event. Statistics are only returned while the event - is live.\",\n \"$ref\": \"LiveBroadcastStatistics\"\n },\n - \ \"status\": {\n \"$ref\": \"LiveBroadcastStatus\",\n \"description\": - \"The status object contains information about the event's status.\"\n }\n - \ },\n \"type\": \"object\",\n \"id\": \"LiveBroadcast\"\n },\n - \ \"ChannelStatistics\": {\n \"id\": \"ChannelStatistics\",\n \"type\": - \"object\",\n \"description\": \"Statistics about a channel: number of - subscribers, number of videos in the channel, etc.\",\n \"properties\": - {\n \"commentCount\": {\n \"format\": \"uint64\",\n \"description\": - \"The number of comments for the channel.\",\n \"type\": \"string\"\n - \ },\n \"viewCount\": {\n \"format\": \"uint64\",\n - \ \"description\": \"The number of times the channel has been viewed.\",\n - \ \"type\": \"string\"\n },\n \"subscriberCount\": {\n - \ \"description\": \"The number of subscribers that the channel has.\",\n - \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n - \ \"videoCount\": {\n \"type\": \"string\",\n \"description\": - \"The number of videos uploaded to the channel.\",\n \"format\": - \"uint64\"\n },\n \"hiddenSubscriberCount\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether or not the number of subscribers - is shown for this user.\"\n }\n }\n },\n \"ThumbnailDetails\": - {\n \"properties\": {\n \"high\": {\n \"$ref\": \"Thumbnail\",\n - \ \"description\": \"The high quality image for this resource.\"\n - \ },\n \"medium\": {\n \"description\": \"The medium - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"maxres\": {\n \"description\": \"The maximum resolution - quality image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"standard\": {\n \"description\": \"The standard quality - image for this resource.\",\n \"$ref\": \"Thumbnail\"\n },\n - \ \"default\": {\n \"description\": \"The default image for - this resource.\",\n \"$ref\": \"Thumbnail\"\n }\n },\n - \ \"id\": \"ThumbnailDetails\",\n \"type\": \"object\",\n \"description\": - \"Internal representation of thumbnails for a YouTube resource.\"\n },\n - \ \"PlaylistStatus\": {\n \"type\": \"object\",\n \"id\": \"PlaylistStatus\",\n - \ \"properties\": {\n \"privacyStatus\": {\n \"enum\": - [\n \"public\",\n \"unlisted\",\n \"private\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The playlist's privacy status.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ]\n }\n }\n },\n - \ \"ResourceId\": {\n \"properties\": {\n \"playlistId\": {\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the referred resource, if that resource is a playlist. This property is only - present if the resourceId.kind value is youtube#playlist.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"The type of the API resource.\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the referred resource, if that resource is a video. This - property is only present if the resourceId.kind value is youtube#video.\",\n - \ \"type\": \"string\"\n },\n \"channelId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the referred resource, if that resource is a channel. This property - is only present if the resourceId.kind value is youtube#channel.\"\n }\n - \ },\n \"description\": \"A resource id is a generic reference that - points to another YouTube resource.\",\n \"type\": \"object\",\n \"id\": - \"ResourceId\"\n },\n \"LocalizedString\": {\n \"id\": \"LocalizedString\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"value\": {\n - \ \"type\": \"string\"\n },\n \"language\": {\n \"type\": - \"string\"\n }\n }\n },\n \"CommentThreadListResponse\": - {\n \"id\": \"CommentThreadListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"default\": \"youtube#commentThreadListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#commentThreadListResponse\\\".\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"type\": \"array\",\n \"description\": - \"A list of comment threads that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"CommentThread\"\n }\n }\n }\n - \ },\n \"LiveStreamStatus\": {\n \"type\": \"object\",\n \"id\": - \"LiveStreamStatus\",\n \"description\": \"Brief description of the live - stream status.\",\n \"properties\": {\n \"healthStatus\": {\n - \ \"description\": \"The health status of the stream.\",\n \"$ref\": - \"LiveStreamHealthStatus\"\n },\n \"streamStatus\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"created\",\n \"ready\",\n \"active\",\n - \ \"inactive\",\n \"error\"\n ]\n }\n - \ }\n },\n \"PropertyValue\": {\n \"properties\": {\n \"property\": - {\n \"type\": \"string\",\n \"description\": \"A property.\"\n - \ },\n \"value\": {\n \"description\": \"The property's - value.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"PropertyValue\",\n \"description\": \"A pair Property / Value.\",\n - \ \"type\": \"object\"\n },\n \"VideoContentDetailsRegionRestriction\": - {\n \"description\": \"DEPRECATED Region restriction of the video.\",\n - \ \"type\": \"object\",\n \"id\": \"VideoContentDetailsRegionRestriction\",\n - \ \"properties\": {\n \"allowed\": {\n \"description\": - \"A list of region codes that identify countries where the video is viewable. - If this property is present and a country is not listed in its value, then - the video is blocked from appearing in that country. If this property is present - and contains an empty list, the video is blocked in all countries.\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n - \ },\n \"blocked\": {\n \"type\": \"array\",\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"A list of region codes that identify countries where the video is blocked. - If this property is present and a country is not listed in its value, then - the video is viewable in that country. If this property is present and contains - an empty list, the video is viewable in all countries.\"\n }\n }\n - \ },\n \"SubscriptionContentDetails\": {\n \"description\": \"Details - about the content to witch a subscription refers.\",\n \"properties\": - {\n \"activityType\": {\n \"description\": \"The type of activity - this subscription is for (only uploads, everything).\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"subscriptionActivityTypeUnspecified\",\n - \ \"all\",\n \"uploads\"\n ]\n },\n \"totalItemCount\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The approximate number of items that the subscription points to.\"\n },\n - \ \"newItemCount\": {\n \"description\": \"The number of new - items in the subscription since its content was last read.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"SubscriptionContentDetails\"\n },\n \"LiveChatMessage\": - {\n \"type\": \"object\",\n \"description\": \"A *liveChatMessage* - resource represents a chat message in a YouTube Live Chat.\",\n \"id\": - \"LiveChatMessage\",\n \"properties\": {\n \"etag\": {\n \"description\": - \"Etag of this resource.\",\n \"type\": \"string\"\n },\n - \ \"authorDetails\": {\n \"description\": \"The authorDetails - object contains basic details about the user that posted this message.\",\n - \ \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the message.\",\n \"$ref\": \"LiveChatMessageSnippet\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the message.\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\",\n - \ \"default\": \"youtube#liveChatMessage\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"Playlist\": {\n \"type\": \"object\",\n - \ \"id\": \"Playlist\",\n \"description\": \"A *playlist* resource - represents a YouTube playlist. A playlist is a collection of videos that can - be viewed sequentially and shared with other users. A playlist can contain - up to 200 videos, and YouTube does not limit the number of playlists that - each user creates. By default, playlists are publicly visible to other users, - but playlists can be public or private. YouTube also uses playlists to identify - special collections of videos for a channel, such as: - uploaded videos - - favorite videos - positively rated (liked) videos - watch history - watch - later To be more specific, these lists are associated with a channel, which - is a collection of a person, group, or company's videos, playlists, and other - YouTube information. You can retrieve the playlist IDs for each of these lists - from the channel resource for a given channel. You can then use the playlistItems.list - method to retrieve any of those lists. You can also add or remove items from - those lists by calling the playlistItems.insert and playlistItems.delete methods.\",\n - \ \"properties\": {\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"PlaylistLocalization\"\n },\n \"type\": - \"object\",\n \"description\": \"Localizations for different languages\"\n - \ },\n \"status\": {\n \"description\": \"The status - object contains status information for the playlist.\",\n \"$ref\": - \"PlaylistStatus\"\n },\n \"contentDetails\": {\n \"description\": - \"The contentDetails object contains information like video count.\",\n \"$ref\": - \"PlaylistContentDetails\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the playlist.\"\n },\n - \ \"player\": {\n \"$ref\": \"PlaylistPlayer\",\n \"description\": - \"The player object contains information that you would use to play the playlist - in an embedded player.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the playlist, such as its - title and description.\",\n \"$ref\": \"PlaylistSnippet\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n - \ \"default\": \"youtube#playlist\"\n }\n }\n },\n - \ \"LiveChatTextMessageDetails\": {\n \"properties\": {\n \"messageText\": - {\n \"type\": \"string\",\n \"description\": \"The user's - message.\"\n }\n },\n \"id\": \"LiveChatTextMessageDetails\",\n - \ \"type\": \"object\"\n },\n \"LiveChatNewSponsorDetails\": {\n - \ \"properties\": {\n \"memberLevelName\": {\n \"type\": - \"string\",\n \"description\": \"The name of the Level that the viewer - just had joined. The Level names are defined by the YouTube channel offering - the Membership. In some situations this field isn't filled.\"\n },\n - \ \"isUpgrade\": {\n \"description\": \"If the viewer just - had upgraded from a lower level. For viewers that were not members at the - time of purchase, this field is false.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatNewSponsorDetails\"\n - \ },\n \"WatchSettings\": {\n \"id\": \"WatchSettings\",\n \"type\": - \"object\",\n \"properties\": {\n \"textColor\": {\n \"type\": - \"string\",\n \"description\": \"The background color for the video - watch page's branded area.\"\n },\n \"featuredPlaylistId\": - {\n \"type\": \"string\",\n \"description\": \"An ID that - uniquely identifies a playlist that displays next to the video player.\"\n - \ },\n \"backgroundColor\": {\n \"type\": \"string\",\n - \ \"description\": \"The text color for the video watch page's branded - area.\"\n }\n },\n \"description\": \"Branding properties - for the watch. All deprecated.\"\n },\n \"MembershipsDurationAtLevel\": - {\n \"properties\": {\n \"memberSince\": {\n \"description\": - \"The date and time when the user became a continuous member for the given - level.\",\n \"type\": \"string\"\n },\n \"memberTotalDurationMonths\": - {\n \"type\": \"integer\",\n \"description\": \"The cumulative - time the user has been a member for the given level in complete months (the - time is rounded down to the nearest integer).\",\n \"format\": \"int32\"\n - \ },\n \"level\": {\n \"type\": \"string\",\n \"description\": - \"Pricing level ID.\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"MembershipsDurationAtLevel\"\n },\n \"ActivityContentDetailsSubscription\": - {\n \"description\": \"Information about a channel that a user subscribed - to.\",\n \"properties\": {\n \"resourceId\": {\n \"$ref\": - \"ResourceId\",\n \"description\": \"The resourceId object contains - information that identifies the resource that the user subscribed to.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsSubscription\"\n - \ },\n \"InvideoPosition\": {\n \"properties\": {\n \"type\": - {\n \"enumDescriptions\": [\n \"\"\n ],\n \"description\": - \"Defines the position type.\",\n \"type\": \"string\",\n \"enum\": - [\n \"corner\"\n ]\n },\n \"cornerPosition\": - {\n \"description\": \"Describes in which corner of the video the - visual widget will appear.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"topLeft\",\n \"topRight\",\n \"bottomLeft\",\n - \ \"bottomRight\"\n ],\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"InvideoPosition\",\n \"description\": - \"Describes the spatial position of a visual widget inside a video. It is - a union of various position types, out of which only will be set one.\",\n - \ \"type\": \"object\"\n },\n \"Channel\": {\n \"id\": \"Channel\",\n - \ \"type\": \"object\",\n \"description\": \"A *channel* resource - contains information about a YouTube channel.\",\n \"properties\": {\n - \ \"contentOwnerDetails\": {\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n - \ },\n \"topicDetails\": {\n \"$ref\": \"ChannelTopicDetails\",\n - \ \"description\": \"The topicDetails object encapsulates information - about Freebase topics associated with the channel.\"\n },\n \"contentDetails\": - {\n \"description\": \"The contentDetails object encapsulates information - about the channel's content.\",\n \"$ref\": \"ChannelContentDetails\"\n - \ },\n \"status\": {\n \"$ref\": \"ChannelStatus\",\n - \ \"description\": \"The status object encapsulates information about - the privacy status of the channel.\"\n },\n \"auditDetails\": - {\n \"description\": \"The auditionDetails object encapsulates channel - data that is relevant for YouTube Partners during the audition process.\",\n - \ \"$ref\": \"ChannelAuditDetails\"\n },\n \"statistics\": - {\n \"description\": \"The statistics object encapsulates statistics - for the channel.\",\n \"$ref\": \"ChannelStatistics\"\n },\n - \ \"conversionPings\": {\n \"description\": \"The conversionPings - object encapsulates information about conversion pings that need to be respected - by the channel.\",\n \"$ref\": \"ChannelConversionPings\"\n },\n - \ \"localizations\": {\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelLocalization\"\n },\n \"description\": - \"Localizations for different languages\"\n },\n \"brandingSettings\": - {\n \"$ref\": \"ChannelBrandingSettings\",\n \"description\": - \"The brandingSettings object encapsulates information about the branding - of the channel.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the channel, such as its - title, description, and thumbnail images.\",\n \"$ref\": \"ChannelSnippet\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the channel.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channel\\\".\",\n \"default\": - \"youtube#channel\"\n }\n }\n },\n \"LiveStreamSnippet\": - {\n \"type\": \"object\",\n \"id\": \"LiveStreamSnippet\",\n \"properties\": - {\n \"isDefaultStream\": {\n \"type\": \"boolean\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The stream's title. The value must be between 1 and 128 characters long.\",\n - \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n - \ \"youtube.liveStreams.update\"\n ]\n }\n - \ },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The stream's description. The value cannot be - longer than 10000 characters.\"\n },\n \"publishedAt\": {\n - \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the stream was created.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the channel that is transmitting the stream.\"\n - \ }\n }\n },\n \"LiveChatModerator\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the moderator.\",\n \"$ref\": - \"LiveChatModeratorSnippet\"\n },\n \"kind\": {\n \"default\": - \"youtube#liveChatModerator\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#liveChatModerator\\\".\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the moderator.\"\n }\n - \ },\n \"id\": \"LiveChatModerator\",\n \"description\": \"A - *liveChatModerator* resource represents a moderator for a YouTube live chat. - A chat moderator has the ability to ban/unban users from a chat, remove message, - etc.\",\n \"type\": \"object\"\n },\n \"VideoStatus\": {\n \"description\": - \"Basic details about a video category, such as its localized title. Next - Id: 18\",\n \"type\": \"object\",\n \"properties\": {\n \"license\": - {\n \"description\": \"The video's license. @mutable youtube.videos.insert - youtube.videos.update\",\n \"enum\": [\n \"youtube\",\n - \ \"creativeCommon\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\"\n },\n \"privacyStatus\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"public\",\n \"unlisted\",\n - \ \"private\"\n ],\n \"description\": \"The video's - privacy status.\",\n \"type\": \"string\"\n },\n \"embeddable\": - {\n \"description\": \"This value indicates if the video can be embedded - on another website. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"boolean\"\n },\n \"rejectionReason\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"Copyright - infringement.\",\n \"Inappropriate video content.\",\n \"Duplicate - upload in the same channel.\",\n \"Terms of use violation.\",\n - \ \"Uploader account was suspended.\",\n \"Video duration - was too long.\",\n \"Blocked by content owner.\",\n \"Uploader - closed his/her account.\",\n \"Trademark infringement.\",\n \"An - unspecified legal reason.\"\n ],\n \"description\": \"This - value explains why YouTube rejected an uploaded video. This property is only - present if the uploadStatus property indicates that the upload was rejected.\",\n - \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n - \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n - \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n - \ \"trademark\",\n \"legal\"\n ]\n },\n - \ \"uploadStatus\": {\n \"description\": \"The status of the - uploaded video.\",\n \"enum\": [\n \"uploaded\",\n \"processed\",\n - \ \"failed\",\n \"rejected\",\n \"deleted\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Video has been uploaded but not processed yet.\",\n \"Video - has been successfully processed.\",\n \"Processing has failed. - See FailureReason.\",\n \"Video has been rejected. See RejectionReason.\",\n - \ \"Video has been deleted.\"\n ]\n },\n \"selfDeclaredMadeForKids\": - {\n \"type\": \"boolean\"\n },\n \"madeForKids\": {\n - \ \"type\": \"boolean\"\n },\n \"publicStatsViewable\": - {\n \"type\": \"boolean\",\n \"description\": \"This value - indicates if the extended video statistics on the watch page can be viewed - by everyone. Note that the view count, likes, etc will still be visible if - this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n - \ },\n \"publishAt\": {\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time when the video is scheduled - to publish. It can be set only if the privacy status of the video is private..\",\n - \ \"type\": \"string\"\n },\n \"failureReason\": {\n - \ \"description\": \"This value explains why a video failed to upload. - This property is only present if the uploadStatus property indicates that - the upload failed.\",\n \"type\": \"string\",\n \"enum\": - [\n \"conversion\",\n \"invalidFile\",\n \"emptyFile\",\n - \ \"tooSmall\",\n \"codec\",\n \"uploadAborted\"\n - \ ],\n \"enumDescriptions\": [\n \"Unable to convert - video content.\",\n \"Invalid file format.\",\n \"Empty - file.\",\n \"File was too small.\",\n \"Unsupported - codec.\",\n \"Upload wasn't finished.\"\n ]\n }\n - \ },\n \"id\": \"VideoStatus\"\n },\n \"SubscriptionSubscriberSnippet\": - {\n \"type\": \"object\",\n \"id\": \"SubscriptionSubscriberSnippet\",\n - \ \"properties\": {\n \"thumbnails\": {\n \"description\": - \"Thumbnails for this subscriber.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the subscriber.\"\n },\n \"description\": {\n - \ \"description\": \"The description of the subscriber.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The channel ID of the subscriber.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Basic details about a subscription's subscriber - including title, description, channel ID and thumbnails.\"\n },\n \"LiveChatModeratorSnippet\": - {\n \"properties\": {\n \"moderatorDetails\": {\n \"$ref\": - \"ChannelProfileDetails\",\n \"description\": \"Details about the - moderator.\"\n },\n \"liveChatId\": {\n \"description\": - \"The ID of the live chat this moderator can act on.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"LiveChatModeratorSnippet\"\n },\n \"ChannelBannerResource\": {\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#channelBannerResource\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\"\n - \ },\n \"url\": {\n \"description\": \"The URL of this - banner image.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ChannelBannerResource\",\n \"type\": \"object\",\n \"description\": - \"A channel banner returned as the response to a channel_banner.insert call.\"\n - \ },\n \"SubscriptionSnippet\": {\n \"description\": \"Basic details - about a subscription, including title, description and thumbnails of the subscribed - item.\",\n \"type\": \"object\",\n \"properties\": {\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the subscriber's channel.\"\n },\n - \ \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"annotations\": - {\n \"required\": [\n \"youtube.subscriptions.insert\"\n - \ ]\n },\n \"description\": \"The id object contains - information about the channel that the user subscribed to.\"\n },\n - \ \"publishedAt\": {\n \"format\": \"date-time\",\n \"type\": - \"string\",\n \"description\": \"The date and time that the subscription - was created.\"\n },\n \"title\": {\n \"description\": - \"The subscription's title.\",\n \"type\": \"string\"\n },\n - \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": - \"A map of thumbnail images associated with the video. 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.\"\n },\n \"description\": - {\n \"description\": \"The subscription's details.\",\n \"type\": - \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n - \ \"description\": \"Channel title for the channel that the subscription - belongs to.\"\n }\n },\n \"id\": \"SubscriptionSnippet\"\n - \ },\n \"LanguageTag\": {\n \"type\": \"object\",\n \"id\": - \"LanguageTag\",\n \"properties\": {\n \"value\": {\n \"type\": - \"string\"\n }\n }\n },\n \"VideoSnippet\": {\n \"id\": - \"VideoSnippet\",\n \"description\": \"Basic details about a video, including - title, description, uploader, thumbnails and category.\",\n \"properties\": - {\n \"thumbnails\": {\n \"description\": \"A map of thumbnail - images associated with the video. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"localized\": {\n \"$ref\": \"VideoLocalization\",\n - \ \"description\": \"Localized snippet selected with the hl parameter. - If no such localization exists, this field is populated with the default snippet. - (Read-only)\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the video - was uploaded.\",\n \"type\": \"string\"\n },\n \"defaultAudioLanguage\": - {\n \"description\": \"The default_audio_language property specifies - the language spoken in the video's default audio track.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel that the video was uploaded to.\"\n },\n \"liveBroadcastContent\": - {\n \"enum\": [\n \"none\",\n \"upcoming\",\n - \ \"live\",\n \"completed\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"The - live broadcast is upcoming.\",\n \"The live broadcast is active.\",\n - \ \"The live broadcast has been completed.\"\n ],\n \"description\": - \"Indicates if the video is an upcoming/active live broadcast. Or it's \\\"none\\\" - if the video is not an upcoming/active live broadcast.\"\n },\n \"defaultLanguage\": - {\n \"description\": \"The language of the videos's default snippet.\",\n - \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": - \"The video's description. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"title\": {\n \"description\": - \"The video's title. @mutable youtube.videos.insert youtube.videos.update\",\n - \ \"type\": \"string\"\n },\n \"channelTitle\": {\n - \ \"description\": \"Channel title for the channel that the video - belongs to.\",\n \"type\": \"string\"\n },\n \"categoryId\": - {\n \"description\": \"The YouTube video category associated with - the video.\",\n \"type\": \"string\"\n },\n \"tags\": - {\n \"type\": \"array\",\n \"description\": \"A list of - keyword tags associated with the video. Tags may contain spaces.\",\n \"items\": - {\n \"type\": \"string\"\n }\n }\n },\n \"type\": - \"object\"\n },\n \"ChannelAuditDetails\": {\n \"id\": \"ChannelAuditDetails\",\n - \ \"type\": \"object\",\n \"description\": \"The auditDetails object - encapsulates channel data that is relevant for YouTube Partners during the - audit process.\",\n \"properties\": {\n \"contentIdClaimsGoodStanding\": - {\n \"description\": \"Whether or not the channel has any unresolved - claims.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel respects the community guidelines.\"\n },\n \"copyrightStrikesGoodStanding\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - or not the channel has any copyright strikes.\"\n }\n }\n },\n - \ \"ActivityContentDetailsSocial\": {\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetailsSocial\",\n \"properties\": {\n \"author\": - {\n \"type\": \"string\",\n \"description\": \"The author - of the social network post.\"\n },\n \"type\": {\n \"enum\": - [\n \"unspecified\",\n \"googlePlus\",\n \"facebook\",\n - \ \"twitter\"\n ],\n \"description\": \"The name - of the social network.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object encapsulates information that identifies the resource - associated with a social network post.\",\n \"$ref\": \"ResourceId\"\n - \ },\n \"imageUrl\": {\n \"description\": \"An image - of the post's author.\",\n \"type\": \"string\"\n },\n \"referenceUrl\": - {\n \"type\": \"string\",\n \"description\": \"The URL of - the social network post.\"\n }\n },\n \"description\": \"Details - about a social network post.\"\n },\n \"ActivityContentDetails\": {\n - \ \"properties\": {\n \"upload\": {\n \"description\": - \"The upload object contains information about the uploaded video. This property - is only present if the snippet.type is upload.\",\n \"$ref\": \"ActivityContentDetailsUpload\"\n - \ },\n \"favorite\": {\n \"$ref\": \"ActivityContentDetailsFavorite\",\n - \ \"description\": \"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.\"\n },\n \"comment\": {\n \"description\": - \"The comment object contains information about a resource that received a - comment. This property is only present if the snippet.type is comment.\",\n - \ \"$ref\": \"ActivityContentDetailsComment\"\n },\n \"playlistItem\": - {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n \"description\": - \"The playlistItem object contains information about a new playlist item. - This property is only present if the snippet.type is playlistItem.\"\n },\n - \ \"channelItem\": {\n \"$ref\": \"ActivityContentDetailsChannelItem\",\n - \ \"description\": \"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.\"\n },\n \"social\": {\n \"$ref\": - \"ActivityContentDetailsSocial\",\n \"description\": \"The social - object contains details about a social network post. This property is only - present if the snippet.type is social.\"\n },\n \"promotedItem\": - {\n \"description\": \"The promotedItem object contains details about - a resource which is being promoted. This property is only present if the snippet.type - is promotedItem.\",\n \"$ref\": \"ActivityContentDetailsPromotedItem\"\n - \ },\n \"bulletin\": {\n \"$ref\": \"ActivityContentDetailsBulletin\",\n - \ \"description\": \"The bulletin object contains details about a - channel bulletin post. This object is only present if the snippet.type is - bulletin.\"\n },\n \"like\": {\n \"$ref\": \"ActivityContentDetailsLike\",\n - \ \"description\": \"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.\"\n },\n \"recommendation\": {\n - \ \"$ref\": \"ActivityContentDetailsRecommendation\",\n \"description\": - \"The recommendation object contains information about a recommended resource. - This property is only present if the snippet.type is recommendation.\"\n },\n - \ \"subscription\": {\n \"description\": \"The subscription - object contains information about a channel that a user subscribed to. This - property is only present if the snippet.type is subscription.\",\n \"$ref\": - \"ActivityContentDetailsSubscription\"\n }\n },\n \"description\": - \"Details about the content of an activity: the video that was shared, the - channel that was subscribed to, etc.\",\n \"type\": \"object\",\n \"id\": - \"ActivityContentDetails\"\n },\n \"ChannelConversionPings\": {\n \"description\": - \"The conversionPings object encapsulates information about conversion pings - that need to be respected by the channel.\",\n \"type\": \"object\",\n - \ \"id\": \"ChannelConversionPings\",\n \"properties\": {\n \"pings\": - {\n \"type\": \"array\",\n \"description\": \"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.\",\n - \ \"items\": {\n \"$ref\": \"ChannelConversionPing\"\n - \ }\n }\n }\n },\n \"ActivitySnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"description\": {\n \"type\": - \"string\",\n \"description\": \"The description of the resource - primarily associated with the activity. @mutable youtube.activities.insert\"\n - \ },\n \"type\": {\n \"type\": \"string\",\n \"enum\": - [\n \"typeUnspecified\",\n \"upload\",\n \"like\",\n - \ \"favorite\",\n \"comment\",\n \"subscription\",\n - \ \"playlistItem\",\n \"recommendation\",\n \"bulletin\",\n - \ \"social\",\n \"channelItem\",\n \"promotedItem\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The type of activity that the resource describes.\"\n },\n \"publishedAt\": - {\n \"format\": \"date-time\",\n \"description\": \"The - date and time that the video was uploaded.\",\n \"type\": \"string\"\n - \ },\n \"channelTitle\": {\n \"description\": \"Channel - title for the channel responsible for this activity\",\n \"type\": - \"string\"\n },\n \"thumbnails\": {\n \"description\": - \"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.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"title\": {\n \"type\": \"string\",\n \"description\": - \"The title of the resource primarily associated with the activity.\"\n },\n - \ \"groupId\": {\n \"description\": \"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.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the channel associated with the activity.\"\n }\n },\n \"description\": - \"Basic details about an activity, including title, description, thumbnails, - activity type and group. Next ID: 12\",\n \"id\": \"ActivitySnippet\"\n - \ },\n \"ChannelBrandingSettings\": {\n \"description\": \"Branding - properties of a YouTube channel.\",\n \"properties\": {\n \"image\": - {\n \"description\": \"Branding properties for branding images.\",\n - \ \"$ref\": \"ImageSettings\"\n },\n \"watch\": {\n - \ \"description\": \"Branding properties for the watch page.\",\n - \ \"$ref\": \"WatchSettings\"\n },\n \"hints\": {\n - \ \"description\": \"Additional experimental branding properties.\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"PropertyValue\"\n }\n },\n \"channel\": {\n \"description\": - \"Branding properties for the channel view.\",\n \"$ref\": \"ChannelSettings\"\n - \ }\n },\n \"id\": \"ChannelBrandingSettings\",\n \"type\": - \"object\"\n },\n \"PlaylistContentDetails\": {\n \"properties\": - {\n \"itemCount\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The number of videos in the playlist.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"PlaylistContentDetails\"\n - \ },\n \"ChannelTopicDetails\": {\n \"properties\": {\n \"topicIds\": - {\n \"description\": \"A list of Freebase topic IDs associated with - the channel. You can retrieve information about each topic using the Freebase - Topic API.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"topicCategories\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n - \ \"description\": \"A list of Wikipedia URLs that describe the channel's - content.\"\n }\n },\n \"id\": \"ChannelTopicDetails\",\n - \ \"description\": \"Freebase topic information related to the channel.\",\n - \ \"type\": \"object\"\n },\n \"ChannelProfileDetails\": {\n \"id\": - \"ChannelProfileDetails\",\n \"type\": \"object\",\n \"properties\": - {\n \"profileImageUrl\": {\n \"description\": \"The channels's - avatar URL.\",\n \"type\": \"string\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"The YouTube - channel ID.\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"displayName\": - {\n \"type\": \"string\",\n \"description\": \"The channel's - display name.\"\n }\n }\n },\n \"VideoAgeGating\": {\n \"id\": - \"VideoAgeGating\",\n \"properties\": {\n \"restricted\": {\n - \ \"type\": \"boolean\",\n \"description\": \"Age-restricted - trailers. For redband trailers and adult-rated video-games. Only users aged - 18+ can view the content. The the field is true the content is restricted - to viewers aged 18+. Otherwise The field won't be present.\"\n },\n - \ \"alcoholContent\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether or not the video has alcoholic beverage content. Only - users of legal purchasing age in a particular country, as identified by ICAP, - can view the content.\"\n },\n \"videoGameRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"enum\": [\n \"anyone\",\n \"m15Plus\",\n - \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"type\": - \"string\",\n \"description\": \"Video game rating, if any.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"CommentListResponse\": - {\n \"id\": \"CommentListResponse\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#commentListResponse\\\".\",\n \"default\": - \"youtube#commentListResponse\",\n \"type\": \"string\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"description\": - \"A list of comments that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"Comment\"\n },\n \"type\": \"array\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ThumbnailSetResponse\": - {\n \"id\": \"ThumbnailSetResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"type\": \"array\",\n \"description\": - \"A list of thumbnails.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"kind\": - {\n \"default\": \"youtube#thumbnailSetResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thumbnailSetResponse\\\".\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LiveBroadcastContentDetails\": - {\n \"description\": \"Detailed settings of a broadcast.\",\n \"properties\": - {\n \"enableContentEncryption\": {\n \"description\": \"This - setting indicates whether YouTube should enable content encryption for the - broadcast.\",\n \"type\": \"boolean\"\n },\n \"enableClosedCaptions\": - {\n \"description\": \"This setting indicates whether HTTP POST closed - captioning is enabled for this broadcast. The ingestion URL of the closed - captions is returned through the liveStreams API. This is mutually exclusive - with using the closed_captions_type property, and is equivalent to setting - closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\",\n \"type\": - \"boolean\"\n },\n \"stereoLayout\": {\n \"description\": - \"The 3D stereo layout of this broadcast. This defaults to mono.\",\n \"enum\": - [\n \"stereoLayoutUnspecified\",\n \"mono\",\n \"leftRight\",\n - \ \"topBottom\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"mesh\": - {\n \"type\": \"string\",\n \"format\": \"byte\",\n \"description\": - \"The mesh for projecting the video if projection is mesh. The mesh value - must be a UTF-8 string containing the base-64 encoding of 3D mesh data that - follows the Spherical Video V2 RFC specification for an mshp box, excluding - the box size and type but including the following four reserved zero bytes - for the version and flags.\"\n },\n \"recordFromStart\": {\n - \ \"description\": \"Automatically start recording after the event - goes live. The default value for this property is true. *Important:* You must - also set the enableDvr property's value to true if you want the playback to - be available immediately after the broadcast ends. If you set this property's - value to true but do not also set the enableDvr property to true, there may - be a delay of around one day before the archived video will be available for - playback.\",\n \"type\": \"boolean\"\n },\n \"boundStreamLastUpdateTimeMs\": - {\n \"format\": \"date-time\",\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the live stream referenced - by boundStreamId was last updated.\"\n },\n \"boundStreamId\": - {\n \"type\": \"string\",\n \"description\": \"This value - uniquely identifies the live stream bound to the broadcast.\"\n },\n - \ \"latencyPreference\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"Best for: highest quality viewer playbacks and higher resolutions.\",\n - \ \"Best for: near real-time interaction, with minimal playback - buffering.\",\n \"Best for: real-time interaction Does not support: - Closed captions, 1440p, and 4k resolutions\"\n ],\n \"description\": - \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL - should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true - LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enum\": - [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n - \ \"low\",\n \"ultraLow\"\n ],\n \"type\": - \"string\"\n },\n \"projection\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The projection format of this broadcast. This defaults to rectangular.\",\n - \ \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n - \ \"360\",\n \"mesh\"\n ]\n },\n \"enableAutoStart\": - {\n \"type\": \"boolean\",\n \"description\": \"This setting - indicates whether auto start is enabled for this broadcast. The default value - for this property is false. This setting can only be used by Events.\"\n },\n - \ \"enableAutoStop\": {\n \"description\": \"This setting indicates - whether auto stop is enabled for this broadcast. The default value for this - property is false. This setting can only be used by Events.\",\n \"type\": - \"boolean\"\n },\n \"closedCaptionsType\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"closedCaptionsTypeUnspecified\",\n \"closedCaptionsDisabled\",\n - \ \"closedCaptionsHttpPost\",\n \"closedCaptionsEmbedded\"\n - \ ]\n },\n \"monitorStream\": {\n \"$ref\": - \"MonitorStreamInfo\",\n \"description\": \"The monitorStream object - contains information about the monitor stream, which the broadcaster can use - to review the event content before the broadcast stream is shown publicly.\"\n - \ },\n \"enableLowLatency\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Indicates whether this broadcast has low latency - enabled.\"\n },\n \"startWithSlate\": {\n \"description\": - \"This setting indicates whether the broadcast should automatically begin - with an in-stream slate when you update the broadcast's status to live. After - updating the status, you then need to send a liveCuepoints.insert request - that sets the cuepoint's eventState to end to remove the in-stream slate and - make your broadcast stream visible to viewers.\",\n \"type\": \"boolean\"\n - \ },\n \"enableEmbed\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting indicates whether the broadcast - video can be played in an embedded player. If you choose to archive the video - (using the enableArchive property), this setting will also apply to the archived - video.\"\n },\n \"enableDvr\": {\n \"type\": \"boolean\",\n - \ \"description\": \"This setting determines whether viewers can access - DVR controls while watching the video. DVR controls enable the viewer to control - the video playback experience by pausing, rewinding, or fast forwarding content. - The default value for this property is true. *Important:* You must set the - value to true and also set the enableArchive property's value to true if you - want to make playback available immediately after the broadcast ends.\"\n - \ }\n },\n \"id\": \"LiveBroadcastContentDetails\",\n \"type\": - \"object\"\n },\n \"LiveChatMessageListResponse\": {\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"offlineAt\": {\n \"description\": - \"The date and time when the underlying stream went offline.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"kind\": - {\n \"type\": \"string\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n - \ \"default\": \"youtube#liveChatMessageListResponse\"\n },\n - \ \"nextPageToken\": {\n \"type\": \"string\"\n },\n - \ \"pollingIntervalMillis\": {\n \"type\": \"integer\",\n \"format\": - \"uint32\",\n \"description\": \"The amount of time the client should - wait before polling again.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"items\": {\n \"$ref\": \"LiveChatMessage\"\n - \ }\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n \"description\": - \"General pagination information.\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"LiveChatMessageListResponse\"\n },\n \"ChannelSettings\": - {\n \"id\": \"ChannelSettings\",\n \"properties\": {\n \"featuredChannelsUrls\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"description\": \"The list of featured channels.\",\n \"type\": - \"array\"\n },\n \"featuredChannelsTitle\": {\n \"description\": - \"Title for the featured channels tab.\",\n \"type\": \"string\"\n - \ },\n \"title\": {\n \"description\": \"Specifies the - channel title.\",\n \"type\": \"string\"\n },\n \"defaultTab\": - {\n \"type\": \"string\",\n \"description\": \"Which content - tab users should see when viewing the channel.\"\n },\n \"profileColor\": - {\n \"description\": \"A prominent color that can be rendered on - this channel page.\",\n \"type\": \"string\"\n },\n \"moderateComments\": - {\n \"type\": \"boolean\",\n \"description\": \"Whether - user-submitted comments left on the channel page need to be approved by the - channel owner to be publicly visible.\"\n },\n \"trackingAnalyticsAccountId\": - {\n \"description\": \"The ID for a Google Analytics account to track - and measure traffic to the channels.\",\n \"type\": \"string\"\n - \ },\n \"country\": {\n \"type\": \"string\",\n \"description\": - \"The country of the channel.\"\n },\n \"defaultLanguage\": - {\n \"type\": \"string\"\n },\n \"description\": {\n - \ \"description\": \"Specifies the channel description.\",\n \"type\": - \"string\"\n },\n \"keywords\": {\n \"type\": \"string\",\n - \ \"description\": \"Lists keywords associated with the channel, comma-separated.\"\n - \ },\n \"showRelatedChannels\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether related channels should be proposed.\"\n - \ },\n \"unsubscribedTrailer\": {\n \"type\": \"string\",\n - \ \"description\": \"The trailer of the channel, for users that are - not subscribers.\"\n },\n \"showBrowseView\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the tab to browse the videos - should be displayed.\"\n }\n },\n \"type\": \"object\",\n - \ \"description\": \"Branding properties for the channel view.\"\n },\n - \ \"Video\": {\n \"description\": \"A *video* resource represents a - YouTube video.\",\n \"type\": \"object\",\n \"id\": \"Video\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"VideoSnippet\",\n - \ \"description\": \"The snippet object contains basic details about - the video, such as its title, description, and category.\"\n },\n \"statistics\": - {\n \"$ref\": \"VideoStatistics\",\n \"description\": \"The - statistics object contains statistics about the video.\"\n },\n \"suggestions\": - {\n \"description\": \"The suggestions object encapsulates suggestions - that identify opportunities to improve the video quality or the metadata for - the uploaded video. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoSuggestions\"\n },\n \"liveStreamingDetails\": - {\n \"$ref\": \"VideoLiveStreamingDetails\",\n \"description\": - \"The liveStreamingDetails object contains metadata about a live video broadcast. - The object will only be present in a video resource if the video is an upcoming, - live, or completed live broadcast.\"\n },\n \"processingDetails\": - {\n \"$ref\": \"VideoProcessingDetails\",\n \"description\": - \"The processingDetails object encapsulates information about YouTube's progress - in processing the uploaded video file. The properties in the object identify - the current processing status and an estimate of the time remaining until - YouTube finishes processing the video. This part also indicates whether different - types of data or content, such as file details or thumbnail images, are available - for the video. The processingProgress object is designed to be polled so that - the video uploaded can track the progress that YouTube has made in processing - the uploaded video file. This data can only be retrieved by the video owner.\"\n - \ },\n \"localizations\": {\n \"additionalProperties\": - {\n \"$ref\": \"VideoLocalization\"\n },\n \"description\": - \"The localizations object contains localized versions of the basic details - about the video, such as its title and description.\",\n \"type\": - \"object\"\n },\n \"kind\": {\n \"default\": \"youtube#video\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#video\\\".\",\n \"type\": \"string\"\n - \ },\n \"fileDetails\": {\n \"description\": \"The fileDetails - object encapsulates information about the video file that was uploaded to - YouTube, including the file's resolution, duration, audio and video codecs, - stream bitrates, and more. This data can only be retrieved by the video owner.\",\n - \ \"$ref\": \"VideoFileDetails\"\n },\n \"monetizationDetails\": - {\n \"description\": \"The monetizationDetails object encapsulates - information about the monetization status of the video.\",\n \"$ref\": - \"VideoMonetizationDetails\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.videos.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - uses to uniquely identify the video.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"topicDetails\": {\n \"$ref\": - \"VideoTopicDetails\",\n \"description\": \"The topicDetails object - encapsulates information about Freebase topics associated with the video.\"\n - \ },\n \"recordingDetails\": {\n \"description\": \"The - recordingDetails object encapsulates information about the location, date - and address where the video was recorded.\",\n \"$ref\": \"VideoRecordingDetails\"\n - \ },\n \"projectDetails\": {\n \"$ref\": \"VideoProjectDetails\",\n - \ \"description\": \"The projectDetails object contains information - about the project specific video metadata. b/157517979: This part was never - populated after it was added. However, it sees non-zero traffic because there - is generated client code in the wild that refers to it [1]. We keep this field - and do NOT remove it because otherwise V3 would return an error when this - part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n - \ },\n \"contentDetails\": {\n \"description\": \"The - contentDetails object contains information about the video content, including - the length of the video and its aspect ratio.\",\n \"$ref\": \"VideoContentDetails\"\n - \ },\n \"ageGating\": {\n \"$ref\": \"VideoAgeGating\",\n - \ \"description\": \"Age restriction details related to a video. This - data can only be retrieved by the video owner.\"\n },\n \"status\": - {\n \"description\": \"The status object contains information about - the video's uploading, processing, and privacy statuses.\",\n \"$ref\": - \"VideoStatus\"\n },\n \"player\": {\n \"$ref\": \"VideoPlayer\",\n - \ \"description\": \"The player object contains information that you - would use to play the video in an embedded player.\"\n }\n }\n - \ },\n \"ChannelSection\": {\n \"id\": \"ChannelSection\",\n \"properties\": - {\n \"localizations\": {\n \"description\": \"Localizations - for different languages\",\n \"type\": \"object\",\n \"additionalProperties\": - {\n \"$ref\": \"ChannelSectionLocalization\"\n }\n },\n - \ \"id\": {\n \"description\": \"The ID that YouTube uses to - uniquely identify the channel section.\",\n \"type\": \"string\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"targeting\": {\n \"$ref\": - \"ChannelSectionTargeting\",\n \"description\": \"The targeting object - contains basic targeting settings about the channel section.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"ChannelSectionSnippet\",\n \"description\": - \"The snippet object contains basic details about the channel section, such - as its type, style and title.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#channelSection\"\n - \ },\n \"contentDetails\": {\n \"$ref\": \"ChannelSectionContentDetails\",\n - \ \"description\": \"The contentDetails object contains details about - the channel section content, such as a list of playlists or channels featured - in the section.\"\n }\n },\n \"type\": \"object\"\n },\n - \ \"PlaylistItem\": {\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"status\": {\n \"$ref\": \"PlaylistItemStatus\",\n \"description\": - \"The status object contains information about the playlist item's privacy - status.\"\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"description\": \"The ID that YouTube uses to uniquely identify - the playlist item.\"\n },\n \"kind\": {\n \"default\": - \"youtube#playlistItem\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n - \ \"type\": \"string\"\n },\n \"snippet\": {\n \"$ref\": - \"PlaylistItemSnippet\",\n \"description\": \"The snippet object - contains basic details about the playlist item, such as its title and position - in the playlist.\"\n },\n \"contentDetails\": {\n \"$ref\": - \"PlaylistItemContentDetails\",\n \"description\": \"The contentDetails - object is included in the resource if the included item is a YouTube video. - The object contains additional information about the video.\"\n }\n - \ },\n \"id\": \"PlaylistItem\",\n \"type\": \"object\",\n \"description\": - \"A *playlistItem* resource identifies another resource, such as a video, - that is included in a playlist. In addition, the playlistItem resource contains - details about the included resource that pertain specifically to how that - resource is used in that playlist. YouTube uses playlists to identify special - collections of videos for a channel, such as: - uploaded videos - favorite - videos - positively rated (liked) videos - watch history - watch later To - be more specific, these lists are associated with a channel, which is a collection - of a person, group, or company's videos, playlists, and other YouTube information. - You can retrieve the playlist IDs for each of these lists from the channel - resource for a given channel. You can then use the playlistItems.list method - to retrieve any of those lists. You can also add or remove items from those - lists by calling the playlistItems.insert and playlistItems.delete methods. - For example, if a user gives a positive rating to a video, you would insert - that video into the liked videos playlist for that user's channel.\"\n },\n - \ \"ChannelLocalization\": {\n \"description\": \"Channel localization - setting\",\n \"type\": \"object\",\n \"properties\": {\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The localized - strings for channel's description.\"\n },\n \"title\": {\n \"description\": - \"The localized strings for channel's title.\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"ChannelLocalization\"\n },\n \"Thumbnail\": - {\n \"id\": \"Thumbnail\",\n \"description\": \"A thumbnail is an - image representing a YouTube resource.\",\n \"type\": \"object\",\n \"properties\": - {\n \"width\": {\n \"description\": \"(Optional) Width of - the thumbnail image.\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"url\": {\n \"type\": \"string\",\n - \ \"description\": \"The thumbnail image's URL.\"\n },\n \"height\": - {\n \"type\": \"integer\",\n \"description\": \"(Optional) - Height of the thumbnail image.\",\n \"format\": \"uint32\"\n }\n - \ }\n },\n \"ActivityContentDetailsPlaylistItem\": {\n \"description\": - \"Information about a new playlist item.\",\n \"properties\": {\n \"playlistItemId\": - {\n \"description\": \"ID of the item within the playlist.\",\n \"type\": - \"string\"\n },\n \"resourceId\": {\n \"description\": - \"The resourceId object contains information about the resource that was added - to the playlist.\",\n \"$ref\": \"ResourceId\"\n },\n \"playlistId\": - {\n \"description\": \"The value that YouTube uses to uniquely identify - the playlist.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ActivityContentDetailsPlaylistItem\",\n \"type\": \"object\"\n },\n - \ \"VideoTopicDetails\": {\n \"description\": \"Freebase topic information - related to the video.\",\n \"type\": \"object\",\n \"id\": \"VideoTopicDetails\",\n - \ \"properties\": {\n \"topicCategories\": {\n \"type\": - \"array\",\n \"description\": \"A list of Wikipedia URLs that provide - a high-level description of the video's content.\",\n \"items\": - {\n \"type\": \"string\"\n }\n },\n \"topicIds\": - {\n \"description\": \"A list of Freebase topic IDs that are centrally - associated with the video. These are topics that are centrally featured in - the video, and it can be said that the video is mainly about each of these. - You can retrieve information about each topic using the \\u003c a href=\\\"http://wiki.freebase.com/wiki/Topic_API\\\"\\u003eFreebase - Topic API.\",\n \"type\": \"array\",\n \"items\": {\n \"type\": - \"string\"\n }\n },\n \"relevantTopicIds\": {\n \"items\": - {\n \"type\": \"string\"\n },\n \"description\": - \"Similar to topic_id, except that these topics are merely relevant to the - video. These are topics that may be mentioned in, or appear in the video. - You can retrieve information about each topic using Freebase Topic API.\",\n - \ \"type\": \"array\"\n }\n }\n },\n \"PlaylistItemSnippet\": - {\n \"id\": \"PlaylistItemSnippet\",\n \"properties\": {\n \"videoOwnerChannelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel id - for the channel this video belongs to.\"\n },\n \"channelTitle\": - {\n \"description\": \"Channel title for the channel that the playlist - item belongs to.\",\n \"type\": \"string\"\n },\n \"playlistId\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify thGe playlist that the playlist item is - in.\"\n },\n \"title\": {\n \"description\": \"The - item's title.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The item's description.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the user that added the item - to the playlist.\",\n \"type\": \"string\"\n },\n \"resourceId\": - {\n \"annotations\": {\n \"required\": [\n \"youtube.playlistItems.insert\",\n - \ \"youtube.playlistItems.update\"\n ]\n },\n - \ \"$ref\": \"ResourceId\",\n \"description\": \"The id object - contains information that can be used to uniquely identify the resource that - is included in the playlist as the playlist item.\"\n },\n \"publishedAt\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The date and time that the item was added to - the playlist.\"\n },\n \"thumbnails\": {\n \"description\": - \"A map of thumbnail images associated with the playlist item. 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.\",\n \"$ref\": - \"ThumbnailDetails\"\n },\n \"position\": {\n \"type\": - \"integer\",\n \"description\": \"The order in which the item appears - in the playlist. The value uses a zero-based index, so the first item has - a position of 0, the second item has a position of 1, and so forth.\",\n \"format\": - \"uint32\"\n },\n \"videoOwnerChannelTitle\": {\n \"description\": - \"Channel title for the channel this video belongs to.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - a playlist, including title, description and thumbnails. Basic details of - a YouTube Playlist item provided by the author. Next ID: 15\",\n \"type\": - \"object\"\n },\n \"VideoAbuseReportReasonSnippet\": {\n \"properties\": - {\n \"secondaryReasons\": {\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"VideoAbuseReportSecondaryReason\"\n },\n - \ \"description\": \"The secondary reasons associated with this reason, - if any are available. (There might be 0 or more.)\"\n },\n \"label\": - {\n \"type\": \"string\",\n \"description\": \"The localized - label belonging to this abuse report reason.\"\n }\n },\n \"type\": - \"object\",\n \"description\": \"Basic details about a video category, - such as its localized title.\",\n \"id\": \"VideoAbuseReportReasonSnippet\"\n - \ },\n \"ActivityContentDetailsUpload\": {\n \"properties\": {\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the uploaded video.\",\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Information about the uploaded - video.\",\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsUpload\"\n - \ },\n \"ChannelConversionPing\": {\n \"description\": \"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.\",\n - \ \"type\": \"object\",\n \"id\": \"ChannelConversionPing\",\n \"properties\": - {\n \"context\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n - \ \"cview\"\n ],\n \"description\": \"Defines - the context of the ping.\"\n },\n \"conversionUrl\": {\n \"type\": - \"string\",\n \"description\": \"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.\"\n }\n }\n },\n \"PlaylistListResponse\": - {\n \"id\": \"PlaylistListResponse\",\n \"properties\": {\n \"prevPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the previous - page in the result set.\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"description\": \"Identifies what kind of - resource this is. Value: the fixed string \\\"youtube#playlistListResponse\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#playlistListResponse\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"items\": {\n \"description\": \"A list of playlists - that match the request criteria\",\n \"type\": \"array\",\n \"items\": - {\n \"$ref\": \"Playlist\"\n }\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n },\n - \ \"nextPageToken\": {\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"VideoFileDetailsVideoStream\": {\n - \ \"properties\": {\n \"codec\": {\n \"type\": \"string\",\n - \ \"description\": \"The video codec that the stream uses.\"\n },\n - \ \"bitrateBps\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The video stream's bitrate, in bits - per second.\"\n },\n \"aspectRatio\": {\n \"format\": - \"double\",\n \"description\": \"The video content's display aspect - ratio, which specifies the aspect ratio in which the video should be displayed.\",\n - \ \"type\": \"number\"\n },\n \"widthPixels\": {\n \"description\": - \"The encoded video content's width in pixels. You can calculate the video's - encoding aspect ratio as width_pixels / height_pixels.\",\n \"format\": - \"uint32\",\n \"type\": \"integer\"\n },\n \"frameRateFps\": - {\n \"format\": \"double\",\n \"description\": \"The video - stream's frame rate, in frames per second.\",\n \"type\": \"number\"\n - \ },\n \"vendor\": {\n \"type\": \"string\",\n \"description\": - \"A value that uniquely identifies a video vendor. Typically, the value is - a four-letter vendor code.\"\n },\n \"rotation\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The amount that YouTube needs to rotate the original source content to properly - display the video.\",\n \"enum\": [\n \"none\",\n \"clockwise\",\n - \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n - \ ]\n },\n \"heightPixels\": {\n \"format\": - \"uint32\",\n \"description\": \"The encoded video content's height - in pixels.\",\n \"type\": \"integer\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"VideoFileDetailsVideoStream\",\n \"description\": - \"Information about a video stream.\"\n },\n \"LiveStream\": {\n \"id\": - \"LiveStream\",\n \"description\": \"A live stream describes a live ingestion - point.\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the stream, including its - channel, title, and description.\",\n \"$ref\": \"LiveStreamSnippet\"\n - \ },\n \"status\": {\n \"$ref\": \"LiveStreamStatus\",\n - \ \"description\": \"The status object contains information about - live stream's status.\"\n },\n \"cdn\": {\n \"$ref\": - \"CdnSettings\",\n \"description\": \"The cdn object defines the - live stream's content delivery network (CDN) settings. These settings provide - details about the manner in which you stream your content to YouTube.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#liveStream\\\".\",\n \"default\": - \"youtube#liveStream\"\n },\n \"contentDetails\": {\n \"$ref\": - \"LiveStreamContentDetails\",\n \"description\": \"The content_details - object contains information about the stream, including the closed captions - ingestion URL.\"\n },\n \"id\": {\n \"annotations\": - {\n \"required\": [\n \"youtube.liveStreams.update\"\n - \ ]\n },\n \"description\": \"The ID that YouTube - assigns to uniquely identify the stream.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"VideoContentDetails\": - {\n \"properties\": {\n \"licensedContent\": {\n \"type\": - \"boolean\",\n \"description\": \"The value of is_license_content - indicates whether the video is licensed content.\"\n },\n \"regionRestriction\": - {\n \"description\": \"The regionRestriction object contains information - about the countries where a video is (or is not) viewable. The object will - contain either the contentDetails.regionRestriction.allowed property or the - contentDetails.regionRestriction.blocked property.\",\n \"$ref\": - \"VideoContentDetailsRegionRestriction\"\n },\n \"caption\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\"\n ],\n \"description\": \"The value of - captions indicates whether the video has captions or not.\",\n \"enum\": - [\n \"true\",\n \"false\"\n ]\n },\n - \ \"definition\": {\n \"enumDescriptions\": [\n \"sd\",\n - \ \"hd\"\n ],\n \"type\": \"string\",\n \"description\": - \"The value of definition indicates whether the video is available in high - definition or only in standard definition.\",\n \"enum\": [\n \"sd\",\n - \ \"hd\"\n ]\n },\n \"projection\": {\n \"description\": - \"Specifies the projection format of the video.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"rectangular\",\n \"360\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ]\n },\n \"contentRating\": {\n \"description\": - \"Specifies the ratings that the video received under various rating schemes.\",\n - \ \"$ref\": \"ContentRating\"\n },\n \"hasCustomThumbnail\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the video uploader has provided a custom thumbnail image for the video. - This property is only visible to the video uploader.\"\n },\n \"duration\": - {\n \"description\": \"The length of the video. The tag value is - an ISO 8601 duration in the format PT#M#S, in which the letters PT indicate - that the value specifies a period of time, and the letters M and S refer to - length in minutes and seconds, respectively. The # characters preceding the - M and S letters are both integers that specify the number of minutes (or seconds) - of the video. For example, a value of PT15M51S indicates that the video is - 15 minutes and 51 seconds long.\",\n \"type\": \"string\"\n },\n - \ \"dimension\": {\n \"description\": \"The value of dimension - indicates whether the video is available in 3D or in 2D.\",\n \"type\": - \"string\"\n },\n \"countryRestriction\": {\n \"description\": - \"The countryRestriction object contains information about the countries where - a video is (or is not) viewable.\",\n \"$ref\": \"AccessPolicy\"\n - \ }\n },\n \"type\": \"object\",\n \"description\": \"Details - about the content of a YouTube Video.\",\n \"id\": \"VideoContentDetails\"\n - \ },\n \"I18nLanguage\": {\n \"type\": \"object\",\n \"properties\": - {\n \"snippet\": {\n \"description\": \"The snippet object - contains basic details about the i18n language, such as language code and - human-readable name.\",\n \"$ref\": \"I18nLanguageSnippet\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the i18n language.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#i18nLanguage\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nLanguage\\\".\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"I18nLanguage\",\n \"description\": - \"An *i18nLanguage* resource identifies a UI language currently supported - by YouTube.\"\n },\n \"ContentRating\": {\n \"description\": \"Ratings - schemes. The country-specific ratings are mostly for movies and shows. LINT.IfChange\",\n - \ \"id\": \"ContentRating\",\n \"type\": \"object\",\n \"properties\": - {\n \"fcoRating\": {\n \"description\": \"The video's rating - from Hong Kong's Office for Film, Newspaper and Article Administration.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"I\",\n - \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"fcoUnspecified\",\n \"fcoI\",\n \"fcoIia\",\n - \ \"fcoIib\",\n \"fcoIi\",\n \"fcoIii\",\n - \ \"fcoUnrated\"\n ]\n },\n \"grfilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"K\",\n - \ \"E\",\n \"K-12\",\n \"K-13\",\n \"K-15\",\n - \ \"K-17\",\n \"K-18\",\n \"\"\n ],\n - \ \"enum\": [\n \"grfilmUnspecified\",\n \"grfilmK\",\n - \ \"grfilmE\",\n \"grfilmK12\",\n \"grfilmK13\",\n - \ \"grfilmK15\",\n \"grfilmK17\",\n \"grfilmK18\",\n - \ \"grfilmUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating in Greece.\"\n },\n - \ \"mccypRating\": {\n \"description\": \"The video's rating - from the Danish Film Institute's (Det Danske Filminstitut) Media Council for - Children and Young People.\",\n \"type\": \"string\",\n \"enum\": - [\n \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n - \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ]\n },\n \"cnaRating\": {\n \"description\": - \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI - (CNA).\",\n \"type\": \"string\",\n \"enum\": [\n \"cnaUnspecified\",\n - \ \"cnaAp\",\n \"cna12\",\n \"cna15\",\n \"cna18\",\n - \ \"cna18plus\",\n \"cnaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AP\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"18+\",\n \"\"\n ]\n - \ },\n \"chvrsRating\": {\n \"description\": \"The video's - Canadian Home Video Rating System (CHVRS) rating.\",\n \"enum\": - [\n \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n - \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n - \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"14A\",\n - \ \"18A\",\n \"R\",\n \"E\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"ytRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"description\": \"A rating that YouTube uses to identify - age-restricted content.\",\n \"enum\": [\n \"ytUnspecified\",\n - \ \"ytAgeRestricted\"\n ],\n \"type\": \"string\"\n - \ },\n \"fpbRating\": {\n \"type\": \"string\",\n \"description\": - \"The video's rating from South Africa's Film and Publication Board.\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n - \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n - \ \"\",\n \"10\"\n ],\n \"enum\": [\n - \ \"fpbUnspecified\",\n \"fpbA\",\n \"fpbPg\",\n - \ \"fpb79Pg\",\n \"fpb1012Pg\",\n \"fpb13\",\n - \ \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n - \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n - \ ]\n },\n \"medietilsynetRating\": {\n \"description\": - \"The video's rating from Medietilsynet, the Norwegian Media Authority.\",\n - \ \"enum\": [\n \"medietilsynetUnspecified\",\n \"medietilsynetA\",\n - \ \"medietilsynet6\",\n \"medietilsynet7\",\n \"medietilsynet9\",\n - \ \"medietilsynet11\",\n \"medietilsynet12\",\n \"medietilsynet15\",\n - \ \"medietilsynet18\",\n \"medietilsynetUnrated\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"6\",\n \"7\",\n \"9\",\n \"11\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"oflcRating\": - {\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n - \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n - \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n - \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n - \ \"oflcRp18\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n - \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n - \ \"RP16\",\n \"RP18\"\n ],\n \"description\": - \"The video's Office of Film and Literature Classification (OFLC - New Zealand) - rating.\"\n },\n \"incaaRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"ATP (Apta para todo publico)\",\n \"13 - (Solo apta para mayores de 13 a\xF1os)\",\n \"16 (Solo apta para - mayores de 16 a\xF1os)\",\n \"18 (Solo apta para mayores de 18 - a\xF1os)\",\n \"X (Solo apta para mayores de 18 a\xF1os, de exhibici\xF3n - condicionada)\",\n \"\"\n ],\n \"enum\": [\n - \ \"incaaUnspecified\",\n \"incaaAtp\",\n \"incaaSam13\",\n - \ \"incaaSam16\",\n \"incaaSam18\",\n \"incaaC\",\n - \ \"incaaUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's INCAA (Instituto Nacional de Cine - y Artes Audiovisuales - Argentina) rating.\"\n },\n \"cccRating\": - {\n \"enum\": [\n \"cccUnspecified\",\n \"cccTe\",\n - \ \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n \"ccc18v\",\n - \ \"ccc18s\",\n \"cccUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Todo espectador\",\n \"6+ - - Inconveniente para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n - \ \"18+ - contenido excesivamente violento\",\n \"18+ - - contenido pornogr\xE1fico\",\n \"\"\n ],\n \"description\": - \"The video's Consejo de Calificaci\xF3n Cinematogr\xE1fica (Chile) rating.\",\n - \ \"type\": \"string\"\n },\n \"icaaRating\": {\n \"enum\": - [\n \"icaaUnspecified\",\n \"icaaApta\",\n \"icaa7\",\n - \ \"icaa12\",\n \"icaa13\",\n \"icaa16\",\n - \ \"icaa18\",\n \"icaaX\",\n \"icaaUnrated\"\n - \ ],\n \"description\": \"The video's Instituto de la Cinematograf\xEDa - y de las Artes Audiovisuales (ICAA - Spain) rating.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"APTA\",\n - \ \"7\",\n \"12\",\n \"13\",\n \"16\",\n - \ \"18\",\n \"X\",\n \"\"\n ]\n },\n - \ \"mccaaRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n - \ \"12\",\n \"14 - this rating was removed from the new - classification structure introduced in 2013.\",\n \"15\",\n \"16 - - this rating was removed from the new classification structure introduced - in 2013.\",\n \"18\",\n \"\"\n ],\n \"enum\": - [\n \"mccaaUnspecified\",\n \"mccaaU\",\n \"mccaaPg\",\n - \ \"mccaa12a\",\n \"mccaa12\",\n \"mccaa14\",\n - \ \"mccaa15\",\n \"mccaa16\",\n \"mccaa18\",\n - \ \"mccaaUnrated\"\n ],\n \"description\": \"The - video's rating from Malta's Film Age-Classification Board.\"\n },\n - \ \"mcstRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"P\",\n \"0\",\n \"C13\",\n - \ \"C16\",\n \"16+\",\n \"C18\",\n \"MCST_G_PG\",\n - \ \"\"\n ],\n \"enum\": [\n \"mcstUnspecified\",\n - \ \"mcstP\",\n \"mcst0\",\n \"mcstC13\",\n - \ \"mcstC16\",\n \"mcst16plus\",\n \"mcstC18\",\n - \ \"mcstGPg\",\n \"mcstUnrated\"\n ],\n \"description\": - \"The video's rating system for Vietnam - MCST\"\n },\n \"russiaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"russiaUnspecified\",\n - \ \"russia0\",\n \"russia6\",\n \"russia12\",\n - \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n - \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n - \ \"\"\n ],\n \"description\": \"The video's National - Film Registry of the Russian Federation (MKRF - Russia) rating.\"\n },\n - \ \"menaMpaaRating\": {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"R\",\n \"To keep the same enum values as MPAA's items - have, skip NC_17.\"\n ],\n \"enum\": [\n \"menaMpaaUnspecified\",\n - \ \"menaMpaaG\",\n \"menaMpaaPg\",\n \"menaMpaaPg13\",\n - \ \"menaMpaaR\",\n \"menaMpaaUnrated\"\n ],\n - \ \"description\": \"The rating system for MENA countries, a clone - of MPAA. It is needed to prevent titles go live w/o additional QC check, since - some of them can be inappropriate for the countries at all. See b/33408548 - for more details.\"\n },\n \"kfcbRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"enum\": [\n - \ \"kfcbUnspecified\",\n \"kfcbG\",\n \"kfcbPg\",\n - \ \"kfcb16plus\",\n \"kfcbR\",\n \"kfcbUnrated\"\n - \ ],\n \"description\": \"The video's rating from the Kenya - Film Classification Board.\",\n \"type\": \"string\"\n },\n - \ \"acbRating\": {\n \"description\": \"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.\",\n - \ \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n - \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n - \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n - \ \"acbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"Programs that have - been given a P classification by the Australian Communications and Media Authority. - These programs are intended for preschool children.\",\n \"Programs - that have been given a C classification by the Australian Communications and - Media Authority. These programs are intended for children (other than preschool - children) who are younger than 14 years of age.\",\n \"G\",\n \"PG\",\n - \ \"M\",\n \"MA15+\",\n \"R18+\",\n \"\"\n - \ ],\n \"type\": \"string\"\n },\n \"nbcplRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"nbcplUnspecified\",\n - \ \"nbcplI\",\n \"nbcplIi\",\n \"nbcplIii\",\n - \ \"nbcplIv\",\n \"nbcpl18plus\",\n \"nbcplUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating in Poland.\"\n },\n \"djctqRatingReasons\": - {\n \"description\": \"Reasons that explain why the video received - its DJCQT (Brazil) rating.\",\n \"items\": {\n \"enum\": - [\n \"djctqRatingReasonUnspecified\",\n \"djctqViolence\",\n - \ \"djctqExtremeViolence\",\n \"djctqSexualContent\",\n - \ \"djctqNudity\",\n \"djctqSex\",\n \"djctqExplicitSex\",\n - \ \"djctqDrugs\",\n \"djctqLegalDrugs\",\n \"djctqIllegalDrugs\",\n - \ \"djctqInappropriateLanguage\",\n \"djctqCriminalActs\",\n - \ \"djctqImpactingContent\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"Brazil - rating content descriptors. See http://go/brazilratings section F. Viol\xEAncia - (Violence)\",\n \"Viol\xEAncia extrema (Extreme violence)\",\n - \ \"Conte\xFAdo sexual (Sexual content)\",\n \"Nudez - (Nudity)\",\n \"Sexo (Sex)\",\n \"Sexo Expl\xEDcito - (Explicit sex)\",\n \"Drogas (Drugs)\",\n \"Drogas - L\xEDcitas (Legal drugs)\",\n \"Drogas Il\xEDcitas (Illegal drugs)\",\n - \ \"Linguagem Impr\xF3pria (Inappropriate language)\",\n \"Atos - Criminosos (Criminal Acts)\",\n \"Conte\xFAdo Impactante (Impacting - content)\"\n ]\n },\n \"type\": \"array\"\n },\n - \ \"fmocRating\": {\n \"enum\": [\n \"fmocUnspecified\",\n - \ \"fmocU\",\n \"fmoc10\",\n \"fmoc12\",\n - \ \"fmoc16\",\n \"fmoc18\",\n \"fmocE\",\n - \ \"fmocUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"E\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"This property has been deprecated. Use the contentDetails.contentRating.cncRating - instead.\"\n },\n \"mpaaRating\": {\n \"type\": \"string\",\n - \ \"description\": \"The video's Motion Picture Association of America - (MPAA) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"PG-13\",\n \"R\",\n - \ \"NC-17\",\n \"! X\",\n \"\"\n ],\n - \ \"enum\": [\n \"mpaaUnspecified\",\n \"mpaaG\",\n - \ \"mpaaPg\",\n \"mpaaPg13\",\n \"mpaaR\",\n - \ \"mpaaNc17\",\n \"mpaaX\",\n \"mpaaUnrated\"\n - \ ]\n },\n \"rteRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"GA\",\n \"CH\",\n \"PS\",\n - \ \"MA\",\n \"\"\n ],\n \"enum\": [\n - \ \"rteUnspecified\",\n \"rteGa\",\n \"rteCh\",\n - \ \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n - \ ],\n \"description\": \"The video's rating from Ireland's - Raidi\xF3 Teilif\xEDs \xC9ireann.\",\n \"type\": \"string\"\n },\n - \ \"kmrbRating\": {\n \"description\": \"The video's Korea - Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) rating. - The KMRB rates videos in South Korea.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n - \ \"kmrb12plus\",\n \"kmrb15plus\",\n \"kmrbTeenr\",\n - \ \"kmrbR\",\n \"kmrbUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n \"12\uC138 - \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n - \ \"\",\n \"\uCCAD\uC18C\uB144 \uAD00\uB78C\uBD88\uAC00\",\n - \ \"\"\n ]\n },\n \"agcomRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni - (AGCOM).\",\n \"enum\": [\n \"agcomUnspecified\",\n \"agcomT\",\n - \ \"agcomVm14\",\n \"agcomVm18\",\n \"agcomUnrated\"\n - \ ]\n },\n \"bmukkRating\": {\n \"description\": - \"The video's rating from the Austrian Board of Media Classification (Bundesministerium - f\xFCr Unterricht, Kunst und Kultur).\",\n \"enumDescriptions\": - [\n \"\",\n \"Unrestricted\",\n \"6+\",\n - \ \"8+\",\n \"10+\",\n \"12+\",\n \"14+\",\n - \ \"16+\",\n \"\"\n ],\n \"enum\": - [\n \"bmukkUnspecified\",\n \"bmukkAa\",\n \"bmukk6\",\n - \ \"bmukk8\",\n \"bmukk10\",\n \"bmukk12\",\n - \ \"bmukk14\",\n \"bmukk16\",\n \"bmukkUnrated\"\n - \ ],\n \"type\": \"string\"\n },\n \"mpaatRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"GB\",\n - \ \"RB\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n - \ ],\n \"description\": \"The rating system for trailer, - DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n - \ },\n \"kijkwijzerRating\": {\n \"enum\": [\n \"kijkwijzerUnspecified\",\n - \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n - \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n - \ \"kijkwijzerUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n - \ \"12\",\n \"16\",\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de - Classificatie van Audiovisuele Media (Netherlands).\"\n },\n \"fskRating\": - {\n \"enum\": [\n \"fskUnspecified\",\n \"fsk0\",\n - \ \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n \"fsk18\",\n - \ \"fskUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's Freiwillige Selbstkontrolle der Filmwirtschaft - (FSK - Germany) rating.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"FSK 0\",\n \"FSK 6\",\n \"FSK 12\",\n - \ \"FSK 16\",\n \"FSK 18\",\n \"\"\n ]\n - \ },\n \"moctwRating\": {\n \"description\": \"The video's - rating from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n \"enum\": - [\n \"moctwUnspecified\",\n \"moctwG\",\n \"moctwP\",\n - \ \"moctwPg\",\n \"moctwR\",\n \"moctwUnrated\",\n - \ \"moctwR12\",\n \"moctwR15\"\n ],\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n - \ \"R-12\",\n \"R-15\"\n ]\n },\n \"skfilmRating\": - {\n \"description\": \"The video's rating in Slovakia.\",\n \"enum\": - [\n \"skfilmUnspecified\",\n \"skfilmG\",\n \"skfilmP2\",\n - \ \"skfilmP5\",\n \"skfilmP8\",\n \"skfilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"P2\",\n \"P5\",\n - \ \"P8\",\n \"\"\n ]\n },\n \"mtrcbRating\": - {\n \"enum\": [\n \"mtrcbUnspecified\",\n \"mtrcbG\",\n - \ \"mtrcbPg\",\n \"mtrcbR13\",\n \"mtrcbR16\",\n - \ \"mtrcbR18\",\n \"mtrcbX\",\n \"mtrcbUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Movie and Television Review and Classification - Board (Philippines).\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"R-13\",\n \"R-16\",\n - \ \"R-18\",\n \"X\",\n \"\"\n ]\n - \ },\n \"eirinRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG-12\",\n \"R15+\",\n - \ \"R18+\",\n \"\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n - \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n - \ \"eirinUnrated\"\n ],\n \"description\": \"The - video's Eirin (\u6620\u502B) rating. Eirin is the Japanese rating system.\"\n - \ },\n \"mocRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"E\",\n \"T\",\n \"7\",\n - \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n - \ \"Banned\",\n \"\"\n ],\n \"enum\": - [\n \"mocUnspecified\",\n \"mocE\",\n \"mocT\",\n - \ \"moc7\",\n \"moc12\",\n \"moc15\",\n \"moc18\",\n - \ \"mocX\",\n \"mocBanned\",\n \"mocUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's Ministerio de Cultura (Colombia) rating.\"\n },\n \"nfvcbRating\": - {\n \"description\": \"The video's rating from Nigeria's National - Film and Video Censors Board.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"PG\",\n \"12\",\n \"12A\",\n - \ \"15\",\n \"18\",\n \"RE\",\n \"\"\n - \ ],\n \"enum\": [\n \"nfvcbUnspecified\",\n \"nfvcbG\",\n - \ \"nfvcbPg\",\n \"nfvcb12\",\n \"nfvcb12a\",\n - \ \"nfvcb15\",\n \"nfvcb18\",\n \"nfvcbRe\",\n - \ \"nfvcbUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"fpbRatingReasons\": {\n \"description\": \"Reasons - that explain why the video received its FPB (South Africa) rating.\",\n \"type\": - \"array\",\n \"items\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"South Africa rating content descriptors.\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": - [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n - \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n - \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n - \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n - \ \"fpbImitativeActsTechniques\"\n ],\n \"type\": - \"string\"\n }\n },\n \"nfrcRating\": {\n \"enum\": - [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n - \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"X\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Bulgarian National Film Center.\",\n \"type\": \"string\"\n - \ },\n \"lsfRating\": {\n \"description\": \"The video's - rating from Indonesia's Lembaga Sensor Film.\",\n \"enum\": [\n \"lsfUnspecified\",\n - \ \"lsfSu\",\n \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n - \ \"lsfR\",\n \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n - \ \"lsfUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"SU\",\n - \ \"A\",\n \"BO\",\n \"13\",\n \"R\",\n - \ \"17\",\n \"D\",\n \"21\",\n \"\"\n - \ ]\n },\n \"mdaRating\": {\n \"enum\": [\n - \ \"mdaUnspecified\",\n \"mdaG\",\n \"mdaPg\",\n - \ \"mdaPg13\",\n \"mdaNc16\",\n \"mdaM18\",\n - \ \"mdaR21\",\n \"mdaUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n - \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Singapore's Media Development Authority (MDA) and, - specifically, it's Board of Film Censors (BFC).\"\n },\n \"catvfrRating\": - {\n \"enum\": [\n \"catvfrUnspecified\",\n \"catvfrG\",\n - \ \"catvfr8plus\",\n \"catvfr13plus\",\n \"catvfr16plus\",\n - \ \"catvfr18plus\",\n \"catvfrUnrated\",\n \"catvfrE\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"8+\",\n \"13+\",\n \"16+\",\n \"18+\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n - \ },\n \"mekuRating\": {\n \"enum\": [\n \"mekuUnspecified\",\n - \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n - \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Finland's Kansallinen Audiovisuaalinen Instituutti - (National Audiovisual Institute).\",\n \"enumDescriptions\": [\n - \ \"\",\n \"S\",\n \"7\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"tvpgRating\": {\n \"enum\": [\n \"tvpgUnspecified\",\n - \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n - \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n - \ \"tvpgUnrated\"\n ],\n \"description\": \"The - video's TV Parental Guidelines (TVPG) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"TV-Y\",\n \"TV-Y7\",\n \"TV-Y7-FV\",\n - \ \"TV-G\",\n \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"smsaRating\": {\n \"description\": \"The video's rating - from Statens medier\xE5d (Sweden's National Media Council).\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"All - ages\",\n \"7\",\n \"11\",\n \"15\",\n \"\"\n - \ ],\n \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n - \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n - \ \"smsaUnrated\"\n ]\n },\n \"csaRating\": - {\n \"type\": \"string\",\n \"enum\": [\n \"csaUnspecified\",\n - \ \"csaT\",\n \"csa10\",\n \"csa12\",\n \"csa16\",\n - \ \"csa18\",\n \"csaInterdiction\",\n \"csaUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"Interdiction\",\n \"\"\n ],\n \"description\": - \"The video's rating from France's Conseil sup\xE9rieur de l\u2019audiovisuel, - which rates broadcast content.\"\n },\n \"ifcoRating\": {\n - \ \"description\": \"The video's Irish Film Classification Office - (IFCO - Ireland) rating. See the IFCO website for more information.\",\n \"enum\": - [\n \"ifcoUnspecified\",\n \"ifcoG\",\n \"ifcoPg\",\n - \ \"ifco12\",\n \"ifco12a\",\n \"ifco15\",\n - \ \"ifco15a\",\n \"ifco16\",\n \"ifco18\",\n - \ \"ifcoUnrated\"\n ],\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"G\",\n - \ \"PG\",\n \"12\",\n \"12A\",\n \"15\",\n - \ \"15A\",\n \"16\",\n \"18\",\n \"\"\n - \ ]\n },\n \"nbcRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"nbcUnspecified\",\n \"nbcG\",\n - \ \"nbcPg\",\n \"nbc12plus\",\n \"nbc15plus\",\n - \ \"nbc18plus\",\n \"nbc18plusr\",\n \"nbcPu\",\n - \ \"nbcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n - \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n - \ \"\"\n ],\n \"description\": \"The video's rating - from the Maldives National Bureau of Classification.\"\n },\n \"cncRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"T\",\n - \ \"10\",\n \"12\",\n \"16\",\n \"18\",\n - \ \"E\",\n \"interdiction\",\n \"\"\n ],\n - \ \"description\": \"Rating system in France - Commission de classification - cinematographique\",\n \"enum\": [\n \"cncUnspecified\",\n - \ \"cncT\",\n \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n - \ \"cnc18\",\n \"cncE\",\n \"cncInterdiction\",\n - \ \"cncUnrated\"\n ],\n \"type\": \"string\"\n - \ },\n \"cbfcRating\": {\n \"description\": \"The video's - Central Board of Film Certification (CBFC - India) rating.\",\n \"type\": - \"string\",\n \"enum\": [\n \"cbfcUnspecified\",\n \"cbfcU\",\n - \ \"cbfcUA\",\n \"cbfcUA7plus\",\n \"cbfcUA13plus\",\n - \ \"cbfcUA16plus\",\n \"cbfcA\",\n \"cbfcS\",\n - \ \"cbfcUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"U/A\",\n \"U/A - 7+\",\n \"U/A 13+\",\n \"U/A 16+\",\n \"A\",\n - \ \"S\",\n \"\"\n ]\n },\n \"smaisRating\": - {\n \"description\": \"The video's rating in Iceland.\",\n \"type\": - \"string\",\n \"enum\": [\n \"smaisUnspecified\",\n \"smaisL\",\n - \ \"smais7\",\n \"smais12\",\n \"smais14\",\n - \ \"smais16\",\n \"smais18\",\n \"smaisUnrated\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"L\",\n - \ \"7\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ]\n },\n \"fcbmRating\": - {\n \"type\": \"string\",\n \"description\": \"The video's - rating from Malaysia's Film Censorship Board.\",\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n - \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n - \ \"18PL\",\n \"\"\n ],\n \"enum\": - [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n - \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n - \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n - \ \"fcbmUnrated\"\n ]\n },\n \"ilfilmRating\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"12\",\n \"14\",\n \"16\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in Israel.\",\n \"enum\": [\n \"ilfilmUnspecified\",\n - \ \"ilfilmAa\",\n \"ilfilm12\",\n \"ilfilm14\",\n - \ \"ilfilm16\",\n \"ilfilm18\",\n \"ilfilmUnrated\"\n - \ ]\n },\n \"djctqRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"djctqUnspecified\",\n \"djctqL\",\n - \ \"djctq10\",\n \"djctq12\",\n \"djctq14\",\n - \ \"djctq16\",\n \"djctq18\",\n \"djctqEr\",\n - \ \"djctqL10\",\n \"djctqL12\",\n \"djctqL14\",\n - \ \"djctqL16\",\n \"djctqL18\",\n \"djctq1012\",\n - \ \"djctq1014\",\n \"djctq1016\",\n \"djctq1018\",\n - \ \"djctq1214\",\n \"djctq1216\",\n \"djctq1218\",\n - \ \"djctq1416\",\n \"djctq1418\",\n \"djctq1618\",\n - \ \"djctqUnrated\"\n ],\n \"description\": \"The - video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o - e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enumDescriptions\": - [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n - \ \"14\",\n \"16\",\n \"18\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"mibacRating\": {\n \"description\": - \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali - e del Turismo (Italy).\",\n \"enum\": [\n \"mibacUnspecified\",\n - \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n - \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n - \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\"\n ],\n \"type\": \"string\"\n },\n - \ \"cscfRating\": {\n \"description\": \"The video's rating - from Luxembourg's Commission de surveillance de la classification des films - (CSCF).\",\n \"enumDescriptions\": [\n \"\",\n \"AL\",\n - \ \"A\",\n \"6\",\n \"9\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"cscfUnspecified\",\n - \ \"cscfAl\",\n \"cscfA\",\n \"cscf6\",\n - \ \"cscf9\",\n \"cscf12\",\n \"cscf16\",\n - \ \"cscf18\",\n \"cscfUnrated\"\n ]\n },\n - \ \"rtcRating\": {\n \"enumDescriptions\": [\n \"\",\n - \ \"AA\",\n \"A\",\n \"B\",\n \"B15\",\n - \ \"C\",\n \"D\",\n \"\"\n ],\n \"enum\": - [\n \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n - \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n - \ \"rtcUnrated\"\n ],\n \"description\": \"The - video's General Directorate of Radio, Television and Cinematography (Mexico) - rating.\",\n \"type\": \"string\"\n },\n \"nkclvRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"7+\",\n \"12+\",\n \"! 16+\",\n \"18+\",\n - \ \"\"\n ],\n \"enum\": [\n \"nkclvUnspecified\",\n - \ \"nkclvU\",\n \"nkclv7plus\",\n \"nkclv12plus\",\n - \ \"nkclv16plus\",\n \"nkclv18plus\",\n \"nkclvUnrated\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from the Nacion\xE3lais Kino centrs (National Film Centre - of Latvia).\"\n },\n \"cicfRating\": {\n \"description\": - \"The video's rating from the Commission de Contr\xF4le des Films (Belgium).\",\n - \ \"enum\": [\n \"cicfUnspecified\",\n \"cicfE\",\n - \ \"cicfKtEa\",\n \"cicfKntEna\",\n \"cicfUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n - \ \"\"\n ]\n },\n \"ecbmctRating\": {\n \"description\": - \"Rating system in Turkey - Evaluation and Classification Board of the Ministry - of Culture and Tourism\",\n \"enumDescriptions\": [\n \"\",\n - \ \"G\",\n \"7A\",\n \"7+\",\n \"13A\",\n - \ \"13+\",\n \"15A\",\n \"15+\",\n \"18+\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n \"ecbmct7a\",\n - \ \"ecbmct7plus\",\n \"ecbmct13a\",\n \"ecbmct13plus\",\n - \ \"ecbmct15a\",\n \"ecbmct15plus\",\n \"ecbmct18plus\",\n - \ \"ecbmctUnrated\"\n ]\n },\n \"catvRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"C\",\n - \ \"C8\",\n \"G\",\n \"PG\",\n \"14+\",\n - \ \"18+\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"catvUnspecified\",\n \"catvC\",\n - \ \"catvC8\",\n \"catvG\",\n \"catvPg\",\n - \ \"catv14plus\",\n \"catv18plus\",\n \"catvUnrated\",\n - \ \"catvE\"\n ],\n \"description\": \"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.\",\n \"type\": \"string\"\n - \ },\n \"nmcRating\": {\n \"enumDescriptions\": [\n - \ \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n - \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"description\": - \"The National Media Council ratings system for United Arab Emirates.\",\n - \ \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n - \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n - \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n - \ \"nmcUnrated\"\n ]\n },\n \"bbfcRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"U\",\n - \ \"PG\",\n \"12A\",\n \"12\",\n \"15\",\n - \ \"18\",\n \"R18\",\n \"\"\n ],\n - \ \"type\": \"string\",\n \"enum\": [\n \"bbfcUnspecified\",\n - \ \"bbfcU\",\n \"bbfcPg\",\n \"bbfc12a\",\n - \ \"bbfc12\",\n \"bbfc15\",\n \"bbfc18\",\n - \ \"bbfcR18\",\n \"bbfcUnrated\"\n ],\n \"description\": - \"The video's British Board of Film Classification (BBFC) rating.\"\n },\n - \ \"rcnofRating\": {\n \"enum\": [\n \"rcnofUnspecified\",\n - \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n - \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n - \ \"rcnofUnrated\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The video's rating from the Hungarian Nemzeti - Filmiroda, the Rating Committee of the National Office of Film.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"bfvcRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"G\",\n \"E\",\n \"13\",\n - \ \"15\",\n \"18\",\n \"20\",\n \"B\",\n - \ \"\"\n ],\n \"enum\": [\n \"bfvcUnspecified\",\n - \ \"bfvcG\",\n \"bfvcE\",\n \"bfvc13\",\n - \ \"bfvc15\",\n \"bfvc18\",\n \"bfvc20\",\n - \ \"bfvcB\",\n \"bfvcUnrated\"\n ],\n \"type\": - \"string\",\n \"description\": \"The video's rating from Thailand's - Board of Film and Video Censors.\"\n },\n \"eefilmRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"Pere\",\n - \ \"L\",\n \"MS-6\",\n \"K-6\",\n \"MS-12\",\n - \ \"K-12\",\n \"K-14\",\n \"K-16\",\n \"\"\n - \ ],\n \"description\": \"The video's rating in Estonia.\",\n - \ \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n - \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n - \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n - \ \"eefilmK16\",\n \"eefilmUnrated\"\n ],\n - \ \"type\": \"string\"\n },\n \"pefilmRating\": {\n - \ \"type\": \"string\",\n \"enum\": [\n \"pefilmUnspecified\",\n - \ \"pefilmPt\",\n \"pefilmPg\",\n \"pefilm14\",\n - \ \"pefilm18\",\n \"pefilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"PT\",\n \"PG\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in Peru.\"\n },\n \"resorteviolenciaRating\": - {\n \"enumDescriptions\": [\n \"\",\n \"A\",\n - \ \"B\",\n \"C\",\n \"D\",\n \"E\",\n - \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": - [\n \"resorteviolenciaUnspecified\",\n \"resorteviolenciaA\",\n - \ \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n \"resorteviolenciaD\",\n - \ \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n - \ ],\n \"description\": \"The video's rating in Venezuela.\"\n - \ },\n \"anatelRating\": {\n \"type\": \"string\",\n - \ \"enum\": [\n \"anatelUnspecified\",\n \"anatelF\",\n - \ \"anatelI\",\n \"anatelI7\",\n \"anatelI10\",\n - \ \"anatelI12\",\n \"anatelR\",\n \"anatelA\",\n - \ \"anatelUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"F\",\n \"I\",\n \"I-7\",\n - \ \"I-10\",\n \"I-12\",\n \"R\",\n \"A\",\n - \ \"\"\n ],\n \"description\": \"The video's Anatel - (Asociaci\xF3n Nacional de Televisi\xF3n) rating for Chilean television.\"\n - \ },\n \"chfilmRating\": {\n \"description\": \"The - video's rating in Switzerland.\",\n \"enum\": [\n \"chfilmUnspecified\",\n - \ \"chfilm0\",\n \"chfilm6\",\n \"chfilm12\",\n - \ \"chfilm16\",\n \"chfilm18\",\n \"chfilmUnrated\"\n - \ ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"0\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\"\n ]\n - \ },\n \"egfilmRating\": {\n \"description\": \"The - video's rating in Egypt.\",\n \"type\": \"string\",\n \"enum\": - [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n \"egfilm18\",\n - \ \"egfilmBn\",\n \"egfilmUnrated\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"GN\",\n \"18\",\n \"BN\",\n - \ \"\"\n ]\n },\n \"cceRating\": {\n \"enum\": - [\n \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n - \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n - \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n - \ \"16\",\n \"18\",\n \"\",\n \"14\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The video's rating from Portugal's Comiss\xE3o de Classifica\xE7\xE3o de - Espect\xB4culos.\"\n },\n \"czfilmRating\": {\n \"enumDescriptions\": - [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n - \ \"18\",\n \"\"\n ],\n \"description\": - \"The video's rating in the Czech Republic.\",\n \"enum\": [\n \"czfilmUnspecified\",\n - \ \"czfilmU\",\n \"czfilm12\",\n \"czfilm14\",\n - \ \"czfilm18\",\n \"czfilmUnrated\"\n ],\n \"type\": - \"string\"\n }\n }\n },\n \"SuperChatEventSnippet\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"isSuperStickerEvent\": - {\n \"type\": \"boolean\",\n \"description\": \"True if - this event is a Super Sticker event.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"Channel id - where the event occurred.\"\n },\n \"messageType\": {\n \"type\": - \"integer\",\n \"description\": \"The tier for the paid message, - which is based on the amount of money spent to purchase the message.\",\n - \ \"format\": \"uint32\"\n },\n \"currency\": {\n \"description\": - \"The currency in which the purchase was made. ISO 4217.\",\n \"type\": - \"string\"\n },\n \"commentText\": {\n \"type\": \"string\",\n - \ \"description\": \"The text contents of the comment left by the - user.\"\n },\n \"amountMicros\": {\n \"description\": - \"The purchase amount, in micros of the purchase currency. e.g., 1 is represented - as 1000000.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"supporterDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n - \ \"description\": \"Details about the supporter.\"\n },\n - \ \"superStickerMetadata\": {\n \"$ref\": \"SuperStickerMetadata\",\n - \ \"description\": \"If this event is a Super Sticker event, this - field will contain metadata about the Super Sticker.\"\n },\n \"displayString\": - {\n \"description\": \"A rendered string that displays the purchase - amount and currency (e.g., \\\"$1.00\\\"). The string is rendered for the - given language.\",\n \"type\": \"string\"\n },\n \"createdAt\": - {\n \"description\": \"The date and time when the event occurred.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n }\n - \ },\n \"id\": \"SuperChatEventSnippet\"\n },\n \"ActivityContentDetailsLike\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsLike\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the rated resource.\"\n }\n },\n \"description\": - \"Information about a resource that received a positive (like) rating.\"\n - \ },\n \"I18nRegionSnippet\": {\n \"type\": \"object\",\n \"id\": - \"I18nRegionSnippet\",\n \"description\": \"Basic details about an i18n - region, such as region code and human-readable name.\",\n \"properties\": - {\n \"gl\": {\n \"description\": \"The region code as a 2-letter - ISO country code.\",\n \"type\": \"string\"\n },\n \"name\": - {\n \"description\": \"The human-readable name of the region.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"SearchListResponse\": - {\n \"id\": \"SearchListResponse\",\n \"properties\": {\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#searchListResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#searchListResponse\\\".\"\n - \ },\n \"prevPageToken\": {\n \"description\": \"The - token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\",\n \"type\": \"string\"\n - \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"SearchResult\"\n - \ },\n \"description\": \"Pagination information for token - pagination.\",\n \"type\": \"array\"\n },\n \"pageInfo\": - {\n \"description\": \"General pagination information.\",\n \"$ref\": - \"PageInfo\"\n },\n \"eventId\": {\n \"type\": \"string\",\n - \ \"description\": \"Serialized EventId of the request which produced - this response.\"\n },\n \"regionCode\": {\n \"type\": - \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n - \ \"description\": \"The visitorId identifies the visitor.\"\n }\n - \ },\n \"type\": \"object\"\n },\n \"AbuseReport\": {\n \"properties\": - {\n \"abuseTypes\": {\n \"items\": {\n \"$ref\": - \"AbuseType\"\n },\n \"type\": \"array\"\n },\n \"subject\": - {\n \"$ref\": \"Entity\"\n },\n \"relatedEntities\": - {\n \"items\": {\n \"$ref\": \"RelatedEntity\"\n },\n - \ \"type\": \"array\"\n },\n \"description\": {\n \"type\": - \"string\"\n }\n },\n \"id\": \"AbuseReport\",\n \"type\": - \"object\"\n },\n \"VideoSuggestionsTagSuggestion\": {\n \"properties\": - {\n \"categoryRestricts\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"A set of video categories for which the tag is relevant. You can use this - information to display appropriate tag suggestions based on the video category - that the video uploader associates with the video. By default, tag suggestions - are relevant for all categories if there are no restricts defined for the - keyword.\"\n },\n \"tag\": {\n \"description\": \"The - keyword tag suggested for the video.\",\n \"type\": \"string\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"VideoSuggestionsTagSuggestion\",\n - \ \"description\": \"A single tag suggestion with it's relevance information.\"\n - \ },\n \"VideoLiveStreamingDetails\": {\n \"id\": \"VideoLiveStreamingDetails\",\n - \ \"description\": \"Details about the live streaming metadata.\",\n \"properties\": - {\n \"concurrentViewers\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The number of viewers currently - watching the broadcast. The property and its value will be present if the - broadcast has current viewers and the broadcast owner has not hidden the viewcount - for the video. Note that YouTube stops tracking the number of concurrent viewers - for a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\"\n },\n \"actualEndTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The time that the broadcast actually - ended. This value will not be available until the broadcast is over.\",\n - \ \"type\": \"string\"\n },\n \"actualStartTime\": {\n - \ \"description\": \"The time that the broadcast actually started. - This value will not be available until the broadcast begins.\",\n \"format\": - \"date-time\",\n \"type\": \"string\"\n },\n \"activeLiveChatId\": - {\n \"description\": \"The ID of the currently active live chat attached - to this video. This field is filled only if the video is a currently live - broadcast that has live chat. Once the broadcast transitions to complete this - field will be removed and the live chat closed down. For persistent broadcasts - that live chat id will no longer be tied to this video but rather to the new - video being displayed at the persistent page.\",\n \"type\": \"string\"\n - \ },\n \"scheduledStartTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The time that the broadcast is scheduled to begin.\",\n - \ \"format\": \"date-time\"\n },\n \"scheduledEndTime\": - {\n \"type\": \"string\",\n \"format\": \"date-time\",\n - \ \"description\": \"The time that the broadcast is scheduled to end. - If the value is empty or the property is not present, then the broadcast is - scheduled to contiue indefinitely.\"\n }\n },\n \"type\": - \"object\"\n },\n \"MonitorStreamInfo\": {\n \"description\": \"Settings - and Info of the monitor stream\",\n \"type\": \"object\",\n \"id\": - \"MonitorStreamInfo\",\n \"properties\": {\n \"embedHtml\": {\n - \ \"type\": \"string\",\n \"description\": \"HTML code that - embeds a player that plays the monitor stream.\"\n },\n \"broadcastStreamDelayMs\": - {\n \"type\": \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"If you have set the enableMonitorStream property to true, then this property - determines the length of the live broadcast delay.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n - \ ]\n }\n },\n \"enableMonitorStream\": {\n - \ \"description\": \"This value determines whether the monitor stream - is enabled for the broadcast. If the monitor stream is enabled, then YouTube - will broadcast the event content on a special stream intended only for the - broadcaster's consumption. The broadcaster can use the stream to review the - event content and also to identify the optimal times to insert cuepoints. - You need to set this value to true if you intend to have a broadcast delay - for your event. *Note:* This property cannot be updated once the broadcast - is in the testing or live state.\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.update\"\n ]\n },\n - \ \"type\": \"boolean\"\n }\n }\n },\n \"SuperStickerMetadata\": - {\n \"properties\": {\n \"altText\": {\n \"description\": - \"Internationalized alt text that describes the sticker image and any animation - associated with it.\",\n \"type\": \"string\"\n },\n \"altTextLanguage\": - {\n \"description\": \"Specifies the localization language in which - the alt text is returned.\",\n \"type\": \"string\"\n },\n - \ \"stickerId\": {\n \"type\": \"string\",\n \"description\": - \"Unique identifier of the Super Sticker. This is a shorter form of the alt_text - that includes pack name and a recognizable characteristic of the sticker.\"\n - \ }\n },\n \"id\": \"SuperStickerMetadata\",\n \"type\": - \"object\"\n },\n \"TestItemTestItemSnippet\": {\n \"id\": \"TestItemTestItemSnippet\",\n - \ \"type\": \"object\",\n \"properties\": {}\n },\n \"ChannelSnippet\": - {\n \"type\": \"object\",\n \"id\": \"ChannelSnippet\",\n \"description\": - \"Basic details about a channel, including title, description and thumbnails.\",\n - \ \"properties\": {\n \"defaultLanguage\": {\n \"description\": - \"The language of the channel's default title and description.\",\n \"type\": - \"string\"\n },\n \"publishedAt\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time that the channel was created.\"\n },\n \"thumbnails\": - {\n \"description\": \"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. When displaying thumbnails in your application, make sure that - your code uses the image URLs exactly as they are returned in API responses. - For example, your application should not use the http domain instead of the - https domain in a URL returned in an API response. Beginning in July 2018, - channel thumbnail URLs will only be available in the https domain, which is - how the URLs appear in API responses. After that time, you might see broken - images in your application if it tries to load YouTube images from the http - domain. Thumbnail images might be empty for newly created channels and might - take up to one day to populate.\",\n \"$ref\": \"ThumbnailDetails\"\n - \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": - \"The channel's title.\"\n },\n \"customUrl\": {\n \"description\": - \"The custom url of the channel.\",\n \"type\": \"string\"\n },\n - \ \"localized\": {\n \"$ref\": \"ChannelLocalization\",\n \"description\": - \"Localized title and description, read-only.\"\n },\n \"description\": - {\n \"type\": \"string\",\n \"description\": \"The description - of the channel.\"\n },\n \"country\": {\n \"description\": - \"The country of the channel.\",\n \"type\": \"string\"\n }\n - \ }\n },\n \"VideoFileDetails\": {\n \"id\": \"VideoFileDetails\",\n - \ \"properties\": {\n \"bitrateBps\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The uploaded - video file's combined (video and audio) bitrate in bits per second.\"\n },\n - \ \"creationTime\": {\n \"description\": \"The date and time - when the uploaded video file was created. The value is specified in ISO 8601 - format. Currently, the following ISO 8601 formats are supported: - Date only: - YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: YYYY-MM-DDTHH:MM:SS+HH:MM - \",\n \"type\": \"string\"\n },\n \"container\": {\n - \ \"type\": \"string\",\n \"description\": \"The uploaded - video file's container format.\"\n },\n \"videoStreams\": {\n - \ \"items\": {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of video streams contained in the uploaded video file. Each item in the - list contains detailed metadata about a video stream.\"\n },\n \"fileName\": - {\n \"description\": \"The uploaded file's name. This field is present - whether a video file or another type of file was uploaded.\",\n \"type\": - \"string\"\n },\n \"audioStreams\": {\n \"type\": \"array\",\n - \ \"description\": \"A list of audio streams contained in the uploaded - video file. Each item in the list contains detailed metadata about an audio - stream.\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n - \ }\n },\n \"durationMs\": {\n \"description\": - \"The length of the uploaded video in milliseconds.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"fileType\": - {\n \"description\": \"The uploaded file's type as detected by YouTube's - video processing engine. Currently, YouTube only processes video files, but - this field is present whether a video file or another type of file was uploaded.\",\n - \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n - \ \"archive\",\n \"document\",\n \"project\",\n - \ \"other\"\n ],\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"Known video file (e.g., an MP4 file).\",\n \"Audio - only file (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG - image).\",\n \"Archive file (e.g., a ZIP archive).\",\n \"Document - or text file (e.g., MS Word document).\",\n \"Movie project file - (e.g., Microsoft Windows Movie Maker project).\",\n \"Other non-video - file type.\"\n ]\n },\n \"fileSize\": {\n \"format\": - \"uint64\",\n \"type\": \"string\",\n \"description\": \"The - uploaded file's size in bytes. This field is present whether a video file - or another type of file was uploaded.\"\n }\n },\n \"description\": - \"Describes original video file properties, including technical details about - audio and video streams, but also metadata information like content length, - digitization time, or geotagging information.\",\n \"type\": \"object\"\n - \ },\n \"GeoPoint\": {\n \"id\": \"GeoPoint\",\n \"properties\": - {\n \"altitude\": {\n \"description\": \"Altitude above the - reference ellipsoid, in meters.\",\n \"format\": \"double\",\n \"type\": - \"number\"\n },\n \"longitude\": {\n \"description\": - \"Longitude in degrees.\",\n \"format\": \"double\",\n \"type\": - \"number\"\n },\n \"latitude\": {\n \"description\": - \"Latitude in degrees.\",\n \"type\": \"number\",\n \"format\": - \"double\"\n }\n },\n \"description\": \"Geographical coordinates - of a point, in WGS84.\",\n \"type\": \"object\"\n },\n \"I18nLanguageListResponse\": - {\n \"id\": \"I18nLanguageListResponse\",\n \"properties\": {\n - \ \"eventId\": {\n \"type\": \"string\",\n \"description\": - \"Serialized EventId of the request which produced this response.\"\n },\n - \ \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"items\": {\n \"description\": - \"A list of supported i18n languages. In this map, the i18n language ID is - the map key, and its value is the corresponding i18nLanguage resource.\",\n - \ \"items\": {\n \"$ref\": \"I18nLanguage\"\n },\n - \ \"type\": \"array\"\n },\n \"kind\": {\n \"default\": - \"youtube#i18nLanguageListResponse\",\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"ChannelListResponse\": {\n \"id\": - \"ChannelListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"eventId\": {\n \"description\": \"Serialized EventId - of the request which produced this response.\",\n \"type\": \"string\"\n - \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the previous page in the result set.\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"nextPageToken\": {\n - \ \"type\": \"string\",\n \"description\": \"The token that - can be used as the value of the pageToken parameter to retrieve the next page - in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"pageInfo\": {\n \"description\": - \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#channelListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"items\": - {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"Channel\"\n }\n }\n }\n },\n \"ThirdPartyLinkSnippet\": - {\n \"description\": \"Basic information about a third party account - link, including its type and type-specific information.\",\n \"id\": - \"ThirdPartyLinkSnippet\",\n \"type\": \"object\",\n \"properties\": - {\n \"channelToStoreLink\": {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n - \ \"description\": \"Information specific to a link between a channel - and a store on a merchandising platform.\"\n },\n \"type\": - {\n \"enumDescriptions\": [\n \"\",\n \"A link - that is connecting (or about to connect) a channel with a store on a merchandising - platform in order to enable retail commerce capabilities for that channel - on YouTube.\"\n ],\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ],\n \"description\": - \"Type of the link named after the entities that are being linked.\",\n \"type\": - \"string\"\n }\n }\n },\n \"MemberSnippet\": {\n \"properties\": - {\n \"memberDetails\": {\n \"description\": \"Details about - the member.\",\n \"$ref\": \"ChannelProfileDetails\"\n },\n - \ \"creatorChannelId\": {\n \"type\": \"string\",\n \"description\": - \"The id of the channel that's offering memberships.\"\n },\n \"membershipsDetails\": - {\n \"$ref\": \"MembershipsDetails\",\n \"description\": - \"Details about the user's membership.\"\n }\n },\n \"type\": - \"object\",\n \"id\": \"MemberSnippet\"\n },\n \"ChannelStatus\": - {\n \"type\": \"object\",\n \"description\": \"JSON template for - the status part of a channel.\",\n \"id\": \"ChannelStatus\",\n \"properties\": - {\n \"isLinked\": {\n \"description\": \"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.\",\n \"type\": \"boolean\"\n - \ },\n \"madeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"selfDeclaredMadeForKids\": {\n \"type\": \"boolean\"\n - \ },\n \"longUploadsStatus\": {\n \"enum\": [\n \"longUploadsUnspecified\",\n - \ \"allowed\",\n \"eligible\",\n \"disallowed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"description\": - \"The long uploads status of this channel. See https://support.google.com/youtube/answer/71673 - for more information.\",\n \"type\": \"string\"\n },\n \"privacyStatus\": - {\n \"description\": \"Privacy status of the channel.\",\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ],\n \"enum\": [\n \"public\",\n - \ \"unlisted\",\n \"private\"\n ]\n }\n - \ }\n },\n \"ImageSettings\": {\n \"properties\": {\n \"bannerTabletExtraHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size extra high resolution - (2560x424).\",\n \"type\": \"string\"\n },\n \"watchIconImageUrl\": - {\n \"type\": \"string\"\n },\n \"bannerExternalUrl\": - {\n \"type\": \"string\",\n \"description\": \"This is generated - when a ChannelBanner.Insert request has succeeded for the given channel.\"\n - \ },\n \"bannerMobileHdImageUrl\": {\n \"type\": \"string\",\n - \ \"description\": \"Banner image. Mobile size high resolution (1280x360).\"\n - \ },\n \"smallBrandedBannerImageUrl\": {\n \"$ref\": - \"LocalizedProperty\",\n \"description\": \"The URL for the 640px - by 70px banner image that appears below the video player in the default view - of the video watch page. The URL for the image that appears above the top-left - corner of the video player. This is a 25-pixel-high image with a flexible - width that cannot exceed 170 pixels.\"\n },\n \"bannerTabletLowImageUrl\": - {\n \"description\": \"Banner image. Tablet size low resolution (1138x188).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size low resolution (320x88).\"\n },\n \"trackingImageUrl\": - {\n \"description\": \"The URL for a 1px by 1px tracking pixel that - can be used to collect statistics for views of the channel or video pages.\",\n - \ \"type\": \"string\"\n },\n \"backgroundImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the background image shown on the video watch page. The image - should be 1200px by 615px, with a maximum file size of 128k.\"\n },\n - \ \"bannerTabletImageUrl\": {\n \"description\": \"Banner image. - Tablet size (1707x283).\",\n \"type\": \"string\"\n },\n \"smallBrandedBannerImageImapScript\": - {\n \"description\": \"The image map script for the small banner - image.\",\n \"$ref\": \"LocalizedProperty\"\n },\n \"largeBrandedBannerImageImapScript\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The image map script for the large banner image.\"\n },\n \"bannerTvHighImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size high resolution (1920x1080).\"\n },\n \"bannerTvLowImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size low resolution (854x480).\"\n },\n \"largeBrandedBannerImageUrl\": - {\n \"$ref\": \"LocalizedProperty\",\n \"description\": - \"The URL for the 854px by 70px image that appears below the video player - in the expanded video view of the video watch page.\"\n },\n \"bannerMobileImageUrl\": - {\n \"description\": \"Banner image. Mobile size (640x175).\",\n - \ \"type\": \"string\"\n },\n \"bannerImageUrl\": {\n - \ \"type\": \"string\",\n \"description\": \"Banner image. - Desktop size (1060x175).\"\n },\n \"bannerTvImageUrl\": {\n - \ \"description\": \"Banner image. TV size extra high resolution (2120x1192).\",\n - \ \"type\": \"string\"\n },\n \"bannerMobileMediumHdImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - Mobile size medium/high resolution (960x263).\"\n },\n \"bannerTvMediumImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"Banner image. - TV size medium resolution (1280x720).\"\n },\n \"bannerTabletHdImageUrl\": - {\n \"description\": \"Banner image. Tablet size high resolution - (2276x377).\",\n \"type\": \"string\"\n },\n \"bannerMobileExtraHdImageUrl\": - {\n \"description\": \"Banner image. Mobile size high resolution - (1440x395).\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"ImageSettings\",\n \"description\": \"Branding properties for images - associated with the channel.\",\n \"type\": \"object\"\n },\n \"ThirdPartyLinkListResponse\": - {\n \"id\": \"ThirdPartyLinkListResponse\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"items\": {\n \"items\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"type\": \"array\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#thirdPartyLinkListResponse\",\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"I18nRegion\": - {\n \"id\": \"I18nRegion\",\n \"properties\": {\n \"id\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the i18n region.\",\n \"type\": \"string\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#i18nRegion\\\".\",\n \"default\": \"youtube#i18nRegion\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the i18n region, such as region code and - human-readable name.\",\n \"$ref\": \"I18nRegionSnippet\"\n }\n - \ },\n \"description\": \"A *i18nRegion* resource identifies a region - where YouTube is available.\",\n \"type\": \"object\"\n },\n \"CommentSnippet\": - {\n \"description\": \"Basic details about a comment, such as its author - and text.\",\n \"id\": \"CommentSnippet\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"updatedAt\": {\n \"description\": - \"The date and time when the comment was last updated.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"authorDisplayName\": - {\n \"type\": \"string\",\n \"description\": \"The name - of the user who posted the comment.\"\n },\n \"moderationStatus\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment is - awaiting review by a moderator.\",\n \"\",\n \"The comment - is unfit for display.\"\n ],\n \"description\": \"The comment's - moderation status. Will not be set if the comments were requested through - the id filter.\",\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ]\n },\n - \ \"canRate\": {\n \"type\": \"boolean\",\n \"description\": - \"Whether the current viewer can rate this comment.\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"textDisplay\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n },\n \"viewerRating\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n },\n - \ \"videoId\": {\n \"type\": \"string\",\n \"description\": - \"The ID of the video the comment refers to, if any.\"\n },\n \"likeCount\": - {\n \"type\": \"integer\",\n \"description\": \"The total - number of likes this comment has received.\",\n \"format\": \"uint32\"\n - \ },\n \"authorProfileImageUrl\": {\n \"description\": - \"The URL for the avatar of the user who posted the comment.\",\n \"type\": - \"string\"\n },\n \"authorChannelId\": {\n \"$ref\": - \"CommentSnippetAuthorChannelId\"\n },\n \"textOriginal\": {\n - \ \"type\": \"string\",\n \"description\": \"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.\"\n },\n \"authorChannelUrl\": - {\n \"type\": \"string\",\n \"description\": \"Link to the - author's YouTube channel, if any.\"\n },\n \"parentId\": {\n - \ \"description\": \"The unique id of the parent comment, only set - for replies.\",\n \"type\": \"string\"\n },\n \"publishedAt\": - {\n \"description\": \"The date and time when the comment was originally - published.\",\n \"format\": \"date-time\",\n \"type\": \"string\"\n - \ }\n }\n },\n \"Caption\": {\n \"id\": \"Caption\",\n - \ \"description\": \"A *caption* resource represents a YouTube caption - track. A caption track is associated with exactly one YouTube video.\",\n - \ \"properties\": {\n \"id\": {\n \"annotations\": {\n - \ \"required\": [\n \"youtube.captions.update\"\n ]\n - \ },\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube uses to uniquely identify the caption track.\"\n },\n - \ \"snippet\": {\n \"$ref\": \"CaptionSnippet\",\n \"description\": - \"The snippet object contains basic details about the caption.\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#caption\\\".\",\n - \ \"default\": \"youtube#caption\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveChatBan\": - {\n \"id\": \"LiveChatBan\",\n \"description\": \"A `__liveChatBan__` - resource represents a ban for a YouTube live chat.\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatBan\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the ban.\"\n },\n - \ \"snippet\": {\n \"description\": \"The `snippet` object - contains basic details about the ban.\",\n \"$ref\": \"LiveChatBanSnippet\"\n - \ }\n },\n \"type\": \"object\"\n },\n \"ChannelToStoreLinkDetails\": - {\n \"properties\": {\n \"storeName\": {\n \"type\": - \"string\",\n \"description\": \"Name of the store.\"\n },\n - \ \"merchantId\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"Google Merchant Center id of the - store.\"\n },\n \"storeUrl\": {\n \"description\": - \"Landing page of the store.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Information specific to a store on a merchandising - platform linked to a YouTube channel.\",\n \"type\": \"object\",\n \"id\": - \"ChannelToStoreLinkDetails\"\n },\n \"LiveChatMessageAuthorDetails\": - {\n \"type\": \"object\",\n \"properties\": {\n \"isVerified\": - {\n \"description\": \"Whether the author's identity has been verified - by YouTube.\",\n \"type\": \"boolean\"\n },\n \"profileImageUrl\": - {\n \"type\": \"string\",\n \"description\": \"The channels's - avatar URL.\"\n },\n \"displayName\": {\n \"type\": - \"string\",\n \"description\": \"The channel's display name.\"\n - \ },\n \"isChatSponsor\": {\n \"description\": \"Whether - the author is a sponsor of the live chat.\",\n \"type\": \"boolean\"\n - \ },\n \"isChatOwner\": {\n \"type\": \"boolean\",\n - \ \"description\": \"Whether the author is the owner of the live chat.\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": - \"The YouTube channel ID.\"\n },\n \"channelUrl\": {\n \"description\": - \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"isChatModerator\": - {\n \"description\": \"Whether the author is a moderator of the live - chat.\",\n \"type\": \"boolean\"\n }\n },\n \"id\": - \"LiveChatMessageAuthorDetails\"\n },\n \"VideoRating\": {\n \"type\": - \"object\",\n \"id\": \"VideoRating\",\n \"description\": \"Basic - details about rating of a video.\",\n \"properties\": {\n \"videoId\": - {\n \"type\": \"string\",\n \"description\": \"The ID that - YouTube uses to uniquely identify the video.\"\n },\n \"rating\": - {\n \"type\": \"string\",\n \"description\": \"Rating of - a video.\",\n \"enumDescriptions\": [\n \"\",\n \"The - entity is liked.\",\n \"The entity is disliked.\"\n ],\n - \ \"enum\": [\n \"none\",\n \"like\",\n \"dislike\"\n - \ ]\n }\n }\n },\n \"CommentThread\": {\n \"type\": - \"object\",\n \"description\": \"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.\",\n \"properties\": - {\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n },\n \"snippet\": {\n \"$ref\": - \"CommentThreadSnippet\",\n \"description\": \"The snippet object - contains basic details about the comment thread and also the top level comment.\"\n - \ },\n \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#commentThread\",\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#commentThread\\\".\"\n - \ },\n \"id\": {\n \"description\": \"The ID that YouTube - uses to uniquely identify the comment thread.\",\n \"type\": \"string\"\n - \ },\n \"replies\": {\n \"description\": \"The replies - object contains a limited number of replies (if any) to the top level comment - found in the snippet.\",\n \"$ref\": \"CommentThreadReplies\"\n }\n - \ },\n \"id\": \"CommentThread\"\n },\n \"MembershipsDuration\": - {\n \"properties\": {\n \"memberTotalDurationMonths\": {\n \"format\": - \"int32\",\n \"type\": \"integer\",\n \"description\": \"The - cumulative time the user has been a member across all levels in complete months - (the time is rounded down to the nearest integer).\"\n },\n \"memberSince\": - {\n \"type\": \"string\",\n \"description\": \"The date - and time when the user became a continuous member across all levels.\"\n }\n - \ },\n \"id\": \"MembershipsDuration\",\n \"type\": \"object\"\n - \ },\n \"ActivityListResponse\": {\n \"id\": \"ActivityListResponse\",\n - \ \"properties\": {\n \"nextPageToken\": {\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the next page in the result set.\",\n \"type\": \"string\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\",\n \"description\": \"General - pagination information.\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource.\"\n },\n - \ \"items\": {\n \"items\": {\n \"$ref\": \"Activity\"\n - \ },\n \"type\": \"array\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": - {\n \"description\": \"Identifies what kind of resource this is. - Value: the fixed string \\\"youtube#activityListResponse\\\".\",\n \"default\": - \"youtube#activityListResponse\",\n \"type\": \"string\"\n },\n - \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n }\n },\n \"type\": - \"object\"\n },\n \"VideoProcessingDetailsProcessingProgress\": {\n - \ \"type\": \"object\",\n \"description\": \"Video processing progress - and completion time estimate.\",\n \"properties\": {\n \"partsProcessed\": - {\n \"description\": \"The number of parts of the video that YouTube - has already processed. You can estimate the percentage of the video that YouTube - has already processed by calculating: 100 * parts_processed / parts_total - Note that since the estimated number of parts could increase without a corresponding - increase in the number of parts that have already been processed, it is possible - that the calculated progress could periodically decrease while YouTube processes - a video.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"partsTotal\": {\n \"description\": \"An estimate - of the total number of parts that need to be processed for the video. The - number may be updated with more precise estimates while YouTube processes - the video.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"timeLeftMs\": {\n \"format\": \"uint64\",\n - \ \"type\": \"string\",\n \"description\": \"An estimate - of the amount of time, in millseconds, that YouTube needs to finish processing - the video.\"\n }\n },\n \"id\": \"VideoProcessingDetailsProcessingProgress\"\n - \ },\n \"MemberListResponse\": {\n \"type\": \"object\",\n \"properties\": - {\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"tokenPagination\": {\n \"$ref\": - \"TokenPagination\"\n },\n \"items\": {\n \"items\": - {\n \"$ref\": \"Member\"\n },\n \"description\": - \"A list of members that match the request criteria.\",\n \"type\": - \"array\"\n },\n \"kind\": {\n \"default\": \"youtube#memberListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#memberListResponse\\\".\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"description\": \"Etag - of this resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"description\": \"Serialized EventId of the request which produced - this response.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n }\n },\n \"id\": \"MemberListResponse\"\n - \ },\n \"VideoProjectDetails\": {\n \"description\": \"DEPRECATED. - b/157517979: This part was never populated after it was added. However, it - sees non-zero traffic because there is generated client code in the wild that - refers to it [1]. We keep this field and do NOT remove it because otherwise - V3 would return an error when this part gets requested [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html - [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\",\n - \ \"properties\": {},\n \"type\": \"object\",\n \"id\": \"VideoProjectDetails\"\n - \ },\n \"ChannelSectionTargeting\": {\n \"type\": \"object\",\n - \ \"description\": \"ChannelSection targeting setting.\",\n \"id\": - \"ChannelSectionTargeting\",\n \"properties\": {\n \"countries\": - {\n \"description\": \"The country the channel section is targeting.\",\n - \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": - \"array\"\n },\n \"regions\": {\n \"items\": {\n \"type\": - \"string\"\n },\n \"type\": \"array\",\n \"description\": - \"The region the channel section is targeting.\"\n },\n \"languages\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The language - the channel section is targeting.\"\n }\n }\n },\n \"ActivityContentDetailsBulletin\": - {\n \"type\": \"object\",\n \"description\": \"Details about a channel - bulletin post.\",\n \"id\": \"ActivityContentDetailsBulletin\",\n \"properties\": - {\n \"resourceId\": {\n \"description\": \"The resourceId - object contains information that identifies the resource associated with a - bulletin post. @mutable youtube.activities.insert\",\n \"$ref\": - \"ResourceId\"\n }\n }\n },\n \"ChannelContentOwnerDetails\": - {\n \"properties\": {\n \"timeLinked\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time when the channel - was linked to the content owner.\",\n \"type\": \"string\"\n },\n - \ \"contentOwner\": {\n \"description\": \"The ID of the content - owner linked to the channel.\",\n \"type\": \"string\"\n }\n - \ },\n \"type\": \"object\",\n \"description\": \"The contentOwnerDetails - object encapsulates channel data that is relevant for YouTube Partners linked - with the channel.\",\n \"id\": \"ChannelContentOwnerDetails\"\n },\n - \ \"MembershipsLevelListResponse\": {\n \"type\": \"object\",\n \"id\": - \"MembershipsLevelListResponse\",\n \"properties\": {\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"MembershipsLevel\"\n },\n - \ \"type\": \"array\",\n \"description\": \"A list of pricing - levels offered by a creator to the fans.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"kind\": {\n \"default\": - \"youtube#membershipsLevelListResponse\",\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"ChannelContentDetails\": - {\n \"id\": \"ChannelContentDetails\",\n \"description\": \"Details - about the content of a channel.\",\n \"properties\": {\n \"relatedPlaylists\": - {\n \"properties\": {\n \"watchLater\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s watch later playlist. - Use the playlistItems.insert and playlistItems.delete to add or remove items - from that list.\",\n \"type\": \"string\"\n },\n \"likes\": - {\n \"description\": \"The ID of the playlist that contains the - channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete - to add or remove items from that list.\",\n \"type\": \"string\"\n - \ },\n \"favorites\": {\n \"description\": - \"The ID of the playlist that contains the channel\\\"s favorite videos. Use - the playlistItems.insert and playlistItems.delete to add or remove items from - that list.\",\n \"type\": \"string\"\n },\n \"watchHistory\": - {\n \"type\": \"string\",\n \"description\": \"The - ID of the playlist that contains the channel\\\"s watch history. Use the playlistItems.insert - and playlistItems.delete to add or remove items from that list.\"\n },\n - \ \"uploads\": {\n \"description\": \"The ID of the - playlist that contains the channel\\\"s uploaded videos. Use the videos.insert - method to upload new videos and the videos.delete method to delete previously - uploaded videos.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n }\n },\n \"type\": \"object\"\n - \ },\n \"LiveChatModeratorListResponse\": {\n \"id\": \"LiveChatModeratorListResponse\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"pageInfo\": {\n \"$ref\": - \"PageInfo\",\n \"description\": \"General pagination information.\"\n - \ },\n \"items\": {\n \"description\": \"A list of moderators - that match the request criteria.\",\n \"items\": {\n \"$ref\": - \"LiveChatModerator\"\n },\n \"type\": \"array\"\n },\n - \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": - \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": - {\n \"description\": \"The token that can be used as the value of - the pageToken parameter to retrieve the previous page in the result set.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#liveChatModeratorListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#liveChatModeratorListResponse\\\".\"\n },\n - \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n }\n },\n \"VideoAbuseReportReasonListResponse\": - {\n \"type\": \"object\",\n \"properties\": {\n \"visitorId\": - {\n \"description\": \"The `visitorId` identifies the visitor.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"default\": \"youtube#videoAbuseReportReasonListResponse\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n - \ },\n \"eventId\": {\n \"description\": \"Serialized - EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"etag\": {\n \"type\": \"string\",\n - \ \"description\": \"Etag of this resource.\"\n },\n \"items\": - {\n \"items\": {\n \"$ref\": \"VideoAbuseReportReason\"\n - \ },\n \"type\": \"array\",\n \"description\": \"A - list of valid abuse reasons that are used with `video.ReportAbuse`.\"\n }\n - \ },\n \"id\": \"VideoAbuseReportReasonListResponse\"\n },\n \"LiveChatMembershipGiftingDetails\": - {\n \"id\": \"LiveChatMembershipGiftingDetails\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"giftMembershipsCount\": {\n \"format\": - \"int32\",\n \"description\": \"The number of gift memberships purchased - by the user.\",\n \"type\": \"integer\"\n },\n \"giftMembershipsLevelName\": - {\n \"description\": \"The name of the level of the gift memberships - purchased by the user. The Level names are defined by the YouTube channel - offering the Membership. In some situations this field isn't filled.\",\n - \ \"type\": \"string\"\n }\n }\n },\n \"LiveChatBanSnippet\": - {\n \"id\": \"LiveChatBanSnippet\",\n \"properties\": {\n \"liveChatId\": - {\n \"type\": \"string\",\n \"description\": \"The chat - this ban is pertinent to.\"\n },\n \"type\": {\n \"description\": - \"The type of ban.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"An invalid ban type.\",\n \"A permanent ban.\",\n - \ \"A temporary ban.\"\n ],\n \"enum\": [\n \"liveChatBanTypeUnspecified\",\n - \ \"permanent\",\n \"temporary\"\n ]\n },\n - \ \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\"\n - \ },\n \"banDurationSeconds\": {\n \"type\": \"string\",\n - \ \"format\": \"uint64\",\n \"description\": \"The duration - of a ban, only filled if the ban has type TEMPORARY.\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"SearchResult\": {\n \"description\": - \"A search result contains information about a YouTube video, channel, or - playlist that matches the search parameters specified in an API request. While - a search result points to a uniquely identifiable resource, like a video, - it does not have its own persistent data.\",\n \"properties\": {\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#searchResult\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#searchResult\\\".\"\n - \ },\n \"id\": {\n \"$ref\": \"ResourceId\",\n \"description\": - \"The id object contains information that can be used to uniquely identify - the resource that matches the search request.\"\n },\n \"snippet\": - {\n \"$ref\": \"SearchResultSnippet\",\n \"description\": - \"The snippet object contains basic details about a search result, such as - its title or description. For example, if the search result is a video, then - the title will be the video's title and the description will be the video's - description.\"\n }\n },\n \"type\": \"object\",\n \"id\": - \"SearchResult\"\n },\n \"InvideoTiming\": {\n \"id\": \"InvideoTiming\",\n - \ \"properties\": {\n \"type\": {\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"type\": - \"string\",\n \"description\": \"Describes a timing type. If the - value is offsetFromStart, then the offsetMs field represents an offset from - the start of the video. If the value is offsetFromEnd, then the offsetMs field - represents an offset from the end of the video.\",\n \"enum\": [\n - \ \"offsetFromStart\",\n \"offsetFromEnd\"\n ]\n - \ },\n \"offsetMs\": {\n \"description\": \"Defines - the time at which the promotion will appear. Depending on the value of type - the value of the offsetMs field will represent a time offset from the start - or from the end of the video, expressed in milliseconds.\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"durationMs\": - {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": - \"Defines the duration in milliseconds for which the promotion should be displayed. - If missing, the client should use the default.\"\n }\n },\n \"description\": - \"Describes a temporal position of a visual widget inside a video.\",\n \"type\": - \"object\"\n },\n \"PlaylistLocalization\": {\n \"id\": \"PlaylistLocalization\",\n - \ \"description\": \"Playlist localization setting\",\n \"type\": - \"object\",\n \"properties\": {\n \"title\": {\n \"type\": - \"string\",\n \"description\": \"The localized strings for playlist's - title.\"\n },\n \"description\": {\n \"type\": \"string\",\n - \ \"description\": \"The localized strings for playlist's description.\"\n - \ }\n }\n },\n \"LiveBroadcastSnippet\": {\n \"type\": - \"object\",\n \"id\": \"LiveBroadcastSnippet\",\n \"properties\": - {\n \"liveChatId\": {\n \"description\": \"The id of the live - chat for this broadcast.\",\n \"type\": \"string\"\n },\n - \ \"isDefaultBroadcast\": {\n \"type\": \"boolean\",\n \"description\": - \"Indicates whether this broadcast is the default broadcast. Internal only.\"\n - \ },\n \"scheduledStartTime\": {\n \"format\": \"date-time\",\n - \ \"type\": \"string\",\n \"description\": \"The date and - time that the broadcast is scheduled to start.\",\n \"annotations\": - {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n - \ \"youtube.liveBroadcasts.update\"\n ]\n }\n - \ },\n \"publishedAt\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast was added - to YouTube's live broadcast schedule.\",\n \"format\": \"date-time\"\n - \ },\n \"actualEndTime\": {\n \"type\": \"string\",\n - \ \"description\": \"The date and time that the broadcast actually - ended. This information is only available once the broadcast's state is complete.\",\n - \ \"format\": \"date-time\"\n },\n \"thumbnails\": {\n - \ \"description\": \"A map of thumbnail images associated with the - broadcast. For each nested object in this object, the key is the name of the - thumbnail image, and the value is an object that contains other information - about the thumbnail.\",\n \"$ref\": \"ThumbnailDetails\"\n },\n - \ \"scheduledEndTime\": {\n \"format\": \"date-time\",\n \"description\": - \"The date and time that the broadcast is scheduled to end.\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the channel that is publishing - the broadcast.\",\n \"type\": \"string\"\n },\n \"description\": - {\n \"description\": \"The broadcast's description. As with the title, - you can set this field by modifying the broadcast resource or by setting the - description field of the corresponding video resource.\",\n \"type\": - \"string\"\n },\n \"actualStartTime\": {\n \"format\": - \"date-time\",\n \"description\": \"The date and time that the broadcast - actually started. This information is only available once the broadcast's - state is live.\",\n \"type\": \"string\"\n },\n \"title\": - {\n \"type\": \"string\",\n \"annotations\": {\n \"required\": - [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n - \ ]\n },\n \"description\": \"The broadcast's - title. Note that the broadcast represents exactly one YouTube video. You can - set this field by modifying the broadcast resource or by setting the title - field of the corresponding video resource.\"\n }\n },\n \"description\": - \"Basic broadcast information.\"\n },\n \"VideoCategory\": {\n \"description\": - \"A *videoCategory* resource identifies a category that has been or could - be associated with uploaded videos.\",\n \"id\": \"VideoCategory\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"etag\": {\n - \ \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"description\": \"The - ID that YouTube uses to uniquely identify the video category.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the video category, including - its title.\",\n \"$ref\": \"VideoCategorySnippet\"\n },\n - \ \"kind\": {\n \"default\": \"youtube#videoCategory\",\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string \\\"youtube#videoCategory\\\".\"\n }\n - \ }\n },\n \"LiveChatFanFundingEventDetails\": {\n \"type\": - \"object\",\n \"id\": \"LiveChatFanFundingEventDetails\",\n \"properties\": - {\n \"amountMicros\": {\n \"description\": \"The amount of - the fund.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n - \ },\n \"currency\": {\n \"type\": \"string\",\n \"description\": - \"The currency in which the fund was made.\"\n },\n \"amountDisplayString\": - {\n \"type\": \"string\",\n \"description\": \"A rendered - string that displays the fund amount and currency to the user.\"\n },\n - \ \"userComment\": {\n \"type\": \"string\",\n \"description\": - \"The comment added by the user to this fan funding event.\"\n }\n - \ }\n },\n \"Member\": {\n \"description\": \"A *member* resource - represents a member for a YouTube channel. A member provides recurring monetary - support to a creator and receives special benefits.\",\n \"properties\": - {\n \"kind\": {\n \"description\": \"Identifies what kind - of resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#member\"\n - \ },\n \"snippet\": {\n \"description\": \"The snippet - object contains basic details about the member.\",\n \"$ref\": \"MemberSnippet\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"Member\",\n \"type\": \"object\"\n },\n \"LocalizedProperty\": - {\n \"type\": \"object\",\n \"properties\": {\n \"defaultLanguage\": - {\n \"$ref\": \"LanguageTag\",\n \"description\": \"The - language of the default property.\"\n },\n \"default\": {\n - \ \"type\": \"string\"\n },\n \"localized\": {\n \"items\": - {\n \"$ref\": \"LocalizedString\"\n },\n \"type\": - \"array\"\n }\n },\n \"id\": \"LocalizedProperty\"\n },\n - \ \"MembershipsLevelSnippet\": {\n \"id\": \"MembershipsLevelSnippet\",\n - \ \"properties\": {\n \"levelDetails\": {\n \"$ref\": - \"LevelDetails\",\n \"description\": \"Details about the pricing - level.\"\n },\n \"creatorChannelId\": {\n \"description\": - \"The id of the channel that's offering channel memberships.\",\n \"type\": - \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"MembershipsLevel\": - {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n - \ \"description\": \"The ID that YouTube assigns to uniquely identify - the memberships level.\",\n \"type\": \"string\"\n },\n \"snippet\": - {\n \"description\": \"The snippet object contains basic details - about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"default\": - \"youtube#membershipsLevel\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n }\n },\n \"id\": - \"MembershipsLevel\",\n \"description\": \"A *membershipsLevel* resource - represents an offer made by YouTube creators for their fans. Users can become - members of the channel by joining one of the available levels. They will provide - recurring monetary support and receives special benefits.\"\n },\n \"ThirdPartyLinkStatus\": - {\n \"type\": \"object\",\n \"properties\": {\n \"linkStatus\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"enum\": [\n - \ \"unknown\",\n \"failed\",\n \"pending\",\n - \ \"linked\"\n ],\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The third-party link status object contains information about the status - of the link.\"\n },\n \"VideoAbuseReport\": {\n \"id\": \"VideoAbuseReport\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"language\": - {\n \"type\": \"string\",\n \"description\": \"The language - that the content was viewed in.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"The ID that YouTube uses to uniquely - identify the video.\"\n },\n \"secondaryReasonId\": {\n \"description\": - \"The specific, or secondary, reason that this content is abusive (if available). - The value is an abuse report reason ID that is a valid secondary reason for - the primary reason.\",\n \"type\": \"string\"\n },\n \"comments\": - {\n \"type\": \"string\",\n \"description\": \"Additional - comments regarding the abuse report.\"\n },\n \"reasonId\": - {\n \"description\": \"The high-level, or primary, reason that the - content is abusive. The value is an abuse report reason ID.\",\n \"type\": - \"string\"\n }\n }\n },\n \"SuperChatEvent\": {\n \"description\": - \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube - channel.\",\n \"type\": \"object\",\n \"id\": \"SuperChatEvent\",\n - \ \"properties\": {\n \"snippet\": {\n \"$ref\": \"SuperChatEventSnippet\",\n - \ \"description\": \"The `snippet` object contains basic details about - the Super Chat event.\"\n },\n \"kind\": {\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n - \ \"type\": \"string\",\n \"default\": \"youtube#superChatEvent\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The ID that YouTube assigns to uniquely identify the Super Chat event.\"\n - \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": - \"Etag of this resource.\"\n }\n }\n },\n \"Subscription\": - {\n \"properties\": {\n \"id\": {\n \"description\": - \"The ID that YouTube uses to uniquely identify the subscription.\",\n \"type\": - \"string\"\n },\n \"snippet\": {\n \"description\": - \"The snippet object contains basic details about the subscription, including - its title and the channel that the user subscribed to.\",\n \"$ref\": - \"SubscriptionSnippet\"\n },\n \"contentDetails\": {\n \"$ref\": - \"SubscriptionContentDetails\",\n \"description\": \"The contentDetails - object contains basic statistics about the subscription.\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"kind\": {\n \"description\": \"Identifies - what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n - \ \"default\": \"youtube#subscription\",\n \"type\": \"string\"\n - \ },\n \"subscriberSnippet\": {\n \"description\": \"The - subscriberSnippet object contains basic details about the subscriber.\",\n - \ \"$ref\": \"SubscriptionSubscriberSnippet\"\n }\n },\n - \ \"type\": \"object\",\n \"description\": \"A *subscription* resource - contains information about a YouTube user subscription. A subscription notifies - a user when new videos are added to a channel or when another user takes one - of several actions on YouTube, such as uploading a video, rating a video, - or commenting on a video.\",\n \"id\": \"Subscription\"\n },\n \"VideoRecordingDetails\": - {\n \"id\": \"VideoRecordingDetails\",\n \"description\": \"Recording - information associated with the video.\",\n \"properties\": {\n \"recordingDate\": - {\n \"description\": \"The date and time when the video was recorded.\",\n - \ \"type\": \"string\",\n \"format\": \"date-time\"\n },\n - \ \"location\": {\n \"$ref\": \"GeoPoint\",\n \"description\": - \"The geolocation information associated with the video.\"\n },\n \"locationDescription\": - {\n \"description\": \"The text description of the location where - the video was recorded.\",\n \"type\": \"string\"\n }\n },\n - \ \"type\": \"object\"\n },\n \"CommentThreadSnippet\": {\n \"properties\": - {\n \"canReply\": {\n \"type\": \"boolean\",\n \"description\": - \"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.\"\n },\n - \ \"topLevelComment\": {\n \"description\": \"The top level - comment of this thread.\",\n \"$ref\": \"Comment\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID of the video the - comments refer to, if any. No video_id implies a channel discussion comment.\",\n - \ \"type\": \"string\"\n },\n \"isPublic\": {\n \"type\": - \"boolean\",\n \"description\": \"Whether the thread (and therefore - all its comments) is visible to all YouTube users.\"\n },\n \"totalReplyCount\": - {\n \"description\": \"The total number of replies (not including - the top level comment).\",\n \"format\": \"uint32\",\n \"type\": - \"integer\"\n },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n - \ \"description\": \"Basic details about a comment thread.\",\n \"type\": - \"object\",\n \"id\": \"CommentThreadSnippet\"\n },\n \"PageInfo\": - {\n \"type\": \"object\",\n \"description\": \"Paging details for - lists of resources, including total number of items available and number of - resources returned in a single page.\",\n \"properties\": {\n \"totalResults\": - {\n \"description\": \"The total number of results in the result - set.\",\n \"type\": \"integer\",\n \"format\": \"int32\"\n - \ },\n \"resultsPerPage\": {\n \"type\": \"integer\",\n - \ \"description\": \"The number of results included in the API response.\",\n - \ \"format\": \"int32\"\n }\n },\n \"id\": \"PageInfo\"\n - \ },\n \"LiveStreamContentDetails\": {\n \"id\": \"LiveStreamContentDetails\",\n - \ \"description\": \"Detailed settings of a stream.\",\n \"type\": - \"object\",\n \"properties\": {\n \"closedCaptionsIngestionUrl\": - {\n \"type\": \"string\",\n \"description\": \"The ingestion - URL where the closed captions of this stream are sent.\"\n },\n \"isReusable\": - {\n \"description\": \"Indicates whether the stream is reusable, - which means that it can be bound to multiple broadcasts. It is common for - broadcasters to reuse the same stream for many different broadcasts if those - broadcasts occur at different times. If you set this value to false, then - the stream will not be reusable, which means that it can only be bound to - one broadcast. Non-reusable streams differ from reusable streams in the following - ways: - A non-reusable stream can only be bound to one broadcast. - A non-reusable - stream might be deleted by an automated process after the broadcast ends. - - The liveStreams.list method does not list non-reusable streams if you call - the method and set the mine parameter to true. The only way to use that method - to retrieve the resource for a non-reusable stream is to use the id parameter - to identify the stream. \",\n \"type\": \"boolean\"\n }\n - \ }\n },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"properties\": - {\n \"memberMonth\": {\n \"format\": \"uint32\",\n \"description\": - \"The total amount of months (rounded up) the viewer has been a member that - granted them this Member Milestone Chat. This is the same number of months - as is being displayed to YouTube users.\",\n \"type\": \"integer\"\n - \ },\n \"memberLevelName\": {\n \"description\": \"The - name of the Level at which the viever is a member. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\",\n \"type\": \"string\"\n },\n \"userComment\": - {\n \"type\": \"string\",\n \"description\": \"The comment - added by the member to this Member Milestone Chat. This field is empty for - messages without a comment from the member.\"\n }\n },\n \"id\": - \"LiveChatMemberMilestoneChatDetails\",\n \"type\": \"object\"\n },\n - \ \"RelatedEntity\": {\n \"properties\": {\n \"entity\": {\n - \ \"$ref\": \"Entity\"\n }\n },\n \"id\": \"RelatedEntity\",\n - \ \"type\": \"object\"\n },\n \"I18nLanguageSnippet\": {\n \"type\": - \"object\",\n \"properties\": {\n \"hl\": {\n \"description\": - \"A short BCP-47 code that uniquely identifies a language.\",\n \"type\": - \"string\"\n },\n \"name\": {\n \"description\": \"The - human-readable name of the language in the language itself.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Basic details about - an i18n language, such as language code and human-readable name.\",\n \"id\": - \"I18nLanguageSnippet\"\n },\n \"ActivityContentDetailsChannelItem\": - {\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"type\": \"object\",\n - \ \"properties\": {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n - \ \"description\": \"The resourceId object contains information that - identifies the resource that was added to the channel.\"\n }\n },\n - \ \"description\": \"Details about a resource which was added to a channel.\"\n - \ },\n \"LiveBroadcastStatistics\": {\n \"properties\": {\n \"concurrentViewers\": - {\n \"description\": \"The number of viewers currently watching the - broadcast. The property and its value will be present if the broadcast has - current viewers and the broadcast owner has not hidden the viewcount for the - video. Note that YouTube stops tracking the number of concurrent viewers for - a broadcast when the broadcast ends. So, this property would not identify - the number of viewers watching an archived video of a live broadcast that - already ended.\",\n \"type\": \"string\",\n \"format\": - \"uint64\"\n },\n \"totalChatCount\": {\n \"type\": - \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The total number of live chat messages currently on the broadcast. The property - and its value will be present if the broadcast is public, has the live chat - feature enabled, and has at least one message. Note that this field will not - be filled after the broadcast ends. So this property would not identify the - number of chat messages for an archived video of a completed live broadcast.\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveBroadcastStatistics\",\n - \ \"description\": \"Statistics about the live broadcast. These represent - a snapshot of the values at the time of the request. Statistics are only returned - for live broadcasts.\"\n },\n \"LiveChatMessageSnippet\": {\n \"properties\": - {\n \"textMessageDetails\": {\n \"$ref\": \"LiveChatTextMessageDetails\",\n - \ \"description\": \"Details about the text message, this is only - set if the type is 'textMessageEvent'.\"\n },\n \"fanFundingEventDetails\": - {\n \"description\": \"Details about the funding event, this is only - set if the type is 'fanFundingEvent'.\",\n \"$ref\": \"LiveChatFanFundingEventDetails\"\n - \ },\n \"publishedAt\": {\n \"description\": \"The date - and time when the message was orignally published.\",\n \"type\": - \"string\",\n \"format\": \"date-time\"\n },\n \"messageDeletedDetails\": - {\n \"$ref\": \"LiveChatMessageDeletedDetails\"\n },\n \"messageRetractedDetails\": - {\n \"$ref\": \"LiveChatMessageRetractedDetails\"\n },\n \"authorChannelId\": - {\n \"description\": \"The ID of the user that authored this message, - this field is not always filled. textMessageEvent - the user that wrote the - message fanFundingEvent - the user that funded the broadcast newSponsorEvent - - the user that just became a sponsor memberMilestoneChatEvent - the member - that sent the message membershipGiftingEvent - the user that made the purchase - giftMembershipReceivedEvent - the user that received the gift membership messageDeletedEvent - - the moderator that took the action messageRetractedEvent - the author that - retracted their message userBannedEvent - the moderator that took the action - superChatEvent - the user that made the purchase superStickerEvent - the user - that made the purchase\",\n \"type\": \"string\"\n },\n \"userBannedDetails\": - {\n \"$ref\": \"LiveChatUserBannedMessageDetails\"\n },\n - \ \"superStickerDetails\": {\n \"description\": \"Details about - the Super Sticker event, this is only set if the type is 'superStickerEvent'.\",\n - \ \"$ref\": \"LiveChatSuperStickerDetails\"\n },\n \"superChatDetails\": - {\n \"description\": \"Details about the Super Chat event, this is - only set if the type is 'superChatEvent'.\",\n \"$ref\": \"LiveChatSuperChatDetails\"\n - \ },\n \"newSponsorDetails\": {\n \"description\": \"Details - about the New Member Announcement event, this is only set if the type is 'newSponsorEvent'. - Please note that \\\"member\\\" is the new term for \\\"sponsor\\\".\",\n - \ \"$ref\": \"LiveChatNewSponsorDetails\"\n },\n \"giftMembershipReceivedDetails\": - {\n \"$ref\": \"LiveChatGiftMembershipReceivedDetails\",\n \"description\": - \"Details about the Gift Membership Received event, this is only set if the - type is 'giftMembershipReceivedEvent'.\"\n },\n \"type\": {\n - \ \"enum\": [\n \"invalidType\",\n \"textMessageEvent\",\n - \ \"tombstone\",\n \"fanFundingEvent\",\n \"chatEndedEvent\",\n - \ \"sponsorOnlyModeStartedEvent\",\n \"sponsorOnlyModeEndedEvent\",\n - \ \"newSponsorEvent\",\n \"memberMilestoneChatEvent\",\n - \ \"membershipGiftingEvent\",\n \"giftMembershipReceivedEvent\",\n - \ \"messageDeletedEvent\",\n \"messageRetractedEvent\",\n - \ \"userBannedEvent\",\n \"superChatEvent\",\n \"superStickerEvent\"\n - \ ],\n \"type\": \"string\",\n \"description\": - \"The type of message, this will always be present, it determines the contents - of the message as well as which fields will be present.\",\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ]\n },\n \"hasDisplayContent\": {\n \"description\": - \"Whether the message has display content that should be displayed to users.\",\n - \ \"type\": \"boolean\"\n },\n \"membershipGiftingDetails\": - {\n \"description\": \"Details about the Membership Gifting event, - this is only set if the type is 'membershipGiftingEvent'.\",\n \"$ref\": - \"LiveChatMembershipGiftingDetails\"\n },\n \"liveChatId\": - {\n \"type\": \"string\"\n },\n \"displayMessage\": - {\n \"description\": \"Contains a string that can be displayed to - the user. If this field is not present the message is silent, at the moment - only messages of type TOMBSTONE and CHAT_ENDED_EVENT are silent.\",\n \"type\": - \"string\"\n },\n \"memberMilestoneChatDetails\": {\n \"description\": - \"Details about the Member Milestone Chat event, this is only set if the type - is 'memberMilestoneChatEvent'.\",\n \"$ref\": \"LiveChatMemberMilestoneChatDetails\"\n - \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageSnippet\",\n - \ \"description\": \"Next ID: 33\"\n },\n \"VideoAbuseReportReason\": - {\n \"id\": \"VideoAbuseReportReason\",\n \"description\": \"A `__videoAbuseReportReason__` - resource identifies a reason that a video could be reported as abusive. Video - abuse report reasons are used with `video.ReportAbuse`.\",\n \"type\": - \"object\",\n \"properties\": {\n \"snippet\": {\n \"description\": - \"The `snippet` object contains basic details about the abuse report reason.\",\n - \ \"$ref\": \"VideoAbuseReportReasonSnippet\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - this abuse report reason.\"\n },\n \"kind\": {\n \"type\": - \"string\",\n \"description\": \"Identifies what kind of resource - this is. Value: the fixed string `\\\"youtube#videoAbuseReportReason\\\"`.\",\n - \ \"default\": \"youtube#videoAbuseReportReason\"\n },\n \"etag\": - {\n \"type\": \"string\",\n \"description\": \"Etag of this - resource.\"\n }\n }\n },\n \"IngestionInfo\": {\n \"id\": - \"IngestionInfo\",\n \"properties\": {\n \"rtmpsBackupIngestionAddress\": - {\n \"type\": \"string\",\n \"description\": \"This ingestion - url may be used instead of backupIngestionAddress in order to stream via RTMPS. - Not applicable to non-RTMP streams.\"\n },\n \"streamName\": - {\n \"type\": \"string\",\n \"description\": \"The stream - name that YouTube assigns to the video stream.\"\n },\n \"rtmpsIngestionAddress\": - {\n \"description\": \"This ingestion url may be used instead of - ingestionAddress in order to stream via RTMPS. Not applicable to non-RTMP - streams.\",\n \"type\": \"string\"\n },\n \"backupIngestionAddress\": - {\n \"description\": \"The backup ingestion URL that you should use - to stream video to YouTube. You have the option of simultaneously streaming - the content that you are sending to the ingestionAddress to this URL.\",\n - \ \"type\": \"string\"\n },\n \"ingestionAddress\": - {\n \"description\": \"The primary ingestion URL that you should - use to stream video to YouTube. You must stream video to this URL. Depending - on which application or tool you use to encode your video stream, you may - need to enter the stream URL and stream name separately or you may need to - concatenate them in the following format: *STREAM_URL/STREAM_NAME* \",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Describes information - necessary for ingesting an RTMP, HTTP, or SRT stream.\",\n \"type\": - \"object\"\n },\n \"TokenPagination\": {\n \"properties\": {},\n - \ \"description\": \"Stub token pagination template to suppress results.\",\n - \ \"id\": \"TokenPagination\",\n \"type\": \"object\"\n },\n \"PlaylistItemListResponse\": - {\n \"properties\": {\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"etag\": {\n - \ \"type\": \"string\"\n },\n \"items\": {\n \"description\": - \"A list of playlist items that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"type\": - \"array\"\n },\n \"kind\": {\n \"type\": \"string\",\n - \ \"default\": \"youtube#playlistItemListResponse\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItemListResponse\\\". - Etag of this resource.\"\n },\n \"eventId\": {\n \"type\": - \"string\",\n \"description\": \"Serialized EventId of the request - which produced this response.\"\n },\n \"nextPageToken\": {\n - \ \"description\": \"The token that can be used as the value of the - pageToken parameter to retrieve the next page in the result set.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"PlaylistItemListResponse\",\n - \ \"type\": \"object\"\n },\n \"VideoGetRatingResponse\": {\n \"properties\": - {\n \"kind\": {\n \"default\": \"youtube#videoGetRatingResponse\",\n - \ \"type\": \"string\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoGetRatingResponse\\\".\"\n - \ },\n \"etag\": {\n \"description\": \"Etag of this - resource.\",\n \"type\": \"string\"\n },\n \"eventId\": - {\n \"type\": \"string\",\n \"description\": \"Serialized - EventId of the request which produced this response.\"\n },\n \"visitorId\": - {\n \"type\": \"string\",\n \"description\": \"The visitorId - identifies the visitor.\"\n },\n \"items\": {\n \"type\": - \"array\",\n \"description\": \"A list of ratings that match the - request criteria.\",\n \"items\": {\n \"$ref\": \"VideoRating\"\n - \ }\n }\n },\n \"id\": \"VideoGetRatingResponse\",\n - \ \"type\": \"object\"\n },\n \"VideoListResponse\": {\n \"id\": - \"VideoListResponse\",\n \"type\": \"object\",\n \"properties\": - {\n \"etag\": {\n \"description\": \"Etag of this resource.\",\n - \ \"type\": \"string\"\n },\n \"kind\": {\n \"default\": - \"youtube#videoListResponse\",\n \"description\": \"Identifies what - kind of resource this is. Value: the fixed string \\\"youtube#videoListResponse\\\".\",\n - \ \"type\": \"string\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n },\n \"items\": {\n \"type\": \"array\",\n - \ \"items\": {\n \"$ref\": \"Video\"\n }\n },\n - \ \"prevPageToken\": {\n \"type\": \"string\",\n \"description\": - \"The token that can be used as the value of the pageToken parameter to retrieve - the previous page in the result set.\"\n },\n \"nextPageToken\": - {\n \"type\": \"string\",\n \"description\": \"The token - that can be used as the value of the pageToken parameter to retrieve the next - page in the result set.\"\n },\n \"visitorId\": {\n \"description\": - \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n - \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n - \ },\n \"pageInfo\": {\n \"description\": \"General - pagination information.\",\n \"$ref\": \"PageInfo\"\n }\n - \ }\n },\n \"Cuepoint\": {\n \"id\": \"Cuepoint\",\n \"type\": - \"object\",\n \"description\": \"Note that there may be a 5-second end-point - resolution issue. For instance, if a cuepoint comes in for 22:03:27, we may - stuff the cuepoint into 22:03:25 or 22:03:30, depending. This is an artifact - of HLS.\",\n \"properties\": {\n \"etag\": {\n \"type\": - \"string\"\n },\n \"cueType\": {\n \"enum\": [\n \"cueTypeUnspecified\",\n - \ \"cueTypeAd\"\n ],\n \"enumDescriptions\": [\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\"\n - \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": - \"The identifier for cuepoint resource.\"\n },\n \"walltimeMs\": - {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": - \"The wall clock time at which the cuepoint should be inserted. Only one of - insertion_offset_time_ms and walltime_ms may be set at a time.\"\n },\n - \ \"durationSecs\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"description\": \"The duration of this cuepoint.\"\n - \ },\n \"insertionOffsetTimeMs\": {\n \"type\": \"string\",\n - \ \"format\": \"int64\",\n \"description\": \"The time when - the cuepoint should be inserted by offset to the broadcast actual start time.\"\n - \ }\n }\n },\n \"VideoAbuseReportSecondaryReason\": {\n \"id\": - \"VideoAbuseReportSecondaryReason\",\n \"type\": \"object\",\n \"properties\": - {\n \"label\": {\n \"type\": \"string\",\n \"description\": - \"The localized label for this abuse report secondary reason.\"\n },\n - \ \"id\": {\n \"description\": \"The ID of this abuse report - secondary reason.\",\n \"type\": \"string\"\n }\n }\n - \ },\n \"LiveChatMessageRetractedDetails\": {\n \"properties\": - {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n - \ },\n \"id\": \"LiveChatMessageRetractedDetails\",\n \"type\": - \"object\"\n },\n \"CaptionSnippet\": {\n \"description\": \"Basic - details about a caption track, such as its language and name.\",\n \"id\": - \"CaptionSnippet\",\n \"properties\": {\n \"isLarge\": {\n \"description\": - \"Indicates whether the caption track uses large text for the vision-impaired. - The default value is false.\",\n \"type\": \"boolean\"\n },\n - \ \"trackKind\": {\n \"enum\": [\n \"standard\",\n - \ \"ASR\",\n \"forced\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"description\": \"The caption track's type.\",\n \"type\": - \"string\"\n },\n \"failureReason\": {\n \"enumDescriptions\": - [\n \"\",\n \"\",\n \"\"\n ],\n - \ \"enum\": [\n \"unknownFormat\",\n \"unsupportedFormat\",\n - \ \"processingFailed\"\n ],\n \"description\": - \"The reason that YouTube failed to process the caption track. This property - is only present if the state property's value is failed.\",\n \"type\": - \"string\"\n },\n \"status\": {\n \"type\": \"string\",\n - \ \"description\": \"The caption track's status.\",\n \"enum\": - [\n \"serving\",\n \"syncing\",\n \"failed\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\"\n ]\n },\n \"isAutoSynced\": {\n \"description\": - \"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.\",\n \"type\": \"boolean\"\n },\n \"isCC\": - {\n \"type\": \"boolean\",\n \"description\": \"Indicates - whether the track contains closed captions for the deaf and hard of hearing. - The default value is false.\"\n },\n \"isDraft\": {\n \"description\": - \"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. @mutable youtube.captions.insert - youtube.captions.update\",\n \"type\": \"boolean\"\n },\n - \ \"name\": {\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"description\": \"The name of the caption track. The name is intended - to be visible to the user as an option during playback.\",\n \"type\": - \"string\"\n },\n \"lastUpdated\": {\n \"format\": - \"date-time\",\n \"type\": \"string\",\n \"description\": - \"The date and time when the caption track was last updated.\"\n },\n - \ \"videoId\": {\n \"description\": \"The ID that YouTube uses - to uniquely identify the video associated with the caption track. @mutable - youtube.captions.insert\",\n \"annotations\": {\n \"required\": - [\n \"youtube.captions.insert\"\n ]\n },\n - \ \"type\": \"string\"\n },\n \"isEasyReader\": {\n - \ \"type\": \"boolean\",\n \"description\": \"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.\"\n },\n \"audioTrackType\": - {\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The type of audio track associated with the caption - track.\",\n \"enum\": [\n \"unknown\",\n \"primary\",\n - \ \"commentary\",\n \"descriptive\"\n ]\n },\n - \ \"language\": {\n \"description\": \"The language of the - caption track. The property value is a BCP-47 language tag.\",\n \"type\": - \"string\",\n \"annotations\": {\n \"required\": [\n \"youtube.captions.insert\"\n - \ ]\n }\n }\n },\n \"type\": \"object\"\n - \ },\n \"ActivityContentDetailsRecommendation\": {\n \"id\": \"ActivityContentDetailsRecommendation\",\n - \ \"type\": \"object\",\n \"properties\": {\n \"seedResourceId\": - {\n \"description\": \"The seedResourceId object contains information - about the resource that caused the recommendation.\",\n \"$ref\": - \"ResourceId\"\n },\n \"reason\": {\n \"enum\": [\n - \ \"reasonUnspecified\",\n \"videoFavorited\",\n \"videoLiked\",\n - \ \"videoWatched\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"The reason that the resource is recommended to - the user.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n - \ \"\",\n \"\"\n ]\n },\n \"resourceId\": - {\n \"description\": \"The resourceId object contains information - that identifies the recommended resource.\",\n \"$ref\": \"ResourceId\"\n - \ }\n },\n \"description\": \"Information that identifies - the recommended resource.\"\n },\n \"LiveChatUserBannedMessageDetails\": - {\n \"type\": \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\",\n - \ \"properties\": {\n \"banType\": {\n \"description\": - \"The type of ban.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"\"\n ],\n \"enum\": - [\n \"permanent\",\n \"temporary\"\n ]\n },\n - \ \"banDurationSeconds\": {\n \"format\": \"uint64\",\n \"type\": - \"string\",\n \"description\": \"The duration of the ban. This property - is only present if the banType is temporary.\"\n },\n \"bannedUserDetails\": - {\n \"description\": \"The details of the user that was banned.\",\n - \ \"$ref\": \"ChannelProfileDetails\"\n }\n }\n },\n - \ \"LiveStreamHealthStatus\": {\n \"properties\": {\n \"configurationIssues\": - {\n \"description\": \"The configurations issues on this stream\",\n - \ \"type\": \"array\",\n \"items\": {\n \"$ref\": - \"LiveStreamConfigurationIssue\"\n }\n },\n \"status\": - {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"\",\n \"\",\n \"\",\n \"\"\n - \ ],\n \"description\": \"The status code of this stream\",\n - \ \"enum\": [\n \"good\",\n \"ok\",\n \"bad\",\n - \ \"noData\",\n \"revoked\"\n ]\n },\n - \ \"lastUpdateTimeSeconds\": {\n \"type\": \"string\",\n \"format\": - \"uint64\",\n \"description\": \"The last time this status was updated - (in seconds)\"\n }\n },\n \"id\": \"LiveStreamHealthStatus\",\n - \ \"type\": \"object\"\n },\n \"LiveChatSuperStickerDetails\": {\n - \ \"type\": \"object\",\n \"properties\": {\n \"tier\": {\n - \ \"description\": \"The tier in which the amount belongs. Lower amounts - belong to lower tiers. The lowest tier is 1.\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\"\n },\n \"superStickerMetadata\": - {\n \"$ref\": \"SuperStickerMetadata\",\n \"description\": - \"Information about the Super Sticker.\"\n },\n \"amountDisplayString\": - {\n \"description\": \"A rendered string that displays the fund amount - and currency to the user.\",\n \"type\": \"string\"\n },\n - \ \"amountMicros\": {\n \"description\": \"The amount purchased - by the user, in micros (1,750,000 micros = 1.75).\",\n \"format\": - \"uint64\",\n \"type\": \"string\"\n },\n \"currency\": - {\n \"description\": \"The currency in which the purchase was made.\",\n - \ \"type\": \"string\"\n }\n },\n \"id\": \"LiveChatSuperStickerDetails\"\n - \ },\n \"TestItem\": {\n \"properties\": {\n \"id\": {\n - \ \"type\": \"string\"\n },\n \"gaia\": {\n \"format\": - \"int64\",\n \"type\": \"string\"\n },\n \"featuredPart\": - {\n \"type\": \"boolean\"\n },\n \"snippet\": {\n \"$ref\": - \"TestItemTestItemSnippet\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"TestItem\"\n },\n \"LiveChatGiftMembershipReceivedDetails\": - {\n \"properties\": {\n \"associatedMembershipGiftingMessageId\": - {\n \"type\": \"string\",\n \"description\": \"The ID of - the membership gifting message that is related to this gift membership. This - ID will always refer to a message whose type is 'membershipGiftingEvent'.\"\n - \ },\n \"memberLevelName\": {\n \"type\": \"string\",\n - \ \"description\": \"The name of the Level at which the viewer is - a member. This matches the `snippet.membershipGiftingDetails.giftMembershipsLevelName` - of the associated membership gifting message. The Level names are defined - by the YouTube channel offering the Membership. In some situations this field - isn't filled.\"\n },\n \"gifterChannelId\": {\n \"description\": - \"The ID of the user that made the membership gifting purchase. This matches - the `snippet.authorChannelId` of the associated membership gifting message.\",\n - \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n - \ \"id\": \"LiveChatGiftMembershipReceivedDetails\"\n },\n \"ActivityContentDetailsPromotedItem\": - {\n \"type\": \"object\",\n \"id\": \"ActivityContentDetailsPromotedItem\",\n - \ \"properties\": {\n \"ctaType\": {\n \"description\": - \"The type of call-to-action, a message to the user indicating action that - can be taken.\",\n \"enumDescriptions\": [\n \"\",\n \"\"\n - \ ],\n \"type\": \"string\",\n \"enum\": [\n \"ctaTypeUnspecified\",\n - \ \"visitAdvertiserSite\"\n ]\n },\n \"videoId\": - {\n \"description\": \"The ID that YouTube uses to uniquely identify - the promoted video.\",\n \"type\": \"string\"\n },\n \"creativeViewUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user was shown this promoted item.\",\n \"type\": \"string\"\n - \ },\n \"adTag\": {\n \"description\": \"The URL the - client should fetch to request a promoted item.\",\n \"type\": \"string\"\n - \ },\n \"destinationUrl\": {\n \"description\": \"The - URL the client should direct the user to, if the user chooses to visit the - advertiser's website.\",\n \"type\": \"string\"\n },\n \"impressionUrl\": - {\n \"items\": {\n \"type\": \"string\"\n },\n - \ \"type\": \"array\",\n \"description\": \"The list of impression - URLs. The client should ping all of these URLs to indicate that the user was - shown this promoted item.\"\n },\n \"customCtaButtonText\": - {\n \"type\": \"string\",\n \"description\": \"The custom - call-to-action button text. If specified, it will override the default button - text for the cta_type.\"\n },\n \"forecastingUrl\": {\n \"description\": - \"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.\",\n \"items\": {\n \"type\": \"string\"\n - \ },\n \"type\": \"array\"\n },\n \"descriptionText\": - {\n \"description\": \"The text description to accompany the promoted - item.\",\n \"type\": \"string\"\n },\n \"clickTrackingUrl\": - {\n \"description\": \"The URL the client should ping to indicate - that the user clicked through on this promoted item.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Details about a - resource which is being promoted.\"\n },\n \"SuperChatEventListResponse\": - {\n \"type\": \"object\",\n \"id\": \"SuperChatEventListResponse\",\n - \ \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n - \ \"description\": \"Identifies what kind of resource this is. Value: - the fixed string \\\"youtube#superChatEventListResponse\\\".\",\n \"default\": - \"youtube#superChatEventListResponse\"\n },\n \"tokenPagination\": - {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": - {\n \"description\": \"Etag of this resource.\",\n \"type\": - \"string\"\n },\n \"nextPageToken\": {\n \"type\": - \"string\",\n \"description\": \"The token that can be used as the - value of the pageToken parameter to retrieve the next page in the result set.\"\n - \ },\n \"visitorId\": {\n \"description\": \"The visitorId - identifies the visitor.\",\n \"type\": \"string\"\n },\n \"pageInfo\": - {\n \"$ref\": \"PageInfo\"\n },\n \"items\": {\n \"description\": - \"A list of Super Chat purchases that match the request criteria.\",\n \"items\": - {\n \"$ref\": \"SuperChatEvent\"\n },\n \"type\": - \"array\"\n },\n \"eventId\": {\n \"description\": - \"Serialized EventId of the request which produced this response.\",\n \"type\": - \"string\"\n }\n }\n },\n \"ThirdPartyLink\": {\n \"id\": - \"ThirdPartyLink\",\n \"type\": \"object\",\n \"properties\": {\n - \ \"status\": {\n \"$ref\": \"ThirdPartyLinkStatus\",\n \"description\": - \"The status object contains information about the status of the link.\"\n - \ },\n \"linkingToken\": {\n \"description\": \"The - linking_token identifies a YouTube account and channel with which the third - party account is linked.\",\n \"type\": \"string\"\n },\n - \ \"snippet\": {\n \"description\": \"The snippet object contains - basic details about the third- party account link.\",\n \"$ref\": - \"ThirdPartyLinkSnippet\"\n },\n \"etag\": {\n \"type\": - \"string\",\n \"description\": \"Etag of this resource\"\n },\n - \ \"kind\": {\n \"type\": \"string\",\n \"description\": - \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n - \ \"default\": \"youtube#thirdPartyLink\"\n }\n },\n \"description\": - \"A *third party account link* resource represents a link between a YouTube - account or a channel and an account on a third-party service.\"\n },\n - \ \"LiveChatSuperChatDetails\": {\n \"properties\": {\n \"currency\": - {\n \"type\": \"string\",\n \"description\": \"The currency - in which the purchase was made.\"\n },\n \"amountMicros\": {\n - \ \"description\": \"The amount purchased by the user, in micros (1,750,000 - micros = 1.75).\",\n \"format\": \"uint64\",\n \"type\": - \"string\"\n },\n \"amountDisplayString\": {\n \"description\": - \"A rendered string that displays the fund amount and currency to the user.\",\n - \ \"type\": \"string\"\n },\n \"tier\": {\n \"format\": - \"uint32\",\n \"description\": \"The tier in which the amount belongs. - Lower amounts belong to lower tiers. The lowest tier is 1.\",\n \"type\": - \"integer\"\n },\n \"userComment\": {\n \"description\": - \"The comment added by the user to this Super Chat event.\",\n \"type\": - \"string\"\n }\n },\n \"id\": \"LiveChatSuperChatDetails\",\n - \ \"type\": \"object\"\n }\n },\n \"parameters\": {\n \"access_token\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n \"description\": - \"OAuth access token.\"\n },\n \"fields\": {\n \"description\": - \"Selector specifying which fields to include in a partial response.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n },\n \"upload_protocol\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n \"description\": - \"Upload protocol for media (e.g. \\\"raw\\\", \\\"multipart\\\").\"\n },\n - \ \"alt\": {\n \"type\": \"string\",\n \"description\": \"Data - format for response.\",\n \"enum\": [\n \"json\",\n \"media\",\n - \ \"proto\"\n ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"Responses with Content-Type of application/json\",\n \"Media - download with context-dependent Content-Type\",\n \"Responses with - Content-Type of application/x-protobuf\"\n ],\n \"default\": \"json\"\n - \ },\n \"quotaUser\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"callback\": {\n \"location\": - \"query\",\n \"description\": \"JSONP\",\n \"type\": \"string\"\n - \ },\n \"key\": {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"uploadType\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Legacy upload protocol - for media (e.g. \\\"media\\\", \\\"multipart\\\").\"\n },\n \"$.xgafv\": - {\n \"location\": \"query\",\n \"enumDescriptions\": [\n \"v1 - error format\",\n \"v2 error format\"\n ],\n \"description\": - \"V1 error format.\",\n \"enum\": [\n \"1\",\n \"2\"\n - \ ],\n \"type\": \"string\"\n },\n \"oauth_token\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": \"OAuth 2.0 - token for the current user.\"\n },\n \"prettyPrint\": {\n \"default\": - \"true\",\n \"location\": \"query\",\n \"description\": \"Returns - response with indentations and line breaks.\",\n \"type\": \"boolean\"\n - \ }\n },\n \"id\": \"youtube:v3\",\n \"rootUrl\": \"https://youtube.googleapis.com/\",\n - \ \"title\": \"YouTube Data API v3\",\n \"icons\": {\n \"x32\": \"http://www.google.com/images/icons/product/search-32.gif\",\n - \ \"x16\": \"http://www.google.com/images/icons/product/search-16.gif\"\n - \ },\n \"servicePath\": \"\",\n \"resources\": {\n \"commentThreads\": - {\n \"methods\": {\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Inserts - a new resource into this collection.\",\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"path\": - \"youtube/v3/commentThreads\",\n \"response\": {\n \"$ref\": - \"CommentThread\"\n },\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"repeated\": - true,\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.commentThreads.insert\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"request\": {\n \"$ref\": \"CommentThread\"\n - \ }\n },\n \"list\": {\n \"id\": \"youtube.commentThreads.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"CommentThreadListResponse\"\n - \ },\n \"parameters\": {\n \"channelId\": {\n - \ \"description\": \"Returns the comment threads for all the channel - comments (ie does not include comments left on videos).\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"moderationStatus\": - {\n \"enum\": [\n \"published\",\n \"heldForReview\",\n - \ \"likelySpam\",\n \"rejected\"\n ],\n - \ \"default\": \"published\",\n \"description\": - \"Limits the returned comment threads to those with the specified moderation - status. Not compatible with the 'id' filter. Valid values: published, heldForReview, - likelySpam.\",\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"The comment is available for public display.\",\n \"The - comment is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Returns the comment threads with the given IDs for Stubby or Apiary.\"\n - \ },\n \"textFormat\": {\n \"default\": - \"html\",\n \"type\": \"string\",\n \"description\": - \"The requested text format for the returned comments.\",\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ],\n - \ \"location\": \"query\"\n },\n \"order\": - {\n \"enumDescriptions\": [\n \"\",\n \"Order - by time.\",\n \"Order by relevance.\"\n ],\n \"location\": - \"query\",\n \"default\": \"time\",\n \"type\": - \"string\",\n \"enum\": [\n \"orderUnspecified\",\n - \ \"time\",\n \"relevance\"\n ]\n - \ },\n \"videoId\": {\n \"description\": - \"Returns the comment threads of the specified video.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"searchTerms\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Limits the returned comment threads to those - matching the specified key words. Not compatible with the 'id' filter.\"\n - \ },\n \"part\": {\n \"repeated\": true,\n - \ \"required\": true,\n \"description\": \"The *part* - parameter specifies a comma-separated list of one or more commentThread resource - properties that the API response will include.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"type\": \"integer\",\n - \ \"maximum\": \"100\",\n \"minimum\": \"1\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"20\",\n \"location\": - \"query\"\n },\n \"allThreadsRelatedToChannelId\": {\n - \ \"description\": \"Returns the comment threads of all videos - of the channel and the channel comments as well.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/commentThreads\"\n }\n }\n },\n - \ \"captions\": {\n \"methods\": {\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"path\": \"youtube/v3/captions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"DELETE\",\n \"flatPath\": - \"youtube/v3/captions\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"onBehalfOf\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\"\n }\n },\n \"id\": \"youtube.captions.delete\",\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"list\": {\n \"parameterOrder\": [\n \"part\",\n - \ \"videoId\"\n ],\n \"id\": \"youtube.captions.list\",\n - \ \"path\": \"youtube/v3/captions\",\n \"flatPath\": \"youtube/v3/captions\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"description\": \"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.\",\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"id\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"description\": \"Returns - the captions with the given IDs for Stubby or Apiary.\"\n },\n - \ \"videoId\": {\n \"required\": true,\n \"description\": - \"Returns the captions for the specified video.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOf\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"ID of the Google+ Page for the channel that - the request is on behalf of.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"response\": {\n \"$ref\": \"CaptionListResponse\"\n - \ }\n },\n \"update\": {\n \"request\": {\n - \ \"$ref\": \"Caption\"\n },\n \"mediaUpload\": - {\n \"accept\": [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"path\": \"/upload/youtube/v3/captions\",\n - \ \"multipart\": true\n }\n },\n \"maxSize\": - \"104857600\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"supportsMediaUpload\": true,\n \"response\": - {\n \"$ref\": \"Caption\"\n },\n \"path\": \"youtube/v3/captions\",\n - \ \"flatPath\": \"youtube/v3/captions\",\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\"\n - \ },\n \"sync\": {\n \"description\": \"Extra - parameter to allow automatically syncing the uploaded caption/transcript with - the audio.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is on behalf of.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"id\": \"youtube.captions.update\"\n - \ },\n \"insert\": {\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"Caption\"\n - \ },\n \"path\": \"youtube/v3/captions\",\n \"supportsMediaUpload\": - true,\n \"response\": {\n \"$ref\": \"Caption\"\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"mediaUpload\": {\n \"accept\": - [\n \"text/xml\",\n \"application/octet-stream\",\n - \ \"*/*\"\n ],\n \"protocols\": {\n \"resumable\": - {\n \"multipart\": true,\n \"path\": \"/resumable/upload/youtube/v3/captions\"\n - \ },\n \"simple\": {\n \"multipart\": - true,\n \"path\": \"/upload/youtube/v3/captions\"\n }\n - \ },\n \"maxSize\": \"104857600\"\n },\n \"flatPath\": - \"youtube/v3/captions\",\n \"id\": \"youtube.captions.insert\",\n - \ \"parameters\": {\n \"onBehalfOf\": {\n \"description\": - \"ID of the Google+ Page for the channel that the request is be on behalf - of\",\n \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"The - *part* parameter specifies the caption resource parts that the API response - will include. Set the parameter value to snippet.\",\n \"repeated\": - true,\n \"required\": true\n },\n \"sync\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Extra parameter to allow automatically syncing - the uploaded caption/transcript with the audio.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"type\": - \"string\"\n }\n }\n },\n \"download\": - {\n \"description\": \"Downloads a caption track.\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"path\": \"youtube/v3/captions/{id}\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"flatPath\": \"youtube/v3/captions/{id}\",\n - \ \"useMediaDownloadService\": true,\n \"parameters\": {\n - \ \"tlang\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"tlang is the language code; - machine translate the captions into this language.\"\n },\n \"id\": - {\n \"required\": true,\n \"location\": \"path\",\n - \ \"description\": \"The ID of the caption track to download, - required for One Platform.\",\n \"type\": \"string\"\n },\n - \ \"tfmt\": {\n \"description\": \"Convert the captions - into this format. Supported options are sbv, srt, and vtt.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*Note:* - This parameter is intended exclusively for YouTube content partners. The *onBehalfOfContentOwner* - parameter indicates that the request's authorization credentials identify - a YouTube CMS user who is acting on behalf of the content owner specified - in the parameter value. This parameter is intended for YouTube content partners - that own and manage many different YouTube channels. It allows content owners - to authenticate once and get access to all their video and channel data, without - having to provide authentication credentials for each individual channel. - The actual CMS account that the user authenticates with must be linked to - the specified YouTube content owner.\",\n \"location\": \"query\"\n - \ },\n \"onBehalfOf\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"ID - of the Google+ Page for the channel that the request is be on behalf of\"\n - \ }\n },\n \"id\": \"youtube.captions.download\",\n - \ \"httpMethod\": \"GET\",\n \"supportsMediaDownload\": true\n - \ }\n }\n },\n \"channels\": {\n \"methods\": {\n \"list\": - {\n \"response\": {\n \"$ref\": \"ChannelListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/channels\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/channels\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\",\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\"\n - \ ],\n \"parameters\": {\n \"pageToken\": {\n - \ \"description\": \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"part\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"required\": true,\n - \ \"description\": \"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.\",\n \"repeated\": - true\n },\n \"categoryId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Return the channels within the specified guide category ID.\"\n },\n - \ \"maxResults\": {\n \"location\": \"query\",\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"default\": \"5\",\n \"minimum\": - \"0\",\n \"maximum\": \"50\"\n },\n \"mySubscribers\": - {\n \"type\": \"boolean\",\n \"description\": \"Return - the channels subscribed to the authenticated user\",\n \"location\": - \"query\"\n },\n \"mine\": {\n \"description\": - \"Return the ids of channels owned by the authenticated user.\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"managedByMe\": - {\n \"description\": \"Return the channels managed by the authenticated - user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"forUsername\": {\n \"description\": - \"Return the channel associated with a YouTube username.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Return the channels with the - specified IDs.\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"description\": \"Stands for \\\"host language\\\". Specifies - the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.channels.list\"\n },\n \"update\": {\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/channels\",\n \"id\": \"youtube.channels.update\",\n - \ \"httpMethod\": \"PUT\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/channels\",\n \"response\": {\n - \ \"$ref\": \"Channel\"\n },\n \"request\": {\n - \ \"$ref\": \"Channel\"\n },\n \"description\": - \"Updates an existing resource.\"\n }\n }\n },\n \"playlists\": - {\n \"methods\": {\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"flatPath\": - \"youtube/v3/playlists\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Playlist\"\n - \ },\n \"id\": \"youtube.playlists.insert\",\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"required\": true,\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n }\n },\n \"path\": - \"youtube/v3/playlists\",\n \"httpMethod\": \"POST\",\n \"parameterOrder\": - [\n \"part\"\n ]\n },\n \"list\": {\n \"id\": - \"youtube.playlists.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"response\": {\n \"$ref\": \"PlaylistListResponse\"\n - \ },\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"flatPath\": \"youtube/v3/playlists\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Return the playlists owned by - the specified channel ID.\",\n \"type\": \"string\"\n },\n - \ \"pageToken\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"maxResults\": - {\n \"default\": \"5\",\n \"format\": \"uint32\",\n - \ \"location\": \"query\",\n \"minimum\": \"0\",\n - \ \"maximum\": \"50\",\n \"type\": \"integer\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"*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.\"\n },\n \"hl\": {\n \"description\": - \"Return content in specified language\",\n \"location\": \"query\",\n - \ \"type\": \"string\"\n },\n \"mine\": - {\n \"description\": \"Return the playlists owned by the authenticated - user.\",\n \"type\": \"boolean\",\n \"location\": - \"query\"\n },\n \"id\": {\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the playlists with the given IDs for - Stubby or Apiary.\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"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.\",\n \"location\": \"query\"\n - \ }\n },\n \"httpMethod\": \"GET\"\n },\n - \ \"update\": {\n \"id\": \"youtube.playlists.update\",\n \"request\": - {\n \"$ref\": \"Playlist\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"part\": - {\n \"required\": true,\n \"description\": \"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.\",\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/playlists\",\n \"response\": - {\n \"$ref\": \"Playlist\"\n },\n \"description\": - \"Updates an existing resource.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"path\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"PUT\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"id\"\n ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Deletes a resource.\",\n \"path\": \"youtube/v3/playlists\",\n - \ \"flatPath\": \"youtube/v3/playlists\",\n \"httpMethod\": - \"DELETE\",\n \"id\": \"youtube.playlists.delete\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"videoAbuseReportReasons\": {\n \"methods\": - {\n \"list\": {\n \"path\": \"youtube/v3/videoAbuseReportReasons\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameters\": {\n \"hl\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"default\": - \"en-US\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"description\": \"The *part* parameter specifies - the videoCategory resource parts that the API response will include. Supported - values are id and snippet.\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\"\n }\n },\n \"response\": - {\n \"$ref\": \"VideoAbuseReportReasonListResponse\"\n },\n - \ \"id\": \"youtube.videoAbuseReportReasons.list\",\n \"flatPath\": - \"youtube/v3/videoAbuseReportReasons\",\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"httpMethod\": \"GET\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\"\n }\n }\n - \ },\n \"watermarks\": {\n \"methods\": {\n \"unset\": {\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\"\n }\n },\n \"id\": - \"youtube.watermarks.unset\",\n \"flatPath\": \"youtube/v3/watermarks/unset\",\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"path\": \"youtube/v3/watermarks/unset\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Allows removal - of channel watermark.\"\n },\n \"set\": {\n \"description\": - \"Allows upload of watermark image and setting it for a channel.\",\n \"request\": - {\n \"$ref\": \"InvideoBranding\"\n },\n \"parameters\": - {\n \"channelId\": {\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"mediaUpload\": {\n \"protocols\": {\n \"simple\": - {\n \"path\": \"/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n },\n \"resumable\": {\n \"path\": - \"/resumable/upload/youtube/v3/watermarks/set\",\n \"multipart\": - true\n }\n },\n \"maxSize\": \"10485760\",\n - \ \"accept\": [\n \"image/jpeg\",\n \"image/png\",\n - \ \"application/octet-stream\"\n ]\n },\n - \ \"parameterOrder\": [\n \"channelId\"\n ],\n - \ \"id\": \"youtube.watermarks.set\",\n \"flatPath\": \"youtube/v3/watermarks/set\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/watermarks/set\",\n \"supportsMediaUpload\": - true\n }\n }\n },\n \"membershipsLevels\": {\n \"methods\": - {\n \"list\": {\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the membershipsLevel - resource parts that the API response will include. Supported values are id - and snippet.\"\n }\n },\n \"path\": \"youtube/v3/membershipsLevels\",\n - \ \"flatPath\": \"youtube/v3/membershipsLevels\",\n \"description\": - \"Retrieves a list of all pricing levels offered by a creator to the fans.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"response\": {\n \"$ref\": \"MembershipsLevelListResponse\"\n - \ },\n \"id\": \"youtube.membershipsLevels.list\",\n \"httpMethod\": - \"GET\",\n \"parameterOrder\": [\n \"part\"\n ]\n - \ }\n }\n },\n \"search\": {\n \"methods\": {\n \"list\": - {\n \"flatPath\": \"youtube/v3/search\",\n \"id\": \"youtube.search.list\",\n - \ \"response\": {\n \"$ref\": \"SearchListResponse\"\n - \ },\n \"description\": \"Retrieves a list of search resources\",\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/search\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"pageToken\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"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.\"\n },\n \"channelId\": {\n \"location\": - \"query\",\n \"description\": \"Filter on resources belonging - to this channelId.\",\n \"type\": \"string\"\n },\n - \ \"safeSearch\": {\n \"type\": \"string\",\n \"description\": - \"Indicates whether the search results should include restricted content as - well as standard content.\",\n \"enum\": [\n \"safeSearchSettingUnspecified\",\n - \ \"none\",\n \"moderate\",\n \"strict\"\n - \ ],\n \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"YouTube will not filter the search - result set.\",\n \"YouTube will filter some content from search - results and, at the least, will filter content that is restricted in your - locale. Based on their content, search results could be removed from search - results or demoted in search results. This is the default parameter value.\",\n - \ \"YouTube will try to exclude all restricted content from - the search result set. Based on their content, search results could be removed - from search results or demoted in search results.\"\n ],\n \"default\": - \"moderate\"\n },\n \"channelType\": {\n \"location\": - \"query\",\n \"enum\": [\n \"channelTypeUnspecified\",\n - \ \"any\",\n \"show\"\n ],\n \"description\": - \"Add a filter on the channel search.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"Return - all channels.\",\n \"Only retrieve shows.\"\n ]\n - \ },\n \"publishedAfter\": {\n \"type\": - \"string\",\n \"description\": \"Filter on resources published - after this date.\",\n \"format\": \"google-datetime\",\n \"location\": - \"query\"\n },\n \"videoSyndicated\": {\n \"description\": - \"Filter on syndicated videos.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos, syndicated or not.\",\n \"Only - retrieve syndicated videos.\"\n ],\n \"enum\": [\n - \ \"videoSyndicatedUnspecified\",\n \"any\",\n - \ \"true\"\n ]\n },\n \"videoDefinition\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"enumDescriptions\": [\n \"Return all videos, - regardless of their resolution.\",\n \"Only retrieve videos - in standard definition.\",\n \"Only retrieve HD videos.\"\n - \ ],\n \"enum\": [\n \"any\",\n \"standard\",\n - \ \"high\"\n ],\n \"description\": - \"Filter on the definition of the videos.\"\n },\n \"forMine\": - {\n \"description\": \"Search for the private videos of the authenticated - user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"location\": {\n \"location\": - \"query\",\n \"description\": \"Filter on location of the video\",\n - \ \"type\": \"string\"\n },\n \"videoDimension\": - {\n \"enumDescriptions\": [\n \"Include both 3D - and non-3D videos in returned results. This is the default value.\",\n \"Restrict - search results to exclude 3D videos.\",\n \"Restrict search - results to only include 3D videos.\"\n ],\n \"description\": - \"Filter on 3d videos.\",\n \"type\": \"string\",\n \"enum\": - [\n \"any\",\n \"2d\",\n \"3d\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"relevanceLanguage\": {\n \"type\": \"string\",\n - \ \"description\": \"Return results relevant to this language.\",\n - \ \"location\": \"query\"\n },\n \"type\": - {\n \"description\": \"Restrict results to a particular set of - resource types from One Platform.\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"relatedToVideoId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Search related to a resource.\"\n },\n \"videoLicense\": - {\n \"type\": \"string\",\n \"enum\": [\n \"any\",\n - \ \"youtube\",\n \"creativeCommon\"\n ],\n - \ \"location\": \"query\",\n \"description\": \"Filter - on the license of the videos.\",\n \"enumDescriptions\": [\n - \ \"Return all videos, regardless of which license they have, - that match the query parameters.\",\n \"Only return videos - that have the standard YouTube license.\",\n \"Only return - videos that have a Creative Commons license. Users can reuse videos with this - license in other videos that they create. Learn more.\"\n ]\n - \ },\n \"regionCode\": {\n \"description\": - \"Display the content as seen by viewers in this country.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"order\": - {\n \"default\": \"relevance\",\n \"description\": - \"Sort order of the results.\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Resources are sorted in reverse chronological order based - on the date they were created.\",\n \"Resources are sorted - from highest to lowest rating.\",\n \"Resources are sorted - from highest to lowest number of views.\",\n \"Resources are - sorted based on their relevance to the search query. This is the default value - for this parameter.\",\n \"Resources are sorted alphabetically - by title.\",\n \"Channels are sorted in descending order of - their number of uploaded videos.\"\n ],\n \"type\": - \"string\",\n \"enum\": [\n \"searchSortUnspecified\",\n - \ \"date\",\n \"rating\",\n \"viewCount\",\n - \ \"relevance\",\n \"title\",\n \"videoCount\"\n - \ ],\n \"location\": \"query\"\n },\n - \ \"locationRadius\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Filter - on distance from the location (specified above).\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"videoEmbeddable\": {\n \"enum\": [\n \"videoEmbeddableUnspecified\",\n - \ \"any\",\n \"true\"\n ],\n \"type\": - \"string\",\n \"description\": \"Filter on embeddable videos.\",\n - \ \"location\": \"query\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all videos, embeddable - or not.\",\n \"Only retrieve embeddable videos.\"\n ]\n - \ },\n \"maxResults\": {\n \"location\": - \"query\",\n \"format\": \"uint32\",\n \"default\": - \"5\",\n \"minimum\": \"0\",\n \"maximum\": \"50\",\n - \ \"type\": \"integer\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\"\n },\n \"videoDuration\": - {\n \"location\": \"query\",\n \"description\": - \"Filter on the duration of the videos.\",\n \"type\": \"string\",\n - \ \"enum\": [\n \"videoDurationUnspecified\",\n - \ \"any\",\n \"short\",\n \"medium\",\n - \ \"long\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Do not filter video search results - based on their duration. This is the default value.\",\n \"Only - include videos that are less than four minutes long.\",\n \"Only - include videos that are between four and 20 minutes long (inclusive).\",\n - \ \"Only include videos longer than 20 minutes.\"\n ]\n - \ },\n \"forDeveloper\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\",\n \"description\": \"Restrict - the search to only retrieve videos uploaded using the project id of the authenticated - user.\"\n },\n \"videoCaption\": {\n \"enum\": - [\n \"videoCaptionUnspecified\",\n \"any\",\n - \ \"closedCaption\",\n \"none\"\n ],\n - \ \"enumDescriptions\": [\n \"\",\n \"Do - not filter results based on caption availability.\",\n \"Only - include videos that have captions.\",\n \"Only include videos - that do not have captions.\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on the presence of captions on the videos.\"\n },\n \"forContentOwner\": - {\n \"type\": \"boolean\",\n \"location\": \"query\",\n - \ \"description\": \"Search owned by a content owner.\"\n },\n - \ \"publishedBefore\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"format\": \"google-datetime\",\n - \ \"description\": \"Filter on resources published before this - date.\"\n },\n \"videoType\": {\n \"location\": - \"query\",\n \"enumDescriptions\": [\n \"\",\n - \ \"Return all videos.\",\n \"Only retrieve movies.\",\n - \ \"Only retrieve episodes of shows.\"\n ],\n \"enum\": - [\n \"videoTypeUnspecified\",\n \"any\",\n \"movie\",\n - \ \"episode\"\n ],\n \"type\": \"string\",\n - \ \"description\": \"Filter on videos of a specific type.\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"description\": \"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.\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"topicId\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Restrict - results to a particular topic.\"\n },\n \"videoCategoryId\": - {\n \"description\": \"Filter on videos in a specific category.\",\n - \ \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"q\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"Textual - search terms to match.\"\n },\n \"eventType\": {\n \"enumDescriptions\": - [\n \"\",\n \"The live broadcast is upcoming.\",\n - \ \"The live broadcast is active.\",\n \"The - live broadcast has been completed.\"\n ],\n \"enum\": - [\n \"none\",\n \"upcoming\",\n \"live\",\n - \ \"completed\"\n ],\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Filter on the livestream status of the videos.\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ]\n - \ }\n }\n },\n \"thumbnails\": {\n \"methods\": {\n - \ \"set\": {\n \"id\": \"youtube.thumbnails.set\",\n \"parameterOrder\": - [\n \"videoId\"\n ],\n \"parameters\": {\n \"videoId\": - {\n \"description\": \"Returns the Thumbnail with the given video - IDs for Stubby or Apiary.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"description\": \"*Note:* This parameter is intended exclusively - for YouTube content partners. The *onBehalfOfContentOwner* parameter indicates - that the request's authorization credentials identify a YouTube CMS user who - is acting on behalf of the content owner specified in the parameter value. - This parameter is intended for YouTube content partners that own and manage - many different YouTube channels. It allows content owners to authenticate - once and get access to all their video and channel data, without having to - provide authentication credentials for each individual channel. The actual - CMS account that the user authenticates with must be linked to the specified - YouTube content owner.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"path\": \"youtube/v3/thumbnails/set\",\n - \ \"response\": {\n \"$ref\": \"ThumbnailSetResponse\"\n - \ },\n \"description\": \"As this is not an insert in a strict - sense (it supports uploading/setting of a thumbnail for multiple videos, which - doesn't result in creation of a single resource), I use a custom verb here.\",\n - \ \"supportsMediaUpload\": true,\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/thumbnails/set\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.upload\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"mediaUpload\": {\n \"accept\": [\n \"image/jpeg\",\n - \ \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"simple\": {\n - \ \"multipart\": true,\n \"path\": \"/upload/youtube/v3/thumbnails/set\"\n - \ },\n \"resumable\": {\n \"multipart\": - true,\n \"path\": \"/resumable/upload/youtube/v3/thumbnails/set\"\n - \ }\n },\n \"maxSize\": \"2097152\"\n }\n - \ }\n }\n },\n \"videos\": {\n \"methods\": {\n \"delete\": - {\n \"path\": \"youtube/v3/videos\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\",\n \"id\": - \"youtube.videos.delete\",\n \"description\": \"Deletes a resource.\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\"\n },\n - \ \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"httpMethod\": \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n - \ ]\n },\n \"insert\": {\n \"request\": {\n - \ \"$ref\": \"Video\"\n },\n \"response\": {\n - \ \"$ref\": \"Video\"\n },\n \"httpMethod\": \"POST\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.videos.insert\",\n \"supportsMediaUpload\": - true,\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"path\": \"youtube/v3/videos\",\n \"description\": \"Inserts - a new resource into this collection.\",\n \"parameters\": {\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"notifySubscribers\": {\n \"description\": - \"Notify the channel subscribers about the new video. As default, the notification - is enabled.\",\n \"default\": \"true\",\n \"location\": - \"query\",\n \"type\": \"boolean\"\n },\n \"stabilize\": - {\n \"location\": \"query\",\n \"description\": - \"Should stabilize be applied to the upload.\",\n \"type\": \"boolean\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"description\": \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"autoLevels\": - {\n \"description\": \"Should auto-levels be applied to the upload.\",\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ }\n },\n \"mediaUpload\": {\n \"accept\": - [\n \"video/*\",\n \"application/octet-stream\"\n - \ ],\n \"maxSize\": \"274877906944\",\n \"protocols\": - {\n \"simple\": {\n \"path\": \"/upload/youtube/v3/videos\",\n - \ \"multipart\": true\n },\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/videos\",\n \"multipart\": - true\n }\n }\n },\n \"flatPath\": - \"youtube/v3/videos\"\n },\n \"getRating\": {\n \"httpMethod\": - \"GET\",\n \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n }\n },\n \"flatPath\": \"youtube/v3/videos/getRating\",\n - \ \"id\": \"youtube.videos.getRating\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/videos/getRating\",\n \"response\": - {\n \"$ref\": \"VideoGetRatingResponse\"\n },\n \"description\": - \"Retrieves the ratings that the authorized user gave to a list of specified - videos.\",\n \"parameterOrder\": [\n \"id\"\n ]\n - \ },\n \"rate\": {\n \"path\": \"youtube/v3/videos/rate\",\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Adds a like - or dislike rating to a video or removes a rating from a video.\",\n \"id\": - \"youtube.videos.rate\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos/rate\",\n \"parameters\": - {\n \"rating\": {\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"The entity is liked.\",\n \"The - entity is disliked.\"\n ],\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n - \ },\n \"id\": {\n \"type\": \"string\",\n - \ \"required\": true,\n \"location\": \"query\"\n - \ }\n },\n \"parameterOrder\": [\n \"id\",\n - \ \"rating\"\n ]\n },\n \"reportAbuse\": - {\n \"id\": \"youtube.videos.reportAbuse\",\n \"request\": - {\n \"$ref\": \"VideoAbuseReport\"\n },\n \"flatPath\": - \"youtube/v3/videos/reportAbuse\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n }\n },\n \"parameterOrder\": [],\n - \ \"path\": \"youtube/v3/videos/reportAbuse\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"POST\",\n \"description\": \"Report abuse - for a video.\"\n },\n \"list\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.videos.list\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/videos\",\n \"response\": {\n \"$ref\": \"VideoListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"chart\": {\n \"location\": \"query\",\n \"enum\": - [\n \"chartUnspecified\",\n \"mostPopular\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"Return the most popular videos for the specified content - region and video category.\"\n ],\n \"description\": - \"Return the videos that are in the specified chart.\",\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"minimum\": - \"1\",\n \"format\": \"uint32\",\n \"location\": - \"query\",\n \"description\": \"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.\",\n - \ \"default\": \"5\"\n },\n \"regionCode\": - {\n \"description\": \"Use a chart that is specific to the specified - region\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"myRating\": {\n \"type\": - \"string\",\n \"enumDescriptions\": [\n \"\",\n - \ \"The entity is liked.\",\n \"The entity is - disliked.\"\n ],\n \"description\": \"Return videos - liked/disliked by the authenticated user. Does not support RateType.RATED_TYPE_NONE.\",\n - \ \"location\": \"query\",\n \"enum\": [\n \"none\",\n - \ \"like\",\n \"dislike\"\n ]\n - \ },\n \"videoCategoryId\": {\n \"type\": - \"string\",\n \"default\": \"0\",\n \"description\": - \"Use chart that is specific to the specified video category\",\n \"location\": - \"query\"\n },\n \"locale\": {\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"maxHeight\": - {\n \"type\": \"integer\",\n \"maximum\": \"8192\",\n - \ \"minimum\": \"72\",\n \"format\": \"int32\",\n - \ \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"description\": \"Stands for \\\"host language\\\". - Specifies the localization language of the metadata to be filled into snippet.localized. - The field is filled with the default metadata if there is no localization - in the specified language. The parameter value must be a language code included - in the list returned by the i18nLanguages.list method (e.g. en_US, es_MX).\",\n - \ \"type\": \"string\"\n },\n \"id\": {\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"location\": - \"query\",\n \"description\": \"Return videos with the given - ids.\"\n },\n \"maxWidth\": {\n \"format\": - \"int32\",\n \"type\": \"integer\",\n \"description\": - \"Return the player with maximum height specified in\",\n \"maximum\": - \"8192\",\n \"minimum\": \"72\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"required\": - true,\n \"description\": \"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.\",\n \"type\": - \"string\",\n \"location\": \"query\",\n \"repeated\": - true\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/videos\"\n },\n - \ \"update\": {\n \"description\": \"Updates an existing resource.\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"request\": - {\n \"$ref\": \"Video\"\n },\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n - \ \"repeated\": true\n }\n },\n \"httpMethod\": - \"PUT\",\n \"flatPath\": \"youtube/v3/videos\",\n \"id\": - \"youtube.videos.update\",\n \"path\": \"youtube/v3/videos\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"Video\"\n }\n - \ }\n }\n },\n \"i18nLanguages\": {\n \"methods\": {\n - \ \"list\": {\n \"path\": \"youtube/v3/i18nLanguages\",\n \"id\": - \"youtube.i18nLanguages.list\",\n \"response\": {\n \"$ref\": - \"I18nLanguageListResponse\"\n },\n \"httpMethod\": \"GET\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameters\": {\n \"part\": {\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the i18nLanguage resource properties that - the API response will include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"hl\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"default\": \"en_US\"\n }\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"flatPath\": \"youtube/v3/i18nLanguages\"\n - \ }\n }\n },\n \"abuseReports\": {\n \"methods\": {\n - \ \"insert\": {\n \"id\": \"youtube.abuseReports.insert\",\n - \ \"httpMethod\": \"POST\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"AbuseReport\"\n - \ },\n \"request\": {\n \"$ref\": \"AbuseReport\"\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"flatPath\": \"youtube/v3/abuseReports\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"description\": - \"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.\",\n \"required\": true\n - \ }\n },\n \"path\": \"youtube/v3/abuseReports\"\n - \ }\n }\n },\n \"comments\": {\n \"methods\": {\n \"markAsSpam\": - {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"path\": \"youtube/v3/comments/markAsSpam\",\n \"id\": - \"youtube.comments.markAsSpam\",\n \"httpMethod\": \"POST\",\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"Flags the comments with the given IDs as - spam in the caller's opinion.\"\n }\n },\n \"description\": - \"Expresses the caller's opinion that one or more comments should be flagged - as spam.\",\n \"flatPath\": \"youtube/v3/comments/markAsSpam\"\n - \ },\n \"delete\": {\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"required\": true,\n - \ \"type\": \"string\"\n }\n },\n \"description\": - \"Deletes a resource.\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"path\": \"youtube/v3/comments\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"id\": \"youtube.comments.delete\",\n \"httpMethod\": - \"DELETE\"\n },\n \"update\": {\n \"response\": {\n - \ \"$ref\": \"Comment\"\n },\n \"request\": {\n - \ \"$ref\": \"Comment\"\n },\n \"parameterOrder\": - [\n \"part\"\n ],\n \"path\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"flatPath\": \"youtube/v3/comments\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"description\": \"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.\"\n }\n },\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"id\": \"youtube.comments.update\"\n },\n \"list\": - {\n \"id\": \"youtube.comments.list\",\n \"response\": {\n - \ \"$ref\": \"CommentListResponse\"\n },\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"path\": - \"youtube/v3/comments\",\n \"flatPath\": \"youtube/v3/comments\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"id\": {\n \"repeated\": true,\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Returns the comments with the given IDs for One Platform.\"\n },\n - \ \"maxResults\": {\n \"default\": \"20\",\n \"type\": - \"integer\",\n \"format\": \"uint32\",\n \"minimum\": - \"1\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"100\",\n \"location\": \"query\"\n - \ },\n \"parentId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"description\": \"Returns - replies to the specified comment. Note, currently YouTube features only one - level of replies (ie replies to top level comments). However replies to replies - may be supported in the future.\"\n },\n \"part\": {\n - \ \"required\": true,\n \"location\": \"query\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies a comma-separated list of one or more comment - resource properties that the API response will include.\"\n },\n - \ \"pageToken\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"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.\"\n },\n \"textFormat\": {\n \"enumDescriptions\": - [\n \"\",\n \"Returns the comments in HTML format. - This is the default value.\",\n \"Returns the comments in plain - text format.\"\n ],\n \"location\": \"query\",\n - \ \"default\": \"html\",\n \"description\": \"The - requested text format for the returned comments.\",\n \"type\": - \"string\",\n \"enum\": [\n \"textFormatUnspecified\",\n - \ \"html\",\n \"plainText\"\n ]\n - \ }\n },\n \"parameterOrder\": [\n \"part\"\n - \ ]\n },\n \"insert\": {\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/comments\",\n - \ \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"repeated\": - true\n }\n },\n \"httpMethod\": \"POST\",\n \"id\": - \"youtube.comments.insert\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"Comment\"\n - \ },\n \"request\": {\n \"$ref\": \"Comment\"\n - \ },\n \"flatPath\": \"youtube/v3/comments\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"setModerationStatus\": {\n \"parameters\": - {\n \"moderationStatus\": {\n \"enum\": [\n \"published\",\n - \ \"heldForReview\",\n \"likelySpam\",\n \"rejected\"\n - \ ],\n \"enumDescriptions\": [\n \"The - comment is available for public display.\",\n \"The comment - is awaiting review by a moderator.\",\n \"\",\n \"The - comment is unfit for display.\"\n ],\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Specifies the requested moderation status. Note, comments can be in statuses, - which are not available through this call. For example, this call does not - allow to mark a comment as 'likely spam'. Valid values: MODERATION_STATUS_PUBLISHED, - MODERATION_STATUS_HELD_FOR_REVIEW, MODERATION_STATUS_REJECTED.\",\n \"type\": - \"string\"\n },\n \"banAuthor\": {\n \"location\": - \"query\",\n \"type\": \"boolean\",\n \"description\": - \"If set to true the author of the comment gets added to the ban list. This - means all future comments of the author will autmomatically be rejected. Only - valid in combination with STATUS_REJECTED.\",\n \"default\": - \"false\"\n },\n \"id\": {\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"Modifies - the moderation status of the comments with the given IDs\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/comments/setModerationStatus\",\n \"parameterOrder\": - [\n \"id\",\n \"moderationStatus\"\n ],\n \"httpMethod\": - \"POST\",\n \"description\": \"Sets the moderation status of one - or more comments.\",\n \"id\": \"youtube.comments.setModerationStatus\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/comments/setModerationStatus\"\n - \ }\n }\n },\n \"youtube\": {\n \"resources\": {\n \"v3\": - {\n \"methods\": {\n \"updateCommentThreads\": {\n \"response\": - {\n \"$ref\": \"CommentThread\"\n },\n \"request\": - {\n \"$ref\": \"CommentThread\"\n },\n \"httpMethod\": - \"PUT\",\n \"description\": \"Updates an existing resource.\",\n - \ \"parameterOrder\": [],\n \"path\": \"youtube/v3/commentThreads\",\n - \ \"parameters\": {\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"id\": \"youtube.youtube.v3.updateCommentThreads\",\n - \ \"flatPath\": \"youtube/v3/commentThreads\"\n }\n - \ }\n }\n }\n },\n \"superChatEvents\": {\n \"methods\": - {\n \"list\": {\n \"response\": {\n \"$ref\": \"SuperChatEventListResponse\"\n - \ },\n \"id\": \"youtube.superChatEvents.list\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/superChatEvents\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"flatPath\": - \"youtube/v3/superChatEvents\",\n \"parameters\": {\n \"hl\": - {\n \"description\": \"Return rendered funding amounts in specified - language.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"type\": \"integer\",\n \"minimum\": - \"1\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"The *part* parameter specifies the - superChatEvent resource parts that the API response will include. This parameter - is currently not supported.\",\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n }\n - \ }\n }\n },\n \"videoCategories\": {\n \"methods\": - {\n \"list\": {\n \"id\": \"youtube.videoCategories.list\",\n - \ \"path\": \"youtube/v3/videoCategories\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameters\": - {\n \"hl\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"default\": \"en-US\"\n },\n \"id\": - {\n \"location\": \"query\",\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"description\": \"Returns - the video categories with the given IDs for Stubby or Apiary.\"\n },\n - \ \"regionCode\": {\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"repeated\": - true,\n \"location\": \"query\",\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"The *part* parameter specifies the videoCategory resource properties that - the API response will include. Set the parameter value to snippet.\"\n }\n - \ },\n \"response\": {\n \"$ref\": \"VideoCategoryListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"flatPath\": \"youtube/v3/videoCategories\"\n }\n }\n - \ },\n \"activities\": {\n \"methods\": {\n \"list\": {\n - \ \"parameters\": {\n \"regionCode\": {\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"home\": - {\n \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"channelId\": {\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"mine\": - {\n \"location\": \"query\",\n \"type\": \"boolean\"\n - \ },\n \"publishedAfter\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"format\": - \"google-datetime\"\n },\n \"publishedBefore\": {\n - \ \"format\": \"google-datetime\",\n \"type\": \"string\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"repeated\": true\n },\n \"maxResults\": - {\n \"format\": \"uint32\",\n \"location\": \"query\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\",\n \"type\": - \"integer\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\",\n \"default\": \"5\"\n }\n },\n \"id\": - \"youtube.activities.list\",\n \"response\": {\n \"$ref\": - \"ActivityListResponse\"\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/activities\",\n \"path\": \"youtube/v3/activities\"\n - \ }\n }\n },\n \"channelBanners\": {\n \"methods\": - {\n \"insert\": {\n \"flatPath\": \"youtube/v3/channelBanners/insert\",\n - \ \"mediaUpload\": {\n \"maxSize\": \"6291456\",\n \"accept\": - [\n \"image/jpeg\",\n \"image/png\",\n \"application/octet-stream\"\n - \ ],\n \"protocols\": {\n \"resumable\": - {\n \"path\": \"/resumable/upload/youtube/v3/channelBanners/insert\",\n - \ \"multipart\": true\n },\n \"simple\": - {\n \"multipart\": true,\n \"path\": \"/upload/youtube/v3/channelBanners/insert\"\n - \ }\n }\n },\n \"parameterOrder\": - [],\n \"httpMethod\": \"POST\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.upload\"\n - \ ],\n \"id\": \"youtube.channelBanners.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*Note:* This parameter is intended exclusively for YouTube content partners. - The *onBehalfOfContentOwner* parameter indicates that the request's authorization - credentials identify a YouTube CMS user who is acting on behalf of the content - owner specified in the parameter value. This parameter is intended for YouTube - content partners that own and manage many different YouTube channels. It allows - content owners to authenticate once and get access to all their video and - channel data, without having to provide authentication credentials for each - individual channel. The actual CMS account that the user authenticates with - must be linked to the specified YouTube content owner.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"channelId\": {\n \"description\": - \"Unused, channel_id is currently derived from the security context of the - requestor.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n }\n },\n \"path\": \"youtube/v3/channelBanners/insert\",\n - \ \"response\": {\n \"$ref\": \"ChannelBannerResource\"\n - \ },\n \"supportsMediaUpload\": true,\n \"request\": - {\n \"$ref\": \"ChannelBannerResource\"\n }\n }\n - \ }\n },\n \"liveBroadcasts\": {\n \"methods\": {\n \"list\": - {\n \"parameters\": {\n \"broadcastType\": {\n \"description\": - \"Return only broadcasts with the selected type.\",\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - only scheduled event broadcasts.\",\n \"Return only persistent - broadcasts.\"\n ],\n \"location\": \"query\",\n - \ \"default\": \"event\",\n \"enum\": [\n \"broadcastTypeFilterUnspecified\",\n - \ \"all\",\n \"event\",\n \"persistent\"\n - \ ],\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"maxResults\": {\n \"format\": - \"uint32\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"default\": \"5\",\n \"maximum\": \"50\",\n \"type\": - \"integer\",\n \"location\": \"query\",\n \"minimum\": - \"0\"\n },\n \"part\": {\n \"repeated\": - true,\n \"description\": \"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, status and statistics.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"broadcastStatus\": - {\n \"enum\": [\n \"broadcastStatusFilterUnspecified\",\n - \ \"all\",\n \"active\",\n \"upcoming\",\n - \ \"completed\"\n ],\n \"enumDescriptions\": - [\n \"\",\n \"Return all broadcasts.\",\n \"Return - current live broadcasts.\",\n \"Return broadcasts that have - not yet started.\",\n \"Return broadcasts that have already - ended.\"\n ],\n \"location\": \"query\",\n \"type\": - \"string\",\n \"description\": \"Return broadcasts with a certain - status, e.g. active broadcasts.\"\n },\n \"mine\": {\n - \ \"type\": \"boolean\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return broadcasts with the given ids from - Stubby or Apiary.\"\n },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"id\": \"youtube.liveBroadcasts.list\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"description\": - \"Retrieve the list of broadcasts associated with the given channel.\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcastListResponse\"\n - \ },\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"httpMethod\": \"GET\"\n },\n \"delete\": {\n \"id\": - \"youtube.liveBroadcasts.delete\",\n \"parameters\": {\n \"id\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Broadcast to delete.\",\n \"required\": - true\n },\n \"onBehalfOfContentOwnerChannel\": {\n \"description\": - \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"description\": \"Delete a given broadcast.\",\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/liveBroadcasts\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameterOrder\": [\n \"id\"\n ]\n },\n - \ \"update\": {\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"required\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"type\": \"string\"\n - \ }\n },\n \"request\": {\n \"$ref\": - \"LiveBroadcast\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.liveBroadcasts.update\",\n \"description\": - \"Updates an existing broadcast for the authenticated user.\",\n \"path\": - \"youtube/v3/liveBroadcasts\",\n \"httpMethod\": \"PUT\",\n \"flatPath\": - \"youtube/v3/liveBroadcasts\"\n },\n \"insert\": {\n \"parameters\": - {\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"description\": - \"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.\",\n \"type\": - \"string\",\n \"repeated\": true,\n \"required\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"request\": {\n \"$ref\": \"LiveBroadcast\"\n },\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"flatPath\": - \"youtube/v3/liveBroadcasts\",\n \"path\": \"youtube/v3/liveBroadcasts\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"id\": \"youtube.liveBroadcasts.insert\",\n \"description\": - \"Inserts a new stream for the authenticated user.\",\n \"response\": - {\n \"$ref\": \"LiveBroadcast\"\n },\n \"httpMethod\": - \"POST\"\n },\n \"transition\": {\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Broadcast to transition.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"*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.\"\n },\n \"broadcastStatus\": - {\n \"required\": true,\n \"enumDescriptions\": - [\n \"\",\n \"Start testing the broadcast. YouTube - transmits video to the broadcast's monitor stream. Note that you can only - transition a broadcast to the testing state if its contentDetails.monitorStream.enableMonitorStream - property is set to true.\\\",\",\n \"Return only persistent - broadcasts.\",\n \"The broadcast is over. YouTube stops transmitting - video.\"\n ],\n \"location\": \"query\",\n \"description\": - \"The status to which the broadcast is going to transition.\",\n \"enum\": - [\n \"statusUnspecified\",\n \"testing\",\n - \ \"live\",\n \"complete\"\n ],\n - \ \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n }\n },\n \"httpMethod\": \"POST\",\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/transition\",\n \"parameterOrder\": - [\n \"broadcastStatus\",\n \"id\",\n \"part\"\n - \ ],\n \"description\": \"Transition a broadcast to a given - status.\",\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"path\": \"youtube/v3/liveBroadcasts/transition\",\n - \ \"id\": \"youtube.liveBroadcasts.transition\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ]\n },\n \"bind\": {\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveBroadcasts/bind\",\n \"description\": - \"Bind a broadcast to a stream.\",\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"id\": {\n \"type\": - \"string\",\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"Broadcast to bind to the stream\"\n - \ },\n \"streamId\": {\n \"description\": - \"Stream to bind, if not set unbind the current one.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"httpMethod\": \"POST\",\n \"id\": \"youtube.liveBroadcasts.bind\",\n - \ \"parameterOrder\": [\n \"id\",\n \"part\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveBroadcast\"\n - \ },\n \"flatPath\": \"youtube/v3/liveBroadcasts/bind\"\n - \ },\n \"insertCuepoint\": {\n \"httpMethod\": \"POST\",\n - \ \"parameterOrder\": [],\n \"id\": \"youtube.liveBroadcasts.insertCuepoint\",\n - \ \"response\": {\n \"$ref\": \"Cuepoint\"\n },\n - \ \"flatPath\": \"youtube/v3/liveBroadcasts/cuepoint\",\n \"parameters\": - {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"type\": \"string\",\n \"repeated\": true,\n - \ \"description\": \"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.\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"location\": \"query\",\n - \ \"description\": \"Broadcast to insert ads to, or equivalently - `external_video_id` for internal use.\",\n \"type\": \"string\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"path\": \"youtube/v3/liveBroadcasts/cuepoint\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"request\": {\n \"$ref\": \"Cuepoint\"\n - \ },\n \"description\": \"Insert cuepoints in a broadcast\"\n - \ }\n }\n },\n \"liveStreams\": {\n \"methods\": {\n - \ \"insert\": {\n \"id\": \"youtube.liveStreams.insert\",\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"part\": {\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"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, content_details, and status.\"\n - \ }\n },\n \"description\": \"Inserts a new stream - for the authenticated user.\",\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"LiveStream\"\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/liveStreams\",\n - \ \"request\": {\n \"$ref\": \"LiveStream\"\n }\n - \ },\n \"update\": {\n \"response\": {\n \"$ref\": - \"LiveStream\"\n },\n \"parameters\": {\n \"part\": - {\n \"description\": \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"description\": \"*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.\",\n \"type\": \"string\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"id\": - \"youtube.liveStreams.update\",\n \"description\": \"Updates an existing - stream for the authenticated user.\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"LiveStream\"\n - \ },\n \"httpMethod\": \"PUT\"\n },\n \"list\": - {\n \"id\": \"youtube.liveStreams.list\",\n \"description\": - \"Retrieve the list of streams associated with the given channel. --\",\n - \ \"response\": {\n \"$ref\": \"LiveStreamListResponse\"\n - \ },\n \"parameters\": {\n \"part\": {\n \"location\": - \"query\",\n \"repeated\": true,\n \"required\": - true,\n \"type\": \"string\",\n \"description\": - \"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.\"\n - \ },\n \"onBehalfOfContentOwnerChannel\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n \"id\": {\n \"location\": - \"query\",\n \"description\": \"Return LiveStreams with the given - ids from Stubby or Apiary.\",\n \"repeated\": true,\n \"type\": - \"string\"\n },\n \"maxResults\": {\n \"location\": - \"query\",\n \"default\": \"5\",\n \"type\": \"integer\",\n - \ \"format\": \"uint32\",\n \"description\": \"The - *maxResults* parameter specifies the maximum number of items that should be - returned in the result set.\",\n \"minimum\": \"0\",\n \"maximum\": - \"50\"\n },\n \"mine\": {\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"pageToken\": - {\n \"description\": \"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.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwner\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"*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.\"\n }\n },\n - \ \"flatPath\": \"youtube/v3/liveStreams\",\n \"httpMethod\": - \"GET\",\n \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"delete\": {\n \"parameters\": {\n \"id\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"*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.\"\n },\n \"onBehalfOfContentOwnerChannel\": {\n - \ \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"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.\"\n }\n },\n \"flatPath\": - \"youtube/v3/liveStreams\",\n \"parameterOrder\": [\n \"id\"\n - \ ],\n \"path\": \"youtube/v3/liveStreams\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"id\": \"youtube.liveStreams.delete\",\n \"httpMethod\": - \"DELETE\",\n \"description\": \"Deletes an existing stream for the - authenticated user.\"\n }\n }\n },\n \"liveChatModerators\": - {\n \"methods\": {\n \"delete\": {\n \"parameters\": - {\n \"id\": {\n \"required\": true,\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"description\": \"Deletes a chat moderator.\",\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/moderators\",\n - \ \"path\": \"youtube/v3/liveChat/moderators\",\n \"id\": - \"youtube.liveChatModerators.delete\",\n \"parameterOrder\": [\n - \ \"id\"\n ]\n },\n \"list\": {\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"path\": \"youtube/v3/liveChat/moderators\",\n - \ \"response\": {\n \"$ref\": \"LiveChatModeratorListResponse\"\n - \ },\n \"parameters\": {\n \"liveChatId\": {\n - \ \"required\": true,\n \"type\": \"string\",\n \"description\": - \"The id of the live chat for which moderators should be returned.\",\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"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.\"\n },\n - \ \"maxResults\": {\n \"format\": \"uint32\",\n \"type\": - \"integer\",\n \"default\": \"5\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"location\": \"query\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"0\"\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"required\": - true,\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the liveChatModerator - resource parts that the API response will include. Supported values are id - and snippet.\"\n }\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"httpMethod\": \"GET\",\n - \ \"id\": \"youtube.liveChatModerators.list\"\n },\n \"insert\": - {\n \"request\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"response\": {\n \"$ref\": \"LiveChatModerator\"\n - \ },\n \"httpMethod\": \"POST\",\n \"flatPath\": - \"youtube/v3/liveChat/moderators\",\n \"id\": \"youtube.liveChatModerators.insert\",\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"description\": \"Inserts a new resource - into this collection.\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"path\": \"youtube/v3/liveChat/moderators\"\n }\n }\n - \ },\n \"playlistItems\": {\n \"methods\": {\n \"insert\": - {\n \"id\": \"youtube.playlistItems.insert\",\n \"flatPath\": - \"youtube/v3/playlistItems\",\n \"request\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"PlaylistItem\"\n },\n \"path\": - \"youtube/v3/playlistItems\",\n \"parameters\": {\n \"part\": - {\n \"type\": \"string\",\n \"required\": true,\n - \ \"repeated\": true,\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"onBehalfOfContentOwner\": {\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"description\": \"*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.\"\n }\n },\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"parameterOrder\": [\n \"part\"\n ],\n \"description\": - \"Inserts a new resource into this collection.\"\n },\n \"delete\": - {\n \"parameterOrder\": [\n \"id\"\n ],\n \"parameters\": - {\n \"id\": {\n \"location\": \"query\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"onBehalfOfContentOwner\": - {\n \"location\": \"query\",\n \"description\": - \"*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.\",\n \"type\": - \"string\"\n }\n },\n \"description\": \"Deletes - a resource.\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n \"httpMethod\": - \"DELETE\",\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"id\": \"youtube.playlistItems.delete\",\n \"path\": - \"youtube/v3/playlistItems\"\n },\n \"list\": {\n \"path\": - \"youtube/v3/playlistItems\",\n \"response\": {\n \"$ref\": - \"PlaylistItemListResponse\"\n },\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"httpMethod\": \"GET\",\n \"parameters\": {\n \"playlistId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Return the playlist items within the given - playlist.\"\n },\n \"videoId\": {\n \"type\": - \"string\",\n \"description\": \"Return the playlist items associated - with the given video ID.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"required\": true,\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\",\n \"repeated\": - true\n },\n \"id\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true\n - \ },\n \"maxResults\": {\n \"default\": - \"5\",\n \"format\": \"uint32\",\n \"minimum\": - \"0\",\n \"location\": \"query\",\n \"maximum\": - \"50\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"type\": \"integer\"\n },\n \"pageToken\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"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.\"\n - \ },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n }\n },\n - \ \"id\": \"youtube.playlistItems.list\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtube.readonly\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ]\n },\n \"update\": {\n \"description\": - \"Updates an existing resource.\",\n \"response\": {\n \"$ref\": - \"PlaylistItem\"\n },\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"part\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true,\n \"description\": \"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.\",\n \"repeated\": true\n }\n },\n - \ \"httpMethod\": \"PUT\",\n \"flatPath\": \"youtube/v3/playlistItems\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"request\": {\n \"$ref\": \"PlaylistItem\"\n },\n - \ \"path\": \"youtube/v3/playlistItems\",\n \"id\": \"youtube.playlistItems.update\"\n - \ }\n }\n },\n \"subscriptions\": {\n \"methods\": {\n - \ \"list\": {\n \"description\": \"Retrieves a list of resources, - possibly filtered.\",\n \"id\": \"youtube.subscriptions.list\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"response\": {\n \"$ref\": \"SubscriptionListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"flatPath\": - \"youtube/v3/subscriptions\",\n \"parameters\": {\n \"id\": - {\n \"description\": \"Return the subscriptions with the given - IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\"\n },\n \"order\": - {\n \"type\": \"string\",\n \"enumDescriptions\": - [\n \"\",\n \"Sort by relevance.\",\n \"Sort - by order of activity.\",\n \"Sort alphabetically.\"\n ],\n - \ \"enum\": [\n \"subscriptionOrderUnspecified\",\n - \ \"relevance\",\n \"unread\",\n \"alphabetical\"\n - \ ],\n \"description\": \"The order of the returned - subscriptions\",\n \"location\": \"query\",\n \"default\": - \"relevance\"\n },\n \"pageToken\": {\n \"location\": - \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"type\": \"string\",\n \"description\": \"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.\",\n \"location\": \"query\"\n },\n - \ \"part\": {\n \"description\": \"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.\",\n - \ \"repeated\": true,\n \"type\": \"string\",\n \"required\": - true,\n \"location\": \"query\"\n },\n \"channelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Return the subscriptions of the given channel - owner.\"\n },\n \"forChannelId\": {\n \"description\": - \"Return the subscriptions to the subset of these channels that the authenticated - user is subscribed to.\",\n \"type\": \"string\",\n \"location\": - \"query\"\n },\n \"myRecentSubscribers\": {\n \"type\": - \"boolean\",\n \"location\": \"query\"\n },\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"description\": \"*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.\",\n \"location\": \"query\"\n },\n - \ \"maxResults\": {\n \"location\": \"query\",\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"default\": - \"5\",\n \"description\": \"The *maxResults* parameter specifies - the maximum number of items that should be returned in the result set.\",\n - \ \"maximum\": \"50\",\n \"minimum\": \"0\"\n },\n - \ \"mine\": {\n \"description\": \"Flag for returning - the subscriptions of the authenticated user.\",\n \"type\": \"boolean\",\n - \ \"location\": \"query\"\n },\n \"mySubscribers\": - {\n \"location\": \"query\",\n \"type\": \"boolean\",\n - \ \"description\": \"Return the subscribers of the given channel - owner.\"\n }\n },\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"parameterOrder\": [\n \"part\"\n ]\n },\n - \ \"insert\": {\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"required\": true,\n - \ \"location\": \"query\",\n \"description\": \"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.\",\n \"type\": \"string\"\n }\n - \ },\n \"description\": \"Inserts a new resource into this - collection.\",\n \"parameterOrder\": [\n \"part\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"httpMethod\": \"POST\",\n \"response\": - {\n \"$ref\": \"Subscription\"\n },\n \"id\": - \"youtube.subscriptions.insert\",\n \"path\": \"youtube/v3/subscriptions\",\n - \ \"request\": {\n \"$ref\": \"Subscription\"\n },\n - \ \"flatPath\": \"youtube/v3/subscriptions\"\n },\n \"delete\": - {\n \"path\": \"youtube/v3/subscriptions\",\n \"parameters\": - {\n \"id\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"required\": true\n }\n },\n - \ \"parameterOrder\": [\n \"id\"\n ],\n \"description\": - \"Deletes a resource.\",\n \"id\": \"youtube.subscriptions.delete\",\n - \ \"flatPath\": \"youtube/v3/subscriptions\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"httpMethod\": \"DELETE\"\n }\n }\n },\n \"i18nRegions\": - {\n \"methods\": {\n \"list\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"I18nRegionListResponse\"\n },\n \"parameters\": {\n \"part\": - {\n \"repeated\": true,\n \"description\": \"The - *part* parameter specifies the i18nRegion resource properties that the API - response will include. Set the parameter value to snippet.\",\n \"location\": - \"query\",\n \"type\": \"string\",\n \"required\": - true\n },\n \"hl\": {\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"default\": \"en_US\"\n - \ }\n },\n \"path\": \"youtube/v3/i18nRegions\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"flatPath\": \"youtube/v3/i18nRegions\",\n \"id\": \"youtube.i18nRegions.list\",\n - \ \"description\": \"Retrieves a list of resources, possibly filtered.\",\n - \ \"httpMethod\": \"GET\"\n }\n }\n },\n \"liveChatBans\": - {\n \"methods\": {\n \"delete\": {\n \"httpMethod\": - \"DELETE\",\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"path\": - \"youtube/v3/liveChat/bans\",\n \"description\": \"Deletes a chat - ban.\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.liveChatBans.delete\",\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ]\n - \ },\n \"insert\": {\n \"id\": \"youtube.liveChatBans.insert\",\n - \ \"path\": \"youtube/v3/liveChat/bans\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"request\": {\n \"$ref\": - \"LiveChatBan\"\n },\n \"httpMethod\": \"POST\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"response\": {\n \"$ref\": \"LiveChatBan\"\n - \ },\n \"flatPath\": \"youtube/v3/liveChat/bans\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"location\": - \"query\",\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": - true\n }\n }\n }\n }\n },\n \"tests\": - {\n \"methods\": {\n \"insert\": {\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube.readonly\"\n ],\n - \ \"flatPath\": \"youtube/v3/tests\",\n \"path\": \"youtube/v3/tests\",\n - \ \"httpMethod\": \"POST\",\n \"response\": {\n \"$ref\": - \"TestItem\"\n },\n \"parameters\": {\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"part\": {\n \"required\": true,\n - \ \"type\": \"string\",\n \"repeated\": true,\n \"location\": - \"query\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ],\n \"request\": {\n \"$ref\": - \"TestItem\"\n },\n \"id\": \"youtube.tests.insert\",\n - \ \"description\": \"POST method.\"\n }\n }\n },\n - \ \"channelSections\": {\n \"methods\": {\n \"list\": {\n \"parameters\": - {\n \"part\": {\n \"repeated\": true,\n \"description\": - \"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.\",\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ },\n \"id\": {\n \"repeated\": true,\n - \ \"description\": \"Return the ChannelSections with the given - IDs for Stubby or Apiary.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"location\": - \"query\",\n \"description\": \"*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.\",\n \"type\": \"string\"\n },\n \"mine\": - {\n \"description\": \"Return the ChannelSections owned by the - authenticated user.\",\n \"location\": \"query\",\n \"type\": - \"boolean\"\n },\n \"hl\": {\n \"location\": - \"query\",\n \"description\": \"Return content in specified language\",\n - \ \"type\": \"string\"\n },\n \"channelId\": - {\n \"location\": \"query\",\n \"description\": - \"Return the ChannelSections owned by the specified channel ID.\",\n \"type\": - \"string\"\n }\n },\n \"response\": {\n \"$ref\": - \"ChannelSectionListResponse\"\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"path\": \"youtube/v3/channelSections\",\n \"description\": - \"Retrieves a list of resources, possibly filtered.\",\n \"id\": - \"youtube.channelSections.list\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"flatPath\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"GET\"\n },\n \"insert\": {\n \"parameterOrder\": - [\n \"part\"\n ],\n \"flatPath\": \"youtube/v3/channelSections\",\n - \ \"path\": \"youtube/v3/channelSections\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"scopes\": [\n - \ \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"id\": \"youtube.channelSections.insert\",\n \"parameters\": - {\n \"part\": {\n \"type\": \"string\",\n \"repeated\": - true,\n \"required\": true,\n \"description\": \"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.\",\n \"location\": - \"query\"\n },\n \"onBehalfOfContentOwnerChannel\": - {\n \"description\": \"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.\",\n \"location\": \"query\",\n \"type\": - \"string\"\n },\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n }\n },\n - \ \"response\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"httpMethod\": \"POST\",\n \"request\": {\n \"$ref\": - \"ChannelSection\"\n }\n },\n \"delete\": {\n \"description\": - \"Deletes a resource.\",\n \"path\": \"youtube/v3/channelSections\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"httpMethod\": - \"DELETE\",\n \"parameterOrder\": [\n \"id\"\n ],\n - \ \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtubepartner\"\n - \ ],\n \"parameters\": {\n \"onBehalfOfContentOwner\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"*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.\"\n },\n \"id\": {\n \"required\": - true,\n \"type\": \"string\",\n \"location\": \"query\"\n - \ }\n },\n \"id\": \"youtube.channelSections.delete\"\n - \ },\n \"update\": {\n \"httpMethod\": \"PUT\",\n \"parameterOrder\": - [\n \"part\"\n ],\n \"response\": {\n \"$ref\": - \"ChannelSection\"\n },\n \"path\": \"youtube/v3/channelSections\",\n - \ \"flatPath\": \"youtube/v3/channelSections\",\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\",\n - \ \"https://www.googleapis.com/auth/youtubepartner\"\n ],\n - \ \"request\": {\n \"$ref\": \"ChannelSection\"\n },\n - \ \"parameters\": {\n \"onBehalfOfContentOwner\": {\n \"description\": - \"*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.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"description\": \"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.\",\n - \ \"type\": \"string\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\"\n }\n },\n - \ \"description\": \"Updates an existing resource.\",\n \"id\": - \"youtube.channelSections.update\"\n }\n }\n },\n \"members\": - {\n \"methods\": {\n \"list\": {\n \"description\": \"Retrieves - a list of members that match the request criteria for a channel.\",\n \"id\": - \"youtube.members.list\",\n \"response\": {\n \"$ref\": - \"MemberListResponse\"\n },\n \"path\": \"youtube/v3/members\",\n - \ \"flatPath\": \"youtube/v3/members\",\n \"parameters\": - {\n \"maxResults\": {\n \"default\": \"5\",\n \"format\": - \"uint32\",\n \"minimum\": \"0\",\n \"location\": - \"query\",\n \"type\": \"integer\",\n \"description\": - \"The *maxResults* parameter specifies the maximum number of items that should - be returned in the result set.\",\n \"maximum\": \"1000\"\n },\n - \ \"mode\": {\n \"enum\": [\n \"listMembersModeUnknown\",\n - \ \"updates\",\n \"all_current\"\n ],\n - \ \"default\": \"all_current\",\n \"enumDescriptions\": - [\n \"\",\n \"Return only members that joined - after the first call with this mode was made.\",\n \"Return - all current members, from newest to oldest.\"\n ],\n \"description\": - \"Parameter that specifies which channel members to return.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"filterByMemberChannelId\": - {\n \"description\": \"Comma separated list of channel IDs. Only - data about members that are part of this list will be included in the response.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"hasAccessToLevel\": {\n \"description\": - \"Filter members in the results set to the ones that have access to a level.\",\n - \ \"location\": \"query\",\n \"type\": \"string\"\n - \ },\n \"pageToken\": {\n \"description\": - \"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.\",\n \"location\": - \"query\",\n \"type\": \"string\"\n },\n \"part\": - {\n \"description\": \"The *part* parameter specifies the member - resource parts that the API response will include. Set the parameter value - to snippet.\",\n \"required\": true,\n \"repeated\": - true,\n \"location\": \"query\",\n \"type\": \"string\"\n - \ }\n },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\"\n - \ ],\n \"httpMethod\": \"GET\",\n \"parameterOrder\": - [\n \"part\"\n ]\n }\n }\n },\n \"thirdPartyLinks\": - {\n \"methods\": {\n \"insert\": {\n \"response\": {\n - \ \"$ref\": \"ThirdPartyLink\"\n },\n \"id\": - \"youtube.thirdPartyLinks.insert\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"request\": {\n \"$ref\": \"ThirdPartyLink\"\n - \ },\n \"flatPath\": \"youtube/v3/thirdPartyLinks\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"externalChannelId\": {\n \"location\": - \"query\",\n \"type\": \"string\",\n \"description\": - \"Channel ID to which changes should be applied, for delegation.\"\n },\n - \ \"part\": {\n \"type\": \"string\",\n \"required\": - true,\n \"repeated\": true,\n \"location\": \"query\",\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\"\n }\n },\n \"httpMethod\": - \"POST\"\n },\n \"delete\": {\n \"parameterOrder\": - [\n \"linkingToken\",\n \"type\"\n ],\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"httpMethod\": \"DELETE\",\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"externalChannelId\": - {\n \"location\": \"query\",\n \"type\": \"string\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n },\n \"linkingToken\": {\n \"location\": - \"query\",\n \"required\": true,\n \"description\": - \"Delete the partner links with the given linking token.\",\n \"type\": - \"string\"\n },\n \"type\": {\n \"enum\": - [\n \"linkUnspecified\",\n \"channelToStoreLink\"\n - \ ],\n \"enumDescriptions\": [\n \"\",\n - \ \"A link that is connecting (or about to connect) a channel - with a store on a merchandising platform in order to enable retail commerce - capabilities for that channel on YouTube.\"\n ],\n \"description\": - \"Type of the link to be deleted.\",\n \"location\": \"query\",\n - \ \"type\": \"string\",\n \"required\": true\n },\n - \ \"part\": {\n \"location\": \"query\",\n \"repeated\": - true,\n \"type\": \"string\",\n \"description\": - \"Do not use. Required for compatibility.\"\n }\n },\n - \ \"description\": \"Deletes a resource.\",\n \"id\": \"youtube.thirdPartyLinks.delete\"\n - \ },\n \"update\": {\n \"response\": {\n \"$ref\": - \"ThirdPartyLink\"\n },\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"id\": \"youtube.thirdPartyLinks.update\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameters\": {\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"location\": \"query\",\n \"repeated\": true,\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API request and response will include. Supported values - are linkingToken, status, and snippet.\"\n },\n \"externalChannelId\": - {\n \"type\": \"string\",\n \"location\": \"query\",\n - \ \"description\": \"Channel ID to which changes should be applied, - for delegation.\"\n }\n },\n \"request\": {\n - \ \"$ref\": \"ThirdPartyLink\"\n },\n \"path\": - \"youtube/v3/thirdPartyLinks\",\n \"description\": \"Updates an existing - resource.\",\n \"httpMethod\": \"PUT\"\n },\n \"list\": - {\n \"response\": {\n \"$ref\": \"ThirdPartyLinkListResponse\"\n - \ },\n \"httpMethod\": \"GET\",\n \"path\": \"youtube/v3/thirdPartyLinks\",\n - \ \"parameters\": {\n \"type\": {\n \"description\": - \"Get a third party link of the given type.\",\n \"type\": \"string\",\n - \ \"enumDescriptions\": [\n \"\",\n \"A - link that is connecting (or about to connect) a channel with a store on a - merchandising platform in order to enable retail commerce capabilities for - that channel on YouTube.\"\n ],\n \"location\": - \"query\",\n \"enum\": [\n \"linkUnspecified\",\n - \ \"channelToStoreLink\"\n ]\n },\n - \ \"externalChannelId\": {\n \"description\": \"Channel - ID to which changes should be applied, for delegation.\",\n \"type\": - \"string\",\n \"location\": \"query\"\n },\n \"part\": - {\n \"required\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the thirdPartyLink - resource parts that the API response will include. Supported values are linkingToken, - status, and snippet.\",\n \"repeated\": true,\n \"location\": - \"query\"\n },\n \"linkingToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"Get a third party link with the given linking token.\"\n }\n - \ },\n \"id\": \"youtube.thirdPartyLinks.list\",\n \"flatPath\": - \"youtube/v3/thirdPartyLinks\",\n \"parameterOrder\": [\n \"part\"\n - \ ],\n \"description\": \"Retrieves a list of resources, - possibly filtered.\"\n }\n }\n },\n \"liveChatMessages\": - {\n \"methods\": {\n \"list\": {\n \"httpMethod\": \"GET\",\n - \ \"response\": {\n \"$ref\": \"LiveChatMessageListResponse\"\n - \ },\n \"parameterOrder\": [\n \"liveChatId\",\n - \ \"part\"\n ],\n \"description\": \"Retrieves - a list of resources, possibly filtered.\",\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"parameters\": {\n \"profileImageSize\": {\n \"format\": - \"uint32\",\n \"type\": \"integer\",\n \"location\": - \"query\",\n \"maximum\": \"720\",\n \"description\": - \"Specifies the size of the profile image that should be returned for each - user.\",\n \"minimum\": \"16\"\n },\n \"hl\": - {\n \"type\": \"string\",\n \"description\": \"Specifies - the localization language in which the system messages should be returned.\",\n - \ \"location\": \"query\"\n },\n \"liveChatId\": - {\n \"location\": \"query\",\n \"description\": - \"The id of the live chat for which comments should be returned.\",\n \"type\": - \"string\",\n \"required\": true\n },\n \"part\": - {\n \"repeated\": true,\n \"type\": \"string\",\n - \ \"description\": \"The *part* parameter specifies the liveChatComment - resource parts that the API response will include. Supported values are id - and snippet.\",\n \"required\": true,\n \"location\": - \"query\"\n },\n \"pageToken\": {\n \"type\": - \"string\",\n \"location\": \"query\",\n \"description\": - \"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.\"\n },\n \"maxResults\": - {\n \"maximum\": \"2000\",\n \"type\": \"integer\",\n - \ \"location\": \"query\",\n \"default\": \"500\",\n - \ \"minimum\": \"200\",\n \"format\": \"uint32\",\n - \ \"description\": \"The *maxResults* parameter specifies the - maximum number of items that should be returned in the result set.\"\n }\n - \ },\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\",\n \"https://www.googleapis.com/auth/youtube.readonly\"\n - \ ],\n \"id\": \"youtube.liveChatMessages.list\",\n \"flatPath\": - \"youtube/v3/liveChat/messages\"\n },\n \"insert\": {\n \"scopes\": - [\n \"https://www.googleapis.com/auth/youtube\",\n \"https://www.googleapis.com/auth/youtube.force-ssl\"\n - \ ],\n \"path\": \"youtube/v3/liveChat/messages\",\n \"httpMethod\": - \"POST\",\n \"response\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"request\": {\n \"$ref\": \"LiveChatMessage\"\n - \ },\n \"flatPath\": \"youtube/v3/liveChat/messages\",\n - \ \"id\": \"youtube.liveChatMessages.insert\",\n \"description\": - \"Inserts a new resource into this collection.\",\n \"parameters\": - {\n \"part\": {\n \"description\": \"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.\",\n \"location\": \"query\",\n - \ \"required\": true,\n \"repeated\": true,\n \"type\": - \"string\"\n }\n },\n \"parameterOrder\": [\n - \ \"part\"\n ]\n },\n \"delete\": {\n \"id\": - \"youtube.liveChatMessages.delete\",\n \"httpMethod\": \"DELETE\",\n - \ \"description\": \"Deletes a chat message.\",\n \"parameterOrder\": - [\n \"id\"\n ],\n \"scopes\": [\n \"https://www.googleapis.com/auth/youtube\",\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\"\n ],\n - \ \"parameters\": {\n \"id\": {\n \"location\": - \"query\",\n \"required\": true,\n \"type\": \"string\"\n - \ }\n },\n \"path\": \"youtube/v3/liveChat/messages\",\n - \ \"flatPath\": \"youtube/v3/liveChat/messages\"\n }\n }\n - \ }\n },\n \"documentationLink\": \"https://developers.google.com/youtube/\",\n - \ \"revision\": \"20230220\",\n \"basePath\": \"\",\n \"canonicalName\": - \"YouTube\",\n \"description\": \"The YouTube Data API v3 is an API that - provides access to YouTube data, such as videos, playlists, and channels.\",\n - \ \"ownerName\": \"Google\",\n \"fullyEncodeReservedExpansion\": true,\n - \ \"discoveryVersion\": \"v1\",\n \"name\": \"youtube\",\n \"baseUrl\": - \"https://youtube.googleapis.com/\",\n \"protocol\": \"rest\",\n \"auth\": - {\n \"oauth2\": {\n \"scopes\": {\n \"https://www.googleapis.com/auth/youtube\": - {\n \"description\": \"Manage your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.force-ssl\": {\n \"description\": - \"See, edit, and permanently delete your YouTube videos, ratings, comments - and captions\"\n },\n \"https://www.googleapis.com/auth/youtube.readonly\": - {\n \"description\": \"View your YouTube account\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner\": {\n \"description\": - \"View and manage your assets and associated content on YouTube\"\n },\n - \ \"https://www.googleapis.com/auth/youtubepartner-channel-audit\": - {\n \"description\": \"View private information of your YouTube channel - relevant during the audit process with a YouTube partner\"\n },\n \"https://www.googleapis.com/auth/youtube.upload\": - {\n \"description\": \"Manage your YouTube videos\"\n },\n - \ \"https://www.googleapis.com/auth/youtube.channel-memberships.creator\": - {\n \"description\": \"See a list of your current active channel - members, their current level, and when they became a member\"\n }\n - \ }\n }\n },\n \"version\": \"v3\"\n}\n" + \"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.\"\n },\n \"smsaRating\": + {\n \"enum\": [\n \"smsaUnspecified\",\n \"smsaA\",\n + \ \"smsa7\",\n \"smsa11\",\n \"smsa15\",\n + \ \"smsaUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's rating from Statens medier\xE5d (Sweden's + National Media Council).\",\n \"enumDescriptions\": [\n \"\",\n + \ \"All ages\",\n \"7\",\n \"11\",\n \"15\",\n + \ \"\"\n ]\n },\n \"mccypRating\": {\n \"enum\": + [\n \"mccypUnspecified\",\n \"mccypA\",\n \"mccyp7\",\n + \ \"mccyp11\",\n \"mccyp15\",\n \"mccypUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Danish + Film Institute's (Det Danske Filminstitut) Media Council for Children and + Young People.\",\n \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"7\",\n \"11\",\n \"15\",\n \"\"\n + \ ],\n \"type\": \"string\"\n },\n \"pefilmRating\": + {\n \"enum\": [\n \"pefilmUnspecified\",\n \"pefilmPt\",\n + \ \"pefilmPg\",\n \"pefilm14\",\n \"pefilm18\",\n + \ \"pefilmUnrated\"\n ],\n \"description\": \"The + video's rating in Peru.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"PT\",\n \"PG\",\n \"14\",\n \"18\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"moctwRating\": {\n \"description\": \"The video's rating + from Taiwan's Ministry of Culture (\u6587\u5316\u90E8).\",\n \"type\": + \"string\",\n \"enum\": [\n \"moctwUnspecified\",\n \"moctwG\",\n + \ \"moctwP\",\n \"moctwPg\",\n \"moctwR\",\n + \ \"moctwUnrated\",\n \"moctwR12\",\n \"moctwR15\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"P\",\n \"PG\",\n \"R\",\n \"\",\n + \ \"R-12\",\n \"R-15\"\n ]\n },\n \"acbRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"E\",\n + \ \"Programs that have been given a P classification by the Australian + Communications and Media Authority. These programs are intended for preschool + children.\",\n \"Programs that have been given a C classification + by the Australian Communications and Media Authority. These programs are intended + for children (other than preschool children) who are younger than 14 years + of age.\",\n \"G\",\n \"PG\",\n \"M\",\n + \ \"MA15+\",\n \"R18+\",\n \"\"\n ],\n + \ \"description\": \"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.\",\n \"type\": + \"string\",\n \"enum\": [\n \"acbUnspecified\",\n \"acbE\",\n + \ \"acbP\",\n \"acbC\",\n \"acbG\",\n \"acbPg\",\n + \ \"acbM\",\n \"acbMa15plus\",\n \"acbR18plus\",\n + \ \"acbUnrated\"\n ]\n },\n \"chvrsRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"14A\",\n \"18A\",\n \"R\",\n + \ \"E\",\n \"\"\n ],\n \"enum\": [\n + \ \"chvrsUnspecified\",\n \"chvrsG\",\n \"chvrsPg\",\n + \ \"chvrs14a\",\n \"chvrs18a\",\n \"chvrsR\",\n + \ \"chvrsE\",\n \"chvrsUnrated\"\n ],\n \"description\": + \"The video's Canadian Home Video Rating System (CHVRS) rating.\",\n \"type\": + \"string\"\n },\n \"cnaRating\": {\n \"description\": + \"The video's rating from Romania's CONSILIUL NATIONAL AL AUDIOVIZUALULUI + (CNA).\",\n \"enumDescriptions\": [\n \"\",\n \"AP\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"18+\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"enum\": + [\n \"cnaUnspecified\",\n \"cnaAp\",\n \"cna12\",\n + \ \"cna15\",\n \"cna18\",\n \"cna18plus\",\n + \ \"cnaUnrated\"\n ]\n },\n \"mekuRating\": + {\n \"type\": \"string\",\n \"description\": \"The video's + rating from Finland's Kansallinen Audiovisuaalinen Instituutti (National Audiovisual + Institute).\",\n \"enum\": [\n \"mekuUnspecified\",\n + \ \"mekuS\",\n \"meku7\",\n \"meku12\",\n + \ \"meku16\",\n \"meku18\",\n \"mekuUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"S\",\n + \ \"7\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ]\n },\n \"rteRating\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"GA\",\n + \ \"CH\",\n \"PS\",\n \"MA\",\n \"\"\n + \ ],\n \"enum\": [\n \"rteUnspecified\",\n \"rteGa\",\n + \ \"rteCh\",\n \"rtePs\",\n \"rteMa\",\n \"rteUnrated\"\n + \ ],\n \"description\": \"The video's rating from Ireland's + Raidi\xF3 Teilif\xEDs \xC9ireann.\"\n },\n \"oflcRating\": {\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"M\",\n \"R13\",\n \"R15\",\n + \ \"R16\",\n \"R18\",\n \"\",\n \"RP13\",\n + \ \"RP16\",\n \"RP18\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"oflcUnspecified\",\n \"oflcG\",\n + \ \"oflcPg\",\n \"oflcM\",\n \"oflcR13\",\n + \ \"oflcR15\",\n \"oflcR16\",\n \"oflcR18\",\n + \ \"oflcUnrated\",\n \"oflcRp13\",\n \"oflcRp16\",\n + \ \"oflcRp18\"\n ],\n \"description\": \"The video's + Office of Film and Literature Classification (OFLC - New Zealand) rating.\"\n + \ },\n \"fmocRating\": {\n \"enum\": [\n \"fmocUnspecified\",\n + \ \"fmocU\",\n \"fmoc10\",\n \"fmoc12\",\n + \ \"fmoc16\",\n \"fmoc18\",\n \"fmocE\",\n + \ \"fmocUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"\"\n + \ ],\n \"description\": \"This property has been deprecated. + Use the contentDetails.contentRating.cncRating instead.\",\n \"type\": + \"string\"\n },\n \"bbfcRating\": {\n \"enum\": [\n + \ \"bbfcUnspecified\",\n \"bbfcU\",\n \"bbfcPg\",\n + \ \"bbfc12a\",\n \"bbfc12\",\n \"bbfc15\",\n + \ \"bbfc18\",\n \"bbfcR18\",\n \"bbfcUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's British Board of Film Classification (BBFC) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"R18\",\n + \ \"\"\n ]\n },\n \"russiaRating\": {\n \"description\": + \"The video's National Film Registry of the Russian Federation (MKRF - Russia) + rating.\",\n \"enumDescriptions\": [\n \"\",\n \"0+\",\n + \ \"6+\",\n \"12+\",\n \"16+\",\n \"18+\",\n + \ \"\"\n ],\n \"enum\": [\n \"russiaUnspecified\",\n + \ \"russia0\",\n \"russia6\",\n \"russia12\",\n + \ \"russia16\",\n \"russia18\",\n \"russiaUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"ilfilmRating\": + {\n \"enum\": [\n \"ilfilmUnspecified\",\n \"ilfilmAa\",\n + \ \"ilfilm12\",\n \"ilfilm14\",\n \"ilfilm16\",\n + \ \"ilfilm18\",\n \"ilfilmUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"AA\",\n \"12\",\n \"14\",\n + \ \"16\",\n \"18\",\n \"\"\n ],\n + \ \"type\": \"string\",\n \"description\": \"The video's + rating in Israel.\"\n },\n \"czfilmRating\": {\n \"enum\": + [\n \"czfilmUnspecified\",\n \"czfilmU\",\n \"czfilm12\",\n + \ \"czfilm14\",\n \"czfilm18\",\n \"czfilmUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating in the Czech Republic.\",\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"12\",\n \"14\",\n + \ \"18\",\n \"\"\n ]\n },\n \"mpaatRating\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"GB\",\n \"RB\"\n ],\n \"enum\": + [\n \"mpaatUnspecified\",\n \"mpaatGb\",\n \"mpaatRb\"\n + \ ],\n \"description\": \"The rating system for trailer, + DVD, and Ad in the US. See http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html.\"\n + \ },\n \"resorteviolenciaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n + \ \"D\",\n \"E\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"resorteviolenciaUnspecified\",\n + \ \"resorteviolenciaA\",\n \"resorteviolenciaB\",\n \"resorteviolenciaC\",\n + \ \"resorteviolenciaD\",\n \"resorteviolenciaE\",\n \"resorteviolenciaUnrated\"\n + \ ],\n \"description\": \"The video's rating in Venezuela.\"\n + \ },\n \"nmcRating\": {\n \"type\": \"string\",\n \"description\": + \"The National Media Council ratings system for United Arab Emirates.\",\n + \ \"enum\": [\n \"nmcUnspecified\",\n \"nmcG\",\n + \ \"nmcPg\",\n \"nmcPg13\",\n \"nmcPg15\",\n + \ \"nmc15plus\",\n \"nmc18plus\",\n \"nmc18tc\",\n + \ \"nmcUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG-13\",\n + \ \"PG-15\",\n \"15+\",\n \"18+\",\n \"18TC\",\n + \ \"\"\n ]\n },\n \"cceRating\": {\n \"enum\": + [\n \"cceUnspecified\",\n \"cceM4\",\n \"cceM6\",\n + \ \"cceM12\",\n \"cceM16\",\n \"cceM18\",\n + \ \"cceUnrated\",\n \"cceM14\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from Portugal's + Comiss\xE3o de Classifica\xE7\xE3o de Espect\xB4culos.\",\n \"enumDescriptions\": + [\n \"\",\n \"4\",\n \"6\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"\",\n \"14\"\n + \ ]\n },\n \"fpbRating\": {\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"A\",\n + \ \"PG\",\n \"7-9PG\",\n \"10-12PG\",\n \"13\",\n + \ \"16\",\n \"18\",\n \"X18\",\n \"XX\",\n + \ \"\",\n \"10\"\n ],\n \"description\": + \"The video's rating from South Africa's Film and Publication Board.\",\n + \ \"enum\": [\n \"fpbUnspecified\",\n \"fpbA\",\n + \ \"fpbPg\",\n \"fpb79Pg\",\n \"fpb1012Pg\",\n + \ \"fpb13\",\n \"fpb16\",\n \"fpb18\",\n \"fpbX18\",\n + \ \"fpbXx\",\n \"fpbUnrated\",\n \"fpb10\"\n + \ ]\n },\n \"fpbRatingReasons\": {\n \"items\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n + \ \"\",\n \"South Africa rating content descriptors.\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"enum\": + [\n \"fpbRatingReasonUnspecified\",\n \"fpbBlasphemy\",\n + \ \"fpbLanguage\",\n \"fpbNudity\",\n \"fpbPrejudice\",\n + \ \"fpbSex\",\n \"fpbViolence\",\n \"fpbDrugs\",\n + \ \"fpbSexualViolence\",\n \"fpbHorror\",\n \"fpbCriminalTechniques\",\n + \ \"fpbImitativeActsTechniques\"\n ]\n },\n + \ \"type\": \"array\",\n \"description\": \"Reasons that + explain why the video received its FPB (South Africa) rating.\"\n },\n + \ \"fskRating\": {\n \"enum\": [\n \"fskUnspecified\",\n + \ \"fsk0\",\n \"fsk6\",\n \"fsk12\",\n \"fsk16\",\n + \ \"fsk18\",\n \"fskUnrated\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's Freiwillige Selbstkontrolle + der Filmwirtschaft (FSK - Germany) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"FSK 0\",\n \"FSK 6\",\n \"FSK + 12\",\n \"FSK 16\",\n \"FSK 18\",\n \"\"\n + \ ]\n },\n \"nbcplRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"nbcplUnspecified\",\n \"nbcplI\",\n + \ \"nbcplIi\",\n \"nbcplIii\",\n \"nbcplIv\",\n + \ \"nbcpl18plus\",\n \"nbcplUnrated\"\n ],\n + \ \"description\": \"The video's rating in Poland.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"tvpgRating\": {\n \"description\": \"The video's TV Parental + Guidelines (TVPG) rating.\",\n \"enum\": [\n \"tvpgUnspecified\",\n + \ \"tvpgY\",\n \"tvpgY7\",\n \"tvpgY7Fv\",\n + \ \"tvpgG\",\n \"tvpgPg\",\n \"pg14\",\n \"tvpgMa\",\n + \ \"tvpgUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"TV-Y\",\n + \ \"TV-Y7\",\n \"TV-Y7-FV\",\n \"TV-G\",\n + \ \"TV-PG\",\n \"TV-14\",\n \"TV-MA\",\n \"\"\n + \ ]\n },\n \"lsfRating\": {\n \"description\": + \"The video's rating from Indonesia's Lembaga Sensor Film.\",\n \"enumDescriptions\": + [\n \"\",\n \"SU\",\n \"A\",\n \"BO\",\n + \ \"13\",\n \"R\",\n \"17\",\n \"D\",\n + \ \"21\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"lsfUnspecified\",\n \"lsfSu\",\n + \ \"lsfA\",\n \"lsfBo\",\n \"lsf13\",\n \"lsfR\",\n + \ \"lsf17\",\n \"lsfD\",\n \"lsf21\",\n \"lsfUnrated\"\n + \ ]\n },\n \"rtcRating\": {\n \"enum\": [\n + \ \"rtcUnspecified\",\n \"rtcAa\",\n \"rtcA\",\n + \ \"rtcB\",\n \"rtcB15\",\n \"rtcC\",\n \"rtcD\",\n + \ \"rtcUnrated\"\n ],\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"AA\",\n + \ \"A\",\n \"B\",\n \"B15\",\n \"C\",\n + \ \"D\",\n \"\"\n ],\n \"description\": + \"The video's General Directorate of Radio, Television and Cinematography + (Mexico) rating.\"\n },\n \"catvRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"C\",\n \"C8\",\n \"G\",\n + \ \"PG\",\n \"14+\",\n \"18+\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"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.\",\n \"enum\": + [\n \"catvUnspecified\",\n \"catvC\",\n \"catvC8\",\n + \ \"catvG\",\n \"catvPg\",\n \"catv14plus\",\n + \ \"catv18plus\",\n \"catvUnrated\",\n \"catvE\"\n + \ ]\n },\n \"mocRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"T\",\n \"7\",\n + \ \"12\",\n \"15\",\n \"18\",\n \"X\",\n + \ \"Banned\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's Ministerio de Cultura + (Colombia) rating.\",\n \"enum\": [\n \"mocUnspecified\",\n + \ \"mocE\",\n \"mocT\",\n \"moc7\",\n \"moc12\",\n + \ \"moc15\",\n \"moc18\",\n \"mocX\",\n \"mocBanned\",\n + \ \"mocUnrated\"\n ]\n },\n \"egfilmRating\": + {\n \"description\": \"The video's rating in Egypt.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"GN\",\n + \ \"18\",\n \"BN\",\n \"\"\n ],\n + \ \"enum\": [\n \"egfilmUnspecified\",\n \"egfilmGn\",\n + \ \"egfilm18\",\n \"egfilmBn\",\n \"egfilmUnrated\"\n + \ ]\n },\n \"ecbmctRating\": {\n \"type\": + \"string\",\n \"enum\": [\n \"ecbmctUnspecified\",\n \"ecbmctG\",\n + \ \"ecbmct7a\",\n \"ecbmct7plus\",\n \"ecbmct13a\",\n + \ \"ecbmct13plus\",\n \"ecbmct15a\",\n \"ecbmct15plus\",\n + \ \"ecbmct18plus\",\n \"ecbmctUnrated\"\n ],\n + \ \"description\": \"Rating system in Turkey - Evaluation and Classification + Board of the Ministry of Culture and Tourism\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"7A\",\n \"7+\",\n + \ \"13A\",\n \"13+\",\n \"15A\",\n \"15+\",\n + \ \"18+\",\n \"\"\n ]\n },\n \"mibacRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ],\n \"description\": + \"The video's rating from the Ministero dei Beni e delle Attivit\xE0 Culturali + e del Turismo (Italy).\",\n \"enum\": [\n \"mibacUnspecified\",\n + \ \"mibacT\",\n \"mibacVap\",\n \"mibacVm6\",\n + \ \"mibacVm12\",\n \"mibacVm14\",\n \"mibacVm16\",\n + \ \"mibacVm18\",\n \"mibacUnrated\"\n ],\n \"type\": + \"string\"\n },\n \"agcomRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"VM14\",\n \"VM18\",\n + \ \"\"\n ],\n \"enum\": [\n \"agcomUnspecified\",\n + \ \"agcomT\",\n \"agcomVm14\",\n \"agcomVm18\",\n + \ \"agcomUnrated\"\n ],\n \"description\": \"The + video's rating from Italy's Autorit\xE0 per le Garanzie nelle Comunicazioni + (AGCOM).\",\n \"type\": \"string\"\n },\n \"kijkwijzerRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"kijkwijzerUnspecified\",\n + \ \"kijkwijzerAl\",\n \"kijkwijzer6\",\n \"kijkwijzer9\",\n + \ \"kijkwijzer12\",\n \"kijkwijzer16\",\n \"kijkwijzer18\",\n + \ \"kijkwijzerUnrated\"\n ],\n \"description\": + \"The video's NICAM/Kijkwijzer rating from the Nederlands Instituut voor de + Classificatie van Audiovisuele Media (Netherlands).\",\n \"enumDescriptions\": + [\n \"\",\n \"AL\",\n \"6\",\n \"9\",\n + \ \"12\",\n \"16\",\n \"\",\n \"\"\n + \ ]\n },\n \"cncRating\": {\n \"description\": + \"Rating system in France - Commission de classification cinematographique\",\n + \ \"enum\": [\n \"cncUnspecified\",\n \"cncT\",\n + \ \"cnc10\",\n \"cnc12\",\n \"cnc16\",\n \"cnc18\",\n + \ \"cncE\",\n \"cncInterdiction\",\n \"cncUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"E\",\n \"interdiction\",\n + \ \"\"\n ]\n },\n \"medietilsynetRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"medietilsynetUnspecified\",\n + \ \"medietilsynetA\",\n \"medietilsynet6\",\n \"medietilsynet7\",\n + \ \"medietilsynet9\",\n \"medietilsynet11\",\n \"medietilsynet12\",\n + \ \"medietilsynet15\",\n \"medietilsynet18\",\n \"medietilsynetUnrated\"\n + \ ],\n \"description\": \"The video's rating from Medietilsynet, + the Norwegian Media Authority.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"A\",\n \"6\",\n \"7\",\n \"9\",\n + \ \"11\",\n \"12\",\n \"15\",\n \"18\",\n + \ \"\"\n ]\n },\n \"fcbmRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG13\",\n \"P13\",\n + \ \"18\",\n \"18SX\",\n \"18PA\",\n \"18SG\",\n + \ \"18PL\",\n \"\"\n ],\n \"description\": + \"The video's rating from Malaysia's Film Censorship Board.\",\n \"enum\": + [\n \"fcbmUnspecified\",\n \"fcbmU\",\n \"fcbmPg13\",\n + \ \"fcbmP13\",\n \"fcbm18\",\n \"fcbm18sx\",\n + \ \"fcbm18pa\",\n \"fcbm18sg\",\n \"fcbm18pl\",\n + \ \"fcbmUnrated\"\n ],\n \"type\": \"string\"\n + \ },\n \"kmrbRating\": {\n \"description\": \"The video's + Korea Media Rating Board (\uC601\uC0C1\uBB3C\uB4F1\uAE09\uC704\uC6D0\uD68C) + rating. The KMRB rates videos in South Korea.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\uC804\uCCB4\uAD00\uB78C\uAC00\",\n + \ \"12\uC138 \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"15\uC138 + \uC774\uC0C1 \uAD00\uB78C\uAC00\",\n \"\",\n \"\uCCAD\uC18C\uB144 + \uAD00\uB78C\uBD88\uAC00\",\n \"\"\n ],\n \"enum\": + [\n \"kmrbUnspecified\",\n \"kmrbAll\",\n \"kmrb12plus\",\n + \ \"kmrb15plus\",\n \"kmrbTeenr\",\n \"kmrbR\",\n + \ \"kmrbUnrated\"\n ]\n },\n \"csaRating\": + {\n \"description\": \"The video's rating from France's Conseil sup\xE9rieur + de l\u2019audiovisuel, which rates broadcast content.\",\n \"enum\": + [\n \"csaUnspecified\",\n \"csaT\",\n \"csa10\",\n + \ \"csa12\",\n \"csa16\",\n \"csa18\",\n \"csaInterdiction\",\n + \ \"csaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"T\",\n \"10\",\n \"12\",\n + \ \"16\",\n \"18\",\n \"Interdiction\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"kfcbRating\": {\n \"description\": \"The video's rating + from the Kenya Film Classification Board.\",\n \"enum\": [\n \"kfcbUnspecified\",\n + \ \"kfcbG\",\n \"kfcbPg\",\n \"kfcb16plus\",\n + \ \"kfcbR\",\n \"kfcbUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"GE\",\n \"PG\",\n \"16\",\n + \ \"18\",\n \"\"\n ],\n \"type\": \"string\"\n + \ },\n \"mccaaRating\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"mccaaUnspecified\",\n \"mccaaU\",\n + \ \"mccaaPg\",\n \"mccaa12a\",\n \"mccaa12\",\n + \ \"mccaa14\",\n \"mccaa15\",\n \"mccaa16\",\n + \ \"mccaa18\",\n \"mccaaUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"U\",\n \"PG\",\n \"12A\",\n + \ \"12\",\n \"14 - this rating was removed from the new + classification structure introduced in 2013.\",\n \"15\",\n \"16 + - this rating was removed from the new classification structure introduced + in 2013.\",\n \"18\",\n \"\"\n ],\n \"description\": + \"The video's rating from Malta's Film Age-Classification Board.\"\n },\n + \ \"fcoRating\": {\n \"description\": \"The video's rating + from Hong Kong's Office for Film, Newspaper and Article Administration.\",\n + \ \"enum\": [\n \"fcoUnspecified\",\n \"fcoI\",\n + \ \"fcoIia\",\n \"fcoIib\",\n \"fcoIi\",\n + \ \"fcoIii\",\n \"fcoUnrated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"I\",\n + \ \"IIA\",\n \"IIB\",\n \"II\",\n \"III\",\n + \ \"\"\n ]\n },\n \"mcstRating\": {\n \"description\": + \"The video's rating system for Vietnam - MCST\",\n \"enum\": [\n + \ \"mcstUnspecified\",\n \"mcstP\",\n \"mcst0\",\n + \ \"mcstC13\",\n \"mcstC16\",\n \"mcst16plus\",\n + \ \"mcstC18\",\n \"mcstGPg\",\n \"mcstUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"P\",\n + \ \"0\",\n \"C13\",\n \"C16\",\n \"16+\",\n + \ \"C18\",\n \"MCST_G_PG\",\n \"\"\n ],\n + \ \"type\": \"string\"\n },\n \"ytRating\": {\n \"enum\": + [\n \"ytUnspecified\",\n \"ytAgeRestricted\"\n ],\n + \ \"description\": \"A rating that YouTube uses to identify age-restricted + content.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ]\n },\n \"djctqRatingReasons\": + {\n \"description\": \"Reasons that explain why the video received + its DJCQT (Brazil) rating.\",\n \"items\": {\n \"enumDescriptions\": + [\n \"\",\n \"Brazil rating content descriptors. + See http://go/brazilratings section F. Viol\xEAncia (Violence)\",\n \"Viol\xEAncia + extrema (Extreme violence)\",\n \"Conte\xFAdo sexual (Sexual + content)\",\n \"Nudez (Nudity)\",\n \"Sexo (Sex)\",\n + \ \"Sexo Expl\xEDcito (Explicit sex)\",\n \"Drogas + (Drugs)\",\n \"Drogas L\xEDcitas (Legal drugs)\",\n \"Drogas + Il\xEDcitas (Illegal drugs)\",\n \"Linguagem Impr\xF3pria (Inappropriate + language)\",\n \"Atos Criminosos (Criminal Acts)\",\n \"Conte\xFAdo + Impactante (Impacting content)\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"djctqRatingReasonUnspecified\",\n + \ \"djctqViolence\",\n \"djctqExtremeViolence\",\n + \ \"djctqSexualContent\",\n \"djctqNudity\",\n \"djctqSex\",\n + \ \"djctqExplicitSex\",\n \"djctqDrugs\",\n \"djctqLegalDrugs\",\n + \ \"djctqIllegalDrugs\",\n \"djctqInappropriateLanguage\",\n + \ \"djctqCriminalActs\",\n \"djctqImpactingContent\"\n + \ ]\n },\n \"type\": \"array\"\n },\n \"mdaRating\": + {\n \"enum\": [\n \"mdaUnspecified\",\n \"mdaG\",\n + \ \"mdaPg\",\n \"mdaPg13\",\n \"mdaNc16\",\n + \ \"mdaM18\",\n \"mdaR21\",\n \"mdaUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"PG13\",\n + \ \"NC16\",\n \"M18\",\n \"R21\",\n \"\"\n + \ ],\n \"description\": \"The video's rating from Singapore's + Media Development Authority (MDA) and, specifically, it's Board of Film Censors + (BFC).\"\n },\n \"grfilmRating\": {\n \"enum\": [\n + \ \"grfilmUnspecified\",\n \"grfilmK\",\n \"grfilmE\",\n + \ \"grfilmK12\",\n \"grfilmK13\",\n \"grfilmK15\",\n + \ \"grfilmK17\",\n \"grfilmK18\",\n \"grfilmUnrated\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The video's rating in Greece.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"K\",\n \"E\",\n \"K-12\",\n \"K-13\",\n + \ \"K-15\",\n \"K-17\",\n \"K-18\",\n \"\"\n + \ ]\n },\n \"anatelRating\": {\n \"type\": + \"string\",\n \"description\": \"The video's Anatel (Asociaci\xF3n + Nacional de Televisi\xF3n) rating for Chilean television.\",\n \"enum\": + [\n \"anatelUnspecified\",\n \"anatelF\",\n \"anatelI\",\n + \ \"anatelI7\",\n \"anatelI10\",\n \"anatelI12\",\n + \ \"anatelR\",\n \"anatelA\",\n \"anatelUnrated\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"F\",\n + \ \"I\",\n \"I-7\",\n \"I-10\",\n \"I-12\",\n + \ \"R\",\n \"A\",\n \"\"\n ]\n },\n + \ \"cbfcRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"U\",\n \"U/A\",\n \"U/A 7+\",\n \"U/A + 13+\",\n \"U/A 16+\",\n \"A\",\n \"S\",\n + \ \"\"\n ],\n \"enum\": [\n \"cbfcUnspecified\",\n + \ \"cbfcU\",\n \"cbfcUA\",\n \"cbfcUA7plus\",\n + \ \"cbfcUA13plus\",\n \"cbfcUA16plus\",\n \"cbfcA\",\n + \ \"cbfcS\",\n \"cbfcUnrated\"\n ],\n \"description\": + \"The video's Central Board of Film Certification (CBFC - India) rating.\",\n + \ \"type\": \"string\"\n },\n \"icaaRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"APTA\",\n \"7\",\n \"12\",\n + \ \"13\",\n \"16\",\n \"18\",\n \"X\",\n + \ \"\"\n ],\n \"type\": \"string\",\n \"description\": + \"The video's Instituto de la Cinematograf\xEDa y de las Artes Audiovisuales + (ICAA - Spain) rating.\",\n \"enum\": [\n \"icaaUnspecified\",\n + \ \"icaaApta\",\n \"icaa7\",\n \"icaa12\",\n + \ \"icaa13\",\n \"icaa16\",\n \"icaa18\",\n + \ \"icaaX\",\n \"icaaUnrated\"\n ]\n },\n + \ \"mpaaRating\": {\n \"description\": \"The video's Motion + Picture Association of America (MPAA) rating.\",\n \"type\": \"string\",\n + \ \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG\",\n \"PG-13\",\n \"R\",\n \"NC-17\",\n + \ \"! X\",\n \"\"\n ],\n \"enum\": + [\n \"mpaaUnspecified\",\n \"mpaaG\",\n \"mpaaPg\",\n + \ \"mpaaPg13\",\n \"mpaaR\",\n \"mpaaNc17\",\n + \ \"mpaaX\",\n \"mpaaUnrated\"\n ]\n },\n + \ \"nkclvRating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"U\",\n \"7+\",\n \"12+\",\n \"! + 16+\",\n \"18+\",\n \"\"\n ],\n \"type\": + \"string\",\n \"description\": \"The video's rating from the Nacion\xE3lais + Kino centrs (National Film Centre of Latvia).\",\n \"enum\": [\n + \ \"nkclvUnspecified\",\n \"nkclvU\",\n \"nkclv7plus\",\n + \ \"nkclv12plus\",\n \"nkclv16plus\",\n \"nkclv18plus\",\n + \ \"nkclvUnrated\"\n ]\n },\n \"djctqRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"djctqUnspecified\",\n + \ \"djctqL\",\n \"djctq10\",\n \"djctq12\",\n + \ \"djctq14\",\n \"djctq16\",\n \"djctq18\",\n + \ \"djctqEr\",\n \"djctqL10\",\n \"djctqL12\",\n + \ \"djctqL14\",\n \"djctqL16\",\n \"djctqL18\",\n + \ \"djctq1012\",\n \"djctq1014\",\n \"djctq1016\",\n + \ \"djctq1018\",\n \"djctq1214\",\n \"djctq1216\",\n + \ \"djctq1218\",\n \"djctq1416\",\n \"djctq1418\",\n + \ \"djctq1618\",\n \"djctqUnrated\"\n ],\n \"description\": + \"The video's Departamento de Justi\xE7a, Classifica\xE7\xE3o, Qualifica\xE7\xE3o + e T\xEDtulos (DJCQT - Brazil) rating.\",\n \"enumDescriptions\": + [\n \"\",\n \"L\",\n \"10\",\n \"12\",\n + \ \"14\",\n \"16\",\n \"18\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"nfrcRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"A\",\n \"B\",\n \"C\",\n + \ \"D\",\n \"X\",\n \"\"\n ],\n \"enum\": + [\n \"nfrcUnspecified\",\n \"nfrcA\",\n \"nfrcB\",\n + \ \"nfrcC\",\n \"nfrcD\",\n \"nfrcX\",\n \"nfrcUnrated\"\n + \ ],\n \"description\": \"The video's rating from the Bulgarian + National Film Center.\",\n \"type\": \"string\"\n },\n \"cccRating\": + {\n \"type\": \"string\",\n \"enum\": [\n \"cccUnspecified\",\n + \ \"cccTe\",\n \"ccc6\",\n \"ccc14\",\n \"ccc18\",\n + \ \"ccc18v\",\n \"ccc18s\",\n \"cccUnrated\"\n + \ ],\n \"description\": \"The video's Consejo de Calificaci\xF3n + Cinematogr\xE1fica (Chile) rating.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"Todo espectador\",\n \"6+ - Inconveniente + para menores de 7 a\xF1os\",\n \"14+\",\n \"18+\",\n + \ \"18+ - contenido excesivamente violento\",\n \"18+ + - contenido pornogr\xE1fico\",\n \"\"\n ]\n },\n + \ \"cicfRating\": {\n \"type\": \"string\",\n \"enum\": + [\n \"cicfUnspecified\",\n \"cicfE\",\n \"cicfKtEa\",\n + \ \"cicfKntEna\",\n \"cicfUnrated\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"E\",\n \"KT/EA\",\n \"KNT/ENA\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from the Commission de Contr\xF4le des Films (Belgium).\"\n },\n \"eirinRating\": + {\n \"enumDescriptions\": [\n \"\",\n \"G\",\n + \ \"PG-12\",\n \"R15+\",\n \"R18+\",\n \"\"\n + \ ],\n \"enum\": [\n \"eirinUnspecified\",\n \"eirinG\",\n + \ \"eirinPg12\",\n \"eirinR15plus\",\n \"eirinR18plus\",\n + \ \"eirinUnrated\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The video's Eirin (\u6620\u502B) rating. Eirin + is the Japanese rating system.\"\n },\n \"eefilmRating\": {\n + \ \"description\": \"The video's rating in Estonia.\",\n \"enumDescriptions\": + [\n \"\",\n \"Pere\",\n \"L\",\n \"MS-6\",\n + \ \"K-6\",\n \"MS-12\",\n \"K-12\",\n \"K-14\",\n + \ \"K-16\",\n \"\"\n ],\n \"type\": + \"string\",\n \"enum\": [\n \"eefilmUnspecified\",\n \"eefilmPere\",\n + \ \"eefilmL\",\n \"eefilmMs6\",\n \"eefilmK6\",\n + \ \"eefilmMs12\",\n \"eefilmK12\",\n \"eefilmK14\",\n + \ \"eefilmK16\",\n \"eefilmUnrated\"\n ]\n },\n + \ \"rcnofRating\": {\n \"enum\": [\n \"rcnofUnspecified\",\n + \ \"rcnofI\",\n \"rcnofIi\",\n \"rcnofIii\",\n + \ \"rcnofIv\",\n \"rcnofV\",\n \"rcnofVi\",\n + \ \"rcnofUnrated\"\n ],\n \"description\": \"The + video's rating from the Hungarian Nemzeti Filmiroda, the Rating Committee + of the National Office of Film.\",\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"nbcRating\": {\n \"enumDescriptions\": + [\n \"\",\n \"G\",\n \"PG\",\n \"12+\",\n + \ \"15+\",\n \"18+\",\n \"18+R\",\n \"PU\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from the Maldives National Bureau of Classification.\",\n \"enum\": + [\n \"nbcUnspecified\",\n \"nbcG\",\n \"nbcPg\",\n + \ \"nbc12plus\",\n \"nbc15plus\",\n \"nbc18plus\",\n + \ \"nbc18plusr\",\n \"nbcPu\",\n \"nbcUnrated\"\n + \ ],\n \"type\": \"string\"\n },\n \"cscfRating\": + {\n \"enum\": [\n \"cscfUnspecified\",\n \"cscfAl\",\n + \ \"cscfA\",\n \"cscf6\",\n \"cscf9\",\n \"cscf12\",\n + \ \"cscf16\",\n \"cscf18\",\n \"cscfUnrated\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"AL\",\n \"A\",\n \"6\",\n + \ \"9\",\n \"12\",\n \"16\",\n \"18\",\n + \ \"\"\n ],\n \"description\": \"The video's rating + from Luxembourg's Commission de surveillance de la classification des films + (CSCF).\"\n }\n },\n \"id\": \"ContentRating\",\n \"description\": + \"Ratings schemes. The country-specific ratings are mostly for movies and + shows. LINT.IfChange\",\n \"type\": \"object\"\n },\n \"I18nLanguageListResponse\": + {\n \"type\": \"object\",\n \"id\": \"I18nLanguageListResponse\",\n + \ \"properties\": {\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"I18nLanguage\"\n },\n \"description\": \"A list of supported + i18n languages. In this map, the i18n language ID is the map key, and its + value is the corresponding i18nLanguage resource.\",\n \"type\": + \"array\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The visitorId identifies the visitor.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#i18nLanguageListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#i18nLanguageListResponse\\\".\"\n }\n + \ }\n },\n \"SubscriptionSnippet\": {\n \"description\": \"Basic + details about a subscription, including title, description and thumbnails + of the subscribed item.\",\n \"type\": \"object\",\n \"properties\": + {\n \"description\": {\n \"type\": \"string\",\n \"description\": + \"The subscription's details.\"\n },\n \"resourceId\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.subscriptions.insert\"\n + \ ]\n },\n \"$ref\": \"ResourceId\",\n \"description\": + \"The id object contains information about the channel that the user subscribed + to.\"\n },\n \"channelId\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the subscriber's channel.\"\n },\n \"publishedAt\": {\n \"type\": + \"string\",\n \"description\": \"The date and time that the subscription + was created.\",\n \"format\": \"date-time\"\n },\n \"title\": + {\n \"description\": \"The subscription's title.\",\n \"type\": + \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"A map of thumbnail images associated with the + video. 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.\"\n + \ },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel title for the channel that the subscription + belongs to.\"\n }\n },\n \"id\": \"SubscriptionSnippet\"\n + \ },\n \"VideoSnippet\": {\n \"properties\": {\n \"title\": + {\n \"type\": \"string\",\n \"description\": \"The video's + title. @mutable youtube.videos.insert youtube.videos.update\"\n },\n + \ \"localized\": {\n \"description\": \"Localized snippet selected + with the hl parameter. If no such localization exists, this field is populated + with the default snippet. (Read-only)\",\n \"$ref\": \"VideoLocalization\"\n + \ },\n \"categoryId\": {\n \"description\": \"The YouTube + video category associated with the video.\",\n \"type\": \"string\"\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that the video + was uploaded to.\"\n },\n \"defaultLanguage\": {\n \"type\": + \"string\",\n \"description\": \"The language of the videos's default + snippet.\"\n },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The video's description. @mutable youtube.videos.insert + youtube.videos.update\"\n },\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"A map of thumbnail images + associated with the video. 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.\"\n },\n \"defaultAudioLanguage\": {\n + \ \"description\": \"The default_audio_language property specifies + the language spoken in the video's default audio track.\",\n \"type\": + \"string\"\n },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"format\": \"date-time\",\n \"description\": \"The date + and time when the video was uploaded.\"\n },\n \"liveBroadcastContent\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"The live broadcast is upcoming.\",\n \"The live broadcast + is active.\",\n \"The live broadcast has been completed.\"\n ],\n + \ \"description\": \"Indicates if the video is an upcoming/active + live broadcast. Or it's \\\"none\\\" if the video is not an upcoming/active + live broadcast.\",\n \"enum\": [\n \"none\",\n \"upcoming\",\n + \ \"live\",\n \"completed\"\n ]\n },\n + \ \"tags\": {\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"description\": \"A list of keyword tags associated + with the video. Tags may contain spaces.\",\n \"type\": \"array\"\n + \ },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel title for the channel that the video + belongs to.\"\n }\n },\n \"description\": \"Basic details + about a video, including title, description, uploader, thumbnails and category.\",\n + \ \"id\": \"VideoSnippet\",\n \"type\": \"object\"\n },\n \"VideoSuggestions\": + {\n \"id\": \"VideoSuggestions\",\n \"description\": \"Specifies + suggestions on how to improve video content, including encoding hints, tag + suggestions, and editor suggestions.\",\n \"properties\": {\n \"tagSuggestions\": + {\n \"description\": \"A list of keyword tags that could be added + to the video's metadata to increase the likelihood that users will locate + your video when searching or browsing on YouTube.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"VideoSuggestionsTagSuggestion\"\n + \ }\n },\n \"processingHints\": {\n \"items\": + {\n \"enum\": [\n \"nonStreamableMov\",\n \"sendBestQualityVideo\",\n + \ \"sphericalVideo\",\n \"spatialAudio\",\n \"vrVideo\",\n + \ \"hdrVideo\"\n ],\n \"enumDescriptions\": + [\n \"The MP4 file is not streamable, this will slow down the + processing. MOOV atom was not found at the beginning of the file.\",\n \"Probably + a better quality version of the video exists. The video has wide screen aspect + ratio, but is not an HD video.\",\n \"Uploaded video is spherical + video.\",\n \"Uploaded video has spatial audio.\",\n \"Uploaded + video is VR video.\",\n \"Uploaded video is HDR video.\"\n ],\n + \ \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"A list of suggestions that may improve YouTube's + ability to process the video.\"\n },\n \"processingWarnings\": + {\n \"type\": \"array\",\n \"description\": \"A list of + reasons why YouTube may have difficulty transcoding the uploaded video or + that might result in an erroneous transcoding. These warnings are generated + before YouTube actually processes the uploaded video file. In addition, they + identify issues that are unlikely to cause the video processing to fail but + that might cause problems such as sync issues, video artifacts, or a missing + audio track.\",\n \"items\": {\n \"enumDescriptions\": + [\n \"Unrecognized file format, transcoding is likely to fail.\",\n + \ \"Unrecognized video codec, transcoding is likely to fail.\",\n + \ \"Unrecognized audio codec, transcoding is likely to fail.\",\n + \ \"Conflicting container and stream resolutions.\",\n \"Edit + lists are not currently supported.\",\n \"Video codec that is + known to cause problems was used.\",\n \"Audio codec that is + known to cause problems was used.\",\n \"Unsupported VR video + stereo mode.\",\n \"Unsupported spherical video projection type.\",\n + \ \"Unsupported HDR pixel format.\",\n \"Unspecified + HDR color metadata.\",\n \"Problematic HDR lookup table attached.\"\n + \ ],\n \"type\": \"string\",\n \"enum\": [\n + \ \"unknownContainer\",\n \"unknownVideoCodec\",\n + \ \"unknownAudioCodec\",\n \"inconsistentResolution\",\n + \ \"hasEditlist\",\n \"problematicVideoCodec\",\n + \ \"problematicAudioCodec\",\n \"unsupportedVrStereoMode\",\n + \ \"unsupportedSphericalProjectionType\",\n \"unsupportedHdrPixelFormat\",\n + \ \"unsupportedHdrColorMetadata\",\n \"problematicHdrLookupTable\"\n + \ ]\n }\n },\n \"editorSuggestions\": {\n + \ \"description\": \"A list of video editing operations that might + improve the video quality or playback experience of the uploaded video.\",\n + \ \"type\": \"array\",\n \"items\": {\n \"enum\": + [\n \"videoAutoLevels\",\n \"videoStabilize\",\n + \ \"videoCrop\",\n \"audioQuietAudioSwap\"\n ],\n + \ \"enumDescriptions\": [\n \"Picture brightness levels + seem off and could be corrected.\",\n \"The video appears shaky + and could be stabilized.\",\n \"Margins (mattes) detected around + the picture could be cropped.\",\n \"The audio track appears + silent and could be swapped with a better quality one.\"\n ],\n + \ \"type\": \"string\"\n }\n },\n \"processingErrors\": + {\n \"description\": \"A list of errors that will prevent YouTube + from successfully processing the uploaded video video. These errors indicate + that, regardless of the video's current processing status, eventually, that + status will almost certainly be failed.\",\n \"items\": {\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"File contains + audio only (e.g., an MP3 file).\",\n \"Image file (e.g., a JPEG + image).\",\n \"Movie project file (e.g., Microsoft Windows Movie + Maker project).\",\n \"Other non-video file.\",\n \"Document + or text file (e.g., MS Word document).\",\n \"An archive file + (e.g., a ZIP archive).\",\n \"Unsupported spatial audio layout + type.\"\n ],\n \"enum\": [\n \"audioFile\",\n + \ \"imageFile\",\n \"projectFile\",\n \"notAVideoFile\",\n + \ \"docFile\",\n \"archiveFile\",\n \"unsupportedSpatialAudioLayout\"\n + \ ]\n },\n \"type\": \"array\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"VideoAgeGating\": {\n \"type\": + \"object\",\n \"id\": \"VideoAgeGating\",\n \"properties\": {\n + \ \"alcoholContent\": {\n \"type\": \"boolean\",\n \"description\": + \"Indicates whether or not the video has alcoholic beverage content. Only + users of legal purchasing age in a particular country, as identified by ICAP, + can view the content.\"\n },\n \"videoGameRating\": {\n \"type\": + \"string\",\n \"description\": \"Video game rating, if any.\",\n + \ \"enum\": [\n \"anyone\",\n \"m15Plus\",\n + \ \"m16Plus\",\n \"m17Plus\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ]\n },\n \"restricted\": {\n \"description\": + \"Age-restricted trailers. For redband trailers and adult-rated video-games. + Only users aged 18+ can view the content. The the field is true the content + is restricted to viewers aged 18+. Otherwise The field won't be present.\",\n + \ \"type\": \"boolean\"\n }\n }\n },\n \"ChannelSectionTargeting\": + {\n \"description\": \"ChannelSection targeting setting.\",\n \"properties\": + {\n \"regions\": {\n \"items\": {\n \"type\": \"string\"\n + \ },\n \"description\": \"The region the channel section + is targeting.\",\n \"type\": \"array\"\n },\n \"languages\": + {\n \"description\": \"The language the channel section is targeting.\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": + \"array\"\n },\n \"countries\": {\n \"type\": \"array\",\n + \ \"description\": \"The country the channel section is targeting.\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n }\n + \ },\n \"id\": \"ChannelSectionTargeting\",\n \"type\": \"object\"\n + \ },\n \"SubscriptionSubscriberSnippet\": {\n \"description\": \"Basic + details about a subscription's subscriber including title, description, channel + ID and thumbnails.\",\n \"id\": \"SubscriptionSubscriberSnippet\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"title\": {\n + \ \"description\": \"The title of the subscriber.\",\n \"type\": + \"string\"\n },\n \"channelId\": {\n \"description\": + \"The channel ID of the subscriber.\",\n \"type\": \"string\"\n },\n + \ \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n \"description\": + \"Thumbnails for this subscriber.\"\n },\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The description + of the subscriber.\"\n }\n }\n },\n \"SearchResultSnippet\": + {\n \"type\": \"object\",\n \"id\": \"SearchResultSnippet\",\n \"description\": + \"Basic details about a search result, including title, description and thumbnails + of the item referenced by the search result.\",\n \"properties\": {\n + \ \"title\": {\n \"description\": \"The title of the search + result.\",\n \"type\": \"string\"\n },\n \"publishedAt\": + {\n \"description\": \"The creation date and time of the resource + that the search result identifies.\",\n \"format\": \"date-time\",\n + \ \"type\": \"string\"\n },\n \"description\": {\n \"description\": + \"A description of the search result.\",\n \"type\": \"string\"\n + \ },\n \"channelId\": {\n \"description\": \"The value + that YouTube uses to uniquely identify the channel that published the resource + that the search result identifies.\",\n \"type\": \"string\"\n },\n + \ \"liveBroadcastContent\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"The live broadcast is upcoming.\",\n \"The live broadcast + is active.\",\n \"The live broadcast has been completed.\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"none\",\n + \ \"upcoming\",\n \"live\",\n \"completed\"\n + \ ],\n \"description\": \"It indicates if the resource (video + or channel) has upcoming/active live broadcast content. Or it's \\\"none\\\" + if there is not any upcoming/active live broadcasts.\"\n },\n \"channelTitle\": + {\n \"description\": \"The title of the channel that published the + resource that the search result identifies.\",\n \"type\": \"string\"\n + \ },\n \"thumbnails\": {\n \"description\": \"A map + of thumbnail images associated with the search result. 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.\",\n \"$ref\": + \"ThumbnailDetails\"\n }\n }\n },\n \"ThumbnailDetails\": + {\n \"description\": \"Internal representation of thumbnails for a YouTube + resource.\",\n \"type\": \"object\",\n \"id\": \"ThumbnailDetails\",\n + \ \"properties\": {\n \"maxres\": {\n \"$ref\": \"Thumbnail\",\n + \ \"description\": \"The maximum resolution quality image for this + resource.\"\n },\n \"default\": {\n \"description\": + \"The default image for this resource.\",\n \"$ref\": \"Thumbnail\"\n + \ },\n \"medium\": {\n \"$ref\": \"Thumbnail\",\n \"description\": + \"The medium quality image for this resource.\"\n },\n \"standard\": + {\n \"description\": \"The standard quality image for this resource.\",\n + \ \"$ref\": \"Thumbnail\"\n },\n \"high\": {\n \"$ref\": + \"Thumbnail\",\n \"description\": \"The high quality image for this + resource.\"\n }\n }\n },\n \"LiveBroadcastSnippet\": {\n + \ \"properties\": {\n \"liveChatId\": {\n \"description\": + \"The id of the live chat for this broadcast.\",\n \"type\": \"string\"\n + \ },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The broadcast's description. As with the title, + you can set this field by modifying the broadcast resource or by setting the + description field of the corresponding video resource.\"\n },\n \"publishedAt\": + {\n \"format\": \"date-time\",\n \"description\": \"The + date and time that the broadcast was added to YouTube's live broadcast schedule.\",\n + \ \"type\": \"string\"\n },\n \"scheduledStartTime\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.insert\",\n + \ \"youtube.liveBroadcasts.update\"\n ]\n },\n + \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the broadcast is scheduled to start.\"\n },\n + \ \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that is publishing + the broadcast.\"\n },\n \"scheduledEndTime\": {\n \"type\": + \"string\",\n \"description\": \"The date and time that the broadcast + is scheduled to end.\",\n \"format\": \"date-time\"\n },\n + \ \"title\": {\n \"description\": \"The broadcast's title. + Note that the broadcast represents exactly one YouTube video. You can set + this field by modifying the broadcast resource or by setting the title field + of the corresponding video resource.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"type\": \"string\"\n },\n + \ \"isDefaultBroadcast\": {\n \"description\": \"Indicates + whether this broadcast is the default broadcast. Internal only.\",\n \"type\": + \"boolean\"\n },\n \"thumbnails\": {\n \"description\": + \"A map of thumbnail images associated with the broadcast. For each nested + object in this object, the key is the name of the thumbnail image, and the + value is an object that contains other information about the thumbnail.\",\n + \ \"$ref\": \"ThumbnailDetails\"\n },\n \"actualEndTime\": + {\n \"description\": \"The date and time that the broadcast actually + ended. This information is only available once the broadcast's state is complete.\",\n + \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n + \ \"actualStartTime\": {\n \"type\": \"string\",\n \"format\": + \"date-time\",\n \"description\": \"The date and time that the broadcast + actually started. This information is only available once the broadcast's + state is live.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveBroadcastSnippet\",\n \"description\": \"Basic broadcast information.\"\n + \ },\n \"VideoPlayer\": {\n \"type\": \"object\",\n \"id\": + \"VideoPlayer\",\n \"properties\": {\n \"embedHeight\": {\n \"format\": + \"int64\",\n \"type\": \"string\"\n },\n \"embedWidth\": + {\n \"format\": \"int64\",\n \"type\": \"string\",\n \"description\": + \"The embed width\"\n },\n \"embedHtml\": {\n \"description\": + \"An \\u003ciframe\\u003e tag that embeds a player that will play the video.\",\n + \ \"type\": \"string\"\n }\n },\n \"description\": + \"Player to be used for a video playback.\"\n },\n \"PlaylistItemListResponse\": + {\n \"properties\": {\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ },\n \"etag\": {\n \"type\": \"string\"\n },\n + \ \"pageInfo\": {\n \"description\": \"General pagination information.\",\n + \ \"$ref\": \"PageInfo\"\n },\n \"nextPageToken\": {\n + \ \"type\": \"string\",\n \"description\": \"The token that + can be used as the value of the pageToken parameter to retrieve the next page + in the result set.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#playlistItemListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#playlistItemListResponse\\\". Etag of this resource.\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"prevPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the previous page in the result set.\"\n },\n + \ \"eventId\": {\n \"type\": \"string\",\n \"description\": + \"Serialized EventId of the request which produced this response.\"\n },\n + \ \"items\": {\n \"items\": {\n \"$ref\": \"PlaylistItem\"\n + \ },\n \"type\": \"array\",\n \"description\": \"A + list of playlist items that match the request criteria.\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"PlaylistItemListResponse\"\n + \ },\n \"I18nRegionSnippet\": {\n \"description\": \"Basic details + about an i18n region, such as region code and human-readable name.\",\n \"properties\": + {\n \"gl\": {\n \"description\": \"The region code as a 2-letter + ISO country code.\",\n \"type\": \"string\"\n },\n \"name\": + {\n \"description\": \"The human-readable name of the region.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"I18nRegionSnippet\"\n },\n \"VideoProcessingDetailsProcessingProgress\": + {\n \"description\": \"Video processing progress and completion time + estimate.\",\n \"id\": \"VideoProcessingDetailsProcessingProgress\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"partsTotal\": + {\n \"type\": \"string\",\n \"description\": \"An estimate + of the total number of parts that need to be processed for the video. The + number may be updated with more precise estimates while YouTube processes + the video.\",\n \"format\": \"uint64\"\n },\n \"timeLeftMs\": + {\n \"format\": \"uint64\",\n \"type\": \"string\",\n \"description\": + \"An estimate of the amount of time, in millseconds, that YouTube needs to + finish processing the video.\"\n },\n \"partsProcessed\": {\n + \ \"description\": \"The number of parts of the video that YouTube + has already processed. You can estimate the percentage of the video that YouTube + has already processed by calculating: 100 * parts_processed / parts_total + Note that since the estimated number of parts could increase without a corresponding + increase in the number of parts that have already been processed, it is possible + that the calculated progress could periodically decrease while YouTube processes + a video.\",\n \"format\": \"uint64\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"VideoProjectDetails\": {\n \"type\": + \"object\",\n \"properties\": {},\n \"id\": \"VideoProjectDetails\",\n + \ \"description\": \"DEPRECATED. b/157517979: This part was never populated + after it was added. However, it sees non-zero traffic because there is generated + client code in the wild that refers to it [1]. We keep this field and do NOT + remove it because otherwise V3 would return an error when this part gets requested + [2]. [1] https://developers.google.com/resources/api-libraries/documentation/youtube/v3/csharp/latest/classGoogle_1_1Apis_1_1YouTube_1_1v3_1_1Data_1_1VideoProjectDetails.html + [2] http://google3/video/youtube/src/python/servers/data_api/common.py?l=1565-1569&rcl=344141677\"\n + \ },\n \"ActivityContentDetailsSocial\": {\n \"id\": \"ActivityContentDetailsSocial\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"author\": + {\n \"description\": \"The author of the social network post.\",\n + \ \"type\": \"string\"\n },\n \"referenceUrl\": {\n + \ \"description\": \"The URL of the social network post.\",\n \"type\": + \"string\"\n },\n \"type\": {\n \"enum\": [\n \"unspecified\",\n + \ \"googlePlus\",\n \"facebook\",\n \"twitter\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The name of the social network.\"\n + \ },\n \"resourceId\": {\n \"description\": \"The resourceId + object encapsulates information that identifies the resource associated with + a social network post.\",\n \"$ref\": \"ResourceId\"\n },\n + \ \"imageUrl\": {\n \"type\": \"string\",\n \"description\": + \"An image of the post's author.\"\n }\n },\n \"description\": + \"Details about a social network post.\"\n },\n \"VideoCategorySnippet\": + {\n \"type\": \"object\",\n \"description\": \"Basic details about + a video category, such as its localized title.\",\n \"id\": \"VideoCategorySnippet\",\n + \ \"properties\": {\n \"assignable\": {\n \"type\": \"boolean\"\n + \ },\n \"channelId\": {\n \"default\": \"UCBR8-60-B28hp2BmDPdntcQ\",\n + \ \"type\": \"string\",\n \"description\": \"The YouTube + channel that created the video category.\"\n },\n \"title\": + {\n \"description\": \"The video category's title.\",\n \"type\": + \"string\"\n }\n }\n },\n \"MembershipsDetails\": {\n \"properties\": + {\n \"membershipsDuration\": {\n \"description\": \"Data about + memberships duration without taking into consideration pricing levels.\",\n + \ \"$ref\": \"MembershipsDuration\"\n },\n \"highestAccessibleLevelDisplayName\": + {\n \"type\": \"string\",\n \"description\": \"Display name + for the highest level that the user has access to at the moment.\"\n },\n + \ \"accessibleLevels\": {\n \"type\": \"array\",\n \"description\": + \"Ids of all levels that the user has access to. This includes the currently + active level and all other levels that are included because of a higher purchase.\",\n + \ \"items\": {\n \"type\": \"string\"\n }\n },\n + \ \"highestAccessibleLevel\": {\n \"description\": \"Id of + the highest level that the user has access to at the moment.\",\n \"type\": + \"string\"\n },\n \"membershipsDurationAtLevels\": {\n \"items\": + {\n \"$ref\": \"MembershipsDurationAtLevel\"\n },\n \"description\": + \"Data about memberships duration on particular pricing levels.\",\n \"type\": + \"array\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"MembershipsDetails\"\n },\n \"ActivitySnippet\": {\n \"id\": + \"ActivitySnippet\",\n \"description\": \"Basic details about an activity, + including title, description, thumbnails, activity type and group. Next ID: + 12\",\n \"properties\": {\n \"thumbnails\": {\n \"$ref\": + \"ThumbnailDetails\",\n \"description\": \"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.\"\n + \ },\n \"publishedAt\": {\n \"type\": \"string\",\n + \ \"format\": \"date-time\",\n \"description\": \"The date + and time that the video was uploaded.\"\n },\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the channel associated with the activity.\",\n \"type\": \"string\"\n + \ },\n \"title\": {\n \"type\": \"string\",\n \"description\": + \"The title of the resource primarily associated with the activity.\"\n },\n + \ \"groupId\": {\n \"description\": \"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.\",\n \"type\": + \"string\"\n },\n \"channelTitle\": {\n \"type\": \"string\",\n + \ \"description\": \"Channel title for the channel responsible for + this activity\"\n },\n \"description\": {\n \"type\": + \"string\",\n \"description\": \"The description of the resource + primarily associated with the activity. @mutable youtube.activities.insert\"\n + \ },\n \"type\": {\n \"type\": \"string\",\n \"description\": + \"The type of activity that the resource describes.\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"enum\": [\n \"typeUnspecified\",\n \"upload\",\n + \ \"like\",\n \"favorite\",\n \"comment\",\n + \ \"subscription\",\n \"playlistItem\",\n \"recommendation\",\n + \ \"bulletin\",\n \"social\",\n \"channelItem\",\n + \ \"promotedItem\"\n ]\n }\n },\n \"type\": + \"object\"\n },\n \"ThirdPartyLinkSnippet\": {\n \"type\": \"object\",\n + \ \"description\": \"Basic information about a third party account link, + including its type and type-specific information.\",\n \"id\": \"ThirdPartyLinkSnippet\",\n + \ \"properties\": {\n \"type\": {\n \"enumDescriptions\": + [\n \"\",\n \"A link that is connecting (or about to + connect) a channel with a store on a merchandising platform in order to enable + retail commerce capabilities for that channel on YouTube.\"\n ],\n + \ \"type\": \"string\",\n \"enum\": [\n \"linkUnspecified\",\n + \ \"channelToStoreLink\"\n ],\n \"description\": + \"Type of the link named after the entities that are being linked.\"\n },\n + \ \"channelToStoreLink\": {\n \"$ref\": \"ChannelToStoreLinkDetails\",\n + \ \"description\": \"Information specific to a link between a channel + and a store on a merchandising platform.\"\n }\n }\n },\n \"MonitorStreamInfo\": + {\n \"type\": \"object\",\n \"id\": \"MonitorStreamInfo\",\n \"properties\": + {\n \"enableMonitorStream\": {\n \"type\": \"boolean\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"This value determines + whether the monitor stream is enabled for the broadcast. If the monitor stream + is enabled, then YouTube will broadcast the event content on a special stream + intended only for the broadcaster's consumption. The broadcaster can use the + stream to review the event content and also to identify the optimal times + to insert cuepoints. You need to set this value to true if you intend to have + a broadcast delay for your event. *Note:* This property cannot be updated + once the broadcast is in the testing or live state.\"\n },\n \"embedHtml\": + {\n \"description\": \"HTML code that embeds a player that plays + the monitor stream.\",\n \"type\": \"string\"\n },\n \"broadcastStreamDelayMs\": + {\n \"annotations\": {\n \"required\": [\n \"youtube.liveBroadcasts.update\"\n + \ ]\n },\n \"description\": \"If you have set + the enableMonitorStream property to true, then this property determines the + length of the live broadcast delay.\",\n \"format\": \"uint32\",\n + \ \"type\": \"integer\"\n }\n },\n \"description\": + \"Settings and Info of the monitor stream\"\n },\n \"LiveChatMessage\": + {\n \"id\": \"LiveChatMessage\",\n \"type\": \"object\",\n \"description\": + \"A *liveChatMessage* resource represents a chat message in a YouTube Live + Chat.\",\n \"properties\": {\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely + identify the message.\"\n },\n \"etag\": {\n \"type\": + \"string\",\n \"description\": \"Etag of this resource.\"\n },\n + \ \"authorDetails\": {\n \"description\": \"The authorDetails + object contains basic details about the user that posted this message.\",\n + \ \"$ref\": \"LiveChatMessageAuthorDetails\"\n },\n \"snippet\": + {\n \"$ref\": \"LiveChatMessageSnippet\",\n \"description\": + \"The snippet object contains basic details about the message.\"\n },\n + \ \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#liveChatMessage\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#liveChatMessage\\\".\"\n + \ }\n }\n },\n \"MembershipsDurationAtLevel\": {\n \"properties\": + {\n \"memberTotalDurationMonths\": {\n \"format\": \"int32\",\n + \ \"type\": \"integer\",\n \"description\": \"The cumulative + time the user has been a member for the given level in complete months (the + time is rounded down to the nearest integer).\"\n },\n \"memberSince\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the user became a continuous member for the given level.\"\n + \ },\n \"level\": {\n \"description\": \"Pricing level + ID.\",\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"MembershipsDurationAtLevel\"\n },\n \"LiveChatUserBannedMessageDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatUserBannedMessageDetails\",\n + \ \"properties\": {\n \"banDurationSeconds\": {\n \"description\": + \"The duration of the ban. This property is only present if the banType is + temporary.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n + \ },\n \"bannedUserDetails\": {\n \"$ref\": \"ChannelProfileDetails\",\n + \ \"description\": \"The details of the user that was banned.\"\n + \ },\n \"banType\": {\n \"enum\": [\n \"permanent\",\n + \ \"temporary\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The type of ban.\",\n \"enumDescriptions\": + [\n \"\",\n \"\"\n ]\n }\n }\n + \ },\n \"Entity\": {\n \"id\": \"Entity\",\n \"properties\": + {\n \"id\": {\n \"type\": \"string\"\n },\n \"typeId\": + {\n \"type\": \"string\"\n },\n \"url\": {\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"LiveBroadcastStatus\": + {\n \"properties\": {\n \"selfDeclaredMadeForKids\": {\n \"type\": + \"boolean\",\n \"description\": \"This field will be set to True + if the creator declares the broadcast to be kids only: go/live-cw-work.\"\n + \ },\n \"lifeCycleStatus\": {\n \"enumDescriptions\": + [\n \"No value or the value is unknown.\",\n \"Incomplete + settings, but otherwise valid\",\n \"Complete settings\",\n \"Visible + only to partner, may need special UI treatment\",\n \"Viper is + recording; this means the \\\"clock\\\" is running\",\n \"The broadcast + is finished.\",\n \"This broadcast was removed by admin action\",\n + \ \"Transition into TESTING has been requested\",\n \"Transition + into LIVE has been requested\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"lifeCycleStatusUnspecified\",\n \"created\",\n + \ \"ready\",\n \"testing\",\n \"live\",\n + \ \"complete\",\n \"revoked\",\n \"testStarting\",\n + \ \"liveStarting\"\n ],\n \"description\": \"The + broadcast's status. The status can be updated using the API's liveBroadcasts.transition + method.\"\n },\n \"privacyStatus\": {\n \"enum\": [\n + \ \"public\",\n \"unlisted\",\n \"private\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"description\": \"The broadcast's privacy status. Note that the + broadcast represents exactly one YouTube video, so the privacy settings are + identical to those supported for videos. In addition, you can set this field + by modifying the broadcast resource or by setting the privacyStatus field + of the corresponding video resource.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveBroadcasts.insert\",\n \"youtube.liveBroadcasts.update\"\n + \ ]\n }\n },\n \"liveBroadcastPriority\": + {\n \"type\": \"string\",\n \"description\": \"Priority + of the live broadcast event (internal state).\",\n \"enumDescriptions\": + [\n \"\",\n \"Low priority broadcast: for low view count + HoAs or other low priority broadcasts.\",\n \"Normal priority broadcast: + for regular HoAs and broadcasts.\",\n \"High priority broadcast: + for high profile HoAs, like PixelCorp ones.\"\n ],\n \"enum\": + [\n \"liveBroadcastPriorityUnspecified\",\n \"low\",\n + \ \"normal\",\n \"high\"\n ]\n },\n \"recordingStatus\": + {\n \"description\": \"The broadcast's recording status.\",\n \"type\": + \"string\",\n \"enum\": [\n \"liveBroadcastRecordingStatusUnspecified\",\n + \ \"notRecording\",\n \"recording\",\n \"recorded\"\n + \ ],\n \"enumDescriptions\": [\n \"No value or + the value is unknown.\",\n \"The recording has not yet been started.\",\n + \ \"The recording is currently on.\",\n \"The recording + is completed, and cannot be started again.\"\n ]\n },\n \"madeForKids\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the broadcast is made for kids or not, decided by YouTube instead of the creator. + This field is read only.\"\n }\n },\n \"description\": \"Live + broadcast state.\",\n \"id\": \"LiveBroadcastStatus\",\n \"type\": + \"object\"\n },\n \"LiveChatNewSponsorDetails\": {\n \"properties\": + {\n \"isUpgrade\": {\n \"description\": \"If the viewer just + had upgraded from a lower level. For viewers that were not members at the + time of purchase, this field is false.\",\n \"type\": \"boolean\"\n + \ },\n \"memberLevelName\": {\n \"description\": \"The + name of the Level that the viewer just had joined. The Level names are defined + by the YouTube channel offering the Membership. In some situations this field + isn't filled.\",\n \"type\": \"string\"\n }\n },\n \"id\": + \"LiveChatNewSponsorDetails\",\n \"type\": \"object\"\n },\n \"InvideoPosition\": + {\n \"type\": \"object\",\n \"description\": \"Describes the spatial + position of a visual widget inside a video. It is a union of various position + types, out of which only will be set one.\",\n \"id\": \"InvideoPosition\",\n + \ \"properties\": {\n \"type\": {\n \"enum\": [\n \"corner\"\n + \ ],\n \"type\": \"string\",\n \"enumDescriptions\": + [\n \"\"\n ],\n \"description\": \"Defines the + position type.\"\n },\n \"cornerPosition\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"Describes in which corner of the video the visual widget will appear.\",\n + \ \"enum\": [\n \"topLeft\",\n \"topRight\",\n + \ \"bottomLeft\",\n \"bottomRight\"\n ]\n }\n + \ }\n },\n \"Subscription\": {\n \"type\": \"object\",\n \"description\": + \"A *subscription* resource contains information about a YouTube user subscription. + A subscription notifies a user when new videos are added to a channel or when + another user takes one of several actions on YouTube, such as uploading a + video, rating a video, or commenting on a video.\",\n \"id\": \"Subscription\",\n + \ \"properties\": {\n \"kind\": {\n \"description\": \"Identifies + what kind of resource this is. Value: the fixed string \\\"youtube#subscription\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#subscription\"\n + \ },\n \"subscriberSnippet\": {\n \"$ref\": \"SubscriptionSubscriberSnippet\",\n + \ \"description\": \"The subscriberSnippet object contains basic details + about the subscriber.\"\n },\n \"snippet\": {\n \"description\": + \"The snippet object contains basic details about the subscription, including + its title and the channel that the user subscribed to.\",\n \"$ref\": + \"SubscriptionSnippet\"\n },\n \"contentDetails\": {\n \"description\": + \"The contentDetails object contains basic statistics about the subscription.\",\n + \ \"$ref\": \"SubscriptionContentDetails\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID that + YouTube uses to uniquely identify the subscription.\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n }\n }\n },\n \"I18nLanguage\": {\n \"type\": + \"object\",\n \"id\": \"I18nLanguage\",\n \"properties\": {\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"kind\": {\n \"default\": \"youtube#i18nLanguage\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#i18nLanguage\\\".\",\n \"type\": \"string\"\n + \ },\n \"snippet\": {\n \"$ref\": \"I18nLanguageSnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the i18n language, such as language code and human-readable name.\"\n },\n + \ \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the i18n language.\"\n }\n + \ },\n \"description\": \"An *i18nLanguage* resource identifies a + UI language currently supported by YouTube.\"\n },\n \"CommentListResponse\": + {\n \"properties\": {\n \"items\": {\n \"description\": + \"A list of comments that match the request criteria.\",\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Comment\"\n }\n + \ },\n \"nextPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#commentListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#commentListResponse\\\".\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"pageInfo\": {\n \"description\": \"General + pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n }\n },\n + \ \"type\": \"object\",\n \"id\": \"CommentListResponse\"\n },\n + \ \"ChannelSettings\": {\n \"id\": \"ChannelSettings\",\n \"description\": + \"Branding properties for the channel view.\",\n \"type\": \"object\",\n + \ \"properties\": {\n \"moderateComments\": {\n \"description\": + \"Whether user-submitted comments left on the channel page need to be approved + by the channel owner to be publicly visible.\",\n \"type\": \"boolean\"\n + \ },\n \"keywords\": {\n \"type\": \"string\",\n \"description\": + \"Lists keywords associated with the channel, comma-separated.\"\n },\n + \ \"featuredChannelsUrls\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"description\": \"The list of featured + channels.\",\n \"type\": \"array\"\n },\n \"trackingAnalyticsAccountId\": + {\n \"type\": \"string\",\n \"description\": \"The ID for + a Google Analytics account to track and measure traffic to the channels.\"\n + \ },\n \"featuredChannelsTitle\": {\n \"description\": + \"Title for the featured channels tab.\",\n \"type\": \"string\"\n + \ },\n \"defaultLanguage\": {\n \"type\": \"string\"\n + \ },\n \"description\": {\n \"description\": \"Specifies + the channel description.\",\n \"type\": \"string\"\n },\n + \ \"title\": {\n \"description\": \"Specifies the channel title.\",\n + \ \"type\": \"string\"\n },\n \"unsubscribedTrailer\": + {\n \"description\": \"The trailer of the channel, for users that + are not subscribers.\",\n \"type\": \"string\"\n },\n \"showRelatedChannels\": + {\n \"description\": \"Whether related channels should be proposed.\",\n + \ \"type\": \"boolean\"\n },\n \"defaultTab\": {\n \"type\": + \"string\",\n \"description\": \"Which content tab users should see + when viewing the channel.\"\n },\n \"showBrowseView\": {\n \"type\": + \"boolean\",\n \"description\": \"Whether the tab to browse the videos + should be displayed.\"\n },\n \"country\": {\n \"description\": + \"The country of the channel.\",\n \"type\": \"string\"\n },\n + \ \"profileColor\": {\n \"description\": \"A prominent color + that can be rendered on this channel page.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"ActivityContentDetailsPlaylistItem\": {\n + \ \"type\": \"object\",\n \"properties\": {\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId + object contains information about the resource that was added to the playlist.\"\n + \ },\n \"playlistItemId\": {\n \"type\": \"string\",\n + \ \"description\": \"ID of the item within the playlist.\"\n },\n + \ \"playlistId\": {\n \"description\": \"The value that YouTube + uses to uniquely identify the playlist.\",\n \"type\": \"string\"\n + \ }\n },\n \"id\": \"ActivityContentDetailsPlaylistItem\",\n + \ \"description\": \"Information about a new playlist item.\"\n },\n + \ \"ActivityContentDetailsComment\": {\n \"description\": \"Information + about a resource that received a comment.\",\n \"properties\": {\n \"resourceId\": + {\n \"$ref\": \"ResourceId\",\n \"description\": \"The resourceId + object contains information that identifies the resource associated with the + comment.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"ActivityContentDetailsComment\"\n },\n \"VideoAbuseReportSecondaryReason\": + {\n \"type\": \"object\",\n \"properties\": {\n \"label\": + {\n \"description\": \"The localized label for this abuse report + secondary reason.\",\n \"type\": \"string\"\n },\n \"id\": + {\n \"type\": \"string\",\n \"description\": \"The ID of + this abuse report secondary reason.\"\n }\n },\n \"id\": + \"VideoAbuseReportSecondaryReason\"\n },\n \"AccessPolicy\": {\n \"description\": + \"Rights management policy for YouTube resources.\",\n \"properties\": + {\n \"allowed\": {\n \"type\": \"boolean\",\n \"description\": + \"The value of allowed indicates whether the access to the policy is allowed + or denied by default.\"\n },\n \"exception\": {\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\",\n + \ \"description\": \"A list of region codes that identify countries + where the default policy do not apply.\"\n }\n },\n \"id\": + \"AccessPolicy\",\n \"type\": \"object\"\n },\n \"ThirdPartyLinkListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"items\": {\n \"items\": {\n \"$ref\": + \"ThirdPartyLink\"\n },\n \"type\": \"array\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#thirdPartyLinkListResponse\\\".\",\n + \ \"default\": \"youtube#thirdPartyLinkListResponse\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"ThirdPartyLinkListResponse\"\n + \ },\n \"LiveChatMemberMilestoneChatDetails\": {\n \"id\": \"LiveChatMemberMilestoneChatDetails\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"memberLevelName\": + {\n \"description\": \"The name of the Level at which the viever + is a member. The Level names are defined by the YouTube channel offering the + Membership. In some situations this field isn't filled.\",\n \"type\": + \"string\"\n },\n \"userComment\": {\n \"type\": \"string\",\n + \ \"description\": \"The comment added by the member to this Member + Milestone Chat. This field is empty for messages without a comment from the + member.\"\n },\n \"memberMonth\": {\n \"format\": \"uint32\",\n + \ \"description\": \"The total amount of months (rounded up) the viewer + has been a member that granted them this Member Milestone Chat. This is the + same number of months as is being displayed to YouTube users.\",\n \"type\": + \"integer\"\n }\n }\n },\n \"LiveChatMessageAuthorDetails\": + {\n \"type\": \"object\",\n \"id\": \"LiveChatMessageAuthorDetails\",\n + \ \"properties\": {\n \"isChatOwner\": {\n \"description\": + \"Whether the author is the owner of the live chat.\",\n \"type\": + \"boolean\"\n },\n \"channelUrl\": {\n \"description\": + \"The channel's URL.\",\n \"type\": \"string\"\n },\n \"isVerified\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the author's identity has been verified by YouTube.\"\n },\n \"isChatModerator\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + the author is a moderator of the live chat.\"\n },\n \"profileImageUrl\": + {\n \"description\": \"The channels's avatar URL.\",\n \"type\": + \"string\"\n },\n \"isChatSponsor\": {\n \"description\": + \"Whether the author is a sponsor of the live chat.\",\n \"type\": + \"boolean\"\n },\n \"channelId\": {\n \"description\": + \"The YouTube channel ID.\",\n \"type\": \"string\"\n },\n + \ \"displayName\": {\n \"type\": \"string\",\n \"description\": + \"The channel's display name.\"\n }\n }\n },\n \"PlaylistItem\": + {\n \"description\": \"A *playlistItem* resource identifies another resource, + such as a video, that is included in a playlist. In addition, the playlistItem + resource contains details about the included resource that pertain specifically + to how that resource is used in that playlist. YouTube uses playlists to identify + special collections of videos for a channel, such as: - uploaded videos - + favorite videos - positively rated (liked) videos - watch history - watch + later To be more specific, these lists are associated with a channel, which + is a collection of a person, group, or company's videos, playlists, and other + YouTube information. You can retrieve the playlist IDs for each of these lists + from the channel resource for a given channel. You can then use the playlistItems.list + method to retrieve any of those lists. You can also add or remove items from + those lists by calling the playlistItems.insert and playlistItems.delete methods. + For example, if a user gives a positive rating to a video, you would insert + that video into the liked videos playlist for that user's channel.\",\n \"id\": + \"PlaylistItem\",\n \"properties\": {\n \"contentDetails\": {\n + \ \"description\": \"The contentDetails object is included in the + resource if the included item is a YouTube video. The object contains additional + information about the video.\",\n \"$ref\": \"PlaylistItemContentDetails\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the playlist item, such as its title and position in the playlist.\",\n + \ \"$ref\": \"PlaylistItemSnippet\"\n },\n \"kind\": + {\n \"default\": \"youtube#playlistItem\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlistItem\\\".\",\n + \ \"type\": \"string\"\n },\n \"status\": {\n \"description\": + \"The status object contains information about the playlist item's privacy + status.\",\n \"$ref\": \"PlaylistItemStatus\"\n },\n \"id\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the playlist item.\",\n \"type\": \"string\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"ActivityListResponse\": {\n \"id\": + \"ActivityListResponse\",\n \"properties\": {\n \"items\": {\n + \ \"type\": \"array\",\n \"items\": {\n \"$ref\": + \"Activity\"\n }\n },\n \"pageInfo\": {\n \"description\": + \"General pagination information.\",\n \"$ref\": \"PageInfo\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"prevPageToken\": {\n \"description\": \"The + token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"kind\": {\n \"default\": \"youtube#activityListResponse\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#activityListResponse\\\".\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"RelatedEntity\": + {\n \"id\": \"RelatedEntity\",\n \"type\": \"object\",\n \"properties\": + {\n \"entity\": {\n \"$ref\": \"Entity\"\n }\n }\n + \ },\n \"VideoStatistics\": {\n \"id\": \"VideoStatistics\",\n \"properties\": + {\n \"likeCount\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"The number of users who have indicated + that they liked the video by giving it a positive rating.\"\n },\n + \ \"dislikeCount\": {\n \"description\": \"The number of users + who have indicated that they disliked the video by giving it a negative rating.\",\n + \ \"type\": \"string\",\n \"format\": \"uint64\"\n },\n + \ \"viewCount\": {\n \"type\": \"string\",\n \"description\": + \"The number of times the video has been viewed.\",\n \"format\": + \"uint64\"\n },\n \"favoriteCount\": {\n \"type\": + \"string\",\n \"description\": \"The number of users who currently + have the video marked as a favorite video.\",\n \"format\": \"uint64\"\n + \ },\n \"commentCount\": {\n \"format\": \"uint64\",\n + \ \"type\": \"string\",\n \"description\": \"The number of + comments for the video.\"\n }\n },\n \"description\": \"Statistics + about the video, such as the number of times the video was viewed or liked.\",\n + \ \"type\": \"object\"\n },\n \"ActivityContentDetailsBulletin\": + {\n \"properties\": {\n \"resourceId\": {\n \"$ref\": + \"ResourceId\",\n \"description\": \"The resourceId object contains + information that identifies the resource associated with a bulletin post. + @mutable youtube.activities.insert\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"Details about a channel bulletin post.\",\n + \ \"id\": \"ActivityContentDetailsBulletin\"\n },\n \"LiveStreamContentDetails\": + {\n \"id\": \"LiveStreamContentDetails\",\n \"description\": \"Detailed + settings of a stream.\",\n \"properties\": {\n \"isReusable\": + {\n \"description\": \"Indicates whether the stream is reusable, + which means that it can be bound to multiple broadcasts. It is common for + broadcasters to reuse the same stream for many different broadcasts if those + broadcasts occur at different times. If you set this value to false, then + the stream will not be reusable, which means that it can only be bound to + one broadcast. Non-reusable streams differ from reusable streams in the following + ways: - A non-reusable stream can only be bound to one broadcast. - A non-reusable + stream might be deleted by an automated process after the broadcast ends. + - The liveStreams.list method does not list non-reusable streams if you call + the method and set the mine parameter to true. The only way to use that method + to retrieve the resource for a non-reusable stream is to use the id parameter + to identify the stream. \",\n \"type\": \"boolean\"\n },\n + \ \"closedCaptionsIngestionUrl\": {\n \"description\": \"The + ingestion URL where the closed captions of this stream are sent.\",\n \"type\": + \"string\"\n }\n },\n \"type\": \"object\"\n },\n \"CommentThread\": + {\n \"properties\": {\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#commentThread\\\".\",\n \"default\": + \"youtube#commentThread\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the comment thread.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"snippet\": {\n \"description\": \"The snippet object contains + basic details about the comment thread and also the top level comment.\",\n + \ \"$ref\": \"CommentThreadSnippet\"\n },\n \"replies\": + {\n \"description\": \"The replies object contains a limited number + of replies (if any) to the top level comment found in the snippet.\",\n \"$ref\": + \"CommentThreadReplies\"\n }\n },\n \"id\": \"CommentThread\",\n + \ \"type\": \"object\",\n \"description\": \"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.\"\n },\n + \ \"VideoProcessingDetails\": {\n \"type\": \"object\",\n \"id\": + \"VideoProcessingDetails\",\n \"description\": \"Describes processing + status and progress and availability of some other Video resource parts.\",\n + \ \"properties\": {\n \"processingProgress\": {\n \"$ref\": + \"VideoProcessingDetailsProcessingProgress\",\n \"description\": + \"The processingProgress object contains information about the progress YouTube + has made in processing the video. The values are really only relevant if the + video's processing status is processing.\"\n },\n \"processingStatus\": + {\n \"enum\": [\n \"processing\",\n \"succeeded\",\n + \ \"failed\",\n \"terminated\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The video's processing status. This value indicates whether YouTube was + able to process the video or if the video is still being processed.\"\n },\n + \ \"editorSuggestionsAvailability\": {\n \"description\": \"This + value indicates whether video editing suggestions, which might improve video + quality or the playback experience, are available for the video. You can retrieve + these suggestions by requesting the suggestions part in your videos.list() + request.\",\n \"type\": \"string\"\n },\n \"processingIssuesAvailability\": + {\n \"type\": \"string\",\n \"description\": \"This value + indicates whether the video processing engine has generated suggestions that + might improve YouTube's ability to process the the video, warnings that explain + video processing problems, or errors that cause video processing problems. + You can retrieve these suggestions by requesting the suggestions part in your + videos.list() request.\"\n },\n \"processingFailureReason\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"description\": \"The reason that YouTube failed to process the + video. This property will only have a value if the processingStatus property's + value is failed.\",\n \"enum\": [\n \"uploadFailed\",\n + \ \"transcodeFailed\",\n \"streamingFailed\",\n \"other\"\n + \ ]\n },\n \"fileDetailsAvailability\": {\n \"description\": + \"This value indicates whether file details are available for the uploaded + video. You can retrieve a video's file details by requesting the fileDetails + part in your videos.list() request.\",\n \"type\": \"string\"\n },\n + \ \"tagSuggestionsAvailability\": {\n \"type\": \"string\",\n + \ \"description\": \"This value indicates whether keyword (tag) suggestions + are available for the video. Tags can be added to a video's metadata to make + it easier for other users to find the video. You can retrieve these suggestions + by requesting the suggestions part in your videos.list() request.\"\n },\n + \ \"thumbnailsAvailability\": {\n \"type\": \"string\",\n \"description\": + \"This value indicates whether thumbnail images have been generated for the + video.\"\n }\n }\n },\n \"MembershipsLevelListResponse\": + {\n \"type\": \"object\",\n \"properties\": {\n \"items\": + {\n \"description\": \"A list of pricing levels offered by a creator + to the fans.\",\n \"type\": \"array\",\n \"items\": {\n + \ \"$ref\": \"MembershipsLevel\"\n }\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#membershipsLevelListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n },\n \"id\": \"MembershipsLevelListResponse\"\n + \ },\n \"ChannelConversionPing\": {\n \"type\": \"object\",\n \"id\": + \"ChannelConversionPing\",\n \"properties\": {\n \"context\": + {\n \"enum\": [\n \"subscribe\",\n \"unsubscribe\",\n + \ \"cview\"\n ],\n \"type\": \"string\",\n \"description\": + \"Defines the context of the ping.\",\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"conversionUrl\": {\n \"type\": \"string\",\n \"description\": + \"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.\"\n }\n },\n \"description\": \"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.\"\n },\n + \ \"LiveBroadcastContentDetails\": {\n \"description\": \"Detailed + settings of a broadcast.\",\n \"properties\": {\n \"latencyPreference\": + {\n \"type\": \"string\",\n \"enumDescriptions\": [\n \"\",\n + \ \"Best for: highest quality viewer playbacks and higher resolutions.\",\n + \ \"Best for: near real-time interaction, with minimal playback + buffering.\",\n \"Best for: real-time interaction Does not support: + Closed captions, 1440p, and 4k resolutions\"\n ],\n \"description\": + \"If both this and enable_low_latency are set, they must match. LATENCY_NORMAL + should match enable_low_latency=false LATENCY_LOW should match enable_low_latency=true + LATENCY_ULTRA_LOW should have enable_low_latency omitted.\",\n \"enum\": + [\n \"latencyPreferenceUnspecified\",\n \"normal\",\n + \ \"low\",\n \"ultraLow\"\n ]\n },\n + \ \"monitorStream\": {\n \"description\": \"The monitorStream + object contains information about the monitor stream, which the broadcaster + can use to review the event content before the broadcast stream is shown publicly.\",\n + \ \"$ref\": \"MonitorStreamInfo\"\n },\n \"enableDvr\": + {\n \"type\": \"boolean\",\n \"description\": \"This setting + determines whether viewers can access DVR controls while watching the video. + DVR controls enable the viewer to control the video playback experience by + pausing, rewinding, or fast forwarding content. The default value for this + property is true. *Important:* You must set the value to true and also set + the enableArchive property's value to true if you want to make playback available + immediately after the broadcast ends.\"\n },\n \"enableContentEncryption\": + {\n \"description\": \"This setting indicates whether YouTube should + enable content encryption for the broadcast.\",\n \"type\": \"boolean\"\n + \ },\n \"enableLowLatency\": {\n \"type\": \"boolean\",\n + \ \"description\": \"Indicates whether this broadcast has low latency + enabled.\"\n },\n \"mesh\": {\n \"description\": \"The + mesh for projecting the video if projection is mesh. The mesh value must be + a UTF-8 string containing the base-64 encoding of 3D mesh data that follows + the Spherical Video V2 RFC specification for an mshp box, excluding the box + size and type but including the following four reserved zero bytes for the + version and flags.\",\n \"type\": \"string\",\n \"format\": + \"byte\"\n },\n \"enableClosedCaptions\": {\n \"type\": + \"boolean\",\n \"description\": \"This setting indicates whether + HTTP POST closed captioning is enabled for this broadcast. The ingestion URL + of the closed captions is returned through the liveStreams API. This is mutually + exclusive with using the closed_captions_type property, and is equivalent + to setting closed_captions_type to CLOSED_CAPTIONS_HTTP_POST.\"\n },\n + \ \"enableAutoStart\": {\n \"description\": \"This setting + indicates whether auto start is enabled for this broadcast. The default value + for this property is false. This setting can only be used by Events.\",\n + \ \"type\": \"boolean\"\n },\n \"enableEmbed\": {\n + \ \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether the broadcast video can be played in an embedded player. + If you choose to archive the video (using the enableArchive property), this + setting will also apply to the archived video.\"\n },\n \"stereoLayout\": + {\n \"enum\": [\n \"stereoLayoutUnspecified\",\n \"mono\",\n + \ \"leftRight\",\n \"topBottom\"\n ],\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"description\": \"The 3D stereo layout of this broadcast. + This defaults to mono.\",\n \"type\": \"string\"\n },\n \"boundStreamLastUpdateTimeMs\": + {\n \"description\": \"The date and time that the live stream referenced + by boundStreamId was last updated.\",\n \"type\": \"string\",\n \"format\": + \"date-time\"\n },\n \"boundStreamId\": {\n \"description\": + \"This value uniquely identifies the live stream bound to the broadcast.\",\n + \ \"type\": \"string\"\n },\n \"enableAutoStop\": {\n + \ \"type\": \"boolean\",\n \"description\": \"This setting + indicates whether auto stop is enabled for this broadcast. The default value + for this property is false. This setting can only be used by Events.\"\n },\n + \ \"recordFromStart\": {\n \"description\": \"Automatically + start recording after the event goes live. The default value for this property + is true. *Important:* You must also set the enableDvr property's value to + true if you want the playback to be available immediately after the broadcast + ends. If you set this property's value to true but do not also set the enableDvr + property to true, there may be a delay of around one day before the archived + video will be available for playback.\",\n \"type\": \"boolean\"\n + \ },\n \"closedCaptionsType\": {\n \"enum\": [\n \"closedCaptionsTypeUnspecified\",\n + \ \"closedCaptionsDisabled\",\n \"closedCaptionsHttpPost\",\n + \ \"closedCaptionsEmbedded\"\n ],\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"projection\": + {\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"description\": + \"The projection format of this broadcast. This defaults to rectangular.\",\n + \ \"enum\": [\n \"projectionUnspecified\",\n \"rectangular\",\n + \ \"360\",\n \"mesh\"\n ],\n \"type\": + \"string\"\n },\n \"startWithSlate\": {\n \"description\": + \"This setting indicates whether the broadcast should automatically begin + with an in-stream slate when you update the broadcast's status to live. After + updating the status, you then need to send a liveCuepoints.insert request + that sets the cuepoint's eventState to end to remove the in-stream slate and + make your broadcast stream visible to viewers.\",\n \"type\": \"boolean\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"LiveBroadcastContentDetails\"\n + \ },\n \"VideoFileDetailsVideoStream\": {\n \"id\": \"VideoFileDetailsVideoStream\",\n + \ \"properties\": {\n \"vendor\": {\n \"type\": \"string\",\n + \ \"description\": \"A value that uniquely identifies a video vendor. + Typically, the value is a four-letter vendor code.\"\n },\n \"codec\": + {\n \"description\": \"The video codec that the stream uses.\",\n + \ \"type\": \"string\"\n },\n \"heightPixels\": {\n + \ \"description\": \"The encoded video content's height in pixels.\",\n + \ \"format\": \"uint32\",\n \"type\": \"integer\"\n },\n + \ \"aspectRatio\": {\n \"description\": \"The video content's + display aspect ratio, which specifies the aspect ratio in which the video + should be displayed.\",\n \"type\": \"number\",\n \"format\": + \"double\"\n },\n \"widthPixels\": {\n \"description\": + \"The encoded video content's width in pixels. You can calculate the video's + encoding aspect ratio as width_pixels / height_pixels.\",\n \"format\": + \"uint32\",\n \"type\": \"integer\"\n },\n \"bitrateBps\": + {\n \"description\": \"The video stream's bitrate, in bits per second.\",\n + \ \"format\": \"uint64\",\n \"type\": \"string\"\n },\n + \ \"rotation\": {\n \"enum\": [\n \"none\",\n \"clockwise\",\n + \ \"upsideDown\",\n \"counterClockwise\",\n \"other\"\n + \ ],\n \"description\": \"The amount that YouTube needs to + rotate the original source content to properly display the video.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\"\n ]\n },\n + \ \"frameRateFps\": {\n \"format\": \"double\",\n \"type\": + \"number\",\n \"description\": \"The video stream's frame rate, in + frames per second.\"\n }\n },\n \"description\": \"Information + about a video stream.\",\n \"type\": \"object\"\n },\n \"LiveStreamSnippet\": + {\n \"type\": \"object\",\n \"id\": \"LiveStreamSnippet\",\n \"properties\": + {\n \"description\": {\n \"description\": \"The stream's description. + The value cannot be longer than 10000 characters.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"description\": \"The + stream's title. The value must be between 1 and 128 characters long.\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"type\": \"string\"\n },\n \"isDefaultStream\": {\n + \ \"type\": \"boolean\"\n },\n \"publishedAt\": {\n + \ \"type\": \"string\",\n \"format\": \"date-time\",\n \"description\": + \"The date and time that the stream was created.\"\n },\n \"channelId\": + {\n \"description\": \"The ID that YouTube uses to uniquely identify + the channel that is transmitting the stream.\",\n \"type\": \"string\"\n + \ }\n }\n },\n \"MemberListResponse\": {\n \"properties\": + {\n \"items\": {\n \"type\": \"array\",\n \"description\": + \"A list of members that match the request criteria.\",\n \"items\": + {\n \"$ref\": \"Member\"\n }\n },\n \"nextPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the next + page in the result set.\"\n },\n \"etag\": {\n \"description\": + \"Etag of this resource.\",\n \"type\": \"string\"\n },\n + \ \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"kind\": {\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#memberListResponse\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#memberListResponse\"\n },\n + \ \"pageInfo\": {\n \"$ref\": \"PageInfo\"\n },\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n }\n },\n \"id\": + \"MemberListResponse\",\n \"type\": \"object\"\n },\n \"ChannelToStoreLinkDetails\": + {\n \"type\": \"object\",\n \"description\": \"Information specific + to a store on a merchandising platform linked to a YouTube channel.\",\n \"properties\": + {\n \"merchantId\": {\n \"format\": \"uint64\",\n \"type\": + \"string\",\n \"description\": \"Google Merchant Center id of the + store.\"\n },\n \"storeName\": {\n \"type\": \"string\",\n + \ \"description\": \"Name of the store.\"\n },\n \"storeUrl\": + {\n \"description\": \"Landing page of the store.\",\n \"type\": + \"string\"\n }\n },\n \"id\": \"ChannelToStoreLinkDetails\"\n + \ },\n \"MembershipsLevel\": {\n \"description\": \"A *membershipsLevel* + resource represents an offer made by YouTube creators for their fans. Users + can become members of the channel by joining one of the available levels. + They will provide recurring monetary support and receives special benefits.\",\n + \ \"type\": \"object\",\n \"id\": \"MembershipsLevel\",\n \"properties\": + {\n \"kind\": {\n \"default\": \"youtube#membershipsLevel\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#membershipsLevelListResponse\\\".\"\n + \ },\n \"id\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube assigns to uniquely identify the memberships level.\"\n + \ },\n \"snippet\": {\n \"description\": \"The snippet + object contains basic details about the level.\",\n \"$ref\": \"MembershipsLevelSnippet\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n }\n },\n \"I18nRegionListResponse\": + {\n \"properties\": {\n \"visitorId\": {\n \"description\": + \"The visitorId identifies the visitor.\",\n \"type\": \"string\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"I18nRegion\"\n },\n \"type\": + \"array\",\n \"description\": \"A list of regions where YouTube is + available. In this map, the i18n region ID is the map key, and its value is + the corresponding i18nRegion resource.\"\n },\n \"eventId\": + {\n \"type\": \"string\",\n \"description\": \"Serialized + EventId of the request which produced this response.\"\n },\n \"kind\": + {\n \"default\": \"youtube#i18nRegionListResponse\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#i18nRegionListResponse\\\".\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"I18nRegionListResponse\"\n + \ },\n \"SubscriptionListResponse\": {\n \"type\": \"object\",\n + \ \"id\": \"SubscriptionListResponse\",\n \"properties\": {\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\"\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"kind\": + {\n \"type\": \"string\",\n \"default\": \"youtube#subscriptionListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#subscriptionListResponse\\\".\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"Subscription\"\n },\n \"description\": + \"A list of subscriptions that match the request criteria.\",\n \"type\": + \"array\"\n },\n \"nextPageToken\": {\n \"type\": \"string\",\n + \ \"description\": \"The token that can be used as the value of the + pageToken parameter to retrieve the next page in the result set.\"\n },\n + \ \"eventId\": {\n \"description\": \"Serialized EventId of + the request which produced this response.\",\n \"type\": \"string\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"prevPageToken\": + {\n \"type\": \"string\",\n \"description\": \"The token + that can be used as the value of the pageToken parameter to retrieve the previous + page in the result set.\"\n }\n }\n },\n \"PlaylistStatus\": + {\n \"properties\": {\n \"privacyStatus\": {\n \"type\": + \"string\",\n \"description\": \"The playlist's privacy status.\",\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"public\",\n + \ \"unlisted\",\n \"private\"\n ]\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"PlaylistStatus\"\n + \ },\n \"Playlist\": {\n \"type\": \"object\",\n \"description\": + \"A *playlist* resource represents a YouTube playlist. A playlist is a collection + of videos that can be viewed sequentially and shared with other users. A playlist + can contain up to 200 videos, and YouTube does not limit the number of playlists + that each user creates. By default, playlists are publicly visible to other + users, but playlists can be public or private. YouTube also uses playlists + to identify special collections of videos for a channel, such as: - uploaded + videos - favorite videos - positively rated (liked) videos - watch history + - watch later To be more specific, these lists are associated with a channel, + which is a collection of a person, group, or company's videos, playlists, + and other YouTube information. You can retrieve the playlist IDs for each + of these lists from the channel resource for a given channel. You can then + use the playlistItems.list method to retrieve any of those lists. You can + also add or remove items from those lists by calling the playlistItems.insert + and playlistItems.delete methods.\",\n \"properties\": {\n \"localizations\": + {\n \"description\": \"Localizations for different languages\",\n + \ \"type\": \"object\",\n \"additionalProperties\": {\n \"$ref\": + \"PlaylistLocalization\"\n }\n },\n \"snippet\": {\n + \ \"description\": \"The snippet object contains basic details about + the playlist, such as its title and description.\",\n \"$ref\": \"PlaylistSnippet\"\n + \ },\n \"status\": {\n \"description\": \"The status + object contains status information for the playlist.\",\n \"$ref\": + \"PlaylistStatus\"\n },\n \"contentDetails\": {\n \"description\": + \"The contentDetails object contains information like video count.\",\n \"$ref\": + \"PlaylistContentDetails\"\n },\n \"player\": {\n \"$ref\": + \"PlaylistPlayer\",\n \"description\": \"The player object contains + information that you would use to play the playlist in an embedded player.\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#playlist\\\".\",\n + \ \"default\": \"youtube#playlist\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube uses to uniquely identify + the playlist.\"\n }\n },\n \"id\": \"Playlist\"\n },\n + \ \"ChannelLocalization\": {\n \"properties\": {\n \"description\": + {\n \"type\": \"string\",\n \"description\": \"The localized + strings for channel's description.\"\n },\n \"title\": {\n \"description\": + \"The localized strings for channel's title.\",\n \"type\": \"string\"\n + \ }\n },\n \"type\": \"object\",\n \"id\": \"ChannelLocalization\",\n + \ \"description\": \"Channel localization setting\"\n },\n \"VideoMonetizationDetails\": + {\n \"properties\": {\n \"access\": {\n \"$ref\": \"AccessPolicy\",\n + \ \"description\": \"The value of access indicates whether the video + can be monetized or not.\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"VideoMonetizationDetails\",\n \"description\": \"Details + about monetization of a YouTube Video.\"\n },\n \"LevelDetails\": {\n + \ \"type\": \"object\",\n \"id\": \"LevelDetails\",\n \"properties\": + {\n \"displayName\": {\n \"type\": \"string\",\n \"description\": + \"The name that should be used when referring to this level.\"\n }\n + \ }\n },\n \"ChannelStatistics\": {\n \"type\": \"object\",\n + \ \"id\": \"ChannelStatistics\",\n \"properties\": {\n \"videoCount\": + {\n \"type\": \"string\",\n \"format\": \"uint64\",\n \"description\": + \"The number of videos uploaded to the channel.\"\n },\n \"subscriberCount\": + {\n \"description\": \"The number of subscribers that the channel + has.\",\n \"type\": \"string\",\n \"format\": \"uint64\"\n + \ },\n \"commentCount\": {\n \"format\": \"uint64\",\n + \ \"description\": \"The number of comments for the channel.\",\n + \ \"type\": \"string\"\n },\n \"viewCount\": {\n \"format\": + \"uint64\",\n \"description\": \"The number of times the channel + has been viewed.\",\n \"type\": \"string\"\n },\n \"hiddenSubscriberCount\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the number of subscribers is shown for this user.\"\n }\n },\n + \ \"description\": \"Statistics about a channel: number of subscribers, + number of videos in the channel, etc.\"\n },\n \"ChannelListResponse\": + {\n \"id\": \"ChannelListResponse\",\n \"type\": \"object\",\n \"properties\": + {\n \"nextPageToken\": {\n \"type\": \"string\",\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the next page in the result set.\"\n },\n \"items\": {\n \"type\": + \"array\",\n \"items\": {\n \"$ref\": \"Channel\"\n }\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelListResponse\\\".\",\n + \ \"default\": \"youtube#channelListResponse\"\n },\n \"prevPageToken\": + {\n \"description\": \"The token that can be used as the value of + the pageToken parameter to retrieve the previous page in the result set.\",\n + \ \"type\": \"string\"\n },\n \"eventId\": {\n \"type\": + \"string\",\n \"description\": \"Serialized EventId of the request + which produced this response.\"\n },\n \"pageInfo\": {\n \"$ref\": + \"PageInfo\",\n \"description\": \"General pagination information.\"\n + \ },\n \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"visitorId\": {\n \"type\": + \"string\",\n \"description\": \"The visitorId identifies the visitor.\"\n + \ }\n }\n },\n \"LiveStreamConfigurationIssue\": {\n \"properties\": + {\n \"type\": {\n \"enum\": [\n \"gopSizeOver\",\n + \ \"gopSizeLong\",\n \"gopSizeShort\",\n \"openGop\",\n + \ \"badContainer\",\n \"audioBitrateHigh\",\n \"audioBitrateLow\",\n + \ \"audioSampleRate\",\n \"bitrateHigh\",\n \"bitrateLow\",\n + \ \"audioCodec\",\n \"videoCodec\",\n \"noAudioStream\",\n + \ \"noVideoStream\",\n \"multipleVideoStreams\",\n \"multipleAudioStreams\",\n + \ \"audioTooManyChannels\",\n \"interlacedVideo\",\n + \ \"frameRateHigh\",\n \"resolutionMismatch\",\n \"videoCodecMismatch\",\n + \ \"videoInterlaceMismatch\",\n \"videoProfileMismatch\",\n + \ \"videoBitrateMismatch\",\n \"framerateMismatch\",\n + \ \"gopMismatch\",\n \"audioSampleRateMismatch\",\n \"audioStereoMismatch\",\n + \ \"audioCodecMismatch\",\n \"audioBitrateMismatch\",\n + \ \"videoResolutionSuboptimal\",\n \"videoResolutionUnsupported\",\n + \ \"videoIngestionStarved\",\n \"videoIngestionFasterThanRealtime\"\n + \ ],\n \"type\": \"string\",\n \"description\": + \"The kind of error happening.\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\"\n ]\n },\n \"description\": {\n \"description\": + \"The long-form description of the issue and how to resolve it.\",\n \"type\": + \"string\"\n },\n \"reason\": {\n \"type\": \"string\",\n + \ \"description\": \"The short-form reason for this issue.\"\n },\n + \ \"severity\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"info\",\n \"warning\",\n \"error\"\n + \ ],\n \"description\": \"How severe this issue is to the + stream.\"\n }\n },\n \"type\": \"object\",\n \"id\": + \"LiveStreamConfigurationIssue\"\n },\n \"Activity\": {\n \"properties\": + {\n \"contentDetails\": {\n \"$ref\": \"ActivityContentDetails\",\n + \ \"description\": \"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.\"\n },\n \"kind\": {\n \"type\": \"string\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#activity\\\".\",\n \"default\": \"youtube#activity\"\n + \ },\n \"snippet\": {\n \"$ref\": \"ActivitySnippet\",\n + \ \"description\": \"The snippet object contains basic details about + the activity, including the activity's type and group ID.\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource\",\n + \ \"type\": \"string\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the activity.\"\n }\n },\n \"id\": \"Activity\",\n + \ \"type\": \"object\",\n \"description\": \"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.\"\n },\n \"ThirdPartyLink\": + {\n \"type\": \"object\",\n \"description\": \"A *third party account + link* resource represents a link between a YouTube account or a channel and + an account on a third-party service.\",\n \"properties\": {\n \"snippet\": + {\n \"description\": \"The snippet object contains basic details + about the third- party account link.\",\n \"$ref\": \"ThirdPartyLinkSnippet\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource\"\n },\n \"linkingToken\": {\n \"type\": + \"string\",\n \"description\": \"The linking_token identifies a YouTube + account and channel with which the third party account is linked.\"\n },\n + \ \"status\": {\n \"description\": \"The status object contains + information about the status of the link.\",\n \"$ref\": \"ThirdPartyLinkStatus\"\n + \ },\n \"kind\": {\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#thirdPartyLink\\\".\",\n + \ \"default\": \"youtube#thirdPartyLink\"\n }\n },\n \"id\": + \"ThirdPartyLink\"\n },\n \"LiveChatMessageRetractedDetails\": {\n \"id\": + \"LiveChatMessageRetractedDetails\",\n \"type\": \"object\",\n \"properties\": + {\n \"retractedMessageId\": {\n \"type\": \"string\"\n }\n + \ }\n },\n \"VideoRecordingDetails\": {\n \"id\": \"VideoRecordingDetails\",\n + \ \"properties\": {\n \"location\": {\n \"description\": + \"The geolocation information associated with the video.\",\n \"$ref\": + \"GeoPoint\"\n },\n \"locationDescription\": {\n \"type\": + \"string\",\n \"description\": \"The text description of the location + where the video was recorded.\"\n },\n \"recordingDate\": {\n + \ \"description\": \"The date and time when the video was recorded.\",\n + \ \"format\": \"date-time\",\n \"type\": \"string\"\n }\n + \ },\n \"description\": \"Recording information associated with the + video.\",\n \"type\": \"object\"\n },\n \"CaptionListResponse\": + {\n \"id\": \"CaptionListResponse\",\n \"properties\": {\n \"eventId\": + {\n \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"description\": \"The visitorId identifies the visitor.\",\n + \ \"type\": \"string\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#captionListResponse\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#captionListResponse\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"Caption\"\n },\n \"description\": \"A list of captions + that match the request criteria.\",\n \"type\": \"array\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"ChannelSnippet\": {\n \"type\": \"object\",\n \"properties\": + {\n \"description\": {\n \"description\": \"The description + of the channel.\",\n \"type\": \"string\"\n },\n \"title\": + {\n \"description\": \"The channel's title.\",\n \"type\": + \"string\"\n },\n \"thumbnails\": {\n \"$ref\": \"ThumbnailDetails\",\n + \ \"description\": \"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. When displaying thumbnails in your application, make sure that + your code uses the image URLs exactly as they are returned in API responses. + For example, your application should not use the http domain instead of the + https domain in a URL returned in an API response. Beginning in July 2018, + channel thumbnail URLs will only be available in the https domain, which is + how the URLs appear in API responses. After that time, you might see broken + images in your application if it tries to load YouTube images from the http + domain. Thumbnail images might be empty for newly created channels and might + take up to one day to populate.\"\n },\n \"country\": {\n \"description\": + \"The country of the channel.\",\n \"type\": \"string\"\n },\n + \ \"localized\": {\n \"description\": \"Localized title and + description, read-only.\",\n \"$ref\": \"ChannelLocalization\"\n + \ },\n \"customUrl\": {\n \"description\": \"The custom + url of the channel.\",\n \"type\": \"string\"\n },\n \"defaultLanguage\": + {\n \"description\": \"The language of the channel's default title + and description.\",\n \"type\": \"string\"\n },\n \"publishedAt\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time that the channel was created.\",\n \"format\": \"date-time\"\n + \ }\n },\n \"description\": \"Basic details about a channel, + including title, description and thumbnails.\",\n \"id\": \"ChannelSnippet\"\n + \ },\n \"VideoContentDetailsRegionRestriction\": {\n \"id\": \"VideoContentDetailsRegionRestriction\",\n + \ \"description\": \"DEPRECATED Region restriction of the video.\",\n + \ \"properties\": {\n \"blocked\": {\n \"type\": \"array\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"description\": + \"A list of region codes that identify countries where the video is blocked. + If this property is present and a country is not listed in its value, then + the video is viewable in that country. If this property is present and contains + an empty list, the video is viewable in all countries.\"\n },\n \"allowed\": + {\n \"items\": {\n \"type\": \"string\"\n },\n + \ \"type\": \"array\",\n \"description\": \"A list of region + codes that identify countries where the video is viewable. If this property + is present and a country is not listed in its value, then the video is blocked + from appearing in that country. If this property is present and contains an + empty list, the video is blocked in all countries.\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"ChannelBrandingSettings\": {\n \"description\": + \"Branding properties of a YouTube channel.\",\n \"id\": \"ChannelBrandingSettings\",\n + \ \"type\": \"object\",\n \"properties\": {\n \"channel\": + {\n \"description\": \"Branding properties for the channel view.\",\n + \ \"$ref\": \"ChannelSettings\"\n },\n \"hints\": {\n + \ \"items\": {\n \"$ref\": \"PropertyValue\"\n },\n + \ \"description\": \"Additional experimental branding properties.\",\n + \ \"type\": \"array\"\n },\n \"watch\": {\n \"$ref\": + \"WatchSettings\",\n \"description\": \"Branding properties for the + watch page.\"\n },\n \"image\": {\n \"description\": + \"Branding properties for branding images.\",\n \"$ref\": \"ImageSettings\"\n + \ }\n }\n },\n \"PlaylistSnippet\": {\n \"id\": \"PlaylistSnippet\",\n + \ \"description\": \"Basic details about a playlist, including title, + description and thumbnails.\",\n \"properties\": {\n \"defaultLanguage\": + {\n \"type\": \"string\",\n \"description\": \"The language + of the playlist's default title and description.\"\n },\n \"thumbnailVideoId\": + {\n \"description\": \"Note: if the playlist has a custom thumbnail, + this field will not be populated. The video id selected by the user that will + be used as the thumbnail of this playlist. This field defaults to the first + publicly viewable video in the playlist, if: 1. The user has never selected + a video to be the thumbnail of the playlist. 2. The user selects a video to + be the thumbnail, and then removes that video from the playlist. 3. The user + selects a non-owned video to be the thumbnail, but that video becomes private, + or gets deleted.\",\n \"type\": \"string\"\n },\n \"tags\": + {\n \"description\": \"Keyword tags associated with the playlist.\",\n + \ \"items\": {\n \"type\": \"string\"\n },\n \"type\": + \"array\"\n },\n \"description\": {\n \"type\": \"string\",\n + \ \"description\": \"The playlist's description.\"\n },\n \"publishedAt\": + {\n \"description\": \"The date and time that the playlist was created.\",\n + \ \"format\": \"date-time\",\n \"type\": \"string\"\n },\n + \ \"thumbnails\": {\n \"description\": \"A map of thumbnail + images associated with the playlist. 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.\",\n \"$ref\": \"ThumbnailDetails\"\n + \ },\n \"channelId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the channel that published + the playlist.\"\n },\n \"localized\": {\n \"description\": + \"Localized title and description, read-only.\",\n \"$ref\": \"PlaylistLocalization\"\n + \ },\n \"channelTitle\": {\n \"description\": \"The + channel title of the channel that the video belongs to.\",\n \"type\": + \"string\"\n },\n \"title\": {\n \"type\": \"string\",\n + \ \"annotations\": {\n \"required\": [\n \"youtube.playlists.insert\",\n + \ \"youtube.playlists.update\"\n ]\n },\n + \ \"description\": \"The playlist's title.\"\n }\n },\n + \ \"type\": \"object\"\n },\n \"LanguageTag\": {\n \"type\": + \"object\",\n \"id\": \"LanguageTag\",\n \"properties\": {\n \"value\": + {\n \"type\": \"string\"\n }\n }\n },\n \"LiveStream\": + {\n \"id\": \"LiveStream\",\n \"type\": \"object\",\n \"description\": + \"A live stream describes a live ingestion point.\",\n \"properties\": + {\n \"cdn\": {\n \"description\": \"The cdn object defines + the live stream's content delivery network (CDN) settings. These settings + provide details about the manner in which you stream your content to YouTube.\",\n + \ \"$ref\": \"CdnSettings\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely + identify the stream.\",\n \"annotations\": {\n \"required\": + [\n \"youtube.liveStreams.update\"\n ]\n }\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n },\n \"contentDetails\": + {\n \"$ref\": \"LiveStreamContentDetails\",\n \"description\": + \"The content_details object contains information about the stream, including + the closed captions ingestion URL.\"\n },\n \"status\": {\n + \ \"$ref\": \"LiveStreamStatus\",\n \"description\": \"The + status object contains information about live stream's status.\"\n },\n + \ \"kind\": {\n \"default\": \"youtube#liveStream\",\n \"type\": + \"string\",\n \"description\": \"Identifies what kind of resource + this is. Value: the fixed string \\\"youtube#liveStream\\\".\"\n },\n + \ \"snippet\": {\n \"$ref\": \"LiveStreamSnippet\",\n \"description\": + \"The snippet object contains basic details about the stream, including its + channel, title, and description.\"\n }\n }\n },\n \"ChannelTopicDetails\": + {\n \"description\": \"Freebase topic information related to the channel.\",\n + \ \"properties\": {\n \"topicIds\": {\n \"description\": + \"A list of Freebase topic IDs associated with the channel. You can retrieve + information about each topic using the Freebase Topic API.\",\n \"items\": + {\n \"type\": \"string\"\n },\n \"type\": \"array\"\n + \ },\n \"topicCategories\": {\n \"items\": {\n \"type\": + \"string\"\n },\n \"type\": \"array\",\n \"description\": + \"A list of Wikipedia URLs that describe the channel's content.\"\n }\n + \ },\n \"id\": \"ChannelTopicDetails\",\n \"type\": \"object\"\n + \ },\n \"LiveChatBan\": {\n \"properties\": {\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n },\n \"snippet\": {\n \"$ref\": \"LiveChatBanSnippet\",\n + \ \"description\": \"The `snippet` object contains basic details about + the ban.\"\n },\n \"id\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID that YouTube assigns to uniquely identify + the ban.\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatBan\",\n + \ \"type\": \"string\",\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string `\\\"youtube#liveChatBan\\\"`.\"\n + \ }\n },\n \"type\": \"object\",\n \"description\": \"A + `__liveChatBan__` resource represents a ban for a YouTube live chat.\",\n + \ \"id\": \"LiveChatBan\"\n },\n \"ChannelConversionPings\": {\n + \ \"id\": \"ChannelConversionPings\",\n \"description\": \"The conversionPings + object encapsulates information about conversion pings that need to be respected + by the channel.\",\n \"properties\": {\n \"pings\": {\n \"type\": + \"array\",\n \"description\": \"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.\",\n \"items\": {\n \"$ref\": + \"ChannelConversionPing\"\n }\n }\n },\n \"type\": + \"object\"\n },\n \"MemberSnippet\": {\n \"type\": \"object\",\n + \ \"id\": \"MemberSnippet\",\n \"properties\": {\n \"creatorChannelId\": + {\n \"type\": \"string\",\n \"description\": \"The id of + the channel that's offering memberships.\"\n },\n \"memberDetails\": + {\n \"description\": \"Details about the member.\",\n \"$ref\": + \"ChannelProfileDetails\"\n },\n \"membershipsDetails\": {\n + \ \"description\": \"Details about the user's membership.\",\n \"$ref\": + \"MembershipsDetails\"\n }\n }\n },\n \"PropertyValue\": + {\n \"type\": \"object\",\n \"properties\": {\n \"value\": + {\n \"description\": \"The property's value.\",\n \"type\": + \"string\"\n },\n \"property\": {\n \"type\": \"string\",\n + \ \"description\": \"A property.\"\n }\n },\n \"description\": + \"A pair Property / Value.\",\n \"id\": \"PropertyValue\"\n },\n \"ActivityContentDetailsFavorite\": + {\n \"id\": \"ActivityContentDetailsFavorite\",\n \"type\": \"object\",\n + \ \"description\": \"Information about a video that was marked as a favorite + video.\",\n \"properties\": {\n \"resourceId\": {\n \"description\": + \"The resourceId object contains information that identifies the resource + that was marked as a favorite.\",\n \"$ref\": \"ResourceId\"\n }\n + \ }\n },\n \"LiveChatMessageListResponse\": {\n \"properties\": + {\n \"offlineAt\": {\n \"description\": \"The date and time + when the underlying stream went offline.\",\n \"type\": \"string\",\n + \ \"format\": \"date-time\"\n },\n \"eventId\": {\n + \ \"description\": \"Serialized EventId of the request which produced + this response.\",\n \"type\": \"string\"\n },\n \"visitorId\": + {\n \"type\": \"string\",\n \"description\": \"The visitorId + identifies the visitor.\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\"\n },\n \"kind\": {\n \"default\": \"youtube#liveChatMessageListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#liveChatMessageListResponse\\\".\",\n \"type\": + \"string\"\n },\n \"pageInfo\": {\n \"$ref\": \"PageInfo\",\n + \ \"description\": \"General pagination information.\"\n },\n + \ \"tokenPagination\": {\n \"$ref\": \"TokenPagination\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"items\": {\n \"items\": + {\n \"$ref\": \"LiveChatMessage\"\n },\n \"type\": + \"array\"\n },\n \"pollingIntervalMillis\": {\n \"type\": + \"integer\",\n \"description\": \"The amount of time the client should + wait before polling again.\",\n \"format\": \"uint32\"\n }\n + \ },\n \"type\": \"object\",\n \"id\": \"LiveChatMessageListResponse\"\n + \ },\n \"VideoStatus\": {\n \"type\": \"object\",\n \"properties\": + {\n \"publishAt\": {\n \"type\": \"string\",\n \"description\": + \"The date and time when the video is scheduled to publish. It can be set + only if the privacy status of the video is private..\",\n \"format\": + \"date-time\"\n },\n \"privacyStatus\": {\n \"enumDescriptions\": + [\n \"\",\n \"\",\n \"\"\n ],\n + \ \"enum\": [\n \"public\",\n \"unlisted\",\n + \ \"private\"\n ],\n \"description\": \"The video's + privacy status.\",\n \"type\": \"string\"\n },\n \"embeddable\": + {\n \"description\": \"This value indicates if the video can be embedded + on another website. @mutable youtube.videos.insert youtube.videos.update\",\n + \ \"type\": \"boolean\"\n },\n \"license\": {\n \"type\": + \"string\",\n \"description\": \"The video's license. @mutable youtube.videos.insert + youtube.videos.update\",\n \"enumDescriptions\": [\n \"\",\n + \ \"\"\n ],\n \"enum\": [\n \"youtube\",\n + \ \"creativeCommon\"\n ]\n },\n \"selfDeclaredMadeForKids\": + {\n \"type\": \"boolean\"\n },\n \"rejectionReason\": + {\n \"type\": \"string\",\n \"description\": \"This value + explains why YouTube rejected an uploaded video. This property is only present + if the uploadStatus property indicates that the upload was rejected.\",\n + \ \"enum\": [\n \"copyright\",\n \"inappropriate\",\n + \ \"duplicate\",\n \"termsOfUse\",\n \"uploaderAccountSuspended\",\n + \ \"length\",\n \"claim\",\n \"uploaderAccountClosed\",\n + \ \"trademark\",\n \"legal\"\n ],\n \"enumDescriptions\": + [\n \"Copyright infringement.\",\n \"Inappropriate video + content.\",\n \"Duplicate upload in the same channel.\",\n \"Terms + of use violation.\",\n \"Uploader account was suspended.\",\n \"Video + duration was too long.\",\n \"Blocked by content owner.\",\n \"Uploader + closed his/her account.\",\n \"Trademark infringement.\",\n \"An + unspecified legal reason.\"\n ]\n },\n \"failureReason\": + {\n \"enum\": [\n \"conversion\",\n \"invalidFile\",\n + \ \"emptyFile\",\n \"tooSmall\",\n \"codec\",\n + \ \"uploadAborted\"\n ],\n \"description\": \"This + value explains why a video failed to upload. This property is only present + if the uploadStatus property indicates that the upload failed.\",\n \"type\": + \"string\",\n \"enumDescriptions\": [\n \"Unable to convert + video content.\",\n \"Invalid file format.\",\n \"Empty + file.\",\n \"File was too small.\",\n \"Unsupported + codec.\",\n \"Upload wasn't finished.\"\n ]\n },\n + \ \"madeForKids\": {\n \"type\": \"boolean\"\n },\n + \ \"publicStatsViewable\": {\n \"type\": \"boolean\",\n \"description\": + \"This value indicates if the extended video statistics on the watch page + can be viewed by everyone. Note that the view count, likes, etc will still + be visible if this is disabled. @mutable youtube.videos.insert youtube.videos.update\"\n + \ },\n \"uploadStatus\": {\n \"type\": \"string\",\n + \ \"enum\": [\n \"uploaded\",\n \"processed\",\n + \ \"failed\",\n \"rejected\",\n \"deleted\"\n + \ ],\n \"enumDescriptions\": [\n \"Video has been + uploaded but not processed yet.\",\n \"Video has been successfully + processed.\",\n \"Processing has failed. See FailureReason.\",\n + \ \"Video has been rejected. See RejectionReason.\",\n \"Video + has been deleted.\"\n ],\n \"description\": \"The status + of the uploaded video.\"\n }\n },\n \"id\": \"VideoStatus\",\n + \ \"description\": \"Basic details about a video category, such as its + localized title. Next Id: 18\"\n },\n \"ChannelSection\": {\n \"type\": + \"object\",\n \"properties\": {\n \"snippet\": {\n \"$ref\": + \"ChannelSectionSnippet\",\n \"description\": \"The snippet object + contains basic details about the channel section, such as its type, style + and title.\"\n },\n \"contentDetails\": {\n \"description\": + \"The contentDetails object contains details about the channel section content, + such as a list of playlists or channels featured in the section.\",\n \"$ref\": + \"ChannelSectionContentDetails\"\n },\n \"kind\": {\n \"default\": + \"youtube#channelSection\",\n \"type\": \"string\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelSection\\\".\"\n + \ },\n \"localizations\": {\n \"type\": \"object\",\n + \ \"additionalProperties\": {\n \"$ref\": \"ChannelSectionLocalization\"\n + \ },\n \"description\": \"Localizations for different languages\"\n + \ },\n \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the channel section.\"\n },\n \"targeting\": {\n \"$ref\": + \"ChannelSectionTargeting\",\n \"description\": \"The targeting object + contains basic targeting settings about the channel section.\"\n }\n + \ },\n \"id\": \"ChannelSection\"\n },\n \"ActivityContentDetailsChannelItem\": + {\n \"description\": \"Details about a resource which was added to a + channel.\",\n \"id\": \"ActivityContentDetailsChannelItem\",\n \"properties\": + {\n \"resourceId\": {\n \"$ref\": \"ResourceId\",\n \"description\": + \"The resourceId object contains information that identifies the resource + that was added to the channel.\"\n }\n },\n \"type\": \"object\"\n + \ },\n \"LocalizedString\": {\n \"type\": \"object\",\n \"properties\": + {\n \"language\": {\n \"type\": \"string\"\n },\n \"value\": + {\n \"type\": \"string\"\n }\n },\n \"id\": \"LocalizedString\"\n + \ },\n \"ActivityContentDetailsSubscription\": {\n \"properties\": + {\n \"resourceId\": {\n \"description\": \"The resourceId + object contains information that identifies the resource that the user subscribed + to.\",\n \"$ref\": \"ResourceId\"\n }\n },\n \"type\": + \"object\",\n \"id\": \"ActivityContentDetailsSubscription\",\n \"description\": + \"Information about a channel that a user subscribed to.\"\n },\n \"PlaylistContentDetails\": + {\n \"properties\": {\n \"itemCount\": {\n \"description\": + \"The number of videos in the playlist.\",\n \"type\": \"integer\",\n + \ \"format\": \"uint32\"\n }\n },\n \"type\": \"object\",\n + \ \"id\": \"PlaylistContentDetails\"\n },\n \"Member\": {\n \"id\": + \"Member\",\n \"description\": \"A *member* resource represents a member + for a YouTube channel. A member provides recurring monetary support to a creator + and receives special benefits.\",\n \"type\": \"object\",\n \"properties\": + {\n \"snippet\": {\n \"$ref\": \"MemberSnippet\",\n \"description\": + \"The snippet object contains basic details about the member.\"\n },\n + \ \"kind\": {\n \"description\": \"Identifies what kind of + resource this is. Value: the fixed string \\\"youtube#member\\\".\",\n \"type\": + \"string\",\n \"default\": \"youtube#member\"\n },\n \"etag\": + {\n \"description\": \"Etag of this resource.\",\n \"type\": + \"string\"\n }\n }\n },\n \"SuperChatEvent\": {\n \"type\": + \"object\",\n \"id\": \"SuperChatEvent\",\n \"properties\": {\n + \ \"snippet\": {\n \"description\": \"The `snippet` object + contains basic details about the Super Chat event.\",\n \"$ref\": + \"SuperChatEventSnippet\"\n },\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube assigns to uniquely + identify the Super Chat event.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#superChatEvent\\\"`.\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#superChatEvent\"\n + \ },\n \"etag\": {\n \"description\": \"Etag of this + resource.\",\n \"type\": \"string\"\n }\n },\n \"description\": + \"A `__superChatEvent__` resource represents a Super Chat purchase on a YouTube + channel.\"\n },\n \"VideoRating\": {\n \"description\": \"Basic + details about rating of a video.\",\n \"type\": \"object\",\n \"properties\": + {\n \"videoId\": {\n \"type\": \"string\",\n \"description\": + \"The ID that YouTube uses to uniquely identify the video.\"\n },\n + \ \"rating\": {\n \"enumDescriptions\": [\n \"\",\n + \ \"The entity is liked.\",\n \"The entity is disliked.\"\n + \ ],\n \"enum\": [\n \"none\",\n \"like\",\n + \ \"dislike\"\n ],\n \"type\": \"string\",\n \"description\": + \"Rating of a video.\"\n }\n },\n \"id\": \"VideoRating\"\n + \ },\n \"ChannelContentDetails\": {\n \"properties\": {\n \"relatedPlaylists\": + {\n \"type\": \"object\",\n \"properties\": {\n \"watchLater\": + {\n \"description\": \"The ID of the playlist that contains the + channel\\\"s watch later playlist. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\",\n \"type\": \"string\"\n + \ },\n \"watchHistory\": {\n \"type\": \"string\",\n + \ \"description\": \"The ID of the playlist that contains the + channel\\\"s watch history. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\"\n },\n \"favorites\": + {\n \"type\": \"string\",\n \"description\": \"The + ID of the playlist that contains the channel\\\"s favorite videos. Use the + playlistItems.insert and playlistItems.delete to add or remove items from + that list.\"\n },\n \"likes\": {\n \"type\": + \"string\",\n \"description\": \"The ID of the playlist that + contains the channel\\\"s liked videos. Use the playlistItems.insert and playlistItems.delete + to add or remove items from that list.\"\n },\n \"uploads\": + {\n \"type\": \"string\",\n \"description\": \"The + ID of the playlist that contains the channel\\\"s uploaded videos. Use the + videos.insert method to upload new videos and the videos.delete method to + delete previously uploaded videos.\"\n }\n }\n }\n + \ },\n \"description\": \"Details about the content of a channel.\",\n + \ \"type\": \"object\",\n \"id\": \"ChannelContentDetails\"\n },\n + \ \"TokenPagination\": {\n \"description\": \"Stub token pagination + template to suppress results.\",\n \"type\": \"object\",\n \"properties\": + {},\n \"id\": \"TokenPagination\"\n },\n \"MembershipsDuration\": + {\n \"id\": \"MembershipsDuration\",\n \"properties\": {\n \"memberSince\": + {\n \"description\": \"The date and time when the user became a continuous + member across all levels.\",\n \"type\": \"string\"\n },\n + \ \"memberTotalDurationMonths\": {\n \"format\": \"int32\",\n + \ \"type\": \"integer\",\n \"description\": \"The cumulative + time the user has been a member across all levels in complete months (the + time is rounded down to the nearest integer).\"\n }\n },\n \"type\": + \"object\"\n },\n \"VideoAbuseReportReasonListResponse\": {\n \"id\": + \"VideoAbuseReportReasonListResponse\",\n \"type\": \"object\",\n \"properties\": + {\n \"kind\": {\n \"type\": \"string\",\n \"default\": + \"youtube#videoAbuseReportReasonListResponse\",\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string `\\\"youtube#videoAbuseReportReasonListResponse\\\"`.\"\n + \ },\n \"items\": {\n \"items\": {\n \"$ref\": + \"VideoAbuseReportReason\"\n },\n \"type\": \"array\",\n + \ \"description\": \"A list of valid abuse reasons that are used with + `video.ReportAbuse`.\"\n },\n \"eventId\": {\n \"description\": + \"Serialized EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"visitorId\": {\n \"type\": \"string\",\n + \ \"description\": \"The `visitorId` identifies the visitor.\"\n },\n + \ \"etag\": {\n \"type\": \"string\",\n \"description\": + \"Etag of this resource.\"\n }\n }\n },\n \"ActivityContentDetails\": + {\n \"id\": \"ActivityContentDetails\",\n \"type\": \"object\",\n + \ \"description\": \"Details about the content of an activity: the video + that was shared, the channel that was subscribed to, etc.\",\n \"properties\": + {\n \"bulletin\": {\n \"description\": \"The bulletin object + contains details about a channel bulletin post. This object is only present + if the snippet.type is bulletin.\",\n \"$ref\": \"ActivityContentDetailsBulletin\"\n + \ },\n \"playlistItem\": {\n \"$ref\": \"ActivityContentDetailsPlaylistItem\",\n + \ \"description\": \"The playlistItem object contains information + about a new playlist item. This property is only present if the snippet.type + is playlistItem.\"\n },\n \"subscription\": {\n \"description\": + \"The subscription object contains information about a channel that a user + subscribed to. This property is only present if the snippet.type is subscription.\",\n + \ \"$ref\": \"ActivityContentDetailsSubscription\"\n },\n \"social\": + {\n \"description\": \"The social object contains details about a + social network post. This property is only present if the snippet.type is + social.\",\n \"$ref\": \"ActivityContentDetailsSocial\"\n },\n + \ \"like\": {\n \"description\": \"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.\",\n \"$ref\": + \"ActivityContentDetailsLike\"\n },\n \"favorite\": {\n \"$ref\": + \"ActivityContentDetailsFavorite\",\n \"description\": \"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.\"\n },\n + \ \"recommendation\": {\n \"description\": \"The recommendation + object contains information about a recommended resource. This property is + only present if the snippet.type is recommendation.\",\n \"$ref\": + \"ActivityContentDetailsRecommendation\"\n },\n \"upload\": + {\n \"description\": \"The upload object contains information about + the uploaded video. This property is only present if the snippet.type is upload.\",\n + \ \"$ref\": \"ActivityContentDetailsUpload\"\n },\n \"promotedItem\": + {\n \"description\": \"The promotedItem object contains details about + a resource which is being promoted. This property is only present if the snippet.type + is promotedItem.\",\n \"$ref\": \"ActivityContentDetailsPromotedItem\"\n + \ },\n \"comment\": {\n \"$ref\": \"ActivityContentDetailsComment\",\n + \ \"description\": \"The comment object contains information about + a resource that received a comment. This property is only present if the snippet.type + is comment.\"\n },\n \"channelItem\": {\n \"description\": + \"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.\",\n + \ \"$ref\": \"ActivityContentDetailsChannelItem\"\n }\n }\n + \ },\n \"ThirdPartyLinkStatus\": {\n \"id\": \"ThirdPartyLinkStatus\",\n + \ \"properties\": {\n \"linkStatus\": {\n \"enum\": [\n + \ \"unknown\",\n \"failed\",\n \"pending\",\n + \ \"linked\"\n ],\n \"enumDescriptions\": [\n + \ \"\",\n \"\",\n \"\",\n \"\"\n + \ ],\n \"type\": \"string\"\n }\n },\n \"type\": + \"object\",\n \"description\": \"The third-party link status object contains + information about the status of the link.\"\n },\n \"CdnSettings\": + {\n \"description\": \"Brief description of the live stream cdn settings.\",\n + \ \"type\": \"object\",\n \"id\": \"CdnSettings\",\n \"properties\": + {\n \"ingestionInfo\": {\n \"description\": \"The ingestionInfo + object contains information that YouTube provides that you need to transmit + your RTMP or HTTP stream to YouTube.\",\n \"$ref\": \"IngestionInfo\"\n + \ },\n \"resolution\": {\n \"type\": \"string\",\n \"enum\": + [\n \"240p\",\n \"360p\",\n \"480p\",\n \"720p\",\n + \ \"1080p\",\n \"1440p\",\n \"2160p\",\n \"variable\"\n + \ ],\n \"description\": \"The resolution of the inbound video + data.\",\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\",\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ]\n },\n \"frameRate\": + {\n \"description\": \"The frame rate of the inbound video data.\",\n + \ \"enum\": [\n \"30fps\",\n \"60fps\",\n \"variable\"\n + \ ],\n \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\"\n ],\n \"type\": \"string\"\n },\n + \ \"format\": {\n \"type\": \"string\",\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"description\": \"The format of the video stream that you are sending + to Youtube. \"\n },\n \"ingestionType\": {\n \"annotations\": + {\n \"required\": [\n \"youtube.liveStreams.insert\",\n + \ \"youtube.liveStreams.update\"\n ]\n },\n + \ \"enumDescriptions\": [\n \"\",\n \"\",\n + \ \"\",\n \"\"\n ],\n \"type\": \"string\",\n + \ \"enum\": [\n \"rtmp\",\n \"dash\",\n \"webrtc\",\n + \ \"hls\"\n ],\n \"description\": \" The method + or protocol used to transmit the video stream.\"\n }\n }\n },\n + \ \"ChannelBannerResource\": {\n \"description\": \"A channel banner + returned as the response to a channel_banner.insert call.\",\n \"type\": + \"object\",\n \"id\": \"ChannelBannerResource\",\n \"properties\": + {\n \"etag\": {\n \"type\": \"string\"\n },\n \"url\": + {\n \"type\": \"string\",\n \"description\": \"The URL of + this banner image.\"\n },\n \"kind\": {\n \"description\": + \"Identifies what kind of resource this is. Value: the fixed string \\\"youtube#channelBannerResource\\\".\",\n + \ \"default\": \"youtube#channelBannerResource\",\n \"type\": + \"string\"\n }\n }\n },\n \"VideoCategoryListResponse\": + {\n \"properties\": {\n \"items\": {\n \"description\": + \"A list of video categories that can be associated with YouTube videos. In + this map, the video category ID is the map key, and its value is the corresponding + videoCategory resource.\",\n \"type\": \"array\",\n \"items\": + {\n \"$ref\": \"VideoCategory\"\n }\n },\n \"tokenPagination\": + {\n \"$ref\": \"TokenPagination\"\n },\n \"etag\": + {\n \"type\": \"string\",\n \"description\": \"Etag of this + resource.\"\n },\n \"nextPageToken\": {\n \"type\": + \"string\",\n \"description\": \"The token that can be used as the + value of the pageToken parameter to retrieve the next page in the result set.\"\n + \ },\n \"eventId\": {\n \"description\": \"Serialized + EventId of the request which produced this response.\",\n \"type\": + \"string\"\n },\n \"prevPageToken\": {\n \"description\": + \"The token that can be used as the value of the pageToken parameter to retrieve + the previous page in the result set.\",\n \"type\": \"string\"\n + \ },\n \"visitorId\": {\n \"type\": \"string\",\n \"description\": + \"The visitorId identifies the visitor.\"\n },\n \"pageInfo\": + {\n \"$ref\": \"PageInfo\",\n \"description\": \"General + pagination information.\"\n },\n \"kind\": {\n \"type\": + \"string\",\n \"default\": \"youtube#videoCategoryListResponse\",\n + \ \"description\": \"Identifies what kind of resource this is. Value: + the fixed string \\\"youtube#videoCategoryListResponse\\\".\"\n }\n + \ },\n \"id\": \"VideoCategoryListResponse\",\n \"type\": \"object\"\n + \ },\n \"Channel\": {\n \"properties\": {\n \"id\": {\n \"type\": + \"string\",\n \"description\": \"The ID that YouTube uses to uniquely + identify the channel.\"\n },\n \"status\": {\n \"$ref\": + \"ChannelStatus\",\n \"description\": \"The status object encapsulates + information about the privacy status of the channel.\"\n },\n \"localizations\": + {\n \"description\": \"Localizations for different languages\",\n + \ \"type\": \"object\",\n \"additionalProperties\": {\n \"$ref\": + \"ChannelLocalization\"\n }\n },\n \"auditDetails\": + {\n \"$ref\": \"ChannelAuditDetails\",\n \"description\": + \"The auditionDetails object encapsulates channel data that is relevant for + YouTube Partners during the audition process.\"\n },\n \"brandingSettings\": + {\n \"$ref\": \"ChannelBrandingSettings\",\n \"description\": + \"The brandingSettings object encapsulates information about the branding + of the channel.\"\n },\n \"snippet\": {\n \"$ref\": + \"ChannelSnippet\",\n \"description\": \"The snippet object contains + basic details about the channel, such as its title, description, and thumbnail + images.\"\n },\n \"contentOwnerDetails\": {\n \"description\": + \"The contentOwnerDetails object encapsulates channel data that is relevant + for YouTube Partners linked with the channel.\",\n \"$ref\": \"ChannelContentOwnerDetails\"\n + \ },\n \"statistics\": {\n \"$ref\": \"ChannelStatistics\",\n + \ \"description\": \"The statistics object encapsulates statistics + for the channel.\"\n },\n \"topicDetails\": {\n \"description\": + \"The topicDetails object encapsulates information about Freebase topics associated + with the channel.\",\n \"$ref\": \"ChannelTopicDetails\"\n },\n + \ \"etag\": {\n \"description\": \"Etag of this resource.\",\n + \ \"type\": \"string\"\n },\n \"contentDetails\": {\n + \ \"$ref\": \"ChannelContentDetails\",\n \"description\": + \"The contentDetails object encapsulates information about the channel's content.\"\n + \ },\n \"kind\": {\n \"description\": \"Identifies what + kind of resource this is. Value: the fixed string \\\"youtube#channel\\\".\",\n + \ \"type\": \"string\",\n \"default\": \"youtube#channel\"\n + \ },\n \"conversionPings\": {\n \"$ref\": \"ChannelConversionPings\",\n + \ \"description\": \"The conversionPings object encapsulates information + about conversion pings that need to be respected by the channel.\"\n }\n + \ },\n \"description\": \"A *channel* resource contains information + about a YouTube channel.\",\n \"id\": \"Channel\",\n \"type\": \"object\"\n + \ },\n \"VideoFileDetails\": {\n \"id\": \"VideoFileDetails\",\n + \ \"description\": \"Describes original video file properties, including + technical details about audio and video streams, but also metadata information + like content length, digitization time, or geotagging information.\",\n \"properties\": + {\n \"fileType\": {\n \"enumDescriptions\": [\n \"Known + video file (e.g., an MP4 file).\",\n \"Audio only file (e.g., an + MP3 file).\",\n \"Image file (e.g., a JPEG image).\",\n \"Archive + file (e.g., a ZIP archive).\",\n \"Document or text file (e.g., + MS Word document).\",\n \"Movie project file (e.g., Microsoft Windows + Movie Maker project).\",\n \"Other non-video file type.\"\n ],\n + \ \"enum\": [\n \"video\",\n \"audio\",\n \"image\",\n + \ \"archive\",\n \"document\",\n \"project\",\n + \ \"other\"\n ],\n \"type\": \"string\",\n \"description\": + \"The uploaded file's type as detected by YouTube's video processing engine. + Currently, YouTube only processes video files, but this field is present whether + a video file or another type of file was uploaded.\"\n },\n \"audioStreams\": + {\n \"description\": \"A list of audio streams contained in the uploaded + video file. Each item in the list contains detailed metadata about an audio + stream.\",\n \"items\": {\n \"$ref\": \"VideoFileDetailsAudioStream\"\n + \ },\n \"type\": \"array\"\n },\n \"creationTime\": + {\n \"type\": \"string\",\n \"description\": \"The date + and time when the uploaded video file was created. The value is specified + in ISO 8601 format. Currently, the following ISO 8601 formats are supported: + - Date only: YYYY-MM-DD - Naive time: YYYY-MM-DDTHH:MM:SS - Time with timezone: + YYYY-MM-DDTHH:MM:SS+HH:MM \"\n },\n \"videoStreams\": {\n \"items\": + {\n \"$ref\": \"VideoFileDetailsVideoStream\"\n },\n \"type\": + \"array\",\n \"description\": \"A list of video streams contained + in the uploaded video file. Each item in the list contains detailed metadata + about a video stream.\"\n },\n \"fileSize\": {\n \"description\": + \"The uploaded file's size in bytes. This field is present whether a video + file or another type of file was uploaded.\",\n \"type\": \"string\",\n + \ \"format\": \"uint64\"\n },\n \"container\": {\n \"description\": + \"The uploaded video file's container format.\",\n \"type\": \"string\"\n + \ },\n \"fileName\": {\n \"description\": \"The uploaded + file's name. This field is present whether a video file or another type of + file was uploaded.\",\n \"type\": \"string\"\n },\n \"bitrateBps\": + {\n \"format\": \"uint64\",\n \"description\": \"The uploaded + video file's combined (video and audio) bitrate in bits per second.\",\n \"type\": + \"string\"\n },\n \"durationMs\": {\n \"type\": \"string\",\n + \ \"format\": \"uint64\",\n \"description\": \"The length + of the uploaded video in milliseconds.\"\n }\n },\n \"type\": + \"object\"\n },\n \"ChannelAuditDetails\": {\n \"description\": + \"The auditDetails object encapsulates channel data that is relevant for YouTube + Partners during the audit process.\",\n \"type\": \"object\",\n \"id\": + \"ChannelAuditDetails\",\n \"properties\": {\n \"copyrightStrikesGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel has any copyright strikes.\"\n },\n \"contentIdClaimsGoodStanding\": + {\n \"description\": \"Whether or not the channel has any unresolved + claims.\",\n \"type\": \"boolean\"\n },\n \"communityGuidelinesGoodStanding\": + {\n \"type\": \"boolean\",\n \"description\": \"Whether + or not the channel respects the community guidelines.\"\n }\n }\n + \ },\n \"GeoPoint\": {\n \"id\": \"GeoPoint\",\n \"type\": + \"object\",\n \"description\": \"Geographical coordinates of a point, + in WGS84.\",\n \"properties\": {\n \"longitude\": {\n \"type\": + \"number\",\n \"format\": \"double\",\n \"description\": + \"Longitude in degrees.\"\n },\n \"altitude\": {\n \"description\": + \"Altitude above the reference ellipsoid, in meters.\",\n \"type\": + \"number\",\n \"format\": \"double\"\n },\n \"latitude\": + {\n \"description\": \"Latitude in degrees.\",\n \"format\": + \"double\",\n \"type\": \"number\"\n }\n }\n },\n + \ \"PlaylistItemContentDetails\": {\n \"type\": \"object\",\n \"properties\": + {\n \"videoId\": {\n \"description\": \"The ID that YouTube + uses to uniquely identify a video. To retrieve the video resource, set the + id query parameter to this value in your API request.\",\n \"type\": + \"string\"\n },\n \"endAt\": {\n \"type\": \"string\",\n + \ \"description\": \"The time, measured in seconds from the start + of the video, when the video should stop playing. (The playlist owner can + specify the times when the video should start and stop playing when the video + is played in the context of the playlist.) By default, assume that the video.endTime + is the end of the video.\"\n },\n \"note\": {\n \"description\": + \"A user-generated note for this item.\",\n \"type\": \"string\"\n + \ },\n \"videoPublishedAt\": {\n \"format\": \"date-time\",\n + \ \"type\": \"string\",\n \"description\": \"The date and + time that the video was published to YouTube.\"\n },\n \"startAt\": + {\n \"type\": \"string\",\n \"description\": \"The time, + measured in seconds from the start of the video, when the video should start + playing. (The playlist owner can specify the times when the video should start + and stop playing when the video is played in the context of the playlist.) + The default value is 0.\"\n }\n },\n \"id\": \"PlaylistItemContentDetails\"\n + \ },\n \"PlaylistLocalization\": {\n \"description\": \"Playlist + localization setting\",\n \"id\": \"PlaylistLocalization\",\n \"properties\": + {\n \"description\": {\n \"type\": \"string\",\n \"description\": + \"The localized strings for playlist's description.\"\n },\n \"title\": + {\n \"description\": \"The localized strings for playlist's title.\",\n + \ \"type\": \"string\"\n }\n },\n \"type\": \"object\"\n + \ }\n },\n \"revision\": \"20230308\",\n \"mtlsRootUrl\": \"https://youtube.mtls.googleapis.com/\",\n + \ \"id\": \"youtube:v3\"\n}\n" headers: Alt-Svc: - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 @@ -289877,7 +6191,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 22 Feb 2023 18:58:43 GMT + - Thu, 09 Mar 2023 00:27:10 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: @@ -289904,29 +6218,34 @@ interactions: User-Agent: - Aiogoogle Aiohttp (gzip) method: GET - uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCk2OzObixhe_mbMfMQGLuJw&part=snippet%2CbrandingSettings + uri: https://youtube.googleapis.com/youtube/v3/channels?id=UCi0q9rOpx1wLBJpdNypbC6w&part=snippet%2CbrandingSettings response: body: - string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"VokVx0Tlihcy4KnQ9xtmT_GrnvE\",\n + string: "{\n \"kind\": \"youtube#channelListResponse\",\n \"etag\": \"LQZ9BE8wJqPIP0X3gEvu4bHv-lY\",\n \ \"pageInfo\": {\n \"totalResults\": 1,\n \"resultsPerPage\": 5\n },\n \ \"items\": [\n {\n \"kind\": \"youtube#channel\",\n \"etag\": - \"QAxHFU6ukmtm9nsuXrRWzWtW5oU\",\n \"id\": \"UCk2OzObixhe_mbMfMQGLuJw\",\n - \ \"snippet\": {\n \"title\": \"Another Channel\",\n \"description\": - \"\u26A1 Donate4Fun to me here https://donate4.fun/d/UCk2OzObixhe_mbMfMQGLuJw\",\n - \ \"customUrl\": \"@anotherchannel1362\",\n \"publishedAt\": - \"2022-05-11T16:12:25.078744Z\",\n \"thumbnails\": {\n \"default\": - {\n \"url\": \"https://yt3.ggpht.com/58PC2uYBhoCNYeZdFDtCPROsK8N4479LQJwOmOJuXNexO9e9YKePO073b7kRQn3pMufM4BcokvE=s88-c-k-c0x00ffffff-no-rj\",\n + \"xjnbNbWdoE8Vwsvk9J_Q2maXXpQ\",\n \"id\": \"UCi0q9rOpx1wLBJpdNypbC6w\",\n + \ \"snippet\": {\n \"title\": \"Donate4Fun\",\n \"description\": + \"It's official channel of Donate4.Fun donation service powered by \u26A1 + Bitcoin Lightning.\\nGo to https://donate4.fun if you want to get your donations.\\n\\n\\n\",\n + \ \"customUrl\": \"@donate4fun\",\n \"publishedAt\": \"2022-07-14T19:58:25.103729Z\",\n + \ \"thumbnails\": {\n \"default\": {\n \"url\": + \"https://yt3.ggpht.com/u33vOM5CeeMTSMpm55U45jf0xJKymfFlFrRfcl_NMhYDNhCUaykO5BvCgRlVRnNymPVCfhwZww=s88-c-k-c0x00ffffff-no-rj\",\n \ \"width\": 88,\n \"height\": 88\n },\n \"medium\": - {\n \"url\": \"https://yt3.ggpht.com/58PC2uYBhoCNYeZdFDtCPROsK8N4479LQJwOmOJuXNexO9e9YKePO073b7kRQn3pMufM4BcokvE=s240-c-k-c0x00ffffff-no-rj\",\n + {\n \"url\": \"https://yt3.ggpht.com/u33vOM5CeeMTSMpm55U45jf0xJKymfFlFrRfcl_NMhYDNhCUaykO5BvCgRlVRnNymPVCfhwZww=s240-c-k-c0x00ffffff-no-rj\",\n \ \"width\": 240,\n \"height\": 240\n },\n \"high\": - {\n \"url\": \"https://yt3.ggpht.com/58PC2uYBhoCNYeZdFDtCPROsK8N4479LQJwOmOJuXNexO9e9YKePO073b7kRQn3pMufM4BcokvE=s800-c-k-c0x00ffffff-no-rj\",\n + {\n \"url\": \"https://yt3.ggpht.com/u33vOM5CeeMTSMpm55U45jf0xJKymfFlFrRfcl_NMhYDNhCUaykO5BvCgRlVRnNymPVCfhwZww=s800-c-k-c0x00ffffff-no-rj\",\n \ \"width\": 800,\n \"height\": 800\n }\n },\n - \ \"localized\": {\n \"title\": \"Another Channel\",\n \"description\": - \"\u26A1 Donate4Fun to me here https://donate4.fun/d/UCk2OzObixhe_mbMfMQGLuJw\"\n - \ }\n },\n \"brandingSettings\": {\n \"channel\": {\n - \ \"title\": \"Another Channel\",\n \"description\": \"\u26A1 - Donate4Fun to me here https://donate4.fun/d/UCk2OzObixhe_mbMfMQGLuJw\"\n }\n - \ }\n }\n ]\n}\n" + \ \"defaultLanguage\": \"en\",\n \"localized\": {\n \"title\": + \"Donate4Fun\",\n \"description\": \"It's official channel of Donate4.Fun + donation service powered by \u26A1 Bitcoin Lightning.\\nGo to https://donate4.fun + if you want to get your donations.\\n\\n\\n\"\n }\n },\n \"brandingSettings\": + {\n \"channel\": {\n \"title\": \"Donate4Fun\",\n \"description\": + \"It's official channel of Donate4.Fun donation service powered by \u26A1 + Bitcoin Lightning.\\nGo to https://donate4.fun if you want to get your donations.\\n\\n\\n\",\n + \ \"keywords\": \"donations bitcoin crypto lightningnetwork \\\"lightning + network\\\" tips\",\n \"defaultLanguage\": \"en\"\n }\n }\n + \ }\n ]\n}\n" headers: Alt-Svc: - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 @@ -289937,7 +6256,7 @@ interactions: Content-Type: - application/json; charset=UTF-8 Date: - - Wed, 22 Feb 2023 18:58:44 GMT + - Thu, 09 Mar 2023 00:27:11 GMT Server: - scaffolding on HTTPServer2 Transfer-Encoding: diff --git a/tests/fixtures.py b/tests/fixtures.py index 9bfd7405..9f283f17 100644 --- a/tests/fixtures.py +++ b/tests/fixtures.py @@ -12,6 +12,7 @@ from base64 import urlsafe_b64encode from itertools import count from uuid import UUID +from typing import Callable import anyio import pytest @@ -22,26 +23,29 @@ from hypercorn.asyncio import serve as hypercorn_serve from hypercorn.config import Config from furl import furl +from shellous import sh +from vcr.cassette import Cassette from donate4fun.core import as_task from donate4fun.app import create_app, app as app_var from donate4fun.api_utils import task_group -from donate4fun.lnd import LndClient, lnd as lnd_var +from donate4fun.lnd import lnd as lnd_var, LndIsNotReady, Invoice from donate4fun.settings import load_settings, Settings, DbSettings -from donate4fun.twitter import api_data_to_twitter_account +from donate4fun.twitter import api_data_to_twitter_account, OAuthManager, OAuthTokenKind, OAuthToken from donate4fun.db import DbSession, Database, db as db_var from donate4fun.db_models import DonatorDb from donate4fun.db_youtube import YoutubeDbLib from donate4fun.db_twitter import TwitterDbLib from donate4fun.db_donations import DonationsDbLib from donate4fun.models import ( - Invoice, Donation, OAuthState, IdModel, + Donation, OAuthState, IdModel, RequestHash, PaymentRequest, YoutubeChannel, Donator, TwitterAccount, ) from donate4fun.pubsub import PubSubBroker, pubsub as pubsub_var from donate4fun.dev_helpers import get_carol_lnd, get_alice_lnd +from donate4fun import twitter_bot -from tests.test_util import login_to +from tests.test_util import login_to, load_fixture, save_fixture, disable_vcr, enable_lnd_vcr logger = logging.getLogger(__name__) @@ -125,6 +129,7 @@ async def settings(monkeypatch): settings.sentry = None settings.base_url = 'http://localhost:3000' settings.frontend_port = 3000 + settings.jwt_secret = 'secret' # Force key to be the same when we generate cassettes with production config yield settings @@ -196,11 +201,10 @@ async def pubsub(db): @pytest.fixture -async def app(db, settings, pubsub): +async def app(db, settings, pubsub, receiver_lnd): posthog.disabled = True async with create_app() as app, anyio.create_task_group() as tg: - lnd = get_alice_lnd() - with app_var.assign(app), lnd_var.assign(lnd), pubsub_var.assign(pubsub), task_group.assign(tg): + with app_var.assign(app), lnd_var.assign(receiver_lnd), pubsub_var.assign(pubsub), task_group.assign(tg): yield app @@ -244,14 +248,14 @@ def make_gen(): @pytest.fixture -async def unpaid_donation_fixture(app, db, donator_id, freeze_uuids, settings): +async def unpaid_donation_fixture(app, db, donator_id, freeze_uuids, settings, receiver_lnd): async with db.session() as db_session: youtube_db = YoutubeDbLib(db_session) youtube_channel = YoutubeChannel( channel_id='q2dsaf', title='asdzxc', thumbnail_url='http://example.com/thumbnail', ) await youtube_db.save_account(youtube_channel) - invoice: Invoice = await LndClient(settings.lnd).create_invoice(memo="Donate4.fun to asdzxc", value=100) + invoice: Invoice = await receiver_lnd.create_invoice(memo="Donate4.fun to asdzxc", value=100) donation: Donation = Donation( donator=Donator(id=donator_id), amount=20, @@ -305,8 +309,24 @@ async def rich_donator(db, registered_donator): return await db_session.query_donator(id=registered_donator.id) +@pytest.fixture(scope='session') +async def ensure_polar_working(): + lnds = [get_alice_lnd(), get_carol_lnd()] + try: + for lnd in lnds: + await lnd.check_ready() + except LndIsNotReady: + await sh('./scripts/restart-polar.sh') + await lnd.check_ready() + + +@pytest.fixture +async def receiver_lnd(ensure_polar_working): + return get_alice_lnd() + + @pytest.fixture -async def payer_lnd(): +async def payer_lnd(ensure_polar_working): return get_carol_lnd() @@ -350,3 +370,77 @@ async def youtube_db(db_session): @pytest.fixture def oauth_state(): return OAuthState(success_path='/success', error_path='/error', donator_id=UUID(int=0), code_verifier=b'\x00' * 43) + + +class FixtureOAuthManager(OAuthManager): + fixture_name = 'twitter_oauth_tokens' + + async def load(self, token_kind: OAuthTokenKind) -> OAuthToken: + try: + data = load_fixture(self.fixture_name) + return data[f'{self.name_prefix}_{token_kind.value}'] + except (FileNotFoundError, KeyError): + return await self.obtain_token(token_kind) + + async def save(self, token_kind: OAuthTokenKind, token: OAuthToken): + try: + data = load_fixture(self.fixture_name) + except FileNotFoundError: + data = {} + data[f'{self.name_prefix}_{token_kind.value}'] = token + save_fixture(self.fixture_name, data) + + @asynccontextmanager + async def create_oauth2_client(self): + async with super().create_oauth2_client() as client: + async with disable_vcr(): + await client.client.ensure_active_token(client.client.token) + yield client + + +class TimestampedSerializer: + def __init__(self, recorded_at: datetime, serializer: Callable[list[dict], None]): + self.recorded_at = recorded_at + self.serializer = serializer + + def serialize(self, cassette_dict: dict) -> str: + cassette_dict['recorded_at'] = self.recorded_at.isoformat() + return self.serializer.serialize(cassette_dict) + + +@pytest.fixture(autouse=True) +def freezed_vcr_fixture(request, vcr: Cassette): + """ + On playback this fixture freezes time to a moment from recorded_at field in cassette. + On record this fixture freezes at a current time and writes recorded_at field to cassette. + """ + marker = request.node.get_closest_marker('freezed_vcr') + if marker is None: + return + if vcr.write_protected: + with open(vcr._path) as f: + cassette_dict = vcr._serializer.deserialize(f.read()) + freeze_at = cassette_dict.get('recorded_at') + else: + # This serializer writes recorded_at to cassette + freeze_at = datetime.utcnow() + vcr._serializer = TimestampedSerializer(freeze_at, vcr._serializer) + if freeze_at is not None: + request.node.add_marker(pytest.mark.freeze_time(freeze_at, ignore=['logging'])) + request.getfixturevalue('freezer') + + +@pytest.fixture +def freeze_invoice_qrcode(monkeypatch): + orig_make_qr_code = twitter_bot.make_qr_code + + def patched_make_qr_code(data, error_correction): + # Override because payment request is always different + return orig_make_qr_code(b'123qwe', error_correction) + monkeypatch.setattr('donate4fun.twitter_bot.make_qr_code', patched_make_qr_code) + + +@pytest.fixture +async def lnd_vcr_enabler(): + async with enable_lnd_vcr(): + yield diff --git a/tests/test_api.py b/tests/test_api.py index 822debf1..e9dd06f9 100644 --- a/tests/test_api.py +++ b/tests/test_api.py @@ -23,7 +23,7 @@ from donate4fun.db_donations import DonationsDbLib from donate4fun.types import PaymentRequest -from tests.test_util import verify_fixture, verify_response, check_response, freeze_time, check_notification, login_to +from tests.test_util import verify_fixture, verify_response, check_response, freeze_time, check_notification, login_to, mark_vcr from tests.fixtures import Settings @@ -106,7 +106,7 @@ async def test_fulfill( assert me_response.json()['donator']['balance'] == amount -@pytest.mark.freeze_time('2022-02-02 22:22:22') +@freeze_time async def test_websocket(client, unpaid_donation_fixture, db, freeze_request_hash_json): messages = [] # Test with two concurrent websockets (there were bugs with it) @@ -261,14 +261,12 @@ async def test_withdraw( async def wait_for_payment(lnd_client, r_hash, *, task_status: TaskStatus): - async for data in lnd_client.subscribe("/v1/invoices/subscribe"): - if data is None: - task_status.started() - continue - invoice: Invoice = Invoice(**data['result']) - assert invoice.r_hash == r_hash - assert invoice.state == 'SETTLED' - break + async with lnd_client.subscribe_to_invoices() as invoices: + task_status.started() + async for invoice in invoices: + assert invoice.r_hash == r_hash + assert invoice.state == 'SETTLED' + break async def wait_for_withdrawal( @@ -340,3 +338,11 @@ async def test_top_unclaimed_donatees(db, client): )) verify_response(check_response(await client.get('/api/v1/donatees/top-unclaimed')), 'top-unclaimed-donatees') + + +@mark_vcr +async def test_donation_invoice_api(db, client, lnd_vcr_enabler, unpaid_donation_fixture): + """ + lnd_vcr_enabler is needed to freeze lnd invoice created in unpaid_donation_fixture in cassette + """ + verify_response(await client.get(f'/api/v1/donation/{unpaid_donation_fixture.id}/invoice'), 'donation-invoice') diff --git a/tests/test_github.py b/tests/test_github.py index 4dfc5556..dd0543cc 100644 --- a/tests/test_github.py +++ b/tests/test_github.py @@ -4,7 +4,7 @@ import pytest -from donate4fun.models import GithubUser, Donator +from donate4fun.models import GithubUser, Donator, SocialProviderId from donate4fun.db_libs import GithubDbLib from .test_util import mark_vcr, check_response, login_to, verify_response, follow_oauth_flow, freeze_time @@ -30,7 +30,7 @@ async def test_login_via_oauth(client, settings, monkeypatch, db, freeze_uuids, donator = Donator(id=UUID(int=0)) login_to(client, settings, donator) await follow_oauth_flow( - client, 'github', name='github-login-via-oauth', + client, SocialProviderId.github, name='github-login-via-oauth', return_to=return_to, expected_account=account.id, ) me = Donator(**check_response(await client.get('/api/v1/me')).json()) @@ -41,7 +41,7 @@ async def test_login_via_oauth(client, settings, monkeypatch, db, freeze_uuids, other_donator = Donator(id=UUID(int=1)) login_to(client, settings, other_donator) await follow_oauth_flow( - client, 'github', name='github-login-via-oauth-relogin', + client, SocialProviderId.github, name='github-login-via-oauth-relogin', return_to=return_to, ) me = Donator(**check_response(await client.get('/api/v1/me')).json()) diff --git a/tests/test_twitter.py b/tests/test_twitter.py index edbfda59..cde41d10 100644 --- a/tests/test_twitter.py +++ b/tests/test_twitter.py @@ -1,4 +1,6 @@ +import time from datetime import datetime +from dataclasses import asdict from uuid import UUID from base64 import urlsafe_b64encode @@ -8,23 +10,25 @@ from donate4fun.models import ( DonateRequest, TwitterAccount, TwitterAccountOwned, Donator, TwitterTweet, DonateResponse, DonationPaidRequest, - PayInvoiceResult, DonationPaidRouteInfo, Donation, + DonationPaidRouteInfo, Donation, ) +from donate4fun.twitter import Tweet from donate4fun.twitter_bot import MentionsBot from donate4fun.twitter_provider import TwitterProvider -from donate4fun.lnd import lnd, monitor_invoices_step, PayInvoiceError -from donate4fun.types import PaymentRequest, LightningAddress +from donate4fun.lnd import lnd, monitor_invoices_step, PayInvoiceError, PayInvoiceResult +from donate4fun.types import PaymentRequest, LightningAddress, Satoshi from donate4fun.db import db as db_var from donate4fun.db_twitter import TwitterDbLib from donate4fun.db_donations import DonationsDbLib -from donate4fun.settings import settings, TwitterOAuth +from donate4fun.settings import settings from donate4fun.jobs import refetch_twitter_authors -from donate4fun import twitter_bot +from donate4fun.social import SocialProviderId +from donate4fun.api_utils import make_absolute_uri from tests.test_util import ( verify_response, mark_vcr, check_notification, login_to, check_response, freeze_time, follow_oauth_flow, - load_or_ask, verify_oauth_redirect, + ask_user_browser, verify_oauth_redirect, enable_lnd_vcr, ) -from tests.fixtures import find_unused_port, app_serve, make_registered_donator, create_db +from tests.fixtures import find_unused_port, app_serve, make_registered_donator, create_db, FixtureOAuthManager @mark_vcr @@ -273,7 +277,7 @@ async def patched_get_me(self) -> TwitterAccount: donator = Donator(id=UUID(int=0)) login_to(client, settings, donator) await follow_oauth_flow( - client, 'twitter', name='twitter-login-via-oauth', + client, SocialProviderId.twitter, name='twitter-login-via-oauth', return_to=return_to, expected_account=account.id, ) me = Donator(**check_response(await client.get('/api/v1/me')).json()) @@ -284,7 +288,7 @@ async def patched_get_me(self) -> TwitterAccount: other_donator = Donator(id=UUID(int=1)) login_to(client, settings, other_donator) await follow_oauth_flow( - client, 'twitter', name='twitter-login-via-oauth-relogin', + client, SocialProviderId.twitter, name='twitter-login-via-oauth-relogin', return_to=return_to, ) me = Donator(**check_response(await client.get('/api/v1/me')).json()) @@ -302,7 +306,9 @@ async def follow_oauth1_flow(client, name: str): )).json() auth_url: str = response['url'] # FIXME: rename .code to .link - redirect_url: str = load_or_ask(f'{name}.code', f"Open this url {auth_url}, authorize and paste url here:") + redirect_url: str = await ask_user_browser( + name, url=auth_url, prompt="Open this url, authorize and paste resulting url here:", + ) params = dict(furl(redirect_url).query.params) response = await client.get( '/api/v1/twitter/oauth1-callback', @@ -377,26 +383,28 @@ async def test_unlink_twitter_account(client, db): @mark_vcr +@pytest.mark.freezed_vcr @pytest.mark.parametrize('text,balance', [ ('100', None), ('200', 100), ('300', 400), ]) -async def test_handle_twitter_mention(db, app, text: str, balance: int | None, monkeypatch): - mention = { - 'author_id': '1591008723912343553', - 'created_at': '2023-02-08T12:08:39.000Z', - 'edit_history_tweet_ids': ['1623292724978896896'], - 'id': '1623292724978896896', - 'in_reply_to_user_id': '1616757608299339776', - 'referenced_tweets': [{'id': '1622708944996114432', 'type': 'replied_to'}], - 'text': f'@tip4fun @donate4_fun {text}', - } +async def test_handle_twitter_mention(db, app, text: str, balance: int | None, freeze_invoice_qrcode): + bot_handle = 'tip4fun' + mention = Tweet( + author_id=1591008723912343553, + created_at='2023-02-08T12:08:39.000Z', + edit_history_tweet_ids=[1623292724978896896], + id=1623292724978896896, + in_reply_to_user_id=1616757608299339776, + referenced_tweets=[{'id': 1622708944996114432, 'type': 'replied_to'}], + text=f'@{bot_handle} @donate4_fun {text}', + ) if balance is not None: async with db.session() as db_session: twitter_db = TwitterDbLib(db_session) account = TwitterAccount( - user_id=int(mention['author_id']), + user_id=mention.author_id, handle='tip4fun', ) await twitter_db.save_account(account) @@ -404,38 +412,88 @@ async def test_handle_twitter_mention(db, app, text: str, balance: int | None, m await db_session.save_donator(donator) await twitter_db.link_account(account, donator, via_oauth=True) - orig_make_qr_code = twitter_bot.make_qr_code - monkeypatch.setattr('donate4fun.twitter_bot.make_qr_code', lambda data: orig_make_qr_code(b'123qwe')) - settings.twitter.linking_oauth.bearer_token = 'secret' - - class FixtureTokenLoader: - def __init__(self, token: dict): - self.token = token - - async def load(self) -> dict: - return self.token - class PatchedMentionsBot(MentionsBot): - oauth1_token = FixtureTokenLoader(dict( - oauth_token="secret", - oauth_token_secret="secret", - )) - oauth2_token = FixtureTokenLoader(dict( - access_token="secret", - token_type="bearer", - expires_at=1676058441, - )) - - @classmethod @property - def oauth_settings(cls): - return TwitterOAuth( - consumer_key='JqyhuOUhGJNO4GLeb3t3PcySP', - consumer_secret='secret', - # @bryskin2 - client_id='MWlyTVlGbUdXRkY2Q09ncGxkbzc6MTpjaQ', - client_secret='secret', - ) + def oauth_manager(self): + return FixtureOAuthManager(**asdict(super().oauth_manager)) async with PatchedMentionsBot.create() as bot: await bot.handle_mention(mention) + + +@mark_vcr +@pytest.mark.freezed_vcr +async def test_donate_via_mention(payer_lnd, receiver_lnd, db, monkeypatch, client, freeze_invoice_qrcode, freeze_uuids): + receiver_handle = 'Bryskin2' + donator_handle = 'btclntip' + amount: Satoshi = 100 + receiver_manager = FixtureOAuthManager( + name_prefix='receiver', + settings=settings.twitter.mentions_bot.oauth, + scope='tweet.write tweet.read users.read offline.access', + suggested_account=receiver_handle, + ) + donator_manager = FixtureOAuthManager( + name_prefix='donator', + settings=settings.twitter.linking_oauth, + scope='tweet.write tweet.read users.read offline.access', + suggested_account=donator_handle, + ) + monkeypatch.setattr(MentionsBot, 'oauth_manager', FixtureOAuthManager(**asdict(MentionsBot.oauth_manager))) + # Create initial tweet + async with receiver_manager.create_oauth2_client() as receiver_client: + # First try to take recent tweet to avoid creating a lot of similar tweets + async for receiver_tweet in receiver_client.get_tweets_by_user(handle=receiver_handle): + break + else: + # We user time.time() to avoid "duplicate content 403" error + receiver_tweet = await client.send_tweet(text=f'some tweet {time.time()}') + async with MentionsBot.create() as bot, enable_lnd_vcr(): + async with donator_manager.create_oauth2_client() as donator_client: + async with bot.fetch_mentions() as mentions: + # Create a "donation" tweet + # We use time.time() to avoid "duplicate content 403" error + donation_tweet: Tweet = await donator_client.send_tweet( + text=f'@{bot.handle} {amount} sats for this sir {time.time()}', + reply_to=receiver_tweet.id, + ) + # Wait for mention to arrive in search API + mention: Tweet = await anext(mentions) + assert mention.id == donation_tweet.id + async with donator_manager.create_apponly_client() as donator_client: + async with donator_client.stream_tweets(query=f'in_reply_to_tweet_id:{donation_tweet.id}') as reply_stream: + async with enable_lnd_vcr(): + # This creates a donation and sends an invoice in a tweet + donation: Donation = await bot.handle_mention(mention) + assert donation.twitter_account.handle == receiver_handle + assert donation.donator_twitter_account.handle == donator_handle + assert donation.amount == amount + reply: Tweet = await anext(reply_stream) + invoice_url: str = make_absolute_uri(f'/api/v1/donation/{donation.id}/invoice') + # First reply must have a link to an invoice + assert invoice_url in reply.text + # TODO: check invoice QR + # Get an invoice from reply + response = await client.get(invoice_url) + assert response.status_code == 307 + location = response.headers['location'] + assert location.startswith('lightning:') + invoice = PaymentRequest.validate(location.split(':')[1]) + async with enable_lnd_vcr(), bot.monitor_invoices() as invoices, monitor_invoices_step(receiver_lnd, db): + # Pay invoice + await payer_lnd.pay_invoice(invoice) + # wait for invoice and donation to be processed + # Important: this should be awaited before a tweet because vcr yields all chunks at start + await anext(invoices) + # And wait for a confirmation tweet + confirmation: Tweet = await anext(reply_stream) + async with db.session() as db_session: + donation = await DonationsDbLib(db_session).query_donation(id=donation.id) + assert donation.paid_at != None # noqa + # First reply now should be a donation confirmation + donation_url = make_absolute_uri(f'/donation/{donation.id}') + assert confirmation.text == f'@{donator_handle} @{receiver_handle} {donation_url}' + # assert len(confirmation.entities.urls) == 1 # doesn't work with localhost urls - Twitter ignores them + # donation_url = confirmation.entities.urls[0].url + # donation_id = furl(donation_url).path[1] + # TODO: check sharing image diff --git a/tests/test_util.py b/tests/test_util.py index bd257d03..aed8221a 100644 --- a/tests/test_util.py +++ b/tests/test_util.py @@ -1,12 +1,13 @@ import logging import time import json +import sys +import webbrowser from contextvars import ContextVar from contextlib import asynccontextmanager from uuid import UUID -from typing import Any +from functools import cache from hashlib import md5 -from pathlib import Path from urllib.parse import parse_qs, urlencode from io import BytesIO @@ -18,6 +19,8 @@ from PIL import Image, ImageChops from vcr.filters import replace_query_parameters from furl import furl +from vcr.request import Request as VcrRequest +from vcr.errors import CannotOverwriteExistingCassetteException from donate4fun.models import Donator, Credentials from donate4fun.social import SocialProvider @@ -25,6 +28,7 @@ from donate4fun.settings import Settings, settings from donate4fun.core import to_base64 from donate4fun.api_utils import decode_jwt +from donate4fun.dev_helpers import get_carol_lnd, get_alice_lnd logger = logging.getLogger(__name__) # This file is needed because pytest modifies "assert" only in test_*.py files @@ -46,15 +50,27 @@ def str_presenter(dumper, data): yaml.representer.SafeRepresenter.add_representer(str, str_presenter) # to use with safe_dump -def verify_fixture(data: dict[str, Any], name: str): +def fixture_filename(name: str) -> str: + return f'tests/autofixtures/{name}.yaml' + + +def load_fixture(name: str) -> dict: + with open(fixture_filename(name)) as f: + return yaml.unsafe_load(f) + + +def save_fixture(name: str, data: dict): + with open(fixture_filename(name), 'w') as f: + yaml.dump(data, f) + + +def verify_fixture(data: dict, name: str): filename = f'tests/autofixtures/{name}.yaml' try: - with open(filename) as f: - original = yaml.unsafe_load(f) + original = load_fixture(name) assert data == original, f"Response for {filename} differs" except FileNotFoundError: - with open(filename, 'w') as f: - yaml.dump(data, f) + save_fixture(name, data) def verify_image_fixture(data: dict, image: Image, name: str): @@ -166,13 +182,44 @@ def login_to(client, settings: Settings, donator: Donator): def is_json(headers: dict[str, list[str]]) -> bool: - content_types = headers.get('content-type', []) + content_types = {key.lower(): value for key, value in headers.items()}.get('content-type', []) if isinstance(content_types, str): content_types = [content_types] return any(content_type.startswith('application/json') for content_type in content_types) -def remove_credentials_and_testclient(request): +def enabler(var): + @asynccontextmanager + async def enable(): + """ + This function should be async for context var to work + because pytest uses different contexts for sync/async functions + """ + token = var.set(True) + try: + yield + finally: + var.reset(token) + return enable + + +disable_vcr_var = ContextVar("disable-vcr", default=False) +disable_vcr = enabler(disable_vcr_var) +lnd_vcr_enabled = ContextVar('enable-lnd-vcr', default=False) +enable_lnd_vcr = enabler(lnd_vcr_enabled) + + +@cache +def lnd_origins() -> list[str]: + return [lnd.settings.url for lnd in [get_alice_lnd(), get_carol_lnd()]] + + +SECRET_OAUTH_PARAMS = ['oauth_token_secret'] + + +def sanitize_request(request: VcrRequest): + if disable_vcr_var.get(): + return None if 'grpc-metadata-macaroon' in request.headers: request.headers['grpc-metadata-macaroon'] = 'secret' if 'authorization' in request.headers: @@ -189,62 +236,112 @@ def remove_credentials_and_testclient(request): if request.host == 'test': # Ignore testclient requests return None - if request.host.startswith('localhost'): + if not lnd_vcr_enabled.get() and furl(request.url).origin in lnd_origins(): # Ignore requests to lnd return None + if request.query: + request.uri = furl( + url=request.uri, + query=[(key, 'secret' if key in SECRET_OAUTH_PARAMS else value) for key, value in request.query], + ).url return request -def remove_url_and_sanitize(response): +def sanitize_response(response): # WORKAROUND: this is a fix for vcrpy async handler if 'url' in response: response['url'] = '' - if is_json(response['headers']): - body = json.loads(response['content']) - if 'access_token' in body: - body['access_token'] = 'secret' - if 'refresh_token' in body: - body['refresh_token'] = 'secret' - response['content'] = json.dumps(body) + if is_json(response.get('headers', {})) and response.get('content'): + try: + body = json.loads(response['content']) + except json.decoder.JSONDecodeError: + pass + else: + if 'access_token' in body: + body['access_token'] = 'secret' + if 'refresh_token' in body: + body['refresh_token'] = 'secret' + response['content'] = json.dumps(body) else: query = parse_qs(response.get('content', '')) if query: - if 'oauth_token' in query: - query['oauth_token'] = ['secret'] - if 'oauth_token_secret' in query: - query['oauth_token_secret'] = ['secret'] + for param in SECRET_OAUTH_PARAMS: + if param in query: + query[param] = ['secret'] response['content'] = urlencode(query, doseq=True) return response def mark_vcr(func): - return pytest.mark.vcr( - before_record_request=remove_credentials_and_testclient, - before_record_response=remove_url_and_sanitize, - )(pytest.mark.block_network(allowed_hosts=['localhost', '::1', '127.0.0.1'])(func)) - - -def load_or_ask(path: str, prompt: str) -> str: - full_path = Path(__file__).parent / 'autofixtures' / path - if full_path.exists(): - with open(full_path, 'r') as f: - data = f.read() - else: - data = input(prompt + '\n') - with open(full_path, 'w+') as f: - f.write(data) - return data + markers = [ + pytest.mark.block_network(allowed_hosts=['localhost', '::1', '127.0.0.1']), + pytest.mark.vcr( + before_record_request=sanitize_request, + before_record_response=sanitize_response, + sequential=True, + custom_patches=((sys.modules['tests.test_util'], 'InputAsker', InputAskerPatched),), + ), + ] + for marker in markers: + func = marker(func) + return func + + +async def ask_user_browser(name: str, url: str, prompt: str) -> str: + response = await InputAsker().ask(name, url, prompt) + return response['headers']['location'] + + +class InputAsker: + async def ask(self, name: str, url: str, prompt: str) -> dict: + """ + name is a unique name to identify this input in cassette + """ + try: + webbrowser.open(url) + except webbrowser.Error: + prompt += '\n' + url + # TODO: use local webserver to automatize process more + # TODO: user async input here + response_url = input(prompt + '\n') + return dict( + status_code=307, + headers=dict(location=response_url), + ) + + +class InputAskerPatched(InputAsker): + cassette = None # This will be set by pyvcr + + async def ask(self, name: str, url: str, prompt: str): + vcr_request = VcrRequest(method='GET', uri=url, headers=dict( + name=name, + prompt=prompt, + ), body=b'') + if self.cassette.can_play_response_for(vcr_request): + return self.cassette.play_response(vcr_request) + if self.cassette.write_protected and self.cassette.filter_request(vcr_request): + raise CannotOverwriteExistingCassetteException(cassette=self.cassette, failed_request=vcr_request) + track = self.cassette.forward() + response: dict = await super().ask(name, url, prompt) + self.cassette.record(track, vcr_request, response) + return response async def follow_oauth_flow(client, provider: SocialProvider, name: str, return_to: str, **params): response = check_response(await client.get( - f'/api/v1/{provider}/oauth', + f'/api/v1/{provider.value}/oauth', params=dict(return_to=return_to, **params), headers=dict(referer=settings.base_url), )).json() auth_url: str = response['url'] encrypted_state: str = furl(auth_url).query.params['state'] - code: str = load_or_ask(f'oauth-flow-{name}.code', f"Open this url {auth_url}, authorize and paste code here:") + redirect_url: str = await ask_user_browser( + name, + url=auth_url, + prompt="Open this url, authorize and paste url after redirect here:", + ) + code: str = furl(redirect_url).query.params['code'] response = await client.get( f'/api/v1/oauth-redirect/{provider}', params=dict(state=encrypted_state, code=code), diff --git a/tests/test_web.py b/tests/test_web.py index 5b9454b1..97f7b55e 100644 --- a/tests/test_web.py +++ b/tests/test_web.py @@ -31,6 +31,7 @@ async def test_sitemap(client, db): @mark_vcr +@pytest.mark.freezed_vcr async def test_donate_redirect(client): response = await client.get('/d/UCk2OzObixhe_mbMfMQGLuJw') check_response(response, 302) diff --git a/tests/test_youtube.py b/tests/test_youtube.py index 3c08d510..2ddea90c 100644 --- a/tests/test_youtube.py +++ b/tests/test_youtube.py @@ -25,7 +25,7 @@ async def test_create_donation_unsupported_youtube_url(client): @mark_vcr -@pytest.mark.freeze_time('2022-02-02 22:22:22') +@freeze_time async def test_donate(client, db_session, freeze_uuids, rich_donator, settings): login_to(client, settings, rich_donator) donate_response = await client.post( @@ -36,7 +36,7 @@ async def test_donate(client, db_session, freeze_uuids, rich_donator, settings): @mark_vcr -@pytest.mark.freeze_time('2022-02-02 22:22:22') +@freeze_time async def test_donate_video(client, db_session, freeze_uuids, rich_donator, settings): login_to(client, settings, rich_donator) donate_response = await client.post( @@ -46,7 +46,7 @@ async def test_donate_video(client, db_session, freeze_uuids, rich_donator, sett verify_response(donate_response, 'donate_youtube_video', 200) -@pytest.mark.freeze_time('2022-02-02 22:22:22') +@freeze_time async def test_donate_on_website(client, db, freeze_uuids, rich_donator, settings): async with db.session() as db_session: youtube_channel = YoutubeChannel( @@ -65,7 +65,7 @@ async def test_donate_on_website(client, db, freeze_uuids, rich_donator, setting @mark_vcr -@pytest.mark.freeze_time('2022-02-02T22:22:22') +@freeze_time async def test_cancel_donation(client, app, db, freeze_uuids, rich_donator, settings): login_to(client, settings, rich_donator) amount = 10